<?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>146597</bug_id>
          
          <creation_ts>2015-07-03 12:04:22 -0700</creation_ts>
          <short_desc>[Xcode] Update some build settings as recommended by Xcode 7</short_desc>
          <delta_ts>2015-07-03 19:56:26 -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>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>mitz</reporter>
          <assigned_to>mitz</assigned_to>
          <cc>andersca</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>sam</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1106750</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2015-07-03 12:04:22 -0700</bug_when>
    <thetext>Xcode 7 recommends enabling a few more compiler warnings.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106758</commentid>
    <comment_count>1</comment_count>
      <attachid>256117</attachid>
    <who name="">mitz</who>
    <bug_when>2015-07-03 13:00:20 -0700</bug_when>
    <thetext>Created attachment 256117
Update settings and fix some warnings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106761</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-03 13:02:14 -0700</bug_when>
    <thetext>Attachment 256117 did not pass style-queue:


ERROR: Source/WebCore/bridge/objc/WebScriptObjectProtocol.h:27:  Bad include order. Mixing system and custom headers.  [build/include_order] [4]
Total errors found: 1 in 43 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>1106763</commentid>
    <comment_count>3</comment_count>
      <attachid>256117</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2015-07-03 13:22:33 -0700</bug_when>
    <thetext>Comment on attachment 256117
Update settings and fix some warnings

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

&gt; Source/WTF/Configurations/Base.xcconfig:-56
&gt; -GCC_MODEL_TUNING[sdk=macosx*] = G5;

End of an era.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106764</commentid>
    <comment_count>4</comment_count>
    <who name="">mitz</who>
    <bug_when>2015-07-03 13:24:43 -0700</bug_when>
    <thetext>I’ll need to fix the iOS JavaScriptCore build (probably just not enable -Wunreachable-code for the project) and the Mac TestWebKitAPI build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106787</commentid>
    <comment_count>5</comment_count>
    <who name="">mitz</who>
    <bug_when>2015-07-03 14:59:35 -0700</bug_when>
    <thetext>Committed &lt;http://trac.webkit.org/r186268&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106803</commentid>
    <comment_count>6</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-07-03 19:38:45 -0700</bug_when>
    <thetext>Seems to have broken JSC build:
CompileC /Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/JavaScriptCore.build/Debug/JavaScriptCore.build/Objects-normal/x86_64/LowLevelInterpreter.o llint/LowLevelInterpreter.cpp normal x86_64 c++ com.apple.compilers.llvm.clang.1_0.compiler
    cd /Volumes/Data/slave/yosemite-cloop-debug/build/Source/JavaScriptCore
    export LANG=en_US.US-ASCII
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x c++ -arch x86_64 -fmessage-length=0 -fdiagnostics-show-note-include-stack -fmacro-backtrace-limit=0 -std=gnu++11 -stdlib=libc++ -Wno-trigraphs -fno-exceptions -fno-rtti -fpascal-strings -O0 -fno-common -Werror -Wno-missing-field-initializers -Wmissing-prototypes -Wunreachable-code -Wnon-virtual-dtor -Wno-overloaded-virtual -Wno-exit-time-destructors -Wno-missing-braces -Wparentheses -Wswitch -Wunused-function -Wno-unused-label -Wno-unused-parameter -Wunused-variable -Wunused-value -Wempty-body -Wuninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wconstant-conversion -Wint-conversion -Wbool-conversion -Wenum-conversion -Wsign-compare -Wno-shorten-64-to-32 -Wnewline-eof -Wno-c++11-extensions -DHAVE_HEADER_DETECTION_H -DENABLE_3D_TRANSFORMS -DENABLE_AVF_CAPTIONS -DENABLE_ATTACHMENT_ELEMENT -DENABLE_CACHE_PARTITIONING -DENABLE_CANVAS_PATH -DENABLE_CHANNEL_MESSAGING -DENABLE_ES6_ARROWFUNCTION_SYNTAX -DENABLE_ES6_CLASS_SYNTAX -DENABLE_ES6_TEMPLATE_LITERAL_SYNTAX -DENABLE_CONTENT_FILTERING -DENABLE_CSS_ANIMATIONS_LEVEL_2 -DENABLE_CSS_BOX_DECORATION_BREAK -DENABLE_CSS_COMPOSITING -DENABLE_CSS_GRID_LAYOUT -DENABLE_CSS_REGIONS -DENABLE_CSS_SELECTORS_LEVEL4 -DENABLE_CSS_SHAPES -DENABLE_CURSOR_VISIBILITY -DENABLE_DASHBOARD_SUPPORT -DENABLE_DETAILS_ELEMENT -DENABLE_DOM4_EVENTS_CONSTRUCTOR -DENABLE_ENCRYPTED_MEDIA -DENABLE_ENCRYPTED_MEDIA_V2 -DENABLE_FILTERS_LEVEL_2 -DENABLE_FULLSCREEN_API -DENABLE_GAMEPAD -DENABLE_GEOLOCATION -DENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING -DENABLE_ICONDATABASE -DENABLE_SERVICE_CONTROLS -DENABLE_INDEXED_DATABASE -DENABLE_INDIE_UI -DENABLE_INPUT_TYPE_COLOR -DENABLE_INPUT_TYPE_COLOR_POPOVER -DENABLE_LEGACY_CSS_VENDOR_PREFIXES -DENABLE_LEGACY_NOTIFICATIONS -DENABLE_LEGACY_VENDOR_PREFIXES -DENABLE_LEGACY_WEB_AUDIO -DENABLE_MATHML -DENABLE_MEDIA_CONTROLS_SCRIPT -DENABLE_MEDIA_SOURCE -DENABLE_MEDIA_STREAM -DENABLE_METER_ELEMENT -DENABLE_MOUSE_CURSOR_SCALE -DENABLE_NAVIGATOR_HWCONCURRENCY -DENABLE_NOTIFICATIONS -DENABLE_PDFKIT_PLUGIN -DENABLE_PROMISES -DENABLE_PUBLIC_SUFFIX_LIST -DENABLE_REQUEST_ANIMATION_FRAME -DENABLE_REMOTE_INSPECTOR -DENABLE_RUBBER_BANDING -DENABLE_CSS_SCROLL_SNAP -DENABLE_SPEECH_SYNTHESIS -DENABLE_STREAMS_API -DENABLE_SUBTLE_CRYPTO -DENABLE_SVG_FONTS -DENABLE_SVG_OTF_CONVERTER -DENABLE_TELEPHONE_NUMBER_DETECTION -DENABLE_TEMPLATE_ELEMENT -DENABLE_CSS_TRAILING_WORD -DENABLE_USERSELECT_ALL -DENABLE_VIDEO -DENABLE_VIDEO_TRACK -DENABLE_DATACUE_VALUE -DENABLE_WEBGL -DENABLE_WEB_AUDIO -DENABLE_WEB_REPLAY -DENABLE_WEB_SOCKETS -DENABLE_WEB_TIMING -DENABLE_WEBVTT_REGIONS -DENABLE_XHR_TIMEOUT -DENABLE_XSLT -DENABLE_FTL_JIT=0 -DENABLE_JIT=0 -DENABLE_SATURATED_LAYOUT_ARITHMETIC -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk -fasm-blocks -fstrict-aliasing -Wdeprecated-declarations -Winvalid-offsetof -mmacosx-version-min=10.10 -g -fvisibility=hidden -fvisibility-inlines-hidden -fno-threadsafe-statics -Wno-sign-conversion -I/Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/JavaScriptCore.build/Debug/JavaScriptCore.build/JavaScriptCore.hmap -I/Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/Debug/include -I/Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/Debug/DerivedSources/JavaScriptCore -I. -Iicu -I/Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/Debug/usr/local/LLVMForJavaScriptCore/include -I/Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/Debug/ExtraIncludesForLocalLLVMBuild -I/usr/local/LLVMForJavaScriptCore/include -I/Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/Debug/usr/local/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/JavaScriptCore.build/Debug/JavaScriptCore.build/DerivedSources/x86_64 -I/Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/JavaScriptCore.build/Debug/JavaScriptCore.build/DerivedSources -Wall -Wextra -Wcast-qual -Wchar-subscripts -Wextra-tokens -Wformat=2 -Winit-self -Wmissing-format-attribute -Wmissing-noreturn -Wpacked -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -Wexit-time-destructors -Wglobal-constructors -Wtautological-compare -Wimplicit-fallthrough -F/Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/Debug -include /Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/PrecompiledHeaders/JavaScriptCorePrefix-dvwvbkgrztglrrfntrgvjzazrpns/JavaScriptCorePrefix.h -MMD -MT dependencies -MF /Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/JavaScriptCore.build/Debug/JavaScriptCore.build/Objects-normal/x86_64/LowLevelInterpreter.d --serialize-diagnostics /Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/JavaScriptCore.build/Debug/JavaScriptCore.build/Objects-normal/x86_64/LowLevelInterpreter.dia -c /Volumes/Data/slave/yosemite-cloop-debug/build/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp -o /Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/JavaScriptCore.build/Debug/JavaScriptCore.build/Objects-normal/x86_64/LowLevelInterpreter.o
In file included from /Volumes/Data/slave/yosemite-cloop-debug/build/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp:425:
/Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/Debug/DerivedSources/JavaScriptCore/LLIntAssembly.h:693:29: error: code will never be executed [-Werror,-Wunreachable-code]
    t0.i = *CAST&lt;intptr_t*&gt;(cfr.i8p + 8);                    // JavaScriptCore/llint/LowLevelInterpreter64.asm:539
                            ^~~
/Volumes/Data/slave/yosemite-cloop-debug/build/WebKitBuild/Debug/DerivedSources/JavaScriptCore/LLIntAssembly.h:544:29: error: code will never be executed [-Werror,-Wunreachable-code]
    t0.i = *CAST&lt;intptr_t*&gt;(cfr.i8p + 8);                    // JavaScriptCore/llint/LowLevelInterpreter64.asm:539
                            ^~~
2 errors generated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106804</commentid>
    <comment_count>7</comment_count>
    <who name="">mitz</who>
    <bug_when>2015-07-03 19:41:54 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Seems to have broken JSC build:

