<?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>230800</bug_id>
          
          <creation_ts>2021-09-25 18:01:51 -0700</creation_ts>
          <short_desc>Factor out rare members of FontCreationContext into FontCreationContextRareData</short_desc>
          <delta_ts>2021-09-28 21:52:40 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>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>230446</blocked>
    
    <blocked>230792</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>cdumez</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>japhet</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1797249</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-25 18:01:51 -0700</bug_when>
    <thetext>Factor out rare members of FontCreationContext into FontCreationContextRareData</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797250</commentid>
    <comment_count>1</comment_count>
      <attachid>439278</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-25 18:06:02 -0700</bug_when>
    <thetext>Created attachment 439278
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797251</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-09-25 18:06:46 -0700</bug_when>
    <thetext>&lt;rdar://problem/83538227&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797254</commentid>
    <comment_count>3</comment_count>
      <attachid>439280</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-25 18:30:50 -0700</bug_when>
    <thetext>Created attachment 439280
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797257</commentid>
    <comment_count>4</comment_count>
      <attachid>439282</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-25 18:49:38 -0700</bug_when>
    <thetext>Created attachment 439282
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797267</commentid>
    <comment_count>5</comment_count>
      <attachid>439287</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-25 22:10:22 -0700</bug_when>
    <thetext>Created attachment 439287
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797275</commentid>
    <comment_count>6</comment_count>
      <attachid>439290</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-25 23:27:21 -0700</bug_when>
    <thetext>Created attachment 439290
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797276</commentid>
    <comment_count>7</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-25 23:40:27 -0700</bug_when>
    <thetext>I&apos;m having trouble understanding the wincairo compilation error.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797807</commentid>
    <comment_count>8</comment_count>
      <attachid>439447</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-28 02:57:04 -0700</bug_when>
    <thetext>Created attachment 439447
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1798064</commentid>
    <comment_count>9</comment_count>
      <attachid>439528</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-28 15:16:33 -0700</bug_when>
    <thetext>Created attachment 439528
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1798150</commentid>
    <comment_count>10</comment_count>
      <attachid>439528</attachid>
    <who name="alan">zalan</who>
    <bug_when>2021-09-28 19:47:24 -0700</bug_when>
    <thetext>Comment on attachment 439528
Patch

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

&gt; Source/WebCore/platform/graphics/FontCreationContext.h:94
&gt; +    }

need newline</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1798178</commentid>
    <comment_count>11</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-09-28 21:52:40 -0700</bug_when>
    <thetext>Committed r283210 (242252@main): &lt;https://commits.webkit.org/242252@main&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>439278</attachid>
            <date>2021-09-25 18:06:02 -0700</date>
            <delta_ts>2021-09-25 19:03:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230800-20210925180601.patch</filename>
            <type>text/plain</type>
            <size>18193</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzMDg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2JhN2M4OGVmODNkMGM5
N2M5NTQ2ZTJjYTZlZTc1YTMyNjAyM2JjNS4uY2MzMmQ3NzYzMDlmNjFmNGM2ZjgwMzNiNjAxOGI5
NDA2NjVkYzljMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDIxLTA5LTI1ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgRmFjdG9yIG91
dCByYXJlIG1lbWJlcnMgb2YgRm9udENyZWF0aW9uQ29udGV4dCBpbnRvIEZvbnRDcmVhdGlvbkNv
bnRleHRSYXJlRGF0YQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjMwODAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRm9udENyZWF0aW9uQ29udGV4dCBpcyB1c2VkIGluc2lkZSBIYXNoTWFwIGtleXMgaW4g
Zm9udCBjYWNoZXMsIHNvIHdlIHdhbnQgdGhlIHR5cGUgdG8gYmUKKyAgICAgICAgc21hbGwuIFBh
bGV0dGVzIGFuZCBmb250IGZlYXR1cmVzIGFyZSByYXJlLCBzbyB3ZSBjYW4gbW92ZSB0aG9zZSBp
bnRvIGEgaGVhcC1hbGxvY2F0ZWQKKyAgICAgICAgcmFyZSBkYXRhIG9iamVjdCwgdGhlcmVieSBk
ZWNyZWFzaW5nIHRoZSBzaXplIG9mIEZvbnRDcmVhdGlvbkNvbnRleHQgZm9yIG1vc3QgZm9udHMu
CisgICAgICAgIEltcG9ydGFudGx5LCBpZiBwYWxldHRlcyBhbmQgZm9udCBmZWF0dXJlcyBhcmVu
J3QgdXNlZCwgdGhlIFJlZlB0ciB3aWxsIGp1c3QgYmUgbnVsbCwgYW5kCisgICAgICAgIG5vIGFs
bG9jYXRpb24gaXMgcGVyZm9ybWVkLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyBiZWNhdXNlIHRo
ZXJlIGlzIG5vIGJlaGF2aW9yIGNoYW5nZS4KKworICAgICAgICAqIGNzcy9DU1NGb250RmFjZS5o
OgorICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNvdXJjZS5oOgorICAgICAgICAqIGNzcy9DU1NT
ZWdtZW50ZWRGb250RmFjZS5oOgorICAgICAgICAqIGxvYWRlci9Gb250TG9hZFJlcXVlc3QuaDoK
KyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5oOgorICAgICAgICAqIGxvYWRlci9j
YWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaDoKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2Fj
aGVkU1ZHRm9udC5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDcmVhdGlvbkNv
bnRleHQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6
Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6
Zm9udEZhY2VGZWF0dXJlcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGb250Q3JlYXRpb25D
b250ZXh0UmFyZURhdGE6OmZvbnRQYWxldHRlVmFsdWVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6b3BlcmF0b3I9PSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGE6Om9wZXJhdG9yIT0gY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhOjpGb250
Q3JlYXRpb25Db250ZXh0UmFyZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9u
Q29udGV4dDo6Rm9udENyZWF0aW9uQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpGb250Q3Jl
YXRpb25Db250ZXh0Ojpmb250RmFjZUZlYXR1cmVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkZvbnRDcmVhdGlvbkNvbnRleHQ6OmZvbnRGYWNlQ2FwYWJpbGl0aWVzIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHQ6OmZvbnRQYWxldHRlVmFsdWVzIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHQ6Om9wZXJhdG9yPT0gY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6YWRkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9Gb250UGFsZXR0ZVZhbHVlcy5oOgorICAgICAgICAoV2ViQ29yZTo6Rm9udFBhbGV0dGVWYWx1
ZXM6Om9wZXJhdG9yIGJvb2wgY29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nv
Y29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmFkZEF0dHJpYnV0
ZXNGb3JGb250UGFsZXR0ZXMpOgorICAgICAgICAoV2ViQ29yZTo6cHJlcGFyZVBsYXRmb3JtRm9u
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQu
aDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udEN1c3RvbVBsYXRmb3JtRGF0
YS5oOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0Lmg6CisKIDIwMjEt
MDktMjUgIEFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIEZpeCB3aW4g
YnVpbGQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCmluZGV4IGQ0NWMwNjIyZTc0NzE5N2JlZmNh
NGMzNjYwM2Q0MGZiZjQxYThmNDkuLjc4OTkzZWZlZjU3YjVlNjc5OTZhZDFiZGFlZjg3NzE3ZmEx
NjBkZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCkBAIC00Nyw3ICs0Nyw3IEBAIGNsYXNz
IENTU1NlZ21lbnRlZEZvbnRGYWNlOwogY2xhc3MgQ1NTVmFsdWU7CiBjbGFzcyBDU1NWYWx1ZUxp
c3Q7CiBjbGFzcyBGb250Q2FjaGU7Ci1zdHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dDsKK2NsYXNz
IEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBGb250
OwogY2xhc3MgRm9udEZhY2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9u
dEZhY2VTb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNvdXJjZS5oCmlu
ZGV4IDFmNjU3YTY2NDUxYTBjNGNmNzE3ZjVlODBjZDEwZWEyYmY5N2Y5MDEuLjgyNjEzMzMyMmE4
ZWU1ZjM3ODJmYmIyMzEyM2IyZGQzYTU3YTE3MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NGb250RmFjZVNvdXJjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250
RmFjZVNvdXJjZS5oCkBAIC0zNiw3ICszNiw3IEBAIGNsYXNzIENTU0ZvbnRGYWNlOwogY2xhc3Mg
Q1NTRm9udFNlbGVjdG9yOwogY2xhc3MgRG9jdW1lbnQ7CiBjbGFzcyBGb250Owotc3RydWN0IEZv
bnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0Owogc3RydWN0IEZv
bnRDdXN0b21QbGF0Zm9ybURhdGE7CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBzdHJ1Y3QgRm9u
dFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NTZWdtZW50ZWRGb250RmFjZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Nl
Z21lbnRlZEZvbnRGYWNlLmgKaW5kZXggOTBmM2FlYWU1Yjk0YmZiMjVhYjY2NTk1ZTkwY2U4ZTlk
Y2RhNWZlZS4uNWI3ZGJlMWM5NzRkNTRkNDZlMjQwMTI4MWQyMDIyNjYyYTVmYWE1NCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1NlZ21lbnRlZEZvbnRGYWNlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1NlZ21lbnRlZEZvbnRGYWNlLmgKQEAgLTM0LDcgKzM0LDcgQEAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ1NTRm9udFNlbGVjdG9yOwotc3RydWN0IEZv
bnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogY2xhc3MgRm9u
dERlc2NyaXB0aW9uOwogY2xhc3MgRm9udFBhbGV0dGVWYWx1ZXM7CiBjbGFzcyBGb250UmFuZ2Vz
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oCmluZGV4IDk1YzNlNzYwOTA4
MGEwZjI4ZjI0ZGNmODdlZjM2NTI2NWM2ZjhhODYuLmQ4OTA1Y2UyMTM3NGYyY2VjMWUyMTQzMzk3
YmZiZGUzODZlZGIxZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9h
ZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0LmgK
QEAgLTMyLDcgKzMyLDcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgRm9udDsKLXN0
cnVjdCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIGNs
YXNzIEZvbnREZXNjcmlwdGlvbjsKIGNsYXNzIEZvbnRMb2FkUmVxdWVzdDsKIHN0cnVjdCBGb250
U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRGb250LmgKaW5kZXggZWE5MTdkYTExYzcyNjE1YmFlZDc3NmQxZGZjODc1MzFlNTE2
NDM5NC4uY2ViZGM1NTdmMTNmYzRhZmQ4Mjc1Mjk3NzRhZmQ4ZWM0YmVmNDIxMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5oCkBAIC0zNCw3ICszNCw3IEBACiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENhY2hlZFJlc291cmNlTG9hZGVyOwotc3RydWN0IEZv
bnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogY2xhc3MgRm9u
dERlc2NyaXB0aW9uOwogY2xhc3MgRm9udFBsYXRmb3JtRGF0YTsKIHN0cnVjdCBGb250U2VsZWN0
aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVxdWVzdC5oCmluZGV4IDEwY2ZiYTUwYjQ2YWE0NTlkN2Zi
NjcwOWNlMjlmNGY1YmE0YjRkOGQuLmI1Nzc3YzEyY2NlMzc4YWI5YjRlMWNjOTA0YjRjYjA3ZWYz
NDEyN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250
TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9u
dExvYWRSZXF1ZXN0LmgKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
Ci1zdHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7
CiAKIGNsYXNzIENhY2hlZEZvbnRMb2FkUmVxdWVzdCBmaW5hbCA6IHB1YmxpYyBGb250TG9hZFJl
cXVlc3QsIHB1YmxpYyBDYWNoZWRGb250Q2xpZW50IHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9D
QVRFRDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTVkdG
b250LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU1ZHRm9udC5oCmluZGV4
IDNmMGMwMTQzYzBmOGQ5ZWIxNzgzYjBmYjYzZTIyMDc1Zjc4MjhkOWEuLjM1M2QzZGU2M2IwNjI4
NjEzYWJhZjc3N2ZlYjI1M2M1YjYyNDkwYzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRTVkdGb250LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFNWR0ZvbnQuaApAQCAtMjksNyArMjksNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKLXN0cnVjdCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29u
dGV4dDsKIGNsYXNzIFNWR0ZvbnRGYWNlRWxlbWVudDsKIGNsYXNzIFNldHRpbmdzOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q3JlYXRpb25Db250
ZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q3JlYXRpb25Db250
ZXh0LmgKaW5kZXggZTkxMGI0ZDMwYTZmMjEzMGZjODU5YmM5NWY1NTI4OTAxOGE2YzAwZi4uODRi
OThiMGIzZTVmNjVlNWExZmZlMDZlZTQ3NmRlMzFkZDk1YzNiNyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9uQ29udGV4dC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDcmVhdGlvbkNvbnRleHQuaApAQCAt
MjgsMTUgKzI4LDc5IEBACiAjaW5jbHVkZSAiRm9udFBhbGV0dGVWYWx1ZXMuaCIKICNpbmNsdWRl
ICJGb250U2VsZWN0aW9uQWxnb3JpdGhtLmgiCiAjaW5jbHVkZSAiRm9udFRhZ2dlZFNldHRpbmdz
LmgiCisjaW5jbHVkZSA8d3RmL1BvaW50ZXJDb21wYXJpc29uLmg+CiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAotc3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQgeworY2xhc3MgRm9udENyZWF0aW9u
Q29udGV4dFJhcmVEYXRhIDogcHVibGljIFJlZkNvdW50ZWQ8Rm9udENyZWF0aW9uQ29udGV4dFJh
cmVEYXRhPiB7CitwdWJsaWM6CisgICAgc3RhdGljIFJlZjxGb250Q3JlYXRpb25Db250ZXh0UmFy
ZURhdGE+IGNyZWF0ZShjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVz
LCBjb25zdCBGb250UGFsZXR0ZVZhbHVlcyYgZm9udFBhbGV0dGVWYWx1ZXMpCisgICAgeworICAg
ICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGEoZm9u
dEZhY2VGZWF0dXJlcywgZm9udFBhbGV0dGVWYWx1ZXMpKTsKKyAgICB9CisKKyAgICBjb25zdCBG
b250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVzKCkgY29uc3QKKyAgICB7CisgICAg
ICAgIHJldHVybiBtX2ZvbnRGYWNlRmVhdHVyZXM7CisgICAgfQorCisgICAgY29uc3QgRm9udFBh
bGV0dGVWYWx1ZXMmIGZvbnRQYWxldHRlVmFsdWVzKCkgY29uc3QKKyAgICB7CisgICAgICAgIHJl
dHVybiBtX2ZvbnRQYWxldHRlVmFsdWVzOworICAgIH0KKworICAgIGJvb2wgb3BlcmF0b3I9PShj
b25zdCBGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGEmIG90aGVyKSBjb25zdAorICAgIHsKKyAg
ICAgICAgcmV0dXJuIG1fZm9udEZhY2VGZWF0dXJlcyA9PSBvdGhlci5tX2ZvbnRGYWNlRmVhdHVy
ZXMKKyAgICAgICAgICAgICYmIG1fZm9udFBhbGV0dGVWYWx1ZXMgPT0gb3RoZXIubV9mb250UGFs
ZXR0ZVZhbHVlczsKKyAgICB9CisKKyAgICBib29sIG9wZXJhdG9yIT0oY29uc3QgRm9udENyZWF0
aW9uQ29udGV4dFJhcmVEYXRhJiBvdGhlcikgY29uc3QKKyAgICB7CisgICAgICAgIHJldHVybiAh
KCp0aGlzID09IG90aGVyKTsKKyAgICB9CisKK3ByaXZhdGU6CisgICAgRm9udENyZWF0aW9uQ29u
dGV4dFJhcmVEYXRhKGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MmIGZvbnRGYWNlRmVhdHVyZXMs
IGNvbnN0IEZvbnRQYWxldHRlVmFsdWVzJiBmb250UGFsZXR0ZVZhbHVlcykKKyAgICAgICAgOiBt
X2ZvbnRGYWNlRmVhdHVyZXMoZm9udEZhY2VGZWF0dXJlcykKKyAgICAgICAgLCBtX2ZvbnRQYWxl
dHRlVmFsdWVzKGZvbnRQYWxldHRlVmFsdWVzKQorICAgIHsKKyAgICB9CisKKyAgICBGb250RmVh
dHVyZVNldHRpbmdzIG1fZm9udEZhY2VGZWF0dXJlczsKKyAgICBGb250UGFsZXR0ZVZhbHVlcyBt
X2ZvbnRQYWxldHRlVmFsdWVzOworICAgIC8vIEZJWE1FOiBBZGQgc3VwcG9ydCBmb3IgZm9udC1m
ZWF0dXJlLXZhbHVlcy4KK307CisKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQgeworcHVibGlj
OgorICAgIEZvbnRDcmVhdGlvbkNvbnRleHQoKSA9IGRlZmF1bHQ7CisKKyAgICBGb250Q3JlYXRp
b25Db250ZXh0KGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MmIGZvbnRGYWNlRmVhdHVyZXMsIGNv
bnN0IEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXMmIGZvbnRGYWNlQ2FwYWJpbGl0
aWVzLCBjb25zdCBGb250UGFsZXR0ZVZhbHVlcyYgZm9udFBhbGV0dGVWYWx1ZXMpCisgICAgICAg
IDogbV9mb250RmFjZUNhcGFiaWxpdGllcyhmb250RmFjZUNhcGFiaWxpdGllcykKKyAgICB7Cisg
ICAgICAgIGlmICghZm9udEZhY2VGZWF0dXJlcy5pc0VtcHR5KCkgfHwgZm9udFBhbGV0dGVWYWx1
ZXMpCisgICAgICAgICAgICBtX3JhcmVEYXRhID0gRm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRh
OjpjcmVhdGUoZm9udEZhY2VGZWF0dXJlcywgZm9udFBhbGV0dGVWYWx1ZXMpOworICAgIH0KKwor
ICAgIGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MqIGZvbnRGYWNlRmVhdHVyZXMoKSBjb25zdAor
ICAgIHsKKyAgICAgICAgcmV0dXJuIG1fcmFyZURhdGEgPyAmbV9yYXJlRGF0YS0+Zm9udEZhY2VG
ZWF0dXJlcygpIDogbnVsbHB0cjsKKyAgICB9CisKKyAgICBjb25zdCBGb250U2VsZWN0aW9uU3Bl
Y2lmaWVkQ2FwYWJpbGl0aWVzJiBmb250RmFjZUNhcGFiaWxpdGllcygpIGNvbnN0CisgICAgewor
ICAgICAgICByZXR1cm4gbV9mb250RmFjZUNhcGFiaWxpdGllczsKKyAgICB9CisgICAgY29uc3Qg
Rm9udFBhbGV0dGVWYWx1ZXMqIGZvbnRQYWxldHRlVmFsdWVzKCkgY29uc3QKKyAgICB7CisgICAg
ICAgIHJldHVybiBtX3JhcmVEYXRhID8gJm1fcmFyZURhdGEtPmZvbnRQYWxldHRlVmFsdWVzKCkg
OiBudWxscHRyOworICAgIH0KKwogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBGb250Q3JlYXRp
b25Db250ZXh0JiBvdGhlcikgY29uc3QKICAgICB7Ci0gICAgICAgIHJldHVybiBmb250RmFjZUZl
YXR1cmVzID09IG90aGVyLmZvbnRGYWNlRmVhdHVyZXMKLSAgICAgICAgICAgICYmIGZvbnRGYWNl
Q2FwYWJpbGl0aWVzID09IG90aGVyLmZvbnRGYWNlQ2FwYWJpbGl0aWVzCi0gICAgICAgICAgICAm
JiBmb250UGFsZXR0ZVZhbHVlcyA9PSBvdGhlci5mb250UGFsZXR0ZVZhbHVlczsKKyAgICAgICAg
cmV0dXJuIG1fZm9udEZhY2VDYXBhYmlsaXRpZXMgPT0gb3RoZXIubV9mb250RmFjZUNhcGFiaWxp
dGllcworICAgICAgICAgICAgJiYgYXJlUG9pbnRpbmdUb0VxdWFsRGF0YShtX3JhcmVEYXRhLCBv
dGhlci5tX3JhcmVEYXRhKTsKICAgICB9CiAKICAgICBib29sIG9wZXJhdG9yIT0oY29uc3QgRm9u
dENyZWF0aW9uQ29udGV4dCYgb3RoZXIpIGNvbnN0CkBAIC00NCwxNyArMTA4LDE4IEBAIHN0cnVj
dCBGb250Q3JlYXRpb25Db250ZXh0IHsKICAgICAgICAgcmV0dXJuICEoKnRoaXMgPT0gb3RoZXIp
OwogICAgIH0KIAotICAgIEZvbnRGZWF0dXJlU2V0dGluZ3MgZm9udEZhY2VGZWF0dXJlczsKLSAg
ICBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzIGZvbnRGYWNlQ2FwYWJpbGl0aWVz
OwotICAgIEZvbnRQYWxldHRlVmFsdWVzIGZvbnRQYWxldHRlVmFsdWVzOwotICAgIC8vIEZJWE1F
OiBBZGQgc3VwcG9ydCBmb3IgZm9udC1mZWF0dXJlLXZhbHVlcy4KK3ByaXZhdGU6CisgICAgRm9u
dFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllcyBtX2ZvbnRGYWNlQ2FwYWJpbGl0aWVzOwor
ICAgIFJlZlB0cjxGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGE+IG1fcmFyZURhdGE7CiB9Owog
CiBpbmxpbmUgdm9pZCBhZGQoSGFzaGVyJiBoYXNoZXIsIGNvbnN0IEZvbnRDcmVhdGlvbkNvbnRl
eHQmIGZvbnRDcmVhdGlvbkNvbnRleHQpCiB7Ci0gICAgYWRkKGhhc2hlciwgZm9udENyZWF0aW9u
Q29udGV4dC5mb250RmFjZUZlYXR1cmVzKTsKLSAgICBhZGQoaGFzaGVyLCBmb250Q3JlYXRpb25D
b250ZXh0LmZvbnRGYWNlQ2FwYWJpbGl0aWVzLnRpZWQoKSk7Ci0gICAgYWRkKGhhc2hlciwgZm9u
dENyZWF0aW9uQ29udGV4dC5mb250UGFsZXR0ZVZhbHVlcyk7CisgICAgaWYgKGZvbnRDcmVhdGlv
bkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcygpKQorICAgICAgICBhZGQoaGFzaGVyLCAqZm9udENy
ZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKCkpOworICAgIGFkZChoYXNoZXIsIGZvbnRD
cmVhdGlvbkNvbnRleHQuZm9udEZhY2VDYXBhYmlsaXRpZXMoKS50aWVkKCkpOworICAgIGlmIChm
b250Q3JlYXRpb25Db250ZXh0LmZvbnRQYWxldHRlVmFsdWVzKCkpCisgICAgICAgIGFkZChoYXNo
ZXIsICpmb250Q3JlYXRpb25Db250ZXh0LmZvbnRQYWxldHRlVmFsdWVzKCkpOwogfQogCiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250UGFsZXR0ZVZh
bHVlcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFBhbGV0dGVWYWx1
ZXMuaAppbmRleCAxNzEyYjYyOGMwMzIzOWI1N2NjN2Q1MmVhM2YwMTg1NDZmOTAxNTJlLi5mMjhm
NzY0Zjk4MThhZDAyZWQwMzQ3ODIyMmZlNmM0ZWNmZGIzNGYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250UGFsZXR0ZVZhbHVlcy5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQYWxldHRlVmFsdWVzLmgKQEAgLTU4LDYg
KzU4LDE1IEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIG1fb3ZlcnJpZGVDb2xvcjsKICAgICB9
CiAKKyAgICBvcGVyYXRvciBib29sKCkgY29uc3QKKyAgICB7CisgICAgICAgIHJldHVybiBXVEY6
OnN3aXRjaE9uKG1fYmFzZVBhbGV0dGUsIFtdIChpbnQ2NF90KSB7CisgICAgICAgICAgICByZXR1
cm4gdHJ1ZTsKKyAgICAgICAgfSwgW10gKGNvbnN0IEF0b21TdHJpbmcmIHN0cmluZykgeworICAg
ICAgICAgICAgcmV0dXJuICFzdHJpbmcuaXNOdWxsKCk7CisgICAgICAgIH0pIHx8ICFtX292ZXJy
aWRlQ29sb3IuaXNFbXB0eSgpOworICAgIH0KKwogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBG
b250UGFsZXR0ZVZhbHVlcyYgb3RoZXIpIGNvbnN0CiAgICAgewogICAgICAgICByZXR1cm4gbV9i
YXNlUGFsZXR0ZSA9PSBvdGhlci5tX2Jhc2VQYWxldHRlICYmIG1fb3ZlcnJpZGVDb2xvciA9PSBv
dGhlci5tX292ZXJyaWRlQ29sb3I7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAKaW5kZXggMWE2Zjcz
MjkwNjc1OWM5Mjk4NDNlNTdlNTg5NWUxYmNiNTFhYjQzMy4uODhlMmYzZmYxMjkxNGE3OTIwOTkz
YmIzNGVmMTg3MmUwYmI5OWVlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcApAQCAtNDQzLDcg
KzQ0Myw3IEBAIHN0cnVjdCBGb250VHlwZSB7CiAgICAgYm9vbCBhYXRTaGFwaW5nIHsgZmFsc2Ug
fTsKIH07CiAKLXN0YXRpYyB2b2lkIGFkZEF0dHJpYnV0ZXNGb3JGb250UGFsZXR0ZXMoQ0ZNdXRh
YmxlRGljdGlvbmFyeVJlZiBhdHRyaWJ1dGVzLCBjb25zdCBGb250UGFsZXR0ZSYgZm9udFBhbGV0
dGUsIGNvbnN0IEZvbnRQYWxldHRlVmFsdWVzJiBmb250UGFsZXR0ZVZhbHVlcykKK3N0YXRpYyB2
b2lkIGFkZEF0dHJpYnV0ZXNGb3JGb250UGFsZXR0ZXMoQ0ZNdXRhYmxlRGljdGlvbmFyeVJlZiBh
dHRyaWJ1dGVzLCBjb25zdCBGb250UGFsZXR0ZSYgZm9udFBhbGV0dGUsIGNvbnN0IEZvbnRQYWxl
dHRlVmFsdWVzKiBmb250UGFsZXR0ZVZhbHVlcykKIHsKICAgICBzd2l0Y2ggKGZvbnRQYWxldHRl
LnR5cGUpIHsKICAgICBjYXNlIEZvbnRQYWxldHRlOjpUeXBlOjpOb25lOgpAQCAtNDY0LDE1ICs0
NjQsMTcgQEAgc3RhdGljIHZvaWQgYWRkQXR0cmlidXRlc0ZvckZvbnRQYWxldHRlcyhDRk11dGFi
bGVEaWN0aW9uYXJ5UmVmIGF0dHJpYnV0ZXMsIGNvbnMKICAgICAgICAgYnJlYWs7CiAgICAgfQog
ICAgIGNhc2UgRm9udFBhbGV0dGU6OlR5cGU6OkN1c3RvbTogewotICAgICAgICBXVEY6OnN3aXRj
aE9uKGZvbnRQYWxldHRlVmFsdWVzLmJhc2VQYWxldHRlKCksIFsmXShpbnQ2NF90IGluZGV4KSB7
CisgICAgICAgIGlmICghZm9udFBhbGV0dGVWYWx1ZXMpCisgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgV1RGOjpzd2l0Y2hPbihmb250UGFsZXR0ZVZhbHVlcy0+YmFzZVBhbGV0dGUoKSwgWyZd
KGludDY0X3QgaW5kZXgpIHsKICAgICAgICAgICAgIGF1dG8gbnVtYmVyID0gYWRvcHRDRihDRk51
bWJlckNyZWF0ZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBrQ0ZOdW1iZXJDRkluZGV4VHlwZSwgJmlu
ZGV4KSk7CiAgICAgICAgICAgICBDRkRpY3Rpb25hcnlBZGRWYWx1ZShhdHRyaWJ1dGVzLCBrQ1RG
b250UGFsZXR0ZUF0dHJpYnV0ZSwgbnVtYmVyLmdldCgpKTsKICAgICAgICAgfSwgW10oY29uc3Qg
QXRvbVN0cmluZyYpIHsKICAgICAgICAgICAgIC8vIFRoaXMgaXMgdW5pbXBsZW1lbnRhYmxlIGlu
IENvcmUgVGV4dC4KICAgICAgICAgfSk7Ci0gICAgICAgIGlmICghZm9udFBhbGV0dGVWYWx1ZXMu
b3ZlcnJpZGVDb2xvcigpLmlzRW1wdHkoKSkgeworICAgICAgICBpZiAoIWZvbnRQYWxldHRlVmFs
dWVzLT5vdmVycmlkZUNvbG9yKCkuaXNFbXB0eSgpKSB7CiAgICAgICAgICAgICBhdXRvIG92ZXJy
aWRlRGljdGlvbmFyeSA9IGFkb3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlTXV0YWJsZShrQ0ZBbGxv
Y2F0b3JEZWZhdWx0LCAwLCAma0NGVHlwZURpY3Rpb25hcnlLZXlDYWxsQmFja3MsICZrQ0ZUeXBl
RGljdGlvbmFyeVZhbHVlQ2FsbEJhY2tzKSk7Ci0gICAgICAgICAgICBmb3IgKGNvbnN0IGF1dG8m
IHBhaXIgOiBmb250UGFsZXR0ZVZhbHVlcy5vdmVycmlkZUNvbG9yKCkpIHsKKyAgICAgICAgICAg
IGZvciAoY29uc3QgYXV0byYgcGFpciA6IGZvbnRQYWxldHRlVmFsdWVzLT5vdmVycmlkZUNvbG9y
KCkpIHsKICAgICAgICAgICAgICAgICBjb25zdCBhdXRvJiBwYWxldHRlQ29sb3JJbmRleCA9IHBh
aXIuZmlyc3Q7CiAgICAgICAgICAgICAgICAgY29uc3QgYXV0byYgY29sb3IgPSBwYWlyLnNlY29u
ZDsKICAgICAgICAgICAgICAgICBXVEY6OnN3aXRjaE9uKHBhbGV0dGVDb2xvckluZGV4LCBbXShj
b25zdCBBdG9tU3RyaW5nJikgewpAQCAtNTIwLDcgKzUyMiw3IEBAIFJldGFpblB0cjxDVEZvbnRS
ZWY+IHByZXBhcmVQbGF0Zm9ybUZvbnQoQ1RGb250UmVmIG9yaWdpbmFsRm9udCwgY29uc3QgRm9u
dERlc2NyCiAgICAgYm9vbCB0ZXh0UmVuZGVyaW5nTW9kZUlzQXV0byA9IHRleHRSZW5kZXJpbmdN
b2RlID09IFRleHRSZW5kZXJpbmdNb2RlOjpBdXRvVGV4dFJlbmRlcmluZzsKICAgICBib29sIHZh
cmlhbnRTZXR0aW5nc0lzTm9ybWFsID0gdmFyaWFudFNldHRpbmdzLmlzQWxsTm9ybWFsKCk7CiAg
ICAgYm9vbCBkb250TmVlZFRvQXBwbHlPcHRpY2FsU2l6aW5nID0gZm9udE9wdGljYWxTaXppbmcg
PT0gRm9udE9wdGljYWxTaXppbmc6OkVuYWJsZWQgJiYgIWZvcmNlT3B0aWNhbFNpemluZ09uOwot
ICAgIGJvb2wgZm9udEZhY2VEb2VzbnRTcGVjaWZ5RmVhdHVyZXMgPSBmb250Q3JlYXRpb25Db250
ZXh0LmZvbnRGYWNlRmVhdHVyZXMuaXNFbXB0eSgpOworICAgIGJvb2wgZm9udEZhY2VEb2VzbnRT
cGVjaWZ5RmVhdHVyZXMgPSAhZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKCkg
fHwgZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKCktPmlzRW1wdHkoKTsKICAg
ICBpZiAobm9Gb250RmVhdHVyZVNldHRpbmdzICYmIG5vRm9udFZhcmlhdGlvblNldHRpbmdzICYm
IHRleHRSZW5kZXJpbmdNb2RlSXNBdXRvICYmIHZhcmlhbnRTZXR0aW5nc0lzTm9ybWFsICYmIGRv
bnROZWVkVG9BcHBseU9wdGljYWxTaXppbmcgJiYgZm9udEZhY2VEb2VzbnRTcGVjaWZ5RmVhdHVy
ZXMgJiYgIXNob3VsZERpc2FibGVMaWdhdHVyZXNGb3JTcGFjaW5nICYmIGRvbnROZWVkVG9BcHBs
eUZvbnRQYWxldHRlcykgewogI2lmIEhBVkUoQ1RGT05UQ1JFQVRFRk9SQ0hBUkFDVEVSU1dJVEhM
QU5HVUFHRUFORE9QVElPTikKICAgICAgICAgcmV0dXJuIG9yaWdpbmFsRm9udDsKQEAgLTU2Niwx
MSArNTY4LDExIEBAIFJldGFpblB0cjxDVEZvbnRSZWY+IHByZXBhcmVQbGF0Zm9ybUZvbnQoQ1RG
b250UmVmIG9yaWdpbmFsRm9udCwgY29uc3QgRm9udERlc2NyCiAgICAgICAgIGZsb2F0IHdlaWdo
dCA9IGZvbnRTZWxlY3Rpb25SZXF1ZXN0LndlaWdodDsKICAgICAgICAgZmxvYXQgd2lkdGggPSBm
b250U2VsZWN0aW9uUmVxdWVzdC53aWR0aDsKICAgICAgICAgZmxvYXQgc2xvcGUgPSBmb250U2Vs
ZWN0aW9uUmVxdWVzdC5zbG9wZS52YWx1ZV9vcihub3JtYWxJdGFsaWNWYWx1ZSgpKTsKLSAgICAg
ICAgaWYgKGF1dG8gd2VpZ2h0VmFsdWUgPSBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlQ2Fw
YWJpbGl0aWVzLndlaWdodCkKKyAgICAgICAgaWYgKGF1dG8gd2VpZ2h0VmFsdWUgPSBmb250Q3Jl
YXRpb25Db250ZXh0LmZvbnRGYWNlQ2FwYWJpbGl0aWVzKCkud2VpZ2h0KQogICAgICAgICAgICAg
d2VpZ2h0ID0gc3RkOjptYXgoc3RkOjptaW4od2VpZ2h0LCBzdGF0aWNfY2FzdDxmbG9hdD4od2Vp
Z2h0VmFsdWUtPm1heGltdW0pKSwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KHdlaWdodFZhbHVlLT5taW5p
bXVtKSk7Ci0gICAgICAgIGlmIChhdXRvIHdpZHRoVmFsdWUgPSBmb250Q3JlYXRpb25Db250ZXh0
LmZvbnRGYWNlQ2FwYWJpbGl0aWVzLndpZHRoKQorICAgICAgICBpZiAoYXV0byB3aWR0aFZhbHVl
ID0gZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUNhcGFiaWxpdGllcygpLndpZHRoKQogICAg
ICAgICAgICAgd2lkdGggPSBzdGQ6Om1heChzdGQ6Om1pbih3aWR0aCwgc3RhdGljX2Nhc3Q8Zmxv
YXQ+KHdpZHRoVmFsdWUtPm1heGltdW0pKSwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KHdpZHRoVmFsdWUt
Pm1pbmltdW0pKTsKLSAgICAgICAgaWYgKGF1dG8gc2xvcGVWYWx1ZSA9IGZvbnRDcmVhdGlvbkNv
bnRleHQuZm9udEZhY2VDYXBhYmlsaXRpZXMud2VpZ2h0KQorICAgICAgICBpZiAoYXV0byBzbG9w
ZVZhbHVlID0gZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUNhcGFiaWxpdGllcygpLndlaWdo
dCkKICAgICAgICAgICAgIHNsb3BlID0gc3RkOjptYXgoc3RkOjptaW4oc2xvcGUsIHN0YXRpY19j
YXN0PGZsb2F0PihzbG9wZVZhbHVlLT5tYXhpbXVtKSksIHN0YXRpY19jYXN0PGZsb2F0PihzbG9w
ZVZhbHVlLT5taW5pbXVtKSk7CiAgICAgICAgIGlmIChuZWVkc0NvbnZlcnNpb24pIHsKICAgICAg
ICAgICAgIHdlaWdodCA9IGRlbm9ybWFsaXplV2VpZ2h0KHdlaWdodCk7CkBAIC01OTAsOCArNTky
LDggQEAgUmV0YWluUHRyPENURm9udFJlZj4gcHJlcGFyZVBsYXRmb3JtRm9udChDVEZvbnRSZWYg
b3JpZ2luYWxGb250LCBjb25zdCBGb250RGVzY3IKICAgICAvLyBGSVhNRTogSW1wbGVtZW50IFN0
ZXAgNjogdGhlIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzIGRlc2NyaXB0b3IgaW5zaWRlIEBmb250
LWZhY2UKIAogICAgIC8vIFN0ZXAgNzogQ29uc3VsdCB3aXRoIGZvbnQtZmVhdHVyZS1zZXR0aW5n
cyBpbnNpZGUgQGZvbnQtZmFjZQotICAgIGlmICghZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFj
ZUZlYXR1cmVzLmlzRW1wdHkoKSkgewotICAgICAgICBmb3IgKGF1dG8mIGZvbnRGYWNlRmVhdHVy
ZSA6IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcykKKyAgICBpZiAoZm9udENy
ZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKCkgJiYgIWZvbnRDcmVhdGlvbkNvbnRleHQu
Zm9udEZhY2VGZWF0dXJlcygpLT5pc0VtcHR5KCkpIHsKKyAgICAgICAgZm9yIChhdXRvJiBmb250
RmFjZUZlYXR1cmUgOiAqZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKCkpCiAg
ICAgICAgICAgICBhcHBseUZlYXR1cmUoZm9udEZhY2VGZWF0dXJlLnRhZygpLCBmb250RmFjZUZl
YXR1cmUudmFsdWUoKSk7CiAgICAgfQogCkBAIC02NzEsNyArNjczLDcgQEAgUmV0YWluUHRyPENU
Rm9udFJlZj4gcHJlcGFyZVBsYXRmb3JtRm9udChDVEZvbnRSZWYgb3JpZ2luYWxGb250LCBjb25z
dCBGb250RGVzY3IKICNlbmRpZgogICAgIH0KIAotICAgIGFkZEF0dHJpYnV0ZXNGb3JGb250UGFs
ZXR0ZXMoYXR0cmlidXRlcy5nZXQoKSwgZm9udERlc2NyaXB0aW9uLmZvbnRQYWxldHRlKCksIGZv
bnRDcmVhdGlvbkNvbnRleHQuZm9udFBhbGV0dGVWYWx1ZXMpOworICAgIGFkZEF0dHJpYnV0ZXNG
b3JGb250UGFsZXR0ZXMoYXR0cmlidXRlcy5nZXQoKSwgZm9udERlc2NyaXB0aW9uLmZvbnRQYWxl
dHRlKCksIGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udFBhbGV0dGVWYWx1ZXMoKSk7CiAKICAgICBh
ZGRBdHRyaWJ1dGVzRm9ySW5zdGFsbGVkRm9udHMoYXR0cmlidXRlcy5nZXQoKSwgZm9udERlc2Ny
aXB0aW9uLnNob3VsZEFsbG93VXNlckluc3RhbGxlZEZvbnRzKCkpOwogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRl
eHQuaAppbmRleCA4OWM2Y2JmMzM4NWVkZTgxMzlhNDgzNDNmMzdkZTY3OTYzY2QzZDkyLi43ZGYw
MmViMThiZjRiODk1YmM0OTQwYmIzNjgzMGJmMzhiNzczNzhkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0
LmgKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdHJ1Y3QgRm9u
dENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiAKIHN0cnVjdCBT
eW50aGVzaXNQYWlyIHsKICAgICBleHBsaWNpdCBTeW50aGVzaXNQYWlyKGJvb2wgbmVlZHNTeW50
aGV0aWNCb2xkLCBib29sIG5lZWRzU3ludGhldGljT2JsaXF1ZSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udEN1c3RvbVBsYXRmb3Jt
RGF0YS5oCmluZGV4IDdhNmQwYTFlNGI3OGI5YTcwYjgyNWM4MzM5YzlmNDhlMDkwNDNjYmEuLjcx
OGI5YmQzMTVlY2M2NzA3ODljNjVjYmFhYTAzNDkyOTc1ZTcyZDMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0
Zm9ybURhdGEuaApAQCAtMzMsNyArMzMsNyBAQCB0eXBlZGVmIGNvbnN0IHN0cnVjdCBfX0NURm9u
dERlc2NyaXB0b3IqIENURm9udERlc2NyaXB0b3JSZWY7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAotc3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0
OwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogc3RydWN0IEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRD
YXBhYmlsaXRpZXM7CiBjbGFzcyBTaGFyZWRCdWZmZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaAppbmRleCA2YTZjMDU4ZTIwZTNmZTk1Y2YzMTM2
MTU3YzUwNjIxNDc4YjdiYjJjLi5iOWZjZmIxZDZmZWE4YWQ1ZTc4MGJkZWViYzVjNmUwNGExZTg2
M2M3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVx
dWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0
LmgKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdHJ1Y3QgRm9u
dENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBjbGFzcyBTY3Jp
cHRFeGVjdXRpb25Db250ZXh0OwogY2xhc3MgU2hhcmVkQnVmZmVyOwogY2xhc3MgV29ya2VyR2xv
YmFsU2NvcGU7Cg==
</data>
<flag name="commit-queue"
          id="462899"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>439280</attachid>
            <date>2021-09-25 18:30:50 -0700</date>
            <delta_ts>2021-09-25 19:31:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230800-20210925183049.patch</filename>
            <type>text/plain</type>
            <size>19374</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzMDg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2JhN2M4OGVmODNkMGM5
