<?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>162782</bug_id>
          
          <creation_ts>2016-09-30 03:19:20 -0700</creation_ts>
          <short_desc>Implement rendering of font-variation-settings</short_desc>
          <delta_ts>2017-02-10 01:48:31 -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>Text</component>
          <version>Other</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>
          
          <blocked>162490</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>jonlee</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1235183</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-09-30 03:19:20 -0700</bug_when>
    <thetext>Implement rendering of font-variation-settings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1235184</commentid>
    <comment_count>1</comment_count>
      <attachid>290318</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-09-30 03:19:41 -0700</bug_when>
    <thetext>Created attachment 290318
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1235448</commentid>
    <comment_count>2</comment_count>
      <attachid>290392</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-09-30 15:06:28 -0700</bug_when>
    <thetext>Created attachment 290392
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1235489</commentid>
    <comment_count>3</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-09-30 16:14:48 -0700</bug_when>
    <thetext>Committed r206692: &lt;http://trac.webkit.org/changeset/206692&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1235727</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-02 11:21:34 -0700</bug_when>
    <thetext>Reverted r206692 and r206718 for reason:

Seems to have caused &gt;200 failures on Sierra

Committed r206719: &lt;http://trac.webkit.org/changeset/206719&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1235736</commentid>
    <comment_count>5</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2016-10-02 12:29:17 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Reverted r206692 and r206718 for reason:
&gt; 
&gt; Seems to have caused &gt;200 failures on Sierra
&gt; 
&gt; Committed r206719: &lt;http://trac.webkit.org/changeset/206719&gt;

Example of failures:
https://build.webkit.org/builders/Apple%20Sierra%20Release%20WK2%20(Tests)/builds/256</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1235765</commentid>
    <comment_count>6</comment_count>
      <attachid>290481</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-10-03 02:33:04 -0700</bug_when>
    <thetext>Created attachment 290481
Patch for re-landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1235922</commentid>
    <comment_count>7</comment_count>
      <attachid>290481</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-03 14:36:42 -0700</bug_when>
    <thetext>Comment on attachment 290481
Patch for re-landing

Rejecting attachment 290481 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-02&apos;, &apos;validate-changelog&apos;, &apos;--check-oops&apos;, &apos;--non-interactive&apos;, 290481, &apos;--port=mac&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

ChangeLog entry in LayoutTests/ChangeLog contains OOPS!.

Full output: http://webkit-queues.webkit.org/results/2213220</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1235996</commentid>
    <comment_count>8</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2016-10-03 17:08:54 -0700</bug_when>
    <thetext>Committed r206761: &lt;http://trac.webkit.org/changeset/206761&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1275256</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-02-10 01:48:31 -0800</bug_when>
    <thetext>&lt;rdar://problem/30461633&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>290318</attachid>
            <date>2016-09-30 03:19:41 -0700</date>
            <delta_ts>2016-09-30 15:06:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>20939</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">Y29tbWl0IDRkMTYzNzA1YTE3NmNhN2FjOGZiM2U2OTkzZjMzZTNlOTgzNWMyMmMKQXV0aG9yOiBN
