<?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>218585</bug_id>
          
          <creation_ts>2020-11-04 14:31:53 -0800</creation_ts>
          <short_desc>autofocus of text input should not select text</short_desc>
          <delta_ts>2020-11-09 11:08:56 -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>Forms</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>data:text/html,&lt;input type=text value=&quot;Test&quot; autofocus&gt;</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="Devin Rousso">hi</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>akeerthi</cc>
    
    <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hi</cc>
    
    <cc>kangil.han</cc>
    
    <cc>mifenton</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1704604</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-11-04 14:31:53 -0800</bug_when>
    <thetext>this appears to be longstanding behavior of WebKit (`HTMLInputElement::updateFocusAppearance` calls `select` or something with an equivalent effect), but I&apos;m not really sure why

both Chrome and Firefox do not have this behavior</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1704605</commentid>
    <comment_count>1</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-11-04 14:32:11 -0800</bug_when>
    <thetext>&lt;rdar://problem/60130704&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1704661</commentid>
    <comment_count>2</comment_count>
      <attachid>413223</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-11-04 16:42:18 -0800</bug_when>
    <thetext>Created attachment 413223
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1705005</commentid>
    <comment_count>3</comment_count>
      <attachid>413351</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-11-05 13:38:06 -0800</bug_when>
    <thetext>Created attachment 413351
Patch

my initial attempt had more behavior change &quot;ripples&quot; than i&apos;d anticipated, so here&apos;s another approach that&apos;s (hopefully) far more targeted in behavior change

putting this up before writing tests to see if EWS still has issues with this approach</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1705059</commentid>
    <comment_count>4</comment_count>
      <attachid>413371</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-11-05 16:43:39 -0800</bug_when>
    <thetext>Created attachment 413371
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1705291</commentid>
    <comment_count>5</comment_count>
      <attachid>413442</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-11-06 10:11:04 -0800</bug_when>
    <thetext>Created attachment 413442
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1705375</commentid>
    <comment_count>6</comment_count>
      <attachid>413442</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-11-06 12:44:53 -0800</bug_when>
    <thetext>Comment on attachment 413442
Patch

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

&gt; Source/WebCore/dom/Document.h:292
&gt; +    Restore, // If there is no previous selection, this behaves like SelectAll.

Nit - it&apos;s a little more verbose, but maybe `RestoreOrSelectAll`? (and remove the comment)

&gt; Source/WebCore/dom/Document.h:293
&gt; +    PlaceCursorAtStart,

Also, this should be (selection) Caret, not (mouse) Cursor :P

&gt; LayoutTests/fast/forms/input-text-autofocus.html:27
&gt; +    shouldBe(&quot;input.selectionStart&quot;, UIHelper.isIOSFamily() ? &quot;3&quot; : &quot;0&quot;);
&gt; +    shouldBe(&quot;input.selectionEnd&quot;, UIHelper.isIOSFamily() ? &quot;3&quot; : &quot;0&quot;);

We generally try to avoid platform-specific logic like this in tests, if possible. Can we just override the editing behavior instead, and make all platforms yield the same results?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1705420</commentid>
    <comment_count>7</comment_count>
      <attachid>413483</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-11-06 14:23:08 -0800</bug_when>
    <thetext>Created attachment 413483
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1705772</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-11-09 11:08:54 -0800</bug_when>
    <thetext>Committed r269587: &lt;https://trac.webkit.org/changeset/269587&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 413483.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413223</attachid>
            <date>2020-11-04 16:42:18 -0800</date>
            <delta_ts>2020-11-05 13:38:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218585-20201104164218.patch</filename>
            <type>text/plain</type>
            <size>35233</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA5YmQ5ZmUwNzI1ZGRlYzA0YTFlYmVkOGRiODIyNGRjYjllMzdlN2EzLi4z
