<?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>220867</bug_id>
          
          <creation_ts>2021-01-22 10:15:35 -0800</creation_ts>
          <short_desc>DisplayList::Replayer should stop replay and inform clients after encountering an invalid item</short_desc>
          <delta_ts>2021-01-25 14:31:32 -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>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=220948</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>219097</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>cdumez</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1721616</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-01-22 10:15:35 -0800</bug_when>
    <thetext>WIP for #219097.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721625</commentid>
    <comment_count>1</comment_count>
      <attachid>418157</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-01-22 10:54:18 -0800</bug_when>
    <thetext>Created attachment 418157
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721665</commentid>
    <comment_count>2</comment_count>
      <attachid>418157</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-01-22 11:58:00 -0800</bug_when>
    <thetext>Comment on attachment 418157
Patch

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

&gt; Source/WebCore/platform/graphics/displaylists/DisplayList.h:129
&gt; +                m_isValid ? Optional&lt;ItemHandle&gt; {{ m_currentBufferForItem }} : WTF::nullopt,

nit: makeOptional() may look nicer.

&gt; Tools/TestWebKitAPI/Tests/WebCore/cg/DisplayListTestsCG.cpp:42
&gt; +static constexpr CGFloat contextWidth = 100;

static is not needed since global &amp; const.

&gt; Tools/TestWebKitAPI/Tests/WebCore/cg/DisplayListTestsCG.cpp:43
&gt; +static constexpr CGFloat contextHeight = 100;

ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721673</commentid>
    <comment_count>3</comment_count>
      <attachid>418157</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-01-22 12:06:26 -0800</bug_when>
    <thetext>Comment on attachment 418157
Patch

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

Thanks for the review!

&gt;&gt; Source/WebCore/platform/graphics/displaylists/DisplayList.h:129
&gt;&gt; +                m_isValid ? Optional&lt;ItemHandle&gt; {{ m_currentBufferForItem }} : WTF::nullopt,
&gt; 
&gt; nit: makeOptional() may look nicer.

Changed to use makeOptional().

&gt;&gt; Tools/TestWebKitAPI/Tests/WebCore/cg/DisplayListTestsCG.cpp:42
&gt;&gt; +static constexpr CGFloat contextWidth = 100;
&gt; 
&gt; static is not needed since global &amp; const.

Removed the static.

&gt;&gt; Tools/TestWebKitAPI/Tests/WebCore/cg/DisplayListTestsCG.cpp:43
&gt;&gt; +static constexpr CGFloat contextHeight = 100;
&gt; 
&gt; ditto.

👍🏻</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721676</commentid>
    <comment_count>4</comment_count>
      <attachid>418168</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-01-22 12:10:00 -0800</bug_when>
    <thetext>Created attachment 418168
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721683</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-01-22 12:37:50 -0800</bug_when>
    <thetext>commit-queue failed to commit attachment 418168 to WebKit repository.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721685</commentid>
    <comment_count>6</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-01-22 12:40:28 -0800</bug_when>
    <thetext>Committed r271757: &lt;https://trac.webkit.org/changeset/271757&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721686</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-01-22 12:41:13 -0800</bug_when>
    <thetext>&lt;rdar://problem/73511358&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>418157</attachid>
            <date>2021-01-22 10:54:18 -0800</date>
            <delta_ts>2021-01-22 11:58:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220867-20210122105417.patch</filename>
            <type>text/plain</type>
            <size>18834</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNzQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmM5YTVjNTI5MGM3Mzhk
