<?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>115288</bug_id>
          
          <creation_ts>2013-04-26 16:33:47 -0700</creation_ts>
          <short_desc>REGRESSION: We see authentication challenge sheets for favicon requests</short_desc>
          <delta_ts>2013-04-29 12:06:58 -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>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>japhet</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>882074</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-04-26 16:33:47 -0700</bug_when>
    <thetext>REGRESSION: We see authentication challenge sheets for favicon requests

This regressed when the NetworkProcess started sending auth challenges directly to the UI process.

&lt;rdar://problem/13753470&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>882081</commentid>
    <comment_count>1</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-04-26 16:55:01 -0700</bug_when>
    <thetext>In fact, there&apos;s a much greater regression here that I filed in https://bugs.webkit.org/show_bug.cgi?id=115291

But the favicon case should still be fixed separately.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>882087</commentid>
    <comment_count>2</comment_count>
      <attachid>199875</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-04-26 17:05:36 -0700</bug_when>
    <thetext>Created attachment 199875
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>882138</commentid>
    <comment_count>3</comment_count>
      <attachid>199875</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-04-26 22:36:21 -0700</bug_when>
    <thetext>Comment on attachment 199875
Patch v1

Nice!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>882704</commentid>
    <comment_count>4</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-04-29 11:36:46 -0700</bug_when>
    <thetext>Actually that patch was too simple, and wrong - uninitialized member variable... in testing it appeared to work through straight up luck.

Full fix is a bit more invasive in touching more parts of the code, but is still pretty mechanical.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>882705</commentid>
    <comment_count>5</comment_count>
      <attachid>200034</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-04-29 11:37:02 -0700</bug_when>
    <thetext>Created attachment 200034
Patch v2 - Actually works...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>882706</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-04-29 11:38:59 -0700</bug_when>
    <thetext>Attachment 200034 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/WebCore.exp.in&apos;, u&apos;Source/WebCore/inspector/InspectorFrontendHost.cpp&apos;, u&apos;Source/WebCore/loader/DocumentLoader.cpp&apos;, u&apos;Source/WebCore/loader/DocumentThreadableLoader.cpp&apos;, u&apos;Source/WebCore/loader/FrameLoader.cpp&apos;, u&apos;Source/WebCore/loader/FrameLoader.h&apos;, u&apos;Source/WebCore/loader/LoaderStrategy.cpp&apos;, u&apos;Source/WebCore/loader/LoaderStrategy.h&apos;, u&apos;Source/WebCore/loader/NetscapePlugInStreamLoader.cpp&apos;, u&apos;Source/WebCore/loader/ResourceLoader.cpp&apos;, u&apos;Source/WebCore/loader/ResourceLoader.h&apos;, u&apos;Source/WebCore/loader/ResourceLoaderOptions.h&apos;, u&apos;Source/WebCore/loader/cache/CachedResourceLoader.cpp&apos;, u&apos;Source/WebCore/loader/icon/IconLoader.cpp&apos;, u&apos;Source/WebCore/platform/network/ResourceHandleTypes.h&apos;, u&apos;Source/WebCore/xml/XSLTProcessorLibxslt.cpp&apos;, u&apos;Source/WebCore/xml/parser/XMLDocumentParserLibxml2.cpp&apos;, u&apos;Source/WebKit2/ChangeLog&apos;, u&apos;Source/WebKit2/NetworkProcess/NetworkProcessPlatformStrategies.cpp&apos;, u&apos;Source/WebKit2/NetworkProcess/NetworkProcessPlatformStrategies.h&apos;, u&apos;Source/WebKit2/NetworkProcess/NetworkResourceLoader.cpp&apos;, u&apos;Source/WebKit2/NetworkProcess/NetworkResourceLoader.h&apos;, u&apos;Source/WebKit2/NetworkProcess/SchedulableLoader.cpp&apos;, u&apos;Source/WebKit2/NetworkProcess/SchedulableLoader.h&apos;, u&apos;Source/WebKit2/Shared/Network/NetworkResourceLoadParameters.cpp&apos;, u&apos;Source/WebKit2/Shared/Network/NetworkResourceLoadParameters.h&apos;, u&apos;Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.cpp&apos;, u&apos;Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp&apos;, u&apos;Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.h&apos;]&quot; exit_code: 1
Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:229:  Missing space after ,  [whitespace/comma] [3]
Total errors found: 1 in 29 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>882715</commentid>
    <comment_count>7</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-04-29 12:06:58 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/149303</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>199875</attachid>
            <date>2013-04-26 17:05:36 -0700</date>
            <delta_ts>2013-04-29 11:37:02 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>17303</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA0NDc1ZTc3Li5hODlkZjhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzQg
QEAKKzIwMTMtMDQtMjYgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgIFJFR1JFU1NJT046IFdlIHNlZSBhdXRoZW50aWNhdGlvbiBjaGFsbGVuZ2Ugc2hlZXRzIGZv
ciBmYXZpY29uIHJlcXVlc3RzLgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTM3NTM0NzA+IGFu
ZCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE1Mjg4CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIChO
b3QgaW4gYSB0ZXN0ZWQgY29uZmlnLCBtaWdodCBmaXggZXhpc3RpbmcgdGVzdCkuCisKKyAgICAg
ICAgKiBsb2FkZXIvUmVzb3VyY2VMb2FkZXJPcHRpb25zLmg6CisgICAgICAgIChXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRlck9wdGlvbnM6OlJlc291cmNlTG9hZGVyT3B0aW9ucyk6IFJlbmFtZWQgQ2xp
ZW50Q3Jvc3NPcmlnaW5DcmVkZW50aWFsUG9saWN5IHRvCisgICAgICAgICAgQ2xpZW50Q3JlZGVu
dGlhbFBvbGljeSBhbmQgcmV3b3JrZWQgd2l0aCB0aHJlZSBvcHRpb25zLgorCisgICAgICAgICog
bG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9h
ZGVyOjpkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UpOiBSZXdvcmsgdGhlIOKAnHNo
b3VsZCBhc2sgY2xpZW504oCdIGNsYXVzZQorICAgICAgICAgIGZvciB0aGUgbmV3IHZhbHVlcyBv
ZiBDbGllbnRDcmVkZW50aWFsUG9saWN5LgorCisgICAgICAgICogbG9hZGVyL2ljb24vSWNvbkxv
YWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJY29uTG9hZGVyOjpzdGFydExvYWRpbmcpOiBX
ZSBuZXZlciB3YW50IHRvIGFzayB0aGUgY2xpZW50IGZvciBpY29uIGxvYWRzLgorCisgICAgICAg
IFVwZGF0ZSBhbGwgb3RoZXIgdXNlcnMgb2YgQ2xpZW50Q3JlZGVudGlhbFBvbGljeSB0byB0aGUg
YXBwcm9wcmlhdGUgbmV3IHZhbHVlOgorICAgICAgICAqIGxvYWRlci9Eb2N1bWVudExvYWRlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6c3RhcnRMb2FkaW5nTWFpblJl
c291cmNlKToKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6bG9hZFJlcXVlc3Qp
OgorICAgICAgICAqIGxvYWRlci9OZXRzY2FwZVBsdWdJblN0cmVhbUxvYWRlci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpOZXRzY2FwZVBsdWdJblN0cmVhbUxvYWRlcjo6TmV0c2NhcGVQbHVnSW5T
dHJlYW1Mb2FkZXIpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdFVz
ZXJDU1NTdHlsZVNoZWV0KToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlTG9hZGVy
OjpkZWZhdWx0Q2FjaGVkUmVzb3VyY2VPcHRpb25zKToKKwogMjAxMy0wNC0yNiAgUm9nZXIgRm9u
ZyAgPHJvZ2VyX2ZvbmdAYXBwbGUuY29tPgogCiAgICAgICAgIERpc2FibGUgc3ViLXBpeGVsIGxh
eW91dCBvbiBtYWMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRM
b2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAppbmRl
eCAwMWFiYTY5Li4zMTI0ZDMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9j
dW1lbnRMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRl
ci5jcHAKQEAgLTEzNjQsNyArMTM2NCw3IEBAIHZvaWQgRG9jdW1lbnRMb2FkZXI6OnN0YXJ0TG9h
ZGluZ01haW5SZXNvdXJjZSgpCiAKICAgICBSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdChtX3JlcXVl
c3QpOwogICAgIERFRklORV9TVEFUSUNfTE9DQUwoUmVzb3VyY2VMb2FkZXJPcHRpb25zLCBtYWlu
UmVzb3VyY2VMb2FkT3B0aW9ucywKLSAgICAgICAgKFNlbmRDYWxsYmFja3MsIFNuaWZmQ29udGVu
dCwgQnVmZmVyRGF0YSwgQWxsb3dTdG9yZWRDcmVkZW50aWFscywgQXNrQ2xpZW50Rm9yQ3Jvc3NP
cmlnaW5DcmVkZW50aWFscywgU2tpcFNlY3VyaXR5Q2hlY2spKTsKKyAgICAgICAgKFNlbmRDYWxs
YmFja3MsIFNuaWZmQ29udGVudCwgQnVmZmVyRGF0YSwgQWxsb3dTdG9yZWRDcmVkZW50aWFscywg
QXNrQ2xpZW50Rm9yQWxsQ3JlZGVudGlhbHMsIFNraXBTZWN1cml0eUNoZWNrKSk7CiAgICAgQ2Fj
aGVkUmVzb3VyY2VSZXF1ZXN0IGNhY2hlZFJlc291cmNlUmVxdWVzdChyZXF1ZXN0LCBtYWluUmVz
b3VyY2VMb2FkT3B0aW9ucyk7CiAgICAgbV9tYWluUmVzb3VyY2UgPSBtX2NhY2hlZFJlc291cmNl
TG9hZGVyLT5yZXF1ZXN0TWFpblJlc291cmNlKGNhY2hlZFJlc291cmNlUmVxdWVzdCk7CiAgICAg
aWYgKCFtX21haW5SZXNvdXJjZSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9j
dW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcAppbmRleCA5YjVmMDBmLi5iMDY2ZGQ1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyLmNwcApA
QCAtMzY4LDcgKzM2OCw3IEBAIHZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpsb2FkUmVx
dWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFNlY3VyCiAKICAgICBpZiAobV9h
c3luYykgewogICAgICAgICBUaHJlYWRhYmxlTG9hZGVyT3B0aW9ucyBvcHRpb25zID0gbV9vcHRp
b25zOwotICAgICAgICBvcHRpb25zLmNyb3NzT3JpZ2luQ3JlZGVudGlhbFBvbGljeSA9IERvTm90
QXNrQ2xpZW50Rm9yQ3Jvc3NPcmlnaW5DcmVkZW50aWFsczsKKyAgICAgICAgb3B0aW9ucy5jcmVk
ZW50aWFsUG9saWN5ID0gRG9Ob3RBc2tDbGllbnRGb3JDcm9zc09yaWdpbkNyZWRlbnRpYWxzOwog
ICAgICAgICBpZiAobV9hY3R1YWxSZXF1ZXN0KSB7CiAgICAgICAgICAgICAvLyBEb24ndCBzbmlm
ZiBjb250ZW50IG9yIHNlbmQgbG9hZCBjYWxsYmFja3MgZm9yIHRoZSBwcmVmbGlnaHQgcmVxdWVz
dC4KICAgICAgICAgICAgIG9wdGlvbnMuc2VuZExvYWRDYWxsYmFja3MgPSBEb05vdFNlbmRDYWxs
YmFja3M7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmV0c2NhcGVQbHVnSW5T
dHJlYW1Mb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05ldHNjYXBlUGx1Z0luU3Ry
ZWFtTG9hZGVyLmNwcAppbmRleCA3ZGRjMWE2Li5hNzhlODA3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvTmV0c2NhcGVQbHVnSW5TdHJlYW1Mb2FkZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9OZXRzY2FwZVBsdWdJblN0cmVhbUxvYWRlci5jcHAKQEAgLTM2LDcg
KzM2LDcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogTmV0c2NhcGVQbHVnSW5TdHJlYW1Mb2Fk
ZXI6Ok5ldHNjYXBlUGx1Z0luU3RyZWFtTG9hZGVyKEZyYW1lKiBmcmFtZSwgTmV0c2NhcGVQbHVn
SW5TdHJlYW1Mb2FkZXJDbGllbnQqIGNsaWVudCkKLSAgICA6IFJlc291cmNlTG9hZGVyKGZyYW1l
LCBSZXNvdXJjZUxvYWRlck9wdGlvbnMoU2VuZENhbGxiYWNrcywgU25pZmZDb250ZW50LCBEb05v
dEJ1ZmZlckRhdGEsIEFsbG93U3RvcmVkQ3JlZGVudGlhbHMsIEFza0NsaWVudEZvckNyb3NzT3Jp
Z2luQ3JlZGVudGlhbHMsIFNraXBTZWN1cml0eUNoZWNrKSkKKyAgICA6IFJlc291cmNlTG9hZGVy
KGZyYW1lLCBSZXNvdXJjZUxvYWRlck9wdGlvbnMoU2VuZENhbGxiYWNrcywgU25pZmZDb250ZW50
LCBEb05vdEJ1ZmZlckRhdGEsIEFsbG93U3RvcmVkQ3JlZGVudGlhbHMsIEFza0NsaWVudEZvckFs
bENyZWRlbnRpYWxzLCBTa2lwU2VjdXJpdHlDaGVjaykpCiAgICAgLCBtX2NsaWVudChjbGllbnQp
CiB7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyLmNwcAppbmRleCBiNDRm
OGRmLi43ZDVjZDg2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNl
TG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3Bw
CkBAIC01MzUsNyArNTM1LDcgQEAgdm9pZCBSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZUF1dGhl
bnRpY2F0aW9uQ2hhbGxlbmdlKGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGwKICAgICBSZWZQdHI8
UmVzb3VyY2VMb2FkZXI+IHByb3RlY3Rvcih0aGlzKTsKIAogICAgIGlmIChtX29wdGlvbnMuYWxs
b3dDcmVkZW50aWFscyA9PSBBbGxvd1N0b3JlZENyZWRlbnRpYWxzKSB7Ci0gICAgICAgIGlmICht
X29wdGlvbnMuY3Jvc3NPcmlnaW5DcmVkZW50aWFsUG9saWN5ID09IEFza0NsaWVudEZvckNyb3Nz
T3JpZ2luQ3JlZGVudGlhbHMgfHwgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4o
KS0+Y2FuUmVxdWVzdChvcmlnaW5hbFJlcXVlc3QoKS51cmwoKSkpIHsKKyAgICAgICAgaWYgKG1f
b3B0aW9ucy5jcmVkZW50aWFsUG9saWN5ID09IEFza0NsaWVudEZvckFsbENyZWRlbnRpYWxzIHx8
IChtX29wdGlvbnMuY3JlZGVudGlhbFBvbGljeSA9PSBEb05vdEFza0NsaWVudEZvckNyb3NzT3Jp
Z2luQ3JlZGVudGlhbHMgJiYgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+
Y2FuUmVxdWVzdChvcmlnaW5hbFJlcXVlc3QoKS51cmwoKSkpKSB7CiAgICAgICAgICAgICBmcmFt
ZUxvYWRlcigpLT5ub3RpZmllcigpLT5kaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2Uo
dGhpcywgY2hhbGxlbmdlKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyT3B0aW9ucy5oIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyT3B0aW9ucy5oCmluZGV4IDU4ZDYxYmIu
LmM0NmNlMzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRl
ck9wdGlvbnMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXJPcHRp
b25zLmgKQEAgLTUwLDkgKzUwLDEwIEBAIGVudW0gRGF0YUJ1ZmZlcmluZ1BvbGljeSB7CiAgICAg
RG9Ob3RCdWZmZXJEYXRhCiB9OwogCi1lbnVtIENsaWVudENyb3NzT3JpZ2luQ3JlZGVudGlhbFBv
bGljeSB7Ci0gICAgQXNrQ2xpZW50Rm9yQ3Jvc3NPcmlnaW5DcmVkZW50aWFscywKLSAgICBEb05v
dEFza0NsaWVudEZvckNyb3NzT3JpZ2luQ3JlZGVudGlhbHMKK2VudW0gQ2xpZW50Q3JlZGVudGlh
bFBvbGljeSB7CisgICAgQXNrQ2xpZW50Rm9yQWxsQ3JlZGVudGlhbHMsCisgICAgRG9Ob3RBc2tD
bGllbnRGb3JDcm9zc09yaWdpbkNyZWRlbnRpYWxzLAorICAgIERvTm90QXNrQ2xpZW50Rm9yQW55
Q3JlZGVudGlhbHMKIH07CiAKIGVudW0gU2VjdXJpdHlDaGVja1BvbGljeSB7CkBAIC02MSwxMyAr
NjIsMTMgQEAgZW51bSBTZWN1cml0eUNoZWNrUG9saWN5IHsKIH07CiAKIHN0cnVjdCBSZXNvdXJj
ZUxvYWRlck9wdGlvbnMgewotICAgIFJlc291cmNlTG9hZGVyT3B0aW9ucygpIDogc2VuZExvYWRD
YWxsYmFja3MoRG9Ob3RTZW5kQ2FsbGJhY2tzKSwgc25pZmZDb250ZW50KERvTm90U25pZmZDb250
ZW50KSwgZGF0YUJ1ZmZlcmluZ1BvbGljeShCdWZmZXJEYXRhKSwgYWxsb3dDcmVkZW50aWFscyhE
b05vdEFsbG93U3RvcmVkQ3JlZGVudGlhbHMpLCBjcm9zc09yaWdpbkNyZWRlbnRpYWxQb2xpY3ko
RG9Ob3RBc2tDbGllbnRGb3JDcm9zc09yaWdpbkNyZWRlbnRpYWxzKSwgc2VjdXJpdHlDaGVjayhE
b1NlY3VyaXR5Q2hlY2spIHsgfQotICAgIFJlc291cmNlTG9hZGVyT3B0aW9ucyhTZW5kQ2FsbGJh
Y2tQb2xpY3kgc2VuZExvYWRDYWxsYmFja3MsIENvbnRlbnRTbmlmZmluZ1BvbGljeSBzbmlmZkNv
bnRlbnQsIERhdGFCdWZmZXJpbmdQb2xpY3kgZGF0YUJ1ZmZlcmluZ1BvbGljeSwgU3RvcmVkQ3Jl
ZGVudGlhbHMgYWxsb3dDcmVkZW50aWFscywgQ2xpZW50Q3Jvc3NPcmlnaW5DcmVkZW50aWFsUG9s
aWN5IGNyb3NzT3JpZ2luQ3JlZGVudGlhbFBvbGljeSwgU2VjdXJpdHlDaGVja1BvbGljeSBzZWN1
cml0eUNoZWNrKQorICAgIFJlc291cmNlTG9hZGVyT3B0aW9ucygpIDogc2VuZExvYWRDYWxsYmFj
a3MoRG9Ob3RTZW5kQ2FsbGJhY2tzKSwgc25pZmZDb250ZW50KERvTm90U25pZmZDb250ZW50KSwg
ZGF0YUJ1ZmZlcmluZ1BvbGljeShCdWZmZXJEYXRhKSwgYWxsb3dDcmVkZW50aWFscyhEb05vdEFs
bG93U3RvcmVkQ3JlZGVudGlhbHMpLCBjcmVkZW50aWFsUG9saWN5KERvTm90QXNrQ2xpZW50Rm9y
QW55Q3JlZGVudGlhbHMpLCBzZWN1cml0eUNoZWNrKERvU2VjdXJpdHlDaGVjaykgeyB9CisgICAg
UmVzb3VyY2VMb2FkZXJPcHRpb25zKFNlbmRDYWxsYmFja1BvbGljeSBzZW5kTG9hZENhbGxiYWNr
cywgQ29udGVudFNuaWZmaW5nUG9saWN5IHNuaWZmQ29udGVudCwgRGF0YUJ1ZmZlcmluZ1BvbGlj
eSBkYXRhQnVmZmVyaW5nUG9saWN5LCBTdG9yZWRDcmVkZW50aWFscyBhbGxvd0NyZWRlbnRpYWxz
LCBDbGllbnRDcmVkZW50aWFsUG9saWN5IGNyZWRlbnRpYWxQb2xpY3ksIFNlY3VyaXR5Q2hlY2tQ
b2xpY3kgc2VjdXJpdHlDaGVjaykKICAgICAgICAgOiBzZW5kTG9hZENhbGxiYWNrcyhzZW5kTG9h
ZENhbGxiYWNrcykKICAgICAgICAgLCBzbmlmZkNvbnRlbnQoc25pZmZDb250ZW50KQogICAgICAg
ICAsIGRhdGFCdWZmZXJpbmdQb2xpY3koZGF0YUJ1ZmZlcmluZ1BvbGljeSkKICAgICAgICAgLCBh
bGxvd0NyZWRlbnRpYWxzKGFsbG93Q3JlZGVudGlhbHMpCi0gICAgICAgICwgY3Jvc3NPcmlnaW5D
cmVkZW50aWFsUG9saWN5KGNyb3NzT3JpZ2luQ3JlZGVudGlhbFBvbGljeSkKKyAgICAgICAgLCBj
cmVkZW50aWFsUG9saWN5KGNyZWRlbnRpYWxQb2xpY3kpCiAgICAgICAgICwgc2VjdXJpdHlDaGVj
ayhzZWN1cml0eUNoZWNrKQogICAgIHsKICAgICB9CkBAIC03NSw3ICs3Niw3IEBAIHN0cnVjdCBS
ZXNvdXJjZUxvYWRlck9wdGlvbnMgewogICAgIENvbnRlbnRTbmlmZmluZ1BvbGljeSBzbmlmZkNv
bnRlbnQ7CiAgICAgRGF0YUJ1ZmZlcmluZ1BvbGljeSBkYXRhQnVmZmVyaW5nUG9saWN5OwogICAg
IFN0b3JlZENyZWRlbnRpYWxzIGFsbG93Q3JlZGVudGlhbHM7IC8vIFdoZXRoZXIgSFRUUCBjcmVk
ZW50aWFscyBhbmQgY29va2llcyBhcmUgc2VudCB3aXRoIHRoZSByZXF1ZXN0LgotICAgIENsaWVu
dENyb3NzT3JpZ2luQ3JlZGVudGlhbFBvbGljeSBjcm9zc09yaWdpbkNyZWRlbnRpYWxQb2xpY3k7
IC8vIFdoZXRoZXIgd2Ugd2lsbCBhc2sgdGhlIGNsaWVudCBmb3IgY3JlZGVudGlhbHMgKGlmIHdl
IGFsbG93IGNyZWRlbnRpYWxzIGF0IGFsbCkuCisgICAgQ2xpZW50Q3JlZGVudGlhbFBvbGljeSBj
cmVkZW50aWFsUG9saWN5OyAvLyBXaGVuIHdlIHNob3VsZCBhc2sgdGhlIGNsaWVudCBmb3IgY3Jl
ZGVudGlhbHMgKGlmIHdlIGFsbG93IGNyZWRlbnRpYWxzIGF0IGFsbCkuCiAgICAgU2VjdXJpdHlD
aGVja1BvbGljeSBzZWN1cml0eUNoZWNrOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggMjQ1Mjc5NS4uYjZk
NjA5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291
cmNlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2VMb2FkZXIuY3BwCkBAIC0yMTYsNyArMjE2LDcgQEAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8
Q2FjaGVkQ1NTU3R5bGVTaGVldD4gQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnJlcXVlc3RVc2VyQ1NT
U3QKICAgICBtZW1vcnlDYWNoZSgpLT5hZGQodXNlclNoZWV0LmdldCgpKTsKICAgICAvLyBGSVhN
RTogbG9hZFJlc291cmNlIGNhbGxzIHNldE93bmluZ0NhY2hlZFJlc291cmNlTG9hZGVyKCkgaWYg
dGhlIHJlc291cmNlIGNvdWxkbid0IGJlIGFkZGVkIHRvIGNhY2hlLiBEb2VzIHRoaXMgZnVuY3Rp
b24gbmVlZCB0byBjYWxsIGl0LCB0b28/CiAKLSAgICB1c2VyU2hlZXQtPmxvYWQodGhpcywgUmVz
b3VyY2VMb2FkZXJPcHRpb25zKERvTm90U2VuZENhbGxiYWNrcywgU25pZmZDb250ZW50LCBCdWZm
ZXJEYXRhLCBBbGxvd1N0b3JlZENyZWRlbnRpYWxzLCBBc2tDbGllbnRGb3JDcm9zc09yaWdpbkNy
ZWRlbnRpYWxzLCBTa2lwU2VjdXJpdHlDaGVjaykpOworICAgIHVzZXJTaGVldC0+bG9hZCh0aGlz
LCBSZXNvdXJjZUxvYWRlck9wdGlvbnMoRG9Ob3RTZW5kQ2FsbGJhY2tzLCBTbmlmZkNvbnRlbnQs
IEJ1ZmZlckRhdGEsIEFsbG93U3RvcmVkQ3JlZGVudGlhbHMsIEFza0NsaWVudEZvckFsbENyZWRl
bnRpYWxzLCBTa2lwU2VjdXJpdHlDaGVjaykpOwogICAgIAogICAgIHJldHVybiB1c2VyU2hlZXQ7
CiB9CkBAIC05ODUsNyArOTg1LDcgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cHJpbnRQ
cmVsb2FkU3RhdHMoKQogCiBjb25zdCBSZXNvdXJjZUxvYWRlck9wdGlvbnMmIENhY2hlZFJlc291
cmNlTG9hZGVyOjpkZWZhdWx0Q2FjaGVkUmVzb3VyY2VPcHRpb25zKCkKIHsKLSAgICBzdGF0aWMg
UmVzb3VyY2VMb2FkZXJPcHRpb25zIG9wdGlvbnMoU2VuZENhbGxiYWNrcywgU25pZmZDb250ZW50
LCBCdWZmZXJEYXRhLCBBbGxvd1N0b3JlZENyZWRlbnRpYWxzLCBBc2tDbGllbnRGb3JDcm9zc09y
aWdpbkNyZWRlbnRpYWxzLCBEb1NlY3VyaXR5Q2hlY2spOworICAgIHN0YXRpYyBSZXNvdXJjZUxv
YWRlck9wdGlvbnMgb3B0aW9ucyhTZW5kQ2FsbGJhY2tzLCBTbmlmZkNvbnRlbnQsIEJ1ZmZlckRh
dGEsIEFsbG93U3RvcmVkQ3JlZGVudGlhbHMsIEFza0NsaWVudEZvckFsbENyZWRlbnRpYWxzLCBE
b1NlY3VyaXR5Q2hlY2spOwogICAgIHJldHVybiBvcHRpb25zOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9pY29uL0ljb25Mb2FkZXIuY3BwCmluZGV4IGJjNzAwZmIuLjE4NTU4NTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25Mb2FkZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9pY29uL0ljb25Mb2FkZXIuY3BwCkBAIC02Miw3ICs2Miw3IEBA
IHZvaWQgSWNvbkxvYWRlcjo6c3RhcnRMb2FkaW5nKCkKICAgICBpZiAobV9yZXNvdXJjZSB8fCAh
bV9mcmFtZS0+ZG9jdW1lbnQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgQ2FjaGVkUmVzb3Vy
Y2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0KG1fZnJhbWUtPmxvYWRlcigpLT5pY29u
KCktPnVybCgpKSwgUmVzb3VyY2VMb2FkZXJPcHRpb25zKFNlbmRDYWxsYmFja3MsIFNuaWZmQ29u
dGVudCwgQnVmZmVyRGF0YSwgRG9Ob3RBbGxvd1N0b3JlZENyZWRlbnRpYWxzLCBEb05vdEFza0Ns
aWVudEZvckNyb3NzT3JpZ2luQ3JlZGVudGlhbHMsIERvU2VjdXJpdHlDaGVjaykpOworICAgIENh
Y2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChtX2ZyYW1lLT5sb2Fk
ZXIoKS0+aWNvbigpLT51cmwoKSksIFJlc291cmNlTG9hZGVyT3B0aW9ucyhTZW5kQ2FsbGJhY2tz
LCBTbmlmZkNvbnRlbnQsIEJ1ZmZlckRhdGEsIERvTm90QWxsb3dTdG9yZWRDcmVkZW50aWFscywg
RG9Ob3RBc2tDbGllbnRGb3JBbnlDcmVkZW50aWFscywgRG9TZWN1cml0eUNoZWNrKSk7CiAKICNp
ZiBQTEFURk9STShCTEFDS0JFUlJZKQogICAgIHJlcXVlc3QubXV0YWJsZVJlc291cmNlUmVxdWVz
dCgpLnNldFRhcmdldFR5cGUoUmVzb3VyY2VSZXF1ZXN0OjpUYXJnZXRJc0Zhdmljb24pOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCmluZGV4IDkzMDdkODAuLjEzZjdmYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAor
MjAxMy0wNC0yNiAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAg
UkVHUkVTU0lPTjogV2Ugc2VlIGF1dGhlbnRpY2F0aW9uIGNoYWxsZW5nZSBzaGVldHMgZm9yIGZh
dmljb24gcmVxdWVzdHMuCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xMzc1MzQ3MD4gYW5kIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTUyODgKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBIYXZlIE5ldHdvcmtSZXNvdXJj
ZUxvYWRQYXJhbWV0ZXJzIHJlbWVtYmVyIHRoZSBDbGllbnRDcmVkZW50aWFsUG9saWN5OgorICAg
ICAgICAqIFNoYXJlZC9OZXR3b3JrL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnM6OmVuY29kZSk6
CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzOjpkZWNvZGUp
OgorICAgICAgICAqIFNoYXJlZC9OZXR3b3JrL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJz
Lmg6CisKKyAgICAgICAgSGF2ZSB0aGUgU2NoZWR1bGFibGVMb2FkZXIgcmVtZW1iZXIgdGhlIENs
aWVudENyZWRlbnRpYWxQb2xpY3k6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvU2NoZWR1bGFi
bGVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpTY2hlZHVsYWJsZUxvYWRlcjo6U2NoZWR1
bGFibGVMb2FkZXIpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL1NjaGVkdWxhYmxlTG9hZGVy
Lmg6CisgICAgICAgIChXZWJLaXQ6OlNjaGVkdWxhYmxlTG9hZGVyOjpjbGllbnRDcmVkZW50aWFs
UG9saWN5KToKKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRl
ci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2
ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKTogRG9u4oCZdCBtZXNzYWdlIGZvciBjcmVkZW50aWFs
cworICAgICAgICAgIGlmIHRoZSBDbGllbnRDcmVkZW50aWFsUG9saWN5IGZvcmJpZHMgaXQuCisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmg6CisKIDIwMTMt
MDQtMjYgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAogICAgICAgICBE
b3dubG9hZHMgbmVlZCB0byBiZSBjb252ZXJ0ZWQgZnJvbSB0aGUgTlNVUkxDb25uZWN0aW9uLCBu
b3QgY2FuY2VsZWQgYW5kIHJlc3RhcnRlZCwgd2hlbiB1c2luZyB0aGUgTmV0d29ya1Byb2Nlc3MK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJj
ZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3Vy
Y2VMb2FkZXIuY3BwCmluZGV4IDRkMDBiMTQuLjljMzM1MWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291
cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNwcApAQCAt
Mjc3LDYgKzI3NywxNCBAQCB2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6c2hvdWxkVXNlQ3Jl
ZGVudGlhbFN0b3JhZ2VBc3luYyhSZXNvdXJjZUhhbmRsZSogaGFuZAogCiB2b2lkIE5ldHdvcmtS
ZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFJlc291cmNl
SGFuZGxlKiwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UmIGNoYWxsZW5nZSkKIHsKKyAg
ICAvLyBGSVhNRSAoaHR0cDovL3dlYmtpdC5vcmcvYi8xMTUyOTEpOiBTaW5jZSB3ZSBnbyBzdHJh
aWdodCB0byB0aGUgVUkgcHJvY2VzcyBmb3IgYXV0aGVudGljYXRpb24gd2UgZG9uJ3QgZ2V0IFdl
YkNvcmUncworICAgIC8vIGNyb3NzLW9yaWdpbiBjaGVjayBiZWZvcmUgYXNraW5nIHRoZSBjbGll
bnQgZm9yIGNyZWRlbnRpYWxzLgorICAgIC8vIFRoZXJlZm9yZSB3ZSBhcmUgdG9vIHBlcm1pc3Np
dmUgaW4gdGhlIGNhc2Ugd2hlcmUgdGhlIENsaWVudENyZWRlbnRpYWxQb2xpY3kgaXMgRG9Ob3RB
c2tDbGllbnRGb3JDcm9zc09yaWdpbkNyZWRlbnRpYWxzLgorICAgIGlmIChjbGllbnRDcmVkZW50
aWFsUG9saWN5KCkgIT0gRG9Ob3RBc2tDbGllbnRGb3JBbnlDcmVkZW50aWFscykgeworICAgICAg
ICBjaGFsbGVuZ2UuYXV0aGVudGljYXRpb25DbGllbnQoKS0+cmVjZWl2ZWRSZXF1ZXN0VG9Db250
aW51ZVdpdGhvdXRDcmVkZW50aWFsKGNoYWxsZW5nZSk7CisgICAgICAgIHJldHVybjsKKyAgICB9
CisKICAgICBOZXR3b3JrUHJvY2Vzczo6c2hhcmVkKCkuYXV0aGVudGljYXRpb25NYW5hZ2VyKCku
ZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKHdlYlBhZ2VJRCgpLCB3ZWJGcmFtZUlE
KCksIGNoYWxsZW5nZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQ
cm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5oIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1By
b2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmgKaW5kZXggODJlMTU1NS4uZjk5MDY4ZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9h
ZGVyLmgKKysrIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNl
TG9hZGVyLmgKQEAgLTMyLDcgKzMyLDYgQEAKICNpbmNsdWRlICJTY2hlZHVsYWJsZUxvYWRlci5o
IgogI2luY2x1ZGUgIlNoYXJlYWJsZVJlc291cmNlLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9SZXNv
dXJjZUhhbmRsZUNsaWVudC5oPgotI2luY2x1ZGUgPFdlYkNvcmUvUmVzb3VyY2VMb2FkZXJPcHRp
b25zLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9SdW5Mb29wLmg+CiAKIHR5cGVkZWYgY29uc3Qgc3Ry
dWN0IF9DRkNhY2hlZFVSTFJlc3BvbnNlKiBDRkNhY2hlZFVSTFJlc3BvbnNlUmVmOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvU2NoZWR1bGFibGVMb2FkZXIuY3Bw
IGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvU2NoZWR1bGFibGVMb2FkZXIuY3BwCmlu
ZGV4IDU1YjBhOTEuLjlkNDZmNzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQ
cm9jZXNzL1NjaGVkdWxhYmxlTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3Jr
UHJvY2Vzcy9TY2hlZHVsYWJsZUxvYWRlci5jcHAKQEAgLTQ1LDYgKzQ1LDcgQEAgU2NoZWR1bGFi
bGVMb2FkZXI6OlNjaGVkdWxhYmxlTG9hZGVyKGNvbnN0IE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJh
bWV0ZXJzJiBwYXJhbWUKICAgICAsIG1fcHJpb3JpdHkocGFyYW1ldGVycy5wcmlvcml0eSkKICAg
ICAsIG1fY29udGVudFNuaWZmaW5nUG9saWN5KHBhcmFtZXRlcnMuY29udGVudFNuaWZmaW5nUG9s
aWN5KQogICAgICwgbV9hbGxvd1N0b3JlZENyZWRlbnRpYWxzKHBhcmFtZXRlcnMuYWxsb3dTdG9y
ZWRDcmVkZW50aWFscykKKyAgICAsIG1fY2xpZW50Q3JlZGVudGlhbFBvbGljeShwYXJhbWV0ZXJz
LmNsaWVudENyZWRlbnRpYWxQb2xpY3kpCiAgICAgLCBtX2luUHJpdmF0ZUJyb3dzaW5nTW9kZShw
YXJhbWV0ZXJzLmluUHJpdmF0ZUJyb3dzaW5nTW9kZSkKICAgICAsIG1fc2hvdWxkQ2xlYXJSZWZl
cnJlck9uSFRUUFNUb0hUVFBSZWRpcmVjdChwYXJhbWV0ZXJzLnNob3VsZENsZWFyUmVmZXJyZXJP
bkhUVFBTVG9IVFRQUmVkaXJlY3QpCiAgICAgLCBtX2lzTG9hZGluZ01haW5SZXNvdXJjZShwYXJh
bWV0ZXJzLmlzTWFpblJlc291cmNlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvTmV0d29y
a1Byb2Nlc3MvU2NoZWR1bGFibGVMb2FkZXIuaCBiL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9j
ZXNzL1NjaGVkdWxhYmxlTG9hZGVyLmgKaW5kZXggN2IyNDNlMC4uMThlOWZhNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvU2NoZWR1bGFibGVMb2FkZXIuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9TY2hlZHVsYWJsZUxvYWRlci5oCkBAIC01
MSw2ICs1MSw3IEBAIHB1YmxpYzoKICAgICBXZWJDb3JlOjpSZXNvdXJjZUxvYWRQcmlvcml0eSBw
cmlvcml0eSgpIGNvbnN0IHsgcmV0dXJuIG1fcHJpb3JpdHk7IH0KICAgICBXZWJDb3JlOjpDb250
ZW50U25pZmZpbmdQb2xpY3kgY29udGVudFNuaWZmaW5nUG9saWN5KCkgY29uc3QgeyByZXR1cm4g
bV9jb250ZW50U25pZmZpbmdQb2xpY3k7IH0KICAgICBXZWJDb3JlOjpTdG9yZWRDcmVkZW50aWFs
cyBhbGxvd1N0b3JlZENyZWRlbnRpYWxzKCkgY29uc3QgeyByZXR1cm4gbV9hbGxvd1N0b3JlZENy
ZWRlbnRpYWxzOyB9CisgICAgV2ViQ29yZTo6Q2xpZW50Q3JlZGVudGlhbFBvbGljeSBjbGllbnRD
cmVkZW50aWFsUG9saWN5KCkgY29uc3QgeyByZXR1cm4gbV9jbGllbnRDcmVkZW50aWFsUG9saWN5
OyB9CiAgICAgYm9vbCBpblByaXZhdGVCcm93c2luZ01vZGUoKSBjb25zdCB7IHJldHVybiBtX2lu
UHJpdmF0ZUJyb3dzaW5nTW9kZTsgfQogICAgIGJvb2wgaXNMb2FkaW5nTWFpblJlc291cmNlKCkg
Y29uc3QgeyByZXR1cm4gbV9pc0xvYWRpbmdNYWluUmVzb3VyY2U7IH0KIApAQCAtODAsNiArODEs
NyBAQCBwcml2YXRlOgogICAgIFdlYkNvcmU6OlJlc291cmNlTG9hZFByaW9yaXR5IG1fcHJpb3Jp
dHk7CiAgICAgV2ViQ29yZTo6Q29udGVudFNuaWZmaW5nUG9saWN5IG1fY29udGVudFNuaWZmaW5n
UG9saWN5OwogICAgIFdlYkNvcmU6OlN0b3JlZENyZWRlbnRpYWxzIG1fYWxsb3dTdG9yZWRDcmVk
ZW50aWFsczsKKyAgICBXZWJDb3JlOjpDbGllbnRDcmVkZW50aWFsUG9saWN5IG1fY2xpZW50Q3Jl
ZGVudGlhbFBvbGljeTsKICAgICBib29sIG1faW5Qcml2YXRlQnJvd3NpbmdNb2RlOwogICAgIGJv
b2wgbV9zaG91bGRDbGVhclJlZmVycmVyT25IVFRQU1RvSFRUUFJlZGlyZWN0OwogICAgIGJvb2wg
bV9pc0xvYWRpbmdNYWluUmVzb3VyY2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFy
ZWQvTmV0d29yay9OZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvTmV0d29yay9OZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycy5jcHAKaW5k
ZXggZTRhYWQ5OS4uOTQ0MTUzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL05l
dHdvcmsvTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9OZXR3b3JrL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmNwcApAQCAt
OTIsNiArOTIsNyBAQCB2b2lkIE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzOjplbmNvZGUo
Q29yZUlQQzo6QXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyKSBjbwogICAgIGVuY29kZXIuZW5jb2Rl
RW51bShwcmlvcml0eSk7CiAgICAgZW5jb2Rlci5lbmNvZGVFbnVtKGNvbnRlbnRTbmlmZmluZ1Bv
bGljeSk7CiAgICAgZW5jb2Rlci5lbmNvZGVFbnVtKGFsbG93U3RvcmVkQ3JlZGVudGlhbHMpOwor
ICAgIGVuY29kZXIuZW5jb2RlRW51bShjbGllbnRDcmVkZW50aWFsUG9saWN5KTsKICAgICBlbmNv
ZGVyIDw8IGluUHJpdmF0ZUJyb3dzaW5nTW9kZTsKICAgICBlbmNvZGVyIDw8IHNob3VsZENsZWFy
UmVmZXJyZXJPbkhUVFBTVG9IVFRQUmVkaXJlY3Q7CiAgICAgZW5jb2RlciA8PCBpc01haW5SZXNv
dXJjZTsKQEAgLTEzNyw2ICsxMzgsOCBAQCBib29sIE5ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0
ZXJzOjpkZWNvZGUoQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyJiBkZWNvZGVyLCBOZQogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZUVudW0ocmVzdWx0LmFsbG93
U3RvcmVkQ3JlZGVudGlhbHMpKQogICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKCFkZWNv
ZGVyLmRlY29kZUVudW0ocmVzdWx0LmNsaWVudENyZWRlbnRpYWxQb2xpY3kpKQorICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQuaW5Qcml2YXRlQnJv
d3NpbmdNb2RlKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmICghZGVjb2Rlci5kZWNv
ZGUocmVzdWx0LnNob3VsZENsZWFyUmVmZXJyZXJPbkhUVFBTVG9IVFRQUmVkaXJlY3QpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL05ldHdvcmsvTmV0d29ya1Jlc291cmNlTG9h
ZFBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9OZXR3b3JrL05ldHdvcmtSZXNv
dXJjZUxvYWRQYXJhbWV0ZXJzLmgKaW5kZXggZTgzZDJlYy4uZjI2YmIxZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvU2hhcmVkL05ldHdvcmsvTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRl
cnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvTmV0d29yay9OZXR3b3JrUmVzb3VyY2VM
b2FkUGFyYW1ldGVycy5oCkBAIC01OCw2ICs1OCw3IEBAIHB1YmxpYzoKICAgICBXZWJDb3JlOjpS
ZXNvdXJjZUxvYWRQcmlvcml0eSBwcmlvcml0eTsKICAgICBXZWJDb3JlOjpDb250ZW50U25pZmZp
bmdQb2xpY3kgY29udGVudFNuaWZmaW5nUG9saWN5OwogICAgIFdlYkNvcmU6OlN0b3JlZENyZWRl
bnRpYWxzIGFsbG93U3RvcmVkQ3JlZGVudGlhbHM7CisgICAgV2ViQ29yZTo6Q2xpZW50Q3JlZGVu
dGlhbFBvbGljeSBjbGllbnRDcmVkZW50aWFsUG9saWN5OwogICAgIGJvb2wgaW5Qcml2YXRlQnJv
d3NpbmdNb2RlOwogICAgIGJvb2wgc2hvdWxkQ2xlYXJSZWZlcnJlck9uSFRUUFNUb0hUVFBSZWRp
cmVjdDsKICAgICBib29sIGlzTWFpblJlc291cmNlOwo=
</data>
<flag name="review"
          id="221376"
          type_id="1"
          status="+"
          setter="ap"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>200034</attachid>
            <date>2013-04-29 11:37:02 -0700</date>
            <delta_ts>2013-04-29 11:43:46 -0700</delta_ts>
            <desc>Patch v2 - Actually works...</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>35618</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA5ZGJlMzVkLi4zM2FlOTE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjUg
QEAKKzIwMTMtMDQtMjkgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgIFJFR1JFU1NJT046IFdlIHNlZSBhdXRoZW50aWNhdGlvbiBjaGFsbGVuZ2Ugc2hlZXRzIGZv
ciBmYXZpY29uIHJlcXVlc3RzLgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTM3NTM0NzA+IGFu
ZCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE1Mjg4CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIChO
b3QgaW4gYSB0ZXN0ZWQgY29uZmlnLCBtaWdodCBmaXggZXhpc3RpbmcgdGVzdCkuCisKKyAgICAg
ICAgUmVuYW1lIENsaWVudENyb3NzT3JpZ2luQ3JlZGVudGlhbFBvbGljeSB0byBDbGllbnRDcmVk
ZW50aWFsUG9saWN5LCBtYWtlIGl0IGJlIHRocmVlIG9wdGlvbnMuCisgICAgICAgIGFuZCBtb3Zl
IGl0IHRvIFJlc291cmNlSGFuZGxlVHlwZXMgd2hlcmUgaXQgYmVsb25nczoKKyAgICAgICAgKiBs
b2FkZXIvUmVzb3VyY2VMb2FkZXJPcHRpb25zLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29y
ay9SZXNvdXJjZUhhbmRsZVR5cGVzLmg6CisKKyAgICAgICAgRXhwb3NlIHRoZSBDbGllbnRDcmVk
ZW50aWFsUG9saWN5IHRoZSBSZXNvdXJjZUxvYWRlciB3YXMgY3JlYXRlZCB3aXRoOgorICAgICAg
ICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlci5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VM
b2FkZXI6OmNsaWVudENyZWRlbnRpYWxQb2xpY3kpOgorCisgICAgICAgIFJld29yayB0aGUg4oCc
c2hvdWxkIGFzayBjbGllbnTigJ0gY2xhdXNlIGZvciB0aGUgbmV3IHZhbHVlcyBvZiBDbGllbnRD
cmVkZW50aWFsUG9saWN5OgorICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWRlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9u
Q2hhbGxlbmdlKToKKworICAgICAgICBSZXdvcmsgbG9hZFJlc291cmNlU3luY2hyb25vdXNseSgp
IHRvIGluY2x1ZGUgYSBDbGllbnRDcmVkZW50aWFsUG9saWN5IGFyZ3VtZW50OgorICAgICAgICAq
IGxvYWRlci9GcmFtZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6
bG9hZFJlc291cmNlU3luY2hyb25vdXNseSk6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVy
Lmg6CisgICAgICAgICogbG9hZGVyL0xvYWRlclN0cmF0ZWd5LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkxvYWRlclN0cmF0ZWd5Ojpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KToKKyAgICAgICAg
KiBsb2FkZXIvTG9hZGVyU3RyYXRlZ3kuaDoKKworICAgICAgICBOZXZlciBhc2sgdGhlIGNsaWVu
dCBmb3IgY3JlZGVudGlhbHMgZm9yIGljb24gbG9hZHM6CisgICAgICAgICogbG9hZGVyL2ljb24v
SWNvbkxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJY29uTG9hZGVyOjpzdGFydExvYWRp
bmcpOgorCisgICAgICAgIFVwZGF0ZSBhbGwgb3RoZXIgdXNlcnMgb2YgQ2xpZW50Q3JlZGVudGlh
bFBvbGljeSB0byB0aGUgYXBwcm9wcmlhdGUgbmV3IHZhbHVlLAorICAgICAgICBhbmQgdXBkYXRl
IGFsbCB1c2VycyBvZiBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5IHRvIHRoZSBuZXcgZnVuY3Rp
b24gc2lnbmF0dXJlOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3Qu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRnJvbnRlbmRIb3N0Ojpsb2FkUmVzb3Vy
Y2VTeW5jaHJvbm91c2x5KToKKyAgICAgICAgKiBsb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OnN0YXJ0TG9hZGluZ01haW5SZXNvdXJj
ZSk6CisgICAgICAgICogbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmxvYWRSZXF1ZXN0KToKKyAg
ICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVM
b2FkZXI6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkpOgorICAgICAgICAqIGxvYWRlci9GcmFt
ZUxvYWRlci5oOgorICAgICAgICAoRnJhbWVMb2FkZXIpOgorICAgICAgICAqIGxvYWRlci9Mb2Fk
ZXJTdHJhdGVneS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpMb2FkZXJTdHJhdGVneTo6bG9hZFJl
c291cmNlU3luY2hyb25vdXNseSk6CisgICAgICAgICogbG9hZGVyL0xvYWRlclN0cmF0ZWd5Lmg6
CisgICAgICAgIChMb2FkZXJTdHJhdGVneSk6CisgICAgICAgICogbG9hZGVyL05ldHNjYXBlUGx1
Z0luU3RyZWFtTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHNjYXBlUGx1Z0luU3Ry
ZWFtTG9hZGVyOjpOZXRzY2FwZVBsdWdJblN0cmVhbUxvYWRlcik6CisgICAgICAgICogbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hl
ZFJlc291cmNlTG9hZGVyOjpyZXF1ZXN0VXNlckNTU1N0eWxlU2hlZXQpOgorICAgICAgICAoV2Vi
Q29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OmRlZmF1bHRDYWNoZWRSZXNvdXJjZU9wdGlvbnMp
OgorICAgICAgICAqIHhtbC9YU0xUUHJvY2Vzc29yTGlieHNsdC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpkb2NMb2FkZXJGdW5jKToKKyAgICAgICAgKiB4bWwvcGFyc2VyL1hNTERvY3VtZW50UGFy
c2VyTGlieG1sMi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpvcGVuRnVuYyk6CisKKyAgICAgICAg
KiBXZWJDb3JlLmV4cC5pbjoKKwogMjAxMy0wNC0yOSAgUGF0cmljayBHYW5zdGVyZXIgIDxwYXJv
Z2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBbV0lOXSBBZGQgV1RGX1VTRV9JTUxBTkdfRk9OVF9M
SU5LMgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4gYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCBkYTk0YzQ4Li45YmE0MWNhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLmV4cC5pbgpAQCAtMzI3LDcgKzMyNyw3IEBAIF9fWk43V2ViQ29yZTE0RnJhbWVTZWxlY3Rp
b242bW9kaWZ5RU5TMF8xMUVBbHRlcmF0aW9uRU5TXzE4U2VsZWN0aW9uRGlyZWN0aW9uRU5TCiBf
X1pON1dlYkNvcmUxNEZyYW1lU2VsZWN0aW9uOXNlbGVjdEFsbEV2CiBfX1pON1dlYkNvcmUxNEZy
YW1lU2VsZWN0aW9uQzFFUE5TXzVGcmFtZUUKIF9fWk43V2ViQ29yZTE0TG9hZGVyU3RyYXRlZ3ky
MXJlc291cmNlTG9hZFNjaGVkdWxlckV2Ci1fX1pON1dlYkNvcmUxNExvYWRlclN0cmF0ZWd5MjVs
b2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5RVBOU18xN05ldHdvcmtpbmdDb250ZXh0RW1SS05TXzE1
UmVzb3VyY2VSZXF1ZXN0RU5TXzE3U3RvcmVkQ3JlZGVudGlhbHNFUk5TXzEzUmVzb3VyY2VFcnJv
ckVSTlNfMTZSZXNvdXJjZVJlc3BvbnNlRVJOM1dURjZWZWN0b3JJY0xtMEVOU0JfMTVDcmFzaE9u
T3ZlcmZsb3dFRUUKK19fWk43V2ViQ29yZTE0TG9hZGVyU3RyYXRlZ3kyNWxvYWRSZXNvdXJjZVN5
bmNocm9ub3VzbHlFUE5TXzE3TmV0d29ya2luZ0NvbnRleHRFbVJLTlNfMTVSZXNvdXJjZVJlcXVl
c3RFTlNfMTdTdG9yZWRDcmVkZW50aWFsc0VOU18yMkNsaWVudENyZWRlbnRpYWxQb2xpY3lFUk5T
XzEzUmVzb3VyY2VFcnJvckVSTlNfMTZSZXNvdXJjZVJlc3BvbnNlRVJOM1dURjZWZWN0b3JJY0xt
MEVOU0NfMTVDcmFzaE9uT3ZlcmZsb3dFRUUKIF9fWk43V2ViQ29yZTE0UGx1Z2luRG9jdW1lbnQx
MHBsdWdpbk5vZGVFdgogX19aTks3V2ViQ29yZTVGcmFtZTI1dHJhY2tlZFJlcGFpbnRSZWN0c0Fz
VGV4dEV2CiBfX1pON1dlYkNvcmU5RnJhbWVWaWV3MTNzZXROb2RlVG9EcmF3RVBOU180Tm9kZUUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhv
c3QuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5j
cHAKaW5kZXggNmVkN2E4OC4uMTdiOTEzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5jcHAKQEAgLTI4Niw3ICsyODYsNyBAQCBTdHJp
bmcgSW5zcGVjdG9yRnJvbnRlbmRIb3N0Ojpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KGNvbnN0
IFN0cmluZyYgdXJsKQogICAgIFZlY3RvcjxjaGFyPiBkYXRhOwogICAgIFJlc291cmNlRXJyb3Ig
ZXJyb3I7CiAgICAgUmVzb3VyY2VSZXNwb25zZSByZXNwb25zZTsKLSAgICBtX2Zyb250ZW5kUGFn
ZS0+bWFpbkZyYW1lKCktPmxvYWRlcigpLT5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KHJlcXVl
c3QsIERvTm90QWxsb3dTdG9yZWRDcmVkZW50aWFscywgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKTsK
KyAgICBtX2Zyb250ZW5kUGFnZS0+bWFpbkZyYW1lKCktPmxvYWRlcigpLT5sb2FkUmVzb3VyY2VT
eW5jaHJvbm91c2x5KHJlcXVlc3QsIERvTm90QWxsb3dTdG9yZWRDcmVkZW50aWFscywgRG9Ob3RB
c2tDbGllbnRGb3JDcm9zc09yaWdpbkNyZWRlbnRpYWxzLCBlcnJvciwgcmVzcG9uc2UsIGRhdGEp
OwogICAgIHJldHVybiBTdHJpbmcoZGF0YS5kYXRhKCksIGRhdGEuc2l6ZSgpKTsKIH0KIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKaW5kZXggMDFhYmE2OS4uMzEyNGQz
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCkBAIC0xMzY0LDcg
KzEzNjQsNyBAQCB2b2lkIERvY3VtZW50TG9hZGVyOjpzdGFydExvYWRpbmdNYWluUmVzb3VyY2Uo
KQogCiAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QobV9yZXF1ZXN0KTsKICAgICBERUZJTkVf
U1RBVElDX0xPQ0FMKFJlc291cmNlTG9hZGVyT3B0aW9ucywgbWFpblJlc291cmNlTG9hZE9wdGlv
bnMsCi0gICAgICAgIChTZW5kQ2FsbGJhY2tzLCBTbmlmZkNvbnRlbnQsIEJ1ZmZlckRhdGEsIEFs
bG93U3RvcmVkQ3JlZGVudGlhbHMsIEFza0NsaWVudEZvckNyb3NzT3JpZ2luQ3JlZGVudGlhbHMs
IFNraXBTZWN1cml0eUNoZWNrKSk7CisgICAgICAgIChTZW5kQ2FsbGJhY2tzLCBTbmlmZkNvbnRl
bnQsIEJ1ZmZlckRhdGEsIEFsbG93U3RvcmVkQ3JlZGVudGlhbHMsIEFza0NsaWVudEZvckFsbENy
ZWRlbnRpYWxzLCBTa2lwU2VjdXJpdHlDaGVjaykpOwogICAgIENhY2hlZFJlc291cmNlUmVxdWVz
dCBjYWNoZWRSZXNvdXJjZVJlcXVlc3QocmVxdWVzdCwgbWFpblJlc291cmNlTG9hZE9wdGlvbnMp
OwogICAgIG1fbWFpblJlc291cmNlID0gbV9jYWNoZWRSZXNvdXJjZUxvYWRlci0+cmVxdWVzdE1h
aW5SZXNvdXJjZShjYWNoZWRSZXNvdXJjZVJlcXVlc3QpOwogICAgIGlmICghbV9tYWluUmVzb3Vy
Y2UpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRocmVhZGFi
bGVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxv
YWRlci5jcHAKaW5kZXggOWI1ZjAwZi4uYzc2YzMyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKQEAgLTM2OCw3ICszNjgsNyBA
QCB2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6bG9hZFJlcXVlc3QoY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0LCBTZWN1cgogCiAgICAgaWYgKG1fYXN5bmMpIHsKICAgICAgICAg
VGhyZWFkYWJsZUxvYWRlck9wdGlvbnMgb3B0aW9ucyA9IG1fb3B0aW9uczsKLSAgICAgICAgb3B0
aW9ucy5jcm9zc09yaWdpbkNyZWRlbnRpYWxQb2xpY3kgPSBEb05vdEFza0NsaWVudEZvckNyb3Nz
T3JpZ2luQ3JlZGVudGlhbHM7CisgICAgICAgIG9wdGlvbnMuY2xpZW50Q3JlZGVudGlhbFBvbGlj
eSA9IERvTm90QXNrQ2xpZW50Rm9yQ3Jvc3NPcmlnaW5DcmVkZW50aWFsczsKICAgICAgICAgaWYg
KG1fYWN0dWFsUmVxdWVzdCkgewogICAgICAgICAgICAgLy8gRG9uJ3Qgc25pZmYgY29udGVudCBv
ciBzZW5kIGxvYWQgY2FsbGJhY2tzIGZvciB0aGUgcHJlZmxpZ2h0IHJlcXVlc3QuCiAgICAgICAg
ICAgICBvcHRpb25zLnNlbmRMb2FkQ2FsbGJhY2tzID0gRG9Ob3RTZW5kQ2FsbGJhY2tzOwpAQCAt
NDAxLDcgKzQwMSw3IEBAIHZvaWQgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpsb2FkUmVxdWVz
dChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFNlY3VyCiAgICAgUmVzb3VyY2VSZXNw
b25zZSByZXNwb25zZTsKICAgICB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIgPSBzdGQ6Om51bWVy
aWNfbGltaXRzPHVuc2lnbmVkIGxvbmc+OjptYXgoKTsKICAgICBpZiAobV9kb2N1bWVudC0+ZnJh
bWUoKSkKLSAgICAgICAgaWRlbnRpZmllciA9IG1fZG9jdW1lbnQtPmZyYW1lKCktPmxvYWRlcigp
LT5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KHJlcXVlc3QsIG1fb3B0aW9ucy5hbGxvd0NyZWRl
bnRpYWxzLCBlcnJvciwgcmVzcG9uc2UsIGRhdGEpOworICAgICAgICBpZGVudGlmaWVyID0gbV9k
b2N1bWVudC0+ZnJhbWUoKS0+bG9hZGVyKCktPmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkocmVx
dWVzdCwgbV9vcHRpb25zLmFsbG93Q3JlZGVudGlhbHMsIG1fb3B0aW9ucy5jbGllbnRDcmVkZW50
aWFsUG9saWN5LCBlcnJvciwgcmVzcG9uc2UsIGRhdGEpOwogCiAgICAgSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjpkb2N1bWVudFRocmVhZGFibGVMb2FkZXJTdGFydGVkTG9hZGluZ0ZvckNsaWVu
dChtX2RvY3VtZW50LCBpZGVudGlmaWVyLCBtX2NsaWVudCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RnJhbWVMb2FkZXIuY3BwCmluZGV4IDZhYTkzMTkuLjcwM2JjZGIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0ZyYW1lTG9hZGVyLmNwcApAQCAtMjU1Myw3ICsyNTUzLDcgQEAgdm9pZCBGcmFtZUxvYWRl
cjo6bG9hZFBvc3RSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgaW5SZXF1ZXN0LCBjb25z
dCBTdHJpbmcKICAgICB9CiB9CiAKLXVuc2lnbmVkIGxvbmcgRnJhbWVMb2FkZXI6OmxvYWRSZXNv
dXJjZVN5bmNocm9ub3VzbHkoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBTdG9yZWRD
cmVkZW50aWFscyBzdG9yZWRDcmVkZW50aWFscywgUmVzb3VyY2VFcnJvciYgZXJyb3IsIFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBWZWN0b3I8Y2hhcj4mIGRhdGEpCit1bnNpZ25lZCBsb25n
IEZyYW1lTG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCwgU3RvcmVkQ3JlZGVudGlhbHMgc3RvcmVkQ3JlZGVudGlhbHMsIENsaWVu
dENyZWRlbnRpYWxQb2xpY3kgY2xpZW50Q3JlZGVudGlhbFBvbGljeSwgUmVzb3VyY2VFcnJvciYg
ZXJyb3IsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBWZWN0b3I8Y2hhcj4mIGRhdGEpCiB7
CiAgICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCkpOwogICAgIFN0cmluZyByZWZlcnJlciA9
IFNlY3VyaXR5UG9saWN5OjpnZW5lcmF0ZVJlZmVycmVySGVhZGVyKG1fZnJhbWUtPmRvY3VtZW50
KCktPnJlZmVycmVyUG9saWN5KCksIHJlcXVlc3QudXJsKCksIG91dGdvaW5nUmVmZXJyZXIoKSk7
CkBAIC0yNTc5LDcgKzI1NzksNyBAQCB1bnNpZ25lZCBsb25nIEZyYW1lTG9hZGVyOjpsb2FkUmVz
b3VyY2VTeW5jaHJvbm91c2x5KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdQogICAgICAgICAK
ICAgICAgICAgaWYgKCFkb2N1bWVudExvYWRlcigpLT5hcHBsaWNhdGlvbkNhY2hlSG9zdCgpLT5t
YXliZUxvYWRTeW5jaHJvbm91c2x5KG5ld1JlcXVlc3QsIGVycm9yLCByZXNwb25zZSwgZGF0YSkp
IHsKICNpZiBVU0UoUExBVEZPUk1fU1RSQVRFR0lFUykKLSAgICAgICAgICAgIHBsYXRmb3JtU3Ry
YXRlZ2llcygpLT5sb2FkZXJTdHJhdGVneSgpLT5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KG5l
dHdvcmtpbmdDb250ZXh0KCksIGlkZW50aWZpZXIsIG5ld1JlcXVlc3QsIHN0b3JlZENyZWRlbnRp
YWxzLCBlcnJvciwgcmVzcG9uc2UsIGRhdGEpOworICAgICAgICAgICAgcGxhdGZvcm1TdHJhdGVn
aWVzKCktPmxvYWRlclN0cmF0ZWd5KCktPmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkobmV0d29y
a2luZ0NvbnRleHQoKSwgaWRlbnRpZmllciwgbmV3UmVxdWVzdCwgc3RvcmVkQ3JlZGVudGlhbHMs
IGNsaWVudENyZWRlbnRpYWxQb2xpY3ksIGVycm9yLCByZXNwb25zZSwgZGF0YSk7CiAjZWxzZQog
ICAgICAgICAgICAgUmVzb3VyY2VIYW5kbGU6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkobmV0
d29ya2luZ0NvbnRleHQoKSwgbmV3UmVxdWVzdCwgc3RvcmVkQ3JlZGVudGlhbHMsIGVycm9yLCBy
ZXNwb25zZSwgZGF0YSk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9GcmFtZUxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmgKaW5k
ZXggOTE2NWZhYy4uN2FkYzdlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zy
YW1lTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmgKQEAg
LTExMCw3ICsxMTAsNyBAQCBwdWJsaWM6CiAjaWYgRU5BQkxFKFdFQl9BUkNISVZFKSB8fCBFTkFC
TEUoTUhUTUwpCiAgICAgdm9pZCBsb2FkQXJjaGl2ZShQYXNzUmVmUHRyPEFyY2hpdmU+KTsKICNl
bmRpZgotICAgIHVuc2lnbmVkIGxvbmcgbG9hZFJlc291cmNlU3luY2hyb25vdXNseShjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmLCBTdG9yZWRDcmVkZW50aWFscywgUmVzb3VyY2VFcnJvciYsIFJlc291
cmNlUmVzcG9uc2UmLCBWZWN0b3I8Y2hhcj4mIGRhdGEpOworICAgIHVuc2lnbmVkIGxvbmcgbG9h
ZFJlc291cmNlU3luY2hyb25vdXNseShjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBTdG9yZWRDcmVk
ZW50aWFscywgQ2xpZW50Q3JlZGVudGlhbFBvbGljeSwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNl
UmVzcG9uc2UmLCBWZWN0b3I8Y2hhcj4mIGRhdGEpOwogCiAgICAgdm9pZCBjaGFuZ2VMb2NhdGlv
bihTZWN1cml0eU9yaWdpbiosIGNvbnN0IEtVUkwmLCBjb25zdCBTdHJpbmcmIHJlZmVycmVyLCBi
b29sIGxvY2tIaXN0b3J5ID0gdHJ1ZSwgYm9vbCBsb2NrQmFja0ZvcndhcmRMaXN0ID0gdHJ1ZSwg
Ym9vbCByZWZyZXNoID0gZmFsc2UpOwogICAgIHZvaWQgdXJsU2VsZWN0ZWQoY29uc3QgS1VSTCYs
IGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBQYXNzUmVmUHRyPEV2ZW50PiwgYm9vbCBsb2NrSGlzdG9y
eSwgYm9vbCBsb2NrQmFja0ZvcndhcmRMaXN0LCBTaG91bGRTZW5kUmVmZXJyZXIpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0xvYWRlclN0cmF0ZWd5LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9Mb2FkZXJTdHJhdGVneS5jcHAKaW5kZXggZmQwMmMxNy4uYzMzNzk0MCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0xvYWRlclN0cmF0ZWd5LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTG9hZGVyU3RyYXRlZ3kuY3BwCkBAIC0zOSw3ICszOSw3
IEBAIFJlc291cmNlTG9hZFNjaGVkdWxlciogTG9hZGVyU3RyYXRlZ3k6OnJlc291cmNlTG9hZFNj
aGVkdWxlcigpCiAgICAgcmV0dXJuIFdlYkNvcmU6OnJlc291cmNlTG9hZFNjaGVkdWxlcigpOwog
fQogCi12b2lkIExvYWRlclN0cmF0ZWd5Ojpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KE5ldHdv
cmtpbmdDb250ZXh0KiBjb250ZXh0LCB1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZVJlcXVl
c3QmIHJlcXVlc3QsIFN0b3JlZENyZWRlbnRpYWxzIHN0b3JlZENyZWRlbnRpYWxzLCBSZXNvdXJj
ZUVycm9yJiBlcnJvciwgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFZlY3RvcjxjaGFyPiYg
ZGF0YSkKK3ZvaWQgTG9hZGVyU3RyYXRlZ3k6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoTmV0
d29ya2luZ0NvbnRleHQqIGNvbnRleHQsIHVuc2lnbmVkIGxvbmcsIGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCwgU3RvcmVkQ3JlZGVudGlhbHMgc3RvcmVkQ3JlZGVudGlhbHMsIENsaWVu
dENyZWRlbnRpYWxQb2xpY3ksIFJlc291cmNlRXJyb3ImIGVycm9yLCBSZXNvdXJjZVJlc3BvbnNl
JiByZXNwb25zZSwgVmVjdG9yPGNoYXI+JiBkYXRhKQogewogICAgIFJlc291cmNlSGFuZGxlOjps
b2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KGNvbnRleHQsIHJlcXVlc3QsIHN0b3JlZENyZWRlbnRp
YWxzLCBlcnJvciwgcmVzcG9uc2UsIGRhdGEpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0xvYWRlclN0cmF0ZWd5LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTG9hZGVy
U3RyYXRlZ3kuaAppbmRleCAyMDg5MTc3Li5jYTU5NGM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvTG9hZGVyU3RyYXRlZ3kuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
TG9hZGVyU3RyYXRlZ3kuaApAQCAtNDQsNyArNDQsNyBAQCBjbGFzcyBMb2FkZXJTdHJhdGVneSB7
CiBwdWJsaWM6CiAgICAgdmlydHVhbCBSZXNvdXJjZUxvYWRTY2hlZHVsZXIqIHJlc291cmNlTG9h
ZFNjaGVkdWxlcigpOwogCi0gICAgdmlydHVhbCB2b2lkIGxvYWRSZXNvdXJjZVN5bmNocm9ub3Vz
bHkoTmV0d29ya2luZ0NvbnRleHQqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFJl
c291cmNlUmVxdWVzdCYsIFN0b3JlZENyZWRlbnRpYWxzLCBSZXNvdXJjZUVycm9yJiwgUmVzb3Vy
Y2VSZXNwb25zZSYsIFZlY3RvcjxjaGFyPiYgZGF0YSk7CisgICAgdmlydHVhbCB2b2lkIGxvYWRS
ZXNvdXJjZVN5bmNocm9ub3VzbHkoTmV0d29ya2luZ0NvbnRleHQqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIFN0b3JlZENyZWRlbnRpYWxzLCBDbGll
bnRDcmVkZW50aWFsUG9saWN5LCBSZXNvdXJjZUVycm9yJiwgUmVzb3VyY2VSZXNwb25zZSYsIFZl
Y3RvcjxjaGFyPiYgZGF0YSk7CiAKICNpZiBFTkFCTEUoQkxPQikKICAgICB2aXJ0dWFsIEJsb2JS
ZWdpc3RyeSogY3JlYXRlQmxvYlJlZ2lzdHJ5KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvTmV0c2NhcGVQbHVnSW5TdHJlYW1Mb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL05ldHNjYXBlUGx1Z0luU3RyZWFtTG9hZGVyLmNwcAppbmRleCA3ZGRjMWE2Li5hNzhl
ODA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmV0c2NhcGVQbHVnSW5TdHJl
YW1Mb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OZXRzY2FwZVBsdWdJblN0
cmVhbUxvYWRlci5jcHAKQEAgLTM2LDcgKzM2LDcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
TmV0c2NhcGVQbHVnSW5TdHJlYW1Mb2FkZXI6Ok5ldHNjYXBlUGx1Z0luU3RyZWFtTG9hZGVyKEZy
YW1lKiBmcmFtZSwgTmV0c2NhcGVQbHVnSW5TdHJlYW1Mb2FkZXJDbGllbnQqIGNsaWVudCkKLSAg
ICA6IFJlc291cmNlTG9hZGVyKGZyYW1lLCBSZXNvdXJjZUxvYWRlck9wdGlvbnMoU2VuZENhbGxi
YWNrcywgU25pZmZDb250ZW50LCBEb05vdEJ1ZmZlckRhdGEsIEFsbG93U3RvcmVkQ3JlZGVudGlh
bHMsIEFza0NsaWVudEZvckNyb3NzT3JpZ2luQ3JlZGVudGlhbHMsIFNraXBTZWN1cml0eUNoZWNr
KSkKKyAgICA6IFJlc291cmNlTG9hZGVyKGZyYW1lLCBSZXNvdXJjZUxvYWRlck9wdGlvbnMoU2Vu
ZENhbGxiYWNrcywgU25pZmZDb250ZW50LCBEb05vdEJ1ZmZlckRhdGEsIEFsbG93U3RvcmVkQ3Jl
ZGVudGlhbHMsIEFza0NsaWVudEZvckFsbENyZWRlbnRpYWxzLCBTa2lwU2VjdXJpdHlDaGVjaykp
CiAgICAgLCBtX2NsaWVudChjbGllbnQpCiB7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291
cmNlTG9hZGVyLmNwcAppbmRleCBiNDRmOGRmLi5lOWVjNjliIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9SZXNvdXJjZUxvYWRlci5jcHAKQEAgLTUzNSw3ICs1MzUsNyBAQCB2b2lkIFJlc291cmNl
TG9hZGVyOjpkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoY29uc3QgQXV0aGVudGlj
YXRpb25DaGFsbAogICAgIFJlZlB0cjxSZXNvdXJjZUxvYWRlcj4gcHJvdGVjdG9yKHRoaXMpOwog
CiAgICAgaWYgKG1fb3B0aW9ucy5hbGxvd0NyZWRlbnRpYWxzID09IEFsbG93U3RvcmVkQ3JlZGVu
dGlhbHMpIHsKLSAgICAgICAgaWYgKG1fb3B0aW9ucy5jcm9zc09yaWdpbkNyZWRlbnRpYWxQb2xp
Y3kgPT0gQXNrQ2xpZW50Rm9yQ3Jvc3NPcmlnaW5DcmVkZW50aWFscyB8fCBtX2ZyYW1lLT5kb2N1
bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5SZXF1ZXN0KG9yaWdpbmFsUmVxdWVzdCgpLnVy
bCgpKSkgeworICAgICAgICBpZiAobV9vcHRpb25zLmNsaWVudENyZWRlbnRpYWxQb2xpY3kgPT0g
QXNrQ2xpZW50Rm9yQWxsQ3JlZGVudGlhbHMgfHwgKG1fb3B0aW9ucy5jbGllbnRDcmVkZW50aWFs
UG9saWN5ID09IERvTm90QXNrQ2xpZW50Rm9yQ3Jvc3NPcmlnaW5DcmVkZW50aWFscyAmJiBtX2Zy
YW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5SZXF1ZXN0KG9yaWdpbmFsUmVx
dWVzdCgpLnVybCgpKSkpIHsKICAgICAgICAgICAgIGZyYW1lTG9hZGVyKCktPm5vdGlmaWVyKCkt
PmRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSh0aGlzLCBjaGFsbGVuZ2UpOwogICAg
ICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvUmVzb3VyY2VMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxv
YWRlci5oCmluZGV4IDM2ZGEwNWUuLjg2Y2RiNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9SZXNvdXJjZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNv
dXJjZUxvYWRlci5oCkBAIC0xMzcsNiArMTM3LDcgQEAgcHVibGljOgogICAgIGJvb2wgc2hvdWxk
U2VuZFJlc291cmNlTG9hZENhbGxiYWNrcygpIGNvbnN0IHsgcmV0dXJuIG1fb3B0aW9ucy5zZW5k
TG9hZENhbGxiYWNrcyA9PSBTZW5kQ2FsbGJhY2tzOyB9CiAgICAgdm9pZCBzZXRTZW5kQ2FsbGJh
Y2tQb2xpY3koU2VuZENhbGxiYWNrUG9saWN5IHNlbmRMb2FkQ2FsbGJhY2tzKSB7IG1fb3B0aW9u
cy5zZW5kTG9hZENhbGxiYWNrcyA9IHNlbmRMb2FkQ2FsbGJhY2tzOyB9CiAgICAgYm9vbCBzaG91
bGRTbmlmZkNvbnRlbnQoKSBjb25zdCB7IHJldHVybiBtX29wdGlvbnMuc25pZmZDb250ZW50ID09
IFNuaWZmQ29udGVudDsgfQorICAgIENsaWVudENyZWRlbnRpYWxQb2xpY3kgY2xpZW50Q3JlZGVu
dGlhbFBvbGljeSgpIGNvbnN0IHsgcmV0dXJuIG1fb3B0aW9ucy5jbGllbnRDcmVkZW50aWFsUG9s
aWN5OyB9CiAKICAgICBib29sIHJlYWNoZWRUZXJtaW5hbFN0YXRlKCkgY29uc3QgeyByZXR1cm4g
bV9yZWFjaGVkVGVybWluYWxTdGF0ZTsgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvUmVzb3VyY2VMb2FkZXJPcHRpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVz
b3VyY2VMb2FkZXJPcHRpb25zLmgKaW5kZXggNThkNjFiYi4uZDFiOTA3YiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZGVyT3B0aW9ucy5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWRlck9wdGlvbnMuaApAQCAtNTAsMjQgKzUwLDE5
IEBAIGVudW0gRGF0YUJ1ZmZlcmluZ1BvbGljeSB7CiAgICAgRG9Ob3RCdWZmZXJEYXRhCiB9Owog
Ci1lbnVtIENsaWVudENyb3NzT3JpZ2luQ3JlZGVudGlhbFBvbGljeSB7Ci0gICAgQXNrQ2xpZW50
Rm9yQ3Jvc3NPcmlnaW5DcmVkZW50aWFscywKLSAgICBEb05vdEFza0NsaWVudEZvckNyb3NzT3Jp
Z2luQ3JlZGVudGlhbHMKLX07Ci0KIGVudW0gU2VjdXJpdHlDaGVja1BvbGljeSB7CiAgICAgU2tp
cFNlY3VyaXR5Q2hlY2ssCiAgICAgRG9TZWN1cml0eUNoZWNrCiB9OwogCiBzdHJ1Y3QgUmVzb3Vy
Y2VMb2FkZXJPcHRpb25zIHsKLSAgICBSZXNvdXJjZUxvYWRlck9wdGlvbnMoKSA6IHNlbmRMb2Fk
Q2FsbGJhY2tzKERvTm90U2VuZENhbGxiYWNrcyksIHNuaWZmQ29udGVudChEb05vdFNuaWZmQ29u
dGVudCksIGRhdGFCdWZmZXJpbmdQb2xpY3koQnVmZmVyRGF0YSksIGFsbG93Q3JlZGVudGlhbHMo
RG9Ob3RBbGxvd1N0b3JlZENyZWRlbnRpYWxzKSwgY3Jvc3NPcmlnaW5DcmVkZW50aWFsUG9saWN5
KERvTm90QXNrQ2xpZW50Rm9yQ3Jvc3NPcmlnaW5DcmVkZW50aWFscyksIHNlY3VyaXR5Q2hlY2so
RG9TZWN1cml0eUNoZWNrKSB7IH0KLSAgICBSZXNvdXJjZUxvYWRlck9wdGlvbnMoU2VuZENhbGxi
YWNrUG9saWN5IHNlbmRMb2FkQ2FsbGJhY2tzLCBDb250ZW50U25pZmZpbmdQb2xpY3kgc25pZmZD
b250ZW50LCBEYXRhQnVmZmVyaW5nUG9saWN5IGRhdGFCdWZmZXJpbmdQb2xpY3ksIFN0b3JlZENy
ZWRlbnRpYWxzIGFsbG93Q3JlZGVudGlhbHMsIENsaWVudENyb3NzT3JpZ2luQ3JlZGVudGlhbFBv
bGljeSBjcm9zc09yaWdpbkNyZWRlbnRpYWxQb2xpY3ksIFNlY3VyaXR5Q2hlY2tQb2xpY3kgc2Vj
dXJpdHlDaGVjaykKKyAgICBSZXNvdXJjZUxvYWRlck9wdGlvbnMoKSA6IHNlbmRMb2FkQ2FsbGJh
Y2tzKERvTm90U2VuZENhbGxiYWNrcyksIHNuaWZmQ29udGVudChEb05vdFNuaWZmQ29udGVudCks
IGRhdGFCdWZmZXJpbmdQb2xpY3koQnVmZmVyRGF0YSksIGFsbG93Q3JlZGVudGlhbHMoRG9Ob3RB
bGxvd1N0b3JlZENyZWRlbnRpYWxzKSwgY2xpZW50Q3JlZGVudGlhbFBvbGljeShEb05vdEFza0Ns
aWVudEZvckFueUNyZWRlbnRpYWxzKSwgc2VjdXJpdHlDaGVjayhEb1NlY3VyaXR5Q2hlY2spIHsg
fQorICAgIFJlc291cmNlTG9hZGVyT3B0aW9ucyhTZW5kQ2FsbGJhY2tQb2xpY3kgc2VuZExvYWRD
YWxsYmFja3MsIENvbnRlbnRTbmlmZmluZ1BvbGljeSBzbmlmZkNvbnRlbnQsIERhdGFCdWZmZXJp
bmdQb2xpY3kgZGF0YUJ1ZmZlcmluZ1BvbGljeSwgU3RvcmVkQ3JlZGVudGlhbHMgYWxsb3dDcmVk
ZW50aWFscywgQ2xpZW50Q3JlZGVudGlhbFBvbGljeSBjcmVkZW50aWFsUG9saWN5LCBTZWN1cml0
eUNoZWNrUG9saWN5IHNlY3VyaXR5Q2hlY2spCiAgICAgICAgIDogc2VuZExvYWRDYWxsYmFja3Mo
c2VuZExvYWRDYWxsYmFja3MpCiAgICAgICAgICwgc25pZmZDb250ZW50KHNuaWZmQ29udGVudCkK
ICAgICAgICAgLCBkYXRhQnVmZmVyaW5nUG9saWN5KGRhdGFCdWZmZXJpbmdQb2xpY3kpCiAgICAg
ICAgICwgYWxsb3dDcmVkZW50aWFscyhhbGxvd0NyZWRlbnRpYWxzKQotICAgICAgICAsIGNyb3Nz
T3JpZ2luQ3JlZGVudGlhbFBvbGljeShjcm9zc09yaWdpbkNyZWRlbnRpYWxQb2xpY3kpCisgICAg
ICAgICwgY2xpZW50Q3JlZGVudGlhbFBvbGljeShjcmVkZW50aWFsUG9saWN5KQogICAgICAgICAs
IHNlY3VyaXR5Q2hlY2soc2VjdXJpdHlDaGVjaykKICAgICB7CiAgICAgfQpAQCAtNzUsNyArNzAs
NyBAQCBzdHJ1Y3QgUmVzb3VyY2VMb2FkZXJPcHRpb25zIHsKICAgICBDb250ZW50U25pZmZpbmdQ
b2xpY3kgc25pZmZDb250ZW50OwogICAgIERhdGFCdWZmZXJpbmdQb2xpY3kgZGF0YUJ1ZmZlcmlu
Z1BvbGljeTsKICAgICBTdG9yZWRDcmVkZW50aWFscyBhbGxvd0NyZWRlbnRpYWxzOyAvLyBXaGV0
aGVyIEhUVFAgY3JlZGVudGlhbHMgYW5kIGNvb2tpZXMgYXJlIHNlbnQgd2l0aCB0aGUgcmVxdWVz
dC4KLSAgICBDbGllbnRDcm9zc09yaWdpbkNyZWRlbnRpYWxQb2xpY3kgY3Jvc3NPcmlnaW5DcmVk
ZW50aWFsUG9saWN5OyAvLyBXaGV0aGVyIHdlIHdpbGwgYXNrIHRoZSBjbGllbnQgZm9yIGNyZWRl
bnRpYWxzIChpZiB3ZSBhbGxvdyBjcmVkZW50aWFscyBhdCBhbGwpLgorICAgIENsaWVudENyZWRl
bnRpYWxQb2xpY3kgY2xpZW50Q3JlZGVudGlhbFBvbGljeTsgLy8gV2hlbiB3ZSBzaG91bGQgYXNr
IHRoZSBjbGllbnQgZm9yIGNyZWRlbnRpYWxzIChpZiB3ZSBhbGxvdyBjcmVkZW50aWFscyBhdCBh
bGwpLgogICAgIFNlY3VyaXR5Q2hlY2tQb2xpY3kgc2VjdXJpdHlDaGVjazsKIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3Bw
CmluZGV4IDI0NTI3OTUuLmI2ZDYwOTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmNwcApAQCAtMjE2LDcgKzIxNiw3IEBAIENh
Y2hlZFJlc291cmNlSGFuZGxlPENhY2hlZENTU1N0eWxlU2hlZXQ+IENhY2hlZFJlc291cmNlTG9h
ZGVyOjpyZXF1ZXN0VXNlckNTU1N0CiAgICAgbWVtb3J5Q2FjaGUoKS0+YWRkKHVzZXJTaGVldC5n
ZXQoKSk7CiAgICAgLy8gRklYTUU6IGxvYWRSZXNvdXJjZSBjYWxscyBzZXRPd25pbmdDYWNoZWRS
ZXNvdXJjZUxvYWRlcigpIGlmIHRoZSByZXNvdXJjZSBjb3VsZG4ndCBiZSBhZGRlZCB0byBjYWNo
ZS4gRG9lcyB0aGlzIGZ1bmN0aW9uIG5lZWQgdG8gY2FsbCBpdCwgdG9vPwogCi0gICAgdXNlclNo
ZWV0LT5sb2FkKHRoaXMsIFJlc291cmNlTG9hZGVyT3B0aW9ucyhEb05vdFNlbmRDYWxsYmFja3Ms
IFNuaWZmQ29udGVudCwgQnVmZmVyRGF0YSwgQWxsb3dTdG9yZWRDcmVkZW50aWFscywgQXNrQ2xp
ZW50Rm9yQ3Jvc3NPcmlnaW5DcmVkZW50aWFscywgU2tpcFNlY3VyaXR5Q2hlY2spKTsKKyAgICB1
c2VyU2hlZXQtPmxvYWQodGhpcywgUmVzb3VyY2VMb2FkZXJPcHRpb25zKERvTm90U2VuZENhbGxi
YWNrcywgU25pZmZDb250ZW50LCBCdWZmZXJEYXRhLCBBbGxvd1N0b3JlZENyZWRlbnRpYWxzLCBB
c2tDbGllbnRGb3JBbGxDcmVkZW50aWFscywgU2tpcFNlY3VyaXR5Q2hlY2spKTsKICAgICAKICAg
ICByZXR1cm4gdXNlclNoZWV0OwogfQpAQCAtOTg1LDcgKzk4NSw3IEBAIHZvaWQgQ2FjaGVkUmVz
b3VyY2VMb2FkZXI6OnByaW50UHJlbG9hZFN0YXRzKCkKIAogY29uc3QgUmVzb3VyY2VMb2FkZXJP
cHRpb25zJiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6ZGVmYXVsdENhY2hlZFJlc291cmNlT3B0aW9u
cygpCiB7Ci0gICAgc3RhdGljIFJlc291cmNlTG9hZGVyT3B0aW9ucyBvcHRpb25zKFNlbmRDYWxs
YmFja3MsIFNuaWZmQ29udGVudCwgQnVmZmVyRGF0YSwgQWxsb3dTdG9yZWRDcmVkZW50aWFscywg
QXNrQ2xpZW50Rm9yQ3Jvc3NPcmlnaW5DcmVkZW50aWFscywgRG9TZWN1cml0eUNoZWNrKTsKKyAg
ICBzdGF0aWMgUmVzb3VyY2VMb2FkZXJPcHRpb25zIG9wdGlvbnMoU2VuZENhbGxiYWNrcywgU25p
ZmZDb250ZW50LCBCdWZmZXJEYXRhLCBBbGxvd1N0b3JlZENyZWRlbnRpYWxzLCBBc2tDbGllbnRG
b3JBbGxDcmVkZW50aWFscywgRG9TZWN1cml0eUNoZWNrKTsKICAgICByZXR1cm4gb3B0aW9uczsK
IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2ljb24vSWNvbkxvYWRlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uTG9hZGVyLmNwcAppbmRleCBiYzcw
MGZiLi4xODU1ODU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29u
TG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvaWNvbi9JY29uTG9hZGVyLmNw
cApAQCAtNjIsNyArNjIsNyBAQCB2b2lkIEljb25Mb2FkZXI6OnN0YXJ0TG9hZGluZygpCiAgICAg
aWYgKG1fcmVzb3VyY2UgfHwgIW1fZnJhbWUtPmRvY3VtZW50KCkpCiAgICAgICAgIHJldHVybjsK
IAotICAgIENhY2hlZFJlc291cmNlUmVxdWVzdCByZXF1ZXN0KFJlc291cmNlUmVxdWVzdChtX2Zy
YW1lLT5sb2FkZXIoKS0+aWNvbigpLT51cmwoKSksIFJlc291cmNlTG9hZGVyT3B0aW9ucyhTZW5k
Q2FsbGJhY2tzLCBTbmlmZkNvbnRlbnQsIEJ1ZmZlckRhdGEsIERvTm90QWxsb3dTdG9yZWRDcmVk
ZW50aWFscywgRG9Ob3RBc2tDbGllbnRGb3JDcm9zc09yaWdpbkNyZWRlbnRpYWxzLCBEb1NlY3Vy
aXR5Q2hlY2spKTsKKyAgICBDYWNoZWRSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdChSZXNvdXJjZVJl
cXVlc3QobV9mcmFtZS0+bG9hZGVyKCktPmljb24oKS0+dXJsKCkpLCBSZXNvdXJjZUxvYWRlck9w
dGlvbnMoU2VuZENhbGxiYWNrcywgU25pZmZDb250ZW50LCBCdWZmZXJEYXRhLCBEb05vdEFsbG93
U3RvcmVkQ3JlZGVudGlhbHMsIERvTm90QXNrQ2xpZW50Rm9yQW55Q3JlZGVudGlhbHMsIERvU2Vj
dXJpdHlDaGVjaykpOwogCiAjaWYgUExBVEZPUk0oQkxBQ0tCRVJSWSkKICAgICByZXF1ZXN0Lm11
dGFibGVSZXNvdXJjZVJlcXVlc3QoKS5zZXRUYXJnZXRUeXBlKFJlc291cmNlUmVxdWVzdDo6VGFy
Z2V0SXNGYXZpY29uKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvUmVzb3VyY2VIYW5kbGVUeXBlcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9SZXNvdXJjZUhhbmRsZVR5cGVzLmgKaW5kZXggODcwZTc5NS4uMGMzMWY5MiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZVR5cGVzLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZUhhbmRsZVR5cGVz
LmgKQEAgLTMzLDYgKzMzLDEyIEBAIGVudW0gU3RvcmVkQ3JlZGVudGlhbHMgewogICAgIERvTm90
QWxsb3dTdG9yZWRDcmVkZW50aWFscwogfTsKIAorZW51bSBDbGllbnRDcmVkZW50aWFsUG9saWN5
IHsKKyAgICBBc2tDbGllbnRGb3JBbGxDcmVkZW50aWFscywKKyAgICBEb05vdEFza0NsaWVudEZv
ckNyb3NzT3JpZ2luQ3JlZGVudGlhbHMsCisgICAgRG9Ob3RBc2tDbGllbnRGb3JBbnlDcmVkZW50
aWFscworfTsKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gUmVzb3VyY2VI
YW5kbGVUeXBlc19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS94bWwvWFNMVFByb2Nlc3Nv
ckxpYnhzbHQuY3BwIGIvU291cmNlL1dlYkNvcmUveG1sL1hTTFRQcm9jZXNzb3JMaWJ4c2x0LmNw
cAppbmRleCA2MzM3MTZjLi4xNGNkYWI5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUveG1s
L1hTTFRQcm9jZXNzb3JMaWJ4c2x0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS94bWwvWFNMVFBy
b2Nlc3NvckxpYnhzbHQuY3BwCkBAIC0xMjksNyArMTI5LDcgQEAgc3RhdGljIHhtbERvY1B0ciBk
b2NMb2FkZXJGdW5jKGNvbnN0IHhtbENoYXIqIHVyaSwKIAogICAgICAgICBib29sIHJlcXVlc3RB
bGxvd2VkID0gZ2xvYmFsQ2FjaGVkUmVzb3VyY2VMb2FkZXItPmZyYW1lKCkgJiYgZ2xvYmFsQ2Fj
aGVkUmVzb3VyY2VMb2FkZXItPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhblJlcXVl
c3QodXJsKTsKICAgICAgICAgaWYgKHJlcXVlc3RBbGxvd2VkKSB7Ci0gICAgICAgICAgICBnbG9i
YWxDYWNoZWRSZXNvdXJjZUxvYWRlci0+ZnJhbWUoKS0+bG9hZGVyKCktPmxvYWRSZXNvdXJjZVN5
bmNocm9ub3VzbHkodXJsLCBBbGxvd1N0b3JlZENyZWRlbnRpYWxzLCBlcnJvciwgcmVzcG9uc2Us
IGRhdGEpOworICAgICAgICAgICAgZ2xvYmFsQ2FjaGVkUmVzb3VyY2VMb2FkZXItPmZyYW1lKCkt
PmxvYWRlcigpLT5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KHVybCwgQWxsb3dTdG9yZWRDcmVk
ZW50aWFscywgRG9Ob3RBc2tDbGllbnRGb3JDcm9zc09yaWdpbkNyZWRlbnRpYWxzLCBlcnJvciwg
cmVzcG9uc2UsIGRhdGEpOwogICAgICAgICAgICAgcmVxdWVzdEFsbG93ZWQgPSBnbG9iYWxDYWNo
ZWRSZXNvdXJjZUxvYWRlci0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuUmVxdWVz
dChyZXNwb25zZS51cmwoKSk7CiAgICAgICAgIH0KICAgICAgICAgaWYgKCFyZXF1ZXN0QWxsb3dl
ZCkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUveG1sL3BhcnNlci9YTUxEb2N1bWVudFBh
cnNlckxpYnhtbDIuY3BwIGIvU291cmNlL1dlYkNvcmUveG1sL3BhcnNlci9YTUxEb2N1bWVudFBh
cnNlckxpYnhtbDIuY3BwCmluZGV4IDUxYzVhMmYuLjEyZTE4ZTMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3htbC9wYXJzZXIvWE1MRG9jdW1lbnRQYXJzZXJMaWJ4bWwyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS94bWwvcGFyc2VyL1hNTERvY3VtZW50UGFyc2VyTGlieG1sMi5jcHAKQEAg
LTQ0NCw3ICs0NDQsNyBAQCBzdGF0aWMgdm9pZCogb3BlbkZ1bmMoY29uc3QgY2hhciogdXJpKQog
ICAgICAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIHJlc3RvcmUgdGhlIG9yaWdpbmFsIGdsb2JhbCBl
cnJvciBoYW5kbGVyIGFzIHdlbGwuCiAKICAgICAgICAgaWYgKGNhY2hlZFJlc291cmNlTG9hZGVy
LT5mcmFtZSgpKQotICAgICAgICAgICAgY2FjaGVkUmVzb3VyY2VMb2FkZXItPmZyYW1lKCktPmxv
YWRlcigpLT5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KHVybCwgQWxsb3dTdG9yZWRDcmVkZW50
aWFscywgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKTsKKyAgICAgICAgICAgIGNhY2hlZFJlc291cmNl
TG9hZGVyLT5mcmFtZSgpLT5sb2FkZXIoKS0+bG9hZFJlc291cmNlU3luY2hyb25vdXNseSh1cmws
IEFsbG93U3RvcmVkQ3JlZGVudGlhbHMsIERvTm90QXNrQ2xpZW50Rm9yQ3Jvc3NPcmlnaW5DcmVk
ZW50aWFscywgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKTsKICAgICB9CiAKICAgICAvLyBXZSBoYXZl
IHRvIGNoZWNrIHRoZSBVUkwgYWdhaW4gYWZ0ZXIgdGhlIGxvYWQgdG8gY2F0Y2ggcmVkaXJlY3Rz
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIv
Q2hhbmdlTG9nCmluZGV4IGU4Mzk3ZDIuLmJmMzE1MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0
MCBAQAorMjAxMy0wNC0yOSAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKKyAg
ICAgICAgUkVHUkVTU0lPTjogV2Ugc2VlIGF1dGhlbnRpY2F0aW9uIGNoYWxsZW5nZSBzaGVldHMg
Zm9yIGZhdmljb24gcmVxdWVzdHMuCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xMzc1MzQ3MD4g
YW5kIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTUyODgKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBIYXZlIE5ldHdvcmtS
ZXNvdXJjZUxvYWRQYXJhbWV0ZXJzIHJlbWVtYmVyIHRoZSBDbGllbnRDcmVkZW50aWFsUG9saWN5
OgorICAgICAgICAqIFNoYXJlZC9OZXR3b3JrL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJz
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnM6Ok5l
dHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jl
c291cmNlTG9hZFBhcmFtZXRlcnM6OmVuY29kZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtS
ZXNvdXJjZUxvYWRQYXJhbWV0ZXJzOjpkZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9OZXR3b3Jr
L05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmg6CisKKyAgICAgICAgUGFzcyBhbG9uZyB0
aGUgQ2xpZW50Q3JlZGVudGlhbFBvbGljeSB0byB0aGUgTmV0d29ya1Byb2Nlc3M6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYlJlc291cmNlTG9hZFNjaGVkdWxlcjo6c2NoZWR1bGVMb2FkKToKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBsYXRmb3JtU3RyYXRlZ2llczo6bG9hZFJlc291cmNl
U3luY2hyb25vdXNseSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQ
bGF0Zm9ybVN0cmF0ZWdpZXMuaDoKKworICAgICAgICBIYXZlIHRoZSBTY2hlZHVsYWJsZUxvYWRl
ciByZW1lbWJlciB0aGUgQ2xpZW50Q3JlZGVudGlhbFBvbGljeToKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9TY2hlZHVsYWJsZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OlNjaGVkdWxh
YmxlTG9hZGVyOjpTY2hlZHVsYWJsZUxvYWRlcik6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mv
U2NoZWR1bGFibGVMb2FkZXIuaDoKKyAgICAgICAgKFdlYktpdDo6U2NoZWR1bGFibGVMb2FkZXI6
OmNsaWVudENyZWRlbnRpYWxQb2xpY3kpOgorCisgICAgICAgIERvbuKAmXQgbWVzc2FnZSBmb3Ig
Y3JlZGVudGlhbHMgaWYgdGhlIENsaWVudENyZWRlbnRpYWxQb2xpY3kgZm9yYmlkcyBpdDoKKyAg
ICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9h
ZGVyLmg6CisKKyAgICAgICAgVXBkYXRlIGZvciB0aGUgbmV3IGxvYWRSZXNvdXJjZVN5bmNocm9u
b3VzbHkgc2lnbmF0dXJlICh3aGljaCBpcyBzdGlsbCBhIG5vLW9wIG9uIHRoZSBOZXR3b3JrUHJv
Y2VzcyBzaWRlKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc1BsYXRm
b3JtU3RyYXRlZ2llcy5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzUGxhdGZv
cm1TdHJhdGVnaWVzOjpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KToKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc1BsYXRmb3JtU3RyYXRlZ2llcy5oOgorCiAyMDEzLTA0
LTI5ICBOb2FtIFJvc2VudGhhbCAgPG5vYW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBHZXQgcmlk
IG9mICJub24tY29tcG9zaXRlZCBjb250ZW50cyIgaW4gQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vz
c1BsYXRmb3JtU3RyYXRlZ2llcy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrUHJvY2Vzc1BsYXRmb3JtU3RyYXRlZ2llcy5jcHAKaW5kZXggNjkwNzMwOS4uZGNmNzU4
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nl
c3NQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9j
ZXNzL05ldHdvcmtQcm9jZXNzUGxhdGZvcm1TdHJhdGVnaWVzLmNwcApAQCAtODQsNyArODQsNyBA
QCBSZXNvdXJjZUxvYWRTY2hlZHVsZXIqIE5ldHdvcmtQcm9jZXNzUGxhdGZvcm1TdHJhdGVnaWVz
OjpyZXNvdXJjZUxvYWRTY2hlZHVsZXIoKQogICAgIHJldHVybiAwOwogfQogCi12b2lkIE5ldHdv
cmtQcm9jZXNzUGxhdGZvcm1TdHJhdGVnaWVzOjpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KE5l
dHdvcmtpbmdDb250ZXh0KiwgdW5zaWduZWQgbG9uZyByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBj
b25zdCBSZXNvdXJjZVJlcXVlc3QmLCBTdG9yZWRDcmVkZW50aWFscywgUmVzb3VyY2VFcnJvciYs
IFJlc291cmNlUmVzcG9uc2UmLCBWZWN0b3I8Y2hhcj4mIGRhdGEpCit2b2lkIE5ldHdvcmtQcm9j
ZXNzUGxhdGZvcm1TdHJhdGVnaWVzOjpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KE5ldHdvcmtp
bmdDb250ZXh0KiwgdW5zaWduZWQgbG9uZyByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmLCBTdG9yZWRDcmVkZW50aWFscywgQ2xpZW50Q3JlZGVudGlhbFBvbGlj
eSwgUmVzb3VyY2VFcnJvciYsIFJlc291cmNlUmVzcG9uc2UmLCBWZWN0b3I8Y2hhcj4mIGRhdGEp
CiB7CiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc1BsYXRmb3JtU3RyYXRlZ2llcy5oIGIv
U291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NQbGF0Zm9ybVN0cmF0
ZWdpZXMuaAppbmRleCAwNjZlNzlkOTkuLjgxOGNjZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzUGxhdGZvcm1TdHJhdGVnaWVzLmgKKysr
IGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NQbGF0Zm9ybVN0
cmF0ZWdpZXMuaApAQCAtNDgsNyArNDgsNyBAQCBwcml2YXRlOgogCiAgICAgLy8gV2ViQ29yZTo6
TG9hZGVyU3RyYXRlZ3kKICAgICB2aXJ0dWFsIFdlYkNvcmU6OlJlc291cmNlTG9hZFNjaGVkdWxl
ciogcmVzb3VyY2VMb2FkU2NoZWR1bGVyKCkgT1ZFUlJJREU7Ci0gICAgdmlydHVhbCB2b2lkIGxv
YWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoV2ViQ29yZTo6TmV0d29ya2luZ0NvbnRleHQqLCB1bnNp
Z25lZCBsb25nIHJlc291cmNlTG9hZElkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNl
UmVxdWVzdCYsIFdlYkNvcmU6OlN0b3JlZENyZWRlbnRpYWxzLCBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIFZlY3RvcjxjaGFyPiYgZGF0YSkgT1ZF
UlJJREU7CisgICAgdmlydHVhbCB2b2lkIGxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoV2ViQ29y
ZTo6TmV0d29ya2luZ0NvbnRleHQqLCB1bnNpZ25lZCBsb25nIHJlc291cmNlTG9hZElkZW50aWZp
ZXIsIGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYsIFdlYkNvcmU6OlN0b3JlZENyZWRl
bnRpYWxzLCBXZWJDb3JlOjpDbGllbnRDcmVkZW50aWFsUG9saWN5LCBXZWJDb3JlOjpSZXNvdXJj
ZUVycm9yJiwgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYsIFZlY3RvcjxjaGFyPiYgZGF0YSkg
T1ZFUlJJREU7CiAjaWYgRU5BQkxFKEJMT0IpCiAgICAgdmlydHVhbCBXZWJDb3JlOjpCbG9iUmVn
aXN0cnkqIGNyZWF0ZUJsb2JSZWdpc3RyeSgpIE9WRVJSSURFOwogI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3Bw
IGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNw
cAppbmRleCAwNzViMzVjLi40NWZmNzY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAKQEAgLTI5OCw2ICsyOTgs
MTQgQEAgdm9pZCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OmRpZFJlY2VpdmVBdXRoZW50aWNhdGlv
bkNoYWxsZW5nZShSZXNvdXJjZUhhbmRsZSogaGEKIHsKICAgICBBU1NFUlRfVU5VU0VEKGhhbmRs
ZSwgaGFuZGxlID09IG1faGFuZGxlKTsKIAorICAgIC8vIEZJWE1FIChodHRwOi8vd2Via2l0Lm9y
Zy9iLzExNTI5MSk6IFNpbmNlIHdlIGdvIHN0cmFpZ2h0IHRvIHRoZSBVSSBwcm9jZXNzIGZvciBh
dXRoZW50aWNhdGlvbiB3ZSBkb24ndCBnZXQgV2ViQ29yZSdzCisgICAgLy8gY3Jvc3Mtb3JpZ2lu
IGNoZWNrIGJlZm9yZSBhc2tpbmcgdGhlIGNsaWVudCBmb3IgY3JlZGVudGlhbHMuCisgICAgLy8g
VGhlcmVmb3JlIHdlIGFyZSB0b28gcGVybWlzc2l2ZSBpbiB0aGUgY2FzZSB3aGVyZSB0aGUgQ2xp
ZW50Q3JlZGVudGlhbFBvbGljeSBpcyBEb05vdEFza0NsaWVudEZvckNyb3NzT3JpZ2luQ3JlZGVu
dGlhbHMuCisgICAgaWYgKGNsaWVudENyZWRlbnRpYWxQb2xpY3koKSA9PSBEb05vdEFza0NsaWVu
dEZvckFueUNyZWRlbnRpYWxzKSB7CisgICAgICAgIGNoYWxsZW5nZS5hdXRoZW50aWNhdGlvbkNs
aWVudCgpLT5yZWNlaXZlZFJlcXVlc3RUb0NvbnRpbnVlV2l0aG91dENyZWRlbnRpYWwoY2hhbGxl
bmdlKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwogICAgIE5ldHdvcmtQcm9jZXNzOjpzaGFy
ZWQoKS5hdXRoZW50aWNhdGlvbk1hbmFnZXIoKS5kaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFs
bGVuZ2Uod2ViUGFnZUlEKCksIHdlYkZyYW1lSUQoKSwgY2hhbGxlbmdlKTsKIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVy
LmggYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIu
aAppbmRleCA4MmUxNTU1Li5mOTkwNjhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9O
ZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuaApAQCAtMzIsNyArMzIsNiBAQAog
I2luY2x1ZGUgIlNjaGVkdWxhYmxlTG9hZGVyLmgiCiAjaW5jbHVkZSAiU2hhcmVhYmxlUmVzb3Vy
Y2UuaCIKICNpbmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlSGFuZGxlQ2xpZW50Lmg+Ci0jaW5jbHVk
ZSA8V2ViQ29yZS9SZXNvdXJjZUxvYWRlck9wdGlvbnMuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1J1
bkxvb3AuaD4KIAogdHlwZWRlZiBjb25zdCBzdHJ1Y3QgX0NGQ2FjaGVkVVJMUmVzcG9uc2UqIENG
Q2FjaGVkVVJMUmVzcG9uc2VSZWY7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3Jr
UHJvY2Vzcy9TY2hlZHVsYWJsZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJv
Y2Vzcy9TY2hlZHVsYWJsZUxvYWRlci5jcHAKaW5kZXggNTViMGE5MS4uOWQ0NmY3NCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvU2NoZWR1bGFibGVMb2FkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL1NjaGVkdWxhYmxlTG9hZGVyLmNw
cApAQCAtNDUsNiArNDUsNyBAQCBTY2hlZHVsYWJsZUxvYWRlcjo6U2NoZWR1bGFibGVMb2FkZXIo
Y29uc3QgTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMmIHBhcmFtZQogICAgICwgbV9wcmlv
cml0eShwYXJhbWV0ZXJzLnByaW9yaXR5KQogICAgICwgbV9jb250ZW50U25pZmZpbmdQb2xpY3ko
cGFyYW1ldGVycy5jb250ZW50U25pZmZpbmdQb2xpY3kpCiAgICAgLCBtX2FsbG93U3RvcmVkQ3Jl
ZGVudGlhbHMocGFyYW1ldGVycy5hbGxvd1N0b3JlZENyZWRlbnRpYWxzKQorICAgICwgbV9jbGll
bnRDcmVkZW50aWFsUG9saWN5KHBhcmFtZXRlcnMuY2xpZW50Q3JlZGVudGlhbFBvbGljeSkKICAg
ICAsIG1faW5Qcml2YXRlQnJvd3NpbmdNb2RlKHBhcmFtZXRlcnMuaW5Qcml2YXRlQnJvd3NpbmdN
b2RlKQogICAgICwgbV9zaG91bGRDbGVhclJlZmVycmVyT25IVFRQU1RvSFRUUFJlZGlyZWN0KHBh
cmFtZXRlcnMuc2hvdWxkQ2xlYXJSZWZlcnJlck9uSFRUUFNUb0hUVFBSZWRpcmVjdCkKICAgICAs
IG1faXNMb2FkaW5nTWFpblJlc291cmNlKHBhcmFtZXRlcnMuaXNNYWluUmVzb3VyY2UpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9TY2hlZHVsYWJsZUxvYWRlci5o
IGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvU2NoZWR1bGFibGVMb2FkZXIuaAppbmRl
eCA3YjI0M2UwLi4xOGU5ZmE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJv
Y2Vzcy9TY2hlZHVsYWJsZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9j
ZXNzL1NjaGVkdWxhYmxlTG9hZGVyLmgKQEAgLTUxLDYgKzUxLDcgQEAgcHVibGljOgogICAgIFdl
YkNvcmU6OlJlc291cmNlTG9hZFByaW9yaXR5IHByaW9yaXR5KCkgY29uc3QgeyByZXR1cm4gbV9w
cmlvcml0eTsgfQogICAgIFdlYkNvcmU6OkNvbnRlbnRTbmlmZmluZ1BvbGljeSBjb250ZW50U25p
ZmZpbmdQb2xpY3koKSBjb25zdCB7IHJldHVybiBtX2NvbnRlbnRTbmlmZmluZ1BvbGljeTsgfQog
ICAgIFdlYkNvcmU6OlN0b3JlZENyZWRlbnRpYWxzIGFsbG93U3RvcmVkQ3JlZGVudGlhbHMoKSBj
b25zdCB7IHJldHVybiBtX2FsbG93U3RvcmVkQ3JlZGVudGlhbHM7IH0KKyAgICBXZWJDb3JlOjpD
bGllbnRDcmVkZW50aWFsUG9saWN5IGNsaWVudENyZWRlbnRpYWxQb2xpY3koKSBjb25zdCB7IHJl
dHVybiBtX2NsaWVudENyZWRlbnRpYWxQb2xpY3k7IH0KICAgICBib29sIGluUHJpdmF0ZUJyb3dz
aW5nTW9kZSgpIGNvbnN0IHsgcmV0dXJuIG1faW5Qcml2YXRlQnJvd3NpbmdNb2RlOyB9CiAgICAg
Ym9vbCBpc0xvYWRpbmdNYWluUmVzb3VyY2UoKSBjb25zdCB7IHJldHVybiBtX2lzTG9hZGluZ01h
aW5SZXNvdXJjZTsgfQogCkBAIC04MCw2ICs4MSw3IEBAIHByaXZhdGU6CiAgICAgV2ViQ29yZTo6
UmVzb3VyY2VMb2FkUHJpb3JpdHkgbV9wcmlvcml0eTsKICAgICBXZWJDb3JlOjpDb250ZW50U25p
ZmZpbmdQb2xpY3kgbV9jb250ZW50U25pZmZpbmdQb2xpY3k7CiAgICAgV2ViQ29yZTo6U3RvcmVk
Q3JlZGVudGlhbHMgbV9hbGxvd1N0b3JlZENyZWRlbnRpYWxzOworICAgIFdlYkNvcmU6OkNsaWVu
dENyZWRlbnRpYWxQb2xpY3kgbV9jbGllbnRDcmVkZW50aWFsUG9saWN5OwogICAgIGJvb2wgbV9p
blByaXZhdGVCcm93c2luZ01vZGU7CiAgICAgYm9vbCBtX3Nob3VsZENsZWFyUmVmZXJyZXJPbkhU
VFBTVG9IVFRQUmVkaXJlY3Q7CiAgICAgYm9vbCBtX2lzTG9hZGluZ01haW5SZXNvdXJjZTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9OZXR3b3JrL05ldHdvcmtSZXNvdXJjZUxv
YWRQYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9OZXR3b3JrL05ldHdvcmtS
ZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmNwcAppbmRleCBlNGFhZDk5Li45OWQxZDQ2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvTmV0d29yay9OZXR3b3JrUmVzb3VyY2VMb2FkUGFy
YW1ldGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL05ldHdvcmsvTmV0d29ya1Jl
c291cmNlTG9hZFBhcmFtZXRlcnMuY3BwCkBAIC00NCw2ICs0NCw3IEBAIE5ldHdvcmtSZXNvdXJj
ZUxvYWRQYXJhbWV0ZXJzOjpOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVycygpCiAgICAgLCBw
cmlvcml0eShSZXNvdXJjZUxvYWRQcmlvcml0eVZlcnlMb3cpCiAgICAgLCBjb250ZW50U25pZmZp
bmdQb2xpY3koU25pZmZDb250ZW50KQogICAgICwgYWxsb3dTdG9yZWRDcmVkZW50aWFscyhEb05v
dEFsbG93U3RvcmVkQ3JlZGVudGlhbHMpCisgICAgLCBjbGllbnRDcmVkZW50aWFsUG9saWN5KERv
Tm90QXNrQ2xpZW50Rm9yQW55Q3JlZGVudGlhbHMpCiAgICAgLCBpblByaXZhdGVCcm93c2luZ01v
ZGUoZmFsc2UpCiAgICAgLCBzaG91bGRDbGVhclJlZmVycmVyT25IVFRQU1RvSFRUUFJlZGlyZWN0
KHRydWUpCiAgICAgLCBpc01haW5SZXNvdXJjZShmYWxzZSkKQEAgLTkyLDYgKzkzLDcgQEAgdm9p
ZCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVyczo6ZW5jb2RlKENvcmVJUEM6OkFyZ3VtZW50
RW5jb2RlciYgZW5jb2RlcikgY28KICAgICBlbmNvZGVyLmVuY29kZUVudW0ocHJpb3JpdHkpOwog
ICAgIGVuY29kZXIuZW5jb2RlRW51bShjb250ZW50U25pZmZpbmdQb2xpY3kpOwogICAgIGVuY29k
ZXIuZW5jb2RlRW51bShhbGxvd1N0b3JlZENyZWRlbnRpYWxzKTsKKyAgICBlbmNvZGVyLmVuY29k
ZUVudW0oY2xpZW50Q3JlZGVudGlhbFBvbGljeSk7CiAgICAgZW5jb2RlciA8PCBpblByaXZhdGVC
cm93c2luZ01vZGU7CiAgICAgZW5jb2RlciA8PCBzaG91bGRDbGVhclJlZmVycmVyT25IVFRQU1Rv
SFRUUFJlZGlyZWN0OwogICAgIGVuY29kZXIgPDwgaXNNYWluUmVzb3VyY2U7CkBAIC0xMzcsNiAr
MTM5LDggQEAgYm9vbCBOZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVyczo6ZGVjb2RlKENvcmVJ
UEM6OkFyZ3VtZW50RGVjb2RlciYgZGVjb2RlciwgTmUKICAgICAgICAgcmV0dXJuIGZhbHNlOwog
ICAgIGlmICghZGVjb2Rlci5kZWNvZGVFbnVtKHJlc3VsdC5hbGxvd1N0b3JlZENyZWRlbnRpYWxz
KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmICghZGVjb2Rlci5kZWNvZGVFbnVtKHJl
c3VsdC5jbGllbnRDcmVkZW50aWFsUG9saWN5KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwogICAg
IGlmICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LmluUHJpdmF0ZUJyb3dzaW5nTW9kZSkpCiAgICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5zaG91bGRD
bGVhclJlZmVycmVyT25IVFRQU1RvSFRUUFJlZGlyZWN0KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9OZXR3b3JrL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmggYi9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvTmV0d29yay9OZXR3b3JrUmVzb3VyY2VMb2FkUGFyYW1ldGVy
cy5oCmluZGV4IGU4M2QyZWMuLmYyNmJiMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9OZXR3b3JrL05ldHdvcmtSZXNvdXJjZUxvYWRQYXJhbWV0ZXJzLmgKKysrIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL05ldHdvcmsvTmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcnMuaApA
QCAtNTgsNiArNTgsNyBAQCBwdWJsaWM6CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VMb2FkUHJpb3Jp
dHkgcHJpb3JpdHk7CiAgICAgV2ViQ29yZTo6Q29udGVudFNuaWZmaW5nUG9saWN5IGNvbnRlbnRT
bmlmZmluZ1BvbGljeTsKICAgICBXZWJDb3JlOjpTdG9yZWRDcmVkZW50aWFscyBhbGxvd1N0b3Jl
ZENyZWRlbnRpYWxzOworICAgIFdlYkNvcmU6OkNsaWVudENyZWRlbnRpYWxQb2xpY3kgY2xpZW50
Q3JlZGVudGlhbFBvbGljeTsKICAgICBib29sIGluUHJpdmF0ZUJyb3dzaW5nTW9kZTsKICAgICBi
b29sIHNob3VsZENsZWFyUmVmZXJyZXJPbkhUVFBTVG9IVFRQUmVkaXJlY3Q7CiAgICAgYm9vbCBp
c01haW5SZXNvdXJjZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvTmV0
d29yay9XZWJSZXNvdXJjZUxvYWRTY2hlZHVsZXIuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHAKaW5kZXggZTNhOTk4My4u
N2EwZjZkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9OZXR3b3JrL1dl
YlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9OZXR3b3JrL1dlYlJlc291cmNlTG9hZFNjaGVkdWxlci5jcHAKQEAgLTExNiw2ICsxMTYsNyBA
QCB2b2lkIFdlYlJlc291cmNlTG9hZFNjaGVkdWxlcjo6c2NoZWR1bGVMb2FkKFJlc291cmNlTG9h
ZGVyKiByZXNvdXJjZUxvYWRlciwgQ2FjaAogICAgIGxvYWRQYXJhbWV0ZXJzLnByaW9yaXR5ID0g
cHJpb3JpdHk7CiAgICAgbG9hZFBhcmFtZXRlcnMuY29udGVudFNuaWZmaW5nUG9saWN5ID0gY29u
dGVudFNuaWZmaW5nUG9saWN5OwogICAgIGxvYWRQYXJhbWV0ZXJzLmFsbG93U3RvcmVkQ3JlZGVu
dGlhbHMgPSBhbGxvd1N0b3JlZENyZWRlbnRpYWxzOworICAgIGxvYWRQYXJhbWV0ZXJzLmNsaWVu
dENyZWRlbnRpYWxQb2xpY3kgPSByZXNvdXJjZUxvYWRlci0+Y2xpZW50Q3JlZGVudGlhbFBvbGlj
eSgpOwogICAgIGxvYWRQYXJhbWV0ZXJzLmluUHJpdmF0ZUJyb3dzaW5nTW9kZSA9IHByaXZhdGVC
cm93c2luZ0VuYWJsZWQ7CiAgICAgbG9hZFBhcmFtZXRlcnMuc2hvdWxkQ2xlYXJSZWZlcnJlck9u
SFRUUFNUb0hUVFBSZWRpcmVjdCA9IHNob3VsZENsZWFyUmVmZXJyZXJPbkhUVFBTVG9IVFRQUmVk
aXJlY3Q7CiAgICAgbG9hZFBhcmFtZXRlcnMuaXNNYWluUmVzb3VyY2UgPSByZXNvdXJjZSAmJiBy
ZXNvdXJjZS0+dHlwZSgpID09IENhY2hlZFJlc291cmNlOjpNYWluUmVzb3VyY2U7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3Jt
U3RyYXRlZ2llcy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHAKaW5kZXggZmI3NWZiZC4uOGQ3ZWQxMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9y
bVN0cmF0ZWdpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNwcApAQCAtMjI2LDEwICsyMjYsMTAgQEAgUmVz
b3VyY2VMb2FkU2NoZWR1bGVyKiBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OnJlc291cmNlTG9hZFNj
aGVkdWxlcigpCiAgICAgcmV0dXJuIHNjaGVkdWxlcjsKIH0KIAotdm9pZCBXZWJQbGF0Zm9ybVN0
cmF0ZWdpZXM6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoTmV0d29ya2luZ0NvbnRleHQqIGNv
bnRleHQsIHVuc2lnbmVkIGxvbmcgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0LCBTdG9yZWRDcmVkZW50aWFscyBzdG9yZWRDcmVkZW50aWFscywg
UmVzb3VyY2VFcnJvciYgZXJyb3IsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBWZWN0b3I8
Y2hhcj4mIGRhdGEpCit2b2lkIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6bG9hZFJlc291cmNlU3lu
Y2hyb25vdXNseShOZXR3b3JraW5nQ29udGV4dCogY29udGV4dCwgdW5zaWduZWQgbG9uZyByZXNv
dXJjZUxvYWRJZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFN0b3Jl
ZENyZWRlbnRpYWxzIHN0b3JlZENyZWRlbnRpYWxzLCBDbGllbnRDcmVkZW50aWFsUG9saWN5IGNs
aWVudENyZWRlbnRpYWxQb2xpY3ksUmVzb3VyY2VFcnJvciYgZXJyb3IsIFJlc291cmNlUmVzcG9u
c2UmIHJlc3BvbnNlLCBWZWN0b3I8Y2hhcj4mIGRhdGEpCiB7CiAgICAgaWYgKCFXZWJQcm9jZXNz
OjpzaGFyZWQoKS51c2VzTmV0d29ya1Byb2Nlc3MoKSkgewotICAgICAgICBMb2FkZXJTdHJhdGVn
eTo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShjb250ZXh0LCByZXNvdXJjZUxvYWRJZGVudGlm
aWVyLCByZXF1ZXN0LCBzdG9yZWRDcmVkZW50aWFscywgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKTsK
KyAgICAgICAgTG9hZGVyU3RyYXRlZ3k6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoY29udGV4
dCwgcmVzb3VyY2VMb2FkSWRlbnRpZmllciwgcmVxdWVzdCwgc3RvcmVkQ3JlZGVudGlhbHMsIGNs
aWVudENyZWRlbnRpYWxQb2xpY3ksIGVycm9yLCByZXNwb25zZSwgZGF0YSk7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CiAKQEAgLTI0MSw2ICsyNDEsNyBAQCB2b2lkIFdlYlBsYXRmb3JtU3RyYXRl
Z2llczo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseShOZXR3b3JraW5nQ29udGV4dCogY29udGV4
dAogICAgIGxvYWRQYXJhbWV0ZXJzLnByaW9yaXR5ID0gUmVzb3VyY2VMb2FkUHJpb3JpdHlIaWdo
ZXN0OwogICAgIGxvYWRQYXJhbWV0ZXJzLmNvbnRlbnRTbmlmZmluZ1BvbGljeSA9IFNuaWZmQ29u
dGVudDsKICAgICBsb2FkUGFyYW1ldGVycy5hbGxvd1N0b3JlZENyZWRlbnRpYWxzID0gc3RvcmVk
Q3JlZGVudGlhbHM7CisgICAgbG9hZFBhcmFtZXRlcnMuY2xpZW50Q3JlZGVudGlhbFBvbGljeSA9
IGNsaWVudENyZWRlbnRpYWxQb2xpY3k7CiAgICAgbG9hZFBhcmFtZXRlcnMuaW5Qcml2YXRlQnJv
d3NpbmdNb2RlID0gY29udGV4dC0+c3RvcmFnZVNlc3Npb24oKS5pc1ByaXZhdGVCcm93c2luZ1Nl
c3Npb24oKTsKICAgICBsb2FkUGFyYW1ldGVycy5zaG91bGRDbGVhclJlZmVycmVyT25IVFRQU1Rv
SFRUUFJlZGlyZWN0ID0gY29udGV4dC0+c2hvdWxkQ2xlYXJSZWZlcnJlck9uSFRUUFNUb0hUVFBS
ZWRpcmVjdCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaAppbmRleCA0ZDFhOTJi
Li45MmJjMDNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKQEAgLTczLDcgKzcz
LDcgQEAgcHJpdmF0ZToKICAgICAvLyBXZWJDb3JlOjpMb2FkZXJTdHJhdGVneQogI2lmIEVOQUJM
RShORVRXT1JLX1BST0NFU1MpCiAgICAgdmlydHVhbCBXZWJDb3JlOjpSZXNvdXJjZUxvYWRTY2hl
ZHVsZXIqIHJlc291cmNlTG9hZFNjaGVkdWxlcigpIE9WRVJSSURFOwotICAgIHZpcnR1YWwgdm9p
ZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KFdlYkNvcmU6Ok5ldHdvcmtpbmdDb250ZXh0Kiwg
dW5zaWduZWQgbG9uZyByZXNvdXJjZUxvYWRJZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNv
dXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpTdG9yZWRDcmVkZW50aWFscywgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciYsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBWZWN0b3I8Y2hhcj4mIGRhdGEp
IE9WRVJSSURFOworICAgIHZpcnR1YWwgdm9pZCBsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KFdl
YkNvcmU6Ok5ldHdvcmtpbmdDb250ZXh0KiwgdW5zaWduZWQgbG9uZyByZXNvdXJjZUxvYWRJZGVu
dGlmaWVyLCBjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmLCBXZWJDb3JlOjpTdG9yZWRD
cmVkZW50aWFscywgV2ViQ29yZTo6Q2xpZW50Q3JlZGVudGlhbFBvbGljeSwgV2ViQ29yZTo6UmVz
b3VyY2VFcnJvciYsIFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmLCBWZWN0b3I8Y2hhcj4mIGRh
dGEpIE9WRVJSSURFOwogI2lmIEVOQUJMRShCTE9CKQogICAgIHZpcnR1YWwgV2ViQ29yZTo6Qmxv
YlJlZ2lzdHJ5KiBjcmVhdGVCbG9iUmVnaXN0cnkoKSBPVkVSUklERTsKICNlbmRpZgo=
</data>
<flag name="review"
          id="221535"
          type_id="1"
          status="+"
          setter="ap"
    />
          </attachment>
      

    </bug>

</bugzilla>