<?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>196669</bug_id>
          
          <creation_ts>2019-04-05 20:46:58 -0700</creation_ts>
          <short_desc>Added tests for WeakHashSet::computesEmpty and WeakHashSet::computeSize</short_desc>
          <delta_ts>2019-04-06 20:57:15 -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>Web Template Framework</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="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>koivisto</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1524976</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-04-05 20:46:58 -0700</bug_when>
    <thetext>Add some tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1524977</commentid>
    <comment_count>1</comment_count>
      <attachid>366872</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-04-05 20:51:39 -0700</bug_when>
    <thetext>Created attachment 366872
Add tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1524983</commentid>
    <comment_count>2</comment_count>
      <attachid>366872</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2019-04-05 21:09:10 -0700</bug_when>
    <thetext>Comment on attachment 366872
Add tests

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1524987</commentid>
    <comment_count>3</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-04-05 23:06:40 -0700</bug_when>
    <thetext>Hm... TestWTF.WTF_WeakPtr.WeakHashSetComputeSize is timing out on iOS?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1525034</commentid>
    <comment_count>4</comment_count>
      <attachid>366872</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-04-06 16:03:04 -0700</bug_when>
    <thetext>Comment on attachment 366872
Add tests

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

&gt; Tools/TestWebKitAPI/Tests/WTF/WeakPtr.cpp:746
&gt; +        } while (weakHashSet.begin().get() != firstObject.get());

Oh oops, this isn&apos;t gonna work... Gotta loop over the whole thing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1525039</commentid>
    <comment_count>5</comment_count>
      <attachid>366894</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-04-06 16:48:14 -0700</bug_when>
    <thetext>Created attachment 366894
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1525040</commentid>
    <comment_count>6</comment_count>
      <attachid>366894</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-04-06 16:48:28 -0700</bug_when>
    <thetext>Comment on attachment 366894
Patch for landing

Wait for EWS...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1525065</commentid>
    <comment_count>7</comment_count>
      <attachid>366894</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-04-06 20:56:01 -0700</bug_when>
    <thetext>Comment on attachment 366894
Patch for landing

Clearing flags on attachment: 366894

Committed r243965: &lt;https://trac.webkit.org/changeset/243965&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1525066</commentid>
    <comment_count>8</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-04-06 20:56:03 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1525069</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-04-06 20:57:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/49675200&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>366872</attachid>
            <date>2019-04-05 20:51:39 -0700</date>
            <delta_ts>2019-04-06 16:48:11 -0700</delta_ts>
            <desc>Add tests</desc>
            <filename>bug-196669-20190405205138.patch</filename>
            <type>text/plain</type>
            <size>12546</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDM5NjApCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDE5LTA0LTA1ICBSeW9zdWtlIE5pd2EgIDxybml3
