<?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>109679</bug_id>
          
          <creation_ts>2013-02-13 04:03:21 -0800</creation_ts>
          <short_desc>[V8] Rename XXXAccessorGetter() to XXXAttrGetterCustom(), and XXXAccessorSetter() to XXXAttrSetterCustom()</short_desc>
          <delta_ts>2013-02-14 03:20:22 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore JavaScript</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kentaro Hara">haraken</reporter>
          <assigned_to name="Kentaro Hara">haraken</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>831788</commentid>
    <comment_count>0</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-02-13 04:03:21 -0800</bug_when>
    <thetext>For naming consistency and clarification.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>831789</commentid>
    <comment_count>1</comment_count>
      <attachid>188049</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-02-13 04:06:28 -0800</bug_when>
    <thetext>Created attachment 188049
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>831802</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-13 04:21:08 -0800</bug_when>
    <thetext>Attachment 188049 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/bindings/scripts/CodeGeneratorV8.pm&apos;, u&apos;Source/WebCore/bindings/scripts/test/V8/V8TestInterface.cpp&apos;, u&apos;Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp&apos;, u&apos;Source/WebCore/bindings/scripts/test/V8/V8TestObj.h&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8BiquadFilterNodeCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8ClipboardCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8CoordinatesCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8CustomEventCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8DOMWindowCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8DeviceMotionEventCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8DeviceOrientationEventCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8DocumentLocationCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8EventCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8FileReaderCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8HTMLDocumentCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8HTMLElementCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8HTMLFrameElementCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8HTMLInputElementCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8HTMLLinkElementCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8HTMLMediaElementCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8HistoryCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8JavaScriptCallFrameCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8LocationCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8MessageEventCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8OscillatorNodeCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8PannerNodeCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8PopStateEventCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8SVGLengthCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8TrackEventCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8WebKitAnimationCustom.cpp&apos;, u&apos;Source/WebCore/bindings/v8/custom/V8XMLHttpRequestCustom.cpp&apos;]&quot; exit_code: 1
Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp:505:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp:510:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebCore/bindings/scripts/test/V8/V8TestInterface.cpp:136:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebCore/bindings/scripts/test/V8/V8TestInterface.cpp:145:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Total errors found: 4 in 35 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>832146</commentid>
    <comment_count>3</comment_count>
      <attachid>188049</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-13 11:59:10 -0800</bug_when>
    <thetext>Comment on attachment 188049
Patch

Rejecting attachment 188049 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=gce-cq-04&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 188049, &apos;--port=chromium-xvfb&apos;]&quot; exit_code: 2 cwd: /mnt/git/webkit-commit-queue

Last 500 characters of output:
e/bindings/v8/custom/V8PopStateEventCustom.cpp
patching file Source/WebCore/bindings/v8/custom/V8SVGLengthCustom.cpp
patching file Source/WebCore/bindings/v8/custom/V8TrackEventCustom.cpp
patching file Source/WebCore/bindings/v8/custom/V8WebKitAnimationCustom.cpp
patching file Source/WebCore/bindings/v8/custom/V8XMLHttpRequestCustom.cpp

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;, &apos;--reviewer&apos;, &apos;Adam Barth&apos;]&quot; exit_code: 1 cwd: /mnt/git/webkit-commit-queue

Full output: http://queues.webkit.org/results/16543260</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832602</commentid>
    <comment_count>4</comment_count>
      <attachid>188049</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-02-13 17:45:58 -0800</bug_when>
    <thetext>Comment on attachment 188049
Patch

Landed in r142834.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832896</commentid>
    <comment_count>5</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-02-14 03:20:22 -0800</bug_when>
    <thetext>Committed r142864: &lt;http://trac.webkit.org/changeset/142864&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188049</attachid>
            <date>2013-02-13 04:06:28 -0800</date>
            <delta_ts>2013-02-13 17:45:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109679-20130213210257.patch</filename>
            <type>text/plain</type>
            <size>61681</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyNzMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWJkOGUwMWU1NGEzZWFh