N2M5NTQ2ZTJjYTZlZTc1YTMyNjAyM2JjNS4uOWU3ZWEwZWVhYWE4ODNjZTg0ZjNkMTJhNDQ3Mzcw
ZTgwYTJiMmRhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDIxLTA5LTI1ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgRmFjdG9yIG91
dCByYXJlIG1lbWJlcnMgb2YgRm9udENyZWF0aW9uQ29udGV4dCBpbnRvIEZvbnRDcmVhdGlvbkNv
bnRleHRSYXJlRGF0YQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjMwODAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRm9udENyZWF0aW9uQ29udGV4dCBpcyB1c2VkIGluc2lkZSBIYXNoTWFwIGtleXMgaW4g
Zm9udCBjYWNoZXMsIHNvIHdlIHdhbnQgdGhlIHR5cGUgdG8gYmUKKyAgICAgICAgc21hbGwuIFBh
bGV0dGVzIGFuZCBmb250IGZlYXR1cmVzIGFyZSByYXJlLCBzbyB3ZSBjYW4gbW92ZSB0aG9zZSBp
bnRvIGEgaGVhcC1hbGxvY2F0ZWQKKyAgICAgICAgcmFyZSBkYXRhIG9iamVjdCwgdGhlcmVieSBk
ZWNyZWFzaW5nIHRoZSBzaXplIG9mIEZvbnRDcmVhdGlvbkNvbnRleHQgZm9yIG1vc3QgZm9udHMu
CisgICAgICAgIEltcG9ydGFudGx5LCBpZiBwYWxldHRlcyBhbmQgZm9udCBmZWF0dXJlcyBhcmVu
J3QgdXNlZCwgdGhlIFJlZlB0ciB3aWxsIGp1c3QgYmUgbnVsbCwgYW5kCisgICAgICAgIG5vIGFs
bG9jYXRpb24gaXMgcGVyZm9ybWVkLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyBiZWNhdXNlIHRo
ZXJlIGlzIG5vIGJlaGF2aW9yIGNoYW5nZS4KKworICAgICAgICAqIGNzcy9DU1NGb250RmFjZS5o
OgorICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNvdXJjZS5oOgorICAgICAgICAqIGNzcy9DU1NT
ZWdtZW50ZWRGb250RmFjZS5oOgorICAgICAgICAqIGxvYWRlci9Gb250TG9hZFJlcXVlc3QuaDoK
KyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5oOgorICAgICAgICAqIGxvYWRlci9j
YWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaDoKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2Fj
aGVkU1ZHRm9udC5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDcmVhdGlvbkNv
bnRleHQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6
Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6
Zm9udEZhY2VGZWF0dXJlcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGb250Q3JlYXRpb25D
b250ZXh0UmFyZURhdGE6OmZvbnRQYWxldHRlVmFsdWVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6b3BlcmF0b3I9PSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGE6Om9wZXJhdG9yIT0gY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhOjpGb250
Q3JlYXRpb25Db250ZXh0UmFyZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9u
Q29udGV4dDo6Rm9udENyZWF0aW9uQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpGb250Q3Jl
YXRpb25Db250ZXh0Ojpmb250RmFjZUZlYXR1cmVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkZvbnRDcmVhdGlvbkNvbnRleHQ6OmZvbnRGYWNlQ2FwYWJpbGl0aWVzIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHQ6OmZvbnRQYWxldHRlVmFsdWVzIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHQ6Om9wZXJhdG9yPT0gY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6YWRkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9Gb250UGFsZXR0ZVZhbHVlcy5oOgorICAgICAgICAoV2ViQ29yZTo6Rm9udFBhbGV0dGVWYWx1
ZXM6Om9wZXJhdG9yIGJvb2wgY29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nv
Y29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmFkZEF0dHJpYnV0
ZXNGb3JGb250UGFsZXR0ZXMpOgorICAgICAgICAoV2ViQ29yZTo6cHJlcGFyZVBsYXRmb3JtRm9u
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQu
aDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q2FjaGVGcmVlVHlw
ZS5jcHA6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9y
bURhdGEuaDoKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oOgorCiAy
MDIxLTA5LTI1ICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBGaXgg
d2luIGJ1aWxkLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaAppbmRleCBkNDVjMDYyMmU3NDcxOTdi
ZWZjYTRjMzY2MDNkNDBmYmY0MWE4ZjQ5Li43ODk5M2VmZWY1N2I1ZTY3OTk2YWQxYmRhZWY4Nzcx
N2ZhMTYwZGU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaApAQCAtNDcsNyArNDcsNyBAQCBj
bGFzcyBDU1NTZWdtZW50ZWRGb250RmFjZTsKIGNsYXNzIENTU1ZhbHVlOwogY2xhc3MgQ1NTVmFs
dWVMaXN0OwogY2xhc3MgRm9udENhY2hlOwotc3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7Citj
bGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3Mg
Rm9udDsKIGNsYXNzIEZvbnRGYWNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0ZvbnRGYWNlU291cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2Uu
aAppbmRleCAxZjY1N2E2NjQ1MWEwYzRjZjcxN2Y1ZTgwY2QxMGVhMmJmOTdmOTAxLi44MjYxMzMz
MjJhOGVlNWYzNzgyZmJiMjMxMjNiMmRkM2E1N2ExNzI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
Rm9udEZhY2VTb3VyY2UuaApAQCAtMzYsNyArMzYsNyBAQCBjbGFzcyBDU1NGb250RmFjZTsKIGNs
YXNzIENTU0ZvbnRTZWxlY3RvcjsKIGNsYXNzIERvY3VtZW50OwogY2xhc3MgRm9udDsKLXN0cnVj
dCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIHN0cnVj
dCBGb250Q3VzdG9tUGxhdGZvcm1EYXRhOwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogc3RydWN0
IEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTU2VnbWVudGVkRm9udEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NTZWdtZW50ZWRGb250RmFjZS5oCmluZGV4IDkwZjNhZWFlNWI5NGJmYjI1YWI2NjU5NWU5MGNl
OGU5ZGNkYTVmZWUuLjViN2RiZTFjOTc0ZDU0ZDQ2ZTI0MDEyODFkMjAyMjY2MmE1ZmFhNTQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWdtZW50ZWRGb250RmFjZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWdtZW50ZWRGb250RmFjZS5oCkBAIC0zNCw3ICszNCw3
IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENTU0ZvbnRTZWxlY3RvcjsKLXN0cnVj
dCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIGNsYXNz
IEZvbnREZXNjcmlwdGlvbjsKIGNsYXNzIEZvbnRQYWxldHRlVmFsdWVzOwogY2xhc3MgRm9udFJh
bmdlczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3Qu
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaAppbmRleCA5NWMzZTc2
MDkwODBhMGYyOGYyNGRjZjg3ZWYzNjUyNjVjNmY4YTg2Li5kODkwNWNlMjEzNzRmMmNlYzFlMjE0
MzM5N2JmYmRlMzg2ZWRiMWYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9u
dExvYWRSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVz
dC5oCkBAIC0zMiw3ICszMiw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEZvbnQ7
Ci1zdHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7
CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBGb250TG9hZFJlcXVlc3Q7CiBzdHJ1Y3Qg
Rm9udFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkRm9udC5oCmluZGV4IGVhOTE3ZGExMWM3MjYxNWJhZWQ3NzZkMWRmYzg3NTMx
ZTUxNjQzOTQuLmNlYmRjNTU3ZjEzZmM0YWZkODI3NTI5Nzc0YWZkOGVjNGJlZjQyMTAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuaApAQCAtMzQsNyArMzQsNyBAQAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBDYWNoZWRSZXNvdXJjZUxvYWRlcjsKLXN0cnVj
dCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIGNsYXNz
IEZvbnREZXNjcmlwdGlvbjsKIGNsYXNzIEZvbnRQbGF0Zm9ybURhdGE7CiBzdHJ1Y3QgRm9udFNl
bGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaAppbmRleCAxMGNmYmE1MGI0NmFhNDU5
ZDdmYjY3MDljZTI5ZjRmNWJhNGI0ZDhkLi5iNTc3N2MxMmNjZTM3OGFiOWI0ZTFjYzkwNGI0Y2Iw
N2VmMzQxMjdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
Rm9udExvYWRSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZEZvbnRMb2FkUmVxdWVzdC5oCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotc3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250
ZXh0OwogCiBjbGFzcyBDYWNoZWRGb250TG9hZFJlcXVlc3QgZmluYWwgOiBwdWJsaWMgRm9udExv
YWRSZXF1ZXN0LCBwdWJsaWMgQ2FjaGVkRm9udENsaWVudCB7CiAgICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
U1ZHRm9udC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNWR0ZvbnQuaApp
bmRleCAzZjBjMDE0M2MwZjhkOWViMTc4M2IwZmI2M2UyMjA3NWY3ODI4ZDlhLi4zNTNkM2RlNjNi
MDYyODYxM2FiYWY3NzdmZWIyNTNjNWI2MjQ5MGM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU1ZHRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRTVkdGb250LmgKQEAgLTI5LDcgKzI5LDcgQEAKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCi1zdHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlv
bkNvbnRleHQ7CiBjbGFzcyBTVkdGb250RmFjZUVsZW1lbnQ7CiBjbGFzcyBTZXR0aW5nczsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9u
Q29udGV4dC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9u
Q29udGV4dC5oCmluZGV4IGU5MTBiNGQzMGE2ZjIxMzBmYzg1OWJjOTVmNTUyODkwMThhNmMwMGYu
Ljg0Yjk4YjBiM2U1ZjY1ZTVhMWZmZTA2ZWU0NzZkZTMxZGQ5NWMzYjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDcmVhdGlvbkNvbnRleHQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q3JlYXRpb25Db250ZXh0LmgK
QEAgLTI4LDE1ICsyOCw3OSBAQAogI2luY2x1ZGUgIkZvbnRQYWxldHRlVmFsdWVzLmgiCiAjaW5j
bHVkZSAiRm9udFNlbGVjdGlvbkFsZ29yaXRobS5oIgogI2luY2x1ZGUgIkZvbnRUYWdnZWRTZXR0
aW5ncy5oIgorI2luY2x1ZGUgPHd0Zi9Qb2ludGVyQ29tcGFyaXNvbi5oPgogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKLXN0cnVjdCBGb250Q3JlYXRpb25Db250ZXh0IHsKK2NsYXNzIEZvbnRDcmVh
dGlvbkNvbnRleHRSYXJlRGF0YSA6IHB1YmxpYyBSZWZDb3VudGVkPEZvbnRDcmVhdGlvbkNvbnRl
eHRSYXJlRGF0YT4geworcHVibGljOgorICAgIHN0YXRpYyBSZWY8Rm9udENyZWF0aW9uQ29udGV4
dFJhcmVEYXRhPiBjcmVhdGUoY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0
dXJlcywgY29uc3QgRm9udFBhbGV0dGVWYWx1ZXMmIGZvbnRQYWxldHRlVmFsdWVzKQorICAgIHsK
KyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRh
KGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRQYWxldHRlVmFsdWVzKSk7CisgICAgfQorCisgICAgY29u
c3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0dXJlcygpIGNvbnN0CisgICAgewor
ICAgICAgICByZXR1cm4gbV9mb250RmFjZUZlYXR1cmVzOworICAgIH0KKworICAgIGNvbnN0IEZv
bnRQYWxldHRlVmFsdWVzJiBmb250UGFsZXR0ZVZhbHVlcygpIGNvbnN0CisgICAgeworICAgICAg
ICByZXR1cm4gbV9mb250UGFsZXR0ZVZhbHVlczsKKyAgICB9CisKKyAgICBib29sIG9wZXJhdG9y
PT0oY29uc3QgRm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhJiBvdGhlcikgY29uc3QKKyAgICB7
CisgICAgICAgIHJldHVybiBtX2ZvbnRGYWNlRmVhdHVyZXMgPT0gb3RoZXIubV9mb250RmFjZUZl
YXR1cmVzCisgICAgICAgICAgICAmJiBtX2ZvbnRQYWxldHRlVmFsdWVzID09IG90aGVyLm1fZm9u
dFBhbGV0dGVWYWx1ZXM7CisgICAgfQorCisgICAgYm9vbCBvcGVyYXRvciE9KGNvbnN0IEZvbnRD
cmVhdGlvbkNvbnRleHRSYXJlRGF0YSYgb3RoZXIpIGNvbnN0CisgICAgeworICAgICAgICByZXR1
cm4gISgqdGhpcyA9PSBvdGhlcik7CisgICAgfQorCitwcml2YXRlOgorICAgIEZvbnRDcmVhdGlv
bkNvbnRleHRSYXJlRGF0YShjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1
cmVzLCBjb25zdCBGb250UGFsZXR0ZVZhbHVlcyYgZm9udFBhbGV0dGVWYWx1ZXMpCisgICAgICAg
IDogbV9mb250RmFjZUZlYXR1cmVzKGZvbnRGYWNlRmVhdHVyZXMpCisgICAgICAgICwgbV9mb250
UGFsZXR0ZVZhbHVlcyhmb250UGFsZXR0ZVZhbHVlcykKKyAgICB7CisgICAgfQorCisgICAgRm9u
dEZlYXR1cmVTZXR0aW5ncyBtX2ZvbnRGYWNlRmVhdHVyZXM7CisgICAgRm9udFBhbGV0dGVWYWx1
ZXMgbV9mb250UGFsZXR0ZVZhbHVlczsKKyAgICAvLyBGSVhNRTogQWRkIHN1cHBvcnQgZm9yIGZv
bnQtZmVhdHVyZS12YWx1ZXMuCit9OworCitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0IHsKK3B1
YmxpYzoKKyAgICBGb250Q3JlYXRpb25Db250ZXh0KCkgPSBkZWZhdWx0OworCisgICAgRm9udENy
ZWF0aW9uQ29udGV4dChjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVz
LCBjb25zdCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzJiBmb250RmFjZUNhcGFi
aWxpdGllcywgY29uc3QgRm9udFBhbGV0dGVWYWx1ZXMmIGZvbnRQYWxldHRlVmFsdWVzKQorICAg
ICAgICA6IG1fZm9udEZhY2VDYXBhYmlsaXRpZXMoZm9udEZhY2VDYXBhYmlsaXRpZXMpCisgICAg
eworICAgICAgICBpZiAoIWZvbnRGYWNlRmVhdHVyZXMuaXNFbXB0eSgpIHx8IGZvbnRQYWxldHRl
VmFsdWVzKQorICAgICAgICAgICAgbV9yYXJlRGF0YSA9IEZvbnRDcmVhdGlvbkNvbnRleHRSYXJl
RGF0YTo6Y3JlYXRlKGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRQYWxldHRlVmFsdWVzKTsKKyAgICB9
CisKKyAgICBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzKiBmb250RmFjZUZlYXR1cmVzKCkgY29u
c3QKKyAgICB7CisgICAgICAgIHJldHVybiBtX3JhcmVEYXRhID8gJm1fcmFyZURhdGEtPmZvbnRG
YWNlRmVhdHVyZXMoKSA6IG51bGxwdHI7CisgICAgfQorCisgICAgY29uc3QgRm9udFNlbGVjdGlv
blNwZWNpZmllZENhcGFiaWxpdGllcyYgZm9udEZhY2VDYXBhYmlsaXRpZXMoKSBjb25zdAorICAg
IHsKKyAgICAgICAgcmV0dXJuIG1fZm9udEZhY2VDYXBhYmlsaXRpZXM7CisgICAgfQorICAgIGNv
bnN0IEZvbnRQYWxldHRlVmFsdWVzKiBmb250UGFsZXR0ZVZhbHVlcygpIGNvbnN0CisgICAgewor
ICAgICAgICByZXR1cm4gbV9yYXJlRGF0YSA/ICZtX3JhcmVEYXRhLT5mb250UGFsZXR0ZVZhbHVl
cygpIDogbnVsbHB0cjsKKyAgICB9CisKICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgRm9udENy
ZWF0aW9uQ29udGV4dCYgb3RoZXIpIGNvbnN0CiAgICAgewotICAgICAgICByZXR1cm4gZm9udEZh
Y2VGZWF0dXJlcyA9PSBvdGhlci5mb250RmFjZUZlYXR1cmVzCi0gICAgICAgICAgICAmJiBmb250
RmFjZUNhcGFiaWxpdGllcyA9PSBvdGhlci5mb250RmFjZUNhcGFiaWxpdGllcwotICAgICAgICAg
ICAgJiYgZm9udFBhbGV0dGVWYWx1ZXMgPT0gb3RoZXIuZm9udFBhbGV0dGVWYWx1ZXM7CisgICAg
ICAgIHJldHVybiBtX2ZvbnRGYWNlQ2FwYWJpbGl0aWVzID09IG90aGVyLm1fZm9udEZhY2VDYXBh
YmlsaXRpZXMKKyAgICAgICAgICAgICYmIGFyZVBvaW50aW5nVG9FcXVhbERhdGEobV9yYXJlRGF0
YSwgb3RoZXIubV9yYXJlRGF0YSk7CiAgICAgfQogCiAgICAgYm9vbCBvcGVyYXRvciE9KGNvbnN0
IEZvbnRDcmVhdGlvbkNvbnRleHQmIG90aGVyKSBjb25zdApAQCAtNDQsMTcgKzEwOCwxOCBAQCBz
dHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dCB7CiAgICAgICAgIHJldHVybiAhKCp0aGlzID09IG90
aGVyKTsKICAgICB9CiAKLSAgICBGb250RmVhdHVyZVNldHRpbmdzIGZvbnRGYWNlRmVhdHVyZXM7
Ci0gICAgRm9udFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllcyBmb250RmFjZUNhcGFiaWxp
dGllczsKLSAgICBGb250UGFsZXR0ZVZhbHVlcyBmb250UGFsZXR0ZVZhbHVlczsKLSAgICAvLyBG
SVhNRTogQWRkIHN1cHBvcnQgZm9yIGZvbnQtZmVhdHVyZS12YWx1ZXMuCitwcml2YXRlOgorICAg
IEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXMgbV9mb250RmFjZUNhcGFiaWxpdGll
czsKKyAgICBSZWZQdHI8Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhPiBtX3JhcmVEYXRhOwog
fTsKIAogaW5saW5lIHZvaWQgYWRkKEhhc2hlciYgaGFzaGVyLCBjb25zdCBGb250Q3JlYXRpb25D
b250ZXh0JiBmb250Q3JlYXRpb25Db250ZXh0KQogewotICAgIGFkZChoYXNoZXIsIGZvbnRDcmVh
dGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcyk7Ci0gICAgYWRkKGhhc2hlciwgZm9udENyZWF0
aW9uQ29udGV4dC5mb250RmFjZUNhcGFiaWxpdGllcy50aWVkKCkpOwotICAgIGFkZChoYXNoZXIs
IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udFBhbGV0dGVWYWx1ZXMpOworICAgIGlmIChmb250Q3Jl
YXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSkKKyAgICAgICAgYWRkKGhhc2hlciwgKmZv
bnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcygpKTsKKyAgICBhZGQoaGFzaGVyLCBm
b250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlQ2FwYWJpbGl0aWVzKCkudGllZCgpKTsKKyAgICBp
ZiAoZm9udENyZWF0aW9uQ29udGV4dC5mb250UGFsZXR0ZVZhbHVlcygpKQorICAgICAgICBhZGQo
aGFzaGVyLCAqZm9udENyZWF0aW9uQ29udGV4dC5mb250UGFsZXR0ZVZhbHVlcygpKTsKIH0KIAog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFBhbGV0
dGVWYWx1ZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQYWxldHRl
VmFsdWVzLmgKaW5kZXggMTcxMmI2MjhjMDMyMzliNTdjYzdkNTJlYTNmMDE4NTQ2ZjkwMTUyZS4u
ZjI4Zjc2NGY5ODE4YWQwMmVkMDM0NzgyMjJmZTZjNGVjZmRiMzRmMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFBhbGV0dGVWYWx1ZXMuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250UGFsZXR0ZVZhbHVlcy5oCkBAIC01
OCw2ICs1OCwxNSBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBtX292ZXJyaWRlQ29sb3I7CiAg
ICAgfQogCisgICAgb3BlcmF0b3IgYm9vbCgpIGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4g
V1RGOjpzd2l0Y2hPbihtX2Jhc2VQYWxldHRlLCBbXSAoaW50NjRfdCkgeworICAgICAgICAgICAg
cmV0dXJuIHRydWU7CisgICAgICAgIH0sIFtdIChjb25zdCBBdG9tU3RyaW5nJiBzdHJpbmcpIHsK
KyAgICAgICAgICAgIHJldHVybiAhc3RyaW5nLmlzTnVsbCgpOworICAgICAgICB9KSB8fCAhbV9v
dmVycmlkZUNvbG9yLmlzRW1wdHkoKTsKKyAgICB9CisKICAgICBib29sIG9wZXJhdG9yPT0oY29u
c3QgRm9udFBhbGV0dGVWYWx1ZXMmIG90aGVyKSBjb25zdAogICAgIHsKICAgICAgICAgcmV0dXJu
IG1fYmFzZVBhbGV0dGUgPT0gb3RoZXIubV9iYXNlUGFsZXR0ZSAmJiBtX292ZXJyaWRlQ29sb3Ig
PT0gb3RoZXIubV9vdmVycmlkZUNvbG9yOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwCmluZGV4IDFh
NmY3MzI5MDY3NTljOTI5ODQzZTU3ZTU4OTVlMWJjYjUxYWI0MzMuLjg4ZTJmM2ZmMTI5MTRhNzky
MDk5M2JiMzRlZjE4NzJlMGJiOTllZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAKQEAgLTQ0
Myw3ICs0NDMsNyBAQCBzdHJ1Y3QgRm9udFR5cGUgewogICAgIGJvb2wgYWF0U2hhcGluZyB7IGZh
bHNlIH07CiB9OwogCi1zdGF0aWMgdm9pZCBhZGRBdHRyaWJ1dGVzRm9yRm9udFBhbGV0dGVzKENG
TXV0YWJsZURpY3Rpb25hcnlSZWYgYXR0cmlidXRlcywgY29uc3QgRm9udFBhbGV0dGUmIGZvbnRQ
YWxldHRlLCBjb25zdCBGb250UGFsZXR0ZVZhbHVlcyYgZm9udFBhbGV0dGVWYWx1ZXMpCitzdGF0
aWMgdm9pZCBhZGRBdHRyaWJ1dGVzRm9yRm9udFBhbGV0dGVzKENGTXV0YWJsZURpY3Rpb25hcnlS
ZWYgYXR0cmlidXRlcywgY29uc3QgRm9udFBhbGV0dGUmIGZvbnRQYWxldHRlLCBjb25zdCBGb250
UGFsZXR0ZVZhbHVlcyogZm9udFBhbGV0dGVWYWx1ZXMpCiB7CiAgICAgc3dpdGNoIChmb250UGFs
ZXR0ZS50eXBlKSB7CiAgICAgY2FzZSBGb250UGFsZXR0ZTo6VHlwZTo6Tm9uZToKQEAgLTQ2NCwx
NSArNDY0LDE3IEBAIHN0YXRpYyB2b2lkIGFkZEF0dHJpYnV0ZXNGb3JGb250UGFsZXR0ZXMoQ0ZN
dXRhYmxlRGljdGlvbmFyeVJlZiBhdHRyaWJ1dGVzLCBjb25zCiAgICAgICAgIGJyZWFrOwogICAg
IH0KICAgICBjYXNlIEZvbnRQYWxldHRlOjpUeXBlOjpDdXN0b206IHsKLSAgICAgICAgV1RGOjpz
d2l0Y2hPbihmb250UGFsZXR0ZVZhbHVlcy5iYXNlUGFsZXR0ZSgpLCBbJl0oaW50NjRfdCBpbmRl
eCkgeworICAgICAgICBpZiAoIWZvbnRQYWxldHRlVmFsdWVzKQorICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIFdURjo6c3dpdGNoT24oZm9udFBhbGV0dGVWYWx1ZXMtPmJhc2VQYWxldHRlKCks
IFsmXShpbnQ2NF90IGluZGV4KSB7CiAgICAgICAgICAgICBhdXRvIG51bWJlciA9IGFkb3B0Q0Yo
Q0ZOdW1iZXJDcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwga0NGTnVtYmVyQ0ZJbmRleFR5cGUs
ICZpbmRleCkpOwogICAgICAgICAgICAgQ0ZEaWN0aW9uYXJ5QWRkVmFsdWUoYXR0cmlidXRlcywg
a0NURm9udFBhbGV0dGVBdHRyaWJ1dGUsIG51bWJlci5nZXQoKSk7CiAgICAgICAgIH0sIFtdKGNv
bnN0IEF0b21TdHJpbmcmKSB7CiAgICAgICAgICAgICAvLyBUaGlzIGlzIHVuaW1wbGVtZW50YWJs
ZSBpbiBDb3JlIFRleHQuCiAgICAgICAgIH0pOwotICAgICAgICBpZiAoIWZvbnRQYWxldHRlVmFs
dWVzLm92ZXJyaWRlQ29sb3IoKS5pc0VtcHR5KCkpIHsKKyAgICAgICAgaWYgKCFmb250UGFsZXR0
ZVZhbHVlcy0+b3ZlcnJpZGVDb2xvcigpLmlzRW1wdHkoKSkgewogICAgICAgICAgICAgYXV0byBv
dmVycmlkZURpY3Rpb25hcnkgPSBhZG9wdENGKENGRGljdGlvbmFyeUNyZWF0ZU11dGFibGUoa0NG
QWxsb2NhdG9yRGVmYXVsdCwgMCwgJmtDRlR5cGVEaWN0aW9uYXJ5S2V5Q2FsbEJhY2tzLCAma0NG
VHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOwotICAgICAgICAgICAgZm9yIChjb25zdCBh
dXRvJiBwYWlyIDogZm9udFBhbGV0dGVWYWx1ZXMub3ZlcnJpZGVDb2xvcigpKSB7CisgICAgICAg
ICAgICBmb3IgKGNvbnN0IGF1dG8mIHBhaXIgOiBmb250UGFsZXR0ZVZhbHVlcy0+b3ZlcnJpZGVD
b2xvcigpKSB7CiAgICAgICAgICAgICAgICAgY29uc3QgYXV0byYgcGFsZXR0ZUNvbG9ySW5kZXgg
PSBwYWlyLmZpcnN0OwogICAgICAgICAgICAgICAgIGNvbnN0IGF1dG8mIGNvbG9yID0gcGFpci5z
ZWNvbmQ7CiAgICAgICAgICAgICAgICAgV1RGOjpzd2l0Y2hPbihwYWxldHRlQ29sb3JJbmRleCwg
W10oY29uc3QgQXRvbVN0cmluZyYpIHsKQEAgLTUyMCw3ICs1MjIsNyBAQCBSZXRhaW5QdHI8Q1RG
b250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250KENURm9udFJlZiBvcmlnaW5hbEZvbnQsIGNvbnN0
IEZvbnREZXNjcgogICAgIGJvb2wgdGV4dFJlbmRlcmluZ01vZGVJc0F1dG8gPSB0ZXh0UmVuZGVy
aW5nTW9kZSA9PSBUZXh0UmVuZGVyaW5nTW9kZTo6QXV0b1RleHRSZW5kZXJpbmc7CiAgICAgYm9v
bCB2YXJpYW50U2V0dGluZ3NJc05vcm1hbCA9IHZhcmlhbnRTZXR0aW5ncy5pc0FsbE5vcm1hbCgp
OwogICAgIGJvb2wgZG9udE5lZWRUb0FwcGx5T3B0aWNhbFNpemluZyA9IGZvbnRPcHRpY2FsU2l6
aW5nID09IEZvbnRPcHRpY2FsU2l6aW5nOjpFbmFibGVkICYmICFmb3JjZU9wdGljYWxTaXppbmdP
bjsKLSAgICBib29sIGZvbnRGYWNlRG9lc250U3BlY2lmeUZlYXR1cmVzID0gZm9udENyZWF0aW9u
Q29udGV4dC5mb250RmFjZUZlYXR1cmVzLmlzRW1wdHkoKTsKKyAgICBib29sIGZvbnRGYWNlRG9l
c250U3BlY2lmeUZlYXR1cmVzID0gIWZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJl
cygpIHx8IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcygpLT5pc0VtcHR5KCk7
CiAgICAgaWYgKG5vRm9udEZlYXR1cmVTZXR0aW5ncyAmJiBub0ZvbnRWYXJpYXRpb25TZXR0aW5n
cyAmJiB0ZXh0UmVuZGVyaW5nTW9kZUlzQXV0byAmJiB2YXJpYW50U2V0dGluZ3NJc05vcm1hbCAm
JiBkb250TmVlZFRvQXBwbHlPcHRpY2FsU2l6aW5nICYmIGZvbnRGYWNlRG9lc250U3BlY2lmeUZl
YXR1cmVzICYmICFzaG91bGREaXNhYmxlTGlnYXR1cmVzRm9yU3BhY2luZyAmJiBkb250TmVlZFRv
QXBwbHlGb250UGFsZXR0ZXMpIHsKICNpZiBIQVZFKENURk9OVENSRUFURUZPUkNIQVJBQ1RFUlNX
SVRITEFOR1VBR0VBTkRPUFRJT04pCiAgICAgICAgIHJldHVybiBvcmlnaW5hbEZvbnQ7CkBAIC01
NjYsMTEgKzU2OCwxMSBAQCBSZXRhaW5QdHI8Q1RGb250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250
KENURm9udFJlZiBvcmlnaW5hbEZvbnQsIGNvbnN0IEZvbnREZXNjcgogICAgICAgICBmbG9hdCB3
ZWlnaHQgPSBmb250U2VsZWN0aW9uUmVxdWVzdC53ZWlnaHQ7CiAgICAgICAgIGZsb2F0IHdpZHRo
ID0gZm9udFNlbGVjdGlvblJlcXVlc3Qud2lkdGg7CiAgICAgICAgIGZsb2F0IHNsb3BlID0gZm9u
dFNlbGVjdGlvblJlcXVlc3Quc2xvcGUudmFsdWVfb3Iobm9ybWFsSXRhbGljVmFsdWUoKSk7Ci0g
ICAgICAgIGlmIChhdXRvIHdlaWdodFZhbHVlID0gZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFj
ZUNhcGFiaWxpdGllcy53ZWlnaHQpCisgICAgICAgIGlmIChhdXRvIHdlaWdodFZhbHVlID0gZm9u
dENyZWF0aW9uQ29udGV4dC5mb250RmFjZUNhcGFiaWxpdGllcygpLndlaWdodCkKICAgICAgICAg
ICAgIHdlaWdodCA9IHN0ZDo6bWF4KHN0ZDo6bWluKHdlaWdodCwgc3RhdGljX2Nhc3Q8ZmxvYXQ+
KHdlaWdodFZhbHVlLT5tYXhpbXVtKSksIHN0YXRpY19jYXN0PGZsb2F0Pih3ZWlnaHRWYWx1ZS0+
bWluaW11bSkpOwotICAgICAgICBpZiAoYXV0byB3aWR0aFZhbHVlID0gZm9udENyZWF0aW9uQ29u
dGV4dC5mb250RmFjZUNhcGFiaWxpdGllcy53aWR0aCkKKyAgICAgICAgaWYgKGF1dG8gd2lkdGhW
YWx1ZSA9IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VDYXBhYmlsaXRpZXMoKS53aWR0aCkK
ICAgICAgICAgICAgIHdpZHRoID0gc3RkOjptYXgoc3RkOjptaW4od2lkdGgsIHN0YXRpY19jYXN0
PGZsb2F0Pih3aWR0aFZhbHVlLT5tYXhpbXVtKSksIHN0YXRpY19jYXN0PGZsb2F0Pih3aWR0aFZh
bHVlLT5taW5pbXVtKSk7Ci0gICAgICAgIGlmIChhdXRvIHNsb3BlVmFsdWUgPSBmb250Q3JlYXRp
b25Db250ZXh0LmZvbnRGYWNlQ2FwYWJpbGl0aWVzLndlaWdodCkKKyAgICAgICAgaWYgKGF1dG8g
c2xvcGVWYWx1ZSA9IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VDYXBhYmlsaXRpZXMoKS53
ZWlnaHQpCiAgICAgICAgICAgICBzbG9wZSA9IHN0ZDo6bWF4KHN0ZDo6bWluKHNsb3BlLCBzdGF0
aWNfY2FzdDxmbG9hdD4oc2xvcGVWYWx1ZS0+bWF4aW11bSkpLCBzdGF0aWNfY2FzdDxmbG9hdD4o
c2xvcGVWYWx1ZS0+bWluaW11bSkpOwogICAgICAgICBpZiAobmVlZHNDb252ZXJzaW9uKSB7CiAg
ICAgICAgICAgICB3ZWlnaHQgPSBkZW5vcm1hbGl6ZVdlaWdodCh3ZWlnaHQpOwpAQCAtNTkwLDgg
KzU5Miw4IEBAIFJldGFpblB0cjxDVEZvbnRSZWY+IHByZXBhcmVQbGF0Zm9ybUZvbnQoQ1RGb250
UmVmIG9yaWdpbmFsRm9udCwgY29uc3QgRm9udERlc2NyCiAgICAgLy8gRklYTUU6IEltcGxlbWVu
dCBTdGVwIDY6IHRoZSBmb250LXZhcmlhdGlvbi1zZXR0aW5ncyBkZXNjcmlwdG9yIGluc2lkZSBA
Zm9udC1mYWNlCiAKICAgICAvLyBTdGVwIDc6IENvbnN1bHQgd2l0aCBmb250LWZlYXR1cmUtc2V0
dGluZ3MgaW5zaWRlIEBmb250LWZhY2UKLSAgICBpZiAoIWZvbnRDcmVhdGlvbkNvbnRleHQuZm9u
dEZhY2VGZWF0dXJlcy5pc0VtcHR5KCkpIHsKLSAgICAgICAgZm9yIChhdXRvJiBmb250RmFjZUZl
YXR1cmUgOiBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMpCisgICAgaWYgKGZv
bnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcygpICYmICFmb250Q3JlYXRpb25Db250
ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKS0+aXNFbXB0eSgpKSB7CisgICAgICAgIGZvciAoYXV0byYg
Zm9udEZhY2VGZWF0dXJlIDogKmZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcygp
KQogICAgICAgICAgICAgYXBwbHlGZWF0dXJlKGZvbnRGYWNlRmVhdHVyZS50YWcoKSwgZm9udEZh
Y2VGZWF0dXJlLnZhbHVlKCkpOwogICAgIH0KIApAQCAtNjcxLDcgKzY3Myw3IEBAIFJldGFpblB0
cjxDVEZvbnRSZWY+IHByZXBhcmVQbGF0Zm9ybUZvbnQoQ1RGb250UmVmIG9yaWdpbmFsRm9udCwg
Y29uc3QgRm9udERlc2NyCiAjZW5kaWYKICAgICB9CiAKLSAgICBhZGRBdHRyaWJ1dGVzRm9yRm9u
dFBhbGV0dGVzKGF0dHJpYnV0ZXMuZ2V0KCksIGZvbnREZXNjcmlwdGlvbi5mb250UGFsZXR0ZSgp
LCBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRQYWxldHRlVmFsdWVzKTsKKyAgICBhZGRBdHRyaWJ1
dGVzRm9yRm9udFBhbGV0dGVzKGF0dHJpYnV0ZXMuZ2V0KCksIGZvbnREZXNjcmlwdGlvbi5mb250
UGFsZXR0ZSgpLCBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRQYWxldHRlVmFsdWVzKCkpOwogCiAg
ICAgYWRkQXR0cmlidXRlc0Zvckluc3RhbGxlZEZvbnRzKGF0dHJpYnV0ZXMuZ2V0KCksIGZvbnRE
ZXNjcmlwdGlvbi5zaG91bGRBbGxvd1VzZXJJbnN0YWxsZWRGb250cygpKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRl
eHQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNv
cmVUZXh0LmgKaW5kZXggODljNmNiZjMzODVlZGU4MTM5YTQ4MzQzZjM3ZGU2Nzk2M2NkM2Q5Mi4u
N2RmMDJlYjE4YmY0Yjg5NWJjNDk0MGJiMzY4MzBiZjM4Yjc3Mzc4ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3Jl
VGV4dC5oCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotc3RydWN0
IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogCiBzdHJ1
Y3QgU3ludGhlc2lzUGFpciB7CiAgICAgZXhwbGljaXQgU3ludGhlc2lzUGFpcihib29sIG5lZWRz
U3ludGhldGljQm9sZCwgYm9vbCBuZWVkc1N5bnRoZXRpY09ibGlxdWUpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q2FjaGVGcmVlVHlw
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q2Fj
aGVGcmVlVHlwZS5jcHAKaW5kZXggN2MwOWQ5YjIwNTc4YmQ5ZWRlZDZkMjkwNzNlMWJjNzZiMTdk
OTZiZS4uOWM2YmFiMjA2ZmY2NTE1NzdmNDk3NTEzYzk3ZDQ1NjI0MzE1Zjg5MSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJl
ZVR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBl
L0ZvbnRDYWNoZUZyZWVUeXBlLmNwcApAQCAtNTczLDggKzU3Myw4IEBAIHN0ZDo6dW5pcXVlX3B0
cjxGb250UGxhdGZvcm1EYXRhPiBGb250Q2FjaGU6OmNyZWF0ZUZvbnRQbGF0Zm9ybURhdGEoY29u
c3QgRm9udERlCiAgICAgYm9vbCBmaXhlZFdpZHRoLCBzeW50aGV0aWNCb2xkLCBzeW50aGV0aWNP
YmxpcXVlOwogICAgIGdldEZvbnRQcm9wZXJ0aWVzRnJvbVBhdHRlcm4ocmVzdWx0UGF0dGVybi5n
ZXQoKSwgZm9udERlc2NyaXB0aW9uLCBmaXhlZFdpZHRoLCBzeW50aGV0aWNCb2xkLCBzeW50aGV0
aWNPYmxpcXVlKTsKIAotICAgIGlmICghZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1
cmVzLmlzRW1wdHkoKSkgewotICAgICAgICBmb3IgKGF1dG8mIGZvbnRGYWNlRmVhdHVyZSA6IGZv
bnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcykgeworICAgIGlmICghZm9udENyZWF0
aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKCkuaXNFbXB0eSgpKSB7CisgICAgICAgIGZvciAo
YXV0byYgZm9udEZhY2VGZWF0dXJlIDogZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1
cmVzKCkpIHsKICAgICAgICAgICAgIGlmIChmb250RmFjZUZlYXR1cmUuZW5hYmxlZCgpKSB7CiAg
ICAgICAgICAgICAgICAgY29uc3QgYXV0byYgdGFnID0gZm9udEZhY2VGZWF0dXJlLnRhZygpOwog
ICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgYnVmZmVyW10gPSB7IHRhZ1swXSwgdGFnWzFdLCB0
YWdbMl0sIHRhZ1szXSwgJ1wwJyB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmgKaW5kZXggN2E2
ZDBhMWU0Yjc4YjlhNzBiODI1YzgzMzljOWY0OGUwOTA0M2NiYS4uNzE4YjliZDMxNWVjYzY3MDc4
OWM2NWNiYWFhMDM0OTI5NzVlNzJkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oCkBAIC0z
Myw3ICszMyw3IEBAIHR5cGVkZWYgY29uc3Qgc3RydWN0IF9fQ1RGb250RGVzY3JpcHRvciogQ1RG
b250RGVzY3JpcHRvclJlZjsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdHJ1Y3QgRm9udENy
ZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBjbGFzcyBGb250RGVz
Y3JpcHRpb247CiBzdHJ1Y3QgRm9udFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllczsKIGNs
YXNzIFNoYXJlZEJ1ZmZlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29y
a2VyRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRM
b2FkUmVxdWVzdC5oCmluZGV4IDZhNmMwNThlMjBlM2ZlOTVjZjMxMzYxNTdjNTA2MjE0NzhiN2Ji
MmMuLmI5ZmNmYjFkNmZlYThhZDVlNzgwYmRlZWJjNWM2ZTA0YTFlODYzYzcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaApAQCAtMzQsNyArMzQs
NyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLXN0cnVjdCBGb250Q3JlYXRpb25Db250ZXh0
OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIGNsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQ7CiBjbGFzcyBTaGFyZWRCdWZmZXI7CiBjbGFzcyBXb3JrZXJHbG9iYWxTY29wZTsK
</data>
<flag name="commit-queue"
          id="462900"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>439282</attachid>
            <date>2021-09-25 18:49:38 -0700</date>
            <delta_ts>2021-09-25 22:10:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230800-20210925184937.patch</filename>
            <type>text/plain</type>
            <size>19418</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzMDg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2JhN2M4OGVmODNkMGM5