eWxlcyBDLiBNYXhmaWVsZCA8bW1heGZpZWxkQGFwcGxlLmNvbT4KRGF0ZTogICBGcmkgU2VwIDMw
IDAyOjQ5OjU2IDIwMTYgLTA3MDAKCiAgICBSZW5kZXJpbmcKCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9kdXBsaWNhdGUtZXhwZWN0ZWQuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2R1cGxpY2F0ZS1leHBlY3RlZC5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ2NjA5NzAKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9kdXBsaWNhdGUtZXhwZWN0ZWQuaHRt
bApAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2Ny
aXB0PgoraWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdz
LnNldFZhcmlhdGlvbkZvbnRzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHk+Cis8ZGl2IHN0eWxlPSJmb250LWZhbWlseTogJ1NraWEnOyBmb250LXZhcmlhdGlvbi1zZXR0
aW5nczogJ3dnaHQnIDM7Ij5UZXN0IHBhc3NlcyBpZiB0aGlzIHRleHQgaGFzIGEgd2VpZ2h0IG9m
IDMuPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvZHVwbGljYXRlLmh0
bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9kdXBsaWNhdGUuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMmRiN2EzCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvZHVwbGljYXRlLmh0bWwKQEAgLTAs
MCArMSwxMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lm
ICh3aW5kb3cuaW50ZXJuYWxzKQorICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRWYXJp
YXRpb25Gb250c0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRp
diBzdHlsZT0iZm9udC1mYW1pbHk6ICdTa2lhJzsgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3
Z2h0JyAyLCAnd2dodCcgMzsiPlRlc3QgcGFzc2VzIGlmIHRoaXMgdGV4dCBoYXMgYSB3ZWlnaHQg
b2YgMy48L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9leGlzdC1leHBl
Y3RlZC1taXNtYXRjaC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvZXhp
c3QtZXhwZWN0ZWQtbWlzbWF0Y2guaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwLi41ZDAyZjgxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3Zh
cmlhdGlvbnMvZXhpc3QtZXhwZWN0ZWQtbWlzbWF0Y2guaHRtbApAQCAtMCwwICsxLDEyIEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5pbnRl
cm5hbHMpCisgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldFZhcmlhdGlvbkZvbnRzRW5h
YmxlZCh0cnVlKTsKKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IHN0eWxlPSJmb250
LWZhbWlseTogJ1NraWEnOyI+VGVzdCBwYXNzZXMgaWYgdGhpcyB0ZXh0IGlzIGJvbGQuPC9kaXY+
Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvZXhpc3QuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2V4aXN0Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uOGIwM2VjMwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvdGV4dC92YXJpYXRpb25zL2V4aXN0Lmh0bWwKQEAgLTAsMCArMSwxMiBAQAorPCFET0NUWVBF
IGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cuaW50ZXJuYWxzKQor
ICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRWYXJpYXRpb25Gb250c0VuYWJsZWQodHJ1
ZSk7Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6
ICctYXBwbGUtc3lzdGVtJzsgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyAxLjg7Ij5U
ZXN0IHBhc3NlcyBpZiB0aGlzIHRleHQgaXMgYm9sZC48L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2dldENvbXB1dGVk
U3R5bGUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2dldENvbXB1dGVk
U3R5bGUuaHRtbAppbmRleCA5ZmM4ZjU2Li45MGExY2M3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9nZXRDb21wdXRlZFN0eWxlLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvZ2V0Q29tcHV0ZWRTdHlsZS5odG1sCkBAIC0yOSw0
ICsyOSw0IEBAIHNob3VsZEJlRXF1YWxUb1N0cmluZygid2luZG93LmdldENvbXB1dGVkU3R5bGUo
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rlc3Q3JykpCiA8L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KIDwvYm9keT4K
LTwvaHRtbD4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9pbmhlcml0YW5jZS1leHBlY3RlZC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvaW5oZXJpdGFuY2UtZXhwZWN0
ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNGExZTQ0Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvaW5oZXJpdGFu
Y2UtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
PgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICB3aW5kb3cuaW50
ZXJuYWxzLnNldHRpbmdzLnNldFZhcmlhdGlvbkZvbnRzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0
PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IHN0eWxlPSJmb250LWZhbWlseTogJ1NraWEnOyBmb250
LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDI7Ij5UZXN0IHBhc3NlcyBpZiB0aGlzIHRleHQg
aXMgYm9sZC48L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9pbmhlcml0
YW5jZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvaW5oZXJpdGFuY2Uu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43YzYyMDdjCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvaW5oZXJpdGFuY2Uu
aHRtbApAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8
c2NyaXB0PgoraWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRp
bmdzLnNldFZhcmlhdGlvbkZvbnRzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+Cis8ZGl2IHN0eWxlPSJmb250LWZhbWlseTogJ1NraWEnOyBmb250LXZhcmlhdGlvbi1z
ZXR0aW5nczogJ3dnaHQnIDI7Ij48ZGl2PlRlc3QgcGFzc2VzIGlmIHRoaXMgdGV4dCBpcyBib2xk
LjwvZGl2PjwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp
bGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL29yZGVyLWV4
cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9vcmRlci1leHBl
Y3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY3ZmRlZDcKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9vcmRlci1l
eHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8
aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVybmFscykKKyAgIHdpbmRvdy5pbnRlcm5h
bHMuc2V0dGluZ3Muc2V0VmFyaWF0aW9uRm9udHNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+Cis8
L2hlYWQ+Cis8Ym9keT4KKzxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiAnU2tpYSc7IGZvbnQtdmFy
aWF0aW9uLXNldHRpbmdzOiAnd2R0aCcgMS4yLCAnd2dodCcgMjsiPlRlc3QgcGFzc2VzIGlmIHRo
aXMgdGV4dCBoYXMgYSB3ZWlnaHQgb2YgMy48L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQv
dmFyaWF0aW9ucy9vcmRlci5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMv
b3JkZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45M2UyM2EwCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvb3JkZXIu
aHRtbApAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8
c2NyaXB0PgoraWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRp
bmdzLnNldFZhcmlhdGlvbkZvbnRzRW5hYmxlZCh0cnVlKTsKKzwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+Cis8ZGl2IHN0eWxlPSJmb250LWZhbWlseTogJ1NraWEnOyBmb250LXZhcmlhdGlvbi1z
ZXR0aW5nczogJ3dnaHQnIDIsICd3ZHRoJyAxLjI7Ij5UZXN0IHBhc3NlcyBpZiB0aGlzIHRleHQg
aGFzIGEgd2VpZ2h0IG9mIDMuPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBh
dCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlv
bnMvb3V0b2Zib3VuZHMtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJp
YXRpb25zL291dG9mYm91bmRzLWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uN2E3ZWZiN2UKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L3RleHQvdmFyaWF0aW9ucy9vdXRvZmJvdW5kcy1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMTIg
QEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93
LmludGVybmFscykKKyAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0VmFyaWF0aW9uRm9u
dHNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgc3R5bGU9
ImZvbnQtZmFtaWx5OiAnU2tpYSc7Ij5UZXN0IHBhc3NlcyBpZiB0aGlzIHRleHQgaXMgbm90IGJv
bGQuPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvb3V0b2Zib3VuZHMu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL291dG9mYm91bmRzLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzkyYjY3ZAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL291dG9mYm91bmRzLmh0bWwK
QEAgLTAsMCArMSwxMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlw
dD4KK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5z
ZXRWYXJpYXRpb25Gb250c0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6ICdTa2lhJzsgZm9udC12YXJpYXRpb24tc2V0dGlu
Z3M6ICd3Z2h0JyAyNzsiPlRlc3QgcGFzc2VzIGlmIHRoaXMgdGV4dCBpcyBub3QgYm9sZC48L2Rp
dj4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FjaGUuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5oCmluZGV4IDE1NDZhOGYuLjdj
YTBiNjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRD
YWNoZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5o
CkBAIC0yNTksNyArMjU5LDcgQEAgc3RydWN0IFN5bnRoZXNpc1BhaXIgewogICAgIGJvb2wgbmVl
ZHNTeW50aGV0aWNPYmxpcXVlOwogfTsKIAotUmV0YWluUHRyPENURm9udFJlZj4gcHJlcGFyZVBs
YXRmb3JtRm9udChDVEZvbnRSZWYsIFRleHRSZW5kZXJpbmdNb2RlLCBjb25zdCBGb250RmVhdHVy
ZVNldHRpbmdzKiBmb250RmFjZUZlYXR1cmVzLCBjb25zdCBGb250VmFyaWFudFNldHRpbmdzKiBm
b250RmFjZVZhcmlhbnRTZXR0aW5ncywgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZmVhdHVy
ZXMsIGNvbnN0IEZvbnRWYXJpYW50U2V0dGluZ3MmKTsKK1JldGFpblB0cjxDVEZvbnRSZWY+IHBy
ZXBhcmVQbGF0Zm9ybUZvbnQoQ1RGb250UmVmLCBUZXh0UmVuZGVyaW5nTW9kZSwgY29uc3QgRm9u
dEZlYXR1cmVTZXR0aW5ncyogZm9udEZhY2VGZWF0dXJlcywgY29uc3QgRm9udFZhcmlhbnRTZXR0
aW5ncyogZm9udEZhY2VWYXJpYW50U2V0dGluZ3MsIGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3Mm
IGZlYXR1cmVzLCBjb25zdCBGb250VmFyaWFudFNldHRpbmdzJiwgY29uc3QgRm9udFZhcmlhdGlv
blNldHRpbmdzJik7CiBGb250V2VpZ2h0IGZvbnRXZWlnaHRGcm9tQ29yZVRleHQoQ0dGbG9hdCB3
ZWlnaHQpOwogdWludDE2X3QgdG9Db3JlVGV4dEZvbnRXZWlnaHQoRm9udFdlaWdodCk7CiBib29s
IGlzRm9udFdlaWdodEJvbGQoRm9udFdlaWdodCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAKaW5k
ZXggMzliZGE3Yi4uYTlkZDMxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcApAQCAtMTQzLDYg
KzE0Myw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBhcHBlbmRPcGVuVHlwZUZlYXR1cmUoQ0ZNdXRh
YmxlQXJyYXlSZWYgZmVhdHVyZXMsIGNvbnN0IEZvbnRGCiB9CiAKIHR5cGVkZWYgSGFzaE1hcDxG
b250VGFnLCBpbnQsIEZvdXJDaGFyYWN0ZXJUYWdIYXNoLCBGb3VyQ2hhcmFjdGVyVGFnSGFzaFRy
YWl0cz4gRmVhdHVyZXNNYXA7Cit0eXBlZGVmIEhhc2hNYXA8Rm9udFRhZywgZmxvYXQsIEZvdXJD
aGFyYWN0ZXJUYWdIYXNoLCBGb3VyQ2hhcmFjdGVyVGFnSGFzaFRyYWl0cz4gVmFyaWF0aW9uc01h
cDsKIAogc3RhdGljIEZlYXR1cmVzTWFwIGNvbXB1dGVGZWF0dXJlU2V0dGluZ3NGcm9tVmFyaWFu
dHMoY29uc3QgRm9udFZhcmlhbnRTZXR0aW5ncyYgdmFyaWFudFNldHRpbmdzKQogewpAQCAtMzYw
LDkgKzM2MSw5IEBAIHN0YXRpYyBGZWF0dXJlc01hcCBjb21wdXRlRmVhdHVyZVNldHRpbmdzRnJv
bVZhcmlhbnRzKGNvbnN0IEZvbnRWYXJpYW50U2V0dGluZ3MmCiAgICAgcmV0dXJuIHJlc3VsdDsK
IH0KIAotUmV0YWluUHRyPENURm9udFJlZj4gcHJlcGFyZVBsYXRmb3JtRm9udChDVEZvbnRSZWYg
b3JpZ2luYWxGb250LCBUZXh0UmVuZGVyaW5nTW9kZSB0ZXh0UmVuZGVyaW5nTW9kZSwgY29uc3Qg
Rm9udEZlYXR1cmVTZXR0aW5ncyogZm9udEZhY2VGZWF0dXJlcywgY29uc3QgRm9udFZhcmlhbnRT
ZXR0aW5ncyogZm9udEZhY2VWYXJpYW50U2V0dGluZ3MsIGNvbnN0IEZvbnRGZWF0dXJlU2V0dGlu
Z3MmIGZlYXR1cmVzLCBjb25zdCBGb250VmFyaWFudFNldHRpbmdzJiB2YXJpYW50U2V0dGluZ3Mp
CitSZXRhaW5QdHI8Q1RGb250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250KENURm9udFJlZiBvcmln
aW5hbEZvbnQsIFRleHRSZW5kZXJpbmdNb2RlIHRleHRSZW5kZXJpbmdNb2RlLCBjb25zdCBGb250
RmVhdHVyZVNldHRpbmdzKiBmb250RmFjZUZlYXR1cmVzLCBjb25zdCBGb250VmFyaWFudFNldHRp
bmdzKiBmb250RmFjZVZhcmlhbnRTZXR0aW5ncywgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYg
ZmVhdHVyZXMsIGNvbnN0IEZvbnRWYXJpYW50U2V0dGluZ3MmIHZhcmlhbnRTZXR0aW5ncywgY29u
c3QgRm9udFZhcmlhdGlvblNldHRpbmdzJiB2YXJpYXRpb25zKQogewotICAgIGlmICghb3JpZ2lu
YWxGb250IHx8ICghZmVhdHVyZXMuc2l6ZSgpICYmICh0ZXh0UmVuZGVyaW5nTW9kZSA9PSBBdXRv
VGV4dFJlbmRlcmluZykgJiYgdmFyaWFudFNldHRpbmdzLmlzQWxsTm9ybWFsKCkKKyAgICBpZiAo
IW9yaWdpbmFsRm9udCB8fCAoIWZlYXR1cmVzLnNpemUoKSAmJiB2YXJpYXRpb25zLmlzRW1wdHko
KSAmJiAodGV4dFJlbmRlcmluZ01vZGUgPT0gQXV0b1RleHRSZW5kZXJpbmcpICYmIHZhcmlhbnRT
ZXR0aW5ncy5pc0FsbE5vcm1hbCgpCiAgICAgICAgICYmICghZm9udEZhY2VGZWF0dXJlcyB8fCAh
Zm9udEZhY2VGZWF0dXJlcy0+c2l6ZSgpKSAmJiAoIWZvbnRGYWNlVmFyaWFudFNldHRpbmdzIHx8
IGZvbnRGYWNlVmFyaWFudFNldHRpbmdzLT5pc0FsbE5vcm1hbCgpKSkpCiAgICAgICAgIHJldHVy
biBvcmlnaW5hbEZvbnQ7CiAKQEAgLTM5Nyw5ICszOTgsMTMgQEAgUmV0YWluUHRyPENURm9udFJl
Zj4gcHJlcGFyZVBsYXRmb3JtRm9udChDVEZvbnRSZWYgb3JpZ2luYWxGb250LCBUZXh0UmVuZGVy
aW5nTW8KICAgICAvLyBTdGVwIDY6IEZvbnQtZmVhdHVyZS1zZXR0aW5ncwogICAgIGZvciAoYXV0
byYgbmV3RmVhdHVyZSA6IGZlYXR1cmVzKQogICAgICAgICBmZWF0dXJlc1RvQmVBcHBsaWVkLnNl
dChuZXdGZWF0dXJlLnRhZygpLCBuZXdGZWF0dXJlLnZhbHVlKCkpOworIAorICAgIFZhcmlhdGlv
bnNNYXAgdmFyaWF0aW9uc1RvQmVBcHBsaWVkOworICAgIGZvciAoYXV0byYgbmV3VmFyaWF0aW9u
IDogdmFyaWF0aW9ucykKKyAgICAgICAgdmFyaWF0aW9uc1RvQmVBcHBsaWVkLnNldChuZXdWYXJp
YXRpb24udGFnKCksIG5ld1ZhcmlhdGlvbi52YWx1ZSgpKTsKIAogICAgIFJldGFpblB0cjxDRk11
dGFibGVEaWN0aW9uYXJ5UmVmPiBhdHRyaWJ1dGVzID0gYWRvcHRDRihDRkRpY3Rpb25hcnlDcmVh
dGVNdXRhYmxlKGtDRkFsbG9jYXRvckRlZmF1bHQsIDIsICZrQ0ZUeXBlRGljdGlvbmFyeUtleUNh
bGxCYWNrcywgJmtDRlR5cGVEaWN0aW9uYXJ5VmFsdWVDYWxsQmFja3MpKTsKLSAgICBpZiAoZmVh
dHVyZXNUb0JlQXBwbGllZC5zaXplKCkpIHsKKyAgICBpZiAoIWZlYXR1cmVzVG9CZUFwcGxpZWQu
aXNFbXB0eSgpKSB7CiAgICAgICAgIFJldGFpblB0cjxDRk11dGFibGVBcnJheVJlZj4gZmVhdHVy
ZUFycmF5ID0gYWRvcHRDRihDRkFycmF5Q3JlYXRlTXV0YWJsZShrQ0ZBbGxvY2F0b3JEZWZhdWx0
LCBmZWF0dXJlcy5zaXplKCksICZrQ0ZUeXBlQXJyYXlDYWxsQmFja3MpKTsKICAgICAgICAgZm9y
IChhdXRvJiBwIDogZmVhdHVyZXNUb0JlQXBwbGllZCkgewogICAgICAgICAgICAgYXV0byBmZWF0
dXJlID0gRm9udEZlYXR1cmUocC5rZXksIHAudmFsdWUpOwpAQCAtNDA4LDYgKzQxMywxOCBAQCBS
ZXRhaW5QdHI8Q1RGb250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250KENURm9udFJlZiBvcmlnaW5h
bEZvbnQsIFRleHRSZW5kZXJpbmdNbwogICAgICAgICB9CiAgICAgICAgIENGRGljdGlvbmFyeUFk
ZFZhbHVlKGF0dHJpYnV0ZXMuZ2V0KCksIGtDVEZvbnRGZWF0dXJlU2V0dGluZ3NBdHRyaWJ1dGUs
IGZlYXR1cmVBcnJheS5nZXQoKSk7CiAgICAgfQorCisgICAgaWYgKCF2YXJpYXRpb25zVG9CZUFw
cGxpZWQuaXNFbXB0eSgpKSB7CisgICAgICAgIGF1dG8gdmFyaWF0aW9uRGljdGlvbmFyeSA9IGFk
b3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCAwLCAm
a0NGVHlwZURpY3Rpb25hcnlLZXlDYWxsQmFja3MsICZrQ0ZUeXBlRGljdGlvbmFyeVZhbHVlQ2Fs
bEJhY2tzKSk7CisgICAgICAgIGZvciAoYXV0byYgcCA6IHZhcmlhdGlvbnNUb0JlQXBwbGllZCkg
eworICAgICAgICAgICAgbG9uZyBsb25nIGJpdHdpc2VUYWcgPSBwLmtleVswXSA8PCAyNCB8IHAu
a2V5WzFdIDw8IDE2IHwgcC5rZXlbMl0gPDwgOCB8IHAua2V5WzNdOworICAgICAgICAgICAgYXV0
byB0YWdOdW1iZXIgPSBhZG9wdENGKENGTnVtYmVyQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQs
IGtDRk51bWJlckxvbmdMb25nVHlwZSwgJmJpdHdpc2VUYWcpKTsKKyAgICAgICAgICAgIGF1dG8g
dmFsdWVOdW1iZXIgPSBhZG9wdENGKENGTnVtYmVyQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQs
IGtDRk51bWJlckZsb2F0VHlwZSwgJnAudmFsdWUpKTsKKyAgICAgICAgICAgIENGRGljdGlvbmFy
eVNldFZhbHVlKHZhcmlhdGlvbkRpY3Rpb25hcnkuZ2V0KCksIHRhZ051bWJlci5nZXQoKSwgdmFs
dWVOdW1iZXIuZ2V0KCkpOworICAgICAgICB9CisgICAgICAgIENGRGljdGlvbmFyeUFkZFZhbHVl
KGF0dHJpYnV0ZXMuZ2V0KCksIGtDVEZvbnRWYXJpYXRpb25BdHRyaWJ1dGUsIHZhcmlhdGlvbkRp
Y3Rpb25hcnkuZ2V0KCkpOworICAgIH0KKwogICAgIGlmICh0ZXh0UmVuZGVyaW5nTW9kZSA9PSBP
cHRpbWl6ZUxlZ2liaWxpdHkpIHsKICAgICAgICAgQ0dGbG9hdCBzaXplID0gQ1RGb250R2V0U2l6
ZShvcmlnaW5hbEZvbnQpOwogICAgICAgICBSZXRhaW5QdHI8Q0ZOdW1iZXJSZWY+IHNpemVOdW1i
ZXIgPSBhZG9wdENGKENGTnVtYmVyQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIGtDRk51bWJl
ckNHRmxvYXRUeXBlLCAmc2l6ZSkpOwpAQCAtNjcxLDcgKzY4OCw3IEBAIHN0YXRpYyBSZXRhaW5Q
dHI8Q1RGb250UmVmPiBwbGF0Zm9ybUZvbnRMb29rdXBXaXRoRmFtaWx5KGNvbnN0IEF0b21pY1N0
cmluZyYgZmFtCiB9CiAjZW5kaWYKIAotc3RhdGljIFJldGFpblB0cjxDVEZvbnRSZWY+IGZvbnRX
aXRoRmFtaWx5KGNvbnN0IEF0b21pY1N0cmluZyYgZmFtaWx5LCBDVEZvbnRTeW1ib2xpY1RyYWl0
cyBkZXNpcmVkVHJhaXRzLCBGb250V2VpZ2h0IHdlaWdodCwgY29uc3QgRm9udEZlYXR1cmVTZXR0
aW5ncyYgZmVhdHVyZVNldHRpbmdzLCBjb25zdCBGb250VmFyaWFudFNldHRpbmdzJiB2YXJpYW50
U2V0dGluZ3MsIGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MqIGZvbnRGYWNlRmVhdHVyZXMsIGNv
bnN0IEZvbnRWYXJpYW50U2V0dGluZ3MqIGZvbnRGYWNlVmFyaWFudFNldHRpbmdzLCBjb25zdCBU
ZXh0UmVuZGVyaW5nTW9kZSYgdGV4dFJlbmRlcmluZ01vZGUsIGZsb2F0IHNpemUpCitzdGF0aWMg
UmV0YWluUHRyPENURm9udFJlZj4gZm9udFdpdGhGYW1pbHkoY29uc3QgQXRvbWljU3RyaW5nJiBm
YW1pbHksIENURm9udFN5bWJvbGljVHJhaXRzIGRlc2lyZWRUcmFpdHMsIEZvbnRXZWlnaHQgd2Vp
Z2h0LCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmZWF0dXJlU2V0dGluZ3MsIGNvbnN0IEZv
bnRWYXJpYW50U2V0dGluZ3MmIHZhcmlhbnRTZXR0aW5ncywgY29uc3QgRm9udFZhcmlhdGlvblNl
dHRpbmdzJiB2YXJpYXRpb25TZXR0aW5ncywgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyogZm9u
dEZhY2VGZWF0dXJlcywgY29uc3QgRm9udFZhcmlhbnRTZXR0aW5ncyogZm9udEZhY2VWYXJpYW50
U2V0dGluZ3MsIGNvbnN0IFRleHRSZW5kZXJpbmdNb2RlJiB0ZXh0UmVuZGVyaW5nTW9kZSwgZmxv
YXQgc2l6ZSkKIHsKICAgICBpZiAoZmFtaWx5LmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CkBAIC02ODQsNyArNzAxLDcgQEAgc3RhdGljIFJldGFpblB0cjxDVEZvbnRSZWY+IGZv
bnRXaXRoRmFtaWx5KGNvbnN0IEF0b21pY1N0cmluZyYgZmFtaWx5LCBDVEZvbnRTeW0KICAgICAg
ICAgZm91bmRGb250ID0gcGxhdGZvcm1Gb250V2l0aEZhbWlseShmYW1pbHksIGRlc2lyZWRUcmFp
dHMsIHdlaWdodCwgdGV4dFJlbmRlcmluZ01vZGUsIHNpemUpOwogI2VuZGlmCiAgICAgfQotICAg
IHJldHVybiBwcmVwYXJlUGxhdGZvcm1Gb250KGZvdW5kRm9udC5nZXQoKSwgdGV4dFJlbmRlcmlu
Z01vZGUsIGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRGYWNlVmFyaWFudFNldHRpbmdzLCBmZWF0dXJl
U2V0dGluZ3MsIHZhcmlhbnRTZXR0aW5ncyk7CisgICAgcmV0dXJuIHByZXBhcmVQbGF0Zm9ybUZv
bnQoZm91bmRGb250LmdldCgpLCB0ZXh0UmVuZGVyaW5nTW9kZSwgZm9udEZhY2VGZWF0dXJlcywg
Zm9udEZhY2VWYXJpYW50U2V0dGluZ3MsIGZlYXR1cmVTZXR0aW5ncywgdmFyaWFudFNldHRpbmdz
LCB2YXJpYXRpb25TZXR0aW5ncyk7CiB9CiAKICNpZiBQTEFURk9STShNQUMpCkBAIC03MjQsNyAr
NzQxLDcgQEAgc3RkOjp1bmlxdWVfcHRyPEZvbnRQbGF0Zm9ybURhdGE+IEZvbnRDYWNoZTo6Y3Jl
YXRlRm9udFBsYXRmb3JtRGF0YShjb25zdCBGb250RGUKICAgICBDVEZvbnRTeW1ib2xpY1RyYWl0
cyB0cmFpdHMgPSBjb21wdXRlVHJhaXRzKGZvbnREZXNjcmlwdGlvbik7CiAgICAgZmxvYXQgc2l6
ZSA9IGZvbnREZXNjcmlwdGlvbi5jb21wdXRlZFBpeGVsU2l6ZSgpOwogCi0gICAgUmV0YWluUHRy
PENURm9udFJlZj4gZm9udCA9IGZvbnRXaXRoRmFtaWx5KGZhbWlseSwgdHJhaXRzLCBmb250RGVz
Y3JpcHRpb24ud2VpZ2h0KCksIGZvbnREZXNjcmlwdGlvbi5mZWF0dXJlU2V0dGluZ3MoKSwgZm9u
dERlc2NyaXB0aW9uLnZhcmlhbnRTZXR0aW5ncygpLCBmb250RmFjZUZlYXR1cmVzLCBmb250RmFj
ZVZhcmlhbnRTZXR0aW5ncywgZm9udERlc2NyaXB0aW9uLnRleHRSZW5kZXJpbmdNb2RlKCksIHNp
emUpOworICAgIFJldGFpblB0cjxDVEZvbnRSZWY+IGZvbnQgPSBmb250V2l0aEZhbWlseShmYW1p
bHksIHRyYWl0cywgZm9udERlc2NyaXB0aW9uLndlaWdodCgpLCBmb250RGVzY3JpcHRpb24uZmVh
dHVyZVNldHRpbmdzKCksIGZvbnREZXNjcmlwdGlvbi52YXJpYW50U2V0dGluZ3MoKSwgZm9udERl
c2NyaXB0aW9uLnZhcmlhdGlvblNldHRpbmdzKCksIGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRGYWNl
VmFyaWFudFNldHRpbmdzLCBmb250RGVzY3JpcHRpb24udGV4dFJlbmRlcmluZ01vZGUoKSwgc2l6
ZSk7CiAKICNpZiBQTEFURk9STShNQUMpCiAgICAgaWYgKCFmb250KSB7CkBAIC03MzUsNyArNzUy
LDcgQEAgc3RkOjp1bmlxdWVfcHRyPEZvbnRQbGF0Zm9ybURhdGE+IEZvbnRDYWNoZTo6Y3JlYXRl
Rm9udFBsYXRmb3JtRGF0YShjb25zdCBGb250RGUKICAgICAgICAgLy8gSWdub3JlIHRoZSByZXN1
bHQgYmVjYXVzZSB3ZSB3YW50IHRvIHVzZSBvdXIgb3duIGFsZ29yaXRobSB0byBhY3R1YWxseSBm
aW5kIHRoZSBmb250LgogICAgICAgICBhdXRvQWN0aXZhdGVGb250KGZhbWlseS5zdHJpbmcoKSwg
c2l6ZSk7CiAKLSAgICAgICAgZm9udCA9IGZvbnRXaXRoRmFtaWx5KGZhbWlseSwgdHJhaXRzLCBm
b250RGVzY3JpcHRpb24ud2VpZ2h0KCksIGZvbnREZXNjcmlwdGlvbi5mZWF0dXJlU2V0dGluZ3Mo
KSwgZm9udERlc2NyaXB0aW9uLnZhcmlhbnRTZXR0aW5ncygpLCBmb250RmFjZUZlYXR1cmVzLCBm
b250RmFjZVZhcmlhbnRTZXR0aW5ncywgZm9udERlc2NyaXB0aW9uLnRleHRSZW5kZXJpbmdNb2Rl
KCksIHNpemUpOworICAgICAgICBmb250ID0gZm9udFdpdGhGYW1pbHkoZmFtaWx5LCB0cmFpdHMs
IGZvbnREZXNjcmlwdGlvbi53ZWlnaHQoKSwgZm9udERlc2NyaXB0aW9uLmZlYXR1cmVTZXR0aW5n
cygpLCBmb250RGVzY3JpcHRpb24udmFyaWFudFNldHRpbmdzKCksIGZvbnREZXNjcmlwdGlvbi52
YXJpYXRpb25TZXR0aW5ncygpLCBmb250RmFjZUZlYXR1cmVzLCBmb250RmFjZVZhcmlhbnRTZXR0
aW5ncywgZm9udERlc2NyaXB0aW9uLnRleHRSZW5kZXJpbmdNb2RlKCksIHNpemUpOwogICAgIH0K
ICNlbmRpZgogCkBAIC03NzksNyArNzk2LDcgQEAgUmVmUHRyPEZvbnQ+IEZvbnRDYWNoZTo6c3lz
dGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGNvbnN0IEZvbnREZXNjcmlwdGlvbiYgZGVzY3IKIAog
ICAgIGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEmIHBsYXRmb3JtRGF0YSA9IG9yaWdpbmFsRm9udERh
dGEtPnBsYXRmb3JtRGF0YSgpOwogICAgIFJldGFpblB0cjxDVEZvbnRSZWY+IHJlc3VsdCA9IHBs
YXRmb3JtTG9va3VwRmFsbGJhY2tGb250KHBsYXRmb3JtRGF0YS5mb250KCksIGRlc2NyaXB0aW9u
LndlaWdodCgpLCBkZXNjcmlwdGlvbi5sb2NhbGUoKSwgY2hhcmFjdGVycywgbGVuZ3RoKTsKLSAg
ICByZXN1bHQgPSBwcmVwYXJlUGxhdGZvcm1Gb250KHJlc3VsdC5nZXQoKSwgZGVzY3JpcHRpb24u
dGV4dFJlbmRlcmluZ01vZGUoKSwgbnVsbHB0ciwgbnVsbHB0ciwgZGVzY3JpcHRpb24uZmVhdHVy
ZVNldHRpbmdzKCksIGRlc2NyaXB0aW9uLnZhcmlhbnRTZXR0aW5ncygpKTsKKyAgICByZXN1bHQg
PSBwcmVwYXJlUGxhdGZvcm1Gb250KHJlc3VsdC5nZXQoKSwgZGVzY3JpcHRpb24udGV4dFJlbmRl
cmluZ01vZGUoKSwgbnVsbHB0ciwgbnVsbHB0ciwgZGVzY3JpcHRpb24uZmVhdHVyZVNldHRpbmdz
KCksIGRlc2NyaXB0aW9uLnZhcmlhbnRTZXR0aW5ncygpLCBkZXNjcmlwdGlvbi52YXJpYXRpb25T
ZXR0aW5ncygpKTsKICAgICBpZiAoIXJlc3VsdCkKICAgICAgICAgcmV0dXJuIGxhc3RSZXNvcnRG
YWxsYmFja0ZvbnQoZGVzY3JpcHRpb24pOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250UGxhdGZvcm1EYXRhQ29jb2EubW0gYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250UGxhdGZvcm1EYXRhQ29jb2EubW0K
aW5kZXggMjk0Y2I4ZS4uOGFiOTc4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY29jb2EvRm9udFBsYXRmb3JtRGF0YUNvY29hLm1tCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRQbGF0Zm9ybURhdGFDb2NvYS5tbQpA
QCAtOTksMTEgKzk5LDExIEBAIGlubGluZSBpbnQgbWFwRm9udFdpZHRoVmFyaWFudFRvQ1RGZWF0
dXJlU2VsZWN0b3IoRm9udFdpZHRoVmFyaWFudCB2YXJpYW50KQogICAgIHJldHVybiBUZXh0U3Bh
Y2luZ1Byb3BvcnRpb25hbDsKIH0KIAotc3RhdGljIENURm9udERlc2NyaXB0b3JSZWYgY2FzY2Fk
ZVRvTGFzdFJlc29ydEZvbnREZXNjcmlwdG9yKCkKK3N0YXRpYyBDRkRpY3Rpb25hcnlSZWYgY2Fz
Y2FkZVRvTGFzdFJlc29ydEF0dHJpYnV0ZXNEaWN0aW9uYXJ5KCkKIHsKLSAgICBzdGF0aWMgQ1RG
b250RGVzY3JpcHRvclJlZiBkZXNjcmlwdG9yOwotICAgIGlmIChkZXNjcmlwdG9yKQotICAgICAg
ICByZXR1cm4gZGVzY3JpcHRvcjsKKyAgICBzdGF0aWMgQ0ZEaWN0aW9uYXJ5UmVmIGF0dHJpYnV0
ZXMgPSBudWxscHRyOworICAgIGlmIChhdHRyaWJ1dGVzKQorICAgICAgICByZXR1cm4gYXR0cmli
dXRlczsKIAogICAgIFJldGFpblB0cjxDVEZvbnREZXNjcmlwdG9yUmVmPiBsYXN0UmVzb3J0ID0g
YWRvcHRDRihDVEZvbnREZXNjcmlwdG9yQ3JlYXRlV2l0aE5hbWVBbmRTaXplKENGU1RSKCJMYXN0
UmVzb3J0IiksIDApKTsKIApAQCAtMTEyLDExICsxMTIsMzcgQEAgc3RhdGljIENURm9udERlc2Ny
aXB0b3JSZWYgY2FzY2FkZVRvTGFzdFJlc29ydEZvbnREZXNjcmlwdG9yKCkKIAogICAgIGNvbnN0
IHZvaWQqIGtleXNbXSA9IHsga0NURm9udENhc2NhZGVMaXN0QXR0cmlidXRlIH07CiAgICAgY29u
c3Qgdm9pZCogdmFsdWVzW10gPSB7IGFycmF5LmdldCgpIH07Ci0gICAgUmV0YWluUHRyPENGRGlj
dGlvbmFyeVJlZj4gYXR0cmlidXRlcyA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlKGtDRkFs
bG9jYXRvckRlZmF1bHQsIGtleXMsIHZhbHVlcywgV1RGX0FSUkFZX0xFTkdUSChrZXlzKSwgJmtD
RlR5cGVEaWN0aW9uYXJ5S2V5Q2FsbEJhY2tzLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxC
YWNrcykpOworICAgIGF0dHJpYnV0ZXMgPSBDRkRpY3Rpb25hcnlDcmVhdGUoa0NGQWxsb2NhdG9y
RGVmYXVsdCwga2V5cywgdmFsdWVzLCBXVEZfQVJSQVlfTEVOR1RIKGtleXMpLCAma0NGVHlwZURp
Y3Rpb25hcnlLZXlDYWxsQmFja3MsICZrQ0ZUeXBlRGljdGlvbmFyeVZhbHVlQ2FsbEJhY2tzKTsK
KworICAgIHJldHVybiBhdHRyaWJ1dGVzOworfQorCitzdGF0aWMgUmV0YWluUHRyPENURm9udERl
c2NyaXB0b3JSZWY+IGNhc2NhZGVUb0xhc3RSZXNvcnRBblZhcmlhdGlvbnNGb250RGVzY3JpcHRv
cihDVEZvbnRSZWYgb3JpZ2luYWxGb250KQoreworLy8gRklYTUU6IFJlbW92ZSB0aGlzIHdoZW4g
PHJkYXI6Ly9wcm9ibGVtLzI4NDQ5NDQxPiBpcyBmaXhlZC4KKyNkZWZpbmUgV09SS0FST1VORF9D
T1JFVEVYVF9WQVJJQVRJT05TX1dJVEhfRkFMTEJBQ0tfTElTVF9CVUcgKChQTEFURk9STShNQUMp
ICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPCAxMDEzMDApIHx8IChQTEFURk9S
TShJT1MpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTEwMDAwKSkKIAot
ICAgIGRlc2NyaXB0b3IgPSBDVEZvbnREZXNjcmlwdG9yQ3JlYXRlV2l0aEF0dHJpYnV0ZXMoYXR0
cmlidXRlcy5nZXQoKSk7CisjaWYgV09SS0FST1VORF9DT1JFVEVYVF9WQVJJQVRJT05TX1dJVEhf
RkFMTEJBQ0tfTElTVF9CVUcKKyAgICBDRkRpY3Rpb25hcnlSZWYgYXR0cmlidXRlcyA9IGNhc2Nh
ZGVUb0xhc3RSZXNvcnRBdHRyaWJ1dGVzRGljdGlvbmFyeSgpOworICAgIGF1dG8gdmFyaWF0aW9u
cyA9IGFkb3B0Q0Yoc3RhdGljX2Nhc3Q8Q0ZEaWN0aW9uYXJ5UmVmPihDVEZvbnRDb3B5QXR0cmli
dXRlKG9yaWdpbmFsRm9udCwga0NURm9udFZhcmlhdGlvbkF0dHJpYnV0ZSkpKTsKKyAgICBpZiAo
IXZhcmlhdGlvbnMpCisjZW5kaWYKKyAgICB7CisgICAgICAgIFVOVVNFRF9QQVJBTShvcmlnaW5h
bEZvbnQpOworCisgICAgICAgIHN0YXRpYyBDVEZvbnREZXNjcmlwdG9yUmVmIGRlc2NyaXB0b3Ig
PSBudWxscHRyOworICAgICAgICBpZiAoZGVzY3JpcHRvcikKKyAgICAgICAgICAgIHJldHVybiBk
ZXNjcmlwdG9yOwogCi0gICAgcmV0dXJuIGRlc2NyaXB0b3I7CisgICAgICAgIGRlc2NyaXB0b3Ig
PSBDVEZvbnREZXNjcmlwdG9yQ3JlYXRlV2l0aEF0dHJpYnV0ZXMoYXR0cmlidXRlcyk7CisgICAg
ICAgIHJldHVybiBkZXNjcmlwdG9yOworICAgIH0KKyNpZiBXT1JLQVJPVU5EX0NPUkVURVhUX1ZB
UklBVElPTlNfV0lUSF9GQUxMQkFDS19MSVNUX0JVRworICAgIGF1dG8gbXV0YWJsZUF0dHJpYnV0
ZXMgPSBhZG9wdENGKENGRGljdGlvbmFyeUNyZWF0ZU11dGFibGVDb3B5KGtDRkFsbG9jYXRvckRl
ZmF1bHQsIDIsIGF0dHJpYnV0ZXMpKTsKKyAgICBDRkRpY3Rpb25hcnlBZGRWYWx1ZShtdXRhYmxl
QXR0cmlidXRlcy5nZXQoKSwga0NURm9udFZhcmlhdGlvbkF0dHJpYnV0ZSwgdmFyaWF0aW9ucy5n
ZXQoKSk7CisgICAgcmV0dXJuIGFkb3B0Q0YoQ1RGb250RGVzY3JpcHRvckNyZWF0ZVdpdGhBdHRy
aWJ1dGVzKG11dGFibGVBdHRyaWJ1dGVzLmdldCgpKSk7CisjZW5kaWYKKyN1bmRlZiBXT1JLQVJP
VU5EX0NPUkVURVhUX1ZBUklBVElPTlNfV0lUSF9GQUxMQkFDS19MSVNUX0JVRwogfQogCiBDVEZv
bnRSZWYgRm9udFBsYXRmb3JtRGF0YTo6Y3RGb250KCkgY29uc3QKQEAgLTEyOCw3ICsxNTQsNyBA
QCBDVEZvbnRSZWYgRm9udFBsYXRmb3JtRGF0YTo6Y3RGb250KCkgY29uc3QKICNpZiAoUExBVEZP
Uk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTAxMjAwKSB8fCAo
UExBVEZPUk0oSU9TKSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDEwMDAw
MCkKICAgICBBU1NFUlQobV9jZ0ZvbnQpOwogI2VuZGlmCi0gICAgbV9jdEZvbnQgPSBhZG9wdENG
KENURm9udENyZWF0ZUNvcHlXaXRoQXR0cmlidXRlcyhtX2ZvbnQuZ2V0KCksIG1fc2l6ZSwgMCwg
Y2FzY2FkZVRvTGFzdFJlc29ydEZvbnREZXNjcmlwdG9yKCkpKTsKKyAgICBtX2N0Rm9udCA9IGFk
b3B0Q0YoQ1RGb250Q3JlYXRlQ29weVdpdGhBdHRyaWJ1dGVzKG1fZm9udC5nZXQoKSwgbV9zaXpl
LCAwLCBjYXNjYWRlVG9MYXN0UmVzb3J0QW5WYXJpYXRpb25zRm9udERlc2NyaXB0b3IobV9mb250
LmdldCgpKS5nZXQoKSkpOwogCiAgICAgaWYgKG1fd2lkdGhWYXJpYW50ICE9IFJlZ3VsYXJXaWR0
aCkgewogICAgICAgICBpbnQgZmVhdHVyZVR5cGVWYWx1ZSA9IGtUZXh0U3BhY2luZ1R5cGU7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udEN1c3Rv
bVBsYXRmb3JtRGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMv
Rm9udEN1c3RvbVBsYXRmb3JtRGF0YS5jcHAKaW5kZXggMTBlYmUwMy4uYjAwYzE4ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0
Zm9ybURhdGEuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9G
b250Q3VzdG9tUGxhdGZvcm1EYXRhLmNwcApAQCAtNDAsNyArNDAsNyBAQCBGb250UGxhdGZvcm1E
YXRhIEZvbnRDdXN0b21QbGF0Zm9ybURhdGE6OmZvbnRQbGF0Zm9ybURhdGEoY29uc3QgRm9udERl
c2NyaXB0aW9uJgogICAgIEZvbnRPcmllbnRhdGlvbiBvcmllbnRhdGlvbiA9IGZvbnREZXNjcmlw
dGlvbi5vcmllbnRhdGlvbigpOwogICAgIEZvbnRXaWR0aFZhcmlhbnQgd2lkdGhWYXJpYW50ID0g
Zm9udERlc2NyaXB0aW9uLndpZHRoVmFyaWFudCgpOwogICAgIFJldGFpblB0cjxDVEZvbnRSZWY+
IGZvbnQgPSBhZG9wdENGKENURm9udENyZWF0ZVdpdGhGb250RGVzY3JpcHRvcihtX2ZvbnREZXNj
cmlwdG9yLmdldCgpLCBzaXplLCBudWxscHRyKSk7Ci0gICAgZm9udCA9IHByZXBhcmVQbGF0Zm9y
bUZvbnQoZm9udC5nZXQoKSwgZm9udERlc2NyaXB0aW9uLnRleHRSZW5kZXJpbmdNb2RlKCksICZm
b250RmFjZUZlYXR1cmVzLCAmZm9udEZhY2VWYXJpYW50U2V0dGluZ3MsIGZvbnREZXNjcmlwdGlv
bi5mZWF0dXJlU2V0dGluZ3MoKSwgZm9udERlc2NyaXB0aW9uLnZhcmlhbnRTZXR0aW5ncygpKTsK
KyAgICBmb250ID0gcHJlcGFyZVBsYXRmb3JtRm9udChmb250LmdldCgpLCBmb250RGVzY3JpcHRp
b24udGV4dFJlbmRlcmluZ01vZGUoKSwgJmZvbnRGYWNlRmVhdHVyZXMsICZmb250RmFjZVZhcmlh
bnRTZXR0aW5ncywgZm9udERlc2NyaXB0aW9uLmZlYXR1cmVTZXR0aW5ncygpLCBmb250RGVzY3Jp
cHRpb24udmFyaWFudFNldHRpbmdzKCksIGZvbnREZXNjcmlwdGlvbi52YXJpYXRpb25TZXR0aW5n
cygpKTsKICAgICBBU1NFUlQoZm9udCk7CiAgICAgcmV0dXJuIEZvbnRQbGF0Zm9ybURhdGEoZm9u
dC5nZXQoKSwgc2l6ZSwgYm9sZCwgaXRhbGljLCBvcmllbnRhdGlvbiwgd2lkdGhWYXJpYW50LCBm
b250RGVzY3JpcHRpb24udGV4dFJlbmRlcmluZ01vZGUoKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW0gYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW0KaW5kZXggODc5MGY3OS4uOGJmNzRjMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLm1tCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQpAQCAtMTI3OCw3ICsxMjc4
LDcgQEAgdm9pZCBSZW5kZXJUaGVtZUlPUzo6dXBkYXRlQ2FjaGVkU3lzdGVtRm9udERlc2NyaXB0
aW9uKENTU1ZhbHVlSUQgdmFsdWVJRCwgRm9udEMKIAogICAgIEFTU0VSVChmb250RGVzY3JpcHRv
cik7CiAgICAgUmV0YWluUHRyPENURm9udFJlZj4gZm9udCA9IGFkb3B0Q0YoQ1RGb250Q3JlYXRl
V2l0aEZvbnREZXNjcmlwdG9yKGZvbnREZXNjcmlwdG9yLmdldCgpLCAwLCBudWxscHRyKSk7Ci0g
ICAgZm9udCA9IHByZXBhcmVQbGF0Zm9ybUZvbnQoZm9udC5nZXQoKSwgZm9udERlc2NyaXB0aW9u
LnRleHRSZW5kZXJpbmdNb2RlKCksIG51bGxwdHIsIG51bGxwdHIsIGZvbnREZXNjcmlwdGlvbi5m
ZWF0dXJlU2V0dGluZ3MoKSwgZm9udERlc2NyaXB0aW9uLnZhcmlhbnRTZXR0aW5ncygpKTsKKyAg
ICBmb250ID0gcHJlcGFyZVBsYXRmb3JtRm9udChmb250LmdldCgpLCBmb250RGVzY3JpcHRpb24u
dGV4dFJlbmRlcmluZ01vZGUoKSwgbnVsbHB0ciwgbnVsbHB0ciwgZm9udERlc2NyaXB0aW9uLmZl
YXR1cmVTZXR0aW5ncygpLCBmb250RGVzY3JpcHRpb24udmFyaWFudFNldHRpbmdzKCksIGZvbnRE
ZXNjcmlwdGlvbi52YXJpYXRpb25TZXR0aW5ncygpKTsKICAgICBmb250RGVzY3JpcHRpb24uc2V0
SXNBYnNvbHV0ZVNpemUodHJ1ZSk7CiAgICAgZm9udERlc2NyaXB0aW9uLnNldE9uZUZhbWlseSh0
ZXh0U3R5bGUpOwogICAgIGZvbnREZXNjcmlwdGlvbi5zZXRTcGVjaWZpZWRTaXplKENURm9udEdl
dFNpemUoZm9udC5nZXQoKSkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>290392</attachid>
            <date>2016-09-30 15:06:28 -0700</date>
            <delta_ts>2016-09-30 16:11:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-162782-20160930150325.patch</filename>
            <type>text/plain</type>
            <size>25285</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2Njc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmI2ZWQ0MThiYmRkZWE1
