<?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>87894</bug_id>
          
          <creation_ts>2012-05-30 13:32:06 -0700</creation_ts>
          <short_desc>REGRESSION(r118913): patch is incorrect (see comments in bug 87889) (Requested by thorton on #webkit).</short_desc>
          <delta_ts>2012-05-30 13:35:36 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>87891</dup_id>
          
          <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>87739</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>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>637626</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-30 13:32:06 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/118913 broke the build:
patch is incorrect (see comments in bug 87889) (Requested by thorton 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>637627</commentid>
    <comment_count>1</comment_count>
      <attachid>144909</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-30 13:32:40 -0700</bug_when>
    <thetext>Created attachment 144909
ROLLOUT of r118913

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>637634</commentid>
    <comment_count>2</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2012-05-30 13:35:08 -0700</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 87891 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>144909</attachid>
            <date>2012-05-30 13:32:40 -0700</date>
            <delta_ts>2012-05-30 13:35:36 -0700</delta_ts>
            <desc>ROLLOUT of r118913</desc>
            <filename>bug-87894-20120530203705.patch</filename>
            <type>text/plain</type>
            <size>43520</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE4OTYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzI3NGQ0NzcyMGM3ZmU4
NjdlNTZmMzhkMWJjNDU0NGE0ZTdjYjNmYS4uMGU5NWZlM2RiZjkzODE1NmRmNzUzNTU2MjQwYzM4
ZjA5NmZlMzJmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDExNSBAQAorMjAxMi0wNS0zMCAgU2hl
cmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CisKKyAgICAgICAgVW5yZXZp
ZXdlZCwgcm9sbGluZyBvdXQgcjExODkxMy4KKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9y
Zy9jaGFuZ2VzZXQvMTE4OTEzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD04Nzg5NAorCisgICAgICAgIHBhdGNoIGlzIGluY29ycmVjdCAoc2VlIGNvbW1l
bnRzIGluIGJ1ZyA4Nzg4OSkgKFJlcXVlc3RlZCBieQorICAgICAgICB0aG9ydG9uIG9uICN3ZWJr
aXQpLgorCisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU3JjVmFsdWUuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6Q1NTRm9udEZhY2VTcmNWYWx1ZTo6YWRkU3VicmVzb3VyY2VTdHlsZVVSTHMpOgor
ICAgICAgICAqIGNzcy9DU1NGb250RmFjZVNyY1ZhbHVlLmg6CisgICAgICAgIChDU1NGb250RmFj
ZVNyY1ZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWUuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUHJpbWl0aXZlVmFsdWU6OmFkZFN1YnJlc291cmNlU3R5bGVVUkxzKToK
KyAgICAgICAgKiBjc3MvQ1NTUHJpbWl0aXZlVmFsdWUuaDoKKyAgICAgICAgKENTU1ByaW1pdGl2
ZVZhbHVlKToKKyAgICAgICAgKiBjc3MvQ1NTUmVmbGVjdFZhbHVlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1JlZmxlY3RWYWx1ZTo6YWRkU3VicmVzb3VyY2VTdHlsZVVSTHMpOgorICAgICAg
ICAqIGNzcy9DU1NSZWZsZWN0VmFsdWUuaDoKKyAgICAgICAgKENTU1JlZmxlY3RWYWx1ZSk6Cisg
ICAgICAgICogY3NzL0NTU1ZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjph
ZGRTdWJyZXNvdXJjZVN0eWxlVVJMcyk6CisgICAgICAgICogY3NzL0NTU1ZhbHVlLmg6CisgICAg
ICAgIChDU1NWYWx1ZSk6CisgICAgICAgICogY3NzL0NTU1ZhbHVlTGlzdC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDU1NWYWx1ZUxpc3Q6OmFkZFN1YnJlc291cmNlU3R5bGVVUkxzKToKKyAgICAg
ICAgKiBjc3MvQ1NTVmFsdWVMaXN0Lmg6CisgICAgICAgIChDU1NWYWx1ZUxpc3QpOgorICAgICAg
ICAqIGNzcy9TdHlsZVByb3BlcnR5U2V0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUHJv
cGVydHlTZXQ6OmFkZFN1YnJlc291cmNlU3R5bGVVUkxzKToKKyAgICAgICAgKiBjc3MvU3R5bGVQ
cm9wZXJ0eVNldC5oOgorICAgICAgICAoU3R5bGVQcm9wZXJ0eVNldCk6CisgICAgICAgICogY3Nz
L1N0eWxlU2hlZXRDb250ZW50cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVNoZWV0Q29u
dGVudHM6OmFkZFN1YnJlc291cmNlU3R5bGVVUkxzKToKKyAgICAgICAgKiBjc3MvU3R5bGVTaGVl
dENvbnRlbnRzLmg6CisgICAgICAgIChTdHlsZVNoZWV0Q29udGVudHMpOgorICAgICAgICAqIGRv
bS9FbGVtZW50Lmg6CisgICAgICAgICogZG9tL05vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
Tm9kZTo6Z2V0U3VicmVzb3VyY2VVUkxzKToKKyAgICAgICAgKiBkb20vTm9kZS5oOgorICAgICAg
ICAoV2ViQ29yZTo6Tm9kZTo6YWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKToKKyAgICAgICAg
KFdlYkNvcmUpOgorICAgICAgICAqIGRvbS9Qcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6UHJvY2Vzc2luZ0luc3RydWN0aW9uOjphZGRTdWJyZXNvdXJjZUF0dHJp
YnV0ZVVSTHMpOgorICAgICAgICAqIGRvbS9Qcm9jZXNzaW5nSW5zdHJ1Y3Rpb24uaDoKKyAgICAg
ICAgKFByb2Nlc3NpbmdJbnN0cnVjdGlvbik6CisgICAgICAgICogZG9tL1N0eWxlZEVsZW1lbnQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVkRWxlbWVudDo6YWRkU3VicmVzb3VyY2VBdHRy
aWJ1dGVVUkxzKToKKyAgICAgICAgKiBkb20vU3R5bGVkRWxlbWVudC5oOgorICAgICAgICAoU3R5
bGVkRWxlbWVudCk6CisgICAgICAgICogaHRtbC9IVE1MQm9keUVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTEJvZHlFbGVtZW50OjphZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHMp
OgorICAgICAgICAqIGh0bWwvSFRNTEJvZHlFbGVtZW50Lmg6CisgICAgICAgIChIVE1MQm9keUVs
ZW1lbnQpOgorICAgICAgICAqIGh0bWwvSFRNTEVtYmVkRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MRW1iZWRFbGVtZW50OjphZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHMpOgor
ICAgICAgICAqIGh0bWwvSFRNTEVtYmVkRWxlbWVudC5oOgorICAgICAgICAoSFRNTEVtYmVkRWxl
bWVudCk6CisgICAgICAgICogaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxJbWFnZUVsZW1lbnQ6OmFkZFN1YnJlc291cmNlQXR0cmlidXRlVVJMcyk6Cisg
ICAgICAgICogaHRtbC9IVE1MSW1hZ2VFbGVtZW50Lmg6CisgICAgICAgIChIVE1MSW1hZ2VFbGVt
ZW50KToKKyAgICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTElucHV0RWxlbWVudDo6YWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKToKKyAg
ICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQuaDoKKyAgICAgICAgKEhUTUxJbnB1dEVsZW1l
bnQpOgorICAgICAgICAqIGh0bWwvSFRNTExpbmtFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxMaW5rRWxlbWVudDo6YWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKToKKyAgICAg
ICAgKiBodG1sL0hUTUxMaW5rRWxlbWVudC5oOgorICAgICAgICAoSFRNTExpbmtFbGVtZW50KToK
KyAgICAgICAgKiBodG1sL0hUTUxPYmplY3RFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkhUTUxPYmplY3RFbGVtZW50OjphZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHMpOgorICAgICAg
ICAqIGh0bWwvSFRNTE9iamVjdEVsZW1lbnQuaDoKKyAgICAgICAgKEhUTUxPYmplY3RFbGVtZW50
KToKKyAgICAgICAgKiBodG1sL0hUTUxQYXJhbUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFBhcmFtRWxlbWVudDo6YWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKToKKyAgICAg
ICAgKiBodG1sL0hUTUxQYXJhbUVsZW1lbnQuaDoKKyAgICAgICAgKEhUTUxQYXJhbUVsZW1lbnQp
OgorICAgICAgICAqIGh0bWwvSFRNTFNjcmlwdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFNjcmlwdEVsZW1lbnQ6OmFkZFN1YnJlc291cmNlQXR0cmlidXRlVVJMcyk6CisgICAg
ICAgICogaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5oOgorICAgICAgICAoSFRNTFNjcmlwdEVsZW1l
bnQpOgorICAgICAgICAqIGh0bWwvSFRNTFN0eWxlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MU3R5bGVFbGVtZW50OjphZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHMpOgorICAg
ICAgICAqIGh0bWwvSFRNTFN0eWxlRWxlbWVudC5oOgorICAgICAgICAoSFRNTFN0eWxlRWxlbWVu
dCk6CisgICAgICAgICogaHRtbC9IVE1MVGFibGVDZWxsRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MVGFibGVDZWxsRWxlbWVudDo6YWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxz
KToKKyAgICAgICAgKiBodG1sL0hUTUxUYWJsZUNlbGxFbGVtZW50Lmg6CisgICAgICAgIChIVE1M
VGFibGVDZWxsRWxlbWVudCk6CisgICAgICAgICogaHRtbC9IVE1MVGFibGVFbGVtZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxUYWJsZUVsZW1lbnQ6OmFkZFN1YnJlc291cmNlQXR0cmli
dXRlVVJMcyk6CisgICAgICAgICogaHRtbC9IVE1MVGFibGVFbGVtZW50Lmg6CisgICAgICAgIChI
VE1MVGFibGVFbGVtZW50KToKKyAgICAgICAgKiBzdmcvU1ZHQ3Vyc29yRWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpTVkdDdXJzb3JFbGVtZW50OjphZGRTdWJyZXNvdXJjZUF0dHJpYnV0
ZVVSTHMpOgorICAgICAgICAqIHN2Zy9TVkdDdXJzb3JFbGVtZW50Lmg6CisgICAgICAgIChTVkdD
dXJzb3JFbGVtZW50KToKKyAgICAgICAgKiBzdmcvU1ZHRkVJbWFnZUVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U1ZHRkVJbWFnZUVsZW1lbnQ6OmFkZFN1YnJlc291cmNlQXR0cmlidXRl
VVJMcyk6CisgICAgICAgICogc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50Lmg6CisgICAgICAgIChTVkdG
RUltYWdlRWxlbWVudCk6CisgICAgICAgICogc3ZnL1NWR0ltYWdlRWxlbWVudC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpTVkdJbWFnZUVsZW1lbnQ6OmFkZFN1YnJlc291cmNlQXR0cmlidXRlVVJM
cyk6CisgICAgICAgICogc3ZnL1NWR0ltYWdlRWxlbWVudC5oOgorICAgICAgICAoU1ZHSW1hZ2VF
bGVtZW50KToKKyAgICAgICAgKiBzdmcvU1ZHU2NyaXB0RWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTVkdTY3JpcHRFbGVtZW50OjphZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHMpOgor
ICAgICAgICAqIHN2Zy9TVkdTY3JpcHRFbGVtZW50Lmg6CisgICAgICAgIChTVkdTY3JpcHRFbGVt
ZW50KToKKwogMjAxMi0wNS0zMCAgU2hlemFuIEJhaWcgIDxzaGV6YmFpZy53a0BnbWFpbC5jb20+
CiAKICAgICAgICAgUmVuYW1lIG9mZnNldFRvcExlZnQgaW4gUmVuZGVyQm94TW9kZWxPYmplY3Qg
dG8gc29tZXRoaW5nIGJldHRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0Zv
bnRGYWNlU3JjVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU3JjVmFs
dWUuY3BwCmluZGV4IDQwMTQzZjg3YmJiNjgxNTQ3N2I4MjM5MzcyOThmMzMzNjM2NzA0NzIuLjc5
YWUwZTc0MTI3NGQwMTRhMTI1MjdkM2Q3NDI2MzkzOTQ2ZWY5YTUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNyY1ZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTRm9udEZhY2VTcmNWYWx1ZS5jcHAKQEAgLTczLDcgKzczLDcgQEAgU3RyaW5nIENT
U0ZvbnRGYWNlU3JjVmFsdWU6OmN1c3RvbUNzc1RleHQoKSBjb25zdAogICAgIHJldHVybiByZXN1
bHQ7CiB9CiAKLXZvaWQgQ1NTRm9udEZhY2VTcmNWYWx1ZTo6Y29sbGVjdFN1YnJlc291cmNlVVJM
cyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscywgY29uc3QgU3R5bGVTaGVldENvbnRlbnRzKiBzdHls
ZVNoZWV0KSBjb25zdAordm9pZCBDU1NGb250RmFjZVNyY1ZhbHVlOjphZGRTdWJyZXNvdXJjZVN0
eWxlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscywgY29uc3QgU3R5bGVTaGVldENvbnRlbnRz
KiBzdHlsZVNoZWV0KSBjb25zdAogewogICAgIGlmICghaXNMb2NhbCgpKQogICAgICAgICBhZGRT
dWJyZXNvdXJjZVVSTCh1cmxzLCBzdHlsZVNoZWV0LT5jb21wbGV0ZVVSTChtX3Jlc291cmNlKSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTcmNWYWx1ZS5oIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU3JjVmFsdWUuaAppbmRleCAwNjMyZjE0Zjdl
MWYzOGY2Mzc0YzFjZmUwYmE0ZjdkM2FiZTM0ZmQxLi45NDYwN2ZlZDBjMGRhZjU2ODdjNTJhMjc3
YjIwNzdkMTI1YTIwYmZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZh
Y2VTcmNWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNyY1ZhbHVl
LmgKQEAgLTY1LDcgKzY1LDcgQEAgcHVibGljOgogCiAgICAgU3RyaW5nIGN1c3RvbUNzc1RleHQo
KSBjb25zdDsKIAotICAgIHZvaWQgY29sbGVjdFN1YnJlc291cmNlVVJMcyhMaXN0SGFzaFNldDxL
VVJMPiYsIGNvbnN0IFN0eWxlU2hlZXRDb250ZW50cyopIGNvbnN0OworICAgIHZvaWQgYWRkU3Vi
cmVzb3VyY2VTdHlsZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mLCBjb25zdCBTdHlsZVNoZWV0Q29u
dGVudHMqKSBjb25zdDsKIAogICAgIENhY2hlZEZvbnQqIGNhY2hlZEZvbnQoRG9jdW1lbnQqKTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1pdGl2ZVZhbHVlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5jcHAKaW5kZXggNDY0MGYyYzBj
MWUzZmJiN2MwOTMzZjM3ZGFkYmI5NTNlMzNjNTM0MC4uNTkyNDk0YTBlMGM2MDAyYjlmZTE2NjE0
ZTljNmZjZmY3MDVhNjNiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ByaW1p
dGl2ZVZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUu
Y3BwCkBAIC0xMDY0LDcgKzEwNjQsNyBAQCBTdHJpbmcgQ1NTUHJpbWl0aXZlVmFsdWU6OmN1c3Rv
bUNzc1RleHQoKSBjb25zdAogICAgIHJldHVybiB0ZXh0OwogfQogCi12b2lkIENTU1ByaW1pdGl2
ZVZhbHVlOjpjb2xsZWN0U3VicmVzb3VyY2VVUkxzKExpc3RIYXNoU2V0PEtVUkw+JiB1cmxzLCBj
b25zdCBTdHlsZVNoZWV0Q29udGVudHMqIHN0eWxlU2hlZXQpIGNvbnN0Cit2b2lkIENTU1ByaW1p
dGl2ZVZhbHVlOjphZGRTdWJyZXNvdXJjZVN0eWxlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYgdXJs
cywgY29uc3QgU3R5bGVTaGVldENvbnRlbnRzKiBzdHlsZVNoZWV0KSBjb25zdAogewogICAgIGlm
IChtX3ByaW1pdGl2ZVVuaXRUeXBlID09IENTU19VUkkpCiAgICAgICAgIGFkZFN1YnJlc291cmNl
VVJMKHVybHMsIHN0eWxlU2hlZXQtPmNvbXBsZXRlVVJMKG1fdmFsdWUuc3RyaW5nKSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJpbWl0aXZlVmFsdWUuaCBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5oCmluZGV4IGM3YmYwMTFjNzc3M2EwMDRlMGVl
YjAwZTI5NDRhM2U2ZmJjYjM5NjAuLmNjZDE4N2JlNzg4N2U1Y2RlNjNhYjc5NTdlNmM4YmE0NmEz
ZDRkNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcmltaXRpdmVWYWx1ZS5oCkBAIC0yODMsNyAr
MjgzLDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBpc1F1aXJrVmFsdWUoKSB7IHJldHVybiBtX2lz
UXVpcmtWYWx1ZTsgfQogCi0gICAgdm9pZCBjb2xsZWN0U3VicmVzb3VyY2VVUkxzKExpc3RIYXNo
U2V0PEtVUkw+JiwgY29uc3QgU3R5bGVTaGVldENvbnRlbnRzKikgY29uc3Q7CisgICAgdm9pZCBh
ZGRTdWJyZXNvdXJjZVN0eWxlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYsIGNvbnN0IFN0eWxlU2hl
ZXRDb250ZW50cyopIGNvbnN0OwogCiAgICAgTGVuZ3RoIHZpZXdwb3J0UGVyY2VudGFnZUxlbmd0
aCgpOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1JlZmxlY3RWYWx1
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUmVmbGVjdFZhbHVlLmNwcAppbmRleCA1MGRl
MTA4NjlkM2E5OTZmMGVjOTFjZTgxOGIxNTcwNDc5ODNjOWYwLi5iMzZjM2FkN2IyYzIxMmRhYjZj
NzljYTg0YmM5NTAwMTY5ODNmZDljIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UmVmbGVjdFZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUmVmbGVjdFZhbHVl
LmNwcApAQCAtNTksMTAgKzU5LDEwIEBAIFN0cmluZyBDU1NSZWZsZWN0VmFsdWU6OmN1c3RvbUNz
c1RleHQoKSBjb25zdAogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLXZvaWQgQ1NTUmVmbGVjdFZh
bHVlOjpjb2xsZWN0U3VicmVzb3VyY2VVUkxzKExpc3RIYXNoU2V0PEtVUkw+JiB1cmxzLCBjb25z
dCBTdHlsZVNoZWV0Q29udGVudHMqIHN0eWxlU2hlZXQpIGNvbnN0Cit2b2lkIENTU1JlZmxlY3RW
YWx1ZTo6YWRkU3VicmVzb3VyY2VTdHlsZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mIHVybHMsIGNv
bnN0IFN0eWxlU2hlZXRDb250ZW50cyogc3R5bGVTaGVldCkgY29uc3QKIHsKICAgICBpZiAobV9t
YXNrKQotICAgICAgICBtX21hc2stPmNvbGxlY3RTdWJyZXNvdXJjZVVSTHModXJscywgc3R5bGVT
aGVldCk7CisgICAgICAgIG1fbWFzay0+YWRkU3VicmVzb3VyY2VTdHlsZVVSTHModXJscywgc3R5
bGVTaGVldCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NSZWZsZWN0VmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NS
ZWZsZWN0VmFsdWUuaAppbmRleCAyNzIwYmE4ZTYwZWExZDVkZWM5NTM4NGJlNDUwZGNkNjJjODNk
YTExLi41Y2ZiMjBlMjdmNzU4ODQwNjE5NDEyNTgwYmMwMzRmZWE1N2E2OWVmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUmVmbGVjdFZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1JlZmxlY3RWYWx1ZS5oCkBAIC00OSw3ICs0OSw3IEBAIHB1YmxpYzoKIAogICAg
IFN0cmluZyBjdXN0b21Dc3NUZXh0KCkgY29uc3Q7CiAKLSAgICB2b2lkIGNvbGxlY3RTdWJyZXNv
dXJjZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mLCBjb25zdCBTdHlsZVNoZWV0Q29udGVudHMqKSBj
b25zdDsKKyAgICB2b2lkIGFkZFN1YnJlc291cmNlU3R5bGVVUkxzKExpc3RIYXNoU2V0PEtVUkw+
JiwgY29uc3QgU3R5bGVTaGVldENvbnRlbnRzKikgY29uc3Q7CiAKIHByaXZhdGU6CiAgICAgQ1NT
UmVmbGVjdFZhbHVlKENTU1JlZmxlY3Rpb25EaXJlY3Rpb24gZGlyZWN0aW9uLCBQYXNzUmVmUHRy
PENTU1ByaW1pdGl2ZVZhbHVlPiBvZmZzZXQsIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IG1hc2spCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1ZhbHVlLmNwcAppbmRleCA0ZGY4YzU2NGJlMjJiOGExOGRhNDUzY2ExOGE4NGFh
YTg1ODQ1MzlkLi5mNTY4Y2M1ZjRlZGRhNDg3NGYxNWVmZjEzNzgzMDU4NDZmM2JmYzExIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NWYWx1ZS5jcHAKQEAgLTk5LDE5ICs5OSwxOSBAQCBDU1NWYWx1ZTo6VHlwZSBD
U1NWYWx1ZTo6Y3NzVmFsdWVUeXBlKCkgY29uc3QKICAgICByZXR1cm4gQ1NTX0NVU1RPTTsKIH0K
IAotdm9pZCBDU1NWYWx1ZTo6Y29sbGVjdFN1YnJlc291cmNlVVJMcyhMaXN0SGFzaFNldDxLVVJM
PiYgdXJscywgY29uc3QgU3R5bGVTaGVldENvbnRlbnRzKiBzdHlsZVNoZWV0KSBjb25zdAordm9p
ZCBDU1NWYWx1ZTo6YWRkU3VicmVzb3VyY2VTdHlsZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mIHVy
bHMsIGNvbnN0IFN0eWxlU2hlZXRDb250ZW50cyogc3R5bGVTaGVldCkgY29uc3QKIHsKICAgICAv
LyBUaGlzIHNob3VsZCBnZXQgY2FsbGVkIGZvciBpbnRlcm5hbCBpbnN0YW5jZXMgb25seS4KICAg
ICBBU1NFUlQoIWlzQ1NTT01TYWZlKCkpOwogCiAgICAgaWYgKGlzUHJpbWl0aXZlVmFsdWUoKSkK
LSAgICAgICAgc3RhdGljX2Nhc3Q8Y29uc3QgQ1NTUHJpbWl0aXZlVmFsdWUqPih0aGlzKS0+Y29s
bGVjdFN1YnJlc291cmNlVVJMcyh1cmxzLCBzdHlsZVNoZWV0KTsKKyAgICAgICAgc3RhdGljX2Nh
c3Q8Y29uc3QgQ1NTUHJpbWl0aXZlVmFsdWUqPih0aGlzKS0+YWRkU3VicmVzb3VyY2VTdHlsZVVS
THModXJscywgc3R5bGVTaGVldCk7CiAgICAgZWxzZSBpZiAoaXNWYWx1ZUxpc3QoKSkKLSAgICAg
ICAgc3RhdGljX2Nhc3Q8Y29uc3QgQ1NTVmFsdWVMaXN0Kj4odGhpcyktPmNvbGxlY3RTdWJyZXNv
dXJjZVVSTHModXJscywgc3R5bGVTaGVldCk7CisgICAgICAgIHN0YXRpY19jYXN0PGNvbnN0IENT
U1ZhbHVlTGlzdCo+KHRoaXMpLT5hZGRTdWJyZXNvdXJjZVN0eWxlVVJMcyh1cmxzLCBzdHlsZVNo
ZWV0KTsKICAgICBlbHNlIGlmIChjbGFzc1R5cGUoKSA9PSBGb250RmFjZVNyY0NsYXNzKQotICAg
ICAgICBzdGF0aWNfY2FzdDxjb25zdCBDU1NGb250RmFjZVNyY1ZhbHVlKj4odGhpcyktPmNvbGxl
Y3RTdWJyZXNvdXJjZVVSTHModXJscywgc3R5bGVTaGVldCk7CisgICAgICAgIHN0YXRpY19jYXN0
PGNvbnN0IENTU0ZvbnRGYWNlU3JjVmFsdWUqPih0aGlzKS0+YWRkU3VicmVzb3VyY2VTdHlsZVVS
THModXJscywgc3R5bGVTaGVldCk7CiAgICAgZWxzZSBpZiAoY2xhc3NUeXBlKCkgPT0gUmVmbGVj
dENsYXNzKQotICAgICAgICBzdGF0aWNfY2FzdDxjb25zdCBDU1NSZWZsZWN0VmFsdWUqPih0aGlz
KS0+Y29sbGVjdFN1YnJlc291cmNlVVJMcyh1cmxzLCBzdHlsZVNoZWV0KTsKKyAgICAgICAgc3Rh
dGljX2Nhc3Q8Y29uc3QgQ1NTUmVmbGVjdFZhbHVlKj4odGhpcyktPmFkZFN1YnJlc291cmNlU3R5
bGVVUkxzKHVybHMsIHN0eWxlU2hlZXQpOwogfQogCiBTdHJpbmcgQ1NTVmFsdWU6OmNzc1RleHQo
KSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAppbmRleCBmMDVjODQzOTRkMDlkMGI5NzJmYWI3MmY5
ZDE0MmM0Y2RkMGY2OGM2Li5mZTU2NDI4YTFhZTNiN2JmMmJjMzc2MDBkN2ZiMjdlZTc4MDRkMjgw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTVmFsdWUuaApAQCAtMTA3LDcgKzEwNyw3IEBAIHB1YmxpYzoKIAogICAg
IFBhc3NSZWZQdHI8Q1NTVmFsdWU+IGNsb25lRm9yQ1NTT00oKSBjb25zdDsKIAotICAgIHZvaWQg
Y29sbGVjdFN1YnJlc291cmNlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYsIGNvbnN0IFN0eWxlU2hl
ZXRDb250ZW50cyopIGNvbnN0OworICAgIHZvaWQgYWRkU3VicmVzb3VyY2VTdHlsZVVSTHMoTGlz
dEhhc2hTZXQ8S1VSTD4mLCBjb25zdCBTdHlsZVNoZWV0Q29udGVudHMqKSBjb25zdDsKIAogcHJv
dGVjdGVkOgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuY3BwCmluZGV4IDFjYzQyYzRmYjE4
ZjQ1NzNjMThiMzE0Yzg2MDBiNmVlMzdiZTVjYWQuLjNhYjdmOTQxMTNkNTYxNTlmMDU5OWYyNmQw
ODU2MmU2OTBlYTc1NDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxp
c3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuY3BwCkBAIC0xMzYs
MTEgKzEzNiwxMSBAQCBTdHJpbmcgQ1NTVmFsdWVMaXN0OjpjdXN0b21Dc3NUZXh0KCkgY29uc3QK
ICAgICByZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CiB9CiAKLXZvaWQgQ1NTVmFsdWVMaXN0Ojpj
b2xsZWN0U3VicmVzb3VyY2VVUkxzKExpc3RIYXNoU2V0PEtVUkw+JiB1cmxzLCBjb25zdCBTdHls
ZVNoZWV0Q29udGVudHMqIHN0eWxlU2hlZXQpIGNvbnN0Cit2b2lkIENTU1ZhbHVlTGlzdDo6YWRk
U3VicmVzb3VyY2VTdHlsZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mIHVybHMsIGNvbnN0IFN0eWxl
U2hlZXRDb250ZW50cyogc3R5bGVTaGVldCkgY29uc3QKIHsKICAgICBzaXplX3Qgc2l6ZSA9IG1f
dmFsdWVzLnNpemUoKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemU7ICsraSkKLSAg
ICAgICAgbV92YWx1ZXNbaV0tPmNvbGxlY3RTdWJyZXNvdXJjZVVSTHModXJscywgc3R5bGVTaGVl
dCk7CisgICAgICAgIG1fdmFsdWVzW2ldLT5hZGRTdWJyZXNvdXJjZVN0eWxlVVJMcyh1cmxzLCBz
dHlsZVNoZWV0KTsKIH0KIAogQ1NTVmFsdWVMaXN0OjpDU1NWYWx1ZUxpc3QoY29uc3QgQ1NTVmFs
dWVMaXN0JiBjbG9uZUZyb20pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFs
dWVMaXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0LmgKaW5kZXggY2FkNjMz
NTQ2MTU3YzNjYzAzMmRjYjQ0YWM0MGRmZmRiNTU2ZDVjNS4uYTRjNTliNGIwMDU1OTNhOTdjMDky
MWNhYTM2MTIxOTVkNTA4ZmM0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Zh
bHVlTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuaApAQCAtNjAs
NyArNjAsNyBAQCBwdWJsaWM6CiAKICAgICBTdHJpbmcgY3VzdG9tQ3NzVGV4dCgpIGNvbnN0Owog
Ci0gICAgdm9pZCBjb2xsZWN0U3VicmVzb3VyY2VVUkxzKExpc3RIYXNoU2V0PEtVUkw+JiwgY29u
c3QgU3R5bGVTaGVldENvbnRlbnRzKikgY29uc3Q7CisgICAgdm9pZCBhZGRTdWJyZXNvdXJjZVN0
eWxlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYsIGNvbnN0IFN0eWxlU2hlZXRDb250ZW50cyopIGNv
bnN0OwogICAgIAogICAgIFBhc3NSZWZQdHI8Q1NTVmFsdWVMaXN0PiBjbG9uZUZvckNTU09NKCkg
Y29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2V0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2V0LmNwcAppbmRleCBlYmM4
MWQyNGM1M2E0NTRjMjJjZGMyNjFhNjk1MDRkMDJhM2U4OGU3Li43ODZhZWM1MzUxODYzNzNhOWE1
MzQ2OGNjZThjNjI4M2UzMzQzNTk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVQcm9wZXJ0eVNldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydHlT
ZXQuY3BwCkBAIC04NzUsMTEgKzg3NSwxMSBAQCB2b2lkIFN0eWxlUHJvcGVydHlTZXQ6Om1lcmdl
KGNvbnN0IFN0eWxlUHJvcGVydHlTZXQqIG90aGVyLCBib29sIGFyZ092ZXJyaWRlc09uQwogICAg
IH0KIH0KIAotdm9pZCBTdHlsZVByb3BlcnR5U2V0Ojpjb2xsZWN0U3VicmVzb3VyY2VVUkxzKExp
c3RIYXNoU2V0PEtVUkw+JiB1cmxzLCBTdHlsZVNoZWV0Q29udGVudHMqIGNvbnRleHRTdHlsZVNo
ZWV0KSBjb25zdAordm9pZCBTdHlsZVByb3BlcnR5U2V0OjphZGRTdWJyZXNvdXJjZVN0eWxlVVJM
cyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscywgU3R5bGVTaGVldENvbnRlbnRzKiBjb250ZXh0U3R5
bGVTaGVldCkgY29uc3QKIHsKICAgICB1bnNpZ25lZCBzaXplID0gcHJvcGVydHlDb3VudCgpOwog
ICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBzaXplOyArK2kpCi0gICAgICAgIHByb3BlcnR5
QXQoaSkudmFsdWUoKS0+Y29sbGVjdFN1YnJlc291cmNlVVJMcyh1cmxzLCBjb250ZXh0U3R5bGVT
aGVldCk7CisgICAgICAgIHByb3BlcnR5QXQoaSkudmFsdWUoKS0+YWRkU3VicmVzb3VyY2VTdHls
ZVVSTHModXJscywgY29udGV4dFN0eWxlU2hlZXQpOwogfQogCiAvLyBUaGlzIGlzIHRoZSBsaXN0
IG9mIHByb3BlcnRpZXMgd2Ugd2FudCB0byBjb3B5IGluIHRoZSBjb3B5QmxvY2tQcm9wZXJ0aWVz
KCkgZnVuY3Rpb24uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0
eVNldC5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydHlTZXQuaAppbmRleCBiNGMw
MWZjYWY0YWZlYzAzZGExYmE1YWFkZWUyMWUxNDE1Y2IzYTBiLi4zMWY2ZmI0MDQ1NTM2MmM1ZTgz
ZjI0NmQxYzVkMDA3YmFkM2IyM2MyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVQcm9wZXJ0eVNldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2V0
LmgKQEAgLTkwLDcgKzkwLDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Q1NTUGFyc2VyTW9kZShD
U1NQYXJzZXJNb2RlKTsKICAgICBDU1NQYXJzZXJNb2RlIGNzc1BhcnNlck1vZGUoKSBjb25zdCB7
IHJldHVybiBzdGF0aWNfY2FzdDxDU1NQYXJzZXJNb2RlPihtX2Nzc1BhcnNlck1vZGUpOyB9CiAK
LSAgICB2b2lkIGNvbGxlY3RTdWJyZXNvdXJjZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mLCBTdHls
ZVNoZWV0Q29udGVudHMqIGNvbnRleHRTdHlsZVNoZWV0KSBjb25zdDsKKyAgICB2b2lkIGFkZFN1
YnJlc291cmNlU3R5bGVVUkxzKExpc3RIYXNoU2V0PEtVUkw+JiwgU3R5bGVTaGVldENvbnRlbnRz
KiBjb250ZXh0U3R5bGVTaGVldCkgY29uc3Q7CiAKICAgICBQYXNzUmVmUHRyPFN0eWxlUHJvcGVy
dHlTZXQ+IGNvcHkoKSBjb25zdDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0
eWxlU2hlZXRDb250ZW50cy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVldENvbnRl
bnRzLmNwcAppbmRleCBiZWUyMTBjNDQ1MDgxNzhmMjkzZDBhODhiNmVhOTczOGQxZGEyZDc2Li45
NzBjODI4Y2ExNDAxZGNiMTYzODQ0OWU5NjAyNDM4MjdlZWMxNzkzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVldENvbnRlbnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvU3R5bGVTaGVldENvbnRlbnRzLmNwcApAQCAtMzg0LDcgKzM4NCw3IEBAIEtVUkwgU3R5
bGVTaGVldENvbnRlbnRzOjpjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcmIHVybCkgY29uc3QKICAg
ICByZXR1cm4gQ1NTUGFyc2VyOjpjb21wbGV0ZVVSTChtX3BhcnNlckNvbnRleHQsIHVybCk7CiB9
CiAKLXZvaWQgU3R5bGVTaGVldENvbnRlbnRzOjpjb2xsZWN0U3VicmVzb3VyY2VVUkxzKExpc3RI
YXNoU2V0PEtVUkw+JiB1cmxzKQordm9pZCBTdHlsZVNoZWV0Q29udGVudHM6OmFkZFN1YnJlc291
cmNlU3R5bGVVUkxzKExpc3RIYXNoU2V0PEtVUkw+JiB1cmxzKQogewogICAgIERlcXVlPFN0eWxl
U2hlZXRDb250ZW50cyo+IHN0eWxlU2hlZXRRdWV1ZTsKICAgICBzdHlsZVNoZWV0UXVldWUuYXBw
ZW5kKHRoaXMpOwpAQCAtNDAyLDkgKzQwMiw5IEBAIHZvaWQgU3R5bGVTaGVldENvbnRlbnRzOjpj
b2xsZWN0U3VicmVzb3VyY2VVUkxzKExpc3RIYXNoU2V0PEtVUkw+JiB1cmxzKQogICAgICAgICBm
b3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgc3R5bGVTaGVldC0+bV9jaGlsZFJ1bGVzLnNpemUoKTsg
KytpKSB7CiAgICAgICAgICAgICBTdHlsZVJ1bGVCYXNlKiBydWxlID0gc3R5bGVTaGVldC0+bV9j
aGlsZFJ1bGVzW2ldLmdldCgpOwogICAgICAgICAgICAgaWYgKHJ1bGUtPmlzU3R5bGVSdWxlKCkp
Ci0gICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8U3R5bGVSdWxlKj4ocnVsZSktPnByb3BlcnRp
ZXMoKS0+Y29sbGVjdFN1YnJlc291cmNlVVJMcyh1cmxzLCB0aGlzKTsKKyAgICAgICAgICAgICAg
ICBzdGF0aWNfY2FzdDxTdHlsZVJ1bGUqPihydWxlKS0+cHJvcGVydGllcygpLT5hZGRTdWJyZXNv
dXJjZVN0eWxlVVJMcyh1cmxzLCB0aGlzKTsKICAgICAgICAgICAgIGVsc2UgaWYgKHJ1bGUtPmlz
Rm9udEZhY2VSdWxlKCkpCi0gICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8U3R5bGVSdWxlRm9u
dEZhY2UqPihydWxlKS0+cHJvcGVydGllcygpLT5jb2xsZWN0U3VicmVzb3VyY2VVUkxzKHVybHMs
IHRoaXMpOworICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PFN0eWxlUnVsZUZvbnRGYWNlKj4o
cnVsZSktPnByb3BlcnRpZXMoKS0+YWRkU3VicmVzb3VyY2VTdHlsZVVSTHModXJscywgdGhpcyk7
CiAgICAgICAgIH0KICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5
bGVTaGVldENvbnRlbnRzLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVldENvbnRlbnRz
LmgKaW5kZXggMDMyNWRmZjUxZDcxYTRmODJhNjVmZjZkNzgzOTQ0YTYzNGU1YmQ5Yi4uN2RmMzRi
NzAzMjI3MjU5NzZlNWM3ZjE1ZDA4MzgwMjY0Y2I3ZWYwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL1N0eWxlU2hlZXRDb250ZW50cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
dHlsZVNoZWV0Q29udGVudHMuaApAQCAtODAsNyArODAsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBs
b2FkQ29tcGxldGVkKCkgY29uc3QgeyByZXR1cm4gbV9sb2FkQ29tcGxldGVkOyB9CiAKICAgICBL
VVJMIGNvbXBsZXRlVVJMKGNvbnN0IFN0cmluZyYgdXJsKSBjb25zdDsKLSAgICB2b2lkIGNvbGxl
Y3RTdWJyZXNvdXJjZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mKTsKKyAgICB2b2lkIGFkZFN1YnJl
c291cmNlU3R5bGVVUkxzKExpc3RIYXNoU2V0PEtVUkw+Jik7CiAKICAgICB2b2lkIHNldElzVXNl
clN0eWxlU2hlZXQoYm9vbCBiKSB7IG1faXNVc2VyU3R5bGVTaGVldCA9IGI7IH0KICAgICBib29s
IGlzVXNlclN0eWxlU2hlZXQoKSBjb25zdCB7IHJldHVybiBtX2lzVXNlclN0eWxlU2hlZXQ7IH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vRWxlbWVudC5oCmluZGV4IDM2MzE1MmI4NTYyNGFiYjNmZTViMTlmYjg5MWY3OGM2ODI3
YzkxNzYuLmZhMzlhMTg3YjA3ZmNkNWM3MmIwYWZiOGZmMmFmZTE3YjkzYTZjOTEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L0VsZW1lbnQuaApAQCAtNDE4LDggKzQxOCw2IEBAIHB1YmxpYzoKICAgICBJbnRTaXplIHNhdmVk
TGF5ZXJTY3JvbGxPZmZzZXQoKSBjb25zdDsKICAgICB2b2lkIHNldFNhdmVkTGF5ZXJTY3JvbGxP
ZmZzZXQoY29uc3QgSW50U2l6ZSYpOwogCi0gICAgdmlydHVhbCB2b2lkIGNvbGxlY3RTdWJyZXNv
dXJjZVVSTHNGcm9tQXR0cmlidXRlcyhMaXN0SGFzaFNldDxLVVJMPiYpIGNvbnN0IHsgfQotCiBw
cm90ZWN0ZWQ6CiAgICAgRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1
bWVudCogZG9jdW1lbnQsIENvbnN0cnVjdGlvblR5cGUgdHlwZSkKICAgICAgICAgOiBDb250YWlu
ZXJOb2RlKGRvY3VtZW50LCB0eXBlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05v
ZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuY3BwCmluZGV4IGQ0MGVlMGQ5OTliZWQ1
MTNkODZmMmZkNDZiNDU4Njk0MzRiZWY3ZjcuLjc5NDUwYzViNTBlNDEwMGVmM2UzN2ZhNTI1Y2Qx
ODcxODgzMmViZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5jcHAKQEAgLTI0MjMsOSArMjQyMyw3IEBAIGJvb2wg
Tm9kZUxpc3RzTm9kZURhdGE6OmlzRW1wdHkoKSBjb25zdAogCiB2b2lkIE5vZGU6OmdldFN1YnJl
c291cmNlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscykgY29uc3QKIHsKLSAgICBpZiAoIWlz
RWxlbWVudE5vZGUoKSkKLSAgICAgICAgcmV0dXJuOwotICAgIHN0YXRpY19jYXN0PGNvbnN0IEVs
ZW1lbnQqPih0aGlzKS0+Y29sbGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRyaWJ1dGVzKHVybHMp
OworICAgIGFkZFN1YnJlc291cmNlQXR0cmlidXRlVVJMcyh1cmxzKTsKIH0KIAogTm9kZSogTm9k
ZTo6ZW5jbG9zaW5nTGlua0V2ZW50UGFyZW50T3JTZWxmKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Ob2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5oCmluZGV4IDA5YWIx
MTM4MGRiZWMwOTJmY2FlYTkxMWEyNDMzYTUwODY3NDlhMzYuLmQ4YzYyZWVkYjYyMGEzODA3MmJl
YmNhY2RjZTc1NjcwMjBhNDk3YmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2Rl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuaApAQCAtNzI3LDYgKzcyNyw3IEBAIHBy
b3RlY3RlZDoKIAogICAgIHZpcnR1YWwgdm9pZCBkaWRNb3ZlVG9OZXdEb2N1bWVudChEb2N1bWVu
dCogb2xkRG9jdW1lbnQpOwogICAgIAorICAgIHZpcnR1YWwgdm9pZCBhZGRTdWJyZXNvdXJjZUF0
dHJpYnV0ZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mKSBjb25zdCB7IH0KICAgICB2b2lkIHNldFRh
YkluZGV4RXhwbGljaXRseShzaG9ydCk7CiAgICAgdm9pZCBjbGVhclRhYkluZGV4RXhwbGljaXRs
eSgpOwogICAgIApAQCAtODIxLDcgKzgyMiw3IEBAIHByb3RlY3RlZDoKICNlbmRpZgogfTsKIAot
Ly8gVXNlZCBpbiBOb2RlOjpjb2xsZWN0U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXMoKSBh
bmQgaW4gY29sbGVjdFN1YnJlc291cmNlVVJMcygpCisvLyBVc2VkIGluIE5vZGU6OmFkZFN1YnJl
c291cmNlQXR0cmlidXRlVVJMcygpIGFuZCBpbiBhZGRTdWJyZXNvdXJjZVN0eWxlVVJMcygpCiBp
bmxpbmUgdm9pZCBhZGRTdWJyZXNvdXJjZVVSTChMaXN0SGFzaFNldDxLVVJMPiYgdXJscywgY29u
c3QgS1VSTCYgdXJsKQogewogICAgIGlmICghdXJsLmlzTnVsbCgpKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvZG9tL1Byb2Nlc3NpbmdJbnN0cnVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vUHJvY2Vzc2luZ0luc3RydWN0aW9uLmNwcAppbmRleCA2MmNlMDIzMmJmMjIwMzJmODc4
MjU4YzYxNmJlYjEzMjRiNzUwY2MxLi4wOTQzNjQzZDI0NGExNjZlMWJiOTBiNGJmN2NmOTMwYzU3
OGJmOGM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUHJvY2Vzc2luZ0luc3RydWN0
aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUHJvY2Vzc2luZ0luc3RydWN0aW9uLmNw
cApAQCAtMjgwLDcgKzI4MCw3IEBAIGludCBQcm9jZXNzaW5nSW5zdHJ1Y3Rpb246Om1heENoYXJh
Y3Rlck9mZnNldCgpIGNvbnN0CiAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGludD4obV9kYXRhLmxl
bmd0aCgpKTsKIH0KIAotdm9pZCBQcm9jZXNzaW5nSW5zdHJ1Y3Rpb246OmNvbGxlY3RTdWJyZXNv
dXJjZVVSTHNGcm9tQXR0cmlidXRlcyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscykgY29uc3QKK3Zv
aWQgUHJvY2Vzc2luZ0luc3RydWN0aW9uOjphZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHMoTGlz
dEhhc2hTZXQ8S1VSTD4mIHVybHMpIGNvbnN0CiB7CiAgICAgaWYgKCFzaGVldCgpKQogICAgICAg
ICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vUHJvY2Vzc2luZ0luc3Ry
dWN0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vUHJvY2Vzc2luZ0luc3RydWN0aW9uLmgKaW5k
ZXggNDU5OTA5ZTU2MmFiMjI5ZjkzMzA1N2ZkMTYyOTIzZjc1NWM2ZmIwNS4uZTMzMWUyMWRmZTVl
M2NkOTZjYjJmZTYyN2ZlMDNkMTQ3YjhiNGI2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZG9tL1Byb2Nlc3NpbmdJbnN0cnVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Qcm9j
ZXNzaW5nSW5zdHJ1Y3Rpb24uaApAQCAtNzYsNyArNzYsNyBAQCBwcml2YXRlOgogICAgIGJvb2wg
aXNMb2FkaW5nKCkgY29uc3Q7CiAgICAgdmlydHVhbCBib29sIHNoZWV0TG9hZGVkKCk7CiAKLSAg
ICB2aXJ0dWFsIHZvaWQgY29sbGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRyaWJ1dGVzKExpc3RI
YXNoU2V0PEtVUkw+JikgY29uc3Q7CisgICAgdmlydHVhbCB2b2lkIGFkZFN1YnJlc291cmNlQXR0
cmlidXRlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYpIGNvbnN0OwogCiAgICAgdm9pZCBwYXJzZVN0
eWxlU2hlZXQoY29uc3QgU3RyaW5nJiBzaGVldCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVt
ZW50LmNwcAppbmRleCA4YWQ5MzA1Yzk4ZjljYzA4YThlMmIyOWJmNjI3Y2EwNjI1MTllZjU5Li5h
MmJlZDNmNDVkMjBjNDFmOTZhMmYyZjhkYjhmOGI5NjgyY2E5NmM0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L1N0eWxlZEVsZW1lbnQuY3BwCkBAIC0yMzksMTAgKzIzOSwxMCBAQCBib29sIFN0eWxlZEVsZW1l
bnQ6OnJlbW92ZUlubGluZVN0eWxlUHJvcGVydHkoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlEKQog
ICAgIHJldHVybiBjaGFuZ2VzOwogfQogCi12b2lkIFN0eWxlZEVsZW1lbnQ6OmNvbGxlY3RTdWJy
ZXNvdXJjZVVSTHNGcm9tQXR0cmlidXRlcyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscykgY29uc3QK
K3ZvaWQgU3R5bGVkRWxlbWVudDo6YWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKExpc3RIYXNo
U2V0PEtVUkw+JiB1cmxzKSBjb25zdAogewogICAgIGlmIChTdHlsZVByb3BlcnR5U2V0KiBpbmxp
bmVTdHlsZSA9IGF0dHJpYnV0ZURhdGEoKSA/IGF0dHJpYnV0ZURhdGEoKS0+aW5saW5lU3R5bGUo
KSA6IDApCi0gICAgICAgIGlubGluZVN0eWxlLT5jb2xsZWN0U3VicmVzb3VyY2VVUkxzKHVybHMs
IGRvY3VtZW50KCktPmVsZW1lbnRTaGVldCgpLT5jb250ZW50cygpKTsKKyAgICAgICAgaW5saW5l
U3R5bGUtPmFkZFN1YnJlc291cmNlU3R5bGVVUkxzKHVybHMsIGRvY3VtZW50KCktPmVsZW1lbnRT
aGVldCgpLT5jb250ZW50cygpKTsKIH0KIAogc3RhdGljIGlubGluZSBib29sIGF0dHJpYnV0ZU5h
bWVTb3J0KGNvbnN0IHBhaXI8QXRvbWljU3RyaW5nSW1wbCosIEF0b21pY1N0cmluZz4mIHAxLCBj
b25zdCBwYWlyPEF0b21pY1N0cmluZ0ltcGwqLCBBdG9taWNTdHJpbmc+JiBwMikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9k
b20vU3R5bGVkRWxlbWVudC5oCmluZGV4IGY4NDUwNTE0YjY1ZmY1NTFkYzVjNWI4ZTEyM2MwZWU1
NzFkMTNhMGMuLjQ3MzZhOTgwMDE5YTllZjRhMmNkYzZhZGNiNjQxMDAyYTZiZWI3MGIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuaApAQCAtNzQsNyArNzQsNyBAQCBwcm90ZWN0ZWQ6CiAg
ICAgdm9pZCBhZGRQcm9wZXJ0eVRvQXR0cmlidXRlU3R5bGUoU3R5bGVQcm9wZXJ0eVNldCosIENT
U1Byb3BlcnR5SUQsIGRvdWJsZSB2YWx1ZSwgQ1NTUHJpbWl0aXZlVmFsdWU6OlVuaXRUeXBlcyk7
CiAgICAgdm9pZCBhZGRQcm9wZXJ0eVRvQXR0cmlidXRlU3R5bGUoU3R5bGVQcm9wZXJ0eVNldCos
IENTU1Byb3BlcnR5SUQsIGNvbnN0IFN0cmluZyYgdmFsdWUpOwogCi0gICAgdmlydHVhbCB2b2lk
IGNvbGxlY3RTdWJyZXNvdXJjZVVSTHNGcm9tQXR0cmlidXRlcyhMaXN0SGFzaFNldDxLVVJMPiYp
IGNvbnN0OworICAgIHZpcnR1YWwgdm9pZCBhZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHMoTGlz
dEhhc2hTZXQ8S1VSTD4mKSBjb25zdDsKIAogICAgIC8vIGNsYXNzQXR0cmlidXRlQ2hhbmdlZCgp
IGV4aXN0cyB0byBzaGFyZSBjb2RlIGJldHdlZW4KICAgICAvLyBwYXJzZUF0dHJpYnV0ZSAoY2Fs
bGVkIHZpYSBzZXRBdHRyaWJ1dGUoKSkgYW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxCb2R5RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxCb2R5RWxl
bWVudC5jcHAKaW5kZXggYjk4ZTdiNmQ0OTBhYjg2NDgzNzUwMzIxNDdlOGI0NzQwZmQzOTUxYS4u
ODQ2ZTMzMWUwMGFhZjRmY2YwYzFhN2ZmMThiYTQ1YWNmNGFmMGU0YyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MQm9keUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEJvZHlFbGVtZW50LmNwcApAQCAtMzE3LDkgKzMxNyw5IEBAIGludCBIVE1MQm9k
eUVsZW1lbnQ6OnNjcm9sbFdpZHRoKCkKICAgICByZXR1cm4gdmlldyA/IGFkanVzdEZvclpvb20o
dmlldy0+Y29udGVudHNXaWR0aCgpLCBkb2N1bWVudCkgOiAwOyAgICAKIH0KIAotdm9pZCBIVE1M
Qm9keUVsZW1lbnQ6OmNvbGxlY3RTdWJyZXNvdXJjZVVSTHNGcm9tQXR0cmlidXRlcyhMaXN0SGFz
aFNldDxLVVJMPiYgdXJscykgY29uc3QKK3ZvaWQgSFRNTEJvZHlFbGVtZW50OjphZGRTdWJyZXNv
dXJjZUF0dHJpYnV0ZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mIHVybHMpIGNvbnN0CiB7Ci0gICAg
SFRNTEVsZW1lbnQ6OmNvbGxlY3RTdWJyZXNvdXJjZVVSTHNGcm9tQXR0cmlidXRlcyh1cmxzKTsK
KyAgICBIVE1MRWxlbWVudDo6YWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKHVybHMpOwogCiAg
ICAgYWRkU3VicmVzb3VyY2VVUkwodXJscywgZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwoZ2V0QXR0
cmlidXRlKGJhY2tncm91bmRBdHRyKSkpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MQm9keUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEJvZHlFbGVt
ZW50LmgKaW5kZXggN2E0MGMyNDE4YzVkMDViNzZlZjM4MTE3OGZlNzA2MWY5ZTM4MWU3NC4uMjJh
YzE5Yzc2M2EzMmI3NGI0MWMxNDFmZGUzMDJhNWZjNWVhMWI2YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MQm9keUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxCb2R5RWxlbWVudC5oCkBAIC05MCw3ICs5MCw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVh
bCBpbnQgc2Nyb2xsSGVpZ2h0KCk7CiAgICAgdmlydHVhbCBpbnQgc2Nyb2xsV2lkdGgoKTsKICAg
ICAKLSAgICB2aXJ0dWFsIHZvaWQgY29sbGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRyaWJ1dGVz
KExpc3RIYXNoU2V0PEtVUkw+JikgY29uc3Q7CisgICAgdmlydHVhbCB2b2lkIGFkZFN1YnJlc291
cmNlQXR0cmlidXRlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYpIGNvbnN0OwogfTsKIAogfSAvL25h
bWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRW1iZWRFbGVtZW50
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxlbWVudC5jcHAKaW5kZXggMjU2
YmNkN2U2OTYwMDA2Yzg3MjkyZDEwZTYwMTJlYjFkZDk4ODE0Yy4uYjljNmU0MWRhN2MxMDg4MWYx
ZDY3NjlmNmExMjlmZjE2MzA2ZDE5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MRW1iZWRFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbWJlZEVs
ZW1lbnQuY3BwCkBAIC0yMTYsOSArMjE2LDkgQEAgY29uc3QgUXVhbGlmaWVkTmFtZSYgSFRNTEVt
YmVkRWxlbWVudDo6aW1hZ2VTb3VyY2VBdHRyaWJ1dGVOYW1lKCkgY29uc3QKICAgICByZXR1cm4g
c3JjQXR0cjsKIH0KIAotdm9pZCBIVE1MRW1iZWRFbGVtZW50Ojpjb2xsZWN0U3VicmVzb3VyY2VV
UkxzRnJvbUF0dHJpYnV0ZXMoTGlzdEhhc2hTZXQ8S1VSTD4mIHVybHMpIGNvbnN0Cit2b2lkIEhU
TUxFbWJlZEVsZW1lbnQ6OmFkZFN1YnJlc291cmNlQXR0cmlidXRlVVJMcyhMaXN0SGFzaFNldDxL
VVJMPiYgdXJscykgY29uc3QKIHsKLSAgICBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojpjb2xsZWN0
U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXModXJscyk7CisgICAgSFRNTFBsdWdJbkltYWdl
RWxlbWVudDo6YWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKHVybHMpOwogCiAgICAgYWRkU3Vi
cmVzb3VyY2VVUkwodXJscywgZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwoZ2V0QXR0cmlidXRlKHNy
Y0F0dHIpKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbWJlZEVs
ZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxlbWVudC5oCmluZGV4IDA1
MjU5ZmM0NmU5MDZjMjgwYjUwOTYzZjU1Y2NhZThjYmMxZjdkOWIuLmJhODI4YTE3MmRkZjdkM2U4
N2FlNjE3ZjllMzUwODkwMDYxM2IzYjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTEVtYmVkRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxl
bWVudC5oCkBAIC00Nyw3ICs0Nyw3IEBAIHByaXZhdGU6CiAKICAgICB2aXJ0dWFsIHZvaWQgdXBk
YXRlV2lkZ2V0KFBsdWdpbkNyZWF0aW9uT3B0aW9uKTsKIAotICAgIHZpcnR1YWwgdm9pZCBjb2xs
ZWN0U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXMoTGlzdEhhc2hTZXQ8S1VSTD4mKSBjb25z
dDsKKyAgICB2aXJ0dWFsIHZvaWQgYWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKExpc3RIYXNo
U2V0PEtVUkw+JikgY29uc3Q7CiAKICAgICB2b2lkIHBhcmFtZXRlcnNGb3JQbHVnaW4oVmVjdG9y
PFN0cmluZz4mIHBhcmFtTmFtZXMsIFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcyk7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwCmluZGV4IDI0NzY2ODYyNzQyMTg2
MThiYzBiM2MxM2I4OTQ3ZGYwMzg4NTUxMWYuLjAxMmQ5ZWM2OWQwOTllM2YwMWQyNTJkMDIzYjQ3
YjYyNTdjMzdkOTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcApA
QCAtMzI1LDkgKzMyNSw5IEBAIGJvb2wgSFRNTEltYWdlRWxlbWVudDo6Y29tcGxldGUoKSBjb25z
dAogICAgIHJldHVybiBtX2ltYWdlTG9hZGVyLmltYWdlQ29tcGxldGUoKTsKIH0KIAotdm9pZCBI
VE1MSW1hZ2VFbGVtZW50Ojpjb2xsZWN0U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXMoTGlz
dEhhc2hTZXQ8S1VSTD4mIHVybHMpIGNvbnN0Cit2b2lkIEhUTUxJbWFnZUVsZW1lbnQ6OmFkZFN1
YnJlc291cmNlQXR0cmlidXRlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscykgY29uc3QKIHsK
LSAgICBIVE1MRWxlbWVudDo6Y29sbGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRyaWJ1dGVzKHVy
bHMpOworICAgIEhUTUxFbGVtZW50OjphZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHModXJscyk7
CiAKICAgICBhZGRTdWJyZXNvdXJjZVVSTCh1cmxzLCBzcmMoKSk7CiAgICAgLy8gRklYTUU6IFdo
YXQgYWJvdXQgd2hlbiB0aGUgdXNlbWFwIGF0dHJpYnV0ZSBiZWdpbnMgd2l0aCAiIyI/CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5oCmluZGV4IGJkYTg4MTAyZGI2ZWE3ZTFhZGFi
NmNhMTdlMTA1ZDc5MmE1YjVmNDkuLjljNmZmNWFmNGMyOGZlY2EzMDFkYjRjYThlZGNmMWRlOWNm
Y2JmMWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5oCkBAIC05Nyw3ICs5
Nyw3IEBAIHByaXZhdGU6CiAKICAgICB2aXJ0dWFsIGJvb2wgZHJhZ2dhYmxlKCkgY29uc3Q7CiAK
LSAgICB2aXJ0dWFsIHZvaWQgY29sbGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRyaWJ1dGVzKExp
c3RIYXNoU2V0PEtVUkw+JikgY29uc3Q7CisgICAgdmlydHVhbCB2b2lkIGFkZFN1YnJlc291cmNl
QXR0cmlidXRlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYpIGNvbnN0OwogCiAgICAgdmlydHVhbCBJ
bnNlcnRpb25Ob3RpZmljYXRpb25SZXF1ZXN0IGluc2VydGVkSW50byhDb250YWluZXJOb2RlKikg
T1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHJlbW92ZWRGcm9tKENvbnRhaW5lck5vZGUqKSBP
VkVSUklERTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmluZGV4IDQz
ZGU4MWZmOWM1ZTgyM2UzNDY5NTc3ZjliOTVmOWMzZTI0ODY0MWMuLjM5NTBjZDBhNzhhY2E0MTNl
NGExYjY4MjQyMjcwYWFjNTE3YWU0MzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTElucHV0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRF
bGVtZW50LmNwcApAQCAtMTM3OCw5ICsxMzc4LDkgQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50Ojpk
aWRNb3ZlVG9OZXdEb2N1bWVudChEb2N1bWVudCogb2xkRG9jdW1lbnQpCiAgICAgSFRNTFRleHRG
b3JtQ29udHJvbEVsZW1lbnQ6OmRpZE1vdmVUb05ld0RvY3VtZW50KG9sZERvY3VtZW50KTsKIH0K
IAotdm9pZCBIVE1MSW5wdXRFbGVtZW50Ojpjb2xsZWN0U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJp
YnV0ZXMoTGlzdEhhc2hTZXQ8S1VSTD4mIHVybHMpIGNvbnN0Cit2b2lkIEhUTUxJbnB1dEVsZW1l
bnQ6OmFkZFN1YnJlc291cmNlQXR0cmlidXRlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscykg
Y29uc3QKIHsKLSAgICBIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudDo6Y29sbGVjdFN1YnJlc291
cmNlVVJMc0Zyb21BdHRyaWJ1dGVzKHVybHMpOworICAgIEhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVt
ZW50OjphZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHModXJscyk7CiAKICAgICBhZGRTdWJyZXNv
dXJjZVVSTCh1cmxzLCBzcmMoKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxJbnB1dEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVu
dC5oCmluZGV4IGQ2M2E4M2NiZjExMTcxYjk0ZjM2OTdjOWJlYWQ4ZWY5YzEwODA2YjcuLjU2YTg2
NDEzZWQ4MDRjNjM0YjExNDM1NjZkNGJjYmJkZTBmMTUzNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTElucHV0RWxlbWVudC5oCkBAIC0zMTYsNyArMzE2LDcgQEAgcHJpdmF0ZToKIAogICAgIHZp
cnR1YWwgdm9pZCBkb2N1bWVudERpZFJlc3VtZUZyb21QYWdlQ2FjaGUoKTsKIAotICAgIHZpcnR1
YWwgdm9pZCBjb2xsZWN0U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXMoTGlzdEhhc2hTZXQ8
S1VSTD4mKSBjb25zdDsKKyAgICB2aXJ0dWFsIHZvaWQgYWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVV
UkxzKExpc3RIYXNoU2V0PEtVUkw+JikgY29uc3Q7CiAKICAgICBib29sIG5lZWRzU3VzcGVuc2lv
bkNhbGxiYWNrKCk7CiAgICAgdm9pZCByZWdpc3RlckZvclN1c3BlbnNpb25DYWxsYmFja0lmTmVl
ZGVkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMaW5rRWxlbWVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMaW5rRWxlbWVudC5jcHAKaW5kZXggNTAwNzVj
MDNlODZmNDJkY2ExOTQ2NGFkMGI5M2FhMjNkNmZmOWMyMC4uZjM3OGRlNWRjYzM0YThhNGVjYjM4
OGZhYzQ3Y2JlMWM4ODczMTU1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
TGlua0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVtZW50
LmNwcApAQCAtNDE4LDkgKzQxOCw5IEBAIFN0cmluZyBIVE1MTGlua0VsZW1lbnQ6OnR5cGUoKSBj
b25zdAogICAgIHJldHVybiBnZXRBdHRyaWJ1dGUodHlwZUF0dHIpOwogfQogCi12b2lkIEhUTUxM
aW5rRWxlbWVudDo6Y29sbGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRyaWJ1dGVzKExpc3RIYXNo
U2V0PEtVUkw+JiB1cmxzKSBjb25zdAordm9pZCBIVE1MTGlua0VsZW1lbnQ6OmFkZFN1YnJlc291
cmNlQXR0cmlidXRlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscykgY29uc3QKIHsKLSAgICBI
VE1MRWxlbWVudDo6Y29sbGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRyaWJ1dGVzKHVybHMpOwor
ICAgIEhUTUxFbGVtZW50OjphZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHModXJscyk7CiAKICAg
ICAvLyBGYXZpY29ucyBhcmUgaGFuZGxlZCBieSBhIHNwZWNpYWwgY2FzZSBpbiBMZWdhY3lXZWJB
cmNoaXZlOjpjcmVhdGUoKQogICAgIGlmIChtX3JlbEF0dHJpYnV0ZS5tX2ljb25UeXBlICE9IElu
dmFsaWRJY29uKQpAQCAtNDM0LDcgKzQzNCw3IEBAIHZvaWQgSFRNTExpbmtFbGVtZW50Ojpjb2xs
ZWN0U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXMoTGlzdEhhc2hTZXQ8S1VSTD4mIHVyCiAg
ICAgCiAgICAgLy8gV2FsayB0aGUgVVJMcyBsaW5rZWQgYnkgdGhlIGxpbmtlZC10byBzdHlsZXNo
ZWV0LgogICAgIGlmIChDU1NTdHlsZVNoZWV0KiBzdHlsZVNoZWV0ID0gY29uc3RfY2FzdDxIVE1M
TGlua0VsZW1lbnQqPih0aGlzKS0+c2hlZXQoKSkKLSAgICAgICAgc3R5bGVTaGVldC0+Y29udGVu
dHMoKS0+Y29sbGVjdFN1YnJlc291cmNlVVJMcyh1cmxzKTsKKyAgICAgICAgc3R5bGVTaGVldC0+
Y29udGVudHMoKS0+YWRkU3VicmVzb3VyY2VTdHlsZVVSTHModXJscyk7CiB9CiAKIHZvaWQgSFRN
TExpbmtFbGVtZW50OjphZGRQZW5kaW5nU2hlZXQoUGVuZGluZ1NoZWV0VHlwZSB0eXBlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVtZW50LmgKaW5kZXggZjcyY2ZkMjkxMzJhY2IzN2IwNTc4
ODkxM2EyYjljZTRhZGZmNTEwYi4uYmI2OWUxMjlmYTkxNTZjNzgxODBjYTIyMDQwZTBhZTgzODc0
MDk3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxMaW5rRWxlbWVudC5oCkBAIC05NCw3ICs5NCw3
IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBib29sIGlzVVJMQXR0cmlidXRlKGNvbnN0IEF0dHJp
YnV0ZSYpIGNvbnN0IE9WRVJSSURFOwogCiBwcml2YXRlOgotICAgIHZpcnR1YWwgdm9pZCBjb2xs
ZWN0U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXMoTGlzdEhhc2hTZXQ8S1VSTD4mKSBjb25z
dDsKKyAgICB2aXJ0dWFsIHZvaWQgYWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKExpc3RIYXNo
U2V0PEtVUkw+JikgY29uc3Q7CiAKICAgICB2aXJ0dWFsIHZvaWQgZmluaXNoUGFyc2luZ0NoaWxk
cmVuKCk7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RF
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9iamVjdEVsZW1lbnQuY3BwCmlu
ZGV4IDUwOTY3NTUxOTY5NTYxZDVlYTZmM2VjOGMzYmVmNzFjMDgxMDJmNWEuLjAyNGU4MjViYzMy
YjI5ZDhkMTFkNGI3MWYwNGYzZjEwYzEzYmVhZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTE9iamVjdEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TE9iamVjdEVsZW1lbnQuY3BwCkBAIC00NjcsOSArNDY3LDkgQEAgYm9vbCBIVE1MT2JqZWN0RWxl
bWVudDo6Y29udGFpbnNKYXZhQXBwbGV0KCkgY29uc3QKICAgICByZXR1cm4gZmFsc2U7CiB9CiAK
LXZvaWQgSFRNTE9iamVjdEVsZW1lbnQ6OmNvbGxlY3RTdWJyZXNvdXJjZVVSTHNGcm9tQXR0cmli
dXRlcyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscykgY29uc3QKK3ZvaWQgSFRNTE9iamVjdEVsZW1l
bnQ6OmFkZFN1YnJlc291cmNlQXR0cmlidXRlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscykg
Y29uc3QKIHsKLSAgICBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojpjb2xsZWN0U3VicmVzb3VyY2VV
UkxzRnJvbUF0dHJpYnV0ZXModXJscyk7CisgICAgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6YWRk
U3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKHVybHMpOwogCiAgICAgYWRkU3VicmVzb3VyY2VVUkwo
dXJscywgZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwoZ2V0QXR0cmlidXRlKGRhdGFBdHRyKSkpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RFbGVtZW50LmggYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RFbGVtZW50LmgKaW5kZXggM2IxYTk1M2ZhNGUw
MGY2OGE2NzhjM2RlMjIyMTQ3NGE4NmQ5MWUwYS4uYzQ0ZGEwMjFkYjJiY2IxYjgxYjUzNDgwZGU5
MTJmNzNiMjI1M2JlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT2JqZWN0
RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9iamVjdEVsZW1lbnQuaApA
QCAtODMsNyArODMsNyBAQCBwcml2YXRlOgogCiAgICAgdmlydHVhbCBSZW5kZXJXaWRnZXQqIHJl
bmRlcldpZGdldEZvckpTQmluZGluZ3MoKTsKIAotICAgIHZpcnR1YWwgdm9pZCBjb2xsZWN0U3Vi
cmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXMoTGlzdEhhc2hTZXQ8S1VSTD4mKSBjb25zdDsKKyAg
ICB2aXJ0dWFsIHZvaWQgYWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKExpc3RIYXNoU2V0PEtV
Ukw+JikgY29uc3Q7CiAKICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlV2lkZ2V0KFBsdWdpbkNyZWF0
aW9uT3B0aW9uKTsKICAgICB2b2lkIHVwZGF0ZURvY05hbWVkSXRlbSgpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGFyYW1FbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFBhcmFtRWxlbWVudC5jcHAKaW5kZXggNzE5MDEyMzY2YzA0Y2MwOTgwYTRmY2Ni
ZWQ2ODE3ODBiNGNkNzdlZC4uOWY2MDljZTIyNDUxZDQxZDBjMTE2MzMwZjcwMTM2NDM4NjNiZjJj
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGFyYW1FbGVtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQYXJhbUVsZW1lbnQuY3BwCkBAIC02Niw5ICs2
Niw5IEBAIGJvb2wgSFRNTFBhcmFtRWxlbWVudDo6aXNVUkxBdHRyaWJ1dGUoY29uc3QgQXR0cmli
dXRlJiBhdHRyaWJ1dGUpIGNvbnN0CiAgICAgcmV0dXJuIEhUTUxFbGVtZW50Ojppc1VSTEF0dHJp
YnV0ZShhdHRyaWJ1dGUpOwogfQogCi12b2lkIEhUTUxQYXJhbUVsZW1lbnQ6OmNvbGxlY3RTdWJy
ZXNvdXJjZVVSTHNGcm9tQXR0cmlidXRlcyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscykgY29uc3QK
K3ZvaWQgSFRNTFBhcmFtRWxlbWVudDo6YWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKExpc3RI
YXNoU2V0PEtVUkw+JiB1cmxzKSBjb25zdAogewotICAgIEhUTUxFbGVtZW50Ojpjb2xsZWN0U3Vi
cmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXModXJscyk7CisgICAgSFRNTEVsZW1lbnQ6OmFkZFN1
YnJlc291cmNlQXR0cmlidXRlVVJMcyh1cmxzKTsKIAogICAgIGlmICghaXNVUkxQYXJhbWV0ZXIo
bmFtZSgpKSkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MUGFyYW1FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQYXJhbUVsZW1l
bnQuaAppbmRleCBhOGM3Nzc4YzRmNzA1MDY1Y2VmZjUwZjdhZWQ2NzkwYWFiYjk1NDA1Li5mODY4
ZTEzZTJjYmZlOWIwNzgwYTBkZjAyMmJmMzlmMGM4YzZjNjkxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxQYXJhbUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxQYXJhbUVsZW1lbnQuaApAQCAtNDEsNyArNDEsNyBAQCBwcml2YXRlOgogCiAgICAgdmly
dHVhbCBib29sIGlzVVJMQXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYpIGNvbnN0IE9WRVJSSURF
OwogCi0gICAgdmlydHVhbCB2b2lkIGNvbGxlY3RTdWJyZXNvdXJjZVVSTHNGcm9tQXR0cmlidXRl
cyhMaXN0SGFzaFNldDxLVVJMPiYpIGNvbnN0OworICAgIHZpcnR1YWwgdm9pZCBhZGRTdWJyZXNv
dXJjZUF0dHJpYnV0ZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mKSBjb25zdDsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNj
cmlwdEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5j
cHAKaW5kZXggMTNmODU2MTJiNDJhZTM5M2JlYWM4NWJkNDZiZWJmYmZmNmU5MTY4ZS4uNGYyYzk1
NjFmN2I0NzU5ZDUxMmIzM2QwMjljOGFiNWNlMmQ5ZTNjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MU2NyaXB0RWxlbWVudC5jcHAKQEAgLTExMyw5ICsxMTMsOSBAQCBLVVJMIEhUTUxTY3Jp
cHRFbGVtZW50OjpzcmMoKSBjb25zdAogICAgIHJldHVybiBkb2N1bWVudCgpLT5jb21wbGV0ZVVS
TChzb3VyY2VBdHRyaWJ1dGVWYWx1ZSgpKTsKIH0KIAotdm9pZCBIVE1MU2NyaXB0RWxlbWVudDo6
Y29sbGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRyaWJ1dGVzKExpc3RIYXNoU2V0PEtVUkw+JiB1
cmxzKSBjb25zdAordm9pZCBIVE1MU2NyaXB0RWxlbWVudDo6YWRkU3VicmVzb3VyY2VBdHRyaWJ1
dGVVUkxzKExpc3RIYXNoU2V0PEtVUkw+JiB1cmxzKSBjb25zdAogewotICAgIEhUTUxFbGVtZW50
Ojpjb2xsZWN0U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXModXJscyk7CisgICAgSFRNTEVs
ZW1lbnQ6OmFkZFN1YnJlc291cmNlQXR0cmlidXRlVVJMcyh1cmxzKTsKIAogICAgIGFkZFN1YnJl
c291cmNlVVJMKHVybHMsIHNyYygpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFNjcmlwdEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNjcmlwdEVs
ZW1lbnQuaAppbmRleCBmOTA1ZmJmODU5NzY2MzJjYTEwZDk3YjEzNGNjYWQzODI1OGMyMmU1Li5j
MmNhMGRiNTYxYjY5OTQ1YWNhZTlhZmJmZGVjMWE1OGU1NWFmMjcwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxTY3JpcHRFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MU2NyaXB0RWxlbWVudC5oCkBAIC01MCw3ICs1MCw3IEBAIHByaXZhdGU6CiAKICAg
ICB2aXJ0dWFsIGJvb2wgaXNVUkxBdHRyaWJ1dGUoY29uc3QgQXR0cmlidXRlJikgY29uc3QgT1ZF
UlJJREU7CiAKLSAgICB2aXJ0dWFsIHZvaWQgY29sbGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRy
aWJ1dGVzKExpc3RIYXNoU2V0PEtVUkw+JikgY29uc3Q7CisgICAgdmlydHVhbCB2b2lkIGFkZFN1
YnJlc291cmNlQXR0cmlidXRlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYpIGNvbnN0OwogCiAgICAg
dmlydHVhbCBTdHJpbmcgc291cmNlQXR0cmlidXRlVmFsdWUoKSBjb25zdDsKICAgICB2aXJ0dWFs
IFN0cmluZyBjaGFyc2V0QXR0cmlidXRlVmFsdWUoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTFN0eWxlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxTdHlsZUVsZW1lbnQuY3BwCmluZGV4IGQ2ZTc0ZTg4MjM1MzgzMzE4NDFkNWNjMjc5OWE0
ZWQ4ZjBjMWExNTYuLjY3ZGRjZWI0ZmFhM2ZhN2VjZGE1MzQ1NzczNmZjNWQ2Y2UzOGVmNGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFN0eWxlRWxlbWVudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU3R5bGVFbGVtZW50LmNwcApAQCAtMjQ2LDEyICsyNDYs
MTIgQEAgdm9pZCBIVE1MU3R5bGVFbGVtZW50Ojpub3RpZnlMb2FkZWRTaGVldEFuZEFsbENyaXRp
Y2FsU3VicmVzb3VyY2VzKGJvb2wgZXJyb3JPY2MKICAgICBtX2ZpcmVkTG9hZCA9IHRydWU7CiB9
CiAKLXZvaWQgSFRNTFN0eWxlRWxlbWVudDo6Y29sbGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRy
aWJ1dGVzKExpc3RIYXNoU2V0PEtVUkw+JiB1cmxzKSBjb25zdAordm9pZCBIVE1MU3R5bGVFbGVt
ZW50OjphZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mIHVybHMp
IGNvbnN0CiB7ICAgIAotICAgIEhUTUxFbGVtZW50Ojpjb2xsZWN0U3VicmVzb3VyY2VVUkxzRnJv
bUF0dHJpYnV0ZXModXJscyk7CisgICAgSFRNTEVsZW1lbnQ6OmFkZFN1YnJlc291cmNlQXR0cmli
dXRlVVJMcyh1cmxzKTsKIAogICAgIGlmIChDU1NTdHlsZVNoZWV0KiBzdHlsZVNoZWV0ID0gY29u
c3RfY2FzdDxIVE1MU3R5bGVFbGVtZW50Kj4odGhpcyktPnNoZWV0KCkpCi0gICAgICAgIHN0eWxl
U2hlZXQtPmNvbnRlbnRzKCktPmNvbGxlY3RTdWJyZXNvdXJjZVVSTHModXJscyk7CisgICAgICAg
IHN0eWxlU2hlZXQtPmNvbnRlbnRzKCktPmFkZFN1YnJlc291cmNlU3R5bGVVUkxzKHVybHMpOwog
fQogCiBib29sIEhUTUxTdHlsZUVsZW1lbnQ6OmRpc2FibGVkKCkgY29uc3QKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFN0eWxlRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MU3R5bGVFbGVtZW50LmgKaW5kZXggMzIyMmI1MzdlOTgyOTFmYzg1ZjkwYzQwZWEx
ZTJhZDhmM2E5ZWZmMS4uN2UzMTI1NDU0OWNmZTExYjg5YjM5ZGFlYWIwZDlhNDk5M2I4ZWVjMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU3R5bGVFbGVtZW50LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU3R5bGVFbGVtZW50LmgKQEAgLTcxLDcgKzcxLDcgQEAg
cHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5TG9hZGVkU2hlZXRBbmRBbGxDcml0aWNh
bFN1YnJlc291cmNlcyhib29sIGVycm9yT2NjdXJyZWQpOwogICAgIHZpcnR1YWwgdm9pZCBzdGFy
dExvYWRpbmdEeW5hbWljU2hlZXQoKSB7IFN0eWxlRWxlbWVudDo6c3RhcnRMb2FkaW5nRHluYW1p
Y1NoZWV0KGRvY3VtZW50KCkpOyB9CiAKLSAgICB2aXJ0dWFsIHZvaWQgY29sbGVjdFN1YnJlc291
cmNlVVJMc0Zyb21BdHRyaWJ1dGVzKExpc3RIYXNoU2V0PEtVUkw+JikgY29uc3Q7CisgICAgdmly
dHVhbCB2b2lkIGFkZFN1YnJlc291cmNlQXR0cmlidXRlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYp
IGNvbnN0OwogCiAgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIG1lZGlhKCkgY29uc3Q7
CiAgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUoKSBjb25zdDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRhYmxlQ2VsbEVsZW1lbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MVGFibGVDZWxsRWxlbWVudC5jcHAKaW5kZXggOGQyZWU3M2I3Zjlk
MThiOTQyMjFlNTYxZDdjMmVkNzAxMzVmN2NlNS4uYzc1ZWNjOGExNGU4NzAyMWU2NWNjNjhlNGZj
ZWEyMmFmZTNhZGZmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVD
ZWxsRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVDZWxsRWxl
bWVudC5jcHAKQEAgLTE1Niw5ICsxNTYsOSBAQCBTdHJpbmcgSFRNTFRhYmxlQ2VsbEVsZW1lbnQ6
OnNjb3BlKCkgY29uc3QKICAgICByZXR1cm4gZ2V0QXR0cmlidXRlKHNjb3BlQXR0cik7CiB9CiAK
LXZvaWQgSFRNTFRhYmxlQ2VsbEVsZW1lbnQ6OmNvbGxlY3RTdWJyZXNvdXJjZVVSTHNGcm9tQXR0
cmlidXRlcyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscykgY29uc3QKK3ZvaWQgSFRNTFRhYmxlQ2Vs
bEVsZW1lbnQ6OmFkZFN1YnJlc291cmNlQXR0cmlidXRlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYg
dXJscykgY29uc3QKIHsKLSAgICBIVE1MVGFibGVQYXJ0RWxlbWVudDo6Y29sbGVjdFN1YnJlc291
cmNlVVJMc0Zyb21BdHRyaWJ1dGVzKHVybHMpOworICAgIEhUTUxUYWJsZVBhcnRFbGVtZW50Ojph
ZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHModXJscyk7CiAKICAgICBhZGRTdWJyZXNvdXJjZVVS
TCh1cmxzLCBkb2N1bWVudCgpLT5jb21wbGV0ZVVSTChnZXRBdHRyaWJ1dGUoYmFja2dyb3VuZEF0
dHIpKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUYWJsZUNlbGxF
bGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUYWJsZUNlbGxFbGVtZW50LmgKaW5k
ZXggOGNiYTkzOWI5YTYwNDI5NmI2M2ZiZTcwMmM1ZDcxMjU2NzM4MDdjZC4uNTIxM2UxYzE2ODMx
MWNhNTFiZTMxNDk0NzUzMmE0YTZiN2YwZTExNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MVGFibGVDZWxsRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TFRhYmxlQ2VsbEVsZW1lbnQuaApAQCAtNjEsNyArNjEsNyBAQCBwcml2YXRlOgogCiAgICAgdmly
dHVhbCBib29sIGlzVVJMQXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYpIGNvbnN0IE9WRVJSSURF
OwogCi0gICAgdmlydHVhbCB2b2lkIGNvbGxlY3RTdWJyZXNvdXJjZVVSTHNGcm9tQXR0cmlidXRl
cyhMaXN0SGFzaFNldDxLVVJMPiYpIGNvbnN0OworICAgIHZpcnR1YWwgdm9pZCBhZGRTdWJyZXNv
dXJjZUF0dHJpYnV0ZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mKSBjb25zdDsKIH07CiAKIEhUTUxU
YWJsZUNlbGxFbGVtZW50KiB0b0hUTUxUYWJsZUNlbGxFbGVtZW50KE5vZGUqIG5vZGUpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVFbGVtZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTFRhYmxlRWxlbWVudC5jcHAKaW5kZXggYWY2MWUyODllNzc0M2Y4
ZWRhNzgxM2RmNjJlMjNmNGVmYTYzMTYyYS4uYTZmYTE3ZDdiYzk4OWIwZGY1ZGY5ZmFjMGRmOTNi
NTY5N2I4OWVlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVFbGVt
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUYWJsZUVsZW1lbnQuY3BwCkBA
IC01ODIsOSArNTgyLDkgQEAgU3RyaW5nIEhUTUxUYWJsZUVsZW1lbnQ6OnN1bW1hcnkoKSBjb25z
dAogICAgIHJldHVybiBnZXRBdHRyaWJ1dGUoc3VtbWFyeUF0dHIpOwogfQogCi12b2lkIEhUTUxU
YWJsZUVsZW1lbnQ6OmNvbGxlY3RTdWJyZXNvdXJjZVVSTHNGcm9tQXR0cmlidXRlcyhMaXN0SGFz
aFNldDxLVVJMPiYgdXJscykgY29uc3QKK3ZvaWQgSFRNTFRhYmxlRWxlbWVudDo6YWRkU3VicmVz
b3VyY2VBdHRyaWJ1dGVVUkxzKExpc3RIYXNoU2V0PEtVUkw+JiB1cmxzKSBjb25zdAogewotICAg
IEhUTUxFbGVtZW50Ojpjb2xsZWN0U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXModXJscyk7
CisgICAgSFRNTEVsZW1lbnQ6OmFkZFN1YnJlc291cmNlQXR0cmlidXRlVVJMcyh1cmxzKTsKIAog
ICAgIGFkZFN1YnJlc291cmNlVVJMKHVybHMsIGRvY3VtZW50KCktPmNvbXBsZXRlVVJMKGdldEF0
dHJpYnV0ZShiYWNrZ3JvdW5kQXR0cikpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFRhYmxlRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVF
bGVtZW50LmgKaW5kZXggNGU0YzAyZjkwYjhmYWE2ZjY1ZTg1ZDc0ZTUwYWQ3ZWY2ZDk3ZDlhNy4u
ZDQ5MmI1NDUzNzBiZTI2NTBjN2NkZTIyNGZhYTY4NDFhZjRlZjkwYiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MVGFibGVFbGVtZW50LmgKQEAgLTc5LDcgKzc5LDcgQEAgcHJpdmF0ZToKICAgICAv
LyBVc2VkIHRvIG9idGFpbiBlaXRoZXIgYSBzb2xpZCBvciBvdXRzZXQgYm9yZGVyIGRlY2wgYW5k
IHRvIGRlYWwgd2l0aCB0aGUgZnJhbWUgYW5kIHJ1bGVzIGF0dHJpYnV0ZXMuCiAgICAgdmlydHVh
bCBTdHlsZVByb3BlcnR5U2V0KiBhZGRpdGlvbmFsQXR0cmlidXRlU3R5bGUoKSBPVkVSUklERTsK
IAotICAgIHZpcnR1YWwgdm9pZCBjb2xsZWN0U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXMo
TGlzdEhhc2hTZXQ8S1VSTD4mKSBjb25zdDsKKyAgICB2aXJ0dWFsIHZvaWQgYWRkU3VicmVzb3Vy
Y2VBdHRyaWJ1dGVVUkxzKExpc3RIYXNoU2V0PEtVUkw+JikgY29uc3Q7CiAKICAgICBlbnVtIFRh
YmxlUnVsZXMgeyBVbnNldFJ1bGVzLCBOb25lUnVsZXMsIEdyb3Vwc1J1bGVzLCBSb3dzUnVsZXMs
IENvbHNSdWxlcywgQWxsUnVsZXMgfTsKICAgICBlbnVtIENlbGxCb3JkZXJzIHsgTm9Cb3JkZXJz
LCBTb2xpZEJvcmRlcnMsIEluc2V0Qm9yZGVycywgU29saWRCb3JkZXJzQ29sc09ubHksIFNvbGlk
Qm9yZGVyc1Jvd3NPbmx5IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ3Vy
c29yRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ3Vyc29yRWxlbWVudC5jcHAK
aW5kZXggY2EwMWVjOTk1MzQwYWRjYjJhMDA3MTcxYTU5Yjc3NjUwODBmYWUxMi4uZjU4ODE2Yjg3
NDU3ZjQwMTkyMGZmNzY4OTg3MDQwNjY3YzZkOGExOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR0N1cnNvckVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdD
dXJzb3JFbGVtZW50LmNwcApAQCAtMTM0LDkgKzEzNCw5IEBAIHZvaWQgU1ZHQ3Vyc29yRWxlbWVu
dDo6c3ZnQXR0cmlidXRlQ2hhbmdlZChjb25zdCBRdWFsaWZpZWROYW1lJiBhdHRyTmFtZSkKICAg
ICAgICAgKCppdCktPnNldE5lZWRzU3R5bGVSZWNhbGMoKTsKIH0KIAotdm9pZCBTVkdDdXJzb3JF
bGVtZW50Ojpjb2xsZWN0U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXMoTGlzdEhhc2hTZXQ8
S1VSTD4mIHVybHMpIGNvbnN0Cit2b2lkIFNWR0N1cnNvckVsZW1lbnQ6OmFkZFN1YnJlc291cmNl
QXR0cmlidXRlVVJMcyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscykgY29uc3QKIHsKLSAgICBTVkdF
bGVtZW50Ojpjb2xsZWN0U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXModXJscyk7CisgICAg
U1ZHRWxlbWVudDo6YWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKHVybHMpOwogCiAgICAgYWRk
U3VicmVzb3VyY2VVUkwodXJscywgZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwoaHJlZigpKSk7CiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ3Vyc29yRWxlbWVudC5oIGIvU291
cmNlL1dlYkNvcmUvc3ZnL1NWR0N1cnNvckVsZW1lbnQuaAppbmRleCBlODFjOWZmMmNhMzhkNTlj
NjJlZWFiZDUyMGVlODgwYTRmYTc3NWRlLi42ODc1N2FiYjc4MWI4ZWZlNjQ0MDgxZWZiYmVkMDM0
OTQ0MGRkMDE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ3Vyc29yRWxlbWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdDdXJzb3JFbGVtZW50LmgKQEAgLTU0LDcg
KzU0LDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VBdHRyaWJ1dGUoY29uc3Qg
QXR0cmlidXRlJikgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHN2Z0F0dHJpYnV0ZUNoYW5n
ZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYpOwogCi0gICAgdmlydHVhbCB2b2lkIGNvbGxlY3RTdWJy
ZXNvdXJjZVVSTHNGcm9tQXR0cmlidXRlcyhMaXN0SGFzaFNldDxLVVJMPiYpIGNvbnN0OworICAg
IHZpcnR1YWwgdm9pZCBhZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHMoTGlzdEhhc2hTZXQ8S1VS
TD4mKSBjb25zdDsKIAogICAgIEJFR0lOX0RFQ0xBUkVfQU5JTUFURURfUFJPUEVSVElFUyhTVkdD
dXJzb3JFbGVtZW50KQogICAgICAgICBERUNMQVJFX0FOSU1BVEVEX0xFTkdUSChYLCB4KQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVtZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdGRUltYWdlRWxlbWVudC5jcHAKaW5kZXggYTJlZTcxMDQwMDYwMmYy
YTUwYjQ1ZGRhZDEwNDM4YmE4MjhmZDM5ZS4uNzVkMGI0M2JiNmM5NWYzNjU5ZDBhNWE4NjBkYjRj
ZjA5ZjE1MzFmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFSW1hZ2VFbGVt
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVJbWFnZUVsZW1lbnQuY3BwCkBA
IC0yMTAsOSArMjEwLDkgQEAgUGFzc1JlZlB0cjxGaWx0ZXJFZmZlY3Q+IFNWR0ZFSW1hZ2VFbGVt
ZW50OjpidWlsZChTVkdGaWx0ZXJCdWlsZGVyKiwgRmlsdGVyKiBmaWwKICAgICByZXR1cm4gRkVJ
bWFnZTo6Y3JlYXRlV2l0aElSSVJlZmVyZW5jZShmaWx0ZXIsIGRvY3VtZW50KCksIGhyZWYoKSwg
cHJlc2VydmVBc3BlY3RSYXRpbygpKTsKIH0KIAotdm9pZCBTVkdGRUltYWdlRWxlbWVudDo6Y29s
bGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRyaWJ1dGVzKExpc3RIYXNoU2V0PEtVUkw+JiB1cmxz
KSBjb25zdAordm9pZCBTVkdGRUltYWdlRWxlbWVudDo6YWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVV
UkxzKExpc3RIYXNoU2V0PEtVUkw+JiB1cmxzKSBjb25zdAogewotICAgIFNWR0ZpbHRlclByaW1p
dGl2ZVN0YW5kYXJkQXR0cmlidXRlczo6Y29sbGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRyaWJ1
dGVzKHVybHMpOworICAgIFNWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlczo6YWRk
U3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKHVybHMpOwogCiAgICAgYWRkU3VicmVzb3VyY2VVUkwo
dXJscywgZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwoaHJlZigpKSk7CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVJbWFnZUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdGRUltYWdlRWxlbWVudC5oCmluZGV4IDc0MGFjYzA0NzhhMzcyYmRmMGM4Yjg3NDA1YzMw
MDM2YzBmOTA1MDguLmRlNjA2NDIyNzA5ODEzNmMzNzUzNGJjOGRjYzE1NDliZGEwZDE0Y2YgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGRUltYWdlRWxlbWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdGRUltYWdlRWxlbWVudC5oCkBAIC01Myw3ICs1Myw3IEBAIHBy
aXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIHN2Z0F0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVhbGlm
aWVkTmFtZSYpOwogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJj
ZSopOwogCi0gICAgdmlydHVhbCB2b2lkIGNvbGxlY3RTdWJyZXNvdXJjZVVSTHNGcm9tQXR0cmli
dXRlcyhMaXN0SGFzaFNldDxLVVJMPiYpIGNvbnN0OworICAgIHZpcnR1YWwgdm9pZCBhZGRTdWJy
ZXNvdXJjZUF0dHJpYnV0ZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mKSBjb25zdDsKICAgICB2aXJ0
dWFsIFBhc3NSZWZQdHI8RmlsdGVyRWZmZWN0PiBidWlsZChTVkdGaWx0ZXJCdWlsZGVyKiwgRmls
dGVyKik7CiAKICAgICB2b2lkIGNsZWFyUmVzb3VyY2VSZWZlcmVuY2VzKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHSW1hZ2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCmluZGV4IDAwMGZkMDhmYzBkNzE1ODY4Yjc5YmNjYTQx
ZTMzNzYxMTdkOWY2YTUuLjU1NThkMTAyM2ZkZjgwYjk0ZmE0ZmQzNjIxNjBjMmY4YmNlMTE3Y2Yg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuY3BwCkBAIC0yMjcsOSArMjI3LDkg
QEAgY29uc3QgUXVhbGlmaWVkTmFtZSYgU1ZHSW1hZ2VFbGVtZW50OjppbWFnZVNvdXJjZUF0dHJp
YnV0ZU5hbWUoKSBjb25zdAogICAgIHJldHVybiBYTGlua05hbWVzOjpocmVmQXR0cjsKIH0KIAot
dm9pZCBTVkdJbWFnZUVsZW1lbnQ6OmNvbGxlY3RTdWJyZXNvdXJjZVVSTHNGcm9tQXR0cmlidXRl
cyhMaXN0SGFzaFNldDxLVVJMPiYgdXJscykgY29uc3QKK3ZvaWQgU1ZHSW1hZ2VFbGVtZW50Ojph
ZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mIHVybHMpIGNvbnN0
CiB7Ci0gICAgU1ZHU3R5bGVkVHJhbnNmb3JtYWJsZUVsZW1lbnQ6OmNvbGxlY3RTdWJyZXNvdXJj
ZVVSTHNGcm9tQXR0cmlidXRlcyh1cmxzKTsKKyAgICBTVkdTdHlsZWRUcmFuc2Zvcm1hYmxlRWxl
bWVudDo6YWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKHVybHMpOwogCiAgICAgYWRkU3VicmVz
b3VyY2VVUkwodXJscywgZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwoaHJlZigpKSk7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHSW1hZ2VFbGVtZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHSW1hZ2VFbGVtZW50LmgKaW5kZXggZjI4YTlmNDVmN2NlYjU2NDFhY2IzOTUw
NTVjZGNhMDFkMTVlMzYwYi4uZjJmOGQ5YjAzOGM4MzE1YjhjMjBlZDRkZDUxZjQ3NWI1ZjRhMDNj
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ltYWdlRWxlbWVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQuaApAQCAtNjAsNyArNjAsNyBAQCBw
cml2YXRlOgogICAgIHZpcnR1YWwgUmVuZGVyT2JqZWN0KiBjcmVhdGVSZW5kZXJlcihSZW5kZXJB
cmVuYSosIFJlbmRlclN0eWxlKik7CiAgCiAgICAgdmlydHVhbCBjb25zdCBRdWFsaWZpZWROYW1l
JiBpbWFnZVNvdXJjZUF0dHJpYnV0ZU5hbWUoKSBjb25zdDsgICAgICAgCi0gICAgdmlydHVhbCB2
b2lkIGNvbGxlY3RTdWJyZXNvdXJjZVVSTHNGcm9tQXR0cmlidXRlcyhMaXN0SGFzaFNldDxLVVJM
PiYpIGNvbnN0OworICAgIHZpcnR1YWwgdm9pZCBhZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHMo
TGlzdEhhc2hTZXQ8S1VSTD4mKSBjb25zdDsKIAogICAgIHZpcnR1YWwgYm9vbCBoYXZlTG9hZGVk
UmVxdWlyZWRSZXNvdXJjZXMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R1NjcmlwdEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1NjcmlwdEVsZW1lbnQu
Y3BwCmluZGV4IDUzZmQ0YjgzMDM0ZWQ4MGZhYjAxMjJiYWQ2MGMyOWIyYWI1YWI4NDQuLmZmOTgz
NGNjYzQ4ZmQzNTRiOWNhY2JkMmQ1OGIzZTBhNzI3OTk3MjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdTY3JpcHRFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHU2NyaXB0RWxlbWVudC5jcHAKQEAgLTE1Myw5ICsxNTMsOSBAQCB2b2lkIFNWR1NjcmlwdEVs
ZW1lbnQ6OnNldFR5cGUoY29uc3QgU3RyaW5nJiB0eXBlKQogICAgIG1fdHlwZSA9IHR5cGU7CiB9
CiAKLXZvaWQgU1ZHU2NyaXB0RWxlbWVudDo6Y29sbGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRy
aWJ1dGVzKExpc3RIYXNoU2V0PEtVUkw+JiB1cmxzKSBjb25zdAordm9pZCBTVkdTY3JpcHRFbGVt
ZW50OjphZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mIHVybHMp
IGNvbnN0CiB7Ci0gICAgU1ZHRWxlbWVudDo6Y29sbGVjdFN1YnJlc291cmNlVVJMc0Zyb21BdHRy
aWJ1dGVzKHVybHMpOworICAgIFNWR0VsZW1lbnQ6OmFkZFN1YnJlc291cmNlQXR0cmlidXRlVVJM
cyh1cmxzKTsKIAogICAgIGFkZFN1YnJlc291cmNlVVJMKHVybHMsIGRvY3VtZW50KCktPmNvbXBs
ZXRlVVJMKGhyZWYoKSkpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1Nj
cmlwdEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdTY3JpcHRFbGVtZW50LmgKaW5k
ZXggMDZhZjY0ODI3N2UzNzE1ODI3OTlkMjQ5ODA1MGEzNzgxNTVhZDcyNS4uNTAzNTk4ZmFjYzE0
MTMyZWVjZDczYzZhOTk4NzYzNTc4MTkzM2UzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR1NjcmlwdEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU2NyaXB0
RWxlbWVudC5oCkBAIC01Myw3ICs1Myw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBib29sIGlz
VVJMQXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYpIGNvbnN0IE9WRVJSSURFOwogICAgIHZpcnR1
YWwgdm9pZCBmaW5pc2hQYXJzaW5nQ2hpbGRyZW4oKTsKIAotICAgIHZpcnR1YWwgdm9pZCBjb2xs
ZWN0U3VicmVzb3VyY2VVUkxzRnJvbUF0dHJpYnV0ZXMoTGlzdEhhc2hTZXQ8S1VSTD4mKSBjb25z
dDsKKyAgICB2aXJ0dWFsIHZvaWQgYWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKExpc3RIYXNo
U2V0PEtVUkw+JikgY29uc3Q7CiAKICAgICB2aXJ0dWFsIGJvb2wgaGF2ZUxvYWRlZFJlcXVpcmVk
UmVzb3VyY2VzKCkgeyByZXR1cm4gU1ZHRXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZDo6aGF2ZUxv
YWRlZFJlcXVpcmVkUmVzb3VyY2VzKCk7IH0KIAo=
</data>
<flag name="commit-queue"
          id="151901"
          type_id="3"
          status="-"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>