<?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>190502</bug_id>
          
          <creation_ts>2018-10-11 17:28:50 -0700</creation_ts>
          <short_desc>[MediaStream] Clean up capture source factory management</short_desc>
          <delta_ts>2018-10-17 14:06:41 -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>WebRTC</component>
          <version>Other</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="Eric Carlson">eric.carlson</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1468272</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2018-10-11 17:28:50 -0700</bug_when>
    <thetext>Clean up capture source factory management</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468273</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-10-11 17:29:27 -0700</bug_when>
    <thetext>&lt;rdar://problem/45212447&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468276</commentid>
    <comment_count>2</comment_count>
      <attachid>352113</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2018-10-11 17:38:04 -0700</bug_when>
    <thetext>Created attachment 352113
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468440</commentid>
    <comment_count>3</comment_count>
      <attachid>352113</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-10-12 09:08:53 -0700</bug_when>
    <thetext>Comment on attachment 352113
Patch

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

&gt; Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.cpp:336
&gt; +static AudioCaptureFactory* audioFactoryOverride;

Maybe this should be a member of RealtimeMediaSourceCenter and we would access to it through RealtimeMediaSourceCenter::singleton()
Ditto for video capture factory.

&gt; Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.cpp:341
&gt; +void RealtimeMediaSourceCenter::unsetAudioFactory(AudioCaptureFactory&amp;)

Should we remove this parameter or do something like 
ASSERT(audioFactoryOverride == unsetAudioFactory)?
Ditto below.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470170</commentid>
    <comment_count>4</comment_count>
      <attachid>352585</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2018-10-17 10:37:51 -0700</bug_when>
    <thetext>Created attachment 352585
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470196</commentid>
    <comment_count>5</comment_count>
      <attachid>352585</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-17 10:56:42 -0700</bug_when>
    <thetext>Comment on attachment 352585
Patch for landing

Rejecting attachment 352585 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-02&apos;, &apos;build&apos;, &apos;--no-clean&apos;, &apos;--no-update&apos;, &apos;--build-style=release&apos;, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 5000 characters of output:
O -DENABLE_VIDEO_PRESENTATION_MODE -DENABLE_VIDEO_TRACK -DENABLE_VIDEO_USES_ELEMENT_FULLSCREEN -DENABLE_WEB_AUDIO -DENABLE_WEB_AUTHN -DENABLE_WEB_RTC -DENABLE_WEBGL -DENABLE_WEBGL2 -DENABLE_WEBGPU -DENABLE_WEBMETAL -DENABLE_WIRELESS_PLAYBACK_TARGET -DENABLE_XSLT -DBUILDING_WEBKIT -DU_DISABLE_RENAMING=1 -DU_SHOW_CPLUSPLUS_API=0 -DGL_SILENCE_DEPRECATION=1 -DGLES_SILENCE_DEPRECATION=1 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk -fasm-blocks -fstrict-aliasing -Wdeprecated-declarations -Winvalid-offsetof -mmacosx-version-min=10.12 -g -fvisibility=hidden -fvisibility-inlines-hidden -fno-threadsafe-statics -Wno-sign-conversion -Winfinite-recursion -Wmove -iquote /Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.build/WebCore-generated-files.hmap -I/Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.build/WebCore-own-target-headers.hmap -I/Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.build/WebCore-all-target-headers.hmap -iquote /Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.build/WebCore-project-headers.hmap -I/Volumes/Data/EWS/WebKit/WebKitBuild/Release/include -IPAL -IForwardingHeaders -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/usr/include/libxslt -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/usr/include/libxml2 -I/Volumes/Data/EWS/WebKit/WebKitBuild/Release/DerivedSources/WebCore -I/Volumes/Data/EWS/WebKit/WebKitBuild/Release/usr/local/include -I/Volumes/Data/EWS/WebKit/WebKitBuild/Release/usr/local/include/WebKitAdditions -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/usr/local/include/WebKitAdditions -I/Volumes/Data/EWS/WebKit/WebKitBuild/Release/usr/local/include/webrtc -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/usr/local/include/webrtc -I/Volumes/Data/EWS/WebKit/WebKitBuild/Release/usr/local/include/webrtc/sdk/objc/Framework/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/usr/local/include/webrtc/sdk/objc/Framework/Headers -I/Volumes/Data/EWS/WebKit/Source/WebCore -I/Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.build/DerivedSources/x86_64 -I/Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.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 -Wno-unknown-warning-option -F/Volumes/Data/EWS/WebKit/WebKitBuild/Release -iframework /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/PrivateFrameworks -iframework /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks -isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/System.framework/PrivateHeaders -iframework /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/Carbon.framework/Frameworks -iframework /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/ApplicationServices.framework/Frameworks -iframework /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/CoreServices.framework/Frameworks -iframework /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/Quartz.framework/Frameworks -include /Volumes/Data/EWS/WebKit/WebKitBuild/PrecompiledHeaders/WebCorePrefix-fielieppbsqcbwcivnpwietozsit/WebCorePrefix.h -MMD -MT dependencies -MF /Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/x86_64/UnifiedSource351.d --serialize-diagnostics /Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/x86_64/UnifiedSource351.dia -c /Volumes/Data/EWS/WebKit/WebKitBuild/Release/DerivedSources/WebCore/unified-sources/UnifiedSource351.cpp -o /Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/x86_64/UnifiedSource351.o

** BUILD FAILED **


The following build commands failed:
	CompileC /Volumes/Data/EWS/WebKit/WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/x86_64/UnifiedSource348.o /Volumes/Data/EWS/WebKit/WebKitBuild/Release/DerivedSources/WebCore/unified-sources/UnifiedSource348.cpp normal x86_64 c++ com.apple.compilers.llvm.clang.1_0.compiler
(1 failure)

Full output: https://webkit-queues.webkit.org/results/9638094</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470221</commentid>
    <comment_count>6</comment_count>
      <attachid>352598</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2018-10-17 11:31:27 -0700</bug_when>
    <thetext>Created attachment 352598
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470298</commentid>
    <comment_count>7</comment_count>
      <attachid>352628</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2018-10-17 13:14:19 -0700</bug_when>
    <thetext>Created attachment 352628
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470328</commentid>
    <comment_count>8</comment_count>
      <attachid>352628</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-17 14:06:39 -0700</bug_when>
    <thetext>Comment on attachment 352628
Patch for landing

Clearing flags on attachment: 352628

Committed r237234: &lt;https://trac.webkit.org/changeset/237234&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470330</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-17 14:06:41 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352113</attachid>
            <date>2018-10-11 17:38:04 -0700</date>
            <delta_ts>2018-10-17 11:31:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-190502-20181011173803.patch</filename>
            <type>text/plain</type>
            <size>17651</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3MDM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzBmNDM0NzgzOGNiZjZj
