<?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>192337</bug_id>
          
          <creation_ts>2018-12-03 15:10:36 -0800</creation_ts>
          <short_desc>Regression(PSON) Google OAuth is broken in private sessions</short_desc>
          <delta_ts>2018-12-04 09:24:55 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>192362</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>koivisto</cc>
    
    <cc>mkwst</cc>
    
    <cc>rniwa</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1484551</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-12-03 15:10:36 -0800</bug_when>
    <thetext>Google OAuth is broken in private sessions when enabling PSON.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1484552</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-12-03 15:10:50 -0800</bug_when>
    <thetext>&lt;rdar://problem/46353558&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1484564</commentid>
    <comment_count>2</comment_count>
      <attachid>356418</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-12-03 15:16:12 -0800</bug_when>
    <thetext>Created attachment 356418
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1484567</commentid>
    <comment_count>3</comment_count>
      <attachid>356418</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-12-03 15:21:14 -0800</bug_when>
    <thetext>Comment on attachment 356418
Patch

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

&gt; Source/WebKit/UIProcess/WebProcessProxy.h:121
&gt; +    enum class BeginsUsingDataStore { No, Yes };

: bool

&gt; Source/WebKit/UIProcess/WebProcessProxy.h:124
&gt; +    enum class EndsUsingDataStore { No, Yes };

: bool</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1484569</commentid>
    <comment_count>4</comment_count>
      <attachid>356420</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-12-03 15:27:15 -0800</bug_when>
    <thetext>Created attachment 356420
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1484590</commentid>
    <comment_count>5</comment_count>
      <attachid>356429</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-12-03 16:06:35 -0800</bug_when>
    <thetext>Created attachment 356429
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1484591</commentid>
    <comment_count>6</comment_count>
      <attachid>356429</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-12-03 16:08:48 -0800</bug_when>
    <thetext>Comment on attachment 356429
Patch

Clearing flags on attachment: 356429

Committed r238828: &lt;https://trac.webkit.org/changeset/238828&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1484592</commentid>
    <comment_count>7</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-12-03 16:08:50 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1484851</commentid>
    <comment_count>8</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2018-12-04 09:19:02 -0800</bug_when>
    <thetext>The API test added in this change is failing on macOS and iOS bots:

    TestWebKitAPI.ProcessSwap.UseSessionCookiesAfterProcessSwapInPrivateBrowsing
        Received data during response processing, queuing it.
        LEAK: 1 WebProcessPool
        
        /Volumes/Data/slave/highsierra-debug/build/Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:3045
        Expected equality of these values:
          @&quot;foo=bar&quot;
            Which is: &quot;foo=bar&quot;
          receivedMessages.get()[0]
            Which is: &quot;&quot;