NzZjZjUxYTVmYWRiZWY5Yjk0ZTkzZDFlOS4uZmU0N2Y2MjE4MmEzMzI2YzliZjVhYzEyZGFiMzgw
MDViMzFkNDg5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQyIEBACiAyMDE2LTA5LTMwICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKKyAgICAgICAgSW1wbGVtZW50
IHJlbmRlcmluZyBvZiBmb250LXZhcmlhdGlvbi1zZXR0aW5ncworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyNzgyCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQmVjYXVzZSB0aGUgaGVhdnkgbGlmdGluZyBm
b3IgZm9udC12YXJpYXRpb24tc2V0dGluZ3MgaXMgZG9uZSBieSBDb3JlVGV4dCwKKyAgICAgICAg
dGhpcyBwYXRjaCBpcyBmYWlybHkgbWluaW1hbC4gSXQgc2ltcGx5IGhvb2tzIHVwIHRoZSBDU1Mg
cHJvcGVydHkgdG8gQ29yZVRleHQuCisKKyAgICAgICAgVGhlcmUgaXMgYW4gZXhpc3RpbmcgYnVn
IGluIENvcmVUZXh0IHdoZXJlIHZhcmlhdGlvbnMgaW5zaWRlIGZvbnRzIGRvIG5vdAorICAgICAg
ICBzdXJ2aXZlIHRoZSBhZGRpdGlvbiBvZiBhIGNhc2NhZGUgbGlzdC4gVGhlcmVmb3JlLCBGb250
UGxhdGZvcm1EYXRhOjpjdEZvbnQoKQorICAgICAgICBuZWVkcyB0byB3b3JrIGFyb3VuZCB0aGlz
IChjb25kaXRpb25hbGx5KSBieSByZXN1cHBseWluZyB0aGUgdmFyaWF0aW9uIGF0CisgICAgICAg
IHRoZSBzYW1lIHRpbWUgYXMgdGhlIGNhc2NhZGUgbGlzdC4gVGhlIENvcmVUZXh0IGJ1ZyBpcyA8
cmRhcjovL3Byb2JsZW0vMjg0NDk0NDE+LgorCisgICAgICAgIFRlc3RzOiBmYXN0L3RleHQvdmFy
aWF0aW9ucy9kdXBsaWNhdGUuaHRtbAorICAgICAgICAgICAgICAgZmFzdC90ZXh0L3ZhcmlhdGlv
bnMvZXhpc3QuaHRtbAorICAgICAgICAgICAgICAgZmFzdC90ZXh0L3ZhcmlhdGlvbnMvaW5oZXJp
dGFuY2UuaHRtbAorICAgICAgICAgICAgICAgZmFzdC90ZXh0L3ZhcmlhdGlvbnMvb3JkZXIuaHRt
bAorICAgICAgICAgICAgICAgZmFzdC90ZXh0L3ZhcmlhdGlvbnMvb3V0b2Zib3VuZHMuaHRtbAor
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmg6CisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6cHJlcGFyZVBsYXRmb3JtRm9udCk6CisgICAgICAgIChXZWJDb3JlOjpmb250V2l0aEZh
bWlseSk6CisgICAgICAgIChXZWJDb3JlOjpGb250Q2FjaGU6OmNyZWF0ZUZvbnRQbGF0Zm9ybURh
dGEpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhY2hlOjpzeXN0ZW1GYWxsYmFja0ZvckNoYXJh
Y3RlcnMpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRQbGF0Zm9ybURh
dGFDb2NvYS5tbToKKyAgICAgICAgKFdlYkNvcmU6OmNhc2NhZGVUb0xhc3RSZXNvcnRBdHRyaWJ1
dGVzRGljdGlvbmFyeSk6CisgICAgICAgIChXZWJDb3JlOjpjYXNjYWRlVG9MYXN0UmVzb3J0QW5k
VmFyaWF0aW9uc0ZvbnREZXNjcmlwdG9yKToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRQbGF0Zm9y
bURhdGE6OmN0Rm9udCk6CisgICAgICAgIChXZWJDb3JlOjpjYXNjYWRlVG9MYXN0UmVzb3J0Rm9u
dERlc2NyaXB0b3IpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9G
b250Q3VzdG9tUGxhdGZvcm1EYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDdXN0b21Q
bGF0Zm9ybURhdGE6OmZvbnRQbGF0Zm9ybURhdGEpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5k
ZXJUaGVtZUlPUy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lSU9TOjp1cGRhdGVD
YWNoZWRTeXN0ZW1Gb250RGVzY3JpcHRpb24pOgorCisyMDE2LTA5LTMwICBNeWxlcyBDLiBNYXhm
aWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKICAgICAgICAgUGFyc2UgZm9udC12YXJpYXRp
b24tc2V0dGluZ3MKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE2Mjc4MQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9Gb250Q2FjaGUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNo
ZS5oCmluZGV4IDE1NDZhOGZkNDA0Y2QyMGRiZmQwYzczOTM2NTM0Yzg0N2RkYjM5ZjkuLjdjYTBi
NjUzNzQ1ZjE0Yzc0Y2M3Yjc3OTBjNDM2YmIwMzkzNDQwYWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5oCkBAIC0yNTksNyArMjU5LDcgQEAgc3RydWN0
IFN5bnRoZXNpc1BhaXIgewogICAgIGJvb2wgbmVlZHNTeW50aGV0aWNPYmxpcXVlOwogfTsKIAot
UmV0YWluUHRyPENURm9udFJlZj4gcHJlcGFyZVBsYXRmb3JtRm9udChDVEZvbnRSZWYsIFRleHRS
ZW5kZXJpbmdNb2RlLCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzKiBmb250RmFjZUZlYXR1cmVz
LCBjb25zdCBGb250VmFyaWFudFNldHRpbmdzKiBmb250RmFjZVZhcmlhbnRTZXR0aW5ncywgY29u
c3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZmVhdHVyZXMsIGNvbnN0IEZvbnRWYXJpYW50U2V0dGlu
Z3MmKTsKK1JldGFpblB0cjxDVEZvbnRSZWY+IHByZXBhcmVQbGF0Zm9ybUZvbnQoQ1RGb250UmVm
LCBUZXh0UmVuZGVyaW5nTW9kZSwgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyogZm9udEZhY2VG
ZWF0dXJlcywgY29uc3QgRm9udFZhcmlhbnRTZXR0aW5ncyogZm9udEZhY2VWYXJpYW50U2V0dGlu
Z3MsIGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MmIGZlYXR1cmVzLCBjb25zdCBGb250VmFyaWFu
dFNldHRpbmdzJiwgY29uc3QgRm9udFZhcmlhdGlvblNldHRpbmdzJik7CiBGb250V2VpZ2h0IGZv
bnRXZWlnaHRGcm9tQ29yZVRleHQoQ0dGbG9hdCB3ZWlnaHQpOwogdWludDE2X3QgdG9Db3JlVGV4
dEZvbnRXZWlnaHQoRm9udFdlaWdodCk7CiBib29sIGlzRm9udFdlaWdodEJvbGQoRm9udFdlaWdo
dCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9G
b250Q2FjaGVDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
b2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAKaW5kZXggN2YwYWQyMjkxYjAyZWMzNDg1OGMwZmEx
NTQwOWZjZTdjNjFlMWI0ZS4uZDczMDAyYjc4OTJjMWJkMjNhZWY0OTg0MWE0YmMwY2QwNmEyZWZm
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9u
dENhY2hlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcApAQCAtMTQzLDYgKzE0Myw3IEBAIHN0YXRpYyBp
bmxpbmUgdm9pZCBhcHBlbmRPcGVuVHlwZUZlYXR1cmUoQ0ZNdXRhYmxlQXJyYXlSZWYgZmVhdHVy
ZXMsIGNvbnN0IEZvbnRGCiB9CiAKIHR5cGVkZWYgSGFzaE1hcDxGb250VGFnLCBpbnQsIEZvdXJD
aGFyYWN0ZXJUYWdIYXNoLCBGb3VyQ2hhcmFjdGVyVGFnSGFzaFRyYWl0cz4gRmVhdHVyZXNNYXA7
Cit0eXBlZGVmIEhhc2hNYXA8Rm9udFRhZywgZmxvYXQsIEZvdXJDaGFyYWN0ZXJUYWdIYXNoLCBG
b3VyQ2hhcmFjdGVyVGFnSGFzaFRyYWl0cz4gVmFyaWF0aW9uc01hcDsKIAogc3RhdGljIEZlYXR1
cmVzTWFwIGNvbXB1dGVGZWF0dXJlU2V0dGluZ3NGcm9tVmFyaWFudHMoY29uc3QgRm9udFZhcmlh
bnRTZXR0aW5ncyYgdmFyaWFudFNldHRpbmdzKQogewpAQCAtMzYwLDkgKzM2MSw5IEBAIHN0YXRp
YyBGZWF0dXJlc01hcCBjb21wdXRlRmVhdHVyZVNldHRpbmdzRnJvbVZhcmlhbnRzKGNvbnN0IEZv
bnRWYXJpYW50U2V0dGluZ3MmCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotUmV0YWluUHRyPENU
Rm9udFJlZj4gcHJlcGFyZVBsYXRmb3JtRm9udChDVEZvbnRSZWYgb3JpZ2luYWxGb250LCBUZXh0
UmVuZGVyaW5nTW9kZSB0ZXh0UmVuZGVyaW5nTW9kZSwgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5n
cyogZm9udEZhY2VGZWF0dXJlcywgY29uc3QgRm9udFZhcmlhbnRTZXR0aW5ncyogZm9udEZhY2VW
YXJpYW50U2V0dGluZ3MsIGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MmIGZlYXR1cmVzLCBjb25z
dCBGb250VmFyaWFudFNldHRpbmdzJiB2YXJpYW50U2V0dGluZ3MpCitSZXRhaW5QdHI8Q1RGb250
UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250KENURm9udFJlZiBvcmlnaW5hbEZvbnQsIFRleHRSZW5k
ZXJpbmdNb2RlIHRleHRSZW5kZXJpbmdNb2RlLCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzKiBm
b250RmFjZUZlYXR1cmVzLCBjb25zdCBGb250VmFyaWFudFNldHRpbmdzKiBmb250RmFjZVZhcmlh
bnRTZXR0aW5ncywgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZmVhdHVyZXMsIGNvbnN0IEZv
bnRWYXJpYW50U2V0dGluZ3MmIHZhcmlhbnRTZXR0aW5ncywgY29uc3QgRm9udFZhcmlhdGlvblNl
dHRpbmdzJiB2YXJpYXRpb25zKQogewotICAgIGlmICghb3JpZ2luYWxGb250IHx8ICghZmVhdHVy
ZXMuc2l6ZSgpICYmICh0ZXh0UmVuZGVyaW5nTW9kZSA9PSBBdXRvVGV4dFJlbmRlcmluZykgJiYg
dmFyaWFudFNldHRpbmdzLmlzQWxsTm9ybWFsKCkKKyAgICBpZiAoIW9yaWdpbmFsRm9udCB8fCAo
IWZlYXR1cmVzLnNpemUoKSAmJiB2YXJpYXRpb25zLmlzRW1wdHkoKSAmJiAodGV4dFJlbmRlcmlu
Z01vZGUgPT0gQXV0b1RleHRSZW5kZXJpbmcpICYmIHZhcmlhbnRTZXR0aW5ncy5pc0FsbE5vcm1h
bCgpCiAgICAgICAgICYmICghZm9udEZhY2VGZWF0dXJlcyB8fCAhZm9udEZhY2VGZWF0dXJlcy0+
c2l6ZSgpKSAmJiAoIWZvbnRGYWNlVmFyaWFudFNldHRpbmdzIHx8IGZvbnRGYWNlVmFyaWFudFNl
dHRpbmdzLT5pc0FsbE5vcm1hbCgpKSkpCiAgICAgICAgIHJldHVybiBvcmlnaW5hbEZvbnQ7CiAK
QEAgLTM5OCw4ICszOTksMTIgQEAgUmV0YWluUHRyPENURm9udFJlZj4gcHJlcGFyZVBsYXRmb3Jt
Rm9udChDVEZvbnRSZWYgb3JpZ2luYWxGb250LCBUZXh0UmVuZGVyaW5nTW8KICAgICBmb3IgKGF1
dG8mIG5ld0ZlYXR1cmUgOiBmZWF0dXJlcykKICAgICAgICAgZmVhdHVyZXNUb0JlQXBwbGllZC5z
ZXQobmV3RmVhdHVyZS50YWcoKSwgbmV3RmVhdHVyZS52YWx1ZSgpKTsKIAorICAgIFZhcmlhdGlv
bnNNYXAgdmFyaWF0aW9uc1RvQmVBcHBsaWVkOworICAgIGZvciAoYXV0byYgbmV3VmFyaWF0aW9u
IDogdmFyaWF0aW9ucykKKyAgICAgICAgdmFyaWF0aW9uc1RvQmVBcHBsaWVkLnNldChuZXdWYXJp
YXRpb24udGFnKCksIG5ld1ZhcmlhdGlvbi52YWx1ZSgpKTsKKwogICAgIFJldGFpblB0cjxDRk11
dGFibGVEaWN0aW9uYXJ5UmVmPiBhdHRyaWJ1dGVzID0gYWRvcHRDRihDRkRpY3Rpb25hcnlDcmVh
dGVNdXRhYmxlKGtDRkFsbG9jYXRvckRlZmF1bHQsIDIsICZrQ0ZUeXBlRGljdGlvbmFyeUtleUNh
bGxCYWNrcywgJmtDRlR5cGVEaWN0aW9uYXJ5VmFsdWVDYWxsQmFja3MpKTsKLSAgICBpZiAoZmVh
dHVyZXNUb0JlQXBwbGllZC5zaXplKCkpIHsKKyAgICBpZiAoIWZlYXR1cmVzVG9CZUFwcGxpZWQu
aXNFbXB0eSgpKSB7CiAgICAgICAgIFJldGFpblB0cjxDRk11dGFibGVBcnJheVJlZj4gZmVhdHVy
ZUFycmF5ID0gYWRvcHRDRihDRkFycmF5Q3JlYXRlTXV0YWJsZShrQ0ZBbGxvY2F0b3JEZWZhdWx0
LCBmZWF0dXJlcy5zaXplKCksICZrQ0ZUeXBlQXJyYXlDYWxsQmFja3MpKTsKICAgICAgICAgZm9y
IChhdXRvJiBwIDogZmVhdHVyZXNUb0JlQXBwbGllZCkgewogICAgICAgICAgICAgYXV0byBmZWF0
dXJlID0gRm9udEZlYXR1cmUocC5rZXksIHAudmFsdWUpOwpAQCAtNDA4LDYgKzQxMywxOCBAQCBS
ZXRhaW5QdHI8Q1RGb250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250KENURm9udFJlZiBvcmlnaW5h
bEZvbnQsIFRleHRSZW5kZXJpbmdNbwogICAgICAgICB9CiAgICAgICAgIENGRGljdGlvbmFyeUFk
ZFZhbHVlKGF0dHJpYnV0ZXMuZ2V0KCksIGtDVEZvbnRGZWF0dXJlU2V0dGluZ3NBdHRyaWJ1dGUs
IGZlYXR1cmVBcnJheS5nZXQoKSk7CiAgICAgfQorCisgICAgaWYgKCF2YXJpYXRpb25zVG9CZUFw
cGxpZWQuaXNFbXB0eSgpKSB7CisgICAgICAgIGF1dG8gdmFyaWF0aW9uRGljdGlvbmFyeSA9IGFk
b3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCAwLCAm
a0NGVHlwZURpY3Rpb25hcnlLZXlDYWxsQmFja3MsICZrQ0ZUeXBlRGljdGlvbmFyeVZhbHVlQ2Fs
bEJhY2tzKSk7CisgICAgICAgIGZvciAoYXV0byYgcCA6IHZhcmlhdGlvbnNUb0JlQXBwbGllZCkg
eworICAgICAgICAgICAgbG9uZyBsb25nIGJpdHdpc2VUYWcgPSBwLmtleVswXSA8PCAyNCB8IHAu
a2V5WzFdIDw8IDE2IHwgcC5rZXlbMl0gPDwgOCB8IHAua2V5WzNdOworICAgICAgICAgICAgYXV0
byB0YWdOdW1iZXIgPSBhZG9wdENGKENGTnVtYmVyQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQs
IGtDRk51bWJlckxvbmdMb25nVHlwZSwgJmJpdHdpc2VUYWcpKTsKKyAgICAgICAgICAgIGF1dG8g
dmFsdWVOdW1iZXIgPSBhZG9wdENGKENGTnVtYmVyQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQs
IGtDRk51bWJlckZsb2F0VHlwZSwgJnAudmFsdWUpKTsKKyAgICAgICAgICAgIENGRGljdGlvbmFy
eVNldFZhbHVlKHZhcmlhdGlvbkRpY3Rpb25hcnkuZ2V0KCksIHRhZ051bWJlci5nZXQoKSwgdmFs
dWVOdW1iZXIuZ2V0KCkpOworICAgICAgICB9CisgICAgICAgIENGRGljdGlvbmFyeUFkZFZhbHVl
KGF0dHJpYnV0ZXMuZ2V0KCksIGtDVEZvbnRWYXJpYXRpb25BdHRyaWJ1dGUsIHZhcmlhdGlvbkRp
Y3Rpb25hcnkuZ2V0KCkpOworICAgIH0KKwogICAgIGlmICh0ZXh0UmVuZGVyaW5nTW9kZSA9PSBP
cHRpbWl6ZUxlZ2liaWxpdHkpIHsKICAgICAgICAgQ0dGbG9hdCBzaXplID0gQ1RGb250R2V0U2l6
ZShvcmlnaW5hbEZvbnQpOwogICAgICAgICBSZXRhaW5QdHI8Q0ZOdW1iZXJSZWY+IHNpemVOdW1i
ZXIgPSBhZG9wdENGKENGTnVtYmVyQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIGtDRk51bWJl
ckNHRmxvYXRUeXBlLCAmc2l6ZSkpOwpAQCAtNjc2LDcgKzY5Myw3IEBAIHN0YXRpYyBSZXRhaW5Q
dHI8Q1RGb250UmVmPiBwbGF0Zm9ybUZvbnRMb29rdXBXaXRoRmFtaWx5KGNvbnN0IEF0b21pY1N0
cmluZyYgZmFtCiB9CiAjZW5kaWYKIAotc3RhdGljIFJldGFpblB0cjxDVEZvbnRSZWY+IGZvbnRX
aXRoRmFtaWx5KGNvbnN0IEF0b21pY1N0cmluZyYgZmFtaWx5LCBDVEZvbnRTeW1ib2xpY1RyYWl0
cyBkZXNpcmVkVHJhaXRzLCBGb250V2VpZ2h0IHdlaWdodCwgY29uc3QgRm9udEZlYXR1cmVTZXR0
aW5ncyYgZmVhdHVyZVNldHRpbmdzLCBjb25zdCBGb250VmFyaWFudFNldHRpbmdzJiB2YXJpYW50
U2V0dGluZ3MsIGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MqIGZvbnRGYWNlRmVhdHVyZXMsIGNv
bnN0IEZvbnRWYXJpYW50U2V0dGluZ3MqIGZvbnRGYWNlVmFyaWFudFNldHRpbmdzLCBjb25zdCBU
ZXh0UmVuZGVyaW5nTW9kZSYgdGV4dFJlbmRlcmluZ01vZGUsIGZsb2F0IHNpemUpCitzdGF0aWMg
UmV0YWluUHRyPENURm9udFJlZj4gZm9udFdpdGhGYW1pbHkoY29uc3QgQXRvbWljU3RyaW5nJiBm
YW1pbHksIENURm9udFN5bWJvbGljVHJhaXRzIGRlc2lyZWRUcmFpdHMsIEZvbnRXZWlnaHQgd2Vp
Z2h0LCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmZWF0dXJlU2V0dGluZ3MsIGNvbnN0IEZv
bnRWYXJpYW50U2V0dGluZ3MmIHZhcmlhbnRTZXR0aW5ncywgY29uc3QgRm9udFZhcmlhdGlvblNl
dHRpbmdzJiB2YXJpYXRpb25TZXR0aW5ncywgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyogZm9u
dEZhY2VGZWF0dXJlcywgY29uc3QgRm9udFZhcmlhbnRTZXR0aW5ncyogZm9udEZhY2VWYXJpYW50
U2V0dGluZ3MsIGNvbnN0IFRleHRSZW5kZXJpbmdNb2RlJiB0ZXh0UmVuZGVyaW5nTW9kZSwgZmxv
YXQgc2l6ZSkKIHsKICAgICBpZiAoZmFtaWx5LmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CkBAIC02ODksNyArNzA2LDcgQEAgc3RhdGljIFJldGFpblB0cjxDVEZvbnRSZWY+IGZv
bnRXaXRoRmFtaWx5KGNvbnN0IEF0b21pY1N0cmluZyYgZmFtaWx5LCBDVEZvbnRTeW0KICAgICAg
ICAgZm91bmRGb250ID0gcGxhdGZvcm1Gb250V2l0aEZhbWlseShmYW1pbHksIGRlc2lyZWRUcmFp
dHMsIHdlaWdodCwgdGV4dFJlbmRlcmluZ01vZGUsIHNpemUpOwogI2VuZGlmCiAgICAgfQotICAg
IHJldHVybiBwcmVwYXJlUGxhdGZvcm1Gb250KGZvdW5kRm9udC5nZXQoKSwgdGV4dFJlbmRlcmlu
Z01vZGUsIGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRGYWNlVmFyaWFudFNldHRpbmdzLCBmZWF0dXJl
U2V0dGluZ3MsIHZhcmlhbnRTZXR0aW5ncyk7CisgICAgcmV0dXJuIHByZXBhcmVQbGF0Zm9ybUZv
bnQoZm91bmRGb250LmdldCgpLCB0ZXh0UmVuZGVyaW5nTW9kZSwgZm9udEZhY2VGZWF0dXJlcywg
Zm9udEZhY2VWYXJpYW50U2V0dGluZ3MsIGZlYXR1cmVTZXR0aW5ncywgdmFyaWFudFNldHRpbmdz
LCB2YXJpYXRpb25TZXR0aW5ncyk7CiB9CiAKICNpZiBQTEFURk9STShNQUMpCkBAIC03MjksNyAr
NzQ2LDcgQEAgc3RkOjp1bmlxdWVfcHRyPEZvbnRQbGF0Zm9ybURhdGE+IEZvbnRDYWNoZTo6Y3Jl
YXRlRm9udFBsYXRmb3JtRGF0YShjb25zdCBGb250RGUKICAgICBDVEZvbnRTeW1ib2xpY1RyYWl0
cyB0cmFpdHMgPSBjb21wdXRlVHJhaXRzKGZvbnREZXNjcmlwdGlvbik7CiAgICAgZmxvYXQgc2l6
ZSA9IGZvbnREZXNjcmlwdGlvbi5jb21wdXRlZFBpeGVsU2l6ZSgpOwogCi0gICAgUmV0YWluUHRy
PENURm9udFJlZj4gZm9udCA9IGZvbnRXaXRoRmFtaWx5KGZhbWlseSwgdHJhaXRzLCBmb250RGVz
Y3JpcHRpb24ud2VpZ2h0KCksIGZvbnREZXNjcmlwdGlvbi5mZWF0dXJlU2V0dGluZ3MoKSwgZm9u
dERlc2NyaXB0aW9uLnZhcmlhbnRTZXR0aW5ncygpLCBmb250RmFjZUZlYXR1cmVzLCBmb250RmFj
ZVZhcmlhbnRTZXR0aW5ncywgZm9udERlc2NyaXB0aW9uLnRleHRSZW5kZXJpbmdNb2RlKCksIHNp
emUpOworICAgIFJldGFpblB0cjxDVEZvbnRSZWY+IGZvbnQgPSBmb250V2l0aEZhbWlseShmYW1p
bHksIHRyYWl0cywgZm9udERlc2NyaXB0aW9uLndlaWdodCgpLCBmb250RGVzY3JpcHRpb24uZmVh
dHVyZVNldHRpbmdzKCksIGZvbnREZXNjcmlwdGlvbi52YXJpYW50U2V0dGluZ3MoKSwgZm9udERl
c2NyaXB0aW9uLnZhcmlhdGlvblNldHRpbmdzKCksIGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRGYWNl
VmFyaWFudFNldHRpbmdzLCBmb250RGVzY3JpcHRpb24udGV4dFJlbmRlcmluZ01vZGUoKSwgc2l6
ZSk7CiAKICNpZiBQTEFURk9STShNQUMpCiAgICAgaWYgKCFmb250KSB7CkBAIC03NDAsNyArNzU3
LDcgQEAgc3RkOjp1bmlxdWVfcHRyPEZvbnRQbGF0Zm9ybURhdGE+IEZvbnRDYWNoZTo6Y3JlYXRl
Rm9udFBsYXRmb3JtRGF0YShjb25zdCBGb250RGUKICAgICAgICAgLy8gSWdub3JlIHRoZSByZXN1
bHQgYmVjYXVzZSB3ZSB3YW50IHRvIHVzZSBvdXIgb3duIGFsZ29yaXRobSB0byBhY3R1YWxseSBm
aW5kIHRoZSBmb250LgogICAgICAgICBhdXRvQWN0aXZhdGVGb250KGZhbWlseS5zdHJpbmcoKSwg
c2l6ZSk7CiAKLSAgICAgICAgZm9udCA9IGZvbnRXaXRoRmFtaWx5KGZhbWlseSwgdHJhaXRzLCBm
b250RGVzY3JpcHRpb24ud2VpZ2h0KCksIGZvbnREZXNjcmlwdGlvbi5mZWF0dXJlU2V0dGluZ3Mo
KSwgZm9udERlc2NyaXB0aW9uLnZhcmlhbnRTZXR0aW5ncygpLCBmb250RmFjZUZlYXR1cmVzLCBm
b250RmFjZVZhcmlhbnRTZXR0aW5ncywgZm9udERlc2NyaXB0aW9uLnRleHRSZW5kZXJpbmdNb2Rl
KCksIHNpemUpOworICAgICAgICBmb250ID0gZm9udFdpdGhGYW1pbHkoZmFtaWx5LCB0cmFpdHMs
IGZvbnREZXNjcmlwdGlvbi53ZWlnaHQoKSwgZm9udERlc2NyaXB0aW9uLmZlYXR1cmVTZXR0aW5n
cygpLCBmb250RGVzY3JpcHRpb24udmFyaWFudFNldHRpbmdzKCksIGZvbnREZXNjcmlwdGlvbi52
YXJpYXRpb25TZXR0aW5ncygpLCBmb250RmFjZUZlYXR1cmVzLCBmb250RmFjZVZhcmlhbnRTZXR0
aW5ncywgZm9udERlc2NyaXB0aW9uLnRleHRSZW5kZXJpbmdNb2RlKCksIHNpemUpOwogICAgIH0K
ICNlbmRpZgogCkBAIC03ODQsNyArODAxLDcgQEAgUmVmUHRyPEZvbnQ+IEZvbnRDYWNoZTo6c3lz
dGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKGNvbnN0IEZvbnREZXNjcmlwdGlvbiYgZGVzY3IKIAog
ICAgIGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEmIHBsYXRmb3JtRGF0YSA9IG9yaWdpbmFsRm9udERh
dGEtPnBsYXRmb3JtRGF0YSgpOwogICAgIFJldGFpblB0cjxDVEZvbnRSZWY+IHJlc3VsdCA9IHBs
YXRmb3JtTG9va3VwRmFsbGJhY2tGb250KHBsYXRmb3JtRGF0YS5mb250KCksIGRlc2NyaXB0aW9u
LndlaWdodCgpLCBkZXNjcmlwdGlvbi5sb2NhbGUoKSwgY2hhcmFjdGVycywgbGVuZ3RoKTsKLSAg
ICByZXN1bHQgPSBwcmVwYXJlUGxhdGZvcm1Gb250KHJlc3VsdC5nZXQoKSwgZGVzY3JpcHRpb24u
dGV4dFJlbmRlcmluZ01vZGUoKSwgbnVsbHB0ciwgbnVsbHB0ciwgZGVzY3JpcHRpb24uZmVhdHVy
ZVNldHRpbmdzKCksIGRlc2NyaXB0aW9uLnZhcmlhbnRTZXR0aW5ncygpKTsKKyAgICByZXN1bHQg
PSBwcmVwYXJlUGxhdGZvcm1Gb250KHJlc3VsdC5nZXQoKSwgZGVzY3JpcHRpb24udGV4dFJlbmRl
cmluZ01vZGUoKSwgbnVsbHB0ciwgbnVsbHB0ciwgZGVzY3JpcHRpb24uZmVhdHVyZVNldHRpbmdz
KCksIGRlc2NyaXB0aW9uLnZhcmlhbnRTZXR0aW5ncygpLCBkZXNjcmlwdGlvbi52YXJpYXRpb25T
ZXR0aW5ncygpKTsKICAgICBpZiAoIXJlc3VsdCkKICAgICAgICAgcmV0dXJuIGxhc3RSZXNvcnRG
YWxsYmFja0ZvbnQoZGVzY3JpcHRpb24pOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250UGxhdGZvcm1EYXRhQ29jb2EubW0gYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250UGxhdGZvcm1EYXRhQ29jb2EubW0K
aW5kZXggMjk0Y2I4ZWY0ODQwZGJhOTcxMGY3OTY4MTMyZGI4ZTNlOGE0N2FmYi4uMmFmZTI4ZTE1
YmQ4YWZkZGVmOWQ0OTMzNTBjNDkwNTNjMWY4NGY1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udFBsYXRmb3JtRGF0YUNvY29hLm1tCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRQbGF0Zm9ybURhdGFD
b2NvYS5tbQpAQCAtOTksMTEgKzk5LDExIEBAIGlubGluZSBpbnQgbWFwRm9udFdpZHRoVmFyaWFu
dFRvQ1RGZWF0dXJlU2VsZWN0b3IoRm9udFdpZHRoVmFyaWFudCB2YXJpYW50KQogICAgIHJldHVy
biBUZXh0U3BhY2luZ1Byb3BvcnRpb25hbDsKIH0KIAotc3RhdGljIENURm9udERlc2NyaXB0b3JS
ZWYgY2FzY2FkZVRvTGFzdFJlc29ydEZvbnREZXNjcmlwdG9yKCkKK3N0YXRpYyBDRkRpY3Rpb25h
cnlSZWYgY2FzY2FkZVRvTGFzdFJlc29ydEF0dHJpYnV0ZXNEaWN0aW9uYXJ5KCkKIHsKLSAgICBz
dGF0aWMgQ1RGb250RGVzY3JpcHRvclJlZiBkZXNjcmlwdG9yOwotICAgIGlmIChkZXNjcmlwdG9y
KQotICAgICAgICByZXR1cm4gZGVzY3JpcHRvcjsKKyAgICBzdGF0aWMgQ0ZEaWN0aW9uYXJ5UmVm
IGF0dHJpYnV0ZXMgPSBudWxscHRyOworICAgIGlmIChhdHRyaWJ1dGVzKQorICAgICAgICByZXR1
cm4gYXR0cmlidXRlczsKIAogICAgIFJldGFpblB0cjxDVEZvbnREZXNjcmlwdG9yUmVmPiBsYXN0
UmVzb3J0ID0gYWRvcHRDRihDVEZvbnREZXNjcmlwdG9yQ3JlYXRlV2l0aE5hbWVBbmRTaXplKENG
U1RSKCJMYXN0UmVzb3J0IiksIDApKTsKIApAQCAtMTEyLDExICsxMTIsMzcgQEAgc3RhdGljIENU
Rm9udERlc2NyaXB0b3JSZWYgY2FzY2FkZVRvTGFzdFJlc29ydEZvbnREZXNjcmlwdG9yKCkKIAog
ICAgIGNvbnN0IHZvaWQqIGtleXNbXSA9IHsga0NURm9udENhc2NhZGVMaXN0QXR0cmlidXRlIH07
CiAgICAgY29uc3Qgdm9pZCogdmFsdWVzW10gPSB7IGFycmF5LmdldCgpIH07Ci0gICAgUmV0YWlu
UHRyPENGRGljdGlvbmFyeVJlZj4gYXR0cmlidXRlcyA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3Jl
YXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIGtleXMsIHZhbHVlcywgV1RGX0FSUkFZX0xFTkdUSChr
ZXlzKSwgJmtDRlR5cGVEaWN0aW9uYXJ5S2V5Q2FsbEJhY2tzLCAma0NGVHlwZURpY3Rpb25hcnlW
YWx1ZUNhbGxCYWNrcykpOworICAgIGF0dHJpYnV0ZXMgPSBDRkRpY3Rpb25hcnlDcmVhdGUoa0NG
QWxsb2NhdG9yRGVmYXVsdCwga2V5cywgdmFsdWVzLCBXVEZfQVJSQVlfTEVOR1RIKGtleXMpLCAm
a0NGVHlwZURpY3Rpb25hcnlLZXlDYWxsQmFja3MsICZrQ0ZUeXBlRGljdGlvbmFyeVZhbHVlQ2Fs
bEJhY2tzKTsKKworICAgIHJldHVybiBhdHRyaWJ1dGVzOworfQorCitzdGF0aWMgUmV0YWluUHRy
PENURm9udERlc2NyaXB0b3JSZWY+IGNhc2NhZGVUb0xhc3RSZXNvcnRBbmRWYXJpYXRpb25zRm9u
dERlc2NyaXB0b3IoQ1RGb250UmVmIG9yaWdpbmFsRm9udCkKK3sKKy8vIEZJWE1FOiBSZW1vdmUg
dGhpcyB3aGVuIDxyZGFyOi8vcHJvYmxlbS8yODQ0OTQ0MT4gaXMgZml4ZWQuCisjZGVmaW5lIFdP
UktBUk9VTkRfQ09SRVRFWFRfVkFSSUFUSU9OU19XSVRIX0ZBTExCQUNLX0xJU1RfQlVHICgoUExB
VEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDwgMTAxMzAwKSB8
fCAoUExBVEZPUk0oSU9TKSAmJiBfX0lQSE9ORV9PU19WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDEx
MDAwMCkpCiAKLSAgICBkZXNjcmlwdG9yID0gQ1RGb250RGVzY3JpcHRvckNyZWF0ZVdpdGhBdHRy
aWJ1dGVzKGF0dHJpYnV0ZXMuZ2V0KCkpOworI2lmIFdPUktBUk9VTkRfQ09SRVRFWFRfVkFSSUFU
SU9OU19XSVRIX0ZBTExCQUNLX0xJU1RfQlVHCisgICAgQ0ZEaWN0aW9uYXJ5UmVmIGF0dHJpYnV0
ZXMgPSBjYXNjYWRlVG9MYXN0UmVzb3J0QXR0cmlidXRlc0RpY3Rpb25hcnkoKTsKKyAgICBhdXRv
IHZhcmlhdGlvbnMgPSBhZG9wdENGKHN0YXRpY19jYXN0PENGRGljdGlvbmFyeVJlZj4oQ1RGb250
Q29weUF0dHJpYnV0ZShvcmlnaW5hbEZvbnQsIGtDVEZvbnRWYXJpYXRpb25BdHRyaWJ1dGUpKSk7
CisgICAgaWYgKCF2YXJpYXRpb25zKQorI2VuZGlmCisgICAgeworICAgICAgICBVTlVTRURfUEFS
QU0ob3JpZ2luYWxGb250KTsKKworICAgICAgICBzdGF0aWMgQ1RGb250RGVzY3JpcHRvclJlZiBk
ZXNjcmlwdG9yID0gbnVsbHB0cjsKKyAgICAgICAgaWYgKGRlc2NyaXB0b3IpCisgICAgICAgICAg
ICByZXR1cm4gZGVzY3JpcHRvcjsKIAotICAgIHJldHVybiBkZXNjcmlwdG9yOworICAgICAgICBk
ZXNjcmlwdG9yID0gQ1RGb250RGVzY3JpcHRvckNyZWF0ZVdpdGhBdHRyaWJ1dGVzKGF0dHJpYnV0
ZXMpOworICAgICAgICByZXR1cm4gZGVzY3JpcHRvcjsKKyAgICB9CisjaWYgV09SS0FST1VORF9D
T1JFVEVYVF9WQVJJQVRJT05TX1dJVEhfRkFMTEJBQ0tfTElTVF9CVUcKKyAgICBhdXRvIG11dGFi
bGVBdHRyaWJ1dGVzID0gYWRvcHRDRihDRkRpY3Rpb25hcnlDcmVhdGVNdXRhYmxlQ29weShrQ0ZB
bGxvY2F0b3JEZWZhdWx0LCAyLCBhdHRyaWJ1dGVzKSk7CisgICAgQ0ZEaWN0aW9uYXJ5QWRkVmFs
dWUobXV0YWJsZUF0dHJpYnV0ZXMuZ2V0KCksIGtDVEZvbnRWYXJpYXRpb25BdHRyaWJ1dGUsIHZh
cmlhdGlvbnMuZ2V0KCkpOworICAgIHJldHVybiBhZG9wdENGKENURm9udERlc2NyaXB0b3JDcmVh
dGVXaXRoQXR0cmlidXRlcyhtdXRhYmxlQXR0cmlidXRlcy5nZXQoKSkpOworI2VuZGlmCisjdW5k
ZWYgV09SS0FST1VORF9DT1JFVEVYVF9WQVJJQVRJT05TX1dJVEhfRkFMTEJBQ0tfTElTVF9CVUcK
IH0KIAogQ1RGb250UmVmIEZvbnRQbGF0Zm9ybURhdGE6OmN0Rm9udCgpIGNvbnN0CkBAIC0xMjgs
NyArMTU0LDcgQEAgQ1RGb250UmVmIEZvbnRQbGF0Zm9ybURhdGE6OmN0Rm9udCgpIGNvbnN0CiAj
aWYgKFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDEw
MTIwMCkgfHwgKFBMQVRGT1JNKElPUykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlS
RUQgPCAxMDAwMDApCiAgICAgQVNTRVJUKG1fY2dGb250KTsKICNlbmRpZgotICAgIG1fY3RGb250
ID0gYWRvcHRDRihDVEZvbnRDcmVhdGVDb3B5V2l0aEF0dHJpYnV0ZXMobV9mb250LmdldCgpLCBt
X3NpemUsIDAsIGNhc2NhZGVUb0xhc3RSZXNvcnRGb250RGVzY3JpcHRvcigpKSk7CisgICAgbV9j
dEZvbnQgPSBhZG9wdENGKENURm9udENyZWF0ZUNvcHlXaXRoQXR0cmlidXRlcyhtX2ZvbnQuZ2V0
KCksIG1fc2l6ZSwgMCwgY2FzY2FkZVRvTGFzdFJlc29ydEFuZFZhcmlhdGlvbnNGb250RGVzY3Jp
cHRvcihtX2ZvbnQuZ2V0KCkpLmdldCgpKSk7CiAKICAgICBpZiAobV93aWR0aFZhcmlhbnQgIT0g
UmVndWxhcldpZHRoKSB7CiAgICAgICAgIGludCBmZWF0dXJlVHlwZVZhbHVlID0ga1RleHRTcGFj
aW5nVHlwZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21h
Yy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmNwcAppbmRleCAxMGViZTAzYzBlZTUy
MzBmN2Q2NWQ0ZGQ0Njk4NTQxOTNjNjdhYjU3Li5iMDBjMThlNGYyZmM2NjdkYzFkMzQ5OTYwYmU5
NmIzODcxZDMzOGY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9tYWMvRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuY3BwCkBAIC00MCw3ICs0
MCw3IEBAIEZvbnRQbGF0Zm9ybURhdGEgRm9udEN1c3RvbVBsYXRmb3JtRGF0YTo6Zm9udFBsYXRm
b3JtRGF0YShjb25zdCBGb250RGVzY3JpcHRpb24mCiAgICAgRm9udE9yaWVudGF0aW9uIG9yaWVu
dGF0aW9uID0gZm9udERlc2NyaXB0aW9uLm9yaWVudGF0aW9uKCk7CiAgICAgRm9udFdpZHRoVmFy
aWFudCB3aWR0aFZhcmlhbnQgPSBmb250RGVzY3JpcHRpb24ud2lkdGhWYXJpYW50KCk7CiAgICAg
UmV0YWluUHRyPENURm9udFJlZj4gZm9udCA9IGFkb3B0Q0YoQ1RGb250Q3JlYXRlV2l0aEZvbnRE
ZXNjcmlwdG9yKG1fZm9udERlc2NyaXB0b3IuZ2V0KCksIHNpemUsIG51bGxwdHIpKTsKLSAgICBm
b250ID0gcHJlcGFyZVBsYXRmb3JtRm9udChmb250LmdldCgpLCBmb250RGVzY3JpcHRpb24udGV4
dFJlbmRlcmluZ01vZGUoKSwgJmZvbnRGYWNlRmVhdHVyZXMsICZmb250RmFjZVZhcmlhbnRTZXR0
aW5ncywgZm9udERlc2NyaXB0aW9uLmZlYXR1cmVTZXR0aW5ncygpLCBmb250RGVzY3JpcHRpb24u
dmFyaWFudFNldHRpbmdzKCkpOworICAgIGZvbnQgPSBwcmVwYXJlUGxhdGZvcm1Gb250KGZvbnQu
Z2V0KCksIGZvbnREZXNjcmlwdGlvbi50ZXh0UmVuZGVyaW5nTW9kZSgpLCAmZm9udEZhY2VGZWF0
dXJlcywgJmZvbnRGYWNlVmFyaWFudFNldHRpbmdzLCBmb250RGVzY3JpcHRpb24uZmVhdHVyZVNl
dHRpbmdzKCksIGZvbnREZXNjcmlwdGlvbi52YXJpYW50U2V0dGluZ3MoKSwgZm9udERlc2NyaXB0
aW9uLnZhcmlhdGlvblNldHRpbmdzKCkpOwogICAgIEFTU0VSVChmb250KTsKICAgICByZXR1cm4g
Rm9udFBsYXRmb3JtRGF0YShmb250LmdldCgpLCBzaXplLCBib2xkLCBpdGFsaWMsIG9yaWVudGF0
aW9uLCB3aWR0aFZhcmlhbnQsIGZvbnREZXNjcmlwdGlvbi50ZXh0UmVuZGVyaW5nTW9kZSgpKTsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5t
bSBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQppbmRleCA4Nzkw
Zjc5YzNkMzE5NTU3OTE5Y2RhODMyNWNiZGZmMzFlZTc4ZWViLi44YmY3NGMwZWZiYWZiNTAzNzU0
MWNkNjM1ZGE0MmY5YjY3ZjEzMGJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyVGhlbWVJT1MubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clRoZW1lSU9TLm1tCkBAIC0xMjc4LDcgKzEyNzgsNyBAQCB2b2lkIFJlbmRlclRoZW1lSU9TOjp1
cGRhdGVDYWNoZWRTeXN0ZW1Gb250RGVzY3JpcHRpb24oQ1NTVmFsdWVJRCB2YWx1ZUlELCBGb250
QwogCiAgICAgQVNTRVJUKGZvbnREZXNjcmlwdG9yKTsKICAgICBSZXRhaW5QdHI8Q1RGb250UmVm
PiBmb250ID0gYWRvcHRDRihDVEZvbnRDcmVhdGVXaXRoRm9udERlc2NyaXB0b3IoZm9udERlc2Ny
aXB0b3IuZ2V0KCksIDAsIG51bGxwdHIpKTsKLSAgICBmb250ID0gcHJlcGFyZVBsYXRmb3JtRm9u
dChmb250LmdldCgpLCBmb250RGVzY3JpcHRpb24udGV4dFJlbmRlcmluZ01vZGUoKSwgbnVsbHB0
ciwgbnVsbHB0ciwgZm9udERlc2NyaXB0aW9uLmZlYXR1cmVTZXR0aW5ncygpLCBmb250RGVzY3Jp
cHRpb24udmFyaWFudFNldHRpbmdzKCkpOworICAgIGZvbnQgPSBwcmVwYXJlUGxhdGZvcm1Gb250
KGZvbnQuZ2V0KCksIGZvbnREZXNjcmlwdGlvbi50ZXh0UmVuZGVyaW5nTW9kZSgpLCBudWxscHRy
LCBudWxscHRyLCBmb250RGVzY3JpcHRpb24uZmVhdHVyZVNldHRpbmdzKCksIGZvbnREZXNjcmlw
dGlvbi52YXJpYW50U2V0dGluZ3MoKSwgZm9udERlc2NyaXB0aW9uLnZhcmlhdGlvblNldHRpbmdz
KCkpOwogICAgIGZvbnREZXNjcmlwdGlvbi5zZXRJc0Fic29sdXRlU2l6ZSh0cnVlKTsKICAgICBm
b250RGVzY3JpcHRpb24uc2V0T25lRmFtaWx5KHRleHRTdHlsZSk7CiAgICAgZm9udERlc2NyaXB0
aW9uLnNldFNwZWNpZmllZFNpemUoQ1RGb250R2V0U2l6ZShmb250LmdldCgpKSk7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXgg
Yzc4OGMwMzhhYjllOTUwMGY5MjJhNjZlNzE0NzIxNWNmZmU3N2QxNC4uYmNjNWYzMmVkMmViNmIy
ZWU1ZDZjZTM5YjRkMGYyMTI1ZGM2YTEyYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI0IEBACiAyMDE2LTA5
LTMwICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKKyAgICAgICAg
SW1wbGVtZW50IHJlbmRlcmluZyBvZiBmb250LXZhcmlhdGlvbi1zZXR0aW5ncworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyNzgyCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L3RleHQvdmFyaWF0
aW9ucy9kdXBsaWNhdGUtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC90ZXh0
L3ZhcmlhdGlvbnMvZHVwbGljYXRlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdGV4dC92
YXJpYXRpb25zL2V4aXN0LWV4cGVjdGVkLW1pc21hdGNoLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvdGV4dC92YXJpYXRpb25zL2V4aXN0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
dGV4dC92YXJpYXRpb25zL2dldENvbXB1dGVkU3R5bGUuaHRtbDoKKyAgICAgICAgKiBmYXN0L3Rl
eHQvdmFyaWF0aW9ucy9pbmhlcml0YW5jZS1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L3RleHQvdmFyaWF0aW9ucy9pbmhlcml0YW5jZS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L3RleHQvdmFyaWF0aW9ucy9vcmRlci1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L3RleHQvdmFyaWF0aW9ucy9vcmRlci5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBm
YXN0L3RleHQvdmFyaWF0aW9ucy9vdXRvZmJvdW5kcy1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L3RleHQvdmFyaWF0aW9ucy9vdXRvZmJvdW5kcy5odG1sOiBBZGRlZC4KKwor
MjAxNi0wOS0zMCAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCiAg
ICAgICAgIFBhcnNlIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzCiAgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjI3ODEKIApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvZHVwbGljYXRlLWV4cGVjdGVkLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9kdXBsaWNhdGUtZXhwZWN0ZWQuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi40NjYwOTcwZGVhYzIyMjFhYzljOWJjNTJhZjdmZDRmNjEzMzdjM2NkCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvZHVwbGljYXRlLWV4
cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwxMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxo
ZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgd2luZG93LmludGVybmFs
cy5zZXR0aW5ncy5zZXRWYXJpYXRpb25Gb250c0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KKzwv
aGVhZD4KKzxib2R5PgorPGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6ICdTa2lhJzsgZm9udC12YXJp
YXRpb24tc2V0dGluZ3M6ICd3Z2h0JyAzOyI+VGVzdCBwYXNzZXMgaWYgdGhpcyB0ZXh0IGhhcyBh
IHdlaWdodCBvZiAzLjwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2R1
cGxpY2F0ZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvZHVwbGljYXRl
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uYjJkYjdhM2IxNDNkOWY4Nzk3NjFiZWJlODc1N2YxZjA1YTIyMmFi
OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2R1
cGxpY2F0ZS5odG1sCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8
aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVybmFscykKKyAgIHdpbmRvdy5pbnRlcm5h
bHMuc2V0dGluZ3Muc2V0VmFyaWF0aW9uRm9udHNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+Cis8
L2hlYWQ+Cis8Ym9keT4KKzxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiAnU2tpYSc7IGZvbnQtdmFy
aWF0aW9uLXNldHRpbmdzOiAnd2dodCcgMiwgJ3dnaHQnIDM7Ij5UZXN0IHBhc3NlcyBpZiB0aGlz
IHRleHQgaGFzIGEgd2VpZ2h0IG9mIDMuPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3Zh
cmlhdGlvbnMvZXhpc3QtZXhwZWN0ZWQtbWlzbWF0Y2guaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
dGV4dC92YXJpYXRpb25zL2V4aXN0LWV4cGVjdGVkLW1pc21hdGNoLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NWQwMmY4MTMyOTVmMmJkMTFiZDY3ZGZlYzViY2E4YWYyNjZlOTM1YgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2V4aXN0LWV4cGVjdGVkLW1pc21h
dGNoLmh0bWwKQEAgLTAsMCArMSwxMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFk
PgorPHNjcmlwdD4KK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgd2luZG93LmludGVybmFscy5z
ZXR0aW5ncy5zZXRWYXJpYXRpb25Gb250c0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KKzwvaGVh
ZD4KKzxib2R5PgorPGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6ICdTa2lhJzsiPlRlc3QgcGFzc2Vz
IGlmIHRoaXMgdGV4dCBpcyBib2xkLjwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xp
bmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJp
YXRpb25zL2V4aXN0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9leGlz
dC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjhiMDNlYzNmMDljYzVhM2JmYzZiYTU2YTMwOWJkZGJjNDM5NzQw
NmUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9l
eGlzdC5odG1sCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVh
ZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVybmFscykKKyAgIHdpbmRvdy5pbnRlcm5hbHMu
c2V0dGluZ3Muc2V0VmFyaWF0aW9uRm9udHNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+Cis8L2hl
YWQ+Cis8Ym9keT4KKzxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiAnLWFwcGxlLXN5c3RlbSc7IGZv
bnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgMS44OyI+VGVzdCBwYXNzZXMgaWYgdGhpcyB0
ZXh0IGlzIGJvbGQuPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9nZXRDb21wdXRlZFN0eWxlLmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9nZXRDb21wdXRlZFN0eWxlLmh0bWwKaW5kZXggOWZj
OGY1NjFkZmVhMjllMDIzYzUyMjIyNzQ0NDc1ZTI5YjJiOTM0Yy4uOTBhMWNjN2QxZjQzYjQyZWQx
YmQyN2JiYTc0Y2QzYzhiZmU2NDQwZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0
L3ZhcmlhdGlvbnMvZ2V0Q29tcHV0ZWRTdHlsZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
dGV4dC92YXJpYXRpb25zL2dldENvbXB1dGVkU3R5bGUuaHRtbApAQCAtMjksNCArMjksNCBAQCBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoIndpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCd0ZXN0NycpKQogPC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CiA8L2JvZHk+Ci08L2h0bWw+Cis8
L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvaW5oZXJpdGFuY2UtZXhwZWN0ZWQuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2luaGVyaXRhbmNlLWV4cGVjdGVkLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZTRhMWU0NDU4NjZiMzQ5NDk4YzMxOTAwODFjMjIwMDM4MjYzMzIzNQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2luaGVyaXRhbmNl
LWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwxMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4K
KzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgd2luZG93LmludGVy
bmFscy5zZXR0aW5ncy5zZXRWYXJpYXRpb25Gb250c0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorPGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6ICdTa2lhJzsgZm9udC12
YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyAyOyI+VGVzdCBwYXNzZXMgaWYgdGhpcyB0ZXh0IGlz
IGJvbGQuPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvaW5oZXJpdGFu
Y2UuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2luaGVyaXRhbmNlLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uN2M2MjA3Y2NkYjFhOWU1YWE2MGFlNzUyMWZmZWI2MDExY2I5MTNlMwot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2luaGVy
aXRhbmNlLmh0bWwKQEAgLTAsMCArMSwxMiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxo
ZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgd2luZG93LmludGVybmFs
cy5zZXR0aW5ncy5zZXRWYXJpYXRpb25Gb250c0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KKzwv
aGVhZD4KKzxib2R5PgorPGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6ICdTa2lhJzsgZm9udC12YXJp
YXRpb24tc2V0dGluZ3M6ICd3Z2h0JyAyOyI+PGRpdj5UZXN0IHBhc3NlcyBpZiB0aGlzIHRleHQg
aXMgYm9sZC48L2Rpdj48L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9v
cmRlci1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvb3Jk
ZXItZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mN2ZkZWQ3YTJlYzk5M2Q3YTJlMmE2YjA1M2Y5
NmY2MWYxNjY3YjVlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3Zh
cmlhdGlvbnMvb3JkZXItZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5pbnRlcm5hbHMpCisg
ICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldFZhcmlhdGlvbkZvbnRzRW5hYmxlZCh0cnVl
KTsKKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IHN0eWxlPSJmb250LWZhbWlseTog
J1NraWEnOyBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dkdGgnIDEuMiwgJ3dnaHQnIDI7Ij5U
ZXN0IHBhc3NlcyBpZiB0aGlzIHRleHQgaGFzIGEgd2VpZ2h0IG9mIDMuPC9kaXY+Cis8L2JvZHk+
Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvb3JkZXIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
dGV4dC92YXJpYXRpb25zL29yZGVyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTNlMjNhMGM4NDY2ZmUwZjc5
MWYzMjIyMWVmMmQzMDYxYjY0MzRlMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvdGV4dC92YXJpYXRpb25zL29yZGVyLmh0bWwKQEAgLTAsMCArMSwxMiBAQAorPCFET0NUWVBF
IGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cuaW50ZXJuYWxzKQor
ICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRWYXJpYXRpb25Gb250c0VuYWJsZWQodHJ1
ZSk7Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6
ICdTa2lhJzsgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyAyLCAnd2R0aCcgMS4yOyI+
VGVzdCBwYXNzZXMgaWYgdGhpcyB0ZXh0IGhhcyBhIHdlaWdodCBvZiAzLjwvZGl2PgorPC9ib2R5
PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL291dG9mYm91bmRzLWV4cGVjdGVkLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9vdXRvZmJvdW5kcy1leHBlY3RlZC5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjdhN2VmYjdlZjgwOTExNmZiNGU4ZTFkNGRiNWY2MmNjZDkwNjYxOGIKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9vdXRvZmJv
dW5kcy1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0
bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVybmFscykKKyAgIHdpbmRvdy5p
bnRlcm5hbHMuc2V0dGluZ3Muc2V0VmFyaWF0aW9uRm9udHNFbmFibGVkKHRydWUpOworPC9zY3Jp
cHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiAnU2tpYSc7Ij5U
ZXN0IHBhc3NlcyBpZiB0aGlzIHRleHQgaXMgbm90IGJvbGQuPC9kaXY+Cis8L2JvZHk+Cis8L2h0
bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC90ZXh0L3ZhcmlhdGlvbnMvb3V0b2Zib3VuZHMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
dGV4dC92YXJpYXRpb25zL291dG9mYm91bmRzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzkyYjY3ZDVhM2I5
NWE2NjM3OWJlNzFjMmUxN2JkODVlYmUyNWQ4YwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL291dG9mYm91bmRzLmh0bWwKQEAgLTAsMCArMSwxMiBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cu
aW50ZXJuYWxzKQorICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRWYXJpYXRpb25Gb250
c0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBzdHlsZT0i
Zm9udC1mYW1pbHk6ICdTa2lhJzsgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyAyNzsi
PlRlc3QgcGFzc2VzIGlmIHRoaXMgdGV4dCBpcyBub3QgYm9sZC48L2Rpdj4KKzwvYm9keT4KKzwv
aHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCg==
</data>
<flag name="review"
          id="313584"
          type_id="1"
          status="+"
          setter="zalan"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>290481</attachid>
            <date>2016-10-03 02:33:04 -0700</date>
            <delta_ts>2016-10-03 14:36:42 -0700</delta_ts>
            <desc>Patch for re-landing</desc>
            <filename>bug-162782-20161003022956.patch</filename>
            <type>text/plain</type>
            <size>25301</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2NzI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2M0MmY3MmEzMjVhNzBl