OTViM2VkYmM5MTRhZDI5MDM0YzU3MWNkYy4uOTc5NGNjN2NhYTUxZjczNmZiNTY1NWQ0MjA5MTlm
NzE2YTA3YzdkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU2IEBACisyMDE4LTEwLTExICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtNZWRpYVN0cmVh
bV0gQ2xlYW4gdXAgY2FwdHVyZSBzb3VyY2UgZmFjdG9yeSBtYW5hZ2VtZW50CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA1MDIKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzQ1MjEyNDQ3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgbm8gZnVuY3Rpb25hbCBjaGFuZ2UuCisKKyAg
ICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNldEF1ZGlv
RmFjdG9yeSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp1
bnNldEF1ZGlvRmFjdG9yeSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyOjphdWRpb0ZhY3RvcnkpOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlcjo6c2V0VmlkZW9GYWN0b3J5KToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1l
TWVkaWFTb3VyY2VDZW50ZXI6OnVuc2V0VmlkZW9GYWN0b3J5KToKKyAgICAgICAgKFdlYkNvcmU6
OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnZpZGVvRmFjdG9yeSk6CisgICAgICAgIChXZWJD
b3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpzZXREaXNwbGF5Q2FwdHVyZUZhY3Rvcnkp
OgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dW5zZXREaXNw
bGF5Q2FwdHVyZUZhY3RvcnkpOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlcjo6ZGlzcGxheUNhcHR1cmVGYWN0b3J5KToKKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRp
YXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpzZXRBdWRpb0ZhY3RvcnkpOiBEZWxldGVkLgorICAg
ICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dW5zZXRBdWRpb0ZhY3Rv
cnkpOiBEZWxldGVkLgorICAgICAgICAoKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQy5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRD
OjphdWRpb0ZhY3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFT
b3VyY2VDZW50ZXJMaWJXZWJSVEM6OnZpZGVvRmFjdG9yeVByaXZhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQzo6ZGlzcGxheUNhcHR1cmVG
YWN0b3J5UHJpdmF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyTGliV2ViUlRDOjphdWRpb0NhcHR1cmVTb3VyY2VGYWN0b3J5KTogRGVsZXRlZC4KKyAgICAg
ICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEM6OmF1ZGlvRmFj
dG9yeSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyTGliV2ViUlRDOjp2aWRlb0ZhY3RvcnkpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQzo6ZGlzcGxheUNhcHR1cmVGYWN0b3J5
KTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVh
bHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQy5oOgorICAgICAgICAqIHBsYXRmb3JtL21l
ZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmF1ZGlvRmFjdG9yeVByaXZh
dGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6dmlk
ZW9GYWN0b3J5UHJpdmF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyTWFjOjpkaXNwbGF5Q2FwdHVyZUZhY3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdlYkNv
cmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OnZpZGVvQ2FwdHVyZVNvdXJjZUZhY3Rv
cnkpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ck1hYzo6ZGlzcGxheUNhcHR1cmVTb3VyY2VGYWN0b3J5KTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmF1ZGlvQ2FwdHVyZVNvdXJjZUZh
Y3RvcnkpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlck1hYzo6YXVkaW9GYWN0b3J5KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0
aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OnZpZGVvRmFjdG9yeSk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjpkaXNwbGF5Q2FwdHVyZUZh
Y3RvcnkpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmg6CisgICAgICAgICogcGxhdGZvcm0vbW9jay9Nb2Nr
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNb2NrUmVh
bHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6YXVkaW9GYWN0b3J5UHJpdmF0ZSk6CisgICAgICAgIChX
ZWJDb3JlOjpNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dmlkZW9GYWN0b3J5UHJpdmF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6ZGlz
cGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpNb2NrUmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlcjo6YXVkaW9GYWN0b3J5KTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6Ok1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp2aWRlb0ZhY3RvcnkpOiBEZWxl
dGVkLgorICAgICAgICAoV2ViQ29yZTo6TW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmRp
c3BsYXlDYXB0dXJlRmFjdG9yeSk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vbW9jay9N
b2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oOgorCiAyMDE4LTEwLTExICBFbnJpcXVlIE9j
YcOxYSBHb256w6FsZXogIDxlb2NhbmhhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dTdHJlYW1l
cl1bTVNFXSBGaXggaGVpZ2h0IGNhbGN1bGF0aW9uIGZvciBzdHJlYW1zIHdpdGggc291cmNlIGFz
cGVjdCByYXRpbwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAppbmRleCBhNmY4ZmYz
MTNmZWM5NmFlZDViODkwMDQ4YjNiZjY0NTk0NDhkMzc3Li5iMjNjOGY3ZDVlMjI0ZWY2OWY4YjI5
OThmNTgxZDg1NjBiZGVmZGM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcApA
QCAtMzMzLDYgKzMzMyw1MSBAQCBzdGQ6Om9wdGlvbmFsPENhcHR1cmVEZXZpY2U+IFJlYWx0aW1l
TWVkaWFTb3VyY2VDZW50ZXI6OmNhcHR1cmVEZXZpY2VXaXRoUGVyc2lzdAogICAgIHJldHVybiBz
dGQ6Om51bGxvcHQ7CiB9CiAKK3N0YXRpYyBBdWRpb0NhcHR1cmVGYWN0b3J5KiBhdWRpb0ZhY3Rv
cnlPdmVycmlkZTsKK3ZvaWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0QXVkaW9GYWN0
b3J5KEF1ZGlvQ2FwdHVyZUZhY3RvcnkmIGZhY3RvcnkpCit7CisgICAgYXVkaW9GYWN0b3J5T3Zl
cnJpZGUgPSAmZmFjdG9yeTsKK30KK3ZvaWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dW5z
ZXRBdWRpb0ZhY3RvcnkoQXVkaW9DYXB0dXJlRmFjdG9yeSYpCit7CisgICAgYXVkaW9GYWN0b3J5
T3ZlcnJpZGUgPSBudWxscHRyOworfQorCitBdWRpb0NhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyOjphdWRpb0ZhY3RvcnkoKQoreworICAgIHJldHVybiBhdWRpb0ZhY3Rv
cnlPdmVycmlkZSA/ICphdWRpb0ZhY3RvcnlPdmVycmlkZSA6IFJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXI6OnNpbmdsZXRvbigpLmF1ZGlvRmFjdG9yeVByaXZhdGUoKTsKK30KKworc3RhdGljIFZp
ZGVvQ2FwdHVyZUZhY3RvcnkqIHZpZGVvRmFjdG9yeU92ZXJyaWRlOwordm9pZCBSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyOjpzZXRWaWRlb0ZhY3RvcnkoVmlkZW9DYXB0dXJlRmFjdG9yeSYgZmFj
dG9yeSkKK3sKKyAgICB2aWRlb0ZhY3RvcnlPdmVycmlkZSA9ICZmYWN0b3J5OworfQordm9pZCBS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp1bnNldFZpZGVvRmFjdG9yeShWaWRlb0NhcHR1cmVG
YWN0b3J5JikKK3sKKyAgICB2aWRlb0ZhY3RvcnlPdmVycmlkZSA9IG51bGxwdHI7Cit9CisKK1Zp
ZGVvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnZpZGVvRmFjdG9y
eSgpCit7CisgICAgcmV0dXJuIHZpZGVvRmFjdG9yeU92ZXJyaWRlID8gKnZpZGVvRmFjdG9yeU92
ZXJyaWRlIDogUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2luZ2xldG9uKCkudmlkZW9GYWN0
b3J5UHJpdmF0ZSgpOworfQorCitzdGF0aWMgRGlzcGxheUNhcHR1cmVGYWN0b3J5KiBkaXNwbGF5
Q2FwdHVyZUZhY3RvcnlPdmVycmlkZTsKK3ZvaWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6
c2V0RGlzcGxheUNhcHR1cmVGYWN0b3J5KERpc3BsYXlDYXB0dXJlRmFjdG9yeSYgZmFjdG9yeSkK
K3sKKyAgICBkaXNwbGF5Q2FwdHVyZUZhY3RvcnlPdmVycmlkZSA9ICZmYWN0b3J5OworfQordm9p
ZCBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp1bnNldERpc3BsYXlDYXB0dXJlRmFjdG9yeShE
aXNwbGF5Q2FwdHVyZUZhY3RvcnkmKQoreworICAgIGRpc3BsYXlDYXB0dXJlRmFjdG9yeU92ZXJy
aWRlID0gbnVsbHB0cjsKK30KKworRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyOjpkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKQoreworICAgIHJldHVybiBkaXNw
bGF5Q2FwdHVyZUZhY3RvcnlPdmVycmlkZSA/ICpkaXNwbGF5Q2FwdHVyZUZhY3RvcnlPdmVycmlk
ZSA6IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNpbmdsZXRvbigpLmRpc3BsYXlDYXB0dXJl
RmFjdG9yeVByaXZhdGUoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYg
Ly8gRU5BQkxFKE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAppbmRl
eCA0ZTE3MDI3ZGU2ZWNjOGI0MDc5YmI0NWNiMDg5NzYyMzQyYzcyNTE4Li4xZWZmZmRiNmMwYjYx
MWRlYzIzNTk1YmM5Mjk0ZjBmNjFkMGFhZmMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ci5oCkBAIC03MiwxMyArNzIsMTcgQEAgcHVibGljOgogICAgIAogICAgIGNvbnN0IFJlYWx0aW1l
TWVkaWFTb3VyY2VTdXBwb3J0ZWRDb25zdHJhaW50cyYgc3VwcG9ydGVkQ29uc3RyYWludHMoKSB7
IHJldHVybiBtX3N1cHBvcnRlZENvbnN0cmFpbnRzOyB9CiAKLSAgICB2aXJ0dWFsIHZvaWQgc2V0
QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3RvcnkmKSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQg
dW5zZXRBdWRpb0ZhY3RvcnkoQXVkaW9DYXB0dXJlRmFjdG9yeSYpIHsgfQotICAgIFdFQkNPUkVf
RVhQT1JUIHZpcnR1YWwgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCkgPSAwOwor
ICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRpb0ZhY3Rv
cnkoKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRBdWRpb0ZhY3RvcnkoQXVk
aW9DYXB0dXJlRmFjdG9yeSYpOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHVuc2V0
QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3RvcnkmKTsKIAotICAgIHZpcnR1YWwgVmlkZW9D
YXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5KCkgPSAwOworICAgIFdFQkNPUkVfRVhQT1JUIHN0
YXRpYyBWaWRlb0NhcHR1cmVGYWN0b3J5JiB2aWRlb0ZhY3RvcnkoKTsKKyAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgdm9pZCBzZXRWaWRlb0ZhY3RvcnkoVmlkZW9DYXB0dXJlRmFjdG9yeSYpOwor
ICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHVuc2V0VmlkZW9GYWN0b3J5KFZpZGVvQ2Fw
dHVyZUZhY3RvcnkmKTsKIAotICAgIHZpcnR1YWwgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNw
bGF5Q2FwdHVyZUZhY3RvcnkoKSA9IDA7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIERpc3Bs
YXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxheUNhcHR1cmVGYWN0b3J5KCk7CisgICAgV0VCQ09SRV9F
WFBPUlQgc3RhdGljIHZvaWQgc2V0RGlzcGxheUNhcHR1cmVGYWN0b3J5KERpc3BsYXlDYXB0dXJl
RmFjdG9yeSYpOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHVuc2V0RGlzcGxheUNh
cHR1cmVGYWN0b3J5KERpc3BsYXlDYXB0dXJlRmFjdG9yeSYpOwogCiAgICAgdmlydHVhbCBDYXB0
dXJlRGV2aWNlTWFuYWdlciYgYXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpID0gMDsKICAgICB2
aXJ0dWFsIENhcHR1cmVEZXZpY2VNYW5hZ2VyJiB2aWRlb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkg
PSAwOwpAQCAtMTAwLDggKzEwNCw5IEBAIHByb3RlY3RlZDoKICAgICBzdGF0aWMgUmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlciYgcGxhdGZvcm1DZW50ZXIoKTsKICAgICBSZWFsdGltZU1lZGlhU291
cmNlU3VwcG9ydGVkQ29uc3RyYWludHMgbV9zdXBwb3J0ZWRDb25zdHJhaW50czsKIAotICAgIENh
cHR1cmVEZXZpY2VNYW5hZ2VyKiBtX2F1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIgeyBudWxscHRy
IH07Ci0gICAgQ2FwdHVyZURldmljZU1hbmFnZXIqIG1fdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdl
ciB7IG51bGxwdHIgfTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIEF1ZGlvQ2FwdHVyZUZh
Y3RvcnkmIGF1ZGlvRmFjdG9yeVByaXZhdGUoKSA9IDA7CisgICAgV0VCQ09SRV9FWFBPUlQgdmly
dHVhbCBWaWRlb0NhcHR1cmVGYWN0b3J5JiB2aWRlb0ZhY3RvcnlQcml2YXRlKCkgPSAwOworICAg
IFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNwbGF5Q2Fw
dHVyZUZhY3RvcnlQcml2YXRlKCkgPSAwOwogCiBwcml2YXRlOgogICAgIHN0cnVjdCBEZXZpY2VJ
bmZvIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dz
dHJlYW1lci9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyTGliV2ViUlRDLmNwcAppbmRleCBhZDg0NGFiZGRhOGNkMGMxMjBmMDkxMzU0ODZlZWYz
YzY5ZTY4YmVkLi42Y2FlYzEzMGM4MTQ1ZWEwN2UxMDYzNzkxZDcxODYwNDA5NTU4YWRkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVh
bHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJM
aWJXZWJSVEMuY3BwCkBAIC0zMiwxMSArMzIsNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LUF1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEM6
OmF1ZGlvQ2FwdHVyZVNvdXJjZUZhY3RvcnkoKQotewotICAgIHJldHVybiBSZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyTGliV2ViUlRDOjpzaW5nbGV0b24oKS5hdWRpb0ZhY3RvcnkoKTsKLX0KLQog
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQyYgUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlckxpYldlYlJUQzo6c2luZ2xldG9uKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkp
OwpAQCAtNTcsMjAgKzUyLDE3IEBAIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEM6
On5SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDKCkKIHsKIH0KIAotQXVkaW9DYXB0
dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQzo6YXVkaW9GYWN0
b3J5KCkKK0F1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJX
ZWJSVEM6OmF1ZGlvRmFjdG9yeVByaXZhdGUoKQogewotICAgIGlmIChtX2F1ZGlvRmFjdG9yeU92
ZXJyaWRlKQotICAgICAgICByZXR1cm4gKm1fYXVkaW9GYWN0b3J5T3ZlcnJpZGU7Ci0KICAgICBy
ZXR1cm4gR1N0cmVhbWVyQXVkaW9DYXB0dXJlU291cmNlOjpmYWN0b3J5KCk7CiB9CiAKLVZpZGVv
Q2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEM6OnZpZGVv
RmFjdG9yeSgpCitWaWRlb0NhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVy
TGliV2ViUlRDOjp2aWRlb0ZhY3RvcnlQcml2YXRlKCkKIHsKICAgICByZXR1cm4gR1N0cmVhbWVy
VmlkZW9DYXB0dXJlU291cmNlOjpmYWN0b3J5KCk7CiB9CiAKLURpc3BsYXlDYXB0dXJlRmFjdG9y
eSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQzo6ZGlzcGxheUNhcHR1cmVGYWN0
b3J5KCkKK0Rpc3BsYXlDYXB0dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxp
YldlYlJUQzo6ZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpCiB7CiAgICAgcmV0dXJuIEdT
dHJlYW1lclZpZGVvQ2FwdHVyZVNvdXJjZTo6ZGlzcGxheUZhY3RvcnkoKTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQy5o
CmluZGV4IDM3YWE0ZmVkZDgxNGQzNzIwNzlkYjc0ZWJkNTdkZjNiOGYxOWNlMzYuLjEwZTRmYjgx
NmYwNjIxODlhODI4N2QwY2Q3Mjc4YjI1MjU3MDlmZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyTGliV2ViUlRDLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0v
Z3N0cmVhbWVyL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEMuaApAQCAtMzgsMjAg
KzM4LDE0IEBAIGNsYXNzIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEMgZmluYWwg
OiBwdWJsaWMgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlCiBwdWJsaWM6CiAgICAgV0VCQ09SRV9F
WFBPUlQgc3RhdGljIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEMmIHNpbmdsZXRv
bigpOwogCi0gICAgc3RhdGljIFZpZGVvQ2FwdHVyZUZhY3RvcnkmIHZpZGVvQ2FwdHVyZVNvdXJj
ZUZhY3RvcnkoKTsKLSAgICBzdGF0aWMgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9DYXB0dXJl
U291cmNlRmFjdG9yeSgpOwotCiBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBOZXZlckRlc3Ry
b3llZDxSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDPjsKICAgICBSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyTGliV2ViUlRDKCk7CiAgICAgflJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJMaWJXZWJSVEMoKTsKIAotICAgIHZvaWQgc2V0QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZh
Y3RvcnkmIGZhY3RvcnkpIGZpbmFsIHsgbV9hdWRpb0ZhY3RvcnlPdmVycmlkZSA9ICZmYWN0b3J5
OyB9Ci0gICAgdm9pZCB1bnNldEF1ZGlvRmFjdG9yeShBdWRpb0NhcHR1cmVGYWN0b3J5JikgZmlu
YWwgeyBtX2F1ZGlvRmFjdG9yeU92ZXJyaWRlID0gbnVsbHB0cjsgfQotCi0gICAgQXVkaW9DYXB0
dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCkgZmluYWw7Ci0gICAgVmlkZW9DYXB0dXJlRmFjdG9y
eSYgdmlkZW9GYWN0b3J5KCkgZmluYWw7Ci0gICAgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNw
bGF5Q2FwdHVyZUZhY3RvcnkoKSBmaW5hbDsKKyAgICBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRp
b0ZhY3RvcnlQcml2YXRlKCkgZmluYWw7CisgICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9G
YWN0b3J5UHJpdmF0ZSgpIGZpbmFsOworICAgIERpc3BsYXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxh
eUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpIGZpbmFsOwogCiAgICAgQ2FwdHVyZURldmljZU1hbmFn
ZXImIGF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIoKSBmaW5hbDsKICAgICBDYXB0dXJlRGV2aWNl
TWFuYWdlciYgdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpIGZpbmFsOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFTb3Vy
Y2VDZW50ZXJNYWMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFj
L1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuY3BwCmluZGV4IGJjYTZkZDFjNmUyNmIyZDhi
Yzc0M2QyNTg0NzExODE0ZDdkOGQ5ODQuLjIwYWJmNjY3M2I0MTI3NzViYTk1ODNhODYzNmVmNTU4
OWU3MmMzY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYy5j
cHAKQEAgLTk1LDIzICs5NSw2IEBAIHB1YmxpYzoKICAgICB9CiB9OwogCi1WaWRlb0NhcHR1cmVG
YWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjp2aWRlb0NhcHR1cmVTb3VyY2VG
YWN0b3J5KCkKLXsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8VmlkZW9DYXB0dXJlU291cmNl
RmFjdG9yeU1hYz4gZmFjdG9yeTsKLSAgICByZXR1cm4gZmFjdG9yeS5nZXQoKTsKLX0KLQotRGlz
cGxheUNhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjpkaXNwbGF5
Q2FwdHVyZVNvdXJjZUZhY3RvcnkoKQotewotICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxEaXNw
bGF5Q2FwdHVyZVNvdXJjZUZhY3RvcnlNYWM+IGZhY3Rvcnk7Ci0gICAgcmV0dXJuIGZhY3Rvcnku
Z2V0KCk7Ci19Ci0KLUF1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJNYWM6OmF1ZGlvQ2FwdHVyZVNvdXJjZUZhY3RvcnkoKQotewotICAgIHJldHVybiBSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyTWFjOjpzaW5nbGV0b24oKS5hdWRpb0ZhY3RvcnkoKTsKLX0KLQog
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYyYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1h
Yzo6c2luZ2xldG9uKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwpAQCAtMTI5LDIy
ICsxMTIsMjEgQEAgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6UmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlck1hYygpID0gZGVmYXVsdDsKIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6
On5SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjKCkgPSBkZWZhdWx0OwogCiAKLUF1ZGlvQ2Fw
dHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmF1ZGlvRmFjdG9yeSgp
CitBdWRpb0NhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjphdWRp
b0ZhY3RvcnlQcml2YXRlKCkKIHsKLSAgICBpZiAobV9hdWRpb0ZhY3RvcnlPdmVycmlkZSkKLSAg
ICAgICAgcmV0dXJuICptX2F1ZGlvRmFjdG9yeU92ZXJyaWRlOwotCiAgICAgcmV0dXJuIENvcmVB
dWRpb0NhcHR1cmVTb3VyY2U6OmZhY3RvcnkoKTsKIH0KIAotVmlkZW9DYXB0dXJlRmFjdG9yeSYg
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6dmlkZW9GYWN0b3J5KCkKK1ZpZGVvQ2FwdHVy
ZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OnZpZGVvRmFjdG9yeVByaXZh
dGUoKQogewotICAgIHJldHVybiB2aWRlb0NhcHR1cmVTb3VyY2VGYWN0b3J5KCk7CisgICAgc3Rh
dGljIE5ldmVyRGVzdHJveWVkPFZpZGVvQ2FwdHVyZVNvdXJjZUZhY3RvcnlNYWM+IGZhY3Rvcnk7
CisgICAgcmV0dXJuIGZhY3RvcnkuZ2V0KCk7CiB9CiAKLURpc3BsYXlDYXB0dXJlRmFjdG9yeSYg
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6ZGlzcGxheUNhcHR1cmVGYWN0b3J5KCkKK0Rp
c3BsYXlDYXB0dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6ZGlzcGxh
eUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpCiB7Ci0gICAgcmV0dXJuIGRpc3BsYXlDYXB0dXJlU291
cmNlRmFjdG9yeSgpOworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxEaXNwbGF5Q2FwdHVyZVNv
dXJjZUZhY3RvcnlNYWM+IGZhY3Rvcnk7CisgICAgcmV0dXJuIGZhY3RvcnkuZ2V0KCk7CiB9CiAK
IENhcHR1cmVEZXZpY2VNYW5hZ2VyJiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjphdWRp
b0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlck1hYy5oCmluZGV4IDU4ZjRhMTgzM2YxMWQ4MmIwMTU5MDFhMzhhYTg5NDFhNmMxMzNlMjcu
LmMyNmVjNzNhN2MyMGFiMTcyNTdkMzYxZWUwNGQ0YmY3NTcyZjRlMTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyTWFjLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFj
L1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTMtMjAxNyBBcHBsZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMTggQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNDQsMjEgKzQ0LDE0IEBAIGNs
YXNzIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMgZmluYWwgOiBwdWJsaWMgUmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlciB7CiBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJl
YWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMmIHNpbmdsZXRvbigpOwogCi0gICAgc3RhdGljIFZp
ZGVvQ2FwdHVyZUZhY3RvcnkmIHZpZGVvQ2FwdHVyZVNvdXJjZUZhY3RvcnkoKTsKLSAgICBzdGF0
aWMgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9DYXB0dXJlU291cmNlRmFjdG9yeSgpOwotICAg
IHN0YXRpYyBEaXNwbGF5Q2FwdHVyZUZhY3RvcnkmIGRpc3BsYXlDYXB0dXJlU291cmNlRmFjdG9y
eSgpOwotCiBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBOZXZlckRlc3Ryb3llZDxSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyTWFjPjsKICAgICBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFj
KCk7CiAgICAgflJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMoKTsKIAotICAgIHZvaWQgc2V0
QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3RvcnkmIGZhY3RvcnkpIGZpbmFsIHsgbV9hdWRp
b0ZhY3RvcnlPdmVycmlkZSA9ICZmYWN0b3J5OyB9Ci0gICAgdm9pZCB1bnNldEF1ZGlvRmFjdG9y
eShBdWRpb0NhcHR1cmVGYWN0b3J5JikgZmluYWwgeyBtX2F1ZGlvRmFjdG9yeU92ZXJyaWRlID0g
bnVsbHB0cjsgfQotCi0gICAgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCkgZmlu
YWw7Ci0gICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5KCkgZmluYWw7Ci0gICAg
RGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKSBmaW5hbDsKKyAg
ICBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRpb0ZhY3RvcnlQcml2YXRlKCkgZmluYWw7CisgICAg
VmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5UHJpdmF0ZSgpIGZpbmFsOworICAgIERp
c3BsYXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpIGZpbmFs
OwogCiAgICAgQ2FwdHVyZURldmljZU1hbmFnZXImIGF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIo
KSBmaW5hbDsKICAgICBDYXB0dXJlRGV2aWNlTWFuYWdlciYgdmlkZW9DYXB0dXJlRGV2aWNlTWFu
YWdlcigpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9N
b2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAppbmRleCBiZWFhM2U1NDE3
MDBlYjUzZWEwMDQwYmI5MzA3M2E3NGI1MmZjMWQ4Li4xMjIzYzRhMWFlNGNmZDE2NmEwMjUzZGRm
ZGU4ZTA5MWI1NDE1OWE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2Nr
L01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcApAQCAtMzA5LDE5
ICszMDksMTkgQEAgVmVjdG9yPENhcHR1cmVEZXZpY2U+JiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlcjo6ZGlzcGxheURldmljZXMoKQogICAgIHJldHVybiBkaXNwbGF5RGV2aWNlczsKIH0K
IAotQXVkaW9DYXB0dXJlRmFjdG9yeSYgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmF1
ZGlvRmFjdG9yeSgpCitBdWRpb0NhcHR1cmVGYWN0b3J5JiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlcjo6YXVkaW9GYWN0b3J5UHJpdmF0ZSgpCiB7CiAgICAgc3RhdGljIE5ldmVyRGVzdHJv
eWVkPE1vY2tSZWFsdGltZUF1ZGlvU291cmNlRmFjdG9yeT4gZmFjdG9yeTsKICAgICByZXR1cm4g
ZmFjdG9yeS5nZXQoKTsKIH0KIAotVmlkZW9DYXB0dXJlRmFjdG9yeSYgTW9ja1JlYWx0aW1lTWVk
aWFTb3VyY2VDZW50ZXI6OnZpZGVvRmFjdG9yeSgpCitWaWRlb0NhcHR1cmVGYWN0b3J5JiBNb2Nr
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dmlkZW9GYWN0b3J5UHJpdmF0ZSgpCiB7CiAgICAg
c3RhdGljIE5ldmVyRGVzdHJveWVkPE1vY2tSZWFsdGltZVZpZGVvU291cmNlRmFjdG9yeT4gZmFj
dG9yeTsKICAgICByZXR1cm4gZmFjdG9yeS5nZXQoKTsKIH0KIAotRGlzcGxheUNhcHR1cmVGYWN0
b3J5JiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6ZGlzcGxheUNhcHR1cmVGYWN0b3J5
KCkKK0Rpc3BsYXlDYXB0dXJlRmFjdG9yeSYgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6
OmRpc3BsYXlDYXB0dXJlRmFjdG9yeVByaXZhdGUoKQogewogICAgIHN0YXRpYyBOZXZlckRlc3Ry
b3llZDxNb2NrUmVhbHRpbWVEaXNwbGF5U291cmNlRmFjdG9yeT4gZmFjdG9yeTsKICAgICByZXR1
cm4gZmFjdG9yeS5nZXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21v
Y2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAppbmRleCBiZmM1ZTIyMTYz
NDllZDQzZjUyYzYyOTJjZWZkZjNjNDk5M2ZmMTI3Li5mNDkxMTQwODg0NDEyNGZkN2U2YzAxZmU3
NzRjMjY4N2E1MjEyNzU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2Nr
L01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oCkBAIC01OCw5ICs1OCw5
IEBAIHByaXZhdGU6CiAKICAgICBzdGF0aWMgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIm
IHNpbmdsZXRvbigpOwogCi0gICAgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCkg
ZmluYWw7Ci0gICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5KCkgZmluYWw7Ci0g
ICAgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKSBmaW5hbDsK
KyAgICBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRpb0ZhY3RvcnlQcml2YXRlKCkgZmluYWw7Cisg
ICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5UHJpdmF0ZSgpIGZpbmFsOworICAg
IERpc3BsYXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpIGZp
bmFsOwogCiAgICAgQ2FwdHVyZURldmljZU1hbmFnZXImIGF1ZGlvQ2FwdHVyZURldmljZU1hbmFn
ZXIoKSBmaW5hbCB7IHJldHVybiBtX2F1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI7IH0KICAgICBD
YXB0dXJlRGV2aWNlTWFuYWdlciYgdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpIGZpbmFsIHsg
cmV0dXJuIG1fdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcjsgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352585</attachid>
            <date>2018-10-17 10:37:51 -0700</date>
            <delta_ts>2018-10-17 11:31:25 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-190502-20181017103750.patch</filename>
            <type>text/plain</type>
            <size>17822</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3MjIwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWE0NmI3NzY0NzJmODlk
