<?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>50474</bug_id>
          
          <creation_ts>2010-12-03 12:47:59 -0800</creation_ts>
          <short_desc>REGRESSION(r73284): broke chromium webkit builds (Requested by victorw on #webkit).</short_desc>
          <delta_ts>2010-12-03 12:55:03 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</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>50464</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="WebKit Review Bot">webkit.review.bot</assigned_to>
          <cc>simon.fraser</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>316971</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-12-03 12:47:59 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/73284 broke the build:
broke chromium webkit builds (Requested by victorw on #webkit).

This is an automatic bug report generated by the sheriff-bot. 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 case pain.

&quot;Only you can prevent forest fires.&quot; -- Smokey the Bear</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>316974</commentid>
    <comment_count>1</comment_count>
      <attachid>75528</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-12-03 12:48:23 -0800</bug_when>
    <thetext>Created attachment 75528
ROLLOUT of r73284

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 --ignore-builders

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>316979</commentid>
    <comment_count>2</comment_count>
      <attachid>75528</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-12-03 12:54:54 -0800</bug_when>
    <thetext>Comment on attachment 75528
ROLLOUT of r73284

Build was fixed.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>75528</attachid>
            <date>2010-12-03 12:48:23 -0800</date>
            <delta_ts>2010-12-03 12:54:54 -0800</delta_ts>
            <desc>ROLLOUT of r73284</desc>
            <filename>bug-50474-20101203204817.patch</filename>
            <type>text/plain</type>
            <size>35763</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
OTY4OWZkYWVhOTc5OWNhMDEzNTY1OGY0OTQ3YmFlZWY0NzEwNzUzMS4uODBlMGI2YTgzOGVhNjYx
Y2NiYjI1NWE5ZGUxY2M5Y2Y2YjhmN2Q1MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw2OCBAQAorMjAxMC0xMi0wMyAgU2hl
cmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CisKKyAgICAgICAgVW5yZXZp
ZXdlZCwgcm9sbGluZyBvdXQgcjczMjg0LgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3Jn
L2NoYW5nZXNldC83MzI4NAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTA0NzQKKworICAgICAgICBicm9rZSBjaHJvbWl1bSB3ZWJraXQgYnVpbGRzIChS
ZXF1ZXN0ZWQgYnkgdmljdG9ydyBvbgorICAgICAgICAjd2Via2l0KS4KKworICAgICAgICAqIGh0
bWwvY2FudmFzL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ6OmRyYXdUZXh0SW50ZXJuYWwpOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpHcmFwaGljc0NvbnRleHQ6OnRleHREcmF3aW5nTW9kZSk6CisgICAgICAgIChXZWJDb3JlOjpH
cmFwaGljc0NvbnRleHQ6OnNldFRleHREcmF3aW5nTW9kZSk6CisgICAgICAgIChXZWJDb3JlOjpH
cmFwaGljc0NvbnRleHQ6OnNldFBsYXRmb3JtVGV4dERyYXdpbmdNb2RlKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9HcmFwaGljc0NvbnRleHRQcml2YXRlLmg6CisgICAgICAgIChXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHRTdGF0ZTo6R3JhcGhpY3NDb250ZXh0U3RhdGUpOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2NhaXJvL0ZvbnRDYWlyby5jcHA6CisgICAgICAgIChXZWJDb3JlOjpkcmF3
R2x5cGhzU2hhZG93KToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmRyYXdHbHlwaHMpOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NnL0dyYXBoaWNzQ29udGV4dENHLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDo6c2V0UGxhdGZvcm1UZXh0RHJhd2luZ01vZGUp
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0ZvbnRMaW51eC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpGb250OjpkcmF3R2x5cGhzKToKKyAgICAgICAgKFdlYkNvcmU6OkZv
bnQ6OmRyYXdDb21wbGV4VGV4dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL0Zv
bnRHdGsuY3BwOgorICAgICAgICAoV2ViQ29yZTo6ZHJhd0dseXBoc1NoYWRvdyk6CisgICAgICAg
IChXZWJDb3JlOjpGb250OjpkcmF3Q29tcGxleFRleHQpOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL21hYy9Gb250TWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6Rm9udDo6ZHJhd0dseXBo
cyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbnZnL1BhaW50ZXJPcGVuVkcuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UGxhdGZvcm1QYWludGVyU3RhdGU6OlBsYXRmb3JtUGFpbnRl
clN0YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlBhaW50ZXJPcGVuVkc6OnRleHREcmF3aW5nTW9k
ZSk6CisgICAgICAgIChXZWJDb3JlOjpQYWludGVyT3BlblZHOjpzZXRUZXh0RHJhd2luZ01vZGUp
OgorICAgICAgICAoV2ViQ29yZTo6UGFpbnRlck9wZW5WRzo6ZHJhd1RleHQpOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL3F0L0ZvbnRRdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpkcmF3
VGV4dENvbW1vbik6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvc2tpYS9QbGF0Zm9ybUNv
bnRleHRTa2lhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtQ29udGV4dFNraWE6OlN0
YXRlOjpTdGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybUNvbnRleHRTa2lhOjpnZXRU
ZXh0RHJhd2luZ01vZGUpOgorICAgICAgICAoV2ViQ29yZTo6UGxhdGZvcm1Db250ZXh0U2tpYTo6
c2V0VGV4dERyYXdpbmdNb2RlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9za2lhL1Nr
aWFGb250V2luLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OndpbmRvd3NDYW5IYW5kbGVUZXh0RHJh
d2luZyk6CisgICAgICAgIChXZWJDb3JlOjpwYWludFNraWFUZXh0KToKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5oOgorICAgICAgICAoV2ViQ29yZTo6
VGV4dHVyZU1hcHBlcjo6c2V0VGV4dERyYXdpbmdNb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OlRl
eHR1cmVNYXBwZXI6OnRleHREcmF3aW5nTW9kZSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJl
TWFwcGVyOjpUZXh0dXJlTWFwcGVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy93aW4v
Rm9udENHV2luLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmRyYXdHRElHbHlwaHMpOgorICAgICAg
ICAoV2ViQ29yZTo6Rm9udDo6ZHJhd0dseXBocyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3Mvd2luY2UvR3JhcGhpY3NDb250ZXh0V2luQ0UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3Jh
cGhpY3NDb250ZXh0OjpkcmF3VGV4dCk6CisgICAgICAgICogcmVuZGVyaW5nL0lubGluZVRleHRC
b3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6dXBkYXRlR3JhcGhpY3NDb250ZXh0KToKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyU1ZHUmVzb3VyY2VHcmFkaWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJTVkdSZXNvdXJjZUdyYWRpZW50OjphcHBseVJlc291cmNlKToKKyAgICAg
ICAgKiByZW5kZXJpbmcvUmVuZGVyU1ZHUmVzb3VyY2VQYXR0ZXJuLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlclNWR1Jlc291cmNlUGF0dGVybjo6YXBwbHlSZXNvdXJjZSk6CisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlclNWR1Jlc291cmNlU29saWRDb2xvci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJTVkdSZXNvdXJjZVNvbGlkQ29sb3I6OmFwcGx5UmVzb3VyY2UpOgorICAg
ICAgICAqIHN2Zy9TVkdGb250LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmRyYXdUZXh0
VXNpbmdTVkdGb250KToKKwogMjAxMC0xMi0wMyAgSmlhIFB1ICA8anB1QGFwcGxlLmNvbT4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRt
bC9jYW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmNwcCBiL1dlYkNvcmUvaHRtbC9jYW52
YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELmNwcAppbmRleCA0NWI5YzU1NzlhMDA2M2I3NjJm
OWZhMDBmYjk0YzJhMmIwZTRkZmRlLi5lYjU1MmM2MmY4YWQ0ZWEwMmQ0NjdiYjViYzNjM2M1NGI1
ZmI4NmQyIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvY2FudmFzL0NhbnZhc1JlbmRlcmluZ0Nv
bnRleHQyRC5jcHAKKysrIGIvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250
ZXh0MkQuY3BwCkBAIC0xODMwLDcgKzE4MzAsNyBAQCB2b2lkIENhbnZhc1JlbmRlcmluZ0NvbnRl
eHQyRDo6ZHJhd1RleHRJbnRlcm5hbChjb25zdCBTdHJpbmcmIHRleHQsIGZsb2F0IHgsIGZsbwog
ICAgICAgICAgICAgbWFza0ltYWdlQ29udGV4dC0+c2V0U3Ryb2tlVGhpY2tuZXNzKGMtPnN0cm9r
ZVRoaWNrbmVzcygpKTsKICAgICAgICAgfQogCi0gICAgICAgIG1hc2tJbWFnZUNvbnRleHQtPnNl
dFRleHREcmF3aW5nTW9kZShmaWxsID8gVGV4dE1vZGVGaWxsIDogVGV4dE1vZGVTdHJva2UpOwor
ICAgICAgICBtYXNrSW1hZ2VDb250ZXh0LT5zZXRUZXh0RHJhd2luZ01vZGUoZmlsbCA/IGNUZXh0
RmlsbCA6IGNUZXh0U3Ryb2tlKTsKICAgICAgICAgbWFza0ltYWdlQ29udGV4dC0+dHJhbnNsYXRl
KC1tYXNrUmVjdC54KCksIC1tYXNrUmVjdC55KCkpOwogCiAgICAgICAgIG1hc2tJbWFnZUNvbnRl
eHQtPmRyYXdCaWRpVGV4dChmb250LCB0ZXh0UnVuLCBsb2NhdGlvbik7CkBAIC0xODQ1LDcgKzE4
NDUsNyBAQCB2b2lkIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRDo6ZHJhd1RleHRJbnRlcm5hbChj
b25zdCBTdHJpbmcmIHRleHQsIGZsb2F0IHgsIGZsbwogICAgIH0KICNlbmRpZgogCi0gICAgYy0+
c2V0VGV4dERyYXdpbmdNb2RlKGZpbGwgPyBUZXh0TW9kZUZpbGwgOiBUZXh0TW9kZVN0cm9rZSk7
CisgICAgYy0+c2V0VGV4dERyYXdpbmdNb2RlKGZpbGwgPyBjVGV4dEZpbGwgOiBjVGV4dFN0cm9r
ZSk7CiAKICNpZiBQTEFURk9STShRVCkKICAgICAvLyBXZSBhbHdheXMgdXNlIGNvbXBsZXggdGV4
dCBzaGFwaW5nIHNpbmNlIGl0IGNhbid0IGJlIHR1cm5lZCBvZmYgZm9yIFFQYWludGVyUGF0aDo6
YWRkVGV4dCgpLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGlj
c0NvbnRleHQuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQu
Y3BwCmluZGV4IDJlZGNjNmQwMjA1ZTgyMzk5YjAzNTEwN2FlY2NiYTRjYjEyZmZkOGEuLmY1ZTli
MTRmY2JiMmI1ZGQ0NWMyYzRjMjgxMmQ4ZjgyZGFhZTk2ZTMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0LmNwcAorKysgYi9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5jcHAKQEAgLTUyNiwxMiArNTI2LDEyIEBAIHZv
aWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwVG9JbWFnZUJ1ZmZlcihJbWFnZUJ1ZmZlciogYnVmZmVy
LCBjb25zdCBGbG9hdFJlY3QmIHJlCiAgICAgYnVmZmVyLT5jbGlwKHRoaXMsIHJlY3QpOwogfQog
Ci1UZXh0RHJhd2luZ01vZGVGbGFncyBHcmFwaGljc0NvbnRleHQ6OnRleHREcmF3aW5nTW9kZSgp
IGNvbnN0CitpbnQgR3JhcGhpY3NDb250ZXh0Ojp0ZXh0RHJhd2luZ01vZGUoKQogewogICAgIHJl
dHVybiBtX2NvbW1vbi0+c3RhdGUudGV4dERyYXdpbmdNb2RlOwogfQogCi12b2lkIEdyYXBoaWNz
Q29udGV4dDo6c2V0VGV4dERyYXdpbmdNb2RlKFRleHREcmF3aW5nTW9kZUZsYWdzIG1vZGUpCit2
b2lkIEdyYXBoaWNzQ29udGV4dDo6c2V0VGV4dERyYXdpbmdNb2RlKGludCBtb2RlKQogewogICAg
IG1fY29tbW9uLT5zdGF0ZS50ZXh0RHJhd2luZ01vZGUgPSBtb2RlOwogICAgIGlmIChwYWludGlu
Z0Rpc2FibGVkKCkpCkBAIC01NjcsNyArNTY3LDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQ6OnNl
dFBsYXRmb3JtU3Ryb2tlUGF0dGVybihQYXR0ZXJuKikKICNpZiAhUExBVEZPUk0oQ0cpICYmICFQ
TEFURk9STShTS0lBKQogLy8gSW1wbGVtZW50IHRoaXMgaWYgeW91IHdhbnQgdG8gZ28gYWhlYWQg
YW5kIHB1c2ggdGhlIGRyYXdpbmcgbW9kZSBpbnRvIHlvdXIgbmF0aXZlIGNvbnRleHQKIC8vIGlt
bWVkaWF0ZWx5Lgotdm9pZCBHcmFwaGljc0NvbnRleHQ6OnNldFBsYXRmb3JtVGV4dERyYXdpbmdN
b2RlKFRleHREcmF3aW5nTW9kZUZsYWdzIG1vZGUpCit2b2lkIEdyYXBoaWNzQ29udGV4dDo6c2V0
UGxhdGZvcm1UZXh0RHJhd2luZ01vZGUoaW50IG1vZGUpCiB7CiB9CiAjZW5kaWYKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0LmggYi9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5oCmluZGV4IDU3YjQzYjgyNzhlZjQ4
ZmVjYTBkNGRmNjMwZWYzNjU4YjAyZjA1YTQuLjU1MWFkYzMzZjlkZWQ1ZWIwZTVjYzg4NmRkYTdl
YzUxNzEyYzk4NGEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhp
Y3NDb250ZXh0LmgKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRl
eHQuaApAQCAtMTMxLDEzICsxMzEsMTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIGNsYXNz
IFNoYXJlZEdyYXBoaWNzQ29udGV4dDNEOwogICAgIGNsYXNzIFRleHRSdW47CiAKLSAgICBlbnVt
IFRleHREcmF3aW5nTW9kZSB7Ci0gICAgICAgIFRleHRNb2RlSW52aXNpYmxlID0gMCwKLSAgICAg
ICAgVGV4dE1vZGVGaWxsICAgICAgPSAxIDw8IDAsCi0gICAgICAgIFRleHRNb2RlU3Ryb2tlICAg
ID0gMSA8PCAxLAotICAgICAgICBUZXh0TW9kZUNsaXAgICAgICA9IDEgPDwgMgotICAgIH07Ci0g
ICAgdHlwZWRlZiB1bnNpZ25lZCBUZXh0RHJhd2luZ01vZGVGbGFnczsKKyAgICAvLyBUaGVzZSBi
aXRzIGNhbiBiZSBPUmVkIHRvZ2V0aGVyIGZvciBhIHRvdGFsIG9mIDggcG9zc2libGUgdGV4dCBk
cmF3aW5nIG1vZGVzLgorICAgIGNvbnN0IGludCBjVGV4dEludmlzaWJsZSA9IDA7CisgICAgY29u
c3QgaW50IGNUZXh0RmlsbCA9IDE7CisgICAgY29uc3QgaW50IGNUZXh0U3Ryb2tlID0gMjsKKyAg
ICBjb25zdCBpbnQgY1RleHRDbGlwID0gNDsKIAogICAgIGVudW0gU3Ryb2tlU3R5bGUgewogICAg
ICAgICBOb1N0cm9rZSwKQEAgLTI1OCw4ICsyNTYsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgICAgIHZvaWQgY2xpcENvbnZleFBvbHlnb24oc2l6ZV90IG51bVBvaW50cywgY29uc3QgRmxv
YXRQb2ludCosIGJvb2wgYW50aWFsaWFzID0gdHJ1ZSk7CiAgICAgICAgIHZvaWQgY2xpcFRvSW1h
Z2VCdWZmZXIoSW1hZ2VCdWZmZXIqLCBjb25zdCBGbG9hdFJlY3QmKTsKIAotICAgICAgICBUZXh0
RHJhd2luZ01vZGVGbGFncyB0ZXh0RHJhd2luZ01vZGUoKSBjb25zdDsKLSAgICAgICAgdm9pZCBz
ZXRUZXh0RHJhd2luZ01vZGUoVGV4dERyYXdpbmdNb2RlRmxhZ3MpOworICAgICAgICBpbnQgdGV4
dERyYXdpbmdNb2RlKCk7CisgICAgICAgIHZvaWQgc2V0VGV4dERyYXdpbmdNb2RlKGludCk7CiAK
ICAgICAgICAgdm9pZCBkcmF3VGV4dChjb25zdCBGb250JiwgY29uc3QgVGV4dFJ1biYsIGNvbnN0
IEludFBvaW50JiwgaW50IGZyb20gPSAwLCBpbnQgdG8gPSAtMSk7CiAgICAgICAgIHZvaWQgZHJh
d0JpZGlUZXh0KGNvbnN0IEZvbnQmLCBjb25zdCBUZXh0UnVuJiwgY29uc3QgRmxvYXRQb2ludCYp
OwpAQCAtNDIzLDcgKzQyMSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBz
YXZlUGxhdGZvcm1TdGF0ZSgpOwogICAgICAgICB2b2lkIHJlc3RvcmVQbGF0Zm9ybVN0YXRlKCk7
CiAKLSAgICAgICAgdm9pZCBzZXRQbGF0Zm9ybVRleHREcmF3aW5nTW9kZShUZXh0RHJhd2luZ01v
ZGVGbGFncyk7CisgICAgICAgIHZvaWQgc2V0UGxhdGZvcm1UZXh0RHJhd2luZ01vZGUoaW50KTsK
ICAgICAgICAgdm9pZCBzZXRQbGF0Zm9ybUZvbnQoY29uc3QgRm9udCYgZm9udCk7CiAKICAgICAg
ICAgdm9pZCBzZXRQbGF0Zm9ybVN0cm9rZUNvbG9yKGNvbnN0IENvbG9yJiwgQ29sb3JTcGFjZSk7
CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dFBy
aXZhdGUuaCBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0UHJpdmF0
ZS5oCmluZGV4IDI3M2JmZmUyOGJhZWM3ZGRkMGI3YjU0ZmE3NDgwNTU2MGFmMzYwN2IuLjY5Njkz
MmU3ODU3NTI1ZWVjYzAyMDFmNDhlY2Q1ZDI1ZWNkYWYxY2EgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0UHJpdmF0ZS5oCisrKyBiL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0UHJpdmF0ZS5oCkBAIC0zNCw3ICszNCw3
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIHN0cnVjdCBHcmFwaGljc0NvbnRleHRTdGF0
ZSB7CiAgICAgICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlKCkKLSAgICAgICAgICAgIDogdGV4dERy
YXdpbmdNb2RlKFRleHRNb2RlRmlsbCkKKyAgICAgICAgICAgIDogdGV4dERyYXdpbmdNb2RlKGNU
ZXh0RmlsbCkKICAgICAgICAgICAgICwgc3Ryb2tlU3R5bGUoU29saWRTdHJva2UpCiAgICAgICAg
ICAgICAsIHN0cm9rZVRoaWNrbmVzcygwKQogICAgICAgICAgICAgLCBzdHJva2VDb2xvcihDb2xv
cjo6YmxhY2spCkBAIC01Miw3ICs1Miw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAg
ewogICAgICAgICB9CiAKLSAgICAgICAgVGV4dERyYXdpbmdNb2RlRmxhZ3MgdGV4dERyYXdpbmdN
b2RlOworICAgICAgICBpbnQgdGV4dERyYXdpbmdNb2RlOwogICAgICAgICAKICAgICAgICAgU3Ry
b2tlU3R5bGUgc3Ryb2tlU3R5bGU7CiAgICAgICAgIGZsb2F0IHN0cm9rZVRoaWNrbmVzczsKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vRm9udENhaXJvLmNwcCBi
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vRm9udENhaXJvLmNwcAppbmRleCA0YjEx
NzU2OTEyYjg2MWU2ZWFiNTA4MDkxMDZkMTU1Mzc0Yjk0YWNlLi4zZDU1YzcwMTZiNjk2Y2EwMTUx
M2ZiMDU3ZTQ3MjE3Y2ZjMDQwMzdmIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NhaXJvL0ZvbnRDYWlyby5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
YWlyby9Gb250Q2Fpcm8uY3BwCkBAIC02OSw3ICs2OSw3IEBAIHN0YXRpYyB2b2lkIGRyYXdHbHlw
aHNTaGFkb3coR3JhcGhpY3NDb250ZXh0KiBncmFwaGljc0NvbnRleHQsIGNhaXJvX3QqIGNvbnRl
eHQsCiAgICAgQ29udGV4dFNoYWRvdyogc2hhZG93ID0gZ3JhcGhpY3NDb250ZXh0LT5jb250ZXh0
U2hhZG93KCk7CiAgICAgQVNTRVJUKHNoYWRvdyk7CiAKLSAgICBpZiAoIShncmFwaGljc0NvbnRl
eHQtPnRleHREcmF3aW5nTW9kZSgpICYgVGV4dE1vZGVGaWxsKSB8fCBzaGFkb3ctPm1fdHlwZSA9
PSBDb250ZXh0U2hhZG93OjpOb1NoYWRvdykKKyAgICBpZiAoIShncmFwaGljc0NvbnRleHQtPnRl
eHREcmF3aW5nTW9kZSgpICYgY1RleHRGaWxsKSB8fCBzaGFkb3ctPm1fdHlwZSA9PSBDb250ZXh0
U2hhZG93OjpOb1NoYWRvdykKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKHNoYWRvdy0+bV90
eXBlID09IENvbnRleHRTaGFkb3c6OlNvbGlkU2hhZG93KSB7CkBAIC0xMTEsNyArMTExLDcgQEAg
dm9pZCBGb250OjpkcmF3R2x5cGhzKEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgU2lt
cGxlRm9udERhdGEqIGZvbnQsIGNvbnMKIAogICAgIGNhaXJvX3NhdmUoY3IpOwogICAgIHByZXBh
cmVDb250ZXh0Rm9yR2x5cGhEcmF3aW5nKGNyLCBmb250LCBwb2ludCk7Ci0gICAgaWYgKGNvbnRl
eHQtPnRleHREcmF3aW5nTW9kZSgpICYgVGV4dE1vZGVGaWxsKSB7CisgICAgaWYgKGNvbnRleHQt
PnRleHREcmF3aW5nTW9kZSgpICYgY1RleHRGaWxsKSB7CiAgICAgICAgIGlmIChjb250ZXh0LT5m
aWxsR3JhZGllbnQoKSkgewogICAgICAgICAgICAgY2Fpcm9fc2V0X3NvdXJjZShjciwgY29udGV4
dC0+ZmlsbEdyYWRpZW50KCktPnBsYXRmb3JtR3JhZGllbnQoKSk7CiAgICAgICAgICAgICBpZiAo
Y29udGV4dC0+Z2V0QWxwaGEoKSA8IDEuMGYpIHsKQEAgLTE0MSw3ICsxNDEsNyBAQCB2b2lkIEZv
bnQ6OmRyYXdHbHlwaHMoR3JhcGhpY3NDb250ZXh0KiBjb250ZXh0LCBjb25zdCBTaW1wbGVGb250
RGF0YSogZm9udCwgY29ucwogICAgIC8vIHR3aWNlIHRoZSBzaXplIG9mIHRoZSB3aWR0aCBvZiB0
aGUgdGV4dCB3ZSB3aWxsIG5vdCBhc2sgY2Fpcm8gdG8gc3Ryb2tlCiAgICAgLy8gdGhlIHRleHQg
YXMgZXZlbiBvbmUgc2luZ2xlIHN0cm9rZSB3b3VsZCBjb3ZlciB0aGUgZnVsbCB3ZHRoIG9mIHRo
ZSB0ZXh0LgogICAgIC8vICBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTMzNzU5LgotICAgIGlmIChjb250ZXh0LT50ZXh0RHJhd2luZ01vZGUoKSAmIFRleHRNb2Rl
U3Ryb2tlICYmIGNvbnRleHQtPnN0cm9rZVRoaWNrbmVzcygpIDwgMiAqIG9mZnNldCkgeworICAg
IGlmIChjb250ZXh0LT50ZXh0RHJhd2luZ01vZGUoKSAmIGNUZXh0U3Ryb2tlICYmIGNvbnRleHQt
PnN0cm9rZVRoaWNrbmVzcygpIDwgMiAqIG9mZnNldCkgewogICAgICAgICBpZiAoY29udGV4dC0+
c3Ryb2tlR3JhZGllbnQoKSkgewogICAgICAgICAgICAgY2Fpcm9fc2V0X3NvdXJjZShjciwgY29u
dGV4dC0+c3Ryb2tlR3JhZGllbnQoKS0+cGxhdGZvcm1HcmFkaWVudCgpKTsKICAgICAgICAgICAg
IGlmIChjb250ZXh0LT5nZXRBbHBoYSgpIDwgMS4wZikgewpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRDRy5jcHAgYi9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NnL0dyYXBoaWNzQ29udGV4dENHLmNwcAppbmRleCBjYmNiMTA0ZTExMTFh
ZTRiNWQ3YmYzNmY5NzNkMTQ5ZjgwYjBhZTViLi4yZWI5MjllMmVkYjEzNDUyNzhjOGQ0ZDM4ODUw
MmU2YTAzYzNjYTk3IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0dy
YXBoaWNzQ29udGV4dENHLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0dy
YXBoaWNzQ29udGV4dENHLmNwcApAQCAtMTExNiw3ICsxMTE2LDcgQEAgSW50ZXJwb2xhdGlvblF1
YWxpdHkgR3JhcGhpY3NDb250ZXh0OjppbWFnZUludGVycG9sYXRpb25RdWFsaXR5KCkgY29uc3QK
ICAgICByZXR1cm4gSW50ZXJwb2xhdGlvbkRlZmF1bHQ7CiB9CiAKLXZvaWQgR3JhcGhpY3NDb250
ZXh0OjpzZXRQbGF0Zm9ybVRleHREcmF3aW5nTW9kZShUZXh0RHJhd2luZ01vZGVGbGFncyBtb2Rl
KQordm9pZCBHcmFwaGljc0NvbnRleHQ6OnNldFBsYXRmb3JtVGV4dERyYXdpbmdNb2RlKGludCBt
b2RlKQogewogICAgIGlmIChwYWludGluZ0Rpc2FibGVkKCkpCiAgICAgICAgIHJldHVybjsKQEAg
LTExMjQsMjggKzExMjQsMjggQEAgdm9pZCBHcmFwaGljc0NvbnRleHQ6OnNldFBsYXRmb3JtVGV4
dERyYXdpbmdNb2RlKFRleHREcmF3aW5nTW9kZUZsYWdzIG1vZGUpCiAgICAgLy8gV293LCB3aXNo
IENHIGhhZCB1c2VkIGJpdHMgaGVyZS4KICAgICBDR0NvbnRleHRSZWYgY29udGV4dCA9IHBsYXRm
b3JtQ29udGV4dCgpOwogICAgIHN3aXRjaCAobW9kZSkgewotICAgIGNhc2UgVGV4dE1vZGVJbnZp
c2libGU6CisgICAgY2FzZSBjVGV4dEludmlzaWJsZTogLy8gSW52aXNpYmxlCiAgICAgICAgIENH
Q29udGV4dFNldFRleHREcmF3aW5nTW9kZShjb250ZXh0LCBrQ0dUZXh0SW52aXNpYmxlKTsKICAg
ICAgICAgYnJlYWs7Ci0gICAgY2FzZSBUZXh0TW9kZUZpbGw6CisgICAgY2FzZSBjVGV4dEZpbGw6
IC8vIEZpbGwKICAgICAgICAgQ0dDb250ZXh0U2V0VGV4dERyYXdpbmdNb2RlKGNvbnRleHQsIGtD
R1RleHRGaWxsKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBUZXh0TW9kZVN0cm9rZToKKyAg
ICBjYXNlIGNUZXh0U3Ryb2tlOiAvLyBTdHJva2UKICAgICAgICAgQ0dDb250ZXh0U2V0VGV4dERy
YXdpbmdNb2RlKGNvbnRleHQsIGtDR1RleHRTdHJva2UpOwogICAgICAgICBicmVhazsKLSAgICBj
YXNlIFRleHRNb2RlRmlsbCB8IFRleHRNb2RlU3Ryb2tlOgorICAgIGNhc2UgMzogLy8gRmlsbCB8
IFN0cm9rZQogICAgICAgICBDR0NvbnRleHRTZXRUZXh0RHJhd2luZ01vZGUoY29udGV4dCwga0NH
VGV4dEZpbGxTdHJva2UpOwogICAgICAgICBicmVhazsKLSAgICBjYXNlIFRleHRNb2RlQ2xpcDoK
KyAgICBjYXNlIGNUZXh0Q2xpcDogLy8gQ2xpcAogICAgICAgICBDR0NvbnRleHRTZXRUZXh0RHJh
d2luZ01vZGUoY29udGV4dCwga0NHVGV4dENsaXApOwogICAgICAgICBicmVhazsKLSAgICBjYXNl
IFRleHRNb2RlRmlsbCB8IFRleHRNb2RlQ2xpcDoKKyAgICBjYXNlIDU6IC8vIEZpbGwgfCBDbGlw
CiAgICAgICAgIENHQ29udGV4dFNldFRleHREcmF3aW5nTW9kZShjb250ZXh0LCBrQ0dUZXh0Rmls
bENsaXApOwogICAgICAgICBicmVhazsKLSAgICBjYXNlIFRleHRNb2RlU3Ryb2tlIHwgVGV4dE1v
ZGVDbGlwOgorICAgIGNhc2UgNjogLy8gU3Ryb2tlIHwgQ2xpcAogICAgICAgICBDR0NvbnRleHRT
ZXRUZXh0RHJhd2luZ01vZGUoY29udGV4dCwga0NHVGV4dFN0cm9rZUNsaXApOwogICAgICAgICBi
cmVhazsKLSAgICBjYXNlIFRleHRNb2RlRmlsbCB8IFRleHRNb2RlU3Ryb2tlIHwgVGV4dE1vZGVD
bGlwOgorICAgIGNhc2UgNzogLy8gRmlsbCB8IFN0cm9rZSB8IENsaXAKICAgICAgICAgQ0dDb250
ZXh0U2V0VGV4dERyYXdpbmdNb2RlKGNvbnRleHQsIGtDR1RleHRGaWxsU3Ryb2tlQ2xpcCk7CiAg
ICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL0ZvbnRMaW51eC5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2Nocm9taXVtL0ZvbnRMaW51eC5jcHAKaW5kZXggZDFjZmFjNmYzNzQwMWM3MjYzOWIyYTIw
ZWFmNmM5NTg3YWYyY2E3ZC4uODJiOWRmNzMxOGI3Y2NkZDAyYmFhYTZmZThiNzRmODFkMjNlYmFj
OSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Gb250TGlu
dXguY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vRm9udExpbnV4
LmNwcApAQCAtMTAzLDEwICsxMDMsMTAgQEAgdm9pZCBGb250OjpkcmF3R2x5cGhzKEdyYXBoaWNz
Q29udGV4dCogZ2MsIGNvbnN0IFNpbXBsZUZvbnREYXRhKiBmb250LAogICAgIGdjLT5wbGF0Zm9y
bUNvbnRleHQoKS0+cHJlcGFyZUZvclNvZnR3YXJlRHJhdygpOwogCiAgICAgU2tDYW52YXMqIGNh
bnZhcyA9IGdjLT5wbGF0Zm9ybUNvbnRleHQoKS0+Y2FudmFzKCk7Ci0gICAgVGV4dERyYXdpbmdN
b2RlRmxhZ3MgdGV4dE1vZGUgPSBnYy0+cGxhdGZvcm1Db250ZXh0KCktPmdldFRleHREcmF3aW5n
TW9kZSgpOworICAgIGludCB0ZXh0TW9kZSA9IGdjLT5wbGF0Zm9ybUNvbnRleHQoKS0+Z2V0VGV4
dERyYXdpbmdNb2RlKCk7CiAKICAgICAvLyBXZSBkcmF3IHRleHQgdXAgdG8gdHdvIHRpbWVzIChv
bmNlIGZvciBmaWxsLCBvbmNlIGZvciBzdHJva2UpLgotICAgIGlmICh0ZXh0TW9kZSAmIFRleHRN
b2RlRmlsbCkgeworICAgIGlmICh0ZXh0TW9kZSAmIGNUZXh0RmlsbCkgewogICAgICAgICBTa1Bh
aW50IHBhaW50OwogICAgICAgICBnYy0+cGxhdGZvcm1Db250ZXh0KCktPnNldHVwUGFpbnRGb3JG
aWxsaW5nKCZwYWludCk7CiAgICAgICAgIGZvbnQtPnBsYXRmb3JtRGF0YSgpLnNldHVwUGFpbnQo
JnBhaW50KTsKQEAgLTExNiw3ICsxMTYsNyBAQCB2b2lkIEZvbnQ6OmRyYXdHbHlwaHMoR3JhcGhp
Y3NDb250ZXh0KiBnYywgY29uc3QgU2ltcGxlRm9udERhdGEqIGZvbnQsCiAgICAgICAgIGNhbnZh
cy0+ZHJhd1Bvc1RleHQoZ2x5cGhzLCBudW1HbHlwaHMgPDwgMSwgcG9zLCBwYWludCk7CiAgICAg
fQogCi0gICAgaWYgKCh0ZXh0TW9kZSAmIFRleHRNb2RlU3Ryb2tlKQorICAgIGlmICgodGV4dE1v
ZGUgJiBjVGV4dFN0cm9rZSkKICAgICAgICAgJiYgZ2MtPnBsYXRmb3JtQ29udGV4dCgpLT5nZXRT
dHJva2VTdHlsZSgpICE9IE5vU3Ryb2tlCiAgICAgICAgICYmIGdjLT5wbGF0Zm9ybUNvbnRleHQo
KS0+Z2V0U3Ryb2tlVGhpY2tuZXNzKCkgPiAwKSB7CiAKQEAgLTEyNyw3ICsxMjcsNyBAQCB2b2lk
IEZvbnQ6OmRyYXdHbHlwaHMoR3JhcGhpY3NDb250ZXh0KiBnYywgY29uc3QgU2ltcGxlRm9udERh
dGEqIGZvbnQsCiAgICAgICAgIHBhaW50LnNldFRleHRFbmNvZGluZyhTa1BhaW50OjprR2x5cGhJ
RF9UZXh0RW5jb2RpbmcpOwogICAgICAgICBwYWludC5zZXRDb2xvcihnYy0+c3Ryb2tlQ29sb3Io
KS5yZ2IoKSk7CiAKLSAgICAgICAgaWYgKHRleHRNb2RlICYgVGV4dE1vZGVGaWxsKSB7CisgICAg
ICAgIGlmICh0ZXh0TW9kZSAmIGNUZXh0RmlsbCkgewogICAgICAgICAgICAgLy8gSWYgd2UgYWxz
byBmaWxsZWQsIHdlIGRvbid0IHdhbnQgdG8gZHJhdyBzaGFkb3dzIHR3aWNlLgogICAgICAgICAg
ICAgLy8gU2VlIGNvbW1lbnQgaW4gRm9udENocm9taXVtV2luLmNwcDo6cGFpbnRTa2lhVGV4dCgp
IGZvciBtb3JlIGRldGFpbHMuCiAgICAgICAgICAgICBTa1NhZmVVbnJlZihwYWludC5zZXRMb29w
ZXIoMCkpOwpAQCAtNjUxLDkgKzY1MSw5IEBAIHZvaWQgRm9udDo6ZHJhd0NvbXBsZXhUZXh0KEdy
YXBoaWNzQ29udGV4dCogZ2MsIGNvbnN0IFRleHRSdW4mIHJ1biwKICAgICAgICAgcmV0dXJuOwog
CiAgICAgU2tDYW52YXMqIGNhbnZhcyA9IGdjLT5wbGF0Zm9ybUNvbnRleHQoKS0+Y2FudmFzKCk7
Ci0gICAgVGV4dERyYXdpbmdNb2RlRmxhZ3MgdGV4dE1vZGUgPSBnYy0+cGxhdGZvcm1Db250ZXh0
KCktPmdldFRleHREcmF3aW5nTW9kZSgpOwotICAgIGJvb2wgZmlsbCA9IHRleHRNb2RlICYgVGV4
dE1vZGVGaWxsOwotICAgIGJvb2wgc3Ryb2tlID0gKHRleHRNb2RlICYgVGV4dE1vZGVTdHJva2Up
CisgICAgaW50IHRleHRNb2RlID0gZ2MtPnBsYXRmb3JtQ29udGV4dCgpLT5nZXRUZXh0RHJhd2lu
Z01vZGUoKTsKKyAgICBib29sIGZpbGwgPSB0ZXh0TW9kZSAmIGNUZXh0RmlsbDsKKyAgICBib29s
IHN0cm9rZSA9ICh0ZXh0TW9kZSAmIGNUZXh0U3Ryb2tlKQogICAgICAgICAgICAgICAgJiYgZ2Mt
PnBsYXRmb3JtQ29udGV4dCgpLT5nZXRTdHJva2VTdHlsZSgpICE9IE5vU3Ryb2tlCiAgICAgICAg
ICAgICAgICAmJiBnYy0+cGxhdGZvcm1Db250ZXh0KCktPmdldFN0cm9rZVRoaWNrbmVzcygpID4g
MDsKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvRm9udEd0ay5j
cHAgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9Gb250R3RrLmNwcAppbmRleCBmNmM1
ZjJhNzk0OTcyODg4NzRhMWJmNzViMTVkZWMxYTQ3NjVjZGRmLi41NGUxOGM5NmIwZWNhZmRiNGI0
YzlmZjdkMDEzMDU5NDc5NWQ0MjdiIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2d0ay9Gb250R3RrLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9G
b250R3RrLmNwcApAQCAtMjE4LDcgKzIxOCw3IEBAIHN0YXRpYyB2b2lkIGRyYXdHbHlwaHNTaGFk
b3coR3JhcGhpY3NDb250ZXh0KiBncmFwaGljc0NvbnRleHQsIGNhaXJvX3QqIGNvbnRleHQsCiAg
ICAgQ29udGV4dFNoYWRvdyogc2hhZG93ID0gZ3JhcGhpY3NDb250ZXh0LT5jb250ZXh0U2hhZG93
KCk7CiAgICAgQVNTRVJUKHNoYWRvdyk7CiAKLSAgICBpZiAoIShncmFwaGljc0NvbnRleHQtPnRl
eHREcmF3aW5nTW9kZSgpICYgVGV4dE1vZGVGaWxsKSB8fCBzaGFkb3ctPm1fdHlwZSA9PSBDb250
ZXh0U2hhZG93OjpOb1NoYWRvdykKKyAgICBpZiAoIShncmFwaGljc0NvbnRleHQtPnRleHREcmF3
aW5nTW9kZSgpICYgY1RleHRGaWxsKSB8fCBzaGFkb3ctPm1fdHlwZSA9PSBDb250ZXh0U2hhZG93
OjpOb1NoYWRvdykKICAgICAgICAgcmV0dXJuOwogCiAgICAgRmxvYXRQb2ludCB0b3RhbE9mZnNl
dChwb2ludCArIHNoYWRvdy0+bV9vZmZzZXQpOwpAQCAtMzAwLDcgKzMwMCw3IEBAIHZvaWQgRm9u
dDo6ZHJhd0NvbXBsZXhUZXh0KEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgVGV4dFJ1
biYgcnVuLCBjb25zdCBGCiAKICAgICBwYW5nb19jYWlyb19zaG93X2xheW91dF9saW5lKGNyLCBs
YXlvdXRMaW5lKTsKIAotICAgIGlmIChjb250ZXh0LT50ZXh0RHJhd2luZ01vZGUoKSAmIFRleHRN
b2RlU3Ryb2tlKSB7CisgICAgaWYgKGNvbnRleHQtPnRleHREcmF3aW5nTW9kZSgpICYgY1RleHRT
dHJva2UpIHsKICAgICAgICAgQ29sb3Igc3Ryb2tlQ29sb3IgPSBjb250ZXh0LT5zdHJva2VDb2xv
cigpOwogICAgICAgICBzdHJva2VDb2xvci5nZXRSR0JBKHJlZCwgZ3JlZW4sIGJsdWUsIGFscGhh
KTsKICAgICAgICAgY2Fpcm9fc2V0X3NvdXJjZV9yZ2JhKGNyLCByZWQsIGdyZWVuLCBibHVlLCBh
bHBoYSk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250TWFj
Lm1tIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udE1hYy5tbQppbmRleCA4ZjE1
Y2IzMDllODY1NTdmZWE2Y2ZhOGVkMjAzNzk5YTI0YTcyMTJjLi44ZGM3NDFiZjhiYjQyNzIwYTJj
Yzk2OTc3ZDc2YTZmOGIxOTJkOTEzIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL21hYy9Gb250TWFjLm1tCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0Zv
bnRNYWMubW0KQEAgLTE2MCw3ICsxNjAsNyBAQCB2b2lkIEZvbnQ6OmRyYXdHbHlwaHMoR3JhcGhp
Y3NDb250ZXh0KiBjb250ZXh0LCBjb25zdCBTaW1wbGVGb250RGF0YSogZm9udCwgY29ucwogICAg
IENvbG9yU3BhY2UgZmlsbENvbG9yU3BhY2UgPSBjb250ZXh0LT5maWxsQ29sb3JTcGFjZSgpOwog
ICAgIGNvbnRleHQtPmdldFNoYWRvdyhzaGFkb3dPZmZzZXQsIHNoYWRvd0JsdXIsIHNoYWRvd0Nv
bG9yKTsKIAotICAgIGJvb2wgaGFzU2ltcGxlU2hhZG93ID0gY29udGV4dC0+dGV4dERyYXdpbmdN
b2RlKCkgPT0gVGV4dE1vZGVGaWxsICYmIHNoYWRvd0NvbG9yLmlzVmFsaWQoKSAmJiAhc2hhZG93
Qmx1ciAmJiAhcGxhdGZvcm1EYXRhLmlzQ29sb3JCaXRtYXBGb250KCk7CisgICAgYm9vbCBoYXNT
aW1wbGVTaGFkb3cgPSBjb250ZXh0LT50ZXh0RHJhd2luZ01vZGUoKSA9PSBjVGV4dEZpbGwgJiYg
c2hhZG93Q29sb3IuaXNWYWxpZCgpICYmICFzaGFkb3dCbHVyICYmICFwbGF0Zm9ybURhdGEuaXND
b2xvckJpdG1hcEZvbnQoKTsKICAgICBpZiAoaGFzU2ltcGxlU2hhZG93KSB7CiAgICAgICAgIC8v
IFBhaW50IHNpbXBsZSBzaGFkb3dzIG91cnNlbHZlcyBpbnN0ZWFkIG9mIHJlbHlpbmcgb24gQ0cg
c2hhZG93cywgdG8gYXZvaWQgbG9zaW5nIHN1YnBpeGVsIGFudGlhbGlhc2luZy4KICAgICAgICAg
Y29udGV4dC0+Y2xlYXJTaGFkb3coKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3Mvb3BlbnZnL1BhaW50ZXJPcGVuVkcuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9vcGVudmcvUGFpbnRlck9wZW5WRy5jcHAKaW5kZXggNTQ5MzdhNDc0NDNkNDc2NDJhMGRhOTRl
YmE1YjNmZjVkZDJiYTJhMy4uNzQwOWE5NzNiNzk3YWUxODQxM2Q2ZWIxYmJhNTgzNDIzNTYwMWUw
ZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVudmcvUGFpbnRlck9w
ZW5WRy5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVudmcvUGFpbnRlck9w
ZW5WRy5jcHAKQEAgLTEyMyw3ICsxMjMsNyBAQCBzdHJ1Y3QgUGxhdGZvcm1QYWludGVyU3RhdGUg
ewogICAgIERhc2hBcnJheSBzdHJva2VEYXNoQXJyYXk7CiAgICAgZmxvYXQgc3Ryb2tlRGFzaE9m
ZnNldDsKIAotICAgIFRleHREcmF3aW5nTW9kZUZsYWdzIHRleHREcmF3aW5nTW9kZTsKKyAgICBp
bnQgdGV4dERyYXdpbmdNb2RlOwogICAgIGJvb2wgYW50aWFsaWFzaW5nRW5hYmxlZDsKIAogICAg
IFBsYXRmb3JtUGFpbnRlclN0YXRlKCkKQEAgLTE0MSw3ICsxNDEsNyBAQCBzdHJ1Y3QgUGxhdGZv
cm1QYWludGVyU3RhdGUgewogICAgICAgICAsIHN0cm9rZUxpbmVKb2luKE1pdGVySm9pbikKICAg
ICAgICAgLCBzdHJva2VNaXRlckxpbWl0KDQuMCkKICAgICAgICAgLCBzdHJva2VEYXNoT2Zmc2V0
KDAuMCkKLSAgICAgICAgLCB0ZXh0RHJhd2luZ01vZGUoVGV4dE1vZGVGaWxsKQorICAgICAgICAs
IHRleHREcmF3aW5nTW9kZShjVGV4dEZpbGwpCiAgICAgICAgICwgYW50aWFsaWFzaW5nRW5hYmxl
ZCh0cnVlKQogICAgIHsKICAgICB9CkBAIC02NTMsMTMgKzY1MywxMyBAQCB2b2lkIFBhaW50ZXJP
cGVuVkc6OnNldEZpbGxDb2xvcihjb25zdCBDb2xvciYgY29sb3IpCiAgICAgc2V0VkdTb2xpZENv
bG9yKFZHX0ZJTExfUEFUSCwgY29sb3IpOwogfQogCi1UZXh0RHJhd2luZ01vZGVGbGFncyBQYWlu
dGVyT3BlblZHOjp0ZXh0RHJhd2luZ01vZGUoKSBjb25zdAoraW50IFBhaW50ZXJPcGVuVkc6OnRl
eHREcmF3aW5nTW9kZSgpIGNvbnN0CiB7CiAgICAgQVNTRVJUKG1fc3RhdGUpOwogICAgIHJldHVy
biBtX3N0YXRlLT50ZXh0RHJhd2luZ01vZGU7CiB9CiAKLXZvaWQgUGFpbnRlck9wZW5WRzo6c2V0
VGV4dERyYXdpbmdNb2RlKFRleHREcmF3aW5nTW9kZUZsYWdzIG1vZGUpCit2b2lkIFBhaW50ZXJP
cGVuVkc6OnNldFRleHREcmF3aW5nTW9kZShpbnQgbW9kZSkKIHsKICAgICBBU1NFUlQobV9zdGF0
ZSk7CiAgICAgbV9zdGF0ZS0+dGV4dERyYXdpbmdNb2RlID0gbW9kZTsKQEAgLTExMTQsMTEgKzEx
MTQsMTEgQEAgdm9pZCBQYWludGVyT3BlblZHOjpkcmF3VGV4dChWR0ZvbnQgdmdGb250LCBWZWN0
b3I8Vkd1aW50PiYgY2hhcmFjdGVycywgVkdmbG9hdCoKIAogICAgIFZHYml0ZmllbGQgcGFpbnRN
b2RlcyA9IDA7CiAKLSAgICBpZiAobV9zdGF0ZS0+dGV4dERyYXdpbmdNb2RlICYgVGV4dE1vZGVD
bGlwKQorICAgIGlmIChtX3N0YXRlLT50ZXh0RHJhd2luZ01vZGUgJiBjVGV4dENsaXApCiAgICAg
ICAgIHJldHVybjsgLy8gdW5zdXBwb3J0ZWQgZm9yIGV2ZXJ5IHBvcnQgZXhjZXB0IENHIGF0IHRo
ZSB0aW1lIG9mIHdyaXRpbmcKLSAgICBpZiAobV9zdGF0ZS0+dGV4dERyYXdpbmdNb2RlICYgVGV4
dE1vZGVGaWxsICYmICFtX3N0YXRlLT5maWxsRGlzYWJsZWQoKSkKKyAgICBpZiAobV9zdGF0ZS0+
dGV4dERyYXdpbmdNb2RlICYgY1RleHRGaWxsICYmICFtX3N0YXRlLT5maWxsRGlzYWJsZWQoKSkK
ICAgICAgICAgcGFpbnRNb2RlcyB8PSBWR19GSUxMX1BBVEg7Ci0gICAgaWYgKG1fc3RhdGUtPnRl
eHREcmF3aW5nTW9kZSAmIFRleHRNb2RlU3Ryb2tlICYmICFtX3N0YXRlLT5zdHJva2VEaXNhYmxl
ZCgpKQorICAgIGlmIChtX3N0YXRlLT50ZXh0RHJhd2luZ01vZGUgJiBjVGV4dFN0cm9rZSAmJiAh
bV9zdGF0ZS0+c3Ryb2tlRGlzYWJsZWQoKSkKICAgICAgICAgcGFpbnRNb2RlcyB8PSBWR19TVFJP
S0VfUEFUSDsKIAogICAgIG1fc3VyZmFjZS0+bWFrZUN1cnJlbnQoKTsKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvRm9udFF0LmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvcXQvRm9udFF0LmNwcAppbmRleCAxZWUyYjI5M2EzYTNjZGIzMzhlZjEwMjUyYzUx
MDA4YjIyY2RkMzhkLi44OWRmZDAwZWY4MmE4ZDNhYzI5N2U4NTZlOTZiODExODUyNzk1MDg0IDEw
MDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0ZvbnRRdC5jcHAKKysrIGIv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9Gb250UXQuY3BwCkBAIC03OSw3ICs3OSw3IEBA
IHN0YXRpYyB2b2lkIGRyYXdUZXh0Q29tbW9uKEdyYXBoaWNzQ29udGV4dCogY3R4LCBjb25zdCBU
ZXh0UnVuJiBydW4sIGNvbnN0IEZsb2F0CiAgICAgUVBhaW50ZXIgKnAgPSBjdHgtPnBsYXRmb3Jt
Q29udGV4dCgpOwogCiAgICAgUVBlbiB0ZXh0RmlsbFBlbjsKLSAgICBpZiAoY3R4LT50ZXh0RHJh
d2luZ01vZGUoKSAmIFRleHRNb2RlRmlsbCkgeworICAgIGlmIChjdHgtPnRleHREcmF3aW5nTW9k
ZSgpICYgY1RleHRGaWxsKSB7CiAgICAgICAgIGlmIChjdHgtPmZpbGxHcmFkaWVudCgpKSB7CiAg
ICAgICAgICAgICBRQnJ1c2ggYnJ1c2goKmN0eC0+ZmlsbEdyYWRpZW50KCktPnBsYXRmb3JtR3Jh
ZGllbnQoKSk7CiAgICAgICAgICAgICBicnVzaC5zZXRUcmFuc2Zvcm0oY3R4LT5maWxsR3JhZGll
bnQoKS0+Z3JhZGllbnRTcGFjZVRyYW5zZm9ybSgpKTsKQEAgLTkyLDcgKzkyLDcgQEAgc3RhdGlj
IHZvaWQgZHJhd1RleHRDb21tb24oR3JhcGhpY3NDb250ZXh0KiBjdHgsIGNvbnN0IFRleHRSdW4m
IHJ1biwgY29uc3QgRmxvYXQKICAgICB9CiAKICAgICBRUGVuIHRleHRTdHJva2VQZW47Ci0gICAg
aWYgKGN0eC0+dGV4dERyYXdpbmdNb2RlKCkgJiBUZXh0TW9kZVN0cm9rZSkgeworICAgIGlmIChj
dHgtPnRleHREcmF3aW5nTW9kZSgpICYgY1RleHRTdHJva2UpIHsKICAgICAgICAgaWYgKGN0eC0+
c3Ryb2tlR3JhZGllbnQoKSkgewogICAgICAgICAgICAgUUJydXNoIGJydXNoKCpjdHgtPnN0cm9r
ZUdyYWRpZW50KCktPnBsYXRmb3JtR3JhZGllbnQoKSk7CiAgICAgICAgICAgICBicnVzaC5zZXRU
cmFuc2Zvcm0oY3R4LT5zdHJva2VHcmFkaWVudCgpLT5ncmFkaWVudFNwYWNlVHJhbnNmb3JtKCkp
OwpAQCAtMTc5LDE3ICsxNzksMTcgQEAgc3RhdGljIHZvaWQgZHJhd1RleHRDb21tb24oR3JhcGhp
Y3NDb250ZXh0KiBjdHgsIGNvbnN0IFRleHRSdW4mIHJ1biwgY29uc3QgRmxvYXQKICAgICBpbnQg
ZmxhZ3MgPSBydW4ucnRsKCkgPyBRdDo6VGV4dEZvcmNlUmlnaHRUb0xlZnQgOiBRdDo6VGV4dEZv
cmNlTGVmdFRvUmlnaHQ7CiAjaWYgUVRfVkVSU0lPTiA+PSBRVF9WRVJTSU9OX0NIRUNLKDQsIDcs
IDApCiAgICAgLy8gU2VlIFFXZWJQYWdlUHJpdmF0ZTo6UVdlYlBhZ2VQcml2YXRlKCkgd2hlcmUg
dGhlIGRlZmF1bHQgcGF0aCBpcyBzZXQgdG8gQ29tcGxleCBmb3IgUXQgNC42IGFuZCBlYXJsaWVy
LgotICAgIGlmICghaXNDb21wbGV4VGV4dCAmJiAhKGN0eC0+dGV4dERyYXdpbmdNb2RlKCkgJiBU
ZXh0TW9kZVN0cm9rZSkpCisgICAgaWYgKCFpc0NvbXBsZXhUZXh0ICYmICEoY3R4LT50ZXh0RHJh
d2luZ01vZGUoKSAmIGNUZXh0U3Ryb2tlKSkKICAgICAgICAgZmxhZ3MgfD0gUXQ6OlRleHRCeXBh
c3NTaGFwaW5nOwogI2VuZGlmCiAKICAgICBRUGFpbnRlclBhdGggdGV4dFN0cm9rZVBhdGg7Ci0g
ICAgaWYgKGN0eC0+dGV4dERyYXdpbmdNb2RlKCkgJiBUZXh0TW9kZVN0cm9rZSkKKyAgICBpZiAo
Y3R4LT50ZXh0RHJhd2luZ01vZGUoKSAmIGNUZXh0U3Ryb2tlKQogICAgICAgICB0ZXh0U3Ryb2tl
UGF0aC5hZGRUZXh0KHB0LCBmb250LCBzdHJpbmcpOwogCiAgICAgQ29udGV4dFNoYWRvdyogY3R4
U2hhZG93ID0gY3R4LT5jb250ZXh0U2hhZG93KCk7CiAgICAgaWYgKGN0eFNoYWRvdy0+bV90eXBl
ICE9IENvbnRleHRTaGFkb3c6Ok5vU2hhZG93KSB7Ci0gICAgICAgIGlmIChjdHgtPnRleHREcmF3
aW5nTW9kZSgpICYgVGV4dE1vZGVGaWxsKSB7CisgICAgICAgIGlmIChjdHgtPnRleHREcmF3aW5n
TW9kZSgpICYgY1RleHRGaWxsKSB7CiAgICAgICAgICAgICBpZiAoY3R4U2hhZG93LT5tX3R5cGUg
IT0gQ29udGV4dFNoYWRvdzo6Qmx1clNoYWRvdykgewogICAgICAgICAgICAgICAgIHAtPnNhdmUo
KTsKICAgICAgICAgICAgICAgICBwLT5zZXRQZW4oY3R4U2hhZG93LT5tX2NvbG9yKTsKQEAgLTIx
Miw3ICsyMTIsNyBAQCBzdGF0aWMgdm9pZCBkcmF3VGV4dENvbW1vbihHcmFwaGljc0NvbnRleHQq
IGN0eCwgY29uc3QgVGV4dFJ1biYgcnVuLCBjb25zdCBGbG9hdAogICAgICAgICAgICAgICAgICAg
ICBjdHhTaGFkb3ctPmVuZFNoYWRvd0xheWVyKHApOwogICAgICAgICAgICAgICAgIH0KICAgICAg
ICAgICAgIH0KLSAgICAgICAgfSBlbHNlIGlmIChjdHgtPnRleHREcmF3aW5nTW9kZSgpICYgVGV4
dE1vZGVTdHJva2UpIHsKKyAgICAgICAgfSBlbHNlIGlmIChjdHgtPnRleHREcmF3aW5nTW9kZSgp
ICYgY1RleHRTdHJva2UpIHsKICAgICAgICAgICAgIGlmIChjdHhTaGFkb3ctPm1fdHlwZSAhPSBD
b250ZXh0U2hhZG93OjpCbHVyU2hhZG93KSB7CiAgICAgICAgICAgICAgICAgcC0+dHJhbnNsYXRl
KGN0eFNoYWRvdy0+b2Zmc2V0KCkpOwogICAgICAgICAgICAgICAgIHAtPnN0cm9rZVBhdGgodGV4
dFN0cm9rZVBhdGgsIFFQZW4oY3R4U2hhZG93LT5tX2NvbG9yKSk7CkBAIC0yMzUsMTAgKzIzNSwx
MCBAQCBzdGF0aWMgdm9pZCBkcmF3VGV4dENvbW1vbihHcmFwaGljc0NvbnRleHQqIGN0eCwgY29u
c3QgVGV4dFJ1biYgcnVuLCBjb25zdCBGbG9hdAogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYg
KGN0eC0+dGV4dERyYXdpbmdNb2RlKCkgJiBUZXh0TW9kZVN0cm9rZSkKKyAgICBpZiAoY3R4LT50
ZXh0RHJhd2luZ01vZGUoKSAmIGNUZXh0U3Ryb2tlKQogICAgICAgICBwLT5zdHJva2VQYXRoKHRl
eHRTdHJva2VQYXRoLCB0ZXh0U3Ryb2tlUGVuKTsKIAotICAgIGlmIChjdHgtPnRleHREcmF3aW5n
TW9kZSgpICYgVGV4dE1vZGVGaWxsKSB7CisgICAgaWYgKGN0eC0+dGV4dERyYXdpbmdNb2RlKCkg
JiBjVGV4dEZpbGwpIHsKICAgICAgICAgUVBlbiBwcmV2aW91c1BlbiA9IHAtPnBlbigpOwogICAg
ICAgICBwLT5zZXRQZW4odGV4dEZpbGxQZW4pOwogICAgICAgICBwLT5kcmF3VGV4dChwdCwgc3Ry
aW5nLCBmbGFncywgcnVuLnBhZGRpbmcoKSk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3NraWEvUGxhdGZvcm1Db250ZXh0U2tpYS5jcHAgYi9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3NraWEvUGxhdGZvcm1Db250ZXh0U2tpYS5jcHAKaW5kZXggYzhmOWI4NjU3YjY2
ZDllOGViZDRjZDIxNmIyM2VkYWI2ZTc1OGVjNC4uZDYxMGMyYWEzMWFlZGYxZGQ0MWEwZjEwNzM0
NmUwNDdkNzc1ZjNhOSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9za2lh
L1BsYXRmb3JtQ29udGV4dFNraWEuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
c2tpYS9QbGF0Zm9ybUNvbnRleHRTa2lhLmNwcApAQCAtOTQsOCArOTQsOCBAQCBzdHJ1Y3QgUGxh
dGZvcm1Db250ZXh0U2tpYTo6U3RhdGUgewogICAgIFNrUGFpbnQ6OkpvaW4gbV9saW5lSm9pbjsK
ICAgICBTa0Rhc2hQYXRoRWZmZWN0KiBtX2Rhc2g7CiAKLSAgICAvLyBUZXh0LiAoU2VlIFRleHRN
b2RlRmlsbCAmIGZyaWVuZHMgaW4gR3JhcGhpY3NDb250ZXh0LmguKQotICAgIFRleHREcmF3aW5n
TW9kZUZsYWdzIG1fdGV4dERyYXdpbmdNb2RlOworICAgIC8vIFRleHQuIChTZWUgY1RleHRGaWxs
ICYgZnJpZW5kcyBpbiBHcmFwaGljc0NvbnRleHQuaC4pCisgICAgaW50IG1fdGV4dERyYXdpbmdN
b2RlOwogCiAgICAgLy8gSGVscGVyIGZ1bmN0aW9uIGZvciBhcHBseWluZyB0aGUgc3RhdGUncyBh
bHBoYSB2YWx1ZSB0byB0aGUgZ2l2ZW4gaW5wdXQKICAgICAvLyBjb2xvciB0byBwcm9kdWNlIGEg
bmV3IG91dHB1dCBjb2xvci4KQEAgLTEzNyw3ICsxMzcsNyBAQCBQbGF0Zm9ybUNvbnRleHRTa2lh
OjpTdGF0ZTo6U3RhdGUoKQogICAgICwgbV9saW5lQ2FwKFNrUGFpbnQ6OmtEZWZhdWx0X0NhcCkK
ICAgICAsIG1fbGluZUpvaW4oU2tQYWludDo6a0RlZmF1bHRfSm9pbikKICAgICAsIG1fZGFzaCgw
KQotICAgICwgbV90ZXh0RHJhd2luZ01vZGUoVGV4dE1vZGVGaWxsKQorICAgICwgbV90ZXh0RHJh
d2luZ01vZGUoY1RleHRGaWxsKQogICAgICwgbV9pbnRlcnBvbGF0aW9uUXVhbGl0eShJbnRlcnBv
bGF0aW9uSGlnaCkKICAgICAsIG1fY2FudmFzQ2xpcEFwcGxpZWQoZmFsc2UpCiB7CkBAIC01MDEs
NyArNTAxLDcgQEAgdm9pZCBQbGF0Zm9ybUNvbnRleHRTa2lhOjpzZXRTdHJva2VTaGFkZXIoU2tT
aGFkZXIqIHN0cm9rZVNoYWRlcikKICAgICB9CiB9CiAKLVRleHREcmF3aW5nTW9kZUZsYWdzIFBs
YXRmb3JtQ29udGV4dFNraWE6OmdldFRleHREcmF3aW5nTW9kZSgpIGNvbnN0CitpbnQgUGxhdGZv
cm1Db250ZXh0U2tpYTo6Z2V0VGV4dERyYXdpbmdNb2RlKCkgY29uc3QKIHsKICAgICByZXR1cm4g
bV9zdGF0ZS0+bV90ZXh0RHJhd2luZ01vZGU7CiB9CkBAIC01MjEsMTEgKzUyMSwxMSBAQCBpbnQg
UGxhdGZvcm1Db250ZXh0U2tpYTo6Z2V0Tm9ybWFsaXplZEFscGhhKCkgY29uc3QKICAgICByZXR1
cm4gYWxwaGE7CiB9CiAKLXZvaWQgUGxhdGZvcm1Db250ZXh0U2tpYTo6c2V0VGV4dERyYXdpbmdN
b2RlKFRleHREcmF3aW5nTW9kZUZsYWdzIG1vZGUpCit2b2lkIFBsYXRmb3JtQ29udGV4dFNraWE6
OnNldFRleHREcmF3aW5nTW9kZShpbnQgbW9kZSkKIHsKLSAgICAvLyBUZXh0TW9kZUNsaXAgaXMg
bmV2ZXIgdXNlZCwgc28gd2UgYXNzZXJ0IHRoYXQgaXQgaXNuJ3Qgc2V0OgorICAgIC8vIGNUZXh0
Q2xpcCBpcyBuZXZlciB1c2VkLCBzbyB3ZSBhc3NlcnQgdGhhdCBpdCBpc24ndCBzZXQ6CiAgICAg
Ly8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxODk4Ci0gICAgQVNT
RVJUKCEobW9kZSAmIFRleHRNb2RlQ2xpcCkpOworICAgIEFTU0VSVCghKG1vZGUgJiBjVGV4dENs
aXApKTsKICAgICBtX3N0YXRlLT5tX3RleHREcmF3aW5nTW9kZSA9IG1vZGU7CiB9CiAKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvc2tpYS9Ta2lhRm9udFdpbi5jcHAgYi9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3NraWEvU2tpYUZvbnRXaW4uY3BwCmluZGV4IDYyYTRk
OTY1NjIxZGRiYjgxM2Y0MWI1Y2IxZTllZWU0MjZjZWE4MzMuLjZhY2ZkMzVlNzJmNDFhMDc2M2Fm
MmUxNmI0NjFkMzVlZDg3NTc3MzQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3Mvc2tpYS9Ta2lhRm9udFdpbi5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9z
a2lhL1NraWFGb250V2luLmNwcApAQCAtMjQyLDcgKzI0Miw3IEBAIGJvb2wgd2luZG93c0Nhbkhh
bmRsZVRleHREcmF3aW5nKEdyYXBoaWNzQ29udGV4dCogY29udGV4dCkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCiAgICAgLy8gQ2hlY2sgZm9yIHN0cm9rZSBlZmZlY3RzLgotICAgIGlmIChjb250
ZXh0LT5wbGF0Zm9ybUNvbnRleHQoKS0+Z2V0VGV4dERyYXdpbmdNb2RlKCkgIT0gVGV4dE1vZGVG
aWxsKQorICAgIGlmIChjb250ZXh0LT5wbGF0Zm9ybUNvbnRleHQoKS0+Z2V0VGV4dERyYXdpbmdN
b2RlKCkgIT0gY1RleHRGaWxsKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICAvLyBDaGVj
ayBmb3IgZ3JhZGllbnRzLgpAQCAtMzA3LDcgKzMwNyw3IEBAIGJvb2wgcGFpbnRTa2lhVGV4dChH
cmFwaGljc0NvbnRleHQqIGNvbnRleHQsCiAgICAgSEdESU9CSiBvbGRGb250ID0gU2VsZWN0T2Jq
ZWN0KGRjLCBoZm9udCk7CiAKICAgICBQbGF0Zm9ybUNvbnRleHRTa2lhKiBwbGF0Zm9ybUNvbnRl
eHQgPSBjb250ZXh0LT5wbGF0Zm9ybUNvbnRleHQoKTsKLSAgICBUZXh0RHJhd2luZ01vZGVGbGFn
cyB0ZXh0TW9kZSA9IHBsYXRmb3JtQ29udGV4dC0+Z2V0VGV4dERyYXdpbmdNb2RlKCk7CisgICAg
aW50IHRleHRNb2RlID0gcGxhdGZvcm1Db250ZXh0LT5nZXRUZXh0RHJhd2luZ01vZGUoKTsKIAog
ICAgIC8vIEZpbGxpbmcgKGlmIG5lY2Vzc2FyeSkuIFRoaXMgaXMgdGhlIGNvbW1vbiBjYXNlLgog
ICAgIFNrUGFpbnQgcGFpbnQ7CkBAIC0zMTUsNyArMzE1LDcgQEAgYm9vbCBwYWludFNraWFUZXh0
KEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwKICAgICBwYWludC5zZXRGbGFncyhTa1BhaW50Ojpr
QW50aUFsaWFzX0ZsYWcpOwogICAgIGJvb2wgZGlkRmlsbCA9IGZhbHNlOwogCi0gICAgaWYgKCh0
ZXh0TW9kZSAmIFRleHRNb2RlRmlsbCkgJiYgU2tDb2xvckdldEEocGFpbnQuZ2V0Q29sb3IoKSkp
IHsKKyAgICBpZiAoKHRleHRNb2RlICYgY1RleHRGaWxsKSAmJiBTa0NvbG9yR2V0QShwYWludC5n
ZXRDb2xvcigpKSkgewogICAgICAgICBpZiAoIXNraWFEcmF3VGV4dChoZm9udCwgZGMsIHBsYXRm
b3JtQ29udGV4dC0+Y2FudmFzKCksICpvcmlnaW4sICZwYWludCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJmdseXBoc1swXSwgJmFkdmFuY2VzWzBdLCAmb2Zmc2V0c1swXSwgbnVtR2x5cGhz
KSkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTMyMyw3ICszMjMsNyBAQCBib29sIHBh
aW50U2tpYVRleHQoR3JhcGhpY3NDb250ZXh0KiBjb250ZXh0LAogICAgIH0KIAogICAgIC8vIFN0
cm9raW5nIG9uIHRvcCAoaWYgbmVjZXNzYXJ5KS4KLSAgICBpZiAoKHRleHRNb2RlICYgVGV4dE1v
ZGVTdHJva2UpCisgICAgaWYgKCh0ZXh0TW9kZSAmIGNUZXh0U3Ryb2tlKQogICAgICAgICAmJiBw
bGF0Zm9ybUNvbnRleHQtPmdldFN0cm9rZVN0eWxlKCkgIT0gTm9TdHJva2UKICAgICAgICAgJiYg
cGxhdGZvcm1Db250ZXh0LT5nZXRTdHJva2VUaGlja25lc3MoKSA+IDApIHsKIApkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5oIGIvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlci5oCmluZGV4IDU4OWZk
YTFmM2JlMmVmOTAzM2YwOTVjMjZjNTMyMGRhZmI5ZTFkOWUuLjI1MDEyNWJlMWM2ZGNjZmMxYmIz
ZjJmMmNhYWFjNDliNmYyY2RjODggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvdGV4bWFwL1RleHR1cmVNYXBwZXIuaAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3RleG1hcC9UZXh0dXJlTWFwcGVyLmgKQEAgLTExMCwyMiArMTEwLDIyIEBAIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIFBhc3NSZWZQdHI8Qml0bWFwVGV4dHVyZT4gY3JlYXRlVGV4dHVyZSgpID0gMDsK
IAogICAgIHZvaWQgc2V0SW1hZ2VJbnRlcnBvbGF0aW9uUXVhbGl0eShJbnRlcnBvbGF0aW9uUXVh
bGl0eSBxdWFsaXR5KSB7IG1faW50ZXJwb2xhdGlvblF1YWxpdHkgPSBxdWFsaXR5OyB9Ci0gICAg
dm9pZCBzZXRUZXh0RHJhd2luZ01vZGUoVGV4dERyYXdpbmdNb2RlRmxhZ3MgbW9kZSkgeyBtX3Rl
eHREcmF3aW5nTW9kZSA9IG1vZGU7IH0KKyAgICB2b2lkIHNldFRleHREcmF3aW5nTW9kZShpbnQg
bW9kZSkgeyBtX3RleHREcmF3aW5nTW9kZSA9IG1vZGU7IH0KIAogICAgIEludGVycG9sYXRpb25R
dWFsaXR5IGltYWdlSW50ZXJwb2xhdGlvblF1YWxpdHkoKSBjb25zdCB7IHJldHVybiBtX2ludGVy
cG9sYXRpb25RdWFsaXR5OyB9Ci0gICAgVGV4dERyYXdpbmdNb2RlRmxhZ3MgdGV4dERyYXdpbmdN
b2RlKCkgY29uc3QgeyByZXR1cm4gbV90ZXh0RHJhd2luZ01vZGU7IH0KKyAgICBpbnQgdGV4dERy
YXdpbmdNb2RlKCkgY29uc3QgeyByZXR1cm4gbV90ZXh0RHJhd2luZ01vZGU7IH0KIAogICAgIHZv
aWQgc2V0Vmlld3BvcnRTaXplKGNvbnN0IEludFNpemUmKTsKIAogcHJvdGVjdGVkOgogICAgIFRl
eHR1cmVNYXBwZXIoKQogICAgICAgICA6IG1faW50ZXJwb2xhdGlvblF1YWxpdHkoSW50ZXJwb2xh
dGlvbkRlZmF1bHQpCi0gICAgICAgICwgbV90ZXh0RHJhd2luZ01vZGUoVGV4dE1vZGVGaWxsKQor
ICAgICAgICAsIG1fdGV4dERyYXdpbmdNb2RlKGNUZXh0RmlsbCkKICAgICB7fQogCiBwcml2YXRl
OgogICAgIEludGVycG9sYXRpb25RdWFsaXR5IG1faW50ZXJwb2xhdGlvblF1YWxpdHk7Ci0gICAg
VGV4dERyYXdpbmdNb2RlRmxhZ3MgbV90ZXh0RHJhd2luZ01vZGU7CisgICAgaW50IG1fdGV4dERy
YXdpbmdNb2RlOwogfTsKIAogfTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3Mvd2luL0ZvbnRDR1dpbi5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dpbi9Gb250
Q0dXaW4uY3BwCmluZGV4IGEyNzg3MmJlYzc1MDhjN2M5MzE4MTM3OTlhZjE4YjAxYzVkYzBiZTMu
LjJmMWZiNDFjNGQ4MzllN2Q0ZDUzZjkwMzNiMDY5Zjk3YzQ0YTcyNWQgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL0ZvbnRDR1dpbi5jcHAKKysrIGIvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy93aW4vRm9udENHV2luLmNwcApAQCAtMTMzLDggKzEzMyw4IEBAIHN0
YXRpYyB2b2lkIGRyYXdHRElHbHlwaHMoR3JhcGhpY3NDb250ZXh0KiBncmFwaGljc0NvbnRleHQs
IGNvbnN0IFNpbXBsZUZvbnREYXRhCiAgICAgQ29sb3IgZmlsbENvbG9yID0gZ3JhcGhpY3NDb250
ZXh0LT5maWxsQ29sb3IoKTsKIAogICAgIGJvb2wgZHJhd0ludG9CaXRtYXAgPSBmYWxzZTsKLSAg
ICBUZXh0RHJhd2luZ01vZGVGbGFncyBkcmF3aW5nTW9kZSA9IGdyYXBoaWNzQ29udGV4dC0+dGV4
dERyYXdpbmdNb2RlKCk7Ci0gICAgaWYgKGRyYXdpbmdNb2RlID09IFRleHRNb2RlRmlsbCkgewor
ICAgIGludCBkcmF3aW5nTW9kZSA9IGdyYXBoaWNzQ29udGV4dC0+dGV4dERyYXdpbmdNb2RlKCk7
CisgICAgaWYgKGRyYXdpbmdNb2RlID09IGNUZXh0RmlsbCkgewogICAgICAgICBpZiAoIWZpbGxD
b2xvci5hbHBoYSgpKQogICAgICAgICAgICAgcmV0dXJuOwogCkBAIC0yMDUsNyArMjA1LDcgQEAg
c3RhdGljIHZvaWQgZHJhd0dESUdseXBocyhHcmFwaGljc0NvbnRleHQqIGdyYXBoaWNzQ29udGV4
dCwgY29uc3QgU2ltcGxlRm9udERhdGEKICAgICAgICAgTW9kaWZ5V29ybGRUcmFuc2Zvcm0oaGRj
LCAmeGZvcm0sIE1XVF9MRUZUTVVMVElQTFkpOwogICAgIH0KIAotICAgIGlmIChkcmF3aW5nTW9k
ZSA9PSBUZXh0TW9kZUZpbGwpIHsKKyAgICBpZiAoZHJhd2luZ01vZGUgPT0gY1RleHRGaWxsKSB7
CiAgICAgICAgIFhGT1JNIHhmb3JtOwogICAgICAgICB4Zm9ybS5lTTExID0gMS4wOwogICAgICAg
ICB4Zm9ybS5lTTEyID0gMDsKQEAgLTI0Nyw3ICsyNDcsNyBAQCBzdGF0aWMgdm9pZCBkcmF3R0RJ
R2x5cGhzKEdyYXBoaWNzQ29udGV4dCogZ3JhcGhpY3NDb250ZXh0LCBjb25zdCBTaW1wbGVGb250
RGF0YQogICAgICAgICAgICAgQ0dDb250ZXh0U2F2ZUdTdGF0ZShjZ0NvbnRleHQpOwogICAgICAg
ICAgICAgQ0dDb250ZXh0Q29uY2F0Q1RNKGNnQ29udGV4dCwgaW5pdGlhbEdseXBoVHJhbnNmb3Jt
KTsKIAotICAgICAgICAgICAgaWYgKGRyYXdpbmdNb2RlICYgVGV4dE1vZGVGaWxsKSB7CisgICAg
ICAgICAgICBpZiAoZHJhd2luZ01vZGUgJiBjVGV4dEZpbGwpIHsKICAgICAgICAgICAgICAgICBD
R0NvbnRleHRBZGRQYXRoKGNnQ29udGV4dCwgZ2x5cGhQYXRoLmdldCgpKTsKICAgICAgICAgICAg
ICAgICBDR0NvbnRleHRGaWxsUGF0aChjZ0NvbnRleHQpOwogICAgICAgICAgICAgICAgIGlmIChm
b250LT5zeW50aGV0aWNCb2xkT2Zmc2V0KCkpIHsKQEAgLTI1Nyw3ICsyNTcsNyBAQCBzdGF0aWMg
dm9pZCBkcmF3R0RJR2x5cGhzKEdyYXBoaWNzQ29udGV4dCogZ3JhcGhpY3NDb250ZXh0LCBjb25z
dCBTaW1wbGVGb250RGF0YQogICAgICAgICAgICAgICAgICAgICBDR0NvbnRleHRUcmFuc2xhdGVD
VE0oY2dDb250ZXh0LCAtZm9udC0+c3ludGhldGljQm9sZE9mZnNldCgpLCAwKTsKICAgICAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAoZHJhd2luZ01vZGUgJiBU
ZXh0TW9kZVN0cm9rZSkgeworICAgICAgICAgICAgaWYgKGRyYXdpbmdNb2RlICYgY1RleHRTdHJv
a2UpIHsKICAgICAgICAgICAgICAgICBDR0NvbnRleHRBZGRQYXRoKGNnQ29udGV4dCwgZ2x5cGhQ
YXRoLmdldCgpKTsKICAgICAgICAgICAgICAgICBDR0NvbnRleHRTdHJva2VQYXRoKGNnQ29udGV4
dCk7CiAgICAgICAgICAgICAgICAgaWYgKGZvbnQtPnN5bnRoZXRpY0JvbGRPZmZzZXQoKSkgewpA
QCAtMzU0LDcgKzM1NCw3IEBAIHZvaWQgRm9udDo6ZHJhd0dseXBocyhHcmFwaGljc0NvbnRleHQq
IGdyYXBoaWNzQ29udGV4dCwgY29uc3QgU2ltcGxlRm9udERhdGEqIGZvCiAgICAgQ29sb3Igc2hh
ZG93Q29sb3I7CiAgICAgZ3JhcGhpY3NDb250ZXh0LT5nZXRTaGFkb3coc2hhZG93T2Zmc2V0LCBz
aGFkb3dCbHVyLCBzaGFkb3dDb2xvcik7CiAKLSAgICBib29sIGhhc1NpbXBsZVNoYWRvdyA9IGdy
YXBoaWNzQ29udGV4dC0+dGV4dERyYXdpbmdNb2RlKCkgPT0gVGV4dE1vZGVGaWxsICYmIHNoYWRv
d0NvbG9yLmlzVmFsaWQoKSAmJiAhc2hhZG93Qmx1cjsKKyAgICBib29sIGhhc1NpbXBsZVNoYWRv
dyA9IGdyYXBoaWNzQ29udGV4dC0+dGV4dERyYXdpbmdNb2RlKCkgPT0gY1RleHRGaWxsICYmIHNo
YWRvd0NvbG9yLmlzVmFsaWQoKSAmJiAhc2hhZG93Qmx1cjsKICAgICBpZiAoaGFzU2ltcGxlU2hh
ZG93KSB7CiAgICAgICAgIC8vIFBhaW50IHNpbXBsZSBzaGFkb3dzIG91cnNlbHZlcyBpbnN0ZWFk
IG9mIHJlbHlpbmcgb24gQ0cgc2hhZG93cywgdG8gYXZvaWQgbG9zaW5nIHN1YnBpeGVsIGFudGlh
bGlhc2luZy4KICAgICAgICAgZ3JhcGhpY3NDb250ZXh0LT5jbGVhclNoYWRvdygpOwpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW5jZS9HcmFwaGljc0NvbnRleHRXaW5D
RS5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dpbmNlL0dyYXBoaWNzQ29udGV4dFdp
bkNFLmNwcAppbmRleCBhNTI2NThmMmI3ZjkxMGU4OWRiOTg2NjNlZWJmZWYxZjRkMmRjODI5Li45
MTdkNTg1N2YwNjZlODc1NGY3ZDU5NjE5YTQzOTIxMWZmZmI0Mzc1IDEwMDY0NAotLS0gYS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dpbmNlL0dyYXBoaWNzQ29udGV4dFdpbkNFLmNwcAorKysg
Yi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dpbmNlL0dyYXBoaWNzQ29udGV4dFdpbkNFLmNw
cApAQCAtMTYyNiw3ICsxNjI2LDcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdUZXh0KGNv
bnN0IFNpbXBsZUZvbnREYXRhKiBmb250RGF0YSwgY29uc3QgR2x5cGhCdWZmZXIKICAgICBGbG9h
dFNpemUgc2hhZG93T2Zmc2V0OwogICAgIGZsb2F0IHNoYWRvd0JsdXIgPSAwOwogICAgIENvbG9y
IHNoYWRvd0NvbG9yOwotICAgIGJvb2wgaGFzU2hhZG93ID0gdGV4dERyYXdpbmdNb2RlKCkgPT0g
VGV4dE1vZGVGaWxsCisgICAgYm9vbCBoYXNTaGFkb3cgPSB0ZXh0RHJhd2luZ01vZGUoKSA9PSBj
VGV4dEZpbGwKICAgICAgICAgJiYgZ2V0U2hhZG93KHNoYWRvd09mZnNldCwgc2hhZG93Qmx1ciwg
c2hhZG93Q29sb3IpCiAgICAgICAgICYmIHNoYWRvd0NvbG9yLmFscGhhKCk7CiAgICAgQ09MT1JS
RUYgc2hhZG93UkdCQ29sb3I7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVU
ZXh0Qm94LmNwcCBiL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZVRleHRCb3guY3BwCmluZGV4IDEw
OTU5N2Y5NWU3NGY4OWRhYjQ1ZDNkYTJiNTQ2NTgxNDhkYWQ4OWIuLmQwNTUxODUyYWQ1ZTkxMGFh
MjViZjc4NTZlMWY3NWZkYzM5MDdjMjIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL0lu
bGluZVRleHRCb3guY3BwCisrKyBiL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZVRleHRCb3guY3Bw
CkBAIC0yODQsMTkgKzI4NCwxOSBAQCBDb2xvciBjb3JyZWN0ZWRUZXh0Q29sb3IoQ29sb3IgdGV4
dENvbG9yLCBDb2xvciBiYWNrZ3JvdW5kQ29sb3IpCiAKIHZvaWQgdXBkYXRlR3JhcGhpY3NDb250
ZXh0KEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgQ29sb3ImIGZpbGxDb2xvciwgY29u
c3QgQ29sb3ImIHN0cm9rZUNvbG9yLCBmbG9hdCBzdHJva2VUaGlja25lc3MsIENvbG9yU3BhY2Ug
Y29sb3JTcGFjZSkKIHsKLSAgICBUZXh0RHJhd2luZ01vZGVGbGFncyBtb2RlID0gY29udGV4dC0+
dGV4dERyYXdpbmdNb2RlKCk7CisgICAgaW50IG1vZGUgPSBjb250ZXh0LT50ZXh0RHJhd2luZ01v
ZGUoKTsKICAgICBpZiAoc3Ryb2tlVGhpY2tuZXNzID4gMCkgewotICAgICAgICBUZXh0RHJhd2lu
Z01vZGVGbGFncyBuZXdNb2RlID0gbW9kZSB8IFRleHRNb2RlU3Ryb2tlOworICAgICAgICBpbnQg
bmV3TW9kZSA9IG1vZGUgfCBjVGV4dFN0cm9rZTsKICAgICAgICAgaWYgKG1vZGUgIT0gbmV3TW9k
ZSkgewogICAgICAgICAgICAgY29udGV4dC0+c2V0VGV4dERyYXdpbmdNb2RlKG5ld01vZGUpOwog
ICAgICAgICAgICAgbW9kZSA9IG5ld01vZGU7CiAgICAgICAgIH0KICAgICB9CiAgICAgCi0gICAg
aWYgKG1vZGUgJiBUZXh0TW9kZUZpbGwgJiYgKGZpbGxDb2xvciAhPSBjb250ZXh0LT5maWxsQ29s
b3IoKSB8fCBjb2xvclNwYWNlICE9IGNvbnRleHQtPmZpbGxDb2xvclNwYWNlKCkpKQorICAgIGlm
IChtb2RlICYgY1RleHRGaWxsICYmIChmaWxsQ29sb3IgIT0gY29udGV4dC0+ZmlsbENvbG9yKCkg
fHwgY29sb3JTcGFjZSAhPSBjb250ZXh0LT5maWxsQ29sb3JTcGFjZSgpKSkKICAgICAgICAgY29u
dGV4dC0+c2V0RmlsbENvbG9yKGZpbGxDb2xvciwgY29sb3JTcGFjZSk7CiAKLSAgICBpZiAobW9k
ZSAmIFRleHRNb2RlU3Ryb2tlKSB7CisgICAgaWYgKG1vZGUgJiBjVGV4dFN0cm9rZSkgewogICAg
ICAgICBpZiAoc3Ryb2tlQ29sb3IgIT0gY29udGV4dC0+c3Ryb2tlQ29sb3IoKSkKICAgICAgICAg
ICAgIGNvbnRleHQtPnNldFN0cm9rZUNvbG9yKHN0cm9rZUNvbG9yLCBjb2xvclNwYWNlKTsKICAg
ICAgICAgaWYgKHN0cm9rZVRoaWNrbmVzcyAhPSBjb250ZXh0LT5zdHJva2VUaGlja25lc3MoKSkK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNWR1Jlc291cmNlR3JhZGllbnQu
Y3BwIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUmVzb3VyY2VHcmFkaWVudC5jcHAKaW5k
ZXggN2MzODNkMGEzZmM1OTliYjNkYTU1OWFlMzY5MjNhMzVlNDZmMDNlYS4uYjc2ZTdmODY1N2Y3
Njc5NzZhYTkyYjYxYTVjMmFiZjBmYjNiYTRiMSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyU1ZHUmVzb3VyY2VHcmFkaWVudC5jcHAKKysrIGIvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyU1ZHUmVzb3VyY2VHcmFkaWVudC5jcHAKQEAgLTIwOSw3ICsyMDksNyBAQCBib29sIFJl
bmRlclNWR1Jlc291cmNlR3JhZGllbnQ6OmFwcGx5UmVzb3VyY2UoUmVuZGVyT2JqZWN0KiBvYmpl
Y3QsIFJlbmRlclN0eWxlKgogICAgICAgICB9CiAjZW5kaWYKIAotICAgICAgICBjb250ZXh0LT5z
ZXRUZXh0RHJhd2luZ01vZGUocmVzb3VyY2VNb2RlICYgQXBwbHlUb0ZpbGxNb2RlID8gVGV4dE1v
ZGVGaWxsIDogVGV4dE1vZGVTdHJva2UpOworICAgICAgICBjb250ZXh0LT5zZXRUZXh0RHJhd2lu
Z01vZGUocmVzb3VyY2VNb2RlICYgQXBwbHlUb0ZpbGxNb2RlID8gY1RleHRGaWxsIDogY1RleHRT
dHJva2UpOwogICAgIH0KIAogICAgIGNvbnN0IFNWR1JlbmRlclN0eWxlKiBzdmdTdHlsZSA9IHN0
eWxlLT5zdmdTdHlsZSgpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZH
UmVzb3VyY2VQYXR0ZXJuLmNwcCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNWR1Jlc291cmNl
UGF0dGVybi5jcHAKaW5kZXggY2Q2NDE4MzJjMDRjMTI0MGIxNGVmYTk4YWYzNWExNGViYjc3ZDkx
Ni4uODM3NTRhZGI3NWM0Yjc1ZTExMmVkOTM2Yzk3ZWI0MTFiOTVjOTAyZiAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZHUmVzb3VyY2VQYXR0ZXJuLmNwcAorKysgYi9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJTVkdSZXNvdXJjZVBhdHRlcm4uY3BwCkBAIC0xNjUsMTMgKzE2
NSwxMyBAQCBib29sIFJlbmRlclNWR1Jlc291cmNlUGF0dGVybjo6YXBwbHlSZXNvdXJjZShSZW5k
ZXJPYmplY3QqIG9iamVjdCwgUmVuZGVyU3R5bGUqCiAKICAgICBpZiAocmVzb3VyY2VNb2RlICYg
QXBwbHlUb1RleHRNb2RlKSB7CiAgICAgICAgIGlmIChyZXNvdXJjZU1vZGUgJiBBcHBseVRvRmls
bE1vZGUpIHsKLSAgICAgICAgICAgIGNvbnRleHQtPnNldFRleHREcmF3aW5nTW9kZShUZXh0TW9k
ZUZpbGwpOworICAgICAgICAgICAgY29udGV4dC0+c2V0VGV4dERyYXdpbmdNb2RlKGNUZXh0Rmls
bCk7CiAKICNpZiBQTEFURk9STShDRykKICAgICAgICAgICAgIGNvbnRleHQtPmFwcGx5RmlsbFBh
dHRlcm4oKTsKICNlbmRpZgogICAgICAgICB9IGVsc2UgaWYgKHJlc291cmNlTW9kZSAmIEFwcGx5
VG9TdHJva2VNb2RlKSB7Ci0gICAgICAgICAgICBjb250ZXh0LT5zZXRUZXh0RHJhd2luZ01vZGUo
VGV4dE1vZGVTdHJva2UpOworICAgICAgICAgICAgY29udGV4dC0+c2V0VGV4dERyYXdpbmdNb2Rl
KGNUZXh0U3Ryb2tlKTsKIAogI2lmIFBMQVRGT1JNKENHKQogICAgICAgICAgICAgY29udGV4dC0+
YXBwbHlTdHJva2VQYXR0ZXJuKCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJTVkdSZXNvdXJjZVNvbGlkQ29sb3IuY3BwIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyU1ZH
UmVzb3VyY2VTb2xpZENvbG9yLmNwcAppbmRleCBjMmM3Mjk3ZTc1MWI5NDFmNjQwYzM4MmVjNDlk
MWJiYTIwZDgzYjI0Li4xZWI5ZGE1ZWE4ZWFkNDQ0NjBkZDEyNmQ0MjFjODdhOGM5NWRiMmQyIDEw
MDY0NAotLS0gYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJTVkdSZXNvdXJjZVNvbGlkQ29sb3Iu
Y3BwCisrKyBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclNWR1Jlc291cmNlU29saWRDb2xvci5j
cHAKQEAgLTYwLDcgKzYwLDcgQEAgYm9vbCBSZW5kZXJTVkdSZXNvdXJjZVNvbGlkQ29sb3I6OmFw
cGx5UmVzb3VyY2UoUmVuZGVyT2JqZWN0KiBvYmplY3QsIFJlbmRlclN0eWwKICAgICAgICAgY29u
dGV4dC0+c2V0RmlsbFJ1bGUoc3ZnU3R5bGUgPyBzdmdTdHlsZS0+ZmlsbFJ1bGUoKSA6IFJVTEVf
Tk9OWkVSTyk7CiAKICAgICAgICAgaWYgKHJlc291cmNlTW9kZSAmIEFwcGx5VG9UZXh0TW9kZSkK
LSAgICAgICAgICAgIGNvbnRleHQtPnNldFRleHREcmF3aW5nTW9kZShUZXh0TW9kZUZpbGwpOwor
ICAgICAgICAgICAgY29udGV4dC0+c2V0VGV4dERyYXdpbmdNb2RlKGNUZXh0RmlsbCk7CiAgICAg
fSBlbHNlIGlmIChyZXNvdXJjZU1vZGUgJiBBcHBseVRvU3Ryb2tlTW9kZSkgewogICAgICAgICBj
b250ZXh0LT5zZXRBbHBoYShzdmdTdHlsZSA/IHN2Z1N0eWxlLT5zdHJva2VPcGFjaXR5KCkgOiAx
LjBmKTsKICAgICAgICAgY29udGV4dC0+c2V0U3Ryb2tlQ29sb3IobV9jb2xvciwgY29sb3JTcGFj
ZSk7CkBAIC02OSw3ICs2OSw3IEBAIGJvb2wgUmVuZGVyU1ZHUmVzb3VyY2VTb2xpZENvbG9yOjph
cHBseVJlc291cmNlKFJlbmRlck9iamVjdCogb2JqZWN0LCBSZW5kZXJTdHlsCiAgICAgICAgICAg
ICBTVkdSZW5kZXJTdXBwb3J0OjphcHBseVN0cm9rZVN0eWxlVG9Db250ZXh0KGNvbnRleHQsIHN0
eWxlLCBvYmplY3QpOwogCiAgICAgICAgIGlmIChyZXNvdXJjZU1vZGUgJiBBcHBseVRvVGV4dE1v
ZGUpCi0gICAgICAgICAgICBjb250ZXh0LT5zZXRUZXh0RHJhd2luZ01vZGUoVGV4dE1vZGVTdHJv
a2UpOworICAgICAgICAgICAgY29udGV4dC0+c2V0VGV4dERyYXdpbmdNb2RlKGNUZXh0U3Ryb2tl
KTsKICAgICB9CiAKICAgICByZXR1cm4gdHJ1ZTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3ZnL1NW
R0ZvbnQuY3BwIGIvV2ViQ29yZS9zdmcvU1ZHRm9udC5jcHAKaW5kZXggYjAxNTFjYjQzNWNhMTVk
ZTNhZTY0MzYzYWRmMTliMDE5NDM5YTViNy4uNGJkYTJkODY5NjE3ZmJlNGU3ZjliYTc3OWZlMjQw
ZDdhZTFkMTQzOSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdmcvU1ZHRm9udC5jcHAKKysrIGIvV2Vi
Q29yZS9zdmcvU1ZHRm9udC5jcHAKQEAgLTUxMiw3ICs1MTIsNyBAQCB2b2lkIEZvbnQ6OmRyYXdU
ZXh0VXNpbmdTVkdGb250KEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgVGV4dFJ1biYg
cnVuLAogICAgICAgICBTVkdUZXh0UnVuV2Fsa2VyPFNWR1RleHRSdW5XYWxrZXJEcmF3VGV4dERh
dGE+IHJ1bldhbGtlcihmb250RGF0YSwgZm9udEVsZW1lbnQsIGRhdGEsIGRyYXdUZXh0VXNpbmdT
VkdGb250Q2FsbGJhY2ssIGRyYXdUZXh0TWlzc2luZ0dseXBoQ2FsbGJhY2spOwogICAgICAgICBy
dW5XYWxrZXIud2FsayhydW4sIGlzVmVydGljYWxUZXh0LCBsYW5ndWFnZSwgZnJvbSwgdG8pOwog
Ci0gICAgICAgIFJlbmRlclNWR1Jlc291cmNlTW9kZSByZXNvdXJjZU1vZGUgPSBjb250ZXh0LT50
ZXh0RHJhd2luZ01vZGUoKSA9PSBUZXh0TW9kZVN0cm9rZSA/IEFwcGx5VG9TdHJva2VNb2RlIDog
QXBwbHlUb0ZpbGxNb2RlOworICAgICAgICBSZW5kZXJTVkdSZXNvdXJjZU1vZGUgcmVzb3VyY2VN
b2RlID0gY29udGV4dC0+dGV4dERyYXdpbmdNb2RlKCkgPT0gY1RleHRTdHJva2UgPyBBcHBseVRv
U3Ryb2tlTW9kZSA6IEFwcGx5VG9GaWxsTW9kZTsKIAogICAgICAgICB1bnNpZ25lZCBudW1HbHlw
aHMgPSBkYXRhLmdseXBoSWRlbnRpZmllcnMuc2l6ZSgpOwogICAgICAgICB1bnNpZ25lZCBmYWxs
YmFja0NoYXJhY3RlckluZGV4ID0gMDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>