<?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>145277</bug_id>
          
          <creation_ts>2015-05-21 11:28:27 -0700</creation_ts>
          <short_desc>REGRESSION(r184718): broke the debug build (Requested by thorton on #webkit).</short_desc>
          <delta_ts>2022-03-01 02:47:36 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</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>145209</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>darin</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1096637</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-05-21 11:28:27 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/184718 broke the build:
broke the debug build (Requested by thorton 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>1096639</commentid>
    <comment_count>1</comment_count>
      <attachid>253535</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-05-21 11:28:56 -0700</bug_when>
    <thetext>Created attachment 253535
ROLLOUT of r184718

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>1096641</commentid>
    <comment_count>2</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-05-21 11:44:50 -0700</bug_when>
    <thetext>Fixed properly in http://trac.webkit.org/changeset/184725</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>253535</attachid>
            <date>2015-05-21 11:28:56 -0700</date>
            <delta_ts>2022-03-01 02:47:36 -0800</delta_ts>
            <desc>ROLLOUT of r184718</desc>
            <filename>bug-145277-20150521112851.patch</filename>
            <type>text/plain</type>
            <size>31293</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg0NzIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDg2ZmYzZWMwMWJiZGI3
YTE2ZjVmNmM3ZTA4ZDY1NzMzOTY0MzhiOS4uODczYWEzMjZiNWM5NTU4ZmY0ODU3YTZiZTkzZDhi
OGMyMzkyMzkyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE1LTA1LTIxICBDb21t
aXQgUXVldWUgIDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KKworICAgICAgICBVbnJldmlld2Vk
LCByb2xsaW5nIG91dCByMTg0NzE4LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTQ1Mjc3CisKKyAgICAgICAgYnJva2UgdGhlIGRlYnVnIGJ1aWxkIChS
ZXF1ZXN0ZWQgYnkgdGhvcnRvbiBvbiAjd2Via2l0KS4KKworICAgICAgICBSZXZlcnRlZCBjaGFu
Z2VzZXQ6CisKKyAgICAgICAgIlVzZSBtb2Rlcm4gZm9yLWxvb3BzIGluIFdlYkNvcmUvc3ZnLiIK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NTIwOQor
ICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC8xODQ3MTgKKwogMjAxNS0w
NS0yMSAgWGFiaWVyIFJvZHJpZ3VleiBDYWx2YXIgIDxjYWx2YXJpc0BpZ2FsaWEuY29tPiBhbmQg
WW91ZW5uIEZhYmxldCA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CiAKICAgICAgICAgW1N0
cmVhbXMgQVBJXSBSZW1vdmUgUmVhZGFibGVTdHJlYW1SZWFkZXIgY2xvc2VkIHByb21pc2UgaW50
ZXJuYWwgc2xvdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVFbGVt
ZW50QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlLmNw
cAppbmRleCBjZWRkOWNhMjQ5ZWIxZDlmN2VhZjlkMWNmOTFmYWM4Njc1YjUwZmMzLi5lNTA2NWNl
YjI3NTRkYWNlODg4ZDRhMDY4Nzk0ZWJjYmMxZDM3OTg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlLmNwcApAQCAtMTcxLDExICsxNzEsMTIgQEAgYm9vbCBT
VkdBbmltYXRlRWxlbWVudEJhc2U6OmNhbGN1bGF0ZUZyb21BbmRCeVZhbHVlcyhjb25zdCBTdHJp
bmcmIGZyb21TdHJpbmcsIGMKICNpZm5kZWYgTkRFQlVHCiBzdGF0aWMgaW5saW5lIGJvb2wgcHJv
cGVydHlUeXBlc0FyZUNvbnNpc3RlbnQoQW5pbWF0ZWRQcm9wZXJ0eVR5cGUgZXhwZWN0ZWRQcm9w
ZXJ0eVR5cGUsIGNvbnN0IFNWR0VsZW1lbnRBbmltYXRlZFByb3BlcnR5TGlzdCYgYW5pbWF0ZWRU
eXBlcykKIHsKLSAgICBmb3IgKGF1dG8mIHR5cGUgOiBhbmltYXRlZFR5cGVzKSB7Ci0gICAgICAg
IGZvciAoYXV0byYgcHJvcGVydHkgOiB0eXBlLnByb3BlcnRpZXMoKSkgewotICAgICAgICAgICAg
aWYgKGV4cGVjdGVkUHJvcGVydHlUeXBlICE9IHByb3BlcnR5LT5hbmltYXRlZFByb3BlcnR5VHlw
ZSgpKSB7CisgICAgU1ZHRWxlbWVudEFuaW1hdGVkUHJvcGVydHlMaXN0Ojpjb25zdF9pdGVyYXRv
ciBlbmQgPSBhbmltYXRlZFR5cGVzLmVuZCgpOworICAgIGZvciAoU1ZHRWxlbWVudEFuaW1hdGVk
UHJvcGVydHlMaXN0Ojpjb25zdF9pdGVyYXRvciBpdCA9IGFuaW1hdGVkVHlwZXMuYmVnaW4oKTsg
aXQgIT0gZW5kOyArK2l0KSB7CisgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgaXQtPnBy
b3BlcnRpZXMuc2l6ZSgpOyArK2kpIHsKKyAgICAgICAgICAgIGlmIChleHBlY3RlZFByb3BlcnR5
VHlwZSAhPSBpdC0+cHJvcGVydGllc1tpXS0+YW5pbWF0ZWRQcm9wZXJ0eVR5cGUoKSkgewogICAg
ICAgICAgICAgICAgIC8vIFRoaXMgaXMgdGhlIG9ubHkgYWxsb3dlZCBpbmNvbnNpc3RlbmN5LiBT
VkdBbmltYXRlZEFuZ2xlQW5pbWF0b3IgaGFuZGxlcyBib3RoIFNWR0FuaW1hdGVkQW5nbGUgJiBT
VkdBbmltYXRlZEVudW1lcmF0aW9uIGZvciBtYXJrZXJzIG9yaWVudCBhdHRyaWJ1dGUuCi0gICAg
ICAgICAgICAgICAgaWYgKGV4cGVjdGVkUHJvcGVydHlUeXBlID09IEFuaW1hdGVkQW5nbGUgJiYg
cHJvcGVydHktPmFuaW1hdGVkUHJvcGVydHlUeXBlKCkgPT0gQW5pbWF0ZWRFbnVtZXJhdGlvbikK
KyAgICAgICAgICAgICAgICBpZiAoZXhwZWN0ZWRQcm9wZXJ0eVR5cGUgPT0gQW5pbWF0ZWRBbmds
ZSAmJiBpdC0+cHJvcGVydGllc1tpXS0+YW5pbWF0ZWRQcm9wZXJ0eVR5cGUoKSA9PSBBbmltYXRl
ZEVudW1lcmF0aW9uKQogICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZWRQYXRoLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdB
bmltYXRlZFBhdGguY3BwCmluZGV4IDgwOTc0Nzc2ZTIyMzlmNDM5ZDNkYmE2YTkzN2U1OWMwNTg2
MmI0OWEuLmZiYThhNjFkMmY4ODU0NjU2MDAzNDE3YzNlYzUxNDAwMmU2MGEwMTMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlZFBhdGguY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdBbmltYXRlZFBhdGguY3BwCkBAIC01MCwxMyArNTAsMTUgQEAgc3RkOjp1
bmlxdWVfcHRyPFNWR0FuaW1hdGVkVHlwZT4gU1ZHQW5pbWF0ZWRQYXRoQW5pbWF0b3I6OnN0YXJ0
QW5pbVZhbEFuaW1hdGlvbigKIAogICAgIFZlY3RvcjxSZWZQdHI8U1ZHQW5pbWF0ZWRQYXRoU2Vn
TGlzdFByb3BlcnR5VGVhck9mZj4+IHJlc3VsdDsKIAotICAgIGZvciAoYXV0byYgdHlwZSA6IGFu
aW1hdGVkVHlwZXMpCi0gICAgICAgIHJlc3VsdC5hcHBlbmQoY2FzdEFuaW1hdGVkUHJvcGVydHlU
b0FjdHVhbFR5cGU8U1ZHQW5pbWF0ZWRQYXRoU2VnTGlzdFByb3BlcnR5VGVhck9mZj4odHlwZS5w
cm9wZXJ0aWVzWzBdLmdldCgpKSk7CisgICAgU1ZHRWxlbWVudEFuaW1hdGVkUHJvcGVydHlMaXN0
Ojpjb25zdF9pdGVyYXRvciBlbmQgPSBhbmltYXRlZFR5cGVzLmVuZCgpOworICAgIGZvciAoU1ZH
RWxlbWVudEFuaW1hdGVkUHJvcGVydHlMaXN0Ojpjb25zdF9pdGVyYXRvciBpdCA9IGFuaW1hdGVk
VHlwZXMuYmVnaW4oKTsgaXQgIT0gZW5kOyArK2l0KQorICAgICAgICByZXN1bHQuYXBwZW5kKGNh
c3RBbmltYXRlZFByb3BlcnR5VG9BY3R1YWxUeXBlPFNWR0FuaW1hdGVkUGF0aFNlZ0xpc3RQcm9w
ZXJ0eVRlYXJPZmY+KGl0LT5wcm9wZXJ0aWVzWzBdLmdldCgpKSk7CiAKICAgICBTVkdFbGVtZW50
OjpJbnN0YW5jZVVwZGF0ZUJsb2NrZXIgYmxvY2tlcigqcHJvcGVydHktPmNvbnRleHRFbGVtZW50
KCkpOwogCi0gICAgZm9yIChhdXRvJiBzZWdtZW50IDogcmVzdWx0KQotICAgICAgICBzZWdtZW50
LT5hbmltYXRpb25TdGFydGVkKGJ5dGVTdHJlYW0uZ2V0KCksICZiYXNlVmFsdWUpOworICAgIHNp
emVfdCByZXN1bHRTaXplID0gcmVzdWx0LnNpemUoKTsKKyAgICBmb3IgKHNpemVfdCBpID0gMDsg
aSA8IHJlc3VsdFNpemU7ICsraSkKKyAgICAgICAgcmVzdWx0W2ldLT5hbmltYXRpb25TdGFydGVk
KGJ5dGVTdHJlYW0uZ2V0KCksICZiYXNlVmFsdWUpOwogCiAgICAgcmV0dXJuIFNWR0FuaW1hdGVk
VHlwZTo6Y3JlYXRlUGF0aChXVEY6Om1vdmUoYnl0ZVN0cmVhbSkpOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVkVHlwZUFuaW1hdG9yLmggYi9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHQW5pbWF0ZWRUeXBlQW5pbWF0b3IuaAppbmRleCBjYmMzYTYyNDAxNGY4N2Ey
ZDJiNzMyOTU3MzhiNGMyYmFiNzA3NjcyLi43NTJlOWIyMzJhMWZlN2U4ZTA0Y2QxNzk2NDUyY2M5
MDcyOWJlNTg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZWRUeXBl
QW5pbWF0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZWRUeXBlQW5pbWF0
b3IuaApAQCAtMTkxLDkgKzE5MSwxMCBAQCBwcml2YXRlOgogICAgICAgICAvLyBGSVhNRTogQ2Fu
J3QgdXNlIFNWR0VsZW1lbnQ6Okluc3RhbmNlVXBkYXRlQmxvY2tlciBiZWNhdXNlIG9mIGNpcmN1
bGFyIGhlYWRlciBkZXBlbmRlbmN5LiBXb3VsZCBiZSBuaWNlIHRvIHVudGFuZ2xlIHRoaXMuCiAg
ICAgICAgIHNldEluc3RhbmNlVXBkYXRlc0Jsb2NrZWQoKmFuaW1hdGVkVHlwZXNbMF0uZWxlbWVu
dCwgdHJ1ZSk7CiAKLSAgICAgICAgZm9yIChhdXRvJiBhbmltYXRlZFR5cGUgOiBhbmltYXRlZFR5
cGVzKSB7Ci0gICAgICAgICAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9JTVBMSUNBVElPTih3aGlj
aFByb3BlcnR5IDwgYW5pbWF0ZWRUeXBlLnByb3BlcnRpZXMuc2l6ZSgpKTsKLSAgICAgICAgICAg
IEFuaW1WYWxUeXBlKiBwcm9wZXJ0eSA9IGNhc3RBbmltYXRlZFByb3BlcnR5VG9BY3R1YWxUeXBl
PEFuaW1WYWxUeXBlPihhbmltYXRlZFR5cGUucHJvcGVydGllc1t3aGljaFByb3BlcnR5XS5nZXQo
KSk7CisgICAgICAgIFNWR0VsZW1lbnRBbmltYXRlZFByb3BlcnR5TGlzdDo6Y29uc3RfaXRlcmF0
b3IgZW5kID0gYW5pbWF0ZWRUeXBlcy5lbmQoKTsKKyAgICAgICAgZm9yIChTVkdFbGVtZW50QW5p
bWF0ZWRQcm9wZXJ0eUxpc3Q6OmNvbnN0X2l0ZXJhdG9yIGl0ID0gYW5pbWF0ZWRUeXBlcy5iZWdp
bigpOyBpdCAhPSBlbmQ7ICsraXQpIHsKKyAgICAgICAgICAgIEFTU0VSVF9XSVRIX1NFQ1VSSVRZ
X0lNUExJQ0FUSU9OKHdoaWNoUHJvcGVydHkgPCBpdC0+cHJvcGVydGllcy5zaXplKCkpOworICAg
ICAgICAgICAgQW5pbVZhbFR5cGUqIHByb3BlcnR5ID0gY2FzdEFuaW1hdGVkUHJvcGVydHlUb0Fj
dHVhbFR5cGU8QW5pbVZhbFR5cGU+KGl0LT5wcm9wZXJ0aWVzW3doaWNoUHJvcGVydHldLmdldCgp
KTsKIAogICAgICAgICAgICAgc3dpdGNoIChhY3Rpb24pIHsKICAgICAgICAgICAgIGNhc2UgU3Rh
cnRBbmltYXRpb25BY3Rpb246CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5p
bWF0aW9uRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0aW9uRWxlbWVu
dC5jcHAKaW5kZXggMzQ2MjhhZDQxOTE5ZTYyZWRjZTc0NTM4ODQxMmFkMmJmMjVlNTZjNC4uNWJh
MTliY2ZhY2IxODhiZmVlYmEwMWRiMmI4YzE1NmNiNjQ3YWRiMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGlvbkVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdBbmltYXRpb25FbGVtZW50LmNwcApAQCAtMTY3LDggKzE2Nyw4IEBAIHZvaWQgU1ZH
QW5pbWF0aW9uRWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFt
ZSwgY29uc3QgQXRvbWljCiAgICAgICAgIC8vIGFuZCB3aGl0ZSBzcGFjZSBiZWZvcmUgYW5kIGFm
dGVyIHNlbWljb2xvbiBzZXBhcmF0b3JzLCBpcyBhbGxvd2VkIGFuZCB3aWxsIGJlIGlnbm9yZWQu
CiAgICAgICAgIC8vIGh0dHA6Ly93d3cudzMub3JnL1RSL1NWRzExL2FuaW1hdGUuaHRtbCNWYWx1
ZXNBdHRyaWJ1dGUKICAgICAgICAgdmFsdWUuc3RyaW5nKCkuc3BsaXQoJzsnLCBtX3ZhbHVlcyk7
Ci0gICAgICAgIGZvciAoYXV0byYgdmFsdWUgOiBtX3ZhbHVlcykKLSAgICAgICAgICAgIHZhbHVl
ID0gdmFsdWUuc3RyaXBXaGl0ZVNwYWNlKCk7CisgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7
IGkgPCBtX3ZhbHVlcy5zaXplKCk7ICsraSkKKyAgICAgICAgICAgIG1fdmFsdWVzW2ldID0gbV92
YWx1ZXNbaV0uc3RyaXBXaGl0ZVNwYWNlKCk7CiAKICAgICAgICAgdXBkYXRlQW5pbWF0aW9uTW9k
ZSgpOwogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
Q3Vyc29yRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ3Vyc29yRWxlbWVudC5j
cHAKaW5kZXggNGJkNDNkYWVjOWU4ZTAzN2YxMWQ4ODA1YWNiNzdjY2IwNjYzNzc3MC4uZDU0ZWM0
NmM2N2FkZWZhNGI0OTg0OWYxNGNmZGZlMzcyZDhlMDZjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR0N1cnNvckVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdDdXJzb3JFbGVtZW50LmNwcApAQCAtNTgsOCArNTgsOSBAQCBSZWY8U1ZHQ3Vyc29yRWxlbWVu
dD4gU1ZHQ3Vyc29yRWxlbWVudDo6Y3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUs
IERvYwogCiBTVkdDdXJzb3JFbGVtZW50Ojp+U1ZHQ3Vyc29yRWxlbWVudCgpCiB7Ci0gICAgZm9y
IChhdXRvJiBjbGllbnQgOiBtX2NsaWVudHMpCi0gICAgICAgIGNsaWVudC0+Y3Vyc29yRWxlbWVu
dFJlbW92ZWQoKTsKKyAgICBIYXNoU2V0PFNWR0VsZW1lbnQqPjo6aXRlcmF0b3IgZW5kID0gbV9j
bGllbnRzLmVuZCgpOworICAgIGZvciAoSGFzaFNldDxTVkdFbGVtZW50Kj46Oml0ZXJhdG9yIGl0
ID0gbV9jbGllbnRzLmJlZ2luKCk7IGl0ICE9IGVuZDsgKytpdCkKKyAgICAgICAgKCppdCktPmN1
cnNvckVsZW1lbnRSZW1vdmVkKCk7CiB9CiAKIGJvb2wgU1ZHQ3Vyc29yRWxlbWVudDo6aXNTdXBw
b3J0ZWRBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgYXR0ck5hbWUpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRG9jdW1lbnRFeHRlbnNpb25zLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdEb2N1bWVudEV4dGVuc2lvbnMuY3BwCmluZGV4IGFiMjlkMjFjMTBhY2Rj
ZGY3YzQyMDFiZmMwNjM2MmEzMTg1ZGVjYjQuLmE0N2FkZDVhNjI1Y2QzMGQyMGYzZjdiMjliZmM3
OGE5Mjc2MTQzZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdEb2N1bWVudEV4
dGVuc2lvbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdEb2N1bWVudEV4dGVuc2lv
bnMuY3BwCkBAIC0xMDEsMTQgKzEwMSwxNiBAQCB2b2lkIFNWR0RvY3VtZW50RXh0ZW5zaW9uczo6
c3RhcnRBbmltYXRpb25zKCkKIAogdm9pZCBTVkdEb2N1bWVudEV4dGVuc2lvbnM6OnBhdXNlQW5p
bWF0aW9ucygpCiB7Ci0gICAgZm9yIChhdXRvJiBjb250YWluZXIgOiBtX3RpbWVDb250YWluZXJz
KQotICAgICAgICBjb250YWluZXItPnBhdXNlQW5pbWF0aW9ucygpOworICAgIGF1dG8gZW5kID0g
bV90aW1lQ29udGFpbmVycy5lbmQoKTsKKyAgICBmb3IgKGF1dG8gaXQgPSBtX3RpbWVDb250YWlu
ZXJzLmJlZ2luKCk7IGl0ICE9IGVuZDsgKytpdCkKKyAgICAgICAgKCppdCktPnBhdXNlQW5pbWF0
aW9ucygpOwogfQogCiB2b2lkIFNWR0RvY3VtZW50RXh0ZW5zaW9uczo6dW5wYXVzZUFuaW1hdGlv
bnMoKQogewotICAgIGZvciAoYXV0byYgY29udGFpbmVyIDogbV90aW1lQ29udGFpbmVycykKLSAg
ICAgICAgY29udGFpbmVyLT51bnBhdXNlQW5pbWF0aW9ucygpOworICAgIGF1dG8gZW5kID0gbV90
aW1lQ29udGFpbmVycy5lbmQoKTsKKyAgICBmb3IgKGF1dG8gaXQgPSBtX3RpbWVDb250YWluZXJz
LmJlZ2luKCk7IGl0ICE9IGVuZDsgKytpdCkKKyAgICAgICAgKCppdCktPnVucGF1c2VBbmltYXRp
b25zKCk7CiB9CiAKIHZvaWQgU1ZHRG9jdW1lbnRFeHRlbnNpb25zOjpkaXNwYXRjaFNWR0xvYWRF
dmVudFRvT3V0ZXJtb3N0U1ZHRWxlbWVudHMoKQpAQCAtMTE2LDEwICsxMTgsMTIgQEAgdm9pZCBT
VkdEb2N1bWVudEV4dGVuc2lvbnM6OmRpc3BhdGNoU1ZHTG9hZEV2ZW50VG9PdXRlcm1vc3RTVkdF
bGVtZW50cygpCiAgICAgVmVjdG9yPFJlZlB0cjxTVkdTVkdFbGVtZW50Pj4gdGltZUNvbnRhaW5l
cnM7CiAgICAgdGltZUNvbnRhaW5lcnMuYXBwZW5kUmFuZ2UobV90aW1lQ29udGFpbmVycy5iZWdp
bigpLCBtX3RpbWVDb250YWluZXJzLmVuZCgpKTsKIAotICAgIGZvciAoYXV0byYgY29udGFpbmVy
IDogbV90aW1lQ29udGFpbmVycykgewotICAgICAgICBpZiAoIWNvbnRhaW5lci0+aXNPdXRlcm1v
c3RTVkdTVkdFbGVtZW50KCkpCisgICAgYXV0byBlbmQgPSB0aW1lQ29udGFpbmVycy5lbmQoKTsK
KyAgICBmb3IgKGF1dG8gaXQgPSB0aW1lQ29udGFpbmVycy5iZWdpbigpOyBpdCAhPSBlbmQ7ICsr
aXQpIHsKKyAgICAgICAgU1ZHU1ZHRWxlbWVudCogb3V0ZXJTVkcgPSAoKml0KS5nZXQoKTsKKyAg
ICAgICAgaWYgKCFvdXRlclNWRy0+aXNPdXRlcm1vc3RTVkdTVkdFbGVtZW50KCkpCiAgICAgICAg
ICAgICBjb250aW51ZTsKLSAgICAgICAgY29udGFpbmVyLT5zZW5kU1ZHTG9hZEV2ZW50SWZQb3Nz
aWJsZSgpOworICAgICAgICBvdXRlclNWRy0+c2VuZFNWR0xvYWRFdmVudElmUG9zc2libGUoKTsK
ICAgICB9CiB9CiAKQEAgLTE2Nyw3ICsxNzEsOSBAQCBib29sIFNWR0RvY3VtZW50RXh0ZW5zaW9u
czo6aXNFbGVtZW50V2l0aFBlbmRpbmdSZXNvdXJjZXMoRWxlbWVudCogZWxlbWVudCkgY29ucwog
ICAgIC8vIFRoaXMgYWxnb3JpdGhtIHRha2VzIHRpbWUgcHJvcG9ydGlvbmFsIHRvIHRoZSBudW1i
ZXIgb2YgcGVuZGluZyByZXNvdXJjZXMgYW5kIG5lZWQgbm90LgogICAgIC8vIElmIHBlcmZvcm1h
bmNlIGJlY29tZXMgYW4gaXNzdWUgd2UgY2FuIGtlZXAgYSBjb3VudGVkIHNldCBvZiBlbGVtZW50
cyBhbmQgYW5zd2VyIHRoZSBxdWVzdGlvbiBlZmZpY2llbnRseS4KICAgICBBU1NFUlQoZWxlbWVu
dCk7Ci0gICAgZm9yIChhdXRvJiBlbGVtZW50cyA6IG1fcGVuZGluZ1Jlc291cmNlcy52YWx1ZXMo
KSkgeworICAgIGF1dG8gZW5kID0gbV9wZW5kaW5nUmVzb3VyY2VzLmVuZCgpOworICAgIGZvciAo
YXV0byBpdCA9IG1fcGVuZGluZ1Jlc291cmNlcy5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQpIHsK
KyAgICAgICAgUGVuZGluZ0VsZW1lbnRzKiBlbGVtZW50cyA9IGl0LT52YWx1ZS5nZXQoKTsKICAg
ICAgICAgQVNTRVJUKGVsZW1lbnRzKTsKIAogICAgICAgICBpZiAoZWxlbWVudHMtPmNvbnRhaW5z
KGVsZW1lbnQpKQpAQCAtMTk5LDM5ICsyMDUsNDMgQEAgdm9pZCBTVkdEb2N1bWVudEV4dGVuc2lv
bnM6OnJlbW92ZUVsZW1lbnRGcm9tUGVuZGluZ1Jlc291cmNlcyhFbGVtZW50KiBlbGVtZW50KQog
ICAgIC8vIFJlbW92ZSB0aGUgZWxlbWVudCBmcm9tIHBlbmRpbmcgcmVzb3VyY2VzLgogICAgIGlm
ICghbV9wZW5kaW5nUmVzb3VyY2VzLmlzRW1wdHkoKSAmJiBlbGVtZW50LT5oYXNQZW5kaW5nUmVz
b3VyY2VzKCkpIHsKICAgICAgICAgVmVjdG9yPEF0b21pY1N0cmluZz4gdG9CZVJlbW92ZWQ7Ci0g
ICAgICAgIGZvciAoYXV0byYgcmVzb3VyY2UgOiBtX3BlbmRpbmdSZXNvdXJjZXMpIHsKLSAgICAg
ICAgICAgIFBlbmRpbmdFbGVtZW50cyogZWxlbWVudHMgPSByZXNvdXJjZS52YWx1ZS5nZXQoKTsK
KyAgICAgICAgYXV0byBlbmQgPSBtX3BlbmRpbmdSZXNvdXJjZXMuZW5kKCk7CisgICAgICAgIGZv
ciAoYXV0byBpdCA9IG1fcGVuZGluZ1Jlc291cmNlcy5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQp
IHsKKyAgICAgICAgICAgIFBlbmRpbmdFbGVtZW50cyogZWxlbWVudHMgPSBpdC0+dmFsdWUuZ2V0
KCk7CiAgICAgICAgICAgICBBU1NFUlQoZWxlbWVudHMpOwogICAgICAgICAgICAgQVNTRVJUKCFl
bGVtZW50cy0+aXNFbXB0eSgpKTsKIAogICAgICAgICAgICAgZWxlbWVudHMtPnJlbW92ZShlbGVt
ZW50KTsKICAgICAgICAgICAgIGlmIChlbGVtZW50cy0+aXNFbXB0eSgpKQotICAgICAgICAgICAg
ICAgIHRvQmVSZW1vdmVkLmFwcGVuZChyZXNvdXJjZS5rZXkpOworICAgICAgICAgICAgICAgIHRv
QmVSZW1vdmVkLmFwcGVuZChpdC0+a2V5KTsKICAgICAgICAgfQogCiAgICAgICAgIGNsZWFySGFz
UGVuZGluZ1Jlc291cmNlc0lmUG9zc2libGUoZWxlbWVudCk7CiAKICAgICAgICAgLy8gV2UgdXNl
IHRoZSByZW1vdmVQZW5kaW5nUmVzb3VyY2UgZnVuY3Rpb24gaGVyZSBiZWNhdXNlIGl0IGRlYWxz
IHdpdGggc2V0IGxpZmV0aW1lIGNvcnJlY3RseS4KLSAgICAgICAgZm9yIChhdXRvJiByZXNvdXJj
ZSA6IHRvQmVSZW1vdmVkKQotICAgICAgICAgICAgcmVtb3ZlUGVuZGluZ1Jlc291cmNlKHJlc291
cmNlKTsKKyAgICAgICAgYXV0byB2ZWN0b3JFbmQgPSB0b0JlUmVtb3ZlZC5lbmQoKTsKKyAgICAg
ICAgZm9yIChhdXRvIGl0ID0gdG9CZVJlbW92ZWQuYmVnaW4oKTsgaXQgIT0gdmVjdG9yRW5kOyAr
K2l0KQorICAgICAgICAgICAgcmVtb3ZlUGVuZGluZ1Jlc291cmNlKCppdCk7CiAgICAgfQogCiAg
ICAgLy8gUmVtb3ZlIHRoZSBlbGVtZW50IGZyb20gcGVuZGluZyByZXNvdXJjZXMgdGhhdCB3ZXJl
IHNjaGVkdWxlZCBmb3IgcmVtb3ZhbC4KICAgICBpZiAoIW1fcGVuZGluZ1Jlc291cmNlc0ZvclJl
bW92YWwuaXNFbXB0eSgpKSB7CiAgICAgICAgIFZlY3RvcjxBdG9taWNTdHJpbmc+IHRvQmVSZW1v
dmVkOwotICAgICAgICBmb3IgKGF1dG8mIHJlc291cmNlIDogbV9wZW5kaW5nUmVzb3VyY2VzRm9y
UmVtb3ZhbCkgewotICAgICAgICAgICAgUGVuZGluZ0VsZW1lbnRzKiBlbGVtZW50cyA9IHJlc291
cmNlLnZhbHVlLmdldCgpOworICAgICAgICBhdXRvIGVuZCA9IG1fcGVuZGluZ1Jlc291cmNlc0Zv
clJlbW92YWwuZW5kKCk7CisgICAgICAgIGZvciAoYXV0byBpdCA9IG1fcGVuZGluZ1Jlc291cmNl
c0ZvclJlbW92YWwuYmVnaW4oKTsgaXQgIT0gZW5kOyArK2l0KSB7CisgICAgICAgICAgICBQZW5k
aW5nRWxlbWVudHMqIGVsZW1lbnRzID0gaXQtPnZhbHVlLmdldCgpOwogICAgICAgICAgICAgQVNT
RVJUKGVsZW1lbnRzKTsKICAgICAgICAgICAgIEFTU0VSVCghZWxlbWVudHMtPmlzRW1wdHkoKSk7
CiAKICAgICAgICAgICAgIGVsZW1lbnRzLT5yZW1vdmUoZWxlbWVudCk7CiAgICAgICAgICAgICBp
ZiAoZWxlbWVudHMtPmlzRW1wdHkoKSkKLSAgICAgICAgICAgICAgICB0b0JlUmVtb3ZlZC5hcHBl
bmQocmVzb3VyY2Uua2V5KTsKKyAgICAgICAgICAgICAgICB0b0JlUmVtb3ZlZC5hcHBlbmQoaXQt
PmtleSk7CiAgICAgICAgIH0KIAogICAgICAgICAvLyBXZSB1c2UgdGhlIHJlbW92ZVBlbmRpbmdS
ZXNvdXJjZUZvclJlbW92YWwgZnVuY3Rpb24gaGVyZSBiZWNhdXNlIGl0IGRlYWxzIHdpdGggc2V0
IGxpZmV0aW1lIGNvcnJlY3RseS4KLSAgICAgICAgZm9yIChhdXRvJiByZXNvdXJjZSA6IHRvQmVS
ZW1vdmVkKQotICAgICAgICAgICAgcmVtb3ZlUGVuZGluZ1Jlc291cmNlRm9yUmVtb3ZhbChyZXNv
dXJjZSk7CisgICAgICAgIGF1dG8gdmVjdG9yRW5kID0gdG9CZVJlbW92ZWQuZW5kKCk7CisgICAg
ICAgIGZvciAoYXV0byBpdCA9IHRvQmVSZW1vdmVkLmJlZ2luKCk7IGl0ICE9IHZlY3RvckVuZDsg
KytpdCkKKyAgICAgICAgICAgIHJlbW92ZVBlbmRpbmdSZXNvdXJjZUZvclJlbW92YWwoKml0KTsK
ICAgICB9CiB9CiAKQEAgLTMwNywxNiArMzE3LDE4IEBAIHZvaWQgU1ZHRG9jdW1lbnRFeHRlbnNp
b25zOjpyZW1vdmVBbGxUYXJnZXRSZWZlcmVuY2VzRm9yRWxlbWVudChTVkdFbGVtZW50KiByZWZl
CiB7CiAgICAgVmVjdG9yPFNWR0VsZW1lbnQqPiB0b0JlUmVtb3ZlZDsKIAotICAgIGZvciAoYXV0
byYgZGVwZW5kZW5jeSA6IG1fZWxlbWVudERlcGVuZGVuY2llcykgewotICAgICAgICBTVkdFbGVt
ZW50KiByZWZlcmVuY2VkRWxlbWVudCA9IGRlcGVuZGVuY3kua2V5OwotICAgICAgICBIYXNoU2V0
PFNWR0VsZW1lbnQqPiYgcmVmZXJlbmNpbmdFbGVtZW50cyA9ICpkZXBlbmRlbmN5LnZhbHVlOwor
ICAgIGF1dG8gZW5kID0gbV9lbGVtZW50RGVwZW5kZW5jaWVzLmVuZCgpOworICAgIGZvciAoYXV0
byBpdCA9IG1fZWxlbWVudERlcGVuZGVuY2llcy5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQpIHsK
KyAgICAgICAgU1ZHRWxlbWVudCogcmVmZXJlbmNlZEVsZW1lbnQgPSBpdC0+a2V5OworICAgICAg
ICBIYXNoU2V0PFNWR0VsZW1lbnQqPiYgcmVmZXJlbmNpbmdFbGVtZW50cyA9ICppdC0+dmFsdWU7
CiAgICAgICAgIHJlZmVyZW5jaW5nRWxlbWVudHMucmVtb3ZlKHJlZmVyZW5jaW5nRWxlbWVudCk7
CiAgICAgICAgIGlmIChyZWZlcmVuY2luZ0VsZW1lbnRzLmlzRW1wdHkoKSkKICAgICAgICAgICAg
IHRvQmVSZW1vdmVkLmFwcGVuZChyZWZlcmVuY2VkRWxlbWVudCk7CiAgICAgfQogCi0gICAgZm9y
IChhdXRvJiBlbGVtZW50IDogdG9CZVJlbW92ZWQpCi0gICAgICAgIG1fZWxlbWVudERlcGVuZGVu
Y2llcy5yZW1vdmUoZWxlbWVudCk7CisgICAgYXV0byB2ZWN0b3JFbmQgPSB0b0JlUmVtb3ZlZC5l
bmQoKTsKKyAgICBmb3IgKGF1dG8gaXQgPSB0b0JlUmVtb3ZlZC5iZWdpbigpOyBpdCAhPSB2ZWN0
b3JFbmQ7ICsraXQpCisgICAgICAgIG1fZWxlbWVudERlcGVuZGVuY2llcy5yZW1vdmUoKml0KTsK
IH0KIAogdm9pZCBTVkdEb2N1bWVudEV4dGVuc2lvbnM6OnJlYnVpbGRFbGVtZW50cygpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHRWxlbWVudC5jcHAKaW5kZXggNGZjOWZmZTBiZjhiNmFmNmI2NTBkMDY1NDcxYjc4
NzcwOGRmMjA1MC4uZDMxYjQyNzUyM2U0ZjE1Yjk0MGM4ZTBmNWI0M2IzOTRjY2Q1OTMyMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmNwcApAQCAtMTUwLDggKzE1MCw4IEBAIHN0YXRpYyBORVZF
Ul9JTkxJTkUgdm9pZCBwb3B1bGF0ZUF0dHJpYnV0ZU5hbWVUb0NTU1Byb3BlcnR5SURNYXAoSGFz
aE1hcDxBdG9taWNTCiAgICAgICAgICZ5QXR0ciwKICAgICB9OwogCi0gICAgZm9yIChhdXRvJiBu
YW1lIDogYXR0cmlidXRlTmFtZXMpIHsKLSAgICAgICAgY29uc3QgQXRvbWljU3RyaW5nJiBsb2Nh
bE5hbWUgPSBuYW1lLT5sb2NhbE5hbWUoKTsKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwg
V1RGX0FSUkFZX0xFTkdUSChhdHRyaWJ1dGVOYW1lcyk7ICsraSkgeworICAgICAgICBjb25zdCBB
dG9taWNTdHJpbmcmIGxvY2FsTmFtZSA9IGF0dHJpYnV0ZU5hbWVzW2ldLT5sb2NhbE5hbWUoKTsK
ICAgICAgICAgbWFwLmFkZChsb2NhbE5hbWUuaW1wbCgpLCBjc3NQcm9wZXJ0eUlEKGxvY2FsTmFt
ZSkpOwogICAgIH0KIApAQCAtMjI5LDggKzIyOSw4IEBAIHN0YXRpYyBORVZFUl9JTkxJTkUgdm9p
ZCBwb3B1bGF0ZUF0dHJpYnV0ZU5hbWVUb0FuaW1hdGVkUHJvcGVydHlUeXBlTWFwKEhhc2hNYXA8
CiAgICAgICAgIHsgd29yZF9zcGFjaW5nQXR0ciwgQW5pbWF0ZWRMZW5ndGggfSwKICAgICB9Owog
Ci0gICAgZm9yIChhdXRvJiBlbnRyeSA6IHRhYmxlKQotICAgICAgICBtYXAuYWRkKGVudHJ5LmF0
dHJpYnV0ZU5hbWUuaW1wbCgpLCBlbnRyeS50eXBlKTsKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAw
OyBpIDwgV1RGX0FSUkFZX0xFTkdUSCh0YWJsZSk7ICsraSkKKyAgICAgICAgbWFwLmFkZCh0YWJs
ZVtpXS5hdHRyaWJ1dGVOYW1lLmltcGwoKSwgdGFibGVbaV0udHlwZSk7CiB9CiAKIHN0YXRpYyBp
bmxpbmUgSGFzaE1hcDxRdWFsaWZpZWROYW1lOjpRdWFsaWZpZWROYW1lSW1wbCosIEFuaW1hdGVk
UHJvcGVydHlUeXBlPiYgYXR0cmlidXRlTmFtZVRvQW5pbWF0ZWRQcm9wZXJ0eVR5cGVNYXAoKQpA
QCAtMjYzLDggKzI2Myw4IEBAIHN0YXRpYyBORVZFUl9JTkxJTkUgdm9pZCBwb3B1bGF0ZUNTU1By
b3BlcnR5V2l0aFNWR0RPTU5hbWVUb0FuaW1hdGVkUHJvcGVydHlUeXBlCiAgICAgICAgIHsgeUF0
dHIsIEFuaW1hdGVkTGVuZ3RoIH0sCiAgICAgfTsKIAotICAgIGZvciAoYXV0byYgZW50cnkgOiB0
YWJsZSkKLSAgICAgICAgbWFwLmFkZChlbnRyeS5hdHRyaWJ1dGVOYW1lLmltcGwoKSwgZW50cnku
dHlwZSk7CisgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IFdURl9BUlJBWV9MRU5HVEgodGFi
bGUpOyArK2kpCisgICAgICAgIG1hcC5hZGQodGFibGVbaV0uYXR0cmlidXRlTmFtZS5pbXBsKCks
IHRhYmxlW2ldLnR5cGUpOwogfQogCiBzdGF0aWMgaW5saW5lIEhhc2hNYXA8UXVhbGlmaWVkTmFt
ZTo6UXVhbGlmaWVkTmFtZUltcGwqLCBBbmltYXRlZFByb3BlcnR5VHlwZT4mIGNzc1Byb3BlcnR5
V2l0aFNWR0RPTU5hbWVUb0FuaW1hdGVkUHJvcGVydHlUeXBlTWFwKCkKQEAgLTYzOSw4ICs2Mzks
OCBAQCBzdGF0aWMgYm9vbCBoYXNMb2FkTGlzdGVuZXIoRWxlbWVudCogZWxlbWVudCkKIAogICAg
IGZvciAoZWxlbWVudCA9IGVsZW1lbnQtPnBhcmVudE9yU2hhZG93SG9zdEVsZW1lbnQoKTsgZWxl
bWVudDsgZWxlbWVudCA9IGVsZW1lbnQtPnBhcmVudE9yU2hhZG93SG9zdEVsZW1lbnQoKSkgewog
ICAgICAgICBjb25zdCBFdmVudExpc3RlbmVyVmVjdG9yJiBlbnRyeSA9IGVsZW1lbnQtPmdldEV2
ZW50TGlzdGVuZXJzKGV2ZW50TmFtZXMoKS5sb2FkRXZlbnQpOwotICAgICAgICBmb3IgKGF1dG8m
IGxpc3RlbmVyIDogZW50cnkpIHsKLSAgICAgICAgICAgIGlmIChsaXN0ZW5lci51c2VDYXB0dXJl
KQorICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGVudHJ5LnNpemUoKTsgKytpKSB7Cisg
ICAgICAgICAgICBpZiAoZW50cnlbaV0udXNlQ2FwdHVyZSkKICAgICAgICAgICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICAgICAgfQogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdGb250RGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRm9udERhdGEuY3BwCmlu
ZGV4IDYxMDQ3NTI2OWQ4ZGI4ZjVkYTdmNTVmMTE4YzczZmQzNjI2ZDMyOWMuLjUyODk0MDM3YjI0
OWFkOTVjYmZiYzYxODRkYmQ4OTYwYjBjYmQ3MTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdGb250RGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnREYXRh
LmNwcApAQCAtMTYxLDE3ICsxNjEsMTkgQEAgYm9vbCBTVkdGb250RGF0YTo6YXBwbHlTVkdHbHlw
aFNlbGVjdGlvbihXaWR0aEl0ZXJhdG9yJiBpdGVyYXRvciwgR2x5cGhEYXRhJiBnbHkKICAgICB9
CiAKICAgICBWZWN0b3I8U1ZHR2x5cGg+IGdseXBoczsKLSAgICBpZiAoIWFsdEdseXBoTmFtZXMu
aXNFbXB0eSgpKSB7Ci0gICAgICAgIGZvciAoYXV0byYgbmFtZSA6IGFsdEdseXBoTmFtZXMpCi0g
ICAgICAgICAgICBhc3NvY2lhdGVkRm9udEVsZW1lbnQtPmNvbGxlY3RHbHlwaHNGb3JHbHlwaE5h
bWUobmFtZSwgZ2x5cGhzKTsKKyAgICBzaXplX3QgYWx0R2x5cGhOYW1lc1NpemUgPSBhbHRHbHlw
aE5hbWVzLnNpemUoKTsKKyAgICBpZiAoYWx0R2x5cGhOYW1lc1NpemUpIHsKKyAgICAgICAgZm9y
IChzaXplX3QgaW5kZXggPSAwOyBpbmRleCA8IGFsdEdseXBoTmFtZXNTaXplOyArK2luZGV4KQor
ICAgICAgICAgICAgYXNzb2NpYXRlZEZvbnRFbGVtZW50LT5jb2xsZWN0R2x5cGhzRm9yR2x5cGhO
YW1lKGFsdEdseXBoTmFtZXNbaW5kZXhdLCBnbHlwaHMpOwogCiAgICAgICAgIC8vIEFzc2lnbiB0
aGUgdW5pY29kZVN0cmluZ0xlbmd0aCBub3cgdGhhdCBpdHMga25vd24uCi0gICAgICAgIGZvciAo
YXV0byYgZ2x5cGggOiBnbHlwaHMpCi0gICAgICAgICAgICBnbHlwaC51bmljb2RlU3RyaW5nTGVu
Z3RoID0gcnVuLmxlbmd0aCgpOworICAgICAgICBzaXplX3QgZ2x5cGhzU2l6ZSA9IGdseXBocy5z
aXplKCk7CisgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZ2x5cGhzU2l6ZTsgKytpKQor
ICAgICAgICAgICAgZ2x5cGhzW2ldLnVuaWNvZGVTdHJpbmdMZW5ndGggPSBydW4ubGVuZ3RoKCk7
CiAKICAgICAgICAgLy8gRG8gbm90IGNoZWNrIGFsdCBnbHlwaHMgZm9yIGNvbXBhdGliaWxpdHku
IEp1c3QgcmV0dXJuIHRoZSBmaXJzdCBvbmUuCiAgICAgICAgIC8vIExhdGVyIGNvZGUgd2lsbCBm
YWlsIGlmIHdlIGRvIG5vdCBkbyB0aGlzIGFuZCB0aGUgZ2x5cGggaXMgaW5jb21wYXRpYmxlLgot
ICAgICAgICBpZiAoIWdseXBocy5pc0VtcHR5KCkpIHsKKyAgICAgICAgaWYgKGdseXBoc1NpemUp
IHsKICAgICAgICAgICAgIFNWR0dseXBoJiBzdmdHbHlwaCA9IGdseXBoc1swXTsKICAgICAgICAg
ICAgIGl0ZXJhdG9yLnNldExhc3RHbHlwaE5hbWUoc3ZnR2x5cGguZ2x5cGhOYW1lKTsKICAgICAg
ICAgICAgIGdseXBoRGF0YS5nbHlwaCA9IHN2Z0dseXBoLnRhYmxlRW50cnk7CkBAIC0xODksMTQg
KzE5MSwxNiBAQCBib29sIFNWR0ZvbnREYXRhOjphcHBseVNWR0dseXBoU2VsZWN0aW9uKFdpZHRo
SXRlcmF0b3ImIGl0ZXJhdG9yLCBHbHlwaERhdGEmIGdseQogICAgICAgICBhc3NvY2lhdGVkRm9u
dEVsZW1lbnQtPmNvbGxlY3RHbHlwaHNGb3JTdHJpbmcocmVtYWluaW5nVGV4dEluUnVuLCBnbHlw
aHMpOwogICAgIH0KIAotICAgIGZvciAoYXV0byYgZ2x5cGggOiBnbHlwaHMpIHsKLSAgICAgICAg
aWYgKGdseXBoLmlzUGFydE9mTGlnYXR1cmUpCisgICAgc2l6ZV90IGdseXBoc1NpemUgPSBnbHlw
aHMuc2l6ZSgpOworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZ2x5cGhzU2l6ZTsgKytpKSB7
CisgICAgICAgIFNWR0dseXBoJiBzdmdHbHlwaCA9IGdseXBoc1tpXTsKKyAgICAgICAgaWYgKHN2
Z0dseXBoLmlzUGFydE9mTGlnYXR1cmUpCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAg
aWYgKCFpc0NvbXBhdGlibGVHbHlwaChnbHlwaCwgaXNWZXJ0aWNhbFRleHQsIGxhbmd1YWdlLCBh
cmFiaWNGb3JtcywgY3VycmVudENoYXJhY3RlciwgY3VycmVudENoYXJhY3RlciArIGdseXBoLnVu
aWNvZGVTdHJpbmdMZW5ndGgpKQorICAgICAgICBpZiAoIWlzQ29tcGF0aWJsZUdseXBoKHN2Z0ds
eXBoLCBpc1ZlcnRpY2FsVGV4dCwgbGFuZ3VhZ2UsIGFyYWJpY0Zvcm1zLCBjdXJyZW50Q2hhcmFj
dGVyLCBjdXJyZW50Q2hhcmFjdGVyICsgc3ZnR2x5cGgudW5pY29kZVN0cmluZ0xlbmd0aCkpCiAg
ICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgaXRlcmF0b3Iuc2V0TGFzdEdseXBoTmFtZShn
bHlwaC5nbHlwaE5hbWUpOwotICAgICAgICBnbHlwaERhdGEuZ2x5cGggPSBnbHlwaC50YWJsZUVu
dHJ5OwotICAgICAgICBhZHZhbmNlTGVuZ3RoID0gZ2x5cGgudW5pY29kZVN0cmluZ0xlbmd0aDsK
KyAgICAgICAgaXRlcmF0b3Iuc2V0TGFzdEdseXBoTmFtZShzdmdHbHlwaC5nbHlwaE5hbWUpOwor
ICAgICAgICBnbHlwaERhdGEuZ2x5cGggPSBzdmdHbHlwaC50YWJsZUVudHJ5OworICAgICAgICBh
ZHZhbmNlTGVuZ3RoID0gc3ZnR2x5cGgudW5pY29kZVN0cmluZ0xlbmd0aDsKICAgICAgICAgcmV0
dXJuIHRydWU7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRm9u
dEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRFbGVtZW50LmNwcAppbmRl
eCAxMTQ4ODEyMjQ5YzI4ZTc0NGU2ZDc5YjI5ZDlmMDUzNzg2NGI4OTY2Li4xYTA2OTEzMGU3MWZi
ZTc5ZmRlMTE5ZWI4NmZmMjExYTQwZTMwM2ZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHRm9udEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RWxl
bWVudC5jcHAKQEAgLTg2LDcgKzg2LDEwIEBAIHZvaWQgU1ZHRm9udEVsZW1lbnQ6OnJlZ2lzdGVy
TGlnYXR1cmVzSW5HbHlwaENhY2hlKFZlY3RvcjxTdHJpbmc+JiBsaWdhdHVyZXMpCiAgICAgLy8g
d2lsbCBub3QgYmUgYWJsZSB0byBmaW5kIGEgZ2x5cGggZm9yICJmIiwgYnV0IGhhbmRsZXMgdGhl
IGZhbGxiYWNrCiAgICAgLy8gY2hhcmFjdGVyIHN1YnN0aXR1dGlvbiBwcm9wZXJseSB0aHJvdWdo
IGdseXBoRGF0YUZvckNoYXJhY3RlcigpLgogICAgIFZlY3RvcjxTVkdHbHlwaD4gZ2x5cGhzOwot
ICAgIGZvciAoYXV0byYgdW5pY29kZSA6IGxpZ2F0dXJlcykgeworICAgIHNpemVfdCBsaWdhdHVy
ZXNTaXplID0gbGlnYXR1cmVzLnNpemUoKTsKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGxp
Z2F0dXJlc1NpemU7ICsraSkgeworICAgICAgICBjb25zdCBTdHJpbmcmIHVuaWNvZGUgPSBsaWdh
dHVyZXNbaV07CisKICAgICAgICAgdW5zaWduZWQgdW5pY29kZUxlbmd0aCA9IHVuaWNvZGUubGVu
Z3RoKCk7CiAgICAgICAgIEFTU0VSVCh1bmljb2RlTGVuZ3RoID4gMSk7CiAKQEAgLTE3MSwyMyAr
MTc0LDI3IEBAIHZvaWQgU1ZHS2VybmluZ01hcDo6aW5zZXJ0KGNvbnN0IFNWR0tlcm5pbmdQYWly
JiBrZXJuaW5nUGFpcikKICAgICBzdmdLZXJuaW5nLnVuaWNvZGVOYW1lMiA9IGtlcm5pbmdQYWly
LnVuaWNvZGVOYW1lMjsKICAgICBzdmdLZXJuaW5nLmdseXBoTmFtZTIgPSBrZXJuaW5nUGFpci5n
bHlwaE5hbWUyOwogCi0gICAgZm9yIChhdXRvJiBuYW1lIDoga2VybmluZ1BhaXIudW5pY29kZU5h
bWUxKSB7Ci0gICAgICAgIGlmICh1bmljb2RlTWFwLmNvbnRhaW5zKG5hbWUpKQotICAgICAgICAg
ICAgdW5pY29kZU1hcC5nZXQobmFtZSktPmFwcGVuZChzdmdLZXJuaW5nKTsKKyAgICBIYXNoU2V0
PFN0cmluZz46OmNvbnN0X2l0ZXJhdG9yIHVJdCA9IGtlcm5pbmdQYWlyLnVuaWNvZGVOYW1lMS5i
ZWdpbigpOworICAgIGNvbnN0IEhhc2hTZXQ8U3RyaW5nPjo6Y29uc3RfaXRlcmF0b3IgdUVuZCA9
IGtlcm5pbmdQYWlyLnVuaWNvZGVOYW1lMS5lbmQoKTsKKyAgICBmb3IgKDsgdUl0ICE9IHVFbmQ7
ICsrdUl0KSB7CisgICAgICAgIGlmICh1bmljb2RlTWFwLmNvbnRhaW5zKCp1SXQpKQorICAgICAg
ICAgICAgdW5pY29kZU1hcC5nZXQoKnVJdCktPmFwcGVuZChzdmdLZXJuaW5nKTsKICAgICAgICAg
ZWxzZSB7CiAgICAgICAgICAgICBhdXRvIG5ld1ZlY3RvciA9IHN0ZDo6bWFrZV91bmlxdWU8U1ZH
S2VybmluZ1ZlY3Rvcj4oKTsKICAgICAgICAgICAgIG5ld1ZlY3Rvci0+YXBwZW5kKHN2Z0tlcm5p
bmcpOwotICAgICAgICAgICAgdW5pY29kZU1hcC5hZGQobmFtZSwgV1RGOjptb3ZlKG5ld1ZlY3Rv
cikpOworICAgICAgICAgICAgdW5pY29kZU1hcC5hZGQoKnVJdCwgV1RGOjptb3ZlKG5ld1ZlY3Rv
cikpOwogICAgICAgICB9CiAgICAgfQogCi0gICAgZm9yIChhdXRvJiBuYW1lIDoga2VybmluZ1Bh
aXIuZ2x5cGhOYW1lMSkgewotICAgICAgICBpZiAoZ2x5cGhNYXAuY29udGFpbnMobmFtZSkpCi0g
ICAgICAgICAgICBnbHlwaE1hcC5nZXQobmFtZSktPmFwcGVuZChzdmdLZXJuaW5nKTsKKyAgICBI
YXNoU2V0PFN0cmluZz46OmNvbnN0X2l0ZXJhdG9yIGdJdCA9IGtlcm5pbmdQYWlyLmdseXBoTmFt
ZTEuYmVnaW4oKTsKKyAgICBjb25zdCBIYXNoU2V0PFN0cmluZz46OmNvbnN0X2l0ZXJhdG9yIGdF
bmQgPSBrZXJuaW5nUGFpci5nbHlwaE5hbWUxLmVuZCgpOworICAgIGZvciAoOyBnSXQgIT0gZ0Vu
ZDsgKytnSXQpIHsKKyAgICAgICAgaWYgKGdseXBoTWFwLmNvbnRhaW5zKCpnSXQpKQorICAgICAg
ICAgICAgZ2x5cGhNYXAuZ2V0KCpnSXQpLT5hcHBlbmQoc3ZnS2VybmluZyk7CiAgICAgICAgIGVs
c2UgewogICAgICAgICAgICAgYXV0byBuZXdWZWN0b3IgPSBzdGQ6Om1ha2VfdW5pcXVlPFNWR0tl
cm5pbmdWZWN0b3I+KCk7CiAgICAgICAgICAgICBuZXdWZWN0b3ItPmFwcGVuZChzdmdLZXJuaW5n
KTsKLSAgICAgICAgICAgIGdseXBoTWFwLmFkZChuYW1lLCBXVEY6Om1vdmUobmV3VmVjdG9yKSk7
CisgICAgICAgICAgICBnbHlwaE1hcC5hZGQoKmdJdCwgV1RGOjptb3ZlKG5ld1ZlY3RvcikpOwog
ICAgICAgICB9CiAgICAgfQogCkBAIC0yMDIsOCArMjA5LDkgQEAgc3RhdGljIGlubGluZSBib29s
IHN0cmluZ01hdGNoZXNVbmljb2RlUmFuZ2UoY29uc3QgU3RyaW5nJiB1bmljb2RlU3RyaW5nLCBj
b25zdAogCiAgICAgaWYgKCFyYW5nZXMuaXNFbXB0eSgpKSB7CiAgICAgICAgIFVDaGFyIGZpcnN0
Q2hhciA9IHVuaWNvZGVTdHJpbmdbMF07Ci0gICAgICAgIGZvciAoYXV0byYgcmFuZ2UgOiByYW5n
ZXMpIHsKLSAgICAgICAgICAgIGlmIChmaXJzdENoYXIgPj0gcmFuZ2UuZmlyc3QgJiYgZmlyc3RD
aGFyIDw9IHJhbmdlLnNlY29uZCkKKyAgICAgICAgY29uc3QgVW5pY29kZVJhbmdlczo6Y29uc3Rf
aXRlcmF0b3IgZW5kID0gcmFuZ2VzLmVuZCgpOworICAgICAgICBmb3IgKFVuaWNvZGVSYW5nZXM6
OmNvbnN0X2l0ZXJhdG9yIGl0ID0gcmFuZ2VzLmJlZ2luKCk7IGl0ICE9IGVuZDsgKytpdCkgewor
ICAgICAgICAgICAgaWYgKGZpcnN0Q2hhciA+PSBpdC0+Zmlyc3QgJiYgZmlyc3RDaGFyIDw9IGl0
LT5zZWNvbmQpCiAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIH0KICAgICB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHUGF0aEJ5dGVTdHJlYW0uaCBiL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoQnl0ZVN0cmVhbS5oCmluZGV4IGE3NWFiNDY3MmUyOWEw
MWM0YWY0ZWY0OWQ0ZWRkNGE1YmMyOTViNjAuLjlkOWQyYTJiMjNjNjAwZmViYjUzNDBjYmNkZDFi
NjFkZGMzYjlmMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoQnl0ZVN0
cmVhbS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoQnl0ZVN0cmVhbS5oCkBAIC01
OCwxMCArNTgsMTAgQEAgcHVibGljOgogICAgIERhdGFJdGVyYXRvciBiZWdpbigpIHsgcmV0dXJu
IG1fZGF0YS5iZWdpbigpOyB9CiAgICAgRGF0YUl0ZXJhdG9yIGVuZCgpIHsgcmV0dXJuIG1fZGF0
YS5lbmQoKTsgfQogICAgIHZvaWQgYXBwZW5kKHVuc2lnbmVkIGNoYXIgYnl0ZSkgeyBtX2RhdGEu
YXBwZW5kKGJ5dGUpOyB9Ci0gICAgdm9pZCBhcHBlbmQoU1ZHUGF0aEJ5dGVTdHJlYW0mIG90aGVy
KQorICAgIHZvaWQgYXBwZW5kKFNWR1BhdGhCeXRlU3RyZWFtKiBvdGhlcikKICAgICB7Ci0gICAg
ICAgIGZvciAoYXV0byBzdHJlYW0gOiBvdGhlcikKLSAgICAgICAgICAgIGFwcGVuZChzdHJlYW0p
OworICAgICAgICBmb3IgKERhdGFJdGVyYXRvciBpdCA9IG90aGVyLT5iZWdpbigpOyBpdCAhPSBv
dGhlci0+ZW5kKCk7ICsraXQpCisgICAgICAgICAgICBhcHBlbmQoKml0KTsKICAgICB9CiAgICAg
dm9pZCBjbGVhcigpIHsgbV9kYXRhLmNsZWFyKCk7IH0KICAgICBib29sIGlzRW1wdHkoKSBjb25z
dCB7IHJldHVybiAhbV9kYXRhLnNpemUoKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR1BhdGhVdGlsaXRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1BhdGhVdGls
aXRpZXMuY3BwCmluZGV4IDcxMDYwNTZjMzkwMWQ4NGFjOTI2YWQxYzNiYjJkNjEzNWQ1ZWYzNzcu
LmMzMjM5NTIyMTU3MjVkN2Q5YWNmYTk3ZTg1NWY5YzEzNDBjYzhkYWUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdQYXRoVXRpbGl0aWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHUGF0aFV0aWxpdGllcy5jcHAKQEAgLTE1NSw3ICsxNTUsNyBAQCBib29sIGFwcGVu
ZFNWR1BhdGhCeXRlU3RyZWFtRnJvbVNWR1BhdGhTZWcoUGFzc1JlZlB0cjxTVkdQYXRoU2VnPiBw
YXRoU2VnLCBTVkdQYQogICAgIHBhcnNlci0+Y2xlYW51cCgpOwogCiAgICAgaWYgKG9rKQotICAg
ICAgICByZXN1bHQtPmFwcGVuZCgqYXBwZW5kZWRCeXRlU3RyZWFtKTsKKyAgICAgICAgcmVzdWx0
LT5hcHBlbmQoYXBwZW5kZWRCeXRlU3RyZWFtLmdldCgpKTsKIAogICAgIHJldHVybiBvazsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9hbmltYXRpb24vU01JTFRpbWVDb250YWlu
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL2FuaW1hdGlvbi9TTUlMVGltZUNvbnRhaW5lci5j
cHAKaW5kZXggMzk5Y2NiNDk3OTM5MjRlODkxZTBiMTc3MWFhNmE2OGFkY2VjYjMzMS4uNTMyNjhh
ZGEzNmVhNTM1ZmE3OGU3YmNlNjRjY2QyMDJmZmU5MWU1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvc3ZnL2FuaW1hdGlvbi9TTUlMVGltZUNvbnRhaW5lci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvc3ZnL2FuaW1hdGlvbi9TTUlMVGltZUNvbnRhaW5lci5jcHAKQEAgLTE4Nyw5ICsxODcs
MTEgQEAgdm9pZCBTTUlMVGltZUNvbnRhaW5lcjo6c2V0RWxhcHNlZChTTUlMVGltZSB0aW1lKQog
I2lmbmRlZiBOREVCVUcKICAgICBtX3ByZXZlbnRTY2hlZHVsZWRBbmltYXRpb25zQ2hhbmdlcyA9
IHRydWU7CiAjZW5kaWYKLSAgICBmb3IgKGF1dG8mIGFuaW1hdGlvbiA6IG1fc2NoZWR1bGVkQW5p
bWF0aW9ucy52YWx1ZXMoKSkgewotICAgICAgICBmb3IgKGF1dG8mIGVsZW1lbnQgOiAqYW5pbWF0
aW9uKQotICAgICAgICAgICAgZWxlbWVudC0+cmVzZXQoKTsKKyAgICBmb3IgKGF1dG8mIGl0IDog
bV9zY2hlZHVsZWRBbmltYXRpb25zKSB7CisgICAgICAgIEFuaW1hdGlvbnNWZWN0b3IqIHNjaGVk
dWxlZCA9IGl0LnZhbHVlLmdldCgpOworICAgICAgICB1bnNpZ25lZCBzaXplID0gc2NoZWR1bGVk
LT5zaXplKCk7CisgICAgICAgIGZvciAodW5zaWduZWQgbiA9IDA7IG4gPCBzaXplOyBuKyspCisg
ICAgICAgICAgICBzY2hlZHVsZWQtPmF0KG4pLT5yZXNldCgpOwogICAgIH0KICNpZm5kZWYgTkRF
QlVHCiAgICAgbV9wcmV2ZW50U2NoZWR1bGVkQW5pbWF0aW9uc0NoYW5nZXMgPSBmYWxzZTsKQEAg
LTI3Miw3ICsyNzQsOSBAQCB2b2lkIFNNSUxUaW1lQ29udGFpbmVyOjp1cGRhdGVBbmltYXRpb25z
KFNNSUxUaW1lIGVsYXBzZWQsIGJvb2wgc2Vla1RvVGltZSkKICAgICAgICAgc29ydEJ5UHJpb3Jp
dHkoKnNjaGVkdWxlZCwgZWxhcHNlZCk7CiAKICAgICAgICAgU1ZHU01JTEVsZW1lbnQqIHJlc3Vs
dEVsZW1lbnQgPSAwOwotICAgICAgICBmb3IgKGF1dG8mIGFuaW1hdGlvbiA6ICpzY2hlZHVsZWQp
IHsKKyAgICAgICAgdW5zaWduZWQgc2l6ZSA9IHNjaGVkdWxlZC0+c2l6ZSgpOworICAgICAgICBm
b3IgKHVuc2lnbmVkIG4gPSAwOyBuIDwgc2l6ZTsgbisrKSB7CisgICAgICAgICAgICBTVkdTTUlM
RWxlbWVudCogYW5pbWF0aW9uID0gc2NoZWR1bGVkLT5hdChuKTsKICAgICAgICAgICAgIEFTU0VS
VChhbmltYXRpb24tPnRpbWVDb250YWluZXIoKSA9PSB0aGlzKTsKICAgICAgICAgICAgIEFTU0VS
VChhbmltYXRpb24tPnRhcmdldEVsZW1lbnQoKSk7CiAgICAgICAgICAgICBBU1NFUlQoYW5pbWF0
aW9uLT5oYXNWYWxpZEF0dHJpYnV0ZU5hbWUoKSk7CkBAIC0yOTcsNyArMzAxLDggQEAgdm9pZCBT
TUlMVGltZUNvbnRhaW5lcjo6dXBkYXRlQW5pbWF0aW9ucyhTTUlMVGltZSBlbGFwc2VkLCBib29s
IHNlZWtUb1RpbWUpCiAgICAgICAgICAgICBhbmltYXRpb25zVG9BcHBseS5hcHBlbmQocmVzdWx0
RWxlbWVudCk7CiAgICAgfQogCi0gICAgaWYgKGFuaW1hdGlvbnNUb0FwcGx5LmlzRW1wdHkoKSkg
eworICAgIHVuc2lnbmVkIGFuaW1hdGlvbnNUb0FwcGx5U2l6ZSA9IGFuaW1hdGlvbnNUb0FwcGx5
LnNpemUoKTsKKyAgICBpZiAoIWFuaW1hdGlvbnNUb0FwcGx5U2l6ZSkgewogI2lmbmRlZiBOREVC
VUcKICAgICAgICAgbV9wcmV2ZW50U2NoZWR1bGVkQW5pbWF0aW9uc0NoYW5nZXMgPSBmYWxzZTsK
ICNlbmRpZgpAQCAtMzA2LDggKzMxMSw4IEBAIHZvaWQgU01JTFRpbWVDb250YWluZXI6OnVwZGF0
ZUFuaW1hdGlvbnMoU01JTFRpbWUgZWxhcHNlZCwgYm9vbCBzZWVrVG9UaW1lKQogICAgIH0KIAog
ICAgIC8vIEFwcGx5IHJlc3VsdHMgdG8gdGFyZ2V0IGVsZW1lbnRzLgotICAgIGZvciAoYXV0byYg
YW5pbWF0aW9uIDogYW5pbWF0aW9uc1RvQXBwbHkpCi0gICAgICAgIGFuaW1hdGlvbi0+YXBwbHlS
ZXN1bHRzVG9UYXJnZXQoKTsKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgYW5pbWF0aW9u
c1RvQXBwbHlTaXplOyArK2kpCisgICAgICAgIGFuaW1hdGlvbnNUb0FwcGx5W2ldLT5hcHBseVJl
c3VsdHNUb1RhcmdldCgpOwogCiAjaWZuZGVmIE5ERUJVRwogICAgIG1fcHJldmVudFNjaGVkdWxl
ZEFuaW1hdGlvbnNDaGFuZ2VzID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvYW5pbWF0aW9uL1NWR1NNSUxFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9hbmlt
YXRpb24vU1ZHU01JTEVsZW1lbnQuY3BwCmluZGV4IGM5OTBhYWE5MGZhOWJhZWE2YzdmZThmNGMy
MDNkODQ1YzI4ZGIxYzAuLmY1Y2FmNzRlNzE0MDY3NjcyNTJjODM1YjAyZDFiYWQxMTUxMzA1YTkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9hbmltYXRpb24vU1ZHU01JTEVsZW1lbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9hbmltYXRpb24vU1ZHU01JTEVsZW1lbnQuY3Bw
CkBAIC00MjEsMTQgKzQyMSwxNCBAQCB2b2lkIFNWR1NNSUxFbGVtZW50OjpwYXJzZUJlZ2luT3JF
bmQoY29uc3QgU3RyaW5nJiBwYXJzZVN0cmluZywgQmVnaW5PckVuZCBiZWdpbgogICAgIGlmIChi
ZWdpbk9yRW5kID09IEVuZCkKICAgICAgICAgbV9oYXNFbmRFdmVudENvbmRpdGlvbnMgPSBmYWxz
ZTsKICAgICBIYXNoU2V0PGRvdWJsZT4gZXhpc3Rpbmc7Ci0gICAgZm9yIChhdXRvJiB0aW1lIDog
dGltZUxpc3QpCi0gICAgICAgIGV4aXN0aW5nLmFkZCh0aW1lLnRpbWUoKS52YWx1ZSgpKTsKKyAg
ICBmb3IgKHVuc2lnbmVkIG4gPSAwOyBuIDwgdGltZUxpc3Quc2l6ZSgpOyArK24pCisgICAgICAg
IGV4aXN0aW5nLmFkZCh0aW1lTGlzdFtuXS50aW1lKCkudmFsdWUoKSk7CiAgICAgVmVjdG9yPFN0
cmluZz4gc3BsaXRTdHJpbmc7CiAgICAgcGFyc2VTdHJpbmcuc3BsaXQoJzsnLCBzcGxpdFN0cmlu
Zyk7Ci0gICAgZm9yIChhdXRvJiBzdHJpbmcgOiBzcGxpdFN0cmluZykgewotICAgICAgICBTTUlM
VGltZSB2YWx1ZSA9IHBhcnNlQ2xvY2tWYWx1ZShzdHJpbmcpOworICAgIGZvciAodW5zaWduZWQg
biA9IDA7IG4gPCBzcGxpdFN0cmluZy5zaXplKCk7ICsrbikgeworICAgICAgICBTTUlMVGltZSB2
YWx1ZSA9IHBhcnNlQ2xvY2tWYWx1ZShzcGxpdFN0cmluZ1tuXSk7CiAgICAgICAgIGlmICh2YWx1
ZS5pc1VucmVzb2x2ZWQoKSkKLSAgICAgICAgICAgIHBhcnNlQ29uZGl0aW9uKHN0cmluZywgYmVn
aW5PckVuZCk7CisgICAgICAgICAgICBwYXJzZUNvbmRpdGlvbihzcGxpdFN0cmluZ1tuXSwgYmVn
aW5PckVuZCk7CiAgICAgICAgIGVsc2UgaWYgKCFleGlzdGluZy5jb250YWlucyh2YWx1ZS52YWx1
ZSgpKSkKICAgICAgICAgICAgIHRpbWVMaXN0LmFwcGVuZChTTUlMVGltZVdpdGhPcmlnaW4odmFs
dWUsIFNNSUxUaW1lV2l0aE9yaWdpbjo6UGFyc2VyT3JpZ2luKSk7CiAgICAgfQpAQCAtNTE4LDcg
KzUxOCw4IEBAIHZvaWQgU1ZHU01JTEVsZW1lbnQ6OmNvbm5lY3RDb25kaXRpb25zKCkKICAgICBp
ZiAobV9jb25kaXRpb25zQ29ubmVjdGVkKQogICAgICAgICBkaXNjb25uZWN0Q29uZGl0aW9ucygp
OwogICAgIG1fY29uZGl0aW9uc0Nvbm5lY3RlZCA9IHRydWU7Ci0gICAgZm9yIChhdXRvJiBjb25k
aXRpb24gOiBtX2NvbmRpdGlvbnMpIHsKKyAgICBmb3IgKHVuc2lnbmVkIG4gPSAwOyBuIDwgbV9j
b25kaXRpb25zLnNpemUoKTsgKytuKSB7CisgICAgICAgIENvbmRpdGlvbiYgY29uZGl0aW9uID0g
bV9jb25kaXRpb25zW25dOwogICAgICAgICBpZiAoY29uZGl0aW9uLm1fdHlwZSA9PSBDb25kaXRp
b246OkV2ZW50QmFzZSkgewogICAgICAgICAgICAgQVNTRVJUKCFjb25kaXRpb24ubV9zeW5jYmFz
ZSk7CiAgICAgICAgICAgICBFbGVtZW50KiBldmVudEJhc2UgPSBldmVudEJhc2VGb3IoY29uZGl0
aW9uKTsKQEAgLTU0Niw3ICs1NDcsOCBAQCB2b2lkIFNWR1NNSUxFbGVtZW50OjpkaXNjb25uZWN0
Q29uZGl0aW9ucygpCiAgICAgaWYgKCFtX2NvbmRpdGlvbnNDb25uZWN0ZWQpCiAgICAgICAgIHJl
dHVybjsKICAgICBtX2NvbmRpdGlvbnNDb25uZWN0ZWQgPSBmYWxzZTsKLSAgICBmb3IgKGF1dG8m
IGNvbmRpdGlvbiA6IG1fY29uZGl0aW9ucykgeworICAgIGZvciAodW5zaWduZWQgbiA9IDA7IG4g
PCBtX2NvbmRpdGlvbnMuc2l6ZSgpOyArK24pIHsKKyAgICAgICAgQ29uZGl0aW9uJiBjb25kaXRp
b24gPSBtX2NvbmRpdGlvbnNbbl07CiAgICAgICAgIGlmIChjb25kaXRpb24ubV90eXBlID09IENv
bmRpdGlvbjo6RXZlbnRCYXNlKSB7CiAgICAgICAgICAgICBBU1NFUlQoIWNvbmRpdGlvbi5tX3N5
bmNiYXNlKTsKICAgICAgICAgICAgIGlmICghY29uZGl0aW9uLm1fZXZlbnRMaXN0ZW5lcikKQEAg
LTExMjQsNyArMTEyNiw5IEBAIHZvaWQgU1ZHU01JTEVsZW1lbnQ6Om5vdGlmeURlcGVuZGVudHNJ
bnRlcnZhbENoYW5nZWQoTmV3T3JFeGlzdGluZ0ludGVydmFsIG5ld09yCiAgICAgICAgIHJldHVy
bjsKICAgICBsb29wQnJlYWtlci5hZGQodGhpcyk7CiAgICAgCi0gICAgZm9yIChhdXRvJiBkZXBl
bmRlbnQgOiBtX3RpbWVEZXBlbmRlbnRzKSB7CisgICAgVGltZURlcGVuZGVudFNldDo6aXRlcmF0
b3IgZW5kID0gbV90aW1lRGVwZW5kZW50cy5lbmQoKTsKKyAgICBmb3IgKFRpbWVEZXBlbmRlbnRT
ZXQ6Oml0ZXJhdG9yIGl0ID0gbV90aW1lRGVwZW5kZW50cy5iZWdpbigpOyBpdCAhPSBlbmQ7ICsr
aXQpIHsKKyAgICAgICAgU1ZHU01JTEVsZW1lbnQqIGRlcGVuZGVudCA9ICppdDsKICAgICAgICAg
ZGVwZW5kZW50LT5jcmVhdGVJbnN0YW5jZVRpbWVzRnJvbVN5bmNiYXNlKHRoaXMsIG5ld09yRXhp
c3RpbmcpOwogICAgIH0KIApAQCAtMTEzNSw3ICsxMTM5LDggQEAgdm9pZCBTVkdTTUlMRWxlbWVu
dDo6Y3JlYXRlSW5zdGFuY2VUaW1lc0Zyb21TeW5jYmFzZShTVkdTTUlMRWxlbWVudCogc3luY2Jh
c2UsIE4KIHsKICAgICAvLyBGSVhNRTogVG8gYmUgcmVhbGx5IGNvcnJlY3QsIHRoaXMgc2hvdWxk
IGhhbmRsZSB1cGRhdGluZyBleGlzaW5nIGludGVydmFsIGJ5IGNoYW5naW5nIAogICAgIC8vIHRo
ZSBhc3NvY2lhdGVkIHRpbWVzIGluc3RlYWQgb2YgY3JlYXRpbmcgbmV3IG9uZXMuCi0gICAgZm9y
IChhdXRvJiBjb25kaXRpb24gOiBtX2NvbmRpdGlvbnMpIHsKKyAgICBmb3IgKHVuc2lnbmVkIG4g
PSAwOyBuIDwgbV9jb25kaXRpb25zLnNpemUoKTsgKytuKSB7CisgICAgICAgIENvbmRpdGlvbiYg
Y29uZGl0aW9uID0gbV9jb25kaXRpb25zW25dOwogICAgICAgICBpZiAoY29uZGl0aW9uLm1fdHlw
ZSA9PSBDb25kaXRpb246OlN5bmNiYXNlICYmIGNvbmRpdGlvbi5tX3N5bmNiYXNlID09IHN5bmNi
YXNlKSB7CiAgICAgICAgICAgICBBU1NFUlQoY29uZGl0aW9uLm1fbmFtZSA9PSAiYmVnaW4iIHx8
IGNvbmRpdGlvbi5tX25hbWUgPT0gImVuZCIpOwogICAgICAgICAgICAgLy8gTm8gbmVzdGVkIHRp
bWUgY29udGFpbmVycyBpbiBTVkcsIG5vIG5lZWQgZm9yIGNyYXp5IHRpbWUgc3BhY2UgY29udmVy
c2lvbnMuIFBoZXchCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvZ3JhcGhpY3MvZmls
dGVycy9TVkdGaWx0ZXJCdWlsZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9ncmFwaGljcy9m
aWx0ZXJzL1NWR0ZpbHRlckJ1aWxkZXIuY3BwCmluZGV4IDUyYmE0ZTkxZDM4MDdhNGM3MDFkNDMw
OTNlMTg5YWFhZDYyNWIyMmQuLjRiYjFhMGFhZDdmMzNhYmYyMzhhZDE0ZWExMWFkNTBhNjBiNDky
ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9ncmFwaGljcy9maWx0ZXJzL1NWR0Zp
bHRlckJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9ncmFwaGljcy9maWx0ZXJz
L1NWR0ZpbHRlckJ1aWxkZXIuY3BwCkBAIC05NSw4ICs5NSwxMCBAQCB2b2lkIFNWR0ZpbHRlckJ1
aWxkZXI6OmNsZWFyUmVzdWx0c1JlY3Vyc2l2ZShGaWx0ZXJFZmZlY3QqIGVmZmVjdCkKIAogICAg
IGVmZmVjdC0+Y2xlYXJSZXN1bHQoKTsKIAotICAgIGZvciAoYXV0byYgcmVmZXJlbmNlIDogZWZm
ZWN0UmVmZXJlbmNlcyhlZmZlY3QpKQotICAgICAgICBjbGVhclJlc3VsdHNSZWN1cnNpdmUocmVm
ZXJlbmNlKTsKKyAgICBIYXNoU2V0PEZpbHRlckVmZmVjdCo+JiBlZmZlY3RSZWZlcmVuY2VzID0g
dGhpcy0+ZWZmZWN0UmVmZXJlbmNlcyhlZmZlY3QpOworICAgIEhhc2hTZXQ8RmlsdGVyRWZmZWN0
Kj46Oml0ZXJhdG9yIGVuZCA9IGVmZmVjdFJlZmVyZW5jZXMuZW5kKCk7CisgICAgZm9yIChIYXNo
U2V0PEZpbHRlckVmZmVjdCo+OjppdGVyYXRvciBpdCA9IGVmZmVjdFJlZmVyZW5jZXMuYmVnaW4o
KTsgaXQgIT0gZW5kOyArK2l0KQorICAgICAgICAgY2xlYXJSZXN1bHRzUmVjdXJzaXZlKCppdCk7
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9ncmFwaGljcy9maWx0ZXJzL1NWR0ZpbHRlckJ1aWxkZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9ncmFwaGljcy9maWx0ZXJzL1NWR0ZpbHRlckJ1aWxkZXIuaAppbmRleCAwODY3ZDI4OWNi
MTlhNDRmOThlMGQyZDI0ODM2YmZkMjU4YmEyZDUxLi4yYjFkZDJmNmUyY2Y1Zjk2OWM5Yjg4MDRj
ODhmYjU3N2VkMGVhZjFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvZ3JhcGhpY3Mv
ZmlsdGVycy9TVkdGaWx0ZXJCdWlsZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL2dyYXBo
aWNzL2ZpbHRlcnMvU1ZHRmlsdGVyQnVpbGRlci5oCkBAIC02Miw4ICs2Miw5IEBAIHB1YmxpYzoK
IHByaXZhdGU6CiAgICAgaW5saW5lIHZvaWQgYWRkQnVpbHRpbkVmZmVjdHMoKQogICAgIHsKLSAg
ICAgICAgZm9yIChhdXRvJiBlZmZlY3QgOiBtX2J1aWx0aW5FZmZlY3RzLnZhbHVlcygpKQotICAg
ICAgICAgICAgbV9lZmZlY3RSZWZlcmVuY2VzLmFkZChlZmZlY3QsIEZpbHRlckVmZmVjdFNldCgp
KTsKKyAgICAgICAgSGFzaE1hcDxBdG9taWNTdHJpbmcsIFJlZlB0cjxGaWx0ZXJFZmZlY3Q+Pjo6
aXRlcmF0b3IgZW5kID0gbV9idWlsdGluRWZmZWN0cy5lbmQoKTsKKyAgICAgICAgZm9yIChIYXNo
TWFwPEF0b21pY1N0cmluZywgUmVmUHRyPEZpbHRlckVmZmVjdD4+OjppdGVyYXRvciBpdGVyYXRv
ciA9IG1fYnVpbHRpbkVmZmVjdHMuYmVnaW4oKTsgaXRlcmF0b3IgIT0gZW5kOyArK2l0ZXJhdG9y
KQorICAgICAgICAgICAgIG1fZWZmZWN0UmVmZXJlbmNlcy5hZGQoaXRlcmF0b3ItPnZhbHVlLCBG
aWx0ZXJFZmZlY3RTZXQoKSk7CiAgICAgfQogCiAgICAgSGFzaE1hcDxBdG9taWNTdHJpbmcsIFJl
ZlB0cjxGaWx0ZXJFZmZlY3Q+PiBtX2J1aWx0aW5FZmZlY3RzOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvc3ZnL3Byb3BlcnRpZXMvU1ZHQW5pbWF0ZWRQcm9wZXJ0eS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9zdmcvcHJvcGVydGllcy9TVkdBbmltYXRlZFByb3BlcnR5LmNwcAppbmRleCBhYjEx
NGFiMmNhMjBjMjI0ZjNlMTQ5NDU0ZjJhODEwNmNhZjk3MGRlLi40OWRjOGZjNTU5OWU1NThhMGZh
NzNmYzBhYzViMmJiZmM0MmQ1OWI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvcHJv
cGVydGllcy9TVkdBbmltYXRlZFByb3BlcnR5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcv
cHJvcGVydGllcy9TVkdBbmltYXRlZFByb3BlcnR5LmNwcApAQCAtMzcsOSArMzcsMTAgQEAgU1ZH
QW5pbWF0ZWRQcm9wZXJ0eTo6U1ZHQW5pbWF0ZWRQcm9wZXJ0eShTVkdFbGVtZW50KiBjb250ZXh0
RWxlbWVudCwgY29uc3QgUXVhbGkKIFNWR0FuaW1hdGVkUHJvcGVydHk6On5TVkdBbmltYXRlZFBy
b3BlcnR5KCkKIHsKICAgICAvLyBSZW1vdmUgd3JhcHBlciBmcm9tIGNhY2hlLgotICAgIGZvciAo
YXV0byYgY2FjaGUgOiAqYW5pbWF0ZWRQcm9wZXJ0eUNhY2hlKCkpIHsKLSAgICAgICAgaWYgKGNh
Y2hlLnZhbHVlID09IHRoaXMpIHsKLSAgICAgICAgICAgIGFuaW1hdGVkUHJvcGVydHlDYWNoZSgp
LT5yZW1vdmUoY2FjaGUua2V5KTsKKyAgICBDYWNoZSYgY2FjaGUgPSAqYW5pbWF0ZWRQcm9wZXJ0
eUNhY2hlKCk7CisgICAgZm9yIChhdXRvIGl0ID0gY2FjaGUuYmVnaW4oKSwgZW5kID0gY2FjaGUu
ZW5kKCk7IGl0ICE9IGVuZDsgKytpdCkgeworICAgICAgICBpZiAoaXQtPnZhbHVlID09IHRoaXMp
IHsKKyAgICAgICAgICAgIGNhY2hlLnJlbW92ZShpdCk7CiAgICAgICAgICAgICBicmVhazsKICAg
ICAgICAgfQogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9wcm9wZXJ0aWVz
L1NWR0xpc3RQcm9wZXJ0eS5oIGIvU291cmNlL1dlYkNvcmUvc3ZnL3Byb3BlcnRpZXMvU1ZHTGlz
dFByb3BlcnR5LmgKaW5kZXggNzc3ODhlMTAyMjQ4ZDUwMjUyYzgwMTRmNzdhMDY1ZDFiYWQ5NTlk
Yi4uNDgwODg0ZWE3MmNhN2QwZGE2N2MxMzBlM2YyM2RkNzgxZGZjYmNhYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvc3ZnL3Byb3BlcnRpZXMvU1ZHTGlzdFByb3BlcnR5LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvc3ZnL3Byb3BlcnRpZXMvU1ZHTGlzdFByb3BlcnR5LmgKQEAgLTYyLDggKzYy
LDkgQEAgcHVibGljOgogICAgIHsKICAgICAgICAgLy8gU2VlIFNWR1Byb3BlcnR5VGVhck9mZjo6
ZGV0YWNoV3JhcHBlcigpIGZvciBhbiBleHBsYW5hdGlvbiBhYm91dCB3aGF0J3MgaGFwcGVuaW5n
IGhlcmUuCiAgICAgICAgIEFTU0VSVCh3cmFwcGVycyk7Ci0gICAgICAgIGZvciAoYXV0byYgaXRl
bSA6ICp3cmFwcGVycykgewotICAgICAgICAgICAgaWYgKGl0ZW0pCisgICAgICAgIHVuc2lnbmVk
IHNpemUgPSB3cmFwcGVycy0+c2l6ZSgpOworICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBp
IDwgc2l6ZTsgKytpKSB7CisgICAgICAgICAgICBpZiAoTGlzdEl0ZW1UZWFyT2ZmKiBpdGVtID0g
d3JhcHBlcnMtPmF0KGkpLmdldCgpKQogICAgICAgICAgICAgICAgIGl0ZW0tPmRldGFjaFdyYXBw
ZXIoKTsKICAgICAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvcHJvcGVy
dGllcy9TVkdQYXRoU2VnTGlzdFByb3BlcnR5VGVhck9mZi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9z
dmcvcHJvcGVydGllcy9TVkdQYXRoU2VnTGlzdFByb3BlcnR5VGVhck9mZi5jcHAKaW5kZXggMzk5
Mjc0MWY5ZmRkMWYyNTcxZDU3N2EzYmFhMGIwY2Y0NmI0NzY5My4uNTExN2NlNjJjYTdkZmI5N2Yz
ZWZiZDZhODNmYzQxOWJkMWY5NjJhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL3By
b3BlcnRpZXMvU1ZHUGF0aFNlZ0xpc3RQcm9wZXJ0eVRlYXJPZmYuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9wcm9wZXJ0aWVzL1NWR1BhdGhTZWdMaXN0UHJvcGVydHlUZWFyT2ZmLmNwcApA
QCAtMzAsNyArMzAsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiB2b2lkIFNWR1BhdGhTZWdMaXN0
UHJvcGVydHlUZWFyT2ZmOjpjbGVhckNvbnRleHRBbmRSb2xlcygpCiB7CiAgICAgQVNTRVJUKG1f
dmFsdWVzKTsKLSAgICBmb3IgKGF1dG8mIGl0ZW0gOiAqbV92YWx1ZXMpIHsKKyAgICB1bnNpZ25l
ZCBzaXplID0gbV92YWx1ZXMtPnNpemUoKTsKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwg
c2l6ZTsgKytpKSB7CisgICAgICAgIExpc3RJdGVtVHlwZSBpdGVtID0gbV92YWx1ZXMtPmF0KGkp
OwogICAgICAgICBzdGF0aWNfY2FzdDxTVkdQYXRoU2VnV2l0aENvbnRleHQqPihpdGVtLmdldCgp
KS0+c2V0Q29udGV4dEFuZFJvbGUoMCwgUGF0aFNlZ1VuZGVmaW5lZFJvbGUpOwogICAgIH0KIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>