<?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>224517</bug_id>
          
          <creation_ts>2021-04-13 16:26:23 -0700</creation_ts>
          <short_desc>[iOS] Make image extraction interactions work for elements inside links</short_desc>
          <delta_ts>2021-04-14 18:36:45 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Platform</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>bdakin</cc>
    
    <cc>hi</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1749925</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-13 16:26:23 -0700</bug_when>
    <thetext>.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749927</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-04-13 16:27:24 -0700</bug_when>
    <thetext>&lt;rdar://problem/76616431&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1749953</commentid>
    <comment_count>2</comment_count>
      <attachid>425936</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-13 17:52:25 -0700</bug_when>
    <thetext>Created attachment 425936
For EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750099</commentid>
    <comment_count>3</comment_count>
      <attachid>425936</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-14 07:33:38 -0700</bug_when>
    <thetext>Comment on attachment 425936
For EWS

(Pretty sure the `http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html` failure is unrelated)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750195</commentid>
    <comment_count>4</comment_count>
      <attachid>425936</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2021-04-14 10:32:23 -0700</bug_when>
    <thetext>Comment on attachment 425936
For EWS

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

&gt; Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:2698
&gt; +    info.imageElementContext = page.contextForElement(element);

Won&apos;t this be the exact same value as `elementContext` since `imagePositionInformation` is called with the same `Element` right before the `elementContext` is set?  If so, would just `isImage` be enough to indicate that the `elementContext` is for an image?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750203</commentid>
    <comment_count>5</comment_count>
      <attachid>425936</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-14 10:36:49 -0700</bug_when>
    <thetext>Comment on attachment 425936
For EWS

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

&gt;&gt; Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:2698
&gt;&gt; +    info.imageElementContext = page.contextForElement(element);
&gt; 
&gt; Won&apos;t this be the exact same value as `elementContext` since `imagePositionInformation` is called with the same `Element` right before the `elementContext` is set?  If so, would just `isImage` be enough to indicate that the `elementContext` is for an image?

They are the same in the `elementPositionInformation` case, but not in the case where the clickable element is a link (&lt;a&gt;).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750220</commentid>
    <comment_count>6</comment_count>
      <attachid>425936</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2021-04-14 10:52:11 -0700</bug_when>
    <thetext>Comment on attachment 425936
For EWS

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

r=me

&gt;&gt;&gt; Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:2698
&gt;&gt;&gt; +    info.imageElementContext = page.contextForElement(element);
&gt;&gt; 
&gt;&gt; Won&apos;t this be the exact same value as `elementContext` since `imagePositionInformation` is called with the same `Element` right before the `elementContext` is set?  If so, would just `isImage` be enough to indicate that the `elementContext` is for an image?
&gt; 
&gt; They are the same in the `elementPositionInformation` case, but not in the case where the clickable element is a link (&lt;a&gt;).

Ah I see are you referring to the `downcast&lt;HTMLImageElement&gt;(*hitTestNode)` below?  That makes sense.

NIT: In that case, are we concerned with having duplicate data in the non-link scenario?  Should we only set the `imageElementContext` when we it&apos;s for a different `Element` than the `elementContext`?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750230</commentid>
    <comment_count>7</comment_count>
      <attachid>425936</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-14 11:00:58 -0700</bug_when>
    <thetext>Comment on attachment 425936
For EWS

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

&gt;&gt;&gt;&gt; Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:2698
&gt;&gt;&gt;&gt; +    info.imageElementContext = page.contextForElement(element);
&gt;&gt;&gt; 
&gt;&gt;&gt; Won&apos;t this be the exact same value as `elementContext` since `imagePositionInformation` is called with the same `Element` right before the `elementContext` is set?  If so, would just `isImage` be enough to indicate that the `elementContext` is for an image?
&gt;&gt; 
&gt;&gt; They are the same in the `elementPositionInformation` case, but not in the case where the clickable element is a link (&lt;a&gt;).
&gt; 
&gt; Ah I see are you referring to the `downcast&lt;HTMLImageElement&gt;(*hitTestNode)` below?  That makes sense.
&gt; 
&gt; NIT: In that case, are we concerned with having duplicate data in the non-link scenario?  Should we only set the `imageElementContext` when we it&apos;s for a different `Element` than the `elementContext`?

Hm…that could be done, but I feel like that might make the logic that consults this element context more confusing, since it would need to check both the `elementContext` and `imageElementContext` (depending on the `isImage` flag). If it&apos;s alright, I think I would prefer to keep `imageElementContext` the way it is in this patch, to make things a bit simpler.

(I&apos;ll update the patch to add a test for the link clicking behavior, as we discussed on slack!)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750249</commentid>
    <comment_count>8</comment_count>
      <attachid>426023</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-14 11:35:35 -0700</bug_when>
    <thetext>Created attachment 426023
Add a new test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750250</commentid>
    <comment_count>9</comment_count>
      <attachid>426024</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-04-14 11:36:31 -0700</bug_when>
    <thetext>Created attachment 426024
Add a new test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1750419</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-14 17:11:40 -0700</bug_when>
    <thetext>Committed r275980 (236532@main): &lt;https://commits.webkit.org/236532@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 426024.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425936</attachid>
            <date>2021-04-13 17:52:25 -0700</date>
            <delta_ts>2021-04-14 11:35:34 -0700</delta_ts>
            <desc>For EWS</desc>
            <filename>bug-224517-20210413175224.patch</filename>
            <type>text/plain</type>
            <size>13314</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1OTEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGQyYjc4ZjMzNTNhYmMwNDk4