YWE1MDVkYjI1ZTliOGMxNzdmZTUxZjM2Y2MyMTk4YmI1OTQ4YjhlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsNTAgQEAKKzIwMjAtMTEtMDQgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIGF1dG9mb2N1cyBvZiB0ZXh0IGlucHV0IHNob3VsZCBub3Qgc2VsZWN0IHRl
eHQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODU4
NQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjAxMzA3MDQ+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hlbiBhIHByZXZpb3VzbHkgdW5mb2N1c2Vk
IGA8aW5wdXQgdHlwZT0idGV4dCI+YCBpcyBwcm9ncmFtbWF0aWNhbGx5IGZvY3VzZWQgKHN1Y2gg
YXMgdmlhCisgICAgICAgIHRoZSBgYXV0b2ZvY3VzYCBIVE1MIGF0dHJpYnV0ZSBvciBjYWxsaW5n
IGBmb2N1cygpYCBpbiBKYXZhU2NyaXB0KSwgd2Ugc2hvdWxkIG5vdCBzZWxlY3QgdGhlCisgICAg
ICAgIGNvbnRlbnRzIG9mIHRoZSBpbnB1dC4gSW5zdGVhZCwgd2Ugc2hvdWxkIGp1c3QgcGxhY2Ug
dGhlIGN1cnNvciBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSB0ZXh0LgorICAgICAgICBUaGlzIG1h
dGNoZXMgdGhlIGJlaGF2aW9yIG9mIG90aGVyIGJyb3dzZXJzLgorCisgICAgICAgIFRoaXMgcGF0
Y2ggc2hvdWxkIGhhdmUgbm8gZWZmZWN0IG9uIG5vbi1wcm9ncmFtbWF0aWMgZm9jdXMsIHN1Y2gg
YXMgdGFiYmluZyBvciBgYWNjZXNza2V5YC4KKworICAgICAgICBUZXN0czogZmFzdC9mb3Jtcy9p
bnB1dC1hcHBlYXJhbmNlLWZvY3VzLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvZm9ybXMvaW5w
dXQtYXBwZWFyYW5jZS1yZWFkb25seS5odG1sCisgICAgICAgICAgICAgICBmYXN0L2Zvcm1zL2lu
cHV0LWRvdWJsZS1jbGljay1zZWxlY3Rpb24tZ2FwLWJ1Zy5odG1sCisgICAgICAgICAgICAgICBm
YXN0L2Zvcm1zL2ZvY3VzLXNlbGVjdGlvbi1pbnB1dC5odG1sCisgICAgICAgICAgICAgICBmYXN0
L2Zvcm1zL2ZvY3VzLXNlbGVjdGlvbi10ZXh0YXJlYS5odG1sCisKKyAgICAgICAgKiBkb20vRG9j
dW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQuaDoKKyAgICAgICAgKiBo
dG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxl
bWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1
dEVsZW1lbnQ6OnNldERlZmF1bHRTZWxlY3Rpb25BZnRlckZvY3VzKToKKyAgICAgICAgKiBodG1s
L0lucHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnB1dFR5cGU6OmFjY2Vzc0tleUFj
dGlvbik6CisgICAgICAgICogcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Rm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNJbkRvY3VtZW50T3JkZXIpOgorICAg
ICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNEaXJlY3Rpb25hbGx5
SW5Db250YWluZXIpOgorICAgICAgICBBZGQgYSBuZXcgaXRlbSB0byBgU2VsZWN0aW9uUmVzdG9y
YXRpb25Nb2RlYCBjYWxsZWQgYEV4cGFuZGAgdGhhdCBpcyB1c2VkIHRvIGluZGljYXRlIHRoYXQK
KyAgICAgICAgYWxsIHRoZSBjb250ZW50cyBvZiB0aGUgbm9kZSBzaG91bGQgYmUgc2VsZWN0ZWQu
CisKKyAgICAgICAgKiBkb20vRWxlbWVudC5oOgorICAgICAgICAqIGRvbS9FbGVtZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OmZvY3VzKToKKyAgICAgICAgKiBodG1sL0hUTUxM
YWJlbEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTExhYmVsRWxlbWVudDo6Zm9jdXMpOgorICAgICAgICAqIGh0bWwv
SFRNTExlZ2VuZEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxMZWdlbmRFbGVtZW50LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxMZWdlbmRFbGVtZW50Ojpmb2N1cyk6CisgICAgICAg
IFJlcGxhY2UgdGhlIGBib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbmAgd2l0aCBgU2VsZWN0
aW9uUmVzdG9yYXRpb25Nb2RlYCBzaW5jZSB0aGF0J3MKKyAgICAgICAgd2hhdCBpdCdzIGV2ZW50
dWFsbHkgdXNlZCBmb3IgYW55d2F5cy4gVGhpcyBhbHNvIGFsbG93cyBmb3IgbW9yZSBmbGV4aWJp
bGl0eSBpbiBiZWhhdmlvciwKKyAgICAgICAgc3VjaCBhcyBjYWxsZXJzIHVzaW5nIHRoZSBuZXcg
YFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6RXhwYW5kYC4KKwogMjAyMC0xMS0wMyAgQW50b2lu
ZSBRdWludCAgPGdyYW91dHNAd2Via2l0Lm9yZz4KIAogICAgICAgICBhbGlnbi1pdGVtcyBzaG91
bGQgYmUgYSBkaXNjcmV0ZSBhbmltYXRhYmxlIHByb3BlcnR5CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCmlu
ZGV4IDcyYzJiOTI1MjJjYzFkZTI3ODc5NDlhNDQxYzE3NTBkNTQ4NzdjNWEuLjMzMTliYzU3MGQ3
NWYwMDFmNTRjYjkyZDNhZjY4ZGZiOGU3NzdhOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Eb2N1bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCkBAIC0y
ODgsNyArMjg4LDcgQEAgZW51bSBjbGFzcyBEb2N1bWVudENvbXBhdGliaWxpdHlNb2RlIDogdW5z
aWduZWQgY2hhciB7CiAKIGVudW0gRGltZW5zaW9uc0NoZWNrIHsgV2lkdGhEaW1lbnNpb25zQ2hl
Y2sgPSAxIDw8IDAsIEhlaWdodERpbWVuc2lvbnNDaGVjayA9IDEgPDwgMSwgQWxsRGltZW5zaW9u
c0NoZWNrID0gMSA8PCAyIH07CiAKLWVudW0gY2xhc3MgU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2Rl
IHsgUmVzdG9yZSwgU2V0RGVmYXVsdCB9OworZW51bSBjbGFzcyBTZWxlY3Rpb25SZXN0b3JhdGlv
bk1vZGUgeyBSZXN0b3JlLCBTZXREZWZhdWx0LCBFeHBhbmQgfTsKIAogZW51bSBjbGFzcyBIdHRw
RXF1aXZQb2xpY3kgewogICAgIEVuYWJsZWQsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9k
b20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKaW5kZXggOGQ2
NzI3NTkyYTE1OTQ2MjA5YWFkOGU0ZjYzNjgwOGFkZDZkZDFlYi4uZjc3ZTU2NjBjOTg5YTY1MWM3
YTkxMzg0ODhhNzFlMjJiYTk3MTM0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0Vs
ZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApAQCAtMjk5Myw3
ICsyOTkzLDcgQEAgc3RhdGljIFJlZlB0cjxFbGVtZW50PiBmaW5kRmlyc3RQcm9ncmFtYXRpY2Fs
bHlGb2N1c2FibGVFbGVtZW50SW5Db21wb3NlZFRyZWUoRWwKICAgICByZXR1cm4gbnVsbHB0cjsK
IH0KIAotdm9pZCBFbGVtZW50Ojpmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwg
Rm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQordm9pZCBFbGVtZW50Ojpmb2N1cyhTZWxlY3Rpb25S
ZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24p
CiB7CiAgICAgaWYgKCFpc0Nvbm5lY3RlZCgpKQogICAgICAgICByZXR1cm47CkBAIC0zMDQxLDcg
KzMwNDEsNyBAQCB2b2lkIEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0
aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCiAgICAgICAgICAgICByZXR1cm47CiAgICAg
fQogCi0gICAgbmV3VGFyZ2V0LT5yZXZlYWxGb2N1c2VkRWxlbWVudChyZXN0b3JlUHJldmlvdXNT
ZWxlY3Rpb24gPyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmUgOiBTZWxlY3Rpb25S
ZXN0b3JhdGlvbk1vZGU6OlNldERlZmF1bHQpOworICAgIG5ld1RhcmdldC0+cmV2ZWFsRm9jdXNl
ZEVsZW1lbnQocmVzdG9yYXRpb25Nb2RlKTsKIH0KIAogdm9pZCBFbGVtZW50OjpyZXZlYWxGb2N1
c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgc2VsZWN0aW9uTW9kZSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20v
RWxlbWVudC5oCmluZGV4IDE5NzQyOTkwNTAzODQ3MTIwMzQ3NTFlODBlZWNlOWM2YThlNjBjMjEu
LmE3NDI2YzQ3N2JhNThjNGFkNDE4YTEwYTQwY2U2ODQzYjJmZTkyNjkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1l
bnQuaApAQCAtNDAwLDcgKzQwMCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIFN0cmluZyB0YXJn
ZXQoKSBjb25zdCB7IHJldHVybiBTdHJpbmcoKTsgfQogCiAgICAgc3RhdGljIEFYVGV4dFN0YXRl
Q2hhbmdlSW50ZW50IGRlZmF1bHRGb2N1c1RleHRTdGF0ZUNoYW5nZUludGVudCgpIHsgcmV0dXJu
IEFYVGV4dFN0YXRlQ2hhbmdlSW50ZW50KEFYVGV4dFN0YXRlQ2hhbmdlVHlwZVNlbGVjdGlvbk1v
dmUsIEFYVGV4dFNlbGVjdGlvbiB7IEFYVGV4dFNlbGVjdGlvbkRpcmVjdGlvbkRpc2NvbnRpZ3Vv
dXMsIEFYVGV4dFNlbGVjdGlvbkdyYW51bGFyaXR5VW5rbm93biwgdHJ1ZSB9KTsgfQotICAgIHZp
cnR1YWwgdm9pZCBmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiA9IHRydWUsIEZv
Y3VzRGlyZWN0aW9uID0gRm9jdXNEaXJlY3Rpb246Ok5vbmUpOworICAgIHZpcnR1YWwgdm9pZCBm
b2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgPSBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6
OlJlc3RvcmUsIEZvY3VzRGlyZWN0aW9uID0gRm9jdXNEaXJlY3Rpb246Ok5vbmUpOwogICAgIHZv
aWQgcmV2ZWFsRm9jdXNlZEVsZW1lbnQoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlKTsKICAgICB2
aXJ0dWFsIFJlZlB0cjxFbGVtZW50PiBmb2N1c0FwcGVhcmFuY2VVcGRhdGVUYXJnZXQoKTsKICAg
ICB2aXJ0dWFsIHZvaWQgdXBkYXRlRm9jdXNBcHBlYXJhbmNlKFNlbGVjdGlvblJlc3RvcmF0aW9u
TW9kZSwgU2VsZWN0aW9uUmV2ZWFsTW9kZSA9IFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcAppbmRleCA5OTNmMzk1NDM5
YjJhOGU2OWQ5NmQ1OGQxOTkxNzgzM2E3MjA5M2VjLi43N2QxODhmMWQyYzVkNTNlNjY5ODczNGU2
Y2ZiZTFjYTg1OTgwZmNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1
dEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5j
cHAKQEAgLTQ3NiwxNSArNDc2LDE1IEBAIGJvb2wgSFRNTElucHV0RWxlbWVudDo6aXNUZXh0Rm9y
bUNvbnRyb2xNb3VzZUZvY3VzYWJsZSgpIGNvbnN0CiB2b2lkIEhUTUxJbnB1dEVsZW1lbnQ6OnVw
ZGF0ZUZvY3VzQXBwZWFyYW5jZShTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25N
b2RlLCBTZWxlY3Rpb25SZXZlYWxNb2RlIHJldmVhbE1vZGUpCiB7CiAgICAgaWYgKGlzVGV4dEZp
ZWxkKCkpIHsKLSAgICAgICAgaWYgKHJlc3RvcmF0aW9uTW9kZSA9PSBTZWxlY3Rpb25SZXN0b3Jh
dGlvbk1vZGU6OlNldERlZmF1bHQgfHwgIWhhc0NhY2hlZFNlbGVjdGlvbigpKQotICAgICAgICAg
ICAgc2V0RGVmYXVsdFNlbGVjdGlvbkFmdGVyRm9jdXMocmV2ZWFsTW9kZSk7Ci0gICAgICAgIGVs
c2UKKyAgICAgICAgaWYgKHJlc3RvcmF0aW9uTW9kZSA9PSBTZWxlY3Rpb25SZXN0b3JhdGlvbk1v
ZGU6OlJlc3RvcmUgJiYgaGFzQ2FjaGVkU2VsZWN0aW9uKCkpCiAgICAgICAgICAgICByZXN0b3Jl
Q2FjaGVkU2VsZWN0aW9uKHJldmVhbE1vZGUpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBz
ZXREZWZhdWx0U2VsZWN0aW9uQWZ0ZXJGb2N1cyhyZXN0b3JhdGlvbk1vZGUsIHJldmVhbE1vZGUp
OwogICAgIH0gZWxzZQogICAgICAgICBIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudDo6dXBkYXRl
Rm9jdXNBcHBlYXJhbmNlKHJlc3RvcmF0aW9uTW9kZSwgcmV2ZWFsTW9kZSk7CiB9CiAKLXZvaWQg
SFRNTElucHV0RWxlbWVudDo6c2V0RGVmYXVsdFNlbGVjdGlvbkFmdGVyRm9jdXMoU2VsZWN0aW9u
UmV2ZWFsTW9kZSByZXZlYWxNb2RlKQordm9pZCBIVE1MSW5wdXRFbGVtZW50OjpzZXREZWZhdWx0
U2VsZWN0aW9uQWZ0ZXJGb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25N
b2RlLCBTZWxlY3Rpb25SZXZlYWxNb2RlIHJldmVhbE1vZGUpCiB7CiAgICAgQVNTRVJUKGlzVGV4
dEZpZWxkKCkpOwogICAgIGludCBzdGFydCA9IDA7CkBAIC00OTQsNyArNDk0LDggQEAgdm9pZCBI
VE1MSW5wdXRFbGVtZW50OjpzZXREZWZhdWx0U2VsZWN0aW9uQWZ0ZXJGb2N1cyhTZWxlY3Rpb25S
ZXZlYWxNb2RlIHJldmVhbE0KICAgICAgICAgc3RhcnQgPSBzdGQ6Om51bWVyaWNfbGltaXRzPGlu
dD46Om1heCgpOwogICAgICAgICBkaXJlY3Rpb24gPSBTZWxlY3Rpb25IYXNGb3J3YXJkRGlyZWN0
aW9uOwogICAgIH0KLSAgICBzZXRTZWxlY3Rpb25SYW5nZShzdGFydCwgc3RkOjpudW1lcmljX2xp
bWl0czxpbnQ+OjptYXgoKSwgZGlyZWN0aW9uLCByZXZlYWxNb2RlLCBFbGVtZW50OjpkZWZhdWx0
Rm9jdXNUZXh0U3RhdGVDaGFuZ2VJbnRlbnQoKSk7CisgICAgaW50IGVuZCA9IHJlc3RvcmF0aW9u
TW9kZSA9PSBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OkV4cGFuZCA/IHN0ZDo6bnVtZXJpY19s
aW1pdHM8aW50Pjo6bWF4KCkgOiBzdGFydDsKKyAgICBzZXRTZWxlY3Rpb25SYW5nZShzdGFydCwg
ZW5kLCBkaXJlY3Rpb24sIHJldmVhbE1vZGUsIEVsZW1lbnQ6OmRlZmF1bHRGb2N1c1RleHRTdGF0
ZUNoYW5nZUludGVudCgpKTsKIH0KIAogdm9pZCBIVE1MSW5wdXRFbGVtZW50OjplbmRFZGl0aW5n
KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5oIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKaW5kZXggZmI4Yzg1ZDkyZDhh
ZDNlMDk1MzM1YzZjODNlOTY5NjgxODJhZWM4YS4uOGJmOWU3MjVlM2Y4NWY4ODMxMjdhM2VlMDY2
YzUzNmQ1NTVlYmE5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRF
bGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKQEAg
LTQ1NSw3ICs0NTUsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgYWRkVG9SYWRpb0J1dHRvbkdyb3Vw
KCk7CiAgICAgdm9pZCByZW1vdmVGcm9tUmFkaW9CdXR0b25Hcm91cCgpOwogCi0gICAgdm9pZCBz
ZXREZWZhdWx0U2VsZWN0aW9uQWZ0ZXJGb2N1cyhTZWxlY3Rpb25SZXZlYWxNb2RlKTsKKyAgICB2
b2lkIHNldERlZmF1bHRTZWxlY3Rpb25BZnRlckZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9k
ZSwgU2VsZWN0aW9uUmV2ZWFsTW9kZSk7CiAKICAgICBBdG9tU3RyaW5nIG1fbmFtZTsKICAgICBT
dHJpbmcgbV92YWx1ZUlmRGlydHk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxMYWJlbEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50
LmNwcAppbmRleCAzN2Y5Y2E1NmU4MGQ3MzI0MTAzYjFhMTI2ZmMyMmM2NjVhMDhhZDNjLi5mNWVm
OGI4MzVjMGUzOWZjMDE1MDllOTg4NmJjMzhjNWU2OGYyMjFjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTExhYmVsRWxlbWVudC5jcHAKQEAgLTE3MiwyMSArMTcyLDIxIEBAIGJvb2wgSFRNTExh
YmVsRWxlbWVudDo6d2lsbFJlc3BvbmRUb01vdXNlQ2xpY2tFdmVudHMoKQogICAgIHJldHVybiAo
ZWxlbWVudCAmJiBlbGVtZW50LT53aWxsUmVzcG9uZFRvTW91c2VDbGlja0V2ZW50cygpKSB8fCBI
VE1MRWxlbWVudDo6d2lsbFJlc3BvbmRUb01vdXNlQ2xpY2tFdmVudHMoKTsKIH0KIAotdm9pZCBI
VE1MTGFiZWxFbGVtZW50Ojpmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgRm9j
dXNEaXJlY3Rpb24gZGlyZWN0aW9uKQordm9pZCBIVE1MTGFiZWxFbGVtZW50Ojpmb2N1cyhTZWxl
Y3Rpb25SZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVjdGlvbiBkaXJl
Y3Rpb24pCiB7CiAgICAgUmVmPEhUTUxMYWJlbEVsZW1lbnQ+IHByb3RlY3RlZFRoaXMoKnRoaXMp
OwogICAgIGlmIChkb2N1bWVudCgpLmhhdmVTdHlsZXNoZWV0c0xvYWRlZCgpKSB7CiAgICAgICAg
IGRvY3VtZW50KCkudXBkYXRlTGF5b3V0KCk7CiAgICAgICAgIGlmIChpc0ZvY3VzYWJsZSgpKSB7
Ci0gICAgICAgICAgICAvLyBUaGUgdmFsdWUgb2YgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uIGlz
IG5vdCB1c2VkIGZvciBsYWJlbCBlbGVtZW50cyBhcyBpdCBkb2Vzbid0IG92ZXJyaWRlIHVwZGF0
ZUZvY3VzQXBwZWFyYW5jZS4KLSAgICAgICAgICAgIEVsZW1lbnQ6OmZvY3VzKHJlc3RvcmVQcmV2
aW91c1NlbGVjdGlvbiwgZGlyZWN0aW9uKTsKKyAgICAgICAgICAgIC8vIFRoZSB2YWx1ZSBvZiBy
ZXN0b3JhdGlvbk1vZGUgaXMgbm90IHVzZWQgZm9yIGxhYmVsIGVsZW1lbnRzIGFzIGl0IGRvZXNu
J3Qgb3ZlcnJpZGUgdXBkYXRlRm9jdXNBcHBlYXJhbmNlLgorICAgICAgICAgICAgRWxlbWVudDo6
Zm9jdXMocmVzdG9yYXRpb25Nb2RlLCBkaXJlY3Rpb24pOwogICAgICAgICAgICAgcmV0dXJuOwog
ICAgICAgICB9CiAgICAgfQogCiAgICAgLy8gVG8gbWF0Y2ggb3RoZXIgYnJvd3NlcnMsIGFsd2F5
cyByZXN0b3JlIHByZXZpb3VzIHNlbGVjdGlvbi4KICAgICBpZiAoYXV0byBlbGVtZW50ID0gY29u
dHJvbCgpKQotICAgICAgICBlbGVtZW50LT5mb2N1cyh0cnVlLCBkaXJlY3Rpb24pOworICAgICAg
ICBlbGVtZW50LT5mb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmUsIGRpcmVj
dGlvbik7CiB9CiAKIGJvb2wgSFRNTExhYmVsRWxlbWVudDo6YWNjZXNzS2V5QWN0aW9uKGJvb2wg
c2VuZE1vdXNlRXZlbnRzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFi
ZWxFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuaAppbmRl
eCA0NjYwZjA2Nzc3MzUxY2U2ZGM4OTVjODFiYjA3MjQ3YzljNDMyMGVlLi44MGUxNWMyMjU3OWRk
Yjg2NWZkYzExNzYwNThiZmYyZTMzYmZkZjlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxMYWJlbEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJl
bEVsZW1lbnQuaApAQCAtNTEsNyArNTEsNyBAQCBwcml2YXRlOgogICAgIC8vIE92ZXJyaWRkZW4g
dG8gZWl0aGVyIGNsaWNrKCkgb3IgZm9jdXMoKSB0aGUgY29ycmVzcG9uZGluZyBjb250cm9sLgog
ICAgIHZvaWQgZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVudCYpIGZpbmFsOwogCi0gICAgdm9pZCBm
b2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgRm9jdXNEaXJlY3Rpb24pIGZpbmFs
OworICAgIHZvaWQgZm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVjdGlv
bikgZmluYWw7CiAKICAgICBib29sIGlzSW50ZXJhY3RpdmVDb250ZW50KCkgY29uc3QgZmluYWwg
eyByZXR1cm4gdHJ1ZTsgfQogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TExlZ2VuZEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVu
dC5jcHAKaW5kZXggYTFlNTdjZmU0ZDBiMWYyMDgwMDcxZjQ3MmQ0NDlmNmI2MDhhMjI3Ni4uZGM0
M2M1ODBmMjg0MzlmMDZmZDNmZTM1YjZiMDE5MmRiMmRiOGQ2NCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTGVnZW5kRWxlbWVudC5jcHAKQEAgLTU3LDE5ICs1NywxOSBAQCBSZWZQdHI8SFRN
TEZvcm1Db250cm9sRWxlbWVudD4gSFRNTExlZ2VuZEVsZW1lbnQ6OmFzc29jaWF0ZWRDb250cm9s
KCkKICAgICByZXR1cm4gZGVzY2VuZGFudHNPZlR5cGU8SFRNTEZvcm1Db250cm9sRWxlbWVudD4o
KmVuY2xvc2luZ0ZpZWxkc2V0KS5maXJzdCgpOwogfQogCi12b2lkIEhUTUxMZWdlbmRFbGVtZW50
Ojpmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgRm9jdXNEaXJlY3Rpb24gZGly
ZWN0aW9uKQordm9pZCBIVE1MTGVnZW5kRWxlbWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRp
b25Nb2RlIHJlc3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQogewogICAg
IGlmIChkb2N1bWVudCgpLmhhdmVTdHlsZXNoZWV0c0xvYWRlZCgpKSB7CiAgICAgICAgIGRvY3Vt
ZW50KCkudXBkYXRlTGF5b3V0SWdub3JlUGVuZGluZ1N0eWxlc2hlZXRzKCk7CiAgICAgICAgIGlm
IChpc0ZvY3VzYWJsZSgpKSB7Ci0gICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyhyZXN0b3JlUHJl
dmlvdXNTZWxlY3Rpb24sIGRpcmVjdGlvbik7CisgICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyhy
ZXN0b3JhdGlvbk1vZGUsIGRpcmVjdGlvbik7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAg
IH0KICAgICB9CiAKICAgICAvLyBUbyBtYXRjaCBvdGhlciBicm93c2VycycgYmVoYXZpb3IsIG5l
dmVyIHJlc3RvcmUgcHJldmlvdXMgc2VsZWN0aW9uLgogICAgIGlmIChhdXRvIGNvbnRyb2wgPSBh
c3NvY2lhdGVkQ29udHJvbCgpKQotICAgICAgICBjb250cm9sLT5mb2N1cyhmYWxzZSwgZGlyZWN0
aW9uKTsKKyAgICAgICAgY29udHJvbC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpF
eHBhbmQsIGRpcmVjdGlvbik7CiB9CiAKIGJvb2wgSFRNTExlZ2VuZEVsZW1lbnQ6OmFjY2Vzc0tl
eUFjdGlvbihib29sIHNlbmRNb3VzZUV2ZW50cykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2Vu
ZEVsZW1lbnQuaAppbmRleCAyZGY2MjI5NzFmMTM3OTIyZGMzOGM4ODU0OTJkMmYzODU0NmYyYTFh
Li43ZGNiMWI4NTBhMjdlM2I3YWNiODAyODdjNTc0ZjgzMDJmY2E2MDJmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oCkBAIC00Myw3ICs0Myw3IEBAIHByaXZhdGU6CiAg
ICAgUmVmUHRyPEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ+IGFzc29jaWF0ZWRDb250cm9sKCk7CiAK
ICAgICBib29sIGFjY2Vzc0tleUFjdGlvbihib29sIHNlbmRNb3VzZUV2ZW50cykgZmluYWw7Ci0g
ICAgdm9pZCBmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgRm9jdXNEaXJlY3Rp
b24pIGZpbmFsOworICAgIHZvaWQgZm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlLCBGb2N1
c0RpcmVjdGlvbikgZmluYWw7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0lucHV0VHlwZS5jcHAKaW5kZXggMjcwNjE4YmE5ZTU1ZjZjYjIzNzc1MjUxNDc5Y2RiMTYz
NTlhODFmZi4uNWUxNTYxMjdhNmNiZTFiODEwNmJhOGUzZDdhYTAxMjc1Y2RkZTA1ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSW5wdXRUeXBlLmNwcApAQCAtNTgyLDcgKzU4Miw3IEBAIHZvaWQgSW5wdXRUeXBl
OjpoYW5kbGVCbHVyRXZlbnQoKQogYm9vbCBJbnB1dFR5cGU6OmFjY2Vzc0tleUFjdGlvbihib29s
KQogewogICAgIEFTU0VSVChlbGVtZW50KCkpOwotICAgIGVsZW1lbnQoKS0+Zm9jdXMoZmFsc2Up
OworICAgIGVsZW1lbnQoKS0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpFeHBhbmQp
OwogICAgIHJldHVybiBmYWxzZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9Gb2N1c0NvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xs
ZXIuY3BwCmluZGV4IDI2NmYzMTVlNDBkZDQ2NWI0ODYxNGE4OTY4OTBiNjc4YjU2ZGViODUuLjM3
ZDBmN2E3ZWEzMTk2NGYwNjI5MGZjZmQ1NjMzNDcxMTdjYzE2OGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKQEAgLTUzMyw3ICs1MzMsNyBAQCBib29sIEZvY3VzQ29u
dHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKEZvY3VzRGlyZWN0aW9uIGRpcmVj
dGlvbiwgS2V5YgogICAgICAgICB9CiAgICAgfQogCi0gICAgZWxlbWVudC0+Zm9jdXMoZmFsc2Us
IGRpcmVjdGlvbik7CisgICAgZWxlbWVudC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2Rl
OjpFeHBhbmQsIGRpcmVjdGlvbik7CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKQEAgLTExMDcsNyAr
MTEwNyw3IEBAIGJvb2wgRm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNEaXJlY3Rpb25hbGx5
SW5Db250YWluZXIoTm9kZSogY29udGFpbmVyLCBjb25zCiAgICAgRWxlbWVudCogZWxlbWVudCA9
IGRvd25jYXN0PEVsZW1lbnQ+KGZvY3VzQ2FuZGlkYXRlLmZvY3VzYWJsZU5vZGUpOwogICAgIEFT
U0VSVChlbGVtZW50KTsKIAotICAgIGVsZW1lbnQtPmZvY3VzKGZhbHNlLCBkaXJlY3Rpb24pOwor
ICAgIGVsZW1lbnQtPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6RXhwYW5kLCBkaXJl
Y3Rpb24pOwogICAgIHJldHVybiB0cnVlOwogfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYWY4YzlkOTI5YTRlYjUzMjRk
NTQwNjUwZmFiY2I2ODM4MTI4Yjk4OC4uNzllMDE3Mjk1MDgzYjQ3ZmZkMjk2OGM2MTE2YWRkNGJj
NWQ1MDRjYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIwLTExLTA0ICBEZXZpbiBSb3Vzc28g
IDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBhdXRvZm9jdXMgb2YgdGV4dCBpbnB1dCBz
aG91bGQgbm90IHNlbGVjdCB0ZXh0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMTg1ODUKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYwMTMwNzA0Pgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9m
b3Jtcy9mb2N1cy1zZWxlY3Rpb24taW5wdXQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3Qv
Zm9ybXMvZm9jdXMtc2VsZWN0aW9uLWlucHV0Lmh0bWw6CisgICAgICAgICogZmFzdC9mb3Jtcy9m
b2N1cy1zZWxlY3Rpb24tdGV4dGFyZWEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZm9y
bXMvZm9jdXMtc2VsZWN0aW9uLXRleHRhcmVhLmh0bWw6CisgICAgICAgICogZmFzdC9mb3Jtcy9p
bnB1dC1maXJzdC1sZXR0ZXItZWRpdC1leHBlY3RlZC5odG1sOgorICAgICAgICAqIGZhc3QvZm9y
bXMvaW5wdXQtZmlyc3QtbGV0dGVyLWVkaXQuaHRtbDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsv
ZmFzdC9mb3Jtcy9pbnB1dC1hcHBlYXJhbmNlLWZvY3VzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9ndGsvZmFzdC9mb3Jtcy9pbnB1dC1hcHBlYXJhbmNlLXJlYWRvbmx5LWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvZmFzdC9mb3Jtcy9pbnB1dC1kb3VibGUt
Y2xpY2stc2VsZWN0aW9uLWdhcC1idWctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3Jt
L21hYy9mYXN0L2Zvcm1zL2lucHV0LWFwcGVhcmFuY2UtZm9jdXMtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L2Zvcm1zL2lucHV0LWFwcGVhcmFuY2UtcmVhZG9ubHkt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L2Zvcm1zL2lucHV0LWRv
dWJsZS1jbGljay1zZWxlY3Rpb24tZ2FwLWJ1Zy1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxh
dGZvcm0vd2luL2Zhc3QvZm9ybXMvZm9jdXMtc2VsZWN0aW9uLXRleHRhcmVhLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vZmFzdC9mb3Jtcy9pbnB1dC1hcHBlYXJhbmNlLWZv
Y3VzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vZmFzdC9mb3Jtcy9pbnB1
dC1hcHBlYXJhbmNlLXJlYWRvbmx5LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS93
aW4vZmFzdC9mb3Jtcy9pbnB1dC1kb3VibGUtY2xpY2stc2VsZWN0aW9uLWdhcC1idWctZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL3dpbmNhaXJvL2Zhc3QvZm9ybXMvaW5wdXQtYXBw
ZWFyYW5jZS1mb2N1cy1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vd2luY2Fpcm8v
ZmFzdC9mb3Jtcy9pbnB1dC1hcHBlYXJhbmNlLXJlYWRvbmx5LWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiBwbGF0Zm9ybS93aW5jYWlyby9mYXN0L2Zvcm1zL2lucHV0LWRvdWJsZS1jbGljay1zZWxl
Y3Rpb24tZ2FwLWJ1Zy1leHBlY3RlZC50eHQ6CisKIDIwMjAtMTEtMDQgIEFudG9pbmUgUXVpbnQg
IDxncmFvdXRzQHdlYmtpdC5vcmc+CiAKICAgICAgICAgW2lPUyAxNCB3azJdIGFuaW1hdGlvbnMv
dW5wcmVmaXhlZC1ldmVudHMtbWl4ZWQtd2l0aC1wcmVmaXhlZC5odG1sIGlzIGEgZmxha3kgZmFp
bHVyZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb2N1cy1zZWxlY3Rpb24t
aW5wdXQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb2N1cy1zZWxlY3Rp
b24taW5wdXQtZXhwZWN0ZWQudHh0CmluZGV4IGM1MzgyZTZkN2VhOGQ3YTc4MmM2NWQ0Yzc0MWYx
OGMwYzExNDg2MjIuLmJkZjVhYjdkOGU4NjJkYzc0YmViYTRiZTliYjAzNGQyZmViNDk1ZmQgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9jdXMtc2VsZWN0aW9uLWlucHV0LWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2ZvY3VzLXNlbGVjdGlvbi1p
bnB1dC1leHBlY3RlZC50eHQKQEAgLTQwLDEwICs0MCwxMCBAQCBQQVNTIGZpcnN0LnNlbGVjdGlv
blN0YXJ0IGlzIDEyCiBQQVNTIGZpcnN0LnNlbGVjdGlvbkVuZCBpcyAxOQogUEFTUyBmaXJzdC5z
ZWxlY3Rpb25TdGFydCBpcyAwCiBQQVNTIGZpcnN0LnNlbGVjdGlvbkVuZCBpcyAxOQotUEFTUyBz
ZWNvbmQuc2VsZWN0aW9uU3RhcnQgaXMgMTEKLVBBU1Mgc2Vjb25kLnNlbGVjdGlvbkVuZCBpcyAx
OAotUEFTUyBzZWNvbmQuc2VsZWN0aW9uU3RhcnQgaXMgMTEKLVBBU1Mgc2Vjb25kLnNlbGVjdGlv
bkVuZCBpcyAxOAorUEFTUyBzZWNvbmQuc2VsZWN0aW9uU3RhcnQgaXMgMTIKK1BBU1Mgc2Vjb25k
LnNlbGVjdGlvbkVuZCBpcyAxOQorUEFTUyBzZWNvbmQuc2VsZWN0aW9uU3RhcnQgaXMgMAorUEFT
UyBzZWNvbmQuc2VsZWN0aW9uRW5kIGlzIDE5CiBQQVNTIHRoaXJkLnNlbGVjdGlvblN0YXJ0IGlz
IDExCiBQQVNTIHRoaXJkLnNlbGVjdGlvbkVuZCBpcyAxOAogUEFTUyB0aGlyZC5zZWxlY3Rpb25T
dGFydCBpcyAxMQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb2N1cy1zZWxl
Y3Rpb24taW5wdXQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9jdXMtc2VsZWN0aW9u
LWlucHV0Lmh0bWwKaW5kZXggNDEyZWJmYmQ4YjUwYTc2YjY1NWJlNDQwM2EyZDhhOWE5ZjQxZmZl
ZS4uNWJkNGUwNTUxOGI2NmNkNjVjMzIyMDI1NjU5ZTY0NTUzNmFlNjIwMiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9mb2N1cy1zZWxlY3Rpb24taW5wdXQuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2ZvY3VzLXNlbGVjdGlvbi1pbnB1dC5odG1sCkBAIC0yMCwx
MSArMjAsMTEgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgc2hvdWxkQmUoImZpcnN0LnNlbGVj
dGlvblN0YXJ0IiwgIjAiKTsKICAgICBzaG91bGRCZSgiZmlyc3Quc2VsZWN0aW9uRW5kIiwgIjE5
Iik7CiAKLSAgICBzaG91bGRCZSgic2Vjb25kLnNlbGVjdGlvblN0YXJ0IiwgIjExIik7Ci0gICAg
c2hvdWxkQmUoInNlY29uZC5zZWxlY3Rpb25FbmQiLCAiMTgiKTsKKyAgICBzaG91bGRCZSgic2Vj
b25kLnNlbGVjdGlvblN0YXJ0IiwgIjEyIik7CisgICAgc2hvdWxkQmUoInNlY29uZC5zZWxlY3Rp
b25FbmQiLCAiMTkiKTsKICAgICBldmVudFNlbmRlci5rZXlEb3duKCJKIiwgYWNjZXNzS2V5TW9k
aWZpZXJzKTsKLSAgICBzaG91bGRCZSgic2Vjb25kLnNlbGVjdGlvblN0YXJ0IiwgIjExIik7Ci0g
ICAgc2hvdWxkQmUoInNlY29uZC5zZWxlY3Rpb25FbmQiLCAiMTgiKTsKKyAgICBzaG91bGRCZSgi
c2Vjb25kLnNlbGVjdGlvblN0YXJ0IiwgIjAiKTsKKyAgICBzaG91bGRCZSgic2Vjb25kLnNlbGVj
dGlvbkVuZCIsICIxOSIpOwogCiAgICAgc2hvdWxkQmUoInRoaXJkLnNlbGVjdGlvblN0YXJ0Iiwg
IjExIik7CiAgICAgc2hvdWxkQmUoInRoaXJkLnNlbGVjdGlvbkVuZCIsICIxOCIpOwpAQCAtMTM0
LDcgKzEzNCw3IEBAIHRlc3QgaGFybmVzcywgdGhlIHRlc3QgcnVucyBhdXRvbWF0aWNhbGx5Ljwv
cD4KIDUpIDxsYWJlbCBpZD0iZmlmdGhMYWJlbCIgZm9yPSJmaWZ0aCIgc3R5bGU9ImNvbG9yOiBi
bHVlIj5DbGljayB0aGlzIGxhYmVsLCBvbmx5IHRoZSB3b3JkICJTVUNDRVNTIiBzaG91bGQgYmUg
c2VsZWN0ZWQ6PC9sYWJlbD4KIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0iZmlmdGgiIHZhbHVlPSJG
QUlMVVJFIG9yIFNVQ0NFU1MiPgogPHNjcmlwdD4KLSAgICB2YXIgc2Vjb25kID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImZpZnRoIik7CisgICAgdmFyIGZpZnRoID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImZpZnRoIik7CiAgICAgZmlmdGguZm9jdXMoKTsKICAgICBmaWZ0aC5zZXRTZWxl
Y3Rpb25SYW5nZSgxMSwgMTgpOwogICAgIGZpZnRoLmJsdXIoKTsKQEAgLTE3OSw3ICsxNzksNyBA
QCB0ZXN0IGhhcm5lc3MsIHRoZSB0ZXN0IHJ1bnMgYXV0b21hdGljYWxseS48L3A+CiAKIAogOSkg
PGZpZWxkc2V0PgotPGxlZ2VuZCBpZD0iZWlnaHRoTGVnZW5kIiBhY2Nlc3NrZXk9ImkiPkhpdCBD
dHJsLU9wdGlvbi1JIChvciBBbHQtSSBvbiBXaW5kb3dzKSwgdGhlIHdob2xlIHBocmFzZSAiU1VD
Q0VTUyBhbmQgU1VDQ0VTUyIgc2hvdWxkIGJlIHNlbGVjdGVkOjwvbGVnZW5kPgorPGxlZ2VuZCBp
ZD0ibmludGhMZWdlbmQiIGFjY2Vzc2tleT0iaSI+SGl0IEN0cmwtT3B0aW9uLUkgKG9yIEFsdC1J
IG9uIFdpbmRvd3MpLCB0aGUgd2hvbGUgcGhyYXNlICJTVUNDRVNTIGFuZCBTVUNDRVNTIiBzaG91
bGQgYmUgc2VsZWN0ZWQ6PC9sZWdlbmQ+CiA8aW5wdXQgdHlwZT0idGV4dCIgaWQ9Im5pbnRoIiB2
YWx1ZT0iU1VDQ0VTUyBhbmQgU1VDQ0VTUyI+CiA8c2NyaXB0PgogICAgIHZhciBuaW50aCA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJuaW50aCIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9mb3Jtcy9mb2N1cy1zZWxlY3Rpb24tdGV4dGFyZWEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZmFzdC9mb3Jtcy9mb2N1cy1zZWxlY3Rpb24tdGV4dGFyZWEtZXhwZWN0ZWQudHh0Cmlu
ZGV4IGJkMWQ4Y2YxYTg1YzA4MjAzYjM4ODQ3MDZmZTRkMTFiNWM0MmM2MmYuLjliMGUxOThhN2Nk
ZjUzMmJiMTQ4OTIxMDRiZWRiYzFhMDZlOTFhZmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zh
c3QvZm9ybXMvZm9jdXMtc2VsZWN0aW9uLXRleHRhcmVhLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2Zvcm1zL2ZvY3VzLXNlbGVjdGlvbi10ZXh0YXJlYS1leHBlY3RlZC50eHQK
QEAgLTM4LDggKzM4LDggQEAgVGhpcyB0ZXN0IGNoZWNrcyB3aGV0aGVyIHRoZSBzZWxlY3Rpb24g
aXMgcmVzdG9yZWQsIGNsZWFyZWQsIG9yIHNldCB0byB0aGUgZnVsbAogCiBQQVNTIGZpcnN0LnNl
bGVjdGlvblN0YXJ0IGlzIDExCiBQQVNTIGZpcnN0LnNlbGVjdGlvbkVuZCBpcyAxOAotRkFJTCBm
aXJzdC5zZWxlY3Rpb25TdGFydCBzaG91bGQgYmUgMTEuIFdhcyAwLgotRkFJTCBmaXJzdC5zZWxl
Y3Rpb25FbmQgc2hvdWxkIGJlIDE4LiBXYXMgMC4KK1BBU1MgZmlyc3Quc2VsZWN0aW9uU3RhcnQg
aXMgMTEKK1BBU1MgZmlyc3Quc2VsZWN0aW9uRW5kIGlzIDE4CiBQQVNTIHNlY29uZC5zZWxlY3Rp
b25TdGFydCBpcyAxMQogUEFTUyBzZWNvbmQuc2VsZWN0aW9uRW5kIGlzIDE4CiBQQVNTIHNlY29u
ZC5zZWxlY3Rpb25TdGFydCBpcyAxMQpAQCAtNjYsOCArNjYsOCBAQCBQQVNTIHNldmVudGguc2Vs
ZWN0aW9uU3RhcnQgaXMgMTEKIFBBU1Mgc2V2ZW50aC5zZWxlY3Rpb25FbmQgaXMgMTgKIFBBU1Mg
ZWlnaHRoLnNlbGVjdGlvblN0YXJ0IGlzIDExCiBQQVNTIGVpZ2h0aC5zZWxlY3Rpb25FbmQgaXMg
MTgKLUZBSUwgZWlnaHRoLnNlbGVjdGlvblN0YXJ0IHNob3VsZCBiZSAxMS4gV2FzIDAuCi1GQUlM
IGVpZ2h0aC5zZWxlY3Rpb25FbmQgc2hvdWxkIGJlIDE4LiBXYXMgMC4KK1BBU1MgZWlnaHRoLnNl
bGVjdGlvblN0YXJ0IGlzIDExCitQQVNTIGVpZ2h0aC5zZWxlY3Rpb25FbmQgaXMgMTgKIFBBU1Mg
bmludGguc2VsZWN0aW9uU3RhcnQgaXMgMTEKIFBBU1MgbmludGguc2VsZWN0aW9uRW5kIGlzIDE4
CiBQQVNTIG5pbnRoLnNlbGVjdGlvblN0YXJ0IGlzIDExCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2Zvcm1zL2ZvY3VzLXNlbGVjdGlvbi10ZXh0YXJlYS5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9mb3Jtcy9mb2N1cy1zZWxlY3Rpb24tdGV4dGFyZWEuaHRtbAppbmRleCA3ODMwYjdmNDk1
MmJlYzBmMGUzNTJlZTQ5ZTgxOGM0ZDVkYjVlZGJhLi4yNzJiYTY5M2U0ODY5NjQyN2Y4MzFiNzdi
OTQyM2FkYjk1ODc3YWU3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2ZvY3Vz
LXNlbGVjdGlvbi10ZXh0YXJlYS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZm9j
dXMtc2VsZWN0aW9uLXRleHRhcmVhLmh0bWwKQEAgLTEzMyw3ICsxMzMsNyBAQCBhdXRvbWF0aWNh
bGx5LjwvcD4KIDUpIDxsYWJlbCBpZD0iZmlmdGhMYWJlbCIgZm9yPSJmaWZ0aCIgc3R5bGU9ImNv
bG9yOiBibHVlIj5DbGljayB0aGlzIGxhYmVsLCBvbmx5IHRoZSB3b3JkICJTVUNDRVNTIiBzaG91
bGQgYmUgc2VsZWN0ZWQ6PC9sYWJlbD4KIDx0ZXh0YXJlYSBpZD0iZmlmdGgiPkZBSUxVUkUgb3Ig
U1VDQ0VTUzwvdGV4dGFyZWE+CiA8c2NyaXB0PgotICAgIHZhciBzZWNvbmQgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgiZmlmdGgiKTsKKyAgICB2YXIgZmlmdGggPSBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgiZmlmdGgiKTsKICAgICBmaWZ0aC5mb2N1cygpOwogICAgIGZpZnRoLnNldFNlbGVj
dGlvblJhbmdlKDExLCAxOCk7CiAgICAgZmlmdGguYmx1cigpOwpAQCAtMTc4LDcgKzE3OCw3IEBA
IGF1dG9tYXRpY2FsbHkuPC9wPgogCiAKIDkpIDxmaWVsZHNldD4KLTxsZWdlbmQgaWQ9ImVpZ2h0
aExlZ2VuZCIgYWNjZXNza2V5PSJpIj5IaXQgQ3RybC1PcHRpb24tSSAob3IgQWx0LUkgb24gV2lu
ZG93cyksIG9ubHkgdGhlIHdvcmQgIlNVQ0NFU1MiIHNob3VsZCBiZSBzZWxlY3RlZDo8L2xlZ2Vu
ZD4KKzxsZWdlbmQgaWQ9Im5pbnRoTGVnZW5kIiBhY2Nlc3NrZXk9ImkiPkhpdCBDdHJsLU9wdGlv
bi1JIChvciBBbHQtSSBvbiBXaW5kb3dzKSwgb25seSB0aGUgd29yZCAiU1VDQ0VTUyIgc2hvdWxk
IGJlIHNlbGVjdGVkOjwvbGVnZW5kPgogPHRleHRhcmVhIGlkPSJuaW50aCI+RkFJTFVSRSBvciBT
VUNDRVNTPC90ZXh0YXJlYT4KIDxzY3JpcHQ+CiAgICAgdmFyIG5pbnRoID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoIm5pbnRoIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1z
L2lucHV0LWZpcnN0LWxldHRlci1lZGl0LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2Zvcm1zL2lucHV0LWZpcnN0LWxldHRlci1lZGl0LWV4cGVjdGVkLmh0bWwKaW5kZXggYWM1ZWE3
ZWJlMWRhNTkwYTY0MTM2MzM5OTUxMjVjMDZmZGUxNDJmNS4uYmZjNjk1OGYzOTE2ZTJkMDQ2NDhm
YTgzNGNmMDE2MWU2N2ZlYjc4YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9p
bnB1dC1maXJzdC1sZXR0ZXItZWRpdC1leHBlY3RlZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZm9ybXMvaW5wdXQtZmlyc3QtbGV0dGVyLWVkaXQtZXhwZWN0ZWQuaHRtbApAQCAtMyw2ICsz
LDYgQEAKIDxoZWFkPgogPC9oZWFkPgogPGJvZHk+Ci0gICAgPGlucHV0IHR5cGU9InRleHQiIGlk
PSJ0YXJnZXQiIHZhbHVlPSJIZWxsbyIgYXV0b2ZvY3VzPSJhdXRvZm9jdXMiIC8+CisgICAgPGlu
cHV0IHR5cGU9InRleHQiIGlkPSJ0YXJnZXQiIHZhbHVlPSJIZWxsbyIgLz4KIDwvYm9keT4KIDwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW5wdXQtZmlyc3QtbGV0
dGVyLWVkaXQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW5wdXQtZmlyc3QtbGV0dGVy
LWVkaXQuaHRtbAppbmRleCBiY2JjY2RkY2Q3ZjBkYjJjOWQzMDA4NTBkYmNiOGMxZjY4YTUzNTBi
Li4xY2VjZGEyOTE4MWJiM2Y2YWZiY2ZkMDU0YTgwNjA2NzcxMDI1M2ZmIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lucHV0LWZpcnN0LWxldHRlci1lZGl0Lmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pbnB1dC1maXJzdC1sZXR0ZXItZWRpdC5odG1sCkBAIC0x
OSw3ICsxOSw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICBldmVudFNlbmRlci5rZXlEb3du
KCJsIik7CiAgICAgICAgIGV2ZW50U2VuZGVyLmtleURvd24oImwiKTsKICAgICAgICAgZXZlbnRT
ZW5kZXIua2V5RG93bigibyIpOwotICAgICAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgic2VsZWN0
QWxsIik7IC8vIERvZXMgc2VsZWN0QWxsIGZvciBhbGlnbmluZyB0aGUgQGF1dG9mb2N1cyBhdHRy
aWJ1dGUgb24gdGhlIGV4cGVjdGF0aW9uLgorICAgICAgICB0YXJnZXQuYmx1cigpOwogICAgICAg
ICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9ndGsvZmFzdC9mb3Jtcy9pbnB1dC1hcHBlYXJhbmNlLWZvY3VzLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0L2Zvcm1zL2lucHV0LWFwcGVh
cmFuY2UtZm9jdXMtZXhwZWN0ZWQudHh0CmluZGV4IGQzZGEyZTZiN2RhODUxZmY4ZjdiZDRkZWE3
MmVkM2I3YTg3MTcwYmUuLjJmMjFjNTdlYTNiNDFhOTRiZWI5N2U3YzNkY2RkZjg0N2YxZTEwMDcg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0L2Zvcm1zL2lucHV0LWFw
cGVhcmFuY2UtZm9jdXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0
ay9mYXN0L2Zvcm1zL2lucHV0LWFwcGVhcmFuY2UtZm9jdXMtZXhwZWN0ZWQudHh0CkBAIC0zMSw1
ICszMSw0IEBAIGxheWVyIGF0ICgyMTMsNDcpIHNpemUgMTg2eDE4CiAgIFJlbmRlckJsb2NrIHtE
SVZ9IGF0ICgzLDMpIHNpemUgMTg2eDE4CiAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDAp
IHNpemUgMTA4eDE3CiAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCAxMDg6ICJNeSBUZXh0
IEZpZWxkIDIiCi1zZWxlY3Rpb24gc3RhcnQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7I3RleHR9
IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNkb2N1bWVudC1mcmFnbWVudH0gb2YgY2hpbGQgMyB7SU5Q
VVR9IG9mIGNoaWxkIDEge1B9IG9mIGJvZHkKLXNlbGVjdGlvbiBlbmQ6ICAgcG9zaXRpb24gMTUg
b2YgY2hpbGQgMCB7I3RleHR9IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNkb2N1bWVudC1mcmFnbWVu
dH0gb2YgY2hpbGQgMyB7SU5QVVR9IG9mIGNoaWxkIDEge1B9IG9mIGJvZHkKK2NhcmV0OiBwb3Np
dGlvbiAwIG9mIGNoaWxkIDAgeyN0ZXh0fSBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjZG9jdW1lbnQt
ZnJhZ21lbnR9IG9mIGNoaWxkIDMge0lOUFVUfSBvZiBjaGlsZCAxIHtQfSBvZiBib2R5CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZmFzdC9mb3Jtcy9pbnB1dC1hcHBlYXJh
bmNlLXJlYWRvbmx5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0
L2Zvcm1zL2lucHV0LWFwcGVhcmFuY2UtcmVhZG9ubHktZXhwZWN0ZWQudHh0CmluZGV4IDJkMDE4
MGE0NjZiMTliNTY0ZmIwYzM2MTk4ZGExNDg2NDNlYTQ2MGMuLjUyMzE2ZjJmYmNjMDU4ZGVlZDY3
ODcyNzU2YmM5NzcyN2M4MThhZDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0
ay9mYXN0L2Zvcm1zL2lucHV0LWFwcGVhcmFuY2UtcmVhZG9ubHktZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mYXN0L2Zvcm1zL2lucHV0LWFwcGVhcmFuY2UtcmVh
ZG9ubHktZXhwZWN0ZWQudHh0CkBAIC0xMiw1ICsxMiw0IEBAIGxheWVyIGF0ICgxMywzMSkgc2l6
ZSAxODV4MTgKICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDMsMykgc2l6ZSAxODV4MTgKICAgICBS
ZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA4OHgxNwogICAgICAgdGV4dCBydW4gYXQg
KDAsMCkgd2lkdGggODg6ICJUZXN0IFBhc3NlZCIKLXNlbGVjdGlvbiBzdGFydDogcG9zaXRpb24g
MCBvZiBjaGlsZCAwIHsjdGV4dH0gb2YgY2hpbGQgMCB7RElWfSBvZiB7I2RvY3VtZW50LWZyYWdt
ZW50fSBvZiBjaGlsZCAyIHtJTlBVVH0gb2YgYm9keQotc2VsZWN0aW9uIGVuZDogICBwb3NpdGlv
biAxMSBvZiBjaGlsZCAwIHsjdGV4dH0gb2YgY2hpbGQgMCB7RElWfSBvZiB7I2RvY3VtZW50LWZy
YWdtZW50fSBvZiBjaGlsZCAyIHtJTlBVVH0gb2YgYm9keQorY2FyZXQ6IHBvc2l0aW9uIDAgb2Yg
Y2hpbGQgMCB7I3RleHR9IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNkb2N1bWVudC1mcmFnbWVudH0g
b2YgY2hpbGQgMiB7SU5QVVR9IG9mIGJvZHkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL2d0ay9mYXN0L2Zvcm1zL2lucHV0LWRvdWJsZS1jbGljay1zZWxlY3Rpb24tZ2FwLWJ1Zy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZmFzdC9mb3Jtcy9pbnB1dC1k
b3VibGUtY2xpY2stc2VsZWN0aW9uLWdhcC1idWctZXhwZWN0ZWQudHh0CmluZGV4IDdmYjBjM2Qw
MmNjZjk0MWNkZmI5NmUxYWQxMWUwNzgwNGYwM2U2MmEuLjE2NGE5MTQyNWYwNjEwMmQxNjI4YzU5
MTUyZGJlNWNlZmFmMWFhY2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9m
YXN0L2Zvcm1zL2lucHV0LWRvdWJsZS1jbGljay1zZWxlY3Rpb24tZ2FwLWJ1Zy1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zhc3QvZm9ybXMvaW5wdXQtZG91Ymxl
LWNsaWNrLXNlbGVjdGlvbi1nYXAtYnVnLWV4cGVjdGVkLnR4dApAQCAtMjcsNSArMjcsNCBAQCBs
YXllciBhdCAoMzUsNDA3KSBzaXplIDE4NngxOAogICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMywz
KSBzaXplIDE4NngxOAogICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDQ5eDE3
CiAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA0OTogImZvbyBiYXIiCi1zZWxlY3Rpb24g
c3RhcnQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7I3RleHR9IG9mIGNoaWxkIDAge0RJVn0gb2Yg
eyNkb2N1bWVudC1mcmFnbWVudH0gb2YgY2hpbGQgMSB7SU5QVVR9IG9mIGNoaWxkIDEge1REfSBv
ZiBjaGlsZCAwIHtUUn0gb2YgY2hpbGQgMSB7VEJPRFl9IG9mIGNoaWxkIDMge1RBQkxFfSBvZiBi
b2R5Ci1zZWxlY3Rpb24gZW5kOiAgIHBvc2l0aW9uIDcgb2YgY2hpbGQgMCB7I3RleHR9IG9mIGNo
aWxkIDAge0RJVn0gb2YgeyNkb2N1bWVudC1mcmFnbWVudH0gb2YgY2hpbGQgMSB7SU5QVVR9IG9m
IGNoaWxkIDEge1REfSBvZiBjaGlsZCAwIHtUUn0gb2YgY2hpbGQgMSB7VEJPRFl9IG9mIGNoaWxk
IDMge1RBQkxFfSBvZiBib2R5CitjYXJldDogcG9zaXRpb24gMCBvZiBjaGlsZCAwIHsjdGV4dH0g
b2YgY2hpbGQgMCB7RElWfSBvZiB7I2RvY3VtZW50LWZyYWdtZW50fSBvZiBjaGlsZCAxIHtJTlBV
VH0gb2YgY2hpbGQgMSB7VER9IG9mIGNoaWxkIDAge1RSfSBvZiBjaGlsZCAxIHtUQk9EWX0gb2Yg
Y2hpbGQgMyB7VEFCTEV9IG9mIGJvZHkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy9mYXN0L2Zvcm1zL2lucHV0LWFwcGVhcmFuY2UtZm9jdXMtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvZm9ybXMvaW5wdXQtYXBwZWFyYW5jZS1mb2N1cy1l
eHBlY3RlZC50eHQKaW5kZXggYTdhY2ZiZGI3NzcyYzBmNTMyNGViNmI3NDBlMmM0NWVkMjVhMzE0
Zi4uNmUyZDcwNGY3MTIxNTljZGZkMmQ5ZjY4ZmZiZDQ0ZjE3NTMxODQ0YiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvZm9ybXMvaW5wdXQtYXBwZWFyYW5jZS1mb2N1
cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvZm9ybXMv
aW5wdXQtYXBwZWFyYW5jZS1mb2N1cy1leHBlY3RlZC50eHQKQEAgLTMxLDUgKzMxLDQgQEAgbGF5
ZXIgYXQgKDE2OCw0Nykgc2l6ZSAxNDF4MTMKICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDMsMykg
c2l6ZSAxNDF4MTMKICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA4MHgxMwog
ICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggODA6ICJNeSBUZXh0IEZpZWxkIDIiCi1zZWxl
Y3Rpb24gc3RhcnQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7I3RleHR9IG9mIGNoaWxkIDAge0RJ
Vn0gb2YgeyNkb2N1bWVudC1mcmFnbWVudH0gb2YgY2hpbGQgMyB7SU5QVVR9IG9mIGNoaWxkIDEg
e1B9IG9mIGJvZHkKLXNlbGVjdGlvbiBlbmQ6ICAgcG9zaXRpb24gMTUgb2YgY2hpbGQgMCB7I3Rl
eHR9IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNkb2N1bWVudC1mcmFnbWVudH0gb2YgY2hpbGQgMyB7
SU5QVVR9IG9mIGNoaWxkIDEge1B9IG9mIGJvZHkKK2NhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxk
IDAgeyN0ZXh0fSBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjZG9jdW1lbnQtZnJhZ21lbnR9IG9mIGNo
aWxkIDMge0lOUFVUfSBvZiBjaGlsZCAxIHtQfSBvZiBib2R5CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9mb3Jtcy9pbnB1dC1hcHBlYXJhbmNlLXJlYWRvbmx5LWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Zvcm1zL2lucHV0LWFw
cGVhcmFuY2UtcmVhZG9ubHktZXhwZWN0ZWQudHh0CmluZGV4IDhkZjUzYjhiYzc5ZGE5ZmE2YWUw
MzU0YzA1ZjQ5NzY5Yzc4ZDkzMjIuLmQ2ZWMyM2JlYTkwYThlOTgzOGNkZjdmYjNmNGRjMTliYmYz
YWIyMzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Zvcm1zL2lu
cHV0LWFwcGVhcmFuY2UtcmVhZG9ubHktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9mYXN0L2Zvcm1zL2lucHV0LWFwcGVhcmFuY2UtcmVhZG9ubHktZXhwZWN0ZWQu
dHh0CkBAIC0xMiw1ICsxMiw0IEBAIGxheWVyIGF0ICgxMywzMSkgc2l6ZSAxNDB4MTMKICAgUmVu
ZGVyQmxvY2sge0RJVn0gYXQgKDMsMykgc2l6ZSAxNDB4MTMKICAgICBSZW5kZXJUZXh0IHsjdGV4
dH0gYXQgKDAsMCkgc2l6ZSA2M3gxMwogICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNjM6
ICJUZXN0IFBhc3NlZCIKLXNlbGVjdGlvbiBzdGFydDogcG9zaXRpb24gMCBvZiBjaGlsZCAwIHsj
dGV4dH0gb2YgY2hpbGQgMCB7RElWfSBvZiB7I2RvY3VtZW50LWZyYWdtZW50fSBvZiBjaGlsZCAy
IHtJTlBVVH0gb2YgYm9keQotc2VsZWN0aW9uIGVuZDogICBwb3NpdGlvbiAxMSBvZiBjaGlsZCAw
IHsjdGV4dH0gb2YgY2hpbGQgMCB7RElWfSBvZiB7I2RvY3VtZW50LWZyYWdtZW50fSBvZiBjaGls
ZCAyIHtJTlBVVH0gb2YgYm9keQorY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7I3RleHR9
IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNkb2N1bWVudC1mcmFnbWVudH0gb2YgY2hpbGQgMiB7SU5Q
VVR9IG9mIGJvZHkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Zv
cm1zL2lucHV0LWRvdWJsZS1jbGljay1zZWxlY3Rpb24tZ2FwLWJ1Zy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9mb3Jtcy9pbnB1dC1kb3VibGUtY2xpY2stc2Vs
ZWN0aW9uLWdhcC1idWctZXhwZWN0ZWQudHh0CmluZGV4IDBiYzk0MTM1NzMwMDVjNmY5ZmQ2YWNm
YWU0MzRkMDQzOWEzYmM5MDIuLmM1NmMzODQ2OTExZGNiOGNmYzFiZGE5MDA2NTI3Y2ZjZWUwZGI5
NWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9mYXN0L2Zvcm1zL2lucHV0
LWRvdWJsZS1jbGljay1zZWxlY3Rpb24tZ2FwLWJ1Zy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvZm9ybXMvaW5wdXQtZG91YmxlLWNsaWNrLXNlbGVjdGlv
bi1nYXAtYnVnLWV4cGVjdGVkLnR4dApAQCAtMjcsNSArMjcsNCBAQCBsYXllciBhdCAoMzUsNDEw
KSBzaXplIDE0MXgxMwogICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMywzKSBzaXplIDE0MXgxMwog
ICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDM4eDEzCiAgICAgICB0ZXh0IHJ1
biBhdCAoMCwwKSB3aWR0aCAzODogImZvbyBiYXIiCi1zZWxlY3Rpb24gc3RhcnQ6IHBvc2l0aW9u
IDAgb2YgY2hpbGQgMCB7I3RleHR9IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNkb2N1bWVudC1mcmFn
bWVudH0gb2YgY2hpbGQgMSB7SU5QVVR9IG9mIGNoaWxkIDEge1REfSBvZiBjaGlsZCAwIHtUUn0g
b2YgY2hpbGQgMSB7VEJPRFl9IG9mIGNoaWxkIDMge1RBQkxFfSBvZiBib2R5Ci1zZWxlY3Rpb24g
ZW5kOiAgIHBvc2l0aW9uIDcgb2YgY2hpbGQgMCB7I3RleHR9IG9mIGNoaWxkIDAge0RJVn0gb2Yg
eyNkb2N1bWVudC1mcmFnbWVudH0gb2YgY2hpbGQgMSB7SU5QVVR9IG9mIGNoaWxkIDEge1REfSBv
ZiBjaGlsZCAwIHtUUn0gb2YgY2hpbGQgMSB7VEJPRFl9IG9mIGNoaWxkIDMge1RBQkxFfSBvZiBi
b2R5CitjYXJldDogcG9zaXRpb24gMCBvZiBjaGlsZCAwIHsjdGV4dH0gb2YgY2hpbGQgMCB7RElW
fSBvZiB7I2RvY3VtZW50LWZyYWdtZW50fSBvZiBjaGlsZCAxIHtJTlBVVH0gb2YgY2hpbGQgMSB7
VER9IG9mIGNoaWxkIDAge1RSfSBvZiBjaGlsZCAxIHtUQk9EWX0gb2YgY2hpbGQgMyB7VEFCTEV9
IG9mIGJvZHkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9mYXN0L2Zvcm1z
L2ZvY3VzLXNlbGVjdGlvbi10ZXh0YXJlYS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS93aW4vZmFzdC9mb3Jtcy9mb2N1cy1zZWxlY3Rpb24tdGV4dGFyZWEtZXhwZWN0ZWQudHh0
CmluZGV4IDQzMTZhODg5ZDBhM2Q5MDg2NDQ1YTViODg3NDcwYjhkOTFkZWUxMDIuLjQxMTMxZGY3
YmY1ZWQzNzA0YjNlNzBkZmQyYjJhYTcyYjU2NjY1NWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL3dpbi9mYXN0L2Zvcm1zL2ZvY3VzLXNlbGVjdGlvbi10ZXh0YXJlYS1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2Zhc3QvZm9ybXMvZm9jdXMtc2Vs
ZWN0aW9uLXRleHRhcmVhLWV4cGVjdGVkLnR4dApAQCAtMTcsOCArMTcsOCBAQCBUaGlzIHRlc3Qg
Y2hlY2tzIHdoZXRoZXIgdGhlIHNlbGVjdGlvbiBpcyByZXN0b3JlZCwgY2xlYXJlZCwgb3Igc2V0
IHRvIHRoZSBmdWxsCiAKIFBBU1MgZmlyc3Quc2VsZWN0aW9uU3RhcnQgaXMgMTEKIFBBU1MgZmly
c3Quc2VsZWN0aW9uRW5kIGlzIDE4Ci1GQUlMIGZpcnN0LnNlbGVjdGlvblN0YXJ0IHNob3VsZCBi
ZSAxMS4gV2FzIDAuCi1GQUlMIGZpcnN0LnNlbGVjdGlvbkVuZCBzaG91bGQgYmUgMTguIFdhcyAw
LgorUEFTUyBmaXJzdC5zZWxlY3Rpb25TdGFydCBpcyAxMQorUEFTUyBmaXJzdC5zZWxlY3Rpb25F
bmQgaXMgMTgKIFBBU1Mgc2Vjb25kLnNlbGVjdGlvblN0YXJ0IGlzIDExCiBQQVNTIHNlY29uZC5z
ZWxlY3Rpb25FbmQgaXMgMTgKIFBBU1Mgc2Vjb25kLnNlbGVjdGlvblN0YXJ0IGlzIDExCkBAIC00
NSw4ICs0NSw4IEBAIFBBU1Mgc2V2ZW50aC5zZWxlY3Rpb25TdGFydCBpcyAxMQogUEFTUyBzZXZl
bnRoLnNlbGVjdGlvbkVuZCBpcyAxOAogUEFTUyBlaWdodGguc2VsZWN0aW9uU3RhcnQgaXMgMTEK
IFBBU1MgZWlnaHRoLnNlbGVjdGlvbkVuZCBpcyAxOAotRkFJTCBlaWdodGguc2VsZWN0aW9uU3Rh
cnQgc2hvdWxkIGJlIDExLiBXYXMgMC4KLUZBSUwgZWlnaHRoLnNlbGVjdGlvbkVuZCBzaG91bGQg
YmUgMTguIFdhcyAwLgorUEFTUyBlaWdodGguc2VsZWN0aW9uU3RhcnQgaXMgMTEKK1BBU1MgZWln
aHRoLnNlbGVjdGlvbkVuZCBpcyAxOAogUEFTUyBuaW50aC5zZWxlY3Rpb25TdGFydCBpcyAxMQog
UEFTUyBuaW50aC5zZWxlY3Rpb25FbmQgaXMgMTgKIFBBU1MgbmludGguc2VsZWN0aW9uU3RhcnQg
aXMgMTEKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9mYXN0L2Zvcm1zL2lu
cHV0LWFwcGVhcmFuY2UtZm9jdXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2luL2Zhc3QvZm9ybXMvaW5wdXQtYXBwZWFyYW5jZS1mb2N1cy1leHBlY3RlZC50eHQKaW5kZXgg
MjJjYjc2NDc4YjhhYzRkZmEzYWRjNDg3M2Q1YzI0NTUxNjg3NzZmZi4uODgxOTk5NTg3MGU4ODJh
NzNkOTkyYmE1MmE1MzQzOGU3ZmUyNmUyMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vd2luL2Zhc3QvZm9ybXMvaW5wdXQtYXBwZWFyYW5jZS1mb2N1cy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2Zhc3QvZm9ybXMvaW5wdXQtYXBwZWFyYW5jZS1m
b2N1cy1leHBlY3RlZC50eHQKQEAgLTMxLDUgKzMxLDQgQEAgbGF5ZXIgYXQgKDE3MCw0Nykgc2l6
ZSAxNDZ4MTUKICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDIsMykgc2l6ZSAxNDZ4MTUKICAgICBS
ZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA4OHgxNQogICAgICAgdGV4dCBydW4gYXQg
KDAsMCkgd2lkdGggODg6ICJNeSBUZXh0IEZpZWxkIDIiCi1zZWxlY3Rpb24gc3RhcnQ6IHBvc2l0
aW9uIDAgb2YgY2hpbGQgMCB7I3RleHR9IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNkb2N1bWVudC1m
cmFnbWVudH0gb2YgY2hpbGQgMyB7SU5QVVR9IG9mIGNoaWxkIDEge1B9IG9mIGJvZHkKLXNlbGVj
dGlvbiBlbmQ6ICAgcG9zaXRpb24gMTUgb2YgY2hpbGQgMCB7I3RleHR9IG9mIGNoaWxkIDAge0RJ
Vn0gb2YgeyNkb2N1bWVudC1mcmFnbWVudH0gb2YgY2hpbGQgMyB7SU5QVVR9IG9mIGNoaWxkIDEg
e1B9IG9mIGJvZHkKK2NhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAgeyN0ZXh0fSBvZiBjaGls
ZCAwIHtESVZ9IG9mIHsjZG9jdW1lbnQtZnJhZ21lbnR9IG9mIGNoaWxkIDMge0lOUFVUfSBvZiBj
aGlsZCAxIHtQfSBvZiBib2R5ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2Zhc3QvZm9ybXMvaW5wdXQtYXBwZWFyYW5jZS1y
ZWFkb25seS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vZmFzdC9mb3Jt
cy9pbnB1dC1hcHBlYXJhbmNlLXJlYWRvbmx5LWV4cGVjdGVkLnR4dAppbmRleCBiNGNhMDc3MzI3
NjM4NmMyOWI1ZGU5YzdlNTVkMjBlN2ZmNzAxN2ZhLi42YjBmOTJmMjg4YjlmZTc1NWIwNzhlNDZj
NjM1MzljNzQzM2Q1NDkyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vZmFz
dC9mb3Jtcy9pbnB1dC1hcHBlYXJhbmNlLXJlYWRvbmx5LWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS93aW4vZmFzdC9mb3Jtcy9pbnB1dC1hcHBlYXJhbmNlLXJlYWRvbmx5
LWV4cGVjdGVkLnR4dApAQCAtMTIsNSArMTIsNCBAQCBsYXllciBhdCAoMTIsMzEpIHNpemUgMTQ1
eDE1CiAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgyLDMpIHNpemUgMTQ1eDE1CiAgICAgUmVuZGVy
VGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgNzN4MTUKICAgICAgIHRleHQgcnVuIGF0ICgwLDAp
IHdpZHRoIDczOiAiVGVzdCBQYXNzZWQiCi1zZWxlY3Rpb24gc3RhcnQ6IHBvc2l0aW9uIDAgb2Yg
Y2hpbGQgMCB7I3RleHR9IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNkb2N1bWVudC1mcmFnbWVudH0g
b2YgY2hpbGQgMiB7SU5QVVR9IG9mIGJvZHkKLXNlbGVjdGlvbiBlbmQ6ICAgcG9zaXRpb24gMTEg
b2YgY2hpbGQgMCB7I3RleHR9IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNkb2N1bWVudC1mcmFnbWVu
dH0gb2YgY2hpbGQgMiB7SU5QVVR9IG9mIGJvZHkKK2NhcmV0OiBwb3NpdGlvbiAwIG9mIGNoaWxk
IDAgeyN0ZXh0fSBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjZG9jdW1lbnQtZnJhZ21lbnR9IG9mIGNo
aWxkIDIge0lOUFVUfSBvZiBib2R5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93
aW4vZmFzdC9mb3Jtcy9pbnB1dC1kb3VibGUtY2xpY2stc2VsZWN0aW9uLWdhcC1idWctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2Zhc3QvZm9ybXMvaW5wdXQtZG91Ymxl
LWNsaWNrLXNlbGVjdGlvbi1nYXAtYnVnLWV4cGVjdGVkLnR4dAppbmRleCBlNTRlMDFjNGI3MTli
MmQwOTUxMWJkMDg0ZGFlYWI2ZGQyNjI5ZjEyLi5jODQ1NTBlZGE1ZWQ5OWJmOTc1ZWZiMWZmYzc4
YTY4NTgyOTAwZjI3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vZmFzdC9m
b3Jtcy9pbnB1dC1kb3VibGUtY2xpY2stc2VsZWN0aW9uLWdhcC1idWctZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9mYXN0L2Zvcm1zL2lucHV0LWRvdWJsZS1jbGlj
ay1zZWxlY3Rpb24tZ2FwLWJ1Zy1leHBlY3RlZC50eHQKQEAgLTI3LDUgKzI3LDQgQEAgbGF5ZXIg
YXQgKDM0LDQwOSkgc2l6ZSAxNDZ4MTUKICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDIsMykgc2l6
ZSAxNDZ4MTUKICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAzOXgxNQogICAg
ICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggMzk6ICJmb28gYmFyIgotc2VsZWN0aW9uIHN0YXJ0
OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAgeyN0ZXh0fSBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjZG9j
dW1lbnQtZnJhZ21lbnR9IG9mIGNoaWxkIDEge0lOUFVUfSBvZiBjaGlsZCAxIHtURH0gb2YgY2hp
bGQgMCB7VFJ9IG9mIGNoaWxkIDEge1RCT0RZfSBvZiBjaGlsZCAzIHtUQUJMRX0gb2YgYm9keQot
c2VsZWN0aW9uIGVuZDogICBwb3NpdGlvbiA3IG9mIGNoaWxkIDAgeyN0ZXh0fSBvZiBjaGlsZCAw
IHtESVZ9IG9mIHsjZG9jdW1lbnQtZnJhZ21lbnR9IG9mIGNoaWxkIDEge0lOUFVUfSBvZiBjaGls
ZCAxIHtURH0gb2YgY2hpbGQgMCB7VFJ9IG9mIGNoaWxkIDEge1RCT0RZfSBvZiBjaGlsZCAzIHtU
QUJMRX0gb2YgYm9keQorY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7I3RleHR9IG9mIGNo
aWxkIDAge0RJVn0gb2YgeyNkb2N1bWVudC1mcmFnbWVudH0gb2YgY2hpbGQgMSB7SU5QVVR9IG9m
IGNoaWxkIDEge1REfSBvZiBjaGlsZCAwIHtUUn0gb2YgY2hpbGQgMSB7VEJPRFl9IG9mIGNoaWxk
IDMge1RBQkxFfSBvZiBib2R5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5j
YWlyby9mYXN0L2Zvcm1zL2lucHV0LWFwcGVhcmFuY2UtZm9jdXMtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vZmFzdC9mb3Jtcy9pbnB1dC1hcHBlYXJhbmNlLWZv
Y3VzLWV4cGVjdGVkLnR4dAppbmRleCAyMjJjMDkxMmM3MjhjNjVmOWIyNzM1MGFhY2NjZDJlODVm
MjcwMTBkLi41MTRhZjVmZTQwZTEwNjY0ZGExMzRkMDhlYzU5ZTM5MWJjMWEwZTQ2IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9mYXN0L2Zvcm1zL2lucHV0LWFwcGVh
cmFuY2UtZm9jdXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNh
aXJvL2Zhc3QvZm9ybXMvaW5wdXQtYXBwZWFyYW5jZS1mb2N1cy1leHBlY3RlZC50eHQKQEAgLTMx
LDUgKzMxLDQgQEAgbGF5ZXIgYXQgKDE3MCw0OSkgc2l6ZSAxNDZ4MTYKICAgUmVuZGVyQmxvY2sg
e0RJVn0gYXQgKDIsMykgc2l6ZSAxNDZ4MTYKICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAs
MCkgc2l6ZSA5MHgxNgogICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggOTA6ICJNeSBUZXh0
IEZpZWxkIDIiCi1zZWxlY3Rpb24gc3RhcnQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7I3RleHR9
IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNkb2N1bWVudC1mcmFnbWVudH0gb2YgY2hpbGQgMyB7SU5Q
VVR9IG9mIGNoaWxkIDEge1B9IG9mIGJvZHkKLXNlbGVjdGlvbiBlbmQ6ICAgcG9zaXRpb24gMTUg
b2YgY2hpbGQgMCB7I3RleHR9IG9mIGNoaWxkIDAge0RJVn0gb2YgeyNkb2N1bWVudC1mcmFnbWVu
dH0gb2YgY2hpbGQgMyB7SU5QVVR9IG9mIGNoaWxkIDEge1B9IG9mIGJvZHkKK2NhcmV0OiBwb3Np
dGlvbiAwIG9mIGNoaWxkIDAgeyN0ZXh0fSBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjZG9jdW1lbnQt
ZnJhZ21lbnR9IG9mIGNoaWxkIDMge0lOUFVUfSBvZiBjaGlsZCAxIHtQfSBvZiBib2R5CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9mYXN0L2Zvcm1zL2lucHV0LWFw
cGVhcmFuY2UtcmVhZG9ubHktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2lu
Y2Fpcm8vZmFzdC9mb3Jtcy9pbnB1dC1hcHBlYXJhbmNlLXJlYWRvbmx5LWV4cGVjdGVkLnR4dApp
bmRleCBkNzY1NzA0NjY3MzUzZWU3OTA5YWFjZGVmNmI1NGEyMmEzMzI1YWFiLi44ZGUzYTc1YzU1
MTUyY2FmMjEwODZiMTUyY2EyMjkwMWU1Y2ExNjc2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS93aW5jYWlyby9mYXN0L2Zvcm1zL2lucHV0LWFwcGVhcmFuY2UtcmVhZG9ubHktZXhw
ZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL2Zhc3QvZm9ybXMv
aW5wdXQtYXBwZWFyYW5jZS1yZWFkb25seS1leHBlY3RlZC50eHQKQEAgLTEyLDUgKzEyLDQgQEAg
bGF5ZXIgYXQgKDEyLDMzKSBzaXplIDE0NngxNgogICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMiwz
KSBzaXplIDE0NngxNgogICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDc3eDE2
CiAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3aWR0aCA3NzogIlRlc3QgUGFzc2VkIgotc2VsZWN0
aW9uIHN0YXJ0OiBwb3NpdGlvbiAwIG9mIGNoaWxkIDAgeyN0ZXh0fSBvZiBjaGlsZCAwIHtESVZ9
IG9mIHsjZG9jdW1lbnQtZnJhZ21lbnR9IG9mIGNoaWxkIDIge0lOUFVUfSBvZiBib2R5Ci1zZWxl
Y3Rpb24gZW5kOiAgIHBvc2l0aW9uIDExIG9mIGNoaWxkIDAgeyN0ZXh0fSBvZiBjaGlsZCAwIHtE
SVZ9IG9mIHsjZG9jdW1lbnQtZnJhZ21lbnR9IG9mIGNoaWxkIDIge0lOUFVUfSBvZiBib2R5Citj
YXJldDogcG9zaXRpb24gMCBvZiBjaGlsZCAwIHsjdGV4dH0gb2YgY2hpbGQgMCB7RElWfSBvZiB7
I2RvY3VtZW50LWZyYWdtZW50fSBvZiBjaGlsZCAyIHtJTlBVVH0gb2YgYm9keQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vZmFzdC9mb3Jtcy9pbnB1dC1kb3VibGUt
Y2xpY2stc2VsZWN0aW9uLWdhcC1idWctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vd2luY2Fpcm8vZmFzdC9mb3Jtcy9pbnB1dC1kb3VibGUtY2xpY2stc2VsZWN0aW9uLWdhcC1i
dWctZXhwZWN0ZWQudHh0CmluZGV4IDcwNWVlZTE0NTcxZDhmMjFhY2M4NmQ5ZGNkODNmYTI3ODY4
ZTNhNjcuLjRjMmRjODkwYWU3NWZhNDUzMzM4Yjc0YzBkNzY3YjVhMDNiYjJhYmQgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL2Zhc3QvZm9ybXMvaW5wdXQtZG91Ymxl
LWNsaWNrLXNlbGVjdGlvbi1nYXAtYnVnLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS93aW5jYWlyby9mYXN0L2Zvcm1zL2lucHV0LWRvdWJsZS1jbGljay1zZWxlY3Rpb24t
Z2FwLWJ1Zy1leHBlY3RlZC50eHQKQEAgLTI3LDUgKzI3LDQgQEAgbGF5ZXIgYXQgKDM0LDQxMCkg
c2l6ZSAxNDZ4MTYKICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDIsMykgc2l6ZSAxNDZ4MTYKICAg
ICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSA0MngxNgogICAgICAgdGV4dCBydW4g
YXQgKDAsMCkgd2lkdGggNDI6ICJmb28gYmFyIgotc2VsZWN0aW9uIHN0YXJ0OiBwb3NpdGlvbiAw
IG9mIGNoaWxkIDAgeyN0ZXh0fSBvZiBjaGlsZCAwIHtESVZ9IG9mIHsjZG9jdW1lbnQtZnJhZ21l
bnR9IG9mIGNoaWxkIDEge0lOUFVUfSBvZiBjaGlsZCAxIHtURH0gb2YgY2hpbGQgMCB7VFJ9IG9m
IGNoaWxkIDEge1RCT0RZfSBvZiBjaGlsZCAzIHtUQUJMRX0gb2YgYm9keQotc2VsZWN0aW9uIGVu
ZDogICBwb3NpdGlvbiA3IG9mIGNoaWxkIDAgeyN0ZXh0fSBvZiBjaGlsZCAwIHtESVZ9IG9mIHsj
ZG9jdW1lbnQtZnJhZ21lbnR9IG9mIGNoaWxkIDEge0lOUFVUfSBvZiBjaGlsZCAxIHtURH0gb2Yg
Y2hpbGQgMCB7VFJ9IG9mIGNoaWxkIDEge1RCT0RZfSBvZiBjaGlsZCAzIHtUQUJMRX0gb2YgYm9k
eQorY2FyZXQ6IHBvc2l0aW9uIDAgb2YgY2hpbGQgMCB7I3RleHR9IG9mIGNoaWxkIDAge0RJVn0g
b2YgeyNkb2N1bWVudC1mcmFnbWVudH0gb2YgY2hpbGQgMSB7SU5QVVR9IG9mIGNoaWxkIDEge1RE
fSBvZiBjaGlsZCAwIHtUUn0gb2YgY2hpbGQgMSB7VEJPRFl9IG9mIGNoaWxkIDMge1RBQkxFfSBv
ZiBib2R5Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413351</attachid>
            <date>2020-11-05 13:38:06 -0800</date>
            <delta_ts>2020-11-05 16:43:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218585-20201105133806.patch</filename>
            <type>text/plain</type>
            <size>16031</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBjNzlkY2Y5MWNjZjBkOGI0NjQ4YWFkYTQ5ZGM1ODZkOTM2NTU0NzE0Li5l