ZTBlYWNjMTBlNjZmNTc0M2ZjMDhlNDQwOC4uMTJiYTFmMTRmNWY2YTUxM2JkMGY4MzY1ZTcwMTlm
YmFmZTA3M2M0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU2IEBACisyMDE4LTEwLTExICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtNZWRpYVN0cmVh
bV0gQ2xlYW4gdXAgY2FwdHVyZSBzb3VyY2UgZmFjdG9yeSBtYW5hZ2VtZW50CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA1MDIKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzQ1MjEyNDQ3PgorCisgICAgICAgIFJldmlld2VkIGJ5IFlvdWVubiBGYWJs
ZXQuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBubyBmdW5jdGlvbmFsIGNoYW5nZS4KKworICAg
ICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0QXVkaW9G
YWN0b3J5KToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnVu
c2V0QXVkaW9GYWN0b3J5KToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXI6OmF1ZGlvRmFjdG9yeSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyOjpzZXRWaWRlb0ZhY3RvcnkpOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlcjo6dW5zZXRWaWRlb0ZhY3RvcnkpOgorICAgICAgICAoV2ViQ29yZTo6
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dmlkZW9GYWN0b3J5KToKKyAgICAgICAgKFdlYkNv
cmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNldERpc3BsYXlDYXB0dXJlRmFjdG9yeSk6
CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp1bnNldERpc3Bs
YXlDYXB0dXJlRmFjdG9yeSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyOjpkaXNwbGF5Q2FwdHVyZUZhY3RvcnkpOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlh
c3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJl
YWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNldEF1ZGlvRmFjdG9yeSk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp1bnNldEF1ZGlvRmFjdG9y
eSk6IERlbGV0ZWQuCisgICAgICAgICgpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL21l
ZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEM6
OmF1ZGlvRmFjdG9yeVByaXZhdGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlckxpYldlYlJUQzo6dmlkZW9GYWN0b3J5UHJpdmF0ZSk6CisgICAgICAgIChXZWJD
b3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDOjpkaXNwbGF5Q2FwdHVyZUZh
Y3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJMaWJXZWJSVEM6OmF1ZGlvQ2FwdHVyZVNvdXJjZUZhY3RvcnkpOiBEZWxldGVkLgorICAgICAg
ICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQzo6YXVkaW9GYWN0
b3J5KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJMaWJXZWJSVEM6OnZpZGVvRmFjdG9yeSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDOjpkaXNwbGF5Q2FwdHVyZUZhY3Rvcnkp
OiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmg6CisgICAgICAgICogcGxhdGZvcm0vbWVk
aWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6YXVkaW9GYWN0b3J5UHJpdmF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjp2aWRl
b0ZhY3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXJNYWM6OmRpc3BsYXlDYXB0dXJlRmFjdG9yeVByaXZhdGUpOgorICAgICAgICAoV2ViQ29y
ZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6dmlkZW9DYXB0dXJlU291cmNlRmFjdG9y
eSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVy
TWFjOjpkaXNwbGF5Q2FwdHVyZVNvdXJjZUZhY3RvcnkpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6YXVkaW9DYXB0dXJlU291cmNlRmFj
dG9yeSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyTWFjOjphdWRpb0ZhY3RvcnkpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6dmlkZW9GYWN0b3J5KTogRGVsZXRlZC4KKyAgICAgICAg
KFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmRpc3BsYXlDYXB0dXJlRmFj
dG9yeSk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0
aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL01vY2tS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tSZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyOjphdWRpb0ZhY3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdl
YkNvcmU6Ok1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp2aWRlb0ZhY3RvcnlQcml2YXRl
KToKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpkaXNw
bGF5Q2FwdHVyZUZhY3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyOjphdWRpb0ZhY3RvcnkpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6TW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnZpZGVvRmFjdG9yeSk6IERlbGV0
ZWQuCisgICAgICAgIChXZWJDb3JlOjpNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6ZGlz
cGxheUNhcHR1cmVGYWN0b3J5KTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL01v
Y2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmg6CisKIDIwMTgtMTAtMTcgIEFsaSBKdW1hICA8
YWp1bWFAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEZsYWt5IEludGVyc2VjdGlvbk9ic2VydmVy
IHdlYiBwbGF0Zm9ybSB0ZXN0cyBpbnZvbHZpbmcgc3R5bGUgdXBkYXRlcwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyLmNwcAppbmRleCBhNmY4ZmYzMTNmZWM5NmFlZDViODkwMDQ4YjNiZjY0
NTk0NDhkMzc3Li5jZWUyY2YyMDQ1OTQ3NjM2MmZhODZhODdjMGJkMDU0ZWFmYzgxYmU3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVh
bS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcApAQCAtMzMzLDYgKzMzMyw1NCBAQCBzdGQ6
Om9wdGlvbmFsPENhcHR1cmVEZXZpY2U+IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmNhcHR1
cmVEZXZpY2VXaXRoUGVyc2lzdAogICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiB9CiAKK3N0YXRp
YyBBdWRpb0NhcHR1cmVGYWN0b3J5KiBhdWRpb0ZhY3RvcnlPdmVycmlkZTsKK3ZvaWQgUmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3Rvcnkm
IGZhY3RvcnkpCit7CisgICAgYXVkaW9GYWN0b3J5T3ZlcnJpZGUgPSAmZmFjdG9yeTsKK30KK3Zv
aWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dW5zZXRBdWRpb0ZhY3RvcnkoQXVkaW9DYXB0
dXJlRmFjdG9yeSYgb2xkT3ZlcnJpZGUpCit7CisgICAgQVNTRVJUKGF1ZGlvRmFjdG9yeU92ZXJy
aWRlID09IG9sZE92ZXJyaWRlKTsKKyAgICBhdWRpb0ZhY3RvcnlPdmVycmlkZSA9IG51bGxwdHI7
Cit9CisKK0F1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmF1
ZGlvRmFjdG9yeSgpCit7CisgICAgcmV0dXJuIGF1ZGlvRmFjdG9yeU92ZXJyaWRlID8gKmF1ZGlv
RmFjdG9yeU92ZXJyaWRlIDogUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2luZ2xldG9uKCku
YXVkaW9GYWN0b3J5UHJpdmF0ZSgpOworfQorCitzdGF0aWMgVmlkZW9DYXB0dXJlRmFjdG9yeSog
dmlkZW9GYWN0b3J5T3ZlcnJpZGU7Cit2b2lkIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNl
dFZpZGVvRmFjdG9yeShWaWRlb0NhcHR1cmVGYWN0b3J5JiBmYWN0b3J5KQoreworICAgIHZpZGVv
RmFjdG9yeU92ZXJyaWRlID0gJmZhY3Rvcnk7Cit9Cit2b2lkIFJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXI6OnVuc2V0VmlkZW9GYWN0b3J5KFZpZGVvQ2FwdHVyZUZhY3RvcnkmIG9sZE92ZXJyaWRl
KQoreworICAgIEFTU0VSVCh2aWRlb0ZhY3RvcnlPdmVycmlkZSA9PSBvbGRPdmVycmlkZSk7Cisg
ICAgdmlkZW9GYWN0b3J5T3ZlcnJpZGUgPSBudWxscHRyOworfQorCitWaWRlb0NhcHR1cmVGYWN0
b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp2aWRlb0ZhY3RvcnkoKQoreworICAgIHJl
dHVybiB2aWRlb0ZhY3RvcnlPdmVycmlkZSA/ICp2aWRlb0ZhY3RvcnlPdmVycmlkZSA6IFJlYWx0
aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNpbmdsZXRvbigpLnZpZGVvRmFjdG9yeVByaXZhdGUoKTsK
K30KKworc3RhdGljIERpc3BsYXlDYXB0dXJlRmFjdG9yeSogZGlzcGxheUNhcHR1cmVGYWN0b3J5
T3ZlcnJpZGU7Cit2b2lkIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNldERpc3BsYXlDYXB0
dXJlRmFjdG9yeShEaXNwbGF5Q2FwdHVyZUZhY3RvcnkmIGZhY3RvcnkpCit7CisgICAgZGlzcGxh
eUNhcHR1cmVGYWN0b3J5T3ZlcnJpZGUgPSAmZmFjdG9yeTsKK30KK3ZvaWQgUmVhbHRpbWVNZWRp
YVNvdXJjZUNlbnRlcjo6dW5zZXREaXNwbGF5Q2FwdHVyZUZhY3RvcnkoRGlzcGxheUNhcHR1cmVG
YWN0b3J5JiBvbGRPdmVycmlkZSkKK3sKKyAgICBBU1NFUlQoZGlzcGxheUNhcHR1cmVGYWN0b3J5
T3ZlcnJpZGUgPT0gb2xkT3ZlcnJpZGUpOworICAgIGRpc3BsYXlDYXB0dXJlRmFjdG9yeU92ZXJy
aWRlID0gbnVsbHB0cjsKK30KKworRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyOjpkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKQoreworICAgIHJldHVybiBkaXNw
bGF5Q2FwdHVyZUZhY3RvcnlPdmVycmlkZSA/ICpkaXNwbGF5Q2FwdHVyZUZhY3RvcnlPdmVycmlk
ZSA6IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNpbmdsZXRvbigpLmRpc3BsYXlDYXB0dXJl
RmFjdG9yeVByaXZhdGUoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYg
Ly8gRU5BQkxFKE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAppbmRl
eCA0ZTE3MDI3ZGU2ZWNjOGI0MDc5YmI0NWNiMDg5NzYyMzQyYzcyNTE4Li4xZWZmZmRiNmMwYjYx
MWRlYzIzNTk1YmM5Mjk0ZjBmNjFkMGFhZmMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ci5oCkBAIC03MiwxMyArNzIsMTcgQEAgcHVibGljOgogICAgIAogICAgIGNvbnN0IFJlYWx0aW1l
TWVkaWFTb3VyY2VTdXBwb3J0ZWRDb25zdHJhaW50cyYgc3VwcG9ydGVkQ29uc3RyYWludHMoKSB7
IHJldHVybiBtX3N1cHBvcnRlZENvbnN0cmFpbnRzOyB9CiAKLSAgICB2aXJ0dWFsIHZvaWQgc2V0
QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3RvcnkmKSB7IH0KLSAgICB2aXJ0dWFsIHZvaWQg
dW5zZXRBdWRpb0ZhY3RvcnkoQXVkaW9DYXB0dXJlRmFjdG9yeSYpIHsgfQotICAgIFdFQkNPUkVf
RVhQT1JUIHZpcnR1YWwgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCkgPSAwOwor
ICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRpb0ZhY3Rv
cnkoKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRBdWRpb0ZhY3RvcnkoQXVk
aW9DYXB0dXJlRmFjdG9yeSYpOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHVuc2V0
QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3RvcnkmKTsKIAotICAgIHZpcnR1YWwgVmlkZW9D
YXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5KCkgPSAwOworICAgIFdFQkNPUkVfRVhQT1JUIHN0
YXRpYyBWaWRlb0NhcHR1cmVGYWN0b3J5JiB2aWRlb0ZhY3RvcnkoKTsKKyAgICBXRUJDT1JFX0VY
UE9SVCBzdGF0aWMgdm9pZCBzZXRWaWRlb0ZhY3RvcnkoVmlkZW9DYXB0dXJlRmFjdG9yeSYpOwor
ICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHVuc2V0VmlkZW9GYWN0b3J5KFZpZGVvQ2Fw
dHVyZUZhY3RvcnkmKTsKIAotICAgIHZpcnR1YWwgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNw
bGF5Q2FwdHVyZUZhY3RvcnkoKSA9IDA7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIERpc3Bs
YXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxheUNhcHR1cmVGYWN0b3J5KCk7CisgICAgV0VCQ09SRV9F
WFBPUlQgc3RhdGljIHZvaWQgc2V0RGlzcGxheUNhcHR1cmVGYWN0b3J5KERpc3BsYXlDYXB0dXJl
RmFjdG9yeSYpOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHVuc2V0RGlzcGxheUNh
cHR1cmVGYWN0b3J5KERpc3BsYXlDYXB0dXJlRmFjdG9yeSYpOwogCiAgICAgdmlydHVhbCBDYXB0
dXJlRGV2aWNlTWFuYWdlciYgYXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpID0gMDsKICAgICB2
aXJ0dWFsIENhcHR1cmVEZXZpY2VNYW5hZ2VyJiB2aWRlb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkg
PSAwOwpAQCAtMTAwLDggKzEwNCw5IEBAIHByb3RlY3RlZDoKICAgICBzdGF0aWMgUmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlciYgcGxhdGZvcm1DZW50ZXIoKTsKICAgICBSZWFsdGltZU1lZGlhU291
cmNlU3VwcG9ydGVkQ29uc3RyYWludHMgbV9zdXBwb3J0ZWRDb25zdHJhaW50czsKIAotICAgIENh
cHR1cmVEZXZpY2VNYW5hZ2VyKiBtX2F1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIgeyBudWxscHRy
IH07Ci0gICAgQ2FwdHVyZURldmljZU1hbmFnZXIqIG1fdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdl
ciB7IG51bGxwdHIgfTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIEF1ZGlvQ2FwdHVyZUZh
Y3RvcnkmIGF1ZGlvRmFjdG9yeVByaXZhdGUoKSA9IDA7CisgICAgV0VCQ09SRV9FWFBPUlQgdmly
dHVhbCBWaWRlb0NhcHR1cmVGYWN0b3J5JiB2aWRlb0ZhY3RvcnlQcml2YXRlKCkgPSAwOworICAg
IFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNwbGF5Q2Fw
dHVyZUZhY3RvcnlQcml2YXRlKCkgPSAwOwogCiBwcml2YXRlOgogICAgIHN0cnVjdCBEZXZpY2VJ
bmZvIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dz
dHJlYW1lci9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyTGliV2ViUlRDLmNwcAppbmRleCBhZDg0NGFiZGRhOGNkMGMxMjBmMDkxMzU0ODZlZWYz
YzY5ZTY4YmVkLi42Y2FlYzEzMGM4MTQ1ZWEwN2UxMDYzNzkxZDcxODYwNDA5NTU4YWRkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVh
bHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJM
aWJXZWJSVEMuY3BwCkBAIC0zMiwxMSArMzIsNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LUF1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEM6
OmF1ZGlvQ2FwdHVyZVNvdXJjZUZhY3RvcnkoKQotewotICAgIHJldHVybiBSZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyTGliV2ViUlRDOjpzaW5nbGV0b24oKS5hdWRpb0ZhY3RvcnkoKTsKLX0KLQog
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQyYgUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlckxpYldlYlJUQzo6c2luZ2xldG9uKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkp
OwpAQCAtNTcsMjAgKzUyLDE3IEBAIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEM6
On5SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDKCkKIHsKIH0KIAotQXVkaW9DYXB0
dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQzo6YXVkaW9GYWN0
b3J5KCkKK0F1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJX
ZWJSVEM6OmF1ZGlvRmFjdG9yeVByaXZhdGUoKQogewotICAgIGlmIChtX2F1ZGlvRmFjdG9yeU92
ZXJyaWRlKQotICAgICAgICByZXR1cm4gKm1fYXVkaW9GYWN0b3J5T3ZlcnJpZGU7Ci0KICAgICBy
ZXR1cm4gR1N0cmVhbWVyQXVkaW9DYXB0dXJlU291cmNlOjpmYWN0b3J5KCk7CiB9CiAKLVZpZGVv
Q2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEM6OnZpZGVv
RmFjdG9yeSgpCitWaWRlb0NhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVy
TGliV2ViUlRDOjp2aWRlb0ZhY3RvcnlQcml2YXRlKCkKIHsKICAgICByZXR1cm4gR1N0cmVhbWVy
VmlkZW9DYXB0dXJlU291cmNlOjpmYWN0b3J5KCk7CiB9CiAKLURpc3BsYXlDYXB0dXJlRmFjdG9y
eSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQzo6ZGlzcGxheUNhcHR1cmVGYWN0
b3J5KCkKK0Rpc3BsYXlDYXB0dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxp
YldlYlJUQzo6ZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpCiB7CiAgICAgcmV0dXJuIEdT
dHJlYW1lclZpZGVvQ2FwdHVyZVNvdXJjZTo6ZGlzcGxheUZhY3RvcnkoKTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
ZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQy5o
CmluZGV4IDM3YWE0ZmVkZDgxNGQzNzIwNzlkYjc0ZWJkNTdkZjNiOGYxOWNlMzYuLjEwZTRmYjgx
NmYwNjIxODlhODI4N2QwY2Q3Mjc4YjI1MjU3MDlmZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyTGliV2ViUlRDLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0v
Z3N0cmVhbWVyL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEMuaApAQCAtMzgsMjAg
KzM4LDE0IEBAIGNsYXNzIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEMgZmluYWwg
OiBwdWJsaWMgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlCiBwdWJsaWM6CiAgICAgV0VCQ09SRV9F
WFBPUlQgc3RhdGljIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEMmIHNpbmdsZXRv
bigpOwogCi0gICAgc3RhdGljIFZpZGVvQ2FwdHVyZUZhY3RvcnkmIHZpZGVvQ2FwdHVyZVNvdXJj
ZUZhY3RvcnkoKTsKLSAgICBzdGF0aWMgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9DYXB0dXJl
U291cmNlRmFjdG9yeSgpOwotCiBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBOZXZlckRlc3Ry
b3llZDxSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDPjsKICAgICBSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyTGliV2ViUlRDKCk7CiAgICAgflJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJMaWJXZWJSVEMoKTsKIAotICAgIHZvaWQgc2V0QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZh
Y3RvcnkmIGZhY3RvcnkpIGZpbmFsIHsgbV9hdWRpb0ZhY3RvcnlPdmVycmlkZSA9ICZmYWN0b3J5
OyB9Ci0gICAgdm9pZCB1bnNldEF1ZGlvRmFjdG9yeShBdWRpb0NhcHR1cmVGYWN0b3J5JikgZmlu
YWwgeyBtX2F1ZGlvRmFjdG9yeU92ZXJyaWRlID0gbnVsbHB0cjsgfQotCi0gICAgQXVkaW9DYXB0
dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCkgZmluYWw7Ci0gICAgVmlkZW9DYXB0dXJlRmFjdG9y
eSYgdmlkZW9GYWN0b3J5KCkgZmluYWw7Ci0gICAgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNw
bGF5Q2FwdHVyZUZhY3RvcnkoKSBmaW5hbDsKKyAgICBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRp
b0ZhY3RvcnlQcml2YXRlKCkgZmluYWw7CisgICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9G
YWN0b3J5UHJpdmF0ZSgpIGZpbmFsOworICAgIERpc3BsYXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxh
eUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpIGZpbmFsOwogCiAgICAgQ2FwdHVyZURldmljZU1hbmFn
ZXImIGF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIoKSBmaW5hbDsKICAgICBDYXB0dXJlRGV2aWNl
TWFuYWdlciYgdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpIGZpbmFsOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFTb3Vy
Y2VDZW50ZXJNYWMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFj
L1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuY3BwCmluZGV4IGJjYTZkZDFjNmUyNmIyZDhi
Yzc0M2QyNTg0NzExODE0ZDdkOGQ5ODQuLjIwYWJmNjY3M2I0MTI3NzViYTk1ODNhODYzNmVmNTU4
OWU3MmMzY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYy5j
cHAKQEAgLTk1LDIzICs5NSw2IEBAIHB1YmxpYzoKICAgICB9CiB9OwogCi1WaWRlb0NhcHR1cmVG
YWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjp2aWRlb0NhcHR1cmVTb3VyY2VG
YWN0b3J5KCkKLXsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8VmlkZW9DYXB0dXJlU291cmNl
RmFjdG9yeU1hYz4gZmFjdG9yeTsKLSAgICByZXR1cm4gZmFjdG9yeS5nZXQoKTsKLX0KLQotRGlz
cGxheUNhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjpkaXNwbGF5
Q2FwdHVyZVNvdXJjZUZhY3RvcnkoKQotewotICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxEaXNw
bGF5Q2FwdHVyZVNvdXJjZUZhY3RvcnlNYWM+IGZhY3Rvcnk7Ci0gICAgcmV0dXJuIGZhY3Rvcnku
Z2V0KCk7Ci19Ci0KLUF1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJNYWM6OmF1ZGlvQ2FwdHVyZVNvdXJjZUZhY3RvcnkoKQotewotICAgIHJldHVybiBSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyTWFjOjpzaW5nbGV0b24oKS5hdWRpb0ZhY3RvcnkoKTsKLX0KLQog
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYyYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1h
Yzo6c2luZ2xldG9uKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwpAQCAtMTI5LDIy
ICsxMTIsMjEgQEAgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6UmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlck1hYygpID0gZGVmYXVsdDsKIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6
On5SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjKCkgPSBkZWZhdWx0OwogCiAKLUF1ZGlvQ2Fw
dHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmF1ZGlvRmFjdG9yeSgp
CitBdWRpb0NhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjphdWRp
b0ZhY3RvcnlQcml2YXRlKCkKIHsKLSAgICBpZiAobV9hdWRpb0ZhY3RvcnlPdmVycmlkZSkKLSAg
ICAgICAgcmV0dXJuICptX2F1ZGlvRmFjdG9yeU92ZXJyaWRlOwotCiAgICAgcmV0dXJuIENvcmVB
dWRpb0NhcHR1cmVTb3VyY2U6OmZhY3RvcnkoKTsKIH0KIAotVmlkZW9DYXB0dXJlRmFjdG9yeSYg
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6dmlkZW9GYWN0b3J5KCkKK1ZpZGVvQ2FwdHVy
ZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OnZpZGVvRmFjdG9yeVByaXZh
dGUoKQogewotICAgIHJldHVybiB2aWRlb0NhcHR1cmVTb3VyY2VGYWN0b3J5KCk7CisgICAgc3Rh
dGljIE5ldmVyRGVzdHJveWVkPFZpZGVvQ2FwdHVyZVNvdXJjZUZhY3RvcnlNYWM+IGZhY3Rvcnk7
CisgICAgcmV0dXJuIGZhY3RvcnkuZ2V0KCk7CiB9CiAKLURpc3BsYXlDYXB0dXJlRmFjdG9yeSYg
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6ZGlzcGxheUNhcHR1cmVGYWN0b3J5KCkKK0Rp
c3BsYXlDYXB0dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6ZGlzcGxh
eUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpCiB7Ci0gICAgcmV0dXJuIGRpc3BsYXlDYXB0dXJlU291
cmNlRmFjdG9yeSgpOworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxEaXNwbGF5Q2FwdHVyZVNv
dXJjZUZhY3RvcnlNYWM+IGZhY3Rvcnk7CisgICAgcmV0dXJuIGZhY3RvcnkuZ2V0KCk7CiB9CiAK
IENhcHR1cmVEZXZpY2VNYW5hZ2VyJiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjphdWRp
b0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlck1hYy5oCmluZGV4IDU4ZjRhMTgzM2YxMWQ4MmIwMTU5MDFhMzhhYTg5NDFhNmMxMzNlMjcu
LmMyNmVjNzNhN2MyMGFiMTcyNTdkMzYxZWUwNGQ0YmY3NTcyZjRlMTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyTWFjLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFj
L1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTMtMjAxNyBBcHBsZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMTggQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNDQsMjEgKzQ0LDE0IEBAIGNs
YXNzIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMgZmluYWwgOiBwdWJsaWMgUmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlciB7CiBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFJl
YWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMmIHNpbmdsZXRvbigpOwogCi0gICAgc3RhdGljIFZp
ZGVvQ2FwdHVyZUZhY3RvcnkmIHZpZGVvQ2FwdHVyZVNvdXJjZUZhY3RvcnkoKTsKLSAgICBzdGF0
aWMgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9DYXB0dXJlU291cmNlRmFjdG9yeSgpOwotICAg
IHN0YXRpYyBEaXNwbGF5Q2FwdHVyZUZhY3RvcnkmIGRpc3BsYXlDYXB0dXJlU291cmNlRmFjdG9y
eSgpOwotCiBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBOZXZlckRlc3Ryb3llZDxSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyTWFjPjsKICAgICBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFj
KCk7CiAgICAgflJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMoKTsKIAotICAgIHZvaWQgc2V0
QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3RvcnkmIGZhY3RvcnkpIGZpbmFsIHsgbV9hdWRp
b0ZhY3RvcnlPdmVycmlkZSA9ICZmYWN0b3J5OyB9Ci0gICAgdm9pZCB1bnNldEF1ZGlvRmFjdG9y
eShBdWRpb0NhcHR1cmVGYWN0b3J5JikgZmluYWwgeyBtX2F1ZGlvRmFjdG9yeU92ZXJyaWRlID0g
bnVsbHB0cjsgfQotCi0gICAgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCkgZmlu
YWw7Ci0gICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5KCkgZmluYWw7Ci0gICAg
RGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKSBmaW5hbDsKKyAg
ICBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRpb0ZhY3RvcnlQcml2YXRlKCkgZmluYWw7CisgICAg
VmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5UHJpdmF0ZSgpIGZpbmFsOworICAgIERp
c3BsYXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpIGZpbmFs
OwogCiAgICAgQ2FwdHVyZURldmljZU1hbmFnZXImIGF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIo
KSBmaW5hbDsKICAgICBDYXB0dXJlRGV2aWNlTWFuYWdlciYgdmlkZW9DYXB0dXJlRGV2aWNlTWFu
YWdlcigpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9N
b2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAppbmRleCA0MWZkMWQ2ZDQ4
Yjg5YjFlMzVhYjE4ZDJiYjQwOWQ1NGY4MTE1ZDI5Li43NzQ5ZDIyNDMzZGQwMjEwYzg0Y2RjMDlh
OWEwYWU3MjQyYThmYTMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2Nr
L01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcApAQCAtMzEwLDE5
ICszMTAsMTkgQEAgVmVjdG9yPENhcHR1cmVEZXZpY2U+JiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlcjo6ZGlzcGxheURldmljZXMoKQogICAgIHJldHVybiBkaXNwbGF5RGV2aWNlczsKIH0K
IAotQXVkaW9DYXB0dXJlRmFjdG9yeSYgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmF1
ZGlvRmFjdG9yeSgpCitBdWRpb0NhcHR1cmVGYWN0b3J5JiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlcjo6YXVkaW9GYWN0b3J5UHJpdmF0ZSgpCiB7CiAgICAgc3RhdGljIE5ldmVyRGVzdHJv
eWVkPE1vY2tSZWFsdGltZUF1ZGlvU291cmNlRmFjdG9yeT4gZmFjdG9yeTsKICAgICByZXR1cm4g
ZmFjdG9yeS5nZXQoKTsKIH0KIAotVmlkZW9DYXB0dXJlRmFjdG9yeSYgTW9ja1JlYWx0aW1lTWVk
aWFTb3VyY2VDZW50ZXI6OnZpZGVvRmFjdG9yeSgpCitWaWRlb0NhcHR1cmVGYWN0b3J5JiBNb2Nr
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dmlkZW9GYWN0b3J5UHJpdmF0ZSgpCiB7CiAgICAg
c3RhdGljIE5ldmVyRGVzdHJveWVkPE1vY2tSZWFsdGltZVZpZGVvU291cmNlRmFjdG9yeT4gZmFj
dG9yeTsKICAgICByZXR1cm4gZmFjdG9yeS5nZXQoKTsKIH0KIAotRGlzcGxheUNhcHR1cmVGYWN0
b3J5JiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6ZGlzcGxheUNhcHR1cmVGYWN0b3J5
KCkKK0Rpc3BsYXlDYXB0dXJlRmFjdG9yeSYgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6
OmRpc3BsYXlDYXB0dXJlRmFjdG9yeVByaXZhdGUoKQogewogICAgIHN0YXRpYyBOZXZlckRlc3Ry
b3llZDxNb2NrUmVhbHRpbWVEaXNwbGF5U291cmNlRmFjdG9yeT4gZmFjdG9yeTsKICAgICByZXR1
cm4gZmFjdG9yeS5nZXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21v
Y2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAppbmRleCBiZmM1ZTIyMTYz
NDllZDQzZjUyYzYyOTJjZWZkZjNjNDk5M2ZmMTI3Li5mNDkxMTQwODg0NDEyNGZkN2U2YzAxZmU3
NzRjMjY4N2E1MjEyNzU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2Nr
L01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oCkBAIC01OCw5ICs1OCw5
IEBAIHByaXZhdGU6CiAKICAgICBzdGF0aWMgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIm
IHNpbmdsZXRvbigpOwogCi0gICAgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCkg
ZmluYWw7Ci0gICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5KCkgZmluYWw7Ci0g
ICAgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKSBmaW5hbDsK
KyAgICBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRpb0ZhY3RvcnlQcml2YXRlKCkgZmluYWw7Cisg
ICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5UHJpdmF0ZSgpIGZpbmFsOworICAg
IERpc3BsYXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpIGZp
bmFsOwogCiAgICAgQ2FwdHVyZURldmljZU1hbmFnZXImIGF1ZGlvQ2FwdHVyZURldmljZU1hbmFn
ZXIoKSBmaW5hbCB7IHJldHVybiBtX2F1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI7IH0KICAgICBD
YXB0dXJlRGV2aWNlTWFuYWdlciYgdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpIGZpbmFsIHsg
cmV0dXJuIG1fdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcjsgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352598</attachid>
            <date>2018-10-17 11:31:27 -0700</date>
            <delta_ts>2018-10-17 13:14:17 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-190502-20181017113127.patch</filename>
            <type>text/plain</type>
            <size>17882</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3MjIwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWE0NmI3NzY0NzJmODlk
