<?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>240160</bug_id>
          
          <creation_ts>2022-05-06 02:32:00 -0700</creation_ts>
          <short_desc>IPC cannot encode, decode Ref&lt;&gt;, creating duplicate code</short_desc>
          <delta_ts>2022-05-13 12:17:35 -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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kimmo Kinnunen">kkinnunen</reporter>
          <assigned_to name="Kimmo Kinnunen">kkinnunen</assigned_to>
          <cc>koivisto</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1867141</commentid>
    <comment_count>0</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-05-06 02:32:00 -0700</bug_when>
    <thetext>IPC cannot encode, decode Ref&lt;&gt;, creating duplicate code</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1867147</commentid>
    <comment_count>1</comment_count>
      <attachid>458944</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-05-06 02:47:27 -0700</bug_when>
    <thetext>Created attachment 458944
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1867158</commentid>
    <comment_count>2</comment_count>
      <attachid>458947</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-05-06 04:55:15 -0700</bug_when>
    <thetext>Created attachment 458947
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1867578</commentid>
    <comment_count>3</comment_count>
      <attachid>459030</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-05-08 23:58:33 -0700</bug_when>
    <thetext>Created attachment 459030
[fast-cq] Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1868698</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-05-13 02:32:12 -0700</bug_when>
    <thetext>&lt;rdar://problem/93234732&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1868828</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-05-13 12:17:32 -0700</bug_when>
    <thetext>Committed r294169 (250537@main): &lt;https://commits.webkit.org/250537@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 459030.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>458944</attachid>
            <date>2022-05-06 02:47:27 -0700</date>
            <delta_ts>2022-05-06 04:55:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-240160-20220506124725.patch</filename>
            <type>text/plain</type>
            <size>15037</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkzODgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDYwMGRmMDM5MDBjOTA1ZWQ1