MGU0ODFkNTNmYjA5YmQyZjVmNDUwZTQ5MjA1ZjE4ZGUwMTUwOTAwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsNDggQEAKKzIwMjAtMTEtMDUgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIGF1dG9mb2N1cyBvZiB0ZXh0IGlucHV0IHNob3VsZCBub3Qgc2VsZWN0IHRl
eHQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODU4
NQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjAxMzA3MDQ+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuaDoKKyAgICAgICAg
KiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6
OmRpc3BhdGNoTW91c2VFdmVudCk6CisgICAgICAgICogcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNJbkRvY3Vt
ZW50T3JkZXIpOgorICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9j
dXNEaXJlY3Rpb25hbGx5SW5Db250YWluZXIpOgorICAgICAgICAqIGh0bWwvSFRNTElucHV0RWxl
bWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2UpOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6c2V0RGVmYXVsdFNlbGVjdGlvbkFmdGVyRm9j
dXMpOgorICAgICAgICAqIGh0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2UpOgorICAg
ICAgICAqIGh0bWwvSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklucHV0VHlwZTo6
YWNjZXNzS2V5QWN0aW9uKToKKyAgICAgICAgU2xpZ2h0bHkgcmV3b3JrIGBTZWxlY3Rpb25SZXN0
b3JhdGlvbk1vZGVgIHRvIHJlcGxhY2UgYFNldERlZmF1bHRgIHdpdGggdHdvIG5ldyB2YWx1ZXM6
CisgICAgICAgICAtIGBQbGFjZUN1cnNvckF0U3RhcnRgIHB1dHMgdGhlIGN1cnNvciBhdCB0aGUg
c3RhcnQsIHJlZ2FyZGxlc3Mgb2YgYW55IGNhY2hlZCBzZWxlY3Rpb24KKyAgICAgICAgIC0gYFNl
bGVjdEFsbGAgc2VsZWN0cyBhbGwgdGV4dCwgcmVnYXJkbGVzcyBvZiBhbnkgY2FjaGVkIHNlbGVj
dGlvbiAoZXhpc3RpbmcgYmVoYXZpb3IpCisgICAgICAgIEluIG9yZGVyIHRvIHByZXNlcnZlIGV4
aXN0aW5nIGJlaGF2aW9yLCB0aGUgZGVmYXVsdCBgUmVzdG9yZWAgd2lsbCBoYXZlIHRoZSBzYW1l
IGVmZmVjdCBhcworICAgICAgICBgU2VsZWN0QWxsYCBpZiB0aGVyZSBpcyBubyBjYWNoZWQgc2Vs
ZWN0aW9uLgorCisgICAgICAgICogaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OmRpZEF0dGFjaFJlbmRlcmVy
cyk6CisgICAgICAgIENoYW5nZSB0byBgUGxhY2VDdXJzb3JBdFN0YXJ0YCB0byBtYXRjaCBvdGhl
ciBicm93c2Vycy4KKworICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgICogZG9tL0Vs
ZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6Zm9jdXMpOgorICAgICAgICAq
IGh0bWwvSFRNTExhYmVsRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTExhYmVsRWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTGFiZWxFbGVtZW50Ojpmb2N1cyk6CisgICAg
ICAgICogaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTExlZ2Vu
ZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExlZ2VuZEVsZW1lbnQ6OmZvY3Vz
KToKKyAgICAgICAgUmVwbGFjZSB0aGUgYGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uYCB3
aXRoIGBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGVgIHNpbmNlIHRoYXQncworICAgICAgICB3aGF0
IGl0J3MgZXZlbnR1YWxseSB1c2VkIGZvciBhbnl3YXlzLiBUaGlzIGFsc28gYWxsb3dzIGZvciBt
b3JlIGZsZXhpYmlsaXR5IGluIGJlaGF2aW9yLAorICAgICAgICBzdWNoIGFzIGNhbGxlcnMgdXNp
bmcgdGhlIG5ldyBgU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlYCB2YWx1ZXMuCisKIDIwMjAtMTEt
MDQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICB3aW5kb3cuZXZl
bnQgbWF5IGdldCBzZXQgb24gd3JvbmcgZ2xvYmFsIHdoZW4gZGlzcGF0Y2hpbmcgYW4gZXZlbnQK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oIGIvU291cmNlL1dlYkNv
cmUvZG9tL0RvY3VtZW50LmgKaW5kZXggNzJjMmI5MjUyMmNjMWRlMjc4Nzk0OWE0NDFjMTc1MGQ1
NDg3N2M1YS4uYmZkMTRiMTkyMTEyOTEzY2ZkYjJhZGNkZjBiNTc5OGY2ZjFmNDNkNiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0RvY3VtZW50LmgKQEAgLTI4OCw3ICsyODgsMTEgQEAgZW51bSBjbGFzcyBEb2N1bWVudENv
bXBhdGliaWxpdHlNb2RlIDogdW5zaWduZWQgY2hhciB7CiAKIGVudW0gRGltZW5zaW9uc0NoZWNr
IHsgV2lkdGhEaW1lbnNpb25zQ2hlY2sgPSAxIDw8IDAsIEhlaWdodERpbWVuc2lvbnNDaGVjayA9
IDEgPDwgMSwgQWxsRGltZW5zaW9uc0NoZWNrID0gMSA8PCAyIH07CiAKLWVudW0gY2xhc3MgU2Vs
ZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHsgUmVzdG9yZSwgU2V0RGVmYXVsdCB9OworZW51bSBjbGFz
cyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgOiB1aW50OF90IHsKKyAgICBSZXN0b3JlLCAvLyBJ
ZiB0aGVyZSBpcyBubyBwcmV2aW91cyBzZWxlY3Rpb24sIHRoaXMgYmVoYXZlcyBsaWtlIFNlbGVj
dEFsbC4KKyAgICBQbGFjZUN1cnNvckF0U3RhcnQsCisgICAgU2VsZWN0QWxsLAorfTsKIAogZW51
bSBjbGFzcyBIdHRwRXF1aXZQb2xpY3kgewogICAgIEVuYWJsZWQsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5j
cHAKaW5kZXggOGQ2NzI3NTkyYTE1OTQ2MjA5YWFkOGU0ZjYzNjgwOGFkZDZkZDFlYi4uZjc3ZTU2
NjBjOTg5YTY1MWM3YTkxMzg0ODhhNzFlMjJiYTk3MTM0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNw
cApAQCAtMjk5Myw3ICsyOTkzLDcgQEAgc3RhdGljIFJlZlB0cjxFbGVtZW50PiBmaW5kRmlyc3RQ
cm9ncmFtYXRpY2FsbHlGb2N1c2FibGVFbGVtZW50SW5Db21wb3NlZFRyZWUoRWwKICAgICByZXR1
cm4gbnVsbHB0cjsKIH0KIAotdm9pZCBFbGVtZW50Ojpmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91
c1NlbGVjdGlvbiwgRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQordm9pZCBFbGVtZW50Ojpmb2N1
cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVjdGlv
biBkaXJlY3Rpb24pCiB7CiAgICAgaWYgKCFpc0Nvbm5lY3RlZCgpKQogICAgICAgICByZXR1cm47
CkBAIC0zMDQxLDcgKzMwNDEsNyBAQCB2b2lkIEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVBy
ZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCiAgICAgICAgICAgICBy
ZXR1cm47CiAgICAgfQogCi0gICAgbmV3VGFyZ2V0LT5yZXZlYWxGb2N1c2VkRWxlbWVudChyZXN0
b3JlUHJldmlvdXNTZWxlY3Rpb24gPyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmUg
OiBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNldERlZmF1bHQpOworICAgIG5ld1RhcmdldC0+
cmV2ZWFsRm9jdXNlZEVsZW1lbnQocmVzdG9yYXRpb25Nb2RlKTsKIH0KIAogdm9pZCBFbGVtZW50
OjpyZXZlYWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgc2VsZWN0aW9u
TW9kZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4IDE5NzQyOTkwNTAzODQ3MTIwMzQ3NTFlODBlZWNl
OWM2YThlNjBjMjEuLmE3NDI2YzQ3N2JhNThjNGFkNDE4YTEwYTQwY2U2ODQzYjJmZTkyNjkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL0VsZW1lbnQuaApAQCAtNDAwLDcgKzQwMCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFs
IFN0cmluZyB0YXJnZXQoKSBjb25zdCB7IHJldHVybiBTdHJpbmcoKTsgfQogCiAgICAgc3RhdGlj
IEFYVGV4dFN0YXRlQ2hhbmdlSW50ZW50IGRlZmF1bHRGb2N1c1RleHRTdGF0ZUNoYW5nZUludGVu
dCgpIHsgcmV0dXJuIEFYVGV4dFN0YXRlQ2hhbmdlSW50ZW50KEFYVGV4dFN0YXRlQ2hhbmdlVHlw
ZVNlbGVjdGlvbk1vdmUsIEFYVGV4dFNlbGVjdGlvbiB7IEFYVGV4dFNlbGVjdGlvbkRpcmVjdGlv
bkRpc2NvbnRpZ3VvdXMsIEFYVGV4dFNlbGVjdGlvbkdyYW51bGFyaXR5VW5rbm93biwgdHJ1ZSB9
KTsgfQotICAgIHZpcnR1YWwgdm9pZCBmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlv
biA9IHRydWUsIEZvY3VzRGlyZWN0aW9uID0gRm9jdXNEaXJlY3Rpb246Ok5vbmUpOworICAgIHZp
cnR1YWwgdm9pZCBmb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgPSBTZWxlY3Rpb25SZXN0
b3JhdGlvbk1vZGU6OlJlc3RvcmUsIEZvY3VzRGlyZWN0aW9uID0gRm9jdXNEaXJlY3Rpb246Ok5v
bmUpOwogICAgIHZvaWQgcmV2ZWFsRm9jdXNlZEVsZW1lbnQoU2VsZWN0aW9uUmVzdG9yYXRpb25N
b2RlKTsKICAgICB2aXJ0dWFsIFJlZlB0cjxFbGVtZW50PiBmb2N1c0FwcGVhcmFuY2VVcGRhdGVU
YXJnZXQoKTsKICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlRm9jdXNBcHBlYXJhbmNlKFNlbGVjdGlv
blJlc3RvcmF0aW9uTW9kZSwgU2VsZWN0aW9uUmV2ZWFsTW9kZSA9IFNlbGVjdGlvblJldmVhbE1v
ZGU6OlJldmVhbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29u
dHJvbEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVt
ZW50LmNwcAppbmRleCAzOTdmNzY1ODgxMmQ2YjlkMzY1YzcxODU4OTdmMWY1MTE2MjMxNmJjLi5j
M2I0ZTBhNmU1Yzk2MDM1ZWIxM2FjNWVkMTVkMzFhNzFhOGNmMDk5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKQEAgLTI1NCwxMSArMjU0LDEx
IEBAIHZvaWQgSFRNTEZvcm1Db250cm9sRWxlbWVudDo6ZGlkQXR0YWNoUmVuZGVyZXJzKCkKICAg
ICAgICAgYXV0byBmcmFtZVZpZXcgPSBtYWtlUmVmUHRyKGRvY3VtZW50KCkudmlldygpKTsKICAg
ICAgICAgaWYgKGZyYW1lVmlldyAmJiBmcmFtZVZpZXctPmxheW91dENvbnRleHQoKS5pc0luTGF5
b3V0KCkpIHsKICAgICAgICAgICAgIGZyYW1lVmlldy0+cXVldWVQb3N0TGF5b3V0Q2FsbGJhY2so
W2VsZW1lbnRdIHsKLSAgICAgICAgICAgICAgICBlbGVtZW50LT5mb2N1cygpOworICAgICAgICAg
ICAgICAgIGVsZW1lbnQtPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UGxhY2VDdXJz
b3JBdFN0YXJ0KTsKICAgICAgICAgICAgIH0pOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAg
ICAgU3R5bGU6OnF1ZXVlUG9zdFJlc29sdXRpb25DYWxsYmFjayhbZWxlbWVudF0gewotICAgICAg
ICAgICAgICAgIGVsZW1lbnQtPmZvY3VzKCk7CisgICAgICAgICAgICAgICAgZWxlbWVudC0+Zm9j
dXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpQbGFjZUN1cnNvckF0U3RhcnQpOwogICAgICAg
ICAgICAgfSk7CiAgICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRF
bGVtZW50LmNwcAppbmRleCA5OTNmMzk1NDM5YjJhOGU2OWQ5NmQ1OGQxOTkxNzgzM2E3MjA5M2Vj
Li4xMDAzZjhkZmE4NGI3ZDIyMjA3ZjdkM2JkYmM2NWYyNDBmODNhM2E4IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAKQEAgLTQ3NiwxNSArNDc2LDE1IEBAIGJvb2wg
SFRNTElucHV0RWxlbWVudDo6aXNUZXh0Rm9ybUNvbnRyb2xNb3VzZUZvY3VzYWJsZSgpIGNvbnN0
CiB2b2lkIEhUTUxJbnB1dEVsZW1lbnQ6OnVwZGF0ZUZvY3VzQXBwZWFyYW5jZShTZWxlY3Rpb25S
ZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBTZWxlY3Rpb25SZXZlYWxNb2RlIHJldmVh
bE1vZGUpCiB7CiAgICAgaWYgKGlzVGV4dEZpZWxkKCkpIHsKLSAgICAgICAgaWYgKHJlc3RvcmF0
aW9uTW9kZSA9PSBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNldERlZmF1bHQgfHwgIWhhc0Nh
Y2hlZFNlbGVjdGlvbigpKQotICAgICAgICAgICAgc2V0RGVmYXVsdFNlbGVjdGlvbkFmdGVyRm9j
dXMocmV2ZWFsTW9kZSk7Ci0gICAgICAgIGVsc2UKKyAgICAgICAgaWYgKHJlc3RvcmF0aW9uTW9k
ZSA9PSBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmUgJiYgaGFzQ2FjaGVkU2VsZWN0
aW9uKCkpCiAgICAgICAgICAgICByZXN0b3JlQ2FjaGVkU2VsZWN0aW9uKHJldmVhbE1vZGUpOwor
ICAgICAgICBlbHNlCisgICAgICAgICAgICBzZXREZWZhdWx0U2VsZWN0aW9uQWZ0ZXJGb2N1cyhy
ZXN0b3JhdGlvbk1vZGUsIHJldmVhbE1vZGUpOwogICAgIH0gZWxzZQogICAgICAgICBIVE1MVGV4
dEZvcm1Db250cm9sRWxlbWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlKHJlc3RvcmF0aW9uTW9k
ZSwgcmV2ZWFsTW9kZSk7CiB9CiAKLXZvaWQgSFRNTElucHV0RWxlbWVudDo6c2V0RGVmYXVsdFNl
bGVjdGlvbkFmdGVyRm9jdXMoU2VsZWN0aW9uUmV2ZWFsTW9kZSByZXZlYWxNb2RlKQordm9pZCBI
VE1MSW5wdXRFbGVtZW50OjpzZXREZWZhdWx0U2VsZWN0aW9uQWZ0ZXJGb2N1cyhTZWxlY3Rpb25S
ZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBTZWxlY3Rpb25SZXZlYWxNb2RlIHJldmVh
bE1vZGUpCiB7CiAgICAgQVNTRVJUKGlzVGV4dEZpZWxkKCkpOwogICAgIGludCBzdGFydCA9IDA7
CkBAIC00OTQsNyArNDk0LDkgQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50OjpzZXREZWZhdWx0U2Vs
ZWN0aW9uQWZ0ZXJGb2N1cyhTZWxlY3Rpb25SZXZlYWxNb2RlIHJldmVhbE0KICAgICAgICAgc3Rh
cnQgPSBzdGQ6Om51bWVyaWNfbGltaXRzPGludD46Om1heCgpOwogICAgICAgICBkaXJlY3Rpb24g
PSBTZWxlY3Rpb25IYXNGb3J3YXJkRGlyZWN0aW9uOwogICAgIH0KLSAgICBzZXRTZWxlY3Rpb25S
YW5nZShzdGFydCwgc3RkOjpudW1lcmljX2xpbWl0czxpbnQ+OjptYXgoKSwgZGlyZWN0aW9uLCBy
ZXZlYWxNb2RlLCBFbGVtZW50OjpkZWZhdWx0Rm9jdXNUZXh0U3RhdGVDaGFuZ2VJbnRlbnQoKSk7
CisgICAgLy8gRGVmYXVsdCB0byBgU2VsZWN0QWxsYCB0byBwcmVzZXJ2ZSBleGlzdGluZyBiZWhh
dmlvci4KKyAgICBpbnQgZW5kID0gcmVzdG9yYXRpb25Nb2RlID09IFNlbGVjdGlvblJlc3RvcmF0
aW9uTW9kZTo6UGxhY2VDdXJzb3JBdFN0YXJ0ID8gc3RhcnQgOiBzdGQ6Om51bWVyaWNfbGltaXRz
PGludD46Om1heCgpOworICAgIHNldFNlbGVjdGlvblJhbmdlKHN0YXJ0LCBlbmQsIGRpcmVjdGlv
biwgcmV2ZWFsTW9kZSwgRWxlbWVudDo6ZGVmYXVsdEZvY3VzVGV4dFN0YXRlQ2hhbmdlSW50ZW50
KCkpOwogfQogCiB2b2lkIEhUTUxJbnB1dEVsZW1lbnQ6OmVuZEVkaXRpbmcoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaAppbmRleCBmYjhjODVkOTJkOGFkM2UwOTUzMzVjNmM4
M2U5Njk2ODE4MmFlYzhhLi44YmY5ZTcyNWUzZjg1Zjg4MzEyN2EzZWUwNjZjNTM2ZDU1NWViYTky
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaApAQCAtNDU1LDcgKzQ1NSw3
IEBAIHByaXZhdGU6CiAgICAgdm9pZCBhZGRUb1JhZGlvQnV0dG9uR3JvdXAoKTsKICAgICB2b2lk
IHJlbW92ZUZyb21SYWRpb0J1dHRvbkdyb3VwKCk7CiAKLSAgICB2b2lkIHNldERlZmF1bHRTZWxl
Y3Rpb25BZnRlckZvY3VzKFNlbGVjdGlvblJldmVhbE1vZGUpOworICAgIHZvaWQgc2V0RGVmYXVs
dFNlbGVjdGlvbkFmdGVyRm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlLCBTZWxlY3Rpb25S
ZXZlYWxNb2RlKTsKIAogICAgIEF0b21TdHJpbmcgbV9uYW1lOwogICAgIFN0cmluZyBtX3ZhbHVl
SWZEaXJ0eTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCmluZGV4IDM3
ZjljYTU2ZTgwZDczMjQxMDNiMWExMjZmYzIyYzY2NWEwOGFkM2MuLmY1ZWY4YjgzNWMwZTM5ZmMw
MTUwOWU5ODg2YmMzOGM1ZTY4ZjIyMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTExhYmVsRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxF
bGVtZW50LmNwcApAQCAtMTcyLDIxICsxNzIsMjEgQEAgYm9vbCBIVE1MTGFiZWxFbGVtZW50Ojp3
aWxsUmVzcG9uZFRvTW91c2VDbGlja0V2ZW50cygpCiAgICAgcmV0dXJuIChlbGVtZW50ICYmIGVs
ZW1lbnQtPndpbGxSZXNwb25kVG9Nb3VzZUNsaWNrRXZlbnRzKCkpIHx8IEhUTUxFbGVtZW50Ojp3
aWxsUmVzcG9uZFRvTW91c2VDbGlja0V2ZW50cygpOwogfQogCi12b2lkIEhUTUxMYWJlbEVsZW1l
bnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBk
aXJlY3Rpb24pCit2b2lkIEhUTUxMYWJlbEVsZW1lbnQ6OmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0
aW9uTW9kZSByZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKIHsKICAg
ICBSZWY8SFRNTExhYmVsRWxlbWVudD4gcHJvdGVjdGVkVGhpcygqdGhpcyk7CiAgICAgaWYgKGRv
Y3VtZW50KCkuaGF2ZVN0eWxlc2hlZXRzTG9hZGVkKCkpIHsKICAgICAgICAgZG9jdW1lbnQoKS51
cGRhdGVMYXlvdXQoKTsKICAgICAgICAgaWYgKGlzRm9jdXNhYmxlKCkpIHsKLSAgICAgICAgICAg
IC8vIFRoZSB2YWx1ZSBvZiByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24gaXMgbm90IHVzZWQgZm9y
IGxhYmVsIGVsZW1lbnRzIGFzIGl0IGRvZXNuJ3Qgb3ZlcnJpZGUgdXBkYXRlRm9jdXNBcHBlYXJh
bmNlLgotICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yZVByZXZpb3VzU2VsZWN0aW9u
LCBkaXJlY3Rpb24pOworICAgICAgICAgICAgLy8gVGhlIHZhbHVlIG9mIHJlc3RvcmF0aW9uTW9k
ZSBpcyBub3QgdXNlZCBmb3IgbGFiZWwgZWxlbWVudHMgYXMgaXQgZG9lc24ndCBvdmVycmlkZSB1
cGRhdGVGb2N1c0FwcGVhcmFuY2UuCisgICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyhyZXN0b3Jh
dGlvbk1vZGUsIGRpcmVjdGlvbik7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KICAg
ICB9CiAKICAgICAvLyBUbyBtYXRjaCBvdGhlciBicm93c2VycywgYWx3YXlzIHJlc3RvcmUgcHJl
dmlvdXMgc2VsZWN0aW9uLgogICAgIGlmIChhdXRvIGVsZW1lbnQgPSBjb250cm9sKCkpCi0gICAg
ICAgIGVsZW1lbnQtPmZvY3VzKHRydWUsIGRpcmVjdGlvbik7CisgICAgICAgIGVsZW1lbnQtPmZv
Y3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UmVzdG9yZSwgZGlyZWN0aW9uKTsKIH0KIAog
Ym9vbCBIVE1MTGFiZWxFbGVtZW50OjphY2Nlc3NLZXlBY3Rpb24oYm9vbCBzZW5kTW91c2VFdmVu
dHMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCmluZGV4IDQ2NjBmMDY3Nzcz
NTFjZTZkYzg5NWM4MWJiMDcyNDdjOWM0MzIwZWUuLjgwZTE1YzIyNTc5ZGRiODY1ZmRjMTE3NjA1
OGJmZjJlMzNiZmRmOWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVs
RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCkBA
IC01MSw3ICs1MSw3IEBAIHByaXZhdGU6CiAgICAgLy8gT3ZlcnJpZGRlbiB0byBlaXRoZXIgY2xp
Y2soKSBvciBmb2N1cygpIHRoZSBjb3JyZXNwb25kaW5nIGNvbnRyb2wuCiAgICAgdm9pZCBkZWZh
dWx0RXZlbnRIYW5kbGVyKEV2ZW50JikgZmluYWw7CiAKLSAgICB2b2lkIGZvY3VzKGJvb2wgcmVz
dG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbikgZmluYWw7CisgICAgdm9pZCBm
b2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKIAog
ICAgIGJvb2wgaXNJbnRlcmFjdGl2ZUNvbnRlbnQoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVl
OyB9CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmNwcAppbmRleCBh
MWU1N2NmZTRkMGIxZjIwODAwNzFmNDcyZDQ0OWY2YjYwOGEyMjc2Li5lZDBhNDAxMWNhNzQ1NmM0
ZTI0MWUxMGM1YTZkYzAyNzMxN2Q2ODJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxMZWdlbmRFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdl
bmRFbGVtZW50LmNwcApAQCAtNTcsMTkgKzU3LDE5IEBAIFJlZlB0cjxIVE1MRm9ybUNvbnRyb2xF
bGVtZW50PiBIVE1MTGVnZW5kRWxlbWVudDo6YXNzb2NpYXRlZENvbnRyb2woKQogICAgIHJldHVy
biBkZXNjZW5kYW50c09mVHlwZTxIVE1MRm9ybUNvbnRyb2xFbGVtZW50PigqZW5jbG9zaW5nRmll
bGRzZXQpLmZpcnN0KCk7CiB9CiAKLXZvaWQgSFRNTExlZ2VuZEVsZW1lbnQ6OmZvY3VzKGJvb2wg
cmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCit2b2lk
IEhUTUxMZWdlbmRFbGVtZW50Ojpmb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgcmVzdG9y
YXRpb25Nb2RlLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCiB7CiAgICAgaWYgKGRvY3VtZW50
KCkuaGF2ZVN0eWxlc2hlZXRzTG9hZGVkKCkpIHsKICAgICAgICAgZG9jdW1lbnQoKS51cGRhdGVM
YXlvdXRJZ25vcmVQZW5kaW5nU3R5bGVzaGVldHMoKTsKICAgICAgICAgaWYgKGlzRm9jdXNhYmxl
KCkpIHsKLSAgICAgICAgICAgIEVsZW1lbnQ6OmZvY3VzKHJlc3RvcmVQcmV2aW91c1NlbGVjdGlv
biwgZGlyZWN0aW9uKTsKKyAgICAgICAgICAgIEVsZW1lbnQ6OmZvY3VzKHJlc3RvcmF0aW9uTW9k
ZSwgZGlyZWN0aW9uKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogICAgIH0KIAog
ICAgIC8vIFRvIG1hdGNoIG90aGVyIGJyb3dzZXJzJyBiZWhhdmlvciwgbmV2ZXIgcmVzdG9yZSBw
cmV2aW91cyBzZWxlY3Rpb24uCiAgICAgaWYgKGF1dG8gY29udHJvbCA9IGFzc29jaWF0ZWRDb250
cm9sKCkpCi0gICAgICAgIGNvbnRyb2wtPmZvY3VzKGZhbHNlLCBkaXJlY3Rpb24pOworICAgICAg
ICBjb250cm9sLT5mb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCwgZGly
ZWN0aW9uKTsKIH0KIAogYm9vbCBIVE1MTGVnZW5kRWxlbWVudDo6YWNjZXNzS2V5QWN0aW9uKGJv
b2wgc2VuZE1vdXNlRXZlbnRzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
TGVnZW5kRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5o
CmluZGV4IDJkZjYyMjk3MWYxMzc5MjJkYzM4Yzg4NTQ5MmQyZjM4NTQ2ZjJhMWEuLjdkY2IxYjg1
MGEyN2UzYjdhY2I4MDI4N2M1NzRmODMwMmZjYTYwMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxMZWdlbmRFbGVtZW50LmgKQEAgLTQzLDcgKzQzLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8
SFRNTEZvcm1Db250cm9sRWxlbWVudD4gYXNzb2NpYXRlZENvbnRyb2woKTsKIAogICAgIGJvb2wg
YWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKSBmaW5hbDsKLSAgICB2b2lkIGZv
Y3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbikgZmluYWw7
CisgICAgdm9pZCBmb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9u
KSBmaW5hbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuY3BwCmluZGV4IDg4MTY4NTk0NjE4NGU3YzRhOTc2NmVh
YWUzYjUxY2Q5OTAyZDRhNWIuLjA0Mjk2MzFkZmExMzJlYTg4ZmY2YzNhMGMxOGIxYmU3MjY0OTll
NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcApAQCAt
MjY4LDEzICsyNjgsMTQgQEAgYm9vbCBIVE1MVGV4dEFyZWFFbGVtZW50Ojppc01vdXNlRm9jdXNh
YmxlKCkgY29uc3QKIAogdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50Ojp1cGRhdGVGb2N1c0FwcGVh
cmFuY2UoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHJlc3RvcmF0aW9uTW9kZSwgU2VsZWN0aW9u
UmV2ZWFsTW9kZSByZXZlYWxNb2RlKQogewotICAgIGlmIChyZXN0b3JhdGlvbk1vZGUgPT0gU2Vs
ZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZXREZWZhdWx0IHx8ICFoYXNDYWNoZWRTZWxlY3Rpb24o
KSkgeworICAgIGlmIChyZXN0b3JhdGlvbk1vZGUgPT0gU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2Rl
OjpSZXN0b3JlICYmIGhhc0NhY2hlZFNlbGVjdGlvbigpKQorICAgICAgICByZXN0b3JlQ2FjaGVk
U2VsZWN0aW9uKHJldmVhbE1vZGUsIEVsZW1lbnQ6OmRlZmF1bHRGb2N1c1RleHRTdGF0ZUNoYW5n
ZUludGVudCgpKTsKKyAgICBlbHNlIHsKICAgICAgICAgLy8gSWYgdGhpcyBpcyB0aGUgZmlyc3Qg
Zm9jdXMsIHNldCBhIGNhcmV0IGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIHRleHQuICAKICAgICAg
ICAgLy8gVGhpcyBtYXRjaGVzIHNvbWUgYnJvd3NlcnMnIGJlaGF2aW9yOyBzZWUgYnVnIDExNzQ2
IENvbW1lbnQgIzE1LgogICAgICAgICAvLyBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMTc0NiNjMTUKICAgICAgICAgc2V0U2VsZWN0aW9uUmFuZ2UoMCwgMCwgU2VsZWN0
aW9uSGFzTm9EaXJlY3Rpb24sIHJldmVhbE1vZGUsIEVsZW1lbnQ6OmRlZmF1bHRGb2N1c1RleHRT
dGF0ZUNoYW5nZUludGVudCgpKTsKLSAgICB9IGVsc2UKLSAgICAgICAgcmVzdG9yZUNhY2hlZFNl
bGVjdGlvbihyZXZlYWxNb2RlLCBFbGVtZW50OjpkZWZhdWx0Rm9jdXNUZXh0U3RhdGVDaGFuZ2VJ
bnRlbnQoKSk7CisgICAgfQogfQogCiB2b2lkIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OmRlZmF1bHRF
dmVudEhhbmRsZXIoRXZlbnQmIGV2ZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9JbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCmluZGV4
IDI3MDYxOGJhOWU1NWY2Y2IyMzc3NTI1MTQ3OWNkYjE2MzU5YTgxZmYuLjhlZDUwYzhkZmM1ODc4
ZjQ2MGYyODE3YWI1MDZkYjA3YTg1Y2JiZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAK
QEAgLTU4Miw3ICs1ODIsNyBAQCB2b2lkIElucHV0VHlwZTo6aGFuZGxlQmx1ckV2ZW50KCkKIGJv
b2wgSW5wdXRUeXBlOjphY2Nlc3NLZXlBY3Rpb24oYm9vbCkKIHsKICAgICBBU1NFUlQoZWxlbWVu
dCgpKTsKLSAgICBlbGVtZW50KCktPmZvY3VzKGZhbHNlKTsKKyAgICBlbGVtZW50KCktPmZvY3Vz
KFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxsKTsKICAgICByZXR1cm4gZmFsc2U7
CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAppbmRleCBkZDM0NjdjYjg5YzE5
MGFjNmQ2MGM2ZjMyZGJlMDU4OTViMWM2MzcwLi41YzNjYmY3YTU1NTg5NGU4M2IzNzcwYWRlMmRj
YWFmZTQwOTAwZTc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxl
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCkBAIC0yNzUz
LDcgKzI3NTMsNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6ZGlzcGF0Y2hNb3VzZUV2ZW50KGNvbnN0
IEF0b21TdHJpbmcmIGV2ZW50VHlwZSwgTm9kZSogdGFyZ2V0TgogICAgICAgICByZXR1cm4gZmFs
c2U7CiAKICAgICBpZiAoZWxlbWVudCAmJiBtX21vdXNlRG93bkRlbGVnYXRlZEZvY3VzKQotICAg
ICAgICBlbGVtZW50LT5yZXZlYWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0b3JhdGlvbk1v
ZGU6OlNldERlZmF1bHQpOworICAgICAgICBlbGVtZW50LT5yZXZlYWxGb2N1c2VkRWxlbWVudChT
ZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCk7CiAKICAgICByZXR1cm4gdHJ1ZTsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcAppbmRleCAyNjZmMzE1ZTQw
ZGQ0NjViNDg2MTRhODk2ODkwYjY3OGI1NmRlYjg1Li4wN2FiYWQwNjBlMDEzZWI4YjdhYzU2MDBk
ZDQ0MTk2ZDJiMWFhOWZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29u
dHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3Bw
CkBAIC01MzMsNyArNTMzLDcgQEAgYm9vbCBGb2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1c0lu
RG9jdW1lbnRPcmRlcihGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24sIEtleWIKICAgICAgICAgfQog
ICAgIH0KIAotICAgIGVsZW1lbnQtPmZvY3VzKGZhbHNlLCBkaXJlY3Rpb24pOworICAgIGVsZW1l
bnQtPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxsLCBkaXJlY3Rpb24p
OwogICAgIHJldHVybiB0cnVlOwogfQogCkBAIC0xMTA3LDcgKzExMDcsNyBAQCBib29sIEZvY3Vz
Q29udHJvbGxlcjo6YWR2YW5jZUZvY3VzRGlyZWN0aW9uYWxseUluQ29udGFpbmVyKE5vZGUqIGNv
bnRhaW5lciwgY29ucwogICAgIEVsZW1lbnQqIGVsZW1lbnQgPSBkb3duY2FzdDxFbGVtZW50Pihm
b2N1c0NhbmRpZGF0ZS5mb2N1c2FibGVOb2RlKTsKICAgICBBU1NFUlQoZWxlbWVudCk7CiAKLSAg
ICBlbGVtZW50LT5mb2N1cyhmYWxzZSwgZGlyZWN0aW9uKTsKKyAgICBlbGVtZW50LT5mb2N1cyhT
ZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCwgZGlyZWN0aW9uKTsKICAgICByZXR1
cm4gdHJ1ZTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413371</attachid>
            <date>2020-11-05 16:43:39 -0800</date>
            <delta_ts>2020-11-06 10:11:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218585-20201105164338.patch</filename>
            <type>text/plain</type>
            <size>19604</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBjNzlkY2Y5MWNjZjBkOGI0NjQ4YWFkYTQ5ZGM1ODZkOTM2NTU0NzE0Li40