ZTBlYWNjMTBlNjZmNTc0M2ZjMDhlNDQwOC4uMTJiYTFmMTRmNWY2YTUxM2JkMGY4MzY1ZTcwMTlm
YmFmZTA3M2M0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU2IEBACisyMDE4LTEwLTExICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtNZWRpYVN0cmVh
bV0gQ2xlYW4gdXAgY2FwdHVyZSBzb3VyY2UgZmFjdG9yeSBtYW5hZ2VtZW50CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA1MDIKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzQ1MjEyNDQ3PgorCisgICAgICAgIFJldmlld2VkIGJ5IFlvdWVubiBGYWJs
ZXQuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBubyBmdW5jdGlvbmFsIGNoYW5nZS4KKworICAg
ICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0QXVkaW9G
YWN0b3J5KToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnVu
c2V0QXVkaW9GYWN0b3J5KToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXI6OmF1ZGlvRmFjdG9yeSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyOjpzZXRWaWRlb0ZhY3RvcnkpOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlcjo6dW5zZXRWaWRlb0ZhY3RvcnkpOgorICAgICAgICAoV2ViQ29yZTo6
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dmlkZW9GYWN0b3J5KToKKyAgICAgICAgKFdlYkNv
cmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNldERpc3BsYXlDYXB0dXJlRmFjdG9yeSk6
CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp1bnNldERpc3Bs
YXlDYXB0dXJlRmFjdG9yeSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyOjpkaXNwbGF5Q2FwdHVyZUZhY3RvcnkpOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlh
c3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJl
YWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNldEF1ZGlvRmFjdG9yeSk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp1bnNldEF1ZGlvRmFjdG9y
eSk6IERlbGV0ZWQuCisgICAgICAgICgpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL21l
ZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEM6
OmF1ZGlvRmFjdG9yeVByaXZhdGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlckxpYldlYlJUQzo6dmlkZW9GYWN0b3J5UHJpdmF0ZSk6CisgICAgICAgIChXZWJD
b3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDOjpkaXNwbGF5Q2FwdHVyZUZh
Y3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJMaWJXZWJSVEM6OmF1ZGlvQ2FwdHVyZVNvdXJjZUZhY3RvcnkpOiBEZWxldGVkLgorICAgICAg
ICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQzo6YXVkaW9GYWN0
b3J5KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJMaWJXZWJSVEM6OnZpZGVvRmFjdG9yeSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDOjpkaXNwbGF5Q2FwdHVyZUZhY3Rvcnkp
OiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmg6CisgICAgICAgICogcGxhdGZvcm0vbWVk
aWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6YXVkaW9GYWN0b3J5UHJpdmF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjp2aWRl
b0ZhY3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXJNYWM6OmRpc3BsYXlDYXB0dXJlRmFjdG9yeVByaXZhdGUpOgorICAgICAgICAoV2ViQ29y
ZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6dmlkZW9DYXB0dXJlU291cmNlRmFjdG9y
eSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVy
TWFjOjpkaXNwbGF5Q2FwdHVyZVNvdXJjZUZhY3RvcnkpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6YXVkaW9DYXB0dXJlU291cmNlRmFj
dG9yeSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyTWFjOjphdWRpb0ZhY3RvcnkpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6dmlkZW9GYWN0b3J5KTogRGVsZXRlZC4KKyAgICAgICAg
KFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmRpc3BsYXlDYXB0dXJlRmFj
dG9yeSk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0
aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL01vY2tS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tSZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyOjphdWRpb0ZhY3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdl
YkNvcmU6Ok1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp2aWRlb0ZhY3RvcnlQcml2YXRl
KToKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpkaXNw
bGF5Q2FwdHVyZUZhY3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyOjphdWRpb0ZhY3RvcnkpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6TW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnZpZGVvRmFjdG9yeSk6IERlbGV0
ZWQuCisgICAgICAgIChXZWJDb3JlOjpNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6ZGlz
cGxheUNhcHR1cmVGYWN0b3J5KTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL01v
Y2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmg6CisKIDIwMTgtMTAtMTcgIEFsaSBKdW1hICA8
YWp1bWFAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEZsYWt5IEludGVyc2VjdGlvbk9ic2VydmVy
IHdlYiBwbGF0Zm9ybSB0ZXN0cyBpbnZvbHZpbmcgc3R5bGUgdXBkYXRlcwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyLmNwcAppbmRleCBhNmY4ZmYzMTNmZWM5NmFlZDViODkwMDQ4YjNiZjY0
NTk0NDhkMzc3Li40MjU3NmY5NzAyMDE0ODhkYzJiNGI2N2E3MTg3Y2U3YTVhYTAwODI0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVh
bS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcApAQCAtMzMzLDYgKzMzMyw1NCBAQCBzdGQ6
Om9wdGlvbmFsPENhcHR1cmVEZXZpY2U+IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmNhcHR1
cmVEZXZpY2VXaXRoUGVyc2lzdAogICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiB9CiAKK3N0YXRp
YyBBdWRpb0NhcHR1cmVGYWN0b3J5KiBhdWRpb0ZhY3RvcnlPdmVycmlkZTsKK3ZvaWQgUmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3Rvcnkm
IGZhY3RvcnkpCit7CisgICAgYXVkaW9GYWN0b3J5T3ZlcnJpZGUgPSAmZmFjdG9yeTsKK30KK3Zv
aWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dW5zZXRBdWRpb0ZhY3RvcnkoQXVkaW9DYXB0
dXJlRmFjdG9yeSYgb2xkT3ZlcnJpZGUpCit7CisgICAgQVNTRVJUX1VOVVNFRChvbGRPdmVycmlk
ZSwgYXVkaW9GYWN0b3J5T3ZlcnJpZGUgPT0gb2xkT3ZlcnJpZGUpOworICAgIGF1ZGlvRmFjdG9y
eU92ZXJyaWRlID0gbnVsbHB0cjsKK30KKworQXVkaW9DYXB0dXJlRmFjdG9yeSYgUmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlcjo6YXVkaW9GYWN0b3J5KCkKK3sKKyAgICByZXR1cm4gYXVkaW9GYWN0
b3J5T3ZlcnJpZGUgPyAqYXVkaW9GYWN0b3J5T3ZlcnJpZGUgOiBSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyOjpzaW5nbGV0b24oKS5hdWRpb0ZhY3RvcnlQcml2YXRlKCk7Cit9CisKK3N0YXRpYyBW
aWRlb0NhcHR1cmVGYWN0b3J5KiB2aWRlb0ZhY3RvcnlPdmVycmlkZTsKK3ZvaWQgUmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlcjo6c2V0VmlkZW9GYWN0b3J5KFZpZGVvQ2FwdHVyZUZhY3RvcnkmIGZh
Y3RvcnkpCit7CisgICAgdmlkZW9GYWN0b3J5T3ZlcnJpZGUgPSAmZmFjdG9yeTsKK30KK3ZvaWQg
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dW5zZXRWaWRlb0ZhY3RvcnkoVmlkZW9DYXB0dXJl
RmFjdG9yeSYgb2xkT3ZlcnJpZGUpCit7CisgICAgQVNTRVJUX1VOVVNFRChvbGRPdmVycmlkZSwg
dmlkZW9GYWN0b3J5T3ZlcnJpZGUgPT0gb2xkT3ZlcnJpZGUpOworICAgIHZpZGVvRmFjdG9yeU92
ZXJyaWRlID0gbnVsbHB0cjsKK30KKworVmlkZW9DYXB0dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRp
YVNvdXJjZUNlbnRlcjo6dmlkZW9GYWN0b3J5KCkKK3sKKyAgICByZXR1cm4gdmlkZW9GYWN0b3J5
T3ZlcnJpZGUgPyAqdmlkZW9GYWN0b3J5T3ZlcnJpZGUgOiBSZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyOjpzaW5nbGV0b24oKS52aWRlb0ZhY3RvcnlQcml2YXRlKCk7Cit9CisKK3N0YXRpYyBEaXNw
bGF5Q2FwdHVyZUZhY3RvcnkqIGRpc3BsYXlDYXB0dXJlRmFjdG9yeU92ZXJyaWRlOwordm9pZCBS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpzZXREaXNwbGF5Q2FwdHVyZUZhY3RvcnkoRGlzcGxh
eUNhcHR1cmVGYWN0b3J5JiBmYWN0b3J5KQoreworICAgIGRpc3BsYXlDYXB0dXJlRmFjdG9yeU92
ZXJyaWRlID0gJmZhY3Rvcnk7Cit9Cit2b2lkIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnVu
c2V0RGlzcGxheUNhcHR1cmVGYWN0b3J5KERpc3BsYXlDYXB0dXJlRmFjdG9yeSYgb2xkT3ZlcnJp
ZGUpCit7CisgICAgQVNTRVJUX1VOVVNFRChvbGRPdmVycmlkZSwgZGlzcGxheUNhcHR1cmVGYWN0
b3J5T3ZlcnJpZGUgPT0gb2xkT3ZlcnJpZGUpOworICAgIGRpc3BsYXlDYXB0dXJlRmFjdG9yeU92
ZXJyaWRlID0gbnVsbHB0cjsKK30KKworRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyOjpkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKQoreworICAgIHJldHVybiBk
aXNwbGF5Q2FwdHVyZUZhY3RvcnlPdmVycmlkZSA/ICpkaXNwbGF5Q2FwdHVyZUZhY3RvcnlPdmVy
cmlkZSA6IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNpbmdsZXRvbigpLmRpc3BsYXlDYXB0
dXJlRmFjdG9yeVByaXZhdGUoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5k
aWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaApp
bmRleCA0ZTE3MDI3ZGU2ZWNjOGI0MDc5YmI0NWNiMDg5NzYyMzQyYzcyNTE4Li4xZWZmZmRiNmMw
YjYxMWRlYzIzNTk1YmM5Mjk0ZjBmNjFkMGFhZmMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlci5oCkBAIC03MiwxMyArNzIsMTcgQEAgcHVibGljOgogICAgIAogICAgIGNvbnN0IFJlYWx0
aW1lTWVkaWFTb3VyY2VTdXBwb3J0ZWRDb25zdHJhaW50cyYgc3VwcG9ydGVkQ29uc3RyYWludHMo
KSB7IHJldHVybiBtX3N1cHBvcnRlZENvbnN0cmFpbnRzOyB9CiAKLSAgICB2aXJ0dWFsIHZvaWQg
c2V0QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3RvcnkmKSB7IH0KLSAgICB2aXJ0dWFsIHZv
aWQgdW5zZXRBdWRpb0ZhY3RvcnkoQXVkaW9DYXB0dXJlRmFjdG9yeSYpIHsgfQotICAgIFdFQkNP
UkVfRVhQT1JUIHZpcnR1YWwgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCkgPSAw
OworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRpb0Zh
Y3RvcnkoKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRBdWRpb0ZhY3Rvcnko
QXVkaW9DYXB0dXJlRmFjdG9yeSYpOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHVu
c2V0QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3RvcnkmKTsKIAotICAgIHZpcnR1YWwgVmlk
ZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5KCkgPSAwOworICAgIFdFQkNPUkVfRVhQT1JU
IHN0YXRpYyBWaWRlb0NhcHR1cmVGYWN0b3J5JiB2aWRlb0ZhY3RvcnkoKTsKKyAgICBXRUJDT1JF
X0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRWaWRlb0ZhY3RvcnkoVmlkZW9DYXB0dXJlRmFjdG9yeSYp
OworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHVuc2V0VmlkZW9GYWN0b3J5KFZpZGVv
Q2FwdHVyZUZhY3RvcnkmKTsKIAotICAgIHZpcnR1YWwgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBk
aXNwbGF5Q2FwdHVyZUZhY3RvcnkoKSA9IDA7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIERp
c3BsYXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxheUNhcHR1cmVGYWN0b3J5KCk7CisgICAgV0VCQ09S
RV9FWFBPUlQgc3RhdGljIHZvaWQgc2V0RGlzcGxheUNhcHR1cmVGYWN0b3J5KERpc3BsYXlDYXB0
dXJlRmFjdG9yeSYpOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHVuc2V0RGlzcGxh
eUNhcHR1cmVGYWN0b3J5KERpc3BsYXlDYXB0dXJlRmFjdG9yeSYpOwogCiAgICAgdmlydHVhbCBD
YXB0dXJlRGV2aWNlTWFuYWdlciYgYXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpID0gMDsKICAg
ICB2aXJ0dWFsIENhcHR1cmVEZXZpY2VNYW5hZ2VyJiB2aWRlb0NhcHR1cmVEZXZpY2VNYW5hZ2Vy
KCkgPSAwOwpAQCAtMTAwLDggKzEwNCw5IEBAIHByb3RlY3RlZDoKICAgICBzdGF0aWMgUmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlciYgcGxhdGZvcm1DZW50ZXIoKTsKICAgICBSZWFsdGltZU1lZGlh
U291cmNlU3VwcG9ydGVkQ29uc3RyYWludHMgbV9zdXBwb3J0ZWRDb25zdHJhaW50czsKIAotICAg
IENhcHR1cmVEZXZpY2VNYW5hZ2VyKiBtX2F1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIgeyBudWxs
cHRyIH07Ci0gICAgQ2FwdHVyZURldmljZU1hbmFnZXIqIG1fdmlkZW9DYXB0dXJlRGV2aWNlTWFu
YWdlciB7IG51bGxwdHIgfTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIEF1ZGlvQ2FwdHVy
ZUZhY3RvcnkmIGF1ZGlvRmFjdG9yeVByaXZhdGUoKSA9IDA7CisgICAgV0VCQ09SRV9FWFBPUlQg
dmlydHVhbCBWaWRlb0NhcHR1cmVGYWN0b3J5JiB2aWRlb0ZhY3RvcnlQcml2YXRlKCkgPSAwOwor
ICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNwbGF5
Q2FwdHVyZUZhY3RvcnlQcml2YXRlKCkgPSAwOwogCiBwcml2YXRlOgogICAgIHN0cnVjdCBEZXZp
Y2VJbmZvIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFt
L2dzdHJlYW1lci9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyTGliV2ViUlRDLmNwcAppbmRleCBhZDg0NGFiZGRhOGNkMGMxMjBmMDkxMzU0ODZl
ZWYzYzY5ZTY4YmVkLi42Y2FlYzEzMGM4MTQ1ZWEwN2UxMDYzNzkxZDcxODYwNDA5NTU4YWRkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIv
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJMaWJXZWJSVEMuY3BwCkBAIC0zMiwxMSArMzIsNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKLUF1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJS
VEM6OmF1ZGlvQ2FwdHVyZVNvdXJjZUZhY3RvcnkoKQotewotICAgIHJldHVybiBSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyTGliV2ViUlRDOjpzaW5nbGV0b24oKS5hdWRpb0ZhY3RvcnkoKTsKLX0K
LQogUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQyYgUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlckxpYldlYlJUQzo6c2luZ2xldG9uKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFk
KCkpOwpAQCAtNTcsMjAgKzUyLDE3IEBAIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJS
VEM6On5SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDKCkKIHsKIH0KIAotQXVkaW9D
YXB0dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQzo6YXVkaW9G
YWN0b3J5KCkKK0F1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJM
aWJXZWJSVEM6OmF1ZGlvRmFjdG9yeVByaXZhdGUoKQogewotICAgIGlmIChtX2F1ZGlvRmFjdG9y
eU92ZXJyaWRlKQotICAgICAgICByZXR1cm4gKm1fYXVkaW9GYWN0b3J5T3ZlcnJpZGU7Ci0KICAg
ICByZXR1cm4gR1N0cmVhbWVyQXVkaW9DYXB0dXJlU291cmNlOjpmYWN0b3J5KCk7CiB9CiAKLVZp
ZGVvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEM6OnZp
ZGVvRmFjdG9yeSgpCitWaWRlb0NhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyTGliV2ViUlRDOjp2aWRlb0ZhY3RvcnlQcml2YXRlKCkKIHsKICAgICByZXR1cm4gR1N0cmVh
bWVyVmlkZW9DYXB0dXJlU291cmNlOjpmYWN0b3J5KCk7CiB9CiAKLURpc3BsYXlDYXB0dXJlRmFj
dG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQzo6ZGlzcGxheUNhcHR1cmVG
YWN0b3J5KCkKK0Rpc3BsYXlDYXB0dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ckxpYldlYlJUQzo6ZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpCiB7CiAgICAgcmV0dXJu
IEdTdHJlYW1lclZpZGVvQ2FwdHVyZVNvdXJjZTo6ZGlzcGxheUZhY3RvcnkoKTsKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJU
Qy5oCmluZGV4IDM3YWE0ZmVkZDgxNGQzNzIwNzlkYjc0ZWJkNTdkZjNiOGYxOWNlMzYuLjEwZTRm
YjgxNmYwNjIxODlhODI4N2QwY2Q3Mjc4YjI1MjU3MDlmZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyTGliV2ViUlRDLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vZ3N0cmVhbWVyL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEMuaApAQCAtMzgs
MjAgKzM4LDE0IEBAIGNsYXNzIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEMgZmlu
YWwgOiBwdWJsaWMgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlCiBwdWJsaWM6CiAgICAgV0VCQ09S
RV9FWFBPUlQgc3RhdGljIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEMmIHNpbmds
ZXRvbigpOwogCi0gICAgc3RhdGljIFZpZGVvQ2FwdHVyZUZhY3RvcnkmIHZpZGVvQ2FwdHVyZVNv
dXJjZUZhY3RvcnkoKTsKLSAgICBzdGF0aWMgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9DYXB0
dXJlU291cmNlRmFjdG9yeSgpOwotCiBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBOZXZlckRl
c3Ryb3llZDxSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDPjsKICAgICBSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDKCk7CiAgICAgflJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXJMaWJXZWJSVEMoKTsKIAotICAgIHZvaWQgc2V0QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVy
ZUZhY3RvcnkmIGZhY3RvcnkpIGZpbmFsIHsgbV9hdWRpb0ZhY3RvcnlPdmVycmlkZSA9ICZmYWN0
b3J5OyB9Ci0gICAgdm9pZCB1bnNldEF1ZGlvRmFjdG9yeShBdWRpb0NhcHR1cmVGYWN0b3J5Jikg
ZmluYWwgeyBtX2F1ZGlvRmFjdG9yeU92ZXJyaWRlID0gbnVsbHB0cjsgfQotCi0gICAgQXVkaW9D
YXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCkgZmluYWw7Ci0gICAgVmlkZW9DYXB0dXJlRmFj
dG9yeSYgdmlkZW9GYWN0b3J5KCkgZmluYWw7Ci0gICAgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBk
aXNwbGF5Q2FwdHVyZUZhY3RvcnkoKSBmaW5hbDsKKyAgICBBdWRpb0NhcHR1cmVGYWN0b3J5JiBh
dWRpb0ZhY3RvcnlQcml2YXRlKCkgZmluYWw7CisgICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlk
ZW9GYWN0b3J5UHJpdmF0ZSgpIGZpbmFsOworICAgIERpc3BsYXlDYXB0dXJlRmFjdG9yeSYgZGlz
cGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpIGZpbmFsOwogCiAgICAgQ2FwdHVyZURldmljZU1h
bmFnZXImIGF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIoKSBmaW5hbDsKICAgICBDYXB0dXJlRGV2
aWNlTWFuYWdlciYgdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpIGZpbmFsOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFT
b3VyY2VDZW50ZXJNYWMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0v
bWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuY3BwCmluZGV4IGJjYTZkZDFjNmUyNmIy
ZDhiYzc0M2QyNTg0NzExODE0ZDdkOGQ5ODQuLjIwYWJmNjY3M2I0MTI3NzViYTk1ODNhODYzNmVm
NTU4OWU3MmMzY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1h
Yy5jcHAKQEAgLTk1LDIzICs5NSw2IEBAIHB1YmxpYzoKICAgICB9CiB9OwogCi1WaWRlb0NhcHR1
cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjp2aWRlb0NhcHR1cmVTb3Vy
Y2VGYWN0b3J5KCkKLXsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8VmlkZW9DYXB0dXJlU291
cmNlRmFjdG9yeU1hYz4gZmFjdG9yeTsKLSAgICByZXR1cm4gZmFjdG9yeS5nZXQoKTsKLX0KLQot
RGlzcGxheUNhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjpkaXNw
bGF5Q2FwdHVyZVNvdXJjZUZhY3RvcnkoKQotewotICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxE
aXNwbGF5Q2FwdHVyZVNvdXJjZUZhY3RvcnlNYWM+IGZhY3Rvcnk7Ci0gICAgcmV0dXJuIGZhY3Rv
cnkuZ2V0KCk7Ci19Ci0KLUF1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXJNYWM6OmF1ZGlvQ2FwdHVyZVNvdXJjZUZhY3RvcnkoKQotewotICAgIHJldHVybiBSZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjpzaW5nbGV0b24oKS5hdWRpb0ZhY3RvcnkoKTsKLX0K
LQogUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYyYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ck1hYzo6c2luZ2xldG9uKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwpAQCAtMTI5
LDIyICsxMTIsMjEgQEAgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6UmVhbHRpbWVNZWRp
YVNvdXJjZUNlbnRlck1hYygpID0gZGVmYXVsdDsKIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJN
YWM6On5SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjKCkgPSBkZWZhdWx0OwogCiAKLUF1ZGlv
Q2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmF1ZGlvRmFjdG9y
eSgpCitBdWRpb0NhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjph
dWRpb0ZhY3RvcnlQcml2YXRlKCkKIHsKLSAgICBpZiAobV9hdWRpb0ZhY3RvcnlPdmVycmlkZSkK
LSAgICAgICAgcmV0dXJuICptX2F1ZGlvRmFjdG9yeU92ZXJyaWRlOwotCiAgICAgcmV0dXJuIENv
cmVBdWRpb0NhcHR1cmVTb3VyY2U6OmZhY3RvcnkoKTsKIH0KIAotVmlkZW9DYXB0dXJlRmFjdG9y
eSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6dmlkZW9GYWN0b3J5KCkKK1ZpZGVvQ2Fw
dHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OnZpZGVvRmFjdG9yeVBy
aXZhdGUoKQogewotICAgIHJldHVybiB2aWRlb0NhcHR1cmVTb3VyY2VGYWN0b3J5KCk7CisgICAg
c3RhdGljIE5ldmVyRGVzdHJveWVkPFZpZGVvQ2FwdHVyZVNvdXJjZUZhY3RvcnlNYWM+IGZhY3Rv
cnk7CisgICAgcmV0dXJuIGZhY3RvcnkuZ2V0KCk7CiB9CiAKLURpc3BsYXlDYXB0dXJlRmFjdG9y
eSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6ZGlzcGxheUNhcHR1cmVGYWN0b3J5KCkK
K0Rpc3BsYXlDYXB0dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6ZGlz
cGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpCiB7Ci0gICAgcmV0dXJuIGRpc3BsYXlDYXB0dXJl
U291cmNlRmFjdG9yeSgpOworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxEaXNwbGF5Q2FwdHVy
ZVNvdXJjZUZhY3RvcnlNYWM+IGZhY3Rvcnk7CisgICAgcmV0dXJuIGZhY3RvcnkuZ2V0KCk7CiB9
CiAKIENhcHR1cmVEZXZpY2VNYW5hZ2VyJiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjph
dWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlck1hYy5oCmluZGV4IDU4ZjRhMTgzM2YxMWQ4MmIwMTU5MDFhMzhhYTg5NDFhNmMxMzNl
MjcuLmMyNmVjNzNhN2MyMGFiMTcyNTdkMzYxZWUwNGQ0YmY3NTcyZjRlMTMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyTWFjLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0v
bWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTMtMjAxNyBBcHBsZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMTggQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNDQsMjEgKzQ0LDE0IEBA
IGNsYXNzIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMgZmluYWwgOiBwdWJsaWMgUmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlciB7CiBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGlj
IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMmIHNpbmdsZXRvbigpOwogCi0gICAgc3RhdGlj
IFZpZGVvQ2FwdHVyZUZhY3RvcnkmIHZpZGVvQ2FwdHVyZVNvdXJjZUZhY3RvcnkoKTsKLSAgICBz
dGF0aWMgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9DYXB0dXJlU291cmNlRmFjdG9yeSgpOwot
ICAgIHN0YXRpYyBEaXNwbGF5Q2FwdHVyZUZhY3RvcnkmIGRpc3BsYXlDYXB0dXJlU291cmNlRmFj
dG9yeSgpOwotCiBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBOZXZlckRlc3Ryb3llZDxSZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyTWFjPjsKICAgICBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVy
TWFjKCk7CiAgICAgflJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMoKTsKIAotICAgIHZvaWQg
c2V0QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3RvcnkmIGZhY3RvcnkpIGZpbmFsIHsgbV9h
dWRpb0ZhY3RvcnlPdmVycmlkZSA9ICZmYWN0b3J5OyB9Ci0gICAgdm9pZCB1bnNldEF1ZGlvRmFj
dG9yeShBdWRpb0NhcHR1cmVGYWN0b3J5JikgZmluYWwgeyBtX2F1ZGlvRmFjdG9yeU92ZXJyaWRl
ID0gbnVsbHB0cjsgfQotCi0gICAgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCkg
ZmluYWw7Ci0gICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5KCkgZmluYWw7Ci0g
ICAgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKSBmaW5hbDsK
KyAgICBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRpb0ZhY3RvcnlQcml2YXRlKCkgZmluYWw7Cisg
ICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5UHJpdmF0ZSgpIGZpbmFsOworICAg
IERpc3BsYXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpIGZp
bmFsOwogCiAgICAgQ2FwdHVyZURldmljZU1hbmFnZXImIGF1ZGlvQ2FwdHVyZURldmljZU1hbmFn
ZXIoKSBmaW5hbDsKICAgICBDYXB0dXJlRGV2aWNlTWFuYWdlciYgdmlkZW9DYXB0dXJlRGV2aWNl
TWFuYWdlcigpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9j
ay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAppbmRleCA0MWZkMWQ2
ZDQ4Yjg5YjFlMzVhYjE4ZDJiYjQwOWQ1NGY4MTE1ZDI5Li43NzQ5ZDIyNDMzZGQwMjEwYzg0Y2Rj
MDlhOWEwYWU3MjQyYThmYTMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
b2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcApAQCAtMzEw
LDE5ICszMTAsMTkgQEAgVmVjdG9yPENhcHR1cmVEZXZpY2U+JiBNb2NrUmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlcjo6ZGlzcGxheURldmljZXMoKQogICAgIHJldHVybiBkaXNwbGF5RGV2aWNlczsK
IH0KIAotQXVkaW9DYXB0dXJlRmFjdG9yeSYgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6
OmF1ZGlvRmFjdG9yeSgpCitBdWRpb0NhcHR1cmVGYWN0b3J5JiBNb2NrUmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlcjo6YXVkaW9GYWN0b3J5UHJpdmF0ZSgpCiB7CiAgICAgc3RhdGljIE5ldmVyRGVz
dHJveWVkPE1vY2tSZWFsdGltZUF1ZGlvU291cmNlRmFjdG9yeT4gZmFjdG9yeTsKICAgICByZXR1
cm4gZmFjdG9yeS5nZXQoKTsKIH0KIAotVmlkZW9DYXB0dXJlRmFjdG9yeSYgTW9ja1JlYWx0aW1l
TWVkaWFTb3VyY2VDZW50ZXI6OnZpZGVvRmFjdG9yeSgpCitWaWRlb0NhcHR1cmVGYWN0b3J5JiBN
b2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dmlkZW9GYWN0b3J5UHJpdmF0ZSgpCiB7CiAg
ICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPE1vY2tSZWFsdGltZVZpZGVvU291cmNlRmFjdG9yeT4g
ZmFjdG9yeTsKICAgICByZXR1cm4gZmFjdG9yeS5nZXQoKTsKIH0KIAotRGlzcGxheUNhcHR1cmVG
YWN0b3J5JiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6ZGlzcGxheUNhcHR1cmVGYWN0
b3J5KCkKK0Rpc3BsYXlDYXB0dXJlRmFjdG9yeSYgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXI6OmRpc3BsYXlDYXB0dXJlRmFjdG9yeVByaXZhdGUoKQogewogICAgIHN0YXRpYyBOZXZlckRl
c3Ryb3llZDxNb2NrUmVhbHRpbWVEaXNwbGF5U291cmNlRmFjdG9yeT4gZmFjdG9yeTsKICAgICBy
ZXR1cm4gZmFjdG9yeS5nZXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAppbmRleCBiZmM1ZTIy
MTYzNDllZDQzZjUyYzYyOTJjZWZkZjNjNDk5M2ZmMTI3Li5mNDkxMTQwODg0NDEyNGZkN2U2YzAx
ZmU3NzRjMjY4N2E1MjEyNzU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
b2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oCkBAIC01OCw5ICs1
OCw5IEBAIHByaXZhdGU6CiAKICAgICBzdGF0aWMgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXImIHNpbmdsZXRvbigpOwogCi0gICAgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5
KCkgZmluYWw7Ci0gICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5KCkgZmluYWw7
Ci0gICAgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKSBmaW5h
bDsKKyAgICBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRpb0ZhY3RvcnlQcml2YXRlKCkgZmluYWw7
CisgICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5UHJpdmF0ZSgpIGZpbmFsOwor
ICAgIERpc3BsYXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgp
IGZpbmFsOwogCiAgICAgQ2FwdHVyZURldmljZU1hbmFnZXImIGF1ZGlvQ2FwdHVyZURldmljZU1h
bmFnZXIoKSBmaW5hbCB7IHJldHVybiBtX2F1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI7IH0KICAg
ICBDYXB0dXJlRGV2aWNlTWFuYWdlciYgdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpIGZpbmFs
IHsgcmV0dXJuIG1fdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcjsgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352628</attachid>
            <date>2018-10-17 13:14:19 -0700</date>
            <delta_ts>2018-10-17 14:06:39 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-190502-20181017131418.patch</filename>
            <type>text/plain</type>
            <size>17885</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3MjIwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWE0NmI3NzY0NzJmODlk