OGY3OWRhMGM2YmE2MWEwNjA3Nzc5NjAwOC4uZGUxZWQ3N2U0MDM5MWVjMTVmYmI2NzI5OTM5NTBi
YzMxMTlmMzE2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDE2LTEwLTAzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50
IHJlbmRlcmluZyBvZiBmb250LXZhcmlhdGlvbi1zZXR0aW5ncworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyNzgyCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgWmFsYW4gQnVqdGFzLiAKKworICAgICAgICAoUmUtbGFuZGluZyBhZnRlciBmaXhpbmcgdGVz
dHMuKQorCisgICAgICAgIEJlY2F1c2UgdGhlIGhlYXZ5IGxpZnRpbmcgZm9yIGZvbnQtdmFyaWF0
aW9uLXNldHRpbmdzIGlzIGRvbmUgYnkgQ29yZVRleHQsIAorICAgICAgICB0aGlzIHBhdGNoIGlz
IGZhaXJseSBtaW5pbWFsLiBJdCBzaW1wbHkgaG9va3MgdXAgdGhlIENTUyBwcm9wZXJ0eSB0byBD
b3JlVGV4dC4gCisKKyAgICAgICAgVGhlcmUgaXMgYW4gZXhpc3RpbmcgYnVnIGluIENvcmVUZXh0
IHdoZXJlIHZhcmlhdGlvbnMgaW5zaWRlIGZvbnRzIGRvIG5vdCAKKyAgICAgICAgc3Vydml2ZSB0
aGUgYWRkaXRpb24gb2YgYSBjYXNjYWRlIGxpc3QuIFRoZXJlZm9yZSwgRm9udFBsYXRmb3JtRGF0
YTo6Y3RGb250KCkgCisgICAgICAgIG5lZWRzIHRvIHdvcmsgYXJvdW5kIHRoaXMgKGNvbmRpdGlv
bmFsbHkpIGJ5IHJlc3VwcGx5aW5nIHRoZSB2YXJpYXRpb24gYXQgCisgICAgICAgIHRoZSBzYW1l
IHRpbWUgYXMgdGhlIGNhc2NhZGUgbGlzdC4gVGhlIENvcmVUZXh0IGJ1ZyBpcyA8cmRhcjovL3By
b2JsZW0vMjg0NDk0NDE+LiAKKworICAgICAgICBUZXN0czogZmFzdC90ZXh0L3ZhcmlhdGlvbnMv
ZHVwbGljYXRlLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvdGV4dC92YXJpYXRpb25zL2V4aXN0
Lmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvdGV4dC92YXJpYXRpb25zL2luaGVyaXRhbmNlLmh0
bWwKKyAgICAgICAgICAgICAgIGZhc3QvdGV4dC92YXJpYXRpb25zL29yZGVyLmh0bWwKKyAgICAg
ICAgICAgICAgIGZhc3QvdGV4dC92YXJpYXRpb25zL291dG9mYm91bmRzLmh0bWwKKworICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnBy
ZXBhcmVQbGF0Zm9ybUZvbnQpOgorICAgICAgICAoV2ViQ29yZTo6Zm9udFdpdGhGYW1pbHkpOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9udENhY2hlOjpjcmVhdGVGb250UGxhdGZvcm1EYXRhKToKKyAg
ICAgICAgKFdlYkNvcmU6OkZvbnRDYWNoZTo6c3lzdGVtRmFsbGJhY2tGb3JDaGFyYWN0ZXJzKToK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250UGxhdGZvcm1EYXRhQ29jb2Eu
bW06CisgICAgICAgIChXZWJDb3JlOjpjYXNjYWRlVG9MYXN0UmVzb3J0QXR0cmlidXRlc0RpY3Rp
b25hcnkpOgorICAgICAgICAoV2ViQ29yZTo6Y2FzY2FkZVRvTGFzdFJlc29ydEFuZFZhcmlhdGlv
bnNGb250RGVzY3JpcHRvcik6CisgICAgICAgIChXZWJDb3JlOjpGb250UGxhdGZvcm1EYXRhOjpj
dEZvbnQpOgorICAgICAgICAoV2ViQ29yZTo6Y2FzY2FkZVRvTGFzdFJlc29ydEZvbnREZXNjcmlw
dG9yKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udEN1c3Rv
bVBsYXRmb3JtRGF0YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q3VzdG9tUGxhdGZvcm1E
YXRhOjpmb250UGxhdGZvcm1EYXRhKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGhlbWVJ
T1MubW06CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZUlPUzo6dXBkYXRlQ2FjaGVkU3lz
dGVtRm9udERlc2NyaXB0aW9uKToKKwogMjAxNi0xMC0wMiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpA
YXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0IGZvciBLZXlib2FyZEV2ZW50LmdldE1v
ZGlmaWVyU3RhdGUoKSBvcGVyYXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0ZvbnRDYWNoZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvRm9udENhY2hlLmgKaW5kZXggMTU0NmE4ZmQ0MDRjZDIwZGJmZDBjNzM5MzY1MzRjODQ3ZGRi
MzlmOS4uN2NhMGI2NTM3NDVmMTRjNzRjYzdiNzc5MGM0MzZiYjAzOTM0NDBhZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhY2hlLmgKQEAgLTI1OSw3ICsyNTks
NyBAQCBzdHJ1Y3QgU3ludGhlc2lzUGFpciB7CiAgICAgYm9vbCBuZWVkc1N5bnRoZXRpY09ibGlx
dWU7CiB9OwogCi1SZXRhaW5QdHI8Q1RGb250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250KENURm9u
dFJlZiwgVGV4dFJlbmRlcmluZ01vZGUsIGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MqIGZvbnRG
YWNlRmVhdHVyZXMsIGNvbnN0IEZvbnRWYXJpYW50U2V0dGluZ3MqIGZvbnRGYWNlVmFyaWFudFNl
dHRpbmdzLCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmZWF0dXJlcywgY29uc3QgRm9udFZh
cmlhbnRTZXR0aW5ncyYpOworUmV0YWluUHRyPENURm9udFJlZj4gcHJlcGFyZVBsYXRmb3JtRm9u
dChDVEZvbnRSZWYsIFRleHRSZW5kZXJpbmdNb2RlLCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdz
KiBmb250RmFjZUZlYXR1cmVzLCBjb25zdCBGb250VmFyaWFudFNldHRpbmdzKiBmb250RmFjZVZh
cmlhbnRTZXR0aW5ncywgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZmVhdHVyZXMsIGNvbnN0
IEZvbnRWYXJpYW50U2V0dGluZ3MmLCBjb25zdCBGb250VmFyaWF0aW9uU2V0dGluZ3MmKTsKIEZv
bnRXZWlnaHQgZm9udFdlaWdodEZyb21Db3JlVGV4dChDR0Zsb2F0IHdlaWdodCk7CiB1aW50MTZf
dCB0b0NvcmVUZXh0Rm9udFdlaWdodChGb250V2VpZ2h0KTsKIGJvb2wgaXNGb250V2VpZ2h0Qm9s
ZChGb250V2VpZ2h0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcAppbmRleCA3ZjBhZDIyOTFiMDJl
YzM0ODU4YzBmYTE1NDA5ZmNlN2M2MWUxYjRlLi5kNzMwMDJiNzg5MmMxYmQyM2FlZjQ5ODQxYTRi
YzBjZDA2YTJlZmY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwCkBAIC0xNDMsNiArMTQzLDcg
QEAgc3RhdGljIGlubGluZSB2b2lkIGFwcGVuZE9wZW5UeXBlRmVhdHVyZShDRk11dGFibGVBcnJh
eVJlZiBmZWF0dXJlcywgY29uc3QgRm9udEYKIH0KIAogdHlwZWRlZiBIYXNoTWFwPEZvbnRUYWcs
IGludCwgRm91ckNoYXJhY3RlclRhZ0hhc2gsIEZvdXJDaGFyYWN0ZXJUYWdIYXNoVHJhaXRzPiBG
ZWF0dXJlc01hcDsKK3R5cGVkZWYgSGFzaE1hcDxGb250VGFnLCBmbG9hdCwgRm91ckNoYXJhY3Rl
clRhZ0hhc2gsIEZvdXJDaGFyYWN0ZXJUYWdIYXNoVHJhaXRzPiBWYXJpYXRpb25zTWFwOwogCiBz
dGF0aWMgRmVhdHVyZXNNYXAgY29tcHV0ZUZlYXR1cmVTZXR0aW5nc0Zyb21WYXJpYW50cyhjb25z
dCBGb250VmFyaWFudFNldHRpbmdzJiB2YXJpYW50U2V0dGluZ3MpCiB7CkBAIC0zNjAsOSArMzYx
LDkgQEAgc3RhdGljIEZlYXR1cmVzTWFwIGNvbXB1dGVGZWF0dXJlU2V0dGluZ3NGcm9tVmFyaWFu
dHMoY29uc3QgRm9udFZhcmlhbnRTZXR0aW5ncyYKICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1S
ZXRhaW5QdHI8Q1RGb250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250KENURm9udFJlZiBvcmlnaW5h
bEZvbnQsIFRleHRSZW5kZXJpbmdNb2RlIHRleHRSZW5kZXJpbmdNb2RlLCBjb25zdCBGb250RmVh
dHVyZVNldHRpbmdzKiBmb250RmFjZUZlYXR1cmVzLCBjb25zdCBGb250VmFyaWFudFNldHRpbmdz
KiBmb250RmFjZVZhcmlhbnRTZXR0aW5ncywgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZmVh
dHVyZXMsIGNvbnN0IEZvbnRWYXJpYW50U2V0dGluZ3MmIHZhcmlhbnRTZXR0aW5ncykKK1JldGFp
blB0cjxDVEZvbnRSZWY+IHByZXBhcmVQbGF0Zm9ybUZvbnQoQ1RGb250UmVmIG9yaWdpbmFsRm9u
dCwgVGV4dFJlbmRlcmluZ01vZGUgdGV4dFJlbmRlcmluZ01vZGUsIGNvbnN0IEZvbnRGZWF0dXJl
U2V0dGluZ3MqIGZvbnRGYWNlRmVhdHVyZXMsIGNvbnN0IEZvbnRWYXJpYW50U2V0dGluZ3MqIGZv
bnRGYWNlVmFyaWFudFNldHRpbmdzLCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmZWF0dXJl
cywgY29uc3QgRm9udFZhcmlhbnRTZXR0aW5ncyYgdmFyaWFudFNldHRpbmdzLCBjb25zdCBGb250
VmFyaWF0aW9uU2V0dGluZ3MmIHZhcmlhdGlvbnMpCiB7Ci0gICAgaWYgKCFvcmlnaW5hbEZvbnQg
fHwgKCFmZWF0dXJlcy5zaXplKCkgJiYgKHRleHRSZW5kZXJpbmdNb2RlID09IEF1dG9UZXh0UmVu
ZGVyaW5nKSAmJiB2YXJpYW50U2V0dGluZ3MuaXNBbGxOb3JtYWwoKQorICAgIGlmICghb3JpZ2lu
YWxGb250IHx8ICghZmVhdHVyZXMuc2l6ZSgpICYmIHZhcmlhdGlvbnMuaXNFbXB0eSgpICYmICh0
ZXh0UmVuZGVyaW5nTW9kZSA9PSBBdXRvVGV4dFJlbmRlcmluZykgJiYgdmFyaWFudFNldHRpbmdz
LmlzQWxsTm9ybWFsKCkKICAgICAgICAgJiYgKCFmb250RmFjZUZlYXR1cmVzIHx8ICFmb250RmFj
ZUZlYXR1cmVzLT5zaXplKCkpICYmICghZm9udEZhY2VWYXJpYW50U2V0dGluZ3MgfHwgZm9udEZh
Y2VWYXJpYW50U2V0dGluZ3MtPmlzQWxsTm9ybWFsKCkpKSkKICAgICAgICAgcmV0dXJuIG9yaWdp
bmFsRm9udDsKIApAQCAtMzk4LDggKzM5OSwxMiBAQCBSZXRhaW5QdHI8Q1RGb250UmVmPiBwcmVw
YXJlUGxhdGZvcm1Gb250KENURm9udFJlZiBvcmlnaW5hbEZvbnQsIFRleHRSZW5kZXJpbmdNbwog
ICAgIGZvciAoYXV0byYgbmV3RmVhdHVyZSA6IGZlYXR1cmVzKQogICAgICAgICBmZWF0dXJlc1Rv
QmVBcHBsaWVkLnNldChuZXdGZWF0dXJlLnRhZygpLCBuZXdGZWF0dXJlLnZhbHVlKCkpOwogCisg
ICAgVmFyaWF0aW9uc01hcCB2YXJpYXRpb25zVG9CZUFwcGxpZWQ7CisgICAgZm9yIChhdXRvJiBu
ZXdWYXJpYXRpb24gOiB2YXJpYXRpb25zKQorICAgICAgICB2YXJpYXRpb25zVG9CZUFwcGxpZWQu
c2V0KG5ld1ZhcmlhdGlvbi50YWcoKSwgbmV3VmFyaWF0aW9uLnZhbHVlKCkpOworCiAgICAgUmV0
YWluUHRyPENGTXV0YWJsZURpY3Rpb25hcnlSZWY+IGF0dHJpYnV0ZXMgPSBhZG9wdENGKENGRGlj
dGlvbmFyeUNyZWF0ZU11dGFibGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwgMiwgJmtDRlR5cGVEaWN0
aW9uYXJ5S2V5Q2FsbEJhY2tzLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOwot
ICAgIGlmIChmZWF0dXJlc1RvQmVBcHBsaWVkLnNpemUoKSkgeworICAgIGlmICghZmVhdHVyZXNU
b0JlQXBwbGllZC5pc0VtcHR5KCkpIHsKICAgICAgICAgUmV0YWluUHRyPENGTXV0YWJsZUFycmF5
UmVmPiBmZWF0dXJlQXJyYXkgPSBhZG9wdENGKENGQXJyYXlDcmVhdGVNdXRhYmxlKGtDRkFsbG9j
YXRvckRlZmF1bHQsIGZlYXR1cmVzLnNpemUoKSwgJmtDRlR5cGVBcnJheUNhbGxCYWNrcykpOwog
ICAgICAgICBmb3IgKGF1dG8mIHAgOiBmZWF0dXJlc1RvQmVBcHBsaWVkKSB7CiAgICAgICAgICAg
ICBhdXRvIGZlYXR1cmUgPSBGb250RmVhdHVyZShwLmtleSwgcC52YWx1ZSk7CkBAIC00MDgsNiAr
NDEzLDE4IEBAIFJldGFpblB0cjxDVEZvbnRSZWY+IHByZXBhcmVQbGF0Zm9ybUZvbnQoQ1RGb250
UmVmIG9yaWdpbmFsRm9udCwgVGV4dFJlbmRlcmluZ01vCiAgICAgICAgIH0KICAgICAgICAgQ0ZE
aWN0aW9uYXJ5QWRkVmFsdWUoYXR0cmlidXRlcy5nZXQoKSwga0NURm9udEZlYXR1cmVTZXR0aW5n
c0F0dHJpYnV0ZSwgZmVhdHVyZUFycmF5LmdldCgpKTsKICAgICB9CisKKyAgICBpZiAoIXZhcmlh
dGlvbnNUb0JlQXBwbGllZC5pc0VtcHR5KCkpIHsKKyAgICAgICAgYXV0byB2YXJpYXRpb25EaWN0
aW9uYXJ5ID0gYWRvcHRDRihDRkRpY3Rpb25hcnlDcmVhdGVNdXRhYmxlKGtDRkFsbG9jYXRvckRl
ZmF1bHQsIDAsICZrQ0ZUeXBlRGljdGlvbmFyeUtleUNhbGxCYWNrcywgJmtDRlR5cGVEaWN0aW9u
YXJ5VmFsdWVDYWxsQmFja3MpKTsKKyAgICAgICAgZm9yIChhdXRvJiBwIDogdmFyaWF0aW9uc1Rv
QmVBcHBsaWVkKSB7CisgICAgICAgICAgICBsb25nIGxvbmcgYml0d2lzZVRhZyA9IHAua2V5WzBd
IDw8IDI0IHwgcC5rZXlbMV0gPDwgMTYgfCBwLmtleVsyXSA8PCA4IHwgcC5rZXlbM107CisgICAg
ICAgICAgICBhdXRvIHRhZ051bWJlciA9IGFkb3B0Q0YoQ0ZOdW1iZXJDcmVhdGUoa0NGQWxsb2Nh
dG9yRGVmYXVsdCwga0NGTnVtYmVyTG9uZ0xvbmdUeXBlLCAmYml0d2lzZVRhZykpOworICAgICAg
ICAgICAgYXV0byB2YWx1ZU51bWJlciA9IGFkb3B0Q0YoQ0ZOdW1iZXJDcmVhdGUoa0NGQWxsb2Nh
dG9yRGVmYXVsdCwga0NGTnVtYmVyRmxvYXRUeXBlLCAmcC52YWx1ZSkpOworICAgICAgICAgICAg
Q0ZEaWN0aW9uYXJ5U2V0VmFsdWUodmFyaWF0aW9uRGljdGlvbmFyeS5nZXQoKSwgdGFnTnVtYmVy
LmdldCgpLCB2YWx1ZU51bWJlci5nZXQoKSk7CisgICAgICAgIH0KKyAgICAgICAgQ0ZEaWN0aW9u
YXJ5QWRkVmFsdWUoYXR0cmlidXRlcy5nZXQoKSwga0NURm9udFZhcmlhdGlvbkF0dHJpYnV0ZSwg
dmFyaWF0aW9uRGljdGlvbmFyeS5nZXQoKSk7CisgICAgfQorCiAgICAgaWYgKHRleHRSZW5kZXJp
bmdNb2RlID09IE9wdGltaXplTGVnaWJpbGl0eSkgewogICAgICAgICBDR0Zsb2F0IHNpemUgPSBD
VEZvbnRHZXRTaXplKG9yaWdpbmFsRm9udCk7CiAgICAgICAgIFJldGFpblB0cjxDRk51bWJlclJl
Zj4gc2l6ZU51bWJlciA9IGFkb3B0Q0YoQ0ZOdW1iZXJDcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVs
dCwga0NGTnVtYmVyQ0dGbG9hdFR5cGUsICZzaXplKSk7CkBAIC02NzYsNyArNjkzLDcgQEAgc3Rh
dGljIFJldGFpblB0cjxDVEZvbnRSZWY+IHBsYXRmb3JtRm9udExvb2t1cFdpdGhGYW1pbHkoY29u
c3QgQXRvbWljU3RyaW5nJiBmYW0KIH0KICNlbmRpZgogCi1zdGF0aWMgUmV0YWluUHRyPENURm9u
dFJlZj4gZm9udFdpdGhGYW1pbHkoY29uc3QgQXRvbWljU3RyaW5nJiBmYW1pbHksIENURm9udFN5
bWJvbGljVHJhaXRzIGRlc2lyZWRUcmFpdHMsIEZvbnRXZWlnaHQgd2VpZ2h0LCBjb25zdCBGb250
RmVhdHVyZVNldHRpbmdzJiBmZWF0dXJlU2V0dGluZ3MsIGNvbnN0IEZvbnRWYXJpYW50U2V0dGlu
Z3MmIHZhcmlhbnRTZXR0aW5ncywgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyogZm9udEZhY2VG
ZWF0dXJlcywgY29uc3QgRm9udFZhcmlhbnRTZXR0aW5ncyogZm9udEZhY2VWYXJpYW50U2V0dGlu
Z3MsIGNvbnN0IFRleHRSZW5kZXJpbmdNb2RlJiB0ZXh0UmVuZGVyaW5nTW9kZSwgZmxvYXQgc2l6
ZSkKK3N0YXRpYyBSZXRhaW5QdHI8Q1RGb250UmVmPiBmb250V2l0aEZhbWlseShjb25zdCBBdG9t
aWNTdHJpbmcmIGZhbWlseSwgQ1RGb250U3ltYm9saWNUcmFpdHMgZGVzaXJlZFRyYWl0cywgRm9u
dFdlaWdodCB3ZWlnaHQsIGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MmIGZlYXR1cmVTZXR0aW5n
cywgY29uc3QgRm9udFZhcmlhbnRTZXR0aW5ncyYgdmFyaWFudFNldHRpbmdzLCBjb25zdCBGb250
VmFyaWF0aW9uU2V0dGluZ3MmIHZhcmlhdGlvblNldHRpbmdzLCBjb25zdCBGb250RmVhdHVyZVNl
dHRpbmdzKiBmb250RmFjZUZlYXR1cmVzLCBjb25zdCBGb250VmFyaWFudFNldHRpbmdzKiBmb250
RmFjZVZhcmlhbnRTZXR0aW5ncywgY29uc3QgVGV4dFJlbmRlcmluZ01vZGUmIHRleHRSZW5kZXJp
bmdNb2RlLCBmbG9hdCBzaXplKQogewogICAgIGlmIChmYW1pbHkuaXNFbXB0eSgpKQogICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKQEAgLTY4OSw3ICs3MDYsNyBAQCBzdGF0aWMgUmV0YWluUHRyPENU
Rm9udFJlZj4gZm9udFdpdGhGYW1pbHkoY29uc3QgQXRvbWljU3RyaW5nJiBmYW1pbHksIENURm9u
dFN5bQogICAgICAgICBmb3VuZEZvbnQgPSBwbGF0Zm9ybUZvbnRXaXRoRmFtaWx5KGZhbWlseSwg
ZGVzaXJlZFRyYWl0cywgd2VpZ2h0LCB0ZXh0UmVuZGVyaW5nTW9kZSwgc2l6ZSk7CiAjZW5kaWYK
ICAgICB9Ci0gICAgcmV0dXJuIHByZXBhcmVQbGF0Zm9ybUZvbnQoZm91bmRGb250LmdldCgpLCB0
ZXh0UmVuZGVyaW5nTW9kZSwgZm9udEZhY2VGZWF0dXJlcywgZm9udEZhY2VWYXJpYW50U2V0dGlu
Z3MsIGZlYXR1cmVTZXR0aW5ncywgdmFyaWFudFNldHRpbmdzKTsKKyAgICByZXR1cm4gcHJlcGFy
ZVBsYXRmb3JtRm9udChmb3VuZEZvbnQuZ2V0KCksIHRleHRSZW5kZXJpbmdNb2RlLCBmb250RmFj
ZUZlYXR1cmVzLCBmb250RmFjZVZhcmlhbnRTZXR0aW5ncywgZmVhdHVyZVNldHRpbmdzLCB2YXJp
YW50U2V0dGluZ3MsIHZhcmlhdGlvblNldHRpbmdzKTsKIH0KIAogI2lmIFBMQVRGT1JNKE1BQykK
QEAgLTcyOSw3ICs3NDYsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8Rm9udFBsYXRmb3JtRGF0YT4gRm9u
dENhY2hlOjpjcmVhdGVGb250UGxhdGZvcm1EYXRhKGNvbnN0IEZvbnREZQogICAgIENURm9udFN5
bWJvbGljVHJhaXRzIHRyYWl0cyA9IGNvbXB1dGVUcmFpdHMoZm9udERlc2NyaXB0aW9uKTsKICAg
ICBmbG9hdCBzaXplID0gZm9udERlc2NyaXB0aW9uLmNvbXB1dGVkUGl4ZWxTaXplKCk7CiAKLSAg
ICBSZXRhaW5QdHI8Q1RGb250UmVmPiBmb250ID0gZm9udFdpdGhGYW1pbHkoZmFtaWx5LCB0cmFp
dHMsIGZvbnREZXNjcmlwdGlvbi53ZWlnaHQoKSwgZm9udERlc2NyaXB0aW9uLmZlYXR1cmVTZXR0
aW5ncygpLCBmb250RGVzY3JpcHRpb24udmFyaWFudFNldHRpbmdzKCksIGZvbnRGYWNlRmVhdHVy
ZXMsIGZvbnRGYWNlVmFyaWFudFNldHRpbmdzLCBmb250RGVzY3JpcHRpb24udGV4dFJlbmRlcmlu
Z01vZGUoKSwgc2l6ZSk7CisgICAgUmV0YWluUHRyPENURm9udFJlZj4gZm9udCA9IGZvbnRXaXRo
RmFtaWx5KGZhbWlseSwgdHJhaXRzLCBmb250RGVzY3JpcHRpb24ud2VpZ2h0KCksIGZvbnREZXNj
cmlwdGlvbi5mZWF0dXJlU2V0dGluZ3MoKSwgZm9udERlc2NyaXB0aW9uLnZhcmlhbnRTZXR0aW5n
cygpLCBmb250RGVzY3JpcHRpb24udmFyaWF0aW9uU2V0dGluZ3MoKSwgZm9udEZhY2VGZWF0dXJl
cywgZm9udEZhY2VWYXJpYW50U2V0dGluZ3MsIGZvbnREZXNjcmlwdGlvbi50ZXh0UmVuZGVyaW5n
TW9kZSgpLCBzaXplKTsKIAogI2lmIFBMQVRGT1JNKE1BQykKICAgICBpZiAoIWZvbnQpIHsKQEAg
LTc0MCw3ICs3NTcsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8Rm9udFBsYXRmb3JtRGF0YT4gRm9udENh
Y2hlOjpjcmVhdGVGb250UGxhdGZvcm1EYXRhKGNvbnN0IEZvbnREZQogICAgICAgICAvLyBJZ25v
cmUgdGhlIHJlc3VsdCBiZWNhdXNlIHdlIHdhbnQgdG8gdXNlIG91ciBvd24gYWxnb3JpdGhtIHRv
IGFjdHVhbGx5IGZpbmQgdGhlIGZvbnQuCiAgICAgICAgIGF1dG9BY3RpdmF0ZUZvbnQoZmFtaWx5
LnN0cmluZygpLCBzaXplKTsKIAotICAgICAgICBmb250ID0gZm9udFdpdGhGYW1pbHkoZmFtaWx5
LCB0cmFpdHMsIGZvbnREZXNjcmlwdGlvbi53ZWlnaHQoKSwgZm9udERlc2NyaXB0aW9uLmZlYXR1
cmVTZXR0aW5ncygpLCBmb250RGVzY3JpcHRpb24udmFyaWFudFNldHRpbmdzKCksIGZvbnRGYWNl
RmVhdHVyZXMsIGZvbnRGYWNlVmFyaWFudFNldHRpbmdzLCBmb250RGVzY3JpcHRpb24udGV4dFJl
bmRlcmluZ01vZGUoKSwgc2l6ZSk7CisgICAgICAgIGZvbnQgPSBmb250V2l0aEZhbWlseShmYW1p
bHksIHRyYWl0cywgZm9udERlc2NyaXB0aW9uLndlaWdodCgpLCBmb250RGVzY3JpcHRpb24uZmVh
dHVyZVNldHRpbmdzKCksIGZvbnREZXNjcmlwdGlvbi52YXJpYW50U2V0dGluZ3MoKSwgZm9udERl
c2NyaXB0aW9uLnZhcmlhdGlvblNldHRpbmdzKCksIGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRGYWNl
VmFyaWFudFNldHRpbmdzLCBmb250RGVzY3JpcHRpb24udGV4dFJlbmRlcmluZ01vZGUoKSwgc2l6
ZSk7CiAgICAgfQogI2VuZGlmCiAKQEAgLTc4NCw3ICs4MDEsNyBAQCBSZWZQdHI8Rm9udD4gRm9u
dENhY2hlOjpzeXN0ZW1GYWxsYmFja0ZvckNoYXJhY3RlcnMoY29uc3QgRm9udERlc2NyaXB0aW9u
JiBkZXNjcgogCiAgICAgY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhID0gb3Jp
Z2luYWxGb250RGF0YS0+cGxhdGZvcm1EYXRhKCk7CiAgICAgUmV0YWluUHRyPENURm9udFJlZj4g
cmVzdWx0ID0gcGxhdGZvcm1Mb29rdXBGYWxsYmFja0ZvbnQocGxhdGZvcm1EYXRhLmZvbnQoKSwg
ZGVzY3JpcHRpb24ud2VpZ2h0KCksIGRlc2NyaXB0aW9uLmxvY2FsZSgpLCBjaGFyYWN0ZXJzLCBs
ZW5ndGgpOwotICAgIHJlc3VsdCA9IHByZXBhcmVQbGF0Zm9ybUZvbnQocmVzdWx0LmdldCgpLCBk
ZXNjcmlwdGlvbi50ZXh0UmVuZGVyaW5nTW9kZSgpLCBudWxscHRyLCBudWxscHRyLCBkZXNjcmlw
dGlvbi5mZWF0dXJlU2V0dGluZ3MoKSwgZGVzY3JpcHRpb24udmFyaWFudFNldHRpbmdzKCkpOwor
ICAgIHJlc3VsdCA9IHByZXBhcmVQbGF0Zm9ybUZvbnQocmVzdWx0LmdldCgpLCBkZXNjcmlwdGlv
bi50ZXh0UmVuZGVyaW5nTW9kZSgpLCBudWxscHRyLCBudWxscHRyLCBkZXNjcmlwdGlvbi5mZWF0
dXJlU2V0dGluZ3MoKSwgZGVzY3JpcHRpb24udmFyaWFudFNldHRpbmdzKCksIGRlc2NyaXB0aW9u
LnZhcmlhdGlvblNldHRpbmdzKCkpOwogICAgIGlmICghcmVzdWx0KQogICAgICAgICByZXR1cm4g
bGFzdFJlc29ydEZhbGxiYWNrRm9udChkZXNjcmlwdGlvbik7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRQbGF0Zm9ybURhdGFDb2NvYS5t
bSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRQbGF0Zm9ybURh
dGFDb2NvYS5tbQppbmRleCAyOTRjYjhlZjQ4NDBkYmE5NzEwZjc5NjgxMzJkYjhlM2U4YTQ3YWZi
Li4xOWM3NDZhMzVmZmQ3NWVmNWVhN2MyOWY0MWZkOGRlOWE5Y2NjN2JmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250UGxhdGZvcm1EYXRhQ29j
b2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udFBs
YXRmb3JtRGF0YUNvY29hLm1tCkBAIC05OSwxMSArOTksMTEgQEAgaW5saW5lIGludCBtYXBGb250
V2lkdGhWYXJpYW50VG9DVEZlYXR1cmVTZWxlY3RvcihGb250V2lkdGhWYXJpYW50IHZhcmlhbnQp
CiAgICAgcmV0dXJuIFRleHRTcGFjaW5nUHJvcG9ydGlvbmFsOwogfQogCi1zdGF0aWMgQ1RGb250
RGVzY3JpcHRvclJlZiBjYXNjYWRlVG9MYXN0UmVzb3J0Rm9udERlc2NyaXB0b3IoKQorc3RhdGlj
IENGRGljdGlvbmFyeVJlZiBjYXNjYWRlVG9MYXN0UmVzb3J0QXR0cmlidXRlc0RpY3Rpb25hcnko
KQogewotICAgIHN0YXRpYyBDVEZvbnREZXNjcmlwdG9yUmVmIGRlc2NyaXB0b3I7Ci0gICAgaWYg
KGRlc2NyaXB0b3IpCi0gICAgICAgIHJldHVybiBkZXNjcmlwdG9yOworICAgIHN0YXRpYyBDRkRp
Y3Rpb25hcnlSZWYgYXR0cmlidXRlcyA9IG51bGxwdHI7CisgICAgaWYgKGF0dHJpYnV0ZXMpCisg
ICAgICAgIHJldHVybiBhdHRyaWJ1dGVzOwogCiAgICAgUmV0YWluUHRyPENURm9udERlc2NyaXB0
b3JSZWY+IGxhc3RSZXNvcnQgPSBhZG9wdENGKENURm9udERlc2NyaXB0b3JDcmVhdGVXaXRoTmFt
ZUFuZFNpemUoQ0ZTVFIoIkxhc3RSZXNvcnQiKSwgMCkpOwogCkBAIC0xMTIsMTEgKzExMiwzNyBA
QCBzdGF0aWMgQ1RGb250RGVzY3JpcHRvclJlZiBjYXNjYWRlVG9MYXN0UmVzb3J0Rm9udERlc2Ny
aXB0b3IoKQogCiAgICAgY29uc3Qgdm9pZCoga2V5c1tdID0geyBrQ1RGb250Q2FzY2FkZUxpc3RB
dHRyaWJ1dGUgfTsKICAgICBjb25zdCB2b2lkKiB2YWx1ZXNbXSA9IHsgYXJyYXkuZ2V0KCkgfTsK
LSAgICBSZXRhaW5QdHI8Q0ZEaWN0aW9uYXJ5UmVmPiBhdHRyaWJ1dGVzID0gYWRvcHRDRihDRkRp
Y3Rpb25hcnlDcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwga2V5cywgdmFsdWVzLCBXVEZfQVJS
QVlfTEVOR1RIKGtleXMpLCAma0NGVHlwZURpY3Rpb25hcnlLZXlDYWxsQmFja3MsICZrQ0ZUeXBl
RGljdGlvbmFyeVZhbHVlQ2FsbEJhY2tzKSk7CisgICAgYXR0cmlidXRlcyA9IENGRGljdGlvbmFy
eUNyZWF0ZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBrZXlzLCB2YWx1ZXMsIFdURl9BUlJBWV9MRU5H
VEgoa2V5cyksICZrQ0ZUeXBlRGljdGlvbmFyeUtleUNhbGxCYWNrcywgJmtDRlR5cGVEaWN0aW9u
YXJ5VmFsdWVDYWxsQmFja3MpOworCisgICAgcmV0dXJuIGF0dHJpYnV0ZXM7Cit9CisKK3N0YXRp
YyBSZXRhaW5QdHI8Q1RGb250RGVzY3JpcHRvclJlZj4gY2FzY2FkZVRvTGFzdFJlc29ydEFuZFZh
cmlhdGlvbnNGb250RGVzY3JpcHRvcihDVEZvbnRSZWYgb3JpZ2luYWxGb250KQoreworLy8gRklY
TUU6IFJlbW92ZSB0aGlzIHdoZW4gPHJkYXI6Ly9wcm9ibGVtLzI4NDQ5NDQxPiBpcyBmaXhlZC4K
KyNkZWZpbmUgV09SS0FST1VORF9DT1JFVEVYVF9WQVJJQVRJT05TX1dJVEhfRkFMTEJBQ0tfTElT
VF9CVUcgKChQTEFURk9STShNQUMpICYmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQg
PCAxMDEzMDApIHx8IChQTEFURk9STShJT1MpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JF
UVVJUkVEIDwgMTEwMDAwKSkKIAotICAgIGRlc2NyaXB0b3IgPSBDVEZvbnREZXNjcmlwdG9yQ3Jl
YXRlV2l0aEF0dHJpYnV0ZXMoYXR0cmlidXRlcy5nZXQoKSk7CisgICAgQ0ZEaWN0aW9uYXJ5UmVm
IGF0dHJpYnV0ZXMgPSBjYXNjYWRlVG9MYXN0UmVzb3J0QXR0cmlidXRlc0RpY3Rpb25hcnkoKTsK
KyNpZiBXT1JLQVJPVU5EX0NPUkVURVhUX1ZBUklBVElPTlNfV0lUSF9GQUxMQkFDS19MSVNUX0JV
RworICAgIGF1dG8gdmFyaWF0aW9ucyA9IGFkb3B0Q0Yoc3RhdGljX2Nhc3Q8Q0ZEaWN0aW9uYXJ5
UmVmPihDVEZvbnRDb3B5QXR0cmlidXRlKG9yaWdpbmFsRm9udCwga0NURm9udFZhcmlhdGlvbkF0
dHJpYnV0ZSkpKTsKKyAgICBpZiAoIXZhcmlhdGlvbnMgfHwgIUNGRGljdGlvbmFyeUdldENvdW50
KHZhcmlhdGlvbnMuZ2V0KCkpKQorI2VuZGlmCisgICAgeworICAgICAgICBVTlVTRURfUEFSQU0o
b3JpZ2luYWxGb250KTsKKworICAgICAgICBzdGF0aWMgQ1RGb250RGVzY3JpcHRvclJlZiBkZXNj
cmlwdG9yID0gbnVsbHB0cjsKKyAgICAgICAgaWYgKGRlc2NyaXB0b3IpCisgICAgICAgICAgICBy
ZXR1cm4gZGVzY3JpcHRvcjsKIAotICAgIHJldHVybiBkZXNjcmlwdG9yOworICAgICAgICBkZXNj
cmlwdG9yID0gQ1RGb250RGVzY3JpcHRvckNyZWF0ZVdpdGhBdHRyaWJ1dGVzKGF0dHJpYnV0ZXMp
OworICAgICAgICByZXR1cm4gZGVzY3JpcHRvcjsKKyAgICB9CisjaWYgV09SS0FST1VORF9DT1JF
VEVYVF9WQVJJQVRJT05TX1dJVEhfRkFMTEJBQ0tfTElTVF9CVUcKKyAgICBhdXRvIG11dGFibGVB
dHRyaWJ1dGVzID0gYWRvcHRDRihDRkRpY3Rpb25hcnlDcmVhdGVNdXRhYmxlQ29weShrQ0ZBbGxv
Y2F0b3JEZWZhdWx0LCAyLCBhdHRyaWJ1dGVzKSk7CisgICAgQ0ZEaWN0aW9uYXJ5QWRkVmFsdWUo
bXV0YWJsZUF0dHJpYnV0ZXMuZ2V0KCksIGtDVEZvbnRWYXJpYXRpb25BdHRyaWJ1dGUsIHZhcmlh
dGlvbnMuZ2V0KCkpOworICAgIHJldHVybiBhZG9wdENGKENURm9udERlc2NyaXB0b3JDcmVhdGVX
aXRoQXR0cmlidXRlcyhtdXRhYmxlQXR0cmlidXRlcy5nZXQoKSkpOworI2VuZGlmCisjdW5kZWYg
V09SS0FST1VORF9DT1JFVEVYVF9WQVJJQVRJT05TX1dJVEhfRkFMTEJBQ0tfTElTVF9CVUcKIH0K
IAogQ1RGb250UmVmIEZvbnRQbGF0Zm9ybURhdGE6OmN0Rm9udCgpIGNvbnN0CkBAIC0xMjgsNyAr
MTU0LDcgQEAgQ1RGb250UmVmIEZvbnRQbGF0Zm9ybURhdGE6OmN0Rm9udCgpIGNvbnN0CiAjaWYg
KFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA8IDEwMTIw
MCkgfHwgKFBMQVRGT1JNKElPUykgJiYgX19JUEhPTkVfT1NfVkVSU0lPTl9NSU5fUkVRVUlSRUQg
PCAxMDAwMDApCiAgICAgQVNTRVJUKG1fY2dGb250KTsKICNlbmRpZgotICAgIG1fY3RGb250ID0g
YWRvcHRDRihDVEZvbnRDcmVhdGVDb3B5V2l0aEF0dHJpYnV0ZXMobV9mb250LmdldCgpLCBtX3Np
emUsIDAsIGNhc2NhZGVUb0xhc3RSZXNvcnRGb250RGVzY3JpcHRvcigpKSk7CisgICAgbV9jdEZv
bnQgPSBhZG9wdENGKENURm9udENyZWF0ZUNvcHlXaXRoQXR0cmlidXRlcyhtX2ZvbnQuZ2V0KCks
IG1fc2l6ZSwgMCwgY2FzY2FkZVRvTGFzdFJlc29ydEFuZFZhcmlhdGlvbnNGb250RGVzY3JpcHRv
cihtX2ZvbnQuZ2V0KCkpLmdldCgpKSk7CiAKICAgICBpZiAobV93aWR0aFZhcmlhbnQgIT0gUmVn
dWxhcldpZHRoKSB7CiAgICAgICAgIGludCBmZWF0dXJlVHlwZVZhbHVlID0ga1RleHRTcGFjaW5n
VHlwZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9G
b250Q3VzdG9tUGxhdGZvcm1EYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmNwcAppbmRleCAxMGViZTAzYzBlZTUyMzBm
N2Q2NWQ0ZGQ0Njk4NTQxOTNjNjdhYjU3Li5iMDBjMThlNGYyZmM2NjdkYzFkMzQ5OTYwYmU5NmIz
ODcxZDMzOGY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9t
YWMvRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuY3BwCkBAIC00MCw3ICs0MCw3
IEBAIEZvbnRQbGF0Zm9ybURhdGEgRm9udEN1c3RvbVBsYXRmb3JtRGF0YTo6Zm9udFBsYXRmb3Jt
RGF0YShjb25zdCBGb250RGVzY3JpcHRpb24mCiAgICAgRm9udE9yaWVudGF0aW9uIG9yaWVudGF0
aW9uID0gZm9udERlc2NyaXB0aW9uLm9yaWVudGF0aW9uKCk7CiAgICAgRm9udFdpZHRoVmFyaWFu
dCB3aWR0aFZhcmlhbnQgPSBmb250RGVzY3JpcHRpb24ud2lkdGhWYXJpYW50KCk7CiAgICAgUmV0
YWluUHRyPENURm9udFJlZj4gZm9udCA9IGFkb3B0Q0YoQ1RGb250Q3JlYXRlV2l0aEZvbnREZXNj
cmlwdG9yKG1fZm9udERlc2NyaXB0b3IuZ2V0KCksIHNpemUsIG51bGxwdHIpKTsKLSAgICBmb250
ID0gcHJlcGFyZVBsYXRmb3JtRm9udChmb250LmdldCgpLCBmb250RGVzY3JpcHRpb24udGV4dFJl
bmRlcmluZ01vZGUoKSwgJmZvbnRGYWNlRmVhdHVyZXMsICZmb250RmFjZVZhcmlhbnRTZXR0aW5n
cywgZm9udERlc2NyaXB0aW9uLmZlYXR1cmVTZXR0aW5ncygpLCBmb250RGVzY3JpcHRpb24udmFy
aWFudFNldHRpbmdzKCkpOworICAgIGZvbnQgPSBwcmVwYXJlUGxhdGZvcm1Gb250KGZvbnQuZ2V0
KCksIGZvbnREZXNjcmlwdGlvbi50ZXh0UmVuZGVyaW5nTW9kZSgpLCAmZm9udEZhY2VGZWF0dXJl
cywgJmZvbnRGYWNlVmFyaWFudFNldHRpbmdzLCBmb250RGVzY3JpcHRpb24uZmVhdHVyZVNldHRp
bmdzKCksIGZvbnREZXNjcmlwdGlvbi52YXJpYW50U2V0dGluZ3MoKSwgZm9udERlc2NyaXB0aW9u
LnZhcmlhdGlvblNldHRpbmdzKCkpOwogICAgIEFTU0VSVChmb250KTsKICAgICByZXR1cm4gRm9u
dFBsYXRmb3JtRGF0YShmb250LmdldCgpLCBzaXplLCBib2xkLCBpdGFsaWMsIG9yaWVudGF0aW9u
LCB3aWR0aFZhcmlhbnQsIGZvbnREZXNjcmlwdGlvbi50ZXh0UmVuZGVyaW5nTW9kZSgpKTsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbSBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQppbmRleCA4NzkwZjc5
YzNkMzE5NTU3OTE5Y2RhODMyNWNiZGZmMzFlZTc4ZWViLi44YmY3NGMwZWZiYWZiNTAzNzU0MWNk
NjM1ZGE0MmY5YjY3ZjEzMGJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyVGhlbWVJT1MubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRo
ZW1lSU9TLm1tCkBAIC0xMjc4LDcgKzEyNzgsNyBAQCB2b2lkIFJlbmRlclRoZW1lSU9TOjp1cGRh
dGVDYWNoZWRTeXN0ZW1Gb250RGVzY3JpcHRpb24oQ1NTVmFsdWVJRCB2YWx1ZUlELCBGb250Qwog
CiAgICAgQVNTRVJUKGZvbnREZXNjcmlwdG9yKTsKICAgICBSZXRhaW5QdHI8Q1RGb250UmVmPiBm
b250ID0gYWRvcHRDRihDVEZvbnRDcmVhdGVXaXRoRm9udERlc2NyaXB0b3IoZm9udERlc2NyaXB0
b3IuZ2V0KCksIDAsIG51bGxwdHIpKTsKLSAgICBmb250ID0gcHJlcGFyZVBsYXRmb3JtRm9udChm
b250LmdldCgpLCBmb250RGVzY3JpcHRpb24udGV4dFJlbmRlcmluZ01vZGUoKSwgbnVsbHB0ciwg
bnVsbHB0ciwgZm9udERlc2NyaXB0aW9uLmZlYXR1cmVTZXR0aW5ncygpLCBmb250RGVzY3JpcHRp
b24udmFyaWFudFNldHRpbmdzKCkpOworICAgIGZvbnQgPSBwcmVwYXJlUGxhdGZvcm1Gb250KGZv
bnQuZ2V0KCksIGZvbnREZXNjcmlwdGlvbi50ZXh0UmVuZGVyaW5nTW9kZSgpLCBudWxscHRyLCBu
dWxscHRyLCBmb250RGVzY3JpcHRpb24uZmVhdHVyZVNldHRpbmdzKCksIGZvbnREZXNjcmlwdGlv
bi52YXJpYW50U2V0dGluZ3MoKSwgZm9udERlc2NyaXB0aW9uLnZhcmlhdGlvblNldHRpbmdzKCkp
OwogICAgIGZvbnREZXNjcmlwdGlvbi5zZXRJc0Fic29sdXRlU2l6ZSh0cnVlKTsKICAgICBmb250
RGVzY3JpcHRpb24uc2V0T25lRmFtaWx5KHRleHRTdHlsZSk7CiAgICAgZm9udERlc2NyaXB0aW9u
LnNldFNwZWNpZmllZFNpemUoQ1RGb250R2V0U2l6ZShmb250LmdldCgpKSk7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTI4
MTYxNjdlNjEwNmM3OWRkOGUxYTFkN2E1YzI5NjUyNmJjNTQ3My4uYmJiOWU3NzU2NzNiOGVjZDhj
OTU0NmQ4ZGNkZmRmZjBjNzVmNDMyMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDE2LTEwLTAz
ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgSW1w
bGVtZW50IHJlbmRlcmluZyBvZiBmb250LXZhcmlhdGlvbi1zZXR0aW5ncworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyNzgyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L3RleHQvdmFyaWF0aW9u
cy9kdXBsaWNhdGUtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC90ZXh0L3Zh
cmlhdGlvbnMvZHVwbGljYXRlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdGV4dC92YXJp
YXRpb25zL2V4aXN0LWV4cGVjdGVkLW1pc21hdGNoLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvdGV4dC92YXJpYXRpb25zL2V4aXN0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdGV4
dC92YXJpYXRpb25zL2dldENvbXB1dGVkU3R5bGUuaHRtbDoKKyAgICAgICAgKiBmYXN0L3RleHQv
dmFyaWF0aW9ucy9pbmhlcml0YW5jZS1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBm
YXN0L3RleHQvdmFyaWF0aW9ucy9pbmhlcml0YW5jZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBm
YXN0L3RleHQvdmFyaWF0aW9ucy9vcmRlci1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBmYXN0L3RleHQvdmFyaWF0aW9ucy9vcmRlci5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0
L3RleHQvdmFyaWF0aW9ucy9vdXRvZmJvdW5kcy1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L3RleHQvdmFyaWF0aW9ucy9vdXRvZmJvdW5kcy5odG1sOiBBZGRlZC4KKwogMjAx
Ni0xMC0wMiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBLZXlib2FyZEV2ZW50LmdldE1vZGlmaWVyU3RhdGUoKSBvcGVyYXRpb24KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2R1cGxpY2F0ZS1leHBl
Y3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvZHVwbGljYXRlLWV4
cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDY2MDk3MGRlYWMyMjIxYWM5YzliYzUyYWY3ZmQ0ZjYx
MzM3YzNjZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRp
b25zL2R1cGxpY2F0ZS1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVybmFscykKKyAg
IHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0VmFyaWF0aW9uRm9udHNFbmFibGVkKHRydWUp
OworPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiAn
U2tpYSc7IGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgMzsiPlRlc3QgcGFzc2VzIGlm
IHRoaXMgdGV4dCBoYXMgYSB3ZWlnaHQgb2YgMy48L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KXCBO
byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Rl
eHQvdmFyaWF0aW9ucy9kdXBsaWNhdGUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJp
YXRpb25zL2R1cGxpY2F0ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIyZGI3YTNiMTQzZDlmODc5NzYxYmVi
ZTg3NTdmMWYwNWEyMjJhYjgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Rl
eHQvdmFyaWF0aW9ucy9kdXBsaWNhdGUuaHRtbApAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5pbnRlcm5hbHMpCisg
ICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldFZhcmlhdGlvbkZvbnRzRW5hYmxlZCh0cnVl
KTsKKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IHN0eWxlPSJmb250LWZhbWlseTog
J1NraWEnOyBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDIsICd3Z2h0JyAzOyI+VGVz
dCBwYXNzZXMgaWYgdGhpcyB0ZXh0IGhhcyBhIHdlaWdodCBvZiAzLjwvZGl2PgorPC9ib2R5Pgor
PC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2V4aXN0LWV4cGVjdGVkLW1pc21hdGNoLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9leGlzdC1leHBlY3RlZC1taXNtYXRjaC5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjVkMDJmODEzMjk1ZjJiZDExYmQ2N2RmZWM1YmNhOGFmMjY2ZTkzNWIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9leGlz
dC1leHBlY3RlZC1taXNtYXRjaC5odG1sCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBodG1s
PgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVybmFscykKKyAgIHdp
bmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0VmFyaWF0aW9uRm9udHNFbmFibGVkKHRydWUpOwor
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiAnU2tp
YSc7Ij5UZXN0IHBhc3NlcyBpZiB0aGlzIHRleHQgaXMgYm9sZC48L2Rpdj4KKzwvYm9keT4KKzwv
aHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9leGlzdC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0
L3ZhcmlhdGlvbnMvZXhpc3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YjAzZWMzZjA5Y2M1YTNiZmM2YmE1
NmEzMDliZGRiYzQzOTc0MDZlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90
ZXh0L3ZhcmlhdGlvbnMvZXhpc3QuaHRtbApAQCAtMCwwICsxLDEyIEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICB3
aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldFZhcmlhdGlvbkZvbnRzRW5hYmxlZCh0cnVlKTsK
Kzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IHN0eWxlPSJmb250LWZhbWlseTogJy1h
cHBsZS1zeXN0ZW0nOyBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDEuODsiPlRlc3Qg
cGFzc2VzIGlmIHRoaXMgdGV4dCBpcyBib2xkLjwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvZ2V0Q29tcHV0ZWRTdHls
ZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvZ2V0Q29tcHV0ZWRTdHls
ZS5odG1sCmluZGV4IDlmYzhmNTYxZGZlYTI5ZTAyM2M1MjIyMjc0NDQ3NWUyOWIyYjkzNGMuLjkw
YTFjYzdkMWY0M2I0MmVkMWJkMjdiYmE3NGNkM2M4YmZlNjQ0MGYgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2dldENvbXB1dGVkU3R5bGUuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9nZXRDb21wdXRlZFN0eWxlLmh0bWwKQEAg
LTI5LDQgKzI5LDQgQEAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJ3aW5kb3cuZ2V0Q29tcHV0ZWRT
dHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdDcnKSkKIDwvc2NyaXB0PgogPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgogPC9i
b2R5PgotPC9odG1sPgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL2luaGVyaXRhbmNlLWV4cGVj
dGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9pbmhlcml0YW5jZS1l
eHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU0YTFlNDQ1ODY2YjM0OTQ5OGMzMTkwMDgxYzIyMDAz
ODI2MzMyMzUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0
aW9ucy9pbmhlcml0YW5jZS1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQ
RSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVybmFscykK
KyAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0VmFyaWF0aW9uRm9udHNFbmFibGVkKHRy
dWUpOworPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5
OiAnU2tpYSc7IGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgMjsiPlRlc3QgcGFzc2Vz
IGlmIHRoaXMgdGV4dCBpcyBib2xkLjwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xp
bmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJp
YXRpb25zL2luaGVyaXRhbmNlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9u
cy9pbmhlcml0YW5jZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdjNjIwN2NjZGIxYTllNWFhNjBhZTc1MjFm
ZmViNjAxMWNiOTEzZTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQv
dmFyaWF0aW9ucy9pbmhlcml0YW5jZS5odG1sCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmludGVybmFscykKKyAg
IHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0VmFyaWF0aW9uRm9udHNFbmFibGVkKHRydWUp
OworPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiAn
U2tpYSc7IGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgMjsiPjxkaXY+VGVzdCBwYXNz
ZXMgaWYgdGhpcyB0ZXh0IGlzIGJvbGQuPC9kaXY+PC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+Clwg
Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90
ZXh0L3ZhcmlhdGlvbnMvb3JkZXItZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvdGV4
dC92YXJpYXRpb25zL29yZGVyLWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjdmZGVkN2EyZWM5
OTNkN2EyZTJhNmIwNTNmOTZmNjFmMTY2N2I1ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL29yZGVyLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwx
MiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5k
b3cuaW50ZXJuYWxzKQorICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRWYXJpYXRpb25G
b250c0VuYWJsZWQodHJ1ZSk7Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBzdHls
ZT0iZm9udC1mYW1pbHk6ICdTa2lhJzsgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3ZHRoJyAx
LjIsICd3Z2h0JyAyOyI+VGVzdCBwYXNzZXMgaWYgdGhpcyB0ZXh0IGhhcyBhIHdlaWdodCBvZiAz
LjwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL29yZGVyLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9vcmRlci5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkz
ZTIzYTBjODQ2NmZlMGY3OTFmMzIyMjFlZjJkMzA2MWI2NDM0ZTIKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9vcmRlci5odG1sCkBAIC0wLDAgKzEs
MTIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2lu
ZG93LmludGVybmFscykKKyAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0VmFyaWF0aW9u
Rm9udHNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgc3R5
bGU9ImZvbnQtZmFtaWx5OiAnU2tpYSc7IGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcg
MiwgJ3dkdGgnIDEuMjsiPlRlc3QgcGFzc2VzIGlmIHRoaXMgdGV4dCBoYXMgYSB3ZWlnaHQgb2Yg
My48L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9vdXRvZmJvdW5kcy1l
eHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3ZhcmlhdGlvbnMvb3V0b2Zib3Vu
ZHMtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43YTdlZmI3ZWY4MDkxMTZmYjRlOGUxZDRkYjVm
NjJjY2Q5MDY2MThiCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90ZXh0L3Zh
cmlhdGlvbnMvb3V0b2Zib3VuZHMtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDEyIEBACis8IURP
Q1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5pbnRlcm5h
bHMpCisgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldFZhcmlhdGlvbkZvbnRzRW5hYmxl
ZCh0cnVlKTsKKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IHN0eWxlPSJmb250LWZh
bWlseTogJ1NraWEnOyI+VGVzdCBwYXNzZXMgaWYgdGhpcyB0ZXh0IGlzIG5vdCBib2xkLjwvZGl2
PgorPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvdGV4dC92YXJpYXRpb25zL291dG9mYm91bmRzLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9vdXRvZmJvdW5kcy5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmM5MmI2N2Q1YTNiOTVhNjYzNzliZTcxYzJlMTdiZDg1ZWJlMjVkOGMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3RleHQvdmFyaWF0aW9ucy9vdXRvZmJvdW5kcy5odG1s
CkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3Jp
cHQ+CitpZiAod2luZG93LmludGVybmFscykKKyAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Mu
c2V0VmFyaWF0aW9uRm9udHNFbmFibGVkKHRydWUpOworPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiAnU2tpYSc7IGZvbnQtdmFyaWF0aW9uLXNldHRp
bmdzOiAnd2dodCcgMjc7Ij5UZXN0IHBhc3NlcyBpZiB0aGlzIHRleHQgaXMgbm90IGJvbGQuPC9k
aXY+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQo=
</data>
<flag name="commit-queue"
          id="313699"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
      

    </bug>

</bugzilla>