NzU4MDg4NzQyZjliNzM2YmRkODBkODY1ZS4uMmNiMmE3YjVlNGQ4MjQ0MDI4OGIzY2IxNzIzNDll
MTFlODJkN2E0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTAxLTIxICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIERpc3BsYXlMaXN0
OjpSZXBsYXllciBzaG91bGQgc3RvcCByZXBsYXkgYW5kIGluZm9ybSBjbGllbnRzIGFmdGVyIGVu
Y291bnRlcmluZyBhbiBpbnZhbGlkIGl0ZW0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyMDg2NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIE1ha2UgdGhlIGBEaXNwbGF5TGlzdGAgaXRlbSBpdGVyYXRvciBl
bWl0IGBPcHRpb25hbDxJdGVtSGFuZGxlPmAgaW5zdGVhZCBvZiBqdXN0IGBJdGVtSGFuZGxlYDsg
aW4gdGhlIGNhc2Ugb2YKKyAgICAgICAgY2xpZW50IGRlY29kaW5nIG9yIGl0ZW0gdmFsaWRhdGlv
biBmYWlsdXJlcyAoc2VlICMyMjA3MTApLCB0aGlzIGl0ZW0gaGFuZGxlIHdpbGwgYmUgYFdURjo6
bnVsbG9wdGAuIFRoZSBkaXNwbGF5CisgICAgICAgIGxpc3QgcmVwbGF5ZXIgd2lsbCB0aGVuIGhh
bmRsZSB0aGlzIGJ5IGhhbHRpbmcgcmVwbGF5IHdpdGggYFN0b3BSZXBsYXlSZWFzb246OkludmFs
aWRJdGVtYC4KKworICAgICAgICBUaGlzIHJlZmFjdG9yaW5nIHdpbGwgZXZlbnR1YWxseSBlbmFi
bGUgYFJlbW90ZVJlbmRlcmluZ0JhY2tlbmRgIChpbiB0aGUgR1BVIHByb2Nlc3MpIHRvIHRlcm1p
bmF0ZSB0aGUgd2ViCisgICAgICAgIGNvbnRlbnQgcHJvY2VzcyB3aGVuIHdlIGZhaWwgdG8gZGVj
b2RlIGEgZGlzcGxheSBsaXN0IGl0ZW0gZHVyaW5nIHBsYXliYWNrIChvciBlbmNvdW50ZXIgYW4g
aW52YWxpZCBpbmxpbmUKKyAgICAgICAgaXRlbSkuCisKKyAgICAgICAgVGVzdDogICBEaXNwbGF5
TGlzdFRlc3RzLklubGluZUl0ZW1WYWxpZGF0aW9uRmFpbHVyZQorICAgICAgICAgICAgICAgIERp
c3BsYXlMaXN0VGVzdHMuT3V0T2ZMaW5lSXRlbURlY29kaW5nRmFpbHVyZQorCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdDo6YXNUZXh0IGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdDo6ZHVtcCBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6RGlzcGxheUxpc3Q6Oml0ZXJhdG9yOjphdEVuZCBj
b25zdCk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6RGlzcGxheUxpc3Q6Oml0ZXJh
dG9yOjp1cGRhdGVDdXJyZW50SXRlbSk6CisKKyAgICAgICAgQWRkIGFuIGBtX2lzVmFsaWRgIGZs
YWcuIFRoaXMgZmxhZyBpcyBzZXQgdG8gYHRydWVgIGluaXRpYWxseSwgYW5kIGlzIG9ubHkgc2V0
IHRvIGBmYWxzZWAgd2hlbiB3ZSBlbmNvdW50ZXIgYW4KKyAgICAgICAgaXRlbSB0aGF0IGlzIGVp
dGhlciBpbnZhbGlkIG9yIHVuYWJsZSB0byBiZSBkZWNvZGVkLiBBZGRpdGlvbmFsbHksIHJlbW92
ZSByZWxlYXNlIGFzc2VydGlvbnMgYW5kIHRoZSBGSVhNRXMKKyAgICAgICAgcmVnYXJkaW5nIGhh
bmRsaW5nIGl0ZW0gZGVjb2RpbmcgZmFpbHVyZXMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3QuaDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3Bs
YXlMaXN0OjpEaXNwbGF5TGlzdDo6aXRlcmF0b3I6Om9wZXJhdG9yKiBjb25zdCk6CisKKyAgICAg
ICAgSWYgdGhlIGBtX2lzVmFsaWRgIGZsYWcgYWJvdmUgaXMgc2V0LCByZXR1cm4gYFdURjo6bnVs
bG9wdGAgZm9yIHRoZSBpdGVtIGhhbmRsZS4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkRpc3BsYXlMaXN0OjpSZXBsYXllcjo6cmVwbGF5KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZXBsYXllci5oOgorCisgICAgICAgIFJlbmFt
ZSBgRGVjb2RpbmdGYWlsdXJlYCB0byBgSW52YWxpZEl0ZW1gLCBzaW5jZSBpdCBub3cgYXBwbGll
cyB0byBib3RoIGl0ZW1zIHRoYXQgYXJlIGludmFsaWQgKGUuZy4gY29udGFpbgorICAgICAgICBp
ZGVudGlmaWVyIHZhbHVlcyBvZiAwIHdoZW4gdGhleSBzaG91bGRuJ3QpIGFzIHdlbGwgYXMgaXRl
bXMgdGhhdCBmYWlsIGRlY29kaW5nICh3aGljaCwgaW4gdGhlIGNhc2Ugb2YgdGhlIEdQVQorICAg
ICAgICBwcm9jZXNzLCBjb3JyZXNwb25kcyB0byBJUEMgZGVjb2RpbmcgZmFpbHVyZXMpLgorCiAy
MDIxLTAxLTIyICBaaXJhbiBTdW4gIDx6c3VuQGlnYWxpYS5jb20+CiAKICAgICAgICAgW2Nzcy1n
cmlkXSBSZWxheW91dCBncmlkIGl0ZW1zIHdoZW4gZGVmaW5pdGVuZXNzIGNoYW5nZXMuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlz
cGxheUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxp
c3RzL0Rpc3BsYXlMaXN0LmNwcAppbmRleCAxOTYxMzhiYWQ0ODQ1MGFkNzA3MTdhNDNiZGYwNTVl
NzI1MmY2NmMxLi5kODAyNDc0OGUxZjQwYWEwYzUwOGQyMzU4MzU2NDljYzc5MWJhOThkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlz
cGxheUxpc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3Bs
YXlsaXN0cy9EaXNwbGF5TGlzdC5jcHAKQEAgLTExNSwxMiArMTE1LDEyIEBAIFN0cmluZyBEaXNw
bGF5TGlzdDo6YXNUZXh0KEFzVGV4dEZsYWdzIGZsYWdzKSBjb25zdAogewogICAgIFRleHRTdHJl
YW0gc3RyZWFtKFRleHRTdHJlYW06OkxpbmVNb2RlOjpNdWx0aXBsZUxpbmUsIFRleHRTdHJlYW06
OkZvcm1hdHRpbmc6OlNWR1N0eWxlUmVjdCk7CiAgICAgZm9yIChhdXRvIFtpdGVtLCBleHRlbnQs
IGl0ZW1TaXplSW5CdWZmZXJdIDogKnRoaXMpIHsKLSAgICAgICAgaWYgKCFzaG91bGREdW1wRm9y
RmxhZ3MoZmxhZ3MsIGl0ZW0pKQorICAgICAgICBpZiAoIXNob3VsZER1bXBGb3JGbGFncyhmbGFn
cywgKml0ZW0pKQogICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgVGV4dFN0cmVhbTo6
R3JvdXBTY29wZSBncm91cChzdHJlYW0pOwogICAgICAgICBzdHJlYW0gPDwgaXRlbTsKLSAgICAg
ICAgaWYgKGl0ZW0uaXNEcmF3aW5nSXRlbSgpKQorICAgICAgICBpZiAoaXRlbS0+aXNEcmF3aW5n
SXRlbSgpKQogICAgICAgICAgICAgc3RyZWFtIDw8ICIgZXh0ZW50ICIgPDwgZXh0ZW50OwogICAg
IH0KICAgICByZXR1cm4gc3RyZWFtLnJlbGVhc2UoKTsKQEAgLTEzNCw3ICsxMzQsNyBAQCB2b2lk
IERpc3BsYXlMaXN0OjpkdW1wKFRleHRTdHJlYW0mIHRzKSBjb25zdAogICAgIGZvciAoYXV0byBb
aXRlbSwgZXh0ZW50LCBpdGVtU2l6ZUluQnVmZmVyXSA6ICp0aGlzKSB7CiAgICAgICAgIFRleHRT
dHJlYW06Okdyb3VwU2NvcGUgZ3JvdXAodHMpOwogICAgICAgICB0cyA8PCBpdGVtOwotICAgICAg
ICBpZiAoaXRlbS5pc0RyYXdpbmdJdGVtKCkpCisgICAgICAgIGlmIChpdGVtLT5pc0RyYXdpbmdJ
dGVtKCkpCiAgICAgICAgICAgICB0cyA8PCAiIGV4dGVudCAiIDw8IGV4dGVudDsKICAgICB9CiAg
ICAgdHMuc3RhcnRHcm91cCgpOwpAQCAtMzIyLDcgKzMyMiw3IEBAIHZvaWQgRGlzcGxheUxpc3Q6
OmFwcGVuZChJdGVtSGFuZGxlIGl0ZW0pCiAKIGJvb2wgRGlzcGxheUxpc3Q6Oml0ZXJhdG9yOjph
dEVuZCgpIGNvbnN0CiB7Ci0gICAgaWYgKG1fZGlzcGxheUxpc3QuaXNFbXB0eSgpKQorICAgIGlm
IChtX2Rpc3BsYXlMaXN0LmlzRW1wdHkoKSB8fCAhbV9pc1ZhbGlkKQogICAgICAgICByZXR1cm4g
dHJ1ZTsKIAogICAgIGF1dG8mIGl0ZW1zID0gKm1fZGlzcGxheUxpc3QubV9pdGVtczsKQEAgLTM1
MiwyMCArMzUyLDE1IEBAIHZvaWQgRGlzcGxheUxpc3Q6Oml0ZXJhdG9yOjp1cGRhdGVDdXJyZW50
SXRlbSgpCiAgICAgICAgIGF1dG8gZGF0YUxlbmd0aCA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDY0
X3QqPihtX2N1cnNvcilbMV07CiAgICAgICAgIGF1dG8qIHN0YXJ0T2ZEYXRhID0gbV9jdXJzb3Ig
KyAyICogc2l6ZW9mKHVpbnQ2NF90KTsKICAgICAgICAgYXV0byBkZWNvZGVkSXRlbUhhbmRsZSA9
IGNsaWVudC0+ZGVjb2RlSXRlbShzdGFydE9mRGF0YSwgZGF0YUxlbmd0aCwgaXRlbVR5cGUsIG1f
Y3VycmVudEJ1ZmZlckZvckl0ZW0pOwotICAgICAgICBpZiAoIWRlY29kZWRJdGVtSGFuZGxlKSB7
Ci0gICAgICAgICAgICAvLyBGSVhNRTogSW5zdGVhZCBvZiBjcmFzaGluZywgdGhpcyBuZWVkcyB0
byBmYWlsIGdyYWNlZnVsbHkgYW5kIGluZm9ybSB0aGUgY2FsbGVyLgotICAgICAgICAgICAgLy8g
Rm9yIHRoZSB0aW1lIGJlaW5nLCB0aGlzIGFzc2VydGlvbiBtYWtlcyBidWdzIGluIGl0ZW0gYnVm
ZmVyIGVuY29kaW5nIGxvZ2ljIGVhc2llcgotICAgICAgICAgICAgLy8gdG8gY2F0Y2ggYnkgYXZv
aWRpbmcgbXlzdGVyaW91cyBvdXQtb2YtYm91bmRzIHJlYWRzIGFuZCBpbmNvcnJlY3RseSBhbGln
bmVkIGl0ZW1zCi0gICAgICAgICAgICAvLyBkb3duIHRoZSBsaW5lLgotICAgICAgICAgICAgUkVM
RUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgfQorICAgICAgICBpZiAoVU5MSUtF
TFkoIWRlY29kZWRJdGVtSGFuZGxlKSkKKyAgICAgICAgICAgIG1faXNWYWxpZCA9IGZhbHNlOwor
CiAgICAgICAgIG1fY3VycmVudEJ1ZmZlckZvckl0ZW1bMF0gPSBzdGF0aWNfY2FzdDx1aW50OF90
PihpdGVtVHlwZSk7CiAgICAgICAgIG1fY3VycmVudEl0ZW1TaXplSW5CdWZmZXIgPSAyICogc2l6
ZW9mKHVpbnQ2NF90KSArIHJvdW5kVXBUb011bHRpcGxlT2YoYWxpZ25vZih1aW50NjRfdCksIGRh
dGFMZW5ndGgpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIGlmICghSXRlbUhhbmRsZSB7IG1fY3Vy
c29yIH0uc2FmZUNvcHkoeyBtX2N1cnJlbnRCdWZmZXJGb3JJdGVtIH0pKSB7Ci0gICAgICAgICAg
ICAvLyBGSVhNRTogSW5zdGVhZCBvZiBjcmFzaGluZywgdGhpcyBuZWVkcyB0byBmYWlsIGdyYWNl
ZnVsbHkgYW5kIGluZm9ybSB0aGUgY2FsbGVyLgotICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKLSAgICAgICAgfQorICAgICAgICBpZiAoVU5MSUtFTFkoIUl0ZW1IYW5k
bGUgeyBtX2N1cnNvciB9LnNhZmVDb3B5KHsgbV9jdXJyZW50QnVmZmVyRm9ySXRlbSB9KSkpCisg
ICAgICAgICAgICBtX2lzVmFsaWQgPSBmYWxzZTsKKwogICAgICAgICBtX2N1cnJlbnRJdGVtU2l6
ZUluQnVmZmVyID0gcGFkZGVkU2l6ZU9mVHlwZUFuZEl0ZW07CiAgICAgfQogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlM
aXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlz
cGxheUxpc3QuaAppbmRleCBhOTAyZjM4MzQxMzYxZmU4ZjU3NWMwZTg0NDFhMmVhZTFlOWI4OTU1
Li45MjA5ZTdlZWQyZjY0ZWIwYjA4MmExYzA0MzlkZjA3MjNlMjc1N2RjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3Qu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlz
cGxheUxpc3QuaApAQCAtMTE4LDcgKzExOCw3IEBAIHB1YmxpYzoKICAgICAgICAgdm9pZCBvcGVy
YXRvcisrKCkgeyBhZHZhbmNlKCk7IH0KIAogICAgICAgICBzdHJ1Y3QgVmFsdWUgewotICAgICAg
ICAgICAgSXRlbUhhbmRsZSBpdGVtOworICAgICAgICAgICAgT3B0aW9uYWw8SXRlbUhhbmRsZT4g
aXRlbTsKICAgICAgICAgICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gZXh0ZW50OwogICAgICAgICAg
ICAgc2l6ZV90IGl0ZW1TaXplSW5CdWZmZXIgeyAwIH07CiAgICAgICAgIH07CkBAIC0xMjYsOSAr
MTI2LDkgQEAgcHVibGljOgogICAgICAgICBWYWx1ZSBvcGVyYXRvciooKSBjb25zdAogICAgICAg
ICB7CiAgICAgICAgICAgICByZXR1cm4gewotICAgICAgICAgICAgICAgIEl0ZW1IYW5kbGUgeyBt
X2N1cnJlbnRCdWZmZXJGb3JJdGVtIH0sCisgICAgICAgICAgICAgICAgbV9pc1ZhbGlkID8gT3B0
aW9uYWw8SXRlbUhhbmRsZT4ge3sgbV9jdXJyZW50QnVmZmVyRm9ySXRlbSB9fSA6IFdURjo6bnVs
bG9wdCwKICAgICAgICAgICAgICAgICBtX2N1cnJlbnRFeHRlbnQsCi0gICAgICAgICAgICAgICAg
bV9jdXJyZW50SXRlbVNpemVJbkJ1ZmZlcgorICAgICAgICAgICAgICAgIG1fY3VycmVudEl0ZW1T
aXplSW5CdWZmZXIsCiAgICAgICAgICAgICB9OwogICAgICAgICB9CiAKQEAgLTE1Miw2ICsxNTIs
NyBAQCBwdWJsaWM6CiAgICAgICAgIHVpbnQ4X3QqIG1fY3VycmVudEJ1ZmZlckZvckl0ZW0geyBu
dWxscHRyIH07CiAgICAgICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbV9jdXJyZW50RXh0ZW50Owog
ICAgICAgICBzaXplX3QgbV9jdXJyZW50SXRlbVNpemVJbkJ1ZmZlciB7IDAgfTsKKyAgICAgICAg
Ym9vbCBtX2lzVmFsaWQgeyB0cnVlIH07CiAgICAgfTsKIAogICAgIGl0ZXJhdG9yIGJlZ2luKCkg
Y29uc3QgeyByZXR1cm4geyAqdGhpcyB9OyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZXBsYXllci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RS
ZXBsYXllci5jcHAKaW5kZXggNDJlMTQxMmU1NDg0NmIwYTJiZDg0NTYzZWJhZjYyOTY4YTU1M2I3
Yy4uMzI1ZGI5NzM5ZTlmY2YyMTMxZTkxNGU2YWU1Yzg1YTgyZWJhZTFjOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0
UmVwbGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3Bs
YXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxheWVyLmNwcApAQCAtMTQxLDE2ICsxNDEsMjEgQEAgUmVw
bGF5UmVzdWx0IFJlcGxheWVyOjpyZXBsYXkoY29uc3QgRmxvYXRSZWN0JiBpbml0aWFsQ2xpcCwg
Ym9vbCB0cmFja1JlcGxheUxpc3QKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAK
KyAgICAgICAgaWYgKCFpdGVtKSB7CisgICAgICAgICAgICByZXN1bHQucmVhc29uRm9yU3RvcHBp
bmcgPSBTdG9wUmVwbGF5UmVhc29uOjpJbnZhbGlkSXRlbTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICB9CisKICAgICAgICAgTE9HX1dJVEhfU1RSRUFNKERpc3BsYXlMaXN0cywgc3RyZWFt
IDw8ICJhcHBseWluZyAiIDw8IGkrKyA8PCAiICIgPDwgaXRlbSk7CiAKLSAgICAgICAgaWYgKGl0
ZW0uaXM8TWV0YUNvbW1hbmRDaGFuZ2VEZXN0aW5hdGlvbkltYWdlQnVmZmVyPigpKSB7CisgICAg
ICAgIGlmIChpdGVtLT5pczxNZXRhQ29tbWFuZENoYW5nZURlc3RpbmF0aW9uSW1hZ2VCdWZmZXI+
KCkpIHsKICAgICAgICAgICAgIHJlc3VsdC5udW1iZXJPZkJ5dGVzUmVhZCArPSBpdGVtU2l6ZUlu
QnVmZmVyOwogICAgICAgICAgICAgcmVzdWx0LnJlYXNvbkZvclN0b3BwaW5nID0gU3RvcFJlcGxh
eVJlYXNvbjo6Q2hhbmdlRGVzdGluYXRpb25JbWFnZUJ1ZmZlcjsKLSAgICAgICAgICAgIHJlc3Vs
dC5uZXh0RGVzdGluYXRpb25JbWFnZUJ1ZmZlciA9IGl0ZW0uZ2V0PE1ldGFDb21tYW5kQ2hhbmdl
RGVzdGluYXRpb25JbWFnZUJ1ZmZlcj4oKS5pZGVudGlmaWVyKCk7CisgICAgICAgICAgICByZXN1
bHQubmV4dERlc3RpbmF0aW9uSW1hZ2VCdWZmZXIgPSBpdGVtLT5nZXQ8TWV0YUNvbW1hbmRDaGFu
Z2VEZXN0aW5hdGlvbkltYWdlQnVmZmVyPigpLmlkZW50aWZpZXIoKTsKICAgICAgICAgICAgIGJy
ZWFrOwogICAgICAgICB9CiAKLSAgICAgICAgaWYgKGF1dG8gW3JlYXNvbkZvclN0b3BwaW5nLCBt
aXNzaW5nQ2FjaGVkUmVzb3VyY2VJZGVudGlmaWVyXSA9IGFwcGx5SXRlbShpdGVtKTsgcmVhc29u
Rm9yU3RvcHBpbmcpIHsKKyAgICAgICAgaWYgKGF1dG8gW3JlYXNvbkZvclN0b3BwaW5nLCBtaXNz
aW5nQ2FjaGVkUmVzb3VyY2VJZGVudGlmaWVyXSA9IGFwcGx5SXRlbSgqaXRlbSk7IHJlYXNvbkZv
clN0b3BwaW5nKSB7CiAgICAgICAgICAgICByZXN1bHQucmVhc29uRm9yU3RvcHBpbmcgPSAqcmVh
c29uRm9yU3RvcHBpbmc7CiAgICAgICAgICAgICByZXN1bHQubWlzc2luZ0NhY2hlZFJlc291cmNl
SWRlbnRpZmllciA9IFdURk1vdmUobWlzc2luZ0NhY2hlZFJlc291cmNlSWRlbnRpZmllcik7CiAg
ICAgICAgICAgICBicmVhazsKQEAgLTE1OSw4ICsxNjQsOCBAQCBSZXBsYXlSZXN1bHQgUmVwbGF5
ZXI6OnJlcGxheShjb25zdCBGbG9hdFJlY3QmIGluaXRpYWxDbGlwLCBib29sIHRyYWNrUmVwbGF5
TGlzdAogICAgICAgICByZXN1bHQubnVtYmVyT2ZCeXRlc1JlYWQgKz0gaXRlbVNpemVJbkJ1ZmZl
cjsKIAogICAgICAgICBpZiAoVU5MSUtFTFkodHJhY2tSZXBsYXlMaXN0KSkgewotICAgICAgICAg
ICAgcmVwbGF5TGlzdC0+YXBwZW5kKGl0ZW0pOwotICAgICAgICAgICAgaWYgKGl0ZW0uaXNEcmF3
aW5nSXRlbSgpKQorICAgICAgICAgICAgcmVwbGF5TGlzdC0+YXBwZW5kKCppdGVtKTsKKyAgICAg
ICAgICAgIGlmIChpdGVtLT5pc0RyYXdpbmdJdGVtKCkpCiAgICAgICAgICAgICAgICAgcmVwbGF5
TGlzdC0+YWRkRHJhd2luZ0l0ZW1FeHRlbnQoV1RGTW92ZShleHRlbnQpKTsKICAgICAgICAgfQog
ICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3Bs
YXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxheWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZXBsYXllci5oCmluZGV4IGQ0MTRhNmZh
MDUwMmUxNmY3NzlmYmE2MmQyMjQxOTYzNDIzZWIwYWYuLmQyZGUwYjZmZTVlOGExZDBjNmJmMWU5
MTFjNjY3MmZkNGFiNjZhZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxheWVyLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVwbGF5ZXIu
aApAQCAtNDIsNyArNDIsNyBAQCBlbnVtIGNsYXNzIFN0b3BSZXBsYXlSZWFzb24gOiB1aW50OF90
IHsKICAgICBSZXBsYXllZEFsbEl0ZW1zLAogICAgIE1pc3NpbmdDYWNoZWRSZXNvdXJjZSwKICAg
ICBDaGFuZ2VEZXN0aW5hdGlvbkltYWdlQnVmZmVyLAotICAgIERlY29kaW5nRmFpbHVyZSAvLyBG
SVhNRTogUHJvcGFnYXRlIGRlY29kaW5nIGVycm9ycyB0byBkaXNwbGF5IGxpc3QgcmVwbGF5IGNs
aWVudHMgdGhyb3VnaCB0aGlzIGVudW0gYXMgd2VsbC4KKyAgICBJbnZhbGlkSXRlbQogfTsKIAog
c3RydWN0IFJlcGxheVJlc3VsdCB7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29s
cy9DaGFuZ2VMb2cKaW5kZXggODYwMTg3NzVlYTE0YjBiODk1ZjRkODEyOWFhYjU5ZTgzODYyYTA2
My4uYWFmOWU3ODgzMzQ2ZmE3OTM1ODJkMDU5OTViOWE2N2ExN2Q1Y2Q4NyAxMDA2NDQKLS0tIGEv
VG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisy
MDIxLTAxLTIxICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAg
ICAgIERpc3BsYXlMaXN0OjpSZXBsYXllciBzaG91bGQgc3RvcCByZXBsYXkgYW5kIGluZm9ybSBj
bGllbnRzIGFmdGVyIGVuY291bnRlcmluZyBhbiBpbnZhbGlkIGl0ZW0KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDg2NworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJDb3JlL0Rpc3BsYXlMaXN0VGVzdHMuY3BwOgorCisgICAgICAgIEFkanVzdCBhIGZldyBBUEkg
dGVzdHMsIHNpbmNlIHRoZSBpdGVtIGhhbmRsZSBpbiB0aGUgYERpc3BsYXlMaXN0YCBpdGVyYXRv
ciBpcyBub3cgb3B0aW9uYWwuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNv
cmUvY2cvRGlzcGxheUxpc3RUZXN0c0NHLmNwcDoKKworICAgICAgICBBZGQgYSBjb3VwbGUgb2Yg
bmV3IEFQSSB0ZXN0cyB0byBleGVyY2lzZSBkaXNwbGF5IGxpc3QgaXRlbSBkZWNvZGluZyBhbmQg
dmFsaWRhdGlvbiBmYWlsdXJlcy4KKwogMjAyMS0wMS0yMiAgSm9uYXRoYW4gQmVkYXJkICA8amJl
ZGFyZEBhcHBsZS5jb20+CiAKICAgICAgICAgW3dlYmtpdHNjbXB5XSBNYXAgYWx0ZXJuYXRpdmUg
ZGVmYXVsdCBicmFuY2ggbmFtZXMKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViQ29yZS9EaXNwbGF5TGlzdFRlc3RzLmNwcCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViQ29yZS9EaXNwbGF5TGlzdFRlc3RzLmNwcAppbmRleCBmNzAwYzU2MjlmNjA2ZTVjMjZk
ZjE2YjIwYmIxZGVhOTU0ZTgwN2E1Li5lODcxN2M3OTE0MGJkZWE0YjVmNTM1NWYwMTY5MDg5ZTYw
MDg2NzMzIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvRGlz
cGxheUxpc3RUZXN0cy5jcHAKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3Jl
L0Rpc3BsYXlMaXN0VGVzdHMuY3BwCkBAIC03OSw0MSArNzksNDEgQEAgVEVTVChEaXNwbGF5TGlz
dFRlc3RzLCBBcHBlbmRJdGVtcykKIAogICAgIGJvb2wgb2JzZXJ2ZWRVbmV4cGVjdGVkSXRlbSA9
IGZhbHNlOwogICAgIGZvciAoYXV0byBbaGFuZGxlLCBleHRlbnQsIHNpemVdIDogbGlzdCkgewot
ICAgICAgICBzd2l0Y2ggKGhhbmRsZS50eXBlKCkpIHsKKyAgICAgICAgc3dpdGNoIChoYW5kbGUt
PnR5cGUoKSkgewogICAgICAgICBjYXNlIEl0ZW1UeXBlOjpTZXRTdHJva2VUaGlja25lc3M6IHsK
LSAgICAgICAgICAgIEVYUEVDVF9GQUxTRShoYW5kbGUuaXNEcmF3aW5nSXRlbSgpKTsKLSAgICAg
ICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5pczxTZXRTdHJva2VUaGlja25lc3M+KCkpOwotICAg
ICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS5nZXQ8U2V0U3Ryb2tlVGhpY2tuZXNzPigpOwor
ICAgICAgICAgICAgRVhQRUNUX0ZBTFNFKGhhbmRsZS0+aXNEcmF3aW5nSXRlbSgpKTsKKyAgICAg
ICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS0+aXM8U2V0U3Ryb2tlVGhpY2tuZXNzPigpKTsKKyAg
ICAgICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUtPmdldDxTZXRTdHJva2VUaGlja25lc3M+KCk7
CiAgICAgICAgICAgICBFWFBFQ1RfRVEoaXRlbS50aGlja25lc3MoKSwgMS41KTsKICAgICAgICAg
ICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIGNhc2UgSXRlbVR5cGU6OkZpbGxQYXRoOiB7
Ci0gICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUuaXNEcmF3aW5nSXRlbSgpKTsKLSAgICAg
ICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5pczxGaWxsUGF0aD4oKSk7Ci0gICAgICAgICAgICBh
dXRvJiBpdGVtID0gaGFuZGxlLmdldDxGaWxsUGF0aD4oKTsKKyAgICAgICAgICAgIEVYUEVDVF9U
UlVFKGhhbmRsZS0+aXNEcmF3aW5nSXRlbSgpKTsKKyAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhh
bmRsZS0+aXM8RmlsbFBhdGg+KCkpOworICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS0+
Z2V0PEZpbGxQYXRoPigpOwogICAgICAgICAgICAgRVhQRUNUX0VRKGl0ZW0ucGF0aCgpLnBsYXRm
b3JtUGF0aCgpLCBwYXRoLnBsYXRmb3JtUGF0aCgpKTsKICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICB9CiAgICAgICAgIGNhc2UgSXRlbVR5cGU6OkZpbGxSZWN0V2l0aEdyYWRpZW50OiB7Ci0g
ICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUuaXNEcmF3aW5nSXRlbSgpKTsKLSAgICAgICAg
ICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5pczxGaWxsUmVjdFdpdGhHcmFkaWVudD4oKSk7Ci0gICAg
ICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLmdldDxGaWxsUmVjdFdpdGhHcmFkaWVudD4oKTsK
KyAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS0+aXNEcmF3aW5nSXRlbSgpKTsKKyAgICAg
ICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS0+aXM8RmlsbFJlY3RXaXRoR3JhZGllbnQ+KCkpOwor
ICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS0+Z2V0PEZpbGxSZWN0V2l0aEdyYWRpZW50
PigpOwogICAgICAgICAgICAgRVhQRUNUX0VRKGl0ZW0ucmVjdCgpLCBGbG9hdFJlY3QoMS4sIDEu
LCAxMC4sIDEwLikpOwogICAgICAgICAgICAgRVhQRUNUX0VRKCZpdGVtLmdyYWRpZW50KCksIGdy
YWRpZW50LnB0cigpKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIGNh
c2UgSXRlbVR5cGU6OlNldElubGluZUZpbGxDb2xvcjogewotICAgICAgICAgICAgRVhQRUNUX0ZB
TFNFKGhhbmRsZS5pc0RyYXdpbmdJdGVtKCkpOwotICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFu
ZGxlLmlzPFNldElubGluZUZpbGxDb2xvcj4oKSk7Ci0gICAgICAgICAgICBhdXRvJiBpdGVtID0g
aGFuZGxlLmdldDxTZXRJbmxpbmVGaWxsQ29sb3I+KCk7CisgICAgICAgICAgICBFWFBFQ1RfRkFM
U0UoaGFuZGxlLT5pc0RyYXdpbmdJdGVtKCkpOworICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFu
ZGxlLT5pczxTZXRJbmxpbmVGaWxsQ29sb3I+KCkpOworICAgICAgICAgICAgYXV0byYgaXRlbSA9
IGhhbmRsZS0+Z2V0PFNldElubGluZUZpbGxDb2xvcj4oKTsKICAgICAgICAgICAgIEVYUEVDVF9F
UShpdGVtLmNvbG9yKCksIENvbG9yOjpyZWQpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
IH0KICNpZiBFTkFCTEUoSU5MSU5FX1BBVEhfREFUQSkKICAgICAgICAgY2FzZSBJdGVtVHlwZTo6
U3Ryb2tlSW5saW5lUGF0aDogewotICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLmlzRHJh
d2luZ0l0ZW0oKSk7Ci0gICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUuaXM8U3Ryb2tlSW5s
aW5lUGF0aD4oKSk7Ci0gICAgICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLmdldDxTdHJva2VJ
bmxpbmVQYXRoPigpOworICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLT5pc0RyYXdpbmdJ
dGVtKCkpOworICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLT5pczxTdHJva2VJbmxpbmVQ
YXRoPigpKTsKKyAgICAgICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUtPmdldDxTdHJva2VJbmxp
bmVQYXRoPigpOwogICAgICAgICAgICAgY29uc3QgYXV0byBwYXRoID0gaXRlbS5wYXRoKCk7CiAg
ICAgICAgICAgICBhdXRvJiBsaW5lID0gcGF0aC5pbmxpbmVEYXRhPExpbmVEYXRhPigpOwogICAg
ICAgICAgICAgRVhQRUNUX0VRKGxpbmUuc3RhcnQsIEZsb2F0UG9pbnQoMCwgMCkpOwpAQCAtMTQ4
LDEwICsxNDgsMTAgQEAgVEVTVChEaXNwbGF5TGlzdFRlc3RzLCBBcHBlbmRJdGVtcykKICAgICBs
aXN0LmFwcGVuZDxGaWxsUmVjdFdpdGhDb2xvcj4oRmxvYXRSZWN0IHsgMCwgMCwgMTAwLCAxMDAg
fSwgQ29sb3I6OmJsYWNrKTsKIAogICAgIGZvciAoYXV0byBbaGFuZGxlLCBleHRlbnQsIHNpemVd
IDogbGlzdCkgewotICAgICAgICBFWFBFQ1RfRVEoaGFuZGxlLnR5cGUoKSwgSXRlbVR5cGU6OkZp
bGxSZWN0V2l0aENvbG9yKTsKLSAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLmlzPEZpbGxSZWN0
V2l0aENvbG9yPigpKTsKKyAgICAgICAgRVhQRUNUX0VRKGhhbmRsZS0+dHlwZSgpLCBJdGVtVHlw
ZTo6RmlsbFJlY3RXaXRoQ29sb3IpOworICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUtPmlzPEZp
bGxSZWN0V2l0aENvbG9yPigpKTsKIAotICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLmdldDxG
aWxsUmVjdFdpdGhDb2xvcj4oKTsKKyAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS0+Z2V0PEZp
bGxSZWN0V2l0aENvbG9yPigpOwogICAgICAgICBFWFBFQ1RfRVEoaXRlbS5jb2xvcigpLmFzSW5s
aW5lKCksIENvbG9yOjpibGFjayk7CiAgICAgICAgIEVYUEVDVF9FUShpdGVtLnJlY3QoKSwgRmxv
YXRSZWN0KDAsIDAsIDEwMCwgMTAwKSk7CiAgICAgfQpAQCAtMjI2LDcgKzIyNiw3IEBAIFRFU1Qo
RGlzcGxheUxpc3RUZXN0cywgSXRlbUJ1ZmZlckNsaWVudCkKIAogICAgIFZlY3RvcjxJdGVtVHlw
ZT4gaXRlbVR5cGVzOwogICAgIGZvciAoYXV0byBbaGFuZGxlLCBleHRlbnQsIHNpemVdIDogc2hh
bGxvd0NvcHkpCi0gICAgICAgIGl0ZW1UeXBlcy5hcHBlbmQoaGFuZGxlLnR5cGUoKSk7CisgICAg
ICAgIGl0ZW1UeXBlcy5hcHBlbmQoaGFuZGxlLT50eXBlKCkpOwogCiAgICAgRVhQRUNUX0ZBTFNF
KHNoYWxsb3dDb3B5LmlzRW1wdHkoKSk7CiAgICAgRVhQRUNUX0VRKGl0ZW1UeXBlcy5zaXplKCks
IDRVKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9jZy9E
aXNwbGF5TGlzdFRlc3RzQ0cuY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3Jl
L2NnL0Rpc3BsYXlMaXN0VGVzdHNDRy5jcHAKaW5kZXggZDljODMzMTRjYWMxNTU1ZDE4MmM5N2Nm
YjZhYzFhZWU4YjE3ZmNlYy4uYjlkNGQxMzY2NGVhODc3YmM5ZjJiZjE3ZmY1MTgyYTEwYjc0OGFj
ZiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL2NnL0Rpc3Bs
YXlMaXN0VGVzdHNDRy5jcHAKKysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3Jl
L2NnL0Rpc3BsYXlMaXN0VGVzdHNDRy5jcHAKQEAgLTM3LDExICszNywxMyBAQCB1c2luZyBuYW1l
c3BhY2UgV2ViQ29yZTsKIHVzaW5nIERpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdDsKIHVzaW5nIG5h
bWVzcGFjZSBEaXNwbGF5TGlzdDsKIAorY29uc3RleHByIHNpemVfdCBnbG9iYWxJdGVtQnVmZmVy
Q2FwYWNpdHkgPSAxIDw8IDEyOworc3RhdGljIHVpbnQ4X3QgZ2xvYmFsSXRlbUJ1ZmZlcltnbG9i
YWxJdGVtQnVmZmVyQ2FwYWNpdHldOworc3RhdGljIGNvbnN0ZXhwciBDR0Zsb2F0IGNvbnRleHRX
aWR0aCA9IDEwMDsKK3N0YXRpYyBjb25zdGV4cHIgQ0dGbG9hdCBjb250ZXh0SGVpZ2h0ID0gMTAw
OworCiBURVNUKERpc3BsYXlMaXN0VGVzdHMsIFJlcGxheVdpdGhNaXNzaW5nUmVzb3VyY2UpCiB7
Ci0gICAgY29uc3RleHByIENHRmxvYXQgY29udGV4dFdpZHRoID0gMTAwOwotICAgIGNvbnN0ZXhw
ciBDR0Zsb2F0IGNvbnRleHRIZWlnaHQgPSAxMDA7Ci0KICAgICBGbG9hdFJlY3QgY29udGV4dEJv
dW5kcyB7IDAsIDAsIGNvbnRleHRXaWR0aCwgY29udGV4dEhlaWdodCB9OwogCiAgICAgYXV0byBj
b2xvclNwYWNlID0gYWRvcHRDRihDR0NvbG9yU3BhY2VDcmVhdGVXaXRoTmFtZShrQ0dDb2xvclNw
YWNlU1JHQikpOwpAQCAtNzksNiArODEsNzkgQEAgVEVTVChEaXNwbGF5TGlzdFRlc3RzLCBSZXBs
YXlXaXRoTWlzc2luZ1Jlc291cmNlKQogICAgIH0KIH0KIAorVEVTVChEaXNwbGF5TGlzdFRlc3Rz
LCBPdXRPZkxpbmVJdGVtRGVjb2RpbmdGYWlsdXJlKQoreworICAgIHN0YXRpYyBJdGVtQnVmZmVy
SWRlbnRpZmllciBnbG9iYWxCdWZmZXJJZGVudGlmaWVyID0gSXRlbUJ1ZmZlcklkZW50aWZpZXI6
OmdlbmVyYXRlKCk7CisKKyAgICBjbGFzcyBSZWFkaW5nQ2xpZW50IDogcHVibGljIEl0ZW1CdWZm
ZXJSZWFkaW5nQ2xpZW50IHsKKyAgICBwcml2YXRlOgorICAgICAgICBPcHRpb25hbDxJdGVtSGFu
ZGxlPiBXQVJOX1VOVVNFRF9SRVRVUk4gZGVjb2RlSXRlbShjb25zdCB1aW50OF90Kiwgc2l6ZV90
LCBJdGVtVHlwZSB0eXBlLCB1aW50OF90KikgZmluYWwKKyAgICAgICAgeworICAgICAgICAgICAg
RVhQRUNUX0VRKHR5cGUsIEl0ZW1UeXBlOjpGaWxsUGF0aCk7CisgICAgICAgICAgICByZXR1cm4g
V1RGOjpudWxsb3B0OworICAgICAgICB9CisgICAgfTsKKworICAgIGNsYXNzIFdyaXRpbmdDbGll
bnQgOiBwdWJsaWMgSXRlbUJ1ZmZlcldyaXRpbmdDbGllbnQgeworICAgIHByaXZhdGU6CisgICAg
ICAgIEl0ZW1CdWZmZXJIYW5kbGUgY3JlYXRlSXRlbUJ1ZmZlcihzaXplX3QgY2FwYWNpdHkpIGZp
bmFsCisgICAgICAgIHsKKyAgICAgICAgICAgIEVYUEVDVF9MVChjYXBhY2l0eSwgZ2xvYmFsSXRl
bUJ1ZmZlckNhcGFjaXR5KTsKKyAgICAgICAgICAgIHJldHVybiB7IGdsb2JhbEJ1ZmZlcklkZW50
aWZpZXIsIGdsb2JhbEl0ZW1CdWZmZXIsIGdsb2JhbEl0ZW1CdWZmZXJDYXBhY2l0eSB9OworICAg
ICAgICB9CisKKyAgICAgICAgUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZW5jb2RlSXRlbShJdGVtSGFu
ZGxlKSBjb25zdCBmaW5hbCB7IHJldHVybiBTaGFyZWRCdWZmZXI6OmNyZWF0ZSgpOyB9CisgICAg
ICAgIHZvaWQgZGlkQXBwZW5kRGF0YShjb25zdCBJdGVtQnVmZmVySGFuZGxlJiwgc2l6ZV90LCBE
aWRDaGFuZ2VJdGVtQnVmZmVyKSBmaW5hbCB7IH0KKyAgICB9OworCisgICAgRmxvYXRSZWN0IGNv
bnRleHRCb3VuZHMgeyAwLCAwLCBjb250ZXh0V2lkdGgsIGNvbnRleHRIZWlnaHQgfTsKKworICAg
IGF1dG8gY29sb3JTcGFjZSA9IGFkb3B0Q0YoQ0dDb2xvclNwYWNlQ3JlYXRlV2l0aE5hbWUoa0NH
Q29sb3JTcGFjZVNSR0IpKTsKKyAgICBhdXRvIGNnQ29udGV4dCA9IGFkb3B0Q0YoQ0dCaXRtYXBD
b250ZXh0Q3JlYXRlKG51bGxwdHIsIGNvbnRleHRXaWR0aCwgY29udGV4dEhlaWdodCwgOCwgNCAq
IGNvbnRleHRXaWR0aCwgY29sb3JTcGFjZS5nZXQoKSwga0NHSW1hZ2VBbHBoYVByZW11bHRpcGxp
ZWRMYXN0KSk7CisgICAgR3JhcGhpY3NDb250ZXh0IGNvbnRleHQgeyBjZ0NvbnRleHQuZ2V0KCkg
fTsKKworICAgIERpc3BsYXlMaXN0IGxpc3Q7CisgICAgV3JpdGluZ0NsaWVudCB3cml0ZXI7Cisg
ICAgbGlzdC5zZXRJdGVtQnVmZmVyQ2xpZW50KCZ3cml0ZXIpOworCisgICAgUGF0aCBwYXRoOwor
ICAgIHBhdGgubW92ZVRvKHsgMTAuLCAxMC4gfSk7CisgICAgcGF0aC5hZGRMaW5lVG8oeyA1MC4s
IDUwLiB9KTsKKyAgICBwYXRoLmFkZExpbmVUbyh7IDEwLiwgMTAuIH0pOworICAgIGxpc3QuYXBw
ZW5kPFNldElubGluZVN0cm9rZUNvbG9yPihDb2xvcjo6Ymx1ZSk7CisgICAgbGlzdC5hcHBlbmQ8
RmlsbFBhdGg+KFdURk1vdmUocGF0aCkpOworCisgICAgRGlzcGxheUxpc3Qgc2hhbGxvd0NvcHkg
e3sgSXRlbUJ1ZmZlckhhbmRsZSB7IGdsb2JhbEJ1ZmZlcklkZW50aWZpZXIsIGdsb2JhbEl0ZW1C
dWZmZXIsIGxpc3Quc2l6ZUluQnl0ZXMoKSB9IH19OworICAgIFJlYWRpbmdDbGllbnQgcmVhZGVy
OworICAgIHNoYWxsb3dDb3B5LnNldEl0ZW1CdWZmZXJDbGllbnQoJnJlYWRlcik7CisKKyAgICBS
ZXBsYXllciByZXBsYXllciB7IGNvbnRleHQsIGxpc3QgfTsKKyAgICBhdXRvIHJlc3VsdCA9IHJl
cGxheWVyLnJlcGxheSgpOworICAgIEVYUEVDVF9HVChyZXN1bHQubnVtYmVyT2ZCeXRlc1JlYWQs
IDBVKTsKKyAgICBFWFBFQ1RfRVEocmVzdWx0Lm5leHREZXN0aW5hdGlvbkltYWdlQnVmZmVyLCBX
VEY6Om51bGxvcHQpOworICAgIEVYUEVDVF9FUShyZXN1bHQubWlzc2luZ0NhY2hlZFJlc291cmNl
SWRlbnRpZmllciwgV1RGOjpudWxsb3B0KTsKKyAgICBFWFBFQ1RfRVEocmVzdWx0LnJlYXNvbkZv
clN0b3BwaW5nLCBTdG9wUmVwbGF5UmVhc29uOjpJbnZhbGlkSXRlbSk7Cit9CisKK1RFU1QoRGlz
cGxheUxpc3RUZXN0cywgSW5saW5lSXRlbVZhbGlkYXRpb25GYWlsdXJlKQoreworICAgIEZsb2F0
UmVjdCBjb250ZXh0Qm91bmRzIHsgMCwgMCwgY29udGV4dFdpZHRoLCBjb250ZXh0SGVpZ2h0IH07
CisKKyAgICBhdXRvIGNvbG9yU3BhY2UgPSBhZG9wdENGKENHQ29sb3JTcGFjZUNyZWF0ZVdpdGhO
YW1lKGtDR0NvbG9yU3BhY2VTUkdCKSk7CisgICAgYXV0byBjZ0NvbnRleHQgPSBhZG9wdENGKENH
Qml0bWFwQ29udGV4dENyZWF0ZShudWxscHRyLCBjb250ZXh0V2lkdGgsIGNvbnRleHRIZWlnaHQs
IDgsIDQgKiBjb250ZXh0V2lkdGgsIGNvbG9yU3BhY2UuZ2V0KCksIGtDR0ltYWdlQWxwaGFQcmVt
dWx0aXBsaWVkTGFzdCkpOworICAgIEdyYXBoaWNzQ29udGV4dCBjb250ZXh0IHsgY2dDb250ZXh0
LmdldCgpIH07CisKKyAgICBEaXNwbGF5TGlzdCBsaXN0OworICAgIGxpc3QuYXBwZW5kPEZsdXNo
Q29udGV4dD4oRmx1c2hJZGVudGlmaWVyIHsgfSk7CisKKyAgICBSZXBsYXllciByZXBsYXllciB7
IGNvbnRleHQsIGxpc3QgfTsKKyAgICBhdXRvIHJlc3VsdCA9IHJlcGxheWVyLnJlcGxheSgpOwor
ICAgIEVYUEVDVF9FUShyZXN1bHQubnVtYmVyT2ZCeXRlc1JlYWQsIDBVKTsKKyAgICBFWFBFQ1Rf
RVEocmVzdWx0Lm5leHREZXN0aW5hdGlvbkltYWdlQnVmZmVyLCBXVEY6Om51bGxvcHQpOworICAg
IEVYUEVDVF9FUShyZXN1bHQubWlzc2luZ0NhY2hlZFJlc291cmNlSWRlbnRpZmllciwgV1RGOjpu
dWxsb3B0KTsKKyAgICBFWFBFQ1RfRVEocmVzdWx0LnJlYXNvbkZvclN0b3BwaW5nLCBTdG9wUmVw
bGF5UmVhc29uOjpJbnZhbGlkSXRlbSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFRlc3RXZWJLaXRB
UEkKIAogI2VuZGlmIC8vIFVTRShDRykK
</data>
<flag name="review"
          id="436042"
          type_id="1"
          status="+"
          setter="cdumez"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>418168</attachid>
            <date>2021-01-22 12:10:00 -0800</date>
            <delta_ts>2021-01-22 12:37:51 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-220867-20210122120959.patch</filename>
            <type>text/plain</type>
            <size>18816</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNzQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmM5YTVjNTI5MGM3Mzhk
