<?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>215313</bug_id>
          
          <creation_ts>2020-08-09 03:08:50 -0700</creation_ts>
          <short_desc>Stop calculating FontCascade::m_requiresShaping unnecessarily</short_desc>
          <delta_ts>2020-08-16 03:09:17 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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>
          <dependson>215318</dependson>
          <blocked>206208</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1678963</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2020-08-09 03:08:50 -0700</bug_when>
    <thetext>Stop calculating FontCascade::m_requiresShaping unnecessarily</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1678964</commentid>
    <comment_count>1</comment_count>
      <attachid>406267</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2020-08-09 03:12:27 -0700</bug_when>
    <thetext>Created attachment 406267
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1679021</commentid>
    <comment_count>2</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2020-08-10 00:31:02 -0700</bug_when>
    <thetext>Windows is showing failures because shaping is off by default on Windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1680670</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-08-16 03:09:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/67175376&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406267</attachid>
            <date>2020-08-09 03:12:27 -0700</date>
            <delta_ts>2020-08-09 03:12:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215313-20200809031226.patch</filename>
            <type>text/plain</type>
            <size>17017</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1NDE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2IyNWFkYWFlNmViOTYy
ODZjZTg2MmI3YzNkOWQ5OGEwZGEyNDY0Ni4uMzI0YzFkMzhhNzAyOWZlZTY4ODc4Nzk5Y2UyYWYw
ZjcyMjRiODZhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDIwLTA4LTA5ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgU3RvcCBjYWxj
dWxhdGluZyBGb250Q2FzY2FkZTo6bV9yZXF1aXJlc1NoYXBpbmcgdW5uZWNlc3NhcmlseQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1MzEzCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRXZlciBzaW5jZSBy
MjY1NDEzLCB3ZSBhbHdheXMgcGVyZm9ybSBfc29tZV8gc2hhcGluZy4KKyAgICAgICAgVGhlcmVm
b3JlLCBGb250Q2FzY2FkZTo6bV9yZXF1aXJlc1NoYXBpbmcgc2hvdWxkIGFsd2F5cyBiZSB0cnVl
LgorICAgICAgICBTbywgdGhlcmUncyBubyByZWFzb24gdG8gY29tcHV0ZSBpdCwgdGhlbjsgd2Ug
Y2FuIGp1c3QgYXNzdW1lIGl0IHdpbGwganVzdCBiZSB0cnVlLgorCisgICAgICAgIE5vIG5ldyB0
ZXN0cyBiZWNhdXNlIHRoZXJlIGlzIG5vIGJlaGF2aW9yIGNoYW5nZS4KKworICAgICAgICAqIGxh
eW91dC9pbmxpbmVmb3JtYXR0aW5nL3RleHQvVGV4dFV0aWwuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6TGF5b3V0OjpUZXh0VXRpbDo6d2lkdGgpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L0ZvbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udDo6YXBwbHlUcmFuc2Zvcm1zIGNvbnN0
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250Lmg6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udENhc2NhZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2Nh
ZGU6OkZvbnRDYXNjYWRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDYXNjYWRlOjpvcGVyYXRv
cj0pOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhc2NhZGU6OnVwZGF0ZSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpGb250Q2FzY2FkZTo6ZGlzcGxheUxpc3RGb3JUZXh0UnVuIGNvbnN0KToK
KyAgICAgICAgKFdlYkNvcmU6OkZvbnRDYXNjYWRlOjp3aWR0aCBjb25zdCk6CisgICAgICAgIChX
ZWJDb3JlOjpGb250Q2FzY2FkZTo6d2lkdGhGb3JTaW1wbGVUZXh0IGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OkZvbnRDYXNjYWRlOjpjb2RlUGF0aCBjb25zdCk6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udENhc2NhZGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDYXNjYWRl
OjplbmFibGVLZXJuaW5nIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDYXNjYWRlOjpy
ZXF1aXJlc1NoYXBpbmcgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6Rm9udENh
c2NhZGU6OmNvbXB1dGVSZXF1aXJlc1NoYXBpbmcgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL1dpZHRoQ2FjaGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OldpZHRo
Q2FjaGU6OmFkZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvV2lkdGhJdGVyYXRvci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpXaWR0aEl0ZXJhdG9yOjpXaWR0aEl0ZXJhdG9yKToKKyAg
ICAgICAgKFdlYkNvcmU6OldpZHRoSXRlcmF0b3I6OmFwcGx5Rm9udFRyYW5zZm9ybXMpOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL1dpZHRoSXRlcmF0b3IuaDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q29jb2EubW06CisgICAgICAgIChXZWJDb3JlOjpGb250
OjphcHBseVRyYW5zZm9ybXMgY29uc3QpOgorICAgICAgICAqIHJlbmRlcmluZy9TaW1wbGVMaW5l
TGF5b3V0VGV4dEZyYWdtZW50SXRlcmF0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2ltcGxl
TGluZUxheW91dDo6VGV4dEZyYWdtZW50SXRlcmF0b3I6OlN0eWxlOjpTdHlsZSk6CisgICAgICAg
IChXZWJDb3JlOjpTaW1wbGVMaW5lTGF5b3V0OjpUZXh0RnJhZ21lbnRJdGVyYXRvcjo6dGV4dFdp
ZHRoIGNvbnN0KToKKyAgICAgICAgKiByZW5kZXJpbmcvU2ltcGxlTGluZUxheW91dFRleHRGcmFn
bWVudEl0ZXJhdG9yLmg6CisKIDIwMjAtMDgtMDggIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZp
ZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBVcGRhdGUgT3JpZ2luYWxBZHZhbmNlc0ZvckNoYXJh
Y3RlclRyZWF0ZWRBc1NwYWNlIHRvIHdvcmsgY29ycmVjdGx5IGluIHRoZSBwcmVzZW5jZSBvZiBp
bnNlcnRlZCBvciByZW1vdmVkIGdseXBocwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbGF5
b3V0L2lubGluZWZvcm1hdHRpbmcvdGV4dC9UZXh0VXRpbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9s
YXlvdXQvaW5saW5lZm9ybWF0dGluZy90ZXh0L1RleHRVdGlsLmNwcAppbmRleCBhOTk1YzE2NzIy
NThiNDMzMDQyNWEzODY0NGRiZmVhNTYwOTZjYTdmLi43MWVjZTkyYjE2NTg1ZmY3YWE4MDhhMjNm
ZTYzNDBhZjViOTI3N2JlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQvaW5saW5l
Zm9ybWF0dGluZy90ZXh0L1RleHRVdGlsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sYXlvdXQv
aW5saW5lZm9ybWF0dGluZy90ZXh0L1RleHRVdGlsLmNwcApAQCAtNTcsOCArNTcsNyBAQCBJbmxp
bmVMYXlvdXRVbml0IFRleHRVdGlsOjp3aWR0aChjb25zdCBJbmxpbmVUZXh0Qm94JiBpbmxpbmVU
ZXh0Qm94LCB1bnNpZ25lZCBmcgogCiAgICAgYXV0byB0ZXh0ID0gaW5saW5lVGV4dEJveC5jb250
ZW50KCk7CiAgICAgQVNTRVJUKHRvIDw9IHRleHQubGVuZ3RoKCkpOwotICAgIGF1dG8gaGFzS2Vy
bmluZ09yTGlnYXR1cmVzID0gZm9udC5lbmFibGVLZXJuaW5nKCkgfHwgZm9udC5yZXF1aXJlc1No
YXBpbmcoKTsKLSAgICBhdXRvIG1lYXN1cmVXaXRoRW5kU3BhY2UgPSBoYXNLZXJuaW5nT3JMaWdh
dHVyZXMgJiYgdG8gPCB0ZXh0Lmxlbmd0aCgpICYmIHRleHRbdG9dID09ICcgJzsKKyAgICBhdXRv
IG1lYXN1cmVXaXRoRW5kU3BhY2UgPSB0byA8IHRleHQubGVuZ3RoKCkgJiYgdGV4dFt0b10gPT0g
JyAnOwogICAgIGlmIChtZWFzdXJlV2l0aEVuZFNwYWNlKQogICAgICAgICArK3RvOwogICAgIGZs
b2F0IHdpZHRoID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL0ZvbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5jcHAK
aW5kZXggOWFlNjkwNjhmM2ViZmZmYTljOGU0MDU4ZDUxYTgzNGQ4ZGEwN2YwMi4uZWIxZGY2NzZk
MGRiODJmN2RhNzg5NTJhYzhlMDhkYzI1NjViNTY5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udC5jcHAKQEAgLTUxMiw3ICs1MTIsNyBAQCBSZWZQdHI8Rm9udD4gRm9u
dDo6Y3JlYXRlU2NhbGVkRm9udChjb25zdCBGb250RGVzY3JpcHRpb24mIGZvbnREZXNjcmlwdGlv
biwgZmxvYQogfQogCiAjaWYgIVBMQVRGT1JNKENPQ09BKQotdm9pZCBGb250OjphcHBseVRyYW5z
Zm9ybXMoR2x5cGhCdWZmZXImLCB1bnNpZ25lZCwgYm9vbCwgYm9vbCwgY29uc3QgQXRvbVN0cmlu
ZyYpIGNvbnN0Cit2b2lkIEZvbnQ6OmFwcGx5VHJhbnNmb3JtcyhHbHlwaEJ1ZmZlciYsIHVuc2ln
bmVkLCBib29sLCBjb25zdCBBdG9tU3RyaW5nJikgY29uc3QKIHsKIH0KICNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCmluZGV4IGVhZjlkYWM0MjBhYWZlMDJiY2Fm
NzA3YjdlZGNiNGRkZTMzZDk0YjcuLjIxM2VlODNjZGVmNmExYjY1ODY4ZGUwOGJmYjlkMGQ2Yjk3
NjE0ZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmgKQEAgLTIwNyw3
ICsyMDcsNyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogICAgIGJvb2wgY2FuUmVuZGVyQ29tYmluaW5n
Q2hhcmFjdGVyU2VxdWVuY2UoY29uc3QgVUNoYXIqLCBzaXplX3QpIGNvbnN0OwotICAgIHZvaWQg
YXBwbHlUcmFuc2Zvcm1zKEdseXBoQnVmZmVyJiwgdW5zaWduZWQgYmVnaW5uaW5nSW5kZXgsIGJv
b2wgZW5hYmxlS2VybmluZywgYm9vbCByZXF1aXJlc1NoYXBpbmcsIGNvbnN0IEF0b21TdHJpbmcm
IGxvY2FsZSkgY29uc3Q7CisgICAgdm9pZCBhcHBseVRyYW5zZm9ybXMoR2x5cGhCdWZmZXImLCB1
bnNpZ25lZCBiZWdpbm5pbmdJbmRleCwgYm9vbCBlbmFibGVLZXJuaW5nLCBjb25zdCBBdG9tU3Ry
aW5nJiBsb2NhbGUpIGNvbnN0OwogCiAjaWYgUExBVEZPUk0oV0lOKQogICAgIFNDUklQVF9GT05U
UFJPUEVSVElFUyogc2NyaXB0Rm9udFByb3BlcnRpZXMoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRlLmNwcAppbmRleCA4NGY2YjgwYjFh
ZjJlMjc0MTg3NTAwNDYwYTg5MGIwM2YzYWI3NGQ5Li42MTllYzUzNWRkNDhiNzE3OWI2YThlMzlk
NjBhYzlhNDYxZjkwMDMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9Gb250Q2FzY2FkZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvRm9udENhc2NhZGUuY3BwCkBAIC04Myw3ICs4Myw2IEBAIEZvbnRDYXNjYWRlOjpGb250Q2Fz
Y2FkZShGb250Q2FzY2FkZURlc2NyaXB0aW9uJiYgZmQsIGZsb2F0IGxldHRlclNwYWNpbmcsIGZs
b2F0CiAgICAgLCBtX3dvcmRTcGFjaW5nKHdvcmRTcGFjaW5nKQogICAgICwgbV91c2VCYWNrc2xh
c2hBc1llblN5bWJvbCh1c2VCYWNrc2xhc2hBc1llblNpZ25Gb3JGYW1pbHkobV9mb250RGVzY3Jp
cHRpb24uZmlyc3RGYW1pbHkoKSkpCiAgICAgLCBtX2VuYWJsZUtlcm5pbmcoY29tcHV0ZUVuYWJs
ZUtlcm5pbmcoKSkKLSAgICAsIG1fcmVxdWlyZXNTaGFwaW5nKGNvbXB1dGVSZXF1aXJlc1NoYXBp
bmcoKSkKIHsKIH0KIApAQCAtOTEsNyArOTAsNiBAQCBGb250Q2FzY2FkZTo6Rm9udENhc2NhZGUo
Rm9udENhc2NhZGVEZXNjcmlwdGlvbiYmIGZkLCBmbG9hdCBsZXR0ZXJTcGFjaW5nLCBmbG9hdAog
Rm9udENhc2NhZGU6OkZvbnRDYXNjYWRlKGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEmIGZvbnREYXRh
LCBGb250U21vb3RoaW5nTW9kZSBmb250U21vb3RoaW5nTW9kZSkKICAgICA6IG1fZm9udHMoRm9u
dENhc2NhZGVGb250czo6Y3JlYXRlRm9yUGxhdGZvcm1Gb250KGZvbnREYXRhKSkKICAgICAsIG1f
ZW5hYmxlS2VybmluZyhjb21wdXRlRW5hYmxlS2VybmluZygpKQotICAgICwgbV9yZXF1aXJlc1No
YXBpbmcoY29tcHV0ZVJlcXVpcmVzU2hhcGluZygpKQogewogICAgIG1fZm9udERlc2NyaXB0aW9u
LnNldEZvbnRTbW9vdGhpbmcoZm9udFNtb290aGluZ01vZGUpOwogI2lmIFBMQVRGT1JNKElPU19G
QU1JTFkpCkBAIC0xMDksNyArMTA3LDYgQEAgRm9udENhc2NhZGU6OkZvbnRDYXNjYWRlKGNvbnN0
IEZvbnRDYXNjYWRlJiBvdGhlcikKICAgICAsIG1fd29yZFNwYWNpbmcob3RoZXIubV93b3JkU3Bh
Y2luZykKICAgICAsIG1fdXNlQmFja3NsYXNoQXNZZW5TeW1ib2wob3RoZXIubV91c2VCYWNrc2xh
c2hBc1llblN5bWJvbCkKICAgICAsIG1fZW5hYmxlS2VybmluZyhjb21wdXRlRW5hYmxlS2Vybmlu
ZygpKQotICAgICwgbV9yZXF1aXJlc1NoYXBpbmcoY29tcHV0ZVJlcXVpcmVzU2hhcGluZygpKQog
ewogfQogCkBAIC0xMjEsNyArMTE4LDYgQEAgRm9udENhc2NhZGUmIEZvbnRDYXNjYWRlOjpvcGVy
YXRvcj0oY29uc3QgRm9udENhc2NhZGUmIG90aGVyKQogICAgIG1fd29yZFNwYWNpbmcgPSBvdGhl
ci5tX3dvcmRTcGFjaW5nOwogICAgIG1fdXNlQmFja3NsYXNoQXNZZW5TeW1ib2wgPSBvdGhlci5t
X3VzZUJhY2tzbGFzaEFzWWVuU3ltYm9sOwogICAgIG1fZW5hYmxlS2VybmluZyA9IG90aGVyLm1f
ZW5hYmxlS2VybmluZzsKLSAgICBtX3JlcXVpcmVzU2hhcGluZyA9IG90aGVyLm1fcmVxdWlyZXNT
aGFwaW5nOwogICAgIHJldHVybiAqdGhpczsKIH0KIApAQCAtMjgyLDcgKzI3OCw2IEBAIHZvaWQg
Rm9udENhc2NhZGU6OnVwZGF0ZShSZWZQdHI8Rm9udFNlbGVjdG9yPiYmIGZvbnRTZWxlY3Rvcikg
Y29uc3QKICAgICBtX2ZvbnRzID0gcmV0cmlldmVPckFkZENhY2hlZEZvbnRzKG1fZm9udERlc2Ny
aXB0aW9uLCBXVEZNb3ZlKGZvbnRTZWxlY3RvcikpOwogICAgIG1fdXNlQmFja3NsYXNoQXNZZW5T
eW1ib2wgPSB1c2VCYWNrc2xhc2hBc1llblNpZ25Gb3JGYW1pbHkoZmlyc3RGYW1pbHkoKSk7CiAg
ICAgbV9lbmFibGVLZXJuaW5nID0gY29tcHV0ZUVuYWJsZUtlcm5pbmcoKTsKLSAgICBtX3JlcXVp
cmVzU2hhcGluZyA9IGNvbXB1dGVSZXF1aXJlc1NoYXBpbmcoKTsKIH0KIAogR2x5cGhCdWZmZXIg
Rm9udENhc2NhZGU6OmxheW91dFRleHQoQ29kZVBhdGggY29kZVBhdGhUb1VzZSwgY29uc3QgVGV4
dFJ1biYgcnVuLCB1bnNpZ25lZCBmcm9tLCB1bnNpZ25lZCB0bywgRm9yVGV4dEVtcGhhc2lzT3JO
b3QgZm9yVGV4dEVtcGhhc2lzKSBjb25zdApAQCAtMzMxLDcgKzMyNiw3IEBAIHN0ZDo6dW5pcXVl
X3B0cjxEaXNwbGF5TGlzdDo6RGlzcGxheUxpc3Q+IEZvbnRDYXNjYWRlOjpkaXNwbGF5TGlzdEZv
clRleHRSdW4oR3JhCiAgICAgCiAgICAgLy8gRklYTUU6IFVzZSB0aGUgZmFzdCBjb2RlIHBhdGgg
b25jZSBpdCBoYW5kbGVzIHBhcnRpYWwgcnVucyB3aXRoIGtlcm5pbmcgYW5kIGxpZ2F0dXJlcy4g
U2VlIGh0dHA6Ly93ZWJraXQub3JnL2IvMTAwMDUwCiAgICAgQ29kZVBhdGggY29kZVBhdGhUb1Vz
ZSA9IGNvZGVQYXRoKHJ1bik7Ci0gICAgaWYgKGNvZGVQYXRoVG9Vc2UgIT0gQ29tcGxleCAmJiAo
ZW5hYmxlS2VybmluZygpIHx8IHJlcXVpcmVzU2hhcGluZygpKSAmJiAoZnJvbSB8fCBkZXN0aW5h
dGlvbiAhPSBydW4ubGVuZ3RoKCkpKQorICAgIGlmIChjb2RlUGF0aFRvVXNlICE9IENvbXBsZXgg
JiYgKGZyb20gfHwgZGVzdGluYXRpb24gIT0gcnVuLmxlbmd0aCgpKSkKICAgICAgICAgY29kZVBh
dGhUb1VzZSA9IENvbXBsZXg7CiAKICAgICBhdXRvIGdseXBoQnVmZmVyID0gbGF5b3V0VGV4dChj
b2RlUGF0aFRvVXNlLCBydW4sIGZyb20sIGRlc3RpbmF0aW9uKTsKQEAgLTQwNyw3ICs0MDIsNyBA
QCBmbG9hdCBGb250Q2FzY2FkZTo6d2lkdGgoY29uc3QgVGV4dFJ1biYgcnVuLCBIYXNoU2V0PGNv
bnN0IEZvbnQqPiogZmFsbGJhY2tGb250cwogICAgIH0KIAogICAgIGJvb2wgaGFzV29yZFNwYWNp
bmdPckxldHRlclNwYWNpbmcgPSB3b3JkU3BhY2luZygpIHx8IGxldHRlclNwYWNpbmcoKTsKLSAg
ICBmbG9hdCogY2FjaGVFbnRyeSA9IG1fZm9udHMtPndpZHRoQ2FjaGUoKS5hZGQocnVuLCBzdGQ6
Om51bWVyaWNfbGltaXRzPGZsb2F0Pjo6cXVpZXRfTmFOKCksIGVuYWJsZUtlcm5pbmcoKSB8fCBy
ZXF1aXJlc1NoYXBpbmcoKSwgaGFzV29yZFNwYWNpbmdPckxldHRlclNwYWNpbmcsIGdseXBoT3Zl
cmZsb3cpOworICAgIGZsb2F0KiBjYWNoZUVudHJ5ID0gbV9mb250cy0+d2lkdGhDYWNoZSgpLmFk
ZChydW4sIHN0ZDo6bnVtZXJpY19saW1pdHM8ZmxvYXQ+OjpxdWlldF9OYU4oKSwgaGFzV29yZFNw
YWNpbmdPckxldHRlclNwYWNpbmcsIGdseXBoT3ZlcmZsb3cpOwogICAgIGlmIChjYWNoZUVudHJ5
ICYmICFzdGQ6OmlzbmFuKCpjYWNoZUVudHJ5KSkKICAgICAgICAgcmV0dXJuICpjYWNoZUVudHJ5
OwogCkBAIC00NDUsNyArNDQwLDcgQEAgZmxvYXQgRm9udENhc2NhZGU6OndpZHRoRm9yU2ltcGxl
VGV4dChTdHJpbmdWaWV3IHRleHQpIGNvbnN0CiAgICAgICAgIGdseXBoQnVmZmVyLmFkZChnbHlw
aCwgZm9udCwgZ2x5cGhXaWR0aCwgaSk7CiAgICAgfQogCi0gICAgZm9udC5hcHBseVRyYW5zZm9y
bXMoZ2x5cGhCdWZmZXIsIDAsIGVuYWJsZUtlcm5pbmcoKSwgcmVxdWlyZXNTaGFwaW5nKCksIGZv
bnREZXNjcmlwdGlvbigpLmNvbXB1dGVkTG9jYWxlKCkpOworICAgIGZvbnQuYXBwbHlUcmFuc2Zv
cm1zKGdseXBoQnVmZmVyLCAwLCBlbmFibGVLZXJuaW5nKCksIGZvbnREZXNjcmlwdGlvbigpLmNv
bXB1dGVkTG9jYWxlKCkpOwogICAgIC8vIFRoaXMgaXMgbmVlZGVkIG9ubHkgdG8gbWF0Y2ggdGhl
IHJlc3VsdCBvZiB0aGUgc2xvdyBwYXRoLgogICAgIC8vIFNhbWUgZ2x5cGggd2lkdGhzIGJ1dCBk
aWZmZXJlbnQgZmxvYXRpbmcgcG9pbnQgYXJpdGhtZXRpYyBjYW4gcHJvZHVjZSBkaWZmZXJlbnQg
cnVuIHdpZHRoLgogICAgIGZsb2F0IHJ1bldpZHRoRGlmZmVyZW5jZVdpdGhUcmFuc2Zvcm1BcHBs
aWVkID0gLXJ1bldpZHRoOwpAQCAtNjE4LDcgKzYxMyw3IEBAIEZvbnRDYXNjYWRlOjpDb2RlUGF0
aCBGb250Q2FzY2FkZTo6Y29kZVBhdGgoY29uc3QgVGV4dFJ1biYgcnVuLCBPcHRpb25hbDx1bnNp
Z25lCiAKICNpZiAhVVNFKEZSRUVUWVBFKQogICAgIC8vIEZJWE1FOiBVc2UgdGhlIGZhc3QgY29k
ZSBwYXRoIG9uY2UgaXQgaGFuZGxlcyBwYXJ0aWFsIHJ1bnMgd2l0aCBrZXJuaW5nIGFuZCBsaWdh
dHVyZXMuIFNlZSBodHRwOi8vd2Via2l0Lm9yZy9iLzEwMDA1MAotICAgIGlmICgoZW5hYmxlS2Vy
bmluZygpIHx8IHJlcXVpcmVzU2hhcGluZygpKSAmJiAoZnJvbS52YWx1ZU9yKDApIHx8IHRvLnZh
bHVlT3IocnVuLmxlbmd0aCgpKSAhPSBydW4ubGVuZ3RoKCkpKQorICAgIGlmIChmcm9tLnZhbHVl
T3IoMCkgfHwgdG8udmFsdWVPcihydW4ubGVuZ3RoKCkpICE9IHJ1bi5sZW5ndGgoKSkKICAgICAg
ICAgcmV0dXJuIENvbXBsZXg7CiAjZWxzZQogICAgIFVOVVNFRF9QQVJBTShmcm9tKTsKQEAgLTYz
Myw3ICs2MjgsNyBAQCBGb250Q2FzY2FkZTo6Q29kZVBhdGggRm9udENhc2NhZGU6OmNvZGVQYXRo
KGNvbnN0IFRleHRSdW4mIHJ1biwgT3B0aW9uYWw8dW5zaWduZQogCiAjZWxzZQogCi0gICAgaWYg
KHJ1bi5sZW5ndGgoKSA+IDEgJiYgKGVuYWJsZUtlcm5pbmcoKSB8fCByZXF1aXJlc1NoYXBpbmco
KSkpCisgICAgaWYgKHJ1bi5sZW5ndGgoKSA+IDEpCiAgICAgICAgIHJldHVybiBDb21wbGV4Owog
I2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0Zv
bnRDYXNjYWRlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2Fk
ZS5oCmluZGV4IDlhZDNhZTRiZWYxMjFkNmQwMTdmMmI3MjU0NWRiY2Q2MWQyNTRhYmMuLmM2OWM1
N2QyODU5ZDljNTM2Y2I0YjYyMDZlNTZjMWFlZWRiZTk3NjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGUuaApAQCAtMTM1LDcgKzEzNSw2IEBAIHB1
YmxpYzoKICAgICBGb250UmVuZGVyaW5nTW9kZSByZW5kZXJpbmdNb2RlKCkgY29uc3QgeyByZXR1
cm4gbV9mb250RGVzY3JpcHRpb24ucmVuZGVyaW5nTW9kZSgpOyB9CiAKICAgICBib29sIGVuYWJs
ZUtlcm5pbmcoKSBjb25zdCB7IHJldHVybiBtX2VuYWJsZUtlcm5pbmc7IH0KLSAgICBib29sIHJl
cXVpcmVzU2hhcGluZygpIGNvbnN0IHsgcmV0dXJuIG1fcmVxdWlyZXNTaGFwaW5nOyB9CiAKICAg
ICBjb25zdCBBdG9tU3RyaW5nJiBmaXJzdEZhbWlseSgpIGNvbnN0IHsgcmV0dXJuIG1fZm9udERl
c2NyaXB0aW9uLmZpcnN0RmFtaWx5KCk7IH0KICAgICB1bnNpZ25lZCBmYW1pbHlDb3VudCgpIGNv
bnN0IHsgcmV0dXJuIG1fZm9udERlc2NyaXB0aW9uLmZhbWlseUNvdW50KCk7IH0KQEAgLTI5MSwx
NyArMjkwLDYgQEAgcHJpdmF0ZToKICAgICAgICAgcmV0dXJuIGFkdmFuY2VkVGV4dFJlbmRlcmlu
Z01vZGUoKTsKICAgICB9CiAKLSAgICBib29sIGNvbXB1dGVSZXF1aXJlc1NoYXBpbmcoKSBjb25z
dAotICAgIHsKLSNpZiBQTEFURk9STShDT0NPQSkgfHwgVVNFKEZSRUVUWVBFKQotICAgICAgICBp
ZiAoIW1fZm9udERlc2NyaXB0aW9uLnZhcmlhbnRTZXR0aW5ncygpLmlzQWxsTm9ybWFsKCkpCi0g
ICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgaWYgKG1fZm9udERlc2NyaXB0aW9uLmZl
YXR1cmVTZXR0aW5ncygpLnNpemUoKSkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotI2VuZGlm
Ci0gICAgICAgIHJldHVybiBhZHZhbmNlZFRleHRSZW5kZXJpbmdNb2RlKCk7Ci0gICAgfQotCiAg
ICAgc3RhdGljIGludCBzeW50aGV0aWNPYmxpcXVlQW5nbGUoKSB7IHJldHVybiAxNDsgfQogCiAj
aWYgUExBVEZPUk0oV0lOKSAmJiBVU0UoQ0cpCkBAIC0zMTksNyArMzA3LDYgQEAgcHJpdmF0ZToK
ICAgICBmbG9hdCBtX3dvcmRTcGFjaW5nIHsgMCB9OwogICAgIG11dGFibGUgYm9vbCBtX3VzZUJh
Y2tzbGFzaEFzWWVuU3ltYm9sIHsgZmFsc2UgfTsKICAgICBtdXRhYmxlIGJvb2wgbV9lbmFibGVL
ZXJuaW5nIHsgZmFsc2UgfTsgLy8gQ29tcHV0ZWQgZnJvbSBtX2ZvbnREZXNjcmlwdGlvbi4KLSAg
ICBtdXRhYmxlIGJvb2wgbV9yZXF1aXJlc1NoYXBpbmcgeyBmYWxzZSB9OyAvLyBDb21wdXRlZCBm
cm9tIG1fZm9udERlc2NyaXB0aW9uLgogfTsKIAogdm9pZCBpbnZhbGlkYXRlRm9udENhc2NhZGVD
YWNoZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV2lk
dGhDYWNoZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV2lkdGhDYWNoZS5o
CmluZGV4IDUyYTdiMDg2NmNkMDcwZDJkZGU4ODRlNDcyOGViMzRkODUzYTg3MzUuLjAyYzVhNGJl
OWQ5YjcwMzI0MmM3ODY1MDg4NjE1MmVjOGJjYWNhNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL1dpZHRoQ2FjaGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9XaWR0aENhY2hlLmgKQEAgLTEzMywxMyArMTMzLDEwIEBAIHB1Ymxp
YzoKICAgICAgICAgcmV0dXJuIGFkZFNsb3dDYXNlKHRleHQsIGVudHJ5KTsKICAgICB9CiAKLSAg
ICBmbG9hdCogYWRkKGNvbnN0IFRleHRSdW4mIHJ1biwgZmxvYXQgZW50cnksIGJvb2wgaGFzS2Vy
bmluZ09yTGlnYXR1cmVzLCBib29sIGhhc1dvcmRTcGFjaW5nT3JMZXR0ZXJTcGFjaW5nLCBHbHlw
aE92ZXJmbG93KiBnbHlwaE92ZXJmbG93KQorICAgIGZsb2F0KiBhZGQoY29uc3QgVGV4dFJ1biYg
cnVuLCBmbG9hdCBlbnRyeSwgYm9vbCBoYXNXb3JkU3BhY2luZ09yTGV0dGVyU3BhY2luZywgR2x5
cGhPdmVyZmxvdyogZ2x5cGhPdmVyZmxvdykKICAgICB7CiAgICAgICAgIGlmIChNZW1vcnlQcmVz
c3VyZUhhbmRsZXI6OnNpbmdsZXRvbigpLmlzVW5kZXJNZW1vcnlQcmVzc3VyZSgpKQogICAgICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAgIC8vIFRoZSB3aWR0aCBjYWNoZSBpcyBub3Qg
cmVhbGx5IHByb2ZpdGFibGUgdW5sZXNzIHdlJ3JlIGRvaW5nIGV4cGVuc2l2ZSBnbHlwaCB0cmFu
c2Zvcm1hdGlvbnMuCi0gICAgICAgIGlmICghaGFzS2VybmluZ09yTGlnYXR1cmVzKQotICAgICAg
ICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgICAgIC8vIFdvcmQgc3BhY2luZyBhbmQgbGV0dGVy
IHNwYWNpbmcgY2FuIGNoYW5nZSB0aGUgd2lkdGggb2YgYSB3b3JkLgogICAgICAgICBpZiAoaGFz
V29yZFNwYWNpbmdPckxldHRlclNwYWNpbmcpCiAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1dpZHRoSXRlcmF0
b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV2lkdGhJdGVyYXRvci5j
cHAKaW5kZXggN2ViMjdkNmQwOTFiNzU5OWZhOWI1NTU4ZmQ0OGJiYjZiMDVkNTgzMS4uZTg1ZTIw
ZTE5ZDk4M2ZhYThmM2VkNzM4NmE2ZjcwZGI0MzJjODk5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV2lkdGhJdGVyYXRvci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV2lkdGhJdGVyYXRvci5jcHAKQEAgLTQzLDcgKzQzLDYg
QEAgV2lkdGhJdGVyYXRvcjo6V2lkdGhJdGVyYXRvcihjb25zdCBGb250Q2FzY2FkZSYgZm9udCwg
Y29uc3QgVGV4dFJ1biYgcnVuLCBIYXNoU2UKICAgICAsIG1faXNBZnRlckV4cGFuc2lvbigocnVu
LmV4cGFuc2lvbkJlaGF2aW9yKCkgJiBMZWZ0RXhwYW5zaW9uTWFzaykgPT0gRm9yYmlkTGVmdEV4
cGFuc2lvbikKICAgICAsIG1fYWNjb3VudEZvckdseXBoQm91bmRzKGFjY291bnRGb3JHbHlwaEJv
dW5kcykKICAgICAsIG1fZW5hYmxlS2VybmluZyhmb250LmVuYWJsZUtlcm5pbmcoKSkKLSAgICAs
IG1fcmVxdWlyZXNTaGFwaW5nKGZvbnQucmVxdWlyZXNTaGFwaW5nKCkpCiAgICAgLCBtX2ZvclRl
eHRFbXBoYXNpcyhmb3JUZXh0RW1waGFzaXMpCiB7CiAgICAgaWYgKCFtX2V4cGFuc2lvbikKQEAg
LTEwNiw3ICsxMDUsNyBAQCBpbmxpbmUgZmxvYXQgV2lkdGhJdGVyYXRvcjo6YXBwbHlGb250VHJh
bnNmb3JtcyhHbHlwaEJ1ZmZlciYgZ2x5cGhCdWZmZXIsIGJvb2wgbAogICAgIGlmICghbHRyKQog
ICAgICAgICBnbHlwaEJ1ZmZlci5yZXZlcnNlKGxhc3RHbHlwaENvdW50LCBnbHlwaEJ1ZmZlclNp
emUgLSBsYXN0R2x5cGhDb3VudCk7CiAKLSAgICBmb250LmFwcGx5VHJhbnNmb3JtcyhnbHlwaEJ1
ZmZlciwgbGFzdEdseXBoQ291bnQsIG1fZW5hYmxlS2VybmluZywgbV9yZXF1aXJlc1NoYXBpbmcs
IG1fZm9udC5mb250RGVzY3JpcHRpb24oKS5jb21wdXRlZExvY2FsZSgpKTsKKyAgICBmb250LmFw
cGx5VHJhbnNmb3JtcyhnbHlwaEJ1ZmZlciwgbGFzdEdseXBoQ291bnQsIG1fZW5hYmxlS2Vybmlu
ZywgbV9mb250LmZvbnREZXNjcmlwdGlvbigpLmNvbXB1dGVkTG9jYWxlKCkpOwogICAgIGdseXBo
QnVmZmVyU2l6ZSA9IGdseXBoQnVmZmVyLnNpemUoKTsKIAogICAgIGZvciAodW5zaWduZWQgaSA9
IGxhc3RHbHlwaENvdW50OyBpIDwgZ2x5cGhCdWZmZXJTaXplOyArK2kpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9XaWR0aEl0ZXJhdG9yLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9XaWR0aEl0ZXJhdG9yLmgKaW5kZXggZmNiMGVjYjlj
MDQwODZjNTZjOGNkNzhmNjEyMGZiNjE5OGI0MTUxYS4uOTY1ZTMzODY4OGFkOTQ0NjMxMTc4NzIz
NDIyYmNiNDU2Yjg4YmM1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvV2lkdGhJdGVyYXRvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL1dpZHRoSXRlcmF0b3IuaApAQCAtNzgsNyArNzgsNiBAQCBwcml2YXRlOgogICAgIGJvb2wg
bV9pc0FmdGVyRXhwYW5zaW9uIHsgZmFsc2UgfTsKICAgICBib29sIG1fYWNjb3VudEZvckdseXBo
Qm91bmRzIHsgZmFsc2UgfTsKICAgICBib29sIG1fZW5hYmxlS2VybmluZyB7IGZhbHNlIH07Ci0g
ICAgYm9vbCBtX3JlcXVpcmVzU2hhcGluZyB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2ZvclRleHRF
bXBoYXNpcyB7IGZhbHNlIH07CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jb2NvYS9Gb250Q29jb2EubW0KaW5kZXggNjViNWUxNjQwYWRiNzI4NzhlMzNl
OGQ4OWRmOGY0Zjk1ZjlmMTI4ZC4uMzgwZDg4MjAyMWVkZjEwYTZhYTYwNjkxNTlkNjkxMmZmYmE4
ZjQ3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2Ev
Rm9udENvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29h
L0ZvbnRDb2NvYS5tbQpAQCAtNTQ0LDEwICs1NDQsOSBAQCBSZWZQdHI8Rm9udD4gRm9udDo6cGxh
dGZvcm1DcmVhdGVTY2FsZWRGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYsIGZsb2F0IHNjYWxl
RgogICAgIHJldHVybiBjcmVhdGVEZXJpdmF0aXZlRm9udChzY2FsZWRGb250LmdldCgpLCBzaXpl
LCBtX3BsYXRmb3JtRGF0YS5vcmllbnRhdGlvbigpLCBmb250VHJhaXRzLCBtX3BsYXRmb3JtRGF0
YS5zeW50aGV0aWNCb2xkKCksIG1fcGxhdGZvcm1EYXRhLnN5bnRoZXRpY09ibGlxdWUoKSk7CiB9
CiAKLXZvaWQgRm9udDo6YXBwbHlUcmFuc2Zvcm1zKEdseXBoQnVmZmVyJiBnbHlwaEJ1ZmZlciwg
dW5zaWduZWQgYmVnaW5uaW5nSW5kZXgsIGJvb2wgZW5hYmxlS2VybmluZywgYm9vbCByZXF1aXJl
c1NoYXBpbmcsIGNvbnN0IEF0b21TdHJpbmcmIGxvY2FsZSkgY29uc3QKK3ZvaWQgRm9udDo6YXBw
bHlUcmFuc2Zvcm1zKEdseXBoQnVmZmVyJiBnbHlwaEJ1ZmZlciwgdW5zaWduZWQgYmVnaW5uaW5n
SW5kZXgsIGJvb2wgZW5hYmxlS2VybmluZywgY29uc3QgQXRvbVN0cmluZyYgbG9jYWxlKSBjb25z
dAogewogICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgR2x5cGhCdWZmZXIgaW5pdGlhbCBhZHZhbmNl
LgotICAgIFVOVVNFRF9QQVJBTShyZXF1aXJlc1NoYXBpbmcpOwogICAgIENURm9udFRyYW5zZm9y
bU9wdGlvbnMgb3B0aW9ucyA9IChlbmFibGVLZXJuaW5nID8ga0NURm9udFRyYW5zZm9ybUFwcGx5
UG9zaXRpb25pbmcgOiAwKSB8IGtDVEZvbnRUcmFuc2Zvcm1BcHBseVNoYXBpbmc7CiAjaWYgVVNF
KENURk9OVFRSQU5TRk9STUdMWVBIU1dJVEhMQU5HVUFHRSkKICAgICBhdXRvIGhhbmRsZXIgPSBe
KENGUmFuZ2UgcmFuZ2UsIENHR2x5cGgqKiBuZXdHbHlwaHNQb2ludGVyLCBDR1NpemUqKiBuZXdB
ZHZhbmNlc1BvaW50ZXIpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9T
aW1wbGVMaW5lTGF5b3V0VGV4dEZyYWdtZW50SXRlcmF0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1NpbXBsZUxpbmVMYXlvdXRUZXh0RnJhZ21lbnRJdGVyYXRvci5jcHAKaW5kZXgg
MWUyN2Q3NDUxMzNhZjI1MzIzMzIwZDRhMjI3YzZkMmM5ZGZlYmQ3NC4uOTI2OGU4ZjI5NTI3ZmQy
ODA4OWFkYTg5MzIxNGM4NzhlYTQ0MDljYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1NpbXBsZUxpbmVMYXlvdXRUZXh0RnJhZ21lbnRJdGVyYXRvci5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1NpbXBsZUxpbmVMYXlvdXRUZXh0RnJhZ21lbnRJdGVyYXRv
ci5jcHAKQEAgLTM4LDcgKzM4LDYgQEAgbmFtZXNwYWNlIFNpbXBsZUxpbmVMYXlvdXQgewogVGV4
dEZyYWdtZW50SXRlcmF0b3I6OlN0eWxlOjpTdHlsZShjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUp
CiAgICAgOiBmb250KHN0eWxlLmZvbnRDYXNjYWRlKCkpCiAgICAgLCB0ZXh0QWxpZ24oc3R5bGUu
dGV4dEFsaWduKCkpCi0gICAgLCBoYXNLZXJuaW5nT3JMaWdhdHVyZXMoZm9udC5lbmFibGVLZXJu
aW5nKCkgfHwgZm9udC5yZXF1aXJlc1NoYXBpbmcoKSkKICAgICAsIGNvbGxhcHNlV2hpdGVzcGFj
ZShzdHlsZS5jb2xsYXBzZVdoaXRlU3BhY2UoKSkKICAgICAsIHByZXNlcnZlTmV3bGluZShzdHls
ZS5wcmVzZXJ2ZU5ld2xpbmUoKSkKICAgICAsIHdyYXBMaW5lcyhzdHlsZS5hdXRvV3JhcCgpKQpA
QCAtMjQ3LDcgKzI0Niw3IEBAIGZsb2F0IFRleHRGcmFnbWVudEl0ZXJhdG9yOjp0ZXh0V2lkdGgo
dW5zaWduZWQgZnJvbSwgdW5zaWduZWQgdG8sIGZsb2F0IHhQb3NpdGlvCiAgICAgaWYgKG1fc3R5
bGUuZm9udC5pc0ZpeGVkUGl0Y2goKSkKICAgICAgICAgcmV0dXJuIGRvd25jYXN0PFJlbmRlclRl
eHQ+KHNlZ21lbnQucmVuZGVyZXIpLndpZHRoKHNlZ21lbnRGcm9tLCBzZWdtZW50VG8gLSBzZWdt
ZW50RnJvbSwgbV9zdHlsZS5mb250LCB4UG9zaXRpb24sIG51bGxwdHIsIG51bGxwdHIpOwogCi0g
ICAgYm9vbCBtZWFzdXJlV2l0aEVuZFNwYWNlID0gbV9zdHlsZS5oYXNLZXJuaW5nT3JMaWdhdHVy
ZXMgJiYgbV9zdHlsZS5jb2xsYXBzZVdoaXRlc3BhY2UKKyAgICBib29sIG1lYXN1cmVXaXRoRW5k
U3BhY2UgPSBtX3N0eWxlLmNvbGxhcHNlV2hpdGVzcGFjZQogICAgICAgICAmJiBzZWdtZW50VG8g
PCBzZWdtZW50LnRleHQubGVuZ3RoKCkgJiYgc2VnbWVudC50ZXh0W3NlZ21lbnRUb10gPT0gJyAn
OwogICAgIGlmIChtZWFzdXJlV2l0aEVuZFNwYWNlKQogICAgICAgICArK3NlZ21lbnRUbzsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9TaW1wbGVMaW5lTGF5b3V0VGV4dEZy
YWdtZW50SXRlcmF0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9TaW1wbGVMaW5lTGF5
b3V0VGV4dEZyYWdtZW50SXRlcmF0b3IuaAppbmRleCBjZmM5YzM3ZDYzY2JkMTQ5MzRkMDRmNTdl
NzJhYjEzN2E2MWYwODNlLi43Mjk2MjkzNGI2M2QyODg4MWM1MmQ2NzkzMzBmMjc0YmRhNTRjMTkw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvU2ltcGxlTGluZUxheW91dFRl
eHRGcmFnbWVudEl0ZXJhdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1NpbXBs
ZUxpbmVMYXlvdXRUZXh0RnJhZ21lbnRJdGVyYXRvci5oCkBAIC0xMDcsNyArMTA3LDYgQEAgcHVi
bGljOgogCiAgICAgICAgIGNvbnN0IEZvbnRDYXNjYWRlJiBmb250OwogICAgICAgICBUZXh0QWxp
Z25Nb2RlIHRleHRBbGlnbjsKLSAgICAgICAgYm9vbCBoYXNLZXJuaW5nT3JMaWdhdHVyZXM7CiAg
ICAgICAgIGJvb2wgY29sbGFwc2VXaGl0ZXNwYWNlOwogICAgICAgICBib29sIHByZXNlcnZlTmV3
bGluZTsKICAgICAgICAgYm9vbCB3cmFwTGluZXM7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>