YWZhOGU1ZGZkNmMwMzBkOGI3MTI0NzZhOS4uMjljYmQ1MTZkYzQ4ZjJiMjczY2NjNTMxMmEwZjVj
ZTRjZGYxYTZjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzMCBAQAorMjAxMy0wMi0xMyAgS2Vu
dGFybyBIYXJhICA8aGFyYWtlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW1Y4XSBSZW5hbWUg
WFhYQWNjZXNzb3JHZXR0ZXIoKSB0byBYWFhBdHRyR2V0dGVyQ3VzdG9tKCksCisgICAgICAgIGFu
ZCBYWFhBY2Nlc3NvclNldHRlcigpIHRvIFhYWEF0dHJTZXR0ZXJDdXN0b20oKQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5Njc5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRm9yIG5hbWluZyBjb25zaXN0
ZW5jeSBhbmQgY2xhcmlmaWNhdGlvbi4KKworICAgICAgICBObyB0ZXN0cy4gTm8gY2hhbmdlIGlu
IGJlaGF2aW9yLgorCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgu
cG06CisgICAgICAgIChHZW5lcmF0ZUhlYWRlcik6CisgICAgICAgIChHZW5lcmF0ZUhlYWRlckN1
c3RvbUNhbGwpOgorICAgICAgICAoR2VuZXJhdGVOb3JtYWxBdHRyR2V0dGVyKToKKyAgICAgICAg
KEdlbmVyYXRlTm9ybWFsQXR0clNldHRlcik6CisgICAgICAgIChHZW5lcmF0ZUltcGxlbWVudGF0
aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0SW50ZXJmYWNl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRlc3RJbnRlcmZhY2VWOEludGVybmFsOjpzdXBwbGVt
ZW50YWxTdHIzQXR0ckdldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpUZXN0SW50ZXJmYWNlVjhJ
bnRlcm5hbDo6c3VwcGxlbWVudGFsU3RyM0F0dHJTZXR0ZXIpOgorICAgICAgICAqIGJpbmRpbmdz
L3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmouY3BwOgorICAgICAgICAoV2ViQ29yZTo6VGVzdE9i
alY4SW50ZXJuYWw6OmN1c3RvbUF0dHJBdHRyR2V0dGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlRl
c3RPYmpWOEludGVybmFsOjpjdXN0b21BdHRyQXR0clNldHRlcik6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5oOgorICAgICAgICAoVjhUZXN0T2JqKToKKyAg
ICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhBdWRpb0J1ZmZlclNvdXJjZU5vZGVDdXN0b20u
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhBdWRpb0J1ZmZlclNvdXJjZU5vZGU6OmJ1ZmZlckF0
dHJTZXR0ZXJDdXN0b20pOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEJpcXVhZEZp
bHRlck5vZGVDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhCaXF1YWRGaWx0ZXJOb2Rl
Ojp0eXBlQXR0clNldHRlckN1c3RvbSk6CisgICAgICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4
Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQ3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4
Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJEOjpzdHJva2VTdHlsZUF0dHJHZXR0ZXJDdXN0b20pOgor
ICAgICAgICAoV2ViQ29yZTo6VjhDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ6OnN0cm9rZVN0eWxl
QXR0clNldHRlckN1c3RvbSk6CisgICAgICAgIChXZWJDb3JlOjpWOENhbnZhc1JlbmRlcmluZ0Nv
bnRleHQyRDo6ZmlsbFN0eWxlQXR0ckdldHRlckN1c3RvbSk6CisgICAgICAgIChXZWJDb3JlOjpW
OENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRDo6ZmlsbFN0eWxlQXR0clNldHRlckN1c3RvbSk6Cisg
ICAgICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4Q2xpcGJvYXJkQ3VzdG9tLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlY4Q2xpcGJvYXJkOjp0eXBlc0F0dHJHZXR0ZXJDdXN0b20pOgorICAgICAg
ICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOENvb3JkaW5hdGVzQ3VzdG9tLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlY4Q29vcmRpbmF0ZXM6OmFsdGl0dWRlQXR0ckdldHRlckN1c3RvbSk6CisgICAg
ICAgIChXZWJDb3JlOjpWOENvb3JkaW5hdGVzOjphbHRpdHVkZUFjY3VyYWN5QXR0ckdldHRlckN1
c3RvbSk6CisgICAgICAgIChXZWJDb3JlOjpWOENvb3JkaW5hdGVzOjpoZWFkaW5nQXR0ckdldHRl
ckN1c3RvbSk6CisgICAgICAgIChXZWJDb3JlOjpWOENvb3JkaW5hdGVzOjpzcGVlZEF0dHJHZXR0
ZXJDdXN0b20pOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEN1c3RvbUV2ZW50Q3Vz
dG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4Q3VzdG9tRXZlbnQ6OmRldGFpbEF0dHJHZXR0
ZXJDdXN0b20pOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3Rv
bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6ZXZlbnRBdHRyR2V0dGVyQ3Vz
dG9tKToKKyAgICAgICAgKFdlYkNvcmU6OlY4RE9NV2luZG93OjpldmVudEF0dHJTZXR0ZXJDdXN0
b20pOgorICAgICAgICAoV2ViQ29yZTo6VjhET01XaW5kb3c6OmxvY2F0aW9uQXR0clNldHRlckN1
c3RvbSk6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6b3BlbmVyQXR0clNldHRlckN1
c3RvbSk6CisgICAgICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGV2aWNlTW90aW9uRXZlbnRD
dXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhEZXZpY2VNb3Rpb25FdmVudDo6YWNjZWxl
cmF0aW9uQXR0ckdldHRlckN1c3RvbSk6CisgICAgICAgIChXZWJDb3JlOjpWOERldmljZU1vdGlv
bkV2ZW50OjphY2NlbGVyYXRpb25JbmNsdWRpbmdHcmF2aXR5QXR0ckdldHRlckN1c3RvbSk6Cisg
ICAgICAgIChXZWJDb3JlOjpWOERldmljZU1vdGlvbkV2ZW50Ojpyb3RhdGlvblJhdGVBdHRyR2V0
dGVyQ3VzdG9tKToKKyAgICAgICAgKFdlYkNvcmU6OlY4RGV2aWNlTW90aW9uRXZlbnQ6OmludGVy
dmFsQXR0ckdldHRlckN1c3RvbSk6CisgICAgICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGV2
aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOERldmlj
ZU9yaWVudGF0aW9uRXZlbnQ6OmFscGhhQXR0ckdldHRlckN1c3RvbSk6CisgICAgICAgIChXZWJD
b3JlOjpWOERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmJldGFBdHRyR2V0dGVyQ3VzdG9tKToKKyAg
ICAgICAgKFdlYkNvcmU6OlY4RGV2aWNlT3JpZW50YXRpb25FdmVudDo6Z2FtbWFBdHRyR2V0dGVy
Q3VzdG9tKToKKyAgICAgICAgKFdlYkNvcmU6OlY4RGV2aWNlT3JpZW50YXRpb25FdmVudDo6YWJz
b2x1dGVBdHRyR2V0dGVyQ3VzdG9tKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhE
b2N1bWVudExvY2F0aW9uQ3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4RG9jdW1lbnQ6
OmxvY2F0aW9uQXR0ckdldHRlckN1c3RvbSk6CisgICAgICAgIChXZWJDb3JlOjpWOERvY3VtZW50
Ojpsb2NhdGlvbkF0dHJTZXR0ZXJDdXN0b20pOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3Rv
bS9WOEV2ZW50Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4RXZlbnQ6OmRhdGFUcmFu
c2ZlckF0dHJHZXR0ZXJDdXN0b20pOgorICAgICAgICAoV2ViQ29yZTo6VjhFdmVudDo6Y2xpcGJv
YXJkRGF0YUF0dHJHZXR0ZXJDdXN0b20pOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9W
OEZpbGVSZWFkZXJDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhGaWxlUmVhZGVyOjpy
ZXN1bHRBdHRyR2V0dGVyQ3VzdG9tKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhI
VE1MRG9jdW1lbnRDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhIVE1MRG9jdW1lbnQ6
OmFsbEF0dHJTZXR0ZXJDdXN0b20pOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEhU
TUxFbGVtZW50Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4SFRNTEVsZW1lbnQ6Oml0
ZW1WYWx1ZUF0dHJHZXR0ZXJDdXN0b20pOgorICAgICAgICAoV2ViQ29yZTo6VjhIVE1MRWxlbWVu
dDo6aXRlbVZhbHVlQXR0clNldHRlckN1c3RvbSk6CisgICAgICAgICogYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4SFRNTEZyYW1lRWxlbWVudEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOEhU
TUxGcmFtZUVsZW1lbnQ6OmxvY2F0aW9uQXR0clNldHRlckN1c3RvbSk6CisgICAgICAgICogYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTElucHV0RWxlbWVudEN1c3RvbS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpWOEhUTUxJbnB1dEVsZW1lbnQ6OnNlbGVjdGlvblN0YXJ0QXR0ckdldHRlckN1c3Rv
bSk6CisgICAgICAgIChXZWJDb3JlOjpWOEhUTUxJbnB1dEVsZW1lbnQ6OnNlbGVjdGlvblN0YXJ0
QXR0clNldHRlckN1c3RvbSk6CisgICAgICAgIChXZWJDb3JlOjpWOEhUTUxJbnB1dEVsZW1lbnQ6
OnNlbGVjdGlvbkVuZEF0dHJHZXR0ZXJDdXN0b20pOgorICAgICAgICAoV2ViQ29yZTo6VjhIVE1M
SW5wdXRFbGVtZW50OjpzZWxlY3Rpb25FbmRBdHRyU2V0dGVyQ3VzdG9tKToKKyAgICAgICAgKFdl
YkNvcmU6OlY4SFRNTElucHV0RWxlbWVudDo6c2VsZWN0aW9uRGlyZWN0aW9uQXR0ckdldHRlckN1
c3RvbSk6CisgICAgICAgIChXZWJDb3JlOjpWOEhUTUxJbnB1dEVsZW1lbnQ6OnNlbGVjdGlvbkRp
cmVjdGlvbkF0dHJTZXR0ZXJDdXN0b20pOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9W
OEhUTUxMaW5rRWxlbWVudEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOEhUTUxMaW5r
RWxlbWVudDo6c2l6ZXNBdHRyR2V0dGVyQ3VzdG9tKToKKyAgICAgICAgKFdlYkNvcmU6OlY4SFRN
TExpbmtFbGVtZW50OjpzaXplc0F0dHJTZXR0ZXJDdXN0b20pOgorICAgICAgICAqIGJpbmRpbmdz
L3Y4L2N1c3RvbS9WOEhUTUxNZWRpYUVsZW1lbnRDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6VjhIVE1MTWVkaWFFbGVtZW50Ojpjb250cm9sbGVyQXR0clNldHRlckN1c3RvbSk6CisgICAg
ICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTE9wdGlvbnNDb2xsZWN0aW9uQ3VzdG9tLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlY4SFRNTE9wdGlvbnNDb2xsZWN0aW9uOjpsZW5ndGhBdHRy
U2V0dGVyQ3VzdG9tKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhIaXN0b3J5Q3Vz
dG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4SGlzdG9yeTo6c3RhdGVBdHRyR2V0dGVyQ3Vz
dG9tKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhKYXZhU2NyaXB0Q2FsbEZyYW1l
Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4SmF2YVNjcmlwdENhbGxGcmFtZTo6c2Nv
cGVDaGFpbkF0dHJHZXR0ZXJDdXN0b20pOgorICAgICAgICAoV2ViQ29yZTo6VjhKYXZhU2NyaXB0
Q2FsbEZyYW1lOjp0aGlzT2JqZWN0QXR0ckdldHRlckN1c3RvbSk6CisgICAgICAgIChXZWJDb3Jl
OjpWOEphdmFTY3JpcHRDYWxsRnJhbWU6OnR5cGVBdHRyR2V0dGVyQ3VzdG9tKToKKyAgICAgICAg
KiBiaW5kaW5ncy92OC9jdXN0b20vVjhMb2NhdGlvbkN1c3RvbS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpWOExvY2F0aW9uOjpoYXNoQXR0clNldHRlckN1c3RvbSk6CisgICAgICAgIChXZWJDb3Jl
OjpWOExvY2F0aW9uOjpob3N0QXR0clNldHRlckN1c3RvbSk6CisgICAgICAgIChXZWJDb3JlOjpW
OExvY2F0aW9uOjpob3N0bmFtZUF0dHJTZXR0ZXJDdXN0b20pOgorICAgICAgICAoV2ViQ29yZTo6
VjhMb2NhdGlvbjo6aHJlZkF0dHJTZXR0ZXJDdXN0b20pOgorICAgICAgICAoV2ViQ29yZTo6VjhM
b2NhdGlvbjo6cGF0aG5hbWVBdHRyU2V0dGVyQ3VzdG9tKToKKyAgICAgICAgKFdlYkNvcmU6OlY4
TG9jYXRpb246OnBvcnRBdHRyU2V0dGVyQ3VzdG9tKToKKyAgICAgICAgKFdlYkNvcmU6OlY4TG9j
YXRpb246OnByb3RvY29sQXR0clNldHRlckN1c3RvbSk6CisgICAgICAgIChXZWJDb3JlOjpWOExv
Y2F0aW9uOjpzZWFyY2hBdHRyU2V0dGVyQ3VzdG9tKToKKyAgICAgICAgKFdlYkNvcmU6OlY4TG9j
YXRpb246OnJlbG9hZEF0dHJHZXR0ZXJDdXN0b20pOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2Nh
dGlvbjo6cmVwbGFjZUF0dHJHZXR0ZXJDdXN0b20pOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2Nh
dGlvbjo6YXNzaWduQXR0ckdldHRlckN1c3RvbSk6CisgICAgICAgICogYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4TWVzc2FnZUV2ZW50Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4TWVzc2Fn
ZUV2ZW50OjpkYXRhQXR0ckdldHRlckN1c3RvbSk6CisgICAgICAgIChXZWJDb3JlOjpWOE1lc3Nh
Z2VFdmVudDo6cG9ydHNBdHRyR2V0dGVyQ3VzdG9tKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9j
dXN0b20vVjhPc2NpbGxhdG9yTm9kZUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOE9z
Y2lsbGF0b3JOb2RlOjp0eXBlQXR0clNldHRlckN1c3RvbSk6CisgICAgICAgICogYmluZGluZ3Mv
djgvY3VzdG9tL1Y4UGFubmVyTm9kZUN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOFBh
bm5lck5vZGU6OnBhbm5pbmdNb2RlbEF0dHJTZXR0ZXJDdXN0b20pOgorICAgICAgICAoV2ViQ29y
ZTo6VjhQYW5uZXJOb2RlOjpkaXN0YW5jZU1vZGVsQXR0clNldHRlckN1c3RvbSk6CisgICAgICAg
ICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4UG9wU3RhdGVFdmVudEN1c3RvbS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpWOFBvcFN0YXRlRXZlbnQ6OnN0YXRlQXR0ckdldHRlckN1c3RvbSk6CisgICAg
ICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4U1ZHTGVuZ3RoQ3VzdG9tLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlY4U1ZHTGVuZ3RoOjp2YWx1ZUF0dHJHZXR0ZXJDdXN0b20pOgorICAgICAgICAo
V2ViQ29yZTo6VjhTVkdMZW5ndGg6OnZhbHVlQXR0clNldHRlckN1c3RvbSk6CisgICAgICAgICog
YmluZGluZ3MvdjgvY3VzdG9tL1Y4VHJhY2tFdmVudEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpWOFRyYWNrRXZlbnQ6OnRyYWNrQXR0ckdldHRlckN1c3RvbSk6CisgICAgICAgICogYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4V2ViS2l0QW5pbWF0aW9uQ3VzdG9tLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlY4V2ViS2l0QW5pbWF0aW9uOjppdGVyYXRpb25Db3VudEF0dHJHZXR0ZXJDdXN0b20p
OgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOFhNTEh0dHBSZXF1ZXN0Q3VzdG9tLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlY4WE1MSHR0cFJlcXVlc3Q6OnJlc3BvbnNlVGV4dEF0dHJH
ZXR0ZXJDdXN0b20pOgorICAgICAgICAoV2ViQ29yZTo6VjhYTUxIdHRwUmVxdWVzdDo6cmVzcG9u
c2VBdHRyR2V0dGVyQ3VzdG9tKToKKwogMjAxMy0wMi0xMiAgS2VudGFybyBIYXJhICA8aGFyYWtl
bkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW1Y4XSBHZW5lcmF0ZSB3cmFwcGVyIG1ldGhvZHMg
Zm9yIGN1c3RvbSBnZXR0ZXJzL3NldHRlcnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KaW5kZXggMDE5YmE5NTUwZjEyMTc2YWUzMjJi
YmY0NzdiY2MyZmZmM2JjMzQ2NC4uOTdhYWE1NzQ5YjQ2ZDdhYmIzNGRmOTE5YzFkNDFiOGFkYjcy
MTgxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9yVjgucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9yVjgucG0KQEAgLTQyNSwxNCArNDI1LDE0IEBAIEVORAogICAgICAgICBpZiAoSGFzQ3Vz
dG9tR2V0dGVyKCRhdHRyRXh0KSAmJiAhJGF0dHJFeHQtPnsiSW1wbGVtZW50ZWRCeSJ9KSB7CiAg
ICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiI2lmICR7Y29uZGl0aW9uYWxTdHJpbmd9
XG4iKSBpZiAkY29uZGl0aW9uYWxTdHJpbmc7CiAgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250
ZW50LCA8PEVORCk7Ci0gICAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiAke25hbWV9QWNj
ZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3Nv
ckluZm8mKTsKKyAgICBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+ICR7bmFtZX1BdHRyR2V0
dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJ
bmZvJik7CiBFTkQKICAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIjZW5kaWYgLy8g
JHtjb25kaXRpb25hbFN0cmluZ31cbiIpIGlmICRjb25kaXRpb25hbFN0cmluZzsKICAgICAgICAg
fQogICAgICAgICBpZiAoSGFzQ3VzdG9tU2V0dGVyKCRhdHRyRXh0KSAmJiAhJGF0dHJFeHQtPnsi
SW1wbGVtZW50ZWRCeSJ9KSB7CiAgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiI2lm
ICR7Y29uZGl0aW9uYWxTdHJpbmd9XG4iKSBpZiAkY29uZGl0aW9uYWxTdHJpbmc7CiAgICAgICAg
ICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCA8PEVORCk7Ci0gICAgc3RhdGljIHZvaWQgJHtuYW1l
fUFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6
OlZhbHVlPiwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYpOworICAgIHN0YXRpYyB2b2lkICR7bmFt
ZX1BdHRyU2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8
djg6OlZhbHVlPiwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYpOwogRU5ECiAgICAgICAgICAgICBw
dXNoKEBoZWFkZXJDb250ZW50LCAiI2VuZGlmIC8vICR7Y29uZGl0aW9uYWxTdHJpbmd9XG4iKSBp
ZiAkY29uZGl0aW9uYWxTdHJpbmc7CiAgICAgICAgIH0KQEAgLTcyOSwxMyArNzI5LDEzIEBAIHN1
YiBHZW5lcmF0ZUhlYWRlckN1c3RvbUNhbGwKICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwg
IiAgICBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGNhbGxBc0Z1bmN0aW9uQ2FsbGJhY2so
Y29uc3Qgdjg6OkFyZ3VtZW50cyYpO1xuIik7CiAgICAgfQogICAgIGlmICgkaW50ZXJmYWNlLT5u
YW1lIGVxICJFdmVudCIpIHsKLSAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0
aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGRhdGFUcmFuc2ZlckFjY2Vzc29yR2V0dGVyKHY4OjpM
b2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJik7XG4iKTsKLSAg
ICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMgdm9pZCB2YWx1ZUFjY2Vzc29y
U2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiwg
Y29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYpO1xuIik7CisgICAgICAgIHB1c2goQGhlYWRlckNvbnRl
bnQsICIgICAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBkYXRhVHJhbnNmZXJBdHRyR2V0
dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJ
bmZvJik7XG4iKTsKKyAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0aWMgdm9p
ZCB2YWx1ZUF0dHJTZXR0ZXJDdXN0b20odjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpM
b2NhbDx2ODo6VmFsdWU+LCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJik7XG4iKTsKICAgICB9CiAg
ICAgaWYgKCRpbnRlcmZhY2UtPm5hbWUgZXEgIkxvY2F0aW9uIikgewotICAgICAgICBwdXNoKEBo
ZWFkZXJDb250ZW50LCAiICAgIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gYXNzaWduQWNj
ZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3Nv
ckluZm8mKTtcbiIpOwotICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHN0YXRpYyB2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gcmVsb2FkQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mKTtcbiIpOwotICAgICAgICBwdXNo
KEBoZWFkZXJDb250ZW50LCAiICAgIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gcmVwbGFj
ZUFjY2Vzc29yR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNj
ZXNzb3JJbmZvJik7XG4iKTsKKyAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICBzdGF0
aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGFzc2lnbkF0dHJHZXR0ZXJDdXN0b20odjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mKTtcbiIpOworICAgICAg
ICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
cmVsb2FkQXR0ckdldHRlckN1c3RvbSh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qg
djg6OkFjY2Vzc29ySW5mbyYpO1xuIik7CisgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsICIg
ICAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiByZXBsYWNlQXR0ckdldHRlckN1c3RvbSh2
ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYpO1xuIik7
CiAgICAgfQogfQogCkBAIC05MDAsNyArOTAwLDcgQEAgRU5ECiAKICAgICBpZiAoSGFzQ3VzdG9t
R2V0dGVyKCRhdHRyRXh0KSkgewogICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCA8PEVO
RCk7Ci0gICAgICAgIHJldHVybiAke3Y4SW50ZXJmYWNlTmFtZX06OiR7YXR0ck5hbWV9QWNjZXNz
b3JHZXR0ZXIobmFtZSwgaW5mbyk7CisgICAgICAgIHJldHVybiAke3Y4SW50ZXJmYWNlTmFtZX06
OiR7YXR0ck5hbWV9QXR0ckdldHRlckN1c3RvbShuYW1lLCBpbmZvKTsKIH0KIAogRU5ECkBAIC0x
MTg2LDcgKzExODYsNyBAQCBzdWIgR2VuZXJhdGVOb3JtYWxBdHRyU2V0dGVyCiAKICAgICBpZiAo
SGFzQ3VzdG9tU2V0dGVyKCRhdHRyRXh0KSkgewogICAgICAgICBwdXNoKEBpbXBsQ29udGVudERl
Y2xzLCA8PEVORCk7Ci0gICAgICAgICR7djhJbnRlcmZhY2VOYW1lfTo6JHthdHRyTmFtZX1BY2Nl
c3NvclNldHRlcihuYW1lLCB2YWx1ZSwgaW5mbyk7CisgICAgICAgICR7djhJbnRlcmZhY2VOYW1l
fTo6JHthdHRyTmFtZX1BdHRyU2V0dGVyQ3VzdG9tKG5hbWUsIHZhbHVlLCBpbmZvKTsKIH0KIAog
RU5ECkBAIC0zMDg5LDkgKzMwODksOSBAQCBFTkQKIAogICAgIC8vIEZvciBzZWN1cml0eSByZWFz
b25zLCB0aGVzZSBmdW5jdGlvbnMgYXJlIG9uIHRoZSBpbnN0YW5jZSBpbnN0ZWFkCiAgICAgLy8g
b2Ygb24gdGhlIHByb3RvdHlwZSBvYmplY3QgdG8gZW5zdXJlIHRoYXQgdGhleSBjYW5ub3QgYmUg
b3ZlcndyaXR0ZW4uCi0gICAgaW5zdGFuY2UtPlNldEFjY2Vzc29yKHY4OjpTdHJpbmc6Ok5ld1N5
bWJvbCgicmVsb2FkIiksIFY4TG9jYXRpb246OnJlbG9hZEFjY2Vzc29yR2V0dGVyLCAwLCB2OFVu
ZGVmaW5lZCgpLCB2ODo6QUxMX0NBTl9SRUFELCBzdGF0aWNfY2FzdDx2ODo6UHJvcGVydHlBdHRy
aWJ1dGU+KHY4OjpEb250RGVsZXRlIHwgdjg6OlJlYWRPbmx5KSk7Ci0gICAgaW5zdGFuY2UtPlNl
dEFjY2Vzc29yKHY4OjpTdHJpbmc6Ok5ld1N5bWJvbCgicmVwbGFjZSIpLCBWOExvY2F0aW9uOjpy
ZXBsYWNlQWNjZXNzb3JHZXR0ZXIsIDAsIHY4VW5kZWZpbmVkKCksIHY4OjpBTExfQ0FOX1JFQUQs
IHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJpYnV0ZT4odjg6OkRvbnREZWxldGUgfCB2ODo6
UmVhZE9ubHkpKTsKLSAgICBpbnN0YW5jZS0+U2V0QWNjZXNzb3Iodjg6OlN0cmluZzo6TmV3U3lt
Ym9sKCJhc3NpZ24iKSwgVjhMb2NhdGlvbjo6YXNzaWduQWNjZXNzb3JHZXR0ZXIsIDAsIHY4VW5k
ZWZpbmVkKCksIHY4OjpBTExfQ0FOX1JFQUQsIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0dHJp
YnV0ZT4odjg6OkRvbnREZWxldGUgfCB2ODo6UmVhZE9ubHkpKTsKKyAgICBpbnN0YW5jZS0+U2V0
QWNjZXNzb3Iodjg6OlN0cmluZzo6TmV3U3ltYm9sKCJyZWxvYWQiKSwgVjhMb2NhdGlvbjo6cmVs
b2FkQXR0ckdldHRlckN1c3RvbSwgMCwgdjhVbmRlZmluZWQoKSwgdjg6OkFMTF9DQU5fUkVBRCwg
c3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6RG9udERlbGV0ZSB8IHY4OjpS
ZWFkT25seSkpOworICAgIGluc3RhbmNlLT5TZXRBY2Nlc3Nvcih2ODo6U3RyaW5nOjpOZXdTeW1i
b2woInJlcGxhY2UiKSwgVjhMb2NhdGlvbjo6cmVwbGFjZUF0dHJHZXR0ZXJDdXN0b20sIDAsIHY4
VW5kZWZpbmVkKCksIHY4OjpBTExfQ0FOX1JFQUQsIHN0YXRpY19jYXN0PHY4OjpQcm9wZXJ0eUF0
dHJpYnV0ZT4odjg6OkRvbnREZWxldGUgfCB2ODo6UmVhZE9ubHkpKTsKKyAgICBpbnN0YW5jZS0+
U2V0QWNjZXNzb3Iodjg6OlN0cmluZzo6TmV3U3ltYm9sKCJhc3NpZ24iKSwgVjhMb2NhdGlvbjo6
YXNzaWduQXR0ckdldHRlckN1c3RvbSwgMCwgdjhVbmRlZmluZWQoKSwgdjg6OkFMTF9DQU5fUkVB
RCwgc3RhdGljX2Nhc3Q8djg6OlByb3BlcnR5QXR0cmlidXRlPih2ODo6RG9udERlbGV0ZSB8IHY4
OjpSZWFkT25seSkpOwogRU5ECiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0SW50ZXJmYWNlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RJbnRlcmZhY2UuY3BwCmluZGV4IDFk
YTkzMmNiNDFhZTA1ZDZjZjI3OTE5OWYxMzlhZTQ2ZWYzNjE1MzYuLmVjMDZmODY4ZDMyMTU1MTgx
N2NjNWY2NjQ3NzJkYTg5NTcxM2ZlZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RJbnRlcmZhY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RJbnRlcmZhY2UuY3BwCkBAIC0xMzMs
NyArMTMzLDcgQEAgc3RhdGljIHZvaWQgc3VwcGxlbWVudGFsU3RyMkF0dHJTZXR0ZXIodjg6Okxv
Y2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODoKIAogc3RhdGljIHY4OjpIYW5kbGU8
djg6OlZhbHVlPiBzdXBwbGVtZW50YWxTdHIzQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmlu
Zz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKLSAgICAgICAgcmV0dXJu
IFY4VGVzdEludGVyZmFjZTo6c3VwcGxlbWVudGFsU3RyM0FjY2Vzc29yR2V0dGVyKG5hbWUsIGlu
Zm8pOworICAgICAgICByZXR1cm4gVjhUZXN0SW50ZXJmYWNlOjpzdXBwbGVtZW50YWxTdHIzQXR0
ckdldHRlckN1c3RvbShuYW1lLCBpbmZvKTsKIH0KIAogI2VuZGlmIC8vIEVOQUJMRShDb25kaXRp
b24xMSkgfHwgRU5BQkxFKENvbmRpdGlvbjEyKQpAQCAtMTQyLDcgKzE0Miw3IEBAIHN0YXRpYyB2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gc3VwcGxlbWVudGFsU3RyM0F0dHJHZXR0ZXIodjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hCiAKIHN0YXRpYyB2b2lkIHN1cHBsZW1lbnRhbFN0cjNBdHRyU2V0dGVy
KHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwg
Y29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKLSAgICAgICAgVjhUZXN0SW50ZXJmYWNl
OjpzdXBwbGVtZW50YWxTdHIzQWNjZXNzb3JTZXR0ZXIobmFtZSwgdmFsdWUsIGluZm8pOworICAg
ICAgICBWOFRlc3RJbnRlcmZhY2U6OnN1cHBsZW1lbnRhbFN0cjNBdHRyU2V0dGVyQ3VzdG9tKG5h
bWUsIHZhbHVlLCBpbmZvKTsKIH0KIAogI2VuZGlmIC8vIEVOQUJMRShDb25kaXRpb24xMSkgfHwg
RU5BQkxFKENvbmRpdGlvbjEyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcAppbmRleCA3ZmEwNWQyMWVhYTZhZTVlNzkyOWQz
MjBjYWVkYWZhMjBiOTk3ODE2Li5lMDk3MTgxYzI3NWM4N2U1Y2YyYWE2NDJiZjhmODRhMTRlNWI0
ZWUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgv
VjhUZXN0T2JqLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
VjgvVjhUZXN0T2JqLmNwcApAQCAtNTAyLDEyICs1MDIsMTIgQEAgc3RhdGljIHZvaWQgc3RyaW5n
QXR0cldpdGhTZXR0ZXJFeGNlcHRpb25BdHRyU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBu
YW1lLAogCiBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGN1c3RvbUF0dHJBdHRyR2V0dGVy
KHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZv
KQogewotICAgICAgICByZXR1cm4gVjhUZXN0T2JqOjpjdXN0b21BdHRyQWNjZXNzb3JHZXR0ZXIo
bmFtZSwgaW5mbyk7CisgICAgICAgIHJldHVybiBWOFRlc3RPYmo6OmN1c3RvbUF0dHJBdHRyR2V0
dGVyQ3VzdG9tKG5hbWUsIGluZm8pOwogfQogCiBzdGF0aWMgdm9pZCBjdXN0b21BdHRyQXR0clNl
dHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFs
dWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7Ci0gICAgICAgIFY4VGVzdE9iajo6
Y3VzdG9tQXR0ckFjY2Vzc29yU2V0dGVyKG5hbWUsIHZhbHVlLCBpbmZvKTsKKyAgICAgICAgVjhU
ZXN0T2JqOjpjdXN0b21BdHRyQXR0clNldHRlckN1c3RvbShuYW1lLCB2YWx1ZSwgaW5mbyk7CiB9
CiAKIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gd2l0aFNjcmlwdFN0YXRlQXR0cmlidXRl
QXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29y
SW5mbyYgaW5mbykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9WOC9WOFRlc3RPYmouaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9WOC9WOFRlc3RPYmouaAppbmRleCBiYzZiMDI3MTYzZGM3ZjQ1NTFkYjVkMTFkNTI0MGFmOWI2
MmU5ZTVkLi40ZDViM2NjMzkxNTVjZTcxMjViNTNhNTFjMmVhYTcwZTZhN2EyMTAwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5o
CkBAIC00Nyw4ICs0Nyw4IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFs
dWU+IGN1c3RvbU1ldGhvZFdpdGhBcmdzQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYpOwog
ICAgIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY2xhc3NNZXRob2QyQ2FsbGJhY2soY29u
c3Qgdjg6OkFyZ3VtZW50cyYpOwogICAgIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY29u
c3RydWN0b3JDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJik7Ci0gICAgc3RhdGljIHY4OjpI
YW5kbGU8djg6OlZhbHVlPiBjdXN0b21BdHRyQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mKTsKLSAgICBzdGF0aWMgdm9pZCBj
dXN0b21BdHRyQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpM
b2NhbDx2ODo6VmFsdWU+LCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJik7CisgICAgc3RhdGljIHY4
OjpIYW5kbGU8djg6OlZhbHVlPiBjdXN0b21BdHRyQXR0ckdldHRlckN1c3RvbSh2ODo6TG9jYWw8
djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYpOworICAgIHN0YXRpYyB2
b2lkIGN1c3RvbUF0dHJBdHRyU2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1l
LCB2ODo6TG9jYWw8djg6OlZhbHVlPiwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYpOwogICAgIHN0
YXRpYyBjb25zdCBpbnQgaW50ZXJuYWxGaWVsZENvdW50ID0gdjhEZWZhdWx0V3JhcHBlckludGVy
bmFsRmllbGRDb3VudCArIDA7CiAgICAgc3RhdGljIHZvaWQgaW5zdGFsbFBlckNvbnRleHRQcm9w
ZXJ0aWVzKHY4OjpIYW5kbGU8djg6Ok9iamVjdD4sIFRlc3RPYmoqLCB2ODo6SXNvbGF0ZSopOwog
ICAgIHN0YXRpYyB2b2lkIGluc3RhbGxQZXJDb250ZXh0UHJvdG90eXBlUHJvcGVydGllcyh2ODo6
SGFuZGxlPHY4OjpPYmplY3Q+LCB2ODo6SXNvbGF0ZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4QXVkaW9CdWZmZXJTb3VyY2VOb2RlQ3VzdG9tLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEF1ZGlvQnVmZmVyU291cmNl
Tm9kZUN1c3RvbS5jcHAKaW5kZXggMTM1NmRhYTg1MWRmNjc0MmQzNjQwMWYzMWRlOTM3ZWNlZWIz
MTE1OS4uNTQ1Y2YyYjFkZGI0MzIyNDg4ZDc2NDIyYWU3OWVmMDU1OWQyNDAxYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4QXVkaW9CdWZmZXJTb3VyY2VO
b2RlQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhB
dWRpb0J1ZmZlclNvdXJjZU5vZGVDdXN0b20uY3BwCkBAIC0zNiw3ICszNiw3IEBACiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAotdm9pZCBWOEF1ZGlvQnVmZmVyU291cmNlTm9kZTo6YnVmZmVyQWNj
ZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFs
dWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordm9pZCBWOEF1ZGlvQnVm
ZmVyU291cmNlTm9kZTo6YnVmZmVyQXR0clNldHRlckN1c3RvbSh2ODo6TG9jYWw8djg6OlN0cmlu
Zz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3Nvcklu
Zm8mIGluZm8pCiB7CiAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBob2xkZXIgPSBpbmZvLkhv
bGRlcigpOwogICAgIEF1ZGlvQnVmZmVyU291cmNlTm9kZSogaW1wID0gVjhBdWRpb0J1ZmZlclNv
dXJjZU5vZGU6OnRvTmF0aXZlKGhvbGRlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9jdXN0b20vVjhCaXF1YWRGaWx0ZXJOb2RlQ3VzdG9tLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEJpcXVhZEZpbHRlck5vZGVDdXN0b20uY3BwCmlu
ZGV4IDU3MTcwZjg3OTdkNDgzZGFhNDQxZjQ4NWY5YTdkY2QyNjRhM2Y3YzAuLmZhMDEzYWMzNDQ2
ZGQzNzM3MjRmZjdiODhlMzNlMDAzN2RjZGFiMmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEJpcXVhZEZpbHRlck5vZGVDdXN0b20uY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEJpcXVhZEZpbHRlck5vZGVDdXN0b20u
Y3BwCkBAIC0zNCw3ICszNCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotdm9pZCBWOEJp
cXVhZEZpbHRlck5vZGU6OnR5cGVBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4g
bmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8m
IGluZm8pCit2b2lkIFY4QmlxdWFkRmlsdGVyTm9kZTo6dHlwZUF0dHJTZXR0ZXJDdXN0b20odjg6
OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25z
dCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIEJpcXVhZEZpbHRlck5vZGUqIGltcCA9
IFY4QmlxdWFkRmlsdGVyTm9kZTo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOENhbnZhc1JlbmRlcmluZ0Nv
bnRleHQyREN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhD
YW52YXNSZW5kZXJpbmdDb250ZXh0MkRDdXN0b20uY3BwCmluZGV4IDNhMzcwNzQ4NWNkZWUxNjJi
NGQ2ZTFiNTNiY2JiZDJkYjJlZDlhOWUuLjVjZGExM2E2MDM4ZmNlMzNjYzc0ZTA2MDdjYzIxZjhh
Y2IyMDQyODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9W
OENhbnZhc1JlbmRlcmluZ0NvbnRleHQyREN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvY3VzdG9tL1Y4Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJEQ3VzdG9tLmNwcApA
QCAtNzAsMTMgKzcwLDEzIEBAIHN0YXRpYyBQYXNzUmVmUHRyPENhbnZhc1N0eWxlPiB0b0NhbnZh
c1N0eWxlKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSwgdjg6OklzCiAgICAgcmV0dXJuIDA7
CiB9CiAKLXY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRDo6
c3Ryb2tlU3R5bGVBY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29u
c3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3Y4OjpIYW5kbGU8djg6OlZhbHVlPiBWOENhbnZh
c1JlbmRlcmluZ0NvbnRleHQyRDo6c3Ryb2tlU3R5bGVBdHRyR2V0dGVyQ3VzdG9tKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAg
IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCogaW1wbCA9IFY4Q2FudmFzUmVuZGVyaW5nQ29udGV4
dDJEOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKICAgICByZXR1cm4gdG9WOE9iamVjdChpbXBs
LT5zdHJva2VTdHlsZSgpLCBpbmZvLkhvbGRlcigpLCBpbmZvLkdldElzb2xhdGUoKSk7CiB9CiAK
LXZvaWQgVjhDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ6OnN0cm9rZVN0eWxlQWNjZXNzb3JTZXR0
ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVl
LCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordm9pZCBWOENhbnZhc1JlbmRlcmluZ0Nv
bnRleHQyRDo6c3Ryb2tlU3R5bGVBdHRyU2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5n
PiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5m
byYgaW5mbykKIHsKICAgICBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQqIGltcGwgPSBWOENhbnZh
c1JlbmRlcmluZ0NvbnRleHQyRDo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CiAgICAgaWYgKHZh
bHVlLT5Jc1N0cmluZygpKQpAQCAtODUsMTMgKzg1LDEzIEBAIHZvaWQgVjhDYW52YXNSZW5kZXJp
bmdDb250ZXh0MkQ6OnN0cm9rZVN0eWxlQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJp
bmc+CiAgICAgICAgIGltcGwtPnNldFN0cm9rZVN0eWxlKHRvQ2FudmFzU3R5bGUodmFsdWUsIGlu
Zm8uR2V0SXNvbGF0ZSgpKSk7CiB9CiAKLXY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOENhbnZhc1Jl
bmRlcmluZ0NvbnRleHQyRDo6ZmlsbFN0eWxlQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gVjhDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ6OmZpbGxTdHlsZUF0dHJHZXR0ZXJD
dXN0b20odjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8m
IGluZm8pCiB7CiAgICAgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEKiBpbXBsID0gVjhDYW52YXNS
ZW5kZXJpbmdDb250ZXh0MkQ6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwogICAgIHJldHVybiB0
b1Y4T2JqZWN0KGltcGwtPmZpbGxTdHlsZSgpLCBpbmZvLkhvbGRlcigpLCBpbmZvLkdldElzb2xh
dGUoKSk7CiB9CiAKLXZvaWQgVjhDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ6OmZpbGxTdHlsZUFj
Y2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZh
bHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3ZvaWQgVjhDYW52YXNS
ZW5kZXJpbmdDb250ZXh0MkQ6OmZpbGxTdHlsZUF0dHJTZXR0ZXJDdXN0b20odjg6OkxvY2FsPHY4
OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNj
ZXNzb3JJbmZvJiBpbmZvKQogewogICAgIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCogaW1wbCA9
IFY4Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJEOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKICAg
ICBpZiAodmFsdWUtPklzU3RyaW5nKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9jdXN0b20vVjhDbGlwYm9hcmRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4Q2xpcGJvYXJkQ3VzdG9tLmNwcAppbmRleCBmMzRhMzI2ZWUyN2Fm
NDUzNmQyMDE0ZTBmZWM2MmVjNzJjZmNhYjYwLi5hNGQyMzM1ZGIxNjgxODc2YzgzZjVlN2M1NzI1
MzEzMjFjOGFhMDdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0
b20vVjhDbGlwYm9hcmRDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L2N1c3RvbS9WOENsaXBib2FyZEN1c3RvbS5jcHAKQEAgLTQzLDcgKzQzLDcgQEAKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCi12ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhDbGlwYm9hcmQ6OnR5cGVz
QWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nl
c3NvckluZm8mIGluZm8pCit2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhDbGlwYm9hcmQ6OnR5cGVz
QXR0ckdldHRlckN1c3RvbSh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFj
Y2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBDbGlwYm9hcmQqIGNsaXBib2FyZCA9IFY4Q2xpcGJv
YXJkOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4Q29vcmRpbmF0ZXNDdXN0b20uY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4Q29vcmRpbmF0ZXNDdXN0b20uY3BwCmluZGV4IGNl
OGIxMzg5MzVlODNmY2I4YmU0NmVhN2ZmMjcyZGQ0ZjA0ZDBiMmQuLmQ4ZDg4ZTJhYTc0NmU3M2Q4
OTFlMzI2ZDdmZTc1MjE1NjI0OTlmMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L2N1c3RvbS9WOENvb3JkaW5hdGVzQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9jdXN0b20vVjhDb29yZGluYXRlc0N1c3RvbS5jcHAKQEAgLTMxLDcgKzMx
LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi12ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhD
b29yZGluYXRlczo6YWx0aXR1ZGVBY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4g
bmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3Y4OjpIYW5kbGU8djg6OlZhbHVl
PiBWOENvb3JkaW5hdGVzOjphbHRpdHVkZUF0dHJHZXR0ZXJDdXN0b20odjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgdjg6Okhh
bmRsZTx2ODo6T2JqZWN0PiBob2xkZXIgPSBpbmZvLkhvbGRlcigpOwogICAgIENvb3JkaW5hdGVz
KiBpbXAgPSBWOENvb3JkaW5hdGVzOjp0b05hdGl2ZShob2xkZXIpOwpAQCAtNDAsNyArNDAsNyBA
QCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhDb29yZGluYXRlczo6YWx0aXR1ZGVBY2Nlc3Nvckdl
dHRlcih2ODo6TG9jYWw8djg6OlN0cmluZwogICAgIHJldHVybiB2ODo6TnVtYmVyOjpOZXcoaW1w
LT5hbHRpdHVkZSgpKTsKIH0KIAotdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4Q29vcmRpbmF0ZXM6
OmFsdGl0dWRlQWNjdXJhY3lBY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFt
ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3Y4OjpIYW5kbGU8djg6OlZhbHVlPiBW
OENvb3JkaW5hdGVzOjphbHRpdHVkZUFjY3VyYWN5QXR0ckdldHRlckN1c3RvbSh2ODo6TG9jYWw8
djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICB2
ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGhvbGRlciA9IGluZm8uSG9sZGVyKCk7CiAgICAgQ29vcmRp
bmF0ZXMqIGltcCA9IFY4Q29vcmRpbmF0ZXM6OnRvTmF0aXZlKGhvbGRlcik7CkBAIC00OSw3ICs0
OSw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOENvb3JkaW5hdGVzOjphbHRpdHVkZUFjY3Vy
YWN5QWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4CiAgICAgcmV0dXJuIHY4OjpOdW1iZXI6Ok5l
dyhpbXAtPmFsdGl0dWRlQWNjdXJhY3koKSk7CiB9CiAKLXY4OjpIYW5kbGU8djg6OlZhbHVlPiBW
OENvb3JkaW5hdGVzOjpoZWFkaW5nQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+
IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gVjhDb29yZGluYXRlczo6aGVhZGluZ0F0dHJHZXR0ZXJDdXN0b20odjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgdjg6Okhh
bmRsZTx2ODo6T2JqZWN0PiBob2xkZXIgPSBpbmZvLkhvbGRlcigpOwogICAgIENvb3JkaW5hdGVz
KiBpbXAgPSBWOENvb3JkaW5hdGVzOjp0b05hdGl2ZShob2xkZXIpOwpAQCAtNTgsNyArNTgsNyBA
QCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhDb29yZGluYXRlczo6aGVhZGluZ0FjY2Vzc29yR2V0
dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPgogICAgIHJldHVybiB2ODo6TnVtYmVyOjpOZXcoaW1w
LT5oZWFkaW5nKCkpOwogfQogCi12ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhDb29yZGluYXRlczo6
c3BlZWRBY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6
OkFjY2Vzc29ySW5mbyYgaW5mbykKK3Y4OjpIYW5kbGU8djg6OlZhbHVlPiBWOENvb3JkaW5hdGVz
OjpzcGVlZEF0dHJHZXR0ZXJDdXN0b20odjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0
IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBo
b2xkZXIgPSBpbmZvLkhvbGRlcigpOwogICAgIENvb3JkaW5hdGVzKiBpbXAgPSBWOENvb3JkaW5h
dGVzOjp0b05hdGl2ZShob2xkZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvY3VzdG9tL1Y4Q3VzdG9tRXZlbnRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4Q3VzdG9tRXZlbnRDdXN0b20uY3BwCmluZGV4IDg1YjZmYjBhNjZm
MWFmYjAyYTcyMGRmNjYxYjRlMzM5ZTU0YTMxMGMuLjViYzIwODNmN2ZiZGNlZTE4ZDVlZTdhZDVj
NDU4M2JiZGNhMmRmMWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1
c3RvbS9WOEN1c3RvbUV2ZW50Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9jdXN0b20vVjhDdXN0b21FdmVudEN1c3RvbS5jcHAKQEAgLTQ2LDcgKzQ2LDcgQEAKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCi12ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhDdXN0b21FdmVu
dDo6ZGV0YWlsQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0
IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhDdXN0b21F
dmVudDo6ZGV0YWlsQXR0ckdldHRlckN1c3RvbSh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwg
Y29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBDdXN0b21FdmVudCogaW1wID0g
VjhDdXN0b21FdmVudDo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CiAgICAgUmVmUHRyPFNlcmlh
bGl6ZWRTY3JpcHRWYWx1ZT4gc2VyaWFsaXplZCA9IGltcC0+c2VyaWFsaXplZFNjcmlwdFZhbHVl
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01X
aW5kb3dDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9N
V2luZG93Q3VzdG9tLmNwcAppbmRleCBlMTUxMTM3Y2U2MWU2MzZiM2U4MmU4ZTQxYTQ3OGVlNTE5
MDRjYzM2Li43ZWFlNzcwOTUyMTZmOTQ1MjkyYjViZWQ1MzBhNzBmMTEzNTk4MTJiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1
c3RvbS5jcHAKQEAgLTE0NCw3ICsxNDQsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gV2luZG93
U2V0VGltZW91dEltcGwoY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncywgYm9vbCBzaW5nbAogICAg
IHJldHVybiB2OEludGVnZXIoaWQsIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKIH0KIAotdjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IFY4RE9NV2luZG93OjpldmVudEFjY2Vzc29yR2V0dGVyKHY4OjpMb2NhbDx2
ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IFY4RE9NV2luZG93OjpldmVudEF0dHJHZXR0ZXJDdXN0b20odjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAg
djg6OkhhbmRsZTx2ODo6T2JqZWN0PiBob2xkZXIgPSBpbmZvLlRoaXMoKS0+RmluZEluc3RhbmNl
SW5Qcm90b3R5cGVDaGFpbihWOERPTVdpbmRvdzo6R2V0VGVtcGxhdGUoaW5mby5HZXRJc29sYXRl
KCkpKTsKICAgICBpZiAoaG9sZGVyLklzRW1wdHkoKSkKQEAgLTE2Niw3ICsxNjYsNyBAQCB2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gVjhET01XaW5kb3c6OmV2ZW50QWNjZXNzb3JHZXR0ZXIodjg6Okxv
Y2FsPHY4OjpTdHJpbmc+IG5hbQogICAgIHJldHVybiBqc0V2ZW50OwogfQogCi12b2lkIFY4RE9N
V2luZG93OjpldmVudEFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2
ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykK
K3ZvaWQgVjhET01XaW5kb3c6OmV2ZW50QXR0clNldHRlckN1c3RvbSh2ODo6TG9jYWw8djg6OlN0
cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3Nv
ckluZm8mIGluZm8pCiB7CiAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBob2xkZXIgPSBpbmZv
LlRoaXMoKS0+RmluZEluc3RhbmNlSW5Qcm90b3R5cGVDaGFpbihWOERPTVdpbmRvdzo6R2V0VGVt
cGxhdGUoaW5mby5HZXRJc29sYXRlKCkpKTsKICAgICBpZiAoaG9sZGVyLklzRW1wdHkoKSkKQEAg
LTE4NSw3ICsxODUsNyBAQCB2b2lkIFY4RE9NV2luZG93OjpldmVudEFjY2Vzc29yU2V0dGVyKHY4
OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OgogICAgIGNvbnRleHQtPkds
b2JhbCgpLT5TZXRIaWRkZW5WYWx1ZShldmVudFN5bWJvbCwgdmFsdWUpOwogfQogCi12b2lkIFY4
RE9NV2luZG93Ojpsb2NhdGlvbkFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBu
YW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYg
aW5mbykKK3ZvaWQgVjhET01XaW5kb3c6OmxvY2F0aW9uQXR0clNldHRlckN1c3RvbSh2ODo6TG9j
YWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4
OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgRE9NV2luZG93KiBpbXAgPSBWOERPTVdpbmRv
dzo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CiAgICAgQmluZGluZ1N0YXRlKiBzdGF0ZSA9IEJp
bmRpbmdTdGF0ZTo6aW5zdGFuY2UoKTsKQEAgLTIwMiw3ICsyMDIsNyBAQCB2b2lkIFY4RE9NV2lu
ZG93Ojpsb2NhdGlvbkFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2
ODo6TG9jYWw8dgogICAgICAgICBsb2NhdGlvbi0+c2V0SHJlZih0b1dlYkNvcmVTdHJpbmcodmFs
dWUpLCBhY3RpdmUsIGZpcnN0KTsKIH0KIAotdm9pZCBWOERPTVdpbmRvdzo6b3BlbmVyQWNjZXNz
b3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+
IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordm9pZCBWOERPTVdpbmRvdzo6
b3BlbmVyQXR0clNldHRlckN1c3RvbSh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6Okxv
Y2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAg
ICAgRE9NV2luZG93KiBpbXAgPSBWOERPTVdpbmRvdzo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERldmlj
ZU1vdGlvbkV2ZW50Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3Rv
bS9WOERldmljZU1vdGlvbkV2ZW50Q3VzdG9tLmNwcAppbmRleCA5ZWY5YTg4MmJmODI5OTRhY2Fh
NTcwYWM3MmNiMmNmYzNkYzNkYTE3Li5kOWE2ZDYxOGFmOTI5M2RjMjZlMzExMmY3NTBlODVhMTM0
YTQ0NjA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhE
ZXZpY2VNb3Rpb25FdmVudEN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
djgvY3VzdG9tL1Y4RGV2aWNlTW90aW9uRXZlbnRDdXN0b20uY3BwCkBAIC0xMjEsNyArMTIxLDcg
QEAgUmVmUHRyPERldmljZU1vdGlvbkRhdGE6OlJvdGF0aW9uUmF0ZT4gcmVhZFJvdGF0aW9uUmF0
ZUFyZ3VtZW50KHY4OjpMb2NhbDx2ODo6VmEKIAogfSAvLyBuYW1lc3BhY2UKIAotdjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IFY4RGV2aWNlTW90aW9uRXZlbnQ6OmFjY2VsZXJhdGlvbkFjY2Vzc29yR2V0
dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBp
bmZvKQordjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RGV2aWNlTW90aW9uRXZlbnQ6OmFjY2VsZXJh
dGlvbkF0dHJHZXR0ZXJDdXN0b20odjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4
OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBob2xk
ZXIgPSBpbmZvLkhvbGRlcigpOwogICAgIERldmljZU1vdGlvbkV2ZW50KiBpbXAgPSBWOERldmlj
ZU1vdGlvbkV2ZW50Ojp0b05hdGl2ZShob2xkZXIpOwpAQCAtMTMwLDcgKzEzMCw3IEBAIHY4OjpI
YW5kbGU8djg6OlZhbHVlPiBWOERldmljZU1vdGlvbkV2ZW50OjphY2NlbGVyYXRpb25BY2Nlc3Nv
ckdldHRlcih2ODo6TG9jYWw8CiAgICAgcmV0dXJuIGNyZWF0ZUFjY2VsZXJhdGlvbk9iamVjdChp
bXAtPmRldmljZU1vdGlvbkRhdGEoKS0+YWNjZWxlcmF0aW9uKCksIGluZm8uR2V0SXNvbGF0ZSgp
KTsKIH0KIAotdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RGV2aWNlTW90aW9uRXZlbnQ6OmFjY2Vs
ZXJhdGlvbkluY2x1ZGluZ0dyYXZpdHlBY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmlu
Zz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3Y4OjpIYW5kbGU8djg6OlZh
bHVlPiBWOERldmljZU1vdGlvbkV2ZW50OjphY2NlbGVyYXRpb25JbmNsdWRpbmdHcmF2aXR5QXR0
ckdldHRlckN1c3RvbSh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vz
c29ySW5mbyYgaW5mbykKIHsKICAgICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGhvbGRlciA9IGlu
Zm8uSG9sZGVyKCk7CiAgICAgRGV2aWNlTW90aW9uRXZlbnQqIGltcCA9IFY4RGV2aWNlTW90aW9u
RXZlbnQ6OnRvTmF0aXZlKGhvbGRlcik7CkBAIC0xMzksNyArMTM5LDcgQEAgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IFY4RGV2aWNlTW90aW9uRXZlbnQ6OmFjY2VsZXJhdGlvbkluY2x1ZGluZ0dyYXZp
dHlBY2Nlc3NvckcKICAgICByZXR1cm4gY3JlYXRlQWNjZWxlcmF0aW9uT2JqZWN0KGltcC0+ZGV2
aWNlTW90aW9uRGF0YSgpLT5hY2NlbGVyYXRpb25JbmNsdWRpbmdHcmF2aXR5KCksIGluZm8uR2V0
SXNvbGF0ZSgpKTsKIH0KIAotdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RGV2aWNlTW90aW9uRXZl
bnQ6OnJvdGF0aW9uUmF0ZUFjY2Vzc29yR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1l
LCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4
RGV2aWNlTW90aW9uRXZlbnQ6OnJvdGF0aW9uUmF0ZUF0dHJHZXR0ZXJDdXN0b20odjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAg
djg6OkhhbmRsZTx2ODo6T2JqZWN0PiBob2xkZXIgPSBpbmZvLkhvbGRlcigpOwogICAgIERldmlj
ZU1vdGlvbkV2ZW50KiBpbXAgPSBWOERldmljZU1vdGlvbkV2ZW50Ojp0b05hdGl2ZShob2xkZXIp
OwpAQCAtMTQ4LDcgKzE0OCw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOERldmljZU1vdGlv
bkV2ZW50Ojpyb3RhdGlvblJhdGVBY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8CiAgICAgcmV0dXJu
IGNyZWF0ZVJvdGF0aW9uUmF0ZU9iamVjdChpbXAtPmRldmljZU1vdGlvbkRhdGEoKS0+cm90YXRp
b25SYXRlKCksIGluZm8uR2V0SXNvbGF0ZSgpKTsKIH0KIAotdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IFY4RGV2aWNlTW90aW9uRXZlbnQ6OmludGVydmFsQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4
OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4gVjhEZXZpY2VNb3Rpb25FdmVudDo6aW50ZXJ2YWxBdHRyR2V0dGVyQ3VzdG9t
KHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZv
KQogewogICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gaG9sZGVyID0gaW5mby5Ib2xkZXIoKTsK
ICAgICBEZXZpY2VNb3Rpb25FdmVudCogaW1wID0gVjhEZXZpY2VNb3Rpb25FdmVudDo6dG9OYXRp
dmUoaG9sZGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3Rv
bS9WOERldmljZU9yaWVudGF0aW9uRXZlbnRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4RGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAKaW5kZXgg
YWQ0NzNiNjdmOGE3ZWEwODM0ZjgxYmE4YmYwMDQ5OTgzOTFhNmM2MS4uZjNiMTdjOTVkYjZkMTZj
ZWNmZjJiZmE0ZDM5ZGE2ZGNkOTVjNWVmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4RGV2aWNlT3JpZW50YXRpb25FdmVudEN1c3RvbS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RGV2aWNlT3JpZW50YXRpb25FdmVu
dEN1c3RvbS5jcHAKQEAgLTM1LDcgKzM1LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi12
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjphbHBoYUFjY2Vz
c29yR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJ
bmZvJiBpbmZvKQordjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RGV2aWNlT3JpZW50YXRpb25FdmVu
dDo6YWxwaGFBdHRyR2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25z
dCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4g
aG9sZGVyID0gaW5mby5Ib2xkZXIoKTsKICAgICBEZXZpY2VPcmllbnRhdGlvbkV2ZW50KiBpbXAg
PSBWOERldmljZU9yaWVudGF0aW9uRXZlbnQ6OnRvTmF0aXZlKGhvbGRlcik7CkBAIC00NCw3ICs0
NCw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOERldmljZU9yaWVudGF0aW9uRXZlbnQ6OmFs
cGhhQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4CiAgICAgcmV0dXJuIHY4OjpOdW1iZXI6Ok5l
dyhpbXAtPm9yaWVudGF0aW9uKCktPmFscGhhKCkpOwogfQogCi12ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpiZXRhQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpiZXRhQXR0ckdldHRlckN1
c3RvbSh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYg
aW5mbykKIHsKICAgICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGhvbGRlciA9IGluZm8uSG9sZGVy
KCk7CiAgICAgRGV2aWNlT3JpZW50YXRpb25FdmVudCogaW1wID0gVjhEZXZpY2VPcmllbnRhdGlv
bkV2ZW50Ojp0b05hdGl2ZShob2xkZXIpOwpAQCAtNTMsNyArNTMsNyBAQCB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjpiZXRhQWNjZXNzb3JHZXR0ZXIodjg6
OkxvY2FsPHY4OgogICAgIHJldHVybiB2ODo6TnVtYmVyOjpOZXcoaW1wLT5vcmllbnRhdGlvbigp
LT5iZXRhKCkpOwogfQogCi12ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhEZXZpY2VPcmllbnRhdGlv
bkV2ZW50OjpnYW1tYUFjY2Vzc29yR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBj
b25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RGV2
aWNlT3JpZW50YXRpb25FdmVudDo6Z2FtbWFBdHRyR2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6
U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIHY4OjpI
YW5kbGU8djg6Ok9iamVjdD4gaG9sZGVyID0gaW5mby5Ib2xkZXIoKTsKICAgICBEZXZpY2VPcmll
bnRhdGlvbkV2ZW50KiBpbXAgPSBWOERldmljZU9yaWVudGF0aW9uRXZlbnQ6OnRvTmF0aXZlKGhv
bGRlcik7CkBAIC02Miw3ICs2Miw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOERldmljZU9y
aWVudGF0aW9uRXZlbnQ6OmdhbW1hQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4CiAgICAgcmV0
dXJuIHY4OjpOdW1iZXI6Ok5ldyhpbXAtPm9yaWVudGF0aW9uKCktPmdhbW1hKCkpOwogfQogCi12
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhEZXZpY2VPcmllbnRhdGlvbkV2ZW50OjphYnNvbHV0ZUFj
Y2Vzc29yR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNz
b3JJbmZvJiBpbmZvKQordjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RGV2aWNlT3JpZW50YXRpb25F
dmVudDo6YWJzb2x1dGVBdHRyR2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1l
LCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIHY4OjpIYW5kbGU8djg6Ok9i
amVjdD4gaG9sZGVyID0gaW5mby5Ib2xkZXIoKTsKICAgICBEZXZpY2VPcmllbnRhdGlvbkV2ZW50
KiBpbXAgPSBWOERldmljZU9yaWVudGF0aW9uRXZlbnQ6OnRvTmF0aXZlKGhvbGRlcik7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0
aW9uQ3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERvY3Vt
ZW50TG9jYXRpb25DdXN0b20uY3BwCmluZGV4IDAzZTg4M2U1NDE4MDBlMzhjOGY1N2Q4NjRiYzg4
MjkxZmU4ZDA5ZTYuLmZkYmY4MDVjYTdiNDA3NTFmMGNhZDc2ODM4MDgzYzZmOWUzNjJkNGQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERvY3VtZW50TG9j
YXRpb25DdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9W
OERvY3VtZW50TG9jYXRpb25DdXN0b20uY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAotdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RG9jdW1lbnQ6OmxvY2F0aW9u
QWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nl
c3NvckluZm8mIGluZm8pCit2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhEb2N1bWVudDo6bG9jYXRp
b25BdHRyR2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6
QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIERvY3VtZW50KiBkb2N1bWVudCA9IFY4RG9jdW1l
bnQ6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwogICAgIGlmICghZG9jdW1lbnQtPmZyYW1lKCkp
CkBAIC00Myw3ICs0Myw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOERvY3VtZW50Ojpsb2Nh
dGlvbkFjY2Vzc29yR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuCiAgICAgcmV0dXJuIHRv
VjhGYXN0KHdpbmRvdy0+bG9jYXRpb24oKSwgaW5mbywgZG9jdW1lbnQpOwogfQogCi12b2lkIFY4
RG9jdW1lbnQ6OmxvY2F0aW9uQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5h
bWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBp
bmZvKQordm9pZCBWOERvY3VtZW50Ojpsb2NhdGlvbkF0dHJTZXR0ZXJDdXN0b20odjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6
QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIERvY3VtZW50KiBkb2N1bWVudCA9IFY4RG9jdW1l
bnQ6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwogICAgIGlmICghZG9jdW1lbnQtPmZyYW1lKCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudEN1
c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhFdmVudEN1c3Rv
bS5jcHAKaW5kZXggNDQwNjcyYTBiYTMwNWE3NTA5MzhlOWZiNzBjYjcyMzhlODI1NWU2Yy4uYjll
MmM5Y2I3ZDBiN2E3MjY3MGQ2ZTlkNTAzM2E2Zjk1OTFmMmFkYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RXZlbnRDdXN0b20uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEV2ZW50Q3VzdG9tLmNwcApAQCAtNDIsNyAr
NDIsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLXY4OjpIYW5kbGU8djg6OlZhbHVlPiBW
OEV2ZW50OjpkYXRhVHJhbnNmZXJBY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4g
bmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3Y4OjpIYW5kbGU8djg6OlZhbHVl
PiBWOEV2ZW50OjpkYXRhVHJhbnNmZXJBdHRyR2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3Ry
aW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIEV2ZW50KiBl
dmVudCA9IFY4RXZlbnQ6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwogCkBAIC01Miw3ICs1Miw3
IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOEV2ZW50OjpkYXRhVHJhbnNmZXJBY2Nlc3Nvckdl
dHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4KICAgICByZXR1cm4gdjg6OlVuZGVmaW5lZCgpOwog
fQogCi12ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhFdmVudDo6Y2xpcGJvYXJkRGF0YUFjY2Vzc29y
R2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZv
JiBpbmZvKQordjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RXZlbnQ6OmNsaXBib2FyZERhdGFBdHRy
R2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNz
b3JJbmZvJiBpbmZvKQogewogICAgIEV2ZW50KiBldmVudCA9IFY4RXZlbnQ6OnRvTmF0aXZlKGlu
Zm8uSG9sZGVyKCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9j
dXN0b20vVjhGaWxlUmVhZGVyQ3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L2N1c3RvbS9WOEZpbGVSZWFkZXJDdXN0b20uY3BwCmluZGV4IDgyODIzNDVhODY0ZjE1NmQxNjU1
NTgwYmQ4NjIxNWNmNGJmMzhlYmUuLjU3ZjgyYjA3ZmQ1ZDg0MTRmMmEyZDAyMmQ2Zjk4NGRlOTRj
MmMxOWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEZp
bGVSZWFkZXJDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3Rv
bS9WOEZpbGVSZWFkZXJDdXN0b20uY3BwCkBAIC00MCw3ICs0MCw3IEBACiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RmlsZVJlYWRlcjo6cmVzdWx0QWNj
ZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3Nv
ckluZm8mIGluZm8pCit2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhGaWxlUmVhZGVyOjpyZXN1bHRB
dHRyR2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNj
ZXNzb3JJbmZvJiBpbmZvKQogewogICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gaG9sZGVyID0g
aW5mby5Ib2xkZXIoKTsKICAgICBGaWxlUmVhZGVyKiBpbXAgPSBWOEZpbGVSZWFkZXI6OnRvTmF0
aXZlKGhvbGRlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0
b20vVjhIVE1MRG9jdW1lbnRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvdjgv
Y3VzdG9tL1Y4SFRNTERvY3VtZW50Q3VzdG9tLmNwcAppbmRleCAwNDY2Y2RjZGRlOTBlMTc4Mzdi
MzY2ZTg5YTQ4OWU5NjA4MzQ4OTYwLi5lMGYyMGNkNmExNjU4YTVlN2ZkYmQ0MWI3NjlhZmRjMzAx
YTI1NjYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhI
VE1MRG9jdW1lbnRDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1
c3RvbS9WOEhUTUxEb2N1bWVudEN1c3RvbS5jcHAKQEAgLTE1OSw3ICsxNTksNyBAQCB2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gVjhIVE1MRG9jdW1lbnQ6Om9wZW5DYWxsYmFjayhjb25zdCB2ODo6QXJn
dW1lbnRzJiBhcmdzKQogICAgIHJldHVybiBhcmdzLkhvbGRlcigpOwogfQogCi12b2lkIFY4SFRN
TERvY3VtZW50OjphbGxBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwg
djg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8p
Cit2b2lkIFY4SFRNTERvY3VtZW50OjphbGxBdHRyU2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6
U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vz
c29ySW5mbyYgaW5mbykKIHsKICAgICAvLyBKdXN0IGVtdWxhdGUgYSBub3JtYWwgSlMgYmVoYXZp
b3VyLS0taW5zdGFsbCBhIHByb3BlcnR5IG9uIHRoaXMuCiAgICAgaW5mby5UaGlzKCktPkZvcmNl
U2V0KG5hbWUsIHZhbHVlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L2N1c3RvbS9WOEhUTUxFbGVtZW50Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3Y4L2N1c3RvbS9WOEhUTUxFbGVtZW50Q3VzdG9tLmNwcAppbmRleCBiYWM1OGI4ZjU1OWJkMTM1
NjI2NTc2OGVhYWU1ZmM1NmRkOWM4Y2NhLi5iMzJmODA2ZTQzMmFiOWMyNGE1OGU0Njg2YjJjMmU0
NGY2YmE1YTZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20v
VjhIVE1MRWxlbWVudEN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvdjgv
Y3VzdG9tL1Y4SFRNTEVsZW1lbnRDdXN0b20uY3BwCkBAIC00NywxMyArNDcsMTMgQEAgdjg6Okhh
bmRsZTx2ODo6T2JqZWN0PiB3cmFwKEhUTUxFbGVtZW50KiBpbXBsLCB2ODo6SGFuZGxlPHY4OjpP
YmplY3Q+IGNyZWF0aW9uQ28KIH0KIAogI2lmIEVOQUJMRShNSUNST0RBVEEpCi12ODo6SGFuZGxl
PHY4OjpWYWx1ZT4gVjhIVE1MRWxlbWVudDo6aXRlbVZhbHVlQWNjZXNzb3JHZXR0ZXIodjg6Okxv
Y2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gVjhIVE1MRWxlbWVudDo6aXRlbVZhbHVlQXR0ckdldHRlckN1c3Rv
bSh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5m
bykKIHsKICAgICBIVE1MRWxlbWVudCogaW1wbCA9IFY4SFRNTEVsZW1lbnQ6OnRvTmF0aXZlKGlu
Zm8uSG9sZGVyKCkpOwogICAgIHJldHVybiB0b1Y4RmFzdChpbXBsLT5pdGVtVmFsdWUoKS5nZXQo
KSwgaW5mbywgaW1wbCk7CiB9CiAKLXZvaWQgVjhIVE1MRWxlbWVudDo6aXRlbVZhbHVlQWNjZXNz
b3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+
IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordm9pZCBWOEhUTUxFbGVtZW50
OjppdGVtVmFsdWVBdHRyU2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2
ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykK
IHsKICAgICBIVE1MRWxlbWVudCogaW1wbCA9IFY4SFRNTEVsZW1lbnQ6OnRvTmF0aXZlKGluZm8u
SG9sZGVyKCkpOwogICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTEZyYW1lRWxlbWVudEN1c3RvbS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhIVE1MRnJhbWVFbGVtZW50Q3Vz
dG9tLmNwcAppbmRleCAzY2VjOGE3ZmZlZGI2NjRiMjg0MGRjOTY2ODM2ZDg4MmI5NTFhNmRlLi5m
MzFiMzQ1ZTI5YzI0OWQ2MmRkMzNhNjY1OTE0NzEzYWZiY2FhMTYyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhIVE1MRnJhbWVFbGVtZW50Q3VzdG9tLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhIVE1MRnJhbWVFbGVt
ZW50Q3VzdG9tLmNwcApAQCAtNDAsNyArNDAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHVz
aW5nIG5hbWVzcGFjZSBIVE1MTmFtZXM7IAogCi12b2lkIFY4SFRNTEZyYW1lRWxlbWVudDo6bG9j
YXRpb25BY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2Fs
PHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit2b2lkIFY4
SFRNTEZyYW1lRWxlbWVudDo6bG9jYXRpb25BdHRyU2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6
U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vz
c29ySW5mbyYgaW5mbykKIHsKICAgICBIVE1MRnJhbWVFbGVtZW50KiBmcmFtZSA9IFY4SFRNTEZy
YW1lRWxlbWVudDo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CiAgICAgU3RyaW5nIGxvY2F0aW9u
VmFsdWUgPSB0b1dlYkNvcmVTdHJpbmdXaXRoTnVsbENoZWNrKHZhbHVlKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEhUTUxJbnB1dEVsZW1lbnRDdXN0
b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTElucHV0RWxl
bWVudEN1c3RvbS5jcHAKaW5kZXggMzA4NTNkYzhiNDVhYWU0YzgxZmMyYjZkM2UzZDY0MWE1MmU1
MTEyZi4uMzE5YjZhYjRlMTY4ZjQzYzA4YTNiNzg5ZjJiZTUwMTdjZjhhZWE5OSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTElucHV0RWxlbWVudEN1
c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTElu
cHV0RWxlbWVudEN1c3RvbS5jcHAKQEAgLTM3LDcgKzM3LDcgQEAKIAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCi12ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhIVE1MSW5wdXRFbGVtZW50OjpzZWxlY3Rp
b25TdGFydEFjY2Vzc29yR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2
ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4SFRNTElucHV0
RWxlbWVudDo6c2VsZWN0aW9uU3RhcnRBdHRyR2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3Ry
aW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIHY4OjpIYW5k
bGU8djg6Ok9iamVjdD4gaG9sZGVyID0gaW5mby5Ib2xkZXIoKTsKICAgICBIVE1MSW5wdXRFbGVt
ZW50KiBpbXAgPSBWOEhUTUxJbnB1dEVsZW1lbnQ6OnRvTmF0aXZlKGhvbGRlcik7CkBAIC00OSw3
ICs0OSw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOEhUTUxJbnB1dEVsZW1lbnQ6OnNlbGVj
dGlvblN0YXJ0QWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsCiAgICAgcmV0dXJuIHY4SW50ZWdlcih2
LCBpbmZvLkdldElzb2xhdGUoKSk7CiB9CiAKLXZvaWQgVjhIVE1MSW5wdXRFbGVtZW50OjpzZWxl
Y3Rpb25TdGFydEFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6
TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3Zv
aWQgVjhIVE1MSW5wdXRFbGVtZW50OjpzZWxlY3Rpb25TdGFydEF0dHJTZXR0ZXJDdXN0b20odjg6
OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25z
dCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4g
aG9sZGVyID0gaW5mby5Ib2xkZXIoKTsKICAgICBIVE1MSW5wdXRFbGVtZW50KiBpbXAgPSBWOEhU
TUxJbnB1dEVsZW1lbnQ6OnRvTmF0aXZlKGhvbGRlcik7CkBAIC02MSw3ICs2MSw3IEBAIHZvaWQg
VjhIVE1MSW5wdXRFbGVtZW50OjpzZWxlY3Rpb25TdGFydEFjY2Vzc29yU2V0dGVyKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lCiAgICAgaW1wLT5zZXRTZWxlY3Rpb25TdGFydCh2YWx1ZS0+SW50
MzJWYWx1ZSgpKTsKIH0KIAotdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4SFRNTElucHV0RWxlbWVu
dDo6c2VsZWN0aW9uRW5kQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUs
IGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhI
VE1MSW5wdXRFbGVtZW50OjpzZWxlY3Rpb25FbmRBdHRyR2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2
ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIHY4
OjpIYW5kbGU8djg6Ok9iamVjdD4gaG9sZGVyID0gaW5mby5Ib2xkZXIoKTsKICAgICBIVE1MSW5w
dXRFbGVtZW50KiBpbXAgPSBWOEhUTUxJbnB1dEVsZW1lbnQ6OnRvTmF0aXZlKGhvbGRlcik7CkBA
IC03Myw3ICs3Myw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOEhUTUxJbnB1dEVsZW1lbnQ6
OnNlbGVjdGlvbkVuZEFjY2Vzc29yR2V0dGVyKHY4OjpMb2NhbDx2CiAgICAgcmV0dXJuIHY4SW50
ZWdlcih2LCBpbmZvLkdldElzb2xhdGUoKSk7CiB9CiAKLXZvaWQgVjhIVE1MSW5wdXRFbGVtZW50
OjpzZWxlY3Rpb25FbmRBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwg
djg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8p
Cit2b2lkIFY4SFRNTElucHV0RWxlbWVudDo6c2VsZWN0aW9uRW5kQXR0clNldHRlckN1c3RvbSh2
ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNv
bnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0
PiBob2xkZXIgPSBpbmZvLkhvbGRlcigpOwogICAgIEhUTUxJbnB1dEVsZW1lbnQqIGltcCA9IFY4
SFRNTElucHV0RWxlbWVudDo6dG9OYXRpdmUoaG9sZGVyKTsKQEAgLTg2LDcgKzg2LDcgQEAgdm9p
ZCBWOEhUTUxJbnB1dEVsZW1lbnQ6OnNlbGVjdGlvbkVuZEFjY2Vzc29yU2V0dGVyKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLAogICAgIGltcC0+c2V0U2VsZWN0aW9uRW5kKHZhbHVlLT5JbnQz
MlZhbHVlKCkpOwogfQogCi12ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhIVE1MSW5wdXRFbGVtZW50
OjpzZWxlY3Rpb25EaXJlY3Rpb25BY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4g
bmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3Y4OjpIYW5kbGU8djg6OlZhbHVl
PiBWOEhUTUxJbnB1dEVsZW1lbnQ6OnNlbGVjdGlvbkRpcmVjdGlvbkF0dHJHZXR0ZXJDdXN0b20o
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8p
CiB7CiAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBob2xkZXIgPSBpbmZvLkhvbGRlcigpOwog
ICAgIEhUTUxJbnB1dEVsZW1lbnQqIGltcCA9IFY4SFRNTElucHV0RWxlbWVudDo6dG9OYXRpdmUo
aG9sZGVyKTsKQEAgLTk3LDcgKzk3LDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4SFRNTElu
cHV0RWxlbWVudDo6c2VsZWN0aW9uRGlyZWN0aW9uQWNjZXNzb3JHZXR0ZXIodjg6OkwKICAgICBy
ZXR1cm4gdjhTdHJpbmcoaW1wLT5zZWxlY3Rpb25EaXJlY3Rpb24oKSwgaW5mby5HZXRJc29sYXRl
KCkpOwogfQogCi12b2lkIFY4SFRNTElucHV0RWxlbWVudDo6c2VsZWN0aW9uRGlyZWN0aW9uQWNj
ZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFs
dWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordm9pZCBWOEhUTUxJbnB1
dEVsZW1lbnQ6OnNlbGVjdGlvbkRpcmVjdGlvbkF0dHJTZXR0ZXJDdXN0b20odjg6OkxvY2FsPHY4
OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNj
ZXNzb3JJbmZvJiBpbmZvKQogewogICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gaG9sZGVyID0g
aW5mby5Ib2xkZXIoKTsKICAgICBIVE1MSW5wdXRFbGVtZW50KiBpbXAgPSBWOEhUTUxJbnB1dEVs
ZW1lbnQ6OnRvTmF0aXZlKGhvbGRlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9jdXN0b20vVjhIVE1MTGlua0VsZW1lbnRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTExpbmtFbGVtZW50Q3VzdG9tLmNwcAppbmRleCAz
ZWQzZmY3NjNhYTRhOTA4NjgzM2NkNTYzZTliNmFjNTIwOTk1YjE4Li5kZThhNWM2N2Y3NTA0MjA5
ZTc3ZmMxMmIzNDk4NDY5MTk1YzliZTcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9jdXN0b20vVjhIVE1MTGlua0VsZW1lbnRDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEhUTUxMaW5rRWxlbWVudEN1c3RvbS5jcHAKQEAg
LTM3LDEzICszNywxMyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLXY4OjpIYW5kbGU8djg6
OlZhbHVlPiBWOEhUTUxMaW5rRWxlbWVudDo6c2l6ZXNBY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8
djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3Y4OjpIYW5k
bGU8djg6OlZhbHVlPiBWOEhUTUxMaW5rRWxlbWVudDo6c2l6ZXNBdHRyR2V0dGVyQ3VzdG9tKHY4
OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQog
ewogICAgIEhUTUxMaW5rRWxlbWVudCogaW1wID0gVjhIVE1MTGlua0VsZW1lbnQ6OnRvTmF0aXZl
KGluZm8uSG9sZGVyKCkpOwogICAgIHJldHVybiB0b1Y4RmFzdChpbXAtPnNpemVzKCksIGluZm8s
IGltcCk7CiB9CiAKLXZvaWQgVjhIVE1MTGlua0VsZW1lbnQ6OnNpemVzQWNjZXNzb3JTZXR0ZXIo
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBj
b25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordm9pZCBWOEhUTUxMaW5rRWxlbWVudDo6c2l6
ZXNBdHRyU2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8
djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBI
VE1MTGlua0VsZW1lbnQqIGltcCA9IFY4SFRNTExpbmtFbGVtZW50Ojp0b05hdGl2ZShpbmZvLkhv
bGRlcigpKTsKICAgICBpbXAtPnNldFNpemVzKHRvV2ViQ29yZVN0cmluZyh2YWx1ZSkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTE1lZGlhRWxl
bWVudEN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhIVE1M
TWVkaWFFbGVtZW50Q3VzdG9tLmNwcAppbmRleCA3YzdmYTFkM2ZmYjA3N2NhNjNjZDViNmVjNTEy
Nzc3YjQ0YWUwMmUwLi5kOTNhZTM5YTJmZTc3ZGNkYzUwZjk0MGZkOTBkY2Y4MWU3ZGQ0MGY0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhIVE1MTWVkaWFF
bGVtZW50Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20v
VjhIVE1MTWVkaWFFbGVtZW50Q3VzdG9tLmNwcApAQCAtMzMsNyArMzMsNyBAQAogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKLXZvaWQgVjhIVE1MTWVkaWFFbGVtZW50Ojpjb250cm9sbGVyQWNjZXNz
b3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+
IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordm9pZCBWOEhUTUxNZWRpYUVs
ZW1lbnQ6OmNvbnRyb2xsZXJBdHRyU2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBu
YW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYg
aW5mbykKIHsKICAgICBIVE1MTWVkaWFFbGVtZW50KiBpbXAgPSBWOEhUTUxNZWRpYUVsZW1lbnQ6
OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwogICAgIE1lZGlhQ29udHJvbGxlciogY29udHJvbGxl
ciA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhI
VE1MT3B0aW9uc0NvbGxlY3Rpb25DdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
djgvY3VzdG9tL1Y4SFRNTE9wdGlvbnNDb2xsZWN0aW9uQ3VzdG9tLmNwcAppbmRleCA0MTU0YWU0
NGJjMzg3M2I2ODU4MzJhYjNiYzMzYzZjM2Y4YjRiZGExLi45NmYxYTQ5YzQ3OWRhNzhjNjRjNjBi
NDNkMjQ4Zjk1NzdjZWNlYzFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92
OC9jdXN0b20vVjhIVE1MT3B0aW9uc0NvbGxlY3Rpb25DdXN0b20uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEhUTUxPcHRpb25zQ29sbGVjdGlvbkN1c3RvbS5j
cHAKQEAgLTExNCw3ICsxMTQsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhIVE1MT3B0aW9u
c0NvbGxlY3Rpb246OmFkZENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmCiAgICAgcmV0dXJu
IHY4OjpVbmRlZmluZWQoKTsKIH0KIAotdm9pZCBWOEhUTUxPcHRpb25zQ29sbGVjdGlvbjo6bGVu
Z3RoQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2
ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordm9pZCBWOEhU
TUxPcHRpb25zQ29sbGVjdGlvbjo6bGVuZ3RoQXR0clNldHRlckN1c3RvbSh2ODo6TG9jYWw8djg6
OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nl
c3NvckluZm8mIGluZm8pCiB7CiAgICAgSFRNTE9wdGlvbnNDb2xsZWN0aW9uKiBpbXAgPSBWOEhU
TUxPcHRpb25zQ29sbGVjdGlvbjo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CiAgICAgZG91Ymxl
IHYgPSB2YWx1ZS0+TnVtYmVyVmFsdWUoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L2N1c3RvbS9WOEhpc3RvcnlDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4SGlzdG9yeUN1c3RvbS5jcHAKaW5kZXggOGVkNjkwNDU2ZDAyYWM2
NzEzN2RhNjM4ZjhiMDc0YjRkNzYyYWQ0Ni4uNjYzY2M4ZTYxYWQ1MTJhNmY5NDk5ZDM4NGNhOTJh
YjYxNDczMzIyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9t
L1Y4SGlzdG9yeUN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4SGlzdG9yeUN1c3RvbS5jcHAKQEAgLTQxLDcgKzQxLDcgQEAKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCi12ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhIaXN0b3J5OjpzdGF0ZUFjY2Vzc29y
R2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZv
JiBpbmZvKQordjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4SGlzdG9yeTo6c3RhdGVBdHRyR2V0dGVy
Q3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZv
JiBpbmZvKQogewogICAgIEhpc3RvcnkqIGhpc3RvcnkgPSBWOEhpc3Rvcnk6OnRvTmF0aXZlKGlu
Zm8uSG9sZGVyKCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9j
dXN0b20vVjhKYXZhU2NyaXB0Q2FsbEZyYW1lQ3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L2N1c3RvbS9WOEphdmFTY3JpcHRDYWxsRnJhbWVDdXN0b20uY3BwCmluZGV4IDdj
YjI4OWU4MWU4YTg2NzZmMDRhMmE3OGEwNzU5NzNmMjZmM2ExNTAuLmIxNjU0NTQ1ZGIxZGJjYjZl
ZGIzMzgyYTMzOTMwOGQ2YzBlYWZiNWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L2N1c3RvbS9WOEphdmFTY3JpcHRDYWxsRnJhbWVDdXN0b20uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEphdmFTY3JpcHRDYWxsRnJhbWVDdXN0b20u
Y3BwCkBAIC01OSw3ICs1OSw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOEphdmFTY3JpcHRD
YWxsRnJhbWU6OnNldFZhcmlhYmxlVmFsdWVDYWxsYmFjayhjb25zdCB2ODo6CiAgICAgcmV0dXJu
IGltcGwtPnNldFZhcmlhYmxlVmFsdWUoc2NvcGVJbmRleCwgdmFyaWFibGVOYW1lLCBuZXdWYWx1
ZSk7CiB9CiAKLXY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOEphdmFTY3JpcHRDYWxsRnJhbWU6OnNj
b3BlQ2hhaW5BY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qg
djg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3Y4OjpIYW5kbGU8djg6OlZhbHVlPiBWOEphdmFTY3Jp
cHRDYWxsRnJhbWU6OnNjb3BlQ2hhaW5BdHRyR2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3Ry
aW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIEphdmFTY3Jp
cHRDYWxsRnJhbWUqIGltcGwgPSBWOEphdmFTY3JpcHRDYWxsRnJhbWU6OnRvTmF0aXZlKGluZm8u
SG9sZGVyKCkpOwogICAgIHJldHVybiBpbXBsLT5zY29wZUNoYWluKCk7CkBAIC03MiwxMyArNzIs
MTMgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4SmF2YVNjcmlwdENhbGxGcmFtZTo6c2NvcGVU
eXBlQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW4KICAgICByZXR1cm4gdjg6OkludDMyOjpOZXco
aW1wbC0+c2NvcGVUeXBlKHNjb3BlSW5kZXgpKTsKIH0KIAotdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IFY4SmF2YVNjcmlwdENhbGxGcmFtZTo6dGhpc09iamVjdEFjY2Vzc29yR2V0dGVyKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordjg6Okhh
bmRsZTx2ODo6VmFsdWU+IFY4SmF2YVNjcmlwdENhbGxGcmFtZTo6dGhpc09iamVjdEF0dHJHZXR0
ZXJDdXN0b20odjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3Nvcklu
Zm8mIGluZm8pCiB7CiAgICAgSmF2YVNjcmlwdENhbGxGcmFtZSogaW1wbCA9IFY4SmF2YVNjcmlw
dENhbGxGcmFtZTo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CiAgICAgcmV0dXJuIGltcGwtPnRo
aXNPYmplY3QoKTsKIH0KIAotdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4SmF2YVNjcmlwdENhbGxG
cmFtZTo6dHlwZUFjY2Vzc29yR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25z
dCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4SmF2YVNj
cmlwdENhbGxGcmFtZTo6dHlwZUF0dHJHZXR0ZXJDdXN0b20odjg6OkxvY2FsPHY4OjpTdHJpbmc+
IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgcmV0dXJuIHY4OjpT
dHJpbmc6Ok5ld1N5bWJvbCgiZnVuY3Rpb24iKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOExvY2F0aW9uQ3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOExvY2F0aW9uQ3VzdG9tLmNwcAppbmRleCAyYTEyYWVl
MzdjYWRhMmMyN2Y1MzQyNWUxYzkwZmI5ZmMyMjllYjllLi4xYjkwNGM5Yjg0NjA2MWViNzM5OTYw
NGVmNmQxNjI4NzVlNDA0ODUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92
OC9jdXN0b20vVjhMb2NhdGlvbkN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvY3VzdG9tL1Y4TG9jYXRpb25DdXN0b20uY3BwCkBAIC00NSw3ICs0NSw3IEBACiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotdm9pZCBWOExvY2F0aW9uOjpoYXNoQWNjZXNzb3JTZXR0ZXIo
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBj
b25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordm9pZCBWOExvY2F0aW9uOjpoYXNoQXR0clNl
dHRlckN1c3RvbSh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1
ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAgICAgTG9jYXRpb24q
IGltcGwgPSBWOExvY2F0aW9uOjp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKICAgICBCaW5kaW5n
U3RhdGUqIHN0YXRlID0gQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpOwpAQCAtNTYsNyArNTYsNyBA
QCB2b2lkIFY4TG9jYXRpb246Omhhc2hBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmlu
Zz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYQogICAgIGltcGwtPnNldEhhc2goaGFzaCwgYWN0aXZl
RE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUpKTsKIH0KIAotdm9pZCBWOExv
Y2F0aW9uOjpob3N0QWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4
OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQor
dm9pZCBWOExvY2F0aW9uOjpob3N0QXR0clNldHRlckN1c3RvbSh2ODo6TG9jYWw8djg6OlN0cmlu
Zz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3Nvcklu
Zm8mIGluZm8pCiB7CiAgICAgTG9jYXRpb24qIGltcGwgPSBWOExvY2F0aW9uOjp0b05hdGl2ZShp
bmZvLkhvbGRlcigpKTsKICAgICBCaW5kaW5nU3RhdGUqIHN0YXRlID0gQmluZGluZ1N0YXRlOjpp
bnN0YW5jZSgpOwpAQCAtNjcsNyArNjcsNyBAQCB2b2lkIFY4TG9jYXRpb246Omhvc3RBY2Nlc3Nv
clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYQogICAg
IGltcGwtPnNldEhvc3QoaG9zdCwgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5k
b3coc3RhdGUpKTsKIH0KIAotdm9pZCBWOExvY2F0aW9uOjpob3N0bmFtZUFjY2Vzc29yU2V0dGVy
KHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwg
Y29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3ZvaWQgVjhMb2NhdGlvbjo6aG9zdG5hbWVB
dHRyU2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6
OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBMb2Nh
dGlvbiogaW1wbCA9IFY4TG9jYXRpb246OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwogICAgIEJp
bmRpbmdTdGF0ZSogc3RhdGUgPSBCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCk7CkBAIC03OCw3ICs3
OCw3IEBAIHZvaWQgVjhMb2NhdGlvbjo6aG9zdG5hbWVBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8
djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4CiAgICAgaW1wbC0+c2V0SG9zdG5hbWUoaG9z
dG5hbWUsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSk7CiB9
CiAKLXZvaWQgVjhMb2NhdGlvbjo6aHJlZkFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3Ry
aW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29y
SW5mbyYgaW5mbykKK3ZvaWQgVjhMb2NhdGlvbjo6aHJlZkF0dHJTZXR0ZXJDdXN0b20odjg6Okxv
Y2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2
ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIExvY2F0aW9uKiBpbXBsID0gVjhMb2NhdGlv
bjo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CiAgICAgQmluZGluZ1N0YXRlKiBzdGF0ZSA9IEJp
bmRpbmdTdGF0ZTo6aW5zdGFuY2UoKTsKQEAgLTg5LDcgKzg5LDcgQEAgdm9pZCBWOExvY2F0aW9u
OjpocmVmQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2Nh
bDx2ODo6VmEKICAgICBpbXBsLT5zZXRIcmVmKGhyZWYsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSks
IGZpcnN0RE9NV2luZG93KHN0YXRlKSk7CiB9CiAKLXZvaWQgVjhMb2NhdGlvbjo6cGF0aG5hbWVB
Y2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpW
YWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit2b2lkIFY4TG9jYXRp
b246OnBhdGhuYW1lQXR0clNldHRlckN1c3RvbSh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwg
djg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8p
CiB7CiAgICAgTG9jYXRpb24qIGltcGwgPSBWOExvY2F0aW9uOjp0b05hdGl2ZShpbmZvLkhvbGRl
cigpKTsKICAgICBCaW5kaW5nU3RhdGUqIHN0YXRlID0gQmluZGluZ1N0YXRlOjppbnN0YW5jZSgp
OwpAQCAtMTAwLDcgKzEwMCw3IEBAIHZvaWQgVjhMb2NhdGlvbjo6cGF0aG5hbWVBY2Nlc3NvclNl
dHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4CiAgICAgaW1wbC0+
c2V0UGF0aG5hbWUocGF0aG5hbWUsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2lu
ZG93KHN0YXRlKSk7CiB9CiAKLXZvaWQgVjhMb2NhdGlvbjo6cG9ydEFjY2Vzc29yU2V0dGVyKHY4
OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29u
c3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3ZvaWQgVjhMb2NhdGlvbjo6cG9ydEF0dHJTZXR0
ZXJDdXN0b20odjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+
IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIExvY2F0aW9uKiBp
bXBsID0gVjhMb2NhdGlvbjo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CiAgICAgQmluZGluZ1N0
YXRlKiBzdGF0ZSA9IEJpbmRpbmdTdGF0ZTo6aW5zdGFuY2UoKTsKQEAgLTExMSw3ICsxMTEsNyBA
QCB2b2lkIFY4TG9jYXRpb246OnBvcnRBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmlu
Zz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYQogICAgIGltcGwtPnNldFBvcnQocG9ydCwgYWN0aXZl
RE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUpKTsKIH0KIAotdm9pZCBWOExv
Y2F0aW9uOjpwcm90b2NvbEFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1l
LCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5m
bykKK3ZvaWQgVjhMb2NhdGlvbjo6cHJvdG9jb2xBdHRyU2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2
ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFj
Y2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBMb2NhdGlvbiogaW1wbCA9IFY4TG9jYXRpb246OnRv
TmF0aXZlKGluZm8uSG9sZGVyKCkpOwogICAgIEJpbmRpbmdTdGF0ZSogc3RhdGUgPSBCaW5kaW5n
U3RhdGU6Omluc3RhbmNlKCk7CkBAIC0xMjUsNyArMTI1LDcgQEAgdm9pZCBWOExvY2F0aW9uOjpw
cm90b2NvbEFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9j
YWw8djgKICAgICAgICAgc2V0RE9NRXhjZXB0aW9uKGVjLCBpbmZvLkdldElzb2xhdGUoKSk7CiB9
CiAKLXZvaWQgVjhMb2NhdGlvbjo6c2VhcmNoQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNz
b3JJbmZvJiBpbmZvKQordm9pZCBWOExvY2F0aW9uOjpzZWFyY2hBdHRyU2V0dGVyQ3VzdG9tKHY4
OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29u
c3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBMb2NhdGlvbiogaW1wbCA9IFY4TG9j
YXRpb246OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwogICAgIEJpbmRpbmdTdGF0ZSogc3RhdGUg
PSBCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCk7CkBAIC0xMzYsNyArMTM2LDcgQEAgdm9pZCBWOExv
Y2F0aW9uOjpzZWFyY2hBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwg
djg6OkxvY2FsPHY4OjoKICAgICBpbXBsLT5zZXRTZWFyY2goc2VhcmNoLCBhY3RpdmVET01XaW5k
b3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkpOwogfQogCi12ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gVjhMb2NhdGlvbjo6cmVsb2FkQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJp
bmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gVjhMb2NhdGlvbjo6cmVsb2FkQXR0ckdldHRlckN1c3RvbSh2ODo6TG9jYWw8djg6OlN0
cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICB2ODo6SXNv
bGF0ZSogaXNvbGF0ZSA9IGluZm8uR2V0SXNvbGF0ZSgpOwogICAgIHN0YXRpYyB2ODo6UGVyc2lz
dGVudDx2ODo6RnVuY3Rpb25UZW1wbGF0ZT4gcHJpdmF0ZVRlbXBsYXRlID0gdjg6OlBlcnNpc3Rl
bnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+OjpOZXcoaXNvbGF0ZSwgdjg6OkZ1bmN0aW9uVGVtcGxh
dGU6Ok5ldyhWOExvY2F0aW9uOjpyZWxvYWRDYWxsYmFjaywgdjhVbmRlZmluZWQoKSwgdjg6OlNp
Z25hdHVyZTo6TmV3KFY4TG9jYXRpb246OkdldFJhd1RlbXBsYXRlKGlzb2xhdGUpKSkpOwpAQCAt
MTU0LDcgKzE1NCw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOExvY2F0aW9uOjpyZWxvYWRB
Y2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtCiAgICAgcmV0dXJuIHByaXZh
dGVUZW1wbGF0ZS0+R2V0RnVuY3Rpb24oKTsKIH0KIAotdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4
TG9jYXRpb246OnJlcGxhY2VBY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFt
ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3Y4OjpIYW5kbGU8djg6OlZhbHVlPiBW
OExvY2F0aW9uOjpyZXBsYWNlQXR0ckdldHRlckN1c3RvbSh2ODo6TG9jYWw8djg6OlN0cmluZz4g
bmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICB2ODo6SXNvbGF0ZSog
aXNvbGF0ZSA9IGluZm8uR2V0SXNvbGF0ZSgpOwogICAgIHN0YXRpYyB2ODo6UGVyc2lzdGVudDx2
ODo6RnVuY3Rpb25UZW1wbGF0ZT4gcHJpdmF0ZVRlbXBsYXRlID0gdjg6OlBlcnNpc3RlbnQ8djg6
OkZ1bmN0aW9uVGVtcGxhdGU+OjpOZXcoaXNvbGF0ZSwgdjg6OkZ1bmN0aW9uVGVtcGxhdGU6Ok5l
dyhWOExvY2F0aW9uOjpyZXBsYWNlQ2FsbGJhY2ssIHY4VW5kZWZpbmVkKCksIHY4OjpTaWduYXR1
cmU6Ok5ldyhWOExvY2F0aW9uOjpHZXRSYXdUZW1wbGF0ZShpc29sYXRlKSkpKTsKQEAgLTE3Miw3
ICsxNzIsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhMb2NhdGlvbjo6cmVwbGFjZUFjY2Vz
c29yR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYQogICAgIHJldHVybiBwcml2YXRlVGVt
cGxhdGUtPkdldEZ1bmN0aW9uKCk7CiB9CiAKLXY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOExvY2F0
aW9uOjphc3NpZ25BY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29u
c3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3Y4OjpIYW5kbGU8djg6OlZhbHVlPiBWOExvY2F0
aW9uOjphc3NpZ25BdHRyR2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBj
b25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIHY4OjpJc29sYXRlKiBpc29sYXRl
ID0gaW5mby5HZXRJc29sYXRlKCk7CiAgICAgc3RhdGljIHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5j
dGlvblRlbXBsYXRlPiBwcml2YXRlVGVtcGxhdGUgPQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4TWVzc2FnZUV2ZW50Q3VzdG9tLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOE1lc3NhZ2VFdmVudEN1c3RvbS5jcHAKaW5kZXgg
YjlkOWFmZTdlMTYzYTYzMmI4OGI2YzE5NTFhZTk3ZGIxNTcwYTJmNi4uNDUxZTkyMzkyNjcxYzU2
NWNiZDA5M2VhN2VmMjYyZTc1MWZhNzgyOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4TWVzc2FnZUV2ZW50Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhNZXNzYWdlRXZlbnRDdXN0b20uY3BwCkBAIC00Miw3
ICs0Miw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IFY4TWVzc2FnZUV2ZW50OjpkYXRhQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+
IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gVjhNZXNzYWdlRXZlbnQ6OmRhdGFBdHRyR2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3Ry
aW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIE1lc3NhZ2VF
dmVudCogZXZlbnQgPSBWOE1lc3NhZ2VFdmVudDo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CiAK
QEAgLTg2LDcgKzg2LDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4TWVzc2FnZUV2ZW50Ojpk
YXRhQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG4KICAgICByZXR1cm4gcmVz
dWx0OwogfQogCi12ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhNZXNzYWdlRXZlbnQ6OnBvcnRzQWNj
ZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3Nv
ckluZm8mIGluZm8pCit2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhNZXNzYWdlRXZlbnQ6OnBvcnRz
QXR0ckdldHRlckN1c3RvbSh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFj
Y2Vzc29ySW5mbyYgaW5mbykKIHsKICAgICBNZXNzYWdlRXZlbnQqIGV2ZW50ID0gVjhNZXNzYWdl
RXZlbnQ6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhPc2NpbGxhdG9yTm9kZUN1c3RvbS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhPc2NpbGxhdG9yTm9kZUN1c3RvbS5jcHAK
aW5kZXggNjIzNjg2MzMxMmM2MTlhY2Y1ODM3ZjA5NmQwOTY4NWE3N2I2NTE5NS4uNjRmOTc0ZWM3
MzU2Mjc3NGEzNjI0MjBmNzUxODkxM2I0NzJjNjllZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4T3NjaWxsYXRvck5vZGVDdXN0b20uY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOE9zY2lsbGF0b3JOb2RlQ3VzdG9tLmNw
cApAQCAtMzQsNyArMzQsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLXZvaWQgVjhPc2Np
bGxhdG9yTm9kZTo6dHlwZUFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1l
LCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5m
bykKK3ZvaWQgVjhPc2NpbGxhdG9yTm9kZTo6dHlwZUF0dHJTZXR0ZXJDdXN0b20odjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6
QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gaG9sZGVy
ID0gaW5mby5Ib2xkZXIoKTsKICAgICBPc2NpbGxhdG9yTm9kZSogaW1wID0gVjhPc2NpbGxhdG9y
Tm9kZTo6dG9OYXRpdmUoaG9sZGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L2N1c3RvbS9WOFBhbm5lck5vZGVDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvY3VzdG9tL1Y4UGFubmVyTm9kZUN1c3RvbS5jcHAKaW5kZXggZTFmNzZmOThkMDQy
MTYxZmI3YjNhNTM0N2FiY2M0OWNlYjEyY2UzNS4uYmU2NzIyOGVmMjFkODZmZjJjZWY2ZTc2OTNk
ZjNkNmRiOGEwYjU5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4UGFubmVyTm9kZUN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
djgvY3VzdG9tL1Y4UGFubmVyTm9kZUN1c3RvbS5jcHAKQEAgLTM0LDcgKzM0LDcgQEAKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi12b2lkIFY4UGFubmVyTm9kZTo6cGFubmluZ01vZGVsQWNjZXNz
b3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+
IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordm9pZCBWOFBhbm5lck5vZGU6
OnBhbm5pbmdNb2RlbEF0dHJTZXR0ZXJDdXN0b20odjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUs
IHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZv
KQogewogICAgIFBhbm5lck5vZGUqIGltcCA9IFY4UGFubmVyTm9kZTo6dG9OYXRpdmUoaW5mby5I
b2xkZXIoKSk7CiAKQEAgLTYwLDcgKzYwLDcgQEAgdm9pZCBWOFBhbm5lck5vZGU6OnBhbm5pbmdN
b2RlbEFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG8KICAg
ICB0aHJvd0Vycm9yKHY4VHlwZUVycm9yLCAiSWxsZWdhbCBwYW5uaW5nTW9kZWwiLCBpbmZvLkdl
dElzb2xhdGUoKSk7CiB9CiAKLXZvaWQgVjhQYW5uZXJOb2RlOjpkaXN0YW5jZU1vZGVsQWNjZXNz
b3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+
IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordm9pZCBWOFBhbm5lck5vZGU6
OmRpc3RhbmNlTW9kZWxBdHRyU2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1l
LCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5m
bykKIHsKICAgICBQYW5uZXJOb2RlKiBpbXAgPSBWOFBhbm5lck5vZGU6OnRvTmF0aXZlKGluZm8u
SG9sZGVyKCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0
b20vVjhQb3BTdGF0ZUV2ZW50Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L2N1c3RvbS9WOFBvcFN0YXRlRXZlbnRDdXN0b20uY3BwCmluZGV4IGRjMDMyYzhjYjYxNzg3Yjg3
NGIxOTZmMjYwZTRlYTlkZWJjZDVmNjQuLjg5MzgwYzI2NmNhZjkxNTkwMTg1MzE4MTkwMjlmN2I3
MzZkNmE3MjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9W
OFBvcFN0YXRlRXZlbnRDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L2N1c3RvbS9WOFBvcFN0YXRlRXZlbnRDdXN0b20uY3BwCkBAIC00Niw3ICs0Niw3IEBAIHN0YXRp
YyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gY2FjaGVTdGF0ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+
IHBvcFN0YXRlRXZlbnQsIHY4CiAgICAgcmV0dXJuIHN0YXRlOwogfQogCi12ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gVjhQb3BTdGF0ZUV2ZW50OjpzdGF0ZUFjY2Vzc29yR2V0dGVyKHY4OjpMb2NhbDx2
ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IFY4UG9wU3RhdGVFdmVudDo6c3RhdGVBdHRyR2V0dGVyQ3VzdG9tKHY4OjpM
b2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewog
ICAgIHY4OjpIYW5kbGU8djg6OlZhbHVlPiByZXN1bHQgPSBpbmZvLkhvbGRlcigpLT5HZXRIaWRk
ZW5WYWx1ZShWOEhpZGRlblByb3BlcnR5TmFtZTo6c3RhdGUoKSk7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOFNWR0xlbmd0aEN1c3RvbS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhTVkdMZW5ndGhDdXN0b20uY3BwCmlu
ZGV4IDJmNzJhZTNhYzA0MTczMTEwMDkyMGQ0MjY4M2VhNWQzMmNiOWE5NjIuLjIwOTlhZjU1NDdi
ZjA3ZTgwY2IzZjUxMzBlM2E3YmYwMWU0MmI2NmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L2N1c3RvbS9WOFNWR0xlbmd0aEN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4U1ZHTGVuZ3RoQ3VzdG9tLmNwcApAQCAtNDAsNyAr
NDAsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLXY4OjpIYW5kbGU8djg6OlZhbHVlPiBW
OFNWR0xlbmd0aDo6dmFsdWVBY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFt
ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKK3Y4OjpIYW5kbGU8djg6OlZhbHVlPiBW
OFNWR0xlbmd0aDo6dmFsdWVBdHRyR2V0dGVyQ3VzdG9tKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBu
YW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewogICAgIFNWR1Byb3BlcnR5VGVh
ck9mZjxTVkdMZW5ndGg+KiB3cmFwcGVyID0gVjhTVkdMZW5ndGg6OnRvTmF0aXZlKGluZm8uSG9s
ZGVyKCkpOwogICAgIFNWR0xlbmd0aCYgaW1wID0gd3JhcHBlci0+cHJvcGVydHlSZWZlcmVuY2Uo
KTsKQEAgLTUyLDcgKzUyLDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4U1ZHTGVuZ3RoOjp2
YWx1ZUFjY2Vzc29yR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW0KICAgICByZXR1cm4g
djg6Ok51bWJlcjo6TmV3KHZhbHVlKTsKIH0KIAotdm9pZCBWOFNWR0xlbmd0aDo6dmFsdWVBY2Nl
c3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1
ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit2b2lkIFY4U1ZHTGVuZ3Ro
Ojp2YWx1ZUF0dHJTZXR0ZXJDdXN0b20odjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpM
b2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQogewog
ICAgIFNWR1Byb3BlcnR5VGVhck9mZjxTVkdMZW5ndGg+KiB3cmFwcGVyID0gVjhTVkdMZW5ndGg6
OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwogICAgIGlmICh3cmFwcGVyLT5pc1JlYWRPbmx5KCkp
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOFRyYWNr
RXZlbnRDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4VHJh
Y2tFdmVudEN1c3RvbS5jcHAKaW5kZXggYTdiZTQ5NjNjZmY2NDBkNGMzNjlkOGMxYTRhZTFkYzdk
ODA2YTZiMy4uZGQ2ZjBhNzY3Y2VjNjc5NGY0ZDllNmZmMmRkNzI4MmIwZGRkYzE0YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4VHJhY2tFdmVudEN1c3Rv
bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4VHJhY2tFdmVu
dEN1c3RvbS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi12
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhUcmFja0V2ZW50Ojp0cmFja0FjY2Vzc29yR2V0dGVyKHY4
OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQor
djg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4VHJhY2tFdmVudDo6dHJhY2tBdHRyR2V0dGVyQ3VzdG9t
KHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZv
KQogewogICAgIFRyYWNrRXZlbnQqIHRyYWNrRXZlbnQgPSBWOFRyYWNrRXZlbnQ6OnRvTmF0aXZl
KGluZm8uSG9sZGVyKCkpOwogICAgIFRyYWNrQmFzZSogdHJhY2sgPSB0cmFja0V2ZW50LT50cmFj
aygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4V2Vi
S2l0QW5pbWF0aW9uQ3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3Rv
bS9WOFdlYktpdEFuaW1hdGlvbkN1c3RvbS5jcHAKaW5kZXggYzZlNTYzZDVlOTMzN2RkMDFkMTE4
OTQ0ZDY2MzZmZWQzNDM1ODAyMy4uMzcyYjg2MjIyM2NkNDBjM2U1ZGQxMjQwYjkwOGZkNTUwZTVi
MjQzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4V2Vi
S2l0QW5pbWF0aW9uQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9j
dXN0b20vVjhXZWJLaXRBbmltYXRpb25DdXN0b20uY3BwCkBAIC0zMyw3ICszMyw3IEBACiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4V2ViS2l0QW5pbWF0
aW9uOjppdGVyYXRpb25Db3VudEFjY2Vzc29yR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBu
YW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordjg6OkhhbmRsZTx2ODo6VmFsdWU+
IFY4V2ViS2l0QW5pbWF0aW9uOjppdGVyYXRpb25Db3VudEF0dHJHZXR0ZXJDdXN0b20odjg6Okxv
Y2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCiB7CiAg
ICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBob2xkZXIgPSBpbmZvLkhvbGRlcigpOwogICAgIFdl
YktpdEFuaW1hdGlvbiogaW1wID0gVjhXZWJLaXRBbmltYXRpb246OnRvTmF0aXZlKGhvbGRlcik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhYTUxIdHRw
UmVxdWVzdEN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhY
TUxIdHRwUmVxdWVzdEN1c3RvbS5jcHAKaW5kZXggN2UyMWYwNGRkOWMyN2E2MzQwYzkxM2I5ZWQ4
NjZjODM0MGVlMmM5NC4uODZhZTM4NzEyODUyM2NkNTlhZjFhNWE0MmU3NTM4OGJmMjJmYTFjMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4WE1MSHR0cFJl
cXVlc3RDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9W
OFhNTEh0dHBSZXF1ZXN0Q3VzdG9tLmNwcApAQCAtNjUsNyArNjUsNyBAQCB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gVjhYTUxIdHRwUmVxdWVzdDo6Y29uc3RydWN0b3JDYWxsYmFja0N1c3RvbShjb25z
dCB2ODo6QXJndQogICAgIHJldHVybiB3cmFwcGVyOwogfQogCi12ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gVjhYTUxIdHRwUmVxdWVzdDo6cmVzcG9uc2VUZXh0QWNjZXNzb3JHZXR0ZXIodjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCit2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gVjhYTUxIdHRwUmVxdWVzdDo6cmVzcG9uc2VUZXh0QXR0ckdldHRlckN1
c3RvbSh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYg
aW5mbykKIHsKICAgICBYTUxIdHRwUmVxdWVzdCogeG1sSHR0cFJlcXVlc3QgPSBWOFhNTEh0dHBS
ZXF1ZXN0Ojp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKICAgICBFeGNlcHRpb25Db2RlIGVjID0g
MDsKQEAgLTc1LDE0ICs3NSwxNCBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhYTUxIdHRwUmVx
dWVzdDo6cmVzcG9uc2VUZXh0QWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OgogICAgIHJldHVy
biB2OFN0cmluZyh0ZXh0LCBpbmZvLkdldElzb2xhdGUoKSk7CiB9CiAKLXY4OjpIYW5kbGU8djg6
OlZhbHVlPiBWOFhNTEh0dHBSZXF1ZXN0OjpyZXNwb25zZUFjY2Vzc29yR2V0dGVyKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQordjg6Okhh
bmRsZTx2ODo6VmFsdWU+IFY4WE1MSHR0cFJlcXVlc3Q6OnJlc3BvbnNlQXR0ckdldHRlckN1c3Rv
bSh2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5m
bykKIHsKICAgICBYTUxIdHRwUmVxdWVzdCogeG1sSHR0cFJlcXVlc3QgPSBWOFhNTEh0dHBSZXF1
ZXN0Ojp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKIAogICAgIHN3aXRjaCAoeG1sSHR0cFJlcXVl
c3QtPnJlc3BvbnNlVHlwZUNvZGUoKSkgewogICAgIGNhc2UgWE1MSHR0cFJlcXVlc3Q6OlJlc3Bv
bnNlVHlwZURlZmF1bHQ6CiAgICAgY2FzZSBYTUxIdHRwUmVxdWVzdDo6UmVzcG9uc2VUeXBlVGV4
dDoKLSAgICAgICAgcmV0dXJuIHJlc3BvbnNlVGV4dEFjY2Vzc29yR2V0dGVyKG5hbWUsIGluZm8p
OworICAgICAgICByZXR1cm4gcmVzcG9uc2VUZXh0QXR0ckdldHRlckN1c3RvbShuYW1lLCBpbmZv
KTsKIAogICAgIGNhc2UgWE1MSHR0cFJlcXVlc3Q6OlJlc3BvbnNlVHlwZURvY3VtZW50OgogICAg
ICAgICB7Cg==
</data>
<flag name="commit-queue"
          id="208156"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
      

    </bug>

</bugzilla>