NDM3ZDRjODllMWU1NjFhODI2ZDc5NWJhMmU4ZWIzMmY2MjZiNGNiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsNTAgQEAKKzIwMjAtMTEtMDUgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIGF1dG9mb2N1cyBvZiB0ZXh0IGlucHV0IHNob3VsZCBub3Qgc2VsZWN0IHRl
eHQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODU4
NQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjAxMzA3MDQ+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdDogZmFzdC9mb3Jtcy9pbnB1dC10ZXh0
LWF1dG9mb2N1cy5odG1sCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuaDoKKyAgICAgICAgKiBw
YWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmRp
c3BhdGNoTW91c2VFdmVudCk6CisgICAgICAgICogcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNJbkRvY3VtZW50
T3JkZXIpOgorICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNE
aXJlY3Rpb25hbGx5SW5Db250YWluZXIpOgorICAgICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVu
dC5oOgorICAgICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MSW5wdXRFbGVtZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2UpOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6c2V0RGVmYXVsdFNlbGVjdGlvbkFmdGVyRm9jdXMp
OgorICAgICAgICAqIGh0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2UpOgorICAgICAg
ICAqIGh0bWwvSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklucHV0VHlwZTo6YWNj
ZXNzS2V5QWN0aW9uKToKKyAgICAgICAgU2xpZ2h0bHkgcmV3b3JrIGBTZWxlY3Rpb25SZXN0b3Jh
dGlvbk1vZGVgIHRvIHJlcGxhY2UgYFNldERlZmF1bHRgIHdpdGggdHdvIG5ldyB2YWx1ZXM6Cisg
ICAgICAgICAtIGBQbGFjZUN1cnNvckF0U3RhcnRgIHB1dHMgdGhlIGN1cnNvciBhdCB0aGUgc3Rh
cnQsIHJlZ2FyZGxlc3Mgb2YgYW55IGNhY2hlZCBzZWxlY3Rpb24KKyAgICAgICAgIC0gYFNlbGVj
dEFsbGAgc2VsZWN0cyBhbGwgdGV4dCwgcmVnYXJkbGVzcyBvZiBhbnkgY2FjaGVkIHNlbGVjdGlv
biAoZXhpc3RpbmcgYmVoYXZpb3IpCisgICAgICAgIEluIG9yZGVyIHRvIHByZXNlcnZlIGV4aXN0
aW5nIGJlaGF2aW9yLCB0aGUgZGVmYXVsdCBgUmVzdG9yZWAgd2lsbCBoYXZlIHRoZSBzYW1lIGVm
ZmVjdCBhcworICAgICAgICBgU2VsZWN0QWxsYCBpZiB0aGVyZSBpcyBubyBjYWNoZWQgc2VsZWN0
aW9uLgorCisgICAgICAgICogaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OmRpZEF0dGFjaFJlbmRlcmVycyk6
CisgICAgICAgIENoYW5nZSB0byBgUGxhY2VDdXJzb3JBdFN0YXJ0YCB0byBtYXRjaCBvdGhlciBi
cm93c2Vycy4KKworICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgICogZG9tL0VsZW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6Zm9jdXMpOgorICAgICAgICAqIGh0
bWwvSFRNTExhYmVsRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTExhYmVsRWxlbWVudC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTGFiZWxFbGVtZW50Ojpmb2N1cyk6CisgICAgICAg
ICogaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTExlZ2VuZEVs
ZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExlZ2VuZEVsZW1lbnQ6OmZvY3VzKToK
KyAgICAgICAgUmVwbGFjZSB0aGUgYGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uYCB3aXRo
IGBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGVgIHNpbmNlIHRoYXQncworICAgICAgICB3aGF0IGl0
J3MgZXZlbnR1YWxseSB1c2VkIGZvciBhbnl3YXlzLiBUaGlzIGFsc28gYWxsb3dzIGZvciBtb3Jl
IGZsZXhpYmlsaXR5IGluIGJlaGF2aW9yLAorICAgICAgICBzdWNoIGFzIGNhbGxlcnMgdXNpbmcg
dGhlIG5ldyBgU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlYCB2YWx1ZXMuCisKIDIwMjAtMTEtMDQg
IENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICB3aW5kb3cuZXZlbnQg
bWF5IGdldCBzZXQgb24gd3JvbmcgZ2xvYmFsIHdoZW4gZGlzcGF0Y2hpbmcgYW4gZXZlbnQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0RvY3VtZW50LmgKaW5kZXggNzJjMmI5MjUyMmNjMWRlMjc4Nzk0OWE0NDFjMTc1MGQ1NDg3
N2M1YS4uYmZkMTRiMTkyMTEyOTEzY2ZkYjJhZGNkZjBiNTc5OGY2ZjFmNDNkNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L0RvY3VtZW50LmgKQEAgLTI4OCw3ICsyODgsMTEgQEAgZW51bSBjbGFzcyBEb2N1bWVudENvbXBh
dGliaWxpdHlNb2RlIDogdW5zaWduZWQgY2hhciB7CiAKIGVudW0gRGltZW5zaW9uc0NoZWNrIHsg
V2lkdGhEaW1lbnNpb25zQ2hlY2sgPSAxIDw8IDAsIEhlaWdodERpbWVuc2lvbnNDaGVjayA9IDEg
PDwgMSwgQWxsRGltZW5zaW9uc0NoZWNrID0gMSA8PCAyIH07CiAKLWVudW0gY2xhc3MgU2VsZWN0
aW9uUmVzdG9yYXRpb25Nb2RlIHsgUmVzdG9yZSwgU2V0RGVmYXVsdCB9OworZW51bSBjbGFzcyBT
ZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgOiB1aW50OF90IHsKKyAgICBSZXN0b3JlLCAvLyBJZiB0
aGVyZSBpcyBubyBwcmV2aW91cyBzZWxlY3Rpb24sIHRoaXMgYmVoYXZlcyBsaWtlIFNlbGVjdEFs
bC4KKyAgICBQbGFjZUN1cnNvckF0U3RhcnQsCisgICAgU2VsZWN0QWxsLAorfTsKIAogZW51bSBj
bGFzcyBIdHRwRXF1aXZQb2xpY3kgewogICAgIEVuYWJsZWQsCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAK
aW5kZXggOGQ2NzI3NTkyYTE1OTQ2MjA5YWFkOGU0ZjYzNjgwOGFkZDZkZDFlYi4uZjc3ZTU2NjBj
OTg5YTY1MWM3YTkxMzg0ODhhNzFlMjJiYTk3MTM0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcApA
QCAtMjk5Myw3ICsyOTkzLDcgQEAgc3RhdGljIFJlZlB0cjxFbGVtZW50PiBmaW5kRmlyc3RQcm9n
cmFtYXRpY2FsbHlGb2N1c2FibGVFbGVtZW50SW5Db21wb3NlZFRyZWUoRWwKICAgICByZXR1cm4g
bnVsbHB0cjsKIH0KIAotdm9pZCBFbGVtZW50Ojpmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1Nl
bGVjdGlvbiwgRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQordm9pZCBFbGVtZW50Ojpmb2N1cyhT
ZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVjdGlvbiBk
aXJlY3Rpb24pCiB7CiAgICAgaWYgKCFpc0Nvbm5lY3RlZCgpKQogICAgICAgICByZXR1cm47CkBA
IC0zMDQxLDcgKzMwNDEsNyBAQCB2b2lkIEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZp
b3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCiAgICAgICAgICAgICByZXR1
cm47CiAgICAgfQogCi0gICAgbmV3VGFyZ2V0LT5yZXZlYWxGb2N1c2VkRWxlbWVudChyZXN0b3Jl
UHJldmlvdXNTZWxlY3Rpb24gPyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmUgOiBT
ZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNldERlZmF1bHQpOworICAgIG5ld1RhcmdldC0+cmV2
ZWFsRm9jdXNlZEVsZW1lbnQocmVzdG9yYXRpb25Nb2RlKTsKIH0KIAogdm9pZCBFbGVtZW50Ojpy
ZXZlYWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgc2VsZWN0aW9uTW9k
ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRWxlbWVudC5oCmluZGV4IDE5NzQyOTkwNTAzODQ3MTIwMzQ3NTFlODBlZWNlOWM2
YThlNjBjMjEuLmE3NDI2YzQ3N2JhNThjNGFkNDE4YTEwYTQwY2U2ODQzYjJmZTkyNjkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL0VsZW1lbnQuaApAQCAtNDAwLDcgKzQwMCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIFN0
cmluZyB0YXJnZXQoKSBjb25zdCB7IHJldHVybiBTdHJpbmcoKTsgfQogCiAgICAgc3RhdGljIEFY
VGV4dFN0YXRlQ2hhbmdlSW50ZW50IGRlZmF1bHRGb2N1c1RleHRTdGF0ZUNoYW5nZUludGVudCgp
IHsgcmV0dXJuIEFYVGV4dFN0YXRlQ2hhbmdlSW50ZW50KEFYVGV4dFN0YXRlQ2hhbmdlVHlwZVNl
bGVjdGlvbk1vdmUsIEFYVGV4dFNlbGVjdGlvbiB7IEFYVGV4dFNlbGVjdGlvbkRpcmVjdGlvbkRp
c2NvbnRpZ3VvdXMsIEFYVGV4dFNlbGVjdGlvbkdyYW51bGFyaXR5VW5rbm93biwgdHJ1ZSB9KTsg
fQotICAgIHZpcnR1YWwgdm9pZCBmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiA9
IHRydWUsIEZvY3VzRGlyZWN0aW9uID0gRm9jdXNEaXJlY3Rpb246Ok5vbmUpOworICAgIHZpcnR1
YWwgdm9pZCBmb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgPSBTZWxlY3Rpb25SZXN0b3Jh
dGlvbk1vZGU6OlJlc3RvcmUsIEZvY3VzRGlyZWN0aW9uID0gRm9jdXNEaXJlY3Rpb246Ok5vbmUp
OwogICAgIHZvaWQgcmV2ZWFsRm9jdXNlZEVsZW1lbnQoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2Rl
KTsKICAgICB2aXJ0dWFsIFJlZlB0cjxFbGVtZW50PiBmb2N1c0FwcGVhcmFuY2VVcGRhdGVUYXJn
ZXQoKTsKICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlRm9jdXNBcHBlYXJhbmNlKFNlbGVjdGlvblJl
c3RvcmF0aW9uTW9kZSwgU2VsZWN0aW9uUmV2ZWFsTW9kZSA9IFNlbGVjdGlvblJldmVhbE1vZGU6
OlJldmVhbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJv
bEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50
LmNwcAppbmRleCAzOTdmNzY1ODgxMmQ2YjlkMzY1YzcxODU4OTdmMWY1MTE2MjMxNmJjLi5jM2I0
ZTBhNmU1Yzk2MDM1ZWIxM2FjNWVkMTVkMzFhNzFhOGNmMDk5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKQEAgLTI1NCwxMSArMjU0LDExIEBA
IHZvaWQgSFRNTEZvcm1Db250cm9sRWxlbWVudDo6ZGlkQXR0YWNoUmVuZGVyZXJzKCkKICAgICAg
ICAgYXV0byBmcmFtZVZpZXcgPSBtYWtlUmVmUHRyKGRvY3VtZW50KCkudmlldygpKTsKICAgICAg
ICAgaWYgKGZyYW1lVmlldyAmJiBmcmFtZVZpZXctPmxheW91dENvbnRleHQoKS5pc0luTGF5b3V0
KCkpIHsKICAgICAgICAgICAgIGZyYW1lVmlldy0+cXVldWVQb3N0TGF5b3V0Q2FsbGJhY2soW2Vs
ZW1lbnRdIHsKLSAgICAgICAgICAgICAgICBlbGVtZW50LT5mb2N1cygpOworICAgICAgICAgICAg
ICAgIGVsZW1lbnQtPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UGxhY2VDdXJzb3JB
dFN0YXJ0KTsKICAgICAgICAgICAgIH0pOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
U3R5bGU6OnF1ZXVlUG9zdFJlc29sdXRpb25DYWxsYmFjayhbZWxlbWVudF0gewotICAgICAgICAg
ICAgICAgIGVsZW1lbnQtPmZvY3VzKCk7CisgICAgICAgICAgICAgICAgZWxlbWVudC0+Zm9jdXMo
U2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpQbGFjZUN1cnNvckF0U3RhcnQpOwogICAgICAgICAg
ICAgfSk7CiAgICAgICAgIH0KICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxJbnB1dEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVt
ZW50LmNwcAppbmRleCA5OTNmMzk1NDM5YjJhOGU2OWQ5NmQ1OGQxOTkxNzgzM2E3MjA5M2VjLi4x
MDAzZjhkZmE4NGI3ZDIyMjA3ZjdkM2JkYmM2NWYyNDBmODNhM2E4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAKQEAgLTQ3NiwxNSArNDc2LDE1IEBAIGJvb2wgSFRN
TElucHV0RWxlbWVudDo6aXNUZXh0Rm9ybUNvbnRyb2xNb3VzZUZvY3VzYWJsZSgpIGNvbnN0CiB2
b2lkIEhUTUxJbnB1dEVsZW1lbnQ6OnVwZGF0ZUZvY3VzQXBwZWFyYW5jZShTZWxlY3Rpb25SZXN0
b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBTZWxlY3Rpb25SZXZlYWxNb2RlIHJldmVhbE1v
ZGUpCiB7CiAgICAgaWYgKGlzVGV4dEZpZWxkKCkpIHsKLSAgICAgICAgaWYgKHJlc3RvcmF0aW9u
TW9kZSA9PSBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNldERlZmF1bHQgfHwgIWhhc0NhY2hl
ZFNlbGVjdGlvbigpKQotICAgICAgICAgICAgc2V0RGVmYXVsdFNlbGVjdGlvbkFmdGVyRm9jdXMo
cmV2ZWFsTW9kZSk7Ci0gICAgICAgIGVsc2UKKyAgICAgICAgaWYgKHJlc3RvcmF0aW9uTW9kZSA9
PSBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmUgJiYgaGFzQ2FjaGVkU2VsZWN0aW9u
KCkpCiAgICAgICAgICAgICByZXN0b3JlQ2FjaGVkU2VsZWN0aW9uKHJldmVhbE1vZGUpOworICAg
ICAgICBlbHNlCisgICAgICAgICAgICBzZXREZWZhdWx0U2VsZWN0aW9uQWZ0ZXJGb2N1cyhyZXN0
b3JhdGlvbk1vZGUsIHJldmVhbE1vZGUpOwogICAgIH0gZWxzZQogICAgICAgICBIVE1MVGV4dEZv
cm1Db250cm9sRWxlbWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlKHJlc3RvcmF0aW9uTW9kZSwg
cmV2ZWFsTW9kZSk7CiB9CiAKLXZvaWQgSFRNTElucHV0RWxlbWVudDo6c2V0RGVmYXVsdFNlbGVj
dGlvbkFmdGVyRm9jdXMoU2VsZWN0aW9uUmV2ZWFsTW9kZSByZXZlYWxNb2RlKQordm9pZCBIVE1M
SW5wdXRFbGVtZW50OjpzZXREZWZhdWx0U2VsZWN0aW9uQWZ0ZXJGb2N1cyhTZWxlY3Rpb25SZXN0
b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBTZWxlY3Rpb25SZXZlYWxNb2RlIHJldmVhbE1v
ZGUpCiB7CiAgICAgQVNTRVJUKGlzVGV4dEZpZWxkKCkpOwogICAgIGludCBzdGFydCA9IDA7CkBA
IC00OTQsNyArNDk0LDkgQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50OjpzZXREZWZhdWx0U2VsZWN0
aW9uQWZ0ZXJGb2N1cyhTZWxlY3Rpb25SZXZlYWxNb2RlIHJldmVhbE0KICAgICAgICAgc3RhcnQg
PSBzdGQ6Om51bWVyaWNfbGltaXRzPGludD46Om1heCgpOwogICAgICAgICBkaXJlY3Rpb24gPSBT
ZWxlY3Rpb25IYXNGb3J3YXJkRGlyZWN0aW9uOwogICAgIH0KLSAgICBzZXRTZWxlY3Rpb25SYW5n
ZShzdGFydCwgc3RkOjpudW1lcmljX2xpbWl0czxpbnQ+OjptYXgoKSwgZGlyZWN0aW9uLCByZXZl
YWxNb2RlLCBFbGVtZW50OjpkZWZhdWx0Rm9jdXNUZXh0U3RhdGVDaGFuZ2VJbnRlbnQoKSk7Cisg
ICAgLy8gRGVmYXVsdCB0byBgU2VsZWN0QWxsYCB0byBwcmVzZXJ2ZSBleGlzdGluZyBiZWhhdmlv
ci4KKyAgICBpbnQgZW5kID0gcmVzdG9yYXRpb25Nb2RlID09IFNlbGVjdGlvblJlc3RvcmF0aW9u
TW9kZTo6UGxhY2VDdXJzb3JBdFN0YXJ0ID8gc3RhcnQgOiBzdGQ6Om51bWVyaWNfbGltaXRzPGlu
dD46Om1heCgpOworICAgIHNldFNlbGVjdGlvblJhbmdlKHN0YXJ0LCBlbmQsIGRpcmVjdGlvbiwg
cmV2ZWFsTW9kZSwgRWxlbWVudDo6ZGVmYXVsdEZvY3VzVGV4dFN0YXRlQ2hhbmdlSW50ZW50KCkp
OwogfQogCiB2b2lkIEhUTUxJbnB1dEVsZW1lbnQ6OmVuZEVkaXRpbmcoKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxJbnB1dEVsZW1lbnQuaAppbmRleCBmYjhjODVkOTJkOGFkM2UwOTUzMzVjNmM4M2U5
Njk2ODE4MmFlYzhhLi44YmY5ZTcyNWUzZjg1Zjg4MzEyN2EzZWUwNjZjNTM2ZDU1NWViYTkyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaApAQCAtNDU1LDcgKzQ1NSw3IEBA
IHByaXZhdGU6CiAgICAgdm9pZCBhZGRUb1JhZGlvQnV0dG9uR3JvdXAoKTsKICAgICB2b2lkIHJl
bW92ZUZyb21SYWRpb0J1dHRvbkdyb3VwKCk7CiAKLSAgICB2b2lkIHNldERlZmF1bHRTZWxlY3Rp
b25BZnRlckZvY3VzKFNlbGVjdGlvblJldmVhbE1vZGUpOworICAgIHZvaWQgc2V0RGVmYXVsdFNl
bGVjdGlvbkFmdGVyRm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlLCBTZWxlY3Rpb25SZXZl
YWxNb2RlKTsKIAogICAgIEF0b21TdHJpbmcgbV9uYW1lOwogICAgIFN0cmluZyBtX3ZhbHVlSWZE
aXJ0eTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCmluZGV4IDM3Zjlj
YTU2ZTgwZDczMjQxMDNiMWExMjZmYzIyYzY2NWEwOGFkM2MuLmY1ZWY4YjgzNWMwZTM5ZmMwMTUw
OWU5ODg2YmMzOGM1ZTY4ZjIyMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TExhYmVsRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVt
ZW50LmNwcApAQCAtMTcyLDIxICsxNzIsMjEgQEAgYm9vbCBIVE1MTGFiZWxFbGVtZW50Ojp3aWxs
UmVzcG9uZFRvTW91c2VDbGlja0V2ZW50cygpCiAgICAgcmV0dXJuIChlbGVtZW50ICYmIGVsZW1l
bnQtPndpbGxSZXNwb25kVG9Nb3VzZUNsaWNrRXZlbnRzKCkpIHx8IEhUTUxFbGVtZW50Ojp3aWxs
UmVzcG9uZFRvTW91c2VDbGlja0V2ZW50cygpOwogfQogCi12b2lkIEhUTUxMYWJlbEVsZW1lbnQ6
OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJl
Y3Rpb24pCit2b2lkIEhUTUxMYWJlbEVsZW1lbnQ6OmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9u
TW9kZSByZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKIHsKICAgICBS
ZWY8SFRNTExhYmVsRWxlbWVudD4gcHJvdGVjdGVkVGhpcygqdGhpcyk7CiAgICAgaWYgKGRvY3Vt
ZW50KCkuaGF2ZVN0eWxlc2hlZXRzTG9hZGVkKCkpIHsKICAgICAgICAgZG9jdW1lbnQoKS51cGRh
dGVMYXlvdXQoKTsKICAgICAgICAgaWYgKGlzRm9jdXNhYmxlKCkpIHsKLSAgICAgICAgICAgIC8v
IFRoZSB2YWx1ZSBvZiByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24gaXMgbm90IHVzZWQgZm9yIGxh
YmVsIGVsZW1lbnRzIGFzIGl0IGRvZXNuJ3Qgb3ZlcnJpZGUgdXBkYXRlRm9jdXNBcHBlYXJhbmNl
LgotICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBk
aXJlY3Rpb24pOworICAgICAgICAgICAgLy8gVGhlIHZhbHVlIG9mIHJlc3RvcmF0aW9uTW9kZSBp
cyBub3QgdXNlZCBmb3IgbGFiZWwgZWxlbWVudHMgYXMgaXQgZG9lc24ndCBvdmVycmlkZSB1cGRh
dGVGb2N1c0FwcGVhcmFuY2UuCisgICAgICAgICAgICBFbGVtZW50Ojpmb2N1cyhyZXN0b3JhdGlv
bk1vZGUsIGRpcmVjdGlvbik7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KICAgICB9
CiAKICAgICAvLyBUbyBtYXRjaCBvdGhlciBicm93c2VycywgYWx3YXlzIHJlc3RvcmUgcHJldmlv
dXMgc2VsZWN0aW9uLgogICAgIGlmIChhdXRvIGVsZW1lbnQgPSBjb250cm9sKCkpCi0gICAgICAg
IGVsZW1lbnQtPmZvY3VzKHRydWUsIGRpcmVjdGlvbik7CisgICAgICAgIGVsZW1lbnQtPmZvY3Vz
KFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UmVzdG9yZSwgZGlyZWN0aW9uKTsKIH0KIAogYm9v
bCBIVE1MTGFiZWxFbGVtZW50OjphY2Nlc3NLZXlBY3Rpb24oYm9vbCBzZW5kTW91c2VFdmVudHMp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuaCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCmluZGV4IDQ2NjBmMDY3NzczNTFj
ZTZkYzg5NWM4MWJiMDcyNDdjOWM0MzIwZWUuLjgwZTE1YzIyNTc5ZGRiODY1ZmRjMTE3NjA1OGJm
ZjJlMzNiZmRmOWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxl
bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCkBAIC01
MSw3ICs1MSw3IEBAIHByaXZhdGU6CiAgICAgLy8gT3ZlcnJpZGRlbiB0byBlaXRoZXIgY2xpY2so
KSBvciBmb2N1cygpIHRoZSBjb3JyZXNwb25kaW5nIGNvbnRyb2wuCiAgICAgdm9pZCBkZWZhdWx0
RXZlbnRIYW5kbGVyKEV2ZW50JikgZmluYWw7CiAKLSAgICB2b2lkIGZvY3VzKGJvb2wgcmVzdG9y
ZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbikgZmluYWw7CisgICAgdm9pZCBmb2N1
cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKIAogICAg
IGJvb2wgaXNJbnRlcmFjdGl2ZUNvbnRlbnQoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9
CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmNwcAppbmRleCBhMWU1
N2NmZTRkMGIxZjIwODAwNzFmNDcyZDQ0OWY2YjYwOGEyMjc2Li5lZDBhNDAxMWNhNzQ1NmM0ZTI0
MWUxMGM1YTZkYzAyNzMxN2Q2ODJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxMZWdlbmRFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRF
bGVtZW50LmNwcApAQCAtNTcsMTkgKzU3LDE5IEBAIFJlZlB0cjxIVE1MRm9ybUNvbnRyb2xFbGVt
ZW50PiBIVE1MTGVnZW5kRWxlbWVudDo6YXNzb2NpYXRlZENvbnRyb2woKQogICAgIHJldHVybiBk
ZXNjZW5kYW50c09mVHlwZTxIVE1MRm9ybUNvbnRyb2xFbGVtZW50PigqZW5jbG9zaW5nRmllbGRz
ZXQpLmZpcnN0KCk7CiB9CiAKLXZvaWQgSFRNTExlZ2VuZEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVz
dG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCit2b2lkIEhU
TUxMZWdlbmRFbGVtZW50Ojpmb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRp
b25Nb2RlLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCiB7CiAgICAgaWYgKGRvY3VtZW50KCku
aGF2ZVN0eWxlc2hlZXRzTG9hZGVkKCkpIHsKICAgICAgICAgZG9jdW1lbnQoKS51cGRhdGVMYXlv
dXRJZ25vcmVQZW5kaW5nU3R5bGVzaGVldHMoKTsKICAgICAgICAgaWYgKGlzRm9jdXNhYmxlKCkp
IHsKLSAgICAgICAgICAgIEVsZW1lbnQ6OmZvY3VzKHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwg
ZGlyZWN0aW9uKTsKKyAgICAgICAgICAgIEVsZW1lbnQ6OmZvY3VzKHJlc3RvcmF0aW9uTW9kZSwg
ZGlyZWN0aW9uKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogICAgIH0KIAogICAg
IC8vIFRvIG1hdGNoIG90aGVyIGJyb3dzZXJzJyBiZWhhdmlvciwgbmV2ZXIgcmVzdG9yZSBwcmV2
aW91cyBzZWxlY3Rpb24uCiAgICAgaWYgKGF1dG8gY29udHJvbCA9IGFzc29jaWF0ZWRDb250cm9s
KCkpCi0gICAgICAgIGNvbnRyb2wtPmZvY3VzKGZhbHNlLCBkaXJlY3Rpb24pOworICAgICAgICBj
b250cm9sLT5mb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCwgZGlyZWN0
aW9uKTsKIH0KIAogYm9vbCBIVE1MTGVnZW5kRWxlbWVudDo6YWNjZXNzS2V5QWN0aW9uKGJvb2wg
c2VuZE1vdXNlRXZlbnRzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVn
ZW5kRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oCmlu
ZGV4IDJkZjYyMjk3MWYxMzc5MjJkYzM4Yzg4NTQ5MmQyZjM4NTQ2ZjJhMWEuLjdkY2IxYjg1MGEy
N2UzYjdhY2I4MDI4N2M1NzRmODMwMmZjYTYwMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxM
ZWdlbmRFbGVtZW50LmgKQEAgLTQzLDcgKzQzLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8SFRN
TEZvcm1Db250cm9sRWxlbWVudD4gYXNzb2NpYXRlZENvbnRyb2woKTsKIAogICAgIGJvb2wgYWNj
ZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKSBmaW5hbDsKLSAgICB2b2lkIGZvY3Vz
KGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbikgZmluYWw7Cisg
ICAgdm9pZCBmb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uKSBm
aW5hbDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxUZXh0QXJlYUVsZW1lbnQuY3BwCmluZGV4IDg4MTY4NTk0NjE4NGU3YzRhOTc2NmVhYWUz
YjUxY2Q5OTAyZDRhNWIuLjA0Mjk2MzFkZmExMzJlYTg4ZmY2YzNhMGMxOGIxYmU3MjY0OTllNWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcApAQCAtMjY4
LDEzICsyNjgsMTQgQEAgYm9vbCBIVE1MVGV4dEFyZWFFbGVtZW50Ojppc01vdXNlRm9jdXNhYmxl
KCkgY29uc3QKIAogdm9pZCBIVE1MVGV4dEFyZWFFbGVtZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFu
Y2UoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHJlc3RvcmF0aW9uTW9kZSwgU2VsZWN0aW9uUmV2
ZWFsTW9kZSByZXZlYWxNb2RlKQogewotICAgIGlmIChyZXN0b3JhdGlvbk1vZGUgPT0gU2VsZWN0
aW9uUmVzdG9yYXRpb25Nb2RlOjpTZXREZWZhdWx0IHx8ICFoYXNDYWNoZWRTZWxlY3Rpb24oKSkg
eworICAgIGlmIChyZXN0b3JhdGlvbk1vZGUgPT0gU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpS
ZXN0b3JlICYmIGhhc0NhY2hlZFNlbGVjdGlvbigpKQorICAgICAgICByZXN0b3JlQ2FjaGVkU2Vs
ZWN0aW9uKHJldmVhbE1vZGUsIEVsZW1lbnQ6OmRlZmF1bHRGb2N1c1RleHRTdGF0ZUNoYW5nZUlu
dGVudCgpKTsKKyAgICBlbHNlIHsKICAgICAgICAgLy8gSWYgdGhpcyBpcyB0aGUgZmlyc3QgZm9j
dXMsIHNldCBhIGNhcmV0IGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIHRleHQuICAKICAgICAgICAg
Ly8gVGhpcyBtYXRjaGVzIHNvbWUgYnJvd3NlcnMnIGJlaGF2aW9yOyBzZWUgYnVnIDExNzQ2IENv
bW1lbnQgIzE1LgogICAgICAgICAvLyBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMTc0NiNjMTUKICAgICAgICAgc2V0U2VsZWN0aW9uUmFuZ2UoMCwgMCwgU2VsZWN0aW9u
SGFzTm9EaXJlY3Rpb24sIHJldmVhbE1vZGUsIEVsZW1lbnQ6OmRlZmF1bHRGb2N1c1RleHRTdGF0
ZUNoYW5nZUludGVudCgpKTsKLSAgICB9IGVsc2UKLSAgICAgICAgcmVzdG9yZUNhY2hlZFNlbGVj
dGlvbihyZXZlYWxNb2RlLCBFbGVtZW50OjpkZWZhdWx0Rm9jdXNUZXh0U3RhdGVDaGFuZ2VJbnRl
bnQoKSk7CisgICAgfQogfQogCiB2b2lkIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OmRlZmF1bHRFdmVu
dEhhbmRsZXIoRXZlbnQmIGV2ZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9J
bnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3BwCmluZGV4IDI3
MDYxOGJhOWU1NWY2Y2IyMzc3NTI1MTQ3OWNkYjE2MzU5YTgxZmYuLjhlZDUwYzhkZmM1ODc4ZjQ2
MGYyODE3YWI1MDZkYjA3YTg1Y2JiZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAKQEAg
LTU4Miw3ICs1ODIsNyBAQCB2b2lkIElucHV0VHlwZTo6aGFuZGxlQmx1ckV2ZW50KCkKIGJvb2wg
SW5wdXRUeXBlOjphY2Nlc3NLZXlBY3Rpb24oYm9vbCkKIHsKICAgICBBU1NFUlQoZWxlbWVudCgp
KTsKLSAgICBlbGVtZW50KCktPmZvY3VzKGZhbHNlKTsKKyAgICBlbGVtZW50KCktPmZvY3VzKFNl
bGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxsKTsKICAgICByZXR1cm4gZmFsc2U7CiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAppbmRleCBkZDM0NjdjYjg5YzE5MGFj
NmQ2MGM2ZjMyZGJlMDU4OTViMWM2MzcwLi41YzNjYmY3YTU1NTg5NGU4M2IzNzcwYWRlMmRjYWFm
ZTQwOTAwZTc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCkBAIC0yNzUzLDcg
KzI3NTMsNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6ZGlzcGF0Y2hNb3VzZUV2ZW50KGNvbnN0IEF0
b21TdHJpbmcmIGV2ZW50VHlwZSwgTm9kZSogdGFyZ2V0TgogICAgICAgICByZXR1cm4gZmFsc2U7
CiAKICAgICBpZiAoZWxlbWVudCAmJiBtX21vdXNlRG93bkRlbGVnYXRlZEZvY3VzKQotICAgICAg
ICBlbGVtZW50LT5yZXZlYWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6
OlNldERlZmF1bHQpOworICAgICAgICBlbGVtZW50LT5yZXZlYWxGb2N1c2VkRWxlbWVudChTZWxl
Y3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCk7CiAKICAgICByZXR1cm4gdHJ1ZTsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcAppbmRleCAyNjZmMzE1ZTQwZGQ0
NjViNDg2MTRhODk2ODkwYjY3OGI1NmRlYjg1Li4wN2FiYWQwNjBlMDEzZWI4YjdhYzU2MDBkZDQ0
MTk2ZDJiMWFhOWZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJv
bGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCkBA
IC01MzMsNyArNTMzLDcgQEAgYm9vbCBGb2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1c0luRG9j
dW1lbnRPcmRlcihGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24sIEtleWIKICAgICAgICAgfQogICAg
IH0KIAotICAgIGVsZW1lbnQtPmZvY3VzKGZhbHNlLCBkaXJlY3Rpb24pOworICAgIGVsZW1lbnQt
PmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxsLCBkaXJlY3Rpb24pOwog
ICAgIHJldHVybiB0cnVlOwogfQogCkBAIC0xMTA3LDcgKzExMDcsNyBAQCBib29sIEZvY3VzQ29u
dHJvbGxlcjo6YWR2YW5jZUZvY3VzRGlyZWN0aW9uYWxseUluQ29udGFpbmVyKE5vZGUqIGNvbnRh
aW5lciwgY29ucwogICAgIEVsZW1lbnQqIGVsZW1lbnQgPSBkb3duY2FzdDxFbGVtZW50Pihmb2N1
c0NhbmRpZGF0ZS5mb2N1c2FibGVOb2RlKTsKICAgICBBU1NFUlQoZWxlbWVudCk7CiAKLSAgICBl
bGVtZW50LT5mb2N1cyhmYWxzZSwgZGlyZWN0aW9uKTsKKyAgICBlbGVtZW50LT5mb2N1cyhTZWxl
Y3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCwgZGlyZWN0aW9uKTsKICAgICByZXR1cm4g
dHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IDAzOWQwZmE4OWQ3YjAxMGMzYzg0YWEwYTY0MTEyMjFjNTJjZDI2
OTAuLjhiNDY5YWQwNGM4NGFmMDUxOWNhNTFmMzcyOTJjOTAwZTFhMTFkNGYgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNyBAQAorMjAyMC0xMS0wNSAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+
CisKKyAgICAgICAgYXV0b2ZvY3VzIG9mIHRleHQgaW5wdXQgc2hvdWxkIG5vdCBzZWxlY3QgdGV4
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4NTg1
CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82MDEzMDcwND4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvZm9ybXMvaW5wdXQtdGV4dC1hdXRv
Zm9jdXMuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9mb3Jtcy9pbnB1dC10ZXh0LWF1dG9m
b2N1cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorCisgICAgICAgICogZmFzdC9mb3Jtcy9pbnB1dC1m
aXJzdC1sZXR0ZXItZWRpdC5odG1sOgorICAgICAgICAqIGZhc3QvZm9ybXMvaW5wdXQtZmlyc3Qt
bGV0dGVyLWVkaXQtZXhwZWN0ZWQuaHRtbDoKKwogMjAyMC0xMS0wNCAgQ2hyaXMgRHVtZXogIDxj
ZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIHdpbmRvdy5ldmVudCBtYXkgZ2V0IHNldCBvbiB3
cm9uZyBnbG9iYWwgd2hlbiBkaXNwYXRjaGluZyBhbiBldmVudApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9mb3Jtcy9pbnB1dC1maXJzdC1sZXR0ZXItZWRpdC1leHBlY3RlZC5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pbnB1dC1maXJzdC1sZXR0ZXItZWRpdC1leHBlY3RlZC5o
dG1sCmluZGV4IGFjNWVhN2ViZTFkYTU5MGE2NDEzNjMzOTk1MTI1YzA2ZmRlMTQyZjUuLmJmYzY5
NThmMzkxNmUyZDA0NjQ4ZmE4MzRjZjAxNjFlNjdmZWI3OGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvZm9ybXMvaW5wdXQtZmlyc3QtbGV0dGVyLWVkaXQtZXhwZWN0ZWQuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lucHV0LWZpcnN0LWxldHRlci1lZGl0LWV4cGVjdGVk
Lmh0bWwKQEAgLTMsNiArMyw2IEBACiA8aGVhZD4KIDwvaGVhZD4KIDxib2R5PgotICAgIDxpbnB1
dCB0eXBlPSJ0ZXh0IiBpZD0idGFyZ2V0IiB2YWx1ZT0iSGVsbG8iIGF1dG9mb2N1cz0iYXV0b2Zv
Y3VzIiAvPgorICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0idGFyZ2V0IiB2YWx1ZT0iSGVsbG8i
IC8+CiA8L2JvZHk+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1z
L2lucHV0LWZpcnN0LWxldHRlci1lZGl0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lu
cHV0LWZpcnN0LWxldHRlci1lZGl0Lmh0bWwKaW5kZXggYmNiY2NkZGNkN2YwZGIyYzlkMzAwODUw
ZGJjYjhjMWY2OGE1MzUwYi4uMWNlY2RhMjkxODFiYjNmNmFmYmNmZDA1NGE4MDYwNjc3MTAyNTNm
ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pbnB1dC1maXJzdC1sZXR0ZXIt
ZWRpdC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW5wdXQtZmlyc3QtbGV0dGVy
LWVkaXQuaHRtbApAQCAtMTksNyArMTksNyBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICAgICAgZXZl
bnRTZW5kZXIua2V5RG93bigibCIpOwogICAgICAgICBldmVudFNlbmRlci5rZXlEb3duKCJsIik7
CiAgICAgICAgIGV2ZW50U2VuZGVyLmtleURvd24oIm8iKTsKLSAgICAgICAgZG9jdW1lbnQuZXhl
Y0NvbW1hbmQoInNlbGVjdEFsbCIpOyAvLyBEb2VzIHNlbGVjdEFsbCBmb3IgYWxpZ25pbmcgdGhl
IEBhdXRvZm9jdXMgYXR0cmlidXRlIG9uIHRoZSBleHBlY3RhdGlvbi4KKyAgICAgICAgdGFyZ2V0
LmJsdXIoKTsKICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CiAgICAgfQogfQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pbnB1dC10ZXh0LWF1dG9mb2N1cy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lucHV0LXRleHQtYXV0b2ZvY3VzLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kYmNkNzdjNGRkNDcyMzZhMzFhMWMyZThhOGM4MDg3YjVk
MWVkMzZlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pbnB1dC10
ZXh0LWF1dG9mb2N1cy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw5IEBACitUZXN0IGZvciA8aW5w
dXQgYXV0b2ZvY3VzPgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBpbnB1
dEZvY3VzQ291bnQgaXMgMQorUEFTUyBpbnB1dC5zZWxlY3Rpb25TdGFydCBpcyAwCitQQVNTIGlu
cHV0LnNlbGVjdGlvbkVuZCBpcyAwCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZm9y
bXMvaW5wdXQtdGV4dC1hdXRvZm9jdXMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW5w
dXQtdGV4dC1hdXRvZm9jdXMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMjM3MDNmMDI5MTg0MWY2NGFmMjIx
YTkwMjk2OWEzMTZjMWY2ODI1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9m
b3Jtcy9pbnB1dC10ZXh0LWF1dG9mb2N1cy5odG1sCkBAIC0wLDAgKzEsMzMgQEAKKzwhRE9DVFlQ
RSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisKKzxpbnB1dCBpZD0iaW5w
dXQiIHR5cGU9InRleHQiIHZhbHVlPSJmb28iIGF1dG9mb2N1cz4KKworPHNjcmlwdD4KKworZGVz
Y3JpcHRpb24oIlRlc3QgZm9yICZsdDtpbnB1dCBhdXRvZm9jdXMmZ3Q7Iik7CisKK2pzVGVzdElz
QXN5bmMgPSB0cnVlOworCitpbnB1dEZvY3VzQ291bnQgPSAwOworaW5wdXQuYWRkRXZlbnRMaXN0
ZW5lcigiZm9jdXMiLCAoZXZlbnQpID0+IHsKKyAgICArK2lucHV0Rm9jdXNDb3VudDsKK30pOwor
CityZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4geworICAgIHNob3VsZEJlKCJpbnB1dEZvY3Vz
Q291bnQiLCAiMSIpOworICAgIHNob3VsZEJlKCJpbnB1dC5zZWxlY3Rpb25TdGFydCIsICIwIik7
CisgICAgc2hvdWxkQmUoImlucHV0LnNlbGVjdGlvbkVuZCIsICIwIik7CisKKyAgICBmaW5pc2hK
U1Rlc3QoKTsKK30pOworCis8L3NjcmlwdD4KKworPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413442</attachid>
            <date>2020-11-06 10:11:04 -0800</date>
            <delta_ts>2020-11-06 14:23:06 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218585-20201106101103.patch</filename>
            <type>text/plain</type>
            <size>20509</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAzNzAwN2E1YzM3ZDBkZTVhOTAxZjU1ZDIxNjliYWM5YmU2ZTc4Y2I3Li42
