<?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>218314</bug_id>
          
          <creation_ts>2020-10-28 16:20:44 -0700</creation_ts>
          <short_desc>[Cocoa] Remove soft linking of NetworkExtension.framework</short_desc>
          <delta_ts>2020-10-29 16:53:45 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=218289</see_also>
          <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="Ryan Haddad">ryanhaddad</reporter>
          <assigned_to name="Aditya Keerthi">akeerthi</assigned_to>
          <cc>aestes</cc>
    
    <cc>akeerthi</cc>
    
    <cc>mitz</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bot-watchers-bugzilla</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1702546</commentid>
    <comment_count>0</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2020-10-28 16:20:44 -0700</bug_when>
    <thetext>TestWebKitAPI.ContentFiltering.LazilyLoadPlatformFrameworks
        
        /Volumes/Data/slave/catalina-release/build/Tools/TestWebKitAPI/Tests/WebKitCocoa/ContentFiltering.mm:374
        Expected equality of these values:
          static_cast&lt;bool&gt;(networkExtensionShouldBeLoaded)
            Which is: false
          static_cast&lt;bool&gt;(networkExtensionLoaded)
            Which is: true
        
        
        /Volumes/Data/slave/catalina-release/build/Tools/TestWebKitAPI/Tests/WebKitCocoa/ContentFiltering.mm:374
        Expected equality of these values:
          static_cast&lt;bool&gt;(networkExtensionShouldBeLoaded)
            Which is: false
          static_cast&lt;bool&gt;(networkExtensionLoaded)
            Which is: true
        
        
        /Volumes/Data/slave/catalina-release/build/Tools/TestWebKitAPI/Tests/WebKitCocoa/ContentFiltering.mm:374
        Expected equality of these values:
          static_cast&lt;bool&gt;(networkExtensionShouldBeLoaded)
            Which is: false
          static_cast&lt;bool&gt;(networkExtensionLoaded)
            Which is: true
        
        
        /Volumes/Data/slave/catalina-release/build/Tools/TestWebKitAPI/Tests/WebKitCocoa/ContentFiltering.mm:374
        Expected equality of these values:
          static_cast&lt;bool&gt;(networkExtensionShouldBeLoaded)
            Which is: false
          static_cast&lt;bool&gt;(networkExtensionLoaded)
            Which is: true
        
        
        /Volumes/Data/slave/catalina-release/build/Tools/TestWebKitAPI/Tests/WebKitCocoa/ContentFiltering.mm:374
        Expected equality of these values:
          static_cast&lt;bool&gt;(networkExtensionShouldBeLoaded)
            Which is: false
          static_cast&lt;bool&gt;(networkExtensionLoaded)
            Which is: true

https://results.webkit.org/?suite=api-tests&amp;test=TestWebKitAPI.ContentFiltering.LazilyLoadPlatformFrameworks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702547</commentid>
    <comment_count>1</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2020-10-28 16:21:34 -0700</bug_when>
    <thetext>Test history suggests this started with https://trac.webkit.org/changeset/269109/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702548</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-10-28 16:21:50 -0700</bug_when>
    <thetext>&lt;rdar://problem/70785239&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702592</commentid>
    <comment_count>3</comment_count>
      <attachid>412602</attachid>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2020-10-28 19:14:39 -0700</bug_when>
    <thetext>Created attachment 412602
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702601</commentid>
    <comment_count>4</comment_count>
      <attachid>412606</attachid>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2020-10-28 19:31:09 -0700</bug_when>
    <thetext>Created attachment 412606
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702603</commentid>
    <comment_count>5</comment_count>
      <attachid>412607</attachid>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2020-10-28 19:38:56 -0700</bug_when>
    <thetext>Created attachment 412607
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702619</commentid>
    <comment_count>6</comment_count>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2020-10-28 20:45:06 -0700</bug_when>
    <thetext>Will need to add a HAVE macro to avoid compiling NetworkExtensionContentFilter on tvOS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702688</commentid>
    <comment_count>7</comment_count>
      <attachid>412607</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2020-10-29 05:58:26 -0700</bug_when>
    <thetext>Comment on attachment 412607
Patch

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

&gt; Source/WebCore/Configurations/WebCore.xcconfig:114
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS = $(WK_NETWORK_EXTENSION_LD_FLAGS_$(WK_PLATFORM_NAME));
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS_iphoneos = -framework NetworkExtension;
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS_iphonesimulator = -framework NetworkExtension;
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS_watchos = -framework NetworkExtension;
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS_watchsimulator = -framework NetworkExtension;
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS_maccatalyst = -framework NetworkExtension;
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS_macosx = -weak_framework NetworkExtension;

A simplification of this would be:

    WK_NETWORK_EXTENSION_LD_FLAGS = $(WK_NETWORK_EXTENSION_LD_FLAGS_$(WK_COCOA_TOUCH));
    WK_NETWORK_EXTENSION_LD_FLAGS_cocoatouch = -framework NetworkExtension;
    WK_NETWORK_EXTENSION_LD_FLAGS_ = -weak_framework NetworkExtension;

This would also fix the tvOS build.

&gt; Source/WebCore/platform/cocoa/NetworkExtensionContentFilter.h:57
&gt; +    WEBCORE_EXPORT static bool filterSourceRequiresFilter();

