<?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>142756</bug_id>
          
          <creation_ts>2015-03-16 16:52:05 -0700</creation_ts>
          <short_desc>REGRESSION(r181492): May have regressed PLT (Requested by anttik on #webkit).</short_desc>
          <delta_ts>2015-03-16 16:56:28 -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>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>142028</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>kling</cc>
    
    <cc>koivisto</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1077642</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-16 16:52:05 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/181492 broke the build:
May have regressed PLT (Requested by anttik on #webkit).

This is an automatic bug report generated by webkitbot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1077644</commentid>
    <comment_count>1</comment_count>
      <attachid>248768</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-16 16:52:35 -0700</bug_when>
    <thetext>Created attachment 248768
ROLLOUT of r181492

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the rollout will be successful.  This process takes approximately 15 minutes.

If you would like to land the rollout faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1077646</commentid>
    <comment_count>2</comment_count>
      <attachid>248768</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-16 16:56:25 -0700</bug_when>
    <thetext>Comment on attachment 248768
ROLLOUT of r181492

Clearing flags on attachment: 248768

Committed r181597: &lt;http://trac.webkit.org/changeset/181597&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1077647</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-16 16:56:28 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>248768</attachid>
            <date>2015-03-16 16:52:35 -0700</date>
            <delta_ts>2015-03-16 16:56:25 -0700</delta_ts>
            <desc>ROLLOUT of r181492</desc>
            <filename>bug-142756-20150316165206.patch</filename>
            <type>text/plain</type>
            <size>24872</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgxNTk2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzQyZTUyMGQ3NWFjNDM5
MTM1MTEwMjFmZTE4M2NiZmMxOGY0NWZjOC4uMjkxOTk2M2VkYjk5MGFmZGU1Yzc4NWE5ZmE5YWJi
MDQ2YjRjYTJmNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE1LTAzLTE2ICBDb21t
aXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2Vk
LCByb2xsaW5nIG91dCByMTgxNDkyLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTQyNzU2CisKKyAgICAgICAgTWF5IGhhdmUgcmVncmVzc2VkIFBMVCAo
UmVxdWVzdGVkIGJ5IGFudHRpayBvbiAjd2Via2l0KS4KKworICAgICAgICBSZXZlcnRlZCBjaGFu
Z2VzZXQ6CisKKyAgICAgICAgIkNhY2hlIGdseXBoIHdpZHRocyB0byBHbHlwaFBhZ2VzIgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQyMDI4CisgICAg
ICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzE4MTQ5MgorCiAyMDE1LTAzLTE2
ICBSb2dlciBGb25nICA8cm9nZXJfZm9uZ0BhcHBsZS5jb20+CiAKICAgICAgICAgW1dlYkdMMl0g
SW5zdGFuY2luZyBkcmF3IGNhbGxzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvRm9udC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9G
b250LmNwcAppbmRleCBhMjVjN2E4ZTg1NTZiZjI4N2U3ZWUwOTZiN2U3ODNkMTg0MzEyMzNlLi5i
NjJkNDFkNjdlMjRkYzNkYjY1ODFhZDAxN2I3ZTNlZTY3ZThmNjFjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250LmNwcApAQCAtNTQsOSArNTQsMTYgQEAgRm9udDo6Rm9u
dChjb25zdCBGb250UGxhdGZvcm1EYXRhJiBwbGF0Zm9ybURhdGEsIGJvb2wgaXNDdXN0b21Gb250
LCBib29sIGlzTG9hZGkKICAgICA6IG1fbWF4Q2hhcldpZHRoKC0xKQogICAgICwgbV9hdmdDaGFy
V2lkdGgoLTEpCiAgICAgLCBtX3BsYXRmb3JtRGF0YShwbGF0Zm9ybURhdGEpCisgICAgLCBtX3Ry
ZWF0QXNGaXhlZFBpdGNoKGZhbHNlKQogICAgICwgbV9pc0N1c3RvbUZvbnQoaXNDdXN0b21Gb250
KQogICAgICwgbV9pc0xvYWRpbmcoaXNMb2FkaW5nKQogICAgICwgbV9pc1RleHRPcmllbnRhdGlv
bkZhbGxiYWNrKGlzVGV4dE9yaWVudGF0aW9uRmFsbGJhY2spCisgICAgLCBtX2lzQnJva2VuSWRl
b2dyYXBoRmFsbGJhY2soZmFsc2UpCisgICAgLCBtX21hdGhEYXRhKG51bGxwdHIpCisjaWYgRU5B
QkxFKE9QRU5UWVBFX1ZFUlRJQ0FMKQorICAgICwgbV92ZXJ0aWNhbERhdGEoMCkKKyNlbmRpZgor
ICAgICwgbV9oYXNWZXJ0aWNhbEdseXBocyhmYWxzZSkKIHsKICAgICBwbGF0Zm9ybUluaXQoKTsK
ICAgICBwbGF0Zm9ybUdseXBoSW5pdCgpOwpAQCAtNzIsMTEgKzc5LDIxIEBAIEZvbnQ6OkZvbnQo
Y29uc3QgRm9udFBsYXRmb3JtRGF0YSYgcGxhdGZvcm1EYXRhLCBib29sIGlzQ3VzdG9tRm9udCwg
Ym9vbCBpc0xvYWRpCiBGb250OjpGb250KHN0ZDo6dW5pcXVlX3B0cjxTVkdEYXRhPiBzdmdEYXRh
LCBmbG9hdCBmb250U2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRpY0l0YWxp
YykKICAgICA6IG1fcGxhdGZvcm1EYXRhKEZvbnRQbGF0Zm9ybURhdGEoZm9udFNpemUsIHN5bnRo
ZXRpY0JvbGQsIHN5bnRoZXRpY0l0YWxpYykpCiAgICAgLCBtX3N2Z0RhdGEoV1RGOjptb3ZlKHN2
Z0RhdGEpKQorICAgICwgbV90cmVhdEFzRml4ZWRQaXRjaChmYWxzZSkKICAgICAsIG1faXNDdXN0
b21Gb250KHRydWUpCisgICAgLCBtX2lzTG9hZGluZyhmYWxzZSkKKyAgICAsIG1faXNUZXh0T3Jp
ZW50YXRpb25GYWxsYmFjayhmYWxzZSkKKyAgICAsIG1faXNCcm9rZW5JZGVvZ3JhcGhGYWxsYmFj
ayhmYWxzZSkKKyAgICAsIG1fbWF0aERhdGEobnVsbHB0cikKKyNpZiBFTkFCTEUoT1BFTlRZUEVf
VkVSVElDQUwpCisgICAgLCBtX3ZlcnRpY2FsRGF0YSgwKQorI2VuZGlmCisgICAgLCBtX2hhc1Zl
cnRpY2FsR2x5cGhzKGZhbHNlKQorI2lmIFBMQVRGT1JNKElPUykKKyAgICAsIG1fc2hvdWxkTm90
QmVVc2VkRm9yQXJhYmljKGZhbHNlKQorI2VuZGlmCiB7CiAgICAgbV9zdmdEYXRhLT5pbml0aWFs
aXplRm9udCh0aGlzLCBmb250U2l6ZSk7Ci0gICAgaWYgKG1fZ2x5cGhQYWdlWmVybykKLSAgICAg
ICAgbV9nbHlwaFBhZ2VaZXJvLT5zZXRJbW11dGFibGUoKTsKIH0KIAogLy8gRXN0aW1hdGVzIG9m
IGF2Z0NoYXJXaWR0aCBhbmQgbWF4Q2hhcldpZHRoIGZvciBwbGF0Zm9ybXMgdGhhdCBkb24ndCBz
dXBwb3J0IGFjY2Vzc2luZyB0aGVzZSB2YWx1ZXMgZnJvbSB0aGUgZm9udC4KQEAgLTg5LDcgKzEw
Niw3IEBAIHZvaWQgRm9udDo6aW5pdENoYXJXaWR0aHMoKQogICAgICAgICBzdGF0aWMgY29uc3Qg
VUNoYXIzMiBkaWdpdFplcm9DaGFyID0gJzAnOwogICAgICAgICBHbHlwaCBkaWdpdFplcm9HbHlw
aCA9IGdseXBoUGFnZVplcm8tPmdseXBoRGF0YUZvckNoYXJhY3RlcihkaWdpdFplcm9DaGFyKS5n
bHlwaDsKICAgICAgICAgaWYgKGRpZ2l0WmVyb0dseXBoKQotICAgICAgICAgICAgbV9hdmdDaGFy
V2lkdGggPSBjb21wdXRlV2lkdGhGb3JHbHlwaChkaWdpdFplcm9HbHlwaCk7CisgICAgICAgICAg
ICBtX2F2Z0NoYXJXaWR0aCA9IHdpZHRoRm9yR2x5cGgoZGlnaXRaZXJvR2x5cGgpOwogICAgIH0K
IAogICAgIC8vIElmIHdlIGNhbid0IHJldHJpZXZlIHRoZSB3aWR0aCBvZiBhICcwJywgZmFsbCBi
YWNrIHRvIHRoZSB4IGhlaWdodC4KQEAgLTEwNCwzNyArMTIxLDM1IEBAIHZvaWQgRm9udDo6cGxh
dGZvcm1HbHlwaEluaXQoKQogewogICAgIGF1dG8qIGdseXBoUGFnZVplcm8gPSBnbHlwaFBhZ2Uo
MCk7CiAgICAgaWYgKCFnbHlwaFBhZ2VaZXJvKSB7CisgICAgICAgIG1fc3BhY2VHbHlwaCA9IDA7
CisgICAgICAgIG1fc3BhY2VXaWR0aCA9IDA7CisgICAgICAgIG1femVyb0dseXBoID0gMDsKKyAg
ICAgICAgbV9hZGp1c3RlZFNwYWNlV2lkdGggPSAwOwogICAgICAgICBkZXRlcm1pbmVQaXRjaCgp
OworICAgICAgICBtX3plcm9XaWR0aFNwYWNlR2x5cGggPSAwOwogICAgICAgICByZXR1cm47CiAg
ICAgfQorCiAgICAgLy8gQXNrIGZvciB0aGUgZ2x5cGggZm9yIDAgdG8gYXZvaWQgcGFnaW5nIGlu
IFpFUk8gV0lEVEggU1BBQ0UuIENvbnRyb2wgY2hhcmFjdGVycywgaW5jbHVkaW5nIDAsCiAgICAg
Ly8gYXJlIG1hcHBlZCB0byB0aGUgWkVSTyBXSURUSCBTUEFDRSBnbHlwaC4KICAgICBtX3plcm9X
aWR0aFNwYWNlR2x5cGggPSBnbHlwaFBhZ2VaZXJvLT5nbHlwaERhdGFGb3JDaGFyYWN0ZXIoMCku
Z2x5cGg7CisKICAgICAvLyBOYXN0eSBoYWNrIHRvIGRldGVybWluZSBpZiB3ZSBzaG91bGQgcm91
bmQgb3IgY2VpbCBzcGFjZSB3aWR0aHMuCiAgICAgLy8gSWYgdGhlIGZvbnQgaXMgbW9ub3NwYWNl
IG9yIGZha2UgbW9ub3NwYWNlIHdlIGNlaWwgdG8gZW5zdXJlIHRoYXQgCiAgICAgLy8gZXZlcnkg
Y2hhcmFjdGVyIGFuZCB0aGUgc3BhY2UgYXJlIHRoZSBzYW1lIHdpZHRoLiBPdGhlcndpc2Ugd2Ug
cm91bmQuCi0gICAgYXV0byBzcGFjZUdseXBoRGF0YSA9IGdseXBoUGFnZVplcm8tPmdseXBoRGF0
YUZvckNoYXJhY3RlcignICcpOwotICAgIG1fc3BhY2VHbHlwaCA9IHNwYWNlR2x5cGhEYXRhLmds
eXBoOwotICAgIG1fc3BhY2VXaWR0aCA9IHNwYWNlR2x5cGhEYXRhLndpZHRoOwotICAgIG1fZm9u
dE1ldHJpY3Muc2V0WmVyb1dpZHRoKGdseXBoUGFnZVplcm8tPmdseXBoRGF0YUZvckNoYXJhY3Rl
cignMCcpLndpZHRoKTsKKyAgICBtX3NwYWNlR2x5cGggPSBnbHlwaFBhZ2VaZXJvLT5nbHlwaERh
dGFGb3JDaGFyYWN0ZXIoJyAnKS5nbHlwaDsKKyAgICBmbG9hdCB3aWR0aCA9IHdpZHRoRm9yR2x5
cGgobV9zcGFjZUdseXBoKTsKKyAgICBtX3NwYWNlV2lkdGggPSB3aWR0aDsKKyAgICBtX3plcm9H
bHlwaCA9IGdseXBoUGFnZVplcm8tPmdseXBoRGF0YUZvckNoYXJhY3RlcignMCcpLmdseXBoOwor
ICAgIG1fZm9udE1ldHJpY3Muc2V0WmVyb1dpZHRoKHdpZHRoRm9yR2x5cGgobV96ZXJvR2x5cGgp
KTsKICAgICBkZXRlcm1pbmVQaXRjaCgpOwotICAgIG1fYWRqdXN0ZWRTcGFjZVdpZHRoID0gbV90
cmVhdEFzRml4ZWRQaXRjaCA/IGNlaWxmKG1fc3BhY2VXaWR0aCkgOiByb3VuZGYobV9zcGFjZVdp
ZHRoKTsKLSAgICBtX2dseXBoWmVyb1dpZHRoID0gY29tcHV0ZVdpZHRoRm9yR2x5cGgoMCk7Cisg
ICAgbV9hZGp1c3RlZFNwYWNlV2lkdGggPSBtX3RyZWF0QXNGaXhlZFBpdGNoID8gY2VpbGYod2lk
dGgpIDogcm91bmRmKHdpZHRoKTsKIAogICAgIC8vIEZvcmNlIHRoZSBnbHlwaCBmb3IgWkVSTyBX
SURUSCBTUEFDRSB0byBoYXZlIHplcm8gd2lkdGgsIHVubGVzcyBpdCBpcyBzaGFyZWQgd2l0aCBT
UEFDRS4KICAgICAvLyBIZWx2ZXRpY2EgaXMgYW4gZXhhbXBsZSBvZiBhIG5vbi16ZXJvIHdpZHRo
IFpFUk8gV0lEVEggU1BBQ0UgZ2x5cGguCiAgICAgLy8gU2VlIDxodHRwOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMzE3OD4gYW5kIEZvbnQ6OmlzWmVyb1dpZHRoU3BhY2VHbHlw
aCgpCiAgICAgaWYgKG1femVyb1dpZHRoU3BhY2VHbHlwaCA9PSBtX3NwYWNlR2x5cGgpCiAgICAg
ICAgIG1femVyb1dpZHRoU3BhY2VHbHlwaCA9IDA7Ci0gICAgZWxzZSB7Ci0gICAgICAgIC8vIEZp
eHVwIHRoZSBwYWdlIHplcm8gbm93IHRoYXQgd2Uga25vdyB0aGUgemVybyB3aWR0aCBnbHlwaC4K
LSAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IEdseXBoUGFnZTo6c2l6ZTsgKytpKSB7
Ci0gICAgICAgICAgICBhdXRvIGdseXBoRGF0YSA9IG1fZ2x5cGhQYWdlWmVyby0+Z2x5cGhEYXRh
Rm9ySW5kZXgoaSk7Ci0gICAgICAgICAgICBpZiAoZ2x5cGhEYXRhLmdseXBoID09IG1femVyb1dp
ZHRoU3BhY2VHbHlwaCkKLSAgICAgICAgICAgICAgICBtX2dseXBoUGFnZVplcm8tPnNldEdseXBo
RGF0YUZvckluZGV4KGksIHsgZ2x5cGhEYXRhLmdseXBoLCAwLCBnbHlwaERhdGEuZm9udCB9KTsK
LSAgICAgICAgfQotICAgIH0KLSAgICBtX2dseXBoUGFnZVplcm8tPnNldEltbXV0YWJsZSgpOwog
fQogCiBGb250Ojp+Rm9udCgpCkBAIC0xNTYsNyArMTcxLDcgQEAgc3RhdGljIGJvb2wgZmlsbEds
eXBoUGFnZShHbHlwaFBhZ2UmIHBhZ2VUb0ZpbGwsIHVuc2lnbmVkIG9mZnNldCwgdW5zaWduZWQg
bGVuZ3QKICAgICByZXR1cm4gaGFzR2x5cGhzOwogfQogCi1SZWZQdHI8R2x5cGhQYWdlPiBjcmVh
dGVBbmRGaWxsR2x5cGhQYWdlKHVuc2lnbmVkIHBhZ2VOdW1iZXIsIGNvbnN0IEZvbnQqIGZvbnQp
CitzdGF0aWMgUmVmUHRyPEdseXBoUGFnZT4gY3JlYXRlQW5kRmlsbEdseXBoUGFnZSh1bnNpZ25l
ZCBwYWdlTnVtYmVyLCBjb25zdCBGb250KiBmb250KQogewogI2lmIFBMQVRGT1JNKElPUykKICAg
ICAvLyBGSVhNRTogVGltZXMgTmV3IFJvbWFuIGNvbnRhaW5zIEFyYWJpYyBnbHlwaHMsIGJ1dCBD
b3JlIFRleHQgZG9lc24ndCBrbm93IGhvdyB0byBzaGFwZSB0aGVtLiBTZWUgPHJkYXI6Ly9wcm9i
bGVtLzk4MjM5NzU+LgpAQCAtMjI5LDQ1ICsyNDQsMjIgQEAgUmVmUHRyPEdseXBoUGFnZT4gY3Jl
YXRlQW5kRmlsbEdseXBoUGFnZSh1bnNpZ25lZCBwYWdlTnVtYmVyLCBjb25zdCBGb250KiBmb250
KQogICAgIGlmICghaGF2ZUdseXBocykKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKKyAgICBn
bHlwaFBhZ2UtPnNldEltbXV0YWJsZSgpOwogICAgIHJldHVybiBnbHlwaFBhZ2U7CiB9CiAKLWZs
b2F0IEZvbnQ6OmNvbXB1dGVXaWR0aEZvckdseXBoKEdseXBoIGdseXBoKSBjb25zdAotewotICAg
IGlmIChpc1plcm9XaWR0aFNwYWNlR2x5cGgoZ2x5cGgpKQotICAgICAgICByZXR1cm4gMDsKLSAg
ICBmbG9hdCB3aWR0aDsKLSAgICBpZiAoaXNTVkdGb250KCkpCi0gICAgICAgIHdpZHRoID0gbV9z
dmdEYXRhLT53aWR0aEZvclNWR0dseXBoKGdseXBoLCBtX3BsYXRmb3JtRGF0YS5zaXplKCkpOwot
I2lmIEVOQUJMRShPUEVOVFlQRV9WRVJUSUNBTCkKLSAgICBlbHNlIGlmIChtX3ZlcnRpY2FsRGF0
YSkKLSNpZiBVU0UoQ0cpIHx8IFVTRShDQUlSTykKLSAgICAgICAgd2lkdGggPSBtX3ZlcnRpY2Fs
RGF0YS0+YWR2YW5jZUhlaWdodCh0aGlzLCBnbHlwaCkgKyBtX3N5bnRoZXRpY0JvbGRPZmZzZXQ7
Ci0jZWxzZQotICAgICAgICB3aWR0aCA9IG1fdmVydGljYWxEYXRhLT5hZHZhbmNlSGVpZ2h0KHRo
aXMsIGdseXBoKTsKLSNlbmRpZgotI2VuZGlmCi0gICAgZWxzZQotICAgICAgICB3aWR0aCA9IHBs
YXRmb3JtV2lkdGhGb3JHbHlwaChnbHlwaCk7Ci0gICAgcmV0dXJuIHdpZHRoOwotfQotCiBjb25z
dCBHbHlwaFBhZ2UqIEZvbnQ6OmdseXBoUGFnZSh1bnNpZ25lZCBwYWdlTnVtYmVyKSBjb25zdAog
ewogICAgIGlmICghcGFnZU51bWJlcikgewogICAgICAgICBpZiAoIW1fZ2x5cGhQYWdlWmVybykK
ICAgICAgICAgICAgIG1fZ2x5cGhQYWdlWmVybyA9IGNyZWF0ZUFuZEZpbGxHbHlwaFBhZ2UoMCwg
dGhpcyk7Ci0gICAgICAgIC8vIFplcm8gcGFnZSBpcyBtYXJrZWQgaW1tdXRhYmxlIGluIHBsYXRm
b3JtR2x5cGhJbml0LgogICAgICAgICByZXR1cm4gbV9nbHlwaFBhZ2VaZXJvLmdldCgpOwogICAg
IH0KICAgICBhdXRvIGFkZFJlc3VsdCA9IG1fZ2x5cGhQYWdlcy5hZGQocGFnZU51bWJlciwgbnVs
bHB0cik7Ci0gICAgYXV0byYgcGFnZSA9IGFkZFJlc3VsdC5pdGVyYXRvci0+dmFsdWU7Ci0gICAg
aWYgKGFkZFJlc3VsdC5pc05ld0VudHJ5KSB7Ci0gICAgICAgIHBhZ2UgPSBjcmVhdGVBbmRGaWxs
R2x5cGhQYWdlKHBhZ2VOdW1iZXIsIHRoaXMpOwotICAgICAgICBpZiAocGFnZSkKLSAgICAgICAg
ICAgIHBhZ2UtPnNldEltbXV0YWJsZSgpOwotICAgIH0KLSAgICByZXR1cm4gcGFnZS5nZXQoKTsK
KyAgICBpZiAoYWRkUmVzdWx0LmlzTmV3RW50cnkpCisgICAgICAgIGFkZFJlc3VsdC5pdGVyYXRv
ci0+dmFsdWUgPSBjcmVhdGVBbmRGaWxsR2x5cGhQYWdlKHBhZ2VOdW1iZXIsIHRoaXMpOworCisg
ICAgcmV0dXJuIGFkZFJlc3VsdC5pdGVyYXRvci0+dmFsdWUuZ2V0KCk7CiB9CiAKIEdseXBoIEZv
bnQ6OmdseXBoRm9yQ2hhcmFjdGVyKFVDaGFyMzIgY2hhcmFjdGVyKSBjb25zdApAQCAtNDY2LDEw
ICs0NTgsNCBAQCB2b2lkIEZvbnQ6OnJlbW92ZUZyb21TeXN0ZW1GYWxsYmFja0NhY2hlKCkKICAg
ICB9CiB9CiAKLXZvaWQgR2x5cGhQYWdlOjpzZXRHbHlwaERhdGFGb3JJbmRleCh1bnNpZ25lZCBp
bmRleCwgR2x5cGggZ2x5cGgsIGNvbnN0IEZvbnQqIGZvbnQpCi17Ci0gICAgc2V0R2x5cGhEYXRh
Rm9ySW5kZXgoaW5kZXgsIHsgZ2x5cGgsIGZvbnQgPyBmb250LT5jb21wdXRlV2lkdGhGb3JHbHlw
aChnbHlwaCkgOiAwLCBmb250IH0pOwotfQotCi0KIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnQuaAppbmRleCA0MDA3MDFjZmRiYjliZWUx
NGFjYzU4Mjg2MGI4ZTA0ZWExODU2ZTA2Li5kY2E1YjUxZDdiOTgxNTUwZDZkMzQ1MWE0ZWEwZDMy
N2UwNDQ4Y2RkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9G
b250LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udC5oCkBAIC0x
NDAsOCArMTQwLDkgQEAgcHVibGljOgogICAgIHZvaWQgc2V0QXZnQ2hhcldpZHRoKGZsb2F0IGF2
Z0NoYXJXaWR0aCkgeyBtX2F2Z0NoYXJXaWR0aCA9IGF2Z0NoYXJXaWR0aDsgfQogCiAgICAgRmxv
YXRSZWN0IGJvdW5kc0ZvckdseXBoKEdseXBoKSBjb25zdDsKLQotICAgIGZsb2F0IGNvbXB1dGVX
aWR0aEZvckdseXBoKEdseXBoKSBjb25zdDsKKyAgICBmbG9hdCB3aWR0aEZvckdseXBoKEdseXBo
KSBjb25zdDsKKyAgICBGbG9hdFJlY3QgcGxhdGZvcm1Cb3VuZHNGb3JHbHlwaChHbHlwaCkgY29u
c3Q7CisgICAgZmxvYXQgcGxhdGZvcm1XaWR0aEZvckdseXBoKEdseXBoKSBjb25zdDsKIAogICAg
IGZsb2F0IHNwYWNlV2lkdGgoKSBjb25zdCB7IHJldHVybiBtX3NwYWNlV2lkdGg7IH0KICAgICBm
bG9hdCBhZGp1c3RlZFNwYWNlV2lkdGgoKSBjb25zdCB7IHJldHVybiBtX2FkanVzdGVkU3BhY2VX
aWR0aDsgfQpAQCAtMTUwLDcgKzE1MSw2IEBAIHB1YmxpYzoKICAgICAgICAgbV9zcGFjZVdpZHRo
ID0gc3BhY2VXaWR0aDsKICAgICAgICAgbV9hZGp1c3RlZFNwYWNlV2lkdGggPSBzcGFjZVdpZHRo
OwogICAgIH0KLSAgICBmbG9hdCBnbHlwaFplcm9XaWR0aCgpIGNvbnN0IHsgcmV0dXJuIG1fZ2x5
cGhaZXJvV2lkdGg7IH0KIAogI2lmIFVTRShDRykgfHwgVVNFKENBSVJPKQogICAgIGZsb2F0IHN5
bnRoZXRpY0JvbGRPZmZzZXQoKSBjb25zdCB7IHJldHVybiBtX3N5bnRoZXRpY0JvbGRPZmZzZXQ7
IH0KQEAgLTE2MSw2ICsxNjEsOCBAQCBwdWJsaWM6CiAgICAgR2x5cGggemVyb1dpZHRoU3BhY2VH
bHlwaCgpIGNvbnN0IHsgcmV0dXJuIG1femVyb1dpZHRoU3BhY2VHbHlwaDsgfQogICAgIHZvaWQg
c2V0WmVyb1dpZHRoU3BhY2VHbHlwaChHbHlwaCBzcGFjZUdseXBoKSB7IG1femVyb1dpZHRoU3Bh
Y2VHbHlwaCA9IHNwYWNlR2x5cGg7IH0KICAgICBib29sIGlzWmVyb1dpZHRoU3BhY2VHbHlwaChH
bHlwaCBnbHlwaCkgY29uc3QgeyByZXR1cm4gZ2x5cGggPT0gbV96ZXJvV2lkdGhTcGFjZUdseXBo
ICYmIGdseXBoOyB9CisgICAgR2x5cGggemVyb0dseXBoKCkgY29uc3QgeyByZXR1cm4gbV96ZXJv
R2x5cGg7IH0KKyAgICB2b2lkIHNldFplcm9HbHlwaChHbHlwaCB6ZXJvR2x5cGgpIHsgbV96ZXJv
R2x5cGggPSB6ZXJvR2x5cGg7IH0KIAogICAgIEdseXBoRGF0YSBnbHlwaERhdGFGb3JDaGFyYWN0
ZXIoVUNoYXIzMikgY29uc3Q7CiAgICAgR2x5cGggZ2x5cGhGb3JDaGFyYWN0ZXIoVUNoYXIzMikg
Y29uc3Q7CkBAIC0yMjUsMTMgKzIyNyw4IEBAIHByaXZhdGU6CiAgICAgUGFzc1JlZlB0cjxGb250
PiBjcmVhdGVTY2FsZWRGb250KGNvbnN0IEZvbnREZXNjcmlwdGlvbiYsIGZsb2F0IHNjYWxlRmFj
dG9yKSBjb25zdDsKICAgICBQYXNzUmVmUHRyPEZvbnQ+IHBsYXRmb3JtQ3JlYXRlU2NhbGVkRm9u
dChjb25zdCBGb250RGVzY3JpcHRpb24mLCBmbG9hdCBzY2FsZUZhY3RvcikgY29uc3Q7CiAKLSAg
ICBmbG9hdCBwbGF0Zm9ybVdpZHRoRm9yR2x5cGgoR2x5cGgpIGNvbnN0OwotICAgIEZsb2F0UmVj
dCBwbGF0Zm9ybUJvdW5kc0ZvckdseXBoKEdseXBoKSBjb25zdDsKLQogICAgIHZvaWQgcmVtb3Zl
RnJvbVN5c3RlbUZhbGxiYWNrQ2FjaGUoKTsKIAotICAgIGZyaWVuZCBSZWZQdHI8R2x5cGhQYWdl
PiBjcmVhdGVBbmRGaWxsR2x5cGhQYWdlKHVuc2lnbmVkIHBhZ2VOdW1iZXIsIGNvbnN0IEZvbnQq
KTsKLQogI2lmIFBMQVRGT1JNKFdJTikKICAgICB2b2lkIGluaXRHRElGb250KCk7CiAgICAgdm9p
ZCBwbGF0Zm9ybUNvbW1vbkRlc3Ryb3koKTsKQEAgLTI0OSwxMyArMjQ2LDE0IEBAIHByaXZhdGU6
CiAgICAgbXV0YWJsZSBSZWZQdHI8R2x5cGhQYWdlPiBtX2dseXBoUGFnZVplcm87CiAgICAgbXV0
YWJsZSBIYXNoTWFwPHVuc2lnbmVkLCBSZWZQdHI8R2x5cGhQYWdlPj4gbV9nbHlwaFBhZ2VzOwog
ICAgIG11dGFibGUgc3RkOjp1bmlxdWVfcHRyPEdseXBoTWV0cmljc01hcDxGbG9hdFJlY3Q+PiBt
X2dseXBoVG9Cb3VuZHNNYXA7CisgICAgbXV0YWJsZSBHbHlwaE1ldHJpY3NNYXA8ZmxvYXQ+IG1f
Z2x5cGhUb1dpZHRoTWFwOwogCi0gICAgYm9vbCBtX3RyZWF0QXNGaXhlZFBpdGNoIHsgZmFsc2Ug
fTsKLSAgICBib29sIG1faXNDdXN0b21Gb250IHsgZmFsc2UgfTsgLy8gV2hldGhlciBvciBub3Qg
d2UgYXJlIGN1c3RvbSBmb250IGxvYWRlZCB2aWEgQGZvbnQtZmFjZQotICAgIGJvb2wgbV9pc0xv
YWRpbmcgeyBmYWxzZSB9OyAvLyBXaGV0aGVyIG9yIG5vdCB0aGlzIGN1c3RvbSBmb250IGlzIHN0
aWxsIGluIHRoZSBhY3Qgb2YgbG9hZGluZy4KKyAgICBib29sIG1fdHJlYXRBc0ZpeGVkUGl0Y2g7
CisgICAgYm9vbCBtX2lzQ3VzdG9tRm9udDsgLy8gV2hldGhlciBvciBub3Qgd2UgYXJlIGN1c3Rv
bSBmb250IGxvYWRlZCB2aWEgQGZvbnQtZmFjZQorICAgIGJvb2wgbV9pc0xvYWRpbmc7IC8vIFdo
ZXRoZXIgb3Igbm90IHRoaXMgY3VzdG9tIGZvbnQgaXMgc3RpbGwgaW4gdGhlIGFjdCBvZiBsb2Fk
aW5nLgogCi0gICAgYm9vbCBtX2lzVGV4dE9yaWVudGF0aW9uRmFsbGJhY2sgeyBmYWxzZSB9Owot
ICAgIGJvb2wgbV9pc0Jyb2tlbklkZW9ncmFwaEZhbGxiYWNrIHsgZmFsc2UgfTsKKyAgICBib29s
IG1faXNUZXh0T3JpZW50YXRpb25GYWxsYmFjazsKKyAgICBib29sIG1faXNCcm9rZW5JZGVvZ3Jh
cGhGYWxsYmFjazsKIAogICAgIGJvb2wgbV9pc1VzZWRJblN5c3RlbUZhbGxiYWNrQ2FjaGUgeyBm
YWxzZSB9OwogCkBAIC0yNjMsMTUgKzI2MSwxNCBAQCBwcml2YXRlOgogI2lmIEVOQUJMRShPUEVO
VFlQRV9WRVJUSUNBTCkKICAgICBSZWZQdHI8T3BlblR5cGVWZXJ0aWNhbERhdGE+IG1fdmVydGlj
YWxEYXRhOwogI2VuZGlmCi0gICAgYm9vbCBtX2hhc1ZlcnRpY2FsR2x5cGhzIHsgZmFsc2UgfTsK
LQotICAgIEdseXBoIG1fc3BhY2VHbHlwaCB7IDAgfTsKLSAgICBmbG9hdCBtX3NwYWNlV2lkdGgg
eyAwIH07Ci0gICAgZmxvYXQgbV9hZGp1c3RlZFNwYWNlV2lkdGggeyAwIH07CisgICAgYm9vbCBt
X2hhc1ZlcnRpY2FsR2x5cGhzOwogCi0gICAgR2x5cGggbV96ZXJvV2lkdGhTcGFjZUdseXBoIHsg
MCB9OworICAgIEdseXBoIG1fc3BhY2VHbHlwaDsKKyAgICBmbG9hdCBtX3NwYWNlV2lkdGg7Cisg
ICAgR2x5cGggbV96ZXJvR2x5cGg7CisgICAgZmxvYXQgbV9hZGp1c3RlZFNwYWNlV2lkdGg7CiAK
LSAgICBmbG9hdCBtX2dseXBoWmVyb1dpZHRoIHsgMCB9OworICAgIEdseXBoIG1femVyb1dpZHRo
U3BhY2VHbHlwaDsKIAogICAgIHN0cnVjdCBEZXJpdmVkRm9udERhdGEgewogICAgICAgICBleHBs
aWNpdCBEZXJpdmVkRm9udERhdGEoYm9vbCBjdXN0b20pCkBAIC0zMTIsNyArMzA5LDcgQEAgcHJp
dmF0ZToKICAgICBtdXRhYmxlIFNDUklQVF9GT05UUFJPUEVSVElFUyogbV9zY3JpcHRGb250UHJv
cGVydGllczsKICNlbmRpZgogI2lmIFBMQVRGT1JNKElPUykKLSAgICBib29sIG1fc2hvdWxkTm90
QmVVc2VkRm9yQXJhYmljIHsgZmFsc2UgfTsKKyAgICBib29sIG1fc2hvdWxkTm90QmVVc2VkRm9y
QXJhYmljOwogI2VuZGlmCiB9OwogCkBAIC0zMzUsNiArMzMyLDMyIEBAIEFMV0FZU19JTkxJTkUg
RmxvYXRSZWN0IEZvbnQ6OmJvdW5kc0ZvckdseXBoKEdseXBoIGdseXBoKSBjb25zdAogICAgIHJl
dHVybiBib3VuZHM7CiB9CiAKK0FMV0FZU19JTkxJTkUgZmxvYXQgRm9udDo6d2lkdGhGb3JHbHlw
aChHbHlwaCBnbHlwaCkgY29uc3QKK3sKKyAgICBpZiAoaXNaZXJvV2lkdGhTcGFjZUdseXBoKGds
eXBoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBmbG9hdCB3aWR0aCA9IG1fZ2x5cGhUb1dp
ZHRoTWFwLm1ldHJpY3NGb3JHbHlwaChnbHlwaCk7CisgICAgaWYgKHdpZHRoICE9IGNHbHlwaFNp
emVVbmtub3duKQorICAgICAgICByZXR1cm4gd2lkdGg7CisKKyAgICBpZiAoaXNTVkdGb250KCkp
CisgICAgICAgIHdpZHRoID0gbV9zdmdEYXRhLT53aWR0aEZvclNWR0dseXBoKGdseXBoLCBtX3Bs
YXRmb3JtRGF0YS5zaXplKCkpOworI2lmIEVOQUJMRShPUEVOVFlQRV9WRVJUSUNBTCkKKyAgICBl
bHNlIGlmIChtX3ZlcnRpY2FsRGF0YSkKKyNpZiBVU0UoQ0cpIHx8IFVTRShDQUlSTykKKyAgICAg
ICAgd2lkdGggPSBtX3ZlcnRpY2FsRGF0YS0+YWR2YW5jZUhlaWdodCh0aGlzLCBnbHlwaCkgKyBt
X3N5bnRoZXRpY0JvbGRPZmZzZXQ7CisjZWxzZQorICAgICAgICB3aWR0aCA9IG1fdmVydGljYWxE
YXRhLT5hZHZhbmNlSGVpZ2h0KHRoaXMsIGdseXBoKTsKKyNlbmRpZgorI2VuZGlmCisgICAgZWxz
ZQorICAgICAgICB3aWR0aCA9IHBsYXRmb3JtV2lkdGhGb3JHbHlwaChnbHlwaCk7CisKKyAgICBt
X2dseXBoVG9XaWR0aE1hcC5zZXRNZXRyaWNzRm9yR2x5cGgoZ2x5cGgsIHdpZHRoKTsKKyAgICBy
ZXR1cm4gd2lkdGg7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEZv
bnRfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENh
c2NhZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udENhc2NhZGUu
Y3BwCmluZGV4IDVjZTI1NjQ2ZDY1MWYzYTRlZmRjNDg1NTgxNDU4OGFiYWFiYmRlNTMuLjI3NWY1
ZjA5NThiNGQyMjAzNjM1MDQxMTczNjhlMGExYjE3M2JiMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnRDYXNjYWRlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZS5jcHAKQEAgLTEzMzksNyArMTMzOSw3
IEBAIGlubGluZSBzdGF0aWMgZmxvYXQgb2Zmc2V0VG9NaWRkbGVPZkdseXBoKGNvbnN0IEZvbnQq
IGZvbnREYXRhLCBHbHlwaCBnbHlwaCkKICAgICAgICAgcmV0dXJuIGJvdW5kcy54KCkgKyBib3Vu
ZHMud2lkdGgoKSAvIDI7CiAgICAgfQogICAgIC8vIEZJWE1FOiBVc2UgZ2x5cGggYm91bmRzIG9u
Y2UgdGhleSBtYWtlIHNlbnNlIGZvciB2ZXJ0aWNhbCBmb250cy4KLSAgICByZXR1cm4gZm9udERh
dGEtPmNvbXB1dGVXaWR0aEZvckdseXBoKGdseXBoKSAvIDI7CisgICAgcmV0dXJuIGZvbnREYXRh
LT53aWR0aEZvckdseXBoKGdseXBoKSAvIDI7CiB9CiAKIGlubGluZSBzdGF0aWMgZmxvYXQgb2Zm
c2V0VG9NaWRkbGVPZkdseXBoQXRJbmRleChjb25zdCBHbHlwaEJ1ZmZlciYgZ2x5cGhCdWZmZXIs
IHNpemVfdCBpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Rm9udENhc2NhZGVGb250cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9G
b250Q2FzY2FkZUZvbnRzLmNwcAppbmRleCA4OTliMDk2MGNlODFhOTNmNzFiZTIyMWY5YjgzMDU2
MTMyMTIzOTI5Li5kZDNiZTFhY2VmODk5NWM3MWU1Mzk1YjQxZTY2NTcyOGFhMDQzNGQ2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZUZvbnRz
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250Q2FzY2FkZUZv
bnRzLmNwcApAQCAtMzg3LDcgKzM4Nyw3IEBAIEdseXBoRGF0YSBGb250Q2FzY2FkZUZvbnRzOjpn
bHlwaERhdGFGb3JDaGFyYWN0ZXIoVUNoYXIzMiBjLCBjb25zdCBGb250RGVzY3JpcHRpCiAgICAg
ICAgICAgICBjYWNoZWRQYWdlID0gR2x5cGhQYWdlOjpjcmVhdGVDb3B5Rm9yTWl4ZWRGb250cygq
Y2FjaGVkUGFnZSk7CiAKICAgICAgICAgZ2x5cGhEYXRhID0gZ2x5cGhEYXRhRm9yTm9ybWFsVmFy
aWFudChjLCBkZXNjcmlwdGlvbik7Ci0gICAgICAgIGNhY2hlZFBhZ2UtPnNldEdseXBoRGF0YUZv
ckNoYXJhY3RlcihjLCBnbHlwaERhdGEpOworICAgICAgICBjYWNoZWRQYWdlLT5zZXRHbHlwaERh
dGFGb3JDaGFyYWN0ZXIoYywgZ2x5cGhEYXRhLmdseXBoLCBnbHlwaERhdGEuZm9udCk7CiAgICAg
fQogICAgIHJldHVybiBnbHlwaERhdGE7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9HbHlwaFBhZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0dseXBoUGFnZS5oCmluZGV4IDc1ZmQ2YjhhNWRhNDQ1MTE3YWQ2ZmRiNjVlNzM1NjFl
NmUxZjM3OTEuLjM2ZDhmZTBkMGZkYWEzZDY2YzhiOGZjYTEyNjEwMjE0NzAzMTc5YWMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dseXBoUGFnZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dseXBoUGFnZS5oCkBAIC00NCwxNiAr
NDQsMTMgQEAgY2xhc3MgRm9udDsKIC8vIEhvbGRzIHRoZSBnbHlwaCBpbmRleCBhbmQgdGhlIGNv
cnJlc3BvbmRpbmcgRm9udCBpbmZvcm1hdGlvbiBmb3IgYSBnaXZlbgogLy8gY2hhcmFjdGVyLgog
c3RydWN0IEdseXBoRGF0YSB7Ci0gICAgR2x5cGhEYXRhKCkgeyB9Ci0gICAgR2x5cGhEYXRhKEds
eXBoIGdseXBoLCBmbG9hdCB3aWR0aCwgY29uc3QgRm9udCogZm9udCkKLSAgICAgICAgOiBnbHlw
aChnbHlwaCkKLSAgICAgICAgLCB3aWR0aCh3aWR0aCkKLSAgICAgICAgLCBmb250KGZvbnQpCi0g
ICAgeyB9Ci0KLSAgICBHbHlwaCBnbHlwaCB7IDAgfTsKLSAgICBmbG9hdCB3aWR0aCB7IDAgfTsK
LSAgICBjb25zdCBGb250KiBmb250IHsgbnVsbHB0ciB9OworICAgIEdseXBoRGF0YShHbHlwaCBn
ID0gMCwgY29uc3QgRm9udCogZiA9IDApCisgICAgICAgIDogZ2x5cGgoZykKKyAgICAgICAgLCBm
b250KGYpCisgICAgeworICAgIH0KKyAgICBHbHlwaCBnbHlwaDsKKyAgICBjb25zdCBGb250KiBm
b250OwogfTsKIAogI2lmIENPTVBJTEVSKE1TVkMpCkBAIC0xMTIsMTAgKzEwOSw5IEBAIHB1Ymxp
YzoKICAgICB7CiAgICAgICAgIEFTU0VSVF9XSVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKGluZGV4
IDwgc2l6ZSk7CiAgICAgICAgIEdseXBoIGdseXBoID0gbV9nbHlwaHNbaW5kZXhdOwotICAgICAg
ICBmbG9hdCB3aWR0aCA9IG1fd2lkdGhzW2luZGV4XTsKICAgICAgICAgaWYgKGhhc1BlckdseXBo
Rm9udERhdGEoKSkKLSAgICAgICAgICAgIHJldHVybiB7IGdseXBoLCB3aWR0aCwgbV9wZXJHbHlw
aEZvbnREYXRhW2luZGV4XSB9OwotICAgICAgICByZXR1cm4geyBnbHlwaCwgd2lkdGgsIGdseXBo
ID8gbV9mb250Rm9yQWxsR2x5cGhzIDogbnVsbHB0ciB9OworICAgICAgICAgICAgcmV0dXJuIEds
eXBoRGF0YShnbHlwaCwgbV9wZXJHbHlwaEZvbnREYXRhW2luZGV4XSk7CisgICAgICAgIHJldHVy
biBHbHlwaERhdGEoZ2x5cGgsIGdseXBoID8gbV9mb250Rm9yQWxsR2x5cGhzIDogMCk7CiAgICAg
fQogCiAgICAgQUxXQVlTX0lOTElORSBHbHlwaCBnbHlwaEF0KHVuc2lnbmVkIGluZGV4KSBjb25z
dApAQCAtMTMyLDI5ICsxMjgsMzEgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gbV9nbHlwaHNb
aW5kZXhdID8gbV9mb250Rm9yQWxsR2x5cGhzIDogMDsKICAgICB9CiAKLSAgICB2b2lkIHNldEds
eXBoRGF0YUZvckNoYXJhY3RlcihVQ2hhcjMyIGMsIGNvbnN0IEdseXBoRGF0YSYgZ2x5cGhEYXRh
KQorICAgIHZvaWQgc2V0R2x5cGhEYXRhRm9yQ2hhcmFjdGVyKFVDaGFyMzIgYywgR2x5cGggZywg
Y29uc3QgRm9udCogZikKICAgICB7Ci0gICAgICAgIHNldEdseXBoRGF0YUZvckluZGV4KGluZGV4
Rm9yQ2hhcmFjdGVyKGMpLCBnbHlwaERhdGEpOworICAgICAgICBzZXRHbHlwaERhdGFGb3JJbmRl
eChpbmRleEZvckNoYXJhY3RlcihjKSwgZywgZik7CiAgICAgfQogCi0gICAgdm9pZCBzZXRHbHlw
aERhdGFGb3JJbmRleCh1bnNpZ25lZCBpbmRleCwgR2x5cGgsIGNvbnN0IEZvbnQqKTsKLQotICAg
IHZvaWQgc2V0R2x5cGhEYXRhRm9ySW5kZXgodW5zaWduZWQgaW5kZXgsIGNvbnN0IEdseXBoRGF0
YSYgZ2x5cGhEYXRhKQorICAgIHZvaWQgc2V0R2x5cGhEYXRhRm9ySW5kZXgodW5zaWduZWQgaW5k
ZXgsIEdseXBoIGdseXBoLCBjb25zdCBGb250KiBmb250KQogICAgIHsKICAgICAgICAgQVNTRVJU
X1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04oaW5kZXggPCBzaXplKTsKICAgICAgICAgQVNTRVJU
KCFtX2lzSW1tdXRhYmxlKTsKLQotICAgICAgICBtX2dseXBoc1tpbmRleF0gPSBnbHlwaERhdGEu
Z2x5cGg7Ci0gICAgICAgIG1fd2lkdGhzW2luZGV4XSA9IGdseXBoRGF0YS53aWR0aDsKKyAgICAg
ICAgCisgICAgICAgIG1fZ2x5cGhzW2luZGV4XSA9IGdseXBoOwogCiAgICAgICAgIC8vIEdseXBo
UGFnZSBnZXR0ZXJzIHdpbGwgYWx3YXlzIHJldHVybiBhIG51bGwgRm9udCogZm9yIGdseXBoICMw
IGlmIHRoZXJlJ3Mgbm8gcGVyLWdseXBoIGZvbnQgYXJyYXkuCiAgICAgICAgIGlmIChoYXNQZXJH
bHlwaEZvbnREYXRhKCkpIHsKLSAgICAgICAgICAgIG1fcGVyR2x5cGhGb250RGF0YVtpbmRleF0g
PSAgZ2x5cGhEYXRhLmdseXBoID8gIGdseXBoRGF0YS5mb250IDogMDsKKyAgICAgICAgICAgIG1f
cGVyR2x5cGhGb250RGF0YVtpbmRleF0gPSBnbHlwaCA/IGZvbnQgOiAwOwogICAgICAgICAgICAg
cmV0dXJuOwogICAgICAgICB9CiAKICAgICAgICAgLy8gQSBzaW5nbGUtZm9udCBHbHlwaFBhZ2Ug
YWxyZWFkeSBhc3NpZ25lZCBtX2ZvbnRGb3JBbGxHbHlwaHMgaW4gdGhlIGNvbnN0cnVjdG9yLgot
ICAgICAgICBBU1NFUlQoIWdseXBoRGF0YS5nbHlwaCB8fCBnbHlwaERhdGEuZm9udCA9PSBtX2Zv
bnRGb3JBbGxHbHlwaHMpOworICAgICAgICBBU1NFUlQoIWdseXBoIHx8IGZvbnQgPT0gbV9mb250
Rm9yQWxsR2x5cGhzKTsKKyAgICB9CisKKyAgICB2b2lkIHNldEdseXBoRGF0YUZvckluZGV4KHVu
c2lnbmVkIGluZGV4LCBjb25zdCBHbHlwaERhdGEmIGdseXBoRGF0YSkKKyAgICB7CisgICAgICAg
IHNldEdseXBoRGF0YUZvckluZGV4KGluZGV4LCBnbHlwaERhdGEuZ2x5cGgsIGdseXBoRGF0YS5m
b250KTsKICAgICB9CiAKICAgICAvLyBJbXBsZW1lbnRlZCBieSB0aGUgcGxhdGZvcm0uCkBAIC0x
NzAsNyArMTY4LDYgQEAgcHJpdmF0ZToKICAgICAgICAgOiBtX2ZvbnRGb3JBbGxHbHlwaHMoZm9u
dEZvckFsbEdseXBocykKICAgICB7CiAgICAgICAgIG1lbXNldChtX2dseXBocywgMCwgc2l6ZW9m
KG1fZ2x5cGhzKSk7Ci0gICAgICAgIG1lbXNldChtX3dpZHRocywgMCwgc2l6ZW9mKG1fd2lkdGhz
KSk7CiAgICAgICAgIGlmIChoYXNQZXJHbHlwaEZvbnREYXRhKCkpCiAgICAgICAgICAgICBtZW1z
ZXQobV9wZXJHbHlwaEZvbnREYXRhLCAwLCBzaXplb2YoRm9udCopICogR2x5cGhQYWdlOjpzaXpl
KTsKICAgICAgICAgKytzX2NvdW50OwpAQCAtMTc4LDkgKzE3NSw4IEBAIHByaXZhdGU6CiAKICAg
ICBib29sIGhhc1BlckdseXBoRm9udERhdGEoKSBjb25zdCB7IHJldHVybiAhbV9mb250Rm9yQWxs
R2x5cGhzOyB9CiAKLSAgICBjb25zdCBGb250KiBtX2ZvbnRGb3JBbGxHbHlwaHMgeyBudWxscHRy
IH07CisgICAgY29uc3QgRm9udCogbV9mb250Rm9yQWxsR2x5cGhzOwogICAgIEdseXBoIG1fZ2x5
cGhzW3NpemVdOwotICAgIGZsb2F0IG1fd2lkdGhzW3NpemVdOwogCiAgICAgYm9vbCBtX2lzSW1t
dXRhYmxlIHsgZmFsc2UgfTsKICAgICAvLyBOT1RFOiBUaGlzIGFycmF5IGhhcyAoR2x5cGhQYWdl
OjpzaXplKSBlbGVtZW50cyBpZiBtX2ZvbnRGb3JBbGxHbHlwaHMgaXMgbnVsbC4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1dpZHRoSXRlcmF0b3IuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV2lkdGhJdGVyYXRvci5jcHAKaW5kZXgg
MWEwNzMxYjI3NWUzN2UxZjA3MmQ4MzVmM2E1YWRkM2NmMGE0ZjE0ZC4uZmNmNjM0ZDZlZGU5MWFi
YWE0MmJmMmJlZjlhZTM2M2M1NDExNjAzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvV2lkdGhJdGVyYXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvV2lkdGhJdGVyYXRvci5jcHAKQEAgLTE5MSw3ICsxOTEsNyBAQCBpbmxp
bmUgdW5zaWduZWQgV2lkdGhJdGVyYXRvcjo6YWR2YW5jZUludGVybmFsKFRleHRJdGVyYXRvciYg
dGV4dEl0ZXJhdG9yLCBHbHlwaAogICAgICAgICBpZiAoY2hhcmFjdGVyID09ICdcdCcgJiYgbV9y
dW4uYWxsb3dUYWJzKCkpCiAgICAgICAgICAgICB3aWR0aCA9IG1fZm9udC0+dGFiV2lkdGgoKmZv
bnQsIG1fcnVuLnRhYlNpemUoKSwgbV9ydW4ueFBvcygpICsgbV9ydW5XaWR0aFNvRmFyICsgd2lk
dGhTaW5jZUxhc3RSb3VuZGluZyk7CiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgd2lkdGgg
PSBnbHlwaERhdGEud2lkdGg7CisgICAgICAgICAgICB3aWR0aCA9IGZvbnQtPndpZHRoRm9yR2x5
cGgoZ2x5cGgpOwogCiAgICAgICAgICAgICAvLyBTVkcgdXNlcyBob3Jpem9udGFsR2x5cGhTdHJl
dGNoKCksIHdoZW4gdGV4dExlbmd0aCBpcyB1c2VkIHRvIHN0cmV0Y2gvc3F1ZWV6ZSB0ZXh0Lgog
ICAgICAgICAgICAgd2lkdGggKj0gbV9ydW4uaG9yaXpvbnRhbEdseXBoU3RyZXRjaCgpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0NvbXBsZXhUZXh0
Q29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvQ29t
cGxleFRleHRDb250cm9sbGVyLmNwcAppbmRleCA3ZWQ0Y2VhYWMxNDNmOTQxOThiMDNiNWMwNTAw
NzRlMmMzMWQ4MDdlLi5kM2E4MTEzYzJjMjRlYjViZDM5NzFjZTYxN2Y1MTg4MzA0MDE4MGUwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvQ29tcGxleFRl
eHRDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9t
YWMvQ29tcGxleFRleHRDb250cm9sbGVyLmNwcApAQCAtNjM4LDcgKzYzOCw3IEBAIHZvaWQgQ29t
cGxleFRleHRDb250cm9sbGVyOjphZGp1c3RHbHlwaHNBbmRBZHZhbmNlcygpCiAgICAgICAgICAg
ICBDR1NpemUgYWR2YW5jZSA9IHRyZWF0QXNTcGFjZSA/IENHU2l6ZU1ha2Uoc3BhY2VXaWR0aCwg
YWR2YW5jZXNbaV0uaGVpZ2h0KSA6IGFkdmFuY2VzW2ldOwogI2lmIFBMQVRGT1JNKElPUykKICAg
ICAgICAgICAgIGlmIChpc0Vtb2ppICYmIGFkdmFuY2Uud2lkdGgpCi0gICAgICAgICAgICAgICAg
YWR2YW5jZS53aWR0aCA9IGZvbnQuY29tcHV0ZVdpZHRoRm9yR2x5cGgoZ2x5cGgpOworICAgICAg
ICAgICAgICAgIGFkdmFuY2Uud2lkdGggPSBmb250LndpZHRoRm9yR2x5cGgoZ2x5cGgpOwogI2Vu
ZGlmCiAKICAgICAgICAgICAgIGlmIChjaCA9PSAnXHQnICYmIG1fcnVuLmFsbG93VGFicygpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0NvbXBsZXhU
ZXh0Q29udHJvbGxlckNvcmVUZXh0Lm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvbWFjL0NvbXBsZXhUZXh0Q29udHJvbGxlckNvcmVUZXh0Lm1tCmluZGV4IDM3NDg0ZDk2MjA0
NzgzOTM0MmYyY2E4ZmUzZmE3ZDEyZDRmMTAyYzAuLjNmOTcxMzFkOTU5M2EwMDJkOTVmYmNiZWNi
NmExYzQ0MmI0YzhlNTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL21hYy9Db21wbGV4VGV4dENvbnRyb2xsZXJDb3JlVGV4dC5tbQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvQ29tcGxleFRleHRDb250cm9sbGVyQ29yZVRleHQu
bW0KQEAgLTE2OCw3ICsxNjgsNyBAQCBDb21wbGV4VGV4dENvbnRyb2xsZXI6OkNvbXBsZXhUZXh0
UnVuOjpDb21wbGV4VGV4dFJ1bihjb25zdCBGb250JiBmb250LCBjb25zdCBVQwogICAgIC8vIFN5
bnRoZXNpemUgYSBydW4gb2YgbWlzc2luZyBnbHlwaHMuCiAgICAgbV9nbHlwaHNWZWN0b3IuZmls
bCgwLCBtX2dseXBoQ291bnQpOwogICAgIG1fZ2x5cGhzID0gbV9nbHlwaHNWZWN0b3IuZGF0YSgp
OwotICAgIG1fYWR2YW5jZXNWZWN0b3IuZmlsbChDR1NpemVNYWtlKG1fZm9udC5nbHlwaFplcm9X
aWR0aCgpLCAwKSwgbV9nbHlwaENvdW50KTsKKyAgICBtX2FkdmFuY2VzVmVjdG9yLmZpbGwoQ0dT
aXplTWFrZShtX2ZvbnQud2lkdGhGb3JHbHlwaCgwKSwgMCksIG1fZ2x5cGhDb3VudCk7CiAgICAg
bV9hZHZhbmNlcyA9IG1fYWR2YW5jZXNWZWN0b3IuZGF0YSgpOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvbWF0aG1sL1JlbmRlck1hdGhNTE9wZXJhdG9yLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MT3BlcmF0b3IuY3Bw
CmluZGV4IDdkOTk1NDFhNmFkZmY1NzUxN2NjYzIxYTM1NjE4ODcyNWQyOGQ4ZDYuLjkzOGY2YmM4
ZTBkMGY1OWM0NzMyYzk5MzFjODU4MjMyMWNlY2U3ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MT3BlcmF0b3IuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9tYXRobWwvUmVuZGVyTWF0aE1MT3BlcmF0b3IuY3BwCkBAIC0x
MzQzLDEwICsxMzQzLDcgQEAgZmxvYXQgUmVuZGVyTWF0aE1MT3BlcmF0b3I6OmhlaWdodEZvckds
eXBoKGNvbnN0IEdseXBoRGF0YSYgZGF0YSkgY29uc3QKIAogZmxvYXQgUmVuZGVyTWF0aE1MT3Bl
cmF0b3I6OmFkdmFuY2VGb3JHbHlwaChjb25zdCBHbHlwaERhdGEmIGRhdGEpIGNvbnN0CiB7Ci0g
ICAgLy8gRklYTUU6IE1hdGhNTCBjb2RlIHN5bnRoZXNpemVzIGJhZCBHbHlwaERhdGFzLgotICAg
IGlmICghZGF0YS5mb250KQotICAgICAgICByZXR1cm4gMDsKLSAgICByZXR1cm4gZGF0YS53aWR0
aCA/IGRhdGEud2lkdGggOiBkYXRhLmZvbnQtPmNvbXB1dGVXaWR0aEZvckdseXBoKGRhdGEuZ2x5
cGgpOworICAgIHJldHVybiBkYXRhLmZvbnQgJiYgZGF0YS5nbHlwaCA/IGRhdGEuZm9udC0+d2lk
dGhGb3JHbHlwaChkYXRhLmdseXBoKSA6IDA7CiB9CiAKIHZvaWQgUmVuZGVyTWF0aE1MT3BlcmF0
b3I6OmNvbXB1dGVQcmVmZXJyZWRMb2dpY2FsV2lkdGhzKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHVGV4dFJ1blJlbmRlcmluZ0NvbnRleHQuY3BwIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdUZXh0UnVuUmVuZGVyaW5nQ29udGV4dC5jcHAK
aW5kZXggNGM1ZGZhNjk5Zjk1M2NjNzFkMjY4ZGM4MGUyNzk4MjhjMTM1N2Q3Yi4uZGQzZjI4NTU3
ZTA2MjczODZkMDVjYmYzZWMwZjZmOTdmNTU2N2U1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N2Zy9TVkdUZXh0UnVuUmVuZGVyaW5nQ29udGV4dC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdUZXh0UnVuUmVuZGVyaW5nQ29udGV4dC5jcHAK
QEAgLTI5OCw4ICsyOTgsNyBAQCBzdGF0aWMgR2x5cGhEYXRhIG1pc3NpbmdHbHlwaEZvckZvbnQo
Y29uc3QgRm9udENhc2NhZGUmIGZvbnQpCiAgICAgU1ZHRm9udEVsZW1lbnQqIGZvbnRFbGVtZW50
OwogICAgIFNWR0ZvbnRGYWNlRWxlbWVudCogZm9udEZhY2VFbGVtZW50OwogICAgIHN2Z0ZvbnRB
bmRGb250RmFjZUVsZW1lbnRGb3JGb250RGF0YSgmcHJpbWFyeUZvbnQsIGZvbnRGYWNlRWxlbWVu
dCwgZm9udEVsZW1lbnQpOwotICAgIGF1dG8gbWlzc2luZ0dseXBoID0gZm9udEVsZW1lbnQtPm1p
c3NpbmdHbHlwaCgpOwotICAgIHJldHVybiB7IG1pc3NpbmdHbHlwaCwgcHJpbWFyeUZvbnQuY29t
cHV0ZVdpZHRoRm9yR2x5cGgobWlzc2luZ0dseXBoKSwgJnByaW1hcnlGb250IH07CisgICAgcmV0
dXJuIEdseXBoRGF0YShmb250RWxlbWVudC0+bWlzc2luZ0dseXBoKCksICZwcmltYXJ5Rm9udCk7
CiB9CiAKIEdseXBoRGF0YSBTVkdUZXh0UnVuUmVuZGVyaW5nQ29udGV4dDo6Z2x5cGhEYXRhRm9y
Q2hhcmFjdGVyKGNvbnN0IEZvbnRDYXNjYWRlJiBmb250LCBXaWR0aEl0ZXJhdG9yJiBpdGVyYXRv
ciwgVUNoYXIzMiBjaGFyYWN0ZXIsIGJvb2wgbWlycm9yLCBpbnQgY3VycmVudENoYXJhY3Rlciwg
dW5zaWduZWQmIGFkdmFuY2VMZW5ndGgsIFN0cmluZyYgbm9ybWFsaXplZFNwYWNlc1N0cmluZ0Nh
Y2hlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnREYXRhLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RGF0YS5jcHAKaW5kZXggOTIxYjBlZTRjZjhhMWY4MmIz
NDYwMmQ4MDBmZjExZTBkZTFiNDZlMS4uNTI4OTQwMzdiMjQ5YWQ5NWNiZmJjNjE4NGRiZDg5NjBi
MGNiZDcxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnREYXRhLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRm9udERhdGEuY3BwCkBAIC03OSw3ICs3OSw3IEBA
IHZvaWQgU1ZHRm9udERhdGE6OmluaXRpYWxpemVGb250KEZvbnQqIGZvbnQsIGZsb2F0IGZvbnRT
aXplKQogICAgIGlmICgheEhlaWdodCAmJiBnbHlwaFBhZ2VaZXJvKSB7CiAgICAgICAgIC8vIEZh
bGxiYWNrIGlmIHhfaGVpZ2h0QXR0ciBpcyBub3Qgc3BlY2lmaWVkIGZvciB0aGUgZm9udCBlbGVt
ZW50LgogICAgICAgICBHbHlwaCBsZXR0ZXJYR2x5cGggPSBnbHlwaFBhZ2VaZXJvLT5nbHlwaERh
dGFGb3JDaGFyYWN0ZXIoJ3gnKS5nbHlwaDsKLSAgICAgICAgeEhlaWdodCA9IGxldHRlclhHbHlw
aCA/IGZvbnQtPmNvbXB1dGVXaWR0aEZvckdseXBoKGxldHRlclhHbHlwaCkgOiAyICogYXNjZW50
IC8gMzsKKyAgICAgICAgeEhlaWdodCA9IGxldHRlclhHbHlwaCA/IGZvbnQtPndpZHRoRm9yR2x5
cGgobGV0dGVyWEdseXBoKSA6IDIgKiBhc2NlbnQgLyAzOwogICAgIH0KIAogICAgIEZvbnRNZXRy
aWNzJiBmb250TWV0cmljcyA9IGZvbnQtPmZvbnRNZXRyaWNzKCk7CkBAIC05OSwxNyArOTksMTcg
QEAgdm9pZCBTVkdGb250RGF0YTo6aW5pdGlhbGl6ZUZvbnQoRm9udCogZm9udCwgZmxvYXQgZm9u
dFNpemUpCiAgICAgfQogCiAgICAgLy8gQ2FsY3VsYXRlIHNwYWNlIHdpZHRoLgotICAgIGF1dG8g
c3BhY2VHbHlwaERhdGEgPSBnbHlwaFBhZ2VaZXJvLT5nbHlwaERhdGFGb3JDaGFyYWN0ZXIoJyAn
KTsKLSAgICBmb250LT5zZXRTcGFjZUdseXBoKHNwYWNlR2x5cGhEYXRhLmdseXBoKTsKLSAgICBm
b250LT5zZXRTcGFjZVdpZHRocyhzcGFjZUdseXBoRGF0YS53aWR0aCk7CisgICAgR2x5cGggc3Bh
Y2VHbHlwaCA9IGdseXBoUGFnZVplcm8tPmdseXBoRGF0YUZvckNoYXJhY3RlcignICcpLmdseXBo
OworICAgIGZvbnQtPnNldFNwYWNlR2x5cGgoc3BhY2VHbHlwaCk7CisgICAgZm9udC0+c2V0U3Bh
Y2VXaWR0aHMoZm9udC0+d2lkdGhGb3JHbHlwaChzcGFjZUdseXBoKSk7CiAKICAgICAvLyBFc3Rp
bWF0ZSBhdmVyYWdlIGNoYXJhY3RlciB3aWR0aC4KLSAgICBhdXRvIG51bWVyYWxaZXJvR2x5cGhE
YXRhID0gZ2x5cGhQYWdlWmVyby0+Z2x5cGhEYXRhRm9yQ2hhcmFjdGVyKCcwJyk7Ci0gICAgZm9u
dC0+c2V0QXZnQ2hhcldpZHRoKG51bWVyYWxaZXJvR2x5cGhEYXRhLmdseXBoID8gbnVtZXJhbFpl
cm9HbHlwaERhdGEud2lkdGggOiBmb250LT5zcGFjZVdpZHRoKCkpOworICAgIEdseXBoIG51bWVy
YWxaZXJvR2x5cGggPSBnbHlwaFBhZ2VaZXJvLT5nbHlwaERhdGFGb3JDaGFyYWN0ZXIoJzAnKS5n
bHlwaDsKKyAgICBmb250LT5zZXRBdmdDaGFyV2lkdGgobnVtZXJhbFplcm9HbHlwaCA/IGZvbnQt
PndpZHRoRm9yR2x5cGgobnVtZXJhbFplcm9HbHlwaCkgOiBmb250LT5zcGFjZVdpZHRoKCkpOwog
CiAgICAgLy8gRXN0aW1hdGUgbWF4aW11bSBjaGFyYWN0ZXIgd2lkdGguCi0gICAgYXV0byBsZXR0
ZXJXR2x5cGhEYXRhID0gZ2x5cGhQYWdlWmVyby0+Z2x5cGhEYXRhRm9yQ2hhcmFjdGVyKCdXJyk7
Ci0gICAgZm9udC0+c2V0TWF4Q2hhcldpZHRoKGxldHRlcldHbHlwaERhdGEuZ2x5cGggPyBsZXR0
ZXJXR2x5cGhEYXRhLndpZHRoIDogYXNjZW50KTsKKyAgICBHbHlwaCBsZXR0ZXJXR2x5cGggPSBn
bHlwaFBhZ2VaZXJvLT5nbHlwaERhdGFGb3JDaGFyYWN0ZXIoJ1cnKS5nbHlwaDsKKyAgICBmb250
LT5zZXRNYXhDaGFyV2lkdGgobGV0dGVyV0dseXBoID8gZm9udC0+d2lkdGhGb3JHbHlwaChsZXR0
ZXJXR2x5cGgpIDogYXNjZW50KTsKIH0KIAogZmxvYXQgU1ZHRm9udERhdGE6OndpZHRoRm9yU1ZH
R2x5cGgoR2x5cGggZ2x5cGgsIGZsb2F0IGZvbnRTaXplKSBjb25zdApAQCAtMTc3LDcgKzE3Nyw2
IEBAIGJvb2wgU1ZHRm9udERhdGE6OmFwcGx5U1ZHR2x5cGhTZWxlY3Rpb24oV2lkdGhJdGVyYXRv
ciYgaXRlcmF0b3IsIEdseXBoRGF0YSYgZ2x5CiAgICAgICAgICAgICBTVkdHbHlwaCYgc3ZnR2x5
cGggPSBnbHlwaHNbMF07CiAgICAgICAgICAgICBpdGVyYXRvci5zZXRMYXN0R2x5cGhOYW1lKHN2
Z0dseXBoLmdseXBoTmFtZSk7CiAgICAgICAgICAgICBnbHlwaERhdGEuZ2x5cGggPSBzdmdHbHlw
aC50YWJsZUVudHJ5OwotICAgICAgICAgICAgZ2x5cGhEYXRhLndpZHRoID0gZ2x5cGhEYXRhLmZv
bnQtPmNvbXB1dGVXaWR0aEZvckdseXBoKGdseXBoRGF0YS5nbHlwaCk7CiAgICAgICAgICAgICBh
ZHZhbmNlTGVuZ3RoID0gc3ZnR2x5cGgudW5pY29kZVN0cmluZ0xlbmd0aDsKICAgICAgICAgICAg
IHJldHVybiB0cnVlOwogICAgICAgICB9CkBAIC0yMDEsNyArMjAwLDYgQEAgYm9vbCBTVkdGb250
RGF0YTo6YXBwbHlTVkdHbHlwaFNlbGVjdGlvbihXaWR0aEl0ZXJhdG9yJiBpdGVyYXRvciwgR2x5
cGhEYXRhJiBnbHkKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICBpdGVyYXRvci5zZXRM
YXN0R2x5cGhOYW1lKHN2Z0dseXBoLmdseXBoTmFtZSk7CiAgICAgICAgIGdseXBoRGF0YS5nbHlw
aCA9IHN2Z0dseXBoLnRhYmxlRW50cnk7Ci0gICAgICAgIGdseXBoRGF0YS53aWR0aCA9IGdseXBo
RGF0YS5mb250LT5jb21wdXRlV2lkdGhGb3JHbHlwaChnbHlwaERhdGEuZ2x5cGgpOwogICAgICAg
ICBhZHZhbmNlTGVuZ3RoID0gc3ZnR2x5cGgudW5pY29kZVN0cmluZ0xlbmd0aDsKICAgICAgICAg
cmV0dXJuIHRydWU7CiAgICAgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>