<?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>35368</bug_id>
          
          <creation_ts>2010-02-24 16:57:32 -0800</creation_ts>
          <short_desc>Frame should use SelectionController&apos;s TextGranularity instead of its own</short_desc>
          <delta_ts>2010-03-19 10:36:01 -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>HTML Editing</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</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>35314</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ojan Vafai">ojan</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>darin</cc>
    
    <cc>enrica</cc>
    
    <cc>eric</cc>
    
    <cc>mitz</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>193561</commentid>
    <comment_count>0</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-02-24 16:57:32 -0800</bug_when>
    <thetext>Frame should use SelectionController&apos;s TextGranularity instead of it&apos;s own</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193562</commentid>
    <comment_count>1</comment_count>
      <attachid>49451</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-02-24 17:01:47 -0800</bug_when>
    <thetext>Created attachment 49451
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193597</commentid>
    <comment_count>2</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-02-24 18:42:10 -0800</bug_when>
    <thetext>Your changelog says there is no functionality change but it seems like a lot of tests are changing their results.  Is there a way you can construct this patch such that results don&apos;t change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193605</commentid>
    <comment_count>3</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-02-24 19:37:25 -0800</bug_when>
    <thetext>All the changes in test results are either extraneous &quot;webViewDidChangeSelection:WebViewDidChangeSelectionNotification&quot; or selection changes from one range to the *same* range, at least according to what editing delegate dumps. I don&apos;t really understand why this change affects affects those.

I went through each of these tests and manually verified that the user-visible behavior is the same with and without the patch, hence my comment that there&apos;s no functionality change. I came to the conclusion that it&apos;s just a quirk of how we dump editing delegate info. That&apos;s just a guess though. 

I can spend some time tomorrow trying to understand where the extra notifications are coming from.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194120</commentid>
    <comment_count>4</comment_count>
      <attachid>49451</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-02-26 08:37:36 -0800</bug_when>
    <thetext>Comment on attachment 49451
Patch

I am going to r-. A patch which claims no change should not change test behavior, especially if it cannot be fully explained.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194847</commentid>
    <comment_count>5</comment_count>
      <attachid>49759</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-03-01 15:38:24 -0800</bug_when>
    <thetext>Created attachment 49759
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195373</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-03-02 20:54:28 -0800</bug_when>
    <thetext>With this patch, a shouldChangeSelectedDOMRange delegate method is being called, but a subsequent webViewDidChangeSelection one no longer is. This is quite suspicious, and perhaps it violates what can be considered an invariant in the API.

VisibleSelection is a member if EditCommand, used for restoring selection after undo/redo. This patch looks like it actually changes behavior, so that selection granularity isn&apos;t restored. Is this indeed the case?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195854</commentid>
    <comment_count>7</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-03-03 18:45:49 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; With this patch, a shouldChangeSelectedDOMRange delegate method is being
&gt; called, but a subsequent webViewDidChangeSelection one no longer is. This is
&gt; quite suspicious, and perhaps it violates what can be considered an invariant
&gt; in the API.

OK. I&apos;ll look into this more.

&gt; VisibleSelection is a member if EditCommand, used for restoring selection after
&gt; undo/redo. This patch looks like it actually changes behavior, so that
&gt; selection granularity isn&apos;t restored. Is this indeed the case?

I didn&apos;t think about this case. It turns out that our current behavior doesn&apos;t match TextEdit anyways. TextEdit, as best I can tell, always uses CharacterGranularity after an undo, but it selects the space that got smart deleted. I&apos;ve filed a patch at bug 35713 to fix that. Then this problem goes away. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195855</commentid>
    <comment_count>8</comment_count>
      <attachid>49759</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-03-03 18:46:36 -0800</bug_when>
    <thetext>Comment on attachment 49759
Patch