N2M5NTQ2ZTJjYTZlZTc1YTMyNjAyM2JjNS4uOWU3ZWEwZWVhYWE4ODNjZTg0ZjNkMTJhNDQ3Mzcw
ZTgwYTJiMmRhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDIxLTA5LTI1ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgRmFjdG9yIG91
dCByYXJlIG1lbWJlcnMgb2YgRm9udENyZWF0aW9uQ29udGV4dCBpbnRvIEZvbnRDcmVhdGlvbkNv
bnRleHRSYXJlRGF0YQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjMwODAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRm9udENyZWF0aW9uQ29udGV4dCBpcyB1c2VkIGluc2lkZSBIYXNoTWFwIGtleXMgaW4g
Zm9udCBjYWNoZXMsIHNvIHdlIHdhbnQgdGhlIHR5cGUgdG8gYmUKKyAgICAgICAgc21hbGwuIFBh
bGV0dGVzIGFuZCBmb250IGZlYXR1cmVzIGFyZSByYXJlLCBzbyB3ZSBjYW4gbW92ZSB0aG9zZSBp
bnRvIGEgaGVhcC1hbGxvY2F0ZWQKKyAgICAgICAgcmFyZSBkYXRhIG9iamVjdCwgdGhlcmVieSBk
ZWNyZWFzaW5nIHRoZSBzaXplIG9mIEZvbnRDcmVhdGlvbkNvbnRleHQgZm9yIG1vc3QgZm9udHMu
CisgICAgICAgIEltcG9ydGFudGx5LCBpZiBwYWxldHRlcyBhbmQgZm9udCBmZWF0dXJlcyBhcmVu
J3QgdXNlZCwgdGhlIFJlZlB0ciB3aWxsIGp1c3QgYmUgbnVsbCwgYW5kCisgICAgICAgIG5vIGFs
bG9jYXRpb24gaXMgcGVyZm9ybWVkLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyBiZWNhdXNlIHRo
ZXJlIGlzIG5vIGJlaGF2aW9yIGNoYW5nZS4KKworICAgICAgICAqIGNzcy9DU1NGb250RmFjZS5o
OgorICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNvdXJjZS5oOgorICAgICAgICAqIGNzcy9DU1NT
ZWdtZW50ZWRGb250RmFjZS5oOgorICAgICAgICAqIGxvYWRlci9Gb250TG9hZFJlcXVlc3QuaDoK
KyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5oOgorICAgICAgICAqIGxvYWRlci9j
YWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaDoKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2Fj
aGVkU1ZHRm9udC5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDcmVhdGlvbkNv
bnRleHQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6
Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6
Zm9udEZhY2VGZWF0dXJlcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpGb250Q3JlYXRpb25D
b250ZXh0UmFyZURhdGE6OmZvbnRQYWxldHRlVmFsdWVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6b3BlcmF0b3I9PSBjb25zdCk6CisgICAg
ICAgIChXZWJDb3JlOjpGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGE6Om9wZXJhdG9yIT0gY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhOjpGb250
Q3JlYXRpb25Db250ZXh0UmFyZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9u
Q29udGV4dDo6Rm9udENyZWF0aW9uQ29udGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpGb250Q3Jl
YXRpb25Db250ZXh0Ojpmb250RmFjZUZlYXR1cmVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkZvbnRDcmVhdGlvbkNvbnRleHQ6OmZvbnRGYWNlQ2FwYWJpbGl0aWVzIGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHQ6OmZvbnRQYWxldHRlVmFsdWVzIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHQ6Om9wZXJhdG9yPT0gY29u
c3QpOgorICAgICAgICAoV2ViQ29yZTo6YWRkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9Gb250UGFsZXR0ZVZhbHVlcy5oOgorICAgICAgICAoV2ViQ29yZTo6Rm9udFBhbGV0dGVWYWx1
ZXM6Om9wZXJhdG9yIGJvb2wgY29uc3QpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nv
Y29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmFkZEF0dHJpYnV0
ZXNGb3JGb250UGFsZXR0ZXMpOgorICAgICAgICAoV2ViQ29yZTo6cHJlcGFyZVBsYXRmb3JtRm9u
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQu
aDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q2FjaGVGcmVlVHlw
ZS5jcHA6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9y
bURhdGEuaDoKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oOgorCiAy
MDIxLTA5LTI1ICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBGaXgg
d2luIGJ1aWxkLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaAppbmRleCBkNDVjMDYyMmU3NDcxOTdi
ZWZjYTRjMzY2MDNkNDBmYmY0MWE4ZjQ5Li43ODk5M2VmZWY1N2I1ZTY3OTk2YWQxYmRhZWY4Nzcx
N2ZhMTYwZGU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaApAQCAtNDcsNyArNDcsNyBAQCBj
bGFzcyBDU1NTZWdtZW50ZWRGb250RmFjZTsKIGNsYXNzIENTU1ZhbHVlOwogY2xhc3MgQ1NTVmFs
dWVMaXN0OwogY2xhc3MgRm9udENhY2hlOwotc3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7Citj
bGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3Mg
Rm9udDsKIGNsYXNzIEZvbnRGYWNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0ZvbnRGYWNlU291cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2Uu
aAppbmRleCAxZjY1N2E2NjQ1MWEwYzRjZjcxN2Y1ZTgwY2QxMGVhMmJmOTdmOTAxLi44MjYxMzMz
MjJhOGVlNWYzNzgyZmJiMjMxMjNiMmRkM2E1N2ExNzI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
Rm9udEZhY2VTb3VyY2UuaApAQCAtMzYsNyArMzYsNyBAQCBjbGFzcyBDU1NGb250RmFjZTsKIGNs
YXNzIENTU0ZvbnRTZWxlY3RvcjsKIGNsYXNzIERvY3VtZW50OwogY2xhc3MgRm9udDsKLXN0cnVj
dCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIHN0cnVj
dCBGb250Q3VzdG9tUGxhdGZvcm1EYXRhOwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogc3RydWN0
IEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTU2VnbWVudGVkRm9udEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NTZWdtZW50ZWRGb250RmFjZS5oCmluZGV4IDkwZjNhZWFlNWI5NGJmYjI1YWI2NjU5NWU5MGNl
OGU5ZGNkYTVmZWUuLjViN2RiZTFjOTc0ZDU0ZDQ2ZTI0MDEyODFkMjAyMjY2MmE1ZmFhNTQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWdtZW50ZWRGb250RmFjZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWdtZW50ZWRGb250RmFjZS5oCkBAIC0zNCw3ICszNCw3
IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIENTU0ZvbnRTZWxlY3RvcjsKLXN0cnVj
dCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIGNsYXNz
IEZvbnREZXNjcmlwdGlvbjsKIGNsYXNzIEZvbnRQYWxldHRlVmFsdWVzOwogY2xhc3MgRm9udFJh
bmdlczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3Qu
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaAppbmRleCA5NWMzZTc2
MDkwODBhMGYyOGYyNGRjZjg3ZWYzNjUyNjVjNmY4YTg2Li5kODkwNWNlMjEzNzRmMmNlYzFlMjE0
MzM5N2JmYmRlMzg2ZWRiMWYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9u
dExvYWRSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVz
dC5oCkBAIC0zMiw3ICszMiw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEZvbnQ7
Ci1zdHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7
CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBGb250TG9hZFJlcXVlc3Q7CiBzdHJ1Y3Qg
Rm9udFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkRm9udC5oCmluZGV4IGVhOTE3ZGExMWM3MjYxNWJhZWQ3NzZkMWRmYzg3NTMx
ZTUxNjQzOTQuLmNlYmRjNTU3ZjEzZmM0YWZkODI3NTI5Nzc0YWZkOGVjNGJlZjQyMTAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuaApAQCAtMzQsNyArMzQsNyBAQAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBDYWNoZWRSZXNvdXJjZUxvYWRlcjsKLXN0cnVj
dCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIGNsYXNz
IEZvbnREZXNjcmlwdGlvbjsKIGNsYXNzIEZvbnRQbGF0Zm9ybURhdGE7CiBzdHJ1Y3QgRm9udFNl
bGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaAppbmRleCAxMGNmYmE1MGI0NmFhNDU5
ZDdmYjY3MDljZTI5ZjRmNWJhNGI0ZDhkLi5iNTc3N2MxMmNjZTM3OGFiOWI0ZTFjYzkwNGI0Y2Iw
N2VmMzQxMjdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
Rm9udExvYWRSZXF1ZXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZEZvbnRMb2FkUmVxdWVzdC5oCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotc3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250
ZXh0OwogCiBjbGFzcyBDYWNoZWRGb250TG9hZFJlcXVlc3QgZmluYWwgOiBwdWJsaWMgRm9udExv
YWRSZXF1ZXN0LCBwdWJsaWMgQ2FjaGVkRm9udENsaWVudCB7CiAgICAgV1RGX01BS0VfRkFTVF9B
TExPQ0FURUQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
U1ZHRm9udC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNWR0ZvbnQuaApp
bmRleCAzZjBjMDE0M2MwZjhkOWViMTc4M2IwZmI2M2UyMjA3NWY3ODI4ZDlhLi4zNTNkM2RlNjNi
MDYyODYxM2FiYWY3NzdmZWIyNTNjNWI2MjQ5MGM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU1ZHRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRTVkdGb250LmgKQEAgLTI5LDcgKzI5LDcgQEAKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCi1zdHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlv
bkNvbnRleHQ7CiBjbGFzcyBTVkdGb250RmFjZUVsZW1lbnQ7CiBjbGFzcyBTZXR0aW5nczsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9u
Q29udGV4dC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9u
Q29udGV4dC5oCmluZGV4IGU5MTBiNGQzMGE2ZjIxMzBmYzg1OWJjOTVmNTUyODkwMThhNmMwMGYu
Ljg0Yjk4YjBiM2U1ZjY1ZTVhMWZmZTA2ZWU0NzZkZTMxZGQ5NWMzYjcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDcmVhdGlvbkNvbnRleHQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q3JlYXRpb25Db250ZXh0LmgK
QEAgLTI4LDE1ICsyOCw3OSBAQAogI2luY2x1ZGUgIkZvbnRQYWxldHRlVmFsdWVzLmgiCiAjaW5j
bHVkZSAiRm9udFNlbGVjdGlvbkFsZ29yaXRobS5oIgogI2luY2x1ZGUgIkZvbnRUYWdnZWRTZXR0
aW5ncy5oIgorI2luY2x1ZGUgPHd0Zi9Qb2ludGVyQ29tcGFyaXNvbi5oPgogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKLXN0cnVjdCBGb250Q3JlYXRpb25Db250ZXh0IHsKK2NsYXNzIEZvbnRDcmVh
dGlvbkNvbnRleHRSYXJlRGF0YSA6IHB1YmxpYyBSZWZDb3VudGVkPEZvbnRDcmVhdGlvbkNvbnRl
eHRSYXJlRGF0YT4geworcHVibGljOgorICAgIHN0YXRpYyBSZWY8Rm9udENyZWF0aW9uQ29udGV4
dFJhcmVEYXRhPiBjcmVhdGUoY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0
dXJlcywgY29uc3QgRm9udFBhbGV0dGVWYWx1ZXMmIGZvbnRQYWxldHRlVmFsdWVzKQorICAgIHsK
KyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgRm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRh
KGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRQYWxldHRlVmFsdWVzKSk7CisgICAgfQorCisgICAgY29u
c3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0dXJlcygpIGNvbnN0CisgICAgewor
ICAgICAgICByZXR1cm4gbV9mb250RmFjZUZlYXR1cmVzOworICAgIH0KKworICAgIGNvbnN0IEZv
bnRQYWxldHRlVmFsdWVzJiBmb250UGFsZXR0ZVZhbHVlcygpIGNvbnN0CisgICAgeworICAgICAg
ICByZXR1cm4gbV9mb250UGFsZXR0ZVZhbHVlczsKKyAgICB9CisKKyAgICBib29sIG9wZXJhdG9y
PT0oY29uc3QgRm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhJiBvdGhlcikgY29uc3QKKyAgICB7
CisgICAgICAgIHJldHVybiBtX2ZvbnRGYWNlRmVhdHVyZXMgPT0gb3RoZXIubV9mb250RmFjZUZl
YXR1cmVzCisgICAgICAgICAgICAmJiBtX2ZvbnRQYWxldHRlVmFsdWVzID09IG90aGVyLm1fZm9u
dFBhbGV0dGVWYWx1ZXM7CisgICAgfQorCisgICAgYm9vbCBvcGVyYXRvciE9KGNvbnN0IEZvbnRD
cmVhdGlvbkNvbnRleHRSYXJlRGF0YSYgb3RoZXIpIGNvbnN0CisgICAgeworICAgICAgICByZXR1
cm4gISgqdGhpcyA9PSBvdGhlcik7CisgICAgfQorCitwcml2YXRlOgorICAgIEZvbnRDcmVhdGlv
bkNvbnRleHRSYXJlRGF0YShjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1
cmVzLCBjb25zdCBGb250UGFsZXR0ZVZhbHVlcyYgZm9udFBhbGV0dGVWYWx1ZXMpCisgICAgICAg
IDogbV9mb250RmFjZUZlYXR1cmVzKGZvbnRGYWNlRmVhdHVyZXMpCisgICAgICAgICwgbV9mb250
UGFsZXR0ZVZhbHVlcyhmb250UGFsZXR0ZVZhbHVlcykKKyAgICB7CisgICAgfQorCisgICAgRm9u
dEZlYXR1cmVTZXR0aW5ncyBtX2ZvbnRGYWNlRmVhdHVyZXM7CisgICAgRm9udFBhbGV0dGVWYWx1
ZXMgbV9mb250UGFsZXR0ZVZhbHVlczsKKyAgICAvLyBGSVhNRTogQWRkIHN1cHBvcnQgZm9yIGZv
bnQtZmVhdHVyZS12YWx1ZXMuCit9OworCitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0IHsKK3B1
YmxpYzoKKyAgICBGb250Q3JlYXRpb25Db250ZXh0KCkgPSBkZWZhdWx0OworCisgICAgRm9udENy
ZWF0aW9uQ29udGV4dChjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVz
LCBjb25zdCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzJiBmb250RmFjZUNhcGFi
aWxpdGllcywgY29uc3QgRm9udFBhbGV0dGVWYWx1ZXMmIGZvbnRQYWxldHRlVmFsdWVzKQorICAg
ICAgICA6IG1fZm9udEZhY2VDYXBhYmlsaXRpZXMoZm9udEZhY2VDYXBhYmlsaXRpZXMpCisgICAg
eworICAgICAgICBpZiAoIWZvbnRGYWNlRmVhdHVyZXMuaXNFbXB0eSgpIHx8IGZvbnRQYWxldHRl
VmFsdWVzKQorICAgICAgICAgICAgbV9yYXJlRGF0YSA9IEZvbnRDcmVhdGlvbkNvbnRleHRSYXJl
RGF0YTo6Y3JlYXRlKGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRQYWxldHRlVmFsdWVzKTsKKyAgICB9
CisKKyAgICBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzKiBmb250RmFjZUZlYXR1cmVzKCkgY29u
c3QKKyAgICB7CisgICAgICAgIHJldHVybiBtX3JhcmVEYXRhID8gJm1fcmFyZURhdGEtPmZvbnRG
YWNlRmVhdHVyZXMoKSA6IG51bGxwdHI7CisgICAgfQorCisgICAgY29uc3QgRm9udFNlbGVjdGlv
blNwZWNpZmllZENhcGFiaWxpdGllcyYgZm9udEZhY2VDYXBhYmlsaXRpZXMoKSBjb25zdAorICAg
IHsKKyAgICAgICAgcmV0dXJuIG1fZm9udEZhY2VDYXBhYmlsaXRpZXM7CisgICAgfQorICAgIGNv
bnN0IEZvbnRQYWxldHRlVmFsdWVzKiBmb250UGFsZXR0ZVZhbHVlcygpIGNvbnN0CisgICAgewor
ICAgICAgICByZXR1cm4gbV9yYXJlRGF0YSA/ICZtX3JhcmVEYXRhLT5mb250UGFsZXR0ZVZhbHVl
cygpIDogbnVsbHB0cjsKKyAgICB9CisKICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgRm9udENy
ZWF0aW9uQ29udGV4dCYgb3RoZXIpIGNvbnN0CiAgICAgewotICAgICAgICByZXR1cm4gZm9udEZh
Y2VGZWF0dXJlcyA9PSBvdGhlci5mb250RmFjZUZlYXR1cmVzCi0gICAgICAgICAgICAmJiBmb250
RmFjZUNhcGFiaWxpdGllcyA9PSBvdGhlci5mb250RmFjZUNhcGFiaWxpdGllcwotICAgICAgICAg
ICAgJiYgZm9udFBhbGV0dGVWYWx1ZXMgPT0gb3RoZXIuZm9udFBhbGV0dGVWYWx1ZXM7CisgICAg
ICAgIHJldHVybiBtX2ZvbnRGYWNlQ2FwYWJpbGl0aWVzID09IG90aGVyLm1fZm9udEZhY2VDYXBh
YmlsaXRpZXMKKyAgICAgICAgICAgICYmIGFyZVBvaW50aW5nVG9FcXVhbERhdGEobV9yYXJlRGF0
YSwgb3RoZXIubV9yYXJlRGF0YSk7CiAgICAgfQogCiAgICAgYm9vbCBvcGVyYXRvciE9KGNvbnN0
IEZvbnRDcmVhdGlvbkNvbnRleHQmIG90aGVyKSBjb25zdApAQCAtNDQsMTcgKzEwOCwxOCBAQCBz
dHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dCB7CiAgICAgICAgIHJldHVybiAhKCp0aGlzID09IG90
aGVyKTsKICAgICB9CiAKLSAgICBGb250RmVhdHVyZVNldHRpbmdzIGZvbnRGYWNlRmVhdHVyZXM7
Ci0gICAgRm9udFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllcyBmb250RmFjZUNhcGFiaWxp
dGllczsKLSAgICBGb250UGFsZXR0ZVZhbHVlcyBmb250UGFsZXR0ZVZhbHVlczsKLSAgICAvLyBG
SVhNRTogQWRkIHN1cHBvcnQgZm9yIGZvbnQtZmVhdHVyZS12YWx1ZXMuCitwcml2YXRlOgorICAg
IEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXMgbV9mb250RmFjZUNhcGFiaWxpdGll
czsKKyAgICBSZWZQdHI8Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhPiBtX3JhcmVEYXRhOwog
fTsKIAogaW5saW5lIHZvaWQgYWRkKEhhc2hlciYgaGFzaGVyLCBjb25zdCBGb250Q3JlYXRpb25D
b250ZXh0JiBmb250Q3JlYXRpb25Db250ZXh0KQogewotICAgIGFkZChoYXNoZXIsIGZvbnRDcmVh
dGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcyk7Ci0gICAgYWRkKGhhc2hlciwgZm9udENyZWF0
aW9uQ29udGV4dC5mb250RmFjZUNhcGFiaWxpdGllcy50aWVkKCkpOwotICAgIGFkZChoYXNoZXIs
IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udFBhbGV0dGVWYWx1ZXMpOworICAgIGlmIChmb250Q3Jl
YXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSkKKyAgICAgICAgYWRkKGhhc2hlciwgKmZv
bnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcygpKTsKKyAgICBhZGQoaGFzaGVyLCBm
b250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlQ2FwYWJpbGl0aWVzKCkudGllZCgpKTsKKyAgICBp
ZiAoZm9udENyZWF0aW9uQ29udGV4dC5mb250UGFsZXR0ZVZhbHVlcygpKQorICAgICAgICBhZGQo
aGFzaGVyLCAqZm9udENyZWF0aW9uQ29udGV4dC5mb250UGFsZXR0ZVZhbHVlcygpKTsKIH0KIAog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFBhbGV0
dGVWYWx1ZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQYWxldHRl
VmFsdWVzLmgKaW5kZXggMTcxMmI2MjhjMDMyMzliNTdjYzdkNTJlYTNmMDE4NTQ2ZjkwMTUyZS4u
ZjI4Zjc2NGY5ODE4YWQwMmVkMDM0NzgyMjJmZTZjNGVjZmRiMzRmMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFBhbGV0dGVWYWx1ZXMuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250UGFsZXR0ZVZhbHVlcy5oCkBAIC01
OCw2ICs1OCwxNSBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBtX292ZXJyaWRlQ29sb3I7CiAg
ICAgfQogCisgICAgb3BlcmF0b3IgYm9vbCgpIGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4g
V1RGOjpzd2l0Y2hPbihtX2Jhc2VQYWxldHRlLCBbXSAoaW50NjRfdCkgeworICAgICAgICAgICAg
cmV0dXJuIHRydWU7CisgICAgICAgIH0sIFtdIChjb25zdCBBdG9tU3RyaW5nJiBzdHJpbmcpIHsK
KyAgICAgICAgICAgIHJldHVybiAhc3RyaW5nLmlzTnVsbCgpOworICAgICAgICB9KSB8fCAhbV9v
dmVycmlkZUNvbG9yLmlzRW1wdHkoKTsKKyAgICB9CisKICAgICBib29sIG9wZXJhdG9yPT0oY29u
c3QgRm9udFBhbGV0dGVWYWx1ZXMmIG90aGVyKSBjb25zdAogICAgIHsKICAgICAgICAgcmV0dXJu
IG1fYmFzZVBhbGV0dGUgPT0gb3RoZXIubV9iYXNlUGFsZXR0ZSAmJiBtX292ZXJyaWRlQ29sb3Ig
PT0gb3RoZXIubV9vdmVycmlkZUNvbG9yOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwCmluZGV4IDFh
NmY3MzI5MDY3NTljOTI5ODQzZTU3ZTU4OTVlMWJjYjUxYWI0MzMuLjg4ZTJmM2ZmMTI5MTRhNzky
MDk5M2JiMzRlZjE4NzJlMGJiOTllZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAKQEAgLTQ0
Myw3ICs0NDMsNyBAQCBzdHJ1Y3QgRm9udFR5cGUgewogICAgIGJvb2wgYWF0U2hhcGluZyB7IGZh
bHNlIH07CiB9OwogCi1zdGF0aWMgdm9pZCBhZGRBdHRyaWJ1dGVzRm9yRm9udFBhbGV0dGVzKENG
TXV0YWJsZURpY3Rpb25hcnlSZWYgYXR0cmlidXRlcywgY29uc3QgRm9udFBhbGV0dGUmIGZvbnRQ
YWxldHRlLCBjb25zdCBGb250UGFsZXR0ZVZhbHVlcyYgZm9udFBhbGV0dGVWYWx1ZXMpCitzdGF0
aWMgdm9pZCBhZGRBdHRyaWJ1dGVzRm9yRm9udFBhbGV0dGVzKENGTXV0YWJsZURpY3Rpb25hcnlS
ZWYgYXR0cmlidXRlcywgY29uc3QgRm9udFBhbGV0dGUmIGZvbnRQYWxldHRlLCBjb25zdCBGb250
UGFsZXR0ZVZhbHVlcyogZm9udFBhbGV0dGVWYWx1ZXMpCiB7CiAgICAgc3dpdGNoIChmb250UGFs
ZXR0ZS50eXBlKSB7CiAgICAgY2FzZSBGb250UGFsZXR0ZTo6VHlwZTo6Tm9uZToKQEAgLTQ2NCwx
NSArNDY0LDE3IEBAIHN0YXRpYyB2b2lkIGFkZEF0dHJpYnV0ZXNGb3JGb250UGFsZXR0ZXMoQ0ZN
dXRhYmxlRGljdGlvbmFyeVJlZiBhdHRyaWJ1dGVzLCBjb25zCiAgICAgICAgIGJyZWFrOwogICAg
IH0KICAgICBjYXNlIEZvbnRQYWxldHRlOjpUeXBlOjpDdXN0b206IHsKLSAgICAgICAgV1RGOjpz
d2l0Y2hPbihmb250UGFsZXR0ZVZhbHVlcy5iYXNlUGFsZXR0ZSgpLCBbJl0oaW50NjRfdCBpbmRl
eCkgeworICAgICAgICBpZiAoIWZvbnRQYWxldHRlVmFsdWVzKQorICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIFdURjo6c3dpdGNoT24oZm9udFBhbGV0dGVWYWx1ZXMtPmJhc2VQYWxldHRlKCks
IFsmXShpbnQ2NF90IGluZGV4KSB7CiAgICAgICAgICAgICBhdXRvIG51bWJlciA9IGFkb3B0Q0Yo
Q0ZOdW1iZXJDcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwga0NGTnVtYmVyQ0ZJbmRleFR5cGUs
ICZpbmRleCkpOwogICAgICAgICAgICAgQ0ZEaWN0aW9uYXJ5QWRkVmFsdWUoYXR0cmlidXRlcywg
a0NURm9udFBhbGV0dGVBdHRyaWJ1dGUsIG51bWJlci5nZXQoKSk7CiAgICAgICAgIH0sIFtdKGNv
bnN0IEF0b21TdHJpbmcmKSB7CiAgICAgICAgICAgICAvLyBUaGlzIGlzIHVuaW1wbGVtZW50YWJs
ZSBpbiBDb3JlIFRleHQuCiAgICAgICAgIH0pOwotICAgICAgICBpZiAoIWZvbnRQYWxldHRlVmFs
dWVzLm92ZXJyaWRlQ29sb3IoKS5pc0VtcHR5KCkpIHsKKyAgICAgICAgaWYgKCFmb250UGFsZXR0
ZVZhbHVlcy0+b3ZlcnJpZGVDb2xvcigpLmlzRW1wdHkoKSkgewogICAgICAgICAgICAgYXV0byBv
dmVycmlkZURpY3Rpb25hcnkgPSBhZG9wdENGKENGRGljdGlvbmFyeUNyZWF0ZU11dGFibGUoa0NG
QWxsb2NhdG9yRGVmYXVsdCwgMCwgJmtDRlR5cGVEaWN0aW9uYXJ5S2V5Q2FsbEJhY2tzLCAma0NG
VHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOwotICAgICAgICAgICAgZm9yIChjb25zdCBh
dXRvJiBwYWlyIDogZm9udFBhbGV0dGVWYWx1ZXMub3ZlcnJpZGVDb2xvcigpKSB7CisgICAgICAg
ICAgICBmb3IgKGNvbnN0IGF1dG8mIHBhaXIgOiBmb250UGFsZXR0ZVZhbHVlcy0+b3ZlcnJpZGVD
b2xvcigpKSB7CiAgICAgICAgICAgICAgICAgY29uc3QgYXV0byYgcGFsZXR0ZUNvbG9ySW5kZXgg
PSBwYWlyLmZpcnN0OwogICAgICAgICAgICAgICAgIGNvbnN0IGF1dG8mIGNvbG9yID0gcGFpci5z
ZWNvbmQ7CiAgICAgICAgICAgICAgICAgV1RGOjpzd2l0Y2hPbihwYWxldHRlQ29sb3JJbmRleCwg
W10oY29uc3QgQXRvbVN0cmluZyYpIHsKQEAgLTUyMCw3ICs1MjIsNyBAQCBSZXRhaW5QdHI8Q1RG
b250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250KENURm9udFJlZiBvcmlnaW5hbEZvbnQsIGNvbnN0
IEZvbnREZXNjcgogICAgIGJvb2wgdGV4dFJlbmRlcmluZ01vZGVJc0F1dG8gPSB0ZXh0UmVuZGVy
aW5nTW9kZSA9PSBUZXh0UmVuZGVyaW5nTW9kZTo6QXV0b1RleHRSZW5kZXJpbmc7CiAgICAgYm9v
bCB2YXJpYW50U2V0dGluZ3NJc05vcm1hbCA9IHZhcmlhbnRTZXR0aW5ncy5pc0FsbE5vcm1hbCgp
OwogICAgIGJvb2wgZG9udE5lZWRUb0FwcGx5T3B0aWNhbFNpemluZyA9IGZvbnRPcHRpY2FsU2l6
aW5nID09IEZvbnRPcHRpY2FsU2l6aW5nOjpFbmFibGVkICYmICFmb3JjZU9wdGljYWxTaXppbmdP
bjsKLSAgICBib29sIGZvbnRGYWNlRG9lc250U3BlY2lmeUZlYXR1cmVzID0gZm9udENyZWF0aW9u
Q29udGV4dC5mb250RmFjZUZlYXR1cmVzLmlzRW1wdHkoKTsKKyAgICBib29sIGZvbnRGYWNlRG9l
c250U3BlY2lmeUZlYXR1cmVzID0gIWZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJl
cygpIHx8IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcygpLT5pc0VtcHR5KCk7
CiAgICAgaWYgKG5vRm9udEZlYXR1cmVTZXR0aW5ncyAmJiBub0ZvbnRWYXJpYXRpb25TZXR0aW5n
cyAmJiB0ZXh0UmVuZGVyaW5nTW9kZUlzQXV0byAmJiB2YXJpYW50U2V0dGluZ3NJc05vcm1hbCAm
JiBkb250TmVlZFRvQXBwbHlPcHRpY2FsU2l6aW5nICYmIGZvbnRGYWNlRG9lc250U3BlY2lmeUZl
YXR1cmVzICYmICFzaG91bGREaXNhYmxlTGlnYXR1cmVzRm9yU3BhY2luZyAmJiBkb250TmVlZFRv
QXBwbHlGb250UGFsZXR0ZXMpIHsKICNpZiBIQVZFKENURk9OVENSRUFURUZPUkNIQVJBQ1RFUlNX
SVRITEFOR1VBR0VBTkRPUFRJT04pCiAgICAgICAgIHJldHVybiBvcmlnaW5hbEZvbnQ7CkBAIC01
NjYsMTEgKzU2OCwxMSBAQCBSZXRhaW5QdHI8Q1RGb250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250
KENURm9udFJlZiBvcmlnaW5hbEZvbnQsIGNvbnN0IEZvbnREZXNjcgogICAgICAgICBmbG9hdCB3
ZWlnaHQgPSBmb250U2VsZWN0aW9uUmVxdWVzdC53ZWlnaHQ7CiAgICAgICAgIGZsb2F0IHdpZHRo
ID0gZm9udFNlbGVjdGlvblJlcXVlc3Qud2lkdGg7CiAgICAgICAgIGZsb2F0IHNsb3BlID0gZm9u
dFNlbGVjdGlvblJlcXVlc3Quc2xvcGUudmFsdWVfb3Iobm9ybWFsSXRhbGljVmFsdWUoKSk7Ci0g
ICAgICAgIGlmIChhdXRvIHdlaWdodFZhbHVlID0gZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFj
ZUNhcGFiaWxpdGllcy53ZWlnaHQpCisgICAgICAgIGlmIChhdXRvIHdlaWdodFZhbHVlID0gZm9u
dENyZWF0aW9uQ29udGV4dC5mb250RmFjZUNhcGFiaWxpdGllcygpLndlaWdodCkKICAgICAgICAg
ICAgIHdlaWdodCA9IHN0ZDo6bWF4KHN0ZDo6bWluKHdlaWdodCwgc3RhdGljX2Nhc3Q8ZmxvYXQ+
KHdlaWdodFZhbHVlLT5tYXhpbXVtKSksIHN0YXRpY19jYXN0PGZsb2F0Pih3ZWlnaHRWYWx1ZS0+
bWluaW11bSkpOwotICAgICAgICBpZiAoYXV0byB3aWR0aFZhbHVlID0gZm9udENyZWF0aW9uQ29u
dGV4dC5mb250RmFjZUNhcGFiaWxpdGllcy53aWR0aCkKKyAgICAgICAgaWYgKGF1dG8gd2lkdGhW
YWx1ZSA9IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VDYXBhYmlsaXRpZXMoKS53aWR0aCkK
ICAgICAgICAgICAgIHdpZHRoID0gc3RkOjptYXgoc3RkOjptaW4od2lkdGgsIHN0YXRpY19jYXN0
PGZsb2F0Pih3aWR0aFZhbHVlLT5tYXhpbXVtKSksIHN0YXRpY19jYXN0PGZsb2F0Pih3aWR0aFZh
bHVlLT5taW5pbXVtKSk7Ci0gICAgICAgIGlmIChhdXRvIHNsb3BlVmFsdWUgPSBmb250Q3JlYXRp
b25Db250ZXh0LmZvbnRGYWNlQ2FwYWJpbGl0aWVzLndlaWdodCkKKyAgICAgICAgaWYgKGF1dG8g
c2xvcGVWYWx1ZSA9IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VDYXBhYmlsaXRpZXMoKS53
ZWlnaHQpCiAgICAgICAgICAgICBzbG9wZSA9IHN0ZDo6bWF4KHN0ZDo6bWluKHNsb3BlLCBzdGF0
aWNfY2FzdDxmbG9hdD4oc2xvcGVWYWx1ZS0+bWF4aW11bSkpLCBzdGF0aWNfY2FzdDxmbG9hdD4o
c2xvcGVWYWx1ZS0+bWluaW11bSkpOwogICAgICAgICBpZiAobmVlZHNDb252ZXJzaW9uKSB7CiAg
ICAgICAgICAgICB3ZWlnaHQgPSBkZW5vcm1hbGl6ZVdlaWdodCh3ZWlnaHQpOwpAQCAtNTkwLDgg
KzU5Miw4IEBAIFJldGFpblB0cjxDVEZvbnRSZWY+IHByZXBhcmVQbGF0Zm9ybUZvbnQoQ1RGb250
UmVmIG9yaWdpbmFsRm9udCwgY29uc3QgRm9udERlc2NyCiAgICAgLy8gRklYTUU6IEltcGxlbWVu
dCBTdGVwIDY6IHRoZSBmb250LXZhcmlhdGlvbi1zZXR0aW5ncyBkZXNjcmlwdG9yIGluc2lkZSBA
Zm9udC1mYWNlCiAKICAgICAvLyBTdGVwIDc6IENvbnN1bHQgd2l0aCBmb250LWZlYXR1cmUtc2V0
dGluZ3MgaW5zaWRlIEBmb250LWZhY2UKLSAgICBpZiAoIWZvbnRDcmVhdGlvbkNvbnRleHQuZm9u
dEZhY2VGZWF0dXJlcy5pc0VtcHR5KCkpIHsKLSAgICAgICAgZm9yIChhdXRvJiBmb250RmFjZUZl
YXR1cmUgOiBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMpCisgICAgaWYgKGZv
bnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcygpICYmICFmb250Q3JlYXRpb25Db250
ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKS0+aXNFbXB0eSgpKSB7CisgICAgICAgIGZvciAoYXV0byYg
Zm9udEZhY2VGZWF0dXJlIDogKmZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcygp
KQogICAgICAgICAgICAgYXBwbHlGZWF0dXJlKGZvbnRGYWNlRmVhdHVyZS50YWcoKSwgZm9udEZh
Y2VGZWF0dXJlLnZhbHVlKCkpOwogICAgIH0KIApAQCAtNjcxLDcgKzY3Myw3IEBAIFJldGFpblB0
cjxDVEZvbnRSZWY+IHByZXBhcmVQbGF0Zm9ybUZvbnQoQ1RGb250UmVmIG9yaWdpbmFsRm9udCwg
Y29uc3QgRm9udERlc2NyCiAjZW5kaWYKICAgICB9CiAKLSAgICBhZGRBdHRyaWJ1dGVzRm9yRm9u
dFBhbGV0dGVzKGF0dHJpYnV0ZXMuZ2V0KCksIGZvbnREZXNjcmlwdGlvbi5mb250UGFsZXR0ZSgp
LCBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRQYWxldHRlVmFsdWVzKTsKKyAgICBhZGRBdHRyaWJ1
dGVzRm9yRm9udFBhbGV0dGVzKGF0dHJpYnV0ZXMuZ2V0KCksIGZvbnREZXNjcmlwdGlvbi5mb250
UGFsZXR0ZSgpLCBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRQYWxldHRlVmFsdWVzKCkpOwogCiAg
ICAgYWRkQXR0cmlidXRlc0Zvckluc3RhbGxlZEZvbnRzKGF0dHJpYnV0ZXMuZ2V0KCksIGZvbnRE
ZXNjcmlwdGlvbi5zaG91bGRBbGxvd1VzZXJJbnN0YWxsZWRGb250cygpKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRl
eHQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNv
cmVUZXh0LmgKaW5kZXggODljNmNiZjMzODVlZGU4MTM5YTQ4MzQzZjM3ZGU2Nzk2M2NkM2Q5Mi4u
N2RmMDJlYjE4YmY0Yjg5NWJjNDk0MGJiMzY4MzBiZjM4Yjc3Mzc4ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3Jl
VGV4dC5oCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotc3RydWN0
IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogCiBzdHJ1
Y3QgU3ludGhlc2lzUGFpciB7CiAgICAgZXhwbGljaXQgU3ludGhlc2lzUGFpcihib29sIG5lZWRz
U3ludGhldGljQm9sZCwgYm9vbCBuZWVkc1N5bnRoZXRpY09ibGlxdWUpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q2FjaGVGcmVlVHlw
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q2Fj
aGVGcmVlVHlwZS5jcHAKaW5kZXggN2MwOWQ5YjIwNTc4YmQ5ZWRlZDZkMjkwNzNlMWJjNzZiMTdk
OTZiZS4uNjYxZGVkNzRmOWI5ODc3NmZiMmY4Y2UyOGY3NmVkMzFkMGMzYWQ4NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJl
ZVR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBl
L0ZvbnRDYWNoZUZyZWVUeXBlLmNwcApAQCAtNTczLDggKzU3Myw4IEBAIHN0ZDo6dW5pcXVlX3B0
cjxGb250UGxhdGZvcm1EYXRhPiBGb250Q2FjaGU6OmNyZWF0ZUZvbnRQbGF0Zm9ybURhdGEoY29u
c3QgRm9udERlCiAgICAgYm9vbCBmaXhlZFdpZHRoLCBzeW50aGV0aWNCb2xkLCBzeW50aGV0aWNP
YmxpcXVlOwogICAgIGdldEZvbnRQcm9wZXJ0aWVzRnJvbVBhdHRlcm4ocmVzdWx0UGF0dGVybi5n
ZXQoKSwgZm9udERlc2NyaXB0aW9uLCBmaXhlZFdpZHRoLCBzeW50aGV0aWNCb2xkLCBzeW50aGV0
aWNPYmxpcXVlKTsKIAotICAgIGlmICghZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1
cmVzLmlzRW1wdHkoKSkgewotICAgICAgICBmb3IgKGF1dG8mIGZvbnRGYWNlRmVhdHVyZSA6IGZv
bnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcykgeworICAgIGlmIChmb250Q3JlYXRp
b25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSAmJiAhZm9udENyZWF0aW9uQ29udGV4dC5mb250
RmFjZUZlYXR1cmVzKCktPmlzRW1wdHkoKSkgeworICAgICAgICBmb3IgKGF1dG8mIGZvbnRGYWNl
RmVhdHVyZSA6ICpmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSkgewogICAg
ICAgICAgICAgaWYgKGZvbnRGYWNlRmVhdHVyZS5lbmFibGVkKCkpIHsKICAgICAgICAgICAgICAg
ICBjb25zdCBhdXRvJiB0YWcgPSBmb250RmFjZUZlYXR1cmUudGFnKCk7CiAgICAgICAgICAgICAg
ICAgY29uc3QgY2hhciBidWZmZXJbXSA9IHsgdGFnWzBdLCB0YWdbMV0sIHRhZ1syXSwgdGFnWzNd
LCAnXDAnIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9t
YWMvRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaAppbmRleCA3YTZkMGExZTRiNzhiOWE3
MGI4MjVjODMzOWM5ZjQ4ZTA5MDQzY2JhLi43MThiOWJkMzE1ZWNjNjcwNzg5YzY1Y2JhYWEwMzQ5
Mjk3NWU3MmQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9t
YWMvRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmgKQEAgLTMzLDcgKzMzLDcgQEAg
dHlwZWRlZiBjb25zdCBzdHJ1Y3QgX19DVEZvbnREZXNjcmlwdG9yKiBDVEZvbnREZXNjcmlwdG9y
UmVmOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLXN0cnVjdCBGb250Q3JlYXRpb25Db250ZXh0
OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIGNsYXNzIEZvbnREZXNjcmlwdGlvbjsKIHN0
cnVjdCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzOwogY2xhc3MgU2hhcmVkQnVm
ZmVyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJl
cXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgK
aW5kZXggNmE2YzA1OGUyMGUzZmU5NWNmMzEzNjE1N2M1MDYyMTQ3OGI3YmIyYy4uYjlmY2ZiMWQ2
ZmVhOGFkNWU3ODBiZGVlYmM1YzZlMDRhMWU4NjNjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAotc3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250
Q3JlYXRpb25Db250ZXh0OwogY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKIGNsYXNzIFNo
YXJlZEJ1ZmZlcjsKIGNsYXNzIFdvcmtlckdsb2JhbFNjb3BlOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>439287</attachid>
            <date>2021-09-25 22:10:22 -0700</date>
            <delta_ts>2021-09-25 23:50:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230800-20210925221021.patch</filename>
            <type>text/plain</type>
            <size>21161</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzMDg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2JhN2M4OGVmODNkMGM5