ODAzMzc1NmQ3MTU2MDQwZDRlZWRhZDAuLjE1NTMxMzQzZDlhMmY3YTNjZWI1OTdhOTc2MGYzNTZi
NWZhMmNhMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjItMDUtMDYgIEtpbW1vIEtp
bm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKworICAgICAgICBJUEMgY2Fubm90IGVuY29k
ZSwgZGVjb2RlIFJlZjw+LCBjYXVzaW5nIGR1cGxpY2F0ZSBjb2RlCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDAxNjAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZWZlcmVuY2UgY291bnRlZCB0eXBlIFQ6
CisgICAgICAgIEVuY29kaW5nIGlzIHNpZ25hdHVyZSBgZW5jb2RlKGNvbnN0IFQmKWAKKyAgICAg
ICAgRGVjb2RpbmcgaXMgc2lnbmF0dXJlIGBzdGQ6Om9wdGlvbmFsPFJlZjxUPj4gZGVjb2RlKClg
CisgICAgICAgIFRoaXMgaXMgdXNhYmxlIGZvciBib3RoIGBSZWZQdHJgIGFuZCBgUmVmYCB1c2Ut
Y2FzZXMuCisKKyAgICAgICAgQWRkIGBSZWY8VD5gIGVuY29kZXIgdGhhdCBpcyBwb2x5bW9yaGlj
IHRvIGBUYC4KKyAgICAgICAgVGhpcyB3YXkgY2xpZW50cyBkbyBub3QgbmVlZCB0byB3cml0ZSBl
bmNvZGVycyBmb3IKKyAgICAgICAgYFJlZjxUPmAsIGBSZWZQdHI8VD5gLiBUaGV5IGp1c3QgbmVl
ZCBvbmUgZW5jb2RlciwgZm9yIGBUYC4KKworICAgICAgICBXaGVuIGNsaWVudHMgZG8gbm90IG5l
ZWQgdG8gd3JpdGUgYFJlZlB0cjxUPmAsIHRoZXkgbWFrZSBsZXNzCisgICAgICAgIGJ1Z3MuIFRo
ZXNlIHdpbGwgYmUgY29ycmVjdGVkIGluIGZ1dHVyZSBwYXRjaGVzLgorCisgICAgICAgIEhhdmlu
ZyBgUmVmPFQ+YCBlbmNvZGVycyBhbGxvd3MgY2xpZW50cyB0byB1c2UgYFZlY3RvcjxSZWY8VD5g
IGVuY29kaW5nCisgICAgICAgIHZpYSBgVmVjdG9yPFU+YCBlbmNvZGVyLCBhbmQgdGhleSB3b3Vs
ZCBub3QgbmVlZCB0byBkdXBsaWNhdGUgdGhhdAorICAgICAgICBsb2dpYywgbWFraW5nIGxlc3Mg
YnVncy4gVGhlc2Ugd2lsbCBiZSBjb3JyZWN0ZWQgaW4gZnV0dXJlIHBhdGNoZXMuCisKKyAgICAg
ICAgUmVtb3ZlIG1vc3QgYElQQzo6QXJndW1lbnRDb2RlcjxSZWY8Li4+PmAgaW4gZmF2b3Igb2Yg
YElQQzo6QXJndW1lbnRDb2RlcjwuLj5gLgorICAgICAgICBJbiB0aGUgY2FzZXMgd2hlcmUgcmVt
b3ZhbCB3YXMgZG9uZSwgcmVtb3ZlIGFsc28gcmVkdW5kYW50CisgICAgICAgIGBJUEM6OkFyZ3Vt
ZW50Q29kZXI8UmVmUHRyPC4uPj5gLgorCisgICAgICAgICogUGxhdGZvcm0vSVBDL0FyZ3VtZW50
Q29kZXJzLmg6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8UmVmUHRyPFQ+Pjo6ZGVjb2Rl
KToKKyAgICAgICAgKElQQzo6QXJndW1lbnRDb2RlcjxSZWY8VD4+OjplbmNvZGUpOgorICAgICAg
ICAoSVBDOjpBcmd1bWVudENvZGVyPFJlZjxUPj46OmRlY29kZSk6CisgICAgICAgICogU2hhcmVk
L0NvY29hL1dlYkNvcmVBcmd1bWVudENvZGVyc0NvY29hLm1tOgorICAgICAgICAoSVBDOjpBcmd1
bWVudENvZGVyPFdlYkNvcmU6OkZvbnQ+OjplbmNvZGVQbGF0Zm9ybURhdGEpOgorICAgICAgICAo
SVBDOjpBcmd1bWVudENvZGVyPFdlYkNvcmU6OkZvbnQ+OjpkZWNvZGVQbGF0Zm9ybURhdGEpOgor
ICAgICAgICAqIFNoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwOgorICAgICAgICAoSVBD
OjpBcmd1bWVudENvZGVyPFdlYkNvcmU6OkZvbnQ+OjplbmNvZGUpOgorICAgICAgICAoSVBDOjpB
cmd1bWVudENvZGVyPEZvbnQ+OjpkZWNvZGUpOgorICAgICAgICAoSVBDOjpBcmd1bWVudENvZGVy
PFN5c3RlbUltYWdlPjo6ZW5jb2RlKToKKyAgICAgICAgKElQQzo6QXJndW1lbnRDb2RlcjxTeXN0
ZW1JbWFnZT46OmRlY29kZSk6CisgICAgICAgICogU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVy
cy5oOgorICAgICAgICAqIFNoYXJlZC9wbGF5c3RhdGlvbi9XZWJDb3JlQXJndW1lbnRDb2RlcnNQ
bGF5U3RhdGlvbi5jcHA6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Rm9udD46OmVuY29k
ZVBsYXRmb3JtRGF0YSk6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Rm9udD46OmRlY29k
ZVBsYXRmb3JtRGF0YSk6CisgICAgICAgICogU2hhcmVkL3NvdXAvV2ViQ29yZUFyZ3VtZW50Q29k
ZXJzU291cC5jcHA6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Rm9udD46OmVuY29kZVBs
YXRmb3JtRGF0YSk6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Rm9udD46OmRlY29kZVBs
YXRmb3JtRGF0YSk6CisgICAgICAgICogU2hhcmVkL3dpbi9XZWJDb3JlQXJndW1lbnRDb2RlcnNX
aW4uY3BwOgorICAgICAgICAoSVBDOjpBcmd1bWVudENvZGVyPEZvbnQ+OjplbmNvZGVQbGF0Zm9y
bURhdGEpOgorICAgICAgICAoSVBDOjpBcmd1bWVudENvZGVyPEZvbnQ+OjpkZWNvZGVQbGF0Zm9y
bURhdGEpOgorCiAyMDIyLTA1LTA2ICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5j
b20+CiAKICAgICAgICAgR1BVIFByb2Nlc3MgY3Jhc2ggdW5kZXIgSVBDOjpDb25uZWN0aW9uOjpv
cGVuKCkgQVNTRVJUSU9OIEZBSUxFRDogbV9zZW5kUG9ydApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9QbGF0Zm9ybS9JUEMvQXJndW1lbnRDb2RlcnMuaCBiL1NvdXJjZS9XZWJLaXQvUGxhdGZv
cm0vSVBDL0FyZ3VtZW50Q29kZXJzLmgKaW5kZXggNzIzMzEyYzdlZGIwNTkyZGQ2OGU3NWY2ZGEz
MDkzODYyZTIzZTA3NS4uZjQ3MTU3MDBjOGIyM2RlOGRlZDEyMDRiNzU2MGY1OGY5ZGViYmYwNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvQXJndW1lbnRDb2RlcnMuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9Bcmd1bWVudENvZGVycy5oCkBAIC0zNDYs
NyArMzQ2LDcgQEAgdGVtcGxhdGU8dHlwZW5hbWUgVCwgdHlwZW5hbWUgVT4gc3RydWN0IEFyZ3Vt
ZW50Q29kZXI8c3RkOjpwYWlyPFQsIFU+PiB7CiB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBz
dHJ1Y3QgQXJndW1lbnRDb2RlcjxSZWZQdHI8VD4+IHsKLSAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBV
ID0gVD4KKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBFbmNvZGVyLCB0eXBlbmFtZSBVID0gVD4KICAg
ICBzdGF0aWMgdm9pZCBlbmNvZGUoRW5jb2RlciYgZW5jb2RlciwgY29uc3QgUmVmUHRyPFU+JiBv
YmplY3QpCiAgICAgewogICAgICAgICBpZiAob2JqZWN0KQpAQCAtMzU1LDcgKzM1NSw3IEBAIHRl
bXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVjdCBBcmd1bWVudENvZGVyPFJlZlB0cjxUPj4gewogICAg
ICAgICAgICAgZW5jb2RlciA8PCBmYWxzZTsKICAgICB9CiAKLSAgICB0ZW1wbGF0ZTx0eXBlbmFt
ZSBVID0gVD4KKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBEZWNvZGVyLCB0eXBlbmFtZSBVID0gVD4K
ICAgICBzdGF0aWMgc3RkOjpvcHRpb25hbDxSZWZQdHI8VT4+IGRlY29kZShEZWNvZGVyJiBkZWNv
ZGVyKQogICAgIHsKICAgICAgICAgYXV0byBoYXNPYmplY3QgPSBkZWNvZGVyLnRlbXBsYXRlIGRl
Y29kZTxib29sPigpOwpAQCAtMzY2LDcgKzM2NiwyNSBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBz
dHJ1Y3QgQXJndW1lbnRDb2RlcjxSZWZQdHI8VD4+IHsKICAgICAgICAgLy8gRGVjb2RlcnMgb2Yg
VSBoZWxkIHdpdGggUmVmUHRyIGRvIG5vdCByZXR1cm4gc3RkOjpvcHRpb25hbDxVPiBidXQKICAg
ICAgICAgLy8gc3RkOjpvcHRpb25hbDxSZWZQdHI8VT4+LiBXZSBjYW5ub3QgdXNlIGBkZWNvZGVy
LnRlbXBsYXRlIGRlY29kZTxVPigpYAogICAgICAgICAvLyBDdXJyZW50bHkgZXhwZWN0ICJtb2Rl
cm4gZGVjb2RlciIgLWxpa2UgZGVjb2RlIGZ1bmN0aW9uLgotICAgICAgICByZXR1cm4gVTo6ZGVj
b2RlKGRlY29kZXIpOworICAgICAgICByZXR1cm4gQXJndW1lbnRDb2RlcjxVPjo6ZGVjb2RlKGRl
Y29kZXIpOworICAgIH0KK307CisKK3RlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVjdCBBcmd1bWVu
dENvZGVyPFJlZjxUPj4geworICAgIHRlbXBsYXRlPHR5cGVuYW1lIEVuY29kZXIsIHR5cGVuYW1l
IFUgPSBUPgorICAgIHN0YXRpYyB2b2lkIGVuY29kZShFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBS
ZWY8VT4mIG9iamVjdCkKKyAgICB7CisgICAgICAgIGVuY29kZXIgPDwgb2JqZWN0LmdldCgpOwor
ICAgIH0KKworICAgIHRlbXBsYXRlPHR5cGVuYW1lIERlY29kZXIsIHR5cGVuYW1lIFUgPSBUPgor
ICAgIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFJlZjxVPj4gZGVjb2RlKERlY29kZXImIGRlY29kZXIp
CisgICAgeworICAgICAgICAvLyBEZWNvZGVycyBvZiBVIGhlbGQgd2l0aCBSZWYgZG8gbm90IHJl
dHVybiBzdGQ6Om9wdGlvbmFsPFU+IGJ1dAorICAgICAgICAvLyBzdGQ6Om9wdGlvbmFsPFJlZjxV
Pj4uCisgICAgICAgIC8vIFdlIGNhbm5vdCB1c2UgYGRlY29kZXIudGVtcGxhdGUgZGVjb2RlPFU+
KClgCisgICAgICAgIC8vIEN1cnJlbnRseSBleHBlY3QgIm1vZGVybiBkZWNvZGVyIiAtbGlrZSBk
ZWNvZGUgZnVuY3Rpb24uCisgICAgICAgIHJldHVybiBBcmd1bWVudENvZGVyPFU+OjpkZWNvZGUo
ZGVjb2Rlcik7CiAgICAgfQogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQv
Q29jb2EvV2ViQ29yZUFyZ3VtZW50Q29kZXJzQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9Db2NvYS9XZWJDb3JlQXJndW1lbnRDb2RlcnNDb2NvYS5tbQppbmRleCBiMzI4MmI2NWE5M2Mw
MTZkYmUzNDVhMjMxMmQ0NDM3ZTQwYzQ3OTQ1Li44Yzc5YTJlNDJjNmZlZjRhNjQ1OTU0NTIyODc3
YTZiMzM1MzU0YTExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9XZWJD
b3JlQXJndW1lbnRDb2RlcnNDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2Nv
YS9XZWJDb3JlQXJndW1lbnRDb2RlcnNDb2NvYS5tbQpAQCAtNDIwLDkgKzQyMCw5IEBAIGJvb2wg
QXJndW1lbnRDb2RlcjxXZWJDb3JlOjpEaWN0aW9uYXJ5UG9wdXBJbmZvPjo6ZGVjb2RlUGxhdGZv
cm1EYXRhKERlY29kZXImIGRlCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgQXJndW1lbnRD
b2RlcjxSZWY8V2ViQ29yZTo6Rm9udD4+OjplbmNvZGVQbGF0Zm9ybURhdGEoRW5jb2RlciYgZW5j
b2RlciwgY29uc3QgUmVmPFdlYkNvcmU6OkZvbnQ+JiBmb250KQordm9pZCBBcmd1bWVudENvZGVy
PFdlYkNvcmU6OkZvbnQ+OjplbmNvZGVQbGF0Zm9ybURhdGEoRW5jb2RlciYgZW5jb2RlciwgY29u
c3QgV2ViQ29yZTo6Rm9udCYgZm9udCkKIHsKLSAgICBjb25zdCBhdXRvJiBwbGF0Zm9ybURhdGEg
PSBmb250LT5wbGF0Zm9ybURhdGEoKTsKKyAgICBjb25zdCBhdXRvJiBwbGF0Zm9ybURhdGEgPSBm
b250LnBsYXRmb3JtRGF0YSgpOwogICAgIGVuY29kZXIgPDwgcGxhdGZvcm1EYXRhLm9yaWVudGF0
aW9uKCk7CiAgICAgZW5jb2RlciA8PCBwbGF0Zm9ybURhdGEud2lkdGhWYXJpYW50KCk7CiAgICAg
ZW5jb2RlciA8PCBwbGF0Zm9ybURhdGEudGV4dFJlbmRlcmluZ01vZGUoKTsKQEAgLTQ5MSw3ICs0
OTEsNyBAQCBzdGF0aWMgUmV0YWluUHRyPENURm9udFJlZj4gY3JlYXRlQ1RGb250KENGRGljdGlv
bmFyeVJlZiBhdHRyaWJ1dGVzLCBmbG9hdCBzaXplLAogICAgIHJldHVybiBhZG9wdENGKENURm9u
dENyZWF0ZVdpdGhGb250RGVzY3JpcHRvckFuZE9wdGlvbnMoZm9udERlc2NyaXB0b3IuZ2V0KCks
IHNpemUsIG51bGxwdHIsIG9wdGlvbnMpKTsKIH0KIAotc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpG
b250UGxhdGZvcm1EYXRhPiBBcmd1bWVudENvZGVyPFJlZjxXZWJDb3JlOjpGb250Pj46OmRlY29k
ZVBsYXRmb3JtRGF0YShEZWNvZGVyJiBkZWNvZGVyKQorc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpG
b250UGxhdGZvcm1EYXRhPiBBcmd1bWVudENvZGVyPFdlYkNvcmU6OkZvbnQ+OjpkZWNvZGVQbGF0
Zm9ybURhdGEoRGVjb2RlciYgZGVjb2RlcikKIHsKICAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6
OkZvbnRPcmllbnRhdGlvbj4gb3JpZW50YXRpb247CiAgICAgZGVjb2RlciA+PiBvcmllbnRhdGlv
bjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVy
cy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwCmlu
ZGV4IGMwNDk2NjFjYmMzOGI2NDJlNTRkNzVmZTczZWI2ZTgwYjI5NGU5NzcuLmMyMjIxMmM5NmRl
ZDVjYzJhOGIwM2E3MTNlOGNjNDZhNTRmNGQ0NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFy
ZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcApAQCAtMTA3NCw0NCArMTA3NCwxOSBAQCBzdGF0
aWMgV0FSTl9VTlVTRURfUkVUVVJOIGJvb2wgZGVjb2RlT3B0aW9uYWxJbWFnZShEZWNvZGVyJiBk
ZWNvZGVyLCBSZWZQdHI8SW1hZwogICAgIHJldHVybiBkZWNvZGVJbWFnZShkZWNvZGVyLCBpbWFn
ZSk7CiB9CiAKLXZvaWQgQXJndW1lbnRDb2RlcjxSZWZQdHI8Rm9udD4+OjplbmNvZGUoRW5jb2Rl
ciYgZW5jb2RlciwgY29uc3QgUmVmUHRyPEZvbnQ+JiBmb250KQordm9pZCBBcmd1bWVudENvZGVy
PFdlYkNvcmU6OkZvbnQ+OjplbmNvZGUoRW5jb2RlciYgZW5jb2RlciwgY29uc3QgV2ViQ29yZTo6
Rm9udCYgZm9udCkKIHsKLSAgICBlbmNvZGVyIDw8ICEhZm9udDsKLSAgICBpZiAoZm9udCkKLSAg
ICAgICAgZW5jb2RlciA8PCBSZWYgeyAqZm9udCB9OwotfQotCi1zdGQ6Om9wdGlvbmFsPFJlZlB0
cjxGb250Pj4gQXJndW1lbnRDb2RlcjxSZWZQdHI8Rm9udD4+OjpkZWNvZGUoRGVjb2RlciYgZGVj
b2RlcikKLXsKLSAgICBzdGQ6Om9wdGlvbmFsPGJvb2w+IGhhc0ZvbnQ7Ci0gICAgZGVjb2RlciA+
PiBoYXNGb250OwotICAgIGlmICghaGFzRm9udCkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9w
dDsKLQotICAgIGlmICghaGFzRm9udC52YWx1ZSgpKQotICAgICAgICByZXR1cm4gc3RkOjptYWtl
X29wdGlvbmFsKG51bGxwdHIpOwotCi0gICAgc3RkOjpvcHRpb25hbDxSZWY8Rm9udD4+IGZvbnQ7
Ci0gICAgZGVjb2RlciA+PiBmb250OwotICAgIGlmICghZm9udCkKLSAgICAgICAgcmV0dXJuIHN0
ZDo6bnVsbG9wdDsKLQotICAgIHJldHVybiB7IFdURk1vdmUoKmZvbnQpIH07Ci19Ci0KLXZvaWQg
QXJndW1lbnRDb2RlcjxSZWY8Rm9udD4+OjplbmNvZGUoRW5jb2RlciYgZW5jb2RlciwgY29uc3Qg
UmVmPFdlYkNvcmU6OkZvbnQ+JiBmb250KQotewotICAgIGVuY29kZXIgPDwgZm9udC0+b3JpZ2lu
KCk7Ci0gICAgZW5jb2RlciA8PCAoZm9udC0+aXNJbnRlcnN0aXRpYWwoKSA/IEZvbnQ6OkludGVy
c3RpdGlhbDo6WWVzIDogRm9udDo6SW50ZXJzdGl0aWFsOjpObyk7Ci0gICAgZW5jb2RlciA8PCBm
b250LT52aXNpYmlsaXR5KCk7Ci0gICAgZW5jb2RlciA8PCAoZm9udC0+aXNUZXh0T3JpZW50YXRp
b25GYWxsYmFjaygpID8gRm9udDo6T3JpZW50YXRpb25GYWxsYmFjazo6WWVzIDogRm9udDo6T3Jp
ZW50YXRpb25GYWxsYmFjazo6Tm8pOwotICAgIGVuY29kZXIgPDwgZm9udC0+cmVuZGVyaW5nUmVz
b3VyY2VJZGVudGlmaWVyKCk7CisgICAgZW5jb2RlciA8PCBmb250Lm9yaWdpbigpOworICAgIGVu
Y29kZXIgPDwgKGZvbnQuaXNJbnRlcnN0aXRpYWwoKSA/IEZvbnQ6OkludGVyc3RpdGlhbDo6WWVz
IDogRm9udDo6SW50ZXJzdGl0aWFsOjpObyk7CisgICAgZW5jb2RlciA8PCBmb250LnZpc2liaWxp
dHkoKTsKKyAgICBlbmNvZGVyIDw8IChmb250LmlzVGV4dE9yaWVudGF0aW9uRmFsbGJhY2soKSA/
IEZvbnQ6Ok9yaWVudGF0aW9uRmFsbGJhY2s6OlllcyA6IEZvbnQ6Ok9yaWVudGF0aW9uRmFsbGJh
Y2s6Ok5vKTsKKyAgICBlbmNvZGVyIDw8IGZvbnQucmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVy
KCk7CiAgICAgLy8gSW50ZW50aW9uYWxseSBkb24ndCBlbmNvZGUgbV9pc0Jyb2tlbklkZW9ncmFw
aEZhbGxiYWNrIGJlY2F1c2UgaXQgZG9lc24ndCBhZmZlY3QgZHJhd0dseXBocygpLgogCiAgICAg
ZW5jb2RlUGxhdGZvcm1EYXRhKGVuY29kZXIsIGZvbnQpOwogfQogCi1zdGQ6Om9wdGlvbmFsPFJl
ZjxGb250Pj4gQXJndW1lbnRDb2RlcjxSZWY8Rm9udD4+OjpkZWNvZGUoRGVjb2RlciYgZGVjb2Rl
cikKK3N0ZDo6b3B0aW9uYWw8UmVmPEZvbnQ+PiBBcmd1bWVudENvZGVyPEZvbnQ+OjpkZWNvZGUo
RGVjb2RlciYgZGVjb2RlcikKIHsKICAgICBzdGQ6Om9wdGlvbmFsPEZvbnQ6Ok9yaWdpbj4gb3Jp
Z2luOwogICAgIGRlY29kZXIgPj4gb3JpZ2luOwpAQCAtMzE2MCwyMyArMzEzNSwyMyBAQCBzdGQ6
Om9wdGlvbmFsPFdlYkNvcmU6OlNjcmlwdEJ1ZmZlcj4gQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpT
Y3JpcHRCdWZmZXI+OjpkZWNvZAogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBFbmNvZGVyPgotdm9p
ZCBBcmd1bWVudENvZGVyPFJlZjxTeXN0ZW1JbWFnZT4+OjplbmNvZGUoRW5jb2RlciYgZW5jb2Rl
ciwgY29uc3QgUmVmPFN5c3RlbUltYWdlPiYgc3lzdGVtSW1hZ2UpCit2b2lkIEFyZ3VtZW50Q29k
ZXI8U3lzdGVtSW1hZ2U+OjplbmNvZGUoRW5jb2RlciYgZW5jb2RlciwgY29uc3QgU3lzdGVtSW1h
Z2UmIHN5c3RlbUltYWdlKQogewotICAgIGVuY29kZXIgPDwgc3lzdGVtSW1hZ2UtPnN5c3RlbUlt
YWdlVHlwZSgpOworICAgIGVuY29kZXIgPDwgc3lzdGVtSW1hZ2Uuc3lzdGVtSW1hZ2VUeXBlKCk7
CiAKLSAgICBzd2l0Y2ggKHN5c3RlbUltYWdlLT5zeXN0ZW1JbWFnZVR5cGUoKSkgeworICAgIHN3
aXRjaCAoc3lzdGVtSW1hZ2Uuc3lzdGVtSW1hZ2VUeXBlKCkpIHsKICNpZiBFTkFCTEUoQVBQTEVf
UEFZKQogICAgIGNhc2UgU3lzdGVtSW1hZ2VUeXBlOjpBcHBsZVBheUJ1dHRvbjoKLSAgICAgICAg
ZG93bmNhc3Q8QXBwbGVQYXlCdXR0b25TeXN0ZW1JbWFnZT4oc3lzdGVtSW1hZ2UuZ2V0KCkpLmVu
Y29kZShlbmNvZGVyKTsKKyAgICAgICAgZG93bmNhc3Q8QXBwbGVQYXlCdXR0b25TeXN0ZW1JbWFn
ZT4oc3lzdGVtSW1hZ2UpLmVuY29kZShlbmNvZGVyKTsKICAgICAgICAgcmV0dXJuOwogCiAgICAg
Y2FzZSBTeXN0ZW1JbWFnZVR5cGU6OkFwcGxlUGF5TG9nbzoKLSAgICAgICAgZG93bmNhc3Q8QXBw
bGVQYXlMb2dvU3lzdGVtSW1hZ2U+KHN5c3RlbUltYWdlLmdldCgpKS5lbmNvZGUoZW5jb2Rlcik7
CisgICAgICAgIGRvd25jYXN0PEFwcGxlUGF5TG9nb1N5c3RlbUltYWdlPihzeXN0ZW1JbWFnZSku
ZW5jb2RlKGVuY29kZXIpOwogICAgICAgICByZXR1cm47CiAjZW5kaWYKICNpZiBVU0UoU1lTVEVN
X1BSRVZJRVcpCiAgICAgY2FzZSBTeXN0ZW1JbWFnZVR5cGU6OkFSS2l0QmFkZ2U6Ci0gICAgICAg
IGRvd25jYXN0PEFSS2l0QmFkZ2VTeXN0ZW1JbWFnZT4oc3lzdGVtSW1hZ2UuZ2V0KCkpLmVuY29k
ZShlbmNvZGVyKTsKKyAgICAgICAgZG93bmNhc3Q8QVJLaXRCYWRnZVN5c3RlbUltYWdlPihzeXN0
ZW1JbWFnZSkuZW5jb2RlKGVuY29kZXIpOwogICAgICAgICByZXR1cm47CiAjZW5kaWYKICAgICB9
CkBAIC0zMTg1LDExICszMTYwLDExIEBAIHZvaWQgQXJndW1lbnRDb2RlcjxSZWY8U3lzdGVtSW1h
Z2U+Pjo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIsIGNvbnN0IFJlZjxTeXN0ZW1JCiB9CiAKIHRl
bXBsYXRlCi12b2lkIEFyZ3VtZW50Q29kZXI8UmVmPFN5c3RlbUltYWdlPj46OmVuY29kZTxFbmNv
ZGVyPihFbmNvZGVyJiwgY29uc3QgUmVmPFN5c3RlbUltYWdlPiYpOwordm9pZCBBcmd1bWVudENv
ZGVyPFN5c3RlbUltYWdlPjo6ZW5jb2RlPEVuY29kZXI+KEVuY29kZXImLCBjb25zdCBTeXN0ZW1J
bWFnZSYpOwogdGVtcGxhdGUKLXZvaWQgQXJndW1lbnRDb2RlcjxSZWY8U3lzdGVtSW1hZ2U+Pjo6
ZW5jb2RlPFN0cmVhbUNvbm5lY3Rpb25FbmNvZGVyPihTdHJlYW1Db25uZWN0aW9uRW5jb2RlciYs
IGNvbnN0IFJlZjxTeXN0ZW1JbWFnZT4mKTsKK3ZvaWQgQXJndW1lbnRDb2RlcjxTeXN0ZW1JbWFn
ZT46OmVuY29kZTxTdHJlYW1Db25uZWN0aW9uRW5jb2Rlcj4oU3RyZWFtQ29ubmVjdGlvbkVuY29k
ZXImLCBjb25zdCBTeXN0ZW1JbWFnZSYpOwogCi1zdGQ6Om9wdGlvbmFsPFJlZjxTeXN0ZW1JbWFn
ZT4+IEFyZ3VtZW50Q29kZXI8UmVmPFN5c3RlbUltYWdlPj46OmRlY29kZShEZWNvZGVyJiBkZWNv
ZGVyKQorc3RkOjpvcHRpb25hbDxSZWY8U3lzdGVtSW1hZ2U+PiBBcmd1bWVudENvZGVyPFN5c3Rl
bUltYWdlPjo6ZGVjb2RlKERlY29kZXImIGRlY29kZXIpCiB7CiAgICAgc3RkOjpvcHRpb25hbDxT
eXN0ZW1JbWFnZVR5cGU+IHN5c3RlbUltYWdlVHlwZTsKICAgICBkZWNvZGVyID4+IHN5c3RlbUlt
YWdlVHlwZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVu
dENvZGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgK
aW5kZXggYjc0OGFhYjAwMGNiMmEzZWYwN2VmYzYxZGZmZmMzZjVlYzcwODhjMS4uNjZkOGM5NmQ3
ZDM2NDYxYmEzYTk2MzcxNDEzYmNjNjI0ZjZjMzIwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFy
ZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgKQEAgLTM5OCwxNSArMzk4LDExIEBAIHRlbXBsYXRl
PD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6Q3Vyc29yPiB7CiAgICAgc3RhdGljIFdB
Uk5fVU5VU0VEX1JFVFVSTiBib29sIGRlY29kZShEZWNvZGVyJiwgV2ViQ29yZTo6Q3Vyc29yJik7
CiB9OwogCi10ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFJlZlB0cjxXZWJDb3JlOjpG
b250Pj4gewotICAgIHN0YXRpYyB2b2lkIGVuY29kZShFbmNvZGVyJiwgY29uc3QgUmVmUHRyPFdl
YkNvcmU6OkZvbnQ+Jik7Ci0gICAgc3RhdGljIHN0ZDo6b3B0aW9uYWw8UmVmUHRyPFdlYkNvcmU6
OkZvbnQ+PiBkZWNvZGUoRGVjb2RlciYpOwotfTsKIAotdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1l
bnRDb2RlcjxSZWY8V2ViQ29yZTo6Rm9udD4+IHsKLSAgICBzdGF0aWMgdm9pZCBlbmNvZGUoRW5j
b2RlciYsIGNvbnN0IFJlZjxXZWJDb3JlOjpGb250PiYpOwordGVtcGxhdGU8PiBzdHJ1Y3QgQXJn
dW1lbnRDb2RlcjxXZWJDb3JlOjpGb250PiB7CisgICAgc3RhdGljIHZvaWQgZW5jb2RlKEVuY29k
ZXImLCBjb25zdCBXZWJDb3JlOjpGb250Jik7CiAgICAgc3RhdGljIHN0ZDo6b3B0aW9uYWw8UmVm
PFdlYkNvcmU6OkZvbnQ+PiBkZWNvZGUoRGVjb2RlciYpOwotICAgIHN0YXRpYyB2b2lkIGVuY29k
ZVBsYXRmb3JtRGF0YShFbmNvZGVyJiwgY29uc3QgUmVmPFdlYkNvcmU6OkZvbnQ+Jik7CisgICAg
c3RhdGljIHZvaWQgZW5jb2RlUGxhdGZvcm1EYXRhKEVuY29kZXImLCBjb25zdCBXZWJDb3JlOjpG
b250Jik7CiAgICAgc3RhdGljIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6Rm9udFBsYXRmb3JtRGF0
YT4gZGVjb2RlUGxhdGZvcm1EYXRhKERlY29kZXImKTsKIH07CiAKQEAgLTc3Niw5ICs3NzIsOSBA
QCB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYkNvcmU6OlNjcmlwdEJ1ZmZlcj4g
ewogICAgIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNjcmlwdEJ1ZmZlcj4gZGVjb2Rl
KERlY29kZXImKTsKIH07CiAKLXRlbXBsYXRlPD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8UmVmPFdl
YkNvcmU6OlN5c3RlbUltYWdlPj4gewordGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxX
ZWJDb3JlOjpTeXN0ZW1JbWFnZT4gewogICAgIHRlbXBsYXRlPHR5cGVuYW1lIEVuY29kZXI+Ci0g
ICAgc3RhdGljIHZvaWQgZW5jb2RlKEVuY29kZXImLCBjb25zdCBSZWY8V2ViQ29yZTo6U3lzdGVt
SW1hZ2U+Jik7CisgICAgc3RhdGljIHZvaWQgZW5jb2RlKEVuY29kZXImLCBjb25zdCBXZWJDb3Jl
OjpTeXN0ZW1JbWFnZSYpOwogICAgIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFJlZjxXZWJDb3JlOjpT
eXN0ZW1JbWFnZT4+IGRlY29kZShEZWNvZGVyJik7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9wbGF5c3RhdGlvbi9XZWJDb3JlQXJndW1lbnRDb2RlcnNQbGF5U3RhdGlv
bi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9wbGF5c3RhdGlvbi9XZWJDb3JlQXJndW1lbnRD
b2RlcnNQbGF5U3RhdGlvbi5jcHAKaW5kZXggZjdkNmY4OWI5MzkxYmU2ZDU1MzcyOWM3Nzk2MTQ2
YzU2NjQ1NDZiOC4uOTY0YjUzNTVkMjE4ODM2ZTM0YTNkNDJmOTZlNTc3NGRiN2MwNmExZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvcGxheXN0YXRpb24vV2ViQ29yZUFyZ3VtZW50
Q29kZXJzUGxheVN0YXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL3BsYXlzdGF0
aW9uL1dlYkNvcmVBcmd1bWVudENvZGVyc1BsYXlTdGF0aW9uLmNwcApAQCAtMzIsMTIgKzMyLDEy
IEBAIG5hbWVzcGFjZSBJUEMgewogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotdm9pZCBB
cmd1bWVudENvZGVyPFJlZjxGb250Pj46OmVuY29kZVBsYXRmb3JtRGF0YShFbmNvZGVyJiBlbmNv
ZGVyLCBjb25zdCBSZWY8Rm9udD4mIGZvbnQpCit2b2lkIEFyZ3VtZW50Q29kZXI8Rm9udD46OmVu
Y29kZVBsYXRmb3JtRGF0YShFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBGb250JiBmb250KQogewog
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogfQogCi1zdGQ6Om9wdGlvbmFsPEZvbnRQbGF0Zm9y
bURhdGE+IEFyZ3VtZW50Q29kZXI8UmVmPEZvbnQ+Pjo6ZGVjb2RlUGxhdGZvcm1EYXRhKERlY29k
ZXImIGRlY29kZXIpCitzdGQ6Om9wdGlvbmFsPEZvbnRQbGF0Zm9ybURhdGE+IEFyZ3VtZW50Q29k
ZXI8Rm9udD46OmRlY29kZVBsYXRmb3JtRGF0YShEZWNvZGVyJiBkZWNvZGVyKQogewogICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9zb3VwL1dlYkNvcmVBcmd1bWVudENvZGVyc1NvdXAuY3Bw
IGIvU291cmNlL1dlYktpdC9TaGFyZWQvc291cC9XZWJDb3JlQXJndW1lbnRDb2RlcnNTb3VwLmNw
cAppbmRleCBkZGQ4MGM0MTcwOTg3MzYzMGM3MDczYmNiYWY4ODQwMWVmM2JlMDhkLi40YjE3NDU0
YzM2NDRlM2FmZGUxZjE5ZmU4MzYxNTYyMDg3YWVjOTBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9zb3VwL1dlYkNvcmVBcmd1bWVudENvZGVyc1NvdXAuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL3NvdXAvV2ViQ29yZUFyZ3VtZW50Q29kZXJzU291cC5jcHAKQEAgLTIy
NCwxMiArMjI0LDEyIEBAIGJvb2wgQXJndW1lbnRDb2RlcjxEaWN0aW9uYXJ5UG9wdXBJbmZvPjo6
ZGVjb2RlUGxhdGZvcm1EYXRhKERlY29kZXImLCBEaWN0aW9uYXJ5CiAgICAgcmV0dXJuIGZhbHNl
OwogfQogCi12b2lkIEFyZ3VtZW50Q29kZXI8UmVmPEZvbnQ+Pjo6ZW5jb2RlUGxhdGZvcm1EYXRh
KEVuY29kZXImLCBjb25zdCBSZWY8Rm9udD4mKQordm9pZCBBcmd1bWVudENvZGVyPEZvbnQ+Ojpl
bmNvZGVQbGF0Zm9ybURhdGEoRW5jb2RlciYsIGNvbnN0IEZvbnQmKQogewogICAgIEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOwogfQogCi1zdGQ6Om9wdGlvbmFsPEZvbnRQbGF0Zm9ybURhdGE+IEFyZ3Vt
ZW50Q29kZXI8UmVmPEZvbnQ+Pjo6ZGVjb2RlUGxhdGZvcm1EYXRhKERlY29kZXImKQorc3RkOjpv
cHRpb25hbDxGb250UGxhdGZvcm1EYXRhPiBBcmd1bWVudENvZGVyPEZvbnQ+OjpkZWNvZGVQbGF0
Zm9ybURhdGEoRGVjb2RlciYpCiB7CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0
dXJuIHN0ZDo6bnVsbG9wdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL3dpbi9X
ZWJDb3JlQXJndW1lbnRDb2RlcnNXaW4uY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvd2luL1dl
YkNvcmVBcmd1bWVudENvZGVyc1dpbi5jcHAKaW5kZXggZGYzOTU0NzQ0NWM3MzI2ZDk4MTFjMDgw
MzdlODVmNDQ1N2Y4MDBlYi4uNDEwZWRlYjYyNzE5ZTJjZDIwNGU3OGZmODdiODBkYjYxNTAwMDkw
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvd2luL1dlYkNvcmVBcmd1bWVudENv
ZGVyc1dpbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvd2luL1dlYkNvcmVBcmd1bWVu
dENvZGVyc1dpbi5jcHAKQEAgLTUwLDcgKzUwLDcgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1l
bnRDb2RlcjxMT0dGT05UPiB7CiAgICAgfQogfTsKIAotdm9pZCBBcmd1bWVudENvZGVyPFJlZjxG
b250Pj46OmVuY29kZVBsYXRmb3JtRGF0YShFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBSZWY8Rm9u
dD4mIGZvbnQpCit2b2lkIEFyZ3VtZW50Q29kZXI8Rm9udD46OmVuY29kZVBsYXRmb3JtRGF0YShF
bmNvZGVyJiBlbmNvZGVyLCBjb25zdCBGb250JiBmb250KQogewogICAgIGNvbnN0IGF1dG8mIHBs
YXRmb3JtRGF0YSA9IGZvbnQtPnBsYXRmb3JtRGF0YSgpOwogICAgIGVuY29kZXIgPDwgcGxhdGZv
cm1EYXRhLnNpemUoKTsKQEAgLTY5LDcgKzY5LDcgQEAgdm9pZCBBcmd1bWVudENvZGVyPFJlZjxG
b250Pj46OmVuY29kZVBsYXRmb3JtRGF0YShFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBSZWY8Rm8K
ICAgICBlbmNvZGVyIDw8IGxvZ0ZvbnQ7CiB9CiAKLXN0ZDo6b3B0aW9uYWw8Rm9udFBsYXRmb3Jt
RGF0YT4gQXJndW1lbnRDb2RlcjxSZWY8Rm9udD4+OjpkZWNvZGVQbGF0Zm9ybURhdGEoRGVjb2Rl
ciYgZGVjb2RlcikKK3N0ZDo6b3B0aW9uYWw8Rm9udFBsYXRmb3JtRGF0YT4gQXJndW1lbnRDb2Rl
cjxGb250Pjo6ZGVjb2RlUGxhdGZvcm1EYXRhKERlY29kZXImIGRlY29kZXIpCiB7CiAgICAgc3Rk
OjpvcHRpb25hbDxmbG9hdD4gc2l6ZTsKICAgICBkZWNvZGVyID4+IHNpemU7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>458947</attachid>
            <date>2022-05-06 04:55:15 -0700</date>
            <delta_ts>2022-05-08 23:58:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-240160-20220506145513.patch</filename>
            <type>text/plain</type>
            <size>15185</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkzODgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDYwMGRmMDM5MDBjOTA1ZWQ1