NTU3ZGQ1YjMzNDQ4MWI4YjljNzBjOGEuLmUyM2JmNTFkOGIwNDljZDdhMjA3YjU2ZjgyMmI5Mjhm
ZTY0NTI2ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjEtMDQtMTMgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gTWFrZSBpbWFn
ZSBleHRyYWN0aW9uIGludGVyYWN0aW9ucyB3b3JrIGZvciBlbGVtZW50cyBpbnNpZGUgbGlua3MK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDUxNwor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzY2MTY0MzE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2VlIGNvbW1lbnRzIGJlbG93IGZvciBtb3JlIGRl
dGFpbHMuCisKKyAgICAgICAgVGVzdDogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mv
c2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS1pbnNpZGUtbGluay5odG1sCisKKyAgICAgICAg
KiBTaGFyZWQvaW9zL0ludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uLmg6CisgICAgICAg
ICogU2hhcmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbi5tbToKKyAgICAg
ICAgKFdlYktpdDo6SW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb246OmVuY29kZSBjb25z
dCk6CisgICAgICAgIChXZWJLaXQ6OkludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uOjpk
ZWNvZGUpOgorCisgICAgICAgIEFkZCBgaW1hZ2VFbGVtZW50Q29udGV4dGAsIGFuIG9wdGlvbmFs
IGVsZW1lbnQgY29udGV4dCB0aGF0IGV4aXN0cyBhbG9uZ3NpZGUgYGVsZW1lbnRDb250ZXh0YC4g
VGhpcyBpcyBuZWNlc3NhcnkKKyAgICAgICAgaW4gdGhlIGNhc2Ugd2hlcmUgdGhlIHVzZXIgaXMg
aW50ZXJhY3Rpbmcgd2l0aCBhbiBpbWFnZSBlbGVtZW50IGluc2lkZSBhIGxpbmsgZWxlbWVudCBi
ZWNhdXNlIHdlIG5lZWQgdG8ga25vdworICAgICAgICBhYm91dCB0aGUgaW5uZXIgaGl0LXRlc3Rl
ZCBpbWFnZSBlbGVtZW50IGZvciB0aGUgcHVycG9zZXMgb2YgaW1hZ2UgZXh0cmFjdGlvbiwgYnV0
IHRoZSBjbGlja2FibGUgZWxlbWVudCB3ZSB1c2UKKyAgICAgICAgZm9yIHRoZSBgZWxlbWVudENv
bnRleHRgIGlzIHRoZSBsaW5rIGVsZW1lbnQgaW5zdGVhZC4KKworICAgICAgICAqIFNoYXJlZC9p
b3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvblJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViS2l0OjpJ
bnRlcmFjdGlvbkluZm9ybWF0aW9uUmVxdWVzdDo6aXNWYWxpZEZvclJlcXVlc3QgY29uc3QpOgor
CisgICAgICAgIE1ha2UgYSBzbGlnaHQgYWRqdXN0bWVudCBoZXJlIC0gc2luY2UgYGluY2x1ZGVJ
bWFnZURhdGFgIG1heSByZXF1aXJlIGltYWdlIGJpdG1hcCBkYXRhIGluIGNhc2VzIHdoZXJlIG9u
bHkgdGhlCisgICAgICAgIGBpbmNsdWRlU25hcHNob3RgIGZsYWcgaXMgc2V0LCBpdCdzIGluY29y
cmVjdCB0byBhc3N1bWUgdGhhdCBzZXR0aW5nIGBpbmNsdWRlU25hcHNob3RgIGZ1bGZpbGxzIGFs
bCB0aGUgbmVlZHMgb2YKKyAgICAgICAgYGluY2x1ZGVJbWFnZURhdGFgLgorCisgICAgICAgICog
VUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW06CisgICAgICAgICgtW1dL
Q29udGVudFZpZXcgaGFzU2VsZWN0YWJsZVBvc2l0aW9uQXRQb2ludDpdKToKKyAgICAgICAgKC1b
V0tDb250ZW50VmlldyB0ZXh0SW50ZXJhY3Rpb25HZXN0dXJlOnNob3VsZEJlZ2luQXRQb2ludDpd
KToKKworICAgICAgICBDb25zdWx0IGBpbWFnZUVsZW1lbnRDb250ZXh0YCBpbnN0ZWFkIG9mIGBl
bGVtZW50Q29udGV4dGAuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBh
Z2VJT1MubW06CisgICAgICAgIChXZWJLaXQ6OmltYWdlUG9zaXRpb25JbmZvcm1hdGlvbik6CisK
KyAgICAgICAgU2V0IHRoZSBwb3NpdGlvbiBpbmZvcm1hdGlvbidzIGBpbWFnZUVsZW1lbnRDb250
ZXh0YC4KKworICAgICAgICAoV2ViS2l0OjplbGVtZW50UG9zaXRpb25JbmZvcm1hdGlvbik6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnBvc2l0aW9uSW5mb3JtYXRpb24pOgorCisgICAgICAg
IE1ha2UgYSBjb3VwbGUgb2YgYWRqdXN0bWVudHMgaGVyZTogKDEpIGF2b2lkIHJlcXVlc3Rpbmcg
bGluayBwb3NpdGlvbiBpbmZvcm1hdGlvbiBpZiB0aGUgaGl0LXRlc3RlZCBub2RlIGlzIHRleHQK
KyAgICAgICAgaW5zaWRlIG9mIGFuIGltYWdlIG92ZXJsYXkuICgyKSBJZiB0aGUgYGluY2x1ZGVJ
bWFnZURhdGFgIHJlcXVlc3QgZmxhZyBpcyBzZXQgYW5kIHRoZSBoaXQtdGVzdGVkIG5vZGUgaXMg
YW4KKyAgICAgICAgaW1hZ2UgZWxlbWVudCBidXQgYGlzSW1hZ2VgIGlzIG5vdCBzZXQsIHRoZW4g
YWRkaXRpb25hbGx5IHN1cHBseSB0aGUgaW1hZ2UgZGF0YSB1c2luZyB0aGUKKyAgICAgICAgYGlt
YWdlUG9zaXRpb25JbmZvcm1hdGlvbmAgaGVscGVyIGZ1bmN0aW9uLiBUaGlzIGVuc3VyZXMgdGhh
dCBpbiB0aGUgY2FzZSB3aGVyZSB3ZSdyZSByZXF1ZXN0aW5nIGltYWdlIGRhdGEgYW5kCisgICAg
ICAgIHRoZSB1c2VyIGlzIGludGVyYWN0aW5nIHdpdGggYW4gaW1hZ2UgZWxlbWVudCBpbnNpZGUg
YSBsaW5rLCB3ZSdsbCBzZW5kIGRlY29kZWQgaW1hZ2UgZGF0YSBiYWNrIHRvIHRoZSBVSQorICAg
ICAgICBwcm9jZXNzLgorCiAyMDIxLTA0LTEzICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhA
YXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gUmVmYWN0b3IgbG9naWMgZm9yIHByZXNlbnRp
bmcgdGhlIHNoYXJlZCBRTFByZXZpZXdQYW5lbCB3aGVuIHJldmVhbGluZyBhbiBpbWFnZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvaW9zL0ludGVyYWN0aW9uSW5mb3JtYXRpb25B
dFBvc2l0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1h
dGlvbkF0UG9zaXRpb24uaAppbmRleCBhZWUzNzgzZmViMmE4OGJmMjdlNDliMTM5NjdjODVmNjRh
NzMwNzM5Li43M2JjYWJkMzRmOTA2NjVmYWU0ZThkZTE1ZjdiYmRiMDc4MTRjODM4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9z
aXRpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1h
dGlvbkF0UG9zaXRpb24uaApAQCAtOTcsNiArOTcsNyBAQCBzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZv
cm1hdGlvbkF0UG9zaXRpb24gewogI2VuZGlmCiAKICAgICBPcHRpb25hbDxXZWJDb3JlOjpFbGVt
ZW50Q29udGV4dD4gZWxlbWVudENvbnRleHQ7CisgICAgT3B0aW9uYWw8V2ViQ29yZTo6RWxlbWVu
dENvbnRleHQ+IGltYWdlRWxlbWVudENvbnRleHQ7CiAKICAgICAvLyBDb3B5IGNvbXBhdGlibGUg
b3B0aW9uYWwgYml0cyBmb3J3YXJkIChmb3IgZXhhbXBsZSwgaWYgd2UgaGF2ZSBhIEludGVyYWN0
aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uCiAgICAgLy8gd2l0aCBzbmFwc2hvdHMgaW4gaXQsIGFu
ZCBwZXJmb3JtIGFub3RoZXIgcmVxdWVzdCBmb3IgdGhlIHNhbWUgcG9pbnQgd2l0aG91dCByZXF1
ZXN0aW5nIHRoZSBzbmFwc2hvdHMsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9p
b3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1No
YXJlZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24ubW0KaW5kZXggMDE1OWQ4
OWNhMDBjZGE4MmY1N2IxZmJiMjYyMjA3ZTEwZTdjN2QwZi4uMTU3MjViYzZhZGM3MTA4N2UyMDVl
MTAzZGZlOGMxYmQzNjVjM2FjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvaW9z
L0ludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbi5tbQpAQCAtODgsNiAr
ODgsNyBAQCB2b2lkIEludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uOjplbmNvZGUoSVBD
OjpFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogICAgIGVuY29kZXIgPDwgc2hvdWxkTm90VXNlSUJl
YW1JbkVkaXRhYmxlQ29udGVudDsKICAgICBlbmNvZGVyIDw8IGlzSW1hZ2VPdmVybGF5VGV4dDsK
ICAgICBlbmNvZGVyIDw8IGVsZW1lbnRDb250ZXh0OworICAgIGVuY29kZXIgPDwgaW1hZ2VFbGVt
ZW50Q29udGV4dDsKIH0KIAogYm9vbCBJbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbjo6
ZGVjb2RlKElQQzo6RGVjb2RlciYgZGVjb2RlciwgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9z
aXRpb24mIHJlc3VsdCkKQEAgLTIxNSw2ICsyMTYsOSBAQCBib29sIEludGVyYWN0aW9uSW5mb3Jt
YXRpb25BdFBvc2l0aW9uOjpkZWNvZGUoSVBDOjpEZWNvZGVyJiBkZWNvZGVyLCBJbnRlcmFjdGlv
bgogICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LmVsZW1lbnRDb250ZXh0KSkKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogCisgICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQuaW1hZ2VF
bGVtZW50Q29udGV4dCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKwogICAgIHJldHVybiB0cnVl
OwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9pb3MvSW50ZXJhY3Rpb25J
bmZvcm1hdGlvblJlcXVlc3QuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvaW9zL0ludGVyYWN0
aW9uSW5mb3JtYXRpb25SZXF1ZXN0LmNwcAppbmRleCBkZWM0NjVmMmZkNzk0OGQ3OGM0ZjJjMDNj
YTM5NjFmM2Q5ZGM2NTY3Li45ZTAwMWRhODhlMzE3NjY5MzU4NWE2ZTBhY2EyOWQ4NWIxYjU5ZWVk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1h
dGlvblJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2lvcy9JbnRlcmFjdGlv
bkluZm9ybWF0aW9uUmVxdWVzdC5jcHAKQEAgLTg4LDggKzg4LDcgQEAgYm9vbCBJbnRlcmFjdGlv
bkluZm9ybWF0aW9uUmVxdWVzdDo6aXNWYWxpZEZvclJlcXVlc3QoY29uc3QgSW50ZXJhY3Rpb25J
bmZvcm1hdGkKICAgICBpZiAob3RoZXIuaW5jbHVkZUhhc0RvdWJsZUNsaWNrSGFuZGxlciAmJiAh
aW5jbHVkZUhhc0RvdWJsZUNsaWNrSGFuZGxlcikKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0g
ICAgLy8gSWYgYGluY2x1ZGVTbmFwc2hvdGAgaXMgc2V0LCB0aGVuIHdlIHdpbGwgaW5jbHVkZSBk
YXRhIGZvciBpbWFnZXMgYXMgd2VsbC4KLSAgICBpZiAob3RoZXIuaW5jbHVkZUltYWdlRGF0YSAm
JiAhaW5jbHVkZUltYWdlRGF0YSAmJiAhaW5jbHVkZVNuYXBzaG90KQorICAgIGlmIChvdGhlci5p
bmNsdWRlSW1hZ2VEYXRhICYmICFpbmNsdWRlSW1hZ2VEYXRhKQogICAgICAgICByZXR1cm4gZmFs
c2U7CiAKICAgICBpZiAob3RoZXIubGlua0luZGljYXRvclNob3VsZEhhdmVMZWdhY3lNYXJnaW5z
ICE9IGxpbmtJbmRpY2F0b3JTaG91bGRIYXZlTGVnYWN5TWFyZ2lucykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0gYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tCmlu
ZGV4IGMyZGI5ZDFlOGJmYTZhZTcxNjIyMjQyZTYxMmVhODM1NWFjMWEzYjUuLjhjZmMxNzdmMDZm
NTdjMjJkMTBkZWUxYWNmMTRhODY2ZmUzYmJlZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQpAQCAtMjczMCw3
ICsyNzMwLDcgQEAgLSAoQk9PTCloYXNTZWxlY3RhYmxlUG9zaXRpb25BdFBvaW50OihDR1BvaW50
KXBvaW50CiAgICAgICAgIHJldHVybiBOTzsKIAogI2lmIEVOQUJMRShJTUFHRV9FWFRSQUNUSU9O
KQotICAgIGlmIChfZWxlbWVudFBlbmRpbmdJbWFnZUV4dHJhY3Rpb24gJiYgX3Bvc2l0aW9uSW5m
b3JtYXRpb24uZWxlbWVudENvbnRleHQgPT0gX2VsZW1lbnRQZW5kaW5nSW1hZ2VFeHRyYWN0aW9u
KQorICAgIGlmIChfZWxlbWVudFBlbmRpbmdJbWFnZUV4dHJhY3Rpb24gJiYgX3Bvc2l0aW9uSW5m
b3JtYXRpb24uaW1hZ2VFbGVtZW50Q29udGV4dCA9PSBfZWxlbWVudFBlbmRpbmdJbWFnZUV4dHJh
Y3Rpb24pCiAgICAgICAgIHJldHVybiBZRVM7CiAjZW5kaWYKIApAQCAtMjgwOCw3ICsyODA4LDcg
QEAgLSAoQk9PTCl0ZXh0SW50ZXJhY3Rpb25HZXN0dXJlOihVSVdLR2VzdHVyZVR5cGUpZ2VzdHVy
ZSBzaG91bGRCZWdpbkF0UG9pbnQ6KENHUG8KICNlbmRpZgogCiAjaWYgRU5BQkxFKElNQUdFX0VY
VFJBQ1RJT04pCi0gICAgaWYgKF9lbGVtZW50UGVuZGluZ0ltYWdlRXh0cmFjdGlvbiAmJiBfcG9z
aXRpb25JbmZvcm1hdGlvbi5lbGVtZW50Q29udGV4dCA9PSBfZWxlbWVudFBlbmRpbmdJbWFnZUV4
dHJhY3Rpb24pCisgICAgaWYgKF9lbGVtZW50UGVuZGluZ0ltYWdlRXh0cmFjdGlvbiAmJiBfcG9z
aXRpb25JbmZvcm1hdGlvbi5pbWFnZUVsZW1lbnRDb250ZXh0ID09IF9lbGVtZW50UGVuZGluZ0lt
YWdlRXh0cmFjdGlvbikKICAgICAgICAgcmV0dXJuIFlFUzsKICNlbmRpZgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbSBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCmluZGV4IDFh
ZmYwOTQxYjkzZWExNjE1ZDU2NWEzYjgxY2U4OTc3MDMxMjkyMGMuLjAxZWI2YzM0MWMxM2RlNzc2
MGNjYWYzMDc1NzE5MWNmNWIxOTg5NGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCkBAIC0yNjk0LDYgKzI2OTQsOCBAQCBzdGF0
aWMgdm9pZCBpbWFnZVBvc2l0aW9uSW5mb3JtYXRpb24oV2ViUGFnZSYgcGFnZSwgRWxlbWVudCYg
ZWxlbWVudCwgY29uc3QgSW50ZQogCiAgICAgaWYgKHJlcXVlc3QuaW5jbHVkZVNuYXBzaG90IHx8
IHJlcXVlc3QuaW5jbHVkZUltYWdlRGF0YSkKICAgICAgICAgaW5mby5pbWFnZSA9IGNyZWF0ZVNo
YXJlYWJsZUJpdG1hcChyZW5kZXJJbWFnZSwgc2NyZWVuU2l6ZSgpICogcGFnZS5jb3JlUGFnZSgp
LT5kZXZpY2VTY2FsZUZhY3RvcigpKTsKKworICAgIGluZm8uaW1hZ2VFbGVtZW50Q29udGV4dCA9
IHBhZ2UuY29udGV4dEZvckVsZW1lbnQoZWxlbWVudCk7CiB9CiAKIHN0YXRpYyB2b2lkIGJvdW5k
c1Bvc2l0aW9uSW5mb3JtYXRpb24oUmVuZGVyT2JqZWN0JiByZW5kZXJlciwgSW50ZXJhY3Rpb25J
bmZvcm1hdGlvbkF0UG9zaXRpb24mIGluZm8pCkBAIC0yNzE5LDYgKzI3MjEsNyBAQCBzdGF0aWMg
dm9pZCBlbGVtZW50UG9zaXRpb25JbmZvcm1hdGlvbihXZWJQYWdlJiBwYWdlLCBFbGVtZW50JiBl
bGVtZW50LCBjb25zdCBJbgogCiAgICAgaW5mby5pc0VsZW1lbnQgPSB0cnVlOwogICAgIGluZm8u
aWRBdHRyaWJ1dGUgPSBlbGVtZW50LmdldElkQXR0cmlidXRlKCk7CisgICAgaW5mby5pc0ltYWdl
T3ZlcmxheVRleHQgPSBpbm5lck5vblNoYXJlZE5vZGUgJiYgSFRNTEVsZW1lbnQ6OmlzSW1hZ2VP
dmVybGF5VGV4dCgqaW5uZXJOb25TaGFyZWROb2RlKTsKIAogICAgIGluZm8udGl0bGUgPSBlbGVt
ZW50LmF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRpb24oSFRNTE5hbWVzOjp0aXRsZUF0dHIp
LnN0cmluZygpOwogICAgIGlmIChsaW5rRWxlbWVudCAmJiBpbmZvLnRpdGxlLmlzRW1wdHkoKSkK
QEAgLTI3MjYsNyArMjcyOSw3IEBAIHN0YXRpYyB2b2lkIGVsZW1lbnRQb3NpdGlvbkluZm9ybWF0
aW9uKFdlYlBhZ2UmIHBhZ2UsIEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IEluCiAgICAgaWYgKGVs
ZW1lbnQucmVuZGVyZXIoKSkKICAgICAgICAgaW5mby50b3VjaENhbGxvdXRFbmFibGVkID0gZWxl
bWVudC5yZW5kZXJlcigpLT5zdHlsZSgpLnRvdWNoQ2FsbG91dEVuYWJsZWQoKTsKIAotICAgIGlm
IChsaW5rRWxlbWVudCkgeworICAgIGlmIChsaW5rRWxlbWVudCAmJiAhaW5mby5pc0ltYWdlT3Zl
cmxheVRleHQpIHsKICAgICAgICAgaW5mby5pc0xpbmsgPSB0cnVlOwogICAgICAgICBpbmZvLnVy
bCA9IGxpbmtFbGVtZW50LT5kb2N1bWVudCgpLmNvbXBsZXRlVVJMKHN0cmlwTGVhZGluZ0FuZFRy
YWlsaW5nSFRNTFNwYWNlcyhsaW5rRWxlbWVudC0+Z2V0QXR0cmlidXRlKEhUTUxOYW1lczo6aHJl
ZkF0dHIpKSk7CiAKQEAgLTI3NDYsOSArMjc0OSw4IEBAIHN0YXRpYyB2b2lkIGVsZW1lbnRQb3Np
dGlvbkluZm9ybWF0aW9uKFdlYlBhZ2UmIHBhZ2UsIEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IElu
CiAKICAgICBpZiAoYXV0byogcmVuZGVyZXIgPSBlbGVtZW50LnJlbmRlcmVyKCkpIHsKICAgICAg
ICAgYm9vbCBzaG91bGRDb2xsZWN0SW1hZ2VQb3NpdGlvbkluZm9ybWF0aW9uID0gcmVuZGVyZXIt
PmlzUmVuZGVySW1hZ2UoKTsKLSAgICAgICAgaWYgKHNob3VsZENvbGxlY3RJbWFnZVBvc2l0aW9u
SW5mb3JtYXRpb24gJiYgaW5uZXJOb25TaGFyZWROb2RlICYmIEhUTUxFbGVtZW50Ojppc0ltYWdl
T3ZlcmxheVRleHQoKmlubmVyTm9uU2hhcmVkTm9kZSkpIHsKKyAgICAgICAgaWYgKHNob3VsZENv
bGxlY3RJbWFnZVBvc2l0aW9uSW5mb3JtYXRpb24gJiYgaW5mby5pc0ltYWdlT3ZlcmxheVRleHQp
IHsKICAgICAgICAgICAgIHNob3VsZENvbGxlY3RJbWFnZVBvc2l0aW9uSW5mb3JtYXRpb24gPSBm
YWxzZTsKLSAgICAgICAgICAgIGluZm8uaXNJbWFnZU92ZXJsYXlUZXh0ID0gdHJ1ZTsKICAgICAg
ICAgICAgIGlmIChyZXF1ZXN0LmluY2x1ZGVJbWFnZURhdGEpIHsKICAgICAgICAgICAgICAgICBp
ZiAoYXV0byByZW5kZXJlckFuZEltYWdlID0gaW1hZ2VSZW5kZXJlckFuZEltYWdlKGVsZW1lbnQp
KSB7CiAgICAgICAgICAgICAgICAgICAgIGF1dG8mIFtyZW5kZXJJbWFnZSwgaW1hZ2VdID0gKnJl
bmRlcmVyQW5kSW1hZ2U7CkBAIC0yOTYwLDE0ICsyOTYyLDE4IEBAIEludGVyYWN0aW9uSW5mb3Jt
YXRpb25BdFBvc2l0aW9uIFdlYlBhZ2U6OnBvc2l0aW9uSW5mb3JtYXRpb24oY29uc3QgSW50ZXJh
Y3Rpb25JCiAgICAgaWYgKG1fZm9jdXNlZEVsZW1lbnQpCiAgICAgICAgIGZvY3VzZWRFbGVtZW50
UG9zaXRpb25JbmZvcm1hdGlvbigqdGhpcywgKm1fZm9jdXNlZEVsZW1lbnQsIHJlcXVlc3QsIGlu
Zm8pOwogCisgICAgYXV0byBoaXRUZXN0Tm9kZSA9IG1ha2VSZWZQdHIoaGl0VGVzdFJlc3VsdC5p
bm5lck5vblNoYXJlZE5vZGUoKSk7CiAgICAgaWYgKGlzPEVsZW1lbnQ+KG5vZGVSZXNwb25kaW5n
VG9DbGlja0V2ZW50cykpIHsKICAgICAgICAgYXV0byYgZWxlbWVudCA9IGRvd25jYXN0PEVsZW1l
bnQ+KCpub2RlUmVzcG9uZGluZ1RvQ2xpY2tFdmVudHMpOwotICAgICAgICBlbGVtZW50UG9zaXRp
b25JbmZvcm1hdGlvbigqdGhpcywgZWxlbWVudCwgcmVxdWVzdCwgaGl0VGVzdFJlc3VsdC5pbm5l
ck5vblNoYXJlZE5vZGUoKSwgaW5mbyk7CisgICAgICAgIGVsZW1lbnRQb3NpdGlvbkluZm9ybWF0
aW9uKCp0aGlzLCBlbGVtZW50LCByZXF1ZXN0LCBoaXRUZXN0Tm9kZS5nZXQoKSwgaW5mbyk7CiAK
ICAgICAgICAgaWYgKGluZm8uaXNMaW5rICYmICFpbmZvLmlzSW1hZ2UgJiYgcmVxdWVzdC5pbmNs
dWRlU25hcHNob3QpCiAgICAgICAgICAgICBpbmZvLmltYWdlID0gc2hhcmVhYmxlQml0bWFwU25h
cHNob3RGb3JOb2RlKGVsZW1lbnQpOwogICAgIH0KIAorICAgIGlmICghaW5mby5pc0ltYWdlICYm
IHJlcXVlc3QuaW5jbHVkZUltYWdlRGF0YSAmJiBpczxIVE1MSW1hZ2VFbGVtZW50PihoaXRUZXN0
Tm9kZSkpCisgICAgICAgIGltYWdlUG9zaXRpb25JbmZvcm1hdGlvbigqdGhpcywgZG93bmNhc3Q8
SFRNTEltYWdlRWxlbWVudD4oKmhpdFRlc3ROb2RlKSwgcmVxdWVzdCwgaW5mbyk7CisKICAgICBp
ZiAoIShpbmZvLmlzTGluayB8fCBpbmZvLmlzSW1hZ2UpKQogICAgICAgICBzZWxlY3Rpb25Qb3Np
dGlvbkluZm9ybWF0aW9uKCp0aGlzLCByZXF1ZXN0LCBpbmZvKTsKIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGZhMWQxNjEy
N2MxNDNhNmU1M2M1YjhkNjhmZmUxYTA4MzhkNzRkMWYuLmJjMDQ3ZTIyOTQxZDA5NGNjMTdjZTM2
Y2RiNGQzNzI5YzliZjZiYTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAyMS0wNC0xMyAgV2Vu
c29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBNYWtl
IGltYWdlIGV4dHJhY3Rpb24gaW50ZXJhY3Rpb25zIHdvcmsgZm9yIGVsZW1lbnRzIGluc2lkZSBs
aW5rcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0
NTE3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NjYxNjQzMT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYSB0ZXN0IHRoYXQgc2VsZWN0cyBp
bWFnZSBvdmVybGF5IHRleHQgZm9yIGFuIGltYWdlIGVsZW1lbnQgaW5zaWRlIGEgbGluay4KKwor
ICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWlu
LWltYWdlLW92ZXJsYXktaW5zaWRlLWxpbmstZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1v
dmVybGF5LWluc2lkZS1saW5rLmh0bWw6IEFkZGVkLgorCiAyMDIxLTA0LTEzICBaaXJhbiBTdW4g
IDx6c3VuQGlnYWxpYS5jb20+CiAKICAgICAgICAgW2Nzcy1ncmlkXSBJbmNvcnJlY3QgdHJhY2sg
c2l6aW5nIHdoZW4gdXNpbmcgcmVsYXRpdmUgc2l6ZWQgaXRlbXMgaW4gJ2F1dG8nIGNvbHVtbiB0
cmFja3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rp
b24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXktaW5zaWRlLWxpbmstZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0
LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS1pbnNpZGUtbGluay1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYzQxYWE0MmY2ZTY5MjQzYWI3NDEyYzA4YzM2Nzk2YzI2MTU2ZTNiNwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVj
dC13b3JkLWluLWltYWdlLW92ZXJsYXktaW5zaWRlLWxpbmstZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsNSBAQAorUEFTUyBzZWxlY3Rpb25SZWN0cy5sZW5ndGggaXMgMQorUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdl
LW92ZXJsYXktaW5zaWRlLWxpbmsuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdl
LWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXktaW5zaWRlLWxpbmsu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi40YzVhZjk0ODI0MDgwM2Q5NmVlNGExZmIyNzcxOTE1ODcxZGIxNDIx
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFj
dGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS1pbnNpZGUtbGluay5odG1sCkBA
IC0wLDAgKzEsNDIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5
bGU+CitpbWcgeworICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICB0b3A6IDA7CisgICAgbGVm
dDogMDsKK30KKworYSB7CisgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOworfQorPC9zdHlsZT4K
KzwvaGVhZD4KKzxib2R5PgorPGEgaHJlZj0iaHR0cDovL2xvY2FsaG9zdDo1NDMyMSIgb25jbGlj
az0iZXZlbnQucHJldmVudERlZmF1bHQoKSI+CisgICAgPGltZyBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9ncmVlbi00MDB4NDAwLnBuZyI+PC9pbWc+Cis8L2E+Cis8c2NyaXB0PgoranNUZXN0SXNBc3lu
YyA9IHRydWU7CithZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgYXN5bmMgKCkgPT4geworICAgIGxl
dCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImltZyIpOworICAgIGludGVybmFscy5p
bnN0YWxsSW1hZ2VPdmVybGF5KGltYWdlLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRleHQg
OiAiaGVsbG8iLAorICAgICAgICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAs
IDApLAorICAgICAgICAgICAgdG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwK
KyAgICAgICAgICAgIGJvdHRvbVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC4yNSks
CisgICAgICAgICAgICBib3R0b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC4yNSks
CisgICAgICAgIH0KKyAgICBdKTsKKyAgICBhd2FpdCBVSUhlbHBlci5sb25nUHJlc3NBdFBvaW50
KDIwMCwgNTApOworICAgIHNlbGVjdGlvblJlY3RzID0gYXdhaXQgVUlIZWxwZXIud2FpdEZvclNl
bGVjdGlvblRvQXBwZWFyKCk7CisgICAgc2hvdWxkQmUoInNlbGVjdGlvblJlY3RzLmxlbmd0aCIs
ICIxIik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9KTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9o
dG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426023</attachid>
            <date>2021-04-14 11:35:35 -0700</date>
            <delta_ts>2021-04-14 11:36:29 -0700</delta_ts>
            <desc>Add a new test</desc>
            <filename>bug-224517-20210414113535.patch</filename>
            <type>text/plain</type>
            <size>15899</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1OTEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGQyYjc4ZjMzNTNhYmMwNDk4