N2M5NTQ2ZTJjYTZlZTc1YTMyNjAyM2JjNS4uY2ZiNzJmZjhjZjAyN2VkYTE1ZmRkN2YyMGQ0YmIw
YzFlNGUwOWFhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDIxLTA5LTI1ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgRmFjdG9yIG91
dCByYXJlIG1lbWJlcnMgb2YgRm9udENyZWF0aW9uQ29udGV4dCBpbnRvIEZvbnRDcmVhdGlvbkNv
bnRleHRSYXJlRGF0YQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjMwODAwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS84MzUzODIyNz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGb250Q3JlYXRpb25Db250
ZXh0IGlzIHVzZWQgaW5zaWRlIEhhc2hNYXAga2V5cyBpbiBmb250IGNhY2hlcywgc28gd2Ugd2Fu
dCB0aGUgdHlwZSB0byBiZQorICAgICAgICBzbWFsbC4gUGFsZXR0ZXMgYW5kIGZvbnQgZmVhdHVy
ZXMgYXJlIHJhcmUsIHNvIHdlIGNhbiBtb3ZlIHRob3NlIGludG8gYSBoZWFwLWFsbG9jYXRlZAor
ICAgICAgICByYXJlIGRhdGEgb2JqZWN0LCB0aGVyZWJ5IGRlY3JlYXNpbmcgdGhlIHNpemUgb2Yg
Rm9udENyZWF0aW9uQ29udGV4dCBmb3IgbW9zdCBmb250cy4KKyAgICAgICAgSW1wb3J0YW50bHks
IGlmIHBhbGV0dGVzIGFuZCBmb250IGZlYXR1cmVzIGFyZW4ndCB1c2VkLCB0aGUgUmVmUHRyIHdp
bGwganVzdCBiZSBudWxsLCBhbmQKKyAgICAgICAgbm8gYWxsb2NhdGlvbiBpcyBwZXJmb3JtZWQu
CisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2UgdGhlcmUgaXMgbm8gYmVoYXZpb3IgY2hh
bmdlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICogY3NzL0NTU0Zv
bnRGYWNlU291cmNlLmg6CisgICAgICAgICogY3NzL0NTU1NlZ21lbnRlZEZvbnRGYWNlLmg6Cisg
ICAgICAgICogbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oOgorICAgICAgICAqIGxvYWRlci9jYWNo
ZS9DYWNoZWRGb250Lmg6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVx
dWVzdC5oOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdGb250Lmg6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9uQ29udGV4dC5oOgorICAgICAgICAoV2Vi
Q29yZTo6Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhOjpjcmVhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhOjpmb250RmFjZUZlYXR1cmVzIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6Zm9udFBh
bGV0dGVWYWx1ZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9uQ29udGV4
dFJhcmVEYXRhOjpvcGVyYXRvcj09IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVh
dGlvbkNvbnRleHRSYXJlRGF0YTo6b3BlcmF0b3IhPSBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGE6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0
YSk6CisgICAgICAgIChXZWJDb3JlOjpGb250Q3JlYXRpb25Db250ZXh0OjpGb250Q3JlYXRpb25D
b250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHQ6OmZvbnRGYWNl
RmVhdHVyZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9uQ29udGV4dDo6
Zm9udEZhY2VDYXBhYmlsaXRpZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0
aW9uQ29udGV4dDo6Zm9udFBhbGV0dGVWYWx1ZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
Rm9udENyZWF0aW9uQ29udGV4dDo6b3BlcmF0b3I9PSBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjphZGQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQYWxldHRlVmFsdWVzLmg6
CisgICAgICAgIChXZWJDb3JlOjpGb250UGFsZXR0ZVZhbHVlczo6b3BlcmF0b3IgYm9vbCBjb25z
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6YWRkQXR0cmlidXRlc0ZvckZvbnRQYWxldHRlcyk6Cisg
ICAgICAgIChXZWJDb3JlOjpwcmVwYXJlUGxhdGZvcm1Gb250KToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5oOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDYWNoZUZyZWVUeXBlLmNwcDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhRnJlZVR5cGUuY3Bw
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRh
Lmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaDoKKwogMjAyMS0w
OS0yNSAgQWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgRml4IHdpbiBi
dWlsZC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmgKaW5kZXggZDQ1YzA2MjJlNzQ3MTk3YmVmY2E0
YzM2NjAzZDQwZmJmNDFhOGY0OS4uNzg5OTNlZmVmNTdiNWU2Nzk5NmFkMWJkYWVmODc3MTdmYTE2
MGRlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmgKQEAgLTQ3LDcgKzQ3LDcgQEAgY2xhc3Mg
Q1NTU2VnbWVudGVkRm9udEZhY2U7CiBjbGFzcyBDU1NWYWx1ZTsKIGNsYXNzIENTU1ZhbHVlTGlz
dDsKIGNsYXNzIEZvbnRDYWNoZTsKLXN0cnVjdCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3Mg
Rm9udENyZWF0aW9uQ29udGV4dDsKIGNsYXNzIEZvbnREZXNjcmlwdGlvbjsKIGNsYXNzIEZvbnQ7
CiBjbGFzcyBGb250RmFjZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250
RmFjZVNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU291cmNlLmgKaW5k
ZXggMWY2NTdhNjY0NTFhMGM0Y2Y3MTdmNWU4MGNkMTBlYTJiZjk3ZjkwMS4uODI2MTMzMzIyYThl
ZTVmMzc4MmZiYjIzMTIzYjJkZDNhNTdhMTcyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0ZvbnRGYWNlU291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRG
YWNlU291cmNlLmgKQEAgLTM2LDcgKzM2LDcgQEAgY2xhc3MgQ1NTRm9udEZhY2U7CiBjbGFzcyBD
U1NGb250U2VsZWN0b3I7CiBjbGFzcyBEb2N1bWVudDsKIGNsYXNzIEZvbnQ7Ci1zdHJ1Y3QgRm9u
dENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBzdHJ1Y3QgRm9u
dEN1c3RvbVBsYXRmb3JtRGF0YTsKIGNsYXNzIEZvbnREZXNjcmlwdGlvbjsKIHN0cnVjdCBGb250
U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1NlZ21lbnRlZEZvbnRGYWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2Vn
bWVudGVkRm9udEZhY2UuaAppbmRleCA5MGYzYWVhZTViOTRiZmIyNWFiNjY1OTVlOTBjZThlOWRj
ZGE1ZmVlLi41YjdkYmUxYzk3NGQ1NGQ0NmUyNDAxMjgxZDIwMjI2NjJhNWZhYTU0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VnbWVudGVkRm9udEZhY2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTU2VnbWVudGVkRm9udEZhY2UuaApAQCAtMzQsNyArMzQsNyBAQAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBDU1NGb250U2VsZWN0b3I7Ci1zdHJ1Y3QgRm9u
dENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBjbGFzcyBGb250
RGVzY3JpcHRpb247CiBjbGFzcyBGb250UGFsZXR0ZVZhbHVlczsKIGNsYXNzIEZvbnRSYW5nZXM7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0LmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0LmgKaW5kZXggOTVjM2U3NjA5MDgw
YTBmMjhmMjRkY2Y4N2VmMzY1MjY1YzZmOGE4Ni4uZDg5MDVjZTIxMzc0ZjJjZWMxZTIxNDMzOTdi
ZmJkZTM4NmVkYjFmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2Fk
UmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaApA
QCAtMzIsNyArMzIsNyBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBGb250Owotc3Ry
dWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogY2xh
c3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3MgRm9udExvYWRSZXF1ZXN0Owogc3RydWN0IEZvbnRT
ZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZEZvbnQuaAppbmRleCBlYTkxN2RhMTFjNzI2MTViYWVkNzc2ZDFkZmM4NzUzMWU1MTY0
Mzk0Li5jZWJkYzU1N2YxM2ZjNGFmZDgyNzUyOTc3NGFmZDhlYzRiZWY0MjEwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmgKQEAgLTM0LDcgKzM0LDcgQEAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ2FjaGVkUmVzb3VyY2VMb2FkZXI7Ci1zdHJ1Y3QgRm9u
dENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBjbGFzcyBGb250
RGVzY3JpcHRpb247CiBjbGFzcyBGb250UGxhdGZvcm1EYXRhOwogc3RydWN0IEZvbnRTZWxlY3Rp
b25TcGVjaWZpZWRDYXBhYmlsaXRpZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmgKaW5kZXggMTBjZmJhNTBiNDZhYTQ1OWQ3ZmI2
NzA5Y2UyOWY0ZjViYTRiNGQ4ZC4uYjU3NzdjMTJjY2UzNzhhYjliNGUxY2M5MDRiNGNiMDdlZjM0
MTI3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRM
b2FkUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250
TG9hZFJlcXVlc3QuaApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LXN0cnVjdCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsK
IAogY2xhc3MgQ2FjaGVkRm9udExvYWRSZXF1ZXN0IGZpbmFsIDogcHVibGljIEZvbnRMb2FkUmVx
dWVzdCwgcHVibGljIENhY2hlZEZvbnRDbGllbnQgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NB
VEVEOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNWR0Zv
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTVkdGb250LmgKaW5kZXgg
M2YwYzAxNDNjMGY4ZDllYjE3ODNiMGZiNjNlMjIwNzVmNzgyOGQ5YS4uMzUzZDNkZTYzYjA2Mjg2
MTNhYmFmNzc3ZmViMjUzYzViNjI0OTBjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFNWR0ZvbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkU1ZHRm9udC5oCkBAIC0yOSw3ICsyOSw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotc3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250
ZXh0OwogY2xhc3MgU1ZHRm9udEZhY2VFbGVtZW50OwogY2xhc3MgU2V0dGluZ3M7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDcmVhdGlvbkNvbnRl
eHQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDcmVhdGlvbkNvbnRl
eHQuaAppbmRleCBlOTEwYjRkMzBhNmYyMTMwZmM4NTliYzk1ZjU1Mjg5MDE4YTZjMDBmLi44NGI5
OGIwYjNlNWY2NWU1YTFmZmUwNmVlNDc2ZGUzMWRkOTVjM2I3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q3JlYXRpb25Db250ZXh0LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9uQ29udGV4dC5oCkBAIC0y
OCwxNSArMjgsNzkgQEAKICNpbmNsdWRlICJGb250UGFsZXR0ZVZhbHVlcy5oIgogI2luY2x1ZGUg
IkZvbnRTZWxlY3Rpb25BbGdvcml0aG0uaCIKICNpbmNsdWRlICJGb250VGFnZ2VkU2V0dGluZ3Mu
aCIKKyNpbmNsdWRlIDx3dGYvUG9pbnRlckNvbXBhcmlzb24uaD4KIAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCi1zdHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dCB7CitjbGFzcyBGb250Q3JlYXRpb25D
b250ZXh0UmFyZURhdGEgOiBwdWJsaWMgUmVmQ291bnRlZDxGb250Q3JlYXRpb25Db250ZXh0UmFy
ZURhdGE+IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUmVmPEZvbnRDcmVhdGlvbkNvbnRleHRSYXJl
RGF0YT4gY3JlYXRlKGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MmIGZvbnRGYWNlRmVhdHVyZXMs
IGNvbnN0IEZvbnRQYWxldHRlVmFsdWVzJiBmb250UGFsZXR0ZVZhbHVlcykKKyAgICB7CisgICAg
ICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YShmb250
RmFjZUZlYXR1cmVzLCBmb250UGFsZXR0ZVZhbHVlcykpOworICAgIH0KKworICAgIGNvbnN0IEZv
bnRGZWF0dXJlU2V0dGluZ3MmIGZvbnRGYWNlRmVhdHVyZXMoKSBjb25zdAorICAgIHsKKyAgICAg
ICAgcmV0dXJuIG1fZm9udEZhY2VGZWF0dXJlczsKKyAgICB9CisKKyAgICBjb25zdCBGb250UGFs
ZXR0ZVZhbHVlcyYgZm9udFBhbGV0dGVWYWx1ZXMoKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0
dXJuIG1fZm9udFBhbGV0dGVWYWx1ZXM7CisgICAgfQorCisgICAgYm9vbCBvcGVyYXRvcj09KGNv
bnN0IEZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YSYgb3RoZXIpIGNvbnN0CisgICAgeworICAg
ICAgICByZXR1cm4gbV9mb250RmFjZUZlYXR1cmVzID09IG90aGVyLm1fZm9udEZhY2VGZWF0dXJl
cworICAgICAgICAgICAgJiYgbV9mb250UGFsZXR0ZVZhbHVlcyA9PSBvdGhlci5tX2ZvbnRQYWxl
dHRlVmFsdWVzOworICAgIH0KKworICAgIGJvb2wgb3BlcmF0b3IhPShjb25zdCBGb250Q3JlYXRp
b25Db250ZXh0UmFyZURhdGEmIG90aGVyKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuICEo
KnRoaXMgPT0gb3RoZXIpOworICAgIH0KKworcHJpdmF0ZToKKyAgICBGb250Q3JlYXRpb25Db250
ZXh0UmFyZURhdGEoY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0dXJlcywg
Y29uc3QgRm9udFBhbGV0dGVWYWx1ZXMmIGZvbnRQYWxldHRlVmFsdWVzKQorICAgICAgICA6IG1f
Zm9udEZhY2VGZWF0dXJlcyhmb250RmFjZUZlYXR1cmVzKQorICAgICAgICAsIG1fZm9udFBhbGV0
dGVWYWx1ZXMoZm9udFBhbGV0dGVWYWx1ZXMpCisgICAgeworICAgIH0KKworICAgIEZvbnRGZWF0
dXJlU2V0dGluZ3MgbV9mb250RmFjZUZlYXR1cmVzOworICAgIEZvbnRQYWxldHRlVmFsdWVzIG1f
Zm9udFBhbGV0dGVWYWx1ZXM7CisgICAgLy8gRklYTUU6IEFkZCBzdXBwb3J0IGZvciBmb250LWZl
YXR1cmUtdmFsdWVzLgorfTsKKworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dCB7CitwdWJsaWM6
CisgICAgRm9udENyZWF0aW9uQ29udGV4dCgpID0gZGVmYXVsdDsKKworICAgIEZvbnRDcmVhdGlv
bkNvbnRleHQoY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0dXJlcywgY29u
c3QgRm9udFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllcyYgZm9udEZhY2VDYXBhYmlsaXRp
ZXMsIGNvbnN0IEZvbnRQYWxldHRlVmFsdWVzJiBmb250UGFsZXR0ZVZhbHVlcykKKyAgICAgICAg
OiBtX2ZvbnRGYWNlQ2FwYWJpbGl0aWVzKGZvbnRGYWNlQ2FwYWJpbGl0aWVzKQorICAgIHsKKyAg
ICAgICAgaWYgKCFmb250RmFjZUZlYXR1cmVzLmlzRW1wdHkoKSB8fCBmb250UGFsZXR0ZVZhbHVl
cykKKyAgICAgICAgICAgIG1fcmFyZURhdGEgPSBGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGE6
OmNyZWF0ZShmb250RmFjZUZlYXR1cmVzLCBmb250UGFsZXR0ZVZhbHVlcyk7CisgICAgfQorCisg
ICAgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyogZm9udEZhY2VGZWF0dXJlcygpIGNvbnN0Cisg
ICAgeworICAgICAgICByZXR1cm4gbV9yYXJlRGF0YSA/ICZtX3JhcmVEYXRhLT5mb250RmFjZUZl
YXR1cmVzKCkgOiBudWxscHRyOworICAgIH0KKworICAgIGNvbnN0IEZvbnRTZWxlY3Rpb25TcGVj
aWZpZWRDYXBhYmlsaXRpZXMmIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKCkgY29uc3QKKyAgICB7Cisg
ICAgICAgIHJldHVybiBtX2ZvbnRGYWNlQ2FwYWJpbGl0aWVzOworICAgIH0KKyAgICBjb25zdCBG
b250UGFsZXR0ZVZhbHVlcyogZm9udFBhbGV0dGVWYWx1ZXMoKSBjb25zdAorICAgIHsKKyAgICAg
ICAgcmV0dXJuIG1fcmFyZURhdGEgPyAmbV9yYXJlRGF0YS0+Zm9udFBhbGV0dGVWYWx1ZXMoKSA6
IG51bGxwdHI7CisgICAgfQorCiAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEZvbnRDcmVhdGlv
bkNvbnRleHQmIG90aGVyKSBjb25zdAogICAgIHsKLSAgICAgICAgcmV0dXJuIGZvbnRGYWNlRmVh
dHVyZXMgPT0gb3RoZXIuZm9udEZhY2VGZWF0dXJlcwotICAgICAgICAgICAgJiYgZm9udEZhY2VD
YXBhYmlsaXRpZXMgPT0gb3RoZXIuZm9udEZhY2VDYXBhYmlsaXRpZXMKLSAgICAgICAgICAgICYm
IGZvbnRQYWxldHRlVmFsdWVzID09IG90aGVyLmZvbnRQYWxldHRlVmFsdWVzOworICAgICAgICBy
ZXR1cm4gbV9mb250RmFjZUNhcGFiaWxpdGllcyA9PSBvdGhlci5tX2ZvbnRGYWNlQ2FwYWJpbGl0
aWVzCisgICAgICAgICAgICAmJiBhcmVQb2ludGluZ1RvRXF1YWxEYXRhKG1fcmFyZURhdGEsIG90
aGVyLm1fcmFyZURhdGEpOwogICAgIH0KIAogICAgIGJvb2wgb3BlcmF0b3IhPShjb25zdCBGb250
Q3JlYXRpb25Db250ZXh0JiBvdGhlcikgY29uc3QKQEAgLTQ0LDE3ICsxMDgsMTggQEAgc3RydWN0
IEZvbnRDcmVhdGlvbkNvbnRleHQgewogICAgICAgICByZXR1cm4gISgqdGhpcyA9PSBvdGhlcik7
CiAgICAgfQogCi0gICAgRm9udEZlYXR1cmVTZXR0aW5ncyBmb250RmFjZUZlYXR1cmVzOwotICAg
IEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXMgZm9udEZhY2VDYXBhYmlsaXRpZXM7
Ci0gICAgRm9udFBhbGV0dGVWYWx1ZXMgZm9udFBhbGV0dGVWYWx1ZXM7Ci0gICAgLy8gRklYTUU6
IEFkZCBzdXBwb3J0IGZvciBmb250LWZlYXR1cmUtdmFsdWVzLgorcHJpdmF0ZToKKyAgICBGb250
U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzIG1fZm9udEZhY2VDYXBhYmlsaXRpZXM7Cisg
ICAgUmVmUHRyPEZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YT4gbV9yYXJlRGF0YTsKIH07CiAK
IGlubGluZSB2b2lkIGFkZChIYXNoZXImIGhhc2hlciwgY29uc3QgRm9udENyZWF0aW9uQ29udGV4
dCYgZm9udENyZWF0aW9uQ29udGV4dCkKIHsKLSAgICBhZGQoaGFzaGVyLCBmb250Q3JlYXRpb25D
b250ZXh0LmZvbnRGYWNlRmVhdHVyZXMpOwotICAgIGFkZChoYXNoZXIsIGZvbnRDcmVhdGlvbkNv
bnRleHQuZm9udEZhY2VDYXBhYmlsaXRpZXMudGllZCgpKTsKLSAgICBhZGQoaGFzaGVyLCBmb250
Q3JlYXRpb25Db250ZXh0LmZvbnRQYWxldHRlVmFsdWVzKTsKKyAgICBpZiAoZm9udENyZWF0aW9u
Q29udGV4dC5mb250RmFjZUZlYXR1cmVzKCkpCisgICAgICAgIGFkZChoYXNoZXIsICpmb250Q3Jl
YXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSk7CisgICAgYWRkKGhhc2hlciwgZm9udENy
ZWF0aW9uQ29udGV4dC5mb250RmFjZUNhcGFiaWxpdGllcygpLnRpZWQoKSk7CisgICAgaWYgKGZv
bnRDcmVhdGlvbkNvbnRleHQuZm9udFBhbGV0dGVWYWx1ZXMoKSkKKyAgICAgICAgYWRkKGhhc2hl
ciwgKmZvbnRDcmVhdGlvbkNvbnRleHQuZm9udFBhbGV0dGVWYWx1ZXMoKSk7CiB9CiAKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQYWxldHRlVmFs
dWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250UGFsZXR0ZVZhbHVl
cy5oCmluZGV4IDE3MTJiNjI4YzAzMjM5YjU3Y2M3ZDUyZWEzZjAxODU0NmY5MDE1MmUuLmYyOGY3
NjRmOTgxOGFkMDJlZDAzNDc4MjIyZmU2YzRlY2ZkYjM0ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQYWxldHRlVmFsdWVzLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFBhbGV0dGVWYWx1ZXMuaApAQCAtNTgsNiAr
NTgsMTUgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gbV9vdmVycmlkZUNvbG9yOwogICAgIH0K
IAorICAgIG9wZXJhdG9yIGJvb2woKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuIFdURjo6
c3dpdGNoT24obV9iYXNlUGFsZXR0ZSwgW10gKGludDY0X3QpIHsKKyAgICAgICAgICAgIHJldHVy
biB0cnVlOworICAgICAgICB9LCBbXSAoY29uc3QgQXRvbVN0cmluZyYgc3RyaW5nKSB7CisgICAg
ICAgICAgICByZXR1cm4gIXN0cmluZy5pc051bGwoKTsKKyAgICAgICAgfSkgfHwgIW1fb3ZlcnJp
ZGVDb2xvci5pc0VtcHR5KCk7CisgICAgfQorCiAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEZv
bnRQYWxldHRlVmFsdWVzJiBvdGhlcikgY29uc3QKICAgICB7CiAgICAgICAgIHJldHVybiBtX2Jh
c2VQYWxldHRlID09IG90aGVyLm1fYmFzZVBhbGV0dGUgJiYgbV9vdmVycmlkZUNvbG9yID09IG90
aGVyLm1fb3ZlcnJpZGVDb2xvcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcAppbmRleCAxYTZmNzMy
OTA2NzU5YzkyOTg0M2U1N2U1ODk1ZTFiY2I1MWFiNDMzLi44OGUyZjNmZjEyOTE0YTc5MjA5OTNi
YjM0ZWYxODcyZTBiYjk5ZWUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwCkBAIC00NDMsNyAr
NDQzLDcgQEAgc3RydWN0IEZvbnRUeXBlIHsKICAgICBib29sIGFhdFNoYXBpbmcgeyBmYWxzZSB9
OwogfTsKIAotc3RhdGljIHZvaWQgYWRkQXR0cmlidXRlc0ZvckZvbnRQYWxldHRlcyhDRk11dGFi
bGVEaWN0aW9uYXJ5UmVmIGF0dHJpYnV0ZXMsIGNvbnN0IEZvbnRQYWxldHRlJiBmb250UGFsZXR0
ZSwgY29uc3QgRm9udFBhbGV0dGVWYWx1ZXMmIGZvbnRQYWxldHRlVmFsdWVzKQorc3RhdGljIHZv
aWQgYWRkQXR0cmlidXRlc0ZvckZvbnRQYWxldHRlcyhDRk11dGFibGVEaWN0aW9uYXJ5UmVmIGF0
dHJpYnV0ZXMsIGNvbnN0IEZvbnRQYWxldHRlJiBmb250UGFsZXR0ZSwgY29uc3QgRm9udFBhbGV0
dGVWYWx1ZXMqIGZvbnRQYWxldHRlVmFsdWVzKQogewogICAgIHN3aXRjaCAoZm9udFBhbGV0dGUu
dHlwZSkgewogICAgIGNhc2UgRm9udFBhbGV0dGU6OlR5cGU6Ok5vbmU6CkBAIC00NjQsMTUgKzQ2
NCwxNyBAQCBzdGF0aWMgdm9pZCBhZGRBdHRyaWJ1dGVzRm9yRm9udFBhbGV0dGVzKENGTXV0YWJs
ZURpY3Rpb25hcnlSZWYgYXR0cmlidXRlcywgY29ucwogICAgICAgICBicmVhazsKICAgICB9CiAg
ICAgY2FzZSBGb250UGFsZXR0ZTo6VHlwZTo6Q3VzdG9tOiB7Ci0gICAgICAgIFdURjo6c3dpdGNo
T24oZm9udFBhbGV0dGVWYWx1ZXMuYmFzZVBhbGV0dGUoKSwgWyZdKGludDY0X3QgaW5kZXgpIHsK
KyAgICAgICAgaWYgKCFmb250UGFsZXR0ZVZhbHVlcykKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBXVEY6OnN3aXRjaE9uKGZvbnRQYWxldHRlVmFsdWVzLT5iYXNlUGFsZXR0ZSgpLCBbJl0o
aW50NjRfdCBpbmRleCkgewogICAgICAgICAgICAgYXV0byBudW1iZXIgPSBhZG9wdENGKENGTnVt
YmVyQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIGtDRk51bWJlckNGSW5kZXhUeXBlLCAmaW5k
ZXgpKTsKICAgICAgICAgICAgIENGRGljdGlvbmFyeUFkZFZhbHVlKGF0dHJpYnV0ZXMsIGtDVEZv
bnRQYWxldHRlQXR0cmlidXRlLCBudW1iZXIuZ2V0KCkpOwogICAgICAgICB9LCBbXShjb25zdCBB
dG9tU3RyaW5nJikgewogICAgICAgICAgICAgLy8gVGhpcyBpcyB1bmltcGxlbWVudGFibGUgaW4g
Q29yZSBUZXh0LgogICAgICAgICB9KTsKLSAgICAgICAgaWYgKCFmb250UGFsZXR0ZVZhbHVlcy5v
dmVycmlkZUNvbG9yKCkuaXNFbXB0eSgpKSB7CisgICAgICAgIGlmICghZm9udFBhbGV0dGVWYWx1
ZXMtPm92ZXJyaWRlQ29sb3IoKS5pc0VtcHR5KCkpIHsKICAgICAgICAgICAgIGF1dG8gb3ZlcnJp
ZGVEaWN0aW9uYXJ5ID0gYWRvcHRDRihDRkRpY3Rpb25hcnlDcmVhdGVNdXRhYmxlKGtDRkFsbG9j
YXRvckRlZmF1bHQsIDAsICZrQ0ZUeXBlRGljdGlvbmFyeUtleUNhbGxCYWNrcywgJmtDRlR5cGVE
aWN0aW9uYXJ5VmFsdWVDYWxsQmFja3MpKTsKLSAgICAgICAgICAgIGZvciAoY29uc3QgYXV0byYg
cGFpciA6IGZvbnRQYWxldHRlVmFsdWVzLm92ZXJyaWRlQ29sb3IoKSkgeworICAgICAgICAgICAg
Zm9yIChjb25zdCBhdXRvJiBwYWlyIDogZm9udFBhbGV0dGVWYWx1ZXMtPm92ZXJyaWRlQ29sb3Io
KSkgewogICAgICAgICAgICAgICAgIGNvbnN0IGF1dG8mIHBhbGV0dGVDb2xvckluZGV4ID0gcGFp
ci5maXJzdDsKICAgICAgICAgICAgICAgICBjb25zdCBhdXRvJiBjb2xvciA9IHBhaXIuc2Vjb25k
OwogICAgICAgICAgICAgICAgIFdURjo6c3dpdGNoT24ocGFsZXR0ZUNvbG9ySW5kZXgsIFtdKGNv
bnN0IEF0b21TdHJpbmcmKSB7CkBAIC01MjAsNyArNTIyLDcgQEAgUmV0YWluUHRyPENURm9udFJl
Zj4gcHJlcGFyZVBsYXRmb3JtRm9udChDVEZvbnRSZWYgb3JpZ2luYWxGb250LCBjb25zdCBGb250
RGVzY3IKICAgICBib29sIHRleHRSZW5kZXJpbmdNb2RlSXNBdXRvID0gdGV4dFJlbmRlcmluZ01v
ZGUgPT0gVGV4dFJlbmRlcmluZ01vZGU6OkF1dG9UZXh0UmVuZGVyaW5nOwogICAgIGJvb2wgdmFy
aWFudFNldHRpbmdzSXNOb3JtYWwgPSB2YXJpYW50U2V0dGluZ3MuaXNBbGxOb3JtYWwoKTsKICAg
ICBib29sIGRvbnROZWVkVG9BcHBseU9wdGljYWxTaXppbmcgPSBmb250T3B0aWNhbFNpemluZyA9
PSBGb250T3B0aWNhbFNpemluZzo6RW5hYmxlZCAmJiAhZm9yY2VPcHRpY2FsU2l6aW5nT247Ci0g
ICAgYm9vbCBmb250RmFjZURvZXNudFNwZWNpZnlGZWF0dXJlcyA9IGZvbnRDcmVhdGlvbkNvbnRl
eHQuZm9udEZhY2VGZWF0dXJlcy5pc0VtcHR5KCk7CisgICAgYm9vbCBmb250RmFjZURvZXNudFNw
ZWNpZnlGZWF0dXJlcyA9ICFmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSB8
fCBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKS0+aXNFbXB0eSgpOwogICAg
IGlmIChub0ZvbnRGZWF0dXJlU2V0dGluZ3MgJiYgbm9Gb250VmFyaWF0aW9uU2V0dGluZ3MgJiYg
dGV4dFJlbmRlcmluZ01vZGVJc0F1dG8gJiYgdmFyaWFudFNldHRpbmdzSXNOb3JtYWwgJiYgZG9u
dE5lZWRUb0FwcGx5T3B0aWNhbFNpemluZyAmJiBmb250RmFjZURvZXNudFNwZWNpZnlGZWF0dXJl
cyAmJiAhc2hvdWxkRGlzYWJsZUxpZ2F0dXJlc0ZvclNwYWNpbmcgJiYgZG9udE5lZWRUb0FwcGx5
Rm9udFBhbGV0dGVzKSB7CiAjaWYgSEFWRShDVEZPTlRDUkVBVEVGT1JDSEFSQUNURVJTV0lUSExB
TkdVQUdFQU5ET1BUSU9OKQogICAgICAgICByZXR1cm4gb3JpZ2luYWxGb250OwpAQCAtNTY2LDEx
ICs1NjgsMTEgQEAgUmV0YWluUHRyPENURm9udFJlZj4gcHJlcGFyZVBsYXRmb3JtRm9udChDVEZv
bnRSZWYgb3JpZ2luYWxGb250LCBjb25zdCBGb250RGVzY3IKICAgICAgICAgZmxvYXQgd2VpZ2h0
ID0gZm9udFNlbGVjdGlvblJlcXVlc3Qud2VpZ2h0OwogICAgICAgICBmbG9hdCB3aWR0aCA9IGZv
bnRTZWxlY3Rpb25SZXF1ZXN0LndpZHRoOwogICAgICAgICBmbG9hdCBzbG9wZSA9IGZvbnRTZWxl
Y3Rpb25SZXF1ZXN0LnNsb3BlLnZhbHVlX29yKG5vcm1hbEl0YWxpY1ZhbHVlKCkpOwotICAgICAg
ICBpZiAoYXV0byB3ZWlnaHRWYWx1ZSA9IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VDYXBh
YmlsaXRpZXMud2VpZ2h0KQorICAgICAgICBpZiAoYXV0byB3ZWlnaHRWYWx1ZSA9IGZvbnRDcmVh
dGlvbkNvbnRleHQuZm9udEZhY2VDYXBhYmlsaXRpZXMoKS53ZWlnaHQpCiAgICAgICAgICAgICB3
ZWlnaHQgPSBzdGQ6Om1heChzdGQ6Om1pbih3ZWlnaHQsIHN0YXRpY19jYXN0PGZsb2F0Pih3ZWln
aHRWYWx1ZS0+bWF4aW11bSkpLCBzdGF0aWNfY2FzdDxmbG9hdD4od2VpZ2h0VmFsdWUtPm1pbmlt
dW0pKTsKLSAgICAgICAgaWYgKGF1dG8gd2lkdGhWYWx1ZSA9IGZvbnRDcmVhdGlvbkNvbnRleHQu
Zm9udEZhY2VDYXBhYmlsaXRpZXMud2lkdGgpCisgICAgICAgIGlmIChhdXRvIHdpZHRoVmFsdWUg
PSBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlQ2FwYWJpbGl0aWVzKCkud2lkdGgpCiAgICAg
ICAgICAgICB3aWR0aCA9IHN0ZDo6bWF4KHN0ZDo6bWluKHdpZHRoLCBzdGF0aWNfY2FzdDxmbG9h
dD4od2lkdGhWYWx1ZS0+bWF4aW11bSkpLCBzdGF0aWNfY2FzdDxmbG9hdD4od2lkdGhWYWx1ZS0+
bWluaW11bSkpOwotICAgICAgICBpZiAoYXV0byBzbG9wZVZhbHVlID0gZm9udENyZWF0aW9uQ29u
dGV4dC5mb250RmFjZUNhcGFiaWxpdGllcy53ZWlnaHQpCisgICAgICAgIGlmIChhdXRvIHNsb3Bl
VmFsdWUgPSBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlQ2FwYWJpbGl0aWVzKCkud2VpZ2h0
KQogICAgICAgICAgICAgc2xvcGUgPSBzdGQ6Om1heChzdGQ6Om1pbihzbG9wZSwgc3RhdGljX2Nh
c3Q8ZmxvYXQ+KHNsb3BlVmFsdWUtPm1heGltdW0pKSwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KHNsb3Bl
VmFsdWUtPm1pbmltdW0pKTsKICAgICAgICAgaWYgKG5lZWRzQ29udmVyc2lvbikgewogICAgICAg
ICAgICAgd2VpZ2h0ID0gZGVub3JtYWxpemVXZWlnaHQod2VpZ2h0KTsKQEAgLTU5MCw4ICs1OTIs
OCBAQCBSZXRhaW5QdHI8Q1RGb250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250KENURm9udFJlZiBv
cmlnaW5hbEZvbnQsIGNvbnN0IEZvbnREZXNjcgogICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgU3Rl
cCA2OiB0aGUgZm9udC12YXJpYXRpb24tc2V0dGluZ3MgZGVzY3JpcHRvciBpbnNpZGUgQGZvbnQt
ZmFjZQogCiAgICAgLy8gU3RlcCA3OiBDb25zdWx0IHdpdGggZm9udC1mZWF0dXJlLXNldHRpbmdz
IGluc2lkZSBAZm9udC1mYWNlCi0gICAgaWYgKCFmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNl
RmVhdHVyZXMuaXNFbXB0eSgpKSB7Ci0gICAgICAgIGZvciAoYXV0byYgZm9udEZhY2VGZWF0dXJl
IDogZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKQorICAgIGlmIChmb250Q3Jl
YXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSAmJiAhZm9udENyZWF0aW9uQ29udGV4dC5m
b250RmFjZUZlYXR1cmVzKCktPmlzRW1wdHkoKSkgeworICAgICAgICBmb3IgKGF1dG8mIGZvbnRG
YWNlRmVhdHVyZSA6ICpmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSkKICAg
ICAgICAgICAgIGFwcGx5RmVhdHVyZShmb250RmFjZUZlYXR1cmUudGFnKCksIGZvbnRGYWNlRmVh
dHVyZS52YWx1ZSgpKTsKICAgICB9CiAKQEAgLTY3MSw3ICs2NzMsNyBAQCBSZXRhaW5QdHI8Q1RG
b250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250KENURm9udFJlZiBvcmlnaW5hbEZvbnQsIGNvbnN0
IEZvbnREZXNjcgogI2VuZGlmCiAgICAgfQogCi0gICAgYWRkQXR0cmlidXRlc0ZvckZvbnRQYWxl
dHRlcyhhdHRyaWJ1dGVzLmdldCgpLCBmb250RGVzY3JpcHRpb24uZm9udFBhbGV0dGUoKSwgZm9u
dENyZWF0aW9uQ29udGV4dC5mb250UGFsZXR0ZVZhbHVlcyk7CisgICAgYWRkQXR0cmlidXRlc0Zv
ckZvbnRQYWxldHRlcyhhdHRyaWJ1dGVzLmdldCgpLCBmb250RGVzY3JpcHRpb24uZm9udFBhbGV0
dGUoKSwgZm9udENyZWF0aW9uQ29udGV4dC5mb250UGFsZXR0ZVZhbHVlcygpKTsKIAogICAgIGFk
ZEF0dHJpYnV0ZXNGb3JJbnN0YWxsZWRGb250cyhhdHRyaWJ1dGVzLmdldCgpLCBmb250RGVzY3Jp
cHRpb24uc2hvdWxkQWxsb3dVc2VySW5zdGFsbGVkRm9udHMoKSk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4
dC5oCmluZGV4IDg5YzZjYmYzMzg1ZWRlODEzOWE0ODM0M2YzN2RlNjc5NjNjZDNkOTIuLjdkZjAy
ZWIxOGJmNGI4OTViYzQ5NDBiYjM2ODMwYmYzOGI3NzM3OGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQu
aApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLXN0cnVjdCBGb250
Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIAogc3RydWN0IFN5
bnRoZXNpc1BhaXIgewogICAgIGV4cGxpY2l0IFN5bnRoZXNpc1BhaXIoYm9vbCBuZWVkc1N5bnRo
ZXRpY0JvbGQsIGJvb2wgbmVlZHNTeW50aGV0aWNPYmxpcXVlKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJlZVR5cGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJl
ZVR5cGUuY3BwCmluZGV4IDdjMDlkOWIyMDU3OGJkOWVkZWQ2ZDI5MDczZTFiYzc2YjE3ZDk2YmUu
LjY2MWRlZDc0ZjliOTg3NzZmYjJmOGNlMjhmNzZlZDMxZDBjM2FkODcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDYWNoZUZyZWVUeXBl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250
Q2FjaGVGcmVlVHlwZS5jcHAKQEAgLTU3Myw4ICs1NzMsOCBAQCBzdGQ6OnVuaXF1ZV9wdHI8Rm9u
dFBsYXRmb3JtRGF0YT4gRm9udENhY2hlOjpjcmVhdGVGb250UGxhdGZvcm1EYXRhKGNvbnN0IEZv
bnREZQogICAgIGJvb2wgZml4ZWRXaWR0aCwgc3ludGhldGljQm9sZCwgc3ludGhldGljT2JsaXF1
ZTsKICAgICBnZXRGb250UHJvcGVydGllc0Zyb21QYXR0ZXJuKHJlc3VsdFBhdHRlcm4uZ2V0KCks
IGZvbnREZXNjcmlwdGlvbiwgZml4ZWRXaWR0aCwgc3ludGhldGljQm9sZCwgc3ludGhldGljT2Js
aXF1ZSk7CiAKLSAgICBpZiAoIWZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcy5p
c0VtcHR5KCkpIHsKLSAgICAgICAgZm9yIChhdXRvJiBmb250RmFjZUZlYXR1cmUgOiBmb250Q3Jl
YXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMpIHsKKyAgICBpZiAoZm9udENyZWF0aW9uQ29u
dGV4dC5mb250RmFjZUZlYXR1cmVzKCkgJiYgIWZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VG
ZWF0dXJlcygpLT5pc0VtcHR5KCkpIHsKKyAgICAgICAgZm9yIChhdXRvJiBmb250RmFjZUZlYXR1
cmUgOiAqZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKCkpIHsKICAgICAgICAg
ICAgIGlmIChmb250RmFjZUZlYXR1cmUuZW5hYmxlZCgpKSB7CiAgICAgICAgICAgICAgICAgY29u
c3QgYXV0byYgdGFnID0gZm9udEZhY2VGZWF0dXJlLnRhZygpOwogICAgICAgICAgICAgICAgIGNv
bnN0IGNoYXIgYnVmZmVyW10gPSB7IHRhZ1swXSwgdGFnWzFdLCB0YWdbMl0sIHRhZ1szXSwgJ1ww
JyB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5
cGUvRm9udEN1c3RvbVBsYXRmb3JtRGF0YUZyZWVUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGFGcmVlVHlwZS5j
cHAKaW5kZXggYjY5YzU1NDkyZDc4NThjZGUyZTI5YTU3YjJhMDM0NmJhMjI4NDU1Ni4uODlhMGRh
ZDJmNWM4NmExMGQ1YmVhNjI2YzI1OGY1MDkwYzNjZGZkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udEN1c3RvbVBsYXRmb3JtRGF0YUZy
ZWVUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlw
ZS9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhRnJlZVR5cGUuY3BwCkBAIC04MSwxMyArODEsMTUgQEAg
Rm9udFBsYXRmb3JtRGF0YSBGb250Q3VzdG9tUGxhdGZvcm1EYXRhOjpmb250UGxhdGZvcm1EYXRh
KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYKICAgICBSZWZQdHI8RmNQYXR0ZXJuPiBwYXR0ZXJuID0g
ZGVmYXVsdEZvbnRjb25maWdPcHRpb25zKCk7CiAgICAgRmNQYXR0ZXJuQWRkU3RyaW5nKHBhdHRl
cm4uZ2V0KCksIEZDX0ZBTUlMWSwgcmVpbnRlcnByZXRfY2FzdDxjb25zdCBGY0NoYXI4Kj4oZnJl
ZVR5cGVGYWNlLT5mYW1pbHlfbmFtZSkpOwogCi0gICAgZm9yIChhdXRvJiBmb250RmFjZUZlYXR1
cmUgOiBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMpIHsKLSAgICAgICAgaWYg
KGZvbnRGYWNlRmVhdHVyZS5lbmFibGVkKCkpIHsKLSAgICAgICAgICAgIGNvbnN0IGF1dG8mIHRh
ZyA9IGZvbnRGYWNlRmVhdHVyZS50YWcoKTsKLSAgICAgICAgICAgIGNvbnN0IGNoYXIgYnVmZmVy
W10gPSB7IHRhZ1swXSwgdGFnWzFdLCB0YWdbMl0sIHRhZ1szXSwgJ1wwJyB9OwotICAgICAgICAg
ICAgRmNQYXR0ZXJuQWRkU3RyaW5nKHBhdHRlcm4uZ2V0KCksIEZDX0ZPTlRfRkVBVFVSRVMsIHJl
aW50ZXJwcmV0X2Nhc3Q8Y29uc3QgRmNDaGFyOCo+KGJ1ZmZlcikpOworICAgIGlmIChmb250Q3Jl
YXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSkgeworICAgICAgICBmb3IgKGF1dG8mIGZv
bnRGYWNlRmVhdHVyZSA6ICpmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSkg
eworICAgICAgICAgICAgaWYgKGZvbnRGYWNlRmVhdHVyZS5lbmFibGVkKCkpIHsKKyAgICAgICAg
ICAgICAgICBjb25zdCBhdXRvJiB0YWcgPSBmb250RmFjZUZlYXR1cmUudGFnKCk7CisgICAgICAg
ICAgICAgICAgY29uc3QgY2hhciBidWZmZXJbXSA9IHsgdGFnWzBdLCB0YWdbMV0sIHRhZ1syXSwg
dGFnWzNdLCAnXDAnIH07CisgICAgICAgICAgICAgICAgRmNQYXR0ZXJuQWRkU3RyaW5nKHBhdHRl
cm4uZ2V0KCksIEZDX0ZPTlRfRkVBVFVSRVMsIHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgRmNDaGFy
OCo+KGJ1ZmZlcikpOworICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgfQorICAgIHsKIAog
I2lmIEVOQUJMRShWQVJJQVRJT05fRk9OVFMpCiAgICAgYXV0byB2YXJpYW50cyA9IGJ1aWxkVmFy
aWF0aW9uU2V0dGluZ3MoZnJlZVR5cGVGYWNlLCBkZXNjcmlwdGlvbik7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udEN1c3RvbVBsYXRmb3JtRGF0
YS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0
Zm9ybURhdGEuaAppbmRleCA3YTZkMGExZTRiNzhiOWE3MGI4MjVjODMzOWM5ZjQ4ZTA5MDQzY2Jh
Li43MThiOWJkMzE1ZWNjNjcwNzg5YzY1Y2JhYWEwMzQ5Mjk3NWU3MmQzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udEN1c3RvbVBsYXRmb3JtRGF0
YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250Q3VzdG9t
UGxhdGZvcm1EYXRhLmgKQEAgLTMzLDcgKzMzLDcgQEAgdHlwZWRlZiBjb25zdCBzdHJ1Y3QgX19D
VEZvbnREZXNjcmlwdG9yKiBDVEZvbnREZXNjcmlwdG9yUmVmOwogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKLXN0cnVjdCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29u
dGV4dDsKIGNsYXNzIEZvbnREZXNjcmlwdGlvbjsKIHN0cnVjdCBGb250U2VsZWN0aW9uU3BlY2lm
aWVkQ2FwYWJpbGl0aWVzOwogY2xhc3MgU2hhcmVkQnVmZmVyOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKaW5kZXggNmE2YzA1OGUyMGUzZmU5NWNm
MzEzNjE1N2M1MDYyMTQ3OGI3YmIyYy4uYjlmY2ZiMWQ2ZmVhOGFkNWU3ODBiZGVlYmM1YzZlMDRh
MWU4NjNjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9h
ZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVx
dWVzdC5oCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotc3RydWN0
IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogY2xhc3Mg
U2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIGNsYXNzIFdvcmtl
ckdsb2JhbFNjb3BlOwo=
</data>
<flag name="commit-queue"
          id="462913"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>439290</attachid>
            <date>2021-09-25 23:27:21 -0700</date>
            <delta_ts>2021-09-28 02:57:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230800-20210925232720.patch</filename>
            <type>text/plain</type>
            <size>21053</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzMDg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2JhN2M4OGVmODNkMGM5