ODAzMzc1NmQ3MTU2MDQwZDRlZWRhZDAuLjE1NTMxMzQzZDlhMmY3YTNjZWI1OTdhOTc2MGYzNTZi
NWZhMmNhMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjItMDUtMDYgIEtpbW1vIEtp
bm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKworICAgICAgICBJUEMgY2Fubm90IGVuY29k
ZSwgZGVjb2RlIFJlZjw+LCBjYXVzaW5nIGR1cGxpY2F0ZSBjb2RlCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDAxNjAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZWZlcmVuY2UgY291bnRlZCB0eXBlIFQ6
CisgICAgICAgIEVuY29kaW5nIGlzIHNpZ25hdHVyZSBgZW5jb2RlKGNvbnN0IFQmKWAKKyAgICAg
ICAgRGVjb2RpbmcgaXMgc2lnbmF0dXJlIGBzdGQ6Om9wdGlvbmFsPFJlZjxUPj4gZGVjb2RlKClg
CisgICAgICAgIFRoaXMgaXMgdXNhYmxlIGZvciBib3RoIGBSZWZQdHJgIGFuZCBgUmVmYCB1c2Ut
Y2FzZXMuCisKKyAgICAgICAgQWRkIGBSZWY8VD5gIGVuY29kZXIgdGhhdCBpcyBwb2x5bW9yaGlj
IHRvIGBUYC4KKyAgICAgICAgVGhpcyB3YXkgY2xpZW50cyBkbyBub3QgbmVlZCB0byB3cml0ZSBl
bmNvZGVycyBmb3IKKyAgICAgICAgYFJlZjxUPmAsIGBSZWZQdHI8VD5gLiBUaGV5IGp1c3QgbmVl
ZCBvbmUgZW5jb2RlciwgZm9yIGBUYC4KKworICAgICAgICBXaGVuIGNsaWVudHMgZG8gbm90IG5l
ZWQgdG8gd3JpdGUgYFJlZlB0cjxUPmAsIHRoZXkgbWFrZSBsZXNzCisgICAgICAgIGJ1Z3MuIFRo
ZXNlIHdpbGwgYmUgY29ycmVjdGVkIGluIGZ1dHVyZSBwYXRjaGVzLgorCisgICAgICAgIEhhdmlu
ZyBgUmVmPFQ+YCBlbmNvZGVycyBhbGxvd3MgY2xpZW50cyB0byB1c2UgYFZlY3RvcjxSZWY8VD5g
IGVuY29kaW5nCisgICAgICAgIHZpYSBgVmVjdG9yPFU+YCBlbmNvZGVyLCBhbmQgdGhleSB3b3Vs
ZCBub3QgbmVlZCB0byBkdXBsaWNhdGUgdGhhdAorICAgICAgICBsb2dpYywgbWFraW5nIGxlc3Mg
YnVncy4gVGhlc2Ugd2lsbCBiZSBjb3JyZWN0ZWQgaW4gZnV0dXJlIHBhdGNoZXMuCisKKyAgICAg
ICAgUmVtb3ZlIG1vc3QgYElQQzo6QXJndW1lbnRDb2RlcjxSZWY8Li4+PmAgaW4gZmF2b3Igb2Yg
YElQQzo6QXJndW1lbnRDb2RlcjwuLj5gLgorICAgICAgICBJbiB0aGUgY2FzZXMgd2hlcmUgcmVt
b3ZhbCB3YXMgZG9uZSwgcmVtb3ZlIGFsc28gcmVkdW5kYW50CisgICAgICAgIGBJUEM6OkFyZ3Vt
ZW50Q29kZXI8UmVmUHRyPC4uPj5gLgorCisgICAgICAgICogUGxhdGZvcm0vSVBDL0FyZ3VtZW50
Q29kZXJzLmg6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8UmVmUHRyPFQ+Pjo6ZGVjb2Rl
KToKKyAgICAgICAgKElQQzo6QXJndW1lbnRDb2RlcjxSZWY8VD4+OjplbmNvZGUpOgorICAgICAg
ICAoSVBDOjpBcmd1bWVudENvZGVyPFJlZjxUPj46OmRlY29kZSk6CisgICAgICAgICogU2hhcmVk
L0NvY29hL1dlYkNvcmVBcmd1bWVudENvZGVyc0NvY29hLm1tOgorICAgICAgICAoSVBDOjpBcmd1
bWVudENvZGVyPFdlYkNvcmU6OkZvbnQ+OjplbmNvZGVQbGF0Zm9ybURhdGEpOgorICAgICAgICAo
SVBDOjpBcmd1bWVudENvZGVyPFdlYkNvcmU6OkZvbnQ+OjpkZWNvZGVQbGF0Zm9ybURhdGEpOgor
ICAgICAgICAqIFNoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwOgorICAgICAgICAoSVBD
OjpBcmd1bWVudENvZGVyPFdlYkNvcmU6OkZvbnQ+OjplbmNvZGUpOgorICAgICAgICAoSVBDOjpB
cmd1bWVudENvZGVyPEZvbnQ+OjpkZWNvZGUpOgorICAgICAgICAoSVBDOjpBcmd1bWVudENvZGVy
PFN5c3RlbUltYWdlPjo6ZW5jb2RlKToKKyAgICAgICAgKElQQzo6QXJndW1lbnRDb2RlcjxTeXN0
ZW1JbWFnZT46OmRlY29kZSk6CisgICAgICAgICogU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVy
cy5oOgorICAgICAgICAqIFNoYXJlZC9wbGF5c3RhdGlvbi9XZWJDb3JlQXJndW1lbnRDb2RlcnNQ
bGF5U3RhdGlvbi5jcHA6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Rm9udD46OmVuY29k
ZVBsYXRmb3JtRGF0YSk6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Rm9udD46OmRlY29k
ZVBsYXRmb3JtRGF0YSk6CisgICAgICAgICogU2hhcmVkL3NvdXAvV2ViQ29yZUFyZ3VtZW50Q29k
ZXJzU291cC5jcHA6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Rm9udD46OmVuY29kZVBs
YXRmb3JtRGF0YSk6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Rm9udD46OmRlY29kZVBs
YXRmb3JtRGF0YSk6CisgICAgICAgICogU2hhcmVkL3dpbi9XZWJDb3JlQXJndW1lbnRDb2RlcnNX
aW4uY3BwOgorICAgICAgICAoSVBDOjpBcmd1bWVudENvZGVyPEZvbnQ+OjplbmNvZGVQbGF0Zm9y
bURhdGEpOgorICAgICAgICAoSVBDOjpBcmd1bWVudENvZGVyPEZvbnQ+OjpkZWNvZGVQbGF0Zm9y
bURhdGEpOgorCiAyMDIyLTA1LTA2ICBLaW1tbyBLaW5udW5lbiAgPGtraW5udW5lbkBhcHBsZS5j
b20+CiAKICAgICAgICAgR1BVIFByb2Nlc3MgY3Jhc2ggdW5kZXIgSVBDOjpDb25uZWN0aW9uOjpv
cGVuKCkgQVNTRVJUSU9OIEZBSUxFRDogbV9zZW5kUG9ydApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9QbGF0Zm9ybS9JUEMvQXJndW1lbnRDb2RlcnMuaCBiL1NvdXJjZS9XZWJLaXQvUGxhdGZv
cm0vSVBDL0FyZ3VtZW50Q29kZXJzLmgKaW5kZXggNzIzMzEyYzdlZGIwNTkyZGQ2OGU3NWY2ZGEz
MDkzODYyZTIzZTA3NS4uZjQ3MTU3MDBjOGIyM2RlOGRlZDEyMDRiNzU2MGY1OGY5ZGViYmYwNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvQXJndW1lbnRDb2RlcnMuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9Bcmd1bWVudENvZGVycy5oCkBAIC0zNDYs
NyArMzQ2LDcgQEAgdGVtcGxhdGU8dHlwZW5hbWUgVCwgdHlwZW5hbWUgVT4gc3RydWN0IEFyZ3Vt
ZW50Q29kZXI8c3RkOjpwYWlyPFQsIFU+PiB7CiB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBz
dHJ1Y3QgQXJndW1lbnRDb2RlcjxSZWZQdHI8VD4+IHsKLSAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBV
ID0gVD4KKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBFbmNvZGVyLCB0eXBlbmFtZSBVID0gVD4KICAg
ICBzdGF0aWMgdm9pZCBlbmNvZGUoRW5jb2RlciYgZW5jb2RlciwgY29uc3QgUmVmUHRyPFU+JiBv
YmplY3QpCiAgICAgewogICAgICAgICBpZiAob2JqZWN0KQpAQCAtMzU1LDcgKzM1NSw3IEBAIHRl
bXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVjdCBBcmd1bWVudENvZGVyPFJlZlB0cjxUPj4gewogICAg
ICAgICAgICAgZW5jb2RlciA8PCBmYWxzZTsKICAgICB9CiAKLSAgICB0ZW1wbGF0ZTx0eXBlbmFt
ZSBVID0gVD4KKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBEZWNvZGVyLCB0eXBlbmFtZSBVID0gVD4K
ICAgICBzdGF0aWMgc3RkOjpvcHRpb25hbDxSZWZQdHI8VT4+IGRlY29kZShEZWNvZGVyJiBkZWNv
ZGVyKQogICAgIHsKICAgICAgICAgYXV0byBoYXNPYmplY3QgPSBkZWNvZGVyLnRlbXBsYXRlIGRl
Y29kZTxib29sPigpOwpAQCAtMzY2LDcgKzM2NiwyNSBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBz
dHJ1Y3QgQXJndW1lbnRDb2RlcjxSZWZQdHI8VD4+IHsKICAgICAgICAgLy8gRGVjb2RlcnMgb2Yg
VSBoZWxkIHdpdGggUmVmUHRyIGRvIG5vdCByZXR1cm4gc3RkOjpvcHRpb25hbDxVPiBidXQKICAg
ICAgICAgLy8gc3RkOjpvcHRpb25hbDxSZWZQdHI8VT4+LiBXZSBjYW5ub3QgdXNlIGBkZWNvZGVy
LnRlbXBsYXRlIGRlY29kZTxVPigpYAogICAgICAgICAvLyBDdXJyZW50bHkgZXhwZWN0ICJtb2Rl
cm4gZGVjb2RlciIgLWxpa2UgZGVjb2RlIGZ1bmN0aW9uLgotICAgICAgICByZXR1cm4gVTo6ZGVj
b2RlKGRlY29kZXIpOworICAgICAgICByZXR1cm4gQXJndW1lbnRDb2RlcjxVPjo6ZGVjb2RlKGRl
Y29kZXIpOworICAgIH0KK307CisKK3RlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVjdCBBcmd1bWVu
dENvZGVyPFJlZjxUPj4geworICAgIHRlbXBsYXRlPHR5cGVuYW1lIEVuY29kZXIsIHR5cGVuYW1l
IFUgPSBUPgorICAgIHN0YXRpYyB2b2lkIGVuY29kZShFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBS
ZWY8VT4mIG9iamVjdCkKKyAgICB7CisgICAgICAgIGVuY29kZXIgPDwgb2JqZWN0LmdldCgpOwor
ICAgIH0KKworICAgIHRlbXBsYXRlPHR5cGVuYW1lIERlY29kZXIsIHR5cGVuYW1lIFUgPSBUPgor
ICAgIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFJlZjxVPj4gZGVjb2RlKERlY29kZXImIGRlY29kZXIp
CisgICAgeworICAgICAgICAvLyBEZWNvZGVycyBvZiBVIGhlbGQgd2l0aCBSZWYgZG8gbm90IHJl
dHVybiBzdGQ6Om9wdGlvbmFsPFU+IGJ1dAorICAgICAgICAvLyBzdGQ6Om9wdGlvbmFsPFJlZjxV
Pj4uCisgICAgICAgIC8vIFdlIGNhbm5vdCB1c2UgYGRlY29kZXIudGVtcGxhdGUgZGVjb2RlPFU+
KClgCisgICAgICAgIC8vIEN1cnJlbnRseSBleHBlY3QgIm1vZGVybiBkZWNvZGVyIiAtbGlrZSBk
ZWNvZGUgZnVuY3Rpb24uCisgICAgICAgIHJldHVybiBBcmd1bWVudENvZGVyPFU+OjpkZWNvZGUo
ZGVjb2Rlcik7CiAgICAgfQogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQv
Q29jb2EvV2ViQ29yZUFyZ3VtZW50Q29kZXJzQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9Db2NvYS9XZWJDb3JlQXJndW1lbnRDb2RlcnNDb2NvYS5tbQppbmRleCBiMzI4MmI2NWE5M2Mw
MTZkYmUzNDVhMjMxMmQ0NDM3ZTQwYzQ3OTQ1Li44Yzc5YTJlNDJjNmZlZjRhNjQ1OTU0NTIyODc3
YTZiMzM1MzU0YTExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9XZWJD
b3JlQXJndW1lbnRDb2RlcnNDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2Nv
YS9XZWJDb3JlQXJndW1lbnRDb2RlcnNDb2NvYS5tbQpAQCAtNDIwLDkgKzQyMCw5IEBAIGJvb2wg
QXJndW1lbnRDb2RlcjxXZWJDb3JlOjpEaWN0aW9uYXJ5UG9wdXBJbmZvPjo6ZGVjb2RlUGxhdGZv
cm1EYXRhKERlY29kZXImIGRlCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgQXJndW1lbnRD
b2RlcjxSZWY8V2ViQ29yZTo6Rm9udD4+OjplbmNvZGVQbGF0Zm9ybURhdGEoRW5jb2RlciYgZW5j
b2RlciwgY29uc3QgUmVmPFdlYkNvcmU6OkZvbnQ+JiBmb250KQordm9pZCBBcmd1bWVudENvZGVy
PFdlYkNvcmU6OkZvbnQ+OjplbmNvZGVQbGF0Zm9ybURhdGEoRW5jb2RlciYgZW5jb2RlciwgY29u
c3QgV2ViQ29yZTo6Rm9udCYgZm9udCkKIHsKLSAgICBjb25zdCBhdXRvJiBwbGF0Zm9ybURhdGEg
PSBmb250LT5wbGF0Zm9ybURhdGEoKTsKKyAgICBjb25zdCBhdXRvJiBwbGF0Zm9ybURhdGEgPSBm
b250LnBsYXRmb3JtRGF0YSgpOwogICAgIGVuY29kZXIgPDwgcGxhdGZvcm1EYXRhLm9yaWVudGF0
aW9uKCk7CiAgICAgZW5jb2RlciA8PCBwbGF0Zm9ybURhdGEud2lkdGhWYXJpYW50KCk7CiAgICAg
ZW5jb2RlciA8PCBwbGF0Zm9ybURhdGEudGV4dFJlbmRlcmluZ01vZGUoKTsKQEAgLTQ5MSw3ICs0
OTEsNyBAQCBzdGF0aWMgUmV0YWluUHRyPENURm9udFJlZj4gY3JlYXRlQ1RGb250KENGRGljdGlv
bmFyeVJlZiBhdHRyaWJ1dGVzLCBmbG9hdCBzaXplLAogICAgIHJldHVybiBhZG9wdENGKENURm9u
dENyZWF0ZVdpdGhGb250RGVzY3JpcHRvckFuZE9wdGlvbnMoZm9udERlc2NyaXB0b3IuZ2V0KCks
IHNpemUsIG51bGxwdHIsIG9wdGlvbnMpKTsKIH0KIAotc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpG
b250UGxhdGZvcm1EYXRhPiBBcmd1bWVudENvZGVyPFJlZjxXZWJDb3JlOjpGb250Pj46OmRlY29k
ZVBsYXRmb3JtRGF0YShEZWNvZGVyJiBkZWNvZGVyKQorc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpG
b250UGxhdGZvcm1EYXRhPiBBcmd1bWVudENvZGVyPFdlYkNvcmU6OkZvbnQ+OjpkZWNvZGVQbGF0
Zm9ybURhdGEoRGVjb2RlciYgZGVjb2RlcikKIHsKICAgICBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6
OkZvbnRPcmllbnRhdGlvbj4gb3JpZW50YXRpb247CiAgICAgZGVjb2RlciA+PiBvcmllbnRhdGlv
bjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVy
cy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwCmlu
ZGV4IGMwNDk2NjFjYmMzOGI2NDJlNTRkNzVmZTczZWI2ZTgwYjI5NGU5NzcuLmMyMjIxMmM5NmRl
ZDVjYzJhOGIwM2E3MTNlOGNjNDZhNTRmNGQ0NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFy
ZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcApAQCAtMTA3NCw0NCArMTA3NCwxOSBAQCBzdGF0
aWMgV0FSTl9VTlVTRURfUkVUVVJOIGJvb2wgZGVjb2RlT3B0aW9uYWxJbWFnZShEZWNvZGVyJiBk
ZWNvZGVyLCBSZWZQdHI8SW1hZwogICAgIHJldHVybiBkZWNvZGVJbWFnZShkZWNvZGVyLCBpbWFn
ZSk7CiB9CiAKLXZvaWQgQXJndW1lbnRDb2RlcjxSZWZQdHI8Rm9udD4+OjplbmNvZGUoRW5jb2Rl
ciYgZW5jb2RlciwgY29uc3QgUmVmUHRyPEZvbnQ+JiBmb250KQordm9pZCBBcmd1bWVudENvZGVy
PFdlYkNvcmU6OkZvbnQ+OjplbmNvZGUoRW5jb2RlciYgZW5jb2RlciwgY29uc3QgV2ViQ29yZTo6
Rm9udCYgZm9udCkKIHsKLSAgICBlbmNvZGVyIDw8ICEhZm9udDsKLSAgICBpZiAoZm9udCkKLSAg
ICAgICAgZW5jb2RlciA8PCBSZWYgeyAqZm9udCB9OwotfQotCi1zdGQ6Om9wdGlvbmFsPFJlZlB0
cjxGb250Pj4gQXJndW1lbnRDb2RlcjxSZWZQdHI8Rm9udD4+OjpkZWNvZGUoRGVjb2RlciYgZGVj
b2RlcikKLXsKLSAgICBzdGQ6Om9wdGlvbmFsPGJvb2w+IGhhc0ZvbnQ7Ci0gICAgZGVjb2RlciA+
PiBoYXNGb250OwotICAgIGlmICghaGFzRm9udCkKLSAgICAgICAgcmV0dXJuIHN0ZDo6bnVsbG9w
dDsKLQotICAgIGlmICghaGFzRm9udC52YWx1ZSgpKQotICAgICAgICByZXR1cm4gc3RkOjptYWtl
X29wdGlvbmFsKG51bGxwdHIpOwotCi0gICAgc3RkOjpvcHRpb25hbDxSZWY8Rm9udD4+IGZvbnQ7
Ci0gICAgZGVjb2RlciA+PiBmb250OwotICAgIGlmICghZm9udCkKLSAgICAgICAgcmV0dXJuIHN0
ZDo6bnVsbG9wdDsKLQotICAgIHJldHVybiB7IFdURk1vdmUoKmZvbnQpIH07Ci19Ci0KLXZvaWQg
QXJndW1lbnRDb2RlcjxSZWY8Rm9udD4+OjplbmNvZGUoRW5jb2RlciYgZW5jb2RlciwgY29uc3Qg
UmVmPFdlYkNvcmU6OkZvbnQ+JiBmb250KQotewotICAgIGVuY29kZXIgPDwgZm9udC0+b3JpZ2lu
KCk7Ci0gICAgZW5jb2RlciA8PCAoZm9udC0+aXNJbnRlcnN0aXRpYWwoKSA/IEZvbnQ6OkludGVy
c3RpdGlhbDo6WWVzIDogRm9udDo6SW50ZXJzdGl0aWFsOjpObyk7Ci0gICAgZW5jb2RlciA8PCBm
b250LT52aXNpYmlsaXR5KCk7Ci0gICAgZW5jb2RlciA8PCAoZm9udC0+aXNUZXh0T3JpZW50YXRp
b25GYWxsYmFjaygpID8gRm9udDo6T3JpZW50YXRpb25GYWxsYmFjazo6WWVzIDogRm9udDo6T3Jp
ZW50YXRpb25GYWxsYmFjazo6Tm8pOwotICAgIGVuY29kZXIgPDwgZm9udC0+cmVuZGVyaW5nUmVz
b3VyY2VJZGVudGlmaWVyKCk7CisgICAgZW5jb2RlciA8PCBmb250Lm9yaWdpbigpOworICAgIGVu
Y29kZXIgPDwgKGZvbnQuaXNJbnRlcnN0aXRpYWwoKSA/IEZvbnQ6OkludGVyc3RpdGlhbDo6WWVz
IDogRm9udDo6SW50ZXJzdGl0aWFsOjpObyk7CisgICAgZW5jb2RlciA8PCBmb250LnZpc2liaWxp
dHkoKTsKKyAgICBlbmNvZGVyIDw8IChmb250LmlzVGV4dE9yaWVudGF0aW9uRmFsbGJhY2soKSA/
IEZvbnQ6Ok9yaWVudGF0aW9uRmFsbGJhY2s6OlllcyA6IEZvbnQ6Ok9yaWVudGF0aW9uRmFsbGJh
Y2s6Ok5vKTsKKyAgICBlbmNvZGVyIDw8IGZvbnQucmVuZGVyaW5nUmVzb3VyY2VJZGVudGlmaWVy
KCk7CiAgICAgLy8gSW50ZW50aW9uYWxseSBkb24ndCBlbmNvZGUgbV9pc0Jyb2tlbklkZW9ncmFw
aEZhbGxiYWNrIGJlY2F1c2UgaXQgZG9lc24ndCBhZmZlY3QgZHJhd0dseXBocygpLgogCiAgICAg
ZW5jb2RlUGxhdGZvcm1EYXRhKGVuY29kZXIsIGZvbnQpOwogfQogCi1zdGQ6Om9wdGlvbmFsPFJl
ZjxGb250Pj4gQXJndW1lbnRDb2RlcjxSZWY8Rm9udD4+OjpkZWNvZGUoRGVjb2RlciYgZGVjb2Rl
cikKK3N0ZDo6b3B0aW9uYWw8UmVmPEZvbnQ+PiBBcmd1bWVudENvZGVyPEZvbnQ+OjpkZWNvZGUo
RGVjb2RlciYgZGVjb2RlcikKIHsKICAgICBzdGQ6Om9wdGlvbmFsPEZvbnQ6Ok9yaWdpbj4gb3Jp
Z2luOwogICAgIGRlY29kZXIgPj4gb3JpZ2luOwpAQCAtMzE2MCwyMyArMzEzNSwyMyBAQCBzdGQ6
Om9wdGlvbmFsPFdlYkNvcmU6OlNjcmlwdEJ1ZmZlcj4gQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpT
Y3JpcHRCdWZmZXI+OjpkZWNvZAogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBFbmNvZGVyPgotdm9p
ZCBBcmd1bWVudENvZGVyPFJlZjxTeXN0ZW1JbWFnZT4+OjplbmNvZGUoRW5jb2RlciYgZW5jb2Rl
ciwgY29uc3QgUmVmPFN5c3RlbUltYWdlPiYgc3lzdGVtSW1hZ2UpCit2b2lkIEFyZ3VtZW50Q29k
ZXI8U3lzdGVtSW1hZ2U+OjplbmNvZGUoRW5jb2RlciYgZW5jb2RlciwgY29uc3QgU3lzdGVtSW1h
Z2UmIHN5c3RlbUltYWdlKQogewotICAgIGVuY29kZXIgPDwgc3lzdGVtSW1hZ2UtPnN5c3RlbUlt
YWdlVHlwZSgpOworICAgIGVuY29kZXIgPDwgc3lzdGVtSW1hZ2Uuc3lzdGVtSW1hZ2VUeXBlKCk7
CiAKLSAgICBzd2l0Y2ggKHN5c3RlbUltYWdlLT5zeXN0ZW1JbWFnZVR5cGUoKSkgeworICAgIHN3
aXRjaCAoc3lzdGVtSW1hZ2Uuc3lzdGVtSW1hZ2VUeXBlKCkpIHsKICNpZiBFTkFCTEUoQVBQTEVf
UEFZKQogICAgIGNhc2UgU3lzdGVtSW1hZ2VUeXBlOjpBcHBsZVBheUJ1dHRvbjoKLSAgICAgICAg
ZG93bmNhc3Q8QXBwbGVQYXlCdXR0b25TeXN0ZW1JbWFnZT4oc3lzdGVtSW1hZ2UuZ2V0KCkpLmVu
Y29kZShlbmNvZGVyKTsKKyAgICAgICAgZG93bmNhc3Q8QXBwbGVQYXlCdXR0b25TeXN0ZW1JbWFn
ZT4oc3lzdGVtSW1hZ2UpLmVuY29kZShlbmNvZGVyKTsKICAgICAgICAgcmV0dXJuOwogCiAgICAg
Y2FzZSBTeXN0ZW1JbWFnZVR5cGU6OkFwcGxlUGF5TG9nbzoKLSAgICAgICAgZG93bmNhc3Q8QXBw
bGVQYXlMb2dvU3lzdGVtSW1hZ2U+KHN5c3RlbUltYWdlLmdldCgpKS5lbmNvZGUoZW5jb2Rlcik7
CisgICAgICAgIGRvd25jYXN0PEFwcGxlUGF5TG9nb1N5c3RlbUltYWdlPihzeXN0ZW1JbWFnZSku
ZW5jb2RlKGVuY29kZXIpOwogICAgICAgICByZXR1cm47CiAjZW5kaWYKICNpZiBVU0UoU1lTVEVN
X1BSRVZJRVcpCiAgICAgY2FzZSBTeXN0ZW1JbWFnZVR5cGU6OkFSS2l0QmFkZ2U6Ci0gICAgICAg
IGRvd25jYXN0PEFSS2l0QmFkZ2VTeXN0ZW1JbWFnZT4oc3lzdGVtSW1hZ2UuZ2V0KCkpLmVuY29k
ZShlbmNvZGVyKTsKKyAgICAgICAgZG93bmNhc3Q8QVJLaXRCYWRnZVN5c3RlbUltYWdlPihzeXN0
ZW1JbWFnZSkuZW5jb2RlKGVuY29kZXIpOwogICAgICAgICByZXR1cm47CiAjZW5kaWYKICAgICB9
CkBAIC0zMTg1LDExICszMTYwLDExIEBAIHZvaWQgQXJndW1lbnRDb2RlcjxSZWY8U3lzdGVtSW1h
Z2U+Pjo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIsIGNvbnN0IFJlZjxTeXN0ZW1JCiB9CiAKIHRl
bXBsYXRlCi12b2lkIEFyZ3VtZW50Q29kZXI8UmVmPFN5c3RlbUltYWdlPj46OmVuY29kZTxFbmNv
ZGVyPihFbmNvZGVyJiwgY29uc3QgUmVmPFN5c3RlbUltYWdlPiYpOwordm9pZCBBcmd1bWVudENv
ZGVyPFN5c3RlbUltYWdlPjo6ZW5jb2RlPEVuY29kZXI+KEVuY29kZXImLCBjb25zdCBTeXN0ZW1J
bWFnZSYpOwogdGVtcGxhdGUKLXZvaWQgQXJndW1lbnRDb2RlcjxSZWY8U3lzdGVtSW1hZ2U+Pjo6
ZW5jb2RlPFN0cmVhbUNvbm5lY3Rpb25FbmNvZGVyPihTdHJlYW1Db25uZWN0aW9uRW5jb2RlciYs
IGNvbnN0IFJlZjxTeXN0ZW1JbWFnZT4mKTsKK3ZvaWQgQXJndW1lbnRDb2RlcjxTeXN0ZW1JbWFn
ZT46OmVuY29kZTxTdHJlYW1Db25uZWN0aW9uRW5jb2Rlcj4oU3RyZWFtQ29ubmVjdGlvbkVuY29k
ZXImLCBjb25zdCBTeXN0ZW1JbWFnZSYpOwogCi1zdGQ6Om9wdGlvbmFsPFJlZjxTeXN0ZW1JbWFn
ZT4+IEFyZ3VtZW50Q29kZXI8UmVmPFN5c3RlbUltYWdlPj46OmRlY29kZShEZWNvZGVyJiBkZWNv
ZGVyKQorc3RkOjpvcHRpb25hbDxSZWY8U3lzdGVtSW1hZ2U+PiBBcmd1bWVudENvZGVyPFN5c3Rl
bUltYWdlPjo6ZGVjb2RlKERlY29kZXImIGRlY29kZXIpCiB7CiAgICAgc3RkOjpvcHRpb25hbDxT
eXN0ZW1JbWFnZVR5cGU+IHN5c3RlbUltYWdlVHlwZTsKICAgICBkZWNvZGVyID4+IHN5c3RlbUlt
YWdlVHlwZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVu
dENvZGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgK
aW5kZXggYjc0OGFhYjAwMGNiMmEzZWYwN2VmYzYxZGZmZmMzZjVlYzcwODhjMS4uNjZkOGM5NmQ3
ZDM2NDYxYmEzYTk2MzcxNDEzYmNjNjI0ZjZjMzIwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFy
ZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgKQEAgLTM5OCwxNSArMzk4LDExIEBAIHRlbXBsYXRl
PD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6Q3Vyc29yPiB7CiAgICAgc3RhdGljIFdB
Uk5fVU5VU0VEX1JFVFVSTiBib29sIGRlY29kZShEZWNvZGVyJiwgV2ViQ29yZTo6Q3Vyc29yJik7
CiB9OwogCi10ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFJlZlB0cjxXZWJDb3JlOjpG
b250Pj4gewotICAgIHN0YXRpYyB2b2lkIGVuY29kZShFbmNvZGVyJiwgY29uc3QgUmVmUHRyPFdl
YkNvcmU6OkZvbnQ+Jik7Ci0gICAgc3RhdGljIHN0ZDo6b3B0aW9uYWw8UmVmUHRyPFdlYkNvcmU6
OkZvbnQ+PiBkZWNvZGUoRGVjb2RlciYpOwotfTsKIAotdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1l
bnRDb2RlcjxSZWY8V2ViQ29yZTo6Rm9udD4+IHsKLSAgICBzdGF0aWMgdm9pZCBlbmNvZGUoRW5j
b2RlciYsIGNvbnN0IFJlZjxXZWJDb3JlOjpGb250PiYpOwordGVtcGxhdGU8PiBzdHJ1Y3QgQXJn
dW1lbnRDb2RlcjxXZWJDb3JlOjpGb250PiB7CisgICAgc3RhdGljIHZvaWQgZW5jb2RlKEVuY29k
ZXImLCBjb25zdCBXZWJDb3JlOjpGb250Jik7CiAgICAgc3RhdGljIHN0ZDo6b3B0aW9uYWw8UmVm
PFdlYkNvcmU6OkZvbnQ+PiBkZWNvZGUoRGVjb2RlciYpOwotICAgIHN0YXRpYyB2b2lkIGVuY29k
ZVBsYXRmb3JtRGF0YShFbmNvZGVyJiwgY29uc3QgUmVmPFdlYkNvcmU6OkZvbnQ+Jik7CisgICAg
c3RhdGljIHZvaWQgZW5jb2RlUGxhdGZvcm1EYXRhKEVuY29kZXImLCBjb25zdCBXZWJDb3JlOjpG
b250Jik7CiAgICAgc3RhdGljIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6Rm9udFBsYXRmb3JtRGF0
YT4gZGVjb2RlUGxhdGZvcm1EYXRhKERlY29kZXImKTsKIH07CiAKQEAgLTc3Niw5ICs3NzIsOSBA
QCB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYkNvcmU6OlNjcmlwdEJ1ZmZlcj4g
ewogICAgIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNjcmlwdEJ1ZmZlcj4gZGVjb2Rl
KERlY29kZXImKTsKIH07CiAKLXRlbXBsYXRlPD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8UmVmPFdl
YkNvcmU6OlN5c3RlbUltYWdlPj4gewordGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxX
ZWJDb3JlOjpTeXN0ZW1JbWFnZT4gewogICAgIHRlbXBsYXRlPHR5cGVuYW1lIEVuY29kZXI+Ci0g
ICAgc3RhdGljIHZvaWQgZW5jb2RlKEVuY29kZXImLCBjb25zdCBSZWY8V2ViQ29yZTo6U3lzdGVt
SW1hZ2U+Jik7CisgICAgc3RhdGljIHZvaWQgZW5jb2RlKEVuY29kZXImLCBjb25zdCBXZWJDb3Jl
OjpTeXN0ZW1JbWFnZSYpOwogICAgIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFJlZjxXZWJDb3JlOjpT
eXN0ZW1JbWFnZT4+IGRlY29kZShEZWNvZGVyJik7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1NoYXJlZC9wbGF5c3RhdGlvbi9XZWJDb3JlQXJndW1lbnRDb2RlcnNQbGF5U3RhdGlv
bi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9wbGF5c3RhdGlvbi9XZWJDb3JlQXJndW1lbnRD
b2RlcnNQbGF5U3RhdGlvbi5jcHAKaW5kZXggZjdkNmY4OWI5MzkxYmU2ZDU1MzcyOWM3Nzk2MTQ2
YzU2NjQ1NDZiOC4uOTY0YjUzNTVkMjE4ODM2ZTM0YTNkNDJmOTZlNTc3NGRiN2MwNmExZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvcGxheXN0YXRpb24vV2ViQ29yZUFyZ3VtZW50
Q29kZXJzUGxheVN0YXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL3BsYXlzdGF0
aW9uL1dlYkNvcmVBcmd1bWVudENvZGVyc1BsYXlTdGF0aW9uLmNwcApAQCAtMzIsMTIgKzMyLDEy
IEBAIG5hbWVzcGFjZSBJUEMgewogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotdm9pZCBB
cmd1bWVudENvZGVyPFJlZjxGb250Pj46OmVuY29kZVBsYXRmb3JtRGF0YShFbmNvZGVyJiBlbmNv
ZGVyLCBjb25zdCBSZWY8Rm9udD4mIGZvbnQpCit2b2lkIEFyZ3VtZW50Q29kZXI8Rm9udD46OmVu
Y29kZVBsYXRmb3JtRGF0YShFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBGb250JiBmb250KQogewog
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogfQogCi1zdGQ6Om9wdGlvbmFsPEZvbnRQbGF0Zm9y
bURhdGE+IEFyZ3VtZW50Q29kZXI8UmVmPEZvbnQ+Pjo6ZGVjb2RlUGxhdGZvcm1EYXRhKERlY29k
ZXImIGRlY29kZXIpCitzdGQ6Om9wdGlvbmFsPEZvbnRQbGF0Zm9ybURhdGE+IEFyZ3VtZW50Q29k
ZXI8Rm9udD46OmRlY29kZVBsYXRmb3JtRGF0YShEZWNvZGVyJiBkZWNvZGVyKQogewogICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9zb3VwL1dlYkNvcmVBcmd1bWVudENvZGVyc1NvdXAuY3Bw
IGIvU291cmNlL1dlYktpdC9TaGFyZWQvc291cC9XZWJDb3JlQXJndW1lbnRDb2RlcnNTb3VwLmNw
cAppbmRleCBkZGQ4MGM0MTcwOTg3MzYzMGM3MDczYmNiYWY4ODQwMWVmM2JlMDhkLi40YjE3NDU0
YzM2NDRlM2FmZGUxZjE5ZmU4MzYxNTYyMDg3YWVjOTBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9zb3VwL1dlYkNvcmVBcmd1bWVudENvZGVyc1NvdXAuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL3NvdXAvV2ViQ29yZUFyZ3VtZW50Q29kZXJzU291cC5jcHAKQEAgLTIy
NCwxMiArMjI0LDEyIEBAIGJvb2wgQXJndW1lbnRDb2RlcjxEaWN0aW9uYXJ5UG9wdXBJbmZvPjo6
ZGVjb2RlUGxhdGZvcm1EYXRhKERlY29kZXImLCBEaWN0aW9uYXJ5CiAgICAgcmV0dXJuIGZhbHNl
OwogfQogCi12b2lkIEFyZ3VtZW50Q29kZXI8UmVmPEZvbnQ+Pjo6ZW5jb2RlUGxhdGZvcm1EYXRh
KEVuY29kZXImLCBjb25zdCBSZWY8Rm9udD4mKQordm9pZCBBcmd1bWVudENvZGVyPEZvbnQ+Ojpl
bmNvZGVQbGF0Zm9ybURhdGEoRW5jb2RlciYsIGNvbnN0IEZvbnQmKQogewogICAgIEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOwogfQogCi1zdGQ6Om9wdGlvbmFsPEZvbnRQbGF0Zm9ybURhdGE+IEFyZ3Vt
ZW50Q29kZXI8UmVmPEZvbnQ+Pjo6ZGVjb2RlUGxhdGZvcm1EYXRhKERlY29kZXImKQorc3RkOjpv
cHRpb25hbDxGb250UGxhdGZvcm1EYXRhPiBBcmd1bWVudENvZGVyPEZvbnQ+OjpkZWNvZGVQbGF0
Zm9ybURhdGEoRGVjb2RlciYpCiB7CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0
dXJuIHN0ZDo6bnVsbG9wdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL3dpbi9X
ZWJDb3JlQXJndW1lbnRDb2RlcnNXaW4uY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvd2luL1dl
YkNvcmVBcmd1bWVudENvZGVyc1dpbi5jcHAKaW5kZXggZGYzOTU0NzQ0NWM3MzI2ZDk4MTFjMDgw
MzdlODVmNDQ1N2Y4MDBlYi4uZjZmYTRmYWEzYzg4MmFiNTIxMWNlMDhjMjZiMWUxMzQwNmRkYzg4
YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvd2luL1dlYkNvcmVBcmd1bWVudENv
ZGVyc1dpbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvd2luL1dlYkNvcmVBcmd1bWVu
dENvZGVyc1dpbi5jcHAKQEAgLTUwLDkgKzUwLDkgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1l
bnRDb2RlcjxMT0dGT05UPiB7CiAgICAgfQogfTsKIAotdm9pZCBBcmd1bWVudENvZGVyPFJlZjxG
b250Pj46OmVuY29kZVBsYXRmb3JtRGF0YShFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBSZWY8Rm9u
dD4mIGZvbnQpCit2b2lkIEFyZ3VtZW50Q29kZXI8Rm9udD46OmVuY29kZVBsYXRmb3JtRGF0YShF
bmNvZGVyJiBlbmNvZGVyLCBjb25zdCBGb250JiBmb250KQogewotICAgIGNvbnN0IGF1dG8mIHBs
YXRmb3JtRGF0YSA9IGZvbnQtPnBsYXRmb3JtRGF0YSgpOworICAgIGNvbnN0IGF1dG8mIHBsYXRm
b3JtRGF0YSA9IGZvbnQucGxhdGZvcm1EYXRhKCk7CiAgICAgZW5jb2RlciA8PCBwbGF0Zm9ybURh
dGEuc2l6ZSgpOwogICAgIGVuY29kZXIgPDwgcGxhdGZvcm1EYXRhLnN5bnRoZXRpY0JvbGQoKTsK
ICAgICBlbmNvZGVyIDw8IHBsYXRmb3JtRGF0YS5zeW50aGV0aWNPYmxpcXVlKCk7CkBAIC02OSw3
ICs2OSw3IEBAIHZvaWQgQXJndW1lbnRDb2RlcjxSZWY8Rm9udD4+OjplbmNvZGVQbGF0Zm9ybURh
dGEoRW5jb2RlciYgZW5jb2RlciwgY29uc3QgUmVmPEZvCiAgICAgZW5jb2RlciA8PCBsb2dGb250
OwogfQogCi1zdGQ6Om9wdGlvbmFsPEZvbnRQbGF0Zm9ybURhdGE+IEFyZ3VtZW50Q29kZXI8UmVm
PEZvbnQ+Pjo6ZGVjb2RlUGxhdGZvcm1EYXRhKERlY29kZXImIGRlY29kZXIpCitzdGQ6Om9wdGlv
bmFsPEZvbnRQbGF0Zm9ybURhdGE+IEFyZ3VtZW50Q29kZXI8Rm9udD46OmRlY29kZVBsYXRmb3Jt
RGF0YShEZWNvZGVyJiBkZWNvZGVyKQogewogICAgIHN0ZDo6b3B0aW9uYWw8ZmxvYXQ+IHNpemU7
CiAgICAgZGVjb2RlciA+PiBzaXplOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>459030</attachid>
            <date>2022-05-08 23:58:33 -0700</date>
            <delta_ts>2022-05-13 12:17:33 -0700</delta_ts>
            <desc>[fast-cq] Patch</desc>
            <filename>bug-240160-20220509095832.patch</filename>
            <type>text/plain</type>
            <size>15201</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkzOTY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGYwNGQxY2UwNjg0NGMwNzc5
