<?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>221610</bug_id>
          
          <creation_ts>2021-02-09 08:47:17 -0800</creation_ts>
          <short_desc>[macOS] Deny mach-lookup to the fonts service</short_desc>
          <delta_ts>2021-03-10 17:25:18 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Per Arne Vollan">pvollan</reporter>
          <assigned_to name="Per Arne Vollan">pvollan</assigned_to>
          <cc>benjamin</cc>
    
    <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1727066</commentid>
    <comment_count>0</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2021-02-09 08:47:17 -0800</bug_when>
    <thetext>Deny mach-lookup to the fonts service in the WebContent process on macOS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727067</commentid>
    <comment_count>1</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2021-02-09 08:47:40 -0800</bug_when>
    <thetext>&lt;rdar://problem/69168609&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727070</commentid>
    <comment_count>2</comment_count>
      <attachid>419727</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2021-02-09 08:50:21 -0800</bug_when>
    <thetext>Created attachment 419727
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727098</commentid>
    <comment_count>3</comment_count>
      <attachid>419727</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2021-02-09 09:54:56 -0800</bug_when>
    <thetext>Comment on attachment 419727
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727106</commentid>
    <comment_count>4</comment_count>
      <attachid>419727</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2021-02-09 10:00:27 -0800</bug_when>
    <thetext>Comment on attachment 419727
Patch

Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727109</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-09 10:03:56 -0800</bug_when>
    <thetext>Committed r272586: &lt;https://commits.webkit.org/r272586&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 419727.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727552</commentid>
    <comment_count>6</comment_count>
      <attachid>419727</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-02-10 08:46:09 -0800</bug_when>
    <thetext>Comment on attachment 419727
Patch

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

&gt; Source/WebKit/WebProcess/com.apple.WebProcess.sb.in:1114
&gt;  #if __MAC_OS_X_VERSION_MIN_REQUIRED &lt;= 110000