YUB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZGVkIHRlc3RzIGZvciBXZWFrSGFzaFNldDo6Y29t
cHV0ZXNFbXB0eSBhbmQgV2Vha0hhc2hTZXQ6OmNvbXB1dGVTaXplCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTY2NjkKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmVkIHRoZSBzdXBlcmZsb3VzIHR5
cGUgbmFtZXMgZnJvbSBmb3J3YXJkIGRlY2xhcmF0aW9ucywgYW5kIG1hZGUgV2Vha0hhc2hTZXQ6
OmFkZAorICAgICAgICB0YWtlIGEgY29uc3Qgb2JqZWN0IHRvIG1hdGNoIG90aGVyIGNvbnRhaW5l
ciB0eXBlcyBpbiBXVEYuCisKKyAgICAgICAgKiB3dGYvV2Vha0hhc2hTZXQuaDoKKyAgICAgICAg
KFdURjo6V2Vha0hhc2hTZXQ6OmFkZCk6CisgICAgICAgICogd3RmL1dlYWtQdHIuaDoKKwogMjAx
OS0wNC0wNSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBNYWtl
IFdlYWtQdHI8RWxlbWVudD4gcG9zc2libGUgYW5kIGRlcGxveSBpdCBpbiBmb3JtIGFzc29jaWF0
ZWQgZWxlbWVudHMgY29kZQpJbmRleDogU291cmNlL1dURi93dGYvV2Vha0hhc2hTZXQuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9XZWFrSGFzaFNldC5oCShyZXZpc2lvbiAyNDM5NjAp
CisrKyBTb3VyY2UvV1RGL3d0Zi9XZWFrSGFzaFNldC5oCSh3b3JraW5nIGNvcHkpCkBAIC03NCw3
ICs3NCw3IEBAIHB1YmxpYzoKICAgICAgICAgfQogCiAgICAgcHJpdmF0ZToKLSAgICAgICAgdGVt
cGxhdGUgPHR5cGVuYW1lIFU+IGZyaWVuZCBjbGFzcyBXZWFrSGFzaFNldDsKKyAgICAgICAgdGVt
cGxhdGUgPHR5cGVuYW1lPiBmcmllbmQgY2xhc3MgV2Vha0hhc2hTZXQ7CiAKICAgICAgICAgdHlw
ZW5hbWUgV2Vha1JlZmVyZW5jZVNldDo6Y29uc3RfaXRlcmF0b3IgbV9wb3NpdGlvbjsKICAgICAg
ICAgdHlwZW5hbWUgV2Vha1JlZmVyZW5jZVNldDo6Y29uc3RfaXRlcmF0b3IgbV9lbmRQb3NpdGlv
bjsKQEAgLTg2LDkgKzg2LDEwIEBAIHB1YmxpYzoKICAgICBjb25zdF9pdGVyYXRvciBiZWdpbigp
IGNvbnN0IHsgcmV0dXJuIFdlYWtIYXNoU2V0Q29uc3RJdGVyYXRvcihtX3NldCwgbV9zZXQuYmVn
aW4oKSk7IH0KICAgICBjb25zdF9pdGVyYXRvciBlbmQoKSBjb25zdCB7IHJldHVybiBXZWFrSGFz
aFNldENvbnN0SXRlcmF0b3IobV9zZXQsIG1fc2V0LmVuZCgpKTsgfQogCi0gICAgdm9pZCBhZGQo
VCYgdmFsdWUpCisgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFU+CisgICAgdm9pZCBhZGQoY29uc3Qg
VSYgdmFsdWUpCiAgICAgewotICAgICAgICBtX3NldC5hZGQoKm1ha2VXZWFrUHRyKHZhbHVlKS5t
X3JlZik7CisgICAgICAgIG1fc2V0LmFkZCgqbWFrZVdlYWtQdHI8VD4oY29uc3RfY2FzdDxVJj4o
dmFsdWUpKS5tX3JlZik7CiAgICAgfQogCiAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFU+CkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi9XZWFrUHRyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
V2Vha1B0ci5oCShyZXZpc2lvbiAyNDM5NjApCisrKyBTb3VyY2UvV1RGL3d0Zi9XZWFrUHRyLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTMzLDkgKzMzLDkgQEAKIAogbmFtZXNwYWNlIFdURiB7CiAKLXRl
bXBsYXRlPHR5cGVuYW1lIFU+IGNsYXNzIFdlYWtIYXNoU2V0OwotdGVtcGxhdGU8dHlwZW5hbWUg
VD4gY2xhc3MgV2Vha1B0cjsKLXRlbXBsYXRlPHR5cGVuYW1lIFQ+IGNsYXNzIFdlYWtQdHJGYWN0
b3J5OwordGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIFdlYWtIYXNoU2V0OwordGVtcGxhdGU8dHlw
ZW5hbWU+IGNsYXNzIFdlYWtQdHI7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgV2Vha1B0ckZh
Y3Rvcnk7CiAKIC8vIE5vdGU6IFdlYWtSZWZlcmVuY2UgaXMgYW4gaW1wbGVtZW50YXRpb24gZGV0
YWlsLCBhbmQgc2hvdWxkIG5vdCBiZSB1c2VkIGRpcmVjdGx5LgogdGVtcGxhdGU8dHlwZW5hbWUg
VD4KQEAgLTg2LDggKzg2LDggQEAgcHVibGljOgogICAgIHZvaWQgY2xlYXIoKSB7IG1fcmVmID0g
bnVsbHB0cjsgfQogCiBwcml2YXRlOgotICAgIHRlbXBsYXRlPHR5cGVuYW1lIFU+IGZyaWVuZCBj
bGFzcyBXZWFrSGFzaFNldDsKLSAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBVPiBmcmllbmQgY2xhc3Mg
V2Vha1B0cjsKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZT4gZnJpZW5kIGNsYXNzIFdlYWtIYXNoU2V0
OworICAgIHRlbXBsYXRlPHR5cGVuYW1lPiBmcmllbmQgY2xhc3MgV2Vha1B0cjsKICAgICB0ZW1w
bGF0ZTx0eXBlbmFtZSBVPiBmcmllbmQgV2Vha1B0cjxVPiBtYWtlV2Vha1B0cihVJik7CiAKICAg
ICBSZWZQdHI8V2Vha1JlZmVyZW5jZTxUPj4gbV9yZWY7CkBAIC0xMzEsNyArMTMxLDcgQEAgcHVi
bGljOgogICAgIH0KIAogcHJpdmF0ZToKLSAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBVPiBmcmllbmQg
Y2xhc3MgV2Vha0hhc2hTZXQ7CisgICAgdGVtcGxhdGU8dHlwZW5hbWU+IGZyaWVuZCBjbGFzcyBX
ZWFrSGFzaFNldDsKIAogICAgIG11dGFibGUgUmVmUHRyPFdlYWtSZWZlcmVuY2U8VD4+IG1fcmVm
OwogfTsKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VM
b2cJKHJldmlzaW9uIDI0Mzk2MSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE3IEBACisyMDE5LTA0LTA1ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQu
b3JnPgorCisgICAgICAgIEFkZGVkIHRlc3RzIGZvciBXZWFrSGFzaFNldDo6Y29tcHV0ZXNFbXB0
eSBhbmQgV2Vha0hhc2hTZXQ6OmNvbXB1dGVTaXplCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTY2NjkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBBZGRlZCB0aHJlZSBuZXcgdW5pdCB0ZXN0cyBmb3IgV2Vh
a0hhc2hTZXQuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9XZWFrUHRyLmNw
cDoKKyAgICAgICAgKFdURl9XZWFrUHRyLldlYWtIYXNoU2V0Q29uc3RPYmplY3RzKToKKyAgICAg
ICAgKFdURl9XZWFrUHRyLldlYWtIYXNoU2V0Q29tcHV0ZXNFbXB0eSk6CisgICAgICAgIChXVEZf
V2Vha1B0ci5XZWFrSGFzaFNldENvbXB1dGVTaXplKToKKwogMjAxOS0wNC0wNSAgWW9uZ2p1biBa
aGFuZyAgPHlvbmdqdW5femhhbmdAYXBwbGUuY29tPgogCiAgICAgICAgIFdlIHNob3VsZCBwYXNz
IG1pbmltdW1FZmZlY3RpdmVEZXZpY2VXaWR0aCB0byB3ZWIgcHJvY2VzcyBvbiBuZXcgcGFnZSBj
cmVhdGlvbi4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1dlYWtQdHIuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1dlYWtQdHIuY3Bw
CShyZXZpc2lvbiAyNDM5NjApCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9XZWFr
UHRyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDkyLDYgKzQ5Miw3MiBAQCBURVNUKFdURl9XZWFr
UHRyLCBXZWFrSGFzaFNldEJhc2ljKQogICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNl
cywgMHUpOwogfQogCitURVNUKFdURl9XZWFrUHRyLCBXZWFrSGFzaFNldENvbnN0T2JqZWN0cykK
K3sKKyAgICB7CisgICAgICAgIFdlYWtIYXNoU2V0PEJhc2U+IHdlYWtIYXNoU2V0OworICAgICAg
ICBjb25zdCBCYXNlIG9iamVjdDsKKyAgICAgICAgRVhQRUNUX0ZBTFNFKHdlYWtIYXNoU2V0LmNv
bnRhaW5zKG9iamVjdCkpOworICAgICAgICBFWFBFQ1RfRVEoc19iYXNlV2Vha1JlZmVyZW5jZXMs
IDB1KTsKKyAgICAgICAgRVhQRUNUX0VRKGNvbXB1dGVTaXplT2ZXZWFrSGFzaFNldCh3ZWFrSGFz
aFNldCksIDB1KTsKKyAgICAgICAgd2Vha0hhc2hTZXQuYWRkKG9iamVjdCk7CisgICAgICAgIEVY
UEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMXUpOworICAgICAgICBFWFBFQ1RfRVEoY29t
cHV0ZVNpemVPZldlYWtIYXNoU2V0KHdlYWtIYXNoU2V0KSwgMXUpOworICAgICAgICBFWFBFQ1Rf
VFJVRSh3ZWFrSGFzaFNldC5jb250YWlucyhvYmplY3QpKTsKKyAgICAgICAgd2Vha0hhc2hTZXQu
Y2hlY2tDb25zaXN0ZW5jeSgpOworICAgICAgICB3ZWFrSGFzaFNldC5hZGQob2JqZWN0KTsKKyAg
ICAgICAgRVhQRUNUX1RSVUUod2Vha0hhc2hTZXQuY29udGFpbnMob2JqZWN0KSk7CisgICAgICAg
IEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMXUpOworICAgICAgICBFWFBFQ1RfRVEo
Y29tcHV0ZVNpemVPZldlYWtIYXNoU2V0KHdlYWtIYXNoU2V0KSwgMXUpOworICAgICAgICB3ZWFr
SGFzaFNldC5jaGVja0NvbnNpc3RlbmN5KCk7CisgICAgICAgIHdlYWtIYXNoU2V0LnJlbW92ZShv
YmplY3QpOworICAgICAgICBFWFBFQ1RfRVEoc19iYXNlV2Vha1JlZmVyZW5jZXMsIDF1KTsKKyAg
ICAgICAgRVhQRUNUX0VRKGNvbXB1dGVTaXplT2ZXZWFrSGFzaFNldCh3ZWFrSGFzaFNldCksIDB1
KTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFdlYWtIYXNoU2V0PEJhc2U+IHdlYWtIYXNoU2V0
OworICAgICAgICBjb25zdCBEZXJpdmVkIG9iamVjdDsKKyAgICAgICAgRVhQRUNUX0ZBTFNFKHdl
YWtIYXNoU2V0LmNvbnRhaW5zKG9iamVjdCkpOworICAgICAgICBFWFBFQ1RfRVEoc19iYXNlV2Vh
a1JlZmVyZW5jZXMsIDB1KTsKKyAgICAgICAgRVhQRUNUX0VRKGNvbXB1dGVTaXplT2ZXZWFrSGFz
aFNldCh3ZWFrSGFzaFNldCksIDB1KTsKKyAgICAgICAgd2Vha0hhc2hTZXQuYWRkKG9iamVjdCk7
CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMXUpOworICAgICAgICBF
WFBFQ1RfRVEoY29tcHV0ZVNpemVPZldlYWtIYXNoU2V0KHdlYWtIYXNoU2V0KSwgMXUpOworICAg
ICAgICBFWFBFQ1RfVFJVRSh3ZWFrSGFzaFNldC5jb250YWlucyhvYmplY3QpKTsKKyAgICAgICAg
d2Vha0hhc2hTZXQuY2hlY2tDb25zaXN0ZW5jeSgpOworICAgICAgICB3ZWFrSGFzaFNldC5hZGQo
b2JqZWN0KTsKKyAgICAgICAgRVhQRUNUX1RSVUUod2Vha0hhc2hTZXQuY29udGFpbnMob2JqZWN0
KSk7CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMXUpOworICAgICAg
ICBFWFBFQ1RfRVEoY29tcHV0ZVNpemVPZldlYWtIYXNoU2V0KHdlYWtIYXNoU2V0KSwgMXUpOwor
ICAgICAgICB3ZWFrSGFzaFNldC5jaGVja0NvbnNpc3RlbmN5KCk7CisgICAgICAgIHdlYWtIYXNo
U2V0LnJlbW92ZShvYmplY3QpOworICAgICAgICBFWFBFQ1RfRVEoc19iYXNlV2Vha1JlZmVyZW5j
ZXMsIDF1KTsKKyAgICAgICAgRVhQRUNUX0VRKGNvbXB1dGVTaXplT2ZXZWFrSGFzaFNldCh3ZWFr
SGFzaFNldCksIDB1KTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFdlYWtIYXNoU2V0PERlcml2
ZWQ+IHdlYWtIYXNoU2V0OworICAgICAgICBjb25zdCBEZXJpdmVkIG9iamVjdDsKKyAgICAgICAg
RVhQRUNUX0ZBTFNFKHdlYWtIYXNoU2V0LmNvbnRhaW5zKG9iamVjdCkpOworICAgICAgICBFWFBF
Q1RfRVEoc19iYXNlV2Vha1JlZmVyZW5jZXMsIDB1KTsKKyAgICAgICAgRVhQRUNUX0VRKGNvbXB1
dGVTaXplT2ZXZWFrSGFzaFNldCh3ZWFrSGFzaFNldCksIDB1KTsKKyAgICAgICAgd2Vha0hhc2hT
ZXQuYWRkKG9iamVjdCk7CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywg
MXUpOworICAgICAgICBFWFBFQ1RfRVEoY29tcHV0ZVNpemVPZldlYWtIYXNoU2V0KHdlYWtIYXNo
U2V0KSwgMXUpOworICAgICAgICBFWFBFQ1RfVFJVRSh3ZWFrSGFzaFNldC5jb250YWlucyhvYmpl
Y3QpKTsKKyAgICAgICAgd2Vha0hhc2hTZXQuY2hlY2tDb25zaXN0ZW5jeSgpOworICAgICAgICB3
ZWFrSGFzaFNldC5hZGQob2JqZWN0KTsKKyAgICAgICAgRVhQRUNUX1RSVUUod2Vha0hhc2hTZXQu
Y29udGFpbnMob2JqZWN0KSk7CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNl
cywgMXUpOworICAgICAgICBFWFBFQ1RfRVEoY29tcHV0ZVNpemVPZldlYWtIYXNoU2V0KHdlYWtI
YXNoU2V0KSwgMXUpOworICAgICAgICB3ZWFrSGFzaFNldC5jaGVja0NvbnNpc3RlbmN5KCk7Cisg
ICAgICAgIHdlYWtIYXNoU2V0LnJlbW92ZShvYmplY3QpOworICAgICAgICBFWFBFQ1RfRVEoc19i
YXNlV2Vha1JlZmVyZW5jZXMsIDF1KTsKKyAgICAgICAgRVhQRUNUX0VRKGNvbXB1dGVTaXplT2ZX
ZWFrSGFzaFNldCh3ZWFrSGFzaFNldCksIDB1KTsKKyAgICB9Cit9CisKIFRFU1QoV1RGX1dlYWtQ
dHIsIFdlYWtIYXNoU2V0RXhwYW5zaW9uKQogewogICAgIHVuc2lnbmVkIGluaXRpYWxDYXBhY2l0
eTsKQEAgLTU2OSw0ICs2MzUsMTU4IEBAIFRFU1QoV1RGX1dlYWtQdHIsIFdlYWtIYXNoU2V0RXhw
YW5zaW9uKQogICAgIH0KIH0KIAorVEVTVChXVEZfV2Vha1B0ciwgV2Vha0hhc2hTZXRDb21wdXRl
c0VtcHR5KQoreworICAgIHsKKyAgICAgICAgV2Vha0hhc2hTZXQ8QmFzZT4gd2Vha0hhc2hTZXQ7
CisgICAgICAgIHsKKyAgICAgICAgICAgIEJhc2Ugb2JqZWN0OworICAgICAgICAgICAgRVhQRUNU
X0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAwdSk7CisgICAgICAgICAgICB3ZWFrSGFzaFNldC5h
ZGQob2JqZWN0KTsKKyAgICAgICAgICAgIEVYUEVDVF9GQUxTRSh3ZWFrSGFzaFNldC5jb21wdXRl
c0VtcHR5KCkpOworICAgICAgICB9CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJl
bmNlcywgMXUpOworICAgICAgICBFWFBFQ1RfVFJVRSh3ZWFrSGFzaFNldC5jb21wdXRlc0VtcHR5
KCkpOworICAgIH0KKworICAgIHsKKyAgICAgICAgV2Vha0hhc2hTZXQ8QmFzZT4gd2Vha0hhc2hT
ZXQ7CisgICAgICAgIEJhc2Ugb2JqZWN0MTsKKyAgICAgICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtS
ZWZlcmVuY2VzLCAwdSk7CisgICAgICAgIHdlYWtIYXNoU2V0LmFkZChvYmplY3QxKTsKKyAgICAg
ICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAxdSk7CisgICAgICAgIHsKKyAgICAg
ICAgICAgIEJhc2Ugb2JqZWN0MjsKKyAgICAgICAgICAgIHdlYWtIYXNoU2V0LmFkZChvYmplY3Qy
KTsKKyAgICAgICAgICAgIEVYUEVDVF9GQUxTRSh3ZWFrSGFzaFNldC5jb21wdXRlc0VtcHR5KCkp
OworICAgICAgICB9CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMnUp
OworICAgICAgICBFWFBFQ1RfRkFMU0Uod2Vha0hhc2hTZXQuY29tcHV0ZXNFbXB0eSgpKTsKKyAg
ICAgICAgd2Vha0hhc2hTZXQucmVtb3ZlKG9iamVjdDEpOworICAgICAgICBFWFBFQ1RfVFJVRSh3
ZWFrSGFzaFNldC5jb21wdXRlc0VtcHR5KCkpOworICAgIH0KKworICAgIHsKKyAgICAgICAgV2Vh
a0hhc2hTZXQ8QmFzZT4gd2Vha0hhc2hTZXQ7CisgICAgICAgIFZlY3RvcjxzdGQ6OnVuaXF1ZV9w
dHI8QmFzZT4+IG9iamVjdHM7CisgICAgICAgIGF1dG8gZmlyc3RPYmplY3QgPSBzdGQ6Om1ha2Vf
dW5pcXVlPEJhc2U+KCk7CisgICAgICAgIHdlYWtIYXNoU2V0LmFkZCgqZmlyc3RPYmplY3QpOwor
ICAgICAgICBkbyB7CisgICAgICAgICAgICBhdXRvIG9iamVjdCA9IHN0ZDo6bWFrZV91bmlxdWU8
QmFzZT4oKTsKKyAgICAgICAgICAgIHdlYWtIYXNoU2V0LmFkZCgqb2JqZWN0KTsKKyAgICAgICAg
ICAgIG9iamVjdHMuYXBwZW5kKFdURk1vdmUob2JqZWN0KSk7CisgICAgICAgIH0gd2hpbGUgKHdl
YWtIYXNoU2V0LmJlZ2luKCkuZ2V0KCkgPT0gZmlyc3RPYmplY3QuZ2V0KCkpOworCisgICAgICAg
IEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgb2JqZWN0cy5zaXplKCkgKyAxKTsKKyAg
ICAgICAgRVhQRUNUX0VRKGNvbXB1dGVTaXplT2ZXZWFrSGFzaFNldCh3ZWFrSGFzaFNldCksIG9i
amVjdHMuc2l6ZSgpICsgMSk7CisgICAgICAgIEVYUEVDVF9GQUxTRSh3ZWFrSGFzaFNldC5jb21w
dXRlc0VtcHR5KCkpOworICAgICAgICBmaXJzdE9iamVjdCA9IG51bGxwdHI7CisgICAgICAgIEVY
UEVDVF9GQUxTRSh3ZWFrSGFzaFNldC5jb21wdXRlc0VtcHR5KCkpOworICAgICAgICBFWFBFQ1Rf
RVEoc19iYXNlV2Vha1JlZmVyZW5jZXMsIG9iamVjdHMuc2l6ZSgpICsgMSk7CisgICAgICAgIEVY
UEVDVF9FUShjb21wdXRlU2l6ZU9mV2Vha0hhc2hTZXQod2Vha0hhc2hTZXQpLCBvYmplY3RzLnNp
emUoKSk7CisgICAgfQorfQorCitURVNUKFdURl9XZWFrUHRyLCBXZWFrSGFzaFNldENvbXB1dGVT
aXplKQoreworICAgIHsKKyAgICAgICAgV2Vha0hhc2hTZXQ8QmFzZT4gd2Vha0hhc2hTZXQ7Cisg
ICAgICAgIHsKKyAgICAgICAgICAgIEJhc2Ugb2JqZWN0OworICAgICAgICAgICAgRVhQRUNUX0VR
KHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAwdSk7CisgICAgICAgICAgICB3ZWFrSGFzaFNldC5hZGQo
b2JqZWN0KTsKKyAgICAgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMXUp
OworICAgICAgICAgICAgRVhQRUNUX0VRKHdlYWtIYXNoU2V0LmNvbXB1dGVTaXplKCksIDF1KTsK
KyAgICAgICAgICAgIHdlYWtIYXNoU2V0LmNoZWNrQ29uc2lzdGVuY3koKTsKKyAgICAgICAgfQor
ICAgICAgICBFWFBFQ1RfVFJVRSh3ZWFrSGFzaFNldC5jb21wdXRlc0VtcHR5KCkpOworICAgICAg
ICBFWFBFQ1RfRVEod2Vha0hhc2hTZXQuY29tcHV0ZVNpemUoKSwgMHUpOworICAgICAgICBFWFBF
Q1RfRVEoc19iYXNlV2Vha1JlZmVyZW5jZXMsIDB1KTsKKyAgICAgICAgRVhQRUNUX1RSVUUod2Vh
a0hhc2hTZXQuY29tcHV0ZXNFbXB0eSgpKTsKKyAgICAgICAgd2Vha0hhc2hTZXQuY2hlY2tDb25z
aXN0ZW5jeSgpOworICAgIH0KKworICAgIHsKKyAgICAgICAgV2Vha0hhc2hTZXQ8QmFzZT4gd2Vh
a0hhc2hTZXQ7CisgICAgICAgIHsKKyAgICAgICAgICAgIEJhc2Ugb2JqZWN0MTsKKyAgICAgICAg
ICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMHUpOworICAgICAgICAgICAgd2Vh
a0hhc2hTZXQuYWRkKG9iamVjdDEpOworICAgICAgICAgICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtS
ZWZlcmVuY2VzLCAxdSk7CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgQmFzZSBvYmpl
Y3QyOworICAgICAgICAgICAgICAgIHdlYWtIYXNoU2V0LmFkZChvYmplY3QyKTsKKyAgICAgICAg
ICAgICAgICBFWFBFQ1RfRVEoc19iYXNlV2Vha1JlZmVyZW5jZXMsIDJ1KTsKKyAgICAgICAgICAg
ICAgICBFWFBFQ1RfRVEod2Vha0hhc2hTZXQuY29tcHV0ZVNpemUoKSwgMnUpOworICAgICAgICAg
ICAgICAgIHdlYWtIYXNoU2V0LmNoZWNrQ29uc2lzdGVuY3koKTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMnUpOworICAgICAgICAg
ICAgRVhQRUNUX0VRKHdlYWtIYXNoU2V0LmNvbXB1dGVTaXplKCksIDF1KTsKKyAgICAgICAgICAg
IEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMXUpOworICAgICAgICAgICAgd2Vha0hh
c2hTZXQuY2hlY2tDb25zaXN0ZW5jeSgpOworICAgICAgICAgICAgd2Vha0hhc2hTZXQucmVtb3Zl
KG9iamVjdDEpOworICAgICAgICAgICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAx
dSk7CisgICAgICAgICAgICBFWFBFQ1RfRVEod2Vha0hhc2hTZXQuY29tcHV0ZVNpemUoKSwgMHUp
OworICAgICAgICAgICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAxdSk7CisgICAg
ICAgICAgICB3ZWFrSGFzaFNldC5jaGVja0NvbnNpc3RlbmN5KCk7CisgICAgICAgIH0KKyAgICAg
ICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAwdSk7CisgICAgICAgIHdlYWtIYXNo
U2V0LmNoZWNrQ29uc2lzdGVuY3koKTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFdlYWtIYXNo
U2V0PEJhc2U+IHdlYWtIYXNoU2V0OworICAgICAgICBWZWN0b3I8c3RkOjp1bmlxdWVfcHRyPEJh
c2U+PiBvYmplY3RzOworICAgICAgICBhdXRvIGZpcnN0T2JqZWN0ID0gc3RkOjptYWtlX3VuaXF1
ZTxCYXNlPigpOworICAgICAgICB3ZWFrSGFzaFNldC5hZGQoKmZpcnN0T2JqZWN0KTsKKyAgICAg
ICAgZG8geworICAgICAgICAgICAgYXV0byBvYmplY3QgPSBzdGQ6Om1ha2VfdW5pcXVlPEJhc2U+
KCk7CisgICAgICAgICAgICB3ZWFrSGFzaFNldC5hZGQoKm9iamVjdCk7CisgICAgICAgICAgICBv
YmplY3RzLmFwcGVuZChXVEZNb3ZlKG9iamVjdCkpOworICAgICAgICB9IHdoaWxlICh3ZWFrSGFz
aFNldC5iZWdpbigpLmdldCgpICE9IGZpcnN0T2JqZWN0LmdldCgpKTsKKworICAgICAgICB1bnNp
Z25lZCBvYmplY3RzQ291bnQgPSBvYmplY3RzLnNpemUoKTsKKyAgICAgICAgRVhQRUNUX0VRKHNf
YmFzZVdlYWtSZWZlcmVuY2VzLCBvYmplY3RzQ291bnQgKyAxKTsKKyAgICAgICAgRVhQRUNUX0VR
KHdlYWtIYXNoU2V0LmNvbXB1dGVTaXplKCksIG9iamVjdHNDb3VudCArIDEpOworICAgICAgICBF
WFBFQ1RfRVEoc19iYXNlV2Vha1JlZmVyZW5jZXMsIG9iamVjdHNDb3VudCArIDEpOworICAgICAg
ICB3ZWFrSGFzaFNldC5jaGVja0NvbnNpc3RlbmN5KCk7CisgICAgICAgIGZpcnN0T2JqZWN0ID0g
bnVsbHB0cjsKKyAgICAgICAgRVhQRUNUX0VRKHdlYWtIYXNoU2V0LmNvbXB1dGVTaXplKCksIG9i
amVjdHNDb3VudCk7CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgb2Jq
ZWN0c0NvdW50KTsKKyAgICAgICAgd2Vha0hhc2hTZXQuY2hlY2tDb25zaXN0ZW5jeSgpOworICAg
ICAgICBvYmplY3RzLmNsZWFyKCk7CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJl
bmNlcywgb2JqZWN0c0NvdW50KTsKKyAgICAgICAgRVhQRUNUX0VRKHdlYWtIYXNoU2V0LmNvbXB1
dGVTaXplKCksIDB1KTsKKyAgICAgICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAw
dSk7CisgICAgICAgIHdlYWtIYXNoU2V0LmNoZWNrQ29uc2lzdGVuY3koKTsKKyAgICB9CisKKyAg
ICB7CisgICAgICAgIFdlYWtIYXNoU2V0PEJhc2U+IHdlYWtIYXNoU2V0OworICAgICAgICBWZWN0
b3I8c3RkOjp1bmlxdWVfcHRyPEJhc2U+PiBvYmplY3RzOworICAgICAgICBhdXRvIG5vbkZpcnN0
T2JqZWN0ID0gc3RkOjptYWtlX3VuaXF1ZTxCYXNlPigpOworICAgICAgICB3ZWFrSGFzaFNldC5h
ZGQoKm5vbkZpcnN0T2JqZWN0KTsKKyAgICAgICAgZG8geworICAgICAgICAgICAgYXV0byBvYmpl
Y3QgPSBzdGQ6Om1ha2VfdW5pcXVlPEJhc2U+KCk7CisgICAgICAgICAgICB3ZWFrSGFzaFNldC5h
ZGQoKm9iamVjdCk7CisgICAgICAgICAgICBvYmplY3RzLmFwcGVuZChXVEZNb3ZlKG9iamVjdCkp
OworICAgICAgICB9IHdoaWxlICh3ZWFrSGFzaFNldC5iZWdpbigpLmdldCgpID09IG5vbkZpcnN0
T2JqZWN0LmdldCgpKTsKKworICAgICAgICB1bnNpZ25lZCBvYmplY3RzQ291bnQgPSBvYmplY3Rz
LnNpemUoKTsKKyAgICAgICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCBvYmplY3Rz
Q291bnQgKyAxKTsKKyAgICAgICAgRVhQRUNUX0VRKHdlYWtIYXNoU2V0LmNvbXB1dGVTaXplKCks
IG9iamVjdHNDb3VudCArIDEpOworICAgICAgICBFWFBFQ1RfRVEoc19iYXNlV2Vha1JlZmVyZW5j
ZXMsIG9iamVjdHNDb3VudCArIDEpOworICAgICAgICB3ZWFrSGFzaFNldC5jaGVja0NvbnNpc3Rl
bmN5KCk7CisgICAgICAgIG5vbkZpcnN0T2JqZWN0ID0gbnVsbHB0cjsKKyAgICAgICAgRVhQRUNU
X0VRKHdlYWtIYXNoU2V0LmNvbXB1dGVTaXplKCksIG9iamVjdHNDb3VudCk7CisgICAgICAgIEVY
UEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgb2JqZWN0c0NvdW50KTsKKyAgICAgICAgd2Vh
a0hhc2hTZXQuY2hlY2tDb25zaXN0ZW5jeSgpOworICAgICAgICBvYmplY3RzLmNsZWFyKCk7Cisg
ICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgb2JqZWN0c0NvdW50KTsKKyAg
ICAgICAgRVhQRUNUX0VRKHdlYWtIYXNoU2V0LmNvbXB1dGVTaXplKCksIDB1KTsKKyAgICAgICAg
RVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAwdSk7CisgICAgICAgIHdlYWtIYXNoU2V0
LmNoZWNrQ29uc2lzdGVuY3koKTsKKyAgICB9Cit9CisKIH0gLy8gbmFtZXNwYWNlIFRlc3RXZWJL
aXRBUEkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>366894</attachid>
            <date>2019-04-06 16:48:14 -0700</date>
            <delta_ts>2019-04-06 16:48:28 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-196669-20190406164813.patch</filename>
            <type>text/plain</type>
            <size>12322</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNDM5NjIpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDE5LTA0LTA2ICBSeW9zdWtlIE5pd2EgIDxybml3
