<?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>11732</bug_id>
          
          <creation_ts>2006-12-01 09:50:44 -0800</creation_ts>
          <short_desc>Windows build broken</short_desc>
          <delta_ts>2006-12-03 08:32:09 -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>WebCore Misc.</component>
          <version>420+</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows XP</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Don Gibson">dgibson77</reporter>
          <assigned_to name="Don Gibson">dgibson77</assigned_to>
          <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>43607</commentid>
    <comment_count>0</comment_count>
    <who name="Don Gibson">dgibson77</who>
    <bug_when>2006-12-01 09:50:44 -0800</bug_when>
    <thetext>Patch coming shortly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>43608</commentid>
    <comment_count>1</comment_count>
      <attachid>11703</attachid>
    <who name="Don Gibson">dgibson77</who>
    <bug_when>2006-12-01 09:55:53 -0800</bug_when>
    <thetext>Created attachment 11703
patch for r17959</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>43610</commentid>
    <comment_count>2</comment_count>
      <attachid>11703</attachid>
    <who name="">mitz</who>
    <bug_when>2006-12-01 10:17:24 -0800</bug_when>
    <thetext>Comment on attachment 11703
patch for r17959

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>43616</commentid>
    <comment_count>3</comment_count>
    <who name="Don Gibson">dgibson77</who>
    <bug_when>2006-12-01 13:41:13 -0800</bug_when>
    <thetext>This landed as r17965.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>43471</commentid>
    <comment_count>4</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2006-12-03 08:32:09 -0800</bug_when>
    <thetext>*** Bug 11717 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>11703</attachid>
            <date>2006-12-01 09:55:53 -0800</date>
            <delta_ts>2006-12-01 10:17:24 -0800</delta_ts>
            <desc>patch for r17959</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>28834</size>
            <attacher name="Don Gibson">dgibson77</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAxNzk2MCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNjIgQEAKKzIwMDYtMTItMDEgIERvbiBHaWJzb24gIDxkZ2lic29uNzdAZ21haWwu
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0
dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNzMyOgorICAgICAgICBXaW5k
b3dzIGJ1aWxkIGJ1c3RhZ2UuCisKKyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlL1dl
YkNvcmUudmNwcm9qOgorICAgICAgICAqIGJyaWRnZS93aW4vQ2hyb21lQ2xpZW50V2luLmg6Cisg
ICAgICAgICogYnJpZGdlL3dpbi9Db250ZXh0TWVudUNsaWVudFdpbi5oOgorICAgICAgICAqIGJy
aWRnZS93aW4vRWRpdG9yQ2xpZW50V2luLmg6CisgICAgICAgICogYnJpZGdlL3dpbi9GcmFtZVdp
bi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVdpbjo6RnJhbWVXaW4pOgorICAgICAgICAo
V2ViQ29yZTo6RnJhbWVXaW46OmtleVByZXNzKToKKyAgICAgICAgKiBicmlkZ2Uvd2luL0ZyYW1l
V2luLmg6CisgICAgICAgICogbG9hZGVyL3dpbi9GcmFtZUxvYWRlckNsaWVudFdpbi5oOgorICAg
ICAgICAqIHBsYXRmb3JtL0NvbnRleHRNZW51Lmg6CisgICAgICAgICogcGxhdGZvcm0vV2lkZ2V0
Lmg6CisgICAgICAgICogcGxhdGZvcm0vd2luL1BsYXRmb3JtU2Nyb2xsQmFyLmg6CisgICAgICAg
ICogcGxhdGZvcm0vd2luL1RlbXBvcmFyeUxpbmtTdHVicy5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpDaHJvbWVDbGllbnRXaW46OmNocm9tZURlc3Ryb3llZCk6CisgICAgICAgIChXZWJDb3JlOjpD
aHJvbWVDbGllbnRXaW46OmFkZE1lc3NhZ2VUb0NvbnNvbGUpOgorICAgICAgICAoV2ViQ29yZTo6
Q29udGV4dE1lbnU6OkNvbnRleHRNZW51KToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRleHRNZW51
Ojp+Q29udGV4dE1lbnUpOgorICAgICAgICAoV2ViQ29yZTo6Q29udGV4dE1lbnU6OmFwcGVuZEl0
ZW0pOgorICAgICAgICAoV2ViQ29yZTo6Q29udGV4dE1lbnVDbGllbnRXaW46OmNvbnRleHRNZW51
RGVzdHJveWVkKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRleHRNZW51Q2xpZW50V2luOjpjb250
ZXh0TWVudUl0ZW1TZWxlY3RlZCk6CisgICAgICAgIChXZWJDb3JlOjpDb250ZXh0TWVudUl0ZW06
On5Db250ZXh0TWVudUl0ZW0pOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpuZXdHZW5lcmFs
Q2xpcGJvYXJkKToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvckNsaWVudFdpbjo6cGFnZURlc3Ry
b3llZCk6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3JDbGllbnRXaW46OnNtYXJ0SW5zZXJ0RGVs
ZXRlRW5hYmxlZCk6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3JDbGllbnRXaW46OnNob3VsZElu
c2VydE5vZGUpOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmNyZWF0ZVBsdWdpbik6
CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlckNsaWVudFdpbjo6ZnJhbWVMb2FkZXJEZXN0
cm95ZWQpOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXJDbGllbnRXaW46Omhhc1dlYlZp
ZXcpOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXJDbGllbnRXaW46OmNhbkhhbmRsZVJl
cXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVXaW46OnVuZm9jdXNXaW5kb3cpOgorICAg
ICAgICAoV2ViQ29yZTo6RnJhbWVXaW46OmJpbmRpbmdSb290T2JqZWN0KToKKyAgICAgICAgKFdl
YkNvcmU6OkZyYW1lV2luOjppc3N1ZUNvcHlDb21tYW5kKToKKyAgICAgICAgKFdlYkNvcmU6OkZy
YW1lV2luOjptYXJrTWlzc3BlbGxpbmdzKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lV2luOjpp
c3N1ZVRyYW5zcG9zZUNvbW1hbmQpOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVXaW46Om1hcmtl
ZFRleHRSYW5nZSk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVdpbjo6cmVzcG9uZFRvQ2hhbmdl
ZFNlbGVjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVdpbjo6bWFya01pc3NwZWxsaW5n
c0luQWRqYWNlbnRXb3Jkcyk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVdpbjo6aXNTZWxlY3Rp
b25NaXNzcGVsbGVkKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lV2luOjpndWVzc2VzRm9yTWlz
c3BlbGxlZFNlbGVjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpQYXN0ZWJvYXJkOjpnZW5lcmFs
UGFzdGVib2FyZCk6CisgICAgICAgIChXZWJDb3JlOjpQYXN0ZWJvYXJkOjp3cml0ZVNlbGVjdGlv
bik6CisgICAgICAgIChXZWJDb3JlOjpQYXN0ZWJvYXJkOjpjbGVhclR5cGVzKToKKyAgICAgICAg
KFdlYkNvcmU6OlBhc3RlYm9hcmQ6OmNhblNtYXJ0UmVwbGFjZSk6CisgICAgICAgIChXZWJDb3Jl
OjpQYXN0ZWJvYXJkOjpkb2N1bWVudEZyYWdtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OlBhc3Rl
Ym9hcmQ6OnBsYWluVGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpQYXN0ZWJvYXJkOjpQYXN0ZWJv
YXJkKToKKyAgICAgICAgKFdlYkNvcmU6OlBhc3RlYm9hcmQ6On5QYXN0ZWJvYXJkKToKKyAgICAg
ICAgKFdlYkNvcmU6OlBhc3RlYm9hcmQ6OnJlZ2lzdGVyU2VsZWN0aW9uUGFzdGVib2FyZFR5cGVz
KToKKyAgICAgICAgKFdlYkNvcmU6OlBhc3RlYm9hcmQ6OnJlcGxhY2VOQlNQKToKKyAgICAgICAg
KFdlYkNvcmU6OlBhc3RlYm9hcmQ6OmNyZWF0ZUhhbmRsZSk6CisgICAgICAgIChXZWJDb3JlOjpQ
YXN0ZWJvYXJkOjpjcmVhdGVDRl9IVE1MRnJvbVJhbmdlKToKKwogMjAwNi0xMS0zMCAgR2VvZmZy
ZXkgR2FyZW4gIDxnZ2FyZW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJ1YmJlciBTdGFtcGVkIGJ5
IEFuZGVycyBDYXJsc3Nvbi4KSW5kZXg6IFdlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS9X
ZWJDb3JlLnZjcHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNv
cmUvV2ViQ29yZS52Y3Byb2oJKHJldmlzaW9uIDE3OTYwKQorKysgV2ViQ29yZS9XZWJDb3JlLnZj
cHJvai9XZWJDb3JlL1dlYkNvcmUudmNwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0xMjQ3LDEwICsx
MjQ3LDYgQEAKIAkJCU5hbWU9InBsYXRmb3JtIgogCQkJPgogCQkJPEZpbGUKLQkJCQlSZWxhdGl2
ZVBhdGg9Ii4uXC4uXHBsYXRmb3JtXEFic3RyYWN0U2hhcmVkLmgiCi0JCQkJPgotCQkJPC9GaWxl
PgotCQkJPEZpbGUKIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXC4uXHBsYXRmb3JtXEFyZW5hLmNwcCIK
IAkJCQk+CiAJCQk8L0ZpbGU+CkBAIC0xMjkxLDYgKzEyODcsMTAgQEAKIAkJCQk+CiAJCQk8L0Zp
bGU+CiAJCQk8RmlsZQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cLi5ccGxhdGZvcm1cQ29udGV4dE1l
bnVJdGVtLmgiCisJCQkJPgorCQkJPC9GaWxlPgorCQkJPEZpbGUKIAkJCQlSZWxhdGl2ZVBhdGg9
Ii4uXC4uXHBsYXRmb3JtXENvb2tpZUphci5oIgogCQkJCT4KIAkJCTwvRmlsZT4KQEAgLTE0Njcs
NiArMTQ2NywxMCBAQAogCQkJCT4KIAkJCTwvRmlsZT4KIAkJCTxGaWxlCisJCQkJUmVsYXRpdmVQ
YXRoPSIuLlwuLlxwbGF0Zm9ybVxQYXN0ZWJvYXJkLmgiCisJCQkJPgorCQkJPC9GaWxlPgorCQkJ
PEZpbGUKIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXC4uXHBsYXRmb3JtXFBsYXRmb3JtS2V5Ym9hcmRF
dmVudC5oIgogCQkJCT4KIAkJCTwvRmlsZT4KQEAgLTI2MzgsMTAgKzI2NDIsMTggQEAKIAkJCQkJ
PgogCQkJCTwvRmlsZT4KIAkJCQk8RmlsZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXC4uXHBsYXRm
b3JtXG5ldHdvcmtcUmVzb3VyY2VSZXF1ZXN0LmNwcCIKKwkJCQkJPgorCQkJCTwvRmlsZT4KKwkJ
CQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXC4uXHBsYXRmb3JtXG5ldHdvcmtcUmVzb3Vy
Y2VSZXF1ZXN0LmgiCiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKKwkJCQkJUmVsYXRp
dmVQYXRoPSIuLlwuLlxwbGF0Zm9ybVxuZXR3b3JrXFJlc291cmNlUmVzcG9uc2UuY3BwIgorCQkJ
CQk+CisJCQkJPC9GaWxlPgorCQkJCTxGaWxlCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5cLi5ccGxh
dGZvcm1cbmV0d29ya1xSZXNvdXJjZVJlc3BvbnNlLmgiCiAJCQkJCT4KIAkJCQk8L0ZpbGU+CkBA
IC0zODI3LDYgKzM4MzksMTAgQEAKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQorCQkJCVJl
bGF0aXZlUGF0aD0iLi5cLi5cZG9tXENsaXBib2FyZEFjY2Vzc1BvbGljeS5oIgorCQkJCT4KKwkJ
CTwvRmlsZT4KKwkJCTxGaWxlCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlwuLlxkb21cQ2xpcGJvYXJk
RXZlbnQuY3BwIgogCQkJCT4KIAkJCTwvRmlsZT4KSW5kZXg6IFdlYkNvcmUvYnJpZGdlL3dpbi9D
aHJvbWVDbGllbnRXaW4uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JyaWRnZS93aW4vQ2hyb21l
Q2xpZW50V2luLmgJKHJldmlzaW9uIDE3OTYwKQorKysgV2ViQ29yZS9icmlkZ2Uvd2luL0Nocm9t
ZUNsaWVudFdpbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNSw2ICszNSw3IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICBjbGFzcyBDaHJvbWVDbGllbnRXaW4gOiBwdWJsaWMgQ2hyb21lQ2xpZW50
LCBwdWJsaWMgU2hhcmVkPENocm9tZUNsaWVudFdpbj4gewogICAgIHB1YmxpYzoKICAgICAgICAg
dmlydHVhbCB+Q2hyb21lQ2xpZW50V2luKCkgeyB9CisgICAgICAgIHZpcnR1YWwgdm9pZCBjaHJv
bWVEZXN0cm95ZWQoKTsKIAogICAgICAgICB2aXJ0dWFsIHZvaWQgcmVmKCkgeyBTaGFyZWQ8Q2hy
b21lQ2xpZW50V2luPjo6cmVmKCk7IH0KICAgICAgICAgdmlydHVhbCB2b2lkIGRlcmVmKCkgeyBT
aGFyZWQ8Q2hyb21lQ2xpZW50V2luPjo6ZGVyZWYoKTsgfQpAQCAtNjksNiArNzAsOCBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgYm9vbCBtZW51YmFyVmlzaWJsZSgpOwog
CiAgICAgICAgIHZpcnR1YWwgdm9pZCBzZXRSZXNpemFibGUoYm9vbCk7CisKKyAgICAgICAgdmly
dHVhbCB2b2lkIGFkZE1lc3NhZ2VUb0NvbnNvbGUoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCB1bnNp
Z25lZCBpbnQgbGluZU51bWJlciwgY29uc3QgU3RyaW5nJiBzb3VyY2VJRCk7CiAgICAgfTsKIAog
fQpJbmRleDogV2ViQ29yZS9icmlkZ2Uvd2luL0NvbnRleHRNZW51Q2xpZW50V2luLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9icmlkZ2Uvd2luL0NvbnRleHRNZW51Q2xpZW50V2luLmgJKHJldmlz
aW9uIDE3OTYwKQorKysgV2ViQ29yZS9icmlkZ2Uvd2luL0NvbnRleHRNZW51Q2xpZW50V2luLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTM1LDExICszNSwxMyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgY2xhc3MgQ29udGV4dE1lbnVDbGllbnRXaW4gOiBwdWJsaWMgQ29udGV4dE1lbnVDbGllbnQs
IHB1YmxpYyBTaGFyZWQ8Q29udGV4dE1lbnVDbGllbnRXaW4+IHsKICAgICBwdWJsaWM6CiAgICAg
ICAgIHZpcnR1YWwgfkNvbnRleHRNZW51Q2xpZW50V2luKCkgeyB9CisgICAgICAgIHZpcnR1YWwg
dm9pZCBjb250ZXh0TWVudURlc3Ryb3llZCgpOwogCiAgICAgICAgIHZpcnR1YWwgdm9pZCByZWYo
KSB7IFNoYXJlZDxDb250ZXh0TWVudUNsaWVudFdpbj46OnJlZigpOyB9CiAgICAgICAgIHZpcnR1
YWwgdm9pZCBkZXJlZigpIHsgU2hhcmVkPENvbnRleHRNZW51Q2xpZW50V2luPjo6ZGVyZWYoKTsg
fQogCiAgICAgICAgIHZpcnR1YWwgdm9pZCBhZGRDdXN0b21Db250ZXh0TWVudUl0ZW1zKENvbnRl
eHRNZW51Kik7CisgICAgICAgIHZpcnR1YWwgdm9pZCBjb250ZXh0TWVudUl0ZW1TZWxlY3RlZChD
b250ZXh0TWVudUl0ZW0qKTsKIAogICAgICAgICB2aXJ0dWFsIHZvaWQgY29weUxpbmtUb0NsaXBi
b2FyZChIaXRUZXN0UmVzdWx0KTsKICAgICAgICAgdmlydHVhbCB2b2lkIGRvd25sb2FkVVJMKEtV
UkwpOwpJbmRleDogV2ViQ29yZS9icmlkZ2Uvd2luL0VkaXRvckNsaWVudFdpbi5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvYnJpZGdlL3dpbi9FZGl0b3JDbGllbnRXaW4uaAkocmV2aXNpb24gMTc5
NjApCisrKyBXZWJDb3JlL2JyaWRnZS93aW4vRWRpdG9yQ2xpZW50V2luLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTM1LDEzICszNSwxNCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3MgRWRp
dG9yQ2xpZW50V2luIDogcHVibGljIEVkaXRvckNsaWVudCwgcHVibGljIFNoYXJlZDxFZGl0b3JD
bGllbnRXaW4+IHsKICAgICBwdWJsaWM6CiAgICAgICAgIHZpcnR1YWwgfkVkaXRvckNsaWVudFdp
bigpIHsgfQorICAgICAgICB2aXJ0dWFsIHZvaWQgcGFnZURlc3Ryb3llZCgpOwogCiAgICAgICAg
IHZpcnR1YWwgdm9pZCByZWYoKSB7IFNoYXJlZDxFZGl0b3JDbGllbnRXaW4+OjpyZWYoKTsgfQog
ICAgICAgICB2aXJ0dWFsIHZvaWQgZGVyZWYoKSB7IFNoYXJlZDxFZGl0b3JDbGllbnRXaW4+Ojpk
ZXJlZigpOyB9CiAKICAgICAgICAgdmlydHVhbCBib29sIHNob3VsZERlbGV0ZVJhbmdlKFJhbmdl
Kik7CiAgICAgICAgIHZpcnR1YWwgYm9vbCBzaG91bGRTaG93RGVsZXRlSW50ZXJmYWNlKEhUTUxF
bGVtZW50Kik7Ci0KKyAgICAgICAgdmlydHVhbCBib29sIHNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxl
ZCgpOwogICAgICAgICB2aXJ0dWFsIGJvb2wgaXNDb250aW51b3VzU3BlbGxDaGVja2luZ0VuYWJs
ZWQoKTsKICAgICAgICAgdmlydHVhbCBib29sIGlzR3JhbW1hckNoZWNraW5nRW5hYmxlZCgpOwog
ICAgICAgICB2aXJ0dWFsIGludCBzcGVsbENoZWNrZXJEb2N1bWVudFRhZygpOwpAQCAtNTEsNiAr
NTIsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAgdmlydHVhbCBib29sIHNob3Vs
ZEJlZ2luRWRpdGluZyhSYW5nZSopOwogICAgICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkRW5kRWRp
dGluZyhSYW5nZSopOworICAgICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkSW5zZXJ0Tm9kZShOb2Rl
KiwgUmFuZ2UqLCBFZGl0b3JJbnNlcnRBY3Rpb24pOwogICAgICAgICB2aXJ0dWFsIGJvb2wgc2hv
dWxkSW5zZXJ0VGV4dChTdHJpbmcsIFJhbmdlKiwgRWRpdG9ySW5zZXJ0QWN0aW9uKTsKICAgICAg
ICAgdmlydHVhbCBib29sIHNob3VsZEFwcGx5U3R5bGUoQ1NTU3R5bGVEZWNsYXJhdGlvbiosIFJh
bmdlKik7CiAKSW5kZXg6IFdlYkNvcmUvYnJpZGdlL3dpbi9GcmFtZVdpbi5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViQ29yZS9icmlkZ2Uvd2luL0ZyYW1lV2luLmNwcAkocmV2aXNpb24gMTc5NjApCisr
KyBXZWJDb3JlL2JyaWRnZS93aW4vRnJhbWVXaW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NCw4
ICs0NCw4IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotRnJhbWVXaW46OkZyYW1lV2luKFBh
Z2UqIHBhZ2UsIEVsZW1lbnQqIG93bmVyRWxlbWVudCwgIFBhc3NSZWZQdHI8RWRpdG9yQ2xpZW50
PiBlZGl0b3JDbGllbnQsIEZyYW1lV2luQ2xpZW50KiBjbGllbnQpCi0gICAgOiBGcmFtZShwYWdl
LCBvd25lckVsZW1lbnQsIGVkaXRvckNsaWVudCkKK0ZyYW1lV2luOjpGcmFtZVdpbihQYWdlKiBw
YWdlLCBFbGVtZW50KiBvd25lckVsZW1lbnQsIEZyYW1lV2luQ2xpZW50KiBjbGllbnQpCisgICAg
OiBGcmFtZShwYWdlLCBvd25lckVsZW1lbnQsIG5ldyBGcmFtZUxvYWRlckNsaWVudFdpbigpKQog
ICAgICwgbV9jbGllbnQoY2xpZW50KQogewogICAgIFNldHRpbmdzKiBzZXR0aW5ncyA9IG5ldyBT
ZXR0aW5ncygpOwpAQCAtNTgsOSArNTgsNiBAQCBGcmFtZVdpbjo6RnJhbWVXaW4oUGFnZSogcGFn
ZSwgRWxlbWVudCogCiAgICAgc2V0dGluZ3MtPnNldFN0ZEZvbnROYW1lKCJUaW1lcyBOZXcgUm9t
YW4iKTsKICAgICBzZXR0aW5ncy0+c2V0SXNKYXZhU2NyaXB0RW5hYmxlZCh0cnVlKTsKICAgICBz
ZXRTZXR0aW5ncyhzZXR0aW5ncyk7Ci0KLSAgICAvLyBGSVhNRTogcmV3b3JrIG9uY2UgRnJhbWVM
b2FkZXJDbGllbnRXaW4gaXMgZXZlbiBjbG9zZSB0byB3b3JraW5nCi0gICAgbG9hZGVyKCktPnNl
dENsaWVudChuZXcgRnJhbWVMb2FkZXJDbGllbnRXaW4oKSk7CiB9CiAKIEZyYW1lV2luOjp+RnJh
bWVXaW4oKQpAQCAtOTYsNyArOTMsNyBAQCBib29sIEZyYW1lV2luOjprZXlQcmVzcyhjb25zdCBQ
bGF0Zm9ybUtlCiAgICAgRG9jdW1lbnQgKmRvYyA9IGRvY3VtZW50KCk7CiAgICAgaWYgKCFkb2Mp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBOb2RlICpub2RlID0gZG9jLT5mb2N1c05vZGUo
KTsKKyAgICBOb2RlICpub2RlID0gZG9jLT5mb2N1c2VkTm9kZSgpOwogICAgIGlmICghbm9kZSkg
ewogICAgICAgICBpZiAoZG9jLT5pc0hUTUxEb2N1bWVudCgpKQogICAgICAgICAgICAgbm9kZSA9
IGRvYy0+Ym9keSgpOwpAQCAtMTA1LDcgKzEwMiw3IEBAIGJvb2wgRnJhbWVXaW46OmtleVByZXNz
KGNvbnN0IFBsYXRmb3JtS2UKICAgICAgICAgaWYgKCFub2RlKQogICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgIH0KLSAgICAKKwogICAgIGlmICgha2V5RXZlbnQuaXNLZXlVcCgpKQogICAg
ICAgICBsb2FkZXIoKS0+cmVzZXRNdWx0aXBsZUZvcm1TdWJtaXNzaW9uUHJvdGVjdGlvbigpOwog
CkBAIC0xMTYsOSArMTEzLDQgQEAgYm9vbCBGcmFtZVdpbjo6a2V5UHJlc3MoY29uc3QgUGxhdGZv
cm1LZQogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLXZvaWQgRnJhbWVXaW46OmNyZWF0ZU5ld1dp
bmRvdyhjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBXaW5kb3dGZWF0dXJl
cyYgZmVhdHVyZXMsIEZyYW1lKiYgbmV3RnJhbWUpCi17Ci0gICAgbV9jbGllbnQtPmNyZWF0ZU5l
d1dpbmRvdyhyZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLCBmZWF0dXJlcywgbmV3RnJhbWUpOwot
fQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBXZWJDb3JlL2JyaWRnZS93aW4vRnJh
bWVXaW4uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JyaWRnZS93aW4vRnJhbWVXaW4uaAkocmV2
aXNpb24gMTc5NjApCisrKyBXZWJDb3JlL2JyaWRnZS93aW4vRnJhbWVXaW4uaAkod29ya2luZyBj
b3B5KQpAQCAtNDcsNjYgKzQ3LDM5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIGNsYXNz
IEZyYW1lV2luIDogcHVibGljIEZyYW1lIHsKICAgICBwdWJsaWM6Ci0gICAgICAgIEZyYW1lV2lu
KFBhZ2UqLCBFbGVtZW50KiwgUGFzc1JlZlB0cjxFZGl0b3JDbGllbnQ+LCBGcmFtZVdpbkNsaWVu
dCopOworICAgICAgICBGcmFtZVdpbihQYWdlKiwgRWxlbWVudCosIEZyYW1lV2luQ2xpZW50Kik7
CiAgICAgICAgIHZpcnR1YWwgfkZyYW1lV2luKCk7CiAKLSAgICAgICAgdmlydHVhbCB2b2lkIGNy
ZWF0ZU5ld1dpbmRvdyhjb25zdCBGcmFtZUxvYWRSZXF1ZXN0JiwgY29uc3QgV2luZG93RmVhdHVy
ZXMmLCBGcmFtZSomIHBhcnQpOwotCi0gICAgICAgIHZpcnR1YWwgdm9pZCBzY2hlZHVsZUNsb3Nl
KCk7Ci0KLSAgICAgICAgdmlydHVhbCB2b2lkIGZvY3VzV2luZG93KCk7Ci0gICAgICAgIHZpcnR1
YWwgdm9pZCB1bmZvY3VzV2luZG93KCk7Ci0KLSAgICAgICAgdmlydHVhbCB2b2lkIGFkZE1lc3Nh
Z2VUb0NvbnNvbGUoY29uc3QgU3RyaW5nJiBtZXNzYWdlLCAgdW5zaWduZWQgaW50IGxpbmVOdW1i
ZXIsIGNvbnN0IFN0cmluZyYgc291cmNlSUQpOworICAgICAgICB2aXJ0dWFsIEtKUzo6QmluZGlu
Z3M6Okluc3RhbmNlKiBnZXRFbWJlZEluc3RhbmNlRm9yV2lkZ2V0KFdpZGdldCopOworICAgICAg
ICB2aXJ0dWFsIEtKUzo6QmluZGluZ3M6Okluc3RhbmNlKiBnZXRPYmplY3RJbnN0YW5jZUZvcldp
ZGdldChXaWRnZXQqKTsKKyAgICAgICAgdmlydHVhbCBLSlM6OkJpbmRpbmdzOjpJbnN0YW5jZSog
Z2V0QXBwbGV0SW5zdGFuY2VGb3JXaWRnZXQoV2lkZ2V0Kik7CisgICAgICAgIHZpcnR1YWwgS0pT
OjpCaW5kaW5nczo6Um9vdE9iamVjdCogYmluZGluZ1Jvb3RPYmplY3QoKTsKIAogICAgICAgICB2
aXJ0dWFsIHZvaWQgcnVuSmF2YVNjcmlwdEFsZXJ0KGNvbnN0IFN0cmluZyYgbWVzc2FnZSk7CiAg
ICAgICAgIHZpcnR1YWwgYm9vbCBydW5KYXZhU2NyaXB0Q29uZmlybShjb25zdCBTdHJpbmcmIG1l
c3NhZ2UpOwogICAgICAgICB2aXJ0dWFsIGJvb2wgcnVuSmF2YVNjcmlwdFByb21wdChjb25zdCBT
dHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVmYXVsdFZhbHVlLCBTdHJpbmcmIHJlc3Vs
dCk7CiAgICAgICAgIHZpcnR1YWwgYm9vbCBzaG91bGRJbnRlcnJ1cHRKYXZhU2NyaXB0KCk7Ci0K
LSAgICAgICAgdmlydHVhbCBib29sIGxvY2F0aW9uYmFyVmlzaWJsZSgpOwotICAgICAgICB2aXJ0
dWFsIGJvb2wgbWVudWJhclZpc2libGUoKTsKLSAgICAgICAgdmlydHVhbCBib29sIHBlcnNvbmFs
YmFyVmlzaWJsZSgpOwotICAgICAgICB2aXJ0dWFsIGJvb2wgc3RhdHVzYmFyVmlzaWJsZSgpOwot
ICAgICAgICB2aXJ0dWFsIGJvb2wgdG9vbGJhclZpc2libGUoKTsKLQotICAgICAgICB2aXJ0dWFs
IFJhbmdlKiBtYXJrZWRUZXh0UmFuZ2UoKSBjb25zdDsKLQotICAgICAgICB2aXJ0dWFsIFN0cmlu
ZyBtaW1lVHlwZUZvckZpbGVOYW1lKGNvbnN0IFN0cmluZyYpIGNvbnN0OworICAgICAgICB2aXJ0
dWFsIHZvaWQgc2NoZWR1bGVDbG9zZSgpOworICAgICAgICB2aXJ0dWFsIHZvaWQgZm9jdXNXaW5k
b3coKTsKKyAgICAgICAgdmlydHVhbCB2b2lkIHVuZm9jdXNXaW5kb3coKTsKKyAgICAgICAgdmly
dHVhbCB2b2lkIHByaW50KCk7CiAKICAgICAgICAgdmlydHVhbCB2b2lkIGlnbm9yZVNwZWxsaW5n
KCk7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBsZWFyblNwZWxsaW5nKCk7CisgICAgICAgIHZpcnR1
YWwgYm9vbCBpc1NlbGVjdGlvbk1pc3NwZWxsZWQoKTsKKyAgICAgICAgdmlydHVhbCBWZWN0b3I8
U3RyaW5nPiBndWVzc2VzRm9yTWlzc3BlbGxlZFNlbGVjdGlvbigpOwogICAgICAgICB2aXJ0dWFs
IHZvaWQgbWFya01pc3NwZWxsaW5nc0luQWRqYWNlbnRXb3Jkcyhjb25zdCBWaXNpYmxlUG9zaXRp
b24mKTsKICAgICAgICAgdmlydHVhbCB2b2lkIG1hcmtNaXNzcGVsbGluZ3MoY29uc3QgU2VsZWN0
aW9uJik7Ci0KLSAgICAgICAgdmlydHVhbCBib29sIGxhc3RFdmVudElzTW91c2VVcCgpIGNvbnN0
OwotCi0gICAgICAgIHZpcnR1YWwgYm9vbCBwYXNzU3ViZnJhbWVFdmVudFRvU3ViZnJhbWUoTW91
c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cyAmLCBGcmFtZSogc3ViZnJhbWVQYXJ0ID0gMCk7Ci0g
ICAgICAgIHZpcnR1YWwgYm9vbCBwYXNzV2hlZWxFdmVudFRvQ2hpbGRXaWRnZXQoTm9kZSopOwot
Ci0gICAgICAgIHZpcnR1YWwgS0pTOjpCaW5kaW5nczo6SW5zdGFuY2UqIGdldEVtYmVkSW5zdGFu
Y2VGb3JXaWRnZXQoV2lkZ2V0Kik7Ci0gICAgICAgIHZpcnR1YWwgS0pTOjpCaW5kaW5nczo6SW5z
dGFuY2UqIGdldE9iamVjdEluc3RhbmNlRm9yV2lkZ2V0KFdpZGdldCopOwotICAgICAgICB2aXJ0
dWFsIEtKUzo6QmluZGluZ3M6Okluc3RhbmNlKiBnZXRBcHBsZXRJbnN0YW5jZUZvcldpZGdldChX
aWRnZXQqKTsKLSAgICAgICAgdmlydHVhbCBLSlM6OkJpbmRpbmdzOjpSb290T2JqZWN0KiBiaW5k
aW5nUm9vdE9iamVjdCgpOwotCi0gICAgICAgIHZpcnR1YWwgdm9pZCByZWdpc3RlckNvbW1hbmRG
b3JVbmRvKFBhc3NSZWZQdHI8RWRpdENvbW1hbmQ+KTsKLSAgICAgICAgdmlydHVhbCB2b2lkIHJl
Z2lzdGVyQ29tbWFuZEZvclJlZG8oUGFzc1JlZlB0cjxFZGl0Q29tbWFuZD4pOwotICAgICAgICB2
aXJ0dWFsIHZvaWQgY2xlYXJVbmRvUmVkb09wZXJhdGlvbnMoKTsKLSAgICAgICAgdmlydHVhbCB2
b2lkIGlzc3VlVW5kb0NvbW1hbmQoKTsKLSAgICAgICAgdmlydHVhbCB2b2lkIGlzc3VlUmVkb0Nv
bW1hbmQoKTsKKyAgICAgICAgdmlydHVhbCBSYW5nZSogbWFya2VkVGV4dFJhbmdlKCkgY29uc3Q7
CiAgICAgICAgIHZpcnR1YWwgdm9pZCBpc3N1ZUN1dENvbW1hbmQoKTsKICAgICAgICAgdmlydHVh
bCB2b2lkIGlzc3VlQ29weUNvbW1hbmQoKTsKICAgICAgICAgdmlydHVhbCB2b2lkIGlzc3VlUGFz
dGVDb21tYW5kKCk7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBpc3N1ZVBhc3RlQW5kTWF0Y2hTdHls
ZUNvbW1hbmQoKTsKICAgICAgICAgdmlydHVhbCB2b2lkIGlzc3VlVHJhbnNwb3NlQ29tbWFuZCgp
OwogICAgICAgICB2aXJ0dWFsIHZvaWQgcmVzcG9uZFRvQ2hhbmdlZFNlbGVjdGlvbihjb25zdCBT
ZWxlY3Rpb24mIG9sZFNlbGVjdGlvbiwgYm9vbCBjbG9zZVR5cGluZyk7Ci0gICAgICAgIHZpcnR1
YWwgdm9pZCByZXNwb25kVG9DaGFuZ2VkQ29udGVudHMoY29uc3QgU2VsZWN0aW9uJiBlbmRpbmdT
ZWxlY3Rpb24pOwogICAgICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkQ2hhbmdlU2VsZWN0aW9uKGNv
bnN0IFNlbGVjdGlvbiYgb2xkU2VsZWN0aW9uLCBjb25zdCBTZWxlY3Rpb24mIG5ld1NlbGVjdGlv
biwgRUFmZmluaXR5IGFmZmluaXR5LCBib29sIHN0aWxsU2VsZWN0aW5nKSBjb25zdDsKIAotICAg
ICAgICB2aXJ0dWFsIGJvb2wgY2FuUGFzdGUoKSBjb25zdDsKLSAgICAgICAgdmlydHVhbCBib29s
IGNhblJlZG8oKSBjb25zdDsKLSAgICAgICAgdmlydHVhbCBib29sIGNhblVuZG8oKSBjb25zdDsK
LSAgICAgICAgdmlydHVhbCB2b2lkIHByaW50KCk7CisgICAgICAgIHZpcnR1YWwgU3RyaW5nIG1p
bWVUeXBlRm9yRmlsZU5hbWUoY29uc3QgU3RyaW5nJikgY29uc3Q7CiAKICAgICAgICAgdmlydHVh
bCBib29sIGtleVByZXNzKGNvbnN0IFBsYXRmb3JtS2V5Ym9hcmRFdmVudCYpOwogCkluZGV4OiBX
ZWJDb3JlL2xvYWRlci93aW4vRnJhbWVMb2FkZXJDbGllbnRXaW4uaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL2xvYWRlci93aW4vRnJhbWVMb2FkZXJDbGllbnRXaW4uaAkocmV2aXNpb24gMTc5NjAp
CisrKyBXZWJDb3JlL2xvYWRlci93aW4vRnJhbWVMb2FkZXJDbGllbnRXaW4uaAkod29ya2luZyBj
b3B5KQpAQCAtMzUsNiArMzUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgY2xhc3MgRnJh
bWVMb2FkZXJDbGllbnRXaW4gOiBwdWJsaWMgRnJhbWVMb2FkZXJDbGllbnQsIHB1YmxpYyBTaGFy
ZWQ8RnJhbWVMb2FkZXJDbGllbnRXaW4+IHsKICAgICBwdWJsaWM6CiAgICAgICAgIHZpcnR1YWwg
fkZyYW1lTG9hZGVyQ2xpZW50V2luKCkgeyB9CisgICAgICAgIHZpcnR1YWwgdm9pZCBmcmFtZUxv
YWRlckRlc3Ryb3llZCgpOwogCiAgICAgICAgIHZpcnR1YWwgdm9pZCByZWYoKSB7IFNoYXJlZDxG
cmFtZUxvYWRlckNsaWVudFdpbj46OnJlZigpOyB9CiAgICAgICAgIHZpcnR1YWwgdm9pZCBkZXJl
ZigpIHsgU2hhcmVkPEZyYW1lTG9hZGVyQ2xpZW50V2luPjo6ZGVyZWYoKTsgfQpAQCAtMTIyLDYg
KzEyMyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2b2lkIGNhbmNl
bFBlbmRpbmdBcmNoaXZlTG9hZChSZXNvdXJjZUxvYWRlciopOwogICAgICAgICB2aXJ0dWFsIHZv
aWQgY2xlYXJBcmNoaXZlZFJlc291cmNlcygpOwogCisgICAgICAgIHZpcnR1YWwgYm9vbCBjYW5I
YW5kbGVSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYpIGNvbnN0OwogICAgICAgICB2aXJ0
dWFsIGJvb2wgY2FuU2hvd01JTUVUeXBlKGNvbnN0IFN0cmluZyYpIGNvbnN0OwogICAgICAgICB2
aXJ0dWFsIGJvb2wgcmVwcmVzZW50YXRpb25FeGlzdHNGb3JVUkxTY2hlbWUoY29uc3QgU3RyaW5n
JikgY29uc3Q7CiAgICAgICAgIHZpcnR1YWwgU3RyaW5nIGdlbmVyYXRlZE1JTUVUeXBlRm9yVVJM
U2NoZW1lKGNvbnN0IFN0cmluZyYpIGNvbnN0OwpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9Db250
ZXh0TWVudS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vQ29udGV4dE1lbnUuaAko
cmV2aXNpb24gMTc5NjApCisrKyBXZWJDb3JlL3BsYXRmb3JtL0NvbnRleHRNZW51LmgJKHdvcmtp
bmcgY29weSkKQEAgLTMxLDcgKzMxLDkgQEAKICNpbmNsdWRlICJDb250ZXh0TWVudUl0ZW0uaCIK
ICNpbmNsdWRlICJIaXRUZXN0UmVzdWx0LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIK
KyNpZiBQTEFURk9STShNQUMpCiAjaW5jbHVkZSAiUmV0YWluUHRyLmgiCisjZW5kaWYKIAogI2lm
IFBMQVRGT1JNKE1BQykKICNpZmRlZiBfX09CSkNfXwpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9X
aWRnZXQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5oCShyZXZpc2lv
biAxNzk2MCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgJKHdvcmtpbmcgY29weSkKQEAg
LTE2NywxMCArMTY3LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgICAgIGJvb2wgc3Vw
cHJlc3NJbnZhbGlkYXRpb24oKSBjb25zdDsKICAgICAgICAgdm9pZCBzZXRTdXBwcmVzc0ludmFs
aWRhdGlvbihib29sKTsKLQotICAgICAgICAvLyBUaGVzZSBtZXRob2RzIHdpbGwgYmUgY2FsbGVk
IG9uIGEgd2lkZ2V0IHdoaWxlIGl0IGlzIGNhcHR1cmluZyB0aGUgbW91c2UuCi0gICAgICAgIHZp
cnR1YWwgYm9vbCBoYW5kbGVNb3VzZU1vdmVFdmVudChjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQm
KSB7IHJldHVybiBmYWxzZTsgfQotICAgICAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlTW91c2VSZWxl
YXNlRXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JikgeyByZXR1cm4gZmFsc2U7IH0KICNl
bmRpZgogCiAjaWYgUExBVEZPUk0oR0RLKQpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS93aW4vUGxh
dGZvcm1TY3JvbGxCYXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL3dpbi9QbGF0
Zm9ybVNjcm9sbEJhci5oCShyZXZpc2lvbiAxNzk2MCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vd2lu
L1BsYXRmb3JtU2Nyb2xsQmFyLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDkgKzQ0LDYgQEAgcHVi
bGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgdm9p
ZCBwYWludChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBJbnRSZWN0JiBkYW1hZ2VSZWN0KTsKIAot
ICAgIHZpcnR1YWwgdm9pZCBoYW5kbGVNb3VzZU1vdmVFdmVudChjb25zdCBQbGF0Zm9ybU1vdXNl
RXZlbnQmKSB7fTsKLSAgICB2aXJ0dWFsIHZvaWQgaGFuZGxlTW91c2VPdXRFdmVudChjb25zdCBQ
bGF0Zm9ybU1vdXNlRXZlbnQmKSB7fTsKLQogICAgIHN0YXRpYyBpbnQgaG9yaXpvbnRhbFNjcm9s
bGJhckhlaWdodCgpIHsgcmV0dXJuIDE3OyB9CiAgICAgc3RhdGljIGludCB2ZXJ0aWNhbFNjcm9s
bGJhcldpZHRoKCkgeyByZXR1cm4gMTc7IH0KIApJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS93aW4v
VGVtcG9yYXJ5TGlua1N0dWJzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL3dp
bi9UZW1wb3JhcnlMaW5rU3R1YnMuY3BwCShyZXZpc2lvbiAxNzk2MCkKKysrIFdlYkNvcmUvcGxh
dGZvcm0vd2luL1RlbXBvcmFyeUxpbmtTdHVicy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM0LDEz
ICszNCwxNyBAQAogI2luY2x1ZGUgIkFYT2JqZWN0Q2FjaGUuaCIKICNpbmNsdWRlICJDYWNoZWRS
ZXNvdXJjZS5oIgogI2luY2x1ZGUgIkNocm9tZUNsaWVudFdpbi5oIgorI2luY2x1ZGUgIkNsaXBi
b2FyZC5oIgogI2luY2x1ZGUgIkNvbnRleHRNZW51LmgiCiAjaW5jbHVkZSAiQ29udGV4dE1lbnVD
bGllbnRXaW4uaCIKKyNpbmNsdWRlICJDb250ZXh0TWVudUl0ZW0uaCIKICNpbmNsdWRlICJDb29r
aWVKYXIuaCIKICNpbmNsdWRlICJDU3RyaW5nLmgiCiAjaW5jbHVkZSAiQ3Vyc29yLmgiCisjaW5j
bHVkZSAiRG9jdW1lbnRGcmFnbWVudC5oIgogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCiAj
aW5jbHVkZSAiRWRpdENvbW1hbmQuaCIKKyNpbmNsdWRlICJFZGl0b3IuaCIKICNpbmNsdWRlICJF
ZGl0b3JDbGllbnRXaW4uaCIKICNpbmNsdWRlICJFdmVudEhhbmRsZXIuaCIKICNpbmNsdWRlICJG
aWxlQ2hvb3Nlci5oIgpAQCAtNjIsNiArNjYsNyBAQAogI2luY2x1ZGUgIkxvY2FsaXplZFN0cmlu
Z3MuaCIKICNpbmNsdWRlICJOb2RlLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgorI2luY2x1ZGUgIlBh
c3RlYm9hcmQuaCIKICNpbmNsdWRlICJQYXRoLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1Nb3VzZUV2
ZW50LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TY3JvbGxCYXIuaCIKQEAgLTEyMiw5ICsxMjcsOSBA
QCBTdHJpbmcgc3VibWl0QnV0dG9uRGVmYXVsdExhYmVsKCkgeyBub3RJCiAKIGJvb2wgQVhPYmpl
Y3RDYWNoZTo6Z0FjY2Vzc2liaWxpdHlFbmFibGVkID0gZmFsc2U7CiAKLXZvaWQgQ2FjaGVkUmVz
b3VyY2U6OnNldFBsYXRmb3JtUmVzcG9uc2UoUGxhdGZvcm1SZXNwb25zZSkgeyBub3RJbXBsZW1l
bnRlZCgpOyB9CiB2b2lkIENhY2hlZFJlc291cmNlOjpzZXRBbGxEYXRhKFBsYXRmb3JtRGF0YSkg
eyBub3RJbXBsZW1lbnRlZCgpOyB9CiAKK3ZvaWQgQ2hyb21lQ2xpZW50V2luOjpjaHJvbWVEZXN0
cm95ZWQoKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KIHZvaWQgQ2hyb21lQ2xpZW50V2luOjpzZXRX
aW5kb3dSZWN0KGNvbnN0IEZsb2F0UmVjdCYpIHsgbm90SW1wbGVtZW50ZWQoKTsgfQogRmxvYXRS
ZWN0IENocm9tZUNsaWVudFdpbjo6d2luZG93UmVjdCgpIHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0
dXJuIEZsb2F0UmVjdCgpOyB9CiBGbG9hdFJlY3QgQ2hyb21lQ2xpZW50V2luOjpwYWdlUmVjdCgp
IHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIEZsb2F0UmVjdCgpOyB9CkBAIC0xNDUsMTYgKzE1
MCwyMyBAQCBib29sIENocm9tZUNsaWVudFdpbjo6c2Nyb2xsYmFyc1Zpc2libGUoCiB2b2lkIENo
cm9tZUNsaWVudFdpbjo6c2V0TWVudWJhclZpc2libGUoYm9vbCkgeyBub3RJbXBsZW1lbnRlZCgp
OyB9CiBib29sIENocm9tZUNsaWVudFdpbjo6bWVudWJhclZpc2libGUoKSB7IG5vdEltcGxlbWVu
dGVkKCk7IHJldHVybiBmYWxzZTsgfQogdm9pZCBDaHJvbWVDbGllbnRXaW46OnNldFJlc2l6YWJs
ZShib29sKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KK3ZvaWQgQ2hyb21lQ2xpZW50V2luOjphZGRN
ZXNzYWdlVG9Db25zb2xlKGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgdW5zaWduZWQgaW50IGxpbmVO
dW1iZXIsIGNvbnN0IFN0cmluZyYgc291cmNlSUQpIHsgbm90SW1wbGVtZW50ZWQoKTsgfQogCi12
b2lkIENvbnRleHRNZW51OjphcHBlbmRJdGVtKENvbnRleHRNZW51SXRlbSBpdGVtKSB7IG5vdElt
cGxlbWVudGVkKCk7IH0KK0NvbnRleHRNZW51OjpDb250ZXh0TWVudShjb25zdCBIaXRUZXN0UmVz
dWx0JiByZXN1bHQpIDogbV9oaXRUZXN0UmVzdWx0KHJlc3VsdCkgeyBub3RJbXBsZW1lbnRlZCgp
OyB9CitDb250ZXh0TWVudTo6fkNvbnRleHRNZW51KCkgeyBub3RJbXBsZW1lbnRlZCgpOyB9Cit2
b2lkIENvbnRleHRNZW51OjphcHBlbmRJdGVtKGNvbnN0IENvbnRleHRNZW51SXRlbSYgaXRlbSkg
eyBub3RJbXBsZW1lbnRlZCgpOyB9CiB2b2lkIENvbnRleHRNZW51OjpzaG93KCkgeyBub3RJbXBs
ZW1lbnRlZCgpOyB9CiAKK3ZvaWQgQ29udGV4dE1lbnVDbGllbnRXaW46OmNvbnRleHRNZW51RGVz
dHJveWVkKCkgeyBub3RJbXBsZW1lbnRlZCgpOyB9CiB2b2lkIENvbnRleHRNZW51Q2xpZW50V2lu
OjphZGRDdXN0b21Db250ZXh0TWVudUl0ZW1zKENvbnRleHRNZW51KikgeyBub3RJbXBsZW1lbnRl
ZCgpOyB9Cit2b2lkIENvbnRleHRNZW51Q2xpZW50V2luOjpjb250ZXh0TWVudUl0ZW1TZWxlY3Rl
ZChDb250ZXh0TWVudUl0ZW0qKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KIHZvaWQgQ29udGV4dE1l
bnVDbGllbnRXaW46OmNvcHlMaW5rVG9DbGlwYm9hcmQoSGl0VGVzdFJlc3VsdCkgeyBub3RJbXBs
ZW1lbnRlZCgpOyB9CiB2b2lkIENvbnRleHRNZW51Q2xpZW50V2luOjpkb3dubG9hZFVSTChLVVJM
KSB7IG5vdEltcGxlbWVudGVkKCk7IH0KIHZvaWQgQ29udGV4dE1lbnVDbGllbnRXaW46OmNvcHlJ
bWFnZVRvQ2xpcGJvYXJkKEhpdFRlc3RSZXN1bHQpIHsgbm90SW1wbGVtZW50ZWQoKTsgfQogdm9p
ZCBDb250ZXh0TWVudUNsaWVudFdpbjo6bG9va1VwSW5EaWN0aW9uYXJ5KEZyYW1lKikgeyBub3RJ
bXBsZW1lbnRlZCgpOyB9CiAKK0NvbnRleHRNZW51SXRlbTo6fkNvbnRleHRNZW51SXRlbSgpIHsg
bm90SW1wbGVtZW50ZWQoKTsgfQorCiB2b2lkIERvY3VtZW50TG9hZGVyOjpzZXRGcmFtZShGcmFt
ZSopIHsgbm90SW1wbGVtZW50ZWQoKTsgfQogRnJhbWVMb2FkZXIqIERvY3VtZW50TG9hZGVyOjpm
cmFtZUxvYWRlcigpIGNvbnN0IHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIG1fZnJhbWUtPmxv
YWRlcigpOyB9CiBLVVJMIERvY3VtZW50TG9hZGVyOjpVUkwoKSBjb25zdCB7IG5vdEltcGxlbWVu
dGVkKCk7IHJldHVybiBLVVJMKCk7IH0KQEAgLTE2Niw4ICsxNzgsMTIgQEAgdm9pZCBEb2N1bWVu
dExvYWRlcjo6c2V0dXBGb3JSZXBsYWNlQnlNSQogYm9vbCBEb2N1bWVudExvYWRlcjo6aXNMb2Fk
aW5nSW5BUElTZW5zZSgpIGNvbnN0IHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIGZhbHNlOyB9
CiB2b2lkIERvY3VtZW50TG9hZGVyOjpzdG9wUmVjb3JkaW5nUmVzcG9uc2VzKCkgeyBub3RJbXBs
ZW1lbnRlZCgpOyB9CiAKK1Bhc3NSZWZQdHI8Q2xpcGJvYXJkPiBFZGl0b3I6Om5ld0dlbmVyYWxD
bGlwYm9hcmQoQ2xpcGJvYXJkQWNjZXNzUG9saWN5IHBvbGljeSkgeyBub3RJbXBsZW1lbnRlZCgp
OyByZXR1cm4gMDsgfQorCit2b2lkIEVkaXRvckNsaWVudFdpbjo6cGFnZURlc3Ryb3llZCgpIHsg
bm90SW1wbGVtZW50ZWQoKTsgfQogYm9vbCBFZGl0b3JDbGllbnRXaW46OnNob3VsZERlbGV0ZVJh
bmdlKFJhbmdlKikgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gZmFsc2U7IH0KIGJvb2wgRWRp
dG9yQ2xpZW50V2luOjpzaG91bGRTaG93RGVsZXRlSW50ZXJmYWNlKEhUTUxFbGVtZW50KikgeyBu
b3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gZmFsc2U7IH0KK2Jvb2wgRWRpdG9yQ2xpZW50V2luOjpz
bWFydEluc2VydERlbGV0ZUVuYWJsZWQoKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBmYWxz
ZTsgfQogYm9vbCBFZGl0b3JDbGllbnRXaW46OmlzQ29udGludW91c1NwZWxsQ2hlY2tpbmdFbmFi
bGVkKCkgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gZmFsc2U7IH0KIGJvb2wgRWRpdG9yQ2xp
ZW50V2luOjppc0dyYW1tYXJDaGVja2luZ0VuYWJsZWQoKSB7IG5vdEltcGxlbWVudGVkKCk7IHJl
dHVybiBmYWxzZTsgfQogaW50IEVkaXRvckNsaWVudFdpbjo6c3BlbGxDaGVja2VyRG9jdW1lbnRU
YWcoKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiAwOyB9CkBAIC0xNzUsNiArMTkxLDcgQEAg
Ym9vbCBFZGl0b3JDbGllbnRXaW46OnNlbGVjdFdvcmRCZWZvcmVNZQogYm9vbCBFZGl0b3JDbGll
bnRXaW46OmlzRWRpdGFibGUoKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBmYWxzZTsgfQog
Ym9vbCBFZGl0b3JDbGllbnRXaW46OnNob3VsZEJlZ2luRWRpdGluZyhSYW5nZSopIHsgbm90SW1w
bGVtZW50ZWQoKTsgcmV0dXJuIGZhbHNlOyB9CiBib29sIEVkaXRvckNsaWVudFdpbjo6c2hvdWxk
RW5kRWRpdGluZyhSYW5nZSopIHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIGZhbHNlOyB9Citi
b29sIEVkaXRvckNsaWVudFdpbjo6c2hvdWxkSW5zZXJ0Tm9kZShOb2RlKiwgUmFuZ2UqLCBFZGl0
b3JJbnNlcnRBY3Rpb24pIHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIGZhbHNlOyB9CiBib29s
IEVkaXRvckNsaWVudFdpbjo6c2hvdWxkSW5zZXJ0VGV4dChTdHJpbmcsIFJhbmdlKiwgRWRpdG9y
SW5zZXJ0QWN0aW9uKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBmYWxzZTsgfQogYm9vbCBF
ZGl0b3JDbGllbnRXaW46OnNob3VsZEFwcGx5U3R5bGUoQ1NTU3R5bGVEZWNsYXJhdGlvbiosIFJh
bmdlKikgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gZmFsc2U7IH0KIHZvaWQgRWRpdG9yQ2xp
ZW50V2luOjpkaWRCZWdpbkVkaXRpbmcoKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KQEAgLTIzMSwx
MSArMjQ4LDExIEBAIEtVUkwgRnJhbWVMb2FkZXI6Om9yaWdpbmFsUmVxdWVzdFVSTCgpIGMKIGJv
b2wgRnJhbWVMb2FkZXI6OmNhbkdvQmFja09yRm9yd2FyZChpbnQpIGNvbnN0IHsgbm90SW1wbGVt
ZW50ZWQoKTsgcmV0dXJuIGZhbHNlOyB9CiBPYmplY3RDb250ZW50VHlwZSBGcmFtZUxvYWRlcjo6
b2JqZWN0Q29udGVudFR5cGUoY29uc3QgS1VSTCYsIGNvbnN0IFN0cmluZyYpIHsgbm90SW1wbGVt
ZW50ZWQoKTsgcmV0dXJuIE9iamVjdENvbnRlbnROb25lOyB9CiBXaWRnZXQqIEZyYW1lTG9hZGVy
OjpjcmVhdGVQbHVnaW4oRWxlbWVudCosIGNvbnN0IEtVUkwmLCBjb25zdCBWZWN0b3I8U3RyaW5n
PiYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiwgY29uc3QgU3RyaW5nJikgeyBub3RJbXBsZW1lbnRl
ZCgpOyByZXR1cm4gMDsgfQotdm9pZCBGcmFtZUxvYWRlcjo6ZGV0YWNoRnJvbVBhcmVudCgpIHsg
bm90SW1wbGVtZW50ZWQoKTsgfQogdm9pZCBGcmFtZUxvYWRlcjo6Y2hlY2tMb2FkQ29tcGxldGVG
b3JUaGlzRnJhbWUoKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KIHZvaWQgRnJhbWVMb2FkZXI6OnJl
bG9hZCgpIHsgbm90SW1wbGVtZW50ZWQoKTsgfQogCi1ib29sIEZyYW1lTG9hZGVyQ2xpZW50V2lu
OjpoYXNXZWJWaWV3KCkgY29uc3QgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gZmFsc2U7IH0K
K3ZvaWQgRnJhbWVMb2FkZXJDbGllbnRXaW46OmZyYW1lTG9hZGVyRGVzdHJveWVkKCkgeyBub3RJ
bXBsZW1lbnRlZCgpOyB9Citib29sIEZyYW1lTG9hZGVyQ2xpZW50V2luOjpoYXNXZWJWaWV3KCkg
Y29uc3QgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gdHJ1ZTsgfQogYm9vbCBGcmFtZUxvYWRl
ckNsaWVudFdpbjo6aGFzRnJhbWVWaWV3KCkgY29uc3QgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1
cm4gZmFsc2U7IH0KIGJvb2wgRnJhbWVMb2FkZXJDbGllbnRXaW46Omhhc0JhY2tGb3J3YXJkTGlz
dCgpIGNvbnN0IHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIGZhbHNlOyB9CiB2b2lkIEZyYW1l
TG9hZGVyQ2xpZW50V2luOjpyZXNldEJhY2tGb3J3YXJkTGlzdCgpIHsgbm90SW1wbGVtZW50ZWQo
KTsgfQpAQCAtMjk0LDYgKzMxMSw3IEBAIHZvaWQgRnJhbWVMb2FkZXJDbGllbnRXaW46OnNldERl
ZmVyc0xvYWQKIGJvb2wgRnJhbWVMb2FkZXJDbGllbnRXaW46OmlzQXJjaGl2ZUxvYWRQZW5kaW5n
KFJlc291cmNlTG9hZGVyKikgY29uc3QgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gZmFsc2U7
IH0KIHZvaWQgRnJhbWVMb2FkZXJDbGllbnRXaW46OmNhbmNlbFBlbmRpbmdBcmNoaXZlTG9hZChS
ZXNvdXJjZUxvYWRlciopIHsgbm90SW1wbGVtZW50ZWQoKTsgfQogdm9pZCBGcmFtZUxvYWRlckNs
aWVudFdpbjo6Y2xlYXJBcmNoaXZlZFJlc291cmNlcygpIHsgbm90SW1wbGVtZW50ZWQoKTsgfQor
Ym9vbCBGcmFtZUxvYWRlckNsaWVudFdpbjo6Y2FuSGFuZGxlUmVxdWVzdChjb25zdCBSZXNvdXJj
ZVJlcXVlc3QmKSBjb25zdCB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBmYWxzZTsgfQogYm9v
bCBGcmFtZUxvYWRlckNsaWVudFdpbjo6Y2FuU2hvd01JTUVUeXBlKGNvbnN0IFN0cmluZyYpIGNv
bnN0IHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIGZhbHNlOyB9CiBib29sIEZyYW1lTG9hZGVy
Q2xpZW50V2luOjpyZXByZXNlbnRhdGlvbkV4aXN0c0ZvclVSTFNjaGVtZShjb25zdCBTdHJpbmcm
KSBjb25zdCB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBmYWxzZTsgfQogU3RyaW5nIEZyYW1l
TG9hZGVyQ2xpZW50V2luOjpnZW5lcmF0ZWRNSU1FVHlwZUZvclVSTFNjaGVtZShjb25zdCBTdHJp
bmcmKSBjb25zdCB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBTdHJpbmcoKTsgfQpAQCAtMzEx
LDE1ICszMjksOSBAQCB2b2lkIEZyYW1lVmlldzo6dXBkYXRlQm9yZGVyKCkgeyBub3RJbXBsCiAK
IHZvaWQgRnJhbWVXaW46OmZvY3VzV2luZG93KCkgeyBub3RJbXBsZW1lbnRlZCgpOyB9CiB2b2lk
IEZyYW1lV2luOjp1bmZvY3VzV2luZG93KCkgeyBub3RJbXBsZW1lbnRlZCgpOyB9Ci1ib29sIEZy
YW1lV2luOjpsb2NhdGlvbmJhclZpc2libGUoKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiAw
OyB9Ci12b2lkIEZyYW1lV2luOjppc3N1ZVJlZG9Db21tYW5kKHZvaWQpIHsgbm90SW1wbGVtZW50
ZWQoKTsgfQogS0pTOjpCaW5kaW5nczo6SW5zdGFuY2UqIEZyYW1lV2luOjpnZXRPYmplY3RJbnN0
YW5jZUZvcldpZGdldChXaWRnZXQqKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiAwOyB9CiBL
SlM6OkJpbmRpbmdzOjpJbnN0YW5jZSogRnJhbWVXaW46OmdldEVtYmVkSW5zdGFuY2VGb3JXaWRn
ZXQoV2lkZ2V0KikgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gMDsgfQogS0pTOjpCaW5kaW5n
czo6Um9vdE9iamVjdCogRnJhbWVXaW46OmJpbmRpbmdSb290T2JqZWN0KCkgeyBub3RJbXBsZW1l
bnRlZCgpOyByZXR1cm4gMDsgfQotYm9vbCBGcmFtZVdpbjo6Y2FuUmVkbygpIGNvbnN0IHsgbm90
SW1wbGVtZW50ZWQoKTsgcmV0dXJuIDA7IH0KLWJvb2wgRnJhbWVXaW46OmNhblVuZG8oKSBjb25z
dCB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiAwOyB9Ci12b2lkIEZyYW1lV2luOjpyZWdpc3Rl
ckNvbW1hbmRGb3JVbmRvKFBhc3NSZWZQdHI8V2ViQ29yZTo6RWRpdENvbW1hbmQ+KSB7IG5vdElt
cGxlbWVudGVkKCk7IH0KLXZvaWQgRnJhbWVXaW46OnJlZ2lzdGVyQ29tbWFuZEZvclJlZG8oUGFz
c1JlZlB0cjxXZWJDb3JlOjpFZGl0Q29tbWFuZD4pIHsgbm90SW1wbGVtZW50ZWQoKTsgfQogYm9v
bCBGcmFtZVdpbjo6cnVuSmF2YVNjcmlwdFByb21wdChTdHJpbmcgY29uc3QmLCBTdHJpbmcgY29u
c3QmLCBTdHJpbmcgJikgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gMDsgfQogYm9vbCBGcmFt
ZVdpbjo6c2hvdWxkSW50ZXJydXB0SmF2YVNjcmlwdCgpIHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0
dXJuIGZhbHNlOyB9CiB2b2lkIEZyYW1lV2luOjpwcmludCgpIHsgbm90SW1wbGVtZW50ZWQoKTsg
fQpAQCAtMzI3LDMxICszMzksMjEgQEAgS0pTOjpCaW5kaW5nczo6SW5zdGFuY2UqIEZyYW1lV2lu
OjpnZXRBcAogYm9vbCBGcmFtZVdpbjo6cGFzc01vdXNlRG93bkV2ZW50VG9XaWRnZXQoV2lkZ2V0
KikgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gMDsgfQogdm9pZCBGcmFtZVdpbjo6aXNzdWVD
dXRDb21tYW5kKCkgeyBub3RJbXBsZW1lbnRlZCgpOyB9CiB2b2lkIEZyYW1lV2luOjppc3N1ZUNv
cHlDb21tYW5kKCkgeyBub3RJbXBsZW1lbnRlZCgpOyB9Ci1ib29sIEZyYW1lV2luOjpwYXNzV2hl
ZWxFdmVudFRvQ2hpbGRXaWRnZXQoTm9kZSopIHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIDA7
IH0KLXZvaWQgRnJhbWVXaW46Omlzc3VlVW5kb0NvbW1hbmQoKSB7IG5vdEltcGxlbWVudGVkKCk7
IH0KIFN0cmluZyBGcmFtZVdpbjo6bWltZVR5cGVGb3JGaWxlTmFtZShTdHJpbmcgY29uc3QmKSBj
b25zdCB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBTdHJpbmcoKTsgfQogdm9pZCBGcmFtZVdp
bjo6aXNzdWVQYXN0ZUNvbW1hbmQoKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KIHZvaWQgRnJhbWVX
aW46OnNjaGVkdWxlQ2xvc2UoKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KIHZvaWQgRnJhbWVXaW46
Om1hcmtNaXNzcGVsbGluZ3MoY29uc3QgV2ViQ29yZTo6U2VsZWN0aW9uJikgeyBub3RJbXBsZW1l
bnRlZCgpOyB9Ci1ib29sIEZyYW1lV2luOjptZW51YmFyVmlzaWJsZSgpIHsgbm90SW1wbGVtZW50
ZWQoKTsgcmV0dXJuIDA7IH0KLWJvb2wgRnJhbWVXaW46OnBlcnNvbmFsYmFyVmlzaWJsZSgpIHsg
bm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIDA7IH0KLWJvb2wgRnJhbWVXaW46OnN0YXR1c2JhclZp
c2libGUoKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiAwOyB9Ci1ib29sIEZyYW1lV2luOjp0
b29sYmFyVmlzaWJsZSgpIHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0dXJuIDA7IH0KIHZvaWQgRnJh
bWVXaW46Omlzc3VlVHJhbnNwb3NlQ29tbWFuZCgpIHsgbm90SW1wbGVtZW50ZWQoKTsgfQotYm9v
bCBGcmFtZVdpbjo6Y2FuUGFzdGUoKSBjb25zdCB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiAw
OyB9CiB2b2lkIEZyYW1lV2luOjppc3N1ZVBhc3RlQW5kTWF0Y2hTdHlsZUNvbW1hbmQoKSB7IG5v
dEltcGxlbWVudGVkKCk7IH0KIGJvb2wgRnJhbWVXaW46OmlzTG9hZFR5cGVSZWxvYWQoKSB7IG5v
dEltcGxlbWVudGVkKCk7IHJldHVybiBmYWxzZTsgfQogUmFuZ2UqIEZyYW1lV2luOjptYXJrZWRU
ZXh0UmFuZ2UoKSBjb25zdCB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiAwOyB9Ci1ib29sIEZy
YW1lV2luOjpwYXNzU3ViZnJhbWVFdmVudFRvU3ViZnJhbWUoTW91c2VFdmVudFdpdGhIaXRUZXN0
UmVzdWx0cyYsIEZyYW1lKikgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gZmFsc2U7IH0KLWJv
b2wgRnJhbWVXaW46Omxhc3RFdmVudElzTW91c2VVcCgpIGNvbnN0IHsgbm90SW1wbGVtZW50ZWQo
KTsgcmV0dXJuIGZhbHNlOyB9Ci12b2lkIEZyYW1lV2luOjphZGRNZXNzYWdlVG9Db25zb2xlKFN0
cmluZyBjb25zdCYsIHVuc2lnbmVkIGludCwgU3RyaW5nIGNvbnN0JikgeyBub3RJbXBsZW1lbnRl
ZCgpOyB9CiBib29sIEZyYW1lV2luOjpzaG91bGRDaGFuZ2VTZWxlY3Rpb24oY29uc3QgU2VsZWN0
aW9uJiwgY29uc3QgU2VsZWN0aW9uJiwgRUFmZmluaXR5LCBib29sKSBjb25zdCB7IG5vdEltcGxl
bWVudGVkKCk7IHJldHVybiB0cnVlOyB9CiB2b2lkIEZyYW1lV2luOjpyZXNwb25kVG9DaGFuZ2Vk
U2VsZWN0aW9uKGNvbnN0IFNlbGVjdGlvbiYsIGJvb2wpIHsgbm90SW1wbGVtZW50ZWQoKTsgfQot
dm9pZCBGcmFtZVdpbjo6Y2xlYXJVbmRvUmVkb09wZXJhdGlvbnModm9pZCkgeyBub3RJbXBsZW1l
bnRlZCgpOyB9CiB2b2lkIEZyYW1lV2luOjptYXJrTWlzc3BlbGxpbmdzSW5BZGphY2VudFdvcmRz
KFZpc2libGVQb3NpdGlvbiBjb25zdCYpIHsgbm90SW1wbGVtZW50ZWQoKTsgfQotdm9pZCBGcmFt
ZVdpbjo6cmVzcG9uZFRvQ2hhbmdlZENvbnRlbnRzKGNvbnN0IFNlbGVjdGlvbiYpIHsgbm90SW1w
bGVtZW50ZWQoKTsgfQogdm9pZCBGcmFtZVdpbjo6aWdub3JlU3BlbGxpbmcoKSB7IG5vdEltcGxl
bWVudGVkKCk7IH0KIHZvaWQgRnJhbWVXaW46OmxlYXJuU3BlbGxpbmcoKSB7IG5vdEltcGxlbWVu
dGVkKCk7IH0KK2Jvb2wgRnJhbWVXaW46OmlzU2VsZWN0aW9uTWlzc3BlbGxlZCgpIHsgbm90SW1w
bGVtZW50ZWQoKTsgcmV0dXJuIGZhbHNlOyB9CitWZWN0b3I8U3RyaW5nPiBGcmFtZVdpbjo6Z3Vl
c3Nlc0Zvck1pc3NwZWxsZWRTZWxlY3Rpb24oKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBW
ZWN0b3I8U3RyaW5nPigpOyB9CiAKIHZvaWQgR3JhcGhpY3NDb250ZXh0OjphZGRSb3VuZGVkUmVj
dENsaXAoY29uc3QgSW50UmVjdCYgcmVjdCwgY29uc3QgSW50U2l6ZSYgdG9wTGVmdCwgY29uc3Qg
SW50U2l6ZSYgdG9wUmlnaHQsIGNvbnN0IEludFNpemUmIGJvdHRvbUxlZnQsIGNvbnN0IEludFNp
emUmIGJvdHRvbVJpZ2h0KSB7IG5vdEltcGxlbWVudGVkKCk7IH0KIHZvaWQgR3JhcGhpY3NDb250
ZXh0OjphZGRJbm5lclJvdW5kZWRSZWN0Q2xpcChjb25zdCBJbnRSZWN0JiByZWN0LCBpbnQgdGhp
Y2tuZXNzKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KQEAgLTM4Nyw2ICszODksMjAgQEAgYm9vbCBJ
bWFnZTo6Z2V0SEJJVE1BUChIQklUTUFQKSB7IG5vdEltcAogCiBISU5TVEFOQ0UgUGFnZTo6c19p
bnN0YW5jZUhhbmRsZSA9IDA7CiAKK1Bhc3RlYm9hcmQqIFBhc3RlYm9hcmQ6OmdlbmVyYWxQYXN0
ZWJvYXJkKCkgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gMDsgfQordm9pZCBQYXN0ZWJvYXJk
Ojp3cml0ZVNlbGVjdGlvbihQYXNzUmVmUHRyPFJhbmdlPiwgYm9vbCBjYW5TbWFydENvcHlPckRl
bGV0ZSwgRnJhbWUqKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KK3ZvaWQgUGFzdGVib2FyZDo6Y2xl
YXJUeXBlcygpIHsgbm90SW1wbGVtZW50ZWQoKTsgfQorYm9vbCBQYXN0ZWJvYXJkOjpjYW5TbWFy
dFJlcGxhY2UoKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBmYWxzZTsgfQorUGFzc1JlZlB0
cjxEb2N1bWVudEZyYWdtZW50PiBQYXN0ZWJvYXJkOjpkb2N1bWVudEZyYWdtZW50KEZyYW1lKiwg
UGFzc1JlZlB0cjxSYW5nZT4sIGJvb2wgYWxsb3dQbGFpblRleHQsIGJvb2wmIGNob3NlUGxhaW5U
ZXh0KSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiAwOyB9CitTdHJpbmcgUGFzdGVib2FyZDo6
cGxhaW5UZXh0KEZyYW1lKiBmcmFtZSkgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gU3RyaW5n
KCk7IH0KK1Bhc3RlYm9hcmQ6OlBhc3RlYm9hcmQoKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KK1Bh
c3RlYm9hcmQ6On5QYXN0ZWJvYXJkKCkgeyBub3RJbXBsZW1lbnRlZCgpOyB9CitIYXNoU2V0PGlu
dD4gUGFzdGVib2FyZDo6cmVnaXN0ZXJTZWxlY3Rpb25QYXN0ZWJvYXJkVHlwZXMoKSB7IG5vdElt
cGxlbWVudGVkKCk7IHJldHVybiBIYXNoU2V0PGludD4oKTsgfQordm9pZCBQYXN0ZWJvYXJkOjpy
ZXBsYWNlTkJTUChTdHJpbmcmKSB7IG5vdEltcGxlbWVudGVkKCk7IH0KK0hHTE9CQUwgUGFzdGVi
b2FyZDo6Y3JlYXRlSGFuZGxlKFN0cmluZykgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gMDsg
fQorSEdMT0JBTCBQYXN0ZWJvYXJkOjpjcmVhdGVIYW5kbGUoQ1N0cmluZykgeyBub3RJbXBsZW1l
bnRlZCgpOyByZXR1cm4gMDsgfQorRGVwcmVjYXRlZENTdHJpbmcgUGFzdGVib2FyZDo6Y3JlYXRl
Q0ZfSFRNTEZyb21SYW5nZShQYXNzUmVmUHRyPFJhbmdlPikgeyBub3RJbXBsZW1lbnRlZCgpOyBy
ZXR1cm4gRGVwcmVjYXRlZENTdHJpbmcoKTsgfQorCiBQYXRoOjpQYXRoKCkgeyBub3RJbXBsZW1l
bnRlZCgpOyB9CiBQYXRoOjp+UGF0aCgpIHsgbm90SW1wbGVtZW50ZWQoKTsgfQogUGF0aDo6UGF0
aChjb25zdCBQYXRoJikgeyBub3RJbXBsZW1lbnRlZCgpOyB9CkluZGV4OiBXZWJLaXQvQ2hhbmdl
TG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3OTYwKQorKysg
V2ViS2l0L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDA2LTEy
LTAxICBEb24gR2lic29uICA8ZGdpYnNvbjc3QGdtYWlsLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMTczMjoKKyAgICAgICAgV2luZG93cyBidWlsZCBidXN0YWdlLgorCisg
ICAgICAgICogQ09NL1dlYkZyYW1lLmNwcDoKKyAgICAgICAgKFdlYkZyYW1lOjppbml0V2l0aE5h
bWUpOgorCiAyMDA2LTExLTMwICBHZW9mZnJleSBHYXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CiAK
ICAgICAgICAgUnViYmVyIFN0YW1wZWQgYnkgQW5kZXJzIENhcmxzc29uLgpJbmRleDogV2ViS2l0
L0NPTS9XZWJGcmFtZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L0NPTS9XZWJGcmFtZS5jcHAJ
KHJldmlzaW9uIDE3OTYwKQorKysgV2ViS2l0L0NPTS9XZWJGcmFtZS5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTEzOSw4ICsxMzksOCBAQCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFdlYkZyYW1l
Ojppbml0CiAgICAgaWYgKEZBSUxFRChocikpCiAgICAgICAgIHJldHVybiBocjsKIAotICAgIFBh
Z2UqIHBhZ2UgPSBuZXcgUGFnZShuZXcgQ2hyb21lQ2xpZW50V2luKCksIG5ldyBDb250ZXh0TWVu
dUNsaWVudFdpbigpKTsKLSAgICBGcmFtZSogZnJhbWUgPSBuZXcgRnJhbWVXaW4ocGFnZSwgMCwg
bmV3IEVkaXRvckNsaWVudFdpbigpLCB0aGlzKTsKKyAgICBQYWdlKiBwYWdlID0gbmV3IFBhZ2Uo
bmV3IENocm9tZUNsaWVudFdpbigpLCBuZXcgQ29udGV4dE1lbnVDbGllbnRXaW4oKSwgbmV3IEVk
aXRvckNsaWVudFdpbigpKTsKKyAgICBGcmFtZSogZnJhbWUgPSBuZXcgRnJhbWVXaW4ocGFnZSwg
MCwgdGhpcyk7CiAKICAgICAvLyBGSVhNRTogVGhpcyBpcyBvbmUtdGltZSBpbml0aWFsaXphdGlv
biwgYnV0IGl0IGdldHMgdGhlIHZhbHVlIG9mIHRoZSBzZXR0aW5nIGZyb20gdGhlCiAgICAgLy8g
Y3VycmVudCBXZWJWaWV3LiBUaGF0J3MgYSBtaXNtYXRjaCBhbmQgbm90IGdvb2QhCg==
</data>
<flag name="review"
          id="4214"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>