r- until bug 35713 is resolved and the other issue AP brought up is addressed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>196180</commentid>
    <comment_count>9</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-03-04 12:08:02 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; (In reply to comment #6)
&gt; &gt; With this patch, a shouldChangeSelectedDOMRange delegate method is being
&gt; &gt; called, but a subsequent webViewDidChangeSelection one no longer is. This is
&gt; &gt; quite suspicious, and perhaps it violates what can be considered an invariant
&gt; &gt; in the API.
&gt; 
&gt; OK. I&apos;ll look into this more.

This is not currently an invariant of the API. Anytime SelectionController::setSelection early returns, we&apos;d see this mismatch. In this case, this patch hits an early return at line 141 of SelectionController.cpp. Since the granularity is no longer a member of the VisibleSelection, the selection itself is not actually changing.

I&apos;m attaching an example test that also has this mismatch and hits the same early return on a clean trunk build (single click in the same spot twice).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>196181</commentid>
    <comment_count>10</comment_count>
      <attachid>50046</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-03-04 12:08:44 -0800</bug_when>
    <thetext>Created attachment 50046
mistmatched editing callbacks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>196182</commentid>
    <comment_count>11</comment_count>
      <attachid>49759</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-03-04 12:09:43 -0800</bug_when>
    <thetext>Comment on attachment 49759
Patch

Marking for review again as the callback concern has been addressed and the undo concern will be addressed once bug 35713 is resolved.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>196274</commentid>
    <comment_count>12</comment_count>
      <attachid>49759</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2010-03-04 17:09:20 -0800</bug_when>
    <thetext>Comment on attachment 49759
Patch

I&apos;ve rolled this patch into the fix for bug 35314 since that patch would remove many of the lines added in this one. I&apos;ll close the bug once bug 35314 is resolved.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>49451</attachid>
            <date>2010-02-24 17:01:47 -0800</date>
            <delta_ts>2010-03-01 15:38:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-35368-20100224170146.patch</filename>
            <type>text/plain</type>
            <size>43071</size>
            <attacher name="Ojan Vafai">ojan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA1ZWJmMjA3Li4wODE4NmM2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTAtMDIt
MjQgIE9qYW4gVmFmYWkgIDxvamFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGcmFtZSBzaG91bGQgdXNlIFNlbGVjdGlvbkNv
bnRyb2xsZXIncyBUZXh0R3JhbnVsYXJpdHkgaW5zdGVhZCBvZiBpdCdzIG93bgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzUzNjgKKworICAgICAgICAq
IGVkaXRpbmcvc2VsZWN0aW9uL2FmdGVyLWxpbmUtYnJlYWstZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHBsYXRmb3JtL21hYy9lZGl0aW5nL2RlbGV0aW5nL2RlbGV0ZS1hdC1wYXJhZ3JhcGgtYm91
bmRhcmllcy0wMTEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL21hYy9lZGl0aW5n
L2RlbGV0aW5nL2RlbGV0ZS1ici0wMTEtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3Jt
L21hYy9lZGl0aW5nL2RlbGV0aW5nL21lcmdlLWVuZE9mUGFyYWdyYXBoLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvZWRpdGluZy9pbnNlcnRpbmcvaW5zZXJ0LWF0LWVuZC0w
MS1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL2VkaXRpbmcvaW5zZXJ0aW5n
L2luc2VydC1hdC1lbmQtMDItZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL21hYy9l
ZGl0aW5nL3Bhc3RlYm9hcmQvYmxvY2std3JhcHBlcnMtbmVjZXNzYXJ5LWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvZWRpdGluZy9wYXN0ZWJvYXJkL2VtYWNzLWN0cmwtYS1r
LXktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHBsYXRmb3JtL21hYy9lZGl0aW5nL3Bhc3RlYm9h
cmQvZW1hY3MtY3RybC1rLXktMDAxLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9t
YWMvZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLTQwMzk3NzctZml4LWV4cGVjdGVkLnR4dDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9tYWMvZWRpdGluZy9zZWxlY3Rpb24vMzY5MDcwMy1leHBlY3RlZC50
eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL2VkaXRpbmcvc2VsZWN0aW9uLzQ5MzIyNjAtMS1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL2VkaXRpbmcvc2VsZWN0aW9uL2xl
YXZlLXJlcXVlc3RlZC1ibG9jay1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFj
L2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC0wMDEtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIHBsYXRmb3JtL21hYy9lZGl0aW5nL3N0eWxlL2Jsb2NrLXN0eWxlLTAwNS1leHBlY3RlZC50
eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL2VkaXRpbmcvc3R5bGUvYmxvY2stc3R5bGUtMDA2
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvZWRpdGluZy9zdHlsZS9jcmVh
dGUtYmxvY2stZm9yLXN0eWxlLTAwOC1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0v
bWFjL2VkaXRpbmcvc3R5bGUvcmVsYXRpdmUtZm9udC1zaXplLWNoYW5nZS0wMDMtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIHBsYXRmb3JtL21hYy9lZGl0aW5nL3N0eWxlL3JlbGF0aXZlLWZvbnQt
c2l6ZS1jaGFuZ2UtMDA0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvZWRp
dGluZy9zdHlsZS90YWJsZS1zZWxlY3Rpb24tZXhwZWN0ZWQudHh0OgorCiAyMDEwLTAyLTI0ICBE
YW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQW5k
ZXJzIENhcmxzc29uLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24v
YWZ0ZXItbGluZS1icmVhay1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVj
dGlvbi9hZnRlci1saW5lLWJyZWFrLWV4cGVjdGVkLnR4dAppbmRleCBlZTBjZjAwLi40MzU4MDli
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9hZnRlci1saW5lLWJy
ZWFrLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9hZnRl
ci1saW5lLWJyZWFrLWV4cGVjdGVkLnR4dApAQCAtNCw2ICs0LDcgQEAgRURJVElORyBERUxFR0FU
RTogc2hvdWxkQ2hhbmdlU2VsZWN0ZWRET01SYW5nZToobnVsbCkgdG9ET01SYW5nZTpyYW5nZSBm
cm9tIDUgb2YKIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2Vi
Vmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTogd2Vi
Vmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0
aW9uCiBFRElUSU5HIERFTEVHQVRFOiBzaG91bGRDaGFuZ2VTZWxlY3RlZERPTVJhbmdlOnJhbmdl
IGZyb20gNiBvZiAjdGV4dCA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvIDYgb2Yg
I3RleHQgPiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudCB0b0RPTVJhbmdlOnJhbmdlIGZy
b20gNiBvZiAjdGV4dCA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvIDYgb2YgI3Rl
eHQgPiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudCBhZmZpbml0eTpOU1NlbGVjdGlvbkFm
ZmluaXR5RG93bnN0cmVhbSBzdGlsbFNlbGVjdGluZzpGQUxTRQorRURJVElORyBERUxFR0FURTog
d2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZp
Y2F0aW9uCiBUZXN0IGZvciByZGFyOi8vcHJvYmxlbS81OTczMzEzIFJFR1JFU1NJT04gKHIzMjUw
OCk6IERvd24gYXJyb3cgZG9lc24ndCBjaGFuZ2UgY2FyZXQgd2l0aCBub24tdXNlciBlbnRlcmVk
IG5ld2xpbmVzIGluIHRleHRhcmVhcy4KIAogVG8gdGVzdCBtYW51YWxseSwgY2xpY2sgdG8gdGhl
IHJpZ2h0IG9mIHRoZSBmaXJzdCB3b3JkIG9uIHRoZSBmaXJzdCBsaW5lIHRvIHBsYWNlIHRoZSBj
YXJldCBhdCB0aGUgZW5kIG9mIHRoZSBsaW5lLCB0aGVuIHByZXNzIHRoZSBkb3duIGFycm93LiBU
aGUgY2FyZXQgc2hvdWxkIG1vdmUgdG8gdGhlIG5leHQgKGVtcHR5KSBsaW5lLiBUaGVuIGNsaWNr
IHNvbWV3aGVyZSBvbiB0aGF0IGxpbmUuIFRoZSBjYXJldCBzaG91bGQgbm90IHN0YXkgdGhlcmUu
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9kZWxldGluZy9k
ZWxldGUtYXQtcGFyYWdyYXBoLWJvdW5kYXJpZXMtMDExLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL2RlbGV0aW5nL2RlbGV0ZS1hdC1wYXJhZ3JhcGgtYm91
bmRhcmllcy0wMTEtZXhwZWN0ZWQudHh0CmluZGV4IDIzNmVhNDcuLmJhMmYxNWEgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL2RlbGV0aW5nL2RlbGV0ZS1hdC1w
YXJhZ3JhcGgtYm91bmRhcmllcy0wMTEtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9lZGl0aW5nL2RlbGV0aW5nL2RlbGV0ZS1hdC1wYXJhZ3JhcGgtYm91bmRhcmll
cy0wMTEtZXhwZWN0ZWQudHh0CkBAIC0zLDYgKzMsNyBAQCBFRElUSU5HIERFTEVHQVRFOiB3ZWJW
aWV3RGlkQmVnaW5FZGl0aW5nOldlYlZpZXdEaWRCZWdpbkVkaXRpbmdOb3RpZmljYXRpb24KIEVE
SVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5n
ZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5n
ZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBFRElUSU5H
IERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxl
Y3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxl
Y3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgogRURJVElORyBERUxF
R0FURTogc2hvdWxkRGVsZXRlRE9NUmFuZ2U6cmFuZ2UgZnJvbSAwIG9mIFAgPiBESVYgPiBCT0RZ
ID4gSFRNTCA+ICNkb2N1bWVudCB0byAyIG9mIERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50
CiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRD
aGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHNob3VsZENoYW5n
ZVNlbGVjdGVkRE9NUmFuZ2U6KG51bGwpIHRvRE9NUmFuZ2U6cmFuZ2UgZnJvbSAwIG9mIFAgPiBE
SVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudCB0byAwIG9mIFAgPiBESVYgPiBCT0RZID4gSFRN
TCA+ICNkb2N1bWVudCBhZmZpbml0eTpOU1NlbGVjdGlvbkFmZmluaXR5RG93bnN0cmVhbSBzdGls
bFNlbGVjdGluZzpGQUxTRQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Vk
aXRpbmcvZGVsZXRpbmcvZGVsZXRlLWJyLTAxMS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMvZWRpdGluZy9kZWxldGluZy9kZWxldGUtYnItMDExLWV4cGVjdGVkLnR4dApp
bmRleCA5NTkyM2IwLi5jOTlhYzBkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvZWRpdGluZy9kZWxldGluZy9kZWxldGUtYnItMDExLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9kZWxldGluZy9kZWxldGUtYnItMDExLWV4cGVj
dGVkLnR4dApAQCAtMiw2ICsyLDEwIEBAIEVESVRJTkcgREVMRUdBVEU6IHNob3VsZEJlZ2luRWRp
dGluZ0luRE9NUmFuZ2U6cmFuZ2UgZnJvbSAwIG9mIEJPRFkgPiBIVE1MID4gI2RvCiBFRElUSU5H
IERFTEVHQVRFOiB3ZWJWaWV3RGlkQmVnaW5FZGl0aW5nOldlYlZpZXdEaWRCZWdpbkVkaXRpbmdO
b3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246
V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTog
d2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZp
Y2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZp
ZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZp
ZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlv
bgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlk
Q2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlk
Q2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVE
SVRJTkcgREVMRUdBVEU6IHNob3VsZERlbGV0ZURPTVJhbmdlOnJhbmdlIGZyb20gMCBvZiBESVYg
PiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudCB0byAyIG9mIEJPRFkgPiBIVE1MID4gI2RvY3VtZW50
CiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRD
aGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHNob3VsZENoYW5n
ZVNlbGVjdGVkRE9NUmFuZ2U6KG51bGwpIHRvRE9NUmFuZ2U6cmFuZ2UgZnJvbSAwIG9mIERJViA+
IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvIDAgb2YgRElWID4gQk9EWSA+IEhUTUwgPiAjZG9j
dW1lbnQgYWZmaW5pdHk6TlNTZWxlY3Rpb25BZmZpbml0eURvd25zdHJlYW0gc3RpbGxTZWxlY3Rp
bmc6RkFMU0UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL2Rl
bGV0aW5nL21lcmdlLWVuZE9mUGFyYWdyYXBoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9lZGl0aW5nL2RlbGV0aW5nL21lcmdlLWVuZE9mUGFyYWdyYXBoLWV4cGVjdGVk
LnR4dAppbmRleCBmOTljNjY3Li41NTg0ZGJkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMvZWRpdGluZy9kZWxldGluZy9tZXJnZS1lbmRPZlBhcmFncmFwaC1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvZGVsZXRpbmcvbWVyZ2Ut
ZW5kT2ZQYXJhZ3JhcGgtZXhwZWN0ZWQudHh0CkBAIC0zLDYgKzMsNyBAQCBFRElUSU5HIERFTEVH
QVRFOiB3ZWJWaWV3RGlkQmVnaW5FZGl0aW5nOldlYlZpZXdEaWRCZWdpbkVkaXRpbmdOb3RpZmlj
YXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmll
d0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTogd2ViVmll
d0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9u
CiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRD
aGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRD
aGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgogRURJ
VElORyBERUxFR0FURTogc2hvdWxkRGVsZXRlRE9NUmFuZ2U6cmFuZ2UgZnJvbSAwIG9mICN0ZXh0
ID4gRElWID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgdG8gMyBvZiAjdGV4dCA+IERJ
ViA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50CiBFRElUSU5HIERFTEVHQVRFOiB3ZWJW
aWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRp
b24KIEVESVRJTkcgREVMRUdBVEU6IHNob3VsZENoYW5nZVNlbGVjdGVkRE9NUmFuZ2U6KG51bGwp
IHRvRE9NUmFuZ2U6cmFuZ2UgZnJvbSAwIG9mIERJViA+IERJViA+IEJPRFkgPiBIVE1MID4gI2Rv
Y3VtZW50IHRvIDAgb2YgRElWID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgYWZmaW5p
dHk6TlNTZWxlY3Rpb25BZmZpbml0eURvd25zdHJlYW0gc3RpbGxTZWxlY3Rpbmc6RkFMU0UKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL2luc2VydGluZy9pbnNl
cnQtYXQtZW5kLTAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0
aW5nL2luc2VydGluZy9pbnNlcnQtYXQtZW5kLTAxLWV4cGVjdGVkLnR4dAppbmRleCBhOTE4NGNm
Li41OGM3NzAxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9p
bnNlcnRpbmcvaW5zZXJ0LWF0LWVuZC0wMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL2VkaXRpbmcvaW5zZXJ0aW5nL2luc2VydC1hdC1lbmQtMDEtZXhwZWN0ZWQu
dHh0CkBAIC00LDYgKzQsOCBAQCBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2Vs
ZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpbwogRURJVElORyBERUxF
R0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9u
Tm90aWZpY2F0aW9uCiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9u
OldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6
IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlm
aWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJW
aWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJW
aWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRp
b24KIEVESVRJTkcgREVMRUdBVEU6IHNob3VsZENoYW5nZVNlbGVjdGVkRE9NUmFuZ2U6KG51bGwp
IHRvRE9NUmFuZ2U6cmFuZ2UgZnJvbSAxIG9mICN0ZXh0ID4gRElWID4gQk9EWSA+IEhUTUwgPiAj
ZG9jdW1lbnQgdG8gMSBvZiAjdGV4dCA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IGFm
ZmluaXR5Ok5TU2VsZWN0aW9uQWZmaW5pdHlEb3duc3RyZWFtIHN0aWxsU2VsZWN0aW5nOkZBTFNF
CiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRD
aGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRD
aGFuZ2U6V2ViVmlld0RpZENoYW5nZU5vdGlmaWNhdGlvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvaW5zZXJ0aW5nL2luc2VydC1hdC1lbmQtMDItZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvaW5zZXJ0aW5nL2luc2Vy
dC1hdC1lbmQtMDItZXhwZWN0ZWQudHh0CmluZGV4IGE3ZDEyYmQuLmQ2MzdlNGUgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL2luc2VydGluZy9pbnNlcnQtYXQt
ZW5kLTAyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGlu
Zy9pbnNlcnRpbmcvaW5zZXJ0LWF0LWVuZC0wMi1leHBlY3RlZC50eHQKQEAgLTQsNiArNCw4IEBA
IEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENo
YW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvCiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hh
bmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVESVRJ
TkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNl
bGVjdGlvbk5vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNl
bGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERF
TEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rp
b25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rp
b246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FU
RTogc2hvdWxkQ2hhbmdlU2VsZWN0ZWRET01SYW5nZToobnVsbCkgdG9ET01SYW5nZTpyYW5nZSBm
cm9tIDEgb2YgI3RleHQgPiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudCB0byAxIG9mICN0
ZXh0ID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgYWZmaW5pdHk6TlNTZWxlY3Rpb25B
ZmZpbml0eURvd25zdHJlYW0gc3RpbGxTZWxlY3Rpbmc6RkFMU0UKIEVESVRJTkcgREVMRUdBVEU6
IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlm
aWNhdGlvbgogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZTpXZWJWaWV3RGlkQ2hh
bmdlTm90aWZpY2F0aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRp
dGluZy9wYXN0ZWJvYXJkL2Jsb2NrLXdyYXBwZXJzLW5lY2Vzc2FyeS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9wYXN0ZWJvYXJkL2Jsb2NrLXdyYXBwZXJz
LW5lY2Vzc2FyeS1leHBlY3RlZC50eHQKaW5kZXggNzE0M2UwNC4uODRlMTUwNiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvcGFzdGVib2FyZC9ibG9jay13cmFw
cGVycy1uZWNlc3NhcnktZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9lZGl0aW5nL3Bhc3RlYm9hcmQvYmxvY2std3JhcHBlcnMtbmVjZXNzYXJ5LWV4cGVjdGVkLnR4
dApAQCAtNyw2ICs3LDEwIEBAIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxl
Y3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvCiBFRElUSU5HIERFTEVH
QVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25O
b3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246
V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTog
d2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZp
Y2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZp
ZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZp
ZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlv
bgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlk
Q2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlk
Q2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVE
SVRJTkcgREVMRUdBVEU6IHNob3VsZERlbGV0ZURPTVJhbmdlOnJhbmdlIGZyb20gMSBvZiAjdGV4
dCA+IFAgPiBDRU5URVIgPiBESVYgPiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudCB0byA4
NiBvZiAjdGV4dCA+IFAgPiBDRU5URVIgPiBESVYgPiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1
bWVudAogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3
RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBFRElUSU5HIERFTEVHQVRFOiBzaG91bGRD
aGFuZ2VTZWxlY3RlZERPTVJhbmdlOihudWxsKSB0b0RPTVJhbmdlOnJhbmdlIGZyb20gMCBvZiBQ
ID4gQ0VOVEVSID4gRElWID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgdG8gMCBvZiBQ
ID4gQ0VOVEVSID4gRElWID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgYWZmaW5pdHk6
TlNTZWxlY3Rpb25BZmZpbml0eURvd25zdHJlYW0gc3RpbGxTZWxlY3Rpbmc6RkFMU0UKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3Bhc3RlYm9hcmQvZW1hY3Mt
Y3RybC1hLWsteS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGlu
Zy9wYXN0ZWJvYXJkL2VtYWNzLWN0cmwtYS1rLXktZXhwZWN0ZWQudHh0CmluZGV4IDQxNTY2NzYu
LjhlN2FlMzMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3Bh
c3RlYm9hcmQvZW1hY3MtY3RybC1hLWsteS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL2VkaXRpbmcvcGFzdGVib2FyZC9lbWFjcy1jdHJsLWEtay15LWV4cGVjdGVk
LnR4dApAQCAtNCw2ICs0LDcgQEAgRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNl
bGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW8KIEVESVRJTkcgREVM
RUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlv
bk5vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlv
bjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBFRElUSU5HIERFTEVHQVRF
OiBzaG91bGREZWxldGVET01SYW5nZTpyYW5nZSBmcm9tIDggb2YgI3RleHQgPiBESVYgPiBESVYg
PiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudCB0byAyMyBvZiAjdGV4dCA+IERJViA+IERJViA+IEJP
RFkgPiBIVE1MID4gI2RvY3VtZW50CitFRElUSU5HIERFTEVHQVRFOiBzaG91bGRDaGFuZ2VTZWxl
Y3RlZERPTVJhbmdlOnJhbmdlIGZyb20gOCBvZiAjdGV4dCA+IERJViA+IERJViA+IEJPRFkgPiBI
VE1MID4gI2RvY3VtZW50IHRvIDggb2YgI3RleHQgPiBESVYgPiBESVYgPiBCT0RZID4gSFRNTCA+
ICNkb2N1bWVudCB0b0RPTVJhbmdlOnJhbmdlIGZyb20gOCBvZiAjdGV4dCA+IERJViA+IERJViA+
IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvIDggb2YgI3RleHQgPiBESVYgPiBESVYgPiBCT0RZ
ID4gSFRNTCA+ICNkb2N1bWVudCBhZmZpbml0eTpOU1NlbGVjdGlvbkFmZmluaXR5RG93bnN0cmVh
bSBzdGlsbFNlbGVjdGluZzpGQUxTRQogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5n
ZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBFRElUSU5H
IERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlOldlYlZpZXdEaWRDaGFuZ2VOb3RpZmljYXRpb24K
IEVESVRJTkcgREVMRUdBVEU6IHNob3VsZENoYW5nZVNlbGVjdGVkRE9NUmFuZ2U6cmFuZ2UgZnJv
bSA4IG9mICN0ZXh0ID4gRElWID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgdG8gOCBv
ZiAjdGV4dCA+IERJViA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvRE9NUmFuZ2U6
cmFuZ2UgZnJvbSAwIG9mIERJViA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvIDAg
b2YgRElWID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgYWZmaW5pdHk6TlNTZWxlY3Rp
b25BZmZpbml0eURvd25zdHJlYW0gc3RpbGxTZWxlY3Rpbmc6RkFMU0UKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3Bhc3RlYm9hcmQvZW1hY3MtY3RybC1rLXkt
MDAxLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3Bhc3Rl
Ym9hcmQvZW1hY3MtY3RybC1rLXktMDAxLWV4cGVjdGVkLnR4dAppbmRleCA2NzdmMmU5Li5jMTg1
OTZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9wYXN0ZWJv
YXJkL2VtYWNzLWN0cmwtay15LTAwMS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL2VkaXRpbmcvcGFzdGVib2FyZC9lbWFjcy1jdHJsLWsteS0wMDEtZXhwZWN0ZWQu
dHh0CkBAIC00LDYgKzQsNyBAQCBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2Vs
ZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpbwogRURJVElORyBERUxF
R0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9u
Tm90aWZpY2F0aW9uCiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9u
OldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6
IHNob3VsZERlbGV0ZURPTVJhbmdlOnJhbmdlIGZyb20gOCBvZiAjdGV4dCA+IERJViA+IERJViA+
IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvIDE0IG9mICN0ZXh0ID4gRElWID4gRElWID4gQk9E
WSA+IEhUTUwgPiAjZG9jdW1lbnQKK0VESVRJTkcgREVMRUdBVEU6IHNob3VsZENoYW5nZVNlbGVj
dGVkRE9NUmFuZ2U6cmFuZ2UgZnJvbSA4IG9mICN0ZXh0ID4gRElWID4gRElWID4gQk9EWSA+IEhU
TUwgPiAjZG9jdW1lbnQgdG8gOCBvZiAjdGV4dCA+IERJViA+IERJViA+IEJPRFkgPiBIVE1MID4g
I2RvY3VtZW50IHRvRE9NUmFuZ2U6cmFuZ2UgZnJvbSA4IG9mICN0ZXh0ID4gRElWID4gRElWID4g
Qk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgdG8gOCBvZiAjdGV4dCA+IERJViA+IERJViA+IEJPRFkg
PiBIVE1MID4gI2RvY3VtZW50IGFmZmluaXR5Ok5TU2VsZWN0aW9uQWZmaW5pdHlEb3duc3RyZWFt
IHN0aWxsU2VsZWN0aW5nOkZBTFNFCiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdl
U2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcg
REVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2U6V2ViVmlld0RpZENoYW5nZU5vdGlmaWNhdGlvbgog
RURJVElORyBERUxFR0FURTogc2hvdWxkRGVsZXRlRE9NUmFuZ2U6cmFuZ2UgZnJvbSA4IG9mICN0
ZXh0ID4gRElWID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgdG8gMCBvZiBESVYgPiBE
SVYgPiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS00MDM5Nzc3LWZpeC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9wYXN0ZWJvYXJkL3Bh
c3RlLTQwMzk3NzctZml4LWV4cGVjdGVkLnR4dAppbmRleCBkYTc3ZDM4Li5mZTYzNTQ1IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3Rl
LTQwMzk3NzctZml4LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
ZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLTQwMzk3NzctZml4LWV4cGVjdGVkLnR4dApAQCAtMyw2
ICszLDcgQEAgRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZEJlZ2luRWRpdGluZzpXZWJWaWV3
RGlkQmVnaW5FZGl0aW5nTm90aWZpY2F0aW9uCiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlk
Q2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVE
SVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5n
ZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5n
ZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5H
IERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxl
Y3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHNob3VsZEluc2VydE5vZGU6I2Rv
Y3VtZW50LWZyYWdtZW50IHJlcGxhY2luZ0RPTVJhbmdlOnJhbmdlIGZyb20gMCBvZiAjdGV4dCA+
IExJID4gVUwgPiBESVYgPiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudCB0byA1IG9mICN0
ZXh0ID4gTEkgPiBVTCA+IERJViA+IERJViA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50
IGdpdmVuQWN0aW9uOldlYlZpZXdJbnNlcnRBY3Rpb25QYXN0ZWQKIEVESVRJTkcgREVMRUdBVEU6
IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlm
aWNhdGlvbgogRURJVElORyBERUxFR0FURTogc2hvdWxkQ2hhbmdlU2VsZWN0ZWRET01SYW5nZToo
bnVsbCkgdG9ET01SYW5nZTpyYW5nZSBmcm9tIDEgb2YgI3RleHQgPiBMSSA+IFVMID4gRElWID4g
TEkgPiBVTCA+IERJViA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvIDEgb2YgI3Rl
eHQgPiBMSSA+IFVMID4gRElWID4gTEkgPiBVTCA+IERJViA+IERJViA+IEJPRFkgPiBIVE1MID4g
I2RvY3VtZW50IGFmZmluaXR5Ok5TU2VsZWN0aW9uQWZmaW5pdHlEb3duc3RyZWFtIHN0aWxsU2Vs
ZWN0aW5nOkZBTFNFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGlu
Zy9zZWxlY3Rpb24vMzY5MDcwMy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvZWRpdGluZy9zZWxlY3Rpb24vMzY5MDcwMy1leHBlY3RlZC50eHQKaW5kZXggNTc3NmFlYS4u
Y2NkY2FiYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvc2Vs
ZWN0aW9uLzM2OTA3MDMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9lZGl0aW5nL3NlbGVjdGlvbi8zNjkwNzAzLWV4cGVjdGVkLnR4dApAQCAtMTEsNiArMTEsMjYg
QEAgRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlk
Q2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW8KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRD
aGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgogRURJ
VElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdl
U2VsZWN0aW9uTm90aWZpY2F0aW9uCiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdl
U2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcg
REVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVj
dGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVj
dGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVH
QVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25O
b3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246
V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTog
d2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZp
Y2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZp
ZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZp
ZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlv
bgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlk
Q2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlk
Q2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VE
SVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5n
ZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5n
ZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5H
IERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxl
Y3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxl
Y3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxF
R0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9u
Tm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9u
OldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6
IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlm
aWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJW
aWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJW
aWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRp
b24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0Rp
ZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0Rp
ZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBs
YXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKICAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgw
MHg2MDAKIGxheWVyIGF0ICgwLDApIHNpemUgODAweDYwMApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvc2VsZWN0aW9uLzQ5MzIyNjAtMS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9zZWxlY3Rpb24vNDkzMjI2MC0xLWV4
cGVjdGVkLnR4dAppbmRleCA4NzA3N2E1Li41MzcxMjI2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9zZWxlY3Rpb24vNDkzMjI2MC0xLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9zZWxlY3Rpb24vNDkzMjI2MC0x
LWV4cGVjdGVkLnR4dApAQCAtMyw2ICszLDcgQEAgRURJVElORyBERUxFR0FURTogd2ViVmlld0Rp
ZEJlZ2luRWRpdGluZzpXZWJWaWV3RGlkQmVnaW5FZGl0aW5nTm90aWZpY2F0aW9uCiBFRElUSU5H
IERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxl
Y3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxl
Y3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgogRURJVElORyBERUxF
R0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9u
Tm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9u
OldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIGxheWVyIGF0ICgwLDApIHNp
emUgODAweDYwMAogICBSZW5kZXJWaWV3IGF0ICgwLDApIHNpemUgODAweDYwMAogbGF5ZXIgYXQg
KDAsMCkgc2l6ZSA4MDB4NjAwCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
ZWRpdGluZy9zZWxlY3Rpb24vbGVhdmUtcmVxdWVzdGVkLWJsb2NrLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3NlbGVjdGlvbi9sZWF2ZS1yZXF1ZXN0ZWQt
YmxvY2stZXhwZWN0ZWQudHh0CmluZGV4IDE5Mjc1YTMuLjY0MjFkN2UgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3NlbGVjdGlvbi9sZWF2ZS1yZXF1ZXN0ZWQt
YmxvY2stZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5n
L3NlbGVjdGlvbi9sZWF2ZS1yZXF1ZXN0ZWQtYmxvY2stZXhwZWN0ZWQudHh0CkBAIC0yLDYgKzIs
MzUgQEAgRURJVElORyBERUxFR0FURTogc2hvdWxkQmVnaW5FZGl0aW5nSW5ET01SYW5nZTpyYW5n
ZSBmcm9tIDAgb2YgRElWID4gQk9EWSA+IEhUTUwKIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdE
aWRCZWdpbkVkaXRpbmc6V2ViVmlld0RpZEJlZ2luRWRpdGluZ05vdGlmaWNhdGlvbgogRURJVElO
RyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2Vs
ZWN0aW9uTm90aWZpY2F0aW9uCiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2Vs
ZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVM
RUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlv
bk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlv
bjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRF
OiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3Rp
ZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2Vi
Vmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2Vi
Vmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0
aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdE
aWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdE
aWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgor
RURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hh
bmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hh
bmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJ
TkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNl
bGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNl
bGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERF
TEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rp
b25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rp
b246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FU
RTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90
aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldl
YlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdl
YlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNh
dGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3
RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3
RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24K
K0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENo
YW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENo
YW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElU
SU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VT
ZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VT
ZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBE
RUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0
aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0
aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdB
VEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5v
dGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpX
ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3
ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmlj
YXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmll
d0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmll
d0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9u
CiBsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKICAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXpl
IDgwMHg2MDAKIGxheWVyIGF0ICgwLDApIHNpemUgODAweDYwMApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvc2VsZWN0aW9uL21vdmUtYnktd29yZC0wMDEtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvc2VsZWN0aW9uL21v
dmUtYnktd29yZC0wMDEtZXhwZWN0ZWQudHh0CmluZGV4IDZkOGM0ZTAuLjYxY2E0NjMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3NlbGVjdGlvbi9tb3ZlLWJ5
LXdvcmQtMDAxLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRp
dGluZy9zZWxlY3Rpb24vbW92ZS1ieS13b3JkLTAwMS1leHBlY3RlZC50eHQKQEAgLTQsNiArNCwx
MCBAQCBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdE
aWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpbwogRURJVElORyBERUxFR0FURTogd2ViVmlld0Rp
ZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBF
RElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFu
Z2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFu
Z2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElO
RyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2Vs
ZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2Vs
ZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVM
RUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlv
bk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlv
bjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBsYXllciBhdCAoMCwwKSBz
aXplIDgwMHg2MDAKICAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKIGxheWVyIGF0
ICgwLDApIHNpemUgODAweDYwMApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2VkaXRpbmcvc3R5bGUvYmxvY2stc3R5bGUtMDA1LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9lZGl0aW5nL3N0eWxlL2Jsb2NrLXN0eWxlLTAwNS1leHBlY3RlZC50eHQK
aW5kZXggNzI0MmYxOC4uNTBjNWUyYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjL2VkaXRpbmcvc3R5bGUvYmxvY2stc3R5bGUtMDA1LWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9zdHlsZS9ibG9jay1zdHlsZS0wMDUtZXhwZWN0
ZWQudHh0CkBAIC0yMCw2ICsyMCw4IEBAIEVESVRJTkcgREVMRUdBVEU6IHNob3VsZENoYW5nZVNl
bGVjdGVkRE9NUmFuZ2U6KG51bGwpIHRvRE9NUmFuZ2U6cmFuZ2UgZnJvbSAwIG9mCiBFRElUSU5H
IERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxl
Y3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2U6V2Vi
Vmlld0RpZENoYW5nZU5vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENo
YW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElU
SU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VT
ZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VT
ZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgogRURJVElORyBE
RUxFR0FURTogc2hvdWxkRGVsZXRlRE9NUmFuZ2U6cmFuZ2UgZnJvbSAwIG9mICN0ZXh0ID4gU1BB
TiA+IERJViA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvIDEgb2YgI3RleHQgPiBT
UEFOID4gRElWID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQKIEVESVRJTkcgREVMRUdB
VEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5v
dGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTogc2hvdWxkQ2hhbmdlU2VsZWN0ZWRET01SYW5n
ZToobnVsbCkgdG9ET01SYW5nZTpyYW5nZSBmcm9tIDAgb2YgRElWID4gRElWID4gQk9EWSA+IEhU
TUwgPiAjZG9jdW1lbnQgdG8gMCBvZiBESVYgPiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1bWVu
dCBhZmZpbml0eTpOU1NlbGVjdGlvbkFmZmluaXR5RG93bnN0cmVhbSBzdGlsbFNlbGVjdGluZzpG
QUxTRQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvc3R5bGUv
YmxvY2stc3R5bGUtMDA2LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9l
ZGl0aW5nL3N0eWxlL2Jsb2NrLXN0eWxlLTAwNi1leHBlY3RlZC50eHQKaW5kZXggMmNhY2M0Yy4u
MjM1MzA3MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvc3R5
bGUvYmxvY2stc3R5bGUtMDA2LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvZWRpdGluZy9zdHlsZS9ibG9jay1zdHlsZS0wMDYtZXhwZWN0ZWQudHh0CkBAIC0yMiw2
ICsyMiw4IEBAIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2U6V2ViVmlld0RpZENo
YW5nZU5vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVj
dGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBFRElUSU5HIERFTEVH
QVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25O
b3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246
V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgorRURJVElORyBERUxFR0FURTog
d2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZp
Y2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZp
ZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZp
ZXdEaWRDaGFuZ2U6V2ViVmlld0RpZENoYW5nZU5vdGlmaWNhdGlvbgogbGF5ZXIgYXQgKDAsMCkg
c2l6ZSA4MDB4NjAwCiAgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9zdHlsZS9jcmVhdGUtYmxvY2st
Zm9yLXN0eWxlLTAwOC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRp
dGluZy9zdHlsZS9jcmVhdGUtYmxvY2stZm9yLXN0eWxlLTAwOC1leHBlY3RlZC50eHQKaW5kZXgg
N2U5YThkMC4uOWExMTdiNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Vk
aXRpbmcvc3R5bGUvY3JlYXRlLWJsb2NrLWZvci1zdHlsZS0wMDgtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3N0eWxlL2NyZWF0ZS1ibG9jay1mb3It
c3R5bGUtMDA4LWV4cGVjdGVkLnR4dApAQCAtMiw2ICsyLDggQEAgRURJVElORyBERUxFR0FURTog
c2hvdWxkQmVnaW5FZGl0aW5nSW5ET01SYW5nZTpyYW5nZSBmcm9tIDAgb2YgQk9EWSA+IEhUTUwg
PiAjZG8KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRCZWdpbkVkaXRpbmc6V2ViVmlld0Rp
ZEJlZ2luRWRpdGluZ05vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENo
YW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBFRElU
SU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VT
ZWxlY3Rpb25Ob3RpZmljYXRpb24KK0VESVRJTkcgREVMRUdBVEU6IHNob3VsZENoYW5nZVNlbGVj
dGVkRE9NUmFuZ2U6cmFuZ2UgZnJvbSAwIG9mIERJViA+IERJViA+IERJViA+IEJPRFkgPiBIVE1M
ID4gI2RvY3VtZW50IHRvIDAgb2YgRElWID4gRElWID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9j
dW1lbnQgdG9ET01SYW5nZTpyYW5nZSBmcm9tIDAgb2YgRElWID4gRElWID4gRElWID4gQk9EWSA+
IEhUTUwgPiAjZG9jdW1lbnQgdG8gMCBvZiBESVYgPiBESVYgPiBESVYgPiBCT0RZID4gSFRNTCA+
ICNkb2N1bWVudCBhZmZpbml0eTpOU1NlbGVjdGlvbkFmZmluaXR5RG93bnN0cmVhbSBzdGlsbFNl
bGVjdGluZzpGQUxTRQorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlv
bjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBFRElUSU5HIERFTEVHQVRF
OiB3ZWJWaWV3RGlkQ2hhbmdlOldlYlZpZXdEaWRDaGFuZ2VOb3RpZmljYXRpb24KIGxheWVyIGF0
ICgwLDApIHNpemUgODAweDYwMAogICBSZW5kZXJWaWV3IGF0ICgwLDApIHNpemUgODAweDYwMApk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvc3R5bGUvcmVsYXRp
dmUtZm9udC1zaXplLWNoYW5nZS0wMDMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL2VkaXRpbmcvc3R5bGUvcmVsYXRpdmUtZm9udC1zaXplLWNoYW5nZS0wMDMtZXhwZWN0
ZWQudHh0CmluZGV4IGRkOTNiYzUuLjA1ZTEwZTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy9lZGl0aW5nL3N0eWxlL3JlbGF0aXZlLWZvbnQtc2l6ZS1jaGFuZ2UtMDAzLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9zdHlsZS9y
ZWxhdGl2ZS1mb250LXNpemUtY2hhbmdlLTAwMy1leHBlY3RlZC50eHQKQEAgLTcsNiArNyw4IEBA
IEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENo
YW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvCiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hh
bmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVESVRJ
TkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNl
bGVjdGlvbk5vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNl
bGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCitFRElUSU5HIERF
TEVHQVRFOiBzaG91bGRDaGFuZ2VTZWxlY3RlZERPTVJhbmdlOnJhbmdlIGZyb20gMCBvZiAjdGV4
dCA+IERJViA+IERJViA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvIDIxIG9mICN0
ZXh0ID4gRElWID4gRElWID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgdG9ET01SYW5n
ZTpyYW5nZSBmcm9tIDAgb2YgI3RleHQgPiBESVYgPiBESVYgPiBESVYgPiBCT0RZID4gSFRNTCA+
ICNkb2N1bWVudCB0byAyMSBvZiAjdGV4dCA+IERJViA+IERJViA+IERJViA+IEJPRFkgPiBIVE1M
ID4gI2RvY3VtZW50IGFmZmluaXR5Ok5TU2VsZWN0aW9uQWZmaW5pdHlEb3duc3RyZWFtIHN0aWxs
U2VsZWN0aW5nOkZBTFNFCitFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0
aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdB
VEU6IHdlYlZpZXdEaWRDaGFuZ2U6V2ViVmlld0RpZENoYW5nZU5vdGlmaWNhdGlvbgogRURJVElO
RyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZTpXZWJWaWV3RGlkQ2hhbmdlTm90aWZpY2F0aW9u
CiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlOldlYlZpZXdEaWRDaGFuZ2VOb3Rp
ZmljYXRpb24KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3N0
eWxlL3JlbGF0aXZlLWZvbnQtc2l6ZS1jaGFuZ2UtMDA0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3N0eWxlL3JlbGF0aXZlLWZvbnQtc2l6ZS1jaGFuZ2Ut
MDA0LWV4cGVjdGVkLnR4dAppbmRleCBiNjhiZmFjLi4yZTA0NWMzIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9zdHlsZS9yZWxhdGl2ZS1mb250LXNpemUtY2hh
bmdlLTAwNC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRp
bmcvc3R5bGUvcmVsYXRpdmUtZm9udC1zaXplLWNoYW5nZS0wMDQtZXhwZWN0ZWQudHh0CkBAIC03
LDYgKzcsOCBAQCBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldl
YlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpbwogRURJVElORyBERUxFR0FURTogd2Vi
Vmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0
aW9uCiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdE
aWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdE
aWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgor
RURJVElORyBERUxFR0FURTogc2hvdWxkQ2hhbmdlU2VsZWN0ZWRET01SYW5nZTpyYW5nZSBmcm9t
IDAgb2YgI3RleHQgPiBESVYgPiBESVYgPiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudCB0
byAyMSBvZiAjdGV4dCA+IERJViA+IERJViA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50
IHRvRE9NUmFuZ2U6cmFuZ2UgZnJvbSAwIG9mICN0ZXh0ID4gRElWID4gRElWID4gRElWID4gQk9E
WSA+IEhUTUwgPiAjZG9jdW1lbnQgdG8gMjEgb2YgI3RleHQgPiBESVYgPiBESVYgPiBESVYgPiBC
T0RZID4gSFRNTCA+ICNkb2N1bWVudCBhZmZpbml0eTpOU1NlbGVjdGlvbkFmZmluaXR5RG93bnN0
cmVhbSBzdGlsbFNlbGVjdGluZzpGQUxTRQorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENo
YW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBFRElU
SU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlOldlYlZpZXdEaWRDaGFuZ2VOb3RpZmljYXRp
b24KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2U6V2ViVmlld0RpZENoYW5nZU5v
dGlmaWNhdGlvbgogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZTpXZWJWaWV3RGlk
Q2hhbmdlTm90aWZpY2F0aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
ZWRpdGluZy9zdHlsZS90YWJsZS1zZWxlY3Rpb24tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL2VkaXRpbmcvc3R5bGUvdGFibGUtc2VsZWN0aW9uLWV4cGVjdGVkLnR4dApp
bmRleCAwY2Y0YmNlLi41YjAwZWY3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMvZWRpdGluZy9zdHlsZS90YWJsZS1zZWxlY3Rpb24tZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3N0eWxlL3RhYmxlLXNlbGVjdGlvbi1leHBlY3Rl
ZC50eHQKQEAgLTQsNiArNCw4IEBAIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VT
ZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvCiBFRElUSU5HIERF
TEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rp
b25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rp
b246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNhdGlvbgogRURJVElORyBERUxFR0FU
RTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90
aWZpY2F0aW9uCitFRElUSU5HIERFTEVHQVRFOiBzaG91bGRDaGFuZ2VTZWxlY3RlZERPTVJhbmdl
OnJhbmdlIGZyb20gMSBvZiAjdGV4dCA+IFREID4gVFIgPiBUQk9EWSA+IFRBQkxFID4gRElWID4g
Qk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgdG8gMiBvZiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1
bWVudCB0b0RPTVJhbmdlOnJhbmdlIGZyb20gMSBvZiAjdGV4dCA+IFREID4gVFIgPiBUQk9EWSA+
IFRBQkxFID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgdG8gMiBvZiBESVYgPiBCT0RZ
ID4gSFRNTCA+ICNkb2N1bWVudCBhZmZpbml0eTpOU1NlbGVjdGlvbkFmZmluaXR5RG93bnN0cmVh
bSBzdGlsbFNlbGVjdGluZzpGQUxTRQorRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5n
ZVNlbGVjdGlvbjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBFRElUSU5H
IERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlOldlYlZpZXdEaWRDaGFuZ2VOb3RpZmljYXRpb24K
IEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdEaWRDaGFuZ2U6V2ViVmlld0RpZENoYW5nZU5vdGlm
aWNhdGlvbgogbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDY2YTdlYWYuLmYxNjcwMmUgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMzUgQEAKKzIwMTAtMDItMjQgIE9qYW4gVmFmYWkgIDxvamFuQGNocm9taXVtLm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGcmFtZSBz
aG91bGQgdXNlIFNlbGVjdGlvbkNvbnRyb2xsZXIncyBUZXh0R3JhbnVsYXJpdHkgaW5zdGVhZCBv
ZiBpdCdzIG93bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MzUzNjgKKworICAgICAgICBKdXN0IGEgY2xlYW51cCBpbiBwcmVwYXJhdGlvbiBmb3Igb3Ro
ZXIgc2VsZWN0aW9uIGNoYW5nZXMuCisgICAgICAgIE5vIG5ldyB0ZXN0cyBhcyB0aGVyZSBpcyBu
byBmdW5jdGlvbmFsaXR5IGNoYW5nZSBhbmQgCisgICAgICAgIHRoaXMgaXMgY292ZXJlZCBieSBl
eGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIGVkaXRpbmcvU2VsZWN0aW9uQ29udHJvbGxlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTZWxlY3Rpb25Db250cm9sbGVyOjp3aWxsQmVNb2RpZmll
ZCk6CisgICAgICAgIChXZWJDb3JlOjpTZWxlY3Rpb25Db250cm9sbGVyOjptb2RpZnkpOgorICAg
ICAgICAqIGVkaXRpbmcvVmlzaWJsZVNlbGVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpW
aXNpYmxlU2VsZWN0aW9uOjpzZXRXaXRob3V0VmFsaWRhdGlvbik6CisgICAgICAgICogZWRpdGlu
Zy9WaXNpYmxlU2VsZWN0aW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpWaXNpYmxlU2VsZWN0aW9u
OjpzZXRHcmFudWxhcml0eSk6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpjbGVhcik6CisgICAgICAgICogcGFnZS9FdmVu
dEhhbmRsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpzZWxlY3RDbG9z
ZXN0V29yZEZyb21Nb3VzZUV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6
c2VsZWN0Q2xvc2VzdFdvcmRPckxpbmtGcm9tTW91c2VFdmVudCk6CisgICAgICAgIChXZWJDb3Jl
OjpFdmVudEhhbmRsZXI6OmhhbmRsZU1vdXNlUHJlc3NFdmVudFRyaXBsZUNsaWNrKToKKyAgICAg
ICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VQcmVzc0V2ZW50U2luZ2xlQ2xp
Y2spOgorICAgICAgICAqIHBhZ2UvRnJhbWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWU6
OkZyYW1lKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lOjpzZWxlY3Rpb25HcmFudWxhcml0eSk6
CisgICAgICAgICogcGFnZS9GcmFtZS5oOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUZXh0
Q29udHJvbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUZXh0Q29udHJvbDo6c2V0U2Vs
ZWN0aW9uUmFuZ2UpOgorCiAyMDEwLTAyLTI0ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gRmlzaGVyLgpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9lZGl0aW5nL1NlbGVjdGlvbkNvbnRyb2xsZXIuY3BwIGIvV2ViQ29yZS9lZGl0aW5nL1Nl
bGVjdGlvbkNvbnRyb2xsZXIuY3BwCmluZGV4IDI1OTgyZDQuLmUwM2ExM2UgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvZWRpdGluZy9TZWxlY3Rpb25Db250cm9sbGVyLmNwcAorKysgYi9XZWJDb3JlL2Vk
aXRpbmcvU2VsZWN0aW9uQ29udHJvbGxlci5jcHAKQEAgLTIzOCwxNyArMjM4LDI1IEBAIHZvaWQg
U2VsZWN0aW9uQ29udHJvbGxlcjo6d2lsbEJlTW9kaWZpZWQoRUFsdGVyYXRpb24gYWx0ZXIsIEVE
aXJlY3Rpb24gZGlyZWN0aW9uCiAKICAgICBQb3NpdGlvbiBzdGFydCA9IG1fc2VsZWN0aW9uLnN0
YXJ0KCk7CiAgICAgUG9zaXRpb24gZW5kID0gbV9zZWxlY3Rpb24uZW5kKCk7CisgICAgCisgICAg
aWYgKHN0YXJ0ID09IGVuZCkKKyAgICAgICAgcmV0dXJuOworICAgIAogICAgIC8vIEZJWE1FOiBU
aGlzIGlzIHByb2JhYmx5IG5vdCBjb3JyZWN0IGZvciByaWdodCBhbmQgbGVmdCB3aGVuIHRoZSBk
aXJlY3Rpb24gaXMgUlRMLgorICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCBwcm9iYWJseSBhdm9p
ZCBjYWxsaW5nIHNldFdpdGhvdXRWYWxpZGF0aW9uLiBUaGUgdGhlb3J5IGlzIHRoYXQgc2V0V2l0
aG91dFZhbGlkYXRpb24KKyAgICAvLyBzaG91bGQgYmUgT0ssIGJlY2F1c2UgbV9zZWxlY3Rpb24g
c2hvdWxkIGFscmVhZHkgYmUgYSB2YWxpZGF0ZWQgc2VsZWN0aW9uLiBJbiBvcmRlciBjYWxsCisg
ICAgLy8gVmlzaWJsZVNlbGVjdGlvbjo6dmFsaWRhdGUgaXQgbmVlZHMgdG8gYmUgbWFkZSBpZGVt
cG90ZW50LiBUaGVyZSBhcmUgY2FzZXMgd2hlcmUgaXQgd2lsbAorICAgIC8vIGV4cGFuZCBhIHNl
bGVjdGlvbiAoZS5nLiBpZiB0aGUgZ3JhbnVsYXJpdHkgaXMgV29yZEdyYW51bGFyaXR5KS4gQWx0
ZXJuYXRlbHksIGluc3RlYWQKKyAgICAvLyBvZiBzZXR0aW5nIHdpdGhvdXQgYW55IHZhbGlkYXRp
b24sIHdlIGNvdWxkIHByb2JhYmx5IGdldCBhd2F5IHdpdGggYWRkaW5nIGEgdmFsaWRhdGUoVGV4
dEdyYW51bGFyaXR5KQorICAgIC8vIG1ldGhvZCBhbmQgdXNpbmcgdmFsaWRhdGUoQ2hhcmFjdGVy
R3JhbnVsYXJpdHkpIGhlcmUuIAogICAgIHN3aXRjaCAoZGlyZWN0aW9uKSB7CiAgICAgICAgIGNh
c2UgUklHSFQ6CiAgICAgICAgIGNhc2UgRk9SV0FSRDoKLSAgICAgICAgICAgIG1fc2VsZWN0aW9u
LnNldEJhc2Uoc3RhcnQpOwotICAgICAgICAgICAgbV9zZWxlY3Rpb24uc2V0RXh0ZW50KGVuZCk7
CisgICAgICAgICAgICBtX3NlbGVjdGlvbi5zZXRXaXRob3V0VmFsaWRhdGlvbihzdGFydCwgZW5k
KTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIExFRlQ6CiAgICAgICAgIGNhc2Ug
QkFDS1dBUkQ6Ci0gICAgICAgICAgICBtX3NlbGVjdGlvbi5zZXRCYXNlKGVuZCk7Ci0gICAgICAg
ICAgICBtX3NlbGVjdGlvbi5zZXRFeHRlbnQoc3RhcnQpOworICAgICAgICAgICAgbV9zZWxlY3Rp
b24uc2V0V2l0aG91dFZhbGlkYXRpb24oZW5kLCBzdGFydCk7CiAgICAgICAgICAgICBicmVhazsK
ICAgICB9CiB9CkBAIC01OTksOCArNjA3LDcgQEAgYm9vbCBTZWxlY3Rpb25Db250cm9sbGVyOjpt
b2RpZnkoRUFsdGVyYXRpb24gYWx0ZXIsIEVEaXJlY3Rpb24gZGlyLCBUZXh0R3JhbnVsYXIKICAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAKLSAgICBpZiAobV9mcmFtZSkKLSAgICAg
ICAgbV9mcmFtZS0+c2V0U2VsZWN0aW9uR3JhbnVsYXJpdHkoZ3JhbnVsYXJpdHkpOworICAgIG1f
c2VsZWN0aW9uLnNldEdyYW51bGFyaXR5KGdyYW51bGFyaXR5KTsKICAgICAKICAgICB3aWxsQmVN
b2RpZmllZChhbHRlciwgZGlyKTsKIApAQCAtNjUzLDEzICs2NjAsMTYgQEAgYm9vbCBTZWxlY3Rp
b25Db250cm9sbGVyOjptb2RpZnkoRUFsdGVyYXRpb24gYWx0ZXIsIEVEaXJlY3Rpb24gZGlyLCBU
ZXh0R3JhbnVsYXIKICAgICBpZiAoZ3JhbnVsYXJpdHkgPT0gTGluZUdyYW51bGFyaXR5IHx8IGdy
YW51bGFyaXR5ID09IFBhcmFncmFwaEdyYW51bGFyaXR5KQogICAgICAgICBtX3hQb3NGb3JWZXJ0
aWNhbEFycm93TmF2aWdhdGlvbiA9IHg7CiAKLSAgICBpZiAodXNlclRyaWdnZXJlZCkgeworICAg
IGlmICh1c2VyVHJpZ2dlcmVkICYmICEoYWx0ZXIgPT0gRVhURU5EICYmIGdyYW51bGFyaXR5ID09
IFdvcmRHcmFudWxhcml0eSkpIHsKICAgICAgICAgLy8gVXNlciBtb2RpZmllZCBzZWxlY3Rpb24g
Y2hhbmdlIGFsc28gc2V0cyB0aGUgZ3JhbnVsYXJpdHkgYmFjayB0byBjaGFyYWN0ZXIuCiAgICAg
ICAgIC8vIE5PVEU6IFRoZSBvbmUgZXhjZXB0aW9uIGlzIHRoYXQgd2UgbmVlZCB0byBrZWVwIHdv
cmQgZ3JhbnVsYXJpdHkgdG8KICAgICAgICAgLy8gcHJlc2VydmUgc21hcnQgZGVsZXRlIGJlaGF2
aW9yIHdoZW4gZXh0ZW5kaW5nIGJ5IHdvcmQgKGUuZy4gZG91YmxlLWNsaWNrKSwKICAgICAgICAg
Ly8gdGhlbiBzaGlmdC1vcHRpb24tcmlnaHQgYXJyb3csIHRoZW4gZGVsZXRlIG5lZWRzIHRvIHNt
YXJ0IGRlbGV0ZSwgcGVyIFRleHRFZGl0LgotICAgICAgICBpZiAoIShhbHRlciA9PSBFWFRFTkQg
JiYgZ3JhbnVsYXJpdHkgPT0gV29yZEdyYW51bGFyaXR5ICYmIG1fZnJhbWUtPnNlbGVjdGlvbkdy
YW51bGFyaXR5KCkgPT0gV29yZEdyYW51bGFyaXR5KSkKLSAgICAgICAgICAgIG1fZnJhbWUtPnNl
dFNlbGVjdGlvbkdyYW51bGFyaXR5KENoYXJhY3RlckdyYW51bGFyaXR5KTsKKyAgICAgICAgbV9z
ZWxlY3Rpb24uc2V0R3JhbnVsYXJpdHkoQ2hhcmFjdGVyR3JhbnVsYXJpdHkpOworICAgIH0gZWxz
ZSB7CisgICAgICAgIC8vIFRoZSBtb3ZlVG8gb3Igc2V0RXh0ZW50IGNhbGwgbWF5IGhhdmUgcmVz
ZXQgdGhlIGdyYW51bGFyaXR5IHRvIENoYXJhY3RlckdyYW51bGFyaXR5LgorICAgICAgICAvLyBG
SVhNRTogUGVyaGFwcyBtb3ZlVG8sIHNldEV4dGVudCwgZXQgYWwgc2hvdWxkIGJlIGNoYW5nZWQg
dG8gbWFpbnRhaW4gdGhlIGN1cnJlbnQgZ3JhbnVsYXJpdHk/CisgICAgICAgIG1fc2VsZWN0aW9u
LnNldEdyYW51bGFyaXR5KGdyYW51bGFyaXR5KTsKICAgICB9CiAKICAgICBzZXROZWVkc0xheW91
dCgpOwpAQCAtNzU1LDcgKzc2NSw3IEBAIGJvb2wgU2VsZWN0aW9uQ29udHJvbGxlcjo6bW9kaWZ5
KEVBbHRlcmF0aW9uIGFsdGVyLCBpbnQgdmVydGljYWxEaXN0YW5jZSwgYm9vbCB1CiAgICAgfQog
CiAgICAgaWYgKHVzZXJUcmlnZ2VyZWQpCi0gICAgICAgIG1fZnJhbWUtPnNldFNlbGVjdGlvbkdy
YW51bGFyaXR5KENoYXJhY3RlckdyYW51bGFyaXR5KTsKKyAgICAgICAgbV9zZWxlY3Rpb24uc2V0
R3JhbnVsYXJpdHkoQ2hhcmFjdGVyR3JhbnVsYXJpdHkpOwogCiAgICAgbV9sYXN0Q2hhbmdlV2Fz
SG9yaXpvbnRhbEV4dGVuc2lvbiA9IGFsdGVyID09IEVYVEVORDsKIApkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9lZGl0aW5nL1Zpc2libGVTZWxlY3Rpb24uY3BwIGIvV2ViQ29yZS9lZGl0aW5nL1Zpc2li
bGVTZWxlY3Rpb24uY3BwCmluZGV4IGJhZWYyYjUuLjU3MWZlMmIgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvZWRpdGluZy9WaXNpYmxlU2VsZWN0aW9uLmNwcAorKysgYi9XZWJDb3JlL2VkaXRpbmcvVmlz
aWJsZVNlbGVjdGlvbi5jcHAKQEAgLTQ0MSw3ICs0NDEsNiBAQCB2b2lkIFZpc2libGVTZWxlY3Rp
b246OnNldFdpdGhvdXRWYWxpZGF0aW9uKGNvbnN0IFBvc2l0aW9uJiBiYXNlLCBjb25zdCBQb3Np
dGlvbgogICAgIEFTU0VSVCghZXh0ZW50LmlzTnVsbCgpKTsKICAgICBBU1NFUlQoYmFzZSAhPSBl
eHRlbnQpOwogICAgIEFTU0VSVChtX2FmZmluaXR5ID09IERPV05TVFJFQU0pOwotICAgIEFTU0VS
VChtX2dyYW51bGFyaXR5ID09IENoYXJhY3RlckdyYW51bGFyaXR5KTsKICAgICBtX2Jhc2UgPSBi
YXNlOwogICAgIG1fZXh0ZW50ID0gZXh0ZW50OwogICAgIG1fYmFzZUlzRmlyc3QgPSBjb21wYXJl
UG9zaXRpb25zKGJhc2UsIGV4dGVudCkgPD0gMDsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZWRpdGlu
Zy9WaXNpYmxlU2VsZWN0aW9uLmggYi9XZWJDb3JlL2VkaXRpbmcvVmlzaWJsZVNlbGVjdGlvbi5o
CmluZGV4IGJiY2VjZjIuLjBkZDE3OGMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZWRpdGluZy9WaXNp
YmxlU2VsZWN0aW9uLmgKKysrIGIvV2ViQ29yZS9lZGl0aW5nL1Zpc2libGVTZWxlY3Rpb24uaApA
QCAtODIsNyArODIsOCBAQCBwdWJsaWM6CiAKICAgICBib29sIGV4cGFuZFVzaW5nR3JhbnVsYXJp
dHkoVGV4dEdyYW51bGFyaXR5IGdyYW51bGFyaXR5KTsKICAgICBUZXh0R3JhbnVsYXJpdHkgZ3Jh
bnVsYXJpdHkoKSBjb25zdCB7IHJldHVybiBtX2dyYW51bGFyaXR5OyB9Ci0KKyAgICB2b2lkIHNl
dEdyYW51bGFyaXR5KFRleHRHcmFudWxhcml0eSBncmFudWxhcml0eSkgeyBtX2dyYW51bGFyaXR5
ID0gZ3JhbnVsYXJpdHk7IH0KKyAgICAKICAgICAvLyBXZSBkb24ndCB5ZXQgc3VwcG9ydCBtdWx0
aS1yYW5nZSBzZWxlY3Rpb25zLCBzbyB3ZSBvbmx5IGV2ZXIgaGF2ZSBvbmUgcmFuZ2UgdG8gcmV0
dXJuLgogICAgIFBhc3NSZWZQdHI8UmFuZ2U+IGZpcnN0UmFuZ2UoKSBjb25zdDsKIApkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwIGIvV2ViQ29yZS9sb2FkZXIvRnJh
bWVMb2FkZXIuY3BwCmluZGV4IGViY2ExY2IuLjFhYzBlYTMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
bG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAorKysgYi9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5j
cHAKQEAgLTczMCw4ICs3MzAsNiBAQCB2b2lkIEZyYW1lTG9hZGVyOjpjbGVhcihib29sIGNsZWFy
V2luZG93UHJvcGVydGllcywgYm9vbCBjbGVhclNjcmlwdE9iamVjdHMsIGJvbwogICAgIGlmIChj
bGVhckZyYW1lVmlldyAmJiBtX2ZyYW1lLT52aWV3KCkpCiAgICAgICAgIG1fZnJhbWUtPnZpZXco
KS0+Y2xlYXIoKTsKIAotICAgIG1fZnJhbWUtPnNldFNlbGVjdGlvbkdyYW51bGFyaXR5KENoYXJh
Y3RlckdyYW51bGFyaXR5KTsKLQogICAgIC8vIERvIG5vdCBkcm9wIHRoZSBkb2N1bWVudCBiZWZv
cmUgdGhlIFNjcmlwdENvbnRyb2xsZXIgYW5kIHZpZXcgYXJlIGNsZWFyZWQKICAgICAvLyBhcyBz
b21lIGRlc3RydWN0b3JzIG1pZ2h0IHN0aWxsIHRyeSB0byBhY2Nlc3MgdGhlIGRvY3VtZW50Lgog
ICAgIG1fZnJhbWUtPnNldERvY3VtZW50KDApOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0V2
ZW50SGFuZGxlci5jcHAgYi9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAppbmRleCBjM2Qx
ZTVjLi5jNjcwYjU5IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAor
KysgYi9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApAQCAtMjMxLDcgKzIzMSw2IEBAIHZv
aWQgRXZlbnRIYW5kbGVyOjpzZWxlY3RDbG9zZXN0V29yZEZyb21Nb3VzZUV2ZW50KGNvbnN0IE1v
dXNlRXZlbnRXaXRoSGl0VGVzdFJlCiAgICAgICAgIH0KICAgICAKICAgICAgICAgaWYgKG5ld1Nl
bGVjdGlvbi5pc1JhbmdlKCkpIHsKLSAgICAgICAgICAgIG1fZnJhbWUtPnNldFNlbGVjdGlvbkdy
YW51bGFyaXR5KFdvcmRHcmFudWxhcml0eSk7CiAgICAgICAgICAgICBtX2JlZ2FuU2VsZWN0aW5n
VGV4dCA9IHRydWU7CiAgICAgICAgICAgICBpZiAocmVzdWx0LmV2ZW50KCkuY2xpY2tDb3VudCgp
ID09IDIgJiYgbV9mcmFtZS0+ZWRpdG9yKCktPmlzU2VsZWN0VHJhaWxpbmdXaGl0ZXNwYWNlRW5h
YmxlZCgpKSAKICAgICAgICAgICAgICAgICBuZXdTZWxlY3Rpb24uYXBwZW5kVHJhaWxpbmdXaGl0
ZXNwYWNlKCk7ICAgICAgICAgICAgCkBAIC0yNTcsNyArMjU2LDcgQEAgdm9pZCBFdmVudEhhbmRs
ZXI6OnNlbGVjdENsb3Nlc3RXb3JkT3JMaW5rRnJvbU1vdXNlRXZlbnQoY29uc3QgTW91c2VFdmVu
dFdpdGhIaXQKICAgICAgICAgICAgIG5ld1NlbGVjdGlvbiA9IFZpc2libGVTZWxlY3Rpb246OnNl
bGVjdGlvbkZyb21Db250ZW50c09mTm9kZShVUkxFbGVtZW50KTsKICAgICAKICAgICAgICAgaWYg
KG5ld1NlbGVjdGlvbi5pc1JhbmdlKCkpIHsKLSAgICAgICAgICAgIG1fZnJhbWUtPnNldFNlbGVj
dGlvbkdyYW51bGFyaXR5KFdvcmRHcmFudWxhcml0eSk7CisgICAgICAgICAgICBuZXdTZWxlY3Rp
b24uc2V0R3JhbnVsYXJpdHkoV29yZEdyYW51bGFyaXR5KTsKICAgICAgICAgICAgIG1fYmVnYW5T
ZWxlY3RpbmdUZXh0ID0gdHJ1ZTsKICAgICAgICAgfQogCkBAIC0zMDAsNyArMjk5LDYgQEAgYm9v
bCBFdmVudEhhbmRsZXI6OmhhbmRsZU1vdXNlUHJlc3NFdmVudFRyaXBsZUNsaWNrKGNvbnN0IE1v
dXNlRXZlbnRXaXRoSGl0VGVzdFIKICAgICAgICAgbmV3U2VsZWN0aW9uLmV4cGFuZFVzaW5nR3Jh
bnVsYXJpdHkoUGFyYWdyYXBoR3JhbnVsYXJpdHkpOwogICAgIH0KICAgICBpZiAobmV3U2VsZWN0
aW9uLmlzUmFuZ2UoKSkgewotICAgICAgICBtX2ZyYW1lLT5zZXRTZWxlY3Rpb25HcmFudWxhcml0
eShQYXJhZ3JhcGhHcmFudWxhcml0eSk7CiAgICAgICAgIG1fYmVnYW5TZWxlY3RpbmdUZXh0ID0g
dHJ1ZTsKICAgICB9CiAgICAgCkBAIC0zNTAsMTAgKzM0OCw4IEBAIGJvb2wgRXZlbnRIYW5kbGVy
OjpoYW5kbGVNb3VzZVByZXNzRXZlbnRTaW5nbGVDbGljayhjb25zdCBNb3VzZUV2ZW50V2l0aEhp
dFRlc3RSCiAgICAgICAgIGlmIChtX2ZyYW1lLT5zZWxlY3Rpb25HcmFudWxhcml0eSgpICE9IENo
YXJhY3RlckdyYW51bGFyaXR5KQogICAgICAgICAgICAgbmV3U2VsZWN0aW9uLmV4cGFuZFVzaW5n
R3JhbnVsYXJpdHkobV9mcmFtZS0+c2VsZWN0aW9uR3JhbnVsYXJpdHkoKSk7CiAgICAgICAgIG1f
YmVnYW5TZWxlY3RpbmdUZXh0ID0gdHJ1ZTsKLSAgICB9IGVsc2UgeworICAgIH0gZWxzZQogICAg
ICAgICBuZXdTZWxlY3Rpb24gPSBWaXNpYmxlU2VsZWN0aW9uKHZpc2libGVQb3MpOwotICAgICAg
ICBtX2ZyYW1lLT5zZXRTZWxlY3Rpb25HcmFudWxhcml0eShDaGFyYWN0ZXJHcmFudWxhcml0eSk7
Ci0gICAgfQogICAgIAogICAgIGlmIChtX2ZyYW1lLT5zaG91bGRDaGFuZ2VTZWxlY3Rpb24obmV3
U2VsZWN0aW9uKSkKICAgICAgICAgbV9mcmFtZS0+c2VsZWN0aW9uKCktPnNldFNlbGVjdGlvbihu
ZXdTZWxlY3Rpb24pOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcCBiL1dlYkNv
cmUvcGFnZS9GcmFtZS5jcHAKaW5kZXggMjYyYzU2Yy4uMWNkYjFiYiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9wYWdlL0ZyYW1lLmNwcAorKysgYi9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCkBAIC0xMzIs
NyArMTMyLDYgQEAgRnJhbWU6OkZyYW1lKFBhZ2UqIHBhZ2UsIEhUTUxGcmFtZU93bmVyRWxlbWVu
dCogb3duZXJFbGVtZW50LCBGcmFtZUxvYWRlckNsaWVudCoKICAgICAsIG1fcmVkaXJlY3RTY2hl
ZHVsZXIodGhpcykKICAgICAsIG1fb3duZXJFbGVtZW50KG93bmVyRWxlbWVudCkKICAgICAsIG1f
c2NyaXB0KHRoaXMpCi0gICAgLCBtX3NlbGVjdGlvbkdyYW51bGFyaXR5KENoYXJhY3RlckdyYW51
bGFyaXR5KQogICAgICwgbV9zZWxlY3Rpb25Db250cm9sbGVyKHRoaXMpCiAgICAgLCBtX2VkaXRv
cih0aGlzKQogICAgICwgbV9ldmVudEhhbmRsZXIodGhpcykKQEAgLTM2MiwxMiArMzYxLDcgQEAg
RWRpdG9yKiBGcmFtZTo6ZWRpdG9yKCkgY29uc3QKIAogVGV4dEdyYW51bGFyaXR5IEZyYW1lOjpz
ZWxlY3Rpb25HcmFudWxhcml0eSgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fc2VsZWN0aW9uR3Jh
bnVsYXJpdHk7Ci19Ci0KLXZvaWQgRnJhbWU6OnNldFNlbGVjdGlvbkdyYW51bGFyaXR5KFRleHRH
cmFudWxhcml0eSBncmFudWxhcml0eSkKLXsKLSAgICBtX3NlbGVjdGlvbkdyYW51bGFyaXR5ID0g
Z3JhbnVsYXJpdHk7CisgICAgcmV0dXJuIG1fc2VsZWN0aW9uQ29udHJvbGxlci5zZWxlY3Rpb24o
KS5ncmFudWxhcml0eSgpOwogfQogCiBTZWxlY3Rpb25Db250cm9sbGVyKiBGcmFtZTo6ZHJhZ0Nh
cmV0Q29udHJvbGxlcigpIGNvbnN0CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvRnJhbWUuaCBi
L1dlYkNvcmUvcGFnZS9GcmFtZS5oCmluZGV4IDI2ZDFlZmEuLjI0ZTNjNjYgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvcGFnZS9GcmFtZS5oCisrKyBiL1dlYkNvcmUvcGFnZS9GcmFtZS5oCkBAIC0yMzIs
NyArMjMyLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgcHVibGljOgogICAgICAgICBU
ZXh0R3JhbnVsYXJpdHkgc2VsZWN0aW9uR3JhbnVsYXJpdHkoKSBjb25zdDsKLSAgICAgICAgdm9p
ZCBzZXRTZWxlY3Rpb25HcmFudWxhcml0eShUZXh0R3JhbnVsYXJpdHkpOwogCiAgICAgICAgIGJv
b2wgc2hvdWxkQ2hhbmdlU2VsZWN0aW9uKGNvbnN0IFZpc2libGVTZWxlY3Rpb24mKSBjb25zdDsK
ICAgICAgICAgYm9vbCBzaG91bGREZWxldGVTZWxlY3Rpb24oY29uc3QgVmlzaWJsZVNlbGVjdGlv
biYpIGNvbnN0OwpAQCAtMzI1LDggKzMyNCw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAg
ICAgICBmbG9hdCBtX3pvb21GYWN0b3I7CiAKLSAgICAgICAgVGV4dEdyYW51bGFyaXR5IG1fc2Vs
ZWN0aW9uR3JhbnVsYXJpdHk7Ci0KICAgICAgICAgbXV0YWJsZSBTZWxlY3Rpb25Db250cm9sbGVy
IG1fc2VsZWN0aW9uQ29udHJvbGxlcjsKICAgICAgICAgbXV0YWJsZSBWaXNpYmxlU2VsZWN0aW9u
IG1fbWFyazsKICAgICAgICAgbXV0YWJsZSBFZGl0b3IgbV9lZGl0b3I7CmRpZmYgLS1naXQgYS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbC5jcHAgYi9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJUZXh0Q29udHJvbC5jcHAKaW5kZXggZDE4OTQwYi4uYjk4OTAwYSAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2wuY3BwCisrKyBiL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sLmNwcApAQCAtMjY2LDExICsyNjYsNiBAQCB2b2lk
IFJlbmRlclRleHRDb250cm9sOjpzZXRTZWxlY3Rpb25SYW5nZShpbnQgc3RhcnQsIGludCBlbmQp
CiAKICAgICBpZiAoRnJhbWUqIGZyYW1lID0gZG9jdW1lbnQoKS0+ZnJhbWUoKSkKICAgICAgICAg
ZnJhbWUtPnNlbGVjdGlvbigpLT5zZXRTZWxlY3Rpb24obmV3U2VsZWN0aW9uKTsKLQotICAgIC8v
IEZJWE1FOiBHcmFudWxhcml0eSBpcyBzdG9yZWQgc2VwYXJhdGVseSBvbiB0aGUgZnJhbWUsIGJ1
dCBhbHNvIGluIHRoZSBzZWxlY3Rpb24gY29udHJvbGxlci4KLSAgICAvLyBUaGUgZ3JhbnVsYXJp
dHkgaW4gdGhlIHNlbGVjdGlvbiBjb250cm9sbGVyIHNob3VsZCBiZSB1c2VkLCBhbmQgdGhlbiB0
aGlzIGxpbmUgb2YgY29kZSB3b3VsZCBub3QgYmUgbmVlZGVkLgotICAgIGlmIChGcmFtZSogZnJh
bWUgPSBkb2N1bWVudCgpLT5mcmFtZSgpKQotICAgICAgICBmcmFtZS0+c2V0U2VsZWN0aW9uR3Jh
bnVsYXJpdHkoQ2hhcmFjdGVyR3JhbnVsYXJpdHkpOwogfQogCiBWaXNpYmxlU2VsZWN0aW9uIFJl
bmRlclRleHRDb250cm9sOjpzZWxlY3Rpb24oaW50IHN0YXJ0LCBpbnQgZW5kKSBjb25zdApkaWZm
IC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1dlYktpdC9jaHJvbWl1bS9DaGFu
Z2VMb2cKaW5kZXggNGM5MGRlMC4uYTJmNmVmMCAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVt
L0NoYW5nZUxvZworKysgYi9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMg
QEAKKzIwMTAtMDItMjQgIE9qYW4gVmFmYWkgIDxvamFuQGNocm9taXVtLm9yZz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGcmFtZSBzaG91bGQgdXNl
IFNlbGVjdGlvbkNvbnRyb2xsZXIncyBUZXh0R3JhbnVsYXJpdHkgaW5zdGVhZCBvZiBpdCdzIG93
bgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzUzNjgK
KworICAgICAgICAqIHNyYy9XZWJGcmFtZUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJG
cmFtZUltcGw6OnNlbGVjdFdvcmRBcm91bmRQb3NpdGlvbik6CisKIDIwMTAtMDItMjQgIEFkYW0g
QmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBG
aXNoZXIuCmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5jcHAg
Yi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5jcHAKaW5kZXggY2EwNGI4NS4uMzAw
ZWJkOSAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwCisr
KyBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmNwcApAQCAtMTA4Myw5ICsxMDgz
LDYgQEAgdm9pZCBXZWJGcmFtZUltcGw6OnNlbGVjdFdvcmRBcm91bmRQb3NpdGlvbihGcmFtZSog
ZnJhbWUsIFZpc2libGVQb3NpdGlvbiBwb3MpCiAgICAgVmlzaWJsZVNlbGVjdGlvbiBzZWxlY3Rp
b24ocG9zKTsKICAgICBzZWxlY3Rpb24uZXhwYW5kVXNpbmdHcmFudWxhcml0eShXb3JkR3JhbnVs
YXJpdHkpOwogCi0gICAgaWYgKHNlbGVjdGlvbi5pc1JhbmdlKCkpCi0gICAgICAgIGZyYW1lLT5z
ZXRTZWxlY3Rpb25HcmFudWxhcml0eShXb3JkR3JhbnVsYXJpdHkpOwotCiAgICAgaWYgKGZyYW1l
LT5zaG91bGRDaGFuZ2VTZWxlY3Rpb24oc2VsZWN0aW9uKSkKICAgICAgICAgZnJhbWUtPnNlbGVj
dGlvbigpLT5zZXRTZWxlY3Rpb24oc2VsZWN0aW9uKTsKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>49759</attachid>
            <date>2010-03-01 15:38:24 -0800</date>
            <delta_ts>2010-03-04 17:09:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-35368-20100301153823.patch</filename>
            <type>text/plain</type>
            <size>37638</size>
            <attacher name="Ojan Vafai">ojan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0YTdiM2ZlLi42MmFkZDc1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTAtMDMt
MDEgIE9qYW4gVmFmYWkgIDxvamFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGcmFtZSBzaG91bGQgdXNlIFNlbGVjdGlvbkNv
bnRyb2xsZXIncyBUZXh0R3JhbnVsYXJpdHkgaW5zdGVhZCBvZiBpdCdzIG93bgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzUzNjgKKyAKKyAgICAgICAg
KiBlZGl0aW5nL3NlbGVjdGlvbi9kZWxldGUtd29yZC1ncmFudWxhcml0eS10ZXh0LWNvbnRyb2wt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9kZWxldGUt
d29yZC1ncmFudWxhcml0eS10ZXh0LWNvbnRyb2wuaHRtbDogQWRkZWQuCisgICAgICAgICogZWRp
dGluZy9zZWxlY3Rpb24vc2NyaXB0LXRlc3RzL2RlbGV0ZS13b3JkLWdyYW51bGFyaXR5LXRleHQt
Y29udHJvbC5qczogQWRkZWQuCisgICAgICAgIE5vIGNoYW5nZSBpbiBiZWhhdmlvci4gVGVzdHMg
dGhlIGxpbmVzIGJlaW5nIGRlbGV0ZWQgaW4gUmVuZGVyVGV4dENvbnRyb2wuY3BwLgorICAgICAg
ICAqIHBsYXRmb3JtL21hYy9lZGl0aW5nL3NlbGVjdGlvbi9leHBhbmRpbmctc2VsZWN0aW9ucy1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL2VkaXRpbmcvc2VsZWN0aW9uL2V4
cGFuZGluZy1zZWxlY3Rpb25zMi1leHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vbWFj
L2VkaXRpbmcvc2VsZWN0aW9uL3RyaXBsZS1jbGljay1pbi1wcmUtZXhwZWN0ZWQudHh0OgorICAg
ICAgICBUaGUgYWJvdmUgdGhyZWUgcmVzdWx0cyBjaGFuZ2UgYmVjYXVzZSBncmFudWxhcml0eSBp
cyBubyBsb25nZXIgcGFydCBvZiB0aGUKKyAgICAgICAgc2VsZWN0aW9uLCBzbyBjaGFuZ2VzIGlu
IGdyYW51bGFyaXR5IGRvbid0IGZpcmUgc2VsZWN0aW9uIGNoYW5nZSBub3RpZmljYXRpb25zLgor
CiAyMDEwLTAyLTI3ICBJbHlhIFRpa2hvbm92c2t5ICA8bG9pc2xvQGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBQYXZlbCBGZWxkbWFuLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZWRpdGluZy9zZWxlY3Rpb24vZGVsZXRlLXdvcmQtZ3JhbnVsYXJpdHktdGV4dC1jb250cm9s
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RlbGV0ZS13b3Jk
LWdyYW51bGFyaXR5LXRleHQtY29udHJvbC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uNTY1ZGY3MQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2VkaXRpbmcvc2VsZWN0aW9uL2RlbGV0ZS13b3JkLWdyYW51bGFyaXR5LXRleHQtY29udHJvbC1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMCBAQAorVGVzdCB0aGF0IHNldFNlbGVjdGVkUmFuZ2Ug
cmVzZXRzIHRoZSBzZWxlY2l0b24gZ3JhbnVsYXJpdHkgdG8gQ2hhcmFjdGVyR3JhbnVsYXJpdHku
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIFBBU1NFRAorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL2RlbGV0ZS13b3JkLWdyYW51bGFyaXR5LXRleHQt
Y29udHJvbC5odG1sIGIvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vZGVsZXRlLXdvcmQt
Z3JhbnVsYXJpdHktdGV4dC1jb250cm9sLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uNjViZGQ3ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2VkaXRpbmcv
c2VsZWN0aW9uL2RlbGV0ZS13b3JkLWdyYW51bGFyaXR5LXRleHQtY29udHJvbC5odG1sCkBAIC0w
LDAgKzEsMTQgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VO
Ij4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2Zh
c3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9m
YXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL2pzLXRlc3Qtc2VsZWN0aW9uLXNoYXJlZC5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+
Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+Cis8c2NyaXB0IHNyYz0ic2NyaXB0LXRlc3RzL2RlbGV0ZS13b3JkLWdyYW51bGFyaXR5LXRl
eHQtY29udHJvbC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2VkaXRpbmcvc2VsZWN0aW9uL3NjcmlwdC10ZXN0cy9kZWxldGUt
d29yZC1ncmFudWxhcml0eS10ZXh0LWNvbnRyb2wuanMgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3Nl
bGVjdGlvbi9zY3JpcHQtdGVzdHMvZGVsZXRlLXdvcmQtZ3JhbnVsYXJpdHktdGV4dC1jb250cm9s
LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYzNWNiZmMKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9zY3JpcHQtdGVzdHMvZGVs
ZXRlLXdvcmQtZ3JhbnVsYXJpdHktdGV4dC1jb250cm9sLmpzCkBAIC0wLDAgKzEsMjggQEAKK2Rl
c2NyaXB0aW9uKCJUZXN0IHRoYXQgc2V0U2VsZWN0ZWRSYW5nZSByZXNldHMgdGhlIHNlbGVjaXRv
biBncmFudWxhcml0eSB0byBDaGFyYWN0ZXJHcmFudWxhcml0eS4iKTsKKwordmFyIHRleHRhcmVh
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndGV4dGFyZWEnKTsKK3RleHRhcmVhLnZhbHVlID0g
ImZvbyBiYXIgYmF6IjsKK2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGV4dGFyZWEpOworCit2
YXIgcmVjdCA9IHRleHRhcmVhLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOwordmFyIHggPSByZWN0
LmxlZnQgKyAxMDsKK3ZhciB5ID0gcmVjdC50b3AgKyAxMDsKK2lmICh3aW5kb3cuZXZlbnRTZW5k
ZXIpIHsKKyAgICBldmVudFNlbmRlci5tb3VzZU1vdmVUbyh4LCB5KTsKKyAgICBldmVudFNlbmRl
ci5tb3VzZURvd24oKTsKKyAgICBldmVudFNlbmRlci5tb3VzZVVwKCk7CisgICAgZXZlbnRTZW5k
ZXIubW91c2VEb3duKCk7CisgICAgZXZlbnRTZW5kZXIubW91c2VVcCgpOworfQorCit0ZXh0YXJl
YS5zZXRTZWxlY3Rpb25SYW5nZSgwLCAzKTsKK2RvY3VtZW50LmV4ZWNDb21tYW5kKCdkZWxldGUn
KTsKKworLy8gQ2FsbGluZyBzZXRTZWxlY3Rpb25SYW5nZSBzaG91bGQgcmVzZXQgdGhlIGdyYW51
bGFyaXR5IHRvIENoYXJhY3RlckdyYW51bGFyaXR5LCB3aGljaCBtZWFucworLy8gZXhlY0NvbW1h
bmQoJ2RlbGV0ZScpIHNob3VsZCAqbm90KiBkbyBhIHNtYXJ0IGRlbGV0ZS4KK2lmICh0ZXh0YXJl
YS52YWx1ZSA9PSAiIGJhciBiYXoiKQorICAgIHRlc3RQYXNzZWQoIlBBU1NFRCIpOworZWxzZQor
ICAgIHRlc3RGYWlsZWQoIkZBSUxFRC4gdGV4dGFyZWEgdmFsdWUgc2hvdWxkIGJlIFwiIGJhciBi
YXpcIiBhbmQgd2FzIFwiIiArIHRleHRhcmVhLnZhbHVlICsgIlwiIik7CisgICAgCit2YXIgc3Vj
Y2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9zZWxlY3Rpb24vZXhwYW5k
aW5nLXNlbGVjdGlvbnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Vk
aXRpbmcvc2VsZWN0aW9uL2V4cGFuZGluZy1zZWxlY3Rpb25zLWV4cGVjdGVkLnR4dAppbmRleCA3
NDE3NWFiLi4zMTNhZDQ2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRp
dGluZy9zZWxlY3Rpb24vZXhwYW5kaW5nLXNlbGVjdGlvbnMtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3NlbGVjdGlvbi9leHBhbmRpbmctc2VsZWN0
aW9ucy1leHBlY3RlZC50eHQKQEAgLTMsNyArMyw2IEBAIEVESVRJTkcgREVMRUdBVEU6IHdlYlZp
ZXdEaWRCZWdpbkVkaXRpbmc6V2ViVmlld0RpZEJlZ2luRWRpdGluZ05vdGlmaWNhdGlvbgogRURJ
VElORyBERUxFR0FURTogc2hvdWxkQ2hhbmdlU2VsZWN0ZWRET01SYW5nZToobnVsbCkgdG9ET01S
YW5nZTpyYW5nZSBmcm9tIDEgb2YgI3RleHQgPiBTUEFOID4gRElWID4gQk9EWSA+IEhUTUwgPiAj
ZG9jdW1lbnQgdG8gMSBvZiAjdGV4dCA+IFNQQU4gPiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1
bWVudCBhZmZpbml0eTpOU1NlbGVjdGlvbkFmZmluaXR5RG93bnN0cmVhbSBzdGlsbFNlbGVjdGlu
ZzpGQUxTRQogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJW
aWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBFRElUSU5HIERFTEVHQVRFOiBzaG91
bGRDaGFuZ2VTZWxlY3RlZERPTVJhbmdlOnJhbmdlIGZyb20gMSBvZiAjdGV4dCA+IFNQQU4gPiBE
SVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudCB0byAxIG9mICN0ZXh0ID4gU1BBTiA+IERJViA+
IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvRE9NUmFuZ2U6cmFuZ2UgZnJvbSAxIG9mICN0ZXh0
ID4gU1BBTiA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvIDEgb2YgI3RleHQgPiBT
UEFOID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgYWZmaW5pdHk6TlNTZWxlY3Rpb25B
ZmZpbml0eURvd25zdHJlYW0gc3RpbGxTZWxlY3Rpbmc6RkFMU0UKLUVESVRJTkcgREVMRUdBVEU6
IHdlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlm
aWNhdGlvbgogbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCiAgIFJlbmRlclZpZXcgYXQgKDAs
MCkgc2l6ZSA4MDB4NjAwCiBsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3NlbGVjdGlvbi9leHBhbmRpbmctc2Vs
ZWN0aW9uczItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcv
c2VsZWN0aW9uL2V4cGFuZGluZy1zZWxlY3Rpb25zMi1leHBlY3RlZC50eHQKaW5kZXggNjc4ZmZj
MC4uNmJiMDdjMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcv
c2VsZWN0aW9uL2V4cGFuZGluZy1zZWxlY3Rpb25zMi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL2VkaXRpbmcvc2VsZWN0aW9uL2V4cGFuZGluZy1zZWxlY3Rpb25z
Mi1leHBlY3RlZC50eHQKQEAgLTMsNyArMyw2IEBAIEVESVRJTkcgREVMRUdBVEU6IHdlYlZpZXdE
aWRCZWdpbkVkaXRpbmc6V2ViVmlld0RpZEJlZ2luRWRpdGluZ05vdGlmaWNhdGlvbgogRURJVElO
RyBERUxFR0FURTogc2hvdWxkQ2hhbmdlU2VsZWN0ZWRET01SYW5nZToobnVsbCkgdG9ET01SYW5n
ZTpyYW5nZSBmcm9tIDEgb2YgI3RleHQgPiBTUEFOID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9j
dW1lbnQgdG8gMSBvZiAjdGV4dCA+IFNQQU4gPiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1bWVu
dCBhZmZpbml0eTpOU1NlbGVjdGlvbkFmZmluaXR5RG93bnN0cmVhbSBzdGlsbFNlbGVjdGluZzpG
QUxTRQogRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbjpXZWJWaWV3
RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBFRElUSU5HIERFTEVHQVRFOiBzaG91bGRD
aGFuZ2VTZWxlY3RlZERPTVJhbmdlOnJhbmdlIGZyb20gMSBvZiAjdGV4dCA+IFNQQU4gPiBESVYg
PiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudCB0byAxIG9mICN0ZXh0ID4gU1BBTiA+IERJViA+IEJP
RFkgPiBIVE1MID4gI2RvY3VtZW50IHRvRE9NUmFuZ2U6cmFuZ2UgZnJvbSAxIG9mICN0ZXh0ID4g
U1BBTiA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvIDEgb2YgI3RleHQgPiBTUEFO
ID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgYWZmaW5pdHk6TlNTZWxlY3Rpb25BZmZp
bml0eURvd25zdHJlYW0gc3RpbGxTZWxlY3Rpbmc6RkFMU0UKLUVESVRJTkcgREVMRUdBVEU6IHdl
YlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb246V2ViVmlld0RpZENoYW5nZVNlbGVjdGlvbk5vdGlmaWNh
dGlvbgogbGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCiAgIFJlbmRlclZpZXcgYXQgKDAsMCkg
c2l6ZSA4MDB4NjAwCiBsYXllciBhdCAoMCwwKSBzaXplIDgwMHg2MDAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3NlbGVjdGlvbi90cmlwbGUtY2xpY2staW4t
cHJlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9lZGl0aW5nL3NlbGVj
dGlvbi90cmlwbGUtY2xpY2staW4tcHJlLWV4cGVjdGVkLnR4dAppbmRleCA4YWFmNmU0Li4yNmVl
YzY0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZWRpdGluZy9zZWxlY3Rp
b24vdHJpcGxlLWNsaWNrLWluLXByZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL2VkaXRpbmcvc2VsZWN0aW9uL3RyaXBsZS1jbGljay1pbi1wcmUtZXhwZWN0ZWQu
dHh0CkBAIC01LDcgKzUsNiBAQCBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2Vs
ZWN0aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpbwogRURJVElORyBERUxF
R0FURTogc2hvdWxkQ2hhbmdlU2VsZWN0ZWRET01SYW5nZTpyYW5nZSBmcm9tIDMwIG9mICN0ZXh0
ID4gUFJFID4gRElWID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgdG8gMzAgb2YgI3Rl
eHQgPiBQUkUgPiBESVYgPiBESVYgPiBCT0RZID4gSFRNTCA+ICNkb2N1bWVudCB0b0RPTVJhbmdl
OnJhbmdlIGZyb20gMTYgb2YgI3RleHQgPiBQUkUgPiBESVYgPiBESVYgPiBCT0RZID4gSFRNTCA+
ICNkb2N1bWVudCB0byAzMCBvZiAjdGV4dCA+IFBSRSA+IERJViA+IERJViA+IEJPRFkgPiBIVE1M
ID4gI2RvY3VtZW50IGFmZmluaXR5Ok5TU2VsZWN0aW9uQWZmaW5pdHlEb3duc3RyZWFtIHN0aWxs
U2VsZWN0aW5nOkZBTFNFCiBFRElUSU5HIERFTEVHQVRFOiB3ZWJWaWV3RGlkQ2hhbmdlU2VsZWN0
aW9uOldlYlZpZXdEaWRDaGFuZ2VTZWxlY3Rpb25Ob3RpZmljYXRpb24KIEVESVRJTkcgREVMRUdB
VEU6IHNob3VsZENoYW5nZVNlbGVjdGVkRE9NUmFuZ2U6cmFuZ2UgZnJvbSAxNiBvZiAjdGV4dCA+
IFBSRSA+IERJViA+IERJViA+IEJPRFkgPiBIVE1MID4gI2RvY3VtZW50IHRvIDMwIG9mICN0ZXh0
ID4gUFJFID4gRElWID4gRElWID4gQk9EWSA+IEhUTUwgPiAjZG9jdW1lbnQgdG9ET01SYW5nZTpy
YW5nZSBmcm9tIDE2IG9mICN0ZXh0ID4gUFJFID4gRElWID4gRElWID4gQk9EWSA+IEhUTUwgPiAj
ZG9jdW1lbnQgdG8gMzAgb2YgI3RleHQgPiBQUkUgPiBESVYgPiBESVYgPiBCT0RZID4gSFRNTCA+
ICNkb2N1bWVudCBhZmZpbml0eTpOU1NlbGVjdGlvbkFmZmluaXR5RG93bnN0cmVhbSBzdGlsbFNl
bGVjdGluZzpGQUxTRQotRURJVElORyBERUxFR0FURTogd2ViVmlld0RpZENoYW5nZVNlbGVjdGlv
bjpXZWJWaWV3RGlkQ2hhbmdlU2VsZWN0aW9uTm90aWZpY2F0aW9uCiBsYXllciBhdCAoMCwwKSBz
aXplIDgwMHg2MDAKICAgUmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKIGxheWVyIGF0
ICgwLDApIHNpemUgODAweDYwMApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJD
b3JlL0NoYW5nZUxvZwppbmRleCAzMzAwODFhLi44ZDZlYzVlIDEwMDY0NAotLS0gYS9XZWJDb3Jl
L0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDEw
LTAzLTAxICBPamFuIFZhZmFpICA8b2phbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRnJhbWUgc2hvdWxkIHVzZSBTZWxlY3Rp
b25Db250cm9sbGVyJ3MgVGV4dEdyYW51bGFyaXR5IGluc3RlYWQgb2YgaXQncyBvd24KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM1MzY4CisKKyAgICAg
ICAgQ2xlYW51cCBpbiBwcmVwYXJhdGlvbiBmb3Igb3RoZXIgc2VsZWN0aW9uIGNoYW5nZXMuCisg
ICAgICAgIFRoZXJlIHNob3VsZCBiZSBubyB1c2VyLXZpc2libGUgb3IgSlMtdmlzaWJsZSBjaGFu
Z2VzLgorCisgICAgICAgIFRlc3Q6IGVkaXRpbmcvc2VsZWN0aW9uL2RlbGV0ZS13b3JkLWdyYW51
bGFyaXR5LXRleHQtY29udHJvbC5odG1sCisKKyAgICAgICAgKiBXZWJDb3JlLmJhc2UuZXhwOgor
ICAgICAgICAqIGVkaXRpbmcvU2VsZWN0aW9uQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTZWxlY3Rpb25Db250cm9sbGVyOjpTZWxlY3Rpb25Db250cm9sbGVyKToKKyAgICAgICAg
KFdlYkNvcmU6OlNlbGVjdGlvbkNvbnRyb2xsZXI6Om1vdmVUbyk6CisgICAgICAgIChXZWJDb3Jl
OjpTZWxlY3Rpb25Db250cm9sbGVyOjpzZXRTZWxlY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6
U2VsZWN0aW9uQ29udHJvbGxlcjo6bW9kaWZ5KToKKyAgICAgICAgKFdlYkNvcmU6OlNlbGVjdGlv
bkNvbnRyb2xsZXI6OmNsZWFyKToKKyAgICAgICAgKFdlYkNvcmU6OlNlbGVjdGlvbkNvbnRyb2xs
ZXI6OnNldEJhc2UpOgorICAgICAgICAoV2ViQ29yZTo6U2VsZWN0aW9uQ29udHJvbGxlcjo6c2V0
RXh0ZW50KToKKyAgICAgICAgKiBlZGl0aW5nL1NlbGVjdGlvbkNvbnRyb2xsZXIuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OlNlbGVjdGlvbkNvbnRyb2xsZXI6OnNldFNlbGVjdGlvbik6CisgICAgICAg
IChXZWJDb3JlOjpTZWxlY3Rpb25Db250cm9sbGVyOjpncmFudWxhcml0eSk6CisgICAgICAgICog
ZWRpdGluZy9WaXNpYmxlU2VsZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlZpc2libGVT
ZWxlY3Rpb246OlZpc2libGVTZWxlY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6VmlzaWJsZVNl
bGVjdGlvbjo6ZXhwYW5kVXNpbmdHcmFudWxhcml0eSk6CisgICAgICAgIChXZWJDb3JlOjpWaXNp
YmxlU2VsZWN0aW9uOjpzZXRTdGFydEFuZEVuZEZyb21CYXNlQW5kRXh0ZW50UmVzcGVjdGluZ0dy
YW51bGFyaXR5KToKKyAgICAgICAgKFdlYkNvcmU6OlZpc2libGVTZWxlY3Rpb246OnZhbGlkYXRl
KToKKyAgICAgICAgKFdlYkNvcmU6OlZpc2libGVTZWxlY3Rpb246OnNldFdpdGhvdXRWYWxpZGF0
aW9uKToKKyAgICAgICAgKiBlZGl0aW5nL1Zpc2libGVTZWxlY3Rpb24uaDoKKyAgICAgICAgKFdl
YkNvcmU6Om9wZXJhdG9yPT0pOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6Y2xlYXIpOgorICAgICAgICAqIHBhZ2UvRE9N
U2VsZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTVNlbGVjdGlvbjo6ZXh0ZW5kKToK
KyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVu
dEhhbmRsZXI6OnNlbGVjdENsb3Nlc3RXb3JkRnJvbU1vdXNlRXZlbnQpOgorICAgICAgICAoV2Vi
Q29yZTo6RXZlbnRIYW5kbGVyOjpzZWxlY3RDbG9zZXN0V29yZE9yTGlua0Zyb21Nb3VzZUV2ZW50
KToKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VQcmVzc0V2ZW50
VHJpcGxlQ2xpY2spOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpoYW5kbGVNb3Vz
ZVByZXNzRXZlbnRTaW5nbGVDbGljayk6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6
OnVwZGF0ZVNlbGVjdGlvbkZvck1vdXNlRHJhZyk6CisgICAgICAgICogcGFnZS9GcmFtZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpGcmFtZTo6RnJhbWUpOgorICAgICAgICAoV2ViQ29yZTo6RnJh
bWU6OnNlbGVjdGlvbkdyYW51bGFyaXR5KToKKyAgICAgICAgKiBwYWdlL0ZyYW1lLmg6CisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlclRleHRDb250cm9sOjpzZXRTZWxlY3Rpb25SYW5nZSk6CisKIDIwMTAtMDMtMDEgIEph
a29iIFBldHNvdml0cyAgPGpwZXRzb3ZpdHNAcmltLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBEaXJrIFNjaHVsemUuCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAgYi9X
ZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAKaW5kZXggYTFmYjQ0YS4uNzA3ZjgwYyAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9XZWJDb3JlLmJhc2UuZXhwCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5iYXNlLmV4
cApAQCAtNDA2LDcgKzQwNiw3IEBAIF9fWk43V2ViQ29yZTE5QW5pbWF0aW9uQ29udHJvbGxlcjIw
cGF1c2VBbmltYXRpb25BdFRpbWVFUE5TXzEyUmVuZGVyT2JqZWN0RVJLTlNfCiBfX1pON1dlYkNv
cmUxOUFuaW1hdGlvbkNvbnRyb2xsZXIyMXBhdXNlVHJhbnNpdGlvbkF0VGltZUVQTlNfMTJSZW5k
ZXJPYmplY3RFUktOU182U3RyaW5nRWQKIF9fWk43V2ViQ29yZTE5Q1NTU3R5bGVEZWNsYXJhdGlv
bjExc2V0UHJvcGVydHlFUktOU182U3RyaW5nRVMzX1JpCiBfX1pON1dlYkNvcmUxOVNlbGVjdGlv
bkNvbnRyb2xsZXIxMHNldEZvY3VzZWRFYgotX19aTjdXZWJDb3JlMTlTZWxlY3Rpb25Db250cm9s
bGVyMTJzZXRTZWxlY3Rpb25FUktOU18xNlZpc2libGVTZWxlY3Rpb25FYmJiCitfX1pON1dlYkNv
cmUxOVNlbGVjdGlvbkNvbnRyb2xsZXIxMnNldFNlbGVjdGlvbkVSS05TXzE2VmlzaWJsZVNlbGVj
dGlvbkViYmJOU18xNVRleHRHcmFudWxhcml0eUUKIF9fWk43V2ViQ29yZTE5U2VsZWN0aW9uQ29u
dHJvbGxlcjE2c2V0U2VsZWN0ZWRSYW5nZUVQTlNfNVJhbmdlRU5TXzlFQWZmaW5pdHlFYgogX19a
TjdXZWJDb3JlMTlTZWxlY3Rpb25Db250cm9sbGVyNWNsZWFyRXYKIF9fWk43V2ViQ29yZTE5U2Vs
ZWN0aW9uQ29udHJvbGxlcjZtb2RpZnlFTlMwXzExRUFsdGVyYXRpb25FTlMwXzEwRURpcmVjdGlv
bkVOU18xNVRleHRHcmFudWxhcml0eUViCmRpZmYgLS1naXQgYS9XZWJDb3JlL2VkaXRpbmcvU2Vs
ZWN0aW9uQ29udHJvbGxlci5jcHAgYi9XZWJDb3JlL2VkaXRpbmcvU2VsZWN0aW9uQ29udHJvbGxl
ci5jcHAKaW5kZXggMjU5ODJkNC4uOGMwZmU1OSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9lZGl0aW5n
L1NlbGVjdGlvbkNvbnRyb2xsZXIuY3BwCisrKyBiL1dlYkNvcmUvZWRpdGluZy9TZWxlY3Rpb25D
b250cm9sbGVyLmNwcApAQCAtNjUsNiArNjUsNyBAQCBjb25zdCBpbnQgTm9YUG9zRm9yVmVydGlj
YWxBcnJvd05hdmlnYXRpb24gPSBJTlRfTUlOOwogU2VsZWN0aW9uQ29udHJvbGxlcjo6U2VsZWN0
aW9uQ29udHJvbGxlcihGcmFtZSogZnJhbWUsIGJvb2wgaXNEcmFnQ2FyZXRDb250cm9sbGVyKQog
ICAgIDogbV9mcmFtZShmcmFtZSkKICAgICAsIG1feFBvc0ZvclZlcnRpY2FsQXJyb3dOYXZpZ2F0
aW9uKE5vWFBvc0ZvclZlcnRpY2FsQXJyb3dOYXZpZ2F0aW9uKQorICAgICwgbV9ncmFudWxhcml0
eShDaGFyYWN0ZXJHcmFudWxhcml0eSkKICAgICAsIG1fY2FyZXRCbGlua1RpbWVyKHRoaXMsICZT
ZWxlY3Rpb25Db250cm9sbGVyOjpjYXJldEJsaW5rVGltZXJGaXJlZCkKICAgICAsIG1fbmVlZHNM
YXlvdXQodHJ1ZSkKICAgICAsIG1fYWJzQ2FyZXRCb3VuZHNEaXJ0eSh0cnVlKQpAQCAtNzcsMzQg
Kzc4LDM2IEBAIFNlbGVjdGlvbkNvbnRyb2xsZXI6OlNlbGVjdGlvbkNvbnRyb2xsZXIoRnJhbWUq
IGZyYW1lLCBib29sIGlzRHJhZ0NhcmV0Q29udHJvbGxlCiB7CiB9CiAKLXZvaWQgU2VsZWN0aW9u
Q29udHJvbGxlcjo6bW92ZVRvKGNvbnN0IFZpc2libGVQb3NpdGlvbiAmcG9zLCBib29sIHVzZXJU
cmlnZ2VyZWQpCit2b2lkIFNlbGVjdGlvbkNvbnRyb2xsZXI6Om1vdmVUbyhjb25zdCBWaXNpYmxl
UG9zaXRpb24gJnBvcywgYm9vbCB1c2VyVHJpZ2dlcmVkLCBUZXh0R3JhbnVsYXJpdHkgZ3JhbnVs
YXJpdHkpCiB7Ci0gICAgc2V0U2VsZWN0aW9uKFZpc2libGVTZWxlY3Rpb24ocG9zLmRlZXBFcXVp
dmFsZW50KCksIHBvcy5kZWVwRXF1aXZhbGVudCgpLCBwb3MuYWZmaW5pdHkoKSksIHRydWUsIHRy
dWUsIHVzZXJUcmlnZ2VyZWQpOworICAgIHNldFNlbGVjdGlvbihWaXNpYmxlU2VsZWN0aW9uKHBv
cy5kZWVwRXF1aXZhbGVudCgpLCBwb3MuZGVlcEVxdWl2YWxlbnQoKSwgcG9zLmFmZmluaXR5KCkp
LCB0cnVlLCB0cnVlLCB1c2VyVHJpZ2dlcmVkLCBncmFudWxhcml0eSk7CiB9CiAKLXZvaWQgU2Vs
ZWN0aW9uQ29udHJvbGxlcjo6bW92ZVRvKGNvbnN0IFZpc2libGVQb3NpdGlvbiAmYmFzZSwgY29u
c3QgVmlzaWJsZVBvc2l0aW9uICZleHRlbnQsIGJvb2wgdXNlclRyaWdnZXJlZCkKK3ZvaWQgU2Vs
ZWN0aW9uQ29udHJvbGxlcjo6bW92ZVRvKGNvbnN0IFZpc2libGVQb3NpdGlvbiAmYmFzZSwgY29u
c3QgVmlzaWJsZVBvc2l0aW9uICZleHRlbnQsIGJvb2wgdXNlclRyaWdnZXJlZCwgVGV4dEdyYW51
bGFyaXR5IGdyYW51bGFyaXR5KQogewotICAgIHNldFNlbGVjdGlvbihWaXNpYmxlU2VsZWN0aW9u
KGJhc2UuZGVlcEVxdWl2YWxlbnQoKSwgZXh0ZW50LmRlZXBFcXVpdmFsZW50KCksIGJhc2UuYWZm
aW5pdHkoKSksIHRydWUsIHRydWUsIHVzZXJUcmlnZ2VyZWQpOworICAgIHNldFNlbGVjdGlvbihW
aXNpYmxlU2VsZWN0aW9uKGJhc2UuZGVlcEVxdWl2YWxlbnQoKSwgZXh0ZW50LmRlZXBFcXVpdmFs
ZW50KCksIGJhc2UuYWZmaW5pdHkoKSksIHRydWUsIHRydWUsIHVzZXJUcmlnZ2VyZWQsIGdyYW51
bGFyaXR5KTsKIH0KIAotdm9pZCBTZWxlY3Rpb25Db250cm9sbGVyOjptb3ZlVG8oY29uc3QgUG9z
aXRpb24gJnBvcywgRUFmZmluaXR5IGFmZmluaXR5LCBib29sIHVzZXJUcmlnZ2VyZWQpCit2b2lk
IFNlbGVjdGlvbkNvbnRyb2xsZXI6Om1vdmVUbyhjb25zdCBQb3NpdGlvbiAmcG9zLCBFQWZmaW5p
dHkgYWZmaW5pdHksIGJvb2wgdXNlclRyaWdnZXJlZCwgVGV4dEdyYW51bGFyaXR5IGdyYW51bGFy
aXR5KQogewotICAgIHNldFNlbGVjdGlvbihWaXNpYmxlU2VsZWN0aW9uKHBvcywgYWZmaW5pdHkp
LCB0cnVlLCB0cnVlLCB1c2VyVHJpZ2dlcmVkKTsKKyAgICBzZXRTZWxlY3Rpb24oVmlzaWJsZVNl
bGVjdGlvbihwb3MsIGFmZmluaXR5KSwgdHJ1ZSwgdHJ1ZSwgdXNlclRyaWdnZXJlZCwgZ3JhbnVs
YXJpdHkpOwogfQogCi12b2lkIFNlbGVjdGlvbkNvbnRyb2xsZXI6Om1vdmVUbyhjb25zdCBSYW5n
ZSAqciwgRUFmZmluaXR5IGFmZmluaXR5LCBib29sIHVzZXJUcmlnZ2VyZWQpCit2b2lkIFNlbGVj
dGlvbkNvbnRyb2xsZXI6Om1vdmVUbyhjb25zdCBSYW5nZSAqciwgRUFmZmluaXR5IGFmZmluaXR5
LCBib29sIHVzZXJUcmlnZ2VyZWQsIFRleHRHcmFudWxhcml0eSBncmFudWxhcml0eSkKIHsKICAg
ICBWaXNpYmxlU2VsZWN0aW9uIHNlbGVjdGlvbiA9IHIgPyBWaXNpYmxlU2VsZWN0aW9uKHItPnN0
YXJ0UG9zaXRpb24oKSwgci0+ZW5kUG9zaXRpb24oKSwgYWZmaW5pdHkpIDogVmlzaWJsZVNlbGVj
dGlvbihQb3NpdGlvbigpLCBQb3NpdGlvbigpLCBhZmZpbml0eSk7Ci0gICAgc2V0U2VsZWN0aW9u
KHNlbGVjdGlvbiwgdHJ1ZSwgdHJ1ZSwgdXNlclRyaWdnZXJlZCk7CisgICAgc2V0U2VsZWN0aW9u
KHNlbGVjdGlvbiwgdHJ1ZSwgdHJ1ZSwgdXNlclRyaWdnZXJlZCwgZ3JhbnVsYXJpdHkpOwogfQog
Ci12b2lkIFNlbGVjdGlvbkNvbnRyb2xsZXI6Om1vdmVUbyhjb25zdCBQb3NpdGlvbiAmYmFzZSwg
Y29uc3QgUG9zaXRpb24gJmV4dGVudCwgRUFmZmluaXR5IGFmZmluaXR5LCBib29sIHVzZXJUcmln
Z2VyZWQpCit2b2lkIFNlbGVjdGlvbkNvbnRyb2xsZXI6Om1vdmVUbyhjb25zdCBQb3NpdGlvbiAm
YmFzZSwgY29uc3QgUG9zaXRpb24gJmV4dGVudCwgRUFmZmluaXR5IGFmZmluaXR5LCBib29sIHVz
ZXJUcmlnZ2VyZWQsIFRleHRHcmFudWxhcml0eSBncmFudWxhcml0eSkKIHsKLSAgICBzZXRTZWxl
Y3Rpb24oVmlzaWJsZVNlbGVjdGlvbihiYXNlLCBleHRlbnQsIGFmZmluaXR5KSwgdHJ1ZSwgdHJ1
ZSwgdXNlclRyaWdnZXJlZCk7CisgICAgc2V0U2VsZWN0aW9uKFZpc2libGVTZWxlY3Rpb24oYmFz
ZSwgZXh0ZW50LCBhZmZpbml0eSksIHRydWUsIHRydWUsIHVzZXJUcmlnZ2VyZWQsIGdyYW51bGFy
aXR5KTsKIH0KIAotdm9pZCBTZWxlY3Rpb25Db250cm9sbGVyOjpzZXRTZWxlY3Rpb24oY29uc3Qg
VmlzaWJsZVNlbGVjdGlvbiYgcywgYm9vbCBjbG9zZVR5cGluZywgYm9vbCBjbGVhclR5cGluZ1N0
eWxlLCBib29sIHVzZXJUcmlnZ2VyZWQpCit2b2lkIFNlbGVjdGlvbkNvbnRyb2xsZXI6OnNldFNl
bGVjdGlvbihjb25zdCBWaXNpYmxlU2VsZWN0aW9uJiBzLCBib29sIGNsb3NlVHlwaW5nLCBib29s
IGNsZWFyVHlwaW5nU3R5bGUsIGJvb2wgdXNlclRyaWdnZXJlZCwgVGV4dEdyYW51bGFyaXR5IGdy
YW51bGFyaXR5KQogeworICAgIG1fZ3JhbnVsYXJpdHkgPSBncmFudWxhcml0eTsKKwogICAgIG1f
bGFzdENoYW5nZVdhc0hvcml6b250YWxFeHRlbnNpb24gPSBmYWxzZTsKIAogICAgIGlmIChtX2lz
RHJhZ0NhcmV0Q29udHJvbGxlcikgewpAQCAtNTk5LDkgKzYwMiw3IEBAIGJvb2wgU2VsZWN0aW9u
Q29udHJvbGxlcjo6bW9kaWZ5KEVBbHRlcmF0aW9uIGFsdGVyLCBFRGlyZWN0aW9uIGRpciwgVGV4
dEdyYW51bGFyCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCi0gICAgaWYgKG1f
ZnJhbWUpCi0gICAgICAgIG1fZnJhbWUtPnNldFNlbGVjdGlvbkdyYW51bGFyaXR5KGdyYW51bGFy
aXR5KTsKLSAgICAKKyAgICBtX2dyYW51bGFyaXR5ID0gZ3JhbnVsYXJpdHk7CiAgICAgd2lsbEJl
TW9kaWZpZWQoYWx0ZXIsIGRpcik7CiAKICAgICBWaXNpYmxlUG9zaXRpb24gcG9zOwpAQCAtNjM0
LDcgKzYzNSw3IEBAIGJvb2wgU2VsZWN0aW9uQ29udHJvbGxlcjo6bW9kaWZ5KEVBbHRlcmF0aW9u
IGFsdGVyLCBFRGlyZWN0aW9uIGRpciwgVGV4dEdyYW51bGFyCiAKICAgICBpZiAocG9zLmlzTnVs
bCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgCisKICAgICAvLyBTb21lIG9mIHRoZSBh
Ym92ZSBvcGVyYXRpb25zIHNldCBhbiB4UG9zRm9yVmVydGljYWxBcnJvd05hdmlnYXRpb24uCiAg
ICAgLy8gU2V0dGluZyBhIHNlbGVjdGlvbiB3aWxsIGNsZWFyIGl0LCBzbyBzYXZlIGl0IHRvIHBv
c3NpYmx5IHJlc3RvcmUgbGF0ZXIuCiAgICAgLy8gTm90ZTogdGhlIFNUQVJUIHBvc2l0aW9uIHR5
cGUgaXMgYXJiaXRyYXJ5IGJlY2F1c2UgaXQgaXMgdW51c2VkLCBpdCB3b3VsZCBiZQpAQCAtNjQz
LDIzICs2NDQsMjIgQEAgYm9vbCBTZWxlY3Rpb25Db250cm9sbGVyOjptb2RpZnkoRUFsdGVyYXRp
b24gYWx0ZXIsIEVEaXJlY3Rpb24gZGlyLCBUZXh0R3JhbnVsYXIKIAogICAgIHN3aXRjaCAoYWx0
ZXIpIHsKICAgICAgICAgY2FzZSBNT1ZFOgotICAgICAgICAgICAgbW92ZVRvKHBvcywgdXNlclRy
aWdnZXJlZCk7CisgICAgICAgICAgICBtb3ZlVG8ocG9zLCB1c2VyVHJpZ2dlcmVkLCBncmFudWxh
cml0eSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBFWFRFTkQ6Ci0gICAgICAg
ICAgICBzZXRFeHRlbnQocG9zLCB1c2VyVHJpZ2dlcmVkKTsKKyAgICAgICAgICAgIHNldEV4dGVu
dChwb3MsIHVzZXJUcmlnZ2VyZWQsIGdyYW51bGFyaXR5KTsKICAgICAgICAgICAgIGJyZWFrOwog
ICAgIH0KICAgICAKICAgICBpZiAoZ3JhbnVsYXJpdHkgPT0gTGluZUdyYW51bGFyaXR5IHx8IGdy
YW51bGFyaXR5ID09IFBhcmFncmFwaEdyYW51bGFyaXR5KQogICAgICAgICBtX3hQb3NGb3JWZXJ0
aWNhbEFycm93TmF2aWdhdGlvbiA9IHg7CiAKLSAgICBpZiAodXNlclRyaWdnZXJlZCkgeworICAg
IGlmICh1c2VyVHJpZ2dlcmVkICYmICEoYWx0ZXIgPT0gRVhURU5EICYmIGdyYW51bGFyaXR5ID09
IFdvcmRHcmFudWxhcml0eSkpIHsKICAgICAgICAgLy8gVXNlciBtb2RpZmllZCBzZWxlY3Rpb24g
Y2hhbmdlIGFsc28gc2V0cyB0aGUgZ3JhbnVsYXJpdHkgYmFjayB0byBjaGFyYWN0ZXIuCiAgICAg
ICAgIC8vIE5PVEU6IFRoZSBvbmUgZXhjZXB0aW9uIGlzIHRoYXQgd2UgbmVlZCB0byBrZWVwIHdv
cmQgZ3JhbnVsYXJpdHkgdG8KICAgICAgICAgLy8gcHJlc2VydmUgc21hcnQgZGVsZXRlIGJlaGF2
aW9yIHdoZW4gZXh0ZW5kaW5nIGJ5IHdvcmQgKGUuZy4gZG91YmxlLWNsaWNrKSwKICAgICAgICAg
Ly8gdGhlbiBzaGlmdC1vcHRpb24tcmlnaHQgYXJyb3csIHRoZW4gZGVsZXRlIG5lZWRzIHRvIHNt
YXJ0IGRlbGV0ZSwgcGVyIFRleHRFZGl0LgotICAgICAgICBpZiAoIShhbHRlciA9PSBFWFRFTkQg
JiYgZ3JhbnVsYXJpdHkgPT0gV29yZEdyYW51bGFyaXR5ICYmIG1fZnJhbWUtPnNlbGVjdGlvbkdy
YW51bGFyaXR5KCkgPT0gV29yZEdyYW51bGFyaXR5KSkKLSAgICAgICAgICAgIG1fZnJhbWUtPnNl
dFNlbGVjdGlvbkdyYW51bGFyaXR5KENoYXJhY3RlckdyYW51bGFyaXR5KTsKKyAgICAgICAgbV9n
cmFudWxhcml0eSA9IENoYXJhY3RlckdyYW51bGFyaXR5OwogICAgIH0KIAogICAgIHNldE5lZWRz
TGF5b3V0KCk7CkBAIC03NTUsMjMgKzc1NSwxMyBAQCBib29sIFNlbGVjdGlvbkNvbnRyb2xsZXI6
Om1vZGlmeShFQWx0ZXJhdGlvbiBhbHRlciwgaW50IHZlcnRpY2FsRGlzdGFuY2UsIGJvb2wgdQog
ICAgIH0KIAogICAgIGlmICh1c2VyVHJpZ2dlcmVkKQotICAgICAgICBtX2ZyYW1lLT5zZXRTZWxl
Y3Rpb25HcmFudWxhcml0eShDaGFyYWN0ZXJHcmFudWxhcml0eSk7CisgICAgICAgIG1fZ3JhbnVs
YXJpdHkgPSBDaGFyYWN0ZXJHcmFudWxhcml0eTsKIAogICAgIG1fbGFzdENoYW5nZVdhc0hvcml6
b250YWxFeHRlbnNpb24gPSBhbHRlciA9PSBFWFRFTkQ7CiAKICAgICByZXR1cm4gdHJ1ZTsKIH0K
IAotYm9vbCBTZWxlY3Rpb25Db250cm9sbGVyOjpleHBhbmRVc2luZ0dyYW51bGFyaXR5KFRleHRH
cmFudWxhcml0eSBncmFudWxhcml0eSkKLXsKLSAgICBpZiAoaXNOb25lKCkpCi0gICAgICAgIHJl
dHVybiBmYWxzZTsKLQotICAgIG1fc2VsZWN0aW9uLmV4cGFuZFVzaW5nR3JhbnVsYXJpdHkoZ3Jh
bnVsYXJpdHkpOwotICAgIG1fbmVlZHNMYXlvdXQgPSB0cnVlOwotICAgIHJldHVybiB0cnVlOwot
fQotCiBpbnQgU2VsZWN0aW9uQ29udHJvbGxlcjo6eFBvc0ZvclZlcnRpY2FsQXJyb3dOYXZpZ2F0
aW9uKEVQb3NpdGlvblR5cGUgdHlwZSkKIHsKICAgICBpbnQgeCA9IDA7CkBAIC04MTQsMjcgKzgw
NCwyOCBAQCBpbnQgU2VsZWN0aW9uQ29udHJvbGxlcjo6eFBvc0ZvclZlcnRpY2FsQXJyb3dOYXZp
Z2F0aW9uKEVQb3NpdGlvblR5cGUgdHlwZSkKIAogdm9pZCBTZWxlY3Rpb25Db250cm9sbGVyOjpj
bGVhcigpCiB7CisgICAgbV9ncmFudWxhcml0eSA9IENoYXJhY3RlckdyYW51bGFyaXR5OwogICAg
IHNldFNlbGVjdGlvbihWaXNpYmxlU2VsZWN0aW9uKCkpOwogfQogCi12b2lkIFNlbGVjdGlvbkNv
bnRyb2xsZXI6OnNldEJhc2UoY29uc3QgVmlzaWJsZVBvc2l0aW9uICZwb3MsIGJvb2wgdXNlclRy
aWdnZXJlZCkKK3ZvaWQgU2VsZWN0aW9uQ29udHJvbGxlcjo6c2V0QmFzZShjb25zdCBWaXNpYmxl
UG9zaXRpb24gJnBvcywgYm9vbCB1c2VyVHJpZ2dlcmVkLCBUZXh0R3JhbnVsYXJpdHkgZ3JhbnVs
YXJpdHkpCiB7Ci0gICAgc2V0U2VsZWN0aW9uKFZpc2libGVTZWxlY3Rpb24ocG9zLmRlZXBFcXVp
dmFsZW50KCksIG1fc2VsZWN0aW9uLmV4dGVudCgpLCBwb3MuYWZmaW5pdHkoKSksIHRydWUsIHRy
dWUsIHVzZXJUcmlnZ2VyZWQpOworICAgIHNldFNlbGVjdGlvbihWaXNpYmxlU2VsZWN0aW9uKHBv
cy5kZWVwRXF1aXZhbGVudCgpLCBtX3NlbGVjdGlvbi5leHRlbnQoKSwgcG9zLmFmZmluaXR5KCkp
LCB0cnVlLCB0cnVlLCB1c2VyVHJpZ2dlcmVkLCBncmFudWxhcml0eSk7CiB9CiAKLXZvaWQgU2Vs
ZWN0aW9uQ29udHJvbGxlcjo6c2V0RXh0ZW50KGNvbnN0IFZpc2libGVQb3NpdGlvbiAmcG9zLCBi
b29sIHVzZXJUcmlnZ2VyZWQpCit2b2lkIFNlbGVjdGlvbkNvbnRyb2xsZXI6OnNldEV4dGVudChj
b25zdCBWaXNpYmxlUG9zaXRpb24gJnBvcywgYm9vbCB1c2VyVHJpZ2dlcmVkLCBUZXh0R3JhbnVs
YXJpdHkgZ3JhbnVsYXJpdHkpCiB7Ci0gICAgc2V0U2VsZWN0aW9uKFZpc2libGVTZWxlY3Rpb24o
bV9zZWxlY3Rpb24uYmFzZSgpLCBwb3MuZGVlcEVxdWl2YWxlbnQoKSwgcG9zLmFmZmluaXR5KCkp
LCB0cnVlLCB0cnVlLCB1c2VyVHJpZ2dlcmVkKTsKKyAgICBzZXRTZWxlY3Rpb24oVmlzaWJsZVNl
bGVjdGlvbihtX3NlbGVjdGlvbi5iYXNlKCksIHBvcy5kZWVwRXF1aXZhbGVudCgpLCBwb3MuYWZm
aW5pdHkoKSksIHRydWUsIHRydWUsIHVzZXJUcmlnZ2VyZWQsIGdyYW51bGFyaXR5KTsKIH0KIAot
dm9pZCBTZWxlY3Rpb25Db250cm9sbGVyOjpzZXRCYXNlKGNvbnN0IFBvc2l0aW9uICZwb3MsIEVB
ZmZpbml0eSBhZmZpbml0eSwgYm9vbCB1c2VyVHJpZ2dlcmVkKQordm9pZCBTZWxlY3Rpb25Db250
cm9sbGVyOjpzZXRCYXNlKGNvbnN0IFBvc2l0aW9uICZwb3MsIEVBZmZpbml0eSBhZmZpbml0eSwg
Ym9vbCB1c2VyVHJpZ2dlcmVkLCBUZXh0R3JhbnVsYXJpdHkgZ3JhbnVsYXJpdHkpCiB7Ci0gICAg
c2V0U2VsZWN0aW9uKFZpc2libGVTZWxlY3Rpb24ocG9zLCBtX3NlbGVjdGlvbi5leHRlbnQoKSwg
YWZmaW5pdHkpLCB0cnVlLCB0cnVlLCB1c2VyVHJpZ2dlcmVkKTsKKyAgICBzZXRTZWxlY3Rpb24o
VmlzaWJsZVNlbGVjdGlvbihwb3MsIG1fc2VsZWN0aW9uLmV4dGVudCgpLCBhZmZpbml0eSksIHRy
dWUsIHRydWUsIHVzZXJUcmlnZ2VyZWQsIGdyYW51bGFyaXR5KTsKIH0KIAotdm9pZCBTZWxlY3Rp
b25Db250cm9sbGVyOjpzZXRFeHRlbnQoY29uc3QgUG9zaXRpb24gJnBvcywgRUFmZmluaXR5IGFm
ZmluaXR5LCBib29sIHVzZXJUcmlnZ2VyZWQpCit2b2lkIFNlbGVjdGlvbkNvbnRyb2xsZXI6OnNl
dEV4dGVudChjb25zdCBQb3NpdGlvbiAmcG9zLCBFQWZmaW5pdHkgYWZmaW5pdHksIGJvb2wgdXNl
clRyaWdnZXJlZCwgVGV4dEdyYW51bGFyaXR5IGdyYW51bGFyaXR5KQogewotICAgIHNldFNlbGVj
dGlvbihWaXNpYmxlU2VsZWN0aW9uKG1fc2VsZWN0aW9uLmJhc2UoKSwgcG9zLCBhZmZpbml0eSks
IHRydWUsIHRydWUsIHVzZXJUcmlnZ2VyZWQpOworICAgIHNldFNlbGVjdGlvbihWaXNpYmxlU2Vs
ZWN0aW9uKG1fc2VsZWN0aW9uLmJhc2UoKSwgcG9zLCBhZmZpbml0eSksIHRydWUsIHRydWUsIHVz
ZXJUcmlnZ2VyZWQsIGdyYW51bGFyaXR5KTsKIH0KIAogdm9pZCBTZWxlY3Rpb25Db250cm9sbGVy
OjpzZXROZWVkc0xheW91dChib29sIGZsYWcpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2VkaXRpbmcv
U2VsZWN0aW9uQ29udHJvbGxlci5oIGIvV2ViQ29yZS9lZGl0aW5nL1NlbGVjdGlvbkNvbnRyb2xs
ZXIuaAppbmRleCA2ODQ5Y2I2Li43MDg5YjliIDEwMDY0NAotLS0gYS9XZWJDb3JlL2VkaXRpbmcv
U2VsZWN0aW9uQ29udHJvbGxlci5oCisrKyBiL1dlYkNvcmUvZWRpdGluZy9TZWxlY3Rpb25Db250
cm9sbGVyLmgKQEAgLTUxLDE0ICs1MSwxNSBAQCBwdWJsaWM6CiAgICAgYm9vbCBpc0NvbnRlbnRS
aWNobHlFZGl0YWJsZSgpIGNvbnN0IHsgcmV0dXJuIG1fc2VsZWN0aW9uLmlzQ29udGVudFJpY2hs
eUVkaXRhYmxlKCk7IH0KICAgICBOb2RlKiBzaGFkb3dUcmVlUm9vdE5vZGUoKSBjb25zdCB7IHJl
dHVybiBtX3NlbGVjdGlvbi5zaGFkb3dUcmVlUm9vdE5vZGUoKTsgfQogICAgICAKLSAgICB2b2lk
IG1vdmVUbyhjb25zdCBSYW5nZSosIEVBZmZpbml0eSwgYm9vbCB1c2VyVHJpZ2dlcmVkID0gZmFs
c2UpOwotICAgIHZvaWQgbW92ZVRvKGNvbnN0IFZpc2libGVQb3NpdGlvbiYsIGJvb2wgdXNlclRy
aWdnZXJlZCA9IGZhbHNlKTsKLSAgICB2b2lkIG1vdmVUbyhjb25zdCBWaXNpYmxlUG9zaXRpb24m
LCBjb25zdCBWaXNpYmxlUG9zaXRpb24mLCBib29sIHVzZXJUcmlnZ2VyZWQgPSBmYWxzZSk7Ci0g
ICAgdm9pZCBtb3ZlVG8oY29uc3QgUG9zaXRpb24mLCBFQWZmaW5pdHksIGJvb2wgdXNlclRyaWdn
ZXJlZCA9IGZhbHNlKTsKLSAgICB2b2lkIG1vdmVUbyhjb25zdCBQb3NpdGlvbiYsIGNvbnN0IFBv
c2l0aW9uJiwgRUFmZmluaXR5LCBib29sIHVzZXJUcmlnZ2VyZWQgPSBmYWxzZSk7CisgICAgdm9p
ZCBtb3ZlVG8oY29uc3QgUmFuZ2UqLCBFQWZmaW5pdHksIGJvb2wgdXNlclRyaWdnZXJlZCA9IGZh
bHNlLCBUZXh0R3JhbnVsYXJpdHkgPSBDaGFyYWN0ZXJHcmFudWxhcml0eSk7CisgICAgdm9pZCBt
b3ZlVG8oY29uc3QgVmlzaWJsZVBvc2l0aW9uJiwgYm9vbCB1c2VyVHJpZ2dlcmVkID0gZmFsc2Us
IFRleHRHcmFudWxhcml0eSA9IENoYXJhY3RlckdyYW51bGFyaXR5KTsKKyAgICB2b2lkIG1vdmVU
byhjb25zdCBWaXNpYmxlUG9zaXRpb24mLCBjb25zdCBWaXNpYmxlUG9zaXRpb24mLCBib29sIHVz
ZXJUcmlnZ2VyZWQgPSBmYWxzZSwgVGV4dEdyYW51bGFyaXR5ID0gQ2hhcmFjdGVyR3JhbnVsYXJp
dHkpOworICAgIHZvaWQgbW92ZVRvKGNvbnN0IFBvc2l0aW9uJiwgRUFmZmluaXR5LCBib29sIHVz
ZXJUcmlnZ2VyZWQgPSBmYWxzZSwgVGV4dEdyYW51bGFyaXR5ID0gQ2hhcmFjdGVyR3JhbnVsYXJp
dHkpOworICAgIHZvaWQgbW92ZVRvKGNvbnN0IFBvc2l0aW9uJiwgY29uc3QgUG9zaXRpb24mLCBF
QWZmaW5pdHksIGJvb2wgdXNlclRyaWdnZXJlZCA9IGZhbHNlLCBUZXh0R3JhbnVsYXJpdHkgPSBD
aGFyYWN0ZXJHcmFudWxhcml0eSk7CiAKICAgICBjb25zdCBWaXNpYmxlU2VsZWN0aW9uJiBzZWxl
Y3Rpb24oKSBjb25zdCB7IHJldHVybiBtX3NlbGVjdGlvbjsgfQotICAgIHZvaWQgc2V0U2VsZWN0
aW9uKGNvbnN0IFZpc2libGVTZWxlY3Rpb24mLCBib29sIGNsb3NlVHlwaW5nID0gdHJ1ZSwgYm9v
bCBjbGVhclR5cGluZ1N0eWxlID0gdHJ1ZSwgYm9vbCB1c2VyVHJpZ2dlcmVkID0gZmFsc2UpOwor
ICAgIHZvaWQgc2V0U2VsZWN0aW9uKGNvbnN0IFZpc2libGVTZWxlY3Rpb24mLCBib29sIGNsb3Nl
VHlwaW5nID0gdHJ1ZSwgYm9vbCBjbGVhclR5cGluZ1N0eWxlID0gdHJ1ZSwgYm9vbCB1c2VyVHJp
Z2dlcmVkID0gZmFsc2UsIFRleHRHcmFudWxhcml0eSA9IENoYXJhY3RlckdyYW51bGFyaXR5KTsK
KyAgICB2b2lkIHNldFNlbGVjdGlvbihjb25zdCBWaXNpYmxlU2VsZWN0aW9uJiBzZWxlY3Rpb24s
IFRleHRHcmFudWxhcml0eSBncmFudWxhcml0eSkgeyBzZXRTZWxlY3Rpb24oc2VsZWN0aW9uLCB0
cnVlLCB0cnVlLCBmYWxzZSwgZ3JhbnVsYXJpdHkpOyB9CiAgICAgYm9vbCBzZXRTZWxlY3RlZFJh
bmdlKFJhbmdlKiwgRUFmZmluaXR5LCBib29sIGNsb3NlVHlwaW5nKTsKICAgICB2b2lkIHNlbGVj
dEFsbCgpOwogICAgIHZvaWQgY2xlYXIoKTsKQEAgLTc0LDEyICs3NSwxMiBAQCBwdWJsaWM6CiAK
ICAgICBib29sIG1vZGlmeShFQWx0ZXJhdGlvbiwgRURpcmVjdGlvbiwgVGV4dEdyYW51bGFyaXR5
LCBib29sIHVzZXJUcmlnZ2VyZWQgPSBmYWxzZSk7CiAgICAgYm9vbCBtb2RpZnkoRUFsdGVyYXRp
b24sIGludCB2ZXJ0aWNhbERpc3RhbmNlLCBib29sIHVzZXJUcmlnZ2VyZWQgPSBmYWxzZSk7Ci0g
ICAgYm9vbCBleHBhbmRVc2luZ0dyYW51bGFyaXR5KFRleHRHcmFudWxhcml0eSk7CisgICAgVGV4
dEdyYW51bGFyaXR5IGdyYW51bGFyaXR5KCkgY29uc3QgeyByZXR1cm4gbV9ncmFudWxhcml0eTsg
fQogCi0gICAgdm9pZCBzZXRCYXNlKGNvbnN0IFZpc2libGVQb3NpdGlvbiYsIGJvb2wgdXNlclRy
aWdnZXJlZCA9IGZhbHNlKTsKLSAgICB2b2lkIHNldEJhc2UoY29uc3QgUG9zaXRpb24mLCBFQWZm
aW5pdHksIGJvb2wgdXNlclRyaWdnZXJlZCA9IGZhbHNlKTsKLSAgICB2b2lkIHNldEV4dGVudChj
b25zdCBWaXNpYmxlUG9zaXRpb24mLCBib29sIHVzZXJUcmlnZ2VyZWQgPSBmYWxzZSk7Ci0gICAg
dm9pZCBzZXRFeHRlbnQoY29uc3QgUG9zaXRpb24mLCBFQWZmaW5pdHksIGJvb2wgdXNlclRyaWdn
ZXJlZCA9IGZhbHNlKTsKKyAgICB2b2lkIHNldEJhc2UoY29uc3QgVmlzaWJsZVBvc2l0aW9uJiwg
Ym9vbCB1c2VyVHJpZ2dlcmVkID0gZmFsc2UsIFRleHRHcmFudWxhcml0eSA9IENoYXJhY3Rlckdy
YW51bGFyaXR5KTsKKyAgICB2b2lkIHNldEJhc2UoY29uc3QgUG9zaXRpb24mLCBFQWZmaW5pdHks
IGJvb2wgdXNlclRyaWdnZXJlZCA9IGZhbHNlLCBUZXh0R3JhbnVsYXJpdHkgPSBDaGFyYWN0ZXJH
cmFudWxhcml0eSk7CisgICAgdm9pZCBzZXRFeHRlbnQoY29uc3QgVmlzaWJsZVBvc2l0aW9uJiwg
Ym9vbCB1c2VyVHJpZ2dlcmVkID0gZmFsc2UsIFRleHRHcmFudWxhcml0eSA9IENoYXJhY3Rlckdy
YW51bGFyaXR5KTsKKyAgICB2b2lkIHNldEV4dGVudChjb25zdCBQb3NpdGlvbiYsIEVBZmZpbml0
eSwgYm9vbCB1c2VyVHJpZ2dlcmVkID0gZmFsc2UsIFRleHRHcmFudWxhcml0eSA9IENoYXJhY3Rl
ckdyYW51bGFyaXR5KTsKIAogICAgIFBvc2l0aW9uIGJhc2UoKSBjb25zdCB7IHJldHVybiBtX3Nl
bGVjdGlvbi5iYXNlKCk7IH0KICAgICBQb3NpdGlvbiBleHRlbnQoKSBjb25zdCB7IHJldHVybiBt
X3NlbGVjdGlvbi5leHRlbnQoKTsgfQpAQCAtMTcyLDYgKzE3Myw3IEBAIHByaXZhdGU6CiAgICAg
aW50IG1feFBvc0ZvclZlcnRpY2FsQXJyb3dOYXZpZ2F0aW9uOwogCiAgICAgVmlzaWJsZVNlbGVj
dGlvbiBtX3NlbGVjdGlvbjsKKyAgICBUZXh0R3JhbnVsYXJpdHkgbV9ncmFudWxhcml0eTsKIAog
ICAgIFRpbWVyPFNlbGVjdGlvbkNvbnRyb2xsZXI+IG1fY2FyZXRCbGlua1RpbWVyOwogCmRpZmYg
LS1naXQgYS9XZWJDb3JlL2VkaXRpbmcvVmlzaWJsZVNlbGVjdGlvbi5jcHAgYi9XZWJDb3JlL2Vk
aXRpbmcvVmlzaWJsZVNlbGVjdGlvbi5jcHAKaW5kZXggYmFlZjJiNS4uYzgxOGRhMSAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9lZGl0aW5nL1Zpc2libGVTZWxlY3Rpb24uY3BwCisrKyBiL1dlYkNvcmUv
ZWRpdGluZy9WaXNpYmxlU2VsZWN0aW9uLmNwcApAQCAtNDMsNyArNDMsNiBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKIFZpc2libGVTZWxlY3Rpb246OlZpc2libGVTZWxlY3Rpb24oKQogICAgIDog
bV9hZmZpbml0eShET1dOU1RSRUFNKQotICAgICwgbV9ncmFudWxhcml0eShDaGFyYWN0ZXJHcmFu
dWxhcml0eSkKICAgICAsIG1fc2VsZWN0aW9uVHlwZShOb1NlbGVjdGlvbikKICAgICAsIG1fYmFz
ZUlzRmlyc3QodHJ1ZSkKIHsKQEAgLTUzLDcgKzUyLDYgQEAgVmlzaWJsZVNlbGVjdGlvbjo6Vmlz
aWJsZVNlbGVjdGlvbihjb25zdCBQb3NpdGlvbiYgcG9zLCBFQWZmaW5pdHkgYWZmaW5pdHkpCiAg
ICAgOiBtX2Jhc2UocG9zKQogICAgICwgbV9leHRlbnQocG9zKQogICAgICwgbV9hZmZpbml0eShh
ZmZpbml0eSkKLSAgICAsIG1fZ3JhbnVsYXJpdHkoQ2hhcmFjdGVyR3JhbnVsYXJpdHkpCiB7CiAg
ICAgdmFsaWRhdGUoKTsKIH0KQEAgLTYyLDcgKzYwLDYgQEAgVmlzaWJsZVNlbGVjdGlvbjo6Vmlz
aWJsZVNlbGVjdGlvbihjb25zdCBQb3NpdGlvbiYgYmFzZSwgY29uc3QgUG9zaXRpb24mIGV4dGVu
dCwKICAgICA6IG1fYmFzZShiYXNlKQogICAgICwgbV9leHRlbnQoZXh0ZW50KQogICAgICwgbV9h
ZmZpbml0eShhZmZpbml0eSkKLSAgICAsIG1fZ3JhbnVsYXJpdHkoQ2hhcmFjdGVyR3JhbnVsYXJp
dHkpCiB7CiAgICAgdmFsaWRhdGUoKTsKIH0KQEAgLTcxLDcgKzY4LDYgQEAgVmlzaWJsZVNlbGVj
dGlvbjo6VmlzaWJsZVNlbGVjdGlvbihjb25zdCBWaXNpYmxlUG9zaXRpb24mIHBvcykKICAgICA6
IG1fYmFzZShwb3MuZGVlcEVxdWl2YWxlbnQoKSkKICAgICAsIG1fZXh0ZW50KHBvcy5kZWVwRXF1
aXZhbGVudCgpKQogICAgICwgbV9hZmZpbml0eShwb3MuYWZmaW5pdHkoKSkKLSAgICAsIG1fZ3Jh
bnVsYXJpdHkoQ2hhcmFjdGVyR3JhbnVsYXJpdHkpCiB7CiAgICAgdmFsaWRhdGUoKTsKIH0KQEAg
LTgwLDcgKzc2LDYgQEAgVmlzaWJsZVNlbGVjdGlvbjo6VmlzaWJsZVNlbGVjdGlvbihjb25zdCBW
aXNpYmxlUG9zaXRpb24mIGJhc2UsIGNvbnN0IFZpc2libGVQb3MKICAgICA6IG1fYmFzZShiYXNl
LmRlZXBFcXVpdmFsZW50KCkpCiAgICAgLCBtX2V4dGVudChleHRlbnQuZGVlcEVxdWl2YWxlbnQo
KSkKICAgICAsIG1fYWZmaW5pdHkoYmFzZS5hZmZpbml0eSgpKQotICAgICwgbV9ncmFudWxhcml0
eShDaGFyYWN0ZXJHcmFudWxhcml0eSkKIHsKICAgICB2YWxpZGF0ZSgpOwogfQpAQCAtODksNyAr
ODQsNiBAQCBWaXNpYmxlU2VsZWN0aW9uOjpWaXNpYmxlU2VsZWN0aW9uKGNvbnN0IFJhbmdlKiBy
YW5nZSwgRUFmZmluaXR5IGFmZmluaXR5KQogICAgIDogbV9iYXNlKHJhbmdlLT5zdGFydFBvc2l0
aW9uKCkpCiAgICAgLCBtX2V4dGVudChyYW5nZS0+ZW5kUG9zaXRpb24oKSkKICAgICAsIG1fYWZm
aW5pdHkoYWZmaW5pdHkpCi0gICAgLCBtX2dyYW51bGFyaXR5KENoYXJhY3RlckdyYW51bGFyaXR5
KQogewogICAgIHZhbGlkYXRlKCk7CiB9CkBAIC0xOTAsOCArMTg0LDcgQEAgYm9vbCBWaXNpYmxl
U2VsZWN0aW9uOjpleHBhbmRVc2luZ0dyYW51bGFyaXR5KFRleHRHcmFudWxhcml0eSBncmFudWxh
cml0eSkKICAgICBpZiAoaXNOb25lKCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIG1f
Z3JhbnVsYXJpdHkgPSBncmFudWxhcml0eTsKLSAgICB2YWxpZGF0ZSgpOworICAgIHZhbGlkYXRl
KGdyYW51bGFyaXR5KTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApAQCAtMjY4LDcgKzI2MSw3IEBA
IHZvaWQgVmlzaWJsZVNlbGVjdGlvbjo6c2V0QmFzZUFuZEV4dGVudFRvRGVlcEVxdWl2YWxlbnRz
KCkKICAgICAgICAgbV9iYXNlSXNGaXJzdCA9IGNvbXBhcmVQb3NpdGlvbnMobV9iYXNlLCBtX2V4
dGVudCkgPD0gMDsKIH0KIAotdm9pZCBWaXNpYmxlU2VsZWN0aW9uOjpzZXRTdGFydEFuZEVuZEZy
b21CYXNlQW5kRXh0ZW50UmVzcGVjdGluZ0dyYW51bGFyaXR5KCkKK3ZvaWQgVmlzaWJsZVNlbGVj
dGlvbjo6c2V0U3RhcnRBbmRFbmRGcm9tQmFzZUFuZEV4dGVudFJlc3BlY3RpbmdHcmFudWxhcml0
eShUZXh0R3JhbnVsYXJpdHkgZ3JhbnVsYXJpdHkpCiB7CiAgICAgaWYgKG1fYmFzZUlzRmlyc3Qp
IHsKICAgICAgICAgbV9zdGFydCA9IG1fYmFzZTsKQEAgLTI3OCw3ICsyNzEsNyBAQCB2b2lkIFZp
c2libGVTZWxlY3Rpb246OnNldFN0YXJ0QW5kRW5kRnJvbUJhc2VBbmRFeHRlbnRSZXNwZWN0aW5n
R3JhbnVsYXJpdHkoKQogICAgICAgICBtX2VuZCA9IG1fYmFzZTsKICAgICB9CiAKLSAgICBzd2l0
Y2ggKG1fZ3JhbnVsYXJpdHkpIHsKKyAgICBzd2l0Y2ggKGdyYW51bGFyaXR5KSB7CiAgICAgICAg
IGNhc2UgQ2hhcmFjdGVyR3JhbnVsYXJpdHk6CiAgICAgICAgICAgICAvLyBEb24ndCBkbyBhbnkg
ZXhwYW5zaW9uLgogICAgICAgICAgICAgYnJlYWs7CkBAIC00MDgsMTAgKzQwMSwxMCBAQCB2b2lk
IFZpc2libGVTZWxlY3Rpb246OnVwZGF0ZVNlbGVjdGlvblR5cGUoKQogICAgICAgICBtX2FmZmlu
aXR5ID0gRE9XTlNUUkVBTTsKIH0KIAotdm9pZCBWaXNpYmxlU2VsZWN0aW9uOjp2YWxpZGF0ZSgp
Cit2b2lkIFZpc2libGVTZWxlY3Rpb246OnZhbGlkYXRlKFRleHRHcmFudWxhcml0eSBncmFudWxh
cml0eSkKIHsKICAgICBzZXRCYXNlQW5kRXh0ZW50VG9EZWVwRXF1aXZhbGVudHMoKTsKLSAgICBz
ZXRTdGFydEFuZEVuZEZyb21CYXNlQW5kRXh0ZW50UmVzcGVjdGluZ0dyYW51bGFyaXR5KCk7Cisg
ICAgc2V0U3RhcnRBbmRFbmRGcm9tQmFzZUFuZEV4dGVudFJlc3BlY3RpbmdHcmFudWxhcml0eShn
cmFudWxhcml0eSk7CiAgICAgYWRqdXN0U2VsZWN0aW9uVG9Bdm9pZENyb3NzaW5nRWRpdGluZ0Jv
dW5kYXJpZXMoKTsKICAgICB1cGRhdGVTZWxlY3Rpb25UeXBlKCk7CiAKQEAgLTQ0MSw3ICs0MzQs
NiBAQCB2b2lkIFZpc2libGVTZWxlY3Rpb246OnNldFdpdGhvdXRWYWxpZGF0aW9uKGNvbnN0IFBv
c2l0aW9uJiBiYXNlLCBjb25zdCBQb3NpdGlvbgogICAgIEFTU0VSVCghZXh0ZW50LmlzTnVsbCgp
KTsKICAgICBBU1NFUlQoYmFzZSAhPSBleHRlbnQpOwogICAgIEFTU0VSVChtX2FmZmluaXR5ID09
IERPV05TVFJFQU0pOwotICAgIEFTU0VSVChtX2dyYW51bGFyaXR5ID09IENoYXJhY3RlckdyYW51
bGFyaXR5KTsKICAgICBtX2Jhc2UgPSBiYXNlOwogICAgIG1fZXh0ZW50ID0gZXh0ZW50OwogICAg
IG1fYmFzZUlzRmlyc3QgPSBjb21wYXJlUG9zaXRpb25zKGJhc2UsIGV4dGVudCkgPD0gMDsKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvZWRpdGluZy9WaXNpYmxlU2VsZWN0aW9uLmggYi9XZWJDb3JlL2Vk
aXRpbmcvVmlzaWJsZVNlbGVjdGlvbi5oCmluZGV4IGJiY2VjZjIuLmM2NDAwYWQgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvZWRpdGluZy9WaXNpYmxlU2VsZWN0aW9uLmgKKysrIGIvV2ViQ29yZS9lZGl0
aW5nL1Zpc2libGVTZWxlY3Rpb24uaApAQCAtODEsOCArODEsNyBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBhcHBlbmRUcmFpbGluZ1doaXRlc3BhY2UoKTsKIAogICAgIGJvb2wgZXhwYW5kVXNpbmdHcmFu
dWxhcml0eShUZXh0R3JhbnVsYXJpdHkgZ3JhbnVsYXJpdHkpOwotICAgIFRleHRHcmFudWxhcml0
eSBncmFudWxhcml0eSgpIGNvbnN0IHsgcmV0dXJuIG1fZ3JhbnVsYXJpdHk7IH0KLQorICAgIAog
ICAgIC8vIFdlIGRvbid0IHlldCBzdXBwb3J0IG11bHRpLXJhbmdlIHNlbGVjdGlvbnMsIHNvIHdl
IG9ubHkgZXZlciBoYXZlIG9uZSByYW5nZSB0byByZXR1cm4uCiAgICAgUGFzc1JlZlB0cjxSYW5n
ZT4gZmlyc3RSYW5nZSgpIGNvbnN0OwogCkBAIC0xMDYsMTEgKzEwNSwxMSBAQCBwdWJsaWM6CiAg
ICAgdm9pZCBzZXRXaXRob3V0VmFsaWRhdGlvbihjb25zdCBQb3NpdGlvbiYsIGNvbnN0IFBvc2l0
aW9uJik7CiAKIHByaXZhdGU6Ci0gICAgdm9pZCB2YWxpZGF0ZSgpOworICAgIHZvaWQgdmFsaWRh
dGUoVGV4dEdyYW51bGFyaXR5IGdyYW51bGFyaXR5ID0gQ2hhcmFjdGVyR3JhbnVsYXJpdHkpOwog
CiAgICAgLy8gU3VwcG9ydCBtZXRob2RzIGZvciB2YWxpZGF0ZSgpCiAgICAgdm9pZCBzZXRCYXNl
QW5kRXh0ZW50VG9EZWVwRXF1aXZhbGVudHMoKTsKLSAgICB2b2lkIHNldFN0YXJ0QW5kRW5kRnJv
bUJhc2VBbmRFeHRlbnRSZXNwZWN0aW5nR3JhbnVsYXJpdHkoKTsKKyAgICB2b2lkIHNldFN0YXJ0
QW5kRW5kRnJvbUJhc2VBbmRFeHRlbnRSZXNwZWN0aW5nR3JhbnVsYXJpdHkoVGV4dEdyYW51bGFy
aXR5IGdyYW51bGFyaXR5KTsKICAgICB2b2lkIGFkanVzdFNlbGVjdGlvblRvQXZvaWRDcm9zc2lu
Z0VkaXRpbmdCb3VuZGFyaWVzKCk7CiAgICAgdm9pZCB1cGRhdGVTZWxlY3Rpb25UeXBlKCk7CiAK
QEAgLTEyNSw3ICsxMjQsNiBAQCBwcml2YXRlOgogICAgIFBvc2l0aW9uIG1fZW5kOyAgICAvLyBS
aWdodG1vc3QgcG9zaXRpb24gd2hlbiBleHBhbmRlZCB0byByZXNwZWN0IGdyYW51bGFyaXR5CiAK
ICAgICBFQWZmaW5pdHkgbV9hZmZpbml0eTsgICAgICAgICAgIC8vIHRoZSB1cHN0cmVhbS9kb3du
c3RyZWFtIGFmZmluaXR5IG9mIHRoZSBjYXJldAotICAgIFRleHRHcmFudWxhcml0eSBtX2dyYW51
bGFyaXR5OyAgLy8gZ3JhbnVsYXJpdHkgb2Ygc3RhcnQvZW5kIHNlbGVjdGlvbgogCiAgICAgLy8g
dGhlc2UgYXJlIGNhY2hlZCwgY2FuIGJlIHJlY2FsY3VsYXRlZCBieSB2YWxpZGF0ZSgpCiAgICAg
U2VsZWN0aW9uVHlwZSBtX3NlbGVjdGlvblR5cGU7ICAgIC8vIE5vbmUsIENhcmV0LCBSYW5nZQpA
QCAtMTM0LDcgKzEzMiw3IEBAIHByaXZhdGU6CiAKIGlubGluZSBib29sIG9wZXJhdG9yPT0oY29u
c3QgVmlzaWJsZVNlbGVjdGlvbiYgYSwgY29uc3QgVmlzaWJsZVNlbGVjdGlvbiYgYikKIHsKLSAg
ICByZXR1cm4gYS5zdGFydCgpID09IGIuc3RhcnQoKSAmJiBhLmVuZCgpID09IGIuZW5kKCkgJiYg
YS5hZmZpbml0eSgpID09IGIuYWZmaW5pdHkoKSAmJiBhLmdyYW51bGFyaXR5KCkgPT0gYi5ncmFu
dWxhcml0eSgpICYmIGEuaXNCYXNlRmlyc3QoKSA9PSBiLmlzQmFzZUZpcnN0KCk7CisgICAgcmV0
dXJuIGEuc3RhcnQoKSA9PSBiLnN0YXJ0KCkgJiYgYS5lbmQoKSA9PSBiLmVuZCgpICYmIGEuYWZm
aW5pdHkoKSA9PSBiLmFmZmluaXR5KCkgJiYgYS5pc0Jhc2VGaXJzdCgpID09IGIuaXNCYXNlRmly
c3QoKTsKIH0KIAogaW5saW5lIGJvb2wgb3BlcmF0b3IhPShjb25zdCBWaXNpYmxlU2VsZWN0aW9u
JiBhLCBjb25zdCBWaXNpYmxlU2VsZWN0aW9uJiBiKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9sb2Fk
ZXIvRnJhbWVMb2FkZXIuY3BwIGIvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCmluZGV4
IDEzMzk2ZWMuLjUxNTNhZWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVy
LmNwcAorKysgYi9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKQEAgLTczMCw4ICs3MzAs
NiBAQCB2b2lkIEZyYW1lTG9hZGVyOjpjbGVhcihib29sIGNsZWFyV2luZG93UHJvcGVydGllcywg
Ym9vbCBjbGVhclNjcmlwdE9iamVjdHMsIGJvbwogICAgIGlmIChjbGVhckZyYW1lVmlldyAmJiBt
X2ZyYW1lLT52aWV3KCkpCiAgICAgICAgIG1fZnJhbWUtPnZpZXcoKS0+Y2xlYXIoKTsKIAotICAg
IG1fZnJhbWUtPnNldFNlbGVjdGlvbkdyYW51bGFyaXR5KENoYXJhY3RlckdyYW51bGFyaXR5KTsK
LQogICAgIC8vIERvIG5vdCBkcm9wIHRoZSBkb2N1bWVudCBiZWZvcmUgdGhlIFNjcmlwdENvbnRy
b2xsZXIgYW5kIHZpZXcgYXJlIGNsZWFyZWQKICAgICAvLyBhcyBzb21lIGRlc3RydWN0b3JzIG1p
Z2h0IHN0aWxsIHRyeSB0byBhY2Nlc3MgdGhlIGRvY3VtZW50LgogICAgIG1fZnJhbWUtPnNldERv
Y3VtZW50KDApOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0RPTVNlbGVjdGlvbi5jcHAgYi9X
ZWJDb3JlL3BhZ2UvRE9NU2VsZWN0aW9uLmNwcAppbmRleCAwZDIxYzU2Li4xMmFlNTlkIDEwMDY0
NAotLS0gYS9XZWJDb3JlL3BhZ2UvRE9NU2VsZWN0aW9uLmNwcAorKysgYi9XZWJDb3JlL3BhZ2Uv
RE9NU2VsZWN0aW9uLmNwcApAQCAtMzI2LDcgKzMyNiw2IEBAIHZvaWQgRE9NU2VsZWN0aW9uOjpl
eHRlbmQoTm9kZSogbm9kZSwgaW50IG9mZnNldCwgRXhjZXB0aW9uQ29kZSYgZWMpCiAgICAgfQog
CiAgICAgU2VsZWN0aW9uQ29udHJvbGxlciogc2VsZWN0aW9uID0gbV9mcmFtZS0+c2VsZWN0aW9u
KCk7Ci0gICAgc2VsZWN0aW9uLT5leHBhbmRVc2luZ0dyYW51bGFyaXR5KENoYXJhY3RlckdyYW51
bGFyaXR5KTsKICAgICBzZWxlY3Rpb24tPnNldEV4dGVudChWaXNpYmxlUG9zaXRpb24obm9kZSwg
b2Zmc2V0LCBET1dOU1RSRUFNKSk7CiB9CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9FdmVu
dEhhbmRsZXIuY3BwIGIvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKaW5kZXggOTNmYzVi
ZC4uOTJjYWY3YyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKKysr
IGIvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKQEAgLTIyNSwyMCArMjI1LDIxIEBAIHZv
aWQgRXZlbnRIYW5kbGVyOjpzZWxlY3RDbG9zZXN0V29yZEZyb21Nb3VzZUV2ZW50KGNvbnN0IE1v
dXNlRXZlbnRXaXRoSGl0VGVzdFJlCiAKICAgICBpZiAoaW5uZXJOb2RlICYmIGlubmVyTm9kZS0+
cmVuZGVyZXIoKSAmJiBtX21vdXNlRG93bk1heVN0YXJ0U2VsZWN0KSB7CiAgICAgICAgIFZpc2li
bGVQb3NpdGlvbiBwb3MoaW5uZXJOb2RlLT5yZW5kZXJlcigpLT5wb3NpdGlvbkZvclBvaW50KHJl
c3VsdC5sb2NhbFBvaW50KCkpKTsKKyAgICAgICAgVGV4dEdyYW51bGFyaXR5IGdyYW51bGFyaXR5
ID0gQ2hhcmFjdGVyR3JhbnVsYXJpdHk7CiAgICAgICAgIGlmIChwb3MuaXNOb3ROdWxsKCkpIHsK
ICAgICAgICAgICAgIG5ld1NlbGVjdGlvbiA9IFZpc2libGVTZWxlY3Rpb24ocG9zKTsKICAgICAg
ICAgICAgIG5ld1NlbGVjdGlvbi5leHBhbmRVc2luZ0dyYW51bGFyaXR5KFdvcmRHcmFudWxhcml0
eSk7CiAgICAgICAgIH0KICAgICAKICAgICAgICAgaWYgKG5ld1NlbGVjdGlvbi5pc1JhbmdlKCkp
IHsKLSAgICAgICAgICAgIG1fZnJhbWUtPnNldFNlbGVjdGlvbkdyYW51bGFyaXR5KFdvcmRHcmFu
dWxhcml0eSk7CisgICAgICAgICAgICBncmFudWxhcml0eSA9IFdvcmRHcmFudWxhcml0eTsKICAg
ICAgICAgICAgIG1fYmVnYW5TZWxlY3RpbmdUZXh0ID0gdHJ1ZTsKICAgICAgICAgICAgIGlmIChy
ZXN1bHQuZXZlbnQoKS5jbGlja0NvdW50KCkgPT0gMiAmJiBtX2ZyYW1lLT5lZGl0b3IoKS0+aXNT
ZWxlY3RUcmFpbGluZ1doaXRlc3BhY2VFbmFibGVkKCkpIAogICAgICAgICAgICAgICAgIG5ld1Nl
bGVjdGlvbi5hcHBlbmRUcmFpbGluZ1doaXRlc3BhY2UoKTsgICAgICAgICAgICAKICAgICAgICAg
fQogICAgICAgICAKICAgICAgICAgaWYgKG1fZnJhbWUtPnNob3VsZENoYW5nZVNlbGVjdGlvbihu
ZXdTZWxlY3Rpb24pKQotICAgICAgICAgICAgbV9mcmFtZS0+c2VsZWN0aW9uKCktPnNldFNlbGVj
dGlvbihuZXdTZWxlY3Rpb24pOworICAgICAgICAgICAgbV9mcmFtZS0+c2VsZWN0aW9uKCktPnNl
dFNlbGVjdGlvbihuZXdTZWxlY3Rpb24sIGdyYW51bGFyaXR5KTsKICAgICB9CiB9CiAKQEAgLTI1
NiwxMyArMjU3LDE0IEBAIHZvaWQgRXZlbnRIYW5kbGVyOjpzZWxlY3RDbG9zZXN0V29yZE9yTGlu
a0Zyb21Nb3VzZUV2ZW50KGNvbnN0IE1vdXNlRXZlbnRXaXRoSGl0CiAgICAgICAgIGlmIChwb3Mu
aXNOb3ROdWxsKCkgJiYgcG9zLmRlZXBFcXVpdmFsZW50KCkubm9kZSgpLT5pc0Rlc2NlbmRhbnRP
ZihVUkxFbGVtZW50KSkKICAgICAgICAgICAgIG5ld1NlbGVjdGlvbiA9IFZpc2libGVTZWxlY3Rp
b246OnNlbGVjdGlvbkZyb21Db250ZW50c09mTm9kZShVUkxFbGVtZW50KTsKICAgICAKKyAgICAg
ICAgVGV4dEdyYW51bGFyaXR5IGdyYW51bGFyaXR5ID0gQ2hhcmFjdGVyR3JhbnVsYXJpdHk7CiAg
ICAgICAgIGlmIChuZXdTZWxlY3Rpb24uaXNSYW5nZSgpKSB7Ci0gICAgICAgICAgICBtX2ZyYW1l
LT5zZXRTZWxlY3Rpb25HcmFudWxhcml0eShXb3JkR3JhbnVsYXJpdHkpOworICAgICAgICAgICAg
Z3JhbnVsYXJpdHkgPSBXb3JkR3JhbnVsYXJpdHk7CiAgICAgICAgICAgICBtX2JlZ2FuU2VsZWN0
aW5nVGV4dCA9IHRydWU7CiAgICAgICAgIH0KIAogICAgICAgICBpZiAobV9mcmFtZS0+c2hvdWxk
Q2hhbmdlU2VsZWN0aW9uKG5ld1NlbGVjdGlvbikpCi0gICAgICAgICAgICBtX2ZyYW1lLT5zZWxl
Y3Rpb24oKS0+c2V0U2VsZWN0aW9uKG5ld1NlbGVjdGlvbik7CisgICAgICAgICAgICBtX2ZyYW1l
LT5zZWxlY3Rpb24oKS0+c2V0U2VsZWN0aW9uKG5ld1NlbGVjdGlvbiwgZ3JhbnVsYXJpdHkpOwog
ICAgIH0KIH0KIApAQCAtMjk5LDEzICszMDEsMTUgQEAgYm9vbCBFdmVudEhhbmRsZXI6OmhhbmRs
ZU1vdXNlUHJlc3NFdmVudFRyaXBsZUNsaWNrKGNvbnN0IE1vdXNlRXZlbnRXaXRoSGl0VGVzdFIK
ICAgICAgICAgbmV3U2VsZWN0aW9uID0gVmlzaWJsZVNlbGVjdGlvbihwb3MpOwogICAgICAgICBu
ZXdTZWxlY3Rpb24uZXhwYW5kVXNpbmdHcmFudWxhcml0eShQYXJhZ3JhcGhHcmFudWxhcml0eSk7
CiAgICAgfQorICAgIAorICAgIFRleHRHcmFudWxhcml0eSBncmFudWxhcml0eSA9IENoYXJhY3Rl
ckdyYW51bGFyaXR5OwogICAgIGlmIChuZXdTZWxlY3Rpb24uaXNSYW5nZSgpKSB7Ci0gICAgICAg
IG1fZnJhbWUtPnNldFNlbGVjdGlvbkdyYW51bGFyaXR5KFBhcmFncmFwaEdyYW51bGFyaXR5KTsK
KyAgICAgICAgZ3JhbnVsYXJpdHkgPSBQYXJhZ3JhcGhHcmFudWxhcml0eTsKICAgICAgICAgbV9i
ZWdhblNlbGVjdGluZ1RleHQgPSB0cnVlOwogICAgIH0KICAgICAKICAgICBpZiAobV9mcmFtZS0+
c2hvdWxkQ2hhbmdlU2VsZWN0aW9uKG5ld1NlbGVjdGlvbikpCi0gICAgICAgIG1fZnJhbWUtPnNl
bGVjdGlvbigpLT5zZXRTZWxlY3Rpb24obmV3U2VsZWN0aW9uKTsKKyAgICAgICAgbV9mcmFtZS0+
c2VsZWN0aW9uKCktPnNldFNlbGVjdGlvbihuZXdTZWxlY3Rpb24sIGdyYW51bGFyaXR5KTsKIAog
ICAgIHJldHVybiB0cnVlOwogfQpAQCAtMzM1LDYgKzMzOSw4IEBAIGJvb2wgRXZlbnRIYW5kbGVy
OjpoYW5kbGVNb3VzZVByZXNzRXZlbnRTaW5nbGVDbGljayhjb25zdCBNb3VzZUV2ZW50V2l0aEhp
dFRlc3RSCiAgICAgUG9zaXRpb24gcG9zID0gdmlzaWJsZVBvcy5kZWVwRXF1aXZhbGVudCgpOwog
ICAgIAogICAgIFZpc2libGVTZWxlY3Rpb24gbmV3U2VsZWN0aW9uID0gbV9mcmFtZS0+c2VsZWN0
aW9uKCktPnNlbGVjdGlvbigpOworICAgIFRleHRHcmFudWxhcml0eSBncmFudWxhcml0eSA9IENo
YXJhY3RlckdyYW51bGFyaXR5OworCiAgICAgaWYgKGV4dGVuZFNlbGVjdGlvbiAmJiBuZXdTZWxl
Y3Rpb24uaXNDYXJldE9yUmFuZ2UoKSkgewogICAgICAgICBtX2ZyYW1lLT5zZWxlY3Rpb24oKS0+
c2V0TGFzdENoYW5nZVdhc0hvcml6b250YWxFeHRlbnNpb24oZmFsc2UpOwogICAgICAgICAKQEAg
LTM0NywxNiArMzUzLDE3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVNb3VzZVByZXNzRXZl
bnRTaW5nbGVDbGljayhjb25zdCBNb3VzZUV2ZW50V2l0aEhpdFRlc3RSCiAgICAgICAgIGVsc2UK
ICAgICAgICAgICAgIG5ld1NlbGVjdGlvbiA9IFZpc2libGVTZWxlY3Rpb24oc3RhcnQsIHBvcyk7
CiAKLSAgICAgICAgaWYgKG1fZnJhbWUtPnNlbGVjdGlvbkdyYW51bGFyaXR5KCkgIT0gQ2hhcmFj
dGVyR3JhbnVsYXJpdHkpCisgICAgICAgIGlmIChtX2ZyYW1lLT5zZWxlY3Rpb25HcmFudWxhcml0
eSgpICE9IENoYXJhY3RlckdyYW51bGFyaXR5KSB7CisgICAgICAgICAgICBncmFudWxhcml0eSA9
IG1fZnJhbWUtPnNlbGVjdGlvbkdyYW51bGFyaXR5KCk7CiAgICAgICAgICAgICBuZXdTZWxlY3Rp
b24uZXhwYW5kVXNpbmdHcmFudWxhcml0eShtX2ZyYW1lLT5zZWxlY3Rpb25HcmFudWxhcml0eSgp
KTsKKyAgICAgICAgfQorCiAgICAgICAgIG1fYmVnYW5TZWxlY3RpbmdUZXh0ID0gdHJ1ZTsKLSAg
ICB9IGVsc2UgeworICAgIH0gZWxzZQogICAgICAgICBuZXdTZWxlY3Rpb24gPSBWaXNpYmxlU2Vs
ZWN0aW9uKHZpc2libGVQb3MpOwotICAgICAgICBtX2ZyYW1lLT5zZXRTZWxlY3Rpb25HcmFudWxh
cml0eShDaGFyYWN0ZXJHcmFudWxhcml0eSk7Ci0gICAgfQogICAgIAogICAgIGlmIChtX2ZyYW1l
LT5zaG91bGRDaGFuZ2VTZWxlY3Rpb24obmV3U2VsZWN0aW9uKSkKLSAgICAgICAgbV9mcmFtZS0+
c2VsZWN0aW9uKCktPnNldFNlbGVjdGlvbihuZXdTZWxlY3Rpb24pOworICAgICAgICBtX2ZyYW1l
LT5zZWxlY3Rpb24oKS0+c2V0U2VsZWN0aW9uKG5ld1NlbGVjdGlvbiwgZ3JhbnVsYXJpdHkpOwog
CiAgICAgcmV0dXJuIHRydWU7CiB9CkBAIC01NjksNyArNTc2LDcgQEAgdm9pZCBFdmVudEhhbmRs
ZXI6OnVwZGF0ZVNlbGVjdGlvbkZvck1vdXNlRHJhZyhOb2RlKiB0YXJnZXROb2RlLCBjb25zdCBJ
bnRQb2ludCYKIAogICAgIGlmIChtX2ZyYW1lLT5zaG91bGRDaGFuZ2VTZWxlY3Rpb24obmV3U2Vs
ZWN0aW9uKSkgewogICAgICAgICBtX2ZyYW1lLT5zZWxlY3Rpb24oKS0+c2V0TGFzdENoYW5nZVdh
c0hvcml6b250YWxFeHRlbnNpb24oZmFsc2UpOwotICAgICAgICBtX2ZyYW1lLT5zZWxlY3Rpb24o
KS0+c2V0U2VsZWN0aW9uKG5ld1NlbGVjdGlvbik7CisgICAgICAgIG1fZnJhbWUtPnNlbGVjdGlv
bigpLT5zZXRTZWxlY3Rpb24obmV3U2VsZWN0aW9uLCBtX2ZyYW1lLT5zZWxlY3Rpb25HcmFudWxh
cml0eSgpKTsKICAgICB9CiB9CiAjZW5kaWYgLy8gRU5BQkxFKERSQUdfU1VQUE9SVCkKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAgYi9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCmlu
ZGV4IDI2MmM1NmMuLjRhYWZjZDMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAK
KysrIGIvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcApAQCAtMTMyLDcgKzEzMiw2IEBAIEZyYW1lOjpG
cmFtZShQYWdlKiBwYWdlLCBIVE1MRnJhbWVPd25lckVsZW1lbnQqIG93bmVyRWxlbWVudCwgRnJh
bWVMb2FkZXJDbGllbnQqCiAgICAgLCBtX3JlZGlyZWN0U2NoZWR1bGVyKHRoaXMpCiAgICAgLCBt
X293bmVyRWxlbWVudChvd25lckVsZW1lbnQpCiAgICAgLCBtX3NjcmlwdCh0aGlzKQotICAgICwg
bV9zZWxlY3Rpb25HcmFudWxhcml0eShDaGFyYWN0ZXJHcmFudWxhcml0eSkKICAgICAsIG1fc2Vs
ZWN0aW9uQ29udHJvbGxlcih0aGlzKQogICAgICwgbV9lZGl0b3IodGhpcykKICAgICAsIG1fZXZl
bnRIYW5kbGVyKHRoaXMpCkBAIC0zNjIsMTIgKzM2MSw3IEBAIEVkaXRvciogRnJhbWU6OmVkaXRv
cigpIGNvbnN0CiAKIFRleHRHcmFudWxhcml0eSBGcmFtZTo6c2VsZWN0aW9uR3JhbnVsYXJpdHko
KSBjb25zdAogewotICAgIHJldHVybiBtX3NlbGVjdGlvbkdyYW51bGFyaXR5OwotfQotCi12b2lk
IEZyYW1lOjpzZXRTZWxlY3Rpb25HcmFudWxhcml0eShUZXh0R3JhbnVsYXJpdHkgZ3JhbnVsYXJp
dHkpCi17Ci0gICAgbV9zZWxlY3Rpb25HcmFudWxhcml0eSA9IGdyYW51bGFyaXR5OworICAgIHJl
dHVybiBtX3NlbGVjdGlvbkNvbnRyb2xsZXIuZ3JhbnVsYXJpdHkoKTsKIH0KIAogU2VsZWN0aW9u
Q29udHJvbGxlciogRnJhbWU6OmRyYWdDYXJldENvbnRyb2xsZXIoKSBjb25zdApkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9wYWdlL0ZyYW1lLmggYi9XZWJDb3JlL3BhZ2UvRnJhbWUuaAppbmRleCAyNmQx
ZWZhLi4yNGUzYzY2IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvRnJhbWUuaAorKysgYi9XZWJD
b3JlL3BhZ2UvRnJhbWUuaApAQCAtMjMyLDcgKzIzMiw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogICAgIHB1YmxpYzoKICAgICAgICAgVGV4dEdyYW51bGFyaXR5IHNlbGVjdGlvbkdyYW51bGFy
aXR5KCkgY29uc3Q7Ci0gICAgICAgIHZvaWQgc2V0U2VsZWN0aW9uR3JhbnVsYXJpdHkoVGV4dEdy
YW51bGFyaXR5KTsKIAogICAgICAgICBib29sIHNob3VsZENoYW5nZVNlbGVjdGlvbihjb25zdCBW
aXNpYmxlU2VsZWN0aW9uJikgY29uc3Q7CiAgICAgICAgIGJvb2wgc2hvdWxkRGVsZXRlU2VsZWN0
aW9uKGNvbnN0IFZpc2libGVTZWxlY3Rpb24mKSBjb25zdDsKQEAgLTMyNSw4ICszMjQsNiBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAgZmxvYXQgbV96b29tRmFjdG9yOwogCi0gICAg
ICAgIFRleHRHcmFudWxhcml0eSBtX3NlbGVjdGlvbkdyYW51bGFyaXR5OwotCiAgICAgICAgIG11
dGFibGUgU2VsZWN0aW9uQ29udHJvbGxlciBtX3NlbGVjdGlvbkNvbnRyb2xsZXI7CiAgICAgICAg
IG11dGFibGUgVmlzaWJsZVNlbGVjdGlvbiBtX21hcms7CiAgICAgICAgIG11dGFibGUgRWRpdG9y
IG1fZWRpdG9yOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRy
b2wuY3BwIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2wuY3BwCmluZGV4IGQx
ODk0MGIuLmI5ODkwMGEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRD
b250cm9sLmNwcAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbC5jcHAK
QEAgLTI2NiwxMSArMjY2LDYgQEAgdm9pZCBSZW5kZXJUZXh0Q29udHJvbDo6c2V0U2VsZWN0aW9u
UmFuZ2UoaW50IHN0YXJ0LCBpbnQgZW5kKQogCiAgICAgaWYgKEZyYW1lKiBmcmFtZSA9IGRvY3Vt
ZW50KCktPmZyYW1lKCkpCiAgICAgICAgIGZyYW1lLT5zZWxlY3Rpb24oKS0+c2V0U2VsZWN0aW9u
KG5ld1NlbGVjdGlvbik7Ci0KLSAgICAvLyBGSVhNRTogR3JhbnVsYXJpdHkgaXMgc3RvcmVkIHNl
cGFyYXRlbHkgb24gdGhlIGZyYW1lLCBidXQgYWxzbyBpbiB0aGUgc2VsZWN0aW9uIGNvbnRyb2xs
ZXIuCi0gICAgLy8gVGhlIGdyYW51bGFyaXR5IGluIHRoZSBzZWxlY3Rpb24gY29udHJvbGxlciBz
aG91bGQgYmUgdXNlZCwgYW5kIHRoZW4gdGhpcyBsaW5lIG9mIGNvZGUgd291bGQgbm90IGJlIG5l
ZWRlZC4KLSAgICBpZiAoRnJhbWUqIGZyYW1lID0gZG9jdW1lbnQoKS0+ZnJhbWUoKSkKLSAgICAg
ICAgZnJhbWUtPnNldFNlbGVjdGlvbkdyYW51bGFyaXR5KENoYXJhY3RlckdyYW51bGFyaXR5KTsK
IH0KIAogVmlzaWJsZVNlbGVjdGlvbiBSZW5kZXJUZXh0Q29udHJvbDo6c2VsZWN0aW9uKGludCBz
dGFydCwgaW50IGVuZCkgY29uc3QKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VM
b2cgYi9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDM5OGE4YzYuLmY3YTJiNDIgMTAw
NjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2Nocm9taXVt
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDEwLTAzLTAxICBPamFuIFZhZmFpICA8b2ph
bkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgRnJhbWUgc2hvdWxkIHVzZSBTZWxlY3Rpb25Db250cm9sbGVyJ3MgVGV4dEdyYW51
bGFyaXR5IGluc3RlYWQgb2YgaXQncyBvd24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTM1MzY4CisKKyAgICAgICAgKiBzcmMvV2ViRnJhbWVJbXBsLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpzZWxlY3RXb3JkQXJvdW5kUG9zaXRp
b24pOgorCiAyMDEwLTAyLTI3ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KZGlmZiAtLWdpdCBhL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViRnJhbWVJbXBsLmNwcAppbmRleCA3NWQxY2U4Li4yNmZkOWVjIDEwMDY0NAotLS0gYS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5jcHAKKysrIGIvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJGcmFtZUltcGwuY3BwCkBAIC0xMDgzLDExICsxMDgzLDggQEAgdm9pZCBXZWJGcmFtZUlt
cGw6OnNlbGVjdFdvcmRBcm91bmRQb3NpdGlvbihGcmFtZSogZnJhbWUsIFZpc2libGVQb3NpdGlv
biBwb3MpCiAgICAgVmlzaWJsZVNlbGVjdGlvbiBzZWxlY3Rpb24ocG9zKTsKICAgICBzZWxlY3Rp
b24uZXhwYW5kVXNpbmdHcmFudWxhcml0eShXb3JkR3JhbnVsYXJpdHkpOwogCi0gICAgaWYgKHNl
bGVjdGlvbi5pc1JhbmdlKCkpCi0gICAgICAgIGZyYW1lLT5zZXRTZWxlY3Rpb25HcmFudWxhcml0
eShXb3JkR3JhbnVsYXJpdHkpOwotCiAgICAgaWYgKGZyYW1lLT5zaG91bGRDaGFuZ2VTZWxlY3Rp
b24oc2VsZWN0aW9uKSkKLSAgICAgICAgZnJhbWUtPnNlbGVjdGlvbigpLT5zZXRTZWxlY3Rpb24o
c2VsZWN0aW9uKTsKKyAgICAgICAgZnJhbWUtPnNlbGVjdGlvbigpLT5zZXRTZWxlY3Rpb24oc2Vs
ZWN0aW9uLCBXb3JkR3JhbnVsYXJpdHkpOwogfQogCiBib29sIFdlYkZyYW1lSW1wbDo6c2VsZWN0
V29yZEFyb3VuZENhcmV0KCkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>50046</attachid>
            <date>2010-03-04 12:08:44 -0800</date>
            <delta_ts>2010-03-04 12:08:44 -0800</delta_ts>
            <desc>mistmatched editing callbacks</desc>
            <filename>expanding-selections.html</filename>
            <type>text/html</type>
            <size>628</size>
            <attacher name="Ojan Vafai">ojan</attacher>
            
              <data encoding="base64">PGh0bWw+IAo8aGVhZD4KPHNjcmlwdD4KaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikK
ICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wRWRpdGluZ0NhbGxiYWNrcygpOwo8L3Njcmlw
dD4KCgo8c2NyaXB0PgoKZnVuY3Rpb24gZWRpdGluZ1Rlc3QoKSB7CiAgICB2YXIgZWxlbSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJlbmQiKTsKICAgIHggPSBlbGVtLm9mZnNldExlZnQgKyBl
bGVtLm9mZnNldFdpZHRoICsgMTA7CiAgICB5ID0gZWxlbS5vZmZzZXRUb3AgKyAxMDsKICAgIAog
ICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8oeCwgeSk7CiAgICBldmVudFNlbmRlci5tb3VzZURv
d24oKTsKICAgIGV2ZW50U2VuZGVyLm1vdXNlVXAoKTsKICAgIGV2ZW50U2VuZGVyLmxlYXBGb3J3
YXJkKDEwMDApOwogICAgZXZlbnRTZW5kZXIubW91c2VEb3duKCk7CiAgICBldmVudFNlbmRlci5t
b3VzZVVwKCk7Cn0KCjwvc2NyaXB0Pgo8L2hlYWQ+Cjxib2R5Pgo8ZGl2IGlkPSJlZGl0YWJsZWRp
diIgY29udGVudGVkaXRhYmxlPSJ0cnVlIj5UaGlzPHNwYW4gaWQ9ImVuZCI+Jm5ic3A7PC9zcGFu
PjwvZGl2Pgo8c2NyaXB0PgplZGl0aW5nVGVzdCgpOwo8L3NjcmlwdD4KPC9ib2R5Pgo8L2h0bWw+
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>