<?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>93307</bug_id>
          
          <creation_ts>2012-08-06 16:25:38 -0700</creation_ts>
          <short_desc>JSC should use BindingState to determine the activeDOMWindow</short_desc>
          <delta_ts>2012-08-07 14:08:20 -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>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>
          <dependson>93339</dependson>
          <blocked>75793</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>darin</cc>
    
    <cc>eric</cc>
    
    <cc>gustavo</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>rakuco</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>688537</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-06 16:25:38 -0700</bug_when>
    <thetext>JSC should use BindingState to determine the activeDOMWindow</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688538</commentid>
    <comment_count>1</comment_count>
      <attachid>156787</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-06 16:28:17 -0700</bug_when>
    <thetext>Created attachment 156787
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688540</commentid>
    <comment_count>2</comment_count>
      <attachid>156789</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-06 16:28:54 -0700</bug_when>
    <thetext>Created attachment 156789
work in progress</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688550</commentid>
    <comment_count>3</comment_count>
      <attachid>156789</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2012-08-06 16:35:05 -0700</bug_when>
    <thetext>Comment on attachment 156789
work in progress

Attachment 156789 did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/13436956</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688568</commentid>
    <comment_count>4</comment_count>
      <attachid>156796</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-06 16:49:50 -0700</bug_when>
    <thetext>Created attachment 156796
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688569</commentid>
    <comment_count>5</comment_count>
      <attachid>156797</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-06 16:50:08 -0700</bug_when>
    <thetext>Created attachment 156797
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688580</commentid>
    <comment_count>6</comment_count>
      <attachid>156803</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-06 17:00:34 -0700</bug_when>
    <thetext>Created attachment 156803
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688587</commentid>
    <comment_count>7</comment_count>
      <attachid>156803</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-08-06 17:09:13 -0700</bug_when>
    <thetext>Comment on attachment 156803
Patch

LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688600</commentid>
    <comment_count>8</comment_count>
      <attachid>156808</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-06 17:22:49 -0700</bug_when>
    <thetext>Created attachment 156808
resolve project.pbxproj merge conflict</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688685</commentid>
    <comment_count>9</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-06 19:04:44 -0700</bug_when>
    <thetext>Committed r124835: &lt;http://trac.webkit.org/changeset/124835&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>689345</commentid>
    <comment_count>10</comment_count>
      <attachid>156808</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-08-07 13:45:51 -0700</bug_when>
    <thetext>Comment on attachment 156808
resolve project.pbxproj merge conflict

View in context: https://bugs.webkit.org/attachment.cgi?id=156808&amp;action=review

&gt; Source/WebCore/bindings/js/JSDOMBinding.h:-414
&gt; -    // FIXME: Remove these functions in favor of activeContext and
&gt; -    // firstContext, which return ScriptExecutionContext*. We prefer to use
&gt; -    // ScriptExecutionContext* as the context object in the bindings.

Adam: Is this comment obsolete? Did you intentionally delete it rather than moving it to BindingState.h?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>689364</commentid>
    <comment_count>11</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-07 14:08:20 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 156808 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=156808&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/bindings/js/JSDOMBinding.h:-414
&gt; &gt; -    // FIXME: Remove these functions in favor of activeContext and
&gt; &gt; -    // firstContext, which return ScriptExecutionContext*. We prefer to use
&gt; &gt; -    // ScriptExecutionContext* as the context object in the bindings.
&gt; 
&gt; Adam: Is this comment obsolete? Did you intentionally delete it rather than moving it to BindingState.h?

I added these comments the last time I tried to fix this problem (Bug 75793).  I&apos;m not 100% sure which approach will work.  Replacing these functions with activeContext and firstContext is one promising approach.  If I don&apos;t succeed this time around, I&apos;ll add comments explaining where we ended up.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156787</attachid>
            <date>2012-08-06 16:28:17 -0700</date>
            <delta_ts>2012-08-06 16:28:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-93307-20120806162753.patch</filename>
            <type>text/plain</type>
            <size>26871</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI0ODA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDczYjAyODEyYzlhNDk0
NDhjMjQ1NDgwMGMwYjVmN2Q1MjQwMzFlMS4uNzU5YzI1NmQ1OGMwZDM1MjFiNGNkYzU0Y2Y1NzEx
MzM3MzM4NDRmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYyIEBACisyMDEyLTA4LTA2ICBBZGFt
IEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgSlNDIHNob3VsZCB1c2UgQmlu
ZGluZ1N0YXRlIHRvIGRldGVybWluZSB0aGUgYWN0aXZlRE9NV2luZG93CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzMwNworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggbW92ZXMgYWN0aXZl
RE9NV2luZG93IGZyb20gSlNET01CaW5kaW5ncy5jcHAgdG8KKyAgICAgICAgQmluZGluZ1N0YXRl
LmNwcC4gVGhpcyBpcyBhIGZpcnN0IHN0ZXAgdG93YXJkcyBzaGFyaW5nIHRoZSBjb3JlCisgICAg
ICAgIHNlY3VyaXR5IGxvZ2ljIGluIHRoZSBiaW5kaW5ncyBiZXR3ZWVuIEphdmFTY3JpcHRDb3Jl
IGFuZCBWOC4gT25jZSB0aGUKKyAgICAgICAgbG9naWMgaXMgc2hhcmVkLCB3ZSB3aWxsIGJlIGFi
bGUgdG8gcmVmYWN0b3IgdGhlIGxvZ2ljIHRvIGF2b2lkIHRoZQorICAgICAgICBuZWVkIGZvciBE
T01XaW5kb3c6Om1fc2VjdXJpdHlPcmlnaW4uCisKKyAgICAgICAgVGhpcyBwYXRjaCBkb2Vzbid0
IGFjdHVhbGx5IHNoYXJlIGFueSBjb2RlICh5ZXQpLiBJdCBqdXN0IHNldHMgdGhlCisgICAgICAg
IHN0YWdlIGJ5IGNyZWF0aW5nIEJpbmRpbmdTdGF0ZSBhcyBhIHR5cGVkZWYgb2YgRXhlY1N0YXRl
IGFuZCBhZGRpbmcgdGhlCisgICAgICAgIGFwcHJvcHJpYXRlIGZpbGVzIHRvIHRoZSBidWlsZCBz
eXN0ZW1zLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWxzbyByZW5hbWVzIGFjdGl2ZVdpbmRvdyBh
bmQgZmlyc3RXaW5kb3cgaW4gdGhlIFY4IGJpbmRpbmdzCisgICAgICAgIHRvIGFjdGl2ZURPTVdp
bmRvdyBhbmQgZmlyc3RET01XaW5kb3cgdG8gbWF0Y2ggdGhlIG5hbWVzIGluIHRoZQorICAgICAg
ICBKYXZhU2NyaXB0Q29yZSBiaW5kaW5ncy4KKworICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3Qu
YW06CisgICAgICAgICogVGFyZ2V0LnByaToKKyAgICAgICAgKiBVc2VKU0MuY21ha2U6CisgICAg
ICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNw
cm9qOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAg
ICAgKiBiaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpjYW5BY2Nlc3NEb2N1bWVudCk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNCaW5kaW5n
c0FsbEluT25lLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwOgor
ICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmg6
CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6YWN0aXZlRE9NV2luZG93KToKKyAgICAgICAgKFdlYkNv
cmU6OmZpcnN0RE9NV2luZG93KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUu
aDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOERP
TVdpbmRvd0N1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6bG9jYXRp
b25BY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpoYW5kbGVQb3N0TWVzc2FnZUNh
bGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlY4RE9NV2luZG93OjpzaG93TW9kYWxEaWFsb2dD
YWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6b3BlbkNhbGxiYWNrKToK
KyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0aW9uQ3VzdG9tLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlY4RG9jdW1lbnQ6OmxvY2F0aW9uQWNjZXNzb3JTZXR0ZXIp
OgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOExvY2F0aW9uQ3VzdG9tLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlY4TG9jYXRpb246Omhhc2hBY2Nlc3NvclNldHRlcik6CisgICAgICAg
IChXZWJDb3JlOjpWOExvY2F0aW9uOjpob3N0QWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2Vi
Q29yZTo6VjhMb2NhdGlvbjo6aG9zdG5hbWVBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJD
b3JlOjpWOExvY2F0aW9uOjpocmVmQWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6
VjhMb2NhdGlvbjo6cGF0aG5hbWVBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpW
OExvY2F0aW9uOjpwb3J0QWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2Nh
dGlvbjo6cHJvdG9jb2xBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0
aW9uOjpzZWFyY2hBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9u
OjpyZWxvYWRDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjpyZXBsYWNl
Q2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2NhdGlvbjo6YXNzaWduQ2FsbGJhY2sp
OgorCiAyMDEyLTA4LTA2ICBBbm5hIENhdmVuZGVyICA8YW5uYWNjQGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBNZWRpYVNvdXJjZSBzaG91bGQgdXNlIGl0J3Mgb3duIGxpc3Qgb2Ygc291cmNlIFVS
THMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmluZGV4IDVlYzBiYzJmMGY4ZDU1N2Y3MmEx
M2ViMTgzMDlmZDQyNGZjYjcwMzMuLmFmZWZjOTZhZWViM2IyNGRlNDIwNGVmNDc3MDAxY2E3M2Uy
M2U5YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KKysr
IGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpAQCAtMTM3MCwxMiArMTM3MCwx
NSBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
QVhPYmplY3RDYWNoZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0FjdGl2
ZURPTUNhbGxiYWNrLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9BY3Rp
dmVET01DYWxsYmFjay5oIFwKKwlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0JpbmRp
bmdTZWN1cml0eS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGlu
Z1NlY3VyaXR5LmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvR2VuZXJpY0Jp
bmRpbmcuaCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxl
ZEZlYXR1cmVzLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1l
RW5hYmxlZEZlYXR1cmVzLmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0FycmF5VmFs
dWUuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9BcnJheVZhbHVlLmggXAorCVNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAgXAorCVNvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9DYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9DYWxsYmFja0Z1bmN0aW9uLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvQ2FsbGJhY2tGdW5jdGlvbi5oIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1Rhcmdl
dC5wcmkgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCmluZGV4IGJiMGViZTQ1NDBjN2Y4NjI0
ZWIwMDAxNGQ0YzQ0ODcyYTMyNTUwNWQuLjk5MGM0MWI4MTg1NjQ3ZjU2NjM4MjJmZmY2YzI3NDU4
ODljNzU2MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKKysrIGIvU291
cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQpAQCAtNjksMTEgKzY5LDEzIEBAIFNPVVJDRVMgKz0gXAog
ICAgIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRhYmxlUm93LmNwcCBcCiAgICAgYWNjZXNz
aWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcCBcCiAgICAgYmluZGluZ3MvZ2VuZXJpYy9BY3RpdmVE
T01DYWxsYmFjay5jcHAgXAorICAgIGJpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNw
cCBcCiAgICAgYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAogCiBT
T1VSQ0VTICs9IFwKICAgICAgYmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwIFwKICAg
ICAgYmluZGluZ3MvanMvQXJyYXlWYWx1ZS5jcHAgXAorICAgICBiaW5kaW5ncy9qcy9CaW5kaW5n
U3RhdGUuY3BwIFwKICAgICAgYmluZGluZ3MvanMvQ2FsbGJhY2tGdW5jdGlvbi5jcHAgXAogICAg
ICBiaW5kaW5ncy9qcy9ET01PYmplY3RIYXNoVGFibGVNYXAuY3BwIFwKICAgICAgYmluZGluZ3Mv
anMvRE9NV3JhcHBlcldvcmxkLmNwcCBcCkBAIC0xMjc5LDkgKzEyODEsMTEgQEAgSEVBREVSUyAr
PSBcCiAgICAgYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmggXAogICAgIGJpbmRpbmdzL1Nj
cmlwdENvbnRyb2xsZXJCYXNlLmggXAogICAgIGJpbmRpbmdzL2dlbmVyaWMvQWN0aXZlRE9NQ2Fs
bGJhY2suaCBcCisgICAgYmluZGluZ3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuaCBcCiAgICAg
YmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKIAogSEVBREVSUyArPSBc
CisgICAgYmluZGluZ3MvanMvQmluZGluZ1N0YXRlLmggXAogICAgIGJpbmRpbmdzL2pzL0NhY2hl
ZFNjcmlwdFNvdXJjZVByb3ZpZGVyLmggXAogICAgIGJpbmRpbmdzL2pzL0NhbGxiYWNrRnVuY3Rp
b24uaCBcCiAgICAgYmluZGluZ3MvanMvR0NDb250cm9sbGVyLmggXApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvVXNlSlNDLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvVXNlSlNDLmNtYWtlCmlu
ZGV4IDk1ODk1ZWQyYWUxYTNlNGIyYjlmMTgyZjJkY2MzZjhkY2MxNDA3ZWUuLjkyYjBjMjUzZDVl
YjkzZWRkODhiNWE1MGEyNzdmYWI2YjYxZTU2YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L1VzZUpTQy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9Vc2VKU0MuY21ha2UKQEAgLTIzLDYg
KzIzLDcgQEAgRU5ESUYgKCkKIAogTElTVChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgYmlu
ZGluZ3MvanMvQXJyYXlWYWx1ZS5jcHAKKyAgICBiaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3Bw
CiAgICAgYmluZGluZ3MvanMvQ2FsbGJhY2tGdW5jdGlvbi5jcHAKICAgICBiaW5kaW5ncy9qcy9E
T01PYmplY3RIYXNoVGFibGVNYXAuY3BwCiAgICAgYmluZGluZ3MvanMvRE9NV3JhcHBlcldvcmxk
LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IGI0NmU1NzFiNjIzZDdmNjQ5MmFlMDIzMGFjNjY2NWNi
MjNkZGE3NmYuLmY5NTA5NjllZjA1ZDUxYWIyMGIzMmE0YzUwN2MwYTM5OWEyNDUzOGQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmd5cGkKQEAgLTE5MjQsNiArMTkyNCw4IEBACiAgICAgICAgICAgICAnYmluZGluZ3Mv
Z29iamVjdC9XZWJLaXRIVE1MRWxlbWVudFdyYXBwZXJGYWN0b3J5LmgnLAogICAgICAgICAgICAg
J2JpbmRpbmdzL2pzL0FycmF5VmFsdWUuY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9B
cnJheVZhbHVlLmgnLAorICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAn
LAorICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5oJywKICAgICAgICAgICAg
ICdiaW5kaW5ncy9qcy9DYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oJywKICAgICAgICAgICAg
ICdiaW5kaW5ncy9qcy9DYWxsYmFja0Z1bmN0aW9uLmNwcCcsCiAgICAgICAgICAgICAnYmluZGlu
Z3MvanMvQ2FsbGJhY2tGdW5jdGlvbi5oJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3By
b2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggN2YzYWYxNGRhZTAwNmVmMjBhZjY3MWVjNjE1MmEwYTJm
N2NhNTViOS4uZmU2NWE1OGM0YTllNTc3MWNkY2M2MDMxNDRiNTAxMzAwZTg1OWY4ZCAxMDA3NTUK
LS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTYzNzg2LDcg
KzYzNzg2LDExIEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKLQkJCQkJUmVsYXRp
dmVQYXRoPSIuLlxiaW5kaW5nc1xnZW5lcmljXEJpbmRpbmdET01XaW5kb3cuaCIKKwkJCQkJUmVs
YXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xnZW5lcmljXEJpbmRpbmdTZWN1cml0eS5jcHAiCisJCQkJ
CT4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5n
c1xnZW5lcmljXEJpbmRpbmdTZWN1cml0eS5oIgogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxG
aWxlCkBAIC02MzkxOCw2ICs2MzkyMiw2MiBAQAogCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgog
CQkJCTwvRmlsZT4KIAkJCQk8RmlsZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpz
XEJpbmRpbmdTdGF0ZS5jcHAiCisJCQkJCT4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJ
CQlOYW1lPSJEZWJ1Z3xXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJ
CQkJPgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJ
Lz4KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJ
CQkJCQlOYW1lPSJSZWxlYXNlfFdpbjMyIgorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUi
CisJCQkJCQk+CisJCQkJCQk8VG9vbAorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCisJ
CQkJCQkvPgorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgorCQkJCQk8RmlsZUNvbmZpZ3VyYXRp
b24KKwkJCQkJCU5hbWU9IkRlYnVnX0NhaXJvX0NGTGl0ZXxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NM
Q29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJ
PEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvX0NGTGl0ZXxXaW4z
MiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wK
KwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29u
ZmlndXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlOYW1lPSJEZWJ1Z19B
bGx8V2luMzIiCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKKwkJCQkJCT4KKwkJCQkJ
CTxUb29sCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKKwkJCQkJCS8+CisJCQkJCTwv
RmlsZUNvbmZpZ3VyYXRpb24+CisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbgorCQkJCQkJTmFtZT0i
UHJvZHVjdGlvbnxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJ
PgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4K
KwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJ
UmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xCaW5kaW5nU3RhdGUuaCIKKwkJCQkJPgorCQkJ
CTwvRmlsZT4KKwkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXENh
bGxiYWNrRnVuY3Rpb24uaCIKIAkJCQkJPgogCQkJCTwvRmlsZT4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwYmQ0MGViNWZiMmFj
ZDJjMGYzYTFmZDE5NmYyM2I2YWZjNDZhOTM2Li4yYzRhY2JmNGZmNzE3NmQ3NzE5MjRkOWZkNWU2
NGI3MmI3NGM5YWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCkBAIC0zNDYxLDYgKzM0NjEsMTAgQEAKIAkJOTcyOEMzMTQxMjY4RTQz
OTAwNDFFODlCIC8qIE1hcmt1cEFjY3VtdWxhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzI4QzMxMjEyNjhFNDM5MDA0MUU4OUIgLyogTWFya3Vw
QWNjdW11bGF0b3IuaCAqLzsgfTsKIAkJOTczODg5QTAxMTZFQTlEQzAwQURGMzEzIC8qIERvY3Vt
ZW50V3JpdGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDk3Mzg4OTlFMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5jcHAgKi87IH07
CiAJCTk3Mzg4OUExMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczODg5OUYxMTZFQTlEQzAw
QURGMzEzIC8qIERvY3VtZW50V3JpdGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTczQUEzRjQxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdT
dGF0ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
NzNBQTNGMjE1RDA4OEYwMDBFMzhBODUgLyogQmluZGluZ1N0YXRlLmNwcCAqLzsgfTsKKwkJOTcz
QUEzRjUxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczQUEzRjMxNUQwODhGMDAwRTM4QTg1IC8q
IEJpbmRpbmdTdGF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTk3M0FBM0Y5MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczQUEzRjcx
NUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5jcHAgKi87IH07CisJCTk3M0FBM0ZB
MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3M0FBM0Y4MTVEMDg5MUIwMEUzOEE4NSAvKiBC
aW5kaW5nU2VjdXJpdHkuaCAqLzsgfTsKIAkJOTczREM2M0YxNDVBOTQwOTAwMjg0MkMyIC8qIEV4
Y2VwdGlvbkNvZGVEZXNjcmlwdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5NzNEQzYzRDE0NUE5NDA5MDAyODQyQzIgLyogRXhjZXB0aW9uQ29k
ZURlc2NyaXB0aW9uLmNwcCAqLzsgfTsKIAkJOTczREM2NDAxNDVBOTQwOTAwMjg0MkMyIC8qIEV4
Y2VwdGlvbkNvZGVEZXNjcmlwdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTczREM2M0UxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2VwdGlvbkNvZGVE
ZXNjcmlwdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCTk3M0UzMjU2MTA4ODNCN0MwMDVCQzQ5MyAvKiBSZXNvdXJjZUxvYWROb3RpZmllci5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzNFMzI1
NDEwODgzQjdDMDA1QkM0OTMgLyogUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwICovOyB9OwpAQCAt
MTA2MDQsNiArMTA2MDgsMTAgQEAKIAkJOTcyOEMzMTIxMjY4RTQzOTAwNDFFODlCIC8qIE1hcmt1
cEFjY3VtdWxhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hcmt1cEFj
Y3VtdWxhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3Mzg4OTlFMTE2RUE5
REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBEb2N1bWVudFdyaXRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTk3Mzg4OTlGMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEb2N1bWVudFdyaXRlci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5NzNBQTNGMjE1RDA4OEYwMDBFMzhBODUgLyogQmluZGluZ1N0
YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJpbmRpbmdTdGF0
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3M0FBM0YzMTVEMDg4RjAwMEUz
OEE4NSAvKiBCaW5kaW5nU3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QmluZGluZ1N0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3M0FBM0Y3MTVE
MDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gQmluZGluZ1NlY3VyaXR5LmNwcDsgcGF0aCA9IGdlbmVyaWMvQmlu
ZGluZ1NlY3VyaXR5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTczQUEzRjgx
NUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IG5hbWUgPSBCaW5kaW5nU2VjdXJpdHkuaDsgcGF0aCA9IGdlbmVyaWMvQmluZGluZ1Nl
Y3VyaXR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3M0RDNjNEMTQ1QTk0MDkw
MDI4NDJDMiAvKiBFeGNlcHRpb25Db2RlRGVzY3JpcHRpb24uY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRXhjZXB0aW9uQ29kZURlc2NyaXB0aW9uLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTczREM2M0UxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2Vw
dGlvbkNvZGVEZXNjcmlwdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBF
eGNlcHRpb25Db2RlRGVzY3JpcHRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTczRTMyNTQxMDg4M0I3QzAwNUJDNDkzIC8qIFJlc291cmNlTG9hZE5vdGlmaWVyLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlc291cmNlTG9hZE5vdGlmaWVyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIwMDAzLDYgKzIwMDExLDggQEAKIAkJ
CWNoaWxkcmVuID0gKAogCQkJCUI1RDMxREY4MTFDRjYxMEIwMDlGMjJCNCAvKiBBY3RpdmVET01D
YWxsYmFjay5jcHAgKi8sCiAJCQkJQjVEMzFERjkxMUNGNjEwQjAwOUYyMkI0IC8qIEFjdGl2ZURP
TUNhbGxiYWNrLmggKi8sCisJCQkJOTczQUEzRjcxNUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdT
ZWN1cml0eS5jcHAgKi8sCisJCQkJOTczQUEzRjgxNUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdT
ZWN1cml0eS5oICovLAogCQkJCUE2MjJBOEY5MTIyQzQ0QTYwMEE3ODVCMyAvKiBHZW5lcmljQmlu
ZGluZy5oICovLAogCQkJKTsKIAkJCW5hbWUgPSBnZW5lcmljOwpAQCAtMjAwNDksNiArMjAwNTks
OCBAQAogCQkJCTE0REZCMzNGMEE3REY3NjMwMDE4Rjc2OSAvKiBEZXJpdmVkIFNvdXJjZXMgKi8s
CiAJCQkJNDlCMzc2MEExNUM2QzY4NDAwNTkxMzFEIC8qIEFycmF5VmFsdWUuY3BwICovLAogCQkJ
CTQ5QjM3NjBCMTVDNkM2ODQwMDU5MTMxRCAvKiBBcnJheVZhbHVlLmggKi8sCisJCQkJOTczQUEz
RjIxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5jcHAgKi8sCisJCQkJOTczQUEzRjMx
NUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5oICovLAogCQkJCUJDRDUzMzYzMEVENjg0
ODkwMDg4NzQ2OCAvKiBDYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oICovLAogCQkJCTkzRjhC
MzA2MEEzMDBGRUEwMEY2MUFCOCAvKiBDb2RlR2VuZXJhdG9ySlMucG0gKi8sCiAJCQkJMzEyRDY3
QjAxNTM1NjkxRjAwNTYzRDBEIC8qIERpY3Rpb25hcnkuY3BwICovLApAQCAtMjUzNzUsNiArMjUz
ODcsOCBAQAogCQkJCUUxQkU1MTJFMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCTk3N0UyRTBGMTJGMEZDOUMwMEMxMzM3OSAvKiBYU1NBdWRp
dG9yLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRDUzNzM1MzEzN0I2NTE4MDAwMDhEQ0UgLyogWmVy
b1BvbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3M0FBM0Y1MTVEMDg4RjAwMEUzOEE4NSAvKiBC
aW5kaW5nU3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3M0FBM0ZBMTVEMDg5MUIwMEUzOEE4
NSAvKiBCaW5kaW5nU2VjdXJpdHkuaCBpbiBIZWFkZXJzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlG
b3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtMjg0NDksNiArMjg0NjMs
OCBAQAogCQkJCUUxQkU1MTJEMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJOTc3RTJFMEUxMkYwRkM5QzAwQzEzMzc5IC8qIFhTU0F1ZGl0
b3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkQ1MzczNTIxMzdCNjUxODAwMDA4RENFIC8qIFpl
cm9Qb2xlLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTk3M0FBM0Y0MTVEMDg4RjAwMEUzOEE4NSAv
KiBCaW5kaW5nU3RhdGUuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJOTczQUEzRjkxNUQwODkxQjAw
RTM4QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5jcHAgaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQly
dW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcAppbmRleCA0
ZDhlZGI5NTQ3MGUwNmMzNzg1ODIxZDU1ODI4YWEyMjQ0OWIyZDM5Li5mNzBkM2E3M2I3MmJhZDhk
NjU2MjI2OTIyOTI1NTQ1ZjVlZmU1YmJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuY3BwCkBAIC00Nyw3ICs0Nyw3IEBAIHN0YXRp
YyBib29sIGNhbkFjY2Vzc0RvY3VtZW50KEJpbmRpbmdTdGF0ZSogc3RhdGUsIERvY3VtZW50KiB0
YXJnZXREb2N1bWVudCwgYm9vCiAgICAgaWYgKCF0YXJnZXREb2N1bWVudCkKICAgICAgICAgcmV0
dXJuIGZhbHNlOwogCi0gICAgRE9NV2luZG93KiBhY3RpdmUgPSBhY3RpdmVXaW5kb3coc3RhdGUp
OworICAgIERPTVdpbmRvdyogYWN0aXZlID0gYWN0aXZlRE9NV2luZG93KHN0YXRlKTsKICAgICBp
ZiAoIWFjdGl2ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcAppbmRleCBjZjFmNDJiOGUwYjNi
YTRmMjQ0MjgzYzk1YWEzNTJjODBiMDEyZWY4Li4zNjIyYjQ3MTI1MGE4MjUwZjhkOGY2NDIwYjE4
YjI3ZDBiNzZhNWU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0Jp
bmRpbmdzQWxsSW5PbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmlu
ZGluZ3NBbGxJbk9uZS5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKIC8vIFRoaXMgYWxsLWluLW9uZSBj
cHAgZmlsZSBjdXRzIGRvd24gb24gdGVtcGxhdGUgYmxvYXQgdG8gYWxsb3cgdXMgdG8gYnVpbGQg
b3VyIFdpbmRvd3MgcmVsZWFzZSBidWlsZC4KIAogI2luY2x1ZGUgIkFycmF5VmFsdWUuY3BwIgor
I2luY2x1ZGUgIkJpbmRpbmdTdGF0ZS5jcHAiCiAjaW5jbHVkZSAiQ2FsbGJhY2tGdW5jdGlvbi5j
cHAiCiAjaW5jbHVkZSAiRE9NT2JqZWN0SGFzaFRhYmxlTWFwLmNwcCIKICNpbmNsdWRlICJET01X
cmFwcGVyV29ybGQuY3BwIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01CaW5kaW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGlu
Zy5jcHAKaW5kZXggMzFmMjVkYWYwYWIyNjNiMjE2ZGI0OThkMTk5NDk0NWJlYTNkOTYxMi4uZTA3
YTkzMmUzMzQzNDIyMGZhMjIyMjljMjhlZTNkZDUyODA2ZTBmZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwCkBAIC0yMjEsMTYgKzIyMSw2IEBAIHZvaWQg
c2V0RE9NRXhjZXB0aW9uKEV4ZWNTdGF0ZSogZXhlYywgRXhjZXB0aW9uQ29kZSBlYykKIAogI3Vu
ZGVmIFRSWV9UT19DUkVBVEVfRVhDRVBUSU9OCiAKLURPTVdpbmRvdyogYWN0aXZlRE9NV2luZG93
KEV4ZWNTdGF0ZSogZXhlYykKLXsKLSAgICByZXR1cm4gYXNKU0RPTVdpbmRvdyhleGVjLT5sZXhp
Y2FsR2xvYmFsT2JqZWN0KCkpLT5pbXBsKCk7Ci19Ci0KLURPTVdpbmRvdyogZmlyc3RET01XaW5k
b3coRXhlY1N0YXRlKiBleGVjKQotewotICAgIHJldHVybiBhc0pTRE9NV2luZG93KGV4ZWMtPmR5
bmFtaWNHbG9iYWxPYmplY3QoKSktPmltcGwoKTsKLX0KLQogYm9vbCBzaG91bGRBbGxvd0FjY2Vz
c1RvTm9kZShFeGVjU3RhdGUqIGV4ZWMsIE5vZGUqIG5vZGUpCiB7CiAgICAgcmV0dXJuIG5vZGUg
JiYgc2hvdWxkQWxsb3dBY2Nlc3NUb0ZyYW1lKGV4ZWMsIG5vZGUtPmRvY3VtZW50KCktPmZyYW1l
KCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5n
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuaAppbmRleCA2N2Jh
ZGQyMzY2ZTFhNjQ2MDE3YWQxYTM3YTI4YjkyZjgzOGE1NDMwLi45OTFkOGMxODg5ZTU3OTJlYzIx
MTQyNjI2MWM5YjMwY2RlOGViOTBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RPTUJpbmRpbmcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TUJpbmRpbmcuaApAQCAtMjIsNiArMjIsNyBAQAogI2lmbmRlZiBKU0RPTUJpbmRpbmdfaAogI2Rl
ZmluZSBKU0RPTUJpbmRpbmdfaAogCisjaW5jbHVkZSAiQmluZGluZ1N0YXRlLmgiCiAjaW5jbHVk
ZSAiQ1NTSW1wb3J0UnVsZS5oIgogI2luY2x1ZGUgIkNTU1N0eWxlRGVjbGFyYXRpb24uaCIKICNp
bmNsdWRlICJDU1NTdHlsZVNoZWV0LmgiCkBAIC00MDksMTIgKzQxMCw2IEBAIGVudW0gUGFyYW1l
dGVyRGVmYXVsdFBvbGljeSB7CiAgICAgYm9vbCBzaG91bGRBbGxvd0FjY2Vzc1RvRnJhbWUoSlND
OjpFeGVjU3RhdGUqLCBGcmFtZSosIFN0cmluZyYgbWVzc2FnZSk7CiAgICAgLy8gRklYTUU6IElt
cGxlbWVudCBhbGxvd0FjY2Vzc1RvRE9NV2luZG93KEpTQzo6RXhlY1N0YXRlKiwgRE9NV2luZG93
Kik7CiAKLSAgICAvLyBGSVhNRTogUmVtb3ZlIHRoZXNlIGZ1bmN0aW9ucyBpbiBmYXZvciBvZiBh
Y3RpdmVDb250ZXh0IGFuZAotICAgIC8vIGZpcnN0Q29udGV4dCwgd2hpY2ggcmV0dXJuIFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqLiBXZSBwcmVmZXIgdG8gdXNlCi0gICAgLy8gU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogYXMgdGhlIGNvbnRleHQgb2JqZWN0IGluIHRoZSBiaW5kaW5ncy4KLSAgICBE
T01XaW5kb3cqIGFjdGl2ZURPTVdpbmRvdyhKU0M6OkV4ZWNTdGF0ZSopOwotICAgIERPTVdpbmRv
dyogZmlyc3RET01XaW5kb3coSlNDOjpFeGVjU3RhdGUqKTsKLQogICAgIHZvaWQgcHJpbnRFcnJv
ck1lc3NhZ2VGb3JGcmFtZShGcmFtZSosIGNvbnN0IFN0cmluZyYgbWVzc2FnZSk7CiAgICAgSlND
OjpKU1ZhbHVlIG9iamVjdFRvU3RyaW5nRnVuY3Rpb25HZXR0ZXIoSlNDOjpFeGVjU3RhdGUqLCBK
U0M6OkpTVmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvdjgvQmluZGluZ1N0YXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L0JpbmRpbmdTdGF0ZS5jcHAKaW5kZXggZmRmNWMwNzA1YWRkZDFiYTI0YjZlYTA0OTk3
NDQ4OWI2YjMzN2ZlZi4uODgwOWU0ZDRmOWU2MWJkYjhkZDk0NWJhMjVlNzFlNjU2ZDE5YzM3NyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvQmluZGluZ1N0YXRlLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuY3BwCkBAIC01NSwx
MiArNTUsMTIgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OkNvbnRleHQ+IGFjdGl2ZUNvbnRleHQo
KQogICAgIHJldHVybiB2ODo6Q29udGV4dDo6R2V0RW50ZXJlZCgpOwogfQogCi1ET01XaW5kb3cq
IGFjdGl2ZVdpbmRvdyhCaW5kaW5nU3RhdGUqKQorRE9NV2luZG93KiBhY3RpdmVET01XaW5kb3co
QmluZGluZ1N0YXRlKikKIHsKICAgICByZXR1cm4gVjhQcm94eTo6cmV0cmlldmVXaW5kb3coYWN0
aXZlQ29udGV4dCgpKTsKIH0KIAotRE9NV2luZG93KiBmaXJzdFdpbmRvdyhCaW5kaW5nU3RhdGUq
KQorRE9NV2luZG93KiBmaXJzdERPTVdpbmRvdyhCaW5kaW5nU3RhdGUqKQogewogICAgIHJldHVy
biBWOFByb3h5OjpyZXRyaWV2ZVdpbmRvdyh2ODo6Q29udGV4dDo6R2V0RW50ZXJlZCgpKTsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0JpbmRpbmdTdGF0ZS5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvQmluZGluZ1N0YXRlLmgKaW5kZXggOTcxMWVlODk0
YWM4MjJhMjBmODVmNDEyZjM0MDM0N2NhNmJjZTBmZC4uZDM1NGJlMjYzM2JmODFkZDFkMTI3NDE0
YzQ0YzBiNjQxZGI5OTdhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvdjgv
QmluZGluZ1N0YXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvQmluZGluZ1N0
YXRlLmgKQEAgLTQ0LDggKzQ0LDggQEAgcHVibGljOgogICAgIHN0YXRpYyBCaW5kaW5nU3RhdGUq
IGluc3RhbmNlKCk7CiB9OwogCi1ET01XaW5kb3cqIGFjdGl2ZVdpbmRvdyhCaW5kaW5nU3RhdGUq
KTsKLURPTVdpbmRvdyogZmlyc3RXaW5kb3coQmluZGluZ1N0YXRlKik7CitET01XaW5kb3cqIGFj
dGl2ZURPTVdpbmRvdyhCaW5kaW5nU3RhdGUqKTsKK0RPTVdpbmRvdyogZmlyc3RET01XaW5kb3co
QmluZGluZ1N0YXRlKik7CiAKIEZyYW1lKiBhY3RpdmVGcmFtZShCaW5kaW5nU3RhdGUqKTsKIEZy
YW1lKiBmaXJzdEZyYW1lKEJpbmRpbmdTdGF0ZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9NV2luZG93Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5jcHAKaW5kZXggOGZhMjgw
OGU3MzhiMDFhMTM1ZTlkYzljMDI3ZmJkYmMxMmQyMmQ2Yi4uYzdjYmY2MTBkNDljYmRhNzc5OGUz
ODc4NDk1Mzc0Y2NmOWQ3ZTBiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
djgvY3VzdG9tL1Y4RE9NV2luZG93Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20uY3BwCkBAIC0xODksMTEgKzE4OSwxMSBA
QCB2b2lkIFY4RE9NV2luZG93Ojpsb2NhdGlvbkFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6
U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8dgogICAgIERPTVdpbmRvdyogaW1wID0gVjhET01XaW5k
b3c6OnRvTmF0aXZlKGluZm8uSG9sZGVyKCkpOwogICAgIEJpbmRpbmdTdGF0ZSogc3RhdGUgPSBC
aW5kaW5nU3RhdGU6Omluc3RhbmNlKCk7CiAKLSAgICBET01XaW5kb3cqIGFjdGl2ZSA9IGFjdGl2
ZVdpbmRvdyhzdGF0ZSk7CisgICAgRE9NV2luZG93KiBhY3RpdmUgPSBhY3RpdmVET01XaW5kb3co
c3RhdGUpOwogICAgIGlmICghYWN0aXZlKQogICAgICAgcmV0dXJuOwogCi0gICAgRE9NV2luZG93
KiBmaXJzdCA9IGZpcnN0V2luZG93KHN0YXRlKTsKKyAgICBET01XaW5kb3cqIGZpcnN0ID0gZmly
c3RET01XaW5kb3coc3RhdGUpOwogICAgIGlmICghZmlyc3QpCiAgICAgICByZXR1cm47CiAKQEAg
LTMwMCw3ICszMDAsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGhhbmRsZVBvc3RN
ZXNzYWdlQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncwogICAgIC8vIE5vbmUgb2Yg
dGhlc2UgbmVlZCB0byBiZSBSZWZQdHIgYmVjYXVzZSBhcmdzIGFuZCBjb250ZXh0IGFyZSBndWFy
YW50ZWVkCiAgICAgLy8gdG8gaG9sZCBvbiB0byB0aGVtLgogICAgIERPTVdpbmRvdyogd2luZG93
ID0gVjhET01XaW5kb3c6OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwotICAgIERPTVdpbmRvdyog
c291cmNlID0gYWN0aXZlV2luZG93KEJpbmRpbmdTdGF0ZTo6aW5zdGFuY2UoKSk7CisgICAgRE9N
V2luZG93KiBzb3VyY2UgPSBhY3RpdmVET01XaW5kb3coQmluZGluZ1N0YXRlOjppbnN0YW5jZSgp
KTsKIAogICAgIC8vIElmIGNhbGxlZCBkaXJlY3RseSBieSBXZWJDb3JlIHdlIGRvbid0IGhhdmUg
YSBjYWxsaW5nIGNvbnRleHQuCiAgICAgaWYgKCFzb3VyY2UpCkBAIC00NDEsNyArNDQxLDcgQEAg
djg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RE9NV2luZG93OjpzaG93TW9kYWxEaWFsb2dDYWxsYmFj
ayhjb25zdCB2ODo6QXJndW1lbnRzJgogICAgIERpYWxvZ0hhbmRsZXIgaGFuZGxlcihhcmdzWzFd
KTsKICAgICBTdHJpbmcgZGlhbG9nRmVhdHVyZXNTdHJpbmcgPSB0b1dlYkNvcmVTdHJpbmdXaXRo
TnVsbE9yVW5kZWZpbmVkQ2hlY2soYXJnc1syXSk7CiAKLSAgICBpbXBsLT5zaG93TW9kYWxEaWFs
b2codXJsU3RyaW5nLCBkaWFsb2dGZWF0dXJlc1N0cmluZywgYWN0aXZlV2luZG93KHN0YXRlKSwg
Zmlyc3RXaW5kb3coc3RhdGUpLCBzZXRVcERpYWxvZywgJmhhbmRsZXIpOworICAgIGltcGwtPnNo
b3dNb2RhbERpYWxvZyh1cmxTdHJpbmcsIGRpYWxvZ0ZlYXR1cmVzU3RyaW5nLCBhY3RpdmVET01X
aW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSksIHNldFVwRGlhbG9nLCAmaGFuZGxl
cik7CiAKICAgICByZXR1cm4gaGFuZGxlci5yZXR1cm5WYWx1ZSgpOwogfQpAQCAtNDU5LDcgKzQ1
OSw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOERPTVdpbmRvdzo6b3BlbkNhbGxiYWNrKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAgQXRvbWljU3RyaW5nIGZyYW1lTmFtZSA9IChh
cmdzWzFdLT5Jc1VuZGVmaW5lZCgpIHx8IGFyZ3NbMV0tPklzTnVsbCgpKSA/ICJfYmxhbmsiIDog
QXRvbWljU3RyaW5nKHRvV2ViQ29yZVN0cmluZyhhcmdzWzFdKSk7CiAgICAgU3RyaW5nIHdpbmRv
d0ZlYXR1cmVzU3RyaW5nID0gdG9XZWJDb3JlU3RyaW5nV2l0aE51bGxPclVuZGVmaW5lZENoZWNr
KGFyZ3NbMl0pOwogCi0gICAgUmVmUHRyPERPTVdpbmRvdz4gb3BlbmVkV2luZG93ID0gaW1wbC0+
b3Blbih1cmxTdHJpbmcsIGZyYW1lTmFtZSwgd2luZG93RmVhdHVyZXNTdHJpbmcsIGFjdGl2ZVdp
bmRvdyhzdGF0ZSksIGZpcnN0V2luZG93KHN0YXRlKSk7CisgICAgUmVmUHRyPERPTVdpbmRvdz4g
b3BlbmVkV2luZG93ID0gaW1wbC0+b3Blbih1cmxTdHJpbmcsIGZyYW1lTmFtZSwgd2luZG93RmVh
dHVyZXNTdHJpbmcsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRl
KSk7CiAgICAgaWYgKCFvcGVuZWRXaW5kb3cpCiAgICAgICAgIHJldHVybiB2ODo6VW5kZWZpbmVk
KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERv
Y3VtZW50TG9jYXRpb25DdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4RG9jdW1lbnRMb2NhdGlvbkN1c3RvbS5jcHAKaW5kZXggNGMxOTQ5NTk5YTU2MDM4MjE4
MzZiYzlhYjQyOWNjMTM3MjhiN2FjZi4uYjJkODFlODRjMmQ3NWQ5MjI0OTY5ODRhMTZhMTg0NGZi
YTFmN2MzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4
RG9jdW1lbnRMb2NhdGlvbkN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
djgvY3VzdG9tL1Y4RG9jdW1lbnRMb2NhdGlvbkN1c3RvbS5jcHAKQEAgLTUyLDExICs1MiwxMSBA
QCB2b2lkIFY4RG9jdW1lbnQ6OmxvY2F0aW9uQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2OAogCiAgICAgQmluZGluZ1N0YXRlKiBzdGF0ZSA9IEJp
bmRpbmdTdGF0ZTo6aW5zdGFuY2UoKTsKIAotICAgIERPTVdpbmRvdyogYWN0aXZlID0gYWN0aXZl
V2luZG93KHN0YXRlKTsKKyAgICBET01XaW5kb3cqIGFjdGl2ZSA9IGFjdGl2ZURPTVdpbmRvdyhz
dGF0ZSk7CiAgICAgaWYgKCFhY3RpdmUpCiAgICAgICAgIHJldHVybjsKIAotICAgIERPTVdpbmRv
dyogZmlyc3QgPSBmaXJzdFdpbmRvdyhzdGF0ZSk7CisgICAgRE9NV2luZG93KiBmaXJzdCA9IGZp
cnN0RE9NV2luZG93KHN0YXRlKTsKICAgICBpZiAoIWZpcnN0KQogICAgICAgICByZXR1cm47CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOExvY2F0aW9u
Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOExvY2F0aW9u
Q3VzdG9tLmNwcAppbmRleCA3MmRjY2M3NjdjNWU3OTc4OWMwZTk2YmUzNDJiMGQ1NDA0MGE5Mzdj
Li40MmYwMmY5YjU5ZDY2MDRiZTQ2NWYyNjEzMGUyZmNhOTQ1ZjM0YTU0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhMb2NhdGlvbkN1c3RvbS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4TG9jYXRpb25DdXN0b20uY3Bw
CkBAIC01NSw3ICs1NSw3IEBAIHZvaWQgVjhMb2NhdGlvbjo6aGFzaEFjY2Vzc29yU2V0dGVyKHY4
OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhCiAgICAgLy8gRklYTUU6
IEhhbmRsZSBleGNlcHRpb25zIGNvcnJlY3RseS4KICAgICBTdHJpbmcgaGFzaCA9IHRvV2ViQ29y
ZVN0cmluZyh2YWx1ZSk7CiAKLSAgICBpbXBsLT5zZXRIYXNoKGhhc2gsIGFjdGl2ZVdpbmRvdyhz
dGF0ZSksIGZpcnN0V2luZG93KHN0YXRlKSk7CisgICAgaW1wbC0+c2V0SGFzaChoYXNoLCBhY3Rp
dmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkpOwogfQogCiB2b2lkIFY4
TG9jYXRpb246Omhvc3RBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwg
djg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8p
CkBAIC02Nyw3ICs2Nyw3IEBAIHZvaWQgVjhMb2NhdGlvbjo6aG9zdEFjY2Vzc29yU2V0dGVyKHY4
OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhCiAgICAgLy8gRklYTUU6
IEhhbmRsZSBleGNlcHRpb25zIGNvcnJlY3RseS4KICAgICBTdHJpbmcgaG9zdCA9IHRvV2ViQ29y
ZVN0cmluZyh2YWx1ZSk7CiAKLSAgICBpbXBsLT5zZXRIb3N0KGhvc3QsIGFjdGl2ZVdpbmRvdyhz
dGF0ZSksIGZpcnN0V2luZG93KHN0YXRlKSk7CisgICAgaW1wbC0+c2V0SG9zdChob3N0LCBhY3Rp
dmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkpOwogfQogCiB2b2lkIFY4
TG9jYXRpb246Omhvc3RuYW1lQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5h
bWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBp
bmZvKQpAQCAtNzksNyArNzksNyBAQCB2b2lkIFY4TG9jYXRpb246Omhvc3RuYW1lQWNjZXNzb3JT
ZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2OAogICAgIC8vIEZJ
WE1FOiBIYW5kbGUgZXhjZXB0aW9ucyBjb3JyZWN0bHkuCiAgICAgU3RyaW5nIGhvc3RuYW1lID0g
dG9XZWJDb3JlU3RyaW5nKHZhbHVlKTsKIAotICAgIGltcGwtPnNldEhvc3RuYW1lKGhvc3RuYW1l
LCBhY3RpdmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSkpOworICAgIGltcGwtPnNl
dEhvc3RuYW1lKGhvc3RuYW1lLCBhY3RpdmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRv
dyhzdGF0ZSkpOwogfQogCiB2b2lkIFY4TG9jYXRpb246OmhyZWZBY2Nlc3NvclNldHRlcih2ODo6
TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0
IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCkBAIC05MSw3ICs5MSw3IEBAIHZvaWQgVjhMb2NhdGlv
bjo6aHJlZkFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9j
YWw8djg6OlZhCiAgICAgLy8gRklYTUU6IEhhbmRsZSBleGNlcHRpb25zIGNvcnJlY3RseS4KICAg
ICBTdHJpbmcgaHJlZiA9IHRvV2ViQ29yZVN0cmluZyh2YWx1ZSk7CiAKLSAgICBpbXBsLT5zZXRI
cmVmKGhyZWYsIGFjdGl2ZVdpbmRvdyhzdGF0ZSksIGZpcnN0V2luZG93KHN0YXRlKSk7CisgICAg
aW1wbC0+c2V0SHJlZihocmVmLCBhY3RpdmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRv
dyhzdGF0ZSkpOwogfQogCiB2b2lkIFY4TG9jYXRpb246OnBhdGhuYW1lQWNjZXNzb3JTZXR0ZXIo
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBj
b25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpAQCAtMTAzLDcgKzEwMyw3IEBAIHZvaWQgVjhM
b2NhdGlvbjo6cGF0aG5hbWVBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFt
ZSwgdjg6OkxvY2FsPHY4CiAgICAgLy8gRklYTUU6IEhhbmRsZSBleGNlcHRpb25zIGNvcnJlY3Rs
eS4KICAgICBTdHJpbmcgcGF0aG5hbWUgPSB0b1dlYkNvcmVTdHJpbmcodmFsdWUpOwogCi0gICAg
aW1wbC0+c2V0UGF0aG5hbWUocGF0aG5hbWUsIGFjdGl2ZVdpbmRvdyhzdGF0ZSksIGZpcnN0V2lu
ZG93KHN0YXRlKSk7CisgICAgaW1wbC0+c2V0UGF0aG5hbWUocGF0aG5hbWUsIGFjdGl2ZURPTVdp
bmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSk7CiB9CiAKIHZvaWQgVjhMb2NhdGlv
bjo6cG9ydEFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9j
YWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKQEAgLTEx
NSw3ICsxMTUsNyBAQCB2b2lkIFY4TG9jYXRpb246OnBvcnRBY2Nlc3NvclNldHRlcih2ODo6TG9j
YWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYQogICAgIC8vIEZJWE1FOiBIYW5k
bGUgZXhjZXB0aW9ucyBjb3JyZWN0bHkuCiAgICAgU3RyaW5nIHBvcnQgPSB0b1dlYkNvcmVTdHJp
bmcodmFsdWUpOwogCi0gICAgaW1wbC0+c2V0UG9ydChwb3J0LCBhY3RpdmVXaW5kb3coc3RhdGUp
LCBmaXJzdFdpbmRvdyhzdGF0ZSkpOworICAgIGltcGwtPnNldFBvcnQocG9ydCwgYWN0aXZlRE9N
V2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUpKTsKIH0KIAogdm9pZCBWOExvY2F0
aW9uOjpwcm90b2NvbEFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2
ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykK
QEAgLTEyOCw3ICsxMjgsNyBAQCB2b2lkIFY4TG9jYXRpb246OnByb3RvY29sQWNjZXNzb3JTZXR0
ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2OAogICAgIFN0cmluZyBw
cm90b2NvbCA9IHRvV2ViQ29yZVN0cmluZyh2YWx1ZSk7CiAKICAgICBFeGNlcHRpb25Db2RlIGVj
ID0gMDsKLSAgICBpbXBsLT5zZXRQcm90b2NvbChwcm90b2NvbCwgYWN0aXZlV2luZG93KHN0YXRl
KSwgZmlyc3RXaW5kb3coc3RhdGUpLCBlYyk7CisgICAgaW1wbC0+c2V0UHJvdG9jb2wocHJvdG9j
b2wsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSwgZWMpOwog
ICAgIGlmIChVTkxJS0VMWShlYykpCiAgICAgICAgIFY4UHJveHk6OnNldERPTUV4Y2VwdGlvbihl
YywgaW5mby5HZXRJc29sYXRlKCkpOwogfQpAQCAtMTQyLDcgKzE0Miw3IEBAIHZvaWQgVjhMb2Nh
dGlvbjo6c2VhcmNoQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4
OjpMb2NhbDx2ODo6CiAgICAgLy8gRklYTUU6IEhhbmRsZSBleGNlcHRpb25zIGNvcnJlY3RseS4K
ICAgICBTdHJpbmcgc2VhcmNoID0gdG9XZWJDb3JlU3RyaW5nKHZhbHVlKTsKIAotICAgIGltcGwt
PnNldFNlYXJjaChzZWFyY2gsIGFjdGl2ZVdpbmRvdyhzdGF0ZSksIGZpcnN0V2luZG93KHN0YXRl
KSk7CisgICAgaW1wbC0+c2V0U2VhcmNoKHNlYXJjaCwgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwg
Zmlyc3RET01XaW5kb3coc3RhdGUpKTsKIH0KIAogdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4TG9j
YXRpb246OnJlbG9hZEFjY2Vzc29yR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBj
b25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpAQCAtMjA2LDcgKzIwNiw3IEBAIHY4OjpIYW5k
bGU8djg6OlZhbHVlPiBWOExvY2F0aW9uOjpyZWxvYWRDYWxsYmFjayhjb25zdCB2ODo6QXJndW1l
bnRzJiBhcmdzKQogICAgIExvY2F0aW9uKiBpbXBsID0gVjhMb2NhdGlvbjo6dG9OYXRpdmUoYXJn
cy5Ib2xkZXIoKSk7CiAgICAgQmluZGluZ1N0YXRlKiBzdGF0ZSA9IEJpbmRpbmdTdGF0ZTo6aW5z
dGFuY2UoKTsKIAotICAgIGltcGwtPnJlbG9hZChhY3RpdmVXaW5kb3coc3RhdGUpKTsKKyAgICBp
bXBsLT5yZWxvYWQoYWN0aXZlRE9NV2luZG93KHN0YXRlKSk7CiAgICAgcmV0dXJuIHY4OjpVbmRl
ZmluZWQoKTsKIH0KIApAQCAtMjE5LDcgKzIxOSw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBW
OExvY2F0aW9uOjpyZXBsYWNlQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKICAg
ICAvLyBGSVhNRTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyB1cmxT
dHJpbmcgPSB0b1dlYkNvcmVTdHJpbmcoYXJnc1swXSk7CiAKLSAgICBpbXBsLT5yZXBsYWNlKHVy
bFN0cmluZywgYWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBp
bXBsLT5yZXBsYWNlKHVybFN0cmluZywgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01X
aW5kb3coc3RhdGUpKTsKICAgICByZXR1cm4gdjg6OlVuZGVmaW5lZCgpOwogfQogCkBAIC0yMzIs
NyArMjMyLDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4TG9jYXRpb246OmFzc2lnbkNhbGxi
YWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAgLy8gRklYTUU6IEhhbmRsZSBleGNl
cHRpb25zIGNvcnJlY3RseS4KICAgICBTdHJpbmcgdXJsU3RyaW5nID0gdG9XZWJDb3JlU3RyaW5n
KGFyZ3NbMF0pOwogCi0gICAgaW1wbC0+YXNzaWduKHVybFN0cmluZywgYWN0aXZlV2luZG93KHN0
YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5hc3NpZ24odXJsU3RyaW5nLCBh
Y3RpdmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkpOwogICAgIHJldHVy
biB2ODo6VW5kZWZpbmVkKCk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156789</attachid>
            <date>2012-08-06 16:28:54 -0700</date>
            <delta_ts>2012-08-06 16:49:43 -0700</delta_ts>
            <desc>work in progress</desc>
            <filename>bug-93307-20120806162830.patch</filename>
            <type>text/plain</type>
            <size>31276</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI0ODA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDczYjAyODEyYzlhNDk0
NDhjMjQ1NDgwMGMwYjVmN2Q1MjQwMzFlMS4uNzU5YzI1NmQ1OGMwZDM1MjFiNGNkYzU0Y2Y1NzEx
MzM3MzM4NDRmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYyIEBACisyMDEyLTA4LTA2ICBBZGFt
IEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgSlNDIHNob3VsZCB1c2UgQmlu
ZGluZ1N0YXRlIHRvIGRldGVybWluZSB0aGUgYWN0aXZlRE9NV2luZG93CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzMwNworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggbW92ZXMgYWN0aXZl
RE9NV2luZG93IGZyb20gSlNET01CaW5kaW5ncy5jcHAgdG8KKyAgICAgICAgQmluZGluZ1N0YXRl
LmNwcC4gVGhpcyBpcyBhIGZpcnN0IHN0ZXAgdG93YXJkcyBzaGFyaW5nIHRoZSBjb3JlCisgICAg
ICAgIHNlY3VyaXR5IGxvZ2ljIGluIHRoZSBiaW5kaW5ncyBiZXR3ZWVuIEphdmFTY3JpcHRDb3Jl
IGFuZCBWOC4gT25jZSB0aGUKKyAgICAgICAgbG9naWMgaXMgc2hhcmVkLCB3ZSB3aWxsIGJlIGFi
bGUgdG8gcmVmYWN0b3IgdGhlIGxvZ2ljIHRvIGF2b2lkIHRoZQorICAgICAgICBuZWVkIGZvciBE
T01XaW5kb3c6Om1fc2VjdXJpdHlPcmlnaW4uCisKKyAgICAgICAgVGhpcyBwYXRjaCBkb2Vzbid0
IGFjdHVhbGx5IHNoYXJlIGFueSBjb2RlICh5ZXQpLiBJdCBqdXN0IHNldHMgdGhlCisgICAgICAg
IHN0YWdlIGJ5IGNyZWF0aW5nIEJpbmRpbmdTdGF0ZSBhcyBhIHR5cGVkZWYgb2YgRXhlY1N0YXRl
IGFuZCBhZGRpbmcgdGhlCisgICAgICAgIGFwcHJvcHJpYXRlIGZpbGVzIHRvIHRoZSBidWlsZCBz
eXN0ZW1zLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWxzbyByZW5hbWVzIGFjdGl2ZVdpbmRvdyBh
bmQgZmlyc3RXaW5kb3cgaW4gdGhlIFY4IGJpbmRpbmdzCisgICAgICAgIHRvIGFjdGl2ZURPTVdp
bmRvdyBhbmQgZmlyc3RET01XaW5kb3cgdG8gbWF0Y2ggdGhlIG5hbWVzIGluIHRoZQorICAgICAg
ICBKYXZhU2NyaXB0Q29yZSBiaW5kaW5ncy4KKworICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3Qu
YW06CisgICAgICAgICogVGFyZ2V0LnByaToKKyAgICAgICAgKiBVc2VKU0MuY21ha2U6CisgICAg
ICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNw
cm9qOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAg
ICAgKiBiaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpjYW5BY2Nlc3NEb2N1bWVudCk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNCaW5kaW5n
c0FsbEluT25lLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwOgor
ICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmg6
CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6YWN0aXZlRE9NV2luZG93KToKKyAgICAgICAgKFdlYkNv
cmU6OmZpcnN0RE9NV2luZG93KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUu
aDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOERP
TVdpbmRvd0N1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6bG9jYXRp
b25BY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpoYW5kbGVQb3N0TWVzc2FnZUNh
bGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlY4RE9NV2luZG93OjpzaG93TW9kYWxEaWFsb2dD
YWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6b3BlbkNhbGxiYWNrKToK
KyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0aW9uQ3VzdG9tLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlY4RG9jdW1lbnQ6OmxvY2F0aW9uQWNjZXNzb3JTZXR0ZXIp
OgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOExvY2F0aW9uQ3VzdG9tLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlY4TG9jYXRpb246Omhhc2hBY2Nlc3NvclNldHRlcik6CisgICAgICAg
IChXZWJDb3JlOjpWOExvY2F0aW9uOjpob3N0QWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2Vi
Q29yZTo6VjhMb2NhdGlvbjo6aG9zdG5hbWVBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJD
b3JlOjpWOExvY2F0aW9uOjpocmVmQWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6
VjhMb2NhdGlvbjo6cGF0aG5hbWVBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpW
OExvY2F0aW9uOjpwb3J0QWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2Nh
dGlvbjo6cHJvdG9jb2xBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0
aW9uOjpzZWFyY2hBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9u
OjpyZWxvYWRDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjpyZXBsYWNl
Q2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2NhdGlvbjo6YXNzaWduQ2FsbGJhY2sp
OgorCiAyMDEyLTA4LTA2ICBBbm5hIENhdmVuZGVyICA8YW5uYWNjQGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBNZWRpYVNvdXJjZSBzaG91bGQgdXNlIGl0J3Mgb3duIGxpc3Qgb2Ygc291cmNlIFVS
THMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0gYi9Tb3Vy
Y2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmluZGV4IDVlYzBiYzJmMGY4ZDU1N2Y3MmEx
M2ViMTgzMDlmZDQyNGZjYjcwMzMuLmFmZWZjOTZhZWViM2IyNGRlNDIwNGVmNDc3MDAxY2E3M2Uy
M2U5YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KKysr
IGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpAQCAtMTM3MCwxMiArMTM3MCwx
NSBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
QVhPYmplY3RDYWNoZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0FjdGl2
ZURPTUNhbGxiYWNrLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9BY3Rp
dmVET01DYWxsYmFjay5oIFwKKwlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0JpbmRp
bmdTZWN1cml0eS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGlu
Z1NlY3VyaXR5LmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvR2VuZXJpY0Jp
bmRpbmcuaCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxl
ZEZlYXR1cmVzLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1l
RW5hYmxlZEZlYXR1cmVzLmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0FycmF5VmFs
dWUuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9BcnJheVZhbHVlLmggXAorCVNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAgXAorCVNvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9DYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9DYWxsYmFja0Z1bmN0aW9uLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvQ2FsbGJhY2tGdW5jdGlvbi5oIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1Rhcmdl
dC5wcmkgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCmluZGV4IGJiMGViZTQ1NDBjN2Y4NjI0
ZWIwMDAxNGQ0YzQ0ODcyYTMyNTUwNWQuLjk5MGM0MWI4MTg1NjQ3ZjU2NjM4MjJmZmY2YzI3NDU4
ODljNzU2MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKKysrIGIvU291
cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQpAQCAtNjksMTEgKzY5LDEzIEBAIFNPVVJDRVMgKz0gXAog
ICAgIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRhYmxlUm93LmNwcCBcCiAgICAgYWNjZXNz
aWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcCBcCiAgICAgYmluZGluZ3MvZ2VuZXJpYy9BY3RpdmVE
T01DYWxsYmFjay5jcHAgXAorICAgIGJpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNw
cCBcCiAgICAgYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAogCiBT
T1VSQ0VTICs9IFwKICAgICAgYmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwIFwKICAg
ICAgYmluZGluZ3MvanMvQXJyYXlWYWx1ZS5jcHAgXAorICAgICBiaW5kaW5ncy9qcy9CaW5kaW5n
U3RhdGUuY3BwIFwKICAgICAgYmluZGluZ3MvanMvQ2FsbGJhY2tGdW5jdGlvbi5jcHAgXAogICAg
ICBiaW5kaW5ncy9qcy9ET01PYmplY3RIYXNoVGFibGVNYXAuY3BwIFwKICAgICAgYmluZGluZ3Mv
anMvRE9NV3JhcHBlcldvcmxkLmNwcCBcCkBAIC0xMjc5LDkgKzEyODEsMTEgQEAgSEVBREVSUyAr
PSBcCiAgICAgYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmggXAogICAgIGJpbmRpbmdzL1Nj
cmlwdENvbnRyb2xsZXJCYXNlLmggXAogICAgIGJpbmRpbmdzL2dlbmVyaWMvQWN0aXZlRE9NQ2Fs
bGJhY2suaCBcCisgICAgYmluZGluZ3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuaCBcCiAgICAg
YmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKIAogSEVBREVSUyArPSBc
CisgICAgYmluZGluZ3MvanMvQmluZGluZ1N0YXRlLmggXAogICAgIGJpbmRpbmdzL2pzL0NhY2hl
ZFNjcmlwdFNvdXJjZVByb3ZpZGVyLmggXAogICAgIGJpbmRpbmdzL2pzL0NhbGxiYWNrRnVuY3Rp
b24uaCBcCiAgICAgYmluZGluZ3MvanMvR0NDb250cm9sbGVyLmggXApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvVXNlSlNDLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvVXNlSlNDLmNtYWtlCmlu
ZGV4IDk1ODk1ZWQyYWUxYTNlNGIyYjlmMTgyZjJkY2MzZjhkY2MxNDA3ZWUuLjkyYjBjMjUzZDVl
YjkzZWRkODhiNWE1MGEyNzdmYWI2YjYxZTU2YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L1VzZUpTQy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9Vc2VKU0MuY21ha2UKQEAgLTIzLDYg
KzIzLDcgQEAgRU5ESUYgKCkKIAogTElTVChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgYmlu
ZGluZ3MvanMvQXJyYXlWYWx1ZS5jcHAKKyAgICBiaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3Bw
CiAgICAgYmluZGluZ3MvanMvQ2FsbGJhY2tGdW5jdGlvbi5jcHAKICAgICBiaW5kaW5ncy9qcy9E
T01PYmplY3RIYXNoVGFibGVNYXAuY3BwCiAgICAgYmluZGluZ3MvanMvRE9NV3JhcHBlcldvcmxk
LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IGI0NmU1NzFiNjIzZDdmNjQ5MmFlMDIzMGFjNjY2NWNi
MjNkZGE3NmYuLmY5NTA5NjllZjA1ZDUxYWIyMGIzMmE0YzUwN2MwYTM5OWEyNDUzOGQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmd5cGkKQEAgLTE5MjQsNiArMTkyNCw4IEBACiAgICAgICAgICAgICAnYmluZGluZ3Mv
Z29iamVjdC9XZWJLaXRIVE1MRWxlbWVudFdyYXBwZXJGYWN0b3J5LmgnLAogICAgICAgICAgICAg
J2JpbmRpbmdzL2pzL0FycmF5VmFsdWUuY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9B
cnJheVZhbHVlLmgnLAorICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAn
LAorICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5oJywKICAgICAgICAgICAg
ICdiaW5kaW5ncy9qcy9DYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oJywKICAgICAgICAgICAg
ICdiaW5kaW5ncy9qcy9DYWxsYmFja0Z1bmN0aW9uLmNwcCcsCiAgICAgICAgICAgICAnYmluZGlu
Z3MvanMvQ2FsbGJhY2tGdW5jdGlvbi5oJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3By
b2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggN2YzYWYxNGRhZTAwNmVmMjBhZjY3MWVjNjE1MmEwYTJm
N2NhNTViOS4uZmU2NWE1OGM0YTllNTc3MWNkY2M2MDMxNDRiNTAxMzAwZTg1OWY4ZCAxMDA3NTUK
LS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTYzNzg2LDcg
KzYzNzg2LDExIEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKLQkJCQkJUmVsYXRp
dmVQYXRoPSIuLlxiaW5kaW5nc1xnZW5lcmljXEJpbmRpbmdET01XaW5kb3cuaCIKKwkJCQkJUmVs
YXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xnZW5lcmljXEJpbmRpbmdTZWN1cml0eS5jcHAiCisJCQkJ
CT4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5n
c1xnZW5lcmljXEJpbmRpbmdTZWN1cml0eS5oIgogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxG
aWxlCkBAIC02MzkxOCw2ICs2MzkyMiw2MiBAQAogCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgog
CQkJCTwvRmlsZT4KIAkJCQk8RmlsZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpz
XEJpbmRpbmdTdGF0ZS5jcHAiCisJCQkJCT4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJ
CQlOYW1lPSJEZWJ1Z3xXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJ
CQkJPgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJ
Lz4KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJ
CQkJCQlOYW1lPSJSZWxlYXNlfFdpbjMyIgorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUi
CisJCQkJCQk+CisJCQkJCQk8VG9vbAorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCisJ
CQkJCQkvPgorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgorCQkJCQk8RmlsZUNvbmZpZ3VyYXRp
b24KKwkJCQkJCU5hbWU9IkRlYnVnX0NhaXJvX0NGTGl0ZXxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NM
Q29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJ
PEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvX0NGTGl0ZXxXaW4z
MiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wK
KwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29u
ZmlndXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlOYW1lPSJEZWJ1Z19B
bGx8V2luMzIiCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKKwkJCQkJCT4KKwkJCQkJ
CTxUb29sCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKKwkJCQkJCS8+CisJCQkJCTwv
RmlsZUNvbmZpZ3VyYXRpb24+CisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbgorCQkJCQkJTmFtZT0i
UHJvZHVjdGlvbnxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJ
PgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4K
KwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJ
UmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xCaW5kaW5nU3RhdGUuaCIKKwkJCQkJPgorCQkJ
CTwvRmlsZT4KKwkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXENh
bGxiYWNrRnVuY3Rpb24uaCIKIAkJCQkJPgogCQkJCTwvRmlsZT4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwYmQ0MGViNWZiMmFj
ZDJjMGYzYTFmZDE5NmYyM2I2YWZjNDZhOTM2Li4yYzRhY2JmNGZmNzE3NmQ3NzE5MjRkOWZkNWU2
NGI3MmI3NGM5YWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCkBAIC0zNDYxLDYgKzM0NjEsMTAgQEAKIAkJOTcyOEMzMTQxMjY4RTQz
OTAwNDFFODlCIC8qIE1hcmt1cEFjY3VtdWxhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzI4QzMxMjEyNjhFNDM5MDA0MUU4OUIgLyogTWFya3Vw
QWNjdW11bGF0b3IuaCAqLzsgfTsKIAkJOTczODg5QTAxMTZFQTlEQzAwQURGMzEzIC8qIERvY3Vt
ZW50V3JpdGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDk3Mzg4OTlFMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5jcHAgKi87IH07
CiAJCTk3Mzg4OUExMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczODg5OUYxMTZFQTlEQzAw
QURGMzEzIC8qIERvY3VtZW50V3JpdGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJOTczQUEzRjQxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdT
dGF0ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
NzNBQTNGMjE1RDA4OEYwMDBFMzhBODUgLyogQmluZGluZ1N0YXRlLmNwcCAqLzsgfTsKKwkJOTcz
QUEzRjUxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczQUEzRjMxNUQwODhGMDAwRTM4QTg1IC8q
IEJpbmRpbmdTdGF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7
IH07IH07CisJCTk3M0FBM0Y5MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczQUEzRjcx
NUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5jcHAgKi87IH07CisJCTk3M0FBM0ZB
MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3M0FBM0Y4MTVEMDg5MUIwMEUzOEE4NSAvKiBC
aW5kaW5nU2VjdXJpdHkuaCAqLzsgfTsKIAkJOTczREM2M0YxNDVBOTQwOTAwMjg0MkMyIC8qIEV4
Y2VwdGlvbkNvZGVEZXNjcmlwdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA5NzNEQzYzRDE0NUE5NDA5MDAyODQyQzIgLyogRXhjZXB0aW9uQ29k
ZURlc2NyaXB0aW9uLmNwcCAqLzsgfTsKIAkJOTczREM2NDAxNDVBOTQwOTAwMjg0MkMyIC8qIEV4
Y2VwdGlvbkNvZGVEZXNjcmlwdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gOTczREM2M0UxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2VwdGlvbkNvZGVE
ZXNjcmlwdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCTk3M0UzMjU2MTA4ODNCN0MwMDVCQzQ5MyAvKiBSZXNvdXJjZUxvYWROb3RpZmllci5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzNFMzI1
NDEwODgzQjdDMDA1QkM0OTMgLyogUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwICovOyB9OwpAQCAt
MTA2MDQsNiArMTA2MDgsMTAgQEAKIAkJOTcyOEMzMTIxMjY4RTQzOTAwNDFFODlCIC8qIE1hcmt1
cEFjY3VtdWxhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hcmt1cEFj
Y3VtdWxhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3Mzg4OTlFMTE2RUE5
REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBEb2N1bWVudFdyaXRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTk3Mzg4OTlGMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEb2N1bWVudFdyaXRlci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQk5NzNBQTNGMjE1RDA4OEYwMDBFMzhBODUgLyogQmluZGluZ1N0
YXRlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJpbmRpbmdTdGF0
ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3M0FBM0YzMTVEMDg4RjAwMEUz
OEE4NSAvKiBCaW5kaW5nU3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QmluZGluZ1N0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3M0FBM0Y3MTVE
MDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gQmluZGluZ1NlY3VyaXR5LmNwcDsgcGF0aCA9IGdlbmVyaWMvQmlu
ZGluZ1NlY3VyaXR5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTczQUEzRjgx
NUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IG5hbWUgPSBCaW5kaW5nU2VjdXJpdHkuaDsgcGF0aCA9IGdlbmVyaWMvQmluZGluZ1Nl
Y3VyaXR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3M0RDNjNEMTQ1QTk0MDkw
MDI4NDJDMiAvKiBFeGNlcHRpb25Db2RlRGVzY3JpcHRpb24uY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gRXhjZXB0aW9uQ29kZURlc2NyaXB0aW9uLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTczREM2M0UxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2Vw
dGlvbkNvZGVEZXNjcmlwdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBF
eGNlcHRpb25Db2RlRGVzY3JpcHRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTczRTMyNTQxMDg4M0I3QzAwNUJDNDkzIC8qIFJlc291cmNlTG9hZE5vdGlmaWVyLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlc291cmNlTG9hZE5vdGlmaWVyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIwMDAzLDYgKzIwMDExLDggQEAKIAkJ
CWNoaWxkcmVuID0gKAogCQkJCUI1RDMxREY4MTFDRjYxMEIwMDlGMjJCNCAvKiBBY3RpdmVET01D
YWxsYmFjay5jcHAgKi8sCiAJCQkJQjVEMzFERjkxMUNGNjEwQjAwOUYyMkI0IC8qIEFjdGl2ZURP
TUNhbGxiYWNrLmggKi8sCisJCQkJOTczQUEzRjcxNUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdT
ZWN1cml0eS5jcHAgKi8sCisJCQkJOTczQUEzRjgxNUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdT
ZWN1cml0eS5oICovLAogCQkJCUE2MjJBOEY5MTIyQzQ0QTYwMEE3ODVCMyAvKiBHZW5lcmljQmlu
ZGluZy5oICovLAogCQkJKTsKIAkJCW5hbWUgPSBnZW5lcmljOwpAQCAtMjAwNDksNiArMjAwNTks
OCBAQAogCQkJCTE0REZCMzNGMEE3REY3NjMwMDE4Rjc2OSAvKiBEZXJpdmVkIFNvdXJjZXMgKi8s
CiAJCQkJNDlCMzc2MEExNUM2QzY4NDAwNTkxMzFEIC8qIEFycmF5VmFsdWUuY3BwICovLAogCQkJ
CTQ5QjM3NjBCMTVDNkM2ODQwMDU5MTMxRCAvKiBBcnJheVZhbHVlLmggKi8sCisJCQkJOTczQUEz
RjIxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5jcHAgKi8sCisJCQkJOTczQUEzRjMx
NUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5oICovLAogCQkJCUJDRDUzMzYzMEVENjg0
ODkwMDg4NzQ2OCAvKiBDYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oICovLAogCQkJCTkzRjhC
MzA2MEEzMDBGRUEwMEY2MUFCOCAvKiBDb2RlR2VuZXJhdG9ySlMucG0gKi8sCiAJCQkJMzEyRDY3
QjAxNTM1NjkxRjAwNTYzRDBEIC8qIERpY3Rpb25hcnkuY3BwICovLApAQCAtMjUzNzUsNiArMjUz
ODcsOCBAQAogCQkJCUUxQkU1MTJFMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCTk3N0UyRTBGMTJGMEZDOUMwMEMxMzM3OSAvKiBYU1NBdWRp
dG9yLmggaW4gSGVhZGVycyAqLywKIAkJCQlGRDUzNzM1MzEzN0I2NTE4MDAwMDhEQ0UgLyogWmVy
b1BvbGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3M0FBM0Y1MTVEMDg4RjAwMEUzOEE4NSAvKiBC
aW5kaW5nU3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3M0FBM0ZBMTVEMDg5MUIwMEUzOEE4
NSAvKiBCaW5kaW5nU2VjdXJpdHkuaCBpbiBIZWFkZXJzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlG
b3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtMjg0NDksNiArMjg0NjMs
OCBAQAogCQkJCUUxQkU1MTJEMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJOTc3RTJFMEUxMkYwRkM5QzAwQzEzMzc5IC8qIFhTU0F1ZGl0
b3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkQ1MzczNTIxMzdCNjUxODAwMDA4RENFIC8qIFpl
cm9Qb2xlLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTk3M0FBM0Y0MTVEMDg4RjAwMEUzOEE4NSAv
KiBCaW5kaW5nU3RhdGUuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJOTczQUEzRjkxNUQwODkxQjAw
RTM4QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5jcHAgaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQly
dW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcAppbmRleCA0
ZDhlZGI5NTQ3MGUwNmMzNzg1ODIxZDU1ODI4YWEyMjQ0OWIyZDM5Li5mNzBkM2E3M2I3MmJhZDhk
NjU2MjI2OTIyOTI1NTQ1ZjVlZmU1YmJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuY3BwCkBAIC00Nyw3ICs0Nyw3IEBAIHN0YXRp
YyBib29sIGNhbkFjY2Vzc0RvY3VtZW50KEJpbmRpbmdTdGF0ZSogc3RhdGUsIERvY3VtZW50KiB0
YXJnZXREb2N1bWVudCwgYm9vCiAgICAgaWYgKCF0YXJnZXREb2N1bWVudCkKICAgICAgICAgcmV0
dXJuIGZhbHNlOwogCi0gICAgRE9NV2luZG93KiBhY3RpdmUgPSBhY3RpdmVXaW5kb3coc3RhdGUp
OworICAgIERPTVdpbmRvdyogYWN0aXZlID0gYWN0aXZlRE9NV2luZG93KHN0YXRlKTsKICAgICBp
ZiAoIWFjdGl2ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvQmluZGluZ1N0YXRlLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MjU0NjhiNTdiOTUxOGVlZGUw
NGY3YTMxOTlmODRiY2EwZmIwMTlkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvQmluZGluZ1N0YXRlLmNwcApAQCAtMCwwICsxLDUwIEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1
dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBu
YW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHBy
b21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3Bl
Y2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJB
UyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwK
KyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNv
bmZpZy5oIgorI2luY2x1ZGUgIkJpbmRpbmdTdGF0ZS5oIgorCisjaW5jbHVkZSAiSlNET01XaW5k
b3dDdXN0b20uaCIKKwordXNpbmcgbmFtZXNwYWNlIEpTQzsKKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCitET01XaW5kb3cqIGFjdGl2ZURPTVdpbmRvdyhFeGVjU3RhdGUqIGV4ZWMpCit7CisgICAg
cmV0dXJuIGFzSlNET01XaW5kb3coZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpKS0+aW1wbCgp
OworfQorCitET01XaW5kb3cqIGZpcnN0RE9NV2luZG93KEV4ZWNTdGF0ZSogZXhlYykKK3sKKyAg
ICByZXR1cm4gYXNKU0RPTVdpbmRvdyhleGVjLT5keW5hbWljR2xvYmFsT2JqZWN0KCkpLT5pbXBs
KCk7Cit9CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0JpbmRp
bmdTdGF0ZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvQmluZGluZ1N0YXRlLmgKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMDk2OTY4YTgzY2QzOTNhY2U3MjU4MDAzZTk5NTk4MzBmYTQ5ZTcwYwotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5oCkBA
IC0wLDAgKzEsNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAq
IG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFt
ZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1h
eSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAq
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisg
KiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCisjaWZuZGVmIEJpbmRpbmdTdGF0ZV9oCisjZGVmaW5lIEJpbmRpbmdTdGF0
ZV9oCisKKyNpbmNsdWRlIDxydW50aW1lL0pTT2JqZWN0Lmg+CisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworY2xhc3MgRE9NV2luZG93OworCit0eXBlZGVmIEpTQzo6RXhlY1N0YXRlIEJpbmRpbmdT
dGF0ZTsKKworRE9NV2luZG93KiBhY3RpdmVET01XaW5kb3coQmluZGluZ1N0YXRlKik7CitET01X
aW5kb3cqIGZpcnN0RE9NV2luZG93KEJpbmRpbmdTdGF0ZSopOworCit9CisKKyNlbmRpZgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKaW5k
ZXggY2YxZjQyYjhlMGIzYmE0ZjI0NDI4M2M5NWFhMzUyYzgwYjAxMmVmOC4uMzYyMmI0NzEyNTBh
ODI1MGY4ZDhmNjQyMGIxOGIyN2QwYjc2YTVlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAvLyBU
aGlzIGFsbC1pbi1vbmUgY3BwIGZpbGUgY3V0cyBkb3duIG9uIHRlbXBsYXRlIGJsb2F0IHRvIGFs
bG93IHVzIHRvIGJ1aWxkIG91ciBXaW5kb3dzIHJlbGVhc2UgYnVpbGQuCiAKICNpbmNsdWRlICJB
cnJheVZhbHVlLmNwcCIKKyNpbmNsdWRlICJCaW5kaW5nU3RhdGUuY3BwIgogI2luY2x1ZGUgIkNh
bGxiYWNrRnVuY3Rpb24uY3BwIgogI2luY2x1ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1hcC5jcHAi
CiAjaW5jbHVkZSAiRE9NV3JhcHBlcldvcmxkLmNwcCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RPTUJpbmRpbmcuY3BwCmluZGV4IDMxZjI1ZGFmMGFiMjYzYjIxNmRiNDk4ZDE5OTQ5
NDViZWEzZDk2MTIuLmUwN2E5MzJlMzM0MzQyMjBmYTIyMjI5YzI4ZWUzZGQ1MjgwNmUwZmUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcApAQCAtMjIxLDE2
ICsyMjEsNiBAQCB2b2lkIHNldERPTUV4Y2VwdGlvbihFeGVjU3RhdGUqIGV4ZWMsIEV4Y2VwdGlv
bkNvZGUgZWMpCiAKICN1bmRlZiBUUllfVE9fQ1JFQVRFX0VYQ0VQVElPTgogCi1ET01XaW5kb3cq
IGFjdGl2ZURPTVdpbmRvdyhFeGVjU3RhdGUqIGV4ZWMpCi17Ci0gICAgcmV0dXJuIGFzSlNET01X
aW5kb3coZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpKS0+aW1wbCgpOwotfQotCi1ET01XaW5k
b3cqIGZpcnN0RE9NV2luZG93KEV4ZWNTdGF0ZSogZXhlYykKLXsKLSAgICByZXR1cm4gYXNKU0RP
TVdpbmRvdyhleGVjLT5keW5hbWljR2xvYmFsT2JqZWN0KCkpLT5pbXBsKCk7Ci19Ci0KIGJvb2wg
c2hvdWxkQWxsb3dBY2Nlc3NUb05vZGUoRXhlY1N0YXRlKiBleGVjLCBOb2RlKiBub2RlKQogewog
ICAgIHJldHVybiBub2RlICYmIHNob3VsZEFsbG93QWNjZXNzVG9GcmFtZShleGVjLCBub2RlLT5k
b2N1bWVudCgpLT5mcmFtZSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NQmluZGluZy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5k
aW5nLmgKaW5kZXggNjdiYWRkMjM2NmUxYTY0NjAxN2FkMWEzN2EyOGI5MmY4MzhhNTQzMC4uOTkx
ZDhjMTg4OWU1NzkyZWMyMTE0MjYyNjFjOWIzMGNkZThlYjkwYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNET01CaW5kaW5nLmgKQEAgLTIyLDYgKzIyLDcgQEAKICNpZm5kZWYgSlNE
T01CaW5kaW5nX2gKICNkZWZpbmUgSlNET01CaW5kaW5nX2gKIAorI2luY2x1ZGUgIkJpbmRpbmdT
dGF0ZS5oIgogI2luY2x1ZGUgIkNTU0ltcG9ydFJ1bGUuaCIKICNpbmNsdWRlICJDU1NTdHlsZURl
Y2xhcmF0aW9uLmgiCiAjaW5jbHVkZSAiQ1NTU3R5bGVTaGVldC5oIgpAQCAtNDA5LDEyICs0MTAs
NiBAQCBlbnVtIFBhcmFtZXRlckRlZmF1bHRQb2xpY3kgewogICAgIGJvb2wgc2hvdWxkQWxsb3dB
Y2Nlc3NUb0ZyYW1lKEpTQzo6RXhlY1N0YXRlKiwgRnJhbWUqLCBTdHJpbmcmIG1lc3NhZ2UpOwog
ICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgYWxsb3dBY2Nlc3NUb0RPTVdpbmRvdyhKU0M6OkV4ZWNT
dGF0ZSosIERPTVdpbmRvdyopOwogCi0gICAgLy8gRklYTUU6IFJlbW92ZSB0aGVzZSBmdW5jdGlv
bnMgaW4gZmF2b3Igb2YgYWN0aXZlQ29udGV4dCBhbmQKLSAgICAvLyBmaXJzdENvbnRleHQsIHdo
aWNoIHJldHVybiBTY3JpcHRFeGVjdXRpb25Db250ZXh0Ki4gV2UgcHJlZmVyIHRvIHVzZQotICAg
IC8vIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGFzIHRoZSBjb250ZXh0IG9iamVjdCBpbiB0aGUg
YmluZGluZ3MuCi0gICAgRE9NV2luZG93KiBhY3RpdmVET01XaW5kb3coSlNDOjpFeGVjU3RhdGUq
KTsKLSAgICBET01XaW5kb3cqIGZpcnN0RE9NV2luZG93KEpTQzo6RXhlY1N0YXRlKik7Ci0KICAg
ICB2b2lkIHByaW50RXJyb3JNZXNzYWdlRm9yRnJhbWUoRnJhbWUqLCBjb25zdCBTdHJpbmcmIG1l
c3NhZ2UpOwogICAgIEpTQzo6SlNWYWx1ZSBvYmplY3RUb1N0cmluZ0Z1bmN0aW9uR2V0dGVyKEpT
Qzo6RXhlY1N0YXRlKiwgSlNDOjpKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0JpbmRpbmdTdGF0ZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuY3BwCmluZGV4IGZkZjVjMDcwNWFk
ZGQxYmEyNGI2ZWEwNDk5NzQ0ODliNmIzMzdmZWYuLjg4MDllNGQ0ZjllNjFiZGI4ZGQ5NDViYTI1
ZTcxZTY1NmQxOWMzNzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0Jp
bmRpbmdTdGF0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvQmluZGluZ1N0
YXRlLmNwcApAQCAtNTUsMTIgKzU1LDEyIEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpDb250ZXh0
PiBhY3RpdmVDb250ZXh0KCkKICAgICByZXR1cm4gdjg6OkNvbnRleHQ6OkdldEVudGVyZWQoKTsK
IH0KIAotRE9NV2luZG93KiBhY3RpdmVXaW5kb3coQmluZGluZ1N0YXRlKikKK0RPTVdpbmRvdyog
YWN0aXZlRE9NV2luZG93KEJpbmRpbmdTdGF0ZSopCiB7CiAgICAgcmV0dXJuIFY4UHJveHk6OnJl
dHJpZXZlV2luZG93KGFjdGl2ZUNvbnRleHQoKSk7CiB9CiAKLURPTVdpbmRvdyogZmlyc3RXaW5k
b3coQmluZGluZ1N0YXRlKikKK0RPTVdpbmRvdyogZmlyc3RET01XaW5kb3coQmluZGluZ1N0YXRl
KikKIHsKICAgICByZXR1cm4gVjhQcm94eTo6cmV0cmlldmVXaW5kb3codjg6OkNvbnRleHQ6Okdl
dEVudGVyZWQoKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9C
aW5kaW5nU3RhdGUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0JpbmRpbmdTdGF0ZS5o
CmluZGV4IDk3MTFlZTg5NGFjODIyYTIwZjg1ZjQxMmYzNDAzNDdjYTZiY2UwZmQuLmQzNTRiZTI2
MzNiZjgxZGQxZDEyNzQxNGM0NGMwYjY0MWRiOTk3YTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L0JpbmRpbmdTdGF0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L0JpbmRpbmdTdGF0ZS5oCkBAIC00NCw4ICs0NCw4IEBAIHB1YmxpYzoKICAgICBzdGF0
aWMgQmluZGluZ1N0YXRlKiBpbnN0YW5jZSgpOwogfTsKIAotRE9NV2luZG93KiBhY3RpdmVXaW5k
b3coQmluZGluZ1N0YXRlKik7Ci1ET01XaW5kb3cqIGZpcnN0V2luZG93KEJpbmRpbmdTdGF0ZSop
OworRE9NV2luZG93KiBhY3RpdmVET01XaW5kb3coQmluZGluZ1N0YXRlKik7CitET01XaW5kb3cq
IGZpcnN0RE9NV2luZG93KEJpbmRpbmdTdGF0ZSopOwogCiBGcmFtZSogYWN0aXZlRnJhbWUoQmlu
ZGluZ1N0YXRlKik7CiBGcmFtZSogZmlyc3RGcmFtZShCaW5kaW5nU3RhdGUqKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20u
Y3BwCmluZGV4IDhmYTI4MDhlNzM4YjAxYTEzNWU5ZGM5YzAyN2ZiZGJjMTJkMjJkNmIuLmM3Y2Jm
NjEwZDQ5Y2JkYTc3OThlMzg3ODQ5NTM3NGNjZjlkN2UwYmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9NV2luZG93Q3VzdG9tLmNwcApAQCAt
MTg5LDExICsxODksMTEgQEAgdm9pZCBWOERPTVdpbmRvdzo6bG9jYXRpb25BY2Nlc3NvclNldHRl
cih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHYKICAgICBET01XaW5kb3cq
IGltcCA9IFY4RE9NV2luZG93Ojp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKICAgICBCaW5kaW5n
U3RhdGUqIHN0YXRlID0gQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpOwogCi0gICAgRE9NV2luZG93
KiBhY3RpdmUgPSBhY3RpdmVXaW5kb3coc3RhdGUpOworICAgIERPTVdpbmRvdyogYWN0aXZlID0g
YWN0aXZlRE9NV2luZG93KHN0YXRlKTsKICAgICBpZiAoIWFjdGl2ZSkKICAgICAgIHJldHVybjsK
IAotICAgIERPTVdpbmRvdyogZmlyc3QgPSBmaXJzdFdpbmRvdyhzdGF0ZSk7CisgICAgRE9NV2lu
ZG93KiBmaXJzdCA9IGZpcnN0RE9NV2luZG93KHN0YXRlKTsKICAgICBpZiAoIWZpcnN0KQogICAg
ICAgcmV0dXJuOwogCkBAIC0zMDAsNyArMzAwLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZh
bHVlPiBoYW5kbGVQb3N0TWVzc2FnZUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MK
ICAgICAvLyBOb25lIG9mIHRoZXNlIG5lZWQgdG8gYmUgUmVmUHRyIGJlY2F1c2UgYXJncyBhbmQg
Y29udGV4dCBhcmUgZ3VhcmFudGVlZAogICAgIC8vIHRvIGhvbGQgb24gdG8gdGhlbS4KICAgICBE
T01XaW5kb3cqIHdpbmRvdyA9IFY4RE9NV2luZG93Ojp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsK
LSAgICBET01XaW5kb3cqIHNvdXJjZSA9IGFjdGl2ZVdpbmRvdyhCaW5kaW5nU3RhdGU6Omluc3Rh
bmNlKCkpOworICAgIERPTVdpbmRvdyogc291cmNlID0gYWN0aXZlRE9NV2luZG93KEJpbmRpbmdT
dGF0ZTo6aW5zdGFuY2UoKSk7CiAKICAgICAvLyBJZiBjYWxsZWQgZGlyZWN0bHkgYnkgV2ViQ29y
ZSB3ZSBkb24ndCBoYXZlIGEgY2FsbGluZyBjb250ZXh0LgogICAgIGlmICghc291cmNlKQpAQCAt
NDQxLDcgKzQ0MSw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOERPTVdpbmRvdzo6c2hvd01v
ZGFsRGlhbG9nQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYKICAgICBEaWFsb2dIYW5kbGVy
IGhhbmRsZXIoYXJnc1sxXSk7CiAgICAgU3RyaW5nIGRpYWxvZ0ZlYXR1cmVzU3RyaW5nID0gdG9X
ZWJDb3JlU3RyaW5nV2l0aE51bGxPclVuZGVmaW5lZENoZWNrKGFyZ3NbMl0pOwogCi0gICAgaW1w
bC0+c2hvd01vZGFsRGlhbG9nKHVybFN0cmluZywgZGlhbG9nRmVhdHVyZXNTdHJpbmcsIGFjdGl2
ZVdpbmRvdyhzdGF0ZSksIGZpcnN0V2luZG93KHN0YXRlKSwgc2V0VXBEaWFsb2csICZoYW5kbGVy
KTsKKyAgICBpbXBsLT5zaG93TW9kYWxEaWFsb2codXJsU3RyaW5nLCBkaWFsb2dGZWF0dXJlc1N0
cmluZywgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUpLCBzZXRV
cERpYWxvZywgJmhhbmRsZXIpOwogCiAgICAgcmV0dXJuIGhhbmRsZXIucmV0dXJuVmFsdWUoKTsK
IH0KQEAgLTQ1OSw3ICs0NTksNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhET01XaW5kb3c6
Om9wZW5DYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIEF0b21pY1N0cmlu
ZyBmcmFtZU5hbWUgPSAoYXJnc1sxXS0+SXNVbmRlZmluZWQoKSB8fCBhcmdzWzFdLT5Jc051bGwo
KSkgPyAiX2JsYW5rIiA6IEF0b21pY1N0cmluZyh0b1dlYkNvcmVTdHJpbmcoYXJnc1sxXSkpOwog
ICAgIFN0cmluZyB3aW5kb3dGZWF0dXJlc1N0cmluZyA9IHRvV2ViQ29yZVN0cmluZ1dpdGhOdWxs
T3JVbmRlZmluZWRDaGVjayhhcmdzWzJdKTsKIAotICAgIFJlZlB0cjxET01XaW5kb3c+IG9wZW5l
ZFdpbmRvdyA9IGltcGwtPm9wZW4odXJsU3RyaW5nLCBmcmFtZU5hbWUsIHdpbmRvd0ZlYXR1cmVz
U3RyaW5nLCBhY3RpdmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSkpOworICAgIFJl
ZlB0cjxET01XaW5kb3c+IG9wZW5lZFdpbmRvdyA9IGltcGwtPm9wZW4odXJsU3RyaW5nLCBmcmFt
ZU5hbWUsIHdpbmRvd0ZlYXR1cmVzU3RyaW5nLCBhY3RpdmVET01XaW5kb3coc3RhdGUpLCBmaXJz
dERPTVdpbmRvdyhzdGF0ZSkpOwogICAgIGlmICghb3BlbmVkV2luZG93KQogICAgICAgICByZXR1
cm4gdjg6OlVuZGVmaW5lZCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0aW9uQ3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERvY3VtZW50TG9jYXRpb25DdXN0b20uY3BwCmluZGV4IDRj
MTk0OTU5OWE1NjAzODIxODM2YmM5YWI0MjljYzEzNzI4YjdhY2YuLmIyZDgxZTg0YzJkNzVkOTIy
NDk2OTg0YTE2YTE4NDRmYmExZjdjMzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L2N1c3RvbS9WOERvY3VtZW50TG9jYXRpb25DdXN0b20uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERvY3VtZW50TG9jYXRpb25DdXN0b20uY3BwCkBA
IC01MiwxMSArNTIsMTEgQEAgdm9pZCBWOERvY3VtZW50Ojpsb2NhdGlvbkFjY2Vzc29yU2V0dGVy
KHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djgKIAogICAgIEJpbmRpbmdT
dGF0ZSogc3RhdGUgPSBCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCk7CiAKLSAgICBET01XaW5kb3cq
IGFjdGl2ZSA9IGFjdGl2ZVdpbmRvdyhzdGF0ZSk7CisgICAgRE9NV2luZG93KiBhY3RpdmUgPSBh
Y3RpdmVET01XaW5kb3coc3RhdGUpOwogICAgIGlmICghYWN0aXZlKQogICAgICAgICByZXR1cm47
CiAKLSAgICBET01XaW5kb3cqIGZpcnN0ID0gZmlyc3RXaW5kb3coc3RhdGUpOworICAgIERPTVdp
bmRvdyogZmlyc3QgPSBmaXJzdERPTVdpbmRvdyhzdGF0ZSk7CiAgICAgaWYgKCFmaXJzdCkKICAg
ICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9j
dXN0b20vVjhMb2NhdGlvbkN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9j
dXN0b20vVjhMb2NhdGlvbkN1c3RvbS5jcHAKaW5kZXggNzJkY2NjNzY3YzVlNzk3ODljMGU5NmJl
MzQyYjBkNTQwNDBhOTM3Yy4uNDJmMDJmOWI1OWQ2NjA0YmU0NjVmMjYxMzBlMmZjYTk0NWYzNGE1
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4TG9jYXRp
b25DdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOExv
Y2F0aW9uQ3VzdG9tLmNwcApAQCAtNTUsNyArNTUsNyBAQCB2b2lkIFY4TG9jYXRpb246Omhhc2hB
Y2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpW
YQogICAgIC8vIEZJWE1FOiBIYW5kbGUgZXhjZXB0aW9ucyBjb3JyZWN0bHkuCiAgICAgU3RyaW5n
IGhhc2ggPSB0b1dlYkNvcmVTdHJpbmcodmFsdWUpOwogCi0gICAgaW1wbC0+c2V0SGFzaChoYXNo
LCBhY3RpdmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSkpOworICAgIGltcGwtPnNl
dEhhc2goaGFzaCwgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUp
KTsKIH0KIAogdm9pZCBWOExvY2F0aW9uOjpob3N0QWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4
OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNj
ZXNzb3JJbmZvJiBpbmZvKQpAQCAtNjcsNyArNjcsNyBAQCB2b2lkIFY4TG9jYXRpb246Omhvc3RB
Y2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpW
YQogICAgIC8vIEZJWE1FOiBIYW5kbGUgZXhjZXB0aW9ucyBjb3JyZWN0bHkuCiAgICAgU3RyaW5n
IGhvc3QgPSB0b1dlYkNvcmVTdHJpbmcodmFsdWUpOwogCi0gICAgaW1wbC0+c2V0SG9zdChob3N0
LCBhY3RpdmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSkpOworICAgIGltcGwtPnNl
dEhvc3QoaG9zdCwgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUp
KTsKIH0KIAogdm9pZCBWOExvY2F0aW9uOjpob3N0bmFtZUFjY2Vzc29yU2V0dGVyKHY4OjpMb2Nh
bDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6
OkFjY2Vzc29ySW5mbyYgaW5mbykKQEAgLTc5LDcgKzc5LDcgQEAgdm9pZCBWOExvY2F0aW9uOjpo
b3N0bmFtZUFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9j
YWw8djgKICAgICAvLyBGSVhNRTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0
cmluZyBob3N0bmFtZSA9IHRvV2ViQ29yZVN0cmluZyh2YWx1ZSk7CiAKLSAgICBpbXBsLT5zZXRI
b3N0bmFtZShob3N0bmFtZSwgYWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUp
KTsKKyAgICBpbXBsLT5zZXRIb3N0bmFtZShob3N0bmFtZSwgYWN0aXZlRE9NV2luZG93KHN0YXRl
KSwgZmlyc3RET01XaW5kb3coc3RhdGUpKTsKIH0KIAogdm9pZCBWOExvY2F0aW9uOjpocmVmQWNj
ZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFs
dWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpAQCAtOTEsNyArOTEsNyBA
QCB2b2lkIFY4TG9jYXRpb246OmhyZWZBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmlu
Zz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYQogICAgIC8vIEZJWE1FOiBIYW5kbGUgZXhjZXB0aW9u
cyBjb3JyZWN0bHkuCiAgICAgU3RyaW5nIGhyZWYgPSB0b1dlYkNvcmVTdHJpbmcodmFsdWUpOwog
Ci0gICAgaW1wbC0+c2V0SHJlZihocmVmLCBhY3RpdmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRv
dyhzdGF0ZSkpOworICAgIGltcGwtPnNldEhyZWYoaHJlZiwgYWN0aXZlRE9NV2luZG93KHN0YXRl
KSwgZmlyc3RET01XaW5kb3coc3RhdGUpKTsKIH0KIAogdm9pZCBWOExvY2F0aW9uOjpwYXRobmFt
ZUFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6
OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKQEAgLTEwMyw3ICsx
MDMsNyBAQCB2b2lkIFY4TG9jYXRpb246OnBhdGhuYW1lQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2OAogICAgIC8vIEZJWE1FOiBIYW5kbGUgZXhj
ZXB0aW9ucyBjb3JyZWN0bHkuCiAgICAgU3RyaW5nIHBhdGhuYW1lID0gdG9XZWJDb3JlU3RyaW5n
KHZhbHVlKTsKIAotICAgIGltcGwtPnNldFBhdGhuYW1lKHBhdGhuYW1lLCBhY3RpdmVXaW5kb3co
c3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSkpOworICAgIGltcGwtPnNldFBhdGhuYW1lKHBhdGhu
YW1lLCBhY3RpdmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkpOwogfQog
CiB2b2lkIFY4TG9jYXRpb246OnBvcnRBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmlu
Zz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3Nvcklu
Zm8mIGluZm8pCkBAIC0xMTUsNyArMTE1LDcgQEAgdm9pZCBWOExvY2F0aW9uOjpwb3J0QWNjZXNz
b3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmEKICAg
ICAvLyBGSVhNRTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBwb3J0
ID0gdG9XZWJDb3JlU3RyaW5nKHZhbHVlKTsKIAotICAgIGltcGwtPnNldFBvcnQocG9ydCwgYWN0
aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5zZXRQb3J0
KHBvcnQsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSk7CiB9
CiAKIHZvaWQgVjhMb2NhdGlvbjo6cHJvdG9jb2xBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6
OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nl
c3NvckluZm8mIGluZm8pCkBAIC0xMjgsNyArMTI4LDcgQEAgdm9pZCBWOExvY2F0aW9uOjpwcm90
b2NvbEFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8
djgKICAgICBTdHJpbmcgcHJvdG9jb2wgPSB0b1dlYkNvcmVTdHJpbmcodmFsdWUpOwogCiAgICAg
RXhjZXB0aW9uQ29kZSBlYyA9IDA7Ci0gICAgaW1wbC0+c2V0UHJvdG9jb2wocHJvdG9jb2wsIGFj
dGl2ZVdpbmRvdyhzdGF0ZSksIGZpcnN0V2luZG93KHN0YXRlKSwgZWMpOworICAgIGltcGwtPnNl
dFByb3RvY29sKHByb3RvY29sLCBhY3RpdmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRv
dyhzdGF0ZSksIGVjKTsKICAgICBpZiAoVU5MSUtFTFkoZWMpKQogICAgICAgICBWOFByb3h5Ojpz
ZXRET01FeGNlcHRpb24oZWMsIGluZm8uR2V0SXNvbGF0ZSgpKTsKIH0KQEAgLTE0Miw3ICsxNDIs
NyBAQCB2b2lkIFY4TG9jYXRpb246OnNlYXJjaEFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6
U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OgogICAgIC8vIEZJWE1FOiBIYW5kbGUgZXhjZXB0
aW9ucyBjb3JyZWN0bHkuCiAgICAgU3RyaW5nIHNlYXJjaCA9IHRvV2ViQ29yZVN0cmluZyh2YWx1
ZSk7CiAKLSAgICBpbXBsLT5zZXRTZWFyY2goc2VhcmNoLCBhY3RpdmVXaW5kb3coc3RhdGUpLCBm
aXJzdFdpbmRvdyhzdGF0ZSkpOworICAgIGltcGwtPnNldFNlYXJjaChzZWFyY2gsIGFjdGl2ZURP
TVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSk7CiB9CiAKIHY4OjpIYW5kbGU8
djg6OlZhbHVlPiBWOExvY2F0aW9uOjpyZWxvYWRBY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6
OlN0cmluZz4gbmFtZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKQEAgLTIwNiw3ICsy
MDYsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhMb2NhdGlvbjo6cmVsb2FkQ2FsbGJhY2so
Y29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKICAgICBMb2NhdGlvbiogaW1wbCA9IFY4TG9jYXRp
b246OnRvTmF0aXZlKGFyZ3MuSG9sZGVyKCkpOwogICAgIEJpbmRpbmdTdGF0ZSogc3RhdGUgPSBC
aW5kaW5nU3RhdGU6Omluc3RhbmNlKCk7CiAKLSAgICBpbXBsLT5yZWxvYWQoYWN0aXZlV2luZG93
KHN0YXRlKSk7CisgICAgaW1wbC0+cmVsb2FkKGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSkpOwogICAg
IHJldHVybiB2ODo6VW5kZWZpbmVkKCk7CiB9CiAKQEAgLTIxOSw3ICsyMTksNyBAQCB2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gVjhMb2NhdGlvbjo6cmVwbGFjZUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1
bWVudHMmIGFyZ3MpCiAgICAgLy8gRklYTUU6IEhhbmRsZSBleGNlcHRpb25zIGNvcnJlY3RseS4K
ICAgICBTdHJpbmcgdXJsU3RyaW5nID0gdG9XZWJDb3JlU3RyaW5nKGFyZ3NbMF0pOwogCi0gICAg
aW1wbC0+cmVwbGFjZSh1cmxTdHJpbmcsIGFjdGl2ZVdpbmRvdyhzdGF0ZSksIGZpcnN0V2luZG93
KHN0YXRlKSk7CisgICAgaW1wbC0+cmVwbGFjZSh1cmxTdHJpbmcsIGFjdGl2ZURPTVdpbmRvdyhz
dGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSk7CiAgICAgcmV0dXJuIHY4OjpVbmRlZmluZWQo
KTsKIH0KIApAQCAtMjMyLDcgKzIzMiw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOExvY2F0
aW9uOjphc3NpZ25DYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIC8vIEZJ
WE1FOiBIYW5kbGUgZXhjZXB0aW9ucyBjb3JyZWN0bHkuCiAgICAgU3RyaW5nIHVybFN0cmluZyA9
IHRvV2ViQ29yZVN0cmluZyhhcmdzWzBdKTsKIAotICAgIGltcGwtPmFzc2lnbih1cmxTdHJpbmcs
IGFjdGl2ZVdpbmRvdyhzdGF0ZSksIGZpcnN0V2luZG93KHN0YXRlKSk7CisgICAgaW1wbC0+YXNz
aWduKHVybFN0cmluZywgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3Rh
dGUpKTsKICAgICByZXR1cm4gdjg6OlVuZGVmaW5lZCgpOwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156796</attachid>
            <date>2012-08-06 16:49:50 -0700</date>
            <delta_ts>2012-08-06 16:50:02 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-93307-20120806164926.patch</filename>
            <type>text/plain</type>
            <size>32087</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI0ODA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDczYjAyODEyYzlhNDk0
NDhjMjQ1NDgwMGMwYjVmN2Q1MjQwMzFlMS4uMzRlNjAyNWE3ZWM2OGFjMzc3NGFhOTdjNWEzNmE4
MWM0OTMwMWJmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYyIEBACisyMDEyLTA4LTA2ICBBZGFt
IEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgSlNDIHNob3VsZCB1c2UgQmlu
ZGluZ1N0YXRlIHRvIGRldGVybWluZSB0aGUgYWN0aXZlRE9NV2luZG93CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzMwNworCisgICAgICAgIFJldmll
d2VkIGJ5IEVyaWMgU2VpZGVsLgorCisgICAgICAgIFRoaXMgcGF0Y2ggbW92ZXMgYWN0aXZlRE9N
V2luZG93IGZyb20gSlNET01CaW5kaW5ncy5jcHAgdG8KKyAgICAgICAgQmluZGluZ1N0YXRlLmNw
cC4gVGhpcyBpcyBhIGZpcnN0IHN0ZXAgdG93YXJkcyBzaGFyaW5nIHRoZSBjb3JlCisgICAgICAg
IHNlY3VyaXR5IGxvZ2ljIGluIHRoZSBiaW5kaW5ncyBiZXR3ZWVuIEphdmFTY3JpcHRDb3JlIGFu
ZCBWOC4gT25jZSB0aGUKKyAgICAgICAgbG9naWMgaXMgc2hhcmVkLCB3ZSB3aWxsIGJlIGFibGUg
dG8gcmVmYWN0b3IgdGhlIGxvZ2ljIHRvIGF2b2lkIHRoZQorICAgICAgICBuZWVkIGZvciBET01X
aW5kb3c6Om1fc2VjdXJpdHlPcmlnaW4uCisKKyAgICAgICAgVGhpcyBwYXRjaCBkb2Vzbid0IGFj
dHVhbGx5IHNoYXJlIGFueSBjb2RlICh5ZXQpLiBJdCBqdXN0IHNldHMgdGhlCisgICAgICAgIHN0
YWdlIGJ5IGNyZWF0aW5nIEJpbmRpbmdTdGF0ZSBhcyBhIHR5cGVkZWYgb2YgRXhlY1N0YXRlIGFu
ZCBhZGRpbmcgdGhlCisgICAgICAgIGFwcHJvcHJpYXRlIGZpbGVzIHRvIHRoZSBidWlsZCBzeXN0
ZW1zLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWxzbyByZW5hbWVzIGFjdGl2ZVdpbmRvdyBhbmQg
Zmlyc3RXaW5kb3cgaW4gdGhlIFY4IGJpbmRpbmdzCisgICAgICAgIHRvIGFjdGl2ZURPTVdpbmRv
dyBhbmQgZmlyc3RET01XaW5kb3cgdG8gbWF0Y2ggdGhlIG5hbWVzIGluIHRoZQorICAgICAgICBK
YXZhU2NyaXB0Q29yZSBiaW5kaW5ncy4KKworICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06
CisgICAgICAgICogVGFyZ2V0LnByaToKKyAgICAgICAgKiBVc2VKU0MuY21ha2U6CisgICAgICAg
ICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9q
OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAg
KiBiaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpjYW5BY2Nlc3NEb2N1bWVudCk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNCaW5kaW5nc0Fs
bEluT25lLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwOgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmg6Cisg
ICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6YWN0aXZlRE9NV2luZG93KToKKyAgICAgICAgKFdlYkNvcmU6
OmZpcnN0RE9NV2luZG93KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuaDoK
KyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdp
bmRvd0N1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6bG9jYXRpb25B
Y2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpoYW5kbGVQb3N0TWVzc2FnZUNhbGxi
YWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlY4RE9NV2luZG93OjpzaG93TW9kYWxEaWFsb2dDYWxs
YmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6b3BlbkNhbGxiYWNrKToKKyAg
ICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0aW9uQ3VzdG9tLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlY4RG9jdW1lbnQ6OmxvY2F0aW9uQWNjZXNzb3JTZXR0ZXIpOgor
ICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOExvY2F0aW9uQ3VzdG9tLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlY4TG9jYXRpb246Omhhc2hBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChX
ZWJDb3JlOjpWOExvY2F0aW9uOjpob3N0QWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6VjhMb2NhdGlvbjo6aG9zdG5hbWVBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3Jl
OjpWOExvY2F0aW9uOjpocmVmQWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhM
b2NhdGlvbjo6cGF0aG5hbWVBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExv
Y2F0aW9uOjpwb3J0QWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2NhdGlv
bjo6cHJvdG9jb2xBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9u
OjpzZWFyY2hBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjpy
ZWxvYWRDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjpyZXBsYWNlQ2Fs
bGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2NhdGlvbjo6YXNzaWduQ2FsbGJhY2spOgor
CiAyMDEyLTA4LTA2ICBBbm5hIENhdmVuZGVyICA8YW5uYWNjQGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBNZWRpYVNvdXJjZSBzaG91bGQgdXNlIGl0J3Mgb3duIGxpc3Qgb2Ygc291cmNlIFVSTHMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0gYi9Tb3VyY2Uv
V2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmluZGV4IDVlYzBiYzJmMGY4ZDU1N2Y3MmExM2Vi
MTgzMDlmZDQyNGZjYjcwMzMuLmFmZWZjOTZhZWViM2IyNGRlNDIwNGVmNDc3MDAxY2E3M2UyM2U5
YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KKysrIGIv
U291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpAQCAtMTM3MCwxMiArMTM3MCwxNSBA
QCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhP
YmplY3RDYWNoZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0FjdGl2ZURP
TUNhbGxiYWNrLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9BY3RpdmVE
T01DYWxsYmFjay5oIFwKKwlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdT
ZWN1cml0eS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1Nl
Y3VyaXR5LmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvR2VuZXJpY0JpbmRp
bmcuaCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZl
YXR1cmVzLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5h
YmxlZEZlYXR1cmVzLmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0FycmF5VmFsdWUu
Y3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9BcnJheVZhbHVlLmggXAorCVNvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAgXAorCVNvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9DYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9DYWxsYmFja0Z1bmN0aW9uLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
Q2FsbGJhY2tGdW5jdGlvbi5oIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5w
cmkgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCmluZGV4IGJiMGViZTQ1NDBjN2Y4NjI0ZWIw
MDAxNGQ0YzQ0ODcyYTMyNTUwNWQuLjk5MGM0MWI4MTg1NjQ3ZjU2NjM4MjJmZmY2YzI3NDU4ODlj
NzU2MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKKysrIGIvU291cmNl
L1dlYkNvcmUvVGFyZ2V0LnByaQpAQCAtNjksMTEgKzY5LDEzIEBAIFNPVVJDRVMgKz0gXAogICAg
IGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRhYmxlUm93LmNwcCBcCiAgICAgYWNjZXNzaWJp
bGl0eS9BWE9iamVjdENhY2hlLmNwcCBcCiAgICAgYmluZGluZ3MvZ2VuZXJpYy9BY3RpdmVET01D
YWxsYmFjay5jcHAgXAorICAgIGJpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcCBc
CiAgICAgYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAogCiBTT1VS
Q0VTICs9IFwKICAgICAgYmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwIFwKICAgICAg
YmluZGluZ3MvanMvQXJyYXlWYWx1ZS5jcHAgXAorICAgICBiaW5kaW5ncy9qcy9CaW5kaW5nU3Rh
dGUuY3BwIFwKICAgICAgYmluZGluZ3MvanMvQ2FsbGJhY2tGdW5jdGlvbi5jcHAgXAogICAgICBi
aW5kaW5ncy9qcy9ET01PYmplY3RIYXNoVGFibGVNYXAuY3BwIFwKICAgICAgYmluZGluZ3MvanMv
RE9NV3JhcHBlcldvcmxkLmNwcCBcCkBAIC0xMjc5LDkgKzEyODEsMTEgQEAgSEVBREVSUyArPSBc
CiAgICAgYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmggXAogICAgIGJpbmRpbmdzL1Njcmlw
dENvbnRyb2xsZXJCYXNlLmggXAogICAgIGJpbmRpbmdzL2dlbmVyaWMvQWN0aXZlRE9NQ2FsbGJh
Y2suaCBcCisgICAgYmluZGluZ3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuaCBcCiAgICAgYmlu
ZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKIAogSEVBREVSUyArPSBcCisg
ICAgYmluZGluZ3MvanMvQmluZGluZ1N0YXRlLmggXAogICAgIGJpbmRpbmdzL2pzL0NhY2hlZFNj
cmlwdFNvdXJjZVByb3ZpZGVyLmggXAogICAgIGJpbmRpbmdzL2pzL0NhbGxiYWNrRnVuY3Rpb24u
aCBcCiAgICAgYmluZGluZ3MvanMvR0NDb250cm9sbGVyLmggXApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvVXNlSlNDLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvVXNlSlNDLmNtYWtlCmluZGV4
IDk1ODk1ZWQyYWUxYTNlNGIyYjlmMTgyZjJkY2MzZjhkY2MxNDA3ZWUuLjkyYjBjMjUzZDVlYjkz
ZWRkODhiNWE1MGEyNzdmYWI2YjYxZTU2YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1Vz
ZUpTQy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9Vc2VKU0MuY21ha2UKQEAgLTIzLDYgKzIz
LDcgQEAgRU5ESUYgKCkKIAogTElTVChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgYmluZGlu
Z3MvanMvQXJyYXlWYWx1ZS5jcHAKKyAgICBiaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3BwCiAg
ICAgYmluZGluZ3MvanMvQ2FsbGJhY2tGdW5jdGlvbi5jcHAKICAgICBiaW5kaW5ncy9qcy9ET01P
YmplY3RIYXNoVGFibGVNYXAuY3BwCiAgICAgYmluZGluZ3MvanMvRE9NV3JhcHBlcldvcmxkLmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS5neXBpCmluZGV4IGI0NmU1NzFiNjIzZDdmNjQ5MmFlMDIzMGFjNjY2NWNiMjNk
ZGE3NmYuLmY5NTA5NjllZjA1ZDUxYWIyMGIzMmE0YzUwN2MwYTM5OWEyNDUzOGQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLmd5cGkKQEAgLTE5MjQsNiArMTkyNCw4IEBACiAgICAgICAgICAgICAnYmluZGluZ3MvZ29i
amVjdC9XZWJLaXRIVE1MRWxlbWVudFdyYXBwZXJGYWN0b3J5LmgnLAogICAgICAgICAgICAgJ2Jp
bmRpbmdzL2pzL0FycmF5VmFsdWUuY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9BcnJh
eVZhbHVlLmgnLAorICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAnLAor
ICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5oJywKICAgICAgICAgICAgICdi
aW5kaW5ncy9qcy9DYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oJywKICAgICAgICAgICAgICdi
aW5kaW5ncy9qcy9DYWxsYmFja0Z1bmN0aW9uLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3Mv
anMvQ2FsbGJhY2tGdW5jdGlvbi5oJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ov
V2ViQ29yZS52Y3Byb2oKaW5kZXggN2YzYWYxNGRhZTAwNmVmMjBhZjY3MWVjNjE1MmEwYTJmN2Nh
NTViOS4uZmU2NWE1OGM0YTllNTc3MWNkY2M2MDMxNDRiNTAxMzAwZTg1OWY4ZCAxMDA3NTUKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTYzNzg2LDcgKzYz
Nzg2LDExIEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKLQkJCQkJUmVsYXRpdmVQ
YXRoPSIuLlxiaW5kaW5nc1xnZW5lcmljXEJpbmRpbmdET01XaW5kb3cuaCIKKwkJCQkJUmVsYXRp
dmVQYXRoPSIuLlxiaW5kaW5nc1xnZW5lcmljXEJpbmRpbmdTZWN1cml0eS5jcHAiCisJCQkJCT4K
KwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xn
ZW5lcmljXEJpbmRpbmdTZWN1cml0eS5oIgogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxGaWxl
CkBAIC02MzkxOCw2ICs2MzkyMiw2MiBAQAogCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgogCQkJ
CTwvRmlsZT4KIAkJCQk8RmlsZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEJp
bmRpbmdTdGF0ZS5jcHAiCisJCQkJCT4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlO
YW1lPSJEZWJ1Z3xXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJ
PgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4K
KwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJ
CQlOYW1lPSJSZWxlYXNlfFdpbjMyIgorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCisJ
CQkJCQk+CisJCQkJCQk8VG9vbAorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCisJCQkJ
CQkvPgorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24K
KwkJCQkJCU5hbWU9IkRlYnVnX0NhaXJvX0NGTGl0ZXxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJv
bUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJPEZp
bGVDb25maWd1cmF0aW9uCisJCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvX0NGTGl0ZXxXaW4zMiIK
KwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wKKwkJ
CQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29uZmln
dXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlOYW1lPSJEZWJ1Z19BbGx8
V2luMzIiCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKKwkJCQkJCT4KKwkJCQkJCTxU
b29sCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKKwkJCQkJCS8+CisJCQkJCTwvRmls
ZUNvbmZpZ3VyYXRpb24+CisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbgorCQkJCQkJTmFtZT0iUHJv
ZHVjdGlvbnxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgor
CQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJ
CQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVs
YXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xCaW5kaW5nU3RhdGUuaCIKKwkJCQkJPgorCQkJCTwv
RmlsZT4KKwkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXENhbGxi
YWNrRnVuY3Rpb24uaCIKIAkJCQkJPgogCQkJCTwvRmlsZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwYmQ0MGViNWZiMmFjZDJj
MGYzYTFmZDE5NmYyM2I2YWZjNDZhOTM2Li4yYzRhY2JmNGZmNzE3NmQ3NzE5MjRkOWZkNWU2NGI3
MmI3NGM5YWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCkBAIC0zNDYxLDYgKzM0NjEsMTAgQEAKIAkJOTcyOEMzMTQxMjY4RTQzOTAw
NDFFODlCIC8qIE1hcmt1cEFjY3VtdWxhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5NzI4QzMxMjEyNjhFNDM5MDA0MUU4OUIgLyogTWFya3VwQWNj
dW11bGF0b3IuaCAqLzsgfTsKIAkJOTczODg5QTAxMTZFQTlEQzAwQURGMzEzIC8qIERvY3VtZW50
V3JpdGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDk3Mzg4OTlFMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5jcHAgKi87IH07CiAJ
CTk3Mzg4OUExMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczODg5OUYxMTZFQTlEQzAwQURG
MzEzIC8qIERvY3VtZW50V3JpdGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJOTczQUEzRjQxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0
ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzNB
QTNGMjE1RDA4OEYwMDBFMzhBODUgLyogQmluZGluZ1N0YXRlLmNwcCAqLzsgfTsKKwkJOTczQUEz
RjUxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczQUEzRjMxNUQwODhGMDAwRTM4QTg1IC8qIEJp
bmRpbmdTdGF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTk3M0FBM0Y5MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczQUEzRjcxNUQw
ODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5jcHAgKi87IH07CisJCTk3M0FBM0ZBMTVE
MDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3M0FBM0Y4MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5k
aW5nU2VjdXJpdHkuaCAqLzsgfTsKIAkJOTczREM2M0YxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2Vw
dGlvbkNvZGVEZXNjcmlwdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5NzNEQzYzRDE0NUE5NDA5MDAyODQyQzIgLyogRXhjZXB0aW9uQ29kZURl
c2NyaXB0aW9uLmNwcCAqLzsgfTsKIAkJOTczREM2NDAxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2Vw
dGlvbkNvZGVEZXNjcmlwdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gOTczREM2M0UxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2VwdGlvbkNvZGVEZXNj
cmlwdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCTk3M0UzMjU2MTA4ODNCN0MwMDVCQzQ5MyAvKiBSZXNvdXJjZUxvYWROb3RpZmllci5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzNFMzI1NDEw
ODgzQjdDMDA1QkM0OTMgLyogUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwICovOyB9OwpAQCAtMTA2
MDQsNiArMTA2MDgsMTAgQEAKIAkJOTcyOEMzMTIxMjY4RTQzOTAwNDFFODlCIC8qIE1hcmt1cEFj
Y3VtdWxhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hcmt1cEFjY3Vt
dWxhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3Mzg4OTlFMTE2RUE5REMw
MEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBEb2N1bWVudFdyaXRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTk3Mzg4OTlGMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEb2N1bWVudFdyaXRlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5NzNBQTNGMjE1RDA4OEYwMDBFMzhBODUgLyogQmluZGluZ1N0YXRl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJpbmRpbmdTdGF0ZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3M0FBM0YzMTVEMDg4RjAwMEUzOEE4
NSAvKiBCaW5kaW5nU3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmlu
ZGluZ1N0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3M0FBM0Y3MTVEMDg5
MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gQmluZGluZ1NlY3VyaXR5LmNwcDsgcGF0aCA9IGdlbmVyaWMvQmluZGlu
Z1NlY3VyaXR5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTczQUEzRjgxNUQw
ODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBCaW5kaW5nU2VjdXJpdHkuaDsgcGF0aCA9IGdlbmVyaWMvQmluZGluZ1NlY3Vy
aXR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3M0RDNjNEMTQ1QTk0MDkwMDI4
NDJDMiAvKiBFeGNlcHRpb25Db2RlRGVzY3JpcHRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRXhjZXB0aW9uQ29kZURlc2NyaXB0aW9uLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTczREM2M0UxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2VwdGlv
bkNvZGVEZXNjcmlwdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFeGNl
cHRpb25Db2RlRGVzY3JpcHRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTcz
RTMyNTQxMDg4M0I3QzAwNUJDNDkzIC8qIFJlc291cmNlTG9hZE5vdGlmaWVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlc291cmNlTG9hZE5vdGlmaWVyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIwMDAzLDYgKzIwMDExLDggQEAKIAkJCWNo
aWxkcmVuID0gKAogCQkJCUI1RDMxREY4MTFDRjYxMEIwMDlGMjJCNCAvKiBBY3RpdmVET01DYWxs
YmFjay5jcHAgKi8sCiAJCQkJQjVEMzFERjkxMUNGNjEwQjAwOUYyMkI0IC8qIEFjdGl2ZURPTUNh
bGxiYWNrLmggKi8sCisJCQkJOTczQUEzRjcxNUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1
cml0eS5jcHAgKi8sCisJCQkJOTczQUEzRjgxNUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1
cml0eS5oICovLAogCQkJCUE2MjJBOEY5MTIyQzQ0QTYwMEE3ODVCMyAvKiBHZW5lcmljQmluZGlu
Zy5oICovLAogCQkJKTsKIAkJCW5hbWUgPSBnZW5lcmljOwpAQCAtMjAwNDksNiArMjAwNTksOCBA
QAogCQkJCTE0REZCMzNGMEE3REY3NjMwMDE4Rjc2OSAvKiBEZXJpdmVkIFNvdXJjZXMgKi8sCiAJ
CQkJNDlCMzc2MEExNUM2QzY4NDAwNTkxMzFEIC8qIEFycmF5VmFsdWUuY3BwICovLAogCQkJCTQ5
QjM3NjBCMTVDNkM2ODQwMDU5MTMxRCAvKiBBcnJheVZhbHVlLmggKi8sCisJCQkJOTczQUEzRjIx
NUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5jcHAgKi8sCisJCQkJOTczQUEzRjMxNUQw
ODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5oICovLAogCQkJCUJDRDUzMzYzMEVENjg0ODkw
MDg4NzQ2OCAvKiBDYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oICovLAogCQkJCTkzRjhCMzA2
MEEzMDBGRUEwMEY2MUFCOCAvKiBDb2RlR2VuZXJhdG9ySlMucG0gKi8sCiAJCQkJMzEyRDY3QjAx
NTM1NjkxRjAwNTYzRDBEIC8qIERpY3Rpb25hcnkuY3BwICovLApAQCAtMjUzNzUsNiArMjUzODcs
OCBAQAogCQkJCUUxQkU1MTJFMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuaCBp
biBIZWFkZXJzICovLAogCQkJCTk3N0UyRTBGMTJGMEZDOUMwMEMxMzM3OSAvKiBYU1NBdWRpdG9y
LmggaW4gSGVhZGVycyAqLywKIAkJCQlGRDUzNzM1MzEzN0I2NTE4MDAwMDhEQ0UgLyogWmVyb1Bv
bGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3M0FBM0Y1MTVEMDg4RjAwMEUzOEE4NSAvKiBCaW5k
aW5nU3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3M0FBM0ZBMTVEMDg5MUIwMEUzOEE4NSAv
KiBCaW5kaW5nU2VjdXJpdHkuaCBpbiBIZWFkZXJzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JE
ZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtMjg0NDksNiArMjg0NjMsOCBA
QAogCQkJCUUxQkU1MTJEMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJOTc3RTJFMEUxMkYwRkM5QzAwQzEzMzc5IC8qIFhTU0F1ZGl0b3Iu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkQ1MzczNTIxMzdCNjUxODAwMDA4RENFIC8qIFplcm9Q
b2xlLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTk3M0FBM0Y0MTVEMDg4RjAwMEUzOEE4NSAvKiBC
aW5kaW5nU3RhdGUuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJOTczQUEzRjkxNUQwODkxQjAwRTM4
QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5jcHAgaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5P
bmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcAppbmRleCA0ZDhl
ZGI5NTQ3MGUwNmMzNzg1ODIxZDU1ODI4YWEyMjQ0OWIyZDM5Li5mNzBkM2E3M2I3MmJhZDhkNjU2
MjI2OTIyOTI1NTQ1ZjVlZmU1YmJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuY3BwCkBAIC00Nyw3ICs0Nyw3IEBAIHN0YXRpYyBi
b29sIGNhbkFjY2Vzc0RvY3VtZW50KEJpbmRpbmdTdGF0ZSogc3RhdGUsIERvY3VtZW50KiB0YXJn
ZXREb2N1bWVudCwgYm9vCiAgICAgaWYgKCF0YXJnZXREb2N1bWVudCkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCi0gICAgRE9NV2luZG93KiBhY3RpdmUgPSBhY3RpdmVXaW5kb3coc3RhdGUpOwor
ICAgIERPTVdpbmRvdyogYWN0aXZlID0gYWN0aXZlRE9NV2luZG93KHN0YXRlKTsKICAgICBpZiAo
IWFjdGl2ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5oIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuaAppbmRleCA5ODA1NzlhNzFmMmEyYzk0
ZTVjYjY0YmNhMWY3ZjE4ODNiMmQxY2I0Li5lNmM2NTM4ZmUwN2MwNzA0MzdmNWZjMDI5NTU5M2M5
ODNmMjJhYjJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0Jp
bmRpbmdTZWN1cml0eS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmlu
ZGluZ1NlY3VyaXR5LmgKQEAgLTMxLDEzICszMSwxMSBAQAogI2lmbmRlZiBCaW5kaW5nU2VjdXJp
dHlfaAogI2RlZmluZSBCaW5kaW5nU2VjdXJpdHlfaAogCisjaW5jbHVkZSAiQmluZGluZ1N0YXRl
LmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotY2xhc3MgQmluZGluZ1N0YXRlOwotY2xhc3MgRE9NV2luZG93OwotY2xhc3MgRnJhbWU7
CiBjbGFzcyBIVE1MRnJhbWVFbGVtZW50QmFzZTsKIGNsYXNzIE5vZGU7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyNTQ2OGI1N2I5
NTE4ZWVkZTA0ZjdhMzE5OWY4NGJjYTBmYjAxOWQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3BwCkBAIC0wLDAgKzEsNTAgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAg
KiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICog
ZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBu
b3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0
aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9S
UworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVS
IE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAq
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiQmluZGluZ1N0YXRlLmgiCisKKyNpbmNsdWRlICJK
U0RPTVdpbmRvd0N1c3RvbS5oIgorCit1c2luZyBuYW1lc3BhY2UgSlNDOworCituYW1lc3BhY2Ug
V2ViQ29yZSB7CisKK0RPTVdpbmRvdyogYWN0aXZlRE9NV2luZG93KEV4ZWNTdGF0ZSogZXhlYykK
K3sKKyAgICByZXR1cm4gYXNKU0RPTVdpbmRvdyhleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkp
LT5pbXBsKCk7Cit9CisKK0RPTVdpbmRvdyogZmlyc3RET01XaW5kb3coRXhlY1N0YXRlKiBleGVj
KQoreworICAgIHJldHVybiBhc0pTRE9NV2luZG93KGV4ZWMtPmR5bmFtaWNHbG9iYWxPYmplY3Qo
KSktPmltcGwoKTsKK30KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvQmluZGluZ1N0YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9CaW5kaW5nU3Rh
dGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5iODY4NmNmZDg1MGMyYmYxN2RlOTY1OGFlYjYxNTM3YTc1ZjcyYzNl
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvQmluZGluZ1N0
YXRlLmgKQEAgLTAsMCArMSw1NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
IGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVy
IHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmli
dXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQg
ZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
CisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgQmluZGluZ1N0YXRlX2gKKyNkZWZpbmUgQmlu
ZGluZ1N0YXRlX2gKKworI2luY2x1ZGUgPHJ1bnRpbWUvSlNPYmplY3QuaD4KKworbmFtZXNwYWNl
IFdlYkNvcmUgeworCitjbGFzcyBET01XaW5kb3c7CitjbGFzcyBEb2N1bWVudDsKK2NsYXNzIEZy
YW1lOworCit0eXBlZGVmIEpTQzo6RXhlY1N0YXRlIEJpbmRpbmdTdGF0ZTsKKworRE9NV2luZG93
KiBhY3RpdmVET01XaW5kb3coQmluZGluZ1N0YXRlKik7CitET01XaW5kb3cqIGZpcnN0RE9NV2lu
ZG93KEJpbmRpbmdTdGF0ZSopOworCisvLyBGSVhNRTogSW1wbGVtZW50IHRoZXNlIGZ1bmN0aW9u
cy4KK0ZyYW1lKiBhY3RpdmVGcmFtZShCaW5kaW5nU3RhdGUqKSB7IH0KK0ZyYW1lKiBmaXJzdEZy
YW1lKEJpbmRpbmdTdGF0ZSopIHsgfQorCit2b2lkIGltbWVkaWF0ZWx5UmVwb3J0VW5zYWZlQWNj
ZXNzVG8oQmluZGluZ1N0YXRlKiwgRG9jdW1lbnQqIHRhcmdldERvY3VtZW50KSB7IH0KKworfQor
CisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGlu
Z3NBbGxJbk9uZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxs
SW5PbmUuY3BwCmluZGV4IGNmMWY0MmI4ZTBiM2JhNGYyNDQyODNjOTVhYTM1MmM4MGIwMTJlZjgu
LjM2MjJiNDcxMjUwYTgyNTBmOGQ4ZjY0MjBiMThiMjdkMGI3NmE1ZTggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcApAQCAtMjYsNiAr
MjYsNyBAQAogLy8gVGhpcyBhbGwtaW4tb25lIGNwcCBmaWxlIGN1dHMgZG93biBvbiB0ZW1wbGF0
ZSBibG9hdCB0byBhbGxvdyB1cyB0byBidWlsZCBvdXIgV2luZG93cyByZWxlYXNlIGJ1aWxkLgog
CiAjaW5jbHVkZSAiQXJyYXlWYWx1ZS5jcHAiCisjaW5jbHVkZSAiQmluZGluZ1N0YXRlLmNwcCIK
ICNpbmNsdWRlICJDYWxsYmFja0Z1bmN0aW9uLmNwcCIKICNpbmNsdWRlICJET01PYmplY3RIYXNo
VGFibGVNYXAuY3BwIgogI2luY2x1ZGUgIkRPTVdyYXBwZXJXb3JsZC5jcHAiCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcAppbmRleCAzMWYyNWRhZjBhYjI2M2Iy
MTZkYjQ5OGQxOTk0OTQ1YmVhM2Q5NjEyLi5lMDdhOTMyZTMzNDM0MjIwZmEyMjIyOWMyOGVlM2Rk
NTI4MDZlMGZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJp
bmRpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5j
cHAKQEAgLTIyMSwxNiArMjIxLDYgQEAgdm9pZCBzZXRET01FeGNlcHRpb24oRXhlY1N0YXRlKiBl
eGVjLCBFeGNlcHRpb25Db2RlIGVjKQogCiAjdW5kZWYgVFJZX1RPX0NSRUFURV9FWENFUFRJT04K
IAotRE9NV2luZG93KiBhY3RpdmVET01XaW5kb3coRXhlY1N0YXRlKiBleGVjKQotewotICAgIHJl
dHVybiBhc0pTRE9NV2luZG93KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSktPmltcGwoKTsK
LX0KLQotRE9NV2luZG93KiBmaXJzdERPTVdpbmRvdyhFeGVjU3RhdGUqIGV4ZWMpCi17Ci0gICAg
cmV0dXJuIGFzSlNET01XaW5kb3coZXhlYy0+ZHluYW1pY0dsb2JhbE9iamVjdCgpKS0+aW1wbCgp
OwotfQotCiBib29sIHNob3VsZEFsbG93QWNjZXNzVG9Ob2RlKEV4ZWNTdGF0ZSogZXhlYywgTm9k
ZSogbm9kZSkKIHsKICAgICByZXR1cm4gbm9kZSAmJiBzaG91bGRBbGxvd0FjY2Vzc1RvRnJhbWUo
ZXhlYywgbm9kZS0+ZG9jdW1lbnQoKS0+ZnJhbWUoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NQmluZGluZy5oCmluZGV4IDY3YmFkZDIzNjZlMWE2NDYwMTdhZDFhMzdhMjhiOTJm
ODM4YTU0MzAuLjk5MWQ4YzE4ODllNTc5MmVjMjExNDI2MjYxYzliMzBjZGU4ZWI5MGIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oCkBAIC0yMiw2ICsyMiw3IEBA
CiAjaWZuZGVmIEpTRE9NQmluZGluZ19oCiAjZGVmaW5lIEpTRE9NQmluZGluZ19oCiAKKyNpbmNs
dWRlICJCaW5kaW5nU3RhdGUuaCIKICNpbmNsdWRlICJDU1NJbXBvcnRSdWxlLmgiCiAjaW5jbHVk
ZSAiQ1NTU3R5bGVEZWNsYXJhdGlvbi5oIgogI2luY2x1ZGUgIkNTU1N0eWxlU2hlZXQuaCIKQEAg
LTQwOSwxMiArNDEwLDYgQEAgZW51bSBQYXJhbWV0ZXJEZWZhdWx0UG9saWN5IHsKICAgICBib29s
IHNob3VsZEFsbG93QWNjZXNzVG9GcmFtZShKU0M6OkV4ZWNTdGF0ZSosIEZyYW1lKiwgU3RyaW5n
JiBtZXNzYWdlKTsKICAgICAvLyBGSVhNRTogSW1wbGVtZW50IGFsbG93QWNjZXNzVG9ET01XaW5k
b3coSlNDOjpFeGVjU3RhdGUqLCBET01XaW5kb3cqKTsKIAotICAgIC8vIEZJWE1FOiBSZW1vdmUg
dGhlc2UgZnVuY3Rpb25zIGluIGZhdm9yIG9mIGFjdGl2ZUNvbnRleHQgYW5kCi0gICAgLy8gZmly
c3RDb250ZXh0LCB3aGljaCByZXR1cm4gU2NyaXB0RXhlY3V0aW9uQ29udGV4dCouIFdlIHByZWZl
ciB0byB1c2UKLSAgICAvLyBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBhcyB0aGUgY29udGV4dCBv
YmplY3QgaW4gdGhlIGJpbmRpbmdzLgotICAgIERPTVdpbmRvdyogYWN0aXZlRE9NV2luZG93KEpT
Qzo6RXhlY1N0YXRlKik7Ci0gICAgRE9NV2luZG93KiBmaXJzdERPTVdpbmRvdyhKU0M6OkV4ZWNT
dGF0ZSopOwotCiAgICAgdm9pZCBwcmludEVycm9yTWVzc2FnZUZvckZyYW1lKEZyYW1lKiwgY29u
c3QgU3RyaW5nJiBtZXNzYWdlKTsKICAgICBKU0M6OkpTVmFsdWUgb2JqZWN0VG9TdHJpbmdGdW5j
dGlvbkdldHRlcihKU0M6OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5h
bWUpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9CaW5kaW5nU3Rh
dGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvQmluZGluZ1N0YXRlLmNwcAppbmRl
eCBmZGY1YzA3MDVhZGRkMWJhMjRiNmVhMDQ5OTc0NDg5YjZiMzM3ZmVmLi44ODA5ZTRkNGY5ZTYx
YmRiOGRkOTQ1YmEyNWU3MWU2NTZkMTljMzc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3Y4L0JpbmRpbmdTdGF0ZS5jcHAKQEAgLTU1LDEyICs1NSwxMiBAQCBzdGF0aWMgdjg6OkhhbmRs
ZTx2ODo6Q29udGV4dD4gYWN0aXZlQ29udGV4dCgpCiAgICAgcmV0dXJuIHY4OjpDb250ZXh0OjpH
ZXRFbnRlcmVkKCk7CiB9CiAKLURPTVdpbmRvdyogYWN0aXZlV2luZG93KEJpbmRpbmdTdGF0ZSop
CitET01XaW5kb3cqIGFjdGl2ZURPTVdpbmRvdyhCaW5kaW5nU3RhdGUqKQogewogICAgIHJldHVy
biBWOFByb3h5OjpyZXRyaWV2ZVdpbmRvdyhhY3RpdmVDb250ZXh0KCkpOwogfQogCi1ET01XaW5k
b3cqIGZpcnN0V2luZG93KEJpbmRpbmdTdGF0ZSopCitET01XaW5kb3cqIGZpcnN0RE9NV2luZG93
KEJpbmRpbmdTdGF0ZSopCiB7CiAgICAgcmV0dXJuIFY4UHJveHk6OnJldHJpZXZlV2luZG93KHY4
OjpDb250ZXh0OjpHZXRFbnRlcmVkKCkpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvQmluZGluZ1N0YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9C
aW5kaW5nU3RhdGUuaAppbmRleCA5NzExZWU4OTRhYzgyMmEyMGY4NWY0MTJmMzQwMzQ3Y2E2YmNl
MGZkLi5kMzU0YmUyNjMzYmY4MWRkMWQxMjc0MTRjNDRjMGI2NDFkYjk5N2E1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuaApAQCAtNDQsOCArNDQsOCBAQCBwdWJs
aWM6CiAgICAgc3RhdGljIEJpbmRpbmdTdGF0ZSogaW5zdGFuY2UoKTsKIH07CiAKLURPTVdpbmRv
dyogYWN0aXZlV2luZG93KEJpbmRpbmdTdGF0ZSopOwotRE9NV2luZG93KiBmaXJzdFdpbmRvdyhC
aW5kaW5nU3RhdGUqKTsKK0RPTVdpbmRvdyogYWN0aXZlRE9NV2luZG93KEJpbmRpbmdTdGF0ZSop
OworRE9NV2luZG93KiBmaXJzdERPTVdpbmRvdyhCaW5kaW5nU3RhdGUqKTsKIAogRnJhbWUqIGFj
dGl2ZUZyYW1lKEJpbmRpbmdTdGF0ZSopOwogRnJhbWUqIGZpcnN0RnJhbWUoQmluZGluZ1N0YXRl
Kik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01X
aW5kb3dDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9N
V2luZG93Q3VzdG9tLmNwcAppbmRleCA4ZmEyODA4ZTczOGIwMWExMzVlOWRjOWMwMjdmYmRiYzEy
ZDIyZDZiLi5jN2NiZjYxMGQ0OWNiZGE3Nzk4ZTM4Nzg0OTUzNzRjY2Y5ZDdlMGJjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1
c3RvbS5jcHAKQEAgLTE4OSwxMSArMTg5LDExIEBAIHZvaWQgVjhET01XaW5kb3c6OmxvY2F0aW9u
QWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2CiAg
ICAgRE9NV2luZG93KiBpbXAgPSBWOERPTVdpbmRvdzo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7
CiAgICAgQmluZGluZ1N0YXRlKiBzdGF0ZSA9IEJpbmRpbmdTdGF0ZTo6aW5zdGFuY2UoKTsKIAot
ICAgIERPTVdpbmRvdyogYWN0aXZlID0gYWN0aXZlV2luZG93KHN0YXRlKTsKKyAgICBET01XaW5k
b3cqIGFjdGl2ZSA9IGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSk7CiAgICAgaWYgKCFhY3RpdmUpCiAg
ICAgICByZXR1cm47CiAKLSAgICBET01XaW5kb3cqIGZpcnN0ID0gZmlyc3RXaW5kb3coc3RhdGUp
OworICAgIERPTVdpbmRvdyogZmlyc3QgPSBmaXJzdERPTVdpbmRvdyhzdGF0ZSk7CiAgICAgaWYg
KCFmaXJzdCkKICAgICAgIHJldHVybjsKIApAQCAtMzAwLDcgKzMwMCw3IEBAIHN0YXRpYyB2ODo6
SGFuZGxlPHY4OjpWYWx1ZT4gaGFuZGxlUG9zdE1lc3NhZ2VDYWxsYmFjayhjb25zdCB2ODo6QXJn
dW1lbnRzJiBhcmdzCiAgICAgLy8gTm9uZSBvZiB0aGVzZSBuZWVkIHRvIGJlIFJlZlB0ciBiZWNh
dXNlIGFyZ3MgYW5kIGNvbnRleHQgYXJlIGd1YXJhbnRlZWQKICAgICAvLyB0byBob2xkIG9uIHRv
IHRoZW0uCiAgICAgRE9NV2luZG93KiB3aW5kb3cgPSBWOERPTVdpbmRvdzo6dG9OYXRpdmUoYXJn
cy5Ib2xkZXIoKSk7Ci0gICAgRE9NV2luZG93KiBzb3VyY2UgPSBhY3RpdmVXaW5kb3coQmluZGlu
Z1N0YXRlOjppbnN0YW5jZSgpKTsKKyAgICBET01XaW5kb3cqIHNvdXJjZSA9IGFjdGl2ZURPTVdp
bmRvdyhCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCkpOwogCiAgICAgLy8gSWYgY2FsbGVkIGRpcmVj
dGx5IGJ5IFdlYkNvcmUgd2UgZG9uJ3QgaGF2ZSBhIGNhbGxpbmcgY29udGV4dC4KICAgICBpZiAo
IXNvdXJjZSkKQEAgLTQ0MSw3ICs0NDEsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhET01X
aW5kb3c6OnNob3dNb2RhbERpYWxvZ0NhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmCiAgICAg
RGlhbG9nSGFuZGxlciBoYW5kbGVyKGFyZ3NbMV0pOwogICAgIFN0cmluZyBkaWFsb2dGZWF0dXJl
c1N0cmluZyA9IHRvV2ViQ29yZVN0cmluZ1dpdGhOdWxsT3JVbmRlZmluZWRDaGVjayhhcmdzWzJd
KTsKIAotICAgIGltcGwtPnNob3dNb2RhbERpYWxvZyh1cmxTdHJpbmcsIGRpYWxvZ0ZlYXR1cmVz
U3RyaW5nLCBhY3RpdmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSksIHNldFVwRGlh
bG9nLCAmaGFuZGxlcik7CisgICAgaW1wbC0+c2hvd01vZGFsRGlhbG9nKHVybFN0cmluZywgZGlh
bG9nRmVhdHVyZXNTdHJpbmcsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93
KHN0YXRlKSwgc2V0VXBEaWFsb2csICZoYW5kbGVyKTsKIAogICAgIHJldHVybiBoYW5kbGVyLnJl
dHVyblZhbHVlKCk7CiB9CkBAIC00NTksNyArNDU5LDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+
IFY4RE9NV2luZG93OjpvcGVuQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKICAg
ICBBdG9taWNTdHJpbmcgZnJhbWVOYW1lID0gKGFyZ3NbMV0tPklzVW5kZWZpbmVkKCkgfHwgYXJn
c1sxXS0+SXNOdWxsKCkpID8gIl9ibGFuayIgOiBBdG9taWNTdHJpbmcodG9XZWJDb3JlU3RyaW5n
KGFyZ3NbMV0pKTsKICAgICBTdHJpbmcgd2luZG93RmVhdHVyZXNTdHJpbmcgPSB0b1dlYkNvcmVT
dHJpbmdXaXRoTnVsbE9yVW5kZWZpbmVkQ2hlY2soYXJnc1syXSk7CiAKLSAgICBSZWZQdHI8RE9N
V2luZG93PiBvcGVuZWRXaW5kb3cgPSBpbXBsLT5vcGVuKHVybFN0cmluZywgZnJhbWVOYW1lLCB3
aW5kb3dGZWF0dXJlc1N0cmluZywgYWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3Rh
dGUpKTsKKyAgICBSZWZQdHI8RE9NV2luZG93PiBvcGVuZWRXaW5kb3cgPSBpbXBsLT5vcGVuKHVy
bFN0cmluZywgZnJhbWVOYW1lLCB3aW5kb3dGZWF0dXJlc1N0cmluZywgYWN0aXZlRE9NV2luZG93
KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUpKTsKICAgICBpZiAoIW9wZW5lZFdpbmRvdykK
ICAgICAgICAgcmV0dXJuIHY4OjpVbmRlZmluZWQoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RG9jdW1lbnRMb2NhdGlvbkN1c3RvbS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0aW9uQ3VzdG9t
LmNwcAppbmRleCA0YzE5NDk1OTlhNTYwMzgyMTgzNmJjOWFiNDI5Y2MxMzcyOGI3YWNmLi5iMmQ4
MWU4NGMyZDc1ZDkyMjQ5Njk4NGExNmExODQ0ZmJhMWY3YzM2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0aW9uQ3VzdG9tLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0aW9u
Q3VzdG9tLmNwcApAQCAtNTIsMTEgKzUyLDExIEBAIHZvaWQgVjhEb2N1bWVudDo6bG9jYXRpb25B
Y2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4CiAK
ICAgICBCaW5kaW5nU3RhdGUqIHN0YXRlID0gQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpOwogCi0g
ICAgRE9NV2luZG93KiBhY3RpdmUgPSBhY3RpdmVXaW5kb3coc3RhdGUpOworICAgIERPTVdpbmRv
dyogYWN0aXZlID0gYWN0aXZlRE9NV2luZG93KHN0YXRlKTsKICAgICBpZiAoIWFjdGl2ZSkKICAg
ICAgICAgcmV0dXJuOwogCi0gICAgRE9NV2luZG93KiBmaXJzdCA9IGZpcnN0V2luZG93KHN0YXRl
KTsKKyAgICBET01XaW5kb3cqIGZpcnN0ID0gZmlyc3RET01XaW5kb3coc3RhdGUpOwogICAgIGlm
ICghZmlyc3QpCiAgICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvY3VzdG9tL1Y4TG9jYXRpb25DdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvY3VzdG9tL1Y4TG9jYXRpb25DdXN0b20uY3BwCmluZGV4IDcyZGNjYzc2N2M1
ZTc5Nzg5YzBlOTZiZTM0MmIwZDU0MDQwYTkzN2MuLjQyZjAyZjliNTlkNjYwNGJlNDY1ZjI2MTMw
ZTJmY2E5NDVmMzRhNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1
c3RvbS9WOExvY2F0aW9uQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92
OC9jdXN0b20vVjhMb2NhdGlvbkN1c3RvbS5jcHAKQEAgLTU1LDcgKzU1LDcgQEAgdm9pZCBWOExv
Y2F0aW9uOjpoYXNoQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4
OjpMb2NhbDx2ODo6VmEKICAgICAvLyBGSVhNRTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5
LgogICAgIFN0cmluZyBoYXNoID0gdG9XZWJDb3JlU3RyaW5nKHZhbHVlKTsKIAotICAgIGltcGwt
PnNldEhhc2goaGFzaCwgYWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsK
KyAgICBpbXBsLT5zZXRIYXNoKGhhc2gsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9N
V2luZG93KHN0YXRlKSk7CiB9CiAKIHZvaWQgVjhMb2NhdGlvbjo6aG9zdEFjY2Vzc29yU2V0dGVy
KHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwg
Y29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKQEAgLTY3LDcgKzY3LDcgQEAgdm9pZCBWOExv
Y2F0aW9uOjpob3N0QWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4
OjpMb2NhbDx2ODo6VmEKICAgICAvLyBGSVhNRTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5
LgogICAgIFN0cmluZyBob3N0ID0gdG9XZWJDb3JlU3RyaW5nKHZhbHVlKTsKIAotICAgIGltcGwt
PnNldEhvc3QoaG9zdCwgYWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsK
KyAgICBpbXBsLT5zZXRIb3N0KGhvc3QsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9N
V2luZG93KHN0YXRlKSk7CiB9CiAKIHZvaWQgVjhMb2NhdGlvbjo6aG9zdG5hbWVBY2Nlc3NvclNl
dHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFs
dWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCkBAIC03OSw3ICs3OSw3IEBAIHZvaWQg
VjhMb2NhdGlvbjo6aG9zdG5hbWVBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4g
bmFtZSwgdjg6OkxvY2FsPHY4CiAgICAgLy8gRklYTUU6IEhhbmRsZSBleGNlcHRpb25zIGNvcnJl
Y3RseS4KICAgICBTdHJpbmcgaG9zdG5hbWUgPSB0b1dlYkNvcmVTdHJpbmcodmFsdWUpOwogCi0g
ICAgaW1wbC0+c2V0SG9zdG5hbWUoaG9zdG5hbWUsIGFjdGl2ZVdpbmRvdyhzdGF0ZSksIGZpcnN0
V2luZG93KHN0YXRlKSk7CisgICAgaW1wbC0+c2V0SG9zdG5hbWUoaG9zdG5hbWUsIGFjdGl2ZURP
TVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSk7CiB9CiAKIHZvaWQgVjhMb2Nh
dGlvbjo6aHJlZkFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6
TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKQEAg
LTkxLDcgKzkxLDcgQEAgdm9pZCBWOExvY2F0aW9uOjpocmVmQWNjZXNzb3JTZXR0ZXIodjg6Okxv
Y2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmEKICAgICAvLyBGSVhNRTogSGFu
ZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBocmVmID0gdG9XZWJDb3JlU3Ry
aW5nKHZhbHVlKTsKIAotICAgIGltcGwtPnNldEhyZWYoaHJlZiwgYWN0aXZlV2luZG93KHN0YXRl
KSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5zZXRIcmVmKGhyZWYsIGFjdGl2ZURP
TVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSk7CiB9CiAKIHZvaWQgVjhMb2Nh
dGlvbjo6cGF0aG5hbWVBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwg
djg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8p
CkBAIC0xMDMsNyArMTAzLDcgQEAgdm9pZCBWOExvY2F0aW9uOjpwYXRobmFtZUFjY2Vzc29yU2V0
dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djgKICAgICAvLyBGSVhN
RTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBwYXRobmFtZSA9IHRv
V2ViQ29yZVN0cmluZyh2YWx1ZSk7CiAKLSAgICBpbXBsLT5zZXRQYXRobmFtZShwYXRobmFtZSwg
YWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5zZXRQ
YXRobmFtZShwYXRobmFtZSwgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3co
c3RhdGUpKTsKIH0KIAogdm9pZCBWOExvY2F0aW9uOjpwb3J0QWNjZXNzb3JTZXR0ZXIodjg6Okxv
Y2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2
ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpAQCAtMTE1LDcgKzExNSw3IEBAIHZvaWQgVjhMb2NhdGlv
bjo6cG9ydEFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9j
YWw8djg6OlZhCiAgICAgLy8gRklYTUU6IEhhbmRsZSBleGNlcHRpb25zIGNvcnJlY3RseS4KICAg
ICBTdHJpbmcgcG9ydCA9IHRvV2ViQ29yZVN0cmluZyh2YWx1ZSk7CiAKLSAgICBpbXBsLT5zZXRQ
b3J0KHBvcnQsIGFjdGl2ZVdpbmRvdyhzdGF0ZSksIGZpcnN0V2luZG93KHN0YXRlKSk7CisgICAg
aW1wbC0+c2V0UG9ydChwb3J0LCBhY3RpdmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRv
dyhzdGF0ZSkpOwogfQogCiB2b2lkIFY4TG9jYXRpb246OnByb3RvY29sQWNjZXNzb3JTZXR0ZXIo
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBj
b25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpAQCAtMTI4LDcgKzEyOCw3IEBAIHZvaWQgVjhM
b2NhdGlvbjo6cHJvdG9jb2xBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFt
ZSwgdjg6OkxvY2FsPHY4CiAgICAgU3RyaW5nIHByb3RvY29sID0gdG9XZWJDb3JlU3RyaW5nKHZh
bHVlKTsKIAogICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwotICAgIGltcGwtPnNldFByb3RvY29s
KHByb3RvY29sLCBhY3RpdmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSksIGVjKTsK
KyAgICBpbXBsLT5zZXRQcm90b2NvbChwcm90b2NvbCwgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwg
Zmlyc3RET01XaW5kb3coc3RhdGUpLCBlYyk7CiAgICAgaWYgKFVOTElLRUxZKGVjKSkKICAgICAg
ICAgVjhQcm94eTo6c2V0RE9NRXhjZXB0aW9uKGVjLCBpbmZvLkdldElzb2xhdGUoKSk7CiB9CkBA
IC0xNDIsNyArMTQyLDcgQEAgdm9pZCBWOExvY2F0aW9uOjpzZWFyY2hBY2Nlc3NvclNldHRlcih2
ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjoKICAgICAvLyBGSVhNRTog
SGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBzZWFyY2ggPSB0b1dlYkNv
cmVTdHJpbmcodmFsdWUpOwogCi0gICAgaW1wbC0+c2V0U2VhcmNoKHNlYXJjaCwgYWN0aXZlV2lu
ZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5zZXRTZWFyY2goc2Vh
cmNoLCBhY3RpdmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkpOwogfQog
CiB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhMb2NhdGlvbjo6cmVsb2FkQWNjZXNzb3JHZXR0ZXIo
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8p
CkBAIC0yMDYsNyArMjA2LDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4TG9jYXRpb246OnJl
bG9hZENhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAgTG9jYXRpb24qIGlt
cGwgPSBWOExvY2F0aW9uOjp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKICAgICBCaW5kaW5nU3Rh
dGUqIHN0YXRlID0gQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpOwogCi0gICAgaW1wbC0+cmVsb2Fk
KGFjdGl2ZVdpbmRvdyhzdGF0ZSkpOworICAgIGltcGwtPnJlbG9hZChhY3RpdmVET01XaW5kb3co
c3RhdGUpKTsKICAgICByZXR1cm4gdjg6OlVuZGVmaW5lZCgpOwogfQogCkBAIC0yMTksNyArMjE5
LDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4TG9jYXRpb246OnJlcGxhY2VDYWxsYmFjayhj
b25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIC8vIEZJWE1FOiBIYW5kbGUgZXhjZXB0aW9u
cyBjb3JyZWN0bHkuCiAgICAgU3RyaW5nIHVybFN0cmluZyA9IHRvV2ViQ29yZVN0cmluZyhhcmdz
WzBdKTsKIAotICAgIGltcGwtPnJlcGxhY2UodXJsU3RyaW5nLCBhY3RpdmVXaW5kb3coc3RhdGUp
LCBmaXJzdFdpbmRvdyhzdGF0ZSkpOworICAgIGltcGwtPnJlcGxhY2UodXJsU3RyaW5nLCBhY3Rp
dmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkpOwogICAgIHJldHVybiB2
ODo6VW5kZWZpbmVkKCk7CiB9CiAKQEAgLTIzMiw3ICsyMzIsNyBAQCB2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gVjhMb2NhdGlvbjo6YXNzaWduQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJn
cykKICAgICAvLyBGSVhNRTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmlu
ZyB1cmxTdHJpbmcgPSB0b1dlYkNvcmVTdHJpbmcoYXJnc1swXSk7CiAKLSAgICBpbXBsLT5hc3Np
Z24odXJsU3RyaW5nLCBhY3RpdmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSkpOwor
ICAgIGltcGwtPmFzc2lnbih1cmxTdHJpbmcsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0
RE9NV2luZG93KHN0YXRlKSk7CiAgICAgcmV0dXJuIHY4OjpVbmRlZmluZWQoKTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156797</attachid>
            <date>2012-08-06 16:50:08 -0700</date>
            <delta_ts>2012-08-06 16:51:43 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-93307-20120806164944.patch</filename>
            <type>text/plain</type>
            <size>32072</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI0ODA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDczYjAyODEyYzlhNDk0
NDhjMjQ1NDgwMGMwYjVmN2Q1MjQwMzFlMS4uMzRlNjAyNWE3ZWM2OGFjMzc3NGFhOTdjNWEzNmE4
MWM0OTMwMWJmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYyIEBACisyMDEyLTA4LTA2ICBBZGFt
IEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgSlNDIHNob3VsZCB1c2UgQmlu
ZGluZ1N0YXRlIHRvIGRldGVybWluZSB0aGUgYWN0aXZlRE9NV2luZG93CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzMwNworCisgICAgICAgIFJldmll
d2VkIGJ5IEVyaWMgU2VpZGVsLgorCisgICAgICAgIFRoaXMgcGF0Y2ggbW92ZXMgYWN0aXZlRE9N
V2luZG93IGZyb20gSlNET01CaW5kaW5ncy5jcHAgdG8KKyAgICAgICAgQmluZGluZ1N0YXRlLmNw
cC4gVGhpcyBpcyBhIGZpcnN0IHN0ZXAgdG93YXJkcyBzaGFyaW5nIHRoZSBjb3JlCisgICAgICAg
IHNlY3VyaXR5IGxvZ2ljIGluIHRoZSBiaW5kaW5ncyBiZXR3ZWVuIEphdmFTY3JpcHRDb3JlIGFu
ZCBWOC4gT25jZSB0aGUKKyAgICAgICAgbG9naWMgaXMgc2hhcmVkLCB3ZSB3aWxsIGJlIGFibGUg
dG8gcmVmYWN0b3IgdGhlIGxvZ2ljIHRvIGF2b2lkIHRoZQorICAgICAgICBuZWVkIGZvciBET01X
aW5kb3c6Om1fc2VjdXJpdHlPcmlnaW4uCisKKyAgICAgICAgVGhpcyBwYXRjaCBkb2Vzbid0IGFj
dHVhbGx5IHNoYXJlIGFueSBjb2RlICh5ZXQpLiBJdCBqdXN0IHNldHMgdGhlCisgICAgICAgIHN0
YWdlIGJ5IGNyZWF0aW5nIEJpbmRpbmdTdGF0ZSBhcyBhIHR5cGVkZWYgb2YgRXhlY1N0YXRlIGFu
ZCBhZGRpbmcgdGhlCisgICAgICAgIGFwcHJvcHJpYXRlIGZpbGVzIHRvIHRoZSBidWlsZCBzeXN0
ZW1zLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWxzbyByZW5hbWVzIGFjdGl2ZVdpbmRvdyBhbmQg
Zmlyc3RXaW5kb3cgaW4gdGhlIFY4IGJpbmRpbmdzCisgICAgICAgIHRvIGFjdGl2ZURPTVdpbmRv
dyBhbmQgZmlyc3RET01XaW5kb3cgdG8gbWF0Y2ggdGhlIG5hbWVzIGluIHRoZQorICAgICAgICBK
YXZhU2NyaXB0Q29yZSBiaW5kaW5ncy4KKworICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06
CisgICAgICAgICogVGFyZ2V0LnByaToKKyAgICAgICAgKiBVc2VKU0MuY21ha2U6CisgICAgICAg
ICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9q
OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAg
KiBiaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpjYW5BY2Nlc3NEb2N1bWVudCk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNCaW5kaW5nc0Fs
bEluT25lLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwOgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmg6Cisg
ICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6YWN0aXZlRE9NV2luZG93KToKKyAgICAgICAgKFdlYkNvcmU6
OmZpcnN0RE9NV2luZG93KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuaDoK
KyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdp
bmRvd0N1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6bG9jYXRpb25B
Y2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpoYW5kbGVQb3N0TWVzc2FnZUNhbGxi
YWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlY4RE9NV2luZG93OjpzaG93TW9kYWxEaWFsb2dDYWxs
YmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6b3BlbkNhbGxiYWNrKToKKyAg
ICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0aW9uQ3VzdG9tLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlY4RG9jdW1lbnQ6OmxvY2F0aW9uQWNjZXNzb3JTZXR0ZXIpOgor
ICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOExvY2F0aW9uQ3VzdG9tLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlY4TG9jYXRpb246Omhhc2hBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChX
ZWJDb3JlOjpWOExvY2F0aW9uOjpob3N0QWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6VjhMb2NhdGlvbjo6aG9zdG5hbWVBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3Jl
OjpWOExvY2F0aW9uOjpocmVmQWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhM
b2NhdGlvbjo6cGF0aG5hbWVBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExv
Y2F0aW9uOjpwb3J0QWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2NhdGlv
bjo6cHJvdG9jb2xBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9u
OjpzZWFyY2hBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjpy
ZWxvYWRDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjpyZXBsYWNlQ2Fs
bGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2NhdGlvbjo6YXNzaWduQ2FsbGJhY2spOgor
CiAyMDEyLTA4LTA2ICBBbm5hIENhdmVuZGVyICA8YW5uYWNjQGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBNZWRpYVNvdXJjZSBzaG91bGQgdXNlIGl0J3Mgb3duIGxpc3Qgb2Ygc291cmNlIFVSTHMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0gYi9Tb3VyY2Uv
V2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmluZGV4IDVlYzBiYzJmMGY4ZDU1N2Y3MmExM2Vi
MTgzMDlmZDQyNGZjYjcwMzMuLmFmZWZjOTZhZWViM2IyNGRlNDIwNGVmNDc3MDAxY2E3M2UyM2U5
YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KKysrIGIv
U291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpAQCAtMTM3MCwxMiArMTM3MCwxNSBA
QCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhP
YmplY3RDYWNoZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0FjdGl2ZURP
TUNhbGxiYWNrLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9BY3RpdmVE
T01DYWxsYmFjay5oIFwKKwlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdT
ZWN1cml0eS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1Nl
Y3VyaXR5LmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvR2VuZXJpY0JpbmRp
bmcuaCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZl
YXR1cmVzLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5h
YmxlZEZlYXR1cmVzLmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0FycmF5VmFsdWUu
Y3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9BcnJheVZhbHVlLmggXAorCVNvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAgXAorCVNvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9DYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9DYWxsYmFja0Z1bmN0aW9uLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
Q2FsbGJhY2tGdW5jdGlvbi5oIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5w
cmkgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCmluZGV4IGJiMGViZTQ1NDBjN2Y4NjI0ZWIw
MDAxNGQ0YzQ0ODcyYTMyNTUwNWQuLjk5MGM0MWI4MTg1NjQ3ZjU2NjM4MjJmZmY2YzI3NDU4ODlj
NzU2MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKKysrIGIvU291cmNl
L1dlYkNvcmUvVGFyZ2V0LnByaQpAQCAtNjksMTEgKzY5LDEzIEBAIFNPVVJDRVMgKz0gXAogICAg
IGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRhYmxlUm93LmNwcCBcCiAgICAgYWNjZXNzaWJp
bGl0eS9BWE9iamVjdENhY2hlLmNwcCBcCiAgICAgYmluZGluZ3MvZ2VuZXJpYy9BY3RpdmVET01D
YWxsYmFjay5jcHAgXAorICAgIGJpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcCBc
CiAgICAgYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAogCiBTT1VS
Q0VTICs9IFwKICAgICAgYmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwIFwKICAgICAg
YmluZGluZ3MvanMvQXJyYXlWYWx1ZS5jcHAgXAorICAgICBiaW5kaW5ncy9qcy9CaW5kaW5nU3Rh
dGUuY3BwIFwKICAgICAgYmluZGluZ3MvanMvQ2FsbGJhY2tGdW5jdGlvbi5jcHAgXAogICAgICBi
aW5kaW5ncy9qcy9ET01PYmplY3RIYXNoVGFibGVNYXAuY3BwIFwKICAgICAgYmluZGluZ3MvanMv
RE9NV3JhcHBlcldvcmxkLmNwcCBcCkBAIC0xMjc5LDkgKzEyODEsMTEgQEAgSEVBREVSUyArPSBc
CiAgICAgYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmggXAogICAgIGJpbmRpbmdzL1Njcmlw
dENvbnRyb2xsZXJCYXNlLmggXAogICAgIGJpbmRpbmdzL2dlbmVyaWMvQWN0aXZlRE9NQ2FsbGJh
Y2suaCBcCisgICAgYmluZGluZ3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuaCBcCiAgICAgYmlu
ZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKIAogSEVBREVSUyArPSBcCisg
ICAgYmluZGluZ3MvanMvQmluZGluZ1N0YXRlLmggXAogICAgIGJpbmRpbmdzL2pzL0NhY2hlZFNj
cmlwdFNvdXJjZVByb3ZpZGVyLmggXAogICAgIGJpbmRpbmdzL2pzL0NhbGxiYWNrRnVuY3Rpb24u
aCBcCiAgICAgYmluZGluZ3MvanMvR0NDb250cm9sbGVyLmggXApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvVXNlSlNDLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvVXNlSlNDLmNtYWtlCmluZGV4
IDk1ODk1ZWQyYWUxYTNlNGIyYjlmMTgyZjJkY2MzZjhkY2MxNDA3ZWUuLjkyYjBjMjUzZDVlYjkz
ZWRkODhiNWE1MGEyNzdmYWI2YjYxZTU2YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1Vz
ZUpTQy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9Vc2VKU0MuY21ha2UKQEAgLTIzLDYgKzIz
LDcgQEAgRU5ESUYgKCkKIAogTElTVChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgYmluZGlu
Z3MvanMvQXJyYXlWYWx1ZS5jcHAKKyAgICBiaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3BwCiAg
ICAgYmluZGluZ3MvanMvQ2FsbGJhY2tGdW5jdGlvbi5jcHAKICAgICBiaW5kaW5ncy9qcy9ET01P
YmplY3RIYXNoVGFibGVNYXAuY3BwCiAgICAgYmluZGluZ3MvanMvRE9NV3JhcHBlcldvcmxkLmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS5neXBpCmluZGV4IGI0NmU1NzFiNjIzZDdmNjQ5MmFlMDIzMGFjNjY2NWNiMjNk
ZGE3NmYuLmY5NTA5NjllZjA1ZDUxYWIyMGIzMmE0YzUwN2MwYTM5OWEyNDUzOGQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLmd5cGkKQEAgLTE5MjQsNiArMTkyNCw4IEBACiAgICAgICAgICAgICAnYmluZGluZ3MvZ29i
amVjdC9XZWJLaXRIVE1MRWxlbWVudFdyYXBwZXJGYWN0b3J5LmgnLAogICAgICAgICAgICAgJ2Jp
bmRpbmdzL2pzL0FycmF5VmFsdWUuY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9BcnJh
eVZhbHVlLmgnLAorICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAnLAor
ICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5oJywKICAgICAgICAgICAgICdi
aW5kaW5ncy9qcy9DYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oJywKICAgICAgICAgICAgICdi
aW5kaW5ncy9qcy9DYWxsYmFja0Z1bmN0aW9uLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3Mv
anMvQ2FsbGJhY2tGdW5jdGlvbi5oJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ov
V2ViQ29yZS52Y3Byb2oKaW5kZXggN2YzYWYxNGRhZTAwNmVmMjBhZjY3MWVjNjE1MmEwYTJmN2Nh
NTViOS4uZmU2NWE1OGM0YTllNTc3MWNkY2M2MDMxNDRiNTAxMzAwZTg1OWY4ZCAxMDA3NTUKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTYzNzg2LDcgKzYz
Nzg2LDExIEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKLQkJCQkJUmVsYXRpdmVQ
YXRoPSIuLlxiaW5kaW5nc1xnZW5lcmljXEJpbmRpbmdET01XaW5kb3cuaCIKKwkJCQkJUmVsYXRp
dmVQYXRoPSIuLlxiaW5kaW5nc1xnZW5lcmljXEJpbmRpbmdTZWN1cml0eS5jcHAiCisJCQkJCT4K
KwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xn
ZW5lcmljXEJpbmRpbmdTZWN1cml0eS5oIgogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxGaWxl
CkBAIC02MzkxOCw2ICs2MzkyMiw2MiBAQAogCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgogCQkJ
CTwvRmlsZT4KIAkJCQk8RmlsZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEJp
bmRpbmdTdGF0ZS5jcHAiCisJCQkJCT4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlO
YW1lPSJEZWJ1Z3xXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJ
PgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4K
KwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJ
CQlOYW1lPSJSZWxlYXNlfFdpbjMyIgorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCisJ
CQkJCQk+CisJCQkJCQk8VG9vbAorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCisJCQkJ
CQkvPgorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24K
KwkJCQkJCU5hbWU9IkRlYnVnX0NhaXJvX0NGTGl0ZXxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJv
bUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJPEZp
bGVDb25maWd1cmF0aW9uCisJCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvX0NGTGl0ZXxXaW4zMiIK
KwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wKKwkJ
CQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29uZmln
dXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlOYW1lPSJEZWJ1Z19BbGx8
V2luMzIiCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKKwkJCQkJCT4KKwkJCQkJCTxU
b29sCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKKwkJCQkJCS8+CisJCQkJCTwvRmls
ZUNvbmZpZ3VyYXRpb24+CisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbgorCQkJCQkJTmFtZT0iUHJv
ZHVjdGlvbnxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgor
CQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJ
CQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVs
YXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xCaW5kaW5nU3RhdGUuaCIKKwkJCQkJPgorCQkJCTwv
RmlsZT4KKwkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXENhbGxi
YWNrRnVuY3Rpb24uaCIKIAkJCQkJPgogCQkJCTwvRmlsZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwYmQ0MGViNWZiMmFjZDJj
MGYzYTFmZDE5NmYyM2I2YWZjNDZhOTM2Li4yYzRhY2JmNGZmNzE3NmQ3NzE5MjRkOWZkNWU2NGI3
MmI3NGM5YWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCkBAIC0zNDYxLDYgKzM0NjEsMTAgQEAKIAkJOTcyOEMzMTQxMjY4RTQzOTAw
NDFFODlCIC8qIE1hcmt1cEFjY3VtdWxhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5NzI4QzMxMjEyNjhFNDM5MDA0MUU4OUIgLyogTWFya3VwQWNj
dW11bGF0b3IuaCAqLzsgfTsKIAkJOTczODg5QTAxMTZFQTlEQzAwQURGMzEzIC8qIERvY3VtZW50
V3JpdGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDk3Mzg4OTlFMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5jcHAgKi87IH07CiAJ
CTk3Mzg4OUExMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczODg5OUYxMTZFQTlEQzAwQURG
MzEzIC8qIERvY3VtZW50V3JpdGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJOTczQUEzRjQxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0
ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzNB
QTNGMjE1RDA4OEYwMDBFMzhBODUgLyogQmluZGluZ1N0YXRlLmNwcCAqLzsgfTsKKwkJOTczQUEz
RjUxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczQUEzRjMxNUQwODhGMDAwRTM4QTg1IC8qIEJp
bmRpbmdTdGF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTk3M0FBM0Y5MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczQUEzRjcxNUQw
ODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5jcHAgKi87IH07CisJCTk3M0FBM0ZBMTVE
MDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3M0FBM0Y4MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5k
aW5nU2VjdXJpdHkuaCAqLzsgfTsKIAkJOTczREM2M0YxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2Vw
dGlvbkNvZGVEZXNjcmlwdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5NzNEQzYzRDE0NUE5NDA5MDAyODQyQzIgLyogRXhjZXB0aW9uQ29kZURl
c2NyaXB0aW9uLmNwcCAqLzsgfTsKIAkJOTczREM2NDAxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2Vw
dGlvbkNvZGVEZXNjcmlwdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gOTczREM2M0UxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2VwdGlvbkNvZGVEZXNj
cmlwdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCTk3M0UzMjU2MTA4ODNCN0MwMDVCQzQ5MyAvKiBSZXNvdXJjZUxvYWROb3RpZmllci5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzNFMzI1NDEw
ODgzQjdDMDA1QkM0OTMgLyogUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwICovOyB9OwpAQCAtMTA2
MDQsNiArMTA2MDgsMTAgQEAKIAkJOTcyOEMzMTIxMjY4RTQzOTAwNDFFODlCIC8qIE1hcmt1cEFj
Y3VtdWxhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hcmt1cEFjY3Vt
dWxhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3Mzg4OTlFMTE2RUE5REMw
MEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBEb2N1bWVudFdyaXRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTk3Mzg4OTlGMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEb2N1bWVudFdyaXRlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5NzNBQTNGMjE1RDA4OEYwMDBFMzhBODUgLyogQmluZGluZ1N0YXRl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJpbmRpbmdTdGF0ZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3M0FBM0YzMTVEMDg4RjAwMEUzOEE4
NSAvKiBCaW5kaW5nU3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmlu
ZGluZ1N0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3M0FBM0Y3MTVEMDg5
MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gQmluZGluZ1NlY3VyaXR5LmNwcDsgcGF0aCA9IGdlbmVyaWMvQmluZGlu
Z1NlY3VyaXR5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTczQUEzRjgxNUQw
ODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBCaW5kaW5nU2VjdXJpdHkuaDsgcGF0aCA9IGdlbmVyaWMvQmluZGluZ1NlY3Vy
aXR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3M0RDNjNEMTQ1QTk0MDkwMDI4
NDJDMiAvKiBFeGNlcHRpb25Db2RlRGVzY3JpcHRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRXhjZXB0aW9uQ29kZURlc2NyaXB0aW9uLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTczREM2M0UxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2VwdGlv
bkNvZGVEZXNjcmlwdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFeGNl
cHRpb25Db2RlRGVzY3JpcHRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTcz
RTMyNTQxMDg4M0I3QzAwNUJDNDkzIC8qIFJlc291cmNlTG9hZE5vdGlmaWVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlc291cmNlTG9hZE5vdGlmaWVyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIwMDAzLDYgKzIwMDExLDggQEAKIAkJCWNo
aWxkcmVuID0gKAogCQkJCUI1RDMxREY4MTFDRjYxMEIwMDlGMjJCNCAvKiBBY3RpdmVET01DYWxs
YmFjay5jcHAgKi8sCiAJCQkJQjVEMzFERjkxMUNGNjEwQjAwOUYyMkI0IC8qIEFjdGl2ZURPTUNh
bGxiYWNrLmggKi8sCisJCQkJOTczQUEzRjcxNUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1
cml0eS5jcHAgKi8sCisJCQkJOTczQUEzRjgxNUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1
cml0eS5oICovLAogCQkJCUE2MjJBOEY5MTIyQzQ0QTYwMEE3ODVCMyAvKiBHZW5lcmljQmluZGlu
Zy5oICovLAogCQkJKTsKIAkJCW5hbWUgPSBnZW5lcmljOwpAQCAtMjAwNDksNiArMjAwNTksOCBA
QAogCQkJCTE0REZCMzNGMEE3REY3NjMwMDE4Rjc2OSAvKiBEZXJpdmVkIFNvdXJjZXMgKi8sCiAJ
CQkJNDlCMzc2MEExNUM2QzY4NDAwNTkxMzFEIC8qIEFycmF5VmFsdWUuY3BwICovLAogCQkJCTQ5
QjM3NjBCMTVDNkM2ODQwMDU5MTMxRCAvKiBBcnJheVZhbHVlLmggKi8sCisJCQkJOTczQUEzRjIx
NUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5jcHAgKi8sCisJCQkJOTczQUEzRjMxNUQw
ODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5oICovLAogCQkJCUJDRDUzMzYzMEVENjg0ODkw
MDg4NzQ2OCAvKiBDYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oICovLAogCQkJCTkzRjhCMzA2
MEEzMDBGRUEwMEY2MUFCOCAvKiBDb2RlR2VuZXJhdG9ySlMucG0gKi8sCiAJCQkJMzEyRDY3QjAx
NTM1NjkxRjAwNTYzRDBEIC8qIERpY3Rpb25hcnkuY3BwICovLApAQCAtMjUzNzUsNiArMjUzODcs
OCBAQAogCQkJCUUxQkU1MTJFMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuaCBp
biBIZWFkZXJzICovLAogCQkJCTk3N0UyRTBGMTJGMEZDOUMwMEMxMzM3OSAvKiBYU1NBdWRpdG9y
LmggaW4gSGVhZGVycyAqLywKIAkJCQlGRDUzNzM1MzEzN0I2NTE4MDAwMDhEQ0UgLyogWmVyb1Bv
bGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3M0FBM0Y1MTVEMDg4RjAwMEUzOEE4NSAvKiBCaW5k
aW5nU3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3M0FBM0ZBMTVEMDg5MUIwMEUzOEE4NSAv
KiBCaW5kaW5nU2VjdXJpdHkuaCBpbiBIZWFkZXJzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JE
ZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtMjg0NDksNiArMjg0NjMsOCBA
QAogCQkJCUUxQkU1MTJEMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJOTc3RTJFMEUxMkYwRkM5QzAwQzEzMzc5IC8qIFhTU0F1ZGl0b3Iu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkQ1MzczNTIxMzdCNjUxODAwMDA4RENFIC8qIFplcm9Q
b2xlLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTk3M0FBM0Y0MTVEMDg4RjAwMEUzOEE4NSAvKiBC
aW5kaW5nU3RhdGUuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJOTczQUEzRjkxNUQwODkxQjAwRTM4
QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5jcHAgaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5P
bmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcAppbmRleCA0ZDhl
ZGI5NTQ3MGUwNmMzNzg1ODIxZDU1ODI4YWEyMjQ0OWIyZDM5Li5mNzBkM2E3M2I3MmJhZDhkNjU2
MjI2OTIyOTI1NTQ1ZjVlZmU1YmJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuY3BwCkBAIC00Nyw3ICs0Nyw3IEBAIHN0YXRpYyBi
b29sIGNhbkFjY2Vzc0RvY3VtZW50KEJpbmRpbmdTdGF0ZSogc3RhdGUsIERvY3VtZW50KiB0YXJn
ZXREb2N1bWVudCwgYm9vCiAgICAgaWYgKCF0YXJnZXREb2N1bWVudCkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCi0gICAgRE9NV2luZG93KiBhY3RpdmUgPSBhY3RpdmVXaW5kb3coc3RhdGUpOwor
ICAgIERPTVdpbmRvdyogYWN0aXZlID0gYWN0aXZlRE9NV2luZG93KHN0YXRlKTsKICAgICBpZiAo
IWFjdGl2ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5oIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuaAppbmRleCA5ODA1NzlhNzFmMmEyYzk0
ZTVjYjY0YmNhMWY3ZjE4ODNiMmQxY2I0Li5lNmM2NTM4ZmUwN2MwNzA0MzdmNWZjMDI5NTU5M2M5
ODNmMjJhYjJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0Jp
bmRpbmdTZWN1cml0eS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmlu
ZGluZ1NlY3VyaXR5LmgKQEAgLTMxLDEzICszMSwxMSBAQAogI2lmbmRlZiBCaW5kaW5nU2VjdXJp
dHlfaAogI2RlZmluZSBCaW5kaW5nU2VjdXJpdHlfaAogCisjaW5jbHVkZSAiQmluZGluZ1N0YXRl
LmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotY2xhc3MgQmluZGluZ1N0YXRlOwotY2xhc3MgRE9NV2luZG93OwotY2xhc3MgRnJhbWU7
CiBjbGFzcyBIVE1MRnJhbWVFbGVtZW50QmFzZTsKIGNsYXNzIE5vZGU7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyNTQ2OGI1N2I5
NTE4ZWVkZTA0ZjdhMzE5OWY4NGJjYTBmYjAxOWQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3BwCkBAIC0wLDAgKzEsNTAgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAg
KiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICog
ZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBu
b3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0
aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9S
UworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVS
IE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAq
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiQmluZGluZ1N0YXRlLmgiCisKKyNpbmNsdWRlICJK
U0RPTVdpbmRvd0N1c3RvbS5oIgorCit1c2luZyBuYW1lc3BhY2UgSlNDOworCituYW1lc3BhY2Ug
V2ViQ29yZSB7CisKK0RPTVdpbmRvdyogYWN0aXZlRE9NV2luZG93KEV4ZWNTdGF0ZSogZXhlYykK
K3sKKyAgICByZXR1cm4gYXNKU0RPTVdpbmRvdyhleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkp
LT5pbXBsKCk7Cit9CisKK0RPTVdpbmRvdyogZmlyc3RET01XaW5kb3coRXhlY1N0YXRlKiBleGVj
KQoreworICAgIHJldHVybiBhc0pTRE9NV2luZG93KGV4ZWMtPmR5bmFtaWNHbG9iYWxPYmplY3Qo
KSktPmltcGwoKTsKK30KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvQmluZGluZ1N0YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9CaW5kaW5nU3Rh
dGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yMTViMzY2OGVlZGVkOWE0MGNjYThkNjZhMTAxMzEyODNhMTA4YWVh
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvQmluZGluZ1N0
YXRlLmgKQEAgLTAsMCArMSw1NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
IGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVy
IHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmli
dXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQg
ZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
CisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgQmluZGluZ1N0YXRlX2gKKyNkZWZpbmUgQmlu
ZGluZ1N0YXRlX2gKKworI2luY2x1ZGUgPHJ1bnRpbWUvSlNPYmplY3QuaD4KKworbmFtZXNwYWNl
IFdlYkNvcmUgeworCitjbGFzcyBET01XaW5kb3c7CitjbGFzcyBEb2N1bWVudDsKK2NsYXNzIEZy
YW1lOworCit0eXBlZGVmIEpTQzo6RXhlY1N0YXRlIEJpbmRpbmdTdGF0ZTsKKworRE9NV2luZG93
KiBhY3RpdmVET01XaW5kb3coQmluZGluZ1N0YXRlKik7CitET01XaW5kb3cqIGZpcnN0RE9NV2lu
ZG93KEJpbmRpbmdTdGF0ZSopOworCisvLyBGSVhNRTogSW1wbGVtZW50IHRoZXNlIGZ1bmN0aW9u
cy4KK0ZyYW1lKiBhY3RpdmVGcmFtZShCaW5kaW5nU3RhdGUqKSB7IH0KK0ZyYW1lKiBmaXJzdEZy
YW1lKEJpbmRpbmdTdGF0ZSopIHsgfQorCit2b2lkIGltbWVkaWF0ZWx5UmVwb3J0VW5zYWZlQWNj
ZXNzVG8oQmluZGluZ1N0YXRlKiwgRG9jdW1lbnQqKSB7IH0KKworfQorCisjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCmluZGV4
IGNmMWY0MmI4ZTBiM2JhNGYyNDQyODNjOTVhYTM1MmM4MGIwMTJlZjguLjM2MjJiNDcxMjUwYTgy
NTBmOGQ4ZjY0MjBiMThiMjdkMGI3NmE1ZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcApAQCAtMjYsNiArMjYsNyBAQAogLy8gVGhp
cyBhbGwtaW4tb25lIGNwcCBmaWxlIGN1dHMgZG93biBvbiB0ZW1wbGF0ZSBibG9hdCB0byBhbGxv
dyB1cyB0byBidWlsZCBvdXIgV2luZG93cyByZWxlYXNlIGJ1aWxkLgogCiAjaW5jbHVkZSAiQXJy
YXlWYWx1ZS5jcHAiCisjaW5jbHVkZSAiQmluZGluZ1N0YXRlLmNwcCIKICNpbmNsdWRlICJDYWxs
YmFja0Z1bmN0aW9uLmNwcCIKICNpbmNsdWRlICJET01PYmplY3RIYXNoVGFibGVNYXAuY3BwIgog
I2luY2x1ZGUgIkRPTVdyYXBwZXJXb3JsZC5jcHAiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01CaW5kaW5nLmNwcAppbmRleCAzMWYyNWRhZjBhYjI2M2IyMTZkYjQ5OGQxOTk0OTQ1
YmVhM2Q5NjEyLi5lMDdhOTMyZTMzNDM0MjIwZmEyMjIyOWMyOGVlM2RkNTI4MDZlMGZlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5jcHAKQEAgLTIyMSwxNiAr
MjIxLDYgQEAgdm9pZCBzZXRET01FeGNlcHRpb24oRXhlY1N0YXRlKiBleGVjLCBFeGNlcHRpb25D
b2RlIGVjKQogCiAjdW5kZWYgVFJZX1RPX0NSRUFURV9FWENFUFRJT04KIAotRE9NV2luZG93KiBh
Y3RpdmVET01XaW5kb3coRXhlY1N0YXRlKiBleGVjKQotewotICAgIHJldHVybiBhc0pTRE9NV2lu
ZG93KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSktPmltcGwoKTsKLX0KLQotRE9NV2luZG93
KiBmaXJzdERPTVdpbmRvdyhFeGVjU3RhdGUqIGV4ZWMpCi17Ci0gICAgcmV0dXJuIGFzSlNET01X
aW5kb3coZXhlYy0+ZHluYW1pY0dsb2JhbE9iamVjdCgpKS0+aW1wbCgpOwotfQotCiBib29sIHNo
b3VsZEFsbG93QWNjZXNzVG9Ob2RlKEV4ZWNTdGF0ZSogZXhlYywgTm9kZSogbm9kZSkKIHsKICAg
ICByZXR1cm4gbm9kZSAmJiBzaG91bGRBbGxvd0FjY2Vzc1RvRnJhbWUoZXhlYywgbm9kZS0+ZG9j
dW1lbnQoKS0+ZnJhbWUoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RPTUJpbmRpbmcuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGlu
Zy5oCmluZGV4IDY3YmFkZDIzNjZlMWE2NDYwMTdhZDFhMzdhMjhiOTJmODM4YTU0MzAuLjk5MWQ4
YzE4ODllNTc5MmVjMjExNDI2MjYxYzliMzBjZGU4ZWI5MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRE9NQmluZGluZy5oCkBAIC0yMiw2ICsyMiw3IEBACiAjaWZuZGVmIEpTRE9N
QmluZGluZ19oCiAjZGVmaW5lIEpTRE9NQmluZGluZ19oCiAKKyNpbmNsdWRlICJCaW5kaW5nU3Rh
dGUuaCIKICNpbmNsdWRlICJDU1NJbXBvcnRSdWxlLmgiCiAjaW5jbHVkZSAiQ1NTU3R5bGVEZWNs
YXJhdGlvbi5oIgogI2luY2x1ZGUgIkNTU1N0eWxlU2hlZXQuaCIKQEAgLTQwOSwxMiArNDEwLDYg
QEAgZW51bSBQYXJhbWV0ZXJEZWZhdWx0UG9saWN5IHsKICAgICBib29sIHNob3VsZEFsbG93QWNj
ZXNzVG9GcmFtZShKU0M6OkV4ZWNTdGF0ZSosIEZyYW1lKiwgU3RyaW5nJiBtZXNzYWdlKTsKICAg
ICAvLyBGSVhNRTogSW1wbGVtZW50IGFsbG93QWNjZXNzVG9ET01XaW5kb3coSlNDOjpFeGVjU3Rh
dGUqLCBET01XaW5kb3cqKTsKIAotICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhlc2UgZnVuY3Rpb25z
IGluIGZhdm9yIG9mIGFjdGl2ZUNvbnRleHQgYW5kCi0gICAgLy8gZmlyc3RDb250ZXh0LCB3aGlj
aCByZXR1cm4gU2NyaXB0RXhlY3V0aW9uQ29udGV4dCouIFdlIHByZWZlciB0byB1c2UKLSAgICAv
LyBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBhcyB0aGUgY29udGV4dCBvYmplY3QgaW4gdGhlIGJp
bmRpbmdzLgotICAgIERPTVdpbmRvdyogYWN0aXZlRE9NV2luZG93KEpTQzo6RXhlY1N0YXRlKik7
Ci0gICAgRE9NV2luZG93KiBmaXJzdERPTVdpbmRvdyhKU0M6OkV4ZWNTdGF0ZSopOwotCiAgICAg
dm9pZCBwcmludEVycm9yTWVzc2FnZUZvckZyYW1lKEZyYW1lKiwgY29uc3QgU3RyaW5nJiBtZXNz
YWdlKTsKICAgICBKU0M6OkpTVmFsdWUgb2JqZWN0VG9TdHJpbmdGdW5jdGlvbkdldHRlcihKU0M6
OkV4ZWNTdGF0ZSosIEpTQzo6SlNWYWx1ZSwgSlNDOjpQcm9wZXJ0eU5hbWUpOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuY3BwIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvdjgvQmluZGluZ1N0YXRlLmNwcAppbmRleCBmZGY1YzA3MDVhZGRk
MWJhMjRiNmVhMDQ5OTc0NDg5YjZiMzM3ZmVmLi44ODA5ZTRkNGY5ZTYxYmRiOGRkOTQ1YmEyNWU3
MWU2NTZkMTljMzc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9CaW5k
aW5nU3RhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0JpbmRpbmdTdGF0
ZS5jcHAKQEAgLTU1LDEyICs1NSwxMiBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6Q29udGV4dD4g
YWN0aXZlQ29udGV4dCgpCiAgICAgcmV0dXJuIHY4OjpDb250ZXh0OjpHZXRFbnRlcmVkKCk7CiB9
CiAKLURPTVdpbmRvdyogYWN0aXZlV2luZG93KEJpbmRpbmdTdGF0ZSopCitET01XaW5kb3cqIGFj
dGl2ZURPTVdpbmRvdyhCaW5kaW5nU3RhdGUqKQogewogICAgIHJldHVybiBWOFByb3h5OjpyZXRy
aWV2ZVdpbmRvdyhhY3RpdmVDb250ZXh0KCkpOwogfQogCi1ET01XaW5kb3cqIGZpcnN0V2luZG93
KEJpbmRpbmdTdGF0ZSopCitET01XaW5kb3cqIGZpcnN0RE9NV2luZG93KEJpbmRpbmdTdGF0ZSop
CiB7CiAgICAgcmV0dXJuIFY4UHJveHk6OnJldHJpZXZlV2luZG93KHY4OjpDb250ZXh0OjpHZXRF
bnRlcmVkKCkpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvQmlu
ZGluZ1N0YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuaApp
bmRleCA5NzExZWU4OTRhYzgyMmEyMGY4NWY0MTJmMzQwMzQ3Y2E2YmNlMGZkLi5kMzU0YmUyNjMz
YmY4MWRkMWQxMjc0MTRjNDRjMGI2NDFkYjk5N2E1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9CaW5kaW5nU3RhdGUuaApAQCAtNDQsOCArNDQsOCBAQCBwdWJsaWM6CiAgICAgc3RhdGlj
IEJpbmRpbmdTdGF0ZSogaW5zdGFuY2UoKTsKIH07CiAKLURPTVdpbmRvdyogYWN0aXZlV2luZG93
KEJpbmRpbmdTdGF0ZSopOwotRE9NV2luZG93KiBmaXJzdFdpbmRvdyhCaW5kaW5nU3RhdGUqKTsK
K0RPTVdpbmRvdyogYWN0aXZlRE9NV2luZG93KEJpbmRpbmdTdGF0ZSopOworRE9NV2luZG93KiBm
aXJzdERPTVdpbmRvdyhCaW5kaW5nU3RhdGUqKTsKIAogRnJhbWUqIGFjdGl2ZUZyYW1lKEJpbmRp
bmdTdGF0ZSopOwogRnJhbWUqIGZpcnN0RnJhbWUoQmluZGluZ1N0YXRlKik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20uY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9NV2luZG93Q3VzdG9tLmNw
cAppbmRleCA4ZmEyODA4ZTczOGIwMWExMzVlOWRjOWMwMjdmYmRiYzEyZDIyZDZiLi5jN2NiZjYx
MGQ0OWNiZGE3Nzk4ZTM4Nzg0OTUzNzRjY2Y5ZDdlMGJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5jcHAKQEAgLTE4
OSwxMSArMTg5LDExIEBAIHZvaWQgVjhET01XaW5kb3c6OmxvY2F0aW9uQWNjZXNzb3JTZXR0ZXIo
djg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2CiAgICAgRE9NV2luZG93KiBp
bXAgPSBWOERPTVdpbmRvdzo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CiAgICAgQmluZGluZ1N0
YXRlKiBzdGF0ZSA9IEJpbmRpbmdTdGF0ZTo6aW5zdGFuY2UoKTsKIAotICAgIERPTVdpbmRvdyog
YWN0aXZlID0gYWN0aXZlV2luZG93KHN0YXRlKTsKKyAgICBET01XaW5kb3cqIGFjdGl2ZSA9IGFj
dGl2ZURPTVdpbmRvdyhzdGF0ZSk7CiAgICAgaWYgKCFhY3RpdmUpCiAgICAgICByZXR1cm47CiAK
LSAgICBET01XaW5kb3cqIGZpcnN0ID0gZmlyc3RXaW5kb3coc3RhdGUpOworICAgIERPTVdpbmRv
dyogZmlyc3QgPSBmaXJzdERPTVdpbmRvdyhzdGF0ZSk7CiAgICAgaWYgKCFmaXJzdCkKICAgICAg
IHJldHVybjsKIApAQCAtMzAwLDcgKzMwMCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gaGFuZGxlUG9zdE1lc3NhZ2VDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzCiAg
ICAgLy8gTm9uZSBvZiB0aGVzZSBuZWVkIHRvIGJlIFJlZlB0ciBiZWNhdXNlIGFyZ3MgYW5kIGNv
bnRleHQgYXJlIGd1YXJhbnRlZWQKICAgICAvLyB0byBob2xkIG9uIHRvIHRoZW0uCiAgICAgRE9N
V2luZG93KiB3aW5kb3cgPSBWOERPTVdpbmRvdzo6dG9OYXRpdmUoYXJncy5Ib2xkZXIoKSk7Ci0g
ICAgRE9NV2luZG93KiBzb3VyY2UgPSBhY3RpdmVXaW5kb3coQmluZGluZ1N0YXRlOjppbnN0YW5j
ZSgpKTsKKyAgICBET01XaW5kb3cqIHNvdXJjZSA9IGFjdGl2ZURPTVdpbmRvdyhCaW5kaW5nU3Rh
dGU6Omluc3RhbmNlKCkpOwogCiAgICAgLy8gSWYgY2FsbGVkIGRpcmVjdGx5IGJ5IFdlYkNvcmUg
d2UgZG9uJ3QgaGF2ZSBhIGNhbGxpbmcgY29udGV4dC4KICAgICBpZiAoIXNvdXJjZSkKQEAgLTQ0
MSw3ICs0NDEsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhET01XaW5kb3c6OnNob3dNb2Rh
bERpYWxvZ0NhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmCiAgICAgRGlhbG9nSGFuZGxlciBo
YW5kbGVyKGFyZ3NbMV0pOwogICAgIFN0cmluZyBkaWFsb2dGZWF0dXJlc1N0cmluZyA9IHRvV2Vi
Q29yZVN0cmluZ1dpdGhOdWxsT3JVbmRlZmluZWRDaGVjayhhcmdzWzJdKTsKIAotICAgIGltcGwt
PnNob3dNb2RhbERpYWxvZyh1cmxTdHJpbmcsIGRpYWxvZ0ZlYXR1cmVzU3RyaW5nLCBhY3RpdmVX
aW5kb3coc3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSksIHNldFVwRGlhbG9nLCAmaGFuZGxlcik7
CisgICAgaW1wbC0+c2hvd01vZGFsRGlhbG9nKHVybFN0cmluZywgZGlhbG9nRmVhdHVyZXNTdHJp
bmcsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSwgc2V0VXBE
aWFsb2csICZoYW5kbGVyKTsKIAogICAgIHJldHVybiBoYW5kbGVyLnJldHVyblZhbHVlKCk7CiB9
CkBAIC00NTksNyArNDU5LDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RE9NV2luZG93Ojpv
cGVuQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKICAgICBBdG9taWNTdHJpbmcg
ZnJhbWVOYW1lID0gKGFyZ3NbMV0tPklzVW5kZWZpbmVkKCkgfHwgYXJnc1sxXS0+SXNOdWxsKCkp
ID8gIl9ibGFuayIgOiBBdG9taWNTdHJpbmcodG9XZWJDb3JlU3RyaW5nKGFyZ3NbMV0pKTsKICAg
ICBTdHJpbmcgd2luZG93RmVhdHVyZXNTdHJpbmcgPSB0b1dlYkNvcmVTdHJpbmdXaXRoTnVsbE9y
VW5kZWZpbmVkQ2hlY2soYXJnc1syXSk7CiAKLSAgICBSZWZQdHI8RE9NV2luZG93PiBvcGVuZWRX
aW5kb3cgPSBpbXBsLT5vcGVuKHVybFN0cmluZywgZnJhbWVOYW1lLCB3aW5kb3dGZWF0dXJlc1N0
cmluZywgYWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBSZWZQ
dHI8RE9NV2luZG93PiBvcGVuZWRXaW5kb3cgPSBpbXBsLT5vcGVuKHVybFN0cmluZywgZnJhbWVO
YW1lLCB3aW5kb3dGZWF0dXJlc1N0cmluZywgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RE
T01XaW5kb3coc3RhdGUpKTsKICAgICBpZiAoIW9wZW5lZFdpbmRvdykKICAgICAgICAgcmV0dXJu
IHY4OjpVbmRlZmluZWQoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
djgvY3VzdG9tL1Y4RG9jdW1lbnRMb2NhdGlvbkN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0aW9uQ3VzdG9tLmNwcAppbmRleCA0YzE5
NDk1OTlhNTYwMzgyMTgzNmJjOWFiNDI5Y2MxMzcyOGI3YWNmLi5iMmQ4MWU4NGMyZDc1ZDkyMjQ5
Njk4NGExNmExODQ0ZmJhMWY3YzM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0aW9uQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0aW9uQ3VzdG9tLmNwcApAQCAt
NTIsMTEgKzUyLDExIEBAIHZvaWQgVjhEb2N1bWVudDo6bG9jYXRpb25BY2Nlc3NvclNldHRlcih2
ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4CiAKICAgICBCaW5kaW5nU3Rh
dGUqIHN0YXRlID0gQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpOwogCi0gICAgRE9NV2luZG93KiBh
Y3RpdmUgPSBhY3RpdmVXaW5kb3coc3RhdGUpOworICAgIERPTVdpbmRvdyogYWN0aXZlID0gYWN0
aXZlRE9NV2luZG93KHN0YXRlKTsKICAgICBpZiAoIWFjdGl2ZSkKICAgICAgICAgcmV0dXJuOwog
Ci0gICAgRE9NV2luZG93KiBmaXJzdCA9IGZpcnN0V2luZG93KHN0YXRlKTsKKyAgICBET01XaW5k
b3cqIGZpcnN0ID0gZmlyc3RET01XaW5kb3coc3RhdGUpOwogICAgIGlmICghZmlyc3QpCiAgICAg
ICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4TG9jYXRpb25DdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4TG9jYXRpb25DdXN0b20uY3BwCmluZGV4IDcyZGNjYzc2N2M1ZTc5Nzg5YzBlOTZiZTM0
MmIwZDU0MDQwYTkzN2MuLjQyZjAyZjliNTlkNjYwNGJlNDY1ZjI2MTMwZTJmY2E5NDVmMzRhNTQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOExvY2F0aW9u
Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhMb2Nh
dGlvbkN1c3RvbS5jcHAKQEAgLTU1LDcgKzU1LDcgQEAgdm9pZCBWOExvY2F0aW9uOjpoYXNoQWNj
ZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmEK
ICAgICAvLyBGSVhNRTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBo
YXNoID0gdG9XZWJDb3JlU3RyaW5nKHZhbHVlKTsKIAotICAgIGltcGwtPnNldEhhc2goaGFzaCwg
YWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5zZXRI
YXNoKGhhc2gsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSk7
CiB9CiAKIHZvaWQgVjhMb2NhdGlvbjo6aG9zdEFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6
U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vz
c29ySW5mbyYgaW5mbykKQEAgLTY3LDcgKzY3LDcgQEAgdm9pZCBWOExvY2F0aW9uOjpob3N0QWNj
ZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmEK
ICAgICAvLyBGSVhNRTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBo
b3N0ID0gdG9XZWJDb3JlU3RyaW5nKHZhbHVlKTsKIAotICAgIGltcGwtPnNldEhvc3QoaG9zdCwg
YWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5zZXRI
b3N0KGhvc3QsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSk7
CiB9CiAKIHZvaWQgVjhMb2NhdGlvbjo6aG9zdG5hbWVBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8
djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpB
Y2Nlc3NvckluZm8mIGluZm8pCkBAIC03OSw3ICs3OSw3IEBAIHZvaWQgVjhMb2NhdGlvbjo6aG9z
dG5hbWVBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2Fs
PHY4CiAgICAgLy8gRklYTUU6IEhhbmRsZSBleGNlcHRpb25zIGNvcnJlY3RseS4KICAgICBTdHJp
bmcgaG9zdG5hbWUgPSB0b1dlYkNvcmVTdHJpbmcodmFsdWUpOwogCi0gICAgaW1wbC0+c2V0SG9z
dG5hbWUoaG9zdG5hbWUsIGFjdGl2ZVdpbmRvdyhzdGF0ZSksIGZpcnN0V2luZG93KHN0YXRlKSk7
CisgICAgaW1wbC0+c2V0SG9zdG5hbWUoaG9zdG5hbWUsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSks
IGZpcnN0RE9NV2luZG93KHN0YXRlKSk7CiB9CiAKIHZvaWQgVjhMb2NhdGlvbjo6aHJlZkFjY2Vz
c29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVl
PiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKQEAgLTkxLDcgKzkxLDcgQEAg
dm9pZCBWOExvY2F0aW9uOjpocmVmQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+
IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmEKICAgICAvLyBGSVhNRTogSGFuZGxlIGV4Y2VwdGlvbnMg
Y29ycmVjdGx5LgogICAgIFN0cmluZyBocmVmID0gdG9XZWJDb3JlU3RyaW5nKHZhbHVlKTsKIAot
ICAgIGltcGwtPnNldEhyZWYoaHJlZiwgYWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3co
c3RhdGUpKTsKKyAgICBpbXBsLT5zZXRIcmVmKGhyZWYsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSks
IGZpcnN0RE9NV2luZG93KHN0YXRlKSk7CiB9CiAKIHZvaWQgVjhMb2NhdGlvbjo6cGF0aG5hbWVB
Y2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpW
YWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCkBAIC0xMDMsNyArMTAz
LDcgQEAgdm9pZCBWOExvY2F0aW9uOjpwYXRobmFtZUFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2
ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djgKICAgICAvLyBGSVhNRTogSGFuZGxlIGV4Y2Vw
dGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBwYXRobmFtZSA9IHRvV2ViQ29yZVN0cmluZyh2
YWx1ZSk7CiAKLSAgICBpbXBsLT5zZXRQYXRobmFtZShwYXRobmFtZSwgYWN0aXZlV2luZG93KHN0
YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5zZXRQYXRobmFtZShwYXRobmFt
ZSwgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUpKTsKIH0KIAog
dm9pZCBWOExvY2F0aW9uOjpwb3J0QWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+
IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZv
JiBpbmZvKQpAQCAtMTE1LDcgKzExNSw3IEBAIHZvaWQgVjhMb2NhdGlvbjo6cG9ydEFjY2Vzc29y
U2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhCiAgICAg
Ly8gRklYTUU6IEhhbmRsZSBleGNlcHRpb25zIGNvcnJlY3RseS4KICAgICBTdHJpbmcgcG9ydCA9
IHRvV2ViQ29yZVN0cmluZyh2YWx1ZSk7CiAKLSAgICBpbXBsLT5zZXRQb3J0KHBvcnQsIGFjdGl2
ZVdpbmRvdyhzdGF0ZSksIGZpcnN0V2luZG93KHN0YXRlKSk7CisgICAgaW1wbC0+c2V0UG9ydChw
b3J0LCBhY3RpdmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkpOwogfQog
CiB2b2lkIFY4TG9jYXRpb246OnByb3RvY29sQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNz
b3JJbmZvJiBpbmZvKQpAQCAtMTI4LDcgKzEyOCw3IEBAIHZvaWQgVjhMb2NhdGlvbjo6cHJvdG9j
b2xBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4
CiAgICAgU3RyaW5nIHByb3RvY29sID0gdG9XZWJDb3JlU3RyaW5nKHZhbHVlKTsKIAogICAgIEV4
Y2VwdGlvbkNvZGUgZWMgPSAwOwotICAgIGltcGwtPnNldFByb3RvY29sKHByb3RvY29sLCBhY3Rp
dmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSksIGVjKTsKKyAgICBpbXBsLT5zZXRQ
cm90b2NvbChwcm90b2NvbCwgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3co
c3RhdGUpLCBlYyk7CiAgICAgaWYgKFVOTElLRUxZKGVjKSkKICAgICAgICAgVjhQcm94eTo6c2V0
RE9NRXhjZXB0aW9uKGVjLCBpbmZvLkdldElzb2xhdGUoKSk7CiB9CkBAIC0xNDIsNyArMTQyLDcg
QEAgdm9pZCBWOExvY2F0aW9uOjpzZWFyY2hBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0
cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjoKICAgICAvLyBGSVhNRTogSGFuZGxlIGV4Y2VwdGlv
bnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBzZWFyY2ggPSB0b1dlYkNvcmVTdHJpbmcodmFsdWUp
OwogCi0gICAgaW1wbC0+c2V0U2VhcmNoKHNlYXJjaCwgYWN0aXZlV2luZG93KHN0YXRlKSwgZmly
c3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5zZXRTZWFyY2goc2VhcmNoLCBhY3RpdmVET01X
aW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkpOwogfQogCiB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gVjhMb2NhdGlvbjo6cmVsb2FkQWNjZXNzb3JHZXR0ZXIodjg6OkxvY2FsPHY4OjpT
dHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCkBAIC0yMDYsNyArMjA2
LDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4TG9jYXRpb246OnJlbG9hZENhbGxiYWNrKGNv
bnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAgTG9jYXRpb24qIGltcGwgPSBWOExvY2F0aW9u
Ojp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKICAgICBCaW5kaW5nU3RhdGUqIHN0YXRlID0gQmlu
ZGluZ1N0YXRlOjppbnN0YW5jZSgpOwogCi0gICAgaW1wbC0+cmVsb2FkKGFjdGl2ZVdpbmRvdyhz
dGF0ZSkpOworICAgIGltcGwtPnJlbG9hZChhY3RpdmVET01XaW5kb3coc3RhdGUpKTsKICAgICBy
ZXR1cm4gdjg6OlVuZGVmaW5lZCgpOwogfQogCkBAIC0yMTksNyArMjE5LDcgQEAgdjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IFY4TG9jYXRpb246OnJlcGxhY2VDYWxsYmFjayhjb25zdCB2ODo6QXJndW1l
bnRzJiBhcmdzKQogICAgIC8vIEZJWE1FOiBIYW5kbGUgZXhjZXB0aW9ucyBjb3JyZWN0bHkuCiAg
ICAgU3RyaW5nIHVybFN0cmluZyA9IHRvV2ViQ29yZVN0cmluZyhhcmdzWzBdKTsKIAotICAgIGlt
cGwtPnJlcGxhY2UodXJsU3RyaW5nLCBhY3RpdmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRvdyhz
dGF0ZSkpOworICAgIGltcGwtPnJlcGxhY2UodXJsU3RyaW5nLCBhY3RpdmVET01XaW5kb3coc3Rh
dGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkpOwogICAgIHJldHVybiB2ODo6VW5kZWZpbmVkKCk7
CiB9CiAKQEAgLTIzMiw3ICsyMzIsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhMb2NhdGlv
bjo6YXNzaWduQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykKICAgICAvLyBGSVhN
RTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyB1cmxTdHJpbmcgPSB0
b1dlYkNvcmVTdHJpbmcoYXJnc1swXSk7CiAKLSAgICBpbXBsLT5hc3NpZ24odXJsU3RyaW5nLCBh
Y3RpdmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSkpOworICAgIGltcGwtPmFzc2ln
bih1cmxTdHJpbmcsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRl
KSk7CiAgICAgcmV0dXJuIHY4OjpVbmRlZmluZWQoKTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156803</attachid>
            <date>2012-08-06 17:00:34 -0700</date>
            <delta_ts>2012-08-06 17:22:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-93307-20120806170010.patch</filename>
            <type>text/plain</type>
            <size>32113</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI0ODA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDczYjAyODEyYzlhNDk0
NDhjMjQ1NDgwMGMwYjVmN2Q1MjQwMzFlMS4uMzRlNjAyNWE3ZWM2OGFjMzc3NGFhOTdjNWEzNmE4
MWM0OTMwMWJmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYyIEBACisyMDEyLTA4LTA2ICBBZGFt
IEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgSlNDIHNob3VsZCB1c2UgQmlu
ZGluZ1N0YXRlIHRvIGRldGVybWluZSB0aGUgYWN0aXZlRE9NV2luZG93CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzMwNworCisgICAgICAgIFJldmll
d2VkIGJ5IEVyaWMgU2VpZGVsLgorCisgICAgICAgIFRoaXMgcGF0Y2ggbW92ZXMgYWN0aXZlRE9N
V2luZG93IGZyb20gSlNET01CaW5kaW5ncy5jcHAgdG8KKyAgICAgICAgQmluZGluZ1N0YXRlLmNw
cC4gVGhpcyBpcyBhIGZpcnN0IHN0ZXAgdG93YXJkcyBzaGFyaW5nIHRoZSBjb3JlCisgICAgICAg
IHNlY3VyaXR5IGxvZ2ljIGluIHRoZSBiaW5kaW5ncyBiZXR3ZWVuIEphdmFTY3JpcHRDb3JlIGFu
ZCBWOC4gT25jZSB0aGUKKyAgICAgICAgbG9naWMgaXMgc2hhcmVkLCB3ZSB3aWxsIGJlIGFibGUg
dG8gcmVmYWN0b3IgdGhlIGxvZ2ljIHRvIGF2b2lkIHRoZQorICAgICAgICBuZWVkIGZvciBET01X
aW5kb3c6Om1fc2VjdXJpdHlPcmlnaW4uCisKKyAgICAgICAgVGhpcyBwYXRjaCBkb2Vzbid0IGFj
dHVhbGx5IHNoYXJlIGFueSBjb2RlICh5ZXQpLiBJdCBqdXN0IHNldHMgdGhlCisgICAgICAgIHN0
YWdlIGJ5IGNyZWF0aW5nIEJpbmRpbmdTdGF0ZSBhcyBhIHR5cGVkZWYgb2YgRXhlY1N0YXRlIGFu
ZCBhZGRpbmcgdGhlCisgICAgICAgIGFwcHJvcHJpYXRlIGZpbGVzIHRvIHRoZSBidWlsZCBzeXN0
ZW1zLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWxzbyByZW5hbWVzIGFjdGl2ZVdpbmRvdyBhbmQg
Zmlyc3RXaW5kb3cgaW4gdGhlIFY4IGJpbmRpbmdzCisgICAgICAgIHRvIGFjdGl2ZURPTVdpbmRv
dyBhbmQgZmlyc3RET01XaW5kb3cgdG8gbWF0Y2ggdGhlIG5hbWVzIGluIHRoZQorICAgICAgICBK
YXZhU2NyaXB0Q29yZSBiaW5kaW5ncy4KKworICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06
CisgICAgICAgICogVGFyZ2V0LnByaToKKyAgICAgICAgKiBVc2VKU0MuY21ha2U6CisgICAgICAg
ICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9q
OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAg
KiBiaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpjYW5BY2Nlc3NEb2N1bWVudCk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNCaW5kaW5nc0Fs
bEluT25lLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwOgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmg6Cisg
ICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6YWN0aXZlRE9NV2luZG93KToKKyAgICAgICAgKFdlYkNvcmU6
OmZpcnN0RE9NV2luZG93KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuaDoK
KyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdp
bmRvd0N1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6bG9jYXRpb25B
Y2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpoYW5kbGVQb3N0TWVzc2FnZUNhbGxi
YWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlY4RE9NV2luZG93OjpzaG93TW9kYWxEaWFsb2dDYWxs
YmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6b3BlbkNhbGxiYWNrKToKKyAg
ICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0aW9uQ3VzdG9tLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlY4RG9jdW1lbnQ6OmxvY2F0aW9uQWNjZXNzb3JTZXR0ZXIpOgor
ICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOExvY2F0aW9uQ3VzdG9tLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlY4TG9jYXRpb246Omhhc2hBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChX
ZWJDb3JlOjpWOExvY2F0aW9uOjpob3N0QWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6VjhMb2NhdGlvbjo6aG9zdG5hbWVBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3Jl
OjpWOExvY2F0aW9uOjpocmVmQWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhM
b2NhdGlvbjo6cGF0aG5hbWVBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExv
Y2F0aW9uOjpwb3J0QWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2NhdGlv
bjo6cHJvdG9jb2xBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9u
OjpzZWFyY2hBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjpy
ZWxvYWRDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjpyZXBsYWNlQ2Fs
bGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2NhdGlvbjo6YXNzaWduQ2FsbGJhY2spOgor
CiAyMDEyLTA4LTA2ICBBbm5hIENhdmVuZGVyICA8YW5uYWNjQGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBNZWRpYVNvdXJjZSBzaG91bGQgdXNlIGl0J3Mgb3duIGxpc3Qgb2Ygc291cmNlIFVSTHMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0gYi9Tb3VyY2Uv
V2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmluZGV4IDVlYzBiYzJmMGY4ZDU1N2Y3MmExM2Vi
MTgzMDlmZDQyNGZjYjcwMzMuLmFmZWZjOTZhZWViM2IyNGRlNDIwNGVmNDc3MDAxY2E3M2UyM2U5
YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KKysrIGIv
U291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpAQCAtMTM3MCwxMiArMTM3MCwxNSBA
QCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhP
YmplY3RDYWNoZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0FjdGl2ZURP
TUNhbGxiYWNrLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9BY3RpdmVE
T01DYWxsYmFjay5oIFwKKwlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdT
ZWN1cml0eS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1Nl
Y3VyaXR5LmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvR2VuZXJpY0JpbmRp
bmcuaCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZl
YXR1cmVzLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5h
YmxlZEZlYXR1cmVzLmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0FycmF5VmFsdWUu
Y3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9BcnJheVZhbHVlLmggXAorCVNvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAgXAorCVNvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9DYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9DYWxsYmFja0Z1bmN0aW9uLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
Q2FsbGJhY2tGdW5jdGlvbi5oIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5w
cmkgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCmluZGV4IGJiMGViZTQ1NDBjN2Y4NjI0ZWIw
MDAxNGQ0YzQ0ODcyYTMyNTUwNWQuLjk5MGM0MWI4MTg1NjQ3ZjU2NjM4MjJmZmY2YzI3NDU4ODlj
NzU2MDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKKysrIGIvU291cmNl
L1dlYkNvcmUvVGFyZ2V0LnByaQpAQCAtNjksMTEgKzY5LDEzIEBAIFNPVVJDRVMgKz0gXAogICAg
IGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRhYmxlUm93LmNwcCBcCiAgICAgYWNjZXNzaWJp
bGl0eS9BWE9iamVjdENhY2hlLmNwcCBcCiAgICAgYmluZGluZ3MvZ2VuZXJpYy9BY3RpdmVET01D
YWxsYmFjay5jcHAgXAorICAgIGJpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcCBc
CiAgICAgYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAogCiBTT1VS
Q0VTICs9IFwKICAgICAgYmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwIFwKICAgICAg
YmluZGluZ3MvanMvQXJyYXlWYWx1ZS5jcHAgXAorICAgICBiaW5kaW5ncy9qcy9CaW5kaW5nU3Rh
dGUuY3BwIFwKICAgICAgYmluZGluZ3MvanMvQ2FsbGJhY2tGdW5jdGlvbi5jcHAgXAogICAgICBi
aW5kaW5ncy9qcy9ET01PYmplY3RIYXNoVGFibGVNYXAuY3BwIFwKICAgICAgYmluZGluZ3MvanMv
RE9NV3JhcHBlcldvcmxkLmNwcCBcCkBAIC0xMjc5LDkgKzEyODEsMTEgQEAgSEVBREVSUyArPSBc
CiAgICAgYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmggXAogICAgIGJpbmRpbmdzL1Njcmlw
dENvbnRyb2xsZXJCYXNlLmggXAogICAgIGJpbmRpbmdzL2dlbmVyaWMvQWN0aXZlRE9NQ2FsbGJh
Y2suaCBcCisgICAgYmluZGluZ3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuaCBcCiAgICAgYmlu
ZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgKIAogSEVBREVSUyArPSBcCisg
ICAgYmluZGluZ3MvanMvQmluZGluZ1N0YXRlLmggXAogICAgIGJpbmRpbmdzL2pzL0NhY2hlZFNj
cmlwdFNvdXJjZVByb3ZpZGVyLmggXAogICAgIGJpbmRpbmdzL2pzL0NhbGxiYWNrRnVuY3Rpb24u
aCBcCiAgICAgYmluZGluZ3MvanMvR0NDb250cm9sbGVyLmggXApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvVXNlSlNDLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvVXNlSlNDLmNtYWtlCmluZGV4
IDk1ODk1ZWQyYWUxYTNlNGIyYjlmMTgyZjJkY2MzZjhkY2MxNDA3ZWUuLjkyYjBjMjUzZDVlYjkz
ZWRkODhiNWE1MGEyNzdmYWI2YjYxZTU2YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1Vz
ZUpTQy5jbWFrZQorKysgYi9Tb3VyY2UvV2ViQ29yZS9Vc2VKU0MuY21ha2UKQEAgLTIzLDYgKzIz
LDcgQEAgRU5ESUYgKCkKIAogTElTVChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgYmluZGlu
Z3MvanMvQXJyYXlWYWx1ZS5jcHAKKyAgICBiaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3BwCiAg
ICAgYmluZGluZ3MvanMvQ2FsbGJhY2tGdW5jdGlvbi5jcHAKICAgICBiaW5kaW5ncy9qcy9ET01P
YmplY3RIYXNoVGFibGVNYXAuY3BwCiAgICAgYmluZGluZ3MvanMvRE9NV3JhcHBlcldvcmxkLmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS5neXBpCmluZGV4IGI0NmU1NzFiNjIzZDdmNjQ5MmFlMDIzMGFjNjY2NWNiMjNk
ZGE3NmYuLmY5NTA5NjllZjA1ZDUxYWIyMGIzMmE0YzUwN2MwYTM5OWEyNDUzOGQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLmd5cGkKQEAgLTE5MjQsNiArMTkyNCw4IEBACiAgICAgICAgICAgICAnYmluZGluZ3MvZ29i
amVjdC9XZWJLaXRIVE1MRWxlbWVudFdyYXBwZXJGYWN0b3J5LmgnLAogICAgICAgICAgICAgJ2Jp
bmRpbmdzL2pzL0FycmF5VmFsdWUuY3BwJywKICAgICAgICAgICAgICdiaW5kaW5ncy9qcy9BcnJh
eVZhbHVlLmgnLAorICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAnLAor
ICAgICAgICAgICAgJ2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5oJywKICAgICAgICAgICAgICdi
aW5kaW5ncy9qcy9DYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oJywKICAgICAgICAgICAgICdi
aW5kaW5ncy9qcy9DYWxsYmFja0Z1bmN0aW9uLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3Mv
anMvQ2FsbGJhY2tGdW5jdGlvbi5oJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ov
V2ViQ29yZS52Y3Byb2oKaW5kZXggN2YzYWYxNGRhZTAwNmVmMjBhZjY3MWVjNjE1MmEwYTJmN2Nh
NTViOS4uZmU2NWE1OGM0YTllNTc3MWNkY2M2MDMxNDRiNTAxMzAwZTg1OWY4ZCAxMDA3NTUKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTYzNzg2LDcgKzYz
Nzg2LDExIEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKLQkJCQkJUmVsYXRpdmVQ
YXRoPSIuLlxiaW5kaW5nc1xnZW5lcmljXEJpbmRpbmdET01XaW5kb3cuaCIKKwkJCQkJUmVsYXRp
dmVQYXRoPSIuLlxiaW5kaW5nc1xnZW5lcmljXEJpbmRpbmdTZWN1cml0eS5jcHAiCisJCQkJCT4K
KwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xn
ZW5lcmljXEJpbmRpbmdTZWN1cml0eS5oIgogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxGaWxl
CkBAIC02MzkxOCw2ICs2MzkyMiw2MiBAQAogCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgogCQkJ
CTwvRmlsZT4KIAkJCQk8RmlsZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEJp
bmRpbmdTdGF0ZS5jcHAiCisJCQkJCT4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlO
YW1lPSJEZWJ1Z3xXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJ
PgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4K
KwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJ
CQlOYW1lPSJSZWxlYXNlfFdpbjMyIgorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCisJ
CQkJCQk+CisJCQkJCQk8VG9vbAorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCisJCQkJ
CQkvPgorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24K
KwkJCQkJCU5hbWU9IkRlYnVnX0NhaXJvX0NGTGl0ZXxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJv
bUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJPEZp
bGVDb25maWd1cmF0aW9uCisJCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvX0NGTGl0ZXxXaW4zMiIK
KwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wKKwkJ
CQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29uZmln
dXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlOYW1lPSJEZWJ1Z19BbGx8
V2luMzIiCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKKwkJCQkJCT4KKwkJCQkJCTxU
b29sCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKKwkJCQkJCS8+CisJCQkJCTwvRmls
ZUNvbmZpZ3VyYXRpb24+CisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbgorCQkJCQkJTmFtZT0iUHJv
ZHVjdGlvbnxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgor
CQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJ
CQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVs
YXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xCaW5kaW5nU3RhdGUuaCIKKwkJCQkJPgorCQkJCTwv
RmlsZT4KKwkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXENhbGxi
YWNrRnVuY3Rpb24uaCIKIAkJCQkJPgogCQkJCTwvRmlsZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAwYmQ0MGViNWZiMmFjZDJj
MGYzYTFmZDE5NmYyM2I2YWZjNDZhOTM2Li4yYzRhY2JmNGZmNzE3NmQ3NzE5MjRkOWZkNWU2NGI3
MmI3NGM5YWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCkBAIC0zNDYxLDYgKzM0NjEsMTAgQEAKIAkJOTcyOEMzMTQxMjY4RTQzOTAw
NDFFODlCIC8qIE1hcmt1cEFjY3VtdWxhdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA5NzI4QzMxMjEyNjhFNDM5MDA0MUU4OUIgLyogTWFya3VwQWNj
dW11bGF0b3IuaCAqLzsgfTsKIAkJOTczODg5QTAxMTZFQTlEQzAwQURGMzEzIC8qIERvY3VtZW50
V3JpdGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDk3Mzg4OTlFMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5jcHAgKi87IH07CiAJ
CTk3Mzg4OUExMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczODg5OUYxMTZFQTlEQzAwQURG
MzEzIC8qIERvY3VtZW50V3JpdGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKKwkJOTczQUEzRjQxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0
ZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzNB
QTNGMjE1RDA4OEYwMDBFMzhBODUgLyogQmluZGluZ1N0YXRlLmNwcCAqLzsgfTsKKwkJOTczQUEz
RjUxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczQUEzRjMxNUQwODhGMDAwRTM4QTg1IC8qIEJp
bmRpbmdTdGF0ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CisJCTk3M0FBM0Y5MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczQUEzRjcxNUQw
ODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5jcHAgKi87IH07CisJCTk3M0FBM0ZBMTVE
MDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3M0FBM0Y4MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5k
aW5nU2VjdXJpdHkuaCAqLzsgfTsKIAkJOTczREM2M0YxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2Vw
dGlvbkNvZGVEZXNjcmlwdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA5NzNEQzYzRDE0NUE5NDA5MDAyODQyQzIgLyogRXhjZXB0aW9uQ29kZURl
c2NyaXB0aW9uLmNwcCAqLzsgfTsKIAkJOTczREM2NDAxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2Vw
dGlvbkNvZGVEZXNjcmlwdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gOTczREM2M0UxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2VwdGlvbkNvZGVEZXNj
cmlwdGlvbi5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCTk3M0UzMjU2MTA4ODNCN0MwMDVCQzQ5MyAvKiBSZXNvdXJjZUxvYWROb3RpZmllci5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzNFMzI1NDEw
ODgzQjdDMDA1QkM0OTMgLyogUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwICovOyB9OwpAQCAtMTA2
MDQsNiArMTA2MDgsMTAgQEAKIAkJOTcyOEMzMTIxMjY4RTQzOTAwNDFFODlCIC8qIE1hcmt1cEFj
Y3VtdWxhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hcmt1cEFjY3Vt
dWxhdG9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3Mzg4OTlFMTE2RUE5REMw
MEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBEb2N1bWVudFdyaXRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTk3Mzg4OTlGMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEb2N1bWVudFdyaXRlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5NzNBQTNGMjE1RDA4OEYwMDBFMzhBODUgLyogQmluZGluZ1N0YXRl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJpbmRpbmdTdGF0ZS5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3M0FBM0YzMTVEMDg4RjAwMEUzOEE4
NSAvKiBCaW5kaW5nU3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmlu
ZGluZ1N0YXRlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3M0FBM0Y3MTVEMDg5
MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gQmluZGluZ1NlY3VyaXR5LmNwcDsgcGF0aCA9IGdlbmVyaWMvQmluZGlu
Z1NlY3VyaXR5LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTczQUEzRjgxNUQw
ODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBCaW5kaW5nU2VjdXJpdHkuaDsgcGF0aCA9IGdlbmVyaWMvQmluZGluZ1NlY3Vy
aXR5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3M0RDNjNEMTQ1QTk0MDkwMDI4
NDJDMiAvKiBFeGNlcHRpb25Db2RlRGVzY3JpcHRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRXhjZXB0aW9uQ29kZURlc2NyaXB0aW9uLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTczREM2M0UxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2VwdGlv
bkNvZGVEZXNjcmlwdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBFeGNl
cHRpb25Db2RlRGVzY3JpcHRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTcz
RTMyNTQxMDg4M0I3QzAwNUJDNDkzIC8qIFJlc291cmNlTG9hZE5vdGlmaWVyLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlc291cmNlTG9hZE5vdGlmaWVyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIwMDAzLDYgKzIwMDExLDggQEAKIAkJCWNo
aWxkcmVuID0gKAogCQkJCUI1RDMxREY4MTFDRjYxMEIwMDlGMjJCNCAvKiBBY3RpdmVET01DYWxs
YmFjay5jcHAgKi8sCiAJCQkJQjVEMzFERjkxMUNGNjEwQjAwOUYyMkI0IC8qIEFjdGl2ZURPTUNh
bGxiYWNrLmggKi8sCisJCQkJOTczQUEzRjcxNUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1
cml0eS5jcHAgKi8sCisJCQkJOTczQUEzRjgxNUQwODkxQjAwRTM4QTg1IC8qIEJpbmRpbmdTZWN1
cml0eS5oICovLAogCQkJCUE2MjJBOEY5MTIyQzQ0QTYwMEE3ODVCMyAvKiBHZW5lcmljQmluZGlu
Zy5oICovLAogCQkJKTsKIAkJCW5hbWUgPSBnZW5lcmljOwpAQCAtMjAwNDksNiArMjAwNTksOCBA
QAogCQkJCTE0REZCMzNGMEE3REY3NjMwMDE4Rjc2OSAvKiBEZXJpdmVkIFNvdXJjZXMgKi8sCiAJ
CQkJNDlCMzc2MEExNUM2QzY4NDAwNTkxMzFEIC8qIEFycmF5VmFsdWUuY3BwICovLAogCQkJCTQ5
QjM3NjBCMTVDNkM2ODQwMDU5MTMxRCAvKiBBcnJheVZhbHVlLmggKi8sCisJCQkJOTczQUEzRjIx
NUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5jcHAgKi8sCisJCQkJOTczQUEzRjMxNUQw
ODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5oICovLAogCQkJCUJDRDUzMzYzMEVENjg0ODkw
MDg4NzQ2OCAvKiBDYWNoZWRTY3JpcHRTb3VyY2VQcm92aWRlci5oICovLAogCQkJCTkzRjhCMzA2
MEEzMDBGRUEwMEY2MUFCOCAvKiBDb2RlR2VuZXJhdG9ySlMucG0gKi8sCiAJCQkJMzEyRDY3QjAx
NTM1NjkxRjAwNTYzRDBEIC8qIERpY3Rpb25hcnkuY3BwICovLApAQCAtMjUzNzUsNiArMjUzODcs
OCBAQAogCQkJCUUxQkU1MTJFMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuaCBp
biBIZWFkZXJzICovLAogCQkJCTk3N0UyRTBGMTJGMEZDOUMwMEMxMzM3OSAvKiBYU1NBdWRpdG9y
LmggaW4gSGVhZGVycyAqLywKIAkJCQlGRDUzNzM1MzEzN0I2NTE4MDAwMDhEQ0UgLyogWmVyb1Bv
bGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3M0FBM0Y1MTVEMDg4RjAwMEUzOEE4NSAvKiBCaW5k
aW5nU3RhdGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTk3M0FBM0ZBMTVEMDg5MUIwMEUzOEE4NSAv
KiBCaW5kaW5nU2VjdXJpdHkuaCBpbiBIZWFkZXJzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JE
ZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtMjg0NDksNiArMjg0NjMsOCBA
QAogCQkJCUUxQkU1MTJEMENGNkM1MTIwMDJFQTk1OSAvKiBYU0xUVW5pY29kZVNvcnQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJOTc3RTJFMEUxMkYwRkM5QzAwQzEzMzc5IC8qIFhTU0F1ZGl0b3Iu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkQ1MzczNTIxMzdCNjUxODAwMDA4RENFIC8qIFplcm9Q
b2xlLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTk3M0FBM0Y0MTVEMDg4RjAwMEUzOEE4NSAvKiBC
aW5kaW5nU3RhdGUuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJOTczQUEzRjkxNUQwODkxQjAwRTM4
QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5jcHAgaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5P
bmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcAppbmRleCA0ZDhl
ZGI5NTQ3MGUwNmMzNzg1ODIxZDU1ODI4YWEyMjQ0OWIyZDM5Li5mNzBkM2E3M2I3MmJhZDhkNjU2
MjI2OTIyOTI1NTQ1ZjVlZmU1YmJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuY3BwCkBAIC00Nyw3ICs0Nyw3IEBAIHN0YXRpYyBi
b29sIGNhbkFjY2Vzc0RvY3VtZW50KEJpbmRpbmdTdGF0ZSogc3RhdGUsIERvY3VtZW50KiB0YXJn
ZXREb2N1bWVudCwgYm9vCiAgICAgaWYgKCF0YXJnZXREb2N1bWVudCkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCi0gICAgRE9NV2luZG93KiBhY3RpdmUgPSBhY3RpdmVXaW5kb3coc3RhdGUpOwor
ICAgIERPTVdpbmRvdyogYWN0aXZlID0gYWN0aXZlRE9NV2luZG93KHN0YXRlKTsKICAgICBpZiAo
IWFjdGl2ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5oIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuaAppbmRleCA5ODA1NzlhNzFmMmEyYzk0
ZTVjYjY0YmNhMWY3ZjE4ODNiMmQxY2I0Li5lNmM2NTM4ZmUwN2MwNzA0MzdmNWZjMDI5NTU5M2M5
ODNmMjJhYjJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0Jp
bmRpbmdTZWN1cml0eS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmlu
ZGluZ1NlY3VyaXR5LmgKQEAgLTMxLDEzICszMSwxMSBAQAogI2lmbmRlZiBCaW5kaW5nU2VjdXJp
dHlfaAogI2RlZmluZSBCaW5kaW5nU2VjdXJpdHlfaAogCisjaW5jbHVkZSAiQmluZGluZ1N0YXRl
LmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAotY2xhc3MgQmluZGluZ1N0YXRlOwotY2xhc3MgRE9NV2luZG93OwotY2xhc3MgRnJhbWU7
CiBjbGFzcyBIVE1MRnJhbWVFbGVtZW50QmFzZTsKIGNsYXNzIE5vZGU7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgyNTQ2OGI1N2I5
NTE4ZWVkZTA0ZjdhMzE5OWY4NGJjYTBmYjAxOWQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3BwCkBAIC0wLDAgKzEsNTAgQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
KyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAg
KiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICog
ZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBu
b3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0
aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9S
UworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVS
IE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAq
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5j
bHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiQmluZGluZ1N0YXRlLmgiCisKKyNpbmNsdWRlICJK
U0RPTVdpbmRvd0N1c3RvbS5oIgorCit1c2luZyBuYW1lc3BhY2UgSlNDOworCituYW1lc3BhY2Ug
V2ViQ29yZSB7CisKK0RPTVdpbmRvdyogYWN0aXZlRE9NV2luZG93KEV4ZWNTdGF0ZSogZXhlYykK
K3sKKyAgICByZXR1cm4gYXNKU0RPTVdpbmRvdyhleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkp
LT5pbXBsKCk7Cit9CisKK0RPTVdpbmRvdyogZmlyc3RET01XaW5kb3coRXhlY1N0YXRlKiBleGVj
KQoreworICAgIHJldHVybiBhc0pTRE9NV2luZG93KGV4ZWMtPmR5bmFtaWNHbG9iYWxPYmplY3Qo
KSktPmltcGwoKTsKK30KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvQmluZGluZ1N0YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9CaW5kaW5nU3Rh
dGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yODFiOWIzMzNjZGFiNDU5OTAwM2FmZGQ1MjBiYmE1Y2IxZGVlNzdh
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvQmluZGluZ1N0
YXRlLmgKQEAgLTAsMCArMSw1NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
IGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVy
IHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmli
dXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQg
ZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
CisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgQmluZGluZ1N0YXRlX2gKKyNkZWZpbmUgQmlu
ZGluZ1N0YXRlX2gKKworI2luY2x1ZGUgPHJ1bnRpbWUvSlNPYmplY3QuaD4KKworbmFtZXNwYWNl
IFdlYkNvcmUgeworCitjbGFzcyBET01XaW5kb3c7CitjbGFzcyBEb2N1bWVudDsKK2NsYXNzIEZy
YW1lOworCit0eXBlZGVmIEpTQzo6RXhlY1N0YXRlIEJpbmRpbmdTdGF0ZTsKKworRE9NV2luZG93
KiBhY3RpdmVET01XaW5kb3coQmluZGluZ1N0YXRlKik7CitET01XaW5kb3cqIGZpcnN0RE9NV2lu
ZG93KEJpbmRpbmdTdGF0ZSopOworCisvLyBGSVhNRTogSW1wbGVtZW50IHRoZXNlIGZ1bmN0aW9u
cy4KK2lubGluZSBGcmFtZSogYWN0aXZlRnJhbWUoQmluZGluZ1N0YXRlKikgeyByZXR1cm4gMDsg
fQoraW5saW5lIEZyYW1lKiBmaXJzdEZyYW1lKEJpbmRpbmdTdGF0ZSopIHsgcmV0dXJuIDA7IH0K
KworaW5saW5lIHZvaWQgaW1tZWRpYXRlbHlSZXBvcnRVbnNhZmVBY2Nlc3NUbyhCaW5kaW5nU3Rh
dGUqLCBEb2N1bWVudCopIHsgfQorCit9CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKaW5kZXggY2YxZjQyYjhlMGIzYmE0
ZjI0NDI4M2M5NWFhMzUyYzgwYjAxMmVmOC4uMzYyMmI0NzEyNTBhODI1MGY4ZDhmNjQyMGIxOGIy
N2QwYjc2YTVlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5k
aW5nc0FsbEluT25lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRp
bmdzQWxsSW5PbmUuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAvLyBUaGlzIGFsbC1pbi1vbmUgY3Bw
IGZpbGUgY3V0cyBkb3duIG9uIHRlbXBsYXRlIGJsb2F0IHRvIGFsbG93IHVzIHRvIGJ1aWxkIG91
ciBXaW5kb3dzIHJlbGVhc2UgYnVpbGQuCiAKICNpbmNsdWRlICJBcnJheVZhbHVlLmNwcCIKKyNp
bmNsdWRlICJCaW5kaW5nU3RhdGUuY3BwIgogI2luY2x1ZGUgIkNhbGxiYWNrRnVuY3Rpb24uY3Bw
IgogI2luY2x1ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1hcC5jcHAiCiAjaW5jbHVkZSAiRE9NV3Jh
cHBlcldvcmxkLmNwcCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RE9NQmluZGluZy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcu
Y3BwCmluZGV4IDMxZjI1ZGFmMGFiMjYzYjIxNmRiNDk4ZDE5OTQ5NDViZWEzZDk2MTIuLmUwN2E5
MzJlMzM0MzQyMjBmYTIyMjI5YzI4ZWUzZGQ1MjgwNmUwZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcApAQCAtMjIxLDE2ICsyMjEsNiBAQCB2b2lkIHNl
dERPTUV4Y2VwdGlvbihFeGVjU3RhdGUqIGV4ZWMsIEV4Y2VwdGlvbkNvZGUgZWMpCiAKICN1bmRl
ZiBUUllfVE9fQ1JFQVRFX0VYQ0VQVElPTgogCi1ET01XaW5kb3cqIGFjdGl2ZURPTVdpbmRvdyhF
eGVjU3RhdGUqIGV4ZWMpCi17Ci0gICAgcmV0dXJuIGFzSlNET01XaW5kb3coZXhlYy0+bGV4aWNh
bEdsb2JhbE9iamVjdCgpKS0+aW1wbCgpOwotfQotCi1ET01XaW5kb3cqIGZpcnN0RE9NV2luZG93
KEV4ZWNTdGF0ZSogZXhlYykKLXsKLSAgICByZXR1cm4gYXNKU0RPTVdpbmRvdyhleGVjLT5keW5h
bWljR2xvYmFsT2JqZWN0KCkpLT5pbXBsKCk7Ci19Ci0KIGJvb2wgc2hvdWxkQWxsb3dBY2Nlc3NU
b05vZGUoRXhlY1N0YXRlKiBleGVjLCBOb2RlKiBub2RlKQogewogICAgIHJldHVybiBub2RlICYm
IHNob3VsZEFsbG93QWNjZXNzVG9GcmFtZShleGVjLCBub2RlLT5kb2N1bWVudCgpLT5mcmFtZSgp
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5o
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmgKaW5kZXggNjdiYWRk
MjM2NmUxYTY0NjAxN2FkMWEzN2EyOGI5MmY4MzhhNTQzMC4uOTkxZDhjMTg4OWU1NzkyZWMyMTE0
MjYyNjFjOWIzMGNkZThlYjkwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01CaW5kaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01C
aW5kaW5nLmgKQEAgLTIyLDYgKzIyLDcgQEAKICNpZm5kZWYgSlNET01CaW5kaW5nX2gKICNkZWZp
bmUgSlNET01CaW5kaW5nX2gKIAorI2luY2x1ZGUgIkJpbmRpbmdTdGF0ZS5oIgogI2luY2x1ZGUg
IkNTU0ltcG9ydFJ1bGUuaCIKICNpbmNsdWRlICJDU1NTdHlsZURlY2xhcmF0aW9uLmgiCiAjaW5j
bHVkZSAiQ1NTU3R5bGVTaGVldC5oIgpAQCAtNDA5LDEyICs0MTAsNiBAQCBlbnVtIFBhcmFtZXRl
ckRlZmF1bHRQb2xpY3kgewogICAgIGJvb2wgc2hvdWxkQWxsb3dBY2Nlc3NUb0ZyYW1lKEpTQzo6
RXhlY1N0YXRlKiwgRnJhbWUqLCBTdHJpbmcmIG1lc3NhZ2UpOwogICAgIC8vIEZJWE1FOiBJbXBs
ZW1lbnQgYWxsb3dBY2Nlc3NUb0RPTVdpbmRvdyhKU0M6OkV4ZWNTdGF0ZSosIERPTVdpbmRvdyop
OwogCi0gICAgLy8gRklYTUU6IFJlbW92ZSB0aGVzZSBmdW5jdGlvbnMgaW4gZmF2b3Igb2YgYWN0
aXZlQ29udGV4dCBhbmQKLSAgICAvLyBmaXJzdENvbnRleHQsIHdoaWNoIHJldHVybiBTY3JpcHRF
eGVjdXRpb25Db250ZXh0Ki4gV2UgcHJlZmVyIHRvIHVzZQotICAgIC8vIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqIGFzIHRoZSBjb250ZXh0IG9iamVjdCBpbiB0aGUgYmluZGluZ3MuCi0gICAgRE9N
V2luZG93KiBhY3RpdmVET01XaW5kb3coSlNDOjpFeGVjU3RhdGUqKTsKLSAgICBET01XaW5kb3cq
IGZpcnN0RE9NV2luZG93KEpTQzo6RXhlY1N0YXRlKik7Ci0KICAgICB2b2lkIHByaW50RXJyb3JN
ZXNzYWdlRm9yRnJhbWUoRnJhbWUqLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UpOwogICAgIEpTQzo6
SlNWYWx1ZSBvYmplY3RUb1N0cmluZ0Z1bmN0aW9uR2V0dGVyKEpTQzo6RXhlY1N0YXRlKiwgSlND
OjpKU1ZhbHVlLCBKU0M6OlByb3BlcnR5TmFtZSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L0JpbmRpbmdTdGF0ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9CaW5kaW5nU3RhdGUuY3BwCmluZGV4IGZkZjVjMDcwNWFkZGQxYmEyNGI2ZWEwNDk5NzQ0
ODliNmIzMzdmZWYuLjg4MDllNGQ0ZjllNjFiZGI4ZGQ5NDViYTI1ZTcxZTY1NmQxOWMzNzcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0JpbmRpbmdTdGF0ZS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvQmluZGluZ1N0YXRlLmNwcApAQCAtNTUsMTIg
KzU1LDEyIEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpDb250ZXh0PiBhY3RpdmVDb250ZXh0KCkK
ICAgICByZXR1cm4gdjg6OkNvbnRleHQ6OkdldEVudGVyZWQoKTsKIH0KIAotRE9NV2luZG93KiBh
Y3RpdmVXaW5kb3coQmluZGluZ1N0YXRlKikKK0RPTVdpbmRvdyogYWN0aXZlRE9NV2luZG93KEJp
bmRpbmdTdGF0ZSopCiB7CiAgICAgcmV0dXJuIFY4UHJveHk6OnJldHJpZXZlV2luZG93KGFjdGl2
ZUNvbnRleHQoKSk7CiB9CiAKLURPTVdpbmRvdyogZmlyc3RXaW5kb3coQmluZGluZ1N0YXRlKikK
K0RPTVdpbmRvdyogZmlyc3RET01XaW5kb3coQmluZGluZ1N0YXRlKikKIHsKICAgICByZXR1cm4g
VjhQcm94eTo6cmV0cmlldmVXaW5kb3codjg6OkNvbnRleHQ6OkdldEVudGVyZWQoKSk7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0JpbmRpbmdTdGF0ZS5oCmluZGV4IDk3MTFlZTg5NGFj
ODIyYTIwZjg1ZjQxMmYzNDAzNDdjYTZiY2UwZmQuLmQzNTRiZTI2MzNiZjgxZGQxZDEyNzQxNGM0
NGMwYjY0MWRiOTk3YTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0Jp
bmRpbmdTdGF0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0JpbmRpbmdTdGF0
ZS5oCkBAIC00NCw4ICs0NCw4IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgQmluZGluZ1N0YXRlKiBp
bnN0YW5jZSgpOwogfTsKIAotRE9NV2luZG93KiBhY3RpdmVXaW5kb3coQmluZGluZ1N0YXRlKik7
Ci1ET01XaW5kb3cqIGZpcnN0V2luZG93KEJpbmRpbmdTdGF0ZSopOworRE9NV2luZG93KiBhY3Rp
dmVET01XaW5kb3coQmluZGluZ1N0YXRlKik7CitET01XaW5kb3cqIGZpcnN0RE9NV2luZG93KEJp
bmRpbmdTdGF0ZSopOwogCiBGcmFtZSogYWN0aXZlRnJhbWUoQmluZGluZ1N0YXRlKik7CiBGcmFt
ZSogZmlyc3RGcmFtZShCaW5kaW5nU3RhdGUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20uY3BwCmluZGV4IDhmYTI4MDhl
NzM4YjAxYTEzNWU5ZGM5YzAyN2ZiZGJjMTJkMjJkNmIuLmM3Y2JmNjEwZDQ5Y2JkYTc3OThlMzg3
ODQ5NTM3NGNjZjlkN2UwYmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvY3VzdG9tL1Y4RE9NV2luZG93Q3VzdG9tLmNwcApAQCAtMTg5LDExICsxODksMTEgQEAg
dm9pZCBWOERPTVdpbmRvdzo6bG9jYXRpb25BY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0
cmluZz4gbmFtZSwgdjg6OkxvY2FsPHYKICAgICBET01XaW5kb3cqIGltcCA9IFY4RE9NV2luZG93
Ojp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKICAgICBCaW5kaW5nU3RhdGUqIHN0YXRlID0gQmlu
ZGluZ1N0YXRlOjppbnN0YW5jZSgpOwogCi0gICAgRE9NV2luZG93KiBhY3RpdmUgPSBhY3RpdmVX
aW5kb3coc3RhdGUpOworICAgIERPTVdpbmRvdyogYWN0aXZlID0gYWN0aXZlRE9NV2luZG93KHN0
YXRlKTsKICAgICBpZiAoIWFjdGl2ZSkKICAgICAgIHJldHVybjsKIAotICAgIERPTVdpbmRvdyog
Zmlyc3QgPSBmaXJzdFdpbmRvdyhzdGF0ZSk7CisgICAgRE9NV2luZG93KiBmaXJzdCA9IGZpcnN0
RE9NV2luZG93KHN0YXRlKTsKICAgICBpZiAoIWZpcnN0KQogICAgICAgcmV0dXJuOwogCkBAIC0z
MDAsNyArMzAwLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBoYW5kbGVQb3N0TWVz
c2FnZUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MKICAgICAvLyBOb25lIG9mIHRo
ZXNlIG5lZWQgdG8gYmUgUmVmUHRyIGJlY2F1c2UgYXJncyBhbmQgY29udGV4dCBhcmUgZ3VhcmFu
dGVlZAogICAgIC8vIHRvIGhvbGQgb24gdG8gdGhlbS4KICAgICBET01XaW5kb3cqIHdpbmRvdyA9
IFY4RE9NV2luZG93Ojp0b05hdGl2ZShhcmdzLkhvbGRlcigpKTsKLSAgICBET01XaW5kb3cqIHNv
dXJjZSA9IGFjdGl2ZVdpbmRvdyhCaW5kaW5nU3RhdGU6Omluc3RhbmNlKCkpOworICAgIERPTVdp
bmRvdyogc291cmNlID0gYWN0aXZlRE9NV2luZG93KEJpbmRpbmdTdGF0ZTo6aW5zdGFuY2UoKSk7
CiAKICAgICAvLyBJZiBjYWxsZWQgZGlyZWN0bHkgYnkgV2ViQ29yZSB3ZSBkb24ndCBoYXZlIGEg
Y2FsbGluZyBjb250ZXh0LgogICAgIGlmICghc291cmNlKQpAQCAtNDQxLDcgKzQ0MSw3IEBAIHY4
OjpIYW5kbGU8djg6OlZhbHVlPiBWOERPTVdpbmRvdzo6c2hvd01vZGFsRGlhbG9nQ2FsbGJhY2so
Y29uc3Qgdjg6OkFyZ3VtZW50cyYKICAgICBEaWFsb2dIYW5kbGVyIGhhbmRsZXIoYXJnc1sxXSk7
CiAgICAgU3RyaW5nIGRpYWxvZ0ZlYXR1cmVzU3RyaW5nID0gdG9XZWJDb3JlU3RyaW5nV2l0aE51
bGxPclVuZGVmaW5lZENoZWNrKGFyZ3NbMl0pOwogCi0gICAgaW1wbC0+c2hvd01vZGFsRGlhbG9n
KHVybFN0cmluZywgZGlhbG9nRmVhdHVyZXNTdHJpbmcsIGFjdGl2ZVdpbmRvdyhzdGF0ZSksIGZp
cnN0V2luZG93KHN0YXRlKSwgc2V0VXBEaWFsb2csICZoYW5kbGVyKTsKKyAgICBpbXBsLT5zaG93
TW9kYWxEaWFsb2codXJsU3RyaW5nLCBkaWFsb2dGZWF0dXJlc1N0cmluZywgYWN0aXZlRE9NV2lu
ZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUpLCBzZXRVcERpYWxvZywgJmhhbmRsZXIp
OwogCiAgICAgcmV0dXJuIGhhbmRsZXIucmV0dXJuVmFsdWUoKTsKIH0KQEAgLTQ1OSw3ICs0NTks
NyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhET01XaW5kb3c6Om9wZW5DYWxsYmFjayhjb25z
dCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIEF0b21pY1N0cmluZyBmcmFtZU5hbWUgPSAoYXJn
c1sxXS0+SXNVbmRlZmluZWQoKSB8fCBhcmdzWzFdLT5Jc051bGwoKSkgPyAiX2JsYW5rIiA6IEF0
b21pY1N0cmluZyh0b1dlYkNvcmVTdHJpbmcoYXJnc1sxXSkpOwogICAgIFN0cmluZyB3aW5kb3dG
ZWF0dXJlc1N0cmluZyA9IHRvV2ViQ29yZVN0cmluZ1dpdGhOdWxsT3JVbmRlZmluZWRDaGVjayhh
cmdzWzJdKTsKIAotICAgIFJlZlB0cjxET01XaW5kb3c+IG9wZW5lZFdpbmRvdyA9IGltcGwtPm9w
ZW4odXJsU3RyaW5nLCBmcmFtZU5hbWUsIHdpbmRvd0ZlYXR1cmVzU3RyaW5nLCBhY3RpdmVXaW5k
b3coc3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSkpOworICAgIFJlZlB0cjxET01XaW5kb3c+IG9w
ZW5lZFdpbmRvdyA9IGltcGwtPm9wZW4odXJsU3RyaW5nLCBmcmFtZU5hbWUsIHdpbmRvd0ZlYXR1
cmVzU3RyaW5nLCBhY3RpdmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkp
OwogICAgIGlmICghb3BlbmVkV2luZG93KQogICAgICAgICByZXR1cm4gdjg6OlVuZGVmaW5lZCgp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhEb2N1
bWVudExvY2F0aW9uQ3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3Rv
bS9WOERvY3VtZW50TG9jYXRpb25DdXN0b20uY3BwCmluZGV4IDRjMTk0OTU5OWE1NjAzODIxODM2
YmM5YWI0MjljYzEzNzI4YjdhY2YuLmIyZDgxZTg0YzJkNzVkOTIyNDk2OTg0YTE2YTE4NDRmYmEx
ZjdjMzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERv
Y3VtZW50TG9jYXRpb25DdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L2N1c3RvbS9WOERvY3VtZW50TG9jYXRpb25DdXN0b20uY3BwCkBAIC01MiwxMSArNTIsMTEgQEAg
dm9pZCBWOERvY3VtZW50Ojpsb2NhdGlvbkFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3Ry
aW5nPiBuYW1lLCB2ODo6TG9jYWw8djgKIAogICAgIEJpbmRpbmdTdGF0ZSogc3RhdGUgPSBCaW5k
aW5nU3RhdGU6Omluc3RhbmNlKCk7CiAKLSAgICBET01XaW5kb3cqIGFjdGl2ZSA9IGFjdGl2ZVdp
bmRvdyhzdGF0ZSk7CisgICAgRE9NV2luZG93KiBhY3RpdmUgPSBhY3RpdmVET01XaW5kb3coc3Rh
dGUpOwogICAgIGlmICghYWN0aXZlKQogICAgICAgICByZXR1cm47CiAKLSAgICBET01XaW5kb3cq
IGZpcnN0ID0gZmlyc3RXaW5kb3coc3RhdGUpOworICAgIERPTVdpbmRvdyogZmlyc3QgPSBmaXJz
dERPTVdpbmRvdyhzdGF0ZSk7CiAgICAgaWYgKCFmaXJzdCkKICAgICAgICAgcmV0dXJuOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhMb2NhdGlvbkN1
c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhMb2NhdGlvbkN1
c3RvbS5jcHAKaW5kZXggNzJkY2NjNzY3YzVlNzk3ODljMGU5NmJlMzQyYjBkNTQwNDBhOTM3Yy4u
NDJmMDJmOWI1OWQ2NjA0YmU0NjVmMjYxMzBlMmZjYTk0NWYzNGE1NCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4TG9jYXRpb25DdXN0b20uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOExvY2F0aW9uQ3VzdG9tLmNwcApA
QCAtNTUsNyArNTUsNyBAQCB2b2lkIFY4TG9jYXRpb246Omhhc2hBY2Nlc3NvclNldHRlcih2ODo6
TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYQogICAgIC8vIEZJWE1FOiBI
YW5kbGUgZXhjZXB0aW9ucyBjb3JyZWN0bHkuCiAgICAgU3RyaW5nIGhhc2ggPSB0b1dlYkNvcmVT
dHJpbmcodmFsdWUpOwogCi0gICAgaW1wbC0+c2V0SGFzaChoYXNoLCBhY3RpdmVXaW5kb3coc3Rh
dGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSkpOworICAgIGltcGwtPnNldEhhc2goaGFzaCwgYWN0aXZl
RE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUpKTsKIH0KIAogdm9pZCBWOExv
Y2F0aW9uOjpob3N0QWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4
OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpA
QCAtNjcsNyArNjcsNyBAQCB2b2lkIFY4TG9jYXRpb246Omhvc3RBY2Nlc3NvclNldHRlcih2ODo6
TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYQogICAgIC8vIEZJWE1FOiBI
YW5kbGUgZXhjZXB0aW9ucyBjb3JyZWN0bHkuCiAgICAgU3RyaW5nIGhvc3QgPSB0b1dlYkNvcmVT
dHJpbmcodmFsdWUpOwogCi0gICAgaW1wbC0+c2V0SG9zdChob3N0LCBhY3RpdmVXaW5kb3coc3Rh
dGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSkpOworICAgIGltcGwtPnNldEhvc3QoaG9zdCwgYWN0aXZl
RE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUpKTsKIH0KIAogdm9pZCBWOExv
Y2F0aW9uOjpob3N0bmFtZUFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1l
LCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5m
bykKQEAgLTc5LDcgKzc5LDcgQEAgdm9pZCBWOExvY2F0aW9uOjpob3N0bmFtZUFjY2Vzc29yU2V0
dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djgKICAgICAvLyBGSVhN
RTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBob3N0bmFtZSA9IHRv
V2ViQ29yZVN0cmluZyh2YWx1ZSk7CiAKLSAgICBpbXBsLT5zZXRIb3N0bmFtZShob3N0bmFtZSwg
YWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5zZXRI
b3N0bmFtZShob3N0bmFtZSwgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3co
c3RhdGUpKTsKIH0KIAogdm9pZCBWOExvY2F0aW9uOjpocmVmQWNjZXNzb3JTZXR0ZXIodjg6Okxv
Y2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2
ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpAQCAtOTEsNyArOTEsNyBAQCB2b2lkIFY4TG9jYXRpb246
OmhyZWZBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2Fs
PHY4OjpWYQogICAgIC8vIEZJWE1FOiBIYW5kbGUgZXhjZXB0aW9ucyBjb3JyZWN0bHkuCiAgICAg
U3RyaW5nIGhyZWYgPSB0b1dlYkNvcmVTdHJpbmcodmFsdWUpOwogCi0gICAgaW1wbC0+c2V0SHJl
ZihocmVmLCBhY3RpdmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSkpOworICAgIGlt
cGwtPnNldEhyZWYoaHJlZiwgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3co
c3RhdGUpKTsKIH0KIAogdm9pZCBWOExvY2F0aW9uOjpwYXRobmFtZUFjY2Vzc29yU2V0dGVyKHY4
OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djg6OlZhbHVlPiB2YWx1ZSwgY29u
c3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKQEAgLTEwMyw3ICsxMDMsNyBAQCB2b2lkIFY4TG9j
YXRpb246OnBhdGhuYW1lQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUs
IHY4OjpMb2NhbDx2OAogICAgIC8vIEZJWE1FOiBIYW5kbGUgZXhjZXB0aW9ucyBjb3JyZWN0bHku
CiAgICAgU3RyaW5nIHBhdGhuYW1lID0gdG9XZWJDb3JlU3RyaW5nKHZhbHVlKTsKIAotICAgIGlt
cGwtPnNldFBhdGhuYW1lKHBhdGhuYW1lLCBhY3RpdmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRv
dyhzdGF0ZSkpOworICAgIGltcGwtPnNldFBhdGhuYW1lKHBhdGhuYW1lLCBhY3RpdmVET01XaW5k
b3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkpOwogfQogCiB2b2lkIFY4TG9jYXRpb246
OnBvcnRBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2Fs
PHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCkBAIC0xMTUs
NyArMTE1LDcgQEAgdm9pZCBWOExvY2F0aW9uOjpwb3J0QWNjZXNzb3JTZXR0ZXIodjg6OkxvY2Fs
PHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmEKICAgICAvLyBGSVhNRTogSGFuZGxl
IGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBwb3J0ID0gdG9XZWJDb3JlU3RyaW5n
KHZhbHVlKTsKIAotICAgIGltcGwtPnNldFBvcnQocG9ydCwgYWN0aXZlV2luZG93KHN0YXRlKSwg
Zmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5zZXRQb3J0KHBvcnQsIGFjdGl2ZURPTVdp
bmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSk7CiB9CiAKIHZvaWQgVjhMb2NhdGlv
bjo6cHJvdG9jb2xBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6
OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCkBA
IC0xMjgsNyArMTI4LDcgQEAgdm9pZCBWOExvY2F0aW9uOjpwcm90b2NvbEFjY2Vzc29yU2V0dGVy
KHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6TG9jYWw8djgKICAgICBTdHJpbmcgcHJv
dG9jb2wgPSB0b1dlYkNvcmVTdHJpbmcodmFsdWUpOwogCiAgICAgRXhjZXB0aW9uQ29kZSBlYyA9
IDA7Ci0gICAgaW1wbC0+c2V0UHJvdG9jb2wocHJvdG9jb2wsIGFjdGl2ZVdpbmRvdyhzdGF0ZSks
IGZpcnN0V2luZG93KHN0YXRlKSwgZWMpOworICAgIGltcGwtPnNldFByb3RvY29sKHByb3RvY29s
LCBhY3RpdmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSksIGVjKTsKICAg
ICBpZiAoVU5MSUtFTFkoZWMpKQogICAgICAgICBWOFByb3h5OjpzZXRET01FeGNlcHRpb24oZWMs
IGluZm8uR2V0SXNvbGF0ZSgpKTsKIH0KQEAgLTE0Miw3ICsxNDIsNyBAQCB2b2lkIFY4TG9jYXRp
b246OnNlYXJjaEFjY2Vzc29yU2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCB2ODo6
TG9jYWw8djg6OgogICAgIC8vIEZJWE1FOiBIYW5kbGUgZXhjZXB0aW9ucyBjb3JyZWN0bHkuCiAg
ICAgU3RyaW5nIHNlYXJjaCA9IHRvV2ViQ29yZVN0cmluZyh2YWx1ZSk7CiAKLSAgICBpbXBsLT5z
ZXRTZWFyY2goc2VhcmNoLCBhY3RpdmVXaW5kb3coc3RhdGUpLCBmaXJzdFdpbmRvdyhzdGF0ZSkp
OworICAgIGltcGwtPnNldFNlYXJjaChzZWFyY2gsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZp
cnN0RE9NV2luZG93KHN0YXRlKSk7CiB9CiAKIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOExvY2F0
aW9uOjpyZWxvYWRBY2Nlc3NvckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgY29u
c3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbykKQEAgLTIwNiw3ICsyMDYsNyBAQCB2ODo6SGFuZGxl
PHY4OjpWYWx1ZT4gVjhMb2NhdGlvbjo6cmVsb2FkQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50
cyYgYXJncykKICAgICBMb2NhdGlvbiogaW1wbCA9IFY4TG9jYXRpb246OnRvTmF0aXZlKGFyZ3Mu
SG9sZGVyKCkpOwogICAgIEJpbmRpbmdTdGF0ZSogc3RhdGUgPSBCaW5kaW5nU3RhdGU6Omluc3Rh
bmNlKCk7CiAKLSAgICBpbXBsLT5yZWxvYWQoYWN0aXZlV2luZG93KHN0YXRlKSk7CisgICAgaW1w
bC0+cmVsb2FkKGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSkpOwogICAgIHJldHVybiB2ODo6VW5kZWZp
bmVkKCk7CiB9CiAKQEAgLTIxOSw3ICsyMTksNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhM
b2NhdGlvbjo6cmVwbGFjZUNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAg
Ly8gRklYTUU6IEhhbmRsZSBleGNlcHRpb25zIGNvcnJlY3RseS4KICAgICBTdHJpbmcgdXJsU3Ry
aW5nID0gdG9XZWJDb3JlU3RyaW5nKGFyZ3NbMF0pOwogCi0gICAgaW1wbC0+cmVwbGFjZSh1cmxT
dHJpbmcsIGFjdGl2ZVdpbmRvdyhzdGF0ZSksIGZpcnN0V2luZG93KHN0YXRlKSk7CisgICAgaW1w
bC0+cmVwbGFjZSh1cmxTdHJpbmcsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2lu
ZG93KHN0YXRlKSk7CiAgICAgcmV0dXJuIHY4OjpVbmRlZmluZWQoKTsKIH0KIApAQCAtMjMyLDcg
KzIzMiw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOExvY2F0aW9uOjphc3NpZ25DYWxsYmFj
ayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAgIC8vIEZJWE1FOiBIYW5kbGUgZXhjZXB0
aW9ucyBjb3JyZWN0bHkuCiAgICAgU3RyaW5nIHVybFN0cmluZyA9IHRvV2ViQ29yZVN0cmluZyhh
cmdzWzBdKTsKIAotICAgIGltcGwtPmFzc2lnbih1cmxTdHJpbmcsIGFjdGl2ZVdpbmRvdyhzdGF0
ZSksIGZpcnN0V2luZG93KHN0YXRlKSk7CisgICAgaW1wbC0+YXNzaWduKHVybFN0cmluZywgYWN0
aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUpKTsKICAgICByZXR1cm4g
djg6OlVuZGVmaW5lZCgpOwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156808</attachid>
            <date>2012-08-06 17:22:49 -0700</date>
            <delta_ts>2012-08-07 13:45:51 -0700</delta_ts>
            <desc>resolve project.pbxproj merge conflict</desc>
            <filename>bug-93307-20120806172225.patch</filename>
            <type>text/plain</type>
            <size>33070</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEyNDgyMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDYyIEBACisyMDEyLTA4LTA2ICBBZGFtIEJh
cnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgSlNDIHNob3VsZCB1c2UgQmluZGlu
Z1N0YXRlIHRvIGRldGVybWluZSB0aGUgYWN0aXZlRE9NV2luZG93CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzMwNworCisgICAgICAgIFJldmlld2Vk
IGJ5IEVyaWMgU2VpZGVsLgorCisgICAgICAgIFRoaXMgcGF0Y2ggbW92ZXMgYWN0aXZlRE9NV2lu
ZG93IGZyb20gSlNET01CaW5kaW5ncy5jcHAgdG8KKyAgICAgICAgQmluZGluZ1N0YXRlLmNwcC4g
VGhpcyBpcyBhIGZpcnN0IHN0ZXAgdG93YXJkcyBzaGFyaW5nIHRoZSBjb3JlCisgICAgICAgIHNl
Y3VyaXR5IGxvZ2ljIGluIHRoZSBiaW5kaW5ncyBiZXR3ZWVuIEphdmFTY3JpcHRDb3JlIGFuZCBW
OC4gT25jZSB0aGUKKyAgICAgICAgbG9naWMgaXMgc2hhcmVkLCB3ZSB3aWxsIGJlIGFibGUgdG8g
cmVmYWN0b3IgdGhlIGxvZ2ljIHRvIGF2b2lkIHRoZQorICAgICAgICBuZWVkIGZvciBET01XaW5k
b3c6Om1fc2VjdXJpdHlPcmlnaW4uCisKKyAgICAgICAgVGhpcyBwYXRjaCBkb2Vzbid0IGFjdHVh
bGx5IHNoYXJlIGFueSBjb2RlICh5ZXQpLiBJdCBqdXN0IHNldHMgdGhlCisgICAgICAgIHN0YWdl
IGJ5IGNyZWF0aW5nIEJpbmRpbmdTdGF0ZSBhcyBhIHR5cGVkZWYgb2YgRXhlY1N0YXRlIGFuZCBh
ZGRpbmcgdGhlCisgICAgICAgIGFwcHJvcHJpYXRlIGZpbGVzIHRvIHRoZSBidWlsZCBzeXN0ZW1z
LgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWxzbyByZW5hbWVzIGFjdGl2ZVdpbmRvdyBhbmQgZmly
c3RXaW5kb3cgaW4gdGhlIFY4IGJpbmRpbmdzCisgICAgICAgIHRvIGFjdGl2ZURPTVdpbmRvdyBh
bmQgZmlyc3RET01XaW5kb3cgdG8gbWF0Y2ggdGhlIG5hbWVzIGluIHRoZQorICAgICAgICBKYXZh
U2NyaXB0Q29yZSBiaW5kaW5ncy4KKworICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06Cisg
ICAgICAgICogVGFyZ2V0LnByaToKKyAgICAgICAgKiBVc2VKU0MuY21ha2U6CisgICAgICAgICog
V2ViQ29yZS5neXBpOgorICAgICAgICAqIFdlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgor
ICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBi
aW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpj
YW5BY2Nlc3NEb2N1bWVudCk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbElu
T25lLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwOgorICAgICAg
ICAoV2ViQ29yZSk6CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmg6CisgICAg
ICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6YWN0aXZlRE9NV2luZG93KToKKyAgICAgICAgKFdlYkNvcmU6OmZp
cnN0RE9NV2luZG93KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuaDoKKyAg
ICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRv
d0N1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6bG9jYXRpb25BY2Nl
c3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpoYW5kbGVQb3N0TWVzc2FnZUNhbGxiYWNr
KToKKyAgICAgICAgKFdlYkNvcmU6OlY4RE9NV2luZG93OjpzaG93TW9kYWxEaWFsb2dDYWxsYmFj
ayk6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdpbmRvdzo6b3BlbkNhbGxiYWNrKToKKyAgICAg
ICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhEb2N1bWVudExvY2F0aW9uQ3VzdG9tLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlY4RG9jdW1lbnQ6OmxvY2F0aW9uQWNjZXNzb3JTZXR0ZXIpOgorICAg
ICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOExvY2F0aW9uQ3VzdG9tLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlY4TG9jYXRpb246Omhhc2hBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJD
b3JlOjpWOExvY2F0aW9uOjpob3N0QWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6
VjhMb2NhdGlvbjo6aG9zdG5hbWVBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpW
OExvY2F0aW9uOjpocmVmQWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2Nh
dGlvbjo6cGF0aG5hbWVBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0
aW9uOjpwb3J0QWNjZXNzb3JTZXR0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2NhdGlvbjo6
cHJvdG9jb2xBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjpz
ZWFyY2hBY2Nlc3NvclNldHRlcik6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjpyZWxv
YWRDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOExvY2F0aW9uOjpyZXBsYWNlQ2FsbGJh
Y2spOgorICAgICAgICAoV2ViQ29yZTo6VjhMb2NhdGlvbjo6YXNzaWduQ2FsbGJhY2spOgorCiAy
MDEyLTA4LTA2ICBNYXggVnVqb3ZpYyAgPG12dWpvdmljQGFkb2JlLmNvbT4KIAogICAgICAgICBb
Q1NTIFNoYWRlcnNdIFBhcnNlIG1peCBmdW5jdGlvbgpJbmRleDogU291cmNlL1dlYkNvcmUvR05V
bWFrZWZpbGUubGlzdC5hbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmls
ZS5saXN0LmFtCShyZXZpc2lvbiAxMjQ4MjIpCisrKyBTb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmls
ZS5saXN0LmFtCSh3b3JraW5nIGNvcHkpCkBAIC0xMzcwLDEyICsxMzcwLDE1IEBAIHdlYmNvcmVf
c291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hl
LmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQWN0aXZlRE9NQ2FsbGJhY2su
Y3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0FjdGl2ZURPTUNhbGxiYWNr
LmggXAorCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNw
cCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9CaW5kaW5nU2VjdXJpdHkuaCBc
CiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9HZW5lcmljQmluZGluZy5oIFwKIAlT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3Bw
IFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuaCBcCiAJU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvQXJyYXlWYWx1ZS5jcHAgXAogCVNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0FycmF5VmFsdWUuaCBcCisJU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvQmluZGluZ1N0YXRlLmNwcCBcCisJU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvQmluZGluZ1N0YXRlLmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0NhY2hlZFNj
cmlwdFNvdXJjZVByb3ZpZGVyLmggXAogCVNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0NhbGxi
YWNrRnVuY3Rpb24uY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9DYWxsYmFja0Z1
bmN0aW9uLmggXApJbmRleDogU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCShyZXZpc2lvbiAxMjQ4MjIpCisrKyBTb3VyY2Uv
V2ViQ29yZS9UYXJnZXQucHJpCSh3b3JraW5nIGNvcHkpCkBAIC02OSwxMSArNjksMTMgQEAgU09V
UkNFUyArPSBcCiAgICAgYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VGFibGVSb3cuY3BwIFwK
ICAgICBhY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuY3BwIFwKICAgICBiaW5kaW5ncy9nZW5l
cmljL0FjdGl2ZURPTUNhbGxiYWNrLmNwcCBcCisgICAgYmluZGluZ3MvZ2VuZXJpYy9CaW5kaW5n
U2VjdXJpdHkuY3BwIFwKICAgICBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVy
ZXMuY3BwCiAKIFNPVVJDRVMgKz0gXAogICAgICBiaW5kaW5ncy9TY3JpcHRDb250cm9sbGVyQmFz
ZS5jcHAgXAogICAgICBiaW5kaW5ncy9qcy9BcnJheVZhbHVlLmNwcCBcCisgICAgIGJpbmRpbmdz
L2pzL0JpbmRpbmdTdGF0ZS5jcHAgXAogICAgICBiaW5kaW5ncy9qcy9DYWxsYmFja0Z1bmN0aW9u
LmNwcCBcCiAgICAgIGJpbmRpbmdzL2pzL0RPTU9iamVjdEhhc2hUYWJsZU1hcC5jcHAgXAogICAg
ICBiaW5kaW5ncy9qcy9ET01XcmFwcGVyV29ybGQuY3BwIFwKQEAgLTEyODAsOSArMTI4MiwxMSBA
QCBIRUFERVJTICs9IFwKICAgICBhY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuaCBcCiAgICAg
YmluZGluZ3MvU2NyaXB0Q29udHJvbGxlckJhc2UuaCBcCiAgICAgYmluZGluZ3MvZ2VuZXJpYy9B
Y3RpdmVET01DYWxsYmFjay5oIFwKKyAgICBiaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0
eS5oIFwKICAgICBiaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAogCiBI
RUFERVJTICs9IFwKKyAgICBiaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuaCBcCiAgICAgYmluZGlu
Z3MvanMvQ2FjaGVkU2NyaXB0U291cmNlUHJvdmlkZXIuaCBcCiAgICAgYmluZGluZ3MvanMvQ2Fs
bGJhY2tGdW5jdGlvbi5oIFwKICAgICBiaW5kaW5ncy9qcy9HQ0NvbnRyb2xsZXIuaCBcCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9Vc2VKU0MuY21ha2UKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvVXNlSlNDLmNtYWtlCShyZXZpc2lvbiAxMjQ4MjIpCisrKyBTb3VyY2UvV2ViQ29yZS9Vc2VK
U0MuY21ha2UJKHdvcmtpbmcgY29weSkKQEAgLTIzLDYgKzIzLDcgQEAgRU5ESUYgKCkKIAogTElT
VChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgYmluZGluZ3MvanMvQXJyYXlWYWx1ZS5jcHAK
KyAgICBiaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3BwCiAgICAgYmluZGluZ3MvanMvQ2FsbGJh
Y2tGdW5jdGlvbi5jcHAKICAgICBiaW5kaW5ncy9qcy9ET01PYmplY3RIYXNoVGFibGVNYXAuY3Bw
CiAgICAgYmluZGluZ3MvanMvRE9NV3JhcHBlcldvcmxkLmNwcApJbmRleDogU291cmNlL1dlYkNv
cmUvV2ViQ29yZS5neXBpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lw
aQkocmV2aXNpb24gMTI0ODIyKQorKysgU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xOTI0LDYgKzE5MjQsOCBAQAogICAgICAgICAgICAgJ2JpbmRpbmdzL2dv
YmplY3QvV2ViS2l0SFRNTEVsZW1lbnRXcmFwcGVyRmFjdG9yeS5oJywKICAgICAgICAgICAgICdi
aW5kaW5ncy9qcy9BcnJheVZhbHVlLmNwcCcsCiAgICAgICAgICAgICAnYmluZGluZ3MvanMvQXJy
YXlWYWx1ZS5oJywKKyAgICAgICAgICAgICdiaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuY3BwJywK
KyAgICAgICAgICAgICdiaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuaCcsCiAgICAgICAgICAgICAn
YmluZGluZ3MvanMvQ2FjaGVkU2NyaXB0U291cmNlUHJvdmlkZXIuaCcsCiAgICAgICAgICAgICAn
YmluZGluZ3MvanMvQ2FsbGJhY2tGdW5jdGlvbi5jcHAnLAogICAgICAgICAgICAgJ2JpbmRpbmdz
L2pzL0NhbGxiYWNrRnVuY3Rpb24uaCcsCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
cHJvai9XZWJDb3JlLnZjcHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LnZjcHJvai9XZWJDb3JlLnZjcHJvagkocmV2aXNpb24gMTI0ODIyKQorKysgU291cmNlL1dlYkNv
cmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oJKHdvcmtpbmcgY29weSkKQEAgLTYzNzk0
LDcgKzYzNzk0LDExIEBACiAJCQkJCT4KIAkJCQk8L0ZpbGU+CiAJCQkJPEZpbGUKLQkJCQkJUmVs
YXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xnZW5lcmljXEJpbmRpbmdET01XaW5kb3cuaCIKKwkJCQkJ
UmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xnZW5lcmljXEJpbmRpbmdTZWN1cml0eS5jcHAiCisJ
CQkJCT4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5k
aW5nc1xnZW5lcmljXEJpbmRpbmdTZWN1cml0eS5oIgogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJ
CTxGaWxlCkBAIC02MzkyNiw2ICs2MzkzMCw2MiBAQAogCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9u
PgogCQkJCTwvRmlsZT4KIAkJCQk8RmlsZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdz
XGpzXEJpbmRpbmdTdGF0ZS5jcHAiCisJCQkJCT4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJ
CQkJCQlOYW1lPSJEZWJ1Z3xXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgor
CQkJCQkJPgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJ
CQkJLz4KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9u
CisJCQkJCQlOYW1lPSJSZWxlYXNlfFdpbjMyIgorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRy
dWUiCisJCQkJCQk+CisJCQkJCQk8VG9vbAorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wi
CisJCQkJCQkvPgorCQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgorCQkJCQk8RmlsZUNvbmZpZ3Vy
YXRpb24KKwkJCQkJCU5hbWU9IkRlYnVnX0NhaXJvX0NGTGl0ZXxXaW4zMiIKKwkJCQkJCUV4Y2x1
ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJW
Q0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJ
CQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvX0NGTGl0ZXxX
aW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJCQkJPgorCQkJCQkJPFRv
b2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJLz4KKwkJCQkJPC9GaWxl
Q29uZmlndXJhdGlvbj4KKwkJCQkJPEZpbGVDb25maWd1cmF0aW9uCisJCQkJCQlOYW1lPSJEZWJ1
Z19BbGx8V2luMzIiCisJCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSIKKwkJCQkJCT4KKwkJ
CQkJCTxUb29sCisJCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKKwkJCQkJCS8+CisJCQkJ
CTwvRmlsZUNvbmZpZ3VyYXRpb24+CisJCQkJCTxGaWxlQ29uZmlndXJhdGlvbgorCQkJCQkJTmFt
ZT0iUHJvZHVjdGlvbnxXaW4zMiIKKwkJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIgorCQkJ
CQkJPgorCQkJCQkJPFRvb2wKKwkJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIgorCQkJCQkJ
Lz4KKwkJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJ
CQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5kaW5nc1xqc1xCaW5kaW5nU3RhdGUuaCIKKwkJCQkJPgor
CQkJCTwvRmlsZT4KKwkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpz
XENhbGxiYWNrRnVuY3Rpb24uaCIKIAkJCQkJPgogCQkJCTwvRmlsZT4KSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9u
IDEyNDgyMikKKysrIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagkod29ya2luZyBjb3B5KQpAQCAtMzQ2MSw2ICszNDYxLDEwIEBACiAJCTk3MjhDMzE0MTI2
OEU0MzkwMDQxRTg5QiAvKiBNYXJrdXBBY2N1bXVsYXRvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTcyOEMzMTIxMjY4RTQzOTAwNDFFODlCIC8qIE1h
cmt1cEFjY3VtdWxhdG9yLmggKi87IH07CiAJCTk3Mzg4OUEwMTE2RUE5REMwMEFERjMxMyAvKiBE
b2N1bWVudFdyaXRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA5NzM4ODk5RTExNkVBOURDMDBBREYzMTMgLyogRG9jdW1lbnRXcml0ZXIuY3BwICov
OyB9OwogCQk5NzM4ODlBMTExNkVBOURDMDBBREYzMTMgLyogRG9jdW1lbnRXcml0ZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3Mzg4OTlGMTE2RUE5
REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CisJCTk3M0FBM0Y0MTVEMDg4RjAwMEUzOEE4NSAvKiBCaW5k
aW5nU3RhdGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTczQUEzRjIxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5jcHAgKi87IH07CisJ
CTk3M0FBM0Y1MTVEMDg4RjAwMEUzOEE4NSAvKiBCaW5kaW5nU3RhdGUuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3M0FBM0YzMTVEMDg4RjAwMEUzOEE4
NSAvKiBCaW5kaW5nU3RhdGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRl
LCApOyB9OyB9OworCQk5NzNBQTNGOTE1RDA4OTFCMDBFMzhBODUgLyogQmluZGluZ1NlY3VyaXR5
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3M0FB
M0Y3MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuY3BwICovOyB9OworCQk5NzNB
QTNGQTE1RDA4OTFCMDBFMzhBODUgLyogQmluZGluZ1NlY3VyaXR5LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzNBQTNGODE1RDA4OTFCMDBFMzhBODUg
LyogQmluZGluZ1NlY3VyaXR5LmggKi87IH07CiAJCTk3M0RDNjNGMTQ1QTk0MDkwMDI4NDJDMiAv
KiBFeGNlcHRpb25Db2RlRGVzY3JpcHRpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gOTczREM2M0QxNDVBOTQwOTAwMjg0MkMyIC8qIEV4Y2VwdGlv
bkNvZGVEZXNjcmlwdGlvbi5jcHAgKi87IH07CiAJCTk3M0RDNjQwMTQ1QTk0MDkwMDI4NDJDMiAv
KiBFeGNlcHRpb25Db2RlRGVzY3JpcHRpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDk3M0RDNjNFMTQ1QTk0MDkwMDI4NDJDMiAvKiBFeGNlcHRpb25D
b2RlRGVzY3JpcHRpb24uaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCAp
OyB9OyB9OwogCQk5NzNFMzI1NjEwODgzQjdDMDA1QkM0OTMgLyogUmVzb3VyY2VMb2FkTm90aWZp
ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTcz
RTMyNTQxMDg4M0I3QzAwNUJDNDkzIC8qIFJlc291cmNlTG9hZE5vdGlmaWVyLmNwcCAqLzsgfTsK
QEAgLTEwNjA2LDYgKzEwNjEwLDEwIEBACiAJCTk3MjhDMzEyMTI2OEU0MzkwMDQxRTg5QiAvKiBN
YXJrdXBBY2N1bXVsYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNYXJr
dXBBY2N1bXVsYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5NzM4ODk5RTEx
NkVBOURDMDBBREYzMTMgLyogRG9jdW1lbnRXcml0ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gRG9jdW1lbnRXcml0ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk5NzM4ODk5RjExNkVBOURDMDBBREYzMTMgLyogRG9jdW1lbnRXcml0ZXIuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRG9jdW1lbnRXcml0ZXIuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJOTczQUEzRjIxNUQwODhGMDAwRTM4QTg1IC8qIEJpbmRp
bmdTdGF0ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBCaW5kaW5n
U3RhdGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzNBQTNGMzE1RDA4OEYw
MDBFMzhBODUgLyogQmluZGluZ1N0YXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEJpbmRpbmdTdGF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk5NzNBQTNG
NzE1RDA4OTFCMDBFMzhBODUgLyogQmluZGluZ1NlY3VyaXR5LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEJpbmRpbmdTZWN1cml0eS5jcHA7IHBhdGggPSBnZW5lcmlj
L0JpbmRpbmdTZWN1cml0eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTk3M0FB
M0Y4MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2VjdXJpdHkuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBuYW1lID0gQmluZGluZ1NlY3VyaXR5Lmg7IHBhdGggPSBnZW5lcmljL0JpbmRp
bmdTZWN1cml0eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk5NzNEQzYzRDE0NUE5
NDA5MDAyODQyQzIgLyogRXhjZXB0aW9uQ29kZURlc2NyaXB0aW9uLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEV4Y2VwdGlvbkNvZGVEZXNjcmlwdGlvbi5jcHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3M0RDNjNFMTQ1QTk0MDkwMDI4NDJDMiAvKiBF
eGNlcHRpb25Db2RlRGVzY3JpcHRpb24uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRXhjZXB0aW9uQ29kZURlc2NyaXB0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTk3M0UzMjU0MTA4ODNCN0MwMDVCQzQ5MyAvKiBSZXNvdXJjZUxvYWROb3RpZmllci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZXNvdXJjZUxvYWROb3RpZmll
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0yMDAwNyw2ICsyMDAxNSw4IEBA
CiAJCQljaGlsZHJlbiA9ICgKIAkJCQlCNUQzMURGODExQ0Y2MTBCMDA5RjIyQjQgLyogQWN0aXZl
RE9NQ2FsbGJhY2suY3BwICovLAogCQkJCUI1RDMxREY5MTFDRjYxMEIwMDlGMjJCNCAvKiBBY3Rp
dmVET01DYWxsYmFjay5oICovLAorCQkJCTk3M0FBM0Y3MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5k
aW5nU2VjdXJpdHkuY3BwICovLAorCQkJCTk3M0FBM0Y4MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5k
aW5nU2VjdXJpdHkuaCAqLywKIAkJCQlBNjIyQThGOTEyMkM0NEE2MDBBNzg1QjMgLyogR2VuZXJp
Y0JpbmRpbmcuaCAqLywKIAkJCSk7CiAJCQluYW1lID0gZ2VuZXJpYzsKQEAgLTIwMDUzLDYgKzIw
MDYzLDggQEAKIAkJCQkxNERGQjMzRjBBN0RGNzYzMDAxOEY3NjkgLyogRGVyaXZlZCBTb3VyY2Vz
ICovLAogCQkJCTQ5QjM3NjBBMTVDNkM2ODQwMDU5MTMxRCAvKiBBcnJheVZhbHVlLmNwcCAqLywK
IAkJCQk0OUIzNzYwQjE1QzZDNjg0MDA1OTEzMUQgLyogQXJyYXlWYWx1ZS5oICovLAorCQkJCTk3
M0FBM0YyMTVEMDg4RjAwMEUzOEE4NSAvKiBCaW5kaW5nU3RhdGUuY3BwICovLAorCQkJCTk3M0FB
M0YzMTVEMDg4RjAwMEUzOEE4NSAvKiBCaW5kaW5nU3RhdGUuaCAqLywKIAkJCQlCQ0Q1MzM2MzBF
RDY4NDg5MDA4ODc0NjggLyogQ2FjaGVkU2NyaXB0U291cmNlUHJvdmlkZXIuaCAqLywKIAkJCQk5
M0Y4QjMwNjBBMzAwRkVBMDBGNjFBQjggLyogQ29kZUdlbmVyYXRvckpTLnBtICovLAogCQkJCTMx
MkQ2N0IwMTUzNTY5MUYwMDU2M0QwRCAvKiBEaWN0aW9uYXJ5LmNwcCAqLywKQEAgLTIxMTY5LDgg
KzIxMTgxLDggQEAKIAkJCQk0OTgzOTE1NTBGMUU3NzY5MDBDMjM3ODIgLyogV2ViS2l0Q1NTTWF0
cml4LmNwcCAqLywKIAkJCQk0OTgzOTE1NjBGMUU3NzY5MDBDMjM3ODIgLyogV2ViS2l0Q1NTTWF0
cml4LmggKi8sCiAJCQkJNDk4MzkxNTcwRjFFNzc2OTAwQzIzNzgyIC8qIFdlYktpdENTU01hdHJp
eC5pZGwgKi8sCi0JCQkJQTI0QkY3NzkxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUuaCAqLywKIAkJCQlBMjRCRjc3QTE1Q0MzQkFGMDAzMTkxRjIgLyogV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgKi8sCisJCQkJQTI0QkY3NzkxNUNDM0JBRjAwMzE5MUYy
IC8qIFdlYktpdENTU01peEZ1bmN0aW9uVmFsdWUuaCAqLywKIAkJCQk4QUE2MUNGRDE0NEQ1OTVC
MDBGMzczNTAgLyogV2ViS2l0Q1NTUmVnaW9uUnVsZS5jcHAgKi8sCiAJCQkJOEFBNjFDRkUxNDRE
NTk1QjAwRjM3MzUwIC8qIFdlYktpdENTU1JlZ2lvblJ1bGUuaCAqLywKIAkJCQk4QUQwQTU1NjE0
Qzg3NDI1MDAwRDgzQzUgLyogV2ViS2l0Q1NTUmVnaW9uUnVsZS5pZGwgKi8sCkBAIC0yMjI0Myw2
ICsyMjI1NSw4IEBACiAJCQkJQkNFNzg5ODYxMTIwRTdBNjAwNjBFQ0U1IC8qIEJpZGlSdW4uaCBp
biBIZWFkZXJzICovLAogCQkJCUE4QzQwMjkzMTM0OEIyMjIwMDYzRjFFNSAvKiBCaWRpUnVuTGlz
dC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTM4MTkyMDUwRjg3RTFFQzAwRDUzNTJBIC8qIEJpbmFy
eVByb3BlcnR5TGlzdC5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTczQUEzRkExNUQwODkxQjAwRTM4
QTg1IC8qIEJpbmRpbmdTZWN1cml0eS5oIGluIEhlYWRlcnMgKi8sCisJCQkJOTczQUEzRjUxNUQw
ODhGMDAwRTM4QTg1IC8qIEJpbmRpbmdTdGF0ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjM1QUU1
QUMxNDkyNUY1QjAwNEQ1Nzc2IC8qIEJpbmRpbmdWaXNpdG9ycy5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJRkQzMTYwOEQxMkIwMjZGNzAwQzFBMzU5IC8qIEJpcXVhZC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJRkQzMTYwMjUxMkIwMjY3NjAwQzFBMzU5IC8qIEJpcXVhZERTUEtlcm5lbC5oIGluIEhlYWRl
cnMgKi8sCkBAIC0yNTI3MCw2ICsyNTI4NCw3IEBACiAJCQkJMzEyODhFNzMwRTMwMDVENjAwMzYx
OUFFIC8qIFdlYktpdENTU0tleWZyYW1lUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzEyODhF
NzUwRTMwMDVENjAwMzYxOUFFIC8qIFdlYktpdENTU0tleWZyYW1lc1J1bGUuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTQ5ODM5MTU5MEYxRTc3NjkwMEMyMzc4MiAvKiBXZWJLaXRDU1NNYXRyaXguaCBp
biBIZWFkZXJzICovLAorCQkJCUEyNEJGNzdCMTVDQzNCQUYwMDMxOTFGMiAvKiBXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQk4QUE2MUQwMDE0NEQ1OTVCMDBG
MzczNTAgLyogV2ViS2l0Q1NTUmVnaW9uUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMjlDRDYx
REUxNDZEMDI4OTAwNjhFODJBIC8qIFdlYktpdENTU1NoYWRlclZhbHVlLmggaW4gSGVhZGVycyAq
LywKIAkJCQkwNTYyRjk0NzE1NzNFQ0VCMDAzMUNBMTYgLyogV2ViS2l0Q1NTU1ZHRG9jdW1lbnRW
YWx1ZS5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNTM4MSw3ICsyNTM5Niw2IEBACiAJCQkJRTFCRTUx
MkUwQ0Y2QzUxMjAwMkVBOTU5IC8qIFhTTFRVbmljb2RlU29ydC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJOTc3RTJFMEYxMkYwRkM5QzAwQzEzMzc5IC8qIFhTU0F1ZGl0b3IuaCBpbiBIZWFkZXJzICov
LAogCQkJCUZENTM3MzUzMTM3QjY1MTgwMDAwOERDRSAvKiBaZXJvUG9sZS5oIGluIEhlYWRlcnMg
Ki8sCi0JCQkJQTI0QkY3N0IxNUNDM0JBRjAwMzE5MUYyIC8qIFdlYktpdENTU01peEZ1bmN0aW9u
VmFsdWUuaCBpbiBIZWFkZXJzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9z
dHByb2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtMjU4MjUsNiArMjU4MzksOCBAQAogCQkJCUIyQzNE
QTIzMEQwMDZDMUQwMEVGNkYyNiAvKiBCaWRpQ29udGV4dC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlCQ0U3ODk4QjExMjBFODAyMDA2MEVDRTUgLyogQmlkaVJ1bi5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQk5MzgxOTIwMzBGODdFMUU2MDBENTM1MkEgLyogQmluYXJ5UHJvcGVydHlMaXN0LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCTk3M0FBM0Y5MTVEMDg5MUIwMEUzOEE4NSAvKiBCaW5kaW5nU2Vj
dXJpdHkuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJOTczQUEzRjQxNUQwODhGMDAwRTM4QTg1IC8q
IEJpbmRpbmdTdGF0ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGRDMxNjA4QzEyQjAyNkY3MDBD
MUEzNTkgLyogQmlxdWFkLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZEMzE2MDI0MTJCMDI2NzYw
MEMxQTM1OSAvKiBCaXF1YWREU1BLZXJuZWwuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkRDNTRG
MDQxMzk5QjBEQTAwOEQ5MTE3IC8qIEJpcXVhZEZpbHRlck5vZGUuY3BwIGluIFNvdXJjZXMgKi8s
CkBAIC0yODM1Niw2ICsyODM3Miw3IEBACiAJCQkJMzEyODhFNzIwRTMwMDVENjAwMzYxOUFFIC8q
IFdlYktpdENTU0tleWZyYW1lUnVsZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMTI4OEU3NDBF
MzAwNUQ2MDAzNjE5QUUgLyogV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk0OTgzOTE1ODBGMUU3NzY5MDBDMjM3ODIgLyogV2ViS2l0Q1NTTWF0cml4LmNwcCBp
biBTb3VyY2VzICovLAorCQkJCUEyNEJGNzdDMTVDQzNCQUYwMDMxOTFGMiAvKiBXZWJLaXRDU1NN
aXhGdW5jdGlvblZhbHVlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCThBQTYxQ0ZGMTQ0RDU5NUIw
MEYzNzM1MCAvKiBXZWJLaXRDU1NSZWdpb25SdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTUw
MzhCQzA3MTQ3MTFDREIwMDk1RTBEMSAvKiBXZWJLaXRDU1NTaGFkZXJWYWx1ZS5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQkwNTYyRjk0NjE1NzNFQ0VCMDAzMUNBMTYgLyogV2ViS2l0Q1NTU1ZHRG9j
dW1lbnRWYWx1ZS5jcHAgaW4gU291cmNlcyAqLywKQEAgLTI4NDU2LDcgKzI4NDczLDYgQEAKIAkJ
CQlFMUJFNTEyRDBDRjZDNTEyMDAyRUE5NTkgLyogWFNMVFVuaWNvZGVTb3J0LmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTk3N0UyRTBFMTJGMEZDOUMwMEMxMzM3OSAvKiBYU1NBdWRpdG9yLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUZENTM3MzUyMTM3QjY1MTgwMDAwOERDRSAvKiBaZXJvUG9sZS5j
cHAgaW4gU291cmNlcyAqLywKLQkJCQlBMjRCRjc3QzE1Q0MzQkFGMDAzMTkxRjIgLyogV2ViS2l0
Q1NTTWl4RnVuY3Rpb25WYWx1ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5
Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5jcHAJKHJldmlz
aW9uIDEyNDgyMikKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1Nl
Y3VyaXR5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDcsNyArNDcsNyBAQCBzdGF0aWMgYm9vbCBj
YW5BY2Nlc3NEb2N1bWVudChCaW5kaW5nU3RhCiAgICAgaWYgKCF0YXJnZXREb2N1bWVudCkKICAg
ICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgRE9NV2luZG93KiBhY3RpdmUgPSBhY3RpdmVXaW5k
b3coc3RhdGUpOworICAgIERPTVdpbmRvdyogYWN0aXZlID0gYWN0aXZlRE9NV2luZG93KHN0YXRl
KTsKICAgICBpZiAoIWFjdGl2ZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0JpbmRpbmdTZWN1cml0eS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGluZ1NlY3VyaXR5LmgJKHJl
dmlzaW9uIDEyNDgyMikKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvQmluZGlu
Z1NlY3VyaXR5LmgJKHdvcmtpbmcgY29weSkKQEAgLTMxLDEzICszMSwxMSBAQAogI2lmbmRlZiBC
aW5kaW5nU2VjdXJpdHlfaAogI2RlZmluZSBCaW5kaW5nU2VjdXJpdHlfaAogCisjaW5jbHVkZSAi
QmluZGluZ1N0YXRlLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgQmluZGluZ1N0YXRlOwotY2xhc3MgRE9NV2luZG93Owot
Y2xhc3MgRnJhbWU7CiBjbGFzcyBIVE1MRnJhbWVFbGVtZW50QmFzZTsKIGNsYXNzIE5vZGU7CiAK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvQmluZGluZ1N0YXRlLmNwcAkocmV2
aXNpb24gMCkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0JpbmRpbmdTdGF0ZS5jcHAJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIg
R29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAg
ICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICog
TmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICog
Y29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBk
ZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0
dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICog
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiQmluZGluZ1N0YXRlLmgiCisKKyNpbmNsdWRlICJKU0RPTVdpbmRvd0N1c3RvbS5oIgorCit1
c2luZyBuYW1lc3BhY2UgSlNDOworCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK0RPTVdpbmRvdyog
YWN0aXZlRE9NV2luZG93KEV4ZWNTdGF0ZSogZXhlYykKK3sKKyAgICByZXR1cm4gYXNKU0RPTVdp
bmRvdyhleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCkpLT5pbXBsKCk7Cit9CisKK0RPTVdpbmRv
dyogZmlyc3RET01XaW5kb3coRXhlY1N0YXRlKiBleGVjKQoreworICAgIHJldHVybiBhc0pTRE9N
V2luZG93KGV4ZWMtPmR5bmFtaWNHbG9iYWxPYmplY3QoKSktPmltcGwoKTsKK30KKworfQpJbmRl
eDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvQmluZGluZ1N0YXRlLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvQmluZGluZ1N0YXRlLmgJKHJldmlzaW9uIDAp
CisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9CaW5kaW5nU3RhdGUuaAkocmV2aXNpb24g
MCkKQEAgLTAsMCArMSw1NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFy
ZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRo
ZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRv
cnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisg
KiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgQmluZGluZ1N0YXRlX2gKKyNkZWZpbmUgQmluZGlu
Z1N0YXRlX2gKKworI2luY2x1ZGUgPHJ1bnRpbWUvSlNPYmplY3QuaD4KKworbmFtZXNwYWNlIFdl
YkNvcmUgeworCitjbGFzcyBET01XaW5kb3c7CitjbGFzcyBEb2N1bWVudDsKK2NsYXNzIEZyYW1l
OworCit0eXBlZGVmIEpTQzo6RXhlY1N0YXRlIEJpbmRpbmdTdGF0ZTsKKworRE9NV2luZG93KiBh
Y3RpdmVET01XaW5kb3coQmluZGluZ1N0YXRlKik7CitET01XaW5kb3cqIGZpcnN0RE9NV2luZG93
KEJpbmRpbmdTdGF0ZSopOworCisvLyBGSVhNRTogSW1wbGVtZW50IHRoZXNlIGZ1bmN0aW9ucy4K
K2lubGluZSBGcmFtZSogYWN0aXZlRnJhbWUoQmluZGluZ1N0YXRlKikgeyByZXR1cm4gMDsgfQor
aW5saW5lIEZyYW1lKiBmaXJzdEZyYW1lKEJpbmRpbmdTdGF0ZSopIHsgcmV0dXJuIDA7IH0KKwor
aW5saW5lIHZvaWQgaW1tZWRpYXRlbHlSZXBvcnRVbnNhZmVBY2Nlc3NUbyhCaW5kaW5nU3RhdGUq
LCBEb2N1bWVudCopIHsgfQorCit9CisKKyNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCShyZXZpc2lvbiAxMjQ4MjIp
CisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxsSW5PbmUuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNiw2ICsyNiw3IEBACiAvLyBUaGlzIGFsbC1pbi1vbmUgY3BwIGZp
bGUgY3V0cyBkb3duIG9uIHRlbXBsYXRlIGJsb2F0IHRvIGFsbG93IHVzIHRvIGJ1aWxkIG91ciBX
aW5kb3dzIHJlbGVhc2UgYnVpbGQuCiAKICNpbmNsdWRlICJBcnJheVZhbHVlLmNwcCIKKyNpbmNs
dWRlICJCaW5kaW5nU3RhdGUuY3BwIgogI2luY2x1ZGUgIkNhbGxiYWNrRnVuY3Rpb24uY3BwIgog
I2luY2x1ZGUgIkRPTU9iamVjdEhhc2hUYWJsZU1hcC5jcHAiCiAjaW5jbHVkZSAiRE9NV3JhcHBl
cldvcmxkLmNwcCIKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGlu
Zy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5k
aW5nLmNwcAkocmV2aXNpb24gMTI0ODIyKQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01CaW5kaW5nLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjIxLDE2ICsyMjEsNiBAQCB2b2lk
IHNldERPTUV4Y2VwdGlvbihFeGVjU3RhdGUqIGV4ZWMsIEV4CiAKICN1bmRlZiBUUllfVE9fQ1JF
QVRFX0VYQ0VQVElPTgogCi1ET01XaW5kb3cqIGFjdGl2ZURPTVdpbmRvdyhFeGVjU3RhdGUqIGV4
ZWMpCi17Ci0gICAgcmV0dXJuIGFzSlNET01XaW5kb3coZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVj
dCgpKS0+aW1wbCgpOwotfQotCi1ET01XaW5kb3cqIGZpcnN0RE9NV2luZG93KEV4ZWNTdGF0ZSog
ZXhlYykKLXsKLSAgICByZXR1cm4gYXNKU0RPTVdpbmRvdyhleGVjLT5keW5hbWljR2xvYmFsT2Jq
ZWN0KCkpLT5pbXBsKCk7Ci19Ci0KIGJvb2wgc2hvdWxkQWxsb3dBY2Nlc3NUb05vZGUoRXhlY1N0
YXRlKiBleGVjLCBOb2RlKiBub2RlKQogewogICAgIHJldHVybiBub2RlICYmIHNob3VsZEFsbG93
QWNjZXNzVG9GcmFtZShleGVjLCBub2RlLT5kb2N1bWVudCgpLT5mcmFtZSgpKTsKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oCShyZXZpc2lvbiAxMjQ4MjIp
CisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuaAkod29ya2luZyBj
b3B5KQpAQCAtMjIsNiArMjIsNyBAQAogI2lmbmRlZiBKU0RPTUJpbmRpbmdfaAogI2RlZmluZSBK
U0RPTUJpbmRpbmdfaAogCisjaW5jbHVkZSAiQmluZGluZ1N0YXRlLmgiCiAjaW5jbHVkZSAiQ1NT
SW1wb3J0UnVsZS5oIgogI2luY2x1ZGUgIkNTU1N0eWxlRGVjbGFyYXRpb24uaCIKICNpbmNsdWRl
ICJDU1NTdHlsZVNoZWV0LmgiCkBAIC00MDksMTIgKzQxMCw2IEBAIGVudW0gUGFyYW1ldGVyRGVm
YXVsdFBvbGljeSB7CiAgICAgYm9vbCBzaG91bGRBbGxvd0FjY2Vzc1RvRnJhbWUoSlNDOjpFeGVj
U3RhdGUqLCBGcmFtZSosIFN0cmluZyYgbWVzc2FnZSk7CiAgICAgLy8gRklYTUU6IEltcGxlbWVu
dCBhbGxvd0FjY2Vzc1RvRE9NV2luZG93KEpTQzo6RXhlY1N0YXRlKiwgRE9NV2luZG93Kik7CiAK
LSAgICAvLyBGSVhNRTogUmVtb3ZlIHRoZXNlIGZ1bmN0aW9ucyBpbiBmYXZvciBvZiBhY3RpdmVD
b250ZXh0IGFuZAotICAgIC8vIGZpcnN0Q29udGV4dCwgd2hpY2ggcmV0dXJuIFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqLiBXZSBwcmVmZXIgdG8gdXNlCi0gICAgLy8gU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCogYXMgdGhlIGNvbnRleHQgb2JqZWN0IGluIHRoZSBiaW5kaW5ncy4KLSAgICBET01XaW5k
b3cqIGFjdGl2ZURPTVdpbmRvdyhKU0M6OkV4ZWNTdGF0ZSopOwotICAgIERPTVdpbmRvdyogZmly
c3RET01XaW5kb3coSlNDOjpFeGVjU3RhdGUqKTsKLQogICAgIHZvaWQgcHJpbnRFcnJvck1lc3Nh
Z2VGb3JGcmFtZShGcmFtZSosIGNvbnN0IFN0cmluZyYgbWVzc2FnZSk7CiAgICAgSlNDOjpKU1Zh
bHVlIG9iamVjdFRvU3RyaW5nRnVuY3Rpb25HZXR0ZXIoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpT
VmFsdWUsIEpTQzo6UHJvcGVydHlOYW1lKTsKIApJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvdjgvQmluZGluZ1N0YXRlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9CaW5kaW5nU3RhdGUuY3BwCShyZXZpc2lvbiAxMjQ4MjIpCisrKyBTb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NSwx
MiArNTUsMTIgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OkNvbnRleHQ+IGFjdGl2ZUNvbgogICAg
IHJldHVybiB2ODo6Q29udGV4dDo6R2V0RW50ZXJlZCgpOwogfQogCi1ET01XaW5kb3cqIGFjdGl2
ZVdpbmRvdyhCaW5kaW5nU3RhdGUqKQorRE9NV2luZG93KiBhY3RpdmVET01XaW5kb3coQmluZGlu
Z1N0YXRlKikKIHsKICAgICByZXR1cm4gVjhQcm94eTo6cmV0cmlldmVXaW5kb3coYWN0aXZlQ29u
dGV4dCgpKTsKIH0KIAotRE9NV2luZG93KiBmaXJzdFdpbmRvdyhCaW5kaW5nU3RhdGUqKQorRE9N
V2luZG93KiBmaXJzdERPTVdpbmRvdyhCaW5kaW5nU3RhdGUqKQogewogICAgIHJldHVybiBWOFBy
b3h5OjpyZXRyaWV2ZVdpbmRvdyh2ODo6Q29udGV4dDo6R2V0RW50ZXJlZCgpKTsKIH0KSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0JpbmRpbmdTdGF0ZS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0JpbmRpbmdTdGF0ZS5oCShyZXZpc2lvbiAxMjQ4
MjIpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9CaW5kaW5nU3RhdGUuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNDQsOCArNDQsOCBAQCBwdWJsaWM6CiAgICAgc3RhdGljIEJpbmRpbmdTdGF0
ZSogaW5zdGFuY2UoKTsKIH07CiAKLURPTVdpbmRvdyogYWN0aXZlV2luZG93KEJpbmRpbmdTdGF0
ZSopOwotRE9NV2luZG93KiBmaXJzdFdpbmRvdyhCaW5kaW5nU3RhdGUqKTsKK0RPTVdpbmRvdyog
YWN0aXZlRE9NV2luZG93KEJpbmRpbmdTdGF0ZSopOworRE9NV2luZG93KiBmaXJzdERPTVdpbmRv
dyhCaW5kaW5nU3RhdGUqKTsKIAogRnJhbWUqIGFjdGl2ZUZyYW1lKEJpbmRpbmdTdGF0ZSopOwog
RnJhbWUqIGZpcnN0RnJhbWUoQmluZGluZ1N0YXRlKik7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20uY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5jcHAJKHJl
dmlzaW9uIDEyNDgyMikKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERP
TVdpbmRvd0N1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4OSwxMSArMTg5LDExIEBAIHZv
aWQgVjhET01XaW5kb3c6OmxvY2F0aW9uQWNjZXNzb3JTZXR0ZXIKICAgICBET01XaW5kb3cqIGlt
cCA9IFY4RE9NV2luZG93Ojp0b05hdGl2ZShpbmZvLkhvbGRlcigpKTsKICAgICBCaW5kaW5nU3Rh
dGUqIHN0YXRlID0gQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpOwogCi0gICAgRE9NV2luZG93KiBh
Y3RpdmUgPSBhY3RpdmVXaW5kb3coc3RhdGUpOworICAgIERPTVdpbmRvdyogYWN0aXZlID0gYWN0
aXZlRE9NV2luZG93KHN0YXRlKTsKICAgICBpZiAoIWFjdGl2ZSkKICAgICAgIHJldHVybjsKIAot
ICAgIERPTVdpbmRvdyogZmlyc3QgPSBmaXJzdFdpbmRvdyhzdGF0ZSk7CisgICAgRE9NV2luZG93
KiBmaXJzdCA9IGZpcnN0RE9NV2luZG93KHN0YXRlKTsKICAgICBpZiAoIWZpcnN0KQogICAgICAg
cmV0dXJuOwogCkBAIC0zMDAsNyArMzAwLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiBoYW5kbGVQb3N0TQogICAgIC8vIE5vbmUgb2YgdGhlc2UgbmVlZCB0byBiZSBSZWZQdHIgYmVj
YXVzZSBhcmdzIGFuZCBjb250ZXh0IGFyZSBndWFyYW50ZWVkCiAgICAgLy8gdG8gaG9sZCBvbiB0
byB0aGVtLgogICAgIERPTVdpbmRvdyogd2luZG93ID0gVjhET01XaW5kb3c6OnRvTmF0aXZlKGFy
Z3MuSG9sZGVyKCkpOwotICAgIERPTVdpbmRvdyogc291cmNlID0gYWN0aXZlV2luZG93KEJpbmRp
bmdTdGF0ZTo6aW5zdGFuY2UoKSk7CisgICAgRE9NV2luZG93KiBzb3VyY2UgPSBhY3RpdmVET01X
aW5kb3coQmluZGluZ1N0YXRlOjppbnN0YW5jZSgpKTsKIAogICAgIC8vIElmIGNhbGxlZCBkaXJl
Y3RseSBieSBXZWJDb3JlIHdlIGRvbid0IGhhdmUgYSBjYWxsaW5nIGNvbnRleHQuCiAgICAgaWYg
KCFzb3VyY2UpCkBAIC00NDEsNyArNDQxLDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4RE9N
V2luZG93OjpzaG93TQogICAgIERpYWxvZ0hhbmRsZXIgaGFuZGxlcihhcmdzWzFdKTsKICAgICBT
dHJpbmcgZGlhbG9nRmVhdHVyZXNTdHJpbmcgPSB0b1dlYkNvcmVTdHJpbmdXaXRoTnVsbE9yVW5k
ZWZpbmVkQ2hlY2soYXJnc1syXSk7CiAKLSAgICBpbXBsLT5zaG93TW9kYWxEaWFsb2codXJsU3Ry
aW5nLCBkaWFsb2dGZWF0dXJlc1N0cmluZywgYWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5k
b3coc3RhdGUpLCBzZXRVcERpYWxvZywgJmhhbmRsZXIpOworICAgIGltcGwtPnNob3dNb2RhbERp
YWxvZyh1cmxTdHJpbmcsIGRpYWxvZ0ZlYXR1cmVzU3RyaW5nLCBhY3RpdmVET01XaW5kb3coc3Rh
dGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSksIHNldFVwRGlhbG9nLCAmaGFuZGxlcik7CiAKICAg
ICByZXR1cm4gaGFuZGxlci5yZXR1cm5WYWx1ZSgpOwogfQpAQCAtNDU5LDcgKzQ1OSw3IEBAIHY4
OjpIYW5kbGU8djg6OlZhbHVlPiBWOERPTVdpbmRvdzo6b3BlbkMKICAgICBBdG9taWNTdHJpbmcg
ZnJhbWVOYW1lID0gKGFyZ3NbMV0tPklzVW5kZWZpbmVkKCkgfHwgYXJnc1sxXS0+SXNOdWxsKCkp
ID8gIl9ibGFuayIgOiBBdG9taWNTdHJpbmcodG9XZWJDb3JlU3RyaW5nKGFyZ3NbMV0pKTsKICAg
ICBTdHJpbmcgd2luZG93RmVhdHVyZXNTdHJpbmcgPSB0b1dlYkNvcmVTdHJpbmdXaXRoTnVsbE9y
VW5kZWZpbmVkQ2hlY2soYXJnc1syXSk7CiAKLSAgICBSZWZQdHI8RE9NV2luZG93PiBvcGVuZWRX
aW5kb3cgPSBpbXBsLT5vcGVuKHVybFN0cmluZywgZnJhbWVOYW1lLCB3aW5kb3dGZWF0dXJlc1N0
cmluZywgYWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBSZWZQ
dHI8RE9NV2luZG93PiBvcGVuZWRXaW5kb3cgPSBpbXBsLT5vcGVuKHVybFN0cmluZywgZnJhbWVO
YW1lLCB3aW5kb3dGZWF0dXJlc1N0cmluZywgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RE
T01XaW5kb3coc3RhdGUpKTsKICAgICBpZiAoIW9wZW5lZFdpbmRvdykKICAgICAgICAgcmV0dXJu
IHY4OjpVbmRlZmluZWQoKTsKIApJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4RG9jdW1lbnRMb2NhdGlvbkN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RG9jdW1lbnRMb2NhdGlvbkN1c3RvbS5jcHAJKHJl
dmlzaW9uIDEyNDgyMikKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERv
Y3VtZW50TG9jYXRpb25DdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01MiwxMSArNTIsMTEg
QEAgdm9pZCBWOERvY3VtZW50Ojpsb2NhdGlvbkFjY2Vzc29yU2V0dGVyKAogCiAgICAgQmluZGlu
Z1N0YXRlKiBzdGF0ZSA9IEJpbmRpbmdTdGF0ZTo6aW5zdGFuY2UoKTsKIAotICAgIERPTVdpbmRv
dyogYWN0aXZlID0gYWN0aXZlV2luZG93KHN0YXRlKTsKKyAgICBET01XaW5kb3cqIGFjdGl2ZSA9
IGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSk7CiAgICAgaWYgKCFhY3RpdmUpCiAgICAgICAgIHJldHVy
bjsKIAotICAgIERPTVdpbmRvdyogZmlyc3QgPSBmaXJzdFdpbmRvdyhzdGF0ZSk7CisgICAgRE9N
V2luZG93KiBmaXJzdCA9IGZpcnN0RE9NV2luZG93KHN0YXRlKTsKICAgICBpZiAoIWZpcnN0KQog
ICAgICAgICByZXR1cm47CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3Rv
bS9WOExvY2F0aW9uQ3VzdG9tLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9jdXN0b20vVjhMb2NhdGlvbkN1c3RvbS5jcHAJKHJldmlzaW9uIDEyNDgyMikKKysr
IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOExvY2F0aW9uQ3VzdG9tLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtNTUsNyArNTUsNyBAQCB2b2lkIFY4TG9jYXRpb246Omhhc2hBY2Nl
c3NvclNldHRlcih2ODo6CiAgICAgLy8gRklYTUU6IEhhbmRsZSBleGNlcHRpb25zIGNvcnJlY3Rs
eS4KICAgICBTdHJpbmcgaGFzaCA9IHRvV2ViQ29yZVN0cmluZyh2YWx1ZSk7CiAKLSAgICBpbXBs
LT5zZXRIYXNoKGhhc2gsIGFjdGl2ZVdpbmRvdyhzdGF0ZSksIGZpcnN0V2luZG93KHN0YXRlKSk7
CisgICAgaW1wbC0+c2V0SGFzaChoYXNoLCBhY3RpdmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERP
TVdpbmRvdyhzdGF0ZSkpOwogfQogCiB2b2lkIFY4TG9jYXRpb246Omhvc3RBY2Nlc3NvclNldHRl
cih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUs
IGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCkBAIC02Nyw3ICs2Nyw3IEBAIHZvaWQgVjhM
b2NhdGlvbjo6aG9zdEFjY2Vzc29yU2V0dGVyKHY4OjoKICAgICAvLyBGSVhNRTogSGFuZGxlIGV4
Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBob3N0ID0gdG9XZWJDb3JlU3RyaW5nKHZh
bHVlKTsKIAotICAgIGltcGwtPnNldEhvc3QoaG9zdCwgYWN0aXZlV2luZG93KHN0YXRlKSwgZmly
c3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5zZXRIb3N0KGhvc3QsIGFjdGl2ZURPTVdpbmRv
dyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSk7CiB9CiAKIHZvaWQgVjhMb2NhdGlvbjo6
aG9zdG5hbWVBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwgdjg6Okxv
Y2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8pCkBAIC03
OSw3ICs3OSw3IEBAIHZvaWQgVjhMb2NhdGlvbjo6aG9zdG5hbWVBY2Nlc3NvclNldHRlcigKICAg
ICAvLyBGSVhNRTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBob3N0
bmFtZSA9IHRvV2ViQ29yZVN0cmluZyh2YWx1ZSk7CiAKLSAgICBpbXBsLT5zZXRIb3N0bmFtZSho
b3N0bmFtZSwgYWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBp
bXBsLT5zZXRIb3N0bmFtZShob3N0bmFtZSwgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmlyc3RE
T01XaW5kb3coc3RhdGUpKTsKIH0KIAogdm9pZCBWOExvY2F0aW9uOjpocmVmQWNjZXNzb3JTZXR0
ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZhbHVl
LCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpAQCAtOTEsNyArOTEsNyBAQCB2b2lkIFY4
TG9jYXRpb246OmhyZWZBY2Nlc3NvclNldHRlcih2ODo6CiAgICAgLy8gRklYTUU6IEhhbmRsZSBl
eGNlcHRpb25zIGNvcnJlY3RseS4KICAgICBTdHJpbmcgaHJlZiA9IHRvV2ViQ29yZVN0cmluZyh2
YWx1ZSk7CiAKLSAgICBpbXBsLT5zZXRIcmVmKGhyZWYsIGFjdGl2ZVdpbmRvdyhzdGF0ZSksIGZp
cnN0V2luZG93KHN0YXRlKSk7CisgICAgaW1wbC0+c2V0SHJlZihocmVmLCBhY3RpdmVET01XaW5k
b3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkpOwogfQogCiB2b2lkIFY4TG9jYXRpb246
OnBhdGhuYW1lQWNjZXNzb3JTZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpM
b2NhbDx2ODo6VmFsdWU+IHZhbHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpAQCAt
MTAzLDcgKzEwMyw3IEBAIHZvaWQgVjhMb2NhdGlvbjo6cGF0aG5hbWVBY2Nlc3NvclNldHRlcigK
ICAgICAvLyBGSVhNRTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBw
YXRobmFtZSA9IHRvV2ViQ29yZVN0cmluZyh2YWx1ZSk7CiAKLSAgICBpbXBsLT5zZXRQYXRobmFt
ZShwYXRobmFtZSwgYWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAg
ICBpbXBsLT5zZXRQYXRobmFtZShwYXRobmFtZSwgYWN0aXZlRE9NV2luZG93KHN0YXRlKSwgZmly
c3RET01XaW5kb3coc3RhdGUpKTsKIH0KIAogdm9pZCBWOExvY2F0aW9uOjpwb3J0QWNjZXNzb3JT
ZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIHY4OjpMb2NhbDx2ODo6VmFsdWU+IHZh
bHVlLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvKQpAQCAtMTE1LDcgKzExNSw3IEBAIHZv
aWQgVjhMb2NhdGlvbjo6cG9ydEFjY2Vzc29yU2V0dGVyKHY4OjoKICAgICAvLyBGSVhNRTogSGFu
ZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBwb3J0ID0gdG9XZWJDb3JlU3Ry
aW5nKHZhbHVlKTsKIAotICAgIGltcGwtPnNldFBvcnQocG9ydCwgYWN0aXZlV2luZG93KHN0YXRl
KSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5zZXRQb3J0KHBvcnQsIGFjdGl2ZURP
TVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2luZG93KHN0YXRlKSk7CiB9CiAKIHZvaWQgVjhMb2Nh
dGlvbjo6cHJvdG9jb2xBY2Nlc3NvclNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwg
djg6OkxvY2FsPHY4OjpWYWx1ZT4gdmFsdWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8p
CkBAIC0xMjgsNyArMTI4LDcgQEAgdm9pZCBWOExvY2F0aW9uOjpwcm90b2NvbEFjY2Vzc29yU2V0
dGVyKAogICAgIFN0cmluZyBwcm90b2NvbCA9IHRvV2ViQ29yZVN0cmluZyh2YWx1ZSk7CiAKICAg
ICBFeGNlcHRpb25Db2RlIGVjID0gMDsKLSAgICBpbXBsLT5zZXRQcm90b2NvbChwcm90b2NvbCwg
YWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpLCBlYyk7CisgICAgaW1wbC0+
c2V0UHJvdG9jb2wocHJvdG9jb2wsIGFjdGl2ZURPTVdpbmRvdyhzdGF0ZSksIGZpcnN0RE9NV2lu
ZG93KHN0YXRlKSwgZWMpOwogICAgIGlmIChVTkxJS0VMWShlYykpCiAgICAgICAgIFY4UHJveHk6
OnNldERPTUV4Y2VwdGlvbihlYywgaW5mby5HZXRJc29sYXRlKCkpOwogfQpAQCAtMTQyLDcgKzE0
Miw3IEBAIHZvaWQgVjhMb2NhdGlvbjo6c2VhcmNoQWNjZXNzb3JTZXR0ZXIodjgKICAgICAvLyBG
SVhNRTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVjdGx5LgogICAgIFN0cmluZyBzZWFyY2ggPSB0
b1dlYkNvcmVTdHJpbmcodmFsdWUpOwogCi0gICAgaW1wbC0+c2V0U2VhcmNoKHNlYXJjaCwgYWN0
aXZlV2luZG93KHN0YXRlKSwgZmlyc3RXaW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5zZXRTZWFy
Y2goc2VhcmNoLCBhY3RpdmVET01XaW5kb3coc3RhdGUpLCBmaXJzdERPTVdpbmRvdyhzdGF0ZSkp
OwogfQogCiB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhMb2NhdGlvbjo6cmVsb2FkQWNjZXNzb3JH
ZXR0ZXIodjg6OkxvY2FsPHY4OjpTdHJpbmc+IG5hbWUsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8m
IGluZm8pCkBAIC0yMDYsNyArMjA2LDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4TG9jYXRp
b246OnJlbG9hZAogICAgIExvY2F0aW9uKiBpbXBsID0gVjhMb2NhdGlvbjo6dG9OYXRpdmUoYXJn
cy5Ib2xkZXIoKSk7CiAgICAgQmluZGluZ1N0YXRlKiBzdGF0ZSA9IEJpbmRpbmdTdGF0ZTo6aW5z
dGFuY2UoKTsKIAotICAgIGltcGwtPnJlbG9hZChhY3RpdmVXaW5kb3coc3RhdGUpKTsKKyAgICBp
bXBsLT5yZWxvYWQoYWN0aXZlRE9NV2luZG93KHN0YXRlKSk7CiAgICAgcmV0dXJuIHY4OjpVbmRl
ZmluZWQoKTsKIH0KIApAQCAtMjE5LDcgKzIxOSw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBW
OExvY2F0aW9uOjpyZXBsYWMKICAgICAvLyBGSVhNRTogSGFuZGxlIGV4Y2VwdGlvbnMgY29ycmVj
dGx5LgogICAgIFN0cmluZyB1cmxTdHJpbmcgPSB0b1dlYkNvcmVTdHJpbmcoYXJnc1swXSk7CiAK
LSAgICBpbXBsLT5yZXBsYWNlKHVybFN0cmluZywgYWN0aXZlV2luZG93KHN0YXRlKSwgZmlyc3RX
aW5kb3coc3RhdGUpKTsKKyAgICBpbXBsLT5yZXBsYWNlKHVybFN0cmluZywgYWN0aXZlRE9NV2lu
ZG93KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUpKTsKICAgICByZXR1cm4gdjg6OlVuZGVm
aW5lZCgpOwogfQogCkBAIC0yMzIsNyArMjMyLDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4
TG9jYXRpb246OmFzc2lnbgogICAgIC8vIEZJWE1FOiBIYW5kbGUgZXhjZXB0aW9ucyBjb3JyZWN0
bHkuCiAgICAgU3RyaW5nIHVybFN0cmluZyA9IHRvV2ViQ29yZVN0cmluZyhhcmdzWzBdKTsKIAot
ICAgIGltcGwtPmFzc2lnbih1cmxTdHJpbmcsIGFjdGl2ZVdpbmRvdyhzdGF0ZSksIGZpcnN0V2lu
ZG93KHN0YXRlKSk7CisgICAgaW1wbC0+YXNzaWduKHVybFN0cmluZywgYWN0aXZlRE9NV2luZG93
KHN0YXRlKSwgZmlyc3RET01XaW5kb3coc3RhdGUpKTsKICAgICByZXR1cm4gdjg6OlVuZGVmaW5l
ZCgpOwogfQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>