<?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>236895</bug_id>
          
          <creation_ts>2022-02-19 14:27:38 -0800</creation_ts>
          <short_desc>RenderBox::flipForWritingModeForChild should take const RenderBox&amp; as the child renderer</short_desc>
          <delta_ts>2022-02-20 06:19:18 -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>Layout and Rendering</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="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>pdr</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>1843910</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2022-02-19 14:27:38 -0800</bug_when>
    <thetext>and not const RenderBox*</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843912</commentid>
    <comment_count>1</comment_count>
      <attachid>452657</attachid>
    <who name="alan">zalan</who>
    <bug_when>2022-02-19 14:33:07 -0800</bug_when>
    <thetext>Created attachment 452657
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844058</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-02-20 06:18:41 -0800</bug_when>
    <thetext>Committed r290225 (247551@main): &lt;https://commits.webkit.org/247551@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 452657.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844059</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-02-20 06:19:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/89203372&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452657</attachid>
            <date>2022-02-19 14:33:07 -0800</date>
            <delta_ts>2022-02-20 06:18:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-236895-20220219143306.patch</filename>
            <type>text/plain</type>
            <size>16829</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwMjA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTZmNjcyZTVkMzNiYzRh
MzRlZDAwMmJlMTE4ODNhMmZkOWNjYjg3NC4uMTQwOTgwNzYxMGZjY2UyZWNmOWQwNzMyYjJjZWYz
NDYwOGUzMGFiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDIyLTAyLTE5ICBBbGFu
IEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBSZW5kZXJCb3g6OmZsaXBGb3JX
cml0aW5nTW9kZUZvckNoaWxkIHNob3VsZCB0YWtlIGNvbnN0IFJlbmRlckJveCYgYXMgdGhlIGNo
aWxkIHJlbmRlcmVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMzY4OTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIHJlbmRlcmluZy9MZWdhY3lJbmxpbmVFbGVtZW50Qm94LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkxlZ2FjeUlubGluZUVsZW1lbnRCb3g6OnBhaW50KToKKyAgICAgICAgKFdlYkNvcmU6
OkxlZ2FjeUlubGluZUVsZW1lbnRCb3g6Om5vZGVBdFBvaW50KToKKyAgICAgICAgKiByZW5kZXJp
bmcvUmVuZGVyQmxvY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OnBhaW50
Q2hpbGQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OmhpdFRlc3RDb250ZW50cyk6
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9jazo6cGFpbnRFeGNsdWRlZENoaWxkcmVuSW5C
b3JkZXIpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2s6OmhpdFRlc3RFeGNsdWRlZENo
aWxkcmVuSW5Cb3JkZXIpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2tGbG93OjpwYWludENvbHVtblJ1bGVzKToK
KyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlckJveDo6ZmxpcEZvcldyaXRpbmdNb2RlRm9yQ2hpbGQgY29uc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyQm94Ojp0b3BMZWZ0TG9jYXRpb24gY29uc3QpOgorICAgICAgICAqIHJlbmRl
cmluZy9SZW5kZXJCb3guaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3gu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyRmxleGlibGVCb3g6OmhpdFRlc3RDaGlsZHJl
bik6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRhYmxlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlclRhYmxlOjpwYWludE9iamVjdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJU
YWJsZTo6bm9kZUF0UG9pbnQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUYWJsZVJvdy5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUYWJsZVJvdzo6bm9kZUF0UG9pbnQpOgorICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJUYWJsZVNlY3Rpb24uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyVGFibGVTZWN0aW9uOjpwYWludENlbGwpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyVGFibGVTZWN0aW9uOjpwYWludE9iamVjdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJU
YWJsZVNlY3Rpb246Om5vZGVBdFBvaW50KToKKwogMjAyMi0wMi0xOSAgQWxhbiBCdWp0YXMgIDx6
YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0lGQ11bSW50ZWdyYXRpb25dIEVuYWJsZSBub24t
cGFnaW5hdGVkIHZlcnRpY2FsLWxyIHdyaXRpbmcgbW9kZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUVsZW1lbnRCb3guY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL0xlZ2FjeUlubGluZUVsZW1lbnRCb3guY3BwCmluZGV4IDI1YzM1ZjViYTQz
NjU5MWZiNGY4NGMzOWIwMWM3MTJmNzAwY2MzNzIuLmI2NjEzNmQ2ZTgwZThiNGY3MzQ5ZGQ3YmI4
MTg2NTA4ODgyYzgyZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9MZWdh
Y3lJbmxpbmVFbGVtZW50Qm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvTGVn
YWN5SW5saW5lRWxlbWVudEJveC5jcHAKQEAgLTc2LDcgKzc2LDcgQEAgdm9pZCBMZWdhY3lJbmxp
bmVFbGVtZW50Qm94OjpwYWludChQYWludEluZm8mIHBhaW50SW5mbywgY29uc3QgTGF5b3V0UG9p
bnQmIHBhaW4KIAogICAgIExheW91dFBvaW50IGNoaWxkUG9pbnQgPSBwYWludE9mZnNldDsKICAg
ICBpZiAoaXM8UmVuZGVyQm94PihyZW5kZXJlcigpKSAmJiBwYXJlbnQoKS0+cmVuZGVyZXIoKS5z
dHlsZSgpLmlzRmxpcHBlZEJsb2Nrc1dyaXRpbmdNb2RlKCkpIC8vIEZhc3RlciB0aGFuIGNhbGxp
bmcgY29udGFpbmluZ0Jsb2NrKCkuCi0gICAgICAgIGNoaWxkUG9pbnQgPSByZW5kZXJlcigpLmNv
bnRhaW5pbmdCbG9jaygpLT5mbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZCgmZG93bmNhc3Q8UmVu
ZGVyQm94PihyZW5kZXJlcigpKSwgY2hpbGRQb2ludCk7CisgICAgICAgIGNoaWxkUG9pbnQgPSBy
ZW5kZXJlcigpLmNvbnRhaW5pbmdCbG9jaygpLT5mbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZChk
b3duY2FzdDxSZW5kZXJCb3g+KHJlbmRlcmVyKCkpLCBjaGlsZFBvaW50KTsKIAogICAgIHJlbmRl
cmVyKCkucGFpbnRBc0lubGluZUJsb2NrKHBhaW50SW5mbywgY2hpbGRQb2ludCk7CiB9CkBAIC04
OSw3ICs4OSw3IEBAIGJvb2wgTGVnYWN5SW5saW5lRWxlbWVudEJveDo6bm9kZUF0UG9pbnQoY29u
c3QgSGl0VGVzdFJlcXVlc3QmIHJlcXVlc3QsIEhpdFRlc3RSCiAgICAgLy8gc3BlY2lmaWNhdGlv
bi4pCiAgICAgTGF5b3V0UG9pbnQgY2hpbGRQb2ludCA9IGFjY3VtdWxhdGVkT2Zmc2V0OwogICAg
IGlmIChpczxSZW5kZXJCb3g+KHJlbmRlcmVyKCkpICYmIHBhcmVudCgpLT5yZW5kZXJlcigpLnN0
eWxlKCkuaXNGbGlwcGVkQmxvY2tzV3JpdGluZ01vZGUoKSkgLy8gRmFzdGVyIHRoYW4gY2FsbGlu
ZyBjb250YWluaW5nQmxvY2soKS4KLSAgICAgICAgY2hpbGRQb2ludCA9IHJlbmRlcmVyKCkuY29u
dGFpbmluZ0Jsb2NrKCktPmZsaXBGb3JXcml0aW5nTW9kZUZvckNoaWxkKCZkb3duY2FzdDxSZW5k
ZXJCb3g+KHJlbmRlcmVyKCkpLCBjaGlsZFBvaW50KTsKKyAgICAgICAgY2hpbGRQb2ludCA9IHJl
bmRlcmVyKCkuY29udGFpbmluZ0Jsb2NrKCktPmZsaXBGb3JXcml0aW5nTW9kZUZvckNoaWxkKGRv
d25jYXN0PFJlbmRlckJveD4ocmVuZGVyZXIoKSksIGNoaWxkUG9pbnQpOwogCiAgICAgcmV0dXJu
IHJlbmRlcmVyKCkuaGl0VGVzdChyZXF1ZXN0LCByZXN1bHQsIGxvY2F0aW9uSW5Db250YWluZXIs
IGNoaWxkUG9pbnQpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJsb2NrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAK
aW5kZXggOTE2YzY0NDU4NWRjNjQ2MzkxYmU2MGRiMmZmZGQyOWNmYzNlYTgwNi4uZWM5ZGViOWU3
MTk1YTc3ZmJlOGRlODQ1ZDEwYzQzZGRmMTI5ZjU4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyQmxvY2suY3BwCkBAIC0xMTk1LDcgKzExOTUsNyBAQCBib29sIFJlbmRlckJsb2Nr
OjpwYWludENoaWxkKFJlbmRlckJveCYgY2hpbGQsIFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25z
dCBMYXlvdQogICAgICAgICB9CiAgICAgfQogCi0gICAgTGF5b3V0UG9pbnQgY2hpbGRQb2ludCA9
IGZsaXBGb3JXcml0aW5nTW9kZUZvckNoaWxkKCZjaGlsZCwgcGFpbnRPZmZzZXQpOworICAgIExh
eW91dFBvaW50IGNoaWxkUG9pbnQgPSBmbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZChjaGlsZCwg
cGFpbnRPZmZzZXQpOwogICAgIGlmICghY2hpbGQuaGFzU2VsZlBhaW50aW5nTGF5ZXIoKSAmJiAh
Y2hpbGQuaXNGbG9hdGluZygpKSB7CiAgICAgICAgIGlmIChwYWludFR5cGUgPT0gUGFpbnRBc0lu
bGluZUJsb2NrKQogICAgICAgICAgICAgY2hpbGQucGFpbnRBc0lubGluZUJsb2NrKHBhaW50SW5m
b0ZvckNoaWxkLCBjaGlsZFBvaW50KTsKQEAgLTIxMDIsNyArMjEwMiw3IEBAIGJvb2wgUmVuZGVy
QmxvY2s6OmhpdFRlc3RDb250ZW50cyhjb25zdCBIaXRUZXN0UmVxdWVzdCYgcmVxdWVzdCwgSGl0
VGVzdFJlc3VsdCYKICAgICBpZiAoaGl0VGVzdEFjdGlvbiA9PSBIaXRUZXN0Q2hpbGRCbG9ja0Jh
Y2tncm91bmRzKQogICAgICAgICBjaGlsZEhpdFRlc3QgPSBIaXRUZXN0Q2hpbGRCbG9ja0JhY2tn
cm91bmQ7CiAgICAgZm9yIChhdXRvKiBjaGlsZCA9IGxhc3RDaGlsZEJveCgpOyBjaGlsZDsgY2hp
bGQgPSBjaGlsZC0+cHJldmlvdXNTaWJsaW5nQm94KCkpIHsKLSAgICAgICAgTGF5b3V0UG9pbnQg
Y2hpbGRQb2ludCA9IGZsaXBGb3JXcml0aW5nTW9kZUZvckNoaWxkKGNoaWxkLCBhY2N1bXVsYXRl
ZE9mZnNldCk7CisgICAgICAgIExheW91dFBvaW50IGNoaWxkUG9pbnQgPSBmbGlwRm9yV3JpdGlu
Z01vZGVGb3JDaGlsZCgqY2hpbGQsIGFjY3VtdWxhdGVkT2Zmc2V0KTsKICAgICAgICAgaWYgKCFj
aGlsZC0+aGFzU2VsZlBhaW50aW5nTGF5ZXIoKSAmJiAhY2hpbGQtPmlzRmxvYXRpbmcoKSAmJiBj
aGlsZC0+bm9kZUF0UG9pbnQocmVxdWVzdCwgcmVzdWx0LCBsb2NhdGlvbkluQ29udGFpbmVyLCBj
aGlsZFBvaW50LCBjaGlsZEhpdFRlc3QpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAg
fQpAQCAtMzQ2Nyw3ICszNDY3LDcgQEAgdm9pZCBSZW5kZXJCbG9jazo6cGFpbnRFeGNsdWRlZENo
aWxkcmVuSW5Cb3JkZXIoUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IExheW8KICAgICBpZiAo
IWJveCB8fCAhYm94LT5pc0V4Y2x1ZGVkRnJvbU5vcm1hbExheW91dCgpIHx8IGJveC0+aGFzU2Vs
ZlBhaW50aW5nTGF5ZXIoKSkKICAgICAgICAgcmV0dXJuOwogICAgIAotICAgIExheW91dFBvaW50
IGNoaWxkUG9pbnQgPSBmbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZChib3gsIHBhaW50T2Zmc2V0
KTsKKyAgICBMYXlvdXRQb2ludCBjaGlsZFBvaW50ID0gZmxpcEZvcldyaXRpbmdNb2RlRm9yQ2hp
bGQoKmJveCwgcGFpbnRPZmZzZXQpOwogICAgIGJveC0+cGFpbnRBc0lubGluZUJsb2NrKHBhaW50
SW5mbywgY2hpbGRQb2ludCk7CiB9CiAKQEAgLTM0ODMsNyArMzQ4Myw3IEBAIGJvb2wgUmVuZGVy
QmxvY2s6OmhpdFRlc3RFeGNsdWRlZENoaWxkcmVuSW5Cb3JkZXIoY29uc3QgSGl0VGVzdFJlcXVl
c3QmIHJlcXVlc3QsCiAgICAgSGl0VGVzdEFjdGlvbiBjaGlsZEhpdFRlc3QgPSBoaXRUZXN0QWN0
aW9uOwogICAgIGlmIChoaXRUZXN0QWN0aW9uID09IEhpdFRlc3RDaGlsZEJsb2NrQmFja2dyb3Vu
ZHMpCiAgICAgICAgIGNoaWxkSGl0VGVzdCA9IEhpdFRlc3RDaGlsZEJsb2NrQmFja2dyb3VuZDsK
LSAgICBMYXlvdXRQb2ludCBjaGlsZFBvaW50ID0gZmxpcEZvcldyaXRpbmdNb2RlRm9yQ2hpbGQo
bGVnZW5kLCBhY2N1bXVsYXRlZE9mZnNldCk7CisgICAgTGF5b3V0UG9pbnQgY2hpbGRQb2ludCA9
IGZsaXBGb3JXcml0aW5nTW9kZUZvckNoaWxkKCpsZWdlbmQsIGFjY3VtdWxhdGVkT2Zmc2V0KTsK
ICAgICByZXR1cm4gbGVnZW5kLT5ub2RlQXRQb2ludChyZXF1ZXN0LCByZXN1bHQsIGxvY2F0aW9u
SW5Db250YWluZXIsIGNoaWxkUG9pbnQsIGNoaWxkSGl0VGVzdCk7CiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKaW5kZXggZDIyYjYxMTU4NmNlN2Ri
MjA3ZTMwNDAyODcwNjNkMjZkOWY4OTExMS4uMzY0MzEyYjA0MDUzMWY2ZTVlMGQ4MTFlYTdlZmVl
MDNiZDk4ZDdiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJs
b2NrRmxvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxv
dy5jcHAKQEAgLTIxNTcsNyArMjE1Nyw3IEBAIHZvaWQgUmVuZGVyQmxvY2tGbG93OjpwYWludENv
bHVtblJ1bGVzKFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBMYXlvdXRQb2ludCYKIAogICAg
IC8vIEl0ZXJhdGUgb3ZlciBvdXIgY2hpbGRyZW4gYW5kIHBhaW50IHRoZSBjb2x1bW4gcnVsZXMg
YXMgbmVlZGVkLgogICAgIGZvciAoYXV0byYgY29sdW1uU2V0IDogY2hpbGRyZW5PZlR5cGU8UmVu
ZGVyTXVsdGlDb2x1bW5TZXQ+KCp0aGlzKSkgewotICAgICAgICBMYXlvdXRQb2ludCBjaGlsZFBv
aW50ID0gY29sdW1uU2V0LmxvY2F0aW9uKCkgKyBmbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZCgm
Y29sdW1uU2V0LCBwb2ludCk7CisgICAgICAgIExheW91dFBvaW50IGNoaWxkUG9pbnQgPSBjb2x1
bW5TZXQubG9jYXRpb24oKSArIGZsaXBGb3JXcml0aW5nTW9kZUZvckNoaWxkKGNvbHVtblNldCwg
cG9pbnQpOwogICAgICAgICBjb2x1bW5TZXQucGFpbnRDb2x1bW5SdWxlcyhwYWludEluZm8sIGNo
aWxkUG9pbnQpOwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAK
aW5kZXggMzI1OGU4ZDNhNTI5ZjBlNDUzMDE0NzIxYzdhOTZmMzg0ZTM4OGFkMS4uZGIzNWRjNzA2
NjA0MDRjMzRjODliM2UyZTUwZWExNjEyNzdlNWU5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckJveC5jcHAKQEAgLTUyNjYsNyArNTI2Niw3IEBAIExheW91dFVuaXQgUmVuZGVyQm94
OjpvZmZzZXRUb3AoKSBjb25zdAogICAgIHJldHVybiBhZGp1c3RlZFBvc2l0aW9uUmVsYXRpdmVU
b09mZnNldFBhcmVudCh0b3BMZWZ0TG9jYXRpb24oKSkueSgpOwogfQogCi1MYXlvdXRQb2ludCBS
ZW5kZXJCb3g6OmZsaXBGb3JXcml0aW5nTW9kZUZvckNoaWxkKGNvbnN0IFJlbmRlckJveCogY2hp
bGQsIGNvbnN0IExheW91dFBvaW50JiBwb2ludCkgY29uc3QKK0xheW91dFBvaW50IFJlbmRlckJv
eDo6ZmxpcEZvcldyaXRpbmdNb2RlRm9yQ2hpbGQoY29uc3QgUmVuZGVyQm94JiBjaGlsZCwgY29u
c3QgTGF5b3V0UG9pbnQmIHBvaW50KSBjb25zdAogewogICAgIGlmICghc3R5bGUoKS5pc0ZsaXBw
ZWRCbG9ja3NXcml0aW5nTW9kZSgpKQogICAgICAgICByZXR1cm4gcG9pbnQ7CkBAIC01Mjc0LDgg
KzUyNzQsOCBAQCBMYXlvdXRQb2ludCBSZW5kZXJCb3g6OmZsaXBGb3JXcml0aW5nTW9kZUZvckNo
aWxkKGNvbnN0IFJlbmRlckJveCogY2hpbGQsIGNvbnN0CiAgICAgLy8gVGhlIGNoaWxkIGlzIGdv
aW5nIHRvIGFkZCBpbiBpdHMgeCgpIGFuZCB5KCksIHNvIHdlIGhhdmUgdG8gbWFrZSBzdXJlIGl0
IGVuZHMgdXAgaW4KICAgICAvLyB0aGUgcmlnaHQgcGxhY2UuCiAgICAgaWYgKGlzSG9yaXpvbnRh
bFdyaXRpbmdNb2RlKCkpCi0gICAgICAgIHJldHVybiBMYXlvdXRQb2ludChwb2ludC54KCksIHBv
aW50LnkoKSArIGhlaWdodCgpIC0gY2hpbGQtPmhlaWdodCgpIC0gKDIgKiBjaGlsZC0+eSgpKSk7
Ci0gICAgcmV0dXJuIExheW91dFBvaW50KHBvaW50LngoKSArIHdpZHRoKCkgLSBjaGlsZC0+d2lk
dGgoKSAtICgyICogY2hpbGQtPngoKSksIHBvaW50LnkoKSk7CisgICAgICAgIHJldHVybiBMYXlv
dXRQb2ludChwb2ludC54KCksIHBvaW50LnkoKSArIGhlaWdodCgpIC0gY2hpbGQuaGVpZ2h0KCkg
LSAoMiAqIGNoaWxkLnkoKSkpOworICAgIHJldHVybiBMYXlvdXRQb2ludChwb2ludC54KCkgKyB3
aWR0aCgpIC0gY2hpbGQud2lkdGgoKSAtICgyICogY2hpbGQueCgpKSwgcG9pbnQueSgpKTsKIH0K
IAogdm9pZCBSZW5kZXJCb3g6OmZsaXBGb3JXcml0aW5nTW9kZShMYXlvdXRSZWN0JiByZWN0KSBj
b25zdApAQCAtNTMzNiw3ICs1MzM2LDcgQEAgTGF5b3V0UG9pbnQgUmVuZGVyQm94Ojp0b3BMZWZ0
TG9jYXRpb24oKSBjb25zdAogICAgIFJlbmRlckJsb2NrKiBjb250YWluZXJCbG9jayA9IGNvbnRh
aW5pbmdCbG9jaygpOwogICAgIGlmICghY29udGFpbmVyQmxvY2sgfHwgY29udGFpbmVyQmxvY2sg
PT0gdGhpcykKICAgICAgICAgcmV0dXJuIGxvY2F0aW9uKCk7Ci0gICAgcmV0dXJuIGNvbnRhaW5l
ckJsb2NrLT5mbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZCh0aGlzLCBsb2NhdGlvbigpKTsKKyAg
ICByZXR1cm4gY29udGFpbmVyQmxvY2stPmZsaXBGb3JXcml0aW5nTW9kZUZvckNoaWxkKCp0aGlz
LCBsb2NhdGlvbigpKTsKIH0KIAogTGF5b3V0U2l6ZSBSZW5kZXJCb3g6OnRvcExlZnRMb2NhdGlv
bk9mZnNldCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQm94LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmgKaW5kZXggZDkx
NjMwNGE2ZDhjNjkwN2VjOTY2Y2U3ZmQ2ZTE0ODAxNGJiZDE2ZC4uZWQ3Nzc3MGU3ZTQyOWQ1Yjc2
MmMwZWJjMjkxYmFmMDJmNDcwMjMyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3gu
aApAQCAtNTgzLDcgKzU4Myw3IEBAIG92ZXJyaWRlOwogICAgIExheW91dFVuaXQgb2Zmc2V0TGVm
dCgpIGNvbnN0IG92ZXJyaWRlOwogICAgIExheW91dFVuaXQgb2Zmc2V0VG9wKCkgY29uc3Qgb3Zl
cnJpZGU7CiAKLSAgICBMYXlvdXRQb2ludCBmbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZChjb25z
dCBSZW5kZXJCb3gqIGNoaWxkLCBjb25zdCBMYXlvdXRQb2ludCYpIGNvbnN0OworICAgIExheW91
dFBvaW50IGZsaXBGb3JXcml0aW5nTW9kZUZvckNoaWxkKGNvbnN0IFJlbmRlckJveCYgY2hpbGQs
IGNvbnN0IExheW91dFBvaW50JikgY29uc3Q7CiAgICAgTGF5b3V0VW5pdCBmbGlwRm9yV3JpdGlu
Z01vZGUoTGF5b3V0VW5pdCBwb3NpdGlvbikgY29uc3Q7IC8vIFRoZSBvZmZzZXQgaXMgaW4gdGhl
IGJsb2NrIGRpcmVjdGlvbiAoeSBmb3IgaG9yaXpvbnRhbCB3cml0aW5nIG1vZGVzLCB4IGZvciB2
ZXJ0aWNhbCB3cml0aW5nIG1vZGVzKS4KICAgICBMYXlvdXRQb2ludCBmbGlwRm9yV3JpdGluZ01v
ZGUoY29uc3QgTGF5b3V0UG9pbnQmKSBjb25zdDsKICAgICBMYXlvdXRTaXplIGZsaXBGb3JXcml0
aW5nTW9kZShjb25zdCBMYXlvdXRTaXplJikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckZsZXhpYmxlQm94LmNwcAppbmRleCA1OTY3ZTJlODkwZDU2NmRkMDFkMTQ2
M2UzNGYyYTE4YmRjMGZkNWEyLi45MjAxNWMwZjJiMDI5Y2VkNjQwZWVjMzMzMjAxZjY0MDAxYjE0
NDA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRmxleGlibGVC
b3guY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJGbGV4aWJsZUJveC5j
cHAKQEAgLTM0NSw3ICszNDUsNyBAQCBib29sIFJlbmRlckZsZXhpYmxlQm94OjpoaXRUZXN0Q2hp
bGRyZW4oY29uc3QgSGl0VGVzdFJlcXVlc3QmIHJlcXVlc3QsIEhpdFRlc3RSZQogICAgIGZvciAo
YXV0byogY2hpbGQgOiByZXZlcnNlZE9yZGVySXRlcmF0b3JGb3JIaXRUZXN0aW5nKSB7CiAgICAg
ICAgIGlmIChjaGlsZC0+aGFzU2VsZlBhaW50aW5nTGF5ZXIoKSkKICAgICAgICAgICAgIGNvbnRp
bnVlOwotICAgICAgICBhdXRvIGNoaWxkUG9pbnQgPSBmbGlwRm9yV3JpdGluZ01vZGVGb3JDaGls
ZChjaGlsZCwgc2Nyb2xsZWRPZmZzZXQpOworICAgICAgICBhdXRvIGNoaWxkUG9pbnQgPSBmbGlw
Rm9yV3JpdGluZ01vZGVGb3JDaGlsZCgqY2hpbGQsIHNjcm9sbGVkT2Zmc2V0KTsKICAgICAgICAg
aWYgKGNoaWxkLT5oaXRUZXN0KHJlcXVlc3QsIHJlc3VsdCwgbG9jYXRpb25JbkNvbnRhaW5lciwg
Y2hpbGRQb2ludCkpIHsKICAgICAgICAgICAgIHVwZGF0ZUhpdFRlc3RSZXN1bHQocmVzdWx0LCBm
bGlwRm9yV3JpdGluZ01vZGUodG9MYXlvdXRQb2ludChsb2NhdGlvbkluQ29udGFpbmVyLnBvaW50
KCkgLSBhZGp1c3RlZExvY2F0aW9uKSkpOwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGFibGUuY3BwIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlLmNwcAppbmRleCBjYmY1MDY2MTFmMDEzYmU1
MTE3ZjQ3MGE3N2UyNTJkNjM4OWE3YmQ1Li44ZDUyM2RkNzg3Njc3ZmNiYjgzM2ZkYjQ5MWU4M2Nm
NDExOTEzZjAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGFi
bGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUYWJsZS5jcHAKQEAg
LTczOCw3ICs3MzgsNyBAQCB2b2lkIFJlbmRlclRhYmxlOjpwYWludE9iamVjdChQYWludEluZm8m
IHBhaW50SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2ZmcwogCiAgICAgZm9yIChhdXRv
JiBib3ggOiBjaGlsZHJlbk9mVHlwZTxSZW5kZXJCb3g+KCp0aGlzKSkgewogICAgICAgICBpZiAo
IWJveC5oYXNTZWxmUGFpbnRpbmdMYXllcigpICYmIChib3guaXNUYWJsZVNlY3Rpb24oKSB8fCBi
b3guaXNUYWJsZUNhcHRpb24oKSkpIHsKLSAgICAgICAgICAgIExheW91dFBvaW50IGNoaWxkUG9p
bnQgPSBmbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZCgmYm94LCBwYWludE9mZnNldCk7CisgICAg
ICAgICAgICBMYXlvdXRQb2ludCBjaGlsZFBvaW50ID0gZmxpcEZvcldyaXRpbmdNb2RlRm9yQ2hp
bGQoYm94LCBwYWludE9mZnNldCk7CiAgICAgICAgICAgICBib3gucGFpbnQoaW5mbywgY2hpbGRQ
b2ludCk7CiAgICAgICAgIH0KICAgICB9CkBAIC03NTIsNyArNzUyLDcgQEAgdm9pZCBSZW5kZXJU
YWJsZTo6cGFpbnRPYmplY3QoUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IExheW91dFBvaW50
JiBwYWludE9mZnMKICAgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7
CiAgICAgICAgICAgICBtX2N1cnJlbnRCb3JkZXIgPSAmbV9jb2xsYXBzZWRCb3JkZXJzW2ldOwog
ICAgICAgICAgICAgZm9yIChSZW5kZXJUYWJsZVNlY3Rpb24qIHNlY3Rpb24gPSBib3R0b21TZWN0
aW9uKCk7IHNlY3Rpb247IHNlY3Rpb24gPSBzZWN0aW9uQWJvdmUoc2VjdGlvbikpIHsKLSAgICAg
ICAgICAgICAgICBMYXlvdXRQb2ludCBjaGlsZFBvaW50ID0gZmxpcEZvcldyaXRpbmdNb2RlRm9y
Q2hpbGQoc2VjdGlvbiwgcGFpbnRPZmZzZXQpOworICAgICAgICAgICAgICAgIExheW91dFBvaW50
IGNoaWxkUG9pbnQgPSBmbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZCgqc2VjdGlvbiwgcGFpbnRP
ZmZzZXQpOwogICAgICAgICAgICAgICAgIHNlY3Rpb24tPnBhaW50KGluZm8sIGNoaWxkUG9pbnQp
OwogICAgICAgICAgICAgfQogICAgICAgICB9CkBAIC0xNTY5LDcgKzE1NjksNyBAQCBib29sIFJl
bmRlclRhYmxlOjpub2RlQXRQb2ludChjb25zdCBIaXRUZXN0UmVxdWVzdCYgcmVxdWVzdCwgSGl0
VGVzdFJlc3VsdCYgcmVzdQogICAgIGlmICghaGFzTm9uVmlzaWJsZU92ZXJmbG93KCkgfHwgbG9j
YXRpb25JbkNvbnRhaW5lci5pbnRlcnNlY3RzKG92ZXJmbG93Q2xpcFJlY3QoYWRqdXN0ZWRMb2Nh
dGlvbiwgbnVsbHB0cikpKSB7CiAgICAgICAgIGZvciAoUmVuZGVyT2JqZWN0KiBjaGlsZCA9IGxh
c3RDaGlsZCgpOyBjaGlsZDsgY2hpbGQgPSBjaGlsZC0+cHJldmlvdXNTaWJsaW5nKCkpIHsKICAg
ICAgICAgICAgIGlmIChpczxSZW5kZXJCb3g+KCpjaGlsZCkgJiYgIWRvd25jYXN0PFJlbmRlckJv
eD4oKmNoaWxkKS5oYXNTZWxmUGFpbnRpbmdMYXllcigpICYmIChjaGlsZC0+aXNUYWJsZVNlY3Rp
b24oKSB8fCBjaGlsZC0+aXNUYWJsZUNhcHRpb24oKSkpIHsKLSAgICAgICAgICAgICAgICBMYXlv
dXRQb2ludCBjaGlsZFBvaW50ID0gZmxpcEZvcldyaXRpbmdNb2RlRm9yQ2hpbGQoZG93bmNhc3Q8
UmVuZGVyQm94PihjaGlsZCksIGFkanVzdGVkTG9jYXRpb24pOworICAgICAgICAgICAgICAgIExh
eW91dFBvaW50IGNoaWxkUG9pbnQgPSBmbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZCgqZG93bmNh
c3Q8UmVuZGVyQm94PihjaGlsZCksIGFkanVzdGVkTG9jYXRpb24pOwogICAgICAgICAgICAgICAg
IGlmIChjaGlsZC0+bm9kZUF0UG9pbnQocmVxdWVzdCwgcmVzdWx0LCBsb2NhdGlvbkluQ29udGFp
bmVyLCBjaGlsZFBvaW50LCBhY3Rpb24pKSB7CiAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZUhp
dFRlc3RSZXN1bHQocmVzdWx0LCB0b0xheW91dFBvaW50KGxvY2F0aW9uSW5Db250YWluZXIucG9p
bnQoKSAtIGNoaWxkUG9pbnQpKTsKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGFibGVSb3cuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlUm93LmNwcAppbmRleCA0YTA4Njgz
OGY5MTY1MmY5ZjI0OGVmMzY5YmZhMTFjMTQ5ODkwM2Q2Li5lMTc2OTM5ZjQ0ZTc3NDJmN2E3NGRi
MjIwZDg4MmM3ZGM3YTYzOWIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyVGFibGVSb3cuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJU
YWJsZVJvdy5jcHAKQEAgLTE5NSw3ICsxOTUsNyBAQCBib29sIFJlbmRlclRhYmxlUm93Ojpub2Rl
QXRQb2ludChjb25zdCBIaXRUZXN0UmVxdWVzdCYgcmVxdWVzdCwgSGl0VGVzdFJlc3VsdCYgcgog
ICAgICAgICAvLyB0YWJsZS1zcGVjaWZpYyBoaXQtdGVzdCBtZXRob2QgKHdoaWNoIHdlIHNob3Vs
ZCBkbyBmb3IgcGVyZm9ybWFuY2UgcmVhc29ucyBhbnl3YXkpLAogICAgICAgICAvLyB0aGVuIHdl
IGNhbiByZW1vdmUgdGhpcyBjaGVjay4KICAgICAgICAgaWYgKCFjZWxsLT5oYXNTZWxmUGFpbnRp
bmdMYXllcigpKSB7Ci0gICAgICAgICAgICBMYXlvdXRQb2ludCBjZWxsUG9pbnQgPSBmbGlwRm9y
V3JpdGluZ01vZGVGb3JDaGlsZChjZWxsLCBhY2N1bXVsYXRlZE9mZnNldCk7CisgICAgICAgICAg
ICBMYXlvdXRQb2ludCBjZWxsUG9pbnQgPSBmbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZCgqY2Vs
bCwgYWNjdW11bGF0ZWRPZmZzZXQpOwogICAgICAgICAgICAgaWYgKGNlbGwtPm5vZGVBdFBvaW50
KHJlcXVlc3QsIHJlc3VsdCwgbG9jYXRpb25JbkNvbnRhaW5lciwgY2VsbFBvaW50LCBhY3Rpb24p
KSB7CiAgICAgICAgICAgICAgICAgdXBkYXRlSGl0VGVzdFJlc3VsdChyZXN1bHQsIGxvY2F0aW9u
SW5Db250YWluZXIucG9pbnQoKSAtIHRvTGF5b3V0U2l6ZShjZWxsUG9pbnQpKTsKICAgICAgICAg
ICAgICAgICByZXR1cm4gdHJ1ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJUYWJsZVNlY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clRhYmxlU2VjdGlvbi5jcHAKaW5kZXggYTRlYmEwODBjNDVmNWE4YWQ2NjY5NDg1ZmI4ZGFlMDY4
MTA0MWI1Yi4uZWQ1OGM4NGUzZWRmZmU1M2JhYWI4MjA1YmMxNDM2ODNjOTdkMmFkMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5jcHAKQEAgLTkz
Myw3ICs5MzMsNyBAQCBzdGF0aWMgaW5saW5lIGJvb2wgY29tcGFyZUNlbGxQb3NpdGlvbnNXaXRo
T3ZlcmZsb3dpbmdDZWxscyhSZW5kZXJUYWJsZUNlbGwqIGVsZQogCiB2b2lkIFJlbmRlclRhYmxl
U2VjdGlvbjo6cGFpbnRDZWxsKFJlbmRlclRhYmxlQ2VsbCogY2VsbCwgUGFpbnRJbmZvJiBwYWlu
dEluZm8sIGNvbnN0IExheW91dFBvaW50JiBwYWludE9mZnNldCkKIHsKLSAgICBMYXlvdXRQb2lu
dCBjZWxsUG9pbnQgPSBmbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZChjZWxsLCBwYWludE9mZnNl
dCk7CisgICAgTGF5b3V0UG9pbnQgY2VsbFBvaW50ID0gZmxpcEZvcldyaXRpbmdNb2RlRm9yQ2hp
bGQoKmNlbGwsIHBhaW50T2Zmc2V0KTsKICAgICBQYWludFBoYXNlIHBhaW50UGhhc2UgPSBwYWlu
dEluZm8ucGhhc2U7CiAgICAgUmVuZGVyVGFibGVSb3cmIHJvdyA9IGRvd25jYXN0PFJlbmRlclRh
YmxlUm93PigqY2VsbC0+cGFyZW50KCkpOwogCkBAIC0xMjI5LDcgKzEyMjksNyBAQCB2b2lkIFJl
bmRlclRhYmxlU2VjdGlvbjo6cGFpbnRPYmplY3QoUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0
IExheW91dFBvaW50JiBwYQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3VsZFBhaW50
Um93R3JvdXBCb3JkZXIgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAgIH0KIAotICAg
ICAgICAgICAgICAgICAgICAgICAgTGF5b3V0UG9pbnQgY2VsbFBvaW50ID0gZmxpcEZvcldyaXRp
bmdNb2RlRm9yQ2hpbGQoY2VsbCwgcGFpbnRPZmZzZXQpOworICAgICAgICAgICAgICAgICAgICAg
ICAgTGF5b3V0UG9pbnQgY2VsbFBvaW50ID0gZmxpcEZvcldyaXRpbmdNb2RlRm9yQ2hpbGQoKmNl
bGwsIHBhaW50T2Zmc2V0KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGNlbGwtPnBhaW50Q29s
bGFwc2VkQm9yZGVycyhwYWludEluZm8sIGNlbGxQb2ludCk7CiAgICAgICAgICAgICAgICAgICAg
IH0KICAgICAgICAgICAgICAgICB9CkBAIC0xMjkxLDcgKzEyOTEsNyBAQCB2b2lkIFJlbmRlclRh
YmxlU2VjdGlvbjo6cGFpbnRPYmplY3QoUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IExheW91
dFBvaW50JiBwYQogCiAgICAgICAgICAgICBpZiAocGFpbnRJbmZvLnBoYXNlID09IFBhaW50UGhh
c2U6OkNvbGxhcHNlZFRhYmxlQm9yZGVycykgewogICAgICAgICAgICAgICAgIGZvciAodW5zaWdu
ZWQgaSA9IGNlbGxzLnNpemUoKTsgaSA+IDA7IC0taSkgewotICAgICAgICAgICAgICAgICAgICBM
YXlvdXRQb2ludCBjZWxsUG9pbnQgPSBmbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZChjZWxsc1tp
IC0gMV0sIHBhaW50T2Zmc2V0KTsKKyAgICAgICAgICAgICAgICAgICAgTGF5b3V0UG9pbnQgY2Vs
bFBvaW50ID0gZmxpcEZvcldyaXRpbmdNb2RlRm9yQ2hpbGQoKmNlbGxzW2kgLSAxXSwgcGFpbnRP
ZmZzZXQpOwogICAgICAgICAgICAgICAgICAgICBjZWxsc1tpIC0gMV0tPnBhaW50Q29sbGFwc2Vk
Qm9yZGVycyhwYWludEluZm8sIGNlbGxQb2ludCk7CiAgICAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgfSBlbHNlIHsKQEAgLTE0NjUsNyArMTQ2NSw3IEBAIGJvb2wgUmVuZGVyVGFibGVTZWN0
aW9uOjpub2RlQXRQb2ludChjb25zdCBIaXRUZXN0UmVxdWVzdCYgcmVxdWVzdCwgSGl0VGVzdFJl
c3VsCiAgICAgICAgICAgICAvLyB0YWJsZS1zcGVjaWZpYyBoaXQtdGVzdCBtZXRob2QgKHdoaWNo
IHdlIHNob3VsZCBkbyBmb3IgcGVyZm9ybWFuY2UgcmVhc29ucyBhbnl3YXkpLAogICAgICAgICAg
ICAgLy8gdGhlbiB3ZSBjYW4gcmVtb3ZlIHRoaXMgY2hlY2suCiAgICAgICAgICAgICBpZiAoIXJv
dy0+aGFzU2VsZlBhaW50aW5nTGF5ZXIoKSkgewotICAgICAgICAgICAgICAgIExheW91dFBvaW50
IGNoaWxkUG9pbnQgPSBmbGlwRm9yV3JpdGluZ01vZGVGb3JDaGlsZChyb3csIGFkanVzdGVkTG9j
YXRpb24pOworICAgICAgICAgICAgICAgIExheW91dFBvaW50IGNoaWxkUG9pbnQgPSBmbGlwRm9y
V3JpdGluZ01vZGVGb3JDaGlsZCgqcm93LCBhZGp1c3RlZExvY2F0aW9uKTsKICAgICAgICAgICAg
ICAgICBpZiAocm93LT5ub2RlQXRQb2ludChyZXF1ZXN0LCByZXN1bHQsIGxvY2F0aW9uSW5Db250
YWluZXIsIGNoaWxkUG9pbnQsIGFjdGlvbikpIHsKICAgICAgICAgICAgICAgICAgICAgdXBkYXRl
SGl0VGVzdFJlc3VsdChyZXN1bHQsIHRvTGF5b3V0UG9pbnQobG9jYXRpb25JbkNvbnRhaW5lci5w
b2ludCgpIC0gY2hpbGRQb2ludCkpOwogICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsK
QEAgLTE0OTYsNyArMTQ5Niw3IEBAIGJvb2wgUmVuZGVyVGFibGVTZWN0aW9uOjpub2RlQXRQb2lu
dChjb25zdCBIaXRUZXN0UmVxdWVzdCYgcmVxdWVzdCwgSGl0VGVzdFJlc3VsCiAgICAgICAgICAg
ICBmb3IgKHVuc2lnbmVkIGkgPSBjdXJyZW50LmNlbGxzLnNpemUoKSA7IGk7ICkgewogICAgICAg
ICAgICAgICAgIC0taTsKICAgICAgICAgICAgICAgICBSZW5kZXJUYWJsZUNlbGwqIGNlbGwgPSBj
dXJyZW50LmNlbGxzW2ldOwotICAgICAgICAgICAgICAgIExheW91dFBvaW50IGNlbGxQb2ludCA9
IGZsaXBGb3JXcml0aW5nTW9kZUZvckNoaWxkKGNlbGwsIGFkanVzdGVkTG9jYXRpb24pOworICAg
ICAgICAgICAgICAgIExheW91dFBvaW50IGNlbGxQb2ludCA9IGZsaXBGb3JXcml0aW5nTW9kZUZv
ckNoaWxkKCpjZWxsLCBhZGp1c3RlZExvY2F0aW9uKTsKICAgICAgICAgICAgICAgICBpZiAoc3Rh
dGljX2Nhc3Q8UmVuZGVyT2JqZWN0Kj4oY2VsbCktPm5vZGVBdFBvaW50KHJlcXVlc3QsIHJlc3Vs
dCwgbG9jYXRpb25JbkNvbnRhaW5lciwgY2VsbFBvaW50LCBhY3Rpb24pKSB7CiAgICAgICAgICAg
ICAgICAgICAgIHVwZGF0ZUhpdFRlc3RSZXN1bHQocmVzdWx0LCBsb2NhdGlvbkluQ29udGFpbmVy
LnBvaW50KCkgLSB0b0xheW91dFNpemUoY2VsbFBvaW50KSk7CiAgICAgICAgICAgICAgICAgICAg
IHJldHVybiB0cnVlOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>