NzU4MDg4NzQyZjliNzM2YmRkODBkODY1ZS4uNmU3M2NhN2NhYjMyMzA1ZjQyN2UxNTE2NTUwZTlh
Y2QzN2RmNzU2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDIxLTAxLTIxICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIERpc3BsYXlMaXN0
OjpSZXBsYXllciBzaG91bGQgc3RvcCByZXBsYXkgYW5kIGluZm9ybSBjbGllbnRzIGFmdGVyIGVu
Y291bnRlcmluZyBhbiBpbnZhbGlkIGl0ZW0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIyMDg2NworCisgICAgICAgIFJldmlld2VkIGJ5IENocmlzIER1
bWV6LgorCisgICAgICAgIE1ha2UgdGhlIGBEaXNwbGF5TGlzdGAgaXRlbSBpdGVyYXRvciBlbWl0
IGBPcHRpb25hbDxJdGVtSGFuZGxlPmAgaW5zdGVhZCBvZiBqdXN0IGBJdGVtSGFuZGxlYDsgaW4g
dGhlIGNhc2Ugb2YKKyAgICAgICAgY2xpZW50IGRlY29kaW5nIG9yIGl0ZW0gdmFsaWRhdGlvbiBm
YWlsdXJlcyAoc2VlICMyMjA3MTApLCB0aGlzIGl0ZW0gaGFuZGxlIHdpbGwgYmUgYFdURjo6bnVs
bG9wdGAuIFRoZSBkaXNwbGF5CisgICAgICAgIGxpc3QgcmVwbGF5ZXIgd2lsbCB0aGVuIGhhbmRs
ZSB0aGlzIGJ5IGhhbHRpbmcgcmVwbGF5IHdpdGggYFN0b3BSZXBsYXlSZWFzb246OkludmFsaWRJ
dGVtYC4KKworICAgICAgICBUaGlzIHJlZmFjdG9yaW5nIHdpbGwgZXZlbnR1YWxseSBlbmFibGUg
YFJlbW90ZVJlbmRlcmluZ0JhY2tlbmRgIChpbiB0aGUgR1BVIHByb2Nlc3MpIHRvIHRlcm1pbmF0
ZSB0aGUgd2ViCisgICAgICAgIGNvbnRlbnQgcHJvY2VzcyB3aGVuIHdlIGZhaWwgdG8gZGVjb2Rl
IGEgZGlzcGxheSBsaXN0IGl0ZW0gZHVyaW5nIHBsYXliYWNrIChvciBlbmNvdW50ZXIgYW4gaW52
YWxpZCBpbmxpbmUKKyAgICAgICAgaXRlbSkuCisKKyAgICAgICAgVGVzdDogICBEaXNwbGF5TGlz
dFRlc3RzLklubGluZUl0ZW1WYWxpZGF0aW9uRmFpbHVyZQorICAgICAgICAgICAgICAgIERpc3Bs
YXlMaXN0VGVzdHMuT3V0T2ZMaW5lSXRlbURlY29kaW5nRmFpbHVyZQorCisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkRpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdDo6YXNUZXh0IGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpEaXNwbGF5TGlzdDo6ZHVtcCBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6RGlzcGxheUxpc3Q6Oml0ZXJhdG9yOjphdEVuZCBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6RGlzcGxheUxpc3Q6Oml0ZXJhdG9y
Ojp1cGRhdGVDdXJyZW50SXRlbSk6CisKKyAgICAgICAgQWRkIGFuIGBtX2lzVmFsaWRgIGZsYWcu
IFRoaXMgZmxhZyBpcyBzZXQgdG8gYHRydWVgIGluaXRpYWxseSwgYW5kIGlzIG9ubHkgc2V0IHRv
IGBmYWxzZWAgd2hlbiB3ZSBlbmNvdW50ZXIgYW4KKyAgICAgICAgaXRlbSB0aGF0IGlzIGVpdGhl
ciBpbnZhbGlkIG9yIHVuYWJsZSB0byBiZSBkZWNvZGVkLiBBZGRpdGlvbmFsbHksIHJlbW92ZSBy
ZWxlYXNlIGFzc2VydGlvbnMgYW5kIHRoZSBGSVhNRXMKKyAgICAgICAgcmVnYXJkaW5nIGhhbmRs
aW5nIGl0ZW0gZGVjb2RpbmcgZmFpbHVyZXMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3QuaDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlM
aXN0OjpEaXNwbGF5TGlzdDo6aXRlcmF0b3I6Om9wZXJhdG9yKiBjb25zdCk6CisKKyAgICAgICAg
SWYgdGhlIGBtX2lzVmFsaWRgIGZsYWcgYWJvdmUgaXMgc2V0LCByZXR1cm4gYFdURjo6bnVsbG9w
dGAgZm9yIHRoZSBpdGVtIGhhbmRsZS4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Rp
c3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRp
c3BsYXlMaXN0OjpSZXBsYXllcjo6cmVwbGF5KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZXBsYXllci5oOgorCisgICAgICAgIFJlbmFtZSBg
RGVjb2RpbmdGYWlsdXJlYCB0byBgSW52YWxpZEl0ZW1gLCBzaW5jZSBpdCBub3cgYXBwbGllcyB0
byBib3RoIGl0ZW1zIHRoYXQgYXJlIGludmFsaWQgKGUuZy4gY29udGFpbgorICAgICAgICBpZGVu
dGlmaWVyIHZhbHVlcyBvZiAwIHdoZW4gdGhleSBzaG91bGRuJ3QpIGFzIHdlbGwgYXMgaXRlbXMg
dGhhdCBmYWlsIGRlY29kaW5nICh3aGljaCwgaW4gdGhlIGNhc2Ugb2YgdGhlIEdQVQorICAgICAg
ICBwcm9jZXNzLCBjb3JyZXNwb25kcyB0byBJUEMgZGVjb2RpbmcgZmFpbHVyZXMpLgorCiAyMDIx
LTAxLTIyICBaaXJhbiBTdW4gIDx6c3VuQGlnYWxpYS5jb20+CiAKICAgICAgICAgW2Nzcy1ncmlk
XSBSZWxheW91dCBncmlkIGl0ZW1zIHdoZW4gZGVmaW5pdGVuZXNzIGNoYW5nZXMuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3Rz
L0Rpc3BsYXlMaXN0LmNwcAppbmRleCAxOTYxMzhiYWQ0ODQ1MGFkNzA3MTdhNDNiZGYwNTVlNzI1
MmY2NmMxLi5kODAyNDc0OGUxZjQwYWEwYzUwOGQyMzU4MzU2NDljYzc5MWJhOThkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXls
aXN0cy9EaXNwbGF5TGlzdC5jcHAKQEAgLTExNSwxMiArMTE1LDEyIEBAIFN0cmluZyBEaXNwbGF5
TGlzdDo6YXNUZXh0KEFzVGV4dEZsYWdzIGZsYWdzKSBjb25zdAogewogICAgIFRleHRTdHJlYW0g
c3RyZWFtKFRleHRTdHJlYW06OkxpbmVNb2RlOjpNdWx0aXBsZUxpbmUsIFRleHRTdHJlYW06OkZv
cm1hdHRpbmc6OlNWR1N0eWxlUmVjdCk7CiAgICAgZm9yIChhdXRvIFtpdGVtLCBleHRlbnQsIGl0
ZW1TaXplSW5CdWZmZXJdIDogKnRoaXMpIHsKLSAgICAgICAgaWYgKCFzaG91bGREdW1wRm9yRmxh
Z3MoZmxhZ3MsIGl0ZW0pKQorICAgICAgICBpZiAoIXNob3VsZER1bXBGb3JGbGFncyhmbGFncywg
Kml0ZW0pKQogICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgVGV4dFN0cmVhbTo6R3Jv
dXBTY29wZSBncm91cChzdHJlYW0pOwogICAgICAgICBzdHJlYW0gPDwgaXRlbTsKLSAgICAgICAg
aWYgKGl0ZW0uaXNEcmF3aW5nSXRlbSgpKQorICAgICAgICBpZiAoaXRlbS0+aXNEcmF3aW5nSXRl
bSgpKQogICAgICAgICAgICAgc3RyZWFtIDw8ICIgZXh0ZW50ICIgPDwgZXh0ZW50OwogICAgIH0K
ICAgICByZXR1cm4gc3RyZWFtLnJlbGVhc2UoKTsKQEAgLTEzNCw3ICsxMzQsNyBAQCB2b2lkIERp
c3BsYXlMaXN0OjpkdW1wKFRleHRTdHJlYW0mIHRzKSBjb25zdAogICAgIGZvciAoYXV0byBbaXRl
bSwgZXh0ZW50LCBpdGVtU2l6ZUluQnVmZmVyXSA6ICp0aGlzKSB7CiAgICAgICAgIFRleHRTdHJl
YW06Okdyb3VwU2NvcGUgZ3JvdXAodHMpOwogICAgICAgICB0cyA8PCBpdGVtOwotICAgICAgICBp
ZiAoaXRlbS5pc0RyYXdpbmdJdGVtKCkpCisgICAgICAgIGlmIChpdGVtLT5pc0RyYXdpbmdJdGVt
KCkpCiAgICAgICAgICAgICB0cyA8PCAiIGV4dGVudCAiIDw8IGV4dGVudDsKICAgICB9CiAgICAg
dHMuc3RhcnRHcm91cCgpOwpAQCAtMzIyLDcgKzMyMiw3IEBAIHZvaWQgRGlzcGxheUxpc3Q6OmFw
cGVuZChJdGVtSGFuZGxlIGl0ZW0pCiAKIGJvb2wgRGlzcGxheUxpc3Q6Oml0ZXJhdG9yOjphdEVu
ZCgpIGNvbnN0CiB7Ci0gICAgaWYgKG1fZGlzcGxheUxpc3QuaXNFbXB0eSgpKQorICAgIGlmICht
X2Rpc3BsYXlMaXN0LmlzRW1wdHkoKSB8fCAhbV9pc1ZhbGlkKQogICAgICAgICByZXR1cm4gdHJ1
ZTsKIAogICAgIGF1dG8mIGl0ZW1zID0gKm1fZGlzcGxheUxpc3QubV9pdGVtczsKQEAgLTM1Miwy
MCArMzUyLDE1IEBAIHZvaWQgRGlzcGxheUxpc3Q6Oml0ZXJhdG9yOjp1cGRhdGVDdXJyZW50SXRl
bSgpCiAgICAgICAgIGF1dG8gZGF0YUxlbmd0aCA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDY0X3Qq
PihtX2N1cnNvcilbMV07CiAgICAgICAgIGF1dG8qIHN0YXJ0T2ZEYXRhID0gbV9jdXJzb3IgKyAy
ICogc2l6ZW9mKHVpbnQ2NF90KTsKICAgICAgICAgYXV0byBkZWNvZGVkSXRlbUhhbmRsZSA9IGNs
aWVudC0+ZGVjb2RlSXRlbShzdGFydE9mRGF0YSwgZGF0YUxlbmd0aCwgaXRlbVR5cGUsIG1fY3Vy
cmVudEJ1ZmZlckZvckl0ZW0pOwotICAgICAgICBpZiAoIWRlY29kZWRJdGVtSGFuZGxlKSB7Ci0g
ICAgICAgICAgICAvLyBGSVhNRTogSW5zdGVhZCBvZiBjcmFzaGluZywgdGhpcyBuZWVkcyB0byBm
YWlsIGdyYWNlZnVsbHkgYW5kIGluZm9ybSB0aGUgY2FsbGVyLgotICAgICAgICAgICAgLy8gRm9y
IHRoZSB0aW1lIGJlaW5nLCB0aGlzIGFzc2VydGlvbiBtYWtlcyBidWdzIGluIGl0ZW0gYnVmZmVy
IGVuY29kaW5nIGxvZ2ljIGVhc2llcgotICAgICAgICAgICAgLy8gdG8gY2F0Y2ggYnkgYXZvaWRp
bmcgbXlzdGVyaW91cyBvdXQtb2YtYm91bmRzIHJlYWRzIGFuZCBpbmNvcnJlY3RseSBhbGlnbmVk
IGl0ZW1zCi0gICAgICAgICAgICAvLyBkb3duIHRoZSBsaW5lLgotICAgICAgICAgICAgUkVMRUFT
RV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgfQorICAgICAgICBpZiAoVU5MSUtFTFko
IWRlY29kZWRJdGVtSGFuZGxlKSkKKyAgICAgICAgICAgIG1faXNWYWxpZCA9IGZhbHNlOworCiAg
ICAgICAgIG1fY3VycmVudEJ1ZmZlckZvckl0ZW1bMF0gPSBzdGF0aWNfY2FzdDx1aW50OF90Pihp
dGVtVHlwZSk7CiAgICAgICAgIG1fY3VycmVudEl0ZW1TaXplSW5CdWZmZXIgPSAyICogc2l6ZW9m
KHVpbnQ2NF90KSArIHJvdW5kVXBUb011bHRpcGxlT2YoYWxpZ25vZih1aW50NjRfdCksIGRhdGFM
ZW5ndGgpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIGlmICghSXRlbUhhbmRsZSB7IG1fY3Vyc29y
IH0uc2FmZUNvcHkoeyBtX2N1cnJlbnRCdWZmZXJGb3JJdGVtIH0pKSB7Ci0gICAgICAgICAgICAv
LyBGSVhNRTogSW5zdGVhZCBvZiBjcmFzaGluZywgdGhpcyBuZWVkcyB0byBmYWlsIGdyYWNlZnVs
bHkgYW5kIGluZm9ybSB0aGUgY2FsbGVyLgotICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9U
X1JFQUNIRUQoKTsKLSAgICAgICAgfQorICAgICAgICBpZiAoVU5MSUtFTFkoIUl0ZW1IYW5kbGUg
eyBtX2N1cnNvciB9LnNhZmVDb3B5KHsgbV9jdXJyZW50QnVmZmVyRm9ySXRlbSB9KSkpCisgICAg
ICAgICAgICBtX2lzVmFsaWQgPSBmYWxzZTsKKwogICAgICAgICBtX2N1cnJlbnRJdGVtU2l6ZUlu
QnVmZmVyID0gcGFkZGVkU2l6ZU9mVHlwZUFuZEl0ZW07CiAgICAgfQogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3QuaAppbmRleCBhOTAyZjM4MzQxMzYxZmU4ZjU3NWMwZTg0NDFhMmVhZTFlOWI4OTU1Li5m
NTNkZGM2MDI3YjgyZjg2YjUxNzVjNWMyNzJkY2UzYzFjMjRlYjQ0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3QuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxh
eUxpc3QuaApAQCAtMTE4LDcgKzExOCw3IEBAIHB1YmxpYzoKICAgICAgICAgdm9pZCBvcGVyYXRv
cisrKCkgeyBhZHZhbmNlKCk7IH0KIAogICAgICAgICBzdHJ1Y3QgVmFsdWUgewotICAgICAgICAg
ICAgSXRlbUhhbmRsZSBpdGVtOworICAgICAgICAgICAgT3B0aW9uYWw8SXRlbUhhbmRsZT4gaXRl
bTsKICAgICAgICAgICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gZXh0ZW50OwogICAgICAgICAgICAg
c2l6ZV90IGl0ZW1TaXplSW5CdWZmZXIgeyAwIH07CiAgICAgICAgIH07CkBAIC0xMjYsOSArMTI2
LDkgQEAgcHVibGljOgogICAgICAgICBWYWx1ZSBvcGVyYXRvciooKSBjb25zdAogICAgICAgICB7
CiAgICAgICAgICAgICByZXR1cm4gewotICAgICAgICAgICAgICAgIEl0ZW1IYW5kbGUgeyBtX2N1
cnJlbnRCdWZmZXJGb3JJdGVtIH0sCisgICAgICAgICAgICAgICAgbV9pc1ZhbGlkID8gbWFrZU9w
dGlvbmFsKEl0ZW1IYW5kbGUgeyBtX2N1cnJlbnRCdWZmZXJGb3JJdGVtIH0pIDogV1RGOjpudWxs
b3B0LAogICAgICAgICAgICAgICAgIG1fY3VycmVudEV4dGVudCwKLSAgICAgICAgICAgICAgICBt
X2N1cnJlbnRJdGVtU2l6ZUluQnVmZmVyCisgICAgICAgICAgICAgICAgbV9jdXJyZW50SXRlbVNp
emVJbkJ1ZmZlciwKICAgICAgICAgICAgIH07CiAgICAgICAgIH0KIApAQCAtMTUyLDYgKzE1Miw3
IEBAIHB1YmxpYzoKICAgICAgICAgdWludDhfdCogbV9jdXJyZW50QnVmZmVyRm9ySXRlbSB7IG51
bGxwdHIgfTsKICAgICAgICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBtX2N1cnJlbnRFeHRlbnQ7CiAg
ICAgICAgIHNpemVfdCBtX2N1cnJlbnRJdGVtU2l6ZUluQnVmZmVyIHsgMCB9OworICAgICAgICBi
b29sIG1faXNWYWxpZCB7IHRydWUgfTsKICAgICB9OwogCiAgICAgaXRlcmF0b3IgYmVnaW4oKSBj
b25zdCB7IHJldHVybiB7ICp0aGlzIH07IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxheWVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJl
cGxheWVyLmNwcAppbmRleCA0MmUxNDEyZTU0ODQ2YjBhMmJkODQ1NjNlYmFmNjI5NjhhNTUzYjdj
Li4zMjVkYjk3MzllOWZjZjIxMzFlOTE0ZTZhZTVjODVhODJlYmFlMWM5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RS
ZXBsYXllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxh
eWxpc3RzL0Rpc3BsYXlMaXN0UmVwbGF5ZXIuY3BwCkBAIC0xNDEsMTYgKzE0MSwyMSBAQCBSZXBs
YXlSZXN1bHQgUmVwbGF5ZXI6OnJlcGxheShjb25zdCBGbG9hdFJlY3QmIGluaXRpYWxDbGlwLCBi
b29sIHRyYWNrUmVwbGF5TGlzdAogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KIAor
ICAgICAgICBpZiAoIWl0ZW0pIHsKKyAgICAgICAgICAgIHJlc3VsdC5yZWFzb25Gb3JTdG9wcGlu
ZyA9IFN0b3BSZXBsYXlSZWFzb246OkludmFsaWRJdGVtOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIH0KKwogICAgICAgICBMT0dfV0lUSF9TVFJFQU0oRGlzcGxheUxpc3RzLCBzdHJlYW0g
PDwgImFwcGx5aW5nICIgPDwgaSsrIDw8ICIgIiA8PCBpdGVtKTsKIAotICAgICAgICBpZiAoaXRl
bS5pczxNZXRhQ29tbWFuZENoYW5nZURlc3RpbmF0aW9uSW1hZ2VCdWZmZXI+KCkpIHsKKyAgICAg
ICAgaWYgKGl0ZW0tPmlzPE1ldGFDb21tYW5kQ2hhbmdlRGVzdGluYXRpb25JbWFnZUJ1ZmZlcj4o
KSkgewogICAgICAgICAgICAgcmVzdWx0Lm51bWJlck9mQnl0ZXNSZWFkICs9IGl0ZW1TaXplSW5C
dWZmZXI7CiAgICAgICAgICAgICByZXN1bHQucmVhc29uRm9yU3RvcHBpbmcgPSBTdG9wUmVwbGF5
UmVhc29uOjpDaGFuZ2VEZXN0aW5hdGlvbkltYWdlQnVmZmVyOwotICAgICAgICAgICAgcmVzdWx0
Lm5leHREZXN0aW5hdGlvbkltYWdlQnVmZmVyID0gaXRlbS5nZXQ8TWV0YUNvbW1hbmRDaGFuZ2VE
ZXN0aW5hdGlvbkltYWdlQnVmZmVyPigpLmlkZW50aWZpZXIoKTsKKyAgICAgICAgICAgIHJlc3Vs
dC5uZXh0RGVzdGluYXRpb25JbWFnZUJ1ZmZlciA9IGl0ZW0tPmdldDxNZXRhQ29tbWFuZENoYW5n
ZURlc3RpbmF0aW9uSW1hZ2VCdWZmZXI+KCkuaWRlbnRpZmllcigpOwogICAgICAgICAgICAgYnJl
YWs7CiAgICAgICAgIH0KIAotICAgICAgICBpZiAoYXV0byBbcmVhc29uRm9yU3RvcHBpbmcsIG1p
c3NpbmdDYWNoZWRSZXNvdXJjZUlkZW50aWZpZXJdID0gYXBwbHlJdGVtKGl0ZW0pOyByZWFzb25G
b3JTdG9wcGluZykgeworICAgICAgICBpZiAoYXV0byBbcmVhc29uRm9yU3RvcHBpbmcsIG1pc3Np
bmdDYWNoZWRSZXNvdXJjZUlkZW50aWZpZXJdID0gYXBwbHlJdGVtKCppdGVtKTsgcmVhc29uRm9y
U3RvcHBpbmcpIHsKICAgICAgICAgICAgIHJlc3VsdC5yZWFzb25Gb3JTdG9wcGluZyA9ICpyZWFz
b25Gb3JTdG9wcGluZzsKICAgICAgICAgICAgIHJlc3VsdC5taXNzaW5nQ2FjaGVkUmVzb3VyY2VJ
ZGVudGlmaWVyID0gV1RGTW92ZShtaXNzaW5nQ2FjaGVkUmVzb3VyY2VJZGVudGlmaWVyKTsKICAg
ICAgICAgICAgIGJyZWFrOwpAQCAtMTU5LDggKzE2NCw4IEBAIFJlcGxheVJlc3VsdCBSZXBsYXll
cjo6cmVwbGF5KGNvbnN0IEZsb2F0UmVjdCYgaW5pdGlhbENsaXAsIGJvb2wgdHJhY2tSZXBsYXlM
aXN0CiAgICAgICAgIHJlc3VsdC5udW1iZXJPZkJ5dGVzUmVhZCArPSBpdGVtU2l6ZUluQnVmZmVy
OwogCiAgICAgICAgIGlmIChVTkxJS0VMWSh0cmFja1JlcGxheUxpc3QpKSB7Ci0gICAgICAgICAg
ICByZXBsYXlMaXN0LT5hcHBlbmQoaXRlbSk7Ci0gICAgICAgICAgICBpZiAoaXRlbS5pc0RyYXdp
bmdJdGVtKCkpCisgICAgICAgICAgICByZXBsYXlMaXN0LT5hcHBlbmQoKml0ZW0pOworICAgICAg
ICAgICAgaWYgKGl0ZW0tPmlzRHJhd2luZ0l0ZW0oKSkKICAgICAgICAgICAgICAgICByZXBsYXlM
aXN0LT5hZGREcmF3aW5nSXRlbUV4dGVudChXVEZNb3ZlKGV4dGVudCkpOwogICAgICAgICB9CiAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxh
eWxpc3RzL0Rpc3BsYXlMaXN0UmVwbGF5ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlcGxheWVyLmgKaW5kZXggZDQxNGE2ZmEw
NTAyZTE2Zjc3OWZiYTYyZDIyNDE5NjM0MjNlYjBhZi4uZDJkZTBiNmZlNWU4YTFkMGM2YmYxZTkx
MWM2NjcyZmQ0YWI2NmFkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVwbGF5ZXIuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZXBsYXllci5o
CkBAIC00Miw3ICs0Miw3IEBAIGVudW0gY2xhc3MgU3RvcFJlcGxheVJlYXNvbiA6IHVpbnQ4X3Qg
ewogICAgIFJlcGxheWVkQWxsSXRlbXMsCiAgICAgTWlzc2luZ0NhY2hlZFJlc291cmNlLAogICAg
IENoYW5nZURlc3RpbmF0aW9uSW1hZ2VCdWZmZXIsCi0gICAgRGVjb2RpbmdGYWlsdXJlIC8vIEZJ
WE1FOiBQcm9wYWdhdGUgZGVjb2RpbmcgZXJyb3JzIHRvIGRpc3BsYXkgbGlzdCByZXBsYXkgY2xp
ZW50cyB0aHJvdWdoIHRoaXMgZW51bSBhcyB3ZWxsLgorICAgIEludmFsaWRJdGVtCiB9OwogCiBz
dHJ1Y3QgUmVwbGF5UmVzdWx0IHsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xz
L0NoYW5nZUxvZwppbmRleCA4NjAxODc3NWVhMTRiMGI4OTVmNGQ4MTI5YWFiNTllODM4NjJhMDYz
Li5kMDVhODhkOTAxMzA3ZDdhYjUwMGY1MmUxYWYwMmJiZmZmZTk3MGRlIDEwMDY0NAotLS0gYS9U
b29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIw
MjEtMDEtMjEgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAg
ICAgRGlzcGxheUxpc3Q6OlJlcGxheWVyIHNob3VsZCBzdG9wIHJlcGxheSBhbmQgaW5mb3JtIGNs
aWVudHMgYWZ0ZXIgZW5jb3VudGVyaW5nIGFuIGludmFsaWQgaXRlbQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwODY3CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgQ2hyaXMgRHVtZXouCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNv
cmUvRGlzcGxheUxpc3RUZXN0cy5jcHA6CisKKyAgICAgICAgQWRqdXN0IGEgZmV3IEFQSSB0ZXN0
cywgc2luY2UgdGhlIGl0ZW0gaGFuZGxlIGluIHRoZSBgRGlzcGxheUxpc3RgIGl0ZXJhdG9yIGlz
IG5vdyBvcHRpb25hbC4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9j
Zy9EaXNwbGF5TGlzdFRlc3RzQ0cuY3BwOgorCisgICAgICAgIEFkZCBhIGNvdXBsZSBvZiBuZXcg
QVBJIHRlc3RzIHRvIGV4ZXJjaXNlIGRpc3BsYXkgbGlzdCBpdGVtIGRlY29kaW5nIGFuZCB2YWxp
ZGF0aW9uIGZhaWx1cmVzLgorCiAyMDIxLTAxLTIyICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJk
QGFwcGxlLmNvbT4KIAogICAgICAgICBbd2Via2l0c2NtcHldIE1hcCBhbHRlcm5hdGl2ZSBkZWZh
dWx0IGJyYW5jaCBuYW1lcwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJDb3JlL0Rpc3BsYXlMaXN0VGVzdHMuY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJDb3JlL0Rpc3BsYXlMaXN0VGVzdHMuY3BwCmluZGV4IGY3MDBjNTYyOWY2MDZlNWMyNmRmMTZi
MjBiYjFkZWE5NTRlODA3YTUuLmU4NzE3Yzc5MTQwYmRlYTRiNWY1MzU1ZjAxNjkwODllNjAwODY3
MzMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViQ29yZS9EaXNwbGF5
TGlzdFRlc3RzLmNwcAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvRGlz
cGxheUxpc3RUZXN0cy5jcHAKQEAgLTc5LDQxICs3OSw0MSBAQCBURVNUKERpc3BsYXlMaXN0VGVz
dHMsIEFwcGVuZEl0ZW1zKQogCiAgICAgYm9vbCBvYnNlcnZlZFVuZXhwZWN0ZWRJdGVtID0gZmFs
c2U7CiAgICAgZm9yIChhdXRvIFtoYW5kbGUsIGV4dGVudCwgc2l6ZV0gOiBsaXN0KSB7Ci0gICAg
ICAgIHN3aXRjaCAoaGFuZGxlLnR5cGUoKSkgeworICAgICAgICBzd2l0Y2ggKGhhbmRsZS0+dHlw
ZSgpKSB7CiAgICAgICAgIGNhc2UgSXRlbVR5cGU6OlNldFN0cm9rZVRoaWNrbmVzczogewotICAg
ICAgICAgICAgRVhQRUNUX0ZBTFNFKGhhbmRsZS5pc0RyYXdpbmdJdGVtKCkpOwotICAgICAgICAg
ICAgRVhQRUNUX1RSVUUoaGFuZGxlLmlzPFNldFN0cm9rZVRoaWNrbmVzcz4oKSk7Ci0gICAgICAg
ICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLmdldDxTZXRTdHJva2VUaGlja25lc3M+KCk7CisgICAg
ICAgICAgICBFWFBFQ1RfRkFMU0UoaGFuZGxlLT5pc0RyYXdpbmdJdGVtKCkpOworICAgICAgICAg
ICAgRVhQRUNUX1RSVUUoaGFuZGxlLT5pczxTZXRTdHJva2VUaGlja25lc3M+KCkpOworICAgICAg
ICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS0+Z2V0PFNldFN0cm9rZVRoaWNrbmVzcz4oKTsKICAg
ICAgICAgICAgIEVYUEVDVF9FUShpdGVtLnRoaWNrbmVzcygpLCAxLjUpOwogICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBJdGVtVHlwZTo6RmlsbFBhdGg6IHsKLSAg
ICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5pc0RyYXdpbmdJdGVtKCkpOwotICAgICAgICAg
ICAgRVhQRUNUX1RSVUUoaGFuZGxlLmlzPEZpbGxQYXRoPigpKTsKLSAgICAgICAgICAgIGF1dG8m
IGl0ZW0gPSBoYW5kbGUuZ2V0PEZpbGxQYXRoPigpOworICAgICAgICAgICAgRVhQRUNUX1RSVUUo
aGFuZGxlLT5pc0RyYXdpbmdJdGVtKCkpOworICAgICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxl
LT5pczxGaWxsUGF0aD4oKSk7CisgICAgICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLT5nZXQ8
RmlsbFBhdGg+KCk7CiAgICAgICAgICAgICBFWFBFQ1RfRVEoaXRlbS5wYXRoKCkucGxhdGZvcm1Q
YXRoKCksIHBhdGgucGxhdGZvcm1QYXRoKCkpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
IH0KICAgICAgICAgY2FzZSBJdGVtVHlwZTo6RmlsbFJlY3RXaXRoR3JhZGllbnQ6IHsKLSAgICAg
ICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5pc0RyYXdpbmdJdGVtKCkpOwotICAgICAgICAgICAg
RVhQRUNUX1RSVUUoaGFuZGxlLmlzPEZpbGxSZWN0V2l0aEdyYWRpZW50PigpKTsKLSAgICAgICAg
ICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUuZ2V0PEZpbGxSZWN0V2l0aEdyYWRpZW50PigpOworICAg
ICAgICAgICAgRVhQRUNUX1RSVUUoaGFuZGxlLT5pc0RyYXdpbmdJdGVtKCkpOworICAgICAgICAg
ICAgRVhQRUNUX1RSVUUoaGFuZGxlLT5pczxGaWxsUmVjdFdpdGhHcmFkaWVudD4oKSk7CisgICAg
ICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLT5nZXQ8RmlsbFJlY3RXaXRoR3JhZGllbnQ+KCk7
CiAgICAgICAgICAgICBFWFBFQ1RfRVEoaXRlbS5yZWN0KCksIEZsb2F0UmVjdCgxLiwgMS4sIDEw
LiwgMTAuKSk7CiAgICAgICAgICAgICBFWFBFQ1RfRVEoJml0ZW0uZ3JhZGllbnQoKSwgZ3JhZGll
bnQucHRyKCkpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBJ
dGVtVHlwZTo6U2V0SW5saW5lRmlsbENvbG9yOiB7Ci0gICAgICAgICAgICBFWFBFQ1RfRkFMU0Uo
aGFuZGxlLmlzRHJhd2luZ0l0ZW0oKSk7Ci0gICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUu
aXM8U2V0SW5saW5lRmlsbENvbG9yPigpKTsKLSAgICAgICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5k
bGUuZ2V0PFNldElubGluZUZpbGxDb2xvcj4oKTsKKyAgICAgICAgICAgIEVYUEVDVF9GQUxTRSho
YW5kbGUtPmlzRHJhd2luZ0l0ZW0oKSk7CisgICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUt
PmlzPFNldElubGluZUZpbGxDb2xvcj4oKSk7CisgICAgICAgICAgICBhdXRvJiBpdGVtID0gaGFu
ZGxlLT5nZXQ8U2V0SW5saW5lRmlsbENvbG9yPigpOwogICAgICAgICAgICAgRVhQRUNUX0VRKGl0
ZW0uY29sb3IoKSwgQ29sb3I6OnJlZCk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQog
I2lmIEVOQUJMRShJTkxJTkVfUEFUSF9EQVRBKQogICAgICAgICBjYXNlIEl0ZW1UeXBlOjpTdHJv
a2VJbmxpbmVQYXRoOiB7Ci0gICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUuaXNEcmF3aW5n
SXRlbSgpKTsKLSAgICAgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS5pczxTdHJva2VJbmxpbmVQ
YXRoPigpKTsKLSAgICAgICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUuZ2V0PFN0cm9rZUlubGlu
ZVBhdGg+KCk7CisgICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUtPmlzRHJhd2luZ0l0ZW0o
KSk7CisgICAgICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUtPmlzPFN0cm9rZUlubGluZVBhdGg+
KCkpOworICAgICAgICAgICAgYXV0byYgaXRlbSA9IGhhbmRsZS0+Z2V0PFN0cm9rZUlubGluZVBh
dGg+KCk7CiAgICAgICAgICAgICBjb25zdCBhdXRvIHBhdGggPSBpdGVtLnBhdGgoKTsKICAgICAg
ICAgICAgIGF1dG8mIGxpbmUgPSBwYXRoLmlubGluZURhdGE8TGluZURhdGE+KCk7CiAgICAgICAg
ICAgICBFWFBFQ1RfRVEobGluZS5zdGFydCwgRmxvYXRQb2ludCgwLCAwKSk7CkBAIC0xNDgsMTAg
KzE0OCwxMCBAQCBURVNUKERpc3BsYXlMaXN0VGVzdHMsIEFwcGVuZEl0ZW1zKQogICAgIGxpc3Qu
YXBwZW5kPEZpbGxSZWN0V2l0aENvbG9yPihGbG9hdFJlY3QgeyAwLCAwLCAxMDAsIDEwMCB9LCBD
b2xvcjo6YmxhY2spOwogCiAgICAgZm9yIChhdXRvIFtoYW5kbGUsIGV4dGVudCwgc2l6ZV0gOiBs
aXN0KSB7Ci0gICAgICAgIEVYUEVDVF9FUShoYW5kbGUudHlwZSgpLCBJdGVtVHlwZTo6RmlsbFJl
Y3RXaXRoQ29sb3IpOwotICAgICAgICBFWFBFQ1RfVFJVRShoYW5kbGUuaXM8RmlsbFJlY3RXaXRo
Q29sb3I+KCkpOworICAgICAgICBFWFBFQ1RfRVEoaGFuZGxlLT50eXBlKCksIEl0ZW1UeXBlOjpG
aWxsUmVjdFdpdGhDb2xvcik7CisgICAgICAgIEVYUEVDVF9UUlVFKGhhbmRsZS0+aXM8RmlsbFJl
Y3RXaXRoQ29sb3I+KCkpOwogCi0gICAgICAgIGF1dG8mIGl0ZW0gPSBoYW5kbGUuZ2V0PEZpbGxS
ZWN0V2l0aENvbG9yPigpOworICAgICAgICBhdXRvJiBpdGVtID0gaGFuZGxlLT5nZXQ8RmlsbFJl
Y3RXaXRoQ29sb3I+KCk7CiAgICAgICAgIEVYUEVDVF9FUShpdGVtLmNvbG9yKCkuYXNJbmxpbmUo
KSwgQ29sb3I6OmJsYWNrKTsKICAgICAgICAgRVhQRUNUX0VRKGl0ZW0ucmVjdCgpLCBGbG9hdFJl
Y3QoMCwgMCwgMTAwLCAxMDApKTsKICAgICB9CkBAIC0yMjYsNyArMjI2LDcgQEAgVEVTVChEaXNw
bGF5TGlzdFRlc3RzLCBJdGVtQnVmZmVyQ2xpZW50KQogCiAgICAgVmVjdG9yPEl0ZW1UeXBlPiBp
dGVtVHlwZXM7CiAgICAgZm9yIChhdXRvIFtoYW5kbGUsIGV4dGVudCwgc2l6ZV0gOiBzaGFsbG93
Q29weSkKLSAgICAgICAgaXRlbVR5cGVzLmFwcGVuZChoYW5kbGUudHlwZSgpKTsKKyAgICAgICAg
aXRlbVR5cGVzLmFwcGVuZChoYW5kbGUtPnR5cGUoKSk7CiAKICAgICBFWFBFQ1RfRkFMU0Uoc2hh
bGxvd0NvcHkuaXNFbXB0eSgpKTsKICAgICBFWFBFQ1RfRVEoaXRlbVR5cGVzLnNpemUoKSwgNFUp
OwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJDb3JlL2NnL0Rpc3Bs
YXlMaXN0VGVzdHNDRy5jcHAgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvY2cv
RGlzcGxheUxpc3RUZXN0c0NHLmNwcAppbmRleCBkOWM4MzMxNGNhYzE1NTVkMTgyYzk3Y2ZiNmFj
MWFlZThiMTdmY2VjLi4xY2E4NTQ5OWFlNGI2NWZlNTRjZjZiMjljOTM0MjkwYTc2ZmFjYmRjIDEw
MDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvY2cvRGlzcGxheUxp
c3RUZXN0c0NHLmNwcAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYkNvcmUvY2cv
RGlzcGxheUxpc3RUZXN0c0NHLmNwcApAQCAtMzcsMTEgKzM3LDEzIEBAIHVzaW5nIG5hbWVzcGFj
ZSBXZWJDb3JlOwogdXNpbmcgRGlzcGxheUxpc3Q6OkRpc3BsYXlMaXN0OwogdXNpbmcgbmFtZXNw
YWNlIERpc3BsYXlMaXN0OwogCitjb25zdGV4cHIgc2l6ZV90IGdsb2JhbEl0ZW1CdWZmZXJDYXBh
Y2l0eSA9IDEgPDwgMTI7CitzdGF0aWMgdWludDhfdCBnbG9iYWxJdGVtQnVmZmVyW2dsb2JhbEl0
ZW1CdWZmZXJDYXBhY2l0eV07Citjb25zdGV4cHIgQ0dGbG9hdCBjb250ZXh0V2lkdGggPSAxMDA7
Citjb25zdGV4cHIgQ0dGbG9hdCBjb250ZXh0SGVpZ2h0ID0gMTAwOworCiBURVNUKERpc3BsYXlM
aXN0VGVzdHMsIFJlcGxheVdpdGhNaXNzaW5nUmVzb3VyY2UpCiB7Ci0gICAgY29uc3RleHByIENH
RmxvYXQgY29udGV4dFdpZHRoID0gMTAwOwotICAgIGNvbnN0ZXhwciBDR0Zsb2F0IGNvbnRleHRI
ZWlnaHQgPSAxMDA7Ci0KICAgICBGbG9hdFJlY3QgY29udGV4dEJvdW5kcyB7IDAsIDAsIGNvbnRl
eHRXaWR0aCwgY29udGV4dEhlaWdodCB9OwogCiAgICAgYXV0byBjb2xvclNwYWNlID0gYWRvcHRD
RihDR0NvbG9yU3BhY2VDcmVhdGVXaXRoTmFtZShrQ0dDb2xvclNwYWNlU1JHQikpOwpAQCAtNzks
NiArODEsNzkgQEAgVEVTVChEaXNwbGF5TGlzdFRlc3RzLCBSZXBsYXlXaXRoTWlzc2luZ1Jlc291
cmNlKQogICAgIH0KIH0KIAorVEVTVChEaXNwbGF5TGlzdFRlc3RzLCBPdXRPZkxpbmVJdGVtRGVj
b2RpbmdGYWlsdXJlKQoreworICAgIHN0YXRpYyBJdGVtQnVmZmVySWRlbnRpZmllciBnbG9iYWxC
dWZmZXJJZGVudGlmaWVyID0gSXRlbUJ1ZmZlcklkZW50aWZpZXI6OmdlbmVyYXRlKCk7CisKKyAg
ICBjbGFzcyBSZWFkaW5nQ2xpZW50IDogcHVibGljIEl0ZW1CdWZmZXJSZWFkaW5nQ2xpZW50IHsK
KyAgICBwcml2YXRlOgorICAgICAgICBPcHRpb25hbDxJdGVtSGFuZGxlPiBXQVJOX1VOVVNFRF9S
RVRVUk4gZGVjb2RlSXRlbShjb25zdCB1aW50OF90Kiwgc2l6ZV90LCBJdGVtVHlwZSB0eXBlLCB1
aW50OF90KikgZmluYWwKKyAgICAgICAgeworICAgICAgICAgICAgRVhQRUNUX0VRKHR5cGUsIEl0
ZW1UeXBlOjpGaWxsUGF0aCk7CisgICAgICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OworICAg
ICAgICB9CisgICAgfTsKKworICAgIGNsYXNzIFdyaXRpbmdDbGllbnQgOiBwdWJsaWMgSXRlbUJ1
ZmZlcldyaXRpbmdDbGllbnQgeworICAgIHByaXZhdGU6CisgICAgICAgIEl0ZW1CdWZmZXJIYW5k
bGUgY3JlYXRlSXRlbUJ1ZmZlcihzaXplX3QgY2FwYWNpdHkpIGZpbmFsCisgICAgICAgIHsKKyAg
ICAgICAgICAgIEVYUEVDVF9MVChjYXBhY2l0eSwgZ2xvYmFsSXRlbUJ1ZmZlckNhcGFjaXR5KTsK
KyAgICAgICAgICAgIHJldHVybiB7IGdsb2JhbEJ1ZmZlcklkZW50aWZpZXIsIGdsb2JhbEl0ZW1C
dWZmZXIsIGdsb2JhbEl0ZW1CdWZmZXJDYXBhY2l0eSB9OworICAgICAgICB9CisKKyAgICAgICAg
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZW5jb2RlSXRlbShJdGVtSGFuZGxlKSBjb25zdCBmaW5hbCB7
IHJldHVybiBTaGFyZWRCdWZmZXI6OmNyZWF0ZSgpOyB9CisgICAgICAgIHZvaWQgZGlkQXBwZW5k
RGF0YShjb25zdCBJdGVtQnVmZmVySGFuZGxlJiwgc2l6ZV90LCBEaWRDaGFuZ2VJdGVtQnVmZmVy
KSBmaW5hbCB7IH0KKyAgICB9OworCisgICAgRmxvYXRSZWN0IGNvbnRleHRCb3VuZHMgeyAwLCAw
LCBjb250ZXh0V2lkdGgsIGNvbnRleHRIZWlnaHQgfTsKKworICAgIGF1dG8gY29sb3JTcGFjZSA9
IGFkb3B0Q0YoQ0dDb2xvclNwYWNlQ3JlYXRlV2l0aE5hbWUoa0NHQ29sb3JTcGFjZVNSR0IpKTsK
KyAgICBhdXRvIGNnQ29udGV4dCA9IGFkb3B0Q0YoQ0dCaXRtYXBDb250ZXh0Q3JlYXRlKG51bGxw
dHIsIGNvbnRleHRXaWR0aCwgY29udGV4dEhlaWdodCwgOCwgNCAqIGNvbnRleHRXaWR0aCwgY29s
b3JTcGFjZS5nZXQoKSwga0NHSW1hZ2VBbHBoYVByZW11bHRpcGxpZWRMYXN0KSk7CisgICAgR3Jh
cGhpY3NDb250ZXh0IGNvbnRleHQgeyBjZ0NvbnRleHQuZ2V0KCkgfTsKKworICAgIERpc3BsYXlM
aXN0IGxpc3Q7CisgICAgV3JpdGluZ0NsaWVudCB3cml0ZXI7CisgICAgbGlzdC5zZXRJdGVtQnVm
ZmVyQ2xpZW50KCZ3cml0ZXIpOworCisgICAgUGF0aCBwYXRoOworICAgIHBhdGgubW92ZVRvKHsg
MTAuLCAxMC4gfSk7CisgICAgcGF0aC5hZGRMaW5lVG8oeyA1MC4sIDUwLiB9KTsKKyAgICBwYXRo
LmFkZExpbmVUbyh7IDEwLiwgMTAuIH0pOworICAgIGxpc3QuYXBwZW5kPFNldElubGluZVN0cm9r
ZUNvbG9yPihDb2xvcjo6Ymx1ZSk7CisgICAgbGlzdC5hcHBlbmQ8RmlsbFBhdGg+KFdURk1vdmUo
cGF0aCkpOworCisgICAgRGlzcGxheUxpc3Qgc2hhbGxvd0NvcHkge3sgSXRlbUJ1ZmZlckhhbmRs
ZSB7IGdsb2JhbEJ1ZmZlcklkZW50aWZpZXIsIGdsb2JhbEl0ZW1CdWZmZXIsIGxpc3Quc2l6ZUlu
Qnl0ZXMoKSB9IH19OworICAgIFJlYWRpbmdDbGllbnQgcmVhZGVyOworICAgIHNoYWxsb3dDb3B5
LnNldEl0ZW1CdWZmZXJDbGllbnQoJnJlYWRlcik7CisKKyAgICBSZXBsYXllciByZXBsYXllciB7
IGNvbnRleHQsIGxpc3QgfTsKKyAgICBhdXRvIHJlc3VsdCA9IHJlcGxheWVyLnJlcGxheSgpOwor
ICAgIEVYUEVDVF9HVChyZXN1bHQubnVtYmVyT2ZCeXRlc1JlYWQsIDBVKTsKKyAgICBFWFBFQ1Rf
RVEocmVzdWx0Lm5leHREZXN0aW5hdGlvbkltYWdlQnVmZmVyLCBXVEY6Om51bGxvcHQpOworICAg
IEVYUEVDVF9FUShyZXN1bHQubWlzc2luZ0NhY2hlZFJlc291cmNlSWRlbnRpZmllciwgV1RGOjpu
dWxsb3B0KTsKKyAgICBFWFBFQ1RfRVEocmVzdWx0LnJlYXNvbkZvclN0b3BwaW5nLCBTdG9wUmVw
bGF5UmVhc29uOjpJbnZhbGlkSXRlbSk7Cit9CisKK1RFU1QoRGlzcGxheUxpc3RUZXN0cywgSW5s
aW5lSXRlbVZhbGlkYXRpb25GYWlsdXJlKQoreworICAgIEZsb2F0UmVjdCBjb250ZXh0Qm91bmRz
IHsgMCwgMCwgY29udGV4dFdpZHRoLCBjb250ZXh0SGVpZ2h0IH07CisKKyAgICBhdXRvIGNvbG9y
U3BhY2UgPSBhZG9wdENGKENHQ29sb3JTcGFjZUNyZWF0ZVdpdGhOYW1lKGtDR0NvbG9yU3BhY2VT
UkdCKSk7CisgICAgYXV0byBjZ0NvbnRleHQgPSBhZG9wdENGKENHQml0bWFwQ29udGV4dENyZWF0
ZShudWxscHRyLCBjb250ZXh0V2lkdGgsIGNvbnRleHRIZWlnaHQsIDgsIDQgKiBjb250ZXh0V2lk
dGgsIGNvbG9yU3BhY2UuZ2V0KCksIGtDR0ltYWdlQWxwaGFQcmVtdWx0aXBsaWVkTGFzdCkpOwor
ICAgIEdyYXBoaWNzQ29udGV4dCBjb250ZXh0IHsgY2dDb250ZXh0LmdldCgpIH07CisKKyAgICBE
aXNwbGF5TGlzdCBsaXN0OworICAgIGxpc3QuYXBwZW5kPEZsdXNoQ29udGV4dD4oRmx1c2hJZGVu
dGlmaWVyIHsgfSk7CisKKyAgICBSZXBsYXllciByZXBsYXllciB7IGNvbnRleHQsIGxpc3QgfTsK
KyAgICBhdXRvIHJlc3VsdCA9IHJlcGxheWVyLnJlcGxheSgpOworICAgIEVYUEVDVF9FUShyZXN1
bHQubnVtYmVyT2ZCeXRlc1JlYWQsIDBVKTsKKyAgICBFWFBFQ1RfRVEocmVzdWx0Lm5leHREZXN0
aW5hdGlvbkltYWdlQnVmZmVyLCBXVEY6Om51bGxvcHQpOworICAgIEVYUEVDVF9FUShyZXN1bHQu
bWlzc2luZ0NhY2hlZFJlc291cmNlSWRlbnRpZmllciwgV1RGOjpudWxsb3B0KTsKKyAgICBFWFBF
Q1RfRVEocmVzdWx0LnJlYXNvbkZvclN0b3BwaW5nLCBTdG9wUmVwbGF5UmVhc29uOjpJbnZhbGlk
SXRlbSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFRlc3RXZWJLaXRBUEkKIAogI2VuZGlmIC8vIFVT
RShDRykK
</data>
<flag name="commit-queue"
          id="436060"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>