N2M5NTQ2ZTJjYTZlZTc1YTMyNjAyM2JjNS4uY2ZiNzJmZjhjZjAyN2VkYTE1ZmRkN2YyMGQ0YmIw
YzFlNGUwOWFhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDIxLTA5LTI1ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgRmFjdG9yIG91
dCByYXJlIG1lbWJlcnMgb2YgRm9udENyZWF0aW9uQ29udGV4dCBpbnRvIEZvbnRDcmVhdGlvbkNv
bnRleHRSYXJlRGF0YQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjMwODAwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS84MzUzODIyNz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGb250Q3JlYXRpb25Db250
ZXh0IGlzIHVzZWQgaW5zaWRlIEhhc2hNYXAga2V5cyBpbiBmb250IGNhY2hlcywgc28gd2Ugd2Fu
dCB0aGUgdHlwZSB0byBiZQorICAgICAgICBzbWFsbC4gUGFsZXR0ZXMgYW5kIGZvbnQgZmVhdHVy
ZXMgYXJlIHJhcmUsIHNvIHdlIGNhbiBtb3ZlIHRob3NlIGludG8gYSBoZWFwLWFsbG9jYXRlZAor
ICAgICAgICByYXJlIGRhdGEgb2JqZWN0LCB0aGVyZWJ5IGRlY3JlYXNpbmcgdGhlIHNpemUgb2Yg
Rm9udENyZWF0aW9uQ29udGV4dCBmb3IgbW9zdCBmb250cy4KKyAgICAgICAgSW1wb3J0YW50bHks
IGlmIHBhbGV0dGVzIGFuZCBmb250IGZlYXR1cmVzIGFyZW4ndCB1c2VkLCB0aGUgUmVmUHRyIHdp
bGwganVzdCBiZSBudWxsLCBhbmQKKyAgICAgICAgbm8gYWxsb2NhdGlvbiBpcyBwZXJmb3JtZWQu
CisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2UgdGhlcmUgaXMgbm8gYmVoYXZpb3IgY2hh
bmdlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICogY3NzL0NTU0Zv
bnRGYWNlU291cmNlLmg6CisgICAgICAgICogY3NzL0NTU1NlZ21lbnRlZEZvbnRGYWNlLmg6Cisg
ICAgICAgICogbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oOgorICAgICAgICAqIGxvYWRlci9jYWNo
ZS9DYWNoZWRGb250Lmg6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVx
dWVzdC5oOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdGb250Lmg6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9uQ29udGV4dC5oOgorICAgICAgICAoV2Vi
Q29yZTo6Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhOjpjcmVhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhOjpmb250RmFjZUZlYXR1cmVzIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6Zm9udFBh
bGV0dGVWYWx1ZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9uQ29udGV4
dFJhcmVEYXRhOjpvcGVyYXRvcj09IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVh
dGlvbkNvbnRleHRSYXJlRGF0YTo6b3BlcmF0b3IhPSBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGE6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0
YSk6CisgICAgICAgIChXZWJDb3JlOjpGb250Q3JlYXRpb25Db250ZXh0OjpGb250Q3JlYXRpb25D
b250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHQ6OmZvbnRGYWNl
RmVhdHVyZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9uQ29udGV4dDo6
Zm9udEZhY2VDYXBhYmlsaXRpZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0
aW9uQ29udGV4dDo6Zm9udFBhbGV0dGVWYWx1ZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
Rm9udENyZWF0aW9uQ29udGV4dDo6b3BlcmF0b3I9PSBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjphZGQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQYWxldHRlVmFsdWVzLmg6
CisgICAgICAgIChXZWJDb3JlOjpGb250UGFsZXR0ZVZhbHVlczo6b3BlcmF0b3IgYm9vbCBjb25z
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6YWRkQXR0cmlidXRlc0ZvckZvbnRQYWxldHRlcyk6Cisg
ICAgICAgIChXZWJDb3JlOjpwcmVwYXJlUGxhdGZvcm1Gb250KToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5oOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDYWNoZUZyZWVUeXBlLmNwcDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhRnJlZVR5cGUuY3Bw
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRh
Lmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaDoKKwogMjAyMS0w
OS0yNSAgQWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgRml4IHdpbiBi
dWlsZC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmgKaW5kZXggZDQ1YzA2MjJlNzQ3MTk3YmVmY2E0
YzM2NjAzZDQwZmJmNDFhOGY0OS4uNzg5OTNlZmVmNTdiNWU2Nzk5NmFkMWJkYWVmODc3MTdmYTE2
MGRlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmgKQEAgLTQ3LDcgKzQ3LDcgQEAgY2xhc3Mg
Q1NTU2VnbWVudGVkRm9udEZhY2U7CiBjbGFzcyBDU1NWYWx1ZTsKIGNsYXNzIENTU1ZhbHVlTGlz
dDsKIGNsYXNzIEZvbnRDYWNoZTsKLXN0cnVjdCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3Mg
Rm9udENyZWF0aW9uQ29udGV4dDsKIGNsYXNzIEZvbnREZXNjcmlwdGlvbjsKIGNsYXNzIEZvbnQ7
CiBjbGFzcyBGb250RmFjZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250
RmFjZVNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU291cmNlLmgKaW5k
ZXggMWY2NTdhNjY0NTFhMGM0Y2Y3MTdmNWU4MGNkMTBlYTJiZjk3ZjkwMS4uODI2MTMzMzIyYThl
ZTVmMzc4MmZiYjIzMTIzYjJkZDNhNTdhMTcyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU0ZvbnRGYWNlU291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRG
YWNlU291cmNlLmgKQEAgLTM2LDcgKzM2LDcgQEAgY2xhc3MgQ1NTRm9udEZhY2U7CiBjbGFzcyBD
U1NGb250U2VsZWN0b3I7CiBjbGFzcyBEb2N1bWVudDsKIGNsYXNzIEZvbnQ7Ci1zdHJ1Y3QgRm9u
dENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBzdHJ1Y3QgRm9u
dEN1c3RvbVBsYXRmb3JtRGF0YTsKIGNsYXNzIEZvbnREZXNjcmlwdGlvbjsKIHN0cnVjdCBGb250
U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1NlZ21lbnRlZEZvbnRGYWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2Vn
bWVudGVkRm9udEZhY2UuaAppbmRleCA5MGYzYWVhZTViOTRiZmIyNWFiNjY1OTVlOTBjZThlOWRj
ZGE1ZmVlLi41YjdkYmUxYzk3NGQ1NGQ0NmUyNDAxMjgxZDIwMjI2NjJhNWZhYTU0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VnbWVudGVkRm9udEZhY2UuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTU2VnbWVudGVkRm9udEZhY2UuaApAQCAtMzQsNyArMzQsNyBAQAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBDU1NGb250U2VsZWN0b3I7Ci1zdHJ1Y3QgRm9u
dENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBjbGFzcyBGb250
RGVzY3JpcHRpb247CiBjbGFzcyBGb250UGFsZXR0ZVZhbHVlczsKIGNsYXNzIEZvbnRSYW5nZXM7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0LmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0LmgKaW5kZXggOTVjM2U3NjA5MDgw
YTBmMjhmMjRkY2Y4N2VmMzY1MjY1YzZmOGE4Ni4uZDg5MDVjZTIxMzc0ZjJjZWMxZTIxNDMzOTdi
ZmJkZTM4NmVkYjFmMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2Fk
UmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaApA
QCAtMzIsNyArMzIsNyBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBGb250Owotc3Ry
dWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogY2xh
c3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3MgRm9udExvYWRSZXF1ZXN0Owogc3RydWN0IEZvbnRT
ZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZEZvbnQuaAppbmRleCBlYTkxN2RhMTFjNzI2MTViYWVkNzc2ZDFkZmM4NzUzMWU1MTY0
Mzk0Li5jZWJkYzU1N2YxM2ZjNGFmZDgyNzUyOTc3NGFmZDhlYzRiZWY0MjEwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmgKQEAgLTM0LDcgKzM0LDcgQEAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ2FjaGVkUmVzb3VyY2VMb2FkZXI7Ci1zdHJ1Y3QgRm9u
dENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBjbGFzcyBGb250
RGVzY3JpcHRpb247CiBjbGFzcyBGb250UGxhdGZvcm1EYXRhOwogc3RydWN0IEZvbnRTZWxlY3Rp
b25TcGVjaWZpZWRDYXBhYmlsaXRpZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0LmgKaW5kZXggMTBjZmJhNTBiNDZhYTQ1OWQ3ZmI2
NzA5Y2UyOWY0ZjViYTRiNGQ4ZC4uYjU3NzdjMTJjY2UzNzhhYjliNGUxY2M5MDRiNGNiMDdlZjM0
MTI3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRM
b2FkUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250
TG9hZFJlcXVlc3QuaApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LXN0cnVjdCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsK
IAogY2xhc3MgQ2FjaGVkRm9udExvYWRSZXF1ZXN0IGZpbmFsIDogcHVibGljIEZvbnRMb2FkUmVx
dWVzdCwgcHVibGljIENhY2hlZEZvbnRDbGllbnQgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NB
VEVEOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNWR0Zv
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTVkdGb250LmgKaW5kZXgg
M2YwYzAxNDNjMGY4ZDllYjE3ODNiMGZiNjNlMjIwNzVmNzgyOGQ5YS4uMzUzZDNkZTYzYjA2Mjg2
MTNhYmFmNzc3ZmViMjUzYzViNjI0OTBjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFNWR0ZvbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkU1ZHRm9udC5oCkBAIC0yOSw3ICsyOSw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotc3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250
ZXh0OwogY2xhc3MgU1ZHRm9udEZhY2VFbGVtZW50OwogY2xhc3MgU2V0dGluZ3M7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDcmVhdGlvbkNvbnRl
eHQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDcmVhdGlvbkNvbnRl
eHQuaAppbmRleCBlOTEwYjRkMzBhNmYyMTMwZmM4NTliYzk1ZjU1Mjg5MDE4YTZjMDBmLi44NGI5
OGIwYjNlNWY2NWU1YTFmZmUwNmVlNDc2ZGUzMWRkOTVjM2I3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q3JlYXRpb25Db250ZXh0LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9uQ29udGV4dC5oCkBAIC0y
OCwxNSArMjgsNzkgQEAKICNpbmNsdWRlICJGb250UGFsZXR0ZVZhbHVlcy5oIgogI2luY2x1ZGUg
IkZvbnRTZWxlY3Rpb25BbGdvcml0aG0uaCIKICNpbmNsdWRlICJGb250VGFnZ2VkU2V0dGluZ3Mu
aCIKKyNpbmNsdWRlIDx3dGYvUG9pbnRlckNvbXBhcmlzb24uaD4KIAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCi1zdHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dCB7CitjbGFzcyBGb250Q3JlYXRpb25D
b250ZXh0UmFyZURhdGEgOiBwdWJsaWMgUmVmQ291bnRlZDxGb250Q3JlYXRpb25Db250ZXh0UmFy
ZURhdGE+IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUmVmPEZvbnRDcmVhdGlvbkNvbnRleHRSYXJl
RGF0YT4gY3JlYXRlKGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MmIGZvbnRGYWNlRmVhdHVyZXMs
IGNvbnN0IEZvbnRQYWxldHRlVmFsdWVzJiBmb250UGFsZXR0ZVZhbHVlcykKKyAgICB7CisgICAg
ICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YShmb250
RmFjZUZlYXR1cmVzLCBmb250UGFsZXR0ZVZhbHVlcykpOworICAgIH0KKworICAgIGNvbnN0IEZv
bnRGZWF0dXJlU2V0dGluZ3MmIGZvbnRGYWNlRmVhdHVyZXMoKSBjb25zdAorICAgIHsKKyAgICAg
ICAgcmV0dXJuIG1fZm9udEZhY2VGZWF0dXJlczsKKyAgICB9CisKKyAgICBjb25zdCBGb250UGFs
ZXR0ZVZhbHVlcyYgZm9udFBhbGV0dGVWYWx1ZXMoKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0
dXJuIG1fZm9udFBhbGV0dGVWYWx1ZXM7CisgICAgfQorCisgICAgYm9vbCBvcGVyYXRvcj09KGNv
bnN0IEZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YSYgb3RoZXIpIGNvbnN0CisgICAgeworICAg
ICAgICByZXR1cm4gbV9mb250RmFjZUZlYXR1cmVzID09IG90aGVyLm1fZm9udEZhY2VGZWF0dXJl
cworICAgICAgICAgICAgJiYgbV9mb250UGFsZXR0ZVZhbHVlcyA9PSBvdGhlci5tX2ZvbnRQYWxl
dHRlVmFsdWVzOworICAgIH0KKworICAgIGJvb2wgb3BlcmF0b3IhPShjb25zdCBGb250Q3JlYXRp
b25Db250ZXh0UmFyZURhdGEmIG90aGVyKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuICEo
KnRoaXMgPT0gb3RoZXIpOworICAgIH0KKworcHJpdmF0ZToKKyAgICBGb250Q3JlYXRpb25Db250
ZXh0UmFyZURhdGEoY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0dXJlcywg
Y29uc3QgRm9udFBhbGV0dGVWYWx1ZXMmIGZvbnRQYWxldHRlVmFsdWVzKQorICAgICAgICA6IG1f
Zm9udEZhY2VGZWF0dXJlcyhmb250RmFjZUZlYXR1cmVzKQorICAgICAgICAsIG1fZm9udFBhbGV0
dGVWYWx1ZXMoZm9udFBhbGV0dGVWYWx1ZXMpCisgICAgeworICAgIH0KKworICAgIEZvbnRGZWF0
dXJlU2V0dGluZ3MgbV9mb250RmFjZUZlYXR1cmVzOworICAgIEZvbnRQYWxldHRlVmFsdWVzIG1f
Zm9udFBhbGV0dGVWYWx1ZXM7CisgICAgLy8gRklYTUU6IEFkZCBzdXBwb3J0IGZvciBmb250LWZl
YXR1cmUtdmFsdWVzLgorfTsKKworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dCB7CitwdWJsaWM6
CisgICAgRm9udENyZWF0aW9uQ29udGV4dCgpID0gZGVmYXVsdDsKKworICAgIEZvbnRDcmVhdGlv
bkNvbnRleHQoY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0dXJlcywgY29u
c3QgRm9udFNlbGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllcyYgZm9udEZhY2VDYXBhYmlsaXRp
ZXMsIGNvbnN0IEZvbnRQYWxldHRlVmFsdWVzJiBmb250UGFsZXR0ZVZhbHVlcykKKyAgICAgICAg
OiBtX2ZvbnRGYWNlQ2FwYWJpbGl0aWVzKGZvbnRGYWNlQ2FwYWJpbGl0aWVzKQorICAgIHsKKyAg
ICAgICAgaWYgKCFmb250RmFjZUZlYXR1cmVzLmlzRW1wdHkoKSB8fCBmb250UGFsZXR0ZVZhbHVl
cykKKyAgICAgICAgICAgIG1fcmFyZURhdGEgPSBGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGE6
OmNyZWF0ZShmb250RmFjZUZlYXR1cmVzLCBmb250UGFsZXR0ZVZhbHVlcyk7CisgICAgfQorCisg
ICAgY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyogZm9udEZhY2VGZWF0dXJlcygpIGNvbnN0Cisg
ICAgeworICAgICAgICByZXR1cm4gbV9yYXJlRGF0YSA/ICZtX3JhcmVEYXRhLT5mb250RmFjZUZl
YXR1cmVzKCkgOiBudWxscHRyOworICAgIH0KKworICAgIGNvbnN0IEZvbnRTZWxlY3Rpb25TcGVj
aWZpZWRDYXBhYmlsaXRpZXMmIGZvbnRGYWNlQ2FwYWJpbGl0aWVzKCkgY29uc3QKKyAgICB7Cisg
ICAgICAgIHJldHVybiBtX2ZvbnRGYWNlQ2FwYWJpbGl0aWVzOworICAgIH0KKyAgICBjb25zdCBG
b250UGFsZXR0ZVZhbHVlcyogZm9udFBhbGV0dGVWYWx1ZXMoKSBjb25zdAorICAgIHsKKyAgICAg
ICAgcmV0dXJuIG1fcmFyZURhdGEgPyAmbV9yYXJlRGF0YS0+Zm9udFBhbGV0dGVWYWx1ZXMoKSA6
IG51bGxwdHI7CisgICAgfQorCiAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEZvbnRDcmVhdGlv
bkNvbnRleHQmIG90aGVyKSBjb25zdAogICAgIHsKLSAgICAgICAgcmV0dXJuIGZvbnRGYWNlRmVh
dHVyZXMgPT0gb3RoZXIuZm9udEZhY2VGZWF0dXJlcwotICAgICAgICAgICAgJiYgZm9udEZhY2VD
YXBhYmlsaXRpZXMgPT0gb3RoZXIuZm9udEZhY2VDYXBhYmlsaXRpZXMKLSAgICAgICAgICAgICYm
IGZvbnRQYWxldHRlVmFsdWVzID09IG90aGVyLmZvbnRQYWxldHRlVmFsdWVzOworICAgICAgICBy
ZXR1cm4gbV9mb250RmFjZUNhcGFiaWxpdGllcyA9PSBvdGhlci5tX2ZvbnRGYWNlQ2FwYWJpbGl0
aWVzCisgICAgICAgICAgICAmJiBhcmVQb2ludGluZ1RvRXF1YWxEYXRhKG1fcmFyZURhdGEsIG90
aGVyLm1fcmFyZURhdGEpOwogICAgIH0KIAogICAgIGJvb2wgb3BlcmF0b3IhPShjb25zdCBGb250
Q3JlYXRpb25Db250ZXh0JiBvdGhlcikgY29uc3QKQEAgLTQ0LDE3ICsxMDgsMTggQEAgc3RydWN0
IEZvbnRDcmVhdGlvbkNvbnRleHQgewogICAgICAgICByZXR1cm4gISgqdGhpcyA9PSBvdGhlcik7
CiAgICAgfQogCi0gICAgRm9udEZlYXR1cmVTZXR0aW5ncyBmb250RmFjZUZlYXR1cmVzOwotICAg
IEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXMgZm9udEZhY2VDYXBhYmlsaXRpZXM7
Ci0gICAgRm9udFBhbGV0dGVWYWx1ZXMgZm9udFBhbGV0dGVWYWx1ZXM7Ci0gICAgLy8gRklYTUU6
IEFkZCBzdXBwb3J0IGZvciBmb250LWZlYXR1cmUtdmFsdWVzLgorcHJpdmF0ZToKKyAgICBGb250
U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzIG1fZm9udEZhY2VDYXBhYmlsaXRpZXM7Cisg
ICAgUmVmUHRyPEZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YT4gbV9yYXJlRGF0YTsKIH07CiAK
IGlubGluZSB2b2lkIGFkZChIYXNoZXImIGhhc2hlciwgY29uc3QgRm9udENyZWF0aW9uQ29udGV4
dCYgZm9udENyZWF0aW9uQ29udGV4dCkKIHsKLSAgICBhZGQoaGFzaGVyLCBmb250Q3JlYXRpb25D
b250ZXh0LmZvbnRGYWNlRmVhdHVyZXMpOwotICAgIGFkZChoYXNoZXIsIGZvbnRDcmVhdGlvbkNv
bnRleHQuZm9udEZhY2VDYXBhYmlsaXRpZXMudGllZCgpKTsKLSAgICBhZGQoaGFzaGVyLCBmb250
Q3JlYXRpb25Db250ZXh0LmZvbnRQYWxldHRlVmFsdWVzKTsKKyAgICBpZiAoZm9udENyZWF0aW9u
Q29udGV4dC5mb250RmFjZUZlYXR1cmVzKCkpCisgICAgICAgIGFkZChoYXNoZXIsICpmb250Q3Jl
YXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSk7CisgICAgYWRkKGhhc2hlciwgZm9udENy
ZWF0aW9uQ29udGV4dC5mb250RmFjZUNhcGFiaWxpdGllcygpLnRpZWQoKSk7CisgICAgaWYgKGZv
bnRDcmVhdGlvbkNvbnRleHQuZm9udFBhbGV0dGVWYWx1ZXMoKSkKKyAgICAgICAgYWRkKGhhc2hl
ciwgKmZvbnRDcmVhdGlvbkNvbnRleHQuZm9udFBhbGV0dGVWYWx1ZXMoKSk7CiB9CiAKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQYWxldHRlVmFs
dWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250UGFsZXR0ZVZhbHVl
cy5oCmluZGV4IDE3MTJiNjI4YzAzMjM5YjU3Y2M3ZDUyZWEzZjAxODU0NmY5MDE1MmUuLmYyOGY3
NjRmOTgxOGFkMDJlZDAzNDc4MjIyZmU2YzRlY2ZkYjM0ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQYWxldHRlVmFsdWVzLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFBhbGV0dGVWYWx1ZXMuaApAQCAtNTgsNiAr
NTgsMTUgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gbV9vdmVycmlkZUNvbG9yOwogICAgIH0K
IAorICAgIG9wZXJhdG9yIGJvb2woKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuIFdURjo6
c3dpdGNoT24obV9iYXNlUGFsZXR0ZSwgW10gKGludDY0X3QpIHsKKyAgICAgICAgICAgIHJldHVy
biB0cnVlOworICAgICAgICB9LCBbXSAoY29uc3QgQXRvbVN0cmluZyYgc3RyaW5nKSB7CisgICAg
ICAgICAgICByZXR1cm4gIXN0cmluZy5pc051bGwoKTsKKyAgICAgICAgfSkgfHwgIW1fb3ZlcnJp
ZGVDb2xvci5pc0VtcHR5KCk7CisgICAgfQorCiAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEZv
bnRQYWxldHRlVmFsdWVzJiBvdGhlcikgY29uc3QKICAgICB7CiAgICAgICAgIHJldHVybiBtX2Jh
c2VQYWxldHRlID09IG90aGVyLm1fYmFzZVBhbGV0dGUgJiYgbV9vdmVycmlkZUNvbG9yID09IG90
aGVyLm1fb3ZlcnJpZGVDb2xvcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcAppbmRleCAxYTZmNzMy
OTA2NzU5YzkyOTg0M2U1N2U1ODk1ZTFiY2I1MWFiNDMzLi44OGUyZjNmZjEyOTE0YTc5MjA5OTNi
YjM0ZWYxODcyZTBiYjk5ZWUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwCkBAIC00NDMsNyAr
NDQzLDcgQEAgc3RydWN0IEZvbnRUeXBlIHsKICAgICBib29sIGFhdFNoYXBpbmcgeyBmYWxzZSB9
OwogfTsKIAotc3RhdGljIHZvaWQgYWRkQXR0cmlidXRlc0ZvckZvbnRQYWxldHRlcyhDRk11dGFi
bGVEaWN0aW9uYXJ5UmVmIGF0dHJpYnV0ZXMsIGNvbnN0IEZvbnRQYWxldHRlJiBmb250UGFsZXR0
ZSwgY29uc3QgRm9udFBhbGV0dGVWYWx1ZXMmIGZvbnRQYWxldHRlVmFsdWVzKQorc3RhdGljIHZv
aWQgYWRkQXR0cmlidXRlc0ZvckZvbnRQYWxldHRlcyhDRk11dGFibGVEaWN0aW9uYXJ5UmVmIGF0
dHJpYnV0ZXMsIGNvbnN0IEZvbnRQYWxldHRlJiBmb250UGFsZXR0ZSwgY29uc3QgRm9udFBhbGV0
dGVWYWx1ZXMqIGZvbnRQYWxldHRlVmFsdWVzKQogewogICAgIHN3aXRjaCAoZm9udFBhbGV0dGUu
dHlwZSkgewogICAgIGNhc2UgRm9udFBhbGV0dGU6OlR5cGU6Ok5vbmU6CkBAIC00NjQsMTUgKzQ2
NCwxNyBAQCBzdGF0aWMgdm9pZCBhZGRBdHRyaWJ1dGVzRm9yRm9udFBhbGV0dGVzKENGTXV0YWJs
ZURpY3Rpb25hcnlSZWYgYXR0cmlidXRlcywgY29ucwogICAgICAgICBicmVhazsKICAgICB9CiAg
ICAgY2FzZSBGb250UGFsZXR0ZTo6VHlwZTo6Q3VzdG9tOiB7Ci0gICAgICAgIFdURjo6c3dpdGNo
T24oZm9udFBhbGV0dGVWYWx1ZXMuYmFzZVBhbGV0dGUoKSwgWyZdKGludDY0X3QgaW5kZXgpIHsK
KyAgICAgICAgaWYgKCFmb250UGFsZXR0ZVZhbHVlcykKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBXVEY6OnN3aXRjaE9uKGZvbnRQYWxldHRlVmFsdWVzLT5iYXNlUGFsZXR0ZSgpLCBbJl0o
aW50NjRfdCBpbmRleCkgewogICAgICAgICAgICAgYXV0byBudW1iZXIgPSBhZG9wdENGKENGTnVt
YmVyQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIGtDRk51bWJlckNGSW5kZXhUeXBlLCAmaW5k
ZXgpKTsKICAgICAgICAgICAgIENGRGljdGlvbmFyeUFkZFZhbHVlKGF0dHJpYnV0ZXMsIGtDVEZv
bnRQYWxldHRlQXR0cmlidXRlLCBudW1iZXIuZ2V0KCkpOwogICAgICAgICB9LCBbXShjb25zdCBB
dG9tU3RyaW5nJikgewogICAgICAgICAgICAgLy8gVGhpcyBpcyB1bmltcGxlbWVudGFibGUgaW4g
Q29yZSBUZXh0LgogICAgICAgICB9KTsKLSAgICAgICAgaWYgKCFmb250UGFsZXR0ZVZhbHVlcy5v
dmVycmlkZUNvbG9yKCkuaXNFbXB0eSgpKSB7CisgICAgICAgIGlmICghZm9udFBhbGV0dGVWYWx1
ZXMtPm92ZXJyaWRlQ29sb3IoKS5pc0VtcHR5KCkpIHsKICAgICAgICAgICAgIGF1dG8gb3ZlcnJp
ZGVEaWN0aW9uYXJ5ID0gYWRvcHRDRihDRkRpY3Rpb25hcnlDcmVhdGVNdXRhYmxlKGtDRkFsbG9j
YXRvckRlZmF1bHQsIDAsICZrQ0ZUeXBlRGljdGlvbmFyeUtleUNhbGxCYWNrcywgJmtDRlR5cGVE
aWN0aW9uYXJ5VmFsdWVDYWxsQmFja3MpKTsKLSAgICAgICAgICAgIGZvciAoY29uc3QgYXV0byYg
cGFpciA6IGZvbnRQYWxldHRlVmFsdWVzLm92ZXJyaWRlQ29sb3IoKSkgeworICAgICAgICAgICAg
Zm9yIChjb25zdCBhdXRvJiBwYWlyIDogZm9udFBhbGV0dGVWYWx1ZXMtPm92ZXJyaWRlQ29sb3Io
KSkgewogICAgICAgICAgICAgICAgIGNvbnN0IGF1dG8mIHBhbGV0dGVDb2xvckluZGV4ID0gcGFp
ci5maXJzdDsKICAgICAgICAgICAgICAgICBjb25zdCBhdXRvJiBjb2xvciA9IHBhaXIuc2Vjb25k
OwogICAgICAgICAgICAgICAgIFdURjo6c3dpdGNoT24ocGFsZXR0ZUNvbG9ySW5kZXgsIFtdKGNv
bnN0IEF0b21TdHJpbmcmKSB7CkBAIC01MjAsNyArNTIyLDcgQEAgUmV0YWluUHRyPENURm9udFJl
Zj4gcHJlcGFyZVBsYXRmb3JtRm9udChDVEZvbnRSZWYgb3JpZ2luYWxGb250LCBjb25zdCBGb250
RGVzY3IKICAgICBib29sIHRleHRSZW5kZXJpbmdNb2RlSXNBdXRvID0gdGV4dFJlbmRlcmluZ01v
ZGUgPT0gVGV4dFJlbmRlcmluZ01vZGU6OkF1dG9UZXh0UmVuZGVyaW5nOwogICAgIGJvb2wgdmFy
aWFudFNldHRpbmdzSXNOb3JtYWwgPSB2YXJpYW50U2V0dGluZ3MuaXNBbGxOb3JtYWwoKTsKICAg
ICBib29sIGRvbnROZWVkVG9BcHBseU9wdGljYWxTaXppbmcgPSBmb250T3B0aWNhbFNpemluZyA9
PSBGb250T3B0aWNhbFNpemluZzo6RW5hYmxlZCAmJiAhZm9yY2VPcHRpY2FsU2l6aW5nT247Ci0g
ICAgYm9vbCBmb250RmFjZURvZXNudFNwZWNpZnlGZWF0dXJlcyA9IGZvbnRDcmVhdGlvbkNvbnRl
eHQuZm9udEZhY2VGZWF0dXJlcy5pc0VtcHR5KCk7CisgICAgYm9vbCBmb250RmFjZURvZXNudFNw
ZWNpZnlGZWF0dXJlcyA9ICFmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSB8
fCBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKS0+aXNFbXB0eSgpOwogICAg
IGlmIChub0ZvbnRGZWF0dXJlU2V0dGluZ3MgJiYgbm9Gb250VmFyaWF0aW9uU2V0dGluZ3MgJiYg
dGV4dFJlbmRlcmluZ01vZGVJc0F1dG8gJiYgdmFyaWFudFNldHRpbmdzSXNOb3JtYWwgJiYgZG9u
dE5lZWRUb0FwcGx5T3B0aWNhbFNpemluZyAmJiBmb250RmFjZURvZXNudFNwZWNpZnlGZWF0dXJl
cyAmJiAhc2hvdWxkRGlzYWJsZUxpZ2F0dXJlc0ZvclNwYWNpbmcgJiYgZG9udE5lZWRUb0FwcGx5
Rm9udFBhbGV0dGVzKSB7CiAjaWYgSEFWRShDVEZPTlRDUkVBVEVGT1JDSEFSQUNURVJTV0lUSExB
TkdVQUdFQU5ET1BUSU9OKQogICAgICAgICByZXR1cm4gb3JpZ2luYWxGb250OwpAQCAtNTY2LDEx
ICs1NjgsMTEgQEAgUmV0YWluUHRyPENURm9udFJlZj4gcHJlcGFyZVBsYXRmb3JtRm9udChDVEZv
bnRSZWYgb3JpZ2luYWxGb250LCBjb25zdCBGb250RGVzY3IKICAgICAgICAgZmxvYXQgd2VpZ2h0
ID0gZm9udFNlbGVjdGlvblJlcXVlc3Qud2VpZ2h0OwogICAgICAgICBmbG9hdCB3aWR0aCA9IGZv
bnRTZWxlY3Rpb25SZXF1ZXN0LndpZHRoOwogICAgICAgICBmbG9hdCBzbG9wZSA9IGZvbnRTZWxl
Y3Rpb25SZXF1ZXN0LnNsb3BlLnZhbHVlX29yKG5vcm1hbEl0YWxpY1ZhbHVlKCkpOwotICAgICAg
ICBpZiAoYXV0byB3ZWlnaHRWYWx1ZSA9IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VDYXBh
YmlsaXRpZXMud2VpZ2h0KQorICAgICAgICBpZiAoYXV0byB3ZWlnaHRWYWx1ZSA9IGZvbnRDcmVh
dGlvbkNvbnRleHQuZm9udEZhY2VDYXBhYmlsaXRpZXMoKS53ZWlnaHQpCiAgICAgICAgICAgICB3
ZWlnaHQgPSBzdGQ6Om1heChzdGQ6Om1pbih3ZWlnaHQsIHN0YXRpY19jYXN0PGZsb2F0Pih3ZWln
aHRWYWx1ZS0+bWF4aW11bSkpLCBzdGF0aWNfY2FzdDxmbG9hdD4od2VpZ2h0VmFsdWUtPm1pbmlt
dW0pKTsKLSAgICAgICAgaWYgKGF1dG8gd2lkdGhWYWx1ZSA9IGZvbnRDcmVhdGlvbkNvbnRleHQu
Zm9udEZhY2VDYXBhYmlsaXRpZXMud2lkdGgpCisgICAgICAgIGlmIChhdXRvIHdpZHRoVmFsdWUg
PSBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlQ2FwYWJpbGl0aWVzKCkud2lkdGgpCiAgICAg
ICAgICAgICB3aWR0aCA9IHN0ZDo6bWF4KHN0ZDo6bWluKHdpZHRoLCBzdGF0aWNfY2FzdDxmbG9h
dD4od2lkdGhWYWx1ZS0+bWF4aW11bSkpLCBzdGF0aWNfY2FzdDxmbG9hdD4od2lkdGhWYWx1ZS0+
bWluaW11bSkpOwotICAgICAgICBpZiAoYXV0byBzbG9wZVZhbHVlID0gZm9udENyZWF0aW9uQ29u
dGV4dC5mb250RmFjZUNhcGFiaWxpdGllcy53ZWlnaHQpCisgICAgICAgIGlmIChhdXRvIHNsb3Bl
VmFsdWUgPSBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlQ2FwYWJpbGl0aWVzKCkud2VpZ2h0
KQogICAgICAgICAgICAgc2xvcGUgPSBzdGQ6Om1heChzdGQ6Om1pbihzbG9wZSwgc3RhdGljX2Nh
c3Q8ZmxvYXQ+KHNsb3BlVmFsdWUtPm1heGltdW0pKSwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KHNsb3Bl
VmFsdWUtPm1pbmltdW0pKTsKICAgICAgICAgaWYgKG5lZWRzQ29udmVyc2lvbikgewogICAgICAg
ICAgICAgd2VpZ2h0ID0gZGVub3JtYWxpemVXZWlnaHQod2VpZ2h0KTsKQEAgLTU5MCw4ICs1OTIs
OCBAQCBSZXRhaW5QdHI8Q1RGb250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250KENURm9udFJlZiBv
cmlnaW5hbEZvbnQsIGNvbnN0IEZvbnREZXNjcgogICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgU3Rl
cCA2OiB0aGUgZm9udC12YXJpYXRpb24tc2V0dGluZ3MgZGVzY3JpcHRvciBpbnNpZGUgQGZvbnQt
ZmFjZQogCiAgICAgLy8gU3RlcCA3OiBDb25zdWx0IHdpdGggZm9udC1mZWF0dXJlLXNldHRpbmdz
IGluc2lkZSBAZm9udC1mYWNlCi0gICAgaWYgKCFmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNl
RmVhdHVyZXMuaXNFbXB0eSgpKSB7Ci0gICAgICAgIGZvciAoYXV0byYgZm9udEZhY2VGZWF0dXJl
IDogZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKQorICAgIGlmIChmb250Q3Jl
YXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSAmJiAhZm9udENyZWF0aW9uQ29udGV4dC5m
b250RmFjZUZlYXR1cmVzKCktPmlzRW1wdHkoKSkgeworICAgICAgICBmb3IgKGF1dG8mIGZvbnRG
YWNlRmVhdHVyZSA6ICpmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSkKICAg
ICAgICAgICAgIGFwcGx5RmVhdHVyZShmb250RmFjZUZlYXR1cmUudGFnKCksIGZvbnRGYWNlRmVh
dHVyZS52YWx1ZSgpKTsKICAgICB9CiAKQEAgLTY3MSw3ICs2NzMsNyBAQCBSZXRhaW5QdHI8Q1RG
b250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250KENURm9udFJlZiBvcmlnaW5hbEZvbnQsIGNvbnN0
IEZvbnREZXNjcgogI2VuZGlmCiAgICAgfQogCi0gICAgYWRkQXR0cmlidXRlc0ZvckZvbnRQYWxl
dHRlcyhhdHRyaWJ1dGVzLmdldCgpLCBmb250RGVzY3JpcHRpb24uZm9udFBhbGV0dGUoKSwgZm9u
dENyZWF0aW9uQ29udGV4dC5mb250UGFsZXR0ZVZhbHVlcyk7CisgICAgYWRkQXR0cmlidXRlc0Zv
ckZvbnRQYWxldHRlcyhhdHRyaWJ1dGVzLmdldCgpLCBmb250RGVzY3JpcHRpb24uZm9udFBhbGV0
dGUoKSwgZm9udENyZWF0aW9uQ29udGV4dC5mb250UGFsZXR0ZVZhbHVlcygpKTsKIAogICAgIGFk
ZEF0dHJpYnV0ZXNGb3JJbnN0YWxsZWRGb250cyhhdHRyaWJ1dGVzLmdldCgpLCBmb250RGVzY3Jp
cHRpb24uc2hvdWxkQWxsb3dVc2VySW5zdGFsbGVkRm9udHMoKSk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4
dC5oCmluZGV4IDg5YzZjYmYzMzg1ZWRlODEzOWE0ODM0M2YzN2RlNjc5NjNjZDNkOTIuLjdkZjAy
ZWIxOGJmNGI4OTViYzQ5NDBiYjM2ODMwYmYzOGI3NzM3OGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQu
aApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLXN0cnVjdCBGb250
Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIAogc3RydWN0IFN5
bnRoZXNpc1BhaXIgewogICAgIGV4cGxpY2l0IFN5bnRoZXNpc1BhaXIoYm9vbCBuZWVkc1N5bnRo
ZXRpY0JvbGQsIGJvb2wgbmVlZHNTeW50aGV0aWNPYmxpcXVlKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJlZVR5cGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJl
ZVR5cGUuY3BwCmluZGV4IDdjMDlkOWIyMDU3OGJkOWVkZWQ2ZDI5MDczZTFiYzc2YjE3ZDk2YmUu
LjY2MWRlZDc0ZjliOTg3NzZmYjJmOGNlMjhmNzZlZDMxZDBjM2FkODcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDYWNoZUZyZWVUeXBl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250
Q2FjaGVGcmVlVHlwZS5jcHAKQEAgLTU3Myw4ICs1NzMsOCBAQCBzdGQ6OnVuaXF1ZV9wdHI8Rm9u
dFBsYXRmb3JtRGF0YT4gRm9udENhY2hlOjpjcmVhdGVGb250UGxhdGZvcm1EYXRhKGNvbnN0IEZv
bnREZQogICAgIGJvb2wgZml4ZWRXaWR0aCwgc3ludGhldGljQm9sZCwgc3ludGhldGljT2JsaXF1
ZTsKICAgICBnZXRGb250UHJvcGVydGllc0Zyb21QYXR0ZXJuKHJlc3VsdFBhdHRlcm4uZ2V0KCks
IGZvbnREZXNjcmlwdGlvbiwgZml4ZWRXaWR0aCwgc3ludGhldGljQm9sZCwgc3ludGhldGljT2Js
aXF1ZSk7CiAKLSAgICBpZiAoIWZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcy5p
c0VtcHR5KCkpIHsKLSAgICAgICAgZm9yIChhdXRvJiBmb250RmFjZUZlYXR1cmUgOiBmb250Q3Jl
YXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMpIHsKKyAgICBpZiAoZm9udENyZWF0aW9uQ29u
dGV4dC5mb250RmFjZUZlYXR1cmVzKCkgJiYgIWZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VG
ZWF0dXJlcygpLT5pc0VtcHR5KCkpIHsKKyAgICAgICAgZm9yIChhdXRvJiBmb250RmFjZUZlYXR1
cmUgOiAqZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKCkpIHsKICAgICAgICAg
ICAgIGlmIChmb250RmFjZUZlYXR1cmUuZW5hYmxlZCgpKSB7CiAgICAgICAgICAgICAgICAgY29u
c3QgYXV0byYgdGFnID0gZm9udEZhY2VGZWF0dXJlLnRhZygpOwogICAgICAgICAgICAgICAgIGNv
bnN0IGNoYXIgYnVmZmVyW10gPSB7IHRhZ1swXSwgdGFnWzFdLCB0YWdbMl0sIHRhZ1szXSwgJ1ww
JyB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5
cGUvRm9udEN1c3RvbVBsYXRmb3JtRGF0YUZyZWVUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGFGcmVlVHlwZS5j
cHAKaW5kZXggYjY5YzU1NDkyZDc4NThjZGUyZTI5YTU3YjJhMDM0NmJhMjI4NDU1Ni4uNTA2YjRk
ZDYyZDU1YTU2YTI3OGMzMGNjYWIyZDE5MTEwZjI0MWVlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udEN1c3RvbVBsYXRmb3JtRGF0YUZy
ZWVUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlw
ZS9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhRnJlZVR5cGUuY3BwCkBAIC04MSwxMSArODEsMTMgQEAg
Rm9udFBsYXRmb3JtRGF0YSBGb250Q3VzdG9tUGxhdGZvcm1EYXRhOjpmb250UGxhdGZvcm1EYXRh
KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYKICAgICBSZWZQdHI8RmNQYXR0ZXJuPiBwYXR0ZXJuID0g
ZGVmYXVsdEZvbnRjb25maWdPcHRpb25zKCk7CiAgICAgRmNQYXR0ZXJuQWRkU3RyaW5nKHBhdHRl
cm4uZ2V0KCksIEZDX0ZBTUlMWSwgcmVpbnRlcnByZXRfY2FzdDxjb25zdCBGY0NoYXI4Kj4oZnJl
ZVR5cGVGYWNlLT5mYW1pbHlfbmFtZSkpOwogCi0gICAgZm9yIChhdXRvJiBmb250RmFjZUZlYXR1
cmUgOiBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMpIHsKLSAgICAgICAgaWYg
KGZvbnRGYWNlRmVhdHVyZS5lbmFibGVkKCkpIHsKLSAgICAgICAgICAgIGNvbnN0IGF1dG8mIHRh
ZyA9IGZvbnRGYWNlRmVhdHVyZS50YWcoKTsKLSAgICAgICAgICAgIGNvbnN0IGNoYXIgYnVmZmVy
W10gPSB7IHRhZ1swXSwgdGFnWzFdLCB0YWdbMl0sIHRhZ1szXSwgJ1wwJyB9OwotICAgICAgICAg
ICAgRmNQYXR0ZXJuQWRkU3RyaW5nKHBhdHRlcm4uZ2V0KCksIEZDX0ZPTlRfRkVBVFVSRVMsIHJl
aW50ZXJwcmV0X2Nhc3Q8Y29uc3QgRmNDaGFyOCo+KGJ1ZmZlcikpOworICAgIGlmIChmb250Q3Jl
YXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSkgeworICAgICAgICBmb3IgKGF1dG8mIGZv
bnRGYWNlRmVhdHVyZSA6ICpmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSkg
eworICAgICAgICAgICAgaWYgKGZvbnRGYWNlRmVhdHVyZS5lbmFibGVkKCkpIHsKKyAgICAgICAg
ICAgICAgICBjb25zdCBhdXRvJiB0YWcgPSBmb250RmFjZUZlYXR1cmUudGFnKCk7CisgICAgICAg
ICAgICAgICAgY29uc3QgY2hhciBidWZmZXJbXSA9IHsgdGFnWzBdLCB0YWdbMV0sIHRhZ1syXSwg
dGFnWzNdLCAnXDAnIH07CisgICAgICAgICAgICAgICAgRmNQYXR0ZXJuQWRkU3RyaW5nKHBhdHRl
cm4uZ2V0KCksIEZDX0ZPTlRfRkVBVFVSRVMsIHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgRmNDaGFy
OCo+KGJ1ZmZlcikpOworICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udEN1c3RvbVBsYXRm
b3JtRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0
b21QbGF0Zm9ybURhdGEuaAppbmRleCA3YTZkMGExZTRiNzhiOWE3MGI4MjVjODMzOWM5ZjQ4ZTA5
MDQzY2JhLi43MThiOWJkMzE1ZWNjNjcwNzg5YzY1Y2JhYWEwMzQ5Mjk3NWU3MmQzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udEN1c3RvbVBsYXRm
b3JtRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250
Q3VzdG9tUGxhdGZvcm1EYXRhLmgKQEAgLTMzLDcgKzMzLDcgQEAgdHlwZWRlZiBjb25zdCBzdHJ1
Y3QgX19DVEZvbnREZXNjcmlwdG9yKiBDVEZvbnREZXNjcmlwdG9yUmVmOwogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKLXN0cnVjdCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0
aW9uQ29udGV4dDsKIGNsYXNzIEZvbnREZXNjcmlwdGlvbjsKIHN0cnVjdCBGb250U2VsZWN0aW9u
U3BlY2lmaWVkQ2FwYWJpbGl0aWVzOwogY2xhc3MgU2hhcmVkQnVmZmVyOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaCBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0LmgKaW5kZXggNmE2YzA1OGUyMGUz
ZmU5NWNmMzEzNjE1N2M1MDYyMTQ3OGI3YmIyYy4uYjlmY2ZiMWQ2ZmVhOGFkNWU3ODBiZGVlYmM1
YzZlMDRhMWU4NjNjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJG
b250TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRM
b2FkUmVxdWVzdC5oCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAot
c3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0Owog
Y2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIGNsYXNz
IFdvcmtlckdsb2JhbFNjb3BlOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>439447</attachid>
            <date>2021-09-28 02:57:04 -0700</date>
            <delta_ts>2021-09-28 15:16:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230800-20210928025703.patch</filename>
            <type>text/plain</type>
            <size>22271</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzMTU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2UxYWE3NDM2Njc4OGE1