Nit: I think `filterSourceRequired` or `isRequired` would say enough.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702689</commentid>
    <comment_count>8</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2020-10-29 05:59:55 -0700</bug_when>
    <thetext>(In reply to Aditya Keerthi from comment #6)
&gt; Will need to add a HAVE macro to avoid compiling
&gt; NetworkExtensionContentFilter on tvOS.

I think the problem is just that you aren&apos;t linking the framework on tvOS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702731</commentid>
    <comment_count>9</comment_count>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2020-10-29 08:25:17 -0700</bug_when>
    <thetext>(In reply to Andy Estes from comment #8)
&gt; (In reply to Aditya Keerthi from comment #6)
&gt; &gt; Will need to add a HAVE macro to avoid compiling
&gt; &gt; NetworkExtensionContentFilter on tvOS.
&gt; 
&gt; I think the problem is just that you aren&apos;t linking the framework on tvOS.

The framework is not available on tvOS (https://developer.apple.com/documentation/networkextension).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702741</commentid>
    <comment_count>10</comment_count>
      <attachid>412656</attachid>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2020-10-29 09:06:39 -0700</bug_when>
    <thetext>Created attachment 412656
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702893</commentid>
    <comment_count>11</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-10-29 15:26:54 -0700</bug_when>
    <thetext>Committed r269173: &lt;https://trac.webkit.org/changeset/269173&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 412656.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702897</commentid>
    <comment_count>12</comment_count>
      <attachid>412656</attachid>
    <who name="">mitz</who>
    <bug_when>2020-10-29 15:34:35 -0700</bug_when>
    <thetext>Comment on attachment 412656
Patch

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

&gt; Source/WebCore/Configurations/WebCore.xcconfig:114
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS = $(WK_NETWORK_EXTENSION_LD_FLAGS_$(WK_PLATFORM_NAME));
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS_iphoneos = -framework NetworkExtension;
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS_iphonesimulator = -framework NetworkExtension;
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS_watchos = -framework NetworkExtension;
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS_watchsimulator = -framework NetworkExtension;
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS_maccatalyst = -framework NetworkExtension;
&gt; +WK_NETWORK_EXTENSION_LD_FLAGS_macosx = -weak_framework NetworkExtension;

If this is going to be a recurring pattern, you should consider instead introducing something like

WK_MACOS_WEAK_FRAMEWORK = -framework;
WK_MACOS_WEAK_FRAMEWORK[sdk=macosx*] = -weak_framework;

in Base.xcconfig and then just adding “$(WK_MACOS_WEAK_FRAMEWORK) NetworkExtension” to OTHER_LDFLAGS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702922</commentid>
    <comment_count>13</comment_count>
    <who name="Aditya Keerthi">akeerthi</who>
    <bug_when>2020-10-29 16:53:45 -0700</bug_when>
    <thetext>(In reply to mitz from comment #12)
&gt; Comment on attachment 412656 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=412656&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/Configurations/WebCore.xcconfig:114
&gt; &gt; +WK_NETWORK_EXTENSION_LD_FLAGS = $(WK_NETWORK_EXTENSION_LD_FLAGS_$(WK_PLATFORM_NAME));
&gt; &gt; +WK_NETWORK_EXTENSION_LD_FLAGS_iphoneos = -framework NetworkExtension;
&gt; &gt; +WK_NETWORK_EXTENSION_LD_FLAGS_iphonesimulator = -framework NetworkExtension;
&gt; &gt; +WK_NETWORK_EXTENSION_LD_FLAGS_watchos = -framework NetworkExtension;
&gt; &gt; +WK_NETWORK_EXTENSION_LD_FLAGS_watchsimulator = -framework NetworkExtension;
&gt; &gt; +WK_NETWORK_EXTENSION_LD_FLAGS_maccatalyst = -framework NetworkExtension;
&gt; &gt; +WK_NETWORK_EXTENSION_LD_FLAGS_macosx = -weak_framework NetworkExtension;
&gt; 
&gt; If this is going to be a recurring pattern, you should consider instead
&gt; introducing something like
&gt; 
&gt; WK_MACOS_WEAK_FRAMEWORK = -framework;
&gt; WK_MACOS_WEAK_FRAMEWORK[sdk=macosx*] = -weak_framework;
&gt; 
&gt; in Base.xcconfig and then just adding “$(WK_MACOS_WEAK_FRAMEWORK)
&gt; NetworkExtension” to OTHER_LDFLAGS.

Thanks! Will keep that in mind for future changes in this area.

Though in this case we cannot unconditionally add “$(WK_MACOS_WEAK_FRAMEWORK) NetworkExtension” to OTHER_LDFLAGS, due to the exclusion of tvOS.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412602</attachid>
            <date>2020-10-28 19:14:39 -0700</date>
            <delta_ts>2020-10-28 19:28:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218314-20201028221437.patch</filename>
            <type>text/plain</type>
            <size>17945</size>
            <attacher name="Aditya Keerthi">akeerthi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4OTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjZkOTQyNjhjYmE2OTVk
NDljMTI2Y2QyNjYwZjE1NTc5NjQ1ODZjMi4uN2Y4YzFkZDNmZDk4MjQ5NDZiNzBiNjc2ZTIwNzM2
YjlmZDJhYjQwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIwLTEwLTI4ICBBZGl0
eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAgICBbQ29jb2FdIFJlbW92
ZSBzb2Z0IGxpbmtpbmcgb2YgTmV0d29ya0V4dGVuc2lvbi5mcmFtZXdvcmsKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODMxNAorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vNzA3ODUyMzk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgV2ViQ29yZSBzaG91bGQgbGluayBOZXR3b3JrRXh0ZW5zaW9uLmZyYW1l
d29yayBub3JtYWxseSwgdG8gYXZvaWQgdGhlCisgICAgICAgIHJ1bnRpbWUgY29zdCBhc3NvY2lh
dGVkIHdpdGggc29mdCBsaW5raW5nLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvV2ViQ29y
ZS54Y2NvbmZpZzoKKworICAgICAgICBPbiBtYWNPUywgd2VhayBsaW5rIHRoZSBmcmFtZXdvcmsg
c2luY2UgTmV0d29ya0V4dGVuc2lvbi5mcmFtZXdvcmsgaXMKKyAgICAgICAgbm90IGF2YWlsYWJs
ZSBvbiB0aGUgQmFzZSBTeXN0ZW0uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9OZXR3b3Jr
RXh0ZW5zaW9uQ29udGVudEZpbHRlci5oOgorCisgICAgICAgIEFkZGVkIHRoZSBmaWx0ZXJTb3Vy
Y2VSZXF1aXJlc0ZpbHRlciBzdGF0aWMgbWV0aG9kIHRvIGF2b2lkIHNvZnQKKyAgICAgICAgbGlu
a2luZyBOZXR3b3JrRXh0ZW5zaW9uLmZyYW1ld29yayBpbiBXZWJLaXQuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9jb2NvYS9OZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlci5tbToKKyAgICAgICAg
KFdlYkNvcmU6Ok5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjplbmFibGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6Ok5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjppbml0aWFsaXplKToK
KyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjpmaWx0ZXJT
b3VyY2VSZXF1aXJlc0ZpbHRlcik6CisKIDIwMjAtMTAtMjUgIFNpbW9uIEZyYXNlciAgPHNpbW9u
LmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQyBEaXNwbGF5XSBNb3ZlIGNvZGUgZm9y
IHBhaW50aW5nIGEgc2luZ2xlIERpc3BsYXk6OkJveCBpbnRvIGl0cyBvd24gY2xhc3MKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cK
aW5kZXggNmMyNGE1Y2M5OTUxZmM1ODZmZmRjMDg3NTQ4OWUwYmNiMzFhODc0My4uOWNhYWFmZTQ2
MDhhMjU2NGI5ODhjMmZkNDg1Mzg3ZDQzY2M1ODM5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBA
QAorMjAyMC0xMC0yOCAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CisKKyAg
ICAgICAgW0NvY29hXSBSZW1vdmUgc29mdCBsaW5raW5nIG9mIE5ldHdvcmtFeHRlbnNpb24uZnJh
bWV3b3JrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTgzMTQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzcwNzg1MjM5PgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYlBh
Z2VQcm94eUNvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmFkZFBsYXRm
b3JtTG9hZFBhcmFtZXRlcnMpOgorCisgICAgICAgIFJlcGxhY2VkIHRoZSBzb2Z0IGxpbmtlZCBt
ZXRob2QgY2FsbCB3aXRoIGEgbmV3IG1ldGhvZCBleHBvcnRlZCBmcm9tCisgICAgICAgIFdlYkNv
cmUuCisKIDIwMjAtMTAtMjYgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgog
CiAgICAgICAgIFtDb250YWN0IFBpY2tlciBBUEldIEFkZCBzdXBwb3J0IGZvciBwaWNrZXIgVUkg
b24gaU9TCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3Jl
LnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZp
ZwppbmRleCA3N2NlNGM1ZWFjMzYyZWM2N2JkZmIyODkwNmJmYzhlM2EyY2UyMWZmLi5jNzNiNTcx
NzNkMDRhMWQ4ZjhjMzc5MGJlODU2MGZjNGNhMDI3NWRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcKQEAgLTEwNSw2ICsxMDUsMTAgQEAgV0tf
TU9CSUxFX0NPUkVfU0VSVklDRVNfTERGTEFHU19jb2NvYXRvdWNoID0gLWZyYW1ld29yayBNb2Jp
bGVDb3JlU2VydmljZXM7CiBXS19NT0JJTEVfR0VTVEFMVF9MREZMQUdTID0gJChXS19NT0JJTEVf
R0VTVEFMVF9MREZMQUdTXyQoV0tfQ09DT0FfVE9VQ0gpKTsKIFdLX01PQklMRV9HRVNUQUxUX0xE
RkxBR1NfY29jb2F0b3VjaCA9IC1sTW9iaWxlR2VzdGFsdDsKIAorV0tfTkVUV09SS19FWFRFTlNJ
T05fTERfRkxBR1MgPSAkKFdLX05FVFdPUktfRVhURU5TSU9OX0xEX0ZMQUdTX0NPQ09BX1RPVUNI
XyQoV0tfSVNfQ09DT0FfVE9VQ0gpKTsKK1dLX05FVFdPUktfRVhURU5TSU9OX0xEX0ZMQUdTX0NP
Q09BX1RPVUNIX1lFUyA9IC1mcmFtZXdvcmsgTmV0d29ya0V4dGVuc2lvbjsKK1dLX05FVFdPUktf
RVhURU5TSU9OX0xEX0ZMQUdTX0NPQ09BX1RPVUNIX05PID0gLXdlYWtfZnJhbWV3b3JrIE5ldHdv
cmtFeHRlbnNpb247CisKIFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xERkxBR1MgPSAkKFdLX1NZ
U1RFTV9DT05GSUdVUkFUSU9OX0xERkxBR1NfJChXS19QTEFURk9STV9OQU1FKSk7CiBXS19TWVNU
RU1fQ09ORklHVVJBVElPTl9MREZMQUdTX21hY29zeCA9IC1mcmFtZXdvcmsgU3lzdGVtQ29uZmln
dXJhdGlvbjsKIApAQCAtMTE0LDcgKzExOCw3IEBAIFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1Mg
PSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1NfJChXS19IQVZFX1VSTF9GT1JNQVRUSU5HCiBX
S19VUkxfRk9STUFUVElOR19MREZMQUdTX1lFUyA9IC1mcmFtZXdvcmsgVVJMRm9ybWF0dGluZzsK
IAogLy8gRklYTUU6IFJlZHVjZSB0aGUgbnVtYmVyIG9mIGFsbG93YWJsZV9jbGllbnRzIDxyZGFy
Oi8vcHJvYmxlbS8zMTgyMzk2OT4KLU9USEVSX0xERkxBR1MgPSAkKGluaGVyaXRlZCkgJChXS19S
RUxPQ0FUQUJMRV9GUkFNRVdPUktfTERGTEFHUykgLWxzcWxpdGUzIC1sb2JqYyAtbEFOR0xFIC1h
bGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9ydCAtYWxsb3dhYmxlX2NsaWVudCBXZWJL
aXRMZWdhY3kgLWZvcmNlX2xvYWQgJChCVUlMVF9QUk9EVUNUU19ESVIpL2xpYlBBTC5hIC1mcmFt
ZXdvcmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgQ29yZUdyYXBo
aWNzIC1mcmFtZXdvcmsgQ29yZVRleHQgLWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsg
SU9TdXJmYWNlIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJhbWV3b3JrIE1ldGFsICQoT1RIRVJfTERG
TEFHU19QTEFURk9STV8kKFdLX0NPQ09BX1RPVUNIKSkgJChPVEhFUl9MREZMQUdTX1BMQVRGT1JN
XyQoV0tfUExBVEZPUk1fTkFNRSkpICQoV0tfQVBQS0lUX0xERkxBR1MpICQoV0tfQVBQU1VQUE9S
VF9MREZMQUdTKSAkKFdLX0FVRElPX1VOSVRfTERGTEFHUykgJChXS19DQVJCT05fTERGTEFHUykg
JChXS19DT1JFX1VJX0xERkxBR1MpICQoV0tfREFUQV9ERVRFQ1RPUlNfQ09SRV9MREZMQUdTKSAk
KFdLX0dSQVBISUNTX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfSU9TVVJGQUNFX0FDQ0VMRVJBVE9S
X0xERkxBR1MpICQoV0tfTElCV0VCUlRDX0xERkxBR1MpICQoV0tfTU9CSUxFX0NPUkVfU0VSVklD
RVNfTERGTEFHUykgJChXS19NT0JJTEVfR0VTVEFMVF9MREZMQUdTKSAkKFdLX1NZU1RFTV9DT05G
SUdVUkFUSU9OX0xERkxBR1MpICQoV0tfQ09SRV9JTUFHRV9MREZMQUdTKSAkKFdLX1VSTF9GT1JN
QVRUSU5HX0xERkxBR1MpOworT1RIRVJfTERGTEFHUyA9ICQoaW5oZXJpdGVkKSAkKFdLX1JFTE9D
QVRBQkxFX0ZSQU1FV09SS19MREZMQUdTKSAtbHNxbGl0ZTMgLWxvYmpjIC1sQU5HTEUgLWFsbG93
YWJsZV9jbGllbnQgV2ViQ29yZVRlc3RTdXBwb3J0IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdExl
Z2FjeSAtZm9yY2VfbG9hZCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvbGliUEFMLmEgLWZyYW1ld29y
ayBDRk5ldHdvcmsgLWZyYW1ld29yayBDb3JlQXVkaW8gLWZyYW1ld29yayBDb3JlR3JhcGhpY3Mg
LWZyYW1ld29yayBDb3JlVGV4dCAtZnJhbWV3b3JrIEZvdW5kYXRpb24gLWZyYW1ld29yayBJT1N1
cmZhY2UgLWZyYW1ld29yayBJbWFnZUlPIC1mcmFtZXdvcmsgTWV0YWwgJChPVEhFUl9MREZMQUdT
X1BMQVRGT1JNXyQoV0tfQ09DT0FfVE9VQ0gpKSAkKE9USEVSX0xERkxBR1NfUExBVEZPUk1fJChX
S19QTEFURk9STV9OQU1FKSkgJChXS19BUFBLSVRfTERGTEFHUykgJChXS19BUFBTVVBQT1JUX0xE
RkxBR1MpICQoV0tfQVVESU9fVU5JVF9MREZMQUdTKSAkKFdLX0NBUkJPTl9MREZMQUdTKSAkKFdL
X0NPUkVfVUlfTERGTEFHUykgJChXS19EQVRBX0RFVEVDVE9SU19DT1JFX0xERkxBR1MpICQoV0tf
R1JBUEhJQ1NfU0VSVklDRVNfTERGTEFHUykgJChXS19JT1NVUkZBQ0VfQUNDRUxFUkFUT1JfTERG
TEFHUykgJChXS19MSUJXRUJSVENfTERGTEFHUykgJChXS19NT0JJTEVfQ09SRV9TRVJWSUNFU19M
REZMQUdTKSAkKFdLX01PQklMRV9HRVNUQUxUX0xERkxBR1MpICQoV0tfTkVUV09SS19FWFRFTlNJ
T05fTERfRkxBR1MpICQoV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERGTEFHUykgJChXS19DT1JF
X0lNQUdFX0xERkxBR1MpICQoV0tfVVJMX0ZPUk1BVFRJTkdfTERGTEFHUyk7CiAKIE9USEVSX0xE
RkxBR1NfUExBVEZPUk1fY29jb2F0b3VjaCA9IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdCAtYWxs
b3dhYmxlX2NsaWVudCBpVHVuZXNVIC1hbGxvd2FibGVfY2xpZW50IENhc2FibGFuY2EgLWFsbG93
YWJsZV9jbGllbnQgUmVtb3RlIC1hbGxvd2FibGVfY2xpZW50IFRWQm9va3MgLWFsbG93YWJsZV9j
bGllbnQgRHVtcFJlbmRlclRyZWUgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0VGVzdFJ1bm5lciAt
YWxsb3dhYmxlX2NsaWVudCBUZXN0V2ViS2l0QVBJOwogT1RIRVJfTERGTEFHU19QTEFURk9STV9t
YWNvc3ggPSAtc3ViX2xpYnJhcnkgbGlib2JqYyAtdW1icmVsbGEgV2ViS2l0OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRG
aWx0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25D
b250ZW50RmlsdGVyLmgKaW5kZXggMDUxYTZjMmRmZGRiOGE1YWFlOTAyZTQyMTNhMjQyZjgyN2E2
MTE4My4uMzdkZjkxMzliMDY4ZjE5NTk1ZmJiYmI1MTA0ZDQ1YWVjZmQ1M2FhZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRG
aWx0ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9OZXR3b3JrRXh0ZW5z
aW9uQ29udGVudEZpbHRlci5oCkBAIC01NCw2ICs1NCw3IEBAIHB1YmxpYzoKICAgICBDb250ZW50
RmlsdGVyVW5ibG9ja0hhbmRsZXIgdW5ibG9ja0hhbmRsZXIoKSBjb25zdCBvdmVycmlkZTsKICNl
bmRpZgogCisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIGJvb2wgZmlsdGVyU291cmNlUmVxdWly
ZXNGaWx0ZXIoKTsKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRIYXNDb25zdW1l
ZFNhbmRib3hFeHRlbnNpb25zKGJvb2wpOwogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIubW0g
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9OZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZp
bHRlci5tbQppbmRleCAyYjIzOTM4NmRmNmYyM2IwZjJhYmNjNjFlOWM3MjE1YzVhYTlkMjU1Li5h
ZDkzOGU2NjBlYWQ1OTZmZGJkZjk0OTVlM2IzMTg2NzgxODcxMmVmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9OZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlci5t
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9OZXR3b3JrRXh0ZW5zaW9uQ29u
dGVudEZpbHRlci5tbQpAQCAtMzgsOSArMzgsNiBAQAogI2ltcG9ydCA8d3RmL1VSTC5oPgogI2lt
cG9ydCA8d3RmL3RocmVhZHMvQmluYXJ5U2VtYXBob3JlLmg+CiAKLVNPRlRfTElOS19GUkFNRVdP
UktfT1BUSU9OQUwoTmV0d29ya0V4dGVuc2lvbik7Ci1TT0ZUX0xJTktfQ0xBU1NfT1BUSU9OQUwo
TmV0d29ya0V4dGVuc2lvbiwgTkVGaWx0ZXJTb3VyY2UpOwotCiBzdGF0aWMgaW5saW5lIE5TRGF0
YSAqcmVwbGFjZW1lbnREYXRhRnJvbURlY2lzaW9uSW5mbyhOU0RpY3Rpb25hcnkgKmRlY2lzaW9u
SW5mbykKIHsKICAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTighZGVjaXNpb25J
bmZvIHx8IFtkZWNpc2lvbkluZm8gaXNLaW5kT2ZDbGFzczpbTlNEaWN0aW9uYXJ5IGNsYXNzXV0p
OwpAQCAtNjIsNyArNTksNyBAQCBib29sIE5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjpl
bmFibGVkKCkKICAgICAgICAgZW5hYmxlZCA9IGZhbHNlOwogICAgICAgICBicmVhazsKICAgICBj
YXNlIFNhbmRib3hFeHRlbnNpb25zU3RhdGU6Ok5vdFNldDoKLSAgICAgICAgZW5hYmxlZCA9IFtn
ZXRORUZpbHRlclNvdXJjZUNsYXNzKCkgZmlsdGVyUmVxdWlyZWRdOworICAgICAgICBlbmFibGVk
ID0gZmlsdGVyU291cmNlUmVxdWlyZXNGaWx0ZXIoKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQog
ICAgIExPRyhDb250ZW50RmlsdGVyaW5nLCAiTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIg
aXMgJXMuXG4iLCBlbmFibGVkID8gImVuYWJsZWQiIDogIm5vdCBlbmFibGVkIik7CkBAIC04MCw3
ICs3Nyw3IEBAIHZvaWQgTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXI6OmluaXRpYWxpemUo
Y29uc3QgVVJMKiB1cmwpCiAgICAgQVNTRVJUKCFtX25lRmlsdGVyU291cmNlKTsKICAgICBtX3F1
ZXVlID0gYWRvcHRPU09iamVjdChkaXNwYXRjaF9xdWV1ZV9jcmVhdGUoIldlYktpdCBOZXR3b3Jr
RXh0ZW5zaW9uIEZpbHRlcmluZyIsIERJU1BBVENIX1FVRVVFX1NFUklBTCkpOwogICAgIEFTU0VS
VF9VTlVTRUQodXJsLCAhdXJsKTsKLSAgICBtX25lRmlsdGVyU291cmNlID0gYWRvcHROUyhbYWxs
b2NORUZpbHRlclNvdXJjZUluc3RhbmNlKCkgaW5pdFdpdGhEZWNpc2lvblF1ZXVlOm1fcXVldWUu
Z2V0KCldKTsKKyAgICBtX25lRmlsdGVyU291cmNlID0gYWRvcHROUyhbW05FRmlsdGVyU291cmNl
IGFsbG9jXSBpbml0V2l0aERlY2lzaW9uUXVldWU6bV9xdWV1ZS5nZXQoKV0pOwogICAgIFttX25l
RmlsdGVyU291cmNlIHNldFNvdXJjZUFwcElkZW50aWZpZXI6YXBwbGljYXRpb25CdW5kbGVJZGVu
dGlmaWVyKCldOwogICAgIFttX25lRmlsdGVyU291cmNlIHNldFNvdXJjZUFwcFBpZDpwcmVzZW50
aW5nQXBwbGljYXRpb25QSUQoKV07CiB9CkBAIC0yMjYsNiArMjIzLDExIEBAIHZvaWQgTmV0d29y
a0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXI6OmhhbmRsZURlY2lzaW9uKE5FRmlsdGVyU291cmNlU3Rh
dHVzIHN0YXR1cywKICNlbmRpZgogfQogCitib29sIE5ldHdvcmtFeHRlbnNpb25Db250ZW50Rmls
dGVyOjpmaWx0ZXJTb3VyY2VSZXF1aXJlc0ZpbHRlcigpCit7CisgICAgcmV0dXJuIFtORUZpbHRl
clNvdXJjZSBmaWx0ZXJSZXF1aXJlZF07Cit9CisKIHZvaWQgTmV0d29ya0V4dGVuc2lvbkNvbnRl
bnRGaWx0ZXI6OnNldEhhc0NvbnN1bWVkU2FuZGJveEV4dGVuc2lvbnMoYm9vbCBoYXNDb25zdW1l
ZFNhbmRib3hFeHRlbnNpb25zKQogewogICAgIGlmIChtX3NhbmRib3hFeHRlbnNpb25zU3RhdGUg
PT0gU2FuZGJveEV4dGVuc2lvbnNTdGF0ZTo6Q29uc3VtZWQpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlDb2NvYS5tbSBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0NvY29hL1dlYlBhZ2VQcm94eUNvY29hLm1tCmluZGV4IDFiOThjYzBkZTM4
ZGYwOWM2Y2UwOTc3MzllYTIyYzk5NzQ3NDRiYjYuLjMwOWQyM2YzNDkyY2NmNjU3YzdhYTc1ZDg3
ZmUxYjc4NzMyNThlNWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29h
L1dlYlBhZ2VQcm94eUNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29h
L1dlYlBhZ2VQcm94eUNvY29hLm1tCkBAIC00NiwxMiArNDYsMTIgQEAKICNpbXBvcnQgPFdlYkNv
cmUvRHJhZ0l0ZW0uaD4KICNpbXBvcnQgPFdlYkNvcmUvR2VvbWV0cnlVdGlsaXRpZXMuaD4KICNp
bXBvcnQgPFdlYkNvcmUvTG9jYWxDdXJyZW50R3JhcGhpY3NDb250ZXh0Lmg+CisjaW1wb3J0IDxX
ZWJDb3JlL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L05vdEltcGxlbWVudGVkLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1J1bkxvb3BPYnNlcnZlci5oPgog
I2ltcG9ydCA8V2ViQ29yZS9TZWFyY2hQb3B1cE1lbnVDb2NvYS5oPgogI2ltcG9ydCA8V2ViQ29y
ZS9UZXh0QWx0ZXJuYXRpdmVXaXRoUmFuZ2UuaD4KICNpbXBvcnQgPFdlYkNvcmUvVmFsaWRhdGlv
bkJ1YmJsZS5oPgotI2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9ORUZpbHRlclNvdXJjZVNQSS5oPgog
I2ltcG9ydCA8cGFsL3NwaS9jb2NvYS9RdWFydHpDb3JlU1BJLmg+CiAjaW1wb3J0IDx3dGYvQmxv
Y2tQdHIuaD4KICNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5oPgpAQCAtNzQsOSArNzQsNiBAQCBT
T0ZUX0xJTktfUFJJVkFURV9GUkFNRVdPUksoV2ViQ29udGVudEFuYWx5c2lzKTsKIFNPRlRfTElO
S19DTEFTUyhXZWJDb250ZW50QW5hbHlzaXMsIFdlYkZpbHRlckV2YWx1YXRvcik7CiAjZW5kaWYK
IAotU09GVF9MSU5LX0ZSQU1FV09SS19PUFRJT05BTChOZXR3b3JrRXh0ZW5zaW9uKTsKLVNPRlRf
TElOS19DTEFTU19PUFRJT05BTChOZXR3b3JrRXh0ZW5zaW9uLCBORUZpbHRlclNvdXJjZSk7Ci0K
ICNkZWZpbmUgTUVTU0FHRV9DSEVDSyhhc3NlcnRpb24pIE1FU1NBR0VfQ0hFQ0tfQkFTRShhc3Nl
cnRpb24sIHByb2Nlc3MoKS5jb25uZWN0aW9uKCkpCiAjZGVmaW5lIE1FU1NBR0VfQ0hFQ0tfQ09N
UExFVElPTihhc3NlcnRpb24sIGNvbXBsZXRpb24pIE1FU1NBR0VfQ0hFQ0tfQ09NUExFVElPTl9C
QVNFKGFzc2VydGlvbiwgcHJvY2VzcygpLmNvbm5lY3Rpb24oKSwgY29tcGxldGlvbikKIApAQCAt
MTU2LDcgKzE1Myw3IEBAIHZvaWQgV2ViUGFnZVByb3h5OjphZGRQbGF0Zm9ybUxvYWRQYXJhbWV0
ZXJzKFdlYlByb2Nlc3NQcm94eSYgcHJvY2VzcywgTG9hZFBhcmFtCiB7CiAgICAgbG9hZFBhcmFt
ZXRlcnMuZGF0YURldGVjdGlvbkNvbnRleHQgPSBtX3VpQ2xpZW50LT5kYXRhRGV0ZWN0aW9uQ29u
dGV4dCgpOwogCi0gICAgaWYgKCFwcm9jZXNzLmhhc05ldHdvcmtFeHRlbnNpb25TYW5kYm94QWNj
ZXNzKCkgJiYgW2dldE5FRmlsdGVyU291cmNlQ2xhc3MoKSBmaWx0ZXJSZXF1aXJlZF0pIHsKKyAg
ICBpZiAoIXByb2Nlc3MuaGFzTmV0d29ya0V4dGVuc2lvblNhbmRib3hBY2Nlc3MoKSAmJiBOZXR3
b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlcjo6ZmlsdGVyU291cmNlUmVxdWlyZXNGaWx0ZXIoKSkg
ewogICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgaGVscGVySGFuZGxlOwogICAgICAg
ICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JNYWNoTG9va3VwKCJjb20uYXBwbGUu
bmVoZWxwZXIiX3MsIFdURjo6bnVsbG9wdCwgaGVscGVySGFuZGxlKTsKICAgICAgICAgbG9hZFBh
cmFtZXRlcnMubmVIZWxwZXJFeHRlbnNpb25IYW5kbGUgPSBXVEZNb3ZlKGhlbHBlckhhbmRsZSk7
CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYzQ0
ZDllOGRlNTIyY2Q2OTU4YzY0NDg4NWE5N2ViMWU4OTI0MjllYS4uMTY5N2Y0MTVhOTk5YmFhOTQy
ZTU0YjY3ZGNlYjA4NTExMjAxN2I5YiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBi
L1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIwLTEwLTI4ICBBZGl0eWEgS2Vl
cnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAgICBbQ29jb2FdIFJlbW92ZSBzb2Z0
IGxpbmtpbmcgb2YgTmV0d29ya0V4dGVuc2lvbi5mcmFtZXdvcmsKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODMxNAorICAgICAgICA8cmRhcjovL3By
b2JsZW0vNzA3ODUyMzk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgVXBkYXRlZCBhIHRlc3QgdG8gcmVmbGVjdCB0aGF0IE5ldHdvcmtFeHRlbnNpb24u
ZnJhbWV3b3JrIGlzIG5vIGxvbmdlcgorICAgICAgICBsb2FkZWQgYXQgcnVudGltZS4gVGhpcyB0
ZXN0IHdhcyBmYWlsaW5nIG9uIENhdGFsaW5hIGFmdGVyIHIyNjkxMDksCisgICAgICAgIGFzIHRo
ZSBDb250YWN0cyBmcmFtZXdvcmsgd2FzIGxvYWRpbmcgTmV0d29ya0V4dGVuc2lvbi4KKworICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvQ29udGVudEZpbHRlcmluZy5o
OgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvQ29udGVudEZpbHRl
cmluZy5tbToKKyAgICAgICAgKC1bTGF6aWx5TG9hZFBsYXRmb3JtRnJhbWV3b3Jrc0NvbnRyb2xs
ZXIgZXhwZWN0UGFyZW50YWxDb250cm9sc0xvYWRlZDpdKToKKyAgICAgICAgKFRFU1QpOgorICAg
ICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvQ29udGVudEZpbHRlcmluZ1Bs
dWdJbi5tbToKKyAgICAgICAgKC1bQ29udGVudEZpbHRlcmluZ1BsdWdJbiBjaGVja0lmUGxhdGZv
cm1GcmFtZXdvcmtzQXJlTG9hZGVkOl0pOgorCiAyMDIwLTEwLTI2ICBBZGl0eWEgS2VlcnRoaSAg
PGFrZWVydGhpQGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29udGFjdCBQaWNrZXIgQVBJXSBBZGQg
c3VwcG9ydCBmb3IgcGlja2VyIFVJIG9uIGlPUwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktp
dEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Db250ZW50RmlsdGVyaW5nLmggYi9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmcuaAppbmRleCA5ZDViNWQ0
MzM2NWQ5YWZiMzk5NzcwMGE3MTk4ZjY1OTlmMzdkOTBmLi4wZjhlZTJhODNhNjQ0NzE5NmM2MDVk
MjBjMzk2ZjcwMzY5Y2I2ODcwIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3Rz
L1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmcuaAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmcuaApAQCAtMjQsNSArMjQsNSBAQAog
ICovCiAKIEBwcm90b2NvbCBDb250ZW50RmlsdGVyaW5nUHJvdG9jb2wgPE5TT2JqZWN0PgotLSAo
dm9pZCljaGVja0lmUGxhdGZvcm1GcmFtZXdvcmtzQXJlTG9hZGVkOih2b2lkICheKShCT09MIHBh
cmVudGFsQ29udHJvbHNMb2FkZWQsIEJPT0wgbmV0d29ya0V4dGVuc2lvbkxvYWRlZCkpY29tcGxl
dGlvbkhhbmRsZXI7CistICh2b2lkKWNoZWNrSWZQbGF0Zm9ybUZyYW1ld29ya3NBcmVMb2FkZWQ6
KHZvaWQgKF4pKEJPT0wgcGFyZW50YWxDb250cm9sc0xvYWRlZCkpY29tcGxldGlvbkhhbmRsZXI7
CiBAZW5kCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L0NvbnRlbnRGaWx0ZXJpbmcubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENv
Y29hL0NvbnRlbnRGaWx0ZXJpbmcubW0KaW5kZXggODU2YmRlNGIxZTkzYTIwMTEyNDI4YzgyNDUz
YjZlZjcxMTU0N2Q5Zi4uNDMzOTEzMTEwMWYyY2RkOTUwOTg2N2VmZTk0NGY2ZTc3ZWYzOWVkYiAx
MDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Db250ZW50
RmlsdGVyaW5nLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
Q29udGVudEZpbHRlcmluZy5tbQpAQCAtMzM2LDcgKzMzNiw3IEBAIFRFU1QoQ29udGVudEZpbHRl
cmluZywgTG9hZEFsdGVybmF0ZUFmdGVyRmluaXNoZWRBZGRpbmdEYXRhV0syKQogCiBAaW50ZXJm
YWNlIExhemlseUxvYWRQbGF0Zm9ybUZyYW1ld29ya3NDb250cm9sbGVyIDogTlNPYmplY3QgPFdL
TmF2aWdhdGlvbkRlbGVnYXRlPgogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBXS1dl
YlZpZXcgKndlYlZpZXc7Ci0tICh2b2lkKWV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6KEJP
T0wpcGFyZW50YWxDb250cm9sc1Nob3VsZEJlTG9hZGVkIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQ6
KEJPT0wpbmV0d29ya0V4dGVuc2lvblNob3VsZEJlTG9hZGVkOworLSAodm9pZClleHBlY3RQYXJl
bnRhbENvbnRyb2xzTG9hZGVkOihCT09MKXBhcmVudGFsQ29udHJvbHNTaG91bGRCZUxvYWRlZDsK
IEBlbmQKIAogQGltcGxlbWVudGF0aW9uIExhemlseUxvYWRQbGF0Zm9ybUZyYW1ld29ya3NDb250
cm9sbGVyIHsKQEAgLTM2NCwxNCArMzY0LDEzIEBAIC0gKFdLV2ViVmlldyAqKXdlYlZpZXcKICAg
ICByZXR1cm4gX3dlYlZpZXcuZ2V0KCk7CiB9CiAKLS0gKHZvaWQpZXhwZWN0UGFyZW50YWxDb250
cm9sc0xvYWRlZDooQk9PTClwYXJlbnRhbENvbnRyb2xzU2hvdWxkQmVMb2FkZWQgbmV0d29ya0V4
dGVuc2lvbkxvYWRlZDooQk9PTCluZXR3b3JrRXh0ZW5zaW9uU2hvdWxkQmVMb2FkZWQKKy0gKHZv
aWQpZXhwZWN0UGFyZW50YWxDb250cm9sc0xvYWRlZDooQk9PTClwYXJlbnRhbENvbnRyb2xzU2hv
dWxkQmVMb2FkZWQKIHsKICAgICBpc0RvbmUgPSBmYWxzZTsKLSAgICBbX3JlbW90ZU9iamVjdFBy
b3h5IGNoZWNrSWZQbGF0Zm9ybUZyYW1ld29ya3NBcmVMb2FkZWQ6XihCT09MIHBhcmVudGFsQ29u
dHJvbHNMb2FkZWQsIEJPT0wgbmV0d29ya0V4dGVuc2lvbkxvYWRlZCkgeworICAgIFtfcmVtb3Rl
T2JqZWN0UHJveHkgY2hlY2tJZlBsYXRmb3JtRnJhbWV3b3Jrc0FyZUxvYWRlZDpeKEJPT0wgcGFy
ZW50YWxDb250cm9sc0xvYWRlZCkgewogI2lmIEhBVkUoUEFSRU5UQUxfQ09OVFJPTFMpCiAgICAg
ICAgIEVYUEVDVF9FUShzdGF0aWNfY2FzdDxib29sPihwYXJlbnRhbENvbnRyb2xzU2hvdWxkQmVM
b2FkZWQpLCBzdGF0aWNfY2FzdDxib29sPihwYXJlbnRhbENvbnRyb2xzTG9hZGVkKSk7CiAjZW5k
aWYKLSAgICAgICAgRVhQRUNUX0VRKHN0YXRpY19jYXN0PGJvb2w+KG5ldHdvcmtFeHRlbnNpb25T
aG91bGRCZUxvYWRlZCksIHN0YXRpY19jYXN0PGJvb2w+KG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQp
KTsKICAgICAgICAgaXNEb25lID0gdHJ1ZTsKICAgICB9XTsKICAgICBUZXN0V2ViS2l0QVBJOjpV
dGlsOjpydW4oJmlzRG9uZSk7CkBAIC00MDYsMjkgKzQwNSwyOSBAQCBURVNUKENvbnRlbnRGaWx0
ZXJpbmcsIExhemlseUxvYWRQbGF0Zm9ybUZyYW1ld29ya3MpCiAKICAgICBAYXV0b3JlbGVhc2Vw
b29sIHsKICAgICAgICAgYXV0byBjb250cm9sbGVyID0gYWRvcHROUyhbW0xhemlseUxvYWRQbGF0
Zm9ybUZyYW1ld29ya3NDb250cm9sbGVyIGFsbG9jXSBpbml0XSk7Ci0gICAgICAgIFtjb250cm9s
bGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6Tk8gbmV0d29ya0V4dGVuc2lvbkxvYWRl
ZDpOT107CisgICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6
Tk9dOwogCiAgICAgICAgIGlzRG9uZSA9IGZhbHNlOwogICAgICAgICBbW2NvbnRyb2xsZXIgd2Vi
Vmlld10gbG9hZEhUTUxTdHJpbmc6QCJQQVNTIiBiYXNlVVJMOltOU1VSTCBVUkxXaXRoU3RyaW5n
OkAiYWJvdXQ6YmxhbmsiXV07CiAgICAgICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmaXNE
b25lKTsKLSAgICAgICAgW2NvbnRyb2xsZXIgZXhwZWN0UGFyZW50YWxDb250cm9sc0xvYWRlZDpO
TyBuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkOk5PXTsKKyAgICAgICAgW2NvbnRyb2xsZXIgZXhwZWN0
UGFyZW50YWxDb250cm9sc0xvYWRlZDpOT107CiAKICAgICAgICAgaXNEb25lID0gZmFsc2U7CiAg
ICAgICAgIFtbY29udHJvbGxlciB3ZWJWaWV3XSBsb2FkRGF0YTpbTlNEYXRhIGRhdGFXaXRoQnl0
ZXM6IlBBU1MiIGxlbmd0aDo0XSBNSU1FVHlwZTpAInRleHQvaHRtbCIgY2hhcmFjdGVyRW5jb2Rp
bmdOYW1lOkAiVVRGLTgiIGJhc2VVUkw6W05TVVJMIFVSTFdpdGhTdHJpbmc6QCJhYm91dDpibGFu
ayJdXTsKICAgICAgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZpc0RvbmUpOwotICAgICAg
ICBbY29udHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOk5PIG5ldHdvcmtFeHRl
bnNpb25Mb2FkZWQ6Tk9dOworICAgICAgICBbY29udHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRy
b2xzTG9hZGVkOk5PXTsKIAogICAgICAgICBpc0RvbmUgPSBmYWxzZTsKICAgICAgICAgTlNVUkwg
KmZpbGVVUkwgPSBbW05TQnVuZGxlIG1haW5CdW5kbGVdIFVSTEZvclJlc291cmNlOkAiQ29udGVu
dEZpbHRlcmluZyIgd2l0aEV4dGVuc2lvbjpAImh0bWwiIHN1YmRpcmVjdG9yeTpAIlRlc3RXZWJL
aXRBUEkucmVzb3VyY2VzIl07CiAgICAgICAgIFtbY29udHJvbGxlciB3ZWJWaWV3XSBsb2FkRmls
ZVVSTDpmaWxlVVJMIGFsbG93aW5nUmVhZEFjY2Vzc1RvVVJMOmZpbGVVUkxdOwogICAgICAgICBU
ZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmlzRG9uZSk7Ci0gICAgICAgIFtjb250cm9sbGVyIGV4
cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6Tk8gbmV0d29ya0V4dGVuc2lvbkxvYWRlZDpOT107
CisgICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6Tk9dOwog
CiAgICAgICAgIGlzRG9uZSA9IGZhbHNlOwogICAgICAgICBbVGVzdFByb3RvY29sIHJlZ2lzdGVy
V2l0aFNjaGVtZTpAImN1c3RvbSJdOwogICAgICAgICBbW2NvbnRyb2xsZXIgd2ViVmlld10gbG9h
ZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDpbTlNVUkwgVVJMV2l0aFN0cmlu
ZzpAImN1c3RvbTovL3Rlc3QiXV1dOwogICAgICAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4o
JmlzRG9uZSk7Ci0gICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2Fk
ZWQ6Tk8gbmV0d29ya0V4dGVuc2lvbkxvYWRlZDpOT107CisgICAgICAgIFtjb250cm9sbGVyIGV4
cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6Tk9dOwogICAgICAgICBbVGVzdFByb3RvY29sIHVu
cmVnaXN0ZXJdOwogCiAgICAgICAgIGlzRG9uZSA9IGZhbHNlOwpAQCAtNDM2LDkgKzQzNSw5IEBA
IFRFU1QoQ29udGVudEZpbHRlcmluZywgTGF6aWx5TG9hZFBsYXRmb3JtRnJhbWV3b3JrcykKICAg
ICAgICAgW1tjb250cm9sbGVyIHdlYlZpZXddIGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVx
dWVzdFdpdGhVUkw6W05TVVJMIFVSTFdpdGhTdHJpbmc6QCJodHRwOi8vdGVzdCJdXV07CiAgICAg
ICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmaXNEb25lKTsKICNpZiBQTEFURk9STShNQUMp
Ci0gICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6Tk8gbmV0
d29ya0V4dGVuc2lvbkxvYWRlZDpZRVNdOworICAgICAgICBbY29udHJvbGxlciBleHBlY3RQYXJl
bnRhbENvbnRyb2xzTG9hZGVkOk5PXTsKICNlbHNlCi0gICAgICAgIFtjb250cm9sbGVyIGV4cGVj
dFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6WUVTIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQ6WUVTXTsK
KyAgICAgICAgW2NvbnRyb2xsZXIgZXhwZWN0UGFyZW50YWxDb250cm9sc0xvYWRlZDpZRVNdOwog
I2VuZGlmCiAgICAgICAgIFtUZXN0UHJvdG9jb2wgdW5yZWdpc3Rlcl07CiAKQEAgLTQ0Nyw3ICs0
NDYsNyBAQCBURVNUKENvbnRlbnRGaWx0ZXJpbmcsIExhemlseUxvYWRQbGF0Zm9ybUZyYW1ld29y
a3MpCiAgICAgICAgIFtUZXN0UHJvdG9jb2wgcmVnaXN0ZXJXaXRoU2NoZW1lOkAiaHR0cHMiXTsK
ICAgICAgICAgW1tjb250cm9sbGVyIHdlYlZpZXddIGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3Qg
cmVxdWVzdFdpdGhVUkw6W05TVVJMIFVSTFdpdGhTdHJpbmc6QCJodHRwczovL3Rlc3QiXV1dOwog
ICAgICAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmlzRG9uZSk7Ci0gICAgICAgIFtjb250
cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6WUVTIG5ldHdvcmtFeHRlbnNpb25M
b2FkZWQ6WUVTXTsKKyAgICAgICAgW2NvbnRyb2xsZXIgZXhwZWN0UGFyZW50YWxDb250cm9sc0xv
YWRlZDpZRVNdOwogICAgICAgICBbVGVzdFByb3RvY29sIHVucmVnaXN0ZXJdOwogI2VuZGlmCiAg
ICAgfQpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9D
b250ZW50RmlsdGVyaW5nUGx1Z0luLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRDb2NvYS9Db250ZW50RmlsdGVyaW5nUGx1Z0luLm1tCmluZGV4IDM2NTM0MTMwMzEzYzQyMzM1
ODNmMzY0NDhhNTc3YmMyMDliZjk5MDcuLjVkZmY4Mjc0Y2ZkMGE2YTZhZWFmZDMxOWNhMzI4M2Jl
YzhkYjY0ZmMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29j
b2EvQ29udGVudEZpbHRlcmluZ1BsdWdJbi5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmdQbHVnSW4ubW0KQEAgLTExMywxNSArMTEz
LDE0IEBAIC0gKHZvaWQpb2JzZXJ2ZVZhbHVlRm9yS2V5UGF0aDooTlNTdHJpbmcgKilrZXlQYXRo
IG9mT2JqZWN0OihpZClvYmplY3QgY2hhbmdlOihOCiAgICAgX2NvbnRlbnRGaWx0ZXJFbmFibGVy
ID0gY29udGVudEZpbHRlckVuYWJsZXI7CiB9CiAKLS0gKHZvaWQpY2hlY2tJZlBsYXRmb3JtRnJh
bWV3b3Jrc0FyZUxvYWRlZDoodm9pZCAoXikoQk9PTCBwYXJlbnRhbENvbnRyb2xzTG9hZGVkLCBC
T09MIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQpKWNvbXBsZXRpb25IYW5kbGVyCistICh2b2lkKWNo
ZWNrSWZQbGF0Zm9ybUZyYW1ld29ya3NBcmVMb2FkZWQ6KHZvaWQgKF4pKEJPT0wgcGFyZW50YWxD
b250cm9sc0xvYWRlZCkpY29tcGxldGlvbkhhbmRsZXIKIHsKICAgICBib29sIHBhcmVudGFsQ29u
dHJvbHNMb2FkZWQgPSBmYWxzZTsKICNpZiBIQVZFKFBBUkVOVEFMX0NPTlRST0xTKQogICAgIHBh
cmVudGFsQ29udHJvbHNMb2FkZWQgPSBOU1ZlcnNpb25PZlJ1blRpbWVMaWJyYXJ5KCJXZWJDb250
ZW50QW5hbHlzaXMiKSAhPSAtMTsKICNlbmRpZgogCi0gICAgYm9vbCBuZXR3b3JrRXh0ZW5zaW9u
TG9hZGVkID0gbmV0d29ya0V4dGVuc2lvbkxvYWRlZCA9IE5TVmVyc2lvbk9mUnVuVGltZUxpYnJh
cnkoIk5ldHdvcmtFeHRlbnNpb24iKSAhPSAtMTsKLSAgICBjb21wbGV0aW9uSGFuZGxlcihwYXJl
bnRhbENvbnRyb2xzTG9hZGVkLCBuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkKTsKKyAgICBjb21wbGV0
aW9uSGFuZGxlcihwYXJlbnRhbENvbnRyb2xzTG9hZGVkKTsKIH0KIAogQGVuZAo=
</data>
<flag name="commit-queue"
          id="429079"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412606</attachid>
            <date>2020-10-28 19:31:09 -0700</date>
            <delta_ts>2020-10-28 19:45:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218314-20201028223108.patch</filename>
            <type>text/plain</type>
            <size>18444</size>
            <attacher name="Aditya Keerthi">akeerthi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4OTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjZkOTQyNjhjYmE2OTVk
NDljMTI2Y2QyNjYwZjE1NTc5NjQ1ODZjMi4uOWNkOWJlNWVlZWFlNzU2ZGNlYjAzOGMyYjQxZDZl
NmY3N2MwODY3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIwLTEwLTI4ICBBZGl0
eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAgICBbQ29jb2FdIFJlbW92
ZSBzb2Z0IGxpbmtpbmcgb2YgTmV0d29ya0V4dGVuc2lvbi5mcmFtZXdvcmsKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODMxNAorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vNzA3ODUyMzk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgV2ViQ29yZSBzaG91bGQgbGluayBOZXR3b3JrRXh0ZW5zaW9uLmZyYW1l
d29yayBub3JtYWxseSwgdG8gYXZvaWQgdGhlCisgICAgICAgIHJ1bnRpbWUgY29zdCBhc3NvY2lh
dGVkIHdpdGggc29mdCBsaW5raW5nLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvV2ViQ29y
ZS54Y2NvbmZpZzoKKworICAgICAgICBPbiBtYWNPUywgd2VhayBsaW5rIHRoZSBmcmFtZXdvcmsg
c2luY2UgTmV0d29ya0V4dGVuc2lvbi5mcmFtZXdvcmsgaXMKKyAgICAgICAgbm90IGF2YWlsYWJs
ZSBvbiB0aGUgQmFzZSBTeXN0ZW0uIE9uIHR2T1MsIHdlYWsgbGluayB0aGUgZnJhbWV3b3JrCisg
ICAgICAgIHNpbmNlIGl0IGlzIHVuYXZhaWxhYmxlLgorCisgICAgICAgICogcGxhdGZvcm0vY29j
b2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIuaDoKKworICAgICAgICBBZGRlZCB0aGUg
ZmlsdGVyU291cmNlUmVxdWlyZXNGaWx0ZXIgc3RhdGljIG1ldGhvZCB0byBhdm9pZCBzb2Z0Cisg
ICAgICAgIGxpbmtpbmcgTmV0d29ya0V4dGVuc2lvbi5mcmFtZXdvcmsgaW4gV2ViS2l0LgorCisg
ICAgICAgICogcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIubW06
CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlcjo6ZW5hYmxl
ZCk6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlcjo6aW5p
dGlhbGl6ZSk6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRl
cjo6ZmlsdGVyU291cmNlUmVxdWlyZXNGaWx0ZXIpOgorCiAyMDIwLTEwLTI1ICBTaW1vbiBGcmFz
ZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkMgRGlzcGxheV0gTW92
ZSBjb2RlIGZvciBwYWludGluZyBhIHNpbmdsZSBEaXNwbGF5OjpCb3ggaW50byBpdHMgb3duIGNs
YXNzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCmluZGV4IDZjMjRhNWNjOTk1MWZjNTg2ZmZkYzA4NzU0ODllMGJjYjMxYTg3NDMu
LjljYWFhZmU0NjA4YTI1NjRiOTg4YzJmZDQ4NTM4N2Q0M2NjNTgzOTkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTcgQEAKKzIwMjAtMTAtMjggIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUu
Y29tPgorCisgICAgICAgIFtDb2NvYV0gUmVtb3ZlIHNvZnQgbGlua2luZyBvZiBOZXR3b3JrRXh0
ZW5zaW9uLmZyYW1ld29yaworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjE4MzE0CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83MDc4NTIzOT4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9D
b2NvYS9XZWJQYWdlUHJveHlDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5
OjphZGRQbGF0Zm9ybUxvYWRQYXJhbWV0ZXJzKToKKworICAgICAgICBSZXBsYWNlZCB0aGUgc29m
dCBsaW5rZWQgbWV0aG9kIGNhbGwgd2l0aCBhIG5ldyBtZXRob2QgZXhwb3J0ZWQgZnJvbQorICAg
ICAgICBXZWJDb3JlLgorCiAyMDIwLTEwLTI2ICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFw
cGxlLmNvbT4KIAogICAgICAgICBbQ29udGFjdCBQaWNrZXIgQVBJXSBBZGQgc3VwcG9ydCBmb3Ig
cGlja2VyIFVJIG9uIGlPUwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlv
bnMvV2ViQ29yZS54Y2NvbmZpZyBiL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNv
cmUueGNjb25maWcKaW5kZXggNzdjZTRjNWVhYzM2MmVjNjdiZGZiMjg5MDZiZmM4ZTNhMmNlMjFm
Zi4uNGU0MGRjMTI4MGNjYTI0ZjIzOGRkY2Q4ZmVmYzc3YTQ1ZjBmNzQ4OCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCkBAIC0xMDUsNiArMTA1
LDE2IEBAIFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxBR1NfY29jb2F0b3VjaCA9IC1mcmFt
ZXdvcmsgTW9iaWxlQ29yZVNlcnZpY2VzOwogV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHUyA9ICQo
V0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHU18kKFdLX0NPQ09BX1RPVUNIKSk7CiBXS19NT0JJTEVf
R0VTVEFMVF9MREZMQUdTX2NvY29hdG91Y2ggPSAtbE1vYmlsZUdlc3RhbHQ7CiAKK1dLX05FVFdP
UktfRVhURU5TSU9OX0xEX0ZMQUdTID0gJChXS19ORVRXT1JLX0VYVEVOU0lPTl9MRF9GTEFHU18k
KFdLX1BMQVRGT1JNX05BTUUpKTsKK1dLX05FVFdPUktfRVhURU5TSU9OX0xEX0ZMQUdTX2lwaG9u
ZW9zID0gLWZyYW1ld29yayBOZXR3b3JrRXh0ZW5zaW9uOworV0tfTkVUV09SS19FWFRFTlNJT05f
TERfRkxBR1NfaXBob25lc2ltdWxhdG9yID0gLWZyYW1ld29yayBOZXR3b3JrRXh0ZW5zaW9uOwor
V0tfTkVUV09SS19FWFRFTlNJT05fTERfRkxBR1Nfd2F0Y2hvcyA9IC1mcmFtZXdvcmsgTmV0d29y
a0V4dGVuc2lvbjsKK1dLX05FVFdPUktfRVhURU5TSU9OX0xEX0ZMQUdTX3dhdGNoc2ltdWxhdG9y
ID0gLWZyYW1ld29yayBOZXR3b3JrRXh0ZW5zaW9uOworV0tfTkVUV09SS19FWFRFTlNJT05fTERf
RkxBR1NfYXBwbGV0dm9zID0gLXdlYWtfZnJhbWV3b3JrIE5ldHdvcmtFeHRlbnNpb247CitXS19O
RVRXT1JLX0VYVEVOU0lPTl9MRF9GTEFHU19hcHBsZXR2c2ltdWxhdG9yID0gLXdlYWtfZnJhbWV3
b3JrIE5ldHdvcmtFeHRlbnNpb247CitXS19ORVRXT1JLX0VYVEVOU0lPTl9MRF9GTEFHU19tYWNj
YXRhbHlzdCA9IC1mcmFtZXdvcmsgTmV0d29ya0V4dGVuc2lvbjsKK1dLX05FVFdPUktfRVhURU5T
SU9OX0xEX0ZMQUdTX21hY29zeCA9IC13ZWFrX2ZyYW1ld29yayBOZXR3b3JrRXh0ZW5zaW9uOwor
CiBXS19TWVNURU1fQ09ORklHVVJBVElPTl9MREZMQUdTID0gJChXS19TWVNURU1fQ09ORklHVVJB
VElPTl9MREZMQUdTXyQoV0tfUExBVEZPUk1fTkFNRSkpOwogV0tfU1lTVEVNX0NPTkZJR1VSQVRJ
T05fTERGTEFHU19tYWNvc3ggPSAtZnJhbWV3b3JrIFN5c3RlbUNvbmZpZ3VyYXRpb247CiAKQEAg
LTExNCw3ICsxMjQsNyBAQCBXS19VUkxfRk9STUFUVElOR19MREZMQUdTID0gJChXS19VUkxfRk9S
TUFUVElOR19MREZMQUdTXyQoV0tfSEFWRV9VUkxfRk9STUFUVElORwogV0tfVVJMX0ZPUk1BVFRJ
TkdfTERGTEFHU19ZRVMgPSAtZnJhbWV3b3JrIFVSTEZvcm1hdHRpbmc7CiAKIC8vIEZJWE1FOiBS
ZWR1Y2UgdGhlIG51bWJlciBvZiBhbGxvd2FibGVfY2xpZW50cyA8cmRhcjovL3Byb2JsZW0vMzE4
MjM5Njk+Ci1PVEhFUl9MREZMQUdTID0gJChpbmhlcml0ZWQpICQoV0tfUkVMT0NBVEFCTEVfRlJB
TUVXT1JLX0xERkxBR1MpIC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtYWxsb3dhYmxlX2NsaWVu
dCBXZWJDb3JlVGVzdFN1cHBvcnQgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0TGVnYWN5IC1mb3Jj
ZV9sb2FkICQoQlVJTFRfUFJPRFVDVFNfRElSKS9saWJQQUwuYSAtZnJhbWV3b3JrIENGTmV0d29y
ayAtZnJhbWV3b3JrIENvcmVBdWRpbyAtZnJhbWV3b3JrIENvcmVHcmFwaGljcyAtZnJhbWV3b3Jr
IENvcmVUZXh0IC1mcmFtZXdvcmsgRm91bmRhdGlvbiAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJh
bWV3b3JrIEltYWdlSU8gLWZyYW1ld29yayBNZXRhbCAkKE9USEVSX0xERkxBR1NfUExBVEZPUk1f
JChXS19DT0NPQV9UT1VDSCkpICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8kKFdLX1BMQVRGT1JN
X05BTUUpKSAkKFdLX0FQUEtJVF9MREZMQUdTKSAkKFdLX0FQUFNVUFBPUlRfTERGTEFHUykgJChX
S19BVURJT19VTklUX0xERkxBR1MpICQoV0tfQ0FSQk9OX0xERkxBR1MpICQoV0tfQ09SRV9VSV9M
REZMQUdTKSAkKFdLX0RBVEFfREVURUNUT1JTX0NPUkVfTERGTEFHUykgJChXS19HUkFQSElDU19T
RVJWSUNFU19MREZMQUdTKSAkKFdLX0lPU1VSRkFDRV9BQ0NFTEVSQVRPUl9MREZMQUdTKSAkKFdL
X0xJQldFQlJUQ19MREZMQUdTKSAkKFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxBR1MpICQo
V0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHUykgJChXS19TWVNURU1fQ09ORklHVVJBVElPTl9MREZM
QUdTKSAkKFdLX0NPUkVfSU1BR0VfTERGTEFHUykgJChXS19VUkxfRk9STUFUVElOR19MREZMQUdT
KTsKK09USEVSX0xERkxBR1MgPSAkKGluaGVyaXRlZCkgJChXS19SRUxPQ0FUQUJMRV9GUkFNRVdP
UktfTERGTEFHUykgLWxzcWxpdGUzIC1sb2JqYyAtbEFOR0xFIC1hbGxvd2FibGVfY2xpZW50IFdl
YkNvcmVUZXN0U3VwcG9ydCAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRMZWdhY3kgLWZvcmNlX2xv
YWQgJChCVUlMVF9QUk9EVUNUU19ESVIpL2xpYlBBTC5hIC1mcmFtZXdvcmsgQ0ZOZXR3b3JrIC1m
cmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgQ29y
ZVRleHQgLWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdv
cmsgSW1hZ2VJTyAtZnJhbWV3b3JrIE1ldGFsICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8kKFdL
X0NPQ09BX1RPVUNIKSkgJChPVEhFUl9MREZMQUdTX1BMQVRGT1JNXyQoV0tfUExBVEZPUk1fTkFN
RSkpICQoV0tfQVBQS0lUX0xERkxBR1MpICQoV0tfQVBQU1VQUE9SVF9MREZMQUdTKSAkKFdLX0FV
RElPX1VOSVRfTERGTEFHUykgJChXS19DQVJCT05fTERGTEFHUykgJChXS19DT1JFX1VJX0xERkxB
R1MpICQoV0tfREFUQV9ERVRFQ1RPUlNfQ09SRV9MREZMQUdTKSAkKFdLX0dSQVBISUNTX1NFUlZJ
Q0VTX0xERkxBR1MpICQoV0tfSU9TVVJGQUNFX0FDQ0VMRVJBVE9SX0xERkxBR1MpICQoV0tfTElC
V0VCUlRDX0xERkxBR1MpICQoV0tfTU9CSUxFX0NPUkVfU0VSVklDRVNfTERGTEFHUykgJChXS19N
T0JJTEVfR0VTVEFMVF9MREZMQUdTKSAkKFdLX05FVFdPUktfRVhURU5TSU9OX0xEX0ZMQUdTKSAk
KFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xERkxBR1MpICQoV0tfQ09SRV9JTUFHRV9MREZMQUdT
KSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1MpOwogCiBPVEhFUl9MREZMQUdTX1BMQVRGT1JN
X2NvY29hdG91Y2ggPSAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXQgLWFsbG93YWJsZV9jbGllbnQg
aVR1bmVzVSAtYWxsb3dhYmxlX2NsaWVudCBDYXNhYmxhbmNhIC1hbGxvd2FibGVfY2xpZW50IFJl
bW90ZSAtYWxsb3dhYmxlX2NsaWVudCBUVkJvb2tzIC1hbGxvd2FibGVfY2xpZW50IER1bXBSZW5k
ZXJUcmVlIC1hbGxvd2FibGVfY2xpZW50IFdlYktpdFRlc3RSdW5uZXIgLWFsbG93YWJsZV9jbGll
bnQgVGVzdFdlYktpdEFQSTsKIE9USEVSX0xERkxBR1NfUExBVEZPUk1fbWFjb3N4ID0gLXN1Yl9s
aWJyYXJ5IGxpYm9iamMgLXVtYnJlbGxhIFdlYktpdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9OZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlci5o
CmluZGV4IDA1MWE2YzJkZmRkYjhhNWFhZTkwMmU0MjEzYTI0MmY4MjdhNjExODMuLjM3ZGY5MTM5
YjA2OGYxOTU5NWZiYmJiNTEwNGQ0NWFlY2ZkNTNhYWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0
ZXIuaApAQCAtNTQsNiArNTQsNyBAQCBwdWJsaWM6CiAgICAgQ29udGVudEZpbHRlclVuYmxvY2tI
YW5kbGVyIHVuYmxvY2tIYW5kbGVyKCkgY29uc3Qgb3ZlcnJpZGU7CiAjZW5kaWYKIAorICAgIFdF
QkNPUkVfRVhQT1JUIHN0YXRpYyBib29sIGZpbHRlclNvdXJjZVJlcXVpcmVzRmlsdGVyKCk7CiAg
ICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIHZvaWQgc2V0SGFzQ29uc3VtZWRTYW5kYm94RXh0ZW5z
aW9ucyhib29sKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLm1tIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIubW0KaW5kZXgg
MmIyMzkzODZkZjZmMjNiMGYyYWJjYzYxZTljNzIxNWM1YWE5ZDI1NS4uYWQ5MzhlNjYwZWFkNTk2
ZmRiZGY5NDk1ZTNiMzE4Njc4MTg3MTJlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIubW0KKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIubW0K
QEAgLTM4LDkgKzM4LDYgQEAKICNpbXBvcnQgPHd0Zi9VUkwuaD4KICNpbXBvcnQgPHd0Zi90aHJl
YWRzL0JpbmFyeVNlbWFwaG9yZS5oPgogCi1TT0ZUX0xJTktfRlJBTUVXT1JLX09QVElPTkFMKE5l
dHdvcmtFeHRlbnNpb24pOwotU09GVF9MSU5LX0NMQVNTX09QVElPTkFMKE5ldHdvcmtFeHRlbnNp
b24sIE5FRmlsdGVyU291cmNlKTsKLQogc3RhdGljIGlubGluZSBOU0RhdGEgKnJlcGxhY2VtZW50
RGF0YUZyb21EZWNpc2lvbkluZm8oTlNEaWN0aW9uYXJ5ICpkZWNpc2lvbkluZm8pCiB7CiAgICAg
QVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04oIWRlY2lzaW9uSW5mbyB8fCBbZGVjaXNp
b25JbmZvIGlzS2luZE9mQ2xhc3M6W05TRGljdGlvbmFyeSBjbGFzc11dKTsKQEAgLTYyLDcgKzU5
LDcgQEAgYm9vbCBOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlcjo6ZW5hYmxlZCgpCiAgICAg
ICAgIGVuYWJsZWQgPSBmYWxzZTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBTYW5kYm94RXh0
ZW5zaW9uc1N0YXRlOjpOb3RTZXQ6Ci0gICAgICAgIGVuYWJsZWQgPSBbZ2V0TkVGaWx0ZXJTb3Vy
Y2VDbGFzcygpIGZpbHRlclJlcXVpcmVkXTsKKyAgICAgICAgZW5hYmxlZCA9IGZpbHRlclNvdXJj
ZVJlcXVpcmVzRmlsdGVyKCk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KICAgICBMT0coQ29udGVu
dEZpbHRlcmluZywgIk5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyIGlzICVzLlxuIiwgZW5h
YmxlZCA/ICJlbmFibGVkIiA6ICJub3QgZW5hYmxlZCIpOwpAQCAtODAsNyArNzcsNyBAQCB2b2lk
IE5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjppbml0aWFsaXplKGNvbnN0IFVSTCogdXJs
KQogICAgIEFTU0VSVCghbV9uZUZpbHRlclNvdXJjZSk7CiAgICAgbV9xdWV1ZSA9IGFkb3B0T1NP
YmplY3QoZGlzcGF0Y2hfcXVldWVfY3JlYXRlKCJXZWJLaXQgTmV0d29ya0V4dGVuc2lvbiBGaWx0
ZXJpbmciLCBESVNQQVRDSF9RVUVVRV9TRVJJQUwpKTsKICAgICBBU1NFUlRfVU5VU0VEKHVybCwg
IXVybCk7Ci0gICAgbV9uZUZpbHRlclNvdXJjZSA9IGFkb3B0TlMoW2FsbG9jTkVGaWx0ZXJTb3Vy
Y2VJbnN0YW5jZSgpIGluaXRXaXRoRGVjaXNpb25RdWV1ZTptX3F1ZXVlLmdldCgpXSk7CisgICAg
bV9uZUZpbHRlclNvdXJjZSA9IGFkb3B0TlMoW1tORUZpbHRlclNvdXJjZSBhbGxvY10gaW5pdFdp
dGhEZWNpc2lvblF1ZXVlOm1fcXVldWUuZ2V0KCldKTsKICAgICBbbV9uZUZpbHRlclNvdXJjZSBz
ZXRTb3VyY2VBcHBJZGVudGlmaWVyOmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpXTsKICAg
ICBbbV9uZUZpbHRlclNvdXJjZSBzZXRTb3VyY2VBcHBQaWQ6cHJlc2VudGluZ0FwcGxpY2F0aW9u
UElEKCldOwogfQpAQCAtMjI2LDYgKzIyMywxMSBAQCB2b2lkIE5ldHdvcmtFeHRlbnNpb25Db250
ZW50RmlsdGVyOjpoYW5kbGVEZWNpc2lvbihORUZpbHRlclNvdXJjZVN0YXR1cyBzdGF0dXMsCiAj
ZW5kaWYKIH0KIAorYm9vbCBOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlcjo6ZmlsdGVyU291
cmNlUmVxdWlyZXNGaWx0ZXIoKQoreworICAgIHJldHVybiBbTkVGaWx0ZXJTb3VyY2UgZmlsdGVy
UmVxdWlyZWRdOworfQorCiB2b2lkIE5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjpzZXRI
YXNDb25zdW1lZFNhbmRib3hFeHRlbnNpb25zKGJvb2wgaGFzQ29uc3VtZWRTYW5kYm94RXh0ZW5z
aW9ucykKIHsKICAgICBpZiAobV9zYW5kYm94RXh0ZW5zaW9uc1N0YXRlID09IFNhbmRib3hFeHRl
bnNpb25zU3RhdGU6OkNvbnN1bWVkKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9D
b2NvYS9XZWJQYWdlUHJveHlDb2NvYS5tbQppbmRleCAxYjk4Y2MwZGUzOGRmMDljNmNlMDk3NzM5
ZWEyMmM5OTc0NzQ0YmI2Li4zMDlkMjNmMzQ5MmNjZjY1N2M3YWE3NWQ4N2ZlMWI3ODczMjU4ZTVi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlD
b2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlD
b2NvYS5tbQpAQCAtNDYsMTIgKzQ2LDEyIEBACiAjaW1wb3J0IDxXZWJDb3JlL0RyYWdJdGVtLmg+
CiAjaW1wb3J0IDxXZWJDb3JlL0dlb21ldHJ5VXRpbGl0aWVzLmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L0xvY2FsQ3VycmVudEdyYXBoaWNzQ29udGV4dC5oPgorI2ltcG9ydCA8V2ViQ29yZS9OZXR3b3Jr
RXh0ZW5zaW9uQ29udGVudEZpbHRlci5oPgogI2ltcG9ydCA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRl
ZC5oPgogI2ltcG9ydCA8V2ViQ29yZS9SdW5Mb29wT2JzZXJ2ZXIuaD4KICNpbXBvcnQgPFdlYkNv
cmUvU2VhcmNoUG9wdXBNZW51Q29jb2EuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEFsdGVybmF0
aXZlV2l0aFJhbmdlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1ZhbGlkYXRpb25CdWJibGUuaD4KLSNp
bXBvcnQgPHBhbC9zcGkvY29jb2EvTkVGaWx0ZXJTb3VyY2VTUEkuaD4KICNpbXBvcnQgPHBhbC9z
cGkvY29jb2EvUXVhcnR6Q29yZVNQSS5oPgogI2ltcG9ydCA8d3RmL0Jsb2NrUHRyLmg+CiAjaW1w
b3J0IDx3dGYvU29mdExpbmtpbmcuaD4KQEAgLTc0LDkgKzc0LDYgQEAgU09GVF9MSU5LX1BSSVZB
VEVfRlJBTUVXT1JLKFdlYkNvbnRlbnRBbmFseXNpcyk7CiBTT0ZUX0xJTktfQ0xBU1MoV2ViQ29u
dGVudEFuYWx5c2lzLCBXZWJGaWx0ZXJFdmFsdWF0b3IpOwogI2VuZGlmCiAKLVNPRlRfTElOS19G
UkFNRVdPUktfT1BUSU9OQUwoTmV0d29ya0V4dGVuc2lvbik7Ci1TT0ZUX0xJTktfQ0xBU1NfT1BU
SU9OQUwoTmV0d29ya0V4dGVuc2lvbiwgTkVGaWx0ZXJTb3VyY2UpOwotCiAjZGVmaW5lIE1FU1NB
R0VfQ0hFQ0soYXNzZXJ0aW9uKSBNRVNTQUdFX0NIRUNLX0JBU0UoYXNzZXJ0aW9uLCBwcm9jZXNz
KCkuY29ubmVjdGlvbigpKQogI2RlZmluZSBNRVNTQUdFX0NIRUNLX0NPTVBMRVRJT04oYXNzZXJ0
aW9uLCBjb21wbGV0aW9uKSBNRVNTQUdFX0NIRUNLX0NPTVBMRVRJT05fQkFTRShhc3NlcnRpb24s
IHByb2Nlc3MoKS5jb25uZWN0aW9uKCksIGNvbXBsZXRpb24pCiAKQEAgLTE1Niw3ICsxNTMsNyBA
QCB2b2lkIFdlYlBhZ2VQcm94eTo6YWRkUGxhdGZvcm1Mb2FkUGFyYW1ldGVycyhXZWJQcm9jZXNz
UHJveHkmIHByb2Nlc3MsIExvYWRQYXJhbQogewogICAgIGxvYWRQYXJhbWV0ZXJzLmRhdGFEZXRl
Y3Rpb25Db250ZXh0ID0gbV91aUNsaWVudC0+ZGF0YURldGVjdGlvbkNvbnRleHQoKTsKIAotICAg
IGlmICghcHJvY2Vzcy5oYXNOZXR3b3JrRXh0ZW5zaW9uU2FuZGJveEFjY2VzcygpICYmIFtnZXRO
RUZpbHRlclNvdXJjZUNsYXNzKCkgZmlsdGVyUmVxdWlyZWRdKSB7CisgICAgaWYgKCFwcm9jZXNz
Lmhhc05ldHdvcmtFeHRlbnNpb25TYW5kYm94QWNjZXNzKCkgJiYgTmV0d29ya0V4dGVuc2lvbkNv
bnRlbnRGaWx0ZXI6OmZpbHRlclNvdXJjZVJlcXVpcmVzRmlsdGVyKCkpIHsKICAgICAgICAgU2Fu
ZGJveEV4dGVuc2lvbjo6SGFuZGxlIGhlbHBlckhhbmRsZTsKICAgICAgICAgU2FuZGJveEV4dGVu
c2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cCgiY29tLmFwcGxlLm5laGVscGVyIl9zLCBX
VEY6Om51bGxvcHQsIGhlbHBlckhhbmRsZSk7CiAgICAgICAgIGxvYWRQYXJhbWV0ZXJzLm5lSGVs
cGVyRXh0ZW5zaW9uSGFuZGxlID0gV1RGTW92ZShoZWxwZXJIYW5kbGUpOwpkaWZmIC0tZ2l0IGEv
VG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGM0NGQ5ZThkZTUyMmNkNjk1
OGM2NDQ4ODVhOTdlYjFlODkyNDI5ZWEuLjE2OTdmNDE1YTk5OWJhYTk0MmU1NGI2N2RjZWIwODUx
MTIwMTdiOWIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0xMC0yOCAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRo
aUBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBSZW1vdmUgc29mdCBsaW5raW5nIG9mIE5l
dHdvcmtFeHRlbnNpb24uZnJhbWV3b3JrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTgzMTQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzcwNzg1MjM5
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0
ZWQgYSB0ZXN0IHRvIHJlZmxlY3QgdGhhdCBOZXR3b3JrRXh0ZW5zaW9uLmZyYW1ld29yayBpcyBu
byBsb25nZXIKKyAgICAgICAgbG9hZGVkIGF0IHJ1bnRpbWUuIFRoaXMgdGVzdCB3YXMgZmFpbGlu
ZyBvbiBDYXRhbGluYSBhZnRlciByMjY5MTA5LAorICAgICAgICBhcyB0aGUgQ29udGFjdHMgZnJh
bWV3b3JrIHdhcyBsb2FkaW5nIE5ldHdvcmtFeHRlbnNpb24uCisKKyAgICAgICAgKiBUZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmcuaDoKKyAgICAgICAgKiBU
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmcubW06CisgICAg
ICAgICgtW0xhemlseUxvYWRQbGF0Zm9ybUZyYW1ld29ya3NDb250cm9sbGVyIGV4cGVjdFBhcmVu
dGFsQ29udHJvbHNMb2FkZWQ6XSk6CisgICAgICAgIChURVNUKToKKyAgICAgICAgKiBUZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmdQbHVnSW4ubW06CisgICAg
ICAgICgtW0NvbnRlbnRGaWx0ZXJpbmdQbHVnSW4gY2hlY2tJZlBsYXRmb3JtRnJhbWV3b3Jrc0Fy
ZUxvYWRlZDpdKToKKwogMjAyMC0xMC0yNiAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBs
ZS5jb20+CiAKICAgICAgICAgW0NvbnRhY3QgUGlja2VyIEFQSV0gQWRkIHN1cHBvcnQgZm9yIHBp
Y2tlciBVSSBvbiBpT1MKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Q29jb2EvQ29udGVudEZpbHRlcmluZy5oIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRDb2NvYS9Db250ZW50RmlsdGVyaW5nLmgKaW5kZXggOWQ1YjVkNDMzNjVkOWFmYjM5OTc3
MDBhNzE5OGY2NTk5ZjM3ZDkwZi4uMGY4ZWUyYTgzYTY0NDcxOTZjNjA1ZDIwYzM5NmY3MDM2OWNi
Njg3MCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9D
b250ZW50RmlsdGVyaW5nLmgKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRD
b2NvYS9Db250ZW50RmlsdGVyaW5nLmgKQEAgLTI0LDUgKzI0LDUgQEAKICAqLwogCiBAcHJvdG9j
b2wgQ29udGVudEZpbHRlcmluZ1Byb3RvY29sIDxOU09iamVjdD4KLS0gKHZvaWQpY2hlY2tJZlBs
YXRmb3JtRnJhbWV3b3Jrc0FyZUxvYWRlZDoodm9pZCAoXikoQk9PTCBwYXJlbnRhbENvbnRyb2xz
TG9hZGVkLCBCT09MIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQpKWNvbXBsZXRpb25IYW5kbGVyOwor
LSAodm9pZCljaGVja0lmUGxhdGZvcm1GcmFtZXdvcmtzQXJlTG9hZGVkOih2b2lkICheKShCT09M
IHBhcmVudGFsQ29udHJvbHNMb2FkZWQpKWNvbXBsZXRpb25IYW5kbGVyOwogQGVuZApkaWZmIC0t
Z2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Db250ZW50RmlsdGVy
aW5nLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Db250ZW50Rmls
dGVyaW5nLm1tCmluZGV4IDg1NmJkZTRiMWU5M2EyMDExMjQyOGM4MjQ1M2I2ZWY3MTE1NDdkOWYu
LjQzMzkxMzExMDFmMmNkZDk1MDk4NjdlZmU5NDRmNmU3N2VmMzllZGIgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvQ29udGVudEZpbHRlcmluZy5tbQor
KysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJp
bmcubW0KQEAgLTMzNiw3ICszMzYsNyBAQCBURVNUKENvbnRlbnRGaWx0ZXJpbmcsIExvYWRBbHRl
cm5hdGVBZnRlckZpbmlzaGVkQWRkaW5nRGF0YVdLMikKIAogQGludGVyZmFjZSBMYXppbHlMb2Fk
UGxhdGZvcm1GcmFtZXdvcmtzQ29udHJvbGxlciA6IE5TT2JqZWN0IDxXS05hdmlnYXRpb25EZWxl
Z2F0ZT4KIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgV0tXZWJWaWV3ICp3ZWJWaWV3
OwotLSAodm9pZClleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOihCT09MKXBhcmVudGFsQ29u
dHJvbHNTaG91bGRCZUxvYWRlZCBuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkOihCT09MKW5ldHdvcmtF
eHRlbnNpb25TaG91bGRCZUxvYWRlZDsKKy0gKHZvaWQpZXhwZWN0UGFyZW50YWxDb250cm9sc0xv
YWRlZDooQk9PTClwYXJlbnRhbENvbnRyb2xzU2hvdWxkQmVMb2FkZWQ7CiBAZW5kCiAKIEBpbXBs
ZW1lbnRhdGlvbiBMYXppbHlMb2FkUGxhdGZvcm1GcmFtZXdvcmtzQ29udHJvbGxlciB7CkBAIC0z
NjQsMTQgKzM2NCwxMyBAQCAtIChXS1dlYlZpZXcgKil3ZWJWaWV3CiAgICAgcmV0dXJuIF93ZWJW
aWV3LmdldCgpOwogfQogCi0tICh2b2lkKWV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6KEJP
T0wpcGFyZW50YWxDb250cm9sc1Nob3VsZEJlTG9hZGVkIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQ6
KEJPT0wpbmV0d29ya0V4dGVuc2lvblNob3VsZEJlTG9hZGVkCistICh2b2lkKWV4cGVjdFBhcmVu
dGFsQ29udHJvbHNMb2FkZWQ6KEJPT0wpcGFyZW50YWxDb250cm9sc1Nob3VsZEJlTG9hZGVkCiB7
CiAgICAgaXNEb25lID0gZmFsc2U7Ci0gICAgW19yZW1vdGVPYmplY3RQcm94eSBjaGVja0lmUGxh
dGZvcm1GcmFtZXdvcmtzQXJlTG9hZGVkOl4oQk9PTCBwYXJlbnRhbENvbnRyb2xzTG9hZGVkLCBC
T09MIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQpIHsKKyAgICBbX3JlbW90ZU9iamVjdFByb3h5IGNo
ZWNrSWZQbGF0Zm9ybUZyYW1ld29ya3NBcmVMb2FkZWQ6XihCT09MIHBhcmVudGFsQ29udHJvbHNM
b2FkZWQpIHsKICNpZiBIQVZFKFBBUkVOVEFMX0NPTlRST0xTKQogICAgICAgICBFWFBFQ1RfRVEo
c3RhdGljX2Nhc3Q8Ym9vbD4ocGFyZW50YWxDb250cm9sc1Nob3VsZEJlTG9hZGVkKSwgc3RhdGlj
X2Nhc3Q8Ym9vbD4ocGFyZW50YWxDb250cm9sc0xvYWRlZCkpOwogI2VuZGlmCi0gICAgICAgIEVY
UEVDVF9FUShzdGF0aWNfY2FzdDxib29sPihuZXR3b3JrRXh0ZW5zaW9uU2hvdWxkQmVMb2FkZWQp
LCBzdGF0aWNfY2FzdDxib29sPihuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkKSk7CiAgICAgICAgIGlz
RG9uZSA9IHRydWU7CiAgICAgfV07CiAgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZpc0Rv
bmUpOwpAQCAtNDA2LDI5ICs0MDUsMjkgQEAgVEVTVChDb250ZW50RmlsdGVyaW5nLCBMYXppbHlM
b2FkUGxhdGZvcm1GcmFtZXdvcmtzKQogCiAgICAgQGF1dG9yZWxlYXNlcG9vbCB7CiAgICAgICAg
IGF1dG8gY29udHJvbGxlciA9IGFkb3B0TlMoW1tMYXppbHlMb2FkUGxhdGZvcm1GcmFtZXdvcmtz
Q29udHJvbGxlciBhbGxvY10gaW5pdF0pOwotICAgICAgICBbY29udHJvbGxlciBleHBlY3RQYXJl
bnRhbENvbnRyb2xzTG9hZGVkOk5PIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQ6Tk9dOworICAgICAg
ICBbY29udHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOk5PXTsKIAogICAgICAg
ICBpc0RvbmUgPSBmYWxzZTsKICAgICAgICAgW1tjb250cm9sbGVyIHdlYlZpZXddIGxvYWRIVE1M
U3RyaW5nOkAiUEFTUyIgYmFzZVVSTDpbTlNVUkwgVVJMV2l0aFN0cmluZzpAImFib3V0OmJsYW5r
Il1dOwogICAgICAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmlzRG9uZSk7Ci0gICAgICAg
IFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6Tk8gbmV0d29ya0V4dGVu
c2lvbkxvYWRlZDpOT107CisgICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJv
bHNMb2FkZWQ6Tk9dOwogCiAgICAgICAgIGlzRG9uZSA9IGZhbHNlOwogICAgICAgICBbW2NvbnRy
b2xsZXIgd2ViVmlld10gbG9hZERhdGE6W05TRGF0YSBkYXRhV2l0aEJ5dGVzOiJQQVNTIiBsZW5n
dGg6NF0gTUlNRVR5cGU6QCJ0ZXh0L2h0bWwiIGNoYXJhY3RlckVuY29kaW5nTmFtZTpAIlVURi04
IiBiYXNlVVJMOltOU1VSTCBVUkxXaXRoU3RyaW5nOkAiYWJvdXQ6YmxhbmsiXV07CiAgICAgICAg
IFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmaXNEb25lKTsKLSAgICAgICAgW2NvbnRyb2xsZXIg
ZXhwZWN0UGFyZW50YWxDb250cm9sc0xvYWRlZDpOTyBuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkOk5P
XTsKKyAgICAgICAgW2NvbnRyb2xsZXIgZXhwZWN0UGFyZW50YWxDb250cm9sc0xvYWRlZDpOT107
CiAKICAgICAgICAgaXNEb25lID0gZmFsc2U7CiAgICAgICAgIE5TVVJMICpmaWxlVVJMID0gW1tO
U0J1bmRsZSBtYWluQnVuZGxlXSBVUkxGb3JSZXNvdXJjZTpAIkNvbnRlbnRGaWx0ZXJpbmciIHdp
dGhFeHRlbnNpb246QCJodG1sIiBzdWJkaXJlY3Rvcnk6QCJUZXN0V2ViS2l0QVBJLnJlc291cmNl
cyJdOwogICAgICAgICBbW2NvbnRyb2xsZXIgd2ViVmlld10gbG9hZEZpbGVVUkw6ZmlsZVVSTCBh
bGxvd2luZ1JlYWRBY2Nlc3NUb1VSTDpmaWxlVVJMXTsKICAgICAgICAgVGVzdFdlYktpdEFQSTo6
VXRpbDo6cnVuKCZpc0RvbmUpOwotICAgICAgICBbY29udHJvbGxlciBleHBlY3RQYXJlbnRhbENv
bnRyb2xzTG9hZGVkOk5PIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQ6Tk9dOworICAgICAgICBbY29u
dHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOk5PXTsKIAogICAgICAgICBpc0Rv
bmUgPSBmYWxzZTsKICAgICAgICAgW1Rlc3RQcm90b2NvbCByZWdpc3RlcldpdGhTY2hlbWU6QCJj
dXN0b20iXTsKICAgICAgICAgW1tjb250cm9sbGVyIHdlYlZpZXddIGxvYWRSZXF1ZXN0OltOU1VS
TFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6W05TVVJMIFVSTFdpdGhTdHJpbmc6QCJjdXN0b206Ly90
ZXN0Il1dXTsKICAgICAgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZpc0RvbmUpOwotICAg
ICAgICBbY29udHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOk5PIG5ldHdvcmtF
eHRlbnNpb25Mb2FkZWQ6Tk9dOworICAgICAgICBbY29udHJvbGxlciBleHBlY3RQYXJlbnRhbENv
bnRyb2xzTG9hZGVkOk5PXTsKICAgICAgICAgW1Rlc3RQcm90b2NvbCB1bnJlZ2lzdGVyXTsKIAog
ICAgICAgICBpc0RvbmUgPSBmYWxzZTsKQEAgLTQzNiw5ICs0MzUsOSBAQCBURVNUKENvbnRlbnRG
aWx0ZXJpbmcsIExhemlseUxvYWRQbGF0Zm9ybUZyYW1ld29ya3MpCiAgICAgICAgIFtbY29udHJv
bGxlciB3ZWJWaWV3XSBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOltO
U1VSTCBVUkxXaXRoU3RyaW5nOkAiaHR0cDovL3Rlc3QiXV1dOwogICAgICAgICBUZXN0V2ViS2l0
QVBJOjpVdGlsOjpydW4oJmlzRG9uZSk7CiAjaWYgUExBVEZPUk0oTUFDKQotICAgICAgICBbY29u
dHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOk5PIG5ldHdvcmtFeHRlbnNpb25M
b2FkZWQ6WUVTXTsKKyAgICAgICAgW2NvbnRyb2xsZXIgZXhwZWN0UGFyZW50YWxDb250cm9sc0xv
YWRlZDpOT107CiAjZWxzZQotICAgICAgICBbY29udHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRy
b2xzTG9hZGVkOllFUyBuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkOllFU107CisgICAgICAgIFtjb250
cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6WUVTXTsKICNlbmRpZgogICAgICAg
ICBbVGVzdFByb3RvY29sIHVucmVnaXN0ZXJdOwogCkBAIC00NDcsNyArNDQ2LDcgQEAgVEVTVChD
b250ZW50RmlsdGVyaW5nLCBMYXppbHlMb2FkUGxhdGZvcm1GcmFtZXdvcmtzKQogICAgICAgICBb
VGVzdFByb3RvY29sIHJlZ2lzdGVyV2l0aFNjaGVtZTpAImh0dHBzIl07CiAgICAgICAgIFtbY29u
dHJvbGxlciB3ZWJWaWV3XSBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJM
OltOU1VSTCBVUkxXaXRoU3RyaW5nOkAiaHR0cHM6Ly90ZXN0Il1dXTsKICAgICAgICAgVGVzdFdl
YktpdEFQSTo6VXRpbDo6cnVuKCZpc0RvbmUpOwotICAgICAgICBbY29udHJvbGxlciBleHBlY3RQ
YXJlbnRhbENvbnRyb2xzTG9hZGVkOllFUyBuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkOllFU107Cisg
ICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6WUVTXTsKICAg
ICAgICAgW1Rlc3RQcm90b2NvbCB1bnJlZ2lzdGVyXTsKICNlbmRpZgogICAgIH0KZGlmZiAtLWdp
dCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvQ29udGVudEZpbHRlcmlu
Z1BsdWdJbi5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvQ29udGVu
dEZpbHRlcmluZ1BsdWdJbi5tbQppbmRleCAzNjUzNDEzMDMxM2M0MjMzNTgzZjM2NDQ4YTU3N2Jj
MjA5YmY5OTA3Li41ZGZmODI3NGNmZDBhNmE2YWVhZmQzMTljYTMyODNiZWM4ZGI2NGZjIDEwMDY0
NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0
ZXJpbmdQbHVnSW4ubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2Nv
YS9Db250ZW50RmlsdGVyaW5nUGx1Z0luLm1tCkBAIC0xMTMsMTUgKzExMywxNCBAQCAtICh2b2lk
KW9ic2VydmVWYWx1ZUZvcktleVBhdGg6KE5TU3RyaW5nICopa2V5UGF0aCBvZk9iamVjdDooaWQp
b2JqZWN0IGNoYW5nZTooTgogICAgIF9jb250ZW50RmlsdGVyRW5hYmxlciA9IGNvbnRlbnRGaWx0
ZXJFbmFibGVyOwogfQogCi0tICh2b2lkKWNoZWNrSWZQbGF0Zm9ybUZyYW1ld29ya3NBcmVMb2Fk
ZWQ6KHZvaWQgKF4pKEJPT0wgcGFyZW50YWxDb250cm9sc0xvYWRlZCwgQk9PTCBuZXR3b3JrRXh0
ZW5zaW9uTG9hZGVkKSljb21wbGV0aW9uSGFuZGxlcgorLSAodm9pZCljaGVja0lmUGxhdGZvcm1G
cmFtZXdvcmtzQXJlTG9hZGVkOih2b2lkICheKShCT09MIHBhcmVudGFsQ29udHJvbHNMb2FkZWQp
KWNvbXBsZXRpb25IYW5kbGVyCiB7CiAgICAgYm9vbCBwYXJlbnRhbENvbnRyb2xzTG9hZGVkID0g
ZmFsc2U7CiAjaWYgSEFWRShQQVJFTlRBTF9DT05UUk9MUykKICAgICBwYXJlbnRhbENvbnRyb2xz
TG9hZGVkID0gTlNWZXJzaW9uT2ZSdW5UaW1lTGlicmFyeSgiV2ViQ29udGVudEFuYWx5c2lzIikg
IT0gLTE7CiAjZW5kaWYKIAotICAgIGJvb2wgbmV0d29ya0V4dGVuc2lvbkxvYWRlZCA9IG5ldHdv
cmtFeHRlbnNpb25Mb2FkZWQgPSBOU1ZlcnNpb25PZlJ1blRpbWVMaWJyYXJ5KCJOZXR3b3JrRXh0
ZW5zaW9uIikgIT0gLTE7Ci0gICAgY29tcGxldGlvbkhhbmRsZXIocGFyZW50YWxDb250cm9sc0xv
YWRlZCwgbmV0d29ya0V4dGVuc2lvbkxvYWRlZCk7CisgICAgY29tcGxldGlvbkhhbmRsZXIocGFy
ZW50YWxDb250cm9sc0xvYWRlZCk7CiB9CiAKIEBlbmQK
</data>
<flag name="commit-queue"
          id="429083"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412607</attachid>
            <date>2020-10-28 19:38:56 -0700</date>
            <delta_ts>2020-10-29 09:06:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218314-20201028223855.patch</filename>
            <type>text/plain</type>
            <size>18216</size>
            <attacher name="Aditya Keerthi">akeerthi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4OTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjZkOTQyNjhjYmE2OTVk
NDljMTI2Y2QyNjYwZjE1NTc5NjQ1ODZjMi4uN2Y4YzFkZDNmZDk4MjQ5NDZiNzBiNjc2ZTIwNzM2
YjlmZDJhYjQwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIwLTEwLTI4ICBBZGl0
eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAgICBbQ29jb2FdIFJlbW92
ZSBzb2Z0IGxpbmtpbmcgb2YgTmV0d29ya0V4dGVuc2lvbi5mcmFtZXdvcmsKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODMxNAorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vNzA3ODUyMzk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgV2ViQ29yZSBzaG91bGQgbGluayBOZXR3b3JrRXh0ZW5zaW9uLmZyYW1l
d29yayBub3JtYWxseSwgdG8gYXZvaWQgdGhlCisgICAgICAgIHJ1bnRpbWUgY29zdCBhc3NvY2lh
dGVkIHdpdGggc29mdCBsaW5raW5nLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvV2ViQ29y
ZS54Y2NvbmZpZzoKKworICAgICAgICBPbiBtYWNPUywgd2VhayBsaW5rIHRoZSBmcmFtZXdvcmsg
c2luY2UgTmV0d29ya0V4dGVuc2lvbi5mcmFtZXdvcmsgaXMKKyAgICAgICAgbm90IGF2YWlsYWJs
ZSBvbiB0aGUgQmFzZSBTeXN0ZW0uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9OZXR3b3Jr
RXh0ZW5zaW9uQ29udGVudEZpbHRlci5oOgorCisgICAgICAgIEFkZGVkIHRoZSBmaWx0ZXJTb3Vy
Y2VSZXF1aXJlc0ZpbHRlciBzdGF0aWMgbWV0aG9kIHRvIGF2b2lkIHNvZnQKKyAgICAgICAgbGlu
a2luZyBOZXR3b3JrRXh0ZW5zaW9uLmZyYW1ld29yayBpbiBXZWJLaXQuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9jb2NvYS9OZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlci5tbToKKyAgICAgICAg
KFdlYkNvcmU6Ok5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjplbmFibGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6Ok5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjppbml0aWFsaXplKToK
KyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjpmaWx0ZXJT
b3VyY2VSZXF1aXJlc0ZpbHRlcik6CisKIDIwMjAtMTAtMjUgIFNpbW9uIEZyYXNlciAgPHNpbW9u
LmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQyBEaXNwbGF5XSBNb3ZlIGNvZGUgZm9y
IHBhaW50aW5nIGEgc2luZ2xlIERpc3BsYXk6OkJveCBpbnRvIGl0cyBvd24gY2xhc3MKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cK
aW5kZXggNmMyNGE1Y2M5OTUxZmM1ODZmZmRjMDg3NTQ4OWUwYmNiMzFhODc0My4uOWNhYWFmZTQ2
MDhhMjU2NGI5ODhjMmZkNDg1Mzg3ZDQzY2M1ODM5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBA
QAorMjAyMC0xMC0yOCAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CisKKyAg
ICAgICAgW0NvY29hXSBSZW1vdmUgc29mdCBsaW5raW5nIG9mIE5ldHdvcmtFeHRlbnNpb24uZnJh
bWV3b3JrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTgzMTQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzcwNzg1MjM5PgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYlBh
Z2VQcm94eUNvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmFkZFBsYXRm
b3JtTG9hZFBhcmFtZXRlcnMpOgorCisgICAgICAgIFJlcGxhY2VkIHRoZSBzb2Z0IGxpbmtlZCBt
ZXRob2QgY2FsbCB3aXRoIGEgbmV3IG1ldGhvZCBleHBvcnRlZCBmcm9tCisgICAgICAgIFdlYkNv
cmUuCisKIDIwMjAtMTAtMjYgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29tPgog
CiAgICAgICAgIFtDb250YWN0IFBpY2tlciBBUEldIEFkZCBzdXBwb3J0IGZvciBwaWNrZXIgVUkg
b24gaU9TCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3Jl
LnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZp
ZwppbmRleCA3N2NlNGM1ZWFjMzYyZWM2N2JkZmIyODkwNmJmYzhlM2EyY2UyMWZmLi5kYjQ1Nzdi
YjMyMjBhYzIxNGY5OTA1ZGI4MzNiZGZjYzY1OWZhNjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcKQEAgLTEwNSw2ICsxMDUsMTQgQEAgV0tf
TU9CSUxFX0NPUkVfU0VSVklDRVNfTERGTEFHU19jb2NvYXRvdWNoID0gLWZyYW1ld29yayBNb2Jp
bGVDb3JlU2VydmljZXM7CiBXS19NT0JJTEVfR0VTVEFMVF9MREZMQUdTID0gJChXS19NT0JJTEVf
R0VTVEFMVF9MREZMQUdTXyQoV0tfQ09DT0FfVE9VQ0gpKTsKIFdLX01PQklMRV9HRVNUQUxUX0xE
RkxBR1NfY29jb2F0b3VjaCA9IC1sTW9iaWxlR2VzdGFsdDsKIAorV0tfTkVUV09SS19FWFRFTlNJ
T05fTERfRkxBR1MgPSAkKFdLX05FVFdPUktfRVhURU5TSU9OX0xEX0ZMQUdTXyQoV0tfUExBVEZP
Uk1fTkFNRSkpOworV0tfTkVUV09SS19FWFRFTlNJT05fTERfRkxBR1NfaXBob25lb3MgPSAtZnJh
bWV3b3JrIE5ldHdvcmtFeHRlbnNpb247CitXS19ORVRXT1JLX0VYVEVOU0lPTl9MRF9GTEFHU19p
cGhvbmVzaW11bGF0b3IgPSAtZnJhbWV3b3JrIE5ldHdvcmtFeHRlbnNpb247CitXS19ORVRXT1JL
X0VYVEVOU0lPTl9MRF9GTEFHU193YXRjaG9zID0gLWZyYW1ld29yayBOZXR3b3JrRXh0ZW5zaW9u
OworV0tfTkVUV09SS19FWFRFTlNJT05fTERfRkxBR1Nfd2F0Y2hzaW11bGF0b3IgPSAtZnJhbWV3
b3JrIE5ldHdvcmtFeHRlbnNpb247CitXS19ORVRXT1JLX0VYVEVOU0lPTl9MRF9GTEFHU19tYWNj
YXRhbHlzdCA9IC1mcmFtZXdvcmsgTmV0d29ya0V4dGVuc2lvbjsKK1dLX05FVFdPUktfRVhURU5T
SU9OX0xEX0ZMQUdTX21hY29zeCA9IC13ZWFrX2ZyYW1ld29yayBOZXR3b3JrRXh0ZW5zaW9uOwor
CiBXS19TWVNURU1fQ09ORklHVVJBVElPTl9MREZMQUdTID0gJChXS19TWVNURU1fQ09ORklHVVJB
VElPTl9MREZMQUdTXyQoV0tfUExBVEZPUk1fTkFNRSkpOwogV0tfU1lTVEVNX0NPTkZJR1VSQVRJ
T05fTERGTEFHU19tYWNvc3ggPSAtZnJhbWV3b3JrIFN5c3RlbUNvbmZpZ3VyYXRpb247CiAKQEAg
LTExNCw3ICsxMjIsNyBAQCBXS19VUkxfRk9STUFUVElOR19MREZMQUdTID0gJChXS19VUkxfRk9S
TUFUVElOR19MREZMQUdTXyQoV0tfSEFWRV9VUkxfRk9STUFUVElORwogV0tfVVJMX0ZPUk1BVFRJ
TkdfTERGTEFHU19ZRVMgPSAtZnJhbWV3b3JrIFVSTEZvcm1hdHRpbmc7CiAKIC8vIEZJWE1FOiBS
ZWR1Y2UgdGhlIG51bWJlciBvZiBhbGxvd2FibGVfY2xpZW50cyA8cmRhcjovL3Byb2JsZW0vMzE4
MjM5Njk+Ci1PVEhFUl9MREZMQUdTID0gJChpbmhlcml0ZWQpICQoV0tfUkVMT0NBVEFCTEVfRlJB
TUVXT1JLX0xERkxBR1MpIC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtYWxsb3dhYmxlX2NsaWVu
dCBXZWJDb3JlVGVzdFN1cHBvcnQgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0TGVnYWN5IC1mb3Jj
ZV9sb2FkICQoQlVJTFRfUFJPRFVDVFNfRElSKS9saWJQQUwuYSAtZnJhbWV3b3JrIENGTmV0d29y
ayAtZnJhbWV3b3JrIENvcmVBdWRpbyAtZnJhbWV3b3JrIENvcmVHcmFwaGljcyAtZnJhbWV3b3Jr
IENvcmVUZXh0IC1mcmFtZXdvcmsgRm91bmRhdGlvbiAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJh
bWV3b3JrIEltYWdlSU8gLWZyYW1ld29yayBNZXRhbCAkKE9USEVSX0xERkxBR1NfUExBVEZPUk1f
JChXS19DT0NPQV9UT1VDSCkpICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8kKFdLX1BMQVRGT1JN
X05BTUUpKSAkKFdLX0FQUEtJVF9MREZMQUdTKSAkKFdLX0FQUFNVUFBPUlRfTERGTEFHUykgJChX
S19BVURJT19VTklUX0xERkxBR1MpICQoV0tfQ0FSQk9OX0xERkxBR1MpICQoV0tfQ09SRV9VSV9M
REZMQUdTKSAkKFdLX0RBVEFfREVURUNUT1JTX0NPUkVfTERGTEFHUykgJChXS19HUkFQSElDU19T
RVJWSUNFU19MREZMQUdTKSAkKFdLX0lPU1VSRkFDRV9BQ0NFTEVSQVRPUl9MREZMQUdTKSAkKFdL
X0xJQldFQlJUQ19MREZMQUdTKSAkKFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxBR1MpICQo
V0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHUykgJChXS19TWVNURU1fQ09ORklHVVJBVElPTl9MREZM
QUdTKSAkKFdLX0NPUkVfSU1BR0VfTERGTEFHUykgJChXS19VUkxfRk9STUFUVElOR19MREZMQUdT
KTsKK09USEVSX0xERkxBR1MgPSAkKGluaGVyaXRlZCkgJChXS19SRUxPQ0FUQUJMRV9GUkFNRVdP
UktfTERGTEFHUykgLWxzcWxpdGUzIC1sb2JqYyAtbEFOR0xFIC1hbGxvd2FibGVfY2xpZW50IFdl
YkNvcmVUZXN0U3VwcG9ydCAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRMZWdhY3kgLWZvcmNlX2xv
YWQgJChCVUlMVF9QUk9EVUNUU19ESVIpL2xpYlBBTC5hIC1mcmFtZXdvcmsgQ0ZOZXR3b3JrIC1m
cmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgQ29y
ZVRleHQgLWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdv
cmsgSW1hZ2VJTyAtZnJhbWV3b3JrIE1ldGFsICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8kKFdL
X0NPQ09BX1RPVUNIKSkgJChPVEhFUl9MREZMQUdTX1BMQVRGT1JNXyQoV0tfUExBVEZPUk1fTkFN
RSkpICQoV0tfQVBQS0lUX0xERkxBR1MpICQoV0tfQVBQU1VQUE9SVF9MREZMQUdTKSAkKFdLX0FV
RElPX1VOSVRfTERGTEFHUykgJChXS19DQVJCT05fTERGTEFHUykgJChXS19DT1JFX1VJX0xERkxB
R1MpICQoV0tfREFUQV9ERVRFQ1RPUlNfQ09SRV9MREZMQUdTKSAkKFdLX0dSQVBISUNTX1NFUlZJ
Q0VTX0xERkxBR1MpICQoV0tfSU9TVVJGQUNFX0FDQ0VMRVJBVE9SX0xERkxBR1MpICQoV0tfTElC
V0VCUlRDX0xERkxBR1MpICQoV0tfTU9CSUxFX0NPUkVfU0VSVklDRVNfTERGTEFHUykgJChXS19N
T0JJTEVfR0VTVEFMVF9MREZMQUdTKSAkKFdLX05FVFdPUktfRVhURU5TSU9OX0xEX0ZMQUdTKSAk
KFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xERkxBR1MpICQoV0tfQ09SRV9JTUFHRV9MREZMQUdT
KSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1MpOwogCiBPVEhFUl9MREZMQUdTX1BMQVRGT1JN
X2NvY29hdG91Y2ggPSAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXQgLWFsbG93YWJsZV9jbGllbnQg
aVR1bmVzVSAtYWxsb3dhYmxlX2NsaWVudCBDYXNhYmxhbmNhIC1hbGxvd2FibGVfY2xpZW50IFJl
bW90ZSAtYWxsb3dhYmxlX2NsaWVudCBUVkJvb2tzIC1hbGxvd2FibGVfY2xpZW50IER1bXBSZW5k
ZXJUcmVlIC1hbGxvd2FibGVfY2xpZW50IFdlYktpdFRlc3RSdW5uZXIgLWFsbG93YWJsZV9jbGll
bnQgVGVzdFdlYktpdEFQSTsKIE9USEVSX0xERkxBR1NfUExBVEZPUk1fbWFjb3N4ID0gLXN1Yl9s
aWJyYXJ5IGxpYm9iamMgLXVtYnJlbGxhIFdlYktpdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9OZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlci5o
CmluZGV4IDA1MWE2YzJkZmRkYjhhNWFhZTkwMmU0MjEzYTI0MmY4MjdhNjExODMuLjM3ZGY5MTM5
YjA2OGYxOTU5NWZiYmJiNTEwNGQ0NWFlY2ZkNTNhYWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0
ZXIuaApAQCAtNTQsNiArNTQsNyBAQCBwdWJsaWM6CiAgICAgQ29udGVudEZpbHRlclVuYmxvY2tI
YW5kbGVyIHVuYmxvY2tIYW5kbGVyKCkgY29uc3Qgb3ZlcnJpZGU7CiAjZW5kaWYKIAorICAgIFdF
QkNPUkVfRVhQT1JUIHN0YXRpYyBib29sIGZpbHRlclNvdXJjZVJlcXVpcmVzRmlsdGVyKCk7CiAg
ICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIHZvaWQgc2V0SGFzQ29uc3VtZWRTYW5kYm94RXh0ZW5z
aW9ucyhib29sKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLm1tIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIubW0KaW5kZXgg
MmIyMzkzODZkZjZmMjNiMGYyYWJjYzYxZTljNzIxNWM1YWE5ZDI1NS4uYWQ5MzhlNjYwZWFkNTk2
ZmRiZGY5NDk1ZTNiMzE4Njc4MTg3MTJlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIubW0KKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIubW0K
QEAgLTM4LDkgKzM4LDYgQEAKICNpbXBvcnQgPHd0Zi9VUkwuaD4KICNpbXBvcnQgPHd0Zi90aHJl
YWRzL0JpbmFyeVNlbWFwaG9yZS5oPgogCi1TT0ZUX0xJTktfRlJBTUVXT1JLX09QVElPTkFMKE5l
dHdvcmtFeHRlbnNpb24pOwotU09GVF9MSU5LX0NMQVNTX09QVElPTkFMKE5ldHdvcmtFeHRlbnNp
b24sIE5FRmlsdGVyU291cmNlKTsKLQogc3RhdGljIGlubGluZSBOU0RhdGEgKnJlcGxhY2VtZW50
RGF0YUZyb21EZWNpc2lvbkluZm8oTlNEaWN0aW9uYXJ5ICpkZWNpc2lvbkluZm8pCiB7CiAgICAg
QVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04oIWRlY2lzaW9uSW5mbyB8fCBbZGVjaXNp
b25JbmZvIGlzS2luZE9mQ2xhc3M6W05TRGljdGlvbmFyeSBjbGFzc11dKTsKQEAgLTYyLDcgKzU5
LDcgQEAgYm9vbCBOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlcjo6ZW5hYmxlZCgpCiAgICAg
ICAgIGVuYWJsZWQgPSBmYWxzZTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBTYW5kYm94RXh0
ZW5zaW9uc1N0YXRlOjpOb3RTZXQ6Ci0gICAgICAgIGVuYWJsZWQgPSBbZ2V0TkVGaWx0ZXJTb3Vy
Y2VDbGFzcygpIGZpbHRlclJlcXVpcmVkXTsKKyAgICAgICAgZW5hYmxlZCA9IGZpbHRlclNvdXJj
ZVJlcXVpcmVzRmlsdGVyKCk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KICAgICBMT0coQ29udGVu
dEZpbHRlcmluZywgIk5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyIGlzICVzLlxuIiwgZW5h
YmxlZCA/ICJlbmFibGVkIiA6ICJub3QgZW5hYmxlZCIpOwpAQCAtODAsNyArNzcsNyBAQCB2b2lk
IE5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjppbml0aWFsaXplKGNvbnN0IFVSTCogdXJs
KQogICAgIEFTU0VSVCghbV9uZUZpbHRlclNvdXJjZSk7CiAgICAgbV9xdWV1ZSA9IGFkb3B0T1NP
YmplY3QoZGlzcGF0Y2hfcXVldWVfY3JlYXRlKCJXZWJLaXQgTmV0d29ya0V4dGVuc2lvbiBGaWx0
ZXJpbmciLCBESVNQQVRDSF9RVUVVRV9TRVJJQUwpKTsKICAgICBBU1NFUlRfVU5VU0VEKHVybCwg
IXVybCk7Ci0gICAgbV9uZUZpbHRlclNvdXJjZSA9IGFkb3B0TlMoW2FsbG9jTkVGaWx0ZXJTb3Vy
Y2VJbnN0YW5jZSgpIGluaXRXaXRoRGVjaXNpb25RdWV1ZTptX3F1ZXVlLmdldCgpXSk7CisgICAg
bV9uZUZpbHRlclNvdXJjZSA9IGFkb3B0TlMoW1tORUZpbHRlclNvdXJjZSBhbGxvY10gaW5pdFdp
dGhEZWNpc2lvblF1ZXVlOm1fcXVldWUuZ2V0KCldKTsKICAgICBbbV9uZUZpbHRlclNvdXJjZSBz
ZXRTb3VyY2VBcHBJZGVudGlmaWVyOmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpXTsKICAg
ICBbbV9uZUZpbHRlclNvdXJjZSBzZXRTb3VyY2VBcHBQaWQ6cHJlc2VudGluZ0FwcGxpY2F0aW9u
UElEKCldOwogfQpAQCAtMjI2LDYgKzIyMywxMSBAQCB2b2lkIE5ldHdvcmtFeHRlbnNpb25Db250
ZW50RmlsdGVyOjpoYW5kbGVEZWNpc2lvbihORUZpbHRlclNvdXJjZVN0YXR1cyBzdGF0dXMsCiAj
ZW5kaWYKIH0KIAorYm9vbCBOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlcjo6ZmlsdGVyU291
cmNlUmVxdWlyZXNGaWx0ZXIoKQoreworICAgIHJldHVybiBbTkVGaWx0ZXJTb3VyY2UgZmlsdGVy
UmVxdWlyZWRdOworfQorCiB2b2lkIE5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjpzZXRI
YXNDb25zdW1lZFNhbmRib3hFeHRlbnNpb25zKGJvb2wgaGFzQ29uc3VtZWRTYW5kYm94RXh0ZW5z
aW9ucykKIHsKICAgICBpZiAobV9zYW5kYm94RXh0ZW5zaW9uc1N0YXRlID09IFNhbmRib3hFeHRl
bnNpb25zU3RhdGU6OkNvbnN1bWVkKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9D
b2NvYS9XZWJQYWdlUHJveHlDb2NvYS5tbQppbmRleCAxYjk4Y2MwZGUzOGRmMDljNmNlMDk3NzM5
ZWEyMmM5OTc0NzQ0YmI2Li4zMDlkMjNmMzQ5MmNjZjY1N2M3YWE3NWQ4N2ZlMWI3ODczMjU4ZTVi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlD
b2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlD
b2NvYS5tbQpAQCAtNDYsMTIgKzQ2LDEyIEBACiAjaW1wb3J0IDxXZWJDb3JlL0RyYWdJdGVtLmg+
CiAjaW1wb3J0IDxXZWJDb3JlL0dlb21ldHJ5VXRpbGl0aWVzLmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L0xvY2FsQ3VycmVudEdyYXBoaWNzQ29udGV4dC5oPgorI2ltcG9ydCA8V2ViQ29yZS9OZXR3b3Jr
RXh0ZW5zaW9uQ29udGVudEZpbHRlci5oPgogI2ltcG9ydCA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRl
ZC5oPgogI2ltcG9ydCA8V2ViQ29yZS9SdW5Mb29wT2JzZXJ2ZXIuaD4KICNpbXBvcnQgPFdlYkNv
cmUvU2VhcmNoUG9wdXBNZW51Q29jb2EuaD4KICNpbXBvcnQgPFdlYkNvcmUvVGV4dEFsdGVybmF0
aXZlV2l0aFJhbmdlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1ZhbGlkYXRpb25CdWJibGUuaD4KLSNp
bXBvcnQgPHBhbC9zcGkvY29jb2EvTkVGaWx0ZXJTb3VyY2VTUEkuaD4KICNpbXBvcnQgPHBhbC9z
cGkvY29jb2EvUXVhcnR6Q29yZVNQSS5oPgogI2ltcG9ydCA8d3RmL0Jsb2NrUHRyLmg+CiAjaW1w
b3J0IDx3dGYvU29mdExpbmtpbmcuaD4KQEAgLTc0LDkgKzc0LDYgQEAgU09GVF9MSU5LX1BSSVZB
VEVfRlJBTUVXT1JLKFdlYkNvbnRlbnRBbmFseXNpcyk7CiBTT0ZUX0xJTktfQ0xBU1MoV2ViQ29u
dGVudEFuYWx5c2lzLCBXZWJGaWx0ZXJFdmFsdWF0b3IpOwogI2VuZGlmCiAKLVNPRlRfTElOS19G
UkFNRVdPUktfT1BUSU9OQUwoTmV0d29ya0V4dGVuc2lvbik7Ci1TT0ZUX0xJTktfQ0xBU1NfT1BU
SU9OQUwoTmV0d29ya0V4dGVuc2lvbiwgTkVGaWx0ZXJTb3VyY2UpOwotCiAjZGVmaW5lIE1FU1NB
R0VfQ0hFQ0soYXNzZXJ0aW9uKSBNRVNTQUdFX0NIRUNLX0JBU0UoYXNzZXJ0aW9uLCBwcm9jZXNz
KCkuY29ubmVjdGlvbigpKQogI2RlZmluZSBNRVNTQUdFX0NIRUNLX0NPTVBMRVRJT04oYXNzZXJ0
aW9uLCBjb21wbGV0aW9uKSBNRVNTQUdFX0NIRUNLX0NPTVBMRVRJT05fQkFTRShhc3NlcnRpb24s
IHByb2Nlc3MoKS5jb25uZWN0aW9uKCksIGNvbXBsZXRpb24pCiAKQEAgLTE1Niw3ICsxNTMsNyBA
QCB2b2lkIFdlYlBhZ2VQcm94eTo6YWRkUGxhdGZvcm1Mb2FkUGFyYW1ldGVycyhXZWJQcm9jZXNz
UHJveHkmIHByb2Nlc3MsIExvYWRQYXJhbQogewogICAgIGxvYWRQYXJhbWV0ZXJzLmRhdGFEZXRl
Y3Rpb25Db250ZXh0ID0gbV91aUNsaWVudC0+ZGF0YURldGVjdGlvbkNvbnRleHQoKTsKIAotICAg
IGlmICghcHJvY2Vzcy5oYXNOZXR3b3JrRXh0ZW5zaW9uU2FuZGJveEFjY2VzcygpICYmIFtnZXRO
RUZpbHRlclNvdXJjZUNsYXNzKCkgZmlsdGVyUmVxdWlyZWRdKSB7CisgICAgaWYgKCFwcm9jZXNz
Lmhhc05ldHdvcmtFeHRlbnNpb25TYW5kYm94QWNjZXNzKCkgJiYgTmV0d29ya0V4dGVuc2lvbkNv
bnRlbnRGaWx0ZXI6OmZpbHRlclNvdXJjZVJlcXVpcmVzRmlsdGVyKCkpIHsKICAgICAgICAgU2Fu
ZGJveEV4dGVuc2lvbjo6SGFuZGxlIGhlbHBlckhhbmRsZTsKICAgICAgICAgU2FuZGJveEV4dGVu
c2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cCgiY29tLmFwcGxlLm5laGVscGVyIl9zLCBX
VEY6Om51bGxvcHQsIGhlbHBlckhhbmRsZSk7CiAgICAgICAgIGxvYWRQYXJhbWV0ZXJzLm5lSGVs
cGVyRXh0ZW5zaW9uSGFuZGxlID0gV1RGTW92ZShoZWxwZXJIYW5kbGUpOwpkaWZmIC0tZ2l0IGEv
VG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IGM0NGQ5ZThkZTUyMmNkNjk1
OGM2NDQ4ODVhOTdlYjFlODkyNDI5ZWEuLjE2OTdmNDE1YTk5OWJhYTk0MmU1NGI2N2RjZWIwODUx
MTIwMTdiOWIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0xMC0yOCAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRo
aUBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBSZW1vdmUgc29mdCBsaW5raW5nIG9mIE5l
dHdvcmtFeHRlbnNpb24uZnJhbWV3b3JrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTgzMTQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzcwNzg1MjM5
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0
ZWQgYSB0ZXN0IHRvIHJlZmxlY3QgdGhhdCBOZXR3b3JrRXh0ZW5zaW9uLmZyYW1ld29yayBpcyBu
byBsb25nZXIKKyAgICAgICAgbG9hZGVkIGF0IHJ1bnRpbWUuIFRoaXMgdGVzdCB3YXMgZmFpbGlu
ZyBvbiBDYXRhbGluYSBhZnRlciByMjY5MTA5LAorICAgICAgICBhcyB0aGUgQ29udGFjdHMgZnJh
bWV3b3JrIHdhcyBsb2FkaW5nIE5ldHdvcmtFeHRlbnNpb24uCisKKyAgICAgICAgKiBUZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmcuaDoKKyAgICAgICAgKiBU
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmcubW06CisgICAg
ICAgICgtW0xhemlseUxvYWRQbGF0Zm9ybUZyYW1ld29ya3NDb250cm9sbGVyIGV4cGVjdFBhcmVu
dGFsQ29udHJvbHNMb2FkZWQ6XSk6CisgICAgICAgIChURVNUKToKKyAgICAgICAgKiBUZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmdQbHVnSW4ubW06CisgICAg
ICAgICgtW0NvbnRlbnRGaWx0ZXJpbmdQbHVnSW4gY2hlY2tJZlBsYXRmb3JtRnJhbWV3b3Jrc0Fy
ZUxvYWRlZDpdKToKKwogMjAyMC0xMC0yNiAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBs
ZS5jb20+CiAKICAgICAgICAgW0NvbnRhY3QgUGlja2VyIEFQSV0gQWRkIHN1cHBvcnQgZm9yIHBp
Y2tlciBVSSBvbiBpT1MKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Q29jb2EvQ29udGVudEZpbHRlcmluZy5oIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRDb2NvYS9Db250ZW50RmlsdGVyaW5nLmgKaW5kZXggOWQ1YjVkNDMzNjVkOWFmYjM5OTc3
MDBhNzE5OGY2NTk5ZjM3ZDkwZi4uMGY4ZWUyYTgzYTY0NDcxOTZjNjA1ZDIwYzM5NmY3MDM2OWNi
Njg3MCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9D
b250ZW50RmlsdGVyaW5nLmgKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRD
b2NvYS9Db250ZW50RmlsdGVyaW5nLmgKQEAgLTI0LDUgKzI0LDUgQEAKICAqLwogCiBAcHJvdG9j
b2wgQ29udGVudEZpbHRlcmluZ1Byb3RvY29sIDxOU09iamVjdD4KLS0gKHZvaWQpY2hlY2tJZlBs
YXRmb3JtRnJhbWV3b3Jrc0FyZUxvYWRlZDoodm9pZCAoXikoQk9PTCBwYXJlbnRhbENvbnRyb2xz
TG9hZGVkLCBCT09MIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQpKWNvbXBsZXRpb25IYW5kbGVyOwor
LSAodm9pZCljaGVja0lmUGxhdGZvcm1GcmFtZXdvcmtzQXJlTG9hZGVkOih2b2lkICheKShCT09M
IHBhcmVudGFsQ29udHJvbHNMb2FkZWQpKWNvbXBsZXRpb25IYW5kbGVyOwogQGVuZApkaWZmIC0t
Z2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Db250ZW50RmlsdGVy
aW5nLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Db250ZW50Rmls
dGVyaW5nLm1tCmluZGV4IDg1NmJkZTRiMWU5M2EyMDExMjQyOGM4MjQ1M2I2ZWY3MTE1NDdkOWYu
LjQzMzkxMzExMDFmMmNkZDk1MDk4NjdlZmU5NDRmNmU3N2VmMzllZGIgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvQ29udGVudEZpbHRlcmluZy5tbQor
KysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJp
bmcubW0KQEAgLTMzNiw3ICszMzYsNyBAQCBURVNUKENvbnRlbnRGaWx0ZXJpbmcsIExvYWRBbHRl
cm5hdGVBZnRlckZpbmlzaGVkQWRkaW5nRGF0YVdLMikKIAogQGludGVyZmFjZSBMYXppbHlMb2Fk
UGxhdGZvcm1GcmFtZXdvcmtzQ29udHJvbGxlciA6IE5TT2JqZWN0IDxXS05hdmlnYXRpb25EZWxl
Z2F0ZT4KIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgV0tXZWJWaWV3ICp3ZWJWaWV3
OwotLSAodm9pZClleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOihCT09MKXBhcmVudGFsQ29u
dHJvbHNTaG91bGRCZUxvYWRlZCBuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkOihCT09MKW5ldHdvcmtF
eHRlbnNpb25TaG91bGRCZUxvYWRlZDsKKy0gKHZvaWQpZXhwZWN0UGFyZW50YWxDb250cm9sc0xv
YWRlZDooQk9PTClwYXJlbnRhbENvbnRyb2xzU2hvdWxkQmVMb2FkZWQ7CiBAZW5kCiAKIEBpbXBs
ZW1lbnRhdGlvbiBMYXppbHlMb2FkUGxhdGZvcm1GcmFtZXdvcmtzQ29udHJvbGxlciB7CkBAIC0z
NjQsMTQgKzM2NCwxMyBAQCAtIChXS1dlYlZpZXcgKil3ZWJWaWV3CiAgICAgcmV0dXJuIF93ZWJW
aWV3LmdldCgpOwogfQogCi0tICh2b2lkKWV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6KEJP
T0wpcGFyZW50YWxDb250cm9sc1Nob3VsZEJlTG9hZGVkIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQ6
KEJPT0wpbmV0d29ya0V4dGVuc2lvblNob3VsZEJlTG9hZGVkCistICh2b2lkKWV4cGVjdFBhcmVu
dGFsQ29udHJvbHNMb2FkZWQ6KEJPT0wpcGFyZW50YWxDb250cm9sc1Nob3VsZEJlTG9hZGVkCiB7
CiAgICAgaXNEb25lID0gZmFsc2U7Ci0gICAgW19yZW1vdGVPYmplY3RQcm94eSBjaGVja0lmUGxh
dGZvcm1GcmFtZXdvcmtzQXJlTG9hZGVkOl4oQk9PTCBwYXJlbnRhbENvbnRyb2xzTG9hZGVkLCBC
T09MIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQpIHsKKyAgICBbX3JlbW90ZU9iamVjdFByb3h5IGNo
ZWNrSWZQbGF0Zm9ybUZyYW1ld29ya3NBcmVMb2FkZWQ6XihCT09MIHBhcmVudGFsQ29udHJvbHNM
b2FkZWQpIHsKICNpZiBIQVZFKFBBUkVOVEFMX0NPTlRST0xTKQogICAgICAgICBFWFBFQ1RfRVEo
c3RhdGljX2Nhc3Q8Ym9vbD4ocGFyZW50YWxDb250cm9sc1Nob3VsZEJlTG9hZGVkKSwgc3RhdGlj
X2Nhc3Q8Ym9vbD4ocGFyZW50YWxDb250cm9sc0xvYWRlZCkpOwogI2VuZGlmCi0gICAgICAgIEVY
UEVDVF9FUShzdGF0aWNfY2FzdDxib29sPihuZXR3b3JrRXh0ZW5zaW9uU2hvdWxkQmVMb2FkZWQp
LCBzdGF0aWNfY2FzdDxib29sPihuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkKSk7CiAgICAgICAgIGlz
RG9uZSA9IHRydWU7CiAgICAgfV07CiAgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZpc0Rv
bmUpOwpAQCAtNDA2LDI5ICs0MDUsMjkgQEAgVEVTVChDb250ZW50RmlsdGVyaW5nLCBMYXppbHlM
b2FkUGxhdGZvcm1GcmFtZXdvcmtzKQogCiAgICAgQGF1dG9yZWxlYXNlcG9vbCB7CiAgICAgICAg
IGF1dG8gY29udHJvbGxlciA9IGFkb3B0TlMoW1tMYXppbHlMb2FkUGxhdGZvcm1GcmFtZXdvcmtz
Q29udHJvbGxlciBhbGxvY10gaW5pdF0pOwotICAgICAgICBbY29udHJvbGxlciBleHBlY3RQYXJl
bnRhbENvbnRyb2xzTG9hZGVkOk5PIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQ6Tk9dOworICAgICAg
ICBbY29udHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOk5PXTsKIAogICAgICAg
ICBpc0RvbmUgPSBmYWxzZTsKICAgICAgICAgW1tjb250cm9sbGVyIHdlYlZpZXddIGxvYWRIVE1M
U3RyaW5nOkAiUEFTUyIgYmFzZVVSTDpbTlNVUkwgVVJMV2l0aFN0cmluZzpAImFib3V0OmJsYW5r
Il1dOwogICAgICAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmlzRG9uZSk7Ci0gICAgICAg
IFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6Tk8gbmV0d29ya0V4dGVu
c2lvbkxvYWRlZDpOT107CisgICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJv
bHNMb2FkZWQ6Tk9dOwogCiAgICAgICAgIGlzRG9uZSA9IGZhbHNlOwogICAgICAgICBbW2NvbnRy
b2xsZXIgd2ViVmlld10gbG9hZERhdGE6W05TRGF0YSBkYXRhV2l0aEJ5dGVzOiJQQVNTIiBsZW5n
dGg6NF0gTUlNRVR5cGU6QCJ0ZXh0L2h0bWwiIGNoYXJhY3RlckVuY29kaW5nTmFtZTpAIlVURi04
IiBiYXNlVVJMOltOU1VSTCBVUkxXaXRoU3RyaW5nOkAiYWJvdXQ6YmxhbmsiXV07CiAgICAgICAg
IFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmaXNEb25lKTsKLSAgICAgICAgW2NvbnRyb2xsZXIg
ZXhwZWN0UGFyZW50YWxDb250cm9sc0xvYWRlZDpOTyBuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkOk5P
XTsKKyAgICAgICAgW2NvbnRyb2xsZXIgZXhwZWN0UGFyZW50YWxDb250cm9sc0xvYWRlZDpOT107
CiAKICAgICAgICAgaXNEb25lID0gZmFsc2U7CiAgICAgICAgIE5TVVJMICpmaWxlVVJMID0gW1tO
U0J1bmRsZSBtYWluQnVuZGxlXSBVUkxGb3JSZXNvdXJjZTpAIkNvbnRlbnRGaWx0ZXJpbmciIHdp
dGhFeHRlbnNpb246QCJodG1sIiBzdWJkaXJlY3Rvcnk6QCJUZXN0V2ViS2l0QVBJLnJlc291cmNl
cyJdOwogICAgICAgICBbW2NvbnRyb2xsZXIgd2ViVmlld10gbG9hZEZpbGVVUkw6ZmlsZVVSTCBh
bGxvd2luZ1JlYWRBY2Nlc3NUb1VSTDpmaWxlVVJMXTsKICAgICAgICAgVGVzdFdlYktpdEFQSTo6
VXRpbDo6cnVuKCZpc0RvbmUpOwotICAgICAgICBbY29udHJvbGxlciBleHBlY3RQYXJlbnRhbENv
bnRyb2xzTG9hZGVkOk5PIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQ6Tk9dOworICAgICAgICBbY29u
dHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOk5PXTsKIAogICAgICAgICBpc0Rv
bmUgPSBmYWxzZTsKICAgICAgICAgW1Rlc3RQcm90b2NvbCByZWdpc3RlcldpdGhTY2hlbWU6QCJj
dXN0b20iXTsKICAgICAgICAgW1tjb250cm9sbGVyIHdlYlZpZXddIGxvYWRSZXF1ZXN0OltOU1VS
TFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6W05TVVJMIFVSTFdpdGhTdHJpbmc6QCJjdXN0b206Ly90
ZXN0Il1dXTsKICAgICAgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZpc0RvbmUpOwotICAg
ICAgICBbY29udHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOk5PIG5ldHdvcmtF
eHRlbnNpb25Mb2FkZWQ6Tk9dOworICAgICAgICBbY29udHJvbGxlciBleHBlY3RQYXJlbnRhbENv
bnRyb2xzTG9hZGVkOk5PXTsKICAgICAgICAgW1Rlc3RQcm90b2NvbCB1bnJlZ2lzdGVyXTsKIAog
ICAgICAgICBpc0RvbmUgPSBmYWxzZTsKQEAgLTQzNiw5ICs0MzUsOSBAQCBURVNUKENvbnRlbnRG
aWx0ZXJpbmcsIExhemlseUxvYWRQbGF0Zm9ybUZyYW1ld29ya3MpCiAgICAgICAgIFtbY29udHJv
bGxlciB3ZWJWaWV3XSBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOltO
U1VSTCBVUkxXaXRoU3RyaW5nOkAiaHR0cDovL3Rlc3QiXV1dOwogICAgICAgICBUZXN0V2ViS2l0
QVBJOjpVdGlsOjpydW4oJmlzRG9uZSk7CiAjaWYgUExBVEZPUk0oTUFDKQotICAgICAgICBbY29u
dHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOk5PIG5ldHdvcmtFeHRlbnNpb25M
b2FkZWQ6WUVTXTsKKyAgICAgICAgW2NvbnRyb2xsZXIgZXhwZWN0UGFyZW50YWxDb250cm9sc0xv
YWRlZDpOT107CiAjZWxzZQotICAgICAgICBbY29udHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRy
b2xzTG9hZGVkOllFUyBuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkOllFU107CisgICAgICAgIFtjb250
cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6WUVTXTsKICNlbmRpZgogICAgICAg
ICBbVGVzdFByb3RvY29sIHVucmVnaXN0ZXJdOwogCkBAIC00NDcsNyArNDQ2LDcgQEAgVEVTVChD
b250ZW50RmlsdGVyaW5nLCBMYXppbHlMb2FkUGxhdGZvcm1GcmFtZXdvcmtzKQogICAgICAgICBb
VGVzdFByb3RvY29sIHJlZ2lzdGVyV2l0aFNjaGVtZTpAImh0dHBzIl07CiAgICAgICAgIFtbY29u
dHJvbGxlciB3ZWJWaWV3XSBsb2FkUmVxdWVzdDpbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJM
OltOU1VSTCBVUkxXaXRoU3RyaW5nOkAiaHR0cHM6Ly90ZXN0Il1dXTsKICAgICAgICAgVGVzdFdl
YktpdEFQSTo6VXRpbDo6cnVuKCZpc0RvbmUpOwotICAgICAgICBbY29udHJvbGxlciBleHBlY3RQ
YXJlbnRhbENvbnRyb2xzTG9hZGVkOllFUyBuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkOllFU107Cisg
ICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6WUVTXTsKICAg
ICAgICAgW1Rlc3RQcm90b2NvbCB1bnJlZ2lzdGVyXTsKICNlbmRpZgogICAgIH0KZGlmZiAtLWdp
dCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvQ29udGVudEZpbHRlcmlu
Z1BsdWdJbi5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvQ29udGVu
dEZpbHRlcmluZ1BsdWdJbi5tbQppbmRleCAzNjUzNDEzMDMxM2M0MjMzNTgzZjM2NDQ4YTU3N2Jj
MjA5YmY5OTA3Li41ZGZmODI3NGNmZDBhNmE2YWVhZmQzMTljYTMyODNiZWM4ZGI2NGZjIDEwMDY0
NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0
ZXJpbmdQbHVnSW4ubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2Nv
YS9Db250ZW50RmlsdGVyaW5nUGx1Z0luLm1tCkBAIC0xMTMsMTUgKzExMywxNCBAQCAtICh2b2lk
KW9ic2VydmVWYWx1ZUZvcktleVBhdGg6KE5TU3RyaW5nICopa2V5UGF0aCBvZk9iamVjdDooaWQp
b2JqZWN0IGNoYW5nZTooTgogICAgIF9jb250ZW50RmlsdGVyRW5hYmxlciA9IGNvbnRlbnRGaWx0
ZXJFbmFibGVyOwogfQogCi0tICh2b2lkKWNoZWNrSWZQbGF0Zm9ybUZyYW1ld29ya3NBcmVMb2Fk
ZWQ6KHZvaWQgKF4pKEJPT0wgcGFyZW50YWxDb250cm9sc0xvYWRlZCwgQk9PTCBuZXR3b3JrRXh0
ZW5zaW9uTG9hZGVkKSljb21wbGV0aW9uSGFuZGxlcgorLSAodm9pZCljaGVja0lmUGxhdGZvcm1G
cmFtZXdvcmtzQXJlTG9hZGVkOih2b2lkICheKShCT09MIHBhcmVudGFsQ29udHJvbHNMb2FkZWQp
KWNvbXBsZXRpb25IYW5kbGVyCiB7CiAgICAgYm9vbCBwYXJlbnRhbENvbnRyb2xzTG9hZGVkID0g
ZmFsc2U7CiAjaWYgSEFWRShQQVJFTlRBTF9DT05UUk9MUykKICAgICBwYXJlbnRhbENvbnRyb2xz
TG9hZGVkID0gTlNWZXJzaW9uT2ZSdW5UaW1lTGlicmFyeSgiV2ViQ29udGVudEFuYWx5c2lzIikg
IT0gLTE7CiAjZW5kaWYKIAotICAgIGJvb2wgbmV0d29ya0V4dGVuc2lvbkxvYWRlZCA9IG5ldHdv
cmtFeHRlbnNpb25Mb2FkZWQgPSBOU1ZlcnNpb25PZlJ1blRpbWVMaWJyYXJ5KCJOZXR3b3JrRXh0
ZW5zaW9uIikgIT0gLTE7Ci0gICAgY29tcGxldGlvbkhhbmRsZXIocGFyZW50YWxDb250cm9sc0xv
YWRlZCwgbmV0d29ya0V4dGVuc2lvbkxvYWRlZCk7CisgICAgY29tcGxldGlvbkhhbmRsZXIocGFy
ZW50YWxDb250cm9sc0xvYWRlZCk7CiB9CiAKIEBlbmQK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412656</attachid>
            <date>2020-10-29 09:06:39 -0700</date>
            <delta_ts>2020-10-29 15:26:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218314-20201029120638.patch</filename>
            <type>text/plain</type>
            <size>21272</size>
            <attacher name="Aditya Keerthi">akeerthi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4OTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjZkOTQyNjhjYmE2OTVk
NDljMTI2Y2QyNjYwZjE1NTc5NjQ1ODZjMi4uNTcxZGExY2NjMDNlYTRlODgxMmVhMmZjZjFhZGU3
MWNhNmRmODgwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDIwLTEwLTI5ICBBZGl0
eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAgICBbQ29jb2FdIFJlbW92
ZSBzb2Z0IGxpbmtpbmcgb2YgTmV0d29ya0V4dGVuc2lvbi5mcmFtZXdvcmsKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODMxNAorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vNzA3ODUyMzk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgV2ViQ29yZSBzaG91bGQgbGluayBOZXR3b3JrRXh0ZW5zaW9uLmZyYW1l
d29yayBub3JtYWxseSwgdG8gYXZvaWQgdGhlCisgICAgICAgIHJ1bnRpbWUgY29zdCBhc3NvY2lh
dGVkIHdpdGggc29mdCBsaW5raW5nLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvV2ViQ29y
ZS54Y2NvbmZpZzoKKworICAgICAgICBPbiBtYWNPUywgd2VhayBsaW5rIHRoZSBmcmFtZXdvcmsg
c2luY2UgTmV0d29ya0V4dGVuc2lvbi5mcmFtZXdvcmsgaXMKKyAgICAgICAgbm90IGF2YWlsYWJs
ZSBvbiB0aGUgQmFzZSBTeXN0ZW0uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9OZXR3b3Jr
RXh0ZW5zaW9uQ29udGVudEZpbHRlci5oOgorCisgICAgICAgIEFkZGVkIHRoZSBpc1JlcXVpcmVk
IHN0YXRpYyBtZXRob2QgdG8gYXZvaWQgc29mdCBsaW5raW5nCisgICAgICAgIE5ldHdvcmtFeHRl
bnNpb24uZnJhbWV3b3JrIGluIFdlYktpdC4KKworICAgICAgICAqIHBsYXRmb3JtL2NvY29hL05l
dHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLm1tOgorCisgICAgICAgIE9ubHkgY29tcGlsZSB0
aGlzIGZpbGUgaW4gdGhlIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykgYnVpbGQsIGFzIGl0cwor
ICAgICAgICBmdW5jdGlvbmFsaXR5IGlzIHVuYXZhaWxhYmxlIG9uIHR2T1MuCisKKyAgICAgICAg
KFdlYkNvcmU6Ok5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjplbmFibGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6Ok5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjppbml0aWFsaXplKToK
KyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjp1bmJsb2Nr
SGFuZGxlciBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrRXh0ZW5zaW9uQ29udGVu
dEZpbHRlcjo6aXNSZXF1aXJlZCk6CisKIDIwMjAtMTAtMjUgIFNpbW9uIEZyYXNlciAgPHNpbW9u
LmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQyBEaXNwbGF5XSBNb3ZlIGNvZGUgZm9y
IHBhaW50aW5nIGEgc2luZ2xlIERpc3BsYXk6OkJveCBpbnRvIGl0cyBvd24gY2xhc3MKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cK
aW5kZXggNmMyNGE1Y2M5OTUxZmM1ODZmZmRjMDg3NTQ4OWUwYmNiMzFhODc0My4uNDZiMDU1YThk
YjhkZDc2MDAwMGIyMDU4ZTNjMzM2YmMyNGUzNzJkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBA
QAorMjAyMC0xMC0yOSAgQWRpdHlhIEtlZXJ0aGkgIDxha2VlcnRoaUBhcHBsZS5jb20+CisKKyAg
ICAgICAgW0NvY29hXSBSZW1vdmUgc29mdCBsaW5raW5nIG9mIE5ldHdvcmtFeHRlbnNpb24uZnJh
bWV3b3JrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTgzMTQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzcwNzg1MjM5PgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYlBh
Z2VQcm94eUNvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmFkZFBsYXRm
b3JtTG9hZFBhcmFtZXRlcnMpOgorCisgICAgICAgIFJlcGxhY2VkIHRoZSBzb2Z0IGxpbmtlZCBt
ZXRob2QgY2FsbCB3aXRoIGEgbmV3IG1ldGhvZCBleHBvcnRlZCBmcm9tCisgICAgICAgIFdlYkNv
cmUuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvQ29jb2EvV2ViUGFnZUNvY29hLm1t
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpwbGF0Zm9ybURpZFJlY2VpdmVMb2FkUGFyYW1l
dGVycyk6CisKIDIwMjAtMTAtMjYgIEFkaXR5YSBLZWVydGhpICA8YWtlZXJ0aGlAYXBwbGUuY29t
PgogCiAgICAgICAgIFtDb250YWN0IFBpY2tlciBBUEldIEFkZCBzdXBwb3J0IGZvciBwaWNrZXIg
VUkgb24gaU9TCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJD
b3JlLnhjY29uZmlnIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2Nv
bmZpZwppbmRleCA3N2NlNGM1ZWFjMzYyZWM2N2JkZmIyODkwNmJmYzhlM2EyY2UyMWZmLi5kYjQ1
NzdiYjMyMjBhYzIxNGY5OTA1ZGI4MzNiZGZjYzY1OWZhNjkyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJD
b3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcKQEAgLTEwNSw2ICsxMDUsMTQgQEAg
V0tfTU9CSUxFX0NPUkVfU0VSVklDRVNfTERGTEFHU19jb2NvYXRvdWNoID0gLWZyYW1ld29yayBN
b2JpbGVDb3JlU2VydmljZXM7CiBXS19NT0JJTEVfR0VTVEFMVF9MREZMQUdTID0gJChXS19NT0JJ
TEVfR0VTVEFMVF9MREZMQUdTXyQoV0tfQ09DT0FfVE9VQ0gpKTsKIFdLX01PQklMRV9HRVNUQUxU
X0xERkxBR1NfY29jb2F0b3VjaCA9IC1sTW9iaWxlR2VzdGFsdDsKIAorV0tfTkVUV09SS19FWFRF
TlNJT05fTERfRkxBR1MgPSAkKFdLX05FVFdPUktfRVhURU5TSU9OX0xEX0ZMQUdTXyQoV0tfUExB
VEZPUk1fTkFNRSkpOworV0tfTkVUV09SS19FWFRFTlNJT05fTERfRkxBR1NfaXBob25lb3MgPSAt
ZnJhbWV3b3JrIE5ldHdvcmtFeHRlbnNpb247CitXS19ORVRXT1JLX0VYVEVOU0lPTl9MRF9GTEFH
U19pcGhvbmVzaW11bGF0b3IgPSAtZnJhbWV3b3JrIE5ldHdvcmtFeHRlbnNpb247CitXS19ORVRX
T1JLX0VYVEVOU0lPTl9MRF9GTEFHU193YXRjaG9zID0gLWZyYW1ld29yayBOZXR3b3JrRXh0ZW5z
aW9uOworV0tfTkVUV09SS19FWFRFTlNJT05fTERfRkxBR1Nfd2F0Y2hzaW11bGF0b3IgPSAtZnJh
bWV3b3JrIE5ldHdvcmtFeHRlbnNpb247CitXS19ORVRXT1JLX0VYVEVOU0lPTl9MRF9GTEFHU19t
YWNjYXRhbHlzdCA9IC1mcmFtZXdvcmsgTmV0d29ya0V4dGVuc2lvbjsKK1dLX05FVFdPUktfRVhU
RU5TSU9OX0xEX0ZMQUdTX21hY29zeCA9IC13ZWFrX2ZyYW1ld29yayBOZXR3b3JrRXh0ZW5zaW9u
OworCiBXS19TWVNURU1fQ09ORklHVVJBVElPTl9MREZMQUdTID0gJChXS19TWVNURU1fQ09ORklH
VVJBVElPTl9MREZMQUdTXyQoV0tfUExBVEZPUk1fTkFNRSkpOwogV0tfU1lTVEVNX0NPTkZJR1VS
QVRJT05fTERGTEFHU19tYWNvc3ggPSAtZnJhbWV3b3JrIFN5c3RlbUNvbmZpZ3VyYXRpb247CiAK
QEAgLTExNCw3ICsxMjIsNyBAQCBXS19VUkxfRk9STUFUVElOR19MREZMQUdTID0gJChXS19VUkxf
Rk9STUFUVElOR19MREZMQUdTXyQoV0tfSEFWRV9VUkxfRk9STUFUVElORwogV0tfVVJMX0ZPUk1B
VFRJTkdfTERGTEFHU19ZRVMgPSAtZnJhbWV3b3JrIFVSTEZvcm1hdHRpbmc7CiAKIC8vIEZJWE1F
OiBSZWR1Y2UgdGhlIG51bWJlciBvZiBhbGxvd2FibGVfY2xpZW50cyA8cmRhcjovL3Byb2JsZW0v
MzE4MjM5Njk+Ci1PVEhFUl9MREZMQUdTID0gJChpbmhlcml0ZWQpICQoV0tfUkVMT0NBVEFCTEVf
RlJBTUVXT1JLX0xERkxBR1MpIC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtYWxsb3dhYmxlX2Ns
aWVudCBXZWJDb3JlVGVzdFN1cHBvcnQgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0TGVnYWN5IC1m
b3JjZV9sb2FkICQoQlVJTFRfUFJPRFVDVFNfRElSKS9saWJQQUwuYSAtZnJhbWV3b3JrIENGTmV0
d29yayAtZnJhbWV3b3JrIENvcmVBdWRpbyAtZnJhbWV3b3JrIENvcmVHcmFwaGljcyAtZnJhbWV3
b3JrIENvcmVUZXh0IC1mcmFtZXdvcmsgRm91bmRhdGlvbiAtZnJhbWV3b3JrIElPU3VyZmFjZSAt
ZnJhbWV3b3JrIEltYWdlSU8gLWZyYW1ld29yayBNZXRhbCAkKE9USEVSX0xERkxBR1NfUExBVEZP
Uk1fJChXS19DT0NPQV9UT1VDSCkpICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8kKFdLX1BMQVRG
T1JNX05BTUUpKSAkKFdLX0FQUEtJVF9MREZMQUdTKSAkKFdLX0FQUFNVUFBPUlRfTERGTEFHUykg
JChXS19BVURJT19VTklUX0xERkxBR1MpICQoV0tfQ0FSQk9OX0xERkxBR1MpICQoV0tfQ09SRV9V
SV9MREZMQUdTKSAkKFdLX0RBVEFfREVURUNUT1JTX0NPUkVfTERGTEFHUykgJChXS19HUkFQSElD
U19TRVJWSUNFU19MREZMQUdTKSAkKFdLX0lPU1VSRkFDRV9BQ0NFTEVSQVRPUl9MREZMQUdTKSAk
KFdLX0xJQldFQlJUQ19MREZMQUdTKSAkKFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxBR1Mp
ICQoV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHUykgJChXS19TWVNURU1fQ09ORklHVVJBVElPTl9M
REZMQUdTKSAkKFdLX0NPUkVfSU1BR0VfTERGTEFHUykgJChXS19VUkxfRk9STUFUVElOR19MREZM
QUdTKTsKK09USEVSX0xERkxBR1MgPSAkKGluaGVyaXRlZCkgJChXS19SRUxPQ0FUQUJMRV9GUkFN
RVdPUktfTERGTEFHUykgLWxzcWxpdGUzIC1sb2JqYyAtbEFOR0xFIC1hbGxvd2FibGVfY2xpZW50
IFdlYkNvcmVUZXN0U3VwcG9ydCAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRMZWdhY3kgLWZvcmNl
X2xvYWQgJChCVUlMVF9QUk9EVUNUU19ESVIpL2xpYlBBTC5hIC1mcmFtZXdvcmsgQ0ZOZXR3b3Jr
IC1mcmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsg
Q29yZVRleHQgLWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFt
ZXdvcmsgSW1hZ2VJTyAtZnJhbWV3b3JrIE1ldGFsICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8k
KFdLX0NPQ09BX1RPVUNIKSkgJChPVEhFUl9MREZMQUdTX1BMQVRGT1JNXyQoV0tfUExBVEZPUk1f
TkFNRSkpICQoV0tfQVBQS0lUX0xERkxBR1MpICQoV0tfQVBQU1VQUE9SVF9MREZMQUdTKSAkKFdL
X0FVRElPX1VOSVRfTERGTEFHUykgJChXS19DQVJCT05fTERGTEFHUykgJChXS19DT1JFX1VJX0xE
RkxBR1MpICQoV0tfREFUQV9ERVRFQ1RPUlNfQ09SRV9MREZMQUdTKSAkKFdLX0dSQVBISUNTX1NF
UlZJQ0VTX0xERkxBR1MpICQoV0tfSU9TVVJGQUNFX0FDQ0VMRVJBVE9SX0xERkxBR1MpICQoV0tf
TElCV0VCUlRDX0xERkxBR1MpICQoV0tfTU9CSUxFX0NPUkVfU0VSVklDRVNfTERGTEFHUykgJChX
S19NT0JJTEVfR0VTVEFMVF9MREZMQUdTKSAkKFdLX05FVFdPUktfRVhURU5TSU9OX0xEX0ZMQUdT
KSAkKFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xERkxBR1MpICQoV0tfQ09SRV9JTUFHRV9MREZM
QUdTKSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1MpOwogCiBPVEhFUl9MREZMQUdTX1BMQVRG
T1JNX2NvY29hdG91Y2ggPSAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXQgLWFsbG93YWJsZV9jbGll
bnQgaVR1bmVzVSAtYWxsb3dhYmxlX2NsaWVudCBDYXNhYmxhbmNhIC1hbGxvd2FibGVfY2xpZW50
IFJlbW90ZSAtYWxsb3dhYmxlX2NsaWVudCBUVkJvb2tzIC1hbGxvd2FibGVfY2xpZW50IER1bXBS
ZW5kZXJUcmVlIC1hbGxvd2FibGVfY2xpZW50IFdlYktpdFRlc3RSdW5uZXIgLWFsbG93YWJsZV9j
bGllbnQgVGVzdFdlYktpdEFQSTsKIE9USEVSX0xERkxBR1NfUExBVEZPUk1fbWFjb3N4ID0gLXN1
Yl9saWJyYXJ5IGxpYm9iamMgLXVtYnJlbGxhIFdlYktpdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9OZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRl
ci5oCmluZGV4IDA1MWE2YzJkZmRkYjhhNWFhZTkwMmU0MjEzYTI0MmY4MjdhNjExODMuLjBiZjBj
NGFmYjAxYjVhMWI5OWVhN2M5ZjY2YTMxYzA2MmNlM2FhYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRG
aWx0ZXIuaApAQCAtMjUsNiArMjUsOCBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2lmIEVOQUJMRShD
T05URU5UX0ZJTFRFUklORykKKwogI2luY2x1ZGUgIlBsYXRmb3JtQ29udGVudEZpbHRlci5oIgog
I2luY2x1ZGUgPG9iamMvTlNPYmpDUnVudGltZS5oPgogI2luY2x1ZGUgPHd0Zi9Db21waWxlci5o
PgpAQCAtNTAsMTAgKzUyLDkgQEAgcHVibGljOgogICAgIHZvaWQgYWRkRGF0YShjb25zdCBjaGFy
KiBkYXRhLCBpbnQgbGVuZ3RoKSBvdmVycmlkZTsKICAgICB2b2lkIGZpbmlzaGVkQWRkaW5nRGF0
YSgpIG92ZXJyaWRlOwogICAgIFJlZjxTaGFyZWRCdWZmZXI+IHJlcGxhY2VtZW50RGF0YSgpIGNv
bnN0IG92ZXJyaWRlOwotI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKICAgICBDb250ZW50
RmlsdGVyVW5ibG9ja0hhbmRsZXIgdW5ibG9ja0hhbmRsZXIoKSBjb25zdCBvdmVycmlkZTsKLSNl
bmRpZgogCisgICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIGJvb2wgaXNSZXF1aXJlZCgpOwogICAg
IFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHNldEhhc0NvbnN1bWVkU2FuZGJveEV4dGVuc2lv
bnMoYm9vbCk7CiAKIHByaXZhdGU6CkBAIC03NywzICs3OCw1IEBAIHByaXZhdGU6CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVOVF9GSUxURVJJ
TkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9OZXR3b3JrRXh0
ZW5zaW9uQ29udGVudEZpbHRlci5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL05l
dHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLm1tCmluZGV4IDJiMjM5Mzg2ZGY2ZjIzYjBmMmFi
Y2M2MWU5YzcyMTVjNWFhOWQyNTUuLjM4NzE3MzhlNWQ1YzA1M2NiZGIyZDRiYjliNzMwMzgyZmJj
YWM0MmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtF
eHRlbnNpb25Db250ZW50RmlsdGVyLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nv
Y29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLm1tCkBAIC0yNiw2ICsyNiw4IEBACiAj
aW1wb3J0ICJjb25maWcuaCIKICNpbXBvcnQgIk5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVy
LmgiCiAKKyNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCisKICNpbXBvcnQgIkNvbnRlbnRG
aWx0ZXJVbmJsb2NrSGFuZGxlci5oIgogI2ltcG9ydCAiTG9nZ2luZy5oIgogI2ltcG9ydCAiUmVz
b3VyY2VSZXF1ZXN0LmgiCkBAIC0zOCw5ICs0MCw2IEBACiAjaW1wb3J0IDx3dGYvVVJMLmg+CiAj
aW1wb3J0IDx3dGYvdGhyZWFkcy9CaW5hcnlTZW1hcGhvcmUuaD4KIAotU09GVF9MSU5LX0ZSQU1F
V09SS19PUFRJT05BTChOZXR3b3JrRXh0ZW5zaW9uKTsKLVNPRlRfTElOS19DTEFTU19PUFRJT05B
TChOZXR3b3JrRXh0ZW5zaW9uLCBORUZpbHRlclNvdXJjZSk7Ci0KIHN0YXRpYyBpbmxpbmUgTlNE
YXRhICpyZXBsYWNlbWVudERhdGFGcm9tRGVjaXNpb25JbmZvKE5TRGljdGlvbmFyeSAqZGVjaXNp
b25JbmZvKQogewogICAgIEFTU0VSVF9XSVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKCFkZWNpc2lv
bkluZm8gfHwgW2RlY2lzaW9uSW5mbyBpc0tpbmRPZkNsYXNzOltOU0RpY3Rpb25hcnkgY2xhc3Nd
XSk7CkBAIC02Miw3ICs2MSw3IEBAIGJvb2wgTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXI6
OmVuYWJsZWQoKQogICAgICAgICBlbmFibGVkID0gZmFsc2U7CiAgICAgICAgIGJyZWFrOwogICAg
IGNhc2UgU2FuZGJveEV4dGVuc2lvbnNTdGF0ZTo6Tm90U2V0OgotICAgICAgICBlbmFibGVkID0g
W2dldE5FRmlsdGVyU291cmNlQ2xhc3MoKSBmaWx0ZXJSZXF1aXJlZF07CisgICAgICAgIGVuYWJs
ZWQgPSBpc1JlcXVpcmVkKCk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KICAgICBMT0coQ29udGVu
dEZpbHRlcmluZywgIk5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyIGlzICVzLlxuIiwgZW5h
YmxlZCA/ICJlbmFibGVkIiA6ICJub3QgZW5hYmxlZCIpOwpAQCAtODAsNyArNzksNyBAQCB2b2lk
IE5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjppbml0aWFsaXplKGNvbnN0IFVSTCogdXJs
KQogICAgIEFTU0VSVCghbV9uZUZpbHRlclNvdXJjZSk7CiAgICAgbV9xdWV1ZSA9IGFkb3B0T1NP
YmplY3QoZGlzcGF0Y2hfcXVldWVfY3JlYXRlKCJXZWJLaXQgTmV0d29ya0V4dGVuc2lvbiBGaWx0
ZXJpbmciLCBESVNQQVRDSF9RVUVVRV9TRVJJQUwpKTsKICAgICBBU1NFUlRfVU5VU0VEKHVybCwg
IXVybCk7Ci0gICAgbV9uZUZpbHRlclNvdXJjZSA9IGFkb3B0TlMoW2FsbG9jTkVGaWx0ZXJTb3Vy
Y2VJbnN0YW5jZSgpIGluaXRXaXRoRGVjaXNpb25RdWV1ZTptX3F1ZXVlLmdldCgpXSk7CisgICAg
bV9uZUZpbHRlclNvdXJjZSA9IGFkb3B0TlMoW1tORUZpbHRlclNvdXJjZSBhbGxvY10gaW5pdFdp
dGhEZWNpc2lvblF1ZXVlOm1fcXVldWUuZ2V0KCldKTsKICAgICBbbV9uZUZpbHRlclNvdXJjZSBz
ZXRTb3VyY2VBcHBJZGVudGlmaWVyOmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpXTsKICAg
ICBbbV9uZUZpbHRlclNvdXJjZSBzZXRTb3VyY2VBcHBQaWQ6cHJlc2VudGluZ0FwcGxpY2F0aW9u
UElEKCldOwogfQpAQCAtMTgyLDcgKzE4MSw2IEBAIFJlZjxTaGFyZWRCdWZmZXI+IE5ldHdvcmtF
eHRlbnNpb25Db250ZW50RmlsdGVyOjpyZXBsYWNlbWVudERhdGEoKSBjb25zdAogICAgIHJldHVy
biBTaGFyZWRCdWZmZXI6OmNyZWF0ZShtX3JlcGxhY2VtZW50RGF0YS5nZXQoKSk7CiB9CiAKLSNp
ZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCiBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIg
TmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXI6OnVuYmxvY2tIYW5kbGVyKCkgY29uc3QKIHsK
ICAgICB1c2luZyBEZWNpc2lvbkhhbmRsZXJGdW5jdGlvbiA9IENvbnRlbnRGaWx0ZXJVbmJsb2Nr
SGFuZGxlcjo6RGVjaXNpb25IYW5kbGVyRnVuY3Rpb247CkBAIC0xOTcsNyArMTk1LDYgQEAgQ29u
dGVudEZpbHRlclVuYmxvY2tIYW5kbGVyIE5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjp1
bmJsb2NrSGFuZGxlcigpIGNvbnMKICAgICAgICAgfQogICAgIH07CiB9Ci0jZW5kaWYKIAogdm9p
ZCBOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlcjo6aGFuZGxlRGVjaXNpb24oTkVGaWx0ZXJT
b3VyY2VTdGF0dXMgc3RhdHVzLCBOU0RhdGEgKnJlcGxhY2VtZW50RGF0YSkKIHsKQEAgLTIyNiw2
ICsyMjMsMTEgQEAgdm9pZCBOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlcjo6aGFuZGxlRGVj
aXNpb24oTkVGaWx0ZXJTb3VyY2VTdGF0dXMgc3RhdHVzLAogI2VuZGlmCiB9CiAKK2Jvb2wgTmV0
d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXI6OmlzUmVxdWlyZWQoKQoreworICAgIHJldHVybiBb
TkVGaWx0ZXJTb3VyY2UgZmlsdGVyUmVxdWlyZWRdOworfQorCiB2b2lkIE5ldHdvcmtFeHRlbnNp
b25Db250ZW50RmlsdGVyOjpzZXRIYXNDb25zdW1lZFNhbmRib3hFeHRlbnNpb25zKGJvb2wgaGFz
Q29uc3VtZWRTYW5kYm94RXh0ZW5zaW9ucykKIHsKICAgICBpZiAobV9zYW5kYm94RXh0ZW5zaW9u
c1N0YXRlID09IFNhbmRib3hFeHRlbnNpb25zU3RhdGU6OkNvbnN1bWVkKQpAQCAtMjM1LDMgKzIz
Nyw1IEBAIHZvaWQgTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXI6OnNldEhhc0NvbnN1bWVk
U2FuZGJveEV4dGVuc2lvbnMoYm9vbCBoYXNDb25zCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKKworI2VuZGlmIC8vIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlBhZ2VQcm94eUNvY29hLm1tIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0KaW5kZXggMWI5OGNj
MGRlMzhkZjA5YzZjZTA5NzczOWVhMjJjOTk3NDc0NGJiNi4uMjlmYTg5NTFkYWVmMzYzZWNlY2Rm
OTAyY2JlNzI5ZTA2ZWNiZWViOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
Q29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
Q29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW0KQEAgLTQ2LDEyICs0NiwxMiBAQAogI2ltcG9ydCA8
V2ViQ29yZS9EcmFnSXRlbS5oPgogI2ltcG9ydCA8V2ViQ29yZS9HZW9tZXRyeVV0aWxpdGllcy5o
PgogI2ltcG9ydCA8V2ViQ29yZS9Mb2NhbEN1cnJlbnRHcmFwaGljc0NvbnRleHQuaD4KKyNpbXBv
cnQgPFdlYkNvcmUvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIuaD4KICNpbXBvcnQgPFdl
YkNvcmUvTm90SW1wbGVtZW50ZWQuaD4KICNpbXBvcnQgPFdlYkNvcmUvUnVuTG9vcE9ic2VydmVy
Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NlYXJjaFBvcHVwTWVudUNvY29hLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL1RleHRBbHRlcm5hdGl2ZVdpdGhSYW5nZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9WYWxp
ZGF0aW9uQnViYmxlLmg+Ci0jaW1wb3J0IDxwYWwvc3BpL2NvY29hL05FRmlsdGVyU291cmNlU1BJ
Lmg+CiAjaW1wb3J0IDxwYWwvc3BpL2NvY29hL1F1YXJ0ekNvcmVTUEkuaD4KICNpbXBvcnQgPHd0
Zi9CbG9ja1B0ci5oPgogI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CkBAIC03NCw5ICs3NCw2
IEBAIFNPRlRfTElOS19QUklWQVRFX0ZSQU1FV09SSyhXZWJDb250ZW50QW5hbHlzaXMpOwogU09G
VF9MSU5LX0NMQVNTKFdlYkNvbnRlbnRBbmFseXNpcywgV2ViRmlsdGVyRXZhbHVhdG9yKTsKICNl
bmRpZgogCi1TT0ZUX0xJTktfRlJBTUVXT1JLX09QVElPTkFMKE5ldHdvcmtFeHRlbnNpb24pOwot
U09GVF9MSU5LX0NMQVNTX09QVElPTkFMKE5ldHdvcmtFeHRlbnNpb24sIE5FRmlsdGVyU291cmNl
KTsKLQogI2RlZmluZSBNRVNTQUdFX0NIRUNLKGFzc2VydGlvbikgTUVTU0FHRV9DSEVDS19CQVNF
KGFzc2VydGlvbiwgcHJvY2VzcygpLmNvbm5lY3Rpb24oKSkKICNkZWZpbmUgTUVTU0FHRV9DSEVD
S19DT01QTEVUSU9OKGFzc2VydGlvbiwgY29tcGxldGlvbikgTUVTU0FHRV9DSEVDS19DT01QTEVU
SU9OX0JBU0UoYXNzZXJ0aW9uLCBwcm9jZXNzKCkuY29ubmVjdGlvbigpLCBjb21wbGV0aW9uKQog
CkBAIC0xNTYsNyArMTUzLDggQEAgdm9pZCBXZWJQYWdlUHJveHk6OmFkZFBsYXRmb3JtTG9hZFBh
cmFtZXRlcnMoV2ViUHJvY2Vzc1Byb3h5JiBwcm9jZXNzLCBMb2FkUGFyYW0KIHsKICAgICBsb2Fk
UGFyYW1ldGVycy5kYXRhRGV0ZWN0aW9uQ29udGV4dCA9IG1fdWlDbGllbnQtPmRhdGFEZXRlY3Rp
b25Db250ZXh0KCk7CiAKLSAgICBpZiAoIXByb2Nlc3MuaGFzTmV0d29ya0V4dGVuc2lvblNhbmRi
b3hBY2Nlc3MoKSAmJiBbZ2V0TkVGaWx0ZXJTb3VyY2VDbGFzcygpIGZpbHRlclJlcXVpcmVkXSkg
eworI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKKyAgICBpZiAoIXByb2Nlc3MuaGFzTmV0
d29ya0V4dGVuc2lvblNhbmRib3hBY2Nlc3MoKSAmJiBOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZp
bHRlcjo6aXNSZXF1aXJlZCgpKSB7CiAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBo
ZWxwZXJIYW5kbGU7CiAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1h
Y2hMb29rdXAoImNvbS5hcHBsZS5uZWhlbHBlciJfcywgV1RGOjpudWxsb3B0LCBoZWxwZXJIYW5k
bGUpOwogICAgICAgICBsb2FkUGFyYW1ldGVycy5uZUhlbHBlckV4dGVuc2lvbkhhbmRsZSA9IFdU
Rk1vdmUoaGVscGVySGFuZGxlKTsKQEAgLTE3MCw2ICsxNjgsNyBAQCB2b2lkIFdlYlBhZ2VQcm94
eTo6YWRkUGxhdGZvcm1Mb2FkUGFyYW1ldGVycyhXZWJQcm9jZXNzUHJveHkmIHByb2Nlc3MsIExv
YWRQYXJhbQogCiAgICAgICAgIHByb2Nlc3MubWFya0hhc05ldHdvcmtFeHRlbnNpb25TYW5kYm94
QWNjZXNzKCk7CiAgICAgfQorI2VuZGlmCiAKICNpZiBQTEFURk9STShJT1MpCiAgICAgaWYgKCFw
cm9jZXNzLmhhc01hbmFnZWRTZXNzaW9uU2FuZGJveEFjY2VzcygpICYmIFtnZXRXZWJGaWx0ZXJF
dmFsdWF0b3JDbGFzcygpIGlzTWFuYWdlZFNlc3Npb25dKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9Db2NvYS9XZWJQYWdlQ29jb2EubW0gYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9Db2NvYS9XZWJQYWdlQ29jb2EubW0KaW5kZXggZGM0
YjVkYzQ5NDY2YTE1MjJiNTFlNjc1NjE4NGZiNmRkM2U2MTZlYy4uY2U3ODc2NDBkMmNkMTY1ZTVk
OWE3NDJiNjgzNTJhMGI1MDc2MmVkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1dlYlBhZ2UvQ29jb2EvV2ViUGFnZUNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL0NvY29hL1dlYlBhZ2VDb2NvYS5tbQpAQCAtODEsMTEgKzgxLDEzIEBA
IHZvaWQgV2ViUGFnZTo6cGxhdGZvcm1EaWRSZWNlaXZlTG9hZFBhcmFtZXRlcnMoY29uc3QgTG9h
ZFBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiAKICAgICBtX2RhdGFEZXRlY3Rpb25Db250ZXh0ID0g
cGFyYW1ldGVycy5kYXRhRGV0ZWN0aW9uQ29udGV4dDsKIAorI2lmIEVOQUJMRShDT05URU5UX0ZJ
TFRFUklORykKICAgICBpZiAocGFyYW1ldGVycy5uZUhlbHBlckV4dGVuc2lvbkhhbmRsZSkKICAg
ICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KCpwYXJhbWV0ZXJzLm5l
SGVscGVyRXh0ZW5zaW9uSGFuZGxlKTsKICAgICBpZiAocGFyYW1ldGVycy5uZVNlc3Npb25NYW5h
Z2VyRXh0ZW5zaW9uSGFuZGxlKQogICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1lUGVy
bWFuZW50bHkoKnBhcmFtZXRlcnMubmVTZXNzaW9uTWFuYWdlckV4dGVuc2lvbkhhbmRsZSk7CiAg
ICAgTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXI6OnNldEhhc0NvbnN1bWVkU2FuZGJveEV4
dGVuc2lvbnMocGFyYW1ldGVycy5uZUhlbHBlckV4dGVuc2lvbkhhbmRsZS5oYXNWYWx1ZSgpICYm
IHBhcmFtZXRlcnMubmVTZXNzaW9uTWFuYWdlckV4dGVuc2lvbkhhbmRsZS5oYXNWYWx1ZSgpKTsK
KyNlbmRpZgogCiAjaWYgUExBVEZPUk0oSU9TKQogICAgIGlmIChwYXJhbWV0ZXJzLmNvbnRlbnRG
aWx0ZXJFeHRlbnNpb25IYW5kbGUpCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29s
cy9DaGFuZ2VMb2cKaW5kZXggYzQ0ZDllOGRlNTIyY2Q2OTU4YzY0NDg4NWE5N2ViMWU4OTI0Mjll
YS4uYzBlODlkNGNjZDg2ODdiOGVhYWY2NGNiMDg4MmVmMjI3ODU5MzI3ZiAxMDA2NDQKLS0tIGEv
VG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisy
MDIwLTEwLTI5ICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KKworICAgICAg
ICBbQ29jb2FdIFJlbW92ZSBzb2Z0IGxpbmtpbmcgb2YgTmV0d29ya0V4dGVuc2lvbi5mcmFtZXdv
cmsKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODMx
NAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzA3ODUyMzk+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlZCBhIHRlc3QgdG8gcmVmbGVjdCB0
aGF0IE5ldHdvcmtFeHRlbnNpb24uZnJhbWV3b3JrIGlzIG5vIGxvbmdlcgorICAgICAgICBsb2Fk
ZWQgYXQgcnVudGltZS4gVGhpcyB0ZXN0IHdhcyBmYWlsaW5nIG9uIENhdGFsaW5hIGFmdGVyIHIy
NjkxMDksCisgICAgICAgIGFzIHRoZSBDb250YWN0cyBmcmFtZXdvcmsgd2FzIGxvYWRpbmcgTmV0
d29ya0V4dGVuc2lvbi4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29j
b2EvQ29udGVudEZpbHRlcmluZy5oOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Q29jb2EvQ29udGVudEZpbHRlcmluZy5tbToKKyAgICAgICAgKC1bTGF6aWx5TG9hZFBsYXRm
b3JtRnJhbWV3b3Jrc0NvbnRyb2xsZXIgZXhwZWN0UGFyZW50YWxDb250cm9sc0xvYWRlZDpdKToK
KyAgICAgICAgKFRFU1QpOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29j
b2EvQ29udGVudEZpbHRlcmluZ1BsdWdJbi5tbToKKyAgICAgICAgKC1bQ29udGVudEZpbHRlcmlu
Z1BsdWdJbiBjaGVja0lmUGxhdGZvcm1GcmFtZXdvcmtzQXJlTG9hZGVkOl0pOgorCiAyMDIwLTEw
LTI2ICBBZGl0eWEgS2VlcnRoaSAgPGFrZWVydGhpQGFwcGxlLmNvbT4KIAogICAgICAgICBbQ29u
dGFjdCBQaWNrZXIgQVBJXSBBZGQgc3VwcG9ydCBmb3IgcGlja2VyIFVJIG9uIGlPUwpkaWZmIC0t
Z2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Db250ZW50RmlsdGVy
aW5nLmggYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0
ZXJpbmcuaAppbmRleCA5ZDViNWQ0MzM2NWQ5YWZiMzk5NzcwMGE3MTk4ZjY1OTlmMzdkOTBmLi4w
ZjhlZTJhODNhNjQ0NzE5NmM2MDVkMjBjMzk2ZjcwMzY5Y2I2ODcwIDEwMDY0NAotLS0gYS9Ub29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmcuaAorKysg
Yi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmcu
aApAQCAtMjQsNSArMjQsNSBAQAogICovCiAKIEBwcm90b2NvbCBDb250ZW50RmlsdGVyaW5nUHJv
dG9jb2wgPE5TT2JqZWN0PgotLSAodm9pZCljaGVja0lmUGxhdGZvcm1GcmFtZXdvcmtzQXJlTG9h
ZGVkOih2b2lkICheKShCT09MIHBhcmVudGFsQ29udHJvbHNMb2FkZWQsIEJPT0wgbmV0d29ya0V4
dGVuc2lvbkxvYWRlZCkpY29tcGxldGlvbkhhbmRsZXI7CistICh2b2lkKWNoZWNrSWZQbGF0Zm9y
bUZyYW1ld29ya3NBcmVMb2FkZWQ6KHZvaWQgKF4pKEJPT0wgcGFyZW50YWxDb250cm9sc0xvYWRl
ZCkpY29tcGxldGlvbkhhbmRsZXI7CiBAZW5kCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmcubW0gYi9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmcubW0KaW5kZXggODU2YmRl
NGIxZTkzYTIwMTEyNDI4YzgyNDUzYjZlZjcxMTU0N2Q5Zi4uNDMzOTEzMTEwMWYyY2RkOTUwOTg2
N2VmZTk0NGY2ZTc3ZWYzOWVkYiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXRDb2NvYS9Db250ZW50RmlsdGVyaW5nLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvV2ViS2l0Q29jb2EvQ29udGVudEZpbHRlcmluZy5tbQpAQCAtMzM2LDcgKzMzNiw3
IEBAIFRFU1QoQ29udGVudEZpbHRlcmluZywgTG9hZEFsdGVybmF0ZUFmdGVyRmluaXNoZWRBZGRp
bmdEYXRhV0syKQogCiBAaW50ZXJmYWNlIExhemlseUxvYWRQbGF0Zm9ybUZyYW1ld29ya3NDb250
cm9sbGVyIDogTlNPYmplY3QgPFdLTmF2aWdhdGlvbkRlbGVnYXRlPgogQHByb3BlcnR5IChub25h
dG9taWMsIHJlYWRvbmx5KSBXS1dlYlZpZXcgKndlYlZpZXc7Ci0tICh2b2lkKWV4cGVjdFBhcmVu
dGFsQ29udHJvbHNMb2FkZWQ6KEJPT0wpcGFyZW50YWxDb250cm9sc1Nob3VsZEJlTG9hZGVkIG5l
dHdvcmtFeHRlbnNpb25Mb2FkZWQ6KEJPT0wpbmV0d29ya0V4dGVuc2lvblNob3VsZEJlTG9hZGVk
OworLSAodm9pZClleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOihCT09MKXBhcmVudGFsQ29u
dHJvbHNTaG91bGRCZUxvYWRlZDsKIEBlbmQKIAogQGltcGxlbWVudGF0aW9uIExhemlseUxvYWRQ
bGF0Zm9ybUZyYW1ld29ya3NDb250cm9sbGVyIHsKQEAgLTM2NCwxNCArMzY0LDEzIEBAIC0gKFdL
V2ViVmlldyAqKXdlYlZpZXcKICAgICByZXR1cm4gX3dlYlZpZXcuZ2V0KCk7CiB9CiAKLS0gKHZv
aWQpZXhwZWN0UGFyZW50YWxDb250cm9sc0xvYWRlZDooQk9PTClwYXJlbnRhbENvbnRyb2xzU2hv
dWxkQmVMb2FkZWQgbmV0d29ya0V4dGVuc2lvbkxvYWRlZDooQk9PTCluZXR3b3JrRXh0ZW5zaW9u
U2hvdWxkQmVMb2FkZWQKKy0gKHZvaWQpZXhwZWN0UGFyZW50YWxDb250cm9sc0xvYWRlZDooQk9P
TClwYXJlbnRhbENvbnRyb2xzU2hvdWxkQmVMb2FkZWQKIHsKICAgICBpc0RvbmUgPSBmYWxzZTsK
LSAgICBbX3JlbW90ZU9iamVjdFByb3h5IGNoZWNrSWZQbGF0Zm9ybUZyYW1ld29ya3NBcmVMb2Fk
ZWQ6XihCT09MIHBhcmVudGFsQ29udHJvbHNMb2FkZWQsIEJPT0wgbmV0d29ya0V4dGVuc2lvbkxv
YWRlZCkgeworICAgIFtfcmVtb3RlT2JqZWN0UHJveHkgY2hlY2tJZlBsYXRmb3JtRnJhbWV3b3Jr
c0FyZUxvYWRlZDpeKEJPT0wgcGFyZW50YWxDb250cm9sc0xvYWRlZCkgewogI2lmIEhBVkUoUEFS
RU5UQUxfQ09OVFJPTFMpCiAgICAgICAgIEVYUEVDVF9FUShzdGF0aWNfY2FzdDxib29sPihwYXJl
bnRhbENvbnRyb2xzU2hvdWxkQmVMb2FkZWQpLCBzdGF0aWNfY2FzdDxib29sPihwYXJlbnRhbENv
bnRyb2xzTG9hZGVkKSk7CiAjZW5kaWYKLSAgICAgICAgRVhQRUNUX0VRKHN0YXRpY19jYXN0PGJv
b2w+KG5ldHdvcmtFeHRlbnNpb25TaG91bGRCZUxvYWRlZCksIHN0YXRpY19jYXN0PGJvb2w+KG5l
dHdvcmtFeHRlbnNpb25Mb2FkZWQpKTsKICAgICAgICAgaXNEb25lID0gdHJ1ZTsKICAgICB9XTsK
ICAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmlzRG9uZSk7CkBAIC00MDYsMjkgKzQwNSwy
OSBAQCBURVNUKENvbnRlbnRGaWx0ZXJpbmcsIExhemlseUxvYWRQbGF0Zm9ybUZyYW1ld29ya3Mp
CiAKICAgICBAYXV0b3JlbGVhc2Vwb29sIHsKICAgICAgICAgYXV0byBjb250cm9sbGVyID0gYWRv
cHROUyhbW0xhemlseUxvYWRQbGF0Zm9ybUZyYW1ld29ya3NDb250cm9sbGVyIGFsbG9jXSBpbml0
XSk7Ci0gICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6Tk8g
bmV0d29ya0V4dGVuc2lvbkxvYWRlZDpOT107CisgICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBh
cmVudGFsQ29udHJvbHNMb2FkZWQ6Tk9dOwogCiAgICAgICAgIGlzRG9uZSA9IGZhbHNlOwogICAg
ICAgICBbW2NvbnRyb2xsZXIgd2ViVmlld10gbG9hZEhUTUxTdHJpbmc6QCJQQVNTIiBiYXNlVVJM
OltOU1VSTCBVUkxXaXRoU3RyaW5nOkAiYWJvdXQ6YmxhbmsiXV07CiAgICAgICAgIFRlc3RXZWJL
aXRBUEk6OlV0aWw6OnJ1bigmaXNEb25lKTsKLSAgICAgICAgW2NvbnRyb2xsZXIgZXhwZWN0UGFy
ZW50YWxDb250cm9sc0xvYWRlZDpOTyBuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkOk5PXTsKKyAgICAg
ICAgW2NvbnRyb2xsZXIgZXhwZWN0UGFyZW50YWxDb250cm9sc0xvYWRlZDpOT107CiAKICAgICAg
ICAgaXNEb25lID0gZmFsc2U7CiAgICAgICAgIFtbY29udHJvbGxlciB3ZWJWaWV3XSBsb2FkRGF0
YTpbTlNEYXRhIGRhdGFXaXRoQnl0ZXM6IlBBU1MiIGxlbmd0aDo0XSBNSU1FVHlwZTpAInRleHQv
aHRtbCIgY2hhcmFjdGVyRW5jb2RpbmdOYW1lOkAiVVRGLTgiIGJhc2VVUkw6W05TVVJMIFVSTFdp
dGhTdHJpbmc6QCJhYm91dDpibGFuayJdXTsKICAgICAgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6
cnVuKCZpc0RvbmUpOwotICAgICAgICBbY29udHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRyb2xz
TG9hZGVkOk5PIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQ6Tk9dOworICAgICAgICBbY29udHJvbGxl
ciBleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOk5PXTsKIAogICAgICAgICBpc0RvbmUgPSBm
YWxzZTsKICAgICAgICAgTlNVUkwgKmZpbGVVUkwgPSBbW05TQnVuZGxlIG1haW5CdW5kbGVdIFVS
TEZvclJlc291cmNlOkAiQ29udGVudEZpbHRlcmluZyIgd2l0aEV4dGVuc2lvbjpAImh0bWwiIHN1
YmRpcmVjdG9yeTpAIlRlc3RXZWJLaXRBUEkucmVzb3VyY2VzIl07CiAgICAgICAgIFtbY29udHJv
bGxlciB3ZWJWaWV3XSBsb2FkRmlsZVVSTDpmaWxlVVJMIGFsbG93aW5nUmVhZEFjY2Vzc1RvVVJM
OmZpbGVVUkxdOwogICAgICAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmlzRG9uZSk7Ci0g
ICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6Tk8gbmV0d29y
a0V4dGVuc2lvbkxvYWRlZDpOT107CisgICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFs
Q29udHJvbHNMb2FkZWQ6Tk9dOwogCiAgICAgICAgIGlzRG9uZSA9IGZhbHNlOwogICAgICAgICBb
VGVzdFByb3RvY29sIHJlZ2lzdGVyV2l0aFNjaGVtZTpAImN1c3RvbSJdOwogICAgICAgICBbW2Nv
bnRyb2xsZXIgd2ViVmlld10gbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVS
TDpbTlNVUkwgVVJMV2l0aFN0cmluZzpAImN1c3RvbTovL3Rlc3QiXV1dOwogICAgICAgICBUZXN0
V2ViS2l0QVBJOjpVdGlsOjpydW4oJmlzRG9uZSk7Ci0gICAgICAgIFtjb250cm9sbGVyIGV4cGVj
dFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6Tk8gbmV0d29ya0V4dGVuc2lvbkxvYWRlZDpOT107Cisg
ICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6Tk9dOwogICAg
ICAgICBbVGVzdFByb3RvY29sIHVucmVnaXN0ZXJdOwogCiAgICAgICAgIGlzRG9uZSA9IGZhbHNl
OwpAQCAtNDM2LDkgKzQzNSw5IEBAIFRFU1QoQ29udGVudEZpbHRlcmluZywgTGF6aWx5TG9hZFBs
YXRmb3JtRnJhbWV3b3JrcykKICAgICAgICAgW1tjb250cm9sbGVyIHdlYlZpZXddIGxvYWRSZXF1
ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6W05TVVJMIFVSTFdpdGhTdHJpbmc6QCJo
dHRwOi8vdGVzdCJdXV07CiAgICAgICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmaXNEb25l
KTsKICNpZiBQTEFURk9STShNQUMpCi0gICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFs
Q29udHJvbHNMb2FkZWQ6Tk8gbmV0d29ya0V4dGVuc2lvbkxvYWRlZDpZRVNdOworICAgICAgICBb
Y29udHJvbGxlciBleHBlY3RQYXJlbnRhbENvbnRyb2xzTG9hZGVkOk5PXTsKICNlbHNlCi0gICAg
ICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6WUVTIG5ldHdvcmtF
eHRlbnNpb25Mb2FkZWQ6WUVTXTsKKyAgICAgICAgW2NvbnRyb2xsZXIgZXhwZWN0UGFyZW50YWxD
b250cm9sc0xvYWRlZDpZRVNdOwogI2VuZGlmCiAgICAgICAgIFtUZXN0UHJvdG9jb2wgdW5yZWdp
c3Rlcl07CiAKQEAgLTQ0Nyw3ICs0NDYsNyBAQCBURVNUKENvbnRlbnRGaWx0ZXJpbmcsIExhemls
eUxvYWRQbGF0Zm9ybUZyYW1ld29ya3MpCiAgICAgICAgIFtUZXN0UHJvdG9jb2wgcmVnaXN0ZXJX
aXRoU2NoZW1lOkAiaHR0cHMiXTsKICAgICAgICAgW1tjb250cm9sbGVyIHdlYlZpZXddIGxvYWRS
ZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6W05TVVJMIFVSTFdpdGhTdHJpbmc6
QCJodHRwczovL3Rlc3QiXV1dOwogICAgICAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmlz
RG9uZSk7Ci0gICAgICAgIFtjb250cm9sbGVyIGV4cGVjdFBhcmVudGFsQ29udHJvbHNMb2FkZWQ6
WUVTIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQ6WUVTXTsKKyAgICAgICAgW2NvbnRyb2xsZXIgZXhw
ZWN0UGFyZW50YWxDb250cm9sc0xvYWRlZDpZRVNdOwogICAgICAgICBbVGVzdFByb3RvY29sIHVu
cmVnaXN0ZXJdOwogI2VuZGlmCiAgICAgfQpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXRDb2NvYS9Db250ZW50RmlsdGVyaW5nUGx1Z0luLm1tIGIvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Db250ZW50RmlsdGVyaW5nUGx1Z0luLm1tCmlu
ZGV4IDM2NTM0MTMwMzEzYzQyMzM1ODNmMzY0NDhhNTc3YmMyMDliZjk5MDcuLjVkZmY4Mjc0Y2Zk
MGE2YTZhZWFmZDMxOWNhMzI4M2JlYzhkYjY0ZmMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvQ29udGVudEZpbHRlcmluZ1BsdWdJbi5tbQorKysgYi9U
b29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0NvbnRlbnRGaWx0ZXJpbmdQbHVn
SW4ubW0KQEAgLTExMywxNSArMTEzLDE0IEBAIC0gKHZvaWQpb2JzZXJ2ZVZhbHVlRm9yS2V5UGF0
aDooTlNTdHJpbmcgKilrZXlQYXRoIG9mT2JqZWN0OihpZClvYmplY3QgY2hhbmdlOihOCiAgICAg
X2NvbnRlbnRGaWx0ZXJFbmFibGVyID0gY29udGVudEZpbHRlckVuYWJsZXI7CiB9CiAKLS0gKHZv
aWQpY2hlY2tJZlBsYXRmb3JtRnJhbWV3b3Jrc0FyZUxvYWRlZDoodm9pZCAoXikoQk9PTCBwYXJl
bnRhbENvbnRyb2xzTG9hZGVkLCBCT09MIG5ldHdvcmtFeHRlbnNpb25Mb2FkZWQpKWNvbXBsZXRp
b25IYW5kbGVyCistICh2b2lkKWNoZWNrSWZQbGF0Zm9ybUZyYW1ld29ya3NBcmVMb2FkZWQ6KHZv
aWQgKF4pKEJPT0wgcGFyZW50YWxDb250cm9sc0xvYWRlZCkpY29tcGxldGlvbkhhbmRsZXIKIHsK
ICAgICBib29sIHBhcmVudGFsQ29udHJvbHNMb2FkZWQgPSBmYWxzZTsKICNpZiBIQVZFKFBBUkVO
VEFMX0NPTlRST0xTKQogICAgIHBhcmVudGFsQ29udHJvbHNMb2FkZWQgPSBOU1ZlcnNpb25PZlJ1
blRpbWVMaWJyYXJ5KCJXZWJDb250ZW50QW5hbHlzaXMiKSAhPSAtMTsKICNlbmRpZgogCi0gICAg
Ym9vbCBuZXR3b3JrRXh0ZW5zaW9uTG9hZGVkID0gbmV0d29ya0V4dGVuc2lvbkxvYWRlZCA9IE5T
VmVyc2lvbk9mUnVuVGltZUxpYnJhcnkoIk5ldHdvcmtFeHRlbnNpb24iKSAhPSAtMTsKLSAgICBj
b21wbGV0aW9uSGFuZGxlcihwYXJlbnRhbENvbnRyb2xzTG9hZGVkLCBuZXR3b3JrRXh0ZW5zaW9u
TG9hZGVkKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcihwYXJlbnRhbENvbnRyb2xzTG9hZGVkKTsK
IH0KIAogQGVuZAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>