NTU3ZGQ1YjMzNDQ4MWI4YjljNzBjOGEuLjhlZWRkM2RhMjViOTc2NDMxMTljODg2NTNiMGNiMjk5
N2MwYjYwNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTQgQEAKKzIwMjEtMDQtMTMgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gTWFrZSBpbWFn
ZSBleHRyYWN0aW9uIGludGVyYWN0aW9ucyB3b3JrIGZvciBlbGVtZW50cyBpbnNpZGUgbGlua3MK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDUxNwor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzY2MTY0MzE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2VlIGNvbW1lbnRzIGJlbG93IGZvciBtb3JlIGRl
dGFpbHMuCisKKyAgICAgICAgVGVzdHM6ICBmYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2Ns
aWNrLWxpbmstd2l0aC1pbWFnZS1vdmVybGF5Lmh0bWwKKyAgICAgICAgICAgICAgICBmYXN0L2lt
YWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5LWlu
c2lkZS1saW5rLmh0bWwKKworICAgICAgICAqIFNoYXJlZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1h
dGlvbkF0UG9zaXRpb24uaDoKKyAgICAgICAgKiBTaGFyZWQvaW9zL0ludGVyYWN0aW9uSW5mb3Jt
YXRpb25BdFBvc2l0aW9uLm1tOgorICAgICAgICAoV2ViS2l0OjpJbnRlcmFjdGlvbkluZm9ybWF0
aW9uQXRQb3NpdGlvbjo6ZW5jb2RlIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6SW50ZXJhY3Rp
b25JbmZvcm1hdGlvbkF0UG9zaXRpb246OmRlY29kZSk6CisKKyAgICAgICAgQWRkIGBpbWFnZUVs
ZW1lbnRDb250ZXh0YCwgYW4gb3B0aW9uYWwgZWxlbWVudCBjb250ZXh0IHRoYXQgZXhpc3RzIGFs
b25nc2lkZSBgZWxlbWVudENvbnRleHRgLiBUaGlzIGlzIG5lY2Vzc2FyeQorICAgICAgICBpbiB0
aGUgY2FzZSB3aGVyZSB0aGUgdXNlciBpcyBpbnRlcmFjdGluZyB3aXRoIGFuIGltYWdlIGVsZW1l
bnQgaW5zaWRlIGEgbGluayBlbGVtZW50IGJlY2F1c2Ugd2UgbmVlZCB0byBrbm93CisgICAgICAg
IGFib3V0IHRoZSBpbm5lciBoaXQtdGVzdGVkIGltYWdlIGVsZW1lbnQgZm9yIHRoZSBwdXJwb3Nl
cyBvZiBpbWFnZSBleHRyYWN0aW9uLCBidXQgdGhlIGNsaWNrYWJsZSBlbGVtZW50IHdlIHVzZQor
ICAgICAgICBmb3IgdGhlIGBlbGVtZW50Q29udGV4dGAgaXMgdGhlIGxpbmsgZWxlbWVudCBpbnN0
ZWFkLgorCisgICAgICAgICogU2hhcmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0aW9uUmVxdWVz
dC5jcHA6CisgICAgICAgIChXZWJLaXQ6OkludGVyYWN0aW9uSW5mb3JtYXRpb25SZXF1ZXN0Ojpp
c1ZhbGlkRm9yUmVxdWVzdCBjb25zdCk6CisKKyAgICAgICAgTWFrZSBhIHNsaWdodCBhZGp1c3Rt
ZW50IGhlcmUgLSBzaW5jZSBgaW5jbHVkZUltYWdlRGF0YWAgbWF5IHJlcXVpcmUgaW1hZ2UgYml0
bWFwIGRhdGEgaW4gY2FzZXMgd2hlcmUgb25seSB0aGUKKyAgICAgICAgYGluY2x1ZGVTbmFwc2hv
dGAgZmxhZyBpcyBzZXQsIGl0J3MgaW5jb3JyZWN0IHRvIGFzc3VtZSB0aGF0IHNldHRpbmcgYGlu
Y2x1ZGVTbmFwc2hvdGAgZnVsZmlsbHMgYWxsIHRoZSBuZWVkcyBvZgorICAgICAgICBgaW5jbHVk
ZUltYWdlRGF0YWAuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRl
cmFjdGlvbi5tbToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyBoYXNTZWxlY3RhYmxlUG9zaXRp
b25BdFBvaW50Ol0pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IHRleHRJbnRlcmFjdGlvbkdl
c3R1cmU6c2hvdWxkQmVnaW5BdFBvaW50Ol0pOgorCisgICAgICAgIENvbnN1bHQgYGltYWdlRWxl
bWVudENvbnRleHRgIGluc3RlYWQgb2YgYGVsZW1lbnRDb250ZXh0YC4KKworICAgICAgICAqIFdl
YlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbToKKyAgICAgICAgKFdlYktpdDo6aW1h
Z2VQb3NpdGlvbkluZm9ybWF0aW9uKToKKworICAgICAgICBTZXQgdGhlIHBvc2l0aW9uIGluZm9y
bWF0aW9uJ3MgYGltYWdlRWxlbWVudENvbnRleHRgLgorCisgICAgICAgIChXZWJLaXQ6OmVsZW1l
bnRQb3NpdGlvbkluZm9ybWF0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6cG9zaXRp
b25JbmZvcm1hdGlvbik6CisKKyAgICAgICAgTWFrZSBhIGNvdXBsZSBvZiBhZGp1c3RtZW50cyBo
ZXJlOiAoMSkgYXZvaWQgcmVxdWVzdGluZyBsaW5rIHBvc2l0aW9uIGluZm9ybWF0aW9uIGlmIHRo
ZSBoaXQtdGVzdGVkIG5vZGUgaXMgdGV4dAorICAgICAgICBpbnNpZGUgb2YgYW4gaW1hZ2Ugb3Zl
cmxheS4gKDIpIElmIHRoZSBgaW5jbHVkZUltYWdlRGF0YWAgcmVxdWVzdCBmbGFnIGlzIHNldCBh
bmQgdGhlIGhpdC10ZXN0ZWQgbm9kZSBpcyBhbgorICAgICAgICBpbWFnZSBlbGVtZW50IGJ1dCBg
aXNJbWFnZWAgaXMgbm90IHNldCwgdGhlbiBhZGRpdGlvbmFsbHkgc3VwcGx5IHRoZSBpbWFnZSBk
YXRhIHVzaW5nIHRoZQorICAgICAgICBgaW1hZ2VQb3NpdGlvbkluZm9ybWF0aW9uYCBoZWxwZXIg
ZnVuY3Rpb24uIFRoaXMgZW5zdXJlcyB0aGF0IGluIHRoZSBjYXNlIHdoZXJlIHdlJ3JlIHJlcXVl
c3RpbmcgaW1hZ2UgZGF0YSBhbmQKKyAgICAgICAgdGhlIHVzZXIgaXMgaW50ZXJhY3Rpbmcgd2l0
aCBhbiBpbWFnZSBlbGVtZW50IGluc2lkZSBhIGxpbmssIHdlJ2xsIHNlbmQgZGVjb2RlZCBpbWFn
ZSBkYXRhIGJhY2sgdG8gdGhlIFVJCisgICAgICAgIHByb2Nlc3MuCisKIDIwMjEtMDQtMTMgIFdl
bnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgW21hY09TXSBS
ZWZhY3RvciBsb2dpYyBmb3IgcHJlc2VudGluZyB0aGUgc2hhcmVkIFFMUHJldmlld1BhbmVsIHdo
ZW4gcmV2ZWFsaW5nIGFuIGltYWdlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9p
b3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24uaCBiL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbi5oCmluZGV4IGFlZTM3ODNm
ZWIyYTg4YmYyN2U0OWIxMzk2N2M4NWY2NGE3MzA3MzkuLjczYmNhYmQzNGY5MDY2NWZhZTRlOGRl
MTVmN2JiZGIwNzgxNGM4MzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2lvcy9J
bnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbi5oCkBAIC05Nyw2ICs5Nyw3
IEBAIHN0cnVjdCBJbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbiB7CiAjZW5kaWYKIAog
ICAgIE9wdGlvbmFsPFdlYkNvcmU6OkVsZW1lbnRDb250ZXh0PiBlbGVtZW50Q29udGV4dDsKKyAg
ICBPcHRpb25hbDxXZWJDb3JlOjpFbGVtZW50Q29udGV4dD4gaW1hZ2VFbGVtZW50Q29udGV4dDsK
IAogICAgIC8vIENvcHkgY29tcGF0aWJsZSBvcHRpb25hbCBiaXRzIGZvcndhcmQgKGZvciBleGFt
cGxlLCBpZiB3ZSBoYXZlIGEgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24KICAgICAv
LyB3aXRoIHNuYXBzaG90cyBpbiBpdCwgYW5kIHBlcmZvcm0gYW5vdGhlciByZXF1ZXN0IGZvciB0
aGUgc2FtZSBwb2ludCB3aXRob3V0IHJlcXVlc3RpbmcgdGhlIHNuYXBzaG90cywKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3Np
dGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0aW9u
QXRQb3NpdGlvbi5tbQppbmRleCAwMTU5ZDg5Y2EwMGNkYTgyZjU3YjFmYmIyNjIyMDdlMTBlN2M3
ZDBmLi4xNTcyNWJjNmFkYzcxMDg3ZTIwNWUxMDNkZmU4YzFiZDM2NWMzYWM1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRp
b24ubW0KKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvaW9zL0ludGVyYWN0aW9uSW5mb3JtYXRp
b25BdFBvc2l0aW9uLm1tCkBAIC04OCw2ICs4OCw3IEBAIHZvaWQgSW50ZXJhY3Rpb25JbmZvcm1h
dGlvbkF0UG9zaXRpb246OmVuY29kZShJUEM6OkVuY29kZXImIGVuY29kZXIpIGNvbnN0CiAgICAg
ZW5jb2RlciA8PCBzaG91bGROb3RVc2VJQmVhbUluRWRpdGFibGVDb250ZW50OwogICAgIGVuY29k
ZXIgPDwgaXNJbWFnZU92ZXJsYXlUZXh0OwogICAgIGVuY29kZXIgPDwgZWxlbWVudENvbnRleHQ7
CisgICAgZW5jb2RlciA8PCBpbWFnZUVsZW1lbnRDb250ZXh0OwogfQogCiBib29sIEludGVyYWN0
aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uOjpkZWNvZGUoSVBDOjpEZWNvZGVyJiBkZWNvZGVyLCBJ
bnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbiYgcmVzdWx0KQpAQCAtMjE1LDYgKzIxNiw5
IEBAIGJvb2wgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb246OmRlY29kZShJUEM6OkRl
Y29kZXImIGRlY29kZXIsIEludGVyYWN0aW9uCiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1
bHQuZWxlbWVudENvbnRleHQpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKKyAgICBpZiAoIWRl
Y29kZXIuZGVjb2RlKHJlc3VsdC5pbWFnZUVsZW1lbnRDb250ZXh0KSkKKyAgICAgICAgcmV0dXJu
IGZhbHNlOworCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0aW9uUmVxdWVzdC5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvblJlcXVlc3QuY3BwCmluZGV4
IGRlYzQ2NWYyZmQ3OTQ4ZDc4YzRmMmMwM2NhMzk2MWYzZDlkYzY1NjcuLjllMDAxZGE4OGUzMTc2
NjkzNTg1YTZlMGFjYTI5ZDg1YjFiNTllZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0aW9uUmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvaW9zL0ludGVyYWN0aW9uSW5mb3JtYXRpb25SZXF1ZXN0LmNwcApAQCAtODgs
OCArODgsNyBAQCBib29sIEludGVyYWN0aW9uSW5mb3JtYXRpb25SZXF1ZXN0Ojppc1ZhbGlkRm9y
UmVxdWVzdChjb25zdCBJbnRlcmFjdGlvbkluZm9ybWF0aQogICAgIGlmIChvdGhlci5pbmNsdWRl
SGFzRG91YmxlQ2xpY2tIYW5kbGVyICYmICFpbmNsdWRlSGFzRG91YmxlQ2xpY2tIYW5kbGVyKQog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICAvLyBJZiBgaW5jbHVkZVNuYXBzaG90YCBpcyBz
ZXQsIHRoZW4gd2Ugd2lsbCBpbmNsdWRlIGRhdGEgZm9yIGltYWdlcyBhcyB3ZWxsLgotICAgIGlm
IChvdGhlci5pbmNsdWRlSW1hZ2VEYXRhICYmICFpbmNsdWRlSW1hZ2VEYXRhICYmICFpbmNsdWRl
U25hcHNob3QpCisgICAgaWYgKG90aGVyLmluY2x1ZGVJbWFnZURhdGEgJiYgIWluY2x1ZGVJbWFn
ZURhdGEpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgIGlmIChvdGhlci5saW5rSW5kaWNh
dG9yU2hvdWxkSGF2ZUxlZ2FjeU1hcmdpbnMgIT0gbGlua0luZGljYXRvclNob3VsZEhhdmVMZWdh
Y3lNYXJnaW5zKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29u
dGVudFZpZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0Nv
bnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggYzJkYjlkMWU4YmZhNmFlNzE2MjIyNDJlNjEy
ZWE4MzU1YWMxYTNiNS4uOGNmYzE3N2YwNmY1N2MyMmQxMGRlZTFhY2YxNGE4NjZmZTNiYmVmNCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRl
cmFjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmll
d0ludGVyYWN0aW9uLm1tCkBAIC0yNzMwLDcgKzI3MzAsNyBAQCAtIChCT09MKWhhc1NlbGVjdGFi
bGVQb3NpdGlvbkF0UG9pbnQ6KENHUG9pbnQpcG9pbnQKICAgICAgICAgcmV0dXJuIE5POwogCiAj
aWYgRU5BQkxFKElNQUdFX0VYVFJBQ1RJT04pCi0gICAgaWYgKF9lbGVtZW50UGVuZGluZ0ltYWdl
RXh0cmFjdGlvbiAmJiBfcG9zaXRpb25JbmZvcm1hdGlvbi5lbGVtZW50Q29udGV4dCA9PSBfZWxl
bWVudFBlbmRpbmdJbWFnZUV4dHJhY3Rpb24pCisgICAgaWYgKF9lbGVtZW50UGVuZGluZ0ltYWdl
RXh0cmFjdGlvbiAmJiBfcG9zaXRpb25JbmZvcm1hdGlvbi5pbWFnZUVsZW1lbnRDb250ZXh0ID09
IF9lbGVtZW50UGVuZGluZ0ltYWdlRXh0cmFjdGlvbikKICAgICAgICAgcmV0dXJuIFlFUzsKICNl
bmRpZgogCkBAIC0yODA4LDcgKzI4MDgsNyBAQCAtIChCT09MKXRleHRJbnRlcmFjdGlvbkdlc3R1
cmU6KFVJV0tHZXN0dXJlVHlwZSlnZXN0dXJlIHNob3VsZEJlZ2luQXRQb2ludDooQ0dQbwogI2Vu
ZGlmCiAKICNpZiBFTkFCTEUoSU1BR0VfRVhUUkFDVElPTikKLSAgICBpZiAoX2VsZW1lbnRQZW5k
aW5nSW1hZ2VFeHRyYWN0aW9uICYmIF9wb3NpdGlvbkluZm9ybWF0aW9uLmVsZW1lbnRDb250ZXh0
ID09IF9lbGVtZW50UGVuZGluZ0ltYWdlRXh0cmFjdGlvbikKKyAgICBpZiAoX2VsZW1lbnRQZW5k
aW5nSW1hZ2VFeHRyYWN0aW9uICYmIF9wb3NpdGlvbkluZm9ybWF0aW9uLmltYWdlRWxlbWVudENv
bnRleHQgPT0gX2VsZW1lbnRQZW5kaW5nSW1hZ2VFeHRyYWN0aW9uKQogICAgICAgICByZXR1cm4g
WUVTOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL2lvcy9XZWJQYWdlSU9TLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
aW9zL1dlYlBhZ2VJT1MubW0KaW5kZXggMWFmZjA5NDFiOTNlYTE2MTVkNTY1YTNiODFjZTg5Nzcw
MzEyOTIwYy4uMDFlYjZjMzQxYzEzZGU3NzYwY2NhZjMwNzU3MTkxY2Y1YjE5ODk0YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0K
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0K
QEAgLTI2OTQsNiArMjY5NCw4IEBAIHN0YXRpYyB2b2lkIGltYWdlUG9zaXRpb25JbmZvcm1hdGlv
bihXZWJQYWdlJiBwYWdlLCBFbGVtZW50JiBlbGVtZW50LCBjb25zdCBJbnRlCiAKICAgICBpZiAo
cmVxdWVzdC5pbmNsdWRlU25hcHNob3QgfHwgcmVxdWVzdC5pbmNsdWRlSW1hZ2VEYXRhKQogICAg
ICAgICBpbmZvLmltYWdlID0gY3JlYXRlU2hhcmVhYmxlQml0bWFwKHJlbmRlckltYWdlLCBzY3Jl
ZW5TaXplKCkgKiBwYWdlLmNvcmVQYWdlKCktPmRldmljZVNjYWxlRmFjdG9yKCkpOworCisgICAg
aW5mby5pbWFnZUVsZW1lbnRDb250ZXh0ID0gcGFnZS5jb250ZXh0Rm9yRWxlbWVudChlbGVtZW50
KTsKIH0KIAogc3RhdGljIHZvaWQgYm91bmRzUG9zaXRpb25JbmZvcm1hdGlvbihSZW5kZXJPYmpl
Y3QmIHJlbmRlcmVyLCBJbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbiYgaW5mbykKQEAg
LTI3MTksNiArMjcyMSw3IEBAIHN0YXRpYyB2b2lkIGVsZW1lbnRQb3NpdGlvbkluZm9ybWF0aW9u
KFdlYlBhZ2UmIHBhZ2UsIEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IEluCiAKICAgICBpbmZvLmlz
RWxlbWVudCA9IHRydWU7CiAgICAgaW5mby5pZEF0dHJpYnV0ZSA9IGVsZW1lbnQuZ2V0SWRBdHRy
aWJ1dGUoKTsKKyAgICBpbmZvLmlzSW1hZ2VPdmVybGF5VGV4dCA9IGlubmVyTm9uU2hhcmVkTm9k
ZSAmJiBIVE1MRWxlbWVudDo6aXNJbWFnZU92ZXJsYXlUZXh0KCppbm5lck5vblNoYXJlZE5vZGUp
OwogCiAgICAgaW5mby50aXRsZSA9IGVsZW1lbnQuYXR0cmlidXRlV2l0aG91dFN5bmNocm9uaXph
dGlvbihIVE1MTmFtZXM6OnRpdGxlQXR0cikuc3RyaW5nKCk7CiAgICAgaWYgKGxpbmtFbGVtZW50
ICYmIGluZm8udGl0bGUuaXNFbXB0eSgpKQpAQCAtMjcyNiw3ICsyNzI5LDcgQEAgc3RhdGljIHZv
aWQgZWxlbWVudFBvc2l0aW9uSW5mb3JtYXRpb24oV2ViUGFnZSYgcGFnZSwgRWxlbWVudCYgZWxl
bWVudCwgY29uc3QgSW4KICAgICBpZiAoZWxlbWVudC5yZW5kZXJlcigpKQogICAgICAgICBpbmZv
LnRvdWNoQ2FsbG91dEVuYWJsZWQgPSBlbGVtZW50LnJlbmRlcmVyKCktPnN0eWxlKCkudG91Y2hD
YWxsb3V0RW5hYmxlZCgpOwogCi0gICAgaWYgKGxpbmtFbGVtZW50KSB7CisgICAgaWYgKGxpbmtF
bGVtZW50ICYmICFpbmZvLmlzSW1hZ2VPdmVybGF5VGV4dCkgewogICAgICAgICBpbmZvLmlzTGlu
ayA9IHRydWU7CiAgICAgICAgIGluZm8udXJsID0gbGlua0VsZW1lbnQtPmRvY3VtZW50KCkuY29t
cGxldGVVUkwoc3RyaXBMZWFkaW5nQW5kVHJhaWxpbmdIVE1MU3BhY2VzKGxpbmtFbGVtZW50LT5n
ZXRBdHRyaWJ1dGUoSFRNTE5hbWVzOjpocmVmQXR0cikpKTsKIApAQCAtMjc0Niw5ICsyNzQ5LDgg
QEAgc3RhdGljIHZvaWQgZWxlbWVudFBvc2l0aW9uSW5mb3JtYXRpb24oV2ViUGFnZSYgcGFnZSwg
RWxlbWVudCYgZWxlbWVudCwgY29uc3QgSW4KIAogICAgIGlmIChhdXRvKiByZW5kZXJlciA9IGVs
ZW1lbnQucmVuZGVyZXIoKSkgewogICAgICAgICBib29sIHNob3VsZENvbGxlY3RJbWFnZVBvc2l0
aW9uSW5mb3JtYXRpb24gPSByZW5kZXJlci0+aXNSZW5kZXJJbWFnZSgpOwotICAgICAgICBpZiAo
c2hvdWxkQ29sbGVjdEltYWdlUG9zaXRpb25JbmZvcm1hdGlvbiAmJiBpbm5lck5vblNoYXJlZE5v
ZGUgJiYgSFRNTEVsZW1lbnQ6OmlzSW1hZ2VPdmVybGF5VGV4dCgqaW5uZXJOb25TaGFyZWROb2Rl
KSkgeworICAgICAgICBpZiAoc2hvdWxkQ29sbGVjdEltYWdlUG9zaXRpb25JbmZvcm1hdGlvbiAm
JiBpbmZvLmlzSW1hZ2VPdmVybGF5VGV4dCkgewogICAgICAgICAgICAgc2hvdWxkQ29sbGVjdElt
YWdlUG9zaXRpb25JbmZvcm1hdGlvbiA9IGZhbHNlOwotICAgICAgICAgICAgaW5mby5pc0ltYWdl
T3ZlcmxheVRleHQgPSB0cnVlOwogICAgICAgICAgICAgaWYgKHJlcXVlc3QuaW5jbHVkZUltYWdl
RGF0YSkgewogICAgICAgICAgICAgICAgIGlmIChhdXRvIHJlbmRlcmVyQW5kSW1hZ2UgPSBpbWFn
ZVJlbmRlcmVyQW5kSW1hZ2UoZWxlbWVudCkpIHsKICAgICAgICAgICAgICAgICAgICAgYXV0byYg
W3JlbmRlckltYWdlLCBpbWFnZV0gPSAqcmVuZGVyZXJBbmRJbWFnZTsKQEAgLTI5NjAsMTQgKzI5
NjIsMTggQEAgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24gV2ViUGFnZTo6cG9zaXRp
b25JbmZvcm1hdGlvbihjb25zdCBJbnRlcmFjdGlvbkkKICAgICBpZiAobV9mb2N1c2VkRWxlbWVu
dCkKICAgICAgICAgZm9jdXNlZEVsZW1lbnRQb3NpdGlvbkluZm9ybWF0aW9uKCp0aGlzLCAqbV9m
b2N1c2VkRWxlbWVudCwgcmVxdWVzdCwgaW5mbyk7CiAKKyAgICBhdXRvIGhpdFRlc3ROb2RlID0g
bWFrZVJlZlB0cihoaXRUZXN0UmVzdWx0LmlubmVyTm9uU2hhcmVkTm9kZSgpKTsKICAgICBpZiAo
aXM8RWxlbWVudD4obm9kZVJlc3BvbmRpbmdUb0NsaWNrRXZlbnRzKSkgewogICAgICAgICBhdXRv
JiBlbGVtZW50ID0gZG93bmNhc3Q8RWxlbWVudD4oKm5vZGVSZXNwb25kaW5nVG9DbGlja0V2ZW50
cyk7Ci0gICAgICAgIGVsZW1lbnRQb3NpdGlvbkluZm9ybWF0aW9uKCp0aGlzLCBlbGVtZW50LCBy
ZXF1ZXN0LCBoaXRUZXN0UmVzdWx0LmlubmVyTm9uU2hhcmVkTm9kZSgpLCBpbmZvKTsKKyAgICAg
ICAgZWxlbWVudFBvc2l0aW9uSW5mb3JtYXRpb24oKnRoaXMsIGVsZW1lbnQsIHJlcXVlc3QsIGhp
dFRlc3ROb2RlLmdldCgpLCBpbmZvKTsKIAogICAgICAgICBpZiAoaW5mby5pc0xpbmsgJiYgIWlu
Zm8uaXNJbWFnZSAmJiByZXF1ZXN0LmluY2x1ZGVTbmFwc2hvdCkKICAgICAgICAgICAgIGluZm8u
aW1hZ2UgPSBzaGFyZWFibGVCaXRtYXBTbmFwc2hvdEZvck5vZGUoZWxlbWVudCk7CiAgICAgfQog
CisgICAgaWYgKCFpbmZvLmlzSW1hZ2UgJiYgcmVxdWVzdC5pbmNsdWRlSW1hZ2VEYXRhICYmIGlz
PEhUTUxJbWFnZUVsZW1lbnQ+KGhpdFRlc3ROb2RlKSkKKyAgICAgICAgaW1hZ2VQb3NpdGlvbklu
Zm9ybWF0aW9uKCp0aGlzLCBkb3duY2FzdDxIVE1MSW1hZ2VFbGVtZW50PigqaGl0VGVzdE5vZGUp
LCByZXF1ZXN0LCBpbmZvKTsKKwogICAgIGlmICghKGluZm8uaXNMaW5rIHx8IGluZm8uaXNJbWFn
ZSkpCiAgICAgICAgIHNlbGVjdGlvblBvc2l0aW9uSW5mb3JtYXRpb24oKnRoaXMsIHJlcXVlc3Qs
IGluZm8pOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKaW5kZXggZmExZDE2MTI3YzE0M2E2ZTUzYzViOGQ2OGZmZTFhMDgzOGQ3NGQx
Zi4uNDhhMzJiZjQzMTE1YzI4MDY5NDk0ZmQ4MThhNmRhYzZmNjlmNTU3MCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDIxIEBACisyMDIxLTA0LTE0ICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUu
Y29tPgorCisgICAgICAgIFtpT1NdIE1ha2UgaW1hZ2UgZXh0cmFjdGlvbiBpbnRlcmFjdGlvbnMg
d29yayBmb3IgZWxlbWVudHMgaW5zaWRlIGxpbmtzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjQ1MTcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc2
NjE2NDMxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9jbGljay1saW5rLXdpdGgtaW1hZ2Utb3Zl
cmxheS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4
dHJhY3Rpb24vY2xpY2stbGluay13aXRoLWltYWdlLW92ZXJsYXkuaHRtbDogQWRkZWQuCisKKyAg
ICAgICAgQWRkIGEgdGVzdCB0aGF0IHZlcmlmaWVzIHRoYXQgYWN0aXZhdGluZyBkaWZmZXJlbnQg
cGFydHMgb2YgYW4gaW1hZ2UgaW4gYSBsaW5rIGZpcmVzIGNsaWNrIGV2ZW50cy4KKworICAgICAg
ICAqIGZhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdl
LW92ZXJsYXktaW5zaWRlLWxpbmstZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0
L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5
LWluc2lkZS1saW5rLmh0bWw6IEFkZGVkLgorCisgICAgICAgIEFkZCBhIHRlc3QgdGhhdCBzZWxl
Y3RzIGltYWdlIG92ZXJsYXkgdGV4dCBmb3IgYW4gaW1hZ2UgZWxlbWVudCBpbnNpZGUgYSBsaW5r
LgorCiAyMDIxLTA0LTEzICBaaXJhbiBTdW4gIDx6c3VuQGlnYWxpYS5jb20+CiAKICAgICAgICAg
W2Nzcy1ncmlkXSBJbmNvcnJlY3QgdHJhY2sgc2l6aW5nIHdoZW4gdXNpbmcgcmVsYXRpdmUgc2l6
ZWQgaXRlbXMgaW4gJ2F1dG8nIGNvbHVtbiB0cmFja3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vY2xpY2stbGluay13aXRoLWltYWdlLW92ZXJs
YXktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlv
bi9jbGljay1saW5rLXdpdGgtaW1hZ2Utb3ZlcmxheS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NDQ4N2JhNGRmMzVhNWE2ZWViMDYxMDg2OTQ5NzJhMTYwZWNmZTk3NQotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rpb24vY2xpY2stbGluay13
aXRoLWltYWdlLW92ZXJsYXktZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorUEFTUyBjbGlj
a0NvdW50IGJlY2FtZSAyCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1Qg
Q09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0
cmFjdGlvbi9jbGljay1saW5rLXdpdGgtaW1hZ2Utb3ZlcmxheS5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9jbGljay1saW5rLXdpdGgtaW1hZ2Utb3Zlcmxh
eS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmFlOGRhYTQ3ODY0ZTM0OTkyNjRkY2FiNWY3MTBiYzkwZjhhYjRj
OGYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRy
YWN0aW9uL2NsaWNrLWxpbmstd2l0aC1pbWFnZS1vdmVybGF5Lmh0bWwKQEAgLTAsMCArMSw1MSBA
QAorPCFET0NUWVBFIGh0bWw+IDwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgdXNlRmxleGlibGVW
aWV3cG9ydD10cnVlIF0gLS0+Cis8aHRtbD4KKzxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50
PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+Cis8aGVhZD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c3R5bGU+Citp
bWcgeworICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICB0b3A6IDA7CisgICAgbGVmdDogMDsK
K30KKworYSB7CisgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOworfQorPC9zdHlsZT4KKzwvaGVh
ZD4KKzxib2R5PgorPGEgaHJlZj0iaHR0cDovL2xvY2FsaG9zdDo1NDMyMSI+CisgICAgPGltZyBz
cmM9Ii4uL3Jlc291cmNlcy9ncmVlbi00MDB4NDAwLnBuZyI+PC9pbWc+Cis8L2E+Cis8c2NyaXB0
PgoranNUZXN0SXNBc3luYyA9IHRydWU7CithZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgYXN5bmMg
KCkgPT4geworICAgIGNsaWNrQ291bnQgPSAwOworCisgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rv
cigiYSIpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgKGV2ZW50KSA9PiB7CisgICAgICAgIGV2
ZW50LnByZXZlbnREZWZhdWx0KCk7CisgICAgICAgIGNsaWNrQ291bnQrKzsKKyAgICB9KTsKKwor
ICAgIGludGVybmFscy5pbnN0YWxsSW1hZ2VPdmVybGF5KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Io
ImltZyIpLCBbCisgICAgICAgIHsKKyAgICAgICAgICAgIHRleHQgOiAiaGVsbG8iLAorICAgICAg
ICAgICAgdG9wTGVmdCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDAsIDApLAorICAgICAgICAgICAg
dG9wUmlnaHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwKSwKKyAgICAgICAgICAgIGJvdHRv
bVJpZ2h0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMSwgMC4yNSksCisgICAgICAgICAgICBib3R0
b21MZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMC4yNSksCisgICAgICAgIH0KKyAgICBd
KTsKKworICAgIGF3YWl0IFVJSGVscGVyLmFjdGl2YXRlQXQoMTAwLCA1MCk7CisgICAgYXdhaXQg
VUlIZWxwZXIud2FpdEZvckRvdWJsZVRhcERlbGF5KCk7CisgICAgYXdhaXQgVUlIZWxwZXIuYWN0
aXZhdGVBdCgzMDAsIDMwMCk7CisKKyAgICBzaG91bGRCZWNvbWVFcXVhbCgiY2xpY2tDb3VudCIs
ICIyIiwgZmluaXNoSlNUZXN0KTsKK30pOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Clwg
Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9p
bWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS1p
bnNpZGUtbGluay1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1l
eHRyYWN0aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5LWluc2lkZS1saW5rLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNDFhYTQyZjZlNjkyNDNhYjc0MTJjMDhjMzY3OTZjMjYx
NTZlM2I3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2Ut
ZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS1pbnNpZGUtbGluay1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitQQVNTIHNlbGVjdGlvblJlY3RzLmxlbmd0aCBp
cyAxCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mv
c2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS1pbnNpZGUtbGluay5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Ut
b3ZlcmxheS1pbnNpZGUtbGluay5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRjNWFmOTQ4MjQwODAzZDk2ZWU0
YTFmYjI3NzE5MTU4NzFkYjE0MjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5
LWluc2lkZS1saW5rLmh0bWwKQEAgLTAsMCArMSw0MiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0Lmpz
Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi9yZXNvdXJjZXMvdWktaGVscGVy
LmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KK2ltZyB7CisgICAgcG9zaXRpb246IGFic29sdXRlOwor
ICAgIHRvcDogMDsKKyAgICBsZWZ0OiAwOworfQorCithIHsKKyAgICBkaXNwbGF5OiBpbmxpbmUt
YmxvY2s7Cit9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+Cis8YSBocmVmPSJodHRwOi8vbG9j
YWxob3N0OjU0MzIxIiBvbmNsaWNrPSJldmVudC5wcmV2ZW50RGVmYXVsdCgpIj4KKyAgICA8aW1n
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nIj48L2ltZz4KKzwvYT4KKzxz
Y3JpcHQ+Citqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK2FkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBh
c3luYyAoKSA9PiB7CisgICAgbGV0IGltYWdlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1n
Iik7CisgICAgaW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXkoaW1hZ2UsIFsKKyAgICAgICAg
eworICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCisgICAgICAgICAgICB0b3BMZWZ0IDogbmV3
IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICB0b3BSaWdodCA6IG5ldyBET01Q
b2ludFJlYWRPbmx5KDEsIDApLAorICAgICAgICAgICAgYm90dG9tUmlnaHQgOiBuZXcgRE9NUG9p
bnRSZWFkT25seSgxLCAwLjI1KSwKKyAgICAgICAgICAgIGJvdHRvbUxlZnQgOiBuZXcgRE9NUG9p
bnRSZWFkT25seSgwLCAwLjI1KSwKKyAgICAgICAgfQorICAgIF0pOworICAgIGF3YWl0IFVJSGVs
cGVyLmxvbmdQcmVzc0F0UG9pbnQoMjAwLCA1MCk7CisgICAgc2VsZWN0aW9uUmVjdHMgPSBhd2Fp
dCBVSUhlbHBlci53YWl0Rm9yU2VsZWN0aW9uVG9BcHBlYXIoKTsKKyAgICBzaG91bGRCZSgic2Vs
ZWN0aW9uUmVjdHMubGVuZ3RoIiwgIjEiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30pOworPC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>426024</attachid>
            <date>2021-04-14 11:36:31 -0700</date>
            <delta_ts>2021-04-14 18:36:45 -0700</delta_ts>
            <desc>Add a new test</desc>
            <filename>bug-224517-20210414113630.patch</filename>
            <type>text/plain</type>
            <size>15895</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1OTEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGQyYjc4ZjMzNTNhYmMwNDk4