shouldn&apos;t this be &quot;&lt; 120000&quot;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727703</commentid>
    <comment_count>7</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2021-02-10 12:17:59 -0800</bug_when>
    <thetext>(In reply to Myles C. Maxfield from comment #6)
&gt; Comment on attachment 419727 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=419727&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/WebProcess/com.apple.WebProcess.sb.in:1114
&gt; &gt;  #if __MAC_OS_X_VERSION_MIN_REQUIRED &lt;= 110000
&gt; 
&gt; shouldn&apos;t this be &quot;&lt; 120000&quot;?

That is a good point, although in this case, I think these should also be blocked when OS version &gt; 11.

Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1727708</commentid>
    <comment_count>8</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2021-02-10 12:20:04 -0800</bug_when>
    <thetext>Reverted in &lt;https://trac.webkit.org/changeset/272657/webkit&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729650</commentid>
    <comment_count>9</comment_count>
      <attachid>420465</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2021-02-16 06:21:41 -0800</bug_when>
    <thetext>Created attachment 420465
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1729752</commentid>
    <comment_count>10</comment_count>
      <attachid>420465</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2021-02-16 10:04:35 -0800</bug_when>
    <thetext>Comment on attachment 420465
Patch

Nice! r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730261</commentid>
    <comment_count>11</comment_count>
      <attachid>420641</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2021-02-17 07:21:11 -0800</bug_when>
    <thetext>Created attachment 420641
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730263</commentid>
    <comment_count>12</comment_count>
      <attachid>420641</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2021-02-17 07:22:30 -0800</bug_when>
    <thetext>Comment on attachment 420641
Patch

Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1730280</commentid>
    <comment_count>13</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-17 08:16:26 -0800</bug_when>
    <thetext>Committed r272999: &lt;https://commits.webkit.org/r272999&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 420641.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1738321</commentid>
    <comment_count>14</comment_count>
      <attachid>420641</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2021-03-10 17:15:50 -0800</bug_when>
    <thetext>Comment on attachment 420641
Patch

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

&gt; Source/WebKit/UIProcess/WebPageProxy.cpp:7692
&gt; +static bool disableStaticFontRegistry()

&quot;disable&quot; is a verb, but the implementation of this function appears to not actually disable anything.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1738323</commentid>
    <comment_count>15</comment_count>
      <attachid>420641</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-03-10 17:25:18 -0800</bug_when>
    <thetext>Comment on attachment 420641
Patch

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

&gt; Source/WebKit/UIProcess/WebPageProxy.cpp:7686
&gt; +        if (String(static_cast&lt;CFStringRef&gt;(font)) != &quot;System&quot;)

Seems needlessly expensive to construct a WTF::String here:
if (CFStringCompare(font, CFSTR(&quot;System&quot;), kCFCompareCaseSensitive) != kCFCompareEqualTo)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>419727</attachid>
            <date>2021-02-09 08:50:21 -0800</date>
            <delta_ts>2021-02-16 06:21:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221610-20210209085019.patch</filename>
            <type>text/plain</type>
            <size>2281</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNzI1ODApCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDIxLTAyLTA5ICBQZXIgQXJuZSAg
PHB2b2xsYW5AYXBwbGUuY29tPgorCisgICAgICAgIFttYWNPU10gRGVueSBtYWNoLWxvb2t1cCB0
byB0aGUgZm9udHMgc2VydmljZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjIxNjEwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82OTE2ODYwOT4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCeSBzZXR0aW5n
IHRoZSBJbmZvLnBsaXN0IGtleSBDVElnbm9yZVVzZXJGb250cyB0byB0cnVlLCBtYWNoLWxvb2t1
cCB0byB0aGUgZm9udHMgc2VydmljZSBpbiB0aGUgV2ViQ29udGVudCBwcm9jZXNzIGNhbgorICAg
ICAgICBiZSBkZW5pZWQgb24gbWFjT1MuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBjb3ZlcmVk
IGJ5IGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9FbnRyeVBvaW50L0Nv
Y29hL1hQQ1NlcnZpY2UvV2ViQ29udGVudFNlcnZpY2UvSW5mby1PU1gucGxpc3Q6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9jb20uYXBwbGUuV2ViUHJvY2Vzcy5zYi5pbjoKKwogMjAyMS0wMi0wOSAg
UGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CiAKICAgICAgICAgVW5yZXZp
ZXdlZCwgdHZPUyBidWlsZCBmaXggYWZ0ZXIgcjI3MjU3MwpJbmRleDogU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL2NvbS5hcHBsZS5XZWJQcm9jZXNzLnNiLmluCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb20uYXBwbGUuV2ViUHJvY2Vzcy5zYi5pbgkocmV2aXNpb24g
MjcyNDk4KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvbS5hcHBsZS5XZWJQcm9jZXNz
LnNiLmluCSh3b3JraW5nIGNvcHkpCkBAIC0xMTExLDE0ICsxMTExLDE4IEBACiAjZW5kaWYKICkK
IAotKGFsbG93IG1hY2gtbG9va3VwCi0jaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJF
RCA+PSAxMTAwMDAKLSAgICAod2l0aCByZXBvcnQpICh3aXRoIHRlbGVtZXRyeS1iYWNrdHJhY2Up
Ci0jZW5kaWYKICNpZiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEIDw9IDExMDAwMAor
KGFsbG93IG1hY2gtbG9va3VwCiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuUG93ZXJNYW5h
Z2VtZW50LmNvbnRyb2wiKQogICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLlN5c3RlbUNvbmZp
Z3VyYXRpb24uY29uZmlnZCIpCiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuYXNzZXJ0aW9u
ZC5wcm9jZXNzYXNzZXJ0aW9uY29ubmVjdGlvbiIpCispCisjZW5kaWYKKworI2lmIF9fTUFDX09T
X1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTIwMDAwCisoZGVueSBtYWNoLWxvb2t1cCAod2l0
aCB0ZWxlbWV0cnktYmFja3RyYWNlKQorI2Vsc2UKKyhhbGxvdyBtYWNoLWxvb2t1cAogI2VuZGlm
CiAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuZm9udHMiKQogKQpJbmRleDogU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL0VudHJ5UG9pbnQvQ29jb2EvWFBDU2VydmljZS9XZWJDb250ZW50U2Vy
dmljZS9JbmZvLU9TWC5wbGlzdAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvRW50cnlQb2ludC9Db2NvYS9YUENTZXJ2aWNlL1dlYkNvbnRlbnRTZXJ2aWNlL0luZm8tT1NY
LnBsaXN0CShyZXZpc2lvbiAyNzI0OTgpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvRW50
cnlQb2ludC9Db2NvYS9YUENTZXJ2aWNlL1dlYkNvbnRlbnRTZXJ2aWNlL0luZm8tT1NYLnBsaXN0
CSh3b3JraW5nIGNvcHkpCkBAIC01NSw1ICs1NSw3IEBACiAJPC9kaWN0PgogCTxrZXk+TlNDb2xv
clByZWZlckxvY2FsTm90aWZpY2F0aW9uczwva2V5PgogCTxpbnRlZ2VyPjE8L2ludGVnZXI+CisJ
PGtleT5DVElnbm9yZVVzZXJGb250czwva2V5PgorCTx0cnVlLz4KIDwvZGljdD4KIDwvcGxpc3Q+
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420465</attachid>
            <date>2021-02-16 06:21:41 -0800</date>
            <delta_ts>2021-02-16 10:04:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221610-20210216062140.patch</filename>
            <type>text/plain</type>
            <size>11446</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNzI4NDkpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDIxLTAyLTE2ICBQZXIgQXJuZSAgPHB2b2xsYW5A
YXBwbGUuY29tPgorCisgICAgICAgIFttYWNPU10gRGVueSBtYWNoLWxvb2t1cCB0byB0aGUgZm9u
dHMgc2VydmljZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjIxNjEwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82OTE2ODYwOT4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgSEFWRSBkZWZpbmUgZm9y
IHBsYXRmb3JtIHN0YXRpYyBmb250IHJlZ2lzdHJ5LgorCisgICAgICAgICogd3RmL1BsYXRmb3Jt
SGF2ZS5oOgorCiAyMDIxLTAyLTE1ICBMYXVybyBNb3VyYSAgPGxtb3VyYUBpZ2FsaWEuY29tPgog
CiAgICAgICAgIFJFR1JFU1NJT04ocjI3Mjg0MikgW0dTdHJlYW1lcl0gTGF5b3V0IHRlc3RzIGV4
aXRpbmcgZWFybHkgZHVlIHRvIGNyYXNoZXMgYWZ0ZXIgR1BVUHJvY2VzcyBmb3IgbWVkaWEgZW5h
YmxlZCBieSBkZWZhdWx0IGZvciBXVFIKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1BsYXRmb3JtSGF2
ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL1BsYXRmb3JtSGF2ZS5oCShyZXZpc2lv
biAyNzI4NDkpCisrKyBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUhhdmUuaAkod29ya2luZyBjb3B5
KQpAQCAtODgzLDMgKzg4Myw3IEBACiAjZGVmaW5lIEhBVkVfQ09SRV9HUkFQSElDU19ST01NUkdC
X0NPTE9SX1NQQUNFIDEKICNkZWZpbmUgSEFWRV9DT1JFX0dSQVBISUNTX1hZWl9DT0xPUl9TUEFD
RSAxCiAjZW5kaWYKKworI2lmIFBMQVRGT1JNKE1BQykgJiYgX19NQUNfT1NfWF9WRVJTSU9OX01J
Tl9SRVFVSVJFRCA+PSAxMjAwMDAKKyNkZWZpbmUgSEFWRV9TVEFUSUNfRk9OVF9SRUdJU1RSWSAx
CisjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI3Mjg0OSkKKysrIFNvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDIxLTAyLTE2
ICBQZXIgQXJuZSAgPHB2b2xsYW5AYXBwbGUuY29tPgorCisgICAgICAgIFttYWNPU10gRGVueSBt
YWNoLWxvb2t1cCB0byB0aGUgZm9udHMgc2VydmljZQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIxNjEwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82
OTE2ODYwOT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBEaXNhYmxlIGdsb2JhbCBmb250IHByZXdhcm1pbmcgd2hlbiB0aGUgcGxhdGZvcm0gaGFzIGEg
c3RhdGljIGZvbnQgcmVnaXN0cnkuIEZvbnQgcHJld2FybWluZyB3aWxsIGF0dGVtcHQgdG8gY29t
bXVuaWNhdGUgd2l0aCB0aGUgZm9udCBkYWVtb24uIFNpbmNlIHRoaXMgdXN1YWxseQorICAgICAg
ICB3aWxsIHRha2UgcGxhY2UgYmVmb3JlIHRoZSBmaXJzdCBwYWdlIGxvYWQgd2hlcmUgdGhlIGRl
Y2lzaW9uIGFib3V0IHVzaW5nIHRoZSBzdGF0aWMgcmVnaXN0cnkgaXMgbWFkZSwgYW5kIHRoaXMg
Y2hhbmdlIGJ5IGRlZmF1bHQgYmxvY2tzIGFjY2VzcyB0byB0aGUgZm9udCBkYWVtb24sCisgICAg
ICAgIHRoZSBzeXN0ZW0gd2lsbCBhdXRvbWF0aWNhbGx5IGNob29zZSB0byB1c2UgdGhlIHN0YXRp
YyByZWdpc3RyeS4gVGhpcyBtaWdodCBiZSB0aGUgd3JvbmcgY2hvaWNlLCBhbmQgaXQgaXMgY3Vy
cmVudGx5IG5vdCBwb3NzaWJsZSB0byBzd2l0Y2ggdG8gbm90IHVzZSB0aGUgc3RhdGljCisgICAg
ICAgIHJlZ2lzdHJ5IGF0IGEgbGF0ZXIgcG9pbnQuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBj
b3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Y29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9udENhY2hl
OjpwcmV3YXJtR2xvYmFsbHkpOgorCiAyMDIxLTAyLTE1ICBDaHJpcyBMb3JkICA8Y2xvcmRAaWdh
bGlhLmNvbT4KIAogICAgICAgICBDU1NGb250RmFjZSBzaG91bGQgbm90IG5lZWQgaXRzIG1fZm9u
dFNlbGVjdG9yIGRhdGEgbWVtYmVyCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udENhY2hlQ29yZVRleHQuY3BwCShyZXZp
c2lvbiAyNzI4NDkpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9G
b250Q2FjaGVDb3JlVGV4dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE2MDQsNiArMTYwNCw3IEBA
IHZvaWQgRm9udENhY2hlOjpwcmV3YXJtKGNvbnN0IFByZXdhcm1JbmYKIAogdm9pZCBGb250Q2Fj
aGU6OnByZXdhcm1HbG9iYWxseSgpCiB7CisjaWYgIUhBVkUoU1RBVElDX0ZPTlRfUkVHSVNUUlkp
CiAgICAgaWYgKE1lbW9yeVByZXNzdXJlSGFuZGxlcjo6c2luZ2xldG9uKCkuaXNVbmRlck1lbW9y
eVByZXNzdXJlKCkpCiAgICAgICAgIHJldHVybjsKIApAQCAtMTYyMyw2ICsxNjI0LDcgQEAgdm9p
ZCBGb250Q2FjaGU6OnByZXdhcm1HbG9iYWxseSgpCiAgICAgRm9udENhY2hlOjpQcmV3YXJtSW5m
b3JtYXRpb24gcHJld2FybUluZm87CiAgICAgcHJld2FybUluZm8uc2VlbkZhbWlsaWVzID0gV1RG
TW92ZShmYW1pbGllcyk7CiAgICAgRm9udENhY2hlOjpzaW5nbGV0b24oKS5wcmV3YXJtKHByZXdh
cm1JbmZvKTsKKyNlbmRpZgogfQogCiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkocmV2aXNpb24gMjcyOTAyKQor
KysgU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyOCBA
QAorMjAyMS0wMi0xNiAgUGVyIEFybmUgIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBb
bWFjT1NdIERlbnkgbWFjaC1sb29rdXAgdG8gdGhlIGZvbnRzIHNlcnZpY2UKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMTYxMAorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vNjkxNjg2MDk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgVGhpcyBjaGFuZ2Ugd2lsbCBieSBkZWZhdWx0IGJsb2NrIGFjY2VzcyB0
byB0aGUgZm9udCBkYWVtb24gd2hlbiB0aGUgcGxhdGZvcm0gaGFzIHN1cHBvcnQgZm9yIGEgc3Rh
dGljIGZvbnQgcmVnaXN0cnkuIFdoZW4gdGhlIGNsaWVudCBwcmVmZXJzCisgICAgICAgIHRvIGFs
bG93IHVzZXIgaW5zdGFsbGVkIGZvbnRzLCBvciBTYWZhcmkgUmVhZGVyIGNvbmZpZ3VyYXRpb24g
aGFzIGJlZW4gY3VzdG9taXplZCwgYWNjZXNzIHRvIHRoZSBmb250IGRhZW1vbiB3aWxsIHN0aWxs
IGJlIGFsbG93ZWQgYnkgaXNzdWluZworICAgICAgICBhbiBleHRlbnNpb24gdG8gdGhlIGZvbnQg
ZGFlbW9uLgorCisgICAgICAgICogU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUgY29u
c3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUp
OgorICAgICAgICAqIFNoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmg6CisgICAgICAg
ICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OmN1c3RvbWl6
ZWRSZWFkZXJDb25maWd1cmF0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojpj
cmVhdGlvblBhcmFtZXRlcnMpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdl
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6bV9saW1pdHNOYXZpZ2F0aW9uc1RvQXBwQm91bmREb21h
aW5zKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6fldlYlBhZ2UpOgorICAgICAgICAqIFdl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9jb20uYXBw
bGUuV2ViUHJvY2Vzcy5zYi5pbjoKKwogMjAyMS0wMi0xNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVu
bkBhcHBsZS5jb20+CiAKICAgICAgICAgRW5hYmxlIEdQVSBXZWJSVEMgY29kZWNzIGluIEdQVVBy
b2Nlc3MgYnkgZGVmYXVsdCBvbiBpT1MKSW5kZXg6IFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBh
Z2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hh
cmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwCShyZXZpc2lvbiAyNzI4NDkpCisrKyBT
b3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMTIwLDYgKzEyMCw5IEBAIHZvaWQgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVy
czo6ZW5jb2RlKEkKICAgICBlbmNvZGVyIDw8IGdwdUlPS2l0RXh0ZW5zaW9uSGFuZGxlczsKICAg
ICBlbmNvZGVyIDw8IGdwdU1hY2hFeHRlbnNpb25IYW5kbGVzOwogI2VuZGlmCisjaWYgSEFWRShT
VEFUSUNfRk9OVF9SRUdJU1RSWSkKKyAgICBlbmNvZGVyIDw8IGZvbnRNYWNoRXh0ZW5zaW9uSGFu
ZGxlOworI2VuZGlmCiAjaWYgSEFWRShBUFBfQUNDRU5UX0NPTE9SUykKICAgICBlbmNvZGVyIDw8
IGFjY2VudENvbG9yOwogI2VuZGlmCkBAIC00MDAsNiArNDAzLDE0IEBAIE9wdGlvbmFsPFdlYlBh
Z2VDcmVhdGlvblBhcmFtZXRlcnM+IFdlYlAKICAgICBwYXJhbWV0ZXJzLmdwdU1hY2hFeHRlbnNp
b25IYW5kbGVzID0gV1RGTW92ZSgqZ3B1TWFjaEV4dGVuc2lvbkhhbmRsZXMpOwogI2VuZGlmCiAK
KyNpZiBIQVZFKFNUQVRJQ19GT05UX1JFR0lTVFJZKQorICAgIE9wdGlvbmFsPE9wdGlvbmFsPFNh
bmRib3hFeHRlbnNpb246OkhhbmRsZT4+IGZvbnRNYWNoRXh0ZW5zaW9uSGFuZGxlOworICAgIGRl
Y29kZXIgPj4gZm9udE1hY2hFeHRlbnNpb25IYW5kbGU7CisgICAgaWYgKCFmb250TWFjaEV4dGVu
c2lvbkhhbmRsZSkKKyAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKKyAgICBwYXJhbWV0ZXJz
LmZvbnRNYWNoRXh0ZW5zaW9uSGFuZGxlID0gV1RGTW92ZSgqZm9udE1hY2hFeHRlbnNpb25IYW5k
bGUpOworI2VuZGlmCisKICNpZiBIQVZFKEFQUF9BQ0NFTlRfQ09MT1JTKQogICAgIGlmICghZGVj
b2Rlci5kZWNvZGUocGFyYW1ldGVycy5hY2NlbnRDb2xvcikpCiAgICAgICAgIHJldHVybiBXVEY6
Om51bGxvcHQ7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJh
bWV0ZXJzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0
aW9uUGFyYW1ldGVycy5oCShyZXZpc2lvbiAyNzI4NDkpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJl
ZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgJKHdvcmtpbmcgY29weSkKQEAgLTE3OSw2ICsx
NzksOSBAQCBzdHJ1Y3QgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyB7CiAgICAgU2FuZGJveEV4
dGVuc2lvbjo6SGFuZGxlQXJyYXkgZ3B1SU9LaXRFeHRlbnNpb25IYW5kbGVzOwogICAgIFNhbmRi
b3hFeHRlbnNpb246OkhhbmRsZUFycmF5IGdwdU1hY2hFeHRlbnNpb25IYW5kbGVzOwogI2VuZGlm
CisjaWYgSEFWRShTVEFUSUNfRk9OVF9SRUdJU1RSWSkKKyAgICBPcHRpb25hbDxTYW5kYm94RXh0
ZW5zaW9uOjpIYW5kbGU+IGZvbnRNYWNoRXh0ZW5zaW9uSGFuZGxlOworI2VuZGlmCiAjaWYgSEFW
RShBUFBfQUNDRU5UX0NPTE9SUykKICAgICBXZWJDb3JlOjpDb2xvciBhY2NlbnRDb2xvcjsKICNl
bmRpZgpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCShyZXZp
c2lvbiAyNzI4NDkpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC03Njg3LDYgKzc2ODcsMzAgQEAgc3RhdGljIGNvbnN0IFZlY3Rv
cjxBU0NJSUxpdGVyYWw+JiBtZWRpYQogfQogI2VuZGlmCiAKKyNpZiBIQVZFKFNUQVRJQ19GT05U
X1JFR0lTVFJZKQorc3RhdGljIGJvb2wgY3VzdG9taXplZFJlYWRlckNvbmZpZ3VyYXRpb24oKQor
eworICAgIGF1dG8gY29uZmlndXJhdGlvbiA9IGFkb3B0Q0YoQ0ZQcmVmZXJlbmNlc0NvcHlBcHBW
YWx1ZShDRlNUUigiUmVhZGVyQ29uZmlndXJhdGlvbiIpLCBrQ0ZQcmVmZXJlbmNlc0N1cnJlbnRB
cHBsaWNhdGlvbikpOworICAgIGlmICghY29uZmlndXJhdGlvbiB8fCBDRkdldFR5cGVJRChjb25m
aWd1cmF0aW9uLmdldCgpKSAhPSBDRkRpY3Rpb25hcnlHZXRUeXBlSUQoKSkKKyAgICAgICAgcmV0
dXJuIGZhbHNlOworICAgIGF1dG8gZm9udEZhbWlseU5hbWVGb3JMYW5ndWFnZVRhZyA9IENGRGlj
dGlvbmFyeUdldFZhbHVlKHN0YXRpY19jYXN0PENGRGljdGlvbmFyeVJlZj4oY29uZmlndXJhdGlv
bi5nZXQoKSksIENGU1RSKCJmb250RmFtaWx5TmFtZUZvckxhbmd1YWdlVGFnIikpOworICAgIGlm
ICghZm9udEZhbWlseU5hbWVGb3JMYW5ndWFnZVRhZyB8fCBDRkdldFR5cGVJRChmb250RmFtaWx5
TmFtZUZvckxhbmd1YWdlVGFnKSAhPSBDRkRpY3Rpb25hcnlHZXRUeXBlSUQoKSkKKyAgICAgICAg
cmV0dXJuIGZhbHNlOworICAgIGF1dG8gZm9udEZhbWlseU5hbWVGb3JMYW5ndWFnZVRhZ0RpY3Rp
b25hcnkgPSBzdGF0aWNfY2FzdDxDRkRpY3Rpb25hcnlSZWY+KGZvbnRGYW1pbHlOYW1lRm9yTGFu
Z3VhZ2VUYWcpOworICAgIGF1dG8gY291bnQgPSBDRkRpY3Rpb25hcnlHZXRDb3VudChmb250RmFt
aWx5TmFtZUZvckxhbmd1YWdlVGFnRGljdGlvbmFyeSk7CisgICAgVmVjdG9yPENGVHlwZVJlZj4g
Zm9udEZhbWlseVZhbHVlcyhjb3VudCk7CisgICAgQ0ZEaWN0aW9uYXJ5R2V0S2V5c0FuZFZhbHVl
cyhmb250RmFtaWx5TmFtZUZvckxhbmd1YWdlVGFnRGljdGlvbmFyeSwgbnVsbHB0ciwgZm9udEZh
bWlseVZhbHVlcy5kYXRhKCkpOworCisgICAgZm9yIChhdXRvIGZvbnQgOiBmb250RmFtaWx5VmFs
dWVzKSB7CisgICAgICAgIGlmICghZm9udCB8fCBDRkdldFR5cGVJRChmb250KSAhPSBDRlN0cmlu
Z0dldFR5cGVJRCgpKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIGlmIChTdHJpbmco
c3RhdGljX2Nhc3Q8Q0ZTdHJpbmdSZWY+KGZvbnQpKSAhPSAiU3lzdGVtIikKKyAgICAgICAgICAg
IHJldHVybiB0cnVlOworICAgIH0KKyAgICByZXR1cm4gZmFsc2U7Cit9CisjZW5kaWYgLy8gSEFW
RShTVEFUSUNfRk9OVF9SRUdJU1RSWSkKKwogV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyBXZWJQ
YWdlUHJveHk6OmNyZWF0aW9uUGFyYW1ldGVycyhXZWJQcm9jZXNzUHJveHkmIHByb2Nlc3MsIERy
YXdpbmdBcmVhUHJveHkmIGRyYXdpbmdBcmVhLCBSZWZQdHI8QVBJOjpXZWJzaXRlUG9saWNpZXM+
JiYgd2Vic2l0ZVBvbGljaWVzKQogewogICAgIFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMgcGFy
YW1ldGVyczsKQEAgLTc3OTEsNiArNzgxNSwxMyBAQCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJz
IFdlYlBhZ2VQcm94eTo6CiAgICAgICAgIHBhcmFtZXRlcnMuZ3B1TWFjaEV4dGVuc2lvbkhhbmRs
ZXMgPSBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVzRm9yTWFjaExvb2t1cChncHVNYWNo
U2VydmljZXMoKSwgV1RGOjpudWxsb3B0KTsKICAgICB9CiAjZW5kaWYKKyNpZiBIQVZFKFNUQVRJ
Q19GT05UX1JFR0lTVFJZKQorICAgIGlmIChwcmVmZXJlbmNlcygpLnNob3VsZEFsbG93VXNlcklu
c3RhbGxlZEZvbnRzKCkgfHwgKFdlYkNvcmU6Ok1hY0FwcGxpY2F0aW9uOjppc1NhZmFyaSgpICYm
IGN1c3RvbWl6ZWRSZWFkZXJDb25maWd1cmF0aW9uKCkpKSB7CisgICAgICAgIFNhbmRib3hFeHRl
bnNpb246OkhhbmRsZSBmb250TWFjaEV4dGVuc2lvbkhhbmRsZTsKKyAgICAgICAgU2FuZGJveEV4
dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yTWFjaExvb2t1cCgiY29tLmFwcGxlLmZvbnRzIl9zLCBX
VEY6Om51bGxvcHQsIGZvbnRNYWNoRXh0ZW5zaW9uSGFuZGxlKTsKKyAgICAgICAgcGFyYW1ldGVy
cy5mb250TWFjaEV4dGVuc2lvbkhhbmRsZSA9IFdURk1vdmUoZm9udE1hY2hFeHRlbnNpb25IYW5k
bGUpOworICAgIH0KKyNlbmRpZgogI2lmIEhBVkUoQVBQX0FDQ0VOVF9DT0xPUlMpCiAgICAgcGFy
YW1ldGVycy5hY2NlbnRDb2xvciA9IHBhZ2VDbGllbnQoKS5hY2NlbnRDb2xvcigpOwogI2VuZGlm
CkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29tLmFwcGxlLldlYlByb2Nlc3Muc2Iu
aW4KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvbS5hcHBsZS5XZWJQ
cm9jZXNzLnNiLmluCShyZXZpc2lvbiAyNzI4NDkpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvY29tLmFwcGxlLldlYlByb2Nlc3Muc2IuaW4JKHdvcmtpbmcgY29weSkKQEAgLTExMTQsMTcg
KzExMTQsMjYgQEAKICNlbmRpZgogKQogCi0oYWxsb3cgbWFjaC1sb29rdXAKLSNpZiBfX01BQ19P
U19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDExMDAwMAotICAgICh3aXRoIHJlcG9ydCkgKHdp
dGggdGVsZW1ldHJ5LWJhY2t0cmFjZSkKLSNlbmRpZgogI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9N
SU5fUkVRVUlSRUQgPD0gMTEwMDAwCisoYWxsb3cgbWFjaC1sb29rdXAKICAgICAoZ2xvYmFsLW5h
bWUgImNvbS5hcHBsZS5Qb3dlck1hbmFnZW1lbnQuY29udHJvbCIpCiAgICAgKGdsb2JhbC1uYW1l
ICJjb20uYXBwbGUuU3lzdGVtQ29uZmlndXJhdGlvbi5jb25maWdkIikKICAgICAoZ2xvYmFsLW5h
bWUgImNvbS5hcHBsZS5hc3NlcnRpb25kLnByb2Nlc3Nhc3NlcnRpb25jb25uZWN0aW9uIikKKykK
ICNlbmRpZgorCisjaWYgSEFWRShTVEFUSUNfRk9OVF9SRUdJU1RSWSkKKyhhbGxvdyBtYWNoLWxv
b2t1cAorICAgIChyZXF1aXJlLWFsbAorICAgICAgICAoZXh0ZW5zaW9uICJjb20uYXBwbGUud2Vi
a2l0LmV4dGVuc2lvbi5tYWNoIikKKyAgICAgICAgKGdsb2JhbC1uYW1lICJjb20uYXBwbGUuZm9u
dHMiKQorICAgICkKKykKKyNlbHNlCisoYWxsb3cgbWFjaC1sb29rdXAKICAgICAoZ2xvYmFsLW5h
bWUgImNvbS5hcHBsZS5mb250cyIpCiApCisjZW5kaWYKIAogI2lmIF9fTUFDX09TX1hfVkVSU0lP
Tl9NSU5fUkVRVUlSRUQgPj0gMTEwMDAwCiAoZGVueSBtYWNoLWxvb2t1cCAod2l0aCB0ZWxlbWV0
cnktYmFja3RyYWNlKQpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHAJKHJldmlzaW9uIDI3Mjg0OSkKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02MTksNiArNjE5LDE1IEBA
IFdlYlBhZ2U6OldlYlBhZ2UoUGFnZUlkZW50aWZpZXIgcGFnZUlELCAKICAgICB9CiAjZW5kaWYK
IAorI2lmIEhBVkUoU1RBVElDX0ZPTlRfUkVHSVNUUlkpCisgICAgaWYgKHBhcmFtZXRlcnMuZm9u
dE1hY2hFeHRlbnNpb25IYW5kbGUpIHsKKyAgICAgICAgaWYgKChtX2ZvbnRFeHRlbnNpb24gPSBT
YW5kYm94RXh0ZW5zaW9uOjpjcmVhdGUoV1RGTW92ZSgqcGFyYW1ldGVycy5mb250TWFjaEV4dGVu
c2lvbkhhbmRsZSkpKSkgeworICAgICAgICAgICAgYm9vbCBvayA9IG1fZm9udEV4dGVuc2lvbi0+
Y29uc3VtZSgpOworICAgICAgICAgICAgQVNTRVJUX1VOVVNFRChvaywgb2spOworICAgICAgICB9
CisgICAgfQorI2VuZGlmCisKICAgICBtX3BhZ2UgPSBtYWtlVW5pcXVlPFBhZ2U+KFdURk1vdmUo
cGFnZUNvbmZpZ3VyYXRpb24pKTsKIAogICAgIHVwZGF0ZVByZWZlcmVuY2VzKHBhcmFtZXRlcnMu
c3RvcmUpOwpAQCAtMTAwMiw2ICsxMDExLDExIEBAIFdlYlBhZ2U6On5XZWJQYWdlKCkKICAgICAg
ICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFdURjo6bnVsbG9wdCk7CiAgICAgfQogI2VuZGlmCisg
ICAgCisjaWYgSEFWRShTVEFUSUNfRk9OVF9SRUdJU1RSWSkKKyAgICBpZiAobV9mb250RXh0ZW5z
aW9uKQorICAgICAgICBtX2ZvbnRFeHRlbnNpb24tPnJldm9rZSgpOworI2VuZGlmCiB9CiAKIElQ
Qzo6Q29ubmVjdGlvbiogV2ViUGFnZTo6bWVzc2FnZVNlbmRlckNvbm5lY3Rpb24oKSBjb25zdApJ
bmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAkocmV2aXNp
b24gMjcyODQ5KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMjQzLDYgKzIyNDMsMTAgQEAgcHJpdmF0ZToKICNpZiBFTkFC
TEUoSU1BR0VfRVhUUkFDVElPTikKICAgICBXZWFrSGFzaFNldDxXZWJDb3JlOjpFbGVtZW50PiBt
X2VsZW1lbnRzV2l0aEV4dHJhY3RlZEltYWdlczsKICNlbmRpZgorCisjaWYgSEFWRShTVEFUSUNf
Rk9OVF9SRUdJU1RSWSkKKyAgICBSZWZQdHI8U2FuZGJveEV4dGVuc2lvbj4gbV9mb250RXh0ZW5z
aW9uOworI2VuZGlmCiB9OwogCiAjaWYgIVBMQVRGT1JNKElPU19GQU1JTFkpCg==
</data>
<flag name="review"
          id="438988"
          type_id="1"
          status="+"
          setter="bfulgham"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>420641</attachid>
            <date>2021-02-17 07:21:11 -0800</date>
            <delta_ts>2021-02-17 08:16:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221610-20210217072110.patch</filename>
            <type>text/plain</type>
            <size>11618</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNzI5OTMpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDIxLTAyLTE3ICBQZXIgQXJuZSAgPHB2b2xsYW5A
YXBwbGUuY29tPgorCisgICAgICAgIFttYWNPU10gRGVueSBtYWNoLWxvb2t1cCB0byB0aGUgZm9u
dHMgc2VydmljZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjIxNjEwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82OTE2ODYwOT4KKworICAgICAgICBS
ZXZpZXdlZCBieSBCcmVudCBGdWxnaGFtLgorCisgICAgICAgIEFkZCBIQVZFIGRlZmluZSBmb3Ig
cGxhdGZvcm0gc3RhdGljIGZvbnQgcmVnaXN0cnkuCisKKyAgICAgICAgKiB3dGYvUGxhdGZvcm1I
YXZlLmg6CisKIDIwMjEtMDItMTYgIFNhbSBXZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgogCiAg
ICAgICAgIEFkZCBDU1MgcHJvcGVydHkgdG8gZW5hYmxlIHNlcGFyYXRlZCBiaXQgb24gR3JhcGhp
Y3NMYXllcgpJbmRleDogU291cmNlL1dURi93dGYvUGxhdGZvcm1IYXZlLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvUGxhdGZvcm1IYXZlLmgJKHJldmlzaW9uIDI3Mjk5MykKKysrIFNv
dXJjZS9XVEYvd3RmL1BsYXRmb3JtSGF2ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC04ODQsMyArODg0
LDcgQEAKICNkZWZpbmUgSEFWRV9DT1JFX0dSQVBISUNTX1JPTU1SR0JfQ09MT1JfU1BBQ0UgMQog
I2RlZmluZSBIQVZFX0NPUkVfR1JBUEhJQ1NfWFlaX0NPTE9SX1NQQUNFIDEKICNlbmRpZgorCisj
aWYgUExBVEZPUk0oTUFDKSAmJiBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEy
MDAwMAorI2RlZmluZSBIQVZFX1NUQVRJQ19GT05UX1JFR0lTVFJZIDEKKyNlbmRpZgpJbmRleDog
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwkocmV2aXNpb24gMjcyOTkzKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMjEtMDItMTcgIFBlciBBcm5lICA8cHZv
bGxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBEZW55IG1hY2gtbG9va3VwIHRvIHRo
ZSBmb250cyBzZXJ2aWNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjE2MTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY5MTY4NjA5PgorCisgICAg
ICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisKKyAgICAgICAgRGlzYWJsZSBnbG9iYWwg
Zm9udCBwcmV3YXJtaW5nIHdoZW4gdGhlIHBsYXRmb3JtIGhhcyBhIHN0YXRpYyBmb250IHJlZ2lz
dHJ5LiBGb250IHByZXdhcm1pbmcgd2lsbCBhdHRlbXB0IHRvIGNvbW11bmljYXRlIHdpdGggdGhl
IGZvbnQgZGFlbW9uLiBTaW5jZSB0aGlzIHVzdWFsbHkKKyAgICAgICAgd2lsbCB0YWtlIHBsYWNl
IGJlZm9yZSB0aGUgZmlyc3QgcGFnZSBsb2FkIHdoZXJlIHRoZSBkZWNpc2lvbiBhYm91dCB1c2lu
ZyB0aGUgc3RhdGljIHJlZ2lzdHJ5IGlzIG1hZGUsIGFuZCB0aGlzIGNoYW5nZSBieSBkZWZhdWx0
IGJsb2NrcyBhY2Nlc3MgdG8gdGhlIGZvbnQgZGFlbW9uLAorICAgICAgICB0aGUgc3lzdGVtIHdp
bGwgYXV0b21hdGljYWxseSBjaG9vc2UgdG8gdXNlIHRoZSBzdGF0aWMgcmVnaXN0cnkuIFRoaXMg
bWlnaHQgYmUgdGhlIHdyb25nIGNob2ljZSwgYW5kIGl0IGlzIGN1cnJlbnRseSBub3QgcG9zc2li
bGUgdG8gc3dpdGNoIHRvIG5vdCB1c2UgdGhlIHN0YXRpYworICAgICAgICByZWdpc3RyeSBhdCBh
IGxhdGVyIHBvaW50LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgY292ZXJlZCBieSBleGlzdGlu
ZyB0ZXN0cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRDYWNoZUNv
cmVUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRDYWNoZTo6cHJld2FybUdsb2JhbGx5
KToKKwogMjAyMS0wMi0xNyAgQW5kcmVzIEdvbnphbGV6ICA8YW5kcmVzZ18yMkBhcHBsZS5jb20+
CiAKICAgICAgICAgU3VwcG9ydCBhcmlhLWVycm9ybWVzc2FnZSBvbiBpT1MuCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9u
dENhY2hlQ29yZVRleHQuY3BwCShyZXZpc2lvbiAyNzI5OTMpCisrKyBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250Q2FjaGVDb3JlVGV4dC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTE2MDQsNiArMTYwNCw3IEBAIHZvaWQgRm9udENhY2hlOjpwcmV3YXJtKGNvbnN0IFBy
ZXdhcm1JbmYKIAogdm9pZCBGb250Q2FjaGU6OnByZXdhcm1HbG9iYWxseSgpCiB7CisjaWYgIUhB
VkUoU1RBVElDX0ZPTlRfUkVHSVNUUlkpCiAgICAgaWYgKE1lbW9yeVByZXNzdXJlSGFuZGxlcjo6
c2luZ2xldG9uKCkuaXNVbmRlck1lbW9yeVByZXNzdXJlKCkpCiAgICAgICAgIHJldHVybjsKIApA
QCAtMTYyMyw2ICsxNjI0LDcgQEAgdm9pZCBGb250Q2FjaGU6OnByZXdhcm1HbG9iYWxseSgpCiAg
ICAgRm9udENhY2hlOjpQcmV3YXJtSW5mb3JtYXRpb24gcHJld2FybUluZm87CiAgICAgcHJld2Fy
bUluZm8uc2VlbkZhbWlsaWVzID0gV1RGTW92ZShmYW1pbGllcyk7CiAgICAgRm9udENhY2hlOjpz
aW5nbGV0b24oKS5wcmV3YXJtKHByZXdhcm1JbmZvKTsKKyNlbmRpZgogfQogCiB9CkluZGV4OiBT
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZwkocmV2aXNpb24gMjcyOTkzKQorKysgU291cmNlL1dlYktpdC9DaGFuZ2VMb2cJKHdvcmtp
bmcgY29weSkKQEAgLTEsMyArMSwyOCBAQAorMjAyMS0wMi0xNyAgUGVyIEFybmUgIDxwdm9sbGFu
QGFwcGxlLmNvbT4KKworICAgICAgICBbbWFjT1NdIERlbnkgbWFjaC1sb29rdXAgdG8gdGhlIGZv
bnRzIHNlcnZpY2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIyMTYxMAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjkxNjg2MDk+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQnJlbnQgRnVsZ2hhbS4KKworICAgICAgICBUaGlzIGNoYW5nZSB3aWxsIGJ5
IGRlZmF1bHQgYmxvY2sgYWNjZXNzIHRvIHRoZSBmb250IGRhZW1vbiB3aGVuIHRoZSBwbGF0Zm9y
bSBoYXMgc3VwcG9ydCBmb3IgYSBzdGF0aWMgZm9udCByZWdpc3RyeS4gV2hlbiB0aGUgY2xpZW50
IHByZWZlcnMKKyAgICAgICAgdG8gYWxsb3cgdXNlciBpbnN0YWxsZWQgZm9udHMsIG9yIFNhZmFy
aSBSZWFkZXIgY29uZmlndXJhdGlvbiBoYXMgYmVlbiBjdXN0b21pemVkLCBhY2Nlc3MgdG8gdGhl
IGZvbnQgZGFlbW9uIHdpbGwgc3RpbGwgYmUgYWxsb3dlZCBieSBpc3N1aW5nCisgICAgICAgIGFu
IGV4dGVuc2lvbiB0byB0aGUgZm9udCBkYWVtb24uCisKKyAgICAgICAgKiBTaGFyZWQvV2ViUGFn
ZUNyZWF0aW9uUGFyYW1ldGVycy5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VDcmVhdGlv
blBhcmFtZXRlcnM6OmVuY29kZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VDcmVh
dGlvblBhcmFtZXRlcnM6OmRlY29kZSk6CisgICAgICAgICogU2hhcmVkL1dlYlBhZ2VDcmVhdGlv
blBhcmFtZXRlcnMuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6Y3VzdG9taXplZFJlYWRlckNvbmZpZ3VyYXRpb24pOgorICAgICAgICAo
V2ViS2l0OjpXZWJQYWdlUHJveHk6OmNyZWF0aW9uUGFyYW1ldGVycyk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjptX2xpbWl0c05h
dmlnYXRpb25zVG9BcHBCb3VuZERvbWFpbnMpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp+
V2ViUGFnZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL2NvbS5hcHBsZS5XZWJQcm9jZXNzLnNiLmluOgorCiAyMDIxLTAyLTE3
ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBS
RUdSRVNTSU9OKHIyNzI2MzYpIFtHVEtdIENyYXNoIGFuZCBmYWlsdXJlcyBpbiBBUEkgdGVzdCAv
V2ViS2l0Mkd0ay9UZXN0UmVzb3VyY2VzCkluZGV4OiBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQ
YWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAkocmV2aXNpb24gMjcyOTkzKQorKysg
U291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTEyMCw2ICsxMjAsOSBAQCB2b2lkIFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRl
cnM6OmVuY29kZShJCiAgICAgZW5jb2RlciA8PCBncHVJT0tpdEV4dGVuc2lvbkhhbmRsZXM7CiAg
ICAgZW5jb2RlciA8PCBncHVNYWNoRXh0ZW5zaW9uSGFuZGxlczsKICNlbmRpZgorI2lmIEhBVkUo
U1RBVElDX0ZPTlRfUkVHSVNUUlkpCisgICAgZW5jb2RlciA8PCBmb250TWFjaEV4dGVuc2lvbkhh
bmRsZTsKKyNlbmRpZgogI2lmIEhBVkUoQVBQX0FDQ0VOVF9DT0xPUlMpCiAgICAgZW5jb2RlciA8
PCBhY2NlbnRDb2xvcjsKICNlbmRpZgpAQCAtNDAxLDYgKzQwNCwxNCBAQCBPcHRpb25hbDxXZWJQ
YWdlQ3JlYXRpb25QYXJhbWV0ZXJzPiBXZWJQCiAgICAgcGFyYW1ldGVycy5ncHVNYWNoRXh0ZW5z
aW9uSGFuZGxlcyA9IFdURk1vdmUoKmdwdU1hY2hFeHRlbnNpb25IYW5kbGVzKTsKICNlbmRpZgog
CisjaWYgSEFWRShTVEFUSUNfRk9OVF9SRUdJU1RSWSkKKyAgICBPcHRpb25hbDxPcHRpb25hbDxT
YW5kYm94RXh0ZW5zaW9uOjpIYW5kbGU+PiBmb250TWFjaEV4dGVuc2lvbkhhbmRsZTsKKyAgICBk
ZWNvZGVyID4+IGZvbnRNYWNoRXh0ZW5zaW9uSGFuZGxlOworICAgIGlmICghZm9udE1hY2hFeHRl
bnNpb25IYW5kbGUpCisgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CisgICAgcGFyYW1ldGVy
cy5mb250TWFjaEV4dGVuc2lvbkhhbmRsZSA9IFdURk1vdmUoKmZvbnRNYWNoRXh0ZW5zaW9uSGFu
ZGxlKTsKKyNlbmRpZgorCiAjaWYgSEFWRShBUFBfQUNDRU5UX0NPTE9SUykKICAgICBpZiAoIWRl
Y29kZXIuZGVjb2RlKHBhcmFtZXRlcnMuYWNjZW50Q29sb3IpKQogICAgICAgICByZXR1cm4gV1RG
OjpudWxsb3B0OwpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFy
YW1ldGVycy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBhZ2VDcmVh
dGlvblBhcmFtZXRlcnMuaAkocmV2aXNpb24gMjcyOTkzKQorKysgU291cmNlL1dlYktpdC9TaGFy
ZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xNzksNiAr
MTc5LDkgQEAgc3RydWN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMgewogICAgIFNhbmRib3hF
eHRlbnNpb246OkhhbmRsZUFycmF5IGdwdUlPS2l0RXh0ZW5zaW9uSGFuZGxlczsKICAgICBTYW5k
Ym94RXh0ZW5zaW9uOjpIYW5kbGVBcnJheSBncHVNYWNoRXh0ZW5zaW9uSGFuZGxlczsKICNlbmRp
ZgorI2lmIEhBVkUoU1RBVElDX0ZPTlRfUkVHSVNUUlkpCisgICAgT3B0aW9uYWw8U2FuZGJveEV4
dGVuc2lvbjo6SGFuZGxlPiBmb250TWFjaEV4dGVuc2lvbkhhbmRsZTsKKyNlbmRpZgogI2lmIEhB
VkUoQVBQX0FDQ0VOVF9DT0xPUlMpCiAgICAgV2ViQ29yZTo6Q29sb3IgYWNjZW50Q29sb3I7CiAj
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAkocmV2
aXNpb24gMjcyOTkzKQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtNzY2Niw2ICs3NjY2LDM1IEBAIHN0YXRpYyBjb25zdCBWZWN0
b3I8QVNDSUlMaXRlcmFsPiYgbWVkaWEKIH0KICNlbmRpZgogCisjaWYgSEFWRShTVEFUSUNfRk9O
VF9SRUdJU1RSWSkKK3N0YXRpYyBib29sIGN1c3RvbWl6ZWRSZWFkZXJDb25maWd1cmF0aW9uKCkK
K3sKKyAgICBhdXRvIGNvbmZpZ3VyYXRpb24gPSBhZG9wdENGKENGUHJlZmVyZW5jZXNDb3B5QXBw
VmFsdWUoQ0ZTVFIoIlJlYWRlckNvbmZpZ3VyYXRpb24iKSwga0NGUHJlZmVyZW5jZXNDdXJyZW50
QXBwbGljYXRpb24pKTsKKyAgICBpZiAoIWNvbmZpZ3VyYXRpb24gfHwgQ0ZHZXRUeXBlSUQoY29u
ZmlndXJhdGlvbi5nZXQoKSkgIT0gQ0ZEaWN0aW9uYXJ5R2V0VHlwZUlEKCkpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICBhdXRvIGZvbnRGYW1pbHlOYW1lRm9yTGFuZ3VhZ2VUYWcgPSBDRkRp
Y3Rpb25hcnlHZXRWYWx1ZShzdGF0aWNfY2FzdDxDRkRpY3Rpb25hcnlSZWY+KGNvbmZpZ3VyYXRp
b24uZ2V0KCkpLCBDRlNUUigiZm9udEZhbWlseU5hbWVGb3JMYW5ndWFnZVRhZyIpKTsKKyAgICBp
ZiAoIWZvbnRGYW1pbHlOYW1lRm9yTGFuZ3VhZ2VUYWcgfHwgQ0ZHZXRUeXBlSUQoZm9udEZhbWls
eU5hbWVGb3JMYW5ndWFnZVRhZykgIT0gQ0ZEaWN0aW9uYXJ5R2V0VHlwZUlEKCkpCisgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICBhdXRvIGZvbnRGYW1pbHlOYW1lRm9yTGFuZ3VhZ2VUYWdEaWN0
aW9uYXJ5ID0gc3RhdGljX2Nhc3Q8Q0ZEaWN0aW9uYXJ5UmVmPihmb250RmFtaWx5TmFtZUZvckxh
bmd1YWdlVGFnKTsKKyAgICBhdXRvIGNvdW50ID0gQ0ZEaWN0aW9uYXJ5R2V0Q291bnQoZm9udEZh
bWlseU5hbWVGb3JMYW5ndWFnZVRhZ0RpY3Rpb25hcnkpOworICAgIFZlY3RvcjxDRlR5cGVSZWY+
IGZvbnRGYW1pbHlWYWx1ZXMoY291bnQpOworICAgIENGRGljdGlvbmFyeUdldEtleXNBbmRWYWx1
ZXMoZm9udEZhbWlseU5hbWVGb3JMYW5ndWFnZVRhZ0RpY3Rpb25hcnksIG51bGxwdHIsIGZvbnRG
YW1pbHlWYWx1ZXMuZGF0YSgpKTsKKworICAgIGZvciAoYXV0byBmb250IDogZm9udEZhbWlseVZh
bHVlcykgeworICAgICAgICBpZiAoIWZvbnQgfHwgQ0ZHZXRUeXBlSUQoZm9udCkgIT0gQ0ZTdHJp
bmdHZXRUeXBlSUQoKSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICBpZiAoU3RyaW5n
KHN0YXRpY19jYXN0PENGU3RyaW5nUmVmPihmb250KSkgIT0gIlN5c3RlbSIpCisgICAgICAgICAg
ICByZXR1cm4gdHJ1ZTsKKyAgICB9CisgICAgcmV0dXJuIGZhbHNlOworfQorCitzdGF0aWMgYm9v
bCBkaXNhYmxlU3RhdGljRm9udFJlZ2lzdHJ5KCkKK3sKKyAgICByZXR1cm4gQ0ZQcmVmZXJlbmNl
c0dldEFwcEJvb2xlYW5WYWx1ZShDRlNUUigiV2ViS2l0RGlzYWJsZVN0YXRpY0ZvbnRSZWdpc3Ry
eSIpLCBrQ0ZQcmVmZXJlbmNlc0N1cnJlbnRBcHBsaWNhdGlvbiwgbnVsbHB0cik7Cit9CisjZW5k
aWYgLy8gSEFWRShTVEFUSUNfRk9OVF9SRUdJU1RSWSkKKwogV2ViUGFnZUNyZWF0aW9uUGFyYW1l
dGVycyBXZWJQYWdlUHJveHk6OmNyZWF0aW9uUGFyYW1ldGVycyhXZWJQcm9jZXNzUHJveHkmIHBy
b2Nlc3MsIERyYXdpbmdBcmVhUHJveHkmIGRyYXdpbmdBcmVhLCBSZWZQdHI8QVBJOjpXZWJzaXRl
UG9saWNpZXM+JiYgd2Vic2l0ZVBvbGljaWVzKQogewogICAgIFdlYlBhZ2VDcmVhdGlvblBhcmFt
ZXRlcnMgcGFyYW1ldGVyczsKQEAgLTc3NzAsNiArNzc5OSwxNSBAQCBXZWJQYWdlQ3JlYXRpb25Q
YXJhbWV0ZXJzIFdlYlBhZ2VQcm94eTo6CiAgICAgICAgIHBhcmFtZXRlcnMuZ3B1TWFjaEV4dGVu
c2lvbkhhbmRsZXMgPSBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVzRm9yTWFjaExvb2t1
cChncHVNYWNoU2VydmljZXMoKSwgV1RGOjpudWxsb3B0KTsKICAgICB9CiAjZW5kaWYKKyNpZiBI
QVZFKFNUQVRJQ19GT05UX1JFR0lTVFJZKQorICAgIGlmIChkaXNhYmxlU3RhdGljRm9udFJlZ2lz
dHJ5KCkKKyAgICAgICAgfHwgcHJlZmVyZW5jZXMoKS5zaG91bGRBbGxvd1VzZXJJbnN0YWxsZWRG
b250cygpCisgICAgICAgIHx8IChXZWJDb3JlOjpNYWNBcHBsaWNhdGlvbjo6aXNTYWZhcmkoKSAm
JiBjdXN0b21pemVkUmVhZGVyQ29uZmlndXJhdGlvbigpKSkgeworICAgICAgICBTYW5kYm94RXh0
ZW5zaW9uOjpIYW5kbGUgZm9udE1hY2hFeHRlbnNpb25IYW5kbGU7CisgICAgICAgIFNhbmRib3hF
eHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvck1hY2hMb29rdXAoImNvbS5hcHBsZS5mb250cyJfcywg
V1RGOjpudWxsb3B0LCBmb250TWFjaEV4dGVuc2lvbkhhbmRsZSk7CisgICAgICAgIHBhcmFtZXRl
cnMuZm9udE1hY2hFeHRlbnNpb25IYW5kbGUgPSBXVEZNb3ZlKGZvbnRNYWNoRXh0ZW5zaW9uSGFu
ZGxlKTsKKyAgICB9CisjZW5kaWYKICNpZiBIQVZFKEFQUF9BQ0NFTlRfQ09MT1JTKQogICAgIHBh
cmFtZXRlcnMuYWNjZW50Q29sb3IgPSBwYWdlQ2xpZW50KCkuYWNjZW50Q29sb3IoKTsKICNlbmRp
ZgpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvbS5hcHBsZS5XZWJQcm9jZXNzLnNi
LmluCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb20uYXBwbGUuV2Vi
UHJvY2Vzcy5zYi5pbgkocmV2aXNpb24gMjcyOTkzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL2NvbS5hcHBsZS5XZWJQcm9jZXNzLnNiLmluCSh3b3JraW5nIGNvcHkpCkBAIC0xMTE3LDE3
ICsxMTE3LDI2IEBACiAjZW5kaWYKICkKIAotKGFsbG93IG1hY2gtbG9va3VwCi0jaWYgX19NQUNf
T1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMTAwMDAKLSAgICAod2l0aCByZXBvcnQpICh3
aXRoIHRlbGVtZXRyeS1iYWNrdHJhY2UpCi0jZW5kaWYKICNpZiBfX01BQ19PU19YX1ZFUlNJT05f
TUlOX1JFUVVJUkVEIDw9IDExMDAwMAorKGFsbG93IG1hY2gtbG9va3VwCiAgICAgKGdsb2JhbC1u
YW1lICJjb20uYXBwbGUuUG93ZXJNYW5hZ2VtZW50LmNvbnRyb2wiKQogICAgIChnbG9iYWwtbmFt
ZSAiY29tLmFwcGxlLlN5c3RlbUNvbmZpZ3VyYXRpb24uY29uZmlnZCIpCiAgICAgKGdsb2JhbC1u
YW1lICJjb20uYXBwbGUuYXNzZXJ0aW9uZC5wcm9jZXNzYXNzZXJ0aW9uY29ubmVjdGlvbiIpCisp
CiAjZW5kaWYKKworI2lmIEhBVkUoU1RBVElDX0ZPTlRfUkVHSVNUUlkpCisoYWxsb3cgbWFjaC1s
b29rdXAKKyAgICAocmVxdWlyZS1hbGwKKyAgICAgICAgKGV4dGVuc2lvbiAiY29tLmFwcGxlLndl
YmtpdC5leHRlbnNpb24ubWFjaCIpCisgICAgICAgIChnbG9iYWwtbmFtZSAiY29tLmFwcGxlLmZv
bnRzIikKKyAgICApCispCisjZWxzZQorKGFsbG93IG1hY2gtbG9va3VwCiAgICAgKGdsb2JhbC1u
YW1lICJjb20uYXBwbGUuZm9udHMiKQogKQorI2VuZGlmCiAKICNpZiBfX01BQ19PU19YX1ZFUlNJ
T05fTUlOX1JFUVVJUkVEID49IDExMDAwMAogKGRlbnkgbWFjaC1sb29rdXAgKHdpdGggdGVsZW1l
dHJ5LWJhY2t0cmFjZSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwCShyZXZpc2lvbiAyNzI5OTMpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjIxLDYgKzYyMSwxNSBA
QCBXZWJQYWdlOjpXZWJQYWdlKFBhZ2VJZGVudGlmaWVyIHBhZ2VJRCwgCiAgICAgfQogI2VuZGlm
CiAKKyNpZiBIQVZFKFNUQVRJQ19GT05UX1JFR0lTVFJZKQorICAgIGlmIChwYXJhbWV0ZXJzLmZv
bnRNYWNoRXh0ZW5zaW9uSGFuZGxlKSB7CisgICAgICAgIGlmICgobV9mb250RXh0ZW5zaW9uID0g
U2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlKFdURk1vdmUoKnBhcmFtZXRlcnMuZm9udE1hY2hFeHRl
bnNpb25IYW5kbGUpKSkpIHsKKyAgICAgICAgICAgIGJvb2wgb2sgPSBtX2ZvbnRFeHRlbnNpb24t
PmNvbnN1bWUoKTsKKyAgICAgICAgICAgIEFTU0VSVF9VTlVTRUQob2ssIG9rKTsKKyAgICAgICAg
fQorICAgIH0KKyNlbmRpZgorCiAgICAgbV9wYWdlID0gbWFrZVVuaXF1ZTxQYWdlPihXVEZNb3Zl
KHBhZ2VDb25maWd1cmF0aW9uKSk7CiAKICAgICB1cGRhdGVQcmVmZXJlbmNlcyhwYXJhbWV0ZXJz
LnN0b3JlKTsKQEAgLTEwMDQsNiArMTAxMywxMSBAQCBXZWJQYWdlOjp+V2ViUGFnZSgpCiAgICAg
ICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEY6Om51bGxvcHQpOwogICAgIH0KICNlbmRpZgor
ICAgIAorI2lmIEhBVkUoU1RBVElDX0ZPTlRfUkVHSVNUUlkpCisgICAgaWYgKG1fZm9udEV4dGVu
c2lvbikKKyAgICAgICAgbV9mb250RXh0ZW5zaW9uLT5yZXZva2UoKTsKKyNlbmRpZgogfQogCiBJ
UEM6OkNvbm5lY3Rpb24qIFdlYlBhZ2U6Om1lc3NhZ2VTZW5kZXJDb25uZWN0aW9uKCkgY29uc3QK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgJKHJldmlz
aW9uIDI3Mjk5MykKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2Uu
aAkod29ya2luZyBjb3B5KQpAQCAtMjI0MSw2ICsyMjQxLDEwIEBAIHByaXZhdGU6CiAjaWYgRU5B
QkxFKElNQUdFX0VYVFJBQ1RJT04pCiAgICAgV2Vha0hhc2hTZXQ8V2ViQ29yZTo6RWxlbWVudD4g
bV9lbGVtZW50c1dpdGhFeHRyYWN0ZWRJbWFnZXM7CiAjZW5kaWYKKworI2lmIEhBVkUoU1RBVElD
X0ZPTlRfUkVHSVNUUlkpCisgICAgUmVmUHRyPFNhbmRib3hFeHRlbnNpb24+IG1fZm9udEV4dGVu
c2lvbjsKKyNlbmRpZgogfTsKIAogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>