<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>190527</bug_id>
          
          <creation_ts>2018-10-12 10:38:25 -0700</creation_ts>
          <short_desc>Use pragma once in WTF</short_desc>
          <delta_ts>2018-10-15 18:41:17 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>cdumez</cc>
    
    <cc>dbates</cc>
    
    <cc>don.olmstead</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fujii</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1468483</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-10-12 10:38:25 -0700</bug_when>
    <thetext>Use pragma once in WTF</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468489</commentid>
    <comment_count>1</comment_count>
      <attachid>352180</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-10-12 10:54:40 -0700</bug_when>
    <thetext>Created attachment 352180
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468491</commentid>
    <comment_count>2</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-10-12 10:57:08 -0700</bug_when>
    <thetext>Attachment 352180 did not pass style-queue:

ERROR: Source/WTF/wtf/text/TextStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/BitVector.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ProcessPrivilege.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MonotonicTime.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ClockType.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WallTime.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WallTime.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DateMath.cpp:73:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DateMath.cpp:80:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/UniStdExtras.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/GregorianDateTime.cpp:26:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/GregorianDateTime.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RunLoop.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/HashTable.cpp:21:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/PrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MediaTime.cpp:30:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FilePrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Threading.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CPUTime.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/glib/GRefPtr.cpp:20:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Poisoned.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/icu/UTextProvider.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentDecoder.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MainThread.cpp:30:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WordLock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParallelHelperPool.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParallelHelperPool.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringImpl.cpp:26:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FunctionDispatcher.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicString.cpp:24:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicString.cpp:30:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/SymbolRegistry.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ThreadMessage.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/SixCharacterHash.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WorkQueue.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/linux/CurrentProcessMemoryStatus.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/NumberOfCores.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/WTFString.cpp:23:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentEncoder.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentEncoder.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/SHA1.cpp:33:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/SHA1.cpp:35:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RunLoopTimerCF.cpp:35:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RandomNumber.cpp:29:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/LockedPrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CurrentTime.cpp:36:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParkingLot.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParkingLot.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/threads/BinarySemaphore.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FastBitVector.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Lock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/TimeWithDynamicClockType.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/TimeWithDynamicClockType.cpp:33:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ios/WebCoreThread.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/Base64.cpp:25:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/JSValueMalloc.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/GlobalVersion.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/TimingScope.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/unicode/UTF8.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/unicode/UTF8.cpp:30:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/StringPrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Assertions.cpp:35:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CrossThreadTaskHandler.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Gigacage.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FastMalloc.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MetaAllocator.cpp:30:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Seconds.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Seconds.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ReadWriteLock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/StackTrace.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/cocoa/WorkQueueCocoa.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ThreadGroup.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CryptographicallyRandomNumber.cpp:31:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/AutomaticThread.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RandomDevice.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/threads/Signals.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/UUID.cpp:32:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CountingLock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/OSAllocatorWin.cpp:32:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/ASCIILiteral.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentCoders.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RAMSize.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/win/MainThreadWin.cpp:33:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Language.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/PageBlock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [b
uild/include_order] [4]
ERROR: Source/WTF/wtf/text/StringBuilder.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringBuilder.cpp:31:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringBuilder.cpp:32:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DataLog.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DataLog.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RefCountedLeakCounter.cpp:22:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WorkerPool.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/SymbolImpl.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MD5.cpp:51:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MD5.cpp:53:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DecimalNumber.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DecimalNumber.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/glib/GLibUtilities.cpp:21:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/linux/MemoryFootprintLinux.cpp:30:  Multi-line string (&quot;...&quot;) found.  This lint script doesn&apos;t do well with such strings, and may give bogus warnings.  They&apos;re ugly and unnecessary, and you should use concatenation instead&quot;.  [readability/multiline_string] [5]
ERROR: Source/WTF/wtf/linux/MemoryFootprintLinux.cpp:30:  Bad include order. Mixing system and custom headers.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/cocoa/StringViewCocoa.mm:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/OSRandomSource.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/StackStats.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CryptographicUtilities.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/ExternalStringImpl.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringView.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CompilationThread.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ConcurrentPtrHashSet.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/CString.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/TextBreakIterator.cpp:23:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/TextBreakIterator.cpp:25:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/TextBreakIterator.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/LineEnding.cpp:33:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicStringImpl.cpp:25:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicStringImpl.cpp:26:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/dtoa.cpp:36:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicStringTable.cpp:24:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MemoryPressureHandler.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/JSONValues.cpp:34:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Total errors found: 121 in 314 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468503</commentid>
    <comment_count>3</comment_count>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2018-10-12 11:22:30 -0700</bug_when>
    <thetext>There’s already a bug at https://bugs.webkit.org/show_bug.cgi?id=174986</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468522</commentid>
    <comment_count>4</comment_count>
      <attachid>352186</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-10-12 12:13:52 -0700</bug_when>
    <thetext>Created attachment 352186
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468524</commentid>
    <comment_count>5</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-10-12 12:17:31 -0700</bug_when>
    <thetext>Attachment 352186 did not pass style-queue:

ERROR: Source/WTF/wtf/text/TextStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/BitVector.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ProcessPrivilege.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MonotonicTime.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ClockType.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WallTime.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WallTime.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DateMath.cpp:73:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DateMath.cpp:80:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/UniStdExtras.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/GregorianDateTime.cpp:26:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/GregorianDateTime.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RunLoop.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/HashTable.cpp:21:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/PrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MediaTime.cpp:30:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FilePrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Threading.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CPUTime.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/glib/GRefPtr.cpp:20:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Poisoned.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/icu/UTextProvider.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentDecoder.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MainThread.cpp:30:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WordLock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParallelHelperPool.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParallelHelperPool.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringImpl.cpp:26:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FunctionDispatcher.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicString.cpp:24:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicString.cpp:30:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/SymbolRegistry.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ThreadMessage.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/SixCharacterHash.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WorkQueue.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/linux/CurrentProcessMemoryStatus.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/NumberOfCores.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/WTFString.cpp:23:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentEncoder.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentEncoder.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/SHA1.cpp:33:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/SHA1.cpp:35:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RunLoopTimerCF.cpp:35:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RandomNumber.cpp:29:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/LockedPrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CurrentTime.cpp:36:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParkingLot.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParkingLot.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/threads/BinarySemaphore.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FastBitVector.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Lock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/TimeWithDynamicClockType.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/TimeWithDynamicClockType.cpp:33:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ios/WebCoreThread.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/Base64.cpp:25:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/JSValueMalloc.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/GlobalVersion.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/TimingScope.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/unicode/UTF8.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/unicode/UTF8.cpp:30:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/StringPrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Assertions.cpp:35:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CrossThreadTaskHandler.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Gigacage.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FastMalloc.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MetaAllocator.cpp:30:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Seconds.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Seconds.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ReadWriteLock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/StackTrace.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/cocoa/WorkQueueCocoa.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ThreadGroup.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CryptographicallyRandomNumber.cpp:31:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/AutomaticThread.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RandomDevice.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/threads/Signals.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/UUID.cpp:32:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CountingLock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/OSAllocatorWin.cpp:32:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/ASCIILiteral.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentCoders.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RAMSize.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/win/MainThreadWin.cpp:33:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Language.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/PageBlock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [b
uild/include_order] [4]
ERROR: Source/WTF/wtf/text/StringBuilder.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringBuilder.cpp:31:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringBuilder.cpp:32:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DataLog.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DataLog.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RefCountedLeakCounter.cpp:22:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WorkerPool.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/SymbolImpl.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MD5.cpp:51:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MD5.cpp:53:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DecimalNumber.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DecimalNumber.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/glib/GLibUtilities.cpp:21:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/cocoa/StringViewCocoa.mm:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/OSRandomSource.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/StackStats.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CryptographicUtilities.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/ExternalStringImpl.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringView.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CompilationThread.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ConcurrentPtrHashSet.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/CString.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/TextBreakIterator.cpp:23:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/TextBreakIterator.cpp:25:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/TextBreakIterator.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/LineEnding.cpp:33:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicStringImpl.cpp:25:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicStringImpl.cpp:26:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/dtoa.cpp:36:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicStringTable.cpp:24:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MemoryPressureHandler.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/JSONValues.cpp:34:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Total errors found: 119 in 324 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468563</commentid>
    <comment_count>6</comment_count>
      <attachid>352198</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-10-12 14:13:45 -0700</bug_when>
    <thetext>Created attachment 352198
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468565</commentid>
    <comment_count>7</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-10-12 14:16:05 -0700</bug_when>
    <thetext>Attachment 352198 did not pass style-queue:

ERROR: Source/WTF/wtf/text/TextStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/BitVector.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ProcessPrivilege.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MonotonicTime.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ClockType.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WallTime.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WallTime.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DateMath.cpp:73:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DateMath.cpp:80:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/UniStdExtras.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/GregorianDateTime.cpp:26:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/GregorianDateTime.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RunLoop.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/HashTable.cpp:21:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/PrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MediaTime.cpp:30:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FilePrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Threading.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CPUTime.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/glib/GRefPtr.cpp:20:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Poisoned.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/icu/UTextProvider.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentDecoder.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MainThread.cpp:30:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WordLock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParallelHelperPool.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParallelHelperPool.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringImpl.cpp:26:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FunctionDispatcher.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicString.cpp:24:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicString.cpp:30:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/SymbolRegistry.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ThreadMessage.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/SixCharacterHash.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WorkQueue.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/linux/CurrentProcessMemoryStatus.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/NumberOfCores.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/WTFString.cpp:23:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentEncoder.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentEncoder.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/SHA1.cpp:33:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/SHA1.cpp:35:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RunLoopTimerCF.cpp:35:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RandomNumber.cpp:29:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/LockedPrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CurrentTime.cpp:36:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParkingLot.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParkingLot.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/threads/BinarySemaphore.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FastBitVector.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Lock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/TimeWithDynamicClockType.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/TimeWithDynamicClockType.cpp:33:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ios/WebCoreThread.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/Base64.cpp:25:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/JSValueMalloc.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/GlobalVersion.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/TimingScope.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/unicode/UTF8.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/unicode/UTF8.cpp:30:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/StringPrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Assertions.cpp:35:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CrossThreadTaskHandler.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Gigacage.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FastMalloc.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MetaAllocator.cpp:30:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Seconds.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Seconds.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ReadWriteLock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/StackTrace.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/cocoa/WorkQueueCocoa.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ThreadGroup.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CryptographicallyRandomNumber.cpp:31:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/AutomaticThread.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RandomDevice.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/threads/Signals.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/UUID.cpp:32:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CountingLock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/OSAllocatorWin.cpp:32:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/ASCIILiteral.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentCoders.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RAMSize.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/win/MainThreadWin.cpp:33:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Language.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/PageBlock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [b
uild/include_order] [4]
ERROR: Source/WTF/wtf/text/StringBuilder.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringBuilder.cpp:31:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringBuilder.cpp:32:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DataLog.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DataLog.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RefCountedLeakCounter.cpp:22:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WorkerPool.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/SymbolImpl.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MD5.cpp:51:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MD5.cpp:53:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DecimalNumber.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DecimalNumber.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/glib/GLibUtilities.cpp:21:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/cocoa/StringViewCocoa.mm:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/OSRandomSource.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/StackStats.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CryptographicUtilities.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/ExternalStringImpl.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringView.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CompilationThread.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ConcurrentPtrHashSet.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/CString.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/TextBreakIterator.cpp:23:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/TextBreakIterator.cpp:25:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/TextBreakIterator.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/LineEnding.cpp:33:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicStringImpl.cpp:25:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicStringImpl.cpp:26:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/dtoa.cpp:36:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicStringTable.cpp:24:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MemoryPressureHandler.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/JSONValues.cpp:34:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Total errors found: 119 in 324 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468611</commentid>
    <comment_count>8</comment_count>
      <attachid>352198</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2018-10-12 14:50:54 -0700</bug_when>
    <thetext>Comment on attachment 352198
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=352198&amp;action=review

This patch does way more than it said it does. I would suggest splitting it the other fixes into their own bugs.

&gt; Tools/DumpRenderTree/WorkQueue.cpp:42
&gt; +DRTWorkQueue&amp; DRTWorkQueue::singleton()

This patch does more than it said it does and I would suggest we do this rename in a separate patch because it seems incomplete.. I mean, we should rename this entire file and rename WorkQueueItem for consistency. Out of curiosity, why the rename? It would be good to explain this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468705</commentid>
    <comment_count>9</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-10-12 16:32:20 -0700</bug_when>
    <thetext>I&apos;ll use a namespace instead of renaming the class, and describe better what is going on in the ChangeLog.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468706</commentid>
    <comment_count>10</comment_count>
      <attachid>352234</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-10-12 16:33:24 -0700</bug_when>
    <thetext>Created attachment 352234
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468712</commentid>
    <comment_count>11</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-10-12 16:37:38 -0700</bug_when>
    <thetext>Attachment 352234 did not pass style-queue:

ERROR: Source/WTF/wtf/text/TextStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/BitVector.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ProcessPrivilege.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MonotonicTime.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ClockType.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WallTime.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WallTime.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DateMath.cpp:73:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DateMath.cpp:80:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/UniStdExtras.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/GregorianDateTime.cpp:26:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/GregorianDateTime.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RunLoop.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/HashTable.cpp:21:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/PrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MediaTime.cpp:30:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FilePrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Threading.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CPUTime.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/glib/GRefPtr.cpp:20:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Poisoned.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/icu/UTextProvider.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentDecoder.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MainThread.cpp:30:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WordLock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParallelHelperPool.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParallelHelperPool.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringImpl.cpp:26:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FunctionDispatcher.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicString.cpp:24:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicString.cpp:30:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/SymbolRegistry.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ThreadMessage.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/SixCharacterHash.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WorkQueue.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/linux/CurrentProcessMemoryStatus.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/NumberOfCores.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/WTFString.cpp:23:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentEncoder.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentEncoder.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/SHA1.cpp:33:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/SHA1.cpp:35:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RunLoopTimerCF.cpp:35:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RandomNumber.cpp:29:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/LockedPrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CurrentTime.cpp:36:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParkingLot.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ParkingLot.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/threads/BinarySemaphore.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FastBitVector.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Lock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/TimeWithDynamicClockType.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/TimeWithDynamicClockType.cpp:33:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ios/WebCoreThread.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/Base64.cpp:25:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/JSValueMalloc.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/GlobalVersion.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/TimingScope.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/unicode/UTF8.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/unicode/UTF8.cpp:30:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/StringPrintStream.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Assertions.cpp:35:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CrossThreadTaskHandler.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Gigacage.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/FastMalloc.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MetaAllocator.cpp:30:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Seconds.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Seconds.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ReadWriteLock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/StackTrace.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/cocoa/WorkQueueCocoa.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ThreadGroup.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CryptographicallyRandomNumber.cpp:31:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/AutomaticThread.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RandomDevice.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/threads/Signals.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/UUID.cpp:32:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CountingLock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/OSAllocatorWin.cpp:32:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/ASCIILiteral.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/persistence/PersistentCoders.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RAMSize.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/win/MainThreadWin.cpp:33:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/Language.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/PageBlock.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [b
uild/include_order] [4]
ERROR: Source/WTF/wtf/text/StringBuilder.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringBuilder.cpp:31:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringBuilder.cpp:32:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DataLog.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DataLog.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/RefCountedLeakCounter.cpp:22:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/WorkerPool.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/SymbolImpl.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MD5.cpp:51:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MD5.cpp:53:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DecimalNumber.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/DecimalNumber.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/glib/GLibUtilities.cpp:21:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/cocoa/StringViewCocoa.mm:29:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/OSRandomSource.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/StackStats.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CryptographicUtilities.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/ExternalStringImpl.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/StringView.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/CompilationThread.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/ConcurrentPtrHashSet.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/CString.cpp:28:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/TextBreakIterator.cpp:23:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/TextBreakIterator.cpp:25:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/TextBreakIterator.cpp:28:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/LineEnding.cpp:33:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicStringImpl.cpp:25:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicStringImpl.cpp:26:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/WTF/wtf/dtoa.cpp:36:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/text/AtomicStringTable.cpp:24:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/MemoryPressureHandler.cpp:27:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
ERROR: Source/WTF/wtf/JSONValues.cpp:34:  Found other header before a header this file implements. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
Total errors found: 119 in 325 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1469231</commentid>
    <comment_count>12</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-10-15 08:25:38 -0700</bug_when>
    <thetext>https://trac.webkit.org/changeset/237099/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1469235</commentid>
    <comment_count>13</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-10-15 08:26:28 -0700</bug_when>
    <thetext>&lt;rdar://problem/45271686&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1469599</commentid>
    <comment_count>14</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-10-15 18:41:17 -0700</bug_when>
    <thetext>*** Bug 174986 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352180</attachid>
            <date>2018-10-12 10:54:40 -0700</date>
            <delta_ts>2018-10-12 12:13:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-190527-20181012105439.patch</filename>
            <type>text/plain</type>
            <size>163952</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDI5NyBAQAorMjAxOC0xMC0xMiAgQWxleCBDaHJpc3RlbnNlbiAg
PGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBwcmFnbWEgb25jZSBpbiBX
VEYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDUy
NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd3Rm
L0FTQ0lJQ1R5cGUuaDoKKyAgICAgICAgKiB3dGYvQXNzZXJ0aW9ucy5jcHA6CisgICAgICAgICog
d3RmL0Fzc2VydGlvbnMuaDoKKyAgICAgICAgKiB3dGYvQXRvbWljcy5oOgorICAgICAgICAqIHd0
Zi9BdXRvbWF0aWNUaHJlYWQuY3BwOgorICAgICAgICAqIHd0Zi9BdXRvbWF0aWNUaHJlYWQuaDoK
KyAgICAgICAgKiB3dGYvQmFja3dhcmRzR3JhcGguaDoKKyAgICAgICAgKiB3dGYvQmFnLmg6Cisg
ICAgICAgICogd3RmL0JhZ1RvSGFzaE1hcC5oOgorICAgICAgICAqIHd0Zi9CaXRWZWN0b3IuY3Bw
OgorICAgICAgICAqIHd0Zi9CaXRWZWN0b3IuaDoKKyAgICAgICAgKiB3dGYvQml0bWFwLmg6Cisg
ICAgICAgICogd3RmL0Jsb29tRmlsdGVyLmg6CisgICAgICAgICogd3RmL0JveC5oOgorICAgICAg
ICAqIHd0Zi9CdWJibGVTb3J0Lmg6CisgICAgICAgICogd3RmL0J1bXBQb2ludGVyQWxsb2NhdG9y
Lmg6CisgICAgICAgICogd3RmL0J5dGVPcmRlci5oOgorICAgICAgICAqIHd0Zi9DUFVUaW1lLmNw
cDoKKyAgICAgICAgKiB3dGYvQ2FsbGJhY2tBZ2dyZWdhdG9yLmg6CisgICAgICAgICogd3RmL0No
ZWNrZWRBcml0aG1ldGljLmg6CisgICAgICAgICogd3RmL0NoZWNrZWRCb29sZWFuLmg6CisgICAg
ICAgICogd3RmL0Nsb2NrVHlwZS5jcHA6CisgICAgICAgICogd3RmL0Nsb2NrVHlwZS5oOgorICAg
ICAgICAqIHd0Zi9Db21tYVByaW50ZXIuaDoKKyAgICAgICAgKiB3dGYvQ29tcGlsYXRpb25UaHJl
YWQuY3BwOgorICAgICAgICAqIHd0Zi9Db21waWxhdGlvblRocmVhZC5oOgorICAgICAgICAqIHd0
Zi9Db21waWxlci5oOgorICAgICAgICAqIHd0Zi9Db25jdXJyZW50UHRySGFzaFNldC5jcHA6Cisg
ICAgICAgICogd3RmL0NvbmN1cnJlbnRWZWN0b3IuaDoKKyAgICAgICAgKiB3dGYvQ29uZGl0aW9u
Lmg6CisgICAgICAgICogd3RmL0NvdW50aW5nTG9jay5jcHA6CisgICAgICAgICogd3RmL0Nyb3Nz
VGhyZWFkVGFza0hhbmRsZXIuY3BwOgorICAgICAgICAqIHd0Zi9DcnlwdG9ncmFwaGljVXRpbGl0
aWVzLmNwcDoKKyAgICAgICAgKiB3dGYvQ3J5cHRvZ3JhcGhpY1V0aWxpdGllcy5oOgorICAgICAg
ICAqIHd0Zi9DcnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlci5jcHA6CisgICAgICAgICogd3Rm
L0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmg6CisgICAgICAgICogd3RmL0N1cnJlbnRU
aW1lLmNwcDoKKyAgICAgICAgKiB3dGYvRGF0YUxvZy5jcHA6CisgICAgICAgICogd3RmL0RhdGFM
b2cuaDoKKyAgICAgICAgKiB3dGYvRGF0ZU1hdGguY3BwOgorICAgICAgICAqIHd0Zi9EYXRlTWF0
aC5oOgorICAgICAgICAqIHd0Zi9EZWNpbWFsTnVtYmVyLmNwcDoKKyAgICAgICAgKiB3dGYvRGVj
aW1hbE51bWJlci5oOgorICAgICAgICAqIHd0Zi9EZXF1ZS5oOgorICAgICAgICAqIHd0Zi9EaXNh
bGxvd0NUeXBlLmg6CisgICAgICAgICogd3RmL0RvbWluYXRvcnMuaDoKKyAgICAgICAgKiB3dGYv
RG91Ymx5TGlua2VkTGlzdC5oOgorICAgICAgICAqIHd0Zi9GYXN0Qml0VmVjdG9yLmNwcDoKKyAg
ICAgICAgKiB3dGYvRmFzdE1hbGxvYy5jcHA6CisgICAgICAgICogd3RmL0Zhc3RNYWxsb2MuaDoK
KyAgICAgICAgKiB3dGYvRmVhdHVyZURlZmluZXMuaDoKKyAgICAgICAgKiB3dGYvRmlsZVByaW50
U3RyZWFtLmNwcDoKKyAgICAgICAgKiB3dGYvRmlsZVByaW50U3RyZWFtLmg6CisgICAgICAgICog
d3RmL0ZsaXBCeXRlcy5oOgorICAgICAgICAqIHd0Zi9GdW5jdGlvbkRpc3BhdGNoZXIuY3BwOgor
ICAgICAgICAqIHd0Zi9GdW5jdGlvbkRpc3BhdGNoZXIuaDoKKyAgICAgICAgKiB3dGYvR2V0UHRy
Lmg6CisgICAgICAgICogd3RmL0dpZ2FjYWdlLmNwcDoKKyAgICAgICAgKiB3dGYvR2xvYmFsVmVy
c2lvbi5jcHA6CisgICAgICAgICogd3RmL0dyYXBoTm9kZVdvcmtsaXN0Lmg6CisgICAgICAgICog
d3RmL0dyZWdvcmlhbkRhdGVUaW1lLmNwcDoKKyAgICAgICAgKiB3dGYvR3JlZ29yaWFuRGF0ZVRp
bWUuaDoKKyAgICAgICAgKiB3dGYvSGFzaEZ1bmN0aW9ucy5oOgorICAgICAgICAqIHd0Zi9IYXNo
TWFwLmg6CisgICAgICAgICogd3RmL0hhc2hNZXRob2QuaDoKKyAgICAgICAgKiB3dGYvSGFzaFNl
dC5oOgorICAgICAgICAqIHd0Zi9IYXNoVGFibGUuY3BwOgorICAgICAgICAqIHd0Zi9IYXNoVHJh
aXRzLmg6CisgICAgICAgICogd3RmL0luZGVudGVyLmg6CisgICAgICAgICogd3RmL0luZGV4U3Bh
cnNlU2V0Lmg6CisgICAgICAgICogd3RmL0lubGluZUFTTS5oOgorICAgICAgICAqIHd0Zi9JbnNl
cnRpb24uaDoKKyAgICAgICAgKiB3dGYvSXRlcmF0b3JBZGFwdG9ycy5oOgorICAgICAgICAqIHd0
Zi9JdGVyYXRvclJhbmdlLmg6CisgICAgICAgICogd3RmL0pTT05WYWx1ZXMuY3BwOgorICAgICAg
ICAqIHd0Zi9KU1ZhbHVlTWFsbG9jLmNwcDoKKyAgICAgICAgKiB3dGYvTEVCRGVjb2Rlci5oOgor
ICAgICAgICAqIHd0Zi9MYW5ndWFnZS5jcHA6CisgICAgICAgICogd3RmL0xpc3REdW1wLmg6Cisg
ICAgICAgICogd3RmL0xvY2suY3BwOgorICAgICAgICAqIHd0Zi9Mb2NrLmg6CisgICAgICAgICog
d3RmL0xvY2tBbGdvcml0aG0uaDoKKyAgICAgICAgKiB3dGYvTG9ja2VkUHJpbnRTdHJlYW0uY3Bw
OgorICAgICAgICAqIHd0Zi9Mb2NrZXIuaDoKKyAgICAgICAgKiB3dGYvTUQ1LmNwcDoKKyAgICAg
ICAgKiB3dGYvTUQ1Lmg6CisgICAgICAgICogd3RmL01haW5UaHJlYWQuY3BwOgorICAgICAgICAq
IHd0Zi9NYWluVGhyZWFkLmg6CisgICAgICAgICogd3RmL01hbGxvY1B0ci5oOgorICAgICAgICAq
IHd0Zi9NYXRoRXh0cmFzLmg6CisgICAgICAgICogd3RmL01lZGlhVGltZS5jcHA6CisgICAgICAg
ICogd3RmL01lZGlhVGltZS5oOgorICAgICAgICAqIHd0Zi9NZW1vcnlQcmVzc3VyZUhhbmRsZXIu
Y3BwOgorICAgICAgICAqIHd0Zi9NZXNzYWdlUXVldWUuaDoKKyAgICAgICAgKiB3dGYvTWV0YUFs
bG9jYXRvci5jcHA6CisgICAgICAgICogd3RmL01ldGFBbGxvY2F0b3IuaDoKKyAgICAgICAgKiB3
dGYvTWV0YUFsbG9jYXRvckhhbmRsZS5oOgorICAgICAgICAqIHd0Zi9Nb25vdG9uaWNUaW1lLmNw
cDoKKyAgICAgICAgKiB3dGYvTW9ub3RvbmljVGltZS5oOgorICAgICAgICAqIHd0Zi9OYWtlZFB0
ci5oOgorICAgICAgICAqIHd0Zi9Ob0xvY2suaDoKKyAgICAgICAgKiB3dGYvTm9UYWlsQ2FsbHMu
aDoKKyAgICAgICAgKiB3dGYvTm9uY29weWFibGUuaDoKKyAgICAgICAgKiB3dGYvTnVtYmVyT2ZD
b3Jlcy5jcHA6CisgICAgICAgICogd3RmL051bWJlck9mQ29yZXMuaDoKKyAgICAgICAgKiB3dGYv
T1NBbGxvY2F0b3IuaDoKKyAgICAgICAgKiB3dGYvT1NBbGxvY2F0b3JQb3NpeC5jcHA6CisgICAg
ICAgICogd3RmL09TUmFuZG9tU291cmNlLmNwcDoKKyAgICAgICAgKiB3dGYvT1NSYW5kb21Tb3Vy
Y2UuaDoKKyAgICAgICAgKiB3dGYvT2JqY1J1bnRpbWVFeHRyYXMuaDoKKyAgICAgICAgKiB3dGYv
T3JkZXJNYWtlci5oOgorICAgICAgICAqIHd0Zi9QYWNrZWRJbnRWZWN0b3IuaDoKKyAgICAgICAg
KiB3dGYvUGFnZUFsbG9jYXRpb24uaDoKKyAgICAgICAgKiB3dGYvUGFnZUJsb2NrLmNwcDoKKyAg
ICAgICAgKiB3dGYvUGFnZUJsb2NrLmg6CisgICAgICAgICogd3RmL1BhZ2VSZXNlcnZhdGlvbi5o
OgorICAgICAgICAqIHd0Zi9QYXJhbGxlbEhlbHBlclBvb2wuY3BwOgorICAgICAgICAqIHd0Zi9Q
YXJhbGxlbEhlbHBlclBvb2wuaDoKKyAgICAgICAgKiB3dGYvUGFyYWxsZWxKb2JzLmg6CisgICAg
ICAgICogd3RmL1BhcmFsbGVsSm9ic0xpYmRpc3BhdGNoLmg6CisgICAgICAgICogd3RmL1BhcmFs
bGVsVmVjdG9ySXRlcmF0b3IuaDoKKyAgICAgICAgKiB3dGYvUGFya2luZ0xvdC5jcHA6CisgICAg
ICAgICogd3RmL1BhcmtpbmdMb3QuaDoKKyAgICAgICAgKiB3dGYvUGxhdGZvcm0uaDoKKyAgICAg
ICAgKiB3dGYvUG9pbnRlckNvbXBhcmlzb24uaDoKKyAgICAgICAgKiB3dGYvUG9pc29uZWQuY3Bw
OgorICAgICAgICAqIHd0Zi9QcmludFN0cmVhbS5jcHA6CisgICAgICAgICogd3RmL1ByaW50U3Ry
ZWFtLmg6CisgICAgICAgICogd3RmL1Byb2Nlc3NJRC5oOgorICAgICAgICAqIHd0Zi9Qcm9jZXNz
UHJpdmlsZWdlLmNwcDoKKyAgICAgICAgKiB3dGYvUkFNU2l6ZS5jcHA6CisgICAgICAgICogd3Rm
L1JBTVNpemUuaDoKKyAgICAgICAgKiB3dGYvUmFuZG9tRGV2aWNlLmNwcDoKKyAgICAgICAgKiB3
dGYvUmFuZG9tTnVtYmVyLmNwcDoKKyAgICAgICAgKiB3dGYvUmFuZG9tTnVtYmVyLmg6CisgICAg
ICAgICogd3RmL1JhbmRvbU51bWJlclNlZWQuaDoKKyAgICAgICAgKiB3dGYvUmFuZ2VTZXQuaDoK
KyAgICAgICAgKiB3dGYvUmF3UG9pbnRlci5oOgorICAgICAgICAqIHd0Zi9SZWFkV3JpdGVMb2Nr
LmNwcDoKKyAgICAgICAgKiB3dGYvUmVkQmxhY2tUcmVlLmg6CisgICAgICAgICogd3RmL1JlZi5o
OgorICAgICAgICAqIHd0Zi9SZWZDb3VudGVkQXJyYXkuaDoKKyAgICAgICAgKiB3dGYvUmVmQ291
bnRlZExlYWtDb3VudGVyLmNwcDoKKyAgICAgICAgKiB3dGYvUmVmQ291bnRlZExlYWtDb3VudGVy
Lmg6CisgICAgICAgICogd3RmL1JlZkNvdW50ZXIuaDoKKyAgICAgICAgKiB3dGYvUmVmUHRyLmg6
CisgICAgICAgICogd3RmL1JldGFpblB0ci5oOgorICAgICAgICAqIHd0Zi9SdW5Mb29wLmNwcDoK
KyAgICAgICAgKiB3dGYvUnVuTG9vcC5oOgorICAgICAgICAqIHd0Zi9SdW5Mb29wVGltZXIuaDoK
KyAgICAgICAgKiB3dGYvUnVuTG9vcFRpbWVyQ0YuY3BwOgorICAgICAgICAqIHd0Zi9TSEExLmNw
cDoKKyAgICAgICAgKiB3dGYvU0hBMS5oOgorICAgICAgICAqIHd0Zi9TYXR1cmF0ZWRBcml0aG1l
dGljLmg6CisgICAgICAgIChzYXR1cmF0ZWRTdWJ0cmFjdGlvbik6CisgICAgICAgICogd3RmL1Nj
aGVkdWxlUGFpci5oOgorICAgICAgICAqIHd0Zi9TY2hlZHVsZVBhaXJDRi5jcHA6CisgICAgICAg
ICogd3RmL1NjaGVkdWxlUGFpck1hYy5tbToKKyAgICAgICAgKiB3dGYvU2NvcGVkTGFtYmRhLmg6
CisgICAgICAgICogd3RmL1NlY29uZHMuY3BwOgorICAgICAgICAqIHd0Zi9TZWNvbmRzLmg6Cisg
ICAgICAgICogd3RmL1NlZ21lbnRlZFZlY3Rvci5oOgorICAgICAgICAqIHd0Zi9TZW50aW5lbExp
bmtlZExpc3QuaDoKKyAgICAgICAgKiB3dGYvU2hhcmVkVGFzay5oOgorICAgICAgICAqIHd0Zi9T
aW1wbGVTdGF0cy5oOgorICAgICAgICAqIHd0Zi9TaW5nbGVSb290R3JhcGguaDoKKyAgICAgICAg
KiB3dGYvU2luZ2x5TGlua2VkTGlzdC5oOgorICAgICAgICAqIHd0Zi9TaXhDaGFyYWN0ZXJIYXNo
LmNwcDoKKyAgICAgICAgKiB3dGYvU2l4Q2hhcmFjdGVySGFzaC5oOgorICAgICAgICAqIHd0Zi9T
bWFsbFB0clNldC5oOgorICAgICAgICAqIHd0Zi9TcGVjdHJ1bS5oOgorICAgICAgICAqIHd0Zi9T
dGFja0JvdW5kcy5jcHA6CisgICAgICAgICogd3RmL1N0YWNrQm91bmRzLmg6CisgICAgICAgICog
d3RmL1N0YWNrU3RhdHMuY3BwOgorICAgICAgICAqIHd0Zi9TdGFja1N0YXRzLmg6CisgICAgICAg
ICogd3RmL1N0YWNrVHJhY2UuY3BwOgorICAgICAgICAqIHd0Zi9TdGRMaWJFeHRyYXMuaDoKKyAg
ICAgICAgKiB3dGYvU3RyZWFtQnVmZmVyLmg6CisgICAgICAgICogd3RmL1N0cmluZ0hhc2hEdW1w
Q29udGV4dC5oOgorICAgICAgICAqIHd0Zi9TdHJpbmdQcmludFN0cmVhbS5jcHA6CisgICAgICAg
ICogd3RmL1N0cmluZ1ByaW50U3RyZWFtLmg6CisgICAgICAgICogd3RmL1RocmVhZEdyb3VwLmNw
cDoKKyAgICAgICAgKiB3dGYvVGhyZWFkTWVzc2FnZS5jcHA6CisgICAgICAgICogd3RmL1RocmVh
ZFNwZWNpZmljLmg6CisgICAgICAgICogd3RmL1RocmVhZGluZy5jcHA6CisgICAgICAgICogd3Rm
L1RocmVhZGluZy5oOgorICAgICAgICAqIHd0Zi9UaHJlYWRpbmdQcmltaXRpdmVzLmg6CisgICAg
ICAgICogd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcDoKKyAgICAgICAgKiB3dGYvVGltZVdpdGhE
eW5hbWljQ2xvY2tUeXBlLmNwcDoKKyAgICAgICAgKiB3dGYvVGltZVdpdGhEeW5hbWljQ2xvY2tU
eXBlLmg6CisgICAgICAgICogd3RmL1RpbWluZ1Njb3BlLmNwcDoKKyAgICAgICAgKiB3dGYvVGlu
eUxSVUNhY2hlLmg6CisgICAgICAgICogd3RmL1RpbnlQdHJTZXQuaDoKKyAgICAgICAgKiB3dGYv
VHJpU3RhdGUuaDoKKyAgICAgICAgKiB3dGYvVHlwZUNhc3RzLmg6CisgICAgICAgICogd3RmL1VV
SUQuY3BwOgorICAgICAgICAqIHd0Zi9VbmlvbkZpbmQuaDoKKyAgICAgICAgKiB3dGYvVk1UYWdz
Lmg6CisgICAgICAgICogd3RmL1ZhbHVlQ2hlY2suaDoKKyAgICAgICAgKiB3dGYvVmVjdG9yLmg6
CisgICAgICAgICogd3RmL1ZlY3RvclRyYWl0cy5oOgorICAgICAgICAqIHd0Zi9XYWxsVGltZS5j
cHA6CisgICAgICAgICogd3RmL1dhbGxUaW1lLmg6CisgICAgICAgICogd3RmL1dlYWtQdHIuaDoK
KyAgICAgICAgKiB3dGYvV2Vha1JhbmRvbS5oOgorICAgICAgICAqIHd0Zi9Xb3JkTG9jay5jcHA6
CisgICAgICAgICogd3RmL1dvcmRMb2NrLmg6CisgICAgICAgICogd3RmL1dvcmtRdWV1ZS5jcHA6
CisgICAgICAgICogd3RmL1dvcmtRdWV1ZS5oOgorICAgICAgICAqIHd0Zi9Xb3JrZXJQb29sLmNw
cDoKKyAgICAgICAgKiB3dGYvY2YvTGFuZ3VhZ2VDRi5jcHA6CisgICAgICAgICogd3RmL2NmL1J1
bkxvb3BDRi5jcHA6CisgICAgICAgICogd3RmL2NvY29hL0VudGl0bGVtZW50cy5tbToKKyAgICAg
ICAgKiB3dGYvY29jb2EvTWFjaFNlbmRSaWdodC5jcHA6CisgICAgICAgICogd3RmL2NvY29hL01h
aW5UaHJlYWRDb2NvYS5tbToKKyAgICAgICAgKiB3dGYvY29jb2EvTWVtb3J5Rm9vdHByaW50Q29j
b2EuY3BwOgorICAgICAgICAqIHd0Zi9jb2NvYS9Xb3JrUXVldWVDb2NvYS5jcHA6CisgICAgICAg
ICogd3RmL2R0b2EuY3BwOgorICAgICAgICAqIHd0Zi9kdG9hLmg6CisgICAgICAgICogd3RmL2lv
cy9XZWJDb3JlVGhyZWFkLmNwcDoKKyAgICAgICAgKiB3dGYvaW9zL1dlYkNvcmVUaHJlYWQuaDoK
KyAgICAgICAgKiB3dGYvbWFjL0FwcEtpdENvbXBhdGliaWxpdHlEZWNsYXJhdGlvbnMuaDoKKyAg
ICAgICAgKiB3dGYvbWFjL0RlcHJlY2F0ZWRTeW1ib2xzVXNlZEJ5U2FmYXJpLm1tOgorICAgICAg
ICAqIHd0Zi9tYm1hbGxvYy5jcHA6CisgICAgICAgICogd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3Rl
bnRDb2RlcnMuY3BwOgorICAgICAgICAqIHd0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RGVjb2Rl
ci5jcHA6CisgICAgICAgICogd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3RlbnRFbmNvZGVyLmNwcDoK
KyAgICAgICAgKiB3dGYvc3BpL2NmL0NGQnVuZGxlU1BJLmg6CisgICAgICAgICogd3RmL3NwaS9k
YXJ3aW4vQ29tbW9uQ3J5cHRvU1BJLmg6CisgICAgICAgICogd3RmL3RleHQvQVNDSUlGYXN0UGF0
aC5oOgorICAgICAgICAqIHd0Zi90ZXh0L0FTQ0lJTGl0ZXJhbC5jcHA6CisgICAgICAgICogd3Rm
L3RleHQvQXRvbWljU3RyaW5nLmNwcDoKKyAgICAgICAgKiB3dGYvdGV4dC9BdG9taWNTdHJpbmcu
aDoKKyAgICAgICAgKiB3dGYvdGV4dC9BdG9taWNTdHJpbmdIYXNoLmg6CisgICAgICAgICogd3Rm
L3RleHQvQXRvbWljU3RyaW5nSW1wbC5jcHA6CisgICAgICAgICogd3RmL3RleHQvQXRvbWljU3Ry
aW5nSW1wbC5oOgorICAgICAgICAqIHd0Zi90ZXh0L0F0b21pY1N0cmluZ1RhYmxlLmNwcDoKKyAg
ICAgICAgKiB3dGYvdGV4dC9BdG9taWNTdHJpbmdUYWJsZS5oOgorICAgICAgICAqIHd0Zi90ZXh0
L0Jhc2U2NC5jcHA6CisgICAgICAgICogd3RmL3RleHQvQ1N0cmluZy5jcHA6CisgICAgICAgICog
d3RmL3RleHQvQ1N0cmluZy5oOgorICAgICAgICAqIHd0Zi90ZXh0L0NvbnZlcnNpb25Nb2RlLmg6
CisgICAgICAgICogd3RmL3RleHQvRXh0ZXJuYWxTdHJpbmdJbXBsLmNwcDoKKyAgICAgICAgKiB3
dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmg6CisgICAgICAgICogd3RmL3RleHQv
TENoYXIuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9MaW5lRW5kaW5nLmNwcDoKKyAgICAgICAgKiB3
dGYvdGV4dC9TdHJpbmdCdWZmZXIuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdCdWlsZGVy
LmNwcDoKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg6CisgICAgICAgICogd3Rm
L3RleHQvU3RyaW5nQnVpbGRlckpTT04uY3BwOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0Nv
bW1vbi5oOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0NvbmNhdGVuYXRlLmg6CisgICAgICAg
ICogd3RmL3RleHQvU3RyaW5nSGFzaC5oOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0ltcGwu
Y3BwOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0ltcGwuaDoKKyAgICAgICAgKiB3dGYvdGV4
dC9TdHJpbmdPcGVyYXRvcnMuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdWaWV3LmNwcDoK
KyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdWaWV3Lmg6CisgICAgICAgICogd3RmL3RleHQvU3lt
Ym9sSW1wbC5jcHA6CisgICAgICAgICogd3RmL3RleHQvU3ltYm9sUmVnaXN0cnkuY3BwOgorICAg
ICAgICAqIHd0Zi90ZXh0L1N5bWJvbFJlZ2lzdHJ5Lmg6CisgICAgICAgICogd3RmL3RleHQvVGV4
dEJyZWFrSXRlcmF0b3IuY3BwOgorICAgICAgICAqIHd0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9y
Lmg6CisgICAgICAgICogd3RmL3RleHQvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVS5oOgor
ICAgICAgICAqIHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oOgorICAgICAgICAqIHd0Zi90ZXh0L1Rl
eHRTdHJlYW0uY3BwOgorICAgICAgICAqIHd0Zi90ZXh0L1VuaXF1ZWRTdHJpbmdJbXBsLmg6Cisg
ICAgICAgICogd3RmL3RleHQvV1RGU3RyaW5nLmNwcDoKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZT
dHJpbmcuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9jb2NvYS9TdHJpbmdDb2NvYS5tbToKKyAgICAg
ICAgKiB3dGYvdGV4dC9jb2NvYS9TdHJpbmdWaWV3Q29jb2EubW06CisgICAgICAgICogd3RmL3Rl
eHQvY29jb2EvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVUNvY29hLmNwcDoKKyAgICAgICAg
KiB3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5jcHA6CisgICAgICAgICogd3RmL3RleHQvaWN1
L1VUZXh0UHJvdmlkZXIuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlckxh
dGluMS5jcHA6CisgICAgICAgICogd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJMYXRpbjEuaDoK
KyAgICAgICAgKiB3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2LmNwcDoKKyAgICAgICAg
KiB3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2Lmg6CisgICAgICAgICogd3RmL3RocmVh
ZHMvQmluYXJ5U2VtYXBob3JlLmNwcDoKKyAgICAgICAgKiB3dGYvdGhyZWFkcy9CaW5hcnlTZW1h
cGhvcmUuaDoKKyAgICAgICAgKiB3dGYvdGhyZWFkcy9TaWduYWxzLmNwcDoKKyAgICAgICAgKiB3
dGYvdW5pY29kZS9DaGFyYWN0ZXJOYW1lcy5oOgorICAgICAgICAqIHd0Zi91bmljb2RlL0NvbGxh
dG9yLmg6CisgICAgICAgICogd3RmL3VuaWNvZGUvQ29sbGF0b3JEZWZhdWx0LmNwcDoKKyAgICAg
ICAgKiB3dGYvdW5pY29kZS9VVEY4LmNwcDoKKyAgICAgICAgKiB3dGYvdW5pY29kZS9VVEY4Lmg6
CisKIDIwMTgtMTAtMTEgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CiAKICAg
ICAgICAgQWRkIFBMQVRGT1JNKElPU19GQU1JTFkpIGFuZCBPUyhJT1NfRkFNSUxZKQpJbmRleDog
U291cmNlL1dURi93dGYvQVNDSUlDVHlwZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L0FTQ0lJQ1R5cGUuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvQVNDSUlD
VHlwZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw3IEBACiAgKiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKLSNpZm5kZWYgV1RGX0FTQ0lJQ1R5cGVfaAotI2RlZmluZSBXVEZfQVNDSUlDVHlwZV9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3Rm
L3RleHQvTENoYXIuaD4KQEAgLTI3NSw1ICsyNzQsMyBAQCB1c2luZyBXVEY6OnRvQVNDSUlMb3dl
clVuY2hlY2tlZDsKIHVzaW5nIFdURjo6dG9BU0NJSVVwcGVyOwogdXNpbmcgV1RGOjp1cHBlck5p
YmJsZVRvQVNDSUlIZXhEaWdpdDsKIHVzaW5nIFdURjo6dXBwZXJOaWJibGVUb0xvd2VyY2FzZUFT
Q0lJSGV4RGlnaXQ7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5jcHAJKHJldmlzaW9u
IDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0Fzc2VydGlvbnMuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0zMiwxMiArMzIsMTIgQEAKICNwcmFnbWEgR0NDIGRpYWdub3N0aWMgaWdub3JlZCAiLVdt
aXNzaW5nLWZvcm1hdC1hdHRyaWJ1dGUiCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJBc3NlcnRpb25zLmgiCisjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIAotI2luY2x1ZGUg
IkNvbXBpbGVyLmgiCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNs
dWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx3dGYvQ29tcGlsZXIuaD4KICNpbmNsdWRlIDx3dGYv
TG9jay5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrZXIuaD4KICNpbmNsdWRlIDx3dGYvTG9nZ2luZ0Fj
Y3VtdWxhdG9yLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Bc3NlcnRpb25zLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBT
b3VyY2UvV1RGL3d0Zi9Bc3NlcnRpb25zLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcg
QEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgV1RGX0Fzc2VydGlvbnNfaAotI2Rl
ZmluZSBXVEZfQXNzZXJ0aW9uc19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9QbGF0
Zm9ybS5oPgogCkBAIC02MTMsNSArNjEyLDMgQEAgSUdOT1JFX0NMQU5HX1dBUk5JTkdTX0VORAog
I2Vsc2UKICNkZWZpbmUgVU5SRUFDSEFCTEVfRk9SX1BMQVRGT1JNKCkgUkVMRUFTRV9BU1NFUlRf
Tk9UX1JFQUNIRUQoKQogI2VuZGlmCi0KLSNlbmRpZiAvKiBXVEZfQXNzZXJ0aW9uc19oICovCklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9BdG9taWNzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvQXRvbWljcy5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9BdG9taWNz
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5k
ZWYgQXRvbWljc19oCi0jZGVmaW5lIEF0b21pY3NfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRl
IDxhdG9taWM+CiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgpAQCAtNDUyLDUgKzQ1MSwz
IEBAIHVzaW5nIFdURjo6SW5wdXRBbmRWYWx1ZTsKIHVzaW5nIFdURjo6aW5wdXRBbmRWYWx1ZTsK
IHVzaW5nIFdURjo6ZW5zdXJlUG9pbnRlcjsKIHVzaW5nIFdURjo6b3BhcXVlTWl4dHVyZTsKLQot
I2VuZGlmIC8vIEF0b21pY3NfaApJbmRleDogU291cmNlL1dURi93dGYvQXV0b21hdGljVGhyZWFk
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9BdXRvbWF0aWNUaHJlYWQuY3BwCShy
ZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9BdXRvbWF0aWNUaHJlYWQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCwxMCArMjQsMTAgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiQXV0b21hdGljVGhyZWFkLmgiCisjaW5jbHVkZSA8d3RmL0F1dG9tYXRp
Y1RocmVhZC5oPgogCi0jaW5jbHVkZSAiRGF0YUxvZy5oIgotI2luY2x1ZGUgIlRocmVhZGluZy5o
IgorI2luY2x1ZGUgPHd0Zi9EYXRhTG9nLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgog
CiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvQXV0b21hdGljVGhyZWFk
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQXV0b21hdGljVGhyZWFkLmgJKHJldmlz
aW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0F1dG9tYXRpY1RocmVhZC5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVm
IFdURl9BdXRvbWF0aWNUaHJlYWRfaAotI2RlZmluZSBXVEZfQXV0b21hdGljVGhyZWFkX2gKKyNw
cmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0JveC5oPgogI2luY2x1ZGUgPHd0Zi9Db25kaXRp
b24uaD4KQEAgLTE5NSw2ICsxOTQsMyBAQCBwcml2YXRlOgogCiB1c2luZyBXVEY6OkF1dG9tYXRp
Y1RocmVhZDsKIHVzaW5nIFdURjo6QXV0b21hdGljVGhyZWFkQ29uZGl0aW9uOwotCi0jZW5kaWYg
Ly8gV1RGX0F1dG9tYXRpY1RocmVhZF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0JhY2t3YXJk
c0dyYXBoLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQmFja3dhcmRzR3JhcGguaAko
cmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvQmFja3dhcmRzR3JhcGguaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBXVEZfQmFja3dhcmRzR3JhcGhfaAotI2RlZmluZSBXVEZfQmFja3dhcmRzR3JhcGhfaAor
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0
Zi9HcmFwaE5vZGVXb3JrbGlzdC5oPgpAQCAtMTY3LDYgKzE2NiwzIEBAIHByaXZhdGU6CiB9IC8v
IG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpCYWNrd2FyZHNHcmFwaDsKLQotI2VuZGlmIC8v
IFdURl9CYWNrd2FyZHNHcmFwaF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0JhZy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0JhZy5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9CYWcuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQmFnX2gKLSNkZWZp
bmUgQmFnX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0R1bWJQdHJUcmFpdHMuaD4K
ICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgpAQCAtMTY2LDYgKzE2NSwzIEBAIHVzaW5nIFBv
aXNvbmVkQmFnID0gQmFnPFQsIFBvaXNvbmVkUHRyVHIKIAogdXNpbmcgV1RGOjpCYWc7CiB1c2lu
ZyBXVEY6OlBvaXNvbmVkQmFnOwotCi0jZW5kaWYgLy8gQmFnX2gKLQpJbmRleDogU291cmNlL1dU
Ri93dGYvQmFnVG9IYXNoTWFwLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQmFnVG9I
YXNoTWFwLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0JhZ1RvSGFzaE1h
cC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBCYWdUb0hhc2hNYXBfaAotI2RlZmluZSBC
YWdUb0hhc2hNYXBfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQmFnLmg+CiAjaW5j
bHVkZSA8d3RmL0hhc2hNYXAuaD4KQEAgLTQ0LDYgKzQzLDMgQEAgdm9pZCB0b0hhc2hNYXAoQmFn
PEVsZW1lbnRUeXBlLCBCYWdQdHJUcgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6
dG9IYXNoTWFwOwotCi0jZW5kaWYgLy8gQmFnVG9IYXNoTWFwX2gKLQpJbmRleDogU291cmNlL1dU
Ri93dGYvQml0VmVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9CaXRWZWN0
b3IuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9CaXRWZWN0b3IuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgIkJpdFZlY3Rvci5oIgorI2luY2x1ZGUgPHd0Zi9CaXRWZWN0b3IuaD4K
IAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRlIDxzdHJpbmcuaD4KSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL0JpdFZlY3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0JpdFZl
Y3Rvci5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9CaXRWZWN0b3IuaAko
d29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAot
I2lmbmRlZiBCaXRWZWN0b3JfaAotI2RlZmluZSBCaXRWZWN0b3JfaAorI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CkBAIC00ODcs
NSArNDg2LDMgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgSGFzaFRyYWl0czxCaXRWZWN0b3I+IAogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Qml0VmVjdG9yOwotCi0jZW5kaWYgLy8gQml0
VmVjdG9yX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0JpdG1hcC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL0JpdG1hcC5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0
Zi9CaXRtYXAuaAkod29ya2luZyBjb3B5KQpAQCAtMTYsOCArMTYsOCBAQAogICogIEZvdW5kYXRp
b24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAy
MTEwLTEzMDEgIFVTQQogICoKICAqLwotI2lmbmRlZiBCaXRtYXBfaAotI2RlZmluZSBCaXRtYXBf
aAorCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGFycmF5PgogI2luY2x1ZGUgPHd0Zi9BdG9t
aWNzLmg+CkBAIC00MjAsNSArNDIwLDMgQEAgaW5saW5lIHVuc2lnbmVkIEJpdG1hcDxiaXRtYXBT
aXplLCBXb3JkVAogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Qml0bWFwOwotCi0j
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Jsb29tRmlsdGVyLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvQmxvb21GaWx0ZXIuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNl
L1dURi93dGYvQmxvb21GaWx0ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAog
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQmxvb21G
aWx0ZXJfaAotI2RlZmluZSBCbG9vbUZpbHRlcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUg
PGFycmF5PgogI2luY2x1ZGUgPHd0Zi90ZXh0L0F0b21pY1N0cmluZy5oPgpAQCAtMjYzLDUgKzI2
MiwzIEBAIGJvb2wgQ291bnRpbmdCbG9vbUZpbHRlcjxrZXlCaXRzPjo6aXNDbGUKIAogdXNpbmcg
V1RGOjpCbG9vbUZpbHRlcjsKIHVzaW5nIFdURjo6Q291bnRpbmdCbG9vbUZpbHRlcjsKLQotI2Vu
ZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Cb3guaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9Cb3guaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvQm94LmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgV1RGX0JveF9oCi0jZGVmaW5lIFdURl9Cb3hfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+
CkBAIC03OSw2ICs3OCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcg
V1RGOjpCb3g7Ci0KLSNlbmRpZiAvLyBXVEZfQm94X2gKLQpJbmRleDogU291cmNlL1dURi93dGYv
QnViYmxlU29ydC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0J1YmJsZVNvcnQuaAko
cmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvQnViYmxlU29ydC5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVm
IEJ1YmJsZVNvcnRfaAotI2RlZmluZSBCdWJibGVTb3J0X2gKKyNwcmFnbWEgb25jZQogCiBuYW1l
c3BhY2UgV1RGIHsKIApAQCAtOTcsNiArOTYsMyBAQCB2b2lkIGJ1YmJsZVNvcnQoSXRlcmF0b3JU
eXBlIGJlZ2luLCBJdGVyCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpidWJibGVT
b3J0OwotCi0jZW5kaWYgLy8gQnViYmxlU29ydF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0J1
bXBQb2ludGVyQWxsb2NhdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQnVtcFBv
aW50ZXJBbGxvY2F0b3IuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvQnVt
cFBvaW50ZXJBbGxvY2F0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBCdW1wUG9pbnRlckFsbG9jYXRvcl9oCi0jZGVm
aW5lIEJ1bXBQb2ludGVyQWxsb2NhdG9yX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8YWxn
b3JpdGhtPgogI2luY2x1ZGUgPHd0Zi9QYWdlQWxsb2NhdGlvbi5oPgpAQCAtMjQ4LDUgKzI0Nywz
IEBAIHByaXZhdGU6CiB9CiAKIHVzaW5nIFdURjo6QnVtcFBvaW50ZXJBbGxvY2F0b3I7Ci0KLSNl
bmRpZiAvLyBCdW1wUG9pbnRlckFsbG9jYXRvcl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9CeXRl
T3JkZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9CeXRlT3JkZXIuaAkocmV2aXNp
b24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvQnl0ZU9yZGVyLmgJKHdvcmtpbmcgY29weSkK
QEAgLTI4LDggKzI4LDcgQEAKICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICovCiAKLSNpZm5kZWYgV1RGX0J5dGVP
cmRlcl9oCi0jZGVmaW5lIFdURl9CeXRlT3JkZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpZiBPUyhV
TklYKQogI2luY2x1ZGUgPGFycGEvaW5ldC5oPgpAQCAtNjEsNSArNjAsMyBAQCBpbmxpbmUgdWlu
dDMyX3QgaHRvbmwodWludDMyX3QgeCkgeyByZXR1CiAjZW5kaWYKIAogI2VuZGlmIC8vIE9TKFdJ
TkRPV1MpCi0KLSNlbmRpZiAvLyBXVEZfQnl0ZU9yZGVyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L0NQVVRpbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NQVVRpbWUuY3BwCShy
ZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9DUFVUaW1lLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJDUFVUaW1lLmgiCisjaW5jbHVkZSA8d3RmL0NQVVRpbWUuaD4KIAogbmFtZXNwYWNlIFdU
RiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NhbGxiYWNrQWdncmVnYXRvci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NhbGxiYWNrQWdncmVnYXRvci5oCShyZXZpc2lvbiAyMzcw
MzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9DYWxsYmFja0FnZ3JlZ2F0b3IuaAkod29ya2luZyBjb3B5
KQpAQCAtMjUsOSArMjUsOSBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIkNvbXBsZXRp
b25IYW5kbGVyLmgiCi0jaW5jbHVkZSAiTWFpblRocmVhZC5oIgotI2luY2x1ZGUgIlRocmVhZFNh
ZmVSZWZDb3VudGVkLmgiCisjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CisjaW5j
bHVkZSA8d3RmL01haW5UaHJlYWQuaD4KKyNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50
ZWQuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NoZWNrZWRB
cml0aG1ldGljLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQ2hlY2tlZEFyaXRobWV0
aWMuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvQ2hlY2tlZEFyaXRobWV0
aWMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAg
Ki8KIAotI2lmbmRlZiBDaGVja2VkQXJpdGhtZXRpY19oCi0jZGVmaW5lIENoZWNrZWRBcml0aG1l
dGljX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIApAQCAt
OTIxLDUgKzkyMCwzIEBAIHVzaW5nIFdURjo6Y2hlY2tlZFN1bTsKIHVzaW5nIFdURjo6ZGlmZmVy
ZW5jZU92ZXJmbG93czsKIHVzaW5nIFdURjo6cHJvZHVjdE92ZXJmbG93czsKIHVzaW5nIFdURjo6
c3VtT3ZlcmZsb3dzOwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NoZWNrZWRCb29s
ZWFuLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQ2hlY2tlZEJvb2xlYW4uaAkocmV2
aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvQ2hlY2tlZEJvb2xlYW4uaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRl
ZiBDaGVja2VkQm9vbGVhbl9oCi0jZGVmaW5lIENoZWNrZWRCb29sZWFuX2gKKyNwcmFnbWEgb25j
ZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIApAQCAtNjYsNSArNjUsMyBAQCBwcml2
YXRlOgogICAgIG11dGFibGUgYm9vbCBtX2NoZWNrZWQ7CiAjZW5kaWYKIH07Ci0KLSNlbmRpZgpJ
bmRleDogU291cmNlL1dURi93dGYvQ2xvY2tUeXBlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9DbG9ja1R5cGUuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0
Zi9DbG9ja1R5cGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAog
I2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkNsb2NrVHlwZS5oIgorI2luY2x1ZGUgPHd0
Zi9DbG9ja1R5cGUuaD4KIAogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgogCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9DbG9ja1R5cGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9D
bG9ja1R5cGUuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvQ2xvY2tUeXBl
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICov
CiAKLSNpZm5kZWYgV1RGX0Nsb2NrVHlwZV9oCi0jZGVmaW5lIFdURl9DbG9ja1R5cGVfaAorI3By
YWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC00MCw1ICszOSwzIEBAIFdURl9FWFBP
UlRfUFJJVkFURSB2b2lkIHByaW50SW50ZXJuYWwoUHIKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1
c2luZyBXVEY6OkNsb2NrVHlwZTsKLQotI2VuZGlmIC8vIFdURl9DbG9ja1R5cGVfaApJbmRleDog
U291cmNlL1dURi93dGYvQ29tbWFQcmludGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvQ29tbWFQcmludGVyLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0Nv
bW1hUHJpbnRlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMywxMCArMjMsOSBAQAogICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4gCiAgKi8KIAotI2lmbmRlZiBDb21tYVByaW50ZXJfaAotI2RlZmluZSBDb21tYVByaW50
ZXJfaAorI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJQcmludFN0cmVhbS5oIgorI2luY2x1ZGUg
PHd0Zi9QcmludFN0cmVhbS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtNjEsNiArNjAsMyBA
QCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Q29tbWFQcmludGVy
OwotCi0jZW5kaWYgLy8gQ29tbWFQcmludGVyX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvQ29t
cGlsYXRpb25UaHJlYWQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NvbXBpbGF0
aW9uVGhyZWFkLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvQ29tcGls
YXRpb25UaHJlYWQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMiArMjQsMTIgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ29tcGlsYXRpb25UaHJlYWQuaCIKKyNp
bmNsdWRlIDx3dGYvQ29tcGlsYXRpb25UaHJlYWQuaD4KIAotI2luY2x1ZGUgIlN0ZExpYkV4dHJh
cy5oIgotI2luY2x1ZGUgIlRocmVhZFNwZWNpZmljLmgiCi0jaW5jbHVkZSAiVGhyZWFkaW5nLmgi
CiAjaW5jbHVkZSA8bXV0ZXg+CisjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgorI2luY2x1
ZGUgPHd0Zi9UaHJlYWRTcGVjaWZpYy5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KIAog
bmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NvbXBpbGF0aW9uVGhyZWFk
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQ29tcGlsYXRpb25UaHJlYWQuaAkocmV2
aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvQ29tcGlsYXRpb25UaHJlYWQuaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBDb21waWxhdGlvblRocmVhZF9oCi0jZGVmaW5lIENvbXBpbGF0aW9uVGhyZWFkX2gKKyNw
cmFnbWEgb25jZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtNTQsNiArNTMsMyBAQCBwcml2YXRl
OgogCiB1c2luZyBXVEY6OkNvbXBpbGF0aW9uU2NvcGU7CiB1c2luZyBXVEY6OmV4Y2hhbmdlSXND
b21waWxhdGlvblRocmVhZDsKLQotI2VuZGlmIC8vIENvbXBpbGF0aW9uVGhyZWFkX2gKLQpJbmRl
eDogU291cmNlL1dURi93dGYvQ29tcGlsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9Db21waWxlci5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9Db21waWxl
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAq
LwogCi0jaWZuZGVmIFdURl9Db21waWxlcl9oCi0jZGVmaW5lIFdURl9Db21waWxlcl9oCisjcHJh
Z21hIG9uY2UKIAogLyogQ09NUElMRVIoKSAtIHRoZSBjb21waWxlciBiZWluZyB1c2VkIHRvIGJ1
aWxkIHRoZSBwcm9qZWN0ICovCiAjZGVmaW5lIENPTVBJTEVSKFdURl9GRUFUVVJFKSAoZGVmaW5l
ZCBXVEZfQ09NUElMRVJfIyNXVEZfRkVBVFVSRSAgJiYgV1RGX0NPTVBJTEVSXyMjV1RGX0ZFQVRV
UkUpCkBAIC00NjQsNSArNDYzLDMgQEAKIAogI2RlZmluZSBJR05PUkVfTlVMTF9DSEVDS19XQVJO
SU5HU19CRUdJTiBJR05PUkVfV0FSTklOR1NfQkVHSU4oIm5vbm51bGwiKQogI2RlZmluZSBJR05P
UkVfTlVMTF9DSEVDS19XQVJOSU5HU19FTkQgSUdOT1JFX1dBUk5JTkdTX0VORAotCi0jZW5kaWYg
LyogV1RGX0NvbXBpbGVyX2ggKi8KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NvbmN1cnJlbnRQdHJI
YXNoU2V0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Db25jdXJyZW50UHRySGFz
aFNldC5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0NvbmN1cnJlbnRQ
dHJIYXNoU2V0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNp
bmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJDb25jdXJyZW50UHRySGFzaFNldC5oIgorI2lu
Y2x1ZGUgPHd0Zi9Db25jdXJyZW50UHRySGFzaFNldC5oPgogCiAjaW5jbHVkZSA8d3RmL0RhdGFM
b2cuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvQ29uY3VycmVudFZlY3Rvci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NvbmN1cnJlbnRWZWN0b3IuaAkocmV2aXNpb24gMjM3MDMz
KQorKysgU291cmNlL1dURi93dGYvQ29uY3VycmVudFZlY3Rvci5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw4ICsyNiw3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQ29uY3VycmVudFZl
Y3Rvcl9oCi0jZGVmaW5lIENvbmN1cnJlbnRWZWN0b3JfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDx3dGYvQ29uY3VycmVudEJ1ZmZlci5oPgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5o
PgpAQCAtMjY1LDUgKzI2NCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNp
bmcgV1RGOjpDb25jdXJyZW50VmVjdG9yOwotCi0jZW5kaWYgLy8gQ29uY3VycmVudFZlY3Rvcl9o
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Db25kaXRpb24uaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9Db25kaXRpb24uaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYv
Q29uZGl0aW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAogICovCiAKLSNpZm5kZWYgV1RGX0NvbmRpdGlvbl9oCi0jZGVmaW5lIFdURl9Db25kaXRp
b25faAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KICNpbmNs
dWRlIDx3dGYvUGFya2luZ0xvdC5oPgpAQCAtMTc4LDYgKzE3NywzIEBAIHVzaW5nIFN0YXRpY0Nv
bmRpdGlvbiA9IENvbmRpdGlvbjsKIAogdXNpbmcgV1RGOjpDb25kaXRpb247CiB1c2luZyBXVEY6
OlN0YXRpY0NvbmRpdGlvbjsKLQotI2VuZGlmIC8vIFdURl9Db25kaXRpb25faAotCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9Db3VudGluZ0xvY2suY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL0NvdW50aW5nTG9jay5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3Rm
L0NvdW50aW5nTG9jay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ291bnRpbmdMb2NrLmgiCisjaW5jbHVk
ZSA8d3RmL0NvdW50aW5nTG9jay5oPgogCiAjaW5jbHVkZSA8d3RmL0xvY2tBbGdvcml0aG1Jbmxp
bmVzLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Nyb3NzVGhyZWFkVGFza0hhbmRsZXIuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0Nyb3NzVGhyZWFkVGFza0hhbmRsZXIuY3Bw
CShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9Dcm9zc1RocmVhZFRhc2tIYW5k
bGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJDcm9zc1RocmVhZFRhc2tIYW5kbGVyLmgiCisjaW5jbHVk
ZSA8d3RmL0Nyb3NzVGhyZWFkVGFza0hhbmRsZXIuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuY3BwCShyZXZpc2lvbiAy
MzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9DcnlwdG9ncmFwaGljVXRpbGl0aWVzLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJDcnlwdG9ncmFwaGljVXRpbGl0aWVzLmgiCisjaW5jbHVkZSA8d3RmL0NyeXB0
b2dyYXBoaWNVdGlsaXRpZXMuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9DcnlwdG9ncmFwaGljVXRpbGl0aWVzLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJj
ZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMs
OCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfQ3J5cHRvZ3Jh
cGhpY1V0aWxpdGllc19oCi0jZGVmaW5lIFdURl9DcnlwdG9ncmFwaGljVXRpbGl0aWVzX2gKKyNw
cmFnbWEgb25jZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMzQsNSArMzMsMyBAQCBXVEZfRVhQ
T1JUX1BSSVZBVEUgaW50IGNvbnN0YW50VGltZU1lbWNtCiB9CiAKIHVzaW5nIFdURjo6Y29uc3Rh
bnRUaW1lTWVtY21wOwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NyeXB0b2dyYXBo
aWNhbGx5UmFuZG9tTnVtYmVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Dcnlw
dG9ncmFwaGljYWxseVJhbmRvbU51bWJlci5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJj
ZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjgsMTIgKzI4LDEyIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIkNyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmgiCisjaW5jbHVkZSA8d3RmL0NyeXB0
b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmg+CiAKLSNpbmNsdWRlICJOZXZlckRlc3Ryb3llZC5o
IgotI2luY2x1ZGUgIk9TUmFuZG9tU291cmNlLmgiCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVk
ZSA8d3RmL0xvY2suaD4KKyNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KKyNpbmNsdWRl
IDx3dGYvT1NSYW5kb21Tb3VyY2UuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXIuaAkocmV2aXNpb24g
MjM3MDMzKQorKysgU291cmNlL1dURi93dGYvQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXIu
aAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8K
IAotI2lmbmRlZiBXVEZfQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXJfaAotI2RlZmluZSBX
VEZfQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDxzdGRpbnQuaD4KIApAQCAtMzcsNSArMzYsMyBAQCBXVEZfRVhQT1JUX1BSSVZBVEUgdm9p
ZCBjcnlwdG9ncmFwaGljYWxsCiAKIHVzaW5nIFdURjo6Y3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21O
dW1iZXI7CiB1c2luZyBXVEY6OmNyeXB0b2dyYXBoaWNhbGx5UmFuZG9tVmFsdWVzOwotCi0jZW5k
aWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0N1cnJlbnRUaW1lLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9DdXJyZW50VGltZS5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJj
ZS9XVEYvd3RmL0N1cnJlbnRUaW1lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzIsOSArMzIsMTAg
QEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTW9ub3RvbmljVGltZS5o
IgotI2luY2x1ZGUgIldhbGxUaW1lLmgiCisjaW5jbHVkZSA8d3RmL01vbm90b25pY1RpbWUuaD4K
KwogI2luY2x1ZGUgPHRpbWUuaD4KKyNpbmNsdWRlIDx3dGYvV2FsbFRpbWUuaD4KIAogI2lmIE9T
KERBUldJTikKICNpbmNsdWRlIDxtYWNoL21hY2guaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Rh
dGFMb2cuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0RhdGFMb2cuY3BwCShyZXZp
c2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9EYXRhTG9nLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjQsNyArMjQsOCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJEYXRhTG9nLmgiCisjaW5jbHVkZSA8d3RmL0RhdGFMb2cuaD4KKwogI2luY2x1ZGUgPHN0ZGFy
Zy5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi9GaWxlUHJpbnRTdHJlYW0u
aD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0RhdGFMb2cuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9EYXRhTG9nLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0Rh
dGFMb2cuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4g
CiAgKi8KIAotI2lmbmRlZiBEYXRhTG9nX2gKLSNkZWZpbmUgRGF0YUxvZ19oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPHN0ZGFyZy5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+CkBAIC03NCw2ICs3
MywzIEBAIHVzaW5nIFdURjo6ZGF0YUxvZ0lmOwogdXNpbmcgV1RGOjpkYXRhTG9nTG5JZjsKIHVz
aW5nIFdURjo6ZGF0YUxvZ0Y7CiB1c2luZyBXVEY6OmRhdGFMb2dGU3RyaW5nOwotCi0jZW5kaWYg
Ly8gRGF0YUxvZ19oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0RhdGVNYXRoLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9EYXRlTWF0aC5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysr
IFNvdXJjZS9XVEYvd3RmL0RhdGVNYXRoLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzAsMTggKzcw
LDE3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkRhdGVNYXRoLmgi
Ci0KLSNpbmNsdWRlICJBc3NlcnRpb25zLmgiCi0jaW5jbHVkZSAiQVNDSUlDVHlwZS5oIgotI2lu
Y2x1ZGUgIk1hdGhFeHRyYXMuaCIKLSNpbmNsdWRlICJTdGRMaWJFeHRyYXMuaCIKKyNpbmNsdWRl
IDx3dGYvRGF0ZU1hdGguaD4KIAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRlIDxsaW1p
dHMuaD4KICNpbmNsdWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8
dGltZS5oPgorI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CisjaW5jbHVkZSA8d3RmL0FTQ0lJ
Q1R5cGUuaD4KKyNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgorI2luY2x1ZGUgPHd0Zi9TdGRM
aWJFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKICNpZiBP
UyhXSU5ET1dTKQpJbmRleDogU291cmNlL1dURi93dGYvRGF0ZU1hdGguaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9EYXRlTWF0aC5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2Uv
V1RGL3d0Zi9EYXRlTWF0aC5oCSh3b3JraW5nIGNvcHkpCkBAIC00MCw4ICs0MCw3IEBACiAgKgog
ICovCiAKLSNpZm5kZWYgRGF0ZU1hdGhfaAotI2RlZmluZSBEYXRlTWF0aF9oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPG1hdGguaD4KICNpbmNsdWRlIDxzdGRpbnQuaD4KQEAgLTE1NCw1ICsx
NTMsMyBAQCB1c2luZyBXVEY6OnBhcnNlRGF0ZUZyb21OdWxsVGVybWluYXRlZENoCiB1c2luZyBX
VEY6Om1ha2VSRkMyODIyRGF0ZVN0cmluZzsKIHVzaW5nIFdURjo6TG9jYWxUaW1lT2Zmc2V0Owog
dXNpbmcgV1RGOjpjYWxjdWxhdGVMb2NhbFRpbWVPZmZzZXQ7Ci0KLSNlbmRpZiAvLyBEYXRlTWF0
aF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9EZWNpbWFsTnVtYmVyLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9EZWNpbWFsTnVtYmVyLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysg
U291cmNlL1dURi93dGYvRGVjaW1hbE51bWJlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcg
KzI0LDggQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiRGVjaW1hbE51
bWJlci5oIgorI2luY2x1ZGUgPHd0Zi9EZWNpbWFsTnVtYmVyLmg+CisKICNpbmNsdWRlIDxtYXRo
Lmg+CiAjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZT
dHJpbmcuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0RlY2ltYWxOdW1iZXIuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi9EZWNpbWFsTnVtYmVyLmgJKHJldmlzaW9uIDIzNzAzMykKKysr
IFNvdXJjZS9XVEYvd3RmL0RlY2ltYWxOdW1iZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCAr
MjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBEZWNpbWFsTnVtYmVyX2gK
LSNkZWZpbmUgRGVjaW1hbE51bWJlcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPG1hdGgu
aD4KICNpbmNsdWRlIDx3dGYvZHRvYS5oPgpAQCAtMTA0LDUgKzEwMywzIEBAIHByaXZhdGU6CiB1
c2luZyBXVEY6OkRlY2ltYWxOdW1iZXI7CiB1c2luZyBXVEY6OlJvdW5kaW5nU2lnbmlmaWNhbnRG
aWd1cmVzOwogdXNpbmcgV1RGOjpSb3VuZGluZ0RlY2ltYWxQbGFjZXM7Ci0KLSNlbmRpZiAvLyBE
ZWNpbWFsTnVtYmVyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0RlcXVlLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvRGVxdWUuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dU
Ri93dGYvRGVxdWUuaAkod29ya2luZyBjb3B5KQpAQCAtMjcsOCArMjcsNyBAQAogICogVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi0jaWZuZGVmIFdURl9EZXF1ZV9oCi0jZGVmaW5lIFdURl9EZXF1ZV9oCisjcHJh
Z21hIG9uY2UKIAogLy8gRklYTUU6IENvdWxkIG1vdmUgd2hhdCBWZWN0b3IgYW5kIERlcXVlIHNo
YXJlIGludG8gYSBzZXBhcmF0ZSBmaWxlLgogLy8gRGVxdWUgZG9lc24ndCBhY3R1YWxseSB1c2Ug
VmVjdG9yLgpAQCAtNzg1LDUgKzc4NCwzIEBAIGlubGluZSBUKiBEZXF1ZUl0ZXJhdG9yQmFzZTxU
LCBpbmxpbmVDYXAKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkRlcXVlOwotCi0j
ZW5kaWYgLy8gV1RGX0RlcXVlX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Rpc2FsbG93Q1R5cGUu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9EaXNhbGxvd0NUeXBlLmgJKHJldmlzaW9u
IDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0Rpc2FsbG93Q1R5cGUuaAkod29ya2luZyBjb3B5
KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9EaXNh
bGxvd0NUeXBlX2gKLSNkZWZpbmUgV1RGX0Rpc2FsbG93Q1R5cGVfaAorI3ByYWdtYSBvbmNlCiAK
IC8vIFRoZSBiZWhhdmlvciBvZiBtYW55IG9mIHRoZSBmdW5jdGlvbnMgaW4gdGhlIDxjdHlwZS5o
PiBoZWFkZXIgaXMgZGVwZW5kZW50CiAvLyBvbiB0aGUgY3VycmVudCBsb2NhbGUuIEJ1dCBhbG1v
c3QgYWxsIHVzZXMgb2YgdGhlc2UgZnVuY3Rpb25zIGFyZSBmb3IKQEAgLTc5LDUgKzc4LDMgQEAK
ICNkZWZpbmUgdG91cHBlciB0b3VwcGVyX1dURl9QbGVhc2VfdXNlX0FTQ0lJQ1R5cGVfaW5zdGVh
ZF9vZl9jdHlwZV9zZWVfY29tbWVudF9pbl9BU0NJSUNUeXBlX2gKIAogI2VuZGlmCi0KLSNlbmRp
ZgpJbmRleDogU291cmNlL1dURi93dGYvRG9taW5hdG9ycy5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL0RvbWluYXRvcnMuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93
dGYvRG9taW5hdG9ycy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURkRvbWluYXRvcnNfaAotI2RlZmluZSBXVEZEb21p
bmF0b3JzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0NvbW1hUHJpbnRlci5oPgog
I2luY2x1ZGUgPHd0Zi9GYXN0Qml0VmVjdG9yLmg+CkBAIC03NDgsNiArNzQ3LDMgQEAgcHJpdmF0
ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkRvbWluYXRvcnM7Ci0KLSNlbmRp
ZiAvLyBXVEZEb21pbmF0b3JzX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvRG91Ymx5TGlua2Vk
TGlzdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0RvdWJseUxpbmtlZExpc3QuaAko
cmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvRG91Ymx5TGlua2VkTGlzdC5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBEb3VibHlMaW5rZWRMaXN0X2gKLSNkZWZpbmUgRG91
Ymx5TGlua2VkTGlzdF9oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTIx
Niw1ICsyMTUsMyBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBpbmxpbmUgdm9pZCBEb3VibHlMCiAK
IHVzaW5nIFdURjo6RG91Ymx5TGlua2VkTGlzdE5vZGU7CiB1c2luZyBXVEY6OkRvdWJseUxpbmtl
ZExpc3Q7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvRmFzdEJpdFZlY3Rvci5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvRmFzdEJpdFZlY3Rvci5jcHAJKHJldmlzaW9u
IDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0Zhc3RCaXRWZWN0b3IuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIkZhc3RCaXRWZWN0b3IuaCIKKyNpbmNsdWRlIDx3dGYvRmFzdEJpdFZlY3Rvci5oPgogCiBu
YW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvRmFzdE1hbGxvYy5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvRmFzdE1hbGxvYy5jcHAJKHJldmlzaW9uIDIzNzAz
MykKKysrIFNvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
NCwxMSArMjQsMTEgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiRmFz
dE1hbGxvYy5oIgorI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAKLSNpbmNsdWRlICJDaGVj
a2VkQXJpdGhtZXRpYy5oIgogI2luY2x1ZGUgPGxpbWl0cz4KICNpbmNsdWRlIDxzdHJpbmcuaD4K
KyNpbmNsdWRlIDx3dGYvQ2hlY2tlZEFyaXRobWV0aWMuaD4KICNpbmNsdWRlIDx3dGYvRGF0YUxv
Zy5oPgogCiAjaWYgT1MoV0lORE9XUykKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2Mu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmgJKHJldmlzaW9uIDIz
NzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuaAkod29ya2luZyBjb3B5KQpAQCAt
MTgsOCArMTgsNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9GYXN0TWFsbG9jX2gKLSNkZWZp
bmUgV1RGX0Zhc3RNYWxsb2NfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxuZXc+CiAjaW5j
bHVkZSA8c3RkbGliLmg+CkBAIC0yOTgsNSArMjk3LDMgQEAgdHlwZWRlZiBpbnQgX190aGlzSXNI
ZXJlVG9Gb3JjZUFTZW1pY29sbwogI2RlZmluZSBXVEZfTUFLRV9TVFJVQ1RfRkFTVF9BTExPQ0FU
RUQgXAogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEX0lNUEwgXAogdHlwZWRlZiBpbnQgX190
aGlzSXNIZXJlVG9Gb3JjZUFTZW1pY29sb25BZnRlclRoaXNNYWNybwotCi0jZW5kaWYgLyogV1RG
X0Zhc3RNYWxsb2NfaCAqLwpJbmRleDogU291cmNlL1dURi93dGYvRmVhdHVyZURlZmluZXMuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCShyZXZpc2lvbiAy
MzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw4ICsyNiw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX0Zl
YXR1cmVEZWZpbmVzX2gKLSNkZWZpbmUgV1RGX0ZlYXR1cmVEZWZpbmVzX2gKKyNwcmFnbWEgb25j
ZQogCiAvKiBVc2UgdGhpcyBmaWxlIHRvIGxpc3QgX2FsbF8gRU5BQkxFKCkgbWFjcm9zLiBEZWZp
bmUgdGhlIG1hY3JvcyB0byBiZSBvbmUgb2YgdGhlIGZvbGxvd2luZyB2YWx1ZXM6CiAgKiAgLSAi
MCIgZGlzYWJsZXMgdGhlIGZlYXR1cmUgYnkgZGVmYXVsdC4gVGhlIGZlYXR1cmUgY2FuIHN0aWxs
IGJlIGVuYWJsZWQgZm9yIGEgc3BlY2lmaWMgcG9ydCBvciBlbnZpcm9ubWVudC4KQEAgLTcxOCw1
ICs3MTcsMyBAQCB0aGUgcHVibGljIGlPUyBTREsuIFNlZSA8aHR0cHM6Ly93ZWJraXQuCiAjaWYg
RU5BQkxFKFdFQkdMMikgJiYgIUVOQUJMRShXRUJHTCkKICNlcnJvciAiRU5BQkxFKFdFQkdMMikg
cmVxdWlyZXMgRU5BQkxFKFdFQkdMKSIKICNlbmRpZgotCi0jZW5kaWYgLyogV1RGX0ZlYXR1cmVE
ZWZpbmVzX2ggKi8KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0ZpbGVQcmludFN0cmVhbS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvRmlsZVByaW50U3RyZWFtLmNwcAkocmV2aXNpb24g
MjM3MDMzKQorKysgU291cmNlL1dURi93dGYvRmlsZVByaW50U3RyZWFtLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJGaWxlUHJpbnRTdHJlYW0uaCIKKyNpbmNsdWRlIDx3dGYvRmlsZVByaW50U3RyZWFtLmg+
CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9GaWxlUHJpbnRTdHJl
YW0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9GaWxlUHJpbnRTdHJlYW0uaAkocmV2
aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvRmlsZVByaW50U3RyZWFtLmgJKHdvcmtp
bmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5k
ZWYgRmlsZVByaW50U3RyZWFtX2gKLSNkZWZpbmUgRmlsZVByaW50U3RyZWFtX2gKKyNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDx3dGYvUHJpbnRTdHJlYW0uaD4K
QEAgLTU2LDYgKzU1LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBX
VEY6OkZpbGVQcmludFN0cmVhbTsKLQotI2VuZGlmIC8vIEZpbGVQcmludFN0cmVhbV9oCi0KSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL0ZsaXBCeXRlcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL0ZsaXBCeXRlcy5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9GbGlw
Qnl0ZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4g
CiAgKi8KIAotI2lmbmRlZiBGbGlwQnl0ZXNfaAotI2RlZmluZSBGbGlwQnl0ZXNfaAorI3ByYWdt
YSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC0xMTIsNiArMTExLDMgQEAgaW5saW5lIFQg
ZmxpcEJ5dGVzSWZMaXR0bGVFbmRpYW4oVCB2YWx1ZQogdXNpbmcgV1RGOjpuZWVkVG9GbGlwQnl0
ZXNJZkxpdHRsZUVuZGlhbjsKIHVzaW5nIFdURjo6ZmxpcEJ5dGVzOwogdXNpbmcgV1RGOjpmbGlw
Qnl0ZXNJZkxpdHRsZUVuZGlhbjsKLQotI2VuZGlmIC8vIEZsaXBCeXRlc19oCi0KSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL0Z1bmN0aW9uRGlzcGF0Y2hlci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvRnVuY3Rpb25EaXNwYXRjaGVyLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291
cmNlL1dURi93dGYvRnVuY3Rpb25EaXNwYXRjaGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQs
NyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJGdW5jdGlv
bkRpc3BhdGNoZXIuaCIKKyNpbmNsdWRlIDx3dGYvRnVuY3Rpb25EaXNwYXRjaGVyLmg+CiAKIG5h
bWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9GdW5jdGlvbkRpc3BhdGNoZXIu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9GdW5jdGlvbkRpc3BhdGNoZXIuaAkocmV2
aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvRnVuY3Rpb25EaXNwYXRjaGVyLmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KICAqLwogCi0jaWZuZGVmIEZ1bmN0aW9uRGlzcGF0Y2hlcl9oCi0jZGVmaW5lIEZ1
bmN0aW9uRGlzcGF0Y2hlcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9GdW5jdGlv
bi5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRTYWZlUmVmQ291bnRlZC5oPgpAQCAtNDcsNSArNDYs
MyBAQCBwcm90ZWN0ZWQ6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpGdW5jdGlv
bkRpc3BhdGNoZXI7Ci0KLSNlbmRpZiAvLyBGdW5jdGlvbkRpc3BhdGNoZXJfaApJbmRleDogU291
cmNlL1dURi93dGYvR2V0UHRyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvR2V0UHRy
LmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0dldFB0ci5oCSh3b3JraW5n
IGNvcHkpCkBAIC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX0dldFB0cl9o
Ci0jZGVmaW5lIFdURl9HZXRQdHJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxtZW1vcnk+
CiAKQEAgLTc4LDUgKzc3LDMgQEAgc3RydWN0IEdldFB0ckhlbHBlcjxzdGQ6OnVuaXF1ZV9wdHI8
VCwgRAogfTsKIAogfSAvLyBuYW1lc3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBXVEZfR2V0UHRyX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL0dpZ2FjYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9HaWdhY2FnZS5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3Rm
L0dpZ2FjYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNp
bmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJHaWdhY2FnZS5oIgorI2luY2x1ZGUgPHd0Zi9H
aWdhY2FnZS5oPgogCiAjaW5jbHVkZSA8d3RmL0F0b21pY3MuaD4KICNpbmNsdWRlIDx3dGYvUGFn
ZUJsb2NrLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9HbG9iYWxWZXJzaW9uLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9HbG9iYWxWZXJzaW9uLmNwcAkocmV2aXNpb24gMjM3MDMz
KQorKysgU291cmNlL1dURi93dGYvR2xvYmFsVmVyc2lvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiR2xv
YmFsVmVyc2lvbi5oIgorI2luY2x1ZGUgPHd0Zi9HbG9iYWxWZXJzaW9uLmg+CiAKICNpbmNsdWRl
IDx3dGYvQXRvbWljcy5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9HcmFwaE5vZGVXb3JrbGlz
dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0dyYXBoTm9kZVdvcmtsaXN0LmgJKHJl
dmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0dyYXBoTm9kZVdvcmtsaXN0LmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgR3JhcGhOb2RlV29ya2xpc3RfaAotI2RlZmluZSBHcmFwaE5vZGVXb3JrbGlzdF9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAKQEAgLTIxOCw2ICsyMTcs
MyBAQCB1c2luZyBXVEY6OkV4dGVuZGVkR3JhcGhOb2RlV29ya2xpc3Q7CiB1c2luZyBXVEY6Okdy
YXBoVmlzaXRPcmRlcjsKIHVzaW5nIFdURjo6R3JhcGhOb2RlV2l0aE9yZGVyOwogdXNpbmcgV1RG
OjpQb3N0T3JkZXJHcmFwaE5vZGVXb3JrbGlzdDsKLQotI2VuZGlmIC8vIEdyYXBoTm9kZVdvcmts
aXN0X2gKLQpJbmRleDogU291cmNlL1dURi93dGYvR3JlZ29yaWFuRGF0ZVRpbWUuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0dyZWdvcmlhbkRhdGVUaW1lLmNwcAkocmV2aXNpb24g
MjM3MDMzKQorKysgU291cmNlL1dURi93dGYvR3JlZ29yaWFuRGF0ZVRpbWUuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw5ICsyMyw5IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2lu
Y2x1ZGUgIkdyZWdvcmlhbkRhdGVUaW1lLmgiCisjaW5jbHVkZSA8d3RmL0dyZWdvcmlhbkRhdGVU
aW1lLmg+CiAKLSNpbmNsdWRlICJEYXRlTWF0aC5oIgorI2luY2x1ZGUgPHd0Zi9EYXRlTWF0aC5o
PgogCiAjaWYgT1MoV0lORE9XUykKICNpbmNsdWRlIDx3aW5kb3dzLmg+CkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9HcmVnb3JpYW5EYXRlVGltZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L0dyZWdvcmlhbkRhdGVUaW1lLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3Rm
L0dyZWdvcmlhbkRhdGVUaW1lLmgJKHdvcmtpbmcgY29weSkKQEAgLTIyLDggKzIyLDcgQEAKICAq
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXVEZfR3JlZ29yaWFuRGF0ZVRpbWVfaAotI2RlZmlu
ZSBXVEZfR3JlZ29yaWFuRGF0ZVRpbWVfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxzdHJp
bmcuaD4KICNpbmNsdWRlIDx0aW1lLmg+CkBAIC0xMjQsNSArMTIzLDMgQEAgcHJpdmF0ZToKIH0g
Ly8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkdyZWdvcmlhbkRhdGVUaW1lOwotCi0jZW5k
aWYgLy8gV1RGX0dyZWdvcmlhbkRhdGVUaW1lX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0hhc2hG
dW5jdGlvbnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9IYXNoRnVuY3Rpb25zLmgJ
KHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0hhc2hGdW5jdGlvbnMuaAkod29y
a2luZyBjb3B5KQpAQCAtMTgsOCArMTgsNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9IYXNo
RnVuY3Rpb25zX2gKLSNkZWZpbmUgV1RGX0hhc2hGdW5jdGlvbnNfaAorI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDx0dXBsZT4KQEAgLTI3Niw1ICsyNzUsMyBA
QCBuYW1lc3BhY2UgV1RGIHsKIHVzaW5nIFdURjo6RGVmYXVsdEhhc2g7CiB1c2luZyBXVEY6Oklu
dEhhc2g7CiB1c2luZyBXVEY6OlB0ckhhc2g7Ci0KLSNlbmRpZiAvLyBXVEZfSGFzaEZ1bmN0aW9u
c19oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9IYXNoTWFwLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvSGFzaE1hcC5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9I
YXNoTWFwLmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDggKzE4LDcgQEAKICAqCiAgKi8KIAotI2lm
bmRlZiBXVEZfSGFzaE1hcF9oCi0jZGVmaW5lIFdURl9IYXNoTWFwX2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8aW5pdGlhbGl6ZXJfbGlzdD4KICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgpA
QCAtNTc5LDUgKzU3OCwzIEBAIGlubGluZSBib29sIG9wZXJhdG9yIT0oY29uc3QgSGFzaE1hcDxU
LCAKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6Okhhc2hNYXA7Ci0KLSNlbmRpZiAv
KiBXVEZfSGFzaE1hcF9oICovCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9IYXNoTWV0aG9kLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvSGFzaE1ldGhvZC5oCShyZXZpc2lvbiAyMzcwMzMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9IYXNoTWV0aG9kLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDgg
KzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgSGFzaE1ldGhvZF9oCi0j
ZGVmaW5lIEhhc2hNZXRob2RfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvU3RkTGli
RXh0cmFzLmg+CiAKQEAgLTQxLDUgKzQwLDMgQEAgc3RydWN0IEhhc2hNZXRob2QgewogfSAvLyBu
YW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6SGFzaE1ldGhvZDsKLQotI2VuZGlmIC8vIEhhc2hN
ZXRob2RfaApJbmRleDogU291cmNlL1dURi93dGYvSGFzaFNldC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL0hhc2hTZXQuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93
dGYvSGFzaFNldC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAK
LSNpZm5kZWYgV1RGX0hhc2hTZXRfaAotI2RlZmluZSBXVEZfSGFzaFNldF9oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPGluaXRpYWxpemVyX2xpc3Q+CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQu
aD4KQEAgLTM4NCw1ICszODMsMyBAQCB2b2lkIEhhc2hTZXQ8VCwgVSwgVj46OmFkZChzdGQ6Omlu
aXRpYWxpCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpIYXNoU2V0OwotCi0jZW5k
aWYgLyogV1RGX0hhc2hTZXRfaCAqLwpJbmRleDogU291cmNlL1dURi93dGYvSGFzaFRhYmxlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwCShyZXZpc2lvbiAy
MzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0xOCwxMCArMTgsMTAgQEAKICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJI
YXNoVGFibGUuaCIKKyNpbmNsdWRlIDx3dGYvSGFzaFRhYmxlLmg+CiAKLSNpbmNsdWRlICJEYXRh
TG9nLmgiCiAjaW5jbHVkZSA8bXV0ZXg+CisjaW5jbHVkZSA8d3RmL0RhdGFMb2cuaD4KIAogbmFt
ZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0hhc2hUcmFpdHMuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9IYXNoVHJhaXRzLmgJKHJldmlzaW9uIDIzNzAzMykKKysr
IFNvdXJjZS9XVEYvd3RmL0hhc2hUcmFpdHMuaAkod29ya2luZyBjb3B5KQpAQCAtMTgsOCArMTgs
NyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9IYXNoVHJhaXRzX2gKLSNkZWZpbmUgV1RGX0hh
c2hUcmFpdHNfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8
dXRpbGl0eT4KQEAgLTM4MCw1ICszNzksMyBAQCB1c2luZyBXVEY6OktleVZhbHVlUGFpcjsKIHVz
aW5nIFdURjo6UGFpckhhc2hUcmFpdHM7CiB1c2luZyBXVEY6Ok51bGxhYmxlSGFzaFRyYWl0czsK
IHVzaW5nIFdURjo6U2ltcGxlQ2xhc3NIYXNoVHJhaXRzOwotCi0jZW5kaWYgLy8gV1RGX0hhc2hU
cmFpdHNfaApJbmRleDogU291cmNlL1dURi93dGYvSW5kZW50ZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9JbmRlbnRlci5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RG
L3d0Zi9JbmRlbnRlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgogICovCiAKLSNpZm5kZWYgSW5kZW50ZXJfaAotI2RlZmluZSBJbmRlbnRlcl9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgogI2luY2x1ZGUgPHd0
Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtNjMsNSArNjIsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1l
c3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6SW5kZW50ZXI7Ci0KLSNlbmRpZiAvLyBJbmRlbnRlcl9o
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9JbmRleFNwYXJzZVNldC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL0luZGV4U3BhcnNlU2V0LmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJj
ZS9XVEYvd3RmL0luZGV4U3BhcnNlU2V0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcg
QEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBJbmRleFNwYXJzZVNldF9oCi0jZGVm
aW5lIEluZGV4U3BhcnNlU2V0X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL1ZlY3Rv
ci5oPgogCkBAIC0yMzAsNSArMjI5LDMgQEAgYXV0byBJbmRleFNwYXJzZVNldDxFbnRyeVR5cGUs
IEVudHJ5VHlwZQogCiB1c2luZyBXVEY6OkRlZmF1bHRJbmRleFNwYXJzZVNldFRyYWl0czsKIHVz
aW5nIFdURjo6SW5kZXhTcGFyc2VTZXQ7Ci0KLSNlbmRpZiAvLyBJbmRleFNwYXJzZVNldF9oCklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9JbmxpbmVBU00uaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9JbmxpbmVBU00uaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvSW5s
aW5lQVNNLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDkgKzIzLDEwIEBACiAgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LiAKICAqLwogCi0jaWZuZGVmIElubGluZUFTTV9oCi0jZGVmaW5lIElubGluZUFTTV9oCisjcHJh
Z21hIG9uY2UKKwogI2luY2x1ZGUgPHd0Zi9QbGF0Zm9ybS5oPgorCiAjaWYgIUNQVShVTktOT1dO
KQogCiAvKiBhc20gZGlyZWN0aXZlIGhlbHBlcnMgKi8gCkBAIC05OSw0ICsxMDAsMyBAQAogI2Vu
ZGlmCiAKICNlbmRpZiAvLyAhQ1BVKFVOS05PV04pCi0jZW5kaWYgLy8gSW5saW5lQVNNX2gKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL0luc2VydGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL0luc2VydGlvbi5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9JbnNl
cnRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4g
CiAgKi8KIAotI2lmbmRlZiBJbnNlcnRpb25faAotI2RlZmluZSBJbnNlcnRpb25faAorI3ByYWdt
YSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC04MSw1ICs4MCwzIEBAIHNpemVfdCBleGVj
dXRlSW5zZXJ0aW9ucyhUYXJnZXRWZWN0b3JUeXAKIAogdXNpbmcgV1RGOjpJbnNlcnRpb247CiB1
c2luZyBXVEY6OmV4ZWN1dGVJbnNlcnRpb25zOwotCi0jZW5kaWYgLy8gSW5zZXJ0aW9uX2gKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL0l0ZXJhdG9yQWRhcHRvcnMuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9JdGVyYXRvckFkYXB0b3JzLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJj
ZS9XVEYvd3RmL0l0ZXJhdG9yQWRhcHRvcnMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMs
NyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYg
V1RGX0l0ZXJhdG9yQWRhcHRvcnNfaAotI2RlZmluZSBXVEZfSXRlcmF0b3JBZGFwdG9yc19oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHR5cGVfdHJhaXRzPgogCkBAIC0xMDksNSArMTA4LDMg
QEAgaW5saW5lIFRyYW5zZm9ybUl0ZXJhdG9yPFRyYW5zZm9ybSwgSXRlcgogfQogCiB9IC8vIG5h
bWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFdURl9JdGVyYXRvckFkYXB0b3JzX2gKSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL0l0ZXJhdG9yUmFuZ2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9JdGVyYXRvclJhbmdlLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0l0
ZXJhdG9yUmFuZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX0l0ZXJhdG9yUmFu
Z2VfaAotI2RlZmluZSBXVEZfSXRlcmF0b3JSYW5nZV9oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNw
YWNlIFdURiB7CiAKQEAgLTc5LDUgKzc4LDMgQEAgU2l6ZWRJdGVyYXRvclJhbmdlPENvbnRhaW5l
ciwgSXRlcmF0b3I+IAogfQogCiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFdURl9J
dGVyYXRvclJhbmdlX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0pTT05WYWx1ZXMuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0pTT05WYWx1ZXMuY3BwCShyZXZpc2lvbiAyMzcwMzMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9KU09OVmFsdWVzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzEs
NyArMzEsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJKU09OVmFs
dWVzLmgiCisjaW5jbHVkZSA8d3RmL0pTT05WYWx1ZXMuaD4KIAogI2luY2x1ZGUgPHd0Zi9EZWNp
bWFsTnVtYmVyLmg+CiAjaW5jbHVkZSA8d3RmL2R0b2EuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L0pTVmFsdWVNYWxsb2MuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0pTVmFsdWVN
YWxsb2MuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9KU1ZhbHVlTWFs
bG9jLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJKU1ZhbHVlTWFsbG9jLmgiCisjaW5jbHVkZSA8d3RmL0pT
VmFsdWVNYWxsb2MuaD4KIAogI2luY2x1ZGUgPHd0Zi9EYXRhTG9nLmg+CiAjaW5jbHVkZSA8d3Rm
L0Zhc3RNYWxsb2MuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0xFQkRlY29kZXIuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9MRUJEZWNvZGVyLmgJKHJldmlzaW9uIDIzNzAzMykKKysr
IFNvdXJjZS9XVEYvd3RmL0xFQkRlY29kZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOSArMjUs
OSBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIkNvbXBpbGVyLmgiCiAjaW5jbHVkZSA8
YWxnb3JpdGhtPgogI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPHd0Zi9Db21waWxlci5o
PgogCiAvLyBUaGlzIGZpbGUgY29udGFpbnMgYSBidW5jaCBvZiBoZWxwZXIgZnVuY3Rpb25zIGZv
ciBkZWNvZGluZyBMRUIgbnVtYmVycy4KIC8vIFNlZSBodHRwczovL2VuLndpa2lwZWRpYS5vcmcv
d2lraS9MRUIxMjggZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9MYW5ndWFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTGFuZ3Vh
Z2UuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9MYW5ndWFnZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiTGFuZ3VhZ2UuaCIKKyNpbmNsdWRlIDx3dGYvTGFuZ3VhZ2UuaD4KIAog
I2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9MaXN0RHVtcC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL0xpc3REdW1wLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0xp
c3REdW1wLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDEyICsyMywxMSBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCiAgKi8KIAotI2lmbmRlZiBMaXN0RHVtcF9oCi0jZGVmaW5lIExpc3REdW1wX2gKKyNwcmFn
bWEgb25jZQogCi0jaW5jbHVkZSAiQ29tbWFQcmludGVyLmgiCi0jaW5jbHVkZSAiUHJpbnRTdHJl
YW0uaCIKLSNpbmNsdWRlICJTdHJpbmdQcmludFN0cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi9Db21t
YVByaW50ZXIuaD4KKyNpbmNsdWRlIDx3dGYvUHJpbnRTdHJlYW0uaD4KKyNpbmNsdWRlIDx3dGYv
U3RyaW5nUHJpbnRTdHJlYW0uaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTE4Miw2ICsxODEs
MyBAQCB1c2luZyBXVEY6Om1hcER1bXA7CiB1c2luZyBXVEY6OnBvaW50ZXJMaXN0RHVtcDsKIHVz
aW5nIFdURjo6c29ydGVkTGlzdER1bXA7CiB1c2luZyBXVEY6OnNvcnRlZE1hcER1bXA7Ci0KLSNl
bmRpZiAvLyBMaXN0RHVtcF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0xvY2suY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0xvY2suY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBT
b3VyY2UvV1RGL3d0Zi9Mb2NrLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJMb2NrLmgiCisjaW5jbHVkZSA8
d3RmL0xvY2suaD4KIAogI2luY2x1ZGUgPHd0Zi9Mb2NrQWxnb3JpdGhtSW5saW5lcy5oPgogI2lu
Y2x1ZGUgPHd0Zi9TdGFja1Nob3RQcm9maWxlci5oPgpJbmRleDogU291cmNlL1dURi93dGYvTG9j
ay5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0xvY2suaAkocmV2aXNpb24gMjM3MDMz
KQorKysgU291cmNlL1dURi93dGYvTG9jay5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9Mb2NrX2gKLSNkZWZpbmUg
V1RGX0xvY2tfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTG9ja0FsZ29yaXRobS5o
PgogI2luY2x1ZGUgPHd0Zi9Mb2NrZXIuaD4KQEAgLTEzOCw2ICsxMzcsMyBAQCB1c2luZyBMb2Nr
SG9sZGVyID0gTG9ja2VyPExvY2s+OwogCiB1c2luZyBXVEY6OkxvY2s7CiB1c2luZyBXVEY6Okxv
Y2tIb2xkZXI7Ci0KLSNlbmRpZiAvLyBXVEZfTG9ja19oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L0xvY2tBbGdvcml0aG0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Mb2NrQWxnb3Jp
dGhtLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL0xvY2tBbGdvcml0aG0u
aAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8K
IAotI2lmbmRlZiBXVEZfTG9ja0FsZ29yaXRobV9oCi0jZGVmaW5lIFdURl9Mb2NrQWxnb3JpdGht
X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0F0b21pY3MuaD4KICNpbmNsdWRlIDx3
dGYvQ29tcGlsZXIuaD4KQEAgLTE1NSw2ICsxNTQsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3Bh
Y2UgV1RGCiAKIHVzaW5nIFdURjo6TG9ja0FsZ29yaXRobTsKLQotI2VuZGlmIC8vIFdURl9Mb2Nr
QWxnb3JpdGhtX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvTG9ja2VkUHJpbnRTdHJlYW0uY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0xvY2tlZFByaW50U3RyZWFtLmNwcAkocmV2
aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvTG9ja2VkUHJpbnRTdHJlYW0uY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIkxvY2tlZFByaW50U3RyZWFtLmgiCisjaW5jbHVkZSA8d3RmL0xvY2tlZFBy
aW50U3RyZWFtLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9M
b2NrZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Mb2NrZXIuaAkocmV2aXNpb24g
MjM3MDMzKQorKysgU291cmNlL1dURi93dGYvTG9ja2VyLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1
LDggKzI1LDggQEAKICAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwotI2lmbmRl
ZiBMb2NrZXJfaAotI2RlZmluZSBMb2NrZXJfaAorCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUg
PHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL0F0b21pY3MuaD4KQEAgLTE0NCw1ICsx
NDQsMyBAQCB1c2luZyBXVEY6Ok5vTG9ja2luZ05lY2Vzc2FyeVRhZzsKIHVzaW5nIFdURjo6Tm9M
b2NraW5nTmVjZXNzYXJ5OwogdXNpbmcgV1RGOjpob2xkTG9jazsKIHVzaW5nIFdURjo6aG9sZExv
Y2tJZjsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9NRDUuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL01ENS5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9X
VEYvd3RmL01ENS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ4LDkgKzQ4LDkgQEAKICAqLwogCiAj
aW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTUQ1LmgiCisjaW5jbHVkZSA8d3RmL01ENS5o
PgogCi0jaW5jbHVkZSAiQXNzZXJ0aW9ucy5oIgorI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+
CiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogCiBuYW1lc3BhY2UgV1RGIHsKSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL01ENS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL01ENS5o
CShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9NRDUuaAkod29ya2luZyBjb3B5
KQpAQCAtMjgsOCArMjgsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9N
RDVfaAotI2RlZmluZSBXVEZfTUQ1X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8YXJyYXk+
CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgpAQCAtNzIsNSArNzEsMyBAQCBwcml2YXRlOgogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6TUQ1OwotCi0jZW5kaWYgLy8gV1RGX01ENV9o
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9NYWluVGhyZWFkLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9NYWluVGhyZWFkLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dU
Ri93dGYvTWFpblRocmVhZC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI3LDE3ICsyNywxNyBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNYWluVGhyZWFkLmgiCisjaW5j
bHVkZSA8d3RmL01haW5UaHJlYWQuaD4KIAotI2luY2x1ZGUgIkRlcXVlLmgiCi0jaW5jbHVkZSAi
TW9ub3RvbmljVGltZS5oIgotI2luY2x1ZGUgIlN0ZExpYkV4dHJhcy5oIgotI2luY2x1ZGUgIlRo
cmVhZGluZy5oIgogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHd0Zi9Db25kaXRpb24uaD4K
KyNpbmNsdWRlIDx3dGYvRGVxdWUuaD4KICNpbmNsdWRlIDx3dGYvTG9jay5oPgorI2luY2x1ZGUg
PHd0Zi9Nb25vdG9uaWNUaW1lLmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+Cisj
aW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRTcGVjaWZp
Yy5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL01haW5UaHJlYWQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9NYWluVGhyZWFkLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL01h
aW5UaHJlYWQuaAkod29ya2luZyBjb3B5KQpAQCAtMjcsOCArMjcsNyBAQAogICogVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIE1haW5UaHJlYWRfaAotI2RlZmluZSBNYWluVGhyZWFkX2gKKyNwcmFn
bWEgb25jZQogCiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4K
QEAgLTExNiw1ICsxMTUsMyBAQCB1c2luZyBXVEY6OmNhbGxPbldlYlRocmVhZE9yRGlzcGF0Y2hB
c3luCiB1c2luZyBXVEY6OmluaXRpYWxpemVXZWJUaHJlYWQ7CiB1c2luZyBXVEY6OmluaXRpYWxp
emVBcHBsaWNhdGlvblVJVGhyZWFkOwogI2VuZGlmCi0KLSNlbmRpZiAvLyBNYWluVGhyZWFkX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL01hbGxvY1B0ci5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL01hbGxvY1B0ci5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9N
YWxsb2NQdHIuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgTWFsbG9jUHRyX2gKLSNkZWZp
bmUgTWFsbG9jUHRyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2Mu
aD4KIApAQCAtMTM3LDUgKzEzNiwzIEBAIHRlbXBsYXRlPHR5cGVuYW1lIFU+IE1hbGxvY1B0cjxV
PiBhZG9wdE0KIAogdXNpbmcgV1RGOjpNYWxsb2NQdHI7CiB1c2luZyBXVEY6OmFkb3B0TWFsbG9j
UHRyOwotCi0jZW5kaWYgLy8gTWFsbG9jUHRyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL01hdGhF
eHRyYXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9NYXRoRXh0cmFzLmgJKHJldmlz
aW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL01hdGhFeHRyYXMuaAkod29ya2luZyBjb3B5
KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZf
TWF0aEV4dHJhc19oCi0jZGVmaW5lIFdURl9NYXRoRXh0cmFzX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPGNtYXRoPgpAQCAtNjE3LDUgKzYxNiwzIEBA
IHVzaW5nIFdURjo6c2h1ZmZsZVZlY3RvcjsKIHVzaW5nIFdURjo6Y2x6MzI7CiB1c2luZyBXVEY6
OmNsejY0OwogdXNpbmcgV1RGOjpjdHozMjsKLQotI2VuZGlmIC8vICNpZm5kZWYgV1RGX01hdGhF
eHRyYXNfaApJbmRleDogU291cmNlL1dURi93dGYvTWVkaWFUaW1lLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9NZWRpYVRpbWUuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9NZWRpYVRpbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw3ICsyNyw3IEBA
CiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk1lZGlhVGltZS5oIgorI2lu
Y2x1ZGUgPHd0Zi9NZWRpYVRpbWUuaD4KIAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRl
IDxjc3RkbGliPgpJbmRleDogU291cmNlL1dURi93dGYvTWVkaWFUaW1lLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvTWVkaWFUaW1lLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJj
ZS9XVEYvd3RmL01lZGlhVGltZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw3IEBACiAg
KiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX01lZGlhVGltZV9oCi0jZGVmaW5lIFdURl9N
ZWRpYVRpbWVfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgog
I2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtMTc4LDUgKzE3NywzIEBAIGJvb2wg
TWVkaWFUaW1lOjpkZWNvZGUoRGVjb2RlciYgZGVjb2RlciwKIHVzaW5nIFdURjo6TWVkaWFUaW1l
OwogdXNpbmcgV1RGOjpNZWRpYVRpbWVSYW5nZTsKIHVzaW5nIFdURjo6YWJzOwotCi0jZW5kaWYK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL01lbW9yeVByZXNzdXJlSGFuZGxlci5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmNwcAkocmV2aXNpb24g
MjM3MDMzKQorKysgU291cmNlL1dURi93dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJNZW1vcnlQcmVzc3VyZUhhbmRsZXIuaCIKKyNpbmNsdWRlIDx3dGYvTWVtb3J5
UHJlc3N1cmVIYW5kbGVyLmg+CiAKICNpbmNsdWRlIDx3dGYvTWVtb3J5Rm9vdHByaW50Lmg+CiAj
aW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9NZXNz
YWdlUXVldWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9NZXNzYWdlUXVldWUuaAko
cmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvTWVzc2FnZVF1ZXVlLmgJKHdvcmtp
bmcgY29weSkKQEAgLTI3LDggKzI3LDcgQEAKICAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBN
ZXNzYWdlUXVldWVfaAotI2RlZmluZSBNZXNzYWdlUXVldWVfaAorI3ByYWdtYSBvbmNlCiAKICNp
bmNsdWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KQEAgLTI1Miw1ICsy
NTEsMyBAQCB1c2luZyBXVEY6Ok1lc3NhZ2VRdWV1ZVdhaXRSZXN1bHQ7CiB1c2luZyBXVEY6Ok1l
c3NhZ2VRdWV1ZVRlcm1pbmF0ZWQ7CiB1c2luZyBXVEY6Ok1lc3NhZ2VRdWV1ZVRpbWVvdXQ7CiB1
c2luZyBXVEY6Ok1lc3NhZ2VRdWV1ZU1lc3NhZ2VSZWNlaXZlZDsKLQotI2VuZGlmIC8vIE1lc3Nh
Z2VRdWV1ZV9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9NZXRhQWxsb2NhdG9yLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9NZXRhQWxsb2NhdG9yLmNwcAkocmV2aXNpb24gMjM3MDMz
KQorKysgU291cmNlL1dURi93dGYvTWV0YUFsbG9jYXRvci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI3LDcgKzI3LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTWV0
YUFsbG9jYXRvci5oIgorI2luY2x1ZGUgPHd0Zi9NZXRhQWxsb2NhdG9yLmg+CiAKICNpbmNsdWRl
IDx3dGYvRGF0YUxvZy5oPgogI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CkluZGV4OiBTb3Vy
Y2UvV1RGL3d0Zi9NZXRhQWxsb2NhdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
TWV0YUFsbG9jYXRvci5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9NZXRh
QWxsb2NhdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDcgQEAKICAqIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiAgKi8KIAotI2lmbmRlZiBXVEZfTWV0YUFsbG9jYXRvcl9oCi0jZGVmaW5lIFdURl9NZXRhQWxs
b2NhdG9yX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNp
bmNsdWRlIDx3dGYvSGFzaE1hcC5oPgpAQCAtMjA4LDYgKzIwNywzIEBAIHByaXZhdGU6CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFdURl9NZXRhQWxsb2NhdG9yX2gKLQpJ
bmRleDogU291cmNlL1dURi93dGYvTWV0YUFsbG9jYXRvckhhbmRsZS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL01ldGFBbGxvY2F0b3JIYW5kbGUuaAkocmV2aXNpb24gMjM3MDMzKQor
KysgU291cmNlL1dURi93dGYvTWV0YUFsbG9jYXRvckhhbmRsZS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw4ICsyNiw3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX01ldGFBbGxv
Y2F0b3JIYW5kbGVfaAotI2RlZmluZSBXVEZfTWV0YUFsbG9jYXRvckhhbmRsZV9oCisjcHJhZ21h
IG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL01ldGFB
bGxvY2F0b3JQdHIuaD4KQEAgLTExOCw1ICsxMTcsMyBAQCBwcml2YXRlOgogfTsKIAogfQotCi0j
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL01vbm90b25pY1RpbWUuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL01vbm90b25pY1RpbWUuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisr
KyBTb3VyY2UvV1RGL3d0Zi9Nb25vdG9uaWNUaW1lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQs
MTEgKzI0LDExIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk1vbm90
b25pY1RpbWUuaCIKKyNpbmNsdWRlIDx3dGYvTW9ub3RvbmljVGltZS5oPgogCi0jaW5jbHVkZSAi
UHJpbnRTdHJlYW0uaCIKLSNpbmNsdWRlICJUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuaCIKLSNp
bmNsdWRlICJXYWxsVGltZS5oIgorI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgorI2luY2x1
ZGUgPHd0Zi9UaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuaD4KKyNpbmNsdWRlIDx3dGYvV2FsbFRp
bWUuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL01vbm90b25p
Y1RpbWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Nb25vdG9uaWNUaW1lLmgJKHJl
dmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL01vbm90b25pY1RpbWUuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRl
ZiBXVEZfTW9ub3RvbmljVGltZV9oCi0jZGVmaW5lIFdURl9Nb25vdG9uaWNUaW1lX2gKKyNwcmFn
bWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Nsb2NrVHlwZS5oPgogI2luY2x1ZGUgPHd0Zi9TZWNv
bmRzLmg+CkBAIC0yMTAsNSArMjA5LDMgQEAgaW5saW5lIGJvb2wgaXNmaW5pdGUoV1RGOjpNb25v
dG9uaWNUaW1lIAogfSAvLyBuYW1lc3BhY2Ugc3RkCiAKIHVzaW5nIFdURjo6TW9ub3RvbmljVGlt
ZTsKLQotI2VuZGlmIC8vIFdURl9Nb25vdG9uaWNUaW1lX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L05ha2VkUHRyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTmFrZWRQdHIuaAkocmV2
aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvTmFrZWRQdHIuaAkod29ya2luZyBjb3B5
KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9O
YWtlZFB0cl9oCi0jZGVmaW5lIFdURl9OYWtlZFB0cl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAKQEAgLTExNSw1ICsxMTQsMyBAQCB0ZW1wbGF0ZTxjbGFz
cyBUPiBpbmxpbmUgdm9pZCBzd2FwKE5ha2VkCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcg
V1RGOjpOYWtlZFB0cjsKLQotI2VuZGlmIC8vIFdURl9OYWtlZFB0cl9oCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9Ob0xvY2suaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Ob0xvY2suaAko
cmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvTm9Mb2NrLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgTm9M
b2NrX2gKLSNkZWZpbmUgTm9Mb2NrX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0xv
Y2tlci5oPgogCkBAIC00Myw2ICs0MiwzIEBAIHR5cGVkZWYgTG9ja2VyPE5vTG9jaz4gTm9Mb2Nr
TG9ja2VyOwogCiB1c2luZyBXVEY6Ok5vTG9jazsKIHVzaW5nIFdURjo6Tm9Mb2NrTG9ja2VyOwot
Ci0jZW5kaWYgLy8gTm9Mb2NrX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvTm9UYWlsQ2FsbHMu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Ob1RhaWxDYWxscy5oCShyZXZpc2lvbiAy
MzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9Ob1RhaWxDYWxscy5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNSw3ICsyNSw3IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiQXRvbWljcy5oIgor
I2luY2x1ZGUgPHd0Zi9BdG9taWNzLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3Vy
Y2UvV1RGL3d0Zi9Ob25jb3B5YWJsZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL05v
bmNvcHlhYmxlLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL05vbmNvcHlh
YmxlLmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDEyICsxOCw5IEBACiAgKgogICovCiAKLSNpZm5k
ZWYgV1RGX05vbmNvcHlhYmxlX2gKLSNkZWZpbmUgV1RGX05vbmNvcHlhYmxlX2gKKyNwcmFnbWEg
b25jZQogCiAjZGVmaW5lIFdURl9NQUtFX05PTkNPUFlBQkxFKENsYXNzTmFtZSkgXAogICAgIHBy
aXZhdGU6IFwKICAgICAgICAgQ2xhc3NOYW1lKGNvbnN0IENsYXNzTmFtZSYpID0gZGVsZXRlOyBc
CiAgICAgICAgIENsYXNzTmFtZSYgb3BlcmF0b3I9KGNvbnN0IENsYXNzTmFtZSYpID0gZGVsZXRl
OyBcCi0KLSNlbmRpZiAvLyBXVEZfTm9uY29weWFibGVfaApJbmRleDogU291cmNlL1dURi93dGYv
TnVtYmVyT2ZDb3Jlcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTnVtYmVyT2ZD
b3Jlcy5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL051bWJlck9mQ29y
ZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIk51bWJlck9mQ29yZXMuaCIKKyNpbmNsdWRlIDx3dGYvTnVt
YmVyT2ZDb3Jlcy5oPgogCiAjaW5jbHVkZSA8Y3N0ZGlvPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9OdW1iZXJPZkNvcmVzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTnVtYmVyT2ZD
b3Jlcy5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9OdW1iZXJPZkNvcmVz
LmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDEzICsxOCwxMCBAQAogICoKICAqLwogCi0jaWZuZGVm
IE51bWJlck9mQ29yZXNfaAotI2RlZmluZSBOdW1iZXJPZkNvcmVzX2gKKyNwcmFnbWEgb25jZQog
CiBuYW1lc3BhY2UgV1RGIHsKIAogV1RGX0VYUE9SVF9QUklWQVRFIGludCBudW1iZXJPZlByb2Nl
c3NvckNvcmVzKCk7CiAKIH0KLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9PU0FsbG9j
YXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yLmgJKHJldmlz
aW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIE9TQWxsb2NhdG9yX2gKLSNkZWZpbmUgT1NBbGxvY2F0b3JfaAorI3By
YWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhbGdvcml0aG0+CiAjaW5jbHVkZSA8d3RmL1ZNVGFncy5o
PgpAQCAtOTgsNSArOTcsMyBAQCBpbmxpbmUgVCogT1NBbGxvY2F0b3I6OnJlYWxsb2NhdGVDb21t
aXR0CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpPU0FsbG9jYXRvcjsKLQotI2Vu
ZGlmIC8vIE9TQWxsb2NhdG9yX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yUG9z
aXguY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yUG9zaXguY3Bw
CShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9PU0FsbG9jYXRvclBvc2l4LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjQsMTQgKzI0LDE0IEBACiAgKi8KIAogI2luY2x1ZGUgImNv
bmZpZy5oIgotI2luY2x1ZGUgIk9TQWxsb2NhdG9yLmgiCisjaW5jbHVkZSA8d3RmL09TQWxsb2Nh
dG9yLmg+CiAKICNpZiBPUyhVTklYKQogCi0jaW5jbHVkZSAiUGFnZUFsbG9jYXRpb24uaCIKICNp
bmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPHN5cy9tbWFuLmg+CiAjaW5jbHVkZSA8d3RmL0Fz
c2VydGlvbnMuaD4KKyNpbmNsdWRlIDx3dGYvUGFnZUFsbG9jYXRpb24uaD4KIAogbmFtZXNwYWNl
IFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yV2luLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9PU0FsbG9jYXRvcldpbi5jcHAJKHJldmlzaW9uIDIzNzAz
MykKKysrIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yV2luLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMjQsMTIgKzI0LDEyIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUg
Ik9TQWxsb2NhdG9yLmgiCisjaW5jbHVkZSA8d3RmL09TQWxsb2NhdG9yLmg+CiAKICNpZiBPUyhX
SU5ET1dTKQogCi0jaW5jbHVkZSAid2luZG93cy5oIgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25z
Lmg+CisjaW5jbHVkZSA8d2luZG93cy5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291
cmNlL1dURi93dGYvT1NSYW5kb21Tb3VyY2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL09TUmFuZG9tU291cmNlLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93
dGYvT1NSYW5kb21Tb3VyY2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAg
Ki8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk9TUmFuZG9tU291cmNlLmgiCisj
aW5jbHVkZSA8d3RmL09TUmFuZG9tU291cmNlLmg+CiAKICNpbmNsdWRlIDxtdXRleD4KICNpbmNs
dWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL09TUmFuZG9t
U291cmNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvT1NSYW5kb21Tb3VyY2UuaAko
cmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvT1NSYW5kb21Tb3VyY2UuaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBXVEZfT1NSYW5kb21Tb3VyY2VfaAotI2RlZmluZSBXVEZfT1NSYW5kb21Tb3VyY2VfaAor
I3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC0zNCw1ICszMywzIEBAIG5hbWVz
cGFjZSBXVEYgewogLy8gY2FsbGluZyBjcnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlciBvciBj
cnlwdG9ncmFwaGljYWxseVJhbmRvbVZhbHVlcy4KIHZvaWQgY3J5cHRvZ3JhcGhpY2FsbHlSYW5k
b21WYWx1ZXNGcm9tT1ModW5zaWduZWQgY2hhciogYnVmZmVyLCBzaXplX3QgbGVuZ3RoKTsKIH0K
LQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9PYmpjUnVudGltZUV4dHJhcy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL09iamNSdW50aW1lRXh0cmFzLmgJKHJldmlzaW9uIDIz
NzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL09iamNSdW50aW1lRXh0cmFzLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIyLDggKzIyLDcgQEAKICAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX09iamNSdW50
aW1lRXh0cmFzX2gKLSNkZWZpbmUgV1RGX09iamNSdW50aW1lRXh0cmFzX2gKKyNwcmFnbWEgb25j
ZQogCiAvLyBGSVhNRTogVGhpcyBmaWxlJ3MgbmFtZSBhbmQgZnVuY3Rpb24gbmFtZXMgcmVmZXIg
dG8gT2JqZWN0aXZlLUMgYXMgT2JqYyB3aXRoIGEgbG93ZXJjYXNlIEMsCiAvLyBidXQgaXQgc2hv
dWxkIGJlIE9iakMgd2l0aCBhbiB1cHBlcmNhc2UgQy4KQEAgLTQ1LDUgKzQ0LDMgQEAgaW5saW5l
IFJldHVyblR5cGUgd3RmQ2FsbElNUChJTVAgaW1wbGVtZQogfQogCiAjZW5kaWYgLy8gX19jcGx1
c3BsdXMKLQotI2VuZGlmIC8vIFdURl9PYmpjUnVudGltZUV4dHJhc19oCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9PcmRlck1ha2VyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvT3JkZXJN
YWtlci5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9PcmRlck1ha2VyLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9PcmRlck1ha2VyX2gKLSNkZWZpbmUgV1RG
X09yZGVyTWFrZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQmFnLmg+CiAjaW5j
bHVkZSA8d3RmL0hhc2hNYXAuaD4KQEAgLTEzOCw2ICsxMzcsMyBAQCBwcml2YXRlOgogfSAvLyBu
YW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6T3JkZXJNYWtlcjsKLQotI2VuZGlmIC8vIFdURl9P
cmRlck1ha2VyX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUGFja2VkSW50VmVjdG9yLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGFja2VkSW50VmVjdG9yLmgJKHJldmlzaW9uIDIz
NzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1BhY2tlZEludFZlY3Rvci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFBhY2tl
ZEludFZlY3Rvcl9oCi0jZGVmaW5lIFBhY2tlZEludFZlY3Rvcl9oCisjcHJhZ21hIG9uY2UKIAog
I2luY2x1ZGUgPHd0Zi9CaXRWZWN0b3IuaD4KIApAQCAtMTIyLDYgKzEyMSwzIEBAIHByaXZhdGU6
CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpQYWNrZWRJbnRWZWN0b3I7Ci0KLSNl
bmRpZiAvLyBQYWNrZWRJbnRWZWN0b3JfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QYWdlQWxs
b2NhdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhZ2VBbGxvY2F0aW9uLmgJ
KHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1BhZ2VBbGxvY2F0aW9uLmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgUGFnZUFsbG9jYXRpb25faAotI2RlZmluZSBQYWdlQWxsb2NhdGlvbl9oCisjcHJhZ21h
IG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL09TQWxs
b2NhdG9yLmg+CkBAIC0xMTQsNSArMTEzLDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdU
RgogCiB1c2luZyBXVEY6OlBhZ2VBbGxvY2F0aW9uOwotCi0jZW5kaWYgLy8gUGFnZUFsbG9jYXRp
b25faApJbmRleDogU291cmNlL1dURi93dGYvUGFnZUJsb2NrLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9QYWdlQmxvY2suY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2Uv
V1RGL3d0Zi9QYWdlQmxvY2suY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAg
Ki8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBhZ2VCbG9jay5oIgorI2luY2x1
ZGUgPHd0Zi9QYWdlQmxvY2suaD4KIAogI2lmIE9TKFVOSVgpCiAjaW5jbHVkZSA8dW5pc3RkLmg+
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QYWdlQmxvY2suaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9QYWdlQmxvY2suaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYv
UGFnZUJsb2NrLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFBhZ2VCbG9ja19oCi0jZGVm
aW5lIFBhZ2VCbG9ja19oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTgz
LDUgKzgyLDMgQEAgaW5saW5lIFBhZ2VCbG9jazo6UGFnZUJsb2NrKHZvaWQqIGJhc2UsIAogdXNp
bmcgV1RGOjpwYWdlU2l6ZTsKIHVzaW5nIFdURjo6aXNQYWdlQWxpZ25lZDsKIHVzaW5nIFdURjo6
aXNQb3dlck9mVHdvOwotCi0jZW5kaWYgLy8gUGFnZUJsb2NrX2gKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL1BhZ2VSZXNlcnZhdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhZ2VS
ZXNlcnZhdGlvbi5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9QYWdlUmVz
ZXJ2YXRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCiAgKi8KIAotI2lmbmRlZiBQYWdlUmVzZXJ2YXRpb25faAotI2RlZmluZSBQYWdlUmVzZXJ2
YXRpb25faAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvUGFnZUFsbG9jYXRpb24uaD4K
IApAQCAtMTQ0LDUgKzE0MywzIEBAIHByaXZhdGU6CiB9CiAKIHVzaW5nIFdURjo6UGFnZVJlc2Vy
dmF0aW9uOwotCi0jZW5kaWYgLy8gUGFnZVJlc2VydmF0aW9uX2gKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL1BhcmFsbGVsSGVscGVyUG9vbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
UGFyYWxsZWxIZWxwZXJQb29sLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93
dGYvUGFyYWxsZWxIZWxwZXJQb29sLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsMTEgKzI0LDEx
IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBhcmFsbGVsSGVscGVy
UG9vbC5oIgorI2luY2x1ZGUgPHd0Zi9QYXJhbGxlbEhlbHBlclBvb2wuaD4KIAotI2luY2x1ZGUg
IkF1dG9tYXRpY1RocmVhZC5oIgotI2luY2x1ZGUgIkRhdGFMb2cuaCIKLSNpbmNsdWRlICJTdHJp
bmdQcmludFN0cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi9BdXRvbWF0aWNUaHJlYWQuaD4KKyNpbmNs
dWRlIDx3dGYvRGF0YUxvZy5oPgorI2luY2x1ZGUgPHd0Zi9TdHJpbmdQcmludFN0cmVhbS5oPgog
CiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvUGFyYWxsZWxIZWxwZXJQ
b29sLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxIZWxwZXJQb29sLmgJ
KHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1BhcmFsbGVsSGVscGVyUG9vbC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwog
Ci0jaWZuZGVmIFBhcmFsbGVsSGVscGVyUG9vbF9oCi0jZGVmaW5lIFBhcmFsbGVsSGVscGVyUG9v
bF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Cb3guaD4KICNpbmNsdWRlIDx3dGYv
Q29uZGl0aW9uLmg+CkBAIC0yMTcsNiArMjE2LDMgQEAgcHJpdmF0ZToKIAogdXNpbmcgV1RGOjpQ
YXJhbGxlbEhlbHBlckNsaWVudDsKIHVzaW5nIFdURjo6UGFyYWxsZWxIZWxwZXJQb29sOwotCi0j
ZW5kaWYgLy8gUGFyYWxsZWxIZWxwZXJQb29sX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUGFy
YWxsZWxKb2JzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxKb2JzLmgJ
KHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1BhcmFsbGVsSm9icy5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5k
ZWYgUGFyYWxsZWxKb2JzX2gKLSNkZWZpbmUgUGFyYWxsZWxKb2JzX2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CkBA
IC05OSw1ICs5OCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RG
OjpQYXJhbGxlbEpvYnM7Ci0KLSNlbmRpZiAvLyBQYXJhbGxlbEpvYnNfaApJbmRleDogU291cmNl
L1dURi93dGYvUGFyYWxsZWxKb2JzR2VuZXJpYy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvUGFyYWxsZWxKb2JzR2VuZXJpYy5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJj
ZS9XVEYvd3RmL1BhcmFsbGVsSm9ic0dlbmVyaWMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOSw4
ICsyOSw4IEBACiAKICNpZiBFTkFCTEUoVEhSRUFESU5HX0dFTkVSSUMpCiAKLSNpbmNsdWRlICJQ
YXJhbGxlbEpvYnMuaCIKICNpbmNsdWRlIDx3dGYvTnVtYmVyT2ZDb3Jlcy5oPgorI2luY2x1ZGUg
PHd0Zi9QYXJhbGxlbEpvYnMuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL1BhcmFsbGVsSm9ic0xpYmRpc3BhdGNoLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvUGFyYWxsZWxKb2JzTGliZGlzcGF0Y2guaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291
cmNlL1dURi93dGYvUGFyYWxsZWxKb2JzTGliZGlzcGF0Y2guaAkod29ya2luZyBjb3B5KQpAQCAt
MjUsOCArMjUsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFBhcmFsbGVsSm9i
c0xpYmRpc3BhdGNoX2gKLSNkZWZpbmUgUGFyYWxsZWxKb2JzTGliZGlzcGF0Y2hfaAorI3ByYWdt
YSBvbmNlCiAKICNpZiBFTkFCTEUoVEhSRUFESU5HX0xJQkRJU1BBVENIKQogCkBAIC02OSw1ICs2
OCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogI2VuZGlmIC8vIEVOQUJMRShU
SFJFQURJTkdfTElCRElTUEFUQ0gpCi0KLSNlbmRpZiAvLyBQYXJhbGxlbEpvYnNMaWJkaXNwYXRj
aF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QYXJhbGxlbFZlY3Rvckl0ZXJhdG9yLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxWZWN0b3JJdGVyYXRvci5oCShyZXZpc2lv
biAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9QYXJhbGxlbFZlY3Rvckl0ZXJhdG9yLmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgUGFyYWxsZWxWZWN0b3JJdGVyYXRvcl9oCi0jZGVmaW5lIFBhcmFsbGVsVmVjdG9ySXRl
cmF0b3JfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgogI2lu
Y2x1ZGUgPHd0Zi9Mb2NrLmg+CkBAIC03Nyw2ICs3NiwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVz
cGFjZSBXVEYKIAogdXNpbmcgV1RGOjpQYXJhbGxlbFZlY3Rvckl0ZXJhdG9yOwotCi0jZW5kaWYg
Ly8gUGFyYWxsZWxWZWN0b3JJdGVyYXRvcl9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1Bhcmtp
bmdMb3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhcmtpbmdMb3QuY3BwCShy
ZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9QYXJraW5nTG90LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjQsMTkgKzI0LDE5IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgot
I2luY2x1ZGUgIlBhcmtpbmdMb3QuaCIKKyNpbmNsdWRlIDx3dGYvUGFya2luZ0xvdC5oPgogCi0j
aW5jbHVkZSAiRGF0YUxvZy5oIgotI2luY2x1ZGUgIkhhc2hGdW5jdGlvbnMuaCIKLSNpbmNsdWRl
ICJTdHJpbmdQcmludFN0cmVhbS5oIgotI2luY2x1ZGUgIlRocmVhZFNwZWNpZmljLmgiCi0jaW5j
bHVkZSAiVGhyZWFkaW5nLmgiCi0jaW5jbHVkZSAiVmVjdG9yLmgiCi0jaW5jbHVkZSAiV2Vha1Jh
bmRvbS5oIgotI2luY2x1ZGUgIldvcmRMb2NrLmgiCiAjaW5jbHVkZSA8Y29uZGl0aW9uX3Zhcmlh
YmxlPgogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHRocmVhZD4KKyNpbmNsdWRlIDx3dGYv
RGF0YUxvZy5oPgorI2luY2x1ZGUgPHd0Zi9IYXNoRnVuY3Rpb25zLmg+CisjaW5jbHVkZSA8d3Rm
L1N0cmluZ1ByaW50U3RyZWFtLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZFNwZWNpZmljLmg+Cisj
aW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNs
dWRlIDx3dGYvV2Vha1JhbmRvbS5oPgorI2luY2x1ZGUgPHd0Zi9Xb3JkTG9jay5oPgogCiBuYW1l
c3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvUGFya2luZ0xvdC5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhcmtpbmdMb3QuaAkocmV2aXNpb24gMjM3MDMzKQorKysg
U291cmNlL1dURi93dGYvUGFya2luZ0xvdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9QYXJraW5nTG90X2gKLSNk
ZWZpbmUgV1RGX1BhcmtpbmdMb3RfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQXRv
bWljcy5oPgogI2luY2x1ZGUgPHd0Zi9TY29wZWRMYW1iZGEuaD4KQEAgLTE3Nyw2ICsxNzYsMyBA
QCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6UGFya2luZ0xvdDsK
LQotI2VuZGlmIC8vIFdURl9QYXJraW5nTG90X2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUGxh
dGZvcm0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCShyZXZpc2lv
biAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNSw4ICsyNSw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX1BsYXRm
b3JtX2gKLSNkZWZpbmUgV1RGX1BsYXRmb3JtX2gKKyNwcmFnbWEgb25jZQogCiAvKiBJbmNsdWRl
IGNvbXBpbGVyIHNwZWNpZmljIG1hY3JvcyAqLwogI2luY2x1ZGUgPHd0Zi9Db21waWxlci5oPgpA
QCAtMTM2NSw1ICsxMzY0LDMgQEAKICNpZiBQTEFURk9STShDT0NPQSkgJiYgVVNFKENBKSAmJiAh
UExBVEZPUk0oSU9TX1NJTVVMQVRPUikKICNkZWZpbmUgVVNFX0lPU1VSRkFDRV9DQU5WQVNfQkFD
S0lOR19TVE9SRSAxCiAjZW5kaWYKLQotI2VuZGlmIC8qIFdURl9QbGF0Zm9ybV9oICovCkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi9Qb2ludGVyQ29tcGFyaXNvbi5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL1BvaW50ZXJDb21wYXJpc29uLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJj
ZS9XVEYvd3RmL1BvaW50ZXJDb21wYXJpc29uLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIz
LDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVm
IFdURl9Qb2ludGVyQ29tcGFyaXNvbl9oCi0jZGVmaW5lIFdURl9Qb2ludGVyQ29tcGFyaXNvbl9o
CisjcHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTM2LDUgKzM1LDMgQEAgdGVt
cGxhdGU8dHlwZW5hbWUgVD4gaW5saW5lIGJvb2wgYXJlUG9pbgogfSAvLyBuYW1lc3BhY2UgV1RG
CiAKIHVzaW5nIFdURjo6YXJlUG9pbnRpbmdUb0VxdWFsRGF0YTsKLQotI2VuZGlmIC8vIFdURl9Q
b2ludGVyQ29tcGFyaXNvbl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Qb2lzb25lZC5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUG9pc29uZWQuY3BwCShyZXZpc2lvbiAyMzcwMzMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9Qb2lzb25lZC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcg
KzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUG9pc29uZWQu
aCIKKyNpbmNsdWRlIDx3dGYvUG9pc29uZWQuaD4KIAogI2luY2x1ZGUgPHd0Zi9DcnlwdG9ncmFw
aGljYWxseVJhbmRvbU51bWJlci5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QcmludFN0cmVh
bS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUHJpbnRTdHJlYW0uY3BwCShyZXZp
c2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9QcmludFN0cmVhbS5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5j
bHVkZSAiUHJpbnRTdHJlYW0uaCIKKyNpbmNsdWRlIDx3dGYvUHJpbnRTdHJlYW0uaD4KIAogI2lu
Y2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgpJbmRleDogU291
cmNlL1dURi93dGYvUHJpbnRTdHJlYW0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Q
cmludFN0cmVhbS5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9QcmludFN0
cmVhbS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAK
ICAqLwogCi0jaWZuZGVmIFByaW50U3RyZWFtX2gKLSNkZWZpbmUgUHJpbnRTdHJlYW1faAorI3By
YWdtYSBvbmNlCiAKICNpbmNsdWRlIDxtZW1vcnk+CiAjaW5jbHVkZSA8c3RkYXJnLmg+CkBAIC0z
NDYsNiArMzQ1LDMgQEAgdXNpbmcgV1RGOjppZ25vcmluZ0NvbnRleHQ7CiB1c2luZyBXVEY6Omlu
Q29udGV4dDsKIHVzaW5nIFdURjo6cG9pbnRlckR1bXA7CiB1c2luZyBXVEY6OnBvaW50ZXJEdW1w
SW5Db250ZXh0OwotCi0jZW5kaWYgLy8gUHJpbnRTdHJlYW1faAotCkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi9Qcm9jZXNzSUQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Qcm9jZXNzSUQu
aAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvUHJvY2Vzc0lELmgJKHdvcmtp
bmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5k
ZWYgUHJvY2Vzc0lEX2gKLSNkZWZpbmUgUHJvY2Vzc0lEX2gKKyNwcmFnbWEgb25jZQogCiAjaWYg
T1MoVU5JWCkKICNpbmNsdWRlIDx1bmlzdGQuaD4KQEAgLTU1LDYgKzU0LDMgQEAgaW5saW5lIFBy
b2Nlc3NJRCBnZXRDdXJyZW50UHJvY2Vzc0lEKCkKIAogdXNpbmcgV1RGOjpnZXRDdXJyZW50UHJv
Y2Vzc0lEOwogdXNpbmcgV1RGOjpQcm9jZXNzSUQ7Ci0KLSNlbmRpZiAvLyBQcm9jZXNzSURfaAot
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Qcm9jZXNzUHJpdmlsZWdlLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9Qcm9jZXNzUHJpdmlsZWdlLmNwcAkocmV2aXNpb24gMjM3MDMzKQor
KysgU291cmNlL1dURi93dGYvUHJvY2Vzc1ByaXZpbGVnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUHJv
Y2Vzc1ByaXZpbGVnZS5oIgorI2luY2x1ZGUgPHd0Zi9Qcm9jZXNzUHJpdmlsZWdlLmg+CiAKICNp
bmNsdWRlIDx3dGYvT3B0aW9uU2V0Lmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JBTVNpemUu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JBTVNpemUuY3BwCShyZXZpc2lvbiAy
MzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9SQU1TaXplLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjQsMTAgKzI0LDEwIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlJB
TVNpemUuaCIKKyNpbmNsdWRlIDx3dGYvUkFNU2l6ZS5oPgogCi0jaW5jbHVkZSAiU3RkTGliRXh0
cmFzLmgiCiAjaW5jbHVkZSA8bXV0ZXg+CisjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgog
CiAjaWYgT1MoV0lORE9XUykKICNpbmNsdWRlIDx3aW5kb3dzLmg+CkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi9SQU1TaXplLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUkFNU2l6ZS5oCShy
ZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9SQU1TaXplLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIFJBTVNpemVfaAotI2RlZmluZSBSQU1TaXplX2gKKyNwcmFnbWEgb25j
ZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMzMsNSArMzIsMyBAQCBXVEZfRVhQT1JUX1BSSVZB
VEUgc2l6ZV90IHJhbVNpemUoKTsKIH0KIAogdXNpbmcgV1RGOjpyYW1TaXplOwotCi0jZW5kaWYg
Ly8gUkFNU2l6ZV9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SYW5kb21EZXZpY2UuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JhbmRvbURldmljZS5jcHAJKHJldmlzaW9uIDIzNzAz
MykKKysrIFNvdXJjZS9XVEYvd3RmL1JhbmRvbURldmljZS5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI1LDcgKzI1LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUmFu
ZG9tRGV2aWNlLmgiCisjaW5jbHVkZSA8d3RmL1JhbmRvbURldmljZS5oPgogCiAjaW5jbHVkZSA8
c3RkaW50Lmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+CkBAIC00Miw3ICs0Miw3IEBACiAjZW5kaWYK
IAogI2lmIE9TKERBUldJTikKLSNpbmNsdWRlICJDb21tb25DcnlwdG9TUEkuaCIKKyNpbmNsdWRl
IDx3dGYvc3BpL2Rhcndpbi9Db21tb25DcnlwdG9TUEkuaD4KICNlbmRpZgogCiAjaWYgT1MoRlVD
SFNJQSkKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvUmFuZG9tTnVtYmVyLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysg
U291cmNlL1dURi93dGYvUmFuZG9tTnVtYmVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsMTUg
KzI2LDE0IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlJhbmRvbU51
bWJlci5oIgotCi0jaW5jbHVkZSAiQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXIuaCIKLSNp
bmNsdWRlICJSYW5kb21OdW1iZXJTZWVkLmgiCisjaW5jbHVkZSA8d3RmL1JhbmRvbU51bWJlci5o
PgogCiAjaW5jbHVkZSA8bGltaXRzPgogI2luY2x1ZGUgPGxpbWl0cy5oPgogI2luY2x1ZGUgPHN0
ZGludC5oPgogI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHd0Zi9DcnlwdG9ncmFwaGlj
YWxseVJhbmRvbU51bWJlci5oPgorI2luY2x1ZGUgPHd0Zi9SYW5kb21OdW1iZXJTZWVkLmg+CiAK
IG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SYW5kb21OdW1iZXIuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SYW5kb21OdW1iZXIuaAkocmV2aXNpb24gMjM3
MDMzKQorKysgU291cmNlL1dURi93dGYvUmFuZG9tTnVtYmVyLmgJKHdvcmtpbmcgY29weSkKQEAg
LTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgV1RGX1JhbmRv
bU51bWJlcl9oCi0jZGVmaW5lIFdURl9SYW5kb21OdW1iZXJfaAorI3ByYWdtYSBvbmNlCiAKIG5h
bWVzcGFjZSBXVEYgewogCkBAIC0zNSw1ICszNCwzIEBAIFdURl9FWFBPUlRfUFJJVkFURSBkb3Vi
bGUgcmFuZG9tTnVtYmVyKCkKIH0KIAogdXNpbmcgV1RGOjpyYW5kb21OdW1iZXI7Ci0KLSNlbmRp
ZgpJbmRleDogU291cmNlL1dURi93dGYvUmFuZG9tTnVtYmVyU2VlZC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlclNlZWQuaAkocmV2aXNpb24gMjM3MDMzKQorKysg
U291cmNlL1dURi93dGYvUmFuZG9tTnVtYmVyU2VlZC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4
ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9SYW5kb21OdW1i
ZXJTZWVkX2gKLSNkZWZpbmUgV1RGX1JhbmRvbU51bWJlclNlZWRfaAorI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNsdWRlIDx0aW1lLmg+CkBAIC01Niw1ICs1NSwzIEBA
IGlubGluZSB2b2lkIGluaXRpYWxpemVSYW5kb21OdW1iZXJHZW5lcmEKIH0KIAogfQotCi0jZW5k
aWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JhbmdlU2V0LmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvUmFuZ2VTZXQuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYv
UmFuZ2VTZXQuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfUmFuZ2VTZXRfaAotI2RlZmluZSBXVEZfUmFuZ2VTZXRf
aAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTGlzdER1bXAuaD4KICNpbmNsdWRlIDx3
dGYvTWF0aEV4dHJhcy5oPgpAQCAtMjEyLDYgKzIxMSwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVz
cGFjZSBXVEYKIAogdXNpbmcgV1RGOjpSYW5nZVNldDsKLQotI2VuZGlmIC8vIFdURl9SYW5nZVNl
dF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1Jhd1BvaW50ZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9SYXdQb2ludGVyLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9X
VEYvd3RmL1Jhd1BvaW50ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBSYXdQb2ludGVyX2gKLSNkZWZpbmUgUmF3UG9p
bnRlcl9oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTU0LDUgKzUzLDMg
QEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlJhd1BvaW50ZXI7
Ci0KLSNlbmRpZiAvLyBSYXdQb2ludGVyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JlYWRXcml0
ZUxvY2suY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlYWRXcml0ZUxvY2suY3Bw
CShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9SZWFkV3JpdGVMb2NrLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcu
aCIKLSNpbmNsdWRlICJSZWFkV3JpdGVMb2NrLmgiCisjaW5jbHVkZSA8d3RmL1JlYWRXcml0ZUxv
Y2suaD4KIAogI2luY2x1ZGUgPHd0Zi9Mb2NrZXIuaD4KIApJbmRleDogU291cmNlL1dURi93dGYv
UmVkQmxhY2tUcmVlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUmVkQmxhY2tUcmVl
LmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1JlZEJsYWNrVHJlZS5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5k
ZWYgUmVkQmxhY2tUcmVlX2gKLSNkZWZpbmUgUmVkQmxhY2tUcmVlX2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUu
aD4KQEAgLTU2OSw2ICs1NjgsMyBAQCBwcml2YXRlOgogfTsKIAogfQotCi0jZW5kaWYKLQpJbmRl
eDogU291cmNlL1dURi93dGYvUmVmLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUmVm
LmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1JlZi5oCSh3b3JraW5nIGNv
cHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiAgKi8KIAotI2lmbmRlZiBXVEZfUmVmX2gKLSNkZWZpbmUgV1RGX1JlZl9oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL0R1bWJQdHJU
cmFpdHMuaD4KQEAgLTI4MCw1ICsyNzksMyBAQCB1c2luZyBXVEY6OlJlZjsKIHVzaW5nIFdURjo6
YWRvcHRSZWY7CiB1c2luZyBXVEY6Om1ha2VSZWY7CiB1c2luZyBXVEY6OnN0YXRpY19yZWZlcmVu
Y2VfY2FzdDsKLQotI2VuZGlmIC8vIFdURl9SZWZfaApJbmRleDogU291cmNlL1dURi93dGYvUmVm
Q291bnRlZEFycmF5LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUmVmQ291bnRlZEFy
cmF5LmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRBcnJh
eS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAq
LwogCi0jaWZuZGVmIFJlZkNvdW50ZWRBcnJheV9oCi0jZGVmaW5lIFJlZkNvdW50ZWRBcnJheV9o
CisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9EdW1iUHRyVHJhaXRzLmg+CiAjaW5jbHVk
ZSA8d3RmL0Zhc3RNYWxsb2MuaD4KQEAgLTI0OCw2ICsyNDcsMyBAQCB1c2luZyBQb2lzb25lZFJl
ZkNvdW50ZWRBcnJheSA9IFJlZkNvdW50CiAKIHVzaW5nIFdURjo6UG9pc29uZWRSZWZDb3VudGVk
QXJyYXk7CiB1c2luZyBXVEY6OlJlZkNvdW50ZWRBcnJheTsKLQotI2VuZGlmIC8vIFJlZkNvdW50
ZWRBcnJheV9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRMZWFrQ291bnRlci5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUmVmQ291bnRlZExlYWtDb3VudGVyLmNw
cAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvUmVmQ291bnRlZExlYWtDb3Vu
dGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTksNyArMTksNyBAQAogICovCiAKICNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJSZWZDb3VudGVkTGVha0NvdW50ZXIuaCIKKyNpbmNsdWRl
IDx3dGYvUmVmQ291bnRlZExlYWtDb3VudGVyLmg+CiAKICNpbmNsdWRlIDx3dGYvSGFzaENvdW50
ZWRTZXQuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvUmVmQ291bnRlZExlYWtDb3VudGVyLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUmVmQ291bnRlZExlYWtDb3VudGVyLmgJKHJl
dmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRMZWFrQ291bnRlci5o
CSh3b3JraW5nIGNvcHkpCkBAIC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAgCi0jaWZuZGVmIFJl
ZkNvdW50ZWRMZWFrQ291bnRlcl9oCi0jZGVmaW5lIFJlZkNvdW50ZWRMZWFrQ291bnRlcl9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGF0b21pYz4KICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9u
cy5oPgpAQCAtNDQsNSArNDMsMyBAQCBwcml2YXRlOgogfTsKIAogfSAgLy8gbmFtZXNwYWNlIFdU
RgotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZXIuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SZWZDb3VudGVyLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNv
dXJjZS9XVEYvd3RmL1JlZkNvdW50ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBA
QAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgUmVm
Q291bnRlcl9oCi0jZGVmaW5lIFJlZkNvdW50ZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRl
IDx3dGYvRnVuY3Rpb24uaD4KICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KQEAgLTE0Niw1
ICsxNDUsMyBAQCBpbmxpbmUgUmVmQ291bnRlcjxUPjo6flJlZkNvdW50ZXIoKQogCiB1c2luZyBX
VEY6OlJlZkNvdW50ZXI7CiB1c2luZyBXVEY6OlJlZkNvdW50ZXJFdmVudDsKLQotI2VuZGlmIC8v
IFJlZkNvdW50ZXJfaApJbmRleDogU291cmNlL1dURi93dGYvUmVmUHRyLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvUmVmUHRyLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9X
VEYvd3RmL1JlZlB0ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw4ICsyMCw3IEBACiAKIC8vIFJl
ZlB0ciBpcyBkb2N1bWVudGVkIGF0IGh0dHA6Ly93ZWJraXQub3JnL2NvZGluZy9SZWZQdHIuaHRt
bAogCi0jaWZuZGVmIFdURl9SZWZQdHJfaAotI2RlZmluZSBXVEZfUmVmUHRyX2gKKyNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPHV0aWxpdHk+CkBAIC0yODQs
NSArMjgzLDMgQEAgdXNpbmcgV1RGOjpSZWZQdHI7CiB1c2luZyBXVEY6OmFkb3B0UmVmOwogdXNp
bmcgV1RGOjptYWtlUmVmUHRyOwogdXNpbmcgV1RGOjpzdGF0aWNfcG9pbnRlcl9jYXN0OwotCi0j
ZW5kaWYgLy8gV1RGX1JlZlB0cl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SZXRhaW5QdHIuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SZXRhaW5QdHIuaAkocmV2aXNpb24gMjM3MDMz
KQorKysgU291cmNlL1dURi93dGYvUmV0YWluUHRyLmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDgg
KzE4LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBSZXRhaW5QdHJfaAotI2RlZmluZSBSZXRhaW5Q
dHJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvUGxhdGZvcm0uaD4KIApAQCAtMzgy
LDUgKzM4MSwzIEBAIHVzaW5nIFdURjo6ZHluYW1pY19vYmpjX2Nhc3Q7CiAjZW5kaWYKIAogI2Vu
ZGlmIC8vIFVTRShDRikgfHwgZGVmaW5lZChfX09CSkNfXykKLQotI2VuZGlmIC8vIFdURl9SZXRh
aW5QdHJfaApJbmRleDogU291cmNlL1dURi93dGYvUnVuTG9vcC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvUnVuTG9vcC5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9X
VEYvd3RmL1J1bkxvb3AuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8K
IAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlJ1bkxvb3AuaCIKKyNpbmNsdWRlIDx3
dGYvUnVuTG9vcC5oPgogCiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAjaW5jbHVk
ZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgpJbmRleDogU291cmNlL1dURi93dGYvUnVuTG9vcC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1J1bkxvb3AuaAkocmV2aXNpb24gMjM3MDMzKQor
KysgU291cmNlL1dURi93dGYvUnVuTG9vcC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw3
IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBS
dW5Mb29wX2gKLSNkZWZpbmUgUnVuTG9vcF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0
Zi9Db25kaXRpb24uaD4KICNpbmNsdWRlIDx3dGYvRGVxdWUuaD4KQEAgLTIxMiw1ICsyMTEsMyBA
QCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6UnVuTG9vcDsKLQot
I2VuZGlmIC8vIFJ1bkxvb3BfaApJbmRleDogU291cmNlL1dURi93dGYvUnVuTG9vcFRpbWVyLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUnVuTG9vcFRpbWVyLmgJKHJldmlzaW9uIDIz
NzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lci5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw4ICsyNiw3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgUnVuTG9vcFRpbWVy
X2gKLSNkZWZpbmUgUnVuTG9vcFRpbWVyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3Rm
L1NjaGVkdWxlUGFpci5oPgogI2luY2x1ZGUgPHd0Zi9TZWNvbmRzLmg+CkBAIC04MCw1ICs3OSwz
IEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpSdW5Mb29wVGlt
ZXI7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvUnVuTG9vcFRpbWVyQ0YuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lckNGLmNwcAkocmV2aXNpb24g
MjM3MDMzKQorKysgU291cmNlL1dURi93dGYvUnVuTG9vcFRpbWVyQ0YuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0zMCw5ICszMCw5IEBACiAKICNpZiBQTEFURk9STShDT0NPQSkgJiYgSEFWRShSVU5M
T09QX1RJTUVSKQogCi0jaW5jbHVkZSAiUnVuTG9vcFRpbWVyLmgiCisjaW5jbHVkZSA8d3RmL1J1
bkxvb3BUaW1lci5oPgogCi0jaW5jbHVkZSAiQXV0b2RyYWluZWRQb29sLmgiCisjaW5jbHVkZSA8
d3RmL0F1dG9kcmFpbmVkUG9vbC5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNl
L1dURi93dGYvU0hBMS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU0hBMS5jcHAJ
KHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1NIQTEuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0zMCwxMCArMzAsMTAgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5j
bHVkZSAiU0hBMS5oIgorI2luY2x1ZGUgPHd0Zi9TSEExLmg+CiAKLSNpbmNsdWRlICJBc3NlcnRp
b25zLmgiCi0jaW5jbHVkZSAidGV4dC9DU3RyaW5nLmgiCisjaW5jbHVkZSA8d3RmL0Fzc2VydGlv
bnMuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXVEYgewog
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TSEExLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvU0hBMS5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9TSEExLmgJKHdv
cmtpbmcgY29weSkKQEAgLTI4LDggKzI4LDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lm
bmRlZiBXVEZfU0hBMV9oCi0jZGVmaW5lIFdURl9TSEExX2gKKyNwcmFnbWEgb25jZQogCiAjaW5j
bHVkZSA8YXJyYXk+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgpAQCAtODgsNSArODcsMyBAQCBw
cml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6U0hBMTsKLQotI2VuZGlm
IC8vIFdURl9TSEExX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1NhdHVyYXRlZEFyaXRobWV0aWMu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TYXR1cmF0ZWRBcml0aG1ldGljLmgJKHJl
dmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1NhdHVyYXRlZEFyaXRobWV0aWMuaAko
d29ya2luZyBjb3B5KQpAQCAtMjksMTMgKzI5LDEyIEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAK
LSNpZm5kZWYgU2F0dXJhdGVkQXJpdGhtZXRpY19oCi0jZGVmaW5lIFNhdHVyYXRlZEFyaXRobWV0
aWNfaAorI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJDb21waWxlci5oIgogI2luY2x1ZGUgPGxp
bWl0cz4KICNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRl
IDx3dGYvQ29tcGlsZXIuaD4KIAogaW5saW5lIGJvb2wgc2lnbmVkQWRkT3ZlcmZsb3dzKGludDMy
X3QgYSwgaW50MzJfdCBiLCBpbnQzMl90JiByZXN1bHQpCiB7CkBAIC0xMDAsNSArOTksMyBAQCBp
bmxpbmUgaW50MzJfdCBzYXR1cmF0ZWRTdWJ0cmFjdGlvbihpbnQzCiAjZW5kaWYKICAgICByZXR1
cm4gcmVzdWx0OwogfQotCi0jZW5kaWYgLy8gU2F0dXJhdGVkQXJpdGhtZXRpY19oCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9TY2hlZHVsZVBhaXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9TY2hlZHVsZVBhaXIuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvU2No
ZWR1bGVQYWlyLmgJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDcgQEAKICAqIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiAgKi8KIAotI2lmbmRlZiBTY2hlZHVsZVBhaXJfaAotI2RlZmluZSBTY2hlZHVsZVBhaXJfaAor
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9S
ZXRhaW5QdHIuaD4KQEAgLTg5LDUgKzg4LDMgQEAgdHlwZWRlZiBIYXNoU2V0PFJlZlB0cjxTY2hl
ZHVsZVBhaXI+LCBTYwogCiB1c2luZyBXVEY6OlNjaGVkdWxlUGFpcjsKIHVzaW5nIFdURjo6U2No
ZWR1bGVQYWlySGFzaFNldDsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TY2hlZHVs
ZVBhaXJDRi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU2NoZWR1bGVQYWlyQ0Yu
Y3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9TY2hlZHVsZVBhaXJDRi5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI3LDcgKzI3LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29u
ZmlnLmgiCi0jaW5jbHVkZSAiU2NoZWR1bGVQYWlyLmgiCisjaW5jbHVkZSA8d3RmL1NjaGVkdWxl
UGFpci5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvU2NoZWR1
bGVQYWlyTWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NjaGVkdWxlUGFpck1h
Yy5tbQkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvU2NoZWR1bGVQYWlyTWFj
Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw3ICsyNyw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNv
bmZpZy5oIgotI2luY2x1ZGUgIlNjaGVkdWxlUGFpci5oIgorI2luY2x1ZGUgPHd0Zi9TY2hlZHVs
ZVBhaXIuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1Njb3Bl
ZExhbWJkYS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1Njb3BlZExhbWJkYS5oCShy
ZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9TY29wZWRMYW1iZGEuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRl
ZiBTY29wZWRMYW1iZGFfaAotI2RlZmluZSBTY29wZWRMYW1iZGFfaAorI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlIDx3dGYvRm9yYmlkSGVhcEFsbG9jYXRpb24uaD4KIApAQCAtMTk1LDYgKzE5NCwz
IEBAIFNjb3BlZExhbWJkYVJlZkZ1bmN0b3I8RnVuY3Rpb25UeXBlLCBGdW4KIHVzaW5nIFdURjo6
U2NvcGVkTGFtYmRhOwogdXNpbmcgV1RGOjpzY29wZWRMYW1iZGE7CiB1c2luZyBXVEY6OnNjb3Bl
ZExhbWJkYVJlZjsKLQotI2VuZGlmIC8vIFNjb3BlZExhbWJkYV9oCi0KSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL1NlY29uZHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NlY29uZHMu
Y3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9TZWNvbmRzLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsMTQgKzI0LDE0IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIlNlY29uZHMuaCIKKyNpbmNsdWRlIDx3dGYvU2Vjb25kcy5oPgogCi0jaW5j
bHVkZSAiQ29uZGl0aW9uLmgiCi0jaW5jbHVkZSAiTG9jay5oIgotI2luY2x1ZGUgIk1vbm90b25p
Y1RpbWUuaCIKLSNpbmNsdWRlICJQcmludFN0cmVhbS5oIgotI2luY2x1ZGUgIlRpbWVXaXRoRHlu
YW1pY0Nsb2NrVHlwZS5oIgotI2luY2x1ZGUgIldhbGxUaW1lLmgiCisjaW5jbHVkZSA8d3RmL0Nv
bmRpdGlvbi5oPgorI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CisjaW5jbHVkZSA8d3RmL01vbm90b25p
Y1RpbWUuaD4KKyNpbmNsdWRlIDx3dGYvUHJpbnRTdHJlYW0uaD4KKyNpbmNsdWRlIDx3dGYvVGlt
ZVdpdGhEeW5hbWljQ2xvY2tUeXBlLmg+CisjaW5jbHVkZSA8d3RmL1dhbGxUaW1lLmg+CiAKIG5h
bWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TZWNvbmRzLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvU2Vjb25kcy5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9TZWNvbmRzLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgV1RGX1NlY29uZHNfaAotI2RlZmluZSBXVEZf
U2Vjb25kc19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAj
aW5jbHVkZSA8d3RmL09wdGlvbmFsLmg+CkBAIC0zNTYsNSArMzU1LDMgQEAgaW5saW5lIGJvb2wg
aXNmaW5pdGUoV1RGOjpTZWNvbmRzIHNlY29uZAogCiB1c2luZyBuYW1lc3BhY2UgV1RGOjpzZWNv
bmRzX2xpdGVyYWxzOwogdXNpbmcgV1RGOjpTZWNvbmRzOwotCi0jZW5kaWYgLy8gV1RGX1NlY29u
ZHNfaApJbmRleDogU291cmNlL1dURi93dGYvU2VnbWVudGVkVmVjdG9yLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvU2VnbWVudGVkVmVjdG9yLmgJKHJldmlzaW9uIDIzNzAzMykKKysr
IFNvdXJjZS9XVEYvd3RmL1NlZ21lbnRlZFZlY3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4
ICsyNiw3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgU2VnbWVudGVkVmVjdG9yX2gK
LSNkZWZpbmUgU2VnbWVudGVkVmVjdG9yX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3Rm
L05vbmNvcHlhYmxlLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgpAQCAtMjczLDUgKzI3Miwz
IEBAIG5hbWVzcGFjZSBXVEYgewogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6U2Vn
bWVudGVkVmVjdG9yOwotCi0jZW5kaWYgLy8gU2VnbWVudGVkVmVjdG9yX2gKSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL1NlbnRpbmVsTGlua2VkTGlzdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL1NlbnRpbmVsTGlua2VkTGlzdC5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RG
L3d0Zi9TZW50aW5lbExpbmtlZExpc3QuaAkod29ya2luZyBjb3B5KQpAQCAtMzQsOCArMzQsNyBA
QAogLy8gICAgICAgIHZvaWQgc2V0TmV4dChOb2RlKik7CiAvLyAgICAgICAgTm9kZSogbmV4dCgp
OwogCi0jaWZuZGVmIFNlbnRpbmVsTGlua2VkTGlzdF9oCi0jZGVmaW5lIFNlbnRpbmVsTGlua2Vk
TGlzdF9oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTI3Niw2ICsyNzUs
MyBAQCBpbmxpbmUgdm9pZCBTZW50aW5lbExpbmtlZExpc3Q8VCwgUmF3Tm9kCiAKIHVzaW5nIFdU
Rjo6QmFzaWNSYXdTZW50aW5lbE5vZGU7CiB1c2luZyBXVEY6OlNlbnRpbmVsTGlua2VkTGlzdDsK
LQotI2VuZGlmCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1NoYXJlZFRhc2suaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TaGFyZWRUYXNrLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNv
dXJjZS9XVEYvd3RmL1NoYXJlZFRhc2suaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBA
QAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBTaGFyZWRUYXNrX2gKLSNkZWZpbmUg
U2hhcmVkVGFza19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9SZWYuaD4KICNpbmNs
dWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50ZWQuaD4KQEAgLTEyOCw2ICsxMjcsMyBAQCBSZWY8
U2hhcmVkVGFzazxGdW5jdGlvblR5cGU+PiBjcmVhdGVTaGFyCiB1c2luZyBXVEY6OmNyZWF0ZVNo
YXJlZFRhc2s7CiB1c2luZyBXVEY6OlNoYXJlZFRhc2s7CiB1c2luZyBXVEY6OlNoYXJlZFRhc2tG
dW5jdG9yOwotCi0jZW5kaWYgLy8gU2hhcmVkVGFza19oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L1NpbXBsZVN0YXRzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU2ltcGxlU3RhdHMu
aAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvU2ltcGxlU3RhdHMuaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBTaW1wbGVTdGF0c19oCi0jZGVmaW5lIFNpbXBsZVN0YXRzX2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvU3RkTGliRXh0cmFz
Lmg+CkBAIC0xMTIsNiArMTExLDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1
c2luZyBXVEY6OlNpbXBsZVN0YXRzOwotCi0jZW5kaWYgLy8gU2ltcGxlU3RhdHNfaAotCkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi9TaW5nbGVSb290R3JhcGguaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9TaW5nbGVSb290R3JhcGguaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dU
Ri93dGYvU2luZ2xlUm9vdEdyYXBoLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAK
ICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgV1RGX1NpbmdsZVJvb3RHcmFwaF9oCi0j
ZGVmaW5lIFdURl9TaW5nbGVSb290R3JhcGhfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3
dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0Zi9HcmFwaE5vZGVXb3JrbGlzdC5oPgpAQCAt
MzA1LDUgKzMwNCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RG
OjpTaW5nbGVSb290R3JhcGg7Ci0KLSNlbmRpZiAvLyBXVEZfU2luZ2xlUm9vdEdyYXBoX2gKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL1NpbmdseUxpbmtlZExpc3QuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9TaW5nbHlMaW5rZWRMaXN0LmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJj
ZS9XVEYvd3RmL1NpbmdseUxpbmtlZExpc3QuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMs
NyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYg
U2luZ2x5TGlua2VkTGlzdF9oCi0jZGVmaW5lIFNpbmdseUxpbmtlZExpc3RfaAorI3ByYWdtYSBv
bmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC02OCw1ICs2NywzIEBAIHRlbXBsYXRlIDx0eXBl
bmFtZSBOb2RlPiBpbmxpbmUgTm9kZSogU2kKIH0KIAogdXNpbmcgV1RGOjpTaW5nbHlMaW5rZWRM
aXN0OwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1NpeENoYXJhY3Rlckhhc2guY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NpeENoYXJhY3Rlckhhc2guY3BwCShyZXZp
c2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9TaXhDaGFyYWN0ZXJIYXNoLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJTaXhDaGFyYWN0ZXJIYXNoLmgiCisjaW5jbHVkZSA8d3RmL1NpeENoYXJhY3Rl
ckhhc2guaD4KIAogI2luY2x1ZGUgPHd0Zi9BU0NJSUNUeXBlLmg+CiAKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL1NpeENoYXJhY3Rlckhhc2guaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9T
aXhDaGFyYWN0ZXJIYXNoLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1Np
eENoYXJhY3Rlckhhc2guaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBTaXhDaGFyYWN0ZXJIYXNoX2gKLSNkZWZpbmUgU2l4
Q2hhcmFjdGVySGFzaF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGFycmF5PgogCkBAIC00
Myw2ICs0MiwzIEBAIFdURl9FWFBPUlRfUFJJVkFURSBzdGQ6OmFycmF5PGNoYXIsIDc+IGkKIAog
dXNpbmcgV1RGOjpzaXhDaGFyYWN0ZXJIYXNoU3RyaW5nVG9JbnRlZ2VyOwogdXNpbmcgV1RGOjpp
bnRlZ2VyVG9TaXhDaGFyYWN0ZXJIYXNoU3RyaW5nOwotCi0jZW5kaWYgLy8gU2l4Q2hhcmFjdGVy
SGFzaF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1NtYWxsUHRyU2V0LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvU21hbGxQdHJTZXQuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291
cmNlL1dURi93dGYvU21hbGxQdHJTZXQuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBA
QAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBTbWFsbFB0clNldF9oCi0jZGVmaW5l
IFNtYWxsUHRyU2V0X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMu
aD4KICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgpAQCAtMjQ5LDUgKzI0OCwzIEBAIHByaXZh
dGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpTbWFsbFB0clNldDsKLQotI2Vu
ZGlmIC8vIFNtYWxsUHRyU2V0X2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1NwZWN0cnVtLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU3BlY3RydW0uaAkocmV2aXNpb24gMjM3MDMzKQor
KysgU291cmNlL1dURi93dGYvU3BlY3RydW0uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMs
NyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBTcGVjdHJ1bV9oCi0jZGVmaW5l
IFNwZWN0cnVtX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNp
bmNsdWRlIDx3dGYvVmVjdG9yLmg+CkBAIC0xMjIsNSArMTIxLDMgQEAgcHJpdmF0ZToKIH0gLy8g
bmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlNwZWN0cnVtOwotCi0jZW5kaWYgLy8gU3BlY3Ry
dW1faApJbmRleDogU291cmNlL1dURi93dGYvU3RhY2tCb3VuZHMuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL1N0YWNrQm91bmRzLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291
cmNlL1dURi93dGYvU3RhY2tCb3VuZHMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xOSw5ICsxOSw5
IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlN0YWNrQm91bmRzLmgi
CiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8d3RmL05vVGFpbENhbGxzLmg+CisjaW5jbHVk
ZSA8d3RmL1N0YWNrQm91bmRzLmg+CiAKICNpZiBPUyhEQVJXSU4pCiAKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL1N0YWNrQm91bmRzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU3RhY2tC
b3VuZHMuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvU3RhY2tCb3VuZHMu
aAkod29ya2luZyBjb3B5KQpAQCAtMjQsOCArMjQsNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFN0
YWNrQm91bmRzX2gKLSNkZWZpbmUgU3RhY2tCb3VuZHNfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDxhbGdvcml0aG0+CiAjaW5jbHVkZSA8d3RmL1RocmVhZGluZ1ByaW1pdGl2ZXMuaD4KQEAg
LTE2Myw1ICsxNjIsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdU
Rjo6U3RhY2tCb3VuZHM7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvU3RhY2tTdGF0
cy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU3RhY2tTdGF0cy5jcHAJKHJldmlz
aW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1N0YWNrU3RhdHMuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNCwxMiArMjQsMTIgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5j
bHVkZSAiU3RhY2tTdGF0cy5oIgorI2luY2x1ZGUgPHd0Zi9TdGFja1N0YXRzLmg+CiAKICNpZiBF
TkFCTEUoU1RBQ0tfU1RBVFMpIAogCi0jaW5jbHVkZSAiQXNzZXJ0aW9ucy5oIgotI2luY2x1ZGUg
IkRhdGFMb2cuaCIKKyNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgorI2luY2x1ZGUgPHd0Zi9E
YXRhTG9nLmg+CiAKIC8vIERlZmluZSB0aGUgZm9sbG93aW5nIGZsYWcgaWYgeW91IHdhbnQgdG8g
Y29sbGVjdCBzdGF0cyBvbiBldmVyeSBzaW5nbGUKIC8vIGNoZWNrcG9pbnQuIEJ5IGRlZmF1bHQs
IHdlIG9ubHkgbG9nIGNoZWNrcG9pbnRzIHRoYXQgZXN0YWJsaXNoIG5ldwpJbmRleDogU291cmNl
L1dURi93dGYvU3RhY2tTdGF0cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1N0YWNr
U3RhdHMuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvU3RhY2tTdGF0cy5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMywxMSArMjMsMTAgQEAKICAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICov
CiAKLSNpZm5kZWYgU3RhY2tTdGF0c19oCi0jZGVmaW5lIFN0YWNrU3RhdHNfaAorI3ByYWdtYSBv
bmNlCiAKLSNpbmNsdWRlICJFeHBvcnRNYWNyb3MuaCIKICNpbmNsdWRlIDxtdXRleD4KKyNpbmNs
dWRlIDx3dGYvRXhwb3J0TWFjcm9zLmg+CiAKIAogLy8gRGVmaW5lIHRoaXMgZmxhZyB0byBlbmFi
bGUgU3RhY2sgc3RhdHMgY29sbGVjdGlvbi4gVGhpcyBmZWF0dXJlIGlzIHVzZWZ1bApAQCAtMTQz
LDUgKzE0MiwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpT
dGFja1N0YXRzOwotCi0jZW5kaWYgLy8gU3RhY2tTdGF0c19oCkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9TdGFja1RyYWNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TdGFja1RyYWNl
LmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvU3RhY2tUcmFjZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiU3RhY2tUcmFjZS5oIgorI2luY2x1ZGUgPHd0Zi9TdGFja1RyYWNlLmg+
CiAKICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVh
bS5oPgpJbmRleDogU291cmNlL1dURi93dGYvU3RkTGliRXh0cmFzLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvU3RkTGliRXh0cmFzLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJj
ZS9XVEYvd3RmL1N0ZExpYkV4dHJhcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw4ICsyNCw3IEBA
CiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9TdGRMaWJFeHRyYXNfaAotI2Rl
ZmluZSBXVEZfU3RkTGliRXh0cmFzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8Y3N0cmlu
Zz4KICNpbmNsdWRlIDxtZW1vcnk+CkBAIC01OTAsNSArNTg5LDMgQEAgdXNpbmcgV1RGOjptZXJn
ZURlZHVwbGljYXRlZFNvcnRlZDsKIHVzaW5nIFdURjo6cm91bmRVcFRvTXVsdGlwbGVPZjsKIHVz
aW5nIFdURjo6c2FmZUNhc3Q7CiB1c2luZyBXVEY6OnRyeUJpbmFyeVNlYXJjaDsKLQotI2VuZGlm
IC8vIFdURl9TdGRMaWJFeHRyYXNfaApJbmRleDogU291cmNlL1dURi93dGYvU3RyZWFtQnVmZmVy
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU3RyZWFtQnVmZmVyLmgJKHJldmlzaW9u
IDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1N0cmVhbUJ1ZmZlci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yOCw4ICsyOCw3IEBACiAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAqLwogCi0jaWZuZGVmIFdURl9TdHJl
YW1CdWZmZXJfaAotI2RlZmluZSBXVEZfU3RyZWFtQnVmZmVyX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8d3RmL0RlcXVlLmg+CiAKQEAgLTExMiw1ICsxMTEsMyBAQCBwcml2YXRlOgogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6U3RyZWFtQnVmZmVyOwotCi0jZW5kaWYgLy8g
V1RGX1N0cmVhbUJ1ZmZlcl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TdHJpbmdIYXNoRHVtcENv
bnRleHQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TdHJpbmdIYXNoRHVtcENvbnRl
eHQuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvU3RyaW5nSGFzaER1bXBD
b250ZXh0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
IAogICovCiAKLSNpZm5kZWYgU3RyaW5nSGFzaER1bXBDb250ZXh0X2gKLSNkZWZpbmUgU3RyaW5n
SGFzaER1bXBDb250ZXh0X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAu
aD4KICNpbmNsdWRlIDx3dGYvU2l4Q2hhcmFjdGVySGFzaC5oPgpAQCAtMTE3LDYgKzExNiwzIEBA
IHB1YmxpYzoKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlN0cmluZ0hhc2hEdW1w
Q29udGV4dDsKLQotI2VuZGlmIC8vIFN0cmluZ0hhc2hEdW1wQ29udGV4dF9oCi0KSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL1N0cmluZ1ByaW50U3RyZWFtLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9TdHJpbmdQcmludFN0cmVhbS5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJj
ZS9XVEYvd3RmL1N0cmluZ1ByaW50U3RyZWFtLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyAr
MjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJTdHJpbmdQcmlu
dFN0cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi9TdHJpbmdQcmludFN0cmVhbS5oPgogCiAjaW5jbHVk
ZSA8c3RkYXJnLmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1N0
cmluZ1ByaW50U3RyZWFtLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU3RyaW5nUHJp
bnRTdHJlYW0uaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvU3RyaW5nUHJp
bnRTdHJlYW0uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCiAgKi8KIAotI2lmbmRlZiBTdHJpbmdQcmludFN0cmVhbV9oCi0jZGVmaW5lIFN0cmluZ1By
aW50U3RyZWFtX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+
CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgpAQCAtNzgsNiArNzcsMyBAQCBTdHJpbmcg
dG9TdHJpbmcoY29uc3QgVHlwZXMmLi4uIHZhbHVlcykKIHVzaW5nIFdURjo6U3RyaW5nUHJpbnRT
dHJlYW07CiB1c2luZyBXVEY6OnRvQ1N0cmluZzsKIHVzaW5nIFdURjo6dG9TdHJpbmc7Ci0KLSNl
bmRpZiAvLyBTdHJpbmdQcmludFN0cmVhbV9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVh
ZEdyb3VwLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRHcm91cC5jcHAJ
KHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1RocmVhZEdyb3VwLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJUaHJlYWRHcm91cC5oIgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRHcm91cC5oPgog
CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L1RocmVhZE1lc3NhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1RocmVhZE1l
c3NhZ2UuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRNZXNz
YWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJUaHJlYWRNZXNzYWdlLmgiCisjaW5jbHVkZSA8d3RmL1Ro
cmVhZE1lc3NhZ2UuaD4KIAogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAjaW5jbHVkZSA8d3RmL0xv
Y2tlci5oPgpJbmRleDogU291cmNlL1dURi93dGYvVGhyZWFkU3BlY2lmaWMuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRTcGVjaWZpYy5oCShyZXZpc2lvbiAyMzcwMzMpCisr
KyBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRTcGVjaWZpYy5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOSw4
ICszOSw3IEBACiAgKiBXZWJLaXQgdGhlIHJlcGVhdGVkIGNhbGwgYmFoYXZpb3IgaXMgdXRpbGl6
ZWQuCiAgKi8KIAotI2lmbmRlZiBXVEZfVGhyZWFkU3BlY2lmaWNfaAotI2RlZmluZSBXVEZfVGhy
ZWFkU3BlY2lmaWNfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5o
PgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgpAQCAtMzExLDUgKzMxMCwzIEBAIGlubGlu
ZSBUJiBUaHJlYWRTcGVjaWZpYzxULCBjYW5CZUdDVGhyZWEKIH0gLy8gbmFtZXNwYWNlIFdURgog
CiB1c2luZyBXVEY6OlRocmVhZFNwZWNpZmljOwotCi0jZW5kaWYgLy8gV1RGX1RocmVhZFNwZWNp
ZmljX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZFNwZWNpZmljV2luLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRTcGVjaWZpY1dpbi5jcHAJKHJldmlzaW9uIDIz
NzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1RocmVhZFNwZWNpZmljV2luLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjAsNyArMjAsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJUaHJlYWRTcGVjaWZpYy5oIgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRTcGVjaWZpYy5oPgog
CiAjaWYgT1MoV0lORE9XUykKIApJbmRleDogU291cmNlL1dURi93dGYvVGhyZWFkaW5nLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuY3BwCShyZXZpc2lvbiAyMzcw
MzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
NCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlRocmVh
ZGluZy5oIgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KIAogI2luY2x1ZGUgPGFsZ29yaXRo
bT4KICNpbmNsdWRlIDxjbWF0aD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5oCShyZXZpc2lvbiAyMzcwMzMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuaAkod29ya2luZyBjb3B5KQpAQCAtMjgsOCAr
MjgsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFRocmVhZGluZ19oCi0jZGVmaW5l
IFRocmVhZGluZ19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUg
PHN0ZGludC5oPgpAQCAtMzQwLDUgKzMzOSwzIEBAIHVzaW5nIFdURjo6VGhyZWFkSWRlbnRpZmll
cjsKIHVzaW5nIFdURjo6Y3JlYXRlVGhyZWFkOwogdXNpbmcgV1RGOjp3YWl0Rm9yVGhyZWFkQ29t
cGxldGlvbjsKICNlbmRpZgotCi0jZW5kaWYgLy8gVGhyZWFkaW5nX2gKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL1RocmVhZGluZ1ByaW1pdGl2ZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9UaHJlYWRpbmdQcmltaXRpdmVzLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYv
d3RmL1RocmVhZGluZ1ByaW1pdGl2ZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjgsOCArMjgsNyBA
QAogICoKICAqLwogCi0jaWZuZGVmIFRocmVhZGluZ1ByaW1pdGl2ZXNfaAotI2RlZmluZSBUaHJl
YWRpbmdQcmltaXRpdmVzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxs
b2MuaD4KICNpbmNsdWRlIDx3dGYvTG9ja2VyLmg+CkBAIC0xMTAsNSArMTA5LDMgQEAgcHJpdmF0
ZToKIHVzaW5nIFdURjo6TXV0ZXg7CiB1c2luZyBXVEY6Ok11dGV4TG9ja2VyOwogdXNpbmcgV1RG
OjpUaHJlYWRDb25kaXRpb247Ci0KLSNlbmRpZiAvLyBUaHJlYWRpbmdQcmltaXRpdmVzX2gKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmdQdGhyZWFkcy5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysr
IFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MzAsNyArMzAsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUaHJl
YWRpbmcuaCIKKyNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAKICNpZiBVU0UoUFRIUkVBRFMp
CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1dpbi5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvVGhyZWFkaW5nV2luLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291
cmNlL1dURi93dGYvVGhyZWFkaW5nV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODQsNyArODQs
NyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUaHJlYWRpbmcuaCIK
KyNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAKICNpZiBPUyhXSU5ET1dTKQogCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9UaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5jcHAJKHJldmlzaW9uIDIz
NzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI0LDE0ICsyNCwxNCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcu
aCIKLSNpbmNsdWRlICJUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuaCIKKyNpbmNsdWRlIDx3dGYv
VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlLmg+CiAKLSNpbmNsdWRlICJDb25kaXRpb24uaCIKLSNp
bmNsdWRlICJMb2NrLmgiCi0jaW5jbHVkZSAiUHJpbnRTdHJlYW0uaCIKICNpbmNsdWRlIDxjZmxv
YXQ+CiAjaW5jbHVkZSA8Y21hdGg+CisjaW5jbHVkZSA8d3RmL0NvbmRpdGlvbi5oPgogI2luY2x1
ZGUgPHd0Zi9EYXRhTG9nLmg+CisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5jbHVk
ZSA8d3RmL0xvY2suaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2Uv
V1RGL3d0Zi9UaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuaAkod29ya2luZyBjb3B5KQpAQCAtMjMs
OCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfVGltZVdpdGhE
eW5hbWljQ2xvY2tUeXBlX2gKLSNkZWZpbmUgV1RGX1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZV9o
CisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9DbG9ja1R5cGUuaD4KICNpbmNsdWRlIDx3
dGYvTW9ub3RvbmljVGltZS5oPgpAQCAtMTYwLDUgKzE1OSwzIEBAIGlubGluZSBib29sIGlzZmlu
aXRlKFdURjo6VGltZVdpdGhEeW5hbWkKIHVzaW5nIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tU
eXBlOwogdXNpbmcgV1RGOjpoYXNFbGFwc2VkOwogdXNpbmcgV1RGOjpzbGVlcDsKLQotI2VuZGlm
IC8vIFdURl9UaW1lV2l0aER5bmFtaWNDbG9ja1R5cGVfaApJbmRleDogU291cmNlL1dURi93dGYv
VGltaW5nU2NvcGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1RpbWluZ1Njb3Bl
LmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvVGltaW5nU2NvcGUuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgIlRpbWluZ1Njb3BlLmgiCisjaW5jbHVkZSA8d3RmL1RpbWluZ1Njb3Bl
Lmg+CiAKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+Cklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9UaW55TFJVQ2FjaGUuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9UaW55TFJVQ2FjaGUuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93
dGYvVGlueUxSVUNhY2hlLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFRpbnlMUlVDYWNo
ZV9oCi0jZGVmaW5lIFRpbnlMUlVDYWNoZV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0
Zi9OZXZlckRlc3Ryb3llZC5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTgwLDUgKzc5
LDMgQEAgcHJpdmF0ZToKIAogdXNpbmcgV1RGOjpUaW55TFJVQ2FjaGU7CiB1c2luZyBXVEY6OlRp
bnlMUlVDYWNoZVBvbGljeTsKLQotI2VuZGlmIC8vIFRpbnlMUlVDYWNoZV9oCkluZGV4OiBTb3Vy
Y2UvV1RGL3d0Zi9UaW55UHRyU2V0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvVGlu
eVB0clNldC5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9UaW55UHRyU2V0
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICov
CiAKLSNpZm5kZWYgVGlueVB0clNldF9oCi0jZGVmaW5lIFRpbnlQdHJTZXRfaAorI3ByYWdtYSBv
bmNlCiAKICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9GYXN0TWFs
bG9jLmg+CkBAIC01MjYsNiArNTI1LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgog
CiB1c2luZyBXVEY6OlRpbnlQdHJTZXQ7Ci0KLSNlbmRpZiAvLyBUaW55UHRyU2V0X2gKLQpJbmRl
eDogU291cmNlL1dURi93dGYvVHJpU3RhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9UcmlTdGF0ZS5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9UcmlTdGF0
ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAq
LwogCi0jaWZuZGVmIFRyaVN0YXRlX2gKLSNkZWZpbmUgVHJpU3RhdGVfaAorI3ByYWdtYSBvbmNl
CiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC00Niw1ICs0NSwzIEBAIHVzaW5nIFdURjo6RmFsc2VU
cmlTdGF0ZTsKIHVzaW5nIFdURjo6VHJ1ZVRyaVN0YXRlOwogdXNpbmcgV1RGOjpNaXhlZFRyaVN0
YXRlOwogdXNpbmcgV1RGOjp0cmlTdGF0ZTsKLQotI2VuZGlmIC8vIFRyaVN0YXRlX2gKSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL1R5cGVDYXN0cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L1R5cGVDYXN0cy5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9UeXBlQ2Fz
dHMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgVHlwZUNhc3RzX2gKLSNkZWZpbmUgVHlw
ZUNhc3RzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8dHlwZV90cmFpdHM+CiAKQEAgLTEw
OCw1ICsxMDcsMyBAQCBwcml2YXRlOgogdXNpbmcgV1RGOjpUeXBlQ2FzdFRyYWl0czsKIHVzaW5n
IFdURjo6aXM7CiB1c2luZyBXVEY6OmRvd25jYXN0OwotCi0jZW5kaWYgLy8gVHlwZUNhc3RzX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL1VVSUQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL1VVSUQuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9VVUlELmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjksNyArMjksNyBAQAogICovCiAKICNpbmNsdWRlICJjb25m
aWcuaCIKLSNpbmNsdWRlICJVVUlELmgiCisjaW5jbHVkZSA8d3RmL1VVSUQuaD4KIAogI2luY2x1
ZGUgPHd0Zi9DcnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlci5oPgogI2luY2x1ZGUgPHd0Zi9I
ZXhOdW1iZXIuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1VuaVN0ZEV4dHJhcy5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvVW5pU3RkRXh0cmFzLmNwcAkocmV2aXNpb24gMjM3MDMz
KQorKysgU291cmNlL1dURi93dGYvVW5pU3RkRXh0cmFzLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJVbmlT
dGRFeHRyYXMuaCIKKyNpbmNsdWRlIDx3dGYvVW5pU3RkRXh0cmFzLmg+CiAKICNpbmNsdWRlIDxm
Y250bC5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9VbmlvbkZpbmQuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9VbmlvbkZpbmQuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNl
L1dURi93dGYvVW5pb25GaW5kLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgVW5pb25GaW5kX2gKLSNkZWZpbmUgVW5pb25G
aW5kX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIApAQCAt
MTA4LDUgKzEwNywzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RG
OjpVbmlvbkZpbmQ7Ci0KLSNlbmRpZiAvLyBVbmlvbkZpbmRfaApJbmRleDogU291cmNlL1dURi93
dGYvVk1UYWdzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvVk1UYWdzLmgJKHJldmlz
aW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1ZNVGFncy5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFZNVGFnc19o
Ci0jZGVmaW5lIFZNVGFnc19oCisjcHJhZ21hIG9uY2UKIAogLy8gT24gTWFjIE9TIFgsIHRoZSBW
TSBzdWJzeXN0ZW0gYWxsb3dzIHRhZ2dpbmcgbWVtb3J5IHJlcXVlc3RlZCBmcm9tIG1tYXAgYW5k
IHZtX21hcAogLy8gaW4gb3JkZXIgdG8gYWlkIHRvb2xzIHRoYXQgaW5zcGVjdCBzeXN0ZW0gbWVt
b3J5IHVzZS4gCkBAIC02NCw1ICs2MywzIEBACiAjZGVmaW5lIFZNX1RBR19GT1JfUkVHSVNURVJG
SUxFX01FTU9SWSAtMQogCiAjZW5kaWYgLy8gT1MoREFSV0lOKQotCi0jZW5kaWYgLy8gVk1UYWdz
X2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1ZhbHVlQ2hlY2suaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9WYWx1ZUNoZWNrLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYv
d3RmL1ZhbHVlQ2hlY2suaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBWYWx1ZUNoZWNrX2gKLSNkZWZpbmUgVmFsdWVDaGVj
a19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAKQEAgLTQ5
LDUgKzQ4LDMgQEAgdGVtcGxhdGU8dHlwZW5hbWUgUD4gc3RydWN0IFZhbHVlQ2hlY2s8UAogI2Vu
ZGlmCiAKIH0KLQotI2VuZGlmIC8vIFZhbHVlQ2hlY2tfaApJbmRleDogU291cmNlL1dURi93dGYv
VmVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvVmVjdG9yLmgJKHJldmlzaW9u
IDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1ZlY3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0x
OCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX1ZlY3Rvcl9oCi0jZGVmaW5lIFdU
Rl9WZWN0b3JfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxpbml0aWFsaXplcl9saXN0Pgog
I2luY2x1ZGUgPGxpbWl0cz4KQEAgLTE3MDgsNSArMTcwNywzIEBAIHVzaW5nIFdURjo6Y29weVRv
VmVjdG9yOwogdXNpbmcgV1RGOjpjb3B5VG9WZWN0b3JPZjsKIHVzaW5nIFdURjo6Y29weVRvVmVj
dG9yU3BlY2lhbGl6YXRpb247CiB1c2luZyBXVEY6OnJlbW92ZVJlcGVhdGVkRWxlbWVudHM7Ci0K
LSNlbmRpZiAvLyBXVEZfVmVjdG9yX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1ZlY3RvclRyYWl0
cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1ZlY3RvclRyYWl0cy5oCShyZXZpc2lv
biAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9WZWN0b3JUcmFpdHMuaAkod29ya2luZyBjb3B5
KQpAQCAtMTgsOCArMTgsNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9WZWN0b3JUcmFpdHNf
aAotI2RlZmluZSBXVEZfVmVjdG9yVHJhaXRzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8
d3RmL1JlZi5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KQEAgLTkyLDUgKzkxLDMgQEAgbmFt
ZXNwYWNlIFdURiB7CiAKIHVzaW5nIFdURjo6VmVjdG9yVHJhaXRzOwogdXNpbmcgV1RGOjpTaW1w
bGVDbGFzc1ZlY3RvclRyYWl0czsKLQotI2VuZGlmIC8vIFdURl9WZWN0b3JUcmFpdHNfaApJbmRl
eDogU291cmNlL1dURi93dGYvV2FsbFRpbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL1dhbGxUaW1lLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvV2Fs
bFRpbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMSArMjQsMTEgQEAKICAqLwogCiAjaW5j
bHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV2FsbFRpbWUuaCIKKyNpbmNsdWRlIDx3dGYvV2Fs
bFRpbWUuaD4KIAotI2luY2x1ZGUgIk1vbm90b25pY1RpbWUuaCIKLSNpbmNsdWRlICJQcmludFN0
cmVhbS5oIgotI2luY2x1ZGUgIlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oIgorI2luY2x1ZGUg
PHd0Zi9Nb25vdG9uaWNUaW1lLmg+CisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5j
bHVkZSA8d3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oPgogCiBuYW1lc3BhY2UgV1RGIHsK
IApJbmRleDogU291cmNlL1dURi93dGYvV2FsbFRpbWUuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9XYWxsVGltZS5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9X
YWxsVGltZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LiAKICAqLwogCi0jaWZuZGVmIFdURl9XYWxsVGltZV9oCi0jZGVmaW5lIFdURl9XYWxsVGltZV9o
CisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9DbG9ja1R5cGUuaD4KICNpbmNsdWRlIDx3
dGYvU2Vjb25kcy5oPgpAQCAtMTgxLDUgKzE4MCwzIEBAIGlubGluZSBib29sIGlzZmluaXRlKFdU
Rjo6V2FsbFRpbWUgdGltZSkKIH0gLy8gbmFtZXNwYWNlIHN0ZAogCiB1c2luZyBXVEY6OldhbGxU
aW1lOwotCi0jZW5kaWYgLy8gV1RGX1dhbGxUaW1lX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1dl
YWtQdHIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9XZWFrUHRyLmgJKHJldmlzaW9u
IDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1dlYWtQdHIuaAkod29ya2luZyBjb3B5KQpAQCAt
MjQsOCArMjQsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9XZWFrUHRy
X2gKLSNkZWZpbmUgV1RGX1dlYWtQdHJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYv
Tm9uY29weWFibGUuaD4KICNpbmNsdWRlIDx3dGYvUmVmLmg+CkBAIC0yMjMsNSArMjIyLDMgQEAg
dXNpbmcgV1RGOjpXZWFrUHRyOwogdXNpbmcgV1RGOjpXZWFrUHRyRmFjdG9yeTsKIHVzaW5nIFdU
Rjo6V2Vha1JlZmVyZW5jZTsKIHVzaW5nIFdURjo6bWFrZVdlYWtQdHI7Ci0KLSNlbmRpZgpJbmRl
eDogU291cmNlL1dURi93dGYvV2Vha1JhbmRvbS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL1dlYWtSYW5kb20uaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvV2Vh
a1JhbmRvbS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw3IEBACiAgKiBTZWUgYWxzbyBo
dHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Yb3JzaGlmdC4KICAqLwogCi0jaWZuZGVmIFdl
YWtSYW5kb21faAotI2RlZmluZSBXZWFrUmFuZG9tX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVk
ZSA8bGltaXRzLmg+CiAjaW5jbHVkZSA8d3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVy
Lmg+CkBAIC0xMDksNSArMTA4LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1
c2luZyBXVEY6OldlYWtSYW5kb207Ci0KLSNlbmRpZiAvLyBXZWFrUmFuZG9tX2gKSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL1dvcmRMb2NrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9X
b3JkTG9jay5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL1dvcmRMb2Nr
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsMTIgKzI0LDEyIEBACiAgKi8KIAogI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIldvcmRMb2NrLmgiCisjaW5jbHVkZSA8d3RmL1dvcmRMb2Nr
Lmg+CiAKLSNpbmNsdWRlICJUaHJlYWRpbmcuaCIKICNpbmNsdWRlIDxjb25kaXRpb25fdmFyaWFi
bGU+CiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8dGhyZWFkPgorI2luY2x1ZGUgPHd0Zi9U
aHJlYWRpbmcuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1dv
cmRMb2NrLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvV29yZExvY2suaAkocmV2aXNp
b24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvV29yZExvY2suaAkod29ya2luZyBjb3B5KQpA
QCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfV29y
ZExvY2tfaAotI2RlZmluZSBXVEZfV29yZExvY2tfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRl
IDx3dGYvQXRvbWljcy5oPgogI2luY2x1ZGUgPHd0Zi9Db21waWxlci5oPgpAQCAtMTA3LDYgKzEw
NiwzIEBAIHVzaW5nIFdvcmRMb2NrSG9sZGVyID0gTG9ja2VyPFdvcmRMb2NrPjsKIAogdXNpbmcg
V1RGOjpXb3JkTG9jazsKIHVzaW5nIFdURjo6V29yZExvY2tIb2xkZXI7Ci0KLSNlbmRpZiAvLyBX
VEZfV29yZExvY2tfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Xb3JrUXVldWUuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1dvcmtRdWV1ZS5jcHAJKHJldmlzaW9uIDIzNzAzMykK
KysrIFNvdXJjZS9XVEYvd3RmL1dvcmtRdWV1ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcg
KzI1LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya1F1ZXVl
LmgiCisjaW5jbHVkZSA8d3RmL1dvcmtRdWV1ZS5oPgogCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5j
bHVkZSA8d3RmL0NvbmRpdGlvbi5oPgpJbmRleDogU291cmNlL1dURi93dGYvV29ya1F1ZXVlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvV29ya1F1ZXVlLmgJKHJldmlzaW9uIDIzNzAz
MykKKysrIFNvdXJjZS9XVEYvd3RmL1dvcmtRdWV1ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4
ICsyNSw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lm
bmRlZiBXb3JrUXVldWVfaAotI2RlZmluZSBXb3JrUXVldWVfaAorI3ByYWdtYSBvbmNlCiAKICNp
bmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlvbkRpc3BhdGNoZXIu
aD4KQEAgLTExMiw1ICsxMTEsMyBAQCBwcml2YXRlOgogfQogCiB1c2luZyBXVEY6OldvcmtRdWV1
ZTsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Xb3JrZXJQb29sLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Xb3JrZXJQb29sLmNwcAkocmV2aXNpb24gMjM3MDMzKQor
KysgU291cmNlL1dURi93dGYvV29ya2VyUG9vbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcg
KzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya2VyUG9v
bC5oIgorI2luY2x1ZGUgPHd0Zi9Xb3JrZXJQb29sLmg+CiAKICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvZHRvYS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvZHRvYS5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9X
VEYvd3RmL2R0b2EuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMyw3ICszMyw3IEBACiAgKi8KIAog
I2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgImR0b2EuaCIKKyNpbmNsdWRlIDx3dGYvZHRv
YS5oPgogCiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDx3dGYvTG9jay5oPgpJbmRleDog
U291cmNlL1dURi93dGYvZHRvYS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2R0b2Eu
aAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvZHRvYS5oCSh3b3JraW5nIGNv
cHkpCkBAIC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX2R0b2FfaAotI2Rl
ZmluZSBXVEZfZHRvYV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHVuaWNvZGUvdXR5cGVz
Lmg+CiAjaW5jbHVkZSA8d3RmL0FTQ0lJQ1R5cGUuaD4KQEAgLTgyLDUgKzgxLDMgQEAgdXNpbmcg
V1RGOjpudW1iZXJUb1N0cmluZzsKIHVzaW5nIFdURjo6bnVtYmVyVG9GaXhlZFByZWNpc2lvblN0
cmluZzsKIHVzaW5nIFdURjo6bnVtYmVyVG9GaXhlZFdpZHRoU3RyaW5nOwogdXNpbmcgV1RGOjpw
YXJzZURvdWJsZTsKLQotI2VuZGlmIC8vIFdURl9kdG9hX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L21ibWFsbG9jLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9tYm1hbGxvYy5jcHAJ
KHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL21ibWFsbG9jLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNp
bmNsdWRlICJGYXN0TWFsbG9jLmgiCisjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KIAogI2Rl
ZmluZSBFWFBPUlQgX19hdHRyaWJ1dGVfXygodmlzaWJpbGl0eSgiZGVmYXVsdCIpKSkKIApJbmRl
eDogU291cmNlL1dURi93dGYvY2YvTGFuZ3VhZ2VDRi5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvY2YvTGFuZ3VhZ2VDRi5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9X
VEYvd3RmL2NmL0xhbmd1YWdlQ0YuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBA
CiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkxhbmd1YWdlLmgiCisjaW5j
bHVkZSA8d3RmL0xhbmd1YWdlLmg+CiAKICNpbmNsdWRlIDxDb3JlRm91bmRhdGlvbi9Db3JlRm91
bmRhdGlvbi5oPgogI2luY2x1ZGUgPG11dGV4PgpJbmRleDogU291cmNlL1dURi93dGYvY2YvUnVu
TG9vcENGLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9jZi9SdW5Mb29wQ0YuY3Bw
CShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9jZi9SdW5Mb29wQ0YuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIlJ1bkxvb3AuaCIKKyNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgogCiAjaW5j
bHVkZSA8Q29yZUZvdW5kYXRpb24vQ29yZUZvdW5kYXRpb24uaD4KICNpbmNsdWRlIDxkaXNwYXRj
aC9kaXNwYXRjaC5oPgpJbmRleDogU291cmNlL1dURi93dGYvY29jb2EvRW50aXRsZW1lbnRzLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2NvY29hL0VudGl0bGVtZW50cy5tbQkocmV2
aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvY29jb2EvRW50aXRsZW1lbnRzLm1tCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIkVudGl0bGVtZW50cy5oIgorI2luY2x1ZGUgPHd0Zi9jb2NvYS9FbnRpdGxl
bWVudHMuaD4KIAogI2luY2x1ZGUgPHd0Zi9PU09iamVjdFB0ci5oPgogI2luY2x1ZGUgPHd0Zi9S
ZXRhaW5QdHIuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL2NvY29hL01hY2hTZW5kUmlnaHQuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2NvY29hL01hY2hTZW5kUmlnaHQuY3BwCShy
ZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NYWNoU2VuZFJpZ2h0LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25m
aWcuaCIKLSNpbmNsdWRlICJNYWNoU2VuZFJpZ2h0LmgiCisjaW5jbHVkZSA8d3RmL01hY2hTZW5k
UmlnaHQuaD4KIAogI2luY2x1ZGUgPG1hY2gvbWFjaF9lcnJvci5oPgogI2luY2x1ZGUgPG1hY2gv
bWFjaF9pbml0Lmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NYWluVGhyZWFkQ29jb2Eu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvY29jb2EvTWFpblRocmVhZENvY29hLm1t
CShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NYWluVGhyZWFkQ29j
b2EubW0JKHdvcmtpbmcgY29weSkKQEAgLTI3LDcgKzI3LDcgQEAKICAqLwogCiAjaW1wb3J0ICJj
b25maWcuaCIKLSNpbXBvcnQgIk1haW5UaHJlYWQuaCIKKyNpbXBvcnQgPHd0Zi9NYWluVGhyZWFk
Lmg+CiAKICNpbXBvcnQgPENvcmVGb3VuZGF0aW9uL0NvcmVGb3VuZGF0aW9uLmg+CiAjaW1wb3J0
IDxGb3VuZGF0aW9uL05TVGhyZWFkLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NZW1v
cnlGb290cHJpbnRDb2NvYS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvY29jb2Ev
TWVtb3J5Rm9vdHByaW50Q29jb2EuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RG
L3d0Zi9jb2NvYS9NZW1vcnlGb290cHJpbnRDb2NvYS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0
LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTWVtb3J5
Rm9vdHByaW50LmgiCisjaW5jbHVkZSA8d3RmL01lbW9yeUZvb3RwcmludC5oPgogCiAjaW5jbHVk
ZSA8bWFjaC9tYWNoLmg+CiAjaW5jbHVkZSA8bWFjaC90YXNrX2luZm8uaD4KSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL2NvY29hL01lbW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL2NvY29hL01lbW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1tCShy
ZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NZW1vcnlQcmVzc3VyZUhh
bmRsZXJDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNp
bXBvcnQgImNvbmZpZy5oIgotI2ltcG9ydCAiTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmgiCisjaW1w
b3J0IDx3dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmg+CiAKICNpbXBvcnQgPG1hY2gvbWFjaC5o
PgogI2ltcG9ydCA8bWFjaC90YXNrX2luZm8uaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL2NvY29h
L1dvcmtRdWV1ZUNvY29hLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9X
b3JrUXVldWVDb2NvYS5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL2Nv
Y29hL1dvcmtRdWV1ZUNvY29hLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsOSArMjQsMTAgQEAK
ICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya1F1ZXVlLmgiCi0jaW5j
bHVkZSAiQmxvY2tQdHIuaCIKLSNpbmNsdWRlICJSZWYuaCIKKyNpbmNsdWRlIDx3dGYvV29ya1F1
ZXVlLmg+CisKKyNpbmNsdWRlIDx3dGYvQmxvY2tQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmLmg+
CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9mdWNoc2lhL0NQVVRp
bWVGdWNoc2lhLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9mdWNoc2lhL0NQVVRp
bWVGdWNoc2lhLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvZnVjaHNp
YS9DUFVUaW1lRnVjaHNpYS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAq
LwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ1BVVGltZS5oIgorI2luY2x1ZGUg
PHd0Zi9DUFVUaW1lLmg+CiAKICNpbmNsdWRlIDx6aXJjb24vc3lzY2FsbHMuaD4KIApJbmRleDog
U291cmNlL1dURi93dGYvZ2VuZXJpYy9NZW1vcnlGb290cHJpbnRHZW5lcmljLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL01lbW9yeUZvb3RwcmludEdlbmVyaWMuY3Bw
CShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL01lbW9yeUZvb3Rw
cmludEdlbmVyaWMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAog
I2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk1lbW9yeUZvb3RwcmludC5oIgorI2luY2x1
ZGUgPHd0Zi9NZW1vcnlGb290cHJpbnQuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL2dlbmVyaWMvTWVtb3J5UHJlc3N1cmVIYW5kbGVyR2VuZXJpYy5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvZ2VuZXJpYy9NZW1vcnlQcmVzc3VyZUhhbmRsZXJH
ZW5lcmljLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvZ2VuZXJpYy9N
ZW1vcnlQcmVzc3VyZUhhbmRsZXJHZW5lcmljLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyAr
MjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNZW1vcnlQcmVz
c3VyZUhhbmRsZXIuaCIKKyNpbmNsdWRlIDx3dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmg+CiAK
IG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL1J1bkxvb3BH
ZW5lcmljLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL1J1bkxvb3BH
ZW5lcmljLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvZ2VuZXJpYy9S
dW5Mb29wR2VuZXJpYy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUnVuTG9vcC5oIgorI2luY2x1ZGUgPHd0
Zi9SdW5Mb29wLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9n
ZW5lcmljL1dvcmtRdWV1ZUdlbmVyaWMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L2dlbmVyaWMvV29ya1F1ZXVlR2VuZXJpYy5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJj
ZS9XVEYvd3RmL2dlbmVyaWMvV29ya1F1ZXVlR2VuZXJpYy5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI4LDcgKzI4LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29y
a1F1ZXVlLmgiCisjaW5jbHVkZSA8d3RmL1dvcmtRdWV1ZS5oPgogCiAjaW5jbHVkZSA8d3RmL1dh
bGxUaW1lLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9nbGliL0dMaWJVdGlsaXRpZXMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL2dsaWIvR0xpYlV0aWxpdGllcy5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9X
VEYvd3RmL2dsaWIvR0xpYlV0aWxpdGllcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4LDcgKzE4
LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiR0xpYlV0aWxpdGll
cy5oIgorI2luY2x1ZGUgPHd0Zi9nbGliL0dMaWJVdGlsaXRpZXMuaD4KIAogI2luY2x1ZGUgPGds
aWIuaD4KICNpbmNsdWRlIDx3dGYvZ2xpYi9HVW5pcXVlUHRyLmg+CkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi9nbGliL0dSZWZQdHIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2dsaWIv
R1JlZlB0ci5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL2dsaWIvR1Jl
ZlB0ci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE3LDcgKzE3LDcgQEAKICAqLwogCiAjaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiR1JlZlB0ci5oIgorI2luY2x1ZGUgPHd0Zi9nbGliL0dS
ZWZQdHIuaD4KIAogI2lmIFVTRShHTElCKQogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9nbGliL1J1
bkxvb3BHTGliLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9nbGliL1J1bkxvb3BH
TGliLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvZ2xpYi9SdW5Mb29w
R0xpYi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwogCiAjaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUnVuTG9vcC5oIgorI2luY2x1ZGUgPHd0Zi9SdW5Mb29w
Lmg+CiAKICNpbmNsdWRlIDxnbGliLmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhyZWFkLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9pb3MvV2ViQ29yZVRocmVhZC5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysr
IFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhyZWFkLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJXZWJD
b3JlVGhyZWFkLmgiCisjaW5jbHVkZSA8d3RmL2lvcy9XZWJDb3JlVGhyZWFkLmg+CiAKICNpZiBV
U0UoV0VCX1RIUkVBRCkKIFdURl9FWFBPUlRfUFJJVkFURSBib29sICgqV2ViQ29yZVdlYlRocmVh
ZElzTG9ja2VkT3JEaXNhYmxlZCkodm9pZCk7CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9pb3MvV2Vi
Q29yZVRocmVhZC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhy
ZWFkLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhy
ZWFkLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDEwICsyMyw3IEBACiAgKiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKLS8vIFNpbmNlIHRoaXMgaXMgYSBzaGFyZWQgaGVhZGVyLCB3aXRoIHRoZSBzYW1lIGZpbGUg
bmFtZSBhcyBhIGZpbGUgaW4KLS8vIFdlYkNvcmUgd2UgcHJlZml4IHRoaXMgd2l0aCBXVEYgdG8g
bWFrZSBpdCB1bmlxdWUuCi0jaWZuZGVmIFdURl9XZWJDb3JlVGhyZWFkX2gKLSNkZWZpbmUgV1RG
X1dlYkNvcmVUaHJlYWRfaAorI3ByYWdtYSBvbmNlCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0
ZXJuICJDIiB7CkBAIC0zOSw1ICszNiwzIEBAIGV4dGVybiB2b2lkICgqV2ViQ29yZVdlYlRocmVh
ZFJ1bikodm9pZCAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCi0KLSNlbmRpZiAvLyBX
VEZfV2ViQ29yZVRocmVhZF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9saW51eC9DdXJyZW50UHJv
Y2Vzc01lbW9yeVN0YXR1cy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvbGludXgv
Q3VycmVudFByb2Nlc3NNZW1vcnlTdGF0dXMuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9saW51eC9DdXJyZW50UHJvY2Vzc01lbW9yeVN0YXR1cy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5j
bHVkZSAiQ3VycmVudFByb2Nlc3NNZW1vcnlTdGF0dXMuaCIKKyNpbmNsdWRlIDx3dGYvQ3VycmVu
dFByb2Nlc3NNZW1vcnlTdGF0dXMuaD4KIAogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8
c3RkbGliLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9saW51eC9NZW1vcnlGb290cHJpbnRMaW51
eC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvbGludXgvTWVtb3J5Rm9vdHByaW50
TGludXguY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9saW51eC9NZW1v
cnlGb290cHJpbnRMaW51eC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDEwICsyNCwxMCBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNZW1vcnlGb290cHJpbnQuaCIK
KyNpbmNsdWRlIDx3dGYvTWVtb3J5Rm9vdHByaW50Lmg+CiAKLSNpbmNsdWRlICJNb25vdG9uaWNU
aW1lLmgiCiAjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDx3dGYvTW9ub3RvbmljVGltZS5o
Ij4KICNpbmNsdWRlIDx3dGYvU3RkTGliRXh0cmFzLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3Ry
aW5nVmlldy5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9saW51eC9NZW1vcnlQcmVzc3VyZUhh
bmRsZXJMaW51eC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvbGludXgvTWVtb3J5
UHJlc3N1cmVIYW5kbGVyTGludXguY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RG
L3d0Zi9saW51eC9NZW1vcnlQcmVzc3VyZUhhbmRsZXJMaW51eC5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTI2LDcgKzI2LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAi
TWVtb3J5UHJlc3N1cmVIYW5kbGVyLmgiCisjaW5jbHVkZSA8d3RmL01lbW9yeVByZXNzdXJlSGFu
ZGxlci5oPgogCiAjaW5jbHVkZSA8bWFsbG9jLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi9tYWMvQXBwS2l0Q29tcGF0aWJpbGl0eURlY2xhcmF0aW9ucy5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL21hYy9BcHBLaXRDb21wYXRpYmlsaXR5RGVjbGFy
YXRpb25zLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL21hYy9BcHBLaXRD
b21wYXRpYmlsaXR5RGVjbGFyYXRpb25zLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcg
QEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIEFw
cEtpdENvbXBhdGliaWxpdHlEZWNsYXJhdGlvbnNfaAotI2RlZmluZSBBcHBLaXRDb21wYXRpYmls
aXR5RGVjbGFyYXRpb25zX2gKKyNwcmFnbWEgb25jZQogCiAjaW1wb3J0IDxBdmFpbGFiaWxpdHku
aD4KIApAQCAtNDUsNSArNDQsMyBAQCBzdGF0aWMgY29uc3QgTlNMZXZlbEluZGljYXRvclN0eWxl
IE5TTGV2CiBzdGF0aWMgY29uc3QgTlNMZXZlbEluZGljYXRvclN0eWxlIE5TTGV2ZWxJbmRpY2F0
b3JTdHlsZVJhdGluZyA9IE5TUmF0aW5nTGV2ZWxJbmRpY2F0b3JTdHlsZTsKIAogI2VuZGlmIC8v
IF9fTUFDX09TX1hfVkVSU0lPTl9NQVhfQUxMT1dFRCA8IDEwMTMwMAotCi0jZW5kaWYgLy8gQXBw
S2l0Q29tcGF0aWJpbGl0eURlY2xhcmF0aW9uc19oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9tYWMv
RGVwcmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvbWFjL0RlcHJlY2F0ZWRTeW1ib2xzVXNlZEJ5U2FmYXJpLm1tCShyZXZpc2lvbiAyMzcw
MzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9tYWMvRGVwcmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmku
bW0JKHdvcmtpbmcgY29weSkKQEAgLTI1LDEzICsyNSwxMyBAQAogCiAjaW5jbHVkZSAiY29uZmln
LmgiCiAKLSNpbmNsdWRlICJIYXNoTWFwLmgiCi0jaW5jbHVkZSAiSGFzaFNldC5oIgotI2luY2x1
ZGUgIkxvY2suaCIKLSNpbmNsdWRlICJNYWluVGhyZWFkLmgiCi0jaW5jbHVkZSAiTmV2ZXJEZXN0
cm95ZWQuaCIKLSNpbmNsdWRlICJTdGRMaWJFeHRyYXMuaCIKICNpbmNsdWRlIDxzdGRpbnQuaD4K
KyNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgorI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CisjaW5j
bHVkZSA8d3RmL0xvY2suaD4KKyNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgorI2luY2x1ZGUg
PHd0Zi9OZXZlckRlc3Ryb3llZC5oPgorI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KIAog
Ly8gVGhpcyBmaWxlIGNvbnRhaW5zIGRlcHJlY2F0ZWQgc3ltYm9scyB0aGF0IHRoZSBsYXN0IHJl
bGVhc2VkIHZlcnNpb24gb2YgU2FmYXJpIHVzZXMuCiAvLyBPbmNlIFNhZmFyaSBzdG9wcyB1c2lu
ZyB0aGVtLCB3ZSBzaG91bGQgcmVtb3ZlIHRoZW0uCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9wZXJz
aXN0ZW5jZS9QZXJzaXN0ZW50Q29kZXJzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50Q29kZXJzLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysg
U291cmNlL1dURi93dGYvcGVyc2lzdGVuY2UvUGVyc2lzdGVudENvZGVycy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5j
bHVkZSAiUGVyc2lzdGVudENvZGVycy5oIgorI2luY2x1ZGUgPHd0Zi9wZXJzaXN0ZW5jZS9QZXJz
aXN0ZW50Q29kZXJzLmg+CiAKICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAjaW5jbHVk
ZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9wZXJzaXN0ZW5j
ZS9QZXJzaXN0ZW50RGVjb2Rlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvcGVy
c2lzdGVuY2UvUGVyc2lzdGVudERlY29kZXIuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RGVjb2Rlci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVk
ZSAiUGVyc2lzdGVudERlY29kZXIuaCIKKyNpbmNsdWRlIDx3dGYvcGVyc2lzdGVuY2UvUGVyc2lz
dGVudERlY29kZXIuaD4KIAogI2luY2x1ZGUgPHd0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RW5j
b2Rlci5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RW5j
b2Rlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvcGVyc2lzdGVuY2UvUGVyc2lz
dGVudEVuY29kZXIuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9wZXJz
aXN0ZW5jZS9QZXJzaXN0ZW50RW5jb2Rlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDkgKzI0
LDkgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUGVyc2lzdGVudEVu
Y29kZXIuaCIKKyNpbmNsdWRlIDx3dGYvcGVyc2lzdGVuY2UvUGVyc2lzdGVudEVuY29kZXIuaD4K
IAotI2luY2x1ZGUgIlNIQTEuaCIKKyNpbmNsdWRlIDx3dGYvU0hBMS5oPgogCiBuYW1lc3BhY2Ug
V1RGIHsKIG5hbWVzcGFjZSBQZXJzaXN0ZW5jZSB7CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9zcGkv
Y2YvQ0ZCdW5kbGVTUEkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9zcGkvY2YvQ0ZC
dW5kbGVTUEkuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvc3BpL2NmL0NG
QnVuZGxlU1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAogICovCiAKLSNpZm5kZWYgQ0ZCdW5kbGVTUElfaAotI2RlZmluZSBDRkJ1bmRsZVNQSV9o
CisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPENvcmVGb3VuZGF0aW9uL0NvcmVGb3VuZGF0aW9u
Lmg+CiAKQEAgLTQ2LDUgKzQ1LDMgQEAgQm9vbGVhbiBDRkJ1bmRsZUdldExvY2FsaXphdGlvbklu
Zm9Gb3JMbwogQ0ZTdHJpbmdSZWYgQ0ZCdW5kbGVDb3B5TG9jYWxpemF0aW9uRm9yTG9jYWxpemF0
aW9uSW5mbyhTSW50MzIgbGFuZ3VhZ2VDb2RlLCBTSW50MzIgcmVnaW9uQ29kZSwgU0ludDMyIHNj
cmlwdENvZGUsIENGU3RyaW5nRW5jb2Rpbmcgc3RyaW5nRW5jb2RpbmcpOwogCiBXVEZfRVhURVJO
X0NfRU5ECi0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvc3BpL2Rhcndpbi9Db21tb25D
cnlwdG9TUEkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9zcGkvZGFyd2luL0NvbW1v
bkNyeXB0b1NQSS5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9zcGkvZGFy
d2luL0NvbW1vbkNyeXB0b1NQSS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQ29tbW9uQ3J5cHRvU1BJX2gKLSNkZWZpbmUg
Q29tbW9uQ3J5cHRvU1BJX2gKKyNwcmFnbWEgb25jZQogCiAjaWYgT1MoREFSV0lOKQogCkBAIC00
Miw1ICs0MSwzIEBAIGludCBDQ1JhbmRvbUNvcHlCeXRlcyhDQ1JhbmRvbVJlZiBybmQsIHYKIFdU
Rl9FWFRFUk5fQ19FTkQKIAogI2VuZGlmIC8vIE9TKERBUldJTikKLQotI2VuZGlmIC8qIENvbW1v
bkNyeXB0b1NQSV9oICovCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0FTQ0lJRmFzdFBhdGgu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0FTQ0lJRmFzdFBhdGguaAkocmV2
aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvdGV4dC9BU0NJSUZhc3RQYXRoLmgJKHdv
cmtpbmcgY29weSkKQEAgLTE5LDggKzE5LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBBU0NJSUZh
c3RQYXRoX2gKLSNkZWZpbmUgQVNDSUlGYXN0UGF0aF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgPHN0ZGludC5oPgogI2luY2x1ZGUgPHVuaWNvZGUvdXR5cGVzLmg+CkBAIC0xOTUsNSArMTk0
LDMgQEAgaW5saW5lIHZvaWQgY29weUxDaGFyc0Zyb21VQ2hhclNvdXJjZShMQwogfSAvLyBuYW1l
c3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Y2hhcmFjdGVyc0FyZUFsbEFTQ0lJOwotCi0jZW5kaWYg
Ly8gQVNDSUlGYXN0UGF0aF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0FTQ0lJTGl0ZXJh
bC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9BU0NJSUxpdGVyYWwuY3Bw
CShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0FTQ0lJTGl0ZXJhbC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29u
ZmlnLmgiCi0jaW5jbHVkZSAiQVNDSUlMaXRlcmFsLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvQVND
SUlMaXRlcmFsLmg+CiAKICNpbmNsdWRlIDx3dGYvUHJpbnRTdHJlYW0uaD4KIApJbmRleDogU291
cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL3RleHQvQXRvbWljU3RyaW5nLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNl
L1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMSwxMyAr
MjEsMTMgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQXRvbWljU3Ry
aW5nLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+CiAKICNpbmNsdWRlIDxt
dXRleD4KICNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0lu
dGVnZXJUb1N0cmluZ0NvbnZlcnNpb24uaD4KIAotI2luY2x1ZGUgImR0b2EuaCIKKyNpbmNsdWRl
IDx3dGYvZHRvYS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYv
dGV4dC9BdG9taWNTdHJpbmcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0
b21pY1N0cmluZy5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0
b21pY1N0cmluZy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAK
LSNpZm5kZWYgQXRvbWljU3RyaW5nX2gKLSNkZWZpbmUgQXRvbWljU3RyaW5nX2gKKyNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8dXRpbGl0eT4KICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQu
aD4KQEAgLTM2Myw1ICszNjIsMyBAQCB1c2luZyBXVEY6OnhtbG5zQXRvbTsKICNlbmRpZgogCiAj
aW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQ29uY2F0ZW5hdGUuaD4KLQotI2VuZGlmIC8vIEF0b21p
Y1N0cmluZ19oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ0hhc2guaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ0hhc2guaAkocmV2
aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmdIYXNoLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDcgQEAKICAqIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lm
bmRlZiBBdG9taWNTdHJpbmdIYXNoX2gKLSNkZWZpbmUgQXRvbWljU3RyaW5nSGFzaF9oCisjcHJh
Z21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi90ZXh0L0F0b21pY1N0cmluZy5oPgogI2luY2x1ZGUg
PHd0Zi9IYXNoVHJhaXRzLmg+CkBAIC02Nyw1ICs2NiwzIEBAIG5hbWVzcGFjZSBXVEYgewogfQog
CiB1c2luZyBXVEY6OkF0b21pY1N0cmluZ0hhc2g7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dU
Ri93dGYvdGV4dC9BdG9taWNTdHJpbmdJbXBsLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi90ZXh0L0F0b21pY1N0cmluZ0ltcGwuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3Vy
Y2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ0ltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
MiwyMCArMjIsMjAgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQXRv
bWljU3RyaW5nSW1wbC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L0F0b21pY1N0cmluZ0ltcGwuaD4K
IAotI2luY2x1ZGUgIkF0b21pY1N0cmluZ1RhYmxlLmgiCi0jaW5jbHVkZSAiQ29tbWFQcmludGVy
LmgiCi0jaW5jbHVkZSAiRGF0YUxvZy5oIgotI2luY2x1ZGUgIkhhc2hTZXQuaCIKLSNpbmNsdWRl
ICJJbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmgiCi0jaW5jbHVkZSAiU3RyaW5nSGFzaC5oIgot
I2luY2x1ZGUgIlN0cmluZ1ByaW50U3RyZWFtLmgiCi0jaW5jbHVkZSAiVGhyZWFkaW5nLmgiCisj
aW5jbHVkZSA8d3RmL0NvbW1hUHJpbnRlci5oPgorI2luY2x1ZGUgPHd0Zi9EYXRhTG9nLmg+Cisj
aW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KKyNpbmNsdWRlIDx3dGYvU3RyaW5nUHJpbnRTdHJlYW0u
aD4KKyNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWlj
U3RyaW5nVGFibGUuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJz
aW9uLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaC5oPgogI2luY2x1ZGUgPHd0Zi91
bmljb2RlL1VURjguaD4KIAogI2lmIFVTRShXRUJfVEhSRUFEKQotI2luY2x1ZGUgIkxvY2suaCIK
KyNpbmNsdWRlIDx3dGYvTG9jay5oPgogI2VuZGlmCiAKIG5hbWVzcGFjZSBXVEYgewpJbmRleDog
U291cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmdJbXBsLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmdJbXBsLmgJKHJldmlzaW9uIDIzNzAzMykKKysr
IFNvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWljU3RyaW5nSW1wbC5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgQXRvbWljU3RyaW5nSW1wbF9oCi0j
ZGVmaW5lIEF0b21pY1N0cmluZ0ltcGxfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYv
dGV4dC9VbmlxdWVkU3RyaW5nSW1wbC5oPgogCkBAIC0xMjEsNSArMTIwLDMgQEAgVmFsdWVDaGVj
azxjb25zdCBBdG9taWNTdHJpbmdJbXBsKj4gewogfQogCiB1c2luZyBXVEY6OkF0b21pY1N0cmlu
Z0ltcGw7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmdU
YWJsZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmdU
YWJsZS5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWlj
U3RyaW5nVGFibGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw3ICsyMSw3IEBACiAgKi8KIAog
I2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkF0b21pY1N0cmluZ1RhYmxlLmgiCisjaW5j
bHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nVGFibGUuaD4KIAogI2luY2x1ZGUgPHd0Zi9IYXNo
U2V0Lmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L3RleHQvQXRvbWljU3RyaW5nVGFibGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90
ZXh0L0F0b21pY1N0cmluZ1RhYmxlLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYv
d3RmL3RleHQvQXRvbWljU3RyaW5nVGFibGUuaAkod29ya2luZyBjb3B5KQpAQCAtMjAsOCArMjAs
NyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9BdG9taWNTdHJpbmdUYWJsZV9oCi0jZGVmaW5l
IFdURl9BdG9taWNTdHJpbmdUYWJsZV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9I
YXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSW1wbC5oPgpAQCAtNDMsNSArNDIs
MyBAQCBwcml2YXRlOgogCiB9CiB1c2luZyBXVEY6OkF0b21pY1N0cmluZ1RhYmxlOwotCi0jZW5k
aWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvQmFzZTY0LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi90ZXh0L0Jhc2U2NC5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJj
ZS9XVEYvd3RmL3RleHQvQmFzZTY0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjIsNyArMjIsNyBA
QAogKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkJhc2U2NC5oIgorI2luY2x1
ZGUgPHd0Zi90ZXh0L0Jhc2U2NC5oPgogCiAjaW5jbHVkZSA8bGltaXRzLmg+CiAjaW5jbHVkZSA8
d3RmL3RleHQvV1RGU3RyaW5nLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0NTdHJpbmcu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvQ1N0cmluZy5jcHAJKHJldmlz
aW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvQ1N0cmluZy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTI1LDcgKzI1LDcgQEAKIAogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVk
ZSAiQ1N0cmluZy5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KIAogI2luY2x1ZGUg
PHN0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2hlci5oPgpJbmRleDogU291
cmNlL1dURi93dGYvdGV4dC9DU3RyaW5nLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
dGV4dC9DU3RyaW5nLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQv
Q1N0cmluZy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgogICovCiAKLSNpZm5kZWYgQ1N0cmluZ19oCi0jZGVmaW5lIENTdHJpbmdfaAorI3ByYWdtYSBv
bmNlCiAKICNpbmNsdWRlIDx3dGYvSGFzaEZ1bmN0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9IYXNo
VHJhaXRzLmg+CkBAIC0xMTAsNSArMTA5LDMgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgSGFzaFRyYWl0
czxDU3RyaW5nPiA6IAogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Q1N0cmluZzsK
LQotI2VuZGlmIC8vIENTdHJpbmdfaApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9Db252ZXJz
aW9uTW9kZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvQ29udmVyc2lvbk1v
ZGUuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvdGV4dC9Db252ZXJzaW9u
TW9kZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAK
ICAqLwogCi0jaWZuZGVmIENvbnZlcnNpb25Nb2RlX2gKLSNkZWZpbmUgQ29udmVyc2lvbk1vZGVf
aAorI3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC00MCw2ICszOSwzIEBAIHVz
aW5nIFdURjo6Q29udmVyc2lvbk1vZGU7CiB1c2luZyBXVEY6OkxlbmllbnRDb252ZXJzaW9uOwog
dXNpbmcgV1RGOjpTdHJpY3RDb252ZXJzaW9uOwogdXNpbmcgV1RGOjpTdHJpY3RDb252ZXJzaW9u
UmVwbGFjaW5nVW5wYWlyZWRTdXJyb2dhdGVzV2l0aEZGRkQ7Ci0KLSNlbmRpZiAvLyBDb252ZXJz
aW9uTW9kZV9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvRXh0ZXJuYWxTdHJpbmdJbXBs
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0V4dGVybmFsU3RyaW5nSW1w
bC5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvRXh0ZXJuYWxT
dHJpbmdJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNp
bmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJFeHRlcm5hbFN0cmluZ0ltcGwuaCIKKyNpbmNs
dWRlIDx3dGYvdGV4dC9FeHRlcm5hbFN0cmluZ0ltcGwuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbi5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvSW50ZWdlclRvU3RyaW5nQ29udmVyc2lv
bi5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0ludGVnZXJUb1N0
cmluZ0NvbnZlcnNpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMTksOCArMTksNyBAQAogICoKICAq
LwogCi0jaWZuZGVmIEludGVnZXJUb1N0cmluZ0NvbnZlcnNpb25faAotI2RlZmluZSBJbnRlZ2Vy
VG9TdHJpbmdDb252ZXJzaW9uX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL3RleHQv
TENoYXIuaD4KIApAQCAtMTI2LDUgKzEyNSwzIEBAIGlubGluZSB1bnNpZ25lZCBsZW5ndGhPZk51
bWJlckFzU3RyaW5nVW4KIH0KIAogfSAvLyBuYW1lc3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBJbnRl
Z2VyVG9TdHJpbmdDb252ZXJzaW9uX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvTENoYXIu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0xDaGFyLmgJKHJldmlzaW9uIDIz
NzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvTENoYXIuaAkod29ya2luZyBjb3B5KQpAQCAt
MjQsMTIgKzI0LDkgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBMQ2hhcl9oCi0jZGVmaW5lIExDaGFy
X2gKKyNwcmFnbWEgb25jZQogCiAvLyBBIHR5cGUgdG8gaG9sZCBhIHNpbmdsZSBMYXRpbi0xIGNo
YXJhY3Rlci4KIC8vIFRoaXMgdHlwZSBjb21wbGVtZW50cyB0aGUgVUNoYXIgdHlwZSB0aGF0IHdl
IGdldCBmcm9tIHRoZSBJQ1UgbGlicmFyeS4KIC8vIFRvIHBhcmFsbGVsIHRoYXQgdHlwZSwgd2Ug
cHV0IHRoaXMgb25lIGluIHRoZSBnbG9iYWwgbmFtZXNwYWNlLgogdHlwZWRlZiB1bnNpZ25lZCBj
aGFyIExDaGFyOwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvTGluZUVuZGlu
Zy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9MaW5lRW5kaW5nLmNwcAko
cmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvdGV4dC9MaW5lRW5kaW5nLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMzAsNyArMzAsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcu
aCIKLSNpbmNsdWRlICJMaW5lRW5kaW5nLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvTGluZUVuZGlu
Zy5oPgogCiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90
ZXh0L1N0cmluZ0J1ZmZlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvU3Ry
aW5nQnVmZmVyLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvU3Ry
aW5nQnVmZmVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDcgQEAKICAqIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiAgKi8KIAotI2lmbmRlZiBTdHJpbmdCdWZmZXJfaAotI2RlZmluZSBTdHJpbmdCdWZmZXJfaAor
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8dW5pY29kZS91dHlw
ZXMuaD4KQEAgLTg3LDUgKzg2LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1
c2luZyBXVEY6OlN0cmluZ0J1ZmZlcjsKLQotI2VuZGlmIC8vIFN0cmluZ0J1ZmZlcl9oCkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQnVpbGRlci5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysr
IFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQnVpbGRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI1LDEyICsyNSwxMiBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJT
dHJpbmdCdWlsZGVyLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogCi0j
aW5jbHVkZSAiSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbi5oIgotI2luY2x1ZGUgIk1hdGhFeHRy
YXMuaCIKLSNpbmNsdWRlICJXVEZTdHJpbmcuaCIKICNpbmNsdWRlIDx3dGYvZHRvYS5oPgorI2lu
Y2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+
CisjaW5jbHVkZSA8d3RmL3RleHQvSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbi5oPgogCiBuYW1l
c3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmgJKHJldmlz
aW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQnVpbGRlci5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNCw4ICsyNCw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZu
ZGVmIFN0cmluZ0J1aWxkZXJfaAotI2RlZmluZSBTdHJpbmdCdWlsZGVyX2gKKyNwcmFnbWEgb25j
ZQogCiAjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+CiAjaW5jbHVkZSA8d3RmL3Rl
eHQvSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbi5oPgpAQCAtMzc4LDUgKzM3NywzIEBAIHRlbXBs
YXRlPD4gc3RydWN0IEludGVnZXJUb1N0cmluZ0NvbnZlcnMKIH0gLy8gbmFtZXNwYWNlIFdURgog
CiB1c2luZyBXVEY6OlN0cmluZ0J1aWxkZXI7Ci0KLSNlbmRpZiAvLyBTdHJpbmdCdWlsZGVyX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQnVpbGRlckpTT04uY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQnVpbGRlckpTT04uY3BwCShyZXZpc2lv
biAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0J1aWxkZXJKU09OLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMTAsOSArMTAsOSBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcu
aCIKLSNpbmNsdWRlICJTdHJpbmdCdWlsZGVyLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5n
QnVpbGRlci5oPgogCi0jaW5jbHVkZSAiV1RGU3RyaW5nLmgiCisjaW5jbHVkZSA8d3RmL3RleHQv
V1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90
ZXh0L1N0cmluZ0NvbW1vbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvU3Ry
aW5nQ29tbW9uLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvU3Ry
aW5nQ29tbW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFN0cmluZ0NvbW1vbl9oCi0j
ZGVmaW5lIFN0cmluZ0NvbW1vbl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGFsZ29yaXRo
bT4KICNpbmNsdWRlIDx1bmljb2RlL3VjaGFyLmg+CkBAIC02NTksNSArNjU4LDMgQEAgdGVtcGxh
dGU8dW5zaWduZWQgbG93ZXJjYXNlTGV0dGVyc0xlbmd0aAogCiB1c2luZyBXVEY6OmVxdWFsSWdu
b3JpbmdBU0NJSUNhc2U7CiB1c2luZyBXVEY6OmVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNl
OwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQ29uY2F0ZW5hdGUu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0NvbmNhdGVuYXRlLmgJ
KHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQ29uY2F0ZW5h
dGUuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsMTkgKzIzLDEyIEBACiAgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAK
ICAqLwogCi0jaWZuZGVmIFN0cmluZ0NvbmNhdGVuYXRlX2gKLSNkZWZpbmUgU3RyaW5nQ29uY2F0
ZW5hdGVfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDx3
dGYvQ2hlY2tlZEFyaXRobWV0aWMuaD4KLQotI2lmbmRlZiBBdG9taWNTdHJpbmdfaAogI2luY2x1
ZGUgPHd0Zi90ZXh0L0F0b21pY1N0cmluZy5oPgotI2VuZGlmCi0KLSNpZm5kZWYgU3RyaW5nVmll
d19oCiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nVmlldy5oPgotI2VuZGlmCiAKIC8vIFRoaXMg
bWFjcm8gaXMgaGVscGZ1bCBmb3IgdGVzdGluZyBob3cgbWFueSBpbnRlcm1lZGlhdGUgU3RyaW5n
cyBhcmUgY3JlYXRlZCB3aGlsZSBldmFsdWF0aW5nIGFuCiAvLyBleHByZXNzaW9uIGNvbnRhaW5p
bmcgb3BlcmF0b3IrLgpAQCAtMzQzLDQgKzMzNiwzIEBAIHVzaW5nIFdURjo6bWFrZVN0cmluZzsK
IHVzaW5nIFdURjo6dHJ5TWFrZVN0cmluZzsKIAogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ09w
ZXJhdG9ycy5oPgotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0hhc2gu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0hhc2guaAkocmV2aXNp
b24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdIYXNoLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTE5LDggKzE5LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBTdHJpbmdIYXNoX2gK
LSNkZWZpbmUgU3RyaW5nSGFzaF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9IYXNo
VHJhaXRzLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+CkBAIC0yMDAsNSAr
MTk5LDMgQEAgdXNpbmcgV1RGOjpBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g7CiB1c2luZyBXVEY6
OkFTQ0lJQ2FzZUluc2Vuc2l0aXZlU3RyaW5nVmlld0hhc2hUcmFuc2xhdG9yOwogdXNpbmcgV1RG
OjpBbHJlYWR5SGFzaGVkOwogdXNpbmcgV1RGOjpTdHJpbmdIYXNoOwotCi0jZW5kaWYKSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNl
L1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsMTUgKzIz
LDE1IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlN0cmluZ0ltcGwu
aCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdJbXBsLmg+CiAKLSNpbmNsdWRlICJBdG9taWNT
dHJpbmcuaCIKLSNpbmNsdWRlICJFeHRlcm5hbFN0cmluZ0ltcGwuaCIKLSNpbmNsdWRlICJTdHJp
bmdCdWZmZXIuaCIKLSNpbmNsdWRlICJTdHJpbmdIYXNoLmgiCiAjaW5jbHVkZSA8d3RmL1Byb2Nl
c3NJRC5oPgogI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KKyNpbmNsdWRlIDx3dGYvdGV4
dC9BdG9taWNTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CisjaW5jbHVk
ZSA8d3RmL3RleHQvRXh0ZXJuYWxTdHJpbmdJbXBsLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvU3Ry
aW5nQnVmZmVyLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaC5oPgogI2luY2x1ZGUg
PHd0Zi90ZXh0L1N0cmluZ1ZpZXcuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TeW1ib2xJbXBsLmg+
CiAjaW5jbHVkZSA8d3RmL3RleHQvU3ltYm9sUmVnaXN0cnkuaD4KSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL3RleHQvU3RyaW5nSW1wbC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQv
U3RyaW5nSW1wbC5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0
cmluZ0ltcGwuaAkod29ya2luZyBjb3B5KQpAQCAtMjAsOCArMjAsNyBAQAogICoKICAqLwogCi0j
aWZuZGVmIFN0cmluZ0ltcGxfaAotI2RlZmluZSBTdHJpbmdJbXBsX2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8bGltaXRzLmg+CiAjaW5jbHVkZSA8dW5pY29kZS91c3RyaW5nLmg+CkBAIC0x
MjE3LDUgKzEyMTYsMyBAQCB0ZW1wbGF0ZTx1bnNpZ25lZCBsZW5ndGg+IGlubGluZSBib29sIGVx
CiB1c2luZyBXVEY6OlN0YXRpY1N0cmluZ0ltcGw7CiB1c2luZyBXVEY6OlN0cmluZ0ltcGw7CiB1
c2luZyBXVEY6OmVxdWFsOwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3Ry
aW5nT3BlcmF0b3JzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdP
cGVyYXRvcnMuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvdGV4dC9TdHJp
bmdPcGVyYXRvcnMuaAkod29ya2luZyBjb3B5KQpAQCAtMTksOCArMTksNyBAQAogICoKICAqLwog
Ci0jaWZuZGVmIFN0cmluZ09wZXJhdG9yc19oCi0jZGVmaW5lIFN0cmluZ09wZXJhdG9yc19oCisj
cHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTE2NCw1ICsxNjMsMyBAQCBTdHJp
bmdBcHBlbmQ8U3RyaW5nQXBwZW5kPFUsIFY+LCBXPiBvcGVyCiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdURgotCi0jZW5kaWYgLy8gU3RyaW5nT3BlcmF0b3JzX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L3RleHQvU3RyaW5nVmlldy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9T
dHJpbmdWaWV3LmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvdGV4dC9T
dHJpbmdWaWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjUsNyArMjUsNyBAQCBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJCiAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgi
Ci0jaW5jbHVkZSAiU3RyaW5nVmlldy5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ1ZpZXcu
aD4KIAogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHVuaWNvZGUvdWJyay5oPgpJbmRleDog
U291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdWaWV3LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvdGV4dC9TdHJpbmdWaWV3LmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYv
d3RmL3RleHQvU3RyaW5nVmlldy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBTdHJpbmdW
aWV3X2gKLSNkZWZpbmUgU3RyaW5nVmlld19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGxp
bWl0cy5oPgogI2luY2x1ZGUgPHVuaWNvZGUvdXR5cGVzLmg+CkBAIC0xMDAwLDUgKzk5OSwzIEBA
IHRlbXBsYXRlPHVuc2lnbmVkIGxlbmd0aD4gaW5saW5lIGJvb2wgZXEKIHVzaW5nIFdURjo6YXBw
ZW5kOwogdXNpbmcgV1RGOjplcXVhbDsKIHVzaW5nIFdURjo6U3RyaW5nVmlldzsKLQotI2VuZGlm
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N5bWJvbEltcGwuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL3RleHQvU3ltYm9sSW1wbC5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysr
IFNvdXJjZS9XVEYvd3RmL3RleHQvU3ltYm9sSW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0
LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiU3ltYm9s
SW1wbC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N5bWJvbEltcGwuaD4KIAogbmFtZXNwYWNlIFdU
RiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3ltYm9sUmVnaXN0cnkuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvU3ltYm9sUmVnaXN0cnkuY3BwCShyZXZpc2lv
biAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N5bWJvbFJlZ2lzdHJ5LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJTeW1ib2xSZWdpc3RyeS5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N5bWJvbFJl
Z2lzdHJ5Lmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0
L1N5bWJvbFJlZ2lzdHJ5LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9TeW1i
b2xSZWdpc3RyeS5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N5
bWJvbFJlZ2lzdHJ5LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9TeW1ib2xSZWdp
c3RyeV9oCi0jZGVmaW5lIFdURl9TeW1ib2xSZWdpc3RyeV9oCisjcHJhZ21hIG9uY2UKIAogI2lu
Y2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaC5oPgpA
QCAtMTA4LDUgKzEwNywzIEBAIGlubGluZSBTeW1ib2xSZWdpc3RyeUtleTo6U3ltYm9sUmVnaXN0
cnkKIH0KIAogfQotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dEJyZWFr
SXRlcmF0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dEJyZWFr
SXRlcmF0b3IuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1Rl
eHRCcmVha0l0ZXJhdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjAsMTIgKzIwLDEyIEBACiAg
Ki8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlRleHRCcmVha0l0ZXJhdG9yLmgi
CisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dEJyZWFrSXRlcmF0b3IuaD4KIAotI2luY2x1ZGUgIkxp
bmVCcmVha0l0ZXJhdG9yUG9vbElDVS5oIgotI2luY2x1ZGUgIlRleHRCcmVha0l0ZXJhdG9ySW50
ZXJuYWxJQ1UuaCIKLSNpbmNsdWRlICJVVGV4dFByb3ZpZGVyTGF0aW4xLmgiCi0jaW5jbHVkZSAi
VVRleHRQcm92aWRlclVURjE2LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvTGluZUJyZWFrSXRlcmF0
b3JQb29sSUNVLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5h
bElDVS5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyTGF0aW4xLmg+Cisj
aW5jbHVkZSA8d3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJVVEYxNi5oPgogI2luY2x1ZGUgPGF0
b21pYz4KICNpbmNsdWRlIDxtdXRleD4KICNpbmNsdWRlIDx1bmljb2RlL3VicmsuaD4KSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dEJyZWFrSXRlcmF0b3IuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9yLmgJKHJldmlzaW9uIDIzNzAzMykK
KysrIFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dEJyZWFrSXRlcmF0b3IuaAkod29ya2luZyBjb3B5
KQpAQCAtMjEsOSArMjEsOSBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIlN0cmluZ1Zp
ZXcuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KICNpbmNsdWRlIDx3dGYvVmFy
aWFudC5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ1ZpZXcuaD4KICNpbmNsdWRlIDx3dGYv
dGV4dC9pY3UvVGV4dEJyZWFrSXRlcmF0b3JJQ1UuaD4KIAogI2lmIFBMQVRGT1JNKE1BQykgfHwg
UExBVEZPUk0oSU9TKQpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRv
ckludGVybmFsSUNVLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9UZXh0QnJl
YWtJdGVyYXRvckludGVybmFsSUNVLmgJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYv
d3RmL3RleHQvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgVGV4dEJyZWFrSXRlcmF0b3JJbnRl
cm5hbElDVV9oCi0jZGVmaW5lIFRleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VfaAorI3ByYWdt
YSBvbmNlCiAKIC8vIEZJWE1FOiBOb3cgdGhhdCB0aGlzIGhhbmRsZXMgbG9jYWxlcyBmb3IgSUNV
LCBub3QganVzdCBmb3IgdGV4dCBicmVha2luZywKIC8vIHRoaXMgZmlsZSBhbmQgdGhlIHZhcmlv
dXMgaW1wbGVtZW50YXRpb24gZmlsZXMgc2hvdWxkIGJlIHJlbmFtZWQuCkBAIC0zMyw1ICszMiwz
IEBAIFdURl9FWFBPUlRfUFJJVkFURSBjb25zdCBjaGFyKiBjdXJyZW50VGUKIAogdXNpbmcgV1RG
OjpjdXJyZW50U2VhcmNoTG9jYWxlSUQ7CiB1c2luZyBXVEY6OmN1cnJlbnRUZXh0QnJlYWtMb2Nh
bGVJRDsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1RleHRQb3NpdGlvbi5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dFBvc2l0aW9uLmgJKHJldmlz
aW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dFBvc2l0aW9uLmgJKHdvcmtp
bmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJP
cmRpbmFsTnVtYmVyLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvT3JkaW5hbE51bWJlci5oPgogCiBu
YW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9UZXh0U3RyZWFtLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1RleHRTdHJlYW0uY3BwCShyZXZp
c2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1RleHRTdHJlYW0uY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgot
I2luY2x1ZGUgIlRleHRTdHJlYW0uaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0U3RyZWFtLmg+
CiAKICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0
cmluZy5oPgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9VbmlxdWVkU3RyaW5nSW1wbC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvVW5pcXVlZFN0cmluZ0ltcGwuaAkocmV2
aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvdGV4dC9VbmlxdWVkU3RyaW5nSW1wbC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBVbmlxdWVkU3RyaW5nSW1wbF9oCi0jZGVmaW5l
IFVuaXF1ZWRTdHJpbmdJbXBsX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL3RleHQv
U3RyaW5nSW1wbC5oPgogCkBAIC02MSw1ICs2MCwzIEBAIFZhbHVlQ2hlY2s8Y29uc3QgVW5pcXVl
ZFN0cmluZ0ltcGwqPiB7CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpVbmlxdWVk
U3RyaW5nSW1wbDsKLQotI2VuZGlmIC8vIFVuaXF1ZWRTdHJpbmdJbXBsX2gKSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi90ZXh0L1dURlN0cmluZy5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3Rm
L3RleHQvV1RGU3RyaW5nLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjAsOSArMjAsOCBAQAogICov
CiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJXVEZTdHJpbmcuaCIKKyNpbmNsdWRl
IDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAotI2luY2x1ZGUgIkludGVnZXJUb1N0cmluZ0NvbnZl
cnNpb24uaCIKICNpbmNsdWRlIDxzdGRhcmcuaD4KICNpbmNsdWRlIDx3dGYvQVNDSUlDVHlwZS5o
PgogI2luY2x1ZGUgPHd0Zi9EYXRhTG9nLmg+CkBAIC0zMiw2ICszMSw3IEBACiAjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0Zi9kdG9hLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQv
Q1N0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L0ludGVnZXJUb1N0cmluZ0NvbnZlcnNpb24u
aD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdUb0ludGVnZXJDb252ZXJzaW9uLmg+CiAjaW5j
bHVkZSA8d3RmL3VuaWNvZGUvQ2hhcmFjdGVyTmFtZXMuaD4KICNpbmNsdWRlIDx3dGYvdW5pY29k
ZS9VVEY4Lmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgJKHJldmlzaW9uIDIzNzAzMykK
KysrIFNvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgJKHdvcmtpbmcgY29weSkKQEAgLTE5
LDggKzE5LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBXVEZTdHJpbmdfaAotI2RlZmluZSBXVEZT
dHJpbmdfaAorI3ByYWdtYSBvbmNlCiAKIC8vIFRoaXMgZmlsZSB3b3VsZCBiZSBjYWxsZWQgU3Ry
aW5nLmgsIGJ1dCB0aGF0IGNvbmZsaWN0cyB3aXRoIDxzdHJpbmcuaD4KIC8vIG9uIHN5c3RlbXMg
d2l0aG91dCBjYXNlLXNlbnNpdGl2ZSBmaWxlIHN5c3RlbXMuCkBAIC02NTcsNSArNjU2LDMgQEAg
dXNpbmcgV1RGOjppc1NwYWNlT3JOZXdsaW5lOwogdXNpbmcgV1RGOjpyZXZlcnNlRmluZDsKIAog
I2luY2x1ZGUgPHd0Zi90ZXh0L0F0b21pY1N0cmluZy5oPgotCi0jZW5kaWYKSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL3RleHQvY29jb2EvU3RyaW5nQ29jb2EubW0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvdGV4dC9jb2NvYS9TdHJpbmdDb2NvYS5tbQkocmV2aXNpb24gMjM3MDMzKQorKysg
U291cmNlL1dURi93dGYvdGV4dC9jb2NvYS9TdHJpbmdDb2NvYS5tbQkod29ya2luZyBjb3B5KQpA
QCAtMTksNyArMTksNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJX
VEZTdHJpbmcuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogI2luY2x1ZGUg
PENvcmVGb3VuZGF0aW9uL0NGU3RyaW5nLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQv
Y29jb2EvU3RyaW5nVmlld0NvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3Rl
eHQvY29jb2EvU3RyaW5nVmlld0NvY29hLm1tCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2Uv
V1RGL3d0Zi90ZXh0L2NvY29hL1N0cmluZ1ZpZXdDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAt
MjQsOSArMjQsOSBAQAogICovCiAKICNpbXBvcnQgImNvbmZpZy5oIgotI2ltcG9ydCAiU3RyaW5n
Vmlldy5oIgorI2ltcG9ydCA8d3RmL3RleHQvU3RyaW5nVmlldy5oPgogCi0jaW1wb3J0ICJSZXRh
aW5QdHIuaCIKKyNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvY29jb2EvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5h
bElDVUNvY29hLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L2NvY29hL1Rl
eHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VDb2NvYS5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysr
IFNvdXJjZS9XVEYvd3RmL3RleHQvY29jb2EvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVUNv
Y29hLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTksMTAgKzE5LDEwIEBACiAgKi8KIAogI2luY2x1
ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlRleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1UuaCIK
KyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVLmg+CiAKLSNp
bmNsdWRlICJUZXh0QnJlYWtJdGVyYXRvci5oIgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4K
KyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvci5oPgogCiBuYW1lc3BhY2UgV1RG
IHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5jcHAJKHJl
dmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXIu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNv
bmZpZy5oIgotI2luY2x1ZGUgIlVUZXh0UHJvdmlkZXIuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9p
Y3UvVVRleHRQcm92aWRlci5oPgogCiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPHN0
cmluZy5oPgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXIuaAkocmV2
aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBVVGV4dFByb3ZpZGVyX2gKLSNkZWZpbmUgVVRl
eHRQcm92aWRlcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHVuaWNvZGUvdXRleHQuaD4K
IApAQCAtMTA3LDUgKzEwNiwzIEBAIGlubGluZSBib29sIHVUZXh0QWNjZXNzSW5DaHVua09yT3V0
T2ZSYW4KIH0KIAogfSAvLyBuYW1lc3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBVVGV4dFByb3ZpZGVy
X2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJMYXRpbjEuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJMYXRp
bjEuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4
dFByb3ZpZGVyTGF0aW4xLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsMTAgKzI0LDEwIEBACiAg
Ki8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlVUZXh0UHJvdmlkZXJMYXRpbjEu
aCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlckxhdGluMS5oPgogCi0jaW5j
bHVkZSAiVVRleHRQcm92aWRlci5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0ltcGwuaD4K
KyNpbmNsdWRlIDx3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5oPgogCiBuYW1lc3BhY2UgV1RG
IHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlckxhdGluMS5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJMYXRp
bjEuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQ
cm92aWRlckxhdGluMS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBVVGV4dFByb3ZpZGVy
TGF0aW4xX2gKLSNkZWZpbmUgVVRleHRQcm92aWRlckxhdGluMV9oCisjcHJhZ21hIG9uY2UKIAog
I2luY2x1ZGUgPHVuaWNvZGUvdXRleHQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9MQ2hhci5oPgpA
QCAtNDIsNSArNDEsMyBAQCBXVEZfRVhQT1JUIFVUZXh0KiBvcGVuTGF0aW4xVVRleHRQcm92aWRl
CiBVVGV4dCogb3BlbkxhdGluMUNvbnRleHRBd2FyZVVUZXh0UHJvdmlkZXIoVVRleHRXaXRoQnVm
ZmVyKiB1dFdpdGhCdWZmZXIsIGNvbnN0IExDaGFyKiBzdHJpbmcsIHVuc2lnbmVkIGxlbmd0aCwg
Y29uc3QgVUNoYXIqIHByaW9yQ29udGV4dCwgaW50IHByaW9yQ29udGV4dExlbmd0aCwgVUVycm9y
Q29kZSogc3RhdHVzKTsKIAogfSAvLyBuYW1lc3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBVVGV4dFBy
b3ZpZGVyTGF0aW4xX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlk
ZXJVVEYxNi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQ
cm92aWRlclVURjE2LmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvdGV4
dC9pY3UvVVRleHRQcm92aWRlclVURjE2LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsMTAgKzI0
LDEwIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlVUZXh0UHJvdmlk
ZXJVVEYxNi5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyVVRGMTYuaD4K
IAotI2luY2x1ZGUgIlVUZXh0UHJvdmlkZXIuaCIKICNpbmNsdWRlIDxhbGdvcml0aG0+CisjaW5j
bHVkZSA8d3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXIuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJVVEYxNi5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJVVEYxNi5oCShy
ZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVy
VVRGMTYuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgVVRleHRQcm92aWRlclVURjE2X2gK
LSNkZWZpbmUgVVRleHRQcm92aWRlclVURjE2X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8
dW5pY29kZS91dGV4dC5oPgogCkBAIC0zMyw1ICszMiwzIEBAIG5hbWVzcGFjZSBXVEYgewogVVRl
eHQqIG9wZW5VVEYxNkNvbnRleHRBd2FyZVVUZXh0UHJvdmlkZXIoVVRleHQqLCBjb25zdCBVQ2hh
ciosIHVuc2lnbmVkIGxlbmd0aCwgY29uc3QgVUNoYXIqIHByaW9yQ29udGV4dCwgaW50IHByaW9y
Q29udGV4dExlbmd0aCwgVUVycm9yQ29kZSopOwogCiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2Vu
ZGlmIC8vIFVUZXh0UHJvdmlkZXJVVEYxNl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L3Vu
aXgvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVVVuaXguY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL3RleHQvdW5peC9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVVW5peC5j
cHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvdW5peC9UZXh0QnJl
YWtJdGVyYXRvckludGVybmFsSUNVVW5peC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4LDcgKzE4
LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVGV4dEJyZWFrSXRl
cmF0b3JJbnRlcm5hbElDVS5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9y
SW50ZXJuYWxJQ1UuaD4KIAogI2luY2x1ZGUgPGxvY2FsZS5oPgogCkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi90ZXh0L3dpbi9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVV2luLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L3dpbi9UZXh0QnJlYWtJdGVyYXRvckludGVybmFs
SUNVV2luLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvdGV4dC93aW4v
VGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVVdpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE5
LDcgKzE5LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVGV4dEJy
ZWFrSXRlcmF0b3JJbnRlcm5hbElDVS5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRCcmVha0l0
ZXJhdG9ySW50ZXJuYWxJQ1UuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL3RocmVhZHMvQmluYXJ5U2VtYXBob3JlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi90aHJlYWRzL0JpbmFyeVNlbWFwaG9yZS5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysr
IFNvdXJjZS9XVEYvd3RmL3RocmVhZHMvQmluYXJ5U2VtYXBob3JlLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJCaW5hcnlTZW1hcGhvcmUuaCIKKyNpbmNsdWRlIDx3dGYvdGhyZWFkcy9CaW5hcnlTZW1hcGhv
cmUuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RocmVhZHMv
QmluYXJ5U2VtYXBob3JlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGhyZWFkcy9C
aW5hcnlTZW1hcGhvcmUuaAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvdGhy
ZWFkcy9CaW5hcnlTZW1hcGhvcmUuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAog
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQmluYXJ5
U2VtYXBob3JlX2gKLSNkZWZpbmUgQmluYXJ5U2VtYXBob3JlX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8d3RmL0NvbmRpdGlvbi5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CkBAIC02MSw1
ICs2MCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpCaW5h
cnlTZW1hcGhvcmU7Ci0KLSNlbmRpZiAvLyBCaW5hcnlTZW1hcGhvcmVfaApJbmRleDogU291cmNl
L1dURi93dGYvdGhyZWFkcy9TaWduYWxzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi90aHJlYWRzL1NpZ25hbHMuY3BwCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0
Zi90aHJlYWRzL1NpZ25hbHMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAg
Ki8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlNpZ25hbHMuaCIKKyNpbmNsdWRl
IDx3dGYvdGhyZWFkcy9TaWduYWxzLmg+CiAKICNpZiBVU0UoUFRIUkVBRFMpICYmIEhBVkUoTUFD
SElORV9DT05URVhUKQogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi91bmljb2RlL0NoYXJhY3Rlck5h
bWVzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdW5pY29kZS9DaGFyYWN0ZXJOYW1l
cy5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi91bmljb2RlL0NoYXJhY3Rl
ck5hbWVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiAgKi8KIAotI2lmbmRlZiBDaGFyYWN0ZXJOYW1lc19oCi0jZGVmaW5lIENoYXJhY3Rlck5hbWVz
X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8dW5pY29kZS91dHlwZXMuaD4KIApAQCAtMTY3
LDUgKzE2NiwzIEBAIHVzaW5nIFdURjo6VW5pY29kZTo6emVyb1dpZHRoSm9pbmVyOwogdXNpbmcg
V1RGOjpVbmljb2RlOjp6ZXJvV2lkdGhOb0JyZWFrU3BhY2U7CiB1c2luZyBXVEY6OlVuaWNvZGU6
Onplcm9XaWR0aE5vbkpvaW5lcjsKIHVzaW5nIFdURjo6VW5pY29kZTo6emVyb1dpZHRoU3BhY2U7
Ci0KLSNlbmRpZiAvLyBDaGFyYWN0ZXJOYW1lc19oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi91bmlj
b2RlL0NvbGxhdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdW5pY29kZS9Db2xs
YXRvci5oCShyZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi91bmljb2RlL0NvbGxh
dG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDcgQEAKICAqIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8K
IAotI2lmbmRlZiBXVEZfQ29sbGF0b3JfaAotI2RlZmluZSBXVEZfQ29sbGF0b3JfaAorI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlIDx1bmljb2RlL3Vjb25maWcuaD4KICNpbmNsdWRlIDx3dGYvTm9u
Y29weWFibGUuaD4KQEAgLTc1LDUgKzc0LDMgQEAgV1RGX0VYUE9SVF9QUklWQVRFIFVDaGFySXRl
cmF0b3IgY3JlYXRlSQogfQogCiB1c2luZyBXVEY6OkNvbGxhdG9yOwotCi0jZW5kaWYKSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ29sbGF0b3JEZWZhdWx0LmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi91bmljb2RlL0NvbGxhdG9yRGVmYXVsdC5jcHAJKHJldmlzaW9uIDIz
NzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ29sbGF0b3JEZWZhdWx0LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjcsNyArMjcsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJDb2xsYXRvci5oIgorI2luY2x1ZGUgPHd0Zi91bmljb2RlL0NvbGxhdG9yLmg+
CiAKICNpZiBVQ09ORklHX05PX0NPTExBVElPTgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi91bmlj
b2RlL1VURjguY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvVVRGOC5j
cHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvVVRGOC5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI1LDkgKzI1LDkgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiVVRGOC5oIgorI2luY2x1ZGUgPHd0Zi91bmljb2RlL1VURjguaD4KIAot
I2luY2x1ZGUgIkFTQ0lJQ1R5cGUuaCIKKyNpbmNsdWRlIDx3dGYvQVNDSUlDVHlwZS5oPgogI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0hhc2hlci5oPgogI2luY2x1ZGUgPHd0Zi91bmljb2RlL0No
YXJhY3Rlck5hbWVzLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvVVRGOC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvVVRGOC5oCShyZXZpc2lvbiAyMzcw
MzMpCisrKyBTb3VyY2UvV1RGL3d0Zi91bmljb2RlL1VURjguaAkod29ya2luZyBjb3B5KQpAQCAt
MjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfVVRGOF9o
Ci0jZGVmaW5lIFdURl9VVEY4X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8dW5pY29kZS91
dHlwZXMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9MQ2hhci5oPgpAQCAtODMsNSArODIsMyBAQCBu
YW1lc3BhY2UgVW5pY29kZSB7CiAKIH0gLy8gbmFtZXNwYWNlIFVuaWNvZGUKIH0gLy8gbmFtZXNw
YWNlIFdURgotCi0jZW5kaWYgLy8gV1RGX1VURjhfaApJbmRleDogU291cmNlL1dURi93dGYvdW5p
eC9DUFVUaW1lVW5peC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdW5peC9DUFVU
aW1lVW5peC5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3VuaXgvQ1BV
VGltZVVuaXguY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkNQVVRpbWUuaCIKKyNpbmNsdWRlIDx3dGYvQ1BV
VGltZS5oPgogCiAjaW5jbHVkZSA8c3lzL3Jlc291cmNlLmg+CiAjaW5jbHVkZSA8c3lzL3RpbWUu
aD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3VuaXgvTGFuZ3VhZ2VVbml4LmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi91bml4L0xhbmd1YWdlVW5peC5jcHAJKHJldmlzaW9uIDIzNzAz
MykKKysrIFNvdXJjZS9XVEYvd3RmL3VuaXgvTGFuZ3VhZ2VVbml4LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMTksNyArMTksNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJMYW5ndWFnZS5oIgorI2luY2x1ZGUgPHd0Zi9MYW5ndWFnZS5oPgogCiAjaW5jbHVkZSA8bG9j
YWxlLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgpJbmRleDogU291cmNlL1dURi93dGYvd2lu
L0NQVVRpbWVXaW4uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3dpbi9DUFVUaW1l
V2luLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvd2luL0NQVVRpbWVX
aW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIkNQVVRpbWUuaCIKKyNpbmNsdWRlIDx3dGYvQ1BVVGltZS5o
PgogCiAjaW5jbHVkZSA8d2luZG93cy5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi93aW4vTGFu
Z3VhZ2VXaW4uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3dpbi9MYW5ndWFnZVdp
bi5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3dpbi9MYW5ndWFnZVdp
bi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAi
Y29uZmlnLmgiCi0jaW5jbHVkZSAiTGFuZ3VhZ2UuaCIKKyNpbmNsdWRlIDx3dGYvTGFuZ3VhZ2Uu
aD4KIAogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHdpbmRvd3MuaD4KSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL3dpbi9NYWluVGhyZWFkV2luLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi93aW4vTWFpblRocmVhZFdpbi5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9X
VEYvd3RmL3dpbi9NYWluVGhyZWFkV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjgsMTEgKzI4
LDExIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk1haW5UaHJlYWQu
aCIKKyNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgogCi0jaW5jbHVkZSAiQXNzZXJ0aW9ucy5o
IgotI2luY2x1ZGUgIlRocmVhZGluZy5oIgotI2luY2x1ZGUgIldpbmRvd3NFeHRyYXMuaCIKKyNp
bmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KKyNp
bmNsdWRlIDx3dGYvV2luZG93c0V4dHJhcy5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDog
U291cmNlL1dURi93dGYvd2luL01lbW9yeUZvb3RwcmludFdpbi5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvd2luL01lbW9yeUZvb3RwcmludFdpbi5jcHAJKHJldmlzaW9uIDIzNzAz
MykKKysrIFNvdXJjZS9XVEYvd3RmL3dpbi9NZW1vcnlGb290cHJpbnRXaW4uY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2lu
Y2x1ZGUgIk1lbW9yeUZvb3RwcmludC5oIgorI2luY2x1ZGUgPHd0Zi9NZW1vcnlGb290cHJpbnQu
aD4KIAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRlIDx0eXBlX3RyYWl0cz4KSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL3dpbi9NZW1vcnlQcmVzc3VyZUhhbmRsZXJXaW4uY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3dpbi9NZW1vcnlQcmVzc3VyZUhhbmRsZXJXaW4uY3BwCShy
ZXZpc2lvbiAyMzcwMzMpCisrKyBTb3VyY2UvV1RGL3d0Zi93aW4vTWVtb3J5UHJlc3N1cmVIYW5k
bGVyV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNs
dWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNZW1vcnlQcmVzc3VyZUhhbmRsZXIuaCIKKyNpbmNs
dWRlIDx3dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmg+CiAKICNpbmNsdWRlIDxwc2FwaS5oPgog
I2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpJbmRleDogU291cmNlL1dURi93dGYvd2lu
L1J1bkxvb3BXaW4uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3dpbi9SdW5Mb29w
V2luLmNwcAkocmV2aXNpb24gMjM3MDMzKQorKysgU291cmNlL1dURi93dGYvd2luL1J1bkxvb3BX
aW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIlJ1bkxvb3AuaCIKKyNpbmNsdWRlIDx3dGYvUnVuTG9vcC5o
PgogCiAjaW5jbHVkZSA8d3RmL1dpbmRvd3NFeHRyYXMuaD4KIApJbmRleDogU291cmNlL1dURi93
dGYvd2luL1dvcmtRdWV1ZVdpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvd2lu
L1dvcmtRdWV1ZVdpbi5jcHAJKHJldmlzaW9uIDIzNzAzMykKKysrIFNvdXJjZS9XVEYvd3RmL3dp
bi9Xb3JrUXVldWVXaW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw3ICsyNSw3IEBACiAgKi8K
IAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIldvcmtRdWV1ZS5oIgorI2luY2x1ZGUg
PHd0Zi9Xb3JrUXVldWUuaD4KIAogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAjaW5jbHVk
ZSA8d3RmL1RocmVhZGluZy5oPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352186</attachid>
            <date>2018-10-12 12:13:52 -0700</date>
            <delta_ts>2018-10-12 14:13:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-190527-20181012121351.patch</filename>
            <type>text/plain</type>
            <size>175523</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDI5NyBAQAorMjAxOC0xMC0xMiAgQWxleCBDaHJpc3RlbnNlbiAg
PGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBwcmFnbWEgb25jZSBpbiBX
VEYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDUy
NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd3Rm
L0FTQ0lJQ1R5cGUuaDoKKyAgICAgICAgKiB3dGYvQXNzZXJ0aW9ucy5jcHA6CisgICAgICAgICog
d3RmL0Fzc2VydGlvbnMuaDoKKyAgICAgICAgKiB3dGYvQXRvbWljcy5oOgorICAgICAgICAqIHd0
Zi9BdXRvbWF0aWNUaHJlYWQuY3BwOgorICAgICAgICAqIHd0Zi9BdXRvbWF0aWNUaHJlYWQuaDoK
KyAgICAgICAgKiB3dGYvQmFja3dhcmRzR3JhcGguaDoKKyAgICAgICAgKiB3dGYvQmFnLmg6Cisg
ICAgICAgICogd3RmL0JhZ1RvSGFzaE1hcC5oOgorICAgICAgICAqIHd0Zi9CaXRWZWN0b3IuY3Bw
OgorICAgICAgICAqIHd0Zi9CaXRWZWN0b3IuaDoKKyAgICAgICAgKiB3dGYvQml0bWFwLmg6Cisg
ICAgICAgICogd3RmL0Jsb29tRmlsdGVyLmg6CisgICAgICAgICogd3RmL0JveC5oOgorICAgICAg
ICAqIHd0Zi9CdWJibGVTb3J0Lmg6CisgICAgICAgICogd3RmL0J1bXBQb2ludGVyQWxsb2NhdG9y
Lmg6CisgICAgICAgICogd3RmL0J5dGVPcmRlci5oOgorICAgICAgICAqIHd0Zi9DUFVUaW1lLmNw
cDoKKyAgICAgICAgKiB3dGYvQ2FsbGJhY2tBZ2dyZWdhdG9yLmg6CisgICAgICAgICogd3RmL0No
ZWNrZWRBcml0aG1ldGljLmg6CisgICAgICAgICogd3RmL0NoZWNrZWRCb29sZWFuLmg6CisgICAg
ICAgICogd3RmL0Nsb2NrVHlwZS5jcHA6CisgICAgICAgICogd3RmL0Nsb2NrVHlwZS5oOgorICAg
ICAgICAqIHd0Zi9Db21tYVByaW50ZXIuaDoKKyAgICAgICAgKiB3dGYvQ29tcGlsYXRpb25UaHJl
YWQuY3BwOgorICAgICAgICAqIHd0Zi9Db21waWxhdGlvblRocmVhZC5oOgorICAgICAgICAqIHd0
Zi9Db21waWxlci5oOgorICAgICAgICAqIHd0Zi9Db25jdXJyZW50UHRySGFzaFNldC5jcHA6Cisg
ICAgICAgICogd3RmL0NvbmN1cnJlbnRWZWN0b3IuaDoKKyAgICAgICAgKiB3dGYvQ29uZGl0aW9u
Lmg6CisgICAgICAgICogd3RmL0NvdW50aW5nTG9jay5jcHA6CisgICAgICAgICogd3RmL0Nyb3Nz
VGhyZWFkVGFza0hhbmRsZXIuY3BwOgorICAgICAgICAqIHd0Zi9DcnlwdG9ncmFwaGljVXRpbGl0
aWVzLmNwcDoKKyAgICAgICAgKiB3dGYvQ3J5cHRvZ3JhcGhpY1V0aWxpdGllcy5oOgorICAgICAg
ICAqIHd0Zi9DcnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlci5jcHA6CisgICAgICAgICogd3Rm
L0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmg6CisgICAgICAgICogd3RmL0N1cnJlbnRU
aW1lLmNwcDoKKyAgICAgICAgKiB3dGYvRGF0YUxvZy5jcHA6CisgICAgICAgICogd3RmL0RhdGFM
b2cuaDoKKyAgICAgICAgKiB3dGYvRGF0ZU1hdGguY3BwOgorICAgICAgICAqIHd0Zi9EYXRlTWF0
aC5oOgorICAgICAgICAqIHd0Zi9EZWNpbWFsTnVtYmVyLmNwcDoKKyAgICAgICAgKiB3dGYvRGVj
aW1hbE51bWJlci5oOgorICAgICAgICAqIHd0Zi9EZXF1ZS5oOgorICAgICAgICAqIHd0Zi9EaXNh
bGxvd0NUeXBlLmg6CisgICAgICAgICogd3RmL0RvbWluYXRvcnMuaDoKKyAgICAgICAgKiB3dGYv
RG91Ymx5TGlua2VkTGlzdC5oOgorICAgICAgICAqIHd0Zi9GYXN0Qml0VmVjdG9yLmNwcDoKKyAg
ICAgICAgKiB3dGYvRmFzdE1hbGxvYy5jcHA6CisgICAgICAgICogd3RmL0Zhc3RNYWxsb2MuaDoK
KyAgICAgICAgKiB3dGYvRmVhdHVyZURlZmluZXMuaDoKKyAgICAgICAgKiB3dGYvRmlsZVByaW50
U3RyZWFtLmNwcDoKKyAgICAgICAgKiB3dGYvRmlsZVByaW50U3RyZWFtLmg6CisgICAgICAgICog
d3RmL0ZsaXBCeXRlcy5oOgorICAgICAgICAqIHd0Zi9GdW5jdGlvbkRpc3BhdGNoZXIuY3BwOgor
ICAgICAgICAqIHd0Zi9GdW5jdGlvbkRpc3BhdGNoZXIuaDoKKyAgICAgICAgKiB3dGYvR2V0UHRy
Lmg6CisgICAgICAgICogd3RmL0dpZ2FjYWdlLmNwcDoKKyAgICAgICAgKiB3dGYvR2xvYmFsVmVy
c2lvbi5jcHA6CisgICAgICAgICogd3RmL0dyYXBoTm9kZVdvcmtsaXN0Lmg6CisgICAgICAgICog
d3RmL0dyZWdvcmlhbkRhdGVUaW1lLmNwcDoKKyAgICAgICAgKiB3dGYvR3JlZ29yaWFuRGF0ZVRp
bWUuaDoKKyAgICAgICAgKiB3dGYvSGFzaEZ1bmN0aW9ucy5oOgorICAgICAgICAqIHd0Zi9IYXNo
TWFwLmg6CisgICAgICAgICogd3RmL0hhc2hNZXRob2QuaDoKKyAgICAgICAgKiB3dGYvSGFzaFNl
dC5oOgorICAgICAgICAqIHd0Zi9IYXNoVGFibGUuY3BwOgorICAgICAgICAqIHd0Zi9IYXNoVHJh
aXRzLmg6CisgICAgICAgICogd3RmL0luZGVudGVyLmg6CisgICAgICAgICogd3RmL0luZGV4U3Bh
cnNlU2V0Lmg6CisgICAgICAgICogd3RmL0lubGluZUFTTS5oOgorICAgICAgICAqIHd0Zi9JbnNl
cnRpb24uaDoKKyAgICAgICAgKiB3dGYvSXRlcmF0b3JBZGFwdG9ycy5oOgorICAgICAgICAqIHd0
Zi9JdGVyYXRvclJhbmdlLmg6CisgICAgICAgICogd3RmL0pTT05WYWx1ZXMuY3BwOgorICAgICAg
ICAqIHd0Zi9KU1ZhbHVlTWFsbG9jLmNwcDoKKyAgICAgICAgKiB3dGYvTEVCRGVjb2Rlci5oOgor
ICAgICAgICAqIHd0Zi9MYW5ndWFnZS5jcHA6CisgICAgICAgICogd3RmL0xpc3REdW1wLmg6Cisg
ICAgICAgICogd3RmL0xvY2suY3BwOgorICAgICAgICAqIHd0Zi9Mb2NrLmg6CisgICAgICAgICog
d3RmL0xvY2tBbGdvcml0aG0uaDoKKyAgICAgICAgKiB3dGYvTG9ja2VkUHJpbnRTdHJlYW0uY3Bw
OgorICAgICAgICAqIHd0Zi9Mb2NrZXIuaDoKKyAgICAgICAgKiB3dGYvTUQ1LmNwcDoKKyAgICAg
ICAgKiB3dGYvTUQ1Lmg6CisgICAgICAgICogd3RmL01haW5UaHJlYWQuY3BwOgorICAgICAgICAq
IHd0Zi9NYWluVGhyZWFkLmg6CisgICAgICAgICogd3RmL01hbGxvY1B0ci5oOgorICAgICAgICAq
IHd0Zi9NYXRoRXh0cmFzLmg6CisgICAgICAgICogd3RmL01lZGlhVGltZS5jcHA6CisgICAgICAg
ICogd3RmL01lZGlhVGltZS5oOgorICAgICAgICAqIHd0Zi9NZW1vcnlQcmVzc3VyZUhhbmRsZXIu
Y3BwOgorICAgICAgICAqIHd0Zi9NZXNzYWdlUXVldWUuaDoKKyAgICAgICAgKiB3dGYvTWV0YUFs
bG9jYXRvci5jcHA6CisgICAgICAgICogd3RmL01ldGFBbGxvY2F0b3IuaDoKKyAgICAgICAgKiB3
dGYvTWV0YUFsbG9jYXRvckhhbmRsZS5oOgorICAgICAgICAqIHd0Zi9Nb25vdG9uaWNUaW1lLmNw
cDoKKyAgICAgICAgKiB3dGYvTW9ub3RvbmljVGltZS5oOgorICAgICAgICAqIHd0Zi9OYWtlZFB0
ci5oOgorICAgICAgICAqIHd0Zi9Ob0xvY2suaDoKKyAgICAgICAgKiB3dGYvTm9UYWlsQ2FsbHMu
aDoKKyAgICAgICAgKiB3dGYvTm9uY29weWFibGUuaDoKKyAgICAgICAgKiB3dGYvTnVtYmVyT2ZD
b3Jlcy5jcHA6CisgICAgICAgICogd3RmL051bWJlck9mQ29yZXMuaDoKKyAgICAgICAgKiB3dGYv
T1NBbGxvY2F0b3IuaDoKKyAgICAgICAgKiB3dGYvT1NBbGxvY2F0b3JQb3NpeC5jcHA6CisgICAg
ICAgICogd3RmL09TUmFuZG9tU291cmNlLmNwcDoKKyAgICAgICAgKiB3dGYvT1NSYW5kb21Tb3Vy
Y2UuaDoKKyAgICAgICAgKiB3dGYvT2JqY1J1bnRpbWVFeHRyYXMuaDoKKyAgICAgICAgKiB3dGYv
T3JkZXJNYWtlci5oOgorICAgICAgICAqIHd0Zi9QYWNrZWRJbnRWZWN0b3IuaDoKKyAgICAgICAg
KiB3dGYvUGFnZUFsbG9jYXRpb24uaDoKKyAgICAgICAgKiB3dGYvUGFnZUJsb2NrLmNwcDoKKyAg
ICAgICAgKiB3dGYvUGFnZUJsb2NrLmg6CisgICAgICAgICogd3RmL1BhZ2VSZXNlcnZhdGlvbi5o
OgorICAgICAgICAqIHd0Zi9QYXJhbGxlbEhlbHBlclBvb2wuY3BwOgorICAgICAgICAqIHd0Zi9Q
YXJhbGxlbEhlbHBlclBvb2wuaDoKKyAgICAgICAgKiB3dGYvUGFyYWxsZWxKb2JzLmg6CisgICAg
ICAgICogd3RmL1BhcmFsbGVsSm9ic0xpYmRpc3BhdGNoLmg6CisgICAgICAgICogd3RmL1BhcmFs
bGVsVmVjdG9ySXRlcmF0b3IuaDoKKyAgICAgICAgKiB3dGYvUGFya2luZ0xvdC5jcHA6CisgICAg
ICAgICogd3RmL1BhcmtpbmdMb3QuaDoKKyAgICAgICAgKiB3dGYvUGxhdGZvcm0uaDoKKyAgICAg
ICAgKiB3dGYvUG9pbnRlckNvbXBhcmlzb24uaDoKKyAgICAgICAgKiB3dGYvUG9pc29uZWQuY3Bw
OgorICAgICAgICAqIHd0Zi9QcmludFN0cmVhbS5jcHA6CisgICAgICAgICogd3RmL1ByaW50U3Ry
ZWFtLmg6CisgICAgICAgICogd3RmL1Byb2Nlc3NJRC5oOgorICAgICAgICAqIHd0Zi9Qcm9jZXNz
UHJpdmlsZWdlLmNwcDoKKyAgICAgICAgKiB3dGYvUkFNU2l6ZS5jcHA6CisgICAgICAgICogd3Rm
L1JBTVNpemUuaDoKKyAgICAgICAgKiB3dGYvUmFuZG9tRGV2aWNlLmNwcDoKKyAgICAgICAgKiB3
dGYvUmFuZG9tTnVtYmVyLmNwcDoKKyAgICAgICAgKiB3dGYvUmFuZG9tTnVtYmVyLmg6CisgICAg
ICAgICogd3RmL1JhbmRvbU51bWJlclNlZWQuaDoKKyAgICAgICAgKiB3dGYvUmFuZ2VTZXQuaDoK
KyAgICAgICAgKiB3dGYvUmF3UG9pbnRlci5oOgorICAgICAgICAqIHd0Zi9SZWFkV3JpdGVMb2Nr
LmNwcDoKKyAgICAgICAgKiB3dGYvUmVkQmxhY2tUcmVlLmg6CisgICAgICAgICogd3RmL1JlZi5o
OgorICAgICAgICAqIHd0Zi9SZWZDb3VudGVkQXJyYXkuaDoKKyAgICAgICAgKiB3dGYvUmVmQ291
bnRlZExlYWtDb3VudGVyLmNwcDoKKyAgICAgICAgKiB3dGYvUmVmQ291bnRlZExlYWtDb3VudGVy
Lmg6CisgICAgICAgICogd3RmL1JlZkNvdW50ZXIuaDoKKyAgICAgICAgKiB3dGYvUmVmUHRyLmg6
CisgICAgICAgICogd3RmL1JldGFpblB0ci5oOgorICAgICAgICAqIHd0Zi9SdW5Mb29wLmNwcDoK
KyAgICAgICAgKiB3dGYvUnVuTG9vcC5oOgorICAgICAgICAqIHd0Zi9SdW5Mb29wVGltZXIuaDoK
KyAgICAgICAgKiB3dGYvUnVuTG9vcFRpbWVyQ0YuY3BwOgorICAgICAgICAqIHd0Zi9TSEExLmNw
cDoKKyAgICAgICAgKiB3dGYvU0hBMS5oOgorICAgICAgICAqIHd0Zi9TYXR1cmF0ZWRBcml0aG1l
dGljLmg6CisgICAgICAgIChzYXR1cmF0ZWRTdWJ0cmFjdGlvbik6CisgICAgICAgICogd3RmL1Nj
aGVkdWxlUGFpci5oOgorICAgICAgICAqIHd0Zi9TY2hlZHVsZVBhaXJDRi5jcHA6CisgICAgICAg
ICogd3RmL1NjaGVkdWxlUGFpck1hYy5tbToKKyAgICAgICAgKiB3dGYvU2NvcGVkTGFtYmRhLmg6
CisgICAgICAgICogd3RmL1NlY29uZHMuY3BwOgorICAgICAgICAqIHd0Zi9TZWNvbmRzLmg6Cisg
ICAgICAgICogd3RmL1NlZ21lbnRlZFZlY3Rvci5oOgorICAgICAgICAqIHd0Zi9TZW50aW5lbExp
bmtlZExpc3QuaDoKKyAgICAgICAgKiB3dGYvU2hhcmVkVGFzay5oOgorICAgICAgICAqIHd0Zi9T
aW1wbGVTdGF0cy5oOgorICAgICAgICAqIHd0Zi9TaW5nbGVSb290R3JhcGguaDoKKyAgICAgICAg
KiB3dGYvU2luZ2x5TGlua2VkTGlzdC5oOgorICAgICAgICAqIHd0Zi9TaXhDaGFyYWN0ZXJIYXNo
LmNwcDoKKyAgICAgICAgKiB3dGYvU2l4Q2hhcmFjdGVySGFzaC5oOgorICAgICAgICAqIHd0Zi9T
bWFsbFB0clNldC5oOgorICAgICAgICAqIHd0Zi9TcGVjdHJ1bS5oOgorICAgICAgICAqIHd0Zi9T
dGFja0JvdW5kcy5jcHA6CisgICAgICAgICogd3RmL1N0YWNrQm91bmRzLmg6CisgICAgICAgICog
d3RmL1N0YWNrU3RhdHMuY3BwOgorICAgICAgICAqIHd0Zi9TdGFja1N0YXRzLmg6CisgICAgICAg
ICogd3RmL1N0YWNrVHJhY2UuY3BwOgorICAgICAgICAqIHd0Zi9TdGRMaWJFeHRyYXMuaDoKKyAg
ICAgICAgKiB3dGYvU3RyZWFtQnVmZmVyLmg6CisgICAgICAgICogd3RmL1N0cmluZ0hhc2hEdW1w
Q29udGV4dC5oOgorICAgICAgICAqIHd0Zi9TdHJpbmdQcmludFN0cmVhbS5jcHA6CisgICAgICAg
ICogd3RmL1N0cmluZ1ByaW50U3RyZWFtLmg6CisgICAgICAgICogd3RmL1RocmVhZEdyb3VwLmNw
cDoKKyAgICAgICAgKiB3dGYvVGhyZWFkTWVzc2FnZS5jcHA6CisgICAgICAgICogd3RmL1RocmVh
ZFNwZWNpZmljLmg6CisgICAgICAgICogd3RmL1RocmVhZGluZy5jcHA6CisgICAgICAgICogd3Rm
L1RocmVhZGluZy5oOgorICAgICAgICAqIHd0Zi9UaHJlYWRpbmdQcmltaXRpdmVzLmg6CisgICAg
ICAgICogd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcDoKKyAgICAgICAgKiB3dGYvVGltZVdpdGhE
eW5hbWljQ2xvY2tUeXBlLmNwcDoKKyAgICAgICAgKiB3dGYvVGltZVdpdGhEeW5hbWljQ2xvY2tU
eXBlLmg6CisgICAgICAgICogd3RmL1RpbWluZ1Njb3BlLmNwcDoKKyAgICAgICAgKiB3dGYvVGlu
eUxSVUNhY2hlLmg6CisgICAgICAgICogd3RmL1RpbnlQdHJTZXQuaDoKKyAgICAgICAgKiB3dGYv
VHJpU3RhdGUuaDoKKyAgICAgICAgKiB3dGYvVHlwZUNhc3RzLmg6CisgICAgICAgICogd3RmL1VV
SUQuY3BwOgorICAgICAgICAqIHd0Zi9VbmlvbkZpbmQuaDoKKyAgICAgICAgKiB3dGYvVk1UYWdz
Lmg6CisgICAgICAgICogd3RmL1ZhbHVlQ2hlY2suaDoKKyAgICAgICAgKiB3dGYvVmVjdG9yLmg6
CisgICAgICAgICogd3RmL1ZlY3RvclRyYWl0cy5oOgorICAgICAgICAqIHd0Zi9XYWxsVGltZS5j
cHA6CisgICAgICAgICogd3RmL1dhbGxUaW1lLmg6CisgICAgICAgICogd3RmL1dlYWtQdHIuaDoK
KyAgICAgICAgKiB3dGYvV2Vha1JhbmRvbS5oOgorICAgICAgICAqIHd0Zi9Xb3JkTG9jay5jcHA6
CisgICAgICAgICogd3RmL1dvcmRMb2NrLmg6CisgICAgICAgICogd3RmL1dvcmtRdWV1ZS5jcHA6
CisgICAgICAgICogd3RmL1dvcmtRdWV1ZS5oOgorICAgICAgICAqIHd0Zi9Xb3JrZXJQb29sLmNw
cDoKKyAgICAgICAgKiB3dGYvY2YvTGFuZ3VhZ2VDRi5jcHA6CisgICAgICAgICogd3RmL2NmL1J1
bkxvb3BDRi5jcHA6CisgICAgICAgICogd3RmL2NvY29hL0VudGl0bGVtZW50cy5tbToKKyAgICAg
ICAgKiB3dGYvY29jb2EvTWFjaFNlbmRSaWdodC5jcHA6CisgICAgICAgICogd3RmL2NvY29hL01h
aW5UaHJlYWRDb2NvYS5tbToKKyAgICAgICAgKiB3dGYvY29jb2EvTWVtb3J5Rm9vdHByaW50Q29j
b2EuY3BwOgorICAgICAgICAqIHd0Zi9jb2NvYS9Xb3JrUXVldWVDb2NvYS5jcHA6CisgICAgICAg
ICogd3RmL2R0b2EuY3BwOgorICAgICAgICAqIHd0Zi9kdG9hLmg6CisgICAgICAgICogd3RmL2lv
cy9XZWJDb3JlVGhyZWFkLmNwcDoKKyAgICAgICAgKiB3dGYvaW9zL1dlYkNvcmVUaHJlYWQuaDoK
KyAgICAgICAgKiB3dGYvbWFjL0FwcEtpdENvbXBhdGliaWxpdHlEZWNsYXJhdGlvbnMuaDoKKyAg
ICAgICAgKiB3dGYvbWFjL0RlcHJlY2F0ZWRTeW1ib2xzVXNlZEJ5U2FmYXJpLm1tOgorICAgICAg
ICAqIHd0Zi9tYm1hbGxvYy5jcHA6CisgICAgICAgICogd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3Rl
bnRDb2RlcnMuY3BwOgorICAgICAgICAqIHd0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RGVjb2Rl
ci5jcHA6CisgICAgICAgICogd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3RlbnRFbmNvZGVyLmNwcDoK
KyAgICAgICAgKiB3dGYvc3BpL2NmL0NGQnVuZGxlU1BJLmg6CisgICAgICAgICogd3RmL3NwaS9k
YXJ3aW4vQ29tbW9uQ3J5cHRvU1BJLmg6CisgICAgICAgICogd3RmL3RleHQvQVNDSUlGYXN0UGF0
aC5oOgorICAgICAgICAqIHd0Zi90ZXh0L0FTQ0lJTGl0ZXJhbC5jcHA6CisgICAgICAgICogd3Rm
L3RleHQvQXRvbWljU3RyaW5nLmNwcDoKKyAgICAgICAgKiB3dGYvdGV4dC9BdG9taWNTdHJpbmcu
aDoKKyAgICAgICAgKiB3dGYvdGV4dC9BdG9taWNTdHJpbmdIYXNoLmg6CisgICAgICAgICogd3Rm
L3RleHQvQXRvbWljU3RyaW5nSW1wbC5jcHA6CisgICAgICAgICogd3RmL3RleHQvQXRvbWljU3Ry
aW5nSW1wbC5oOgorICAgICAgICAqIHd0Zi90ZXh0L0F0b21pY1N0cmluZ1RhYmxlLmNwcDoKKyAg
ICAgICAgKiB3dGYvdGV4dC9BdG9taWNTdHJpbmdUYWJsZS5oOgorICAgICAgICAqIHd0Zi90ZXh0
L0Jhc2U2NC5jcHA6CisgICAgICAgICogd3RmL3RleHQvQ1N0cmluZy5jcHA6CisgICAgICAgICog
d3RmL3RleHQvQ1N0cmluZy5oOgorICAgICAgICAqIHd0Zi90ZXh0L0NvbnZlcnNpb25Nb2RlLmg6
CisgICAgICAgICogd3RmL3RleHQvRXh0ZXJuYWxTdHJpbmdJbXBsLmNwcDoKKyAgICAgICAgKiB3
dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmg6CisgICAgICAgICogd3RmL3RleHQv
TENoYXIuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9MaW5lRW5kaW5nLmNwcDoKKyAgICAgICAgKiB3
dGYvdGV4dC9TdHJpbmdCdWZmZXIuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdCdWlsZGVy
LmNwcDoKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg6CisgICAgICAgICogd3Rm
L3RleHQvU3RyaW5nQnVpbGRlckpTT04uY3BwOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0Nv
bW1vbi5oOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0NvbmNhdGVuYXRlLmg6CisgICAgICAg
ICogd3RmL3RleHQvU3RyaW5nSGFzaC5oOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0ltcGwu
Y3BwOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0ltcGwuaDoKKyAgICAgICAgKiB3dGYvdGV4
dC9TdHJpbmdPcGVyYXRvcnMuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdWaWV3LmNwcDoK
KyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdWaWV3Lmg6CisgICAgICAgICogd3RmL3RleHQvU3lt
Ym9sSW1wbC5jcHA6CisgICAgICAgICogd3RmL3RleHQvU3ltYm9sUmVnaXN0cnkuY3BwOgorICAg
ICAgICAqIHd0Zi90ZXh0L1N5bWJvbFJlZ2lzdHJ5Lmg6CisgICAgICAgICogd3RmL3RleHQvVGV4
dEJyZWFrSXRlcmF0b3IuY3BwOgorICAgICAgICAqIHd0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9y
Lmg6CisgICAgICAgICogd3RmL3RleHQvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVS5oOgor
ICAgICAgICAqIHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oOgorICAgICAgICAqIHd0Zi90ZXh0L1Rl
eHRTdHJlYW0uY3BwOgorICAgICAgICAqIHd0Zi90ZXh0L1VuaXF1ZWRTdHJpbmdJbXBsLmg6Cisg
ICAgICAgICogd3RmL3RleHQvV1RGU3RyaW5nLmNwcDoKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZT
dHJpbmcuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9jb2NvYS9TdHJpbmdDb2NvYS5tbToKKyAgICAg
ICAgKiB3dGYvdGV4dC9jb2NvYS9TdHJpbmdWaWV3Q29jb2EubW06CisgICAgICAgICogd3RmL3Rl
eHQvY29jb2EvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVUNvY29hLmNwcDoKKyAgICAgICAg
KiB3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5jcHA6CisgICAgICAgICogd3RmL3RleHQvaWN1
L1VUZXh0UHJvdmlkZXIuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlckxh
dGluMS5jcHA6CisgICAgICAgICogd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJMYXRpbjEuaDoK
KyAgICAgICAgKiB3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2LmNwcDoKKyAgICAgICAg
KiB3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2Lmg6CisgICAgICAgICogd3RmL3RocmVh
ZHMvQmluYXJ5U2VtYXBob3JlLmNwcDoKKyAgICAgICAgKiB3dGYvdGhyZWFkcy9CaW5hcnlTZW1h
cGhvcmUuaDoKKyAgICAgICAgKiB3dGYvdGhyZWFkcy9TaWduYWxzLmNwcDoKKyAgICAgICAgKiB3
dGYvdW5pY29kZS9DaGFyYWN0ZXJOYW1lcy5oOgorICAgICAgICAqIHd0Zi91bmljb2RlL0NvbGxh
dG9yLmg6CisgICAgICAgICogd3RmL3VuaWNvZGUvQ29sbGF0b3JEZWZhdWx0LmNwcDoKKyAgICAg
ICAgKiB3dGYvdW5pY29kZS9VVEY4LmNwcDoKKyAgICAgICAgKiB3dGYvdW5pY29kZS9VVEY4Lmg6
CisKIDIwMTgtMTAtMTEgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CiAKICAg
ICAgICAgQWRkIFBMQVRGT1JNKElPU19GQU1JTFkpIGFuZCBPUyhJT1NfRkFNSUxZKQpJbmRleDog
U291cmNlL1dURi93dGYvQVNDSUlDVHlwZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L0FTQ0lJQ1R5cGUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQVNDSUlD
VHlwZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw3IEBACiAgKiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKLSNpZm5kZWYgV1RGX0FTQ0lJQ1R5cGVfaAotI2RlZmluZSBXVEZfQVNDSUlDVHlwZV9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3Rm
L3RleHQvTENoYXIuaD4KQEAgLTI3NSw1ICsyNzQsMyBAQCB1c2luZyBXVEY6OnRvQVNDSUlMb3dl
clVuY2hlY2tlZDsKIHVzaW5nIFdURjo6dG9BU0NJSVVwcGVyOwogdXNpbmcgV1RGOjp1cHBlck5p
YmJsZVRvQVNDSUlIZXhEaWdpdDsKIHVzaW5nIFdURjo6dXBwZXJOaWJibGVUb0xvd2VyY2FzZUFT
Q0lJSGV4RGlnaXQ7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5jcHAJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Fzc2VydGlvbnMuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0zMiwxMiArMzIsMTIgQEAKICNwcmFnbWEgR0NDIGRpYWdub3N0aWMgaWdub3JlZCAiLVdt
aXNzaW5nLWZvcm1hdC1hdHRyaWJ1dGUiCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJBc3NlcnRpb25zLmgiCisjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIAotI2luY2x1ZGUg
IkNvbXBpbGVyLmgiCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNs
dWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx3dGYvQ29tcGlsZXIuaD4KICNpbmNsdWRlIDx3dGYv
TG9jay5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrZXIuaD4KICNpbmNsdWRlIDx3dGYvTG9nZ2luZ0Fj
Y3VtdWxhdG9yLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Bc3NlcnRpb25zLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi9Bc3NlcnRpb25zLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcg
QEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgV1RGX0Fzc2VydGlvbnNfaAotI2Rl
ZmluZSBXVEZfQXNzZXJ0aW9uc19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9QbGF0
Zm9ybS5oPgogCkBAIC02MTMsNSArNjEyLDMgQEAgSUdOT1JFX0NMQU5HX1dBUk5JTkdTX0VORAog
I2Vsc2UKICNkZWZpbmUgVU5SRUFDSEFCTEVfRk9SX1BMQVRGT1JNKCkgUkVMRUFTRV9BU1NFUlRf
Tk9UX1JFQUNIRUQoKQogI2VuZGlmCi0KLSNlbmRpZiAvKiBXVEZfQXNzZXJ0aW9uc19oICovCklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9BdG9taWNzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvQXRvbWljcy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9BdG9taWNz
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5k
ZWYgQXRvbWljc19oCi0jZGVmaW5lIEF0b21pY3NfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRl
IDxhdG9taWM+CiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgpAQCAtNDUyLDUgKzQ1MSwz
IEBAIHVzaW5nIFdURjo6SW5wdXRBbmRWYWx1ZTsKIHVzaW5nIFdURjo6aW5wdXRBbmRWYWx1ZTsK
IHVzaW5nIFdURjo6ZW5zdXJlUG9pbnRlcjsKIHVzaW5nIFdURjo6b3BhcXVlTWl4dHVyZTsKLQot
I2VuZGlmIC8vIEF0b21pY3NfaApJbmRleDogU291cmNlL1dURi93dGYvQXV0b21hdGljVGhyZWFk
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9BdXRvbWF0aWNUaHJlYWQuY3BwCShy
ZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9BdXRvbWF0aWNUaHJlYWQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCwxMCArMjQsMTAgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiQXV0b21hdGljVGhyZWFkLmgiCisjaW5jbHVkZSA8d3RmL0F1dG9tYXRp
Y1RocmVhZC5oPgogCi0jaW5jbHVkZSAiRGF0YUxvZy5oIgotI2luY2x1ZGUgIlRocmVhZGluZy5o
IgorI2luY2x1ZGUgPHd0Zi9EYXRhTG9nLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgog
CiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvQXV0b21hdGljVGhyZWFk
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQXV0b21hdGljVGhyZWFkLmgJKHJldmlz
aW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0F1dG9tYXRpY1RocmVhZC5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVm
IFdURl9BdXRvbWF0aWNUaHJlYWRfaAotI2RlZmluZSBXVEZfQXV0b21hdGljVGhyZWFkX2gKKyNw
cmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0JveC5oPgogI2luY2x1ZGUgPHd0Zi9Db25kaXRp
b24uaD4KQEAgLTE5NSw2ICsxOTQsMyBAQCBwcml2YXRlOgogCiB1c2luZyBXVEY6OkF1dG9tYXRp
Y1RocmVhZDsKIHVzaW5nIFdURjo6QXV0b21hdGljVGhyZWFkQ29uZGl0aW9uOwotCi0jZW5kaWYg
Ly8gV1RGX0F1dG9tYXRpY1RocmVhZF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0JhY2t3YXJk
c0dyYXBoLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQmFja3dhcmRzR3JhcGguaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQmFja3dhcmRzR3JhcGguaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBXVEZfQmFja3dhcmRzR3JhcGhfaAotI2RlZmluZSBXVEZfQmFja3dhcmRzR3JhcGhfaAor
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0
Zi9HcmFwaE5vZGVXb3JrbGlzdC5oPgpAQCAtMTY3LDYgKzE2NiwzIEBAIHByaXZhdGU6CiB9IC8v
IG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpCYWNrd2FyZHNHcmFwaDsKLQotI2VuZGlmIC8v
IFdURl9CYWNrd2FyZHNHcmFwaF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0JhZy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0JhZy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9CYWcuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQmFnX2gKLSNkZWZp
bmUgQmFnX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0R1bWJQdHJUcmFpdHMuaD4K
ICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgpAQCAtMTY2LDYgKzE2NSwzIEBAIHVzaW5nIFBv
aXNvbmVkQmFnID0gQmFnPFQsIFBvaXNvbmVkUHRyVHIKIAogdXNpbmcgV1RGOjpCYWc7CiB1c2lu
ZyBXVEY6OlBvaXNvbmVkQmFnOwotCi0jZW5kaWYgLy8gQmFnX2gKLQpJbmRleDogU291cmNlL1dU
Ri93dGYvQmFnVG9IYXNoTWFwLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQmFnVG9I
YXNoTWFwLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0JhZ1RvSGFzaE1h
cC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBCYWdUb0hhc2hNYXBfaAotI2RlZmluZSBC
YWdUb0hhc2hNYXBfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQmFnLmg+CiAjaW5j
bHVkZSA8d3RmL0hhc2hNYXAuaD4KQEAgLTQ0LDYgKzQzLDMgQEAgdm9pZCB0b0hhc2hNYXAoQmFn
PEVsZW1lbnRUeXBlLCBCYWdQdHJUcgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6
dG9IYXNoTWFwOwotCi0jZW5kaWYgLy8gQmFnVG9IYXNoTWFwX2gKLQpJbmRleDogU291cmNlL1dU
Ri93dGYvQml0VmVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9CaXRWZWN0
b3IuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9CaXRWZWN0b3IuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgIkJpdFZlY3Rvci5oIgorI2luY2x1ZGUgPHd0Zi9CaXRWZWN0b3IuaD4K
IAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRlIDxzdHJpbmcuaD4KSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL0JpdFZlY3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0JpdFZl
Y3Rvci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9CaXRWZWN0b3IuaAko
d29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAot
I2lmbmRlZiBCaXRWZWN0b3JfaAotI2RlZmluZSBCaXRWZWN0b3JfaAorI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CkBAIC00ODcs
NSArNDg2LDMgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgSGFzaFRyYWl0czxCaXRWZWN0b3I+IAogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Qml0VmVjdG9yOwotCi0jZW5kaWYgLy8gQml0
VmVjdG9yX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0JpdG1hcC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL0JpdG1hcC5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0
Zi9CaXRtYXAuaAkod29ya2luZyBjb3B5KQpAQCAtMTYsOCArMTYsOCBAQAogICogIEZvdW5kYXRp
b24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAy
MTEwLTEzMDEgIFVTQQogICoKICAqLwotI2lmbmRlZiBCaXRtYXBfaAotI2RlZmluZSBCaXRtYXBf
aAorCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGFycmF5PgogI2luY2x1ZGUgPHd0Zi9BdG9t
aWNzLmg+CkBAIC00MjAsNSArNDIwLDMgQEAgaW5saW5lIHVuc2lnbmVkIEJpdG1hcDxiaXRtYXBT
aXplLCBXb3JkVAogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Qml0bWFwOwotCi0j
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Jsb29tRmlsdGVyLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvQmxvb21GaWx0ZXIuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNl
L1dURi93dGYvQmxvb21GaWx0ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAog
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQmxvb21G
aWx0ZXJfaAotI2RlZmluZSBCbG9vbUZpbHRlcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUg
PGFycmF5PgogI2luY2x1ZGUgPHd0Zi90ZXh0L0F0b21pY1N0cmluZy5oPgpAQCAtMjYzLDUgKzI2
MiwzIEBAIGJvb2wgQ291bnRpbmdCbG9vbUZpbHRlcjxrZXlCaXRzPjo6aXNDbGUKIAogdXNpbmcg
V1RGOjpCbG9vbUZpbHRlcjsKIHVzaW5nIFdURjo6Q291bnRpbmdCbG9vbUZpbHRlcjsKLQotI2Vu
ZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Cb3guaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9Cb3guaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQm94LmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgV1RGX0JveF9oCi0jZGVmaW5lIFdURl9Cb3hfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+
CkBAIC03OSw2ICs3OCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcg
V1RGOjpCb3g7Ci0KLSNlbmRpZiAvLyBXVEZfQm94X2gKLQpJbmRleDogU291cmNlL1dURi93dGYv
QnViYmxlU29ydC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0J1YmJsZVNvcnQuaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQnViYmxlU29ydC5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVm
IEJ1YmJsZVNvcnRfaAotI2RlZmluZSBCdWJibGVTb3J0X2gKKyNwcmFnbWEgb25jZQogCiBuYW1l
c3BhY2UgV1RGIHsKIApAQCAtOTcsNiArOTYsMyBAQCB2b2lkIGJ1YmJsZVNvcnQoSXRlcmF0b3JU
eXBlIGJlZ2luLCBJdGVyCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpidWJibGVT
b3J0OwotCi0jZW5kaWYgLy8gQnViYmxlU29ydF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0J1
bXBQb2ludGVyQWxsb2NhdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQnVtcFBv
aW50ZXJBbGxvY2F0b3IuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQnVt
cFBvaW50ZXJBbGxvY2F0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBCdW1wUG9pbnRlckFsbG9jYXRvcl9oCi0jZGVm
aW5lIEJ1bXBQb2ludGVyQWxsb2NhdG9yX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8YWxn
b3JpdGhtPgogI2luY2x1ZGUgPHd0Zi9QYWdlQWxsb2NhdGlvbi5oPgpAQCAtMjQ4LDUgKzI0Nywz
IEBAIHByaXZhdGU6CiB9CiAKIHVzaW5nIFdURjo6QnVtcFBvaW50ZXJBbGxvY2F0b3I7Ci0KLSNl
bmRpZiAvLyBCdW1wUG9pbnRlckFsbG9jYXRvcl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9CeXRl
T3JkZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9CeXRlT3JkZXIuaAkocmV2aXNp
b24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQnl0ZU9yZGVyLmgJKHdvcmtpbmcgY29weSkK
QEAgLTI4LDggKzI4LDcgQEAKICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICovCiAKLSNpZm5kZWYgV1RGX0J5dGVP
cmRlcl9oCi0jZGVmaW5lIFdURl9CeXRlT3JkZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpZiBPUyhV
TklYKQogI2luY2x1ZGUgPGFycGEvaW5ldC5oPgpAQCAtNjEsNSArNjAsMyBAQCBpbmxpbmUgdWlu
dDMyX3QgaHRvbmwodWludDMyX3QgeCkgeyByZXR1CiAjZW5kaWYKIAogI2VuZGlmIC8vIE9TKFdJ
TkRPV1MpCi0KLSNlbmRpZiAvLyBXVEZfQnl0ZU9yZGVyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L0NQVVRpbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NQVVRpbWUuY3BwCShy
ZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9DUFVUaW1lLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJDUFVUaW1lLmgiCisjaW5jbHVkZSA8d3RmL0NQVVRpbWUuaD4KIAogbmFtZXNwYWNlIFdU
RiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NhbGxiYWNrQWdncmVnYXRvci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NhbGxiYWNrQWdncmVnYXRvci5oCShyZXZpc2lvbiAyMzcw
NzApCisrKyBTb3VyY2UvV1RGL3d0Zi9DYWxsYmFja0FnZ3JlZ2F0b3IuaAkod29ya2luZyBjb3B5
KQpAQCAtMjUsOSArMjUsOSBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIkNvbXBsZXRp
b25IYW5kbGVyLmgiCi0jaW5jbHVkZSAiTWFpblRocmVhZC5oIgotI2luY2x1ZGUgIlRocmVhZFNh
ZmVSZWZDb3VudGVkLmgiCisjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CisjaW5j
bHVkZSA8d3RmL01haW5UaHJlYWQuaD4KKyNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50
ZWQuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NoZWNrZWRB
cml0aG1ldGljLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQ2hlY2tlZEFyaXRobWV0
aWMuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQ2hlY2tlZEFyaXRobWV0
aWMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAg
Ki8KIAotI2lmbmRlZiBDaGVja2VkQXJpdGhtZXRpY19oCi0jZGVmaW5lIENoZWNrZWRBcml0aG1l
dGljX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIApAQCAt
OTIxLDUgKzkyMCwzIEBAIHVzaW5nIFdURjo6Y2hlY2tlZFN1bTsKIHVzaW5nIFdURjo6ZGlmZmVy
ZW5jZU92ZXJmbG93czsKIHVzaW5nIFdURjo6cHJvZHVjdE92ZXJmbG93czsKIHVzaW5nIFdURjo6
c3VtT3ZlcmZsb3dzOwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NoZWNrZWRCb29s
ZWFuLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQ2hlY2tlZEJvb2xlYW4uaAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQ2hlY2tlZEJvb2xlYW4uaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRl
ZiBDaGVja2VkQm9vbGVhbl9oCi0jZGVmaW5lIENoZWNrZWRCb29sZWFuX2gKKyNwcmFnbWEgb25j
ZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIApAQCAtNjYsNSArNjUsMyBAQCBwcml2
YXRlOgogICAgIG11dGFibGUgYm9vbCBtX2NoZWNrZWQ7CiAjZW5kaWYKIH07Ci0KLSNlbmRpZgpJ
bmRleDogU291cmNlL1dURi93dGYvQ2xvY2tUeXBlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9DbG9ja1R5cGUuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0
Zi9DbG9ja1R5cGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAog
I2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkNsb2NrVHlwZS5oIgorI2luY2x1ZGUgPHd0
Zi9DbG9ja1R5cGUuaD4KIAogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgogCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9DbG9ja1R5cGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9D
bG9ja1R5cGUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQ2xvY2tUeXBl
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICov
CiAKLSNpZm5kZWYgV1RGX0Nsb2NrVHlwZV9oCi0jZGVmaW5lIFdURl9DbG9ja1R5cGVfaAorI3By
YWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC00MCw1ICszOSwzIEBAIFdURl9FWFBP
UlRfUFJJVkFURSB2b2lkIHByaW50SW50ZXJuYWwoUHIKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1
c2luZyBXVEY6OkNsb2NrVHlwZTsKLQotI2VuZGlmIC8vIFdURl9DbG9ja1R5cGVfaApJbmRleDog
U291cmNlL1dURi93dGYvQ29tbWFQcmludGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvQ29tbWFQcmludGVyLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Nv
bW1hUHJpbnRlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMywxMCArMjMsOSBAQAogICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4gCiAgKi8KIAotI2lmbmRlZiBDb21tYVByaW50ZXJfaAotI2RlZmluZSBDb21tYVByaW50
ZXJfaAorI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJQcmludFN0cmVhbS5oIgorI2luY2x1ZGUg
PHd0Zi9QcmludFN0cmVhbS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtNjEsNiArNjAsMyBA
QCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Q29tbWFQcmludGVy
OwotCi0jZW5kaWYgLy8gQ29tbWFQcmludGVyX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvQ29t
cGlsYXRpb25UaHJlYWQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NvbXBpbGF0
aW9uVGhyZWFkLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQ29tcGls
YXRpb25UaHJlYWQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMiArMjQsMTIgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ29tcGlsYXRpb25UaHJlYWQuaCIKKyNp
bmNsdWRlIDx3dGYvQ29tcGlsYXRpb25UaHJlYWQuaD4KIAotI2luY2x1ZGUgIlN0ZExpYkV4dHJh
cy5oIgotI2luY2x1ZGUgIlRocmVhZFNwZWNpZmljLmgiCi0jaW5jbHVkZSAiVGhyZWFkaW5nLmgi
CiAjaW5jbHVkZSA8bXV0ZXg+CisjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgorI2luY2x1
ZGUgPHd0Zi9UaHJlYWRTcGVjaWZpYy5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KIAog
bmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NvbXBpbGF0aW9uVGhyZWFk
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQ29tcGlsYXRpb25UaHJlYWQuaAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQ29tcGlsYXRpb25UaHJlYWQuaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBDb21waWxhdGlvblRocmVhZF9oCi0jZGVmaW5lIENvbXBpbGF0aW9uVGhyZWFkX2gKKyNw
cmFnbWEgb25jZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtNTQsNiArNTMsMyBAQCBwcml2YXRl
OgogCiB1c2luZyBXVEY6OkNvbXBpbGF0aW9uU2NvcGU7CiB1c2luZyBXVEY6OmV4Y2hhbmdlSXND
b21waWxhdGlvblRocmVhZDsKLQotI2VuZGlmIC8vIENvbXBpbGF0aW9uVGhyZWFkX2gKLQpJbmRl
eDogU291cmNlL1dURi93dGYvQ29tcGlsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9Db21waWxlci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9Db21waWxl
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAq
LwogCi0jaWZuZGVmIFdURl9Db21waWxlcl9oCi0jZGVmaW5lIFdURl9Db21waWxlcl9oCisjcHJh
Z21hIG9uY2UKIAogLyogQ09NUElMRVIoKSAtIHRoZSBjb21waWxlciBiZWluZyB1c2VkIHRvIGJ1
aWxkIHRoZSBwcm9qZWN0ICovCiAjZGVmaW5lIENPTVBJTEVSKFdURl9GRUFUVVJFKSAoZGVmaW5l
ZCBXVEZfQ09NUElMRVJfIyNXVEZfRkVBVFVSRSAgJiYgV1RGX0NPTVBJTEVSXyMjV1RGX0ZFQVRV
UkUpCkBAIC00NjQsNSArNDYzLDMgQEAKIAogI2RlZmluZSBJR05PUkVfTlVMTF9DSEVDS19XQVJO
SU5HU19CRUdJTiBJR05PUkVfV0FSTklOR1NfQkVHSU4oIm5vbm51bGwiKQogI2RlZmluZSBJR05P
UkVfTlVMTF9DSEVDS19XQVJOSU5HU19FTkQgSUdOT1JFX1dBUk5JTkdTX0VORAotCi0jZW5kaWYg
LyogV1RGX0NvbXBpbGVyX2ggKi8KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NvbmN1cnJlbnRQdHJI
YXNoU2V0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Db25jdXJyZW50UHRySGFz
aFNldC5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0NvbmN1cnJlbnRQ
dHJIYXNoU2V0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNp
bmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJDb25jdXJyZW50UHRySGFzaFNldC5oIgorI2lu
Y2x1ZGUgPHd0Zi9Db25jdXJyZW50UHRySGFzaFNldC5oPgogCiAjaW5jbHVkZSA8d3RmL0RhdGFM
b2cuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvQ29uY3VycmVudFZlY3Rvci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NvbmN1cnJlbnRWZWN0b3IuaAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvQ29uY3VycmVudFZlY3Rvci5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw4ICsyNiw3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQ29uY3VycmVudFZl
Y3Rvcl9oCi0jZGVmaW5lIENvbmN1cnJlbnRWZWN0b3JfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDx3dGYvQ29uY3VycmVudEJ1ZmZlci5oPgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5o
PgpAQCAtMjY1LDUgKzI2NCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNp
bmcgV1RGOjpDb25jdXJyZW50VmVjdG9yOwotCi0jZW5kaWYgLy8gQ29uY3VycmVudFZlY3Rvcl9o
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Db25kaXRpb24uaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9Db25kaXRpb24uaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYv
Q29uZGl0aW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAogICovCiAKLSNpZm5kZWYgV1RGX0NvbmRpdGlvbl9oCi0jZGVmaW5lIFdURl9Db25kaXRp
b25faAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KICNpbmNs
dWRlIDx3dGYvUGFya2luZ0xvdC5oPgpAQCAtMTc4LDYgKzE3NywzIEBAIHVzaW5nIFN0YXRpY0Nv
bmRpdGlvbiA9IENvbmRpdGlvbjsKIAogdXNpbmcgV1RGOjpDb25kaXRpb247CiB1c2luZyBXVEY6
OlN0YXRpY0NvbmRpdGlvbjsKLQotI2VuZGlmIC8vIFdURl9Db25kaXRpb25faAotCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9Db3VudGluZ0xvY2suY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL0NvdW50aW5nTG9jay5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3Rm
L0NvdW50aW5nTG9jay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ291bnRpbmdMb2NrLmgiCisjaW5jbHVk
ZSA8d3RmL0NvdW50aW5nTG9jay5oPgogCiAjaW5jbHVkZSA8d3RmL0xvY2tBbGdvcml0aG1Jbmxp
bmVzLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Nyb3NzVGhyZWFkVGFza0hhbmRsZXIuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0Nyb3NzVGhyZWFkVGFza0hhbmRsZXIuY3Bw
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9Dcm9zc1RocmVhZFRhc2tIYW5k
bGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJDcm9zc1RocmVhZFRhc2tIYW5kbGVyLmgiCisjaW5jbHVk
ZSA8d3RmL0Nyb3NzVGhyZWFkVGFza0hhbmRsZXIuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuY3BwCShyZXZpc2lvbiAy
MzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9DcnlwdG9ncmFwaGljVXRpbGl0aWVzLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJDcnlwdG9ncmFwaGljVXRpbGl0aWVzLmgiCisjaW5jbHVkZSA8d3RmL0NyeXB0
b2dyYXBoaWNVdGlsaXRpZXMuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9DcnlwdG9ncmFwaGljVXRpbGl0aWVzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMs
OCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfQ3J5cHRvZ3Jh
cGhpY1V0aWxpdGllc19oCi0jZGVmaW5lIFdURl9DcnlwdG9ncmFwaGljVXRpbGl0aWVzX2gKKyNw
cmFnbWEgb25jZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMzQsNSArMzMsMyBAQCBXVEZfRVhQ
T1JUX1BSSVZBVEUgaW50IGNvbnN0YW50VGltZU1lbWNtCiB9CiAKIHVzaW5nIFdURjo6Y29uc3Rh
bnRUaW1lTWVtY21wOwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NyeXB0b2dyYXBo
aWNhbGx5UmFuZG9tTnVtYmVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Dcnlw
dG9ncmFwaGljYWxseVJhbmRvbU51bWJlci5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjgsMTIgKzI4LDEyIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIkNyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmgiCisjaW5jbHVkZSA8d3RmL0NyeXB0
b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmg+CiAKLSNpbmNsdWRlICJOZXZlckRlc3Ryb3llZC5o
IgotI2luY2x1ZGUgIk9TUmFuZG9tU291cmNlLmgiCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVk
ZSA8d3RmL0xvY2suaD4KKyNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KKyNpbmNsdWRl
IDx3dGYvT1NSYW5kb21Tb3VyY2UuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXIuaAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXIu
aAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8K
IAotI2lmbmRlZiBXVEZfQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXJfaAotI2RlZmluZSBX
VEZfQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDxzdGRpbnQuaD4KIApAQCAtMzcsNSArMzYsMyBAQCBXVEZfRVhQT1JUX1BSSVZBVEUgdm9p
ZCBjcnlwdG9ncmFwaGljYWxsCiAKIHVzaW5nIFdURjo6Y3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21O
dW1iZXI7CiB1c2luZyBXVEY6OmNyeXB0b2dyYXBoaWNhbGx5UmFuZG9tVmFsdWVzOwotCi0jZW5k
aWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0N1cnJlbnRUaW1lLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9DdXJyZW50VGltZS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL0N1cnJlbnRUaW1lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzIsOSArMzIsMTAg
QEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTW9ub3RvbmljVGltZS5o
IgotI2luY2x1ZGUgIldhbGxUaW1lLmgiCisjaW5jbHVkZSA8d3RmL01vbm90b25pY1RpbWUuaD4K
KwogI2luY2x1ZGUgPHRpbWUuaD4KKyNpbmNsdWRlIDx3dGYvV2FsbFRpbWUuaD4KIAogI2lmIE9T
KERBUldJTikKICNpbmNsdWRlIDxtYWNoL21hY2guaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Rh
dGFMb2cuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0RhdGFMb2cuY3BwCShyZXZp
c2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9EYXRhTG9nLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjQsNyArMjQsOCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJEYXRhTG9nLmgiCisjaW5jbHVkZSA8d3RmL0RhdGFMb2cuaD4KKwogI2luY2x1ZGUgPHN0ZGFy
Zy5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi9GaWxlUHJpbnRTdHJlYW0u
aD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0RhdGFMb2cuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9EYXRhTG9nLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Rh
dGFMb2cuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4g
CiAgKi8KIAotI2lmbmRlZiBEYXRhTG9nX2gKLSNkZWZpbmUgRGF0YUxvZ19oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPHN0ZGFyZy5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+CkBAIC03NCw2ICs3
MywzIEBAIHVzaW5nIFdURjo6ZGF0YUxvZ0lmOwogdXNpbmcgV1RGOjpkYXRhTG9nTG5JZjsKIHVz
aW5nIFdURjo6ZGF0YUxvZ0Y7CiB1c2luZyBXVEY6OmRhdGFMb2dGU3RyaW5nOwotCi0jZW5kaWYg
Ly8gRGF0YUxvZ19oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0RhdGVNYXRoLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9EYXRlTWF0aC5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL0RhdGVNYXRoLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzAsMTggKzcw
LDE3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkRhdGVNYXRoLmgi
Ci0KLSNpbmNsdWRlICJBc3NlcnRpb25zLmgiCi0jaW5jbHVkZSAiQVNDSUlDVHlwZS5oIgotI2lu
Y2x1ZGUgIk1hdGhFeHRyYXMuaCIKLSNpbmNsdWRlICJTdGRMaWJFeHRyYXMuaCIKKyNpbmNsdWRl
IDx3dGYvRGF0ZU1hdGguaD4KIAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRlIDxsaW1p
dHMuaD4KICNpbmNsdWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8
dGltZS5oPgorI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CisjaW5jbHVkZSA8d3RmL0FTQ0lJ
Q1R5cGUuaD4KKyNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgorI2luY2x1ZGUgPHd0Zi9TdGRM
aWJFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKICNpZiBP
UyhXSU5ET1dTKQpJbmRleDogU291cmNlL1dURi93dGYvRGF0ZU1hdGguaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9EYXRlTWF0aC5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2Uv
V1RGL3d0Zi9EYXRlTWF0aC5oCSh3b3JraW5nIGNvcHkpCkBAIC00MCw4ICs0MCw3IEBACiAgKgog
ICovCiAKLSNpZm5kZWYgRGF0ZU1hdGhfaAotI2RlZmluZSBEYXRlTWF0aF9oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPG1hdGguaD4KICNpbmNsdWRlIDxzdGRpbnQuaD4KQEAgLTE1NCw1ICsx
NTMsMyBAQCB1c2luZyBXVEY6OnBhcnNlRGF0ZUZyb21OdWxsVGVybWluYXRlZENoCiB1c2luZyBX
VEY6Om1ha2VSRkMyODIyRGF0ZVN0cmluZzsKIHVzaW5nIFdURjo6TG9jYWxUaW1lT2Zmc2V0Owog
dXNpbmcgV1RGOjpjYWxjdWxhdGVMb2NhbFRpbWVPZmZzZXQ7Ci0KLSNlbmRpZiAvLyBEYXRlTWF0
aF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9EZWNpbWFsTnVtYmVyLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9EZWNpbWFsTnVtYmVyLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysg
U291cmNlL1dURi93dGYvRGVjaW1hbE51bWJlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcg
KzI0LDggQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiRGVjaW1hbE51
bWJlci5oIgorI2luY2x1ZGUgPHd0Zi9EZWNpbWFsTnVtYmVyLmg+CisKICNpbmNsdWRlIDxtYXRo
Lmg+CiAjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZT
dHJpbmcuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0RlY2ltYWxOdW1iZXIuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi9EZWNpbWFsTnVtYmVyLmgJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL0RlY2ltYWxOdW1iZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCAr
MjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBEZWNpbWFsTnVtYmVyX2gK
LSNkZWZpbmUgRGVjaW1hbE51bWJlcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPG1hdGgu
aD4KICNpbmNsdWRlIDx3dGYvZHRvYS5oPgpAQCAtMTA0LDUgKzEwMywzIEBAIHByaXZhdGU6CiB1
c2luZyBXVEY6OkRlY2ltYWxOdW1iZXI7CiB1c2luZyBXVEY6OlJvdW5kaW5nU2lnbmlmaWNhbnRG
aWd1cmVzOwogdXNpbmcgV1RGOjpSb3VuZGluZ0RlY2ltYWxQbGFjZXM7Ci0KLSNlbmRpZiAvLyBE
ZWNpbWFsTnVtYmVyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0RlcXVlLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvRGVxdWUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dU
Ri93dGYvRGVxdWUuaAkod29ya2luZyBjb3B5KQpAQCAtMjcsOCArMjcsNyBAQAogICogVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi0jaWZuZGVmIFdURl9EZXF1ZV9oCi0jZGVmaW5lIFdURl9EZXF1ZV9oCisjcHJh
Z21hIG9uY2UKIAogLy8gRklYTUU6IENvdWxkIG1vdmUgd2hhdCBWZWN0b3IgYW5kIERlcXVlIHNo
YXJlIGludG8gYSBzZXBhcmF0ZSBmaWxlLgogLy8gRGVxdWUgZG9lc24ndCBhY3R1YWxseSB1c2Ug
VmVjdG9yLgpAQCAtNzg1LDUgKzc4NCwzIEBAIGlubGluZSBUKiBEZXF1ZUl0ZXJhdG9yQmFzZTxU
LCBpbmxpbmVDYXAKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkRlcXVlOwotCi0j
ZW5kaWYgLy8gV1RGX0RlcXVlX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Rpc2FsbG93Q1R5cGUu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9EaXNhbGxvd0NUeXBlLmgJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Rpc2FsbG93Q1R5cGUuaAkod29ya2luZyBjb3B5
KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9EaXNh
bGxvd0NUeXBlX2gKLSNkZWZpbmUgV1RGX0Rpc2FsbG93Q1R5cGVfaAorI3ByYWdtYSBvbmNlCiAK
IC8vIFRoZSBiZWhhdmlvciBvZiBtYW55IG9mIHRoZSBmdW5jdGlvbnMgaW4gdGhlIDxjdHlwZS5o
PiBoZWFkZXIgaXMgZGVwZW5kZW50CiAvLyBvbiB0aGUgY3VycmVudCBsb2NhbGUuIEJ1dCBhbG1v
c3QgYWxsIHVzZXMgb2YgdGhlc2UgZnVuY3Rpb25zIGFyZSBmb3IKQEAgLTc5LDUgKzc4LDMgQEAK
ICNkZWZpbmUgdG91cHBlciB0b3VwcGVyX1dURl9QbGVhc2VfdXNlX0FTQ0lJQ1R5cGVfaW5zdGVh
ZF9vZl9jdHlwZV9zZWVfY29tbWVudF9pbl9BU0NJSUNUeXBlX2gKIAogI2VuZGlmCi0KLSNlbmRp
ZgpJbmRleDogU291cmNlL1dURi93dGYvRG9taW5hdG9ycy5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL0RvbWluYXRvcnMuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93
dGYvRG9taW5hdG9ycy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURkRvbWluYXRvcnNfaAotI2RlZmluZSBXVEZEb21p
bmF0b3JzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0NvbW1hUHJpbnRlci5oPgog
I2luY2x1ZGUgPHd0Zi9GYXN0Qml0VmVjdG9yLmg+CkBAIC03NDgsNiArNzQ3LDMgQEAgcHJpdmF0
ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkRvbWluYXRvcnM7Ci0KLSNlbmRp
ZiAvLyBXVEZEb21pbmF0b3JzX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvRG91Ymx5TGlua2Vk
TGlzdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0RvdWJseUxpbmtlZExpc3QuaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvRG91Ymx5TGlua2VkTGlzdC5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBEb3VibHlMaW5rZWRMaXN0X2gKLSNkZWZpbmUgRG91
Ymx5TGlua2VkTGlzdF9oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTIx
Niw1ICsyMTUsMyBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBpbmxpbmUgdm9pZCBEb3VibHlMCiAK
IHVzaW5nIFdURjo6RG91Ymx5TGlua2VkTGlzdE5vZGU7CiB1c2luZyBXVEY6OkRvdWJseUxpbmtl
ZExpc3Q7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvRmFzdEJpdFZlY3Rvci5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvRmFzdEJpdFZlY3Rvci5jcHAJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Zhc3RCaXRWZWN0b3IuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIkZhc3RCaXRWZWN0b3IuaCIKKyNpbmNsdWRlIDx3dGYvRmFzdEJpdFZlY3Rvci5oPgogCiBu
YW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvRmFzdE1hbGxvYy5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvRmFzdE1hbGxvYy5jcHAJKHJldmlzaW9uIDIzNzA3
MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
NCwxMSArMjQsMTEgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiRmFz
dE1hbGxvYy5oIgorI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAKLSNpbmNsdWRlICJDaGVj
a2VkQXJpdGhtZXRpYy5oIgogI2luY2x1ZGUgPGxpbWl0cz4KICNpbmNsdWRlIDxzdHJpbmcuaD4K
KyNpbmNsdWRlIDx3dGYvQ2hlY2tlZEFyaXRobWV0aWMuaD4KICNpbmNsdWRlIDx3dGYvRGF0YUxv
Zy5oPgogCiAjaWYgT1MoV0lORE9XUykKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2Mu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmgJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuaAkod29ya2luZyBjb3B5KQpAQCAt
MTgsOCArMTgsNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9GYXN0TWFsbG9jX2gKLSNkZWZp
bmUgV1RGX0Zhc3RNYWxsb2NfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxuZXc+CiAjaW5j
bHVkZSA8c3RkbGliLmg+CkBAIC0yOTgsNSArMjk3LDMgQEAgdHlwZWRlZiBpbnQgX190aGlzSXNI
ZXJlVG9Gb3JjZUFTZW1pY29sbwogI2RlZmluZSBXVEZfTUFLRV9TVFJVQ1RfRkFTVF9BTExPQ0FU
RUQgXAogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEX0lNUEwgXAogdHlwZWRlZiBpbnQgX190
aGlzSXNIZXJlVG9Gb3JjZUFTZW1pY29sb25BZnRlclRoaXNNYWNybwotCi0jZW5kaWYgLyogV1RG
X0Zhc3RNYWxsb2NfaCAqLwpJbmRleDogU291cmNlL1dURi93dGYvRmVhdHVyZURlZmluZXMuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCShyZXZpc2lvbiAy
MzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw4ICsyNiw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX0Zl
YXR1cmVEZWZpbmVzX2gKLSNkZWZpbmUgV1RGX0ZlYXR1cmVEZWZpbmVzX2gKKyNwcmFnbWEgb25j
ZQogCiAvKiBVc2UgdGhpcyBmaWxlIHRvIGxpc3QgX2FsbF8gRU5BQkxFKCkgbWFjcm9zLiBEZWZp
bmUgdGhlIG1hY3JvcyB0byBiZSBvbmUgb2YgdGhlIGZvbGxvd2luZyB2YWx1ZXM6CiAgKiAgLSAi
MCIgZGlzYWJsZXMgdGhlIGZlYXR1cmUgYnkgZGVmYXVsdC4gVGhlIGZlYXR1cmUgY2FuIHN0aWxs
IGJlIGVuYWJsZWQgZm9yIGEgc3BlY2lmaWMgcG9ydCBvciBlbnZpcm9ubWVudC4KQEAgLTcxOCw1
ICs3MTcsMyBAQCB0aGUgcHVibGljIGlPUyBTREsuIFNlZSA8aHR0cHM6Ly93ZWJraXQuCiAjaWYg
RU5BQkxFKFdFQkdMMikgJiYgIUVOQUJMRShXRUJHTCkKICNlcnJvciAiRU5BQkxFKFdFQkdMMikg
cmVxdWlyZXMgRU5BQkxFKFdFQkdMKSIKICNlbmRpZgotCi0jZW5kaWYgLyogV1RGX0ZlYXR1cmVE
ZWZpbmVzX2ggKi8KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0ZpbGVQcmludFN0cmVhbS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvRmlsZVByaW50U3RyZWFtLmNwcAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvRmlsZVByaW50U3RyZWFtLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJGaWxlUHJpbnRTdHJlYW0uaCIKKyNpbmNsdWRlIDx3dGYvRmlsZVByaW50U3RyZWFtLmg+
CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9GaWxlUHJpbnRTdHJl
YW0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9GaWxlUHJpbnRTdHJlYW0uaAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvRmlsZVByaW50U3RyZWFtLmgJKHdvcmtp
bmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5k
ZWYgRmlsZVByaW50U3RyZWFtX2gKLSNkZWZpbmUgRmlsZVByaW50U3RyZWFtX2gKKyNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDx3dGYvUHJpbnRTdHJlYW0uaD4K
QEAgLTU2LDYgKzU1LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBX
VEY6OkZpbGVQcmludFN0cmVhbTsKLQotI2VuZGlmIC8vIEZpbGVQcmludFN0cmVhbV9oCi0KSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL0ZsaXBCeXRlcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL0ZsaXBCeXRlcy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9GbGlw
Qnl0ZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4g
CiAgKi8KIAotI2lmbmRlZiBGbGlwQnl0ZXNfaAotI2RlZmluZSBGbGlwQnl0ZXNfaAorI3ByYWdt
YSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC0xMTIsNiArMTExLDMgQEAgaW5saW5lIFQg
ZmxpcEJ5dGVzSWZMaXR0bGVFbmRpYW4oVCB2YWx1ZQogdXNpbmcgV1RGOjpuZWVkVG9GbGlwQnl0
ZXNJZkxpdHRsZUVuZGlhbjsKIHVzaW5nIFdURjo6ZmxpcEJ5dGVzOwogdXNpbmcgV1RGOjpmbGlw
Qnl0ZXNJZkxpdHRsZUVuZGlhbjsKLQotI2VuZGlmIC8vIEZsaXBCeXRlc19oCi0KSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL0Z1bmN0aW9uRGlzcGF0Y2hlci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvRnVuY3Rpb25EaXNwYXRjaGVyLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291
cmNlL1dURi93dGYvRnVuY3Rpb25EaXNwYXRjaGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQs
NyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJGdW5jdGlv
bkRpc3BhdGNoZXIuaCIKKyNpbmNsdWRlIDx3dGYvRnVuY3Rpb25EaXNwYXRjaGVyLmg+CiAKIG5h
bWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9GdW5jdGlvbkRpc3BhdGNoZXIu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9GdW5jdGlvbkRpc3BhdGNoZXIuaAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvRnVuY3Rpb25EaXNwYXRjaGVyLmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KICAqLwogCi0jaWZuZGVmIEZ1bmN0aW9uRGlzcGF0Y2hlcl9oCi0jZGVmaW5lIEZ1
bmN0aW9uRGlzcGF0Y2hlcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9GdW5jdGlv
bi5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRTYWZlUmVmQ291bnRlZC5oPgpAQCAtNDcsNSArNDYs
MyBAQCBwcm90ZWN0ZWQ6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpGdW5jdGlv
bkRpc3BhdGNoZXI7Ci0KLSNlbmRpZiAvLyBGdW5jdGlvbkRpc3BhdGNoZXJfaApJbmRleDogU291
cmNlL1dURi93dGYvR2V0UHRyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvR2V0UHRy
LmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0dldFB0ci5oCSh3b3JraW5n
IGNvcHkpCkBAIC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX0dldFB0cl9o
Ci0jZGVmaW5lIFdURl9HZXRQdHJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxtZW1vcnk+
CiAKQEAgLTc4LDUgKzc3LDMgQEAgc3RydWN0IEdldFB0ckhlbHBlcjxzdGQ6OnVuaXF1ZV9wdHI8
VCwgRAogfTsKIAogfSAvLyBuYW1lc3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBXVEZfR2V0UHRyX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL0dpZ2FjYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9HaWdhY2FnZS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3Rm
L0dpZ2FjYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNp
bmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJHaWdhY2FnZS5oIgorI2luY2x1ZGUgPHd0Zi9H
aWdhY2FnZS5oPgogCiAjaW5jbHVkZSA8d3RmL0F0b21pY3MuaD4KICNpbmNsdWRlIDx3dGYvUGFn
ZUJsb2NrLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9HbG9iYWxWZXJzaW9uLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9HbG9iYWxWZXJzaW9uLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvR2xvYmFsVmVyc2lvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiR2xv
YmFsVmVyc2lvbi5oIgorI2luY2x1ZGUgPHd0Zi9HbG9iYWxWZXJzaW9uLmg+CiAKICNpbmNsdWRl
IDx3dGYvQXRvbWljcy5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9HcmFwaE5vZGVXb3JrbGlz
dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0dyYXBoTm9kZVdvcmtsaXN0LmgJKHJl
dmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0dyYXBoTm9kZVdvcmtsaXN0LmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgR3JhcGhOb2RlV29ya2xpc3RfaAotI2RlZmluZSBHcmFwaE5vZGVXb3JrbGlzdF9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAKQEAgLTIxOCw2ICsyMTcs
MyBAQCB1c2luZyBXVEY6OkV4dGVuZGVkR3JhcGhOb2RlV29ya2xpc3Q7CiB1c2luZyBXVEY6Okdy
YXBoVmlzaXRPcmRlcjsKIHVzaW5nIFdURjo6R3JhcGhOb2RlV2l0aE9yZGVyOwogdXNpbmcgV1RG
OjpQb3N0T3JkZXJHcmFwaE5vZGVXb3JrbGlzdDsKLQotI2VuZGlmIC8vIEdyYXBoTm9kZVdvcmts
aXN0X2gKLQpJbmRleDogU291cmNlL1dURi93dGYvR3JlZ29yaWFuRGF0ZVRpbWUuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0dyZWdvcmlhbkRhdGVUaW1lLmNwcAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvR3JlZ29yaWFuRGF0ZVRpbWUuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw5ICsyMyw5IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2lu
Y2x1ZGUgIkdyZWdvcmlhbkRhdGVUaW1lLmgiCisjaW5jbHVkZSA8d3RmL0dyZWdvcmlhbkRhdGVU
aW1lLmg+CiAKLSNpbmNsdWRlICJEYXRlTWF0aC5oIgorI2luY2x1ZGUgPHd0Zi9EYXRlTWF0aC5o
PgogCiAjaWYgT1MoV0lORE9XUykKICNpbmNsdWRlIDx3aW5kb3dzLmg+CkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9HcmVnb3JpYW5EYXRlVGltZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L0dyZWdvcmlhbkRhdGVUaW1lLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3Rm
L0dyZWdvcmlhbkRhdGVUaW1lLmgJKHdvcmtpbmcgY29weSkKQEAgLTIyLDggKzIyLDcgQEAKICAq
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXVEZfR3JlZ29yaWFuRGF0ZVRpbWVfaAotI2RlZmlu
ZSBXVEZfR3JlZ29yaWFuRGF0ZVRpbWVfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxzdHJp
bmcuaD4KICNpbmNsdWRlIDx0aW1lLmg+CkBAIC0xMjQsNSArMTIzLDMgQEAgcHJpdmF0ZToKIH0g
Ly8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkdyZWdvcmlhbkRhdGVUaW1lOwotCi0jZW5k
aWYgLy8gV1RGX0dyZWdvcmlhbkRhdGVUaW1lX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0hhc2hG
dW5jdGlvbnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9IYXNoRnVuY3Rpb25zLmgJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0hhc2hGdW5jdGlvbnMuaAkod29y
a2luZyBjb3B5KQpAQCAtMTgsOCArMTgsNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9IYXNo
RnVuY3Rpb25zX2gKLSNkZWZpbmUgV1RGX0hhc2hGdW5jdGlvbnNfaAorI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDx0dXBsZT4KQEAgLTI3Niw1ICsyNzUsMyBA
QCBuYW1lc3BhY2UgV1RGIHsKIHVzaW5nIFdURjo6RGVmYXVsdEhhc2g7CiB1c2luZyBXVEY6Oklu
dEhhc2g7CiB1c2luZyBXVEY6OlB0ckhhc2g7Ci0KLSNlbmRpZiAvLyBXVEZfSGFzaEZ1bmN0aW9u
c19oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9IYXNoTWFwLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvSGFzaE1hcC5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9I
YXNoTWFwLmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDggKzE4LDcgQEAKICAqCiAgKi8KIAotI2lm
bmRlZiBXVEZfSGFzaE1hcF9oCi0jZGVmaW5lIFdURl9IYXNoTWFwX2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8aW5pdGlhbGl6ZXJfbGlzdD4KICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgpA
QCAtNTc5LDUgKzU3OCwzIEBAIGlubGluZSBib29sIG9wZXJhdG9yIT0oY29uc3QgSGFzaE1hcDxU
LCAKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6Okhhc2hNYXA7Ci0KLSNlbmRpZiAv
KiBXVEZfSGFzaE1hcF9oICovCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9IYXNoTWV0aG9kLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvSGFzaE1ldGhvZC5oCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi9IYXNoTWV0aG9kLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDgg
KzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgSGFzaE1ldGhvZF9oCi0j
ZGVmaW5lIEhhc2hNZXRob2RfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvU3RkTGli
RXh0cmFzLmg+CiAKQEAgLTQxLDUgKzQwLDMgQEAgc3RydWN0IEhhc2hNZXRob2QgewogfSAvLyBu
YW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6SGFzaE1ldGhvZDsKLQotI2VuZGlmIC8vIEhhc2hN
ZXRob2RfaApJbmRleDogU291cmNlL1dURi93dGYvSGFzaFNldC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL0hhc2hTZXQuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93
dGYvSGFzaFNldC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAK
LSNpZm5kZWYgV1RGX0hhc2hTZXRfaAotI2RlZmluZSBXVEZfSGFzaFNldF9oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPGluaXRpYWxpemVyX2xpc3Q+CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQu
aD4KQEAgLTM4NCw1ICszODMsMyBAQCB2b2lkIEhhc2hTZXQ8VCwgVSwgVj46OmFkZChzdGQ6Omlu
aXRpYWxpCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpIYXNoU2V0OwotCi0jZW5k
aWYgLyogV1RGX0hhc2hTZXRfaCAqLwpJbmRleDogU291cmNlL1dURi93dGYvSGFzaFRhYmxlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwCShyZXZpc2lvbiAy
MzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0xOCwxMCArMTgsMTAgQEAKICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJI
YXNoVGFibGUuaCIKKyNpbmNsdWRlIDx3dGYvSGFzaFRhYmxlLmg+CiAKLSNpbmNsdWRlICJEYXRh
TG9nLmgiCiAjaW5jbHVkZSA8bXV0ZXg+CisjaW5jbHVkZSA8d3RmL0RhdGFMb2cuaD4KIAogbmFt
ZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0hhc2hUcmFpdHMuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9IYXNoVHJhaXRzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL0hhc2hUcmFpdHMuaAkod29ya2luZyBjb3B5KQpAQCAtMTgsOCArMTgs
NyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9IYXNoVHJhaXRzX2gKLSNkZWZpbmUgV1RGX0hh
c2hUcmFpdHNfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8
dXRpbGl0eT4KQEAgLTM4MCw1ICszNzksMyBAQCB1c2luZyBXVEY6OktleVZhbHVlUGFpcjsKIHVz
aW5nIFdURjo6UGFpckhhc2hUcmFpdHM7CiB1c2luZyBXVEY6Ok51bGxhYmxlSGFzaFRyYWl0czsK
IHVzaW5nIFdURjo6U2ltcGxlQ2xhc3NIYXNoVHJhaXRzOwotCi0jZW5kaWYgLy8gV1RGX0hhc2hU
cmFpdHNfaApJbmRleDogU291cmNlL1dURi93dGYvSW5kZW50ZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9JbmRlbnRlci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RG
L3d0Zi9JbmRlbnRlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgogICovCiAKLSNpZm5kZWYgSW5kZW50ZXJfaAotI2RlZmluZSBJbmRlbnRlcl9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgogI2luY2x1ZGUgPHd0
Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtNjMsNSArNjIsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1l
c3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6SW5kZW50ZXI7Ci0KLSNlbmRpZiAvLyBJbmRlbnRlcl9o
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9JbmRleFNwYXJzZVNldC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL0luZGV4U3BhcnNlU2V0LmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL0luZGV4U3BhcnNlU2V0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcg
QEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBJbmRleFNwYXJzZVNldF9oCi0jZGVm
aW5lIEluZGV4U3BhcnNlU2V0X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL1ZlY3Rv
ci5oPgogCkBAIC0yMzAsNSArMjI5LDMgQEAgYXV0byBJbmRleFNwYXJzZVNldDxFbnRyeVR5cGUs
IEVudHJ5VHlwZQogCiB1c2luZyBXVEY6OkRlZmF1bHRJbmRleFNwYXJzZVNldFRyYWl0czsKIHVz
aW5nIFdURjo6SW5kZXhTcGFyc2VTZXQ7Ci0KLSNlbmRpZiAvLyBJbmRleFNwYXJzZVNldF9oCklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9JbmxpbmVBU00uaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9JbmxpbmVBU00uaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvSW5s
aW5lQVNNLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDkgKzIzLDEwIEBACiAgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LiAKICAqLwogCi0jaWZuZGVmIElubGluZUFTTV9oCi0jZGVmaW5lIElubGluZUFTTV9oCisjcHJh
Z21hIG9uY2UKKwogI2luY2x1ZGUgPHd0Zi9QbGF0Zm9ybS5oPgorCiAjaWYgIUNQVShVTktOT1dO
KQogCiAvKiBhc20gZGlyZWN0aXZlIGhlbHBlcnMgKi8gCkBAIC05OSw0ICsxMDAsMyBAQAogI2Vu
ZGlmCiAKICNlbmRpZiAvLyAhQ1BVKFVOS05PV04pCi0jZW5kaWYgLy8gSW5saW5lQVNNX2gKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL0luc2VydGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL0luc2VydGlvbi5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9JbnNl
cnRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4g
CiAgKi8KIAotI2lmbmRlZiBJbnNlcnRpb25faAotI2RlZmluZSBJbnNlcnRpb25faAorI3ByYWdt
YSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC04MSw1ICs4MCwzIEBAIHNpemVfdCBleGVj
dXRlSW5zZXJ0aW9ucyhUYXJnZXRWZWN0b3JUeXAKIAogdXNpbmcgV1RGOjpJbnNlcnRpb247CiB1
c2luZyBXVEY6OmV4ZWN1dGVJbnNlcnRpb25zOwotCi0jZW5kaWYgLy8gSW5zZXJ0aW9uX2gKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL0l0ZXJhdG9yQWRhcHRvcnMuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9JdGVyYXRvckFkYXB0b3JzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL0l0ZXJhdG9yQWRhcHRvcnMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMs
NyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYg
V1RGX0l0ZXJhdG9yQWRhcHRvcnNfaAotI2RlZmluZSBXVEZfSXRlcmF0b3JBZGFwdG9yc19oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHR5cGVfdHJhaXRzPgogCkBAIC0xMDksNSArMTA4LDMg
QEAgaW5saW5lIFRyYW5zZm9ybUl0ZXJhdG9yPFRyYW5zZm9ybSwgSXRlcgogfQogCiB9IC8vIG5h
bWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFdURl9JdGVyYXRvckFkYXB0b3JzX2gKSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL0l0ZXJhdG9yUmFuZ2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9JdGVyYXRvclJhbmdlLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0l0
ZXJhdG9yUmFuZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX0l0ZXJhdG9yUmFu
Z2VfaAotI2RlZmluZSBXVEZfSXRlcmF0b3JSYW5nZV9oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNw
YWNlIFdURiB7CiAKQEAgLTc5LDUgKzc4LDMgQEAgU2l6ZWRJdGVyYXRvclJhbmdlPENvbnRhaW5l
ciwgSXRlcmF0b3I+IAogfQogCiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFdURl9J
dGVyYXRvclJhbmdlX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0pTT05WYWx1ZXMuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0pTT05WYWx1ZXMuY3BwCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi9KU09OVmFsdWVzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzEs
NyArMzEsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJKU09OVmFs
dWVzLmgiCisjaW5jbHVkZSA8d3RmL0pTT05WYWx1ZXMuaD4KIAogI2luY2x1ZGUgPHd0Zi9EZWNp
bWFsTnVtYmVyLmg+CiAjaW5jbHVkZSA8d3RmL2R0b2EuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L0pTVmFsdWVNYWxsb2MuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0pTVmFsdWVN
YWxsb2MuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9KU1ZhbHVlTWFs
bG9jLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJKU1ZhbHVlTWFsbG9jLmgiCisjaW5jbHVkZSA8d3RmL0pT
VmFsdWVNYWxsb2MuaD4KIAogI2luY2x1ZGUgPHd0Zi9EYXRhTG9nLmg+CiAjaW5jbHVkZSA8d3Rm
L0Zhc3RNYWxsb2MuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0xFQkRlY29kZXIuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9MRUJEZWNvZGVyLmgJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL0xFQkRlY29kZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOSArMjUs
OSBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIkNvbXBpbGVyLmgiCiAjaW5jbHVkZSA8
YWxnb3JpdGhtPgogI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPHd0Zi9Db21waWxlci5o
PgogCiAvLyBUaGlzIGZpbGUgY29udGFpbnMgYSBidW5jaCBvZiBoZWxwZXIgZnVuY3Rpb25zIGZv
ciBkZWNvZGluZyBMRUIgbnVtYmVycy4KIC8vIFNlZSBodHRwczovL2VuLndpa2lwZWRpYS5vcmcv
d2lraS9MRUIxMjggZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9MYW5ndWFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTGFuZ3Vh
Z2UuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9MYW5ndWFnZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiTGFuZ3VhZ2UuaCIKKyNpbmNsdWRlIDx3dGYvTGFuZ3VhZ2UuaD4KIAog
I2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9MaXN0RHVtcC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL0xpc3REdW1wLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0xp
c3REdW1wLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDEyICsyMywxMSBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCiAgKi8KIAotI2lmbmRlZiBMaXN0RHVtcF9oCi0jZGVmaW5lIExpc3REdW1wX2gKKyNwcmFn
bWEgb25jZQogCi0jaW5jbHVkZSAiQ29tbWFQcmludGVyLmgiCi0jaW5jbHVkZSAiUHJpbnRTdHJl
YW0uaCIKLSNpbmNsdWRlICJTdHJpbmdQcmludFN0cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi9Db21t
YVByaW50ZXIuaD4KKyNpbmNsdWRlIDx3dGYvUHJpbnRTdHJlYW0uaD4KKyNpbmNsdWRlIDx3dGYv
U3RyaW5nUHJpbnRTdHJlYW0uaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTE4Miw2ICsxODEs
MyBAQCB1c2luZyBXVEY6Om1hcER1bXA7CiB1c2luZyBXVEY6OnBvaW50ZXJMaXN0RHVtcDsKIHVz
aW5nIFdURjo6c29ydGVkTGlzdER1bXA7CiB1c2luZyBXVEY6OnNvcnRlZE1hcER1bXA7Ci0KLSNl
bmRpZiAvLyBMaXN0RHVtcF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0xvY2suY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0xvY2suY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi9Mb2NrLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJMb2NrLmgiCisjaW5jbHVkZSA8
d3RmL0xvY2suaD4KIAogI2luY2x1ZGUgPHd0Zi9Mb2NrQWxnb3JpdGhtSW5saW5lcy5oPgogI2lu
Y2x1ZGUgPHd0Zi9TdGFja1Nob3RQcm9maWxlci5oPgpJbmRleDogU291cmNlL1dURi93dGYvTG9j
ay5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0xvY2suaAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvTG9jay5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9Mb2NrX2gKLSNkZWZpbmUg
V1RGX0xvY2tfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTG9ja0FsZ29yaXRobS5o
PgogI2luY2x1ZGUgPHd0Zi9Mb2NrZXIuaD4KQEAgLTEzOCw2ICsxMzcsMyBAQCB1c2luZyBMb2Nr
SG9sZGVyID0gTG9ja2VyPExvY2s+OwogCiB1c2luZyBXVEY6OkxvY2s7CiB1c2luZyBXVEY6Okxv
Y2tIb2xkZXI7Ci0KLSNlbmRpZiAvLyBXVEZfTG9ja19oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L0xvY2tBbGdvcml0aG0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Mb2NrQWxnb3Jp
dGhtLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0xvY2tBbGdvcml0aG0u
aAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8K
IAotI2lmbmRlZiBXVEZfTG9ja0FsZ29yaXRobV9oCi0jZGVmaW5lIFdURl9Mb2NrQWxnb3JpdGht
X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0F0b21pY3MuaD4KICNpbmNsdWRlIDx3
dGYvQ29tcGlsZXIuaD4KQEAgLTE1NSw2ICsxNTQsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3Bh
Y2UgV1RGCiAKIHVzaW5nIFdURjo6TG9ja0FsZ29yaXRobTsKLQotI2VuZGlmIC8vIFdURl9Mb2Nr
QWxnb3JpdGhtX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvTG9ja2VkUHJpbnRTdHJlYW0uY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0xvY2tlZFByaW50U3RyZWFtLmNwcAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvTG9ja2VkUHJpbnRTdHJlYW0uY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIkxvY2tlZFByaW50U3RyZWFtLmgiCisjaW5jbHVkZSA8d3RmL0xvY2tlZFBy
aW50U3RyZWFtLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9M
b2NrZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Mb2NrZXIuaAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvTG9ja2VyLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1
LDggKzI1LDggQEAKICAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwotI2lmbmRl
ZiBMb2NrZXJfaAotI2RlZmluZSBMb2NrZXJfaAorCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUg
PHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL0F0b21pY3MuaD4KQEAgLTE0NCw1ICsx
NDQsMyBAQCB1c2luZyBXVEY6Ok5vTG9ja2luZ05lY2Vzc2FyeVRhZzsKIHVzaW5nIFdURjo6Tm9M
b2NraW5nTmVjZXNzYXJ5OwogdXNpbmcgV1RGOjpob2xkTG9jazsKIHVzaW5nIFdURjo6aG9sZExv
Y2tJZjsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9NRDUuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL01ENS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9X
VEYvd3RmL01ENS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ4LDkgKzQ4LDkgQEAKICAqLwogCiAj
aW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTUQ1LmgiCisjaW5jbHVkZSA8d3RmL01ENS5o
PgogCi0jaW5jbHVkZSAiQXNzZXJ0aW9ucy5oIgorI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+
CiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogCiBuYW1lc3BhY2UgV1RGIHsKSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL01ENS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL01ENS5o
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9NRDUuaAkod29ya2luZyBjb3B5
KQpAQCAtMjgsOCArMjgsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9N
RDVfaAotI2RlZmluZSBXVEZfTUQ1X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8YXJyYXk+
CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgpAQCAtNzIsNSArNzEsMyBAQCBwcml2YXRlOgogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6TUQ1OwotCi0jZW5kaWYgLy8gV1RGX01ENV9o
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9NYWluVGhyZWFkLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9NYWluVGhyZWFkLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dU
Ri93dGYvTWFpblRocmVhZC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI3LDE3ICsyNywxNyBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNYWluVGhyZWFkLmgiCisjaW5j
bHVkZSA8d3RmL01haW5UaHJlYWQuaD4KIAotI2luY2x1ZGUgIkRlcXVlLmgiCi0jaW5jbHVkZSAi
TW9ub3RvbmljVGltZS5oIgotI2luY2x1ZGUgIlN0ZExpYkV4dHJhcy5oIgotI2luY2x1ZGUgIlRo
cmVhZGluZy5oIgogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHd0Zi9Db25kaXRpb24uaD4K
KyNpbmNsdWRlIDx3dGYvRGVxdWUuaD4KICNpbmNsdWRlIDx3dGYvTG9jay5oPgorI2luY2x1ZGUg
PHd0Zi9Nb25vdG9uaWNUaW1lLmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+Cisj
aW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRTcGVjaWZp
Yy5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL01haW5UaHJlYWQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9NYWluVGhyZWFkLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL01h
aW5UaHJlYWQuaAkod29ya2luZyBjb3B5KQpAQCAtMjcsOCArMjcsNyBAQAogICogVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIE1haW5UaHJlYWRfaAotI2RlZmluZSBNYWluVGhyZWFkX2gKKyNwcmFn
bWEgb25jZQogCiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4K
QEAgLTExNiw1ICsxMTUsMyBAQCB1c2luZyBXVEY6OmNhbGxPbldlYlRocmVhZE9yRGlzcGF0Y2hB
c3luCiB1c2luZyBXVEY6OmluaXRpYWxpemVXZWJUaHJlYWQ7CiB1c2luZyBXVEY6OmluaXRpYWxp
emVBcHBsaWNhdGlvblVJVGhyZWFkOwogI2VuZGlmCi0KLSNlbmRpZiAvLyBNYWluVGhyZWFkX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL01hbGxvY1B0ci5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL01hbGxvY1B0ci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9N
YWxsb2NQdHIuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgTWFsbG9jUHRyX2gKLSNkZWZp
bmUgTWFsbG9jUHRyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2Mu
aD4KIApAQCAtMTM3LDUgKzEzNiwzIEBAIHRlbXBsYXRlPHR5cGVuYW1lIFU+IE1hbGxvY1B0cjxV
PiBhZG9wdE0KIAogdXNpbmcgV1RGOjpNYWxsb2NQdHI7CiB1c2luZyBXVEY6OmFkb3B0TWFsbG9j
UHRyOwotCi0jZW5kaWYgLy8gTWFsbG9jUHRyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL01hdGhF
eHRyYXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9NYXRoRXh0cmFzLmgJKHJldmlz
aW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL01hdGhFeHRyYXMuaAkod29ya2luZyBjb3B5
KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZf
TWF0aEV4dHJhc19oCi0jZGVmaW5lIFdURl9NYXRoRXh0cmFzX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPGNtYXRoPgpAQCAtNjE3LDUgKzYxNiwzIEBA
IHVzaW5nIFdURjo6c2h1ZmZsZVZlY3RvcjsKIHVzaW5nIFdURjo6Y2x6MzI7CiB1c2luZyBXVEY6
OmNsejY0OwogdXNpbmcgV1RGOjpjdHozMjsKLQotI2VuZGlmIC8vICNpZm5kZWYgV1RGX01hdGhF
eHRyYXNfaApJbmRleDogU291cmNlL1dURi93dGYvTWVkaWFUaW1lLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9NZWRpYVRpbWUuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9NZWRpYVRpbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw3ICsyNyw3IEBA
CiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk1lZGlhVGltZS5oIgorI2lu
Y2x1ZGUgPHd0Zi9NZWRpYVRpbWUuaD4KIAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRl
IDxjc3RkbGliPgpJbmRleDogU291cmNlL1dURi93dGYvTWVkaWFUaW1lLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvTWVkaWFUaW1lLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL01lZGlhVGltZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw3IEBACiAg
KiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX01lZGlhVGltZV9oCi0jZGVmaW5lIFdURl9N
ZWRpYVRpbWVfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgog
I2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtMTc4LDUgKzE3NywzIEBAIGJvb2wg
TWVkaWFUaW1lOjpkZWNvZGUoRGVjb2RlciYgZGVjb2RlciwKIHVzaW5nIFdURjo6TWVkaWFUaW1l
OwogdXNpbmcgV1RGOjpNZWRpYVRpbWVSYW5nZTsKIHVzaW5nIFdURjo6YWJzOwotCi0jZW5kaWYK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL01lbW9yeVByZXNzdXJlSGFuZGxlci5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmNwcAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJNZW1vcnlQcmVzc3VyZUhhbmRsZXIuaCIKKyNpbmNsdWRlIDx3dGYvTWVtb3J5
UHJlc3N1cmVIYW5kbGVyLmg+CiAKICNpbmNsdWRlIDx3dGYvTWVtb3J5Rm9vdHByaW50Lmg+CiAj
aW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9NZXNz
YWdlUXVldWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9NZXNzYWdlUXVldWUuaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvTWVzc2FnZVF1ZXVlLmgJKHdvcmtp
bmcgY29weSkKQEAgLTI3LDggKzI3LDcgQEAKICAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBN
ZXNzYWdlUXVldWVfaAotI2RlZmluZSBNZXNzYWdlUXVldWVfaAorI3ByYWdtYSBvbmNlCiAKICNp
bmNsdWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KQEAgLTI1Miw1ICsy
NTEsMyBAQCB1c2luZyBXVEY6Ok1lc3NhZ2VRdWV1ZVdhaXRSZXN1bHQ7CiB1c2luZyBXVEY6Ok1l
c3NhZ2VRdWV1ZVRlcm1pbmF0ZWQ7CiB1c2luZyBXVEY6Ok1lc3NhZ2VRdWV1ZVRpbWVvdXQ7CiB1
c2luZyBXVEY6Ok1lc3NhZ2VRdWV1ZU1lc3NhZ2VSZWNlaXZlZDsKLQotI2VuZGlmIC8vIE1lc3Nh
Z2VRdWV1ZV9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9NZXRhQWxsb2NhdG9yLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9NZXRhQWxsb2NhdG9yLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvTWV0YUFsbG9jYXRvci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI3LDcgKzI3LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTWV0
YUFsbG9jYXRvci5oIgorI2luY2x1ZGUgPHd0Zi9NZXRhQWxsb2NhdG9yLmg+CiAKICNpbmNsdWRl
IDx3dGYvRGF0YUxvZy5oPgogI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CkluZGV4OiBTb3Vy
Y2UvV1RGL3d0Zi9NZXRhQWxsb2NhdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
TWV0YUFsbG9jYXRvci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9NZXRh
QWxsb2NhdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDcgQEAKICAqIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiAgKi8KIAotI2lmbmRlZiBXVEZfTWV0YUFsbG9jYXRvcl9oCi0jZGVmaW5lIFdURl9NZXRhQWxs
b2NhdG9yX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNp
bmNsdWRlIDx3dGYvSGFzaE1hcC5oPgpAQCAtMjA4LDYgKzIwNywzIEBAIHByaXZhdGU6CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFdURl9NZXRhQWxsb2NhdG9yX2gKLQpJ
bmRleDogU291cmNlL1dURi93dGYvTWV0YUFsbG9jYXRvckhhbmRsZS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL01ldGFBbGxvY2F0b3JIYW5kbGUuaAkocmV2aXNpb24gMjM3MDcwKQor
KysgU291cmNlL1dURi93dGYvTWV0YUFsbG9jYXRvckhhbmRsZS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw4ICsyNiw3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX01ldGFBbGxv
Y2F0b3JIYW5kbGVfaAotI2RlZmluZSBXVEZfTWV0YUFsbG9jYXRvckhhbmRsZV9oCisjcHJhZ21h
IG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL01ldGFB
bGxvY2F0b3JQdHIuaD4KQEAgLTExOCw1ICsxMTcsMyBAQCBwcml2YXRlOgogfTsKIAogfQotCi0j
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL01vbm90b25pY1RpbWUuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL01vbm90b25pY1RpbWUuY3BwCShyZXZpc2lvbiAyMzcwNzApCisr
KyBTb3VyY2UvV1RGL3d0Zi9Nb25vdG9uaWNUaW1lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQs
MTEgKzI0LDExIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk1vbm90
b25pY1RpbWUuaCIKKyNpbmNsdWRlIDx3dGYvTW9ub3RvbmljVGltZS5oPgogCi0jaW5jbHVkZSAi
UHJpbnRTdHJlYW0uaCIKLSNpbmNsdWRlICJUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuaCIKLSNp
bmNsdWRlICJXYWxsVGltZS5oIgorI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgorI2luY2x1
ZGUgPHd0Zi9UaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuaD4KKyNpbmNsdWRlIDx3dGYvV2FsbFRp
bWUuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL01vbm90b25p
Y1RpbWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Nb25vdG9uaWNUaW1lLmgJKHJl
dmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL01vbm90b25pY1RpbWUuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRl
ZiBXVEZfTW9ub3RvbmljVGltZV9oCi0jZGVmaW5lIFdURl9Nb25vdG9uaWNUaW1lX2gKKyNwcmFn
bWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Nsb2NrVHlwZS5oPgogI2luY2x1ZGUgPHd0Zi9TZWNv
bmRzLmg+CkBAIC0yMTAsNSArMjA5LDMgQEAgaW5saW5lIGJvb2wgaXNmaW5pdGUoV1RGOjpNb25v
dG9uaWNUaW1lIAogfSAvLyBuYW1lc3BhY2Ugc3RkCiAKIHVzaW5nIFdURjo6TW9ub3RvbmljVGlt
ZTsKLQotI2VuZGlmIC8vIFdURl9Nb25vdG9uaWNUaW1lX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L05ha2VkUHRyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTmFrZWRQdHIuaAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvTmFrZWRQdHIuaAkod29ya2luZyBjb3B5
KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9O
YWtlZFB0cl9oCi0jZGVmaW5lIFdURl9OYWtlZFB0cl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAKQEAgLTExNSw1ICsxMTQsMyBAQCB0ZW1wbGF0ZTxjbGFz
cyBUPiBpbmxpbmUgdm9pZCBzd2FwKE5ha2VkCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcg
V1RGOjpOYWtlZFB0cjsKLQotI2VuZGlmIC8vIFdURl9OYWtlZFB0cl9oCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9Ob0xvY2suaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Ob0xvY2suaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvTm9Mb2NrLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgTm9M
b2NrX2gKLSNkZWZpbmUgTm9Mb2NrX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0xv
Y2tlci5oPgogCkBAIC00Myw2ICs0MiwzIEBAIHR5cGVkZWYgTG9ja2VyPE5vTG9jaz4gTm9Mb2Nr
TG9ja2VyOwogCiB1c2luZyBXVEY6Ok5vTG9jazsKIHVzaW5nIFdURjo6Tm9Mb2NrTG9ja2VyOwot
Ci0jZW5kaWYgLy8gTm9Mb2NrX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvTm9UYWlsQ2FsbHMu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Ob1RhaWxDYWxscy5oCShyZXZpc2lvbiAy
MzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9Ob1RhaWxDYWxscy5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNSw3ICsyNSw3IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiQXRvbWljcy5oIgor
I2luY2x1ZGUgPHd0Zi9BdG9taWNzLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3Vy
Y2UvV1RGL3d0Zi9Ob25jb3B5YWJsZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL05v
bmNvcHlhYmxlLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL05vbmNvcHlh
YmxlLmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDEyICsxOCw5IEBACiAgKgogICovCiAKLSNpZm5k
ZWYgV1RGX05vbmNvcHlhYmxlX2gKLSNkZWZpbmUgV1RGX05vbmNvcHlhYmxlX2gKKyNwcmFnbWEg
b25jZQogCiAjZGVmaW5lIFdURl9NQUtFX05PTkNPUFlBQkxFKENsYXNzTmFtZSkgXAogICAgIHBy
aXZhdGU6IFwKICAgICAgICAgQ2xhc3NOYW1lKGNvbnN0IENsYXNzTmFtZSYpID0gZGVsZXRlOyBc
CiAgICAgICAgIENsYXNzTmFtZSYgb3BlcmF0b3I9KGNvbnN0IENsYXNzTmFtZSYpID0gZGVsZXRl
OyBcCi0KLSNlbmRpZiAvLyBXVEZfTm9uY29weWFibGVfaApJbmRleDogU291cmNlL1dURi93dGYv
TnVtYmVyT2ZDb3Jlcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTnVtYmVyT2ZD
b3Jlcy5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL051bWJlck9mQ29y
ZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIk51bWJlck9mQ29yZXMuaCIKKyNpbmNsdWRlIDx3dGYvTnVt
YmVyT2ZDb3Jlcy5oPgogCiAjaW5jbHVkZSA8Y3N0ZGlvPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9OdW1iZXJPZkNvcmVzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTnVtYmVyT2ZD
b3Jlcy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9OdW1iZXJPZkNvcmVz
LmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDEzICsxOCwxMCBAQAogICoKICAqLwogCi0jaWZuZGVm
IE51bWJlck9mQ29yZXNfaAotI2RlZmluZSBOdW1iZXJPZkNvcmVzX2gKKyNwcmFnbWEgb25jZQog
CiBuYW1lc3BhY2UgV1RGIHsKIAogV1RGX0VYUE9SVF9QUklWQVRFIGludCBudW1iZXJPZlByb2Nl
c3NvckNvcmVzKCk7CiAKIH0KLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9PU0FsbG9j
YXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yLmgJKHJldmlz
aW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIE9TQWxsb2NhdG9yX2gKLSNkZWZpbmUgT1NBbGxvY2F0b3JfaAorI3By
YWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhbGdvcml0aG0+CiAjaW5jbHVkZSA8d3RmL1ZNVGFncy5o
PgpAQCAtOTgsNSArOTcsMyBAQCBpbmxpbmUgVCogT1NBbGxvY2F0b3I6OnJlYWxsb2NhdGVDb21t
aXR0CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpPU0FsbG9jYXRvcjsKLQotI2Vu
ZGlmIC8vIE9TQWxsb2NhdG9yX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yUG9z
aXguY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yUG9zaXguY3Bw
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9PU0FsbG9jYXRvclBvc2l4LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjQsMTQgKzI0LDE0IEBACiAgKi8KIAogI2luY2x1ZGUgImNv
bmZpZy5oIgotI2luY2x1ZGUgIk9TQWxsb2NhdG9yLmgiCisjaW5jbHVkZSA8d3RmL09TQWxsb2Nh
dG9yLmg+CiAKICNpZiBPUyhVTklYKQogCi0jaW5jbHVkZSAiUGFnZUFsbG9jYXRpb24uaCIKICNp
bmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPHN5cy9tbWFuLmg+CiAjaW5jbHVkZSA8d3RmL0Fz
c2VydGlvbnMuaD4KKyNpbmNsdWRlIDx3dGYvUGFnZUFsbG9jYXRpb24uaD4KIAogbmFtZXNwYWNl
IFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yV2luLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9PU0FsbG9jYXRvcldpbi5jcHAJKHJldmlzaW9uIDIzNzA3
MCkKKysrIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yV2luLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMjQsMTIgKzI0LDEyIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUg
Ik9TQWxsb2NhdG9yLmgiCisjaW5jbHVkZSA8d3RmL09TQWxsb2NhdG9yLmg+CiAKICNpZiBPUyhX
SU5ET1dTKQogCi0jaW5jbHVkZSAid2luZG93cy5oIgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25z
Lmg+CisjaW5jbHVkZSA8d2luZG93cy5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291
cmNlL1dURi93dGYvT1NSYW5kb21Tb3VyY2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL09TUmFuZG9tU291cmNlLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93
dGYvT1NSYW5kb21Tb3VyY2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAg
Ki8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk9TUmFuZG9tU291cmNlLmgiCisj
aW5jbHVkZSA8d3RmL09TUmFuZG9tU291cmNlLmg+CiAKICNpbmNsdWRlIDxtdXRleD4KICNpbmNs
dWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL09TUmFuZG9t
U291cmNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvT1NSYW5kb21Tb3VyY2UuaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvT1NSYW5kb21Tb3VyY2UuaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBXVEZfT1NSYW5kb21Tb3VyY2VfaAotI2RlZmluZSBXVEZfT1NSYW5kb21Tb3VyY2VfaAor
I3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC0zNCw1ICszMywzIEBAIG5hbWVz
cGFjZSBXVEYgewogLy8gY2FsbGluZyBjcnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlciBvciBj
cnlwdG9ncmFwaGljYWxseVJhbmRvbVZhbHVlcy4KIHZvaWQgY3J5cHRvZ3JhcGhpY2FsbHlSYW5k
b21WYWx1ZXNGcm9tT1ModW5zaWduZWQgY2hhciogYnVmZmVyLCBzaXplX3QgbGVuZ3RoKTsKIH0K
LQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9PYmpjUnVudGltZUV4dHJhcy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL09iamNSdW50aW1lRXh0cmFzLmgJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL09iamNSdW50aW1lRXh0cmFzLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIyLDggKzIyLDcgQEAKICAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX09iamNSdW50
aW1lRXh0cmFzX2gKLSNkZWZpbmUgV1RGX09iamNSdW50aW1lRXh0cmFzX2gKKyNwcmFnbWEgb25j
ZQogCiAvLyBGSVhNRTogVGhpcyBmaWxlJ3MgbmFtZSBhbmQgZnVuY3Rpb24gbmFtZXMgcmVmZXIg
dG8gT2JqZWN0aXZlLUMgYXMgT2JqYyB3aXRoIGEgbG93ZXJjYXNlIEMsCiAvLyBidXQgaXQgc2hv
dWxkIGJlIE9iakMgd2l0aCBhbiB1cHBlcmNhc2UgQy4KQEAgLTQ1LDUgKzQ0LDMgQEAgaW5saW5l
IFJldHVyblR5cGUgd3RmQ2FsbElNUChJTVAgaW1wbGVtZQogfQogCiAjZW5kaWYgLy8gX19jcGx1
c3BsdXMKLQotI2VuZGlmIC8vIFdURl9PYmpjUnVudGltZUV4dHJhc19oCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9PcmRlck1ha2VyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvT3JkZXJN
YWtlci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9PcmRlck1ha2VyLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9PcmRlck1ha2VyX2gKLSNkZWZpbmUgV1RG
X09yZGVyTWFrZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQmFnLmg+CiAjaW5j
bHVkZSA8d3RmL0hhc2hNYXAuaD4KQEAgLTEzOCw2ICsxMzcsMyBAQCBwcml2YXRlOgogfSAvLyBu
YW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6T3JkZXJNYWtlcjsKLQotI2VuZGlmIC8vIFdURl9P
cmRlck1ha2VyX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUGFja2VkSW50VmVjdG9yLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGFja2VkSW50VmVjdG9yLmgJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1BhY2tlZEludFZlY3Rvci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFBhY2tl
ZEludFZlY3Rvcl9oCi0jZGVmaW5lIFBhY2tlZEludFZlY3Rvcl9oCisjcHJhZ21hIG9uY2UKIAog
I2luY2x1ZGUgPHd0Zi9CaXRWZWN0b3IuaD4KIApAQCAtMTIyLDYgKzEyMSwzIEBAIHByaXZhdGU6
CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpQYWNrZWRJbnRWZWN0b3I7Ci0KLSNl
bmRpZiAvLyBQYWNrZWRJbnRWZWN0b3JfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QYWdlQWxs
b2NhdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhZ2VBbGxvY2F0aW9uLmgJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1BhZ2VBbGxvY2F0aW9uLmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgUGFnZUFsbG9jYXRpb25faAotI2RlZmluZSBQYWdlQWxsb2NhdGlvbl9oCisjcHJhZ21h
IG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL09TQWxs
b2NhdG9yLmg+CkBAIC0xMTQsNSArMTEzLDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdU
RgogCiB1c2luZyBXVEY6OlBhZ2VBbGxvY2F0aW9uOwotCi0jZW5kaWYgLy8gUGFnZUFsbG9jYXRp
b25faApJbmRleDogU291cmNlL1dURi93dGYvUGFnZUJsb2NrLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9QYWdlQmxvY2suY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2Uv
V1RGL3d0Zi9QYWdlQmxvY2suY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAg
Ki8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBhZ2VCbG9jay5oIgorI2luY2x1
ZGUgPHd0Zi9QYWdlQmxvY2suaD4KIAogI2lmIE9TKFVOSVgpCiAjaW5jbHVkZSA8dW5pc3RkLmg+
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QYWdlQmxvY2suaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9QYWdlQmxvY2suaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYv
UGFnZUJsb2NrLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFBhZ2VCbG9ja19oCi0jZGVm
aW5lIFBhZ2VCbG9ja19oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTgz
LDUgKzgyLDMgQEAgaW5saW5lIFBhZ2VCbG9jazo6UGFnZUJsb2NrKHZvaWQqIGJhc2UsIAogdXNp
bmcgV1RGOjpwYWdlU2l6ZTsKIHVzaW5nIFdURjo6aXNQYWdlQWxpZ25lZDsKIHVzaW5nIFdURjo6
aXNQb3dlck9mVHdvOwotCi0jZW5kaWYgLy8gUGFnZUJsb2NrX2gKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL1BhZ2VSZXNlcnZhdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhZ2VS
ZXNlcnZhdGlvbi5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9QYWdlUmVz
ZXJ2YXRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCiAgKi8KIAotI2lmbmRlZiBQYWdlUmVzZXJ2YXRpb25faAotI2RlZmluZSBQYWdlUmVzZXJ2
YXRpb25faAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvUGFnZUFsbG9jYXRpb24uaD4K
IApAQCAtMTQ0LDUgKzE0MywzIEBAIHByaXZhdGU6CiB9CiAKIHVzaW5nIFdURjo6UGFnZVJlc2Vy
dmF0aW9uOwotCi0jZW5kaWYgLy8gUGFnZVJlc2VydmF0aW9uX2gKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL1BhcmFsbGVsSGVscGVyUG9vbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
UGFyYWxsZWxIZWxwZXJQb29sLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93
dGYvUGFyYWxsZWxIZWxwZXJQb29sLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsMTEgKzI0LDEx
IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBhcmFsbGVsSGVscGVy
UG9vbC5oIgorI2luY2x1ZGUgPHd0Zi9QYXJhbGxlbEhlbHBlclBvb2wuaD4KIAotI2luY2x1ZGUg
IkF1dG9tYXRpY1RocmVhZC5oIgotI2luY2x1ZGUgIkRhdGFMb2cuaCIKLSNpbmNsdWRlICJTdHJp
bmdQcmludFN0cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi9BdXRvbWF0aWNUaHJlYWQuaD4KKyNpbmNs
dWRlIDx3dGYvRGF0YUxvZy5oPgorI2luY2x1ZGUgPHd0Zi9TdHJpbmdQcmludFN0cmVhbS5oPgog
CiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvUGFyYWxsZWxIZWxwZXJQ
b29sLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxIZWxwZXJQb29sLmgJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1BhcmFsbGVsSGVscGVyUG9vbC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwog
Ci0jaWZuZGVmIFBhcmFsbGVsSGVscGVyUG9vbF9oCi0jZGVmaW5lIFBhcmFsbGVsSGVscGVyUG9v
bF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Cb3guaD4KICNpbmNsdWRlIDx3dGYv
Q29uZGl0aW9uLmg+CkBAIC0yMTcsNiArMjE2LDMgQEAgcHJpdmF0ZToKIAogdXNpbmcgV1RGOjpQ
YXJhbGxlbEhlbHBlckNsaWVudDsKIHVzaW5nIFdURjo6UGFyYWxsZWxIZWxwZXJQb29sOwotCi0j
ZW5kaWYgLy8gUGFyYWxsZWxIZWxwZXJQb29sX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUGFy
YWxsZWxKb2JzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxKb2JzLmgJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1BhcmFsbGVsSm9icy5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5k
ZWYgUGFyYWxsZWxKb2JzX2gKLSNkZWZpbmUgUGFyYWxsZWxKb2JzX2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CkBA
IC05OSw1ICs5OCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RG
OjpQYXJhbGxlbEpvYnM7Ci0KLSNlbmRpZiAvLyBQYXJhbGxlbEpvYnNfaApJbmRleDogU291cmNl
L1dURi93dGYvUGFyYWxsZWxKb2JzR2VuZXJpYy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvUGFyYWxsZWxKb2JzR2VuZXJpYy5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL1BhcmFsbGVsSm9ic0dlbmVyaWMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOSw4
ICsyOSw4IEBACiAKICNpZiBFTkFCTEUoVEhSRUFESU5HX0dFTkVSSUMpCiAKLSNpbmNsdWRlICJQ
YXJhbGxlbEpvYnMuaCIKICNpbmNsdWRlIDx3dGYvTnVtYmVyT2ZDb3Jlcy5oPgorI2luY2x1ZGUg
PHd0Zi9QYXJhbGxlbEpvYnMuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL1BhcmFsbGVsSm9ic0xpYmRpc3BhdGNoLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvUGFyYWxsZWxKb2JzTGliZGlzcGF0Y2guaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291
cmNlL1dURi93dGYvUGFyYWxsZWxKb2JzTGliZGlzcGF0Y2guaAkod29ya2luZyBjb3B5KQpAQCAt
MjUsOCArMjUsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFBhcmFsbGVsSm9i
c0xpYmRpc3BhdGNoX2gKLSNkZWZpbmUgUGFyYWxsZWxKb2JzTGliZGlzcGF0Y2hfaAorI3ByYWdt
YSBvbmNlCiAKICNpZiBFTkFCTEUoVEhSRUFESU5HX0xJQkRJU1BBVENIKQogCkBAIC02OSw1ICs2
OCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogI2VuZGlmIC8vIEVOQUJMRShU
SFJFQURJTkdfTElCRElTUEFUQ0gpCi0KLSNlbmRpZiAvLyBQYXJhbGxlbEpvYnNMaWJkaXNwYXRj
aF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QYXJhbGxlbFZlY3Rvckl0ZXJhdG9yLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxWZWN0b3JJdGVyYXRvci5oCShyZXZpc2lv
biAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9QYXJhbGxlbFZlY3Rvckl0ZXJhdG9yLmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgUGFyYWxsZWxWZWN0b3JJdGVyYXRvcl9oCi0jZGVmaW5lIFBhcmFsbGVsVmVjdG9ySXRl
cmF0b3JfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgogI2lu
Y2x1ZGUgPHd0Zi9Mb2NrLmg+CkBAIC03Nyw2ICs3NiwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVz
cGFjZSBXVEYKIAogdXNpbmcgV1RGOjpQYXJhbGxlbFZlY3Rvckl0ZXJhdG9yOwotCi0jZW5kaWYg
Ly8gUGFyYWxsZWxWZWN0b3JJdGVyYXRvcl9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1Bhcmtp
bmdMb3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhcmtpbmdMb3QuY3BwCShy
ZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9QYXJraW5nTG90LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjQsMTkgKzI0LDE5IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgot
I2luY2x1ZGUgIlBhcmtpbmdMb3QuaCIKKyNpbmNsdWRlIDx3dGYvUGFya2luZ0xvdC5oPgogCi0j
aW5jbHVkZSAiRGF0YUxvZy5oIgotI2luY2x1ZGUgIkhhc2hGdW5jdGlvbnMuaCIKLSNpbmNsdWRl
ICJTdHJpbmdQcmludFN0cmVhbS5oIgotI2luY2x1ZGUgIlRocmVhZFNwZWNpZmljLmgiCi0jaW5j
bHVkZSAiVGhyZWFkaW5nLmgiCi0jaW5jbHVkZSAiVmVjdG9yLmgiCi0jaW5jbHVkZSAiV2Vha1Jh
bmRvbS5oIgotI2luY2x1ZGUgIldvcmRMb2NrLmgiCiAjaW5jbHVkZSA8Y29uZGl0aW9uX3Zhcmlh
YmxlPgogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHRocmVhZD4KKyNpbmNsdWRlIDx3dGYv
RGF0YUxvZy5oPgorI2luY2x1ZGUgPHd0Zi9IYXNoRnVuY3Rpb25zLmg+CisjaW5jbHVkZSA8d3Rm
L1N0cmluZ1ByaW50U3RyZWFtLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZFNwZWNpZmljLmg+Cisj
aW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNs
dWRlIDx3dGYvV2Vha1JhbmRvbS5oPgorI2luY2x1ZGUgPHd0Zi9Xb3JkTG9jay5oPgogCiBuYW1l
c3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvUGFya2luZ0xvdC5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhcmtpbmdMb3QuaAkocmV2aXNpb24gMjM3MDcwKQorKysg
U291cmNlL1dURi93dGYvUGFya2luZ0xvdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9QYXJraW5nTG90X2gKLSNk
ZWZpbmUgV1RGX1BhcmtpbmdMb3RfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQXRv
bWljcy5oPgogI2luY2x1ZGUgPHd0Zi9TY29wZWRMYW1iZGEuaD4KQEAgLTE3Nyw2ICsxNzYsMyBA
QCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6UGFya2luZ0xvdDsK
LQotI2VuZGlmIC8vIFdURl9QYXJraW5nTG90X2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUGxh
dGZvcm0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCShyZXZpc2lv
biAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNSw4ICsyNSw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX1BsYXRm
b3JtX2gKLSNkZWZpbmUgV1RGX1BsYXRmb3JtX2gKKyNwcmFnbWEgb25jZQogCiAvKiBJbmNsdWRl
IGNvbXBpbGVyIHNwZWNpZmljIG1hY3JvcyAqLwogI2luY2x1ZGUgPHd0Zi9Db21waWxlci5oPgpA
QCAtMTM3MCw1ICsxMzY5LDMgQEAKICNpZiBQTEFURk9STShDT0NPQSkgJiYgVVNFKENBKSAmJiAh
UExBVEZPUk0oSU9TX0ZBTUlMWV9TSU1VTEFUT1IpCiAjZGVmaW5lIFVTRV9JT1NVUkZBQ0VfQ0FO
VkFTX0JBQ0tJTkdfU1RPUkUgMQogI2VuZGlmCi0KLSNlbmRpZiAvKiBXVEZfUGxhdGZvcm1faCAq
LwpJbmRleDogU291cmNlL1dURi93dGYvUG9pbnRlckNvbXBhcmlzb24uaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9Qb2ludGVyQ29tcGFyaXNvbi5oCShyZXZpc2lvbiAyMzcwNzApCisr
KyBTb3VyY2UvV1RGL3d0Zi9Qb2ludGVyQ29tcGFyaXNvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0y
Myw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAot
I2lmbmRlZiBXVEZfUG9pbnRlckNvbXBhcmlzb25faAotI2RlZmluZSBXVEZfUG9pbnRlckNvbXBh
cmlzb25faAorI3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC0zNiw1ICszNSwz
IEBAIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IGlubGluZSBib29sIGFyZVBvaW4KIH0gLy8gbmFtZXNw
YWNlIFdURgogCiB1c2luZyBXVEY6OmFyZVBvaW50aW5nVG9FcXVhbERhdGE7Ci0KLSNlbmRpZiAv
LyBXVEZfUG9pbnRlckNvbXBhcmlzb25faApJbmRleDogU291cmNlL1dURi93dGYvUG9pc29uZWQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BvaXNvbmVkLmNwcAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvUG9pc29uZWQuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBv
aXNvbmVkLmgiCisjaW5jbHVkZSA8d3RmL1BvaXNvbmVkLmg+CiAKICNpbmNsdWRlIDx3dGYvQ3J5
cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXIuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvUHJp
bnRTdHJlYW0uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1ByaW50U3RyZWFtLmNw
cAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvUHJpbnRTdHJlYW0uY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIlByaW50U3RyZWFtLmgiCisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+
CiAKICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL1ByaW50U3RyZWFtLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvUHJpbnRTdHJlYW0uaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYv
UHJpbnRTdHJlYW0uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4gCiAgKi8KIAotI2lmbmRlZiBQcmludFN0cmVhbV9oCi0jZGVmaW5lIFByaW50U3RyZWFt
X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8bWVtb3J5PgogI2luY2x1ZGUgPHN0ZGFyZy5o
PgpAQCAtMzQ2LDYgKzM0NSwzIEBAIHVzaW5nIFdURjo6aWdub3JpbmdDb250ZXh0OwogdXNpbmcg
V1RGOjppbkNvbnRleHQ7CiB1c2luZyBXVEY6OnBvaW50ZXJEdW1wOwogdXNpbmcgV1RGOjpwb2lu
dGVyRHVtcEluQ29udGV4dDsKLQotI2VuZGlmIC8vIFByaW50U3RyZWFtX2gKLQpJbmRleDogU291
cmNlL1dURi93dGYvUHJvY2Vzc0lELmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUHJv
Y2Vzc0lELmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1Byb2Nlc3NJRC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwog
Ci0jaWZuZGVmIFByb2Nlc3NJRF9oCi0jZGVmaW5lIFByb2Nlc3NJRF9oCisjcHJhZ21hIG9uY2UK
IAogI2lmIE9TKFVOSVgpCiAjaW5jbHVkZSA8dW5pc3RkLmg+CkBAIC01NSw2ICs1NCwzIEBAIGlu
bGluZSBQcm9jZXNzSUQgZ2V0Q3VycmVudFByb2Nlc3NJRCgpCiAKIHVzaW5nIFdURjo6Z2V0Q3Vy
cmVudFByb2Nlc3NJRDsKIHVzaW5nIFdURjo6UHJvY2Vzc0lEOwotCi0jZW5kaWYgLy8gUHJvY2Vz
c0lEX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUHJvY2Vzc1ByaXZpbGVnZS5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvUHJvY2Vzc1ByaXZpbGVnZS5jcHAJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1Byb2Nlc3NQcml2aWxlZ2UuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIlByb2Nlc3NQcml2aWxlZ2UuaCIKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc1ByaXZpbGVnZS5o
PgogCiAjaW5jbHVkZSA8d3RmL09wdGlvblNldC5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9S
QU1TaXplLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SQU1TaXplLmNwcAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvUkFNU2l6ZS5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTI0LDEwICsyNCwxMCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJSQU1TaXplLmgiCisjaW5jbHVkZSA8d3RmL1JBTVNpemUuaD4KIAotI2luY2x1ZGUgIlN0
ZExpYkV4dHJhcy5oIgogI2luY2x1ZGUgPG11dGV4PgorI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRy
YXMuaD4KIAogI2lmIE9TKFdJTkRPV1MpCiAjaW5jbHVkZSA8d2luZG93cy5oPgpJbmRleDogU291
cmNlL1dURi93dGYvUkFNU2l6ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JBTVNp
emUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvUkFNU2l6ZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCiAgKi8KIAotI2lmbmRlZiBSQU1TaXplX2gKLSNkZWZpbmUgUkFNU2l6ZV9oCisjcHJh
Z21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTMzLDUgKzMyLDMgQEAgV1RGX0VYUE9S
VF9QUklWQVRFIHNpemVfdCByYW1TaXplKCk7CiB9CiAKIHVzaW5nIFdURjo6cmFtU2l6ZTsKLQot
I2VuZGlmIC8vIFJBTVNpemVfaApJbmRleDogU291cmNlL1dURi93dGYvUmFuZG9tRGV2aWNlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SYW5kb21EZXZpY2UuY3BwCShyZXZpc2lv
biAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9SYW5kb21EZXZpY2UuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNSw3ICsyNSw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIlJhbmRvbURldmljZS5oIgorI2luY2x1ZGUgPHd0Zi9SYW5kb21EZXZpY2UuaD4KIAogI2lu
Y2x1ZGUgPHN0ZGludC5oPgogI2luY2x1ZGUgPHN0ZGxpYi5oPgpAQCAtNDIsNyArNDIsNyBAQAog
I2VuZGlmCiAKICNpZiBPUyhEQVJXSU4pCi0jaW5jbHVkZSAiQ29tbW9uQ3J5cHRvU1BJLmgiCisj
aW5jbHVkZSA8d3RmL3NwaS9kYXJ3aW4vQ29tbW9uQ3J5cHRvU1BJLmg+CiAjZW5kaWYKIAogI2lm
IE9TKEZVQ0hTSUEpCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SYW5kb21OdW1iZXIuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlci5jcHAJKHJldmlzaW9uIDIzNzA3
MCkKKysrIFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI2LDE1ICsyNiwxNCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJS
YW5kb21OdW1iZXIuaCIKLQotI2luY2x1ZGUgIkNyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVy
LmgiCi0jaW5jbHVkZSAiUmFuZG9tTnVtYmVyU2VlZC5oIgorI2luY2x1ZGUgPHd0Zi9SYW5kb21O
dW1iZXIuaD4KIAogI2luY2x1ZGUgPGxpbWl0cz4KICNpbmNsdWRlIDxsaW1pdHMuaD4KICNpbmNs
dWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDx3dGYvQ3J5cHRv
Z3JhcGhpY2FsbHlSYW5kb21OdW1iZXIuaD4KKyNpbmNsdWRlIDx3dGYvUmFuZG9tTnVtYmVyU2Vl
ZC5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvUmFuZG9tTnVt
YmVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUmFuZG9tTnVtYmVyLmgJKHJldmlz
aW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlci5oCSh3b3JraW5nIGNv
cHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdU
Rl9SYW5kb21OdW1iZXJfaAotI2RlZmluZSBXVEZfUmFuZG9tTnVtYmVyX2gKKyNwcmFnbWEgb25j
ZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMzUsNSArMzQsMyBAQCBXVEZfRVhQT1JUX1BSSVZB
VEUgZG91YmxlIHJhbmRvbU51bWJlcigpCiB9CiAKIHVzaW5nIFdURjo6cmFuZG9tTnVtYmVyOwot
Ci0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlclNlZWQuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SYW5kb21OdW1iZXJTZWVkLmgJKHJldmlzaW9uIDIzNzA3
MCkKKysrIFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlclNlZWQuaAkod29ya2luZyBjb3B5KQpA
QCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfUmFu
ZG9tTnVtYmVyU2VlZF9oCi0jZGVmaW5lIFdURl9SYW5kb21OdW1iZXJTZWVkX2gKKyNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8dGltZS5oPgpAQCAtNTYsNSAr
NTUsMyBAQCBpbmxpbmUgdm9pZCBpbml0aWFsaXplUmFuZG9tTnVtYmVyR2VuZXJhCiB9CiAKIH0K
LQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SYW5nZVNldC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL1JhbmdlU2V0LmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9X
VEYvd3RmL1JhbmdlU2V0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgV1RGX1JhbmdlU2V0X2gKLSNkZWZpbmUgV1RGX1Jh
bmdlU2V0X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0xpc3REdW1wLmg+CiAjaW5j
bHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KQEAgLTIxMiw2ICsyMTEsMyBAQCBwcml2YXRlOgogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6UmFuZ2VTZXQ7Ci0KLSNlbmRpZiAvLyBXVEZf
UmFuZ2VTZXRfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SYXdQb2ludGVyLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvUmF3UG9pbnRlci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi9SYXdQb2ludGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcg
QEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgUmF3UG9pbnRlcl9oCi0jZGVmaW5l
IFJhd1BvaW50ZXJfaAorI3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC01NCw1
ICs1MywzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpSYXdQ
b2ludGVyOwotCi0jZW5kaWYgLy8gUmF3UG9pbnRlcl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9S
ZWFkV3JpdGVMb2NrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SZWFkV3JpdGVM
b2NrLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvUmVhZFdyaXRlTG9j
ay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAi
Y29uZmlnLmgiCi0jaW5jbHVkZSAiUmVhZFdyaXRlTG9jay5oIgorI2luY2x1ZGUgPHd0Zi9SZWFk
V3JpdGVMb2NrLmg+CiAKICNpbmNsdWRlIDx3dGYvTG9ja2VyLmg+CiAKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL1JlZEJsYWNrVHJlZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZEJs
YWNrVHJlZS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9SZWRCbGFja1Ry
ZWUuaAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwog
Ci0jaWZuZGVmIFJlZEJsYWNrVHJlZV9oCi0jZGVmaW5lIFJlZEJsYWNrVHJlZV9oCisjcHJhZ21h
IG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL05vbmNv
cHlhYmxlLmg+CkBAIC01NjksNiArNTY4LDMgQEAgcHJpdmF0ZToKIH07CiAKIH0KLQotI2VuZGlm
Ci0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JlZi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL1JlZi5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9SZWYuaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX1JlZl9oCi0jZGVmaW5lIFdURl9SZWZfaAorI3By
YWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9E
dW1iUHRyVHJhaXRzLmg+CkBAIC0yODAsNSArMjc5LDMgQEAgdXNpbmcgV1RGOjpSZWY7CiB1c2lu
ZyBXVEY6OmFkb3B0UmVmOwogdXNpbmcgV1RGOjptYWtlUmVmOwogdXNpbmcgV1RGOjpzdGF0aWNf
cmVmZXJlbmNlX2Nhc3Q7Ci0KLSNlbmRpZiAvLyBXVEZfUmVmX2gKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL1JlZkNvdW50ZWRBcnJheS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZkNv
dW50ZWRBcnJheS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9SZWZDb3Vu
dGVkQXJyYXkuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCiAgKi8KIAotI2lmbmRlZiBSZWZDb3VudGVkQXJyYXlfaAotI2RlZmluZSBSZWZDb3VudGVk
QXJyYXlfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRHVtYlB0clRyYWl0cy5oPgog
I2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CkBAIC0yNDgsNiArMjQ3LDMgQEAgdXNpbmcgUG9p
c29uZWRSZWZDb3VudGVkQXJyYXkgPSBSZWZDb3VudAogCiB1c2luZyBXVEY6OlBvaXNvbmVkUmVm
Q291bnRlZEFycmF5OwogdXNpbmcgV1RGOjpSZWZDb3VudGVkQXJyYXk7Ci0KLSNlbmRpZiAvLyBS
ZWZDb3VudGVkQXJyYXlfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SZWZDb3VudGVkTGVha0Nv
dW50ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRMZWFrQ291
bnRlci5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRM
ZWFrQ291bnRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE5LDcgKzE5LDcgQEAKICAqLwogCiAj
aW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUmVmQ291bnRlZExlYWtDb3VudGVyLmgiCisj
aW5jbHVkZSA8d3RmL1JlZkNvdW50ZWRMZWFrQ291bnRlci5oPgogCiAjaW5jbHVkZSA8d3RmL0hh
c2hDb3VudGVkU2V0Lmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRMZWFrQ291
bnRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRMZWFrQ291bnRl
ci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9SZWZDb3VudGVkTGVha0Nv
dW50ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMTgsOCArMTgsNyBAQAogICoKICAqLwogIAotI2lm
bmRlZiBSZWZDb3VudGVkTGVha0NvdW50ZXJfaAotI2RlZmluZSBSZWZDb3VudGVkTGVha0NvdW50
ZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhdG9taWM+CiAjaW5jbHVkZSA8d3RmL0Fz
c2VydGlvbnMuaD4KQEAgLTQ0LDUgKzQzLDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gIC8vIG5hbWVz
cGFjZSBXVEYKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SZWZDb3VudGVyLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUmVmQ291bnRlci5oCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi9SZWZDb3VudGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDgg
KzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZu
ZGVmIFJlZkNvdW50ZXJfaAotI2RlZmluZSBSZWZDb3VudGVyX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8d3RmL0Z1bmN0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CkBA
IC0xNDYsNSArMTQ1LDMgQEAgaW5saW5lIFJlZkNvdW50ZXI8VD46On5SZWZDb3VudGVyKCkKIAog
dXNpbmcgV1RGOjpSZWZDb3VudGVyOwogdXNpbmcgV1RGOjpSZWZDb3VudGVyRXZlbnQ7Ci0KLSNl
bmRpZiAvLyBSZWZDb3VudGVyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JlZlB0ci5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZlB0ci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi9SZWZQdHIuaAkod29ya2luZyBjb3B5KQpAQCAtMjAsOCArMjAsNyBAQAog
CiAvLyBSZWZQdHIgaXMgZG9jdW1lbnRlZCBhdCBodHRwOi8vd2Via2l0Lm9yZy9jb2RpbmcvUmVm
UHRyLmh0bWwKIAotI2lmbmRlZiBXVEZfUmVmUHRyX2gKLSNkZWZpbmUgV1RGX1JlZlB0cl9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRlIDx1dGlsaXR5PgpA
QCAtMjg0LDUgKzI4MywzIEBAIHVzaW5nIFdURjo6UmVmUHRyOwogdXNpbmcgV1RGOjphZG9wdFJl
ZjsKIHVzaW5nIFdURjo6bWFrZVJlZlB0cjsKIHVzaW5nIFdURjo6c3RhdGljX3BvaW50ZXJfY2Fz
dDsKLQotI2VuZGlmIC8vIFdURl9SZWZQdHJfaApJbmRleDogU291cmNlL1dURi93dGYvUmV0YWlu
UHRyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUmV0YWluUHRyLmgJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1JldGFpblB0ci5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgUmV0YWluUHRyX2gKLSNkZWZpbmUg
UmV0YWluUHRyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL1BsYXRmb3JtLmg+CiAK
QEAgLTM4Miw1ICszODEsMyBAQCB1c2luZyBXVEY6OmR5bmFtaWNfb2JqY19jYXN0OwogI2VuZGlm
CiAKICNlbmRpZiAvLyBVU0UoQ0YpIHx8IGRlZmluZWQoX19PQkpDX18pCi0KLSNlbmRpZiAvLyBX
VEZfUmV0YWluUHRyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1J1bkxvb3AuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1J1bkxvb3AuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi9SdW5Mb29wLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBA
QAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJSdW5Mb29wLmgiCisjaW5j
bHVkZSA8d3RmL1J1bkxvb3AuaD4KIAogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgog
I2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1J1bkxv
b3AuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SdW5Mb29wLmgJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1J1bkxvb3AuaAkod29ya2luZyBjb3B5KQpAQCAtMjUs
OCArMjUsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNp
Zm5kZWYgUnVuTG9vcF9oCi0jZGVmaW5lIFJ1bkxvb3BfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDx3dGYvQ29uZGl0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL0RlcXVlLmg+CkBAIC0yMTIsNSAr
MjExLDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlJ1bkxv
b3A7Ci0KLSNlbmRpZiAvLyBSdW5Mb29wX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BU
aW1lci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lci5oCShyZXZp
c2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9SdW5Mb29wVGltZXIuaAkod29ya2luZyBj
b3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFJ1bkxv
b3BUaW1lcl9oCi0jZGVmaW5lIFJ1bkxvb3BUaW1lcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgPHd0Zi9TY2hlZHVsZVBhaXIuaD4KICNpbmNsdWRlIDx3dGYvU2Vjb25kcy5oPgpAQCAtODAs
NSArNzksMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6UnVu
TG9vcFRpbWVyOwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lckNG
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SdW5Mb29wVGltZXJDRi5jcHAJKHJl
dmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lckNGLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMzAsOSArMzAsOSBAQAogCiAjaWYgUExBVEZPUk0oQ09DT0EpICYmIEhB
VkUoUlVOTE9PUF9USU1FUikKIAotI2luY2x1ZGUgIlJ1bkxvb3BUaW1lci5oIgorI2luY2x1ZGUg
PHd0Zi9SdW5Mb29wVGltZXIuaD4KIAotI2luY2x1ZGUgIkF1dG9kcmFpbmVkUG9vbC5oIgorI2lu
Y2x1ZGUgPHd0Zi9BdXRvZHJhaW5lZFBvb2wuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL1NIQTEuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NI
QTEuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9TSEExLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMzAsMTAgKzMwLDEwIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIlNIQTEuaCIKKyNpbmNsdWRlIDx3dGYvU0hBMS5oPgogCi0jaW5jbHVkZSAi
QXNzZXJ0aW9ucy5oIgotI2luY2x1ZGUgInRleHQvQ1N0cmluZy5oIgorI2luY2x1ZGUgPHd0Zi9B
c3NlcnRpb25zLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogCiBuYW1lc3BhY2Ug
V1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvU0hBMS5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL1NIQTEuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU0hB
MS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKLSNpZm5kZWYgV1RGX1NIQTFfaAotI2RlZmluZSBXVEZfU0hBMV9oCisjcHJhZ21hIG9uY2UK
IAogI2luY2x1ZGUgPGFycmF5PgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTg4LDUgKzg3
LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlNIQTE7Ci0K
LSNlbmRpZiAvLyBXVEZfU0hBMV9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TYXR1cmF0ZWRBcml0
aG1ldGljLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU2F0dXJhdGVkQXJpdGhtZXRp
Yy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9TYXR1cmF0ZWRBcml0aG1l
dGljLmgJKHdvcmtpbmcgY29weSkKQEAgLTI5LDEzICsyOSwxMiBAQAogICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIFNhdHVyYXRlZEFyaXRobWV0aWNfaAotI2RlZmluZSBTYXR1cmF0ZWRB
cml0aG1ldGljX2gKKyNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiQ29tcGlsZXIuaCIKICNpbmNs
dWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+Cisj
aW5jbHVkZSA8d3RmL0NvbXBpbGVyLmg+CiAKIGlubGluZSBib29sIHNpZ25lZEFkZE92ZXJmbG93
cyhpbnQzMl90IGEsIGludDMyX3QgYiwgaW50MzJfdCYgcmVzdWx0KQogewpAQCAtMTAwLDUgKzk5
LDMgQEAgaW5saW5lIGludDMyX3Qgc2F0dXJhdGVkU3VidHJhY3Rpb24oaW50MwogI2VuZGlmCiAg
ICAgcmV0dXJuIHJlc3VsdDsKIH0KLQotI2VuZGlmIC8vIFNhdHVyYXRlZEFyaXRobWV0aWNfaApJ
bmRleDogU291cmNlL1dURi93dGYvU2NoZWR1bGVQYWlyLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvU2NoZWR1bGVQYWlyLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYv
d3RmL1NjaGVkdWxlUGFpci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw3IEBACiAgKiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgogICovCiAKLSNpZm5kZWYgU2NoZWR1bGVQYWlyX2gKLSNkZWZpbmUgU2NoZWR1bGVQ
YWlyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRl
IDx3dGYvUmV0YWluUHRyLmg+CkBAIC04OSw1ICs4OCwzIEBAIHR5cGVkZWYgSGFzaFNldDxSZWZQ
dHI8U2NoZWR1bGVQYWlyPiwgU2MKIAogdXNpbmcgV1RGOjpTY2hlZHVsZVBhaXI7CiB1c2luZyBX
VEY6OlNjaGVkdWxlUGFpckhhc2hTZXQ7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYv
U2NoZWR1bGVQYWlyQ0YuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NjaGVkdWxl
UGFpckNGLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU2NoZWR1bGVQ
YWlyQ0YuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw3ICsyNyw3IEBACiAgKi8KIAogI2luY2x1
ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlNjaGVkdWxlUGFpci5oIgorI2luY2x1ZGUgPHd0Zi9T
Y2hlZHVsZVBhaXIuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L1NjaGVkdWxlUGFpck1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TY2hlZHVs
ZVBhaXJNYWMubW0JKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1NjaGVkdWxl
UGFpck1hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtMjcsNyArMjcsNyBAQAogICovCiAKICNpbmNs
dWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJTY2hlZHVsZVBhaXIuaCIKKyNpbmNsdWRlIDx3dGYv
U2NoZWR1bGVQYWlyLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9TY29wZWRMYW1iZGEuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TY29wZWRMYW1i
ZGEuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU2NvcGVkTGFtYmRhLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAK
LSNpZm5kZWYgU2NvcGVkTGFtYmRhX2gKLSNkZWZpbmUgU2NvcGVkTGFtYmRhX2gKKyNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8d3RmL0ZvcmJpZEhlYXBBbGxvY2F0aW9uLmg+CiAKQEAgLTE5NSw2
ICsxOTQsMyBAQCBTY29wZWRMYW1iZGFSZWZGdW5jdG9yPEZ1bmN0aW9uVHlwZSwgRnVuCiB1c2lu
ZyBXVEY6OlNjb3BlZExhbWJkYTsKIHVzaW5nIFdURjo6c2NvcGVkTGFtYmRhOwogdXNpbmcgV1RG
OjpzY29wZWRMYW1iZGFSZWY7Ci0KLSNlbmRpZiAvLyBTY29wZWRMYW1iZGFfaAotCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9TZWNvbmRzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9T
ZWNvbmRzLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU2Vjb25kcy5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDE0ICsyNCwxNCBAQAogICovCiAKICNpbmNsdWRlICJj
b25maWcuaCIKLSNpbmNsdWRlICJTZWNvbmRzLmgiCisjaW5jbHVkZSA8d3RmL1NlY29uZHMuaD4K
IAotI2luY2x1ZGUgIkNvbmRpdGlvbi5oIgotI2luY2x1ZGUgIkxvY2suaCIKLSNpbmNsdWRlICJN
b25vdG9uaWNUaW1lLmgiCi0jaW5jbHVkZSAiUHJpbnRTdHJlYW0uaCIKLSNpbmNsdWRlICJUaW1l
V2l0aER5bmFtaWNDbG9ja1R5cGUuaCIKLSNpbmNsdWRlICJXYWxsVGltZS5oIgorI2luY2x1ZGUg
PHd0Zi9Db25kaXRpb24uaD4KKyNpbmNsdWRlIDx3dGYvTG9jay5oPgorI2luY2x1ZGUgPHd0Zi9N
b25vdG9uaWNUaW1lLmg+CisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5jbHVkZSA8
d3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oPgorI2luY2x1ZGUgPHd0Zi9XYWxsVGltZS5o
PgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvU2Vjb25kcy5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NlY29uZHMuaAkocmV2aXNpb24gMjM3MDcwKQor
KysgU291cmNlL1dURi93dGYvU2Vjb25kcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9TZWNvbmRzX2gKLSNkZWZp
bmUgV1RGX1NlY29uZHNfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJh
cy5oPgogI2luY2x1ZGUgPHd0Zi9PcHRpb25hbC5oPgpAQCAtMzU2LDUgKzM1NSwzIEBAIGlubGlu
ZSBib29sIGlzZmluaXRlKFdURjo6U2Vjb25kcyBzZWNvbmQKIAogdXNpbmcgbmFtZXNwYWNlIFdU
Rjo6c2Vjb25kc19saXRlcmFsczsKIHVzaW5nIFdURjo6U2Vjb25kczsKLQotI2VuZGlmIC8vIFdU
Rl9TZWNvbmRzX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1NlZ21lbnRlZFZlY3Rvci5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NlZ21lbnRlZFZlY3Rvci5oCShyZXZpc2lvbiAyMzcw
NzApCisrKyBTb3VyY2UvV1RGL3d0Zi9TZWdtZW50ZWRWZWN0b3IuaAkod29ya2luZyBjb3B5KQpA
QCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFNlZ21lbnRlZFZl
Y3Rvcl9oCi0jZGVmaW5lIFNlZ21lbnRlZFZlY3Rvcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTI3Myw1
ICsyNzIsMyBAQCBuYW1lc3BhY2UgV1RGIHsKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBX
VEY6OlNlZ21lbnRlZFZlY3RvcjsKLQotI2VuZGlmIC8vIFNlZ21lbnRlZFZlY3Rvcl9oCkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi9TZW50aW5lbExpbmtlZExpc3QuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9TZW50aW5lbExpbmtlZExpc3QuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291
cmNlL1dURi93dGYvU2VudGluZWxMaW5rZWRMaXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTM0LDgg
KzM0LDcgQEAKIC8vICAgICAgICB2b2lkIHNldE5leHQoTm9kZSopOwogLy8gICAgICAgIE5vZGUq
IG5leHQoKTsKIAotI2lmbmRlZiBTZW50aW5lbExpbmtlZExpc3RfaAotI2RlZmluZSBTZW50aW5l
bExpbmtlZExpc3RfaAorI3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC0yNzYs
NiArMjc1LDMgQEAgaW5saW5lIHZvaWQgU2VudGluZWxMaW5rZWRMaXN0PFQsIFJhd05vZAogCiB1
c2luZyBXVEY6OkJhc2ljUmF3U2VudGluZWxOb2RlOwogdXNpbmcgV1RGOjpTZW50aW5lbExpbmtl
ZExpc3Q7Ci0KLSNlbmRpZgotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TaGFyZWRUYXNrLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU2hhcmVkVGFzay5oCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi9TaGFyZWRUYXNrLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDgg
KzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU2hhcmVkVGFza19oCi0j
ZGVmaW5lIFNoYXJlZFRhc2tfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvUmVmLmg+
CiAjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+CkBAIC0xMjgsNiArMTI3LDMg
QEAgUmVmPFNoYXJlZFRhc2s8RnVuY3Rpb25UeXBlPj4gY3JlYXRlU2hhcgogdXNpbmcgV1RGOjpj
cmVhdGVTaGFyZWRUYXNrOwogdXNpbmcgV1RGOjpTaGFyZWRUYXNrOwogdXNpbmcgV1RGOjpTaGFy
ZWRUYXNrRnVuY3RvcjsKLQotI2VuZGlmIC8vIFNoYXJlZFRhc2tfaAotCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9TaW1wbGVTdGF0cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NpbXBs
ZVN0YXRzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1NpbXBsZVN0YXRz
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICov
CiAKLSNpZm5kZWYgU2ltcGxlU3RhdHNfaAotI2RlZmluZSBTaW1wbGVTdGF0c19oCisjcHJhZ21h
IG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAjaW5jbHVkZSA8d3RmL1N0ZExp
YkV4dHJhcy5oPgpAQCAtMTEyLDYgKzExMSwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBX
VEYKIAogdXNpbmcgV1RGOjpTaW1wbGVTdGF0czsKLQotI2VuZGlmIC8vIFNpbXBsZVN0YXRzX2gK
LQpJbmRleDogU291cmNlL1dURi93dGYvU2luZ2xlUm9vdEdyYXBoLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvU2luZ2xlUm9vdEdyYXBoLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNv
dXJjZS9XVEYvd3RmL1NpbmdsZVJvb3RHcmFwaC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsy
Myw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9TaW5nbGVSb290R3Jh
cGhfaAotI2RlZmluZSBXVEZfU2luZ2xlUm9vdEdyYXBoX2gKKyNwcmFnbWEgb25jZQogCiAjaW5j
bHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KICNpbmNsdWRlIDx3dGYvR3JhcGhOb2RlV29ya2xpc3Qu
aD4KQEAgLTMwNSw1ICszMDQsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVz
aW5nIFdURjo6U2luZ2xlUm9vdEdyYXBoOwotCi0jZW5kaWYgLy8gV1RGX1NpbmdsZVJvb3RHcmFw
aF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TaW5nbHlMaW5rZWRMaXN0LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvU2luZ2x5TGlua2VkTGlzdC5oCShyZXZpc2lvbiAyMzcwNzApCisr
KyBTb3VyY2UvV1RGL3d0Zi9TaW5nbHlMaW5rZWRMaXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIz
LDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0j
aWZuZGVmIFNpbmdseUxpbmtlZExpc3RfaAotI2RlZmluZSBTaW5nbHlMaW5rZWRMaXN0X2gKKyNw
cmFnbWEgb25jZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtNjgsNSArNjcsMyBAQCB0ZW1wbGF0
ZSA8dHlwZW5hbWUgTm9kZT4gaW5saW5lIE5vZGUqIFNpCiB9CiAKIHVzaW5nIFdURjo6U2luZ2x5
TGlua2VkTGlzdDsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TaXhDaGFyYWN0ZXJI
YXNoLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TaXhDaGFyYWN0ZXJIYXNoLmNw
cAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU2l4Q2hhcmFjdGVySGFzaC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29u
ZmlnLmgiCi0jaW5jbHVkZSAiU2l4Q2hhcmFjdGVySGFzaC5oIgorI2luY2x1ZGUgPHd0Zi9TaXhD
aGFyYWN0ZXJIYXNoLmg+CiAKICNpbmNsdWRlIDx3dGYvQVNDSUlDVHlwZS5oPgogCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9TaXhDaGFyYWN0ZXJIYXNoLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvU2l4Q2hhcmFjdGVySGFzaC5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RG
L3d0Zi9TaXhDaGFyYWN0ZXJIYXNoLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAK
ICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU2l4Q2hhcmFjdGVySGFzaF9oCi0jZGVm
aW5lIFNpeENoYXJhY3Rlckhhc2hfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhcnJheT4K
IApAQCAtNDMsNiArNDIsMyBAQCBXVEZfRVhQT1JUX1BSSVZBVEUgc3RkOjphcnJheTxjaGFyLCA3
PiBpCiAKIHVzaW5nIFdURjo6c2l4Q2hhcmFjdGVySGFzaFN0cmluZ1RvSW50ZWdlcjsKIHVzaW5n
IFdURjo6aW50ZWdlclRvU2l4Q2hhcmFjdGVySGFzaFN0cmluZzsKLQotI2VuZGlmIC8vIFNpeENo
YXJhY3Rlckhhc2hfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TbWFsbFB0clNldC5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NtYWxsUHRyU2V0LmgJKHJldmlzaW9uIDIzNzA3MCkK
KysrIFNvdXJjZS9XVEYvd3RmL1NtYWxsUHRyU2V0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDgg
KzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU21hbGxQdHJTZXRfaAot
I2RlZmluZSBTbWFsbFB0clNldF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3Nl
cnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KQEAgLTI0OSw1ICsyNDgsMyBA
QCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6U21hbGxQdHJTZXQ7
Ci0KLSNlbmRpZiAvLyBTbWFsbFB0clNldF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TcGVjdHJ1
bS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NwZWN0cnVtLmgJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1NwZWN0cnVtLmgJKHdvcmtpbmcgY29weSkKQEAgLTIz
LDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU3BlY3RydW1faAot
I2RlZmluZSBTcGVjdHJ1bV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9IYXNoTWFw
Lmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgpAQCAtMTIyLDUgKzEyMSwzIEBAIHByaXZhdGU6
CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpTcGVjdHJ1bTsKLQotI2VuZGlmIC8v
IFNwZWN0cnVtX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1N0YWNrQm91bmRzLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TdGFja0JvdW5kcy5jcHAJKHJldmlzaW9uIDIzNzA3MCkK
KysrIFNvdXJjZS9XVEYvd3RmL1N0YWNrQm91bmRzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTks
OSArMTksOSBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJTdGFja0Jv
dW5kcy5oIgogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHd0Zi9Ob1RhaWxDYWxscy5oPgor
I2luY2x1ZGUgPHd0Zi9TdGFja0JvdW5kcy5oPgogCiAjaWYgT1MoREFSV0lOKQogCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9TdGFja0JvdW5kcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L1N0YWNrQm91bmRzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1N0YWNr
Qm91bmRzLmgJKHdvcmtpbmcgY29weSkKQEAgLTI0LDggKzI0LDcgQEAKICAqCiAgKi8KIAotI2lm
bmRlZiBTdGFja0JvdW5kc19oCi0jZGVmaW5lIFN0YWNrQm91bmRzX2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPHd0Zi9TdGFja1BvaW50ZXIuaD4KQEAg
LTE2NCw1ICsxNjMsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdU
Rjo6U3RhY2tCb3VuZHM7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvU3RhY2tTdGF0
cy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU3RhY2tTdGF0cy5jcHAJKHJldmlz
aW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1N0YWNrU3RhdHMuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNCwxMiArMjQsMTIgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5j
bHVkZSAiU3RhY2tTdGF0cy5oIgorI2luY2x1ZGUgPHd0Zi9TdGFja1N0YXRzLmg+CiAKICNpZiBF
TkFCTEUoU1RBQ0tfU1RBVFMpIAogCi0jaW5jbHVkZSAiQXNzZXJ0aW9ucy5oIgotI2luY2x1ZGUg
IkRhdGFMb2cuaCIKKyNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgorI2luY2x1ZGUgPHd0Zi9E
YXRhTG9nLmg+CiAKIC8vIERlZmluZSB0aGUgZm9sbG93aW5nIGZsYWcgaWYgeW91IHdhbnQgdG8g
Y29sbGVjdCBzdGF0cyBvbiBldmVyeSBzaW5nbGUKIC8vIGNoZWNrcG9pbnQuIEJ5IGRlZmF1bHQs
IHdlIG9ubHkgbG9nIGNoZWNrcG9pbnRzIHRoYXQgZXN0YWJsaXNoIG5ldwpJbmRleDogU291cmNl
L1dURi93dGYvU3RhY2tTdGF0cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1N0YWNr
U3RhdHMuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU3RhY2tTdGF0cy5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMywxMSArMjMsMTAgQEAKICAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICov
CiAKLSNpZm5kZWYgU3RhY2tTdGF0c19oCi0jZGVmaW5lIFN0YWNrU3RhdHNfaAorI3ByYWdtYSBv
bmNlCiAKLSNpbmNsdWRlICJFeHBvcnRNYWNyb3MuaCIKICNpbmNsdWRlIDxtdXRleD4KKyNpbmNs
dWRlIDx3dGYvRXhwb3J0TWFjcm9zLmg+CiAKIAogLy8gRGVmaW5lIHRoaXMgZmxhZyB0byBlbmFi
bGUgU3RhY2sgc3RhdHMgY29sbGVjdGlvbi4gVGhpcyBmZWF0dXJlIGlzIHVzZWZ1bApAQCAtMTQz
LDUgKzE0MiwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpT
dGFja1N0YXRzOwotCi0jZW5kaWYgLy8gU3RhY2tTdGF0c19oCkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9TdGFja1RyYWNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TdGFja1RyYWNl
LmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU3RhY2tUcmFjZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiU3RhY2tUcmFjZS5oIgorI2luY2x1ZGUgPHd0Zi9TdGFja1RyYWNlLmg+
CiAKICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVh
bS5oPgpJbmRleDogU291cmNlL1dURi93dGYvU3RkTGliRXh0cmFzLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvU3RkTGliRXh0cmFzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL1N0ZExpYkV4dHJhcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw4ICsyNCw3IEBA
CiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9TdGRMaWJFeHRyYXNfaAotI2Rl
ZmluZSBXVEZfU3RkTGliRXh0cmFzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8Y3N0cmlu
Zz4KICNpbmNsdWRlIDxtZW1vcnk+CkBAIC01OTAsNSArNTg5LDMgQEAgdXNpbmcgV1RGOjptZXJn
ZURlZHVwbGljYXRlZFNvcnRlZDsKIHVzaW5nIFdURjo6cm91bmRVcFRvTXVsdGlwbGVPZjsKIHVz
aW5nIFdURjo6c2FmZUNhc3Q7CiB1c2luZyBXVEY6OnRyeUJpbmFyeVNlYXJjaDsKLQotI2VuZGlm
IC8vIFdURl9TdGRMaWJFeHRyYXNfaApJbmRleDogU291cmNlL1dURi93dGYvU3RyZWFtQnVmZmVy
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU3RyZWFtQnVmZmVyLmgJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1N0cmVhbUJ1ZmZlci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yOCw4ICsyOCw3IEBACiAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAqLwogCi0jaWZuZGVmIFdURl9TdHJl
YW1CdWZmZXJfaAotI2RlZmluZSBXVEZfU3RyZWFtQnVmZmVyX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8d3RmL0RlcXVlLmg+CiAKQEAgLTExMiw1ICsxMTEsMyBAQCBwcml2YXRlOgogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6U3RyZWFtQnVmZmVyOwotCi0jZW5kaWYgLy8g
V1RGX1N0cmVhbUJ1ZmZlcl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TdHJpbmdIYXNoRHVtcENv
bnRleHQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TdHJpbmdIYXNoRHVtcENvbnRl
eHQuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU3RyaW5nSGFzaER1bXBD
b250ZXh0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
IAogICovCiAKLSNpZm5kZWYgU3RyaW5nSGFzaER1bXBDb250ZXh0X2gKLSNkZWZpbmUgU3RyaW5n
SGFzaER1bXBDb250ZXh0X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAu
aD4KICNpbmNsdWRlIDx3dGYvU2l4Q2hhcmFjdGVySGFzaC5oPgpAQCAtMTE3LDYgKzExNiwzIEBA
IHB1YmxpYzoKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlN0cmluZ0hhc2hEdW1w
Q29udGV4dDsKLQotI2VuZGlmIC8vIFN0cmluZ0hhc2hEdW1wQ29udGV4dF9oCi0KSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL1N0cmluZ1ByaW50U3RyZWFtLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9TdHJpbmdQcmludFN0cmVhbS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL1N0cmluZ1ByaW50U3RyZWFtLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyAr
MjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJTdHJpbmdQcmlu
dFN0cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi9TdHJpbmdQcmludFN0cmVhbS5oPgogCiAjaW5jbHVk
ZSA8c3RkYXJnLmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1N0
cmluZ1ByaW50U3RyZWFtLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU3RyaW5nUHJp
bnRTdHJlYW0uaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU3RyaW5nUHJp
bnRTdHJlYW0uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCiAgKi8KIAotI2lmbmRlZiBTdHJpbmdQcmludFN0cmVhbV9oCi0jZGVmaW5lIFN0cmluZ1By
aW50U3RyZWFtX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+
CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgpAQCAtNzgsNiArNzcsMyBAQCBTdHJpbmcg
dG9TdHJpbmcoY29uc3QgVHlwZXMmLi4uIHZhbHVlcykKIHVzaW5nIFdURjo6U3RyaW5nUHJpbnRT
dHJlYW07CiB1c2luZyBXVEY6OnRvQ1N0cmluZzsKIHVzaW5nIFdURjo6dG9TdHJpbmc7Ci0KLSNl
bmRpZiAvLyBTdHJpbmdQcmludFN0cmVhbV9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVh
ZEdyb3VwLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRHcm91cC5jcHAJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1RocmVhZEdyb3VwLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJUaHJlYWRHcm91cC5oIgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRHcm91cC5oPgog
CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L1RocmVhZE1lc3NhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1RocmVhZE1l
c3NhZ2UuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRNZXNz
YWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJUaHJlYWRNZXNzYWdlLmgiCisjaW5jbHVkZSA8d3RmL1Ro
cmVhZE1lc3NhZ2UuaD4KIAogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAjaW5jbHVkZSA8d3RmL0xv
Y2tlci5oPgpJbmRleDogU291cmNlL1dURi93dGYvVGhyZWFkU3BlY2lmaWMuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRTcGVjaWZpYy5oCShyZXZpc2lvbiAyMzcwNzApCisr
KyBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRTcGVjaWZpYy5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOSw4
ICszOSw3IEBACiAgKiBXZWJLaXQgdGhlIHJlcGVhdGVkIGNhbGwgYmFoYXZpb3IgaXMgdXRpbGl6
ZWQuCiAgKi8KIAotI2lmbmRlZiBXVEZfVGhyZWFkU3BlY2lmaWNfaAotI2RlZmluZSBXVEZfVGhy
ZWFkU3BlY2lmaWNfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5o
PgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgpAQCAtMzExLDUgKzMxMCwzIEBAIGlubGlu
ZSBUJiBUaHJlYWRTcGVjaWZpYzxULCBjYW5CZUdDVGhyZWEKIH0gLy8gbmFtZXNwYWNlIFdURgog
CiB1c2luZyBXVEY6OlRocmVhZFNwZWNpZmljOwotCi0jZW5kaWYgLy8gV1RGX1RocmVhZFNwZWNp
ZmljX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZFNwZWNpZmljV2luLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRTcGVjaWZpY1dpbi5jcHAJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1RocmVhZFNwZWNpZmljV2luLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjAsNyArMjAsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJUaHJlYWRTcGVjaWZpYy5oIgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRTcGVjaWZpYy5oPgog
CiAjaWYgT1MoV0lORE9XUykKIApJbmRleDogU291cmNlL1dURi93dGYvVGhyZWFkaW5nLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuY3BwCShyZXZpc2lvbiAyMzcw
NzApCisrKyBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
NCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlRocmVh
ZGluZy5oIgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KIAogI2luY2x1ZGUgPGFsZ29yaXRo
bT4KICNpbmNsdWRlIDxjbWF0aD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5oCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuaAkod29ya2luZyBjb3B5KQpAQCAtMjgsOCAr
MjgsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFRocmVhZGluZ19oCi0jZGVmaW5l
IFRocmVhZGluZ19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUg
PHN0ZGludC5oPgpAQCAtMzQwLDUgKzMzOSwzIEBAIHVzaW5nIFdURjo6VGhyZWFkSWRlbnRpZmll
cjsKIHVzaW5nIFdURjo6Y3JlYXRlVGhyZWFkOwogdXNpbmcgV1RGOjp3YWl0Rm9yVGhyZWFkQ29t
cGxldGlvbjsKICNlbmRpZgotCi0jZW5kaWYgLy8gVGhyZWFkaW5nX2gKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL1RocmVhZGluZ1ByaW1pdGl2ZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9UaHJlYWRpbmdQcmltaXRpdmVzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYv
d3RmL1RocmVhZGluZ1ByaW1pdGl2ZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjgsOCArMjgsNyBA
QAogICoKICAqLwogCi0jaWZuZGVmIFRocmVhZGluZ1ByaW1pdGl2ZXNfaAotI2RlZmluZSBUaHJl
YWRpbmdQcmltaXRpdmVzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxs
b2MuaD4KICNpbmNsdWRlIDx3dGYvTG9ja2VyLmg+CkBAIC0xMTAsNSArMTA5LDMgQEAgcHJpdmF0
ZToKIHVzaW5nIFdURjo6TXV0ZXg7CiB1c2luZyBXVEY6Ok11dGV4TG9ja2VyOwogdXNpbmcgV1RG
OjpUaHJlYWRDb25kaXRpb247Ci0KLSNlbmRpZiAvLyBUaHJlYWRpbmdQcmltaXRpdmVzX2gKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmdQdGhyZWFkcy5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MzAsNyArMzAsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUaHJl
YWRpbmcuaCIKKyNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAKICNpZiBVU0UoUFRIUkVBRFMp
CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1dpbi5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvVGhyZWFkaW5nV2luLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291
cmNlL1dURi93dGYvVGhyZWFkaW5nV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODQsNyArODQs
NyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUaHJlYWRpbmcuaCIK
KyNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAKICNpZiBPUyhXSU5ET1dTKQogCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9UaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5jcHAJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI0LDE0ICsyNCwxNCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcu
aCIKLSNpbmNsdWRlICJUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuaCIKKyNpbmNsdWRlIDx3dGYv
VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlLmg+CiAKLSNpbmNsdWRlICJDb25kaXRpb24uaCIKLSNp
bmNsdWRlICJMb2NrLmgiCi0jaW5jbHVkZSAiUHJpbnRTdHJlYW0uaCIKICNpbmNsdWRlIDxjZmxv
YXQ+CiAjaW5jbHVkZSA8Y21hdGg+CisjaW5jbHVkZSA8d3RmL0NvbmRpdGlvbi5oPgogI2luY2x1
ZGUgPHd0Zi9EYXRhTG9nLmg+CisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5jbHVk
ZSA8d3RmL0xvY2suaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2Uv
V1RGL3d0Zi9UaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuaAkod29ya2luZyBjb3B5KQpAQCAtMjMs
OCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfVGltZVdpdGhE
eW5hbWljQ2xvY2tUeXBlX2gKLSNkZWZpbmUgV1RGX1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZV9o
CisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9DbG9ja1R5cGUuaD4KICNpbmNsdWRlIDx3
dGYvTW9ub3RvbmljVGltZS5oPgpAQCAtMTYwLDUgKzE1OSwzIEBAIGlubGluZSBib29sIGlzZmlu
aXRlKFdURjo6VGltZVdpdGhEeW5hbWkKIHVzaW5nIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tU
eXBlOwogdXNpbmcgV1RGOjpoYXNFbGFwc2VkOwogdXNpbmcgV1RGOjpzbGVlcDsKLQotI2VuZGlm
IC8vIFdURl9UaW1lV2l0aER5bmFtaWNDbG9ja1R5cGVfaApJbmRleDogU291cmNlL1dURi93dGYv
VGltaW5nU2NvcGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1RpbWluZ1Njb3Bl
LmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvVGltaW5nU2NvcGUuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgIlRpbWluZ1Njb3BlLmgiCisjaW5jbHVkZSA8d3RmL1RpbWluZ1Njb3Bl
Lmg+CiAKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+Cklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9UaW55TFJVQ2FjaGUuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9UaW55TFJVQ2FjaGUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93
dGYvVGlueUxSVUNhY2hlLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFRpbnlMUlVDYWNo
ZV9oCi0jZGVmaW5lIFRpbnlMUlVDYWNoZV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0
Zi9OZXZlckRlc3Ryb3llZC5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTgwLDUgKzc5
LDMgQEAgcHJpdmF0ZToKIAogdXNpbmcgV1RGOjpUaW55TFJVQ2FjaGU7CiB1c2luZyBXVEY6OlRp
bnlMUlVDYWNoZVBvbGljeTsKLQotI2VuZGlmIC8vIFRpbnlMUlVDYWNoZV9oCkluZGV4OiBTb3Vy
Y2UvV1RGL3d0Zi9UaW55UHRyU2V0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvVGlu
eVB0clNldC5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9UaW55UHRyU2V0
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICov
CiAKLSNpZm5kZWYgVGlueVB0clNldF9oCi0jZGVmaW5lIFRpbnlQdHJTZXRfaAorI3ByYWdtYSBv
bmNlCiAKICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9GYXN0TWFs
bG9jLmg+CkBAIC01MjYsNiArNTI1LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgog
CiB1c2luZyBXVEY6OlRpbnlQdHJTZXQ7Ci0KLSNlbmRpZiAvLyBUaW55UHRyU2V0X2gKLQpJbmRl
eDogU291cmNlL1dURi93dGYvVHJpU3RhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9UcmlTdGF0ZS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9UcmlTdGF0
ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAq
LwogCi0jaWZuZGVmIFRyaVN0YXRlX2gKLSNkZWZpbmUgVHJpU3RhdGVfaAorI3ByYWdtYSBvbmNl
CiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC00Niw1ICs0NSwzIEBAIHVzaW5nIFdURjo6RmFsc2VU
cmlTdGF0ZTsKIHVzaW5nIFdURjo6VHJ1ZVRyaVN0YXRlOwogdXNpbmcgV1RGOjpNaXhlZFRyaVN0
YXRlOwogdXNpbmcgV1RGOjp0cmlTdGF0ZTsKLQotI2VuZGlmIC8vIFRyaVN0YXRlX2gKSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL1R5cGVDYXN0cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L1R5cGVDYXN0cy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9UeXBlQ2Fz
dHMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgVHlwZUNhc3RzX2gKLSNkZWZpbmUgVHlw
ZUNhc3RzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8dHlwZV90cmFpdHM+CiAKQEAgLTEw
OCw1ICsxMDcsMyBAQCBwcml2YXRlOgogdXNpbmcgV1RGOjpUeXBlQ2FzdFRyYWl0czsKIHVzaW5n
IFdURjo6aXM7CiB1c2luZyBXVEY6OmRvd25jYXN0OwotCi0jZW5kaWYgLy8gVHlwZUNhc3RzX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL1VVSUQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL1VVSUQuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9VVUlELmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjksNyArMjksNyBAQAogICovCiAKICNpbmNsdWRlICJjb25m
aWcuaCIKLSNpbmNsdWRlICJVVUlELmgiCisjaW5jbHVkZSA8d3RmL1VVSUQuaD4KIAogI2luY2x1
ZGUgPHd0Zi9DcnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlci5oPgogI2luY2x1ZGUgPHd0Zi9I
ZXhOdW1iZXIuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1VuaVN0ZEV4dHJhcy5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvVW5pU3RkRXh0cmFzLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvVW5pU3RkRXh0cmFzLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJVbmlT
dGRFeHRyYXMuaCIKKyNpbmNsdWRlIDx3dGYvVW5pU3RkRXh0cmFzLmg+CiAKICNpbmNsdWRlIDxm
Y250bC5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9VbmlvbkZpbmQuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9VbmlvbkZpbmQuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNl
L1dURi93dGYvVW5pb25GaW5kLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgVW5pb25GaW5kX2gKLSNkZWZpbmUgVW5pb25G
aW5kX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIApAQCAt
MTA4LDUgKzEwNywzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RG
OjpVbmlvbkZpbmQ7Ci0KLSNlbmRpZiAvLyBVbmlvbkZpbmRfaApJbmRleDogU291cmNlL1dURi93
dGYvVk1UYWdzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvVk1UYWdzLmgJKHJldmlz
aW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1ZNVGFncy5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFZNVGFnc19o
Ci0jZGVmaW5lIFZNVGFnc19oCisjcHJhZ21hIG9uY2UKIAogLy8gT24gTWFjIE9TIFgsIHRoZSBW
TSBzdWJzeXN0ZW0gYWxsb3dzIHRhZ2dpbmcgbWVtb3J5IHJlcXVlc3RlZCBmcm9tIG1tYXAgYW5k
IHZtX21hcAogLy8gaW4gb3JkZXIgdG8gYWlkIHRvb2xzIHRoYXQgaW5zcGVjdCBzeXN0ZW0gbWVt
b3J5IHVzZS4gCkBAIC02NCw1ICs2MywzIEBACiAjZGVmaW5lIFZNX1RBR19GT1JfUkVHSVNURVJG
SUxFX01FTU9SWSAtMQogCiAjZW5kaWYgLy8gT1MoREFSV0lOKQotCi0jZW5kaWYgLy8gVk1UYWdz
X2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1ZhbHVlQ2hlY2suaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9WYWx1ZUNoZWNrLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYv
d3RmL1ZhbHVlQ2hlY2suaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBWYWx1ZUNoZWNrX2gKLSNkZWZpbmUgVmFsdWVDaGVj
a19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAKQEAgLTQ5
LDUgKzQ4LDMgQEAgdGVtcGxhdGU8dHlwZW5hbWUgUD4gc3RydWN0IFZhbHVlQ2hlY2s8UAogI2Vu
ZGlmCiAKIH0KLQotI2VuZGlmIC8vIFZhbHVlQ2hlY2tfaApJbmRleDogU291cmNlL1dURi93dGYv
VmVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvVmVjdG9yLmgJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1ZlY3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0x
OCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX1ZlY3Rvcl9oCi0jZGVmaW5lIFdU
Rl9WZWN0b3JfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxpbml0aWFsaXplcl9saXN0Pgog
I2luY2x1ZGUgPGxpbWl0cz4KQEAgLTE3MDgsNSArMTcwNywzIEBAIHVzaW5nIFdURjo6Y29weVRv
VmVjdG9yOwogdXNpbmcgV1RGOjpjb3B5VG9WZWN0b3JPZjsKIHVzaW5nIFdURjo6Y29weVRvVmVj
dG9yU3BlY2lhbGl6YXRpb247CiB1c2luZyBXVEY6OnJlbW92ZVJlcGVhdGVkRWxlbWVudHM7Ci0K
LSNlbmRpZiAvLyBXVEZfVmVjdG9yX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1ZlY3RvclRyYWl0
cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1ZlY3RvclRyYWl0cy5oCShyZXZpc2lv
biAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9WZWN0b3JUcmFpdHMuaAkod29ya2luZyBjb3B5
KQpAQCAtMTgsOCArMTgsNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9WZWN0b3JUcmFpdHNf
aAotI2RlZmluZSBXVEZfVmVjdG9yVHJhaXRzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8
d3RmL1JlZi5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KQEAgLTkyLDUgKzkxLDMgQEAgbmFt
ZXNwYWNlIFdURiB7CiAKIHVzaW5nIFdURjo6VmVjdG9yVHJhaXRzOwogdXNpbmcgV1RGOjpTaW1w
bGVDbGFzc1ZlY3RvclRyYWl0czsKLQotI2VuZGlmIC8vIFdURl9WZWN0b3JUcmFpdHNfaApJbmRl
eDogU291cmNlL1dURi93dGYvV2FsbFRpbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL1dhbGxUaW1lLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvV2Fs
bFRpbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMSArMjQsMTEgQEAKICAqLwogCiAjaW5j
bHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV2FsbFRpbWUuaCIKKyNpbmNsdWRlIDx3dGYvV2Fs
bFRpbWUuaD4KIAotI2luY2x1ZGUgIk1vbm90b25pY1RpbWUuaCIKLSNpbmNsdWRlICJQcmludFN0
cmVhbS5oIgotI2luY2x1ZGUgIlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oIgorI2luY2x1ZGUg
PHd0Zi9Nb25vdG9uaWNUaW1lLmg+CisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5j
bHVkZSA8d3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oPgogCiBuYW1lc3BhY2UgV1RGIHsK
IApJbmRleDogU291cmNlL1dURi93dGYvV2FsbFRpbWUuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9XYWxsVGltZS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9X
YWxsVGltZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LiAKICAqLwogCi0jaWZuZGVmIFdURl9XYWxsVGltZV9oCi0jZGVmaW5lIFdURl9XYWxsVGltZV9o
CisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9DbG9ja1R5cGUuaD4KICNpbmNsdWRlIDx3
dGYvU2Vjb25kcy5oPgpAQCAtMTgxLDUgKzE4MCwzIEBAIGlubGluZSBib29sIGlzZmluaXRlKFdU
Rjo6V2FsbFRpbWUgdGltZSkKIH0gLy8gbmFtZXNwYWNlIHN0ZAogCiB1c2luZyBXVEY6OldhbGxU
aW1lOwotCi0jZW5kaWYgLy8gV1RGX1dhbGxUaW1lX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1dl
YWtQdHIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9XZWFrUHRyLmgJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1dlYWtQdHIuaAkod29ya2luZyBjb3B5KQpAQCAt
MjQsOCArMjQsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9XZWFrUHRy
X2gKLSNkZWZpbmUgV1RGX1dlYWtQdHJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYv
Tm9uY29weWFibGUuaD4KICNpbmNsdWRlIDx3dGYvUmVmLmg+CkBAIC0yMjMsNSArMjIyLDMgQEAg
dXNpbmcgV1RGOjpXZWFrUHRyOwogdXNpbmcgV1RGOjpXZWFrUHRyRmFjdG9yeTsKIHVzaW5nIFdU
Rjo6V2Vha1JlZmVyZW5jZTsKIHVzaW5nIFdURjo6bWFrZVdlYWtQdHI7Ci0KLSNlbmRpZgpJbmRl
eDogU291cmNlL1dURi93dGYvV2Vha1JhbmRvbS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL1dlYWtSYW5kb20uaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvV2Vh
a1JhbmRvbS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw3IEBACiAgKiBTZWUgYWxzbyBo
dHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Yb3JzaGlmdC4KICAqLwogCi0jaWZuZGVmIFdl
YWtSYW5kb21faAotI2RlZmluZSBXZWFrUmFuZG9tX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVk
ZSA8bGltaXRzLmg+CiAjaW5jbHVkZSA8d3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVy
Lmg+CkBAIC0xMDksNSArMTA4LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1
c2luZyBXVEY6OldlYWtSYW5kb207Ci0KLSNlbmRpZiAvLyBXZWFrUmFuZG9tX2gKSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL1dvcmRMb2NrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9X
b3JkTG9jay5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1dvcmRMb2Nr
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsMTIgKzI0LDEyIEBACiAgKi8KIAogI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIldvcmRMb2NrLmgiCisjaW5jbHVkZSA8d3RmL1dvcmRMb2Nr
Lmg+CiAKLSNpbmNsdWRlICJUaHJlYWRpbmcuaCIKICNpbmNsdWRlIDxjb25kaXRpb25fdmFyaWFi
bGU+CiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8dGhyZWFkPgorI2luY2x1ZGUgPHd0Zi9U
aHJlYWRpbmcuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1dv
cmRMb2NrLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvV29yZExvY2suaAkocmV2aXNp
b24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvV29yZExvY2suaAkod29ya2luZyBjb3B5KQpA
QCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfV29y
ZExvY2tfaAotI2RlZmluZSBXVEZfV29yZExvY2tfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRl
IDx3dGYvQXRvbWljcy5oPgogI2luY2x1ZGUgPHd0Zi9Db21waWxlci5oPgpAQCAtMTA3LDYgKzEw
NiwzIEBAIHVzaW5nIFdvcmRMb2NrSG9sZGVyID0gTG9ja2VyPFdvcmRMb2NrPjsKIAogdXNpbmcg
V1RGOjpXb3JkTG9jazsKIHVzaW5nIFdURjo6V29yZExvY2tIb2xkZXI7Ci0KLSNlbmRpZiAvLyBX
VEZfV29yZExvY2tfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Xb3JrUXVldWUuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1dvcmtRdWV1ZS5jcHAJKHJldmlzaW9uIDIzNzA3MCkK
KysrIFNvdXJjZS9XVEYvd3RmL1dvcmtRdWV1ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcg
KzI1LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya1F1ZXVl
LmgiCisjaW5jbHVkZSA8d3RmL1dvcmtRdWV1ZS5oPgogCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5j
bHVkZSA8d3RmL0NvbmRpdGlvbi5oPgpJbmRleDogU291cmNlL1dURi93dGYvV29ya1F1ZXVlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvV29ya1F1ZXVlLmgJKHJldmlzaW9uIDIzNzA3
MCkKKysrIFNvdXJjZS9XVEYvd3RmL1dvcmtRdWV1ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4
ICsyNSw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lm
bmRlZiBXb3JrUXVldWVfaAotI2RlZmluZSBXb3JrUXVldWVfaAorI3ByYWdtYSBvbmNlCiAKICNp
bmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlvbkRpc3BhdGNoZXIu
aD4KQEAgLTExMiw1ICsxMTEsMyBAQCBwcml2YXRlOgogfQogCiB1c2luZyBXVEY6OldvcmtRdWV1
ZTsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Xb3JrZXJQb29sLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Xb3JrZXJQb29sLmNwcAkocmV2aXNpb24gMjM3MDcwKQor
KysgU291cmNlL1dURi93dGYvV29ya2VyUG9vbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcg
KzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya2VyUG9v
bC5oIgorI2luY2x1ZGUgPHd0Zi9Xb3JrZXJQb29sLmg+CiAKICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvZHRvYS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvZHRvYS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9X
VEYvd3RmL2R0b2EuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMyw3ICszMyw3IEBACiAgKi8KIAog
I2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgImR0b2EuaCIKKyNpbmNsdWRlIDx3dGYvZHRv
YS5oPgogCiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDx3dGYvTG9jay5oPgpJbmRleDog
U291cmNlL1dURi93dGYvZHRvYS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2R0b2Eu
aAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvZHRvYS5oCSh3b3JraW5nIGNv
cHkpCkBAIC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX2R0b2FfaAotI2Rl
ZmluZSBXVEZfZHRvYV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHVuaWNvZGUvdXR5cGVz
Lmg+CiAjaW5jbHVkZSA8d3RmL0FTQ0lJQ1R5cGUuaD4KQEAgLTgyLDUgKzgxLDMgQEAgdXNpbmcg
V1RGOjpudW1iZXJUb1N0cmluZzsKIHVzaW5nIFdURjo6bnVtYmVyVG9GaXhlZFByZWNpc2lvblN0
cmluZzsKIHVzaW5nIFdURjo6bnVtYmVyVG9GaXhlZFdpZHRoU3RyaW5nOwogdXNpbmcgV1RGOjpw
YXJzZURvdWJsZTsKLQotI2VuZGlmIC8vIFdURl9kdG9hX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L21ibWFsbG9jLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9tYm1hbGxvYy5jcHAJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL21ibWFsbG9jLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNp
bmNsdWRlICJGYXN0TWFsbG9jLmgiCisjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KIAogI2Rl
ZmluZSBFWFBPUlQgX19hdHRyaWJ1dGVfXygodmlzaWJpbGl0eSgiZGVmYXVsdCIpKSkKIApJbmRl
eDogU291cmNlL1dURi93dGYvY2YvTGFuZ3VhZ2VDRi5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvY2YvTGFuZ3VhZ2VDRi5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9X
VEYvd3RmL2NmL0xhbmd1YWdlQ0YuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBA
CiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkxhbmd1YWdlLmgiCisjaW5j
bHVkZSA8d3RmL0xhbmd1YWdlLmg+CiAKICNpbmNsdWRlIDxDb3JlRm91bmRhdGlvbi9Db3JlRm91
bmRhdGlvbi5oPgogI2luY2x1ZGUgPG11dGV4PgpJbmRleDogU291cmNlL1dURi93dGYvY2YvUnVu
TG9vcENGLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9jZi9SdW5Mb29wQ0YuY3Bw
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9jZi9SdW5Mb29wQ0YuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIlJ1bkxvb3AuaCIKKyNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgogCiAjaW5j
bHVkZSA8Q29yZUZvdW5kYXRpb24vQ29yZUZvdW5kYXRpb24uaD4KICNpbmNsdWRlIDxkaXNwYXRj
aC9kaXNwYXRjaC5oPgpJbmRleDogU291cmNlL1dURi93dGYvY29jb2EvRW50aXRsZW1lbnRzLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2NvY29hL0VudGl0bGVtZW50cy5tbQkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvY29jb2EvRW50aXRsZW1lbnRzLm1tCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIkVudGl0bGVtZW50cy5oIgorI2luY2x1ZGUgPHd0Zi9jb2NvYS9FbnRpdGxl
bWVudHMuaD4KIAogI2luY2x1ZGUgPHd0Zi9PU09iamVjdFB0ci5oPgogI2luY2x1ZGUgPHd0Zi9S
ZXRhaW5QdHIuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL2NvY29hL01hY2hTZW5kUmlnaHQuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2NvY29hL01hY2hTZW5kUmlnaHQuY3BwCShy
ZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NYWNoU2VuZFJpZ2h0LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25m
aWcuaCIKLSNpbmNsdWRlICJNYWNoU2VuZFJpZ2h0LmgiCisjaW5jbHVkZSA8d3RmL01hY2hTZW5k
UmlnaHQuaD4KIAogI2luY2x1ZGUgPG1hY2gvbWFjaF9lcnJvci5oPgogI2luY2x1ZGUgPG1hY2gv
bWFjaF9pbml0Lmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NYWluVGhyZWFkQ29jb2Eu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvY29jb2EvTWFpblRocmVhZENvY29hLm1t
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NYWluVGhyZWFkQ29j
b2EubW0JKHdvcmtpbmcgY29weSkKQEAgLTI3LDcgKzI3LDcgQEAKICAqLwogCiAjaW1wb3J0ICJj
b25maWcuaCIKLSNpbXBvcnQgIk1haW5UaHJlYWQuaCIKKyNpbXBvcnQgPHd0Zi9NYWluVGhyZWFk
Lmg+CiAKICNpbXBvcnQgPENvcmVGb3VuZGF0aW9uL0NvcmVGb3VuZGF0aW9uLmg+CiAjaW1wb3J0
IDxGb3VuZGF0aW9uL05TVGhyZWFkLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NZW1v
cnlGb290cHJpbnRDb2NvYS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvY29jb2Ev
TWVtb3J5Rm9vdHByaW50Q29jb2EuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RG
L3d0Zi9jb2NvYS9NZW1vcnlGb290cHJpbnRDb2NvYS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0
LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTWVtb3J5
Rm9vdHByaW50LmgiCisjaW5jbHVkZSA8d3RmL01lbW9yeUZvb3RwcmludC5oPgogCiAjaW5jbHVk
ZSA8bWFjaC9tYWNoLmg+CiAjaW5jbHVkZSA8bWFjaC90YXNrX2luZm8uaD4KSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL2NvY29hL01lbW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL2NvY29hL01lbW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1tCShy
ZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NZW1vcnlQcmVzc3VyZUhh
bmRsZXJDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNp
bXBvcnQgImNvbmZpZy5oIgotI2ltcG9ydCAiTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmgiCisjaW1w
b3J0IDx3dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmg+CiAKICNpbXBvcnQgPG1hY2gvbWFjaC5o
PgogI2ltcG9ydCA8bWFjaC90YXNrX2luZm8uaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL2NvY29h
L1dvcmtRdWV1ZUNvY29hLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9X
b3JrUXVldWVDb2NvYS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL2Nv
Y29hL1dvcmtRdWV1ZUNvY29hLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsOSArMjQsMTAgQEAK
ICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya1F1ZXVlLmgiCi0jaW5j
bHVkZSAiQmxvY2tQdHIuaCIKLSNpbmNsdWRlICJSZWYuaCIKKyNpbmNsdWRlIDx3dGYvV29ya1F1
ZXVlLmg+CisKKyNpbmNsdWRlIDx3dGYvQmxvY2tQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmLmg+
CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9mdWNoc2lhL0NQVVRp
bWVGdWNoc2lhLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9mdWNoc2lhL0NQVVRp
bWVGdWNoc2lhLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvZnVjaHNp
YS9DUFVUaW1lRnVjaHNpYS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAq
LwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ1BVVGltZS5oIgorI2luY2x1ZGUg
PHd0Zi9DUFVUaW1lLmg+CiAKICNpbmNsdWRlIDx6aXJjb24vc3lzY2FsbHMuaD4KIApJbmRleDog
U291cmNlL1dURi93dGYvZ2VuZXJpYy9NZW1vcnlGb290cHJpbnRHZW5lcmljLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL01lbW9yeUZvb3RwcmludEdlbmVyaWMuY3Bw
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL01lbW9yeUZvb3Rw
cmludEdlbmVyaWMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAog
I2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk1lbW9yeUZvb3RwcmludC5oIgorI2luY2x1
ZGUgPHd0Zi9NZW1vcnlGb290cHJpbnQuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL2dlbmVyaWMvTWVtb3J5UHJlc3N1cmVIYW5kbGVyR2VuZXJpYy5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvZ2VuZXJpYy9NZW1vcnlQcmVzc3VyZUhhbmRsZXJH
ZW5lcmljLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvZ2VuZXJpYy9N
ZW1vcnlQcmVzc3VyZUhhbmRsZXJHZW5lcmljLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyAr
MjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNZW1vcnlQcmVz
c3VyZUhhbmRsZXIuaCIKKyNpbmNsdWRlIDx3dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmg+CiAK
IG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL1J1bkxvb3BH
ZW5lcmljLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL1J1bkxvb3BH
ZW5lcmljLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvZ2VuZXJpYy9S
dW5Mb29wR2VuZXJpYy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUnVuTG9vcC5oIgorI2luY2x1ZGUgPHd0
Zi9SdW5Mb29wLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9n
ZW5lcmljL1dvcmtRdWV1ZUdlbmVyaWMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L2dlbmVyaWMvV29ya1F1ZXVlR2VuZXJpYy5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL2dlbmVyaWMvV29ya1F1ZXVlR2VuZXJpYy5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI4LDcgKzI4LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29y
a1F1ZXVlLmgiCisjaW5jbHVkZSA8d3RmL1dvcmtRdWV1ZS5oPgogCiAjaW5jbHVkZSA8d3RmL1dh
bGxUaW1lLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9nbGliL0dMaWJVdGlsaXRpZXMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL2dsaWIvR0xpYlV0aWxpdGllcy5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9X
VEYvd3RmL2dsaWIvR0xpYlV0aWxpdGllcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4LDcgKzE4
LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiR0xpYlV0aWxpdGll
cy5oIgorI2luY2x1ZGUgPHd0Zi9nbGliL0dMaWJVdGlsaXRpZXMuaD4KIAogI2luY2x1ZGUgPGds
aWIuaD4KICNpbmNsdWRlIDx3dGYvZ2xpYi9HVW5pcXVlUHRyLmg+CkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi9nbGliL0dSZWZQdHIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2dsaWIv
R1JlZlB0ci5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL2dsaWIvR1Jl
ZlB0ci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE3LDcgKzE3LDcgQEAKICAqLwogCiAjaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiR1JlZlB0ci5oIgorI2luY2x1ZGUgPHd0Zi9nbGliL0dS
ZWZQdHIuaD4KIAogI2lmIFVTRShHTElCKQogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9nbGliL1J1
bkxvb3BHTGliLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9nbGliL1J1bkxvb3BH
TGliLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvZ2xpYi9SdW5Mb29w
R0xpYi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwogCiAjaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUnVuTG9vcC5oIgorI2luY2x1ZGUgPHd0Zi9SdW5Mb29w
Lmg+CiAKICNpbmNsdWRlIDxnbGliLmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhyZWFkLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9pb3MvV2ViQ29yZVRocmVhZC5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhyZWFkLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJXZWJD
b3JlVGhyZWFkLmgiCisjaW5jbHVkZSA8d3RmL2lvcy9XZWJDb3JlVGhyZWFkLmg+CiAKICNpZiBV
U0UoV0VCX1RIUkVBRCkKIFdURl9FWFBPUlRfUFJJVkFURSBib29sICgqV2ViQ29yZVdlYlRocmVh
ZElzTG9ja2VkT3JEaXNhYmxlZCkodm9pZCk7CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9pb3MvV2Vi
Q29yZVRocmVhZC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhy
ZWFkLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhy
ZWFkLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDEwICsyMyw3IEBACiAgKiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKLS8vIFNpbmNlIHRoaXMgaXMgYSBzaGFyZWQgaGVhZGVyLCB3aXRoIHRoZSBzYW1lIGZpbGUg
bmFtZSBhcyBhIGZpbGUgaW4KLS8vIFdlYkNvcmUgd2UgcHJlZml4IHRoaXMgd2l0aCBXVEYgdG8g
bWFrZSBpdCB1bmlxdWUuCi0jaWZuZGVmIFdURl9XZWJDb3JlVGhyZWFkX2gKLSNkZWZpbmUgV1RG
X1dlYkNvcmVUaHJlYWRfaAorI3ByYWdtYSBvbmNlCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0
ZXJuICJDIiB7CkBAIC0zOSw1ICszNiwzIEBAIGV4dGVybiB2b2lkICgqV2ViQ29yZVdlYlRocmVh
ZFJ1bikodm9pZCAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCi0KLSNlbmRpZiAvLyBX
VEZfV2ViQ29yZVRocmVhZF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9saW51eC9DdXJyZW50UHJv
Y2Vzc01lbW9yeVN0YXR1cy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvbGludXgv
Q3VycmVudFByb2Nlc3NNZW1vcnlTdGF0dXMuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9saW51eC9DdXJyZW50UHJvY2Vzc01lbW9yeVN0YXR1cy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5j
bHVkZSAiQ3VycmVudFByb2Nlc3NNZW1vcnlTdGF0dXMuaCIKKyNpbmNsdWRlIDx3dGYvbGludXgv
Q3VycmVudFByb2Nlc3NNZW1vcnlTdGF0dXMuaD4KIAogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5j
bHVkZSA8c3RkbGliLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9saW51eC9NZW1vcnlGb290cHJp
bnRMaW51eC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvbGludXgvTWVtb3J5Rm9v
dHByaW50TGludXguY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9saW51
eC9NZW1vcnlGb290cHJpbnRMaW51eC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDEwICsyNCwx
MCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNZW1vcnlGb290cHJp
bnQuaCIKKyNpbmNsdWRlIDx3dGYvTWVtb3J5Rm9vdHByaW50Lmg+CiAKLSNpbmNsdWRlICJNb25v
dG9uaWNUaW1lLmgiCiAjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDx3dGYvTW9ub3Rvbmlj
VGltZS5oPgogI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvdGV4
dC9TdHJpbmdWaWV3Lmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL2xpbnV4L01lbW9yeVByZXNz
dXJlSGFuZGxlckxpbnV4LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9saW51eC9N
ZW1vcnlQcmVzc3VyZUhhbmRsZXJMaW51eC5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL2xpbnV4L01lbW9yeVByZXNzdXJlSGFuZGxlckxpbnV4LmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjYsNyArMjYsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJNZW1vcnlQcmVzc3VyZUhhbmRsZXIuaCIKKyNpbmNsdWRlIDx3dGYvTWVtb3J5UHJlc3N1
cmVIYW5kbGVyLmg+CiAKICNpbmNsdWRlIDxtYWxsb2MuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4K
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL21hYy9BcHBLaXRDb21wYXRpYmlsaXR5RGVjbGFyYXRpb25z
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvbWFjL0FwcEtpdENvbXBhdGliaWxpdHlE
ZWNsYXJhdGlvbnMuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvbWFjL0Fw
cEtpdENvbXBhdGliaWxpdHlEZWNsYXJhdGlvbnMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCAr
MjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5k
ZWYgQXBwS2l0Q29tcGF0aWJpbGl0eURlY2xhcmF0aW9uc19oCi0jZGVmaW5lIEFwcEtpdENvbXBh
dGliaWxpdHlEZWNsYXJhdGlvbnNfaAorI3ByYWdtYSBvbmNlCiAKICNpbXBvcnQgPEF2YWlsYWJp
bGl0eS5oPgogCkBAIC00NSw1ICs0NCwzIEBAIHN0YXRpYyBjb25zdCBOU0xldmVsSW5kaWNhdG9y
U3R5bGUgTlNMZXYKIHN0YXRpYyBjb25zdCBOU0xldmVsSW5kaWNhdG9yU3R5bGUgTlNMZXZlbElu
ZGljYXRvclN0eWxlUmF0aW5nID0gTlNSYXRpbmdMZXZlbEluZGljYXRvclN0eWxlOwogCiAjZW5k
aWYgLy8gX19NQUNfT1NfWF9WRVJTSU9OX01BWF9BTExPV0VEIDwgMTAxMzAwCi0KLSNlbmRpZiAv
LyBBcHBLaXRDb21wYXRpYmlsaXR5RGVjbGFyYXRpb25zX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L21hYy9EZXByZWNhdGVkU3ltYm9sc1VzZWRCeVNhZmFyaS5tbQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9tYWMvRGVwcmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0JKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL21hYy9EZXByZWNhdGVkU3ltYm9sc1VzZWRCeVNh
ZmFyaS5tbQkod29ya2luZyBjb3B5KQpAQCAtMjUsMTMgKzI1LDEzIEBACiAKICNpbmNsdWRlICJj
b25maWcuaCIKIAotI2luY2x1ZGUgIkhhc2hNYXAuaCIKLSNpbmNsdWRlICJIYXNoU2V0LmgiCi0j
aW5jbHVkZSAiTG9jay5oIgotI2luY2x1ZGUgIk1haW5UaHJlYWQuaCIKLSNpbmNsdWRlICJOZXZl
ckRlc3Ryb3llZC5oIgotI2luY2x1ZGUgIlN0ZExpYkV4dHJhcy5oIgogI2luY2x1ZGUgPHN0ZGlu
dC5oPgorI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4K
KyNpbmNsdWRlIDx3dGYvTG9jay5oPgorI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CisjaW5j
bHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5o
PgogCiAvLyBUaGlzIGZpbGUgY29udGFpbnMgZGVwcmVjYXRlZCBzeW1ib2xzIHRoYXQgdGhlIGxh
c3QgcmVsZWFzZWQgdmVyc2lvbiBvZiBTYWZhcmkgdXNlcy4KIC8vIE9uY2UgU2FmYXJpIHN0b3Bz
IHVzaW5nIHRoZW0sIHdlIHNob3VsZCByZW1vdmUgdGhlbS4KSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L3BlcnNpc3RlbmNlL1BlcnNpc3RlbnRDb2RlcnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3RlbnRDb2RlcnMuY3BwCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50Q29kZXJzLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJQZXJzaXN0ZW50Q29kZXJzLmgiCisjaW5jbHVkZSA8d3RmL3BlcnNpc3RlbmNl
L1BlcnNpc3RlbnRDb2RlcnMuaD4KIAogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KICNp
bmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3BlcnNp
c3RlbmNlL1BlcnNpc3RlbnREZWNvZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RGVjb2Rlci5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3RlbnREZWNvZGVyLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNp
bmNsdWRlICJQZXJzaXN0ZW50RGVjb2Rlci5oIgorI2luY2x1ZGUgPHd0Zi9wZXJzaXN0ZW5jZS9Q
ZXJzaXN0ZW50RGVjb2Rlci5oPgogCiAjaW5jbHVkZSA8d3RmL3BlcnNpc3RlbmNlL1BlcnNpc3Rl
bnRFbmNvZGVyLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3Rl
bnRFbmNvZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9wZXJzaXN0ZW5jZS9Q
ZXJzaXN0ZW50RW5jb2Rlci5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3Rm
L3BlcnNpc3RlbmNlL1BlcnNpc3RlbnRFbmNvZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQs
OSArMjQsOSBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJQZXJzaXN0
ZW50RW5jb2Rlci5oIgorI2luY2x1ZGUgPHd0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RW5jb2Rl
ci5oPgogCi0jaW5jbHVkZSAiU0hBMS5oIgorI2luY2x1ZGUgPHd0Zi9TSEExLmg+CiAKIG5hbWVz
cGFjZSBXVEYgewogbmFtZXNwYWNlIFBlcnNpc3RlbmNlIHsKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L3NwaS9jZi9DRkJ1bmRsZVNQSS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3NwaS9j
Zi9DRkJ1bmRsZVNQSS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9zcGkv
Y2YvQ0ZCdW5kbGVTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBDRkJ1bmRsZVNQSV9oCi0jZGVmaW5lIENGQnVuZGxl
U1BJX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8Q29yZUZvdW5kYXRpb24vQ29yZUZvdW5k
YXRpb24uaD4KIApAQCAtNDYsNSArNDUsMyBAQCBCb29sZWFuIENGQnVuZGxlR2V0TG9jYWxpemF0
aW9uSW5mb0ZvckxvCiBDRlN0cmluZ1JlZiBDRkJ1bmRsZUNvcHlMb2NhbGl6YXRpb25Gb3JMb2Nh
bGl6YXRpb25JbmZvKFNJbnQzMiBsYW5ndWFnZUNvZGUsIFNJbnQzMiByZWdpb25Db2RlLCBTSW50
MzIgc2NyaXB0Q29kZSwgQ0ZTdHJpbmdFbmNvZGluZyBzdHJpbmdFbmNvZGluZyk7CiAKIFdURl9F
WFRFUk5fQ19FTkQKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9zcGkvZGFyd2luL0Nv
bW1vbkNyeXB0b1NQSS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3NwaS9kYXJ3aW4v
Q29tbW9uQ3J5cHRvU1BJLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3Nw
aS9kYXJ3aW4vQ29tbW9uQ3J5cHRvU1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcg
QEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBDb21tb25DcnlwdG9TUElfaAotI2Rl
ZmluZSBDb21tb25DcnlwdG9TUElfaAorI3ByYWdtYSBvbmNlCiAKICNpZiBPUyhEQVJXSU4pCiAK
QEAgLTQyLDUgKzQxLDMgQEAgaW50IENDUmFuZG9tQ29weUJ5dGVzKENDUmFuZG9tUmVmIHJuZCwg
dgogV1RGX0VYVEVSTl9DX0VORAogCiAjZW5kaWYgLy8gT1MoREFSV0lOKQotCi0jZW5kaWYgLyog
Q29tbW9uQ3J5cHRvU1BJX2ggKi8KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvQVNDSUlGYXN0
UGF0aC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvQVNDSUlGYXN0UGF0aC5o
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0FTQ0lJRmFzdFBhdGgu
aAkod29ya2luZyBjb3B5KQpAQCAtMTksOCArMTksNyBAQAogICoKICAqLwogCi0jaWZuZGVmIEFT
Q0lJRmFzdFBhdGhfaAotI2RlZmluZSBBU0NJSUZhc3RQYXRoX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8dW5pY29kZS91dHlwZXMuaD4KQEAgLTE5NSw1
ICsxOTQsMyBAQCBpbmxpbmUgdm9pZCBjb3B5TENoYXJzRnJvbVVDaGFyU291cmNlKExDCiB9IC8v
IG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpjaGFyYWN0ZXJzQXJlQWxsQVNDSUk7Ci0KLSNl
bmRpZiAvLyBBU0NJSUZhc3RQYXRoX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvQVNDSUlM
aXRlcmFsLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0FTQ0lJTGl0ZXJh
bC5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvQVNDSUlMaXRl
cmFsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJBU0NJSUxpdGVyYWwuaCIKKyNpbmNsdWRlIDx3dGYvdGV4
dC9BU0NJSUxpdGVyYWwuaD4KIAogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgogCkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZy5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmcuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIx
LDEzICsyMSwxMyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJBdG9t
aWNTdHJpbmcuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KIAogI2luY2x1
ZGUgPG11dGV4PgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW5jbHVkZSA8d3RmL3Rl
eHQvSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbi5oPgogCi0jaW5jbHVkZSAiZHRvYS5oIgorI2lu
Y2x1ZGUgPHd0Zi9kdG9hLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi90ZXh0L0F0b21pY1N0cmluZy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3Rl
eHQvQXRvbWljU3RyaW5nLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3Rl
eHQvQXRvbWljU3RyaW5nLmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDggKzE4LDcgQEAKICAqCiAg
Ki8KIAotI2lmbmRlZiBBdG9taWNTdHJpbmdfaAotI2RlZmluZSBBdG9taWNTdHJpbmdfaAorI3By
YWdtYSBvbmNlCiAKICNpbmNsdWRlIDx1dGlsaXR5PgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ry
b3llZC5oPgpAQCAtMzYzLDUgKzM2MiwzIEBAIHVzaW5nIFdURjo6eG1sbnNBdG9tOwogI2VuZGlm
CiAKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb25jYXRlbmF0ZS5oPgotCi0jZW5kaWYgLy8g
QXRvbWljU3RyaW5nX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWljU3RyaW5nSGFz
aC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWljU3RyaW5nSGFzaC5o
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ0hh
c2guaAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwog
Ci0jaWZuZGVmIEF0b21pY1N0cmluZ0hhc2hfaAotI2RlZmluZSBBdG9taWNTdHJpbmdIYXNoX2gK
KyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+CiAjaW5j
bHVkZSA8d3RmL0hhc2hUcmFpdHMuaD4KQEAgLTY3LDUgKzY2LDMgQEAgbmFtZXNwYWNlIFdURiB7
CiB9CiAKIHVzaW5nIFdURjo6QXRvbWljU3RyaW5nSGFzaDsKLQotI2VuZGlmCkluZGV4OiBTb3Vy
Y2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ0ltcGwuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL3RleHQvQXRvbWljU3RyaW5nSW1wbC5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWljU3RyaW5nSW1wbC5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTIyLDIwICsyMiwyMCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJBdG9taWNTdHJpbmdJbXBsLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nSW1w
bC5oPgogCi0jaW5jbHVkZSAiQXRvbWljU3RyaW5nVGFibGUuaCIKLSNpbmNsdWRlICJDb21tYVBy
aW50ZXIuaCIKLSNpbmNsdWRlICJEYXRhTG9nLmgiCi0jaW5jbHVkZSAiSGFzaFNldC5oIgotI2lu
Y2x1ZGUgIkludGVnZXJUb1N0cmluZ0NvbnZlcnNpb24uaCIKLSNpbmNsdWRlICJTdHJpbmdIYXNo
LmgiCi0jaW5jbHVkZSAiU3RyaW5nUHJpbnRTdHJlYW0uaCIKLSNpbmNsdWRlICJUaHJlYWRpbmcu
aCIKKyNpbmNsdWRlIDx3dGYvQ29tbWFQcmludGVyLmg+CisjaW5jbHVkZSA8d3RmL0RhdGFMb2cu
aD4KKyNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgorI2luY2x1ZGUgPHd0Zi9TdHJpbmdQcmludFN0
cmVhbS5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9B
dG9taWNTdHJpbmdUYWJsZS5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L0ludGVnZXJUb1N0cmluZ0Nv
bnZlcnNpb24uaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CiAjaW5jbHVkZSA8
d3RmL3VuaWNvZGUvVVRGOC5oPgogCiAjaWYgVVNFKFdFQl9USFJFQUQpCi0jaW5jbHVkZSAiTG9j
ay5oIgorI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAjZW5kaWYKIAogbmFtZXNwYWNlIFdURiB7Cklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ0ltcGwuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ0ltcGwuaAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmdJbXBsLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTE4LDggKzE4LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBBdG9taWNTdHJpbmdJbXBs
X2gKLSNkZWZpbmUgQXRvbWljU3RyaW5nSW1wbF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUg
PHd0Zi90ZXh0L1VuaXF1ZWRTdHJpbmdJbXBsLmg+CiAKQEAgLTEyMSw1ICsxMjAsMyBAQCBWYWx1
ZUNoZWNrPGNvbnN0IEF0b21pY1N0cmluZ0ltcGwqPiB7CiB9CiAKIHVzaW5nIFdURjo6QXRvbWlj
U3RyaW5nSW1wbDsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0
cmluZ1RhYmxlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0
cmluZ1RhYmxlLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9B
dG9taWNTdHJpbmdUYWJsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIxLDcgKzIxLDcgQEAKICAq
LwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQXRvbWljU3RyaW5nVGFibGUuaCIK
KyNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmdUYWJsZS5oPgogCiAjaW5jbHVkZSA8d3Rm
L0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgpJbmRleDogU291cmNlL1dU
Ri93dGYvdGV4dC9BdG9taWNTdHJpbmdUYWJsZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL3RleHQvQXRvbWljU3RyaW5nVGFibGUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNl
L1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmdUYWJsZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw4
ICsyMCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX0F0b21pY1N0cmluZ1RhYmxlX2gKLSNk
ZWZpbmUgV1RGX0F0b21pY1N0cmluZ1RhYmxlX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8
d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdJbXBsLmg+CkBAIC00Myw1
ICs0MiwzIEBAIHByaXZhdGU6CiAKIH0KIHVzaW5nIFdURjo6QXRvbWljU3RyaW5nVGFibGU7Ci0K
LSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9CYXNlNjQuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvQmFzZTY0LmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysg
U291cmNlL1dURi93dGYvdGV4dC9CYXNlNjQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMiw3ICsy
Miw3IEBACiAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQmFzZTY0LmgiCisj
aW5jbHVkZSA8d3RmL3RleHQvQmFzZTY0Lmg+CiAKICNpbmNsdWRlIDxsaW1pdHMuaD4KICNpbmNs
dWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvQ1N0
cmluZy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9DU3RyaW5nLmNwcAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9DU3RyaW5nLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjUsNyArMjUsNyBAQAogCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNp
bmNsdWRlICJDU3RyaW5nLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogCiAjaW5j
bHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaGVyLmg+CkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0NTdHJpbmcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi90ZXh0L0NTdHJpbmcuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYv
dGV4dC9DU3RyaW5nLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCiAgKi8KIAotI2lmbmRlZiBDU3RyaW5nX2gKLSNkZWZpbmUgQ1N0cmluZ19oCisjcHJh
Z21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9IYXNoRnVuY3Rpb25zLmg+CiAjaW5jbHVkZSA8d3Rm
L0hhc2hUcmFpdHMuaD4KQEAgLTExMCw1ICsxMDksMyBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBIYXNo
VHJhaXRzPENTdHJpbmc+IDogCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpDU3Ry
aW5nOwotCi0jZW5kaWYgLy8gQ1N0cmluZ19oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0Nv
bnZlcnNpb25Nb2RlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9Db252ZXJz
aW9uTW9kZS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0NvbnZl
cnNpb25Nb2RlLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAogICovCiAKLSNpZm5kZWYgQ29udmVyc2lvbk1vZGVfaAotI2RlZmluZSBDb252ZXJzaW9u
TW9kZV9oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTQwLDYgKzM5LDMg
QEAgdXNpbmcgV1RGOjpDb252ZXJzaW9uTW9kZTsKIHVzaW5nIFdURjo6TGVuaWVudENvbnZlcnNp
b247CiB1c2luZyBXVEY6OlN0cmljdENvbnZlcnNpb247CiB1c2luZyBXVEY6OlN0cmljdENvbnZl
cnNpb25SZXBsYWNpbmdVbnBhaXJlZFN1cnJvZ2F0ZXNXaXRoRkZGRDsKLQotI2VuZGlmIC8vIENv
bnZlcnNpb25Nb2RlX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9FeHRlcm5hbFN0cmlu
Z0ltcGwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvRXh0ZXJuYWxTdHJp
bmdJbXBsLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9FeHRl
cm5hbFN0cmluZ0ltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8K
IAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkV4dGVybmFsU3RyaW5nSW1wbC5oIgor
I2luY2x1ZGUgPHd0Zi90ZXh0L0V4dGVybmFsU3RyaW5nSW1wbC5oPgogCiBuYW1lc3BhY2UgV1RG
IHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9u
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252
ZXJzaW9uLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvSW50ZWdl
clRvU3RyaW5nQ29udmVyc2lvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOSw4ICsxOSw3IEBACiAg
KgogICovCiAKLSNpZm5kZWYgSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbl9oCi0jZGVmaW5lIElu
dGVnZXJUb1N0cmluZ0NvbnZlcnNpb25faAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYv
dGV4dC9MQ2hhci5oPgogCkBAIC0xMjYsNSArMTI1LDMgQEAgaW5saW5lIHVuc2lnbmVkIGxlbmd0
aE9mTnVtYmVyQXNTdHJpbmdVbgogfQogCiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8v
IEludGVnZXJUb1N0cmluZ0NvbnZlcnNpb25faApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9M
Q2hhci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvTENoYXIuaAkocmV2aXNp
b24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9MQ2hhci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNCwxMiArMjQsOSBAQAogICoKICAqLwogCi0jaWZuZGVmIExDaGFyX2gKLSNkZWZpbmUg
TENoYXJfaAorI3ByYWdtYSBvbmNlCiAKIC8vIEEgdHlwZSB0byBob2xkIGEgc2luZ2xlIExhdGlu
LTEgY2hhcmFjdGVyLgogLy8gVGhpcyB0eXBlIGNvbXBsZW1lbnRzIHRoZSBVQ2hhciB0eXBlIHRo
YXQgd2UgZ2V0IGZyb20gdGhlIElDVSBsaWJyYXJ5LgogLy8gVG8gcGFyYWxsZWwgdGhhdCB0eXBl
LCB3ZSBwdXQgdGhpcyBvbmUgaW4gdGhlIGdsb2JhbCBuYW1lc3BhY2UuCiB0eXBlZGVmIHVuc2ln
bmVkIGNoYXIgTENoYXI7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9MaW5l
RW5kaW5nLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0xpbmVFbmRpbmcu
Y3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0xpbmVFbmRpbmcu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMCw3ICszMCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNv
bmZpZy5oIgotI2luY2x1ZGUgIkxpbmVFbmRpbmcuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9MaW5l
RW5kaW5nLmg+CiAKICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL3RleHQvU3RyaW5nQnVmZmVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4
dC9TdHJpbmdCdWZmZXIuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4
dC9TdHJpbmdCdWZmZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICAqLwogCi0jaWZuZGVmIFN0cmluZ0J1ZmZlcl9oCi0jZGVmaW5lIFN0cmluZ0J1ZmZl
cl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGxpbWl0cz4KICNpbmNsdWRlIDx1bmljb2Rl
L3V0eXBlcy5oPgpAQCAtODcsNSArODYsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RG
CiAKIHVzaW5nIFdURjo6U3RyaW5nQnVmZmVyOwotCi0jZW5kaWYgLy8gU3RyaW5nQnVmZmVyX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQnVpbGRlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjUsMTIgKzI1LDEyIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIlN0cmluZ0J1aWxkZXIuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+
CiAKLSNpbmNsdWRlICJJbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmgiCi0jaW5jbHVkZSAiTWF0
aEV4dHJhcy5oIgotI2luY2x1ZGUgIldURlN0cmluZy5oIgogI2luY2x1ZGUgPHd0Zi9kdG9hLmg+
CisjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJp
bmcuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmg+CiAK
IG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0J1aWxk
ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTI0LDggKzI0LDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAK
LSNpZm5kZWYgU3RyaW5nQnVpbGRlcl9oCi0jZGVmaW5lIFN0cmluZ0J1aWxkZXJfaAorI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KICNpbmNsdWRlIDx3
dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmg+CkBAIC0zNzgsNSArMzc3LDMgQEAg
dGVtcGxhdGU8PiBzdHJ1Y3QgSW50ZWdlclRvU3RyaW5nQ29udmVycwogfSAvLyBuYW1lc3BhY2Ug
V1RGCiAKIHVzaW5nIFdURjo6U3RyaW5nQnVpbGRlcjsKLQotI2VuZGlmIC8vIFN0cmluZ0J1aWxk
ZXJfaApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVySlNPTi5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVySlNPTi5jcHAJKHJl
dmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQnVpbGRlckpTT04u
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMCw5ICsxMCw5IEBACiAgKi8KIAogI2luY2x1ZGUgImNv
bmZpZy5oIgotI2luY2x1ZGUgIlN0cmluZ0J1aWxkZXIuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9T
dHJpbmdCdWlsZGVyLmg+CiAKLSNpbmNsdWRlICJXVEZTdHJpbmcuaCIKKyNpbmNsdWRlIDx3dGYv
dGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL3RleHQvU3RyaW5nQ29tbW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4
dC9TdHJpbmdDb21tb24uaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4
dC9TdHJpbmdDb21tb24uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgU3RyaW5nQ29tbW9u
X2gKLSNkZWZpbmUgU3RyaW5nQ29tbW9uX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8YWxn
b3JpdGhtPgogI2luY2x1ZGUgPHVuaWNvZGUvdWNoYXIuaD4KQEAgLTY1OSw1ICs2NTgsMyBAQCB0
ZW1wbGF0ZTx1bnNpZ25lZCBsb3dlcmNhc2VMZXR0ZXJzTGVuZ3RoCiAKIHVzaW5nIFdURjo6ZXF1
YWxJZ25vcmluZ0FTQ0lJQ2FzZTsKIHVzaW5nIFdURjo6ZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJ
SUNhc2U7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdDb25jYXRl
bmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQ29uY2F0ZW5h
dGUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdDb25j
YXRlbmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMywxOSArMjMsMTIgQEAKICAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAogICovCiAKLSNpZm5kZWYgU3RyaW5nQ29uY2F0ZW5hdGVfaAotI2RlZmluZSBTdHJpbmdD
b25jYXRlbmF0ZV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1
ZGUgPHd0Zi9DaGVja2VkQXJpdGhtZXRpYy5oPgotCi0jaWZuZGVmIEF0b21pY1N0cmluZ19oCiAj
aW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+Ci0jZW5kaWYKLQotI2lmbmRlZiBTdHJp
bmdWaWV3X2gKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdWaWV3Lmg+Ci0jZW5kaWYKIAogLy8g
VGhpcyBtYWNybyBpcyBoZWxwZnVsIGZvciB0ZXN0aW5nIGhvdyBtYW55IGludGVybWVkaWF0ZSBT
dHJpbmdzIGFyZSBjcmVhdGVkIHdoaWxlIGV2YWx1YXRpbmcgYW4KIC8vIGV4cHJlc3Npb24gY29u
dGFpbmluZyBvcGVyYXRvcisuCkBAIC0zNDMsNCArMzM2LDMgQEAgdXNpbmcgV1RGOjptYWtlU3Ry
aW5nOwogdXNpbmcgV1RGOjp0cnlNYWtlU3RyaW5nOwogCiAjaW5jbHVkZSA8d3RmL3RleHQvU3Ry
aW5nT3BlcmF0b3JzLmg+Ci0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5n
SGFzaC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSGFzaC5oCShy
ZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0hhc2guaAkod29y
a2luZyBjb3B5KQpAQCAtMTksOCArMTksNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFN0cmluZ0hh
c2hfaAotI2RlZmluZSBTdHJpbmdIYXNoX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3Rm
L0hhc2hUcmFpdHMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KQEAgLTIw
MCw1ICsxOTksMyBAQCB1c2luZyBXVEY6OkFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaDsKIHVzaW5n
IFdURjo6QVNDSUlDYXNlSW5zZW5zaXRpdmVTdHJpbmdWaWV3SGFzaFRyYW5zbGF0b3I7CiB1c2lu
ZyBXVEY6OkFscmVhZHlIYXNoZWQ7CiB1c2luZyBXVEY6OlN0cmluZ0hhc2g7Ci0KLSNlbmRpZgpJ
bmRleDogU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMywx
NSArMjMsMTUgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiU3RyaW5n
SW1wbC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0ltcGwuaD4KIAotI2luY2x1ZGUgIkF0
b21pY1N0cmluZy5oIgotI2luY2x1ZGUgIkV4dGVybmFsU3RyaW5nSW1wbC5oIgotI2luY2x1ZGUg
IlN0cmluZ0J1ZmZlci5oIgotI2luY2x1ZGUgIlN0cmluZ0hhc2guaCIKICNpbmNsdWRlIDx3dGYv
UHJvY2Vzc0lELmg+CiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgorI2luY2x1ZGUgPHd0
Zi90ZXh0L0F0b21pY1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KKyNp
bmNsdWRlIDx3dGYvdGV4dC9FeHRlcm5hbFN0cmluZ0ltcGwuaD4KKyNpbmNsdWRlIDx3dGYvdGV4
dC9TdHJpbmdCdWZmZXIuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CiAjaW5j
bHVkZSA8d3RmL3RleHQvU3RyaW5nVmlldy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N5bWJvbElt
cGwuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TeW1ib2xSZWdpc3RyeS5oPgpJbmRleDogU291cmNl
L1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
dGV4dC9TdHJpbmdJbXBsLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3Rl
eHQvU3RyaW5nSW1wbC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw4ICsyMCw3IEBACiAgKgogICov
CiAKLSNpZm5kZWYgU3RyaW5nSW1wbF9oCi0jZGVmaW5lIFN0cmluZ0ltcGxfaAorI3ByYWdtYSBv
bmNlCiAKICNpbmNsdWRlIDxsaW1pdHMuaD4KICNpbmNsdWRlIDx1bmljb2RlL3VzdHJpbmcuaD4K
QEAgLTEyMTcsNSArMTIxNiwzIEBAIHRlbXBsYXRlPHVuc2lnbmVkIGxlbmd0aD4gaW5saW5lIGJv
b2wgZXEKIHVzaW5nIFdURjo6U3RhdGljU3RyaW5nSW1wbDsKIHVzaW5nIFdURjo6U3RyaW5nSW1w
bDsKIHVzaW5nIFdURjo6ZXF1YWw7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4
dC9TdHJpbmdPcGVyYXRvcnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0
cmluZ09wZXJhdG9ycy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0
L1N0cmluZ09wZXJhdG9ycy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOSw4ICsxOSw3IEBACiAgKgog
ICovCiAKLSNpZm5kZWYgU3RyaW5nT3BlcmF0b3JzX2gKLSNkZWZpbmUgU3RyaW5nT3BlcmF0b3Jz
X2gKKyNwcmFnbWEgb25jZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMTY0LDUgKzE2MywzIEBA
IFN0cmluZ0FwcGVuZDxTdHJpbmdBcHBlbmQ8VSwgVj4sIFc+IG9wZXIKIH0KIAogfSAvLyBuYW1l
c3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBTdHJpbmdPcGVyYXRvcnNfaApJbmRleDogU291cmNlL1dU
Ri93dGYvdGV4dC9TdHJpbmdWaWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90
ZXh0L1N0cmluZ1ZpZXcuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90
ZXh0L1N0cmluZ1ZpZXcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw3ICsyNSw3IEBAIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQkkKICovCiAKICNpbmNsdWRlICJjb25m
aWcuaCIKLSNpbmNsdWRlICJTdHJpbmdWaWV3LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5n
Vmlldy5oPgogCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8dW5pY29kZS91YnJrLmg+Cklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ1ZpZXcuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi90ZXh0L1N0cmluZ1ZpZXcuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNl
L1dURi93dGYvdGV4dC9TdHJpbmdWaWV3LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcg
QEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFN0
cmluZ1ZpZXdfaAotI2RlZmluZSBTdHJpbmdWaWV3X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVk
ZSA8bGltaXRzLmg+CiAjaW5jbHVkZSA8dW5pY29kZS91dHlwZXMuaD4KQEAgLTEwMDAsNSArOTk5
LDMgQEAgdGVtcGxhdGU8dW5zaWduZWQgbGVuZ3RoPiBpbmxpbmUgYm9vbCBlcQogdXNpbmcgV1RG
OjphcHBlbmQ7CiB1c2luZyBXVEY6OmVxdWFsOwogdXNpbmcgV1RGOjpTdHJpbmdWaWV3OwotCi0j
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3ltYm9sSW1wbC5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9TeW1ib2xJbXBsLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvdGV4dC9TeW1ib2xJbXBsLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJT
eW1ib2xJbXBsLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvU3ltYm9sSW1wbC5oPgogCiBuYW1lc3Bh
Y2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9TeW1ib2xSZWdpc3RyeS5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9TeW1ib2xSZWdpc3RyeS5jcHAJKHJl
dmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvU3ltYm9sUmVnaXN0cnkuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgIlN5bWJvbFJlZ2lzdHJ5LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvU3lt
Ym9sUmVnaXN0cnkuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L3RleHQvU3ltYm9sUmVnaXN0cnkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0
L1N5bWJvbFJlZ2lzdHJ5LmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3Rl
eHQvU3ltYm9sUmVnaXN0cnkuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX1N5bWJv
bFJlZ2lzdHJ5X2gKLSNkZWZpbmUgV1RGX1N5bWJvbFJlZ2lzdHJ5X2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNo
Lmg+CkBAIC0xMDgsNSArMTA3LDMgQEAgaW5saW5lIFN5bWJvbFJlZ2lzdHJ5S2V5OjpTeW1ib2xS
ZWdpc3RyeQogfQogCiB9Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9UZXh0
QnJlYWtJdGVyYXRvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9UZXh0
QnJlYWtJdGVyYXRvci5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3Rl
eHQvVGV4dEJyZWFrSXRlcmF0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMCwxMiArMjAsMTIg
QEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVGV4dEJyZWFrSXRlcmF0
b3IuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvci5oPgogCi0jaW5jbHVk
ZSAiTGluZUJyZWFrSXRlcmF0b3JQb29sSUNVLmgiCi0jaW5jbHVkZSAiVGV4dEJyZWFrSXRlcmF0
b3JJbnRlcm5hbElDVS5oIgotI2luY2x1ZGUgIlVUZXh0UHJvdmlkZXJMYXRpbjEuaCIKLSNpbmNs
dWRlICJVVGV4dFByb3ZpZGVyVVRGMTYuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9MaW5lQnJlYWtJ
dGVyYXRvclBvb2xJQ1UuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvcklu
dGVybmFsSUNVLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJMYXRpbjEu
aD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2Lmg+CiAjaW5jbHVk
ZSA8YXRvbWljPgogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHVuaWNvZGUvdWJyay5oPgpJ
bmRleDogU291cmNlL1dURi93dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvci5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dEJyZWFrSXRlcmF0b3IuaAkocmV2aXNpb24gMjM3
MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvci5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yMSw5ICsyMSw5IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiU3Ry
aW5nVmlldy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogI2luY2x1ZGUgPHd0
Zi9WYXJpYW50Lmg+CisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nVmlldy5oPgogI2luY2x1ZGUg
PHd0Zi90ZXh0L2ljdS9UZXh0QnJlYWtJdGVyYXRvcklDVS5oPgogCiAjaWYgUExBVEZPUk0oTUFD
KSB8fCBQTEFURk9STShJT1MpCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1RleHRCcmVha0l0
ZXJhdG9ySW50ZXJuYWxJQ1UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1Rl
eHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1UuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNl
L1dURi93dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTE4LDggKzE4LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBUZXh0QnJlYWtJdGVyYXRv
ckludGVybmFsSUNVX2gKLSNkZWZpbmUgVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVV9oCisj
cHJhZ21hIG9uY2UKIAogLy8gRklYTUU6IE5vdyB0aGF0IHRoaXMgaGFuZGxlcyBsb2NhbGVzIGZv
ciBJQ1UsIG5vdCBqdXN0IGZvciB0ZXh0IGJyZWFraW5nLAogLy8gdGhpcyBmaWxlIGFuZCB0aGUg
dmFyaW91cyBpbXBsZW1lbnRhdGlvbiBmaWxlcyBzaG91bGQgYmUgcmVuYW1lZC4KQEAgLTMzLDUg
KzMyLDMgQEAgV1RGX0VYUE9SVF9QUklWQVRFIGNvbnN0IGNoYXIqIGN1cnJlbnRUZQogCiB1c2lu
ZyBXVEY6OmN1cnJlbnRTZWFyY2hMb2NhbGVJRDsKIHVzaW5nIFdURjo6Y3VycmVudFRleHRCcmVh
a0xvY2FsZUlEOwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dFBvc2l0
aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9UZXh0UG9zaXRpb24uaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9UZXh0UG9zaXRpb24uaAko
d29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1
ZGUgIk9yZGluYWxOdW1iZXIuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9PcmRpbmFsTnVtYmVyLmg+
CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1RleHRTdHJl
YW0uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dFN0cmVhbS5jcHAJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dFN0cmVhbS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiVGV4dFN0cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRTdHJl
YW0uaD4KIAogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQv
V1RGU3RyaW5nLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1VuaXF1ZWRTdHJpbmdJbXBs
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9VbmlxdWVkU3RyaW5nSW1wbC5o
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1VuaXF1ZWRTdHJpbmdJ
bXBsLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFVuaXF1ZWRTdHJpbmdJbXBsX2gKLSNk
ZWZpbmUgVW5pcXVlZFN0cmluZ0ltcGxfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYv
dGV4dC9TdHJpbmdJbXBsLmg+CiAKQEAgLTYxLDUgKzYwLDMgQEAgVmFsdWVDaGVjazxjb25zdCBV
bmlxdWVkU3RyaW5nSW1wbCo+IHsKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlVu
aXF1ZWRTdHJpbmdJbXBsOwotCi0jZW5kaWYgLy8gVW5pcXVlZFN0cmluZ0ltcGxfaApJbmRleDog
U291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL3RleHQvV1RGU3RyaW5nLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dU
Ri93dGYvdGV4dC9XVEZTdHJpbmcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw5ICsyMCw4IEBA
CiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIldURlN0cmluZy5oIgorI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCi0jaW5jbHVkZSAiSW50ZWdlclRvU3RyaW5n
Q29udmVyc2lvbi5oIgogI2luY2x1ZGUgPHN0ZGFyZy5oPgogI2luY2x1ZGUgPHd0Zi9BU0NJSUNU
eXBlLmg+CiAjaW5jbHVkZSA8d3RmL0RhdGFMb2cuaD4KQEAgLTMyLDYgKzMxLDcgQEAKICNpbmNs
dWRlIDx3dGYvVmVjdG9yLmg+CiAjaW5jbHVkZSA8d3RmL2R0b2EuaD4KICNpbmNsdWRlIDx3dGYv
dGV4dC9DU3RyaW5nLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvSW50ZWdlclRvU3RyaW5nQ29udmVy
c2lvbi5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ1RvSW50ZWdlckNvbnZlcnNpb24uaD4K
ICNpbmNsdWRlIDx3dGYvdW5pY29kZS9DaGFyYWN0ZXJOYW1lcy5oPgogI2luY2x1ZGUgPHd0Zi91
bmljb2RlL1VURjguaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaAkocmV2aXNpb24gMjM3
MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaAkod29ya2luZyBjb3B5KQpA
QCAtMTksOCArMTksNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURlN0cmluZ19oCi0jZGVmaW5l
IFdURlN0cmluZ19oCisjcHJhZ21hIG9uY2UKIAogLy8gVGhpcyBmaWxlIHdvdWxkIGJlIGNhbGxl
ZCBTdHJpbmcuaCwgYnV0IHRoYXQgY29uZmxpY3RzIHdpdGggPHN0cmluZy5oPgogLy8gb24gc3lz
dGVtcyB3aXRob3V0IGNhc2Utc2Vuc2l0aXZlIGZpbGUgc3lzdGVtcy4KQEAgLTY1Nyw1ICs2NTYs
MyBAQCB1c2luZyBXVEY6OmlzU3BhY2VPck5ld2xpbmU7CiB1c2luZyBXVEY6OnJldmVyc2VGaW5k
OwogCiAjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+Ci0KLSNlbmRpZgpJbmRleDog
U291cmNlL1dURi93dGYvdGV4dC9jb2NvYS9TdHJpbmdDb2NvYS5tbQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi90ZXh0L2NvY29hL1N0cmluZ0NvY29hLm1tCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L2NvY29hL1N0cmluZ0NvY29hLm1tCSh3b3JraW5nIGNv
cHkpCkBAIC0xOSw3ICsxOSw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIldURlN0cmluZy5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiAjaW5j
bHVkZSA8Q29yZUZvdW5kYXRpb24vQ0ZTdHJpbmcuaD4KIApJbmRleDogU291cmNlL1dURi93dGYv
dGV4dC9jb2NvYS9TdHJpbmdWaWV3Q29jb2EubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvdGV4dC9jb2NvYS9TdHJpbmdWaWV3Q29jb2EubW0JKHJldmlzaW9uIDIzNzA3MCkKKysrIFNv
dXJjZS9XVEYvd3RmL3RleHQvY29jb2EvU3RyaW5nVmlld0NvY29hLm1tCSh3b3JraW5nIGNvcHkp
CkBAIC0yNCw5ICsyNCw5IEBACiAgKi8KIAogI2ltcG9ydCAiY29uZmlnLmgiCi0jaW1wb3J0ICJT
dHJpbmdWaWV3LmgiCisjaW1wb3J0IDx3dGYvdGV4dC9TdHJpbmdWaWV3Lmg+CiAKLSNpbXBvcnQg
IlJldGFpblB0ci5oIgorI2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgogCiBuYW1lc3BhY2UgV1RG
IHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9jb2NvYS9UZXh0QnJlYWtJdGVyYXRvcklu
dGVybmFsSUNVQ29jb2EuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvY29j
b2EvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVUNvY29hLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvdGV4dC9jb2NvYS9UZXh0QnJlYWtJdGVyYXRvckludGVybmFs
SUNVQ29jb2EuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xOSwxMCArMTksMTAgQEAKICAqLwogCiAj
aW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElD
VS5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1UuaD4K
IAotI2luY2x1ZGUgIlRleHRCcmVha0l0ZXJhdG9yLmgiCiAjaW5jbHVkZSA8d3RmL1JldGFpblB0
ci5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9yLmg+CiAKIG5hbWVzcGFj
ZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmNw
cAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92
aWRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVVRleHRQcm92aWRlci5oIgorI2luY2x1ZGUgPHd0Zi90
ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmg+CiAKICNpbmNsdWRlIDxhbGdvcml0aG0+CiAjaW5jbHVk
ZSA8c3RyaW5nLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVy
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5o
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3Zp
ZGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFVUZXh0UHJvdmlkZXJfaAotI2RlZmlu
ZSBVVGV4dFByb3ZpZGVyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8dW5pY29kZS91dGV4
dC5oPgogCkBAIC0xMDcsNSArMTA2LDMgQEAgaW5saW5lIGJvb2wgdVRleHRBY2Nlc3NJbkNodW5r
T3JPdXRPZlJhbgogfQogCiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFVUZXh0UHJv
dmlkZXJfaApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlckxhdGlu
MS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRl
ckxhdGluMS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1
L1VUZXh0UHJvdmlkZXJMYXRpbjEuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMCArMjQsMTAg
QEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVVRleHRQcm92aWRlckxh
dGluMS5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyTGF0aW4xLmg+CiAK
LSNpbmNsdWRlICJVVGV4dFByb3ZpZGVyLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSW1w
bC5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmg+CiAKIG5hbWVzcGFj
ZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyTGF0
aW4xLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRl
ckxhdGluMS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9V
VGV4dFByb3ZpZGVyTGF0aW4xLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFVUZXh0UHJv
dmlkZXJMYXRpbjFfaAotI2RlZmluZSBVVGV4dFByb3ZpZGVyTGF0aW4xX2gKKyNwcmFnbWEgb25j
ZQogCiAjaW5jbHVkZSA8dW5pY29kZS91dGV4dC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0xDaGFy
Lmg+CkBAIC00Miw1ICs0MSwzIEBAIFdURl9FWFBPUlQgVVRleHQqIG9wZW5MYXRpbjFVVGV4dFBy
b3ZpZGUKIFVUZXh0KiBvcGVuTGF0aW4xQ29udGV4dEF3YXJlVVRleHRQcm92aWRlcihVVGV4dFdp
dGhCdWZmZXIqIHV0V2l0aEJ1ZmZlciwgY29uc3QgTENoYXIqIHN0cmluZywgdW5zaWduZWQgbGVu
Z3RoLCBjb25zdCBVQ2hhciogcHJpb3JDb250ZXh0LCBpbnQgcHJpb3JDb250ZXh0TGVuZ3RoLCBV
RXJyb3JDb2RlKiBzdGF0dXMpOwogCiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFVU
ZXh0UHJvdmlkZXJMYXRpbjFfaApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQ
cm92aWRlclVURjE2LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9V
VGV4dFByb3ZpZGVyVVRGMTYuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0
Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyVVRGMTYuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwx
MCArMjQsMTAgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVVRleHRQ
cm92aWRlclVURjE2LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJVVEYx
Ni5oPgogCi0jaW5jbHVkZSAiVVRleHRQcm92aWRlci5oIgogI2luY2x1ZGUgPGFsZ29yaXRobT4K
KyNpbmNsdWRlIDx3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5oPgogCiBuYW1lc3BhY2UgV1RG
IHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2LmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2
LmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1L1VUZXh0UHJv
dmlkZXJVVEYxNi5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBVVGV4dFByb3ZpZGVyVVRG
MTZfaAotI2RlZmluZSBVVGV4dFByb3ZpZGVyVVRGMTZfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDx1bmljb2RlL3V0ZXh0Lmg+CiAKQEAgLTMzLDUgKzMyLDMgQEAgbmFtZXNwYWNlIFdURiB7
CiBVVGV4dCogb3BlblVURjE2Q29udGV4dEF3YXJlVVRleHRQcm92aWRlcihVVGV4dCosIGNvbnN0
IFVDaGFyKiwgdW5zaWduZWQgbGVuZ3RoLCBjb25zdCBVQ2hhciogcHJpb3JDb250ZXh0LCBpbnQg
cHJpb3JDb250ZXh0TGVuZ3RoLCBVRXJyb3JDb2RlKik7CiAKIH0gLy8gbmFtZXNwYWNlIFdURgot
Ci0jZW5kaWYgLy8gVVRleHRQcm92aWRlclVURjE2X2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3Rl
eHQvdW5peC9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVVW5peC5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvdGV4dC91bml4L1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VV
bml4LmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC91bml4L1Rl
eHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VVbml4LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTgs
NyArMTgsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUZXh0QnJl
YWtJdGVyYXRvckludGVybmFsSUNVLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dEJyZWFrSXRl
cmF0b3JJbnRlcm5hbElDVS5oPgogCiAjaW5jbHVkZSA8bG9jYWxlLmg+CiAKSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL3RleHQvd2luL1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VXaW4uY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvd2luL1RleHRCcmVha0l0ZXJhdG9ySW50
ZXJuYWxJQ1VXaW4uY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0
L3dpbi9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVV2luLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTksNyArMTksNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJU
ZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dEJy
ZWFrSXRlcmF0b3JJbnRlcm5hbElDVS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291
cmNlL1dURi93dGYvdGhyZWFkcy9CaW5hcnlTZW1hcGhvcmUuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL3RocmVhZHMvQmluYXJ5U2VtYXBob3JlLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvdGhyZWFkcy9CaW5hcnlTZW1hcGhvcmUuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2lu
Y2x1ZGUgIkJpbmFyeVNlbWFwaG9yZS5oIgorI2luY2x1ZGUgPHd0Zi90aHJlYWRzL0JpbmFyeVNl
bWFwaG9yZS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGhy
ZWFkcy9CaW5hcnlTZW1hcGhvcmUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90aHJl
YWRzL0JpbmFyeVNlbWFwaG9yZS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0
Zi90aHJlYWRzL0JpbmFyeVNlbWFwaG9yZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBC
aW5hcnlTZW1hcGhvcmVfaAotI2RlZmluZSBCaW5hcnlTZW1hcGhvcmVfaAorI3ByYWdtYSBvbmNl
CiAKICNpbmNsdWRlIDx3dGYvQ29uZGl0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KQEAg
LTYxLDUgKzYwLDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6
OkJpbmFyeVNlbWFwaG9yZTsKLQotI2VuZGlmIC8vIEJpbmFyeVNlbWFwaG9yZV9oCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi90aHJlYWRzL1NpZ25hbHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL3RocmVhZHMvU2lnbmFscy5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9X
VEYvd3RmL3RocmVhZHMvU2lnbmFscy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcg
QEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiU2lnbmFscy5oIgorI2lu
Y2x1ZGUgPHd0Zi90aHJlYWRzL1NpZ25hbHMuaD4KIAogI2lmIFVTRShQVEhSRUFEUykgJiYgSEFW
RShNQUNISU5FX0NPTlRFWFQpCiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ2hhcmFj
dGVyTmFtZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi91bmljb2RlL0NoYXJhY3Rl
ck5hbWVzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ2hh
cmFjdGVyTmFtZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICAqLwogCi0jaWZuZGVmIENoYXJhY3Rlck5hbWVzX2gKLSNkZWZpbmUgQ2hhcmFjdGVy
TmFtZXNfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx1bmljb2RlL3V0eXBlcy5oPgogCkBA
IC0xNjcsNSArMTY2LDMgQEAgdXNpbmcgV1RGOjpVbmljb2RlOjp6ZXJvV2lkdGhKb2luZXI7CiB1
c2luZyBXVEY6OlVuaWNvZGU6Onplcm9XaWR0aE5vQnJlYWtTcGFjZTsKIHVzaW5nIFdURjo6VW5p
Y29kZTo6emVyb1dpZHRoTm9uSm9pbmVyOwogdXNpbmcgV1RGOjpVbmljb2RlOjp6ZXJvV2lkdGhT
cGFjZTsKLQotI2VuZGlmIC8vIENoYXJhY3Rlck5hbWVzX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L3VuaWNvZGUvQ29sbGF0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi91bmljb2Rl
L0NvbGxhdG9yLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUv
Q29sbGF0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIFdURl9Db2xsYXRvcl9oCi0jZGVmaW5lIFdURl9Db2xsYXRvcl9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHVuaWNvZGUvdWNvbmZpZy5oPgogI2luY2x1ZGUgPHd0
Zi9Ob25jb3B5YWJsZS5oPgpAQCAtNzUsNSArNzQsMyBAQCBXVEZfRVhQT1JUX1BSSVZBVEUgVUNo
YXJJdGVyYXRvciBjcmVhdGVJCiB9CiAKIHVzaW5nIFdURjo6Q29sbGF0b3I7Ci0KLSNlbmRpZgpJ
bmRleDogU291cmNlL1dURi93dGYvdW5pY29kZS9Db2xsYXRvckRlZmF1bHQuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ29sbGF0b3JEZWZhdWx0LmNwcAkocmV2aXNp
b24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdW5pY29kZS9Db2xsYXRvckRlZmF1bHQuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNyw3ICsyNyw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgIkNvbGxhdG9yLmgiCisjaW5jbHVkZSA8d3RmL3VuaWNvZGUvQ29sbGF0
b3IuaD4KIAogI2lmIFVDT05GSUdfTk9fQ09MTEFUSU9OCiAKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L3VuaWNvZGUvVVRGOC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdW5pY29kZS9V
VEY4LmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdW5pY29kZS9VVEY4
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjUsOSArMjUsOSBAQAogICovCiAKICNpbmNsdWRlICJj
b25maWcuaCIKLSNpbmNsdWRlICJVVEY4LmgiCisjaW5jbHVkZSA8d3RmL3VuaWNvZGUvVVRGOC5o
PgogCi0jaW5jbHVkZSAiQVNDSUlDVHlwZS5oIgorI2luY2x1ZGUgPHd0Zi9BU0NJSUNUeXBlLmg+
CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaGVyLmg+CiAjaW5jbHVkZSA8d3RmL3VuaWNv
ZGUvQ2hhcmFjdGVyTmFtZXMuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvdW5pY29kZS9VVEY4
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdW5pY29kZS9VVEY4LmgJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvVVRGOC5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9V
VEY4X2gKLSNkZWZpbmUgV1RGX1VURjhfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx1bmlj
b2RlL3V0eXBlcy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0xDaGFyLmg+CkBAIC04Myw1ICs4Miwz
IEBAIG5hbWVzcGFjZSBVbmljb2RlIHsKIAogfSAvLyBuYW1lc3BhY2UgVW5pY29kZQogfSAvLyBu
YW1lc3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBXVEZfVVRGOF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi91bml4L0NQVVRpbWVVbml4LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi91bml4
L0NQVVRpbWVVbml4LmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdW5p
eC9DUFVUaW1lVW5peC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ1BVVGltZS5oIgorI2luY2x1ZGUgPHd0
Zi9DUFVUaW1lLmg+CiAKICNpbmNsdWRlIDxzeXMvcmVzb3VyY2UuaD4KICNpbmNsdWRlIDxzeXMv
dGltZS5oPgpJbmRleDogU291cmNlL1dURi93dGYvdW5peC9MYW5ndWFnZVVuaXguY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3VuaXgvTGFuZ3VhZ2VVbml4LmNwcAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdW5peC9MYW5ndWFnZVVuaXguY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0xOSw3ICsxOSw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2lu
Y2x1ZGUgIkxhbmd1YWdlLmgiCisjaW5jbHVkZSA8d3RmL0xhbmd1YWdlLmg+CiAKICNpbmNsdWRl
IDxsb2NhbGUuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi93aW4vQ1BVVGltZVdpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvd2luL0NQ
VVRpbWVXaW4uY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi93aW4vQ1BV
VGltZVdpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5j
bHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ1BVVGltZS5oIgorI2luY2x1ZGUgPHd0Zi9DUFVU
aW1lLmg+CiAKICNpbmNsdWRlIDx3aW5kb3dzLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3dp
bi9MYW5ndWFnZVdpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvd2luL0xhbmd1
YWdlV2luLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvd2luL0xhbmd1
YWdlV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNs
dWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJMYW5ndWFnZS5oIgorI2luY2x1ZGUgPHd0Zi9MYW5n
dWFnZS5oPgogCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8d2luZG93cy5oPgpJbmRleDog
U291cmNlL1dURi93dGYvd2luL01haW5UaHJlYWRXaW4uY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL3dpbi9NYWluVGhyZWFkV2luLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291
cmNlL1dURi93dGYvd2luL01haW5UaHJlYWRXaW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOCwx
MSArMjgsMTEgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTWFpblRo
cmVhZC5oIgorI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CiAKLSNpbmNsdWRlICJBc3NlcnRp
b25zLmgiCi0jaW5jbHVkZSAiVGhyZWFkaW5nLmgiCi0jaW5jbHVkZSAiV2luZG93c0V4dHJhcy5o
IgorI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZGluZy5o
PgorI2luY2x1ZGUgPHd0Zi9XaW5kb3dzRXh0cmFzLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi93aW4vTWVtb3J5Rm9vdHByaW50V2luLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi93aW4vTWVtb3J5Rm9vdHByaW50V2luLmNwcAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvd2luL01lbW9yeUZvb3RwcmludFdpbi5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgi
Ci0jaW5jbHVkZSAiTWVtb3J5Rm9vdHByaW50LmgiCisjaW5jbHVkZSA8d3RmL01lbW9yeUZvb3Rw
cmludC5oPgogCiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPHR5cGVfdHJhaXRzPgpJ
bmRleDogU291cmNlL1dURi93dGYvd2luL01lbW9yeVByZXNzdXJlSGFuZGxlcldpbi5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvd2luL01lbW9yeVByZXNzdXJlSGFuZGxlcldpbi5j
cHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3dpbi9NZW1vcnlQcmVzc3Vy
ZUhhbmRsZXJXaW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAog
I2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk1lbW9yeVByZXNzdXJlSGFuZGxlci5oIgor
I2luY2x1ZGUgPHd0Zi9NZW1vcnlQcmVzc3VyZUhhbmRsZXIuaD4KIAogI2luY2x1ZGUgPHBzYXBp
Lmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi93aW4vUnVuTG9vcFdpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvd2luL1J1
bkxvb3BXaW4uY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi93aW4vUnVu
TG9vcFdpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5j
bHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUnVuTG9vcC5oIgorI2luY2x1ZGUgPHd0Zi9SdW5M
b29wLmg+CiAKICNpbmNsdWRlIDx3dGYvV2luZG93c0V4dHJhcy5oPgogCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi93aW4vV29ya1F1ZXVlV2luLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi93aW4vV29ya1F1ZXVlV2luLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93
dGYvd2luL1dvcmtRdWV1ZVdpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAK
ICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya1F1ZXVlLmgiCisjaW5j
bHVkZSA8d3RmL1dvcmtRdWV1ZS5oPgogCiAjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KICNp
bmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzcwNzIpCisrKyBUb29scy9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw0NSBAQAorMjAxOC0xMC0xMiAgQWxleCBDaHJp
c3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBwcmFnbWEg
b25jZSBpbiBXVEYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE5MDUyNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogRHVtcFJlbmRlclRyZWUvVGVzdFJ1bm5lci5jcHA6CisgICAgICAgIChUZXN0UnVubmVy
OjpxdWV1ZUxvYWRIVE1MU3RyaW5nKToKKyAgICAgICAgKFRlc3RSdW5uZXI6OnF1ZXVlTG9hZEFs
dGVybmF0ZUhUTUxTdHJpbmcpOgorICAgICAgICAoVGVzdFJ1bm5lcjo6cXVldWVCYWNrTmF2aWdh
dGlvbik6CisgICAgICAgIChUZXN0UnVubmVyOjpxdWV1ZUZvcndhcmROYXZpZ2F0aW9uKToKKyAg
ICAgICAgKFRlc3RSdW5uZXI6OnF1ZXVlTG9hZGluZ1NjcmlwdCk6CisgICAgICAgIChUZXN0UnVu
bmVyOjpxdWV1ZU5vbkxvYWRpbmdTY3JpcHQpOgorICAgICAgICAoVGVzdFJ1bm5lcjo6cXVldWVS
ZWxvYWQpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL1dvcmtRdWV1ZS5jcHA6CisgICAgICAg
IChEUlRXb3JrUXVldWU6OnNpbmdsZXRvbik6CisgICAgICAgIChEUlRXb3JrUXVldWU6OkRSVFdv
cmtRdWV1ZSk6CisgICAgICAgIChEUlRXb3JrUXVldWU6OnF1ZXVlKToKKyAgICAgICAgKERSVFdv
cmtRdWV1ZTo6ZGVxdWV1ZSk6CisgICAgICAgIChEUlRXb3JrUXVldWU6OmNvdW50KToKKyAgICAg
ICAgKERSVFdvcmtRdWV1ZTo6Y2xlYXIpOgorICAgICAgICAoRFJUV29ya1F1ZXVlOjpwcm9jZXNz
V29yayk6CisgICAgICAgIChXb3JrUXVldWU6OnNpbmdsZXRvbik6IERlbGV0ZWQuCisgICAgICAg
IChXb3JrUXVldWU6OldvcmtRdWV1ZSk6IERlbGV0ZWQuCisgICAgICAgIChXb3JrUXVldWU6OnF1
ZXVlKTogRGVsZXRlZC4KKyAgICAgICAgKFdvcmtRdWV1ZTo6ZGVxdWV1ZSk6IERlbGV0ZWQuCisg
ICAgICAgIChXb3JrUXVldWU6OmNvdW50KTogRGVsZXRlZC4KKyAgICAgICAgKFdvcmtRdWV1ZTo6
Y2xlYXIpOiBEZWxldGVkLgorICAgICAgICAoV29ya1F1ZXVlOjpwcm9jZXNzV29yayk6IERlbGV0
ZWQuCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvV29ya1F1ZXVlLmg6CisgICAgICAgIChXb3Jr
UXVldWU6OnNldEZyb3plbik6IERlbGV0ZWQuCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFj
L0R1bXBSZW5kZXJUcmVlLm1tOgorICAgICAgICAocnVuVGVzdCk6CisgICAgICAgICogRHVtcFJl
bmRlclRyZWUvbWFjL0ZyYW1lTG9hZERlbGVnYXRlLm1tOgorICAgICAgICAoLVtGcmFtZUxvYWRE
ZWxlZ2F0ZSBwcm9jZXNzV29yazpdKToKKyAgICAgICAgKC1bRnJhbWVMb2FkRGVsZWdhdGUgd2Vi
Vmlldzpsb2NhdGlvbkNoYW5nZURvbmU6Zm9yRGF0YVNvdXJjZTpdKToKKyAgICAgICAgKiBEdW1w
UmVuZGVyVHJlZS9tYWMvVGVzdFJ1bm5lck1hYy5tbToKKyAgICAgICAgKFRlc3RSdW5uZXI6Om5v
dGlmeURvbmUpOgorICAgICAgICAoVGVzdFJ1bm5lcjo6Zm9yY2VJbW1lZGlhdGVDb21wbGV0aW9u
KToKKyAgICAgICAgKFRlc3RSdW5uZXI6OnF1ZXVlTG9hZCk6CisKIDIwMTgtMTAtMTEgIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIElPUyAxMiAtIFNlcnZpY2Ug
d29ya2VyIGNhY2hlIG5vdCBzaGFyZWQgd2hlbiBhZGRlZCB0byBob21lc2NyZWVuCkluZGV4OiBU
b29scy9EdW1wUmVuZGVyVHJlZS9UZXN0UnVubmVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9E
dW1wUmVuZGVyVHJlZS9UZXN0UnVubmVyLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgVG9vbHMv
RHVtcFJlbmRlclRyZWUvVGVzdFJ1bm5lci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIyNzUsMzcg
KzIyNzUsMzcgQEAgSlNTdGF0aWNGdW5jdGlvbiogVGVzdFJ1bm5lcjo6c3RhdGljRnVuYwogCiB2
b2lkIFRlc3RSdW5uZXI6OnF1ZXVlTG9hZEhUTUxTdHJpbmcoSlNTdHJpbmdSZWYgY29udGVudCwg
SlNTdHJpbmdSZWYgYmFzZVVSTCkKIHsKLSAgICBXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVl
KG5ldyBMb2FkSFRNTFN0cmluZ0l0ZW0oY29udGVudCwgYmFzZVVSTCkpOworICAgIERSVFdvcmtR
dWV1ZTo6c2luZ2xldG9uKCkucXVldWUobmV3IExvYWRIVE1MU3RyaW5nSXRlbShjb250ZW50LCBi
YXNlVVJMKSk7CiB9CiAKIHZvaWQgVGVzdFJ1bm5lcjo6cXVldWVMb2FkQWx0ZXJuYXRlSFRNTFN0
cmluZyhKU1N0cmluZ1JlZiBjb250ZW50LCBKU1N0cmluZ1JlZiBiYXNlVVJMLCBKU1N0cmluZ1Jl
ZiB1bnJlYWNoYWJsZVVSTCkKIHsKLSAgICBXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5l
dyBMb2FkSFRNTFN0cmluZ0l0ZW0oY29udGVudCwgYmFzZVVSTCwgdW5yZWFjaGFibGVVUkwpKTsK
KyAgICBEUlRXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5ldyBMb2FkSFRNTFN0cmluZ0l0
ZW0oY29udGVudCwgYmFzZVVSTCwgdW5yZWFjaGFibGVVUkwpKTsKIH0KIAogdm9pZCBUZXN0UnVu
bmVyOjpxdWV1ZUJhY2tOYXZpZ2F0aW9uKGludCBob3dGYXJCYWNrKQogewotICAgIFdvcmtRdWV1
ZTo6c2luZ2xldG9uKCkucXVldWUobmV3IEJhY2tJdGVtKGhvd0ZhckJhY2spKTsKKyAgICBEUlRX
b3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5ldyBCYWNrSXRlbShob3dGYXJCYWNrKSk7CiB9
CiAKIHZvaWQgVGVzdFJ1bm5lcjo6cXVldWVGb3J3YXJkTmF2aWdhdGlvbihpbnQgaG93RmFyRm9y
d2FyZCkKIHsKLSAgICBXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5ldyBGb3J3YXJkSXRl
bShob3dGYXJGb3J3YXJkKSk7CisgICAgRFJUV29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShu
ZXcgRm9yd2FyZEl0ZW0oaG93RmFyRm9yd2FyZCkpOwogfQogCiB2b2lkIFRlc3RSdW5uZXI6OnF1
ZXVlTG9hZGluZ1NjcmlwdChKU1N0cmluZ1JlZiBzY3JpcHQpCiB7Ci0gICAgV29ya1F1ZXVlOjpz
aW5nbGV0b24oKS5xdWV1ZShuZXcgTG9hZGluZ1NjcmlwdEl0ZW0oc2NyaXB0KSk7CisgICAgRFJU
V29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShuZXcgTG9hZGluZ1NjcmlwdEl0ZW0oc2NyaXB0
KSk7CiB9CiAKIHZvaWQgVGVzdFJ1bm5lcjo6cXVldWVOb25Mb2FkaW5nU2NyaXB0KEpTU3RyaW5n
UmVmIHNjcmlwdCkKIHsKLSAgICBXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5ldyBOb25M
b2FkaW5nU2NyaXB0SXRlbShzY3JpcHQpKTsKKyAgICBEUlRXb3JrUXVldWU6OnNpbmdsZXRvbigp
LnF1ZXVlKG5ldyBOb25Mb2FkaW5nU2NyaXB0SXRlbShzY3JpcHQpKTsKIH0KIAogdm9pZCBUZXN0
UnVubmVyOjpxdWV1ZVJlbG9hZCgpCiB7Ci0gICAgV29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1
ZShuZXcgUmVsb2FkSXRlbSk7CisgICAgRFJUV29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShu
ZXcgUmVsb2FkSXRlbSk7CiB9CiAKIHZvaWQgVGVzdFJ1bm5lcjo6aWdub3JlTGVnYWN5V2ViTm90
aWZpY2F0aW9uUGVybWlzc2lvblJlcXVlc3RzKCkKSW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJUcmVl
L1dvcmtRdWV1ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvV29ya1F1
ZXVlLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvV29ya1F1
ZXVlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzksMTggKzM5LDE4IEBAIHN0YXRpYyBXb3JrUXVl
dWVJdGVtKiB0aGVRdWV1ZVtxdWV1ZUxlbmcKIHN0YXRpYyB1bnNpZ25lZCBzdGFydE9mUXVldWU7
CiBzdGF0aWMgdW5zaWduZWQgZW5kT2ZRdWV1ZTsKIAotV29ya1F1ZXVlJiBXb3JrUXVldWU6OnNp
bmdsZXRvbigpCitEUlRXb3JrUXVldWUmIERSVFdvcmtRdWV1ZTo6c2luZ2xldG9uKCkKIHsKLSAg
ICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8V29ya1F1ZXVlPiBzaGFyZWRJbnN0YW5jZTsKKyAgICBz
dGF0aWMgTmV2ZXJEZXN0cm95ZWQ8RFJUV29ya1F1ZXVlPiBzaGFyZWRJbnN0YW5jZTsKICAgICBy
ZXR1cm4gc2hhcmVkSW5zdGFuY2U7CiB9CiAKLVdvcmtRdWV1ZTo6V29ya1F1ZXVlKCkKK0RSVFdv
cmtRdWV1ZTo6RFJUV29ya1F1ZXVlKCkKICAgICA6IG1fZnJvemVuKGZhbHNlKQogewogfQogCi12
b2lkIFdvcmtRdWV1ZTo6cXVldWUoV29ya1F1ZXVlSXRlbSogaXRlbSkKK3ZvaWQgRFJUV29ya1F1
ZXVlOjpxdWV1ZShXb3JrUXVldWVJdGVtKiBpdGVtKQogewogICAgIEFTU0VSVChlbmRPZlF1ZXVl
IDwgcXVldWVMZW5ndGgpOwogICAgIEFTU0VSVChlbmRPZlF1ZXVlID49IHN0YXJ0T2ZRdWV1ZSk7
CkBAIC02Myw3ICs2Myw3IEBAIHZvaWQgV29ya1F1ZXVlOjpxdWV1ZShXb3JrUXVldWVJdGVtKiBp
dGUKICAgICB0aGVRdWV1ZVtlbmRPZlF1ZXVlKytdID0gaXRlbTsKIH0KIAotV29ya1F1ZXVlSXRl
bSogV29ya1F1ZXVlOjpkZXF1ZXVlKCkKK1dvcmtRdWV1ZUl0ZW0qIERSVFdvcmtRdWV1ZTo6ZGVx
dWV1ZSgpCiB7CiAgICAgQVNTRVJUKGVuZE9mUXVldWUgPj0gc3RhcnRPZlF1ZXVlKTsKIApAQCAt
NzMsMTIgKzczLDEyIEBAIFdvcmtRdWV1ZUl0ZW0qIFdvcmtRdWV1ZTo6ZGVxdWV1ZSgpCiAgICAg
cmV0dXJuIHRoZVF1ZXVlW3N0YXJ0T2ZRdWV1ZSsrXTsKIH0KIAotdW5zaWduZWQgV29ya1F1ZXVl
Ojpjb3VudCgpCit1bnNpZ25lZCBEUlRXb3JrUXVldWU6OmNvdW50KCkKIHsKICAgICByZXR1cm4g
ZW5kT2ZRdWV1ZSAtIHN0YXJ0T2ZRdWV1ZTsKIH0KIAotdm9pZCBXb3JrUXVldWU6OmNsZWFyKCkK
K3ZvaWQgRFJUV29ya1F1ZXVlOjpjbGVhcigpCiB7CiAgICAgZm9yICh1bnNpZ25lZCBpID0gc3Rh
cnRPZlF1ZXVlOyBpIDwgZW5kT2ZRdWV1ZTsgKytpKSB7CiAgICAgICAgIGRlbGV0ZSB0aGVRdWV1
ZVtpXTsKQEAgLTg5LDcgKzg5LDcgQEAgdm9pZCBXb3JrUXVldWU6OmNsZWFyKCkKICAgICBlbmRP
ZlF1ZXVlID0gMDsKIH0KIAotYm9vbCBXb3JrUXVldWU6OnByb2Nlc3NXb3JrKCkKK2Jvb2wgRFJU
V29ya1F1ZXVlOjpwcm9jZXNzV29yaygpCiB7CiAgICAgYm9vbCBzdGFydGVkTG9hZCA9IGZhbHNl
OwogCkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJlZS9Xb3JrUXVldWUuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9EdW1wUmVuZGVyVHJlZS9Xb3JrUXVldWUuaAkocmV2aXNpb24gMjM3MDcwKQorKysg
VG9vbHMvRHVtcFJlbmRlclRyZWUvV29ya1F1ZXVlLmgJKHdvcmtpbmcgY29weSkKQEAgLTMzLDEx
ICszMywxMSBAQAogCiBjbGFzcyBXb3JrUXVldWVJdGVtOwogCi1jbGFzcyBXb3JrUXVldWUgewot
ZnJpZW5kIGNsYXNzIFdURjo6TmV2ZXJEZXN0cm95ZWQ8V29ya1F1ZXVlPjsKK2NsYXNzIERSVFdv
cmtRdWV1ZSB7CitmcmllbmQgY2xhc3MgV1RGOjpOZXZlckRlc3Ryb3llZDxEUlRXb3JrUXVldWU+
OwogCiBwdWJsaWM6Ci0gICAgc3RhdGljIFdvcmtRdWV1ZSYgc2luZ2xldG9uKCk7CisgICAgc3Rh
dGljIERSVFdvcmtRdWV1ZSYgc2luZ2xldG9uKCk7CiAKICAgICB2b2lkIHF1ZXVlKFdvcmtRdWV1
ZUl0ZW0qKTsKICAgICBXb3JrUXVldWVJdGVtKiBkZXF1ZXVlKCk7CkBAIC00OSw3ICs0OSw3IEBA
IHB1YmxpYzoKICAgICBib29sIHByb2Nlc3NXb3JrKCk7IC8vIFJldHVybnMgdHJ1ZSBpZiBhbGwg
d29yayBpcyBkb25lLCBmYWxzZSBpZiB3ZSBzdGFydGVkIGEgbG9hZC4KIAogcHJpdmF0ZToKLSAg
ICBXb3JrUXVldWUoKTsKKyAgICBEUlRXb3JrUXVldWUoKTsKIAogICAgIGJvb2wgbV9mcm96ZW47
CiB9OwpJbmRleDogVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbQko
cmV2aXNpb24gMjM3MDcwKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJU
cmVlLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yMDM0LDcgKzIwMzQsNyBAQCBzdGF0aWMgdm9pZCBy
dW5UZXN0KGNvbnN0IHN0cmluZyYgaW5wdXRMCiAgICAgW3ByZXZUZXN0QkZJdGVtIHJlbGVhc2Vd
OwogICAgIHByZXZUZXN0QkZJdGVtID0gW1tbW21haW5GcmFtZSB3ZWJWaWV3XSBiYWNrRm9yd2Fy
ZExpc3RdIGN1cnJlbnRJdGVtXSByZXRhaW5dOwogCi0gICAgYXV0byYgd29ya1F1ZXVlID0gV29y
a1F1ZXVlOjpzaW5nbGV0b24oKTsKKyAgICBhdXRvJiB3b3JrUXVldWUgPSBEUlRXb3JrUXVldWU6
OnNpbmdsZXRvbigpOwogICAgIHdvcmtRdWV1ZS5jbGVhcigpOwogICAgIHdvcmtRdWV1ZS5zZXRG
cm96ZW4oZmFsc2UpOwogCkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRnJhbWVMb2Fk
RGVsZWdhdGUubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0ZyYW1l
TG9hZERlbGVnYXRlLm1tCShyZXZpc2lvbiAyMzcwNzApCisrKyBUb29scy9EdW1wUmVuZGVyVHJl
ZS9tYWMvRnJhbWVMb2FkRGVsZWdhdGUubW0JKHdvcmtpbmcgY29weSkKQEAgLTE0OCw3ICsxNDgs
NyBAQCAtICh2b2lkKXByb2Nlc3NXb3JrOihpZClkdW1teQogI2VuZGlmCiAKICAgICAvLyBpZiB3
ZSBmaW5pc2ggYWxsIHRoZSBjb21tYW5kcywgd2UncmUgcmVhZHkgdG8gZHVtcCBzdGF0ZQotICAg
IGlmIChXb3JrUXVldWU6OnNpbmdsZXRvbigpLnByb2Nlc3NXb3JrKCkgJiYgIWdUZXN0UnVubmVy
LT53YWl0VG9EdW1wKCkpCisgICAgaWYgKERSVFdvcmtRdWV1ZTo6c2luZ2xldG9uKCkucHJvY2Vz
c1dvcmsoKSAmJiAhZ1Rlc3RSdW5uZXItPndhaXRUb0R1bXAoKSkKICAgICAgICAgZHVtcCgpOwog
fQogCkBAIC0xNjEsNyArMTYxLDcgQEAgLSAodm9pZCl3ZWJWaWV3OihXZWJWaWV3ICopd2ViVmll
dyBsb2NhdAogewogICAgIGlmIChbZGF0YVNvdXJjZSB3ZWJGcmFtZV0gPT0gdG9wTG9hZGluZ0Zy
YW1lKSB7CiAgICAgICAgIHRvcExvYWRpbmdGcmFtZSA9IG5pbDsKLSAgICAgICAgYXV0byYgd29y
a1F1ZXVlID0gV29ya1F1ZXVlOjpzaW5nbGV0b24oKTsKKyAgICAgICAgYXV0byYgd29ya1F1ZXVl
ID0gRFJUV29ya1F1ZXVlOjpzaW5nbGV0b24oKTsKICAgICAgICAgd29ya1F1ZXVlLnNldEZyb3pl
bih0cnVlKTsgLy8gZmlyc3QgY29tcGxldGUgbG9hZCBmcmVlemVzIHRoZSBxdWV1ZSBmb3IgdGhl
IHJlc3Qgb2YgdGhpcyB0ZXN0CiAgICAgICAgIGlmICghZ1Rlc3RSdW5uZXItPndhaXRUb0R1bXAo
KSkgewogICAgICAgICAgICAgaWYgKHdvcmtRdWV1ZS5jb3VudCgpKQpJbmRleDogVG9vbHMvRHVt
cFJlbmRlclRyZWUvbWFjL1Rlc3RSdW5uZXJNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVt
cFJlbmRlclRyZWUvbWFjL1Rlc3RSdW5uZXJNYWMubW0JKHJldmlzaW9uIDIzNzA3MCkKKysrIFRv
b2xzL0R1bXBSZW5kZXJUcmVlL21hYy9UZXN0UnVubmVyTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBA
IC0yOTcsMTQgKzI5NywxNCBAQCBzaXplX3QgVGVzdFJ1bm5lcjo6d2ViSGlzdG9yeUl0ZW1Db3Vu
dCgpCiAKIHZvaWQgVGVzdFJ1bm5lcjo6bm90aWZ5RG9uZSgpCiB7Ci0gICAgaWYgKG1fd2FpdFRv
RHVtcCAmJiAhdG9wTG9hZGluZ0ZyYW1lICYmICFXb3JrUXVldWU6OnNpbmdsZXRvbigpLmNvdW50
KCkpCisgICAgaWYgKG1fd2FpdFRvRHVtcCAmJiAhdG9wTG9hZGluZ0ZyYW1lICYmICFEUlRXb3Jr
UXVldWU6OnNpbmdsZXRvbigpLmNvdW50KCkpCiAgICAgICAgIGR1bXAoKTsKICAgICBtX3dhaXRU
b0R1bXAgPSBmYWxzZTsKIH0KIAogdm9pZCBUZXN0UnVubmVyOjpmb3JjZUltbWVkaWF0ZUNvbXBs
ZXRpb24oKQogewotICAgIGlmIChtX3dhaXRUb0R1bXAgJiYgIVdvcmtRdWV1ZTo6c2luZ2xldG9u
KCkuY291bnQoKSkKKyAgICBpZiAobV93YWl0VG9EdW1wICYmICFEUlRXb3JrUXVldWU6OnNpbmds
ZXRvbigpLmNvdW50KCkpCiAgICAgICAgIGR1bXAoKTsKICAgICBtX3dhaXRUb0R1bXAgPSBmYWxz
ZTsKIH0KQEAgLTM4Miw3ICszODIsNyBAQCB2b2lkIFRlc3RSdW5uZXI6OnF1ZXVlTG9hZChKU1N0
cmluZ1JlZiB1CiAgICAgTlNTdHJpbmcgKm5zdXJsU3RyaW5nID0gW25zdXJsIGFic29sdXRlU3Ry
aW5nXTsKIAogICAgIGF1dG8gYWJzb2x1dGVVUkwgPSBhZG9wdChKU1N0cmluZ0NyZWF0ZVdpdGhV
VEY4Q1N0cmluZyhbbnN1cmxTdHJpbmcgVVRGOFN0cmluZ10pKTsKLSAgICBXb3JrUXVldWU6OnNp
bmdsZXRvbigpLnF1ZXVlKG5ldyBMb2FkSXRlbShhYnNvbHV0ZVVSTC5nZXQoKSwgdGFyZ2V0KSk7
CisgICAgRFJUV29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShuZXcgTG9hZEl0ZW0oYWJzb2x1
dGVVUkwuZ2V0KCksIHRhcmdldCkpOwogfQogCiB2b2lkIFRlc3RSdW5uZXI6OnNldEFjY2VwdHNF
ZGl0aW5nKGJvb2wgbmV3QWNjZXB0c0VkaXRpbmcpCkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJl
ZS93aW4vRHVtcFJlbmRlclRyZWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJU
cmVlL3dpbi9EdW1wUmVuZGVyVHJlZS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFRvb2xzL0R1
bXBSZW5kZXJUcmVlL3dpbi9EdW1wUmVuZGVyVHJlZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEy
MjcsNyArMTIyNyw3IEBAIHN0YXRpYyB2b2lkIHJ1blRlc3QoY29uc3Qgc3RyaW5nJiBpbnB1dEwK
ICAgICBpZiAod2ViVmlldyAmJiBTVUNDRUVERUQod2ViVmlldy0+YmFja0ZvcndhcmRMaXN0KCZi
Zkxpc3QpKSkKICAgICAgICAgYmZMaXN0LT5jdXJyZW50SXRlbSgmcHJldlRlc3RCRkl0ZW0pOwog
Ci0gICAgYXV0byYgd29ya1F1ZXVlID0gV29ya1F1ZXVlOjpzaW5nbGV0b24oKTsKKyAgICBhdXRv
JiB3b3JrUXVldWUgPSBEUlRXb3JrUXVldWU6OnNpbmdsZXRvbigpOwogICAgIHdvcmtRdWV1ZS5j
bGVhcigpOwogICAgIHdvcmtRdWV1ZS5zZXRGcm96ZW4oZmFsc2UpOwogCkluZGV4OiBUb29scy9E
dW1wUmVuZGVyVHJlZS93aW4vRnJhbWVMb2FkRGVsZWdhdGUuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRv
b2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9GcmFtZUxvYWREZWxlZ2F0ZS5jcHAJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9GcmFtZUxvYWREZWxlZ2F0ZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTE5Niw3ICsxOTYsNyBAQCB2b2lkIEZyYW1lTG9hZERlbGVnYXRl
Ojpwcm9jZXNzV29yaygpCiAgICAgICAgIHJldHVybjsKIAogICAgIC8vIGlmIHdlIGZpbmlzaCBh
bGwgdGhlIGNvbW1hbmRzLCB3ZSdyZSByZWFkeSB0byBkdW1wIHN0YXRlCi0gICAgaWYgKFdvcmtR
dWV1ZTo6c2luZ2xldG9uKCkucHJvY2Vzc1dvcmsoKSAmJiAhOjpnVGVzdFJ1bm5lci0+d2FpdFRv
RHVtcCgpKQorICAgIGlmIChEUlRXb3JrUXVldWU6OnNpbmdsZXRvbigpLnByb2Nlc3NXb3JrKCkg
JiYgITo6Z1Rlc3RSdW5uZXItPndhaXRUb0R1bXAoKSkKICAgICAgICAgZHVtcCgpOwogfQogCkBA
IC0yMzMsNyArMjMzLDcgQEAgdm9pZCBGcmFtZUxvYWREZWxlZ2F0ZTo6bG9jYXRpb25DaGFuZ2VE
bwogICAgICAgICByZXR1cm47CiAKICAgICB0b3BMb2FkaW5nRnJhbWUgPSBudWxscHRyOwotICAg
IGF1dG8mIHdvcmtRdWV1ZSA9IFdvcmtRdWV1ZTo6c2luZ2xldG9uKCk7CisgICAgYXV0byYgd29y
a1F1ZXVlID0gRFJUV29ya1F1ZXVlOjpzaW5nbGV0b24oKTsKICAgICB3b3JrUXVldWUuc2V0RnJv
emVuKHRydWUpOwogCiAgICAgaWYgKDo6Z1Rlc3RSdW5uZXItPndhaXRUb0R1bXAoKSkKSW5kZXg6
IFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9UZXN0UnVubmVyV2luLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9EdW1wUmVuZGVyVHJlZS93aW4vVGVzdFJ1bm5lcldpbi5jcHAJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9UZXN0UnVubmVyV2luLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjg4LDcgKzI4OCw3IEBAIHNpemVfdCBUZXN0UnVubmVyOjp3ZWJIaXN0
b3J5SXRlbUNvdW50KCkKIHZvaWQgVGVzdFJ1bm5lcjo6bm90aWZ5RG9uZSgpCiB7CiAgICAgLy8g
U2FtZSBhcyBvbiBtYWMuICBUaGlzIGNhbiBiZSBzaGFyZWQuCi0gICAgaWYgKG1fd2FpdFRvRHVt
cCAmJiAhdG9wTG9hZGluZ0ZyYW1lICYmICFXb3JrUXVldWU6OnNpbmdsZXRvbigpLmNvdW50KCkp
CisgICAgaWYgKG1fd2FpdFRvRHVtcCAmJiAhdG9wTG9hZGluZ0ZyYW1lICYmICFEUlRXb3JrUXVl
dWU6OnNpbmdsZXRvbigpLmNvdW50KCkpCiAgICAgICAgIGR1bXAoKTsKICAgICBtX3dhaXRUb0R1
bXAgPSBmYWxzZTsKIH0KQEAgLTI5Niw3ICsyOTYsNyBAQCB2b2lkIFRlc3RSdW5uZXI6Om5vdGlm
eURvbmUoKQogdm9pZCBUZXN0UnVubmVyOjpmb3JjZUltbWVkaWF0ZUNvbXBsZXRpb24oKQogewog
ICAgIC8vIFNhbWUgYXMgb24gbWFjLiBUaGlzIGNhbiBiZSBzaGFyZWQuCi0gICAgaWYgKG1fd2Fp
dFRvRHVtcCAmJiAhV29ya1F1ZXVlOjpzaW5nbGV0b24oKS5jb3VudCgpKQorICAgIGlmIChtX3dh
aXRUb0R1bXAgJiYgIURSVFdvcmtRdWV1ZTo6c2luZ2xldG9uKCkuY291bnQoKSkKICAgICAgICAg
ZHVtcCgpOwogICAgIG1fd2FpdFRvRHVtcCA9IGZhbHNlOwogfQpAQCAtMzUwLDcgKzM1MCw3IEBA
IHZvaWQgVGVzdFJ1bm5lcjo6cXVldWVMb2FkKEpTU3RyaW5nUmVmIHUKICAgICB9CiAKICAgICBh
dXRvIGpzQWJzb2x1dGVVUkwgPSBhZG9wdChKU1N0cmluZ0NyZWF0ZVdpdGhDaGFyYWN0ZXJzKGJ1
ZmZlci5kYXRhKCksIGJ1ZmZlclNpemUpKTsKLSAgICBXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1
ZXVlKG5ldyBMb2FkSXRlbShqc0Fic29sdXRlVVJMLmdldCgpLCB0YXJnZXQpKTsKKyAgICBEUlRX
b3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5ldyBMb2FkSXRlbShqc0Fic29sdXRlVVJMLmdl
dCgpLCB0YXJnZXQpKTsKIH0KIAogdm9pZCBUZXN0UnVubmVyOjpzZXRBY2NlcHRzRWRpdGluZyhi
b29sIGFjY2VwdHNFZGl0aW5nKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352198</attachid>
            <date>2018-10-12 14:13:45 -0700</date>
            <delta_ts>2018-10-12 16:33:15 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>175523</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDI5NyBAQAorMjAxOC0xMC0xMiAgQWxleCBDaHJpc3RlbnNlbiAg
PGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBwcmFnbWEgb25jZSBpbiBX
VEYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDUy
NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd3Rm
L0FTQ0lJQ1R5cGUuaDoKKyAgICAgICAgKiB3dGYvQXNzZXJ0aW9ucy5jcHA6CisgICAgICAgICog
d3RmL0Fzc2VydGlvbnMuaDoKKyAgICAgICAgKiB3dGYvQXRvbWljcy5oOgorICAgICAgICAqIHd0
Zi9BdXRvbWF0aWNUaHJlYWQuY3BwOgorICAgICAgICAqIHd0Zi9BdXRvbWF0aWNUaHJlYWQuaDoK
KyAgICAgICAgKiB3dGYvQmFja3dhcmRzR3JhcGguaDoKKyAgICAgICAgKiB3dGYvQmFnLmg6Cisg
ICAgICAgICogd3RmL0JhZ1RvSGFzaE1hcC5oOgorICAgICAgICAqIHd0Zi9CaXRWZWN0b3IuY3Bw
OgorICAgICAgICAqIHd0Zi9CaXRWZWN0b3IuaDoKKyAgICAgICAgKiB3dGYvQml0bWFwLmg6Cisg
ICAgICAgICogd3RmL0Jsb29tRmlsdGVyLmg6CisgICAgICAgICogd3RmL0JveC5oOgorICAgICAg
ICAqIHd0Zi9CdWJibGVTb3J0Lmg6CisgICAgICAgICogd3RmL0J1bXBQb2ludGVyQWxsb2NhdG9y
Lmg6CisgICAgICAgICogd3RmL0J5dGVPcmRlci5oOgorICAgICAgICAqIHd0Zi9DUFVUaW1lLmNw
cDoKKyAgICAgICAgKiB3dGYvQ2FsbGJhY2tBZ2dyZWdhdG9yLmg6CisgICAgICAgICogd3RmL0No
ZWNrZWRBcml0aG1ldGljLmg6CisgICAgICAgICogd3RmL0NoZWNrZWRCb29sZWFuLmg6CisgICAg
ICAgICogd3RmL0Nsb2NrVHlwZS5jcHA6CisgICAgICAgICogd3RmL0Nsb2NrVHlwZS5oOgorICAg
ICAgICAqIHd0Zi9Db21tYVByaW50ZXIuaDoKKyAgICAgICAgKiB3dGYvQ29tcGlsYXRpb25UaHJl
YWQuY3BwOgorICAgICAgICAqIHd0Zi9Db21waWxhdGlvblRocmVhZC5oOgorICAgICAgICAqIHd0
Zi9Db21waWxlci5oOgorICAgICAgICAqIHd0Zi9Db25jdXJyZW50UHRySGFzaFNldC5jcHA6Cisg
ICAgICAgICogd3RmL0NvbmN1cnJlbnRWZWN0b3IuaDoKKyAgICAgICAgKiB3dGYvQ29uZGl0aW9u
Lmg6CisgICAgICAgICogd3RmL0NvdW50aW5nTG9jay5jcHA6CisgICAgICAgICogd3RmL0Nyb3Nz
VGhyZWFkVGFza0hhbmRsZXIuY3BwOgorICAgICAgICAqIHd0Zi9DcnlwdG9ncmFwaGljVXRpbGl0
aWVzLmNwcDoKKyAgICAgICAgKiB3dGYvQ3J5cHRvZ3JhcGhpY1V0aWxpdGllcy5oOgorICAgICAg
ICAqIHd0Zi9DcnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlci5jcHA6CisgICAgICAgICogd3Rm
L0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmg6CisgICAgICAgICogd3RmL0N1cnJlbnRU
aW1lLmNwcDoKKyAgICAgICAgKiB3dGYvRGF0YUxvZy5jcHA6CisgICAgICAgICogd3RmL0RhdGFM
b2cuaDoKKyAgICAgICAgKiB3dGYvRGF0ZU1hdGguY3BwOgorICAgICAgICAqIHd0Zi9EYXRlTWF0
aC5oOgorICAgICAgICAqIHd0Zi9EZWNpbWFsTnVtYmVyLmNwcDoKKyAgICAgICAgKiB3dGYvRGVj
aW1hbE51bWJlci5oOgorICAgICAgICAqIHd0Zi9EZXF1ZS5oOgorICAgICAgICAqIHd0Zi9EaXNh
bGxvd0NUeXBlLmg6CisgICAgICAgICogd3RmL0RvbWluYXRvcnMuaDoKKyAgICAgICAgKiB3dGYv
RG91Ymx5TGlua2VkTGlzdC5oOgorICAgICAgICAqIHd0Zi9GYXN0Qml0VmVjdG9yLmNwcDoKKyAg
ICAgICAgKiB3dGYvRmFzdE1hbGxvYy5jcHA6CisgICAgICAgICogd3RmL0Zhc3RNYWxsb2MuaDoK
KyAgICAgICAgKiB3dGYvRmVhdHVyZURlZmluZXMuaDoKKyAgICAgICAgKiB3dGYvRmlsZVByaW50
U3RyZWFtLmNwcDoKKyAgICAgICAgKiB3dGYvRmlsZVByaW50U3RyZWFtLmg6CisgICAgICAgICog
d3RmL0ZsaXBCeXRlcy5oOgorICAgICAgICAqIHd0Zi9GdW5jdGlvbkRpc3BhdGNoZXIuY3BwOgor
ICAgICAgICAqIHd0Zi9GdW5jdGlvbkRpc3BhdGNoZXIuaDoKKyAgICAgICAgKiB3dGYvR2V0UHRy
Lmg6CisgICAgICAgICogd3RmL0dpZ2FjYWdlLmNwcDoKKyAgICAgICAgKiB3dGYvR2xvYmFsVmVy
c2lvbi5jcHA6CisgICAgICAgICogd3RmL0dyYXBoTm9kZVdvcmtsaXN0Lmg6CisgICAgICAgICog
d3RmL0dyZWdvcmlhbkRhdGVUaW1lLmNwcDoKKyAgICAgICAgKiB3dGYvR3JlZ29yaWFuRGF0ZVRp
bWUuaDoKKyAgICAgICAgKiB3dGYvSGFzaEZ1bmN0aW9ucy5oOgorICAgICAgICAqIHd0Zi9IYXNo
TWFwLmg6CisgICAgICAgICogd3RmL0hhc2hNZXRob2QuaDoKKyAgICAgICAgKiB3dGYvSGFzaFNl
dC5oOgorICAgICAgICAqIHd0Zi9IYXNoVGFibGUuY3BwOgorICAgICAgICAqIHd0Zi9IYXNoVHJh
aXRzLmg6CisgICAgICAgICogd3RmL0luZGVudGVyLmg6CisgICAgICAgICogd3RmL0luZGV4U3Bh
cnNlU2V0Lmg6CisgICAgICAgICogd3RmL0lubGluZUFTTS5oOgorICAgICAgICAqIHd0Zi9JbnNl
cnRpb24uaDoKKyAgICAgICAgKiB3dGYvSXRlcmF0b3JBZGFwdG9ycy5oOgorICAgICAgICAqIHd0
Zi9JdGVyYXRvclJhbmdlLmg6CisgICAgICAgICogd3RmL0pTT05WYWx1ZXMuY3BwOgorICAgICAg
ICAqIHd0Zi9KU1ZhbHVlTWFsbG9jLmNwcDoKKyAgICAgICAgKiB3dGYvTEVCRGVjb2Rlci5oOgor
ICAgICAgICAqIHd0Zi9MYW5ndWFnZS5jcHA6CisgICAgICAgICogd3RmL0xpc3REdW1wLmg6Cisg
ICAgICAgICogd3RmL0xvY2suY3BwOgorICAgICAgICAqIHd0Zi9Mb2NrLmg6CisgICAgICAgICog
d3RmL0xvY2tBbGdvcml0aG0uaDoKKyAgICAgICAgKiB3dGYvTG9ja2VkUHJpbnRTdHJlYW0uY3Bw
OgorICAgICAgICAqIHd0Zi9Mb2NrZXIuaDoKKyAgICAgICAgKiB3dGYvTUQ1LmNwcDoKKyAgICAg
ICAgKiB3dGYvTUQ1Lmg6CisgICAgICAgICogd3RmL01haW5UaHJlYWQuY3BwOgorICAgICAgICAq
IHd0Zi9NYWluVGhyZWFkLmg6CisgICAgICAgICogd3RmL01hbGxvY1B0ci5oOgorICAgICAgICAq
IHd0Zi9NYXRoRXh0cmFzLmg6CisgICAgICAgICogd3RmL01lZGlhVGltZS5jcHA6CisgICAgICAg
ICogd3RmL01lZGlhVGltZS5oOgorICAgICAgICAqIHd0Zi9NZW1vcnlQcmVzc3VyZUhhbmRsZXIu
Y3BwOgorICAgICAgICAqIHd0Zi9NZXNzYWdlUXVldWUuaDoKKyAgICAgICAgKiB3dGYvTWV0YUFs
bG9jYXRvci5jcHA6CisgICAgICAgICogd3RmL01ldGFBbGxvY2F0b3IuaDoKKyAgICAgICAgKiB3
dGYvTWV0YUFsbG9jYXRvckhhbmRsZS5oOgorICAgICAgICAqIHd0Zi9Nb25vdG9uaWNUaW1lLmNw
cDoKKyAgICAgICAgKiB3dGYvTW9ub3RvbmljVGltZS5oOgorICAgICAgICAqIHd0Zi9OYWtlZFB0
ci5oOgorICAgICAgICAqIHd0Zi9Ob0xvY2suaDoKKyAgICAgICAgKiB3dGYvTm9UYWlsQ2FsbHMu
aDoKKyAgICAgICAgKiB3dGYvTm9uY29weWFibGUuaDoKKyAgICAgICAgKiB3dGYvTnVtYmVyT2ZD
b3Jlcy5jcHA6CisgICAgICAgICogd3RmL051bWJlck9mQ29yZXMuaDoKKyAgICAgICAgKiB3dGYv
T1NBbGxvY2F0b3IuaDoKKyAgICAgICAgKiB3dGYvT1NBbGxvY2F0b3JQb3NpeC5jcHA6CisgICAg
ICAgICogd3RmL09TUmFuZG9tU291cmNlLmNwcDoKKyAgICAgICAgKiB3dGYvT1NSYW5kb21Tb3Vy
Y2UuaDoKKyAgICAgICAgKiB3dGYvT2JqY1J1bnRpbWVFeHRyYXMuaDoKKyAgICAgICAgKiB3dGYv
T3JkZXJNYWtlci5oOgorICAgICAgICAqIHd0Zi9QYWNrZWRJbnRWZWN0b3IuaDoKKyAgICAgICAg
KiB3dGYvUGFnZUFsbG9jYXRpb24uaDoKKyAgICAgICAgKiB3dGYvUGFnZUJsb2NrLmNwcDoKKyAg
ICAgICAgKiB3dGYvUGFnZUJsb2NrLmg6CisgICAgICAgICogd3RmL1BhZ2VSZXNlcnZhdGlvbi5o
OgorICAgICAgICAqIHd0Zi9QYXJhbGxlbEhlbHBlclBvb2wuY3BwOgorICAgICAgICAqIHd0Zi9Q
YXJhbGxlbEhlbHBlclBvb2wuaDoKKyAgICAgICAgKiB3dGYvUGFyYWxsZWxKb2JzLmg6CisgICAg
ICAgICogd3RmL1BhcmFsbGVsSm9ic0xpYmRpc3BhdGNoLmg6CisgICAgICAgICogd3RmL1BhcmFs
bGVsVmVjdG9ySXRlcmF0b3IuaDoKKyAgICAgICAgKiB3dGYvUGFya2luZ0xvdC5jcHA6CisgICAg
ICAgICogd3RmL1BhcmtpbmdMb3QuaDoKKyAgICAgICAgKiB3dGYvUGxhdGZvcm0uaDoKKyAgICAg
ICAgKiB3dGYvUG9pbnRlckNvbXBhcmlzb24uaDoKKyAgICAgICAgKiB3dGYvUG9pc29uZWQuY3Bw
OgorICAgICAgICAqIHd0Zi9QcmludFN0cmVhbS5jcHA6CisgICAgICAgICogd3RmL1ByaW50U3Ry
ZWFtLmg6CisgICAgICAgICogd3RmL1Byb2Nlc3NJRC5oOgorICAgICAgICAqIHd0Zi9Qcm9jZXNz
UHJpdmlsZWdlLmNwcDoKKyAgICAgICAgKiB3dGYvUkFNU2l6ZS5jcHA6CisgICAgICAgICogd3Rm
L1JBTVNpemUuaDoKKyAgICAgICAgKiB3dGYvUmFuZG9tRGV2aWNlLmNwcDoKKyAgICAgICAgKiB3
dGYvUmFuZG9tTnVtYmVyLmNwcDoKKyAgICAgICAgKiB3dGYvUmFuZG9tTnVtYmVyLmg6CisgICAg
ICAgICogd3RmL1JhbmRvbU51bWJlclNlZWQuaDoKKyAgICAgICAgKiB3dGYvUmFuZ2VTZXQuaDoK
KyAgICAgICAgKiB3dGYvUmF3UG9pbnRlci5oOgorICAgICAgICAqIHd0Zi9SZWFkV3JpdGVMb2Nr
LmNwcDoKKyAgICAgICAgKiB3dGYvUmVkQmxhY2tUcmVlLmg6CisgICAgICAgICogd3RmL1JlZi5o
OgorICAgICAgICAqIHd0Zi9SZWZDb3VudGVkQXJyYXkuaDoKKyAgICAgICAgKiB3dGYvUmVmQ291
bnRlZExlYWtDb3VudGVyLmNwcDoKKyAgICAgICAgKiB3dGYvUmVmQ291bnRlZExlYWtDb3VudGVy
Lmg6CisgICAgICAgICogd3RmL1JlZkNvdW50ZXIuaDoKKyAgICAgICAgKiB3dGYvUmVmUHRyLmg6
CisgICAgICAgICogd3RmL1JldGFpblB0ci5oOgorICAgICAgICAqIHd0Zi9SdW5Mb29wLmNwcDoK
KyAgICAgICAgKiB3dGYvUnVuTG9vcC5oOgorICAgICAgICAqIHd0Zi9SdW5Mb29wVGltZXIuaDoK
KyAgICAgICAgKiB3dGYvUnVuTG9vcFRpbWVyQ0YuY3BwOgorICAgICAgICAqIHd0Zi9TSEExLmNw
cDoKKyAgICAgICAgKiB3dGYvU0hBMS5oOgorICAgICAgICAqIHd0Zi9TYXR1cmF0ZWRBcml0aG1l
dGljLmg6CisgICAgICAgIChzYXR1cmF0ZWRTdWJ0cmFjdGlvbik6CisgICAgICAgICogd3RmL1Nj
aGVkdWxlUGFpci5oOgorICAgICAgICAqIHd0Zi9TY2hlZHVsZVBhaXJDRi5jcHA6CisgICAgICAg
ICogd3RmL1NjaGVkdWxlUGFpck1hYy5tbToKKyAgICAgICAgKiB3dGYvU2NvcGVkTGFtYmRhLmg6
CisgICAgICAgICogd3RmL1NlY29uZHMuY3BwOgorICAgICAgICAqIHd0Zi9TZWNvbmRzLmg6Cisg
ICAgICAgICogd3RmL1NlZ21lbnRlZFZlY3Rvci5oOgorICAgICAgICAqIHd0Zi9TZW50aW5lbExp
bmtlZExpc3QuaDoKKyAgICAgICAgKiB3dGYvU2hhcmVkVGFzay5oOgorICAgICAgICAqIHd0Zi9T
aW1wbGVTdGF0cy5oOgorICAgICAgICAqIHd0Zi9TaW5nbGVSb290R3JhcGguaDoKKyAgICAgICAg
KiB3dGYvU2luZ2x5TGlua2VkTGlzdC5oOgorICAgICAgICAqIHd0Zi9TaXhDaGFyYWN0ZXJIYXNo
LmNwcDoKKyAgICAgICAgKiB3dGYvU2l4Q2hhcmFjdGVySGFzaC5oOgorICAgICAgICAqIHd0Zi9T
bWFsbFB0clNldC5oOgorICAgICAgICAqIHd0Zi9TcGVjdHJ1bS5oOgorICAgICAgICAqIHd0Zi9T
dGFja0JvdW5kcy5jcHA6CisgICAgICAgICogd3RmL1N0YWNrQm91bmRzLmg6CisgICAgICAgICog
d3RmL1N0YWNrU3RhdHMuY3BwOgorICAgICAgICAqIHd0Zi9TdGFja1N0YXRzLmg6CisgICAgICAg
ICogd3RmL1N0YWNrVHJhY2UuY3BwOgorICAgICAgICAqIHd0Zi9TdGRMaWJFeHRyYXMuaDoKKyAg
ICAgICAgKiB3dGYvU3RyZWFtQnVmZmVyLmg6CisgICAgICAgICogd3RmL1N0cmluZ0hhc2hEdW1w
Q29udGV4dC5oOgorICAgICAgICAqIHd0Zi9TdHJpbmdQcmludFN0cmVhbS5jcHA6CisgICAgICAg
ICogd3RmL1N0cmluZ1ByaW50U3RyZWFtLmg6CisgICAgICAgICogd3RmL1RocmVhZEdyb3VwLmNw
cDoKKyAgICAgICAgKiB3dGYvVGhyZWFkTWVzc2FnZS5jcHA6CisgICAgICAgICogd3RmL1RocmVh
ZFNwZWNpZmljLmg6CisgICAgICAgICogd3RmL1RocmVhZGluZy5jcHA6CisgICAgICAgICogd3Rm
L1RocmVhZGluZy5oOgorICAgICAgICAqIHd0Zi9UaHJlYWRpbmdQcmltaXRpdmVzLmg6CisgICAg
ICAgICogd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcDoKKyAgICAgICAgKiB3dGYvVGltZVdpdGhE
eW5hbWljQ2xvY2tUeXBlLmNwcDoKKyAgICAgICAgKiB3dGYvVGltZVdpdGhEeW5hbWljQ2xvY2tU
eXBlLmg6CisgICAgICAgICogd3RmL1RpbWluZ1Njb3BlLmNwcDoKKyAgICAgICAgKiB3dGYvVGlu
eUxSVUNhY2hlLmg6CisgICAgICAgICogd3RmL1RpbnlQdHJTZXQuaDoKKyAgICAgICAgKiB3dGYv
VHJpU3RhdGUuaDoKKyAgICAgICAgKiB3dGYvVHlwZUNhc3RzLmg6CisgICAgICAgICogd3RmL1VV
SUQuY3BwOgorICAgICAgICAqIHd0Zi9VbmlvbkZpbmQuaDoKKyAgICAgICAgKiB3dGYvVk1UYWdz
Lmg6CisgICAgICAgICogd3RmL1ZhbHVlQ2hlY2suaDoKKyAgICAgICAgKiB3dGYvVmVjdG9yLmg6
CisgICAgICAgICogd3RmL1ZlY3RvclRyYWl0cy5oOgorICAgICAgICAqIHd0Zi9XYWxsVGltZS5j
cHA6CisgICAgICAgICogd3RmL1dhbGxUaW1lLmg6CisgICAgICAgICogd3RmL1dlYWtQdHIuaDoK
KyAgICAgICAgKiB3dGYvV2Vha1JhbmRvbS5oOgorICAgICAgICAqIHd0Zi9Xb3JkTG9jay5jcHA6
CisgICAgICAgICogd3RmL1dvcmRMb2NrLmg6CisgICAgICAgICogd3RmL1dvcmtRdWV1ZS5jcHA6
CisgICAgICAgICogd3RmL1dvcmtRdWV1ZS5oOgorICAgICAgICAqIHd0Zi9Xb3JrZXJQb29sLmNw
cDoKKyAgICAgICAgKiB3dGYvY2YvTGFuZ3VhZ2VDRi5jcHA6CisgICAgICAgICogd3RmL2NmL1J1
bkxvb3BDRi5jcHA6CisgICAgICAgICogd3RmL2NvY29hL0VudGl0bGVtZW50cy5tbToKKyAgICAg
ICAgKiB3dGYvY29jb2EvTWFjaFNlbmRSaWdodC5jcHA6CisgICAgICAgICogd3RmL2NvY29hL01h
aW5UaHJlYWRDb2NvYS5tbToKKyAgICAgICAgKiB3dGYvY29jb2EvTWVtb3J5Rm9vdHByaW50Q29j
b2EuY3BwOgorICAgICAgICAqIHd0Zi9jb2NvYS9Xb3JrUXVldWVDb2NvYS5jcHA6CisgICAgICAg
ICogd3RmL2R0b2EuY3BwOgorICAgICAgICAqIHd0Zi9kdG9hLmg6CisgICAgICAgICogd3RmL2lv
cy9XZWJDb3JlVGhyZWFkLmNwcDoKKyAgICAgICAgKiB3dGYvaW9zL1dlYkNvcmVUaHJlYWQuaDoK
KyAgICAgICAgKiB3dGYvbWFjL0FwcEtpdENvbXBhdGliaWxpdHlEZWNsYXJhdGlvbnMuaDoKKyAg
ICAgICAgKiB3dGYvbWFjL0RlcHJlY2F0ZWRTeW1ib2xzVXNlZEJ5U2FmYXJpLm1tOgorICAgICAg
ICAqIHd0Zi9tYm1hbGxvYy5jcHA6CisgICAgICAgICogd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3Rl
bnRDb2RlcnMuY3BwOgorICAgICAgICAqIHd0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RGVjb2Rl
ci5jcHA6CisgICAgICAgICogd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3RlbnRFbmNvZGVyLmNwcDoK
KyAgICAgICAgKiB3dGYvc3BpL2NmL0NGQnVuZGxlU1BJLmg6CisgICAgICAgICogd3RmL3NwaS9k
YXJ3aW4vQ29tbW9uQ3J5cHRvU1BJLmg6CisgICAgICAgICogd3RmL3RleHQvQVNDSUlGYXN0UGF0
aC5oOgorICAgICAgICAqIHd0Zi90ZXh0L0FTQ0lJTGl0ZXJhbC5jcHA6CisgICAgICAgICogd3Rm
L3RleHQvQXRvbWljU3RyaW5nLmNwcDoKKyAgICAgICAgKiB3dGYvdGV4dC9BdG9taWNTdHJpbmcu
aDoKKyAgICAgICAgKiB3dGYvdGV4dC9BdG9taWNTdHJpbmdIYXNoLmg6CisgICAgICAgICogd3Rm
L3RleHQvQXRvbWljU3RyaW5nSW1wbC5jcHA6CisgICAgICAgICogd3RmL3RleHQvQXRvbWljU3Ry
aW5nSW1wbC5oOgorICAgICAgICAqIHd0Zi90ZXh0L0F0b21pY1N0cmluZ1RhYmxlLmNwcDoKKyAg
ICAgICAgKiB3dGYvdGV4dC9BdG9taWNTdHJpbmdUYWJsZS5oOgorICAgICAgICAqIHd0Zi90ZXh0
L0Jhc2U2NC5jcHA6CisgICAgICAgICogd3RmL3RleHQvQ1N0cmluZy5jcHA6CisgICAgICAgICog
d3RmL3RleHQvQ1N0cmluZy5oOgorICAgICAgICAqIHd0Zi90ZXh0L0NvbnZlcnNpb25Nb2RlLmg6
CisgICAgICAgICogd3RmL3RleHQvRXh0ZXJuYWxTdHJpbmdJbXBsLmNwcDoKKyAgICAgICAgKiB3
dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmg6CisgICAgICAgICogd3RmL3RleHQv
TENoYXIuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9MaW5lRW5kaW5nLmNwcDoKKyAgICAgICAgKiB3
dGYvdGV4dC9TdHJpbmdCdWZmZXIuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdCdWlsZGVy
LmNwcDoKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg6CisgICAgICAgICogd3Rm
L3RleHQvU3RyaW5nQnVpbGRlckpTT04uY3BwOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0Nv
bW1vbi5oOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0NvbmNhdGVuYXRlLmg6CisgICAgICAg
ICogd3RmL3RleHQvU3RyaW5nSGFzaC5oOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0ltcGwu
Y3BwOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0ltcGwuaDoKKyAgICAgICAgKiB3dGYvdGV4
dC9TdHJpbmdPcGVyYXRvcnMuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdWaWV3LmNwcDoK
KyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdWaWV3Lmg6CisgICAgICAgICogd3RmL3RleHQvU3lt
Ym9sSW1wbC5jcHA6CisgICAgICAgICogd3RmL3RleHQvU3ltYm9sUmVnaXN0cnkuY3BwOgorICAg
ICAgICAqIHd0Zi90ZXh0L1N5bWJvbFJlZ2lzdHJ5Lmg6CisgICAgICAgICogd3RmL3RleHQvVGV4
dEJyZWFrSXRlcmF0b3IuY3BwOgorICAgICAgICAqIHd0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9y
Lmg6CisgICAgICAgICogd3RmL3RleHQvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVS5oOgor
ICAgICAgICAqIHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oOgorICAgICAgICAqIHd0Zi90ZXh0L1Rl
eHRTdHJlYW0uY3BwOgorICAgICAgICAqIHd0Zi90ZXh0L1VuaXF1ZWRTdHJpbmdJbXBsLmg6Cisg
ICAgICAgICogd3RmL3RleHQvV1RGU3RyaW5nLmNwcDoKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZT
dHJpbmcuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9jb2NvYS9TdHJpbmdDb2NvYS5tbToKKyAgICAg
ICAgKiB3dGYvdGV4dC9jb2NvYS9TdHJpbmdWaWV3Q29jb2EubW06CisgICAgICAgICogd3RmL3Rl
eHQvY29jb2EvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVUNvY29hLmNwcDoKKyAgICAgICAg
KiB3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5jcHA6CisgICAgICAgICogd3RmL3RleHQvaWN1
L1VUZXh0UHJvdmlkZXIuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlckxh
dGluMS5jcHA6CisgICAgICAgICogd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJMYXRpbjEuaDoK
KyAgICAgICAgKiB3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2LmNwcDoKKyAgICAgICAg
KiB3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2Lmg6CisgICAgICAgICogd3RmL3RocmVh
ZHMvQmluYXJ5U2VtYXBob3JlLmNwcDoKKyAgICAgICAgKiB3dGYvdGhyZWFkcy9CaW5hcnlTZW1h
cGhvcmUuaDoKKyAgICAgICAgKiB3dGYvdGhyZWFkcy9TaWduYWxzLmNwcDoKKyAgICAgICAgKiB3
dGYvdW5pY29kZS9DaGFyYWN0ZXJOYW1lcy5oOgorICAgICAgICAqIHd0Zi91bmljb2RlL0NvbGxh
dG9yLmg6CisgICAgICAgICogd3RmL3VuaWNvZGUvQ29sbGF0b3JEZWZhdWx0LmNwcDoKKyAgICAg
ICAgKiB3dGYvdW5pY29kZS9VVEY4LmNwcDoKKyAgICAgICAgKiB3dGYvdW5pY29kZS9VVEY4Lmg6
CisKIDIwMTgtMTAtMTEgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CiAKICAg
ICAgICAgQWRkIFBMQVRGT1JNKElPU19GQU1JTFkpIGFuZCBPUyhJT1NfRkFNSUxZKQpJbmRleDog
U291cmNlL1dURi93dGYvQVNDSUlDVHlwZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L0FTQ0lJQ1R5cGUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQVNDSUlD
VHlwZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw3IEBACiAgKiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKLSNpZm5kZWYgV1RGX0FTQ0lJQ1R5cGVfaAotI2RlZmluZSBXVEZfQVNDSUlDVHlwZV9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3Rm
L3RleHQvTENoYXIuaD4KQEAgLTI3NSw1ICsyNzQsMyBAQCB1c2luZyBXVEY6OnRvQVNDSUlMb3dl
clVuY2hlY2tlZDsKIHVzaW5nIFdURjo6dG9BU0NJSVVwcGVyOwogdXNpbmcgV1RGOjp1cHBlck5p
YmJsZVRvQVNDSUlIZXhEaWdpdDsKIHVzaW5nIFdURjo6dXBwZXJOaWJibGVUb0xvd2VyY2FzZUFT
Q0lJSGV4RGlnaXQ7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5jcHAJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Fzc2VydGlvbnMuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0zMiwxMiArMzIsMTIgQEAKICNwcmFnbWEgR0NDIGRpYWdub3N0aWMgaWdub3JlZCAiLVdt
aXNzaW5nLWZvcm1hdC1hdHRyaWJ1dGUiCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJBc3NlcnRpb25zLmgiCisjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIAotI2luY2x1ZGUg
IkNvbXBpbGVyLmgiCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNs
dWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx3dGYvQ29tcGlsZXIuaD4KICNpbmNsdWRlIDx3dGYv
TG9jay5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrZXIuaD4KICNpbmNsdWRlIDx3dGYvTG9nZ2luZ0Fj
Y3VtdWxhdG9yLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Bc3NlcnRpb25zLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi9Bc3NlcnRpb25zLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcg
QEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgV1RGX0Fzc2VydGlvbnNfaAotI2Rl
ZmluZSBXVEZfQXNzZXJ0aW9uc19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9QbGF0
Zm9ybS5oPgogCkBAIC02MTMsNSArNjEyLDMgQEAgSUdOT1JFX0NMQU5HX1dBUk5JTkdTX0VORAog
I2Vsc2UKICNkZWZpbmUgVU5SRUFDSEFCTEVfRk9SX1BMQVRGT1JNKCkgUkVMRUFTRV9BU1NFUlRf
Tk9UX1JFQUNIRUQoKQogI2VuZGlmCi0KLSNlbmRpZiAvKiBXVEZfQXNzZXJ0aW9uc19oICovCklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9BdG9taWNzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvQXRvbWljcy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9BdG9taWNz
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5k
ZWYgQXRvbWljc19oCi0jZGVmaW5lIEF0b21pY3NfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRl
IDxhdG9taWM+CiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgpAQCAtNDUyLDUgKzQ1MSwz
IEBAIHVzaW5nIFdURjo6SW5wdXRBbmRWYWx1ZTsKIHVzaW5nIFdURjo6aW5wdXRBbmRWYWx1ZTsK
IHVzaW5nIFdURjo6ZW5zdXJlUG9pbnRlcjsKIHVzaW5nIFdURjo6b3BhcXVlTWl4dHVyZTsKLQot
I2VuZGlmIC8vIEF0b21pY3NfaApJbmRleDogU291cmNlL1dURi93dGYvQXV0b21hdGljVGhyZWFk
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9BdXRvbWF0aWNUaHJlYWQuY3BwCShy
ZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9BdXRvbWF0aWNUaHJlYWQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCwxMCArMjQsMTAgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiQXV0b21hdGljVGhyZWFkLmgiCisjaW5jbHVkZSA8d3RmL0F1dG9tYXRp
Y1RocmVhZC5oPgogCi0jaW5jbHVkZSAiRGF0YUxvZy5oIgotI2luY2x1ZGUgIlRocmVhZGluZy5o
IgorI2luY2x1ZGUgPHd0Zi9EYXRhTG9nLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgog
CiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvQXV0b21hdGljVGhyZWFk
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQXV0b21hdGljVGhyZWFkLmgJKHJldmlz
aW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0F1dG9tYXRpY1RocmVhZC5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVm
IFdURl9BdXRvbWF0aWNUaHJlYWRfaAotI2RlZmluZSBXVEZfQXV0b21hdGljVGhyZWFkX2gKKyNw
cmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0JveC5oPgogI2luY2x1ZGUgPHd0Zi9Db25kaXRp
b24uaD4KQEAgLTE5NSw2ICsxOTQsMyBAQCBwcml2YXRlOgogCiB1c2luZyBXVEY6OkF1dG9tYXRp
Y1RocmVhZDsKIHVzaW5nIFdURjo6QXV0b21hdGljVGhyZWFkQ29uZGl0aW9uOwotCi0jZW5kaWYg
Ly8gV1RGX0F1dG9tYXRpY1RocmVhZF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0JhY2t3YXJk
c0dyYXBoLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQmFja3dhcmRzR3JhcGguaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQmFja3dhcmRzR3JhcGguaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBXVEZfQmFja3dhcmRzR3JhcGhfaAotI2RlZmluZSBXVEZfQmFja3dhcmRzR3JhcGhfaAor
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0
Zi9HcmFwaE5vZGVXb3JrbGlzdC5oPgpAQCAtMTY3LDYgKzE2NiwzIEBAIHByaXZhdGU6CiB9IC8v
IG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpCYWNrd2FyZHNHcmFwaDsKLQotI2VuZGlmIC8v
IFdURl9CYWNrd2FyZHNHcmFwaF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0JhZy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0JhZy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9CYWcuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQmFnX2gKLSNkZWZp
bmUgQmFnX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0R1bWJQdHJUcmFpdHMuaD4K
ICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgpAQCAtMTY2LDYgKzE2NSwzIEBAIHVzaW5nIFBv
aXNvbmVkQmFnID0gQmFnPFQsIFBvaXNvbmVkUHRyVHIKIAogdXNpbmcgV1RGOjpCYWc7CiB1c2lu
ZyBXVEY6OlBvaXNvbmVkQmFnOwotCi0jZW5kaWYgLy8gQmFnX2gKLQpJbmRleDogU291cmNlL1dU
Ri93dGYvQmFnVG9IYXNoTWFwLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQmFnVG9I
YXNoTWFwLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0JhZ1RvSGFzaE1h
cC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBCYWdUb0hhc2hNYXBfaAotI2RlZmluZSBC
YWdUb0hhc2hNYXBfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQmFnLmg+CiAjaW5j
bHVkZSA8d3RmL0hhc2hNYXAuaD4KQEAgLTQ0LDYgKzQzLDMgQEAgdm9pZCB0b0hhc2hNYXAoQmFn
PEVsZW1lbnRUeXBlLCBCYWdQdHJUcgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6
dG9IYXNoTWFwOwotCi0jZW5kaWYgLy8gQmFnVG9IYXNoTWFwX2gKLQpJbmRleDogU291cmNlL1dU
Ri93dGYvQml0VmVjdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9CaXRWZWN0
b3IuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9CaXRWZWN0b3IuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgIkJpdFZlY3Rvci5oIgorI2luY2x1ZGUgPHd0Zi9CaXRWZWN0b3IuaD4K
IAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRlIDxzdHJpbmcuaD4KSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL0JpdFZlY3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0JpdFZl
Y3Rvci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9CaXRWZWN0b3IuaAko
d29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAot
I2lmbmRlZiBCaXRWZWN0b3JfaAotI2RlZmluZSBCaXRWZWN0b3JfaAorI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CkBAIC00ODcs
NSArNDg2LDMgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgSGFzaFRyYWl0czxCaXRWZWN0b3I+IAogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Qml0VmVjdG9yOwotCi0jZW5kaWYgLy8gQml0
VmVjdG9yX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0JpdG1hcC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL0JpdG1hcC5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0
Zi9CaXRtYXAuaAkod29ya2luZyBjb3B5KQpAQCAtMTYsOCArMTYsOCBAQAogICogIEZvdW5kYXRp
b24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAy
MTEwLTEzMDEgIFVTQQogICoKICAqLwotI2lmbmRlZiBCaXRtYXBfaAotI2RlZmluZSBCaXRtYXBf
aAorCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGFycmF5PgogI2luY2x1ZGUgPHd0Zi9BdG9t
aWNzLmg+CkBAIC00MjAsNSArNDIwLDMgQEAgaW5saW5lIHVuc2lnbmVkIEJpdG1hcDxiaXRtYXBT
aXplLCBXb3JkVAogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Qml0bWFwOwotCi0j
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Jsb29tRmlsdGVyLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvQmxvb21GaWx0ZXIuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNl
L1dURi93dGYvQmxvb21GaWx0ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAog
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQmxvb21G
aWx0ZXJfaAotI2RlZmluZSBCbG9vbUZpbHRlcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUg
PGFycmF5PgogI2luY2x1ZGUgPHd0Zi90ZXh0L0F0b21pY1N0cmluZy5oPgpAQCAtMjYzLDUgKzI2
MiwzIEBAIGJvb2wgQ291bnRpbmdCbG9vbUZpbHRlcjxrZXlCaXRzPjo6aXNDbGUKIAogdXNpbmcg
V1RGOjpCbG9vbUZpbHRlcjsKIHVzaW5nIFdURjo6Q291bnRpbmdCbG9vbUZpbHRlcjsKLQotI2Vu
ZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Cb3guaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9Cb3guaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQm94LmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgV1RGX0JveF9oCi0jZGVmaW5lIFdURl9Cb3hfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDx3dGYvUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+
CkBAIC03OSw2ICs3OCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcg
V1RGOjpCb3g7Ci0KLSNlbmRpZiAvLyBXVEZfQm94X2gKLQpJbmRleDogU291cmNlL1dURi93dGYv
QnViYmxlU29ydC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0J1YmJsZVNvcnQuaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQnViYmxlU29ydC5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVm
IEJ1YmJsZVNvcnRfaAotI2RlZmluZSBCdWJibGVTb3J0X2gKKyNwcmFnbWEgb25jZQogCiBuYW1l
c3BhY2UgV1RGIHsKIApAQCAtOTcsNiArOTYsMyBAQCB2b2lkIGJ1YmJsZVNvcnQoSXRlcmF0b3JU
eXBlIGJlZ2luLCBJdGVyCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpidWJibGVT
b3J0OwotCi0jZW5kaWYgLy8gQnViYmxlU29ydF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0J1
bXBQb2ludGVyQWxsb2NhdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQnVtcFBv
aW50ZXJBbGxvY2F0b3IuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQnVt
cFBvaW50ZXJBbGxvY2F0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBCdW1wUG9pbnRlckFsbG9jYXRvcl9oCi0jZGVm
aW5lIEJ1bXBQb2ludGVyQWxsb2NhdG9yX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8YWxn
b3JpdGhtPgogI2luY2x1ZGUgPHd0Zi9QYWdlQWxsb2NhdGlvbi5oPgpAQCAtMjQ4LDUgKzI0Nywz
IEBAIHByaXZhdGU6CiB9CiAKIHVzaW5nIFdURjo6QnVtcFBvaW50ZXJBbGxvY2F0b3I7Ci0KLSNl
bmRpZiAvLyBCdW1wUG9pbnRlckFsbG9jYXRvcl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9CeXRl
T3JkZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9CeXRlT3JkZXIuaAkocmV2aXNp
b24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQnl0ZU9yZGVyLmgJKHdvcmtpbmcgY29weSkK
QEAgLTI4LDggKzI4LDcgQEAKICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICovCiAKLSNpZm5kZWYgV1RGX0J5dGVP
cmRlcl9oCi0jZGVmaW5lIFdURl9CeXRlT3JkZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpZiBPUyhV
TklYKQogI2luY2x1ZGUgPGFycGEvaW5ldC5oPgpAQCAtNjEsNSArNjAsMyBAQCBpbmxpbmUgdWlu
dDMyX3QgaHRvbmwodWludDMyX3QgeCkgeyByZXR1CiAjZW5kaWYKIAogI2VuZGlmIC8vIE9TKFdJ
TkRPV1MpCi0KLSNlbmRpZiAvLyBXVEZfQnl0ZU9yZGVyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L0NQVVRpbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NQVVRpbWUuY3BwCShy
ZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9DUFVUaW1lLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJDUFVUaW1lLmgiCisjaW5jbHVkZSA8d3RmL0NQVVRpbWUuaD4KIAogbmFtZXNwYWNlIFdU
RiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NhbGxiYWNrQWdncmVnYXRvci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NhbGxiYWNrQWdncmVnYXRvci5oCShyZXZpc2lvbiAyMzcw
NzApCisrKyBTb3VyY2UvV1RGL3d0Zi9DYWxsYmFja0FnZ3JlZ2F0b3IuaAkod29ya2luZyBjb3B5
KQpAQCAtMjUsOSArMjUsOSBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIkNvbXBsZXRp
b25IYW5kbGVyLmgiCi0jaW5jbHVkZSAiTWFpblRocmVhZC5oIgotI2luY2x1ZGUgIlRocmVhZFNh
ZmVSZWZDb3VudGVkLmgiCisjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CisjaW5j
bHVkZSA8d3RmL01haW5UaHJlYWQuaD4KKyNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50
ZWQuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NoZWNrZWRB
cml0aG1ldGljLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQ2hlY2tlZEFyaXRobWV0
aWMuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQ2hlY2tlZEFyaXRobWV0
aWMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAg
Ki8KIAotI2lmbmRlZiBDaGVja2VkQXJpdGhtZXRpY19oCi0jZGVmaW5lIENoZWNrZWRBcml0aG1l
dGljX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIApAQCAt
OTIxLDUgKzkyMCwzIEBAIHVzaW5nIFdURjo6Y2hlY2tlZFN1bTsKIHVzaW5nIFdURjo6ZGlmZmVy
ZW5jZU92ZXJmbG93czsKIHVzaW5nIFdURjo6cHJvZHVjdE92ZXJmbG93czsKIHVzaW5nIFdURjo6
c3VtT3ZlcmZsb3dzOwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NoZWNrZWRCb29s
ZWFuLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQ2hlY2tlZEJvb2xlYW4uaAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQ2hlY2tlZEJvb2xlYW4uaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRl
ZiBDaGVja2VkQm9vbGVhbl9oCi0jZGVmaW5lIENoZWNrZWRCb29sZWFuX2gKKyNwcmFnbWEgb25j
ZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIApAQCAtNjYsNSArNjUsMyBAQCBwcml2
YXRlOgogICAgIG11dGFibGUgYm9vbCBtX2NoZWNrZWQ7CiAjZW5kaWYKIH07Ci0KLSNlbmRpZgpJ
bmRleDogU291cmNlL1dURi93dGYvQ2xvY2tUeXBlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9DbG9ja1R5cGUuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0
Zi9DbG9ja1R5cGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAog
I2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkNsb2NrVHlwZS5oIgorI2luY2x1ZGUgPHd0
Zi9DbG9ja1R5cGUuaD4KIAogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgogCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9DbG9ja1R5cGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9D
bG9ja1R5cGUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQ2xvY2tUeXBl
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICov
CiAKLSNpZm5kZWYgV1RGX0Nsb2NrVHlwZV9oCi0jZGVmaW5lIFdURl9DbG9ja1R5cGVfaAorI3By
YWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC00MCw1ICszOSwzIEBAIFdURl9FWFBP
UlRfUFJJVkFURSB2b2lkIHByaW50SW50ZXJuYWwoUHIKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1
c2luZyBXVEY6OkNsb2NrVHlwZTsKLQotI2VuZGlmIC8vIFdURl9DbG9ja1R5cGVfaApJbmRleDog
U291cmNlL1dURi93dGYvQ29tbWFQcmludGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvQ29tbWFQcmludGVyLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Nv
bW1hUHJpbnRlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMywxMCArMjMsOSBAQAogICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4gCiAgKi8KIAotI2lmbmRlZiBDb21tYVByaW50ZXJfaAotI2RlZmluZSBDb21tYVByaW50
ZXJfaAorI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJQcmludFN0cmVhbS5oIgorI2luY2x1ZGUg
PHd0Zi9QcmludFN0cmVhbS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtNjEsNiArNjAsMyBA
QCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Q29tbWFQcmludGVy
OwotCi0jZW5kaWYgLy8gQ29tbWFQcmludGVyX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvQ29t
cGlsYXRpb25UaHJlYWQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NvbXBpbGF0
aW9uVGhyZWFkLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQ29tcGls
YXRpb25UaHJlYWQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMiArMjQsMTIgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ29tcGlsYXRpb25UaHJlYWQuaCIKKyNp
bmNsdWRlIDx3dGYvQ29tcGlsYXRpb25UaHJlYWQuaD4KIAotI2luY2x1ZGUgIlN0ZExpYkV4dHJh
cy5oIgotI2luY2x1ZGUgIlRocmVhZFNwZWNpZmljLmgiCi0jaW5jbHVkZSAiVGhyZWFkaW5nLmgi
CiAjaW5jbHVkZSA8bXV0ZXg+CisjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgorI2luY2x1
ZGUgPHd0Zi9UaHJlYWRTcGVjaWZpYy5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KIAog
bmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NvbXBpbGF0aW9uVGhyZWFk
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQ29tcGlsYXRpb25UaHJlYWQuaAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQ29tcGlsYXRpb25UaHJlYWQuaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBDb21waWxhdGlvblRocmVhZF9oCi0jZGVmaW5lIENvbXBpbGF0aW9uVGhyZWFkX2gKKyNw
cmFnbWEgb25jZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtNTQsNiArNTMsMyBAQCBwcml2YXRl
OgogCiB1c2luZyBXVEY6OkNvbXBpbGF0aW9uU2NvcGU7CiB1c2luZyBXVEY6OmV4Y2hhbmdlSXND
b21waWxhdGlvblRocmVhZDsKLQotI2VuZGlmIC8vIENvbXBpbGF0aW9uVGhyZWFkX2gKLQpJbmRl
eDogU291cmNlL1dURi93dGYvQ29tcGlsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9Db21waWxlci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9Db21waWxl
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAq
LwogCi0jaWZuZGVmIFdURl9Db21waWxlcl9oCi0jZGVmaW5lIFdURl9Db21waWxlcl9oCisjcHJh
Z21hIG9uY2UKIAogLyogQ09NUElMRVIoKSAtIHRoZSBjb21waWxlciBiZWluZyB1c2VkIHRvIGJ1
aWxkIHRoZSBwcm9qZWN0ICovCiAjZGVmaW5lIENPTVBJTEVSKFdURl9GRUFUVVJFKSAoZGVmaW5l
ZCBXVEZfQ09NUElMRVJfIyNXVEZfRkVBVFVSRSAgJiYgV1RGX0NPTVBJTEVSXyMjV1RGX0ZFQVRV
UkUpCkBAIC00NjQsNSArNDYzLDMgQEAKIAogI2RlZmluZSBJR05PUkVfTlVMTF9DSEVDS19XQVJO
SU5HU19CRUdJTiBJR05PUkVfV0FSTklOR1NfQkVHSU4oIm5vbm51bGwiKQogI2RlZmluZSBJR05P
UkVfTlVMTF9DSEVDS19XQVJOSU5HU19FTkQgSUdOT1JFX1dBUk5JTkdTX0VORAotCi0jZW5kaWYg
LyogV1RGX0NvbXBpbGVyX2ggKi8KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NvbmN1cnJlbnRQdHJI
YXNoU2V0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Db25jdXJyZW50UHRySGFz
aFNldC5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0NvbmN1cnJlbnRQ
dHJIYXNoU2V0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNp
bmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJDb25jdXJyZW50UHRySGFzaFNldC5oIgorI2lu
Y2x1ZGUgPHd0Zi9Db25jdXJyZW50UHRySGFzaFNldC5oPgogCiAjaW5jbHVkZSA8d3RmL0RhdGFM
b2cuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvQ29uY3VycmVudFZlY3Rvci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NvbmN1cnJlbnRWZWN0b3IuaAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvQ29uY3VycmVudFZlY3Rvci5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw4ICsyNiw3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQ29uY3VycmVudFZl
Y3Rvcl9oCi0jZGVmaW5lIENvbmN1cnJlbnRWZWN0b3JfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDx3dGYvQ29uY3VycmVudEJ1ZmZlci5oPgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5o
PgpAQCAtMjY1LDUgKzI2NCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNp
bmcgV1RGOjpDb25jdXJyZW50VmVjdG9yOwotCi0jZW5kaWYgLy8gQ29uY3VycmVudFZlY3Rvcl9o
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Db25kaXRpb24uaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9Db25kaXRpb24uaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYv
Q29uZGl0aW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAogICovCiAKLSNpZm5kZWYgV1RGX0NvbmRpdGlvbl9oCi0jZGVmaW5lIFdURl9Db25kaXRp
b25faAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KICNpbmNs
dWRlIDx3dGYvUGFya2luZ0xvdC5oPgpAQCAtMTc4LDYgKzE3NywzIEBAIHVzaW5nIFN0YXRpY0Nv
bmRpdGlvbiA9IENvbmRpdGlvbjsKIAogdXNpbmcgV1RGOjpDb25kaXRpb247CiB1c2luZyBXVEY6
OlN0YXRpY0NvbmRpdGlvbjsKLQotI2VuZGlmIC8vIFdURl9Db25kaXRpb25faAotCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9Db3VudGluZ0xvY2suY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL0NvdW50aW5nTG9jay5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3Rm
L0NvdW50aW5nTG9jay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ291bnRpbmdMb2NrLmgiCisjaW5jbHVk
ZSA8d3RmL0NvdW50aW5nTG9jay5oPgogCiAjaW5jbHVkZSA8d3RmL0xvY2tBbGdvcml0aG1Jbmxp
bmVzLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Nyb3NzVGhyZWFkVGFza0hhbmRsZXIuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0Nyb3NzVGhyZWFkVGFza0hhbmRsZXIuY3Bw
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9Dcm9zc1RocmVhZFRhc2tIYW5k
bGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJDcm9zc1RocmVhZFRhc2tIYW5kbGVyLmgiCisjaW5jbHVk
ZSA8d3RmL0Nyb3NzVGhyZWFkVGFza0hhbmRsZXIuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuY3BwCShyZXZpc2lvbiAy
MzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9DcnlwdG9ncmFwaGljVXRpbGl0aWVzLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJDcnlwdG9ncmFwaGljVXRpbGl0aWVzLmgiCisjaW5jbHVkZSA8d3RmL0NyeXB0
b2dyYXBoaWNVdGlsaXRpZXMuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9DcnlwdG9ncmFwaGljVXRpbGl0aWVzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMs
OCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfQ3J5cHRvZ3Jh
cGhpY1V0aWxpdGllc19oCi0jZGVmaW5lIFdURl9DcnlwdG9ncmFwaGljVXRpbGl0aWVzX2gKKyNw
cmFnbWEgb25jZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMzQsNSArMzMsMyBAQCBXVEZfRVhQ
T1JUX1BSSVZBVEUgaW50IGNvbnN0YW50VGltZU1lbWNtCiB9CiAKIHVzaW5nIFdURjo6Y29uc3Rh
bnRUaW1lTWVtY21wOwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0NyeXB0b2dyYXBo
aWNhbGx5UmFuZG9tTnVtYmVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Dcnlw
dG9ncmFwaGljYWxseVJhbmRvbU51bWJlci5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjgsMTIgKzI4LDEyIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIkNyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmgiCisjaW5jbHVkZSA8d3RmL0NyeXB0
b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmg+CiAKLSNpbmNsdWRlICJOZXZlckRlc3Ryb3llZC5o
IgotI2luY2x1ZGUgIk9TUmFuZG9tU291cmNlLmgiCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVk
ZSA8d3RmL0xvY2suaD4KKyNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KKyNpbmNsdWRl
IDx3dGYvT1NSYW5kb21Tb3VyY2UuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXIuaAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXIu
aAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8K
IAotI2lmbmRlZiBXVEZfQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXJfaAotI2RlZmluZSBX
VEZfQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDxzdGRpbnQuaD4KIApAQCAtMzcsNSArMzYsMyBAQCBXVEZfRVhQT1JUX1BSSVZBVEUgdm9p
ZCBjcnlwdG9ncmFwaGljYWxsCiAKIHVzaW5nIFdURjo6Y3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21O
dW1iZXI7CiB1c2luZyBXVEY6OmNyeXB0b2dyYXBoaWNhbGx5UmFuZG9tVmFsdWVzOwotCi0jZW5k
aWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0N1cnJlbnRUaW1lLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9DdXJyZW50VGltZS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL0N1cnJlbnRUaW1lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzIsOSArMzIsMTAg
QEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTW9ub3RvbmljVGltZS5o
IgotI2luY2x1ZGUgIldhbGxUaW1lLmgiCisjaW5jbHVkZSA8d3RmL01vbm90b25pY1RpbWUuaD4K
KwogI2luY2x1ZGUgPHRpbWUuaD4KKyNpbmNsdWRlIDx3dGYvV2FsbFRpbWUuaD4KIAogI2lmIE9T
KERBUldJTikKICNpbmNsdWRlIDxtYWNoL21hY2guaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Rh
dGFMb2cuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0RhdGFMb2cuY3BwCShyZXZp
c2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9EYXRhTG9nLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjQsNyArMjQsOCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJEYXRhTG9nLmgiCisjaW5jbHVkZSA8d3RmL0RhdGFMb2cuaD4KKwogI2luY2x1ZGUgPHN0ZGFy
Zy5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi9GaWxlUHJpbnRTdHJlYW0u
aD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0RhdGFMb2cuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9EYXRhTG9nLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Rh
dGFMb2cuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4g
CiAgKi8KIAotI2lmbmRlZiBEYXRhTG9nX2gKLSNkZWZpbmUgRGF0YUxvZ19oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPHN0ZGFyZy5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+CkBAIC03NCw2ICs3
MywzIEBAIHVzaW5nIFdURjo6ZGF0YUxvZ0lmOwogdXNpbmcgV1RGOjpkYXRhTG9nTG5JZjsKIHVz
aW5nIFdURjo6ZGF0YUxvZ0Y7CiB1c2luZyBXVEY6OmRhdGFMb2dGU3RyaW5nOwotCi0jZW5kaWYg
Ly8gRGF0YUxvZ19oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0RhdGVNYXRoLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9EYXRlTWF0aC5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL0RhdGVNYXRoLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzAsMTggKzcw
LDE3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkRhdGVNYXRoLmgi
Ci0KLSNpbmNsdWRlICJBc3NlcnRpb25zLmgiCi0jaW5jbHVkZSAiQVNDSUlDVHlwZS5oIgotI2lu
Y2x1ZGUgIk1hdGhFeHRyYXMuaCIKLSNpbmNsdWRlICJTdGRMaWJFeHRyYXMuaCIKKyNpbmNsdWRl
IDx3dGYvRGF0ZU1hdGguaD4KIAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRlIDxsaW1p
dHMuaD4KICNpbmNsdWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8
dGltZS5oPgorI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CisjaW5jbHVkZSA8d3RmL0FTQ0lJ
Q1R5cGUuaD4KKyNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgorI2luY2x1ZGUgPHd0Zi9TdGRM
aWJFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKICNpZiBP
UyhXSU5ET1dTKQpJbmRleDogU291cmNlL1dURi93dGYvRGF0ZU1hdGguaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9EYXRlTWF0aC5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2Uv
V1RGL3d0Zi9EYXRlTWF0aC5oCSh3b3JraW5nIGNvcHkpCkBAIC00MCw4ICs0MCw3IEBACiAgKgog
ICovCiAKLSNpZm5kZWYgRGF0ZU1hdGhfaAotI2RlZmluZSBEYXRlTWF0aF9oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPG1hdGguaD4KICNpbmNsdWRlIDxzdGRpbnQuaD4KQEAgLTE1NCw1ICsx
NTMsMyBAQCB1c2luZyBXVEY6OnBhcnNlRGF0ZUZyb21OdWxsVGVybWluYXRlZENoCiB1c2luZyBX
VEY6Om1ha2VSRkMyODIyRGF0ZVN0cmluZzsKIHVzaW5nIFdURjo6TG9jYWxUaW1lT2Zmc2V0Owog
dXNpbmcgV1RGOjpjYWxjdWxhdGVMb2NhbFRpbWVPZmZzZXQ7Ci0KLSNlbmRpZiAvLyBEYXRlTWF0
aF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9EZWNpbWFsTnVtYmVyLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9EZWNpbWFsTnVtYmVyLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysg
U291cmNlL1dURi93dGYvRGVjaW1hbE51bWJlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcg
KzI0LDggQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiRGVjaW1hbE51
bWJlci5oIgorI2luY2x1ZGUgPHd0Zi9EZWNpbWFsTnVtYmVyLmg+CisKICNpbmNsdWRlIDxtYXRo
Lmg+CiAjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZT
dHJpbmcuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0RlY2ltYWxOdW1iZXIuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi9EZWNpbWFsTnVtYmVyLmgJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL0RlY2ltYWxOdW1iZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCAr
MjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBEZWNpbWFsTnVtYmVyX2gK
LSNkZWZpbmUgRGVjaW1hbE51bWJlcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPG1hdGgu
aD4KICNpbmNsdWRlIDx3dGYvZHRvYS5oPgpAQCAtMTA0LDUgKzEwMywzIEBAIHByaXZhdGU6CiB1
c2luZyBXVEY6OkRlY2ltYWxOdW1iZXI7CiB1c2luZyBXVEY6OlJvdW5kaW5nU2lnbmlmaWNhbnRG
aWd1cmVzOwogdXNpbmcgV1RGOjpSb3VuZGluZ0RlY2ltYWxQbGFjZXM7Ci0KLSNlbmRpZiAvLyBE
ZWNpbWFsTnVtYmVyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0RlcXVlLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvRGVxdWUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dU
Ri93dGYvRGVxdWUuaAkod29ya2luZyBjb3B5KQpAQCAtMjcsOCArMjcsNyBAQAogICogVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi0jaWZuZGVmIFdURl9EZXF1ZV9oCi0jZGVmaW5lIFdURl9EZXF1ZV9oCisjcHJh
Z21hIG9uY2UKIAogLy8gRklYTUU6IENvdWxkIG1vdmUgd2hhdCBWZWN0b3IgYW5kIERlcXVlIHNo
YXJlIGludG8gYSBzZXBhcmF0ZSBmaWxlLgogLy8gRGVxdWUgZG9lc24ndCBhY3R1YWxseSB1c2Ug
VmVjdG9yLgpAQCAtNzg1LDUgKzc4NCwzIEBAIGlubGluZSBUKiBEZXF1ZUl0ZXJhdG9yQmFzZTxU
LCBpbmxpbmVDYXAKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkRlcXVlOwotCi0j
ZW5kaWYgLy8gV1RGX0RlcXVlX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Rpc2FsbG93Q1R5cGUu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9EaXNhbGxvd0NUeXBlLmgJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Rpc2FsbG93Q1R5cGUuaAkod29ya2luZyBjb3B5
KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9EaXNh
bGxvd0NUeXBlX2gKLSNkZWZpbmUgV1RGX0Rpc2FsbG93Q1R5cGVfaAorI3ByYWdtYSBvbmNlCiAK
IC8vIFRoZSBiZWhhdmlvciBvZiBtYW55IG9mIHRoZSBmdW5jdGlvbnMgaW4gdGhlIDxjdHlwZS5o
PiBoZWFkZXIgaXMgZGVwZW5kZW50CiAvLyBvbiB0aGUgY3VycmVudCBsb2NhbGUuIEJ1dCBhbG1v
c3QgYWxsIHVzZXMgb2YgdGhlc2UgZnVuY3Rpb25zIGFyZSBmb3IKQEAgLTc5LDUgKzc4LDMgQEAK
ICNkZWZpbmUgdG91cHBlciB0b3VwcGVyX1dURl9QbGVhc2VfdXNlX0FTQ0lJQ1R5cGVfaW5zdGVh
ZF9vZl9jdHlwZV9zZWVfY29tbWVudF9pbl9BU0NJSUNUeXBlX2gKIAogI2VuZGlmCi0KLSNlbmRp
ZgpJbmRleDogU291cmNlL1dURi93dGYvRG9taW5hdG9ycy5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL0RvbWluYXRvcnMuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93
dGYvRG9taW5hdG9ycy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURkRvbWluYXRvcnNfaAotI2RlZmluZSBXVEZEb21p
bmF0b3JzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0NvbW1hUHJpbnRlci5oPgog
I2luY2x1ZGUgPHd0Zi9GYXN0Qml0VmVjdG9yLmg+CkBAIC03NDgsNiArNzQ3LDMgQEAgcHJpdmF0
ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkRvbWluYXRvcnM7Ci0KLSNlbmRp
ZiAvLyBXVEZEb21pbmF0b3JzX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvRG91Ymx5TGlua2Vk
TGlzdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0RvdWJseUxpbmtlZExpc3QuaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvRG91Ymx5TGlua2VkTGlzdC5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBEb3VibHlMaW5rZWRMaXN0X2gKLSNkZWZpbmUgRG91
Ymx5TGlua2VkTGlzdF9oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTIx
Niw1ICsyMTUsMyBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBpbmxpbmUgdm9pZCBEb3VibHlMCiAK
IHVzaW5nIFdURjo6RG91Ymx5TGlua2VkTGlzdE5vZGU7CiB1c2luZyBXVEY6OkRvdWJseUxpbmtl
ZExpc3Q7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvRmFzdEJpdFZlY3Rvci5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvRmFzdEJpdFZlY3Rvci5jcHAJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Zhc3RCaXRWZWN0b3IuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIkZhc3RCaXRWZWN0b3IuaCIKKyNpbmNsdWRlIDx3dGYvRmFzdEJpdFZlY3Rvci5oPgogCiBu
YW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvRmFzdE1hbGxvYy5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvRmFzdE1hbGxvYy5jcHAJKHJldmlzaW9uIDIzNzA3
MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
NCwxMSArMjQsMTEgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiRmFz
dE1hbGxvYy5oIgorI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAKLSNpbmNsdWRlICJDaGVj
a2VkQXJpdGhtZXRpYy5oIgogI2luY2x1ZGUgPGxpbWl0cz4KICNpbmNsdWRlIDxzdHJpbmcuaD4K
KyNpbmNsdWRlIDx3dGYvQ2hlY2tlZEFyaXRobWV0aWMuaD4KICNpbmNsdWRlIDx3dGYvRGF0YUxv
Zy5oPgogCiAjaWYgT1MoV0lORE9XUykKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2Mu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmgJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuaAkod29ya2luZyBjb3B5KQpAQCAt
MTgsOCArMTgsNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9GYXN0TWFsbG9jX2gKLSNkZWZp
bmUgV1RGX0Zhc3RNYWxsb2NfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxuZXc+CiAjaW5j
bHVkZSA8c3RkbGliLmg+CkBAIC0yOTgsNSArMjk3LDMgQEAgdHlwZWRlZiBpbnQgX190aGlzSXNI
ZXJlVG9Gb3JjZUFTZW1pY29sbwogI2RlZmluZSBXVEZfTUFLRV9TVFJVQ1RfRkFTVF9BTExPQ0FU
RUQgXAogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEX0lNUEwgXAogdHlwZWRlZiBpbnQgX190
aGlzSXNIZXJlVG9Gb3JjZUFTZW1pY29sb25BZnRlclRoaXNNYWNybwotCi0jZW5kaWYgLyogV1RG
X0Zhc3RNYWxsb2NfaCAqLwpJbmRleDogU291cmNlL1dURi93dGYvRmVhdHVyZURlZmluZXMuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCShyZXZpc2lvbiAy
MzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw4ICsyNiw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX0Zl
YXR1cmVEZWZpbmVzX2gKLSNkZWZpbmUgV1RGX0ZlYXR1cmVEZWZpbmVzX2gKKyNwcmFnbWEgb25j
ZQogCiAvKiBVc2UgdGhpcyBmaWxlIHRvIGxpc3QgX2FsbF8gRU5BQkxFKCkgbWFjcm9zLiBEZWZp
bmUgdGhlIG1hY3JvcyB0byBiZSBvbmUgb2YgdGhlIGZvbGxvd2luZyB2YWx1ZXM6CiAgKiAgLSAi
MCIgZGlzYWJsZXMgdGhlIGZlYXR1cmUgYnkgZGVmYXVsdC4gVGhlIGZlYXR1cmUgY2FuIHN0aWxs
IGJlIGVuYWJsZWQgZm9yIGEgc3BlY2lmaWMgcG9ydCBvciBlbnZpcm9ubWVudC4KQEAgLTcxOCw1
ICs3MTcsMyBAQCB0aGUgcHVibGljIGlPUyBTREsuIFNlZSA8aHR0cHM6Ly93ZWJraXQuCiAjaWYg
RU5BQkxFKFdFQkdMMikgJiYgIUVOQUJMRShXRUJHTCkKICNlcnJvciAiRU5BQkxFKFdFQkdMMikg
cmVxdWlyZXMgRU5BQkxFKFdFQkdMKSIKICNlbmRpZgotCi0jZW5kaWYgLyogV1RGX0ZlYXR1cmVE
ZWZpbmVzX2ggKi8KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0ZpbGVQcmludFN0cmVhbS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvRmlsZVByaW50U3RyZWFtLmNwcAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvRmlsZVByaW50U3RyZWFtLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJGaWxlUHJpbnRTdHJlYW0uaCIKKyNpbmNsdWRlIDx3dGYvRmlsZVByaW50U3RyZWFtLmg+
CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9GaWxlUHJpbnRTdHJl
YW0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9GaWxlUHJpbnRTdHJlYW0uaAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvRmlsZVByaW50U3RyZWFtLmgJKHdvcmtp
bmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5k
ZWYgRmlsZVByaW50U3RyZWFtX2gKLSNkZWZpbmUgRmlsZVByaW50U3RyZWFtX2gKKyNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDx3dGYvUHJpbnRTdHJlYW0uaD4K
QEAgLTU2LDYgKzU1LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBX
VEY6OkZpbGVQcmludFN0cmVhbTsKLQotI2VuZGlmIC8vIEZpbGVQcmludFN0cmVhbV9oCi0KSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL0ZsaXBCeXRlcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL0ZsaXBCeXRlcy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9GbGlw
Qnl0ZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4g
CiAgKi8KIAotI2lmbmRlZiBGbGlwQnl0ZXNfaAotI2RlZmluZSBGbGlwQnl0ZXNfaAorI3ByYWdt
YSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC0xMTIsNiArMTExLDMgQEAgaW5saW5lIFQg
ZmxpcEJ5dGVzSWZMaXR0bGVFbmRpYW4oVCB2YWx1ZQogdXNpbmcgV1RGOjpuZWVkVG9GbGlwQnl0
ZXNJZkxpdHRsZUVuZGlhbjsKIHVzaW5nIFdURjo6ZmxpcEJ5dGVzOwogdXNpbmcgV1RGOjpmbGlw
Qnl0ZXNJZkxpdHRsZUVuZGlhbjsKLQotI2VuZGlmIC8vIEZsaXBCeXRlc19oCi0KSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL0Z1bmN0aW9uRGlzcGF0Y2hlci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvRnVuY3Rpb25EaXNwYXRjaGVyLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291
cmNlL1dURi93dGYvRnVuY3Rpb25EaXNwYXRjaGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQs
NyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJGdW5jdGlv
bkRpc3BhdGNoZXIuaCIKKyNpbmNsdWRlIDx3dGYvRnVuY3Rpb25EaXNwYXRjaGVyLmg+CiAKIG5h
bWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9GdW5jdGlvbkRpc3BhdGNoZXIu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9GdW5jdGlvbkRpc3BhdGNoZXIuaAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvRnVuY3Rpb25EaXNwYXRjaGVyLmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KICAqLwogCi0jaWZuZGVmIEZ1bmN0aW9uRGlzcGF0Y2hlcl9oCi0jZGVmaW5lIEZ1
bmN0aW9uRGlzcGF0Y2hlcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9GdW5jdGlv
bi5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRTYWZlUmVmQ291bnRlZC5oPgpAQCAtNDcsNSArNDYs
MyBAQCBwcm90ZWN0ZWQ6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpGdW5jdGlv
bkRpc3BhdGNoZXI7Ci0KLSNlbmRpZiAvLyBGdW5jdGlvbkRpc3BhdGNoZXJfaApJbmRleDogU291
cmNlL1dURi93dGYvR2V0UHRyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvR2V0UHRy
LmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0dldFB0ci5oCSh3b3JraW5n
IGNvcHkpCkBAIC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX0dldFB0cl9o
Ci0jZGVmaW5lIFdURl9HZXRQdHJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxtZW1vcnk+
CiAKQEAgLTc4LDUgKzc3LDMgQEAgc3RydWN0IEdldFB0ckhlbHBlcjxzdGQ6OnVuaXF1ZV9wdHI8
VCwgRAogfTsKIAogfSAvLyBuYW1lc3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBXVEZfR2V0UHRyX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL0dpZ2FjYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9HaWdhY2FnZS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3Rm
L0dpZ2FjYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNp
bmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJHaWdhY2FnZS5oIgorI2luY2x1ZGUgPHd0Zi9H
aWdhY2FnZS5oPgogCiAjaW5jbHVkZSA8d3RmL0F0b21pY3MuaD4KICNpbmNsdWRlIDx3dGYvUGFn
ZUJsb2NrLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9HbG9iYWxWZXJzaW9uLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9HbG9iYWxWZXJzaW9uLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvR2xvYmFsVmVyc2lvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiR2xv
YmFsVmVyc2lvbi5oIgorI2luY2x1ZGUgPHd0Zi9HbG9iYWxWZXJzaW9uLmg+CiAKICNpbmNsdWRl
IDx3dGYvQXRvbWljcy5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9HcmFwaE5vZGVXb3JrbGlz
dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0dyYXBoTm9kZVdvcmtsaXN0LmgJKHJl
dmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0dyYXBoTm9kZVdvcmtsaXN0LmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgR3JhcGhOb2RlV29ya2xpc3RfaAotI2RlZmluZSBHcmFwaE5vZGVXb3JrbGlzdF9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAKQEAgLTIxOCw2ICsyMTcs
MyBAQCB1c2luZyBXVEY6OkV4dGVuZGVkR3JhcGhOb2RlV29ya2xpc3Q7CiB1c2luZyBXVEY6Okdy
YXBoVmlzaXRPcmRlcjsKIHVzaW5nIFdURjo6R3JhcGhOb2RlV2l0aE9yZGVyOwogdXNpbmcgV1RG
OjpQb3N0T3JkZXJHcmFwaE5vZGVXb3JrbGlzdDsKLQotI2VuZGlmIC8vIEdyYXBoTm9kZVdvcmts
aXN0X2gKLQpJbmRleDogU291cmNlL1dURi93dGYvR3JlZ29yaWFuRGF0ZVRpbWUuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0dyZWdvcmlhbkRhdGVUaW1lLmNwcAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvR3JlZ29yaWFuRGF0ZVRpbWUuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw5ICsyMyw5IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2lu
Y2x1ZGUgIkdyZWdvcmlhbkRhdGVUaW1lLmgiCisjaW5jbHVkZSA8d3RmL0dyZWdvcmlhbkRhdGVU
aW1lLmg+CiAKLSNpbmNsdWRlICJEYXRlTWF0aC5oIgorI2luY2x1ZGUgPHd0Zi9EYXRlTWF0aC5o
PgogCiAjaWYgT1MoV0lORE9XUykKICNpbmNsdWRlIDx3aW5kb3dzLmg+CkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9HcmVnb3JpYW5EYXRlVGltZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L0dyZWdvcmlhbkRhdGVUaW1lLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3Rm
L0dyZWdvcmlhbkRhdGVUaW1lLmgJKHdvcmtpbmcgY29weSkKQEAgLTIyLDggKzIyLDcgQEAKICAq
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXVEZfR3JlZ29yaWFuRGF0ZVRpbWVfaAotI2RlZmlu
ZSBXVEZfR3JlZ29yaWFuRGF0ZVRpbWVfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxzdHJp
bmcuaD4KICNpbmNsdWRlIDx0aW1lLmg+CkBAIC0xMjQsNSArMTIzLDMgQEAgcHJpdmF0ZToKIH0g
Ly8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkdyZWdvcmlhbkRhdGVUaW1lOwotCi0jZW5k
aWYgLy8gV1RGX0dyZWdvcmlhbkRhdGVUaW1lX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0hhc2hG
dW5jdGlvbnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9IYXNoRnVuY3Rpb25zLmgJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0hhc2hGdW5jdGlvbnMuaAkod29y
a2luZyBjb3B5KQpAQCAtMTgsOCArMTgsNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9IYXNo
RnVuY3Rpb25zX2gKLSNkZWZpbmUgV1RGX0hhc2hGdW5jdGlvbnNfaAorI3ByYWdtYSBvbmNlCiAK
ICNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDx0dXBsZT4KQEAgLTI3Niw1ICsyNzUsMyBA
QCBuYW1lc3BhY2UgV1RGIHsKIHVzaW5nIFdURjo6RGVmYXVsdEhhc2g7CiB1c2luZyBXVEY6Oklu
dEhhc2g7CiB1c2luZyBXVEY6OlB0ckhhc2g7Ci0KLSNlbmRpZiAvLyBXVEZfSGFzaEZ1bmN0aW9u
c19oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9IYXNoTWFwLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvSGFzaE1hcC5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9I
YXNoTWFwLmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDggKzE4LDcgQEAKICAqCiAgKi8KIAotI2lm
bmRlZiBXVEZfSGFzaE1hcF9oCi0jZGVmaW5lIFdURl9IYXNoTWFwX2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8aW5pdGlhbGl6ZXJfbGlzdD4KICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgpA
QCAtNTc5LDUgKzU3OCwzIEBAIGlubGluZSBib29sIG9wZXJhdG9yIT0oY29uc3QgSGFzaE1hcDxU
LCAKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6Okhhc2hNYXA7Ci0KLSNlbmRpZiAv
KiBXVEZfSGFzaE1hcF9oICovCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9IYXNoTWV0aG9kLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvSGFzaE1ldGhvZC5oCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi9IYXNoTWV0aG9kLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDgg
KzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgSGFzaE1ldGhvZF9oCi0j
ZGVmaW5lIEhhc2hNZXRob2RfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvU3RkTGli
RXh0cmFzLmg+CiAKQEAgLTQxLDUgKzQwLDMgQEAgc3RydWN0IEhhc2hNZXRob2QgewogfSAvLyBu
YW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6SGFzaE1ldGhvZDsKLQotI2VuZGlmIC8vIEhhc2hN
ZXRob2RfaApJbmRleDogU291cmNlL1dURi93dGYvSGFzaFNldC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL0hhc2hTZXQuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93
dGYvSGFzaFNldC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAK
LSNpZm5kZWYgV1RGX0hhc2hTZXRfaAotI2RlZmluZSBXVEZfSGFzaFNldF9oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPGluaXRpYWxpemVyX2xpc3Q+CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQu
aD4KQEAgLTM4NCw1ICszODMsMyBAQCB2b2lkIEhhc2hTZXQ8VCwgVSwgVj46OmFkZChzdGQ6Omlu
aXRpYWxpCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpIYXNoU2V0OwotCi0jZW5k
aWYgLyogV1RGX0hhc2hTZXRfaCAqLwpJbmRleDogU291cmNlL1dURi93dGYvSGFzaFRhYmxlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwCShyZXZpc2lvbiAy
MzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0xOCwxMCArMTgsMTAgQEAKICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJI
YXNoVGFibGUuaCIKKyNpbmNsdWRlIDx3dGYvSGFzaFRhYmxlLmg+CiAKLSNpbmNsdWRlICJEYXRh
TG9nLmgiCiAjaW5jbHVkZSA8bXV0ZXg+CisjaW5jbHVkZSA8d3RmL0RhdGFMb2cuaD4KIAogbmFt
ZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0hhc2hUcmFpdHMuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9IYXNoVHJhaXRzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL0hhc2hUcmFpdHMuaAkod29ya2luZyBjb3B5KQpAQCAtMTgsOCArMTgs
NyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9IYXNoVHJhaXRzX2gKLSNkZWZpbmUgV1RGX0hh
c2hUcmFpdHNfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8
dXRpbGl0eT4KQEAgLTM4MCw1ICszNzksMyBAQCB1c2luZyBXVEY6OktleVZhbHVlUGFpcjsKIHVz
aW5nIFdURjo6UGFpckhhc2hUcmFpdHM7CiB1c2luZyBXVEY6Ok51bGxhYmxlSGFzaFRyYWl0czsK
IHVzaW5nIFdURjo6U2ltcGxlQ2xhc3NIYXNoVHJhaXRzOwotCi0jZW5kaWYgLy8gV1RGX0hhc2hU
cmFpdHNfaApJbmRleDogU291cmNlL1dURi93dGYvSW5kZW50ZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9JbmRlbnRlci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RG
L3d0Zi9JbmRlbnRlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgogICovCiAKLSNpZm5kZWYgSW5kZW50ZXJfaAotI2RlZmluZSBJbmRlbnRlcl9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgogI2luY2x1ZGUgPHd0
Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtNjMsNSArNjIsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1l
c3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6SW5kZW50ZXI7Ci0KLSNlbmRpZiAvLyBJbmRlbnRlcl9o
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9JbmRleFNwYXJzZVNldC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL0luZGV4U3BhcnNlU2V0LmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL0luZGV4U3BhcnNlU2V0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcg
QEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBJbmRleFNwYXJzZVNldF9oCi0jZGVm
aW5lIEluZGV4U3BhcnNlU2V0X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL1ZlY3Rv
ci5oPgogCkBAIC0yMzAsNSArMjI5LDMgQEAgYXV0byBJbmRleFNwYXJzZVNldDxFbnRyeVR5cGUs
IEVudHJ5VHlwZQogCiB1c2luZyBXVEY6OkRlZmF1bHRJbmRleFNwYXJzZVNldFRyYWl0czsKIHVz
aW5nIFdURjo6SW5kZXhTcGFyc2VTZXQ7Ci0KLSNlbmRpZiAvLyBJbmRleFNwYXJzZVNldF9oCklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9JbmxpbmVBU00uaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9JbmxpbmVBU00uaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvSW5s
aW5lQVNNLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDkgKzIzLDEwIEBACiAgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LiAKICAqLwogCi0jaWZuZGVmIElubGluZUFTTV9oCi0jZGVmaW5lIElubGluZUFTTV9oCisjcHJh
Z21hIG9uY2UKKwogI2luY2x1ZGUgPHd0Zi9QbGF0Zm9ybS5oPgorCiAjaWYgIUNQVShVTktOT1dO
KQogCiAvKiBhc20gZGlyZWN0aXZlIGhlbHBlcnMgKi8gCkBAIC05OSw0ICsxMDAsMyBAQAogI2Vu
ZGlmCiAKICNlbmRpZiAvLyAhQ1BVKFVOS05PV04pCi0jZW5kaWYgLy8gSW5saW5lQVNNX2gKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL0luc2VydGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL0luc2VydGlvbi5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9JbnNl
cnRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4g
CiAgKi8KIAotI2lmbmRlZiBJbnNlcnRpb25faAotI2RlZmluZSBJbnNlcnRpb25faAorI3ByYWdt
YSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC04MSw1ICs4MCwzIEBAIHNpemVfdCBleGVj
dXRlSW5zZXJ0aW9ucyhUYXJnZXRWZWN0b3JUeXAKIAogdXNpbmcgV1RGOjpJbnNlcnRpb247CiB1
c2luZyBXVEY6OmV4ZWN1dGVJbnNlcnRpb25zOwotCi0jZW5kaWYgLy8gSW5zZXJ0aW9uX2gKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL0l0ZXJhdG9yQWRhcHRvcnMuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9JdGVyYXRvckFkYXB0b3JzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL0l0ZXJhdG9yQWRhcHRvcnMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMs
NyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYg
V1RGX0l0ZXJhdG9yQWRhcHRvcnNfaAotI2RlZmluZSBXVEZfSXRlcmF0b3JBZGFwdG9yc19oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHR5cGVfdHJhaXRzPgogCkBAIC0xMDksNSArMTA4LDMg
QEAgaW5saW5lIFRyYW5zZm9ybUl0ZXJhdG9yPFRyYW5zZm9ybSwgSXRlcgogfQogCiB9IC8vIG5h
bWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFdURl9JdGVyYXRvckFkYXB0b3JzX2gKSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL0l0ZXJhdG9yUmFuZ2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9JdGVyYXRvclJhbmdlLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0l0
ZXJhdG9yUmFuZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX0l0ZXJhdG9yUmFu
Z2VfaAotI2RlZmluZSBXVEZfSXRlcmF0b3JSYW5nZV9oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNw
YWNlIFdURiB7CiAKQEAgLTc5LDUgKzc4LDMgQEAgU2l6ZWRJdGVyYXRvclJhbmdlPENvbnRhaW5l
ciwgSXRlcmF0b3I+IAogfQogCiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFdURl9J
dGVyYXRvclJhbmdlX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0pTT05WYWx1ZXMuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0pTT05WYWx1ZXMuY3BwCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi9KU09OVmFsdWVzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzEs
NyArMzEsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJKU09OVmFs
dWVzLmgiCisjaW5jbHVkZSA8d3RmL0pTT05WYWx1ZXMuaD4KIAogI2luY2x1ZGUgPHd0Zi9EZWNp
bWFsTnVtYmVyLmg+CiAjaW5jbHVkZSA8d3RmL2R0b2EuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L0pTVmFsdWVNYWxsb2MuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0pTVmFsdWVN
YWxsb2MuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9KU1ZhbHVlTWFs
bG9jLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJKU1ZhbHVlTWFsbG9jLmgiCisjaW5jbHVkZSA8d3RmL0pT
VmFsdWVNYWxsb2MuaD4KIAogI2luY2x1ZGUgPHd0Zi9EYXRhTG9nLmg+CiAjaW5jbHVkZSA8d3Rm
L0Zhc3RNYWxsb2MuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0xFQkRlY29kZXIuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9MRUJEZWNvZGVyLmgJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL0xFQkRlY29kZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOSArMjUs
OSBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIkNvbXBpbGVyLmgiCiAjaW5jbHVkZSA8
YWxnb3JpdGhtPgogI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPHd0Zi9Db21waWxlci5o
PgogCiAvLyBUaGlzIGZpbGUgY29udGFpbnMgYSBidW5jaCBvZiBoZWxwZXIgZnVuY3Rpb25zIGZv
ciBkZWNvZGluZyBMRUIgbnVtYmVycy4KIC8vIFNlZSBodHRwczovL2VuLndpa2lwZWRpYS5vcmcv
d2lraS9MRUIxMjggZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9MYW5ndWFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTGFuZ3Vh
Z2UuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9MYW5ndWFnZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiTGFuZ3VhZ2UuaCIKKyNpbmNsdWRlIDx3dGYvTGFuZ3VhZ2UuaD4KIAog
I2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9MaXN0RHVtcC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL0xpc3REdW1wLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0xp
c3REdW1wLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDEyICsyMywxMSBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCiAgKi8KIAotI2lmbmRlZiBMaXN0RHVtcF9oCi0jZGVmaW5lIExpc3REdW1wX2gKKyNwcmFn
bWEgb25jZQogCi0jaW5jbHVkZSAiQ29tbWFQcmludGVyLmgiCi0jaW5jbHVkZSAiUHJpbnRTdHJl
YW0uaCIKLSNpbmNsdWRlICJTdHJpbmdQcmludFN0cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi9Db21t
YVByaW50ZXIuaD4KKyNpbmNsdWRlIDx3dGYvUHJpbnRTdHJlYW0uaD4KKyNpbmNsdWRlIDx3dGYv
U3RyaW5nUHJpbnRTdHJlYW0uaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTE4Miw2ICsxODEs
MyBAQCB1c2luZyBXVEY6Om1hcER1bXA7CiB1c2luZyBXVEY6OnBvaW50ZXJMaXN0RHVtcDsKIHVz
aW5nIFdURjo6c29ydGVkTGlzdER1bXA7CiB1c2luZyBXVEY6OnNvcnRlZE1hcER1bXA7Ci0KLSNl
bmRpZiAvLyBMaXN0RHVtcF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0xvY2suY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0xvY2suY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi9Mb2NrLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJMb2NrLmgiCisjaW5jbHVkZSA8
d3RmL0xvY2suaD4KIAogI2luY2x1ZGUgPHd0Zi9Mb2NrQWxnb3JpdGhtSW5saW5lcy5oPgogI2lu
Y2x1ZGUgPHd0Zi9TdGFja1Nob3RQcm9maWxlci5oPgpJbmRleDogU291cmNlL1dURi93dGYvTG9j
ay5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0xvY2suaAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvTG9jay5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9Mb2NrX2gKLSNkZWZpbmUg
V1RGX0xvY2tfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTG9ja0FsZ29yaXRobS5o
PgogI2luY2x1ZGUgPHd0Zi9Mb2NrZXIuaD4KQEAgLTEzOCw2ICsxMzcsMyBAQCB1c2luZyBMb2Nr
SG9sZGVyID0gTG9ja2VyPExvY2s+OwogCiB1c2luZyBXVEY6OkxvY2s7CiB1c2luZyBXVEY6Okxv
Y2tIb2xkZXI7Ci0KLSNlbmRpZiAvLyBXVEZfTG9ja19oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L0xvY2tBbGdvcml0aG0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Mb2NrQWxnb3Jp
dGhtLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL0xvY2tBbGdvcml0aG0u
aAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8K
IAotI2lmbmRlZiBXVEZfTG9ja0FsZ29yaXRobV9oCi0jZGVmaW5lIFdURl9Mb2NrQWxnb3JpdGht
X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0F0b21pY3MuaD4KICNpbmNsdWRlIDx3
dGYvQ29tcGlsZXIuaD4KQEAgLTE1NSw2ICsxNTQsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3Bh
Y2UgV1RGCiAKIHVzaW5nIFdURjo6TG9ja0FsZ29yaXRobTsKLQotI2VuZGlmIC8vIFdURl9Mb2Nr
QWxnb3JpdGhtX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvTG9ja2VkUHJpbnRTdHJlYW0uY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0xvY2tlZFByaW50U3RyZWFtLmNwcAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvTG9ja2VkUHJpbnRTdHJlYW0uY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIkxvY2tlZFByaW50U3RyZWFtLmgiCisjaW5jbHVkZSA8d3RmL0xvY2tlZFBy
aW50U3RyZWFtLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9M
b2NrZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Mb2NrZXIuaAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvTG9ja2VyLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1
LDggKzI1LDggQEAKICAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwotI2lmbmRl
ZiBMb2NrZXJfaAotI2RlZmluZSBMb2NrZXJfaAorCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUg
PHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL0F0b21pY3MuaD4KQEAgLTE0NCw1ICsx
NDQsMyBAQCB1c2luZyBXVEY6Ok5vTG9ja2luZ05lY2Vzc2FyeVRhZzsKIHVzaW5nIFdURjo6Tm9M
b2NraW5nTmVjZXNzYXJ5OwogdXNpbmcgV1RGOjpob2xkTG9jazsKIHVzaW5nIFdURjo6aG9sZExv
Y2tJZjsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9NRDUuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL01ENS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9X
VEYvd3RmL01ENS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ4LDkgKzQ4LDkgQEAKICAqLwogCiAj
aW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTUQ1LmgiCisjaW5jbHVkZSA8d3RmL01ENS5o
PgogCi0jaW5jbHVkZSAiQXNzZXJ0aW9ucy5oIgorI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+
CiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogCiBuYW1lc3BhY2UgV1RGIHsKSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL01ENS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL01ENS5o
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9NRDUuaAkod29ya2luZyBjb3B5
KQpAQCAtMjgsOCArMjgsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9N
RDVfaAotI2RlZmluZSBXVEZfTUQ1X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8YXJyYXk+
CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgpAQCAtNzIsNSArNzEsMyBAQCBwcml2YXRlOgogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6TUQ1OwotCi0jZW5kaWYgLy8gV1RGX01ENV9o
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9NYWluVGhyZWFkLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9NYWluVGhyZWFkLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dU
Ri93dGYvTWFpblRocmVhZC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI3LDE3ICsyNywxNyBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNYWluVGhyZWFkLmgiCisjaW5j
bHVkZSA8d3RmL01haW5UaHJlYWQuaD4KIAotI2luY2x1ZGUgIkRlcXVlLmgiCi0jaW5jbHVkZSAi
TW9ub3RvbmljVGltZS5oIgotI2luY2x1ZGUgIlN0ZExpYkV4dHJhcy5oIgotI2luY2x1ZGUgIlRo
cmVhZGluZy5oIgogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHd0Zi9Db25kaXRpb24uaD4K
KyNpbmNsdWRlIDx3dGYvRGVxdWUuaD4KICNpbmNsdWRlIDx3dGYvTG9jay5oPgorI2luY2x1ZGUg
PHd0Zi9Nb25vdG9uaWNUaW1lLmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+Cisj
aW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRTcGVjaWZp
Yy5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL01haW5UaHJlYWQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9NYWluVGhyZWFkLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL01h
aW5UaHJlYWQuaAkod29ya2luZyBjb3B5KQpAQCAtMjcsOCArMjcsNyBAQAogICogVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIE1haW5UaHJlYWRfaAotI2RlZmluZSBNYWluVGhyZWFkX2gKKyNwcmFn
bWEgb25jZQogCiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4K
QEAgLTExNiw1ICsxMTUsMyBAQCB1c2luZyBXVEY6OmNhbGxPbldlYlRocmVhZE9yRGlzcGF0Y2hB
c3luCiB1c2luZyBXVEY6OmluaXRpYWxpemVXZWJUaHJlYWQ7CiB1c2luZyBXVEY6OmluaXRpYWxp
emVBcHBsaWNhdGlvblVJVGhyZWFkOwogI2VuZGlmCi0KLSNlbmRpZiAvLyBNYWluVGhyZWFkX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL01hbGxvY1B0ci5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL01hbGxvY1B0ci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9N
YWxsb2NQdHIuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgTWFsbG9jUHRyX2gKLSNkZWZp
bmUgTWFsbG9jUHRyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2Mu
aD4KIApAQCAtMTM3LDUgKzEzNiwzIEBAIHRlbXBsYXRlPHR5cGVuYW1lIFU+IE1hbGxvY1B0cjxV
PiBhZG9wdE0KIAogdXNpbmcgV1RGOjpNYWxsb2NQdHI7CiB1c2luZyBXVEY6OmFkb3B0TWFsbG9j
UHRyOwotCi0jZW5kaWYgLy8gTWFsbG9jUHRyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL01hdGhF
eHRyYXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9NYXRoRXh0cmFzLmgJKHJldmlz
aW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL01hdGhFeHRyYXMuaAkod29ya2luZyBjb3B5
KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZf
TWF0aEV4dHJhc19oCi0jZGVmaW5lIFdURl9NYXRoRXh0cmFzX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPGNtYXRoPgpAQCAtNjE3LDUgKzYxNiwzIEBA
IHVzaW5nIFdURjo6c2h1ZmZsZVZlY3RvcjsKIHVzaW5nIFdURjo6Y2x6MzI7CiB1c2luZyBXVEY6
OmNsejY0OwogdXNpbmcgV1RGOjpjdHozMjsKLQotI2VuZGlmIC8vICNpZm5kZWYgV1RGX01hdGhF
eHRyYXNfaApJbmRleDogU291cmNlL1dURi93dGYvTWVkaWFUaW1lLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9NZWRpYVRpbWUuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9NZWRpYVRpbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw3ICsyNyw3IEBA
CiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk1lZGlhVGltZS5oIgorI2lu
Y2x1ZGUgPHd0Zi9NZWRpYVRpbWUuaD4KIAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRl
IDxjc3RkbGliPgpJbmRleDogU291cmNlL1dURi93dGYvTWVkaWFUaW1lLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvTWVkaWFUaW1lLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL01lZGlhVGltZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw3IEBACiAg
KiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX01lZGlhVGltZV9oCi0jZGVmaW5lIFdURl9N
ZWRpYVRpbWVfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgog
I2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtMTc4LDUgKzE3NywzIEBAIGJvb2wg
TWVkaWFUaW1lOjpkZWNvZGUoRGVjb2RlciYgZGVjb2RlciwKIHVzaW5nIFdURjo6TWVkaWFUaW1l
OwogdXNpbmcgV1RGOjpNZWRpYVRpbWVSYW5nZTsKIHVzaW5nIFdURjo6YWJzOwotCi0jZW5kaWYK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL01lbW9yeVByZXNzdXJlSGFuZGxlci5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmNwcAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJNZW1vcnlQcmVzc3VyZUhhbmRsZXIuaCIKKyNpbmNsdWRlIDx3dGYvTWVtb3J5
UHJlc3N1cmVIYW5kbGVyLmg+CiAKICNpbmNsdWRlIDx3dGYvTWVtb3J5Rm9vdHByaW50Lmg+CiAj
aW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9NZXNz
YWdlUXVldWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9NZXNzYWdlUXVldWUuaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvTWVzc2FnZVF1ZXVlLmgJKHdvcmtp
bmcgY29weSkKQEAgLTI3LDggKzI3LDcgQEAKICAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBN
ZXNzYWdlUXVldWVfaAotI2RlZmluZSBNZXNzYWdlUXVldWVfaAorI3ByYWdtYSBvbmNlCiAKICNp
bmNsdWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KQEAgLTI1Miw1ICsy
NTEsMyBAQCB1c2luZyBXVEY6Ok1lc3NhZ2VRdWV1ZVdhaXRSZXN1bHQ7CiB1c2luZyBXVEY6Ok1l
c3NhZ2VRdWV1ZVRlcm1pbmF0ZWQ7CiB1c2luZyBXVEY6Ok1lc3NhZ2VRdWV1ZVRpbWVvdXQ7CiB1
c2luZyBXVEY6Ok1lc3NhZ2VRdWV1ZU1lc3NhZ2VSZWNlaXZlZDsKLQotI2VuZGlmIC8vIE1lc3Nh
Z2VRdWV1ZV9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9NZXRhQWxsb2NhdG9yLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9NZXRhQWxsb2NhdG9yLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvTWV0YUFsbG9jYXRvci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI3LDcgKzI3LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTWV0
YUFsbG9jYXRvci5oIgorI2luY2x1ZGUgPHd0Zi9NZXRhQWxsb2NhdG9yLmg+CiAKICNpbmNsdWRl
IDx3dGYvRGF0YUxvZy5oPgogI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CkluZGV4OiBTb3Vy
Y2UvV1RGL3d0Zi9NZXRhQWxsb2NhdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
TWV0YUFsbG9jYXRvci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9NZXRh
QWxsb2NhdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDcgQEAKICAqIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiAgKi8KIAotI2lmbmRlZiBXVEZfTWV0YUFsbG9jYXRvcl9oCi0jZGVmaW5lIFdURl9NZXRhQWxs
b2NhdG9yX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNp
bmNsdWRlIDx3dGYvSGFzaE1hcC5oPgpAQCAtMjA4LDYgKzIwNywzIEBAIHByaXZhdGU6CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFdURl9NZXRhQWxsb2NhdG9yX2gKLQpJ
bmRleDogU291cmNlL1dURi93dGYvTWV0YUFsbG9jYXRvckhhbmRsZS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL01ldGFBbGxvY2F0b3JIYW5kbGUuaAkocmV2aXNpb24gMjM3MDcwKQor
KysgU291cmNlL1dURi93dGYvTWV0YUFsbG9jYXRvckhhbmRsZS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw4ICsyNiw3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX01ldGFBbGxv
Y2F0b3JIYW5kbGVfaAotI2RlZmluZSBXVEZfTWV0YUFsbG9jYXRvckhhbmRsZV9oCisjcHJhZ21h
IG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL01ldGFB
bGxvY2F0b3JQdHIuaD4KQEAgLTExOCw1ICsxMTcsMyBAQCBwcml2YXRlOgogfTsKIAogfQotCi0j
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL01vbm90b25pY1RpbWUuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL01vbm90b25pY1RpbWUuY3BwCShyZXZpc2lvbiAyMzcwNzApCisr
KyBTb3VyY2UvV1RGL3d0Zi9Nb25vdG9uaWNUaW1lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQs
MTEgKzI0LDExIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk1vbm90
b25pY1RpbWUuaCIKKyNpbmNsdWRlIDx3dGYvTW9ub3RvbmljVGltZS5oPgogCi0jaW5jbHVkZSAi
UHJpbnRTdHJlYW0uaCIKLSNpbmNsdWRlICJUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuaCIKLSNp
bmNsdWRlICJXYWxsVGltZS5oIgorI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgorI2luY2x1
ZGUgPHd0Zi9UaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuaD4KKyNpbmNsdWRlIDx3dGYvV2FsbFRp
bWUuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL01vbm90b25p
Y1RpbWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Nb25vdG9uaWNUaW1lLmgJKHJl
dmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL01vbm90b25pY1RpbWUuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRl
ZiBXVEZfTW9ub3RvbmljVGltZV9oCi0jZGVmaW5lIFdURl9Nb25vdG9uaWNUaW1lX2gKKyNwcmFn
bWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Nsb2NrVHlwZS5oPgogI2luY2x1ZGUgPHd0Zi9TZWNv
bmRzLmg+CkBAIC0yMTAsNSArMjA5LDMgQEAgaW5saW5lIGJvb2wgaXNmaW5pdGUoV1RGOjpNb25v
dG9uaWNUaW1lIAogfSAvLyBuYW1lc3BhY2Ugc3RkCiAKIHVzaW5nIFdURjo6TW9ub3RvbmljVGlt
ZTsKLQotI2VuZGlmIC8vIFdURl9Nb25vdG9uaWNUaW1lX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L05ha2VkUHRyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTmFrZWRQdHIuaAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvTmFrZWRQdHIuaAkod29ya2luZyBjb3B5
KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9O
YWtlZFB0cl9oCi0jZGVmaW5lIFdURl9OYWtlZFB0cl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAKQEAgLTExNSw1ICsxMTQsMyBAQCB0ZW1wbGF0ZTxjbGFz
cyBUPiBpbmxpbmUgdm9pZCBzd2FwKE5ha2VkCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcg
V1RGOjpOYWtlZFB0cjsKLQotI2VuZGlmIC8vIFdURl9OYWtlZFB0cl9oCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9Ob0xvY2suaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Ob0xvY2suaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvTm9Mb2NrLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgTm9M
b2NrX2gKLSNkZWZpbmUgTm9Mb2NrX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0xv
Y2tlci5oPgogCkBAIC00Myw2ICs0MiwzIEBAIHR5cGVkZWYgTG9ja2VyPE5vTG9jaz4gTm9Mb2Nr
TG9ja2VyOwogCiB1c2luZyBXVEY6Ok5vTG9jazsKIHVzaW5nIFdURjo6Tm9Mb2NrTG9ja2VyOwot
Ci0jZW5kaWYgLy8gTm9Mb2NrX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvTm9UYWlsQ2FsbHMu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Ob1RhaWxDYWxscy5oCShyZXZpc2lvbiAy
MzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9Ob1RhaWxDYWxscy5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNSw3ICsyNSw3IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiQXRvbWljcy5oIgor
I2luY2x1ZGUgPHd0Zi9BdG9taWNzLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3Vy
Y2UvV1RGL3d0Zi9Ob25jb3B5YWJsZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL05v
bmNvcHlhYmxlLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL05vbmNvcHlh
YmxlLmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDEyICsxOCwxMCBAQAogICoKICAqLwogCi0jaWZu
ZGVmIFdURl9Ob25jb3B5YWJsZV9oCi0jZGVmaW5lIFdURl9Ob25jb3B5YWJsZV9oCisjcHJhZ21h
IG9uY2UKIAogI2RlZmluZSBXVEZfTUFLRV9OT05DT1BZQUJMRShDbGFzc05hbWUpIFwKICAgICBw
cml2YXRlOiBcCiAgICAgICAgIENsYXNzTmFtZShjb25zdCBDbGFzc05hbWUmKSA9IGRlbGV0ZTsg
XAogICAgICAgICBDbGFzc05hbWUmIG9wZXJhdG9yPShjb25zdCBDbGFzc05hbWUmKSA9IGRlbGV0
ZTsgXAoKLSNlbmRpZiAvLyBXVEZfTm9uY29weWFibGVfaApJbmRleDogU291cmNlL1dURi93dGYv
TnVtYmVyT2ZDb3Jlcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTnVtYmVyT2ZD
b3Jlcy5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL051bWJlck9mQ29y
ZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIk51bWJlck9mQ29yZXMuaCIKKyNpbmNsdWRlIDx3dGYvTnVt
YmVyT2ZDb3Jlcy5oPgogCiAjaW5jbHVkZSA8Y3N0ZGlvPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9OdW1iZXJPZkNvcmVzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTnVtYmVyT2ZD
b3Jlcy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9OdW1iZXJPZkNvcmVz
LmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDEzICsxOCwxMCBAQAogICoKICAqLwogCi0jaWZuZGVm
IE51bWJlck9mQ29yZXNfaAotI2RlZmluZSBOdW1iZXJPZkNvcmVzX2gKKyNwcmFnbWEgb25jZQog
CiBuYW1lc3BhY2UgV1RGIHsKIAogV1RGX0VYUE9SVF9QUklWQVRFIGludCBudW1iZXJPZlByb2Nl
c3NvckNvcmVzKCk7CiAKIH0KLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9PU0FsbG9j
YXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yLmgJKHJldmlz
aW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIE9TQWxsb2NhdG9yX2gKLSNkZWZpbmUgT1NBbGxvY2F0b3JfaAorI3By
YWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhbGdvcml0aG0+CiAjaW5jbHVkZSA8d3RmL1ZNVGFncy5o
PgpAQCAtOTgsNSArOTcsMyBAQCBpbmxpbmUgVCogT1NBbGxvY2F0b3I6OnJlYWxsb2NhdGVDb21t
aXR0CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpPU0FsbG9jYXRvcjsKLQotI2Vu
ZGlmIC8vIE9TQWxsb2NhdG9yX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yUG9z
aXguY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yUG9zaXguY3Bw
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9PU0FsbG9jYXRvclBvc2l4LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjQsMTQgKzI0LDE0IEBACiAgKi8KIAogI2luY2x1ZGUgImNv
bmZpZy5oIgotI2luY2x1ZGUgIk9TQWxsb2NhdG9yLmgiCisjaW5jbHVkZSA8d3RmL09TQWxsb2Nh
dG9yLmg+CiAKICNpZiBPUyhVTklYKQogCi0jaW5jbHVkZSAiUGFnZUFsbG9jYXRpb24uaCIKICNp
bmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPHN5cy9tbWFuLmg+CiAjaW5jbHVkZSA8d3RmL0Fz
c2VydGlvbnMuaD4KKyNpbmNsdWRlIDx3dGYvUGFnZUFsbG9jYXRpb24uaD4KIAogbmFtZXNwYWNl
IFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yV2luLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9PU0FsbG9jYXRvcldpbi5jcHAJKHJldmlzaW9uIDIzNzA3
MCkKKysrIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yV2luLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMjQsMTIgKzI0LDEyIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUg
Ik9TQWxsb2NhdG9yLmgiCisjaW5jbHVkZSA8d3RmL09TQWxsb2NhdG9yLmg+CiAKICNpZiBPUyhX
SU5ET1dTKQogCi0jaW5jbHVkZSAid2luZG93cy5oIgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25z
Lmg+CisjaW5jbHVkZSA8d2luZG93cy5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291
cmNlL1dURi93dGYvT1NSYW5kb21Tb3VyY2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL09TUmFuZG9tU291cmNlLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93
dGYvT1NSYW5kb21Tb3VyY2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAg
Ki8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk9TUmFuZG9tU291cmNlLmgiCisj
aW5jbHVkZSA8d3RmL09TUmFuZG9tU291cmNlLmg+CiAKICNpbmNsdWRlIDxtdXRleD4KICNpbmNs
dWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL09TUmFuZG9t
U291cmNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvT1NSYW5kb21Tb3VyY2UuaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvT1NSYW5kb21Tb3VyY2UuaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBXVEZfT1NSYW5kb21Tb3VyY2VfaAotI2RlZmluZSBXVEZfT1NSYW5kb21Tb3VyY2VfaAor
I3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC0zNCw1ICszMywzIEBAIG5hbWVz
cGFjZSBXVEYgewogLy8gY2FsbGluZyBjcnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlciBvciBj
cnlwdG9ncmFwaGljYWxseVJhbmRvbVZhbHVlcy4KIHZvaWQgY3J5cHRvZ3JhcGhpY2FsbHlSYW5k
b21WYWx1ZXNGcm9tT1ModW5zaWduZWQgY2hhciogYnVmZmVyLCBzaXplX3QgbGVuZ3RoKTsKIH0K
LQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9PYmpjUnVudGltZUV4dHJhcy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL09iamNSdW50aW1lRXh0cmFzLmgJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL09iamNSdW50aW1lRXh0cmFzLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIyLDggKzIyLDcgQEAKICAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX09iamNSdW50
aW1lRXh0cmFzX2gKLSNkZWZpbmUgV1RGX09iamNSdW50aW1lRXh0cmFzX2gKKyNwcmFnbWEgb25j
ZQogCiAvLyBGSVhNRTogVGhpcyBmaWxlJ3MgbmFtZSBhbmQgZnVuY3Rpb24gbmFtZXMgcmVmZXIg
dG8gT2JqZWN0aXZlLUMgYXMgT2JqYyB3aXRoIGEgbG93ZXJjYXNlIEMsCiAvLyBidXQgaXQgc2hv
dWxkIGJlIE9iakMgd2l0aCBhbiB1cHBlcmNhc2UgQy4KQEAgLTQ1LDUgKzQ0LDMgQEAgaW5saW5l
IFJldHVyblR5cGUgd3RmQ2FsbElNUChJTVAgaW1wbGVtZQogfQogCiAjZW5kaWYgLy8gX19jcGx1
c3BsdXMKLQotI2VuZGlmIC8vIFdURl9PYmpjUnVudGltZUV4dHJhc19oCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9PcmRlck1ha2VyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvT3JkZXJN
YWtlci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9PcmRlck1ha2VyLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9PcmRlck1ha2VyX2gKLSNkZWZpbmUgV1RG
X09yZGVyTWFrZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQmFnLmg+CiAjaW5j
bHVkZSA8d3RmL0hhc2hNYXAuaD4KQEAgLTEzOCw2ICsxMzcsMyBAQCBwcml2YXRlOgogfSAvLyBu
YW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6T3JkZXJNYWtlcjsKLQotI2VuZGlmIC8vIFdURl9P
cmRlck1ha2VyX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUGFja2VkSW50VmVjdG9yLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGFja2VkSW50VmVjdG9yLmgJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1BhY2tlZEludFZlY3Rvci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFBhY2tl
ZEludFZlY3Rvcl9oCi0jZGVmaW5lIFBhY2tlZEludFZlY3Rvcl9oCisjcHJhZ21hIG9uY2UKIAog
I2luY2x1ZGUgPHd0Zi9CaXRWZWN0b3IuaD4KIApAQCAtMTIyLDYgKzEyMSwzIEBAIHByaXZhdGU6
CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpQYWNrZWRJbnRWZWN0b3I7Ci0KLSNl
bmRpZiAvLyBQYWNrZWRJbnRWZWN0b3JfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QYWdlQWxs
b2NhdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhZ2VBbGxvY2F0aW9uLmgJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1BhZ2VBbGxvY2F0aW9uLmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgUGFnZUFsbG9jYXRpb25faAotI2RlZmluZSBQYWdlQWxsb2NhdGlvbl9oCisjcHJhZ21h
IG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL09TQWxs
b2NhdG9yLmg+CkBAIC0xMTQsNSArMTEzLDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdU
RgogCiB1c2luZyBXVEY6OlBhZ2VBbGxvY2F0aW9uOwotCi0jZW5kaWYgLy8gUGFnZUFsbG9jYXRp
b25faApJbmRleDogU291cmNlL1dURi93dGYvUGFnZUJsb2NrLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9QYWdlQmxvY2suY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2Uv
V1RGL3d0Zi9QYWdlQmxvY2suY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAg
Ki8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBhZ2VCbG9jay5oIgorI2luY2x1
ZGUgPHd0Zi9QYWdlQmxvY2suaD4KIAogI2lmIE9TKFVOSVgpCiAjaW5jbHVkZSA8dW5pc3RkLmg+
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QYWdlQmxvY2suaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9QYWdlQmxvY2suaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYv
UGFnZUJsb2NrLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFBhZ2VCbG9ja19oCi0jZGVm
aW5lIFBhZ2VCbG9ja19oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTgz
LDUgKzgyLDMgQEAgaW5saW5lIFBhZ2VCbG9jazo6UGFnZUJsb2NrKHZvaWQqIGJhc2UsIAogdXNp
bmcgV1RGOjpwYWdlU2l6ZTsKIHVzaW5nIFdURjo6aXNQYWdlQWxpZ25lZDsKIHVzaW5nIFdURjo6
aXNQb3dlck9mVHdvOwotCi0jZW5kaWYgLy8gUGFnZUJsb2NrX2gKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL1BhZ2VSZXNlcnZhdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhZ2VS
ZXNlcnZhdGlvbi5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9QYWdlUmVz
ZXJ2YXRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCiAgKi8KIAotI2lmbmRlZiBQYWdlUmVzZXJ2YXRpb25faAotI2RlZmluZSBQYWdlUmVzZXJ2
YXRpb25faAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvUGFnZUFsbG9jYXRpb24uaD4K
IApAQCAtMTQ0LDUgKzE0MywzIEBAIHByaXZhdGU6CiB9CiAKIHVzaW5nIFdURjo6UGFnZVJlc2Vy
dmF0aW9uOwotCi0jZW5kaWYgLy8gUGFnZVJlc2VydmF0aW9uX2gKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL1BhcmFsbGVsSGVscGVyUG9vbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
UGFyYWxsZWxIZWxwZXJQb29sLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93
dGYvUGFyYWxsZWxIZWxwZXJQb29sLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsMTEgKzI0LDEx
IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBhcmFsbGVsSGVscGVy
UG9vbC5oIgorI2luY2x1ZGUgPHd0Zi9QYXJhbGxlbEhlbHBlclBvb2wuaD4KIAotI2luY2x1ZGUg
IkF1dG9tYXRpY1RocmVhZC5oIgotI2luY2x1ZGUgIkRhdGFMb2cuaCIKLSNpbmNsdWRlICJTdHJp
bmdQcmludFN0cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi9BdXRvbWF0aWNUaHJlYWQuaD4KKyNpbmNs
dWRlIDx3dGYvRGF0YUxvZy5oPgorI2luY2x1ZGUgPHd0Zi9TdHJpbmdQcmludFN0cmVhbS5oPgog
CiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvUGFyYWxsZWxIZWxwZXJQ
b29sLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxIZWxwZXJQb29sLmgJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1BhcmFsbGVsSGVscGVyUG9vbC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwog
Ci0jaWZuZGVmIFBhcmFsbGVsSGVscGVyUG9vbF9oCi0jZGVmaW5lIFBhcmFsbGVsSGVscGVyUG9v
bF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Cb3guaD4KICNpbmNsdWRlIDx3dGYv
Q29uZGl0aW9uLmg+CkBAIC0yMTcsNiArMjE2LDMgQEAgcHJpdmF0ZToKIAogdXNpbmcgV1RGOjpQ
YXJhbGxlbEhlbHBlckNsaWVudDsKIHVzaW5nIFdURjo6UGFyYWxsZWxIZWxwZXJQb29sOwotCi0j
ZW5kaWYgLy8gUGFyYWxsZWxIZWxwZXJQb29sX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUGFy
YWxsZWxKb2JzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxKb2JzLmgJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1BhcmFsbGVsSm9icy5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5k
ZWYgUGFyYWxsZWxKb2JzX2gKLSNkZWZpbmUgUGFyYWxsZWxKb2JzX2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CkBA
IC05OSw1ICs5OCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RG
OjpQYXJhbGxlbEpvYnM7Ci0KLSNlbmRpZiAvLyBQYXJhbGxlbEpvYnNfaApJbmRleDogU291cmNl
L1dURi93dGYvUGFyYWxsZWxKb2JzR2VuZXJpYy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvUGFyYWxsZWxKb2JzR2VuZXJpYy5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL1BhcmFsbGVsSm9ic0dlbmVyaWMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOSw4
ICsyOSw4IEBACiAKICNpZiBFTkFCTEUoVEhSRUFESU5HX0dFTkVSSUMpCiAKLSNpbmNsdWRlICJQ
YXJhbGxlbEpvYnMuaCIKICNpbmNsdWRlIDx3dGYvTnVtYmVyT2ZDb3Jlcy5oPgorI2luY2x1ZGUg
PHd0Zi9QYXJhbGxlbEpvYnMuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL1BhcmFsbGVsSm9ic0xpYmRpc3BhdGNoLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvUGFyYWxsZWxKb2JzTGliZGlzcGF0Y2guaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291
cmNlL1dURi93dGYvUGFyYWxsZWxKb2JzTGliZGlzcGF0Y2guaAkod29ya2luZyBjb3B5KQpAQCAt
MjUsOCArMjUsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFBhcmFsbGVsSm9i
c0xpYmRpc3BhdGNoX2gKLSNkZWZpbmUgUGFyYWxsZWxKb2JzTGliZGlzcGF0Y2hfaAorI3ByYWdt
YSBvbmNlCiAKICNpZiBFTkFCTEUoVEhSRUFESU5HX0xJQkRJU1BBVENIKQogCkBAIC02OSw1ICs2
OCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogI2VuZGlmIC8vIEVOQUJMRShU
SFJFQURJTkdfTElCRElTUEFUQ0gpCi0KLSNlbmRpZiAvLyBQYXJhbGxlbEpvYnNMaWJkaXNwYXRj
aF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QYXJhbGxlbFZlY3Rvckl0ZXJhdG9yLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxWZWN0b3JJdGVyYXRvci5oCShyZXZpc2lv
biAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9QYXJhbGxlbFZlY3Rvckl0ZXJhdG9yLmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgUGFyYWxsZWxWZWN0b3JJdGVyYXRvcl9oCi0jZGVmaW5lIFBhcmFsbGVsVmVjdG9ySXRl
cmF0b3JfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgogI2lu
Y2x1ZGUgPHd0Zi9Mb2NrLmg+CkBAIC03Nyw2ICs3NiwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVz
cGFjZSBXVEYKIAogdXNpbmcgV1RGOjpQYXJhbGxlbFZlY3Rvckl0ZXJhdG9yOwotCi0jZW5kaWYg
Ly8gUGFyYWxsZWxWZWN0b3JJdGVyYXRvcl9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1Bhcmtp
bmdMb3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhcmtpbmdMb3QuY3BwCShy
ZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9QYXJraW5nTG90LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjQsMTkgKzI0LDE5IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgot
I2luY2x1ZGUgIlBhcmtpbmdMb3QuaCIKKyNpbmNsdWRlIDx3dGYvUGFya2luZ0xvdC5oPgogCi0j
aW5jbHVkZSAiRGF0YUxvZy5oIgotI2luY2x1ZGUgIkhhc2hGdW5jdGlvbnMuaCIKLSNpbmNsdWRl
ICJTdHJpbmdQcmludFN0cmVhbS5oIgotI2luY2x1ZGUgIlRocmVhZFNwZWNpZmljLmgiCi0jaW5j
bHVkZSAiVGhyZWFkaW5nLmgiCi0jaW5jbHVkZSAiVmVjdG9yLmgiCi0jaW5jbHVkZSAiV2Vha1Jh
bmRvbS5oIgotI2luY2x1ZGUgIldvcmRMb2NrLmgiCiAjaW5jbHVkZSA8Y29uZGl0aW9uX3Zhcmlh
YmxlPgogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHRocmVhZD4KKyNpbmNsdWRlIDx3dGYv
RGF0YUxvZy5oPgorI2luY2x1ZGUgPHd0Zi9IYXNoRnVuY3Rpb25zLmg+CisjaW5jbHVkZSA8d3Rm
L1N0cmluZ1ByaW50U3RyZWFtLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZFNwZWNpZmljLmg+Cisj
aW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNs
dWRlIDx3dGYvV2Vha1JhbmRvbS5oPgorI2luY2x1ZGUgPHd0Zi9Xb3JkTG9jay5oPgogCiBuYW1l
c3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvUGFya2luZ0xvdC5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhcmtpbmdMb3QuaAkocmV2aXNpb24gMjM3MDcwKQorKysg
U291cmNlL1dURi93dGYvUGFya2luZ0xvdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9QYXJraW5nTG90X2gKLSNk
ZWZpbmUgV1RGX1BhcmtpbmdMb3RfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQXRv
bWljcy5oPgogI2luY2x1ZGUgPHd0Zi9TY29wZWRMYW1iZGEuaD4KQEAgLTE3Nyw2ICsxNzYsMyBA
QCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6UGFya2luZ0xvdDsK
LQotI2VuZGlmIC8vIFdURl9QYXJraW5nTG90X2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUGxh
dGZvcm0uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCShyZXZpc2lv
biAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNSw4ICsyNSw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX1BsYXRm
b3JtX2gKLSNkZWZpbmUgV1RGX1BsYXRmb3JtX2gKKyNwcmFnbWEgb25jZQogCiAvKiBJbmNsdWRl
IGNvbXBpbGVyIHNwZWNpZmljIG1hY3JvcyAqLwogI2luY2x1ZGUgPHd0Zi9Db21waWxlci5oPgpA
QCAtMTM3MCw1ICsxMzY5LDMgQEAKICNpZiBQTEFURk9STShDT0NPQSkgJiYgVVNFKENBKSAmJiAh
UExBVEZPUk0oSU9TX0ZBTUlMWV9TSU1VTEFUT1IpCiAjZGVmaW5lIFVTRV9JT1NVUkZBQ0VfQ0FO
VkFTX0JBQ0tJTkdfU1RPUkUgMQogI2VuZGlmCi0KLSNlbmRpZiAvKiBXVEZfUGxhdGZvcm1faCAq
LwpJbmRleDogU291cmNlL1dURi93dGYvUG9pbnRlckNvbXBhcmlzb24uaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9Qb2ludGVyQ29tcGFyaXNvbi5oCShyZXZpc2lvbiAyMzcwNzApCisr
KyBTb3VyY2UvV1RGL3d0Zi9Qb2ludGVyQ29tcGFyaXNvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0y
Myw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAot
I2lmbmRlZiBXVEZfUG9pbnRlckNvbXBhcmlzb25faAotI2RlZmluZSBXVEZfUG9pbnRlckNvbXBh
cmlzb25faAorI3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC0zNiw1ICszNSwz
IEBAIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IGlubGluZSBib29sIGFyZVBvaW4KIH0gLy8gbmFtZXNw
YWNlIFdURgogCiB1c2luZyBXVEY6OmFyZVBvaW50aW5nVG9FcXVhbERhdGE7Ci0KLSNlbmRpZiAv
LyBXVEZfUG9pbnRlckNvbXBhcmlzb25faApJbmRleDogU291cmNlL1dURi93dGYvUG9pc29uZWQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BvaXNvbmVkLmNwcAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvUG9pc29uZWQuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBv
aXNvbmVkLmgiCisjaW5jbHVkZSA8d3RmL1BvaXNvbmVkLmg+CiAKICNpbmNsdWRlIDx3dGYvQ3J5
cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1iZXIuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvUHJp
bnRTdHJlYW0uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1ByaW50U3RyZWFtLmNw
cAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvUHJpbnRTdHJlYW0uY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIlByaW50U3RyZWFtLmgiCisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+
CiAKICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL1ByaW50U3RyZWFtLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvUHJpbnRTdHJlYW0uaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYv
UHJpbnRTdHJlYW0uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4gCiAgKi8KIAotI2lmbmRlZiBQcmludFN0cmVhbV9oCi0jZGVmaW5lIFByaW50U3RyZWFt
X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8bWVtb3J5PgogI2luY2x1ZGUgPHN0ZGFyZy5o
PgpAQCAtMzQ2LDYgKzM0NSwzIEBAIHVzaW5nIFdURjo6aWdub3JpbmdDb250ZXh0OwogdXNpbmcg
V1RGOjppbkNvbnRleHQ7CiB1c2luZyBXVEY6OnBvaW50ZXJEdW1wOwogdXNpbmcgV1RGOjpwb2lu
dGVyRHVtcEluQ29udGV4dDsKLQotI2VuZGlmIC8vIFByaW50U3RyZWFtX2gKLQpJbmRleDogU291
cmNlL1dURi93dGYvUHJvY2Vzc0lELmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUHJv
Y2Vzc0lELmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1Byb2Nlc3NJRC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwog
Ci0jaWZuZGVmIFByb2Nlc3NJRF9oCi0jZGVmaW5lIFByb2Nlc3NJRF9oCisjcHJhZ21hIG9uY2UK
IAogI2lmIE9TKFVOSVgpCiAjaW5jbHVkZSA8dW5pc3RkLmg+CkBAIC01NSw2ICs1NCwzIEBAIGlu
bGluZSBQcm9jZXNzSUQgZ2V0Q3VycmVudFByb2Nlc3NJRCgpCiAKIHVzaW5nIFdURjo6Z2V0Q3Vy
cmVudFByb2Nlc3NJRDsKIHVzaW5nIFdURjo6UHJvY2Vzc0lEOwotCi0jZW5kaWYgLy8gUHJvY2Vz
c0lEX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUHJvY2Vzc1ByaXZpbGVnZS5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvUHJvY2Vzc1ByaXZpbGVnZS5jcHAJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1Byb2Nlc3NQcml2aWxlZ2UuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIlByb2Nlc3NQcml2aWxlZ2UuaCIKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc1ByaXZpbGVnZS5o
PgogCiAjaW5jbHVkZSA8d3RmL09wdGlvblNldC5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9S
QU1TaXplLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SQU1TaXplLmNwcAkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvUkFNU2l6ZS5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTI0LDEwICsyNCwxMCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJSQU1TaXplLmgiCisjaW5jbHVkZSA8d3RmL1JBTVNpemUuaD4KIAotI2luY2x1ZGUgIlN0
ZExpYkV4dHJhcy5oIgogI2luY2x1ZGUgPG11dGV4PgorI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRy
YXMuaD4KIAogI2lmIE9TKFdJTkRPV1MpCiAjaW5jbHVkZSA8d2luZG93cy5oPgpJbmRleDogU291
cmNlL1dURi93dGYvUkFNU2l6ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JBTVNp
emUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvUkFNU2l6ZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCiAgKi8KIAotI2lmbmRlZiBSQU1TaXplX2gKLSNkZWZpbmUgUkFNU2l6ZV9oCisjcHJh
Z21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTMzLDUgKzMyLDMgQEAgV1RGX0VYUE9S
VF9QUklWQVRFIHNpemVfdCByYW1TaXplKCk7CiB9CiAKIHVzaW5nIFdURjo6cmFtU2l6ZTsKLQot
I2VuZGlmIC8vIFJBTVNpemVfaApJbmRleDogU291cmNlL1dURi93dGYvUmFuZG9tRGV2aWNlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SYW5kb21EZXZpY2UuY3BwCShyZXZpc2lv
biAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9SYW5kb21EZXZpY2UuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNSw3ICsyNSw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIlJhbmRvbURldmljZS5oIgorI2luY2x1ZGUgPHd0Zi9SYW5kb21EZXZpY2UuaD4KIAogI2lu
Y2x1ZGUgPHN0ZGludC5oPgogI2luY2x1ZGUgPHN0ZGxpYi5oPgpAQCAtNDIsNyArNDIsNyBAQAog
I2VuZGlmCiAKICNpZiBPUyhEQVJXSU4pCi0jaW5jbHVkZSAiQ29tbW9uQ3J5cHRvU1BJLmgiCisj
aW5jbHVkZSA8d3RmL3NwaS9kYXJ3aW4vQ29tbW9uQ3J5cHRvU1BJLmg+CiAjZW5kaWYKIAogI2lm
IE9TKEZVQ0hTSUEpCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SYW5kb21OdW1iZXIuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlci5jcHAJKHJldmlzaW9uIDIzNzA3
MCkKKysrIFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI2LDE1ICsyNiwxNCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJS
YW5kb21OdW1iZXIuaCIKLQotI2luY2x1ZGUgIkNyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVy
LmgiCi0jaW5jbHVkZSAiUmFuZG9tTnVtYmVyU2VlZC5oIgorI2luY2x1ZGUgPHd0Zi9SYW5kb21O
dW1iZXIuaD4KIAogI2luY2x1ZGUgPGxpbWl0cz4KICNpbmNsdWRlIDxsaW1pdHMuaD4KICNpbmNs
dWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDx3dGYvQ3J5cHRv
Z3JhcGhpY2FsbHlSYW5kb21OdW1iZXIuaD4KKyNpbmNsdWRlIDx3dGYvUmFuZG9tTnVtYmVyU2Vl
ZC5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvUmFuZG9tTnVt
YmVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUmFuZG9tTnVtYmVyLmgJKHJldmlz
aW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlci5oCSh3b3JraW5nIGNv
cHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdU
Rl9SYW5kb21OdW1iZXJfaAotI2RlZmluZSBXVEZfUmFuZG9tTnVtYmVyX2gKKyNwcmFnbWEgb25j
ZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMzUsNSArMzQsMyBAQCBXVEZfRVhQT1JUX1BSSVZB
VEUgZG91YmxlIHJhbmRvbU51bWJlcigpCiB9CiAKIHVzaW5nIFdURjo6cmFuZG9tTnVtYmVyOwot
Ci0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlclNlZWQuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SYW5kb21OdW1iZXJTZWVkLmgJKHJldmlzaW9uIDIzNzA3
MCkKKysrIFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlclNlZWQuaAkod29ya2luZyBjb3B5KQpA
QCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfUmFu
ZG9tTnVtYmVyU2VlZF9oCi0jZGVmaW5lIFdURl9SYW5kb21OdW1iZXJTZWVkX2gKKyNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8dGltZS5oPgpAQCAtNTYsNSAr
NTUsMyBAQCBpbmxpbmUgdm9pZCBpbml0aWFsaXplUmFuZG9tTnVtYmVyR2VuZXJhCiB9CiAKIH0K
LQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SYW5nZVNldC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL1JhbmdlU2V0LmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9X
VEYvd3RmL1JhbmdlU2V0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgV1RGX1JhbmdlU2V0X2gKLSNkZWZpbmUgV1RGX1Jh
bmdlU2V0X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0xpc3REdW1wLmg+CiAjaW5j
bHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KQEAgLTIxMiw2ICsyMTEsMyBAQCBwcml2YXRlOgogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6UmFuZ2VTZXQ7Ci0KLSNlbmRpZiAvLyBXVEZf
UmFuZ2VTZXRfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SYXdQb2ludGVyLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvUmF3UG9pbnRlci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi9SYXdQb2ludGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcg
QEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgUmF3UG9pbnRlcl9oCi0jZGVmaW5l
IFJhd1BvaW50ZXJfaAorI3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC01NCw1
ICs1MywzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpSYXdQ
b2ludGVyOwotCi0jZW5kaWYgLy8gUmF3UG9pbnRlcl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9S
ZWFkV3JpdGVMb2NrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SZWFkV3JpdGVM
b2NrLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvUmVhZFdyaXRlTG9j
ay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAi
Y29uZmlnLmgiCi0jaW5jbHVkZSAiUmVhZFdyaXRlTG9jay5oIgorI2luY2x1ZGUgPHd0Zi9SZWFk
V3JpdGVMb2NrLmg+CiAKICNpbmNsdWRlIDx3dGYvTG9ja2VyLmg+CiAKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL1JlZEJsYWNrVHJlZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZEJs
YWNrVHJlZS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9SZWRCbGFja1Ry
ZWUuaAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwog
Ci0jaWZuZGVmIFJlZEJsYWNrVHJlZV9oCi0jZGVmaW5lIFJlZEJsYWNrVHJlZV9oCisjcHJhZ21h
IG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL05vbmNv
cHlhYmxlLmg+CkBAIC01NjksNiArNTY4LDMgQEAgcHJpdmF0ZToKIH07CiAKIH0KLQotI2VuZGlm
Ci0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JlZi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL1JlZi5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9SZWYuaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX1JlZl9oCi0jZGVmaW5lIFdURl9SZWZfaAorI3By
YWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9E
dW1iUHRyVHJhaXRzLmg+CkBAIC0yODAsNSArMjc5LDMgQEAgdXNpbmcgV1RGOjpSZWY7CiB1c2lu
ZyBXVEY6OmFkb3B0UmVmOwogdXNpbmcgV1RGOjptYWtlUmVmOwogdXNpbmcgV1RGOjpzdGF0aWNf
cmVmZXJlbmNlX2Nhc3Q7Ci0KLSNlbmRpZiAvLyBXVEZfUmVmX2gKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL1JlZkNvdW50ZWRBcnJheS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZkNv
dW50ZWRBcnJheS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9SZWZDb3Vu
dGVkQXJyYXkuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCiAgKi8KIAotI2lmbmRlZiBSZWZDb3VudGVkQXJyYXlfaAotI2RlZmluZSBSZWZDb3VudGVk
QXJyYXlfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRHVtYlB0clRyYWl0cy5oPgog
I2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CkBAIC0yNDgsNiArMjQ3LDMgQEAgdXNpbmcgUG9p
c29uZWRSZWZDb3VudGVkQXJyYXkgPSBSZWZDb3VudAogCiB1c2luZyBXVEY6OlBvaXNvbmVkUmVm
Q291bnRlZEFycmF5OwogdXNpbmcgV1RGOjpSZWZDb3VudGVkQXJyYXk7Ci0KLSNlbmRpZiAvLyBS
ZWZDb3VudGVkQXJyYXlfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SZWZDb3VudGVkTGVha0Nv
dW50ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRMZWFrQ291
bnRlci5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRM
ZWFrQ291bnRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE5LDcgKzE5LDcgQEAKICAqLwogCiAj
aW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUmVmQ291bnRlZExlYWtDb3VudGVyLmgiCisj
aW5jbHVkZSA8d3RmL1JlZkNvdW50ZWRMZWFrQ291bnRlci5oPgogCiAjaW5jbHVkZSA8d3RmL0hh
c2hDb3VudGVkU2V0Lmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRMZWFrQ291
bnRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRMZWFrQ291bnRl
ci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9SZWZDb3VudGVkTGVha0Nv
dW50ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMTgsOCArMTgsNyBAQAogICoKICAqLwogIAotI2lm
bmRlZiBSZWZDb3VudGVkTGVha0NvdW50ZXJfaAotI2RlZmluZSBSZWZDb3VudGVkTGVha0NvdW50
ZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhdG9taWM+CiAjaW5jbHVkZSA8d3RmL0Fz
c2VydGlvbnMuaD4KQEAgLTQ0LDUgKzQzLDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gIC8vIG5hbWVz
cGFjZSBXVEYKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SZWZDb3VudGVyLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUmVmQ291bnRlci5oCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi9SZWZDb3VudGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDgg
KzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZu
ZGVmIFJlZkNvdW50ZXJfaAotI2RlZmluZSBSZWZDb3VudGVyX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8d3RmL0Z1bmN0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CkBA
IC0xNDYsNSArMTQ1LDMgQEAgaW5saW5lIFJlZkNvdW50ZXI8VD46On5SZWZDb3VudGVyKCkKIAog
dXNpbmcgV1RGOjpSZWZDb3VudGVyOwogdXNpbmcgV1RGOjpSZWZDb3VudGVyRXZlbnQ7Ci0KLSNl
bmRpZiAvLyBSZWZDb3VudGVyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JlZlB0ci5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZlB0ci5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi9SZWZQdHIuaAkod29ya2luZyBjb3B5KQpAQCAtMjAsOCArMjAsNyBAQAog
CiAvLyBSZWZQdHIgaXMgZG9jdW1lbnRlZCBhdCBodHRwOi8vd2Via2l0Lm9yZy9jb2RpbmcvUmVm
UHRyLmh0bWwKIAotI2lmbmRlZiBXVEZfUmVmUHRyX2gKLSNkZWZpbmUgV1RGX1JlZlB0cl9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRlIDx1dGlsaXR5PgpA
QCAtMjg0LDUgKzI4MywzIEBAIHVzaW5nIFdURjo6UmVmUHRyOwogdXNpbmcgV1RGOjphZG9wdFJl
ZjsKIHVzaW5nIFdURjo6bWFrZVJlZlB0cjsKIHVzaW5nIFdURjo6c3RhdGljX3BvaW50ZXJfY2Fz
dDsKLQotI2VuZGlmIC8vIFdURl9SZWZQdHJfaApJbmRleDogU291cmNlL1dURi93dGYvUmV0YWlu
UHRyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUmV0YWluUHRyLmgJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1JldGFpblB0ci5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgUmV0YWluUHRyX2gKLSNkZWZpbmUg
UmV0YWluUHRyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL1BsYXRmb3JtLmg+CiAK
QEAgLTM4Miw1ICszODEsMyBAQCB1c2luZyBXVEY6OmR5bmFtaWNfb2JqY19jYXN0OwogI2VuZGlm
CiAKICNlbmRpZiAvLyBVU0UoQ0YpIHx8IGRlZmluZWQoX19PQkpDX18pCi0KLSNlbmRpZiAvLyBX
VEZfUmV0YWluUHRyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1J1bkxvb3AuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1J1bkxvb3AuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi9SdW5Mb29wLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBA
QAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJSdW5Mb29wLmgiCisjaW5j
bHVkZSA8d3RmL1J1bkxvb3AuaD4KIAogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgog
I2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1J1bkxv
b3AuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SdW5Mb29wLmgJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1J1bkxvb3AuaAkod29ya2luZyBjb3B5KQpAQCAtMjUs
OCArMjUsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNp
Zm5kZWYgUnVuTG9vcF9oCi0jZGVmaW5lIFJ1bkxvb3BfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDx3dGYvQ29uZGl0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL0RlcXVlLmg+CkBAIC0yMTIsNSAr
MjExLDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlJ1bkxv
b3A7Ci0KLSNlbmRpZiAvLyBSdW5Mb29wX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BU
aW1lci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lci5oCShyZXZp
c2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9SdW5Mb29wVGltZXIuaAkod29ya2luZyBj
b3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFJ1bkxv
b3BUaW1lcl9oCi0jZGVmaW5lIFJ1bkxvb3BUaW1lcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgPHd0Zi9TY2hlZHVsZVBhaXIuaD4KICNpbmNsdWRlIDx3dGYvU2Vjb25kcy5oPgpAQCAtODAs
NSArNzksMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6UnVu
TG9vcFRpbWVyOwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lckNG
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SdW5Mb29wVGltZXJDRi5jcHAJKHJl
dmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lckNGLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMzAsOSArMzAsOSBAQAogCiAjaWYgUExBVEZPUk0oQ09DT0EpICYmIEhB
VkUoUlVOTE9PUF9USU1FUikKIAotI2luY2x1ZGUgIlJ1bkxvb3BUaW1lci5oIgorI2luY2x1ZGUg
PHd0Zi9SdW5Mb29wVGltZXIuaD4KIAotI2luY2x1ZGUgIkF1dG9kcmFpbmVkUG9vbC5oIgorI2lu
Y2x1ZGUgPHd0Zi9BdXRvZHJhaW5lZFBvb2wuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL1NIQTEuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NI
QTEuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9TSEExLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMzAsMTAgKzMwLDEwIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIlNIQTEuaCIKKyNpbmNsdWRlIDx3dGYvU0hBMS5oPgogCi0jaW5jbHVkZSAi
QXNzZXJ0aW9ucy5oIgotI2luY2x1ZGUgInRleHQvQ1N0cmluZy5oIgorI2luY2x1ZGUgPHd0Zi9B
c3NlcnRpb25zLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogCiBuYW1lc3BhY2Ug
V1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvU0hBMS5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL1NIQTEuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU0hB
MS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKLSNpZm5kZWYgV1RGX1NIQTFfaAotI2RlZmluZSBXVEZfU0hBMV9oCisjcHJhZ21hIG9uY2UK
IAogI2luY2x1ZGUgPGFycmF5PgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTg4LDUgKzg3
LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlNIQTE7Ci0K
LSNlbmRpZiAvLyBXVEZfU0hBMV9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TYXR1cmF0ZWRBcml0
aG1ldGljLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU2F0dXJhdGVkQXJpdGhtZXRp
Yy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9TYXR1cmF0ZWRBcml0aG1l
dGljLmgJKHdvcmtpbmcgY29weSkKQEAgLTI5LDEzICsyOSwxMiBAQAogICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIFNhdHVyYXRlZEFyaXRobWV0aWNfaAotI2RlZmluZSBTYXR1cmF0ZWRB
cml0aG1ldGljX2gKKyNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiQ29tcGlsZXIuaCIKICNpbmNs
dWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+Cisj
aW5jbHVkZSA8d3RmL0NvbXBpbGVyLmg+CiAKIGlubGluZSBib29sIHNpZ25lZEFkZE92ZXJmbG93
cyhpbnQzMl90IGEsIGludDMyX3QgYiwgaW50MzJfdCYgcmVzdWx0KQogewpAQCAtMTAwLDUgKzk5
LDMgQEAgaW5saW5lIGludDMyX3Qgc2F0dXJhdGVkU3VidHJhY3Rpb24oaW50MwogI2VuZGlmCiAg
ICAgcmV0dXJuIHJlc3VsdDsKIH0KLQotI2VuZGlmIC8vIFNhdHVyYXRlZEFyaXRobWV0aWNfaApJ
bmRleDogU291cmNlL1dURi93dGYvU2NoZWR1bGVQYWlyLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvU2NoZWR1bGVQYWlyLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYv
d3RmL1NjaGVkdWxlUGFpci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw3IEBACiAgKiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgogICovCiAKLSNpZm5kZWYgU2NoZWR1bGVQYWlyX2gKLSNkZWZpbmUgU2NoZWR1bGVQ
YWlyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRl
IDx3dGYvUmV0YWluUHRyLmg+CkBAIC04OSw1ICs4OCwzIEBAIHR5cGVkZWYgSGFzaFNldDxSZWZQ
dHI8U2NoZWR1bGVQYWlyPiwgU2MKIAogdXNpbmcgV1RGOjpTY2hlZHVsZVBhaXI7CiB1c2luZyBX
VEY6OlNjaGVkdWxlUGFpckhhc2hTZXQ7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYv
U2NoZWR1bGVQYWlyQ0YuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NjaGVkdWxl
UGFpckNGLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU2NoZWR1bGVQ
YWlyQ0YuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw3ICsyNyw3IEBACiAgKi8KIAogI2luY2x1
ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlNjaGVkdWxlUGFpci5oIgorI2luY2x1ZGUgPHd0Zi9T
Y2hlZHVsZVBhaXIuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L1NjaGVkdWxlUGFpck1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TY2hlZHVs
ZVBhaXJNYWMubW0JKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1NjaGVkdWxl
UGFpck1hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtMjcsNyArMjcsNyBAQAogICovCiAKICNpbmNs
dWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJTY2hlZHVsZVBhaXIuaCIKKyNpbmNsdWRlIDx3dGYv
U2NoZWR1bGVQYWlyLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9TY29wZWRMYW1iZGEuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TY29wZWRMYW1i
ZGEuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU2NvcGVkTGFtYmRhLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAK
LSNpZm5kZWYgU2NvcGVkTGFtYmRhX2gKLSNkZWZpbmUgU2NvcGVkTGFtYmRhX2gKKyNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8d3RmL0ZvcmJpZEhlYXBBbGxvY2F0aW9uLmg+CiAKQEAgLTE5NSw2
ICsxOTQsMyBAQCBTY29wZWRMYW1iZGFSZWZGdW5jdG9yPEZ1bmN0aW9uVHlwZSwgRnVuCiB1c2lu
ZyBXVEY6OlNjb3BlZExhbWJkYTsKIHVzaW5nIFdURjo6c2NvcGVkTGFtYmRhOwogdXNpbmcgV1RG
OjpzY29wZWRMYW1iZGFSZWY7Ci0KLSNlbmRpZiAvLyBTY29wZWRMYW1iZGFfaAotCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9TZWNvbmRzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9T
ZWNvbmRzLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU2Vjb25kcy5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDE0ICsyNCwxNCBAQAogICovCiAKICNpbmNsdWRlICJj
b25maWcuaCIKLSNpbmNsdWRlICJTZWNvbmRzLmgiCisjaW5jbHVkZSA8d3RmL1NlY29uZHMuaD4K
IAotI2luY2x1ZGUgIkNvbmRpdGlvbi5oIgotI2luY2x1ZGUgIkxvY2suaCIKLSNpbmNsdWRlICJN
b25vdG9uaWNUaW1lLmgiCi0jaW5jbHVkZSAiUHJpbnRTdHJlYW0uaCIKLSNpbmNsdWRlICJUaW1l
V2l0aER5bmFtaWNDbG9ja1R5cGUuaCIKLSNpbmNsdWRlICJXYWxsVGltZS5oIgorI2luY2x1ZGUg
PHd0Zi9Db25kaXRpb24uaD4KKyNpbmNsdWRlIDx3dGYvTG9jay5oPgorI2luY2x1ZGUgPHd0Zi9N
b25vdG9uaWNUaW1lLmg+CisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5jbHVkZSA8
d3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oPgorI2luY2x1ZGUgPHd0Zi9XYWxsVGltZS5o
PgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvU2Vjb25kcy5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NlY29uZHMuaAkocmV2aXNpb24gMjM3MDcwKQor
KysgU291cmNlL1dURi93dGYvU2Vjb25kcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9TZWNvbmRzX2gKLSNkZWZp
bmUgV1RGX1NlY29uZHNfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJh
cy5oPgogI2luY2x1ZGUgPHd0Zi9PcHRpb25hbC5oPgpAQCAtMzU2LDUgKzM1NSwzIEBAIGlubGlu
ZSBib29sIGlzZmluaXRlKFdURjo6U2Vjb25kcyBzZWNvbmQKIAogdXNpbmcgbmFtZXNwYWNlIFdU
Rjo6c2Vjb25kc19saXRlcmFsczsKIHVzaW5nIFdURjo6U2Vjb25kczsKLQotI2VuZGlmIC8vIFdU
Rl9TZWNvbmRzX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1NlZ21lbnRlZFZlY3Rvci5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NlZ21lbnRlZFZlY3Rvci5oCShyZXZpc2lvbiAyMzcw
NzApCisrKyBTb3VyY2UvV1RGL3d0Zi9TZWdtZW50ZWRWZWN0b3IuaAkod29ya2luZyBjb3B5KQpA
QCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFNlZ21lbnRlZFZl
Y3Rvcl9oCi0jZGVmaW5lIFNlZ21lbnRlZFZlY3Rvcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTI3Myw1
ICsyNzIsMyBAQCBuYW1lc3BhY2UgV1RGIHsKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBX
VEY6OlNlZ21lbnRlZFZlY3RvcjsKLQotI2VuZGlmIC8vIFNlZ21lbnRlZFZlY3Rvcl9oCkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi9TZW50aW5lbExpbmtlZExpc3QuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9TZW50aW5lbExpbmtlZExpc3QuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291
cmNlL1dURi93dGYvU2VudGluZWxMaW5rZWRMaXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTM0LDgg
KzM0LDcgQEAKIC8vICAgICAgICB2b2lkIHNldE5leHQoTm9kZSopOwogLy8gICAgICAgIE5vZGUq
IG5leHQoKTsKIAotI2lmbmRlZiBTZW50aW5lbExpbmtlZExpc3RfaAotI2RlZmluZSBTZW50aW5l
bExpbmtlZExpc3RfaAorI3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC0yNzYs
NiArMjc1LDMgQEAgaW5saW5lIHZvaWQgU2VudGluZWxMaW5rZWRMaXN0PFQsIFJhd05vZAogCiB1
c2luZyBXVEY6OkJhc2ljUmF3U2VudGluZWxOb2RlOwogdXNpbmcgV1RGOjpTZW50aW5lbExpbmtl
ZExpc3Q7Ci0KLSNlbmRpZgotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TaGFyZWRUYXNrLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU2hhcmVkVGFzay5oCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi9TaGFyZWRUYXNrLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDgg
KzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU2hhcmVkVGFza19oCi0j
ZGVmaW5lIFNoYXJlZFRhc2tfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvUmVmLmg+
CiAjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+CkBAIC0xMjgsNiArMTI3LDMg
QEAgUmVmPFNoYXJlZFRhc2s8RnVuY3Rpb25UeXBlPj4gY3JlYXRlU2hhcgogdXNpbmcgV1RGOjpj
cmVhdGVTaGFyZWRUYXNrOwogdXNpbmcgV1RGOjpTaGFyZWRUYXNrOwogdXNpbmcgV1RGOjpTaGFy
ZWRUYXNrRnVuY3RvcjsKLQotI2VuZGlmIC8vIFNoYXJlZFRhc2tfaAotCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9TaW1wbGVTdGF0cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NpbXBs
ZVN0YXRzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1NpbXBsZVN0YXRz
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICov
CiAKLSNpZm5kZWYgU2ltcGxlU3RhdHNfaAotI2RlZmluZSBTaW1wbGVTdGF0c19oCisjcHJhZ21h
IG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAjaW5jbHVkZSA8d3RmL1N0ZExp
YkV4dHJhcy5oPgpAQCAtMTEyLDYgKzExMSwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBX
VEYKIAogdXNpbmcgV1RGOjpTaW1wbGVTdGF0czsKLQotI2VuZGlmIC8vIFNpbXBsZVN0YXRzX2gK
LQpJbmRleDogU291cmNlL1dURi93dGYvU2luZ2xlUm9vdEdyYXBoLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvU2luZ2xlUm9vdEdyYXBoLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNv
dXJjZS9XVEYvd3RmL1NpbmdsZVJvb3RHcmFwaC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsy
Myw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9TaW5nbGVSb290R3Jh
cGhfaAotI2RlZmluZSBXVEZfU2luZ2xlUm9vdEdyYXBoX2gKKyNwcmFnbWEgb25jZQogCiAjaW5j
bHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KICNpbmNsdWRlIDx3dGYvR3JhcGhOb2RlV29ya2xpc3Qu
aD4KQEAgLTMwNSw1ICszMDQsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVz
aW5nIFdURjo6U2luZ2xlUm9vdEdyYXBoOwotCi0jZW5kaWYgLy8gV1RGX1NpbmdsZVJvb3RHcmFw
aF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TaW5nbHlMaW5rZWRMaXN0LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvU2luZ2x5TGlua2VkTGlzdC5oCShyZXZpc2lvbiAyMzcwNzApCisr
KyBTb3VyY2UvV1RGL3d0Zi9TaW5nbHlMaW5rZWRMaXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIz
LDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0j
aWZuZGVmIFNpbmdseUxpbmtlZExpc3RfaAotI2RlZmluZSBTaW5nbHlMaW5rZWRMaXN0X2gKKyNw
cmFnbWEgb25jZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtNjgsNSArNjcsMyBAQCB0ZW1wbGF0
ZSA8dHlwZW5hbWUgTm9kZT4gaW5saW5lIE5vZGUqIFNpCiB9CiAKIHVzaW5nIFdURjo6U2luZ2x5
TGlua2VkTGlzdDsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TaXhDaGFyYWN0ZXJI
YXNoLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TaXhDaGFyYWN0ZXJIYXNoLmNw
cAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU2l4Q2hhcmFjdGVySGFzaC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29u
ZmlnLmgiCi0jaW5jbHVkZSAiU2l4Q2hhcmFjdGVySGFzaC5oIgorI2luY2x1ZGUgPHd0Zi9TaXhD
aGFyYWN0ZXJIYXNoLmg+CiAKICNpbmNsdWRlIDx3dGYvQVNDSUlDVHlwZS5oPgogCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9TaXhDaGFyYWN0ZXJIYXNoLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvU2l4Q2hhcmFjdGVySGFzaC5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RG
L3d0Zi9TaXhDaGFyYWN0ZXJIYXNoLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAK
ICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU2l4Q2hhcmFjdGVySGFzaF9oCi0jZGVm
aW5lIFNpeENoYXJhY3Rlckhhc2hfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhcnJheT4K
IApAQCAtNDMsNiArNDIsMyBAQCBXVEZfRVhQT1JUX1BSSVZBVEUgc3RkOjphcnJheTxjaGFyLCA3
PiBpCiAKIHVzaW5nIFdURjo6c2l4Q2hhcmFjdGVySGFzaFN0cmluZ1RvSW50ZWdlcjsKIHVzaW5n
IFdURjo6aW50ZWdlclRvU2l4Q2hhcmFjdGVySGFzaFN0cmluZzsKLQotI2VuZGlmIC8vIFNpeENo
YXJhY3Rlckhhc2hfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TbWFsbFB0clNldC5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NtYWxsUHRyU2V0LmgJKHJldmlzaW9uIDIzNzA3MCkK
KysrIFNvdXJjZS9XVEYvd3RmL1NtYWxsUHRyU2V0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDgg
KzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU21hbGxQdHJTZXRfaAot
I2RlZmluZSBTbWFsbFB0clNldF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3Nl
cnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KQEAgLTI0OSw1ICsyNDgsMyBA
QCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6U21hbGxQdHJTZXQ7
Ci0KLSNlbmRpZiAvLyBTbWFsbFB0clNldF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TcGVjdHJ1
bS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NwZWN0cnVtLmgJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1NwZWN0cnVtLmgJKHdvcmtpbmcgY29weSkKQEAgLTIz
LDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU3BlY3RydW1faAot
I2RlZmluZSBTcGVjdHJ1bV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9IYXNoTWFw
Lmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgpAQCAtMTIyLDUgKzEyMSwzIEBAIHByaXZhdGU6
CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpTcGVjdHJ1bTsKLQotI2VuZGlmIC8v
IFNwZWN0cnVtX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1N0YWNrQm91bmRzLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TdGFja0JvdW5kcy5jcHAJKHJldmlzaW9uIDIzNzA3MCkK
KysrIFNvdXJjZS9XVEYvd3RmL1N0YWNrQm91bmRzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTks
OSArMTksOSBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJTdGFja0Jv
dW5kcy5oIgogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHd0Zi9Ob1RhaWxDYWxscy5oPgor
I2luY2x1ZGUgPHd0Zi9TdGFja0JvdW5kcy5oPgogCiAjaWYgT1MoREFSV0lOKQogCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9TdGFja0JvdW5kcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L1N0YWNrQm91bmRzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1N0YWNr
Qm91bmRzLmgJKHdvcmtpbmcgY29weSkKQEAgLTI0LDggKzI0LDcgQEAKICAqCiAgKi8KIAotI2lm
bmRlZiBTdGFja0JvdW5kc19oCi0jZGVmaW5lIFN0YWNrQm91bmRzX2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPHd0Zi9TdGFja1BvaW50ZXIuaD4KQEAg
LTE2NCw1ICsxNjMsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdU
Rjo6U3RhY2tCb3VuZHM7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvU3RhY2tTdGF0
cy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU3RhY2tTdGF0cy5jcHAJKHJldmlz
aW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1N0YWNrU3RhdHMuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNCwxMiArMjQsMTIgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5j
bHVkZSAiU3RhY2tTdGF0cy5oIgorI2luY2x1ZGUgPHd0Zi9TdGFja1N0YXRzLmg+CiAKICNpZiBF
TkFCTEUoU1RBQ0tfU1RBVFMpIAogCi0jaW5jbHVkZSAiQXNzZXJ0aW9ucy5oIgotI2luY2x1ZGUg
IkRhdGFMb2cuaCIKKyNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgorI2luY2x1ZGUgPHd0Zi9E
YXRhTG9nLmg+CiAKIC8vIERlZmluZSB0aGUgZm9sbG93aW5nIGZsYWcgaWYgeW91IHdhbnQgdG8g
Y29sbGVjdCBzdGF0cyBvbiBldmVyeSBzaW5nbGUKIC8vIGNoZWNrcG9pbnQuIEJ5IGRlZmF1bHQs
IHdlIG9ubHkgbG9nIGNoZWNrcG9pbnRzIHRoYXQgZXN0YWJsaXNoIG5ldwpJbmRleDogU291cmNl
L1dURi93dGYvU3RhY2tTdGF0cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1N0YWNr
U3RhdHMuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU3RhY2tTdGF0cy5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMywxMSArMjMsMTAgQEAKICAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICov
CiAKLSNpZm5kZWYgU3RhY2tTdGF0c19oCi0jZGVmaW5lIFN0YWNrU3RhdHNfaAorI3ByYWdtYSBv
bmNlCiAKLSNpbmNsdWRlICJFeHBvcnRNYWNyb3MuaCIKICNpbmNsdWRlIDxtdXRleD4KKyNpbmNs
dWRlIDx3dGYvRXhwb3J0TWFjcm9zLmg+CiAKIAogLy8gRGVmaW5lIHRoaXMgZmxhZyB0byBlbmFi
bGUgU3RhY2sgc3RhdHMgY29sbGVjdGlvbi4gVGhpcyBmZWF0dXJlIGlzIHVzZWZ1bApAQCAtMTQz
LDUgKzE0MiwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpT
dGFja1N0YXRzOwotCi0jZW5kaWYgLy8gU3RhY2tTdGF0c19oCkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9TdGFja1RyYWNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TdGFja1RyYWNl
LmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU3RhY2tUcmFjZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiU3RhY2tUcmFjZS5oIgorI2luY2x1ZGUgPHd0Zi9TdGFja1RyYWNlLmg+
CiAKICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVh
bS5oPgpJbmRleDogU291cmNlL1dURi93dGYvU3RkTGliRXh0cmFzLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvU3RkTGliRXh0cmFzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL1N0ZExpYkV4dHJhcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw4ICsyNCw3IEBA
CiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9TdGRMaWJFeHRyYXNfaAotI2Rl
ZmluZSBXVEZfU3RkTGliRXh0cmFzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8Y3N0cmlu
Zz4KICNpbmNsdWRlIDxtZW1vcnk+CkBAIC01OTAsNSArNTg5LDMgQEAgdXNpbmcgV1RGOjptZXJn
ZURlZHVwbGljYXRlZFNvcnRlZDsKIHVzaW5nIFdURjo6cm91bmRVcFRvTXVsdGlwbGVPZjsKIHVz
aW5nIFdURjo6c2FmZUNhc3Q7CiB1c2luZyBXVEY6OnRyeUJpbmFyeVNlYXJjaDsKLQotI2VuZGlm
IC8vIFdURl9TdGRMaWJFeHRyYXNfaApJbmRleDogU291cmNlL1dURi93dGYvU3RyZWFtQnVmZmVy
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU3RyZWFtQnVmZmVyLmgJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1N0cmVhbUJ1ZmZlci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yOCw4ICsyOCw3IEBACiAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAqLwogCi0jaWZuZGVmIFdURl9TdHJl
YW1CdWZmZXJfaAotI2RlZmluZSBXVEZfU3RyZWFtQnVmZmVyX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8d3RmL0RlcXVlLmg+CiAKQEAgLTExMiw1ICsxMTEsMyBAQCBwcml2YXRlOgogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6U3RyZWFtQnVmZmVyOwotCi0jZW5kaWYgLy8g
V1RGX1N0cmVhbUJ1ZmZlcl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TdHJpbmdIYXNoRHVtcENv
bnRleHQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TdHJpbmdIYXNoRHVtcENvbnRl
eHQuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU3RyaW5nSGFzaER1bXBD
b250ZXh0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
IAogICovCiAKLSNpZm5kZWYgU3RyaW5nSGFzaER1bXBDb250ZXh0X2gKLSNkZWZpbmUgU3RyaW5n
SGFzaER1bXBDb250ZXh0X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAu
aD4KICNpbmNsdWRlIDx3dGYvU2l4Q2hhcmFjdGVySGFzaC5oPgpAQCAtMTE3LDYgKzExNiwzIEBA
IHB1YmxpYzoKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlN0cmluZ0hhc2hEdW1w
Q29udGV4dDsKLQotI2VuZGlmIC8vIFN0cmluZ0hhc2hEdW1wQ29udGV4dF9oCi0KSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL1N0cmluZ1ByaW50U3RyZWFtLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9TdHJpbmdQcmludFN0cmVhbS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL1N0cmluZ1ByaW50U3RyZWFtLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyAr
MjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJTdHJpbmdQcmlu
dFN0cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi9TdHJpbmdQcmludFN0cmVhbS5oPgogCiAjaW5jbHVk
ZSA8c3RkYXJnLmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1N0
cmluZ1ByaW50U3RyZWFtLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU3RyaW5nUHJp
bnRTdHJlYW0uaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvU3RyaW5nUHJp
bnRTdHJlYW0uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCiAgKi8KIAotI2lmbmRlZiBTdHJpbmdQcmludFN0cmVhbV9oCi0jZGVmaW5lIFN0cmluZ1By
aW50U3RyZWFtX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+
CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgpAQCAtNzgsNiArNzcsMyBAQCBTdHJpbmcg
dG9TdHJpbmcoY29uc3QgVHlwZXMmLi4uIHZhbHVlcykKIHVzaW5nIFdURjo6U3RyaW5nUHJpbnRT
dHJlYW07CiB1c2luZyBXVEY6OnRvQ1N0cmluZzsKIHVzaW5nIFdURjo6dG9TdHJpbmc7Ci0KLSNl
bmRpZiAvLyBTdHJpbmdQcmludFN0cmVhbV9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVh
ZEdyb3VwLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRHcm91cC5jcHAJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1RocmVhZEdyb3VwLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJUaHJlYWRHcm91cC5oIgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRHcm91cC5oPgog
CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L1RocmVhZE1lc3NhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1RocmVhZE1l
c3NhZ2UuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRNZXNz
YWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJUaHJlYWRNZXNzYWdlLmgiCisjaW5jbHVkZSA8d3RmL1Ro
cmVhZE1lc3NhZ2UuaD4KIAogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAjaW5jbHVkZSA8d3RmL0xv
Y2tlci5oPgpJbmRleDogU291cmNlL1dURi93dGYvVGhyZWFkU3BlY2lmaWMuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRTcGVjaWZpYy5oCShyZXZpc2lvbiAyMzcwNzApCisr
KyBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRTcGVjaWZpYy5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOSw4
ICszOSw3IEBACiAgKiBXZWJLaXQgdGhlIHJlcGVhdGVkIGNhbGwgYmFoYXZpb3IgaXMgdXRpbGl6
ZWQuCiAgKi8KIAotI2lmbmRlZiBXVEZfVGhyZWFkU3BlY2lmaWNfaAotI2RlZmluZSBXVEZfVGhy
ZWFkU3BlY2lmaWNfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5o
PgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgpAQCAtMzExLDUgKzMxMCwzIEBAIGlubGlu
ZSBUJiBUaHJlYWRTcGVjaWZpYzxULCBjYW5CZUdDVGhyZWEKIH0gLy8gbmFtZXNwYWNlIFdURgog
CiB1c2luZyBXVEY6OlRocmVhZFNwZWNpZmljOwotCi0jZW5kaWYgLy8gV1RGX1RocmVhZFNwZWNp
ZmljX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZFNwZWNpZmljV2luLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRTcGVjaWZpY1dpbi5jcHAJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1RocmVhZFNwZWNpZmljV2luLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjAsNyArMjAsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJUaHJlYWRTcGVjaWZpYy5oIgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRTcGVjaWZpYy5oPgog
CiAjaWYgT1MoV0lORE9XUykKIApJbmRleDogU291cmNlL1dURi93dGYvVGhyZWFkaW5nLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuY3BwCShyZXZpc2lvbiAyMzcw
NzApCisrKyBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
NCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlRocmVh
ZGluZy5oIgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KIAogI2luY2x1ZGUgPGFsZ29yaXRo
bT4KICNpbmNsdWRlIDxjbWF0aD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5oCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuaAkod29ya2luZyBjb3B5KQpAQCAtMjgsOCAr
MjgsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFRocmVhZGluZ19oCi0jZGVmaW5l
IFRocmVhZGluZ19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUg
PHN0ZGludC5oPgpAQCAtMzQwLDUgKzMzOSwzIEBAIHVzaW5nIFdURjo6VGhyZWFkSWRlbnRpZmll
cjsKIHVzaW5nIFdURjo6Y3JlYXRlVGhyZWFkOwogdXNpbmcgV1RGOjp3YWl0Rm9yVGhyZWFkQ29t
cGxldGlvbjsKICNlbmRpZgotCi0jZW5kaWYgLy8gVGhyZWFkaW5nX2gKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL1RocmVhZGluZ1ByaW1pdGl2ZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9UaHJlYWRpbmdQcmltaXRpdmVzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYv
d3RmL1RocmVhZGluZ1ByaW1pdGl2ZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjgsOCArMjgsNyBA
QAogICoKICAqLwogCi0jaWZuZGVmIFRocmVhZGluZ1ByaW1pdGl2ZXNfaAotI2RlZmluZSBUaHJl
YWRpbmdQcmltaXRpdmVzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxs
b2MuaD4KICNpbmNsdWRlIDx3dGYvTG9ja2VyLmg+CkBAIC0xMTAsNSArMTA5LDMgQEAgcHJpdmF0
ZToKIHVzaW5nIFdURjo6TXV0ZXg7CiB1c2luZyBXVEY6Ok11dGV4TG9ja2VyOwogdXNpbmcgV1RG
OjpUaHJlYWRDb25kaXRpb247Ci0KLSNlbmRpZiAvLyBUaHJlYWRpbmdQcmltaXRpdmVzX2gKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmdQdGhyZWFkcy5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MzAsNyArMzAsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUaHJl
YWRpbmcuaCIKKyNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAKICNpZiBVU0UoUFRIUkVBRFMp
CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1dpbi5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvVGhyZWFkaW5nV2luLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291
cmNlL1dURi93dGYvVGhyZWFkaW5nV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODQsNyArODQs
NyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUaHJlYWRpbmcuaCIK
KyNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAKICNpZiBPUyhXSU5ET1dTKQogCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9UaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5jcHAJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI0LDE0ICsyNCwxNCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcu
aCIKLSNpbmNsdWRlICJUaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuaCIKKyNpbmNsdWRlIDx3dGYv
VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlLmg+CiAKLSNpbmNsdWRlICJDb25kaXRpb24uaCIKLSNp
bmNsdWRlICJMb2NrLmgiCi0jaW5jbHVkZSAiUHJpbnRTdHJlYW0uaCIKICNpbmNsdWRlIDxjZmxv
YXQ+CiAjaW5jbHVkZSA8Y21hdGg+CisjaW5jbHVkZSA8d3RmL0NvbmRpdGlvbi5oPgogI2luY2x1
ZGUgPHd0Zi9EYXRhTG9nLmg+CisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5jbHVk
ZSA8d3RmL0xvY2suaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2Uv
V1RGL3d0Zi9UaW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuaAkod29ya2luZyBjb3B5KQpAQCAtMjMs
OCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfVGltZVdpdGhE
eW5hbWljQ2xvY2tUeXBlX2gKLSNkZWZpbmUgV1RGX1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZV9o
CisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9DbG9ja1R5cGUuaD4KICNpbmNsdWRlIDx3
dGYvTW9ub3RvbmljVGltZS5oPgpAQCAtMTYwLDUgKzE1OSwzIEBAIGlubGluZSBib29sIGlzZmlu
aXRlKFdURjo6VGltZVdpdGhEeW5hbWkKIHVzaW5nIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tU
eXBlOwogdXNpbmcgV1RGOjpoYXNFbGFwc2VkOwogdXNpbmcgV1RGOjpzbGVlcDsKLQotI2VuZGlm
IC8vIFdURl9UaW1lV2l0aER5bmFtaWNDbG9ja1R5cGVfaApJbmRleDogU291cmNlL1dURi93dGYv
VGltaW5nU2NvcGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1RpbWluZ1Njb3Bl
LmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvVGltaW5nU2NvcGUuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgIlRpbWluZ1Njb3BlLmgiCisjaW5jbHVkZSA8d3RmL1RpbWluZ1Njb3Bl
Lmg+CiAKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+Cklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9UaW55TFJVQ2FjaGUuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9UaW55TFJVQ2FjaGUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93
dGYvVGlueUxSVUNhY2hlLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFRpbnlMUlVDYWNo
ZV9oCi0jZGVmaW5lIFRpbnlMUlVDYWNoZV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0
Zi9OZXZlckRlc3Ryb3llZC5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTgwLDUgKzc5
LDMgQEAgcHJpdmF0ZToKIAogdXNpbmcgV1RGOjpUaW55TFJVQ2FjaGU7CiB1c2luZyBXVEY6OlRp
bnlMUlVDYWNoZVBvbGljeTsKLQotI2VuZGlmIC8vIFRpbnlMUlVDYWNoZV9oCkluZGV4OiBTb3Vy
Y2UvV1RGL3d0Zi9UaW55UHRyU2V0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvVGlu
eVB0clNldC5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9UaW55UHRyU2V0
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICov
CiAKLSNpZm5kZWYgVGlueVB0clNldF9oCi0jZGVmaW5lIFRpbnlQdHJTZXRfaAorI3ByYWdtYSBv
bmNlCiAKICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9GYXN0TWFs
bG9jLmg+CkBAIC01MjYsNiArNTI1LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgog
CiB1c2luZyBXVEY6OlRpbnlQdHJTZXQ7Ci0KLSNlbmRpZiAvLyBUaW55UHRyU2V0X2gKLQpJbmRl
eDogU291cmNlL1dURi93dGYvVHJpU3RhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9UcmlTdGF0ZS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9UcmlTdGF0
ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAq
LwogCi0jaWZuZGVmIFRyaVN0YXRlX2gKLSNkZWZpbmUgVHJpU3RhdGVfaAorI3ByYWdtYSBvbmNl
CiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC00Niw1ICs0NSwzIEBAIHVzaW5nIFdURjo6RmFsc2VU
cmlTdGF0ZTsKIHVzaW5nIFdURjo6VHJ1ZVRyaVN0YXRlOwogdXNpbmcgV1RGOjpNaXhlZFRyaVN0
YXRlOwogdXNpbmcgV1RGOjp0cmlTdGF0ZTsKLQotI2VuZGlmIC8vIFRyaVN0YXRlX2gKSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL1R5cGVDYXN0cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L1R5cGVDYXN0cy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9UeXBlQ2Fz
dHMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgVHlwZUNhc3RzX2gKLSNkZWZpbmUgVHlw
ZUNhc3RzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8dHlwZV90cmFpdHM+CiAKQEAgLTEw
OCw1ICsxMDcsMyBAQCBwcml2YXRlOgogdXNpbmcgV1RGOjpUeXBlQ2FzdFRyYWl0czsKIHVzaW5n
IFdURjo6aXM7CiB1c2luZyBXVEY6OmRvd25jYXN0OwotCi0jZW5kaWYgLy8gVHlwZUNhc3RzX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL1VVSUQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL1VVSUQuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9VVUlELmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjksNyArMjksNyBAQAogICovCiAKICNpbmNsdWRlICJjb25m
aWcuaCIKLSNpbmNsdWRlICJVVUlELmgiCisjaW5jbHVkZSA8d3RmL1VVSUQuaD4KIAogI2luY2x1
ZGUgPHd0Zi9DcnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlci5oPgogI2luY2x1ZGUgPHd0Zi9I
ZXhOdW1iZXIuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1VuaVN0ZEV4dHJhcy5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvVW5pU3RkRXh0cmFzLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvVW5pU3RkRXh0cmFzLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJVbmlT
dGRFeHRyYXMuaCIKKyNpbmNsdWRlIDx3dGYvVW5pU3RkRXh0cmFzLmg+CiAKICNpbmNsdWRlIDxm
Y250bC5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9VbmlvbkZpbmQuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9VbmlvbkZpbmQuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNl
L1dURi93dGYvVW5pb25GaW5kLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgVW5pb25GaW5kX2gKLSNkZWZpbmUgVW5pb25G
aW5kX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIApAQCAt
MTA4LDUgKzEwNywzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RG
OjpVbmlvbkZpbmQ7Ci0KLSNlbmRpZiAvLyBVbmlvbkZpbmRfaApJbmRleDogU291cmNlL1dURi93
dGYvVk1UYWdzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvVk1UYWdzLmgJKHJldmlz
aW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1ZNVGFncy5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFZNVGFnc19o
Ci0jZGVmaW5lIFZNVGFnc19oCisjcHJhZ21hIG9uY2UKIAogLy8gT24gTWFjIE9TIFgsIHRoZSBW
TSBzdWJzeXN0ZW0gYWxsb3dzIHRhZ2dpbmcgbWVtb3J5IHJlcXVlc3RlZCBmcm9tIG1tYXAgYW5k
IHZtX21hcAogLy8gaW4gb3JkZXIgdG8gYWlkIHRvb2xzIHRoYXQgaW5zcGVjdCBzeXN0ZW0gbWVt
b3J5IHVzZS4gCkBAIC02NCw1ICs2MywzIEBACiAjZGVmaW5lIFZNX1RBR19GT1JfUkVHSVNURVJG
SUxFX01FTU9SWSAtMQogCiAjZW5kaWYgLy8gT1MoREFSV0lOKQotCi0jZW5kaWYgLy8gVk1UYWdz
X2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1ZhbHVlQ2hlY2suaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9WYWx1ZUNoZWNrLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYv
d3RmL1ZhbHVlQ2hlY2suaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBWYWx1ZUNoZWNrX2gKLSNkZWZpbmUgVmFsdWVDaGVj
a19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAKQEAgLTQ5
LDUgKzQ4LDMgQEAgdGVtcGxhdGU8dHlwZW5hbWUgUD4gc3RydWN0IFZhbHVlQ2hlY2s8UAogI2Vu
ZGlmCiAKIH0KLQotI2VuZGlmIC8vIFZhbHVlQ2hlY2tfaApJbmRleDogU291cmNlL1dURi93dGYv
VmVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvVmVjdG9yLmgJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1ZlY3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0x
OCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX1ZlY3Rvcl9oCi0jZGVmaW5lIFdU
Rl9WZWN0b3JfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxpbml0aWFsaXplcl9saXN0Pgog
I2luY2x1ZGUgPGxpbWl0cz4KQEAgLTE3MDgsNSArMTcwNywzIEBAIHVzaW5nIFdURjo6Y29weVRv
VmVjdG9yOwogdXNpbmcgV1RGOjpjb3B5VG9WZWN0b3JPZjsKIHVzaW5nIFdURjo6Y29weVRvVmVj
dG9yU3BlY2lhbGl6YXRpb247CiB1c2luZyBXVEY6OnJlbW92ZVJlcGVhdGVkRWxlbWVudHM7Ci0K
LSNlbmRpZiAvLyBXVEZfVmVjdG9yX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1ZlY3RvclRyYWl0
cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1ZlY3RvclRyYWl0cy5oCShyZXZpc2lv
biAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9WZWN0b3JUcmFpdHMuaAkod29ya2luZyBjb3B5
KQpAQCAtMTgsOCArMTgsNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9WZWN0b3JUcmFpdHNf
aAotI2RlZmluZSBXVEZfVmVjdG9yVHJhaXRzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8
d3RmL1JlZi5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KQEAgLTkyLDUgKzkxLDMgQEAgbmFt
ZXNwYWNlIFdURiB7CiAKIHVzaW5nIFdURjo6VmVjdG9yVHJhaXRzOwogdXNpbmcgV1RGOjpTaW1w
bGVDbGFzc1ZlY3RvclRyYWl0czsKLQotI2VuZGlmIC8vIFdURl9WZWN0b3JUcmFpdHNfaApJbmRl
eDogU291cmNlL1dURi93dGYvV2FsbFRpbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL1dhbGxUaW1lLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvV2Fs
bFRpbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMSArMjQsMTEgQEAKICAqLwogCiAjaW5j
bHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV2FsbFRpbWUuaCIKKyNpbmNsdWRlIDx3dGYvV2Fs
bFRpbWUuaD4KIAotI2luY2x1ZGUgIk1vbm90b25pY1RpbWUuaCIKLSNpbmNsdWRlICJQcmludFN0
cmVhbS5oIgotI2luY2x1ZGUgIlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oIgorI2luY2x1ZGUg
PHd0Zi9Nb25vdG9uaWNUaW1lLmg+CisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5j
bHVkZSA8d3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oPgogCiBuYW1lc3BhY2UgV1RGIHsK
IApJbmRleDogU291cmNlL1dURi93dGYvV2FsbFRpbWUuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9XYWxsVGltZS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9X
YWxsVGltZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LiAKICAqLwogCi0jaWZuZGVmIFdURl9XYWxsVGltZV9oCi0jZGVmaW5lIFdURl9XYWxsVGltZV9o
CisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9DbG9ja1R5cGUuaD4KICNpbmNsdWRlIDx3
dGYvU2Vjb25kcy5oPgpAQCAtMTgxLDUgKzE4MCwzIEBAIGlubGluZSBib29sIGlzZmluaXRlKFdU
Rjo6V2FsbFRpbWUgdGltZSkKIH0gLy8gbmFtZXNwYWNlIHN0ZAogCiB1c2luZyBXVEY6OldhbGxU
aW1lOwotCi0jZW5kaWYgLy8gV1RGX1dhbGxUaW1lX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1dl
YWtQdHIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9XZWFrUHRyLmgJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1dlYWtQdHIuaAkod29ya2luZyBjb3B5KQpAQCAt
MjQsOCArMjQsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9XZWFrUHRy
X2gKLSNkZWZpbmUgV1RGX1dlYWtQdHJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYv
Tm9uY29weWFibGUuaD4KICNpbmNsdWRlIDx3dGYvUmVmLmg+CkBAIC0yMjMsNSArMjIyLDMgQEAg
dXNpbmcgV1RGOjpXZWFrUHRyOwogdXNpbmcgV1RGOjpXZWFrUHRyRmFjdG9yeTsKIHVzaW5nIFdU
Rjo6V2Vha1JlZmVyZW5jZTsKIHVzaW5nIFdURjo6bWFrZVdlYWtQdHI7Ci0KLSNlbmRpZgpJbmRl
eDogU291cmNlL1dURi93dGYvV2Vha1JhbmRvbS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL1dlYWtSYW5kb20uaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvV2Vh
a1JhbmRvbS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw3IEBACiAgKiBTZWUgYWxzbyBo
dHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Yb3JzaGlmdC4KICAqLwogCi0jaWZuZGVmIFdl
YWtSYW5kb21faAotI2RlZmluZSBXZWFrUmFuZG9tX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVk
ZSA8bGltaXRzLmg+CiAjaW5jbHVkZSA8d3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVy
Lmg+CkBAIC0xMDksNSArMTA4LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1
c2luZyBXVEY6OldlYWtSYW5kb207Ci0KLSNlbmRpZiAvLyBXZWFrUmFuZG9tX2gKSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL1dvcmRMb2NrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9X
b3JkTG9jay5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL1dvcmRMb2Nr
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsMTIgKzI0LDEyIEBACiAgKi8KIAogI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIldvcmRMb2NrLmgiCisjaW5jbHVkZSA8d3RmL1dvcmRMb2Nr
Lmg+CiAKLSNpbmNsdWRlICJUaHJlYWRpbmcuaCIKICNpbmNsdWRlIDxjb25kaXRpb25fdmFyaWFi
bGU+CiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8dGhyZWFkPgorI2luY2x1ZGUgPHd0Zi9U
aHJlYWRpbmcuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1dv
cmRMb2NrLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvV29yZExvY2suaAkocmV2aXNp
b24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvV29yZExvY2suaAkod29ya2luZyBjb3B5KQpA
QCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfV29y
ZExvY2tfaAotI2RlZmluZSBXVEZfV29yZExvY2tfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRl
IDx3dGYvQXRvbWljcy5oPgogI2luY2x1ZGUgPHd0Zi9Db21waWxlci5oPgpAQCAtMTA3LDYgKzEw
NiwzIEBAIHVzaW5nIFdvcmRMb2NrSG9sZGVyID0gTG9ja2VyPFdvcmRMb2NrPjsKIAogdXNpbmcg
V1RGOjpXb3JkTG9jazsKIHVzaW5nIFdURjo6V29yZExvY2tIb2xkZXI7Ci0KLSNlbmRpZiAvLyBX
VEZfV29yZExvY2tfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Xb3JrUXVldWUuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1dvcmtRdWV1ZS5jcHAJKHJldmlzaW9uIDIzNzA3MCkK
KysrIFNvdXJjZS9XVEYvd3RmL1dvcmtRdWV1ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcg
KzI1LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya1F1ZXVl
LmgiCisjaW5jbHVkZSA8d3RmL1dvcmtRdWV1ZS5oPgogCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5j
bHVkZSA8d3RmL0NvbmRpdGlvbi5oPgpJbmRleDogU291cmNlL1dURi93dGYvV29ya1F1ZXVlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvV29ya1F1ZXVlLmgJKHJldmlzaW9uIDIzNzA3
MCkKKysrIFNvdXJjZS9XVEYvd3RmL1dvcmtRdWV1ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4
ICsyNSw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lm
bmRlZiBXb3JrUXVldWVfaAotI2RlZmluZSBXb3JrUXVldWVfaAorI3ByYWdtYSBvbmNlCiAKICNp
bmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlvbkRpc3BhdGNoZXIu
aD4KQEAgLTExMiw1ICsxMTEsMyBAQCBwcml2YXRlOgogfQogCiB1c2luZyBXVEY6OldvcmtRdWV1
ZTsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Xb3JrZXJQb29sLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Xb3JrZXJQb29sLmNwcAkocmV2aXNpb24gMjM3MDcwKQor
KysgU291cmNlL1dURi93dGYvV29ya2VyUG9vbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcg
KzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya2VyUG9v
bC5oIgorI2luY2x1ZGUgPHd0Zi9Xb3JrZXJQb29sLmg+CiAKICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvZHRvYS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvZHRvYS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9X
VEYvd3RmL2R0b2EuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMyw3ICszMyw3IEBACiAgKi8KIAog
I2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgImR0b2EuaCIKKyNpbmNsdWRlIDx3dGYvZHRv
YS5oPgogCiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDx3dGYvTG9jay5oPgpJbmRleDog
U291cmNlL1dURi93dGYvZHRvYS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2R0b2Eu
aAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvZHRvYS5oCSh3b3JraW5nIGNv
cHkpCkBAIC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX2R0b2FfaAotI2Rl
ZmluZSBXVEZfZHRvYV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHVuaWNvZGUvdXR5cGVz
Lmg+CiAjaW5jbHVkZSA8d3RmL0FTQ0lJQ1R5cGUuaD4KQEAgLTgyLDUgKzgxLDMgQEAgdXNpbmcg
V1RGOjpudW1iZXJUb1N0cmluZzsKIHVzaW5nIFdURjo6bnVtYmVyVG9GaXhlZFByZWNpc2lvblN0
cmluZzsKIHVzaW5nIFdURjo6bnVtYmVyVG9GaXhlZFdpZHRoU3RyaW5nOwogdXNpbmcgV1RGOjpw
YXJzZURvdWJsZTsKLQotI2VuZGlmIC8vIFdURl9kdG9hX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L21ibWFsbG9jLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9tYm1hbGxvYy5jcHAJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL21ibWFsbG9jLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNp
bmNsdWRlICJGYXN0TWFsbG9jLmgiCisjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KIAogI2Rl
ZmluZSBFWFBPUlQgX19hdHRyaWJ1dGVfXygodmlzaWJpbGl0eSgiZGVmYXVsdCIpKSkKIApJbmRl
eDogU291cmNlL1dURi93dGYvY2YvTGFuZ3VhZ2VDRi5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvY2YvTGFuZ3VhZ2VDRi5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9X
VEYvd3RmL2NmL0xhbmd1YWdlQ0YuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBA
CiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkxhbmd1YWdlLmgiCisjaW5j
bHVkZSA8d3RmL0xhbmd1YWdlLmg+CiAKICNpbmNsdWRlIDxDb3JlRm91bmRhdGlvbi9Db3JlRm91
bmRhdGlvbi5oPgogI2luY2x1ZGUgPG11dGV4PgpJbmRleDogU291cmNlL1dURi93dGYvY2YvUnVu
TG9vcENGLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9jZi9SdW5Mb29wQ0YuY3Bw
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9jZi9SdW5Mb29wQ0YuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIlJ1bkxvb3AuaCIKKyNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgogCiAjaW5j
bHVkZSA8Q29yZUZvdW5kYXRpb24vQ29yZUZvdW5kYXRpb24uaD4KICNpbmNsdWRlIDxkaXNwYXRj
aC9kaXNwYXRjaC5oPgpJbmRleDogU291cmNlL1dURi93dGYvY29jb2EvRW50aXRsZW1lbnRzLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2NvY29hL0VudGl0bGVtZW50cy5tbQkocmV2
aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvY29jb2EvRW50aXRsZW1lbnRzLm1tCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIkVudGl0bGVtZW50cy5oIgorI2luY2x1ZGUgPHd0Zi9jb2NvYS9FbnRpdGxl
bWVudHMuaD4KIAogI2luY2x1ZGUgPHd0Zi9PU09iamVjdFB0ci5oPgogI2luY2x1ZGUgPHd0Zi9S
ZXRhaW5QdHIuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL2NvY29hL01hY2hTZW5kUmlnaHQuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2NvY29hL01hY2hTZW5kUmlnaHQuY3BwCShy
ZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NYWNoU2VuZFJpZ2h0LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25m
aWcuaCIKLSNpbmNsdWRlICJNYWNoU2VuZFJpZ2h0LmgiCisjaW5jbHVkZSA8d3RmL01hY2hTZW5k
UmlnaHQuaD4KIAogI2luY2x1ZGUgPG1hY2gvbWFjaF9lcnJvci5oPgogI2luY2x1ZGUgPG1hY2gv
bWFjaF9pbml0Lmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NYWluVGhyZWFkQ29jb2Eu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvY29jb2EvTWFpblRocmVhZENvY29hLm1t
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NYWluVGhyZWFkQ29j
b2EubW0JKHdvcmtpbmcgY29weSkKQEAgLTI3LDcgKzI3LDcgQEAKICAqLwogCiAjaW1wb3J0ICJj
b25maWcuaCIKLSNpbXBvcnQgIk1haW5UaHJlYWQuaCIKKyNpbXBvcnQgPHd0Zi9NYWluVGhyZWFk
Lmg+CiAKICNpbXBvcnQgPENvcmVGb3VuZGF0aW9uL0NvcmVGb3VuZGF0aW9uLmg+CiAjaW1wb3J0
IDxGb3VuZGF0aW9uL05TVGhyZWFkLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NZW1v
cnlGb290cHJpbnRDb2NvYS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvY29jb2Ev
TWVtb3J5Rm9vdHByaW50Q29jb2EuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RG
L3d0Zi9jb2NvYS9NZW1vcnlGb290cHJpbnRDb2NvYS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0
LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTWVtb3J5
Rm9vdHByaW50LmgiCisjaW5jbHVkZSA8d3RmL01lbW9yeUZvb3RwcmludC5oPgogCiAjaW5jbHVk
ZSA8bWFjaC9tYWNoLmg+CiAjaW5jbHVkZSA8bWFjaC90YXNrX2luZm8uaD4KSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL2NvY29hL01lbW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL2NvY29hL01lbW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1tCShy
ZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NZW1vcnlQcmVzc3VyZUhh
bmRsZXJDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNp
bXBvcnQgImNvbmZpZy5oIgotI2ltcG9ydCAiTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmgiCisjaW1w
b3J0IDx3dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmg+CiAKICNpbXBvcnQgPG1hY2gvbWFjaC5o
PgogI2ltcG9ydCA8bWFjaC90YXNrX2luZm8uaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL2NvY29h
L1dvcmtRdWV1ZUNvY29hLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9X
b3JrUXVldWVDb2NvYS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL2Nv
Y29hL1dvcmtRdWV1ZUNvY29hLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsOSArMjQsMTAgQEAK
ICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya1F1ZXVlLmgiCi0jaW5j
bHVkZSAiQmxvY2tQdHIuaCIKLSNpbmNsdWRlICJSZWYuaCIKKyNpbmNsdWRlIDx3dGYvV29ya1F1
ZXVlLmg+CisKKyNpbmNsdWRlIDx3dGYvQmxvY2tQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmLmg+
CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9mdWNoc2lhL0NQVVRp
bWVGdWNoc2lhLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9mdWNoc2lhL0NQVVRp
bWVGdWNoc2lhLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvZnVjaHNp
YS9DUFVUaW1lRnVjaHNpYS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAq
LwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ1BVVGltZS5oIgorI2luY2x1ZGUg
PHd0Zi9DUFVUaW1lLmg+CiAKICNpbmNsdWRlIDx6aXJjb24vc3lzY2FsbHMuaD4KIApJbmRleDog
U291cmNlL1dURi93dGYvZ2VuZXJpYy9NZW1vcnlGb290cHJpbnRHZW5lcmljLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL01lbW9yeUZvb3RwcmludEdlbmVyaWMuY3Bw
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL01lbW9yeUZvb3Rw
cmludEdlbmVyaWMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAog
I2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk1lbW9yeUZvb3RwcmludC5oIgorI2luY2x1
ZGUgPHd0Zi9NZW1vcnlGb290cHJpbnQuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL2dlbmVyaWMvTWVtb3J5UHJlc3N1cmVIYW5kbGVyR2VuZXJpYy5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvZ2VuZXJpYy9NZW1vcnlQcmVzc3VyZUhhbmRsZXJH
ZW5lcmljLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvZ2VuZXJpYy9N
ZW1vcnlQcmVzc3VyZUhhbmRsZXJHZW5lcmljLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyAr
MjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNZW1vcnlQcmVz
c3VyZUhhbmRsZXIuaCIKKyNpbmNsdWRlIDx3dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmg+CiAK
IG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL1J1bkxvb3BH
ZW5lcmljLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL1J1bkxvb3BH
ZW5lcmljLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvZ2VuZXJpYy9S
dW5Mb29wR2VuZXJpYy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUnVuTG9vcC5oIgorI2luY2x1ZGUgPHd0
Zi9SdW5Mb29wLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9n
ZW5lcmljL1dvcmtRdWV1ZUdlbmVyaWMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L2dlbmVyaWMvV29ya1F1ZXVlR2VuZXJpYy5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL2dlbmVyaWMvV29ya1F1ZXVlR2VuZXJpYy5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI4LDcgKzI4LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29y
a1F1ZXVlLmgiCisjaW5jbHVkZSA8d3RmL1dvcmtRdWV1ZS5oPgogCiAjaW5jbHVkZSA8d3RmL1dh
bGxUaW1lLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9nbGliL0dMaWJVdGlsaXRpZXMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL2dsaWIvR0xpYlV0aWxpdGllcy5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9X
VEYvd3RmL2dsaWIvR0xpYlV0aWxpdGllcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4LDcgKzE4
LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiR0xpYlV0aWxpdGll
cy5oIgorI2luY2x1ZGUgPHd0Zi9nbGliL0dMaWJVdGlsaXRpZXMuaD4KIAogI2luY2x1ZGUgPGds
aWIuaD4KICNpbmNsdWRlIDx3dGYvZ2xpYi9HVW5pcXVlUHRyLmg+CkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi9nbGliL0dSZWZQdHIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2dsaWIv
R1JlZlB0ci5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL2dsaWIvR1Jl
ZlB0ci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE3LDcgKzE3LDcgQEAKICAqLwogCiAjaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiR1JlZlB0ci5oIgorI2luY2x1ZGUgPHd0Zi9nbGliL0dS
ZWZQdHIuaD4KIAogI2lmIFVTRShHTElCKQogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9nbGliL1J1
bkxvb3BHTGliLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9nbGliL1J1bkxvb3BH
TGliLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvZ2xpYi9SdW5Mb29w
R0xpYi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwogCiAjaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUnVuTG9vcC5oIgorI2luY2x1ZGUgPHd0Zi9SdW5Mb29w
Lmg+CiAKICNpbmNsdWRlIDxnbGliLmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhyZWFkLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9pb3MvV2ViQ29yZVRocmVhZC5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhyZWFkLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJXZWJD
b3JlVGhyZWFkLmgiCisjaW5jbHVkZSA8d3RmL2lvcy9XZWJDb3JlVGhyZWFkLmg+CiAKICNpZiBV
U0UoV0VCX1RIUkVBRCkKIFdURl9FWFBPUlRfUFJJVkFURSBib29sICgqV2ViQ29yZVdlYlRocmVh
ZElzTG9ja2VkT3JEaXNhYmxlZCkodm9pZCk7CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9pb3MvV2Vi
Q29yZVRocmVhZC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhy
ZWFkLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhy
ZWFkLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDEwICsyMyw3IEBACiAgKiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKLS8vIFNpbmNlIHRoaXMgaXMgYSBzaGFyZWQgaGVhZGVyLCB3aXRoIHRoZSBzYW1lIGZpbGUg
bmFtZSBhcyBhIGZpbGUgaW4KLS8vIFdlYkNvcmUgd2UgcHJlZml4IHRoaXMgd2l0aCBXVEYgdG8g
bWFrZSBpdCB1bmlxdWUuCi0jaWZuZGVmIFdURl9XZWJDb3JlVGhyZWFkX2gKLSNkZWZpbmUgV1RG
X1dlYkNvcmVUaHJlYWRfaAorI3ByYWdtYSBvbmNlCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0
ZXJuICJDIiB7CkBAIC0zOSw1ICszNiwzIEBAIGV4dGVybiB2b2lkICgqV2ViQ29yZVdlYlRocmVh
ZFJ1bikodm9pZCAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCi0KLSNlbmRpZiAvLyBX
VEZfV2ViQ29yZVRocmVhZF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9saW51eC9DdXJyZW50UHJv
Y2Vzc01lbW9yeVN0YXR1cy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvbGludXgv
Q3VycmVudFByb2Nlc3NNZW1vcnlTdGF0dXMuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9saW51eC9DdXJyZW50UHJvY2Vzc01lbW9yeVN0YXR1cy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5j
bHVkZSAiQ3VycmVudFByb2Nlc3NNZW1vcnlTdGF0dXMuaCIKKyNpbmNsdWRlIDx3dGYvbGludXgv
Q3VycmVudFByb2Nlc3NNZW1vcnlTdGF0dXMuaD4KIAogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5j
bHVkZSA8c3RkbGliLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9saW51eC9NZW1vcnlGb290cHJp
bnRMaW51eC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvbGludXgvTWVtb3J5Rm9v
dHByaW50TGludXguY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9saW51
eC9NZW1vcnlGb290cHJpbnRMaW51eC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDEwICsyNCwx
MCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNZW1vcnlGb290cHJp
bnQuaCIKKyNpbmNsdWRlIDx3dGYvTWVtb3J5Rm9vdHByaW50Lmg+CiAKLSNpbmNsdWRlICJNb25v
dG9uaWNUaW1lLmgiCiAjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDx3dGYvTW9ub3Rvbmlj
VGltZS5oPgogI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvdGV4
dC9TdHJpbmdWaWV3Lmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL2xpbnV4L01lbW9yeVByZXNz
dXJlSGFuZGxlckxpbnV4LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9saW51eC9N
ZW1vcnlQcmVzc3VyZUhhbmRsZXJMaW51eC5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJj
ZS9XVEYvd3RmL2xpbnV4L01lbW9yeVByZXNzdXJlSGFuZGxlckxpbnV4LmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjYsNyArMjYsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJNZW1vcnlQcmVzc3VyZUhhbmRsZXIuaCIKKyNpbmNsdWRlIDx3dGYvTWVtb3J5UHJlc3N1
cmVIYW5kbGVyLmg+CiAKICNpbmNsdWRlIDxtYWxsb2MuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4K
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL21hYy9BcHBLaXRDb21wYXRpYmlsaXR5RGVjbGFyYXRpb25z
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvbWFjL0FwcEtpdENvbXBhdGliaWxpdHlE
ZWNsYXJhdGlvbnMuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvbWFjL0Fw
cEtpdENvbXBhdGliaWxpdHlEZWNsYXJhdGlvbnMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCAr
MjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5k
ZWYgQXBwS2l0Q29tcGF0aWJpbGl0eURlY2xhcmF0aW9uc19oCi0jZGVmaW5lIEFwcEtpdENvbXBh
dGliaWxpdHlEZWNsYXJhdGlvbnNfaAorI3ByYWdtYSBvbmNlCiAKICNpbXBvcnQgPEF2YWlsYWJp
bGl0eS5oPgogCkBAIC00NSw1ICs0NCwzIEBAIHN0YXRpYyBjb25zdCBOU0xldmVsSW5kaWNhdG9y
U3R5bGUgTlNMZXYKIHN0YXRpYyBjb25zdCBOU0xldmVsSW5kaWNhdG9yU3R5bGUgTlNMZXZlbElu
ZGljYXRvclN0eWxlUmF0aW5nID0gTlNSYXRpbmdMZXZlbEluZGljYXRvclN0eWxlOwogCiAjZW5k
aWYgLy8gX19NQUNfT1NfWF9WRVJTSU9OX01BWF9BTExPV0VEIDwgMTAxMzAwCi0KLSNlbmRpZiAv
LyBBcHBLaXRDb21wYXRpYmlsaXR5RGVjbGFyYXRpb25zX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L21hYy9EZXByZWNhdGVkU3ltYm9sc1VzZWRCeVNhZmFyaS5tbQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9tYWMvRGVwcmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0JKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL21hYy9EZXByZWNhdGVkU3ltYm9sc1VzZWRCeVNh
ZmFyaS5tbQkod29ya2luZyBjb3B5KQpAQCAtMjUsMTMgKzI1LDEzIEBACiAKICNpbmNsdWRlICJj
b25maWcuaCIKIAotI2luY2x1ZGUgIkhhc2hNYXAuaCIKLSNpbmNsdWRlICJIYXNoU2V0LmgiCi0j
aW5jbHVkZSAiTG9jay5oIgotI2luY2x1ZGUgIk1haW5UaHJlYWQuaCIKLSNpbmNsdWRlICJOZXZl
ckRlc3Ryb3llZC5oIgotI2luY2x1ZGUgIlN0ZExpYkV4dHJhcy5oIgogI2luY2x1ZGUgPHN0ZGlu
dC5oPgorI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4K
KyNpbmNsdWRlIDx3dGYvTG9jay5oPgorI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CisjaW5j
bHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5o
PgogCiAvLyBUaGlzIGZpbGUgY29udGFpbnMgZGVwcmVjYXRlZCBzeW1ib2xzIHRoYXQgdGhlIGxh
c3QgcmVsZWFzZWQgdmVyc2lvbiBvZiBTYWZhcmkgdXNlcy4KIC8vIE9uY2UgU2FmYXJpIHN0b3Bz
IHVzaW5nIHRoZW0sIHdlIHNob3VsZCByZW1vdmUgdGhlbS4KSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L3BlcnNpc3RlbmNlL1BlcnNpc3RlbnRDb2RlcnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3RlbnRDb2RlcnMuY3BwCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50Q29kZXJzLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJQZXJzaXN0ZW50Q29kZXJzLmgiCisjaW5jbHVkZSA8d3RmL3BlcnNpc3RlbmNl
L1BlcnNpc3RlbnRDb2RlcnMuaD4KIAogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KICNp
bmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3BlcnNp
c3RlbmNlL1BlcnNpc3RlbnREZWNvZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RGVjb2Rlci5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3RlbnREZWNvZGVyLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNp
bmNsdWRlICJQZXJzaXN0ZW50RGVjb2Rlci5oIgorI2luY2x1ZGUgPHd0Zi9wZXJzaXN0ZW5jZS9Q
ZXJzaXN0ZW50RGVjb2Rlci5oPgogCiAjaW5jbHVkZSA8d3RmL3BlcnNpc3RlbmNlL1BlcnNpc3Rl
bnRFbmNvZGVyLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3Rl
bnRFbmNvZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9wZXJzaXN0ZW5jZS9Q
ZXJzaXN0ZW50RW5jb2Rlci5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3Rm
L3BlcnNpc3RlbmNlL1BlcnNpc3RlbnRFbmNvZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQs
OSArMjQsOSBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJQZXJzaXN0
ZW50RW5jb2Rlci5oIgorI2luY2x1ZGUgPHd0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RW5jb2Rl
ci5oPgogCi0jaW5jbHVkZSAiU0hBMS5oIgorI2luY2x1ZGUgPHd0Zi9TSEExLmg+CiAKIG5hbWVz
cGFjZSBXVEYgewogbmFtZXNwYWNlIFBlcnNpc3RlbmNlIHsKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L3NwaS9jZi9DRkJ1bmRsZVNQSS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3NwaS9j
Zi9DRkJ1bmRsZVNQSS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi9zcGkv
Y2YvQ0ZCdW5kbGVTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBDRkJ1bmRsZVNQSV9oCi0jZGVmaW5lIENGQnVuZGxl
U1BJX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8Q29yZUZvdW5kYXRpb24vQ29yZUZvdW5k
YXRpb24uaD4KIApAQCAtNDYsNSArNDUsMyBAQCBCb29sZWFuIENGQnVuZGxlR2V0TG9jYWxpemF0
aW9uSW5mb0ZvckxvCiBDRlN0cmluZ1JlZiBDRkJ1bmRsZUNvcHlMb2NhbGl6YXRpb25Gb3JMb2Nh
bGl6YXRpb25JbmZvKFNJbnQzMiBsYW5ndWFnZUNvZGUsIFNJbnQzMiByZWdpb25Db2RlLCBTSW50
MzIgc2NyaXB0Q29kZSwgQ0ZTdHJpbmdFbmNvZGluZyBzdHJpbmdFbmNvZGluZyk7CiAKIFdURl9F
WFRFUk5fQ19FTkQKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9zcGkvZGFyd2luL0Nv
bW1vbkNyeXB0b1NQSS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3NwaS9kYXJ3aW4v
Q29tbW9uQ3J5cHRvU1BJLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3Nw
aS9kYXJ3aW4vQ29tbW9uQ3J5cHRvU1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcg
QEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBDb21tb25DcnlwdG9TUElfaAotI2Rl
ZmluZSBDb21tb25DcnlwdG9TUElfaAorI3ByYWdtYSBvbmNlCiAKICNpZiBPUyhEQVJXSU4pCiAK
QEAgLTQyLDUgKzQxLDMgQEAgaW50IENDUmFuZG9tQ29weUJ5dGVzKENDUmFuZG9tUmVmIHJuZCwg
dgogV1RGX0VYVEVSTl9DX0VORAogCiAjZW5kaWYgLy8gT1MoREFSV0lOKQotCi0jZW5kaWYgLyog
Q29tbW9uQ3J5cHRvU1BJX2ggKi8KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvQVNDSUlGYXN0
UGF0aC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvQVNDSUlGYXN0UGF0aC5o
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0FTQ0lJRmFzdFBhdGgu
aAkod29ya2luZyBjb3B5KQpAQCAtMTksOCArMTksNyBAQAogICoKICAqLwogCi0jaWZuZGVmIEFT
Q0lJRmFzdFBhdGhfaAotI2RlZmluZSBBU0NJSUZhc3RQYXRoX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8dW5pY29kZS91dHlwZXMuaD4KQEAgLTE5NSw1
ICsxOTQsMyBAQCBpbmxpbmUgdm9pZCBjb3B5TENoYXJzRnJvbVVDaGFyU291cmNlKExDCiB9IC8v
IG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpjaGFyYWN0ZXJzQXJlQWxsQVNDSUk7Ci0KLSNl
bmRpZiAvLyBBU0NJSUZhc3RQYXRoX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvQVNDSUlM
aXRlcmFsLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0FTQ0lJTGl0ZXJh
bC5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvQVNDSUlMaXRl
cmFsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJBU0NJSUxpdGVyYWwuaCIKKyNpbmNsdWRlIDx3dGYvdGV4
dC9BU0NJSUxpdGVyYWwuaD4KIAogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgogCkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZy5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmcuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIx
LDEzICsyMSwxMyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJBdG9t
aWNTdHJpbmcuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KIAogI2luY2x1
ZGUgPG11dGV4PgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW5jbHVkZSA8d3RmL3Rl
eHQvSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbi5oPgogCi0jaW5jbHVkZSAiZHRvYS5oIgorI2lu
Y2x1ZGUgPHd0Zi9kdG9hLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi90ZXh0L0F0b21pY1N0cmluZy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3Rl
eHQvQXRvbWljU3RyaW5nLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3Rl
eHQvQXRvbWljU3RyaW5nLmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDggKzE4LDcgQEAKICAqCiAg
Ki8KIAotI2lmbmRlZiBBdG9taWNTdHJpbmdfaAotI2RlZmluZSBBdG9taWNTdHJpbmdfaAorI3By
YWdtYSBvbmNlCiAKICNpbmNsdWRlIDx1dGlsaXR5PgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ry
b3llZC5oPgpAQCAtMzYzLDUgKzM2MiwzIEBAIHVzaW5nIFdURjo6eG1sbnNBdG9tOwogI2VuZGlm
CiAKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb25jYXRlbmF0ZS5oPgotCi0jZW5kaWYgLy8g
QXRvbWljU3RyaW5nX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWljU3RyaW5nSGFz
aC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWljU3RyaW5nSGFzaC5o
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ0hh
c2guaAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwog
Ci0jaWZuZGVmIEF0b21pY1N0cmluZ0hhc2hfaAotI2RlZmluZSBBdG9taWNTdHJpbmdIYXNoX2gK
KyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+CiAjaW5j
bHVkZSA8d3RmL0hhc2hUcmFpdHMuaD4KQEAgLTY3LDUgKzY2LDMgQEAgbmFtZXNwYWNlIFdURiB7
CiB9CiAKIHVzaW5nIFdURjo6QXRvbWljU3RyaW5nSGFzaDsKLQotI2VuZGlmCkluZGV4OiBTb3Vy
Y2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ0ltcGwuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL3RleHQvQXRvbWljU3RyaW5nSW1wbC5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysr
IFNvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWljU3RyaW5nSW1wbC5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTIyLDIwICsyMiwyMCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJBdG9taWNTdHJpbmdJbXBsLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nSW1w
bC5oPgogCi0jaW5jbHVkZSAiQXRvbWljU3RyaW5nVGFibGUuaCIKLSNpbmNsdWRlICJDb21tYVBy
aW50ZXIuaCIKLSNpbmNsdWRlICJEYXRhTG9nLmgiCi0jaW5jbHVkZSAiSGFzaFNldC5oIgotI2lu
Y2x1ZGUgIkludGVnZXJUb1N0cmluZ0NvbnZlcnNpb24uaCIKLSNpbmNsdWRlICJTdHJpbmdIYXNo
LmgiCi0jaW5jbHVkZSAiU3RyaW5nUHJpbnRTdHJlYW0uaCIKLSNpbmNsdWRlICJUaHJlYWRpbmcu
aCIKKyNpbmNsdWRlIDx3dGYvQ29tbWFQcmludGVyLmg+CisjaW5jbHVkZSA8d3RmL0RhdGFMb2cu
aD4KKyNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgorI2luY2x1ZGUgPHd0Zi9TdHJpbmdQcmludFN0
cmVhbS5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9B
dG9taWNTdHJpbmdUYWJsZS5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L0ludGVnZXJUb1N0cmluZ0Nv
bnZlcnNpb24uaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CiAjaW5jbHVkZSA8
d3RmL3VuaWNvZGUvVVRGOC5oPgogCiAjaWYgVVNFKFdFQl9USFJFQUQpCi0jaW5jbHVkZSAiTG9j
ay5oIgorI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAjZW5kaWYKIAogbmFtZXNwYWNlIFdURiB7Cklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ0ltcGwuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ0ltcGwuaAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmdJbXBsLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTE4LDggKzE4LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBBdG9taWNTdHJpbmdJbXBs
X2gKLSNkZWZpbmUgQXRvbWljU3RyaW5nSW1wbF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUg
PHd0Zi90ZXh0L1VuaXF1ZWRTdHJpbmdJbXBsLmg+CiAKQEAgLTEyMSw1ICsxMjAsMyBAQCBWYWx1
ZUNoZWNrPGNvbnN0IEF0b21pY1N0cmluZ0ltcGwqPiB7CiB9CiAKIHVzaW5nIFdURjo6QXRvbWlj
U3RyaW5nSW1wbDsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0
cmluZ1RhYmxlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0
cmluZ1RhYmxlLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9B
dG9taWNTdHJpbmdUYWJsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIxLDcgKzIxLDcgQEAKICAq
LwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQXRvbWljU3RyaW5nVGFibGUuaCIK
KyNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmdUYWJsZS5oPgogCiAjaW5jbHVkZSA8d3Rm
L0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgpJbmRleDogU291cmNlL1dU
Ri93dGYvdGV4dC9BdG9taWNTdHJpbmdUYWJsZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL3RleHQvQXRvbWljU3RyaW5nVGFibGUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNl
L1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmdUYWJsZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw4
ICsyMCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX0F0b21pY1N0cmluZ1RhYmxlX2gKLSNk
ZWZpbmUgV1RGX0F0b21pY1N0cmluZ1RhYmxlX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8
d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdJbXBsLmg+CkBAIC00Myw1
ICs0MiwzIEBAIHByaXZhdGU6CiAKIH0KIHVzaW5nIFdURjo6QXRvbWljU3RyaW5nVGFibGU7Ci0K
LSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9CYXNlNjQuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvQmFzZTY0LmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysg
U291cmNlL1dURi93dGYvdGV4dC9CYXNlNjQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMiw3ICsy
Miw3IEBACiAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQmFzZTY0LmgiCisj
aW5jbHVkZSA8d3RmL3RleHQvQmFzZTY0Lmg+CiAKICNpbmNsdWRlIDxsaW1pdHMuaD4KICNpbmNs
dWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvQ1N0
cmluZy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9DU3RyaW5nLmNwcAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9DU3RyaW5nLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjUsNyArMjUsNyBAQAogCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNp
bmNsdWRlICJDU3RyaW5nLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogCiAjaW5j
bHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaGVyLmg+CkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0NTdHJpbmcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi90ZXh0L0NTdHJpbmcuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYv
dGV4dC9DU3RyaW5nLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCiAgKi8KIAotI2lmbmRlZiBDU3RyaW5nX2gKLSNkZWZpbmUgQ1N0cmluZ19oCisjcHJh
Z21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9IYXNoRnVuY3Rpb25zLmg+CiAjaW5jbHVkZSA8d3Rm
L0hhc2hUcmFpdHMuaD4KQEAgLTExMCw1ICsxMDksMyBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBIYXNo
VHJhaXRzPENTdHJpbmc+IDogCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpDU3Ry
aW5nOwotCi0jZW5kaWYgLy8gQ1N0cmluZ19oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0Nv
bnZlcnNpb25Nb2RlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9Db252ZXJz
aW9uTW9kZS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0NvbnZl
cnNpb25Nb2RlLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAogICovCiAKLSNpZm5kZWYgQ29udmVyc2lvbk1vZGVfaAotI2RlZmluZSBDb252ZXJzaW9u
TW9kZV9oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTQwLDYgKzM5LDMg
QEAgdXNpbmcgV1RGOjpDb252ZXJzaW9uTW9kZTsKIHVzaW5nIFdURjo6TGVuaWVudENvbnZlcnNp
b247CiB1c2luZyBXVEY6OlN0cmljdENvbnZlcnNpb247CiB1c2luZyBXVEY6OlN0cmljdENvbnZl
cnNpb25SZXBsYWNpbmdVbnBhaXJlZFN1cnJvZ2F0ZXNXaXRoRkZGRDsKLQotI2VuZGlmIC8vIENv
bnZlcnNpb25Nb2RlX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9FeHRlcm5hbFN0cmlu
Z0ltcGwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvRXh0ZXJuYWxTdHJp
bmdJbXBsLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9FeHRl
cm5hbFN0cmluZ0ltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8K
IAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkV4dGVybmFsU3RyaW5nSW1wbC5oIgor
I2luY2x1ZGUgPHd0Zi90ZXh0L0V4dGVybmFsU3RyaW5nSW1wbC5oPgogCiBuYW1lc3BhY2UgV1RG
IHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9u
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252
ZXJzaW9uLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvSW50ZWdl
clRvU3RyaW5nQ29udmVyc2lvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOSw4ICsxOSw3IEBACiAg
KgogICovCiAKLSNpZm5kZWYgSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbl9oCi0jZGVmaW5lIElu
dGVnZXJUb1N0cmluZ0NvbnZlcnNpb25faAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYv
dGV4dC9MQ2hhci5oPgogCkBAIC0xMjYsNSArMTI1LDMgQEAgaW5saW5lIHVuc2lnbmVkIGxlbmd0
aE9mTnVtYmVyQXNTdHJpbmdVbgogfQogCiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8v
IEludGVnZXJUb1N0cmluZ0NvbnZlcnNpb25faApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9M
Q2hhci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvTENoYXIuaAkocmV2aXNp
b24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9MQ2hhci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNCwxMiArMjQsOSBAQAogICoKICAqLwogCi0jaWZuZGVmIExDaGFyX2gKLSNkZWZpbmUg
TENoYXJfaAorI3ByYWdtYSBvbmNlCiAKIC8vIEEgdHlwZSB0byBob2xkIGEgc2luZ2xlIExhdGlu
LTEgY2hhcmFjdGVyLgogLy8gVGhpcyB0eXBlIGNvbXBsZW1lbnRzIHRoZSBVQ2hhciB0eXBlIHRo
YXQgd2UgZ2V0IGZyb20gdGhlIElDVSBsaWJyYXJ5LgogLy8gVG8gcGFyYWxsZWwgdGhhdCB0eXBl
LCB3ZSBwdXQgdGhpcyBvbmUgaW4gdGhlIGdsb2JhbCBuYW1lc3BhY2UuCiB0eXBlZGVmIHVuc2ln
bmVkIGNoYXIgTENoYXI7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9MaW5l
RW5kaW5nLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0xpbmVFbmRpbmcu
Y3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0xpbmVFbmRpbmcu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMCw3ICszMCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNv
bmZpZy5oIgotI2luY2x1ZGUgIkxpbmVFbmRpbmcuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9MaW5l
RW5kaW5nLmg+CiAKICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL3RleHQvU3RyaW5nQnVmZmVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4
dC9TdHJpbmdCdWZmZXIuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4
dC9TdHJpbmdCdWZmZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICAqLwogCi0jaWZuZGVmIFN0cmluZ0J1ZmZlcl9oCi0jZGVmaW5lIFN0cmluZ0J1ZmZl
cl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGxpbWl0cz4KICNpbmNsdWRlIDx1bmljb2Rl
L3V0eXBlcy5oPgpAQCAtODcsNSArODYsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RG
CiAKIHVzaW5nIFdURjo6U3RyaW5nQnVmZmVyOwotCi0jZW5kaWYgLy8gU3RyaW5nQnVmZmVyX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQnVpbGRlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjUsMTIgKzI1LDEyIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIlN0cmluZ0J1aWxkZXIuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+
CiAKLSNpbmNsdWRlICJJbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmgiCi0jaW5jbHVkZSAiTWF0
aEV4dHJhcy5oIgotI2luY2x1ZGUgIldURlN0cmluZy5oIgogI2luY2x1ZGUgPHd0Zi9kdG9hLmg+
CisjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJp
bmcuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmg+CiAK
IG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0J1aWxk
ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTI0LDggKzI0LDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAK
LSNpZm5kZWYgU3RyaW5nQnVpbGRlcl9oCi0jZGVmaW5lIFN0cmluZ0J1aWxkZXJfaAorI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KICNpbmNsdWRlIDx3
dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmg+CkBAIC0zNzgsNSArMzc3LDMgQEAg
dGVtcGxhdGU8PiBzdHJ1Y3QgSW50ZWdlclRvU3RyaW5nQ29udmVycwogfSAvLyBuYW1lc3BhY2Ug
V1RGCiAKIHVzaW5nIFdURjo6U3RyaW5nQnVpbGRlcjsKLQotI2VuZGlmIC8vIFN0cmluZ0J1aWxk
ZXJfaApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVySlNPTi5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVySlNPTi5jcHAJKHJl
dmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQnVpbGRlckpTT04u
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMCw5ICsxMCw5IEBACiAgKi8KIAogI2luY2x1ZGUgImNv
bmZpZy5oIgotI2luY2x1ZGUgIlN0cmluZ0J1aWxkZXIuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9T
dHJpbmdCdWlsZGVyLmg+CiAKLSNpbmNsdWRlICJXVEZTdHJpbmcuaCIKKyNpbmNsdWRlIDx3dGYv
dGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL3RleHQvU3RyaW5nQ29tbW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4
dC9TdHJpbmdDb21tb24uaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4
dC9TdHJpbmdDb21tb24uaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgU3RyaW5nQ29tbW9u
X2gKLSNkZWZpbmUgU3RyaW5nQ29tbW9uX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8YWxn
b3JpdGhtPgogI2luY2x1ZGUgPHVuaWNvZGUvdWNoYXIuaD4KQEAgLTY1OSw1ICs2NTgsMyBAQCB0
ZW1wbGF0ZTx1bnNpZ25lZCBsb3dlcmNhc2VMZXR0ZXJzTGVuZ3RoCiAKIHVzaW5nIFdURjo6ZXF1
YWxJZ25vcmluZ0FTQ0lJQ2FzZTsKIHVzaW5nIFdURjo6ZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJ
SUNhc2U7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdDb25jYXRl
bmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQ29uY2F0ZW5h
dGUuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdDb25j
YXRlbmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMywxOSArMjMsMTIgQEAKICAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAogICovCiAKLSNpZm5kZWYgU3RyaW5nQ29uY2F0ZW5hdGVfaAotI2RlZmluZSBTdHJpbmdD
b25jYXRlbmF0ZV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1
ZGUgPHd0Zi9DaGVja2VkQXJpdGhtZXRpYy5oPgotCi0jaWZuZGVmIEF0b21pY1N0cmluZ19oCiAj
aW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+Ci0jZW5kaWYKLQotI2lmbmRlZiBTdHJp
bmdWaWV3X2gKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdWaWV3Lmg+Ci0jZW5kaWYKIAogLy8g
VGhpcyBtYWNybyBpcyBoZWxwZnVsIGZvciB0ZXN0aW5nIGhvdyBtYW55IGludGVybWVkaWF0ZSBT
dHJpbmdzIGFyZSBjcmVhdGVkIHdoaWxlIGV2YWx1YXRpbmcgYW4KIC8vIGV4cHJlc3Npb24gY29u
dGFpbmluZyBvcGVyYXRvcisuCkBAIC0zNDMsNCArMzM2LDMgQEAgdXNpbmcgV1RGOjptYWtlU3Ry
aW5nOwogdXNpbmcgV1RGOjp0cnlNYWtlU3RyaW5nOwogCiAjaW5jbHVkZSA8d3RmL3RleHQvU3Ry
aW5nT3BlcmF0b3JzLmg+Ci0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5n
SGFzaC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSGFzaC5oCShy
ZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0hhc2guaAkod29y
a2luZyBjb3B5KQpAQCAtMTksOCArMTksNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFN0cmluZ0hh
c2hfaAotI2RlZmluZSBTdHJpbmdIYXNoX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3Rm
L0hhc2hUcmFpdHMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KQEAgLTIw
MCw1ICsxOTksMyBAQCB1c2luZyBXVEY6OkFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaDsKIHVzaW5n
IFdURjo6QVNDSUlDYXNlSW5zZW5zaXRpdmVTdHJpbmdWaWV3SGFzaFRyYW5zbGF0b3I7CiB1c2lu
ZyBXVEY6OkFscmVhZHlIYXNoZWQ7CiB1c2luZyBXVEY6OlN0cmluZ0hhc2g7Ci0KLSNlbmRpZgpJ
bmRleDogU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBT
b3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMywx
NSArMjMsMTUgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiU3RyaW5n
SW1wbC5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0ltcGwuaD4KIAotI2luY2x1ZGUgIkF0
b21pY1N0cmluZy5oIgotI2luY2x1ZGUgIkV4dGVybmFsU3RyaW5nSW1wbC5oIgotI2luY2x1ZGUg
IlN0cmluZ0J1ZmZlci5oIgotI2luY2x1ZGUgIlN0cmluZ0hhc2guaCIKICNpbmNsdWRlIDx3dGYv
UHJvY2Vzc0lELmg+CiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgorI2luY2x1ZGUgPHd0
Zi90ZXh0L0F0b21pY1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KKyNp
bmNsdWRlIDx3dGYvdGV4dC9FeHRlcm5hbFN0cmluZ0ltcGwuaD4KKyNpbmNsdWRlIDx3dGYvdGV4
dC9TdHJpbmdCdWZmZXIuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CiAjaW5j
bHVkZSA8d3RmL3RleHQvU3RyaW5nVmlldy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N5bWJvbElt
cGwuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TeW1ib2xSZWdpc3RyeS5oPgpJbmRleDogU291cmNl
L1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
dGV4dC9TdHJpbmdJbXBsLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3Rl
eHQvU3RyaW5nSW1wbC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw4ICsyMCw3IEBACiAgKgogICov
CiAKLSNpZm5kZWYgU3RyaW5nSW1wbF9oCi0jZGVmaW5lIFN0cmluZ0ltcGxfaAorI3ByYWdtYSBv
bmNlCiAKICNpbmNsdWRlIDxsaW1pdHMuaD4KICNpbmNsdWRlIDx1bmljb2RlL3VzdHJpbmcuaD4K
QEAgLTEyMTcsNSArMTIxNiwzIEBAIHRlbXBsYXRlPHVuc2lnbmVkIGxlbmd0aD4gaW5saW5lIGJv
b2wgZXEKIHVzaW5nIFdURjo6U3RhdGljU3RyaW5nSW1wbDsKIHVzaW5nIFdURjo6U3RyaW5nSW1w
bDsKIHVzaW5nIFdURjo6ZXF1YWw7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4
dC9TdHJpbmdPcGVyYXRvcnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0
cmluZ09wZXJhdG9ycy5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0
L1N0cmluZ09wZXJhdG9ycy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOSw4ICsxOSw3IEBACiAgKgog
ICovCiAKLSNpZm5kZWYgU3RyaW5nT3BlcmF0b3JzX2gKLSNkZWZpbmUgU3RyaW5nT3BlcmF0b3Jz
X2gKKyNwcmFnbWEgb25jZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMTY0LDUgKzE2MywzIEBA
IFN0cmluZ0FwcGVuZDxTdHJpbmdBcHBlbmQ8VSwgVj4sIFc+IG9wZXIKIH0KIAogfSAvLyBuYW1l
c3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBTdHJpbmdPcGVyYXRvcnNfaApJbmRleDogU291cmNlL1dU
Ri93dGYvdGV4dC9TdHJpbmdWaWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90
ZXh0L1N0cmluZ1ZpZXcuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90
ZXh0L1N0cmluZ1ZpZXcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw3ICsyNSw3IEBAIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQkkKICovCiAKICNpbmNsdWRlICJjb25m
aWcuaCIKLSNpbmNsdWRlICJTdHJpbmdWaWV3LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5n
Vmlldy5oPgogCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8dW5pY29kZS91YnJrLmg+Cklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ1ZpZXcuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi90ZXh0L1N0cmluZ1ZpZXcuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNl
L1dURi93dGYvdGV4dC9TdHJpbmdWaWV3LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcg
QEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFN0
cmluZ1ZpZXdfaAotI2RlZmluZSBTdHJpbmdWaWV3X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVk
ZSA8bGltaXRzLmg+CiAjaW5jbHVkZSA8dW5pY29kZS91dHlwZXMuaD4KQEAgLTEwMDAsNSArOTk5
LDMgQEAgdGVtcGxhdGU8dW5zaWduZWQgbGVuZ3RoPiBpbmxpbmUgYm9vbCBlcQogdXNpbmcgV1RG
OjphcHBlbmQ7CiB1c2luZyBXVEY6OmVxdWFsOwogdXNpbmcgV1RGOjpTdHJpbmdWaWV3OwotCi0j
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3ltYm9sSW1wbC5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9TeW1ib2xJbXBsLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvdGV4dC9TeW1ib2xJbXBsLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJT
eW1ib2xJbXBsLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvU3ltYm9sSW1wbC5oPgogCiBuYW1lc3Bh
Y2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9TeW1ib2xSZWdpc3RyeS5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9TeW1ib2xSZWdpc3RyeS5jcHAJKHJl
dmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvU3ltYm9sUmVnaXN0cnkuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgIlN5bWJvbFJlZ2lzdHJ5LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvU3lt
Ym9sUmVnaXN0cnkuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L3RleHQvU3ltYm9sUmVnaXN0cnkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0
L1N5bWJvbFJlZ2lzdHJ5LmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3Rl
eHQvU3ltYm9sUmVnaXN0cnkuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX1N5bWJv
bFJlZ2lzdHJ5X2gKLSNkZWZpbmUgV1RGX1N5bWJvbFJlZ2lzdHJ5X2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNo
Lmg+CkBAIC0xMDgsNSArMTA3LDMgQEAgaW5saW5lIFN5bWJvbFJlZ2lzdHJ5S2V5OjpTeW1ib2xS
ZWdpc3RyeQogfQogCiB9Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9UZXh0
QnJlYWtJdGVyYXRvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9UZXh0
QnJlYWtJdGVyYXRvci5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3Rl
eHQvVGV4dEJyZWFrSXRlcmF0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMCwxMiArMjAsMTIg
QEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVGV4dEJyZWFrSXRlcmF0
b3IuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvci5oPgogCi0jaW5jbHVk
ZSAiTGluZUJyZWFrSXRlcmF0b3JQb29sSUNVLmgiCi0jaW5jbHVkZSAiVGV4dEJyZWFrSXRlcmF0
b3JJbnRlcm5hbElDVS5oIgotI2luY2x1ZGUgIlVUZXh0UHJvdmlkZXJMYXRpbjEuaCIKLSNpbmNs
dWRlICJVVGV4dFByb3ZpZGVyVVRGMTYuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9MaW5lQnJlYWtJ
dGVyYXRvclBvb2xJQ1UuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvcklu
dGVybmFsSUNVLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJMYXRpbjEu
aD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2Lmg+CiAjaW5jbHVk
ZSA8YXRvbWljPgogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHVuaWNvZGUvdWJyay5oPgpJ
bmRleDogU291cmNlL1dURi93dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvci5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dEJyZWFrSXRlcmF0b3IuaAkocmV2aXNpb24gMjM3
MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvci5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yMSw5ICsyMSw5IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiU3Ry
aW5nVmlldy5oIgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogI2luY2x1ZGUgPHd0
Zi9WYXJpYW50Lmg+CisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nVmlldy5oPgogI2luY2x1ZGUg
PHd0Zi90ZXh0L2ljdS9UZXh0QnJlYWtJdGVyYXRvcklDVS5oPgogCiAjaWYgUExBVEZPUk0oTUFD
KSB8fCBQTEFURk9STShJT1MpCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1RleHRCcmVha0l0
ZXJhdG9ySW50ZXJuYWxJQ1UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1Rl
eHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1UuaAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNl
L1dURi93dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTE4LDggKzE4LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBUZXh0QnJlYWtJdGVyYXRv
ckludGVybmFsSUNVX2gKLSNkZWZpbmUgVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVV9oCisj
cHJhZ21hIG9uY2UKIAogLy8gRklYTUU6IE5vdyB0aGF0IHRoaXMgaGFuZGxlcyBsb2NhbGVzIGZv
ciBJQ1UsIG5vdCBqdXN0IGZvciB0ZXh0IGJyZWFraW5nLAogLy8gdGhpcyBmaWxlIGFuZCB0aGUg
dmFyaW91cyBpbXBsZW1lbnRhdGlvbiBmaWxlcyBzaG91bGQgYmUgcmVuYW1lZC4KQEAgLTMzLDUg
KzMyLDMgQEAgV1RGX0VYUE9SVF9QUklWQVRFIGNvbnN0IGNoYXIqIGN1cnJlbnRUZQogCiB1c2lu
ZyBXVEY6OmN1cnJlbnRTZWFyY2hMb2NhbGVJRDsKIHVzaW5nIFdURjo6Y3VycmVudFRleHRCcmVh
a0xvY2FsZUlEOwotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dFBvc2l0
aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9UZXh0UG9zaXRpb24uaAko
cmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9UZXh0UG9zaXRpb24uaAko
d29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1
ZGUgIk9yZGluYWxOdW1iZXIuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9PcmRpbmFsTnVtYmVyLmg+
CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1RleHRTdHJl
YW0uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dFN0cmVhbS5jcHAJ
KHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dFN0cmVhbS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiVGV4dFN0cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRTdHJl
YW0uaD4KIAogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQv
V1RGU3RyaW5nLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1VuaXF1ZWRTdHJpbmdJbXBs
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9VbmlxdWVkU3RyaW5nSW1wbC5o
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1VuaXF1ZWRTdHJpbmdJ
bXBsLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFVuaXF1ZWRTdHJpbmdJbXBsX2gKLSNk
ZWZpbmUgVW5pcXVlZFN0cmluZ0ltcGxfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYv
dGV4dC9TdHJpbmdJbXBsLmg+CiAKQEAgLTYxLDUgKzYwLDMgQEAgVmFsdWVDaGVjazxjb25zdCBV
bmlxdWVkU3RyaW5nSW1wbCo+IHsKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlVu
aXF1ZWRTdHJpbmdJbXBsOwotCi0jZW5kaWYgLy8gVW5pcXVlZFN0cmluZ0ltcGxfaApJbmRleDog
U291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL3RleHQvV1RGU3RyaW5nLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dU
Ri93dGYvdGV4dC9XVEZTdHJpbmcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw5ICsyMCw4IEBA
CiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIldURlN0cmluZy5oIgorI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCi0jaW5jbHVkZSAiSW50ZWdlclRvU3RyaW5n
Q29udmVyc2lvbi5oIgogI2luY2x1ZGUgPHN0ZGFyZy5oPgogI2luY2x1ZGUgPHd0Zi9BU0NJSUNU
eXBlLmg+CiAjaW5jbHVkZSA8d3RmL0RhdGFMb2cuaD4KQEAgLTMyLDYgKzMxLDcgQEAKICNpbmNs
dWRlIDx3dGYvVmVjdG9yLmg+CiAjaW5jbHVkZSA8d3RmL2R0b2EuaD4KICNpbmNsdWRlIDx3dGYv
dGV4dC9DU3RyaW5nLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvSW50ZWdlclRvU3RyaW5nQ29udmVy
c2lvbi5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ1RvSW50ZWdlckNvbnZlcnNpb24uaD4K
ICNpbmNsdWRlIDx3dGYvdW5pY29kZS9DaGFyYWN0ZXJOYW1lcy5oPgogI2luY2x1ZGUgPHd0Zi91
bmljb2RlL1VURjguaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaAkocmV2aXNpb24gMjM3
MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaAkod29ya2luZyBjb3B5KQpA
QCAtMTksOCArMTksNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURlN0cmluZ19oCi0jZGVmaW5l
IFdURlN0cmluZ19oCisjcHJhZ21hIG9uY2UKIAogLy8gVGhpcyBmaWxlIHdvdWxkIGJlIGNhbGxl
ZCBTdHJpbmcuaCwgYnV0IHRoYXQgY29uZmxpY3RzIHdpdGggPHN0cmluZy5oPgogLy8gb24gc3lz
dGVtcyB3aXRob3V0IGNhc2Utc2Vuc2l0aXZlIGZpbGUgc3lzdGVtcy4KQEAgLTY1Nyw1ICs2NTYs
MyBAQCB1c2luZyBXVEY6OmlzU3BhY2VPck5ld2xpbmU7CiB1c2luZyBXVEY6OnJldmVyc2VGaW5k
OwogCiAjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+Ci0KLSNlbmRpZgpJbmRleDog
U291cmNlL1dURi93dGYvdGV4dC9jb2NvYS9TdHJpbmdDb2NvYS5tbQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi90ZXh0L2NvY29hL1N0cmluZ0NvY29hLm1tCShyZXZpc2lvbiAyMzcwNzAp
CisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L2NvY29hL1N0cmluZ0NvY29hLm1tCSh3b3JraW5nIGNv
cHkpCkBAIC0xOSw3ICsxOSw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIldURlN0cmluZy5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiAjaW5j
bHVkZSA8Q29yZUZvdW5kYXRpb24vQ0ZTdHJpbmcuaD4KIApJbmRleDogU291cmNlL1dURi93dGYv
dGV4dC9jb2NvYS9TdHJpbmdWaWV3Q29jb2EubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvdGV4dC9jb2NvYS9TdHJpbmdWaWV3Q29jb2EubW0JKHJldmlzaW9uIDIzNzA3MCkKKysrIFNv
dXJjZS9XVEYvd3RmL3RleHQvY29jb2EvU3RyaW5nVmlld0NvY29hLm1tCSh3b3JraW5nIGNvcHkp
CkBAIC0yNCw5ICsyNCw5IEBACiAgKi8KIAogI2ltcG9ydCAiY29uZmlnLmgiCi0jaW1wb3J0ICJT
dHJpbmdWaWV3LmgiCisjaW1wb3J0IDx3dGYvdGV4dC9TdHJpbmdWaWV3Lmg+CiAKLSNpbXBvcnQg
IlJldGFpblB0ci5oIgorI2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgogCiBuYW1lc3BhY2UgV1RG
IHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9jb2NvYS9UZXh0QnJlYWtJdGVyYXRvcklu
dGVybmFsSUNVQ29jb2EuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvY29j
b2EvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVUNvY29hLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvdGV4dC9jb2NvYS9UZXh0QnJlYWtJdGVyYXRvckludGVybmFs
SUNVQ29jb2EuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xOSwxMCArMTksMTAgQEAKICAqLwogCiAj
aW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElD
VS5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1UuaD4K
IAotI2luY2x1ZGUgIlRleHRCcmVha0l0ZXJhdG9yLmgiCiAjaW5jbHVkZSA8d3RmL1JldGFpblB0
ci5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9yLmg+CiAKIG5hbWVzcGFj
ZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmNw
cAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92
aWRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVVRleHRQcm92aWRlci5oIgorI2luY2x1ZGUgPHd0Zi90
ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmg+CiAKICNpbmNsdWRlIDxhbGdvcml0aG0+CiAjaW5jbHVk
ZSA8c3RyaW5nLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVy
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5o
CShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3Zp
ZGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFVUZXh0UHJvdmlkZXJfaAotI2RlZmlu
ZSBVVGV4dFByb3ZpZGVyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8dW5pY29kZS91dGV4
dC5oPgogCkBAIC0xMDcsNSArMTA2LDMgQEAgaW5saW5lIGJvb2wgdVRleHRBY2Nlc3NJbkNodW5r
T3JPdXRPZlJhbgogfQogCiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFVUZXh0UHJv
dmlkZXJfaApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlckxhdGlu
MS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRl
ckxhdGluMS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1
L1VUZXh0UHJvdmlkZXJMYXRpbjEuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMCArMjQsMTAg
QEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVVRleHRQcm92aWRlckxh
dGluMS5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyTGF0aW4xLmg+CiAK
LSNpbmNsdWRlICJVVGV4dFByb3ZpZGVyLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSW1w
bC5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmg+CiAKIG5hbWVzcGFj
ZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyTGF0
aW4xLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRl
ckxhdGluMS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9V
VGV4dFByb3ZpZGVyTGF0aW4xLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFVUZXh0UHJv
dmlkZXJMYXRpbjFfaAotI2RlZmluZSBVVGV4dFByb3ZpZGVyTGF0aW4xX2gKKyNwcmFnbWEgb25j
ZQogCiAjaW5jbHVkZSA8dW5pY29kZS91dGV4dC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0xDaGFy
Lmg+CkBAIC00Miw1ICs0MSwzIEBAIFdURl9FWFBPUlQgVVRleHQqIG9wZW5MYXRpbjFVVGV4dFBy
b3ZpZGUKIFVUZXh0KiBvcGVuTGF0aW4xQ29udGV4dEF3YXJlVVRleHRQcm92aWRlcihVVGV4dFdp
dGhCdWZmZXIqIHV0V2l0aEJ1ZmZlciwgY29uc3QgTENoYXIqIHN0cmluZywgdW5zaWduZWQgbGVu
Z3RoLCBjb25zdCBVQ2hhciogcHJpb3JDb250ZXh0LCBpbnQgcHJpb3JDb250ZXh0TGVuZ3RoLCBV
RXJyb3JDb2RlKiBzdGF0dXMpOwogCiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFVU
ZXh0UHJvdmlkZXJMYXRpbjFfaApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQ
cm92aWRlclVURjE2LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9V
VGV4dFByb3ZpZGVyVVRGMTYuY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0
Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyVVRGMTYuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwx
MCArMjQsMTAgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVVRleHRQ
cm92aWRlclVURjE2LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJVVEYx
Ni5oPgogCi0jaW5jbHVkZSAiVVRleHRQcm92aWRlci5oIgogI2luY2x1ZGUgPGFsZ29yaXRobT4K
KyNpbmNsdWRlIDx3dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5oPgogCiBuYW1lc3BhY2UgV1RG
IHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2LmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2
LmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1L1VUZXh0UHJv
dmlkZXJVVEYxNi5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBVVGV4dFByb3ZpZGVyVVRG
MTZfaAotI2RlZmluZSBVVGV4dFByb3ZpZGVyVVRGMTZfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDx1bmljb2RlL3V0ZXh0Lmg+CiAKQEAgLTMzLDUgKzMyLDMgQEAgbmFtZXNwYWNlIFdURiB7
CiBVVGV4dCogb3BlblVURjE2Q29udGV4dEF3YXJlVVRleHRQcm92aWRlcihVVGV4dCosIGNvbnN0
IFVDaGFyKiwgdW5zaWduZWQgbGVuZ3RoLCBjb25zdCBVQ2hhciogcHJpb3JDb250ZXh0LCBpbnQg
cHJpb3JDb250ZXh0TGVuZ3RoLCBVRXJyb3JDb2RlKik7CiAKIH0gLy8gbmFtZXNwYWNlIFdURgot
Ci0jZW5kaWYgLy8gVVRleHRQcm92aWRlclVURjE2X2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3Rl
eHQvdW5peC9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVVW5peC5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvdGV4dC91bml4L1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VV
bml4LmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdGV4dC91bml4L1Rl
eHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VVbml4LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTgs
NyArMTgsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUZXh0QnJl
YWtJdGVyYXRvckludGVybmFsSUNVLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dEJyZWFrSXRl
cmF0b3JJbnRlcm5hbElDVS5oPgogCiAjaW5jbHVkZSA8bG9jYWxlLmg+CiAKSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL3RleHQvd2luL1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VXaW4uY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvd2luL1RleHRCcmVha0l0ZXJhdG9ySW50
ZXJuYWxJQ1VXaW4uY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0
L3dpbi9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVV2luLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTksNyArMTksNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJU
ZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dEJy
ZWFrSXRlcmF0b3JJbnRlcm5hbElDVS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291
cmNlL1dURi93dGYvdGhyZWFkcy9CaW5hcnlTZW1hcGhvcmUuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL3RocmVhZHMvQmluYXJ5U2VtYXBob3JlLmNwcAkocmV2aXNpb24gMjM3MDcw
KQorKysgU291cmNlL1dURi93dGYvdGhyZWFkcy9CaW5hcnlTZW1hcGhvcmUuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2lu
Y2x1ZGUgIkJpbmFyeVNlbWFwaG9yZS5oIgorI2luY2x1ZGUgPHd0Zi90aHJlYWRzL0JpbmFyeVNl
bWFwaG9yZS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGhy
ZWFkcy9CaW5hcnlTZW1hcGhvcmUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90aHJl
YWRzL0JpbmFyeVNlbWFwaG9yZS5oCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0
Zi90aHJlYWRzL0JpbmFyeVNlbWFwaG9yZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBC
aW5hcnlTZW1hcGhvcmVfaAotI2RlZmluZSBCaW5hcnlTZW1hcGhvcmVfaAorI3ByYWdtYSBvbmNl
CiAKICNpbmNsdWRlIDx3dGYvQ29uZGl0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KQEAg
LTYxLDUgKzYwLDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6
OkJpbmFyeVNlbWFwaG9yZTsKLQotI2VuZGlmIC8vIEJpbmFyeVNlbWFwaG9yZV9oCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi90aHJlYWRzL1NpZ25hbHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL3RocmVhZHMvU2lnbmFscy5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9X
VEYvd3RmL3RocmVhZHMvU2lnbmFscy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcg
QEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiU2lnbmFscy5oIgorI2lu
Y2x1ZGUgPHd0Zi90aHJlYWRzL1NpZ25hbHMuaD4KIAogI2lmIFVTRShQVEhSRUFEUykgJiYgSEFW
RShNQUNISU5FX0NPTlRFWFQpCiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ2hhcmFj
dGVyTmFtZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi91bmljb2RlL0NoYXJhY3Rl
ck5hbWVzLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ2hh
cmFjdGVyTmFtZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICAqLwogCi0jaWZuZGVmIENoYXJhY3Rlck5hbWVzX2gKLSNkZWZpbmUgQ2hhcmFjdGVy
TmFtZXNfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx1bmljb2RlL3V0eXBlcy5oPgogCkBA
IC0xNjcsNSArMTY2LDMgQEAgdXNpbmcgV1RGOjpVbmljb2RlOjp6ZXJvV2lkdGhKb2luZXI7CiB1
c2luZyBXVEY6OlVuaWNvZGU6Onplcm9XaWR0aE5vQnJlYWtTcGFjZTsKIHVzaW5nIFdURjo6VW5p
Y29kZTo6emVyb1dpZHRoTm9uSm9pbmVyOwogdXNpbmcgV1RGOjpVbmljb2RlOjp6ZXJvV2lkdGhT
cGFjZTsKLQotI2VuZGlmIC8vIENoYXJhY3Rlck5hbWVzX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L3VuaWNvZGUvQ29sbGF0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi91bmljb2Rl
L0NvbGxhdG9yLmgJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUv
Q29sbGF0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIFdURl9Db2xsYXRvcl9oCi0jZGVmaW5lIFdURl9Db2xsYXRvcl9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHVuaWNvZGUvdWNvbmZpZy5oPgogI2luY2x1ZGUgPHd0
Zi9Ob25jb3B5YWJsZS5oPgpAQCAtNzUsNSArNzQsMyBAQCBXVEZfRVhQT1JUX1BSSVZBVEUgVUNo
YXJJdGVyYXRvciBjcmVhdGVJCiB9CiAKIHVzaW5nIFdURjo6Q29sbGF0b3I7Ci0KLSNlbmRpZgpJ
bmRleDogU291cmNlL1dURi93dGYvdW5pY29kZS9Db2xsYXRvckRlZmF1bHQuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ29sbGF0b3JEZWZhdWx0LmNwcAkocmV2aXNp
b24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdW5pY29kZS9Db2xsYXRvckRlZmF1bHQuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNyw3ICsyNyw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgIkNvbGxhdG9yLmgiCisjaW5jbHVkZSA8d3RmL3VuaWNvZGUvQ29sbGF0
b3IuaD4KIAogI2lmIFVDT05GSUdfTk9fQ09MTEFUSU9OCiAKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L3VuaWNvZGUvVVRGOC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdW5pY29kZS9V
VEY4LmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdW5pY29kZS9VVEY4
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjUsOSArMjUsOSBAQAogICovCiAKICNpbmNsdWRlICJj
b25maWcuaCIKLSNpbmNsdWRlICJVVEY4LmgiCisjaW5jbHVkZSA8d3RmL3VuaWNvZGUvVVRGOC5o
PgogCi0jaW5jbHVkZSAiQVNDSUlDVHlwZS5oIgorI2luY2x1ZGUgPHd0Zi9BU0NJSUNUeXBlLmg+
CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaGVyLmg+CiAjaW5jbHVkZSA8d3RmL3VuaWNv
ZGUvQ2hhcmFjdGVyTmFtZXMuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvdW5pY29kZS9VVEY4
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdW5pY29kZS9VVEY4LmgJKHJldmlzaW9u
IDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvVVRGOC5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9V
VEY4X2gKLSNkZWZpbmUgV1RGX1VURjhfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx1bmlj
b2RlL3V0eXBlcy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0xDaGFyLmg+CkBAIC04Myw1ICs4Miwz
IEBAIG5hbWVzcGFjZSBVbmljb2RlIHsKIAogfSAvLyBuYW1lc3BhY2UgVW5pY29kZQogfSAvLyBu
YW1lc3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBXVEZfVVRGOF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi91bml4L0NQVVRpbWVVbml4LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi91bml4
L0NQVVRpbWVVbml4LmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdW5p
eC9DUFVUaW1lVW5peC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ1BVVGltZS5oIgorI2luY2x1ZGUgPHd0
Zi9DUFVUaW1lLmg+CiAKICNpbmNsdWRlIDxzeXMvcmVzb3VyY2UuaD4KICNpbmNsdWRlIDxzeXMv
dGltZS5oPgpJbmRleDogU291cmNlL1dURi93dGYvdW5peC9MYW5ndWFnZVVuaXguY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3VuaXgvTGFuZ3VhZ2VVbml4LmNwcAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvdW5peC9MYW5ndWFnZVVuaXguY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0xOSw3ICsxOSw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2lu
Y2x1ZGUgIkxhbmd1YWdlLmgiCisjaW5jbHVkZSA8d3RmL0xhbmd1YWdlLmg+CiAKICNpbmNsdWRl
IDxsb2NhbGUuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi93aW4vQ1BVVGltZVdpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvd2luL0NQ
VVRpbWVXaW4uY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi93aW4vQ1BV
VGltZVdpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5j
bHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ1BVVGltZS5oIgorI2luY2x1ZGUgPHd0Zi9DUFVU
aW1lLmg+CiAKICNpbmNsdWRlIDx3aW5kb3dzLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3dp
bi9MYW5ndWFnZVdpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvd2luL0xhbmd1
YWdlV2luLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93dGYvd2luL0xhbmd1
YWdlV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNs
dWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJMYW5ndWFnZS5oIgorI2luY2x1ZGUgPHd0Zi9MYW5n
dWFnZS5oPgogCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8d2luZG93cy5oPgpJbmRleDog
U291cmNlL1dURi93dGYvd2luL01haW5UaHJlYWRXaW4uY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL3dpbi9NYWluVGhyZWFkV2luLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291
cmNlL1dURi93dGYvd2luL01haW5UaHJlYWRXaW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOCwx
MSArMjgsMTEgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTWFpblRo
cmVhZC5oIgorI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CiAKLSNpbmNsdWRlICJBc3NlcnRp
b25zLmgiCi0jaW5jbHVkZSAiVGhyZWFkaW5nLmgiCi0jaW5jbHVkZSAiV2luZG93c0V4dHJhcy5o
IgorI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZGluZy5o
PgorI2luY2x1ZGUgPHd0Zi9XaW5kb3dzRXh0cmFzLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi93aW4vTWVtb3J5Rm9vdHByaW50V2luLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi93aW4vTWVtb3J5Rm9vdHByaW50V2luLmNwcAkocmV2aXNpb24g
MjM3MDcwKQorKysgU291cmNlL1dURi93dGYvd2luL01lbW9yeUZvb3RwcmludFdpbi5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgi
Ci0jaW5jbHVkZSAiTWVtb3J5Rm9vdHByaW50LmgiCisjaW5jbHVkZSA8d3RmL01lbW9yeUZvb3Rw
cmludC5oPgogCiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPHR5cGVfdHJhaXRzPgpJ
bmRleDogU291cmNlL1dURi93dGYvd2luL01lbW9yeVByZXNzdXJlSGFuZGxlcldpbi5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvd2luL01lbW9yeVByZXNzdXJlSGFuZGxlcldpbi5j
cHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFNvdXJjZS9XVEYvd3RmL3dpbi9NZW1vcnlQcmVzc3Vy
ZUhhbmRsZXJXaW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAog
I2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk1lbW9yeVByZXNzdXJlSGFuZGxlci5oIgor
I2luY2x1ZGUgPHd0Zi9NZW1vcnlQcmVzc3VyZUhhbmRsZXIuaD4KIAogI2luY2x1ZGUgPHBzYXBp
Lmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi93aW4vUnVuTG9vcFdpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvd2luL1J1
bkxvb3BXaW4uY3BwCShyZXZpc2lvbiAyMzcwNzApCisrKyBTb3VyY2UvV1RGL3d0Zi93aW4vUnVu
TG9vcFdpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5j
bHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiUnVuTG9vcC5oIgorI2luY2x1ZGUgPHd0Zi9SdW5M
b29wLmg+CiAKICNpbmNsdWRlIDx3dGYvV2luZG93c0V4dHJhcy5oPgogCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi93aW4vV29ya1F1ZXVlV2luLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi93aW4vV29ya1F1ZXVlV2luLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgU291cmNlL1dURi93
dGYvd2luL1dvcmtRdWV1ZVdpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAK
ICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya1F1ZXVlLmgiCisjaW5j
bHVkZSA8d3RmL1dvcmtRdWV1ZS5oPgogCiAjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KICNp
bmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzcwNzIpCisrKyBUb29scy9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw0NSBAQAorMjAxOC0xMC0xMiAgQWxleCBDaHJp
c3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBwcmFnbWEg
b25jZSBpbiBXVEYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE5MDUyNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogRHVtcFJlbmRlclRyZWUvVGVzdFJ1bm5lci5jcHA6CisgICAgICAgIChUZXN0UnVubmVy
OjpxdWV1ZUxvYWRIVE1MU3RyaW5nKToKKyAgICAgICAgKFRlc3RSdW5uZXI6OnF1ZXVlTG9hZEFs
dGVybmF0ZUhUTUxTdHJpbmcpOgorICAgICAgICAoVGVzdFJ1bm5lcjo6cXVldWVCYWNrTmF2aWdh
dGlvbik6CisgICAgICAgIChUZXN0UnVubmVyOjpxdWV1ZUZvcndhcmROYXZpZ2F0aW9uKToKKyAg
ICAgICAgKFRlc3RSdW5uZXI6OnF1ZXVlTG9hZGluZ1NjcmlwdCk6CisgICAgICAgIChUZXN0UnVu
bmVyOjpxdWV1ZU5vbkxvYWRpbmdTY3JpcHQpOgorICAgICAgICAoVGVzdFJ1bm5lcjo6cXVldWVS
ZWxvYWQpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL1dvcmtRdWV1ZS5jcHA6CisgICAgICAg
IChEUlRXb3JrUXVldWU6OnNpbmdsZXRvbik6CisgICAgICAgIChEUlRXb3JrUXVldWU6OkRSVFdv
cmtRdWV1ZSk6CisgICAgICAgIChEUlRXb3JrUXVldWU6OnF1ZXVlKToKKyAgICAgICAgKERSVFdv
cmtRdWV1ZTo6ZGVxdWV1ZSk6CisgICAgICAgIChEUlRXb3JrUXVldWU6OmNvdW50KToKKyAgICAg
ICAgKERSVFdvcmtRdWV1ZTo6Y2xlYXIpOgorICAgICAgICAoRFJUV29ya1F1ZXVlOjpwcm9jZXNz
V29yayk6CisgICAgICAgIChXb3JrUXVldWU6OnNpbmdsZXRvbik6IERlbGV0ZWQuCisgICAgICAg
IChXb3JrUXVldWU6OldvcmtRdWV1ZSk6IERlbGV0ZWQuCisgICAgICAgIChXb3JrUXVldWU6OnF1
ZXVlKTogRGVsZXRlZC4KKyAgICAgICAgKFdvcmtRdWV1ZTo6ZGVxdWV1ZSk6IERlbGV0ZWQuCisg
ICAgICAgIChXb3JrUXVldWU6OmNvdW50KTogRGVsZXRlZC4KKyAgICAgICAgKFdvcmtRdWV1ZTo6
Y2xlYXIpOiBEZWxldGVkLgorICAgICAgICAoV29ya1F1ZXVlOjpwcm9jZXNzV29yayk6IERlbGV0
ZWQuCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvV29ya1F1ZXVlLmg6CisgICAgICAgIChXb3Jr
UXVldWU6OnNldEZyb3plbik6IERlbGV0ZWQuCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFj
L0R1bXBSZW5kZXJUcmVlLm1tOgorICAgICAgICAocnVuVGVzdCk6CisgICAgICAgICogRHVtcFJl
bmRlclRyZWUvbWFjL0ZyYW1lTG9hZERlbGVnYXRlLm1tOgorICAgICAgICAoLVtGcmFtZUxvYWRE
ZWxlZ2F0ZSBwcm9jZXNzV29yazpdKToKKyAgICAgICAgKC1bRnJhbWVMb2FkRGVsZWdhdGUgd2Vi
Vmlldzpsb2NhdGlvbkNoYW5nZURvbmU6Zm9yRGF0YVNvdXJjZTpdKToKKyAgICAgICAgKiBEdW1w
UmVuZGVyVHJlZS9tYWMvVGVzdFJ1bm5lck1hYy5tbToKKyAgICAgICAgKFRlc3RSdW5uZXI6Om5v
dGlmeURvbmUpOgorICAgICAgICAoVGVzdFJ1bm5lcjo6Zm9yY2VJbW1lZGlhdGVDb21wbGV0aW9u
KToKKyAgICAgICAgKFRlc3RSdW5uZXI6OnF1ZXVlTG9hZCk6CisKIDIwMTgtMTAtMTEgIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIElPUyAxMiAtIFNlcnZpY2Ug
d29ya2VyIGNhY2hlIG5vdCBzaGFyZWQgd2hlbiBhZGRlZCB0byBob21lc2NyZWVuCkluZGV4OiBU
b29scy9EdW1wUmVuZGVyVHJlZS9UZXN0UnVubmVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9E
dW1wUmVuZGVyVHJlZS9UZXN0UnVubmVyLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgVG9vbHMv
RHVtcFJlbmRlclRyZWUvVGVzdFJ1bm5lci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIyNzUsMzcg
KzIyNzUsMzcgQEAgSlNTdGF0aWNGdW5jdGlvbiogVGVzdFJ1bm5lcjo6c3RhdGljRnVuYwogCiB2
b2lkIFRlc3RSdW5uZXI6OnF1ZXVlTG9hZEhUTUxTdHJpbmcoSlNTdHJpbmdSZWYgY29udGVudCwg
SlNTdHJpbmdSZWYgYmFzZVVSTCkKIHsKLSAgICBXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVl
KG5ldyBMb2FkSFRNTFN0cmluZ0l0ZW0oY29udGVudCwgYmFzZVVSTCkpOworICAgIERSVFdvcmtR
dWV1ZTo6c2luZ2xldG9uKCkucXVldWUobmV3IExvYWRIVE1MU3RyaW5nSXRlbShjb250ZW50LCBi
YXNlVVJMKSk7CiB9CiAKIHZvaWQgVGVzdFJ1bm5lcjo6cXVldWVMb2FkQWx0ZXJuYXRlSFRNTFN0
cmluZyhKU1N0cmluZ1JlZiBjb250ZW50LCBKU1N0cmluZ1JlZiBiYXNlVVJMLCBKU1N0cmluZ1Jl
ZiB1bnJlYWNoYWJsZVVSTCkKIHsKLSAgICBXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5l
dyBMb2FkSFRNTFN0cmluZ0l0ZW0oY29udGVudCwgYmFzZVVSTCwgdW5yZWFjaGFibGVVUkwpKTsK
KyAgICBEUlRXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5ldyBMb2FkSFRNTFN0cmluZ0l0
ZW0oY29udGVudCwgYmFzZVVSTCwgdW5yZWFjaGFibGVVUkwpKTsKIH0KIAogdm9pZCBUZXN0UnVu
bmVyOjpxdWV1ZUJhY2tOYXZpZ2F0aW9uKGludCBob3dGYXJCYWNrKQogewotICAgIFdvcmtRdWV1
ZTo6c2luZ2xldG9uKCkucXVldWUobmV3IEJhY2tJdGVtKGhvd0ZhckJhY2spKTsKKyAgICBEUlRX
b3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5ldyBCYWNrSXRlbShob3dGYXJCYWNrKSk7CiB9
CiAKIHZvaWQgVGVzdFJ1bm5lcjo6cXVldWVGb3J3YXJkTmF2aWdhdGlvbihpbnQgaG93RmFyRm9y
d2FyZCkKIHsKLSAgICBXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5ldyBGb3J3YXJkSXRl
bShob3dGYXJGb3J3YXJkKSk7CisgICAgRFJUV29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShu
ZXcgRm9yd2FyZEl0ZW0oaG93RmFyRm9yd2FyZCkpOwogfQogCiB2b2lkIFRlc3RSdW5uZXI6OnF1
ZXVlTG9hZGluZ1NjcmlwdChKU1N0cmluZ1JlZiBzY3JpcHQpCiB7Ci0gICAgV29ya1F1ZXVlOjpz
aW5nbGV0b24oKS5xdWV1ZShuZXcgTG9hZGluZ1NjcmlwdEl0ZW0oc2NyaXB0KSk7CisgICAgRFJU
V29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShuZXcgTG9hZGluZ1NjcmlwdEl0ZW0oc2NyaXB0
KSk7CiB9CiAKIHZvaWQgVGVzdFJ1bm5lcjo6cXVldWVOb25Mb2FkaW5nU2NyaXB0KEpTU3RyaW5n
UmVmIHNjcmlwdCkKIHsKLSAgICBXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5ldyBOb25M
b2FkaW5nU2NyaXB0SXRlbShzY3JpcHQpKTsKKyAgICBEUlRXb3JrUXVldWU6OnNpbmdsZXRvbigp
LnF1ZXVlKG5ldyBOb25Mb2FkaW5nU2NyaXB0SXRlbShzY3JpcHQpKTsKIH0KIAogdm9pZCBUZXN0
UnVubmVyOjpxdWV1ZVJlbG9hZCgpCiB7Ci0gICAgV29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1
ZShuZXcgUmVsb2FkSXRlbSk7CisgICAgRFJUV29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShu
ZXcgUmVsb2FkSXRlbSk7CiB9CiAKIHZvaWQgVGVzdFJ1bm5lcjo6aWdub3JlTGVnYWN5V2ViTm90
aWZpY2F0aW9uUGVybWlzc2lvblJlcXVlc3RzKCkKSW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJUcmVl
L1dvcmtRdWV1ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvV29ya1F1
ZXVlLmNwcAkocmV2aXNpb24gMjM3MDcwKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvV29ya1F1
ZXVlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzksMTggKzM5LDE4IEBAIHN0YXRpYyBXb3JrUXVl
dWVJdGVtKiB0aGVRdWV1ZVtxdWV1ZUxlbmcKIHN0YXRpYyB1bnNpZ25lZCBzdGFydE9mUXVldWU7
CiBzdGF0aWMgdW5zaWduZWQgZW5kT2ZRdWV1ZTsKIAotV29ya1F1ZXVlJiBXb3JrUXVldWU6OnNp
bmdsZXRvbigpCitEUlRXb3JrUXVldWUmIERSVFdvcmtRdWV1ZTo6c2luZ2xldG9uKCkKIHsKLSAg
ICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8V29ya1F1ZXVlPiBzaGFyZWRJbnN0YW5jZTsKKyAgICBz
dGF0aWMgTmV2ZXJEZXN0cm95ZWQ8RFJUV29ya1F1ZXVlPiBzaGFyZWRJbnN0YW5jZTsKICAgICBy
ZXR1cm4gc2hhcmVkSW5zdGFuY2U7CiB9CiAKLVdvcmtRdWV1ZTo6V29ya1F1ZXVlKCkKK0RSVFdv
cmtRdWV1ZTo6RFJUV29ya1F1ZXVlKCkKICAgICA6IG1fZnJvemVuKGZhbHNlKQogewogfQogCi12
b2lkIFdvcmtRdWV1ZTo6cXVldWUoV29ya1F1ZXVlSXRlbSogaXRlbSkKK3ZvaWQgRFJUV29ya1F1
ZXVlOjpxdWV1ZShXb3JrUXVldWVJdGVtKiBpdGVtKQogewogICAgIEFTU0VSVChlbmRPZlF1ZXVl
IDwgcXVldWVMZW5ndGgpOwogICAgIEFTU0VSVChlbmRPZlF1ZXVlID49IHN0YXJ0T2ZRdWV1ZSk7
CkBAIC02Myw3ICs2Myw3IEBAIHZvaWQgV29ya1F1ZXVlOjpxdWV1ZShXb3JrUXVldWVJdGVtKiBp
dGUKICAgICB0aGVRdWV1ZVtlbmRPZlF1ZXVlKytdID0gaXRlbTsKIH0KIAotV29ya1F1ZXVlSXRl
bSogV29ya1F1ZXVlOjpkZXF1ZXVlKCkKK1dvcmtRdWV1ZUl0ZW0qIERSVFdvcmtRdWV1ZTo6ZGVx
dWV1ZSgpCiB7CiAgICAgQVNTRVJUKGVuZE9mUXVldWUgPj0gc3RhcnRPZlF1ZXVlKTsKIApAQCAt
NzMsMTIgKzczLDEyIEBAIFdvcmtRdWV1ZUl0ZW0qIFdvcmtRdWV1ZTo6ZGVxdWV1ZSgpCiAgICAg
cmV0dXJuIHRoZVF1ZXVlW3N0YXJ0T2ZRdWV1ZSsrXTsKIH0KIAotdW5zaWduZWQgV29ya1F1ZXVl
Ojpjb3VudCgpCit1bnNpZ25lZCBEUlRXb3JrUXVldWU6OmNvdW50KCkKIHsKICAgICByZXR1cm4g
ZW5kT2ZRdWV1ZSAtIHN0YXJ0T2ZRdWV1ZTsKIH0KIAotdm9pZCBXb3JrUXVldWU6OmNsZWFyKCkK
K3ZvaWQgRFJUV29ya1F1ZXVlOjpjbGVhcigpCiB7CiAgICAgZm9yICh1bnNpZ25lZCBpID0gc3Rh
cnRPZlF1ZXVlOyBpIDwgZW5kT2ZRdWV1ZTsgKytpKSB7CiAgICAgICAgIGRlbGV0ZSB0aGVRdWV1
ZVtpXTsKQEAgLTg5LDcgKzg5LDcgQEAgdm9pZCBXb3JrUXVldWU6OmNsZWFyKCkKICAgICBlbmRP
ZlF1ZXVlID0gMDsKIH0KIAotYm9vbCBXb3JrUXVldWU6OnByb2Nlc3NXb3JrKCkKK2Jvb2wgRFJU
V29ya1F1ZXVlOjpwcm9jZXNzV29yaygpCiB7CiAgICAgYm9vbCBzdGFydGVkTG9hZCA9IGZhbHNl
OwogCkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJlZS9Xb3JrUXVldWUuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9EdW1wUmVuZGVyVHJlZS9Xb3JrUXVldWUuaAkocmV2aXNpb24gMjM3MDcwKQorKysg
VG9vbHMvRHVtcFJlbmRlclRyZWUvV29ya1F1ZXVlLmgJKHdvcmtpbmcgY29weSkKQEAgLTMzLDEx
ICszMywxMSBAQAogCiBjbGFzcyBXb3JrUXVldWVJdGVtOwogCi1jbGFzcyBXb3JrUXVldWUgewot
ZnJpZW5kIGNsYXNzIFdURjo6TmV2ZXJEZXN0cm95ZWQ8V29ya1F1ZXVlPjsKK2NsYXNzIERSVFdv
cmtRdWV1ZSB7CitmcmllbmQgY2xhc3MgV1RGOjpOZXZlckRlc3Ryb3llZDxEUlRXb3JrUXVldWU+
OwogCiBwdWJsaWM6Ci0gICAgc3RhdGljIFdvcmtRdWV1ZSYgc2luZ2xldG9uKCk7CisgICAgc3Rh
dGljIERSVFdvcmtRdWV1ZSYgc2luZ2xldG9uKCk7CiAKICAgICB2b2lkIHF1ZXVlKFdvcmtRdWV1
ZUl0ZW0qKTsKICAgICBXb3JrUXVldWVJdGVtKiBkZXF1ZXVlKCk7CkBAIC00OSw3ICs0OSw3IEBA
IHB1YmxpYzoKICAgICBib29sIHByb2Nlc3NXb3JrKCk7IC8vIFJldHVybnMgdHJ1ZSBpZiBhbGwg
d29yayBpcyBkb25lLCBmYWxzZSBpZiB3ZSBzdGFydGVkIGEgbG9hZC4KIAogcHJpdmF0ZToKLSAg
ICBXb3JrUXVldWUoKTsKKyAgICBEUlRXb3JrUXVldWUoKTsKIAogICAgIGJvb2wgbV9mcm96ZW47
CiB9OwpJbmRleDogVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbQko
cmV2aXNpb24gMjM3MDcwKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJU
cmVlLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yMDM0LDcgKzIwMzQsNyBAQCBzdGF0aWMgdm9pZCBy
dW5UZXN0KGNvbnN0IHN0cmluZyYgaW5wdXRMCiAgICAgW3ByZXZUZXN0QkZJdGVtIHJlbGVhc2Vd
OwogICAgIHByZXZUZXN0QkZJdGVtID0gW1tbW21haW5GcmFtZSB3ZWJWaWV3XSBiYWNrRm9yd2Fy
ZExpc3RdIGN1cnJlbnRJdGVtXSByZXRhaW5dOwogCi0gICAgYXV0byYgd29ya1F1ZXVlID0gV29y
a1F1ZXVlOjpzaW5nbGV0b24oKTsKKyAgICBhdXRvJiB3b3JrUXVldWUgPSBEUlRXb3JrUXVldWU6
OnNpbmdsZXRvbigpOwogICAgIHdvcmtRdWV1ZS5jbGVhcigpOwogICAgIHdvcmtRdWV1ZS5zZXRG
cm96ZW4oZmFsc2UpOwogCkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRnJhbWVMb2Fk
RGVsZWdhdGUubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0ZyYW1l
TG9hZERlbGVnYXRlLm1tCShyZXZpc2lvbiAyMzcwNzApCisrKyBUb29scy9EdW1wUmVuZGVyVHJl
ZS9tYWMvRnJhbWVMb2FkRGVsZWdhdGUubW0JKHdvcmtpbmcgY29weSkKQEAgLTE0OCw3ICsxNDgs
NyBAQCAtICh2b2lkKXByb2Nlc3NXb3JrOihpZClkdW1teQogI2VuZGlmCiAKICAgICAvLyBpZiB3
ZSBmaW5pc2ggYWxsIHRoZSBjb21tYW5kcywgd2UncmUgcmVhZHkgdG8gZHVtcCBzdGF0ZQotICAg
IGlmIChXb3JrUXVldWU6OnNpbmdsZXRvbigpLnByb2Nlc3NXb3JrKCkgJiYgIWdUZXN0UnVubmVy
LT53YWl0VG9EdW1wKCkpCisgICAgaWYgKERSVFdvcmtRdWV1ZTo6c2luZ2xldG9uKCkucHJvY2Vz
c1dvcmsoKSAmJiAhZ1Rlc3RSdW5uZXItPndhaXRUb0R1bXAoKSkKICAgICAgICAgZHVtcCgpOwog
fQogCkBAIC0xNjEsNyArMTYxLDcgQEAgLSAodm9pZCl3ZWJWaWV3OihXZWJWaWV3ICopd2ViVmll
dyBsb2NhdAogewogICAgIGlmIChbZGF0YVNvdXJjZSB3ZWJGcmFtZV0gPT0gdG9wTG9hZGluZ0Zy
YW1lKSB7CiAgICAgICAgIHRvcExvYWRpbmdGcmFtZSA9IG5pbDsKLSAgICAgICAgYXV0byYgd29y
a1F1ZXVlID0gV29ya1F1ZXVlOjpzaW5nbGV0b24oKTsKKyAgICAgICAgYXV0byYgd29ya1F1ZXVl
ID0gRFJUV29ya1F1ZXVlOjpzaW5nbGV0b24oKTsKICAgICAgICAgd29ya1F1ZXVlLnNldEZyb3pl
bih0cnVlKTsgLy8gZmlyc3QgY29tcGxldGUgbG9hZCBmcmVlemVzIHRoZSBxdWV1ZSBmb3IgdGhl
IHJlc3Qgb2YgdGhpcyB0ZXN0CiAgICAgICAgIGlmICghZ1Rlc3RSdW5uZXItPndhaXRUb0R1bXAo
KSkgewogICAgICAgICAgICAgaWYgKHdvcmtRdWV1ZS5jb3VudCgpKQpJbmRleDogVG9vbHMvRHVt
cFJlbmRlclRyZWUvbWFjL1Rlc3RSdW5uZXJNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVt
cFJlbmRlclRyZWUvbWFjL1Rlc3RSdW5uZXJNYWMubW0JKHJldmlzaW9uIDIzNzA3MCkKKysrIFRv
b2xzL0R1bXBSZW5kZXJUcmVlL21hYy9UZXN0UnVubmVyTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBA
IC0yOTcsMTQgKzI5NywxNCBAQCBzaXplX3QgVGVzdFJ1bm5lcjo6d2ViSGlzdG9yeUl0ZW1Db3Vu
dCgpCiAKIHZvaWQgVGVzdFJ1bm5lcjo6bm90aWZ5RG9uZSgpCiB7Ci0gICAgaWYgKG1fd2FpdFRv
RHVtcCAmJiAhdG9wTG9hZGluZ0ZyYW1lICYmICFXb3JrUXVldWU6OnNpbmdsZXRvbigpLmNvdW50
KCkpCisgICAgaWYgKG1fd2FpdFRvRHVtcCAmJiAhdG9wTG9hZGluZ0ZyYW1lICYmICFEUlRXb3Jr
UXVldWU6OnNpbmdsZXRvbigpLmNvdW50KCkpCiAgICAgICAgIGR1bXAoKTsKICAgICBtX3dhaXRU
b0R1bXAgPSBmYWxzZTsKIH0KIAogdm9pZCBUZXN0UnVubmVyOjpmb3JjZUltbWVkaWF0ZUNvbXBs
ZXRpb24oKQogewotICAgIGlmIChtX3dhaXRUb0R1bXAgJiYgIVdvcmtRdWV1ZTo6c2luZ2xldG9u
KCkuY291bnQoKSkKKyAgICBpZiAobV93YWl0VG9EdW1wICYmICFEUlRXb3JrUXVldWU6OnNpbmds
ZXRvbigpLmNvdW50KCkpCiAgICAgICAgIGR1bXAoKTsKICAgICBtX3dhaXRUb0R1bXAgPSBmYWxz
ZTsKIH0KQEAgLTM4Miw3ICszODIsNyBAQCB2b2lkIFRlc3RSdW5uZXI6OnF1ZXVlTG9hZChKU1N0
cmluZ1JlZiB1CiAgICAgTlNTdHJpbmcgKm5zdXJsU3RyaW5nID0gW25zdXJsIGFic29sdXRlU3Ry
aW5nXTsKIAogICAgIGF1dG8gYWJzb2x1dGVVUkwgPSBhZG9wdChKU1N0cmluZ0NyZWF0ZVdpdGhV
VEY4Q1N0cmluZyhbbnN1cmxTdHJpbmcgVVRGOFN0cmluZ10pKTsKLSAgICBXb3JrUXVldWU6OnNp
bmdsZXRvbigpLnF1ZXVlKG5ldyBMb2FkSXRlbShhYnNvbHV0ZVVSTC5nZXQoKSwgdGFyZ2V0KSk7
CisgICAgRFJUV29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShuZXcgTG9hZEl0ZW0oYWJzb2x1
dGVVUkwuZ2V0KCksIHRhcmdldCkpOwogfQogCiB2b2lkIFRlc3RSdW5uZXI6OnNldEFjY2VwdHNF
ZGl0aW5nKGJvb2wgbmV3QWNjZXB0c0VkaXRpbmcpCkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJl
ZS93aW4vRHVtcFJlbmRlclRyZWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJU
cmVlL3dpbi9EdW1wUmVuZGVyVHJlZS5jcHAJKHJldmlzaW9uIDIzNzA3MCkKKysrIFRvb2xzL0R1
bXBSZW5kZXJUcmVlL3dpbi9EdW1wUmVuZGVyVHJlZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEy
MjcsNyArMTIyNyw3IEBAIHN0YXRpYyB2b2lkIHJ1blRlc3QoY29uc3Qgc3RyaW5nJiBpbnB1dEwK
ICAgICBpZiAod2ViVmlldyAmJiBTVUNDRUVERUQod2ViVmlldy0+YmFja0ZvcndhcmRMaXN0KCZi
Zkxpc3QpKSkKICAgICAgICAgYmZMaXN0LT5jdXJyZW50SXRlbSgmcHJldlRlc3RCRkl0ZW0pOwog
Ci0gICAgYXV0byYgd29ya1F1ZXVlID0gV29ya1F1ZXVlOjpzaW5nbGV0b24oKTsKKyAgICBhdXRv
JiB3b3JrUXVldWUgPSBEUlRXb3JrUXVldWU6OnNpbmdsZXRvbigpOwogICAgIHdvcmtRdWV1ZS5j
bGVhcigpOwogICAgIHdvcmtRdWV1ZS5zZXRGcm96ZW4oZmFsc2UpOwogCkluZGV4OiBUb29scy9E
dW1wUmVuZGVyVHJlZS93aW4vRnJhbWVMb2FkRGVsZWdhdGUuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRv
b2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9GcmFtZUxvYWREZWxlZ2F0ZS5jcHAJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9GcmFtZUxvYWREZWxlZ2F0ZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTE5Niw3ICsxOTYsNyBAQCB2b2lkIEZyYW1lTG9hZERlbGVnYXRl
Ojpwcm9jZXNzV29yaygpCiAgICAgICAgIHJldHVybjsKIAogICAgIC8vIGlmIHdlIGZpbmlzaCBh
bGwgdGhlIGNvbW1hbmRzLCB3ZSdyZSByZWFkeSB0byBkdW1wIHN0YXRlCi0gICAgaWYgKFdvcmtR
dWV1ZTo6c2luZ2xldG9uKCkucHJvY2Vzc1dvcmsoKSAmJiAhOjpnVGVzdFJ1bm5lci0+d2FpdFRv
RHVtcCgpKQorICAgIGlmIChEUlRXb3JrUXVldWU6OnNpbmdsZXRvbigpLnByb2Nlc3NXb3JrKCkg
JiYgITo6Z1Rlc3RSdW5uZXItPndhaXRUb0R1bXAoKSkKICAgICAgICAgZHVtcCgpOwogfQogCkBA
IC0yMzMsNyArMjMzLDcgQEAgdm9pZCBGcmFtZUxvYWREZWxlZ2F0ZTo6bG9jYXRpb25DaGFuZ2VE
bwogICAgICAgICByZXR1cm47CiAKICAgICB0b3BMb2FkaW5nRnJhbWUgPSBudWxscHRyOwotICAg
IGF1dG8mIHdvcmtRdWV1ZSA9IFdvcmtRdWV1ZTo6c2luZ2xldG9uKCk7CisgICAgYXV0byYgd29y
a1F1ZXVlID0gRFJUV29ya1F1ZXVlOjpzaW5nbGV0b24oKTsKICAgICB3b3JrUXVldWUuc2V0RnJv
emVuKHRydWUpOwogCiAgICAgaWYgKDo6Z1Rlc3RSdW5uZXItPndhaXRUb0R1bXAoKSkKSW5kZXg6
IFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9UZXN0UnVubmVyV2luLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9EdW1wUmVuZGVyVHJlZS93aW4vVGVzdFJ1bm5lcldpbi5jcHAJKHJldmlzaW9uIDIz
NzA3MCkKKysrIFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9UZXN0UnVubmVyV2luLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjg4LDcgKzI4OCw3IEBAIHNpemVfdCBUZXN0UnVubmVyOjp3ZWJIaXN0
b3J5SXRlbUNvdW50KCkKIHZvaWQgVGVzdFJ1bm5lcjo6bm90aWZ5RG9uZSgpCiB7CiAgICAgLy8g
U2FtZSBhcyBvbiBtYWMuICBUaGlzIGNhbiBiZSBzaGFyZWQuCi0gICAgaWYgKG1fd2FpdFRvRHVt
cCAmJiAhdG9wTG9hZGluZ0ZyYW1lICYmICFXb3JrUXVldWU6OnNpbmdsZXRvbigpLmNvdW50KCkp
CisgICAgaWYgKG1fd2FpdFRvRHVtcCAmJiAhdG9wTG9hZGluZ0ZyYW1lICYmICFEUlRXb3JrUXVl
dWU6OnNpbmdsZXRvbigpLmNvdW50KCkpCiAgICAgICAgIGR1bXAoKTsKICAgICBtX3dhaXRUb0R1
bXAgPSBmYWxzZTsKIH0KQEAgLTI5Niw3ICsyOTYsNyBAQCB2b2lkIFRlc3RSdW5uZXI6Om5vdGlm
eURvbmUoKQogdm9pZCBUZXN0UnVubmVyOjpmb3JjZUltbWVkaWF0ZUNvbXBsZXRpb24oKQogewog
ICAgIC8vIFNhbWUgYXMgb24gbWFjLiBUaGlzIGNhbiBiZSBzaGFyZWQuCi0gICAgaWYgKG1fd2Fp
dFRvRHVtcCAmJiAhV29ya1F1ZXVlOjpzaW5nbGV0b24oKS5jb3VudCgpKQorICAgIGlmIChtX3dh
aXRUb0R1bXAgJiYgIURSVFdvcmtRdWV1ZTo6c2luZ2xldG9uKCkuY291bnQoKSkKICAgICAgICAg
ZHVtcCgpOwogICAgIG1fd2FpdFRvRHVtcCA9IGZhbHNlOwogfQpAQCAtMzUwLDcgKzM1MCw3IEBA
IHZvaWQgVGVzdFJ1bm5lcjo6cXVldWVMb2FkKEpTU3RyaW5nUmVmIHUKICAgICB9CiAKICAgICBh
dXRvIGpzQWJzb2x1dGVVUkwgPSBhZG9wdChKU1N0cmluZ0NyZWF0ZVdpdGhDaGFyYWN0ZXJzKGJ1
ZmZlci5kYXRhKCksIGJ1ZmZlclNpemUpKTsKLSAgICBXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1
ZXVlKG5ldyBMb2FkSXRlbShqc0Fic29sdXRlVVJMLmdldCgpLCB0YXJnZXQpKTsKKyAgICBEUlRX
b3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5ldyBMb2FkSXRlbShqc0Fic29sdXRlVVJMLmdl
dCgpLCB0YXJnZXQpKTsKIH0KIAogdm9pZCBUZXN0UnVubmVyOjpzZXRBY2NlcHRzRWRpdGluZyhi
b29sIGFjY2VwdHNFZGl0aW5nKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352234</attachid>
            <date>2018-10-12 16:33:24 -0700</date>
            <delta_ts>2018-10-12 17:30:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-190527-20181012163321.patch</filename>
            <type>text/plain</type>
            <size>175494</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyMzcwNzQpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDMwMCBAQAorMjAxOC0xMC0xMiAgQWxleCBDaHJpc3RlbnNlbiAg
PGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBwcmFnbWEgb25jZSBpbiBX
VEYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDUy
NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlIGFs
c28gbmVlZCB0byBjb25zaXN0ZW50bHkgaW5jbHVkZSB3dGYgaGVhZGVycyBmcm9tIHdpdGhpbiB3
dGYgc28gd2UgY2FuIGJ1aWxkIHd0ZiB3aXRob3V0CisgICAgICAgIHN5bWJvbCByZWRlZmluaXRp
b24gZXJyb3JzIGZyb20gaW5jbHVkaW5nIHRoZSBjb3B5IGluIFNvdXJjZSBhbmQgdGhlIGNvcHkg
aW4gdGhlIGJ1aWxkIGRpcmVjdG9yeS4KKworICAgICAgICAqIHd0Zi9BU0NJSUNUeXBlLmg6Cisg
ICAgICAgICogd3RmL0Fzc2VydGlvbnMuY3BwOgorICAgICAgICAqIHd0Zi9Bc3NlcnRpb25zLmg6
CisgICAgICAgICogd3RmL0F0b21pY3MuaDoKKyAgICAgICAgKiB3dGYvQXV0b21hdGljVGhyZWFk
LmNwcDoKKyAgICAgICAgKiB3dGYvQXV0b21hdGljVGhyZWFkLmg6CisgICAgICAgICogd3RmL0Jh
Y2t3YXJkc0dyYXBoLmg6CisgICAgICAgICogd3RmL0JhZy5oOgorICAgICAgICAqIHd0Zi9CYWdU
b0hhc2hNYXAuaDoKKyAgICAgICAgKiB3dGYvQml0VmVjdG9yLmNwcDoKKyAgICAgICAgKiB3dGYv
Qml0VmVjdG9yLmg6CisgICAgICAgICogd3RmL0JpdG1hcC5oOgorICAgICAgICAqIHd0Zi9CbG9v
bUZpbHRlci5oOgorICAgICAgICAqIHd0Zi9Cb3guaDoKKyAgICAgICAgKiB3dGYvQnViYmxlU29y
dC5oOgorICAgICAgICAqIHd0Zi9CdW1wUG9pbnRlckFsbG9jYXRvci5oOgorICAgICAgICAqIHd0
Zi9CeXRlT3JkZXIuaDoKKyAgICAgICAgKiB3dGYvQ1BVVGltZS5jcHA6CisgICAgICAgICogd3Rm
L0NhbGxiYWNrQWdncmVnYXRvci5oOgorICAgICAgICAqIHd0Zi9DaGVja2VkQXJpdGhtZXRpYy5o
OgorICAgICAgICAqIHd0Zi9DaGVja2VkQm9vbGVhbi5oOgorICAgICAgICAqIHd0Zi9DbG9ja1R5
cGUuY3BwOgorICAgICAgICAqIHd0Zi9DbG9ja1R5cGUuaDoKKyAgICAgICAgKiB3dGYvQ29tbWFQ
cmludGVyLmg6CisgICAgICAgICogd3RmL0NvbXBpbGF0aW9uVGhyZWFkLmNwcDoKKyAgICAgICAg
KiB3dGYvQ29tcGlsYXRpb25UaHJlYWQuaDoKKyAgICAgICAgKiB3dGYvQ29tcGlsZXIuaDoKKyAg
ICAgICAgKiB3dGYvQ29uY3VycmVudFB0ckhhc2hTZXQuY3BwOgorICAgICAgICAqIHd0Zi9Db25j
dXJyZW50VmVjdG9yLmg6CisgICAgICAgICogd3RmL0NvbmRpdGlvbi5oOgorICAgICAgICAqIHd0
Zi9Db3VudGluZ0xvY2suY3BwOgorICAgICAgICAqIHd0Zi9Dcm9zc1RocmVhZFRhc2tIYW5kbGVy
LmNwcDoKKyAgICAgICAgKiB3dGYvQ3J5cHRvZ3JhcGhpY1V0aWxpdGllcy5jcHA6CisgICAgICAg
ICogd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuaDoKKyAgICAgICAgKiB3dGYvQ3J5cHRvZ3Jh
cGhpY2FsbHlSYW5kb21OdW1iZXIuY3BwOgorICAgICAgICAqIHd0Zi9DcnlwdG9ncmFwaGljYWxs
eVJhbmRvbU51bWJlci5oOgorICAgICAgICAqIHd0Zi9DdXJyZW50VGltZS5jcHA6CisgICAgICAg
ICogd3RmL0RhdGFMb2cuY3BwOgorICAgICAgICAqIHd0Zi9EYXRhTG9nLmg6CisgICAgICAgICog
d3RmL0RhdGVNYXRoLmNwcDoKKyAgICAgICAgKiB3dGYvRGF0ZU1hdGguaDoKKyAgICAgICAgKiB3
dGYvRGVjaW1hbE51bWJlci5jcHA6CisgICAgICAgICogd3RmL0RlY2ltYWxOdW1iZXIuaDoKKyAg
ICAgICAgKiB3dGYvRGVxdWUuaDoKKyAgICAgICAgKiB3dGYvRGlzYWxsb3dDVHlwZS5oOgorICAg
ICAgICAqIHd0Zi9Eb21pbmF0b3JzLmg6CisgICAgICAgICogd3RmL0RvdWJseUxpbmtlZExpc3Qu
aDoKKyAgICAgICAgKiB3dGYvRmFzdEJpdFZlY3Rvci5jcHA6CisgICAgICAgICogd3RmL0Zhc3RN
YWxsb2MuY3BwOgorICAgICAgICAqIHd0Zi9GYXN0TWFsbG9jLmg6CisgICAgICAgICogd3RmL0Zl
YXR1cmVEZWZpbmVzLmg6CisgICAgICAgICogd3RmL0ZpbGVQcmludFN0cmVhbS5jcHA6CisgICAg
ICAgICogd3RmL0ZpbGVQcmludFN0cmVhbS5oOgorICAgICAgICAqIHd0Zi9GbGlwQnl0ZXMuaDoK
KyAgICAgICAgKiB3dGYvRnVuY3Rpb25EaXNwYXRjaGVyLmNwcDoKKyAgICAgICAgKiB3dGYvRnVu
Y3Rpb25EaXNwYXRjaGVyLmg6CisgICAgICAgICogd3RmL0dldFB0ci5oOgorICAgICAgICAqIHd0
Zi9HaWdhY2FnZS5jcHA6CisgICAgICAgICogd3RmL0dsb2JhbFZlcnNpb24uY3BwOgorICAgICAg
ICAqIHd0Zi9HcmFwaE5vZGVXb3JrbGlzdC5oOgorICAgICAgICAqIHd0Zi9HcmVnb3JpYW5EYXRl
VGltZS5jcHA6CisgICAgICAgICogd3RmL0dyZWdvcmlhbkRhdGVUaW1lLmg6CisgICAgICAgICog
d3RmL0hhc2hGdW5jdGlvbnMuaDoKKyAgICAgICAgKiB3dGYvSGFzaE1hcC5oOgorICAgICAgICAq
IHd0Zi9IYXNoTWV0aG9kLmg6CisgICAgICAgICogd3RmL0hhc2hTZXQuaDoKKyAgICAgICAgKiB3
dGYvSGFzaFRhYmxlLmNwcDoKKyAgICAgICAgKiB3dGYvSGFzaFRyYWl0cy5oOgorICAgICAgICAq
IHd0Zi9JbmRlbnRlci5oOgorICAgICAgICAqIHd0Zi9JbmRleFNwYXJzZVNldC5oOgorICAgICAg
ICAqIHd0Zi9JbmxpbmVBU00uaDoKKyAgICAgICAgKiB3dGYvSW5zZXJ0aW9uLmg6CisgICAgICAg
ICogd3RmL0l0ZXJhdG9yQWRhcHRvcnMuaDoKKyAgICAgICAgKiB3dGYvSXRlcmF0b3JSYW5nZS5o
OgorICAgICAgICAqIHd0Zi9KU09OVmFsdWVzLmNwcDoKKyAgICAgICAgKiB3dGYvSlNWYWx1ZU1h
bGxvYy5jcHA6CisgICAgICAgICogd3RmL0xFQkRlY29kZXIuaDoKKyAgICAgICAgKiB3dGYvTGFu
Z3VhZ2UuY3BwOgorICAgICAgICAqIHd0Zi9MaXN0RHVtcC5oOgorICAgICAgICAqIHd0Zi9Mb2Nr
LmNwcDoKKyAgICAgICAgKiB3dGYvTG9jay5oOgorICAgICAgICAqIHd0Zi9Mb2NrQWxnb3JpdGht
Lmg6CisgICAgICAgICogd3RmL0xvY2tlZFByaW50U3RyZWFtLmNwcDoKKyAgICAgICAgKiB3dGYv
TG9ja2VyLmg6CisgICAgICAgICogd3RmL01ENS5jcHA6CisgICAgICAgICogd3RmL01ENS5oOgor
ICAgICAgICAqIHd0Zi9NYWluVGhyZWFkLmNwcDoKKyAgICAgICAgKiB3dGYvTWFpblRocmVhZC5o
OgorICAgICAgICAqIHd0Zi9NYWxsb2NQdHIuaDoKKyAgICAgICAgKiB3dGYvTWF0aEV4dHJhcy5o
OgorICAgICAgICAqIHd0Zi9NZWRpYVRpbWUuY3BwOgorICAgICAgICAqIHd0Zi9NZWRpYVRpbWUu
aDoKKyAgICAgICAgKiB3dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmNwcDoKKyAgICAgICAgKiB3
dGYvTWVzc2FnZVF1ZXVlLmg6CisgICAgICAgICogd3RmL01ldGFBbGxvY2F0b3IuY3BwOgorICAg
ICAgICAqIHd0Zi9NZXRhQWxsb2NhdG9yLmg6CisgICAgICAgICogd3RmL01ldGFBbGxvY2F0b3JI
YW5kbGUuaDoKKyAgICAgICAgKiB3dGYvTW9ub3RvbmljVGltZS5jcHA6CisgICAgICAgICogd3Rm
L01vbm90b25pY1RpbWUuaDoKKyAgICAgICAgKiB3dGYvTmFrZWRQdHIuaDoKKyAgICAgICAgKiB3
dGYvTm9Mb2NrLmg6CisgICAgICAgICogd3RmL05vVGFpbENhbGxzLmg6CisgICAgICAgICogd3Rm
L05vbmNvcHlhYmxlLmg6CisgICAgICAgICogd3RmL051bWJlck9mQ29yZXMuY3BwOgorICAgICAg
ICAqIHd0Zi9OdW1iZXJPZkNvcmVzLmg6CisgICAgICAgICogd3RmL09TQWxsb2NhdG9yLmg6Cisg
ICAgICAgICogd3RmL09TQWxsb2NhdG9yUG9zaXguY3BwOgorICAgICAgICAqIHd0Zi9PU1JhbmRv
bVNvdXJjZS5jcHA6CisgICAgICAgICogd3RmL09TUmFuZG9tU291cmNlLmg6CisgICAgICAgICog
d3RmL09iamNSdW50aW1lRXh0cmFzLmg6CisgICAgICAgICogd3RmL09yZGVyTWFrZXIuaDoKKyAg
ICAgICAgKiB3dGYvUGFja2VkSW50VmVjdG9yLmg6CisgICAgICAgICogd3RmL1BhZ2VBbGxvY2F0
aW9uLmg6CisgICAgICAgICogd3RmL1BhZ2VCbG9jay5jcHA6CisgICAgICAgICogd3RmL1BhZ2VC
bG9jay5oOgorICAgICAgICAqIHd0Zi9QYWdlUmVzZXJ2YXRpb24uaDoKKyAgICAgICAgKiB3dGYv
UGFyYWxsZWxIZWxwZXJQb29sLmNwcDoKKyAgICAgICAgKiB3dGYvUGFyYWxsZWxIZWxwZXJQb29s
Lmg6CisgICAgICAgICogd3RmL1BhcmFsbGVsSm9icy5oOgorICAgICAgICAqIHd0Zi9QYXJhbGxl
bEpvYnNMaWJkaXNwYXRjaC5oOgorICAgICAgICAqIHd0Zi9QYXJhbGxlbFZlY3Rvckl0ZXJhdG9y
Lmg6CisgICAgICAgICogd3RmL1BhcmtpbmdMb3QuY3BwOgorICAgICAgICAqIHd0Zi9QYXJraW5n
TG90Lmg6CisgICAgICAgICogd3RmL1BsYXRmb3JtLmg6CisgICAgICAgICogd3RmL1BvaW50ZXJD
b21wYXJpc29uLmg6CisgICAgICAgICogd3RmL1BvaXNvbmVkLmNwcDoKKyAgICAgICAgKiB3dGYv
UHJpbnRTdHJlYW0uY3BwOgorICAgICAgICAqIHd0Zi9QcmludFN0cmVhbS5oOgorICAgICAgICAq
IHd0Zi9Qcm9jZXNzSUQuaDoKKyAgICAgICAgKiB3dGYvUHJvY2Vzc1ByaXZpbGVnZS5jcHA6Cisg
ICAgICAgICogd3RmL1JBTVNpemUuY3BwOgorICAgICAgICAqIHd0Zi9SQU1TaXplLmg6CisgICAg
ICAgICogd3RmL1JhbmRvbURldmljZS5jcHA6CisgICAgICAgICogd3RmL1JhbmRvbU51bWJlci5j
cHA6CisgICAgICAgICogd3RmL1JhbmRvbU51bWJlci5oOgorICAgICAgICAqIHd0Zi9SYW5kb21O
dW1iZXJTZWVkLmg6CisgICAgICAgICogd3RmL1JhbmdlU2V0Lmg6CisgICAgICAgICogd3RmL1Jh
d1BvaW50ZXIuaDoKKyAgICAgICAgKiB3dGYvUmVhZFdyaXRlTG9jay5jcHA6CisgICAgICAgICog
d3RmL1JlZEJsYWNrVHJlZS5oOgorICAgICAgICAqIHd0Zi9SZWYuaDoKKyAgICAgICAgKiB3dGYv
UmVmQ291bnRlZEFycmF5Lmg6CisgICAgICAgICogd3RmL1JlZkNvdW50ZWRMZWFrQ291bnRlci5j
cHA6CisgICAgICAgICogd3RmL1JlZkNvdW50ZWRMZWFrQ291bnRlci5oOgorICAgICAgICAqIHd0
Zi9SZWZDb3VudGVyLmg6CisgICAgICAgICogd3RmL1JlZlB0ci5oOgorICAgICAgICAqIHd0Zi9S
ZXRhaW5QdHIuaDoKKyAgICAgICAgKiB3dGYvUnVuTG9vcC5jcHA6CisgICAgICAgICogd3RmL1J1
bkxvb3AuaDoKKyAgICAgICAgKiB3dGYvUnVuTG9vcFRpbWVyLmg6CisgICAgICAgICogd3RmL1J1
bkxvb3BUaW1lckNGLmNwcDoKKyAgICAgICAgKiB3dGYvU0hBMS5jcHA6CisgICAgICAgICogd3Rm
L1NIQTEuaDoKKyAgICAgICAgKiB3dGYvU2F0dXJhdGVkQXJpdGhtZXRpYy5oOgorICAgICAgICAo
c2F0dXJhdGVkU3VidHJhY3Rpb24pOgorICAgICAgICAqIHd0Zi9TY2hlZHVsZVBhaXIuaDoKKyAg
ICAgICAgKiB3dGYvU2NoZWR1bGVQYWlyQ0YuY3BwOgorICAgICAgICAqIHd0Zi9TY2hlZHVsZVBh
aXJNYWMubW06CisgICAgICAgICogd3RmL1Njb3BlZExhbWJkYS5oOgorICAgICAgICAqIHd0Zi9T
ZWNvbmRzLmNwcDoKKyAgICAgICAgKiB3dGYvU2Vjb25kcy5oOgorICAgICAgICAqIHd0Zi9TZWdt
ZW50ZWRWZWN0b3IuaDoKKyAgICAgICAgKiB3dGYvU2VudGluZWxMaW5rZWRMaXN0Lmg6CisgICAg
ICAgICogd3RmL1NoYXJlZFRhc2suaDoKKyAgICAgICAgKiB3dGYvU2ltcGxlU3RhdHMuaDoKKyAg
ICAgICAgKiB3dGYvU2luZ2xlUm9vdEdyYXBoLmg6CisgICAgICAgICogd3RmL1NpbmdseUxpbmtl
ZExpc3QuaDoKKyAgICAgICAgKiB3dGYvU2l4Q2hhcmFjdGVySGFzaC5jcHA6CisgICAgICAgICog
d3RmL1NpeENoYXJhY3Rlckhhc2guaDoKKyAgICAgICAgKiB3dGYvU21hbGxQdHJTZXQuaDoKKyAg
ICAgICAgKiB3dGYvU3BlY3RydW0uaDoKKyAgICAgICAgKiB3dGYvU3RhY2tCb3VuZHMuY3BwOgor
ICAgICAgICAqIHd0Zi9TdGFja0JvdW5kcy5oOgorICAgICAgICAqIHd0Zi9TdGFja1N0YXRzLmNw
cDoKKyAgICAgICAgKiB3dGYvU3RhY2tTdGF0cy5oOgorICAgICAgICAqIHd0Zi9TdGFja1RyYWNl
LmNwcDoKKyAgICAgICAgKiB3dGYvU3RkTGliRXh0cmFzLmg6CisgICAgICAgICogd3RmL1N0cmVh
bUJ1ZmZlci5oOgorICAgICAgICAqIHd0Zi9TdHJpbmdIYXNoRHVtcENvbnRleHQuaDoKKyAgICAg
ICAgKiB3dGYvU3RyaW5nUHJpbnRTdHJlYW0uY3BwOgorICAgICAgICAqIHd0Zi9TdHJpbmdQcmlu
dFN0cmVhbS5oOgorICAgICAgICAqIHd0Zi9UaHJlYWRHcm91cC5jcHA6CisgICAgICAgICogd3Rm
L1RocmVhZE1lc3NhZ2UuY3BwOgorICAgICAgICAqIHd0Zi9UaHJlYWRTcGVjaWZpYy5oOgorICAg
ICAgICAqIHd0Zi9UaHJlYWRpbmcuY3BwOgorICAgICAgICAqIHd0Zi9UaHJlYWRpbmcuaDoKKyAg
ICAgICAgKiB3dGYvVGhyZWFkaW5nUHJpbWl0aXZlcy5oOgorICAgICAgICAqIHd0Zi9UaHJlYWRp
bmdQdGhyZWFkcy5jcHA6CisgICAgICAgICogd3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5j
cHA6CisgICAgICAgICogd3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oOgorICAgICAgICAq
IHd0Zi9UaW1pbmdTY29wZS5jcHA6CisgICAgICAgICogd3RmL1RpbnlMUlVDYWNoZS5oOgorICAg
ICAgICAqIHd0Zi9UaW55UHRyU2V0Lmg6CisgICAgICAgICogd3RmL1RyaVN0YXRlLmg6CisgICAg
ICAgICogd3RmL1R5cGVDYXN0cy5oOgorICAgICAgICAqIHd0Zi9VVUlELmNwcDoKKyAgICAgICAg
KiB3dGYvVW5pb25GaW5kLmg6CisgICAgICAgICogd3RmL1ZNVGFncy5oOgorICAgICAgICAqIHd0
Zi9WYWx1ZUNoZWNrLmg6CisgICAgICAgICogd3RmL1ZlY3Rvci5oOgorICAgICAgICAqIHd0Zi9W
ZWN0b3JUcmFpdHMuaDoKKyAgICAgICAgKiB3dGYvV2FsbFRpbWUuY3BwOgorICAgICAgICAqIHd0
Zi9XYWxsVGltZS5oOgorICAgICAgICAqIHd0Zi9XZWFrUHRyLmg6CisgICAgICAgICogd3RmL1dl
YWtSYW5kb20uaDoKKyAgICAgICAgKiB3dGYvV29yZExvY2suY3BwOgorICAgICAgICAqIHd0Zi9X
b3JkTG9jay5oOgorICAgICAgICAqIHd0Zi9Xb3JrUXVldWUuY3BwOgorICAgICAgICAqIHd0Zi9X
b3JrUXVldWUuaDoKKyAgICAgICAgKiB3dGYvV29ya2VyUG9vbC5jcHA6CisgICAgICAgICogd3Rm
L2NmL0xhbmd1YWdlQ0YuY3BwOgorICAgICAgICAqIHd0Zi9jZi9SdW5Mb29wQ0YuY3BwOgorICAg
ICAgICAqIHd0Zi9jb2NvYS9FbnRpdGxlbWVudHMubW06CisgICAgICAgICogd3RmL2NvY29hL01h
Y2hTZW5kUmlnaHQuY3BwOgorICAgICAgICAqIHd0Zi9jb2NvYS9NYWluVGhyZWFkQ29jb2EubW06
CisgICAgICAgICogd3RmL2NvY29hL01lbW9yeUZvb3RwcmludENvY29hLmNwcDoKKyAgICAgICAg
KiB3dGYvY29jb2EvV29ya1F1ZXVlQ29jb2EuY3BwOgorICAgICAgICAqIHd0Zi9kdG9hLmNwcDoK
KyAgICAgICAgKiB3dGYvZHRvYS5oOgorICAgICAgICAqIHd0Zi9pb3MvV2ViQ29yZVRocmVhZC5j
cHA6CisgICAgICAgICogd3RmL2lvcy9XZWJDb3JlVGhyZWFkLmg6CisgICAgICAgICogd3RmL21h
Yy9BcHBLaXRDb21wYXRpYmlsaXR5RGVjbGFyYXRpb25zLmg6CisgICAgICAgICogd3RmL21hYy9E
ZXByZWNhdGVkU3ltYm9sc1VzZWRCeVNhZmFyaS5tbToKKyAgICAgICAgKiB3dGYvbWJtYWxsb2Mu
Y3BwOgorICAgICAgICAqIHd0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50Q29kZXJzLmNwcDoKKyAg
ICAgICAgKiB3dGYvcGVyc2lzdGVuY2UvUGVyc2lzdGVudERlY29kZXIuY3BwOgorICAgICAgICAq
IHd0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RW5jb2Rlci5jcHA6CisgICAgICAgICogd3RmL3Nw
aS9jZi9DRkJ1bmRsZVNQSS5oOgorICAgICAgICAqIHd0Zi9zcGkvZGFyd2luL0NvbW1vbkNyeXB0
b1NQSS5oOgorICAgICAgICAqIHd0Zi90ZXh0L0FTQ0lJRmFzdFBhdGguaDoKKyAgICAgICAgKiB3
dGYvdGV4dC9BU0NJSUxpdGVyYWwuY3BwOgorICAgICAgICAqIHd0Zi90ZXh0L0F0b21pY1N0cmlu
Zy5jcHA6CisgICAgICAgICogd3RmL3RleHQvQXRvbWljU3RyaW5nLmg6CisgICAgICAgICogd3Rm
L3RleHQvQXRvbWljU3RyaW5nSGFzaC5oOgorICAgICAgICAqIHd0Zi90ZXh0L0F0b21pY1N0cmlu
Z0ltcGwuY3BwOgorICAgICAgICAqIHd0Zi90ZXh0L0F0b21pY1N0cmluZ0ltcGwuaDoKKyAgICAg
ICAgKiB3dGYvdGV4dC9BdG9taWNTdHJpbmdUYWJsZS5jcHA6CisgICAgICAgICogd3RmL3RleHQv
QXRvbWljU3RyaW5nVGFibGUuaDoKKyAgICAgICAgKiB3dGYvdGV4dC9CYXNlNjQuY3BwOgorICAg
ICAgICAqIHd0Zi90ZXh0L0NTdHJpbmcuY3BwOgorICAgICAgICAqIHd0Zi90ZXh0L0NTdHJpbmcu
aDoKKyAgICAgICAgKiB3dGYvdGV4dC9Db252ZXJzaW9uTW9kZS5oOgorICAgICAgICAqIHd0Zi90
ZXh0L0V4dGVybmFsU3RyaW5nSW1wbC5jcHA6CisgICAgICAgICogd3RmL3RleHQvSW50ZWdlclRv
U3RyaW5nQ29udmVyc2lvbi5oOgorICAgICAgICAqIHd0Zi90ZXh0L0xDaGFyLmg6CisgICAgICAg
ICogd3RmL3RleHQvTGluZUVuZGluZy5jcHA6CisgICAgICAgICogd3RmL3RleHQvU3RyaW5nQnVm
ZmVyLmg6CisgICAgICAgICogd3RmL3RleHQvU3RyaW5nQnVpbGRlci5jcHA6CisgICAgICAgICog
d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0J1aWxk
ZXJKU09OLmNwcDoKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdDb21tb24uaDoKKyAgICAgICAg
KiB3dGYvdGV4dC9TdHJpbmdDb25jYXRlbmF0ZS5oOgorICAgICAgICAqIHd0Zi90ZXh0L1N0cmlu
Z0hhc2guaDoKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdJbXBsLmNwcDoKKyAgICAgICAgKiB3
dGYvdGV4dC9TdHJpbmdJbXBsLmg6CisgICAgICAgICogd3RmL3RleHQvU3RyaW5nT3BlcmF0b3Jz
Lmg6CisgICAgICAgICogd3RmL3RleHQvU3RyaW5nVmlldy5jcHA6CisgICAgICAgICogd3RmL3Rl
eHQvU3RyaW5nVmlldy5oOgorICAgICAgICAqIHd0Zi90ZXh0L1N5bWJvbEltcGwuY3BwOgorICAg
ICAgICAqIHd0Zi90ZXh0L1N5bWJvbFJlZ2lzdHJ5LmNwcDoKKyAgICAgICAgKiB3dGYvdGV4dC9T
eW1ib2xSZWdpc3RyeS5oOgorICAgICAgICAqIHd0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9yLmNw
cDoKKyAgICAgICAgKiB3dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvci5oOgorICAgICAgICAqIHd0
Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1UuaDoKKyAgICAgICAgKiB3dGYvdGV4
dC9UZXh0UG9zaXRpb24uaDoKKyAgICAgICAgKiB3dGYvdGV4dC9UZXh0U3RyZWFtLmNwcDoKKyAg
ICAgICAgKiB3dGYvdGV4dC9VbmlxdWVkU3RyaW5nSW1wbC5oOgorICAgICAgICAqIHd0Zi90ZXh0
L1dURlN0cmluZy5jcHA6CisgICAgICAgICogd3RmL3RleHQvV1RGU3RyaW5nLmg6CisgICAgICAg
ICogd3RmL3RleHQvY29jb2EvU3RyaW5nQ29jb2EubW06CisgICAgICAgICogd3RmL3RleHQvY29j
b2EvU3RyaW5nVmlld0NvY29hLm1tOgorICAgICAgICAqIHd0Zi90ZXh0L2NvY29hL1RleHRCcmVh
a0l0ZXJhdG9ySW50ZXJuYWxJQ1VDb2NvYS5jcHA6CisgICAgICAgICogd3RmL3RleHQvaWN1L1VU
ZXh0UHJvdmlkZXIuY3BwOgorICAgICAgICAqIHd0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmg6
CisgICAgICAgICogd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJMYXRpbjEuY3BwOgorICAgICAg
ICAqIHd0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyTGF0aW4xLmg6CisgICAgICAgICogd3RmL3Rl
eHQvaWN1L1VUZXh0UHJvdmlkZXJVVEYxNi5jcHA6CisgICAgICAgICogd3RmL3RleHQvaWN1L1VU
ZXh0UHJvdmlkZXJVVEYxNi5oOgorICAgICAgICAqIHd0Zi90aHJlYWRzL0JpbmFyeVNlbWFwaG9y
ZS5jcHA6CisgICAgICAgICogd3RmL3RocmVhZHMvQmluYXJ5U2VtYXBob3JlLmg6CisgICAgICAg
ICogd3RmL3RocmVhZHMvU2lnbmFscy5jcHA6CisgICAgICAgICogd3RmL3VuaWNvZGUvQ2hhcmFj
dGVyTmFtZXMuaDoKKyAgICAgICAgKiB3dGYvdW5pY29kZS9Db2xsYXRvci5oOgorICAgICAgICAq
IHd0Zi91bmljb2RlL0NvbGxhdG9yRGVmYXVsdC5jcHA6CisgICAgICAgICogd3RmL3VuaWNvZGUv
VVRGOC5jcHA6CisgICAgICAgICogd3RmL3VuaWNvZGUvVVRGOC5oOgorCiAyMDE4LTEwLTEyICBB
bGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWxs
b3cgZW5jb2Rpbmcgb2Ygc21hbGwgZW51bSBjbGFzc2VzCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9B
U0NJSUNUeXBlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQVNDSUlDVHlwZS5oCShy
ZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9BU0NJSUNUeXBlLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTI2LDggKzI2LDcgQEAKICAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXVEZf
QVNDSUlDVHlwZV9oCi0jZGVmaW5lIFdURl9BU0NJSUNUeXBlX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9MQ2hhci5oPgpA
QCAtMjc1LDUgKzI3NCwzIEBAIHVzaW5nIFdURjo6dG9BU0NJSUxvd2VyVW5jaGVja2VkOwogdXNp
bmcgV1RGOjp0b0FTQ0lJVXBwZXI7CiB1c2luZyBXVEY6OnVwcGVyTmliYmxlVG9BU0NJSUhleERp
Z2l0OwogdXNpbmcgV1RGOjp1cHBlck5pYmJsZVRvTG93ZXJjYXNlQVNDSUlIZXhEaWdpdDsKLQot
I2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Bc3NlcnRpb25zLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9Bc3NlcnRpb25zLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291
cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMyLDEyICszMiwx
MiBAQAogI3ByYWdtYSBHQ0MgZGlhZ25vc3RpYyBpZ25vcmVkICItV21pc3NpbmctZm9ybWF0LWF0
dHJpYnV0ZSIKIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkFzc2VydGlvbnMuaCIK
KyNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogCi0jaW5jbHVkZSAiQ29tcGlsZXIuaCIKICNp
bmNsdWRlIDxtdXRleD4KICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgor
I2luY2x1ZGUgPHd0Zi9Db21waWxlci5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAjaW5jbHVk
ZSA8d3RmL0xvY2tlci5oPgogI2luY2x1ZGUgPHd0Zi9Mb2dnaW5nQWNjdW11bGF0b3IuaD4KSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL0Fzc2VydGlvbnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9Bc3NlcnRpb25zLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0Fz
c2VydGlvbnMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfQXNzZXJ0aW9uc19oCi0jZGVmaW5lIFdURl9Bc3NlcnRp
b25zX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL1BsYXRmb3JtLmg+CiAKQEAgLTYx
Myw1ICs2MTIsMyBAQCBJR05PUkVfQ0xBTkdfV0FSTklOR1NfRU5ECiAjZWxzZQogI2RlZmluZSBV
TlJFQUNIQUJMRV9GT1JfUExBVEZPUk0oKSBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpCiAj
ZW5kaWYKLQotI2VuZGlmIC8qIFdURl9Bc3NlcnRpb25zX2ggKi8KSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL0F0b21pY3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9BdG9taWNzLmgJKHJl
dmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0F0b21pY3MuaAkod29ya2luZyBjb3B5
KQpAQCAtMjMsOCArMjMsNyBAQAogICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBBdG9taWNzX2gKLSNk
ZWZpbmUgQXRvbWljc19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGF0b21pYz4KICNpbmNs
dWRlIDx3dGYvU3RkTGliRXh0cmFzLmg+CkBAIC00NTIsNSArNDUxLDMgQEAgdXNpbmcgV1RGOjpJ
bnB1dEFuZFZhbHVlOwogdXNpbmcgV1RGOjppbnB1dEFuZFZhbHVlOwogdXNpbmcgV1RGOjplbnN1
cmVQb2ludGVyOwogdXNpbmcgV1RGOjpvcGFxdWVNaXh0dXJlOwotCi0jZW5kaWYgLy8gQXRvbWlj
c19oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9BdXRvbWF0aWNUaHJlYWQuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL0F1dG9tYXRpY1RocmVhZC5jcHAJKHJldmlzaW9uIDIzNzA3MykK
KysrIFNvdXJjZS9XVEYvd3RmL0F1dG9tYXRpY1RocmVhZC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI0LDEwICsyNCwxMCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJB
dXRvbWF0aWNUaHJlYWQuaCIKKyNpbmNsdWRlIDx3dGYvQXV0b21hdGljVGhyZWFkLmg+CiAKLSNp
bmNsdWRlICJEYXRhTG9nLmgiCi0jaW5jbHVkZSAiVGhyZWFkaW5nLmgiCisjaW5jbHVkZSA8d3Rm
L0RhdGFMb2cuaD4KKyNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAKIG5hbWVzcGFjZSBXVEYg
ewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9BdXRvbWF0aWNUaHJlYWQuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9BdXRvbWF0aWNUaHJlYWQuaAkocmV2aXNpb24gMjM3MDczKQorKysg
U291cmNlL1dURi93dGYvQXV0b21hdGljVGhyZWFkLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDgg
KzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgV1RGX0F1dG9tYXRpY1Ro
cmVhZF9oCi0jZGVmaW5lIFdURl9BdXRvbWF0aWNUaHJlYWRfaAorI3ByYWdtYSBvbmNlCiAKICNp
bmNsdWRlIDx3dGYvQm94Lmg+CiAjaW5jbHVkZSA8d3RmL0NvbmRpdGlvbi5oPgpAQCAtMTk1LDYg
KzE5NCwzIEBAIHByaXZhdGU6CiAKIHVzaW5nIFdURjo6QXV0b21hdGljVGhyZWFkOwogdXNpbmcg
V1RGOjpBdXRvbWF0aWNUaHJlYWRDb25kaXRpb247Ci0KLSNlbmRpZiAvLyBXVEZfQXV0b21hdGlj
VGhyZWFkX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvQmFja3dhcmRzR3JhcGguaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9CYWNrd2FyZHNHcmFwaC5oCShyZXZpc2lvbiAyMzcwNzMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9CYWNrd2FyZHNHcmFwaC5oCSh3b3JraW5nIGNvcHkpCkBAIC0y
Myw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9CYWNrd2Fy
ZHNHcmFwaF9oCi0jZGVmaW5lIFdURl9CYWNrd2FyZHNHcmFwaF9oCisjcHJhZ21hIG9uY2UKIAog
I2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAjaW5jbHVkZSA8d3RmL0dyYXBoTm9kZVdvcmts
aXN0Lmg+CkBAIC0xNjcsNiArMTY2LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgog
CiB1c2luZyBXVEY6OkJhY2t3YXJkc0dyYXBoOwotCi0jZW5kaWYgLy8gV1RGX0JhY2t3YXJkc0dy
YXBoX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvQmFnLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvQmFnLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0JhZy5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBCYWdfaAotI2RlZmluZSBCYWdfaAorI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRHVtYlB0clRyYWl0cy5oPgogI2luY2x1ZGUgPHd0Zi9G
YXN0TWFsbG9jLmg+CkBAIC0xNjYsNiArMTY1LDMgQEAgdXNpbmcgUG9pc29uZWRCYWcgPSBCYWc8
VCwgUG9pc29uZWRQdHJUcgogCiB1c2luZyBXVEY6OkJhZzsKIHVzaW5nIFdURjo6UG9pc29uZWRC
YWc7Ci0KLSNlbmRpZiAvLyBCYWdfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9CYWdUb0hhc2hN
YXAuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9CYWdUb0hhc2hNYXAuaAkocmV2aXNp
b24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvQmFnVG9IYXNoTWFwLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
ICAqLwogCi0jaWZuZGVmIEJhZ1RvSGFzaE1hcF9oCi0jZGVmaW5lIEJhZ1RvSGFzaE1hcF9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9CYWcuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1h
cC5oPgpAQCAtNDQsNiArNDMsMyBAQCB2b2lkIHRvSGFzaE1hcChCYWc8RWxlbWVudFR5cGUsIEJh
Z1B0clRyCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjp0b0hhc2hNYXA7Ci0KLSNl
bmRpZiAvLyBCYWdUb0hhc2hNYXBfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9CaXRWZWN0b3Iu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0JpdFZlY3Rvci5jcHAJKHJldmlzaW9u
IDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0JpdFZlY3Rvci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAi
Qml0VmVjdG9yLmgiCisjaW5jbHVkZSA8d3RmL0JpdFZlY3Rvci5oPgogCiAjaW5jbHVkZSA8YWxn
b3JpdGhtPgogI2luY2x1ZGUgPHN0cmluZy5oPgpJbmRleDogU291cmNlL1dURi93dGYvQml0VmVj
dG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQml0VmVjdG9yLmgJKHJldmlzaW9u
IDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0JpdFZlY3Rvci5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIEJpdFZlY3Rv
cl9oCi0jZGVmaW5lIEJpdFZlY3Rvcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHN0ZGlv
Lmg+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KQEAgLTQ4Nyw1ICs0ODYsMyBAQCB0ZW1w
bGF0ZTw+IHN0cnVjdCBIYXNoVHJhaXRzPEJpdFZlY3Rvcj4gCiB9IC8vIG5hbWVzcGFjZSBXVEYK
IAogdXNpbmcgV1RGOjpCaXRWZWN0b3I7Ci0KLSNlbmRpZiAvLyBCaXRWZWN0b3JfaApJbmRleDog
U291cmNlL1dURi93dGYvQml0bWFwLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQml0
bWFwLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0JpdG1hcC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xNiw4ICsxNiw4IEBACiAgKiAgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJh
bmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMwMSAgVVNBCiAg
KgogICovCi0jaWZuZGVmIEJpdG1hcF9oCi0jZGVmaW5lIEJpdG1hcF9oCisKKyNwcmFnbWEgb25j
ZQogCiAjaW5jbHVkZSA8YXJyYXk+CiAjaW5jbHVkZSA8d3RmL0F0b21pY3MuaD4KQEAgLTQyMCw1
ICs0MjAsMyBAQCBpbmxpbmUgdW5zaWduZWQgQml0bWFwPGJpdG1hcFNpemUsIFdvcmRUCiB9IC8v
IG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpCaXRtYXA7Ci0KLSNlbmRpZgpJbmRleDogU291
cmNlL1dURi93dGYvQmxvb21GaWx0ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9C
bG9vbUZpbHRlci5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9CbG9vbUZp
bHRlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBCbG9vbUZpbHRlcl9oCi0jZGVmaW5l
IEJsb29tRmlsdGVyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8YXJyYXk+CiAjaW5jbHVk
ZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+CkBAIC0yNjMsNSArMjYyLDMgQEAgYm9vbCBDb3Vu
dGluZ0Jsb29tRmlsdGVyPGtleUJpdHM+Ojppc0NsZQogCiB1c2luZyBXVEY6OkJsb29tRmlsdGVy
OwogdXNpbmcgV1RGOjpDb3VudGluZ0Jsb29tRmlsdGVyOwotCi0jZW5kaWYKSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL0JveC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0JveC5oCShyZXZp
c2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9Cb3guaAkod29ya2luZyBjb3B5KQpAQCAt
MjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfQm94X2gK
LSNkZWZpbmUgV1RGX0JveF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9SZWZQdHIu
aD4KICNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50ZWQuaD4KQEAgLTc5LDYgKzc4LDMg
QEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkJveDsKLQotI2Vu
ZGlmIC8vIFdURl9Cb3hfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9CdWJibGVTb3J0LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQnViYmxlU29ydC5oCShyZXZpc2lvbiAyMzcwNzMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9CdWJibGVTb3J0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDgg
KzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgQnViYmxlU29ydF9oCi0j
ZGVmaW5lIEJ1YmJsZVNvcnRfaAorI3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBA
IC05Nyw2ICs5NiwzIEBAIHZvaWQgYnViYmxlU29ydChJdGVyYXRvclR5cGUgYmVnaW4sIEl0ZXIK
IH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OmJ1YmJsZVNvcnQ7Ci0KLSNlbmRpZiAv
LyBCdWJibGVTb3J0X2gKLQpJbmRleDogU291cmNlL1dURi93dGYvQnVtcFBvaW50ZXJBbGxvY2F0
b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9CdW1wUG9pbnRlckFsbG9jYXRvci5o
CShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9CdW1wUG9pbnRlckFsbG9jYXRv
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAq
LwogCi0jaWZuZGVmIEJ1bXBQb2ludGVyQWxsb2NhdG9yX2gKLSNkZWZpbmUgQnVtcFBvaW50ZXJB
bGxvY2F0b3JfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhbGdvcml0aG0+CiAjaW5jbHVk
ZSA8d3RmL1BhZ2VBbGxvY2F0aW9uLmg+CkBAIC0yNDgsNSArMjQ3LDMgQEAgcHJpdmF0ZToKIH0K
IAogdXNpbmcgV1RGOjpCdW1wUG9pbnRlckFsbG9jYXRvcjsKLQotI2VuZGlmIC8vIEJ1bXBQb2lu
dGVyQWxsb2NhdG9yX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0J5dGVPcmRlci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0J5dGVPcmRlci5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBT
b3VyY2UvV1RGL3d0Zi9CeXRlT3JkZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjgsOCArMjgsNyBA
QAogKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogKi8KIAotI2lmbmRlZiBXVEZfQnl0ZU9yZGVyX2gKLSNkZWZpbmUg
V1RGX0J5dGVPcmRlcl9oCisjcHJhZ21hIG9uY2UKIAogI2lmIE9TKFVOSVgpCiAjaW5jbHVkZSA8
YXJwYS9pbmV0Lmg+CkBAIC02MSw1ICs2MCwzIEBAIGlubGluZSB1aW50MzJfdCBodG9ubCh1aW50
MzJfdCB4KSB7IHJldHUKICNlbmRpZgogCiAjZW5kaWYgLy8gT1MoV0lORE9XUykKLQotI2VuZGlm
IC8vIFdURl9CeXRlT3JkZXJfaApJbmRleDogU291cmNlL1dURi93dGYvQ1BVVGltZS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQ1BVVGltZS5jcHAJKHJldmlzaW9uIDIzNzA3MykK
KysrIFNvdXJjZS9XVEYvd3RmL0NQVVRpbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsy
NCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkNQVVRpbWUuaCIK
KyNpbmNsdWRlIDx3dGYvQ1BVVGltZS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291
cmNlL1dURi93dGYvQ2FsbGJhY2tBZ2dyZWdhdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvQ2FsbGJhY2tBZ2dyZWdhdG9yLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9X
VEYvd3RmL0NhbGxiYWNrQWdncmVnYXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw5ICsyNSw5
IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiQ29tcGxldGlvbkhhbmRsZXIuaCIKLSNp
bmNsdWRlICJNYWluVGhyZWFkLmgiCi0jaW5jbHVkZSAiVGhyZWFkU2FmZVJlZkNvdW50ZWQuaCIK
KyNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KKyNpbmNsdWRlIDx3dGYvTWFpblRo
cmVhZC5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRTYWZlUmVmQ291bnRlZC5oPgogCiBuYW1lc3Bh
Y2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvQ2hlY2tlZEFyaXRobWV0aWMuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9DaGVja2VkQXJpdGhtZXRpYy5oCShyZXZpc2lvbiAy
MzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9DaGVja2VkQXJpdGhtZXRpYy5oCSh3b3JraW5nIGNv
cHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIENo
ZWNrZWRBcml0aG1ldGljX2gKLSNkZWZpbmUgQ2hlY2tlZEFyaXRobWV0aWNfaAorI3ByYWdtYSBv
bmNlCiAKICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogCkBAIC05MjEsNSArOTIwLDMgQEAg
dXNpbmcgV1RGOjpjaGVja2VkU3VtOwogdXNpbmcgV1RGOjpkaWZmZXJlbmNlT3ZlcmZsb3dzOwog
dXNpbmcgV1RGOjpwcm9kdWN0T3ZlcmZsb3dzOwogdXNpbmcgV1RGOjpzdW1PdmVyZmxvd3M7Ci0K
LSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvQ2hlY2tlZEJvb2xlYW4uaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi9DaGVja2VkQm9vbGVhbi5oCShyZXZpc2lvbiAyMzcwNzMpCisr
KyBTb3VyY2UvV1RGL3d0Zi9DaGVja2VkQm9vbGVhbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4
ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIENoZWNrZWRCb29sZWFu
X2gKLSNkZWZpbmUgQ2hlY2tlZEJvb2xlYW5faAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3
dGYvQXNzZXJ0aW9ucy5oPgogCkBAIC02Niw1ICs2NSwzIEBAIHByaXZhdGU6CiAgICAgbXV0YWJs
ZSBib29sIG1fY2hlY2tlZDsKICNlbmRpZgogfTsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi9DbG9ja1R5cGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0Nsb2NrVHlw
ZS5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0Nsb2NrVHlwZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiQ2xvY2tUeXBlLmgiCisjaW5jbHVkZSA8d3RmL0Nsb2NrVHlwZS5oPgog
CiAjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Ns
b2NrVHlwZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0Nsb2NrVHlwZS5oCShyZXZp
c2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9DbG9ja1R5cGUuaAkod29ya2luZyBjb3B5
KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZf
Q2xvY2tUeXBlX2gKLSNkZWZpbmUgV1RGX0Nsb2NrVHlwZV9oCisjcHJhZ21hIG9uY2UKIAogbmFt
ZXNwYWNlIFdURiB7CiAKQEAgLTQwLDUgKzM5LDMgQEAgV1RGX0VYUE9SVF9QUklWQVRFIHZvaWQg
cHJpbnRJbnRlcm5hbChQcgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6Q2xvY2tU
eXBlOwotCi0jZW5kaWYgLy8gV1RGX0Nsb2NrVHlwZV9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9D
b21tYVByaW50ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Db21tYVByaW50ZXIu
aAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvQ29tbWFQcmludGVyLmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDEwICsyMyw5IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0j
aWZuZGVmIENvbW1hUHJpbnRlcl9oCi0jZGVmaW5lIENvbW1hUHJpbnRlcl9oCisjcHJhZ21hIG9u
Y2UKIAotI2luY2x1ZGUgIlByaW50U3RyZWFtLmgiCisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFt
Lmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC02MSw2ICs2MCwzIEBAIHByaXZhdGU6CiB9IC8v
IG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpDb21tYVByaW50ZXI7Ci0KLSNlbmRpZiAvLyBD
b21tYVByaW50ZXJfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Db21waWxhdGlvblRocmVhZC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQ29tcGlsYXRpb25UaHJlYWQuY3BwCShy
ZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9Db21waWxhdGlvblRocmVhZC5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI0LDEyICsyNCwxMiBAQAogICovCiAKICNpbmNsdWRlICJjb25m
aWcuaCIKLSNpbmNsdWRlICJDb21waWxhdGlvblRocmVhZC5oIgorI2luY2x1ZGUgPHd0Zi9Db21w
aWxhdGlvblRocmVhZC5oPgogCi0jaW5jbHVkZSAiU3RkTGliRXh0cmFzLmgiCi0jaW5jbHVkZSAi
VGhyZWFkU3BlY2lmaWMuaCIKLSNpbmNsdWRlICJUaHJlYWRpbmcuaCIKICNpbmNsdWRlIDxtdXRl
eD4KKyNpbmNsdWRlIDx3dGYvU3RkTGliRXh0cmFzLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZFNw
ZWNpZmljLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgogCiBuYW1lc3BhY2UgV1RGIHsK
IApJbmRleDogU291cmNlL1dURi93dGYvQ29tcGlsYXRpb25UaHJlYWQuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9Db21waWxhdGlvblRocmVhZC5oCShyZXZpc2lvbiAyMzcwNzMpCisr
KyBTb3VyY2UvV1RGL3d0Zi9Db21waWxhdGlvblRocmVhZC5oCSh3b3JraW5nIGNvcHkpCkBAIC0y
Myw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIENvbXBpbGF0aW9u
VGhyZWFkX2gKLSNkZWZpbmUgQ29tcGlsYXRpb25UaHJlYWRfaAorI3ByYWdtYSBvbmNlCiAKIG5h
bWVzcGFjZSBXVEYgewogCkBAIC01NCw2ICs1MywzIEBAIHByaXZhdGU6CiAKIHVzaW5nIFdURjo6
Q29tcGlsYXRpb25TY29wZTsKIHVzaW5nIFdURjo6ZXhjaGFuZ2VJc0NvbXBpbGF0aW9uVGhyZWFk
OwotCi0jZW5kaWYgLy8gQ29tcGlsYXRpb25UaHJlYWRfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9Db21waWxlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NvbXBpbGVyLmgJKHJl
dmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0NvbXBpbGVyLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgV1RG
X0NvbXBpbGVyX2gKLSNkZWZpbmUgV1RGX0NvbXBpbGVyX2gKKyNwcmFnbWEgb25jZQogCiAvKiBD
T01QSUxFUigpIC0gdGhlIGNvbXBpbGVyIGJlaW5nIHVzZWQgdG8gYnVpbGQgdGhlIHByb2plY3Qg
Ki8KICNkZWZpbmUgQ09NUElMRVIoV1RGX0ZFQVRVUkUpIChkZWZpbmVkIFdURl9DT01QSUxFUl8j
I1dURl9GRUFUVVJFICAmJiBXVEZfQ09NUElMRVJfIyNXVEZfRkVBVFVSRSkKQEAgLTQ2NCw1ICs0
NjMsMyBAQAogCiAjZGVmaW5lIElHTk9SRV9OVUxMX0NIRUNLX1dBUk5JTkdTX0JFR0lOIElHTk9S
RV9XQVJOSU5HU19CRUdJTigibm9ubnVsbCIpCiAjZGVmaW5lIElHTk9SRV9OVUxMX0NIRUNLX1dB
Uk5JTkdTX0VORCBJR05PUkVfV0FSTklOR1NfRU5ECi0KLSNlbmRpZiAvKiBXVEZfQ29tcGlsZXJf
aCAqLwpJbmRleDogU291cmNlL1dURi93dGYvQ29uY3VycmVudFB0ckhhc2hTZXQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NvbmN1cnJlbnRQdHJIYXNoU2V0LmNwcAkocmV2aXNp
b24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvQ29uY3VycmVudFB0ckhhc2hTZXQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIkNvbmN1cnJlbnRQdHJIYXNoU2V0LmgiCisjaW5jbHVkZSA8d3RmL0NvbmN1
cnJlbnRQdHJIYXNoU2V0Lmg+CiAKICNpbmNsdWRlIDx3dGYvRGF0YUxvZy5oPgogCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9Db25jdXJyZW50VmVjdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvQ29uY3VycmVudFZlY3Rvci5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RG
L3d0Zi9Db25jdXJyZW50VmVjdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDcgQEAK
ICAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBDb25jdXJyZW50VmVjdG9yX2gKLSNkZWZpbmUg
Q29uY3VycmVudFZlY3Rvcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Db25jdXJy
ZW50QnVmZmVyLmg+CiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CkBAIC0yNjUsNSArMjY0
LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkNvbmN1cnJl
bnRWZWN0b3I7Ci0KLSNlbmRpZiAvLyBDb25jdXJyZW50VmVjdG9yX2gKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL0NvbmRpdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NvbmRpdGlv
bi5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9Db25kaXRpb24uaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBXVEZfQ29uZGl0aW9uX2gKLSNkZWZpbmUgV1RGX0NvbmRpdGlvbl9oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogI2luY2x1ZGUgPHd0Zi9QYXJraW5n
TG90Lmg+CkBAIC0xNzgsNiArMTc3LDMgQEAgdXNpbmcgU3RhdGljQ29uZGl0aW9uID0gQ29uZGl0
aW9uOwogCiB1c2luZyBXVEY6OkNvbmRpdGlvbjsKIHVzaW5nIFdURjo6U3RhdGljQ29uZGl0aW9u
OwotCi0jZW5kaWYgLy8gV1RGX0NvbmRpdGlvbl9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Nv
dW50aW5nTG9jay5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvQ291bnRpbmdMb2Nr
LmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvQ291bnRpbmdMb2NrLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25m
aWcuaCIKLSNpbmNsdWRlICJDb3VudGluZ0xvY2suaCIKKyNpbmNsdWRlIDx3dGYvQ291bnRpbmdM
b2NrLmg+CiAKICNpbmNsdWRlIDx3dGYvTG9ja0FsZ29yaXRobUlubGluZXMuaD4KIApJbmRleDog
U291cmNlL1dURi93dGYvQ3Jvc3NUaHJlYWRUYXNrSGFuZGxlci5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvQ3Jvc3NUaHJlYWRUYXNrSGFuZGxlci5jcHAJKHJldmlzaW9uIDIzNzA3
MykKKysrIFNvdXJjZS9XVEYvd3RmL0Nyb3NzVGhyZWFkVGFza0hhbmRsZXIuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2lu
Y2x1ZGUgIkNyb3NzVGhyZWFkVGFza0hhbmRsZXIuaCIKKyNpbmNsdWRlIDx3dGYvQ3Jvc3NUaHJl
YWRUYXNrSGFuZGxlci5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93
dGYvQ3J5cHRvZ3JhcGhpY1V0aWxpdGllcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvQ3J5cHRvZ3JhcGhpY1V0aWxpdGllcy5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJj
ZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNVdGlsaXRpZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
NCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkNyeXB0
b2dyYXBoaWNVdGlsaXRpZXMuaCIKKyNpbmNsdWRlIDx3dGYvQ3J5cHRvZ3JhcGhpY1V0aWxpdGll
cy5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvQ3J5cHRvZ3Jh
cGhpY1V0aWxpdGllcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NyeXB0b2dyYXBo
aWNVdGlsaXRpZXMuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvQ3J5cHRv
Z3JhcGhpY1V0aWxpdGllcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9DcnlwdG9ncmFwaGljVXRpbGl0aWVzX2gK
LSNkZWZpbmUgV1RGX0NyeXB0b2dyYXBoaWNVdGlsaXRpZXNfaAorI3ByYWdtYSBvbmNlCiAKIG5h
bWVzcGFjZSBXVEYgewogCkBAIC0zNCw1ICszMywzIEBAIFdURl9FWFBPUlRfUFJJVkFURSBpbnQg
Y29uc3RhbnRUaW1lTWVtY20KIH0KIAogdXNpbmcgV1RGOjpjb25zdGFudFRpbWVNZW1jbXA7Ci0K
LSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvQ3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21OdW1i
ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFu
ZG9tTnVtYmVyLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvQ3J5cHRv
Z3JhcGhpY2FsbHlSYW5kb21OdW1iZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOCwxMiArMjgs
MTIgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ3J5cHRvZ3JhcGhp
Y2FsbHlSYW5kb21OdW1iZXIuaCIKKyNpbmNsdWRlIDx3dGYvQ3J5cHRvZ3JhcGhpY2FsbHlSYW5k
b21OdW1iZXIuaD4KIAotI2luY2x1ZGUgIk5ldmVyRGVzdHJveWVkLmgiCi0jaW5jbHVkZSAiT1NS
YW5kb21Tb3VyY2UuaCIKICNpbmNsdWRlIDxtdXRleD4KICNpbmNsdWRlIDx3dGYvTG9jay5oPgor
I2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgorI2luY2x1ZGUgPHd0Zi9PU1JhbmRvbVNv
dXJjZS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvQ3J5cHRv
Z3JhcGhpY2FsbHlSYW5kb21OdW1iZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9D
cnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlci5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9DcnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9D
cnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlcl9oCi0jZGVmaW5lIFdURl9DcnlwdG9ncmFwaGlj
YWxseVJhbmRvbU51bWJlcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHN0ZGludC5oPgog
CkBAIC0zNyw1ICszNiwzIEBAIFdURl9FWFBPUlRfUFJJVkFURSB2b2lkIGNyeXB0b2dyYXBoaWNh
bGwKIAogdXNpbmcgV1RGOjpjcnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlcjsKIHVzaW5nIFdU
Rjo6Y3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21WYWx1ZXM7Ci0KLSNlbmRpZgpJbmRleDogU291cmNl
L1dURi93dGYvQ3VycmVudFRpbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0N1
cnJlbnRUaW1lLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvQ3VycmVu
dFRpbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMiw5ICszMiwxMCBAQAogICovCiAKICNpbmNs
dWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNb25vdG9uaWNUaW1lLmgiCi0jaW5jbHVkZSAiV2Fs
bFRpbWUuaCIKKyNpbmNsdWRlIDx3dGYvTW9ub3RvbmljVGltZS5oPgorCiAjaW5jbHVkZSA8dGlt
ZS5oPgorI2luY2x1ZGUgPHd0Zi9XYWxsVGltZS5oPgogCiAjaWYgT1MoREFSV0lOKQogI2luY2x1
ZGUgPG1hY2gvbWFjaC5oPgpJbmRleDogU291cmNlL1dURi93dGYvRGF0YUxvZy5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvRGF0YUxvZy5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysr
IFNvdXJjZS9XVEYvd3RmL0RhdGFMb2cuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw4
IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkRhdGFMb2cuaCIKKyNp
bmNsdWRlIDx3dGYvRGF0YUxvZy5oPgorCiAjaW5jbHVkZSA8c3RkYXJnLmg+CiAjaW5jbHVkZSA8
c3RyaW5nLmg+CiAjaW5jbHVkZSA8d3RmL0ZpbGVQcmludFN0cmVhbS5oPgpJbmRleDogU291cmNl
L1dURi93dGYvRGF0YUxvZy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0RhdGFMb2cu
aAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvRGF0YUxvZy5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVm
IERhdGFMb2dfaAotI2RlZmluZSBEYXRhTG9nX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8
c3RkYXJnLmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KQEAgLTc0LDYgKzczLDMgQEAgdXNpbmcgV1RG
OjpkYXRhTG9nSWY7CiB1c2luZyBXVEY6OmRhdGFMb2dMbklmOwogdXNpbmcgV1RGOjpkYXRhTG9n
RjsKIHVzaW5nIFdURjo6ZGF0YUxvZ0ZTdHJpbmc7Ci0KLSNlbmRpZiAvLyBEYXRhTG9nX2gKLQpJ
bmRleDogU291cmNlL1dURi93dGYvRGF0ZU1hdGguY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL0RhdGVNYXRoLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYv
RGF0ZU1hdGguY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03MCwxOCArNzAsMTcgQEAKICAqLwogCiAj
aW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiRGF0ZU1hdGguaCIKLQotI2luY2x1ZGUgIkFz
c2VydGlvbnMuaCIKLSNpbmNsdWRlICJBU0NJSUNUeXBlLmgiCi0jaW5jbHVkZSAiTWF0aEV4dHJh
cy5oIgotI2luY2x1ZGUgIlN0ZExpYkV4dHJhcy5oIgorI2luY2x1ZGUgPHd0Zi9EYXRlTWF0aC5o
PgogCiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPGxpbWl0cy5oPgogI2luY2x1ZGUg
PGxpbWl0cz4KICNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDx0aW1lLmg+CisjaW5jbHVk
ZSA8d3RmL0Fzc2VydGlvbnMuaD4KKyNpbmNsdWRlIDx3dGYvQVNDSUlDVHlwZS5oPgorI2luY2x1
ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CisjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KIAogI2lmIE9TKFdJTkRPV1MpCkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi9EYXRlTWF0aC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L0RhdGVNYXRoLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0RhdGVNYXRo
LmgJKHdvcmtpbmcgY29weSkKQEAgLTQwLDggKzQwLDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBE
YXRlTWF0aF9oCi0jZGVmaW5lIERhdGVNYXRoX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8
bWF0aC5oPgogI2luY2x1ZGUgPHN0ZGludC5oPgpAQCAtMTU0LDUgKzE1MywzIEBAIHVzaW5nIFdU
Rjo6cGFyc2VEYXRlRnJvbU51bGxUZXJtaW5hdGVkQ2gKIHVzaW5nIFdURjo6bWFrZVJGQzI4MjJE
YXRlU3RyaW5nOwogdXNpbmcgV1RGOjpMb2NhbFRpbWVPZmZzZXQ7CiB1c2luZyBXVEY6OmNhbGN1
bGF0ZUxvY2FsVGltZU9mZnNldDsKLQotI2VuZGlmIC8vIERhdGVNYXRoX2gKSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL0RlY2ltYWxOdW1iZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L0RlY2ltYWxOdW1iZXIuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9E
ZWNpbWFsTnVtYmVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsOCBAQAogICovCiAK
ICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJEZWNpbWFsTnVtYmVyLmgiCisjaW5jbHVk
ZSA8d3RmL0RlY2ltYWxOdW1iZXIuaD4KKwogI2luY2x1ZGUgPG1hdGguaD4KICNpbmNsdWRlIDx3
dGYvTWF0aEV4dHJhcy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpJbmRleDog
U291cmNlL1dURi93dGYvRGVjaW1hbE51bWJlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL0RlY2ltYWxOdW1iZXIuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYv
RGVjaW1hbE51bWJlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLiAKICAqLwogCi0jaWZuZGVmIERlY2ltYWxOdW1iZXJfaAotI2RlZmluZSBEZWNpbWFs
TnVtYmVyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8bWF0aC5oPgogI2luY2x1ZGUgPHd0
Zi9kdG9hLmg+CkBAIC0xMDQsNSArMTAzLDMgQEAgcHJpdmF0ZToKIHVzaW5nIFdURjo6RGVjaW1h
bE51bWJlcjsKIHVzaW5nIFdURjo6Um91bmRpbmdTaWduaWZpY2FudEZpZ3VyZXM7CiB1c2luZyBX
VEY6OlJvdW5kaW5nRGVjaW1hbFBsYWNlczsKLQotI2VuZGlmIC8vIERlY2ltYWxOdW1iZXJfaApJ
bmRleDogU291cmNlL1dURi93dGYvRGVxdWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9EZXF1ZS5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9EZXF1ZS5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yNyw4ICsyNyw3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5k
ZWYgV1RGX0RlcXVlX2gKLSNkZWZpbmUgV1RGX0RlcXVlX2gKKyNwcmFnbWEgb25jZQogCiAvLyBG
SVhNRTogQ291bGQgbW92ZSB3aGF0IFZlY3RvciBhbmQgRGVxdWUgc2hhcmUgaW50byBhIHNlcGFy
YXRlIGZpbGUuCiAvLyBEZXF1ZSBkb2Vzbid0IGFjdHVhbGx5IHVzZSBWZWN0b3IuCkBAIC03ODUs
NSArNzg0LDMgQEAgaW5saW5lIFQqIERlcXVlSXRlcmF0b3JCYXNlPFQsIGlubGluZUNhcAogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6RGVxdWU7Ci0KLSNlbmRpZiAvLyBXVEZfRGVx
dWVfaApJbmRleDogU291cmNlL1dURi93dGYvRGlzYWxsb3dDVHlwZS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL0Rpc2FsbG93Q1R5cGUuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291
cmNlL1dURi93dGYvRGlzYWxsb3dDVHlwZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw3
IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX0Rpc2FsbG93Q1R5cGVfaAotI2Rl
ZmluZSBXVEZfRGlzYWxsb3dDVHlwZV9oCisjcHJhZ21hIG9uY2UKIAogLy8gVGhlIGJlaGF2aW9y
IG9mIG1hbnkgb2YgdGhlIGZ1bmN0aW9ucyBpbiB0aGUgPGN0eXBlLmg+IGhlYWRlciBpcyBkZXBl
bmRlbnQKIC8vIG9uIHRoZSBjdXJyZW50IGxvY2FsZS4gQnV0IGFsbW9zdCBhbGwgdXNlcyBvZiB0
aGVzZSBmdW5jdGlvbnMgYXJlIGZvcgpAQCAtNzksNSArNzgsMyBAQAogI2RlZmluZSB0b3VwcGVy
IHRvdXBwZXJfV1RGX1BsZWFzZV91c2VfQVNDSUlDVHlwZV9pbnN0ZWFkX29mX2N0eXBlX3NlZV9j
b21tZW50X2luX0FTQ0lJQ1R5cGVfaAogCiAjZW5kaWYKLQotI2VuZGlmCkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9Eb21pbmF0b3JzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvRG9taW5h
dG9ycy5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9Eb21pbmF0b3JzLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAK
LSNpZm5kZWYgV1RGRG9taW5hdG9yc19oCi0jZGVmaW5lIFdURkRvbWluYXRvcnNfaAorI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQ29tbWFQcmludGVyLmg+CiAjaW5jbHVkZSA8d3RmL0Zh
c3RCaXRWZWN0b3IuaD4KQEAgLTc0OCw2ICs3NDcsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3Bh
Y2UgV1RGCiAKIHVzaW5nIFdURjo6RG9taW5hdG9yczsKLQotI2VuZGlmIC8vIFdURkRvbWluYXRv
cnNfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Eb3VibHlMaW5rZWRMaXN0LmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvRG91Ymx5TGlua2VkTGlzdC5oCShyZXZpc2lvbiAyMzcwNzMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9Eb3VibHlMaW5rZWRMaXN0LmgJKHdvcmtpbmcgY29weSkKQEAg
LTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwog
Ci0jaWZuZGVmIERvdWJseUxpbmtlZExpc3RfaAotI2RlZmluZSBEb3VibHlMaW5rZWRMaXN0X2gK
KyNwcmFnbWEgb25jZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMjE2LDUgKzIxNSwzIEBAIHRl
bXBsYXRlPHR5cGVuYW1lIFQ+IGlubGluZSB2b2lkIERvdWJseUwKIAogdXNpbmcgV1RGOjpEb3Vi
bHlMaW5rZWRMaXN0Tm9kZTsKIHVzaW5nIFdURjo6RG91Ymx5TGlua2VkTGlzdDsKLQotI2VuZGlm
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9GYXN0Qml0VmVjdG9yLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9GYXN0Qml0VmVjdG9yLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291
cmNlL1dURi93dGYvRmFzdEJpdFZlY3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0
LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiRmFzdEJpdFZlY3Rv
ci5oIgorI2luY2x1ZGUgPHd0Zi9GYXN0Qml0VmVjdG9yLmg+CiAKIG5hbWVzcGFjZSBXVEYgewog
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dU
Ri93dGYvRmFzdE1hbGxvYy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDExICsyNCwxMSBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJGYXN0TWFsbG9jLmgiCisjaW5j
bHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KIAotI2luY2x1ZGUgIkNoZWNrZWRBcml0aG1ldGljLmgi
CiAjaW5jbHVkZSA8bGltaXRzPgogI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHd0Zi9D
aGVja2VkQXJpdGhtZXRpYy5oPgogI2luY2x1ZGUgPHd0Zi9EYXRhTG9nLmg+CiAKICNpZiBPUyhX
SU5ET1dTKQpJbmRleDogU291cmNlL1dURi93dGYvRmFzdE1hbGxvYy5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2MuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNl
L1dURi93dGYvRmFzdE1hbGxvYy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOCw4ICsxOCw3IEBACiAg
KgogICovCiAKLSNpZm5kZWYgV1RGX0Zhc3RNYWxsb2NfaAotI2RlZmluZSBXVEZfRmFzdE1hbGxv
Y19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPG5ldz4KICNpbmNsdWRlIDxzdGRsaWIuaD4K
QEAgLTI5OCw1ICsyOTcsMyBAQCB0eXBlZGVmIGludCBfX3RoaXNJc0hlcmVUb0ZvcmNlQVNlbWlj
b2xvCiAjZGVmaW5lIFdURl9NQUtFX1NUUlVDVF9GQVNUX0FMTE9DQVRFRCBcCiAgICAgV1RGX01B
S0VfRkFTVF9BTExPQ0FURURfSU1QTCBcCiB0eXBlZGVmIGludCBfX3RoaXNJc0hlcmVUb0ZvcmNl
QVNlbWljb2xvbkFmdGVyVGhpc01hY3JvCi0KLSNlbmRpZiAvKiBXVEZfRmFzdE1hbGxvY19oICov
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL0ZlYXR1cmVEZWZpbmVzLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJj
ZS9XVEYvd3RmL0ZlYXR1cmVEZWZpbmVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDcg
QEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXVEZfRmVhdHVyZURlZmluZXNfaAot
I2RlZmluZSBXVEZfRmVhdHVyZURlZmluZXNfaAorI3ByYWdtYSBvbmNlCiAKIC8qIFVzZSB0aGlz
IGZpbGUgdG8gbGlzdCBfYWxsXyBFTkFCTEUoKSBtYWNyb3MuIERlZmluZSB0aGUgbWFjcm9zIHRv
IGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nIHZhbHVlczoKICAqICAtICIwIiBkaXNhYmxlcyB0aGUg
ZmVhdHVyZSBieSBkZWZhdWx0LiBUaGUgZmVhdHVyZSBjYW4gc3RpbGwgYmUgZW5hYmxlZCBmb3Ig
YSBzcGVjaWZpYyBwb3J0IG9yIGVudmlyb25tZW50LgpAQCAtNzE4LDUgKzcxNywzIEBAIHRoZSBw
dWJsaWMgaU9TIFNESy4gU2VlIDxodHRwczovL3dlYmtpdC4KICNpZiBFTkFCTEUoV0VCR0wyKSAm
JiAhRU5BQkxFKFdFQkdMKQogI2Vycm9yICJFTkFCTEUoV0VCR0wyKSByZXF1aXJlcyBFTkFCTEUo
V0VCR0wpIgogI2VuZGlmCi0KLSNlbmRpZiAvKiBXVEZfRmVhdHVyZURlZmluZXNfaCAqLwpJbmRl
eDogU291cmNlL1dURi93dGYvRmlsZVByaW50U3RyZWFtLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9GaWxlUHJpbnRTdHJlYW0uY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9GaWxlUHJpbnRTdHJlYW0uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsy
NCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkZpbGVQcmludFN0
cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi9GaWxlUHJpbnRTdHJlYW0uaD4KIAogbmFtZXNwYWNlIFdU
RiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0ZpbGVQcmludFN0cmVhbS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL0ZpbGVQcmludFN0cmVhbS5oCShyZXZpc2lvbiAyMzcwNzMpCisr
KyBTb3VyY2UvV1RGL3d0Zi9GaWxlUHJpbnRTdHJlYW0uaAkod29ya2luZyBjb3B5KQpAQCAtMjMs
OCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBGaWxlUHJpbnRTdHJl
YW1faAotI2RlZmluZSBGaWxlUHJpbnRTdHJlYW1faAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRl
IDxzdGRpby5oPgogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgpAQCAtNTYsNiArNTUsMyBA
QCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6RmlsZVByaW50U3Ry
ZWFtOwotCi0jZW5kaWYgLy8gRmlsZVByaW50U3RyZWFtX2gKLQpJbmRleDogU291cmNlL1dURi93
dGYvRmxpcEJ5dGVzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvRmxpcEJ5dGVzLmgJ
KHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0ZsaXBCeXRlcy5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVm
IEZsaXBCeXRlc19oCi0jZGVmaW5lIEZsaXBCeXRlc19oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNw
YWNlIFdURiB7CiAKQEAgLTExMiw2ICsxMTEsMyBAQCBpbmxpbmUgVCBmbGlwQnl0ZXNJZkxpdHRs
ZUVuZGlhbihUIHZhbHVlCiB1c2luZyBXVEY6Om5lZWRUb0ZsaXBCeXRlc0lmTGl0dGxlRW5kaWFu
OwogdXNpbmcgV1RGOjpmbGlwQnl0ZXM7CiB1c2luZyBXVEY6OmZsaXBCeXRlc0lmTGl0dGxlRW5k
aWFuOwotCi0jZW5kaWYgLy8gRmxpcEJ5dGVzX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvRnVu
Y3Rpb25EaXNwYXRjaGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9GdW5jdGlv
bkRpc3BhdGNoZXIuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9GdW5j
dGlvbkRpc3BhdGNoZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8K
IAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkZ1bmN0aW9uRGlzcGF0Y2hlci5oIgor
I2luY2x1ZGUgPHd0Zi9GdW5jdGlvbkRpc3BhdGNoZXIuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL0Z1bmN0aW9uRGlzcGF0Y2hlci5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL0Z1bmN0aW9uRGlzcGF0Y2hlci5oCShyZXZpc2lvbiAyMzcwNzMpCisr
KyBTb3VyY2UvV1RGL3d0Zi9GdW5jdGlvbkRpc3BhdGNoZXIuaAkod29ya2luZyBjb3B5KQpAQCAt
MjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAK
LSNpZm5kZWYgRnVuY3Rpb25EaXNwYXRjaGVyX2gKLSNkZWZpbmUgRnVuY3Rpb25EaXNwYXRjaGVy
X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Z1bmN0aW9uLmg+CiAjaW5jbHVkZSA8
d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+CkBAIC00Nyw1ICs0NiwzIEBAIHByb3RlY3RlZDoK
IH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkZ1bmN0aW9uRGlzcGF0Y2hlcjsKLQot
I2VuZGlmIC8vIEZ1bmN0aW9uRGlzcGF0Y2hlcl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9HZXRQ
dHIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9HZXRQdHIuaAkocmV2aXNpb24gMjM3
MDczKQorKysgU291cmNlL1dURi93dGYvR2V0UHRyLmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDgg
KzE4LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBXVEZfR2V0UHRyX2gKLSNkZWZpbmUgV1RGX0dl
dFB0cl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPG1lbW9yeT4KIApAQCAtNzgsNSArNzcs
MyBAQCBzdHJ1Y3QgR2V0UHRySGVscGVyPHN0ZDo6dW5pcXVlX3B0cjxULCBECiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFdURl9HZXRQdHJfaApJbmRleDogU291cmNlL1dU
Ri93dGYvR2lnYWNhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0dpZ2FjYWdl
LmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvR2lnYWNhZ2UuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIkdpZ2FjYWdlLmgiCisjaW5jbHVkZSA8d3RmL0dpZ2FjYWdlLmg+CiAKICNp
bmNsdWRlIDx3dGYvQXRvbWljcy5oPgogI2luY2x1ZGUgPHd0Zi9QYWdlQmxvY2suaD4KSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL0dsb2JhbFZlcnNpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL0dsb2JhbFZlcnNpb24uY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RG
L3d0Zi9HbG9iYWxWZXJzaW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJHbG9iYWxWZXJzaW9uLmgiCisj
aW5jbHVkZSA8d3RmL0dsb2JhbFZlcnNpb24uaD4KIAogI2luY2x1ZGUgPHd0Zi9BdG9taWNzLmg+
CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0dyYXBoTm9kZVdvcmtsaXN0LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvR3JhcGhOb2RlV29ya2xpc3QuaAkocmV2aXNpb24gMjM3MDczKQor
KysgU291cmNlL1dURi93dGYvR3JhcGhOb2RlV29ya2xpc3QuaAkod29ya2luZyBjb3B5KQpAQCAt
MjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBHcmFwaE5vZGVX
b3JrbGlzdF9oCi0jZGVmaW5lIEdyYXBoTm9kZVdvcmtsaXN0X2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KIApAQCAtMjE4LDYgKzIxNywzIEBAIHVzaW5nIFdURjo6
RXh0ZW5kZWRHcmFwaE5vZGVXb3JrbGlzdDsKIHVzaW5nIFdURjo6R3JhcGhWaXNpdE9yZGVyOwog
dXNpbmcgV1RGOjpHcmFwaE5vZGVXaXRoT3JkZXI7CiB1c2luZyBXVEY6OlBvc3RPcmRlckdyYXBo
Tm9kZVdvcmtsaXN0OwotCi0jZW5kaWYgLy8gR3JhcGhOb2RlV29ya2xpc3RfaAotCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9HcmVnb3JpYW5EYXRlVGltZS5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvR3JlZ29yaWFuRGF0ZVRpbWUuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9HcmVnb3JpYW5EYXRlVGltZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIzLDkg
KzIzLDkgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiR3JlZ29yaWFu
RGF0ZVRpbWUuaCIKKyNpbmNsdWRlIDx3dGYvR3JlZ29yaWFuRGF0ZVRpbWUuaD4KIAotI2luY2x1
ZGUgIkRhdGVNYXRoLmgiCisjaW5jbHVkZSA8d3RmL0RhdGVNYXRoLmg+CiAKICNpZiBPUyhXSU5E
T1dTKQogI2luY2x1ZGUgPHdpbmRvd3MuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0dyZWdvcmlh
bkRhdGVUaW1lLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvR3JlZ29yaWFuRGF0ZVRp
bWUuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvR3JlZ29yaWFuRGF0ZVRp
bWUuaAkod29ya2luZyBjb3B5KQpAQCAtMjIsOCArMjIsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwog
Ci0jaWZuZGVmIFdURl9HcmVnb3JpYW5EYXRlVGltZV9oCi0jZGVmaW5lIFdURl9HcmVnb3JpYW5E
YXRlVGltZV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUg
PHRpbWUuaD4KQEAgLTEyNCw1ICsxMjMsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RG
CiAKIHVzaW5nIFdURjo6R3JlZ29yaWFuRGF0ZVRpbWU7Ci0KLSNlbmRpZiAvLyBXVEZfR3JlZ29y
aWFuRGF0ZVRpbWVfaApJbmRleDogU291cmNlL1dURi93dGYvSGFzaEZ1bmN0aW9ucy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0hhc2hGdW5jdGlvbnMuaAkocmV2aXNpb24gMjM3MDcz
KQorKysgU291cmNlL1dURi93dGYvSGFzaEZ1bmN0aW9ucy5oCSh3b3JraW5nIGNvcHkpCkBAIC0x
OCw4ICsxOCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX0hhc2hGdW5jdGlvbnNfaAotI2Rl
ZmluZSBXVEZfSGFzaEZ1bmN0aW9uc19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHN0ZGlu
dC5oPgogI2luY2x1ZGUgPHR1cGxlPgpAQCAtMjc2LDUgKzI3NSwzIEBAIG5hbWVzcGFjZSBXVEYg
ewogdXNpbmcgV1RGOjpEZWZhdWx0SGFzaDsKIHVzaW5nIFdURjo6SW50SGFzaDsKIHVzaW5nIFdU
Rjo6UHRySGFzaDsKLQotI2VuZGlmIC8vIFdURl9IYXNoRnVuY3Rpb25zX2gKSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL0hhc2hNYXAuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9IYXNoTWFw
LmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0hhc2hNYXAuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMTgsOCArMTgsNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9IYXNoTWFw
X2gKLSNkZWZpbmUgV1RGX0hhc2hNYXBfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxpbml0
aWFsaXplcl9saXN0PgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CkBAIC01NzksNSArNTc4LDMg
QEAgaW5saW5lIGJvb2wgb3BlcmF0b3IhPShjb25zdCBIYXNoTWFwPFQsIAogfSAvLyBuYW1lc3Bh
Y2UgV1RGCiAKIHVzaW5nIFdURjo6SGFzaE1hcDsKLQotI2VuZGlmIC8qIFdURl9IYXNoTWFwX2gg
Ki8KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0hhc2hNZXRob2QuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV1RGL3d0Zi9IYXNoTWV0aG9kLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYv
d3RmL0hhc2hNZXRob2QuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBIYXNoTWV0aG9kX2gKLSNkZWZpbmUgSGFzaE1ldGhv
ZF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KIApAQCAt
NDEsNSArNDAsMyBAQCBzdHJ1Y3QgSGFzaE1ldGhvZCB7CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAog
dXNpbmcgV1RGOjpIYXNoTWV0aG9kOwotCi0jZW5kaWYgLy8gSGFzaE1ldGhvZF9oCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9IYXNoU2V0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvSGFz
aFNldC5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9IYXNoU2V0LmgJKHdv
cmtpbmcgY29weSkKQEAgLTE4LDggKzE4LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBXVEZfSGFz
aFNldF9oCi0jZGVmaW5lIFdURl9IYXNoU2V0X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8
aW5pdGlhbGl6ZXJfbGlzdD4KICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgpAQCAtMzg0LDUgKzM4
MywzIEBAIHZvaWQgSGFzaFNldDxULCBVLCBWPjo6YWRkKHN0ZDo6aW5pdGlhbGkKIH0gLy8gbmFt
ZXNwYWNlIFdURgogCiB1c2luZyBXVEY6Okhhc2hTZXQ7Ci0KLSNlbmRpZiAvKiBXVEZfSGFzaFNl
dF9oICovCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL0hhc2hUYWJsZS5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJj
ZS9XVEYvd3RmL0hhc2hUYWJsZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4LDEwICsxOCwxMCBA
QAogKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkhhc2hUYWJsZS5oIgorI2lu
Y2x1ZGUgPHd0Zi9IYXNoVGFibGUuaD4KIAotI2luY2x1ZGUgIkRhdGFMb2cuaCIKICNpbmNsdWRl
IDxtdXRleD4KKyNpbmNsdWRlIDx3dGYvRGF0YUxvZy5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJ
bmRleDogU291cmNlL1dURi93dGYvSGFzaFRyYWl0cy5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL0hhc2hUcmFpdHMuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYv
SGFzaFRyYWl0cy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOCw4ICsxOCw3IEBACiAgKgogICovCiAK
LSNpZm5kZWYgV1RGX0hhc2hUcmFpdHNfaAotI2RlZmluZSBXVEZfSGFzaFRyYWl0c19oCisjcHJh
Z21hIG9uY2UKIAogI2luY2x1ZGUgPGxpbWl0cz4KICNpbmNsdWRlIDx1dGlsaXR5PgpAQCAtMzgw
LDUgKzM3OSwzIEBAIHVzaW5nIFdURjo6S2V5VmFsdWVQYWlyOwogdXNpbmcgV1RGOjpQYWlySGFz
aFRyYWl0czsKIHVzaW5nIFdURjo6TnVsbGFibGVIYXNoVHJhaXRzOwogdXNpbmcgV1RGOjpTaW1w
bGVDbGFzc0hhc2hUcmFpdHM7Ci0KLSNlbmRpZiAvLyBXVEZfSGFzaFRyYWl0c19oCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9JbmRlbnRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0lu
ZGVudGVyLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0luZGVudGVyLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAot
I2lmbmRlZiBJbmRlbnRlcl9oCi0jZGVmaW5lIEluZGVudGVyX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5n
Lmg+CkBAIC02Myw1ICs2MiwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNp
bmcgV1RGOjpJbmRlbnRlcjsKLQotI2VuZGlmIC8vIEluZGVudGVyX2gKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL0luZGV4U3BhcnNlU2V0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvSW5k
ZXhTcGFyc2VTZXQuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvSW5kZXhT
cGFyc2VTZXQuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi0jaWZuZGVmIEluZGV4U3BhcnNlU2V0X2gKLSNkZWZpbmUgSW5kZXhTcGFyc2VT
ZXRfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKQEAgLTIzMCw1
ICsyMjksMyBAQCBhdXRvIEluZGV4U3BhcnNlU2V0PEVudHJ5VHlwZSwgRW50cnlUeXBlCiAKIHVz
aW5nIFdURjo6RGVmYXVsdEluZGV4U3BhcnNlU2V0VHJhaXRzOwogdXNpbmcgV1RGOjpJbmRleFNw
YXJzZVNldDsKLQotI2VuZGlmIC8vIEluZGV4U3BhcnNlU2V0X2gKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL0lubGluZUFTTS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0lubGluZUFTTS5o
CShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9JbmxpbmVBU00uaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjMsOSArMjMsMTAgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5k
ZWYgSW5saW5lQVNNX2gKLSNkZWZpbmUgSW5saW5lQVNNX2gKKyNwcmFnbWEgb25jZQorCiAjaW5j
bHVkZSA8d3RmL1BsYXRmb3JtLmg+CisKICNpZiAhQ1BVKFVOS05PV04pCiAKIC8qIGFzbSBkaXJl
Y3RpdmUgaGVscGVycyAqLyAKQEAgLTk5LDQgKzEwMCwzIEBACiAjZW5kaWYKIAogI2VuZGlmIC8v
ICFDUFUoVU5LTk9XTikKLSNlbmRpZiAvLyBJbmxpbmVBU01faApJbmRleDogU291cmNlL1dURi93
dGYvSW5zZXJ0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvSW5zZXJ0aW9uLmgJ
KHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0luc2VydGlvbi5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVm
IEluc2VydGlvbl9oCi0jZGVmaW5lIEluc2VydGlvbl9oCisjcHJhZ21hIG9uY2UKIAogbmFtZXNw
YWNlIFdURiB7CiAKQEAgLTgxLDUgKzgwLDMgQEAgc2l6ZV90IGV4ZWN1dGVJbnNlcnRpb25zKFRh
cmdldFZlY3RvclR5cAogCiB1c2luZyBXVEY6Okluc2VydGlvbjsKIHVzaW5nIFdURjo6ZXhlY3V0
ZUluc2VydGlvbnM7Ci0KLSNlbmRpZiAvLyBJbnNlcnRpb25faApJbmRleDogU291cmNlL1dURi93
dGYvSXRlcmF0b3JBZGFwdG9ycy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0l0ZXJh
dG9yQWRhcHRvcnMuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvSXRlcmF0
b3JBZGFwdG9ycy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXVEZfSXRlcmF0b3JBZGFw
dG9yc19oCi0jZGVmaW5lIFdURl9JdGVyYXRvckFkYXB0b3JzX2gKKyNwcmFnbWEgb25jZQogCiAj
aW5jbHVkZSA8dHlwZV90cmFpdHM+CiAKQEAgLTEwOSw1ICsxMDgsMyBAQCBpbmxpbmUgVHJhbnNm
b3JtSXRlcmF0b3I8VHJhbnNmb3JtLCBJdGVyCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdURgotCi0j
ZW5kaWYgLy8gV1RGX0l0ZXJhdG9yQWRhcHRvcnNfaApJbmRleDogU291cmNlL1dURi93dGYvSXRl
cmF0b3JSYW5nZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0l0ZXJhdG9yUmFuZ2Uu
aAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvSXRlcmF0b3JSYW5nZS5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXVEZfSXRlcmF0b3JSYW5nZV9oCi0jZGVmaW5lIFdU
Rl9JdGVyYXRvclJhbmdlX2gKKyNwcmFnbWEgb25jZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAt
NzksNSArNzgsMyBAQCBTaXplZEl0ZXJhdG9yUmFuZ2U8Q29udGFpbmVyLCBJdGVyYXRvcj4gCiB9
CiAKIH0gLy8gbmFtZXNwYWNlIFdURgotCi0jZW5kaWYgLy8gV1RGX0l0ZXJhdG9yUmFuZ2VfaApJ
bmRleDogU291cmNlL1dURi93dGYvSlNPTlZhbHVlcy5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvSlNPTlZhbHVlcy5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYv
d3RmL0pTT05WYWx1ZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMSw3ICszMSw3IEBACiAgKi8K
IAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkpTT05WYWx1ZXMuaCIKKyNpbmNsdWRl
IDx3dGYvSlNPTlZhbHVlcy5oPgogCiAjaW5jbHVkZSA8d3RmL0RlY2ltYWxOdW1iZXIuaD4KICNp
bmNsdWRlIDx3dGYvZHRvYS5oPgpJbmRleDogU291cmNlL1dURi93dGYvSlNWYWx1ZU1hbGxvYy5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvSlNWYWx1ZU1hbGxvYy5jcHAJKHJldmlz
aW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0pTVmFsdWVNYWxsb2MuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2lu
Y2x1ZGUgIkpTVmFsdWVNYWxsb2MuaCIKKyNpbmNsdWRlIDx3dGYvSlNWYWx1ZU1hbGxvYy5oPgog
CiAjaW5jbHVkZSA8d3RmL0RhdGFMb2cuaD4KICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgpJ
bmRleDogU291cmNlL1dURi93dGYvTEVCRGVjb2Rlci5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL0xFQkRlY29kZXIuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYv
TEVCRGVjb2Rlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw5ICsyNSw5IEBACiAKICNwcmFnbWEg
b25jZQogCi0jaW5jbHVkZSAiQ29tcGlsZXIuaCIKICNpbmNsdWRlIDxhbGdvcml0aG0+CiAjaW5j
bHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8d3RmL0NvbXBpbGVyLmg+CiAKIC8vIFRoaXMgZmls
ZSBjb250YWlucyBhIGJ1bmNoIG9mIGhlbHBlciBmdW5jdGlvbnMgZm9yIGRlY29kaW5nIExFQiBu
dW1iZXJzLgogLy8gU2VlIGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0xFQjEyOCBmb3Ig
bW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0xhbmd1YWdl
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9MYW5ndWFnZS5jcHAJKHJldmlzaW9u
IDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0xhbmd1YWdlLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJM
YW5ndWFnZS5oIgorI2luY2x1ZGUgPHd0Zi9MYW5ndWFnZS5oPgogCiAjaW5jbHVkZSA8d3RmL0hh
c2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL0xpc3REdW1wLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTGlzdER1bXAu
aAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvTGlzdER1bXAuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjMsMTIgKzIzLDExIEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZu
ZGVmIExpc3REdW1wX2gKLSNkZWZpbmUgTGlzdER1bXBfaAorI3ByYWdtYSBvbmNlCiAKLSNpbmNs
dWRlICJDb21tYVByaW50ZXIuaCIKLSNpbmNsdWRlICJQcmludFN0cmVhbS5oIgotI2luY2x1ZGUg
IlN0cmluZ1ByaW50U3RyZWFtLmgiCisjaW5jbHVkZSA8d3RmL0NvbW1hUHJpbnRlci5oPgorI2lu
Y2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgorI2luY2x1ZGUgPHd0Zi9TdHJpbmdQcmludFN0cmVh
bS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMTgyLDYgKzE4MSwzIEBAIHVzaW5nIFdURjo6
bWFwRHVtcDsKIHVzaW5nIFdURjo6cG9pbnRlckxpc3REdW1wOwogdXNpbmcgV1RGOjpzb3J0ZWRM
aXN0RHVtcDsKIHVzaW5nIFdURjo6c29ydGVkTWFwRHVtcDsKLQotI2VuZGlmIC8vIExpc3REdW1w
X2gKLQpJbmRleDogU291cmNlL1dURi93dGYvTG9jay5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvTG9jay5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL0xv
Y2suY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIkxvY2suaCIKKyNpbmNsdWRlIDx3dGYvTG9jay5oPgogCiAj
aW5jbHVkZSA8d3RmL0xvY2tBbGdvcml0aG1JbmxpbmVzLmg+CiAjaW5jbHVkZSA8d3RmL1N0YWNr
U2hvdFByb2ZpbGVyLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Mb2NrLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvTG9jay5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RG
L3d0Zi9Mb2NrLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAogICovCiAKLSNpZm5kZWYgV1RGX0xvY2tfaAotI2RlZmluZSBXVEZfTG9ja19oCisjcHJh
Z21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Mb2NrQWxnb3JpdGhtLmg+CiAjaW5jbHVkZSA8d3Rm
L0xvY2tlci5oPgpAQCAtMTM4LDYgKzEzNywzIEBAIHVzaW5nIExvY2tIb2xkZXIgPSBMb2NrZXI8
TG9jaz47CiAKIHVzaW5nIFdURjo6TG9jazsKIHVzaW5nIFdURjo6TG9ja0hvbGRlcjsKLQotI2Vu
ZGlmIC8vIFdURl9Mb2NrX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvTG9ja0FsZ29yaXRobS5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0xvY2tBbGdvcml0aG0uaAkocmV2aXNpb24g
MjM3MDczKQorKysgU291cmNlL1dURi93dGYvTG9ja0FsZ29yaXRobS5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9M
b2NrQWxnb3JpdGhtX2gKLSNkZWZpbmUgV1RGX0xvY2tBbGdvcml0aG1faAorI3ByYWdtYSBvbmNl
CiAKICNpbmNsdWRlIDx3dGYvQXRvbWljcy5oPgogI2luY2x1ZGUgPHd0Zi9Db21waWxlci5oPgpA
QCAtMTU1LDYgKzE1NCwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcg
V1RGOjpMb2NrQWxnb3JpdGhtOwotCi0jZW5kaWYgLy8gV1RGX0xvY2tBbGdvcml0aG1faAotCklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9Mb2NrZWRQcmludFN0cmVhbS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvTG9ja2VkUHJpbnRTdHJlYW0uY3BwCShyZXZpc2lvbiAyMzcwNzMpCisr
KyBTb3VyY2UvV1RGL3d0Zi9Mb2NrZWRQcmludFN0cmVhbS5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTG9j
a2VkUHJpbnRTdHJlYW0uaCIKKyNpbmNsdWRlIDx3dGYvTG9ja2VkUHJpbnRTdHJlYW0uaD4KIAog
bmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL0xvY2tlci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL0xvY2tlci5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9Mb2NrZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsOCBAQAogICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GCiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCi0jaWZuZGVmIExvY2tlcl9oCi0jZGVm
aW5lIExvY2tlcl9oCisKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMu
aD4KICNpbmNsdWRlIDx3dGYvQXRvbWljcy5oPgpAQCAtMTQ0LDUgKzE0NCwzIEBAIHVzaW5nIFdU
Rjo6Tm9Mb2NraW5nTmVjZXNzYXJ5VGFnOwogdXNpbmcgV1RGOjpOb0xvY2tpbmdOZWNlc3Nhcnk7
CiB1c2luZyBXVEY6OmhvbGRMb2NrOwogdXNpbmcgV1RGOjpob2xkTG9ja0lmOwotCi0jZW5kaWYK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL01ENS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvTUQ1LmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvTUQ1LmNwcAko
d29ya2luZyBjb3B5KQpAQCAtNDgsOSArNDgsOSBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcu
aCIKLSNpbmNsdWRlICJNRDUuaCIKKyNpbmNsdWRlIDx3dGYvTUQ1Lmg+CiAKLSNpbmNsdWRlICJB
c3NlcnRpb25zLmgiCisjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNpbmNsdWRlIDx3dGYv
U3RkTGliRXh0cmFzLmg+CiAKIG5hbWVzcGFjZSBXVEYgewpJbmRleDogU291cmNlL1dURi93dGYv
TUQ1LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTUQ1LmgJKHJldmlzaW9uIDIzNzA3
MykKKysrIFNvdXJjZS9XVEYvd3RmL01ENS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX01ENV9oCi0jZGVmaW5lIFdU
Rl9NRDVfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhcnJheT4KICNpbmNsdWRlIDx3dGYv
VmVjdG9yLmg+CkBAIC03Miw1ICs3MSwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYK
IAogdXNpbmcgV1RGOjpNRDU7Ci0KLSNlbmRpZiAvLyBXVEZfTUQ1X2gKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL01haW5UaHJlYWQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL01haW5U
aHJlYWQuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9NYWluVGhyZWFk
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjcsMTcgKzI3LDE3IEBACiAgKi8KIAogI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIk1haW5UaHJlYWQuaCIKKyNpbmNsdWRlIDx3dGYvTWFpblRo
cmVhZC5oPgogCi0jaW5jbHVkZSAiRGVxdWUuaCIKLSNpbmNsdWRlICJNb25vdG9uaWNUaW1lLmgi
Ci0jaW5jbHVkZSAiU3RkTGliRXh0cmFzLmgiCi0jaW5jbHVkZSAiVGhyZWFkaW5nLmgiCiAjaW5j
bHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8d3RmL0NvbmRpdGlvbi5oPgorI2luY2x1ZGUgPHd0Zi9E
ZXF1ZS5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CisjaW5jbHVkZSA8d3RmL01vbm90b25pY1Rp
bWUuaD4KICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KKyNpbmNsdWRlIDx3dGYvU3Rk
TGliRXh0cmFzLmg+CiAjaW5jbHVkZSA8d3RmL1RocmVhZFNwZWNpZmljLmg+CisjaW5jbHVkZSA8
d3RmL1RocmVhZGluZy5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93
dGYvTWFpblRocmVhZC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL01haW5UaHJlYWQu
aAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvTWFpblRocmVhZC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNyw4ICsyNyw3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYg
TWFpblRocmVhZF9oCi0jZGVmaW5lIE1haW5UaHJlYWRfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgpAQCAtMTE2LDUgKzExNSwz
IEBAIHVzaW5nIFdURjo6Y2FsbE9uV2ViVGhyZWFkT3JEaXNwYXRjaEFzeW4KIHVzaW5nIFdURjo6
aW5pdGlhbGl6ZVdlYlRocmVhZDsKIHVzaW5nIFdURjo6aW5pdGlhbGl6ZUFwcGxpY2F0aW9uVUlU
aHJlYWQ7CiAjZW5kaWYKLQotI2VuZGlmIC8vIE1haW5UaHJlYWRfaApJbmRleDogU291cmNlL1dU
Ri93dGYvTWFsbG9jUHRyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTWFsbG9jUHRy
LmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL01hbGxvY1B0ci5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCiAgKi8KIAotI2lmbmRlZiBNYWxsb2NQdHJfaAotI2RlZmluZSBNYWxsb2NQdHJfaAor
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgogCkBAIC0xMzcsNSAr
MTM2LDMgQEAgdGVtcGxhdGU8dHlwZW5hbWUgVT4gTWFsbG9jUHRyPFU+IGFkb3B0TQogCiB1c2lu
ZyBXVEY6Ok1hbGxvY1B0cjsKIHVzaW5nIFdURjo6YWRvcHRNYWxsb2NQdHI7Ci0KLSNlbmRpZiAv
LyBNYWxsb2NQdHJfaApJbmRleDogU291cmNlL1dURi93dGYvTWF0aEV4dHJhcy5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL01hdGhFeHRyYXMuaAkocmV2aXNpb24gMjM3MDczKQorKysg
U291cmNlL1dURi93dGYvTWF0aEV4dHJhcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9NYXRoRXh0cmFzX2gKLSNk
ZWZpbmUgV1RGX01hdGhFeHRyYXNfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhbGdvcml0
aG0+CiAjaW5jbHVkZSA8Y21hdGg+CkBAIC02MTcsNSArNjE2LDMgQEAgdXNpbmcgV1RGOjpzaHVm
ZmxlVmVjdG9yOwogdXNpbmcgV1RGOjpjbHozMjsKIHVzaW5nIFdURjo6Y2x6NjQ7CiB1c2luZyBX
VEY6OmN0ejMyOwotCi0jZW5kaWYgLy8gI2lmbmRlZiBXVEZfTWF0aEV4dHJhc19oCkluZGV4OiBT
b3VyY2UvV1RGL3d0Zi9NZWRpYVRpbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L01lZGlhVGltZS5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL01lZGlh
VGltZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI3LDcgKzI3LDcgQEAKICAqLwogCiAjaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTWVkaWFUaW1lLmgiCisjaW5jbHVkZSA8d3RmL01lZGlh
VGltZS5oPgogCiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPGNzdGRsaWI+CkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi9NZWRpYVRpbWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9NZWRpYVRpbWUuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvTWVkaWFU
aW1lLmgJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDcgQEAKICAqIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8K
IAotI2lmbmRlZiBXVEZfTWVkaWFUaW1lX2gKLSNkZWZpbmUgV1RGX01lZGlhVGltZV9oCisjcHJh
Z21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAjaW5jbHVkZSA8d3RmL3Rl
eHQvV1RGU3RyaW5nLmg+CkBAIC0xNzgsNSArMTc3LDMgQEAgYm9vbCBNZWRpYVRpbWU6OmRlY29k
ZShEZWNvZGVyJiBkZWNvZGVyLAogdXNpbmcgV1RGOjpNZWRpYVRpbWU7CiB1c2luZyBXVEY6Ok1l
ZGlhVGltZVJhbmdlOwogdXNpbmcgV1RGOjphYnM7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dU
Ri93dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9NZW1vcnlQcmVzc3VyZUhhbmRsZXIuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3Vy
Y2UvV1RGL3d0Zi9NZW1vcnlQcmVzc3VyZUhhbmRsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
NCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk1lbW9y
eVByZXNzdXJlSGFuZGxlci5oIgorI2luY2x1ZGUgPHd0Zi9NZW1vcnlQcmVzc3VyZUhhbmRsZXIu
aD4KIAogI2luY2x1ZGUgPHd0Zi9NZW1vcnlGb290cHJpbnQuaD4KICNpbmNsdWRlIDx3dGYvTmV2
ZXJEZXN0cm95ZWQuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL01lc3NhZ2VRdWV1ZS5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL01lc3NhZ2VRdWV1ZS5oCShyZXZpc2lvbiAyMzcwNzMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9NZXNzYWdlUXVldWUuaAkod29ya2luZyBjb3B5KQpAQCAtMjcs
OCArMjcsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIE1lc3NhZ2VRdWV1ZV9oCi0j
ZGVmaW5lIE1lc3NhZ2VRdWV1ZV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGxpbWl0cz4K
ICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgpAQCAtMjUyLDUgKzI1MSwzIEBAIHVzaW5nIFdU
Rjo6TWVzc2FnZVF1ZXVlV2FpdFJlc3VsdDsKIHVzaW5nIFdURjo6TWVzc2FnZVF1ZXVlVGVybWlu
YXRlZDsKIHVzaW5nIFdURjo6TWVzc2FnZVF1ZXVlVGltZW91dDsKIHVzaW5nIFdURjo6TWVzc2Fn
ZVF1ZXVlTWVzc2FnZVJlY2VpdmVkOwotCi0jZW5kaWYgLy8gTWVzc2FnZVF1ZXVlX2gKSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL01ldGFBbGxvY2F0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL01ldGFBbGxvY2F0b3IuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RG
L3d0Zi9NZXRhQWxsb2NhdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjcsNyArMjcsNyBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNZXRhQWxsb2NhdG9yLmgiCisj
aW5jbHVkZSA8d3RmL01ldGFBbGxvY2F0b3IuaD4KIAogI2luY2x1ZGUgPHd0Zi9EYXRhTG9nLmg+
CiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL01ldGFB
bGxvY2F0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9NZXRhQWxsb2NhdG9yLmgJ
KHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL01ldGFBbGxvY2F0b3IuaAkod29y
a2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVm
IFdURl9NZXRhQWxsb2NhdG9yX2gKLSNkZWZpbmUgV1RGX01ldGFBbGxvY2F0b3JfaAorI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9IYXNo
TWFwLmg+CkBAIC0yMDgsNiArMjA3LDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNl
IFdURgotCi0jZW5kaWYgLy8gV1RGX01ldGFBbGxvY2F0b3JfaAotCkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi9NZXRhQWxsb2NhdG9ySGFuZGxlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
TWV0YUFsbG9jYXRvckhhbmRsZS5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0
Zi9NZXRhQWxsb2NhdG9ySGFuZGxlLmgJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDcgQEAK
ICAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXVEZfTWV0YUFsbG9jYXRvckhhbmRsZV9oCi0j
ZGVmaW5lIFdURl9NZXRhQWxsb2NhdG9ySGFuZGxlX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVk
ZSA8d3RmL0Fzc2VydGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvTWV0YUFsbG9jYXRvclB0ci5oPgpA
QCAtMTE4LDUgKzExNywzIEBAIHByaXZhdGU6CiB9OwogCiB9Ci0KLSNlbmRpZgpJbmRleDogU291
cmNlL1dURi93dGYvTW9ub3RvbmljVGltZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvTW9ub3RvbmljVGltZS5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3Rm
L01vbm90b25pY1RpbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMSArMjQsMTEgQEAKICAq
LwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTW9ub3RvbmljVGltZS5oIgorI2lu
Y2x1ZGUgPHd0Zi9Nb25vdG9uaWNUaW1lLmg+CiAKLSNpbmNsdWRlICJQcmludFN0cmVhbS5oIgot
I2luY2x1ZGUgIlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oIgotI2luY2x1ZGUgIldhbGxUaW1l
LmgiCisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5jbHVkZSA8d3RmL1RpbWVXaXRo
RHluYW1pY0Nsb2NrVHlwZS5oPgorI2luY2x1ZGUgPHd0Zi9XYWxsVGltZS5oPgogCiBuYW1lc3Bh
Y2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvTW9ub3RvbmljVGltZS5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL01vbm90b25pY1RpbWUuaAkocmV2aXNpb24gMjM3MDczKQor
KysgU291cmNlL1dURi93dGYvTW9ub3RvbmljVGltZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4
ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9Nb25vdG9uaWNU
aW1lX2gKLSNkZWZpbmUgV1RGX01vbm90b25pY1RpbWVfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDx3dGYvQ2xvY2tUeXBlLmg+CiAjaW5jbHVkZSA8d3RmL1NlY29uZHMuaD4KQEAgLTIxMCw1
ICsyMDksMyBAQCBpbmxpbmUgYm9vbCBpc2Zpbml0ZShXVEY6Ok1vbm90b25pY1RpbWUgCiB9IC8v
IG5hbWVzcGFjZSBzdGQKIAogdXNpbmcgV1RGOjpNb25vdG9uaWNUaW1lOwotCi0jZW5kaWYgLy8g
V1RGX01vbm90b25pY1RpbWVfaApJbmRleDogU291cmNlL1dURi93dGYvTmFrZWRQdHIuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9OYWtlZFB0ci5oCShyZXZpc2lvbiAyMzcwNzMpCisr
KyBTb3VyY2UvV1RGL3d0Zi9OYWtlZFB0ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX05ha2VkUHRyX2gKLSNkZWZp
bmUgV1RGX05ha2VkUHRyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxs
b2MuaD4KIApAQCAtMTE1LDUgKzExNCwzIEBAIHRlbXBsYXRlPGNsYXNzIFQ+IGlubGluZSB2b2lk
IHN3YXAoTmFrZWQKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6Ok5ha2VkUHRyOwot
Ci0jZW5kaWYgLy8gV1RGX05ha2VkUHRyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL05vTG9jay5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL05vTG9jay5oCShyZXZpc2lvbiAyMzcwNzMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9Ob0xvY2suaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMs
NyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBOb0xvY2tfaAotI2RlZmluZSBO
b0xvY2tfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTG9ja2VyLmg+CiAKQEAgLTQz
LDYgKzQyLDMgQEAgdHlwZWRlZiBMb2NrZXI8Tm9Mb2NrPiBOb0xvY2tMb2NrZXI7CiAKIHVzaW5n
IFdURjo6Tm9Mb2NrOwogdXNpbmcgV1RGOjpOb0xvY2tMb2NrZXI7Ci0KLSNlbmRpZiAvLyBOb0xv
Y2tfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Ob1RhaWxDYWxscy5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL05vVGFpbENhbGxzLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJj
ZS9XVEYvd3RmL05vVGFpbENhbGxzLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAK
IAogI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRlICJBdG9taWNzLmgiCisjaW5jbHVkZSA8d3RmL0F0
b21pY3MuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL05vbmNv
cHlhYmxlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTm9uY29weWFibGUuaAkocmV2
aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvTm9uY29weWFibGUuaAkod29ya2luZyBj
b3B5KQpAQCAtMTgsMTIgKzE4LDEwIEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX05vbmNvcHlh
YmxlX2gKLSNkZWZpbmUgV1RGX05vbmNvcHlhYmxlX2gKKyNwcmFnbWEgb25jZQogCiAjZGVmaW5l
IFdURl9NQUtFX05PTkNPUFlBQkxFKENsYXNzTmFtZSkgXAogICAgIHByaXZhdGU6IFwKICAgICAg
ICAgQ2xhc3NOYW1lKGNvbnN0IENsYXNzTmFtZSYpID0gZGVsZXRlOyBcCiAgICAgICAgIENsYXNz
TmFtZSYgb3BlcmF0b3I9KGNvbnN0IENsYXNzTmFtZSYpID0gZGVsZXRlOyBcCiAKLSNlbmRpZiAv
LyBXVEZfTm9uY29weWFibGVfaApJbmRleDogU291cmNlL1dURi93dGYvTnVtYmVyT2ZDb3Jlcy5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTnVtYmVyT2ZDb3Jlcy5jcHAJKHJldmlz
aW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL051bWJlck9mQ29yZXMuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2lu
Y2x1ZGUgIk51bWJlck9mQ29yZXMuaCIKKyNpbmNsdWRlIDx3dGYvTnVtYmVyT2ZDb3Jlcy5oPgog
CiAjaW5jbHVkZSA8Y3N0ZGlvPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9OdW1iZXJPZkNvcmVz
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvTnVtYmVyT2ZDb3Jlcy5oCShyZXZpc2lv
biAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9OdW1iZXJPZkNvcmVzLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTE4LDEzICsxOCwxMCBAQAogICoKICAqLwogCi0jaWZuZGVmIE51bWJlck9mQ29yZXNf
aAotI2RlZmluZSBOdW1iZXJPZkNvcmVzX2gKKyNwcmFnbWEgb25jZQogCiBuYW1lc3BhY2UgV1RG
IHsKIAogV1RGX0VYUE9SVF9QUklWQVRFIGludCBudW1iZXJPZlByb2Nlc3NvckNvcmVzKCk7CiAK
IH0KLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9PU0FsbG9jYXRvci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yLmgJKHJldmlzaW9uIDIzNzA3MykKKysr
IFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIz
LDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVm
IE9TQWxsb2NhdG9yX2gKLSNkZWZpbmUgT1NBbGxvY2F0b3JfaAorI3ByYWdtYSBvbmNlCiAKICNp
bmNsdWRlIDxhbGdvcml0aG0+CiAjaW5jbHVkZSA8d3RmL1ZNVGFncy5oPgpAQCAtOTgsNSArOTcs
MyBAQCBpbmxpbmUgVCogT1NBbGxvY2F0b3I6OnJlYWxsb2NhdGVDb21taXR0CiB9IC8vIG5hbWVz
cGFjZSBXVEYKIAogdXNpbmcgV1RGOjpPU0FsbG9jYXRvcjsKLQotI2VuZGlmIC8vIE9TQWxsb2Nh
dG9yX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yUG9zaXguY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yUG9zaXguY3BwCShyZXZpc2lvbiAyMzcw
NzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9PU0FsbG9jYXRvclBvc2l4LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjQsMTQgKzI0LDE0IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIk9TQWxsb2NhdG9yLmgiCisjaW5jbHVkZSA8d3RmL09TQWxsb2NhdG9yLmg+CiAKICNpZiBP
UyhVTklYKQogCi0jaW5jbHVkZSAiUGFnZUFsbG9jYXRpb24uaCIKICNpbmNsdWRlIDxlcnJuby5o
PgogI2luY2x1ZGUgPHN5cy9tbWFuLmg+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KKyNp
bmNsdWRlIDx3dGYvUGFnZUFsbG9jYXRpb24uaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL09TQWxsb2NhdG9yV2luLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9PU0FsbG9jYXRvcldpbi5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9X
VEYvd3RmL09TQWxsb2NhdG9yV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsMTIgKzI0LDEy
IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk9TQWxsb2NhdG9yLmgi
CisjaW5jbHVkZSA8d3RmL09TQWxsb2NhdG9yLmg+CiAKICNpZiBPUyhXSU5ET1dTKQogCi0jaW5j
bHVkZSAid2luZG93cy5oIgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CisjaW5jbHVkZSA8
d2luZG93cy5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvT1NS
YW5kb21Tb3VyY2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL09TUmFuZG9tU291
cmNlLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvT1NSYW5kb21Tb3Vy
Y2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIk9TUmFuZG9tU291cmNlLmgiCisjaW5jbHVkZSA8d3RmL09T
UmFuZG9tU291cmNlLmg+CiAKICNpbmNsdWRlIDxtdXRleD4KICNpbmNsdWRlIDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL09TUmFuZG9tU291cmNlLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvT1NSYW5kb21Tb3VyY2UuaAkocmV2aXNpb24gMjM3MDcz
KQorKysgU291cmNlL1dURi93dGYvT1NSYW5kb21Tb3VyY2UuaAkod29ya2luZyBjb3B5KQpAQCAt
MjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfT1NSYW5k
b21Tb3VyY2VfaAotI2RlZmluZSBXVEZfT1NSYW5kb21Tb3VyY2VfaAorI3ByYWdtYSBvbmNlCiAK
IG5hbWVzcGFjZSBXVEYgewogCkBAIC0zNCw1ICszMywzIEBAIG5hbWVzcGFjZSBXVEYgewogLy8g
Y2FsbGluZyBjcnlwdG9ncmFwaGljYWxseVJhbmRvbU51bWJlciBvciBjcnlwdG9ncmFwaGljYWxs
eVJhbmRvbVZhbHVlcy4KIHZvaWQgY3J5cHRvZ3JhcGhpY2FsbHlSYW5kb21WYWx1ZXNGcm9tT1Mo
dW5zaWduZWQgY2hhciogYnVmZmVyLCBzaXplX3QgbGVuZ3RoKTsKIH0KLQotI2VuZGlmCkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi9PYmpjUnVudGltZUV4dHJhcy5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL09iamNSdW50aW1lRXh0cmFzLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJj
ZS9XVEYvd3RmL09iamNSdW50aW1lRXh0cmFzLmgJKHdvcmtpbmcgY29weSkKQEAgLTIyLDggKzIy
LDcgQEAKICAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX09iamNSdW50aW1lRXh0cmFzX2gKLSNk
ZWZpbmUgV1RGX09iamNSdW50aW1lRXh0cmFzX2gKKyNwcmFnbWEgb25jZQogCiAvLyBGSVhNRTog
VGhpcyBmaWxlJ3MgbmFtZSBhbmQgZnVuY3Rpb24gbmFtZXMgcmVmZXIgdG8gT2JqZWN0aXZlLUMg
YXMgT2JqYyB3aXRoIGEgbG93ZXJjYXNlIEMsCiAvLyBidXQgaXQgc2hvdWxkIGJlIE9iakMgd2l0
aCBhbiB1cHBlcmNhc2UgQy4KQEAgLTQ1LDUgKzQ0LDMgQEAgaW5saW5lIFJldHVyblR5cGUgd3Rm
Q2FsbElNUChJTVAgaW1wbGVtZQogfQogCiAjZW5kaWYgLy8gX19jcGx1c3BsdXMKLQotI2VuZGlm
IC8vIFdURl9PYmpjUnVudGltZUV4dHJhc19oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9PcmRlck1h
a2VyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvT3JkZXJNYWtlci5oCShyZXZpc2lv
biAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9PcmRlck1ha2VyLmgJKHdvcmtpbmcgY29weSkK
QEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAq
LwogCi0jaWZuZGVmIFdURl9PcmRlck1ha2VyX2gKLSNkZWZpbmUgV1RGX09yZGVyTWFrZXJfaAor
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQmFnLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hN
YXAuaD4KQEAgLTEzOCw2ICsxMzcsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAK
IHVzaW5nIFdURjo6T3JkZXJNYWtlcjsKLQotI2VuZGlmIC8vIFdURl9PcmRlck1ha2VyX2gKLQpJ
bmRleDogU291cmNlL1dURi93dGYvUGFja2VkSW50VmVjdG9yLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dURi93dGYvUGFja2VkSW50VmVjdG9yLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJj
ZS9XVEYvd3RmL1BhY2tlZEludFZlY3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFBhY2tlZEludFZlY3Rvcl9oCi0j
ZGVmaW5lIFBhY2tlZEludFZlY3Rvcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9C
aXRWZWN0b3IuaD4KIApAQCAtMTIyLDYgKzEyMSwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFj
ZSBXVEYKIAogdXNpbmcgV1RGOjpQYWNrZWRJbnRWZWN0b3I7Ci0KLSNlbmRpZiAvLyBQYWNrZWRJ
bnRWZWN0b3JfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QYWdlQWxsb2NhdGlvbi5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhZ2VBbGxvY2F0aW9uLmgJKHJldmlzaW9uIDIzNzA3
MykKKysrIFNvdXJjZS9XVEYvd3RmL1BhZ2VBbGxvY2F0aW9uLmgJKHdvcmtpbmcgY29weSkKQEAg
LTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgUGFnZUFsbG9j
YXRpb25faAotI2RlZmluZSBQYWdlQWxsb2NhdGlvbl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL09TQWxsb2NhdG9yLmg+CkBAIC0x
MTQsNSArMTEzLDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6
OlBhZ2VBbGxvY2F0aW9uOwotCi0jZW5kaWYgLy8gUGFnZUFsbG9jYXRpb25faApJbmRleDogU291
cmNlL1dURi93dGYvUGFnZUJsb2NrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Q
YWdlQmxvY2suY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9QYWdlQmxv
Y2suY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIlBhZ2VCbG9jay5oIgorI2luY2x1ZGUgPHd0Zi9QYWdlQmxv
Y2suaD4KIAogI2lmIE9TKFVOSVgpCiAjaW5jbHVkZSA8dW5pc3RkLmg+CkluZGV4OiBTb3VyY2Uv
V1RGL3d0Zi9QYWdlQmxvY2suaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9QYWdlQmxv
Y2suaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvUGFnZUJsb2NrLmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFBhZ2VCbG9ja19oCi0jZGVmaW5lIFBhZ2VCbG9ja19o
CisjcHJhZ21hIG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTgzLDUgKzgyLDMgQEAgaW5s
aW5lIFBhZ2VCbG9jazo6UGFnZUJsb2NrKHZvaWQqIGJhc2UsIAogdXNpbmcgV1RGOjpwYWdlU2l6
ZTsKIHVzaW5nIFdURjo6aXNQYWdlQWxpZ25lZDsKIHVzaW5nIFdURjo6aXNQb3dlck9mVHdvOwot
Ci0jZW5kaWYgLy8gUGFnZUJsb2NrX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1BhZ2VSZXNlcnZh
dGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhZ2VSZXNlcnZhdGlvbi5oCShy
ZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9QYWdlUmVzZXJ2YXRpb24uaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBQYWdlUmVzZXJ2YXRpb25faAotI2RlZmluZSBQYWdlUmVzZXJ2YXRpb25faAorI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvUGFnZUFsbG9jYXRpb24uaD4KIApAQCAtMTQ0LDUgKzE0
MywzIEBAIHByaXZhdGU6CiB9CiAKIHVzaW5nIFdURjo6UGFnZVJlc2VydmF0aW9uOwotCi0jZW5k
aWYgLy8gUGFnZVJlc2VydmF0aW9uX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1BhcmFsbGVsSGVs
cGVyUG9vbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxIZWxwZXJQ
b29sLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvUGFyYWxsZWxIZWxw
ZXJQb29sLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsMTEgKzI0LDExIEBACiAgKi8KIAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBhcmFsbGVsSGVscGVyUG9vbC5oIgorI2luY2x1
ZGUgPHd0Zi9QYXJhbGxlbEhlbHBlclBvb2wuaD4KIAotI2luY2x1ZGUgIkF1dG9tYXRpY1RocmVh
ZC5oIgotI2luY2x1ZGUgIkRhdGFMb2cuaCIKLSNpbmNsdWRlICJTdHJpbmdQcmludFN0cmVhbS5o
IgorI2luY2x1ZGUgPHd0Zi9BdXRvbWF0aWNUaHJlYWQuaD4KKyNpbmNsdWRlIDx3dGYvRGF0YUxv
Zy5oPgorI2luY2x1ZGUgPHd0Zi9TdHJpbmdQcmludFN0cmVhbS5oPgogCiBuYW1lc3BhY2UgV1RG
IHsKIApJbmRleDogU291cmNlL1dURi93dGYvUGFyYWxsZWxIZWxwZXJQb29sLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxIZWxwZXJQb29sLmgJKHJldmlzaW9uIDIzNzA3
MykKKysrIFNvdXJjZS9XVEYvd3RmL1BhcmFsbGVsSGVscGVyUG9vbC5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFBhcmFs
bGVsSGVscGVyUG9vbF9oCi0jZGVmaW5lIFBhcmFsbGVsSGVscGVyUG9vbF9oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPHd0Zi9Cb3guaD4KICNpbmNsdWRlIDx3dGYvQ29uZGl0aW9uLmg+CkBA
IC0yMTcsNiArMjE2LDMgQEAgcHJpdmF0ZToKIAogdXNpbmcgV1RGOjpQYXJhbGxlbEhlbHBlckNs
aWVudDsKIHVzaW5nIFdURjo6UGFyYWxsZWxIZWxwZXJQb29sOwotCi0jZW5kaWYgLy8gUGFyYWxs
ZWxIZWxwZXJQb29sX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUGFyYWxsZWxKb2JzLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxKb2JzLmgJKHJldmlzaW9uIDIzNzA3
MykKKysrIFNvdXJjZS9XVEYvd3RmL1BhcmFsbGVsSm9icy5oCSh3b3JraW5nIGNvcHkpCkBAIC0y
NSw4ICsyNSw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgUGFyYWxsZWxKb2Jz
X2gKLSNkZWZpbmUgUGFyYWxsZWxKb2JzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3Rm
L0Fzc2VydGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CkBAIC05OSw1ICs5OCwzIEBA
IHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpQYXJhbGxlbEpvYnM7
Ci0KLSNlbmRpZiAvLyBQYXJhbGxlbEpvYnNfaApJbmRleDogU291cmNlL1dURi93dGYvUGFyYWxs
ZWxKb2JzR2VuZXJpYy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxK
b2JzR2VuZXJpYy5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1BhcmFs
bGVsSm9ic0dlbmVyaWMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOSw4ICsyOSw4IEBACiAKICNp
ZiBFTkFCTEUoVEhSRUFESU5HX0dFTkVSSUMpCiAKLSNpbmNsdWRlICJQYXJhbGxlbEpvYnMuaCIK
ICNpbmNsdWRlIDx3dGYvTnVtYmVyT2ZDb3Jlcy5oPgorI2luY2x1ZGUgPHd0Zi9QYXJhbGxlbEpv
YnMuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1BhcmFsbGVs
Sm9ic0xpYmRpc3BhdGNoLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGFyYWxsZWxK
b2JzTGliZGlzcGF0Y2guaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvUGFy
YWxsZWxKb2JzTGliZGlzcGF0Y2guaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNyBAQAog
ICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFBhcmFsbGVsSm9ic0xpYmRpc3BhdGNoX2gK
LSNkZWZpbmUgUGFyYWxsZWxKb2JzTGliZGlzcGF0Y2hfaAorI3ByYWdtYSBvbmNlCiAKICNpZiBF
TkFCTEUoVEhSRUFESU5HX0xJQkRJU1BBVENIKQogCkBAIC02OSw1ICs2OCwzIEBAIHByaXZhdGU6
CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogI2VuZGlmIC8vIEVOQUJMRShUSFJFQURJTkdfTElCRElT
UEFUQ0gpCi0KLSNlbmRpZiAvLyBQYXJhbGxlbEpvYnNMaWJkaXNwYXRjaF9oCkluZGV4OiBTb3Vy
Y2UvV1RGL3d0Zi9QYXJhbGxlbFZlY3Rvckl0ZXJhdG9yLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvUGFyYWxsZWxWZWN0b3JJdGVyYXRvci5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBT
b3VyY2UvV1RGL3d0Zi9QYXJhbGxlbFZlY3Rvckl0ZXJhdG9yLmgJKHdvcmtpbmcgY29weSkKQEAg
LTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgUGFyYWxsZWxW
ZWN0b3JJdGVyYXRvcl9oCi0jZGVmaW5lIFBhcmFsbGVsVmVjdG9ySXRlcmF0b3JfaAorI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0Zi9Mb2Nr
Lmg+CkBAIC03Nyw2ICs3NiwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNp
bmcgV1RGOjpQYXJhbGxlbFZlY3Rvckl0ZXJhdG9yOwotCi0jZW5kaWYgLy8gUGFyYWxsZWxWZWN0
b3JJdGVyYXRvcl9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1BhcmtpbmdMb3QuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BhcmtpbmdMb3QuY3BwCShyZXZpc2lvbiAyMzcwNzMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9QYXJraW5nTG90LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQs
MTkgKzI0LDE5IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBhcmtp
bmdMb3QuaCIKKyNpbmNsdWRlIDx3dGYvUGFya2luZ0xvdC5oPgogCi0jaW5jbHVkZSAiRGF0YUxv
Zy5oIgotI2luY2x1ZGUgIkhhc2hGdW5jdGlvbnMuaCIKLSNpbmNsdWRlICJTdHJpbmdQcmludFN0
cmVhbS5oIgotI2luY2x1ZGUgIlRocmVhZFNwZWNpZmljLmgiCi0jaW5jbHVkZSAiVGhyZWFkaW5n
LmgiCi0jaW5jbHVkZSAiVmVjdG9yLmgiCi0jaW5jbHVkZSAiV2Vha1JhbmRvbS5oIgotI2luY2x1
ZGUgIldvcmRMb2NrLmgiCiAjaW5jbHVkZSA8Y29uZGl0aW9uX3ZhcmlhYmxlPgogI2luY2x1ZGUg
PG11dGV4PgogI2luY2x1ZGUgPHRocmVhZD4KKyNpbmNsdWRlIDx3dGYvRGF0YUxvZy5oPgorI2lu
Y2x1ZGUgPHd0Zi9IYXNoRnVuY3Rpb25zLmg+CisjaW5jbHVkZSA8d3RmL1N0cmluZ1ByaW50U3Ry
ZWFtLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZFNwZWNpZmljLmg+CisjaW5jbHVkZSA8d3RmL1Ro
cmVhZGluZy5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNsdWRlIDx3dGYvV2Vha1Jh
bmRvbS5oPgorI2luY2x1ZGUgPHd0Zi9Xb3JkTG9jay5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJ
bmRleDogU291cmNlL1dURi93dGYvUGFya2luZ0xvdC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL1BhcmtpbmdMb3QuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYv
UGFya2luZ0xvdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9QYXJraW5nTG90X2gKLSNkZWZpbmUgV1RGX1Bhcmtp
bmdMb3RfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQXRvbWljcy5oPgogI2luY2x1
ZGUgPHd0Zi9TY29wZWRMYW1iZGEuaD4KQEAgLTE3Nyw2ICsxNzYsMyBAQCBwcml2YXRlOgogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6UGFya2luZ0xvdDsKLQotI2VuZGlmIC8vIFdU
Rl9QYXJraW5nTG90X2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUGxhdGZvcm0uaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBT
b3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw3IEBA
CiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX1BsYXRmb3JtX2gKLSNkZWZpbmUg
V1RGX1BsYXRmb3JtX2gKKyNwcmFnbWEgb25jZQogCiAvKiBJbmNsdWRlIGNvbXBpbGVyIHNwZWNp
ZmljIG1hY3JvcyAqLwogI2luY2x1ZGUgPHd0Zi9Db21waWxlci5oPgpAQCAtMTM3MCw1ICsxMzY5
LDMgQEAKICNpZiBQTEFURk9STShDT0NPQSkgJiYgVVNFKENBKSAmJiAhUExBVEZPUk0oSU9TX0ZB
TUlMWV9TSU1VTEFUT1IpCiAjZGVmaW5lIFVTRV9JT1NVUkZBQ0VfQ0FOVkFTX0JBQ0tJTkdfU1RP
UkUgMQogI2VuZGlmCi0KLSNlbmRpZiAvKiBXVEZfUGxhdGZvcm1faCAqLwpJbmRleDogU291cmNl
L1dURi93dGYvUG9pbnRlckNvbXBhcmlzb24uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9Qb2ludGVyQ29tcGFyaXNvbi5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0
Zi9Qb2ludGVyQ29tcGFyaXNvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXVEZfUG9p
bnRlckNvbXBhcmlzb25faAotI2RlZmluZSBXVEZfUG9pbnRlckNvbXBhcmlzb25faAorI3ByYWdt
YSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC0zNiw1ICszNSwzIEBAIHRlbXBsYXRlPHR5
cGVuYW1lIFQ+IGlubGluZSBib29sIGFyZVBvaW4KIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2lu
ZyBXVEY6OmFyZVBvaW50aW5nVG9FcXVhbERhdGE7Ci0KLSNlbmRpZiAvLyBXVEZfUG9pbnRlckNv
bXBhcmlzb25faApJbmRleDogU291cmNlL1dURi93dGYvUG9pc29uZWQuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL1BvaXNvbmVkLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291
cmNlL1dURi93dGYvUG9pc29uZWQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBA
CiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBvaXNvbmVkLmgiCisjaW5j
bHVkZSA8d3RmL1BvaXNvbmVkLmg+CiAKICNpbmNsdWRlIDx3dGYvQ3J5cHRvZ3JhcGhpY2FsbHlS
YW5kb21OdW1iZXIuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvUHJpbnRTdHJlYW0uY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1ByaW50U3RyZWFtLmNwcAkocmV2aXNpb24gMjM3
MDczKQorKysgU291cmNlL1dURi93dGYvUHJpbnRTdHJlYW0uY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlBy
aW50U3RyZWFtLmgiCisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CiAKICNpbmNsdWRlIDxz
dGRpby5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL1ByaW50U3RyZWFtLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUHJpbnRTdHJl
YW0uaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvUHJpbnRTdHJlYW0uaAko
d29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAot
I2lmbmRlZiBQcmludFN0cmVhbV9oCi0jZGVmaW5lIFByaW50U3RyZWFtX2gKKyNwcmFnbWEgb25j
ZQogCiAjaW5jbHVkZSA8bWVtb3J5PgogI2luY2x1ZGUgPHN0ZGFyZy5oPgpAQCAtMzQ2LDYgKzM0
NSwzIEBAIHVzaW5nIFdURjo6aWdub3JpbmdDb250ZXh0OwogdXNpbmcgV1RGOjppbkNvbnRleHQ7
CiB1c2luZyBXVEY6OnBvaW50ZXJEdW1wOwogdXNpbmcgV1RGOjpwb2ludGVyRHVtcEluQ29udGV4
dDsKLQotI2VuZGlmIC8vIFByaW50U3RyZWFtX2gKLQpJbmRleDogU291cmNlL1dURi93dGYvUHJv
Y2Vzc0lELmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUHJvY2Vzc0lELmgJKHJldmlz
aW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1Byb2Nlc3NJRC5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFByb2Nl
c3NJRF9oCi0jZGVmaW5lIFByb2Nlc3NJRF9oCisjcHJhZ21hIG9uY2UKIAogI2lmIE9TKFVOSVgp
CiAjaW5jbHVkZSA8dW5pc3RkLmg+CkBAIC01NSw2ICs1NCwzIEBAIGlubGluZSBQcm9jZXNzSUQg
Z2V0Q3VycmVudFByb2Nlc3NJRCgpCiAKIHVzaW5nIFdURjo6Z2V0Q3VycmVudFByb2Nlc3NJRDsK
IHVzaW5nIFdURjo6UHJvY2Vzc0lEOwotCi0jZW5kaWYgLy8gUHJvY2Vzc0lEX2gKLQpJbmRleDog
U291cmNlL1dURi93dGYvUHJvY2Vzc1ByaXZpbGVnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvUHJvY2Vzc1ByaXZpbGVnZS5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJj
ZS9XVEYvd3RmL1Byb2Nlc3NQcml2aWxlZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsy
NCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlByb2Nlc3NQcml2
aWxlZ2UuaCIKKyNpbmNsdWRlIDx3dGYvUHJvY2Vzc1ByaXZpbGVnZS5oPgogCiAjaW5jbHVkZSA8
d3RmL09wdGlvblNldC5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SQU1TaXplLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SQU1TaXplLmNwcAkocmV2aXNpb24gMjM3MDczKQor
KysgU291cmNlL1dURi93dGYvUkFNU2l6ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDEwICsy
NCwxMCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJSQU1TaXplLmgi
CisjaW5jbHVkZSA8d3RmL1JBTVNpemUuaD4KIAotI2luY2x1ZGUgIlN0ZExpYkV4dHJhcy5oIgog
I2luY2x1ZGUgPG11dGV4PgorI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KIAogI2lmIE9T
KFdJTkRPV1MpCiAjaW5jbHVkZSA8d2luZG93cy5oPgpJbmRleDogU291cmNlL1dURi93dGYvUkFN
U2l6ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JBTVNpemUuaAkocmV2aXNpb24g
MjM3MDczKQorKysgU291cmNlL1dURi93dGYvUkFNU2l6ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0y
Myw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAot
I2lmbmRlZiBSQU1TaXplX2gKLSNkZWZpbmUgUkFNU2l6ZV9oCisjcHJhZ21hIG9uY2UKIAogbmFt
ZXNwYWNlIFdURiB7CiAKQEAgLTMzLDUgKzMyLDMgQEAgV1RGX0VYUE9SVF9QUklWQVRFIHNpemVf
dCByYW1TaXplKCk7CiB9CiAKIHVzaW5nIFdURjo6cmFtU2l6ZTsKLQotI2VuZGlmIC8vIFJBTVNp
emVfaApJbmRleDogU291cmNlL1dURi93dGYvUmFuZG9tRGV2aWNlLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9SYW5kb21EZXZpY2UuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBT
b3VyY2UvV1RGL3d0Zi9SYW5kb21EZXZpY2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw3ICsy
NSw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlJhbmRvbURldmlj
ZS5oIgorI2luY2x1ZGUgPHd0Zi9SYW5kb21EZXZpY2UuaD4KIAogI2luY2x1ZGUgPHN0ZGludC5o
PgogI2luY2x1ZGUgPHN0ZGxpYi5oPgpAQCAtNDIsNyArNDIsNyBAQAogI2VuZGlmCiAKICNpZiBP
UyhEQVJXSU4pCi0jaW5jbHVkZSAiQ29tbW9uQ3J5cHRvU1BJLmgiCisjaW5jbHVkZSA8d3RmL3Nw
aS9kYXJ3aW4vQ29tbW9uQ3J5cHRvU1BJLmg+CiAjZW5kaWYKIAogI2lmIE9TKEZVQ0hTSUEpCklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9SYW5kb21OdW1iZXIuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL1JhbmRvbU51bWJlci5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9X
VEYvd3RmL1JhbmRvbU51bWJlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDE1ICsyNiwxNCBA
QAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJSYW5kb21OdW1iZXIuaCIK
LQotI2luY2x1ZGUgIkNyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmgiCi0jaW5jbHVkZSAi
UmFuZG9tTnVtYmVyU2VlZC5oIgorI2luY2x1ZGUgPHd0Zi9SYW5kb21OdW1iZXIuaD4KIAogI2lu
Y2x1ZGUgPGxpbWl0cz4KICNpbmNsdWRlIDxsaW1pdHMuaD4KICNpbmNsdWRlIDxzdGRpbnQuaD4K
ICNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDx3dGYvQ3J5cHRvZ3JhcGhpY2FsbHlSYW5k
b21OdW1iZXIuaD4KKyNpbmNsdWRlIDx3dGYvUmFuZG9tTnVtYmVyU2VlZC5oPgogCiBuYW1lc3Bh
Y2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvUmFuZG9tTnVtYmVyLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvUmFuZG9tTnVtYmVyLmgJKHJldmlzaW9uIDIzNzA3MykKKysr
IFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsy
Myw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9SYW5kb21OdW1iZXJf
aAotI2RlZmluZSBXVEZfUmFuZG9tTnVtYmVyX2gKKyNwcmFnbWEgb25jZQogCiBuYW1lc3BhY2Ug
V1RGIHsKIApAQCAtMzUsNSArMzQsMyBAQCBXVEZfRVhQT1JUX1BSSVZBVEUgZG91YmxlIHJhbmRv
bU51bWJlcigpCiB9CiAKIHVzaW5nIFdURjo6cmFuZG9tTnVtYmVyOwotCi0jZW5kaWYKSW5kZXg6
IFNvdXJjZS9XVEYvd3RmL1JhbmRvbU51bWJlclNlZWQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9SYW5kb21OdW1iZXJTZWVkLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9X
VEYvd3RmL1JhbmRvbU51bWJlclNlZWQuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBA
QAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfUmFuZG9tTnVtYmVyU2VlZF9o
Ci0jZGVmaW5lIFdURl9SYW5kb21OdW1iZXJTZWVkX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVk
ZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8dGltZS5oPgpAQCAtNTYsNSArNTUsMyBAQCBpbmxpbmUg
dm9pZCBpbml0aWFsaXplUmFuZG9tTnVtYmVyR2VuZXJhCiB9CiAKIH0KLQotI2VuZGlmCkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi9SYW5nZVNldC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L1JhbmdlU2V0LmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1JhbmdlU2V0
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICov
CiAKLSNpZm5kZWYgV1RGX1JhbmdlU2V0X2gKLSNkZWZpbmUgV1RGX1JhbmdlU2V0X2gKKyNwcmFn
bWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0xpc3REdW1wLmg+CiAjaW5jbHVkZSA8d3RmL01hdGhF
eHRyYXMuaD4KQEAgLTIxMiw2ICsyMTEsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RG
CiAKIHVzaW5nIFdURjo6UmFuZ2VTZXQ7Ci0KLSNlbmRpZiAvLyBXVEZfUmFuZ2VTZXRfaAotCklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9SYXdQb2ludGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvUmF3UG9pbnRlci5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9S
YXdQb2ludGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAogICovCiAKLSNpZm5kZWYgUmF3UG9pbnRlcl9oCi0jZGVmaW5lIFJhd1BvaW50ZXJfaAor
I3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC01NCw1ICs1MywzIEBAIHByaXZh
dGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpSYXdQb2ludGVyOwotCi0jZW5k
aWYgLy8gUmF3UG9pbnRlcl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SZWFkV3JpdGVMb2NrLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SZWFkV3JpdGVMb2NrLmNwcAkocmV2aXNp
b24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvUmVhZFdyaXRlTG9jay5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5j
bHVkZSAiUmVhZFdyaXRlTG9jay5oIgorI2luY2x1ZGUgPHd0Zi9SZWFkV3JpdGVMb2NrLmg+CiAK
ICNpbmNsdWRlIDx3dGYvTG9ja2VyLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JlZEJsYWNr
VHJlZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZEJsYWNrVHJlZS5oCShyZXZp
c2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9SZWRCbGFja1RyZWUuaAkod29ya2luZyBj
b3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFJlZEJs
YWNrVHJlZV9oCi0jZGVmaW5lIFJlZEJsYWNrVHJlZV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CkBAIC01
NjksNiArNTY4LDMgQEAgcHJpdmF0ZToKIH07CiAKIH0KLQotI2VuZGlmCi0KSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL1JlZi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZi5oCShyZXZp
c2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9SZWYuaAkod29ya2luZyBjb3B5KQpAQCAt
MjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAK
LSNpZm5kZWYgV1RGX1JlZl9oCi0jZGVmaW5lIFdURl9SZWZfaAorI3ByYWdtYSBvbmNlCiAKICNp
bmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9EdW1iUHRyVHJhaXRzLmg+
CkBAIC0yODAsNSArMjc5LDMgQEAgdXNpbmcgV1RGOjpSZWY7CiB1c2luZyBXVEY6OmFkb3B0UmVm
OwogdXNpbmcgV1RGOjptYWtlUmVmOwogdXNpbmcgV1RGOjpzdGF0aWNfcmVmZXJlbmNlX2Nhc3Q7
Ci0KLSNlbmRpZiAvLyBXVEZfUmVmX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRB
cnJheS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRBcnJheS5oCShy
ZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9SZWZDb3VudGVkQXJyYXkuaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBSZWZDb3VudGVkQXJyYXlfaAotI2RlZmluZSBSZWZDb3VudGVkQXJyYXlfaAorI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRHVtYlB0clRyYWl0cy5oPgogI2luY2x1ZGUgPHd0Zi9G
YXN0TWFsbG9jLmg+CkBAIC0yNDgsNiArMjQ3LDMgQEAgdXNpbmcgUG9pc29uZWRSZWZDb3VudGVk
QXJyYXkgPSBSZWZDb3VudAogCiB1c2luZyBXVEY6OlBvaXNvbmVkUmVmQ291bnRlZEFycmF5Owog
dXNpbmcgV1RGOjpSZWZDb3VudGVkQXJyYXk7Ci0KLSNlbmRpZiAvLyBSZWZDb3VudGVkQXJyYXlf
aAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SZWZDb3VudGVkTGVha0NvdW50ZXIuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRMZWFrQ291bnRlci5jcHAJKHJldmlz
aW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRMZWFrQ291bnRlci5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTE5LDcgKzE5LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiUmVmQ291bnRlZExlYWtDb3VudGVyLmgiCisjaW5jbHVkZSA8d3RmL1Jl
ZkNvdW50ZWRMZWFrQ291bnRlci5oPgogCiAjaW5jbHVkZSA8d3RmL0hhc2hDb3VudGVkU2V0Lmg+
CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRMZWFrQ291bnRlci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1JlZkNvdW50ZWRMZWFrQ291bnRlci5oCShyZXZpc2lvbiAy
MzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9SZWZDb3VudGVkTGVha0NvdW50ZXIuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMTgsOCArMTgsNyBAQAogICoKICAqLwogIAotI2lmbmRlZiBSZWZDb3VudGVk
TGVha0NvdW50ZXJfaAotI2RlZmluZSBSZWZDb3VudGVkTGVha0NvdW50ZXJfaAorI3ByYWdtYSBv
bmNlCiAKICNpbmNsdWRlIDxhdG9taWM+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KQEAg
LTQ0LDUgKzQzLDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gIC8vIG5hbWVzcGFjZSBXVEYKLQotI2Vu
ZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9SZWZDb3VudGVyLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dURi93dGYvUmVmQ291bnRlci5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RG
L3d0Zi9SZWZDb3VudGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFJlZkNvdW50ZXJf
aAotI2RlZmluZSBSZWZDb3VudGVyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Z1
bmN0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CkBAIC0xNDYsNSArMTQ1LDMg
QEAgaW5saW5lIFJlZkNvdW50ZXI8VD46On5SZWZDb3VudGVyKCkKIAogdXNpbmcgV1RGOjpSZWZD
b3VudGVyOwogdXNpbmcgV1RGOjpSZWZDb3VudGVyRXZlbnQ7Ci0KLSNlbmRpZiAvLyBSZWZDb3Vu
dGVyX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1JlZlB0ci5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL1JlZlB0ci5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9S
ZWZQdHIuaAkod29ya2luZyBjb3B5KQpAQCAtMjAsOCArMjAsNyBAQAogCiAvLyBSZWZQdHIgaXMg
ZG9jdW1lbnRlZCBhdCBodHRwOi8vd2Via2l0Lm9yZy9jb2RpbmcvUmVmUHRyLmh0bWwKIAotI2lm
bmRlZiBXVEZfUmVmUHRyX2gKLSNkZWZpbmUgV1RGX1JlZlB0cl9oCisjcHJhZ21hIG9uY2UKIAog
I2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRlIDx1dGlsaXR5PgpAQCAtMjg0LDUgKzI4Mywz
IEBAIHVzaW5nIFdURjo6UmVmUHRyOwogdXNpbmcgV1RGOjphZG9wdFJlZjsKIHVzaW5nIFdURjo6
bWFrZVJlZlB0cjsKIHVzaW5nIFdURjo6c3RhdGljX3BvaW50ZXJfY2FzdDsKLQotI2VuZGlmIC8v
IFdURl9SZWZQdHJfaApJbmRleDogU291cmNlL1dURi93dGYvUmV0YWluUHRyLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvUmV0YWluUHRyLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNv
dXJjZS9XVEYvd3RmL1JldGFpblB0ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOCw4ICsxOCw3IEBA
CiAgKgogICovCiAKLSNpZm5kZWYgUmV0YWluUHRyX2gKLSNkZWZpbmUgUmV0YWluUHRyX2gKKyNw
cmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL1BsYXRmb3JtLmg+CiAKQEAgLTM4Miw1ICszODEs
MyBAQCB1c2luZyBXVEY6OmR5bmFtaWNfb2JqY19jYXN0OwogI2VuZGlmCiAKICNlbmRpZiAvLyBV
U0UoQ0YpIHx8IGRlZmluZWQoX19PQkpDX18pCi0KLSNlbmRpZiAvLyBXVEZfUmV0YWluUHRyX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL1J1bkxvb3AuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL1J1bkxvb3AuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9S
dW5Mb29wLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNs
dWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJSdW5Mb29wLmgiCisjaW5jbHVkZSA8d3RmL1J1bkxv
b3AuaD4KIAogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogI2luY2x1ZGUgPHd0Zi9T
dGRMaWJFeHRyYXMuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1J1bkxvb3AuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SdW5Mb29wLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJj
ZS9XVEYvd3RmL1J1bkxvb3AuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNyBAQAogICog
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgUnVuTG9vcF9o
Ci0jZGVmaW5lIFJ1bkxvb3BfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQ29uZGl0
aW9uLmg+CiAjaW5jbHVkZSA8d3RmL0RlcXVlLmg+CkBAIC0yMTIsNSArMjExLDMgQEAgcHJpdmF0
ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlJ1bkxvb3A7Ci0KLSNlbmRpZiAv
LyBSdW5Mb29wX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lci5oCShyZXZpc2lvbiAyMzcwNzMpCisr
KyBTb3VyY2UvV1RGL3d0Zi9SdW5Mb29wVGltZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCAr
MjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFJ1bkxvb3BUaW1lcl9oCi0jZGVm
aW5lIFJ1bkxvb3BUaW1lcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9TY2hlZHVs
ZVBhaXIuaD4KICNpbmNsdWRlIDx3dGYvU2Vjb25kcy5oPgpAQCAtODAsNSArNzksMyBAQCBwcml2
YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6UnVuTG9vcFRpbWVyOwotCi0j
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lckNGLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi9SdW5Mb29wVGltZXJDRi5jcHAJKHJldmlzaW9uIDIzNzA3MykK
KysrIFNvdXJjZS9XVEYvd3RmL1J1bkxvb3BUaW1lckNGLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MzAsOSArMzAsOSBAQAogCiAjaWYgUExBVEZPUk0oQ09DT0EpICYmIEhBVkUoUlVOTE9PUF9USU1F
UikKIAotI2luY2x1ZGUgIlJ1bkxvb3BUaW1lci5oIgorI2luY2x1ZGUgPHd0Zi9SdW5Mb29wVGlt
ZXIuaD4KIAotI2luY2x1ZGUgIkF1dG9kcmFpbmVkUG9vbC5oIgorI2luY2x1ZGUgPHd0Zi9BdXRv
ZHJhaW5lZFBvb2wuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L1NIQTEuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NIQTEuY3BwCShyZXZpc2lv
biAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9TSEExLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MzAsMTAgKzMwLDEwIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlNI
QTEuaCIKKyNpbmNsdWRlIDx3dGYvU0hBMS5oPgogCi0jaW5jbHVkZSAiQXNzZXJ0aW9ucy5oIgot
I2luY2x1ZGUgInRleHQvQ1N0cmluZy5oIgorI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+Cisj
aW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDog
U291cmNlL1dURi93dGYvU0hBMS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NIQTEu
aAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvU0hBMS5oCSh3b3JraW5nIGNv
cHkpCkBAIC0yOCw4ICsyOCw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RG
X1NIQTFfaAotI2RlZmluZSBXVEZfU0hBMV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPGFy
cmF5PgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTg4LDUgKzg3LDMgQEAgcHJpdmF0ZToK
IH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlNIQTE7Ci0KLSNlbmRpZiAvLyBXVEZf
U0hBMV9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TYXR1cmF0ZWRBcml0aG1ldGljLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvU2F0dXJhdGVkQXJpdGhtZXRpYy5oCShyZXZpc2lvbiAy
MzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9TYXR1cmF0ZWRBcml0aG1ldGljLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTI5LDEzICsyOSwxMiBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVm
IFNhdHVyYXRlZEFyaXRobWV0aWNfaAotI2RlZmluZSBTYXR1cmF0ZWRBcml0aG1ldGljX2gKKyNw
cmFnbWEgb25jZQogCi0jaW5jbHVkZSAiQ29tcGlsZXIuaCIKICNpbmNsdWRlIDxsaW1pdHM+CiAj
aW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8d3RmL0Nv
bXBpbGVyLmg+CiAKIGlubGluZSBib29sIHNpZ25lZEFkZE92ZXJmbG93cyhpbnQzMl90IGEsIGlu
dDMyX3QgYiwgaW50MzJfdCYgcmVzdWx0KQogewpAQCAtMTAwLDUgKzk5LDMgQEAgaW5saW5lIGlu
dDMyX3Qgc2F0dXJhdGVkU3VidHJhY3Rpb24oaW50MwogI2VuZGlmCiAgICAgcmV0dXJuIHJlc3Vs
dDsKIH0KLQotI2VuZGlmIC8vIFNhdHVyYXRlZEFyaXRobWV0aWNfaApJbmRleDogU291cmNlL1dU
Ri93dGYvU2NoZWR1bGVQYWlyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU2NoZWR1
bGVQYWlyLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1NjaGVkdWxlUGFp
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAK
LSNpZm5kZWYgU2NoZWR1bGVQYWlyX2gKLSNkZWZpbmUgU2NoZWR1bGVQYWlyX2gKKyNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvUmV0YWluUHRy
Lmg+CkBAIC04OSw1ICs4OCwzIEBAIHR5cGVkZWYgSGFzaFNldDxSZWZQdHI8U2NoZWR1bGVQYWly
PiwgU2MKIAogdXNpbmcgV1RGOjpTY2hlZHVsZVBhaXI7CiB1c2luZyBXVEY6OlNjaGVkdWxlUGFp
ckhhc2hTZXQ7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvU2NoZWR1bGVQYWlyQ0Yu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NjaGVkdWxlUGFpckNGLmNwcAkocmV2
aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvU2NoZWR1bGVQYWlyQ0YuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNyw3ICsyNyw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgot
I2luY2x1ZGUgIlNjaGVkdWxlUGFpci5oIgorI2luY2x1ZGUgPHd0Zi9TY2hlZHVsZVBhaXIuaD4K
IAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1NjaGVkdWxlUGFpck1h
Yy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TY2hlZHVsZVBhaXJNYWMubW0JKHJl
dmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1NjaGVkdWxlUGFpck1hYy5tbQkod29y
a2luZyBjb3B5KQpAQCAtMjcsNyArMjcsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJTY2hlZHVsZVBhaXIuaCIKKyNpbmNsdWRlIDx3dGYvU2NoZWR1bGVQYWlyLmg+
CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TY29wZWRMYW1iZGEu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TY29wZWRMYW1iZGEuaAkocmV2aXNpb24g
MjM3MDczKQorKysgU291cmNlL1dURi93dGYvU2NvcGVkTGFtYmRhLmgJKHdvcmtpbmcgY29weSkK
QEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU2NvcGVk
TGFtYmRhX2gKLSNkZWZpbmUgU2NvcGVkTGFtYmRhX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVk
ZSA8d3RmL0ZvcmJpZEhlYXBBbGxvY2F0aW9uLmg+CiAKQEAgLTE5NSw2ICsxOTQsMyBAQCBTY29w
ZWRMYW1iZGFSZWZGdW5jdG9yPEZ1bmN0aW9uVHlwZSwgRnVuCiB1c2luZyBXVEY6OlNjb3BlZExh
bWJkYTsKIHVzaW5nIFdURjo6c2NvcGVkTGFtYmRhOwogdXNpbmcgV1RGOjpzY29wZWRMYW1iZGFS
ZWY7Ci0KLSNlbmRpZiAvLyBTY29wZWRMYW1iZGFfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9T
ZWNvbmRzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TZWNvbmRzLmNwcAkocmV2
aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvU2Vjb25kcy5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTI0LDE0ICsyNCwxNCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJTZWNvbmRzLmgiCisjaW5jbHVkZSA8d3RmL1NlY29uZHMuaD4KIAotI2luY2x1ZGUgIkNv
bmRpdGlvbi5oIgotI2luY2x1ZGUgIkxvY2suaCIKLSNpbmNsdWRlICJNb25vdG9uaWNUaW1lLmgi
Ci0jaW5jbHVkZSAiUHJpbnRTdHJlYW0uaCIKLSNpbmNsdWRlICJUaW1lV2l0aER5bmFtaWNDbG9j
a1R5cGUuaCIKLSNpbmNsdWRlICJXYWxsVGltZS5oIgorI2luY2x1ZGUgPHd0Zi9Db25kaXRpb24u
aD4KKyNpbmNsdWRlIDx3dGYvTG9jay5oPgorI2luY2x1ZGUgPHd0Zi9Nb25vdG9uaWNUaW1lLmg+
CisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5jbHVkZSA8d3RmL1RpbWVXaXRoRHlu
YW1pY0Nsb2NrVHlwZS5oPgorI2luY2x1ZGUgPHd0Zi9XYWxsVGltZS5oPgogCiBuYW1lc3BhY2Ug
V1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvU2Vjb25kcy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL1NlY29uZHMuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93
dGYvU2Vjb25kcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9TZWNvbmRzX2gKLSNkZWZpbmUgV1RGX1NlY29uZHNf
aAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTWF0aEV4dHJhcy5oPgogI2luY2x1ZGUg
PHd0Zi9PcHRpb25hbC5oPgpAQCAtMzU2LDUgKzM1NSwzIEBAIGlubGluZSBib29sIGlzZmluaXRl
KFdURjo6U2Vjb25kcyBzZWNvbmQKIAogdXNpbmcgbmFtZXNwYWNlIFdURjo6c2Vjb25kc19saXRl
cmFsczsKIHVzaW5nIFdURjo6U2Vjb25kczsKLQotI2VuZGlmIC8vIFdURl9TZWNvbmRzX2gKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL1NlZ21lbnRlZFZlY3Rvci5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL1NlZ21lbnRlZFZlY3Rvci5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2Uv
V1RGL3d0Zi9TZWdtZW50ZWRWZWN0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNyBA
QAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFNlZ21lbnRlZFZlY3Rvcl9oCi0jZGVmaW5l
IFNlZ21lbnRlZFZlY3Rvcl9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5
YWJsZS5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTI3Myw1ICsyNzIsMyBAQCBuYW1l
c3BhY2UgV1RGIHsKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlNlZ21lbnRlZFZl
Y3RvcjsKLQotI2VuZGlmIC8vIFNlZ21lbnRlZFZlY3Rvcl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi9TZW50aW5lbExpbmtlZExpc3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TZW50
aW5lbExpbmtlZExpc3QuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvU2Vu
dGluZWxMaW5rZWRMaXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTM0LDggKzM0LDcgQEAKIC8vICAg
ICAgICB2b2lkIHNldE5leHQoTm9kZSopOwogLy8gICAgICAgIE5vZGUqIG5leHQoKTsKIAotI2lm
bmRlZiBTZW50aW5lbExpbmtlZExpc3RfaAotI2RlZmluZSBTZW50aW5lbExpbmtlZExpc3RfaAor
I3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBXVEYgewogCkBAIC0yNzYsNiArMjc1LDMgQEAgaW5s
aW5lIHZvaWQgU2VudGluZWxMaW5rZWRMaXN0PFQsIFJhd05vZAogCiB1c2luZyBXVEY6OkJhc2lj
UmF3U2VudGluZWxOb2RlOwogdXNpbmcgV1RGOjpTZW50aW5lbExpbmtlZExpc3Q7Ci0KLSNlbmRp
ZgotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TaGFyZWRUYXNrLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dURi93dGYvU2hhcmVkVGFzay5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RG
L3d0Zi9TaGFyZWRUYXNrLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU2hhcmVkVGFza19oCi0jZGVmaW5lIFNoYXJlZFRh
c2tfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvUmVmLmg+CiAjaW5jbHVkZSA8d3Rm
L1RocmVhZFNhZmVSZWZDb3VudGVkLmg+CkBAIC0xMjgsNiArMTI3LDMgQEAgUmVmPFNoYXJlZFRh
c2s8RnVuY3Rpb25UeXBlPj4gY3JlYXRlU2hhcgogdXNpbmcgV1RGOjpjcmVhdGVTaGFyZWRUYXNr
OwogdXNpbmcgV1RGOjpTaGFyZWRUYXNrOwogdXNpbmcgV1RGOjpTaGFyZWRUYXNrRnVuY3RvcjsK
LQotI2VuZGlmIC8vIFNoYXJlZFRhc2tfaAotCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TaW1wbGVT
dGF0cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1NpbXBsZVN0YXRzLmgJKHJldmlz
aW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1NpbXBsZVN0YXRzLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU2lt
cGxlU3RhdHNfaAotI2RlZmluZSBTaW1wbGVTdGF0c19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1
ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgpAQCAt
MTEyLDYgKzExMSwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RG
OjpTaW1wbGVTdGF0czsKLQotI2VuZGlmIC8vIFNpbXBsZVN0YXRzX2gKLQpJbmRleDogU291cmNl
L1dURi93dGYvU2luZ2xlUm9vdEdyYXBoLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
U2luZ2xlUm9vdEdyYXBoLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1Np
bmdsZVJvb3RHcmFwaC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9TaW5nbGVSb290R3JhcGhfaAotI2RlZmluZSBX
VEZfU2luZ2xlUm9vdEdyYXBoX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Zhc3RN
YWxsb2MuaD4KICNpbmNsdWRlIDx3dGYvR3JhcGhOb2RlV29ya2xpc3QuaD4KQEAgLTMwNSw1ICsz
MDQsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6U2luZ2xl
Um9vdEdyYXBoOwotCi0jZW5kaWYgLy8gV1RGX1NpbmdsZVJvb3RHcmFwaF9oCkluZGV4OiBTb3Vy
Y2UvV1RGL3d0Zi9TaW5nbHlMaW5rZWRMaXN0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvU2luZ2x5TGlua2VkTGlzdC5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0
Zi9TaW5nbHlMaW5rZWRMaXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAq
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFNpbmdseUxp
bmtlZExpc3RfaAotI2RlZmluZSBTaW5nbHlMaW5rZWRMaXN0X2gKKyNwcmFnbWEgb25jZQogCiBu
YW1lc3BhY2UgV1RGIHsKIApAQCAtNjgsNSArNjcsMyBAQCB0ZW1wbGF0ZSA8dHlwZW5hbWUgTm9k
ZT4gaW5saW5lIE5vZGUqIFNpCiB9CiAKIHVzaW5nIFdURjo6U2luZ2x5TGlua2VkTGlzdDsKLQot
I2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TaXhDaGFyYWN0ZXJIYXNoLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TaXhDaGFyYWN0ZXJIYXNoLmNwcAkocmV2aXNpb24gMjM3
MDczKQorKysgU291cmNlL1dURi93dGYvU2l4Q2hhcmFjdGVySGFzaC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVk
ZSAiU2l4Q2hhcmFjdGVySGFzaC5oIgorI2luY2x1ZGUgPHd0Zi9TaXhDaGFyYWN0ZXJIYXNoLmg+
CiAKICNpbmNsdWRlIDx3dGYvQVNDSUlDVHlwZS5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9T
aXhDaGFyYWN0ZXJIYXNoLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU2l4Q2hhcmFj
dGVySGFzaC5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9TaXhDaGFyYWN0
ZXJIYXNoLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
IAogICovCiAKLSNpZm5kZWYgU2l4Q2hhcmFjdGVySGFzaF9oCi0jZGVmaW5lIFNpeENoYXJhY3Rl
ckhhc2hfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxhcnJheT4KIApAQCAtNDMsNiArNDIs
MyBAQCBXVEZfRVhQT1JUX1BSSVZBVEUgc3RkOjphcnJheTxjaGFyLCA3PiBpCiAKIHVzaW5nIFdU
Rjo6c2l4Q2hhcmFjdGVySGFzaFN0cmluZ1RvSW50ZWdlcjsKIHVzaW5nIFdURjo6aW50ZWdlclRv
U2l4Q2hhcmFjdGVySGFzaFN0cmluZzsKLQotI2VuZGlmIC8vIFNpeENoYXJhY3Rlckhhc2hfaAot
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TbWFsbFB0clNldC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL1NtYWxsUHRyU2V0LmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYv
d3RmL1NtYWxsUHRyU2V0LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU21hbGxQdHJTZXRfaAotI2RlZmluZSBTbWFsbFB0
clNldF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5j
bHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KQEAgLTI0OSw1ICsyNDgsMyBAQCBwcml2YXRlOgogfSAv
LyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6U21hbGxQdHJTZXQ7Ci0KLSNlbmRpZiAvLyBT
bWFsbFB0clNldF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TcGVjdHJ1bS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL1NwZWN0cnVtLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJj
ZS9XVEYvd3RmL1NwZWN0cnVtLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU3BlY3RydW1faAotI2RlZmluZSBTcGVjdHJ1
bV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8
d3RmL1ZlY3Rvci5oPgpAQCAtMTIyLDUgKzEyMSwzIEBAIHByaXZhdGU6CiB9IC8vIG5hbWVzcGFj
ZSBXVEYKIAogdXNpbmcgV1RGOjpTcGVjdHJ1bTsKLQotI2VuZGlmIC8vIFNwZWN0cnVtX2gKSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL1N0YWNrQm91bmRzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9TdGFja0JvdW5kcy5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYv
d3RmL1N0YWNrQm91bmRzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTksOSArMTksOSBAQAogICov
CiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJTdGFja0JvdW5kcy5oIgogI2luY2x1
ZGUgPG11dGV4PgogI2luY2x1ZGUgPHd0Zi9Ob1RhaWxDYWxscy5oPgorI2luY2x1ZGUgPHd0Zi9T
dGFja0JvdW5kcy5oPgogCiAjaWYgT1MoREFSV0lOKQogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9T
dGFja0JvdW5kcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1N0YWNrQm91bmRzLmgJ
KHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1N0YWNrQm91bmRzLmgJKHdvcmtp
bmcgY29weSkKQEAgLTI0LDggKzI0LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBTdGFja0JvdW5k
c19oCi0jZGVmaW5lIFN0YWNrQm91bmRzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8YWxn
b3JpdGhtPgogI2luY2x1ZGUgPHd0Zi9TdGFja1BvaW50ZXIuaD4KQEAgLTE2NCw1ICsxNjMsMyBA
QCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6U3RhY2tCb3VuZHM7
Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvU3RhY2tTdGF0cy5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvU3RhY2tTdGF0cy5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysr
IFNvdXJjZS9XVEYvd3RmL1N0YWNrU3RhdHMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMiAr
MjQsMTIgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiU3RhY2tTdGF0
cy5oIgorI2luY2x1ZGUgPHd0Zi9TdGFja1N0YXRzLmg+CiAKICNpZiBFTkFCTEUoU1RBQ0tfU1RB
VFMpIAogCi0jaW5jbHVkZSAiQXNzZXJ0aW9ucy5oIgotI2luY2x1ZGUgIkRhdGFMb2cuaCIKKyNp
bmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgorI2luY2x1ZGUgPHd0Zi9EYXRhTG9nLmg+CiAKIC8v
IERlZmluZSB0aGUgZm9sbG93aW5nIGZsYWcgaWYgeW91IHdhbnQgdG8gY29sbGVjdCBzdGF0cyBv
biBldmVyeSBzaW5nbGUKIC8vIGNoZWNrcG9pbnQuIEJ5IGRlZmF1bHQsIHdlIG9ubHkgbG9nIGNo
ZWNrcG9pbnRzIHRoYXQgZXN0YWJsaXNoIG5ldwpJbmRleDogU291cmNlL1dURi93dGYvU3RhY2tT
dGF0cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1N0YWNrU3RhdHMuaAkocmV2aXNp
b24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvU3RhY2tTdGF0cy5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yMywxMSArMjMsMTAgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU3Rh
Y2tTdGF0c19oCi0jZGVmaW5lIFN0YWNrU3RhdHNfaAorI3ByYWdtYSBvbmNlCiAKLSNpbmNsdWRl
ICJFeHBvcnRNYWNyb3MuaCIKICNpbmNsdWRlIDxtdXRleD4KKyNpbmNsdWRlIDx3dGYvRXhwb3J0
TWFjcm9zLmg+CiAKIAogLy8gRGVmaW5lIHRoaXMgZmxhZyB0byBlbmFibGUgU3RhY2sgc3RhdHMg
Y29sbGVjdGlvbi4gVGhpcyBmZWF0dXJlIGlzIHVzZWZ1bApAQCAtMTQzLDUgKzE0MiwzIEBAIHBy
aXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpTdGFja1N0YXRzOwotCi0j
ZW5kaWYgLy8gU3RhY2tTdGF0c19oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TdGFja1RyYWNlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TdGFja1RyYWNlLmNwcAkocmV2aXNpb24g
MjM3MDczKQorKysgU291cmNlL1dURi93dGYvU3RhY2tUcmFjZS5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTI1LDcgKzI1LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAi
U3RhY2tUcmFjZS5oIgorI2luY2x1ZGUgPHd0Zi9TdGFja1RyYWNlLmg+CiAKICNpbmNsdWRlIDx3
dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgpJbmRleDogU291
cmNlL1dURi93dGYvU3RkTGliRXh0cmFzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
U3RkTGliRXh0cmFzLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1N0ZExp
YkV4dHJhcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw4ICsyNCw3IEBACiAgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LiAKICAqLwogCi0jaWZuZGVmIFdURl9TdGRMaWJFeHRyYXNfaAotI2RlZmluZSBXVEZfU3RkTGli
RXh0cmFzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8Y3N0cmluZz4KICNpbmNsdWRlIDxt
ZW1vcnk+CkBAIC01OTAsNSArNTg5LDMgQEAgdXNpbmcgV1RGOjptZXJnZURlZHVwbGljYXRlZFNv
cnRlZDsKIHVzaW5nIFdURjo6cm91bmRVcFRvTXVsdGlwbGVPZjsKIHVzaW5nIFdURjo6c2FmZUNh
c3Q7CiB1c2luZyBXVEY6OnRyeUJpbmFyeVNlYXJjaDsKLQotI2VuZGlmIC8vIFdURl9TdGRMaWJF
eHRyYXNfaApJbmRleDogU291cmNlL1dURi93dGYvU3RyZWFtQnVmZmVyLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvU3RyZWFtQnVmZmVyLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNv
dXJjZS9XVEYvd3RmL1N0cmVhbUJ1ZmZlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw3
IEBACiAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCiAqLwogCi0jaWZuZGVmIFdURl9TdHJlYW1CdWZmZXJfaAotI2Rl
ZmluZSBXVEZfU3RyZWFtQnVmZmVyX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Rl
cXVlLmg+CiAKQEAgLTExMiw1ICsxMTEsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RG
CiAKIHVzaW5nIFdURjo6U3RyZWFtQnVmZmVyOwotCi0jZW5kaWYgLy8gV1RGX1N0cmVhbUJ1ZmZl
cl9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9TdHJpbmdIYXNoRHVtcENvbnRleHQuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TdHJpbmdIYXNoRHVtcENvbnRleHQuaAkocmV2aXNpb24g
MjM3MDczKQorKysgU291cmNlL1dURi93dGYvU3RyaW5nSGFzaER1bXBDb250ZXh0LmgJKHdvcmtp
bmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5k
ZWYgU3RyaW5nSGFzaER1bXBDb250ZXh0X2gKLSNkZWZpbmUgU3RyaW5nSGFzaER1bXBDb250ZXh0
X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3
dGYvU2l4Q2hhcmFjdGVySGFzaC5oPgpAQCAtMTE3LDYgKzExNiwzIEBAIHB1YmxpYzoKIH0gLy8g
bmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlN0cmluZ0hhc2hEdW1wQ29udGV4dDsKLQotI2Vu
ZGlmIC8vIFN0cmluZ0hhc2hEdW1wQ29udGV4dF9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1N0
cmluZ1ByaW50U3RyZWFtLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9TdHJpbmdQ
cmludFN0cmVhbS5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1N0cmlu
Z1ByaW50U3RyZWFtLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAK
ICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJTdHJpbmdQcmludFN0cmVhbS5oIgorI2lu
Y2x1ZGUgPHd0Zi9TdHJpbmdQcmludFN0cmVhbS5oPgogCiAjaW5jbHVkZSA8c3RkYXJnLmg+CiAj
aW5jbHVkZSA8c3RkaW8uaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1N0cmluZ1ByaW50U3RyZWFt
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvU3RyaW5nUHJpbnRTdHJlYW0uaAkocmV2
aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvU3RyaW5nUHJpbnRTdHJlYW0uaAkod29y
a2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lm
bmRlZiBTdHJpbmdQcmludFN0cmVhbV9oCi0jZGVmaW5lIFN0cmluZ1ByaW50U3RyZWFtX2gKKyNw
cmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CiAjaW5jbHVkZSA8d3Rm
L3RleHQvQ1N0cmluZy5oPgpAQCAtNzgsNiArNzcsMyBAQCBTdHJpbmcgdG9TdHJpbmcoY29uc3Qg
VHlwZXMmLi4uIHZhbHVlcykKIHVzaW5nIFdURjo6U3RyaW5nUHJpbnRTdHJlYW07CiB1c2luZyBX
VEY6OnRvQ1N0cmluZzsKIHVzaW5nIFdURjo6dG9TdHJpbmc7Ci0KLSNlbmRpZiAvLyBTdHJpbmdQ
cmludFN0cmVhbV9oCi0KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZEdyb3VwLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRHcm91cC5jcHAJKHJldmlzaW9uIDIzNzA3
MykKKysrIFNvdXJjZS9XVEYvd3RmL1RocmVhZEdyb3VwLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUaHJl
YWRHcm91cC5oIgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRHcm91cC5oPgogCiAjaW5jbHVkZSA8d3Rm
L05ldmVyRGVzdHJveWVkLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZE1lc3NhZ2Uu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1RocmVhZE1lc3NhZ2UuY3BwCShyZXZp
c2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRNZXNzYWdlLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNp
bmNsdWRlICJUaHJlYWRNZXNzYWdlLmgiCisjaW5jbHVkZSA8d3RmL1RocmVhZE1lc3NhZ2UuaD4K
IAogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CiAjaW5jbHVkZSA8d3RmL0xvY2tlci5oPgpJbmRleDog
U291cmNlL1dURi93dGYvVGhyZWFkU3BlY2lmaWMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi9UaHJlYWRTcGVjaWZpYy5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0
Zi9UaHJlYWRTcGVjaWZpYy5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOSw4ICszOSw3IEBACiAgKiBX
ZWJLaXQgdGhlIHJlcGVhdGVkIGNhbGwgYmFoYXZpb3IgaXMgdXRpbGl6ZWQuCiAgKi8KIAotI2lm
bmRlZiBXVEZfVGhyZWFkU3BlY2lmaWNfaAotI2RlZmluZSBXVEZfVGhyZWFkU3BlY2lmaWNfaAor
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgogI2luY2x1ZGUgPHd0
Zi9Ob25jb3B5YWJsZS5oPgpAQCAtMzExLDUgKzMxMCwzIEBAIGlubGluZSBUJiBUaHJlYWRTcGVj
aWZpYzxULCBjYW5CZUdDVGhyZWEKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlRo
cmVhZFNwZWNpZmljOwotCi0jZW5kaWYgLy8gV1RGX1RocmVhZFNwZWNpZmljX2gKSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL1RocmVhZFNwZWNpZmljV2luLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9UaHJlYWRTcGVjaWZpY1dpbi5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJj
ZS9XVEYvd3RmL1RocmVhZFNwZWNpZmljV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjAsNyAr
MjAsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUaHJlYWRTcGVj
aWZpYy5oIgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRTcGVjaWZpYy5oPgogCiAjaWYgT1MoV0lORE9X
UykKIApJbmRleDogU291cmNlL1dURi93dGYvVGhyZWFkaW5nLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmcuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2Uv
V1RGL3d0Zi9UaHJlYWRpbmcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAg
Ki8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlRocmVhZGluZy5oIgorI2luY2x1
ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KIAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRlIDxj
bWF0aD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL1RocmVhZGluZy5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RG
L3d0Zi9UaHJlYWRpbmcuaAkod29ya2luZyBjb3B5KQpAQCAtMjgsOCArMjgsNyBAQAogICogVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KICAqLwogCi0jaWZuZGVmIFRocmVhZGluZ19oCi0jZGVmaW5lIFRocmVhZGluZ19oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHN0ZGludC5oPgpAQCAt
MzQwLDUgKzMzOSwzIEBAIHVzaW5nIFdURjo6VGhyZWFkSWRlbnRpZmllcjsKIHVzaW5nIFdURjo6
Y3JlYXRlVGhyZWFkOwogdXNpbmcgV1RGOjp3YWl0Rm9yVGhyZWFkQ29tcGxldGlvbjsKICNlbmRp
ZgotCi0jZW5kaWYgLy8gVGhyZWFkaW5nX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RocmVhZGlu
Z1ByaW1pdGl2ZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmdQcmlt
aXRpdmVzLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1By
aW1pdGl2ZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMjgsOCArMjgsNyBAQAogICoKICAqLwogCi0j
aWZuZGVmIFRocmVhZGluZ1ByaW1pdGl2ZXNfaAotI2RlZmluZSBUaHJlYWRpbmdQcmltaXRpdmVz
X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KICNpbmNsdWRl
IDx3dGYvTG9ja2VyLmg+CkBAIC0xMTAsNSArMTA5LDMgQEAgcHJpdmF0ZToKIHVzaW5nIFdURjo6
TXV0ZXg7CiB1c2luZyBXVEY6Ok11dGV4TG9ja2VyOwogdXNpbmcgV1RGOjpUaHJlYWRDb25kaXRp
b247Ci0KLSNlbmRpZiAvLyBUaHJlYWRpbmdQcmltaXRpdmVzX2gKSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9U
aHJlYWRpbmdQdGhyZWFkcy5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3Rm
L1RocmVhZGluZ1B0aHJlYWRzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzAsNyArMzAsNyBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUaHJlYWRpbmcuaCIKKyNpbmNs
dWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAKICNpZiBVU0UoUFRIUkVBRFMpCiAKSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL1RocmVhZGluZ1dpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
VGhyZWFkaW5nV2luLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvVGhy
ZWFkaW5nV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODQsNyArODQsNyBAQAogICovCiAKICNp
bmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUaHJlYWRpbmcuaCIKKyNpbmNsdWRlIDx3dGYv
VGhyZWFkaW5nLmg+CiAKICNpZiBPUyhXSU5ET1dTKQogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9U
aW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3Rm
L1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJj
ZS9XVEYvd3RmL1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI0LDE0ICsyNCwxNCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJU
aW1lV2l0aER5bmFtaWNDbG9ja1R5cGUuaCIKKyNpbmNsdWRlIDx3dGYvVGltZVdpdGhEeW5hbWlj
Q2xvY2tUeXBlLmg+CiAKLSNpbmNsdWRlICJDb25kaXRpb24uaCIKLSNpbmNsdWRlICJMb2NrLmgi
Ci0jaW5jbHVkZSAiUHJpbnRTdHJlYW0uaCIKICNpbmNsdWRlIDxjZmxvYXQ+CiAjaW5jbHVkZSA8
Y21hdGg+CisjaW5jbHVkZSA8d3RmL0NvbmRpdGlvbi5oPgogI2luY2x1ZGUgPHd0Zi9EYXRhTG9n
Lmg+CisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5jbHVkZSA8d3RmL0xvY2suaD4K
IAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1RpbWVXaXRoRHluYW1p
Y0Nsb2NrVHlwZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1RpbWVXaXRoRHluYW1p
Y0Nsb2NrVHlwZS5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9UaW1lV2l0
aER5bmFtaWNDbG9ja1R5cGUuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfVGltZVdpdGhEeW5hbWljQ2xvY2tUeXBl
X2gKLSNkZWZpbmUgV1RGX1RpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZV9oCisjcHJhZ21hIG9uY2UK
IAogI2luY2x1ZGUgPHd0Zi9DbG9ja1R5cGUuaD4KICNpbmNsdWRlIDx3dGYvTW9ub3RvbmljVGlt
ZS5oPgpAQCAtMTYwLDUgKzE1OSwzIEBAIGlubGluZSBib29sIGlzZmluaXRlKFdURjo6VGltZVdp
dGhEeW5hbWkKIHVzaW5nIFdURjo6VGltZVdpdGhEeW5hbWljQ2xvY2tUeXBlOwogdXNpbmcgV1RG
OjpoYXNFbGFwc2VkOwogdXNpbmcgV1RGOjpzbGVlcDsKLQotI2VuZGlmIC8vIFdURl9UaW1lV2l0
aER5bmFtaWNDbG9ja1R5cGVfaApJbmRleDogU291cmNlL1dURi93dGYvVGltaW5nU2NvcGUuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1RpbWluZ1Njb3BlLmNwcAkocmV2aXNpb24g
MjM3MDczKQorKysgU291cmNlL1dURi93dGYvVGltaW5nU2NvcGUuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUg
IlRpbWluZ1Njb3BlLmgiCisjaW5jbHVkZSA8d3RmL1RpbWluZ1Njb3BlLmg+CiAKICNpbmNsdWRl
IDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9Mb2NrLmg+CkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi9UaW55TFJVQ2FjaGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UaW55TFJV
Q2FjaGUuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvVGlueUxSVUNhY2hl
LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFRpbnlMUlVDYWNoZV9oCi0jZGVmaW5lIFRp
bnlMUlVDYWNoZV9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3ll
ZC5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTgwLDUgKzc5LDMgQEAgcHJpdmF0ZToK
IAogdXNpbmcgV1RGOjpUaW55TFJVQ2FjaGU7CiB1c2luZyBXVEY6OlRpbnlMUlVDYWNoZVBvbGlj
eTsKLQotI2VuZGlmIC8vIFRpbnlMUlVDYWNoZV9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9UaW55
UHRyU2V0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvVGlueVB0clNldC5oCShyZXZp
c2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9UaW55UHRyU2V0LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgVGlu
eVB0clNldF9oCi0jZGVmaW5lIFRpbnlQdHJTZXRfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRl
IDx3dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CkBAIC01MjYs
NiArNTI1LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlRp
bnlQdHJTZXQ7Ci0KLSNlbmRpZiAvLyBUaW55UHRyU2V0X2gKLQpJbmRleDogU291cmNlL1dURi93
dGYvVHJpU3RhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9UcmlTdGF0ZS5oCShy
ZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9UcmlTdGF0ZS5oCSh3b3JraW5nIGNv
cHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFRy
aVN0YXRlX2gKLSNkZWZpbmUgVHJpU3RhdGVfaAorI3ByYWdtYSBvbmNlCiAKIG5hbWVzcGFjZSBX
VEYgewogCkBAIC00Niw1ICs0NSwzIEBAIHVzaW5nIFdURjo6RmFsc2VUcmlTdGF0ZTsKIHVzaW5n
IFdURjo6VHJ1ZVRyaVN0YXRlOwogdXNpbmcgV1RGOjpNaXhlZFRyaVN0YXRlOwogdXNpbmcgV1RG
Ojp0cmlTdGF0ZTsKLQotI2VuZGlmIC8vIFRyaVN0YXRlX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3Rm
L1R5cGVDYXN0cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1R5cGVDYXN0cy5oCShy
ZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9UeXBlQ2FzdHMuaAkod29ya2luZyBj
b3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgogICovCiAKLSNpZm5kZWYgVHlwZUNhc3RzX2gKLSNkZWZpbmUgVHlwZUNhc3RzX2gKKyNwcmFn
bWEgb25jZQogCiAjaW5jbHVkZSA8dHlwZV90cmFpdHM+CiAKQEAgLTEwOCw1ICsxMDcsMyBAQCBw
cml2YXRlOgogdXNpbmcgV1RGOjpUeXBlQ2FzdFRyYWl0czsKIHVzaW5nIFdURjo6aXM7CiB1c2lu
ZyBXVEY6OmRvd25jYXN0OwotCi0jZW5kaWYgLy8gVHlwZUNhc3RzX2gKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL1VVSUQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1VVSUQuY3BwCShy
ZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9VVUlELmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjksNyArMjksNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJVVUlELmgiCisjaW5jbHVkZSA8d3RmL1VVSUQuaD4KIAogI2luY2x1ZGUgPHd0Zi9DcnlwdG9n
cmFwaGljYWxseVJhbmRvbU51bWJlci5oPgogI2luY2x1ZGUgPHd0Zi9IZXhOdW1iZXIuaD4KSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL1VuaVN0ZEV4dHJhcy5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dURi93dGYvVW5pU3RkRXh0cmFzLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dU
Ri93dGYvVW5pU3RkRXh0cmFzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJVbmlTdGRFeHRyYXMuaCIKKyNp
bmNsdWRlIDx3dGYvVW5pU3RkRXh0cmFzLmg+CiAKICNpbmNsdWRlIDxmY250bC5oPgogCkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi9VbmlvbkZpbmQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi9VbmlvbkZpbmQuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvVW5pb25G
aW5kLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAog
ICovCiAKLSNpZm5kZWYgVW5pb25GaW5kX2gKLSNkZWZpbmUgVW5pb25GaW5kX2gKKyNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIApAQCAtMTA4LDUgKzEwNywzIEBA
IHByaXZhdGU6CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpVbmlvbkZpbmQ7Ci0K
LSNlbmRpZiAvLyBVbmlvbkZpbmRfaApJbmRleDogU291cmNlL1dURi93dGYvVk1UYWdzLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvVk1UYWdzLmgJKHJldmlzaW9uIDIzNzA3MykKKysr
IFNvdXJjZS9XVEYvd3RmL1ZNVGFncy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBA
CiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFZNVGFnc19oCi0jZGVmaW5lIFZNVGFn
c19oCisjcHJhZ21hIG9uY2UKIAogLy8gT24gTWFjIE9TIFgsIHRoZSBWTSBzdWJzeXN0ZW0gYWxs
b3dzIHRhZ2dpbmcgbWVtb3J5IHJlcXVlc3RlZCBmcm9tIG1tYXAgYW5kIHZtX21hcAogLy8gaW4g
b3JkZXIgdG8gYWlkIHRvb2xzIHRoYXQgaW5zcGVjdCBzeXN0ZW0gbWVtb3J5IHVzZS4gCkBAIC02
NCw1ICs2MywzIEBACiAjZGVmaW5lIFZNX1RBR19GT1JfUkVHSVNURVJGSUxFX01FTU9SWSAtMQog
CiAjZW5kaWYgLy8gT1MoREFSV0lOKQotCi0jZW5kaWYgLy8gVk1UYWdzX2gKSW5kZXg6IFNvdXJj
ZS9XVEYvd3RmL1ZhbHVlQ2hlY2suaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9WYWx1
ZUNoZWNrLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1ZhbHVlQ2hlY2su
aAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8K
IAotI2lmbmRlZiBWYWx1ZUNoZWNrX2gKLSNkZWZpbmUgVmFsdWVDaGVja19oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAKQEAgLTQ5LDUgKzQ4LDMgQEAgdGVt
cGxhdGU8dHlwZW5hbWUgUD4gc3RydWN0IFZhbHVlQ2hlY2s8UAogI2VuZGlmCiAKIH0KLQotI2Vu
ZGlmIC8vIFZhbHVlQ2hlY2tfaApJbmRleDogU291cmNlL1dURi93dGYvVmVjdG9yLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvVmVjdG9yLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNv
dXJjZS9XVEYvd3RmL1ZlY3Rvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOCw4ICsxOCw3IEBACiAg
KgogICovCiAKLSNpZm5kZWYgV1RGX1ZlY3Rvcl9oCi0jZGVmaW5lIFdURl9WZWN0b3JfaAorI3By
YWdtYSBvbmNlCiAKICNpbmNsdWRlIDxpbml0aWFsaXplcl9saXN0PgogI2luY2x1ZGUgPGxpbWl0
cz4KQEAgLTE3MDgsNSArMTcwNywzIEBAIHVzaW5nIFdURjo6Y29weVRvVmVjdG9yOwogdXNpbmcg
V1RGOjpjb3B5VG9WZWN0b3JPZjsKIHVzaW5nIFdURjo6Y29weVRvVmVjdG9yU3BlY2lhbGl6YXRp
b247CiB1c2luZyBXVEY6OnJlbW92ZVJlcGVhdGVkRWxlbWVudHM7Ci0KLSNlbmRpZiAvLyBXVEZf
VmVjdG9yX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1ZlY3RvclRyYWl0cy5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL1ZlY3RvclRyYWl0cy5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBT
b3VyY2UvV1RGL3d0Zi9WZWN0b3JUcmFpdHMuaAkod29ya2luZyBjb3B5KQpAQCAtMTgsOCArMTgs
NyBAQAogICoKICAqLwogCi0jaWZuZGVmIFdURl9WZWN0b3JUcmFpdHNfaAotI2RlZmluZSBXVEZf
VmVjdG9yVHJhaXRzX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL1JlZi5oPgogI2lu
Y2x1ZGUgPHd0Zi9SZWZQdHIuaD4KQEAgLTkyLDUgKzkxLDMgQEAgbmFtZXNwYWNlIFdURiB7CiAK
IHVzaW5nIFdURjo6VmVjdG9yVHJhaXRzOwogdXNpbmcgV1RGOjpTaW1wbGVDbGFzc1ZlY3RvclRy
YWl0czsKLQotI2VuZGlmIC8vIFdURl9WZWN0b3JUcmFpdHNfaApJbmRleDogU291cmNlL1dURi93
dGYvV2FsbFRpbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1dhbGxUaW1lLmNw
cAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvV2FsbFRpbWUuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNCwxMSArMjQsMTEgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgi
Ci0jaW5jbHVkZSAiV2FsbFRpbWUuaCIKKyNpbmNsdWRlIDx3dGYvV2FsbFRpbWUuaD4KIAotI2lu
Y2x1ZGUgIk1vbm90b25pY1RpbWUuaCIKLSNpbmNsdWRlICJQcmludFN0cmVhbS5oIgotI2luY2x1
ZGUgIlRpbWVXaXRoRHluYW1pY0Nsb2NrVHlwZS5oIgorI2luY2x1ZGUgPHd0Zi9Nb25vdG9uaWNU
aW1lLmg+CisjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5jbHVkZSA8d3RmL1RpbWVX
aXRoRHluYW1pY0Nsb2NrVHlwZS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNl
L1dURi93dGYvV2FsbFRpbWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9XYWxsVGlt
ZS5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9XYWxsVGltZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZu
ZGVmIFdURl9XYWxsVGltZV9oCi0jZGVmaW5lIFdURl9XYWxsVGltZV9oCisjcHJhZ21hIG9uY2UK
IAogI2luY2x1ZGUgPHd0Zi9DbG9ja1R5cGUuaD4KICNpbmNsdWRlIDx3dGYvU2Vjb25kcy5oPgpA
QCAtMTgxLDUgKzE4MCwzIEBAIGlubGluZSBib29sIGlzZmluaXRlKFdURjo6V2FsbFRpbWUgdGlt
ZSkKIH0gLy8gbmFtZXNwYWNlIHN0ZAogCiB1c2luZyBXVEY6OldhbGxUaW1lOwotCi0jZW5kaWYg
Ly8gV1RGX1dhbGxUaW1lX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1dlYWtQdHIuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9XZWFrUHRyLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNv
dXJjZS9XVEYvd3RmL1dlYWtQdHIuaAkod29ya2luZyBjb3B5KQpAQCAtMjQsOCArMjQsNyBAQAog
ICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFdURl9XZWFrUHRyX2gKLSNkZWZpbmUgV1RG
X1dlYWtQdHJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4K
ICNpbmNsdWRlIDx3dGYvUmVmLmg+CkBAIC0yMjMsNSArMjIyLDMgQEAgdXNpbmcgV1RGOjpXZWFr
UHRyOwogdXNpbmcgV1RGOjpXZWFrUHRyRmFjdG9yeTsKIHVzaW5nIFdURjo6V2Vha1JlZmVyZW5j
ZTsKIHVzaW5nIFdURjo6bWFrZVdlYWtQdHI7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93
dGYvV2Vha1JhbmRvbS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1dlYWtSYW5kb20u
aAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvV2Vha1JhbmRvbS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw3IEBACiAgKiBTZWUgYWxzbyBodHRwczovL2VuLndpa2lw
ZWRpYS5vcmcvd2lraS9Yb3JzaGlmdC4KICAqLwogCi0jaWZuZGVmIFdlYWtSYW5kb21faAotI2Rl
ZmluZSBXZWFrUmFuZG9tX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8bGltaXRzLmg+CiAj
aW5jbHVkZSA8d3RmL0NyeXB0b2dyYXBoaWNhbGx5UmFuZG9tTnVtYmVyLmg+CkBAIC0xMDksNSAr
MTA4LDMgQEAgcHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OldlYWtS
YW5kb207Ci0KLSNlbmRpZiAvLyBXZWFrUmFuZG9tX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1dv
cmRMb2NrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9Xb3JkTG9jay5jcHAJKHJl
dmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL1dvcmRMb2NrLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjQsMTIgKzI0LDEyIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2lu
Y2x1ZGUgIldvcmRMb2NrLmgiCisjaW5jbHVkZSA8d3RmL1dvcmRMb2NrLmg+CiAKLSNpbmNsdWRl
ICJUaHJlYWRpbmcuaCIKICNpbmNsdWRlIDxjb25kaXRpb25fdmFyaWFibGU+CiAjaW5jbHVkZSA8
bXV0ZXg+CiAjaW5jbHVkZSA8dGhyZWFkPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KIAog
bmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1dvcmRMb2NrLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvV29yZExvY2suaAkocmV2aXNpb24gMjM3MDczKQorKysg
U291cmNlL1dURi93dGYvV29yZExvY2suaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBA
QAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4gCiAgKi8KIAotI2lmbmRlZiBXVEZfV29yZExvY2tfaAotI2RlZmlu
ZSBXVEZfV29yZExvY2tfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvQXRvbWljcy5o
PgogI2luY2x1ZGUgPHd0Zi9Db21waWxlci5oPgpAQCAtMTA3LDYgKzEwNiwzIEBAIHVzaW5nIFdv
cmRMb2NrSG9sZGVyID0gTG9ja2VyPFdvcmRMb2NrPjsKIAogdXNpbmcgV1RGOjpXb3JkTG9jazsK
IHVzaW5nIFdURjo6V29yZExvY2tIb2xkZXI7Ci0KLSNlbmRpZiAvLyBXVEZfV29yZExvY2tfaAot
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9Xb3JrUXVldWUuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL1dvcmtRdWV1ZS5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYv
d3RmL1dvcmtRdWV1ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya1F1ZXVlLmgiCisjaW5jbHVkZSA8
d3RmL1dvcmtRdWV1ZS5oPgogCiAjaW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8d3RmL0NvbmRp
dGlvbi5oPgpJbmRleDogU291cmNlL1dURi93dGYvV29ya1F1ZXVlLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvV29ya1F1ZXVlLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9X
VEYvd3RmL1dvcmtRdWV1ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw3IEBACiAgKiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXb3JrUXVldWVf
aAotI2RlZmluZSBXb3JrUXVldWVfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRm9y
d2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlvbkRpc3BhdGNoZXIuaD4KQEAgLTExMiw1ICsx
MTEsMyBAQCBwcml2YXRlOgogfQogCiB1c2luZyBXVEY6OldvcmtRdWV1ZTsKLQotI2VuZGlmCklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9Xb3JrZXJQb29sLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9Xb3JrZXJQb29sLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93
dGYvV29ya2VyUG9vbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwog
CiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya2VyUG9vbC5oIgorI2luY2x1ZGUg
PHd0Zi9Xb3JrZXJQb29sLmg+CiAKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KIApJ
bmRleDogU291cmNlL1dURi93dGYvZHRvYS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvZHRvYS5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL2R0b2EuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0zMyw3ICszMyw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgImR0b2EuaCIKKyNpbmNsdWRlIDx3dGYvZHRvYS5oPgogCiAjaW5jbHVk
ZSA8c3RkaW8uaD4KICNpbmNsdWRlIDx3dGYvTG9jay5oPgpJbmRleDogU291cmNlL1dURi93dGYv
ZHRvYS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2R0b2EuaAkocmV2aXNpb24gMjM3
MDczKQorKysgU291cmNlL1dURi93dGYvZHRvYS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOCw4ICsx
OCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgV1RGX2R0b2FfaAotI2RlZmluZSBXVEZfZHRvYV9o
CisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHVuaWNvZGUvdXR5cGVzLmg+CiAjaW5jbHVkZSA8
d3RmL0FTQ0lJQ1R5cGUuaD4KQEAgLTgyLDUgKzgxLDMgQEAgdXNpbmcgV1RGOjpudW1iZXJUb1N0
cmluZzsKIHVzaW5nIFdURjo6bnVtYmVyVG9GaXhlZFByZWNpc2lvblN0cmluZzsKIHVzaW5nIFdU
Rjo6bnVtYmVyVG9GaXhlZFdpZHRoU3RyaW5nOwogdXNpbmcgV1RGOjpwYXJzZURvdWJsZTsKLQot
I2VuZGlmIC8vIFdURl9kdG9hX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL21ibWFsbG9jLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9tYm1hbGxvYy5jcHAJKHJldmlzaW9uIDIzNzA3
MykKKysrIFNvdXJjZS9XVEYvd3RmL21ibWFsbG9jLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQs
NyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJGYXN0TWFs
bG9jLmgiCisjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KIAogI2RlZmluZSBFWFBPUlQgX19h
dHRyaWJ1dGVfXygodmlzaWJpbGl0eSgiZGVmYXVsdCIpKSkKIApJbmRleDogU291cmNlL1dURi93
dGYvY2YvTGFuZ3VhZ2VDRi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvY2YvTGFu
Z3VhZ2VDRi5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL2NmL0xhbmd1
YWdlQ0YuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1
ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkxhbmd1YWdlLmgiCisjaW5jbHVkZSA8d3RmL0xhbmd1
YWdlLmg+CiAKICNpbmNsdWRlIDxDb3JlRm91bmRhdGlvbi9Db3JlRm91bmRhdGlvbi5oPgogI2lu
Y2x1ZGUgPG11dGV4PgpJbmRleDogU291cmNlL1dURi93dGYvY2YvUnVuTG9vcENGLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9jZi9SdW5Mb29wQ0YuY3BwCShyZXZpc2lvbiAyMzcw
NzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9jZi9SdW5Mb29wQ0YuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlJ1
bkxvb3AuaCIKKyNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgogCiAjaW5jbHVkZSA8Q29yZUZvdW5k
YXRpb24vQ29yZUZvdW5kYXRpb24uaD4KICNpbmNsdWRlIDxkaXNwYXRjaC9kaXNwYXRjaC5oPgpJ
bmRleDogU291cmNlL1dURi93dGYvY29jb2EvRW50aXRsZW1lbnRzLm1tCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL2NvY29hL0VudGl0bGVtZW50cy5tbQkocmV2aXNpb24gMjM3MDczKQor
KysgU291cmNlL1dURi93dGYvY29jb2EvRW50aXRsZW1lbnRzLm1tCSh3b3JraW5nIGNvcHkpCkBA
IC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkVu
dGl0bGVtZW50cy5oIgorI2luY2x1ZGUgPHd0Zi9jb2NvYS9FbnRpdGxlbWVudHMuaD4KIAogI2lu
Y2x1ZGUgPHd0Zi9PU09iamVjdFB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL2NvY29hL01hY2hTZW5kUmlnaHQuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL2NvY29hL01hY2hTZW5kUmlnaHQuY3BwCShyZXZpc2lvbiAyMzcwNzMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NYWNoU2VuZFJpZ2h0LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJNYWNoU2VuZFJpZ2h0LmgiCisjaW5jbHVkZSA8d3RmL01hY2hTZW5kUmlnaHQuaD4KIAogI2lu
Y2x1ZGUgPG1hY2gvbWFjaF9lcnJvci5oPgogI2luY2x1ZGUgPG1hY2gvbWFjaF9pbml0Lmg+Cklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NYWluVGhyZWFkQ29jb2EubW0KPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvY29jb2EvTWFpblRocmVhZENvY29hLm1tCShyZXZpc2lvbiAyMzcw
NzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NYWluVGhyZWFkQ29jb2EubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTI3LDcgKzI3LDcgQEAKICAqLwogCiAjaW1wb3J0ICJjb25maWcuaCIKLSNpbXBv
cnQgIk1haW5UaHJlYWQuaCIKKyNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAKICNpbXBvcnQg
PENvcmVGb3VuZGF0aW9uL0NvcmVGb3VuZGF0aW9uLmg+CiAjaW1wb3J0IDxGb3VuZGF0aW9uL05T
VGhyZWFkLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NZW1vcnlGb290cHJpbnRDb2Nv
YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvY29jb2EvTWVtb3J5Rm9vdHByaW50
Q29jb2EuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NZW1v
cnlGb290cHJpbnRDb2NvYS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAq
LwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTWVtb3J5Rm9vdHByaW50LmgiCisj
aW5jbHVkZSA8d3RmL01lbW9yeUZvb3RwcmludC5oPgogCiAjaW5jbHVkZSA8bWFjaC9tYWNoLmg+
CiAjaW5jbHVkZSA8bWFjaC90YXNrX2luZm8uaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL2NvY29h
L01lbW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL2NvY29hL01lbW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1tCShyZXZpc2lvbiAyMzcwNzMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9NZW1vcnlQcmVzc3VyZUhhbmRsZXJDb2NvYS5tbQko
d29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbXBvcnQgImNvbmZpZy5o
IgotI2ltcG9ydCAiTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmgiCisjaW1wb3J0IDx3dGYvTWVtb3J5
UHJlc3N1cmVIYW5kbGVyLmg+CiAKICNpbXBvcnQgPG1hY2gvbWFjaC5oPgogI2ltcG9ydCA8bWFj
aC90YXNrX2luZm8uaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL2NvY29hL1dvcmtRdWV1ZUNvY29h
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9jb2NvYS9Xb3JrUXVldWVDb2NvYS5j
cHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL2NvY29hL1dvcmtRdWV1ZUNv
Y29hLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsOSArMjQsMTAgQEAKICAqLwogCiAjaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya1F1ZXVlLmgiCi0jaW5jbHVkZSAiQmxvY2tQdHIu
aCIKLSNpbmNsdWRlICJSZWYuaCIKKyNpbmNsdWRlIDx3dGYvV29ya1F1ZXVlLmg+CisKKyNpbmNs
dWRlIDx3dGYvQmxvY2tQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmLmg+CiAKIG5hbWVzcGFjZSBX
VEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9mdWNoc2lhL0NQVVRpbWVGdWNoc2lhLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9mdWNoc2lhL0NQVVRpbWVGdWNoc2lhLmNwcAko
cmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvZnVjaHNpYS9DUFVUaW1lRnVjaHNp
YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAi
Y29uZmlnLmgiCi0jaW5jbHVkZSAiQ1BVVGltZS5oIgorI2luY2x1ZGUgPHd0Zi9DUFVUaW1lLmg+
CiAKICNpbmNsdWRlIDx6aXJjb24vc3lzY2FsbHMuaD4KIApJbmRleDogU291cmNlL1dURi93dGYv
Z2VuZXJpYy9NZW1vcnlGb290cHJpbnRHZW5lcmljLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V1RGL3d0Zi9nZW5lcmljL01lbW9yeUZvb3RwcmludEdlbmVyaWMuY3BwCShyZXZpc2lvbiAyMzcw
NzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL01lbW9yeUZvb3RwcmludEdlbmVyaWMuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgIk1lbW9yeUZvb3RwcmludC5oIgorI2luY2x1ZGUgPHd0Zi9NZW1vcnlG
b290cHJpbnQuaD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL2dl
bmVyaWMvTWVtb3J5UHJlc3N1cmVIYW5kbGVyR2VuZXJpYy5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dURi93dGYvZ2VuZXJpYy9NZW1vcnlQcmVzc3VyZUhhbmRsZXJHZW5lcmljLmNwcAkocmV2
aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvZ2VuZXJpYy9NZW1vcnlQcmVzc3VyZUhh
bmRsZXJHZW5lcmljLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAK
ICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNZW1vcnlQcmVzc3VyZUhhbmRsZXIuaCIK
KyNpbmNsdWRlIDx3dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmg+CiAKIG5hbWVzcGFjZSBXVEYg
ewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL1J1bkxvb3BHZW5lcmljLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL1J1bkxvb3BHZW5lcmljLmNwcAkocmV2
aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvZ2VuZXJpYy9SdW5Mb29wR2VuZXJpYy5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29u
ZmlnLmgiCi0jaW5jbHVkZSAiUnVuTG9vcC5oIgorI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CiAK
IG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9nZW5lcmljL1dvcmtRdWV1
ZUdlbmVyaWMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2dlbmVyaWMvV29ya1F1
ZXVlR2VuZXJpYy5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL2dlbmVy
aWMvV29ya1F1ZXVlR2VuZXJpYy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4LDcgKzI4LDcgQEAK
ICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya1F1ZXVlLmgiCisjaW5j
bHVkZSA8d3RmL1dvcmtRdWV1ZS5oPgogCiAjaW5jbHVkZSA8d3RmL1dhbGxUaW1lLmg+CiAjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9nbGliL0dM
aWJVdGlsaXRpZXMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2dsaWIvR0xpYlV0
aWxpdGllcy5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL2dsaWIvR0xp
YlV0aWxpdGllcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4LDcgKzE4LDcgQEAKICAqLwogCiAj
aW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiR0xpYlV0aWxpdGllcy5oIgorI2luY2x1ZGUg
PHd0Zi9nbGliL0dMaWJVdGlsaXRpZXMuaD4KIAogI2luY2x1ZGUgPGdsaWIuaD4KICNpbmNsdWRl
IDx3dGYvZ2xpYi9HVW5pcXVlUHRyLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9nbGliL0dSZWZQ
dHIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2dsaWIvR1JlZlB0ci5jcHAJKHJl
dmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL2dsaWIvR1JlZlB0ci5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTE3LDcgKzE3LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0j
aW5jbHVkZSAiR1JlZlB0ci5oIgorI2luY2x1ZGUgPHd0Zi9nbGliL0dSZWZQdHIuaD4KIAogI2lm
IFVTRShHTElCKQogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9nbGliL1J1bkxvb3BHTGliLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9nbGliL1J1bkxvb3BHTGliLmNwcAkocmV2aXNp
b24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvZ2xpYi9SdW5Mb29wR0xpYi5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0j
aW5jbHVkZSAiUnVuTG9vcC5oIgorI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CiAKICNpbmNsdWRl
IDxnbGliLmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KSW5kZXg6IFNvdXJjZS9XVEYv
d3RmL2lvcy9XZWJDb3JlVGhyZWFkLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9p
b3MvV2ViQ29yZVRocmVhZC5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3Rm
L2lvcy9XZWJDb3JlVGhyZWFkLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJXZWJDb3JlVGhyZWFkLmgiCisj
aW5jbHVkZSA8d3RmL2lvcy9XZWJDb3JlVGhyZWFkLmg+CiAKICNpZiBVU0UoV0VCX1RIUkVBRCkK
IFdURl9FWFBPUlRfUFJJVkFURSBib29sICgqV2ViQ29yZVdlYlRocmVhZElzTG9ja2VkT3JEaXNh
YmxlZCkodm9pZCk7CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9pb3MvV2ViQ29yZVRocmVhZC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhyZWFkLmgJKHJldmlzaW9u
IDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL2lvcy9XZWJDb3JlVGhyZWFkLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTIzLDEwICsyMyw3IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLS8vIFNpbmNlIHRo
aXMgaXMgYSBzaGFyZWQgaGVhZGVyLCB3aXRoIHRoZSBzYW1lIGZpbGUgbmFtZSBhcyBhIGZpbGUg
aW4KLS8vIFdlYkNvcmUgd2UgcHJlZml4IHRoaXMgd2l0aCBXVEYgdG8gbWFrZSBpdCB1bmlxdWUu
Ci0jaWZuZGVmIFdURl9XZWJDb3JlVGhyZWFkX2gKLSNkZWZpbmUgV1RGX1dlYkNvcmVUaHJlYWRf
aAorI3ByYWdtYSBvbmNlCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJDIiB7CkBAIC0z
OSw1ICszNiwzIEBAIGV4dGVybiB2b2lkICgqV2ViQ29yZVdlYlRocmVhZFJ1bikodm9pZCAKICNp
ZmRlZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCi0KLSNlbmRpZiAvLyBXVEZfV2ViQ29yZVRocmVh
ZF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9saW51eC9DdXJyZW50UHJvY2Vzc01lbW9yeVN0YXR1
cy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvbGludXgvQ3VycmVudFByb2Nlc3NN
ZW1vcnlTdGF0dXMuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9saW51
eC9DdXJyZW50UHJvY2Vzc01lbW9yeVN0YXR1cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcg
KzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQ3VycmVudFBy
b2Nlc3NNZW1vcnlTdGF0dXMuaCIKKyNpbmNsdWRlIDx3dGYvbGludXgvQ3VycmVudFByb2Nlc3NN
ZW1vcnlTdGF0dXMuaD4KIAogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9saW51eC9NZW1vcnlGb290cHJpbnRMaW51eC5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dURi93dGYvbGludXgvTWVtb3J5Rm9vdHByaW50TGludXguY3Bw
CShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9saW51eC9NZW1vcnlGb290cHJp
bnRMaW51eC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDEwICsyNCwxMCBAQAogICovCiAKICNp
bmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNZW1vcnlGb290cHJpbnQuaCIKKyNpbmNsdWRl
IDx3dGYvTWVtb3J5Rm9vdHByaW50Lmg+CiAKLSNpbmNsdWRlICJNb25vdG9uaWNUaW1lLmgiCiAj
aW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDx3dGYvTW9ub3RvbmljVGltZS5oPgogI2luY2x1
ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdWaWV3Lmg+
CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL2xpbnV4L01lbW9yeVByZXNzdXJlSGFuZGxlckxpbnV4
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9saW51eC9NZW1vcnlQcmVzc3VyZUhh
bmRsZXJMaW51eC5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL2xpbnV4
L01lbW9yeVByZXNzdXJlSGFuZGxlckxpbnV4LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsNyAr
MjYsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJNZW1vcnlQcmVz
c3VyZUhhbmRsZXIuaCIKKyNpbmNsdWRlIDx3dGYvTWVtb3J5UHJlc3N1cmVIYW5kbGVyLmg+CiAK
ICNpbmNsdWRlIDxtYWxsb2MuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4KSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL21hYy9BcHBLaXRDb21wYXRpYmlsaXR5RGVjbGFyYXRpb25zLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvbWFjL0FwcEtpdENvbXBhdGliaWxpdHlEZWNsYXJhdGlvbnMuaAko
cmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvbWFjL0FwcEtpdENvbXBhdGliaWxp
dHlEZWNsYXJhdGlvbnMuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQXBwS2l0Q29tcGF0
aWJpbGl0eURlY2xhcmF0aW9uc19oCi0jZGVmaW5lIEFwcEtpdENvbXBhdGliaWxpdHlEZWNsYXJh
dGlvbnNfaAorI3ByYWdtYSBvbmNlCiAKICNpbXBvcnQgPEF2YWlsYWJpbGl0eS5oPgogCkBAIC00
NSw1ICs0NCwzIEBAIHN0YXRpYyBjb25zdCBOU0xldmVsSW5kaWNhdG9yU3R5bGUgTlNMZXYKIHN0
YXRpYyBjb25zdCBOU0xldmVsSW5kaWNhdG9yU3R5bGUgTlNMZXZlbEluZGljYXRvclN0eWxlUmF0
aW5nID0gTlNSYXRpbmdMZXZlbEluZGljYXRvclN0eWxlOwogCiAjZW5kaWYgLy8gX19NQUNfT1Nf
WF9WRVJTSU9OX01BWF9BTExPV0VEIDwgMTAxMzAwCi0KLSNlbmRpZiAvLyBBcHBLaXRDb21wYXRp
YmlsaXR5RGVjbGFyYXRpb25zX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL21hYy9EZXByZWNhdGVk
U3ltYm9sc1VzZWRCeVNhZmFyaS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9tYWMv
RGVwcmVjYXRlZFN5bWJvbHNVc2VkQnlTYWZhcmkubW0JKHJldmlzaW9uIDIzNzA3MykKKysrIFNv
dXJjZS9XVEYvd3RmL21hYy9EZXByZWNhdGVkU3ltYm9sc1VzZWRCeVNhZmFyaS5tbQkod29ya2lu
ZyBjb3B5KQpAQCAtMjUsMTMgKzI1LDEzIEBACiAKICNpbmNsdWRlICJjb25maWcuaCIKIAotI2lu
Y2x1ZGUgIkhhc2hNYXAuaCIKLSNpbmNsdWRlICJIYXNoU2V0LmgiCi0jaW5jbHVkZSAiTG9jay5o
IgotI2luY2x1ZGUgIk1haW5UaHJlYWQuaCIKLSNpbmNsdWRlICJOZXZlckRlc3Ryb3llZC5oIgot
I2luY2x1ZGUgIlN0ZExpYkV4dHJhcy5oIgogI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUg
PHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KKyNpbmNsdWRlIDx3dGYv
TG9jay5oPgorI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CisjaW5jbHVkZSA8d3RmL05ldmVy
RGVzdHJveWVkLmg+CisjaW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgogCiAvLyBUaGlzIGZp
bGUgY29udGFpbnMgZGVwcmVjYXRlZCBzeW1ib2xzIHRoYXQgdGhlIGxhc3QgcmVsZWFzZWQgdmVy
c2lvbiBvZiBTYWZhcmkgdXNlcy4KIC8vIE9uY2UgU2FmYXJpIHN0b3BzIHVzaW5nIHRoZW0sIHdl
IHNob3VsZCByZW1vdmUgdGhlbS4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3BlcnNpc3RlbmNlL1Bl
cnNpc3RlbnRDb2RlcnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3BlcnNpc3Rl
bmNlL1BlcnNpc3RlbnRDb2RlcnMuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RG
L3d0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50Q29kZXJzLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJQZXJz
aXN0ZW50Q29kZXJzLmgiCisjaW5jbHVkZSA8d3RmL3BlcnNpc3RlbmNlL1BlcnNpc3RlbnRDb2Rl
cnMuaD4KIAogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvdGV4
dC9XVEZTdHJpbmcuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3Rl
bnREZWNvZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9wZXJzaXN0ZW5jZS9Q
ZXJzaXN0ZW50RGVjb2Rlci5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3Rm
L3BlcnNpc3RlbmNlL1BlcnNpc3RlbnREZWNvZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQs
NyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJQZXJzaXN0
ZW50RGVjb2Rlci5oIgorI2luY2x1ZGUgPHd0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RGVjb2Rl
ci5oPgogCiAjaW5jbHVkZSA8d3RmL3BlcnNpc3RlbmNlL1BlcnNpc3RlbnRFbmNvZGVyLmg+CiAK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL3BlcnNpc3RlbmNlL1BlcnNpc3RlbnRFbmNvZGVyLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RW5jb2Rl
ci5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3BlcnNpc3RlbmNlL1Bl
cnNpc3RlbnRFbmNvZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsOSArMjQsOSBAQAogICov
CiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJQZXJzaXN0ZW50RW5jb2Rlci5oIgor
I2luY2x1ZGUgPHd0Zi9wZXJzaXN0ZW5jZS9QZXJzaXN0ZW50RW5jb2Rlci5oPgogCi0jaW5jbHVk
ZSAiU0hBMS5oIgorI2luY2x1ZGUgPHd0Zi9TSEExLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogbmFt
ZXNwYWNlIFBlcnNpc3RlbmNlIHsKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3NwaS9jZi9DRkJ1bmRs
ZVNQSS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3NwaS9jZi9DRkJ1bmRsZVNQSS5o
CShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi9zcGkvY2YvQ0ZCdW5kbGVTUEku
aAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8K
IAotI2lmbmRlZiBDRkJ1bmRsZVNQSV9oCi0jZGVmaW5lIENGQnVuZGxlU1BJX2gKKyNwcmFnbWEg
b25jZQogCiAjaW5jbHVkZSA8Q29yZUZvdW5kYXRpb24vQ29yZUZvdW5kYXRpb24uaD4KIApAQCAt
NDYsNSArNDUsMyBAQCBCb29sZWFuIENGQnVuZGxlR2V0TG9jYWxpemF0aW9uSW5mb0ZvckxvCiBD
RlN0cmluZ1JlZiBDRkJ1bmRsZUNvcHlMb2NhbGl6YXRpb25Gb3JMb2NhbGl6YXRpb25JbmZvKFNJ
bnQzMiBsYW5ndWFnZUNvZGUsIFNJbnQzMiByZWdpb25Db2RlLCBTSW50MzIgc2NyaXB0Q29kZSwg
Q0ZTdHJpbmdFbmNvZGluZyBzdHJpbmdFbmNvZGluZyk7CiAKIFdURl9FWFRFUk5fQ19FTkQKLQot
I2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9zcGkvZGFyd2luL0NvbW1vbkNyeXB0b1NQSS5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3NwaS9kYXJ3aW4vQ29tbW9uQ3J5cHRvU1BJ
LmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3NwaS9kYXJ3aW4vQ29tbW9u
Q3J5cHRvU1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCiAgKi8KIAotI2lmbmRlZiBDb21tb25DcnlwdG9TUElfaAotI2RlZmluZSBDb21tb25Dcnlw
dG9TUElfaAorI3ByYWdtYSBvbmNlCiAKICNpZiBPUyhEQVJXSU4pCiAKQEAgLTQyLDUgKzQxLDMg
QEAgaW50IENDUmFuZG9tQ29weUJ5dGVzKENDUmFuZG9tUmVmIHJuZCwgdgogV1RGX0VYVEVSTl9D
X0VORAogCiAjZW5kaWYgLy8gT1MoREFSV0lOKQotCi0jZW5kaWYgLyogQ29tbW9uQ3J5cHRvU1BJ
X2ggKi8KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvQVNDSUlGYXN0UGF0aC5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvQVNDSUlGYXN0UGF0aC5oCShyZXZpc2lvbiAyMzcw
NzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0FTQ0lJRmFzdFBhdGguaAkod29ya2luZyBjb3B5
KQpAQCAtMTksOCArMTksNyBAQAogICoKICAqLwogCi0jaWZuZGVmIEFTQ0lJRmFzdFBhdGhfaAot
I2RlZmluZSBBU0NJSUZhc3RQYXRoX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8c3RkaW50
Lmg+CiAjaW5jbHVkZSA8dW5pY29kZS91dHlwZXMuaD4KQEAgLTE5NSw1ICsxOTQsMyBAQCBpbmxp
bmUgdm9pZCBjb3B5TENoYXJzRnJvbVVDaGFyU291cmNlKExDCiB9IC8vIG5hbWVzcGFjZSBXVEYK
IAogdXNpbmcgV1RGOjpjaGFyYWN0ZXJzQXJlQWxsQVNDSUk7Ci0KLSNlbmRpZiAvLyBBU0NJSUZh
c3RQYXRoX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvQVNDSUlMaXRlcmFsLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0FTQ0lJTGl0ZXJhbC5jcHAJKHJldmlzaW9u
IDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvQVNDSUlMaXRlcmFsLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNp
bmNsdWRlICJBU0NJSUxpdGVyYWwuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9BU0NJSUxpdGVyYWwu
aD4KIAogI2luY2x1ZGUgPHd0Zi9QcmludFN0cmVhbS5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi90ZXh0L0F0b21pY1N0cmluZy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4
dC9BdG9taWNTdHJpbmcuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90
ZXh0L0F0b21pY1N0cmluZy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIxLDEzICsyMSwxMyBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJBdG9taWNTdHJpbmcuaCIKKyNp
bmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KIAogI2luY2x1ZGUgPG11dGV4PgogI2lu
Y2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvSW50ZWdlclRvU3Ry
aW5nQ29udmVyc2lvbi5oPgogCi0jaW5jbHVkZSAiZHRvYS5oIgorI2luY2x1ZGUgPHd0Zi9kdG9h
Lmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21p
Y1N0cmluZy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWljU3RyaW5n
LmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWljU3RyaW5n
LmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDggKzE4LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBB
dG9taWNTdHJpbmdfaAotI2RlZmluZSBBdG9taWNTdHJpbmdfaAorI3ByYWdtYSBvbmNlCiAKICNp
bmNsdWRlIDx1dGlsaXR5PgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpAQCAtMzYz
LDUgKzM2MiwzIEBAIHVzaW5nIFdURjo6eG1sbnNBdG9tOwogI2VuZGlmCiAKICNpbmNsdWRlIDx3
dGYvdGV4dC9TdHJpbmdDb25jYXRlbmF0ZS5oPgotCi0jZW5kaWYgLy8gQXRvbWljU3RyaW5nX2gK
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWljU3RyaW5nSGFzaC5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWljU3RyaW5nSGFzaC5oCShyZXZpc2lvbiAyMzcw
NzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ0hhc2guaAkod29ya2luZyBj
b3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIEF0b21p
Y1N0cmluZ0hhc2hfaAotI2RlZmluZSBBdG9taWNTdHJpbmdIYXNoX2gKKyNwcmFnbWEgb25jZQog
CiAjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hU
cmFpdHMuaD4KQEAgLTY3LDUgKzY2LDMgQEAgbmFtZXNwYWNlIFdURiB7CiB9CiAKIHVzaW5nIFdU
Rjo6QXRvbWljU3RyaW5nSGFzaDsKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0
L0F0b21pY1N0cmluZ0ltcGwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQv
QXRvbWljU3RyaW5nSW1wbC5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3Rm
L3RleHQvQXRvbWljU3RyaW5nSW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIyLDIwICsyMiwy
MCBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJBdG9taWNTdHJpbmdJ
bXBsLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvQXRvbWljU3RyaW5nSW1wbC5oPgogCi0jaW5jbHVk
ZSAiQXRvbWljU3RyaW5nVGFibGUuaCIKLSNpbmNsdWRlICJDb21tYVByaW50ZXIuaCIKLSNpbmNs
dWRlICJEYXRhTG9nLmgiCi0jaW5jbHVkZSAiSGFzaFNldC5oIgotI2luY2x1ZGUgIkludGVnZXJU
b1N0cmluZ0NvbnZlcnNpb24uaCIKLSNpbmNsdWRlICJTdHJpbmdIYXNoLmgiCi0jaW5jbHVkZSAi
U3RyaW5nUHJpbnRTdHJlYW0uaCIKLSNpbmNsdWRlICJUaHJlYWRpbmcuaCIKKyNpbmNsdWRlIDx3
dGYvQ29tbWFQcmludGVyLmg+CisjaW5jbHVkZSA8d3RmL0RhdGFMb2cuaD4KKyNpbmNsdWRlIDx3
dGYvSGFzaFNldC5oPgorI2luY2x1ZGUgPHd0Zi9TdHJpbmdQcmludFN0cmVhbS5oPgorI2luY2x1
ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmdUYWJs
ZS5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L0ludGVnZXJUb1N0cmluZ0NvbnZlcnNpb24uaD4KKyNp
bmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CiAjaW5jbHVkZSA8d3RmL3VuaWNvZGUvVVRG
OC5oPgogCiAjaWYgVVNFKFdFQl9USFJFQUQpCi0jaW5jbHVkZSAiTG9jay5oIgorI2luY2x1ZGUg
PHd0Zi9Mb2NrLmg+CiAjZW5kaWYKIAogbmFtZXNwYWNlIFdURiB7CkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi90ZXh0L0F0b21pY1N0cmluZ0ltcGwuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0
Zi90ZXh0L0F0b21pY1N0cmluZ0ltcGwuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dU
Ri93dGYvdGV4dC9BdG9taWNTdHJpbmdJbXBsLmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDggKzE4
LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBBdG9taWNTdHJpbmdJbXBsX2gKLSNkZWZpbmUgQXRv
bWljU3RyaW5nSW1wbF9oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi90ZXh0L1VuaXF1
ZWRTdHJpbmdJbXBsLmg+CiAKQEAgLTEyMSw1ICsxMjAsMyBAQCBWYWx1ZUNoZWNrPGNvbnN0IEF0
b21pY1N0cmluZ0ltcGwqPiB7CiB9CiAKIHVzaW5nIFdURjo6QXRvbWljU3RyaW5nSW1wbDsKLQot
I2VuZGlmCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ1RhYmxlLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0F0b21pY1N0cmluZ1RhYmxlLmNwcAko
cmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvdGV4dC9BdG9taWNTdHJpbmdUYWJs
ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIxLDcgKzIxLDcgQEAKICAqLwogCiAjaW5jbHVkZSAi
Y29uZmlnLmgiCi0jaW5jbHVkZSAiQXRvbWljU3RyaW5nVGFibGUuaCIKKyNpbmNsdWRlIDx3dGYv
dGV4dC9BdG9taWNTdHJpbmdUYWJsZS5oPgogCiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNp
bmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9BdG9t
aWNTdHJpbmdUYWJsZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvQXRvbWlj
U3RyaW5nVGFibGUuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvdGV4dC9B
dG9taWNTdHJpbmdUYWJsZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw4ICsyMCw3IEBACiAgKgog
ICovCiAKLSNpZm5kZWYgV1RGX0F0b21pY1N0cmluZ1RhYmxlX2gKLSNkZWZpbmUgV1RGX0F0b21p
Y1N0cmluZ1RhYmxlX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4K
ICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdJbXBsLmg+CkBAIC00Myw1ICs0MiwzIEBAIHByaXZh
dGU6CiAKIH0KIHVzaW5nIFdURjo6QXRvbWljU3RyaW5nVGFibGU7Ci0KLSNlbmRpZgpJbmRleDog
U291cmNlL1dURi93dGYvdGV4dC9CYXNlNjQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL3RleHQvQmFzZTY0LmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYv
dGV4dC9CYXNlNjQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMiw3ICsyMiw3IEBACiAqLwogCiAj
aW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiQmFzZTY0LmgiCisjaW5jbHVkZSA8d3RmL3Rl
eHQvQmFzZTY0Lmg+CiAKICNpbmNsdWRlIDxsaW1pdHMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9X
VEZTdHJpbmcuaD4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvQ1N0cmluZy5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9DU3RyaW5nLmNwcAkocmV2aXNpb24gMjM3MDcz
KQorKysgU291cmNlL1dURi93dGYvdGV4dC9DU3RyaW5nLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjUsNyArMjUsNyBAQAogCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJDU3RyaW5n
LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogCiAjaW5jbHVkZSA8c3RyaW5nLmg+
CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaGVyLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0
Zi90ZXh0L0NTdHJpbmcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0NTdHJp
bmcuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvdGV4dC9DU3RyaW5nLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAot
I2lmbmRlZiBDU3RyaW5nX2gKLSNkZWZpbmUgQ1N0cmluZ19oCisjcHJhZ21hIG9uY2UKIAogI2lu
Y2x1ZGUgPHd0Zi9IYXNoRnVuY3Rpb25zLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hUcmFpdHMuaD4K
QEAgLTExMCw1ICsxMDksMyBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBIYXNoVHJhaXRzPENTdHJpbmc+
IDogCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpDU3RyaW5nOwotCi0jZW5kaWYg
Ly8gQ1N0cmluZ19oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L0NvbnZlcnNpb25Nb2RlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9Db252ZXJzaW9uTW9kZS5oCShyZXZp
c2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0NvbnZlcnNpb25Nb2RlLmgJKHdv
cmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgQ29udmVyc2lvbk1vZGVfaAotI2RlZmluZSBDb252ZXJzaW9uTW9kZV9oCisjcHJhZ21h
IG9uY2UKIAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTQwLDYgKzM5LDMgQEAgdXNpbmcgV1RGOjpD
b252ZXJzaW9uTW9kZTsKIHVzaW5nIFdURjo6TGVuaWVudENvbnZlcnNpb247CiB1c2luZyBXVEY6
OlN0cmljdENvbnZlcnNpb247CiB1c2luZyBXVEY6OlN0cmljdENvbnZlcnNpb25SZXBsYWNpbmdV
bnBhaXJlZFN1cnJvZ2F0ZXNXaXRoRkZGRDsKLQotI2VuZGlmIC8vIENvbnZlcnNpb25Nb2RlX2gK
LQpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9FeHRlcm5hbFN0cmluZ0ltcGwuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvRXh0ZXJuYWxTdHJpbmdJbXBsLmNwcAkocmV2
aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvdGV4dC9FeHRlcm5hbFN0cmluZ0ltcGwu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNv
bmZpZy5oIgotI2luY2x1ZGUgIkV4dGVybmFsU3RyaW5nSW1wbC5oIgorI2luY2x1ZGUgPHd0Zi90
ZXh0L0V4dGVybmFsU3RyaW5nSW1wbC5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291
cmNlL1dURi93dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmgJKHJldmlz
aW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvSW50ZWdlclRvU3RyaW5nQ29udmVy
c2lvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOSw4ICsxOSw3IEBACiAgKgogICovCiAKLSNpZm5k
ZWYgSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbl9oCi0jZGVmaW5lIEludGVnZXJUb1N0cmluZ0Nv
bnZlcnNpb25faAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvdGV4dC9MQ2hhci5oPgog
CkBAIC0xMjYsNSArMTI1LDMgQEAgaW5saW5lIHVuc2lnbmVkIGxlbmd0aE9mTnVtYmVyQXNTdHJp
bmdVbgogfQogCiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIEludGVnZXJUb1N0cmlu
Z0NvbnZlcnNpb25faApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9MQ2hhci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvTENoYXIuaAkocmV2aXNpb24gMjM3MDczKQorKysg
U291cmNlL1dURi93dGYvdGV4dC9MQ2hhci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMiArMjQs
OSBAQAogICoKICAqLwogCi0jaWZuZGVmIExDaGFyX2gKLSNkZWZpbmUgTENoYXJfaAorI3ByYWdt
YSBvbmNlCiAKIC8vIEEgdHlwZSB0byBob2xkIGEgc2luZ2xlIExhdGluLTEgY2hhcmFjdGVyLgog
Ly8gVGhpcyB0eXBlIGNvbXBsZW1lbnRzIHRoZSBVQ2hhciB0eXBlIHRoYXQgd2UgZ2V0IGZyb20g
dGhlIElDVSBsaWJyYXJ5LgogLy8gVG8gcGFyYWxsZWwgdGhhdCB0eXBlLCB3ZSBwdXQgdGhpcyBv
bmUgaW4gdGhlIGdsb2JhbCBuYW1lc3BhY2UuCiB0eXBlZGVmIHVuc2lnbmVkIGNoYXIgTENoYXI7
Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9MaW5lRW5kaW5nLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L0xpbmVFbmRpbmcuY3BwCShyZXZpc2lvbiAy
MzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L0xpbmVFbmRpbmcuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0zMCw3ICszMCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIkxpbmVFbmRpbmcuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9MaW5lRW5kaW5nLmg+CiAKICNp
bmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5n
QnVmZmVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWZmZXIu
aAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWZmZXIu
aAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0j
aWZuZGVmIFN0cmluZ0J1ZmZlcl9oCi0jZGVmaW5lIFN0cmluZ0J1ZmZlcl9oCisjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgPGxpbWl0cz4KICNpbmNsdWRlIDx1bmljb2RlL3V0eXBlcy5oPgpAQCAt
ODcsNSArODYsMyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdURjo6
U3RyaW5nQnVmZmVyOwotCi0jZW5kaWYgLy8gU3RyaW5nQnVmZmVyX2gKSW5kZXg6IFNvdXJjZS9X
VEYvd3RmL3RleHQvU3RyaW5nQnVpbGRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dU
Ri93dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjUsMTIgKzI1
LDEyIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlN0cmluZ0J1aWxk
ZXIuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKLSNpbmNsdWRlICJJ
bnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmgiCi0jaW5jbHVkZSAiTWF0aEV4dHJhcy5oIgotI2lu
Y2x1ZGUgIldURlN0cmluZy5oIgogI2luY2x1ZGUgPHd0Zi9kdG9hLmg+CisjaW5jbHVkZSA8d3Rm
L01hdGhFeHRyYXMuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKyNpbmNsdWRl
IDx3dGYvdGV4dC9JbnRlZ2VyVG9TdHJpbmdDb252ZXJzaW9uLmg+CiAKIG5hbWVzcGFjZSBXVEYg
ewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaAkocmV2aXNpb24gMjM3MDcz
KQorKysgU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmgJKHdvcmtpbmcgY29weSkK
QEAgLTI0LDggKzI0LDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNpZm5kZWYgU3RyaW5n
QnVpbGRlcl9oCi0jZGVmaW5lIFN0cmluZ0J1aWxkZXJfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNs
dWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9JbnRlZ2Vy
VG9TdHJpbmdDb252ZXJzaW9uLmg+CkBAIC0zNzgsNSArMzc3LDMgQEAgdGVtcGxhdGU8PiBzdHJ1
Y3QgSW50ZWdlclRvU3RyaW5nQ29udmVycwogfSAvLyBuYW1lc3BhY2UgV1RGCiAKIHVzaW5nIFdU
Rjo6U3RyaW5nQnVpbGRlcjsKLQotI2VuZGlmIC8vIFN0cmluZ0J1aWxkZXJfaApJbmRleDogU291
cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVySlNPTi5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dURi93dGYvdGV4dC9TdHJpbmdCdWlsZGVySlNPTi5jcHAJKHJldmlzaW9uIDIzNzA3MykK
KysrIFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQnVpbGRlckpTT04uY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xMCw5ICsxMCw5IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1
ZGUgIlN0cmluZ0J1aWxkZXIuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+
CiAKLSNpbmNsdWRlICJXVEZTdHJpbmcuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcu
aD4KIAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5n
Q29tbW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdDb21tb24u
aAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdDb21tb24u
aAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgU3RyaW5nQ29tbW9uX2gKLSNkZWZpbmUgU3Ry
aW5nQ29tbW9uX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1
ZGUgPHVuaWNvZGUvdWNoYXIuaD4KQEAgLTY1OSw1ICs2NTgsMyBAQCB0ZW1wbGF0ZTx1bnNpZ25l
ZCBsb3dlcmNhc2VMZXR0ZXJzTGVuZ3RoCiAKIHVzaW5nIFdURjo6ZXF1YWxJZ25vcmluZ0FTQ0lJ
Q2FzZTsKIHVzaW5nIFdURjo6ZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2U7Ci0KLSNlbmRp
ZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdDb25jYXRlbmF0ZS5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nQ29uY2F0ZW5hdGUuaAkocmV2aXNpb24g
MjM3MDczKQorKysgU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdDb25jYXRlbmF0ZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yMywxOSArMjMsMTIgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAogICovCiAKLSNp
Zm5kZWYgU3RyaW5nQ29uY2F0ZW5hdGVfaAotI2RlZmluZSBTdHJpbmdDb25jYXRlbmF0ZV9oCisj
cHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi9DaGVja2Vk
QXJpdGhtZXRpYy5oPgotCi0jaWZuZGVmIEF0b21pY1N0cmluZ19oCiAjaW5jbHVkZSA8d3RmL3Rl
eHQvQXRvbWljU3RyaW5nLmg+Ci0jZW5kaWYKLQotI2lmbmRlZiBTdHJpbmdWaWV3X2gKICNpbmNs
dWRlIDx3dGYvdGV4dC9TdHJpbmdWaWV3Lmg+Ci0jZW5kaWYKIAogLy8gVGhpcyBtYWNybyBpcyBo
ZWxwZnVsIGZvciB0ZXN0aW5nIGhvdyBtYW55IGludGVybWVkaWF0ZSBTdHJpbmdzIGFyZSBjcmVh
dGVkIHdoaWxlIGV2YWx1YXRpbmcgYW4KIC8vIGV4cHJlc3Npb24gY29udGFpbmluZyBvcGVyYXRv
cisuCkBAIC0zNDMsNCArMzM2LDMgQEAgdXNpbmcgV1RGOjptYWtlU3RyaW5nOwogdXNpbmcgV1RG
Ojp0cnlNYWtlU3RyaW5nOwogCiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nT3BlcmF0b3JzLmg+
Ci0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSGFzaC5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSGFzaC5oCShyZXZpc2lvbiAyMzcwNzMp
CisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0hhc2guaAkod29ya2luZyBjb3B5KQpAQCAt
MTksOCArMTksNyBAQAogICoKICAqLwogCi0jaWZuZGVmIFN0cmluZ0hhc2hfaAotI2RlZmluZSBT
dHJpbmdIYXNoX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3RmL0hhc2hUcmFpdHMuaD4K
ICNpbmNsdWRlIDx3dGYvdGV4dC9BdG9taWNTdHJpbmcuaD4KQEAgLTIwMCw1ICsxOTksMyBAQCB1
c2luZyBXVEY6OkFTQ0lJQ2FzZUluc2Vuc2l0aXZlSGFzaDsKIHVzaW5nIFdURjo6QVNDSUlDYXNl
SW5zZW5zaXRpdmVTdHJpbmdWaWV3SGFzaFRyYW5zbGF0b3I7CiB1c2luZyBXVEY6OkFscmVhZHlI
YXNoZWQ7CiB1c2luZyBXVEY6OlN0cmluZ0hhc2g7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dU
Ri93dGYvdGV4dC9TdHJpbmdJbXBsLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90
ZXh0L1N0cmluZ0ltcGwuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90
ZXh0L1N0cmluZ0ltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMywxNSArMjMsMTUgQEAKICAq
LwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiU3RyaW5nSW1wbC5oIgorI2luY2x1
ZGUgPHd0Zi90ZXh0L1N0cmluZ0ltcGwuaD4KIAotI2luY2x1ZGUgIkF0b21pY1N0cmluZy5oIgot
I2luY2x1ZGUgIkV4dGVybmFsU3RyaW5nSW1wbC5oIgotI2luY2x1ZGUgIlN0cmluZ0J1ZmZlci5o
IgotI2luY2x1ZGUgIlN0cmluZ0hhc2guaCIKICNpbmNsdWRlIDx3dGYvUHJvY2Vzc0lELmg+CiAj
aW5jbHVkZSA8d3RmL1N0ZExpYkV4dHJhcy5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L0F0b21pY1N0
cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KKyNpbmNsdWRlIDx3dGYvdGV4
dC9FeHRlcm5hbFN0cmluZ0ltcGwuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWZmZXIu
aD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQv
U3RyaW5nVmlldy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N5bWJvbEltcGwuaD4KICNpbmNsdWRl
IDx3dGYvdGV4dC9TeW1ib2xSZWdpc3RyeS5oPgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9T
dHJpbmdJbXBsLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBs
LmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMCw4ICsyMCw3IEBACiAgKgogICovCiAKLSNpZm5kZWYgU3Ry
aW5nSW1wbF9oCi0jZGVmaW5lIFN0cmluZ0ltcGxfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRl
IDxsaW1pdHMuaD4KICNpbmNsdWRlIDx1bmljb2RlL3VzdHJpbmcuaD4KQEAgLTEyMTcsNSArMTIx
NiwzIEBAIHRlbXBsYXRlPHVuc2lnbmVkIGxlbmd0aD4gaW5saW5lIGJvb2wgZXEKIHVzaW5nIFdU
Rjo6U3RhdGljU3RyaW5nSW1wbDsKIHVzaW5nIFdURjo6U3RyaW5nSW1wbDsKIHVzaW5nIFdURjo6
ZXF1YWw7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdPcGVyYXRv
cnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ09wZXJhdG9ycy5o
CShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ09wZXJhdG9y
cy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOSw4ICsxOSw3IEBACiAgKgogICovCiAKLSNpZm5kZWYg
U3RyaW5nT3BlcmF0b3JzX2gKLSNkZWZpbmUgU3RyaW5nT3BlcmF0b3JzX2gKKyNwcmFnbWEgb25j
ZQogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtMTY0LDUgKzE2MywzIEBAIFN0cmluZ0FwcGVuZDxT
dHJpbmdBcHBlbmQ8VSwgVj4sIFc+IG9wZXIKIH0KIAogfSAvLyBuYW1lc3BhY2UgV1RGCi0KLSNl
bmRpZiAvLyBTdHJpbmdPcGVyYXRvcnNfaApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9TdHJp
bmdWaWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ1ZpZXcu
Y3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ1ZpZXcu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw3ICsyNSw3IEBAIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQkkKICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRl
ICJTdHJpbmdWaWV3LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nVmlldy5oPgogCiAjaW5j
bHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8dW5pY29kZS91YnJrLmg+CkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi90ZXh0L1N0cmluZ1ZpZXcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0
L1N0cmluZ1ZpZXcuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvdGV4dC9T
dHJpbmdWaWV3LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFN0cmluZ1ZpZXdfaAotI2Rl
ZmluZSBTdHJpbmdWaWV3X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8bGltaXRzLmg+CiAj
aW5jbHVkZSA8dW5pY29kZS91dHlwZXMuaD4KQEAgLTEwMDAsNSArOTk5LDMgQEAgdGVtcGxhdGU8
dW5zaWduZWQgbGVuZ3RoPiBpbmxpbmUgYm9vbCBlcQogdXNpbmcgV1RGOjphcHBlbmQ7CiB1c2lu
ZyBXVEY6OmVxdWFsOwogdXNpbmcgV1RGOjpTdHJpbmdWaWV3OwotCi0jZW5kaWYKSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL3RleHQvU3ltYm9sSW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvdGV4dC9TeW1ib2xJbXBsLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dU
Ri93dGYvdGV4dC9TeW1ib2xJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBA
QAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJTeW1ib2xJbXBsLmgiCisj
aW5jbHVkZSA8d3RmL3RleHQvU3ltYm9sSW1wbC5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRl
eDogU291cmNlL1dURi93dGYvdGV4dC9TeW1ib2xSZWdpc3RyeS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvdGV4dC9TeW1ib2xSZWdpc3RyeS5jcHAJKHJldmlzaW9uIDIzNzA3MykK
KysrIFNvdXJjZS9XVEYvd3RmL3RleHQvU3ltYm9sUmVnaXN0cnkuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUg
IlN5bWJvbFJlZ2lzdHJ5LmgiCisjaW5jbHVkZSA8d3RmL3RleHQvU3ltYm9sUmVnaXN0cnkuaD4K
IAogbmFtZXNwYWNlIFdURiB7CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3ltYm9sUmVn
aXN0cnkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N5bWJvbFJlZ2lzdHJ5
LmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvU3ltYm9sUmVnaXN0
cnkuaAkod29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgV1RGX1N5bWJvbFJlZ2lzdHJ5X2gKLSNk
ZWZpbmUgV1RGX1N5bWJvbFJlZ2lzdHJ5X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8d3Rm
L0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+CkBAIC0xMDgsNSAr
MTA3LDMgQEAgaW5saW5lIFN5bWJvbFJlZ2lzdHJ5S2V5OjpTeW1ib2xSZWdpc3RyeQogfQogCiB9
Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvci5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvci5j
cHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dEJyZWFrSXRl
cmF0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMCwxMiArMjAsMTIgQEAKICAqLwogCiAjaW5j
bHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVGV4dEJyZWFrSXRlcmF0b3IuaCIKKyNpbmNsdWRl
IDx3dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvci5oPgogCi0jaW5jbHVkZSAiTGluZUJyZWFrSXRl
cmF0b3JQb29sSUNVLmgiCi0jaW5jbHVkZSAiVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVS5o
IgotI2luY2x1ZGUgIlVUZXh0UHJvdmlkZXJMYXRpbjEuaCIKLSNpbmNsdWRlICJVVGV4dFByb3Zp
ZGVyVVRGMTYuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9MaW5lQnJlYWtJdGVyYXRvclBvb2xJQ1Uu
aD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVLmg+Cisj
aW5jbHVkZSA8d3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJMYXRpbjEuaD4KKyNpbmNsdWRlIDx3
dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2Lmg+CiAjaW5jbHVkZSA8YXRvbWljPgogI2lu
Y2x1ZGUgPG11dGV4PgogI2luY2x1ZGUgPHVuaWNvZGUvdWJyay5oPgpJbmRleDogU291cmNlL1dU
Ri93dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYv
d3RmL3RleHQvVGV4dEJyZWFrSXRlcmF0b3IuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNl
L1dURi93dGYvdGV4dC9UZXh0QnJlYWtJdGVyYXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw5
ICsyMSw5IEBACiAKICNwcmFnbWEgb25jZQogCi0jaW5jbHVkZSAiU3RyaW5nVmlldy5oIgogI2lu
Y2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogI2luY2x1ZGUgPHd0Zi9WYXJpYW50Lmg+Cisj
aW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nVmlldy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L2ljdS9U
ZXh0QnJlYWtJdGVyYXRvcklDVS5oPgogCiAjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShJ
T1MpCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJ
Q1UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9y
SW50ZXJuYWxJQ1UuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvdGV4dC9U
ZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVLmgJKHdvcmtpbmcgY29weSkKQEAgLTE4LDggKzE4
LDcgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBUZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVX2gK
LSNkZWZpbmUgVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVV9oCisjcHJhZ21hIG9uY2UKIAog
Ly8gRklYTUU6IE5vdyB0aGF0IHRoaXMgaGFuZGxlcyBsb2NhbGVzIGZvciBJQ1UsIG5vdCBqdXN0
IGZvciB0ZXh0IGJyZWFraW5nLAogLy8gdGhpcyBmaWxlIGFuZCB0aGUgdmFyaW91cyBpbXBsZW1l
bnRhdGlvbiBmaWxlcyBzaG91bGQgYmUgcmVuYW1lZC4KQEAgLTMzLDUgKzMyLDMgQEAgV1RGX0VY
UE9SVF9QUklWQVRFIGNvbnN0IGNoYXIqIGN1cnJlbnRUZQogCiB1c2luZyBXVEY6OmN1cnJlbnRT
ZWFyY2hMb2NhbGVJRDsKIHVzaW5nIFdURjo6Y3VycmVudFRleHRCcmVha0xvY2FsZUlEOwotCi0j
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dFBvc2l0aW9uLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9UZXh0UG9zaXRpb24uaAkocmV2aXNpb24gMjM3MDcz
KQorKysgU291cmNlL1dURi93dGYvdGV4dC9UZXh0UG9zaXRpb24uaAkod29ya2luZyBjb3B5KQpA
QCAtMjQsNyArMjQsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1ZGUgIk9yZGluYWxOdW1i
ZXIuaCIKKyNpbmNsdWRlIDx3dGYvdGV4dC9PcmRpbmFsTnVtYmVyLmg+CiAKIG5hbWVzcGFjZSBX
VEYgewogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1RleHRTdHJlYW0uY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dFN0cmVhbS5jcHAJKHJldmlzaW9uIDIzNzA3
MykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvVGV4dFN0cmVhbS5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAi
VGV4dFN0cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRTdHJlYW0uaD4KIAogI2luY2x1
ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+Cklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1VuaXF1ZWRTdHJpbmdJbXBsLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvdGV4dC9VbmlxdWVkU3RyaW5nSW1wbC5oCShyZXZpc2lvbiAyMzcw
NzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L1VuaXF1ZWRTdHJpbmdJbXBsLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi0jaWZuZGVmIFVuaXF1ZWRTdHJpbmdJbXBsX2gKLSNkZWZpbmUgVW5pcXVlZFN0
cmluZ0ltcGxfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdJbXBs
Lmg+CiAKQEAgLTYxLDUgKzYwLDMgQEAgVmFsdWVDaGVjazxjb25zdCBVbmlxdWVkU3RyaW5nSW1w
bCo+IHsKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OlVuaXF1ZWRTdHJpbmdJbXBs
OwotCi0jZW5kaWYgLy8gVW5pcXVlZFN0cmluZ0ltcGxfaApJbmRleDogU291cmNlL1dURi93dGYv
dGV4dC9XVEZTdHJpbmcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvV1RG
U3RyaW5nLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvdGV4dC9XVEZT
dHJpbmcuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw5ICsyMCw4IEBACiAgKi8KIAogI2luY2x1
ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIldURlN0cmluZy5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0
L1dURlN0cmluZy5oPgogCi0jaW5jbHVkZSAiSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbi5oIgog
I2luY2x1ZGUgPHN0ZGFyZy5oPgogI2luY2x1ZGUgPHd0Zi9BU0NJSUNUeXBlLmg+CiAjaW5jbHVk
ZSA8d3RmL0RhdGFMb2cuaD4KQEAgLTMyLDYgKzMxLDcgQEAKICNpbmNsdWRlIDx3dGYvVmVjdG9y
Lmg+CiAjaW5jbHVkZSA8d3RmL2R0b2EuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+
CisjaW5jbHVkZSA8d3RmL3RleHQvSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbi5oPgogI2luY2x1
ZGUgPHd0Zi90ZXh0L1N0cmluZ1RvSW50ZWdlckNvbnZlcnNpb24uaD4KICNpbmNsdWRlIDx3dGYv
dW5pY29kZS9DaGFyYWN0ZXJOYW1lcy5oPgogI2luY2x1ZGUgPHd0Zi91bmljb2RlL1VURjguaD4K
SW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNl
L1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaAkod29ya2luZyBjb3B5KQpAQCAtMTksOCArMTksNyBA
QAogICoKICAqLwogCi0jaWZuZGVmIFdURlN0cmluZ19oCi0jZGVmaW5lIFdURlN0cmluZ19oCisj
cHJhZ21hIG9uY2UKIAogLy8gVGhpcyBmaWxlIHdvdWxkIGJlIGNhbGxlZCBTdHJpbmcuaCwgYnV0
IHRoYXQgY29uZmxpY3RzIHdpdGggPHN0cmluZy5oPgogLy8gb24gc3lzdGVtcyB3aXRob3V0IGNh
c2Utc2Vuc2l0aXZlIGZpbGUgc3lzdGVtcy4KQEAgLTY1Nyw1ICs2NTYsMyBAQCB1c2luZyBXVEY6
OmlzU3BhY2VPck5ld2xpbmU7CiB1c2luZyBXVEY6OnJldmVyc2VGaW5kOwogCiAjaW5jbHVkZSA8
d3RmL3RleHQvQXRvbWljU3RyaW5nLmg+Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dURi93dGYv
dGV4dC9jb2NvYS9TdHJpbmdDb2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90
ZXh0L2NvY29hL1N0cmluZ0NvY29hLm1tCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RG
L3d0Zi90ZXh0L2NvY29hL1N0cmluZ0NvY29hLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xOSw3ICsx
OSw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIldURlN0cmluZy5o
IgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiAjaW5jbHVkZSA8Q29yZUZvdW5k
YXRpb24vQ0ZTdHJpbmcuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9jb2NvYS9TdHJp
bmdWaWV3Q29jb2EubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9jb2NvYS9T
dHJpbmdWaWV3Q29jb2EubW0JKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3Rl
eHQvY29jb2EvU3RyaW5nVmlld0NvY29hLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw5ICsyNCw5
IEBACiAgKi8KIAogI2ltcG9ydCAiY29uZmlnLmgiCi0jaW1wb3J0ICJTdHJpbmdWaWV3LmgiCisj
aW1wb3J0IDx3dGYvdGV4dC9TdHJpbmdWaWV3Lmg+CiAKLSNpbXBvcnQgIlJldGFpblB0ci5oIgor
I2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291
cmNlL1dURi93dGYvdGV4dC9jb2NvYS9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVQ29jb2Eu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvY29jb2EvVGV4dEJyZWFrSXRl
cmF0b3JJbnRlcm5hbElDVUNvY29hLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dU
Ri93dGYvdGV4dC9jb2NvYS9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVQ29jb2EuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0xOSwxMCArMTksMTAgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElDVS5oIgorI2luY2x1ZGUg
PHd0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1UuaD4KIAotI2luY2x1ZGUgIlRl
eHRCcmVha0l0ZXJhdG9yLmgiCiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgorI2luY2x1ZGUg
PHd0Zi90ZXh0L1RleHRCcmVha0l0ZXJhdG9yLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmNwcAkocmV2aXNpb24gMjM3
MDczKQorKysgU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0j
aW5jbHVkZSAiVVRleHRQcm92aWRlci5oIgorI2luY2x1ZGUgPHd0Zi90ZXh0L2ljdS9VVGV4dFBy
b3ZpZGVyLmg+CiAKICNpbmNsdWRlIDxhbGdvcml0aG0+CiAjaW5jbHVkZSA8c3RyaW5nLmg+Cklu
ZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlci5oCShyZXZpc2lvbiAyMzcw
NzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KICAqLwogCi0jaWZuZGVmIFVUZXh0UHJvdmlkZXJfaAotI2RlZmluZSBVVGV4dFByb3ZpZGVy
X2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8dW5pY29kZS91dGV4dC5oPgogCkBAIC0xMDcs
NSArMTA2LDMgQEAgaW5saW5lIGJvb2wgdVRleHRBY2Nlc3NJbkNodW5rT3JPdXRPZlJhbgogfQog
CiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFVUZXh0UHJvdmlkZXJfaApJbmRleDog
U291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlckxhdGluMS5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlckxhdGluMS5jcHAJKHJl
dmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJM
YXRpbjEuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMCArMjQsMTAgQEAKICAqLwogCiAjaW5j
bHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVVRleHRQcm92aWRlckxhdGluMS5oIgorI2luY2x1
ZGUgPHd0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyTGF0aW4xLmg+CiAKLSNpbmNsdWRlICJVVGV4
dFByb3ZpZGVyLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSW1wbC5oPgorI2luY2x1ZGUg
PHd0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyTGF0aW4xLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlckxhdGluMS5oCShyZXZp
c2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyTGF0
aW4xLmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDggKzIzLDcgQEAKICAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVmIFVUZXh0UHJvdmlkZXJMYXRpbjFfaAot
I2RlZmluZSBVVGV4dFByb3ZpZGVyTGF0aW4xX2gKKyNwcmFnbWEgb25jZQogCiAjaW5jbHVkZSA8
dW5pY29kZS91dGV4dC5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0xDaGFyLmg+CkBAIC00Miw1ICs0
MSwzIEBAIFdURl9FWFBPUlQgVVRleHQqIG9wZW5MYXRpbjFVVGV4dFByb3ZpZGUKIFVUZXh0KiBv
cGVuTGF0aW4xQ29udGV4dEF3YXJlVVRleHRQcm92aWRlcihVVGV4dFdpdGhCdWZmZXIqIHV0V2l0
aEJ1ZmZlciwgY29uc3QgTENoYXIqIHN0cmluZywgdW5zaWduZWQgbGVuZ3RoLCBjb25zdCBVQ2hh
ciogcHJpb3JDb250ZXh0LCBpbnQgcHJpb3JDb250ZXh0TGVuZ3RoLCBVRXJyb3JDb2RlKiBzdGF0
dXMpOwogCiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIFVUZXh0UHJvdmlkZXJMYXRp
bjFfaApJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4dFByb3ZpZGVyVVRG
MTYuY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L2ljdS9VVGV4
dFByb3ZpZGVyVVRGMTYuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMCArMjQsMTAgQEAKICAq
LwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiVVRleHRQcm92aWRlclVURjE2Lmgi
CisjaW5jbHVkZSA8d3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJVVEYxNi5oPgogCi0jaW5jbHVk
ZSAiVVRleHRQcm92aWRlci5oIgogI2luY2x1ZGUgPGFsZ29yaXRobT4KKyNpbmNsdWRlIDx3dGYv
dGV4dC9pY3UvVVRleHRQcm92aWRlci5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291
cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2LmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvdGV4dC9pY3UvVVRleHRQcm92aWRlclVURjE2LmgJKHJldmlzaW9uIDIz
NzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvaWN1L1VUZXh0UHJvdmlkZXJVVEYxNi5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBVVGV4dFByb3ZpZGVyVVRGMTZfaAotI2RlZmluZSBV
VGV4dFByb3ZpZGVyVVRGMTZfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx1bmljb2RlL3V0
ZXh0Lmg+CiAKQEAgLTMzLDUgKzMyLDMgQEAgbmFtZXNwYWNlIFdURiB7CiBVVGV4dCogb3BlblVU
RjE2Q29udGV4dEF3YXJlVVRleHRQcm92aWRlcihVVGV4dCosIGNvbnN0IFVDaGFyKiwgdW5zaWdu
ZWQgbGVuZ3RoLCBjb25zdCBVQ2hhciogcHJpb3JDb250ZXh0LCBpbnQgcHJpb3JDb250ZXh0TGVu
Z3RoLCBVRXJyb3JDb2RlKik7CiAKIH0gLy8gbmFtZXNwYWNlIFdURgotCi0jZW5kaWYgLy8gVVRl
eHRQcm92aWRlclVURjE2X2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvdW5peC9UZXh0QnJl
YWtJdGVyYXRvckludGVybmFsSUNVVW5peC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93
dGYvdGV4dC91bml4L1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VVbml4LmNwcAkocmV2aXNp
b24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvdGV4dC91bml4L1RleHRCcmVha0l0ZXJhdG9y
SW50ZXJuYWxJQ1VVbml4LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTgsNyArMTgsNyBAQAogICov
CiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUZXh0QnJlYWtJdGVyYXRvckludGVy
bmFsSUNVLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dEJyZWFrSXRlcmF0b3JJbnRlcm5hbElD
VS5oPgogCiAjaW5jbHVkZSA8bG9jYWxlLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQv
d2luL1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VXaW4uY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XVEYvd3RmL3RleHQvd2luL1RleHRCcmVha0l0ZXJhdG9ySW50ZXJuYWxJQ1VXaW4uY3Bw
CShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0L3dpbi9UZXh0QnJlYWtJ
dGVyYXRvckludGVybmFsSUNVV2luLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTksNyArMTksNyBA
QAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJUZXh0QnJlYWtJdGVyYXRv
ckludGVybmFsSUNVLmgiCisjaW5jbHVkZSA8d3RmL3RleHQvVGV4dEJyZWFrSXRlcmF0b3JJbnRl
cm5hbElDVS5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGhy
ZWFkcy9CaW5hcnlTZW1hcGhvcmUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3Ro
cmVhZHMvQmluYXJ5U2VtYXBob3JlLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dU
Ri93dGYvdGhyZWFkcy9CaW5hcnlTZW1hcGhvcmUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3
ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkJpbmFyeVNl
bWFwaG9yZS5oIgorI2luY2x1ZGUgPHd0Zi90aHJlYWRzL0JpbmFyeVNlbWFwaG9yZS5oPgogCiBu
YW1lc3BhY2UgV1RGIHsKIApJbmRleDogU291cmNlL1dURi93dGYvdGhyZWFkcy9CaW5hcnlTZW1h
cGhvcmUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90aHJlYWRzL0JpbmFyeVNlbWFw
aG9yZS5oCShyZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi90aHJlYWRzL0JpbmFy
eVNlbWFwaG9yZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3IEBACiAgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBCaW5hcnlTZW1hcGhvcmVf
aAotI2RlZmluZSBCaW5hcnlTZW1hcGhvcmVfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3
dGYvQ29uZGl0aW9uLmg+CiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KQEAgLTYxLDUgKzYwLDMgQEAg
cHJpdmF0ZToKIH0gLy8gbmFtZXNwYWNlIFdURgogCiB1c2luZyBXVEY6OkJpbmFyeVNlbWFwaG9y
ZTsKLQotI2VuZGlmIC8vIEJpbmFyeVNlbWFwaG9yZV9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90
aHJlYWRzL1NpZ25hbHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RocmVhZHMv
U2lnbmFscy5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3RocmVhZHMv
U2lnbmFscy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5j
bHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiU2lnbmFscy5oIgorI2luY2x1ZGUgPHd0Zi90aHJl
YWRzL1NpZ25hbHMuaD4KIAogI2lmIFVTRShQVEhSRUFEUykgJiYgSEFWRShNQUNISU5FX0NPTlRF
WFQpCiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ2hhcmFjdGVyTmFtZXMuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi91bmljb2RlL0NoYXJhY3Rlck5hbWVzLmgJKHJldmlz
aW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ2hhcmFjdGVyTmFtZXMuaAko
d29ya2luZyBjb3B5KQpAQCAtMjMsOCArMjMsNyBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0j
aWZuZGVmIENoYXJhY3Rlck5hbWVzX2gKLSNkZWZpbmUgQ2hhcmFjdGVyTmFtZXNfaAorI3ByYWdt
YSBvbmNlCiAKICNpbmNsdWRlIDx1bmljb2RlL3V0eXBlcy5oPgogCkBAIC0xNjcsNSArMTY2LDMg
QEAgdXNpbmcgV1RGOjpVbmljb2RlOjp6ZXJvV2lkdGhKb2luZXI7CiB1c2luZyBXVEY6OlVuaWNv
ZGU6Onplcm9XaWR0aE5vQnJlYWtTcGFjZTsKIHVzaW5nIFdURjo6VW5pY29kZTo6emVyb1dpZHRo
Tm9uSm9pbmVyOwogdXNpbmcgV1RGOjpVbmljb2RlOjp6ZXJvV2lkdGhTcGFjZTsKLQotI2VuZGlm
IC8vIENoYXJhY3Rlck5hbWVzX2gKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ29sbGF0
b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi91bmljb2RlL0NvbGxhdG9yLmgJKHJl
dmlzaW9uIDIzNzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ29sbGF0b3IuaAkod29y
a2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaWZuZGVm
IFdURl9Db2xsYXRvcl9oCi0jZGVmaW5lIFdURl9Db2xsYXRvcl9oCisjcHJhZ21hIG9uY2UKIAog
I2luY2x1ZGUgPHVuaWNvZGUvdWNvbmZpZy5oPgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5o
PgpAQCAtNzUsNSArNzQsMyBAQCBXVEZfRVhQT1JUX1BSSVZBVEUgVUNoYXJJdGVyYXRvciBjcmVh
dGVJCiB9CiAKIHVzaW5nIFdURjo6Q29sbGF0b3I7Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dU
Ri93dGYvdW5pY29kZS9Db2xsYXRvckRlZmF1bHQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
VEYvd3RmL3VuaWNvZGUvQ29sbGF0b3JEZWZhdWx0LmNwcAkocmV2aXNpb24gMjM3MDczKQorKysg
U291cmNlL1dURi93dGYvdW5pY29kZS9Db2xsYXRvckRlZmF1bHQuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNyw3ICsyNyw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUg
IkNvbGxhdG9yLmgiCisjaW5jbHVkZSA8d3RmL3VuaWNvZGUvQ29sbGF0b3IuaD4KIAogI2lmIFVD
T05GSUdfTk9fQ09MTEFUSU9OCiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3VuaWNvZGUvVVRGOC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvdW5pY29kZS9VVEY4LmNwcAkocmV2aXNp
b24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvdW5pY29kZS9VVEY4LmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjUsOSArMjUsOSBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNs
dWRlICJVVEY4LmgiCisjaW5jbHVkZSA8d3RmL3VuaWNvZGUvVVRGOC5oPgogCi0jaW5jbHVkZSAi
QVNDSUlDVHlwZS5oIgorI2luY2x1ZGUgPHd0Zi9BU0NJSUNUeXBlLmg+CiAjaW5jbHVkZSA8d3Rm
L3RleHQvU3RyaW5nSGFzaGVyLmg+CiAjaW5jbHVkZSA8d3RmL3VuaWNvZGUvQ2hhcmFjdGVyTmFt
ZXMuaD4KIApJbmRleDogU291cmNlL1dURi93dGYvdW5pY29kZS9VVEY4LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvdW5pY29kZS9VVEY4LmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFNv
dXJjZS9XVEYvd3RmL3VuaWNvZGUvVVRGOC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMyw4ICsyMyw3
IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCi0jaWZuZGVmIFdURl9VVEY4X2gKLSNkZWZpbmUg
V1RGX1VURjhfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx1bmljb2RlL3V0eXBlcy5oPgog
I2luY2x1ZGUgPHd0Zi90ZXh0L0xDaGFyLmg+CkBAIC04Myw1ICs4MiwzIEBAIG5hbWVzcGFjZSBV
bmljb2RlIHsKIAogfSAvLyBuYW1lc3BhY2UgVW5pY29kZQogfSAvLyBuYW1lc3BhY2UgV1RGCi0K
LSNlbmRpZiAvLyBXVEZfVVRGOF9oCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi91bml4L0NQVVRpbWVV
bml4LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi91bml4L0NQVVRpbWVVbml4LmNw
cAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvdW5peC9DUFVUaW1lVW5peC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29u
ZmlnLmgiCi0jaW5jbHVkZSAiQ1BVVGltZS5oIgorI2luY2x1ZGUgPHd0Zi9DUFVUaW1lLmg+CiAK
ICNpbmNsdWRlIDxzeXMvcmVzb3VyY2UuaD4KICNpbmNsdWRlIDxzeXMvdGltZS5oPgpJbmRleDog
U291cmNlL1dURi93dGYvdW5peC9MYW5ndWFnZVVuaXguY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL3VuaXgvTGFuZ3VhZ2VVbml4LmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291
cmNlL1dURi93dGYvdW5peC9MYW5ndWFnZVVuaXguY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xOSw3
ICsxOSw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkxhbmd1YWdl
LmgiCisjaW5jbHVkZSA8d3RmL0xhbmd1YWdlLmg+CiAKICNpbmNsdWRlIDxsb2NhbGUuaD4KICNp
bmNsdWRlIDx3dGYvVmVjdG9yLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi93aW4vQ1BVVGltZVdp
bi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvd2luL0NQVVRpbWVXaW4uY3BwCShy
ZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi93aW4vQ1BVVGltZVdpbi5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgi
Ci0jaW5jbHVkZSAiQ1BVVGltZS5oIgorI2luY2x1ZGUgPHd0Zi9DUFVUaW1lLmg+CiAKICNpbmNs
dWRlIDx3aW5kb3dzLmg+CiAKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3dpbi9MYW5ndWFnZVdpbi5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvd2luL0xhbmd1YWdlV2luLmNwcAkocmV2
aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvd2luL0xhbmd1YWdlV2luLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNyBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIK
LSNpbmNsdWRlICJMYW5ndWFnZS5oIgorI2luY2x1ZGUgPHd0Zi9MYW5ndWFnZS5oPgogCiAjaW5j
bHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8d2luZG93cy5oPgpJbmRleDogU291cmNlL1dURi93dGYv
d2luL01haW5UaHJlYWRXaW4uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3dpbi9N
YWluVGhyZWFkV2luLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvd2lu
L01haW5UaHJlYWRXaW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOCwxMSArMjgsMTEgQEAKICAq
LwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTWFpblRocmVhZC5oIgorI2luY2x1
ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CiAKLSNpbmNsdWRlICJBc3NlcnRpb25zLmgiCi0jaW5jbHVk
ZSAiVGhyZWFkaW5nLmgiCi0jaW5jbHVkZSAiV2luZG93c0V4dHJhcy5oIgorI2luY2x1ZGUgPHd0
Zi9Bc3NlcnRpb25zLmg+CisjaW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgorI2luY2x1ZGUgPHd0
Zi9XaW5kb3dzRXh0cmFzLmg+CiAKIG5hbWVzcGFjZSBXVEYgewogCkluZGV4OiBTb3VyY2UvV1RG
L3d0Zi93aW4vTWVtb3J5Rm9vdHByaW50V2luLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi93aW4vTWVtb3J5Rm9vdHByaW50V2luLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291
cmNlL1dURi93dGYvd2luL01lbW9yeUZvb3RwcmludFdpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTWVt
b3J5Rm9vdHByaW50LmgiCisjaW5jbHVkZSA8d3RmL01lbW9yeUZvb3RwcmludC5oPgogCiAjaW5j
bHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPHR5cGVfdHJhaXRzPgpJbmRleDogU291cmNlL1dU
Ri93dGYvd2luL01lbW9yeVByZXNzdXJlSGFuZGxlcldpbi5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dURi93dGYvd2luL01lbW9yeVByZXNzdXJlSGFuZGxlcldpbi5jcHAJKHJldmlzaW9uIDIz
NzA3MykKKysrIFNvdXJjZS9XVEYvd3RmL3dpbi9NZW1vcnlQcmVzc3VyZUhhbmRsZXJXaW4uY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZp
Zy5oIgotI2luY2x1ZGUgIk1lbW9yeVByZXNzdXJlSGFuZGxlci5oIgorI2luY2x1ZGUgPHd0Zi9N
ZW1vcnlQcmVzc3VyZUhhbmRsZXIuaD4KIAogI2luY2x1ZGUgPHBzYXBpLmg+CiAjaW5jbHVkZSA8
d3RmL05ldmVyRGVzdHJveWVkLmg+CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi93aW4vUnVuTG9vcFdp
bi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvd2luL1J1bkxvb3BXaW4uY3BwCShy
ZXZpc2lvbiAyMzcwNzMpCisrKyBTb3VyY2UvV1RGL3d0Zi93aW4vUnVuTG9vcFdpbi5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDcgQEAKICAqLwogCiAjaW5jbHVkZSAiY29uZmlnLmgi
Ci0jaW5jbHVkZSAiUnVuTG9vcC5oIgorI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CiAKICNpbmNs
dWRlIDx3dGYvV2luZG93c0V4dHJhcy5oPgogCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi93aW4vV29y
a1F1ZXVlV2luLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi93aW4vV29ya1F1ZXVl
V2luLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgU291cmNlL1dURi93dGYvd2luL1dvcmtRdWV1
ZVdpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1LDcgKzI1LDcgQEAKICAqLwogCiAjaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiV29ya1F1ZXVlLmgiCisjaW5jbHVkZSA8d3RmL1dvcmtR
dWV1ZS5oPgogCiAjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KICNpbmNsdWRlIDx3dGYvVGhy
ZWFkaW5nLmg+CkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyMzcwODgpCisrKyBUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSw1MCBAQAorMjAxOC0xMC0xMiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJp
c3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIFVzZSBwcmFnbWEgb25jZSBpbiBXVEYKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDUyNworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFB1dCBXb3JrUXVl
dWUgaW4gbmFtZXNwYWNlIERSVCBzbyBpdCBkb2VzIG5vdCBjb25mbGljdCB3aXRoIFdURjo6V29y
a1F1ZXVlLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvVGVzdFJ1bm5lci5jcHA6CisgICAg
ICAgIChUZXN0UnVubmVyOjpxdWV1ZUxvYWRIVE1MU3RyaW5nKToKKyAgICAgICAgKFRlc3RSdW5u
ZXI6OnF1ZXVlTG9hZEFsdGVybmF0ZUhUTUxTdHJpbmcpOgorICAgICAgICAoVGVzdFJ1bm5lcjo6
cXVldWVCYWNrTmF2aWdhdGlvbik6CisgICAgICAgIChUZXN0UnVubmVyOjpxdWV1ZUZvcndhcmRO
YXZpZ2F0aW9uKToKKyAgICAgICAgKFRlc3RSdW5uZXI6OnF1ZXVlTG9hZGluZ1NjcmlwdCk6Cisg
ICAgICAgIChUZXN0UnVubmVyOjpxdWV1ZU5vbkxvYWRpbmdTY3JpcHQpOgorICAgICAgICAoVGVz
dFJ1bm5lcjo6cXVldWVSZWxvYWQpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL1dvcmtRdWV1
ZS5jcHA6CisgICAgICAgIChXb3JrUXVldWU6OnNpbmdsZXRvbik6IERlbGV0ZWQuCisgICAgICAg
IChXb3JrUXVldWU6OldvcmtRdWV1ZSk6IERlbGV0ZWQuCisgICAgICAgIChXb3JrUXVldWU6OnF1
ZXVlKTogRGVsZXRlZC4KKyAgICAgICAgKFdvcmtRdWV1ZTo6ZGVxdWV1ZSk6IERlbGV0ZWQuCisg
ICAgICAgIChXb3JrUXVldWU6OmNvdW50KTogRGVsZXRlZC4KKyAgICAgICAgKFdvcmtRdWV1ZTo6
Y2xlYXIpOiBEZWxldGVkLgorICAgICAgICAoV29ya1F1ZXVlOjpwcm9jZXNzV29yayk6IERlbGV0
ZWQuCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvV29ya1F1ZXVlLmg6CisgICAgICAgIChXb3Jr
UXVldWU6OnNldEZyb3plbik6IERlbGV0ZWQuCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvV29y
a1F1ZXVlSXRlbS5oOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJl
ZS5tbToKKyAgICAgICAgKHJ1blRlc3QpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL21hYy9G
cmFtZUxvYWREZWxlZ2F0ZS5tbToKKyAgICAgICAgKC1bRnJhbWVMb2FkRGVsZWdhdGUgcHJvY2Vz
c1dvcms6XSk6CisgICAgICAgICgtW0ZyYW1lTG9hZERlbGVnYXRlIHdlYlZpZXc6bG9jYXRpb25D
aGFuZ2VEb25lOmZvckRhdGFTb3VyY2U6XSk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFj
L1Rlc3RSdW5uZXJNYWMubW06CisgICAgICAgIChUZXN0UnVubmVyOjpub3RpZnlEb25lKToKKyAg
ICAgICAgKFRlc3RSdW5uZXI6OmZvcmNlSW1tZWRpYXRlQ29tcGxldGlvbik6CisgICAgICAgIChU
ZXN0UnVubmVyOjpxdWV1ZUxvYWQpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3dpbi9EdW1w
UmVuZGVyVHJlZS5jcHA6CisgICAgICAgIChydW5UZXN0KToKKyAgICAgICAgKiBEdW1wUmVuZGVy
VHJlZS93aW4vRnJhbWVMb2FkRGVsZWdhdGUuY3BwOgorICAgICAgICAoRnJhbWVMb2FkRGVsZWdh
dGU6OnByb2Nlc3NXb3JrKToKKyAgICAgICAgKEZyYW1lTG9hZERlbGVnYXRlOjpsb2NhdGlvbkNo
YW5nZURvbmUpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3dpbi9UZXN0UnVubmVyV2luLmNw
cDoKKyAgICAgICAgKFRlc3RSdW5uZXI6Om5vdGlmeURvbmUpOgorICAgICAgICAoVGVzdFJ1bm5l
cjo6Zm9yY2VJbW1lZGlhdGVDb21wbGV0aW9uKToKKyAgICAgICAgKFRlc3RSdW5uZXI6OnF1ZXVl
TG9hZCk6CisKIDIwMTgtMTAtMTIgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5j
b20+CiAKICAgICAgICAgW2lPU10gQWxsb3cgU1BJIGNsaWVudHMgdG8gbGF5IG91dCBhdCBhcmJp
dHJhcmlseSBzY2FsZWQgc2l6ZXMgYW5kIHNjYWxlIHRvIGZpdCB0aGUgdmlldwpJbmRleDogVG9v
bHMvRHVtcFJlbmRlclRyZWUvVGVzdFJ1bm5lci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVt
cFJlbmRlclRyZWUvVGVzdFJ1bm5lci5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFRvb2xzL0R1
bXBSZW5kZXJUcmVlL1Rlc3RSdW5uZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMjc1LDM3ICsy
Mjc1LDM3IEBAIEpTU3RhdGljRnVuY3Rpb24qIFRlc3RSdW5uZXI6OnN0YXRpY0Z1bmMKIAogdm9p
ZCBUZXN0UnVubmVyOjpxdWV1ZUxvYWRIVE1MU3RyaW5nKEpTU3RyaW5nUmVmIGNvbnRlbnQsIEpT
U3RyaW5nUmVmIGJhc2VVUkwpCiB7Ci0gICAgV29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShu
ZXcgTG9hZEhUTUxTdHJpbmdJdGVtKGNvbnRlbnQsIGJhc2VVUkwpKTsKKyAgICBEUlQ6OldvcmtR
dWV1ZTo6c2luZ2xldG9uKCkucXVldWUobmV3IExvYWRIVE1MU3RyaW5nSXRlbShjb250ZW50LCBi
YXNlVVJMKSk7CiB9CiAKIHZvaWQgVGVzdFJ1bm5lcjo6cXVldWVMb2FkQWx0ZXJuYXRlSFRNTFN0
cmluZyhKU1N0cmluZ1JlZiBjb250ZW50LCBKU1N0cmluZ1JlZiBiYXNlVVJMLCBKU1N0cmluZ1Jl
ZiB1bnJlYWNoYWJsZVVSTCkKIHsKLSAgICBXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5l
dyBMb2FkSFRNTFN0cmluZ0l0ZW0oY29udGVudCwgYmFzZVVSTCwgdW5yZWFjaGFibGVVUkwpKTsK
KyAgICBEUlQ6OldvcmtRdWV1ZTo6c2luZ2xldG9uKCkucXVldWUobmV3IExvYWRIVE1MU3RyaW5n
SXRlbShjb250ZW50LCBiYXNlVVJMLCB1bnJlYWNoYWJsZVVSTCkpOwogfQogCiB2b2lkIFRlc3RS
dW5uZXI6OnF1ZXVlQmFja05hdmlnYXRpb24oaW50IGhvd0ZhckJhY2spCiB7Ci0gICAgV29ya1F1
ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShuZXcgQmFja0l0ZW0oaG93RmFyQmFjaykpOworICAgIERS
VDo6V29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShuZXcgQmFja0l0ZW0oaG93RmFyQmFjaykp
OwogfQogCiB2b2lkIFRlc3RSdW5uZXI6OnF1ZXVlRm9yd2FyZE5hdmlnYXRpb24oaW50IGhvd0Zh
ckZvcndhcmQpCiB7Ci0gICAgV29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShuZXcgRm9yd2Fy
ZEl0ZW0oaG93RmFyRm9yd2FyZCkpOworICAgIERSVDo6V29ya1F1ZXVlOjpzaW5nbGV0b24oKS5x
dWV1ZShuZXcgRm9yd2FyZEl0ZW0oaG93RmFyRm9yd2FyZCkpOwogfQogCiB2b2lkIFRlc3RSdW5u
ZXI6OnF1ZXVlTG9hZGluZ1NjcmlwdChKU1N0cmluZ1JlZiBzY3JpcHQpCiB7Ci0gICAgV29ya1F1
ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShuZXcgTG9hZGluZ1NjcmlwdEl0ZW0oc2NyaXB0KSk7Cisg
ICAgRFJUOjpXb3JrUXVldWU6OnNpbmdsZXRvbigpLnF1ZXVlKG5ldyBMb2FkaW5nU2NyaXB0SXRl
bShzY3JpcHQpKTsKIH0KIAogdm9pZCBUZXN0UnVubmVyOjpxdWV1ZU5vbkxvYWRpbmdTY3JpcHQo
SlNTdHJpbmdSZWYgc2NyaXB0KQogewotICAgIFdvcmtRdWV1ZTo6c2luZ2xldG9uKCkucXVldWUo
bmV3IE5vbkxvYWRpbmdTY3JpcHRJdGVtKHNjcmlwdCkpOworICAgIERSVDo6V29ya1F1ZXVlOjpz
aW5nbGV0b24oKS5xdWV1ZShuZXcgTm9uTG9hZGluZ1NjcmlwdEl0ZW0oc2NyaXB0KSk7CiB9CiAK
IHZvaWQgVGVzdFJ1bm5lcjo6cXVldWVSZWxvYWQoKQogewotICAgIFdvcmtRdWV1ZTo6c2luZ2xl
dG9uKCkucXVldWUobmV3IFJlbG9hZEl0ZW0pOworICAgIERSVDo6V29ya1F1ZXVlOjpzaW5nbGV0
b24oKS5xdWV1ZShuZXcgUmVsb2FkSXRlbSk7CiB9CiAKIHZvaWQgVGVzdFJ1bm5lcjo6aWdub3Jl
TGVnYWN5V2ViTm90aWZpY2F0aW9uUGVybWlzc2lvblJlcXVlc3RzKCkKSW5kZXg6IFRvb2xzL0R1
bXBSZW5kZXJUcmVlL1dvcmtRdWV1ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRl
clRyZWUvV29ya1F1ZXVlLmNwcAkocmV2aXNpb24gMjM3MDczKQorKysgVG9vbHMvRHVtcFJlbmRl
clRyZWUvV29ya1F1ZXVlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzMsNiArMzMsOCBAQAogI2lu
Y2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+
CiAKK25hbWVzcGFjZSBEUlQgeworCiBzdGF0aWMgY29uc3QgdW5zaWduZWQgcXVldWVMZW5ndGgg
PSAxMDI0OwogCiBzdGF0aWMgV29ya1F1ZXVlSXRlbSogdGhlUXVldWVbcXVldWVMZW5ndGhdOwpA
QCAtMTAzLDMgKzEwNSw1IEBAIGJvb2wgV29ya1F1ZXVlOjpwcm9jZXNzV29yaygpCiAgICAgLy8g
SWYgd2UncmUgZG9uZSBhbmQgd2UgZGlkbid0IHN0YXJ0IGEgbG9hZCwgdGhlbiB3ZSdyZSByZWFs
bHkgZG9uZSwgc28gcmV0dXJuIHRydWUuCiAgICAgcmV0dXJuICFzdGFydGVkTG9hZDsKIH0KKwor
fQpJbmRleDogVG9vbHMvRHVtcFJlbmRlclRyZWUvV29ya1F1ZXVlLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvRHVtcFJlbmRlclRyZWUvV29ya1F1ZXVlLmgJKHJldmlzaW9uIDIzNzA3MykKKysrIFRv
b2xzL0R1bXBSZW5kZXJUcmVlL1dvcmtRdWV1ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiwxMyAr
MjYsMTQgQEAKICAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2lmbmRlZiBXb3JrUXVldWVfaAotI2RlZmlu
ZSBXb3JrUXVldWVfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgog
CiBjbGFzcyBXb3JrUXVldWVJdGVtOwogCituYW1lc3BhY2UgRFJUIHsKKwogY2xhc3MgV29ya1F1
ZXVlIHsKIGZyaWVuZCBjbGFzcyBXVEY6Ok5ldmVyRGVzdHJveWVkPFdvcmtRdWV1ZT47CiAKQEAg
LTU0LDQgKzU1LDQgQEAgcHJpdmF0ZToKICAgICBib29sIG1fZnJvemVuOwogfTsKIAotI2VuZGlm
IC8vICFkZWZpbmVkKFdvcmtRdWV1ZV9oKQorfQpJbmRleDogVG9vbHMvRHVtcFJlbmRlclRyZWUv
V29ya1F1ZXVlSXRlbS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJUcmVlL1dvcmtR
dWV1ZUl0ZW0uaAkocmV2aXNpb24gMjM3MDczKQorKysgVG9vbHMvRHVtcFJlbmRlclRyZWUvV29y
a1F1ZXVlSXRlbS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw3IEBACiAgKiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgogICovCiAKLSNpZm5kZWYgV29ya1F1ZXVlSXRlbV9oCi0jZGVmaW5lIFdvcmtRdWV1ZUl0ZW1f
aAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU1JldGFpblB0ci5o
PgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTQmFzZS5oPgpAQCAtMTQ1LDUgKzE0NCwzIEBA
IHB1YmxpYzoKICAgICB7CiAgICAgfQogfTsKLQotI2VuZGlmIC8vICFkZWZpbmVkKFdvcmtRdWV1
ZUl0ZW1faCkKSW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5t
bQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUu
bW0JKHJldmlzaW9uIDIzNzA3MykKKysrIFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVu
ZGVyVHJlZS5tbQkod29ya2luZyBjb3B5KQpAQCAtMjAzNCw3ICsyMDM0LDcgQEAgc3RhdGljIHZv
aWQgcnVuVGVzdChjb25zdCBzdHJpbmcmIGlucHV0TAogICAgIFtwcmV2VGVzdEJGSXRlbSByZWxl
YXNlXTsKICAgICBwcmV2VGVzdEJGSXRlbSA9IFtbW1ttYWluRnJhbWUgd2ViVmlld10gYmFja0Zv
cndhcmRMaXN0XSBjdXJyZW50SXRlbV0gcmV0YWluXTsKIAotICAgIGF1dG8mIHdvcmtRdWV1ZSA9
IFdvcmtRdWV1ZTo6c2luZ2xldG9uKCk7CisgICAgYXV0byYgd29ya1F1ZXVlID0gRFJUOjpXb3Jr
UXVldWU6OnNpbmdsZXRvbigpOwogICAgIHdvcmtRdWV1ZS5jbGVhcigpOwogICAgIHdvcmtRdWV1
ZS5zZXRGcm96ZW4oZmFsc2UpOwogCkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRnJh
bWVMb2FkRGVsZWdhdGUubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFj
L0ZyYW1lTG9hZERlbGVnYXRlLm1tCShyZXZpc2lvbiAyMzcwNzMpCisrKyBUb29scy9EdW1wUmVu
ZGVyVHJlZS9tYWMvRnJhbWVMb2FkRGVsZWdhdGUubW0JKHdvcmtpbmcgY29weSkKQEAgLTE0OCw3
ICsxNDgsNyBAQCAtICh2b2lkKXByb2Nlc3NXb3JrOihpZClkdW1teQogI2VuZGlmCiAKICAgICAv
LyBpZiB3ZSBmaW5pc2ggYWxsIHRoZSBjb21tYW5kcywgd2UncmUgcmVhZHkgdG8gZHVtcCBzdGF0
ZQotICAgIGlmIChXb3JrUXVldWU6OnNpbmdsZXRvbigpLnByb2Nlc3NXb3JrKCkgJiYgIWdUZXN0
UnVubmVyLT53YWl0VG9EdW1wKCkpCisgICAgaWYgKERSVDo6V29ya1F1ZXVlOjpzaW5nbGV0b24o
KS5wcm9jZXNzV29yaygpICYmICFnVGVzdFJ1bm5lci0+d2FpdFRvRHVtcCgpKQogICAgICAgICBk
dW1wKCk7CiB9CiAKQEAgLTE2MSw3ICsxNjEsNyBAQCAtICh2b2lkKXdlYlZpZXc6KFdlYlZpZXcg
Kil3ZWJWaWV3IGxvY2F0CiB7CiAgICAgaWYgKFtkYXRhU291cmNlIHdlYkZyYW1lXSA9PSB0b3BM
b2FkaW5nRnJhbWUpIHsKICAgICAgICAgdG9wTG9hZGluZ0ZyYW1lID0gbmlsOwotICAgICAgICBh
dXRvJiB3b3JrUXVldWUgPSBXb3JrUXVldWU6OnNpbmdsZXRvbigpOworICAgICAgICBhdXRvJiB3
b3JrUXVldWUgPSBEUlQ6OldvcmtRdWV1ZTo6c2luZ2xldG9uKCk7CiAgICAgICAgIHdvcmtRdWV1
ZS5zZXRGcm96ZW4odHJ1ZSk7IC8vIGZpcnN0IGNvbXBsZXRlIGxvYWQgZnJlZXplcyB0aGUgcXVl
dWUgZm9yIHRoZSByZXN0IG9mIHRoaXMgdGVzdAogICAgICAgICBpZiAoIWdUZXN0UnVubmVyLT53
YWl0VG9EdW1wKCkpIHsKICAgICAgICAgICAgIGlmICh3b3JrUXVldWUuY291bnQoKSkKSW5kZXg6
IFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9UZXN0UnVubmVyTWFjLm1tCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9UZXN0UnVubmVyTWFjLm1tCShyZXZpc2lvbiAyMzcw
NzMpCisrKyBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvVGVzdFJ1bm5lck1hYy5tbQkod29ya2lu
ZyBjb3B5KQpAQCAtMjk3LDE0ICsyOTcsMTQgQEAgc2l6ZV90IFRlc3RSdW5uZXI6OndlYkhpc3Rv
cnlJdGVtQ291bnQoKQogCiB2b2lkIFRlc3RSdW5uZXI6Om5vdGlmeURvbmUoKQogewotICAgIGlm
IChtX3dhaXRUb0R1bXAgJiYgIXRvcExvYWRpbmdGcmFtZSAmJiAhV29ya1F1ZXVlOjpzaW5nbGV0
b24oKS5jb3VudCgpKQorICAgIGlmIChtX3dhaXRUb0R1bXAgJiYgIXRvcExvYWRpbmdGcmFtZSAm
JiAhRFJUOjpXb3JrUXVldWU6OnNpbmdsZXRvbigpLmNvdW50KCkpCiAgICAgICAgIGR1bXAoKTsK
ICAgICBtX3dhaXRUb0R1bXAgPSBmYWxzZTsKIH0KIAogdm9pZCBUZXN0UnVubmVyOjpmb3JjZUlt
bWVkaWF0ZUNvbXBsZXRpb24oKQogewotICAgIGlmIChtX3dhaXRUb0R1bXAgJiYgIVdvcmtRdWV1
ZTo6c2luZ2xldG9uKCkuY291bnQoKSkKKyAgICBpZiAobV93YWl0VG9EdW1wICYmICFEUlQ6Oldv
cmtRdWV1ZTo6c2luZ2xldG9uKCkuY291bnQoKSkKICAgICAgICAgZHVtcCgpOwogICAgIG1fd2Fp
dFRvRHVtcCA9IGZhbHNlOwogfQpAQCAtMzgyLDcgKzM4Miw3IEBAIHZvaWQgVGVzdFJ1bm5lcjo6
cXVldWVMb2FkKEpTU3RyaW5nUmVmIHUKICAgICBOU1N0cmluZyAqbnN1cmxTdHJpbmcgPSBbbnN1
cmwgYWJzb2x1dGVTdHJpbmddOwogCiAgICAgYXV0byBhYnNvbHV0ZVVSTCA9IGFkb3B0KEpTU3Ry
aW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKFtuc3VybFN0cmluZyBVVEY4U3RyaW5nXSkpOwotICAg
IFdvcmtRdWV1ZTo6c2luZ2xldG9uKCkucXVldWUobmV3IExvYWRJdGVtKGFic29sdXRlVVJMLmdl
dCgpLCB0YXJnZXQpKTsKKyAgICBEUlQ6OldvcmtRdWV1ZTo6c2luZ2xldG9uKCkucXVldWUobmV3
IExvYWRJdGVtKGFic29sdXRlVVJMLmdldCgpLCB0YXJnZXQpKTsKIH0KIAogdm9pZCBUZXN0UnVu
bmVyOjpzZXRBY2NlcHRzRWRpdGluZyhib29sIG5ld0FjY2VwdHNFZGl0aW5nKQpJbmRleDogVG9v
bHMvRHVtcFJlbmRlclRyZWUvd2luL0R1bXBSZW5kZXJUcmVlLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9EdW1wUmVuZGVyVHJlZS93aW4vRHVtcFJlbmRlclRyZWUuY3BwCShyZXZpc2lvbiAyMzcw
NzMpCisrKyBUb29scy9EdW1wUmVuZGVyVHJlZS93aW4vRHVtcFJlbmRlclRyZWUuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMjI3LDcgKzEyMjcsNyBAQCBzdGF0aWMgdm9pZCBydW5UZXN0KGNvbnN0
IHN0cmluZyYgaW5wdXRMCiAgICAgaWYgKHdlYlZpZXcgJiYgU1VDQ0VFREVEKHdlYlZpZXctPmJh
Y2tGb3J3YXJkTGlzdCgmYmZMaXN0KSkpCiAgICAgICAgIGJmTGlzdC0+Y3VycmVudEl0ZW0oJnBy
ZXZUZXN0QkZJdGVtKTsKIAotICAgIGF1dG8mIHdvcmtRdWV1ZSA9IFdvcmtRdWV1ZTo6c2luZ2xl
dG9uKCk7CisgICAgYXV0byYgd29ya1F1ZXVlID0gRFJUOjpXb3JrUXVldWU6OnNpbmdsZXRvbigp
OwogICAgIHdvcmtRdWV1ZS5jbGVhcigpOwogICAgIHdvcmtRdWV1ZS5zZXRGcm96ZW4oZmFsc2Up
OwogCkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJlZS93aW4vRnJhbWVMb2FkRGVsZWdhdGUuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9GcmFtZUxvYWREZWxlZ2F0
ZS5jcHAJKHJldmlzaW9uIDIzNzA3MykKKysrIFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9GcmFt
ZUxvYWREZWxlZ2F0ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE5Niw3ICsxOTYsNyBAQCB2b2lk
IEZyYW1lTG9hZERlbGVnYXRlOjpwcm9jZXNzV29yaygpCiAgICAgICAgIHJldHVybjsKIAogICAg
IC8vIGlmIHdlIGZpbmlzaCBhbGwgdGhlIGNvbW1hbmRzLCB3ZSdyZSByZWFkeSB0byBkdW1wIHN0
YXRlCi0gICAgaWYgKFdvcmtRdWV1ZTo6c2luZ2xldG9uKCkucHJvY2Vzc1dvcmsoKSAmJiAhOjpn
VGVzdFJ1bm5lci0+d2FpdFRvRHVtcCgpKQorICAgIGlmIChEUlQ6OldvcmtRdWV1ZTo6c2luZ2xl
dG9uKCkucHJvY2Vzc1dvcmsoKSAmJiAhOjpnVGVzdFJ1bm5lci0+d2FpdFRvRHVtcCgpKQogICAg
ICAgICBkdW1wKCk7CiB9CiAKQEAgLTIzMyw3ICsyMzMsNyBAQCB2b2lkIEZyYW1lTG9hZERlbGVn
YXRlOjpsb2NhdGlvbkNoYW5nZURvCiAgICAgICAgIHJldHVybjsKIAogICAgIHRvcExvYWRpbmdG
cmFtZSA9IG51bGxwdHI7Ci0gICAgYXV0byYgd29ya1F1ZXVlID0gV29ya1F1ZXVlOjpzaW5nbGV0
b24oKTsKKyAgICBhdXRvJiB3b3JrUXVldWUgPSBEUlQ6OldvcmtRdWV1ZTo6c2luZ2xldG9uKCk7
CiAgICAgd29ya1F1ZXVlLnNldEZyb3plbih0cnVlKTsKIAogICAgIGlmICg6OmdUZXN0UnVubmVy
LT53YWl0VG9EdW1wKCkpCkluZGV4OiBUb29scy9EdW1wUmVuZGVyVHJlZS93aW4vVGVzdFJ1bm5l
cldpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL1Rlc3RSdW5u
ZXJXaW4uY3BwCShyZXZpc2lvbiAyMzcwNzMpCisrKyBUb29scy9EdW1wUmVuZGVyVHJlZS93aW4v
VGVzdFJ1bm5lcldpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4OCw3ICsyODgsNyBAQCBzaXpl
X3QgVGVzdFJ1bm5lcjo6d2ViSGlzdG9yeUl0ZW1Db3VudCgpCiB2b2lkIFRlc3RSdW5uZXI6Om5v
dGlmeURvbmUoKQogewogICAgIC8vIFNhbWUgYXMgb24gbWFjLiAgVGhpcyBjYW4gYmUgc2hhcmVk
LgotICAgIGlmIChtX3dhaXRUb0R1bXAgJiYgIXRvcExvYWRpbmdGcmFtZSAmJiAhV29ya1F1ZXVl
OjpzaW5nbGV0b24oKS5jb3VudCgpKQorICAgIGlmIChtX3dhaXRUb0R1bXAgJiYgIXRvcExvYWRp
bmdGcmFtZSAmJiAhRFJUOjpXb3JrUXVldWU6OnNpbmdsZXRvbigpLmNvdW50KCkpCiAgICAgICAg
IGR1bXAoKTsKICAgICBtX3dhaXRUb0R1bXAgPSBmYWxzZTsKIH0KQEAgLTI5Niw3ICsyOTYsNyBA
QCB2b2lkIFRlc3RSdW5uZXI6Om5vdGlmeURvbmUoKQogdm9pZCBUZXN0UnVubmVyOjpmb3JjZUlt
bWVkaWF0ZUNvbXBsZXRpb24oKQogewogICAgIC8vIFNhbWUgYXMgb24gbWFjLiBUaGlzIGNhbiBi
ZSBzaGFyZWQuCi0gICAgaWYgKG1fd2FpdFRvRHVtcCAmJiAhV29ya1F1ZXVlOjpzaW5nbGV0b24o
KS5jb3VudCgpKQorICAgIGlmIChtX3dhaXRUb0R1bXAgJiYgIURSVDo6V29ya1F1ZXVlOjpzaW5n
bGV0b24oKS5jb3VudCgpKQogICAgICAgICBkdW1wKCk7CiAgICAgbV93YWl0VG9EdW1wID0gZmFs
c2U7CiB9CkBAIC0zNTAsNyArMzUwLDcgQEAgdm9pZCBUZXN0UnVubmVyOjpxdWV1ZUxvYWQoSlNT
dHJpbmdSZWYgdQogICAgIH0KIAogICAgIGF1dG8ganNBYnNvbHV0ZVVSTCA9IGFkb3B0KEpTU3Ry
aW5nQ3JlYXRlV2l0aENoYXJhY3RlcnMoYnVmZmVyLmRhdGEoKSwgYnVmZmVyU2l6ZSkpOwotICAg
IFdvcmtRdWV1ZTo6c2luZ2xldG9uKCkucXVldWUobmV3IExvYWRJdGVtKGpzQWJzb2x1dGVVUkwu
Z2V0KCksIHRhcmdldCkpOworICAgIERSVDo6V29ya1F1ZXVlOjpzaW5nbGV0b24oKS5xdWV1ZShu
ZXcgTG9hZEl0ZW0oanNBYnNvbHV0ZVVSTC5nZXQoKSwgdGFyZ2V0KSk7CiB9CiAKIHZvaWQgVGVz
dFJ1bm5lcjo6c2V0QWNjZXB0c0VkaXRpbmcoYm9vbCBhY2NlcHRzRWRpdGluZykK
</data>
<flag name="review"
          id="369537"
          type_id="1"
          status="+"
          setter="cdumez"
    />
          </attachment>
      

    </bug>

</bugzilla>