NTU3ZGQ1YjMzNDQ4MWI4YjljNzBjOGEuLjFjYWU3ZGRhOGNiMTBlY2Q2ZDIyOGQyMTk5MGE4MmJl
MDBhNjRiZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTQgQEAKKzIwMjEtMDQtMTMgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gTWFrZSBpbWFn
ZSBleHRyYWN0aW9uIGludGVyYWN0aW9ucyB3b3JrIGZvciBlbGVtZW50cyBpbnNpZGUgbGlua3MK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDUxNwor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzY2MTY0MzE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
RGV2aW4gUm91c3NvLgorCisgICAgICAgIFNlZSBjb21tZW50cyBiZWxvdyBmb3IgbW9yZSBkZXRh
aWxzLgorCisgICAgICAgIFRlc3RzOiAgZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9jbGlj
ay1saW5rLXdpdGgtaW1hZ2Utb3ZlcmxheS5odG1sCisgICAgICAgICAgICAgICAgZmFzdC9pbWFn
ZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3ZlcmxheS1pbnNp
ZGUtbGluay5odG1sCisKKyAgICAgICAgKiBTaGFyZWQvaW9zL0ludGVyYWN0aW9uSW5mb3JtYXRp
b25BdFBvc2l0aW9uLmg6CisgICAgICAgICogU2hhcmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0
aW9uQXRQb3NpdGlvbi5tbToKKyAgICAgICAgKFdlYktpdDo6SW50ZXJhY3Rpb25JbmZvcm1hdGlv
bkF0UG9zaXRpb246OmVuY29kZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OkludGVyYWN0aW9u
SW5mb3JtYXRpb25BdFBvc2l0aW9uOjpkZWNvZGUpOgorCisgICAgICAgIEFkZCBgaW1hZ2VFbGVt
ZW50Q29udGV4dGAsIGFuIG9wdGlvbmFsIGVsZW1lbnQgY29udGV4dCB0aGF0IGV4aXN0cyBhbG9u
Z3NpZGUgYGVsZW1lbnRDb250ZXh0YC4gVGhpcyBpcyBuZWNlc3NhcnkKKyAgICAgICAgaW4gdGhl
IGNhc2Ugd2hlcmUgdGhlIHVzZXIgaXMgaW50ZXJhY3Rpbmcgd2l0aCBhbiBpbWFnZSBlbGVtZW50
IGluc2lkZSBhIGxpbmsgZWxlbWVudCBiZWNhdXNlIHdlIG5lZWQgdG8ga25vdworICAgICAgICBh
Ym91dCB0aGUgaW5uZXIgaGl0LXRlc3RlZCBpbWFnZSBlbGVtZW50IGZvciB0aGUgcHVycG9zZXMg
b2YgaW1hZ2UgZXh0cmFjdGlvbiwgYnV0IHRoZSBjbGlja2FibGUgZWxlbWVudCB3ZSB1c2UKKyAg
ICAgICAgZm9yIHRoZSBgZWxlbWVudENvbnRleHRgIGlzIHRoZSBsaW5rIGVsZW1lbnQgaW5zdGVh
ZC4KKworICAgICAgICAqIFNoYXJlZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvblJlcXVlc3Qu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpJbnRlcmFjdGlvbkluZm9ybWF0aW9uUmVxdWVzdDo6aXNW
YWxpZEZvclJlcXVlc3QgY29uc3QpOgorCisgICAgICAgIE1ha2UgYSBzbGlnaHQgYWRqdXN0bWVu
dCBoZXJlIC0gc2luY2UgYGluY2x1ZGVJbWFnZURhdGFgIG1heSByZXF1aXJlIGltYWdlIGJpdG1h
cCBkYXRhIGluIGNhc2VzIHdoZXJlIG9ubHkgdGhlCisgICAgICAgIGBpbmNsdWRlU25hcHNob3Rg
IGZsYWcgaXMgc2V0LCBpdCdzIGluY29ycmVjdCB0byBhc3N1bWUgdGhhdCBzZXR0aW5nIGBpbmNs
dWRlU25hcHNob3RgIGZ1bGZpbGxzIGFsbCB0aGUgbmVlZHMgb2YKKyAgICAgICAgYGluY2x1ZGVJ
bWFnZURhdGFgLgorCisgICAgICAgICogVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJh
Y3Rpb24ubW06CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgaGFzU2VsZWN0YWJsZVBvc2l0aW9u
QXRQb2ludDpdKToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyB0ZXh0SW50ZXJhY3Rpb25HZXN0
dXJlOnNob3VsZEJlZ2luQXRQb2ludDpdKToKKworICAgICAgICBDb25zdWx0IGBpbWFnZUVsZW1l
bnRDb250ZXh0YCBpbnN0ZWFkIG9mIGBlbGVtZW50Q29udGV4dGAuCisKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW06CisgICAgICAgIChXZWJLaXQ6OmltYWdl
UG9zaXRpb25JbmZvcm1hdGlvbik6CisKKyAgICAgICAgU2V0IHRoZSBwb3NpdGlvbiBpbmZvcm1h
dGlvbidzIGBpbWFnZUVsZW1lbnRDb250ZXh0YC4KKworICAgICAgICAoV2ViS2l0OjplbGVtZW50
UG9zaXRpb25JbmZvcm1hdGlvbik6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnBvc2l0aW9u
SW5mb3JtYXRpb24pOgorCisgICAgICAgIE1ha2UgYSBjb3VwbGUgb2YgYWRqdXN0bWVudHMgaGVy
ZTogKDEpIGF2b2lkIHJlcXVlc3RpbmcgbGluayBwb3NpdGlvbiBpbmZvcm1hdGlvbiBpZiB0aGUg
aGl0LXRlc3RlZCBub2RlIGlzIHRleHQKKyAgICAgICAgaW5zaWRlIG9mIGFuIGltYWdlIG92ZXJs
YXkuICgyKSBJZiB0aGUgYGluY2x1ZGVJbWFnZURhdGFgIHJlcXVlc3QgZmxhZyBpcyBzZXQgYW5k
IHRoZSBoaXQtdGVzdGVkIG5vZGUgaXMgYW4KKyAgICAgICAgaW1hZ2UgZWxlbWVudCBidXQgYGlz
SW1hZ2VgIGlzIG5vdCBzZXQsIHRoZW4gYWRkaXRpb25hbGx5IHN1cHBseSB0aGUgaW1hZ2UgZGF0
YSB1c2luZyB0aGUKKyAgICAgICAgYGltYWdlUG9zaXRpb25JbmZvcm1hdGlvbmAgaGVscGVyIGZ1
bmN0aW9uLiBUaGlzIGVuc3VyZXMgdGhhdCBpbiB0aGUgY2FzZSB3aGVyZSB3ZSdyZSByZXF1ZXN0
aW5nIGltYWdlIGRhdGEgYW5kCisgICAgICAgIHRoZSB1c2VyIGlzIGludGVyYWN0aW5nIHdpdGgg
YW4gaW1hZ2UgZWxlbWVudCBpbnNpZGUgYSBsaW5rLCB3ZSdsbCBzZW5kIGRlY29kZWQgaW1hZ2Ug
ZGF0YSBiYWNrIHRvIHRoZSBVSQorICAgICAgICBwcm9jZXNzLgorCiAyMDIxLTA0LTEzICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFttYWNPU10gUmVm
YWN0b3IgbG9naWMgZm9yIHByZXNlbnRpbmcgdGhlIHNoYXJlZCBRTFByZXZpZXdQYW5lbCB3aGVu
IHJldmVhbGluZyBhbiBpbWFnZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvaW9z
L0ludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24uaAppbmRleCBhZWUzNzgzZmVi
MmE4OGJmMjdlNDliMTM5NjdjODVmNjRhNzMwNzM5Li43M2JjYWJkMzRmOTA2NjVmYWU0ZThkZTE1
ZjdiYmRiMDc4MTRjODM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9pb3MvSW50
ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24uaApAQCAtOTcsNiArOTcsNyBA
QCBzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24gewogI2VuZGlmCiAKICAg
ICBPcHRpb25hbDxXZWJDb3JlOjpFbGVtZW50Q29udGV4dD4gZWxlbWVudENvbnRleHQ7CisgICAg
T3B0aW9uYWw8V2ViQ29yZTo6RWxlbWVudENvbnRleHQ+IGltYWdlRWxlbWVudENvbnRleHQ7CiAK
ICAgICAvLyBDb3B5IGNvbXBhdGlibGUgb3B0aW9uYWwgYml0cyBmb3J3YXJkIChmb3IgZXhhbXBs
ZSwgaWYgd2UgaGF2ZSBhIEludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uCiAgICAgLy8g
d2l0aCBzbmFwc2hvdHMgaW4gaXQsIGFuZCBwZXJmb3JtIGFub3RoZXIgcmVxdWVzdCBmb3IgdGhl
IHNhbWUgcG9pbnQgd2l0aG91dCByZXF1ZXN0aW5nIHRoZSBzbmFwc2hvdHMsCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRp
b24ubW0gYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0
UG9zaXRpb24ubW0KaW5kZXggMDE1OWQ4OWNhMDBjZGE4MmY1N2IxZmJiMjYyMjA3ZTEwZTdjN2Qw
Zi4uMTU3MjViYzZhZGM3MTA4N2UyMDVlMTAzZGZlOGMxYmQzNjVjM2FjNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9TaGFyZWQvaW9zL0ludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9u
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0aW9u
QXRQb3NpdGlvbi5tbQpAQCAtODgsNiArODgsNyBAQCB2b2lkIEludGVyYWN0aW9uSW5mb3JtYXRp
b25BdFBvc2l0aW9uOjplbmNvZGUoSVBDOjpFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogICAgIGVu
Y29kZXIgPDwgc2hvdWxkTm90VXNlSUJlYW1JbkVkaXRhYmxlQ29udGVudDsKICAgICBlbmNvZGVy
IDw8IGlzSW1hZ2VPdmVybGF5VGV4dDsKICAgICBlbmNvZGVyIDw8IGVsZW1lbnRDb250ZXh0Owor
ICAgIGVuY29kZXIgPDwgaW1hZ2VFbGVtZW50Q29udGV4dDsKIH0KIAogYm9vbCBJbnRlcmFjdGlv
bkluZm9ybWF0aW9uQXRQb3NpdGlvbjo6ZGVjb2RlKElQQzo6RGVjb2RlciYgZGVjb2RlciwgSW50
ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24mIHJlc3VsdCkKQEAgLTIxNSw2ICsyMTYsOSBA
QCBib29sIEludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uOjpkZWNvZGUoSVBDOjpEZWNv
ZGVyJiBkZWNvZGVyLCBJbnRlcmFjdGlvbgogICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0
LmVsZW1lbnRDb250ZXh0KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCisgICAgaWYgKCFkZWNv
ZGVyLmRlY29kZShyZXN1bHQuaW1hZ2VFbGVtZW50Q29udGV4dCkpCisgICAgICAgIHJldHVybiBm
YWxzZTsKKwogICAgIHJldHVybiB0cnVlOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvblJlcXVlc3QuY3BwIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvaW9zL0ludGVyYWN0aW9uSW5mb3JtYXRpb25SZXF1ZXN0LmNwcAppbmRleCBk
ZWM0NjVmMmZkNzk0OGQ3OGM0ZjJjMDNjYTM5NjFmM2Q5ZGM2NTY3Li45ZTAwMWRhODhlMzE3NjY5
MzU4NWE2ZTBhY2EyOWQ4NWIxYjU5ZWVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9pb3MvSW50ZXJhY3Rpb25JbmZvcm1hdGlvblJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL2lvcy9JbnRlcmFjdGlvbkluZm9ybWF0aW9uUmVxdWVzdC5jcHAKQEAgLTg4LDgg
Kzg4LDcgQEAgYm9vbCBJbnRlcmFjdGlvbkluZm9ybWF0aW9uUmVxdWVzdDo6aXNWYWxpZEZvclJl
cXVlc3QoY29uc3QgSW50ZXJhY3Rpb25JbmZvcm1hdGkKICAgICBpZiAob3RoZXIuaW5jbHVkZUhh
c0RvdWJsZUNsaWNrSGFuZGxlciAmJiAhaW5jbHVkZUhhc0RvdWJsZUNsaWNrSGFuZGxlcikKICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgLy8gSWYgYGluY2x1ZGVTbmFwc2hvdGAgaXMgc2V0
LCB0aGVuIHdlIHdpbGwgaW5jbHVkZSBkYXRhIGZvciBpbWFnZXMgYXMgd2VsbC4KLSAgICBpZiAo
b3RoZXIuaW5jbHVkZUltYWdlRGF0YSAmJiAhaW5jbHVkZUltYWdlRGF0YSAmJiAhaW5jbHVkZVNu
YXBzaG90KQorICAgIGlmIChvdGhlci5pbmNsdWRlSW1hZ2VEYXRhICYmICFpbmNsdWRlSW1hZ2VE
YXRhKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBpZiAob3RoZXIubGlua0luZGljYXRv
clNob3VsZEhhdmVMZWdhY3lNYXJnaW5zICE9IGxpbmtJbmRpY2F0b3JTaG91bGRIYXZlTGVnYWN5
TWFyZ2lucykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRl
bnRWaWV3SW50ZXJhY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250
ZW50Vmlld0ludGVyYWN0aW9uLm1tCmluZGV4IGMyZGI5ZDFlOGJmYTZhZTcxNjIyMjQyZTYxMmVh
ODM1NWFjMWEzYjUuLjhjZmMxNzdmMDZmNTdjMjJkMTBkZWUxYWNmMTRhODY2ZmUzYmJlZjQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJh
Y3Rpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJ
bnRlcmFjdGlvbi5tbQpAQCAtMjczMCw3ICsyNzMwLDcgQEAgLSAoQk9PTCloYXNTZWxlY3RhYmxl
UG9zaXRpb25BdFBvaW50OihDR1BvaW50KXBvaW50CiAgICAgICAgIHJldHVybiBOTzsKIAogI2lm
IEVOQUJMRShJTUFHRV9FWFRSQUNUSU9OKQotICAgIGlmIChfZWxlbWVudFBlbmRpbmdJbWFnZUV4
dHJhY3Rpb24gJiYgX3Bvc2l0aW9uSW5mb3JtYXRpb24uZWxlbWVudENvbnRleHQgPT0gX2VsZW1l
bnRQZW5kaW5nSW1hZ2VFeHRyYWN0aW9uKQorICAgIGlmIChfZWxlbWVudFBlbmRpbmdJbWFnZUV4
dHJhY3Rpb24gJiYgX3Bvc2l0aW9uSW5mb3JtYXRpb24uaW1hZ2VFbGVtZW50Q29udGV4dCA9PSBf
ZWxlbWVudFBlbmRpbmdJbWFnZUV4dHJhY3Rpb24pCiAgICAgICAgIHJldHVybiBZRVM7CiAjZW5k
aWYKIApAQCAtMjgwOCw3ICsyODA4LDcgQEAgLSAoQk9PTCl0ZXh0SW50ZXJhY3Rpb25HZXN0dXJl
OihVSVdLR2VzdHVyZVR5cGUpZ2VzdHVyZSBzaG91bGRCZWdpbkF0UG9pbnQ6KENHUG8KICNlbmRp
ZgogCiAjaWYgRU5BQkxFKElNQUdFX0VYVFJBQ1RJT04pCi0gICAgaWYgKF9lbGVtZW50UGVuZGlu
Z0ltYWdlRXh0cmFjdGlvbiAmJiBfcG9zaXRpb25JbmZvcm1hdGlvbi5lbGVtZW50Q29udGV4dCA9
PSBfZWxlbWVudFBlbmRpbmdJbWFnZUV4dHJhY3Rpb24pCisgICAgaWYgKF9lbGVtZW50UGVuZGlu
Z0ltYWdlRXh0cmFjdGlvbiAmJiBfcG9zaXRpb25JbmZvcm1hdGlvbi5pbWFnZUVsZW1lbnRDb250
ZXh0ID09IF9lbGVtZW50UGVuZGluZ0ltYWdlRXh0cmFjdGlvbikKICAgICAgICAgcmV0dXJuIFlF
UzsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9pb3MvV2ViUGFnZUlPUy5tbSBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lv
cy9XZWJQYWdlSU9TLm1tCmluZGV4IDFhZmYwOTQxYjkzZWExNjE1ZDU2NWEzYjgxY2U4OTc3MDMx
MjkyMGMuLjAxZWI2YzM0MWMxM2RlNzc2MGNjYWYzMDc1NzE5MWNmNWIxOTg5NGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdlSU9TLm1tCkBA
IC0yNjk0LDYgKzI2OTQsOCBAQCBzdGF0aWMgdm9pZCBpbWFnZVBvc2l0aW9uSW5mb3JtYXRpb24o
V2ViUGFnZSYgcGFnZSwgRWxlbWVudCYgZWxlbWVudCwgY29uc3QgSW50ZQogCiAgICAgaWYgKHJl
cXVlc3QuaW5jbHVkZVNuYXBzaG90IHx8IHJlcXVlc3QuaW5jbHVkZUltYWdlRGF0YSkKICAgICAg
ICAgaW5mby5pbWFnZSA9IGNyZWF0ZVNoYXJlYWJsZUJpdG1hcChyZW5kZXJJbWFnZSwgc2NyZWVu
U2l6ZSgpICogcGFnZS5jb3JlUGFnZSgpLT5kZXZpY2VTY2FsZUZhY3RvcigpKTsKKworICAgIGlu
Zm8uaW1hZ2VFbGVtZW50Q29udGV4dCA9IHBhZ2UuY29udGV4dEZvckVsZW1lbnQoZWxlbWVudCk7
CiB9CiAKIHN0YXRpYyB2b2lkIGJvdW5kc1Bvc2l0aW9uSW5mb3JtYXRpb24oUmVuZGVyT2JqZWN0
JiByZW5kZXJlciwgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24mIGluZm8pCkBAIC0y
NzE5LDYgKzI3MjEsNyBAQCBzdGF0aWMgdm9pZCBlbGVtZW50UG9zaXRpb25JbmZvcm1hdGlvbihX
ZWJQYWdlJiBwYWdlLCBFbGVtZW50JiBlbGVtZW50LCBjb25zdCBJbgogCiAgICAgaW5mby5pc0Vs
ZW1lbnQgPSB0cnVlOwogICAgIGluZm8uaWRBdHRyaWJ1dGUgPSBlbGVtZW50LmdldElkQXR0cmli
dXRlKCk7CisgICAgaW5mby5pc0ltYWdlT3ZlcmxheVRleHQgPSBpbm5lck5vblNoYXJlZE5vZGUg
JiYgSFRNTEVsZW1lbnQ6OmlzSW1hZ2VPdmVybGF5VGV4dCgqaW5uZXJOb25TaGFyZWROb2RlKTsK
IAogICAgIGluZm8udGl0bGUgPSBlbGVtZW50LmF0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRp
b24oSFRNTE5hbWVzOjp0aXRsZUF0dHIpLnN0cmluZygpOwogICAgIGlmIChsaW5rRWxlbWVudCAm
JiBpbmZvLnRpdGxlLmlzRW1wdHkoKSkKQEAgLTI3MjYsNyArMjcyOSw3IEBAIHN0YXRpYyB2b2lk
IGVsZW1lbnRQb3NpdGlvbkluZm9ybWF0aW9uKFdlYlBhZ2UmIHBhZ2UsIEVsZW1lbnQmIGVsZW1l
bnQsIGNvbnN0IEluCiAgICAgaWYgKGVsZW1lbnQucmVuZGVyZXIoKSkKICAgICAgICAgaW5mby50
b3VjaENhbGxvdXRFbmFibGVkID0gZWxlbWVudC5yZW5kZXJlcigpLT5zdHlsZSgpLnRvdWNoQ2Fs
bG91dEVuYWJsZWQoKTsKIAotICAgIGlmIChsaW5rRWxlbWVudCkgeworICAgIGlmIChsaW5rRWxl
bWVudCAmJiAhaW5mby5pc0ltYWdlT3ZlcmxheVRleHQpIHsKICAgICAgICAgaW5mby5pc0xpbmsg
PSB0cnVlOwogICAgICAgICBpbmZvLnVybCA9IGxpbmtFbGVtZW50LT5kb2N1bWVudCgpLmNvbXBs
ZXRlVVJMKHN0cmlwTGVhZGluZ0FuZFRyYWlsaW5nSFRNTFNwYWNlcyhsaW5rRWxlbWVudC0+Z2V0
QXR0cmlidXRlKEhUTUxOYW1lczo6aHJlZkF0dHIpKSk7CiAKQEAgLTI3NDYsOSArMjc0OSw4IEBA
IHN0YXRpYyB2b2lkIGVsZW1lbnRQb3NpdGlvbkluZm9ybWF0aW9uKFdlYlBhZ2UmIHBhZ2UsIEVs
ZW1lbnQmIGVsZW1lbnQsIGNvbnN0IEluCiAKICAgICBpZiAoYXV0byogcmVuZGVyZXIgPSBlbGVt
ZW50LnJlbmRlcmVyKCkpIHsKICAgICAgICAgYm9vbCBzaG91bGRDb2xsZWN0SW1hZ2VQb3NpdGlv
bkluZm9ybWF0aW9uID0gcmVuZGVyZXItPmlzUmVuZGVySW1hZ2UoKTsKLSAgICAgICAgaWYgKHNo
b3VsZENvbGxlY3RJbWFnZVBvc2l0aW9uSW5mb3JtYXRpb24gJiYgaW5uZXJOb25TaGFyZWROb2Rl
ICYmIEhUTUxFbGVtZW50Ojppc0ltYWdlT3ZlcmxheVRleHQoKmlubmVyTm9uU2hhcmVkTm9kZSkp
IHsKKyAgICAgICAgaWYgKHNob3VsZENvbGxlY3RJbWFnZVBvc2l0aW9uSW5mb3JtYXRpb24gJiYg
aW5mby5pc0ltYWdlT3ZlcmxheVRleHQpIHsKICAgICAgICAgICAgIHNob3VsZENvbGxlY3RJbWFn
ZVBvc2l0aW9uSW5mb3JtYXRpb24gPSBmYWxzZTsKLSAgICAgICAgICAgIGluZm8uaXNJbWFnZU92
ZXJsYXlUZXh0ID0gdHJ1ZTsKICAgICAgICAgICAgIGlmIChyZXF1ZXN0LmluY2x1ZGVJbWFnZURh
dGEpIHsKICAgICAgICAgICAgICAgICBpZiAoYXV0byByZW5kZXJlckFuZEltYWdlID0gaW1hZ2VS
ZW5kZXJlckFuZEltYWdlKGVsZW1lbnQpKSB7CiAgICAgICAgICAgICAgICAgICAgIGF1dG8mIFty
ZW5kZXJJbWFnZSwgaW1hZ2VdID0gKnJlbmRlcmVyQW5kSW1hZ2U7CkBAIC0yOTYwLDE0ICsyOTYy
LDE4IEBAIEludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uIFdlYlBhZ2U6OnBvc2l0aW9u
SW5mb3JtYXRpb24oY29uc3QgSW50ZXJhY3Rpb25JCiAgICAgaWYgKG1fZm9jdXNlZEVsZW1lbnQp
CiAgICAgICAgIGZvY3VzZWRFbGVtZW50UG9zaXRpb25JbmZvcm1hdGlvbigqdGhpcywgKm1fZm9j
dXNlZEVsZW1lbnQsIHJlcXVlc3QsIGluZm8pOwogCisgICAgYXV0byBoaXRUZXN0Tm9kZSA9IG1h
a2VSZWZQdHIoaGl0VGVzdFJlc3VsdC5pbm5lck5vblNoYXJlZE5vZGUoKSk7CiAgICAgaWYgKGlz
PEVsZW1lbnQ+KG5vZGVSZXNwb25kaW5nVG9DbGlja0V2ZW50cykpIHsKICAgICAgICAgYXV0byYg
ZWxlbWVudCA9IGRvd25jYXN0PEVsZW1lbnQ+KCpub2RlUmVzcG9uZGluZ1RvQ2xpY2tFdmVudHMp
OwotICAgICAgICBlbGVtZW50UG9zaXRpb25JbmZvcm1hdGlvbigqdGhpcywgZWxlbWVudCwgcmVx
dWVzdCwgaGl0VGVzdFJlc3VsdC5pbm5lck5vblNoYXJlZE5vZGUoKSwgaW5mbyk7CisgICAgICAg
IGVsZW1lbnRQb3NpdGlvbkluZm9ybWF0aW9uKCp0aGlzLCBlbGVtZW50LCByZXF1ZXN0LCBoaXRU
ZXN0Tm9kZS5nZXQoKSwgaW5mbyk7CiAKICAgICAgICAgaWYgKGluZm8uaXNMaW5rICYmICFpbmZv
LmlzSW1hZ2UgJiYgcmVxdWVzdC5pbmNsdWRlU25hcHNob3QpCiAgICAgICAgICAgICBpbmZvLmlt
YWdlID0gc2hhcmVhYmxlQml0bWFwU25hcHNob3RGb3JOb2RlKGVsZW1lbnQpOwogICAgIH0KIAor
ICAgIGlmICghaW5mby5pc0ltYWdlICYmIHJlcXVlc3QuaW5jbHVkZUltYWdlRGF0YSAmJiBpczxI
VE1MSW1hZ2VFbGVtZW50PihoaXRUZXN0Tm9kZSkpCisgICAgICAgIGltYWdlUG9zaXRpb25JbmZv
cm1hdGlvbigqdGhpcywgZG93bmNhc3Q8SFRNTEltYWdlRWxlbWVudD4oKmhpdFRlc3ROb2RlKSwg
cmVxdWVzdCwgaW5mbyk7CisKICAgICBpZiAoIShpbmZvLmlzTGluayB8fCBpbmZvLmlzSW1hZ2Up
KQogICAgICAgICBzZWxlY3Rpb25Qb3NpdGlvbkluZm9ybWF0aW9uKCp0aGlzLCByZXF1ZXN0LCBp
bmZvKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCmluZGV4IGZhMWQxNjEyN2MxNDNhNmU1M2M1YjhkNjhmZmUxYTA4MzhkNzRkMWYu
LjU2ZDkwZDk3OTIxOWYxMDBmYmRjYmVlZjUyYmMwODdmNGI4ZThkOTQgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyMSBAQAorMjAyMS0wNC0xNCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNv
bT4KKworICAgICAgICBbaU9TXSBNYWtlIGltYWdlIGV4dHJhY3Rpb24gaW50ZXJhY3Rpb25zIHdv
cmsgZm9yIGVsZW1lbnRzIGluc2lkZSBsaW5rcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0NTE3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NjYx
NjQzMT4KKworICAgICAgICBSZXZpZXdlZCBieSBEZXZpbiBSb3Vzc28uCisKKyAgICAgICAgKiBm
YXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2NsaWNrLWxpbmstd2l0aC1pbWFnZS1vdmVybGF5
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFj
dGlvbi9jbGljay1saW5rLXdpdGgtaW1hZ2Utb3ZlcmxheS5odG1sOiBBZGRlZC4KKworICAgICAg
ICBBZGQgYSB0ZXN0IHRoYXQgdmVyaWZpZXMgdGhhdCBhY3RpdmF0aW5nIGRpZmZlcmVudCBwYXJ0
cyBvZiBhbiBpbWFnZSBpbiBhIGxpbmsgZmlyZXMgY2xpY2sgZXZlbnRzLgorCisgICAgICAgICog
ZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9pb3Mvc2VsZWN0LXdvcmQtaW4taW1hZ2Utb3Zl
cmxheS1pbnNpZGUtbGluay1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvaW1h
Z2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXktaW5z
aWRlLWxpbmsuaHRtbDogQWRkZWQuCisKKyAgICAgICAgQWRkIGEgdGVzdCB0aGF0IHNlbGVjdHMg
aW1hZ2Ugb3ZlcmxheSB0ZXh0IGZvciBhbiBpbWFnZSBlbGVtZW50IGluc2lkZSBhIGxpbmsuCisK
IDIwMjEtMDQtMTMgIFppcmFuIFN1biAgPHpzdW5AaWdhbGlhLmNvbT4KIAogICAgICAgICBbY3Nz
LWdyaWRdIEluY29ycmVjdCB0cmFjayBzaXppbmcgd2hlbiB1c2luZyByZWxhdGl2ZSBzaXplZCBp
dGVtcyBpbiAnYXV0bycgY29sdW1uIHRyYWNrcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9jbGljay1saW5rLXdpdGgtaW1hZ2Utb3ZlcmxheS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2Ns
aWNrLWxpbmstd2l0aC1pbWFnZS1vdmVybGF5LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40NDg3
YmE0ZGYzNWE1YTZlZWIwNjEwODY5NDk3MmExNjBlY2ZlOTc1Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9pbWFnZXMvaW1hZ2UtZXh0cmFjdGlvbi9jbGljay1saW5rLXdpdGgt
aW1hZ2Utb3ZlcmxheS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1IEBACitQQVNTIGNsaWNrQ291
bnQgYmVjYW1lIDIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01Q
TEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0
aW9uL2NsaWNrLWxpbmstd2l0aC1pbWFnZS1vdmVybGF5Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2NsaWNrLWxpbmstd2l0aC1pbWFnZS1vdmVybGF5Lmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYWU4ZGFhNDc4NjRlMzQ5OTI2NGRjYWI1ZjcxMGJjOTBmOGFiNGM4Zgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJhY3Rp
b24vY2xpY2stbGluay13aXRoLWltYWdlLW92ZXJsYXkuaHRtbApAQCAtMCwwICsxLDUxIEBACis8
IURPQ1RZUEUgaHRtbD4gPCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyB1c2VGbGV4aWJsZVZpZXdw
b3J0PXRydWUgXSAtLT4KKzxodG1sPgorPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9Indp
ZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIj4KKzxoZWFkPgorPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9yZXNvdXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KK2ltZyB7
CisgICAgcG9zaXRpb246IGFic29sdXRlOworICAgIHRvcDogMDsKKyAgICBsZWZ0OiAwOworfQor
CithIHsKKyAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cit9Cis8L3N0eWxlPgorPC9oZWFkPgor
PGJvZHk+Cis8YSBocmVmPSJodHRwOi8vbG9jYWxob3N0OjU0MzIxIj4KKyAgICA8aW1nIHNyYz0i
Li4vcmVzb3VyY2VzL2dyZWVuLTQwMHg0MDAucG5nIj48L2ltZz4KKzwvYT4KKzxzY3JpcHQ+Citq
c1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK2FkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBhc3luYyAoKSA9
PiB7CisgICAgY2xpY2tDb3VudCA9IDA7CisKKyAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJh
IikuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCAoZXZlbnQpID0+IHsKKyAgICAgICAgZXZlbnQu
cHJldmVudERlZmF1bHQoKTsKKyAgICAgICAgY2xpY2tDb3VudCsrOworICAgIH0pOworCisgICAg
aW50ZXJuYWxzLmluc3RhbGxJbWFnZU92ZXJsYXkoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW1n
IiksIFsKKyAgICAgICAgeworICAgICAgICAgICAgdGV4dCA6ICJoZWxsbyIsCisgICAgICAgICAg
ICB0b3BMZWZ0IDogbmV3IERPTVBvaW50UmVhZE9ubHkoMCwgMCksCisgICAgICAgICAgICB0b3BS
aWdodCA6IG5ldyBET01Qb2ludFJlYWRPbmx5KDEsIDApLAorICAgICAgICAgICAgYm90dG9tUmln
aHQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgxLCAwLjI1KSwKKyAgICAgICAgICAgIGJvdHRvbUxl
ZnQgOiBuZXcgRE9NUG9pbnRSZWFkT25seSgwLCAwLjI1KSwKKyAgICAgICAgfQorICAgIF0pOwor
CisgICAgYXdhaXQgVUlIZWxwZXIuYWN0aXZhdGVBdCgxMDAsIDUwKTsKKyAgICBhd2FpdCBVSUhl
bHBlci53YWl0Rm9yRG91YmxlVGFwRGVsYXkoKTsKKyAgICBhd2FpdCBVSUhlbHBlci5hY3RpdmF0
ZUF0KDMwMCwgMzAwKTsKKworICAgIHNob3VsZEJlY29tZUVxdWFsKCJjbGlja0NvdW50IiwgIjIi
LCBmaW5pc2hKU1Rlc3QpOworfSk7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdl
cy9pbWFnZS1leHRyYWN0aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5LWluc2lk
ZS1saW5rLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL2ltYWdlLWV4dHJh
Y3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXktaW5zaWRlLWxpbmstZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmM0MWFhNDJmNmU2OTI0M2FiNzQxMmMwOGMzNjc5NmMyNjE1NmUz
YjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRy
YWN0aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5LWluc2lkZS1saW5rLWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDUgQEAKK1BBU1Mgc2VsZWN0aW9uUmVjdHMubGVuZ3RoIGlzIDEK
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9zZWxl
Y3Qtd29yZC1pbi1pbWFnZS1vdmVybGF5LWluc2lkZS1saW5rLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L2ltYWdlcy9pbWFnZS1leHRyYWN0aW9uL2lvcy9zZWxlY3Qtd29yZC1pbi1pbWFnZS1vdmVy
bGF5LWluc2lkZS1saW5rLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNGM1YWY5NDgyNDA4MDNkOTZlZTRhMWZi
Mjc3MTkxNTg3MWRiMTQyMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW1h
Z2VzL2ltYWdlLWV4dHJhY3Rpb24vaW9zL3NlbGVjdC13b3JkLWluLWltYWdlLW92ZXJsYXktaW5z
aWRlLWxpbmsuaHRtbApAQCAtMCwwICsxLDQyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgor
PGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy91aS1oZWxwZXIuanMi
Pjwvc2NyaXB0PgorPHN0eWxlPgoraW1nIHsKKyAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAg
dG9wOiAwOworICAgIGxlZnQ6IDA7Cit9CisKK2EgeworICAgIGRpc3BsYXk6IGlubGluZS1ibG9j
azsKK30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxhIGhyZWY9Imh0dHA6Ly9sb2NhbGhv
c3Q6NTQzMjEiIG9uY2xpY2s9ImV2ZW50LnByZXZlbnREZWZhdWx0KCkiPgorICAgIDxpbWcgc3Jj
PSIuLi8uLi9yZXNvdXJjZXMvZ3JlZW4tNDAweDQwMC5wbmciPjwvaW1nPgorPC9hPgorPHNjcmlw
dD4KK2pzVGVzdElzQXN5bmMgPSB0cnVlOworYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGFzeW5j
ICgpID0+IHsKKyAgICBsZXQgaW1hZ2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbWciKTsK
KyAgICBpbnRlcm5hbHMuaW5zdGFsbEltYWdlT3ZlcmxheShpbWFnZSwgWworICAgICAgICB7Cisg
ICAgICAgICAgICB0ZXh0IDogImhlbGxvIiwKKyAgICAgICAgICAgIHRvcExlZnQgOiBuZXcgRE9N
UG9pbnRSZWFkT25seSgwLCAwKSwKKyAgICAgICAgICAgIHRvcFJpZ2h0IDogbmV3IERPTVBvaW50
UmVhZE9ubHkoMSwgMCksCisgICAgICAgICAgICBib3R0b21SaWdodCA6IG5ldyBET01Qb2ludFJl
YWRPbmx5KDEsIDAuMjUpLAorICAgICAgICAgICAgYm90dG9tTGVmdCA6IG5ldyBET01Qb2ludFJl
YWRPbmx5KDAsIDAuMjUpLAorICAgICAgICB9CisgICAgXSk7CisgICAgYXdhaXQgVUlIZWxwZXIu
bG9uZ1ByZXNzQXRQb2ludCgyMDAsIDUwKTsKKyAgICBzZWxlY3Rpb25SZWN0cyA9IGF3YWl0IFVJ
SGVscGVyLndhaXRGb3JTZWxlY3Rpb25Ub0FwcGVhcigpOworICAgIHNob3VsZEJlKCJzZWxlY3Rp
b25SZWN0cy5sZW5ndGgiLCAiMSIpOworICAgIGZpbmlzaEpTVGVzdCgpOworfSk7Cis8L3Njcmlw
dD4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCg==
</data>
<flag name="commit-queue"
          id="446239"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>