Looking at https://build.webkit.org/console?category=AppleMac this seems to be specific to the “LLINT CLoop” configuration. What’s the easiest way for me to build that configuration?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106805</commentid>
    <comment_count>8</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-07-03 19:42:43 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (In reply to comment #6)
&gt; &gt; Seems to have broken JSC build:
&gt; 
&gt; Looking at https://build.webkit.org/console?category=AppleMac this seems to
&gt; be specific to the “LLINT CLoop” configuration. What’s the easiest way for
&gt; me to build that configuration?

From the bot&apos;s stdio:
perl ./Tools/Scripts/build-jsc --cloop --debug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106806</commentid>
    <comment_count>9</comment_count>
    <who name="">mitz</who>
    <bug_when>2015-07-03 19:44:12 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #7)
&gt; &gt; (In reply to comment #6)
&gt; &gt; &gt; Seems to have broken JSC build:
&gt; &gt; 
&gt; &gt; Looking at https://build.webkit.org/console?category=AppleMac this seems to
&gt; &gt; be specific to the “LLINT CLoop” configuration. What’s the easiest way for
&gt; &gt; me to build that configuration?
&gt; 
&gt; From the bot&apos;s stdio:
&gt; perl ./Tools/Scripts/build-jsc --cloop --debug

Thank you. I will look into this as soon as I can.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1106810</commentid>
    <comment_count>10</comment_count>
    <who name="">mitz</who>
    <bug_when>2015-07-03 19:56:26 -0700</bug_when>
    <thetext>Tried to fix the LLINT CLoop build in &lt;http://trac.webkit.org/r186273&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256117</attachid>
            <date>2015-07-03 13:00:20 -0700</date>
            <delta_ts>2015-07-03 13:22:33 -0700</delta_ts>
            <desc>Update settings and fix some warnings</desc>
            <filename>bug-146597-20150703125925.patch</filename>
            <type>text/plain</type>
            <size>55774</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTg2MjYyKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBA
CisyMDE1LTA3LTAzICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisKKyAgICAgICAg
W1hjb2RlXSBVcGRhdGUgc29tZSBidWlsZCBzZXR0aW5ncyBhcyByZWNvbW1lbmRlZCBieSBYY29k
ZSA3CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDY1
OTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENv
bmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6IEVuYWJsZWQgQ0xBTkdfV0FSTl9VTlJFQUNIQUJM
RV9DT0RFIGFuZAorICAgICAgICBHQ0NfTk9fQ09NTU9OX0JMT0NLUy4gUmVtb3ZlZCBHQ0NfTU9E
RUxfVFVOSU5HLgorCisgICAgICAgICogSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvajogVXBkYXRlZCBMYXN0VXBncmFkZUNoZWNrLgorCisgICAgICAgICogZGZnL0RGR0dy
YXBoLmg6IFR3ZWFrZWQgdGhlIGRlZmluaXRpb24gb2YgREZHX0NSQVNIIHRvIHN1cHByZXNzIHVu
cmVhY2hhYmxlIGNvZGUgd2FybmluZ3MuCisKIDIwMTUtMDctMDMgIFl1c3VrZSBTdXp1a2kgIDx1
dGF0YW5lLnRlYUBnbWFpbC5jb20+CiAKICAgICAgICAgUmVsYXggYnVpbHRpbiBKUyByZXN0cmlj
dGlvbiBhYm91dCB0cnktY2F0Y2gKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1
cmF0aW9ucy9CYXNlLnhjY29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCShyZXZpc2lvbiAxODYyNTkpCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwkod29ya2luZyBj
b3B5KQpAQCAtMzYsNiArMzYsNyBAQCBDTEFOR19XQVJOX0NYWDBYX0VYVEVOU0lPTlMgPSBOTzsK
IENMQU5HX1dBUk5fRU1QVFlfQk9EWSA9IFlFUzsKIENMQU5HX1dBUk5fRU5VTV9DT05WRVJTSU9O
ID0gWUVTOwogQ0xBTkdfV0FSTl9JTlRfQ09OVkVSU0lPTiA9IFlFUzsKK0NMQU5HX1dBUk5fVU5S
RUFDSEFCTEVfQ09ERSA9IFlFUzsKIENMQU5HX1dBUk5fX0RVUExJQ0FURV9NRVRIT0RfTUFUQ0gg
PSBZRVM7CiBDT01CSU5FX0hJRFBJX0lNQUdFUyA9IE5POwogREVCVUdfSU5GT1JNQVRJT05fRk9S
TUFUID0gZHdhcmYtd2l0aC1kc3ltOwpAQCAtNTMsNyArNTQsNyBAQCBHQ0NfRU5BQkxFX1NZTUJP
TF9TRVBBUkFUSU9OID0gTk87CiBHQ0NfRkFTVF9PQkpDX0RJU1BBVENIID0gWUVTOwogR0NDX0dF
TkVSQVRFX0RFQlVHR0lOR19TWU1CT0xTID0gWUVTOwogR0NDX0lOTElORVNfQVJFX1BSSVZBVEVf
RVhURVJOID0gWUVTOwotR0NDX01PREVMX1RVTklOR1tzZGs9bWFjb3N4Kl0gPSBHNTsKK0dDQ19O
T19DT01NT05fQkxPQ0tTID0gWUVTOwogR0NDX09CSkNfQ0FMTF9DWFhfQ0RUT1JTID0gWUVTOwog
R0NDX1BSRUNPTVBJTEVfUFJFRklYX0hFQURFUiA9IFlFUzsKIEdDQ19QUkVQUk9DRVNTT1JfREVG
SU5JVElPTlMgPSAkKERFQlVHX0RFRklORVMpIEhBVkVfSEVBREVSX0RFVEVDVElPTl9IICQoRkVB
VFVSRV9ERUZJTkVTKSAkKGluaGVyaXRlZCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
SmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagkocmV2aXNpb24gMTg2MjU5KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3Jp
cHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTY3MDUs
NyArNjcwNSw3IEBACiAJCQlhdHRyaWJ1dGVzID0gewogCQkJCUJ1aWxkSW5kZXBlbmRlbnRUYXJn
ZXRzSW5QYXJhbGxlbCA9IFlFUzsKIAkJCQlMYXN0U3dpZnRVcGRhdGVDaGVjayA9IDA3MDA7Ci0J
CQkJTGFzdFVwZ3JhZGVDaGVjayA9IDA2MDA7CisJCQkJTGFzdFVwZ3JhZGVDaGVjayA9IDA3MDA7
CiAJCQl9OwogCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IDE0OUMyNzcxMDg5MDJBRkUwMDhB
OUVGQyAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWFByb2plY3QgIkphdmFTY3Jp
cHRDb3JlIiAqLzsKIAkJCWNvbXBhdGliaWxpdHlWZXJzaW9uID0gIlhjb2RlIDMuMiI7CkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0dyYXBoLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdHcmFwaC5oCShyZXZpc2lvbiAxODYyNTkpCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0dyYXBoLmgJKHdvcmtpbmcgY29weSkKQEAgLTk1
LDkgKzk1LDEwIEBAIG5hbWVzcGFjZSBERkcgewogICAgICAgICAgICAgKG5vZGUpLCBfX0ZJTEVf
XywgX19MSU5FX18sIFdURl9QUkVUVFlfRlVOQ1RJT04sICNhc3NlcnRpb24pOyBcCiAgICAgfSB3
aGlsZSAoZmFsc2UpCiAKLSNkZWZpbmUgREZHX0NSQVNIKGdyYXBoLCBub2RlLCByZWFzb24pICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAoZ3JhcGgpLmhhbmRsZUFzc2Vy
dGlvbkZhaWx1cmUoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAg
ICAgKG5vZGUpLCBfX0ZJTEVfXywgX19MSU5FX18sIFdURl9QUkVUVFlfRlVOQ1RJT04sIChyZWFz
b24pKTsKKyNkZWZpbmUgREZHX0NSQVNIKGdyYXBoLCBub2RlLCByZWFzb24pIGRvIHsgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgKGdyYXBoKS5oYW5kbGVBc3NlcnRpb25G
YWlsdXJlKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIChu
b2RlKSwgX19GSUxFX18sIF9fTElORV9fLCBXVEZfUFJFVFRZX0ZVTkNUSU9OLCAocmVhc29uKSk7
IFwKKyAgICB9IHdoaWxlIChmYWxzZSkKIAogc3RydWN0IElubGluZVZhcmlhYmxlRGF0YSB7CiAg
ICAgSW5saW5lQ2FsbEZyYW1lKiBpbmxpbmVDYWxsRnJhbWU7CkluZGV4OiBTb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvQ2hhbmdlTG9nCShyZXZpc2lvbiAxODYyNjIpCisrKyBTb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNiBAQAorMjAxNS0wNy0wMyAg
RGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgorCisgICAgICAgIFtYY29kZV0gVXBkYXRl
IHNvbWUgYnVpbGQgc2V0dGluZ3MgYXMgcmVjb21tZW5kZWQgYnkgWGNvZGUgNworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ2NTk3CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBBTkdMRS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qOiBFbmFibGVkIENMQU5HX1dBUk5fQk9PTF9DT05WRVJTSU9OLAorICAg
ICAgICBDTEFOR19XQVJOX0VOVU1fQ09OVkVSU0lPTiwgQ0xBTkdfV0FSTl9JTlRfQ09OVkVSU0lP
TiwgRU5BQkxFX1NUUklDVF9PQkpDX01TR1NFTkQgYW5kCisgICAgICAgIEdDQ19OT19DT01NT05f
QkxPQ0tTLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzogVXBkYXRl
ZCBMYXN0VXBncmFkZUNoZWNrLgorCiAyMDE1LTA3LTAzICBQZXIgQXJuZSBWb2xsYW4gIDxwZWF2
b0BvdXRsb29rLmNvbT4KIAogICAgICAgICBbV2luQ2Fpcm9dW1dlYkdMXSBFbmFibGUgSExTTC4K
SW5kZXg6IFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQU5HTEUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gMTg2MjU5KQorKysgU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpA
QCAtMTE1OSw3ICsxMTU5LDcgQEAKIAkJCWlzYSA9IFBCWFByb2plY3Q7CiAJCQlhdHRyaWJ1dGVz
ID0gewogCQkJCUxhc3RTd2lmdFVwZGF0ZUNoZWNrID0gMDcwMDsKLQkJCQlMYXN0VXBncmFkZUNo
ZWNrID0gMDYwMDsKKwkJCQlMYXN0VXBncmFkZUNoZWNrID0gMDcwMDsKIAkJCX07CiAJCQlidWls
ZENvbmZpZ3VyYXRpb25MaXN0ID0gRkIzOUQwNzMxMjAwRUQ5MjAwMDg4RTY5IC8qIEJ1aWxkIGNv
bmZpZ3VyYXRpb24gbGlzdCBmb3IgUEJYUHJvamVjdCAiQU5HTEUiICovOwogCQkJY29tcGF0aWJp
bGl0eVZlcnNpb24gPSAiWGNvZGUgMy4yIjsKSW5kZXg6IFNvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwkocmV2aXNpb24gMTg2MjU5
KQorKysgU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZp
Zwkod29ya2luZyBjb3B5KQpAQCAtNyw4ICs3LDExIEBAIFVTRV9JTlRFUk5BTF9TREtfUmVsZWFz
ZSA9ICQoSEFWRV9JTlRFUk4KIAogQ0xBTkdfQ1hYX0xBTkdVQUdFX1NUQU5EQVJEID0gZ251Kysw
eDsKIENMQU5HX0NYWF9MSUJSQVJZID0gbGliYysrOworQ0xBTkdfV0FSTl9CT09MX0NPTlZFUlNJ
T04gPSBZRVM7CiBDTEFOR19XQVJOX0NPTlNUQU5UX0NPTlZFUlNJT04gPSBZRVM7CiBDTEFOR19X
QVJOX0VNUFRZX0JPRFkgPSBZRVM7CitDTEFOR19XQVJOX0VOVU1fQ09OVkVSU0lPTiA9IFlFUzsK
K0NMQU5HX1dBUk5fSU5UX0NPTlZFUlNJT04gPSBZRVM7CiBDTEFOR19XQVJOX19EVVBMSUNBVEVf
TUVUSE9EX01BVENIID0gWUVTOwogREVBRF9DT0RFX1NUUklQUElORyA9IFlFUzsKIERFQlVHX0lO
Rk9STUFUSU9OX0ZPUk1BVCA9IGR3YXJmLXdpdGgtZHN5bTsKQEAgLTE3LDEzICsyMCwxNCBAQCBH
Q0NfREVCVUdHSU5HX1NZTUJPTFMgPSBkZWZhdWx0OwogR0NDX0VOQUJMRV9DUFBfRVhDRVBUSU9O
UyA9IE5POwogR0NDX0VOQUJMRV9DUFBfUlRUSSA9IE5POwogR0NDX0VOQUJMRV9PQkpDX0VYQ0VQ
VElPTlMgPSBZRVM7CitFTkFCTEVfU1RSSUNUX09CSkNfTVNHU0VORCA9IFlFUzsKIEdDQ19FTkFC
TEVfT0JKQ19HQyA9ICQoR0NDX0VOQUJMRV9PQkpDX0dDXyQoUExBVEZPUk1fTkFNRSlfJChVU0Vf
SU5URVJOQUxfU0RLKSk7CiBHQ0NfRU5BQkxFX09CSkNfR0NfbWFjb3N4XyA9IE5POwogR0NDX0VO
QUJMRV9PQkpDX0dDX21hY29zeF9ZRVMgPSBzdXBwb3J0ZWQ7CiBHQ0NfRU5BQkxFX1NZTUJPTF9T
RVBBUkFUSU9OID0gTk87CiBHQ0NfRkFTVF9PQkpDX0RJU1BBVENIID0gWUVTOwogR0NDX0lOTElO
RVNfQVJFX1BSSVZBVEVfRVhURVJOID0gWUVTOwotR0NDX01PREVMX1RVTklOR1tzZGs9bWFjb3N4
Kl0gPSBHNTsKK0dDQ19OT19DT01NT05fQkxPQ0tTID0gWUVTOwogR0NDX09CSkNfQ0FMTF9DWFhf
Q0RUT1JTID0gWUVTOwogR0NDX09QVElNSVpBVElPTl9MRVZFTCA9IHM7CiBHQ0NfUFJFQ09NUElM
RV9QUkVGSVhfSEVBREVSID0gTk87CkluZGV4OiBTb3VyY2UvV1RGL0NoYW5nZUxvZwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV1RGL0NoYW5nZUxvZwkocmV2aXNpb24gMTg2MjYyKQorKysgU291cmNl
L1dURi9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNSBAQAorMjAxNS0wNy0w
MyAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgorCisgICAgICAgIFtYY29kZV0gVXBk
YXRlIHNvbWUgYnVpbGQgc2V0dGluZ3MgYXMgcmVjb21tZW5kZWQgYnkgWGNvZGUgNworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ2NTk3CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9u
cy9CYXNlLnhjY29uZmlnOiBFbmFibGVkIENMQU5HX1dBUk5fVU5SRUFDSEFCTEVfQ09ERSBhbmQK
KyAgICAgICAgR0NDX05PX0NPTU1PTl9CTE9DS1MuIFJlbW92ZWQgR0NDX01PREVMX1RVTklORy4K
KworICAgICAgICAqIFdURi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBVcGRhdGVkIExhc3RV
cGdyYWRlQ2hlY2suCisKIDIwMTUtMDctMDEgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5z
ZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZS1lbmFibGUgV2ViR0wgb24gV2luQ2Fpcm8KSW5k
ZXg6IFNvdXJjZS9XVEYvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcJKHJldmlzaW9uIDE4NjI1
OSkKKysrIFNvdXJjZS9XVEYvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwkod29ya2luZyBj
b3B5KQpAQCAtMzYsNiArMzYsNyBAQCBDTEFOR19XQVJOX0NYWDBYX0VYVEVOU0lPTlMgPSBOTzsK
IENMQU5HX1dBUk5fRU1QVFlfQk9EWSA9IFlFUzsKIENMQU5HX1dBUk5fRU5VTV9DT05WRVJTSU9O
ID0gWUVTOwogQ0xBTkdfV0FSTl9JTlRfQ09OVkVSU0lPTiA9IFlFUzsKK0NMQU5HX1dBUk5fVU5S
RUFDSEFCTEVfQ09ERSA9IFlFUzsKIENMQU5HX1dBUk5fX0RVUExJQ0FURV9NRVRIT0RfTUFUQ0gg
PSBZRVM7CiBDT01CSU5FX0hJRFBJX0lNQUdFUyA9IE5POwogREVCVUdfSU5GT1JNQVRJT05fRk9S
TUFUID0gZHdhcmYtd2l0aC1kc3ltOwpAQCAtNTMsNyArNTQsNyBAQCBHQ0NfRU5BQkxFX1NZTUJP
TF9TRVBBUkFUSU9OID0gTk87CiBHQ0NfRkFTVF9PQkpDX0RJU1BBVENIID0gWUVTOwogR0NDX0dF
TkVSQVRFX0RFQlVHR0lOR19TWU1CT0xTID0gWUVTOwogR0NDX0lOTElORVNfQVJFX1BSSVZBVEVf
RVhURVJOID0gWUVTOwotR0NDX01PREVMX1RVTklOR1tzZGs9bWFjb3N4Kl0gPSBHNTsKK0dDQ19O
T19DT01NT05fQkxPQ0tTID0gWUVTOwogR0NDX09CSkNfQ0FMTF9DWFhfQ0RUT1JTID0gWUVTOwog
R0NDX1BSRUNPTVBJTEVfUFJFRklYX0hFQURFUiA9IFlFUzsKIEdDQ19QUkVQUk9DRVNTT1JfREVG
SU5JVElPTlMgPSAkKERFQlVHX0RFRklORVMpIEhBVkVfSEVBREVSX0RFVEVDVElPTl9IICQoaW5o
ZXJpdGVkKTsKSW5kZXg6IFNvdXJjZS9XVEYvV1RGLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagko
cmV2aXNpb24gMTg2MjU5KQorKysgU291cmNlL1dURi9XVEYueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagkod29ya2luZyBjb3B5KQpAQCAtMTI2NSw3ICsxMjY1LDcgQEAKIAkJCWlzYSA9IFBCWFBy
b2plY3Q7CiAJCQlhdHRyaWJ1dGVzID0gewogCQkJCUxhc3RTd2lmdFVwZGF0ZUNoZWNrID0gMDcw
MDsKLQkJCQlMYXN0VXBncmFkZUNoZWNrID0gMDYwMDsKKwkJCQlMYXN0VXBncmFkZUNoZWNrID0g
MDcwMDsKIAkJCX07CiAJCQlidWlsZENvbmZpZ3VyYXRpb25MaXN0ID0gNUQyNDdCNUMxNDY4OUI4
NjAwRTc4Qjc2IC8qIEJ1aWxkIGNvbmZpZ3VyYXRpb24gbGlzdCBmb3IgUEJYUHJvamVjdCAiV1RG
IiAqLzsKIAkJCWNvbXBhdGliaWxpdHlWZXJzaW9uID0gIlhjb2RlIDMuMiI7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCShyZXZpc2lvbiAxODYyNjIpCisrKyBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJKHdvcmtp
bmcgY29weSkKQEAgLTEsMyArMSw1NyBAQAorMjAxNS0wNy0wMyAgRGFuIEJlcm5zdGVpbiAgPG1p
dHpAYXBwbGUuY29tPgorCisgICAgICAgIFtYY29kZV0gVXBkYXRlIHNvbWUgYnVpbGQgc2V0dGlu
Z3MgYXMgcmVjb21tZW5kZWQgYnkgWGNvZGUgNworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ2NTk3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOiBFbmFi
bGVkIENMQU5HX1dBUk5fVU5SRUFDSEFCTEVfQ09ERSwKKyAgICAgICAgR0NDX1dBUk5fVU5ERUNM
QVJFRF9TRUxFQ1RPUiwgYW5kIEdDQ19OT19DT01NT05fQkxPQ0tTLiBSZW1vdmVkIEdDQ19NT0RF
TF9UVU5JTkcuCisKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6
IFVwZGF0ZWQgTGFzdFVwZ3JhZGVDaGVjay4gRGlzYWJsZWQgLVd1bnJlYWNoYWJsZS1jb2RlCisg
ICAgICAgIGZvciB0d28gYmlzb24tZ2VuZXJhdGVkIHNvdXJjZSBmaWxlcy4gVXBkYXRlZCBmb3Ig
cmVuYW1lIG9mIFdlYlNjcmlwdE9iamVjdC5oLgorCisgICAgICAgICogYmluZGluZ3Mvb2JqYy9X
ZWJTY3JpcHRPYmplY3QubW06CisgICAgICAgICgtW1dlYlVuZGVmaW5lZCBkZWFsbG9jXSk6IFJl
bW92ZWQgdW5yZWFjaGFibGUgY29kZSBhbmQgc3VwcHJlc3NlZCB3YXJuaW5nIGFib3V0IG5vdCBj
YWxsaW5nCisgICAgICAgIHN1cGVyLgorICAgICAgICAqIGJyaWRnZS9vYmpjL1dlYlNjcmlwdE9i
amVjdC5oOiBSZW5hbWVkIHRvIFdlYlNjcmlwdE9iamVjdFByb3RvY29sLmggdG8gZW5hYmxlZCBp
bmxjdWRpbmcKKyAgICAgICAgdGhlIG90aGVyIFdlYlNjcmlwdE9iamVjdC5oLgorICAgICAgICAq
IGJyaWRnZS9vYmpjL1dlYlNjcmlwdE9iamVjdFByb3RvY29sLmg6IFJlbmFtZWQgZnJvbSBXZWJT
Y3JpcHRPYmplY3QuaC4KKworICAgICAgICAqIGJyaWRnZS9vYmpjL29iamNfY2xhc3MubW06IFVw
ZGF0ZWQgZm9yIHJlbmFtZSBhbmQgaW5jbHVkZWQgV2ViU2NyaXB0T2JqZWN0LmggYmVjYXVzZSB3
ZQorICAgICAgICB1c2Ugc2VsZWN0b3JzIGRlY2xhcmVkIGluIHRoYXQgZmlsZS4KKworICAgICAg
ICAqIGJyaWRnZS9vYmpjL29iamNfaW5zdGFuY2UubW06IERpdHRvLgorICAgICAgICAoT2JqQ1J1
bnRpbWVNZXRob2Q6OmNyZWF0ZSk6IFJlc29sdmVkIGFtYmlndWl0eSBiZXR3ZWVuIEpTQzo6SlNW
YWx1ZSBhbmQgdGhlIE9iamVjdGl2ZS1DCisgICAgICAgIEpTVmFsdWUgY2xhc3MuCisgICAgICAg
IChPYmpDUnVudGltZU1ldGhvZDo6Y3JlYXRlU3RydWN0dXJlKTogRGl0dG8uCisgICAgICAgIChP
YmpjSW5zdGFuY2U6Omludm9rZU1ldGhvZCk6IERpdHRvLgorICAgICAgICAoT2JqY0luc3RhbmNl
OjppbnZva2VPYmpjTWV0aG9kKTogRGl0dG8uCisgICAgICAgIChPYmpjSW5zdGFuY2U6Omludm9r
ZURlZmF1bHRNZXRob2QpOiBEaXR0by4KKyAgICAgICAgKE9iamNJbnN0YW5jZTo6c2V0VmFsdWVP
ZlVuZGVmaW5lZEZpZWxkKTogRGl0dG8uCisgICAgICAgIChPYmpjSW5zdGFuY2U6OmdldFZhbHVl
T2ZVbmRlZmluZWRGaWVsZCk6IERpdHRvLgorICAgICAgICAoT2JqY0luc3RhbmNlOjpkZWZhdWx0
VmFsdWUpOiBEaXR0by4KKyAgICAgICAgKE9iamNJbnN0YW5jZTo6c3RyaW5nVmFsdWUpOiBEaXR0
by4KKyAgICAgICAgKE9iamNJbnN0YW5jZTo6bnVtYmVyVmFsdWUpOiBEaXR0by4KKyAgICAgICAg
KE9iamNJbnN0YW5jZTo6Ym9vbGVhblZhbHVlKTogRGl0dG8uCisgICAgICAgIChPYmpjSW5zdGFu
Y2U6OnZhbHVlT2YpOiBEaXR0bywKKworICAgICAgICAqIGJyaWRnZS9vYmpjL29iamNfcnVudGlt
ZS5oOiBNb3ZlZCBkZWZpbml0aW9uIG9mIGlzRmFsbGJhY2tNZXRob2QoKSBmcm9tIGhlcmUgdG8g
dGhlCisgICAgICAgIGltcGxlbWVudGF0aW9uLgorICAgICAgICAqIGJyaWRnZS9vYmpjL29iamNf
cnVudGltZS5tbTogVXBkYXRlZCBmb3IgcmVuYW1lIGFuZCBpbmNsdWRlZCBXZWJTY3JpcHRPYmpl
Y3QuaCBiZWNhdXNlIHdlCisgICAgICAgIHVzZSBzZWxlY3RvcnMgZGVjbGFyZWQgaW4gdGhhdCBm
aWxlLgorICAgICAgICAoSlNDOjpCaW5kaW5nczo6T2JqY01ldGhvZDo6aXNGYWxsYmFja01ldGhv
ZCk6IE1vdmVkIGRlZmluaXRpb24gZnJvbSB0aGUgaGVhZGVyIHRvIGhlcmUuCisKKyAgICAgICAg
KiBicmlkZ2Uvb2JqYy9vYmpjX3V0aWxpdHkubW06IFVwZGF0ZWQgZm9yIHJlbmFtZS4KKworICAg
ICAgICAqIGNzc2ppdC9TZWxlY3RvckNvbXBpbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNl
bGVjdG9yQ29tcGlsZXI6OmFkZFNjcm9sbGJhclBzZXVkb0NsYXNzVHlwZSk6IFJlbW92ZWQgdW5y
ZWFjaGFibGUgY29kZS4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9NZWRpYVBs
YXllclByaXZhdGVRVEtpdC5tbToKKyAgICAgICAgQWRkZWQgZGVjbGFyYXRpb25zIHRvIHRoZSBX
ZWJDb3JlTW92aWVPYnNlcnZlciBpbnRlcmZhY2UuCisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBs
YXllclByaXZhdGVRVEtpdDo6ZGlzYWJsZVVuc3VwcG9ydGVkVHJhY2tzKTogU3VwcHJlc3NlZAor
ICAgICAgICAtV3VuZGVjbGFyZWQtc2VsZWN0b3IgYXJvdW5kIGludm9jYXRpb24gb2YgYSBzZWxl
Y3RvciB0aGF0IGlzIG5vdCBkZWNsYXJlZCBhbnl3aGVyZS4KKwogMjAxNS0wNy0wMyAgQ3NhYmEg
T3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQub3JnPgogCiAgICAgICAgIEZpeCB0aGUgIUVOQUJM
RShWSURFTykgYnVpbGQgYWZ0ZXIgcjE4NjA1NApJbmRleDogU291cmNlL1dlYkNvcmUvQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Db25m
aWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCShyZXZpc2lvbiAxODYyNTkpCisrKyBTb3VyY2UvV2Vi
Q29yZS9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCSh3b3JraW5nIGNvcHkpCkBAIC0zNiw3
ICszNiw5IEBAIENMQU5HX1dBUk5fQ1hYMFhfRVhURU5TSU9OUyA9IE5POwogQ0xBTkdfV0FSTl9F
TVBUWV9CT0RZID0gWUVTOwogQ0xBTkdfV0FSTl9FTlVNX0NPTlZFUlNJT04gPSBZRVM7CiBDTEFO
R19XQVJOX0lOVF9DT05WRVJTSU9OID0gWUVTOworQ0xBTkdfV0FSTl9VTlJFQUNIQUJMRV9DT0RF
ID0gWUVTOwogQ0xBTkdfV0FSTl9fRFVQTElDQVRFX01FVEhPRF9NQVRDSCA9IFlFUzsKK0dDQ19X
QVJOX1VOREVDTEFSRURfU0VMRUNUT1IgPSBZRVM7CiBDT01CSU5FX0hJRFBJX0lNQUdFUyA9IE5P
OwogREVCVUdfSU5GT1JNQVRJT05fRk9STUFUID0gZHdhcmYtd2l0aC1kc3ltOwogRU5BQkxFX1NU
UklDVF9PQkpDX01TR1NFTkQgPSBZRVM7CkBAIC01Miw3ICs1NCw3IEBAIEdDQ19FTkFCTEVfT0JK
Q19HQ19tYWNvc3hfWUVTID0gc3VwcG9ydGUKIEdDQ19FTkFCTEVfU1lNQk9MX1NFUEFSQVRJT04g
PSBOTzsKIEdDQ19GQVNUX09CSkNfRElTUEFUQ0ggPSBZRVM7CiBHQ0NfR0VORVJBVEVfREVCVUdH
SU5HX1NZTUJPTFMgPSBZRVM7Ci1HQ0NfTU9ERUxfVFVOSU5HW3Nkaz1tYWNvc3gqXSA9IEc1Owor
R0NDX05PX0NPTU1PTl9CTE9DS1MgPSBZRVM7CiBHQ0NfT0JKQ19DQUxMX0NYWF9DRFRPUlMgPSBZ
RVM7CiBHQ0NfUFJFQ09NUElMRV9QUkVGSVhfSEVBREVSID0gWUVTOwogR0NDX1NZTUJPTFNfUFJJ
VkFURV9FWFRFUk4gPSBZRVM7CkBAIC03NCw3ICs3Niw2IEBAIEdDQ19XQVJOX0FCT1VUX01JU1NJ
TkdfUFJPVE9UWVBFUyA9IFlFUzsKIEdDQ19XQVJOX0FCT1VUX1JFVFVSTl9UWVBFID0gWUVTOwog
R0NDX1dBUk5fTk9OX1ZJUlRVQUxfREVTVFJVQ1RPUiA9IFlFUzsKIEdDQ19XQVJOX1NJR05fQ09N
UEFSRSA9IFlFUzsKLUdDQ19XQVJOX1VOREVDTEFSRURfU0VMRUNUT1IgPSBOTzsKIEdDQ19XQVJO
X1VOSU5JVElBTElaRURfQVVUT1MgPSBZRVM7CiBHQ0NfV0FSTl9VTlVTRURfRlVOQ1RJT04gPSBZ
RVM7CiBHQ0NfV0FSTl9VTlVTRURfVkFSSUFCTEUgPSBZRVM7CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxODYy
NTkpCisrKyBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJ
KHdvcmtpbmcgY29weSkKQEAgLTcyMyw3ICs3MjMsNyBAQAogCQkxQTU2OUQxODBEN0UyQjgyMDA3
QzM5ODMgLyogb2JqY19ydW50aW1lLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMUE1NjlDRTkwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfcnVudGltZS5t
bSAqLzsgfTsKIAkJMUE1NjlEMTkwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfdXRpbGl0eS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE1NjlDRUEwRDdF
MkI4MjAwN0MzOTgzIC8qIG9iamNfdXRpbGl0eS5oICovOyB9OwogCQkxQTU2OUQxQTBEN0UyQjgy
MDA3QzM5ODMgLyogb2JqY191dGlsaXR5Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUE1NjlDRUIwRDdFMkI4MjAwN0MzOTgzIC8qIG9iamNfdXRpbGl0
eS5tbSAqLzsgfTsKLQkJMUE1NjlEMUIwRDdFMkI4MjAwN0MzOTgzIC8qIFdlYlNjcmlwdE9iamVj
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE1NjlD
RUMwRDdFMkI4MjAwN0MzOTgzIC8qIFdlYlNjcmlwdE9iamVjdC5oICovOyB9OworCQkxQTU2OUQx
QjBEN0UyQjgyMDA3QzM5ODMgLyogV2ViU2NyaXB0T2JqZWN0UHJvdG9jb2wuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNTY5Q0VDMEQ3RTJCODIwMDdD
Mzk4MyAvKiBXZWJTY3JpcHRPYmplY3RQcm90b2NvbC5oICovOyB9OwogCQkxQTU2OUQxRTBEN0Uy
QjgyMDA3QzM5ODMgLyogcnVudGltZV9hcnJheS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTU2OUNFRjBEN0UyQjgyMDA3QzM5ODMgLyogcnVudGlt
ZV9hcnJheS5jcHAgKi87IH07CiAJCTFBNTY5RDFGMEQ3RTJCODIwMDdDMzk4MyAvKiBydW50aW1l
X2FycmF5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAx
QTU2OUNGMDBEN0UyQjgyMDA3QzM5ODMgLyogcnVudGltZV9hcnJheS5oICovOyB9OwogCQkxQTU2
OUQyMDBEN0UyQjgyMDA3QzM5ODMgLyogcnVudGltZV9tZXRob2QuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE1NjlDRjEwRDdFMkI4MjAwN0MzOTgz
IC8qIHJ1bnRpbWVfbWV0aG9kLmNwcCAqLzsgfTsKQEAgLTczOSw3ICs3MzksNyBAQAogCQkxQTc1
MEQ4RDBBOTBFNTIxMDAwRkYyMTUgLyogSlNOb2RlSXRlcmF0b3IuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE3NTBEOEIwQTkwRTUyMTAwMEZGMjE1
IC8qIEpTTm9kZUl0ZXJhdG9yLmNwcCAqLzsgfTsKIAkJMUE3NTBEOEUwQTkwRTUyMTAwMEZGMjE1
IC8qIEpTTm9kZUl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAxQTc1MEQ4QzBBOTBFNTIxMDAwRkYyMTUgLyogSlNOb2RlSXRlcmF0b3IuaCAq
LzsgfTsKIAkJMUE3NTBERDQwQTkwRTcyOTAwMEZGMjE1IC8qIEpTTm9kZUl0ZXJhdG9yQ3VzdG9t
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNzUw
REQzMEE5MEU3MjkwMDBGRjIxNSAvKiBKU05vZGVJdGVyYXRvckN1c3RvbS5jcHAgKi87IH07Ci0J
CTFBNzYyOUQ1MEEwNzQyNTEwMDk4OUY1QiAvKiBYUGF0aEdyYW1tYXIuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE3NjI5RDMwQTA3NDI1MTAwOTg5
RjVCIC8qIFhQYXRoR3JhbW1hci5jcHAgKi87IH07CisJCTFBNzYyOUQ1MEEwNzQyNTEwMDk4OUY1
QiAvKiBYUGF0aEdyYW1tYXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMUE3NjI5RDMwQTA3NDI1MTAwOTg5RjVCIC8qIFhQYXRoR3JhbW1hci5jcHAg
Ki87IHNldHRpbmdzID0ge0NPTVBJTEVSX0ZMQUdTID0gIi1Xbm8tdW5yZWFjaGFibGUtY29kZSI7
IH07IH07CiAJCTFBNzYyOUQ2MEEwNzQyNTEwMDk4OUY1QiAvKiBYUGF0aEdyYW1tYXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBNzYyOUQ0MEEwNzQy
NTEwMDk4OUY1QiAvKiBYUGF0aEdyYW1tYXIuaCAqLzsgfTsKIAkJMUE3NjJDNzMwQTA3NEYyNjAw
OTg5RjVCIC8qIEpTWFBhdGhFdmFsdWF0b3IuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUE3NjJDNkIwQTA3NEYyNjAwOTg5RjVCIC8qIEpTWFBhdGhF
dmFsdWF0b3IuY3BwICovOyB9OwogCQkxQTc2MkM3NDBBMDc0RjI2MDA5ODlGNUIgLyogSlNYUGF0
aEV2YWx1YXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMUE3NjJDNkMwQTA3NEYyNjAwOTg5RjVCIC8qIEpTWFBhdGhFdmFsdWF0b3IuaCAqLzsgfTsK
QEAgLTIyMzMsNyArMjIzMyw3IEBACiAJCTYzRDdCMzJEMEU3OENEM0YwMEY3NjE3QyAvKiBOb2Rl
UmVuZGVyU3R5bGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDYzRDdCMzJDMEU3OENEM0YwMEY3NjE3QyAvKiBOb2RlUmVuZGVyU3R5bGUuaCAqLzsgfTsK
IAkJNjNGNUQ0RjcwRThDNEI3MTAwQzBCRDA0IC8qIEVsZW1lbnRSYXJlRGF0YS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNjM3QjdBREUwRTg3NjdCODAw
RTMyMTk0IC8qIEVsZW1lbnRSYXJlRGF0YS5oICovOyB9OwogCQk2NTBGNTNEQzA5RDE1RERBMDBD
OUIwQzggLyogQ1NTR3JhbW1hci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNjUwRjUzREIwOUQxNUREQTAwQzlCMEM4IC8qIENTU0dyYW1tYXIuaCAqLzsg
fTsKLQkJNjUwRjUzREQwOUQxNURERjAwQzlCMEM4IC8qIENTU0dyYW1tYXIuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNjU2NTgxNDQwOUQxMzA0MzAw
MEU2MUQ3IC8qIENTU0dyYW1tYXIuY3BwICovOyB9OworCQk2NTBGNTNERDA5RDE1RERGMDBDOUIw
QzggLyogQ1NTR3JhbW1hci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA2NTY1ODE0NDA5RDEzMDQzMDAwRTYxRDcgLyogQ1NTR3JhbW1hci5jcHAgKi87
IHNldHRpbmdzID0ge0NPTVBJTEVSX0ZMQUdTID0gIi1Xbm8tdW5yZWFjaGFibGUtY29kZSI7IH07
IH07CiAJCTY1MEZCRjJBMEQ5QUYwNDcwMDhGQzI5MiAvKiBTVkdIS2VybkVsZW1lbnQuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNjUwRkJGMjcwRDlB
RjA0NjAwOEZDMjkyIC8qIFNWR0hLZXJuRWxlbWVudC5jcHAgKi87IH07CiAJCTY1MEZCRjJCMEQ5
QUYwNDcwMDhGQzI5MiAvKiBTVkdIS2VybkVsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDY1MEZCRjI4MEQ5QUYwNDcwMDhGQzI5MiAvKiBTVkdI
S2VybkVsZW1lbnQuaCAqLzsgfTsKIAkJNjUxNUVDOTEwRDk3MjNGRjAwNjNENDlBIC8qIEpTU1ZH
QWx0R2x5cGhFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDY1MTVFQzhGMEQ5NzIzRkYwMDYzRDQ5QSAvKiBKU1NWR0FsdEdseXBoRWxlbWVu
dC5jcHAgKi87IH07CkBAIC03ODQ1LDcgKzc4NDUsNyBAQAogCQkxQTU2OUNFOTBEN0UyQjgyMDA3
QzM5ODMgLyogb2JqY19ydW50aW1lLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gb2JqY19ydW50aW1lLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkx
QTU2OUNFQTBEN0UyQjgyMDA3QzM5ODMgLyogb2JqY191dGlsaXR5LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IG9iamNfdXRpbGl0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkxQTU2OUNFQjBEN0UyQjgyMDA3QzM5ODMgLyogb2JqY191dGlsaXR5Lm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gb2JqY191dGlsaXR5Lm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkxQTU2OUNFQzBEN0UyQjgyMDA3QzM5ODMgLyogV2Vi
U2NyaXB0T2JqZWN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlNjcmlw
dE9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTU2OUNFQzBEN0UyQjgy
MDA3QzM5ODMgLyogV2ViU2NyaXB0T2JqZWN0UHJvdG9jb2wuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gV2ViU2NyaXB0T2JqZWN0UHJvdG9jb2wuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJMUE1NjlDRUYwRDdFMkI4MjAwN0MzOTgzIC8qIHJ1bnRpbWVfYXJyYXku
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gcnVudGltZV9hcnJheS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBNTY5Q0YwMEQ3RTJCODIwMDdDMzk4
MyAvKiBydW50aW1lX2FycmF5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IHJ1
bnRpbWVfYXJyYXkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE1NjlDRjEwRDdF
MkI4MjAwN0MzOTgzIC8qIHJ1bnRpbWVfbWV0aG9kLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IHJ1bnRpbWVfbWV0aG9kLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTE1MzU2LDcgKzE1MzU2LDcgQEAKIAkJCQkxQTU2OUNFQjBEN0UyQjgyMDA3QzM5
ODMgLyogb2JqY191dGlsaXR5Lm1tICovLAogCQkJCUUxNjk4MjU0MTEzNDYyOUQwMDg5NDExNSAv
KiBPYmpDUnVudGltZU9iamVjdC5oICovLAogCQkJCUUxNjk4MjVGMTEzNDYzNkEwMDg5NDExNSAv
KiBPYmpDUnVudGltZU9iamVjdC5tbSAqLywKLQkJCQkxQTU2OUNFQzBEN0UyQjgyMDA3QzM5ODMg
LyogV2ViU2NyaXB0T2JqZWN0LmggKi8sCisJCQkJMUE1NjlDRUMwRDdFMkI4MjAwN0MzOTgzIC8q
IFdlYlNjcmlwdE9iamVjdFByb3RvY29sLmggKi8sCiAJCQkpOwogCQkJcGF0aCA9IG9iamM7CiAJ
CQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwpAQCAtMjcyNTYsNyArMjcyNTYsNyBAQAogCQkJCUE1
MDJDNURGMTMwNDlCMzUwMEZDN0Q1MyAvKiBXZWJTYWZlR0NBY3Rpdml0eUNhbGxiYWNrSU9TLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlDRTk1MjA4QTE4MTFCNDc1MDA3QTUzOTIgLyogV2ViU2FmZUlu
Y3JlbWVudGFsU3dlZXBlcklPUy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUNBRjM0ODEwQTZDNDA1
MjAwQUJFMDZFIC8qIFdlYlNjcmlwdE9iamVjdC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMUE1NjlE
MUIwRDdFMkI4MjAwN0MzOTgzIC8qIFdlYlNjcmlwdE9iamVjdC5oIGluIEhlYWRlcnMgKi8sCisJ
CQkJMUE1NjlEMUIwRDdFMkI4MjAwN0MzOTgzIC8qIFdlYlNjcmlwdE9iamVjdFByb3RvY29sLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkxQ0FGMzQ4MzBBNkM0MDUyMDBBQkUwNkUgLyogV2ViU2NyaXB0
T2JqZWN0UHJpdmF0ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTdBQUJEMUIxNEZBMDlENTAwNzQ1
N0FFIC8qIFdlYlNvY2tldC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTdBQUJEMUUxNEZBMDlENTAw
NzQ1N0FFIC8qIFdlYlNvY2tldENoYW5uZWwuaCBpbiBIZWFkZXJzICovLApAQCAtMjc0NTEsNyAr
Mjc0NTEsNyBAQAogCQkJYXR0cmlidXRlcyA9IHsKIAkJCQlCdWlsZEluZGVwZW5kZW50VGFyZ2V0
c0luUGFyYWxsZWwgPSBZRVM7CiAJCQkJTGFzdFN3aWZ0VXBkYXRlQ2hlY2sgPSAwNzAwOwotCQkJ
CUxhc3RVcGdyYWRlQ2hlY2sgPSAwNjAwOworCQkJCUxhc3RVcGdyYWRlQ2hlY2sgPSAwNzAwOwog
CQkJfTsKIAkJCWJ1aWxkQ29uZmlndXJhdGlvbkxpc3QgPSAxNDlDMjg0MzA4OTAyQjExMDA4QTlF
RkMgLyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhQcm9qZWN0ICJXZWJDb3JlIiAq
LzsKIAkJCWNvbXBhdGliaWxpdHlWZXJzaW9uID0gIlhjb2RlIDMuMiI7CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9vYmpjL1dlYlNjcmlwdE9iamVjdC5tbQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9vYmpjL1dlYlNjcmlwdE9iamVjdC5tbQkocmV2aXNpb24g
MTg2MjU5KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvb2JqYy9XZWJTY3JpcHRPYmplY3Qu
bW0JKHdvcmtpbmcgY29weSkKQEAgLTY3MiwxMSArNjcyLDEzIEBAIC0gKGlkKWF1dG9yZWxlYXNl
CiAgICAgcmV0dXJuIHNlbGY7CiB9CiAKKyNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBwdXNoCisj
cHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgaWdub3JlZCAiLVdvYmpjLW1pc3Npbmctc3VwZXItY2Fs
bHMiCiAtICh2b2lkKWRlYWxsb2MKIHsKICAgICByZXR1cm47Ci0gICAgW3N1cGVyIGRlYWxsb2Nd
OyAvLyBtYWtlIC1XZGVhbGxvYy1jaGVjayBoYXBweQogfQorI3ByYWdtYSBjbGFuZyBkaWFnbm9z
dGljIHBvcAogCiArIChXZWJVbmRlZmluZWQgKil1bmRlZmluZWQKIHsKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2JyaWRnZS9vYmpjL1dlYlNjcmlwdE9iamVjdC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL2JyaWRnZS9vYmpjL1dlYlNjcmlwdE9iamVjdC5oCShyZXZpc2lvbiAxODYyNTkp
CisrKyBTb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9XZWJTY3JpcHRPYmplY3QuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMSw0NCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA2IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
Ci0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuIAotICovCi0KLSNpbXBvcnQgPEZvdW5kYXRpb24vRm91bmRhdGlvbi5oPgotI2ltcG9y
dCAicnVudGltZV9yb290LmgiCi0KLUBjbGFzcyBXZWJVbmRlZmluZWQ7Ci0KLUBwcm90b2NvbCBX
ZWJTY3JpcHRPYmplY3QKLSsgKE5TU3RyaW5nICopd2ViU2NyaXB0TmFtZUZvclNlbGVjdG9yOihT
RUwpYVNlbGVjdG9yOwotKyAoQk9PTClpc1NlbGVjdG9yRXhjbHVkZWRGcm9tV2ViU2NyaXB0OihT
RUwpYVNlbGVjdG9yOwotKyAoTlNTdHJpbmcgKil3ZWJTY3JpcHROYW1lRm9yS2V5Oihjb25zdCBj
aGFyICopbmFtZTsKLSsgKEJPT0wpaXNLZXlFeGNsdWRlZEZyb21XZWJTY3JpcHQ6KGNvbnN0IGNo
YXIgKiluYW1lOwotCi0rIChpZClfY29udmVydFZhbHVlVG9PYmpjVmFsdWU6KEpTQzo6SlNWYWx1
ZSl2YWx1ZSBvcmlnaW5Sb290T2JqZWN0OihKU0M6OkJpbmRpbmdzOjpSb290T2JqZWN0Kilvcmln
aW5Sb290T2JqZWN0IHJvb3RPYmplY3Q6KEpTQzo6QmluZGluZ3M6OlJvb3RPYmplY3QqKXJvb3RP
YmplY3Q7Ci0tIChpZClfaW5pdFdpdGhKU09iamVjdDooSlNDOjpKU09iamVjdCopaW1wIG9yaWdp
blJvb3RPYmplY3Q6KFBhc3NSZWZQdHI8SlNDOjpCaW5kaW5nczo6Um9vdE9iamVjdD4pb3JpZ2lu
Um9vdE9iamVjdCByb290T2JqZWN0OihQYXNzUmVmUHRyPEpTQzo6QmluZGluZ3M6OlJvb3RPYmpl
Y3Q+KXJvb3RPYmplY3Q7Ci0tIChKU0M6OkpTT2JqZWN0ICopX2ltcDsKLUBlbmQKLQotQHByb3Rv
Y29sIFdlYlVuZGVmaW5lZAotKyAoV2ViVW5kZWZpbmVkICopdW5kZWZpbmVkOwotQGVuZApJbmRl
eDogU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvV2ViU2NyaXB0T2JqZWN0UHJvdG9jb2wuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9XZWJTY3JpcHRPYmplY3RQ
cm90b2NvbC5oCShyZXZpc2lvbiAxODYyNTkpCShmcm9tIFNvdXJjZS9XZWJDb3JlL2JyaWRnZS9v
YmpjL1dlYlNjcmlwdE9iamVjdC5oOjE4NjI1OSkKKysrIFNvdXJjZS9XZWJDb3JlL2JyaWRnZS9v
YmpjL1dlYlNjcmlwdE9iamVjdFByb3RvY29sLmgJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0
NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAwNiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgor
ICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqLworCisjaW1w
b3J0IDxGb3VuZGF0aW9uL0ZvdW5kYXRpb24uaD4KKyNpbXBvcnQgInJ1bnRpbWVfcm9vdC5oIgor
CitAY2xhc3MgV2ViVW5kZWZpbmVkOworCitAcHJvdG9jb2wgV2ViU2NyaXB0T2JqZWN0CisrIChO
U1N0cmluZyAqKXdlYlNjcmlwdE5hbWVGb3JTZWxlY3RvcjooU0VMKWFTZWxlY3RvcjsKKysgKEJP
T0wpaXNTZWxlY3RvckV4Y2x1ZGVkRnJvbVdlYlNjcmlwdDooU0VMKWFTZWxlY3RvcjsKKysgKE5T
U3RyaW5nICopd2ViU2NyaXB0TmFtZUZvcktleTooY29uc3QgY2hhciAqKW5hbWU7CisrIChCT09M
KWlzS2V5RXhjbHVkZWRGcm9tV2ViU2NyaXB0Oihjb25zdCBjaGFyICopbmFtZTsKKworKyAoaWQp
X2NvbnZlcnRWYWx1ZVRvT2JqY1ZhbHVlOihKU0M6OkpTVmFsdWUpdmFsdWUgb3JpZ2luUm9vdE9i
amVjdDooSlNDOjpCaW5kaW5nczo6Um9vdE9iamVjdCopb3JpZ2luUm9vdE9iamVjdCByb290T2Jq
ZWN0OihKU0M6OkJpbmRpbmdzOjpSb290T2JqZWN0Kilyb290T2JqZWN0OworLSAoaWQpX2luaXRX
aXRoSlNPYmplY3Q6KEpTQzo6SlNPYmplY3QqKWltcCBvcmlnaW5Sb290T2JqZWN0OihQYXNzUmVm
UHRyPEpTQzo6QmluZGluZ3M6OlJvb3RPYmplY3Q+KW9yaWdpblJvb3RPYmplY3Qgcm9vdE9iamVj
dDooUGFzc1JlZlB0cjxKU0M6OkJpbmRpbmdzOjpSb290T2JqZWN0Pilyb290T2JqZWN0OworLSAo
SlNDOjpKU09iamVjdCAqKV9pbXA7CitAZW5kCisKK0Bwcm90b2NvbCBXZWJVbmRlZmluZWQKKysg
KFdlYlVuZGVmaW5lZCAqKXVuZGVmaW5lZDsKK0BlbmQKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Jy
aWRnZS9vYmpjL29iamNfY2xhc3MubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYnJp
ZGdlL29iamMvb2JqY19jbGFzcy5tbQkocmV2aXNpb24gMTg2MjU5KQorKysgU291cmNlL1dlYkNv
cmUvYnJpZGdlL29iamMvb2JqY19jbGFzcy5tbQkod29ya2luZyBjb3B5KQpAQCAtMjgsNiArMjgs
NyBAQAogCiAjaW5jbHVkZSAib2JqY19pbnN0YW5jZS5oIgogI2luY2x1ZGUgIldlYlNjcmlwdE9i
amVjdC5oIgorI2luY2x1ZGUgIldlYlNjcmlwdE9iamVjdFByb3RvY29sLmgiCiAKIG5hbWVzcGFj
ZSBKU0MgewogbmFtZXNwYWNlIEJpbmRpbmdzIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JyaWRn
ZS9vYmpjL29iamNfaW5zdGFuY2UubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYnJp
ZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbQkocmV2aXNpb24gMTg2MjU5KQorKysgU291cmNlL1dl
YkNvcmUvYnJpZGdlL29iamMvb2JqY19pbnN0YW5jZS5tbQkod29ya2luZyBjb3B5KQpAQCAtMzAs
NiArMzAsNyBAQAogI2ltcG9ydCAiTlNQb2ludGVyRnVuY3Rpb25zU1BJLmgiCiAjaW1wb3J0ICJP
YmpDUnVudGltZU9iamVjdC5oIgogI2ltcG9ydCAiV2ViU2NyaXB0T2JqZWN0LmgiCisjaW1wb3J0
ICJXZWJTY3JpcHRPYmplY3RQcm90b2NvbC5oIgogI2ltcG9ydCAicnVudGltZS9GdW5jdGlvblBy
b3RvdHlwZS5oIgogI2ltcG9ydCAicnVudGltZV9tZXRob2QuaCIKICNpbXBvcnQgPG9iamMvb2Jq
Yy1hdXRvLmg+CkBAIC0xOTQsNyArMTk1LDcgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gcnVu
dGltZU1ldGhvZDsKICAgICB9CiAKLSAgICBzdGF0aWMgU3RydWN0dXJlKiBjcmVhdGVTdHJ1Y3R1
cmUoVk0mIHZtLCBKU0M6OkpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJv
dG90eXBlKQorICAgIHN0YXRpYyBTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShWTSYgdm0sIEpT
Qzo6SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNDOjpKU1ZhbHVlIHByb3RvdHlwZSkK
ICAgICB7CiAgICAgICAgIHJldHVybiBTdHJ1Y3R1cmU6OmNyZWF0ZSh2bSwgZ2xvYmFsT2JqZWN0
LCBwcm90b3R5cGUsIFR5cGVJbmZvKE9iamVjdFR5cGUsIFN0cnVjdHVyZUZsYWdzKSwgJnNfaW5m
byk7CiAgICAgfQpAQCAtMjE4LDEzICsyMTksMTMgQEAgcHJpdmF0ZToKIAogY29uc3QgQ2xhc3NJ
bmZvIE9iakNSdW50aW1lTWV0aG9kOjpzX2luZm8gPSB7ICJPYmpDUnVudGltZU1ldGhvZCIsICZS
dW50aW1lTWV0aG9kOjpzX2luZm8sIDAsIENSRUFURV9NRVRIT0RfVEFCTEUoT2JqQ1J1bnRpbWVN
ZXRob2QpIH07CiAKLUpTVmFsdWUgT2JqY0luc3RhbmNlOjpnZXRNZXRob2QoRXhlY1N0YXRlKiBl
eGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW1lKQorSlNDOjpKU1ZhbHVlIE9iamNJbnN0YW5j
ZTo6Z2V0TWV0aG9kKEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtZSkK
IHsKICAgICBNZXRob2QqIG1ldGhvZCA9IGdldENsYXNzKCktPm1ldGhvZE5hbWVkKHByb3BlcnR5
TmFtZSwgdGhpcyk7CiAgICAgcmV0dXJuIE9iakNSdW50aW1lTWV0aG9kOjpjcmVhdGUoZXhlYywg
ZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpLCBwcm9wZXJ0eU5hbWUucHVibGljTmFtZSgpLCBt
ZXRob2QpOwogfQogCi1KU1ZhbHVlIE9iamNJbnN0YW5jZTo6aW52b2tlTWV0aG9kKEV4ZWNTdGF0
ZSogZXhlYywgUnVudGltZU1ldGhvZCogcnVudGltZU1ldGhvZCkKK0pTQzo6SlNWYWx1ZSBPYmpj
SW5zdGFuY2U6Omludm9rZU1ldGhvZChFeGVjU3RhdGUqIGV4ZWMsIFJ1bnRpbWVNZXRob2QqIHJ1
bnRpbWVNZXRob2QpCiB7CiAgICAgaWYgKCFhc09iamVjdChydW50aW1lTWV0aG9kKS0+aW5oZXJp
dHMoT2JqQ1J1bnRpbWVNZXRob2Q6OmluZm8oKSkpCiAgICAgICAgIHJldHVybiBleGVjLT52bSgp
LnRocm93RXhjZXB0aW9uKGV4ZWMsIGNyZWF0ZVR5cGVFcnJvcihleGVjLCAiQXR0ZW1wdCB0byBp
bnZva2Ugbm9uLXBsdWctaW4gbWV0aG9kIG9uIHBsdWctaW4gb2JqZWN0LiIpKTsKQEAgLTIzNSw3
ICsyMzYsNyBAQCBKU1ZhbHVlIE9iamNJbnN0YW5jZTo6aW52b2tlTWV0aG9kKEV4ZWNTCiAgICAg
cmV0dXJuIGludm9rZU9iamNNZXRob2QoZXhlYywgbWV0aG9kKTsKIH0KIAotSlNWYWx1ZSBPYmpj
SW5zdGFuY2U6Omludm9rZU9iamNNZXRob2QoRXhlY1N0YXRlKiBleGVjLCBPYmpjTWV0aG9kKiBt
ZXRob2QpCitKU0M6OkpTVmFsdWUgT2JqY0luc3RhbmNlOjppbnZva2VPYmpjTWV0aG9kKEV4ZWNT
dGF0ZSogZXhlYywgT2JqY01ldGhvZCogbWV0aG9kKQogewogICAgIEpTVmFsdWUgcmVzdWx0ID0g
anNVbmRlZmluZWQoKTsKICAgICAKQEAgLTM1Myw3ICszNTQsNyBAQCBKU1ZhbHVlIE9iamNJbnN0
YW5jZTo6aW52b2tlT2JqY01ldGhvZChFCiAgICAgcmV0dXJuIGNvbnN0X2Nhc3Q8SlNWYWx1ZSY+
KHJlc3VsdCk7CiB9CiAKLUpTVmFsdWUgT2JqY0luc3RhbmNlOjppbnZva2VEZWZhdWx0TWV0aG9k
KEV4ZWNTdGF0ZSogZXhlYykKK0pTQzo6SlNWYWx1ZSBPYmpjSW5zdGFuY2U6Omludm9rZURlZmF1
bHRNZXRob2QoRXhlY1N0YXRlKiBleGVjKQogewogICAgIEpTVmFsdWUgcmVzdWx0ID0ganNVbmRl
ZmluZWQoKTsKIApAQCAtNDM2LDcgKzQzNyw3IEBAIGJvb2wgT2JqY0luc3RhbmNlOjpzZXRWYWx1
ZU9mVW5kZWZpbmVkRmkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotSlNWYWx1ZSBPYmpjSW5zdGFu
Y2U6OmdldFZhbHVlT2ZVbmRlZmluZWRGaWVsZChFeGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFt
ZSBwcm9wZXJ0eU5hbWUpIGNvbnN0CitKU0M6OkpTVmFsdWUgT2JqY0luc3RhbmNlOjpnZXRWYWx1
ZU9mVW5kZWZpbmVkRmllbGQoRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlO
YW1lKSBjb25zdAogewogICAgIFN0cmluZyBuYW1lKHByb3BlcnR5TmFtZS5wdWJsaWNOYW1lKCkp
OwogICAgIGlmIChuYW1lLmlzTnVsbCgpKQpAQCAtNDY5LDcgKzQ3MCw3IEBAIEpTVmFsdWUgT2Jq
Y0luc3RhbmNlOjpnZXRWYWx1ZU9mVW5kZWZpbmUKICAgICByZXR1cm4gY29uc3RfY2FzdDxKU1Zh
bHVlJj4ocmVzdWx0KTsKIH0KIAotSlNWYWx1ZSBPYmpjSW5zdGFuY2U6OmRlZmF1bHRWYWx1ZShF
eGVjU3RhdGUqIGV4ZWMsIFByZWZlcnJlZFByaW1pdGl2ZVR5cGUgaGludCkgY29uc3QKK0pTQzo6
SlNWYWx1ZSBPYmpjSW5zdGFuY2U6OmRlZmF1bHRWYWx1ZShFeGVjU3RhdGUqIGV4ZWMsIFByZWZl
cnJlZFByaW1pdGl2ZVR5cGUgaGludCkgY29uc3QKIHsKICAgICBpZiAoaGludCA9PSBQcmVmZXJT
dHJpbmcpCiAgICAgICAgIHJldHVybiBzdHJpbmdWYWx1ZShleGVjKTsKQEAgLTQ4MiwyNCArNDgz
LDI0IEBAIEpTVmFsdWUgT2JqY0luc3RhbmNlOjpkZWZhdWx0VmFsdWUoRXhlY1MKICAgICByZXR1
cm4gdmFsdWVPZihleGVjKTsKIH0KIAotSlNWYWx1ZSBPYmpjSW5zdGFuY2U6OnN0cmluZ1ZhbHVl
KEV4ZWNTdGF0ZSogZXhlYykgY29uc3QKK0pTQzo6SlNWYWx1ZSBPYmpjSW5zdGFuY2U6OnN0cmlu
Z1ZhbHVlKEV4ZWNTdGF0ZSogZXhlYykgY29uc3QKIHsKICAgICByZXR1cm4gY29udmVydE5TU3Ry
aW5nVG9TdHJpbmcoZXhlYywgW2dldE9iamVjdCgpIGRlc2NyaXB0aW9uXSk7CiB9CiAKLUpTVmFs
dWUgT2JqY0luc3RhbmNlOjpudW1iZXJWYWx1ZShFeGVjU3RhdGUqKSBjb25zdAorSlNDOjpKU1Zh
bHVlIE9iamNJbnN0YW5jZTo6bnVtYmVyVmFsdWUoRXhlY1N0YXRlKikgY29uc3QKIHsKICAgICAv
LyBGSVhNRTogIEltcGxlbWVudCBzb21ldGhpbmcgc2Vuc2libGUKICAgICByZXR1cm4ganNOdW1i
ZXIoMCk7CiB9CiAKLUpTVmFsdWUgT2JqY0luc3RhbmNlOjpib29sZWFuVmFsdWUoKSBjb25zdAor
SlNDOjpKU1ZhbHVlIE9iamNJbnN0YW5jZTo6Ym9vbGVhblZhbHVlKCkgY29uc3QKIHsKICAgICAv
LyBGSVhNRTogIEltcGxlbWVudCBzb21ldGhpbmcgc2Vuc2libGUKICAgICByZXR1cm4ganNCb29s
ZWFuKGZhbHNlKTsKIH0KIAotSlNWYWx1ZSBPYmpjSW5zdGFuY2U6OnZhbHVlT2YoRXhlY1N0YXRl
KiBleGVjKSBjb25zdCAKK0pTQzo6SlNWYWx1ZSBPYmpjSW5zdGFuY2U6OnZhbHVlT2YoRXhlY1N0
YXRlKiBleGVjKSBjb25zdCAKIHsKICAgICByZXR1cm4gc3RyaW5nVmFsdWUoZXhlYyk7CiB9Cklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUuaAkocmV2aXNpb24g
MTg2MjU5KQorKysgU291cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLmgJKHdv
cmtpbmcgY29weSkKQEAgLTYxLDggKzYxLDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgaW50IG51
bVBhcmFtZXRlcnMoKSBjb25zdDsKIAogICAgIE5TTWV0aG9kU2lnbmF0dXJlICpnZXRNZXRob2RT
aWduYXR1cmUoKSBjb25zdDsKLSAgICAKLSAgICBib29sIGlzRmFsbGJhY2tNZXRob2QoKSBjb25z
dCB7IHJldHVybiBfc2VsZWN0b3IgPT0gQHNlbGVjdG9yKGludm9rZVVuZGVmaW5lZE1ldGhvZEZy
b21XZWJTY3JpcHQ6d2l0aEFyZ3VtZW50czopOyB9CisKKyAgICBib29sIGlzRmFsbGJhY2tNZXRo
b2QoKSBjb25zdDsKICAgICB2b2lkIHNldEphdmFTY3JpcHROYW1lKENGU3RyaW5nUmVmIG4pIHsg
X2phdmFTY3JpcHROYW1lID0gbjsgfQogICAgIENGU3RyaW5nUmVmIGphdmFTY3JpcHROYW1lKCkg
Y29uc3QgeyByZXR1cm4gX2phdmFTY3JpcHROYW1lLmdldCgpOyB9CiAgICAgCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvYnJpZGdlL29iamMvb2JqY19ydW50aW1lLm1tCShyZXZpc2lvbiAxODYyNTkp
CisrKyBTb3VyY2UvV2ViQ29yZS9icmlkZ2Uvb2JqYy9vYmpjX3J1bnRpbWUubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKICNpbmNs
dWRlICJPYmpDUnVudGltZU9iamVjdC5oIgogI2luY2x1ZGUgIldlYlNjcmlwdE9iamVjdC5oIgor
I2luY2x1ZGUgIldlYlNjcmlwdE9iamVjdFByb3RvY29sLmgiCiAjaW5jbHVkZSAib2JqY19pbnN0
YW5jZS5oIgogI2luY2x1ZGUgInJ1bnRpbWVfYXJyYXkuaCIKICNpbmNsdWRlICJydW50aW1lX29i
amVjdC5oIgpAQCAtNzIsNiArNzMsMTEgQEAgTlNNZXRob2RTaWduYXR1cmUqIE9iamNNZXRob2Q6
OmdldE1ldGhvZAogICAgIHJldHVybiBbX29iamNDbGFzcyBpbnN0YW5jZU1ldGhvZFNpZ25hdHVy
ZUZvclNlbGVjdG9yOl9zZWxlY3Rvcl07CiB9CiAKK2Jvb2wgT2JqY01ldGhvZDo6aXNGYWxsYmFj
a01ldGhvZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIF9zZWxlY3RvciA9PSBAc2VsZWN0b3IoaW52
b2tlVW5kZWZpbmVkTWV0aG9kRnJvbVdlYlNjcmlwdDp3aXRoQXJndW1lbnRzOik7Cit9CisKIC8v
IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gT2JqY0ZpZWxkIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
IAogT2JqY0ZpZWxkOjpPYmpjRmllbGQoSXZhciBpdmFyKSAKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2JyaWRnZS9vYmpjL29iamNfdXRpbGl0eS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9icmlkZ2Uvb2JqYy9vYmpjX3V0aWxpdHkubW0JKHJldmlzaW9uIDE4NjI1OSkKKysrIFNvdXJj
ZS9XZWJDb3JlL2JyaWRnZS9vYmpjL29iamNfdXRpbGl0eS5tbQkod29ya2luZyBjb3B5KQpAQCAt
MjYsMTAgKzI2LDEwIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAib2JqY191dGls
aXR5LmgiCiAKKyNpbmNsdWRlICJXZWJTY3JpcHRPYmplY3RQcm90b2NvbC5oIgogI2luY2x1ZGUg
Im9iamNfaW5zdGFuY2UuaCIKICNpbmNsdWRlICJydW50aW1lX2FycmF5LmgiCiAjaW5jbHVkZSAi
cnVudGltZV9vYmplY3QuaCIKLSNpbmNsdWRlICJXZWJTY3JpcHRPYmplY3QuaCIKICNpbmNsdWRl
IDxydW50aW1lL0pTR2xvYmFsT2JqZWN0Lmg+CiAjaW5jbHVkZSA8cnVudGltZS9KU0xvY2suaD4K
ICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgpJbmRleDogU291cmNlL1dlYkNvcmUvY3Nzaml0
L1NlbGVjdG9yQ29tcGlsZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzc2pp
dC9TZWxlY3RvckNvbXBpbGVyLmNwcAkocmV2aXNpb24gMTg2MjU5KQorKysgU291cmNlL1dlYkNv
cmUvY3Nzaml0L1NlbGVjdG9yQ29tcGlsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00MzMsNDkg
KzQzMywxMiBAQCBGdW5jdGlvblR5cGUgU2VsZWN0b3JGcmFnbWVudDo6YXBwZW5kVW5vCiAgICAg
cmV0dXJuIEZ1bmN0aW9uVHlwZTo6U2VsZWN0b3JDaGVja2VyV2l0aENoZWNraW5nQ29udGV4dDsK
IH0KIAotc3RhdGljIGlubGluZSBGdW5jdGlvblR5cGUgYWRkU2Nyb2xsYmFyUHNldWRvQ2xhc3NU
eXBlKGNvbnN0IENTU1NlbGVjdG9yJiBzZWxlY3RvciwgU2VsZWN0b3JGcmFnbWVudCYgZnJhZ21l
bnQpCitzdGF0aWMgaW5saW5lIEZ1bmN0aW9uVHlwZSBhZGRTY3JvbGxiYXJQc2V1ZG9DbGFzc1R5
cGUoY29uc3QgQ1NTU2VsZWN0b3ImLCBTZWxlY3RvckZyYWdtZW50JikKIHsKICAgICAvLyBGSVhN
RTogc2Nyb2xsYmFyIHBzZXVkb2NsYXNzIGludGVyYWN0aW9uIHdpdGggOm5vdCBkb2Vzbid0IGJl
aGF2ZSBjb3JyZWN0bHkuCiAgICAgLy8gQ29tcGlsZSB0aGVtIHdoZW4gdGhleSBhcmUgZml4ZWQg
YW5kIHRlc3RlZC4KICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTQ2MjIxCiAgICAgcmV0dXJuIEZ1bmN0aW9uVHlwZTo6Q2Fubm90Q29tcGlsZTsKLSAgICAK
LSAgICBzd2l0Y2ggKHNlbGVjdG9yLnBzZXVkb0NsYXNzVHlwZSgpKSB7Ci0gICAgY2FzZSBDU1NT
ZWxlY3Rvcjo6UHNldWRvQ2xhc3NXaW5kb3dJbmFjdGl2ZToKLSAgICAgICAgZnJhZ21lbnQudW5v
cHRpbWl6ZWRQc2V1ZG9DbGFzc2VzLmFwcGVuZChKU0M6OkZ1bmN0aW9uUHRyKGlzV2luZG93SW5h
Y3RpdmUpKTsKLSAgICAgICAgcmV0dXJuIEZ1bmN0aW9uVHlwZTo6U2ltcGxlU2VsZWN0b3JDaGVj
a2VyOwotICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRGlzYWJsZWQ6Ci0gICAgICAg
IHJldHVybiBmcmFnbWVudC5hcHBlbmRVbm9wdGltaXplZFBzZXVkb0NsYXNzV2l0aENvbnRleHQo
c2Nyb2xsYmFyTWF0Y2hlc0Rpc2FibGVkUHNldWRvQ2xhc3MpOwotICAgIGNhc2UgQ1NTU2VsZWN0
b3I6OlBzZXVkb0NsYXNzRW5hYmxlZDoKLSAgICAgICAgcmV0dXJuIGZyYWdtZW50LmFwcGVuZFVu
b3B0aW1pemVkUHNldWRvQ2xhc3NXaXRoQ29udGV4dChzY3JvbGxiYXJNYXRjaGVzRW5hYmxlZFBz
ZXVkb0NsYXNzKTsKLSAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0hvcml6b250YWw6
Ci0gICAgICAgIHJldHVybiBmcmFnbWVudC5hcHBlbmRVbm9wdGltaXplZFBzZXVkb0NsYXNzV2l0
aENvbnRleHQoc2Nyb2xsYmFyTWF0Y2hlc0hvcml6b250YWxQc2V1ZG9DbGFzcyk7Ci0gICAgY2Fz
ZSBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xhc3NWZXJ0aWNhbDoKLSAgICAgICAgcmV0dXJuIGZyYWdt
ZW50LmFwcGVuZFVub3B0aW1pemVkUHNldWRvQ2xhc3NXaXRoQ29udGV4dChzY3JvbGxiYXJNYXRj
aGVzVmVydGljYWxQc2V1ZG9DbGFzcyk7Ci0gICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xh
c3NEZWNyZW1lbnQ6Ci0gICAgICAgIHJldHVybiBmcmFnbWVudC5hcHBlbmRVbm9wdGltaXplZFBz
ZXVkb0NsYXNzV2l0aENvbnRleHQoc2Nyb2xsYmFyTWF0Y2hlc0RlY3JlbWVudFBzZXVkb0NsYXNz
KTsKLSAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0luY3JlbWVudDoKLSAgICAgICAg
cmV0dXJuIGZyYWdtZW50LmFwcGVuZFVub3B0aW1pemVkUHNldWRvQ2xhc3NXaXRoQ29udGV4dChz
Y3JvbGxiYXJNYXRjaGVzSW5jcmVtZW50UHNldWRvQ2xhc3MpOwotICAgIGNhc2UgQ1NTU2VsZWN0
b3I6OlBzZXVkb0NsYXNzU3RhcnQ6Ci0gICAgICAgIHJldHVybiBmcmFnbWVudC5hcHBlbmRVbm9w
dGltaXplZFBzZXVkb0NsYXNzV2l0aENvbnRleHQoc2Nyb2xsYmFyTWF0Y2hlc1N0YXJ0UHNldWRv
Q2xhc3MpOwotICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzRW5kOgotICAgICAgICBy
ZXR1cm4gZnJhZ21lbnQuYXBwZW5kVW5vcHRpbWl6ZWRQc2V1ZG9DbGFzc1dpdGhDb250ZXh0KHNj
cm9sbGJhck1hdGNoZXNFbmRQc2V1ZG9DbGFzcyk7Ci0gICAgY2FzZSBDU1NTZWxlY3Rvcjo6UHNl
dWRvQ2xhc3NEb3VibGVCdXR0b246Ci0gICAgICAgIHJldHVybiBmcmFnbWVudC5hcHBlbmRVbm9w
dGltaXplZFBzZXVkb0NsYXNzV2l0aENvbnRleHQoc2Nyb2xsYmFyTWF0Y2hlc0RvdWJsZUJ1dHRv
blBzZXVkb0NsYXNzKTsKLSAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc1NpbmdsZUJ1
dHRvbjoKLSAgICAgICAgcmV0dXJuIGZyYWdtZW50LmFwcGVuZFVub3B0aW1pemVkUHNldWRvQ2xh
c3NXaXRoQ29udGV4dChzY3JvbGxiYXJNYXRjaGVzU2luZ2xlQnV0dG9uUHNldWRvQ2xhc3MpOwot
ICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzTm9CdXR0b246Ci0gICAgICAgIHJldHVy
biBmcmFnbWVudC5hcHBlbmRVbm9wdGltaXplZFBzZXVkb0NsYXNzV2l0aENvbnRleHQoc2Nyb2xs
YmFyTWF0Y2hlc05vQnV0dG9uUHNldWRvQ2xhc3MpOwotICAgIGNhc2UgQ1NTU2VsZWN0b3I6OlBz
ZXVkb0NsYXNzQ29ybmVyUHJlc2VudDoKLSAgICAgICAgcmV0dXJuIGZyYWdtZW50LmFwcGVuZFVu
b3B0aW1pemVkUHNldWRvQ2xhc3NXaXRoQ29udGV4dChzY3JvbGxiYXJNYXRjaGVzQ29ybmVyUHJl
c2VudFBzZXVkb0NsYXNzKTsKLSAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0FjdGl2
ZToKLSAgICAgICAgcmV0dXJuIGZyYWdtZW50LmFwcGVuZFVub3B0aW1pemVkUHNldWRvQ2xhc3NX
aXRoQ29udGV4dChzY3JvbGxiYXJNYXRjaGVzQWN0aXZlUHNldWRvQ2xhc3MpOwotICAgIGNhc2Ug
Q1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzSG92ZXI6Ci0gICAgICAgIHJldHVybiBmcmFnbWVudC5h
cHBlbmRVbm9wdGltaXplZFBzZXVkb0NsYXNzV2l0aENvbnRleHQoc2Nyb2xsYmFyTWF0Y2hlc0hv
dmVyUHNldWRvQ2xhc3MpOwotICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBGdW5jdGlvblR5
cGU6OkNhbm5vdE1hdGNoQW55dGhpbmc7Ci0gICAgfQotICAgIHJldHVybiBGdW5jdGlvblR5cGU6
OkNhbm5vdE1hdGNoQW55dGhpbmc7CiB9CiAKIC8vIEhhbmRsZSB0aGUgZm9yd2FyZCA6bnRoLWNo
aWxkKCkgYW5kIGJhY2t3YXJkIDpudGgtbGFzdC1jaGlsZCgpLgpJbmRleDogU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL01lZGlhUGxheWVyUHJpdmF0ZVFUS2l0Lm1tCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9NZWRpYVBsYXll
clByaXZhdGVRVEtpdC5tbQkocmV2aXNpb24gMTg2MjU5KQorKysgU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvbWFjL01lZGlhUGxheWVyUHJpdmF0ZVFUS2l0Lm1tCSh3b3JraW5nIGNv
cHkpCkBAIC0xNTQsMTEgKzE1NCwxMyBAQCAtKHZvaWQpZGlzY29ubmVjdDsKIC0odm9pZClyZXBh
aW50OwogLSh2b2lkKXNldERlbGF5Q2FsbGJhY2tzOihCT09MKXNob3VsZERlbGF5OwogLSh2b2lk
KWxvYWRTdGF0ZUNoYW5nZWQ6KE5TTm90aWZpY2F0aW9uICopbm90aWZpY2F0aW9uOworLSAodm9p
ZClsb2FkZWRSYW5nZXNDaGFuZ2VkOihOU05vdGlmaWNhdGlvbiAqKW5vdGlmaWNhdGlvbjsKIC0o
dm9pZClyYXRlQ2hhbmdlZDooTlNOb3RpZmljYXRpb24gKilub3RpZmljYXRpb247CiAtKHZvaWQp
c2l6ZUNoYW5nZWQ6KE5TTm90aWZpY2F0aW9uICopbm90aWZpY2F0aW9uOwogLSh2b2lkKXRpbWVD
aGFuZ2VkOihOU05vdGlmaWNhdGlvbiAqKW5vdGlmaWNhdGlvbjsKIC0odm9pZClkaWRFbmQ6KE5T
Tm90aWZpY2F0aW9uICopbm90aWZpY2F0aW9uOwogLSh2b2lkKWxheWVySG9zdENoYW5nZWQ6KE5T
Tm90aWZpY2F0aW9uICopbm90aWZpY2F0aW9uOworLSAodm9pZCluZXdJbWFnZUF2YWlsYWJsZToo
TlNOb3RpZmljYXRpb24gKilub3RpZmljYXRpb247CiBAZW5kCiAKIEBwcm90b2NvbCBXZWJLaXRW
aWRlb1JlbmRlcmluZ0RldGFpbHMKQEAgLTE0MjYsNyArMTQyOCwxMCBAQCB2b2lkIE1lZGlhUGxh
eWVyUHJpdmF0ZVFUS2l0OjpkaXNhYmxlVW5zCiAgICAgICAgIC8vIERpc2FibGUgY2hhcHRlciB0
cmFja3MuIFRoZXNlIGFyZSBtb3N0IGxpa2VseSB0byBsZWFkIHRvIHRyb3VibGUsIGFzCiAgICAg
ICAgIC8vIHRoZXkgd2lsbCBiZSBjb21wb3NpdGVkIHVuZGVyIHRoZSB2aWRlbyB0cmFja3MsIGZv
cmNpbmcgUVQgdG8gZG8gZXh0cmEKICAgICAgICAgLy8gd29yay4KKyNwcmFnbWEgY2xhbmcgZGlh
Z25vc3RpYyBwdXNoCisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgaWdub3JlZCAiLVd1bmRlY2xh
cmVkLXNlbGVjdG9yIgogICAgICAgICBRVFRyYWNrICpjaGFwdGVyVHJhY2sgPSBbdHJhY2sgcGVy
Zm9ybVNlbGVjdG9yOkBzZWxlY3RvcihjaGFwdGVybGlzdCldOworI3ByYWdtYSBjbGFuZyBkaWFn
bm9zdGljIHBvcAogICAgICAgICBpZiAoIWNoYXB0ZXJUcmFjaykKICAgICAgICAgICAgIGNvbnRp
bnVlOwogICAgICAgICAKSW5kZXg6IFNvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwkocmV2aXNpb24gMTg2
MjYyKQorKysgU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE0IEBACisyMDE1LTA3LTAzICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5j
b20+CisKKyAgICAgICAgW1hjb2RlXSBVcGRhdGUgc29tZSBidWlsZCBzZXR0aW5ncyBhcyByZWNv
bW1lbmRlZCBieSBYY29kZSA3CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNDY1OTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWc6IEVuYWJsZWQgQ0xBTkdf
V0FSTl9VTlJFQUNIQUJMRV9DT0RFIGFuZAorICAgICAgICBHQ0NfTk9fQ09NTU9OX0JMT0NLUy4K
KyAgICAgICAgKiBXZWJJbnNwZWN0b3JVSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBVcGRh
dGVkIExhc3RVcGdyYWRlQ2hlY2suCisKIDIwMTUtMDctMDIgIERldmluIFJvdXNzbyAgPGRyb3Vz
c29AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IFNob3cgc3VnZ2VzdCBwb3Bv
dmVyIG9uIFRhYiBwcmVzcyBldmVuIGlmIGl0IHdhc24ndCBzaG93aW5nIGJlZm9yZQpJbmRleDog
U291cmNlL1dlYkluc3BlY3RvclVJL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkluc3BlY3RvclVJL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25m
aWcJKHJldmlzaW9uIDE4NjI1OSkKKysrIFNvdXJjZS9XZWJJbnNwZWN0b3JVSS9Db25maWd1cmF0
aW9ucy9CYXNlLnhjY29uZmlnCSh3b3JraW5nIGNvcHkpCkBAIC0yMSw2ICsyMSw3IEBAIENMQU5H
X1dBUk5fQ1hYMFhfRVhURU5TSU9OUyA9IE5POwogQ0xBTkdfV0FSTl9FTVBUWV9CT0RZID0gWUVT
OwogQ0xBTkdfV0FSTl9FTlVNX0NPTlZFUlNJT04gPSBZRVM7CiBDTEFOR19XQVJOX0lOVF9DT05W
RVJTSU9OID0gWUVTOworQ0xBTkdfV0FSTl9VTlJFQUNIQUJMRV9DT0RFID0gWUVTOwogQ0xBTkdf
V0FSTl9fRFVQTElDQVRFX01FVEhPRF9NQVRDSCA9IFlFUzsKIEVOQUJMRV9TVFJJQ1RfT0JKQ19N
U0dTRU5EID0gWUVTOwogR0NDX0NfTEFOR1VBR0VfU1RBTkRBUkQgPSBnbnU5OTsKQEAgLTMxLDYg
KzMyLDcgQEAgR0NDX0VOQUJMRV9PQkpDX0VYQ0VQVElPTlMgPSBZRVM7CiBHQ0NfRU5BQkxFX09C
SkNfR0MgPSBOTzsKIEdDQ19GQVNUX09CSkNfRElTUEFUQ0ggPSBZRVM7CiBHQ0NfR0VORVJBVEVf
REVCVUdHSU5HX1NZTUJPTFMgPSBZRVM7CitHQ0NfTk9fQ09NTU9OX0JMT0NLUyA9IFlFUzsKIEdD
Q19PUFRJTUlaQVRJT05fTEVWRUwgPSBzOwogR0NDX1BSRUNPTVBJTEVfUFJFRklYX0hFQURFUiA9
IE5POwogR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyA9ICQoaW5oZXJpdGVkKSAkKEVOR0lO
RUVSSU5HX0JVSUxEX0RFRklORVMpOwpJbmRleDogU291cmNlL1dlYkluc3BlY3RvclVJL1dlYklu
c3BlY3RvclVJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkluc3BlY3RvclVJL1dlYkluc3BlY3RvclVJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJ
KHJldmlzaW9uIDE4NjI1OSkKKysrIFNvdXJjZS9XZWJJbnNwZWN0b3JVSS9XZWJJbnNwZWN0b3JV
SS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0xMjAsNyArMTIw
LDcgQEAKIAkJCWlzYSA9IFBCWFByb2plY3Q7CiAJCQlhdHRyaWJ1dGVzID0gewogCQkJCUxhc3RT
d2lmdFVwZGF0ZUNoZWNrID0gMDcwMDsKLQkJCQlMYXN0VXBncmFkZUNoZWNrID0gMDYwMDsKKwkJ
CQlMYXN0VXBncmFkZUNoZWNrID0gMDcwMDsKIAkJCQlPUkdBTklaQVRJT05OQU1FID0gQXBwbGU7
CiAJCQl9OwogCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IEE1NEMyMjUwMTQ4QjIzREUwMDM3
M0ZBMyAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWFByb2plY3QgIldlYkluc3Bl
Y3RvclVJIiAqLzsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4NjI2MikKKysrIFNvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDE1LTA3
LTAzICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisKKyAgICAgICAgW1hjb2RlXSBV
cGRhdGUgc29tZSBidWlsZCBzZXR0aW5ncyBhcyByZWNvbW1lbmRlZCBieSBYY29kZSA3CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDY1OTcKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3VyYXRp
b25zL0Jhc2UueGNjb25maWc6IEVuYWJsZWQgQ0xBTkdfV0FSTl9VTlJFQUNIQUJMRV9DT0RFIGFu
ZAorICAgICAgICBHQ0NfTk9fQ09NTU9OX0JMT0NLUy4gUmVtb3ZlZCBHQ0NfTU9ERUxfVFVOSU5H
LgorCisgICAgICAgICogV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBVcGRhdGVk
IExhc3RVcGdyYWRlQ2hlY2suCisKIDIwMTUtMDctMDMgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8
Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjE4NjAyNSk6IFtTT1VQ
XSBOZXR3b3JrQ2FjaGUgZ2V0cyBibG9ja2VkIGluIHRyYXZlcnNlIHNpbmNlIHIxODYwMjUKSW5k
ZXg6IFNvdXJjZS9XZWJLaXQyL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwkocmV2aXNp
b24gMTg2MjU5KQorKysgU291cmNlL1dlYktpdDIvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZp
Zwkod29ya2luZyBjb3B5KQpAQCAtMzYsNiArMzYsNyBAQCBDTEFOR19XQVJOX0NYWDBYX0VYVEVO
U0lPTlMgPSBOTzsKIENMQU5HX1dBUk5fRU1QVFlfQk9EWSA9IFlFUzsKIENMQU5HX1dBUk5fRU5V
TV9DT05WRVJTSU9OID0gWUVTOwogQ0xBTkdfV0FSTl9JTlRfQ09OVkVSU0lPTiA9IFlFUzsKK0NM
QU5HX1dBUk5fVU5SRUFDSEFCTEVfQ09ERSA9IFlFUzsKIENMQU5HX1dBUk5fX0RVUExJQ0FURV9N
RVRIT0RfTUFUQ0ggPSBZRVM7CiBDT01CSU5FX0hJRFBJX0lNQUdFUyA9IE5POwogREVCVUdfSU5G
T1JNQVRJT05fRk9STUFUID0gZHdhcmYtd2l0aC1kc3ltOwpAQCAtNTIsNyArNTMsNyBAQCBHQ0Nf
RU5BQkxFX09CSkNfR0NfbWFjb3N4X1lFUyA9IHN1cHBvcnRlCiBHQ0NfRU5BQkxFX1NZTUJPTF9T
RVBBUkFUSU9OID0gTk87CiBHQ0NfRkFTVF9PQkpDX0RJU1BBVENIID0gWUVTOwogR0NDX0dFTkVS
QVRFX0RFQlVHR0lOR19TWU1CT0xTID0gWUVTOwotR0NDX01PREVMX1RVTklORyA9IEc1OworR0ND
X05PX0NPTU1PTl9CTE9DS1MgPSBZRVM7CiBHQ0NfT0JKQ19DQUxMX0NYWF9DRFRPUlMgPSBZRVM7
CiBHQ0NfUFJFQ09NUElMRV9QUkVGSVhfSEVBREVSID0gWUVTOwogR0NDX1NZTUJPTFNfUFJJVkFU
RV9FWFRFUk4gPSBZRVM7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxODYyNTkpCisrKyBTb3VyY2UvV2ViS2l0
Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTg3
MzIsNyArODczMiw3IEBACiAJCQlpc2EgPSBQQlhQcm9qZWN0OwogCQkJYXR0cmlidXRlcyA9IHsK
IAkJCQlMYXN0U3dpZnRVcGRhdGVDaGVjayA9IDA3MDA7Ci0JCQkJTGFzdFVwZ3JhZGVDaGVjayA9
IDA2MDA7CisJCQkJTGFzdFVwZ3JhZGVDaGVjayA9IDA3MDA7CiAJCQl9OwogCQkJYnVpbGRDb25m
aWd1cmF0aW9uTGlzdCA9IDFERUI5MUIxMDg3MzNEQTUwMDEwRTlDRCAvKiBCdWlsZCBjb25maWd1
cmF0aW9uIGxpc3QgZm9yIFBCWFByb2plY3QgIldlYktpdDIiICovOwogCQkJY29tcGF0aWJpbGl0
eVZlcnNpb24gPSAiWGNvZGUgMy4yIjsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAxODYyNjIpCisr
KyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEyIEBA
CisyMDE1LTA3LTAzICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisKKyAgICAgICAg
W1hjb2RlXSBVcGRhdGUgc29tZSBidWlsZCBzZXR0aW5ncyBhcyByZWNvbW1lbmRlZCBieSBYY29k
ZSA3CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDY1
OTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdl
YktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBVcGRhdGVkIExhc3RVcGdyYWRlQ2hlY2su
CisKIDIwMTUtMDctMDEgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9y
Zz4KIAogICAgICAgICBSZS1lbmFibGUgV2ViR0wgb24gV2luQ2Fpcm8uCkluZGV4OiBTb3VyY2Uv
V2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDE4
NjI1OSkKKysrIFNvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJ
KHdvcmtpbmcgY29weSkKQEAgLTIwMDIsNyArMjAwMiw3IEBACiAJCQlpc2EgPSBQQlhQcm9qZWN0
OwogCQkJYXR0cmlidXRlcyA9IHsKIAkJCQlMYXN0U3dpZnRVcGRhdGVDaGVjayA9IDA3MDA7Ci0J
CQkJTGFzdFVwZ3JhZGVDaGVjayA9IDA2MDA7CisJCQkJTGFzdFVwZ3JhZGVDaGVjayA9IDA3MDA7
CiAJCQl9OwogCQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IDE0OUMyODMyMDg5MDJCMEYwMDhB
OUVGQyAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWFByb2plY3QgIldlYktpdCIg
Ki87CiAJCQljb21wYXRpYmlsaXR5VmVyc2lvbiA9ICJYY29kZSAzLjIiOwpJbmRleDogU291cmNl
L1dlYktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFjL0No
YW5nZUxvZwkocmV2aXNpb24gMTg2MjYyKQorKysgU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9n
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTUtMDctMDMgIERhbiBCZXJuc3Rl
aW4gIDxtaXR6QGFwcGxlLmNvbT4KKworICAgICAgICBbWGNvZGVdIFVwZGF0ZSBzb21lIGJ1aWxk
IHNldHRpbmdzIGFzIHJlY29tbWVuZGVkIGJ5IFhjb2RlIDcKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NjU5NworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZp
ZzogRW5hYmxlZCBDTEFOR19XQVJOX1VOUkVBQ0hBQkxFX0NPREUsCisgICAgICAgIEdDQ19XQVJO
X1VOREVDTEFSRURfU0VMRUNUT1IgYW5kIEdDQ19OT19DT01NT05fQkxPQ0tTLiBSZW1vdmVkIEdD
Q19NT0RFTF9UVU5JTkcuCisKIDIwMTUtMDctMDIgIFRpbW90aHkgSG9ydG9uICA8dGltb3RoeV9o
b3J0b25AYXBwbGUuY29tPgogCiAgICAgICAgIEZpeCB0aGUgYnVpbGQuCkluZGV4OiBTb3VyY2Uv
V2ViS2l0L21hYy9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcJKHJldmlzaW9uIDE4
NjI1OSkKKysrIFNvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcJ
KHdvcmtpbmcgY29weSkKQEAgLTM2LDcgKzM2LDkgQEAgQ0xBTkdfV0FSTl9DWFgwWF9FWFRFTlNJ
T05TID0gTk87CiBDTEFOR19XQVJOX0VNUFRZX0JPRFkgPSBZRVM7CiBDTEFOR19XQVJOX0VOVU1f
Q09OVkVSU0lPTiA9IFlFUzsKIENMQU5HX1dBUk5fSU5UX0NPTlZFUlNJT04gPSBZRVM7CitDTEFO
R19XQVJOX1VOUkVBQ0hBQkxFX0NPREUgPSBZRVM7CiBDTEFOR19XQVJOX19EVVBMSUNBVEVfTUVU
SE9EX01BVENIID0gWUVTOworR0NDX1dBUk5fVU5ERUNMQVJFRF9TRUxFQ1RPUiA9IFlFUzsKIENP
TUJJTkVfSElEUElfSU1BR0VTID0gTk87CiBERUJVR19JTkZPUk1BVElPTl9GT1JNQVQgPSBkd2Fy
Zi13aXRoLWRzeW07CiBFTkFCTEVfU1RSSUNUX09CSkNfTVNHU0VORCA9IFlFUzsKQEAgLTUyLDcg
KzU0LDcgQEAgR0NDX0VOQUJMRV9PQkpDX0dDX21hY29zeF9ZRVMgPSBzdXBwb3J0ZQogR0NDX0VO
QUJMRV9TWU1CT0xfU0VQQVJBVElPTiA9IE5POwogR0NDX0ZBU1RfT0JKQ19ESVNQQVRDSCA9IFlF
UzsKIEdDQ19HRU5FUkFURV9ERUJVR0dJTkdfU1lNQk9MUyA9IFlFUzsKLUdDQ19NT0RFTF9UVU5J
Tkdbc2RrPW1hY29zeCpdID0gRzU7CitHQ0NfTk9fQ09NTU9OX0JMT0NLUyA9IFlFUzsKIEdDQ19P
QkpDX0NBTExfQ1hYX0NEVE9SUyA9IFlFUzsKIEdDQ19QUkVDT01QSUxFX1BSRUZJWF9IRUFERVIg
PSBZRVM7CiBHQ0NfVEhSRUFEU0FGRV9TVEFUSUNTID0gTk87CkluZGV4OiBTb3VyY2UvYm1hbGxv
Yy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL2JtYWxsb2MvQ2hhbmdlTG9nCShyZXZp
c2lvbiAxODYyNjIpCisrKyBTb3VyY2UvYm1hbGxvYy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkK
QEAgLTEsMyArMSwxNSBAQAorMjAxNS0wNy0wMyAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUu
Y29tPgorCisgICAgICAgIFtYY29kZV0gVXBkYXRlIHNvbWUgYnVpbGQgc2V0dGluZ3MgYXMgcmVj
b21tZW5kZWQgYnkgWGNvZGUgNworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTQ2NTk3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnOiBFbmFibGVkIENMQU5H
X1dBUk5fVU5SRUFDSEFCTEVfQ09ERSwgR0NDX05PX0NPTU1PTl9CTE9DS1MsCisgICAgICAgIGFu
ZCBFTkFCTEVfU1RSSUNUX09CSkNfTVNHU0VORC4gUmVtb3ZlZCBHQ0NfTU9ERUxfVFVOSU5HLgor
CisgICAgICAgICogYm1hbGxvYy54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBVcGRhdGVkIExh
c3RVcGdyYWRlQ2hlY2suCisKIDIwMTUtMDctMDIgIEdlb2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFw
cGxlLmNvbT4KIAogICAgICAgICBibWFsbG9jOiBTaHJpbmsgdGhlIHN1cGVyIGNodW5rIHNpemUK
SW5kZXg6IFNvdXJjZS9ibWFsbG9jL0NvbmZpZ3VyYXRpb25zL0Jhc2UueGNjb25maWcKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL2JtYWxsb2MvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwkocmV2
aXNpb24gMTg2MjU5KQorKysgU291cmNlL2JtYWxsb2MvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2Nv
bmZpZwkod29ya2luZyBjb3B5KQpAQCAtMzYsNiArMzYsNyBAQCBDTEFOR19XQVJOX0NYWDBYX0VY
VEVOU0lPTlMgPSBOTzsKIENMQU5HX1dBUk5fRU1QVFlfQk9EWSA9IFlFUzsKIENMQU5HX1dBUk5f
RU5VTV9DT05WRVJTSU9OID0gWUVTOwogQ0xBTkdfV0FSTl9JTlRfQ09OVkVSU0lPTiA9IFlFUzsK
K0NMQU5HX1dBUk5fVU5SRUFDSEFCTEVfQ09ERSA9IFlFUzsKIENMQU5HX1dBUk5fX0RVUExJQ0FU
RV9NRVRIT0RfTUFUQ0ggPSBZRVM7CiBERUJVR19JTkZPUk1BVElPTl9GT1JNQVQgPSBkd2FyZi13
aXRoLWRzeW07CiBHQ0NfQ19MQU5HVUFHRV9TVEFOREFSRCA9IGdudTk5OwpAQCAtNTEsOSArNTIs
MTAgQEAgR0NDX0VOQUJMRV9TWU1CT0xfU0VQQVJBVElPTiA9IE5POwogR0NDX0ZBU1RfT0JKQ19E
SVNQQVRDSCA9IFlFUzsKIEdDQ19HRU5FUkFURV9ERUJVR0dJTkdfU1lNQk9MUyA9IFlFUzsKIEdD
Q19JTkxJTkVTX0FSRV9QUklWQVRFX0VYVEVSTiA9IFlFUzsKLUdDQ19NT0RFTF9UVU5JTkdbc2Rr
PW1hY29zeCpdID0gRzU7CitHQ0NfTk9fQ09NTU9OX0JMT0NLUyA9IFlFUzsKIEdDQ19PQkpDX0NB
TExfQ1hYX0NEVE9SUyA9IFlFUzsKIEdDQ19QUkVDT01QSUxFX1BSRUZJWF9IRUFERVIgPSBZRVM7
CitFTkFCTEVfU1RSSUNUX09CSkNfTVNHU0VORCA9IFlFUzsKIEdDQ19QUkVQUk9DRVNTT1JfREVG
SU5JVElPTlMgPSAkKERFQlVHX0RFRklORVMpIEhBVkVfSEVBREVSX0RFVEVDVElPTl9IICQoaW5o
ZXJpdGVkKTsKIEdDQ19TVFJJQ1RfQUxJQVNJTkcgPSBZRVM7CiBHQ0NfVEhSRUFEU0FGRV9TVEFU
SUNTID0gTk87CkluZGV4OiBTb3VyY2UvYm1hbGxvYy9ibWFsbG9jLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL2JtYWxsb2MvYm1hbGxvYy54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxODYyNTkpCisrKyBTb3VyY2UvYm1hbGxvYy9ibWFs
bG9jLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTQxMCw3ICs0
MTAsNyBAQAogCQkJaXNhID0gUEJYUHJvamVjdDsKIAkJCWF0dHJpYnV0ZXMgPSB7CiAJCQkJTGFz
dFN3aWZ0VXBkYXRlQ2hlY2sgPSAwNzAwOwotCQkJCUxhc3RVcGdyYWRlQ2hlY2sgPSAwNjAwOwor
CQkJCUxhc3RVcGdyYWRlQ2hlY2sgPSAwNzAwOwogCQkJfTsKIAkJCWJ1aWxkQ29uZmlndXJhdGlv
bkxpc3QgPSAxNDVGNjgzQTE3OURDNDVGMDBENjU1OTggLyogQnVpbGQgY29uZmlndXJhdGlvbiBs
aXN0IGZvciBQQlhQcm9qZWN0ICJibWFsbG9jIiAqLzsKIAkJCWNvbXBhdGliaWxpdHlWZXJzaW9u
ID0gIlhjb2RlIDMuMiI7CkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxODYyNjIpCisrKyBUb29scy9DaGFuZ2VMb2cJKHdvcmtp
bmcgY29weSkKQEAgLTEsMyArMSwzOCBAQAorMjAxNS0wNy0wMyAgRGFuIEJlcm5zdGVpbiAgPG1p
dHpAYXBwbGUuY29tPgorCisgICAgICAgIFtYY29kZV0gVXBkYXRlIHNvbWUgYnVpbGQgc2V0dGlu
Z3MgYXMgcmVjb21tZW5kZWQgYnkgWGNvZGUgNworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ2NTk3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOiBVcGRhdGVkIExhc3RVcGdyYWRlQ2hlY2suCisKKyAgICAg
ICAgKiBEdW1wUmVuZGVyVHJlZS9tYWMvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzogRW5h
YmxlZCBHQ0NfTk9fQ09NTU9OX0JMT0NLUywKKyAgICAgICAgRU5BQkxFX1NUUklDVF9PQkpDX01T
R1NFTkQsIENMQU5HX1dBUk5fQk9PTF9DT05WRVJTSU9OLCBDTEFOR19XQVJOX0NPTlNUQU5UX0NP
TlZFUlNJT04sCisgICAgICAgIENMQU5HX1dBUk5fRU1QVFlfQk9EWSwgQ0xBTkdfV0FSTl9FTlVN
X0NPTlZFUlNJT04sIENMQU5HX1dBUk5fSU5UX0NPTlZFUlNJT04sCisgICAgICAgIENMQU5HX1dB
Uk5fVU5SRUFDSEFCTEVfQ09ERSwgR0NDX1dBUk5fQUJPVVRfUkVUVVJOX1RZUEUsCisgICAgICAg
IEdDQ19XQVJOX1VOSU5JVElBTElaRURfQVVUT1MsIGFuZCBHQ0NfV0FSTl9VTkRFQ0xBUkVEX1NF
TEVDVE9SLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRy
b2xsZXIubW06CisgICAgICAgICgrW0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIgd2ViU2NyaXB0TmFt
ZUZvclNlbGVjdG9yOl0pOiBSZW1vdmVkIGNoZWNrIGZvciBzZXREcmFnTW9kZTosCisgICAgICAg
IHdoaWNoIHdhcyByZW1vdmVkIGluIHIxOTEwMS4KKworICAgICAgICAqIER1bXBSZW5kZXJUcmVl
L21hYy9UZXh0SW5wdXRDb250cm9sbGVyLm06CisgICAgICAgICgtW1RleHRJbnB1dENvbnRyb2xs
ZXIgaW50ZXJwcmV0S2V5RXZlbnRzOndpdGhTZW5kZXI6XSk6IFN1cHByZXNzZWQgLVd1bmRlY2xh
cmVkLXNlbGVjdG9yCisgICAgICAgIGFyb3VuZCB1c2VkIG9mIGEgc2VsZWN0b3Igbm90IHRoYXQg
aXMgbm90IGRlY2xhcmVkIGFueXdoZXJlLgorCisgICAgICAgICogTWluaUJyb3dzZXIvQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZzogRW5hYmxlZCBHQ0NfTk9fQ09NTU9OX0JMT0NLUy4KKwor
ICAgICAgICAqIE1pbmlCcm93c2VyL01pbmlCcm93c2VyLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2o6IFVwZGF0ZWQgTGFzdFVwZ3JhZGVDaGVjay4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkv
Q29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZzogRW5hYmxlZCBHQ0NfTk9fQ09NTU9OX0JMT0NL
UywKKyAgICAgICAgRU5BQkxFX1NUUklDVF9PQkpDX01TR1NFTkQsIENMQU5HX1dBUk5fQk9PTF9D
T05WRVJTSU9OLCBDTEFOR19XQVJOX0NPTlNUQU5UX0NPTlZFUlNJT04sCisgICAgICAgIENMQU5H
X1dBUk5fRU1QVFlfQk9EWSwgQ0xBTkdfV0FSTl9FTlVNX0NPTlZFUlNJT04sIENMQU5HX1dBUk5f
SU5UX0NPTlZFUlNJT04sCisgICAgICAgIENMQU5HX1dBUk5fVU5SRUFDSEFCTEVfQ09ERSwgR0ND
X1dBUk5fQUJPVVRfUkVUVVJOX1RZUEUsCisgICAgICAgIEdDQ19XQVJOX1VOSU5JVElBTElaRURf
QVVUT1MsIGFuZCBHQ0NfV0FSTl9VTkRFQ0xBUkVEX1NFTEVDVE9SLgorCisgICAgICAgICogVGVz
dFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IFVwZGF0
ZWQgTGFzdFVwZ3JhZGVDaGVjay4KKwogMjAxNS0wNy0wMiAgRGFuaWVsIEJhdGVzICA8ZGFiYXRl
c0BhcHBsZS5jb20+CiAKICAgICAgICAgW2lPU10gQWRkIFdlYktpdFN5c3RlbUludGVyZmFjZSBm
b3IgaU9TIDguNApJbmRleDogVG9vbHMvRHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9EdW1wUmVuZGVyVHJl
ZS9EdW1wUmVuZGVyVHJlZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxODYy
NTkpCisrKyBUb29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC04NDAsNiArODQwLDcgQEAKIAkJCWlzYSA9
IFBCWFByb2plY3Q7CiAJCQlhdHRyaWJ1dGVzID0gewogCQkJCUxhc3RTd2lmdFVwZGF0ZUNoZWNr
ID0gMDcwMDsKKwkJCQlMYXN0VXBncmFkZUNoZWNrID0gMDcwMDsKIAkJCX07CiAJCQlidWlsZENv
bmZpZ3VyYXRpb25MaXN0ID0gMTQ5QzI5QzMwODkwMkM2RDAwOEE5RUZDIC8qIEJ1aWxkIGNvbmZp
Z3VyYXRpb24gbGlzdCBmb3IgUEJYUHJvamVjdCAiRHVtcFJlbmRlclRyZWUiICovOwogCQkJY29t
cGF0aWJpbGl0eVZlcnNpb24gPSAiWGNvZGUgMy4yIjsKSW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJU
cmVlL21hYy9FdmVudFNlbmRpbmdDb250cm9sbGVyLm1tCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0R1
bXBSZW5kZXJUcmVlL21hYy9FdmVudFNlbmRpbmdDb250cm9sbGVyLm1tCShyZXZpc2lvbiAxODYy
NTkpCisrKyBUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5t
bQkod29ya2luZyBjb3B5KQpAQCAtMjYwLDggKzI2MCw2IEBAICsgKE5TU3RyaW5nICopd2ViU2Ny
aXB0TmFtZUZvclNlbGVjdG9yOigKICAgICAgICAgcmV0dXJuIEAibW91c2VVcCI7CiAgICAgaWYg
KGFTZWxlY3RvciA9PSBAc2VsZWN0b3IobW91c2VNb3ZlVG9YOlk6KSkKICAgICAgICAgcmV0dXJu
IEAibW91c2VNb3ZlVG8iOwotICAgIGlmIChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKHNldERyYWdN
b2RlOikpCi0gICAgICAgIHJldHVybiBAInNldERyYWdNb2RlIjsKICAgICBpZiAoYVNlbGVjdG9y
ID09IEBzZWxlY3Rvcihtb3VzZVNjcm9sbEJ5WDphbmRZOikpCiAgICAgICAgIHJldHVybiBAIm1v
dXNlU2Nyb2xsQnkiOwogICAgIGlmIChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKG1vdXNlU2Nyb2xs
QnlYOmFuZFk6d2l0aFdoZWVsOmFuZE1vbWVudHVtUGhhc2VzOikpCkluZGV4OiBUb29scy9EdW1w
UmVuZGVyVHJlZS9tYWMvVGV4dElucHV0Q29udHJvbGxlci5tCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xz
L0R1bXBSZW5kZXJUcmVlL21hYy9UZXh0SW5wdXRDb250cm9sbGVyLm0JKHJldmlzaW9uIDE4NjI1
OSkKKysrIFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9UZXh0SW5wdXRDb250cm9sbGVyLm0JKHdv
cmtpbmcgY29weSkKQEAgLTUzNiwxMCArNTM2LDE0IEBAIC0gKEJPT0wpaW50ZXJwcmV0S2V5RXZl
bnRzOihOU0FycmF5ICopZXYKICAgICBbbW9kaWZpZXJzIHJlbGVhc2VdOwogICAgIAogICAgIGlk
IHJlc3VsdCA9IFtpbnB1dE1ldGhvZEhhbmRsZXIgY2FsbFdlYlNjcmlwdE1ldGhvZDpAImNhbGwi
IHdpdGhBcmd1bWVudHM6W05TQXJyYXkgYXJyYXlXaXRoT2JqZWN0czppbnB1dE1ldGhvZEhhbmRs
ZXIsIGV2ZW50UGFyYW0sIG5pbF1dOwotICAgIGlmICghW3Jlc3VsdCByZXNwb25kc1RvU2VsZWN0
b3I6QHNlbGVjdG9yKGJvb2xWYWx1ZSldIHx8ICFbcmVzdWx0IGJvb2xWYWx1ZV0pIAorICAgIGlm
ICghW3Jlc3VsdCByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKGJvb2xWYWx1ZSldIHx8ICFb
cmVzdWx0IGJvb2xWYWx1ZV0pIHsKKyNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBwdXNoCisjcHJh
Z21hIGNsYW5nIGRpYWdub3N0aWMgaWdub3JlZCAiLVd1bmRlY2xhcmVkLXNlbGVjdG9yIgogICAg
ICAgICBbc2VuZGVyIGRvQ29tbWFuZEJ5U2VsZWN0b3I6QHNlbGVjdG9yKG5vb3A6KV07IC8vIEFw
cEtpdCBzZW5kcyBub29wOiBpZiB0aGUgaW1lIGRvZXMgbm90IGhhbmRsZSBhbiBldmVudAotICAg
IAotICAgIGlucHV0TWV0aG9kVmlldyA9IG5pbDsgICAgCisjcHJhZ21hIGNsYW5nIGRpYWdub3N0
aWMgcG9wCisgICAgfQorCisgICAgaW5wdXRNZXRob2RWaWV3ID0gbmlsOwogICAgIHJldHVybiBZ
RVM7CiB9CiAKSW5kZXg6IFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9Db25maWd1cmF0aW9ucy9C
YXNlLnhjY29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9Db25m
aWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCShyZXZpc2lvbiAxODYyNTkpCisrKyBUb29scy9EdW1w
UmVuZGVyVHJlZS9tYWMvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwkod29ya2luZyBjb3B5
KQpAQCAtMzAsNiArMzAsOCBAQCBIRUFERVJfU0VBUkNIX1BBVEhTID0gJChCVUlMVF9QUk9EVUNU
U19ECiBQTEFURk9STV9IRUFERVJfU0VBUkNIX1BBVEhTW3Nkaz1pcGhvbmUqXSA9ICQoU0RLUk9P
VCkvdXNyL2xvY2FsL2luY2x1ZGUgJChTREtST09UKS91c3IvbG9jYWwvaW5jbHVkZS9XZWJDb3Jl
VGVzdFN1cHBvcnQgJChTUkNST09UKS8uLi8uLi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9zcGkv
aW9zOwogUExBVEZPUk1fSEVBREVSX1NFQVJDSF9QQVRIU1tzZGs9bWFjb3N4Kl0gPSBtYWMvSW50
ZXJuYWxIZWFkZXJzICQoTkVYVF9ST09UKS91c3IvbG9jYWwvaW5jbHVkZS9XZWJDb3JlVGVzdFN1
cHBvcnQ7CiBGUkFNRVdPUktfU0VBUkNIX1BBVEhTW3Nkaz1pcGhvbmUqXSA9ICQoU1lTVEVNX0xJ
QlJBUllfRElSKS9Qcml2YXRlRnJhbWV3b3JrczsKK0dDQ19OT19DT01NT05fQkxPQ0tTID0gWUVT
OworRU5BQkxFX1NUUklDVF9PQkpDX01TR1NFTkQ9WUVTOwogR0NDX1BSRVBST0NFU1NPUl9ERUZJ
TklUSU9OUyA9ICQoREVCVUdfREVGSU5FUykgJChHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05T
XyQoUExBVEZPUk1fTkFNRSkpOwogR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OU19tYWNvc3gg
PSBFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQ7CiBERUJVR19JTkZPUk1BVElPTl9GT1JNQVQgPSBk
d2FyZi13aXRoLWRzeW07CkBAIC0zOSwxMCArNDEsMjAgQEAgR0NDX0VOQUJMRV9DUFBfUlRUSSA9
IE5POwogR0NDX09CSkNfQ0FMTF9DWFhfQ0RUT1JTID0gWUVTCiBHQ0NfUFJFQ09NUElMRV9QUkVG
SVhfSEVBREVSID0gWUVTCiBHQ0NfVFJFQVRfV0FSTklOR1NfQVNfRVJST1JTID0gWUVTCitDTEFO
R19XQVJOX0JPT0xfQ09OVkVSU0lPTiA9IFlFUzsKK0NMQU5HX1dBUk5fQ09OU1RBTlRfQ09OVkVS
U0lPTiA9IFlFUzsKK0NMQU5HX1dBUk5fRU1QVFlfQk9EWSA9IFlFUzsKK0NMQU5HX1dBUk5fRU5V
TV9DT05WRVJTSU9OID0gWUVTOworQ0xBTkdfV0FSTl9JTlRfQ09OVkVSU0lPTiA9IFlFUzsKK0NM
QU5HX1dBUk5fVU5SRUFDSEFCTEVfQ09ERSA9IFlFUzsKIEdDQ19WRVJTSU9OID0gY29tLmFwcGxl
LmNvbXBpbGVycy5sbHZtLmNsYW5nLjFfMDsKIEdDQ19XQVJOX0FCT1VUX0RFUFJFQ0FURURfRlVO
Q1RJT05TID0gTk8KK0dDQ19XQVJOX0FCT1VUX1JFVFVSTl9UWVBFID0gWUVTOworR0NDX1dBUk5f
VU5JTklUSUFMSVpFRF9BVVRPUyA9IFlFUzsKIEdDQ19XQVJOX1VOVVNFRF9GVU5DVElPTiA9IFlF
UwogR0NDX1dBUk5fVU5VU0VEX1ZBUklBQkxFID0gWUVTCitDTEFOR19XQVJOX19EVVBMSUNBVEVf
TUVUSE9EX01BVENIID0gWUVTOworR0NDX1dBUk5fVU5ERUNMQVJFRF9TRUxFQ1RPUiA9IFlFUzsK
IC8vIEZJWE1FOiA8aHR0cDovL3dlYmtpdC5vcmcvYi8xMTg1OTA+IER1bXBSZW5kZXJUcmVlIHNo
b3VsZCBidWlsZCB3aXRoIC1Xc2hvcnRlbi02NC10by0zMgogR0NDX1dBUk5fNjRfVE9fMzJfQklU
X0NPTlZFUlNJT05bYXJjaD1hcm02NF0gPSBOTzsKIEdDQ19XQVJOXzY0X1RPXzMyX0JJVF9DT05W
RVJTSU9OW2FyY2g9eDg2XzY0XSA9IE5POwpJbmRleDogVG9vbHMvTWluaUJyb3dzZXIvQ29uZmln
dXJhdGlvbnMvQmFzZS54Y2NvbmZpZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9NaW5pQnJvd3Nlci9D
b25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCShyZXZpc2lvbiAxODYyNTkpCisrKyBUb29scy9N
aW5pQnJvd3Nlci9Db25maWd1cmF0aW9ucy9CYXNlLnhjY29uZmlnCSh3b3JraW5nIGNvcHkpCkBA
IC00Nyw2ICs0Nyw3IEBAIEdDQ19XQVJOX1VOREVDTEFSRURfU0VMRUNUT1IgPSBZRVM7CiBHQ0Nf
VkVSU0lPTiA9IGNvbS5hcHBsZS5jb21waWxlcnMubGx2bS5jbGFuZy4xXzA7CiBXQVJOSU5HX0NG
TEFHUyA9IC1XYWxsIC1XIC1Xbm8tdW51c2VkLXBhcmFtZXRlcgogTElOS0VSX0RJU1BMQVlTX01B
TkdMRURfTkFNRVMgPSBZRVM7CitHQ0NfTk9fQ09NTU9OX0JMT0NLUyA9IFlFUzsKIAogVEFSR0VU
X01BQ19PU19YX1ZFUlNJT05fTUFKT1IgPSAkKE1BQ19PU19YX1ZFUlNJT05fTUFKT1IpOwogCklu
ZGV4OiBUb29scy9NaW5pQnJvd3Nlci9NaW5pQnJvd3Nlci54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFRvb2xzL01pbmlCcm93c2VyL01pbmlCcm93c2VyLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDE4NjI1OSkKKysrIFRvb2xzL01pbmlCcm93c2Vy
L01pbmlCcm93c2VyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAg
LTI2NSw3ICsyNjUsNyBAQAogCQkJaXNhID0gUEJYUHJvamVjdDsKIAkJCWF0dHJpYnV0ZXMgPSB7
CiAJCQkJTGFzdFN3aWZ0VXBkYXRlQ2hlY2sgPSAwNzAwOwotCQkJCUxhc3RVcGdyYWRlQ2hlY2sg
PSAwNjAwOworCQkJCUxhc3RVcGdyYWRlQ2hlY2sgPSAwNzAwOwogCQkJCVRhcmdldEF0dHJpYnV0
ZXMgPSB7CiAJCQkJCThEMTEwNzI2MDQ4NkNFQjgwMEU0NzA5MCA9IHsKIAkJCQkJCVN5c3RlbUNh
cGFiaWxpdGllcyA9IHsKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvQ29uZmlndXJhdGlvbnMv
QmFzZS54Y2NvbmZpZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9UZXN0V2ViS2l0QVBJL0NvbmZpZ3Vy
YXRpb25zL0Jhc2UueGNjb25maWcJKHJldmlzaW9uIDE4NjI1OSkKKysrIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvQ29uZmlndXJhdGlvbnMvQmFzZS54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAtMjgs
NiArMjgsNyBAQCBIRUFERVJfU0VBUkNIX1BBVEhTID0gJHtCVUlMVF9QUk9EVUNUU19ECiBGUkFN
RVdPUktfU0VBUkNIX1BBVEhTID0gJChGUkFNRVdPUktfU0VBUkNIX1BBVEhTXyQoUExBVEZPUk1f
TkFNRSkpOwogRlJBTUVXT1JLX1NFQVJDSF9QQVRIU19tYWNvc3ggPSAkKFNZU1RFTV9MSUJSQVJZ
X0RJUikvRnJhbWV3b3Jrcy9RdWFydHouZnJhbWV3b3JrL0ZyYW1ld29ya3MgJChTWVNURU1fTElC
UkFSWV9ESVIpL0ZyYW1ld29ya3MvQXBwbGljYXRpb25TZXJ2aWNlcy5mcmFtZXdvcmsvRnJhbWV3
b3JrcyAkKFNZU1RFTV9MSUJSQVJZX0RJUikvRnJhbWV3b3Jrcy9Db3JlU2VydmljZXMuZnJhbWV3
b3JrL0ZyYW1ld29ya3M7CiAKK0dDQ19OT19DT01NT05fQkxPQ0tTID0gWUVTOwogR0NDX1BSRVBS
T0NFU1NPUl9ERUZJTklUSU9OUyA9ICQoREVCVUdfREVGSU5FUykgR1RFU1RfSEFTX1RSMV9UVVBM
RT0wIEdURVNUX0hBU19SVFRJPTAgJChHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TXyQoUExB
VEZPUk1fTkFNRSkpOwogR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OU19tYWNvc3ggPSBFTkFC
TEVfREFTSEJPQVJEX1NVUFBPUlQ7CiBERUJVR19JTkZPUk1BVElPTl9GT1JNQVQgPSBkd2FyZi13
aXRoLWRzeW07CkBAIC0zNSwxMiArMzYsMjMgQEAgUFJFQklORElORyA9IE5PCiBHQ0NfQ19MQU5H
VUFHRV9TVEFOREFSRCA9IGdudTk5CiBHQ0NfRU5BQkxFX0NQUF9FWENFUFRJT05TID0gTk87CiBH
Q0NfRU5BQkxFX0NQUF9SVFRJID0gTk87CitFTkFCTEVfU1RSSUNUX09CSkNfTVNHU0VORCA9IFlF
UzsKIEdDQ19QUkVDT01QSUxFX1BSRUZJWF9IRUFERVIgPSBZRVMKIEdDQ19UUkVBVF9XQVJOSU5H
U19BU19FUlJPUlMgPSBZRVMKIEdDQ19WRVJTSU9OID0gY29tLmFwcGxlLmNvbXBpbGVycy5sbHZt
LmNsYW5nLjFfMDsKK0NMQU5HX1dBUk5fQk9PTF9DT05WRVJTSU9OID0gWUVTOworQ0xBTkdfV0FS
Tl9DT05TVEFOVF9DT05WRVJTSU9OID0gWUVTOworQ0xBTkdfV0FSTl9FTVBUWV9CT0RZID0gWUVT
OworQ0xBTkdfV0FSTl9FTlVNX0NPTlZFUlNJT04gPSBZRVM7CitDTEFOR19XQVJOX0lOVF9DT05W
RVJTSU9OID0gWUVTOworQ0xBTkdfV0FSTl9VTlJFQUNIQUJMRV9DT0RFID0gWUVTOwogR0NDX1dB
Uk5fQUJPVVRfREVQUkVDQVRFRF9GVU5DVElPTlMgPSBOTworR0NDX1dBUk5fQUJPVVRfUkVUVVJO
X1RZUEUgPSBZRVM7CitHQ0NfV0FSTl9VTklOSVRJQUxJWkVEX0FVVE9TID0gWUVTOwogR0NDX1dB
Uk5fVU5VU0VEX0ZVTkNUSU9OID0gWUVTCiBHQ0NfV0FSTl9VTlVTRURfVkFSSUFCTEUgPSBZRVMK
K0NMQU5HX1dBUk5fX0RVUExJQ0FURV9NRVRIT0RfTUFUQ0ggPSBZRVM7CitHQ0NfV0FSTl9VTkRF
Q0xBUkVEX1NFTEVDVE9SID0gWUVTOwogR0NDX1dBUk5fNjRfVE9fMzJfQklUX0NPTlZFUlNJT05b
YXJjaD1hcm02NF0gPSBOTzsKIEdDQ19XQVJOXzY0X1RPXzMyX0JJVF9DT05WRVJTSU9OW2FyY2g9
eDg2XzY0XSA9IE5POwogV0FSTklOR19DRkxBR1MgPSAtV2FsbCAtVyAtV25vLXVudXNlZC1wYXJh
bWV0ZXIKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdl
YktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxODYyNTkpCisrKyBU
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agkod29ya2luZyBjb3B5KQpAQCAtMyw3ICszLDcgQEAKIAlhcmNoaXZlVmVyc2lvbiA9IDE7CiAJ
Y2xhc3NlcyA9IHsKIAl9OwotCW9iamVjdFZlcnNpb24gPSA0NTsKKwlvYmplY3RWZXJzaW9uID0g
NDY7CiAJb2JqZWN0cyA9IHsKIAogLyogQmVnaW4gUEJYQnVpbGRGaWxlIHNlY3Rpb24gKi8KQEAg
LTEzODksNiArMTM4OSw3IEBACiAJCQlpc2EgPSBQQlhQcm9qZWN0OwogCQkJYXR0cmlidXRlcyA9
IHsKIAkJCQlMYXN0U3dpZnRVcGRhdGVDaGVjayA9IDA3MDA7CisJCQkJTGFzdFVwZ3JhZGVDaGVj
ayA9IDA3MDA7CiAJCQkJVGFyZ2V0QXR0cmlidXRlcyA9IHsKIAkJCQkJN0NDRTdFOEIxQTQxMTQ0
RTAwNDQ3QzRDID0gewogCQkJCQkJQ3JlYXRlZE9uVG9vbHNWZXJzaW9uID0gNi4zOwpAQCAtMTM5
Niw3ICsxMzk3LDcgQEAKIAkJCQl9OwogCQkJfTsKIAkJCWJ1aWxkQ29uZmlndXJhdGlvbkxpc3Qg
PSAxREVCOTI3ODA4NzMzREQ0MDAxMEU5Q0QgLyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZv
ciBQQlhQcm9qZWN0ICJUZXN0V2ViS2l0QVBJIiAqLzsKLQkJCWNvbXBhdGliaWxpdHlWZXJzaW9u
ID0gIlhjb2RlIDMuMSI7CisJCQljb21wYXRpYmlsaXR5VmVyc2lvbiA9ICJYY29kZSAzLjIiOwog
CQkJZGV2ZWxvcG1lbnRSZWdpb24gPSBFbmdsaXNoOwogCQkJaGFzU2Nhbm5lZEZvckVuY29kaW5n
cyA9IDE7CiAJCQlrbm93blJlZ2lvbnMgPSAoCg==
</data>
<flag name="review"
          id="281201"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>