NzNkOGJmYWQ4MDVhMTVkMDY4YWZjYTM4Yy4uYzZiZDUzZTY1NzM5YjU5NTFiNzFhZmVjMGY5YjVh
YWEyZjZkM2RkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDIxLTA5LTI4ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgRmFjdG9yIG91
dCByYXJlIG1lbWJlcnMgb2YgRm9udENyZWF0aW9uQ29udGV4dCBpbnRvIEZvbnRDcmVhdGlvbkNv
bnRleHRSYXJlRGF0YQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjMwODAwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS84MzUzODIyNz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGb250Q3JlYXRpb25Db250
ZXh0IGlzIHVzZWQgaW5zaWRlIEhhc2hNYXAga2V5cyBpbiBmb250IGNhY2hlcywgc28gd2Ugd2Fu
dCB0aGUgdHlwZSB0byBiZQorICAgICAgICBzbWFsbC4gUGFsZXR0ZXMgYW5kIGZvbnQgZmVhdHVy
ZXMgYXJlIHJhcmUsIHNvIHdlIGNhbiBtb3ZlIHRob3NlIGludG8gYSBoZWFwLWFsbG9jYXRlZAor
ICAgICAgICByYXJlIGRhdGEgb2JqZWN0LCB0aGVyZWJ5IGRlY3JlYXNpbmcgdGhlIHNpemUgb2Yg
Rm9udENyZWF0aW9uQ29udGV4dCBmb3IgbW9zdCBmb250cy4KKyAgICAgICAgSW1wb3J0YW50bHks
IGlmIHBhbGV0dGVzIGFuZCBmb250IGZlYXR1cmVzIGFyZW4ndCB1c2VkLCB0aGUgUmVmUHRyIHdp
bGwganVzdCBiZSBudWxsLCBhbmQKKyAgICAgICAgbm8gYWxsb2NhdGlvbiBpcyBwZXJmb3JtZWQu
CisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2UgdGhlcmUgaXMgbm8gYmVoYXZpb3IgY2hh
bmdlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICogY3NzL0NTU0Zv
bnRGYWNlU291cmNlLmg6CisgICAgICAgICogY3NzL0NTU1NlZ21lbnRlZEZvbnRGYWNlLmg6Cisg
ICAgICAgICogbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oOgorICAgICAgICAqIGxvYWRlci9jYWNo
ZS9DYWNoZWRGb250Lmg6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVx
dWVzdC5oOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdGb250Lmg6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9uQ29udGV4dC5oOgorICAgICAgICAoV2Vi
Q29yZTo6Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhOjpjcmVhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhOjpmb250RmFjZUZlYXR1cmVzIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6Zm9udFBh
bGV0dGVWYWx1ZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9uQ29udGV4
dFJhcmVEYXRhOjpvcGVyYXRvcj09IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVh
dGlvbkNvbnRleHRSYXJlRGF0YTo6b3BlcmF0b3IhPSBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGE6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0
YSk6CisgICAgICAgIChXZWJDb3JlOjpGb250Q3JlYXRpb25Db250ZXh0OjpGb250Q3JlYXRpb25D
b250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHQ6OmZvbnRGYWNl
RmVhdHVyZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9uQ29udGV4dDo6
Zm9udEZhY2VDYXBhYmlsaXRpZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0
aW9uQ29udGV4dDo6Zm9udFBhbGV0dGVWYWx1ZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
Rm9udENyZWF0aW9uQ29udGV4dDo6b3BlcmF0b3I9PSBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjphZGQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQYWxldHRlVmFsdWVzLmg6
CisgICAgICAgIChXZWJDb3JlOjpGb250UGFsZXR0ZVZhbHVlczo6b3BlcmF0b3IgYm9vbCBjb25z
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6YWRkQXR0cmlidXRlc0ZvckZvbnRQYWxldHRlcyk6Cisg
ICAgICAgIChXZWJDb3JlOjpwcmVwYXJlUGxhdGZvcm1Gb250KToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5oOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDYWNoZUZyZWVUeXBlLmNwcDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhRnJlZVR5cGUuY3Bw
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRh
Lmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaDoKKwogMjAyMS0w
OS0yNyAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAg
IG92ZXJyaWRlLWNvbG9yIGhhcyBiZWVuIHJlbmFtZWQgdG8gb3ZlcnJpZGUtY29sb3JzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NGb250RmFjZS5oCmluZGV4IGQ0NWMwNjIyZTc0NzE5N2JlZmNhNGMzNjYwM2Q0MGZi
ZjQxYThmNDkuLjc4OTkzZWZlZjU3YjVlNjc5OTZhZDFiZGFlZjg3NzE3ZmExNjBkZTggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NGb250RmFjZS5oCkBAIC00Nyw3ICs0Nyw3IEBAIGNsYXNzIENTU1NlZ21lbnRl
ZEZvbnRGYWNlOwogY2xhc3MgQ1NTVmFsdWU7CiBjbGFzcyBDU1NWYWx1ZUxpc3Q7CiBjbGFzcyBG
b250Q2FjaGU7Ci1zdHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlv
bkNvbnRleHQ7CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBGb250OwogY2xhc3MgRm9u
dEZhY2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2Uu
aCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNvdXJjZS5oCmluZGV4IDFmNjU3YTY2
NDUxYTBjNGNmNzE3ZjVlODBjZDEwZWEyYmY5N2Y5MDEuLjgyNjEzMzMyMmE4ZWU1ZjM3ODJmYmIy
MzEyM2IyZGQzYTU3YTE3MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250
RmFjZVNvdXJjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNvdXJjZS5o
CkBAIC0zNiw3ICszNiw3IEBAIGNsYXNzIENTU0ZvbnRGYWNlOwogY2xhc3MgQ1NTRm9udFNlbGVj
dG9yOwogY2xhc3MgRG9jdW1lbnQ7CiBjbGFzcyBGb250Owotc3RydWN0IEZvbnRDcmVhdGlvbkNv
bnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0Owogc3RydWN0IEZvbnRDdXN0b21QbGF0
Zm9ybURhdGE7CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBzdHJ1Y3QgRm9udFNlbGVjdGlvblNw
ZWNpZmllZENhcGFiaWxpdGllczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NT
ZWdtZW50ZWRGb250RmFjZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1NlZ21lbnRlZEZvbnRG
YWNlLmgKaW5kZXggOTBmM2FlYWU1Yjk0YmZiMjVhYjY2NTk1ZTkwY2U4ZTlkY2RhNWZlZS4uNWI3
ZGJlMWM5NzRkNTRkNDZlMjQwMTI4MWQyMDIyNjYyYTVmYWE1NCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1NlZ21lbnRlZEZvbnRGYWNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1NlZ21lbnRlZEZvbnRGYWNlLmgKQEAgLTM0LDcgKzM0LDcgQEAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogY2xhc3MgQ1NTRm9udFNlbGVjdG9yOwotc3RydWN0IEZvbnRDcmVhdGlvbkNv
bnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogY2xhc3MgRm9udERlc2NyaXB0aW9u
OwogY2xhc3MgRm9udFBhbGV0dGVWYWx1ZXM7CiBjbGFzcyBGb250UmFuZ2VzOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oCmluZGV4IDk1YzNlNzYwOTA4MGEwZjI4ZjI0ZGNm
ODdlZjM2NTI2NWM2ZjhhODYuLmQ4OTA1Y2UyMTM3NGYyY2VjMWUyMTQzMzk3YmZiZGUzODZlZGIx
ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0LmgKQEAgLTMyLDcgKzMy
LDcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgRm9udDsKLXN0cnVjdCBGb250Q3Jl
YXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIGNsYXNzIEZvbnREZXNj
cmlwdGlvbjsKIGNsYXNzIEZvbnRMb2FkUmVxdWVzdDsKIHN0cnVjdCBGb250U2VsZWN0aW9uU3Bl
Y2lmaWVkQ2FwYWJpbGl0aWVzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZEZvbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250
LmgKaW5kZXggZWE5MTdkYTExYzcyNjE1YmFlZDc3NmQxZGZjODc1MzFlNTE2NDM5NC4uY2ViZGM1
NTdmMTNmYzRhZmQ4Mjc1Mjk3NzRhZmQ4ZWM0YmVmNDIxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkRm9udC5oCkBAIC0zNCw3ICszNCw3IEBACiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKIGNsYXNzIENhY2hlZFJlc291cmNlTG9hZGVyOwotc3RydWN0IEZvbnRDcmVhdGlvbkNv
bnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogY2xhc3MgRm9udERlc2NyaXB0aW9u
OwogY2xhc3MgRm9udFBsYXRmb3JtRGF0YTsKIHN0cnVjdCBGb250U2VsZWN0aW9uU3BlY2lmaWVk
Q2FwYWJpbGl0aWVzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZEZvbnRMb2FkUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZEZvbnRMb2FkUmVxdWVzdC5oCmluZGV4IDEwY2ZiYTUwYjQ2YWE0NTlkN2ZiNjcwOWNlMjlmNGY1
YmE0YjRkOGQuLmI1Nzc3YzEyY2NlMzc4YWI5YjRlMWNjOTA0YjRjYjA3ZWYzNDEyN2YgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250TG9hZFJlcXVlc3Qu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1ZXN0
LmgKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdHJ1Y3QgRm9u
dENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiAKIGNsYXNzIENh
Y2hlZEZvbnRMb2FkUmVxdWVzdCBmaW5hbCA6IHB1YmxpYyBGb250TG9hZFJlcXVlc3QsIHB1Ymxp
YyBDYWNoZWRGb250Q2xpZW50IHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTVkdGb250LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU1ZHRm9udC5oCmluZGV4IDNmMGMwMTQzYzBm
OGQ5ZWIxNzgzYjBmYjYzZTIyMDc1Zjc4MjhkOWEuLjM1M2QzZGU2M2IwNjI4NjEzYWJhZjc3N2Zl
YjI1M2M1YjYyNDkwYzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRTVkdGb250LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNW
R0ZvbnQuaApAQCAtMjksNyArMjksNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLXN0cnVj
dCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIGNsYXNz
IFNWR0ZvbnRGYWNlRWxlbWVudDsKIGNsYXNzIFNldHRpbmdzOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q3JlYXRpb25Db250ZXh0LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q3JlYXRpb25Db250ZXh0LmgKaW5kZXgg
ZTkxMGI0ZDMwYTZmMjEzMGZjODU5YmM5NWY1NTI4OTAxOGE2YzAwZi4uODRiOThiMGIzZTVmNjVl
NWExZmZlMDZlZTQ3NmRlMzFkZDk1YzNiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9uQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDcmVhdGlvbkNvbnRleHQuaApAQCAtMjgsMTUgKzI4LDc5
IEBACiAjaW5jbHVkZSAiRm9udFBhbGV0dGVWYWx1ZXMuaCIKICNpbmNsdWRlICJGb250U2VsZWN0
aW9uQWxnb3JpdGhtLmgiCiAjaW5jbHVkZSAiRm9udFRhZ2dlZFNldHRpbmdzLmgiCisjaW5jbHVk
ZSA8d3RmL1BvaW50ZXJDb21wYXJpc29uLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotc3Ry
dWN0IEZvbnRDcmVhdGlvbkNvbnRleHQgeworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dFJhcmVE
YXRhIDogcHVibGljIFJlZkNvdW50ZWQ8Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhPiB7Citw
dWJsaWM6CisgICAgc3RhdGljIFJlZjxGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGE+IGNyZWF0
ZShjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVzLCBjb25zdCBGb250
UGFsZXR0ZVZhbHVlcyYgZm9udFBhbGV0dGVWYWx1ZXMpCisgICAgeworICAgICAgICByZXR1cm4g
YWRvcHRSZWYoKm5ldyBGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGEoZm9udEZhY2VGZWF0dXJl
cywgZm9udFBhbGV0dGVWYWx1ZXMpKTsKKyAgICB9CisKKyAgICBjb25zdCBGb250RmVhdHVyZVNl
dHRpbmdzJiBmb250RmFjZUZlYXR1cmVzKCkgY29uc3QKKyAgICB7CisgICAgICAgIHJldHVybiBt
X2ZvbnRGYWNlRmVhdHVyZXM7CisgICAgfQorCisgICAgY29uc3QgRm9udFBhbGV0dGVWYWx1ZXMm
IGZvbnRQYWxldHRlVmFsdWVzKCkgY29uc3QKKyAgICB7CisgICAgICAgIHJldHVybiBtX2ZvbnRQ
YWxldHRlVmFsdWVzOworICAgIH0KKworICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBGb250Q3Jl
YXRpb25Db250ZXh0UmFyZURhdGEmIG90aGVyKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJu
IG1fZm9udEZhY2VGZWF0dXJlcyA9PSBvdGhlci5tX2ZvbnRGYWNlRmVhdHVyZXMKKyAgICAgICAg
ICAgICYmIG1fZm9udFBhbGV0dGVWYWx1ZXMgPT0gb3RoZXIubV9mb250UGFsZXR0ZVZhbHVlczsK
KyAgICB9CisKKyAgICBib29sIG9wZXJhdG9yIT0oY29uc3QgRm9udENyZWF0aW9uQ29udGV4dFJh
cmVEYXRhJiBvdGhlcikgY29uc3QKKyAgICB7CisgICAgICAgIHJldHVybiAhKCp0aGlzID09IG90
aGVyKTsKKyAgICB9CisKK3ByaXZhdGU6CisgICAgRm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRh
KGNvbnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MmIGZvbnRGYWNlRmVhdHVyZXMsIGNvbnN0IEZvbnRQ
YWxldHRlVmFsdWVzJiBmb250UGFsZXR0ZVZhbHVlcykKKyAgICAgICAgOiBtX2ZvbnRGYWNlRmVh
dHVyZXMoZm9udEZhY2VGZWF0dXJlcykKKyAgICAgICAgLCBtX2ZvbnRQYWxldHRlVmFsdWVzKGZv
bnRQYWxldHRlVmFsdWVzKQorICAgIHsKKyAgICB9CisKKyAgICBGb250RmVhdHVyZVNldHRpbmdz
IG1fZm9udEZhY2VGZWF0dXJlczsKKyAgICBGb250UGFsZXR0ZVZhbHVlcyBtX2ZvbnRQYWxldHRl
VmFsdWVzOworICAgIC8vIEZJWE1FOiBBZGQgc3VwcG9ydCBmb3IgZm9udC1mZWF0dXJlLXZhbHVl
cy4KK307CisKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQgeworcHVibGljOgorICAgIEZvbnRD
cmVhdGlvbkNvbnRleHQoKSA9IGRlZmF1bHQ7CisKKyAgICBGb250Q3JlYXRpb25Db250ZXh0KGNv
bnN0IEZvbnRGZWF0dXJlU2V0dGluZ3MmIGZvbnRGYWNlRmVhdHVyZXMsIGNvbnN0IEZvbnRTZWxl
Y3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXMmIGZvbnRGYWNlQ2FwYWJpbGl0aWVzLCBjb25zdCBG
b250UGFsZXR0ZVZhbHVlcyYgZm9udFBhbGV0dGVWYWx1ZXMpCisgICAgICAgIDogbV9mb250RmFj
ZUNhcGFiaWxpdGllcyhmb250RmFjZUNhcGFiaWxpdGllcykKKyAgICB7CisgICAgICAgIGlmICgh
Zm9udEZhY2VGZWF0dXJlcy5pc0VtcHR5KCkgfHwgZm9udFBhbGV0dGVWYWx1ZXMpCisgICAgICAg
ICAgICBtX3JhcmVEYXRhID0gRm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhOjpjcmVhdGUoZm9u
dEZhY2VGZWF0dXJlcywgZm9udFBhbGV0dGVWYWx1ZXMpOworICAgIH0KKworICAgIGNvbnN0IEZv
bnRGZWF0dXJlU2V0dGluZ3MqIGZvbnRGYWNlRmVhdHVyZXMoKSBjb25zdAorICAgIHsKKyAgICAg
ICAgcmV0dXJuIG1fcmFyZURhdGEgPyAmbV9yYXJlRGF0YS0+Zm9udEZhY2VGZWF0dXJlcygpIDog
bnVsbHB0cjsKKyAgICB9CisKKyAgICBjb25zdCBGb250U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJp
bGl0aWVzJiBmb250RmFjZUNhcGFiaWxpdGllcygpIGNvbnN0CisgICAgeworICAgICAgICByZXR1
cm4gbV9mb250RmFjZUNhcGFiaWxpdGllczsKKyAgICB9CisgICAgY29uc3QgRm9udFBhbGV0dGVW
YWx1ZXMqIGZvbnRQYWxldHRlVmFsdWVzKCkgY29uc3QKKyAgICB7CisgICAgICAgIHJldHVybiBt
X3JhcmVEYXRhID8gJm1fcmFyZURhdGEtPmZvbnRQYWxldHRlVmFsdWVzKCkgOiBudWxscHRyOwor
ICAgIH0KKwogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBGb250Q3JlYXRpb25Db250ZXh0JiBv
dGhlcikgY29uc3QKICAgICB7Ci0gICAgICAgIHJldHVybiBmb250RmFjZUZlYXR1cmVzID09IG90
aGVyLmZvbnRGYWNlRmVhdHVyZXMKLSAgICAgICAgICAgICYmIGZvbnRGYWNlQ2FwYWJpbGl0aWVz
ID09IG90aGVyLmZvbnRGYWNlQ2FwYWJpbGl0aWVzCi0gICAgICAgICAgICAmJiBmb250UGFsZXR0
ZVZhbHVlcyA9PSBvdGhlci5mb250UGFsZXR0ZVZhbHVlczsKKyAgICAgICAgcmV0dXJuIG1fZm9u
dEZhY2VDYXBhYmlsaXRpZXMgPT0gb3RoZXIubV9mb250RmFjZUNhcGFiaWxpdGllcworICAgICAg
ICAgICAgJiYgYXJlUG9pbnRpbmdUb0VxdWFsRGF0YShtX3JhcmVEYXRhLCBvdGhlci5tX3JhcmVE
YXRhKTsKICAgICB9CiAKICAgICBib29sIG9wZXJhdG9yIT0oY29uc3QgRm9udENyZWF0aW9uQ29u
dGV4dCYgb3RoZXIpIGNvbnN0CkBAIC00NCwxNyArMTA4LDE4IEBAIHN0cnVjdCBGb250Q3JlYXRp
b25Db250ZXh0IHsKICAgICAgICAgcmV0dXJuICEoKnRoaXMgPT0gb3RoZXIpOwogICAgIH0KIAot
ICAgIEZvbnRGZWF0dXJlU2V0dGluZ3MgZm9udEZhY2VGZWF0dXJlczsKLSAgICBGb250U2VsZWN0
aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzIGZvbnRGYWNlQ2FwYWJpbGl0aWVzOwotICAgIEZvbnRQ
YWxldHRlVmFsdWVzIGZvbnRQYWxldHRlVmFsdWVzOwotICAgIC8vIEZJWE1FOiBBZGQgc3VwcG9y
dCBmb3IgZm9udC1mZWF0dXJlLXZhbHVlcy4KK3ByaXZhdGU6CisgICAgRm9udFNlbGVjdGlvblNw
ZWNpZmllZENhcGFiaWxpdGllcyBtX2ZvbnRGYWNlQ2FwYWJpbGl0aWVzOworICAgIFJlZlB0cjxG
b250Q3JlYXRpb25Db250ZXh0UmFyZURhdGE+IG1fcmFyZURhdGE7CiB9OwogCiBpbmxpbmUgdm9p
ZCBhZGQoSGFzaGVyJiBoYXNoZXIsIGNvbnN0IEZvbnRDcmVhdGlvbkNvbnRleHQmIGZvbnRDcmVh
dGlvbkNvbnRleHQpCiB7Ci0gICAgYWRkKGhhc2hlciwgZm9udENyZWF0aW9uQ29udGV4dC5mb250
RmFjZUZlYXR1cmVzKTsKLSAgICBhZGQoaGFzaGVyLCBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRG
YWNlQ2FwYWJpbGl0aWVzLnRpZWQoKSk7Ci0gICAgYWRkKGhhc2hlciwgZm9udENyZWF0aW9uQ29u
dGV4dC5mb250UGFsZXR0ZVZhbHVlcyk7CisgICAgaWYgKGZvbnRDcmVhdGlvbkNvbnRleHQuZm9u
dEZhY2VGZWF0dXJlcygpKQorICAgICAgICBhZGQoaGFzaGVyLCAqZm9udENyZWF0aW9uQ29udGV4
dC5mb250RmFjZUZlYXR1cmVzKCkpOworICAgIGFkZChoYXNoZXIsIGZvbnRDcmVhdGlvbkNvbnRl
eHQuZm9udEZhY2VDYXBhYmlsaXRpZXMoKS50aWVkKCkpOworICAgIGlmIChmb250Q3JlYXRpb25D
b250ZXh0LmZvbnRQYWxldHRlVmFsdWVzKCkpCisgICAgICAgIGFkZChoYXNoZXIsICpmb250Q3Jl
YXRpb25Db250ZXh0LmZvbnRQYWxldHRlVmFsdWVzKCkpOwogfQogCiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250UGFsZXR0ZVZhbHVlcy5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFBhbGV0dGVWYWx1ZXMuaAppbmRleCA3
NmY3ODU4NDQ4NzMzOTcyYmUxODJlZTQ1MWNmYjNlZDk0Mzk5MTI0Li5iODU0MGVlM2RjOWM4ZWI5
MGNjMGE2YzA2ZWIxN2VlZThlMmFjM2QzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9Gb250UGFsZXR0ZVZhbHVlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0ZvbnRQYWxldHRlVmFsdWVzLmgKQEAgLTU4LDYgKzU4LDE1IEBAIHB1
YmxpYzoKICAgICAgICAgcmV0dXJuIG1fb3ZlcnJpZGVDb2xvcnM7CiAgICAgfQogCisgICAgb3Bl
cmF0b3IgYm9vbCgpIGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4gV1RGOjpzd2l0Y2hPbiht
X2Jhc2VQYWxldHRlLCBbXSAoaW50NjRfdCkgeworICAgICAgICAgICAgcmV0dXJuIHRydWU7Cisg
ICAgICAgIH0sIFtdIChjb25zdCBBdG9tU3RyaW5nJiBzdHJpbmcpIHsKKyAgICAgICAgICAgIHJl
dHVybiAhc3RyaW5nLmlzTnVsbCgpOworICAgICAgICB9KSB8fCAhbV9vdmVycmlkZUNvbG9ycy5p
c0VtcHR5KCk7CisgICAgfQorCiAgICAgYm9vbCBvcGVyYXRvcj09KGNvbnN0IEZvbnRQYWxldHRl
VmFsdWVzJiBvdGhlcikgY29uc3QKICAgICB7CiAgICAgICAgIHJldHVybiBtX2Jhc2VQYWxldHRl
ID09IG90aGVyLm1fYmFzZVBhbGV0dGUgJiYgbV9vdmVycmlkZUNvbG9ycyA9PSBvdGhlci5tX292
ZXJyaWRlQ29sb3JzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2Fpcm8vRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2Fpcm8vRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oCmluZGV4IGZiMDhjYTY4
YjdmZjJjZjIyYzcyMjllZThmMDJlYzk5ZGQ2YjgxZTYuLmRiNDU3YTgxZDNlZTgyOTFiOTA1ZTli
YTc3YzFlMmFmMzA5ZTBjYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NhaXJvL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmgKQEAgLTMx
LDcgKzMxLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgRlRfRmFjZVJlY18qICBGVF9GYWNlOwogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKLXN0cnVjdCBGb250Q3JlYXRpb25Db250ZXh0OworY2xhc3MgRm9u
dENyZWF0aW9uQ29udGV4dDsKIGNsYXNzIEZvbnREZXNjcmlwdGlvbjsKIGNsYXNzIEZvbnRQbGF0
Zm9ybURhdGE7CiBjbGFzcyBTaGFyZWRCdWZmZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAKaW5k
ZXggYzMwMzMwN2RkYzM3MjUzNzZhYzM1MzAwMjFhNGQ5N2FlZWE4YWNlZC4uOTk2ZWE0NWRmMzEy
ZTM1OTRlYjE1OWU5OTM0NWU2MjliNmUzNjBiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcApA
QCAtNDQzLDcgKzQ0Myw3IEBAIHN0cnVjdCBGb250VHlwZSB7CiAgICAgYm9vbCBhYXRTaGFwaW5n
IHsgZmFsc2UgfTsKIH07CiAKLXN0YXRpYyB2b2lkIGFkZEF0dHJpYnV0ZXNGb3JGb250UGFsZXR0
ZXMoQ0ZNdXRhYmxlRGljdGlvbmFyeVJlZiBhdHRyaWJ1dGVzLCBjb25zdCBGb250UGFsZXR0ZSYg
Zm9udFBhbGV0dGUsIGNvbnN0IEZvbnRQYWxldHRlVmFsdWVzJiBmb250UGFsZXR0ZVZhbHVlcykK
K3N0YXRpYyB2b2lkIGFkZEF0dHJpYnV0ZXNGb3JGb250UGFsZXR0ZXMoQ0ZNdXRhYmxlRGljdGlv
bmFyeVJlZiBhdHRyaWJ1dGVzLCBjb25zdCBGb250UGFsZXR0ZSYgZm9udFBhbGV0dGUsIGNvbnN0
IEZvbnRQYWxldHRlVmFsdWVzKiBmb250UGFsZXR0ZVZhbHVlcykKIHsKICAgICBzd2l0Y2ggKGZv
bnRQYWxldHRlLnR5cGUpIHsKICAgICBjYXNlIEZvbnRQYWxldHRlOjpUeXBlOjpOb25lOgpAQCAt
NDY0LDE1ICs0NjQsMTcgQEAgc3RhdGljIHZvaWQgYWRkQXR0cmlidXRlc0ZvckZvbnRQYWxldHRl
cyhDRk11dGFibGVEaWN0aW9uYXJ5UmVmIGF0dHJpYnV0ZXMsIGNvbnMKICAgICAgICAgYnJlYWs7
CiAgICAgfQogICAgIGNhc2UgRm9udFBhbGV0dGU6OlR5cGU6OkN1c3RvbTogewotICAgICAgICBX
VEY6OnN3aXRjaE9uKGZvbnRQYWxldHRlVmFsdWVzLmJhc2VQYWxldHRlKCksIFsmXShpbnQ2NF90
IGluZGV4KSB7CisgICAgICAgIGlmICghZm9udFBhbGV0dGVWYWx1ZXMpCisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgV1RGOjpzd2l0Y2hPbihmb250UGFsZXR0ZVZhbHVlcy0+YmFzZVBhbGV0
dGUoKSwgWyZdKGludDY0X3QgaW5kZXgpIHsKICAgICAgICAgICAgIGF1dG8gbnVtYmVyID0gYWRv
cHRDRihDRk51bWJlckNyZWF0ZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBrQ0ZOdW1iZXJDRkluZGV4
VHlwZSwgJmluZGV4KSk7CiAgICAgICAgICAgICBDRkRpY3Rpb25hcnlBZGRWYWx1ZShhdHRyaWJ1
dGVzLCBrQ1RGb250UGFsZXR0ZUF0dHJpYnV0ZSwgbnVtYmVyLmdldCgpKTsKICAgICAgICAgfSwg
W10oY29uc3QgQXRvbVN0cmluZyYpIHsKICAgICAgICAgICAgIC8vIFRoaXMgaXMgdW5pbXBsZW1l
bnRhYmxlIGluIENvcmUgVGV4dC4KICAgICAgICAgfSk7Ci0gICAgICAgIGlmICghZm9udFBhbGV0
dGVWYWx1ZXMub3ZlcnJpZGVDb2xvcnMoKS5pc0VtcHR5KCkpIHsKKyAgICAgICAgaWYgKCFmb250
UGFsZXR0ZVZhbHVlcy0+b3ZlcnJpZGVDb2xvcnMoKS5pc0VtcHR5KCkpIHsKICAgICAgICAgICAg
IGF1dG8gb3ZlcnJpZGVEaWN0aW9uYXJ5ID0gYWRvcHRDRihDRkRpY3Rpb25hcnlDcmVhdGVNdXRh
YmxlKGtDRkFsbG9jYXRvckRlZmF1bHQsIDAsICZrQ0ZUeXBlRGljdGlvbmFyeUtleUNhbGxCYWNr
cywgJmtDRlR5cGVEaWN0aW9uYXJ5VmFsdWVDYWxsQmFja3MpKTsKLSAgICAgICAgICAgIGZvciAo
Y29uc3QgYXV0byYgcGFpciA6IGZvbnRQYWxldHRlVmFsdWVzLm92ZXJyaWRlQ29sb3JzKCkpIHsK
KyAgICAgICAgICAgIGZvciAoY29uc3QgYXV0byYgcGFpciA6IGZvbnRQYWxldHRlVmFsdWVzLT5v
dmVycmlkZUNvbG9ycygpKSB7CiAgICAgICAgICAgICAgICAgY29uc3QgYXV0byYgcGFsZXR0ZUNv
bG9ySW5kZXggPSBwYWlyLmZpcnN0OwogICAgICAgICAgICAgICAgIGNvbnN0IGF1dG8mIGNvbG9y
ID0gcGFpci5zZWNvbmQ7CiAgICAgICAgICAgICAgICAgV1RGOjpzd2l0Y2hPbihwYWxldHRlQ29s
b3JJbmRleCwgW10oY29uc3QgQXRvbVN0cmluZyYpIHsKQEAgLTUyMCw3ICs1MjIsNyBAQCBSZXRh
aW5QdHI8Q1RGb250UmVmPiBwcmVwYXJlUGxhdGZvcm1Gb250KENURm9udFJlZiBvcmlnaW5hbEZv
bnQsIGNvbnN0IEZvbnREZXNjcgogICAgIGJvb2wgdGV4dFJlbmRlcmluZ01vZGVJc0F1dG8gPSB0
ZXh0UmVuZGVyaW5nTW9kZSA9PSBUZXh0UmVuZGVyaW5nTW9kZTo6QXV0b1RleHRSZW5kZXJpbmc7
CiAgICAgYm9vbCB2YXJpYW50U2V0dGluZ3NJc05vcm1hbCA9IHZhcmlhbnRTZXR0aW5ncy5pc0Fs
bE5vcm1hbCgpOwogICAgIGJvb2wgZG9udE5lZWRUb0FwcGx5T3B0aWNhbFNpemluZyA9IGZvbnRP
cHRpY2FsU2l6aW5nID09IEZvbnRPcHRpY2FsU2l6aW5nOjpFbmFibGVkICYmICFmb3JjZU9wdGlj
YWxTaXppbmdPbjsKLSAgICBib29sIGZvbnRGYWNlRG9lc250U3BlY2lmeUZlYXR1cmVzID0gZm9u
dENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzLmlzRW1wdHkoKTsKKyAgICBib29sIGZv
bnRGYWNlRG9lc250U3BlY2lmeUZlYXR1cmVzID0gIWZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZh
Y2VGZWF0dXJlcygpIHx8IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcygpLT5p
c0VtcHR5KCk7CiAgICAgaWYgKG5vRm9udEZlYXR1cmVTZXR0aW5ncyAmJiBub0ZvbnRWYXJpYXRp
b25TZXR0aW5ncyAmJiB0ZXh0UmVuZGVyaW5nTW9kZUlzQXV0byAmJiB2YXJpYW50U2V0dGluZ3NJ
c05vcm1hbCAmJiBkb250TmVlZFRvQXBwbHlPcHRpY2FsU2l6aW5nICYmIGZvbnRGYWNlRG9lc250
U3BlY2lmeUZlYXR1cmVzICYmICFzaG91bGREaXNhYmxlTGlnYXR1cmVzRm9yU3BhY2luZyAmJiBk
b250TmVlZFRvQXBwbHlGb250UGFsZXR0ZXMpIHsKICNpZiBIQVZFKENURk9OVENSRUFURUZPUkNI
QVJBQ1RFUlNXSVRITEFOR1VBR0VBTkRPUFRJT04pCiAgICAgICAgIHJldHVybiBvcmlnaW5hbEZv
bnQ7CkBAIC01NjYsMTEgKzU2OCwxMSBAQCBSZXRhaW5QdHI8Q1RGb250UmVmPiBwcmVwYXJlUGxh
dGZvcm1Gb250KENURm9udFJlZiBvcmlnaW5hbEZvbnQsIGNvbnN0IEZvbnREZXNjcgogICAgICAg
ICBmbG9hdCB3ZWlnaHQgPSBmb250U2VsZWN0aW9uUmVxdWVzdC53ZWlnaHQ7CiAgICAgICAgIGZs
b2F0IHdpZHRoID0gZm9udFNlbGVjdGlvblJlcXVlc3Qud2lkdGg7CiAgICAgICAgIGZsb2F0IHNs
b3BlID0gZm9udFNlbGVjdGlvblJlcXVlc3Quc2xvcGUudmFsdWVfb3Iobm9ybWFsSXRhbGljVmFs
dWUoKSk7Ci0gICAgICAgIGlmIChhdXRvIHdlaWdodFZhbHVlID0gZm9udENyZWF0aW9uQ29udGV4
dC5mb250RmFjZUNhcGFiaWxpdGllcy53ZWlnaHQpCisgICAgICAgIGlmIChhdXRvIHdlaWdodFZh
bHVlID0gZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUNhcGFiaWxpdGllcygpLndlaWdodCkK
ICAgICAgICAgICAgIHdlaWdodCA9IHN0ZDo6bWF4KHN0ZDo6bWluKHdlaWdodCwgc3RhdGljX2Nh
c3Q8ZmxvYXQ+KHdlaWdodFZhbHVlLT5tYXhpbXVtKSksIHN0YXRpY19jYXN0PGZsb2F0Pih3ZWln
aHRWYWx1ZS0+bWluaW11bSkpOwotICAgICAgICBpZiAoYXV0byB3aWR0aFZhbHVlID0gZm9udENy
ZWF0aW9uQ29udGV4dC5mb250RmFjZUNhcGFiaWxpdGllcy53aWR0aCkKKyAgICAgICAgaWYgKGF1
dG8gd2lkdGhWYWx1ZSA9IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VDYXBhYmlsaXRpZXMo
KS53aWR0aCkKICAgICAgICAgICAgIHdpZHRoID0gc3RkOjptYXgoc3RkOjptaW4od2lkdGgsIHN0
YXRpY19jYXN0PGZsb2F0Pih3aWR0aFZhbHVlLT5tYXhpbXVtKSksIHN0YXRpY19jYXN0PGZsb2F0
Pih3aWR0aFZhbHVlLT5taW5pbXVtKSk7Ci0gICAgICAgIGlmIChhdXRvIHNsb3BlVmFsdWUgPSBm
b250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlQ2FwYWJpbGl0aWVzLndlaWdodCkKKyAgICAgICAg
aWYgKGF1dG8gc2xvcGVWYWx1ZSA9IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VDYXBhYmls
aXRpZXMoKS53ZWlnaHQpCiAgICAgICAgICAgICBzbG9wZSA9IHN0ZDo6bWF4KHN0ZDo6bWluKHNs
b3BlLCBzdGF0aWNfY2FzdDxmbG9hdD4oc2xvcGVWYWx1ZS0+bWF4aW11bSkpLCBzdGF0aWNfY2Fz
dDxmbG9hdD4oc2xvcGVWYWx1ZS0+bWluaW11bSkpOwogICAgICAgICBpZiAobmVlZHNDb252ZXJz
aW9uKSB7CiAgICAgICAgICAgICB3ZWlnaHQgPSBkZW5vcm1hbGl6ZVdlaWdodCh3ZWlnaHQpOwpA
QCAtNTkwLDggKzU5Miw4IEBAIFJldGFpblB0cjxDVEZvbnRSZWY+IHByZXBhcmVQbGF0Zm9ybUZv
bnQoQ1RGb250UmVmIG9yaWdpbmFsRm9udCwgY29uc3QgRm9udERlc2NyCiAgICAgLy8gRklYTUU6
IEltcGxlbWVudCBTdGVwIDY6IHRoZSBmb250LXZhcmlhdGlvbi1zZXR0aW5ncyBkZXNjcmlwdG9y
IGluc2lkZSBAZm9udC1mYWNlCiAKICAgICAvLyBTdGVwIDc6IENvbnN1bHQgd2l0aCBmb250LWZl
YXR1cmUtc2V0dGluZ3MgaW5zaWRlIEBmb250LWZhY2UKLSAgICBpZiAoIWZvbnRDcmVhdGlvbkNv
bnRleHQuZm9udEZhY2VGZWF0dXJlcy5pc0VtcHR5KCkpIHsKLSAgICAgICAgZm9yIChhdXRvJiBm
b250RmFjZUZlYXR1cmUgOiBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMpCisg
ICAgaWYgKGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcygpICYmICFmb250Q3Jl
YXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKS0+aXNFbXB0eSgpKSB7CisgICAgICAgIGZv
ciAoYXV0byYgZm9udEZhY2VGZWF0dXJlIDogKmZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VG
ZWF0dXJlcygpKQogICAgICAgICAgICAgYXBwbHlGZWF0dXJlKGZvbnRGYWNlRmVhdHVyZS50YWco
KSwgZm9udEZhY2VGZWF0dXJlLnZhbHVlKCkpOwogICAgIH0KIApAQCAtNjcxLDcgKzY3Myw3IEBA
IFJldGFpblB0cjxDVEZvbnRSZWY+IHByZXBhcmVQbGF0Zm9ybUZvbnQoQ1RGb250UmVmIG9yaWdp
bmFsRm9udCwgY29uc3QgRm9udERlc2NyCiAjZW5kaWYKICAgICB9CiAKLSAgICBhZGRBdHRyaWJ1
dGVzRm9yRm9udFBhbGV0dGVzKGF0dHJpYnV0ZXMuZ2V0KCksIGZvbnREZXNjcmlwdGlvbi5mb250
UGFsZXR0ZSgpLCBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRQYWxldHRlVmFsdWVzKTsKKyAgICBh
ZGRBdHRyaWJ1dGVzRm9yRm9udFBhbGV0dGVzKGF0dHJpYnV0ZXMuZ2V0KCksIGZvbnREZXNjcmlw
dGlvbi5mb250UGFsZXR0ZSgpLCBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRQYWxldHRlVmFsdWVz
KCkpOwogCiAgICAgYWRkQXR0cmlidXRlc0Zvckluc3RhbGxlZEZvbnRzKGF0dHJpYnV0ZXMuZ2V0
KCksIGZvbnREZXNjcmlwdGlvbi5zaG91bGRBbGxvd1VzZXJJbnN0YWxsZWRGb250cygpKTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENh
Y2hlQ29yZVRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0Zv
bnRDYWNoZUNvcmVUZXh0LmgKaW5kZXggODljNmNiZjMzODVlZGU4MTM5YTQ4MzQzZjM3ZGU2Nzk2
M2NkM2Q5Mi4uN2RmMDJlYjE4YmY0Yjg5NWJjNDk0MGJiMzY4MzBiZjM4Yjc3Mzc4ZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29y
ZVRleHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250
Q2FjaGVDb3JlVGV4dC5oCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAotc3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0
OwogCiBzdHJ1Y3QgU3ludGhlc2lzUGFpciB7CiAgICAgZXhwbGljaXQgU3ludGhlc2lzUGFpcihi
b29sIG5lZWRzU3ludGhldGljQm9sZCwgYm9vbCBuZWVkc1N5bnRoZXRpY09ibGlxdWUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q2Fj
aGVGcmVlVHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlw
ZS9Gb250Q2FjaGVGcmVlVHlwZS5jcHAKaW5kZXggN2MwOWQ5YjIwNTc4YmQ5ZWRlZDZkMjkwNzNl
MWJjNzZiMTdkOTZiZS4uNjYxZGVkNzRmOWI5ODc3NmZiMmY4Y2UyOGY3NmVkMzFkMGMzYWQ4NyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9u
dENhY2hlRnJlZVR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZyZWV0eXBlL0ZvbnRDYWNoZUZyZWVUeXBlLmNwcApAQCAtNTczLDggKzU3Myw4IEBAIHN0ZDo6
dW5pcXVlX3B0cjxGb250UGxhdGZvcm1EYXRhPiBGb250Q2FjaGU6OmNyZWF0ZUZvbnRQbGF0Zm9y
bURhdGEoY29uc3QgRm9udERlCiAgICAgYm9vbCBmaXhlZFdpZHRoLCBzeW50aGV0aWNCb2xkLCBz
eW50aGV0aWNPYmxpcXVlOwogICAgIGdldEZvbnRQcm9wZXJ0aWVzRnJvbVBhdHRlcm4ocmVzdWx0
UGF0dGVybi5nZXQoKSwgZm9udERlc2NyaXB0aW9uLCBmaXhlZFdpZHRoLCBzeW50aGV0aWNCb2xk
LCBzeW50aGV0aWNPYmxpcXVlKTsKIAotICAgIGlmICghZm9udENyZWF0aW9uQ29udGV4dC5mb250
RmFjZUZlYXR1cmVzLmlzRW1wdHkoKSkgewotICAgICAgICBmb3IgKGF1dG8mIGZvbnRGYWNlRmVh
dHVyZSA6IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcykgeworICAgIGlmIChm
b250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKSAmJiAhZm9udENyZWF0aW9uQ29u
dGV4dC5mb250RmFjZUZlYXR1cmVzKCktPmlzRW1wdHkoKSkgeworICAgICAgICBmb3IgKGF1dG8m
IGZvbnRGYWNlRmVhdHVyZSA6ICpmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMo
KSkgewogICAgICAgICAgICAgaWYgKGZvbnRGYWNlRmVhdHVyZS5lbmFibGVkKCkpIHsKICAgICAg
ICAgICAgICAgICBjb25zdCBhdXRvJiB0YWcgPSBmb250RmFjZUZlYXR1cmUudGFnKCk7CiAgICAg
ICAgICAgICAgICAgY29uc3QgY2hhciBidWZmZXJbXSA9IHsgdGFnWzBdLCB0YWdbMV0sIHRhZ1sy
XSwgdGFnWzNdLCAnXDAnIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9mcmVldHlwZS9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhRnJlZVR5cGUuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udEN1c3RvbVBsYXRmb3Jt
RGF0YUZyZWVUeXBlLmNwcAppbmRleCBiNjljNTU0OTJkNzg1OGNkZTJlMjlhNTdiMmEwMzQ2YmEy
Mjg0NTU2Li41MDZiNGRkNjJkNTVhNTZhMjc4YzMwY2NhYjJkMTkxMTBmMjQxZWVjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q3VzdG9t
UGxhdGZvcm1EYXRhRnJlZVR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2ZyZWV0eXBlL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGFGcmVlVHlwZS5jcHAKQEAgLTgx
LDExICs4MSwxMyBAQCBGb250UGxhdGZvcm1EYXRhIEZvbnRDdXN0b21QbGF0Zm9ybURhdGE6OmZv
bnRQbGF0Zm9ybURhdGEoY29uc3QgRm9udERlc2NyaXB0aW9uJgogICAgIFJlZlB0cjxGY1BhdHRl
cm4+IHBhdHRlcm4gPSBkZWZhdWx0Rm9udGNvbmZpZ09wdGlvbnMoKTsKICAgICBGY1BhdHRlcm5B
ZGRTdHJpbmcocGF0dGVybi5nZXQoKSwgRkNfRkFNSUxZLCByZWludGVycHJldF9jYXN0PGNvbnN0
IEZjQ2hhcjgqPihmcmVlVHlwZUZhY2UtPmZhbWlseV9uYW1lKSk7CiAKLSAgICBmb3IgKGF1dG8m
IGZvbnRGYWNlRmVhdHVyZSA6IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcykg
ewotICAgICAgICBpZiAoZm9udEZhY2VGZWF0dXJlLmVuYWJsZWQoKSkgewotICAgICAgICAgICAg
Y29uc3QgYXV0byYgdGFnID0gZm9udEZhY2VGZWF0dXJlLnRhZygpOwotICAgICAgICAgICAgY29u
c3QgY2hhciBidWZmZXJbXSA9IHsgdGFnWzBdLCB0YWdbMV0sIHRhZ1syXSwgdGFnWzNdLCAnXDAn
IH07Ci0gICAgICAgICAgICBGY1BhdHRlcm5BZGRTdHJpbmcocGF0dGVybi5nZXQoKSwgRkNfRk9O
VF9GRUFUVVJFUywgcmVpbnRlcnByZXRfY2FzdDxjb25zdCBGY0NoYXI4Kj4oYnVmZmVyKSk7Cisg
ICAgaWYgKGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcygpKSB7CisgICAgICAg
IGZvciAoYXV0byYgZm9udEZhY2VGZWF0dXJlIDogKmZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZh
Y2VGZWF0dXJlcygpKSB7CisgICAgICAgICAgICBpZiAoZm9udEZhY2VGZWF0dXJlLmVuYWJsZWQo
KSkgeworICAgICAgICAgICAgICAgIGNvbnN0IGF1dG8mIHRhZyA9IGZvbnRGYWNlRmVhdHVyZS50
YWcoKTsKKyAgICAgICAgICAgICAgICBjb25zdCBjaGFyIGJ1ZmZlcltdID0geyB0YWdbMF0sIHRh
Z1sxXSwgdGFnWzJdLCB0YWdbM10sICdcMCcgfTsKKyAgICAgICAgICAgICAgICBGY1BhdHRlcm5B
ZGRTdHJpbmcocGF0dGVybi5nZXQoKSwgRkNfRk9OVF9GRUFUVVJFUywgcmVpbnRlcnByZXRfY2Fz
dDxjb25zdCBGY0NoYXI4Kj4oYnVmZmVyKSk7CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAg
ICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9G
b250Q3VzdG9tUGxhdGZvcm1EYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9tYWMvRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oCmluZGV4IDdhNmQwYTFlNGI3OGI5YTcwYjgy
NWM4MzM5YzlmNDhlMDkwNDNjYmEuLjcxOGI5YmQzMTVlY2M2NzA3ODljNjVjYmFhYTAzNDkyOTc1
ZTcyZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9G
b250Q3VzdG9tUGxhdGZvcm1EYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaApAQCAtMzMsNyArMzMsNyBAQCB0eXBl
ZGVmIGNvbnN0IHN0cnVjdCBfX0NURm9udERlc2NyaXB0b3IqIENURm9udERlc2NyaXB0b3JSZWY7
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotc3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7Citj
bGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogc3RydWN0
IEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXM7CiBjbGFzcyBTaGFyZWRCdWZmZXI7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW4vRm9udEN1
c3RvbVBsYXRmb3JtRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2lu
L0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaAppbmRleCAyYjkyMWM0NjJkODdiMDI3MGFhMzBmMWNl
MWI5N2JlMzk4NGRkMTg0Li41ZjEwZjczOTJkMDRjMzQ0ZDEyY2VlNDI2NmVkYjFlZTk5NzFjNGVm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW4vRm9udEN1
c3RvbVBsYXRmb3JtRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3dpbi9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmgKQEAgLTM2LDcgKzM2LDcgQEAgdHlwZWRlZiBz
dHJ1Y3QgQ0dGb250KiBDR0ZvbnRSZWY7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotc3RydWN0
IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogY2xhc3Mg
Rm9udERlc2NyaXB0aW9uOwogY2xhc3MgRm9udE1lbW9yeVJlc291cmNlOwogY2xhc3MgU2hhcmVk
QnVmZmVyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9h
ZFJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRSZXF1ZXN0
LmgKaW5kZXggNmE2YzA1OGUyMGUzZmU5NWNmMzEzNjE1N2M1MDYyMTQ3OGI3YmIyYy4uYjlmY2Zi
MWQ2ZmVhOGFkNWU3ODBiZGVlYmM1YzZlMDRhMWU4NjNjNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oCkBAIC0zNCw3ICszNCw3IEBACiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotc3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBG
b250Q3JlYXRpb25Db250ZXh0OwogY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKIGNsYXNz
IFNoYXJlZEJ1ZmZlcjsKIGNsYXNzIFdvcmtlckdsb2JhbFNjb3BlOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>439528</attachid>
            <date>2021-09-28 15:16:33 -0700</date>
            <delta_ts>2021-09-28 19:47:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230800-20210928151632.patch</filename>
            <type>text/plain</type>
            <size>22417</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzMTk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjkyMzY4NGIyYTY0YWE4