ZTBlYWNjMTBlNjZmNTc0M2ZjMDhlNDQwOC4uMTJiYTFmMTRmNWY2YTUxM2JkMGY4MzY1ZTcwMTlm
YmFmZTA3M2M0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU2IEBACisyMDE4LTEwLTExICBFcmlj
IENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtNZWRpYVN0cmVh
bV0gQ2xlYW4gdXAgY2FwdHVyZSBzb3VyY2UgZmFjdG9yeSBtYW5hZ2VtZW50CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA1MDIKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzQ1MjEyNDQ3PgorCisgICAgICAgIFJldmlld2VkIGJ5IFlvdWVubiBGYWJs
ZXQuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBubyBmdW5jdGlvbmFsIGNoYW5nZS4KKworICAg
ICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0QXVkaW9G
YWN0b3J5KToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnVu
c2V0QXVkaW9GYWN0b3J5KToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXI6OmF1ZGlvRmFjdG9yeSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyOjpzZXRWaWRlb0ZhY3RvcnkpOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlcjo6dW5zZXRWaWRlb0ZhY3RvcnkpOgorICAgICAgICAoV2ViQ29yZTo6
UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dmlkZW9GYWN0b3J5KToKKyAgICAgICAgKFdlYkNv
cmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNldERpc3BsYXlDYXB0dXJlRmFjdG9yeSk6
CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp1bnNldERpc3Bs
YXlDYXB0dXJlRmFjdG9yeSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyOjpkaXNwbGF5Q2FwdHVyZUZhY3RvcnkpOgorICAgICAgICAqIHBsYXRmb3JtL21lZGlh
c3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJl
YWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNldEF1ZGlvRmFjdG9yeSk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp1bnNldEF1ZGlvRmFjdG9y
eSk6IERlbGV0ZWQuCisgICAgICAgICgpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL21l
ZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEM6
OmF1ZGlvRmFjdG9yeVByaXZhdGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlckxpYldlYlJUQzo6dmlkZW9GYWN0b3J5UHJpdmF0ZSk6CisgICAgICAgIChXZWJD
b3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDOjpkaXNwbGF5Q2FwdHVyZUZh
Y3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJMaWJXZWJSVEM6OmF1ZGlvQ2FwdHVyZVNvdXJjZUZhY3RvcnkpOiBEZWxldGVkLgorICAgICAg
ICAoV2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQzo6YXVkaW9GYWN0
b3J5KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJMaWJXZWJSVEM6OnZpZGVvRmFjdG9yeSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDOjpkaXNwbGF5Q2FwdHVyZUZhY3Rvcnkp
OiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmg6CisgICAgICAgICogcGxhdGZvcm0vbWVk
aWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6YXVkaW9GYWN0b3J5UHJpdmF0
ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjp2aWRl
b0ZhY3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXJNYWM6OmRpc3BsYXlDYXB0dXJlRmFjdG9yeVByaXZhdGUpOgorICAgICAgICAoV2ViQ29y
ZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6dmlkZW9DYXB0dXJlU291cmNlRmFjdG9y
eSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2VudGVy
TWFjOjpkaXNwbGF5Q2FwdHVyZVNvdXJjZUZhY3RvcnkpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6UmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6YXVkaW9DYXB0dXJlU291cmNlRmFj
dG9yeSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyTWFjOjphdWRpb0ZhY3RvcnkpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6dmlkZW9GYWN0b3J5KTogRGVsZXRlZC4KKyAgICAgICAg
KFdlYkNvcmU6OlJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmRpc3BsYXlDYXB0dXJlRmFj
dG9yeSk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0
aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL01vY2tS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tSZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyOjphdWRpb0ZhY3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdl
YkNvcmU6Ok1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjp2aWRlb0ZhY3RvcnlQcml2YXRl
KToKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyOjpkaXNw
bGF5Q2FwdHVyZUZhY3RvcnlQcml2YXRlKToKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyOjphdWRpb0ZhY3RvcnkpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6TW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnZpZGVvRmFjdG9yeSk6IERlbGV0
ZWQuCisgICAgICAgIChXZWJDb3JlOjpNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6ZGlz
cGxheUNhcHR1cmVGYWN0b3J5KTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL01v
Y2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmg6CisKIDIwMTgtMTAtMTcgIEFsaSBKdW1hICA8
YWp1bWFAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEZsYWt5IEludGVyc2VjdGlvbk9ic2VydmVy
IHdlYiBwbGF0Zm9ybSB0ZXN0cyBpbnZvbHZpbmcgc3R5bGUgdXBkYXRlcwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyLmNwcAppbmRleCBhNmY4ZmYzMTNmZWM5NmFlZDViODkwMDQ4YjNiZjY0
NTk0NDhkMzc3Li4wYmZlODVkMjI0MGVlZTJkM2U1ZDM3MzJmMDg1NTMwYTYxMjYyM2RjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVh
bS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcApAQCAtMzMzLDYgKzMzMyw1NCBAQCBzdGQ6
Om9wdGlvbmFsPENhcHR1cmVEZXZpY2U+IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OmNhcHR1
cmVEZXZpY2VXaXRoUGVyc2lzdAogICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiB9CiAKK3N0YXRp
YyBBdWRpb0NhcHR1cmVGYWN0b3J5KiBhdWRpb0ZhY3RvcnlPdmVycmlkZTsKK3ZvaWQgUmVhbHRp
bWVNZWRpYVNvdXJjZUNlbnRlcjo6c2V0QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3Rvcnkm
IGZhY3RvcnkpCit7CisgICAgYXVkaW9GYWN0b3J5T3ZlcnJpZGUgPSAmZmFjdG9yeTsKK30KK3Zv
aWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dW5zZXRBdWRpb0ZhY3RvcnkoQXVkaW9DYXB0
dXJlRmFjdG9yeSYgb2xkT3ZlcnJpZGUpCit7CisgICAgQVNTRVJUX1VOVVNFRChvbGRPdmVycmlk
ZSwgYXVkaW9GYWN0b3J5T3ZlcnJpZGUgPT0gJm9sZE92ZXJyaWRlKTsKKyAgICBhdWRpb0ZhY3Rv
cnlPdmVycmlkZSA9IG51bGxwdHI7Cit9CisKK0F1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1l
TWVkaWFTb3VyY2VDZW50ZXI6OmF1ZGlvRmFjdG9yeSgpCit7CisgICAgcmV0dXJuIGF1ZGlvRmFj
dG9yeU92ZXJyaWRlID8gKmF1ZGlvRmFjdG9yeU92ZXJyaWRlIDogUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlcjo6c2luZ2xldG9uKCkuYXVkaW9GYWN0b3J5UHJpdmF0ZSgpOworfQorCitzdGF0aWMg
VmlkZW9DYXB0dXJlRmFjdG9yeSogdmlkZW9GYWN0b3J5T3ZlcnJpZGU7Cit2b2lkIFJlYWx0aW1l
TWVkaWFTb3VyY2VDZW50ZXI6OnNldFZpZGVvRmFjdG9yeShWaWRlb0NhcHR1cmVGYWN0b3J5JiBm
YWN0b3J5KQoreworICAgIHZpZGVvRmFjdG9yeU92ZXJyaWRlID0gJmZhY3Rvcnk7Cit9Cit2b2lk
IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnVuc2V0VmlkZW9GYWN0b3J5KFZpZGVvQ2FwdHVy
ZUZhY3RvcnkmIG9sZE92ZXJyaWRlKQoreworICAgIEFTU0VSVF9VTlVTRUQob2xkT3ZlcnJpZGUs
IHZpZGVvRmFjdG9yeU92ZXJyaWRlID09ICZvbGRPdmVycmlkZSk7CisgICAgdmlkZW9GYWN0b3J5
T3ZlcnJpZGUgPSBudWxscHRyOworfQorCitWaWRlb0NhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1l
ZGlhU291cmNlQ2VudGVyOjp2aWRlb0ZhY3RvcnkoKQoreworICAgIHJldHVybiB2aWRlb0ZhY3Rv
cnlPdmVycmlkZSA/ICp2aWRlb0ZhY3RvcnlPdmVycmlkZSA6IFJlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXI6OnNpbmdsZXRvbigpLnZpZGVvRmFjdG9yeVByaXZhdGUoKTsKK30KKworc3RhdGljIERp
c3BsYXlDYXB0dXJlRmFjdG9yeSogZGlzcGxheUNhcHR1cmVGYWN0b3J5T3ZlcnJpZGU7Cit2b2lk
IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNldERpc3BsYXlDYXB0dXJlRmFjdG9yeShEaXNw
bGF5Q2FwdHVyZUZhY3RvcnkmIGZhY3RvcnkpCit7CisgICAgZGlzcGxheUNhcHR1cmVGYWN0b3J5
T3ZlcnJpZGUgPSAmZmFjdG9yeTsKK30KK3ZvaWQgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6
dW5zZXREaXNwbGF5Q2FwdHVyZUZhY3RvcnkoRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBvbGRPdmVy
cmlkZSkKK3sKKyAgICBBU1NFUlRfVU5VU0VEKG9sZE92ZXJyaWRlLCBkaXNwbGF5Q2FwdHVyZUZh
Y3RvcnlPdmVycmlkZSA9PSAmb2xkT3ZlcnJpZGUpOworICAgIGRpc3BsYXlDYXB0dXJlRmFjdG9y
eU92ZXJyaWRlID0gbnVsbHB0cjsKK30KKworRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyOjpkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKQoreworICAgIHJldHVy
biBkaXNwbGF5Q2FwdHVyZUZhY3RvcnlPdmVycmlkZSA/ICpkaXNwbGF5Q2FwdHVyZUZhY3RvcnlP
dmVycmlkZSA6IFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnNpbmdsZXRvbigpLmRpc3BsYXlD
YXB0dXJlRmFjdG9yeVByaXZhdGUoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAj
ZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIu
aAppbmRleCA0ZTE3MDI3ZGU2ZWNjOGI0MDc5YmI0NWNiMDg5NzYyMzQyYzcyNTE4Li4xZWZmZmRi
NmMwYjYxMWRlYzIzNTk1YmM5Mjk0ZjBmNjFkMGFhZmMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vUmVhbHRpbWVNZWRpYVNvdXJj
ZUNlbnRlci5oCkBAIC03MiwxMyArNzIsMTcgQEAgcHVibGljOgogICAgIAogICAgIGNvbnN0IFJl
YWx0aW1lTWVkaWFTb3VyY2VTdXBwb3J0ZWRDb25zdHJhaW50cyYgc3VwcG9ydGVkQ29uc3RyYWlu
dHMoKSB7IHJldHVybiBtX3N1cHBvcnRlZENvbnN0cmFpbnRzOyB9CiAKLSAgICB2aXJ0dWFsIHZv
aWQgc2V0QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3RvcnkmKSB7IH0KLSAgICB2aXJ0dWFs
IHZvaWQgdW5zZXRBdWRpb0ZhY3RvcnkoQXVkaW9DYXB0dXJlRmFjdG9yeSYpIHsgfQotICAgIFdF
QkNPUkVfRVhQT1JUIHZpcnR1YWwgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCkg
PSAwOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRp
b0ZhY3RvcnkoKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRBdWRpb0ZhY3Rv
cnkoQXVkaW9DYXB0dXJlRmFjdG9yeSYpOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lk
IHVuc2V0QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3RvcnkmKTsKIAotICAgIHZpcnR1YWwg
VmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5KCkgPSAwOworICAgIFdFQkNPUkVfRVhQ
T1JUIHN0YXRpYyBWaWRlb0NhcHR1cmVGYWN0b3J5JiB2aWRlb0ZhY3RvcnkoKTsKKyAgICBXRUJD
T1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRWaWRlb0ZhY3RvcnkoVmlkZW9DYXB0dXJlRmFjdG9y
eSYpOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHVuc2V0VmlkZW9GYWN0b3J5KFZp
ZGVvQ2FwdHVyZUZhY3RvcnkmKTsKIAotICAgIHZpcnR1YWwgRGlzcGxheUNhcHR1cmVGYWN0b3J5
JiBkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKSA9IDA7CisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGlj
IERpc3BsYXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxheUNhcHR1cmVGYWN0b3J5KCk7CisgICAgV0VC
Q09SRV9FWFBPUlQgc3RhdGljIHZvaWQgc2V0RGlzcGxheUNhcHR1cmVGYWN0b3J5KERpc3BsYXlD
YXB0dXJlRmFjdG9yeSYpOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHVuc2V0RGlz
cGxheUNhcHR1cmVGYWN0b3J5KERpc3BsYXlDYXB0dXJlRmFjdG9yeSYpOwogCiAgICAgdmlydHVh
bCBDYXB0dXJlRGV2aWNlTWFuYWdlciYgYXVkaW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpID0gMDsK
ICAgICB2aXJ0dWFsIENhcHR1cmVEZXZpY2VNYW5hZ2VyJiB2aWRlb0NhcHR1cmVEZXZpY2VNYW5h
Z2VyKCkgPSAwOwpAQCAtMTAwLDggKzEwNCw5IEBAIHByb3RlY3RlZDoKICAgICBzdGF0aWMgUmVh
bHRpbWVNZWRpYVNvdXJjZUNlbnRlciYgcGxhdGZvcm1DZW50ZXIoKTsKICAgICBSZWFsdGltZU1l
ZGlhU291cmNlU3VwcG9ydGVkQ29uc3RyYWludHMgbV9zdXBwb3J0ZWRDb25zdHJhaW50czsKIAot
ICAgIENhcHR1cmVEZXZpY2VNYW5hZ2VyKiBtX2F1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIgeyBu
dWxscHRyIH07Ci0gICAgQ2FwdHVyZURldmljZU1hbmFnZXIqIG1fdmlkZW9DYXB0dXJlRGV2aWNl
TWFuYWdlciB7IG51bGxwdHIgfTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIEF1ZGlvQ2Fw
dHVyZUZhY3RvcnkmIGF1ZGlvRmFjdG9yeVByaXZhdGUoKSA9IDA7CisgICAgV0VCQ09SRV9FWFBP
UlQgdmlydHVhbCBWaWRlb0NhcHR1cmVGYWN0b3J5JiB2aWRlb0ZhY3RvcnlQcml2YXRlKCkgPSAw
OworICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNw
bGF5Q2FwdHVyZUZhY3RvcnlQcml2YXRlKCkgPSAwOwogCiBwcml2YXRlOgogICAgIHN0cnVjdCBE
ZXZpY2VJbmZvIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3Ry
ZWFtL2dzdHJlYW1lci9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyTGliV2ViUlRDLmNwcAppbmRleCBhZDg0NGFiZGRhOGNkMGMxMjBmMDkxMzU0
ODZlZWYzYzY5ZTY4YmVkLi42Y2FlYzEzMGM4MTQ1ZWEwN2UxMDYzNzkxZDcxODYwNDA5NTU4YWRk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFt
ZXIvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQy5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXJMaWJXZWJSVEMuY3BwCkBAIC0zMiwxMSArMzIsNiBAQAogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKLUF1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJX
ZWJSVEM6OmF1ZGlvQ2FwdHVyZVNvdXJjZUZhY3RvcnkoKQotewotICAgIHJldHVybiBSZWFsdGlt
ZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDOjpzaW5nbGV0b24oKS5hdWRpb0ZhY3RvcnkoKTsK
LX0KLQogUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQyYgUmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlckxpYldlYlJUQzo6c2luZ2xldG9uKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhy
ZWFkKCkpOwpAQCAtNTcsMjAgKzUyLDE3IEBAIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJX
ZWJSVEM6On5SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDKCkKIHsKIH0KIAotQXVk
aW9DYXB0dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQzo6YXVk
aW9GYWN0b3J5KCkKK0F1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJMaWJXZWJSVEM6OmF1ZGlvRmFjdG9yeVByaXZhdGUoKQogewotICAgIGlmIChtX2F1ZGlvRmFj
dG9yeU92ZXJyaWRlKQotICAgICAgICByZXR1cm4gKm1fYXVkaW9GYWN0b3J5T3ZlcnJpZGU7Ci0K
ICAgICByZXR1cm4gR1N0cmVhbWVyQXVkaW9DYXB0dXJlU291cmNlOjpmYWN0b3J5KCk7CiB9CiAK
LVZpZGVvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEM6
OnZpZGVvRmFjdG9yeSgpCitWaWRlb0NhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNl
Q2VudGVyTGliV2ViUlRDOjp2aWRlb0ZhY3RvcnlQcml2YXRlKCkKIHsKICAgICByZXR1cm4gR1N0
cmVhbWVyVmlkZW9DYXB0dXJlU291cmNlOjpmYWN0b3J5KCk7CiB9CiAKLURpc3BsYXlDYXB0dXJl
RmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldlYlJUQzo6ZGlzcGxheUNhcHR1
cmVGYWN0b3J5KCkKK0Rpc3BsYXlDYXB0dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlckxpYldlYlJUQzo6ZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpCiB7CiAgICAgcmV0
dXJuIEdTdHJlYW1lclZpZGVvQ2FwdHVyZVNvdXJjZTo6ZGlzcGxheUZhY3RvcnkoKTsKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9S
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlckxpYldl
YlJUQy5oCmluZGV4IDM3YWE0ZmVkZDgxNGQzNzIwNzlkYjc0ZWJkNTdkZjNiOGYxOWNlMzYuLjEw
ZTRmYjgxNmYwNjIxODlhODI4N2QwY2Q3Mjc4YjI1MjU3MDlmZjYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lci9SZWFsdGltZU1lZGlhU291
cmNlQ2VudGVyTGliV2ViUlRDLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFz
dHJlYW0vZ3N0cmVhbWVyL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEMuaApAQCAt
MzgsMjAgKzM4LDE0IEBAIGNsYXNzIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEMg
ZmluYWwgOiBwdWJsaWMgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlCiBwdWJsaWM6CiAgICAgV0VC
Q09SRV9FWFBPUlQgc3RhdGljIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJMaWJXZWJSVEMmIHNp
bmdsZXRvbigpOwogCi0gICAgc3RhdGljIFZpZGVvQ2FwdHVyZUZhY3RvcnkmIHZpZGVvQ2FwdHVy
ZVNvdXJjZUZhY3RvcnkoKTsKLSAgICBzdGF0aWMgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9D
YXB0dXJlU291cmNlRmFjdG9yeSgpOwotCiBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBOZXZl
ckRlc3Ryb3llZDxSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDPjsKICAgICBSZWFs
dGltZU1lZGlhU291cmNlQ2VudGVyTGliV2ViUlRDKCk7CiAgICAgflJlYWx0aW1lTWVkaWFTb3Vy
Y2VDZW50ZXJMaWJXZWJSVEMoKTsKIAotICAgIHZvaWQgc2V0QXVkaW9GYWN0b3J5KEF1ZGlvQ2Fw
dHVyZUZhY3RvcnkmIGZhY3RvcnkpIGZpbmFsIHsgbV9hdWRpb0ZhY3RvcnlPdmVycmlkZSA9ICZm
YWN0b3J5OyB9Ci0gICAgdm9pZCB1bnNldEF1ZGlvRmFjdG9yeShBdWRpb0NhcHR1cmVGYWN0b3J5
JikgZmluYWwgeyBtX2F1ZGlvRmFjdG9yeU92ZXJyaWRlID0gbnVsbHB0cjsgfQotCi0gICAgQXVk
aW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5KCkgZmluYWw7Ci0gICAgVmlkZW9DYXB0dXJl
RmFjdG9yeSYgdmlkZW9GYWN0b3J5KCkgZmluYWw7Ci0gICAgRGlzcGxheUNhcHR1cmVGYWN0b3J5
JiBkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKSBmaW5hbDsKKyAgICBBdWRpb0NhcHR1cmVGYWN0b3J5
JiBhdWRpb0ZhY3RvcnlQcml2YXRlKCkgZmluYWw7CisgICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYg
dmlkZW9GYWN0b3J5UHJpdmF0ZSgpIGZpbmFsOworICAgIERpc3BsYXlDYXB0dXJlRmFjdG9yeSYg
ZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpIGZpbmFsOwogCiAgICAgQ2FwdHVyZURldmlj
ZU1hbmFnZXImIGF1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXIoKSBmaW5hbDsKICAgICBDYXB0dXJl
RGV2aWNlTWFuYWdlciYgdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpIGZpbmFsOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vbWFjL1JlYWx0aW1lTWVk
aWFTb3VyY2VDZW50ZXJNYWMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuY3BwCmluZGV4IGJjYTZkZDFjNmUy
NmIyZDhiYzc0M2QyNTg0NzExODE0ZDdkOGQ5ODQuLjIwYWJmNjY3M2I0MTI3NzViYTk1ODNhODYz
NmVmNTU4OWU3MmMzY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRl
ck1hYy5jcHAKQEAgLTk1LDIzICs5NSw2IEBAIHB1YmxpYzoKICAgICB9CiB9OwogCi1WaWRlb0Nh
cHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjp2aWRlb0NhcHR1cmVT
b3VyY2VGYWN0b3J5KCkKLXsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8VmlkZW9DYXB0dXJl
U291cmNlRmFjdG9yeU1hYz4gZmFjdG9yeTsKLSAgICByZXR1cm4gZmFjdG9yeS5nZXQoKTsKLX0K
LQotRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjpk
aXNwbGF5Q2FwdHVyZVNvdXJjZUZhY3RvcnkoKQotewotICAgIHN0YXRpYyBOZXZlckRlc3Ryb3ll
ZDxEaXNwbGF5Q2FwdHVyZVNvdXJjZUZhY3RvcnlNYWM+IGZhY3Rvcnk7Ci0gICAgcmV0dXJuIGZh
Y3RvcnkuZ2V0KCk7Ci19Ci0KLUF1ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3Vy
Y2VDZW50ZXJNYWM6OmF1ZGlvQ2FwdHVyZVNvdXJjZUZhY3RvcnkoKQotewotICAgIHJldHVybiBS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjOjpzaW5nbGV0b24oKS5hdWRpb0ZhY3RvcnkoKTsK
LX0KLQogUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYyYgUmVhbHRpbWVNZWRpYVNvdXJjZUNl
bnRlck1hYzo6c2luZ2xldG9uKCkKIHsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOwpAQCAt
MTI5LDIyICsxMTIsMjEgQEAgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6UmVhbHRpbWVN
ZWRpYVNvdXJjZUNlbnRlck1hYygpID0gZGVmYXVsdDsKIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXJNYWM6On5SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjKCkgPSBkZWZhdWx0OwogCiAKLUF1
ZGlvQ2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OmF1ZGlvRmFj
dG9yeSgpCitBdWRpb0NhcHR1cmVGYWN0b3J5JiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFj
OjphdWRpb0ZhY3RvcnlQcml2YXRlKCkKIHsKLSAgICBpZiAobV9hdWRpb0ZhY3RvcnlPdmVycmlk
ZSkKLSAgICAgICAgcmV0dXJuICptX2F1ZGlvRmFjdG9yeU92ZXJyaWRlOwotCiAgICAgcmV0dXJu
IENvcmVBdWRpb0NhcHR1cmVTb3VyY2U6OmZhY3RvcnkoKTsKIH0KIAotVmlkZW9DYXB0dXJlRmFj
dG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6dmlkZW9GYWN0b3J5KCkKK1ZpZGVv
Q2FwdHVyZUZhY3RvcnkmIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWM6OnZpZGVvRmFjdG9y
eVByaXZhdGUoKQogewotICAgIHJldHVybiB2aWRlb0NhcHR1cmVTb3VyY2VGYWN0b3J5KCk7Cisg
ICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPFZpZGVvQ2FwdHVyZVNvdXJjZUZhY3RvcnlNYWM+IGZh
Y3Rvcnk7CisgICAgcmV0dXJuIGZhY3RvcnkuZ2V0KCk7CiB9CiAKLURpc3BsYXlDYXB0dXJlRmFj
dG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6ZGlzcGxheUNhcHR1cmVGYWN0b3J5
KCkKK0Rpc3BsYXlDYXB0dXJlRmFjdG9yeSYgUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlck1hYzo6
ZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgpCiB7Ci0gICAgcmV0dXJuIGRpc3BsYXlDYXB0
dXJlU291cmNlRmFjdG9yeSgpOworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxEaXNwbGF5Q2Fw
dHVyZVNvdXJjZUZhY3RvcnlNYWM+IGZhY3Rvcnk7CisgICAgcmV0dXJuIGZhY3RvcnkuZ2V0KCk7
CiB9CiAKIENhcHR1cmVEZXZpY2VNYW5hZ2VyJiBSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFj
OjphdWRpb0NhcHR1cmVEZXZpY2VNYW5hZ2VyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9tYWMvUmVhbHRpbWVNZWRpYVNv
dXJjZUNlbnRlck1hYy5oCmluZGV4IDU4ZjRhMTgzM2YxMWQ4MmIwMTU5MDFhMzhhYTg5NDFhNmMx
MzNlMjcuLmMyNmVjNzNhN2MyMGFiMTcyNTdkMzYxZWUwNGQ0YmY3NTcyZjRlMTMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL21hYy9SZWFsdGltZU1lZGlh
U291cmNlQ2VudGVyTWFjLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJl
YW0vbWFjL1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMuaApAQCAtMSw1ICsxLDUgQEAKIC8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTMtMjAxNyBBcHBsZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMTggQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNDQsMjEgKzQ0LDE0
IEBAIGNsYXNzIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMgZmluYWwgOiBwdWJsaWMgUmVh
bHRpbWVNZWRpYVNvdXJjZUNlbnRlciB7CiBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgc3Rh
dGljIFJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMmIHNpbmdsZXRvbigpOwogCi0gICAgc3Rh
dGljIFZpZGVvQ2FwdHVyZUZhY3RvcnkmIHZpZGVvQ2FwdHVyZVNvdXJjZUZhY3RvcnkoKTsKLSAg
ICBzdGF0aWMgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9DYXB0dXJlU291cmNlRmFjdG9yeSgp
OwotICAgIHN0YXRpYyBEaXNwbGF5Q2FwdHVyZUZhY3RvcnkmIGRpc3BsYXlDYXB0dXJlU291cmNl
RmFjdG9yeSgpOwotCiBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBOZXZlckRlc3Ryb3llZDxS
ZWFsdGltZU1lZGlhU291cmNlQ2VudGVyTWFjPjsKICAgICBSZWFsdGltZU1lZGlhU291cmNlQ2Vu
dGVyTWFjKCk7CiAgICAgflJlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXJNYWMoKTsKIAotICAgIHZv
aWQgc2V0QXVkaW9GYWN0b3J5KEF1ZGlvQ2FwdHVyZUZhY3RvcnkmIGZhY3RvcnkpIGZpbmFsIHsg
bV9hdWRpb0ZhY3RvcnlPdmVycmlkZSA9ICZmYWN0b3J5OyB9Ci0gICAgdm9pZCB1bnNldEF1ZGlv
RmFjdG9yeShBdWRpb0NhcHR1cmVGYWN0b3J5JikgZmluYWwgeyBtX2F1ZGlvRmFjdG9yeU92ZXJy
aWRlID0gbnVsbHB0cjsgfQotCi0gICAgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0b3J5
KCkgZmluYWw7Ci0gICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5KCkgZmluYWw7
Ci0gICAgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKSBmaW5h
bDsKKyAgICBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRpb0ZhY3RvcnlQcml2YXRlKCkgZmluYWw7
CisgICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5UHJpdmF0ZSgpIGZpbmFsOwor
ICAgIERpc3BsYXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0ZSgp
IGZpbmFsOwogCiAgICAgQ2FwdHVyZURldmljZU1hbmFnZXImIGF1ZGlvQ2FwdHVyZURldmljZU1h
bmFnZXIoKSBmaW5hbDsKICAgICBDYXB0dXJlRGV2aWNlTWFuYWdlciYgdmlkZW9DYXB0dXJlRGV2
aWNlTWFuYWdlcigpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAppbmRleCA0MWZk
MWQ2ZDQ4Yjg5YjFlMzVhYjE4ZDJiYjQwOWQ1NGY4MTE1ZDI5Li43NzQ5ZDIyNDMzZGQwMjEwYzg0
Y2RjMDlhOWEwYWU3MjQyYThmYTMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmNwcApAQCAt
MzEwLDE5ICszMTAsMTkgQEAgVmVjdG9yPENhcHR1cmVEZXZpY2U+JiBNb2NrUmVhbHRpbWVNZWRp
YVNvdXJjZUNlbnRlcjo6ZGlzcGxheURldmljZXMoKQogICAgIHJldHVybiBkaXNwbGF5RGV2aWNl
czsKIH0KIAotQXVkaW9DYXB0dXJlRmFjdG9yeSYgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50
ZXI6OmF1ZGlvRmFjdG9yeSgpCitBdWRpb0NhcHR1cmVGYWN0b3J5JiBNb2NrUmVhbHRpbWVNZWRp
YVNvdXJjZUNlbnRlcjo6YXVkaW9GYWN0b3J5UHJpdmF0ZSgpCiB7CiAgICAgc3RhdGljIE5ldmVy
RGVzdHJveWVkPE1vY2tSZWFsdGltZUF1ZGlvU291cmNlRmFjdG9yeT4gZmFjdG9yeTsKICAgICBy
ZXR1cm4gZmFjdG9yeS5nZXQoKTsKIH0KIAotVmlkZW9DYXB0dXJlRmFjdG9yeSYgTW9ja1JlYWx0
aW1lTWVkaWFTb3VyY2VDZW50ZXI6OnZpZGVvRmFjdG9yeSgpCitWaWRlb0NhcHR1cmVGYWN0b3J5
JiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6dmlkZW9GYWN0b3J5UHJpdmF0ZSgpCiB7
CiAgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPE1vY2tSZWFsdGltZVZpZGVvU291cmNlRmFjdG9y
eT4gZmFjdG9yeTsKICAgICByZXR1cm4gZmFjdG9yeS5nZXQoKTsKIH0KIAotRGlzcGxheUNhcHR1
cmVGYWN0b3J5JiBNb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlcjo6ZGlzcGxheUNhcHR1cmVG
YWN0b3J5KCkKK0Rpc3BsYXlDYXB0dXJlRmFjdG9yeSYgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXI6OmRpc3BsYXlDYXB0dXJlRmFjdG9yeVByaXZhdGUoKQogewogICAgIHN0YXRpYyBOZXZl
ckRlc3Ryb3llZDxNb2NrUmVhbHRpbWVEaXNwbGF5U291cmNlRmFjdG9yeT4gZmFjdG9yeTsKICAg
ICByZXR1cm4gZmFjdG9yeS5nZXQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21vY2svTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VDZW50ZXIuaAppbmRleCBiZmM1
ZTIyMTYzNDllZDQzZjUyYzYyOTJjZWZkZjNjNDk5M2ZmMTI3Li5mNDkxMTQwODg0NDEyNGZkN2U2
YzAxZmU3NzRjMjY4N2E1MjEyNzU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tb2NrL01vY2tSZWFsdGltZU1lZGlhU291cmNlQ2VudGVyLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbW9jay9Nb2NrUmVhbHRpbWVNZWRpYVNvdXJjZUNlbnRlci5oCkBAIC01OCw5
ICs1OCw5IEBAIHByaXZhdGU6CiAKICAgICBzdGF0aWMgTW9ja1JlYWx0aW1lTWVkaWFTb3VyY2VD
ZW50ZXImIHNpbmdsZXRvbigpOwogCi0gICAgQXVkaW9DYXB0dXJlRmFjdG9yeSYgYXVkaW9GYWN0
b3J5KCkgZmluYWw7Ci0gICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5KCkgZmlu
YWw7Ci0gICAgRGlzcGxheUNhcHR1cmVGYWN0b3J5JiBkaXNwbGF5Q2FwdHVyZUZhY3RvcnkoKSBm
aW5hbDsKKyAgICBBdWRpb0NhcHR1cmVGYWN0b3J5JiBhdWRpb0ZhY3RvcnlQcml2YXRlKCkgZmlu
YWw7CisgICAgVmlkZW9DYXB0dXJlRmFjdG9yeSYgdmlkZW9GYWN0b3J5UHJpdmF0ZSgpIGZpbmFs
OworICAgIERpc3BsYXlDYXB0dXJlRmFjdG9yeSYgZGlzcGxheUNhcHR1cmVGYWN0b3J5UHJpdmF0
ZSgpIGZpbmFsOwogCiAgICAgQ2FwdHVyZURldmljZU1hbmFnZXImIGF1ZGlvQ2FwdHVyZURldmlj
ZU1hbmFnZXIoKSBmaW5hbCB7IHJldHVybiBtX2F1ZGlvQ2FwdHVyZURldmljZU1hbmFnZXI7IH0K
ICAgICBDYXB0dXJlRGV2aWNlTWFuYWdlciYgdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcigpIGZp
bmFsIHsgcmV0dXJuIG1fdmlkZW9DYXB0dXJlRGV2aWNlTWFuYWdlcjsgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>