NmU5ZTI4MjEyMWNlYjI2YTllMDBkYTAuLjRjZjU0OGJmYmExZjA0NTcxNzQxN2Q1MjgwZDY1Y2Fj
YmMyOTk4NTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMjItMDUtMDggIEtpbW1vIEtp
bm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKworICAgICAgICBJUEMgY2Fubm90IGVuY29k
ZSwgZGVjb2RlIFJlZjw+LCBjYXVzaW5nIGR1cGxpY2F0ZSBjb2RlCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDAxNjAKKworICAgICAgICBSZXZpZXdl
ZCBieSBBbnR0aSBLb2l2aXN0by4KKworICAgICAgICBDb25zaWRlciByZWZlcmVuY2UgY291bnRl
ZCB0eXBlIFQ6CisgICAgICAgIEVuY29kaW5nIGlzIG9mIHNpZ25hdHVyZSBgZW5jb2RlKGNvbnN0
IFQmKWAKKyAgICAgICAgRGVjb2RpbmcgaXMgb2Ygc2lnbmF0dXJlIGBzdGQ6Om9wdGlvbmFsPFJl
ZjxUPj4gZGVjb2RlKClgCisgICAgICAgIFRoaXMgaXMgdXNhYmxlIGZvciBib3RoIGBSZWZQdHJg
IGFuZCBgUmVmYCB1c2UtY2FzZXMuCisKKyAgICAgICAgQWRkIGBSZWY8VD5gIGVuY29kZXIgdGhh
dCBpcyBwb2x5bW9ycGhpYyB0byBgVGAuCisgICAgICAgIFRoaXMgd2F5IGNsaWVudHMgZG8gbm90
IG5lZWQgdG8gd3JpdGUgZW5jb2RlcnMgZm9yCisgICAgICAgIGBSZWY8VD5gLCBgUmVmUHRyPFQ+
YC4gVGhleSBqdXN0IG5lZWQgb25lIGVuY29kZXIsIGZvciBgVGAuCisKKyAgICAgICAgV2hlbiBj
bGllbnRzIGRvIG5vdCBuZWVkIHRvIHdyaXRlIGBSZWZQdHI8VD5gLCB0aGV5IG1ha2UgbGVzcwor
ICAgICAgICBidWdzLiBUaGVzZSB3aWxsIGJlIGNvcnJlY3RlZCBpbiBmdXR1cmUgcGF0Y2hlcy4K
KworICAgICAgICBIYXZpbmcgYFJlZjxUPmAgZW5jb2RlcnMgYWxsb3dzIGNsaWVudHMgdG8gdXNl
IGBWZWN0b3I8UmVmPFQ+PmAgZW5jb2RpbmcKKyAgICAgICAgdmlhIGBWZWN0b3I8VT5gIGVuY29k
ZXIsIGFuZCB0aGV5IHdvdWxkIG5vdCBuZWVkIHRvIGR1cGxpY2F0ZSB0aGF0CisgICAgICAgIGxv
Z2ljLCBtYWtpbmcgbGVzcyBidWdzLiBUaGVzZSB3aWxsIGJlIGNvcnJlY3RlZCBpbiBmdXR1cmUg
cGF0Y2hlcy4KKworICAgICAgICBSZW1vdmUgbW9zdCBgSVBDOjpBcmd1bWVudENvZGVyPFJlZjwu
Lj4+YCBpbiBmYXZvciBvZiBgSVBDOjpBcmd1bWVudENvZGVyPC4uPmAuCisgICAgICAgIEluIHRo
ZSBjYXNlcyB3aGVyZSByZW1vdmFsIHdhcyBkb25lLCByZW1vdmUgYWxzbyByZWR1bmRhbnQKKyAg
ICAgICAgYElQQzo6QXJndW1lbnRDb2RlcjxSZWZQdHI8Li4+PmAuCisKKyAgICAgICAgKiBQbGF0
Zm9ybS9JUEMvQXJndW1lbnRDb2RlcnMuaDoKKyAgICAgICAgKElQQzo6QXJndW1lbnRDb2RlcjxS
ZWZQdHI8VD4+OjpkZWNvZGUpOgorICAgICAgICAoSVBDOjpBcmd1bWVudENvZGVyPFJlZjxUPj46
OmVuY29kZSk6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8UmVmPFQ+Pjo6ZGVjb2RlKToK
KyAgICAgICAgKiBTaGFyZWQvQ29jb2EvV2ViQ29yZUFyZ3VtZW50Q29kZXJzQ29jb2EubW06Cisg
ICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6Rm9udD46OmVuY29kZVBsYXRmb3Jt
RGF0YSk6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6Rm9udD46OmRlY29k
ZVBsYXRmb3JtRGF0YSk6CisgICAgICAgICogU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5j
cHA6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6Rm9udD46OmVuY29kZSk6
CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Rm9udD46OmRlY29kZSk6CisgICAgICAgIChJ
UEM6OkFyZ3VtZW50Q29kZXI8U3lzdGVtSW1hZ2U+OjplbmNvZGUpOgorICAgICAgICAoSVBDOjpB
cmd1bWVudENvZGVyPFN5c3RlbUltYWdlPjo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQvV2Vi
Q29yZUFyZ3VtZW50Q29kZXJzLmg6CisgICAgICAgICogU2hhcmVkL3BsYXlzdGF0aW9uL1dlYkNv
cmVBcmd1bWVudENvZGVyc1BsYXlTdGF0aW9uLmNwcDoKKyAgICAgICAgKElQQzo6QXJndW1lbnRD
b2RlcjxGb250Pjo6ZW5jb2RlUGxhdGZvcm1EYXRhKToKKyAgICAgICAgKElQQzo6QXJndW1lbnRD
b2RlcjxGb250Pjo6ZGVjb2RlUGxhdGZvcm1EYXRhKToKKyAgICAgICAgKiBTaGFyZWQvc291cC9X
ZWJDb3JlQXJndW1lbnRDb2RlcnNTb3VwLmNwcDoKKyAgICAgICAgKElQQzo6QXJndW1lbnRDb2Rl
cjxGb250Pjo6ZW5jb2RlUGxhdGZvcm1EYXRhKToKKyAgICAgICAgKElQQzo6QXJndW1lbnRDb2Rl
cjxGb250Pjo6ZGVjb2RlUGxhdGZvcm1EYXRhKToKKyAgICAgICAgKiBTaGFyZWQvd2luL1dlYkNv
cmVBcmd1bWVudENvZGVyc1dpbi5jcHA6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Rm9u
dD46OmVuY29kZVBsYXRmb3JtRGF0YSk6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Rm9u
dD46OmRlY29kZVBsYXRmb3JtRGF0YSk6CisKIDIwMjItMDUtMDggIFNhaWQgQWJvdS1IYWxsYXdh
ICA8c2FpZEBhcHBsZS5jb20+CiAKICAgICAgICAgW21hY09TXSBSRUdSRVNTSU9OIChyMjkzODI1
KTogRmluZCBoaWdobGlnaHQgc25hcHNob3RzIGFyZSBpbmNvcnJlY3RseSBzY2FsZWQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL0FyZ3VtZW50Q29kZXJzLmggYi9Tb3Vy
Y2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9Bcmd1bWVudENvZGVycy5oCmluZGV4IDcyMzMxMmM3ZWRi
MDU5MmRkNjhlNzVmNmRhMzA5Mzg2MmUyM2UwNzUuLmY0NzE1NzAwYzhiMjNkZThkZWQxMjA0Yjc1
NjBmNThmOWRlYmJmMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL0Fy
Z3VtZW50Q29kZXJzLmgKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvQXJndW1lbnRD
b2RlcnMuaApAQCAtMzQ2LDcgKzM0Niw3IEBAIHRlbXBsYXRlPHR5cGVuYW1lIFQsIHR5cGVuYW1l
IFU+IHN0cnVjdCBBcmd1bWVudENvZGVyPHN0ZDo6cGFpcjxULCBVPj4gewogfTsKIAogdGVtcGxh
dGU8dHlwZW5hbWUgVD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8UmVmUHRyPFQ+PiB7Ci0gICAgdGVt
cGxhdGU8dHlwZW5hbWUgVSA9IFQ+CisgICAgdGVtcGxhdGU8dHlwZW5hbWUgRW5jb2RlciwgdHlw
ZW5hbWUgVSA9IFQ+CiAgICAgc3RhdGljIHZvaWQgZW5jb2RlKEVuY29kZXImIGVuY29kZXIsIGNv
bnN0IFJlZlB0cjxVPiYgb2JqZWN0KQogICAgIHsKICAgICAgICAgaWYgKG9iamVjdCkKQEAgLTM1
NSw3ICszNTUsNyBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxS
ZWZQdHI8VD4+IHsKICAgICAgICAgICAgIGVuY29kZXIgPDwgZmFsc2U7CiAgICAgfQogCi0gICAg
dGVtcGxhdGU8dHlwZW5hbWUgVSA9IFQ+CisgICAgdGVtcGxhdGU8dHlwZW5hbWUgRGVjb2Rlciwg
dHlwZW5hbWUgVSA9IFQ+CiAgICAgc3RhdGljIHN0ZDo6b3B0aW9uYWw8UmVmUHRyPFU+PiBkZWNv
ZGUoRGVjb2RlciYgZGVjb2RlcikKICAgICB7CiAgICAgICAgIGF1dG8gaGFzT2JqZWN0ID0gZGVj
b2Rlci50ZW1wbGF0ZSBkZWNvZGU8Ym9vbD4oKTsKQEAgLTM2Niw3ICszNjYsMjUgQEAgdGVtcGxh
dGU8dHlwZW5hbWUgVD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8UmVmUHRyPFQ+PiB7CiAgICAgICAg
IC8vIERlY29kZXJzIG9mIFUgaGVsZCB3aXRoIFJlZlB0ciBkbyBub3QgcmV0dXJuIHN0ZDo6b3B0
aW9uYWw8VT4gYnV0CiAgICAgICAgIC8vIHN0ZDo6b3B0aW9uYWw8UmVmUHRyPFU+Pi4gV2UgY2Fu
bm90IHVzZSBgZGVjb2Rlci50ZW1wbGF0ZSBkZWNvZGU8VT4oKWAKICAgICAgICAgLy8gQ3VycmVu
dGx5IGV4cGVjdCAibW9kZXJuIGRlY29kZXIiIC1saWtlIGRlY29kZSBmdW5jdGlvbi4KLSAgICAg
ICAgcmV0dXJuIFU6OmRlY29kZShkZWNvZGVyKTsKKyAgICAgICAgcmV0dXJuIEFyZ3VtZW50Q29k
ZXI8VT46OmRlY29kZShkZWNvZGVyKTsKKyAgICB9Cit9OworCit0ZW1wbGF0ZTx0eXBlbmFtZSBU
PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxSZWY8VD4+IHsKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBF
bmNvZGVyLCB0eXBlbmFtZSBVID0gVD4KKyAgICBzdGF0aWMgdm9pZCBlbmNvZGUoRW5jb2RlciYg
ZW5jb2RlciwgY29uc3QgUmVmPFU+JiBvYmplY3QpCisgICAgeworICAgICAgICBlbmNvZGVyIDw8
IG9iamVjdC5nZXQoKTsKKyAgICB9CisKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBEZWNvZGVyLCB0
eXBlbmFtZSBVID0gVD4KKyAgICBzdGF0aWMgc3RkOjpvcHRpb25hbDxSZWY8VT4+IGRlY29kZShE
ZWNvZGVyJiBkZWNvZGVyKQorICAgIHsKKyAgICAgICAgLy8gRGVjb2RlcnMgb2YgVSBoZWxkIHdp
dGggUmVmIGRvIG5vdCByZXR1cm4gc3RkOjpvcHRpb25hbDxVPiBidXQKKyAgICAgICAgLy8gc3Rk
OjpvcHRpb25hbDxSZWY8VT4+LgorICAgICAgICAvLyBXZSBjYW5ub3QgdXNlIGBkZWNvZGVyLnRl
bXBsYXRlIGRlY29kZTxVPigpYAorICAgICAgICAvLyBDdXJyZW50bHkgZXhwZWN0ICJtb2Rlcm4g
ZGVjb2RlciIgLWxpa2UgZGVjb2RlIGZ1bmN0aW9uLgorICAgICAgICByZXR1cm4gQXJndW1lbnRD
b2RlcjxVPjo6ZGVjb2RlKGRlY29kZXIpOwogICAgIH0KIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL0NvY29hL1dlYkNvcmVBcmd1bWVudENvZGVyc0NvY29hLm1tIGIvU291
cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvV2ViQ29yZUFyZ3VtZW50Q29kZXJzQ29jb2EubW0KaW5k
ZXggYjMyODJiNjVhOTNjMDE2ZGJlMzQ1YTIzMTJkNDQzN2U0MGM0Nzk0NS4uOGM3OWEyZTQyYzZm
ZWY0YTY0NTk1NDUyMjg3N2E2YjMzNTM1NGExMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9T
aGFyZWQvQ29jb2EvV2ViQ29yZUFyZ3VtZW50Q29kZXJzQ29jb2EubW0KKysrIGIvU291cmNlL1dl
YktpdC9TaGFyZWQvQ29jb2EvV2ViQ29yZUFyZ3VtZW50Q29kZXJzQ29jb2EubW0KQEAgLTQyMCw5
ICs0MjAsOSBAQCBib29sIEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6RGljdGlvbmFyeVBvcHVwSW5m
bz46OmRlY29kZVBsYXRmb3JtRGF0YShEZWNvZGVyJiBkZQogICAgIHJldHVybiB0cnVlOwogfQog
Ci12b2lkIEFyZ3VtZW50Q29kZXI8UmVmPFdlYkNvcmU6OkZvbnQ+Pjo6ZW5jb2RlUGxhdGZvcm1E
YXRhKEVuY29kZXImIGVuY29kZXIsIGNvbnN0IFJlZjxXZWJDb3JlOjpGb250PiYgZm9udCkKK3Zv
aWQgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpGb250Pjo6ZW5jb2RlUGxhdGZvcm1EYXRhKEVuY29k
ZXImIGVuY29kZXIsIGNvbnN0IFdlYkNvcmU6OkZvbnQmIGZvbnQpCiB7Ci0gICAgY29uc3QgYXV0
byYgcGxhdGZvcm1EYXRhID0gZm9udC0+cGxhdGZvcm1EYXRhKCk7CisgICAgY29uc3QgYXV0byYg
cGxhdGZvcm1EYXRhID0gZm9udC5wbGF0Zm9ybURhdGEoKTsKICAgICBlbmNvZGVyIDw8IHBsYXRm
b3JtRGF0YS5vcmllbnRhdGlvbigpOwogICAgIGVuY29kZXIgPDwgcGxhdGZvcm1EYXRhLndpZHRo
VmFyaWFudCgpOwogICAgIGVuY29kZXIgPDwgcGxhdGZvcm1EYXRhLnRleHRSZW5kZXJpbmdNb2Rl
KCk7CkBAIC00OTEsNyArNDkxLDcgQEAgc3RhdGljIFJldGFpblB0cjxDVEZvbnRSZWY+IGNyZWF0
ZUNURm9udChDRkRpY3Rpb25hcnlSZWYgYXR0cmlidXRlcywgZmxvYXQgc2l6ZSwKICAgICByZXR1
cm4gYWRvcHRDRihDVEZvbnRDcmVhdGVXaXRoRm9udERlc2NyaXB0b3JBbmRPcHRpb25zKGZvbnRE
ZXNjcmlwdG9yLmdldCgpLCBzaXplLCBudWxscHRyLCBvcHRpb25zKSk7CiB9CiAKLXN0ZDo6b3B0
aW9uYWw8V2ViQ29yZTo6Rm9udFBsYXRmb3JtRGF0YT4gQXJndW1lbnRDb2RlcjxSZWY8V2ViQ29y
ZTo6Rm9udD4+OjpkZWNvZGVQbGF0Zm9ybURhdGEoRGVjb2RlciYgZGVjb2RlcikKK3N0ZDo6b3B0
aW9uYWw8V2ViQ29yZTo6Rm9udFBsYXRmb3JtRGF0YT4gQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpG
b250Pjo6ZGVjb2RlUGxhdGZvcm1EYXRhKERlY29kZXImIGRlY29kZXIpCiB7CiAgICAgc3RkOjpv
cHRpb25hbDxXZWJDb3JlOjpGb250T3JpZW50YXRpb24+IG9yaWVudGF0aW9uOwogICAgIGRlY29k
ZXIgPj4gb3JpZW50YXRpb247CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJD
b3JlQXJndW1lbnRDb2RlcnMuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3Vt
ZW50Q29kZXJzLmNwcAppbmRleCBkZTMyZWE2YjIxYmMwZmEyMDU2ZTJmZTEyNDllNGE1YTJkYWMz
Mzk1Li5mOGVmMDYwNjk5Nzk0ZjA0NjAxYzU4NDRkYjUyZmVhYjFkZDFhYmYwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKQEAgLTEwNzQsNDQg
KzEwNzQsMTkgQEAgc3RhdGljIFdBUk5fVU5VU0VEX1JFVFVSTiBib29sIGRlY29kZU9wdGlvbmFs
SW1hZ2UoRGVjb2RlciYgZGVjb2RlciwgUmVmUHRyPEltYWcKICAgICByZXR1cm4gZGVjb2RlSW1h
Z2UoZGVjb2RlciwgaW1hZ2UpOwogfQogCi12b2lkIEFyZ3VtZW50Q29kZXI8UmVmUHRyPEZvbnQ+
Pjo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIsIGNvbnN0IFJlZlB0cjxGb250PiYgZm9udCkKK3Zv
aWQgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpGb250Pjo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIs
IGNvbnN0IFdlYkNvcmU6OkZvbnQmIGZvbnQpCiB7Ci0gICAgZW5jb2RlciA8PCAhIWZvbnQ7Ci0g
ICAgaWYgKGZvbnQpCi0gICAgICAgIGVuY29kZXIgPDwgUmVmIHsgKmZvbnQgfTsKLX0KLQotc3Rk
OjpvcHRpb25hbDxSZWZQdHI8Rm9udD4+IEFyZ3VtZW50Q29kZXI8UmVmUHRyPEZvbnQ+Pjo6ZGVj
b2RlKERlY29kZXImIGRlY29kZXIpCi17Ci0gICAgc3RkOjpvcHRpb25hbDxib29sPiBoYXNGb250
OwotICAgIGRlY29kZXIgPj4gaGFzRm9udDsKLSAgICBpZiAoIWhhc0ZvbnQpCi0gICAgICAgIHJl
dHVybiBzdGQ6Om51bGxvcHQ7Ci0KLSAgICBpZiAoIWhhc0ZvbnQudmFsdWUoKSkKLSAgICAgICAg
cmV0dXJuIHN0ZDo6bWFrZV9vcHRpb25hbChudWxscHRyKTsKLQotICAgIHN0ZDo6b3B0aW9uYWw8
UmVmPEZvbnQ+PiBmb250OwotICAgIGRlY29kZXIgPj4gZm9udDsKLSAgICBpZiAoIWZvbnQpCi0g
ICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7Ci0KLSAgICByZXR1cm4geyBXVEZNb3ZlKCpmb250
KSB9OwotfQotCi12b2lkIEFyZ3VtZW50Q29kZXI8UmVmPEZvbnQ+Pjo6ZW5jb2RlKEVuY29kZXIm
IGVuY29kZXIsIGNvbnN0IFJlZjxXZWJDb3JlOjpGb250PiYgZm9udCkKLXsKLSAgICBlbmNvZGVy
IDw8IGZvbnQtPm9yaWdpbigpOwotICAgIGVuY29kZXIgPDwgKGZvbnQtPmlzSW50ZXJzdGl0aWFs
KCkgPyBGb250OjpJbnRlcnN0aXRpYWw6OlllcyA6IEZvbnQ6OkludGVyc3RpdGlhbDo6Tm8pOwot
ICAgIGVuY29kZXIgPDwgZm9udC0+dmlzaWJpbGl0eSgpOwotICAgIGVuY29kZXIgPDwgKGZvbnQt
PmlzVGV4dE9yaWVudGF0aW9uRmFsbGJhY2soKSA/IEZvbnQ6Ok9yaWVudGF0aW9uRmFsbGJhY2s6
OlllcyA6IEZvbnQ6Ok9yaWVudGF0aW9uRmFsbGJhY2s6Ok5vKTsKLSAgICBlbmNvZGVyIDw8IGZv
bnQtPnJlbmRlcmluZ1Jlc291cmNlSWRlbnRpZmllcigpOworICAgIGVuY29kZXIgPDwgZm9udC5v
cmlnaW4oKTsKKyAgICBlbmNvZGVyIDw8IChmb250LmlzSW50ZXJzdGl0aWFsKCkgPyBGb250OjpJ
bnRlcnN0aXRpYWw6OlllcyA6IEZvbnQ6OkludGVyc3RpdGlhbDo6Tm8pOworICAgIGVuY29kZXIg
PDwgZm9udC52aXNpYmlsaXR5KCk7CisgICAgZW5jb2RlciA8PCAoZm9udC5pc1RleHRPcmllbnRh
dGlvbkZhbGxiYWNrKCkgPyBGb250OjpPcmllbnRhdGlvbkZhbGxiYWNrOjpZZXMgOiBGb250OjpP
cmllbnRhdGlvbkZhbGxiYWNrOjpObyk7CisgICAgZW5jb2RlciA8PCBmb250LnJlbmRlcmluZ1Jl
c291cmNlSWRlbnRpZmllcigpOwogICAgIC8vIEludGVudGlvbmFsbHkgZG9uJ3QgZW5jb2RlIG1f
aXNCcm9rZW5JZGVvZ3JhcGhGYWxsYmFjayBiZWNhdXNlIGl0IGRvZXNuJ3QgYWZmZWN0IGRyYXdH
bHlwaHMoKS4KIAogICAgIGVuY29kZVBsYXRmb3JtRGF0YShlbmNvZGVyLCBmb250KTsKIH0KIAot
c3RkOjpvcHRpb25hbDxSZWY8Rm9udD4+IEFyZ3VtZW50Q29kZXI8UmVmPEZvbnQ+Pjo6ZGVjb2Rl
KERlY29kZXImIGRlY29kZXIpCitzdGQ6Om9wdGlvbmFsPFJlZjxGb250Pj4gQXJndW1lbnRDb2Rl
cjxGb250Pjo6ZGVjb2RlKERlY29kZXImIGRlY29kZXIpCiB7CiAgICAgc3RkOjpvcHRpb25hbDxG
b250OjpPcmlnaW4+IG9yaWdpbjsKICAgICBkZWNvZGVyID4+IG9yaWdpbjsKQEAgLTMxNjAsMjMg
KzMxMzUsMjMgQEAgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpTY3JpcHRCdWZmZXI+IEFyZ3VtZW50
Q29kZXI8V2ViQ29yZTo6U2NyaXB0QnVmZmVyPjo6ZGVjb2QKIH0KIAogdGVtcGxhdGU8dHlwZW5h
bWUgRW5jb2Rlcj4KLXZvaWQgQXJndW1lbnRDb2RlcjxSZWY8U3lzdGVtSW1hZ2U+Pjo6ZW5jb2Rl
KEVuY29kZXImIGVuY29kZXIsIGNvbnN0IFJlZjxTeXN0ZW1JbWFnZT4mIHN5c3RlbUltYWdlKQor
dm9pZCBBcmd1bWVudENvZGVyPFN5c3RlbUltYWdlPjo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIs
IGNvbnN0IFN5c3RlbUltYWdlJiBzeXN0ZW1JbWFnZSkKIHsKLSAgICBlbmNvZGVyIDw8IHN5c3Rl
bUltYWdlLT5zeXN0ZW1JbWFnZVR5cGUoKTsKKyAgICBlbmNvZGVyIDw8IHN5c3RlbUltYWdlLnN5
c3RlbUltYWdlVHlwZSgpOwogCi0gICAgc3dpdGNoIChzeXN0ZW1JbWFnZS0+c3lzdGVtSW1hZ2VU
eXBlKCkpIHsKKyAgICBzd2l0Y2ggKHN5c3RlbUltYWdlLnN5c3RlbUltYWdlVHlwZSgpKSB7CiAj
aWYgRU5BQkxFKEFQUExFX1BBWSkKICAgICBjYXNlIFN5c3RlbUltYWdlVHlwZTo6QXBwbGVQYXlC
dXR0b246Ci0gICAgICAgIGRvd25jYXN0PEFwcGxlUGF5QnV0dG9uU3lzdGVtSW1hZ2U+KHN5c3Rl
bUltYWdlLmdldCgpKS5lbmNvZGUoZW5jb2Rlcik7CisgICAgICAgIGRvd25jYXN0PEFwcGxlUGF5
QnV0dG9uU3lzdGVtSW1hZ2U+KHN5c3RlbUltYWdlKS5lbmNvZGUoZW5jb2Rlcik7CiAgICAgICAg
IHJldHVybjsKIAogICAgIGNhc2UgU3lzdGVtSW1hZ2VUeXBlOjpBcHBsZVBheUxvZ286Ci0gICAg
ICAgIGRvd25jYXN0PEFwcGxlUGF5TG9nb1N5c3RlbUltYWdlPihzeXN0ZW1JbWFnZS5nZXQoKSku
ZW5jb2RlKGVuY29kZXIpOworICAgICAgICBkb3duY2FzdDxBcHBsZVBheUxvZ29TeXN0ZW1JbWFn
ZT4oc3lzdGVtSW1hZ2UpLmVuY29kZShlbmNvZGVyKTsKICAgICAgICAgcmV0dXJuOwogI2VuZGlm
CiAjaWYgVVNFKFNZU1RFTV9QUkVWSUVXKQogICAgIGNhc2UgU3lzdGVtSW1hZ2VUeXBlOjpBUktp
dEJhZGdlOgotICAgICAgICBkb3duY2FzdDxBUktpdEJhZGdlU3lzdGVtSW1hZ2U+KHN5c3RlbUlt
YWdlLmdldCgpKS5lbmNvZGUoZW5jb2Rlcik7CisgICAgICAgIGRvd25jYXN0PEFSS2l0QmFkZ2VT
eXN0ZW1JbWFnZT4oc3lzdGVtSW1hZ2UpLmVuY29kZShlbmNvZGVyKTsKICAgICAgICAgcmV0dXJu
OwogI2VuZGlmCiAgICAgfQpAQCAtMzE4NSwxMSArMzE2MCwxMSBAQCB2b2lkIEFyZ3VtZW50Q29k
ZXI8UmVmPFN5c3RlbUltYWdlPj46OmVuY29kZShFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBSZWY8
U3lzdGVtSQogfQogCiB0ZW1wbGF0ZQotdm9pZCBBcmd1bWVudENvZGVyPFJlZjxTeXN0ZW1JbWFn
ZT4+OjplbmNvZGU8RW5jb2Rlcj4oRW5jb2RlciYsIGNvbnN0IFJlZjxTeXN0ZW1JbWFnZT4mKTsK
K3ZvaWQgQXJndW1lbnRDb2RlcjxTeXN0ZW1JbWFnZT46OmVuY29kZTxFbmNvZGVyPihFbmNvZGVy
JiwgY29uc3QgU3lzdGVtSW1hZ2UmKTsKIHRlbXBsYXRlCi12b2lkIEFyZ3VtZW50Q29kZXI8UmVm
PFN5c3RlbUltYWdlPj46OmVuY29kZTxTdHJlYW1Db25uZWN0aW9uRW5jb2Rlcj4oU3RyZWFtQ29u
bmVjdGlvbkVuY29kZXImLCBjb25zdCBSZWY8U3lzdGVtSW1hZ2U+Jik7Cit2b2lkIEFyZ3VtZW50
Q29kZXI8U3lzdGVtSW1hZ2U+OjplbmNvZGU8U3RyZWFtQ29ubmVjdGlvbkVuY29kZXI+KFN0cmVh
bUNvbm5lY3Rpb25FbmNvZGVyJiwgY29uc3QgU3lzdGVtSW1hZ2UmKTsKIAotc3RkOjpvcHRpb25h
bDxSZWY8U3lzdGVtSW1hZ2U+PiBBcmd1bWVudENvZGVyPFJlZjxTeXN0ZW1JbWFnZT4+OjpkZWNv
ZGUoRGVjb2RlciYgZGVjb2RlcikKK3N0ZDo6b3B0aW9uYWw8UmVmPFN5c3RlbUltYWdlPj4gQXJn
dW1lbnRDb2RlcjxTeXN0ZW1JbWFnZT46OmRlY29kZShEZWNvZGVyJiBkZWNvZGVyKQogewogICAg
IHN0ZDo6b3B0aW9uYWw8U3lzdGVtSW1hZ2VUeXBlPiBzeXN0ZW1JbWFnZVR5cGU7CiAgICAgZGVj
b2RlciA+PiBzeXN0ZW1JbWFnZVR5cGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJl
ZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVB
cmd1bWVudENvZGVycy5oCmluZGV4IGI3NDhhYWIwMDBjYjJhM2VmMDdlZmM2MWRmZmZjM2Y1ZWM3
MDg4YzEuLjY2ZDhjOTZkN2QzNjQ2MWJhM2E5NjM3MTQxM2JjYzYyNGY2YzMyMDEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5oCkBAIC0zOTgsMTUgKzM5
OCwxMSBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYkNvcmU6OkN1cnNvcj4g
ewogICAgIHN0YXRpYyBXQVJOX1VOVVNFRF9SRVRVUk4gYm9vbCBkZWNvZGUoRGVjb2RlciYsIFdl
YkNvcmU6OkN1cnNvciYpOwogfTsKIAotdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxS
ZWZQdHI8V2ViQ29yZTo6Rm9udD4+IHsKLSAgICBzdGF0aWMgdm9pZCBlbmNvZGUoRW5jb2RlciYs
IGNvbnN0IFJlZlB0cjxXZWJDb3JlOjpGb250PiYpOwotICAgIHN0YXRpYyBzdGQ6Om9wdGlvbmFs
PFJlZlB0cjxXZWJDb3JlOjpGb250Pj4gZGVjb2RlKERlY29kZXImKTsKLX07CiAKLXRlbXBsYXRl
PD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8UmVmPFdlYkNvcmU6OkZvbnQ+PiB7Ci0gICAgc3RhdGlj
IHZvaWQgZW5jb2RlKEVuY29kZXImLCBjb25zdCBSZWY8V2ViQ29yZTo6Rm9udD4mKTsKK3RlbXBs
YXRlPD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6Rm9udD4geworICAgIHN0YXRpYyB2
b2lkIGVuY29kZShFbmNvZGVyJiwgY29uc3QgV2ViQ29yZTo6Rm9udCYpOwogICAgIHN0YXRpYyBz
dGQ6Om9wdGlvbmFsPFJlZjxXZWJDb3JlOjpGb250Pj4gZGVjb2RlKERlY29kZXImKTsKLSAgICBz
dGF0aWMgdm9pZCBlbmNvZGVQbGF0Zm9ybURhdGEoRW5jb2RlciYsIGNvbnN0IFJlZjxXZWJDb3Jl
OjpGb250PiYpOworICAgIHN0YXRpYyB2b2lkIGVuY29kZVBsYXRmb3JtRGF0YShFbmNvZGVyJiwg
Y29uc3QgV2ViQ29yZTo6Rm9udCYpOwogICAgIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6
OkZvbnRQbGF0Zm9ybURhdGE+IGRlY29kZVBsYXRmb3JtRGF0YShEZWNvZGVyJik7CiB9OwogCkBA
IC03NzYsOSArNzcyLDkgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxXZWJDb3Jl
OjpTY3JpcHRCdWZmZXI+IHsKICAgICBzdGF0aWMgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpTY3Jp
cHRCdWZmZXI+IGRlY29kZShEZWNvZGVyJik7CiB9OwogCi10ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1
bWVudENvZGVyPFJlZjxXZWJDb3JlOjpTeXN0ZW1JbWFnZT4+IHsKK3RlbXBsYXRlPD4gc3RydWN0
IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6U3lzdGVtSW1hZ2U+IHsKICAgICB0ZW1wbGF0ZTx0eXBl
bmFtZSBFbmNvZGVyPgotICAgIHN0YXRpYyB2b2lkIGVuY29kZShFbmNvZGVyJiwgY29uc3QgUmVm
PFdlYkNvcmU6OlN5c3RlbUltYWdlPiYpOworICAgIHN0YXRpYyB2b2lkIGVuY29kZShFbmNvZGVy
JiwgY29uc3QgV2ViQ29yZTo6U3lzdGVtSW1hZ2UmKTsKICAgICBzdGF0aWMgc3RkOjpvcHRpb25h
bDxSZWY8V2ViQ29yZTo6U3lzdGVtSW1hZ2U+PiBkZWNvZGUoRGVjb2RlciYpOwogfTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvcGxheXN0YXRpb24vV2ViQ29yZUFyZ3VtZW50
Q29kZXJzUGxheVN0YXRpb24uY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvcGxheXN0YXRpb24v
V2ViQ29yZUFyZ3VtZW50Q29kZXJzUGxheVN0YXRpb24uY3BwCmluZGV4IGY3ZDZmODliOTM5MWJl
NmQ1NTM3MjljNzc5NjE0NmM1NjY0NTQ2YjguLjk2NGI1MzU1ZDIxODgzNmUzNGEzZDQyZjk2ZTU3
NzRkYjdjMDZhMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL3BsYXlzdGF0aW9u
L1dlYkNvcmVBcmd1bWVudENvZGVyc1BsYXlTdGF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9wbGF5c3RhdGlvbi9XZWJDb3JlQXJndW1lbnRDb2RlcnNQbGF5U3RhdGlvbi5jcHAK
QEAgLTMyLDEyICszMiwxMiBAQCBuYW1lc3BhY2UgSVBDIHsKIAogdXNpbmcgbmFtZXNwYWNlIFdl
YkNvcmU7CiAKLXZvaWQgQXJndW1lbnRDb2RlcjxSZWY8Rm9udD4+OjplbmNvZGVQbGF0Zm9ybURh
dGEoRW5jb2RlciYgZW5jb2RlciwgY29uc3QgUmVmPEZvbnQ+JiBmb250KQordm9pZCBBcmd1bWVu
dENvZGVyPEZvbnQ+OjplbmNvZGVQbGF0Zm9ybURhdGEoRW5jb2RlciYgZW5jb2RlciwgY29uc3Qg
Rm9udCYgZm9udCkKIHsKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAotc3RkOjpvcHRp
b25hbDxGb250UGxhdGZvcm1EYXRhPiBBcmd1bWVudENvZGVyPFJlZjxGb250Pj46OmRlY29kZVBs
YXRmb3JtRGF0YShEZWNvZGVyJiBkZWNvZGVyKQorc3RkOjpvcHRpb25hbDxGb250UGxhdGZvcm1E
YXRhPiBBcmd1bWVudENvZGVyPEZvbnQ+OjpkZWNvZGVQbGF0Zm9ybURhdGEoRGVjb2RlciYgZGVj
b2RlcikKIHsKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICByZXR1cm4gc3RkOjpudWxs
b3B0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvc291cC9XZWJDb3JlQXJndW1l
bnRDb2RlcnNTb3VwLmNwcCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL3NvdXAvV2ViQ29yZUFyZ3Vt
ZW50Q29kZXJzU291cC5jcHAKaW5kZXggZGRkODBjNDE3MDk4NzM2MzBjNzA3M2JjYmFmODg0MDFl
ZjNiZTA4ZC4uNGIxNzQ1NGMzNjQ0ZTNhZmRlMWYxOWZlODM2MTU2MjA4N2FlYzkwYiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvc291cC9XZWJDb3JlQXJndW1lbnRDb2RlcnNTb3Vw
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9zb3VwL1dlYkNvcmVBcmd1bWVudENvZGVy
c1NvdXAuY3BwCkBAIC0yMjQsMTIgKzIyNCwxMiBAQCBib29sIEFyZ3VtZW50Q29kZXI8RGljdGlv
bmFyeVBvcHVwSW5mbz46OmRlY29kZVBsYXRmb3JtRGF0YShEZWNvZGVyJiwgRGljdGlvbmFyeQog
ICAgIHJldHVybiBmYWxzZTsKIH0KIAotdm9pZCBBcmd1bWVudENvZGVyPFJlZjxGb250Pj46OmVu
Y29kZVBsYXRmb3JtRGF0YShFbmNvZGVyJiwgY29uc3QgUmVmPEZvbnQ+JikKK3ZvaWQgQXJndW1l
bnRDb2RlcjxGb250Pjo6ZW5jb2RlUGxhdGZvcm1EYXRhKEVuY29kZXImLCBjb25zdCBGb250JikK
IHsKICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAotc3RkOjpvcHRpb25hbDxGb250UGxh
dGZvcm1EYXRhPiBBcmd1bWVudENvZGVyPFJlZjxGb250Pj46OmRlY29kZVBsYXRmb3JtRGF0YShE
ZWNvZGVyJikKK3N0ZDo6b3B0aW9uYWw8Rm9udFBsYXRmb3JtRGF0YT4gQXJndW1lbnRDb2RlcjxG
b250Pjo6ZGVjb2RlUGxhdGZvcm1EYXRhKERlY29kZXImKQogewogICAgIEFTU0VSVF9OT1RfUkVB
Q0hFRCgpOwogICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC93aW4vV2ViQ29yZUFyZ3VtZW50Q29kZXJzV2luLmNwcCBiL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL3dpbi9XZWJDb3JlQXJndW1lbnRDb2RlcnNXaW4uY3BwCmluZGV4IGRmMzk1NDc0
NDVjNzMyNmQ5ODExYzA4MDM3ZTg1ZjQ0NTdmODAwZWIuLmY2ZmE0ZmFhM2M4ODJhYjUyMTFjZTA4
YzI2YjFlMTM0MDZkZGM4OGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL3dpbi9X
ZWJDb3JlQXJndW1lbnRDb2RlcnNXaW4uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL3dp
bi9XZWJDb3JlQXJndW1lbnRDb2RlcnNXaW4uY3BwCkBAIC01MCw5ICs1MCw5IEBAIHRlbXBsYXRl
PD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8TE9HRk9OVD4gewogICAgIH0KIH07CiAKLXZvaWQgQXJn
dW1lbnRDb2RlcjxSZWY8Rm9udD4+OjplbmNvZGVQbGF0Zm9ybURhdGEoRW5jb2RlciYgZW5jb2Rl
ciwgY29uc3QgUmVmPEZvbnQ+JiBmb250KQordm9pZCBBcmd1bWVudENvZGVyPEZvbnQ+OjplbmNv
ZGVQbGF0Zm9ybURhdGEoRW5jb2RlciYgZW5jb2RlciwgY29uc3QgRm9udCYgZm9udCkKIHsKLSAg
ICBjb25zdCBhdXRvJiBwbGF0Zm9ybURhdGEgPSBmb250LT5wbGF0Zm9ybURhdGEoKTsKKyAgICBj
b25zdCBhdXRvJiBwbGF0Zm9ybURhdGEgPSBmb250LnBsYXRmb3JtRGF0YSgpOwogICAgIGVuY29k
ZXIgPDwgcGxhdGZvcm1EYXRhLnNpemUoKTsKICAgICBlbmNvZGVyIDw8IHBsYXRmb3JtRGF0YS5z
eW50aGV0aWNCb2xkKCk7CiAgICAgZW5jb2RlciA8PCBwbGF0Zm9ybURhdGEuc3ludGhldGljT2Js
aXF1ZSgpOwpAQCAtNjksNyArNjksNyBAQCB2b2lkIEFyZ3VtZW50Q29kZXI8UmVmPEZvbnQ+Pjo6
ZW5jb2RlUGxhdGZvcm1EYXRhKEVuY29kZXImIGVuY29kZXIsIGNvbnN0IFJlZjxGbwogICAgIGVu
Y29kZXIgPDwgbG9nRm9udDsKIH0KIAotc3RkOjpvcHRpb25hbDxGb250UGxhdGZvcm1EYXRhPiBB
cmd1bWVudENvZGVyPFJlZjxGb250Pj46OmRlY29kZVBsYXRmb3JtRGF0YShEZWNvZGVyJiBkZWNv
ZGVyKQorc3RkOjpvcHRpb25hbDxGb250UGxhdGZvcm1EYXRhPiBBcmd1bWVudENvZGVyPEZvbnQ+
OjpkZWNvZGVQbGF0Zm9ybURhdGEoRGVjb2RlciYgZGVjb2RlcikKIHsKICAgICBzdGQ6Om9wdGlv
bmFsPGZsb2F0PiBzaXplOwogICAgIGRlY29kZXIgPj4gc2l6ZTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>