YUB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZGVkIHRlc3RzIGZvciBXZWFrSGFzaFNldDo6Y29t
cHV0ZXNFbXB0eSBhbmQgV2Vha0hhc2hTZXQ6OmNvbXB1dGVTaXplCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTY2NjkKKworICAgICAgICBSZXZpZXdl
ZCBieSBHZW9mZnJleSBHYXJlbi4KKworICAgICAgICBSZW1vdmVkIHRoZSBzdXBlcmZsb3VzIHR5
cGUgbmFtZXMgZnJvbSBmb3J3YXJkIGRlY2xhcmF0aW9ucywgYW5kIG1hZGUgV2Vha0hhc2hTZXQ6
OmFkZAorICAgICAgICB0YWtlIGEgY29uc3Qgb2JqZWN0IHRvIG1hdGNoIG90aGVyIGNvbnRhaW5l
ciB0eXBlcyBpbiBXVEYuCisKKyAgICAgICAgKiB3dGYvV2Vha0hhc2hTZXQuaDoKKyAgICAgICAg
KFdURjo6V2Vha0hhc2hTZXQ6OmFkZCk6CisgICAgICAgICogd3RmL1dlYWtQdHIuaDoKKwogMjAx
OS0wNC0wNSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBNYWtl
IFdlYWtQdHI8RWxlbWVudD4gcG9zc2libGUgYW5kIGRlcGxveSBpdCBpbiBmb3JtIGFzc29jaWF0
ZWQgZWxlbWVudHMgY29kZQpJbmRleDogU291cmNlL1dURi93dGYvV2Vha0hhc2hTZXQuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9XZWFrSGFzaFNldC5oCShyZXZpc2lvbiAyNDM5NjIp
CisrKyBTb3VyY2UvV1RGL3d0Zi9XZWFrSGFzaFNldC5oCSh3b3JraW5nIGNvcHkpCkBAIC03NCw3
ICs3NCw3IEBAIHB1YmxpYzoKICAgICAgICAgfQogCiAgICAgcHJpdmF0ZToKLSAgICAgICAgdGVt
cGxhdGUgPHR5cGVuYW1lIFU+IGZyaWVuZCBjbGFzcyBXZWFrSGFzaFNldDsKKyAgICAgICAgdGVt
cGxhdGUgPHR5cGVuYW1lPiBmcmllbmQgY2xhc3MgV2Vha0hhc2hTZXQ7CiAKICAgICAgICAgdHlw
ZW5hbWUgV2Vha1JlZmVyZW5jZVNldDo6Y29uc3RfaXRlcmF0b3IgbV9wb3NpdGlvbjsKICAgICAg
ICAgdHlwZW5hbWUgV2Vha1JlZmVyZW5jZVNldDo6Y29uc3RfaXRlcmF0b3IgbV9lbmRQb3NpdGlv
bjsKQEAgLTg2LDkgKzg2LDEwIEBAIHB1YmxpYzoKICAgICBjb25zdF9pdGVyYXRvciBiZWdpbigp
IGNvbnN0IHsgcmV0dXJuIFdlYWtIYXNoU2V0Q29uc3RJdGVyYXRvcihtX3NldCwgbV9zZXQuYmVn
aW4oKSk7IH0KICAgICBjb25zdF9pdGVyYXRvciBlbmQoKSBjb25zdCB7IHJldHVybiBXZWFrSGFz
aFNldENvbnN0SXRlcmF0b3IobV9zZXQsIG1fc2V0LmVuZCgpKTsgfQogCi0gICAgdm9pZCBhZGQo
VCYgdmFsdWUpCisgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFU+CisgICAgdm9pZCBhZGQoY29uc3Qg
VSYgdmFsdWUpCiAgICAgewotICAgICAgICBtX3NldC5hZGQoKm1ha2VXZWFrUHRyKHZhbHVlKS5t
X3JlZik7CisgICAgICAgIG1fc2V0LmFkZCgqbWFrZVdlYWtQdHI8VD4oY29uc3RfY2FzdDxVJj4o
dmFsdWUpKS5tX3JlZik7CiAgICAgfQogCiAgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFU+CkluZGV4
OiBTb3VyY2UvV1RGL3d0Zi9XZWFrUHRyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYv
V2Vha1B0ci5oCShyZXZpc2lvbiAyNDM5NjIpCisrKyBTb3VyY2UvV1RGL3d0Zi9XZWFrUHRyLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTMzLDkgKzMzLDkgQEAKIAogbmFtZXNwYWNlIFdURiB7CiAKLXRl
bXBsYXRlPHR5cGVuYW1lIFU+IGNsYXNzIFdlYWtIYXNoU2V0OwotdGVtcGxhdGU8dHlwZW5hbWUg
VD4gY2xhc3MgV2Vha1B0cjsKLXRlbXBsYXRlPHR5cGVuYW1lIFQ+IGNsYXNzIFdlYWtQdHJGYWN0
b3J5OwordGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIFdlYWtIYXNoU2V0OwordGVtcGxhdGU8dHlw
ZW5hbWU+IGNsYXNzIFdlYWtQdHI7Cit0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgV2Vha1B0ckZh
Y3Rvcnk7CiAKIC8vIE5vdGU6IFdlYWtSZWZlcmVuY2UgaXMgYW4gaW1wbGVtZW50YXRpb24gZGV0
YWlsLCBhbmQgc2hvdWxkIG5vdCBiZSB1c2VkIGRpcmVjdGx5LgogdGVtcGxhdGU8dHlwZW5hbWUg
VD4KQEAgLTg2LDggKzg2LDggQEAgcHVibGljOgogICAgIHZvaWQgY2xlYXIoKSB7IG1fcmVmID0g
bnVsbHB0cjsgfQogCiBwcml2YXRlOgotICAgIHRlbXBsYXRlPHR5cGVuYW1lIFU+IGZyaWVuZCBj
bGFzcyBXZWFrSGFzaFNldDsKLSAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBVPiBmcmllbmQgY2xhc3Mg
V2Vha1B0cjsKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZT4gZnJpZW5kIGNsYXNzIFdlYWtIYXNoU2V0
OworICAgIHRlbXBsYXRlPHR5cGVuYW1lPiBmcmllbmQgY2xhc3MgV2Vha1B0cjsKICAgICB0ZW1w
bGF0ZTx0eXBlbmFtZSBVPiBmcmllbmQgV2Vha1B0cjxVPiBtYWtlV2Vha1B0cihVJik7CiAKICAg
ICBSZWZQdHI8V2Vha1JlZmVyZW5jZTxUPj4gbV9yZWY7CkBAIC0xMzEsNyArMTMxLDcgQEAgcHVi
bGljOgogICAgIH0KIAogcHJpdmF0ZToKLSAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBVPiBmcmllbmQg
Y2xhc3MgV2Vha0hhc2hTZXQ7CisgICAgdGVtcGxhdGU8dHlwZW5hbWU+IGZyaWVuZCBjbGFzcyBX
ZWFrSGFzaFNldDsKIAogICAgIG11dGFibGUgUmVmUHRyPFdlYWtSZWZlcmVuY2U8VD4+IG1fcmVm
OwogfTsKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VM
b2cJKHJldmlzaW9uIDI0Mzk2MikKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE3IEBACisyMDE5LTA0LTA2ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQu
b3JnPgorCisgICAgICAgIEFkZGVkIHRlc3RzIGZvciBXZWFrSGFzaFNldDo6Y29tcHV0ZXNFbXB0
eSBhbmQgV2Vha0hhc2hTZXQ6OmNvbXB1dGVTaXplCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTY2NjkKKworICAgICAgICBSZXZpZXdlZCBieSBHZW9m
ZnJleSBHYXJlbi4KKworICAgICAgICBBZGRlZCB0aHJlZSBuZXcgdW5pdCB0ZXN0cyBmb3IgV2Vh
a0hhc2hTZXQuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9XZWFrUHRyLmNw
cDoKKyAgICAgICAgKFdURl9XZWFrUHRyLldlYWtIYXNoU2V0Q29uc3RPYmplY3RzKToKKyAgICAg
ICAgKFdURl9XZWFrUHRyLldlYWtIYXNoU2V0Q29tcHV0ZXNFbXB0eSk6CisgICAgICAgIChXVEZf
V2Vha1B0ci5XZWFrSGFzaFNldENvbXB1dGVTaXplKToKKwogMjAxOS0wNC0wNSAgWW9uZ2p1biBa
aGFuZyAgPHlvbmdqdW5femhhbmdAYXBwbGUuY29tPgogCiAgICAgICAgIFdlIHNob3VsZCBwYXNz
IG1pbmltdW1FZmZlY3RpdmVEZXZpY2VXaWR0aCB0byB3ZWIgcHJvY2VzcyBvbiBuZXcgcGFnZSBj
cmVhdGlvbi4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1dlYWtQdHIuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1dlYWtQdHIuY3Bw
CShyZXZpc2lvbiAyNDM5NjIpCisrKyBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9XZWFr
UHRyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDkyLDYgKzQ5Miw3MiBAQCBURVNUKFdURl9XZWFr
UHRyLCBXZWFrSGFzaFNldEJhc2ljKQogICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNl
cywgMHUpOwogfQogCitURVNUKFdURl9XZWFrUHRyLCBXZWFrSGFzaFNldENvbnN0T2JqZWN0cykK
K3sKKyAgICB7CisgICAgICAgIFdlYWtIYXNoU2V0PEJhc2U+IHdlYWtIYXNoU2V0OworICAgICAg
ICBjb25zdCBCYXNlIG9iamVjdDsKKyAgICAgICAgRVhQRUNUX0ZBTFNFKHdlYWtIYXNoU2V0LmNv
bnRhaW5zKG9iamVjdCkpOworICAgICAgICBFWFBFQ1RfRVEoc19iYXNlV2Vha1JlZmVyZW5jZXMs
IDB1KTsKKyAgICAgICAgRVhQRUNUX0VRKGNvbXB1dGVTaXplT2ZXZWFrSGFzaFNldCh3ZWFrSGFz
aFNldCksIDB1KTsKKyAgICAgICAgd2Vha0hhc2hTZXQuYWRkKG9iamVjdCk7CisgICAgICAgIEVY
UEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMXUpOworICAgICAgICBFWFBFQ1RfRVEoY29t
cHV0ZVNpemVPZldlYWtIYXNoU2V0KHdlYWtIYXNoU2V0KSwgMXUpOworICAgICAgICBFWFBFQ1Rf
VFJVRSh3ZWFrSGFzaFNldC5jb250YWlucyhvYmplY3QpKTsKKyAgICAgICAgd2Vha0hhc2hTZXQu
Y2hlY2tDb25zaXN0ZW5jeSgpOworICAgICAgICB3ZWFrSGFzaFNldC5hZGQob2JqZWN0KTsKKyAg
ICAgICAgRVhQRUNUX1RSVUUod2Vha0hhc2hTZXQuY29udGFpbnMob2JqZWN0KSk7CisgICAgICAg
IEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMXUpOworICAgICAgICBFWFBFQ1RfRVEo
Y29tcHV0ZVNpemVPZldlYWtIYXNoU2V0KHdlYWtIYXNoU2V0KSwgMXUpOworICAgICAgICB3ZWFr
SGFzaFNldC5jaGVja0NvbnNpc3RlbmN5KCk7CisgICAgICAgIHdlYWtIYXNoU2V0LnJlbW92ZShv
YmplY3QpOworICAgICAgICBFWFBFQ1RfRVEoc19iYXNlV2Vha1JlZmVyZW5jZXMsIDF1KTsKKyAg
ICAgICAgRVhQRUNUX0VRKGNvbXB1dGVTaXplT2ZXZWFrSGFzaFNldCh3ZWFrSGFzaFNldCksIDB1
KTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFdlYWtIYXNoU2V0PEJhc2U+IHdlYWtIYXNoU2V0
OworICAgICAgICBjb25zdCBEZXJpdmVkIG9iamVjdDsKKyAgICAgICAgRVhQRUNUX0ZBTFNFKHdl
YWtIYXNoU2V0LmNvbnRhaW5zKG9iamVjdCkpOworICAgICAgICBFWFBFQ1RfRVEoc19iYXNlV2Vh
a1JlZmVyZW5jZXMsIDB1KTsKKyAgICAgICAgRVhQRUNUX0VRKGNvbXB1dGVTaXplT2ZXZWFrSGFz
aFNldCh3ZWFrSGFzaFNldCksIDB1KTsKKyAgICAgICAgd2Vha0hhc2hTZXQuYWRkKG9iamVjdCk7
CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMXUpOworICAgICAgICBF
WFBFQ1RfRVEoY29tcHV0ZVNpemVPZldlYWtIYXNoU2V0KHdlYWtIYXNoU2V0KSwgMXUpOworICAg
ICAgICBFWFBFQ1RfVFJVRSh3ZWFrSGFzaFNldC5jb250YWlucyhvYmplY3QpKTsKKyAgICAgICAg
d2Vha0hhc2hTZXQuY2hlY2tDb25zaXN0ZW5jeSgpOworICAgICAgICB3ZWFrSGFzaFNldC5hZGQo
b2JqZWN0KTsKKyAgICAgICAgRVhQRUNUX1RSVUUod2Vha0hhc2hTZXQuY29udGFpbnMob2JqZWN0
KSk7CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMXUpOworICAgICAg
ICBFWFBFQ1RfRVEoY29tcHV0ZVNpemVPZldlYWtIYXNoU2V0KHdlYWtIYXNoU2V0KSwgMXUpOwor
ICAgICAgICB3ZWFrSGFzaFNldC5jaGVja0NvbnNpc3RlbmN5KCk7CisgICAgICAgIHdlYWtIYXNo
U2V0LnJlbW92ZShvYmplY3QpOworICAgICAgICBFWFBFQ1RfRVEoc19iYXNlV2Vha1JlZmVyZW5j
ZXMsIDF1KTsKKyAgICAgICAgRVhQRUNUX0VRKGNvbXB1dGVTaXplT2ZXZWFrSGFzaFNldCh3ZWFr
SGFzaFNldCksIDB1KTsKKyAgICB9CisKKyAgICB7CisgICAgICAgIFdlYWtIYXNoU2V0PERlcml2
ZWQ+IHdlYWtIYXNoU2V0OworICAgICAgICBjb25zdCBEZXJpdmVkIG9iamVjdDsKKyAgICAgICAg
RVhQRUNUX0ZBTFNFKHdlYWtIYXNoU2V0LmNvbnRhaW5zKG9iamVjdCkpOworICAgICAgICBFWFBF
Q1RfRVEoc19iYXNlV2Vha1JlZmVyZW5jZXMsIDB1KTsKKyAgICAgICAgRVhQRUNUX0VRKGNvbXB1
dGVTaXplT2ZXZWFrSGFzaFNldCh3ZWFrSGFzaFNldCksIDB1KTsKKyAgICAgICAgd2Vha0hhc2hT
ZXQuYWRkKG9iamVjdCk7CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywg
MXUpOworICAgICAgICBFWFBFQ1RfRVEoY29tcHV0ZVNpemVPZldlYWtIYXNoU2V0KHdlYWtIYXNo
U2V0KSwgMXUpOworICAgICAgICBFWFBFQ1RfVFJVRSh3ZWFrSGFzaFNldC5jb250YWlucyhvYmpl
Y3QpKTsKKyAgICAgICAgd2Vha0hhc2hTZXQuY2hlY2tDb25zaXN0ZW5jeSgpOworICAgICAgICB3
ZWFrSGFzaFNldC5hZGQob2JqZWN0KTsKKyAgICAgICAgRVhQRUNUX1RSVUUod2Vha0hhc2hTZXQu
Y29udGFpbnMob2JqZWN0KSk7CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNl
cywgMXUpOworICAgICAgICBFWFBFQ1RfRVEoY29tcHV0ZVNpemVPZldlYWtIYXNoU2V0KHdlYWtI
YXNoU2V0KSwgMXUpOworICAgICAgICB3ZWFrSGFzaFNldC5jaGVja0NvbnNpc3RlbmN5KCk7Cisg
ICAgICAgIHdlYWtIYXNoU2V0LnJlbW92ZShvYmplY3QpOworICAgICAgICBFWFBFQ1RfRVEoc19i
YXNlV2Vha1JlZmVyZW5jZXMsIDF1KTsKKyAgICAgICAgRVhQRUNUX0VRKGNvbXB1dGVTaXplT2ZX
ZWFrSGFzaFNldCh3ZWFrSGFzaFNldCksIDB1KTsKKyAgICB9Cit9CisKIFRFU1QoV1RGX1dlYWtQ
dHIsIFdlYWtIYXNoU2V0RXhwYW5zaW9uKQogewogICAgIHVuc2lnbmVkIGluaXRpYWxDYXBhY2l0
eTsKQEAgLTU2OSw0ICs2MzUsMTU0IEBAIFRFU1QoV1RGX1dlYWtQdHIsIFdlYWtIYXNoU2V0RXhw
YW5zaW9uKQogICAgIH0KIH0KIAorVEVTVChXVEZfV2Vha1B0ciwgV2Vha0hhc2hTZXRDb21wdXRl
c0VtcHR5KQoreworICAgIHsKKyAgICAgICAgV2Vha0hhc2hTZXQ8QmFzZT4gd2Vha0hhc2hTZXQ7
CisgICAgICAgIHsKKyAgICAgICAgICAgIEJhc2Ugb2JqZWN0OworICAgICAgICAgICAgRVhQRUNU
X0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAwdSk7CisgICAgICAgICAgICB3ZWFrSGFzaFNldC5h
ZGQob2JqZWN0KTsKKyAgICAgICAgICAgIEVYUEVDVF9GQUxTRSh3ZWFrSGFzaFNldC5jb21wdXRl
c0VtcHR5KCkpOworICAgICAgICB9CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJl
bmNlcywgMXUpOworICAgICAgICBFWFBFQ1RfVFJVRSh3ZWFrSGFzaFNldC5jb21wdXRlc0VtcHR5
KCkpOworICAgIH0KKworICAgIHsKKyAgICAgICAgV2Vha0hhc2hTZXQ8QmFzZT4gd2Vha0hhc2hT
ZXQ7CisgICAgICAgIEJhc2Ugb2JqZWN0MTsKKyAgICAgICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtS
ZWZlcmVuY2VzLCAwdSk7CisgICAgICAgIHdlYWtIYXNoU2V0LmFkZChvYmplY3QxKTsKKyAgICAg
ICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAxdSk7CisgICAgICAgIHsKKyAgICAg
ICAgICAgIEJhc2Ugb2JqZWN0MjsKKyAgICAgICAgICAgIHdlYWtIYXNoU2V0LmFkZChvYmplY3Qy
KTsKKyAgICAgICAgICAgIEVYUEVDVF9GQUxTRSh3ZWFrSGFzaFNldC5jb21wdXRlc0VtcHR5KCkp
OworICAgICAgICB9CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMnUp
OworICAgICAgICBFWFBFQ1RfRkFMU0Uod2Vha0hhc2hTZXQuY29tcHV0ZXNFbXB0eSgpKTsKKyAg
ICAgICAgd2Vha0hhc2hTZXQucmVtb3ZlKG9iamVjdDEpOworICAgICAgICBFWFBFQ1RfVFJVRSh3
ZWFrSGFzaFNldC5jb21wdXRlc0VtcHR5KCkpOworICAgIH0KKworICAgIHsKKyAgICAgICAgV2Vh
a0hhc2hTZXQ8QmFzZT4gd2Vha0hhc2hTZXQ7CisgICAgICAgIFZlY3RvcjxzdGQ6OnVuaXF1ZV9w
dHI8QmFzZT4+IG9iamVjdHM7CisgICAgICAgIGF1dG8gZmlyc3RPYmplY3QgPSBzdGQ6Om1ha2Vf
dW5pcXVlPEJhc2U+KCk7CisgICAgICAgIHdlYWtIYXNoU2V0LmFkZCgqZmlyc3RPYmplY3QpOwor
ICAgICAgICBkbyB7CisgICAgICAgICAgICBhdXRvIG9iamVjdCA9IHN0ZDo6bWFrZV91bmlxdWU8
QmFzZT4oKTsKKyAgICAgICAgICAgIHdlYWtIYXNoU2V0LmFkZCgqb2JqZWN0KTsKKyAgICAgICAg
ICAgIG9iamVjdHMuYXBwZW5kKFdURk1vdmUob2JqZWN0KSk7CisgICAgICAgIH0gd2hpbGUgKHdl
YWtIYXNoU2V0LmJlZ2luKCkuZ2V0KCkgPT0gZmlyc3RPYmplY3QuZ2V0KCkpOworCisgICAgICAg
IEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgb2JqZWN0cy5zaXplKCkgKyAxKTsKKyAg
ICAgICAgRVhQRUNUX0VRKGNvbXB1dGVTaXplT2ZXZWFrSGFzaFNldCh3ZWFrSGFzaFNldCksIG9i
amVjdHMuc2l6ZSgpICsgMSk7CisgICAgICAgIEVYUEVDVF9GQUxTRSh3ZWFrSGFzaFNldC5jb21w
dXRlc0VtcHR5KCkpOworICAgICAgICBmaXJzdE9iamVjdCA9IG51bGxwdHI7CisgICAgICAgIEVY
UEVDVF9GQUxTRSh3ZWFrSGFzaFNldC5jb21wdXRlc0VtcHR5KCkpOworICAgICAgICBFWFBFQ1Rf
RVEoc19iYXNlV2Vha1JlZmVyZW5jZXMsIG9iamVjdHMuc2l6ZSgpICsgMSk7CisgICAgICAgIEVY
UEVDVF9FUShjb21wdXRlU2l6ZU9mV2Vha0hhc2hTZXQod2Vha0hhc2hTZXQpLCBvYmplY3RzLnNp
emUoKSk7CisgICAgfQorfQorCitURVNUKFdURl9XZWFrUHRyLCBXZWFrSGFzaFNldENvbXB1dGVT
aXplKQoreworICAgIHsKKyAgICAgICAgV2Vha0hhc2hTZXQ8QmFzZT4gd2Vha0hhc2hTZXQ7Cisg
ICAgICAgIHsKKyAgICAgICAgICAgIEJhc2Ugb2JqZWN0OworICAgICAgICAgICAgRVhQRUNUX0VR
KHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAwdSk7CisgICAgICAgICAgICB3ZWFrSGFzaFNldC5hZGQo
b2JqZWN0KTsKKyAgICAgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMXUp
OworICAgICAgICAgICAgRVhQRUNUX0VRKHdlYWtIYXNoU2V0LmNvbXB1dGVTaXplKCksIDF1KTsK
KyAgICAgICAgICAgIHdlYWtIYXNoU2V0LmNoZWNrQ29uc2lzdGVuY3koKTsKKyAgICAgICAgfQor
ICAgICAgICBFWFBFQ1RfVFJVRSh3ZWFrSGFzaFNldC5jb21wdXRlc0VtcHR5KCkpOworICAgICAg
ICBFWFBFQ1RfRVEod2Vha0hhc2hTZXQuY29tcHV0ZVNpemUoKSwgMHUpOworICAgICAgICBFWFBF
Q1RfRVEoc19iYXNlV2Vha1JlZmVyZW5jZXMsIDB1KTsKKyAgICAgICAgRVhQRUNUX1RSVUUod2Vh
a0hhc2hTZXQuY29tcHV0ZXNFbXB0eSgpKTsKKyAgICAgICAgd2Vha0hhc2hTZXQuY2hlY2tDb25z
aXN0ZW5jeSgpOworICAgIH0KKworICAgIHsKKyAgICAgICAgV2Vha0hhc2hTZXQ8QmFzZT4gd2Vh
a0hhc2hTZXQ7CisgICAgICAgIHsKKyAgICAgICAgICAgIEJhc2Ugb2JqZWN0MTsKKyAgICAgICAg
ICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMHUpOworICAgICAgICAgICAgd2Vh
a0hhc2hTZXQuYWRkKG9iamVjdDEpOworICAgICAgICAgICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtS
ZWZlcmVuY2VzLCAxdSk7CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgQmFzZSBvYmpl
Y3QyOworICAgICAgICAgICAgICAgIHdlYWtIYXNoU2V0LmFkZChvYmplY3QyKTsKKyAgICAgICAg
ICAgICAgICBFWFBFQ1RfRVEoc19iYXNlV2Vha1JlZmVyZW5jZXMsIDJ1KTsKKyAgICAgICAgICAg
ICAgICBFWFBFQ1RfRVEod2Vha0hhc2hTZXQuY29tcHV0ZVNpemUoKSwgMnUpOworICAgICAgICAg
ICAgICAgIHdlYWtIYXNoU2V0LmNoZWNrQ29uc2lzdGVuY3koKTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMnUpOworICAgICAgICAg
ICAgRVhQRUNUX0VRKHdlYWtIYXNoU2V0LmNvbXB1dGVTaXplKCksIDF1KTsKKyAgICAgICAgICAg
IEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMXUpOworICAgICAgICAgICAgd2Vha0hh
c2hTZXQuY2hlY2tDb25zaXN0ZW5jeSgpOworICAgICAgICAgICAgd2Vha0hhc2hTZXQucmVtb3Zl
KG9iamVjdDEpOworICAgICAgICAgICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAx
dSk7CisgICAgICAgICAgICBFWFBFQ1RfRVEod2Vha0hhc2hTZXQuY29tcHV0ZVNpemUoKSwgMHUp
OworICAgICAgICAgICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAxdSk7CisgICAg
ICAgICAgICB3ZWFrSGFzaFNldC5jaGVja0NvbnNpc3RlbmN5KCk7CisgICAgICAgIH0KKyAgICAg
ICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAwdSk7CisgICAgICAgIHdlYWtIYXNo
U2V0LmNoZWNrQ29uc2lzdGVuY3koKTsKKyAgICB9CisKKyAgICB3aGlsZSAoMSkgeworICAgICAg
ICBXZWFrSGFzaFNldDxCYXNlPiB3ZWFrSGFzaFNldDsKKyAgICAgICAgYXV0byBmaXJzdE9iamVj
dCA9IHN0ZDo6bWFrZV91bmlxdWU8QmFzZT4oKTsKKyAgICAgICAgYXV0byBsYXN0T2JqZWN0ID0g
c3RkOjptYWtlX3VuaXF1ZTxCYXNlPigpOworICAgICAgICB3ZWFrSGFzaFNldC5hZGQoKmZpcnN0
T2JqZWN0KTsKKyAgICAgICAgd2Vha0hhc2hTZXQuYWRkKCpsYXN0T2JqZWN0KTsKKyAgICAgICAg
aWYgKHdlYWtIYXNoU2V0LmJlZ2luKCkuZ2V0KCkgIT0gZmlyc3RPYmplY3QuZ2V0KCkpCisgICAg
ICAgICAgICBjb250aW51ZTsKKyAgICAgICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2Vz
LCAydSk7CisgICAgICAgIEVYUEVDVF9FUSh3ZWFrSGFzaFNldC5jb21wdXRlU2l6ZSgpLCAydSk7
CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMnUpOworICAgICAgICB3
ZWFrSGFzaFNldC5jaGVja0NvbnNpc3RlbmN5KCk7CisgICAgICAgIGZpcnN0T2JqZWN0ID0gbnVs
bHB0cjsKKyAgICAgICAgRVhQRUNUX0VRKHdlYWtIYXNoU2V0LmNvbXB1dGVTaXplKCksIDF1KTsK
KyAgICAgICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCAxdSk7CisgICAgICAgIHdl
YWtIYXNoU2V0LmNoZWNrQ29uc2lzdGVuY3koKTsKKyAgICAgICAgbGFzdE9iamVjdCA9IG51bGxw
dHI7CisgICAgICAgIEVYUEVDVF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgMXUpOworICAgICAg
ICBFWFBFQ1RfRVEod2Vha0hhc2hTZXQuY29tcHV0ZVNpemUoKSwgMHUpOworICAgICAgICBFWFBF
Q1RfRVEoc19iYXNlV2Vha1JlZmVyZW5jZXMsIDB1KTsKKyAgICAgICAgd2Vha0hhc2hTZXQuY2hl
Y2tDb25zaXN0ZW5jeSgpOworICAgICAgICBicmVhazsKKyAgICB9CisKKyAgICB7CisgICAgICAg
IFdlYWtIYXNoU2V0PEJhc2U+IHdlYWtIYXNoU2V0OworICAgICAgICBWZWN0b3I8c3RkOjp1bmlx
dWVfcHRyPEJhc2U+PiBvYmplY3RzOworICAgICAgICBhdXRvIG5vbkZpcnN0T2JqZWN0ID0gc3Rk
OjptYWtlX3VuaXF1ZTxCYXNlPigpOworICAgICAgICB3ZWFrSGFzaFNldC5hZGQoKm5vbkZpcnN0
T2JqZWN0KTsKKyAgICAgICAgZG8geworICAgICAgICAgICAgYXV0byBvYmplY3QgPSBzdGQ6Om1h
a2VfdW5pcXVlPEJhc2U+KCk7CisgICAgICAgICAgICB3ZWFrSGFzaFNldC5hZGQoKm9iamVjdCk7
CisgICAgICAgICAgICBvYmplY3RzLmFwcGVuZChXVEZNb3ZlKG9iamVjdCkpOworICAgICAgICB9
IHdoaWxlICh3ZWFrSGFzaFNldC5iZWdpbigpLmdldCgpID09IG5vbkZpcnN0T2JqZWN0LmdldCgp
KTsKKworICAgICAgICB1bnNpZ25lZCBvYmplY3RzQ291bnQgPSBvYmplY3RzLnNpemUoKTsKKyAg
ICAgICAgRVhQRUNUX0VRKHNfYmFzZVdlYWtSZWZlcmVuY2VzLCBvYmplY3RzQ291bnQgKyAxKTsK
KyAgICAgICAgRVhQRUNUX0VRKHdlYWtIYXNoU2V0LmNvbXB1dGVTaXplKCksIG9iamVjdHNDb3Vu
dCArIDEpOworICAgICAgICBFWFBFQ1RfRVEoc19iYXNlV2Vha1JlZmVyZW5jZXMsIG9iamVjdHND
b3VudCArIDEpOworICAgICAgICB3ZWFrSGFzaFNldC5jaGVja0NvbnNpc3RlbmN5KCk7CisgICAg
ICAgIG5vbkZpcnN0T2JqZWN0ID0gbnVsbHB0cjsKKyAgICAgICAgRVhQRUNUX0VRKHdlYWtIYXNo
U2V0LmNvbXB1dGVTaXplKCksIG9iamVjdHNDb3VudCk7CisgICAgICAgIEVYUEVDVF9FUShzX2Jh
c2VXZWFrUmVmZXJlbmNlcywgb2JqZWN0c0NvdW50KTsKKyAgICAgICAgd2Vha0hhc2hTZXQuY2hl
Y2tDb25zaXN0ZW5jeSgpOworICAgICAgICBvYmplY3RzLmNsZWFyKCk7CisgICAgICAgIEVYUEVD
VF9FUShzX2Jhc2VXZWFrUmVmZXJlbmNlcywgb2JqZWN0c0NvdW50KTsKKyAgICAgICAgRVhQRUNU
X0VRKHdlYWtIYXNoU2V0LmNvbXB1dGVTaXplKCksIDB1KTsKKyAgICAgICAgRVhQRUNUX0VRKHNf
YmFzZVdlYWtSZWZlcmVuY2VzLCAwdSk7CisgICAgfQorfQorCiB9IC8vIG5hbWVzcGFjZSBUZXN0
V2ViS2l0QVBJCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>