<?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>181389</bug_id>
          
          <creation_ts>2018-01-08 08:51:18 -0800</creation_ts>
          <short_desc>[Cairo] Pass state values directly to Cairo operations</short_desc>
          <delta_ts>2018-01-09 01:53: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>New Bugs</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="Zan Dobersek">zan</reporter>
          <assigned_to name="Zan Dobersek">zan</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>cgarcia</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1386744</commentid>
    <comment_count>0</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2018-01-08 08:51:18 -0800</bug_when>
    <thetext>[Cairo] Pass state values directly to Cairo operations</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1386755</commentid>
    <comment_count>1</comment_count>
      <attachid>330707</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2018-01-08 09:14:12 -0800</bug_when>
    <thetext>Created attachment 330707
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1387157</commentid>
    <comment_count>2</comment_count>
      <attachid>330707</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2018-01-09 01:52:16 -0800</bug_when>
    <thetext>Comment on attachment 330707
Patch

Clearing flags on attachment: 330707

Committed r226620: &lt;https://trac.webkit.org/changeset/226620&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1387158</commentid>
    <comment_count>3</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2018-01-09 01:52:20 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1387159</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-01-09 01:53:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/36372118&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>330707</attachid>
            <date>2018-01-08 09:14:12 -0800</date>
            <delta_ts>2018-01-09 01:52:16 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-181389-20180108181411.patch</filename>
            <type>text/plain</type>
            <size>19867</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2NTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDQyZTFmMmMzZDE1YmUw
N2FmNTFmMTc1OGI0NGRjNDFlMjc3NjBhNC4uZTJkYzM1ZTE3MzhjZTkyNWI5NTY1NjM4ZDQzYWQ5
ZjI0OTllZDAwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM2IEBACiAyMDE4LTAxLTA4ICBaYW4g
RG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KIAorICAgICAgICBbQ2Fpcm9dIFBhc3Mg
c3RhdGUgdmFsdWVzIGRpcmVjdGx5IHRvIENhaXJvIG9wZXJhdGlvbnMKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MTM4OQorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEluc3RlYWQgb2YgcGFzc2luZyByZWZl
cmVuY2UgdG8gdGhlIEdyYXBoaWNzQ29udGV4dFN0YXRlIG9iamVjdCB0bworICAgICAgICB2YXJp
b3VzIENhaXJvIG9wZXJhdGlvbnMsIG9ubHkgcGFzcyB0aGUgcmVxdWlyZWQgc3RhdGUgdmFsdWVz
LiBUaGlzCisgICAgICAgIG1ha2VzIGl0IGV4cGxpY2l0IHdoYXQgc3RhdGUgdmFsdWVzIGFyZSB1
c2VkIGluIHRoZXNlIG9wZXJhdGlvbnMsIGF0IHRoZQorICAgICAgICBleHBlbnNlIG9mIHNvbWUg
bG9uZyBwYXJhbWV0ZXIgbGlzdHMsIGJ1dCB0aGlzIHdpbGwgYmUgYmV0dGVyIGFkZHJlc3NlZAor
ICAgICAgICBieSBmdXR1cmUgcmVmYWN0b3Jpbmcgb2YgdGhpcyBjb2RlIGludG8gbW9yZSBjb25j
aXNlIGZ1bmN0aW9ucy4KKworICAgICAgICBObyBuZXcgdGVzdHMgLS0gbm8gY2hhbmdlIGluIGZ1
bmN0aW9uYWxpdHkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9DYWlyb09w
ZXJhdGlvbnMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2Fpcm86OmRyYXdHbHlwaHNTaGFkb3cp
OgorICAgICAgICAoV2ViQ29yZTo6Q2Fpcm86OmRhc2hlZExpbmVDb3JuZXJXaWR0aEZvclN0cm9r
ZVdpZHRoKToKKyAgICAgICAgKFdlYkNvcmU6OkNhaXJvOjpkYXNoZWRMaW5lUGF0dGVybldpZHRo
Rm9yU3Ryb2tlV2lkdGgpOgorICAgICAgICAoV2ViQ29yZTo6Q2Fpcm86OmRyYXdHbHlwaHMpOgor
ICAgICAgICAoV2ViQ29yZTo6Q2Fpcm86OmRyYXdSZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNh
aXJvOjpkcmF3TGluZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWlybzo6ZHJhd0VsbGlwc2UpOgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0NhaXJvT3BlcmF0aW9ucy5oOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0ZvbnRDYWlyby5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpGb250Q2FzY2FkZTo6ZHJhd0dseXBocyk6CisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250ZXh0Q2Fpcm8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6
R3JhcGhpY3NDb250ZXh0OjpkcmF3UmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHQ6OmRyYXdMaW5lKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDo6ZHJh
d0VsbGlwc2UpOgorCisyMDE4LTAxLTA4ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlh
LmNvbT4KKwogICAgICAgICBbQ2Fpcm9dIFVzZSBpc29sYXRlZCBmaWxsIGFuZCBzdHJva2Ugc291
cmNlIGNvbnRhaW5lcnMKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE4MTM4NgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jYWlyby9DYWlyb09wZXJhdGlvbnMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2Fpcm8vQ2Fpcm9PcGVyYXRpb25zLmNwcAppbmRleCA5NGZlNWM1NDU4N2FhODg1
NDFhNmJkNDg5ZTM2MTU2MmUwMmM5YThhLi5hYjNmMjM2MTdhZmE3Y2UzY2VjNWFkYWE5NjBiNmQ4
ZDZjMzI5NWI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
YWlyby9DYWlyb09wZXJhdGlvbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NhaXJvL0NhaXJvT3BlcmF0aW9ucy5jcHAKQEAgLTE4MiwxMSArMTgyLDExIEBAIHN0
YXRpYyB2b2lkIGRyYXdHbHlwaHNUb0NvbnRleHQoY2Fpcm9fdCogY29udGV4dCwgY2Fpcm9fc2Nh
bGVkX2ZvbnRfdCogc2NhbGVkRm9uCiAgICAgfQogfQogCi1zdGF0aWMgdm9pZCBkcmF3R2x5cGhz
U2hhZG93KFBsYXRmb3JtQ29udGV4dENhaXJvJiBwbGF0Zm9ybUNvbnRleHQsIGNvbnN0IEdyYXBo
aWNzQ29udGV4dFN0YXRlJiBzdGF0ZSwgY29uc3QgU2hhZG93Qmx1clVzYWdlJiBzaGFkb3dCbHVy
VXNhZ2UsIGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50LCBjYWlyb19zY2FsZWRfZm9udF90KiBzY2Fs
ZWRGb250LCBkb3VibGUgc3ludGhldGljQm9sZE9mZnNldCwgY29uc3QgVmVjdG9yPGNhaXJvX2ds
eXBoX3Q+JiBnbHlwaHMsIEdyYXBoaWNzQ29udGV4dCYgdGFyZ2V0Q29udGV4dCkKK3N0YXRpYyB2
b2lkIGRyYXdHbHlwaHNTaGFkb3coUGxhdGZvcm1Db250ZXh0Q2Fpcm8mIHBsYXRmb3JtQ29udGV4
dCwgY29uc3QgU2hhZG93Qmx1clVzYWdlJiBzaGFkb3dCbHVyVXNhZ2UsIFRleHREcmF3aW5nTW9k
ZUZsYWdzIHRleHREcmF3aW5nTW9kZSwgY29uc3QgRmxvYXRTaXplJiBzaGFkb3dPZmZzZXQsIGNv
bnN0IENvbG9yJiBzaGFkb3dDb2xvciwgY29uc3QgRmxvYXRQb2ludCYgcG9pbnQsIGNhaXJvX3Nj
YWxlZF9mb250X3QqIHNjYWxlZEZvbnQsIGRvdWJsZSBzeW50aGV0aWNCb2xkT2Zmc2V0LCBjb25z
dCBWZWN0b3I8Y2Fpcm9fZ2x5cGhfdD4mIGdseXBocywgR3JhcGhpY3NDb250ZXh0JiB0YXJnZXRD
b250ZXh0KQogewogICAgIFNoYWRvd0JsdXImIHNoYWRvdyA9IHBsYXRmb3JtQ29udGV4dC5zaGFk
b3dCbHVyKCk7CiAKLSAgICBpZiAoIShzdGF0ZS50ZXh0RHJhd2luZ01vZGUgJiBUZXh0TW9kZUZp
bGwpIHx8IHNoYWRvdy50eXBlKCkgPT0gU2hhZG93Qmx1cjo6Tm9TaGFkb3cpCisgICAgaWYgKCEo
dGV4dERyYXdpbmdNb2RlICYgVGV4dE1vZGVGaWxsKSB8fCBzaGFkb3cudHlwZSgpID09IFNoYWRv
d0JsdXI6Ok5vU2hhZG93KQogICAgICAgICByZXR1cm47CiAKICAgICBpZiAoIXNoYWRvd0JsdXJV
c2FnZS5yZXF1aXJlZChwbGF0Zm9ybUNvbnRleHQpKSB7CkBAIC0xOTQsOSArMTk0LDggQEAgc3Rh
dGljIHZvaWQgZHJhd0dseXBoc1NoYWRvdyhQbGF0Zm9ybUNvbnRleHRDYWlybyYgcGxhdGZvcm1D
b250ZXh0LCBjb25zdCBHcmFwaGkKICAgICAgICAgY2Fpcm9fdCogY29udGV4dCA9IHBsYXRmb3Jt
Q29udGV4dC5jcigpOwogICAgICAgICBjYWlyb19zYXZlKGNvbnRleHQpOwogCi0gICAgICAgIEZs
b2F0U2l6ZSBzaGFkb3dPZmZzZXQoc3RhdGUuc2hhZG93T2Zmc2V0KTsKICAgICAgICAgY2Fpcm9f
dHJhbnNsYXRlKGNvbnRleHQsIHNoYWRvd09mZnNldC53aWR0aCgpLCBzaGFkb3dPZmZzZXQuaGVp
Z2h0KCkpOwotICAgICAgICBzZXRTb3VyY2VSR0JBRnJvbUNvbG9yKGNvbnRleHQsIHN0YXRlLnNo
YWRvd0NvbG9yKTsKKyAgICAgICAgc2V0U291cmNlUkdCQUZyb21Db2xvcihjb250ZXh0LCBzaGFk
b3dDb2xvcik7CiAgICAgICAgIGRyYXdHbHlwaHNUb0NvbnRleHQoY29udGV4dCwgc2NhbGVkRm9u
dCwgc3ludGhldGljQm9sZE9mZnNldCwgZ2x5cGhzKTsKIAogICAgICAgICBjYWlyb19yZXN0b3Jl
KGNvbnRleHQpOwpAQCAtMjUwLDE4ICsyNDksMTYgQEAgRmxvYXRSZWN0IGNvbXB1dGVMaW5lQm91
bmRzQW5kQW50aWFsaWFzaW5nTW9kZUZvclRleHQoUGxhdGZvcm1Db250ZXh0Q2Fpcm8mIHBsYXQK
IAogLy8gRklYTUU6IFJlcGxhY2Ugb25jZSBHcmFwaGljc0NvbnRleHQ6OmRhc2hlZExpbmVDb3Ju
ZXJXaWR0aEZvclN0cm9rZVdpZHRoKCkKIC8vIGlzIHJlZmFjdG9yZWQgYXMgYSBzdGF0aWMgcHVi
bGljIGZ1bmN0aW9uLgotc3RhdGljIGZsb2F0IGRhc2hlZExpbmVDb3JuZXJXaWR0aEZvclN0cm9r
ZVdpZHRoKGZsb2F0IHN0cm9rZVdpZHRoLCBjb25zdCBHcmFwaGljc0NvbnRleHRTdGF0ZSYgc3Rh
dGUpCitzdGF0aWMgZmxvYXQgZGFzaGVkTGluZUNvcm5lcldpZHRoRm9yU3Ryb2tlV2lkdGgoZmxv
YXQgc3Ryb2tlV2lkdGgsIFN0cm9rZVN0eWxlIHN0cm9rZVN0eWxlLCBmbG9hdCBzdHJva2VUaGlj
a25lc3MpCiB7Ci0gICAgZmxvYXQgdGhpY2tuZXNzID0gc3RhdGUuc3Ryb2tlVGhpY2tuZXNzOwot
ICAgIHJldHVybiBzdGF0ZS5zdHJva2VTdHlsZSA9PSBEb3R0ZWRTdHJva2UgPyB0aGlja25lc3Mg
OiBzdGQ6Om1pbigyLjBmICogdGhpY2tuZXNzLCBzdGQ6Om1heCh0aGlja25lc3MsIHN0cm9rZVdp
ZHRoIC8gMy4wZikpOworICAgIHJldHVybiBzdHJva2VTdHlsZSA9PSBEb3R0ZWRTdHJva2UgPyBz
dHJva2VUaGlja25lc3MgOiBzdGQ6Om1pbigyLjBmICogc3Ryb2tlVGhpY2tuZXNzLCBzdGQ6Om1h
eChzdHJva2VUaGlja25lc3MsIHN0cm9rZVdpZHRoIC8gMy4wZikpOwogfQogCiAvLyBGSVhNRTog
UmVwbGFjZSBvbmNlIEdyYXBoaWNzQ29udGV4dDo6ZGFzaGVkTGluZVBhdHRlcm5XaWR0aEZvclN0
cm9rZVdpZHRoKCkKIC8vIGlzIHJlZmFjdG9yZWQgYXMgYSBzdGF0aWMgcHVibGljIGZ1bmN0aW9u
Lgotc3RhdGljIGZsb2F0IGRhc2hlZExpbmVQYXR0ZXJuV2lkdGhGb3JTdHJva2VXaWR0aChmbG9h
dCBzdHJva2VXaWR0aCwgY29uc3QgR3JhcGhpY3NDb250ZXh0U3RhdGUmIHN0YXRlKQorc3RhdGlj
IGZsb2F0IGRhc2hlZExpbmVQYXR0ZXJuV2lkdGhGb3JTdHJva2VXaWR0aChmbG9hdCBzdHJva2VX
aWR0aCwgU3Ryb2tlU3R5bGUgc3Ryb2tlU3R5bGUsIGZsb2F0IHN0cm9rZVRoaWNrbmVzcykKIHsK
LSAgICBmbG9hdCB0aGlja25lc3MgPSBzdGF0ZS5zdHJva2VUaGlja25lc3M7Ci0gICAgcmV0dXJu
IHN0YXRlLnN0cm9rZVN0eWxlID09IERvdHRlZFN0cm9rZSA/IHRoaWNrbmVzcyA6IHN0ZDo6bWlu
KDMuMGYgKiB0aGlja25lc3MsIHN0ZDo6bWF4KHRoaWNrbmVzcywgc3Ryb2tlV2lkdGggLyAzLjBm
KSk7CisgICAgcmV0dXJuIHN0cm9rZVN0eWxlID09IERvdHRlZFN0cm9rZSA/IHN0cm9rZVRoaWNr
bmVzcyA6IHN0ZDo6bWluKDMuMGYgKiBzdHJva2VUaGlja25lc3MsIHN0ZDo6bWF4KHN0cm9rZVRo
aWNrbmVzcywgc3Ryb2tlV2lkdGggLyAzLjBmKSk7CiB9CiAKIC8vIEZJWE1FOiBSZXBsYWNlIG9u
Y2UgR3JhcGhpY3NDb250ZXh0OjpkYXNoZWRMaW5lUGF0dGVybk9mZnNldEZvclBhdHRlcm5BbmRT
dHJva2VXaWR0aCgpCkBAIC02NTYsMTQgKzY1MywxNCBAQCB2b2lkIGNsZWFyUmVjdChQbGF0Zm9y
bUNvbnRleHRDYWlybyYgcGxhdGZvcm1Db250ZXh0LCBjb25zdCBGbG9hdFJlY3QmIHJlY3QpCiAg
ICAgY2Fpcm9fcmVzdG9yZShjcik7CiB9CiAKLXZvaWQgZHJhd0dseXBocyhQbGF0Zm9ybUNvbnRl
eHRDYWlybyYgcGxhdGZvcm1Db250ZXh0LCBjb25zdCBHcmFwaGljc0NvbnRleHRTdGF0ZSYgc3Rh
dGUsIGNvbnN0IEZpbGxTb3VyY2UmIGZpbGxTb3VyY2UsIGNvbnN0IFN0cm9rZVNvdXJjZSYgc3Ry
b2tlU291cmNlLCBjb25zdCBTaGFkb3dCbHVyVXNhZ2UmIHNoYWRvd0JsdXJVc2FnZSwgY29uc3Qg
RmxvYXRQb2ludCYgcG9pbnQsIGNhaXJvX3NjYWxlZF9mb250X3QqIHNjYWxlZEZvbnQsIGRvdWJs
ZSBzeW50aGV0aWNCb2xkT2Zmc2V0LCBjb25zdCBWZWN0b3I8Y2Fpcm9fZ2x5cGhfdD4mIGdseXBo
cywgZmxvYXQgeE9mZnNldCwgR3JhcGhpY3NDb250ZXh0JiB0YXJnZXRDb250ZXh0KQordm9pZCBk
cmF3R2x5cGhzKFBsYXRmb3JtQ29udGV4dENhaXJvJiBwbGF0Zm9ybUNvbnRleHQsIGNvbnN0IEZp
bGxTb3VyY2UmIGZpbGxTb3VyY2UsIGNvbnN0IFN0cm9rZVNvdXJjZSYgc3Ryb2tlU291cmNlLCBj
b25zdCBTaGFkb3dCbHVyVXNhZ2UmIHNoYWRvd0JsdXJVc2FnZSwgY29uc3QgRmxvYXRQb2ludCYg
cG9pbnQsIGNhaXJvX3NjYWxlZF9mb250X3QqIHNjYWxlZEZvbnQsIGRvdWJsZSBzeW50aGV0aWNC
b2xkT2Zmc2V0LCBjb25zdCBWZWN0b3I8Y2Fpcm9fZ2x5cGhfdD4mIGdseXBocywgZmxvYXQgeE9m
ZnNldCwgVGV4dERyYXdpbmdNb2RlRmxhZ3MgdGV4dERyYXdpbmdNb2RlLCBmbG9hdCBzdHJva2VU
aGlja25lc3MsIGNvbnN0IEZsb2F0U2l6ZSYgc2hhZG93T2Zmc2V0LCBjb25zdCBDb2xvciYgc2hh
ZG93Q29sb3IsIEdyYXBoaWNzQ29udGV4dCYgdGFyZ2V0Q29udGV4dCkKIHsKLSAgICBkcmF3R2x5
cGhzU2hhZG93KHBsYXRmb3JtQ29udGV4dCwgc3RhdGUsIHNoYWRvd0JsdXJVc2FnZSwgcG9pbnQs
IHNjYWxlZEZvbnQsIHN5bnRoZXRpY0JvbGRPZmZzZXQsIGdseXBocywgdGFyZ2V0Q29udGV4dCk7
CisgICAgZHJhd0dseXBoc1NoYWRvdyhwbGF0Zm9ybUNvbnRleHQsIHNoYWRvd0JsdXJVc2FnZSwg
dGV4dERyYXdpbmdNb2RlLCBzaGFkb3dPZmZzZXQsIHNoYWRvd0NvbG9yLCBwb2ludCwgc2NhbGVk
Rm9udCwgc3ludGhldGljQm9sZE9mZnNldCwgZ2x5cGhzLCB0YXJnZXRDb250ZXh0KTsKIAogICAg
IGNhaXJvX3QqIGNyID0gcGxhdGZvcm1Db250ZXh0LmNyKCk7CiAgICAgY2Fpcm9fc2F2ZShjcik7
CiAKLSAgICBpZiAoc3RhdGUudGV4dERyYXdpbmdNb2RlICYgVGV4dE1vZGVGaWxsKSB7CisgICAg
aWYgKHRleHREcmF3aW5nTW9kZSAmIFRleHRNb2RlRmlsbCkgewogICAgICAgICBwbGF0Zm9ybUNv
bnRleHQucHJlcGFyZUZvckZpbGxpbmcoZmlsbFNvdXJjZSwgUGxhdGZvcm1Db250ZXh0Q2Fpcm86
OkFkanVzdFBhdHRlcm5Gb3JHbG9iYWxBbHBoYSk7CiAgICAgICAgIGRyYXdHbHlwaHNUb0NvbnRl
eHQoY3IsIHNjYWxlZEZvbnQsIHN5bnRoZXRpY0JvbGRPZmZzZXQsIGdseXBocyk7CiAgICAgfQpA
QCAtNjcyLDkgKzY2OSw5IEBAIHZvaWQgZHJhd0dseXBocyhQbGF0Zm9ybUNvbnRleHRDYWlybyYg
cGxhdGZvcm1Db250ZXh0LCBjb25zdCBHcmFwaGljc0NvbnRleHRTdGF0CiAgICAgLy8gdHdpY2Ug
dGhlIHNpemUgb2YgdGhlIHdpZHRoIG9mIHRoZSB0ZXh0IHdlIHdpbGwgbm90IGFzayBjYWlybyB0
byBzdHJva2UKICAgICAvLyB0aGUgdGV4dCBhcyBldmVuIG9uZSBzaW5nbGUgc3Ryb2tlIHdvdWxk
IGNvdmVyIHRoZSBmdWxsIHdkdGggb2YgdGhlIHRleHQuCiAgICAgLy8gIFNlZSBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzM3NTkuCi0gICAgaWYgKHN0YXRlLnRleHRE
cmF3aW5nTW9kZSAmIFRleHRNb2RlU3Ryb2tlICYmIHN0YXRlLnN0cm9rZVRoaWNrbmVzcyA8IDIg
KiB4T2Zmc2V0KSB7CisgICAgaWYgKHRleHREcmF3aW5nTW9kZSAmIFRleHRNb2RlU3Ryb2tlICYm
IHN0cm9rZVRoaWNrbmVzcyA8IDIgKiB4T2Zmc2V0KSB7CiAgICAgICAgIHBsYXRmb3JtQ29udGV4
dC5wcmVwYXJlRm9yU3Ryb2tpbmcoc3Ryb2tlU291cmNlLCBQbGF0Zm9ybUNvbnRleHRDYWlybzo6
UHJlc2VydmVBbHBoYSk7Ci0gICAgICAgIGNhaXJvX3NldF9saW5lX3dpZHRoKGNyLCBzdGF0ZS5z
dHJva2VUaGlja25lc3MpOworICAgICAgICBjYWlyb19zZXRfbGluZV93aWR0aChjciwgc3Ryb2tl
VGhpY2tuZXNzKTsKIAogICAgICAgICAvLyBUaGlzIG1heSBkaXN0dXJiIHRoZSBDVE0sIGJ1dCB3
ZSBhcmUgZ29pbmcgdG8gY2FsbCBjYWlyb19yZXN0b3JlIHNvb24gYWZ0ZXIuCiAgICAgICAgIGNh
aXJvX3NldF9zY2FsZWRfZm9udChjciwgc2NhbGVkRm9udCk7CkBAIC03MTgsNyArNzE1LDcgQEAg
dm9pZCBkcmF3UGF0dGVybihQbGF0Zm9ybUNvbnRleHRDYWlybyYgcGxhdGZvcm1Db250ZXh0LCBj
YWlyb19zdXJmYWNlX3QqIHN1cmZhY2UKICAgICBkcmF3UGF0dGVyblRvQ2Fpcm9Db250ZXh0KHBs
YXRmb3JtQ29udGV4dC5jcigpLCBzdXJmYWNlLCBzaXplLCB0aWxlUmVjdCwgcGF0dGVyblRyYW5z
Zm9ybSwgcGhhc2UsIHRvQ2Fpcm9PcGVyYXRvcihjb21wb3NpdGVPcGVyYXRvciwgYmxlbmRNb2Rl
KSwgZGVzdFJlY3QpOwogfQogCi12b2lkIGRyYXdSZWN0KFBsYXRmb3JtQ29udGV4dENhaXJvJiBw
bGF0Zm9ybUNvbnRleHQsIGNvbnN0IEZsb2F0UmVjdCYgcmVjdCwgZmxvYXQgYm9yZGVyVGhpY2tu
ZXNzLCBjb25zdCBHcmFwaGljc0NvbnRleHRTdGF0ZSYgc3RhdGUpCit2b2lkIGRyYXdSZWN0KFBs
YXRmb3JtQ29udGV4dENhaXJvJiBwbGF0Zm9ybUNvbnRleHQsIGNvbnN0IEZsb2F0UmVjdCYgcmVj
dCwgZmxvYXQgYm9yZGVyVGhpY2tuZXNzLCBjb25zdCBDb2xvciYgZmlsbENvbG9yLCBTdHJva2VT
dHlsZSBzdHJva2VTdHlsZSwgY29uc3QgQ29sb3ImIHN0cm9rZUNvbG9yKQogewogICAgIC8vIEZJ
WE1FOiBob3cgc2hvdWxkIGJvcmRlclRoaWNrbmVzcyBiZSB1c2VkPwogICAgIFVOVVNFRF9QQVJB
TShib3JkZXJUaGlja25lc3MpOwpAQCAtNzI2LDEwICs3MjMsMTAgQEAgdm9pZCBkcmF3UmVjdChQ
bGF0Zm9ybUNvbnRleHRDYWlybyYgcGxhdGZvcm1Db250ZXh0LCBjb25zdCBGbG9hdFJlY3QmIHJl
Y3QsIGZsb2EKICAgICBjYWlyb190KiBjciA9IHBsYXRmb3JtQ29udGV4dC5jcigpOwogICAgIGNh
aXJvX3NhdmUoY3IpOwogCi0gICAgZmlsbFJlY3RXaXRoQ29sb3IoY3IsIHJlY3QsIHN0YXRlLmZp
bGxDb2xvcik7CisgICAgZmlsbFJlY3RXaXRoQ29sb3IoY3IsIHJlY3QsIGZpbGxDb2xvcik7CiAK
LSAgICBpZiAoc3RhdGUuc3Ryb2tlU3R5bGUgIT0gTm9TdHJva2UpIHsKLSAgICAgICAgc2V0U291
cmNlUkdCQUZyb21Db2xvcihjciwgc3RhdGUuc3Ryb2tlQ29sb3IpOworICAgIGlmIChzdHJva2VT
dHlsZSAhPSBOb1N0cm9rZSkgeworICAgICAgICBzZXRTb3VyY2VSR0JBRnJvbUNvbG9yKGNyLCBz
dHJva2VDb2xvcik7CiAgICAgICAgIEZsb2F0UmVjdCByKHJlY3QpOwogICAgICAgICByLmluZmxh
dGUoLS41Zik7CiAgICAgICAgIGNhaXJvX3JlY3RhbmdsZShjciwgci54KCksIHIueSgpLCByLndp
ZHRoKCksIHIuaGVpZ2h0KCkpOwpAQCAtNzQwLDMwICs3MzcsMzAgQEAgdm9pZCBkcmF3UmVjdChQ
bGF0Zm9ybUNvbnRleHRDYWlybyYgcGxhdGZvcm1Db250ZXh0LCBjb25zdCBGbG9hdFJlY3QmIHJl
Y3QsIGZsb2EKICAgICBjYWlyb19yZXN0b3JlKGNyKTsKIH0KIAotdm9pZCBkcmF3TGluZShQbGF0
Zm9ybUNvbnRleHRDYWlybyYgcGxhdGZvcm1Db250ZXh0LCBjb25zdCBGbG9hdFBvaW50JiBwb2lu
dDEsIGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50MiwgY29uc3QgR3JhcGhpY3NDb250ZXh0U3RhdGUm
IHN0YXRlKQordm9pZCBkcmF3TGluZShQbGF0Zm9ybUNvbnRleHRDYWlybyYgcGxhdGZvcm1Db250
ZXh0LCBjb25zdCBGbG9hdFBvaW50JiBwb2ludDEsIGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50Miwg
U3Ryb2tlU3R5bGUgc3Ryb2tlU3R5bGUsIGNvbnN0IENvbG9yJiBzdHJva2VDb2xvciwgZmxvYXQg
c3Ryb2tlVGhpY2tuZXNzLCBib29sIHNob3VsZEFudGlhbGlhcykKIHsKLSAgICBib29sIGlzVmVy
dGljYWxMaW5lID0gKHBvaW50MS54KCkgKyBzdGF0ZS5zdHJva2VUaGlja25lc3MgPT0gcG9pbnQy
LngoKSk7CisgICAgYm9vbCBpc1ZlcnRpY2FsTGluZSA9IChwb2ludDEueCgpICsgc3Ryb2tlVGhp
Y2tuZXNzID09IHBvaW50Mi54KCkpOwogICAgIGZsb2F0IHN0cm9rZVdpZHRoID0gaXNWZXJ0aWNh
bExpbmUgPyBwb2ludDIueSgpIC0gcG9pbnQxLnkoKSA6IHBvaW50Mi54KCkgLSBwb2ludDEueCgp
OwotICAgIGlmICghc3RhdGUuc3Ryb2tlVGhpY2tuZXNzIHx8ICFzdHJva2VXaWR0aCkKKyAgICBp
ZiAoIXN0cm9rZVRoaWNrbmVzcyB8fCAhc3Ryb2tlV2lkdGgpCiAgICAgICAgIHJldHVybjsKIAog
ICAgIGNhaXJvX3QqIGNhaXJvQ29udGV4dCA9IHBsYXRmb3JtQ29udGV4dC5jcigpOwogICAgIGZs
b2F0IGNvcm5lcldpZHRoID0gMDsKLSAgICBib29sIGRyYXdzRGFzaGVkTGluZSA9IHN0YXRlLnN0
cm9rZVN0eWxlID09IERvdHRlZFN0cm9rZSB8fCBzdGF0ZS5zdHJva2VTdHlsZSA9PSBEYXNoZWRT
dHJva2U7CisgICAgYm9vbCBkcmF3c0Rhc2hlZExpbmUgPSBzdHJva2VTdHlsZSA9PSBEb3R0ZWRT
dHJva2UgfHwgc3Ryb2tlU3R5bGUgPT0gRGFzaGVkU3Ryb2tlOwogCiAgICAgaWYgKGRyYXdzRGFz
aGVkTGluZSkgewogICAgICAgICBjYWlyb19zYXZlKGNhaXJvQ29udGV4dCk7CiAgICAgICAgIC8v
IEZpZ3VyZSBvdXQgZW5kIHBvaW50cyB0byBlbnN1cmUgd2UgYWx3YXlzIHBhaW50IGNvcm5lcnMu
Ci0gICAgICAgIGNvcm5lcldpZHRoID0gZGFzaGVkTGluZUNvcm5lcldpZHRoRm9yU3Ryb2tlV2lk
dGgoc3Ryb2tlV2lkdGgsIHN0YXRlKTsKKyAgICAgICAgY29ybmVyV2lkdGggPSBkYXNoZWRMaW5l
Q29ybmVyV2lkdGhGb3JTdHJva2VXaWR0aChzdHJva2VXaWR0aCwgc3Ryb2tlU3R5bGUsIHN0cm9r
ZVRoaWNrbmVzcyk7CiAgICAgICAgIGlmIChpc1ZlcnRpY2FsTGluZSkgewotICAgICAgICAgICAg
ZmlsbFJlY3RXaXRoQ29sb3IoY2Fpcm9Db250ZXh0LCBGbG9hdFJlY3QocG9pbnQxLngoKSwgcG9p
bnQxLnkoKSwgc3RhdGUuc3Ryb2tlVGhpY2tuZXNzLCBjb3JuZXJXaWR0aCksIHN0YXRlLnN0cm9r
ZUNvbG9yKTsKLSAgICAgICAgICAgIGZpbGxSZWN0V2l0aENvbG9yKGNhaXJvQ29udGV4dCwgRmxv
YXRSZWN0KHBvaW50MS54KCksIHBvaW50Mi55KCkgLSBjb3JuZXJXaWR0aCwgc3RhdGUuc3Ryb2tl
VGhpY2tuZXNzLCBjb3JuZXJXaWR0aCksIHN0YXRlLnN0cm9rZUNvbG9yKTsKKyAgICAgICAgICAg
IGZpbGxSZWN0V2l0aENvbG9yKGNhaXJvQ29udGV4dCwgRmxvYXRSZWN0KHBvaW50MS54KCksIHBv
aW50MS55KCksIHN0cm9rZVRoaWNrbmVzcywgY29ybmVyV2lkdGgpLCBzdHJva2VDb2xvcik7Cisg
ICAgICAgICAgICBmaWxsUmVjdFdpdGhDb2xvcihjYWlyb0NvbnRleHQsIEZsb2F0UmVjdChwb2lu
dDEueCgpLCBwb2ludDIueSgpIC0gY29ybmVyV2lkdGgsIHN0cm9rZVRoaWNrbmVzcywgY29ybmVy
V2lkdGgpLCBzdHJva2VDb2xvcik7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBmaWxs
UmVjdFdpdGhDb2xvcihjYWlyb0NvbnRleHQsIEZsb2F0UmVjdChwb2ludDEueCgpLCBwb2ludDEu
eSgpLCBjb3JuZXJXaWR0aCwgc3RhdGUuc3Ryb2tlVGhpY2tuZXNzKSwgc3RhdGUuc3Ryb2tlQ29s
b3IpOwotICAgICAgICAgICAgZmlsbFJlY3RXaXRoQ29sb3IoY2Fpcm9Db250ZXh0LCBGbG9hdFJl
Y3QocG9pbnQyLngoKSAtIGNvcm5lcldpZHRoLCBwb2ludDEueSgpLCBjb3JuZXJXaWR0aCwgc3Rh
dGUuc3Ryb2tlVGhpY2tuZXNzKSwgc3RhdGUuc3Ryb2tlQ29sb3IpOworICAgICAgICAgICAgZmls
bFJlY3RXaXRoQ29sb3IoY2Fpcm9Db250ZXh0LCBGbG9hdFJlY3QocG9pbnQxLngoKSwgcG9pbnQx
LnkoKSwgY29ybmVyV2lkdGgsIHN0cm9rZVRoaWNrbmVzcyksIHN0cm9rZUNvbG9yKTsKKyAgICAg
ICAgICAgIGZpbGxSZWN0V2l0aENvbG9yKGNhaXJvQ29udGV4dCwgRmxvYXRSZWN0KHBvaW50Mi54
KCkgLSBjb3JuZXJXaWR0aCwgcG9pbnQxLnkoKSwgY29ybmVyV2lkdGgsIHN0cm9rZVRoaWNrbmVz
cyksIHN0cm9rZUNvbG9yKTsKICAgICAgICAgfQogICAgICAgICBzdHJva2VXaWR0aCAtPSAyICog
Y29ybmVyV2lkdGg7Ci0gICAgICAgIGZsb2F0IHBhdHRlcm5XaWR0aCA9IGRhc2hlZExpbmVQYXR0
ZXJuV2lkdGhGb3JTdHJva2VXaWR0aChzdHJva2VXaWR0aCwgc3RhdGUpOworICAgICAgICBmbG9h
dCBwYXR0ZXJuV2lkdGggPSBkYXNoZWRMaW5lUGF0dGVybldpZHRoRm9yU3Ryb2tlV2lkdGgoc3Ry
b2tlV2lkdGgsIHN0cm9rZVN0eWxlLCBzdHJva2VUaGlja25lc3MpOwogICAgICAgICAvLyBDaGVj
ayBpZiBjb3JuZXIgZHJhd2luZyBzdWZmaWNpZW50bHkgY292ZXJzIHRoZSBsaW5lLgogICAgICAg
ICBpZiAoc3Ryb2tlV2lkdGggPD0gcGF0dGVybldpZHRoICsgMSkgewogICAgICAgICAgICAgY2Fp
cm9fcmVzdG9yZShjYWlyb0NvbnRleHQpOwpAQCAtNzc0LDggKzc3MSw4IEBAIHZvaWQgZHJhd0xp
bmUoUGxhdGZvcm1Db250ZXh0Q2Fpcm8mIHBsYXRmb3JtQ29udGV4dCwgY29uc3QgRmxvYXRQb2lu
dCYgcG9pbnQxLCBjCiAgICAgICAgIGNvbnN0IGRvdWJsZSBkYXNoZWRMaW5lWzJdID0geyBzdGF0
aWNfY2FzdDxkb3VibGU+KHBhdHRlcm5XaWR0aCksIHN0YXRpY19jYXN0PGRvdWJsZT4ocGF0dGVy
bldpZHRoKSB9OwogICAgICAgICBjYWlyb19zZXRfZGFzaChjYWlyb0NvbnRleHQsIGRhc2hlZExp
bmUsIDIsIHBhdHRlcm5PZmZzZXQpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIHNldFNvdXJjZVJH
QkFGcm9tQ29sb3IoY2Fpcm9Db250ZXh0LCBzdGF0ZS5zdHJva2VDb2xvcik7Ci0gICAgICAgIGlm
IChzdGF0ZS5zdHJva2VUaGlja25lc3MgPCAxKQorICAgICAgICBzZXRTb3VyY2VSR0JBRnJvbUNv
bG9yKGNhaXJvQ29udGV4dCwgc3Ryb2tlQ29sb3IpOworICAgICAgICBpZiAoc3Ryb2tlVGhpY2tu
ZXNzIDwgMSkKICAgICAgICAgICAgIGNhaXJvX3NldF9saW5lX3dpZHRoKGNhaXJvQ29udGV4dCwg
MSk7CiAgICAgfQogCkBAIC03ODMsNyArNzgwLDcgQEAgdm9pZCBkcmF3TGluZShQbGF0Zm9ybUNv
bnRleHRDYWlybyYgcGxhdGZvcm1Db250ZXh0LCBjb25zdCBGbG9hdFBvaW50JiBwb2ludDEsIGMK
ICAgICBhdXRvIHAxID0gY2VudGVyZWRQb2ludHNbMF07CiAgICAgYXV0byBwMiA9IGNlbnRlcmVk
UG9pbnRzWzFdOwogCi0gICAgaWYgKHN0YXRlLnNob3VsZEFudGlhbGlhcykKKyAgICBpZiAoc2hv
dWxkQW50aWFsaWFzKQogICAgICAgICBjYWlyb19zZXRfYW50aWFsaWFzKGNhaXJvQ29udGV4dCwg
Q0FJUk9fQU5USUFMSUFTX05PTkUpOwogCiAgICAgY2Fpcm9fbmV3X3BhdGgoY2Fpcm9Db250ZXh0
KTsKQEAgLTc5Myw3ICs3OTAsNyBAQCB2b2lkIGRyYXdMaW5lKFBsYXRmb3JtQ29udGV4dENhaXJv
JiBwbGF0Zm9ybUNvbnRleHQsIGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50MSwgYwogICAgIGlmIChk
cmF3c0Rhc2hlZExpbmUpCiAgICAgICAgIGNhaXJvX3Jlc3RvcmUoY2Fpcm9Db250ZXh0KTsKIAot
ICAgIGlmIChzdGF0ZS5zaG91bGRBbnRpYWxpYXMpCisgICAgaWYgKHNob3VsZEFudGlhbGlhcykK
ICAgICAgICAgY2Fpcm9fc2V0X2FudGlhbGlhcyhjYWlyb0NvbnRleHQsIENBSVJPX0FOVElBTElB
U19ERUZBVUxUKTsKIH0KIApAQCAtODQxLDcgKzgzOCw3IEBAIHZvaWQgZHJhd0xpbmVGb3JEb2N1
bWVudE1hcmtlcihQbGF0Zm9ybUNvbnRleHRDYWlybyYgcGxhdGZvcm1Db250ZXh0LCBjb25zdCBG
bG9hCiAgICAgY2Fpcm9fcmVzdG9yZShjcik7CiB9CiAKLXZvaWQgZHJhd0VsbGlwc2UoUGxhdGZv
cm1Db250ZXh0Q2Fpcm8mIHBsYXRmb3JtQ29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiByZWN0LCBj
b25zdCBHcmFwaGljc0NvbnRleHRTdGF0ZSYgc3RhdGUpCit2b2lkIGRyYXdFbGxpcHNlKFBsYXRm
b3JtQ29udGV4dENhaXJvJiBwbGF0Zm9ybUNvbnRleHQsIGNvbnN0IEZsb2F0UmVjdCYgcmVjdCwg
Y29uc3QgQ29sb3ImIGZpbGxDb2xvciwgU3Ryb2tlU3R5bGUgc3Ryb2tlU3R5bGUsIGNvbnN0IENv
bG9yJiBzdHJva2VDb2xvciwgZmxvYXQgc3Ryb2tlVGhpY2tuZXNzKQogewogICAgIGNhaXJvX3Qq
IGNyID0gcGxhdGZvcm1Db250ZXh0LmNyKCk7CiAKQEAgLTg1MywxNCArODUwLDE0IEBAIHZvaWQg
ZHJhd0VsbGlwc2UoUGxhdGZvcm1Db250ZXh0Q2Fpcm8mIHBsYXRmb3JtQ29udGV4dCwgY29uc3Qg
RmxvYXRSZWN0JiByZWN0LCBjCiAgICAgY2Fpcm9fYXJjKGNyLCAwLiwgMC4sIDEuLCAwLiwgMiAq
IHBpRmxvYXQpOwogICAgIGNhaXJvX3Jlc3RvcmUoY3IpOwogCi0gICAgaWYgKHN0YXRlLmZpbGxD
b2xvci5pc1Zpc2libGUoKSkgewotICAgICAgICBzZXRTb3VyY2VSR0JBRnJvbUNvbG9yKGNyLCBz
dGF0ZS5maWxsQ29sb3IpOworICAgIGlmIChmaWxsQ29sb3IuaXNWaXNpYmxlKCkpIHsKKyAgICAg
ICAgc2V0U291cmNlUkdCQUZyb21Db2xvcihjciwgZmlsbENvbG9yKTsKICAgICAgICAgY2Fpcm9f
ZmlsbF9wcmVzZXJ2ZShjcik7CiAgICAgfQogCi0gICAgaWYgKHN0YXRlLnN0cm9rZVN0eWxlICE9
IE5vU3Ryb2tlKSB7Ci0gICAgICAgIHNldFNvdXJjZVJHQkFGcm9tQ29sb3IoY3IsIHN0YXRlLnN0
cm9rZUNvbG9yKTsKLSAgICAgICAgY2Fpcm9fc2V0X2xpbmVfd2lkdGgoY3IsIHN0YXRlLnN0cm9r
ZVRoaWNrbmVzcyk7CisgICAgaWYgKHN0cm9rZVN0eWxlICE9IE5vU3Ryb2tlKSB7CisgICAgICAg
IHNldFNvdXJjZVJHQkFGcm9tQ29sb3IoY3IsIHN0cm9rZUNvbG9yKTsKKyAgICAgICAgY2Fpcm9f
c2V0X2xpbmVfd2lkdGgoY3IsIHN0cm9rZVRoaWNrbmVzcyk7CiAgICAgICAgIGNhaXJvX3N0cm9r
ZShjcik7CiAgICAgfSBlbHNlCiAgICAgICAgIGNhaXJvX25ld19wYXRoKGNyKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0NhaXJvT3BlcmF0aW9u
cy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vQ2Fpcm9PcGVyYXRp
b25zLmgKaW5kZXggMGJhOTFmYmMxNjdjYjc2YTRjMTcxOTgzZjBjMGIyMzQ5ZDQ1YjFmYS4uMDI2
YjgwYjliOGE0ZjY2NmQyM2JmMTMwMWQzNzVkOGVjZjM5ZjMzMyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vQ2Fpcm9PcGVyYXRpb25zLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vQ2Fpcm9PcGVyYXRpb25zLmgK
QEAgLTEzNCwxNiArMTM0LDE2IEBAIHZvaWQgc3Ryb2tlUmVjdChQbGF0Zm9ybUNvbnRleHRDYWly
byYsIGNvbnN0IEZsb2F0UmVjdCYsIGZsb2F0LCBjb25zdCBTdHJva2VTb3VyCiB2b2lkIHN0cm9r
ZVBhdGgoUGxhdGZvcm1Db250ZXh0Q2Fpcm8mLCBjb25zdCBQYXRoJiwgY29uc3QgU3Ryb2tlU291
cmNlJiwgR3JhcGhpY3NDb250ZXh0Jik7CiB2b2lkIGNsZWFyUmVjdChQbGF0Zm9ybUNvbnRleHRD
YWlybyYsIGNvbnN0IEZsb2F0UmVjdCYpOwogCi12b2lkIGRyYXdHbHlwaHMoUGxhdGZvcm1Db250
ZXh0Q2Fpcm8mLCBjb25zdCBHcmFwaGljc0NvbnRleHRTdGF0ZSYsIGNvbnN0IEZpbGxTb3VyY2Um
LCBjb25zdCBTdHJva2VTb3VyY2UmLCBjb25zdCBTaGFkb3dCbHVyVXNhZ2UmLCBjb25zdCBGbG9h
dFBvaW50JiwgY2Fpcm9fc2NhbGVkX2ZvbnRfdCosIGRvdWJsZSwgY29uc3QgVmVjdG9yPGNhaXJv
X2dseXBoX3Q+JiwgZmxvYXQsIEdyYXBoaWNzQ29udGV4dCYpOwordm9pZCBkcmF3R2x5cGhzKFBs
YXRmb3JtQ29udGV4dENhaXJvJiwgY29uc3QgRmlsbFNvdXJjZSYsIGNvbnN0IFN0cm9rZVNvdXJj
ZSYsIGNvbnN0IFNoYWRvd0JsdXJVc2FnZSYsIGNvbnN0IEZsb2F0UG9pbnQmLCBjYWlyb19zY2Fs
ZWRfZm9udF90KiwgZG91YmxlLCBjb25zdCBWZWN0b3I8Y2Fpcm9fZ2x5cGhfdD4mLCBmbG9hdCwg
VGV4dERyYXdpbmdNb2RlRmxhZ3MsIGZsb2F0LCBjb25zdCBGbG9hdFNpemUmLCBjb25zdCBDb2xv
ciYsIEdyYXBoaWNzQ29udGV4dCYpOwogCiB2b2lkIGRyYXdOYXRpdmVJbWFnZShQbGF0Zm9ybUNv
bnRleHRDYWlybyYsIGNhaXJvX3N1cmZhY2VfdCosIGNvbnN0IEZsb2F0UmVjdCYsIGNvbnN0IEZs
b2F0UmVjdCYsIENvbXBvc2l0ZU9wZXJhdG9yLCBCbGVuZE1vZGUsIEltYWdlT3JpZW50YXRpb24s
IEdyYXBoaWNzQ29udGV4dCYpOwogdm9pZCBkcmF3UGF0dGVybihQbGF0Zm9ybUNvbnRleHRDYWly
byYsIGNhaXJvX3N1cmZhY2VfdCosIGNvbnN0IEludFNpemUmLCBjb25zdCBGbG9hdFJlY3QmLCBj
b25zdCBGbG9hdFJlY3QmLCBjb25zdCBBZmZpbmVUcmFuc2Zvcm0mLCBjb25zdCBGbG9hdFBvaW50
JiwgQ29tcG9zaXRlT3BlcmF0b3IsIEJsZW5kTW9kZSk7CiAKLXZvaWQgZHJhd1JlY3QoUGxhdGZv
cm1Db250ZXh0Q2Fpcm8mLCBjb25zdCBGbG9hdFJlY3QmLCBmbG9hdCwgY29uc3QgR3JhcGhpY3ND
b250ZXh0U3RhdGUmKTsKLXZvaWQgZHJhd0xpbmUoUGxhdGZvcm1Db250ZXh0Q2Fpcm8mLCBjb25z
dCBGbG9hdFBvaW50JiwgY29uc3QgRmxvYXRQb2ludCYsIGNvbnN0IEdyYXBoaWNzQ29udGV4dFN0
YXRlJik7Cit2b2lkIGRyYXdSZWN0KFBsYXRmb3JtQ29udGV4dENhaXJvJiwgY29uc3QgRmxvYXRS
ZWN0JiwgZmxvYXQsIGNvbnN0IENvbG9yJiwgU3Ryb2tlU3R5bGUsIGNvbnN0IENvbG9yJik7Cit2
b2lkIGRyYXdMaW5lKFBsYXRmb3JtQ29udGV4dENhaXJvJiwgY29uc3QgRmxvYXRQb2ludCYsIGNv
bnN0IEZsb2F0UG9pbnQmLCBTdHJva2VTdHlsZSwgY29uc3QgQ29sb3ImLCBmbG9hdCwgYm9vbCk7
CiB2b2lkIGRyYXdMaW5lc0ZvclRleHQoUGxhdGZvcm1Db250ZXh0Q2Fpcm8mLCBjb25zdCBGbG9h
dFBvaW50JiwgY29uc3QgRGFzaEFycmF5JiwgYm9vbCwgYm9vbCwgY29uc3QgQ29sb3ImLCBmbG9h
dCk7CiB2b2lkIGRyYXdMaW5lRm9yRG9jdW1lbnRNYXJrZXIoUGxhdGZvcm1Db250ZXh0Q2Fpcm8m
LCBjb25zdCBGbG9hdFBvaW50JiwgZmxvYXQsIEdyYXBoaWNzQ29udGV4dDo6RG9jdW1lbnRNYXJr
ZXJMaW5lU3R5bGUpOwotdm9pZCBkcmF3RWxsaXBzZShQbGF0Zm9ybUNvbnRleHRDYWlybyYsIGNv
bnN0IEZsb2F0UmVjdCYsIGNvbnN0IEdyYXBoaWNzQ29udGV4dFN0YXRlJik7Cit2b2lkIGRyYXdF
bGxpcHNlKFBsYXRmb3JtQ29udGV4dENhaXJvJiwgY29uc3QgRmxvYXRSZWN0JiwgY29uc3QgQ29s
b3ImLCBTdHJva2VTdHlsZSwgY29uc3QgQ29sb3ImLCBmbG9hdCk7CiAKIHZvaWQgZHJhd0ZvY3Vz
UmluZyhQbGF0Zm9ybUNvbnRleHRDYWlybyYsIGNvbnN0IFBhdGgmLCBmbG9hdCwgY29uc3QgQ29s
b3ImKTsKIHZvaWQgZHJhd0ZvY3VzUmluZyhQbGF0Zm9ybUNvbnRleHRDYWlybyYsIGNvbnN0IFZl
Y3RvcjxGbG9hdFJlY3Q+JiwgZmxvYXQsIGNvbnN0IENvbG9yJik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9Gb250Q2Fpcm8uY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vRm9udENhaXJvLmNwcAppbmRleCBlNWU2
Y2ZkYmE5MGM5YjJjMDMyMDFmN2I5NmVhNjM0Y2IxYzZlZDNmLi41MWNjZTU5ZGUyY2YzZDk0NzJh
YTVmNGM1MzgzYjhlOGEyMzc4YWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jYWlyby9Gb250Q2Fpcm8uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NhaXJvL0ZvbnRDYWlyby5jcHAKQEAgLTcyLDcgKzcyLDkgQEAgdm9pZCBG
b250Q2FzY2FkZTo6ZHJhd0dseXBocyhHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEZv
bnQmIGZvbnQsIGNvbnN0IEcKIAogICAgIEFTU0VSVChjb250ZXh0Lmhhc1BsYXRmb3JtQ29udGV4
dCgpKTsKICAgICBhdXRvJiBzdGF0ZSA9IGNvbnRleHQuc3RhdGUoKTsKLSAgICBDYWlybzo6ZHJh
d0dseXBocygqY29udGV4dC5wbGF0Zm9ybUNvbnRleHQoKSwgc3RhdGUsIENhaXJvOjpGaWxsU291
cmNlKHN0YXRlKSwgQ2Fpcm86OlN0cm9rZVNvdXJjZShzdGF0ZSksIENhaXJvOjpTaGFkb3dCbHVy
VXNhZ2Uoc3RhdGUpLCBwb2ludCwgc2NhbGVkRm9udCwgc3ludGhldGljQm9sZE9mZnNldCwgZ2x5
cGhzLCB4T2Zmc2V0LCBjb250ZXh0KTsKKyAgICBDYWlybzo6ZHJhd0dseXBocygqY29udGV4dC5w
bGF0Zm9ybUNvbnRleHQoKSwgQ2Fpcm86OkZpbGxTb3VyY2Uoc3RhdGUpLCBDYWlybzo6U3Ryb2tl
U291cmNlKHN0YXRlKSwKKyAgICAgICAgQ2Fpcm86OlNoYWRvd0JsdXJVc2FnZShzdGF0ZSksIHBv
aW50LCBzY2FsZWRGb250LCBzeW50aGV0aWNCb2xkT2Zmc2V0LCBnbHlwaHMsIHhPZmZzZXQsCisg
ICAgICAgIHN0YXRlLnRleHREcmF3aW5nTW9kZSwgc3RhdGUuc3Ryb2tlVGhpY2tuZXNzLCBzdGF0
ZS5zaGFkb3dPZmZzZXQsIHN0YXRlLnNoYWRvd0NvbG9yLCBjb250ZXh0KTsKIH0KIAogI2lmIEVO
QUJMRShDU1MzX1RFWFRfREVDT1JBVElPTl9TS0lQX0lOSykKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dENhaXJvLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dENh
aXJvLmNwcAppbmRleCA1NTRlNDNkOWFiZWNmOWViNjNlZjEyNjljNjZkNzk2YmY5NWQ0YWJjLi5h
YzY0OGIxNzZhNjljMTlmMzRmZTFiMjE2MWZjYjljOWRlMTIyYjIwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRDYWlyby5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3ND
b250ZXh0Q2Fpcm8uY3BwCkBAIC0xMjcsNyArMTI3LDggQEAgdm9pZCBHcmFwaGljc0NvbnRleHQ6
OmRyYXdSZWN0KGNvbnN0IEZsb2F0UmVjdCYgcmVjdCwgZmxvYXQgYm9yZGVyVGhpY2tuZXNzKQog
CiAgICAgQVNTRVJUKCFyZWN0LmlzRW1wdHkoKSk7CiAgICAgQVNTRVJUKGhhc1BsYXRmb3JtQ29u
dGV4dCgpKTsKLSAgICBDYWlybzo6ZHJhd1JlY3QoKnBsYXRmb3JtQ29udGV4dCgpLCByZWN0LCBi
b3JkZXJUaGlja25lc3MsIHN0YXRlKCkpOworICAgIGF1dG8mIHN0YXRlID0gdGhpcy0+c3RhdGUo
KTsKKyAgICBDYWlybzo6ZHJhd1JlY3QoKnBsYXRmb3JtQ29udGV4dCgpLCByZWN0LCBib3JkZXJU
aGlja25lc3MsIHN0YXRlLmZpbGxDb2xvciwgc3RhdGUuc3Ryb2tlU3R5bGUsIHN0YXRlLnN0cm9r
ZUNvbG9yKTsKIH0KIAogdm9pZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdOYXRpdmVJbWFnZShjb25z
dCBOYXRpdmVJbWFnZVB0ciYgaW1hZ2UsIGNvbnN0IEZsb2F0U2l6ZSYgaW1hZ2VTaXplLCBjb25z
dCBGbG9hdFJlY3QmIGRlc3RSZWN0LCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIENvbXBvc2l0
ZU9wZXJhdG9yIGNvbXBvc2l0ZU9wZXJhdG9yLCBCbGVuZE1vZGUgYmxlbmRNb2RlLCBJbWFnZU9y
aWVudGF0aW9uIG9yaWVudGF0aW9uKQpAQCAtMTU5LDcgKzE2MCw4IEBAIHZvaWQgR3JhcGhpY3ND
b250ZXh0OjpkcmF3TGluZShjb25zdCBGbG9hdFBvaW50JiBwb2ludDEsIGNvbnN0IEZsb2F0UG9p
bnQmIHBvaW50CiAgICAgfQogCiAgICAgQVNTRVJUKGhhc1BsYXRmb3JtQ29udGV4dCgpKTsKLSAg
ICBDYWlybzo6ZHJhd0xpbmUoKnBsYXRmb3JtQ29udGV4dCgpLCBwb2ludDEsIHBvaW50Miwgc3Rh
dGUoKSk7CisgICAgYXV0byYgc3RhdGUgPSB0aGlzLT5zdGF0ZSgpOworICAgIENhaXJvOjpkcmF3
TGluZSgqcGxhdGZvcm1Db250ZXh0KCksIHBvaW50MSwgcG9pbnQyLCBzdGF0ZS5zdHJva2VTdHls
ZSwgc3RhdGUuc3Ryb2tlQ29sb3IsIHN0YXRlLnN0cm9rZVRoaWNrbmVzcywgc3RhdGUuc2hvdWxk
QW50aWFsaWFzKTsKIH0KIAogLy8gVGhpcyBtZXRob2QgaXMgb25seSB1c2VkIHRvIGRyYXcgdGhl
IGxpdHRsZSBjaXJjbGVzIHVzZWQgaW4gbGlzdHMuCkBAIC0xNzQsNyArMTc2LDggQEAgdm9pZCBH
cmFwaGljc0NvbnRleHQ6OmRyYXdFbGxpcHNlKGNvbnN0IEZsb2F0UmVjdCYgcmVjdCkKICAgICB9
CiAKICAgICBBU1NFUlQoaGFzUGxhdGZvcm1Db250ZXh0KCkpOwotICAgIENhaXJvOjpkcmF3RWxs
aXBzZSgqcGxhdGZvcm1Db250ZXh0KCksIHJlY3QsIHN0YXRlKCkpOworICAgIGF1dG8mIHN0YXRl
ID0gdGhpcy0+c3RhdGUoKTsKKyAgICBDYWlybzo6ZHJhd0VsbGlwc2UoKnBsYXRmb3JtQ29udGV4
dCgpLCByZWN0LCBzdGF0ZS5maWxsQ29sb3IsIHN0YXRlLnN0cm9rZVN0eWxlLCBzdGF0ZS5zdHJv
a2VDb2xvciwgc3RhdGUuc3Ryb2tlVGhpY2tuZXNzKTsKIH0KIAogdm9pZCBHcmFwaGljc0NvbnRl
eHQ6OmZpbGxQYXRoKGNvbnN0IFBhdGgmIHBhdGgpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>