MDdhMDZlYTk1NzNmNDA4MjI5MmZjM2E4MTVlMDQ5ZWI1NjFlMmM2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsNTAgQEAKKzIwMjAtMTEtMDYgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIGF1dG9mb2N1cyBvZiB0ZXh0IGlucHV0IHNob3VsZCBub3Qgc2VsZWN0IHRl
eHQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODU4
NQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjAxMzA3MDQ+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGVzdDogZmFzdC9mb3Jtcy9pbnB1dC10ZXh0
LWF1dG9mb2N1cy5odG1sCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuaDoKKyAgICAgICAgKiBw
YWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmRp
c3BhdGNoTW91c2VFdmVudCk6CisgICAgICAgICogcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNJbkRvY3VtZW50
T3JkZXIpOgorICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNE
aXJlY3Rpb25hbGx5SW5Db250YWluZXIpOgorICAgICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVu
dC5oOgorICAgICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MSW5wdXRFbGVtZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2UpOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6c2V0RGVmYXVsdFNlbGVjdGlvbkFmdGVyRm9jdXMp
OgorICAgICAgICAqIGh0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2UpOgorICAgICAg
ICAqIGh0bWwvSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklucHV0VHlwZTo6YWNj
ZXNzS2V5QWN0aW9uKToKKyAgICAgICAgU2xpZ2h0bHkgcmV3b3JrIGBTZWxlY3Rpb25SZXN0b3Jh
dGlvbk1vZGVgIHRvIHJlcGxhY2UgYFNldERlZmF1bHRgIHdpdGggdHdvIG5ldyB2YWx1ZXM6Cisg
ICAgICAgICAtIGBQbGFjZUN1cnNvckF0U3RhcnRgIHB1dHMgdGhlIGN1cnNvciBhdCB0aGUgc3Rh
cnQsIHJlZ2FyZGxlc3Mgb2YgYW55IGNhY2hlZCBzZWxlY3Rpb24KKyAgICAgICAgIC0gYFNlbGVj
dEFsbGAgc2VsZWN0cyBhbGwgdGV4dCwgcmVnYXJkbGVzcyBvZiBhbnkgY2FjaGVkIHNlbGVjdGlv
biAoZXhpc3RpbmcgYmVoYXZpb3IpCisgICAgICAgIEluIG9yZGVyIHRvIHByZXNlcnZlIGV4aXN0
aW5nIGJlaGF2aW9yLCB0aGUgZGVmYXVsdCBgUmVzdG9yZWAgd2lsbCBoYXZlIHRoZSBzYW1lIGVm
ZmVjdCBhcworICAgICAgICBgU2VsZWN0QWxsYCBpZiB0aGVyZSBpcyBubyBjYWNoZWQgc2VsZWN0
aW9uLgorCisgICAgICAgICogaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OmRpZEF0dGFjaFJlbmRlcmVycyk6
CisgICAgICAgIENoYW5nZSB0byBgUGxhY2VDdXJzb3JBdFN0YXJ0YCB0byBtYXRjaCBvdGhlciBi
cm93c2Vycy4KKworICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgICogZG9tL0VsZW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6Zm9jdXMpOgorICAgICAgICAqIGh0
bWwvSFRNTExhYmVsRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTExhYmVsRWxlbWVudC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTGFiZWxFbGVtZW50Ojpmb2N1cyk6CisgICAgICAg
ICogaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTExlZ2VuZEVs
ZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExlZ2VuZEVsZW1lbnQ6OmZvY3VzKToK
KyAgICAgICAgUmVwbGFjZSB0aGUgYGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uYCB3aXRo
IGBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGVgIHNpbmNlIHRoYXQncworICAgICAgICB3aGF0IGl0
J3MgZXZlbnR1YWxseSB1c2VkIGZvciBhbnl3YXlzLiBUaGlzIGFsc28gYWxsb3dzIGZvciBtb3Jl
IGZsZXhpYmlsaXR5IGluIGJlaGF2aW9yLAorICAgICAgICBzdWNoIGFzIGNhbGxlcnMgdXNpbmcg
dGhlIG5ldyBgU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlYCB2YWx1ZXMuCisKIDIwMjAtMTEtMDUg
IFNhaWQgQWJvdS1IYWxsYXdhICA8c2FpZEBhcHBsZS5jb20+CiAKICAgICAgICAgW0dQVSBQcm9j
ZXNzXSBVc2UgdGhlIFJlZiBjb3VudGluZyBvZiBJbWFnZUJ1ZmZlciB0byBjb250cm9sIGl0cyBs
aWZlIGN5Y2xlIGluIFdlYiBQcm9jZXNzIGFuZCBHUFUgUHJvY2VzcwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
aAppbmRleCBkNzQ1YTJmNjViZmJmMGNlZGYwODQ1OGU4MDBkYWMzMzZmNTJmZmUwLi4wNWRiMGI3
YzBjZjhkZjI1ZDI5Yjk5MGM1MjcxZmZmZjZkZjhhMWM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vRG9jdW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApA
QCAtMjg4LDcgKzI4OCwxMSBAQCBlbnVtIGNsYXNzIERvY3VtZW50Q29tcGF0aWJpbGl0eU1vZGUg
OiB1bnNpZ25lZCBjaGFyIHsKIAogZW51bSBEaW1lbnNpb25zQ2hlY2sgeyBXaWR0aERpbWVuc2lv
bnNDaGVjayA9IDEgPDwgMCwgSGVpZ2h0RGltZW5zaW9uc0NoZWNrID0gMSA8PCAxLCBBbGxEaW1l
bnNpb25zQ2hlY2sgPSAxIDw8IDIgfTsKIAotZW51bSBjbGFzcyBTZWxlY3Rpb25SZXN0b3JhdGlv
bk1vZGUgeyBSZXN0b3JlLCBTZXREZWZhdWx0IH07CitlbnVtIGNsYXNzIFNlbGVjdGlvblJlc3Rv
cmF0aW9uTW9kZSA6IHVpbnQ4X3QgeworICAgIFJlc3RvcmUsIC8vIElmIHRoZXJlIGlzIG5vIHBy
ZXZpb3VzIHNlbGVjdGlvbiwgdGhpcyBiZWhhdmVzIGxpa2UgU2VsZWN0QWxsLgorICAgIFBsYWNl
Q3Vyc29yQXRTdGFydCwKKyAgICBTZWxlY3RBbGwsCit9OwogCiBlbnVtIGNsYXNzIEh0dHBFcXVp
dlBvbGljeSB7CiAgICAgRW5hYmxlZCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9F
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcAppbmRleCA4ZDY3Mjc1
OTJhMTU5NDYyMDlhYWQ4ZTRmNjM2ODA4YWRkNmRkMWViLi5mNzdlNTY2MGM5ODlhNjUxYzdhOTEz
ODQ4OGE3MWUyMmJhOTcxMzQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCkBAIC0yOTkzLDcgKzI5
OTMsNyBAQCBzdGF0aWMgUmVmUHRyPEVsZW1lbnQ+IGZpbmRGaXJzdFByb2dyYW1hdGljYWxseUZv
Y3VzYWJsZUVsZW1lbnRJbkNvbXBvc2VkVHJlZShFbAogICAgIHJldHVybiBudWxscHRyOwogfQog
Ci12b2lkIEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1
c0RpcmVjdGlvbiBkaXJlY3Rpb24pCit2b2lkIEVsZW1lbnQ6OmZvY3VzKFNlbGVjdGlvblJlc3Rv
cmF0aW9uTW9kZSByZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKIHsK
ICAgICBpZiAoIWlzQ29ubmVjdGVkKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTMwNDEsNyArMzA0
MSw3IEBAIHZvaWQgRWxlbWVudDo6Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24s
IEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAK
LSAgICBuZXdUYXJnZXQtPnJldmVhbEZvY3VzZWRFbGVtZW50KHJlc3RvcmVQcmV2aW91c1NlbGVj
dGlvbiA/IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UmVzdG9yZSA6IFNlbGVjdGlvblJlc3Rv
cmF0aW9uTW9kZTo6U2V0RGVmYXVsdCk7CisgICAgbmV3VGFyZ2V0LT5yZXZlYWxGb2N1c2VkRWxl
bWVudChyZXN0b3JhdGlvbk1vZGUpOwogfQogCiB2b2lkIEVsZW1lbnQ6OnJldmVhbEZvY3VzZWRF
bGVtZW50KFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSBzZWxlY3Rpb25Nb2RlKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVt
ZW50LmgKaW5kZXggMTk3NDI5OTA1MDM4NDcxMjAzNDc1MWU4MGVlY2U5YzZhOGU2MGMyMS4uYTc0
MjZjNDc3YmE1OGM0YWQ0MThhMTBhNDBjZTY4NDNiMmZlOTI2OSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvZG9tL0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5o
CkBAIC00MDAsNyArNDAwLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgU3RyaW5nIHRhcmdldCgp
IGNvbnN0IHsgcmV0dXJuIFN0cmluZygpOyB9CiAKICAgICBzdGF0aWMgQVhUZXh0U3RhdGVDaGFu
Z2VJbnRlbnQgZGVmYXVsdEZvY3VzVGV4dFN0YXRlQ2hhbmdlSW50ZW50KCkgeyByZXR1cm4gQVhU
ZXh0U3RhdGVDaGFuZ2VJbnRlbnQoQVhUZXh0U3RhdGVDaGFuZ2VUeXBlU2VsZWN0aW9uTW92ZSwg
QVhUZXh0U2VsZWN0aW9uIHsgQVhUZXh0U2VsZWN0aW9uRGlyZWN0aW9uRGlzY29udGlndW91cywg
QVhUZXh0U2VsZWN0aW9uR3JhbnVsYXJpdHlVbmtub3duLCB0cnVlIH0pOyB9Ci0gICAgdmlydHVh
bCB2b2lkIGZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uID0gdHJ1ZSwgRm9jdXNE
aXJlY3Rpb24gPSBGb2N1c0RpcmVjdGlvbjo6Tm9uZSk7CisgICAgdmlydHVhbCB2b2lkIGZvY3Vz
KFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSA9IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UmVz
dG9yZSwgRm9jdXNEaXJlY3Rpb24gPSBGb2N1c0RpcmVjdGlvbjo6Tm9uZSk7CiAgICAgdm9pZCBy
ZXZlYWxGb2N1c2VkRWxlbWVudChTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUpOwogICAgIHZpcnR1
YWwgUmVmUHRyPEVsZW1lbnQ+IGZvY3VzQXBwZWFyYW5jZVVwZGF0ZVRhcmdldCgpOwogICAgIHZp
cnR1YWwgdm9pZCB1cGRhdGVGb2N1c0FwcGVhcmFuY2UoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2Rl
LCBTZWxlY3Rpb25SZXZlYWxNb2RlID0gU2VsZWN0aW9uUmV2ZWFsTW9kZTo6UmV2ZWFsKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwCmluZGV4IDM5
N2Y3NjU4ODEyZDZiOWQzNjVjNzE4NTg5N2YxZjUxMTYyMzE2YmMuLmMzYjRlMGE2ZTVjOTYwMzVl
YjEzYWM1ZWQxNWQzMWE3MWE4Y2YwOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
Rm9ybUNvbnRyb2xFbGVtZW50LmNwcApAQCAtMjU0LDExICsyNTQsMTEgQEAgdm9pZCBIVE1MRm9y
bUNvbnRyb2xFbGVtZW50OjpkaWRBdHRhY2hSZW5kZXJlcnMoKQogICAgICAgICBhdXRvIGZyYW1l
VmlldyA9IG1ha2VSZWZQdHIoZG9jdW1lbnQoKS52aWV3KCkpOwogICAgICAgICBpZiAoZnJhbWVW
aWV3ICYmIGZyYW1lVmlldy0+bGF5b3V0Q29udGV4dCgpLmlzSW5MYXlvdXQoKSkgewogICAgICAg
ICAgICAgZnJhbWVWaWV3LT5xdWV1ZVBvc3RMYXlvdXRDYWxsYmFjayhbZWxlbWVudF0gewotICAg
ICAgICAgICAgICAgIGVsZW1lbnQtPmZvY3VzKCk7CisgICAgICAgICAgICAgICAgZWxlbWVudC0+
Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpQbGFjZUN1cnNvckF0U3RhcnQpOwogICAg
ICAgICAgICAgfSk7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBTdHlsZTo6cXVldWVQ
b3N0UmVzb2x1dGlvbkNhbGxiYWNrKFtlbGVtZW50XSB7Ci0gICAgICAgICAgICAgICAgZWxlbWVu
dC0+Zm9jdXMoKTsKKyAgICAgICAgICAgICAgICBlbGVtZW50LT5mb2N1cyhTZWxlY3Rpb25SZXN0
b3JhdGlvbk1vZGU6OlBsYWNlQ3Vyc29yQXRTdGFydCk7CiAgICAgICAgICAgICB9KTsKICAgICAg
ICAgfQogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxl
bWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmluZGV4
IDk5M2YzOTU0MzliMmE4ZTY5ZDk2ZDU4ZDE5OTE3ODMzYTcyMDkzZWMuLjEwMDNmOGRmYTg0Yjdk
MjIyMDdmN2QzYmRiYzY1ZjI0MGY4M2EzYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTElucHV0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5w
dXRFbGVtZW50LmNwcApAQCAtNDc2LDE1ICs0NzYsMTUgQEAgYm9vbCBIVE1MSW5wdXRFbGVtZW50
Ojppc1RleHRGb3JtQ29udHJvbE1vdXNlRm9jdXNhYmxlKCkgY29uc3QKIHZvaWQgSFRNTElucHV0
RWxlbWVudDo6dXBkYXRlRm9jdXNBcHBlYXJhbmNlKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSBy
ZXN0b3JhdGlvbk1vZGUsIFNlbGVjdGlvblJldmVhbE1vZGUgcmV2ZWFsTW9kZSkKIHsKICAgICBp
ZiAoaXNUZXh0RmllbGQoKSkgewotICAgICAgICBpZiAocmVzdG9yYXRpb25Nb2RlID09IFNlbGVj
dGlvblJlc3RvcmF0aW9uTW9kZTo6U2V0RGVmYXVsdCB8fCAhaGFzQ2FjaGVkU2VsZWN0aW9uKCkp
Ci0gICAgICAgICAgICBzZXREZWZhdWx0U2VsZWN0aW9uQWZ0ZXJGb2N1cyhyZXZlYWxNb2RlKTsK
LSAgICAgICAgZWxzZQorICAgICAgICBpZiAocmVzdG9yYXRpb25Nb2RlID09IFNlbGVjdGlvblJl
c3RvcmF0aW9uTW9kZTo6UmVzdG9yZSAmJiBoYXNDYWNoZWRTZWxlY3Rpb24oKSkKICAgICAgICAg
ICAgIHJlc3RvcmVDYWNoZWRTZWxlY3Rpb24ocmV2ZWFsTW9kZSk7CisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIHNldERlZmF1bHRTZWxlY3Rpb25BZnRlckZvY3VzKHJlc3RvcmF0aW9uTW9kZSwg
cmV2ZWFsTW9kZSk7CiAgICAgfSBlbHNlCiAgICAgICAgIEhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVt
ZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2UocmVzdG9yYXRpb25Nb2RlLCByZXZlYWxNb2RlKTsK
IH0KIAotdm9pZCBIVE1MSW5wdXRFbGVtZW50OjpzZXREZWZhdWx0U2VsZWN0aW9uQWZ0ZXJGb2N1
cyhTZWxlY3Rpb25SZXZlYWxNb2RlIHJldmVhbE1vZGUpCit2b2lkIEhUTUxJbnB1dEVsZW1lbnQ6
OnNldERlZmF1bHRTZWxlY3Rpb25BZnRlckZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSBy
ZXN0b3JhdGlvbk1vZGUsIFNlbGVjdGlvblJldmVhbE1vZGUgcmV2ZWFsTW9kZSkKIHsKICAgICBB
U1NFUlQoaXNUZXh0RmllbGQoKSk7CiAgICAgaW50IHN0YXJ0ID0gMDsKQEAgLTQ5NCw3ICs0OTQs
OSBAQCB2b2lkIEhUTUxJbnB1dEVsZW1lbnQ6OnNldERlZmF1bHRTZWxlY3Rpb25BZnRlckZvY3Vz
KFNlbGVjdGlvblJldmVhbE1vZGUgcmV2ZWFsTQogICAgICAgICBzdGFydCA9IHN0ZDo6bnVtZXJp
Y19saW1pdHM8aW50Pjo6bWF4KCk7CiAgICAgICAgIGRpcmVjdGlvbiA9IFNlbGVjdGlvbkhhc0Zv
cndhcmREaXJlY3Rpb247CiAgICAgfQotICAgIHNldFNlbGVjdGlvblJhbmdlKHN0YXJ0LCBzdGQ6
Om51bWVyaWNfbGltaXRzPGludD46Om1heCgpLCBkaXJlY3Rpb24sIHJldmVhbE1vZGUsIEVsZW1l
bnQ6OmRlZmF1bHRGb2N1c1RleHRTdGF0ZUNoYW5nZUludGVudCgpKTsKKyAgICAvLyBEZWZhdWx0
IHRvIGBTZWxlY3RBbGxgIHRvIHByZXNlcnZlIGV4aXN0aW5nIGJlaGF2aW9yLgorICAgIGludCBl
bmQgPSByZXN0b3JhdGlvbk1vZGUgPT0gU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpQbGFjZUN1
cnNvckF0U3RhcnQgPyBzdGFydCA6IHN0ZDo6bnVtZXJpY19saW1pdHM8aW50Pjo6bWF4KCk7Cisg
ICAgc2V0U2VsZWN0aW9uUmFuZ2Uoc3RhcnQsIGVuZCwgZGlyZWN0aW9uLCByZXZlYWxNb2RlLCBF
bGVtZW50OjpkZWZhdWx0Rm9jdXNUZXh0U3RhdGVDaGFuZ2VJbnRlbnQoKSk7CiB9CiAKIHZvaWQg
SFRNTElucHV0RWxlbWVudDo6ZW5kRWRpdGluZygpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0
RWxlbWVudC5oCmluZGV4IGZiOGM4NWQ5MmQ4YWQzZTA5NTMzNWM2YzgzZTk2OTY4MTgyYWVjOGEu
LjhiZjllNzI1ZTNmODVmODgzMTI3YTNlZTA2NmM1MzZkNTU1ZWJhOTIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTElucHV0RWxlbWVudC5oCkBAIC00NTUsNyArNDU1LDcgQEAgcHJpdmF0ZToKICAg
ICB2b2lkIGFkZFRvUmFkaW9CdXR0b25Hcm91cCgpOwogICAgIHZvaWQgcmVtb3ZlRnJvbVJhZGlv
QnV0dG9uR3JvdXAoKTsKIAotICAgIHZvaWQgc2V0RGVmYXVsdFNlbGVjdGlvbkFmdGVyRm9jdXMo
U2VsZWN0aW9uUmV2ZWFsTW9kZSk7CisgICAgdm9pZCBzZXREZWZhdWx0U2VsZWN0aW9uQWZ0ZXJG
b2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUsIFNlbGVjdGlvblJldmVhbE1vZGUpOwogCiAg
ICAgQXRvbVN0cmluZyBtX25hbWU7CiAgICAgU3RyaW5nIG1fdmFsdWVJZkRpcnR5OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5jcHAKaW5kZXggMzdmOWNhNTZlODBkNzMyNDEw
M2IxYTEyNmZjMjJjNjY1YTA4YWQzYy4uZjVlZjhiODM1YzBlMzlmYzAxNTA5ZTk4ODZiYzM4YzVl
NjhmMjIxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCkBAIC0x
NzIsMjEgKzE3MiwyMSBAQCBib29sIEhUTUxMYWJlbEVsZW1lbnQ6OndpbGxSZXNwb25kVG9Nb3Vz
ZUNsaWNrRXZlbnRzKCkKICAgICByZXR1cm4gKGVsZW1lbnQgJiYgZWxlbWVudC0+d2lsbFJlc3Bv
bmRUb01vdXNlQ2xpY2tFdmVudHMoKSkgfHwgSFRNTEVsZW1lbnQ6OndpbGxSZXNwb25kVG9Nb3Vz
ZUNsaWNrRXZlbnRzKCk7CiB9CiAKLXZvaWQgSFRNTExhYmVsRWxlbWVudDo6Zm9jdXMoYm9vbCBy
ZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKK3ZvaWQg
SFRNTExhYmVsRWxlbWVudDo6Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlIHJlc3RvcmF0
aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQogewogICAgIFJlZjxIVE1MTGFiZWxF
bGVtZW50PiBwcm90ZWN0ZWRUaGlzKCp0aGlzKTsKICAgICBpZiAoZG9jdW1lbnQoKS5oYXZlU3R5
bGVzaGVldHNMb2FkZWQoKSkgewogICAgICAgICBkb2N1bWVudCgpLnVwZGF0ZUxheW91dCgpOwog
ICAgICAgICBpZiAoaXNGb2N1c2FibGUoKSkgewotICAgICAgICAgICAgLy8gVGhlIHZhbHVlIG9m
IHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiBpcyBub3QgdXNlZCBmb3IgbGFiZWwgZWxlbWVudHMg
YXMgaXQgZG9lc24ndCBvdmVycmlkZSB1cGRhdGVGb2N1c0FwcGVhcmFuY2UuCi0gICAgICAgICAg
ICBFbGVtZW50Ojpmb2N1cyhyZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIGRpcmVjdGlvbik7Cisg
ICAgICAgICAgICAvLyBUaGUgdmFsdWUgb2YgcmVzdG9yYXRpb25Nb2RlIGlzIG5vdCB1c2VkIGZv
ciBsYWJlbCBlbGVtZW50cyBhcyBpdCBkb2Vzbid0IG92ZXJyaWRlIHVwZGF0ZUZvY3VzQXBwZWFy
YW5jZS4KKyAgICAgICAgICAgIEVsZW1lbnQ6OmZvY3VzKHJlc3RvcmF0aW9uTW9kZSwgZGlyZWN0
aW9uKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogICAgIH0KIAogICAgIC8vIFRv
IG1hdGNoIG90aGVyIGJyb3dzZXJzLCBhbHdheXMgcmVzdG9yZSBwcmV2aW91cyBzZWxlY3Rpb24u
CiAgICAgaWYgKGF1dG8gZWxlbWVudCA9IGNvbnRyb2woKSkKLSAgICAgICAgZWxlbWVudC0+Zm9j
dXModHJ1ZSwgZGlyZWN0aW9uKTsKKyAgICAgICAgZWxlbWVudC0+Zm9jdXMoU2VsZWN0aW9uUmVz
dG9yYXRpb25Nb2RlOjpSZXN0b3JlLCBkaXJlY3Rpb24pOwogfQogCiBib29sIEhUTUxMYWJlbEVs
ZW1lbnQ6OmFjY2Vzc0tleUFjdGlvbihib29sIHNlbmRNb3VzZUV2ZW50cykKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTGFiZWxFbGVtZW50LmgKaW5kZXggNDY2MGYwNjc3NzM1MWNlNmRjODk1YzgxYmIw
NzI0N2M5YzQzMjBlZS4uODBlMTVjMjI1NzlkZGI4NjVmZGMxMTc2MDU4YmZmMmUzM2JmZGY5YSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGFiZWxFbGVtZW50LmgKQEAgLTUxLDcgKzUxLDcgQEAg
cHJpdmF0ZToKICAgICAvLyBPdmVycmlkZGVuIHRvIGVpdGhlciBjbGljaygpIG9yIGZvY3VzKCkg
dGhlIGNvcnJlc3BvbmRpbmcgY29udHJvbC4KICAgICB2b2lkIGRlZmF1bHRFdmVudEhhbmRsZXIo
RXZlbnQmKSBmaW5hbDsKIAotICAgIHZvaWQgZm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxl
Y3Rpb24sIEZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGZvY3VzKFNlbGVjdGlvblJl
c3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24pIGZpbmFsOwogCiAgICAgYm9vbCBpc0ludGVy
YWN0aXZlQ29udGVudCgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KIH07CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwCmluZGV4IGExZTU3Y2ZlNGQwYjFmMjA4
MDA3MWY0NzJkNDQ5ZjZiNjA4YTIyNzYuLmVkMGE0MDExY2E3NDU2YzRlMjQxZTEwYzVhNmRjMDI3
MzE3ZDY4MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1l
bnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQuY3BwCkBA
IC01NywxOSArNTcsMTkgQEAgUmVmUHRyPEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ+IEhUTUxMZWdl
bmRFbGVtZW50Ojphc3NvY2lhdGVkQ29udHJvbCgpCiAgICAgcmV0dXJuIGRlc2NlbmRhbnRzT2ZU
eXBlPEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ+KCplbmNsb3NpbmdGaWVsZHNldCkuZmlyc3QoKTsK
IH0KIAotdm9pZCBIVE1MTGVnZW5kRWxlbWVudDo6Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNT
ZWxlY3Rpb24sIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKK3ZvaWQgSFRNTExlZ2VuZEVsZW1l
bnQ6OmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSByZXN0b3JhdGlvbk1vZGUsIEZvY3Vz
RGlyZWN0aW9uIGRpcmVjdGlvbikKIHsKICAgICBpZiAoZG9jdW1lbnQoKS5oYXZlU3R5bGVzaGVl
dHNMb2FkZWQoKSkgewogICAgICAgICBkb2N1bWVudCgpLnVwZGF0ZUxheW91dElnbm9yZVBlbmRp
bmdTdHlsZXNoZWV0cygpOwogICAgICAgICBpZiAoaXNGb2N1c2FibGUoKSkgewotICAgICAgICAg
ICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBkaXJlY3Rpb24pOwor
ICAgICAgICAgICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yYXRpb25Nb2RlLCBkaXJlY3Rpb24pOwog
ICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgfQogCiAgICAgLy8gVG8gbWF0Y2gg
b3RoZXIgYnJvd3NlcnMnIGJlaGF2aW9yLCBuZXZlciByZXN0b3JlIHByZXZpb3VzIHNlbGVjdGlv
bi4KICAgICBpZiAoYXV0byBjb250cm9sID0gYXNzb2NpYXRlZENvbnRyb2woKSkKLSAgICAgICAg
Y29udHJvbC0+Zm9jdXMoZmFsc2UsIGRpcmVjdGlvbik7CisgICAgICAgIGNvbnRyb2wtPmZvY3Vz
KFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxsLCBkaXJlY3Rpb24pOwogfQogCiBi
b29sIEhUTUxMZWdlbmRFbGVtZW50OjphY2Nlc3NLZXlBY3Rpb24oYm9vbCBzZW5kTW91c2VFdmVu
dHMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmgKaW5kZXggMmRmNjIyOTcx
ZjEzNzkyMmRjMzhjODg1NDkyZDJmMzg1NDZmMmExYS4uN2RjYjFiODUwYTI3ZTNiN2FjYjgwMjg3
YzU3NGY4MzAyZmNhNjAyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVn
ZW5kRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVsZW1lbnQu
aApAQCAtNDMsNyArNDMsNyBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxIVE1MRm9ybUNvbnRyb2xF
bGVtZW50PiBhc3NvY2lhdGVkQ29udHJvbCgpOwogCiAgICAgYm9vbCBhY2Nlc3NLZXlBY3Rpb24o
Ym9vbCBzZW5kTW91c2VFdmVudHMpIGZpbmFsOwotICAgIHZvaWQgZm9jdXMoYm9vbCByZXN0b3Jl
UHJldmlvdXNTZWxlY3Rpb24sIEZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKKyAgICB2b2lkIGZvY3Vz
KFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSwgRm9jdXNEaXJlY3Rpb24pIGZpbmFsOwogfTsKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MVGV4dEFyZWFFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVh
RWxlbWVudC5jcHAKaW5kZXggODgxNjg1OTQ2MTg0ZTdjNGE5NzY2ZWFhZTNiNTFjZDk5MDJkNGE1
Yi4uMDQyOTYzMWRmYTEzMmVhODhmZjZjM2EwYzE4YjFiZTcyNjQ5OWU1ZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuY3BwCkBAIC0yNjgsMTMgKzI2OCwxNCBA
QCBib29sIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OmlzTW91c2VGb2N1c2FibGUoKSBjb25zdAogCiB2
b2lkIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OnVwZGF0ZUZvY3VzQXBwZWFyYW5jZShTZWxlY3Rpb25S
ZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBTZWxlY3Rpb25SZXZlYWxNb2RlIHJldmVh
bE1vZGUpCiB7Ci0gICAgaWYgKHJlc3RvcmF0aW9uTW9kZSA9PSBTZWxlY3Rpb25SZXN0b3JhdGlv
bk1vZGU6OlNldERlZmF1bHQgfHwgIWhhc0NhY2hlZFNlbGVjdGlvbigpKSB7CisgICAgaWYgKHJl
c3RvcmF0aW9uTW9kZSA9PSBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmUgJiYgaGFz
Q2FjaGVkU2VsZWN0aW9uKCkpCisgICAgICAgIHJlc3RvcmVDYWNoZWRTZWxlY3Rpb24ocmV2ZWFs
TW9kZSwgRWxlbWVudDo6ZGVmYXVsdEZvY3VzVGV4dFN0YXRlQ2hhbmdlSW50ZW50KCkpOworICAg
IGVsc2UgewogICAgICAgICAvLyBJZiB0aGlzIGlzIHRoZSBmaXJzdCBmb2N1cywgc2V0IGEgY2Fy
ZXQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgdGV4dC4gIAogICAgICAgICAvLyBUaGlzIG1hdGNo
ZXMgc29tZSBicm93c2VycycgYmVoYXZpb3I7IHNlZSBidWcgMTE3NDYgQ29tbWVudCAjMTUuCiAg
ICAgICAgIC8vIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNzQ2I2Mx
NQogICAgICAgICBzZXRTZWxlY3Rpb25SYW5nZSgwLCAwLCBTZWxlY3Rpb25IYXNOb0RpcmVjdGlv
biwgcmV2ZWFsTW9kZSwgRWxlbWVudDo6ZGVmYXVsdEZvY3VzVGV4dFN0YXRlQ2hhbmdlSW50ZW50
KCkpOwotICAgIH0gZWxzZQotICAgICAgICByZXN0b3JlQ2FjaGVkU2VsZWN0aW9uKHJldmVhbE1v
ZGUsIEVsZW1lbnQ6OmRlZmF1bHRGb2N1c1RleHRTdGF0ZUNoYW5nZUludGVudCgpKTsKKyAgICB9
CiB9CiAKIHZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVu
dCYgZXZlbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAKaW5kZXggMjcwNjE4YmE5ZTU1ZjZj
YjIzNzc1MjUxNDc5Y2RiMTYzNTlhODFmZi4uOGVkNTBjOGRmYzU4NzhmNDYwZjI4MTdhYjUwNmRi
MDdhODVjYmJlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmNwcApAQCAtNTgyLDcgKzU4Miw3
IEBAIHZvaWQgSW5wdXRUeXBlOjpoYW5kbGVCbHVyRXZlbnQoKQogYm9vbCBJbnB1dFR5cGU6OmFj
Y2Vzc0tleUFjdGlvbihib29sKQogewogICAgIEFTU0VSVChlbGVtZW50KCkpOwotICAgIGVsZW1l
bnQoKS0+Zm9jdXMoZmFsc2UpOworICAgIGVsZW1lbnQoKS0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9y
YXRpb25Nb2RlOjpTZWxlY3RBbGwpOwogICAgIHJldHVybiBmYWxzZTsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9FdmVudEhhbmRsZXIuY3BwCmluZGV4IDkyMDdiZjdhZWJjODNmNzg2MzkzNTgxNDI3NDBj
YmZmNWY2MjZhZDcuLmM5NGYyNjNjZDA1NGIzOWQxMmYzNzJhN2EyN2JiMzgwNTQ1OWZiOWYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKQEAgLTI3NTMsNyArMjc1Myw3IEBAIGJv
b2wgRXZlbnRIYW5kbGVyOjpkaXNwYXRjaE1vdXNlRXZlbnQoY29uc3QgQXRvbVN0cmluZyYgZXZl
bnRUeXBlLCBOb2RlKiB0YXJnZXROCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIGlmIChl
bGVtZW50ICYmIG1fbW91c2VEb3duRGVsZWdhdGVkRm9jdXMpCi0gICAgICAgIGVsZW1lbnQtPnJl
dmVhbEZvY3VzZWRFbGVtZW50KFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2V0RGVmYXVsdCk7
CisgICAgICAgIGVsZW1lbnQtPnJldmVhbEZvY3VzZWRFbGVtZW50KFNlbGVjdGlvblJlc3RvcmF0
aW9uTW9kZTo6U2VsZWN0QWxsKTsKIAogICAgIHJldHVybiB0cnVlOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCmluZGV4IDI2NmYzMTVlNDBkZDQ2NWI0ODYxNGE4OTY4
OTBiNjc4YjU2ZGViODUuLjA3YWJhZDA2MGUwMTNlYjhiN2FjNTYwMGRkNDQxOTZkMmIxYWE5ZmEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKQEAgLTUzMyw3ICs1MzMs
NyBAQCBib29sIEZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKEZv
Y3VzRGlyZWN0aW9uIGRpcmVjdGlvbiwgS2V5YgogICAgICAgICB9CiAgICAgfQogCi0gICAgZWxl
bWVudC0+Zm9jdXMoZmFsc2UsIGRpcmVjdGlvbik7CisgICAgZWxlbWVudC0+Zm9jdXMoU2VsZWN0
aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwsIGRpcmVjdGlvbik7CiAgICAgcmV0dXJuIHRy
dWU7CiB9CiAKQEAgLTExMDcsNyArMTEwNyw3IEBAIGJvb2wgRm9jdXNDb250cm9sbGVyOjphZHZh
bmNlRm9jdXNEaXJlY3Rpb25hbGx5SW5Db250YWluZXIoTm9kZSogY29udGFpbmVyLCBjb25zCiAg
ICAgRWxlbWVudCogZWxlbWVudCA9IGRvd25jYXN0PEVsZW1lbnQ+KGZvY3VzQ2FuZGlkYXRlLmZv
Y3VzYWJsZU5vZGUpOwogICAgIEFTU0VSVChlbGVtZW50KTsKIAotICAgIGVsZW1lbnQtPmZvY3Vz
KGZhbHNlLCBkaXJlY3Rpb24pOworICAgIGVsZW1lbnQtPmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0
aW9uTW9kZTo6U2VsZWN0QWxsLCBkaXJlY3Rpb24pOwogICAgIHJldHVybiB0cnVlOwogfQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggZGU5ZjNhN2NlYzc4MGUyNmVjNDQzN2Y0YmZlMTkwNDUxOWFkNWI5Yy4uMzgxMmFiM2Vm
MzAzNmNjOGZjZDM1NGY0ZDM5MzFkNDExNGE0NDU0ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisy
MDIwLTExLTA2ICBEZXZpbiBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBh
dXRvZm9jdXMgb2YgdGV4dCBpbnB1dCBzaG91bGQgbm90IHNlbGVjdCB0ZXh0CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTg1ODUKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzYwMTMwNzA0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogZmFzdC9mb3Jtcy9pbnB1dC10ZXh0LWF1dG9mb2N1cy5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1zL2lucHV0LXRleHQtYXV0b2ZvY3VzLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vaW9zL2Zhc3QvZm9ybXMvaW5wdXQtdGV4
dC1hdXRvZm9jdXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKworICAgICAgICAqIGZhc3QvZm9ybXMv
aW5wdXQtZmlyc3QtbGV0dGVyLWVkaXQuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Zvcm1zL2lucHV0
LWZpcnN0LWxldHRlci1lZGl0LWV4cGVjdGVkLmh0bWw6CisKIDIwMjAtMTEtMDUgIEFsZXggQ2hy
aXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBBbGlnbiBHQksg
YW5kIGdiMTgwMzAgZW5jb2RlciBhbmQgZGVjb2RlciB3aXRoIHNwZWNpZmljYXRpb24gYW5kIG90
aGVyIGJyb3dzZXJzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lucHV0LWZp
cnN0LWxldHRlci1lZGl0LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lu
cHV0LWZpcnN0LWxldHRlci1lZGl0LWV4cGVjdGVkLmh0bWwKaW5kZXggYWM1ZWE3ZWJlMWRhNTkw
YTY0MTM2MzM5OTUxMjVjMDZmZGUxNDJmNS4uYmZjNjk1OGYzOTE2ZTJkMDQ2NDhmYTgzNGNmMDE2
MWU2N2ZlYjc4YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pbnB1dC1maXJz
dC1sZXR0ZXItZWRpdC1leHBlY3RlZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMv
aW5wdXQtZmlyc3QtbGV0dGVyLWVkaXQtZXhwZWN0ZWQuaHRtbApAQCAtMyw2ICszLDYgQEAKIDxo
ZWFkPgogPC9oZWFkPgogPGJvZHk+Ci0gICAgPGlucHV0IHR5cGU9InRleHQiIGlkPSJ0YXJnZXQi
IHZhbHVlPSJIZWxsbyIgYXV0b2ZvY3VzPSJhdXRvZm9jdXMiIC8+CisgICAgPGlucHV0IHR5cGU9
InRleHQiIGlkPSJ0YXJnZXQiIHZhbHVlPSJIZWxsbyIgLz4KIDwvYm9keT4KIDwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW5wdXQtZmlyc3QtbGV0dGVyLWVkaXQu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW5wdXQtZmlyc3QtbGV0dGVyLWVkaXQuaHRt
bAppbmRleCBiY2JjY2RkY2Q3ZjBkYjJjOWQzMDA4NTBkYmNiOGMxZjY4YTUzNTBiLi4xY2VjZGEy
OTE4MWJiM2Y2YWZiY2ZkMDU0YTgwNjA2NzcxMDI1M2ZmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L2Zvcm1zL2lucHV0LWZpcnN0LWxldHRlci1lZGl0Lmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9mb3Jtcy9pbnB1dC1maXJzdC1sZXR0ZXItZWRpdC5odG1sCkBAIC0xOSw3ICsxOSw3
IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICBldmVudFNlbmRlci5rZXlEb3duKCJsIik7CiAg
ICAgICAgIGV2ZW50U2VuZGVyLmtleURvd24oImwiKTsKICAgICAgICAgZXZlbnRTZW5kZXIua2V5
RG93bigibyIpOwotICAgICAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgic2VsZWN0QWxsIik7IC8v
IERvZXMgc2VsZWN0QWxsIGZvciBhbGlnbmluZyB0aGUgQGF1dG9mb2N1cyBhdHRyaWJ1dGUgb24g
dGhlIGV4cGVjdGF0aW9uLgorICAgICAgICB0YXJnZXQuYmx1cigpOwogICAgICAgICB0ZXN0UnVu
bmVyLm5vdGlmeURvbmUoKTsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2Zvcm1zL2lucHV0LXRleHQtYXV0b2ZvY3VzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvZm9ybXMvaW5wdXQtdGV4dC1hdXRvZm9jdXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRi
Y2Q3N2M0ZGQ0NzIzNmEzMWExYzJlOGE4YzgwODdiNWQxZWQzNmUKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lucHV0LXRleHQtYXV0b2ZvY3VzLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDkgQEAKK1Rlc3QgZm9yIDxpbnB1dCBhdXRvZm9jdXM+CisKK09uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIGlucHV0Rm9jdXNDb3VudCBpcyAxCitQQVNTIGlu
cHV0LnNlbGVjdGlvblN0YXJ0IGlzIDAKK1BBU1MgaW5wdXQuc2VsZWN0aW9uRW5kIGlzIDAKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pbnB1dC10ZXh0LWF1dG9mb2N1cy5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pbnB1dC10ZXh0LWF1dG9mb2N1cy5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmQzOGRjMjE3NDQzMzQyNjA2OGJhY2NjYjE0ZDk4MWNiNThmZjliY2IKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lucHV0LXRleHQtYXV0b2ZvY3Vz
Lmh0bWwKQEAgLTAsMCArMSwzNiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgor
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8L2hl
YWQ+Cis8Ym9keT4KKworPGlucHV0IGlkPSJpbnB1dCIgdHlwZT0idGV4dCIgdmFsdWU9ImZvbyIg
YXV0b2ZvY3VzPgorCis8c2NyaXB0PgorCitkZXNjcmlwdGlvbigiVGVzdCBmb3IgJmx0O2lucHV0
IGF1dG9mb2N1cyZndDsiKTsKKworanNUZXN0SXNBc3luYyA9IHRydWU7CisKK2lucHV0Rm9jdXND
b3VudCA9IDA7CitpbnB1dC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsIChldmVudCkgPT4gewor
ICAgICsraW5wdXRGb2N1c0NvdW50OworfSk7CisKK3JlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9
PiB7CisgICAgc2hvdWxkQmUoImlucHV0Rm9jdXNDb3VudCIsICIxIik7CisKKyAgICAvLyBpT1Mg
cGxhY2VzIHRoZSBjdXJzb3IgYXQgdGhlIGVuZCBvZiB0aGUgaW5wdXQgZmllbGQuCisgICAgc2hv
dWxkQmUoImlucHV0LnNlbGVjdGlvblN0YXJ0IiwgVUlIZWxwZXIuaXNJT1NGYW1pbHkoKSA/ICIz
IiA6ICIwIik7CisgICAgc2hvdWxkQmUoImlucHV0LnNlbGVjdGlvbkVuZCIsIFVJSGVscGVyLmlz
SU9TRmFtaWx5KCkgPyAiMyIgOiAiMCIpOworCisgICAgZmluaXNoSlNUZXN0KCk7Cit9KTsKKwor
PC9zY3JpcHQ+CisKKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL2lvcy9mYXN0L2Zvcm1zL2lucHV0LXRleHQtYXV0b2ZvY3VzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9mYXN0L2Zvcm1zL2lucHV0LXRleHQtYXV0
b2ZvY3VzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MDI2MDQ2ZTNkODgyNjA2OGE5ODBmZWM3
NTYwYjg0YjAwYzUwNjQ4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
aW9zL2Zhc3QvZm9ybXMvaW5wdXQtdGV4dC1hdXRvZm9jdXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsOSBAQAorVGVzdCBmb3IgPGlucHV0IGF1dG9mb2N1cz4KKworT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09N
UExFVEUiLgorCisKK1BBU1MgaW5wdXRGb2N1c0NvdW50IGlzIDEKK1BBU1MgaW5wdXQuc2VsZWN0
aW9uU3RhcnQgaXMgMworUEFTUyBpbnB1dC5zZWxlY3Rpb25FbmQgaXMgMworCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413483</attachid>
            <date>2020-11-06 14:23:08 -0800</date>
            <delta_ts>2020-11-09 11:08:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218585-20201106142307.patch</filename>
            <type>text/plain</type>
            <size>23563</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAzNzAwN2E1YzM3ZDBkZTVhOTAxZjU1ZDIxNjliYWM5YmU2ZTc4Y2I3Li5m