NWFmYmM1ZDRhYjZjZDNkNDIzZWZmYjIwNi4uN2MxYWE4MTFmMGE5ZmI3ZmM5ZjhlZTdlMzQ5ZjIz
NDcwYzA3NDkwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDIxLTA5LTI4ICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgRmFjdG9yIG91
dCByYXJlIG1lbWJlcnMgb2YgRm9udENyZWF0aW9uQ29udGV4dCBpbnRvIEZvbnRDcmVhdGlvbkNv
bnRleHRSYXJlRGF0YQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjMwODAwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS84MzUzODIyNz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGb250Q3JlYXRpb25Db250
ZXh0IGlzIHVzZWQgaW5zaWRlIEhhc2hNYXAga2V5cyBpbiBmb250IGNhY2hlcywgc28gd2Ugd2Fu
dCB0aGUgdHlwZSB0byBiZQorICAgICAgICBzbWFsbC4gUGFsZXR0ZXMgYW5kIGZvbnQgZmVhdHVy
ZXMgYXJlIHJhcmUsIHNvIHdlIGNhbiBtb3ZlIHRob3NlIGludG8gYSBoZWFwLWFsbG9jYXRlZAor
ICAgICAgICByYXJlIGRhdGEgb2JqZWN0LCB0aGVyZWJ5IGRlY3JlYXNpbmcgdGhlIHNpemUgb2Yg
Rm9udENyZWF0aW9uQ29udGV4dCBmb3IgbW9zdCBmb250cy4KKyAgICAgICAgSW1wb3J0YW50bHks
IGlmIHBhbGV0dGVzIGFuZCBmb250IGZlYXR1cmVzIGFyZW4ndCB1c2VkLCB0aGUgUmVmUHRyIHdp
bGwganVzdCBiZSBudWxsLCBhbmQKKyAgICAgICAgbm8gYWxsb2NhdGlvbiBpcyBwZXJmb3JtZWQu
CisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGJlY2F1c2UgdGhlcmUgaXMgbm8gYmVoYXZpb3IgY2hh
bmdlLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlLmg6CisgICAgICAgICogY3NzL0NTU0Zv
bnRGYWNlU291cmNlLmg6CisgICAgICAgICogY3NzL0NTU1NlZ21lbnRlZEZvbnRGYWNlLmg6Cisg
ICAgICAgICogbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oOgorICAgICAgICAqIGxvYWRlci9jYWNo
ZS9DYWNoZWRGb250Lmg6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVx
dWVzdC5oOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdGb250Lmg6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9uQ29udGV4dC5oOgorICAgICAgICAoV2Vi
Q29yZTo6Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhOjpjcmVhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhOjpmb250RmFjZUZlYXR1cmVzIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6Zm9udFBh
bGV0dGVWYWx1ZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9uQ29udGV4
dFJhcmVEYXRhOjpvcGVyYXRvcj09IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVh
dGlvbkNvbnRleHRSYXJlRGF0YTo6b3BlcmF0b3IhPSBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpGb250Q3JlYXRpb25Db250ZXh0UmFyZURhdGE6OkZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0
YSk6CisgICAgICAgIChXZWJDb3JlOjpGb250Q3JlYXRpb25Db250ZXh0OjpGb250Q3JlYXRpb25D
b250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDcmVhdGlvbkNvbnRleHQ6OmZvbnRGYWNl
RmVhdHVyZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0aW9uQ29udGV4dDo6
Zm9udEZhY2VDYXBhYmlsaXRpZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENyZWF0
aW9uQ29udGV4dDo6Zm9udFBhbGV0dGVWYWx1ZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
Rm9udENyZWF0aW9uQ29udGV4dDo6b3BlcmF0b3I9PSBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjphZGQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQYWxldHRlVmFsdWVzLmg6
CisgICAgICAgIChXZWJDb3JlOjpGb250UGFsZXR0ZVZhbHVlczo6b3BlcmF0b3IgYm9vbCBjb25z
dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6YWRkQXR0cmlidXRlc0ZvckZvbnRQYWxldHRlcyk6Cisg
ICAgICAgIChXZWJDb3JlOjpwcmVwYXJlUGxhdGZvcm1Gb250KToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5oOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDYWNoZUZyZWVUeXBlLmNwcDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhRnJlZVR5cGUuY3Bw
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRh
Lmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaDoKKwogMjAyMS0w
OS0yOCAgQ2FtZXJvbiBNY0Nvcm1hY2sgIDxoZXljYW1AYXBwbGUuY29tPgogCiAgICAgICAgIFBy
ZXNlcnZlIGNvbG9yIHNwYWNlIHdoZW4gc3RydWN0dXJlZCBjbG9uaW5nIEltYWdlQml0bWFwcwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTRm9udEZhY2UuaAppbmRleCBkNDVjMDYyMmU3NDcxOTdiZWZjYTRjMzY2MDNk
NDBmYmY0MWE4ZjQ5Li43ODk5M2VmZWY1N2I1ZTY3OTk2YWQxYmRhZWY4NzcxN2ZhMTYwZGU4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTRm9udEZhY2UuaApAQCAtNDcsNyArNDcsNyBAQCBjbGFzcyBDU1NTZWdt
ZW50ZWRGb250RmFjZTsKIGNsYXNzIENTU1ZhbHVlOwogY2xhc3MgQ1NTVmFsdWVMaXN0OwogY2xh
c3MgRm9udENhY2hlOwotc3RydWN0IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3Jl
YXRpb25Db250ZXh0OwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogY2xhc3MgRm9udDsKIGNsYXNz
IEZvbnRGYWNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU291
cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2UuaAppbmRleCAxZjY1
N2E2NjQ1MWEwYzRjZjcxN2Y1ZTgwY2QxMGVhMmJmOTdmOTAxLi44MjYxMzMzMjJhOGVlNWYzNzgy
ZmJiMjMxMjNiMmRkM2E1N2ExNzI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
Rm9udEZhY2VTb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3Vy
Y2UuaApAQCAtMzYsNyArMzYsNyBAQCBjbGFzcyBDU1NGb250RmFjZTsKIGNsYXNzIENTU0ZvbnRT
ZWxlY3RvcjsKIGNsYXNzIERvY3VtZW50OwogY2xhc3MgRm9udDsKLXN0cnVjdCBGb250Q3JlYXRp
b25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIHN0cnVjdCBGb250Q3VzdG9t
UGxhdGZvcm1EYXRhOwogY2xhc3MgRm9udERlc2NyaXB0aW9uOwogc3RydWN0IEZvbnRTZWxlY3Rp
b25TcGVjaWZpZWRDYXBhYmlsaXRpZXM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTU2VnbWVudGVkRm9udEZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWdtZW50ZWRG
b250RmFjZS5oCmluZGV4IDkwZjNhZWFlNWI5NGJmYjI1YWI2NjU5NWU5MGNlOGU5ZGNkYTVmZWUu
LjViN2RiZTFjOTc0ZDU0ZDQ2ZTI0MDEyODFkMjAyMjY2MmE1ZmFhNTQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWdtZW50ZWRGb250RmFjZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NTZWdtZW50ZWRGb250RmFjZS5oCkBAIC0zNCw3ICszNCw3IEBACiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIGNsYXNzIENTU0ZvbnRTZWxlY3RvcjsKLXN0cnVjdCBGb250Q3JlYXRp
b25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIGNsYXNzIEZvbnREZXNjcmlw
dGlvbjsKIGNsYXNzIEZvbnRQYWxldHRlVmFsdWVzOwogY2xhc3MgRm9udFJhbmdlczsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9Gb250TG9hZFJlcXVlc3QuaAppbmRleCA5NWMzZTc2MDkwODBhMGYyOGYy
NGRjZjg3ZWYzNjUyNjVjNmY4YTg2Li5kODkwNWNlMjEzNzRmMmNlYzFlMjE0MzM5N2JmYmRlMzg2
ZWRiMWYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRm9udExvYWRSZXF1ZXN0
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZvbnRMb2FkUmVxdWVzdC5oCkBAIC0zMiw3
ICszMiw3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEZvbnQ7Ci1zdHJ1Y3QgRm9u
dENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBjbGFzcyBGb250
RGVzY3JpcHRpb247CiBjbGFzcyBGb250TG9hZFJlcXVlc3Q7CiBzdHJ1Y3QgRm9udFNlbGVjdGlv
blNwZWNpZmllZENhcGFiaWxpdGllczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRGb250LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
Rm9udC5oCmluZGV4IGVhOTE3ZGExMWM3MjYxNWJhZWQ3NzZkMWRmYzg3NTMxZTUxNjQzOTQuLmNl
YmRjNTU3ZjEzZmM0YWZkODI3NTI5Nzc0YWZkOGVjNGJlZjQyMTAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuaApAQCAtMzQsNyArMzQsNyBAQAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCiBjbGFzcyBDYWNoZWRSZXNvdXJjZUxvYWRlcjsKLXN0cnVjdCBGb250Q3JlYXRp
b25Db250ZXh0OworY2xhc3MgRm9udENyZWF0aW9uQ29udGV4dDsKIGNsYXNzIEZvbnREZXNjcmlw
dGlvbjsKIGNsYXNzIEZvbnRQbGF0Zm9ybURhdGE7CiBzdHJ1Y3QgRm9udFNlbGVjdGlvblNwZWNp
ZmllZENhcGFiaWxpdGllczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRGb250TG9hZFJlcXVlc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRGb250TG9hZFJlcXVlc3QuaAppbmRleCAxMGNmYmE1MGI0NmFhNDU5ZDdmYjY3MDljZTI5
ZjRmNWJhNGI0ZDhkLi5iNTc3N2MxMmNjZTM3OGFiOWI0ZTFjYzkwNGI0Y2IwN2VmMzQxMjdmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udExvYWRSZXF1
ZXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnRMb2FkUmVx
dWVzdC5oCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotc3RydWN0
IEZvbnRDcmVhdGlvbkNvbnRleHQ7CitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0OwogCiBjbGFz
cyBDYWNoZWRGb250TG9hZFJlcXVlc3QgZmluYWwgOiBwdWJsaWMgRm9udExvYWRSZXF1ZXN0LCBw
dWJsaWMgQ2FjaGVkRm9udENsaWVudCB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU1ZHRm9udC5oIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNWR0ZvbnQuaAppbmRleCAzZjBjMDE0
M2MwZjhkOWViMTc4M2IwZmI2M2UyMjA3NWY3ODI4ZDlhLi4zNTNkM2RlNjNiMDYyODYxM2FiYWY3
NzdmZWIyNTNjNWI2MjQ5MGM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkU1ZHRm9udC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRTVkdGb250LmgKQEAgLTI5LDcgKzI5LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1z
dHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBj
bGFzcyBTVkdGb250RmFjZUVsZW1lbnQ7CiBjbGFzcyBTZXR0aW5nczsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9uQ29udGV4dC5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENyZWF0aW9uQ29udGV4dC5oCmlu
ZGV4IGU5MTBiNGQzMGE2ZjIxMzBmYzg1OWJjOTVmNTUyODkwMThhNmMwMGYuLjg0Yjk4YjBiM2U1
ZjY1ZTVhMWZmZTA2ZWU0NzZkZTMxZGQ5NWMzYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDcmVhdGlvbkNvbnRleHQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q3JlYXRpb25Db250ZXh0LmgKQEAgLTI4LDE1ICsy
OCw3OSBAQAogI2luY2x1ZGUgIkZvbnRQYWxldHRlVmFsdWVzLmgiCiAjaW5jbHVkZSAiRm9udFNl
bGVjdGlvbkFsZ29yaXRobS5oIgogI2luY2x1ZGUgIkZvbnRUYWdnZWRTZXR0aW5ncy5oIgorI2lu
Y2x1ZGUgPHd0Zi9Qb2ludGVyQ29tcGFyaXNvbi5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LXN0cnVjdCBGb250Q3JlYXRpb25Db250ZXh0IHsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHRS
YXJlRGF0YSA6IHB1YmxpYyBSZWZDb3VudGVkPEZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YT4g
eworcHVibGljOgorICAgIHN0YXRpYyBSZWY8Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhPiBj
cmVhdGUoY29uc3QgRm9udEZlYXR1cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0dXJlcywgY29uc3Qg
Rm9udFBhbGV0dGVWYWx1ZXMmIGZvbnRQYWxldHRlVmFsdWVzKQorICAgIHsKKyAgICAgICAgcmV0
dXJuIGFkb3B0UmVmKCpuZXcgRm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhKGZvbnRGYWNlRmVh
dHVyZXMsIGZvbnRQYWxldHRlVmFsdWVzKSk7CisgICAgfQorCisgICAgY29uc3QgRm9udEZlYXR1
cmVTZXR0aW5ncyYgZm9udEZhY2VGZWF0dXJlcygpIGNvbnN0CisgICAgeworICAgICAgICByZXR1
cm4gbV9mb250RmFjZUZlYXR1cmVzOworICAgIH0KKworICAgIGNvbnN0IEZvbnRQYWxldHRlVmFs
dWVzJiBmb250UGFsZXR0ZVZhbHVlcygpIGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4gbV9m
b250UGFsZXR0ZVZhbHVlczsKKyAgICB9CisKKyAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgRm9u
dENyZWF0aW9uQ29udGV4dFJhcmVEYXRhJiBvdGhlcikgY29uc3QKKyAgICB7CisgICAgICAgIHJl
dHVybiBtX2ZvbnRGYWNlRmVhdHVyZXMgPT0gb3RoZXIubV9mb250RmFjZUZlYXR1cmVzCisgICAg
ICAgICAgICAmJiBtX2ZvbnRQYWxldHRlVmFsdWVzID09IG90aGVyLm1fZm9udFBhbGV0dGVWYWx1
ZXM7CisgICAgfQorCisgICAgYm9vbCBvcGVyYXRvciE9KGNvbnN0IEZvbnRDcmVhdGlvbkNvbnRl
eHRSYXJlRGF0YSYgb3RoZXIpIGNvbnN0CisgICAgeworICAgICAgICByZXR1cm4gISgqdGhpcyA9
PSBvdGhlcik7CisgICAgfQorCitwcml2YXRlOgorICAgIEZvbnRDcmVhdGlvbkNvbnRleHRSYXJl
RGF0YShjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVzLCBjb25zdCBG
b250UGFsZXR0ZVZhbHVlcyYgZm9udFBhbGV0dGVWYWx1ZXMpCisgICAgICAgIDogbV9mb250RmFj
ZUZlYXR1cmVzKGZvbnRGYWNlRmVhdHVyZXMpCisgICAgICAgICwgbV9mb250UGFsZXR0ZVZhbHVl
cyhmb250UGFsZXR0ZVZhbHVlcykKKyAgICB7CisgICAgfQorCisgICAgRm9udEZlYXR1cmVTZXR0
aW5ncyBtX2ZvbnRGYWNlRmVhdHVyZXM7CisgICAgRm9udFBhbGV0dGVWYWx1ZXMgbV9mb250UGFs
ZXR0ZVZhbHVlczsKKyAgICAvLyBGSVhNRTogQWRkIHN1cHBvcnQgZm9yIGZvbnQtZmVhdHVyZS12
YWx1ZXMuCit9OworCitjbGFzcyBGb250Q3JlYXRpb25Db250ZXh0IHsKK3B1YmxpYzoKKyAgICBG
b250Q3JlYXRpb25Db250ZXh0KCkgPSBkZWZhdWx0OworCisgICAgRm9udENyZWF0aW9uQ29udGV4
dChjb25zdCBGb250RmVhdHVyZVNldHRpbmdzJiBmb250RmFjZUZlYXR1cmVzLCBjb25zdCBGb250
U2VsZWN0aW9uU3BlY2lmaWVkQ2FwYWJpbGl0aWVzJiBmb250RmFjZUNhcGFiaWxpdGllcywgY29u
c3QgRm9udFBhbGV0dGVWYWx1ZXMmIGZvbnRQYWxldHRlVmFsdWVzKQorICAgICAgICA6IG1fZm9u
dEZhY2VDYXBhYmlsaXRpZXMoZm9udEZhY2VDYXBhYmlsaXRpZXMpCisgICAgeworICAgICAgICBp
ZiAoIWZvbnRGYWNlRmVhdHVyZXMuaXNFbXB0eSgpIHx8IGZvbnRQYWxldHRlVmFsdWVzKQorICAg
ICAgICAgICAgbV9yYXJlRGF0YSA9IEZvbnRDcmVhdGlvbkNvbnRleHRSYXJlRGF0YTo6Y3JlYXRl
KGZvbnRGYWNlRmVhdHVyZXMsIGZvbnRQYWxldHRlVmFsdWVzKTsKKyAgICB9CisKKyAgICBjb25z
dCBGb250RmVhdHVyZVNldHRpbmdzKiBmb250RmFjZUZlYXR1cmVzKCkgY29uc3QKKyAgICB7Cisg
ICAgICAgIHJldHVybiBtX3JhcmVEYXRhID8gJm1fcmFyZURhdGEtPmZvbnRGYWNlRmVhdHVyZXMo
KSA6IG51bGxwdHI7CisgICAgfQorCisgICAgY29uc3QgRm9udFNlbGVjdGlvblNwZWNpZmllZENh
cGFiaWxpdGllcyYgZm9udEZhY2VDYXBhYmlsaXRpZXMoKSBjb25zdAorICAgIHsKKyAgICAgICAg
cmV0dXJuIG1fZm9udEZhY2VDYXBhYmlsaXRpZXM7CisgICAgfQorICAgIGNvbnN0IEZvbnRQYWxl
dHRlVmFsdWVzKiBmb250UGFsZXR0ZVZhbHVlcygpIGNvbnN0CisgICAgeworICAgICAgICByZXR1
cm4gbV9yYXJlRGF0YSA/ICZtX3JhcmVEYXRhLT5mb250UGFsZXR0ZVZhbHVlcygpIDogbnVsbHB0
cjsKKyAgICB9CisKICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgRm9udENyZWF0aW9uQ29udGV4
dCYgb3RoZXIpIGNvbnN0CiAgICAgewotICAgICAgICByZXR1cm4gZm9udEZhY2VGZWF0dXJlcyA9
PSBvdGhlci5mb250RmFjZUZlYXR1cmVzCi0gICAgICAgICAgICAmJiBmb250RmFjZUNhcGFiaWxp
dGllcyA9PSBvdGhlci5mb250RmFjZUNhcGFiaWxpdGllcwotICAgICAgICAgICAgJiYgZm9udFBh
bGV0dGVWYWx1ZXMgPT0gb3RoZXIuZm9udFBhbGV0dGVWYWx1ZXM7CisgICAgICAgIHJldHVybiBt
X2ZvbnRGYWNlQ2FwYWJpbGl0aWVzID09IG90aGVyLm1fZm9udEZhY2VDYXBhYmlsaXRpZXMKKyAg
ICAgICAgICAgICYmIGFyZVBvaW50aW5nVG9FcXVhbERhdGEobV9yYXJlRGF0YSwgb3RoZXIubV9y
YXJlRGF0YSk7CiAgICAgfQogCiAgICAgYm9vbCBvcGVyYXRvciE9KGNvbnN0IEZvbnRDcmVhdGlv
bkNvbnRleHQmIG90aGVyKSBjb25zdApAQCAtNDQsMTcgKzEwOCwxOCBAQCBzdHJ1Y3QgRm9udENy
ZWF0aW9uQ29udGV4dCB7CiAgICAgICAgIHJldHVybiAhKCp0aGlzID09IG90aGVyKTsKICAgICB9
CiAKLSAgICBGb250RmVhdHVyZVNldHRpbmdzIGZvbnRGYWNlRmVhdHVyZXM7Ci0gICAgRm9udFNl
bGVjdGlvblNwZWNpZmllZENhcGFiaWxpdGllcyBmb250RmFjZUNhcGFiaWxpdGllczsKLSAgICBG
b250UGFsZXR0ZVZhbHVlcyBmb250UGFsZXR0ZVZhbHVlczsKLSAgICAvLyBGSVhNRTogQWRkIHN1
cHBvcnQgZm9yIGZvbnQtZmVhdHVyZS12YWx1ZXMuCitwcml2YXRlOgorICAgIEZvbnRTZWxlY3Rp
b25TcGVjaWZpZWRDYXBhYmlsaXRpZXMgbV9mb250RmFjZUNhcGFiaWxpdGllczsKKyAgICBSZWZQ
dHI8Rm9udENyZWF0aW9uQ29udGV4dFJhcmVEYXRhPiBtX3JhcmVEYXRhOwogfTsKIAogaW5saW5l
IHZvaWQgYWRkKEhhc2hlciYgaGFzaGVyLCBjb25zdCBGb250Q3JlYXRpb25Db250ZXh0JiBmb250
Q3JlYXRpb25Db250ZXh0KQogewotICAgIGFkZChoYXNoZXIsIGZvbnRDcmVhdGlvbkNvbnRleHQu
Zm9udEZhY2VGZWF0dXJlcyk7Ci0gICAgYWRkKGhhc2hlciwgZm9udENyZWF0aW9uQ29udGV4dC5m
b250RmFjZUNhcGFiaWxpdGllcy50aWVkKCkpOwotICAgIGFkZChoYXNoZXIsIGZvbnRDcmVhdGlv
bkNvbnRleHQuZm9udFBhbGV0dGVWYWx1ZXMpOworICAgIGlmIChmb250Q3JlYXRpb25Db250ZXh0
LmZvbnRGYWNlRmVhdHVyZXMoKSkKKyAgICAgICAgYWRkKGhhc2hlciwgKmZvbnRDcmVhdGlvbkNv
bnRleHQuZm9udEZhY2VGZWF0dXJlcygpKTsKKyAgICBhZGQoaGFzaGVyLCBmb250Q3JlYXRpb25D
b250ZXh0LmZvbnRGYWNlQ2FwYWJpbGl0aWVzKCkudGllZCgpKTsKKyAgICBpZiAoZm9udENyZWF0
aW9uQ29udGV4dC5mb250UGFsZXR0ZVZhbHVlcygpKQorICAgICAgICBhZGQoaGFzaGVyLCAqZm9u
dENyZWF0aW9uQ29udGV4dC5mb250UGFsZXR0ZVZhbHVlcygpKTsKIH0KIAogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udFBhbGV0dGVWYWx1ZXMuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRQYWxldHRlVmFsdWVzLmgKaW5k
ZXggNDEyODIzM2Q5MzAzMWE2N2M4NWNhYjdiM2UxMWUyN2IzYjNiMGY1MC4uOTRhMWE1NTE0YjQ3
YTkzNTIwOTc0OTBjY2I5MDUxM2M0NzgyNWE5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvRm9udFBhbGV0dGVWYWx1ZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250UGFsZXR0ZVZhbHVlcy5oCkBAIC01OCw2ICs1OCwxNSBA
QCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBtX292ZXJyaWRlQ29sb3JzOwogICAgIH0KIAorICAg
IG9wZXJhdG9yIGJvb2woKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuIFdURjo6c3dpdGNo
T24obV9iYXNlUGFsZXR0ZSwgW10gKGludDY0X3QpIHsKKyAgICAgICAgICAgIHJldHVybiB0cnVl
OworICAgICAgICB9LCBbXSAoY29uc3QgQXRvbVN0cmluZyYgc3RyaW5nKSB7CisgICAgICAgICAg
ICByZXR1cm4gIXN0cmluZy5pc051bGwoKTsKKyAgICAgICAgfSkgfHwgIW1fb3ZlcnJpZGVDb2xv
cnMuaXNFbXB0eSgpOworICAgIH0KKwogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBGb250UGFs
ZXR0ZVZhbHVlcyYgb3RoZXIpIGNvbnN0CiAgICAgewogICAgICAgICByZXR1cm4gbV9iYXNlUGFs
ZXR0ZSA9PSBvdGhlci5tX2Jhc2VQYWxldHRlICYmIG1fb3ZlcnJpZGVDb2xvcnMgPT0gb3RoZXIu
bV9vdmVycmlkZUNvbG9yczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NhaXJvL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NhaXJvL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaAppbmRleCBmYjA4
Y2E2OGI3ZmYyY2YyMmM3MjI5ZWU4ZjAyZWM5OWRkNmI4MWU2Li5kYjQ1N2E4MWQzZWU4MjkxYjkw
NWU5YmE3N2MxZTJhZjMwOWUwY2IyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jYWlyby9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oCkBA
IC0zMSw3ICszMSw3IEBAIHR5cGVkZWYgc3RydWN0IEZUX0ZhY2VSZWNfKiAgRlRfRmFjZTsKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dDsKK2NsYXNz
IEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBGb250
UGxhdGZvcm1EYXRhOwogY2xhc3MgU2hhcmVkQnVmZmVyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3Bw
CmluZGV4IDZiNGJhMWM5ZWZlNzZlZTM1NDA3Y2Q4YzM4ZGQ2MzVhOThiYzlkYTUuLjg1MzMxYjJh
MWFhNDMxNTU2NjAyNTIwZDViMzYyN2M5YjBjNzgwOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5j
cHAKQEAgLTQ0Myw3ICs0NDMsNyBAQCBzdHJ1Y3QgRm9udFR5cGUgewogICAgIGJvb2wgYWF0U2hh
cGluZyB7IGZhbHNlIH07CiB9OwogCi1zdGF0aWMgdm9pZCBhZGRBdHRyaWJ1dGVzRm9yRm9udFBh
bGV0dGVzKENGTXV0YWJsZURpY3Rpb25hcnlSZWYgYXR0cmlidXRlcywgY29uc3QgRm9udFBhbGV0
dGUmIGZvbnRQYWxldHRlLCBjb25zdCBGb250UGFsZXR0ZVZhbHVlcyYgZm9udFBhbGV0dGVWYWx1
ZXMpCitzdGF0aWMgdm9pZCBhZGRBdHRyaWJ1dGVzRm9yRm9udFBhbGV0dGVzKENGTXV0YWJsZURp
Y3Rpb25hcnlSZWYgYXR0cmlidXRlcywgY29uc3QgRm9udFBhbGV0dGUmIGZvbnRQYWxldHRlLCBj
b25zdCBGb250UGFsZXR0ZVZhbHVlcyogZm9udFBhbGV0dGVWYWx1ZXMpCiB7CiAgICAgc3dpdGNo
IChmb250UGFsZXR0ZS50eXBlKSB7CiAgICAgY2FzZSBGb250UGFsZXR0ZTo6VHlwZTo6Tm9uZToK
QEAgLTQ2NCw3ICs0NjQsOSBAQCBzdGF0aWMgdm9pZCBhZGRBdHRyaWJ1dGVzRm9yRm9udFBhbGV0
dGVzKENGTXV0YWJsZURpY3Rpb25hcnlSZWYgYXR0cmlidXRlcywgY29ucwogICAgICAgICBicmVh
azsKICAgICB9CiAgICAgY2FzZSBGb250UGFsZXR0ZTo6VHlwZTo6Q3VzdG9tOiB7Ci0gICAgICAg
IFdURjo6c3dpdGNoT24oZm9udFBhbGV0dGVWYWx1ZXMuYmFzZVBhbGV0dGUoKSwgWyZdKHVuc2ln
bmVkIGluZGV4KSB7CisgICAgICAgIGlmICghZm9udFBhbGV0dGVWYWx1ZXMpCisgICAgICAgICAg
ICBicmVhazsgCisgICAgICAgIFdURjo6c3dpdGNoT24oZm9udFBhbGV0dGVWYWx1ZXMtPmJhc2VQ
YWxldHRlKCksIFsmXShpbnQ2NF90IGluZGV4KSB7CiAgICAgICAgICAgICBpbnQ2NF90IHJhd0lu
ZGV4ID0gaW5kZXg7IC8vIFRoZXJlIGlzIG5vIGtDRk51bWJlclVJbnRUeXBlLgogICAgICAgICAg
ICAgYXV0byBudW1iZXIgPSBhZG9wdENGKENGTnVtYmVyQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1
bHQsIGtDRk51bWJlclNJbnQ2NFR5cGUsICZyYXdJbmRleCkpOwogICAgICAgICAgICAgQ0ZEaWN0
aW9uYXJ5QWRkVmFsdWUoYXR0cmlidXRlcywga0NURm9udFBhbGV0dGVBdHRyaWJ1dGUsIG51bWJl
ci5nZXQoKSk7CkBAIC00NzIsOSArNDc0LDkgQEAgc3RhdGljIHZvaWQgYWRkQXR0cmlidXRlc0Zv
ckZvbnRQYWxldHRlcyhDRk11dGFibGVEaWN0aW9uYXJ5UmVmIGF0dHJpYnV0ZXMsIGNvbnMKICAg
ICAgICAgICAgIC8vIFRoaXMgaXMgdW5pbXBsZW1lbnRhYmxlIGluIENvcmUgVGV4dC4KICAgICAg
ICAgfSk7CiAKLSAgICAgICAgaWYgKCFmb250UGFsZXR0ZVZhbHVlcy5vdmVycmlkZUNvbG9ycygp
LmlzRW1wdHkoKSkgeworICAgICAgICBpZiAoIWZvbnRQYWxldHRlVmFsdWVzLT5vdmVycmlkZUNv
bG9ycygpLmlzRW1wdHkoKSkgewogICAgICAgICAgICAgYXV0byBvdmVycmlkZURpY3Rpb25hcnkg
PSBhZG9wdENGKENGRGljdGlvbmFyeUNyZWF0ZU11dGFibGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwg
MCwgJmtDRlR5cGVEaWN0aW9uYXJ5S2V5Q2FsbEJhY2tzLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1
ZUNhbGxCYWNrcykpOwotICAgICAgICAgICAgZm9yIChjb25zdCBhdXRvJiBwYWlyIDogZm9udFBh
bGV0dGVWYWx1ZXMub3ZlcnJpZGVDb2xvcnMoKSkgeworICAgICAgICAgICAgZm9yIChjb25zdCBh
dXRvJiBwYWlyIDogZm9udFBhbGV0dGVWYWx1ZXMtPm92ZXJyaWRlQ29sb3JzKCkpIHsKICAgICAg
ICAgICAgICAgICBjb25zdCBhdXRvJiBwYWxldHRlQ29sb3JJbmRleCA9IHBhaXIuZmlyc3Q7CiAg
ICAgICAgICAgICAgICAgY29uc3QgYXV0byYgY29sb3IgPSBwYWlyLnNlY29uZDsKICAgICAgICAg
ICAgICAgICBXVEY6OnN3aXRjaE9uKHBhbGV0dGVDb2xvckluZGV4LCBbXShjb25zdCBBdG9tU3Ry
aW5nJikgewpAQCAtNTIzLDcgKzUyNSw3IEBAIFJldGFpblB0cjxDVEZvbnRSZWY+IHByZXBhcmVQ
bGF0Zm9ybUZvbnQoQ1RGb250UmVmIG9yaWdpbmFsRm9udCwgY29uc3QgRm9udERlc2NyCiAgICAg
Ym9vbCB0ZXh0UmVuZGVyaW5nTW9kZUlzQXV0byA9IHRleHRSZW5kZXJpbmdNb2RlID09IFRleHRS
ZW5kZXJpbmdNb2RlOjpBdXRvVGV4dFJlbmRlcmluZzsKICAgICBib29sIHZhcmlhbnRTZXR0aW5n
c0lzTm9ybWFsID0gdmFyaWFudFNldHRpbmdzLmlzQWxsTm9ybWFsKCk7CiAgICAgYm9vbCBkb250
TmVlZFRvQXBwbHlPcHRpY2FsU2l6aW5nID0gZm9udE9wdGljYWxTaXppbmcgPT0gRm9udE9wdGlj
YWxTaXppbmc6OkVuYWJsZWQgJiYgIWZvcmNlT3B0aWNhbFNpemluZ09uOwotICAgIGJvb2wgZm9u
dEZhY2VEb2VzbnRTcGVjaWZ5RmVhdHVyZXMgPSBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNl
RmVhdHVyZXMuaXNFbXB0eSgpOworICAgIGJvb2wgZm9udEZhY2VEb2VzbnRTcGVjaWZ5RmVhdHVy
ZXMgPSAhZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKCkgfHwgZm9udENyZWF0
aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKCktPmlzRW1wdHkoKTsKICAgICBpZiAobm9Gb250
RmVhdHVyZVNldHRpbmdzICYmIG5vRm9udFZhcmlhdGlvblNldHRpbmdzICYmIHRleHRSZW5kZXJp
bmdNb2RlSXNBdXRvICYmIHZhcmlhbnRTZXR0aW5nc0lzTm9ybWFsICYmIGRvbnROZWVkVG9BcHBs
eU9wdGljYWxTaXppbmcgJiYgZm9udEZhY2VEb2VzbnRTcGVjaWZ5RmVhdHVyZXMgJiYgIXNob3Vs
ZERpc2FibGVMaWdhdHVyZXNGb3JTcGFjaW5nICYmIGRvbnROZWVkVG9BcHBseUZvbnRQYWxldHRl
cykgewogI2lmIEhBVkUoQ1RGT05UQ1JFQVRFRk9SQ0hBUkFDVEVSU1dJVEhMQU5HVUFHRUFORE9Q
VElPTikKICAgICAgICAgcmV0dXJuIG9yaWdpbmFsRm9udDsKQEAgLTU2OSwxMSArNTcxLDExIEBA
IFJldGFpblB0cjxDVEZvbnRSZWY+IHByZXBhcmVQbGF0Zm9ybUZvbnQoQ1RGb250UmVmIG9yaWdp
bmFsRm9udCwgY29uc3QgRm9udERlc2NyCiAgICAgICAgIGZsb2F0IHdlaWdodCA9IGZvbnRTZWxl
Y3Rpb25SZXF1ZXN0LndlaWdodDsKICAgICAgICAgZmxvYXQgd2lkdGggPSBmb250U2VsZWN0aW9u
UmVxdWVzdC53aWR0aDsKICAgICAgICAgZmxvYXQgc2xvcGUgPSBmb250U2VsZWN0aW9uUmVxdWVz
dC5zbG9wZS52YWx1ZV9vcihub3JtYWxJdGFsaWNWYWx1ZSgpKTsKLSAgICAgICAgaWYgKGF1dG8g
d2VpZ2h0VmFsdWUgPSBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlQ2FwYWJpbGl0aWVzLndl
aWdodCkKKyAgICAgICAgaWYgKGF1dG8gd2VpZ2h0VmFsdWUgPSBmb250Q3JlYXRpb25Db250ZXh0
LmZvbnRGYWNlQ2FwYWJpbGl0aWVzKCkud2VpZ2h0KQogICAgICAgICAgICAgd2VpZ2h0ID0gc3Rk
OjptYXgoc3RkOjptaW4od2VpZ2h0LCBzdGF0aWNfY2FzdDxmbG9hdD4od2VpZ2h0VmFsdWUtPm1h
eGltdW0pKSwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KHdlaWdodFZhbHVlLT5taW5pbXVtKSk7Ci0gICAg
ICAgIGlmIChhdXRvIHdpZHRoVmFsdWUgPSBmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlQ2Fw
YWJpbGl0aWVzLndpZHRoKQorICAgICAgICBpZiAoYXV0byB3aWR0aFZhbHVlID0gZm9udENyZWF0
aW9uQ29udGV4dC5mb250RmFjZUNhcGFiaWxpdGllcygpLndpZHRoKQogICAgICAgICAgICAgd2lk
dGggPSBzdGQ6Om1heChzdGQ6Om1pbih3aWR0aCwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KHdpZHRoVmFs
dWUtPm1heGltdW0pKSwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KHdpZHRoVmFsdWUtPm1pbmltdW0pKTsK
LSAgICAgICAgaWYgKGF1dG8gc2xvcGVWYWx1ZSA9IGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZh
Y2VDYXBhYmlsaXRpZXMud2VpZ2h0KQorICAgICAgICBpZiAoYXV0byBzbG9wZVZhbHVlID0gZm9u
dENyZWF0aW9uQ29udGV4dC5mb250RmFjZUNhcGFiaWxpdGllcygpLndlaWdodCkKICAgICAgICAg
ICAgIHNsb3BlID0gc3RkOjptYXgoc3RkOjptaW4oc2xvcGUsIHN0YXRpY19jYXN0PGZsb2F0Pihz
bG9wZVZhbHVlLT5tYXhpbXVtKSksIHN0YXRpY19jYXN0PGZsb2F0PihzbG9wZVZhbHVlLT5taW5p
bXVtKSk7CiAgICAgICAgIGlmIChuZWVkc0NvbnZlcnNpb24pIHsKICAgICAgICAgICAgIHdlaWdo
dCA9IGRlbm9ybWFsaXplV2VpZ2h0KHdlaWdodCk7CkBAIC01OTMsOCArNTk1LDggQEAgUmV0YWlu
UHRyPENURm9udFJlZj4gcHJlcGFyZVBsYXRmb3JtRm9udChDVEZvbnRSZWYgb3JpZ2luYWxGb250
LCBjb25zdCBGb250RGVzY3IKICAgICAvLyBGSVhNRTogSW1wbGVtZW50IFN0ZXAgNjogdGhlIGZv
bnQtdmFyaWF0aW9uLXNldHRpbmdzIGRlc2NyaXB0b3IgaW5zaWRlIEBmb250LWZhY2UKIAogICAg
IC8vIFN0ZXAgNzogQ29uc3VsdCB3aXRoIGZvbnQtZmVhdHVyZS1zZXR0aW5ncyBpbnNpZGUgQGZv
bnQtZmFjZQotICAgIGlmICghZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzLmlz
RW1wdHkoKSkgewotICAgICAgICBmb3IgKGF1dG8mIGZvbnRGYWNlRmVhdHVyZSA6IGZvbnRDcmVh
dGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcykKKyAgICBpZiAoZm9udENyZWF0aW9uQ29udGV4
dC5mb250RmFjZUZlYXR1cmVzKCkgJiYgIWZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0
dXJlcygpLT5pc0VtcHR5KCkpIHsKKyAgICAgICAgZm9yIChhdXRvJiBmb250RmFjZUZlYXR1cmUg
OiAqZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKCkpCiAgICAgICAgICAgICBh
cHBseUZlYXR1cmUoZm9udEZhY2VGZWF0dXJlLnRhZygpLCBmb250RmFjZUZlYXR1cmUudmFsdWUo
KSk7CiAgICAgfQogCkBAIC02NzQsNyArNjc2LDcgQEAgUmV0YWluUHRyPENURm9udFJlZj4gcHJl
cGFyZVBsYXRmb3JtRm9udChDVEZvbnRSZWYgb3JpZ2luYWxGb250LCBjb25zdCBGb250RGVzY3IK
ICNlbmRpZgogICAgIH0KIAotICAgIGFkZEF0dHJpYnV0ZXNGb3JGb250UGFsZXR0ZXMoYXR0cmli
dXRlcy5nZXQoKSwgZm9udERlc2NyaXB0aW9uLmZvbnRQYWxldHRlKCksIGZvbnRDcmVhdGlvbkNv
bnRleHQuZm9udFBhbGV0dGVWYWx1ZXMpOworICAgIGFkZEF0dHJpYnV0ZXNGb3JGb250UGFsZXR0
ZXMoYXR0cmlidXRlcy5nZXQoKSwgZm9udERlc2NyaXB0aW9uLmZvbnRQYWxldHRlKCksIGZvbnRD
cmVhdGlvbkNvbnRleHQuZm9udFBhbGV0dGVWYWx1ZXMoKSk7CiAKICAgICBhZGRBdHRyaWJ1dGVz
Rm9ySW5zdGFsbGVkRm9udHMoYXR0cmlidXRlcy5nZXQoKSwgZm9udERlc2NyaXB0aW9uLnNob3Vs
ZEFsbG93VXNlckluc3RhbGxlZEZvbnRzKCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuaAppbmRleCA4
OWM2Y2JmMzM4NWVkZTgxMzlhNDgzNDNmMzdkZTY3OTYzY2QzZDkyLi43ZGYwMmViMThiZjRiODk1
YmM0OTQwYmIzNjgzMGJmMzhiNzczNzhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNvcmVUZXh0LmgKQEAgLTM0LDcg
KzM0LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdHJ1Y3QgRm9udENyZWF0aW9uQ29u
dGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiAKIHN0cnVjdCBTeW50aGVzaXNQYWly
IHsKICAgICBleHBsaWNpdCBTeW50aGVzaXNQYWlyKGJvb2wgbmVlZHNTeW50aGV0aWNCb2xkLCBi
b29sIG5lZWRzU3ludGhldGljT2JsaXF1ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDYWNoZUZyZWVUeXBlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDYWNoZUZyZWVUeXBlLmNwcApp
bmRleCA3YzA5ZDliMjA1NzhiZDllZGVkNmQyOTA3M2UxYmM3NmIxN2Q5NmJlLi42NjFkZWQ3NGY5
Yjk4Nzc2ZmIyZjhjZTI4Zjc2ZWQzMWQwYzNhZDg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q2FjaGVGcmVlVHlwZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJlZVR5
cGUuY3BwCkBAIC01NzMsOCArNTczLDggQEAgc3RkOjp1bmlxdWVfcHRyPEZvbnRQbGF0Zm9ybURh
dGE+IEZvbnRDYWNoZTo6Y3JlYXRlRm9udFBsYXRmb3JtRGF0YShjb25zdCBGb250RGUKICAgICBi
b29sIGZpeGVkV2lkdGgsIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY09ibGlxdWU7CiAgICAgZ2V0
Rm9udFByb3BlcnRpZXNGcm9tUGF0dGVybihyZXN1bHRQYXR0ZXJuLmdldCgpLCBmb250RGVzY3Jp
cHRpb24sIGZpeGVkV2lkdGgsIHN5bnRoZXRpY0JvbGQsIHN5bnRoZXRpY09ibGlxdWUpOwogCi0g
ICAgaWYgKCFmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMuaXNFbXB0eSgpKSB7
Ci0gICAgICAgIGZvciAoYXV0byYgZm9udEZhY2VGZWF0dXJlIDogZm9udENyZWF0aW9uQ29udGV4
dC5mb250RmFjZUZlYXR1cmVzKSB7CisgICAgaWYgKGZvbnRDcmVhdGlvbkNvbnRleHQuZm9udEZh
Y2VGZWF0dXJlcygpICYmICFmb250Q3JlYXRpb25Db250ZXh0LmZvbnRGYWNlRmVhdHVyZXMoKS0+
aXNFbXB0eSgpKSB7CisgICAgICAgIGZvciAoYXV0byYgZm9udEZhY2VGZWF0dXJlIDogKmZvbnRD
cmVhdGlvbkNvbnRleHQuZm9udEZhY2VGZWF0dXJlcygpKSB7CiAgICAgICAgICAgICBpZiAoZm9u
dEZhY2VGZWF0dXJlLmVuYWJsZWQoKSkgewogICAgICAgICAgICAgICAgIGNvbnN0IGF1dG8mIHRh
ZyA9IGZvbnRGYWNlRmVhdHVyZS50YWcoKTsKICAgICAgICAgICAgICAgICBjb25zdCBjaGFyIGJ1
ZmZlcltdID0geyB0YWdbMF0sIHRhZ1sxXSwgdGFnWzJdLCB0YWdbM10sICdcMCcgfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDdXN0
b21QbGF0Zm9ybURhdGFGcmVlVHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9mcmVldHlwZS9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhRnJlZVR5cGUuY3BwCmluZGV4IGI2
OWM1NTQ5MmQ3ODU4Y2RlMmUyOWE1N2IyYTAzNDZiYTIyODQ1NTYuLjUwNmI0ZGQ2MmQ1NWE1NmEy
NzhjMzBjY2FiMmQxOTExMGYyNDFlZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGFGcmVlVHlwZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udEN1c3Rv
bVBsYXRmb3JtRGF0YUZyZWVUeXBlLmNwcApAQCAtODEsMTEgKzgxLDEzIEBAIEZvbnRQbGF0Zm9y
bURhdGEgRm9udEN1c3RvbVBsYXRmb3JtRGF0YTo6Zm9udFBsYXRmb3JtRGF0YShjb25zdCBGb250
RGVzY3JpcHRpb24mCiAgICAgUmVmUHRyPEZjUGF0dGVybj4gcGF0dGVybiA9IGRlZmF1bHRGb250
Y29uZmlnT3B0aW9ucygpOwogICAgIEZjUGF0dGVybkFkZFN0cmluZyhwYXR0ZXJuLmdldCgpLCBG
Q19GQU1JTFksIHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgRmNDaGFyOCo+KGZyZWVUeXBlRmFjZS0+
ZmFtaWx5X25hbWUpKTsKIAotICAgIGZvciAoYXV0byYgZm9udEZhY2VGZWF0dXJlIDogZm9udENy
ZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKSB7Ci0gICAgICAgIGlmIChmb250RmFjZUZl
YXR1cmUuZW5hYmxlZCgpKSB7Ci0gICAgICAgICAgICBjb25zdCBhdXRvJiB0YWcgPSBmb250RmFj
ZUZlYXR1cmUudGFnKCk7Ci0gICAgICAgICAgICBjb25zdCBjaGFyIGJ1ZmZlcltdID0geyB0YWdb
MF0sIHRhZ1sxXSwgdGFnWzJdLCB0YWdbM10sICdcMCcgfTsKLSAgICAgICAgICAgIEZjUGF0dGVy
bkFkZFN0cmluZyhwYXR0ZXJuLmdldCgpLCBGQ19GT05UX0ZFQVRVUkVTLCByZWludGVycHJldF9j
YXN0PGNvbnN0IEZjQ2hhcjgqPihidWZmZXIpKTsKKyAgICBpZiAoZm9udENyZWF0aW9uQ29udGV4
dC5mb250RmFjZUZlYXR1cmVzKCkpIHsKKyAgICAgICAgZm9yIChhdXRvJiBmb250RmFjZUZlYXR1
cmUgOiAqZm9udENyZWF0aW9uQ29udGV4dC5mb250RmFjZUZlYXR1cmVzKCkpIHsKKyAgICAgICAg
ICAgIGlmIChmb250RmFjZUZlYXR1cmUuZW5hYmxlZCgpKSB7CisgICAgICAgICAgICAgICAgY29u
c3QgYXV0byYgdGFnID0gZm9udEZhY2VGZWF0dXJlLnRhZygpOworICAgICAgICAgICAgICAgIGNv
bnN0IGNoYXIgYnVmZmVyW10gPSB7IHRhZ1swXSwgdGFnWzFdLCB0YWdbMl0sIHRhZ1szXSwgJ1ww
JyB9OworICAgICAgICAgICAgICAgIEZjUGF0dGVybkFkZFN0cmluZyhwYXR0ZXJuLmdldCgpLCBG
Q19GT05UX0ZFQVRVUkVTLCByZWludGVycHJldF9jYXN0PGNvbnN0IEZjQ2hhcjgqPihidWZmZXIp
KTsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1E
YXRhLmgKaW5kZXggN2E2ZDBhMWU0Yjc4YjlhNzBiODI1YzgzMzljOWY0OGUwOTA0M2NiYS4uNzE4
YjliZDMxNWVjYzY3MDc4OWM2NWNiYWFhMDM0OTI5NzVlNzJkMyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udEN1c3RvbVBsYXRm
b3JtRGF0YS5oCkBAIC0zMyw3ICszMyw3IEBAIHR5cGVkZWYgY29uc3Qgc3RydWN0IF9fQ1RGb250
RGVzY3JpcHRvciogQ1RGb250RGVzY3JpcHRvclJlZjsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
Ci1zdHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7
CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBzdHJ1Y3QgRm9udFNlbGVjdGlvblNwZWNpZmllZENh
cGFiaWxpdGllczsKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dpbi9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW4vRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5o
CmluZGV4IDJiOTIxYzQ2MmQ4N2IwMjcwYWEzMGYxY2UxYjk3YmUzOTg0ZGQxODQuLjVmMTBmNzM5
MmQwNGMzNDRkMTJjZWU0MjY2ZWRiMWVlOTk3MWM0ZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dpbi9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL0ZvbnRDdXN0b21QbGF0Zm9ybURh
dGEuaApAQCAtMzYsNyArMzYsNyBAQCB0eXBlZGVmIHN0cnVjdCBDR0ZvbnQqIENHRm9udFJlZjsK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdHJ1Y3QgRm9udENyZWF0aW9uQ29udGV4dDsKK2Ns
YXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBjbGFzcyBGb250RGVzY3JpcHRpb247CiBjbGFzcyBG
b250TWVtb3J5UmVzb3VyY2U7CiBjbGFzcyBTaGFyZWRCdWZmZXI7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRMb2FkUmVxdWVzdC5oIGIvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJGb250TG9hZFJlcXVlc3QuaAppbmRleCA2YTZjMDU4ZTIwZTNmZTk1
Y2YzMTM2MTU3YzUwNjIxNDc4YjdiYjJjLi5iOWZjZmIxZDZmZWE4YWQ1ZTc4MGJkZWViYzVjNmUw
NGExZTg2M2M3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckZvbnRM
b2FkUmVxdWVzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyRm9udExvYWRS
ZXF1ZXN0LmgKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdHJ1
Y3QgRm9udENyZWF0aW9uQ29udGV4dDsKK2NsYXNzIEZvbnRDcmVhdGlvbkNvbnRleHQ7CiBjbGFz
cyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwogY2xhc3MgU2hhcmVkQnVmZmVyOwogY2xhc3MgV29y
a2VyR2xvYmFsU2NvcGU7Cg==
</data>
<flag name="review"
          id="463184"
          type_id="1"
          status="+"
          setter="zalan"
    />
          </attachment>
      

    </bug>

</bugzilla>