https://build.webkit.org/builders/Apple%20High%20Sierra%20Debug%20WK2%20(Tests)/builds/5800/steps/run-api-tests/logs/stdio</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1484856</commentid>
    <comment_count>9</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-12-04 09:24:55 -0800</bug_when>
    <thetext>(In reply to Ryan Haddad from comment #8)
&gt; The API test added in this change is failing on macOS and iOS bots:
&gt; 
&gt;    
&gt; TestWebKitAPI.ProcessSwap.UseSessionCookiesAfterProcessSwapInPrivateBrowsing
&gt;         Received data during response processing, queuing it.
&gt;         LEAK: 1 WebProcessPool
&gt;         
&gt;        
&gt; /Volumes/Data/slave/highsierra-debug/build/Tools/TestWebKitAPI/Tests/
&gt; WebKitCocoa/ProcessSwapOnNavigation.mm:3045
&gt;         Expected equality of these values:
&gt;           @&quot;foo=bar&quot;
&gt;             Which is: &quot;foo=bar&quot;
&gt;           receivedMessages.get()[0]
&gt;             Which is: &quot;&quot;
&gt; 
&gt; https://build.webkit.org/builders/
&gt; Apple%20High%20Sierra%20Debug%20WK2%20(Tests)/builds/5800/steps/run-api-
&gt; tests/logs/stdio

I am investigating via Bug 192362.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>356418</attachid>
            <date>2018-12-03 15:16:12 -0800</date>
            <delta_ts>2018-12-03 15:27:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192337-20181203151611.patch</filename>
            <type>text/plain</type>
            <size>18501</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4ODA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDE4YmI2YWQ2ODI4Zjk2OWJl
NzI3MmE1YzdlMmVmNTYxMGIwZWExMTIuLmRmYjg3MzdhYTY2YmVlMWIzNzFkZDZhZjZkYWE0Nzc2
YTJkZWRlMzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzQgQEAKKzIwMTgtMTItMDMgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBSZWdyZXNzaW9uKFBTT04pIEdvb2ds
ZSBPQXV0aCBpcyBicm9rZW4gaW4gcHJpdmF0ZSBzZXNzaW9ucworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkyMzM3CisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS80NjM1MzU1OD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBJbiBXZWJQYWdlUHJveHk6OnN3YXBUb1dlYlByb2Nlc3MoKSwgd2Ugd291bGQgY2Fs
bCByZW1vdmVXZWJQYWdlKCkgb24gdGhlIG9sZCBXZWJQcm9jZXNzUHJveHkgYW5kIHRoZW4KKyAg
ICAgICAgYWRkRXhpc3RpbmdXZWJQYWdlKCkgb24gdGhlIG5ldyBXZWJQcm9jZXNzUHJveHksIGFz
IHlvdSB3b3VsZCBleHBlY3QgaW4gY2FzZSBvZiBwcm9jZXNzIHN3YXAuCisKKyAgICAgICAgVGhl
IGlzc3VlIGlzIHRoYXQgV2ViUHJvY2Vzc1Byb3h5OjpyZW1vdmVXZWJQYWdlKCkgY2FsbHMgV2Vi
UHJvY2Vzc1Bvb2w6OnBhZ2VFbmRVc2luZ1dlYnNpdGVEYXRhU3RvcmUoKQorICAgICAgICB3aGlj
aCB3b3VsZCBjYXVzZSB0aGUgc2Vzc2lvbiB0byBnZXQgZGVzdHJveWVkIGFzc3VtaW5nIHRoaXMg
d2FzIHRoZSBsYXN0IHBhZ2UgdXNpbmcgaXQuIFdlIHdvdWxkCisgICAgICAgIHRoZXJlZm9yZSBs
b3NlIHNlc3Npb24gY29va2llcyBhZnRlciBhIHByb2Nlc3Mtc3dhcCBpbiBwcml2YXRlIHNlc3Np
b24uCisKKyAgICAgICAgVG8gYWRkcmVzcyB0aGUgaXNzdWUsIGEgcGFyYW1ldGVyIHRvIFdlYlBy
b2Nlc3NQb29sOjpwYWdlRW5kVXNpbmdXZWJzaXRlRGF0YVN0b3JlKCkgYW5kCisgICAgICAgIFdl
YlByb2Nlc3NQb29sOjpwYWdlQmVnaW5Vc2luZ1dlYnNpdGVEYXRhU3RvcmUoKSB0byBjb250cm9s
IGlmIHdlIHdhbnQgdG8gdGVsbCB0aGUgV2ViUHJvY2Vzc1Bvb2wKKyAgICAgICAgYWJvdXQgdGhl
IHBhZ2UgYmVnaW5uaW5nIC8gZW5kaW5nIGl0cyB1c2Ugb2YgdGhlIHNlc3Npb24uIEluIHRoZSBj
YXNlIG9mIGEgcHJvY2Vzcy1zd2FwLCB3ZSBtYWtlCisgICAgICAgIHN1cmUgdGhlIHByb2Nlc3Mg
cG9vbCBpcyBub3Qgbm90aWZpZWQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpyZWF0dGFjaFRvV2ViUHJvY2Vz
cyk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6c3dhcFRvV2ViUHJvY2Vzcyk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZmluaXNoQXR0YWNoaW5nVG9XZWJQcm9jZXNz
KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpjbG9zZSk6CisgICAgICAgICogVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQ
cm94eTo6Y3JlYXRlV2ViUGFnZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6
YWRkRXhpc3RpbmdXZWJQYWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5Ojpy
ZW1vdmVXZWJQYWdlKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5Lmg6CisK
IDIwMTgtMTItMDMgIFl1c3VrZSBTdXp1a2kgIDx5dXN1a2VzdXp1a2lAc2xvd3N0YXJ0Lm9yZz4K
IAogICAgICAgICBVc2UgV2FsbFRpbWUgZm9yIGZpbGUgdGltZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggMWEzMzc5ZTRlNGEzMzExNGMwZDg0YmUzNmJkM2M2
MjcwYWUyMWJhYy4uYmU5YTljZWI2MWY1ZWVlNzA0MDhlYWFhMmJkMjdiZTMwMWNmMGZjNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC03MjcsMTMgKzcyNywx
NiBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6cmVhdHRhY2hUb1dlYlByb2Nlc3MoKQogICAgIEFTU0VS
VCghaXNWYWxpZCgpKTsKICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEKFByb2Nlc3MsICIlcCBX
ZWJQYWdlUHJveHk6OnJlYXR0YWNoVG9XZWJQcm9jZXNzXG4iLCB0aGlzKTsKIAotICAgIG1fcHJv
Y2Vzcy0+cmVtb3ZlV2ViUGFnZSgqdGhpcywgbV9wYWdlSUQpOworICAgIG1fcHJvY2Vzcy0+cmVt
b3ZlV2ViUGFnZSgqdGhpcywgbV9wYWdlSUQsIFdlYlByb2Nlc3NQcm94eTo6RW5kc1VzaW5nRGF0
YVN0b3JlOjpZZXMpOwogICAgIG1fcHJvY2Vzcy0+cmVtb3ZlTWVzc2FnZVJlY2VpdmVyKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9wYWdlSUQpOwogCiAg
ICAgYXV0byYgcHJvY2Vzc1Bvb2wgPSBtX3Byb2Nlc3MtPnByb2Nlc3NQb29sKCk7CiAgICAgbV9w
cm9jZXNzID0gcHJvY2Vzc1Bvb2wuY3JlYXRlTmV3V2ViUHJvY2Vzc1Jlc3BlY3RpbmdQcm9jZXNz
Q291bnRMaW1pdChtX3dlYnNpdGVEYXRhU3RvcmUuZ2V0KCkpOwogICAgIG1faXNWYWxpZCA9IHRy
dWU7CiAKKyAgICBtX3Byb2Nlc3MtPmFkZEV4aXN0aW5nV2ViUGFnZSgqdGhpcywgbV9wYWdlSUQs
IFdlYlByb2Nlc3NQcm94eTo6QmVnaW5zVXNpbmdEYXRhU3RvcmU6Olllcyk7CisgICAgbV9wcm9j
ZXNzLT5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6bWVzc2FnZVJl
Y2VpdmVyTmFtZSgpLCBtX3BhZ2VJRCwgKnRoaXMpOworCiAgICAgZmluaXNoQXR0YWNoaW5nVG9X
ZWJQcm9jZXNzKCk7CiB9CiAKQEAgLTc3NSw3ICs3NzgsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6
c3dhcFRvV2ViUHJvY2VzcyhSZWY8V2ViUHJvY2Vzc1Byb3h5PiYmIHByb2Nlc3MsIEFQSTo6TmF2
aWdhdAogCiAgICAgICAgIG1fcHJvY2Vzcy0+cmVtb3ZlTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2Vz
OjpXZWJQYWdlUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9wYWdlSUQpOwogICAgICAg
ICBib29sIGRpZFN1c3BlbmRQcmV2aW91c1BhZ2UgPSBzdXNwZW5kQ3VycmVudFBhZ2VJZlBvc3Np
YmxlKG5hdmlnYXRpb24sIG1haW5GcmFtZUlESW5QcmV2aW91c1Byb2Nlc3MpOwotICAgICAgICBt
X3Byb2Nlc3MtPnJlbW92ZVdlYlBhZ2UoKnRoaXMsIG1fcGFnZUlEKTsKKyAgICAgICAgbV9wcm9j
ZXNzLT5yZW1vdmVXZWJQYWdlKCp0aGlzLCBtX3BhZ2VJRCwgV2ViUHJvY2Vzc1Byb3h5OjpFbmRz
VXNpbmdEYXRhU3RvcmU6Ok5vKTsKIAogICAgICAgICBtX3Byb2Nlc3MgPSBXVEZNb3ZlKHByb2Nl
c3MpOwogICAgICAgICBtX2lzVmFsaWQgPSB0cnVlOwpAQCAtNzkxLDYgKzc5NCw5IEBAIHZvaWQg
V2ViUGFnZVByb3h5Ojpzd2FwVG9XZWJQcm9jZXNzKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYgcHJv
Y2VzcywgQVBJOjpOYXZpZ2F0CiAgICAgICAgICAgICBtX3Byb2Nlc3MtPmZyYW1lQ3JlYXRlZChk
ZXN0aW5hdGlvblN1c3BlbmRlZFBhZ2UtPm1haW5GcmFtZUlEKCksICptX21haW5GcmFtZSk7CiAg
ICAgICAgIH0KIAorICAgICAgICBtX3Byb2Nlc3MtPmFkZEV4aXN0aW5nV2ViUGFnZSgqdGhpcywg
bV9wYWdlSUQsIFdlYlByb2Nlc3NQcm94eTo6QmVnaW5zVXNpbmdEYXRhU3RvcmU6Ok5vKTsKKyAg
ICAgICAgbV9wcm9jZXNzLT5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3BhZ2VJRCwgKnRoaXMpOworCiAgICAgICAgIGZp
bmlzaEF0dGFjaGluZ1RvV2ViUHJvY2VzcyhkaWRTdXNwZW5kUHJldmlvdXNQYWdlID8gU2hvdWxk
RGVsYXlBdHRhY2hpbmdEcmF3aW5nQXJlYTo6WWVzIDogU2hvdWxkRGVsYXlBdHRhY2hpbmdEcmF3
aW5nQXJlYTo6Tm8pOwogICAgICAgICBjb21wbGV0aW9uSGFuZGxlcigpOwogICAgIH07CkBAIC04
MTAsOSArODE2LDYgQEAgdm9pZCBXZWJQYWdlUHJveHk6OmZpbmlzaEF0dGFjaGluZ1RvV2ViUHJv
Y2VzcyhTaG91bGREZWxheUF0dGFjaGluZ0RyYXdpbmdBcmVhIHMKICAgICAgICAgcHJvY2Vzc0Rp
ZEZpbmlzaExhdW5jaGluZygpOwogICAgIH0KIAotICAgIG1fcHJvY2Vzcy0+YWRkRXhpc3RpbmdX
ZWJQYWdlKCp0aGlzLCBtX3BhZ2VJRCk7Ci0gICAgbV9wcm9jZXNzLT5hZGRNZXNzYWdlUmVjZWl2
ZXIoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3BhZ2VJ
RCwgKnRoaXMpOwotCiAgICAgdXBkYXRlQWN0aXZpdHlTdGF0ZSgpOwogICAgIHVwZGF0ZVRocm90
dGxlU3RhdGUoKTsKIApAQCAtOTkxLDcgKzk5NCw3IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpjbG9z
ZSgpCiAgICAgbV9wcm9jZXNzLT5wcm9jZXNzUG9vbCgpLnJlbW92ZUFsbFN1c3BlbmRlZFBhZ2Vz
Rm9yUGFnZSgqdGhpcyk7CiAKICAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6
OkNsb3NlKCksIG1fcGFnZUlEKTsKLSAgICBtX3Byb2Nlc3MtPnJlbW92ZVdlYlBhZ2UoKnRoaXMs
IG1fcGFnZUlEKTsKKyAgICBtX3Byb2Nlc3MtPnJlbW92ZVdlYlBhZ2UoKnRoaXMsIG1fcGFnZUlE
LCBXZWJQcm9jZXNzUHJveHk6OkVuZHNVc2luZ0RhdGFTdG9yZTo6WWVzKTsKICAgICBtX3Byb2Nl
c3MtPnJlbW92ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViUGFnZVByb3h5OjptZXNzYWdl
UmVjZWl2ZXJOYW1lKCksIG1fcGFnZUlEKTsKICAgICBtX3Byb2Nlc3MtPnByb2Nlc3NQb29sKCku
c3VwcGxlbWVudDxXZWJOb3RpZmljYXRpb25NYW5hZ2VyUHJveHk+KCktPmNsZWFyTm90aWZpY2F0
aW9ucyh0aGlzKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJv
Y2Vzc1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5j
cHAKaW5kZXggY2M3NDAxMTZmYzNkNzA3ODZlYmYyMmIxNzNkMTQ2Nzg2YTgzZGZmMi4uM2U1MzI4
MTE0YzMxNDUyMDBkNmViZjU3ZThhMzI5N2NmNDRiMmVkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCkBAIC00MjgsMTcgKzQyOCwxOCBAQCBSZWY8V2Vi
UGFnZVByb3h5PiBXZWJQcm9jZXNzUHJveHk6OmNyZWF0ZVdlYlBhZ2UoUGFnZUNsaWVudCYgcGFn
ZUNsaWVudCwgUmVmPEFQSQogICAgIHVpbnQ2NF90IHBhZ2VJRCA9IGdlbmVyYXRlUGFnZUlEKCk7
CiAgICAgUmVmPFdlYlBhZ2VQcm94eT4gd2ViUGFnZSA9IFdlYlBhZ2VQcm94eTo6Y3JlYXRlKHBh
Z2VDbGllbnQsICp0aGlzLCBwYWdlSUQsIFdURk1vdmUocGFnZUNvbmZpZ3VyYXRpb24pKTsKIAot
ICAgIGFkZEV4aXN0aW5nV2ViUGFnZSh3ZWJQYWdlLmdldCgpLCBwYWdlSUQpOworICAgIGFkZEV4
aXN0aW5nV2ViUGFnZSh3ZWJQYWdlLmdldCgpLCBwYWdlSUQsIEJlZ2luc1VzaW5nRGF0YVN0b3Jl
OjpZZXMpOwogCiAgICAgcmV0dXJuIHdlYlBhZ2U7CiB9CiAKLXZvaWQgV2ViUHJvY2Vzc1Byb3h5
OjphZGRFeGlzdGluZ1dlYlBhZ2UoV2ViUGFnZVByb3h5JiB3ZWJQYWdlLCB1aW50NjRfdCBwYWdl
SUQpCit2b2lkIFdlYlByb2Nlc3NQcm94eTo6YWRkRXhpc3RpbmdXZWJQYWdlKFdlYlBhZ2VQcm94
eSYgd2ViUGFnZSwgdWludDY0X3QgcGFnZUlELCBCZWdpbnNVc2luZ0RhdGFTdG9yZSBiZWdpbnNV
c2luZ0RhdGFTdG9yZSkKIHsKICAgICBBU1NFUlQoIW1fcGFnZU1hcC5jb250YWlucyhwYWdlSUQp
KTsKICAgICBBU1NFUlQoIWdsb2JhbFBhZ2VNYXAoKS5jb250YWlucyhwYWdlSUQpKTsKIAotICAg
IG1fcHJvY2Vzc1Bvb2wtPnBhZ2VCZWdpblVzaW5nV2Vic2l0ZURhdGFTdG9yZSh3ZWJQYWdlKTsK
KyAgICBpZiAoYmVnaW5zVXNpbmdEYXRhU3RvcmUgPT0gQmVnaW5zVXNpbmdEYXRhU3RvcmU6Olll
cykKKyAgICAgICAgbV9wcm9jZXNzUG9vbC0+cGFnZUJlZ2luVXNpbmdXZWJzaXRlRGF0YVN0b3Jl
KHdlYlBhZ2UpOwogCiAgICAgbV9wYWdlTWFwLnNldChwYWdlSUQsICZ3ZWJQYWdlKTsKICAgICBn
bG9iYWxQYWdlTWFwKCkuc2V0KHBhZ2VJRCwgJndlYlBhZ2UpOwpAQCAtNDU3LDE0ICs0NTgsMTUg
QEAgdm9pZCBXZWJQcm9jZXNzUHJveHk6Om1hcmtJc05vTG9uZ2VySW5QcmV3YXJtZWRQb29sKCkK
ICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzOjpNYXJrSXNOb0xvbmdlclByZXdhcm1lZCgp
LCAwKTsKIH0KIAotdm9pZCBXZWJQcm9jZXNzUHJveHk6OnJlbW92ZVdlYlBhZ2UoV2ViUGFnZVBy
b3h5JiB3ZWJQYWdlLCB1aW50NjRfdCBwYWdlSUQpCit2b2lkIFdlYlByb2Nlc3NQcm94eTo6cmVt
b3ZlV2ViUGFnZShXZWJQYWdlUHJveHkmIHdlYlBhZ2UsIHVpbnQ2NF90IHBhZ2VJRCwgRW5kc1Vz
aW5nRGF0YVN0b3JlIGVuZHNVc2luZ0RhdGFTdG9yZSkKIHsKICAgICBhdXRvKiByZW1vdmVkUGFn
ZSA9IG1fcGFnZU1hcC50YWtlKHBhZ2VJRCk7CiAgICAgQVNTRVJUX1VOVVNFRChyZW1vdmVkUGFn
ZSwgcmVtb3ZlZFBhZ2UgPT0gJndlYlBhZ2UpOwogICAgIHJlbW92ZWRQYWdlID0gZ2xvYmFsUGFn
ZU1hcCgpLnRha2UocGFnZUlEKTsKICAgICBBU1NFUlRfVU5VU0VEKHJlbW92ZWRQYWdlLCByZW1v
dmVkUGFnZSA9PSAmd2ViUGFnZSk7CiAKLSAgICBtX3Byb2Nlc3NQb29sLT5wYWdlRW5kVXNpbmdX
ZWJzaXRlRGF0YVN0b3JlKHdlYlBhZ2UpOworICAgIGlmIChlbmRzVXNpbmdEYXRhU3RvcmUgPT0g
RW5kc1VzaW5nRGF0YVN0b3JlOjpZZXMpCisgICAgICAgIG1fcHJvY2Vzc1Bvb2wtPnBhZ2VFbmRV
c2luZ1dlYnNpdGVEYXRhU3RvcmUod2ViUGFnZSk7CiAKICAgICB1cGRhdGVCYWNrZ3JvdW5kUmVz
cG9uc2l2ZW5lc3NUaW1lcigpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQ
cm94eS5oCmluZGV4IGU0MjM3Nzk1MGY2NDZhNjMzOTc5MDBiMzMzZWFiYTJhMTM1M2IxNzAuLjA3
NjhjYTNhZjYxNDY4YjFhOGMwMmM5MDllMWVhN2EzYTk3NGZiNWMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCkBAIC0xMTcsOCArMTE3LDEyIEBAIHB1YmxpYzoK
ICAgICBzdGF0aWMgV2ViUHJvY2Vzc1Byb3h5KiBwcm9jZXNzRm9ySWRlbnRpZmllcihXZWJDb3Jl
OjpQcm9jZXNzSWRlbnRpZmllcik7CiAgICAgc3RhdGljIFdlYlBhZ2VQcm94eSogd2ViUGFnZSh1
aW50NjRfdCBwYWdlSUQpOwogICAgIFJlZjxXZWJQYWdlUHJveHk+IGNyZWF0ZVdlYlBhZ2UoUGFn
ZUNsaWVudCYsIFJlZjxBUEk6OlBhZ2VDb25maWd1cmF0aW9uPiYmKTsKLSAgICB2b2lkIGFkZEV4
aXN0aW5nV2ViUGFnZShXZWJQYWdlUHJveHkmLCB1aW50NjRfdCBwYWdlSUQpOwotICAgIHZvaWQg
cmVtb3ZlV2ViUGFnZShXZWJQYWdlUHJveHkmLCB1aW50NjRfdCBwYWdlSUQpOworCisgICAgZW51
bSBjbGFzcyBCZWdpbnNVc2luZ0RhdGFTdG9yZSB7IE5vLCBZZXMgfTsKKyAgICB2b2lkIGFkZEV4
aXN0aW5nV2ViUGFnZShXZWJQYWdlUHJveHkmLCB1aW50NjRfdCBwYWdlSUQsIEJlZ2luc1VzaW5n
RGF0YVN0b3JlKTsKKworICAgIGVudW0gY2xhc3MgRW5kc1VzaW5nRGF0YVN0b3JlIHsgTm8sIFll
cyB9OworICAgIHZvaWQgcmVtb3ZlV2ViUGFnZShXZWJQYWdlUHJveHkmLCB1aW50NjRfdCBwYWdl
SUQsIEVuZHNVc2luZ0RhdGFTdG9yZSk7CiAKICAgICB0eXBlbmFtZSBXZWJQYWdlUHJveHlNYXA6
OlZhbHVlc0NvbnN0SXRlcmF0b3JSYW5nZSBwYWdlcygpIGNvbnN0IHsgcmV0dXJuIG1fcGFnZU1h
cC52YWx1ZXMoKTsgfQogICAgIHVuc2lnbmVkIHBhZ2VDb3VudCgpIGNvbnN0IHsgcmV0dXJuIG1f
cGFnZU1hcC5zaXplKCk7IH0KZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0No
YW5nZUxvZwppbmRleCA5NmRkNTdmMjhmYmVhZGYyNzZmNzQxOTBiZmY3YTg4ZjU1ZTM5YTVlLi44
N2FiYWVkZjgyZDhjMzEzYzhjOTlmYzg5Y2U3MjQxNWRhMWNhZGVmIDEwMDY0NAotLS0gYS9Ub29s
cy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTgt
MTItMDMgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBSZWdyZXNz
aW9uKFBTT04pIEdvb2dsZSBPQXV0aCBpcyBicm9rZW4gaW4gcHJpdmF0ZSBzZXNzaW9ucworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkyMzM3CisgICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS80NjM1MzU1OD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgIEFkZCBBUEkgdGVzdCBjb3ZlcmFnZS4KKworICAgICAgICAq
IFRlc3RXZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgor
ICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvR2V0U2Vzc2lvbkNvb2tp
ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L1Byb2Nlc3NTd2FwT25OYXZpZ2F0aW9uLm1tOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Q29jb2EvU2V0U2Vzc2lvbkNvb2tpZS5odG1sOiBBZGRlZC4KKwogMjAxOC0xMi0w
MyAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9T
TWFjXSBVbmFibGUgdG8gdXBsb2FkIG5vbi1pbWFnZSBmaWxlcyB1c2luZyBkcmFnIGFuZCBkcm9w
IGluIFdLV2ViVmlldwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0
QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RX
ZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwMTAzNzZmOWJiNDQ4MjRi
Nzg4ODZlMGVmNzZhYTAwNTM1YzZlZWI1Li42ZDdmYTM3ZDljY2VmNDk4ZTMyODM4YzBjZDYzNzE1
ODYyYjA0NDlkIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEku
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RX
ZWJLaXRBUEkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTczLDYgKzE3Myw4IEBACiAJ
CTQ2Mzk3Qjk1MURDMkM4NTAwMDlBNzhBRSAvKiBET01Ob2RlLm1tIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDYzOTdCOTQxREMyQzg1MDAwOUE3OEFFIC8q
IERPTU5vZGUubW0gKi87IH07CiAJCTQ2NDdCMTI2MUVCQTNCODUwMDQxRDdFRiAvKiBQcm9jZXNz
RGlkVGVybWluYXRlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQ2NDdCMTI1MUVCQTNCNzMwMDQxRDdFRiAvKiBQcm9jZXNzRGlkVGVybWluYXRlLmNw
cCAqLzsgfTsKIAkJNDY2QzM4NDMyMTA2MzdERTAwNkE4OERFIC8qIG5vdGlmeS1yZXNvdXJjZUxv
YWRPYnNlcnZlci5odG1sIGluIENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDQ2NkMzODQyMjEwNjM3Q0UwMDZBODhERSAvKiBub3RpZnktcmVzb3VyY2VM
b2FkT2JzZXJ2ZXIuaHRtbCAqLzsgfTsKKwkJNDY3QzU2NTMyMUI1RUQxMzAwNTc1MTZEIC8qIEdl
dFNlc3Npb25Db29raWUuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0NjdDNTY1MTIxQjVFQ0RGMDA1NzUxNkQgLyogR2V0U2Vzc2lvbkNv
b2tpZS5odG1sICovOyB9OworCQk0NjdDNTY1NDIxQjVFRDEzMDA1NzUxNkQgLyogU2V0U2Vzc2lv
bkNvb2tpZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDQ2N0M1NjUyMjFCNUVDREYwMDU3NTE2RCAvKiBTZXRTZXNzaW9uQ29va2llLmh0
bWwgKi87IH07CiAJCTQ2QTkxMTU5MjEwOEU2NzgwMDc4RDQwRCAvKiBDdXN0b21Vc2VyQWdlbnQu
bW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkE5MTE1
ODIxMDhFNjZCMDA3OEQ0MEQgLyogQ3VzdG9tVXNlckFnZW50Lm1tICovOyB9OwogCQk0NkFFNUEz
NzIwRjkwNjZEMDBFMDg3M0UgLyogU2ltcGxlU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbnMtMy5z
cWxpdGUzIGluIENvcHkgUmVzb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQ2NTZBNzU3MjBGOTA1NEYwMDAyRTIxRiAvKiBTaW1wbGVTZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9ucy0zLnNxbGl0ZTMgKi87IH07CiAJCTQ2QzUxOURBMUQzNTVBQjIwMERBQTUxQSAvKiBM
b2NhbFN0b3JhZ2VOdWxsRW50cmllcy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDQ2QzUxOUQ4MUQzNTVBNzMwMERBQTUxQSAvKiBMb2NhbFN0b3JhZ2VO
dWxsRW50cmllcy5tbSAqLzsgfTsKQEAgLTEwNzcsNiArMTA3OSw3IEBACiAJCQkJMjZGNTJFQjIx
ODI4OEYyNDAwMjNENDEyIC8qIGdlb2xvY2F0aW9uV2F0Y2hQb3NpdGlvbi5odG1sIGluIENvcHkg
UmVzb3VyY2VzICovLAogCQkJCTI2RjUyRUIzMTgyODhGMjQwMDIzRDQxMiAvKiBnZW9sb2NhdGlv
bldhdGNoUG9zaXRpb25XaXRoSGlnaEFjY3VyYWN5Lmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8s
CiAJCQkJMDdFMUY2QTIxRkZDNDRGQTAwOTZDN0VDIC8qIGdldERpc3BsYXlNZWRpYS5odG1sIGlu
IENvcHkgUmVzb3VyY2VzICovLAorCQkJCTQ2N0M1NjUzMjFCNUVEMTMwMDU3NTE2RCAvKiBHZXRT
ZXNzaW9uQ29va2llLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCiAJCQkJMDc0OTk0NDIxRUE1
MDM0QjAwMERBNDRFIC8qIGdldFVzZXJNZWRpYS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAog
CQkJCUY0NkEwOTVCMUVEOEE2RTYwMEQ0QUE1NSAvKiBnaWYtYW5kLWZpbGUtaW5wdXQuaHRtbCBp
biBDb3B5IFJlc291cmNlcyAqLywKIAkJCQk5QjRGOEZBNzE1OUQ1MkREMDAyRDlGOTQgLyogSFRN
TENvbGxlY3Rpb25OYW1lZEl0ZW0uaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKQEAgLTEyMDIs
NiArMTIwNSw3IEBACiAJCQkJN0E2NkJEQjgxRUFGMThENTAwQ0NDOTI0IC8qIHNldC1sb25nLXRp
dGxlLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCiAJCQkJQ0U2RTgxQTQyMEE5MzNENTAwRTJD
ODBGIC8qIHNldC10aW1lb3V0LWZ1bmN0aW9uLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCiAJ
CQkJNTJCOENGOTgxNTg2OEQ5MTAwMjgxMDUzIC8qIFNldERvY3VtZW50VVJJLmh0bWwgaW4gQ29w
eSBSZXNvdXJjZXMgKi8sCisJCQkJNDY3QzU2NTQyMUI1RUQxMzAwNTc1MTZEIC8qIFNldFNlc3Np
b25Db29raWUuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQlDRUJBQkQ0OTFCNzE2ODdD
MDA1MTIxMEEgLyogc2hvdWxkLW9wZW4tZXh0ZXJuYWwtc2NoZW1lcy5odG1sIGluIENvcHkgUmVz
b3VyY2VzICovLAogCQkJCUY0RTNEODA4MjBGNzBCQjkwMDdCNThDNSAvKiBzaWduaWZpY2FudC10
ZXh0LW1pbGVzdG9uZS1hcnRpY2xlLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCiAJCQkJRjRG
QzA3NzcyMEYwMTNCNjAwQ0EwNDNDIC8qIHNpZ25pZmljYW50LXRleHQtbWlsZXN0b25lLmh0bWwg
aW4gQ29weSBSZXNvdXJjZXMgKi8sCkBAIC0xNDkyLDYgKzE0OTYsOCBAQAogCQk0NjQ3QjEyNTFF
QkEzQjczMDA0MUQ3RUYgLyogUHJvY2Vzc0RpZFRlcm1pbmF0ZS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQcm9jZXNzRGlkVGVybWluYXRlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDY1NkE3NTcyMEY5MDU0RjAwMDJFMjFGIC8qIFNpbXBsZVNl
cnZpY2VXb3JrZXJSZWdpc3RyYXRpb25zLTMuc3FsaXRlMyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IGZpbGU7IHBhdGggPSAiU2ltcGxlU2VydmljZVdv
cmtlclJlZ2lzdHJhdGlvbnMtMy5zcWxpdGUzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJNDY2QzM4NDIyMTA2MzdDRTAwNkE4OERFIC8qIG5vdGlmeS1yZXNvdXJjZUxvYWRPYnNlcnZl
ci5odG1sICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dC5odG1sOyBwYXRoID0gIm5vdGlmeS1yZXNvdXJjZUxvYWRP
YnNlcnZlci5odG1sIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDY3QzU2NTEyMUI1
RUNERjAwNTc1MTZEIC8qIEdldFNlc3Npb25Db29raWUuaHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRt
bDsgcGF0aCA9IEdldFNlc3Npb25Db29raWUuaHRtbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJNDY3QzU2NTIyMUI1RUNERjAwNTc1MTZEIC8qIFNldFNlc3Npb25Db29raWUuaHRtbCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQuaHRtbDsgcGF0aCA9IFNldFNlc3Npb25Db29raWUuaHRtbDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDZBOTExNTgyMTA4RTY2QjAwNzhENDBEIC8qIEN1c3Rv
bVVzZXJBZ2VudC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEN1
c3RvbVVzZXJBZ2VudC5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDZDNTE5RDgx
RDM1NUE3MzAwREFBNTFBIC8qIExvY2FsU3RvcmFnZU51bGxFbnRyaWVzLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gTG9jYWxTdG9yYWdlTnVsbEVudHJpZXMubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ2QzUxOUUyMUQzNTYyOTYwMERBQTUxQSAv
KiBMb2NhbFN0b3JhZ2VOdWxsRW50cmllcy5odG1sICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5odG1sOyBwYXRo
ID0gTG9jYWxTdG9yYWdlTnVsbEVudHJpZXMuaHRtbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTI3OTEsNiArMjc5Nyw3IEBACiAJCQkJQ0RFMTk1QjIxQ0ZFMEFERTAwNTNEMjU2IC8q
IEZ1bGxzY3JlZW5Ub3BDb250ZW50SW5zZXQuaHRtbCAqLywKIAkJCQk2MzYzNTNBNjFFOTg2MTk0
MDAwOUY4QUYgLyogR2VvbG9jYXRpb25HZXRDdXJyZW50UG9zaXRpb25SZXN1bHQuaHRtbCAqLywK
IAkJCQkwN0UxRjZBMTFGRkM0NEY5MDA5NkM3RUMgLyogZ2V0RGlzcGxheU1lZGlhLmh0bWwgKi8s
CisJCQkJNDY3QzU2NTEyMUI1RUNERjAwNTc1MTZEIC8qIEdldFNlc3Npb25Db29raWUuaHRtbCAq
LywKIAkJCQlGNDdEMzBFRDFFRDI4QTZDMDAwNDgyRTEgLyogZ2lmLWFuZC1maWxlLWlucHV0Lmh0
bWwgKi8sCiAJCQkJNTEwNDc3NzYxRDI5OEU1NzAwOTc0N0VCIC8qIElEQkRlbGV0ZVJlY292ZXJ5
Lmh0bWwgKi8sCiAJCQkJNTEwNDc3NkYxRDI5OEQ4NTAwOTc0N0VCIC8qIElEQkRlbGV0ZVJlY292
ZXJ5LnNxbGl0ZTMgKi8sCkBAIC0yODc1LDYgKzI4ODIsNyBAQAogCQkJCTJFOTJCOEY2MjE2NDkw
QzMwMDVCNjRGMCAvKiByaWNoLXRleHQtYXR0cmlidXRlcy5odG1sICovLAogCQkJCUY0RTBBMjk1
MjExRkM1QTMwMEFGN0M3RiAvKiBzZWxlY3RlZC10ZXh0LWFuZC10ZXh0YXJlYS5odG1sICovLAog
CQkJCUY0RDY1REE3MUY1RTQ2QzAwMDlEOEMyNyAvKiBzZWxlY3RlZC10ZXh0LWltYWdlLWxpbmst
YW5kLWVkaXRhYmxlLmh0bWwgKi8sCisJCQkJNDY3QzU2NTIyMUI1RUNERjAwNTc1MTZEIC8qIFNl
dFNlc3Npb25Db29raWUuaHRtbCAqLywKIAkJCQlGNEUzRDgwNzIwRjcwOEU0MDA3QjU4QzUgLyog
c2lnbmlmaWNhbnQtdGV4dC1taWxlc3RvbmUtYXJ0aWNsZS5odG1sICovLAogCQkJCUY0RkMwNzc2
MjBGMDEwODEwMENBMDQzQyAvKiBzaWduaWZpY2FudC10ZXh0LW1pbGVzdG9uZS5odG1sICovLAog
CQkJCUM5QjRBRDI5MUVDQTZFQTUwMEY1RkVBMCAvKiBzaWxlbmNlLWxvbmcubTRhICovLApkaWZm
IC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9HZXRTZXNzaW9u
Q29va2llLmh0bWwgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0dldFNl
c3Npb25Db29raWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMTBiYjc3Zjk5MjdhZjQzNGJjODc4NDM2ZjMx
MzNjYjI3ZGMzOGQwCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXRDb2NvYS9HZXRTZXNzaW9uQ29va2llLmh0bWwKQEAgLTAsMCArMSwzIEBACis8c2Ny
aXB0Pgord2luZG93LndlYmtpdC5tZXNzYWdlSGFuZGxlcnMudGVzdEhhbmRsZXIucG9zdE1lc3Nh
Z2UoZG9jdW1lbnQuY29va2llKTsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Qcm9jZXNzU3dhcE9uTmF2aWdhdGlvbi5tbSBiL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvUHJvY2Vzc1N3YXBPbk5hdmlnYXRp
b24ubW0KaW5kZXggZTEyN2NlMzU2OTAyOTY5ZDViNmY5MmI2MmZiMDk3ZTlmZWU1MGVjMC4uZjhk
YzExNDRlZWYwY2VkMzZkZThhNGJjMzA4NTQ5ZDhkMGUyYzFjNyAxMDA2NDQKLS0tIGEvVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Qcm9jZXNzU3dhcE9uTmF2aWdhdGlvbi5t
bQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1Byb2Nlc3NTd2Fw
T25OYXZpZ2F0aW9uLm1tCkBAIC0yODUzLDYgKzI4NTMsNjMgQEAgVEVTVChQcm9jZXNzU3dhcCwg
VXNlUHJld2FybWVkUHJvY2Vzc0FmdGVyVGVybWluYXRpbmdOZXR3b3JrUHJvY2VzcykKICAgICBk
b25lID0gZmFsc2U7CiB9CiAKK1RFU1QoUHJvY2Vzc1N3YXAsIFVzZVNlc3Npb25Db29raWVzQWZ0
ZXJQcm9jZXNzU3dhcEluUHJpdmF0ZUJyb3dzaW5nKQoreworICAgIGF1dG8gcHJvY2Vzc1Bvb2xD
b25maWd1cmF0aW9uID0gYWRvcHROUyhbW19XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbiBhbGxv
Y10gaW5pdF0pOworICAgIHByb2Nlc3NQb29sQ29uZmlndXJhdGlvbi5nZXQoKS5wcm9jZXNzU3dh
cHNPbk5hdmlnYXRpb24gPSBZRVM7CisgICAgYXV0byBwcm9jZXNzUG9vbCA9IGFkb3B0TlMoW1tX
S1Byb2Nlc3NQb29sIGFsbG9jXSBfaW5pdFdpdGhDb25maWd1cmF0aW9uOnByb2Nlc3NQb29sQ29u
ZmlndXJhdGlvbi5nZXQoKV0pOworCisgICAgUmV0YWluUHRyPFdLV2Vic2l0ZURhdGFTdG9yZT4g
ZXBoZW1lcmFsU3RvcmUgPSBbV0tXZWJzaXRlRGF0YVN0b3JlIG5vblBlcnNpc3RlbnREYXRhU3Rv
cmVdOworCisgICAgYXV0byB3ZWJWaWV3Q29uZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tXS1dlYlZp
ZXdDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0XSk7CisgICAgW3dlYlZpZXdDb25maWd1cmF0aW9u
IHNldFByb2Nlc3NQb29sOnByb2Nlc3NQb29sLmdldCgpXTsKKyAgICB3ZWJWaWV3Q29uZmlndXJh
dGlvbi5nZXQoKS53ZWJzaXRlRGF0YVN0b3JlID0gZXBoZW1lcmFsU3RvcmUuZ2V0KCk7CisKKyAg
ICBhdXRvIGhhbmRsZXIgPSBhZG9wdE5TKFtbUFNPTlNjaGVtZSBhbGxvY10gaW5pdF0pOworICAg
IFt3ZWJWaWV3Q29uZmlndXJhdGlvbiBzZXRVUkxTY2hlbWVIYW5kbGVyOmhhbmRsZXIuZ2V0KCkg
Zm9yVVJMU2NoZW1lOkAicHNvbiJdOworCisgICAgYXV0byBtZXNzYWdlSGFuZGxlciA9IGFkb3B0
TlMoW1tQU09OTWVzc2FnZUhhbmRsZXIgYWxsb2NdIGluaXRdKTsKKyAgICBbW3dlYlZpZXdDb25m
aWd1cmF0aW9uIHVzZXJDb250ZW50Q29udHJvbGxlcl0gYWRkU2NyaXB0TWVzc2FnZUhhbmRsZXI6
bWVzc2FnZUhhbmRsZXIuZ2V0KCkgbmFtZTpAInRlc3RIYW5kbGVyIl07CisKKyAgICBhdXRvIHdl
YlZpZXcgPSBhZG9wdE5TKFtbV0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJl
Y3QoMCwgMCwgODAwLCA2MDApIGNvbmZpZ3VyYXRpb246d2ViVmlld0NvbmZpZ3VyYXRpb24uZ2V0
KCldKTsKKyAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1BTT05OYXZpZ2F0aW9uRGVsZWdh
dGUgYWxsb2NdIGluaXRdKTsKKyAgICBbd2ViVmlldyBzZXROYXZpZ2F0aW9uRGVsZWdhdGU6ZGVs
ZWdhdGUuZ2V0KCldOworCisgICAgTlNVUkxSZXF1ZXN0ICpyZXF1ZXN0ID0gW05TVVJMUmVxdWVz
dCByZXF1ZXN0V2l0aFVSTDpbW05TQnVuZGxlIG1haW5CdW5kbGVdIFVSTEZvclJlc291cmNlOkAi
U2V0U2Vzc2lvbkNvb2tpZSIgd2l0aEV4dGVuc2lvbjpAImh0bWwiIHN1YmRpcmVjdG9yeTpAIlRl
c3RXZWJLaXRBUEkucmVzb3VyY2VzIl1dOworICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OnJlcXVl
c3RdOworCisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZkb25lKTsKKyAgICBkb25lID0g
ZmFsc2U7CisKKyAgICBhdXRvIHBpZDEgPSBbd2ViVmlldyBfd2ViUHJvY2Vzc0lkZW50aWZpZXJd
OworCisgICAgLy8gU2hvdWxkIHByb2Nlc3Mtc3dhcC4KKyAgICByZXF1ZXN0ID0gW05TVVJMUmVx
dWVzdCByZXF1ZXN0V2l0aFVSTDpbTlNVUkwgVVJMV2l0aFN0cmluZzpAInBzb246Ly93d3cuYXBw
bGUuY29tL21haW4uaHRtbCJdXTsKKyAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpyZXF1ZXN0XTsK
KworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmZG9uZSk7CisgICAgZG9uZSA9IGZhbHNl
OworCisgICAgYXV0byBwaWQyID0gW3dlYlZpZXcgX3dlYlByb2Nlc3NJZGVudGlmaWVyXTsKKyAg
ICBFWFBFQ1RfTkUocGlkMSwgcGlkMik7CisKKyAgICAvLyBTaG91bGQgcHJvY2Vzcy1zd2FwLgor
ICAgIHJlcXVlc3QgPSBbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOltbTlNCdW5kbGUgbWFp
bkJ1bmRsZV0gVVJMRm9yUmVzb3VyY2U6QCJHZXRTZXNzaW9uQ29va2llIiB3aXRoRXh0ZW5zaW9u
OkAiaHRtbCIgc3ViZGlyZWN0b3J5OkAiVGVzdFdlYktpdEFQSS5yZXNvdXJjZXMiXV07CisgICAg
W3dlYlZpZXcgbG9hZFJlcXVlc3Q6cmVxdWVzdF07CisKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGls
OjpydW4oJmRvbmUpOworICAgIGRvbmUgPSBmYWxzZTsKKworICAgIGF1dG8gcGlkMyA9IFt3ZWJW
aWV3IF93ZWJQcm9jZXNzSWRlbnRpZmllcl07CisgICAgRVhQRUNUX05FKHBpZDIsIHBpZDMpOwor
CisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZyZWNlaXZlZE1lc3NhZ2UpOworICAgIHJl
Y2VpdmVkTWVzc2FnZSA9IGZhbHNlOworCisgICAgRVhQRUNUX0VRKDF1LCBbcmVjZWl2ZWRNZXNz
YWdlcyBjb3VudF0pOworICAgIEVYUEVDVF9XS19TVFJFUShAImZvbz1iYXIiLCByZWNlaXZlZE1l
c3NhZ2VzLmdldCgpWzBdKTsKK30KKwogI2lmIFBMQVRGT1JNKE1BQykKIAogVEVTVChQcm9jZXNz
U3dhcCwgVGVybWluYXRlUHJvY2Vzc0FmdGVyUHJvY2Vzc1N3YXApCmRpZmYgLS1naXQgYS9Ub29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1NldFNlc3Npb25Db29raWUuaHRtbCBi
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvU2V0U2Vzc2lvbkNvb2tpZS5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjkzN2UyNzRiZjBiZDYxNjg0OTlmYjk1NTUzZGFjZjRiZjc2MzcyYTIK
LS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L1NldFNlc3Npb25Db29raWUuaHRtbApAQCAtMCwwICsxLDMgQEAKKzxzY3JpcHQ+Citkb2N1bWVu
dC5jb29raWUgPSAiZm9vPWJhciI7Cis8L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>356420</attachid>
            <date>2018-12-03 15:27:15 -0800</date>
            <delta_ts>2018-12-03 16:06:34 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192337-20181203152714.patch</filename>
            <type>text/plain</type>
            <size>18520</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4ODA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDE4YmI2YWQ2ODI4Zjk2OWJl
NzI3MmE1YzdlMmVmNTYxMGIwZWExMTIuLmJkOWRiNWE5MTBmNGZjYTc1ZGVlOWJhNGU3NjIwMGI5
NWEzYWNmZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzQgQEAKKzIwMTgtMTItMDMgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBSZWdyZXNzaW9uKFBTT04pIEdvb2ds
ZSBPQXV0aCBpcyBicm9rZW4gaW4gcHJpdmF0ZSBzZXNzaW9ucworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkyMzM3CisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS80NjM1MzU1OD4KKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgor
CisgICAgICAgIEluIFdlYlBhZ2VQcm94eTo6c3dhcFRvV2ViUHJvY2VzcygpLCB3ZSB3b3VsZCBj
YWxsIHJlbW92ZVdlYlBhZ2UoKSBvbiB0aGUgb2xkIFdlYlByb2Nlc3NQcm94eSBhbmQgdGhlbgor
ICAgICAgICBhZGRFeGlzdGluZ1dlYlBhZ2UoKSBvbiB0aGUgbmV3IFdlYlByb2Nlc3NQcm94eSwg
YXMgeW91IHdvdWxkIGV4cGVjdCBpbiBjYXNlIG9mIHByb2Nlc3Mgc3dhcC4KKworICAgICAgICBU
aGUgaXNzdWUgaXMgdGhhdCBXZWJQcm9jZXNzUHJveHk6OnJlbW92ZVdlYlBhZ2UoKSBjYWxscyBX
ZWJQcm9jZXNzUG9vbDo6cGFnZUVuZFVzaW5nV2Vic2l0ZURhdGFTdG9yZSgpCisgICAgICAgIHdo
aWNoIHdvdWxkIGNhdXNlIHRoZSBzZXNzaW9uIHRvIGdldCBkZXN0cm95ZWQgYXNzdW1pbmcgdGhp
cyB3YXMgdGhlIGxhc3QgcGFnZSB1c2luZyBpdC4gV2Ugd291bGQKKyAgICAgICAgdGhlcmVmb3Jl
IGxvc2Ugc2Vzc2lvbiBjb29raWVzIGFmdGVyIGEgcHJvY2Vzcy1zd2FwIGluIHByaXZhdGUgc2Vz
c2lvbi4KKworICAgICAgICBUbyBhZGRyZXNzIHRoZSBpc3N1ZSwgYSBwYXJhbWV0ZXIgdG8gV2Vi
UHJvY2Vzc1Bvb2w6OnBhZ2VFbmRVc2luZ1dlYnNpdGVEYXRhU3RvcmUoKSBhbmQKKyAgICAgICAg
V2ViUHJvY2Vzc1Bvb2w6OnBhZ2VCZWdpblVzaW5nV2Vic2l0ZURhdGFTdG9yZSgpIHRvIGNvbnRy
b2wgaWYgd2Ugd2FudCB0byB0ZWxsIHRoZSBXZWJQcm9jZXNzUG9vbAorICAgICAgICBhYm91dCB0
aGUgcGFnZSBiZWdpbm5pbmcgLyBlbmRpbmcgaXRzIHVzZSBvZiB0aGUgc2Vzc2lvbi4gSW4gdGhl
IGNhc2Ugb2YgYSBwcm9jZXNzLXN3YXAsIHdlIG1ha2UKKyAgICAgICAgc3VyZSB0aGUgcHJvY2Vz
cyBwb29sIGlzIG5vdCBub3RpZmllZC4KKworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnJlYXR0YWNoVG9XZWJQcm9j
ZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojpzd2FwVG9XZWJQcm9jZXNzKToK
KyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpmaW5pc2hBdHRhY2hpbmdUb1dlYlByb2Nl
c3MpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmNsb3NlKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vz
c1Byb3h5OjpjcmVhdGVXZWJQYWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5
OjphZGRFeGlzdGluZ1dlYlBhZ2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUHJveHk6
OnJlbW92ZVdlYlBhZ2UpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuaDoK
KwogMjAxOC0xMi0wMyAgWXVzdWtlIFN1enVraSAgPHl1c3VrZXN1enVraUBzbG93c3RhcnQub3Jn
PgogCiAgICAgICAgIFVzZSBXYWxsVGltZSBmb3IgZmlsZSB0aW1lCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCAxYTMzNzllNGU0YTMzMTE0YzBkODRiZTM2YmQz
YzYyNzBhZTIxYmFjLi5iZTlhOWNlYjYxZjVlZWU3MDQwOGVhYWEyYmQyN2JlMzAxY2YwZmM2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTcyNywxMyArNzI3
LDE2IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpyZWF0dGFjaFRvV2ViUHJvY2VzcygpCiAgICAgQVNT
RVJUKCFpc1ZhbGlkKCkpOwogICAgIFJFTEVBU0VfTE9HX0lGX0FMTE9XRUQoUHJvY2VzcywgIiVw
IFdlYlBhZ2VQcm94eTo6cmVhdHRhY2hUb1dlYlByb2Nlc3NcbiIsIHRoaXMpOwogCi0gICAgbV9w
cm9jZXNzLT5yZW1vdmVXZWJQYWdlKCp0aGlzLCBtX3BhZ2VJRCk7CisgICAgbV9wcm9jZXNzLT5y
ZW1vdmVXZWJQYWdlKCp0aGlzLCBtX3BhZ2VJRCwgV2ViUHJvY2Vzc1Byb3h5OjpFbmRzVXNpbmdE
YXRhU3RvcmU6Olllcyk7CiAgICAgbV9wcm9jZXNzLT5yZW1vdmVNZXNzYWdlUmVjZWl2ZXIoTWVz
c2FnZXM6OldlYlBhZ2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3BhZ2VJRCk7CiAK
ICAgICBhdXRvJiBwcm9jZXNzUG9vbCA9IG1fcHJvY2Vzcy0+cHJvY2Vzc1Bvb2woKTsKICAgICBt
X3Byb2Nlc3MgPSBwcm9jZXNzUG9vbC5jcmVhdGVOZXdXZWJQcm9jZXNzUmVzcGVjdGluZ1Byb2Nl
c3NDb3VudExpbWl0KG1fd2Vic2l0ZURhdGFTdG9yZS5nZXQoKSk7CiAgICAgbV9pc1ZhbGlkID0g
dHJ1ZTsKIAorICAgIG1fcHJvY2Vzcy0+YWRkRXhpc3RpbmdXZWJQYWdlKCp0aGlzLCBtX3BhZ2VJ
RCwgV2ViUHJvY2Vzc1Byb3h5OjpCZWdpbnNVc2luZ0RhdGFTdG9yZTo6WWVzKTsKKyAgICBtX3By
b2Nlc3MtPmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViUGFnZVByb3h5OjptZXNzYWdl
UmVjZWl2ZXJOYW1lKCksIG1fcGFnZUlELCAqdGhpcyk7CisKICAgICBmaW5pc2hBdHRhY2hpbmdU
b1dlYlByb2Nlc3MoKTsKIH0KIApAQCAtNzc1LDcgKzc3OCw3IEBAIHZvaWQgV2ViUGFnZVByb3h5
Ojpzd2FwVG9XZWJQcm9jZXNzKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYgcHJvY2VzcywgQVBJOjpO
YXZpZ2F0CiAKICAgICAgICAgbV9wcm9jZXNzLT5yZW1vdmVNZXNzYWdlUmVjZWl2ZXIoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3BhZ2VJRCk7CiAgICAg
ICAgIGJvb2wgZGlkU3VzcGVuZFByZXZpb3VzUGFnZSA9IHN1c3BlbmRDdXJyZW50UGFnZUlmUG9z
c2libGUobmF2aWdhdGlvbiwgbWFpbkZyYW1lSURJblByZXZpb3VzUHJvY2Vzcyk7Ci0gICAgICAg
IG1fcHJvY2Vzcy0+cmVtb3ZlV2ViUGFnZSgqdGhpcywgbV9wYWdlSUQpOworICAgICAgICBtX3By
b2Nlc3MtPnJlbW92ZVdlYlBhZ2UoKnRoaXMsIG1fcGFnZUlELCBXZWJQcm9jZXNzUHJveHk6OkVu
ZHNVc2luZ0RhdGFTdG9yZTo6Tm8pOwogCiAgICAgICAgIG1fcHJvY2VzcyA9IFdURk1vdmUocHJv
Y2Vzcyk7CiAgICAgICAgIG1faXNWYWxpZCA9IHRydWU7CkBAIC03OTEsNiArNzk0LDkgQEAgdm9p
ZCBXZWJQYWdlUHJveHk6OnN3YXBUb1dlYlByb2Nlc3MoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiBw
cm9jZXNzLCBBUEk6Ok5hdmlnYXQKICAgICAgICAgICAgIG1fcHJvY2Vzcy0+ZnJhbWVDcmVhdGVk
KGRlc3RpbmF0aW9uU3VzcGVuZGVkUGFnZS0+bWFpbkZyYW1lSUQoKSwgKm1fbWFpbkZyYW1lKTsK
ICAgICAgICAgfQogCisgICAgICAgIG1fcHJvY2Vzcy0+YWRkRXhpc3RpbmdXZWJQYWdlKCp0aGlz
LCBtX3BhZ2VJRCwgV2ViUHJvY2Vzc1Byb3h5OjpCZWdpbnNVc2luZ0RhdGFTdG9yZTo6Tm8pOwor
ICAgICAgICBtX3Byb2Nlc3MtPmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcGFnZUlELCAqdGhpcyk7CisKICAgICAgICAg
ZmluaXNoQXR0YWNoaW5nVG9XZWJQcm9jZXNzKGRpZFN1c3BlbmRQcmV2aW91c1BhZ2UgPyBTaG91
bGREZWxheUF0dGFjaGluZ0RyYXdpbmdBcmVhOjpZZXMgOiBTaG91bGREZWxheUF0dGFjaGluZ0Ry
YXdpbmdBcmVhOjpObyk7CiAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKCk7CiAgICAgfTsKQEAg
LTgxMCw5ICs4MTYsNiBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6ZmluaXNoQXR0YWNoaW5nVG9XZWJQ
cm9jZXNzKFNob3VsZERlbGF5QXR0YWNoaW5nRHJhd2luZ0FyZWEgcwogICAgICAgICBwcm9jZXNz
RGlkRmluaXNoTGF1bmNoaW5nKCk7CiAgICAgfQogCi0gICAgbV9wcm9jZXNzLT5hZGRFeGlzdGlu
Z1dlYlBhZ2UoKnRoaXMsIG1fcGFnZUlEKTsKLSAgICBtX3Byb2Nlc3MtPmFkZE1lc3NhZ2VSZWNl
aXZlcihNZXNzYWdlczo6V2ViUGFnZVByb3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcGFn
ZUlELCAqdGhpcyk7Ci0KICAgICB1cGRhdGVBY3Rpdml0eVN0YXRlKCk7CiAgICAgdXBkYXRlVGhy
b3R0bGVTdGF0ZSgpOwogCkBAIC05OTEsNyArOTk0LDcgQEAgdm9pZCBXZWJQYWdlUHJveHk6OmNs
b3NlKCkKICAgICBtX3Byb2Nlc3MtPnByb2Nlc3NQb29sKCkucmVtb3ZlQWxsU3VzcGVuZGVkUGFn
ZXNGb3JQYWdlKCp0aGlzKTsKIAogICAgIG1fcHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6V2ViUGFn
ZTo6Q2xvc2UoKSwgbV9wYWdlSUQpOwotICAgIG1fcHJvY2Vzcy0+cmVtb3ZlV2ViUGFnZSgqdGhp
cywgbV9wYWdlSUQpOworICAgIG1fcHJvY2Vzcy0+cmVtb3ZlV2ViUGFnZSgqdGhpcywgbV9wYWdl
SUQsIFdlYlByb2Nlc3NQcm94eTo6RW5kc1VzaW5nRGF0YVN0b3JlOjpZZXMpOwogICAgIG1fcHJv
Y2Vzcy0+cmVtb3ZlTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Om1lc3Nh
Z2VSZWNlaXZlck5hbWUoKSwgbV9wYWdlSUQpOwogICAgIG1fcHJvY2Vzcy0+cHJvY2Vzc1Bvb2wo
KS5zdXBwbGVtZW50PFdlYk5vdGlmaWNhdGlvbk1hbmFnZXJQcm94eT4oKS0+Y2xlYXJOb3RpZmlj
YXRpb25zKHRoaXMpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5
LmNwcAppbmRleCBjYzc0MDExNmZjM2Q3MDc4NmViZjIyYjE3M2QxNDY3ODZhODNkZmYyLi4zZTUz
MjgxMTRjMzE0NTIwMGQ2ZWJmNTdlOGEzMjk3Y2Y0NGIyZWQxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAKQEAgLTQyOCwxNyArNDI4LDE4IEBAIFJlZjxX
ZWJQYWdlUHJveHk+IFdlYlByb2Nlc3NQcm94eTo6Y3JlYXRlV2ViUGFnZShQYWdlQ2xpZW50JiBw
YWdlQ2xpZW50LCBSZWY8QVBJCiAgICAgdWludDY0X3QgcGFnZUlEID0gZ2VuZXJhdGVQYWdlSUQo
KTsKICAgICBSZWY8V2ViUGFnZVByb3h5PiB3ZWJQYWdlID0gV2ViUGFnZVByb3h5OjpjcmVhdGUo
cGFnZUNsaWVudCwgKnRoaXMsIHBhZ2VJRCwgV1RGTW92ZShwYWdlQ29uZmlndXJhdGlvbikpOwog
Ci0gICAgYWRkRXhpc3RpbmdXZWJQYWdlKHdlYlBhZ2UuZ2V0KCksIHBhZ2VJRCk7CisgICAgYWRk
RXhpc3RpbmdXZWJQYWdlKHdlYlBhZ2UuZ2V0KCksIHBhZ2VJRCwgQmVnaW5zVXNpbmdEYXRhU3Rv
cmU6Olllcyk7CiAKICAgICByZXR1cm4gd2ViUGFnZTsKIH0KIAotdm9pZCBXZWJQcm9jZXNzUHJv
eHk6OmFkZEV4aXN0aW5nV2ViUGFnZShXZWJQYWdlUHJveHkmIHdlYlBhZ2UsIHVpbnQ2NF90IHBh
Z2VJRCkKK3ZvaWQgV2ViUHJvY2Vzc1Byb3h5OjphZGRFeGlzdGluZ1dlYlBhZ2UoV2ViUGFnZVBy
b3h5JiB3ZWJQYWdlLCB1aW50NjRfdCBwYWdlSUQsIEJlZ2luc1VzaW5nRGF0YVN0b3JlIGJlZ2lu
c1VzaW5nRGF0YVN0b3JlKQogewogICAgIEFTU0VSVCghbV9wYWdlTWFwLmNvbnRhaW5zKHBhZ2VJ
RCkpOwogICAgIEFTU0VSVCghZ2xvYmFsUGFnZU1hcCgpLmNvbnRhaW5zKHBhZ2VJRCkpOwogCi0g
ICAgbV9wcm9jZXNzUG9vbC0+cGFnZUJlZ2luVXNpbmdXZWJzaXRlRGF0YVN0b3JlKHdlYlBhZ2Up
OworICAgIGlmIChiZWdpbnNVc2luZ0RhdGFTdG9yZSA9PSBCZWdpbnNVc2luZ0RhdGFTdG9yZTo6
WWVzKQorICAgICAgICBtX3Byb2Nlc3NQb29sLT5wYWdlQmVnaW5Vc2luZ1dlYnNpdGVEYXRhU3Rv
cmUod2ViUGFnZSk7CiAKICAgICBtX3BhZ2VNYXAuc2V0KHBhZ2VJRCwgJndlYlBhZ2UpOwogICAg
IGdsb2JhbFBhZ2VNYXAoKS5zZXQocGFnZUlELCAmd2ViUGFnZSk7CkBAIC00NTcsMTQgKzQ1OCwx
NSBAQCB2b2lkIFdlYlByb2Nlc3NQcm94eTo6bWFya0lzTm9Mb25nZXJJblByZXdhcm1lZFBvb2wo
KQogICAgIHNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3M6Ok1hcmtJc05vTG9uZ2VyUHJld2FybWVk
KCksIDApOwogfQogCi12b2lkIFdlYlByb2Nlc3NQcm94eTo6cmVtb3ZlV2ViUGFnZShXZWJQYWdl
UHJveHkmIHdlYlBhZ2UsIHVpbnQ2NF90IHBhZ2VJRCkKK3ZvaWQgV2ViUHJvY2Vzc1Byb3h5Ojpy
ZW1vdmVXZWJQYWdlKFdlYlBhZ2VQcm94eSYgd2ViUGFnZSwgdWludDY0X3QgcGFnZUlELCBFbmRz
VXNpbmdEYXRhU3RvcmUgZW5kc1VzaW5nRGF0YVN0b3JlKQogewogICAgIGF1dG8qIHJlbW92ZWRQ
YWdlID0gbV9wYWdlTWFwLnRha2UocGFnZUlEKTsKICAgICBBU1NFUlRfVU5VU0VEKHJlbW92ZWRQ
YWdlLCByZW1vdmVkUGFnZSA9PSAmd2ViUGFnZSk7CiAgICAgcmVtb3ZlZFBhZ2UgPSBnbG9iYWxQ
YWdlTWFwKCkudGFrZShwYWdlSUQpOwogICAgIEFTU0VSVF9VTlVTRUQocmVtb3ZlZFBhZ2UsIHJl
bW92ZWRQYWdlID09ICZ3ZWJQYWdlKTsKIAotICAgIG1fcHJvY2Vzc1Bvb2wtPnBhZ2VFbmRVc2lu
Z1dlYnNpdGVEYXRhU3RvcmUod2ViUGFnZSk7CisgICAgaWYgKGVuZHNVc2luZ0RhdGFTdG9yZSA9
PSBFbmRzVXNpbmdEYXRhU3RvcmU6OlllcykKKyAgICAgICAgbV9wcm9jZXNzUG9vbC0+cGFnZUVu
ZFVzaW5nV2Vic2l0ZURhdGFTdG9yZSh3ZWJQYWdlKTsKIAogICAgIHVwZGF0ZUJhY2tncm91bmRS
ZXNwb25zaXZlbmVzc1RpbWVyKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vz
c1Byb3h5LmgKaW5kZXggZTQyMzc3OTUwZjY0NmE2MzM5NzkwMGIzMzNlYWJhMmExMzUzYjE3MC4u
NmY3OWE4MzI2NDIxNjFlMGM0MTBjODA1MDFkYWRmNDY5ZTQwNTg2NiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgKKysrIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgKQEAgLTExNyw4ICsxMTcsMTIgQEAgcHVibGlj
OgogICAgIHN0YXRpYyBXZWJQcm9jZXNzUHJveHkqIHByb2Nlc3NGb3JJZGVudGlmaWVyKFdlYkNv
cmU6OlByb2Nlc3NJZGVudGlmaWVyKTsKICAgICBzdGF0aWMgV2ViUGFnZVByb3h5KiB3ZWJQYWdl
KHVpbnQ2NF90IHBhZ2VJRCk7CiAgICAgUmVmPFdlYlBhZ2VQcm94eT4gY3JlYXRlV2ViUGFnZShQ
YWdlQ2xpZW50JiwgUmVmPEFQSTo6UGFnZUNvbmZpZ3VyYXRpb24+JiYpOwotICAgIHZvaWQgYWRk
RXhpc3RpbmdXZWJQYWdlKFdlYlBhZ2VQcm94eSYsIHVpbnQ2NF90IHBhZ2VJRCk7Ci0gICAgdm9p
ZCByZW1vdmVXZWJQYWdlKFdlYlBhZ2VQcm94eSYsIHVpbnQ2NF90IHBhZ2VJRCk7CisKKyAgICBl
bnVtIGNsYXNzIEJlZ2luc1VzaW5nRGF0YVN0b3JlIDogYm9vbCB7IE5vLCBZZXMgfTsKKyAgICB2
b2lkIGFkZEV4aXN0aW5nV2ViUGFnZShXZWJQYWdlUHJveHkmLCB1aW50NjRfdCBwYWdlSUQsIEJl
Z2luc1VzaW5nRGF0YVN0b3JlKTsKKworICAgIGVudW0gY2xhc3MgRW5kc1VzaW5nRGF0YVN0b3Jl
IDogYm9vbCB7IE5vLCBZZXMgfTsKKyAgICB2b2lkIHJlbW92ZVdlYlBhZ2UoV2ViUGFnZVByb3h5
JiwgdWludDY0X3QgcGFnZUlELCBFbmRzVXNpbmdEYXRhU3RvcmUpOwogCiAgICAgdHlwZW5hbWUg
V2ViUGFnZVByb3h5TWFwOjpWYWx1ZXNDb25zdEl0ZXJhdG9yUmFuZ2UgcGFnZXMoKSBjb25zdCB7
IHJldHVybiBtX3BhZ2VNYXAudmFsdWVzKCk7IH0KICAgICB1bnNpZ25lZCBwYWdlQ291bnQoKSBj
b25zdCB7IHJldHVybiBtX3BhZ2VNYXAuc2l6ZSgpOyB9CmRpZmYgLS1naXQgYS9Ub29scy9DaGFu
Z2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOTZkZDU3ZjI4ZmJlYWRmMjc2Zjc0MTkwYmZm
N2E4OGY1NWUzOWE1ZS4uYTZiNzlmOGMzYTRmMzBjYWQzZGNlYmY2MDdiYzc0ODM0MWU0Yzk3MyAx
MDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE4IEBACisyMDE4LTEyLTAzICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisK
KyAgICAgICAgUmVncmVzc2lvbihQU09OKSBHb29nbGUgT0F1dGggaXMgYnJva2VuIGluIHByaXZh
dGUgc2Vzc2lvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE5MjMzNworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDYzNTM1NTg+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICBBZGQgQVBJIHRlc3QgY292
ZXJhZ2UuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RXZWJLaXRBUEkueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENv
Y29hL0dldFNlc3Npb25Db29raWUuaHRtbDogQWRkZWQuCisgICAgICAgICogVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXRDb2NvYS9Qcm9jZXNzU3dhcE9uTmF2aWdhdGlvbi5tbToKKyAgICAgICAg
KiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1NldFNlc3Npb25Db29raWUuaHRtbDog
QWRkZWQuCisKIDIwMTgtMTItMDMgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5j
b20+CiAKICAgICAgICAgW2lPU01hY10gVW5hYmxlIHRvIHVwbG9hZCBub24taW1hZ2UgZmlsZXMg
dXNpbmcgZHJhZyBhbmQgZHJvcCBpbiBXS1dlYlZpZXcKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RX
ZWJLaXRBUEkvVGVzdFdlYktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5k
ZXggMDEwMzc2ZjliYjQ0ODI0Yjc4ODg2ZTBlZjc2YWEwMDUzNWM2ZWViNS4uNmQ3ZmEzN2Q5Y2Nl
ZjQ5OGUzMjgzOGMwY2Q2MzcxNTg2MmIwNDQ5ZCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktp
dEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAg
LTE3Myw2ICsxNzMsOCBAQAogCQk0NjM5N0I5NTFEQzJDODUwMDA5QTc4QUUgLyogRE9NTm9kZS5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2Mzk3Qjk0
MURDMkM4NTAwMDlBNzhBRSAvKiBET01Ob2RlLm1tICovOyB9OwogCQk0NjQ3QjEyNjFFQkEzQjg1
MDA0MUQ3RUYgLyogUHJvY2Vzc0RpZFRlcm1pbmF0ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NjQ3QjEyNTFFQkEzQjczMDA0MUQ3RUYgLyogUHJv
Y2Vzc0RpZFRlcm1pbmF0ZS5jcHAgKi87IH07CiAJCTQ2NkMzODQzMjEwNjM3REUwMDZBODhERSAv
KiBub3RpZnktcmVzb3VyY2VMb2FkT2JzZXJ2ZXIuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NjZDMzg0MjIxMDYzN0NFMDA2QTg4REUg
Lyogbm90aWZ5LXJlc291cmNlTG9hZE9ic2VydmVyLmh0bWwgKi87IH07CisJCTQ2N0M1NjUzMjFC
NUVEMTMwMDU3NTE2RCAvKiBHZXRTZXNzaW9uQ29va2llLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDY3QzU2NTEyMUI1RUNERjAwNTc1
MTZEIC8qIEdldFNlc3Npb25Db29raWUuaHRtbCAqLzsgfTsKKwkJNDY3QzU2NTQyMUI1RUQxMzAw
NTc1MTZEIC8qIFNldFNlc3Npb25Db29raWUuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NjdDNTY1MjIxQjVFQ0RGMDA1NzUxNkQgLyog
U2V0U2Vzc2lvbkNvb2tpZS5odG1sICovOyB9OwogCQk0NkE5MTE1OTIxMDhFNjc4MDA3OEQ0MEQg
LyogQ3VzdG9tVXNlckFnZW50Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gNDZBOTExNTgyMTA4RTY2QjAwNzhENDBEIC8qIEN1c3RvbVVzZXJBZ2VudC5t
bSAqLzsgfTsKIAkJNDZBRTVBMzcyMEY5MDY2RDAwRTA4NzNFIC8qIFNpbXBsZVNlcnZpY2VXb3Jr
ZXJSZWdpc3RyYXRpb25zLTMuc3FsaXRlMyBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NjU2QTc1NzIwRjkwNTRGMDAwMkUyMUYgLyogU2ltcGxl
U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbnMtMy5zcWxpdGUzICovOyB9OwogCQk0NkM1MTlEQTFE
MzU1QUIyMDBEQUE1MUEgLyogTG9jYWxTdG9yYWdlTnVsbEVudHJpZXMubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkM1MTlEODFEMzU1QTczMDBEQUE1
MUEgLyogTG9jYWxTdG9yYWdlTnVsbEVudHJpZXMubW0gKi87IH07CkBAIC0xMDc3LDYgKzEwNzks
NyBAQAogCQkJCTI2RjUyRUIyMTgyODhGMjQwMDIzRDQxMiAvKiBnZW9sb2NhdGlvbldhdGNoUG9z
aXRpb24uaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQkyNkY1MkVCMzE4Mjg4RjI0MDAy
M0Q0MTIgLyogZ2VvbG9jYXRpb25XYXRjaFBvc2l0aW9uV2l0aEhpZ2hBY2N1cmFjeS5odG1sIGlu
IENvcHkgUmVzb3VyY2VzICovLAogCQkJCTA3RTFGNkEyMUZGQzQ0RkEwMDk2QzdFQyAvKiBnZXRE
aXNwbGF5TWVkaWEuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKKwkJCQk0NjdDNTY1MzIxQjVF
RDEzMDA1NzUxNkQgLyogR2V0U2Vzc2lvbkNvb2tpZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICov
LAogCQkJCTA3NDk5NDQyMUVBNTAzNEIwMDBEQTQ0RSAvKiBnZXRVc2VyTWVkaWEuaHRtbCBpbiBD
b3B5IFJlc291cmNlcyAqLywKIAkJCQlGNDZBMDk1QjFFRDhBNkU2MDBENEFBNTUgLyogZ2lmLWFu
ZC1maWxlLWlucHV0Lmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCiAJCQkJOUI0RjhGQTcxNTlE
NTJERDAwMkQ5Rjk0IC8qIEhUTUxDb2xsZWN0aW9uTmFtZWRJdGVtLmh0bWwgaW4gQ29weSBSZXNv
dXJjZXMgKi8sCkBAIC0xMjAyLDYgKzEyMDUsNyBAQAogCQkJCTdBNjZCREI4MUVBRjE4RDUwMEND
QzkyNCAvKiBzZXQtbG9uZy10aXRsZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCUNF
NkU4MUE0MjBBOTMzRDUwMEUyQzgwRiAvKiBzZXQtdGltZW91dC1mdW5jdGlvbi5odG1sIGluIENv
cHkgUmVzb3VyY2VzICovLAogCQkJCTUyQjhDRjk4MTU4NjhEOTEwMDI4MTA1MyAvKiBTZXREb2N1
bWVudFVSSS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAorCQkJCTQ2N0M1NjU0MjFCNUVEMTMw
MDU3NTE2RCAvKiBTZXRTZXNzaW9uQ29va2llLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCiAJ
CQkJQ0VCQUJENDkxQjcxNjg3QzAwNTEyMTBBIC8qIHNob3VsZC1vcGVuLWV4dGVybmFsLXNjaGVt
ZXMuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLywKIAkJCQlGNEUzRDgwODIwRjcwQkI5MDA3QjU4
QzUgLyogc2lnbmlmaWNhbnQtdGV4dC1taWxlc3RvbmUtYXJ0aWNsZS5odG1sIGluIENvcHkgUmVz
b3VyY2VzICovLAogCQkJCUY0RkMwNzc3MjBGMDEzQjYwMENBMDQzQyAvKiBzaWduaWZpY2FudC10
ZXh0LW1pbGVzdG9uZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLApAQCAtMTQ5Miw2ICsxNDk2
LDggQEAKIAkJNDY0N0IxMjUxRUJBM0I3MzAwNDFEN0VGIC8qIFByb2Nlc3NEaWRUZXJtaW5hdGUu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUHJvY2Vzc0RpZFRlcm1p
bmF0ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ2NTZBNzU3MjBGOTA1NEYw
MDAyRTIxRiAvKiBTaW1wbGVTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9ucy0zLnNxbGl0ZTMgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBmaWxlOyBwYXRo
ID0gIlNpbXBsZVNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25zLTMuc3FsaXRlMyI7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ2NkMzODQyMjEwNjM3Q0UwMDZBODhERSAvKiBub3RpZnkt
cmVzb3VyY2VMb2FkT2JzZXJ2ZXIuaHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRtbDsgcGF0aCA9ICJu
b3RpZnktcmVzb3VyY2VMb2FkT2JzZXJ2ZXIuaHRtbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CisJCTQ2N0M1NjUxMjFCNUVDREYwMDU3NTE2RCAvKiBHZXRTZXNzaW9uQ29va2llLmh0bWwg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSBHZXRTZXNzaW9uQ29va2llLmh0bWw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2N0M1NjUyMjFCNUVDREYwMDU3NTE2RCAvKiBTZXRT
ZXNzaW9uQ29va2llLmh0bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSBTZXRTZXNzaW9u
Q29va2llLmh0bWw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ2QTkxMTU4MjEwOEU2
NkIwMDc4RDQwRCAvKiBDdXN0b21Vc2VyQWdlbnQubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IHBhdGggPSBDdXN0b21Vc2VyQWdlbnQubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTQ2QzUxOUQ4MUQzNTVBNzMwMERBQTUxQSAvKiBMb2NhbFN0b3JhZ2VOdWxsRW50
cmllcy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IExvY2FsU3Rv
cmFnZU51bGxFbnRyaWVzLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NkM1MTlF
MjFEMzU2Mjk2MDBEQUE1MUEgLyogTG9jYWxTdG9yYWdlTnVsbEVudHJpZXMuaHRtbCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQuaHRtbDsgcGF0aCA9IExvY2FsU3RvcmFnZU51bGxFbnRyaWVzLmh0bWw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0yNzkxLDYgKzI3OTcsNyBAQAogCQkJCUNERTE5NUIy
MUNGRTBBREUwMDUzRDI1NiAvKiBGdWxsc2NyZWVuVG9wQ29udGVudEluc2V0Lmh0bWwgKi8sCiAJ
CQkJNjM2MzUzQTYxRTk4NjE5NDAwMDlGOEFGIC8qIEdlb2xvY2F0aW9uR2V0Q3VycmVudFBvc2l0
aW9uUmVzdWx0Lmh0bWwgKi8sCiAJCQkJMDdFMUY2QTExRkZDNDRGOTAwOTZDN0VDIC8qIGdldERp
c3BsYXlNZWRpYS5odG1sICovLAorCQkJCTQ2N0M1NjUxMjFCNUVDREYwMDU3NTE2RCAvKiBHZXRT
ZXNzaW9uQ29va2llLmh0bWwgKi8sCiAJCQkJRjQ3RDMwRUQxRUQyOEE2QzAwMDQ4MkUxIC8qIGdp
Zi1hbmQtZmlsZS1pbnB1dC5odG1sICovLAogCQkJCTUxMDQ3Nzc2MUQyOThFNTcwMDk3NDdFQiAv
KiBJREJEZWxldGVSZWNvdmVyeS5odG1sICovLAogCQkJCTUxMDQ3NzZGMUQyOThEODUwMDk3NDdF
QiAvKiBJREJEZWxldGVSZWNvdmVyeS5zcWxpdGUzICovLApAQCAtMjg3NSw2ICsyODgyLDcgQEAK
IAkJCQkyRTkyQjhGNjIxNjQ5MEMzMDA1QjY0RjAgLyogcmljaC10ZXh0LWF0dHJpYnV0ZXMuaHRt
bCAqLywKIAkJCQlGNEUwQTI5NTIxMUZDNUEzMDBBRjdDN0YgLyogc2VsZWN0ZWQtdGV4dC1hbmQt
dGV4dGFyZWEuaHRtbCAqLywKIAkJCQlGNEQ2NURBNzFGNUU0NkMwMDA5RDhDMjcgLyogc2VsZWN0
ZWQtdGV4dC1pbWFnZS1saW5rLWFuZC1lZGl0YWJsZS5odG1sICovLAorCQkJCTQ2N0M1NjUyMjFC
NUVDREYwMDU3NTE2RCAvKiBTZXRTZXNzaW9uQ29va2llLmh0bWwgKi8sCiAJCQkJRjRFM0Q4MDcy
MEY3MDhFNDAwN0I1OEM1IC8qIHNpZ25pZmljYW50LXRleHQtbWlsZXN0b25lLWFydGljbGUuaHRt
bCAqLywKIAkJCQlGNEZDMDc3NjIwRjAxMDgxMDBDQTA0M0MgLyogc2lnbmlmaWNhbnQtdGV4dC1t
aWxlc3RvbmUuaHRtbCAqLywKIAkJCQlDOUI0QUQyOTFFQ0E2RUE1MDBGNUZFQTAgLyogc2lsZW5j
ZS1sb25nLm00YSAqLywKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Q29jb2EvR2V0U2Vzc2lvbkNvb2tpZS5odG1sIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0
cy9XZWJLaXRDb2NvYS9HZXRTZXNzaW9uQ29va2llLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDEwYmI3N2Y5
OTI3YWY0MzRiYzg3ODQzNmYzMTMzY2IyN2RjMzhkMAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xz
L1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvR2V0U2Vzc2lvbkNvb2tpZS5odG1sCkBA
IC0wLDAgKzEsMyBAQAorPHNjcmlwdD4KK3dpbmRvdy53ZWJraXQubWVzc2FnZUhhbmRsZXJzLnRl
c3RIYW5kbGVyLnBvc3RNZXNzYWdlKGRvY3VtZW50LmNvb2tpZSk7Cis8L3NjcmlwdD4KZGlmZiAt
LWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvUHJvY2Vzc1N3YXBP
bk5hdmlnYXRpb24ubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1By
b2Nlc3NTd2FwT25OYXZpZ2F0aW9uLm1tCmluZGV4IGUxMjdjZTM1NjkwMjk2OWQ1YjZmOTJiNjJm
YjA5N2U5ZmVlNTBlYzAuLmY4ZGMxMTQ0ZWVmMGNlZDM2ZGU4YTRiYzMwODU0OWQ4ZDBlMmMxYzcg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvUHJvY2Vz
c1N3YXBPbk5hdmlnYXRpb24ubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRDb2NvYS9Qcm9jZXNzU3dhcE9uTmF2aWdhdGlvbi5tbQpAQCAtMjg1Myw2ICsyODUzLDYzIEBA
IFRFU1QoUHJvY2Vzc1N3YXAsIFVzZVByZXdhcm1lZFByb2Nlc3NBZnRlclRlcm1pbmF0aW5nTmV0
d29ya1Byb2Nlc3MpCiAgICAgZG9uZSA9IGZhbHNlOwogfQogCitURVNUKFByb2Nlc3NTd2FwLCBV
c2VTZXNzaW9uQ29va2llc0FmdGVyUHJvY2Vzc1N3YXBJblByaXZhdGVCcm93c2luZykKK3sKKyAg
ICBhdXRvIHByb2Nlc3NQb29sQ29uZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tfV0tQcm9jZXNzUG9v
bENvbmZpZ3VyYXRpb24gYWxsb2NdIGluaXRdKTsKKyAgICBwcm9jZXNzUG9vbENvbmZpZ3VyYXRp
b24uZ2V0KCkucHJvY2Vzc1N3YXBzT25OYXZpZ2F0aW9uID0gWUVTOworICAgIGF1dG8gcHJvY2Vz
c1Bvb2wgPSBhZG9wdE5TKFtbV0tQcm9jZXNzUG9vbCBhbGxvY10gX2luaXRXaXRoQ29uZmlndXJh
dGlvbjpwcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uZ2V0KCldKTsKKworICAgIFJldGFpblB0cjxX
S1dlYnNpdGVEYXRhU3RvcmU+IGVwaGVtZXJhbFN0b3JlID0gW1dLV2Vic2l0ZURhdGFTdG9yZSBu
b25QZXJzaXN0ZW50RGF0YVN0b3JlXTsKKworICAgIGF1dG8gd2ViVmlld0NvbmZpZ3VyYXRpb24g
PSBhZG9wdE5TKFtbV0tXZWJWaWV3Q29uZmlndXJhdGlvbiBhbGxvY10gaW5pdF0pOworICAgIFt3
ZWJWaWV3Q29uZmlndXJhdGlvbiBzZXRQcm9jZXNzUG9vbDpwcm9jZXNzUG9vbC5nZXQoKV07Cisg
ICAgd2ViVmlld0NvbmZpZ3VyYXRpb24uZ2V0KCkud2Vic2l0ZURhdGFTdG9yZSA9IGVwaGVtZXJh
bFN0b3JlLmdldCgpOworCisgICAgYXV0byBoYW5kbGVyID0gYWRvcHROUyhbW1BTT05TY2hlbWUg
YWxsb2NdIGluaXRdKTsKKyAgICBbd2ViVmlld0NvbmZpZ3VyYXRpb24gc2V0VVJMU2NoZW1lSGFu
ZGxlcjpoYW5kbGVyLmdldCgpIGZvclVSTFNjaGVtZTpAInBzb24iXTsKKworICAgIGF1dG8gbWVz
c2FnZUhhbmRsZXIgPSBhZG9wdE5TKFtbUFNPTk1lc3NhZ2VIYW5kbGVyIGFsbG9jXSBpbml0XSk7
CisgICAgW1t3ZWJWaWV3Q29uZmlndXJhdGlvbiB1c2VyQ29udGVudENvbnRyb2xsZXJdIGFkZFNj
cmlwdE1lc3NhZ2VIYW5kbGVyOm1lc3NhZ2VIYW5kbGVyLmdldCgpIG5hbWU6QCJ0ZXN0SGFuZGxl
ciJdOworCisgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1dLV2ViVmlldyBhbGxvY10gaW5p
dFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKSBjb25maWd1cmF0aW9uOndlYlZp
ZXdDb25maWd1cmF0aW9uLmdldCgpXSk7CisgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tQ
U09OTmF2aWdhdGlvbkRlbGVnYXRlIGFsbG9jXSBpbml0XSk7CisgICAgW3dlYlZpZXcgc2V0TmF2
aWdhdGlvbkRlbGVnYXRlOmRlbGVnYXRlLmdldCgpXTsKKworICAgIE5TVVJMUmVxdWVzdCAqcmVx
dWVzdCA9IFtOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6W1tOU0J1bmRsZSBtYWluQnVuZGxl
XSBVUkxGb3JSZXNvdXJjZTpAIlNldFNlc3Npb25Db29raWUiIHdpdGhFeHRlbnNpb246QCJodG1s
IiBzdWJkaXJlY3Rvcnk6QCJUZXN0V2ViS2l0QVBJLnJlc291cmNlcyJdXTsKKyAgICBbd2ViVmll
dyBsb2FkUmVxdWVzdDpyZXF1ZXN0XTsKKworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigm
ZG9uZSk7CisgICAgZG9uZSA9IGZhbHNlOworCisgICAgYXV0byBwaWQxID0gW3dlYlZpZXcgX3dl
YlByb2Nlc3NJZGVudGlmaWVyXTsKKworICAgIC8vIFNob3VsZCBwcm9jZXNzLXN3YXAuCisgICAg
cmVxdWVzdCA9IFtOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6W05TVVJMIFVSTFdpdGhTdHJp
bmc6QCJwc29uOi8vd3d3LmFwcGxlLmNvbS9tYWluLmh0bWwiXV07CisgICAgW3dlYlZpZXcgbG9h
ZFJlcXVlc3Q6cmVxdWVzdF07CisKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmUp
OworICAgIGRvbmUgPSBmYWxzZTsKKworICAgIGF1dG8gcGlkMiA9IFt3ZWJWaWV3IF93ZWJQcm9j
ZXNzSWRlbnRpZmllcl07CisgICAgRVhQRUNUX05FKHBpZDEsIHBpZDIpOworCisgICAgLy8gU2hv
dWxkIHByb2Nlc3Mtc3dhcC4KKyAgICByZXF1ZXN0ID0gW05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0
aFVSTDpbW05TQnVuZGxlIG1haW5CdW5kbGVdIFVSTEZvclJlc291cmNlOkAiR2V0U2Vzc2lvbkNv
b2tpZSIgd2l0aEV4dGVuc2lvbjpAImh0bWwiIHN1YmRpcmVjdG9yeTpAIlRlc3RXZWJLaXRBUEku
cmVzb3VyY2VzIl1dOworICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OnJlcXVlc3RdOworCisgICAg
VGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZkb25lKTsKKyAgICBkb25lID0gZmFsc2U7CisKKyAg
ICBhdXRvIHBpZDMgPSBbd2ViVmlldyBfd2ViUHJvY2Vzc0lkZW50aWZpZXJdOworICAgIEVYUEVD
VF9ORShwaWQyLCBwaWQzKTsKKworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmcmVjZWl2
ZWRNZXNzYWdlKTsKKyAgICByZWNlaXZlZE1lc3NhZ2UgPSBmYWxzZTsKKworICAgIEVYUEVDVF9F
USgxdSwgW3JlY2VpdmVkTWVzc2FnZXMgY291bnRdKTsKKyAgICBFWFBFQ1RfV0tfU1RSRVEoQCJm
b289YmFyIiwgcmVjZWl2ZWRNZXNzYWdlcy5nZXQoKVswXSk7Cit9CisKICNpZiBQTEFURk9STShN
QUMpCiAKIFRFU1QoUHJvY2Vzc1N3YXAsIFRlcm1pbmF0ZVByb2Nlc3NBZnRlclByb2Nlc3NTd2Fw
KQpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9TZXRT
ZXNzaW9uQ29va2llLmh0bWwgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L1NldFNlc3Npb25Db29raWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MzdlMjc0YmYwYmQ2MTY4NDk5ZmI5
NTU1M2RhY2Y0YmY3NjM3MmEyCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXRDb2NvYS9TZXRTZXNzaW9uQ29va2llLmh0bWwKQEAgLTAsMCArMSwzIEBA
Cis8c2NyaXB0PgorZG9jdW1lbnQuY29va2llID0gImZvbz1iYXIiOworPC9zY3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>356429</attachid>
            <date>2018-12-03 16:06:35 -0800</date>
            <delta_ts>2018-12-03 16:08:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192337-20181203160634.patch</filename>
            <type>text/plain</type>
            <size>18619</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4ODI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDVjNzk2YThkZGJmNzA5NmE5
Yzc1NDRiZjE1NzNjM2MzMjYyODViMmQuLmU0NWIyOGU2OWZjNmY3MzIwYjM4YzExNGFiMjc5Yjlh
ZmM2YzkwNmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzQgQEAKKzIwMTgtMTItMDMgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBSZWdyZXNzaW9uKFBTT04pIEdvb2ds
ZSBPQXV0aCBpcyBicm9rZW4gaW4gcHJpdmF0ZSBzZXNzaW9ucworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkyMzM3CisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS80NjM1MzU1OD4KKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgor
CisgICAgICAgIEluIFdlYlBhZ2VQcm94eTo6c3dhcFRvV2ViUHJvY2VzcygpLCB3ZSB3b3VsZCBj
YWxsIHJlbW92ZVdlYlBhZ2UoKSBvbiB0aGUgb2xkIFdlYlByb2Nlc3NQcm94eSBhbmQgdGhlbgor
ICAgICAgICBhZGRFeGlzdGluZ1dlYlBhZ2UoKSBvbiB0aGUgbmV3IFdlYlByb2Nlc3NQcm94eSwg
YXMgeW91IHdvdWxkIGV4cGVjdCBpbiBjYXNlIG9mIHByb2Nlc3Mgc3dhcC4KKworICAgICAgICBU
aGUgaXNzdWUgaXMgdGhhdCBXZWJQcm9jZXNzUHJveHk6OnJlbW92ZVdlYlBhZ2UoKSBjYWxscyBX
ZWJQcm9jZXNzUG9vbDo6cGFnZUVuZFVzaW5nV2Vic2l0ZURhdGFTdG9yZSgpCisgICAgICAgIHdo
aWNoIHdvdWxkIGNhdXNlIHRoZSBzZXNzaW9uIHRvIGdldCBkZXN0cm95ZWQgYXNzdW1pbmcgdGhp
cyB3YXMgdGhlIGxhc3QgcGFnZSB1c2luZyBpdC4gV2Ugd291bGQKKyAgICAgICAgdGhlcmVmb3Jl
IGxvc2Ugc2Vzc2lvbiBjb29raWVzIGFmdGVyIGEgcHJvY2Vzcy1zd2FwIGluIHByaXZhdGUgc2Vz
c2lvbi4KKworICAgICAgICBUbyBhZGRyZXNzIHRoZSBpc3N1ZSwgYSBwYXJhbWV0ZXIgdG8gV2Vi
UHJvY2Vzc1Bvb2w6OnBhZ2VFbmRVc2luZ1dlYnNpdGVEYXRhU3RvcmUoKSBhbmQKKyAgICAgICAg
V2ViUHJvY2Vzc1Bvb2w6OnBhZ2VCZWdpblVzaW5nV2Vic2l0ZURhdGFTdG9yZSgpIHRvIGNvbnRy
b2wgaWYgd2Ugd2FudCB0byB0ZWxsIHRoZSBXZWJQcm9jZXNzUG9vbAorICAgICAgICBhYm91dCB0
aGUgcGFnZSBiZWdpbm5pbmcgLyBlbmRpbmcgaXRzIHVzZSBvZiB0aGUgc2Vzc2lvbi4gSW4gdGhl
IGNhc2Ugb2YgYSBwcm9jZXNzLXN3YXAsIHdlIG1ha2UKKyAgICAgICAgc3VyZSB0aGUgcHJvY2Vz
cyBwb29sIGlzIG5vdCBub3RpZmllZC4KKworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OnJlYXR0YWNoVG9XZWJQcm9j
ZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojpzd2FwVG9XZWJQcm9jZXNzKToK
KyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpmaW5pc2hBdHRhY2hpbmdUb1dlYlByb2Nl
c3MpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmNsb3NlKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vz
c1Byb3h5OjpjcmVhdGVXZWJQYWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5
OjphZGRFeGlzdGluZ1dlYlBhZ2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUHJveHk6
OnJlbW92ZVdlYlBhZ2UpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuaDoK
KwogMjAxOC0xMi0wMyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAg
IFtQU09OXSBSZXF1ZXN0IGJ5IHRoZSBjbGllbnQgdG8gcHJvY2Vzcy1zd2FwIGlzIGlnbm9yZWQg
aWYgdGhlIHdpbmRvdyBoYXMgYW4gb3BlbmVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5LmNwcAppbmRleCBiMjU5M2NjYjllNDA4ZTRkYWIyZDNlZmFlNTg0ZWMzZGE2ZjFhNDUy
Li43N2ZjNDUyZTBhOTQ2OGMzMWQ3MWU2MzRhNTljOTIzOTU4ZGNhMmRmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKQEAgLTcyNywxMyArNzI3LDE2IEBAIHZvaWQg
V2ViUGFnZVByb3h5OjpyZWF0dGFjaFRvV2ViUHJvY2VzcygpCiAgICAgQVNTRVJUKCFpc1ZhbGlk
KCkpOwogICAgIFJFTEVBU0VfTE9HX0lGX0FMTE9XRUQoUHJvY2VzcywgIiVwIFdlYlBhZ2VQcm94
eTo6cmVhdHRhY2hUb1dlYlByb2Nlc3NcbiIsIHRoaXMpOwogCi0gICAgbV9wcm9jZXNzLT5yZW1v
dmVXZWJQYWdlKCp0aGlzLCBtX3BhZ2VJRCk7CisgICAgbV9wcm9jZXNzLT5yZW1vdmVXZWJQYWdl
KCp0aGlzLCBtX3BhZ2VJRCwgV2ViUHJvY2Vzc1Byb3h5OjpFbmRzVXNpbmdEYXRhU3RvcmU6Olll
cyk7CiAgICAgbV9wcm9jZXNzLT5yZW1vdmVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3BhZ2VJRCk7CiAKICAgICBhdXRvJiBw
cm9jZXNzUG9vbCA9IG1fcHJvY2Vzcy0+cHJvY2Vzc1Bvb2woKTsKICAgICBtX3Byb2Nlc3MgPSBw
cm9jZXNzUG9vbC5jcmVhdGVOZXdXZWJQcm9jZXNzUmVzcGVjdGluZ1Byb2Nlc3NDb3VudExpbWl0
KG1fd2Vic2l0ZURhdGFTdG9yZS5nZXQoKSk7CiAgICAgbV9pc1ZhbGlkID0gdHJ1ZTsKIAorICAg
IG1fcHJvY2Vzcy0+YWRkRXhpc3RpbmdXZWJQYWdlKCp0aGlzLCBtX3BhZ2VJRCwgV2ViUHJvY2Vz
c1Byb3h5OjpCZWdpbnNVc2luZ0RhdGFTdG9yZTo6WWVzKTsKKyAgICBtX3Byb2Nlc3MtPmFkZE1l
c3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViUGFnZVByb3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1l
KCksIG1fcGFnZUlELCAqdGhpcyk7CisKICAgICBmaW5pc2hBdHRhY2hpbmdUb1dlYlByb2Nlc3Mo
KTsKIH0KIApAQCAtNzc5LDcgKzc4Miw3IEBAIHZvaWQgV2ViUGFnZVByb3h5Ojpzd2FwVG9XZWJQ
cm9jZXNzKFJlZjxXZWJQcm9jZXNzUHJveHk+JiYgcHJvY2VzcywgQVBJOjpOYXZpZ2F0CiAKICAg
ICAgICAgbV9wcm9jZXNzLT5yZW1vdmVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYlBhZ2VQ
cm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3BhZ2VJRCk7CiAgICAgICAgIGJvb2wgZGlk
U3VzcGVuZFByZXZpb3VzUGFnZSA9IHN1c3BlbmRDdXJyZW50UGFnZUlmUG9zc2libGUobmF2aWdh
dGlvbiwgbWFpbkZyYW1lSURJblByZXZpb3VzUHJvY2VzcywgcHJvY2Vzc1N3YXBSZXF1ZXN0ZWRC
eUNsaWVudCk7Ci0gICAgICAgIG1fcHJvY2Vzcy0+cmVtb3ZlV2ViUGFnZSgqdGhpcywgbV9wYWdl
SUQpOworICAgICAgICBtX3Byb2Nlc3MtPnJlbW92ZVdlYlBhZ2UoKnRoaXMsIG1fcGFnZUlELCBX
ZWJQcm9jZXNzUHJveHk6OkVuZHNVc2luZ0RhdGFTdG9yZTo6Tm8pOwogCiAgICAgICAgIG1fcHJv
Y2VzcyA9IFdURk1vdmUocHJvY2Vzcyk7CiAgICAgICAgIG1faXNWYWxpZCA9IHRydWU7CkBAIC03
OTUsNiArNzk4LDkgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnN3YXBUb1dlYlByb2Nlc3MoUmVmPFdl
YlByb2Nlc3NQcm94eT4mJiBwcm9jZXNzLCBBUEk6Ok5hdmlnYXQKICAgICAgICAgICAgIG1fcHJv
Y2Vzcy0+ZnJhbWVDcmVhdGVkKGRlc3RpbmF0aW9uU3VzcGVuZGVkUGFnZS0+bWFpbkZyYW1lSUQo
KSwgKm1fbWFpbkZyYW1lKTsKICAgICAgICAgfQogCisgICAgICAgIG1fcHJvY2Vzcy0+YWRkRXhp
c3RpbmdXZWJQYWdlKCp0aGlzLCBtX3BhZ2VJRCwgV2ViUHJvY2Vzc1Byb3h5OjpCZWdpbnNVc2lu
Z0RhdGFTdG9yZTo6Tm8pOworICAgICAgICBtX3Byb2Nlc3MtPmFkZE1lc3NhZ2VSZWNlaXZlcihN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcGFnZUlELCAq
dGhpcyk7CisKICAgICAgICAgZmluaXNoQXR0YWNoaW5nVG9XZWJQcm9jZXNzKGRpZFN1c3BlbmRQ
cmV2aW91c1BhZ2UgPyBTaG91bGREZWxheUF0dGFjaGluZ0RyYXdpbmdBcmVhOjpZZXMgOiBTaG91
bGREZWxheUF0dGFjaGluZ0RyYXdpbmdBcmVhOjpObyk7CiAgICAgICAgIGNvbXBsZXRpb25IYW5k
bGVyKGRpZFN1c3BlbmRQcmV2aW91c1BhZ2UpOwogICAgIH07CkBAIC04MTQsOSArODIwLDYgQEAg
dm9pZCBXZWJQYWdlUHJveHk6OmZpbmlzaEF0dGFjaGluZ1RvV2ViUHJvY2VzcyhTaG91bGREZWxh
eUF0dGFjaGluZ0RyYXdpbmdBcmVhIHMKICAgICAgICAgcHJvY2Vzc0RpZEZpbmlzaExhdW5jaGlu
ZygpOwogICAgIH0KIAotICAgIG1fcHJvY2Vzcy0+YWRkRXhpc3RpbmdXZWJQYWdlKCp0aGlzLCBt
X3BhZ2VJRCk7Ci0gICAgbV9wcm9jZXNzLT5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6Oldl
YlBhZ2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3BhZ2VJRCwgKnRoaXMpOwotCiAg
ICAgdXBkYXRlQWN0aXZpdHlTdGF0ZSgpOwogICAgIHVwZGF0ZVRocm90dGxlU3RhdGUoKTsKIApA
QCAtOTk2LDcgKzk5OSw3IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpjbG9zZSgpCiAgICAgbV9wcm9j
ZXNzLT5wcm9jZXNzUG9vbCgpLnJlbW92ZUFsbFN1c3BlbmRlZFBhZ2VzRm9yUGFnZSgqdGhpcyk7
CiAKICAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkNsb3NlKCksIG1fcGFn
ZUlEKTsKLSAgICBtX3Byb2Nlc3MtPnJlbW92ZVdlYlBhZ2UoKnRoaXMsIG1fcGFnZUlEKTsKKyAg
ICBtX3Byb2Nlc3MtPnJlbW92ZVdlYlBhZ2UoKnRoaXMsIG1fcGFnZUlELCBXZWJQcm9jZXNzUHJv
eHk6OkVuZHNVc2luZ0RhdGFTdG9yZTo6WWVzKTsKICAgICBtX3Byb2Nlc3MtPnJlbW92ZU1lc3Nh
Z2VSZWNlaXZlcihNZXNzYWdlczo6V2ViUGFnZVByb3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCks
IG1fcGFnZUlEKTsKICAgICBtX3Byb2Nlc3MtPnByb2Nlc3NQb29sKCkuc3VwcGxlbWVudDxXZWJO
b3RpZmljYXRpb25NYW5hZ2VyUHJveHk+KCktPmNsZWFyTm90aWZpY2F0aW9ucyh0aGlzKTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcCBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAKaW5kZXggY2M3NDAx
MTZmYzNkNzA3ODZlYmYyMmIxNzNkMTQ2Nzg2YTgzZGZmMi4uM2U1MzI4MTE0YzMxNDUyMDBkNmVi
ZjU3ZThhMzI5N2NmNDRiMmVkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9j
ZXNzUHJveHkuY3BwCkBAIC00MjgsMTcgKzQyOCwxOCBAQCBSZWY8V2ViUGFnZVByb3h5PiBXZWJQ
cm9jZXNzUHJveHk6OmNyZWF0ZVdlYlBhZ2UoUGFnZUNsaWVudCYgcGFnZUNsaWVudCwgUmVmPEFQ
SQogICAgIHVpbnQ2NF90IHBhZ2VJRCA9IGdlbmVyYXRlUGFnZUlEKCk7CiAgICAgUmVmPFdlYlBh
Z2VQcm94eT4gd2ViUGFnZSA9IFdlYlBhZ2VQcm94eTo6Y3JlYXRlKHBhZ2VDbGllbnQsICp0aGlz
LCBwYWdlSUQsIFdURk1vdmUocGFnZUNvbmZpZ3VyYXRpb24pKTsKIAotICAgIGFkZEV4aXN0aW5n
V2ViUGFnZSh3ZWJQYWdlLmdldCgpLCBwYWdlSUQpOworICAgIGFkZEV4aXN0aW5nV2ViUGFnZSh3
ZWJQYWdlLmdldCgpLCBwYWdlSUQsIEJlZ2luc1VzaW5nRGF0YVN0b3JlOjpZZXMpOwogCiAgICAg
cmV0dXJuIHdlYlBhZ2U7CiB9CiAKLXZvaWQgV2ViUHJvY2Vzc1Byb3h5OjphZGRFeGlzdGluZ1dl
YlBhZ2UoV2ViUGFnZVByb3h5JiB3ZWJQYWdlLCB1aW50NjRfdCBwYWdlSUQpCit2b2lkIFdlYlBy
b2Nlc3NQcm94eTo6YWRkRXhpc3RpbmdXZWJQYWdlKFdlYlBhZ2VQcm94eSYgd2ViUGFnZSwgdWlu
dDY0X3QgcGFnZUlELCBCZWdpbnNVc2luZ0RhdGFTdG9yZSBiZWdpbnNVc2luZ0RhdGFTdG9yZSkK
IHsKICAgICBBU1NFUlQoIW1fcGFnZU1hcC5jb250YWlucyhwYWdlSUQpKTsKICAgICBBU1NFUlQo
IWdsb2JhbFBhZ2VNYXAoKS5jb250YWlucyhwYWdlSUQpKTsKIAotICAgIG1fcHJvY2Vzc1Bvb2wt
PnBhZ2VCZWdpblVzaW5nV2Vic2l0ZURhdGFTdG9yZSh3ZWJQYWdlKTsKKyAgICBpZiAoYmVnaW5z
VXNpbmdEYXRhU3RvcmUgPT0gQmVnaW5zVXNpbmdEYXRhU3RvcmU6OlllcykKKyAgICAgICAgbV9w
cm9jZXNzUG9vbC0+cGFnZUJlZ2luVXNpbmdXZWJzaXRlRGF0YVN0b3JlKHdlYlBhZ2UpOwogCiAg
ICAgbV9wYWdlTWFwLnNldChwYWdlSUQsICZ3ZWJQYWdlKTsKICAgICBnbG9iYWxQYWdlTWFwKCku
c2V0KHBhZ2VJRCwgJndlYlBhZ2UpOwpAQCAtNDU3LDE0ICs0NTgsMTUgQEAgdm9pZCBXZWJQcm9j
ZXNzUHJveHk6Om1hcmtJc05vTG9uZ2VySW5QcmV3YXJtZWRQb29sKCkKICAgICBzZW5kKE1lc3Nh
Z2VzOjpXZWJQcm9jZXNzOjpNYXJrSXNOb0xvbmdlclByZXdhcm1lZCgpLCAwKTsKIH0KIAotdm9p
ZCBXZWJQcm9jZXNzUHJveHk6OnJlbW92ZVdlYlBhZ2UoV2ViUGFnZVByb3h5JiB3ZWJQYWdlLCB1
aW50NjRfdCBwYWdlSUQpCit2b2lkIFdlYlByb2Nlc3NQcm94eTo6cmVtb3ZlV2ViUGFnZShXZWJQ
YWdlUHJveHkmIHdlYlBhZ2UsIHVpbnQ2NF90IHBhZ2VJRCwgRW5kc1VzaW5nRGF0YVN0b3JlIGVu
ZHNVc2luZ0RhdGFTdG9yZSkKIHsKICAgICBhdXRvKiByZW1vdmVkUGFnZSA9IG1fcGFnZU1hcC50
YWtlKHBhZ2VJRCk7CiAgICAgQVNTRVJUX1VOVVNFRChyZW1vdmVkUGFnZSwgcmVtb3ZlZFBhZ2Ug
PT0gJndlYlBhZ2UpOwogICAgIHJlbW92ZWRQYWdlID0gZ2xvYmFsUGFnZU1hcCgpLnRha2UocGFn
ZUlEKTsKICAgICBBU1NFUlRfVU5VU0VEKHJlbW92ZWRQYWdlLCByZW1vdmVkUGFnZSA9PSAmd2Vi
UGFnZSk7CiAKLSAgICBtX3Byb2Nlc3NQb29sLT5wYWdlRW5kVXNpbmdXZWJzaXRlRGF0YVN0b3Jl
KHdlYlBhZ2UpOworICAgIGlmIChlbmRzVXNpbmdEYXRhU3RvcmUgPT0gRW5kc1VzaW5nRGF0YVN0
b3JlOjpZZXMpCisgICAgICAgIG1fcHJvY2Vzc1Bvb2wtPnBhZ2VFbmRVc2luZ1dlYnNpdGVEYXRh
U3RvcmUod2ViUGFnZSk7CiAKICAgICB1cGRhdGVCYWNrZ3JvdW5kUmVzcG9uc2l2ZW5lc3NUaW1l
cigpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJv
eHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oCmluZGV4IGU0
MjM3Nzk1MGY2NDZhNjMzOTc5MDBiMzMzZWFiYTJhMTM1M2IxNzAuLjZmNzlhODMyNjQyMTYxZTBj
NDEwYzgwNTAxZGFkZjQ2OWU0MDU4NjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBy
b2Nlc3NQcm94eS5oCkBAIC0xMTcsOCArMTE3LDEyIEBAIHB1YmxpYzoKICAgICBzdGF0aWMgV2Vi
UHJvY2Vzc1Byb3h5KiBwcm9jZXNzRm9ySWRlbnRpZmllcihXZWJDb3JlOjpQcm9jZXNzSWRlbnRp
Zmllcik7CiAgICAgc3RhdGljIFdlYlBhZ2VQcm94eSogd2ViUGFnZSh1aW50NjRfdCBwYWdlSUQp
OwogICAgIFJlZjxXZWJQYWdlUHJveHk+IGNyZWF0ZVdlYlBhZ2UoUGFnZUNsaWVudCYsIFJlZjxB
UEk6OlBhZ2VDb25maWd1cmF0aW9uPiYmKTsKLSAgICB2b2lkIGFkZEV4aXN0aW5nV2ViUGFnZShX
ZWJQYWdlUHJveHkmLCB1aW50NjRfdCBwYWdlSUQpOwotICAgIHZvaWQgcmVtb3ZlV2ViUGFnZShX
ZWJQYWdlUHJveHkmLCB1aW50NjRfdCBwYWdlSUQpOworCisgICAgZW51bSBjbGFzcyBCZWdpbnNV
c2luZ0RhdGFTdG9yZSA6IGJvb2wgeyBObywgWWVzIH07CisgICAgdm9pZCBhZGRFeGlzdGluZ1dl
YlBhZ2UoV2ViUGFnZVByb3h5JiwgdWludDY0X3QgcGFnZUlELCBCZWdpbnNVc2luZ0RhdGFTdG9y
ZSk7CisKKyAgICBlbnVtIGNsYXNzIEVuZHNVc2luZ0RhdGFTdG9yZSA6IGJvb2wgeyBObywgWWVz
IH07CisgICAgdm9pZCByZW1vdmVXZWJQYWdlKFdlYlBhZ2VQcm94eSYsIHVpbnQ2NF90IHBhZ2VJ
RCwgRW5kc1VzaW5nRGF0YVN0b3JlKTsKIAogICAgIHR5cGVuYW1lIFdlYlBhZ2VQcm94eU1hcDo6
VmFsdWVzQ29uc3RJdGVyYXRvclJhbmdlIHBhZ2VzKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlTWFw
LnZhbHVlcygpOyB9CiAgICAgdW5zaWduZWQgcGFnZUNvdW50KCkgY29uc3QgeyByZXR1cm4gbV9w
YWdlTWFwLnNpemUoKTsgfQpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hh
bmdlTG9nCmluZGV4IDA0NGE3ZmUyYTY1NWViZjE0N2NmN2E0YWY0MGRmNDIwYzI5OGM4YjIuLmZj
M2JmMGZlZGVhNDNjOWQ0N2JiNDAzOWQ2NjFiNzEyZjU3ZjE3MWQgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxOC0x
Mi0wMyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIFJlZ3Jlc3Np
b24oUFNPTikgR29vZ2xlIE9BdXRoIGlzIGJyb2tlbiBpbiBwcml2YXRlIHNlc3Npb25zCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTIzMzcKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzQ2MzUzNTU4PgorCisgICAgICAgIFJldmlld2VkIGJ5IEFsZXgg
Q2hyaXN0ZW5zZW4uCisKKyAgICAgICAgQWRkIEFQSSB0ZXN0IGNvdmVyYWdlLgorCisgICAgICAg
ICogVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9HZXRTZXNzaW9uQ29v
a2llLmh0bWw6IEFkZGVkLgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29j
b2EvUHJvY2Vzc1N3YXBPbk5hdmlnYXRpb24ubW06CisgICAgICAgICogVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXRDb2NvYS9TZXRTZXNzaW9uQ29va2llLmh0bWw6IEFkZGVkLgorCiAyMDE4LTEy
LTAzICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgW1BTT05dIFJl
cXVlc3QgYnkgdGhlIGNsaWVudCB0byBwcm9jZXNzLXN3YXAgaXMgaWdub3JlZCBpZiB0aGUgd2lu
ZG93IGhhcyBhbiBvcGVuZXIKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdFdl
YktpdEFQSS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMDEwMzc2ZjliYjQ0
ODI0Yjc4ODg2ZTBlZjc2YWEwMDUzNWM2ZWViNS4uNmQ3ZmEzN2Q5Y2NlZjQ5OGUzMjgzOGMwY2Q2
MzcxNTg2MmIwNDQ5ZCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0
QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE3Myw2ICsxNzMsOCBA
QAogCQk0NjM5N0I5NTFEQzJDODUwMDA5QTc4QUUgLyogRE9NTm9kZS5tbSBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ2Mzk3Qjk0MURDMkM4NTAwMDlBNzhB
RSAvKiBET01Ob2RlLm1tICovOyB9OwogCQk0NjQ3QjEyNjFFQkEzQjg1MDA0MUQ3RUYgLyogUHJv
Y2Vzc0RpZFRlcm1pbmF0ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0NjQ3QjEyNTFFQkEzQjczMDA0MUQ3RUYgLyogUHJvY2Vzc0RpZFRlcm1pbmF0
ZS5jcHAgKi87IH07CiAJCTQ2NkMzODQzMjEwNjM3REUwMDZBODhERSAvKiBub3RpZnktcmVzb3Vy
Y2VMb2FkT2JzZXJ2ZXIuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0NjZDMzg0MjIxMDYzN0NFMDA2QTg4REUgLyogbm90aWZ5LXJlc291
cmNlTG9hZE9ic2VydmVyLmh0bWwgKi87IH07CisJCTQ2N0M1NjUzMjFCNUVEMTMwMDU3NTE2RCAv
KiBHZXRTZXNzaW9uQ29va2llLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gNDY3QzU2NTEyMUI1RUNERjAwNTc1MTZEIC8qIEdldFNlc3Np
b25Db29raWUuaHRtbCAqLzsgfTsKKwkJNDY3QzU2NTQyMUI1RUQxMzAwNTc1MTZEIC8qIFNldFNl
c3Npb25Db29raWUuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0NjdDNTY1MjIxQjVFQ0RGMDA1NzUxNkQgLyogU2V0U2Vzc2lvbkNvb2tp
ZS5odG1sICovOyB9OwogCQk0NkE5MTE1OTIxMDhFNjc4MDA3OEQ0MEQgLyogQ3VzdG9tVXNlckFn
ZW50Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDZB
OTExNTgyMTA4RTY2QjAwNzhENDBEIC8qIEN1c3RvbVVzZXJBZ2VudC5tbSAqLzsgfTsKIAkJNDZB
RTVBMzcyMEY5MDY2RDAwRTA4NzNFIC8qIFNpbXBsZVNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25z
LTMuc3FsaXRlMyBpbiBDb3B5IFJlc291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0NjU2QTc1NzIwRjkwNTRGMDAwMkUyMUYgLyogU2ltcGxlU2VydmljZVdvcmtlclJl
Z2lzdHJhdGlvbnMtMy5zcWxpdGUzICovOyB9OwogCQk0NkM1MTlEQTFEMzU1QUIyMDBEQUE1MUEg
LyogTG9jYWxTdG9yYWdlTnVsbEVudHJpZXMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA0NkM1MTlEODFEMzU1QTczMDBEQUE1MUEgLyogTG9jYWxTdG9y
YWdlTnVsbEVudHJpZXMubW0gKi87IH07CkBAIC0xMDc3LDYgKzEwNzksNyBAQAogCQkJCTI2RjUy
RUIyMTgyODhGMjQwMDIzRDQxMiAvKiBnZW9sb2NhdGlvbldhdGNoUG9zaXRpb24uaHRtbCBpbiBD
b3B5IFJlc291cmNlcyAqLywKIAkJCQkyNkY1MkVCMzE4Mjg4RjI0MDAyM0Q0MTIgLyogZ2VvbG9j
YXRpb25XYXRjaFBvc2l0aW9uV2l0aEhpZ2hBY2N1cmFjeS5odG1sIGluIENvcHkgUmVzb3VyY2Vz
ICovLAogCQkJCTA3RTFGNkEyMUZGQzQ0RkEwMDk2QzdFQyAvKiBnZXREaXNwbGF5TWVkaWEuaHRt
bCBpbiBDb3B5IFJlc291cmNlcyAqLywKKwkJCQk0NjdDNTY1MzIxQjVFRDEzMDA1NzUxNkQgLyog
R2V0U2Vzc2lvbkNvb2tpZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCTA3NDk5NDQy
MUVBNTAzNEIwMDBEQTQ0RSAvKiBnZXRVc2VyTWVkaWEuaHRtbCBpbiBDb3B5IFJlc291cmNlcyAq
LywKIAkJCQlGNDZBMDk1QjFFRDhBNkU2MDBENEFBNTUgLyogZ2lmLWFuZC1maWxlLWlucHV0Lmh0
bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCiAJCQkJOUI0RjhGQTcxNTlENTJERDAwMkQ5Rjk0IC8q
IEhUTUxDb2xsZWN0aW9uTmFtZWRJdGVtLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCkBAIC0x
MjAyLDYgKzEyMDUsNyBAQAogCQkJCTdBNjZCREI4MUVBRjE4RDUwMENDQzkyNCAvKiBzZXQtbG9u
Zy10aXRsZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJCUNFNkU4MUE0MjBBOTMzRDUw
MEUyQzgwRiAvKiBzZXQtdGltZW91dC1mdW5jdGlvbi5odG1sIGluIENvcHkgUmVzb3VyY2VzICov
LAogCQkJCTUyQjhDRjk4MTU4NjhEOTEwMDI4MTA1MyAvKiBTZXREb2N1bWVudFVSSS5odG1sIGlu
IENvcHkgUmVzb3VyY2VzICovLAorCQkJCTQ2N0M1NjU0MjFCNUVEMTMwMDU3NTE2RCAvKiBTZXRT
ZXNzaW9uQ29va2llLmh0bWwgaW4gQ29weSBSZXNvdXJjZXMgKi8sCiAJCQkJQ0VCQUJENDkxQjcx
Njg3QzAwNTEyMTBBIC8qIHNob3VsZC1vcGVuLWV4dGVybmFsLXNjaGVtZXMuaHRtbCBpbiBDb3B5
IFJlc291cmNlcyAqLywKIAkJCQlGNEUzRDgwODIwRjcwQkI5MDA3QjU4QzUgLyogc2lnbmlmaWNh
bnQtdGV4dC1taWxlc3RvbmUtYXJ0aWNsZS5odG1sIGluIENvcHkgUmVzb3VyY2VzICovLAogCQkJ
CUY0RkMwNzc3MjBGMDEzQjYwMENBMDQzQyAvKiBzaWduaWZpY2FudC10ZXh0LW1pbGVzdG9uZS5o
dG1sIGluIENvcHkgUmVzb3VyY2VzICovLApAQCAtMTQ5Miw2ICsxNDk2LDggQEAKIAkJNDY0N0Ix
MjUxRUJBM0I3MzAwNDFEN0VGIC8qIFByb2Nlc3NEaWRUZXJtaW5hdGUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUHJvY2Vzc0RpZFRlcm1pbmF0ZS5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ2NTZBNzU3MjBGOTA1NEYwMDAyRTIxRiAvKiBTaW1w
bGVTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9ucy0zLnNxbGl0ZTMgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBmaWxlOyBwYXRoID0gIlNpbXBsZVNlcnZp
Y2VXb3JrZXJSZWdpc3RyYXRpb25zLTMuc3FsaXRlMyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTQ2NkMzODQyMjEwNjM3Q0UwMDZBODhERSAvKiBub3RpZnktcmVzb3VyY2VMb2FkT2Jz
ZXJ2ZXIuaHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRtbDsgcGF0aCA9ICJub3RpZnktcmVzb3VyY2VM
b2FkT2JzZXJ2ZXIuaHRtbCI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTQ2N0M1NjUx
MjFCNUVDREYwMDU3NTE2RCAvKiBHZXRTZXNzaW9uQ29va2llLmh0bWwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
Lmh0bWw7IHBhdGggPSBHZXRTZXNzaW9uQ29va2llLmh0bWw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTQ2N0M1NjUyMjFCNUVDREYwMDU3NTE2RCAvKiBTZXRTZXNzaW9uQ29va2llLmh0
bWwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0Lmh0bWw7IHBhdGggPSBTZXRTZXNzaW9uQ29va2llLmh0bWw7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ2QTkxMTU4MjEwOEU2NkIwMDc4RDQwRCAvKiBD
dXN0b21Vc2VyQWdlbnQubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGgg
PSBDdXN0b21Vc2VyQWdlbnQubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ2QzUx
OUQ4MUQzNTVBNzMwMERBQTUxQSAvKiBMb2NhbFN0b3JhZ2VOdWxsRW50cmllcy5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IExvY2FsU3RvcmFnZU51bGxFbnRyaWVz
Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0NkM1MTlFMjFEMzU2Mjk2MDBEQUE1
MUEgLyogTG9jYWxTdG9yYWdlTnVsbEVudHJpZXMuaHRtbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQuaHRtbDsg
cGF0aCA9IExvY2FsU3RvcmFnZU51bGxFbnRyaWVzLmh0bWw7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CkBAIC0yNzkxLDYgKzI3OTcsNyBAQAogCQkJCUNERTE5NUIyMUNGRTBBREUwMDUzRDI1
NiAvKiBGdWxsc2NyZWVuVG9wQ29udGVudEluc2V0Lmh0bWwgKi8sCiAJCQkJNjM2MzUzQTYxRTk4
NjE5NDAwMDlGOEFGIC8qIEdlb2xvY2F0aW9uR2V0Q3VycmVudFBvc2l0aW9uUmVzdWx0Lmh0bWwg
Ki8sCiAJCQkJMDdFMUY2QTExRkZDNDRGOTAwOTZDN0VDIC8qIGdldERpc3BsYXlNZWRpYS5odG1s
ICovLAorCQkJCTQ2N0M1NjUxMjFCNUVDREYwMDU3NTE2RCAvKiBHZXRTZXNzaW9uQ29va2llLmh0
bWwgKi8sCiAJCQkJRjQ3RDMwRUQxRUQyOEE2QzAwMDQ4MkUxIC8qIGdpZi1hbmQtZmlsZS1pbnB1
dC5odG1sICovLAogCQkJCTUxMDQ3Nzc2MUQyOThFNTcwMDk3NDdFQiAvKiBJREJEZWxldGVSZWNv
dmVyeS5odG1sICovLAogCQkJCTUxMDQ3NzZGMUQyOThEODUwMDk3NDdFQiAvKiBJREJEZWxldGVS
ZWNvdmVyeS5zcWxpdGUzICovLApAQCAtMjg3NSw2ICsyODgyLDcgQEAKIAkJCQkyRTkyQjhGNjIx
NjQ5MEMzMDA1QjY0RjAgLyogcmljaC10ZXh0LWF0dHJpYnV0ZXMuaHRtbCAqLywKIAkJCQlGNEUw
QTI5NTIxMUZDNUEzMDBBRjdDN0YgLyogc2VsZWN0ZWQtdGV4dC1hbmQtdGV4dGFyZWEuaHRtbCAq
LywKIAkJCQlGNEQ2NURBNzFGNUU0NkMwMDA5RDhDMjcgLyogc2VsZWN0ZWQtdGV4dC1pbWFnZS1s
aW5rLWFuZC1lZGl0YWJsZS5odG1sICovLAorCQkJCTQ2N0M1NjUyMjFCNUVDREYwMDU3NTE2RCAv
KiBTZXRTZXNzaW9uQ29va2llLmh0bWwgKi8sCiAJCQkJRjRFM0Q4MDcyMEY3MDhFNDAwN0I1OEM1
IC8qIHNpZ25pZmljYW50LXRleHQtbWlsZXN0b25lLWFydGljbGUuaHRtbCAqLywKIAkJCQlGNEZD
MDc3NjIwRjAxMDgxMDBDQTA0M0MgLyogc2lnbmlmaWNhbnQtdGV4dC1taWxlc3RvbmUuaHRtbCAq
LywKIAkJCQlDOUI0QUQyOTFFQ0E2RUE1MDBGNUZFQTAgLyogc2lsZW5jZS1sb25nLm00YSAqLywK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvR2V0U2Vz
c2lvbkNvb2tpZS5odG1sIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9H
ZXRTZXNzaW9uQ29va2llLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDEwYmI3N2Y5OTI3YWY0MzRiYzg3ODQz
NmYzMTMzY2IyN2RjMzhkMAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0Q29jb2EvR2V0U2Vzc2lvbkNvb2tpZS5odG1sCkBAIC0wLDAgKzEsMyBAQAor
PHNjcmlwdD4KK3dpbmRvdy53ZWJraXQubWVzc2FnZUhhbmRsZXJzLnRlc3RIYW5kbGVyLnBvc3RN
ZXNzYWdlKGRvY3VtZW50LmNvb2tpZSk7Cis8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvUHJvY2Vzc1N3YXBPbk5hdmlnYXRpb24ubW0g
Yi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1Byb2Nlc3NTd2FwT25OYXZp
Z2F0aW9uLm1tCmluZGV4IDFkNjQyZDU1NGFjMTU1ODMzNTEyNTNhNGQwYzczNWI3MGU2NWU3MWIu
LmZkMDAzNjNlZWUyMmE1ZDMxOGFkY2RmNzc1NzExOTJmNWUyOTVkZjAgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvUHJvY2Vzc1N3YXBPbk5hdmlnYXRp
b24ubW0KKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Qcm9jZXNz
U3dhcE9uTmF2aWdhdGlvbi5tbQpAQCAtMjk4OCw2ICsyOTg4LDYzIEBAIFRFU1QoUHJvY2Vzc1N3
YXAsIFVzZVByZXdhcm1lZFByb2Nlc3NBZnRlclRlcm1pbmF0aW5nTmV0d29ya1Byb2Nlc3MpCiAg
ICAgZG9uZSA9IGZhbHNlOwogfQogCitURVNUKFByb2Nlc3NTd2FwLCBVc2VTZXNzaW9uQ29va2ll
c0FmdGVyUHJvY2Vzc1N3YXBJblByaXZhdGVCcm93c2luZykKK3sKKyAgICBhdXRvIHByb2Nlc3NQ
b29sQ29uZmlndXJhdGlvbiA9IGFkb3B0TlMoW1tfV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24g
YWxsb2NdIGluaXRdKTsKKyAgICBwcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uZ2V0KCkucHJvY2Vz
c1N3YXBzT25OYXZpZ2F0aW9uID0gWUVTOworICAgIGF1dG8gcHJvY2Vzc1Bvb2wgPSBhZG9wdE5T
KFtbV0tQcm9jZXNzUG9vbCBhbGxvY10gX2luaXRXaXRoQ29uZmlndXJhdGlvbjpwcm9jZXNzUG9v
bENvbmZpZ3VyYXRpb24uZ2V0KCldKTsKKworICAgIFJldGFpblB0cjxXS1dlYnNpdGVEYXRhU3Rv
cmU+IGVwaGVtZXJhbFN0b3JlID0gW1dLV2Vic2l0ZURhdGFTdG9yZSBub25QZXJzaXN0ZW50RGF0
YVN0b3JlXTsKKworICAgIGF1dG8gd2ViVmlld0NvbmZpZ3VyYXRpb24gPSBhZG9wdE5TKFtbV0tX
ZWJWaWV3Q29uZmlndXJhdGlvbiBhbGxvY10gaW5pdF0pOworICAgIFt3ZWJWaWV3Q29uZmlndXJh
dGlvbiBzZXRQcm9jZXNzUG9vbDpwcm9jZXNzUG9vbC5nZXQoKV07CisgICAgd2ViVmlld0NvbmZp
Z3VyYXRpb24uZ2V0KCkud2Vic2l0ZURhdGFTdG9yZSA9IGVwaGVtZXJhbFN0b3JlLmdldCgpOwor
CisgICAgYXV0byBoYW5kbGVyID0gYWRvcHROUyhbW1BTT05TY2hlbWUgYWxsb2NdIGluaXRdKTsK
KyAgICBbd2ViVmlld0NvbmZpZ3VyYXRpb24gc2V0VVJMU2NoZW1lSGFuZGxlcjpoYW5kbGVyLmdl
dCgpIGZvclVSTFNjaGVtZTpAInBzb24iXTsKKworICAgIGF1dG8gbWVzc2FnZUhhbmRsZXIgPSBh
ZG9wdE5TKFtbUFNPTk1lc3NhZ2VIYW5kbGVyIGFsbG9jXSBpbml0XSk7CisgICAgW1t3ZWJWaWV3
Q29uZmlndXJhdGlvbiB1c2VyQ29udGVudENvbnRyb2xsZXJdIGFkZFNjcmlwdE1lc3NhZ2VIYW5k
bGVyOm1lc3NhZ2VIYW5kbGVyLmdldCgpIG5hbWU6QCJ0ZXN0SGFuZGxlciJdOworCisgICAgYXV0
byB3ZWJWaWV3ID0gYWRvcHROUyhbW1dLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01h
a2VSZWN0KDAsIDAsIDgwMCwgNjAwKSBjb25maWd1cmF0aW9uOndlYlZpZXdDb25maWd1cmF0aW9u
LmdldCgpXSk7CisgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tQU09OTmF2aWdhdGlvbkRl
bGVnYXRlIGFsbG9jXSBpbml0XSk7CisgICAgW3dlYlZpZXcgc2V0TmF2aWdhdGlvbkRlbGVnYXRl
OmRlbGVnYXRlLmdldCgpXTsKKworICAgIE5TVVJMUmVxdWVzdCAqcmVxdWVzdCA9IFtOU1VSTFJl
cXVlc3QgcmVxdWVzdFdpdGhVUkw6W1tOU0J1bmRsZSBtYWluQnVuZGxlXSBVUkxGb3JSZXNvdXJj
ZTpAIlNldFNlc3Npb25Db29raWUiIHdpdGhFeHRlbnNpb246QCJodG1sIiBzdWJkaXJlY3Rvcnk6
QCJUZXN0V2ViS2l0QVBJLnJlc291cmNlcyJdXTsKKyAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpy
ZXF1ZXN0XTsKKworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmZG9uZSk7CisgICAgZG9u
ZSA9IGZhbHNlOworCisgICAgYXV0byBwaWQxID0gW3dlYlZpZXcgX3dlYlByb2Nlc3NJZGVudGlm
aWVyXTsKKworICAgIC8vIFNob3VsZCBwcm9jZXNzLXN3YXAuCisgICAgcmVxdWVzdCA9IFtOU1VS
TFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6W05TVVJMIFVSTFdpdGhTdHJpbmc6QCJwc29uOi8vd3d3
LmFwcGxlLmNvbS9tYWluLmh0bWwiXV07CisgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6cmVxdWVz
dF07CisKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmUpOworICAgIGRvbmUgPSBm
YWxzZTsKKworICAgIGF1dG8gcGlkMiA9IFt3ZWJWaWV3IF93ZWJQcm9jZXNzSWRlbnRpZmllcl07
CisgICAgRVhQRUNUX05FKHBpZDEsIHBpZDIpOworCisgICAgLy8gU2hvdWxkIHByb2Nlc3Mtc3dh
cC4KKyAgICByZXF1ZXN0ID0gW05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDpbW05TQnVuZGxl
IG1haW5CdW5kbGVdIFVSTEZvclJlc291cmNlOkAiR2V0U2Vzc2lvbkNvb2tpZSIgd2l0aEV4dGVu
c2lvbjpAImh0bWwiIHN1YmRpcmVjdG9yeTpAIlRlc3RXZWJLaXRBUEkucmVzb3VyY2VzIl1dOwor
ICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OnJlcXVlc3RdOworCisgICAgVGVzdFdlYktpdEFQSTo6
VXRpbDo6cnVuKCZkb25lKTsKKyAgICBkb25lID0gZmFsc2U7CisKKyAgICBhdXRvIHBpZDMgPSBb
d2ViVmlldyBfd2ViUHJvY2Vzc0lkZW50aWZpZXJdOworICAgIEVYUEVDVF9ORShwaWQyLCBwaWQz
KTsKKworICAgIFRlc3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmcmVjZWl2ZWRNZXNzYWdlKTsKKyAg
ICByZWNlaXZlZE1lc3NhZ2UgPSBmYWxzZTsKKworICAgIEVYUEVDVF9FUSgxdSwgW3JlY2VpdmVk
TWVzc2FnZXMgY291bnRdKTsKKyAgICBFWFBFQ1RfV0tfU1RSRVEoQCJmb289YmFyIiwgcmVjZWl2
ZWRNZXNzYWdlcy5nZXQoKVswXSk7Cit9CisKICNpZiBQTEFURk9STShNQUMpCiAKIFRFU1QoUHJv
Y2Vzc1N3YXAsIFRlcm1pbmF0ZVByb2Nlc3NBZnRlclByb2Nlc3NTd2FwKQpkaWZmIC0tZ2l0IGEv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9TZXRTZXNzaW9uQ29va2llLmh0
bWwgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1NldFNlc3Npb25Db29r
aWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi45MzdlMjc0YmYwYmQ2MTY4NDk5ZmI5NTU1M2RhY2Y0YmY3NjM3
MmEyCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRD
b2NvYS9TZXRTZXNzaW9uQ29va2llLmh0bWwKQEAgLTAsMCArMSwzIEBACis8c2NyaXB0PgorZG9j
dW1lbnQuY29va2llID0gImZvbz1iYXIiOworPC9zY3JpcHQ+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>