OTY2NmYwMDVhYzRhMTJhNDQzM2JmNDliNjQ1NmYxYjkyNGU0YmI4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsNTQgQEAKKzIwMjAtMTEtMDYgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIGF1dG9mb2N1cyBvZiB0ZXh0IGlucHV0IHNob3VsZCBub3Qgc2VsZWN0IHRl
eHQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODU4
NQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjAxMzA3MDQ+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgV2Vuc29uIEhzaWVoLgorCisgICAgICAgIFRlc3Q6IGZhc3QvZm9ybXMvaW5wdXQtdGV4dC1h
dXRvZm9jdXMuaHRtbAorCisgICAgICAgICogZG9tL0RvY3VtZW50Lmg6CisgICAgICAgICogaGlz
dG9yeS9DYWNoZWRQYWdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFBhZ2U6OnJlc3Rv
cmUpOgorICAgICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVudC5oOgorICAgICAgICAqIGh0bWwv
SFRNTElucHV0RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50
Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2UpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxl
bWVudDo6c2V0RGVmYXVsdFNlbGVjdGlvbkFmdGVyRm9jdXMpOgorICAgICAgICAoV2ViQ29yZTo6
SFRNTElucHV0RWxlbWVudDo6cnVuUG9zdFR5cGVVcGRhdGVUYXNrcyk6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MSW5wdXRFbGVtZW50OjpkaWRBdHRhY2hSZW5kZXJlcnMpOgorICAgICAgICAqIGh0
bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4dEFy
ZWFFbGVtZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2UpOgorICAgICAgICAqIGh0bWwvSW5wdXRU
eXBlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklucHV0VHlwZTo6YWNjZXNzS2V5QWN0aW9uKToK
KyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVu
dEhhbmRsZXI6OmRpc3BhdGNoTW91c2VFdmVudCk6CisgICAgICAgICogcGFnZS9Gb2N1c0NvbnRy
b2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9j
dXNJbkRvY3VtZW50T3JkZXIpOgorICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjph
ZHZhbmNlRm9jdXNEaXJlY3Rpb25hbGx5SW5Db250YWluZXIpOgorICAgICAgICBTbGlnaHRseSBy
ZXdvcmsgYFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZWAgdG8gcmVwbGFjZSBgU2V0RGVmYXVsdGAg
d2l0aCB0d28gbmV3IHZhbHVlczoKKyAgICAgICAgIC0gYFBsYWNlQ2FyZXRBdFN0YXJ0YCBwdXRz
IHRoZSBjYXJldCBhdCB0aGUgc3RhcnQsIHJlZ2FyZGxlc3Mgb2YgYW55IGNhY2hlZCBzZWxlY3Rp
b24KKyAgICAgICAgIC0gYFNlbGVjdEFsbGAgc2VsZWN0cyBhbGwgdGV4dCwgcmVnYXJkbGVzcyBv
ZiBhbnkgY2FjaGVkIHNlbGVjdGlvbiAoZXhpc3RpbmcgYmVoYXZpb3IpCisgICAgICAgIEluIG9y
ZGVyIHRvIHByZXNlcnZlIGV4aXN0aW5nIGJlaGF2aW9yLCB0aGUgZGVmYXVsdCBgUmVzdG9yZWAg
d2lsbCBoYXZlIHRoZSBzYW1lIGVmZmVjdCBhcworICAgICAgICBgU2VsZWN0QWxsYCBpZiB0aGVy
ZSBpcyBubyBjYWNoZWQgc2VsZWN0aW9uIChhbmQgaXMgcmVuYW1lZCB0byBgUmVzdG9yZU9yU2Vs
ZWN0QWxsYCBhcyBzdWNoKS4KKworICAgICAgICAqIGRvbS9FbGVtZW50Lmg6CisgICAgICAgICog
ZG9tL0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6Zm9jdXMpOgorICAg
ICAgICAqIGh0bWwvSFRNTExhYmVsRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTExhYmVs
RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTGFiZWxFbGVtZW50Ojpmb2N1cyk6
CisgICAgICAgICogaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRN
TExlZ2VuZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTExlZ2VuZEVsZW1lbnQ6
OmZvY3VzKToKKyAgICAgICAgUmVwbGFjZSB0aGUgYGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0
aW9uYCB3aXRoIGBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGVgIHNpbmNlIHRoYXQncworICAgICAg
ICB3aGF0IGl0J3MgZXZlbnR1YWxseSB1c2VkIGZvciBhbnl3YXlzLiBUaGlzIGFsc28gYWxsb3dz
IGZvciBtb3JlIGZsZXhpYmlsaXR5IGluIGJlaGF2aW9yLAorICAgICAgICBzdWNoIGFzIGNhbGxl
cnMgdXNpbmcgdGhlIG5ldyBgU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlYCB2YWx1ZXMuCisKKyAg
ICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6ZGlkQXR0YWNoUmVuZGVyZXJzKToKKyAgICAgICAg
Q2hhbmdlIHRvIGBQbGFjZUNhcmV0QXRTdGFydGAgdG8gbWF0Y2ggb3RoZXIgYnJvd3NlcnMuCisK
IDIwMjAtMTEtMDUgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2FpZEBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0dQVSBQcm9jZXNzXSBVc2UgdGhlIFJlZiBjb3VudGluZyBvZiBJbWFnZUJ1ZmZlciB0byBj
b250cm9sIGl0cyBsaWZlIGN5Y2xlIGluIFdlYiBQcm9jZXNzIGFuZCBHUFUgUHJvY2VzcwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZwppbmRleCBlMDhlYmI3NmM1ODRlZTBiOWI5Y2YzZjNjODcwMWU3ODNiYjY5MzNiLi5iZmYxMzQy
ZDc1NjY5ODQxMzQ1OTZhMjRiNjQ1MjhlMDQ4NDAzODkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5
IEBACisyMDIwLTExLTA2ICBEZXZpbiBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAg
ICAgICBhdXRvZm9jdXMgb2YgdGV4dCBpbnB1dCBzaG91bGQgbm90IHNlbGVjdCB0ZXh0CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTg1ODUKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzYwMTMwNzA0PgorCisgICAgICAgIFJldmlld2VkIGJ5IFdlbnNv
biBIc2llaC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cmVzdG9yZVNlbGVjdGlvbkluRm9jdXNlZEVkaXRhYmxl
RWxlbWVudCk6CisgICAgICAgIFNsaWdodGx5IHJld29yayBgU2VsZWN0aW9uUmVzdG9yYXRpb25N
b2RlYCB0byByZXBsYWNlIGBTZXREZWZhdWx0YCB3aXRoIHR3byBuZXcgdmFsdWVzOgorICAgICAg
ICAgLSBgUGxhY2VDYXJldEF0U3RhcnRgIHB1dHMgdGhlIGNhcmV0IGF0IHRoZSBzdGFydCwgcmVn
YXJkbGVzcyBvZiBhbnkgY2FjaGVkIHNlbGVjdGlvbgorICAgICAgICAgLSBgU2VsZWN0QWxsYCBz
ZWxlY3RzIGFsbCB0ZXh0LCByZWdhcmRsZXNzIG9mIGFueSBjYWNoZWQgc2VsZWN0aW9uIChleGlz
dGluZyBiZWhhdmlvcikKKyAgICAgICAgSW4gb3JkZXIgdG8gcHJlc2VydmUgZXhpc3RpbmcgYmVo
YXZpb3IsIHRoZSBkZWZhdWx0IGBSZXN0b3JlYCB3aWxsIGhhdmUgdGhlIHNhbWUgZWZmZWN0IGFz
CisgICAgICAgIGBTZWxlY3RBbGxgIGlmIHRoZXJlIGlzIG5vIGNhY2hlZCBzZWxlY3Rpb24gKGFu
ZCBpcyByZW5hbWVkIHRvIGBSZXN0b3JlT3JTZWxlY3RBbGxgIGFzIHN1Y2gpLgorCiAyMDIwLTEx
LTA2ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AZ25vbWUub3JnPgogCiAgICAgICAg
IFtHVEtdIGRsb3BlbiBsaWJXUEVCYWNrZW5kLWZkby0xLjAuc28uMSBpbnN0ZWFkIG9mIGxpYldQ
RUJhY2tlbmQtZmRvLTEuMC5zbwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAppbmRleCBkNzQ1YTJmNjViZmJm
MGNlZGYwODQ1OGU4MDBkYWMzMzZmNTJmZmUwLi44NGU1OGNjMTM1ZGRiMjVkYTNhN2E4MzhlNzRj
M2U3OGY0MDdjOWQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApAQCAtMjg4LDcgKzI4OCwxMSBAQCBl
bnVtIGNsYXNzIERvY3VtZW50Q29tcGF0aWJpbGl0eU1vZGUgOiB1bnNpZ25lZCBjaGFyIHsKIAog
ZW51bSBEaW1lbnNpb25zQ2hlY2sgeyBXaWR0aERpbWVuc2lvbnNDaGVjayA9IDEgPDwgMCwgSGVp
Z2h0RGltZW5zaW9uc0NoZWNrID0gMSA8PCAxLCBBbGxEaW1lbnNpb25zQ2hlY2sgPSAxIDw8IDIg
fTsKIAotZW51bSBjbGFzcyBTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgeyBSZXN0b3JlLCBTZXRE
ZWZhdWx0IH07CitlbnVtIGNsYXNzIFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSA6IHVpbnQ4X3Qg
eworICAgIFJlc3RvcmVPclNlbGVjdEFsbCwKKyAgICBTZWxlY3RBbGwsCisgICAgUGxhY2VDYXJl
dEF0U3RhcnQsCit9OwogCiBlbnVtIGNsYXNzIEh0dHBFcXVpdlBvbGljeSB7CiAgICAgRW5hYmxl
ZCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9FbGVtZW50LmNwcAppbmRleCA4ZDY3Mjc1OTJhMTU5NDYyMDlhYWQ4ZTRmNjM2
ODA4YWRkNmRkMWViLi5mNzdlNTY2MGM5ODlhNjUxYzdhOTEzODQ4OGE3MWUyMmJhOTcxMzQyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL0VsZW1lbnQuY3BwCkBAIC0yOTkzLDcgKzI5OTMsNyBAQCBzdGF0aWMgUmVmUHRy
PEVsZW1lbnQ+IGZpbmRGaXJzdFByb2dyYW1hdGljYWxseUZvY3VzYWJsZUVsZW1lbnRJbkNvbXBv
c2VkVHJlZShFbAogICAgIHJldHVybiBudWxscHRyOwogfQogCi12b2lkIEVsZW1lbnQ6OmZvY3Vz
KGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24p
Cit2b2lkIEVsZW1lbnQ6OmZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSByZXN0b3JhdGlv
bk1vZGUsIEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbikKIHsKICAgICBpZiAoIWlzQ29ubmVjdGVk
KCkpCiAgICAgICAgIHJldHVybjsKQEAgLTMwNDEsNyArMzA0MSw3IEBAIHZvaWQgRWxlbWVudDo6
Zm9jdXMoYm9vbCByZXN0b3JlUHJldmlvdXNTZWxlY3Rpb24sIEZvY3VzRGlyZWN0aW9uIGRpcmVj
dGlvbikKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBuZXdUYXJnZXQtPnJldmVh
bEZvY3VzZWRFbGVtZW50KHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiA/IFNlbGVjdGlvblJlc3Rv
cmF0aW9uTW9kZTo6UmVzdG9yZSA6IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2V0RGVmYXVs
dCk7CisgICAgbmV3VGFyZ2V0LT5yZXZlYWxGb2N1c2VkRWxlbWVudChyZXN0b3JhdGlvbk1vZGUp
OwogfQogCiB2b2lkIEVsZW1lbnQ6OnJldmVhbEZvY3VzZWRFbGVtZW50KFNlbGVjdGlvblJlc3Rv
cmF0aW9uTW9kZSBzZWxlY3Rpb25Nb2RlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9t
L0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKaW5kZXggMTk3NDI5OTA1
MDM4NDcxMjAzNDc1MWU4MGVlY2U5YzZhOGU2MGMyMS4uOWJjN2QyMGM5ZGNjZDcxZGJmOTQzM2Rh
MTU0NzQyMGU2YTcxYjMzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCkBAIC00MDAsNyArNDAwLDcgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgU3RyaW5nIHRhcmdldCgpIGNvbnN0IHsgcmV0dXJuIFN0cmlu
ZygpOyB9CiAKICAgICBzdGF0aWMgQVhUZXh0U3RhdGVDaGFuZ2VJbnRlbnQgZGVmYXVsdEZvY3Vz
VGV4dFN0YXRlQ2hhbmdlSW50ZW50KCkgeyByZXR1cm4gQVhUZXh0U3RhdGVDaGFuZ2VJbnRlbnQo
QVhUZXh0U3RhdGVDaGFuZ2VUeXBlU2VsZWN0aW9uTW92ZSwgQVhUZXh0U2VsZWN0aW9uIHsgQVhU
ZXh0U2VsZWN0aW9uRGlyZWN0aW9uRGlzY29udGlndW91cywgQVhUZXh0U2VsZWN0aW9uR3JhbnVs
YXJpdHlVbmtub3duLCB0cnVlIH0pOyB9Ci0gICAgdmlydHVhbCB2b2lkIGZvY3VzKGJvb2wgcmVz
dG9yZVByZXZpb3VzU2VsZWN0aW9uID0gdHJ1ZSwgRm9jdXNEaXJlY3Rpb24gPSBGb2N1c0RpcmVj
dGlvbjo6Tm9uZSk7CisgICAgdmlydHVhbCB2b2lkIGZvY3VzKFNlbGVjdGlvblJlc3RvcmF0aW9u
TW9kZSA9IFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6UmVzdG9yZU9yU2VsZWN0QWxsLCBGb2N1
c0RpcmVjdGlvbiA9IEZvY3VzRGlyZWN0aW9uOjpOb25lKTsKICAgICB2b2lkIHJldmVhbEZvY3Vz
ZWRFbGVtZW50KFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSk7CiAgICAgdmlydHVhbCBSZWZQdHI8
RWxlbWVudD4gZm9jdXNBcHBlYXJhbmNlVXBkYXRlVGFyZ2V0KCk7CiAgICAgdmlydHVhbCB2b2lk
IHVwZGF0ZUZvY3VzQXBwZWFyYW5jZShTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUsIFNlbGVjdGlv
blJldmVhbE1vZGUgPSBTZWxlY3Rpb25SZXZlYWxNb2RlOjpSZXZlYWwpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaGlzdG9yeS9DYWNoZWRQYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2hp
c3RvcnkvQ2FjaGVkUGFnZS5jcHAKaW5kZXggZTNjNWU2N2VhZjQzZmY1NzdlOTM2NjU2MWY1MjAz
MGM1YTg4ZDVmYy4uMTkxN2ZlYjEzMWY2NjlmYjA4YWEyYjJjZmUyYjRiMmI2ODQxZTYzNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaGlzdG9yeS9DYWNoZWRQYWdlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9oaXN0b3J5L0NhY2hlZFBhZ2UuY3BwCkBAIC0xNDUsNyArMTQ1LDcgQEAgdm9p
ZCBDYWNoZWRQYWdlOjpyZXN0b3JlKFBhZ2UmIHBhZ2UpCiAgICAgICAgICAgICBmcmFtZVZpZXct
PnNldFByb2hpYml0c1Njcm9sbGluZyh0cnVlKTsKICAgICAgICAgfQogI2VuZGlmCi0gICAgICAg
IGVsZW1lbnQtPnVwZGF0ZUZvY3VzQXBwZWFyYW5jZShTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6
OlJlc3RvcmUpOworICAgICAgICBlbGVtZW50LT51cGRhdGVGb2N1c0FwcGVhcmFuY2UoU2VsZWN0
aW9uUmVzdG9yYXRpb25Nb2RlOjpSZXN0b3JlT3JTZWxlY3RBbGwpOwogI2lmIFBMQVRGT1JNKElP
U19GQU1JTFkpCiAgICAgICAgIGlmIChmcmFtZVZpZXcpCiAgICAgICAgICAgICBmcmFtZVZpZXct
PnNldFByb2hpYml0c1Njcm9sbGluZyhoYWRQcm9oaWJpdHNTY3JvbGxpbmcpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKaW5kZXggMzk3Zjc2NTg4
MTJkNmI5ZDM2NWM3MTg1ODk3ZjFmNTExNjIzMTZiYy4uYjlkZjY2OTUyY2RhYzgzNmM0MDY3MTEw
NzZiZDY1MTczMmMzNWUzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9y
bUNvbnRyb2xFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29u
dHJvbEVsZW1lbnQuY3BwCkBAIC0yNTQsMTEgKzI1NCwxMSBAQCB2b2lkIEhUTUxGb3JtQ29udHJv
bEVsZW1lbnQ6OmRpZEF0dGFjaFJlbmRlcmVycygpCiAgICAgICAgIGF1dG8gZnJhbWVWaWV3ID0g
bWFrZVJlZlB0cihkb2N1bWVudCgpLnZpZXcoKSk7CiAgICAgICAgIGlmIChmcmFtZVZpZXcgJiYg
ZnJhbWVWaWV3LT5sYXlvdXRDb250ZXh0KCkuaXNJbkxheW91dCgpKSB7CiAgICAgICAgICAgICBm
cmFtZVZpZXctPnF1ZXVlUG9zdExheW91dENhbGxiYWNrKFtlbGVtZW50XSB7Ci0gICAgICAgICAg
ICAgICAgZWxlbWVudC0+Zm9jdXMoKTsKKyAgICAgICAgICAgICAgICBlbGVtZW50LT5mb2N1cyhT
ZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlBsYWNlQ2FyZXRBdFN0YXJ0KTsKICAgICAgICAgICAg
IH0pOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgU3R5bGU6OnF1ZXVlUG9zdFJlc29s
dXRpb25DYWxsYmFjayhbZWxlbWVudF0gewotICAgICAgICAgICAgICAgIGVsZW1lbnQtPmZvY3Vz
KCk7CisgICAgICAgICAgICAgICAgZWxlbWVudC0+Zm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25N
b2RlOjpQbGFjZUNhcmV0QXRTdGFydCk7CiAgICAgICAgICAgICB9KTsKICAgICAgICAgfQogICAg
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmluZGV4IDk5M2YzOTU0
MzliMmE4ZTY5ZDk2ZDU4ZDE5OTE3ODMzYTcyMDkzZWMuLmE1MTVhZDA0MjYxZTgzNzYwODkzN2Jm
MjkzZjJlNTU4MjIyYzk2Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElu
cHV0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50
LmNwcApAQCAtNDc2LDE1ICs0NzYsMTUgQEAgYm9vbCBIVE1MSW5wdXRFbGVtZW50Ojppc1RleHRG
b3JtQ29udHJvbE1vdXNlRm9jdXNhYmxlKCkgY29uc3QKIHZvaWQgSFRNTElucHV0RWxlbWVudDo6
dXBkYXRlRm9jdXNBcHBlYXJhbmNlKFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZSByZXN0b3JhdGlv
bk1vZGUsIFNlbGVjdGlvblJldmVhbE1vZGUgcmV2ZWFsTW9kZSkKIHsKICAgICBpZiAoaXNUZXh0
RmllbGQoKSkgewotICAgICAgICBpZiAocmVzdG9yYXRpb25Nb2RlID09IFNlbGVjdGlvblJlc3Rv
cmF0aW9uTW9kZTo6U2V0RGVmYXVsdCB8fCAhaGFzQ2FjaGVkU2VsZWN0aW9uKCkpCi0gICAgICAg
ICAgICBzZXREZWZhdWx0U2VsZWN0aW9uQWZ0ZXJGb2N1cyhyZXZlYWxNb2RlKTsKLSAgICAgICAg
ZWxzZQorICAgICAgICBpZiAocmVzdG9yYXRpb25Nb2RlID09IFNlbGVjdGlvblJlc3RvcmF0aW9u
TW9kZTo6UmVzdG9yZU9yU2VsZWN0QWxsICYmIGhhc0NhY2hlZFNlbGVjdGlvbigpKQogICAgICAg
ICAgICAgcmVzdG9yZUNhY2hlZFNlbGVjdGlvbihyZXZlYWxNb2RlKTsKKyAgICAgICAgZWxzZQor
ICAgICAgICAgICAgc2V0RGVmYXVsdFNlbGVjdGlvbkFmdGVyRm9jdXMocmVzdG9yYXRpb25Nb2Rl
LCByZXZlYWxNb2RlKTsKICAgICB9IGVsc2UKICAgICAgICAgSFRNTFRleHRGb3JtQ29udHJvbEVs
ZW1lbnQ6OnVwZGF0ZUZvY3VzQXBwZWFyYW5jZShyZXN0b3JhdGlvbk1vZGUsIHJldmVhbE1vZGUp
OwogfQogCi12b2lkIEhUTUxJbnB1dEVsZW1lbnQ6OnNldERlZmF1bHRTZWxlY3Rpb25BZnRlckZv
Y3VzKFNlbGVjdGlvblJldmVhbE1vZGUgcmV2ZWFsTW9kZSkKK3ZvaWQgSFRNTElucHV0RWxlbWVu
dDo6c2V0RGVmYXVsdFNlbGVjdGlvbkFmdGVyRm9jdXMoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2Rl
IHJlc3RvcmF0aW9uTW9kZSwgU2VsZWN0aW9uUmV2ZWFsTW9kZSByZXZlYWxNb2RlKQogewogICAg
IEFTU0VSVChpc1RleHRGaWVsZCgpKTsKICAgICBpbnQgc3RhcnQgPSAwOwpAQCAtNDk0LDcgKzQ5
NCw4IEBAIHZvaWQgSFRNTElucHV0RWxlbWVudDo6c2V0RGVmYXVsdFNlbGVjdGlvbkFmdGVyRm9j
dXMoU2VsZWN0aW9uUmV2ZWFsTW9kZSByZXZlYWxNCiAgICAgICAgIHN0YXJ0ID0gc3RkOjpudW1l
cmljX2xpbWl0czxpbnQ+OjptYXgoKTsKICAgICAgICAgZGlyZWN0aW9uID0gU2VsZWN0aW9uSGFz
Rm9yd2FyZERpcmVjdGlvbjsKICAgICB9Ci0gICAgc2V0U2VsZWN0aW9uUmFuZ2Uoc3RhcnQsIHN0
ZDo6bnVtZXJpY19saW1pdHM8aW50Pjo6bWF4KCksIGRpcmVjdGlvbiwgcmV2ZWFsTW9kZSwgRWxl
bWVudDo6ZGVmYXVsdEZvY3VzVGV4dFN0YXRlQ2hhbmdlSW50ZW50KCkpOworICAgIGludCBlbmQg
PSByZXN0b3JhdGlvbk1vZGUgPT0gU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpQbGFjZUNhcmV0
QXRTdGFydCA/IHN0YXJ0IDogc3RkOjpudW1lcmljX2xpbWl0czxpbnQ+OjptYXgoKTsKKyAgICBz
ZXRTZWxlY3Rpb25SYW5nZShzdGFydCwgZW5kLCBkaXJlY3Rpb24sIHJldmVhbE1vZGUsIEVsZW1l
bnQ6OmRlZmF1bHRGb2N1c1RleHRTdGF0ZUNoYW5nZUludGVudCgpKTsKIH0KIAogdm9pZCBIVE1M
SW5wdXRFbGVtZW50OjplbmRFZGl0aW5nKCkKQEAgLTYxOCw3ICs2MTksNyBAQCBpbmxpbmUgdm9p
ZCBIVE1MSW5wdXRFbGVtZW50OjpydW5Qb3N0VHlwZVVwZGF0ZVRhc2tzKCkKICAgICAgICAgaW52
YWxpZGF0ZVN0eWxlQW5kUmVuZGVyZXJzRm9yU3VidHJlZSgpOwogCiAgICAgaWYgKGRvY3VtZW50
KCkuZm9jdXNlZEVsZW1lbnQoKSA9PSB0aGlzKQotICAgICAgICB1cGRhdGVGb2N1c0FwcGVhcmFu
Y2UoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpSZXN0b3JlLCBTZWxlY3Rpb25SZXZlYWxNb2Rl
OjpSZXZlYWwpOworICAgICAgICB1cGRhdGVGb2N1c0FwcGVhcmFuY2UoU2VsZWN0aW9uUmVzdG9y
YXRpb25Nb2RlOjpSZXN0b3JlT3JTZWxlY3RBbGwsIFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVh
bCk7CiAKICAgICBzZXRDaGFuZ2VkU2luY2VMYXN0Rm9ybUNvbnRyb2xDaGFuZ2VFdmVudChmYWxz
ZSk7CiAKQEAgLTg2Niw3ICs4NjcsNyBAQCB2b2lkIEhUTUxJbnB1dEVsZW1lbnQ6OmRpZEF0dGFj
aFJlbmRlcmVycygpCiAKICAgICBpZiAoZG9jdW1lbnQoKS5mb2N1c2VkRWxlbWVudCgpID09IHRo
aXMpIHsKICAgICAgICAgZG9jdW1lbnQoKS52aWV3KCktPnF1ZXVlUG9zdExheW91dENhbGxiYWNr
KFtwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyldIHsKLSAgICAgICAgICAgIHByb3RlY3Rl
ZFRoaXMtPnVwZGF0ZUZvY3VzQXBwZWFyYW5jZShTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJl
c3RvcmUsIFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCk7CisgICAgICAgICAgICBwcm90ZWN0
ZWRUaGlzLT51cGRhdGVGb2N1c0FwcGVhcmFuY2UoU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpS
ZXN0b3JlT3JTZWxlY3RBbGwsIFNlbGVjdGlvblJldmVhbE1vZGU6OlJldmVhbCk7CiAgICAgICAg
IH0pOwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0
RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmgKaW5kZXgg
ZmI4Yzg1ZDkyZDhhZDNlMDk1MzM1YzZjODNlOTY5NjgxODJhZWM4YS4uOGJmOWU3MjVlM2Y4NWY4
ODMxMjdhM2VlMDY2YzUzNmQ1NTVlYmE5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MSW5wdXRFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRF
bGVtZW50LmgKQEAgLTQ1NSw3ICs0NTUsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgYWRkVG9SYWRp
b0J1dHRvbkdyb3VwKCk7CiAgICAgdm9pZCByZW1vdmVGcm9tUmFkaW9CdXR0b25Hcm91cCgpOwog
Ci0gICAgdm9pZCBzZXREZWZhdWx0U2VsZWN0aW9uQWZ0ZXJGb2N1cyhTZWxlY3Rpb25SZXZlYWxN
b2RlKTsKKyAgICB2b2lkIHNldERlZmF1bHRTZWxlY3Rpb25BZnRlckZvY3VzKFNlbGVjdGlvblJl
c3RvcmF0aW9uTW9kZSwgU2VsZWN0aW9uUmV2ZWFsTW9kZSk7CiAKICAgICBBdG9tU3RyaW5nIG1f
bmFtZTsKICAgICBTdHJpbmcgbV92YWx1ZUlmRGlydHk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
TGFiZWxFbGVtZW50LmNwcAppbmRleCAzN2Y5Y2E1NmU4MGQ3MzI0MTAzYjFhMTI2ZmMyMmM2NjVh
MDhhZDNjLi40MjZmMTZiYzYxZDZkNWY4MGI2NmY0ZDZhMGQ2MjY1NThlYTRiMjAzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5jcHAKQEAgLTE3MiwyMSArMTcyLDIxIEBA
IGJvb2wgSFRNTExhYmVsRWxlbWVudDo6d2lsbFJlc3BvbmRUb01vdXNlQ2xpY2tFdmVudHMoKQog
ICAgIHJldHVybiAoZWxlbWVudCAmJiBlbGVtZW50LT53aWxsUmVzcG9uZFRvTW91c2VDbGlja0V2
ZW50cygpKSB8fCBIVE1MRWxlbWVudDo6d2lsbFJlc3BvbmRUb01vdXNlQ2xpY2tFdmVudHMoKTsK
IH0KIAotdm9pZCBIVE1MTGFiZWxFbGVtZW50Ojpmb2N1cyhib29sIHJlc3RvcmVQcmV2aW91c1Nl
bGVjdGlvbiwgRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uKQordm9pZCBIVE1MTGFiZWxFbGVtZW50
Ojpmb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0Rp
cmVjdGlvbiBkaXJlY3Rpb24pCiB7CiAgICAgUmVmPEhUTUxMYWJlbEVsZW1lbnQ+IHByb3RlY3Rl
ZFRoaXMoKnRoaXMpOwogICAgIGlmIChkb2N1bWVudCgpLmhhdmVTdHlsZXNoZWV0c0xvYWRlZCgp
KSB7CiAgICAgICAgIGRvY3VtZW50KCkudXBkYXRlTGF5b3V0KCk7CiAgICAgICAgIGlmIChpc0Zv
Y3VzYWJsZSgpKSB7Ci0gICAgICAgICAgICAvLyBUaGUgdmFsdWUgb2YgcmVzdG9yZVByZXZpb3Vz
U2VsZWN0aW9uIGlzIG5vdCB1c2VkIGZvciBsYWJlbCBlbGVtZW50cyBhcyBpdCBkb2Vzbid0IG92
ZXJyaWRlIHVwZGF0ZUZvY3VzQXBwZWFyYW5jZS4KLSAgICAgICAgICAgIEVsZW1lbnQ6OmZvY3Vz
KHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgZGlyZWN0aW9uKTsKKyAgICAgICAgICAgIC8vIFRo
ZSB2YWx1ZSBvZiByZXN0b3JhdGlvbk1vZGUgaXMgbm90IHVzZWQgZm9yIGxhYmVsIGVsZW1lbnRz
IGFzIGl0IGRvZXNuJ3Qgb3ZlcnJpZGUgdXBkYXRlRm9jdXNBcHBlYXJhbmNlLgorICAgICAgICAg
ICAgRWxlbWVudDo6Zm9jdXMocmVzdG9yYXRpb25Nb2RlLCBkaXJlY3Rpb24pOwogICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgfQogCiAgICAgLy8gVG8gbWF0Y2ggb3RoZXIgYnJv
d3NlcnMsIGFsd2F5cyByZXN0b3JlIHByZXZpb3VzIHNlbGVjdGlvbi4KICAgICBpZiAoYXV0byBl
bGVtZW50ID0gY29udHJvbCgpKQotICAgICAgICBlbGVtZW50LT5mb2N1cyh0cnVlLCBkaXJlY3Rp
b24pOworICAgICAgICBlbGVtZW50LT5mb2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJl
c3RvcmVPclNlbGVjdEFsbCwgZGlyZWN0aW9uKTsKIH0KIAogYm9vbCBIVE1MTGFiZWxFbGVtZW50
OjphY2Nlc3NLZXlBY3Rpb24oYm9vbCBzZW5kTW91c2VFdmVudHMpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxMYWJlbEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTExhYmVsRWxlbWVudC5oCmluZGV4IDQ2NjBmMDY3NzczNTFjZTZkYzg5NWM4MWJiMDcyNDdj
OWM0MzIwZWUuLjgwZTE1YzIyNTc5ZGRiODY1ZmRjMTE3NjA1OGJmZjJlMzNiZmRmOWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTExhYmVsRWxlbWVudC5oCkBAIC01MSw3ICs1MSw3IEBAIHByaXZh
dGU6CiAgICAgLy8gT3ZlcnJpZGRlbiB0byBlaXRoZXIgY2xpY2soKSBvciBmb2N1cygpIHRoZSBj
b3JyZXNwb25kaW5nIGNvbnRyb2wuCiAgICAgdm9pZCBkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50
JikgZmluYWw7CiAKLSAgICB2b2lkIGZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0aW9u
LCBGb2N1c0RpcmVjdGlvbikgZmluYWw7CisgICAgdm9pZCBmb2N1cyhTZWxlY3Rpb25SZXN0b3Jh
dGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKIAogICAgIGJvb2wgaXNJbnRlcmFjdGl2
ZUNvbnRlbnQoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiB9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmNwcAppbmRleCBhMWU1N2NmZTRkMGIxZjIwODAwNzFm
NDcyZDQ0OWY2YjYwOGEyMjc2Li5lZDBhNDAxMWNhNzQ1NmM0ZTI0MWUxMGM1YTZkYzAyNzMxN2Q2
ODJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmNwcApAQCAtNTcs
MTkgKzU3LDE5IEBAIFJlZlB0cjxIVE1MRm9ybUNvbnRyb2xFbGVtZW50PiBIVE1MTGVnZW5kRWxl
bWVudDo6YXNzb2NpYXRlZENvbnRyb2woKQogICAgIHJldHVybiBkZXNjZW5kYW50c09mVHlwZTxI
VE1MRm9ybUNvbnRyb2xFbGVtZW50PigqZW5jbG9zaW5nRmllbGRzZXQpLmZpcnN0KCk7CiB9CiAK
LXZvaWQgSFRNTExlZ2VuZEVsZW1lbnQ6OmZvY3VzKGJvb2wgcmVzdG9yZVByZXZpb3VzU2VsZWN0
aW9uLCBGb2N1c0RpcmVjdGlvbiBkaXJlY3Rpb24pCit2b2lkIEhUTUxMZWdlbmRFbGVtZW50Ojpm
b2N1cyhTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGUgcmVzdG9yYXRpb25Nb2RlLCBGb2N1c0RpcmVj
dGlvbiBkaXJlY3Rpb24pCiB7CiAgICAgaWYgKGRvY3VtZW50KCkuaGF2ZVN0eWxlc2hlZXRzTG9h
ZGVkKCkpIHsKICAgICAgICAgZG9jdW1lbnQoKS51cGRhdGVMYXlvdXRJZ25vcmVQZW5kaW5nU3R5
bGVzaGVldHMoKTsKICAgICAgICAgaWYgKGlzRm9jdXNhYmxlKCkpIHsKLSAgICAgICAgICAgIEVs
ZW1lbnQ6OmZvY3VzKHJlc3RvcmVQcmV2aW91c1NlbGVjdGlvbiwgZGlyZWN0aW9uKTsKKyAgICAg
ICAgICAgIEVsZW1lbnQ6OmZvY3VzKHJlc3RvcmF0aW9uTW9kZSwgZGlyZWN0aW9uKTsKICAgICAg
ICAgICAgIHJldHVybjsKICAgICAgICAgfQogICAgIH0KIAogICAgIC8vIFRvIG1hdGNoIG90aGVy
IGJyb3dzZXJzJyBiZWhhdmlvciwgbmV2ZXIgcmVzdG9yZSBwcmV2aW91cyBzZWxlY3Rpb24uCiAg
ICAgaWYgKGF1dG8gY29udHJvbCA9IGFzc29jaWF0ZWRDb250cm9sKCkpCi0gICAgICAgIGNvbnRy
b2wtPmZvY3VzKGZhbHNlLCBkaXJlY3Rpb24pOworICAgICAgICBjb250cm9sLT5mb2N1cyhTZWxl
Y3Rpb25SZXN0b3JhdGlvbk1vZGU6OlNlbGVjdEFsbCwgZGlyZWN0aW9uKTsKIH0KIAogYm9vbCBI
VE1MTGVnZW5kRWxlbWVudDo6YWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRzKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGVnZW5kRWxlbWVudC5oCmluZGV4IDJkZjYyMjk3MWYxMzc5
MjJkYzM4Yzg4NTQ5MmQyZjM4NTQ2ZjJhMWEuLjdkY2IxYjg1MGEyN2UzYjdhY2I4MDI4N2M1NzRm
ODMwMmZjYTYwMmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExlZ2VuZEVs
ZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMZWdlbmRFbGVtZW50LmgKQEAg
LTQzLDcgKzQzLDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8SFRNTEZvcm1Db250cm9sRWxlbWVu
dD4gYXNzb2NpYXRlZENvbnRyb2woKTsKIAogICAgIGJvb2wgYWNjZXNzS2V5QWN0aW9uKGJvb2wg
c2VuZE1vdXNlRXZlbnRzKSBmaW5hbDsKLSAgICB2b2lkIGZvY3VzKGJvb2wgcmVzdG9yZVByZXZp
b3VzU2VsZWN0aW9uLCBGb2N1c0RpcmVjdGlvbikgZmluYWw7CisgICAgdm9pZCBmb2N1cyhTZWxl
Y3Rpb25SZXN0b3JhdGlvbk1vZGUsIEZvY3VzRGlyZWN0aW9uKSBmaW5hbDsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRl
eHRBcmVhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1l
bnQuY3BwCmluZGV4IDg4MTY4NTk0NjE4NGU3YzRhOTc2NmVhYWUzYjUxY2Q5OTAyZDRhNWIuLjVl
ZTY1NTZiZmVjZjZmYzdhZmUzYTdkNzNjNzAzOTk0MDQ3YzJjYzEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcApAQCAtMjY4LDEzICsyNjgsMTQgQEAgYm9v
bCBIVE1MVGV4dEFyZWFFbGVtZW50Ojppc01vdXNlRm9jdXNhYmxlKCkgY29uc3QKIAogdm9pZCBI
VE1MVGV4dEFyZWFFbGVtZW50Ojp1cGRhdGVGb2N1c0FwcGVhcmFuY2UoU2VsZWN0aW9uUmVzdG9y
YXRpb25Nb2RlIHJlc3RvcmF0aW9uTW9kZSwgU2VsZWN0aW9uUmV2ZWFsTW9kZSByZXZlYWxNb2Rl
KQogewotICAgIGlmIChyZXN0b3JhdGlvbk1vZGUgPT0gU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2Rl
OjpTZXREZWZhdWx0IHx8ICFoYXNDYWNoZWRTZWxlY3Rpb24oKSkgeworICAgIGlmIChyZXN0b3Jh
dGlvbk1vZGUgPT0gU2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpSZXN0b3JlT3JTZWxlY3RBbGwg
JiYgaGFzQ2FjaGVkU2VsZWN0aW9uKCkpCisgICAgICAgIHJlc3RvcmVDYWNoZWRTZWxlY3Rpb24o
cmV2ZWFsTW9kZSwgRWxlbWVudDo6ZGVmYXVsdEZvY3VzVGV4dFN0YXRlQ2hhbmdlSW50ZW50KCkp
OworICAgIGVsc2UgewogICAgICAgICAvLyBJZiB0aGlzIGlzIHRoZSBmaXJzdCBmb2N1cywgc2V0
IGEgY2FyZXQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgdGV4dC4gIAogICAgICAgICAvLyBUaGlz
IG1hdGNoZXMgc29tZSBicm93c2VycycgYmVoYXZpb3I7IHNlZSBidWcgMTE3NDYgQ29tbWVudCAj
MTUuCiAgICAgICAgIC8vIGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
NzQ2I2MxNQogICAgICAgICBzZXRTZWxlY3Rpb25SYW5nZSgwLCAwLCBTZWxlY3Rpb25IYXNOb0Rp
cmVjdGlvbiwgcmV2ZWFsTW9kZSwgRWxlbWVudDo6ZGVmYXVsdEZvY3VzVGV4dFN0YXRlQ2hhbmdl
SW50ZW50KCkpOwotICAgIH0gZWxzZQotICAgICAgICByZXN0b3JlQ2FjaGVkU2VsZWN0aW9uKHJl
dmVhbE1vZGUsIEVsZW1lbnQ6OmRlZmF1bHRGb2N1c1RleHRTdGF0ZUNoYW5nZUludGVudCgpKTsK
KyAgICB9CiB9CiAKIHZvaWQgSFRNTFRleHRBcmVhRWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFuZGxl
cihFdmVudCYgZXZlbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlw
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAKaW5kZXggMjcwNjE4YmE5
ZTU1ZjZjYjIzNzc1MjUxNDc5Y2RiMTYzNTlhODFmZi4uOGVkNTBjOGRmYzU4NzhmNDYwZjI4MTdh
YjUwNmRiMDdhODVjYmJlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5
cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmNwcApAQCAtNTgyLDcg
KzU4Miw3IEBAIHZvaWQgSW5wdXRUeXBlOjpoYW5kbGVCbHVyRXZlbnQoKQogYm9vbCBJbnB1dFR5
cGU6OmFjY2Vzc0tleUFjdGlvbihib29sKQogewogICAgIEFTU0VSVChlbGVtZW50KCkpOwotICAg
IGVsZW1lbnQoKS0+Zm9jdXMoZmFsc2UpOworICAgIGVsZW1lbnQoKS0+Zm9jdXMoU2VsZWN0aW9u
UmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwpOwogICAgIHJldHVybiBmYWxzZTsKIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCmluZGV4IDkyMDdiZjdhZWJjODNmNzg2MzkzNTgx
NDI3NDBjYmZmNWY2MjZhZDcuLmM5NGYyNjNjZDA1NGIzOWQxMmYzNzJhN2EyN2JiMzgwNTQ1OWZi
OWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKQEAgLTI3NTMsNyArMjc1Myw3
IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpkaXNwYXRjaE1vdXNlRXZlbnQoY29uc3QgQXRvbVN0cmlu
ZyYgZXZlbnRUeXBlLCBOb2RlKiB0YXJnZXROCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAg
IGlmIChlbGVtZW50ICYmIG1fbW91c2VEb3duRGVsZWdhdGVkRm9jdXMpCi0gICAgICAgIGVsZW1l
bnQtPnJldmVhbEZvY3VzZWRFbGVtZW50KFNlbGVjdGlvblJlc3RvcmF0aW9uTW9kZTo6U2V0RGVm
YXVsdCk7CisgICAgICAgIGVsZW1lbnQtPnJldmVhbEZvY3VzZWRFbGVtZW50KFNlbGVjdGlvblJl
c3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxsKTsKIAogICAgIHJldHVybiB0cnVlOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCmluZGV4IDI2NmYzMTVlNDBkZDQ2NWI0ODYx
NGE4OTY4OTBiNjc4YjU2ZGViODUuLjA3YWJhZDA2MGUwMTNlYjhiN2FjNTYwMGRkNDQxOTZkMmIx
YWE5ZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKQEAgLTUzMyw3
ICs1MzMsNyBAQCBib29sIEZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9y
ZGVyKEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbiwgS2V5YgogICAgICAgICB9CiAgICAgfQogCi0g
ICAgZWxlbWVudC0+Zm9jdXMoZmFsc2UsIGRpcmVjdGlvbik7CisgICAgZWxlbWVudC0+Zm9jdXMo
U2VsZWN0aW9uUmVzdG9yYXRpb25Nb2RlOjpTZWxlY3RBbGwsIGRpcmVjdGlvbik7CiAgICAgcmV0
dXJuIHRydWU7CiB9CiAKQEAgLTExMDcsNyArMTEwNyw3IEBAIGJvb2wgRm9jdXNDb250cm9sbGVy
OjphZHZhbmNlRm9jdXNEaXJlY3Rpb25hbGx5SW5Db250YWluZXIoTm9kZSogY29udGFpbmVyLCBj
b25zCiAgICAgRWxlbWVudCogZWxlbWVudCA9IGRvd25jYXN0PEVsZW1lbnQ+KGZvY3VzQ2FuZGlk
YXRlLmZvY3VzYWJsZU5vZGUpOwogICAgIEFTU0VSVChlbGVtZW50KTsKIAotICAgIGVsZW1lbnQt
PmZvY3VzKGZhbHNlLCBkaXJlY3Rpb24pOworICAgIGVsZW1lbnQtPmZvY3VzKFNlbGVjdGlvblJl
c3RvcmF0aW9uTW9kZTo6U2VsZWN0QWxsLCBkaXJlY3Rpb24pOwogICAgIHJldHVybiB0cnVlOwog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdl
LmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4
IDY3NjQ4YzE3ZGEyZTgwMzhlMGZiODcxNjhjNTVjZGViZDk2NjM2ZmMuLmUwZjNjMmU0MWI3YTYw
Y2VkOTVlZjAyOGU4ZTM0MDFmNmExMWZhMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC00NTcwLDcgKzQ1NzAsNyBAQCB2b2lkIFdlYlBhZ2U6
OnJlc3RvcmVTZWxlY3Rpb25JbkZvY3VzZWRFZGl0YWJsZUVsZW1lbnQoKQogCiAgICAgaWYgKGF1
dG8gZG9jdW1lbnQgPSBmcmFtZS5kb2N1bWVudCgpKSB7CiAgICAgICAgIGlmIChhdXRvIGVsZW1l
bnQgPSBkb2N1bWVudC0+Zm9jdXNlZEVsZW1lbnQoKSkKLSAgICAgICAgICAgIGVsZW1lbnQtPnVw
ZGF0ZUZvY3VzQXBwZWFyYW5jZShTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmUsIFNl
bGVjdGlvblJldmVhbE1vZGU6OkRvTm90UmV2ZWFsKTsKKyAgICAgICAgICAgIGVsZW1lbnQtPnVw
ZGF0ZUZvY3VzQXBwZWFyYW5jZShTZWxlY3Rpb25SZXN0b3JhdGlvbk1vZGU6OlJlc3RvcmVPclNl
bGVjdEFsbCwgU2VsZWN0aW9uUmV2ZWFsTW9kZTo6RG9Ob3RSZXZlYWwpOwogICAgIH0KIH0KIApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CmluZGV4IGRlOWYzYTdjZWM3ODBlMjZlYzQ0MzdmNGJmZTE5MDQ1MTlhZDViOWMuLjM1Yzc3MGIx
MzdiMjdjMDlmYmNjMDMxZDk1ZDE2Y2QwMWQyYjllM2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAor
MjAyMC0xMS0wNiAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CisKKyAgICAgICAg
YXV0b2ZvY3VzIG9mIHRleHQgaW5wdXQgc2hvdWxkIG5vdCBzZWxlY3QgdGV4dAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4NTg1CisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS82MDEzMDcwND4KKworICAgICAgICBSZXZpZXdlZCBieSBXZW5zb24gSHNp
ZWguCisKKyAgICAgICAgKiBmYXN0L2Zvcm1zL2lucHV0LXRleHQtYXV0b2ZvY3VzLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvZm9ybXMvaW5wdXQtdGV4dC1hdXRvZm9jdXMtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKworICAgICAgICAqIGZhc3QvZm9ybXMvaW5wdXQtZmlyc3QtbGV0dGVyLWVk
aXQuaHRtbDoKKyAgICAgICAgKiBmYXN0L2Zvcm1zL2lucHV0LWZpcnN0LWxldHRlci1lZGl0LWV4
cGVjdGVkLmh0bWw6CisKIDIwMjAtMTEtMDUgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5z
ZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBBbGlnbiBHQksgYW5kIGdiMTgwMzAgZW5jb2RlciBh
bmQgZGVjb2RlciB3aXRoIHNwZWNpZmljYXRpb24gYW5kIG90aGVyIGJyb3dzZXJzCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lucHV0LWZpcnN0LWxldHRlci1lZGl0LWV4cGVj
dGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lucHV0LWZpcnN0LWxldHRlci1lZGl0
LWV4cGVjdGVkLmh0bWwKaW5kZXggYWM1ZWE3ZWJlMWRhNTkwYTY0MTM2MzM5OTUxMjVjMDZmZGUx
NDJmNS4uYmZjNjk1OGYzOTE2ZTJkMDQ2NDhmYTgzNGNmMDE2MWU2N2ZlYjc4YyAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pbnB1dC1maXJzdC1sZXR0ZXItZWRpdC1leHBlY3Rl
ZC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW5wdXQtZmlyc3QtbGV0dGVyLWVk
aXQtZXhwZWN0ZWQuaHRtbApAQCAtMyw2ICszLDYgQEAKIDxoZWFkPgogPC9oZWFkPgogPGJvZHk+
Ci0gICAgPGlucHV0IHR5cGU9InRleHQiIGlkPSJ0YXJnZXQiIHZhbHVlPSJIZWxsbyIgYXV0b2Zv
Y3VzPSJhdXRvZm9jdXMiIC8+CisgICAgPGlucHV0IHR5cGU9InRleHQiIGlkPSJ0YXJnZXQiIHZh
bHVlPSJIZWxsbyIgLz4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvZm9ybXMvaW5wdXQtZmlyc3QtbGV0dGVyLWVkaXQuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvZm9ybXMvaW5wdXQtZmlyc3QtbGV0dGVyLWVkaXQuaHRtbAppbmRleCBiY2JjY2RkY2Q3ZjBk
YjJjOWQzMDA4NTBkYmNiOGMxZjY4YTUzNTBiLi4xY2VjZGEyOTE4MWJiM2Y2YWZiY2ZkMDU0YTgw
NjA2NzcxMDI1M2ZmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lucHV0LWZp
cnN0LWxldHRlci1lZGl0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pbnB1dC1m
aXJzdC1sZXR0ZXItZWRpdC5odG1sCkBAIC0xOSw3ICsxOSw3IEBAIGZ1bmN0aW9uIHRlc3QoKQog
ICAgICAgICBldmVudFNlbmRlci5rZXlEb3duKCJsIik7CiAgICAgICAgIGV2ZW50U2VuZGVyLmtl
eURvd24oImwiKTsKICAgICAgICAgZXZlbnRTZW5kZXIua2V5RG93bigibyIpOwotICAgICAgICBk
b2N1bWVudC5leGVjQ29tbWFuZCgic2VsZWN0QWxsIik7IC8vIERvZXMgc2VsZWN0QWxsIGZvciBh
bGlnbmluZyB0aGUgQGF1dG9mb2N1cyBhdHRyaWJ1dGUgb24gdGhlIGV4cGVjdGF0aW9uLgorICAg
ICAgICB0YXJnZXQuYmx1cigpOwogICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKICAg
ICB9CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lucHV0LXRleHQtYXV0
b2ZvY3VzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW5wdXQtdGV4dC1h
dXRvZm9jdXMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRiY2Q3N2M0ZGQ0NzIzNmEzMWExYzJl
OGE4YzgwODdiNWQxZWQzNmUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zv
cm1zL2lucHV0LXRleHQtYXV0b2ZvY3VzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDkgQEAKK1Rl
c3QgZm9yIDxpbnB1dCBhdXRvZm9jdXM+CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
CitQQVNTIGlucHV0Rm9jdXNDb3VudCBpcyAxCitQQVNTIGlucHV0LnNlbGVjdGlvblN0YXJ0IGlz
IDAKK1BBU1MgaW5wdXQuc2VsZWN0aW9uRW5kIGlzIDAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9mb3Jtcy9pbnB1dC10ZXh0LWF1dG9mb2N1cy5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9mb3Jtcy9pbnB1dC10ZXh0LWF1dG9mb2N1cy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk1ZjBmNTU0YzAy
ZGI1ZDJhYjhiYjQxOGRmOTQ4NmY4ZWM5N2UwMDkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Zvcm1zL2lucHV0LXRleHQtYXV0b2ZvY3VzLmh0bWwKQEAgLTAsMCArMSwzOCBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVz
b3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworPGlucHV0
IGlkPSJpbnB1dCIgdHlwZT0idGV4dCIgdmFsdWU9ImZvbyIgYXV0b2ZvY3VzPgorCis8c2NyaXB0
PgorCisvLyBpT1MgcGxhY2VzIHRoZSBjYXJldCBhdCB0aGUgZW5kIG9mIHRoZSBpbnB1dCBmaWVs
ZC4KK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgIGludGVybmFscy5zZXR0aW5ncy5zZXRFZGl0
aW5nQmVoYXZpb3IoIm1hYyIpOworCitkZXNjcmlwdGlvbigiVGVzdCBmb3IgJmx0O2lucHV0IGF1
dG9mb2N1cyZndDsiKTsKKworanNUZXN0SXNBc3luYyA9IHRydWU7CisKK2lucHV0Rm9jdXNDb3Vu
dCA9IDA7CitpbnB1dC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsIChldmVudCkgPT4geworICAg
ICsraW5wdXRGb2N1c0NvdW50OworfSk7CisKK3JlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7
CisgICAgc2hvdWxkQmUoImlucHV0Rm9jdXNDb3VudCIsICIxIik7CisgICAgc2hvdWxkQmUoImlu
cHV0LnNlbGVjdGlvblN0YXJ0IiwgIjAiKTsKKyAgICBzaG91bGRCZSgiaW5wdXQuc2VsZWN0aW9u
RW5kIiwgIjAiKTsKKworICAgIGZpbmlzaEpTVGVzdCgpOworfSk7CisKKzwvc2NyaXB0PgorCis8
c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3Jp
cHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>