<?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>121874</bug_id>
          
          <creation_ts>2013-09-24 15:48:26 -0700</creation_ts>
          <short_desc>Tiled drawing should not imply threaded scrolling</short_desc>
          <delta_ts>2013-09-26 10:33:35 -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>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>121859</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>andersca</cc>
    
    <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>932761</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-09-24 15:48:26 -0700</bug_when>
    <thetext>They should be separate settings (though threaded scrolling will required tiled drawing, I think).

Needed to separate/reduce the layout test churn for 121859 and for general sanity. We can make layout tests use threaded scrolling as well at a future date.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>932763</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2013-09-24 15:49:11 -0700</bug_when>
    <thetext>&lt;rdar://problem/15071494&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>933127</commentid>
    <comment_count>2</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-09-25 11:27:29 -0700</bug_when>
    <thetext>This is kind of messy, because lots of things in WebCore depend on the existence of a scrolling coordinator to mean “do what I should do if we’re using tiled drawing” (use a tiled backing for the root, use the shadow and ‘linen’ background view, etc.).

I can either

a) plumb some new thing down to WebCore that means ‘we’re using tiled drawing’; whether that be a setting or whatever (?)

b) do this at the same time as ‘remove-DrawingAreaImpl and always use tiled drawing’, which would mean that we could just (for Mac) always do these things</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>933296</commentid>
    <comment_count>3</comment_count>
      <attachid>212646</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-09-25 18:07:54 -0700</bug_when>
    <thetext>Created attachment 212646
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>933322</commentid>
    <comment_count>4</comment_count>
      <attachid>212646</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-25 19:04:25 -0700</bug_when>
    <thetext>Comment on attachment 212646
patch

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

&gt; Source/WebKit2/WebProcess/WebPage/DrawingArea.h:92
&gt; +    virtual bool shouldUseTiledBackingForFrame(const WebCore::Frame&amp;) { return false; }

Maybe this should take a frame view?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>933579</commentid>
    <comment_count>5</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-09-26 10:33:35 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/156472</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>212646</attachid>
            <date>2013-09-25 18:07:54 -0700</date>
            <delta_ts>2013-09-25 20:32:06 -0700</delta_ts>
            <desc>patch</desc>
            <filename>split-threadedscrolling.diff</filename>
            <type>text/plain</type>
            <size>31023</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA2OTQ0MDg1Li4zMTg1Yzc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzUg
QEAKKzIwMTMtMDktMjUgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisK
KyAgICAgICAgVGlsZWQgZHJhd2luZyBzaG91bGQgbm90IGltcGx5IHRocmVhZGVkIHNjcm9sbGlu
ZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIxODc0
CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNTA3MTQ5ND4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHM7IGEgbmVhci1mdXR1cmUg
cGF0Y2ggaXMgZ29pbmcgdG8gcHV0IHRoZSBtYWpvcml0eSBvZiBsYXlvdXQKKyAgICAgICAgdGVz
dHMgaW50byB0aGUgdGlsZWQtZHJhd2luZy13aXRob3V0LXRocmVhZGVkLXNjcm9sbGluZyBtb2Rl
LgorCisgICAgICAgICogcGFnZS9DaHJvbWVDbGllbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNo
cm9tZUNsaWVudDo6c2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJhbWUpOgorICAgICAgICBBZGQg
YSBDaHJvbWVDbGllbnQgY2FsbGJhY2sgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgYSBnaXZlbiBmcmFt
ZSB3YW50cyBhIFRpbGVkQmFja2luZyBmb3IgaXRzIGNvbnRlbnRzLgorCisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJM
YXllckJhY2tpbmc6OlJlbmRlckxheWVyQmFja2luZyk6CisgICAgICAgIE1ha2UgdXNlIG9mIHNo
b3VsZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lIGluc3RlYWQgb2YgcHJlZGljYXRpbmcgdGhlCisg
ICAgICAgIG1haW4gZnJhbWUgdXNpbmcgYSB0aWxlIGNhY2hlIG9uIHdoZXRoZXIgd2UgaGF2ZSBh
IHNjcm9sbGluZyBjb29yZGluYXRvci4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXll
ckNvbXBvc2l0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9y
OjptYWluRnJhbWVCYWNraW5nSXNUaWxlZCk6IEFkZGVkLgorCisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJMYXllckNvbXBvc2l0b3I6OnNob3VsZENvbXBvc2l0ZU92ZXJmbG93Q29udHJvbHMpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpyZXF1aXJlc092ZXJoYW5n
QXJlYXNMYXllcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OnJl
cXVpcmVzQ29udGVudFNoYWRvd0xheWVyKToKKyAgICAgICAgQWxsIG9mIHRoZXNlIGNoZWNrcyBm
b3IgZXhpc3RlbmNlIG9mIGEgc2Nyb2xsaW5nQ29vcmRpbmF0b3Igc2hvdWxkIGFjdHVhbGx5Cisg
ICAgICAgIGtleSBvZmYgd2hldGhlciB3ZSdyZSB1c2luZyB0aWxlZCBkcmF3aW5nIGF0IHRoZSBy
b290OyB0aGV5IGhhdmUgbm90aGluZworICAgICAgICB0byBkbyB3aXRoIHRocmVhZGVkIHNjcm9s
bGluZy4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaDoKKwog
MjAxMy0wOS0yNCAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CiAKICAgICAgICAgSW1w
bGVtZW50IHN5bWJvbCBuYW1lIGhhc2hpbmcgZm9yIFdlYkdMIHNoYWRlcnMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0Nocm9tZUNsaWVudC5oCmluZGV4IDFjM2EwYmUuLjZkYTdmMzEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9D
aHJvbWVDbGllbnQuaApAQCAtMzY1LDYgKzM2NSw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZv
aWQgZGlkQWRkSGVhZGVyTGF5ZXIoR3JhcGhpY3NMYXllciopIHsgfQogICAgIHZpcnR1YWwgdm9p
ZCBkaWRBZGRGb290ZXJMYXllcihHcmFwaGljc0xheWVyKikgeyB9CiAKKyAgICB2aXJ0dWFsIGJv
b2wgc2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJhbWUoY29uc3QgRnJhbWUmKSBjb25zdCB7IHJl
dHVybiBmYWxzZTsgfQorCiAgICAgLy8gVGhlc2UgbWV0aG9kcyBhcmUgdXNlZCB0byByZXBvcnQg
cGFnZXMgdGhhdCBhcmUgcGVyZm9ybWluZwogICAgIC8vIHNvbWUgdGFzayB0aGF0IHdlIGNvbnNp
ZGVyIHRvIGJlICJhY3RpdmUiLCBhbmQgc28gdGhlIHVzZXIKICAgICAvLyB3b3VsZCBsaWtlbHkg
d2FudCB0aGUgcGFnZSB0byByZW1haW4gcnVubmluZyB1bmludGVycnVwdGVkLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcAppbmRleCAxMGM5ZTQx
Li4zMjJkY2M1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXJCYWNraW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJC
YWNraW5nLmNwcApAQCAtMTE4LDMyICsxMTgsMjcgQEAgUmVuZGVyTGF5ZXJCYWNraW5nOjpSZW5k
ZXJMYXllckJhY2tpbmcoUmVuZGVyTGF5ZXIqIGxheWVyKQogICAgICwgbV9iYWNrZ3JvdW5kTGF5
ZXJQYWludHNGaXhlZFJvb3RCYWNrZ3JvdW5kKGZhbHNlKQogICAgICwgbV9kaWRTd2l0Y2hUb0Z1
bGxUaWxlQ292ZXJhZ2VEdXJpbmdMb2FkaW5nKGZhbHNlKQogewotICAgIGlmIChsYXllci0+aXNS
b290TGF5ZXIoKSkgewotICAgICAgICBQYWdlKiBwYWdlID0gcmVuZGVyZXIoKS5mcmFtZSgpLnBh
Z2UoKTsKLSAgICAgICAgaWYgKHBhZ2UgJiYgcGFnZS0+ZnJhbWVJc01haW5GcmFtZSgmcmVuZGVy
ZXIoKS5mcmFtZSgpKSkgeworICAgIFBhZ2UqIHBhZ2UgPSByZW5kZXJlcigpLmZyYW1lKCkucGFn
ZSgpOworCisgICAgaWYgKGxheWVyLT5pc1Jvb3RMYXllcigpICYmIHBhZ2UpIHsKKyAgICAgICAg
aWYgKHBhZ2UtPmZyYW1lSXNNYWluRnJhbWUoJnJlbmRlcmVyKCkuZnJhbWUoKSkpCiAgICAgICAg
ICAgICBtX2lzTWFpbkZyYW1lUmVuZGVyVmlld0xheWVyID0gdHJ1ZTsKIAotI2lmIFBMQVRGT1JN
KE1BQykKLSAgICAgICAgICAgIC8vIEZJWE1FOiBJdCdzIGEgbGl0dGxlIHdlaXJkIHRoYXQgd2Ug
YmFzZSB0aGlzIGRlY2lzaW9uIG9uIHdoZXRoZXIgdGhlcmUncyBhIHNjcm9sbGluZyBjb29yZGlu
YXRvciBvciBub3QuCi0gICAgICAgICAgICBpZiAocGFnZS0+c2Nyb2xsaW5nQ29vcmRpbmF0b3Io
KSkKLSAgICAgICAgICAgICAgICBtX3VzaW5nVGlsZWRDYWNoZUxheWVyID0gdHJ1ZTsKLSNlbmRp
ZgotICAgICAgICB9CisgICAgICAgIG1fdXNpbmdUaWxlZENhY2hlTGF5ZXIgPSBwYWdlLT5jaHJv
bWUoKS5jbGllbnQoKS5zaG91bGRVc2VUaWxlZEJhY2tpbmdGb3JGcmFtZShyZW5kZXJlcigpLmZy
YW1lKCkpOwogICAgIH0KICAgICAKICAgICBjcmVhdGVQcmltYXJ5R3JhcGhpY3NMYXllcigpOwog
Ci0gICAgaWYgKG1fdXNpbmdUaWxlZENhY2hlTGF5ZXIpIHsKKyAgICBpZiAobV91c2luZ1RpbGVk
Q2FjaGVMYXllciAmJiBwYWdlKSB7CiAgICAgICAgIFRpbGVkQmFja2luZyogdGlsZWRCYWNraW5n
ID0gdGhpcy0+dGlsZWRCYWNraW5nKCk7Ci0gICAgICAgIGlmIChQYWdlKiBwYWdlID0gcmVuZGVy
ZXIoKS5mcmFtZSgpLnBhZ2UoKSkgewotICAgICAgICAgICAgdGlsZWRCYWNraW5nLT5zZXRJc0lu
V2luZG93KHBhZ2UtPmlzSW5XaW5kb3coKSk7CiAKLSAgICAgICAgICAgIGlmIChtX2lzTWFpbkZy
YW1lUmVuZGVyVmlld0xheWVyKQotICAgICAgICAgICAgICAgIHRpbGVkQmFja2luZy0+c2V0VW5w
YXJlbnRzT2Zmc2NyZWVuVGlsZXModHJ1ZSk7CisgICAgICAgIHRpbGVkQmFja2luZy0+c2V0SXNJ
bldpbmRvdyhwYWdlLT5pc0luV2luZG93KCkpOwogCi0gICAgICAgICAgICB0aWxlZEJhY2tpbmct
PnNldFNjcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWQocGFnZS0+c2V0dGluZ3MoKS5z
Y3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkKCkpOwotICAgICAgICAgICAgYWRqdXN0
VGlsZWRCYWNraW5nQ292ZXJhZ2UoKTsKLSAgICAgICAgfQorICAgICAgICBpZiAobV9pc01haW5G
cmFtZVJlbmRlclZpZXdMYXllcikKKyAgICAgICAgICAgIHRpbGVkQmFja2luZy0+c2V0VW5wYXJl
bnRzT2Zmc2NyZWVuVGlsZXModHJ1ZSk7CisKKyAgICAgICAgdGlsZWRCYWNraW5nLT5zZXRTY3Jv
bGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkKHBhZ2UtPnNldHRpbmdzKCkuc2Nyb2xsaW5n
UGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZCgpKTsKKyAgICAgICAgYWRqdXN0VGlsZWRCYWNraW5n
Q292ZXJhZ2UoKTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAKaW5kZXggMjhhN2E0Yy4uZjA0ZDA1NSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAK
QEAgLTI0NjQsNiArMjQ2NCwxOSBAQCBib29sIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6a2VlcExh
eWVyc1BpeGVsQWxpZ25lZCgpIGNvbnN0CiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2Jvb2wgUmVu
ZGVyTGF5ZXJDb21wb3NpdG9yOjptYWluRnJhbWVCYWNraW5nSXNUaWxlZCgpIGNvbnN0Cit7Cisg
ICAgUmVuZGVyTGF5ZXIqIGxheWVyID0gbV9yZW5kZXJWaWV3LmxheWVyKCk7CisgICAgaWYgKCFs
YXllcikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgUmVuZGVyTGF5ZXJCYWNraW5nKiBi
YWNraW5nID0gbGF5ZXItPmJhY2tpbmcoKTsKKyAgICBpZiAoIWJhY2tpbmcpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKworICAgIHJldHVybiBiYWNraW5nLT51c2luZ1RpbGVkQmFja2luZygpOwor
fQorCiBib29sIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6c2hvdWxkQ29tcG9zaXRlT3ZlcmZsb3dD
b250cm9scygpIGNvbnN0CiB7CiAgICAgRnJhbWVWaWV3JiBmcmFtZVZpZXcgPSBtX3JlbmRlclZp
ZXcuZnJhbWVWaWV3KCk7CkBAIC0yNDcxLDcgKzI0ODQsNyBAQCBib29sIFJlbmRlckxheWVyQ29t
cG9zaXRvcjo6c2hvdWxkQ29tcG9zaXRlT3ZlcmZsb3dDb250cm9scygpIGNvbnN0CiAgICAgaWYg
KGZyYW1lVmlldy5wbGF0Zm9ybVdpZGdldCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAg
ICBpZiAoaGFzQ29vcmRpbmF0ZWRTY3JvbGxpbmcoKSkKKyAgICBpZiAobWFpbkZyYW1lQmFja2lu
Z0lzVGlsZWQoKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKICAgICBpZiAoIWZyYW1lVmlldy5o
YXNPdmVybGF5U2Nyb2xsYmFycygpKQpAQCAtMjUwMiw4ICsyNTE1LDggQEAgYm9vbCBSZW5kZXJM
YXllckNvbXBvc2l0b3I6OnJlcXVpcmVzT3ZlcmhhbmdBcmVhc0xheWVyKCkgY29uc3QKICAgICBp
ZiAobV9yZW5kZXJWaWV3LmRvY3VtZW50KCkub3duZXJFbGVtZW50KCkpCiAgICAgICAgIHJldHVy
biBmYWxzZTsKIAotICAgIC8vIFdlIGRvIHdhbnQgYSBsYXllciBpZiB3ZSBoYXZlIGEgc2Nyb2xs
aW5nIGNvb3JkaW5hdG9yIGFuZCBjYW4gc2Nyb2xsLgotICAgIGlmIChzY3JvbGxpbmdDb29yZGlu
YXRvcigpICYmIG1fcmVuZGVyVmlldy5mcmFtZVZpZXcoKS5oYXNPcGFxdWVCYWNrZ3JvdW5kKCkg
JiYgIW1fcmVuZGVyVmlldy5mcmFtZVZpZXcoKS5wcm9oaWJpdHNTY3JvbGxpbmcoKSkKKyAgICAv
LyBXZSBkbyB3YW50IGEgbGF5ZXIgaWYgd2UncmUgdXNpbmcgdGlsZWQgZHJhd2luZyBhbmQgY2Fu
IHNjcm9sbC4KKyAgICBpZiAobWFpbkZyYW1lQmFja2luZ0lzVGlsZWQoKSAmJiBtX3JlbmRlclZp
ZXcuZnJhbWVWaWV3KCkuaGFzT3BhcXVlQmFja2dyb3VuZCgpICYmICFtX3JlbmRlclZpZXcuZnJh
bWVWaWV3KCkucHJvaGliaXRzU2Nyb2xsaW5nKCkpCiAgICAgICAgIHJldHVybiB0cnVlOwogCiAg
ICAgcmV0dXJuIGZhbHNlOwpAQCAtMjUxOSw4ICsyNTMyLDggQEAgYm9vbCBSZW5kZXJMYXllckNv
bXBvc2l0b3I6OnJlcXVpcmVzQ29udGVudFNoYWRvd0xheWVyKCkgY29uc3QKICAgICBpZiAodmll
d0hhc1RyYW5zcGFyZW50QmFja2dyb3VuZCgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAg
ICAvLyBPbiBNYWMsIHdlIHdhbnQgYSBjb250ZW50IHNoYWRvdyBsYXllciBpZiB3ZSBoYXZlIGEg
c2Nyb2xsaW5nIGNvb3JkaW5hdG9yIGFuZCBjYW4gc2Nyb2xsLgotICAgIGlmIChzY3JvbGxpbmdD
b29yZGluYXRvcigpICYmICFtX3JlbmRlclZpZXcuZnJhbWVWaWV3KCkucHJvaGliaXRzU2Nyb2xs
aW5nKCkpCisgICAgLy8gT24gTWFjLCB3ZSB3YW50IGEgY29udGVudCBzaGFkb3cgbGF5ZXIgaWYg
d2UncmUgdXNpbmcgdGlsZWQgZHJhd2luZyBhbmQgY2FuIHNjcm9sbC4KKyAgICBpZiAobWFpbkZy
YW1lQmFja2luZ0lzVGlsZWQoKSAmJiAhbV9yZW5kZXJWaWV3LmZyYW1lVmlldygpLnByb2hpYml0
c1Njcm9sbGluZygpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKICNlbmRpZgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmgKaW5kZXggNTk1NGUw
OS4uYzJmM2QwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxh
eWVyQ29tcG9zaXRvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXll
ckNvbXBvc2l0b3IuaApAQCAtNDA2LDYgKzQwNiw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCBsb2dM
YXllckluZm8oY29uc3QgUmVuZGVyTGF5ZXIqLCBpbnQgZGVwdGgpOwogI2VuZGlmCiAKKyAgICBi
b29sIG1haW5GcmFtZUJhY2tpbmdJc1RpbGVkKCkgY29uc3Q7CisKIHByaXZhdGU6CiAgICAgUmVu
ZGVyVmlldyYgbV9yZW5kZXJWaWV3OwogICAgIE93blB0cjxHcmFwaGljc0xheWVyPiBtX3Jvb3RD
b250ZW50TGF5ZXI7CkBAIC00MzEsNyArNDMzLDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1faW5Q
b3N0TGF5b3V0VXBkYXRlOyAvLyB0cnVlIHdoZW4gaXQncyBPSyB0byB0cnVzdCBsYXlvdXQgaW5m
b3JtYXRpb24gKGUuZy4gbGF5ZXIgc2l6ZXMgYW5kIHBvc2l0aW9ucykKIAogICAgIGJvb2wgbV9p
c1RyYWNraW5nUmVwYWludHM7IC8vIFVzZWQgZm9yIHRlc3RpbmcuCi0gICAgCisKICAgICB1bnNp
Z25lZCBtX2xheWVyc1dpdGhUaWxlZEJhY2tpbmdDb3VudDsKIAogICAgIFJvb3RMYXllckF0dGFj
aG1lbnQgbV9yb290TGF5ZXJBdHRhY2htZW50OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IGE4ZWNiOWEuLmM2Yjkx
MWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw1OCBAQAorMjAxMy0wOS0yNSAgVGltIEhvcnRvbiAg
PHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKworICAgICAgICBUaWxlZCBkcmF3aW5nIHNob3Vs
ZCBub3QgaW1wbHkgdGhyZWFkZWQgc2Nyb2xsaW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjE4NzQKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzE1
MDcxNDk0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogU2hhcmVkL0RyYXdpbmdBcmVhSW5mby5oOgorICAgICAgICBXZSBjYW4gaGF2ZSBEcmF3aW5n
QXJlYVR5cGVUaWxlZENvcmVBbmltYXRpb24gd2l0aG91dCB0aHJlYWRlZCBzY3JvbGxpbmcuCisK
KyAgICAgICAgKiBTaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcDoKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNTZXRU
aHJlYWRlZFNjcm9sbGluZ0VuYWJsZWQpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldFRocmVh
ZGVkU2Nyb2xsaW5nRW5hYmxlZCk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVy
ZW5jZXNQcml2YXRlLmg6CisgICAgICAgIEFkZCBhIHByZWZlcmVuY2UgZm9yIHRocmVhZGVkIHNj
cm9sbGluZy4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbToKKyAgICAg
ICAgKC1bV0tWaWV3IFdlYktpdDo6XSk6CisgICAgICAgICogVUlQcm9jZXNzL21hYy9UaWxlZENv
cmVBbmltYXRpb25EcmF3aW5nQXJlYVByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL21hYy9U
aWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYVByb3h5Lm1tOgorICAgICAgICAqIFdlYlByb2Nl
c3MvV2ViUGFnZS9EcmF3aW5nQXJlYS5jcHA6CisgICAgICAgIChXZWJLaXQ6OkRyYXdpbmdBcmVh
OjpjcmVhdGUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9EcmF3aW5nQXJlYS5oOgor
ICAgICAgICBNYWtlIGl0IHNvIHdlIGNhbiB1c2UgVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0Fy
ZWEgd2l0aG91dCBFTkFCTEUoVEhSRUFERURfU0NST0xMSU5HKS4KKworICAgICAgICAqIFdlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViQ2hyb21lQ2xpZW50OjpzaG91bGRVc2VUaWxlZEJhY2tpbmdGb3JGcmFtZSk6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaDoKKyAgICAg
ICAgT3ZlcnJpZGUgc2hvdWxkVXNlVGlsZWRCYWNraW5nRm9yRnJhbWU7IGFzayB0aGUgZHJhd2lu
ZyBhcmVhIGlmIHdlIHdhbnQgYSB0aWxlZCBiYWNraW5nIGZvciB0aGUgZ2l2ZW4gZnJhbWUuCisK
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2U6OldlYlBhZ2UpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp+V2ViUGFn
ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgTW92
ZSBhdHRhY2hpbmcgYW5kIGRldGFjaGluZyB0aGUgc2Nyb2xsaW5nIHRyZWUgaW50byBXZWJQYWdl
LgorICAgICAgICBTdG9yZSB3aGV0aGVyIG9yIG5vdCB0aGlzIHBhZ2UgaXMgZ29pbmcgdG8gdXNl
IHRocmVhZGVkIHNjcm9sbGluZyBvbmNlLCBhcyB0aGlzCisgICAgICAgIGNhbm5vdCBjaGFuZ2Ug
dGhyb3VnaCB0aGUgbGlmZSBvZiBhIHBhZ2UuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBh
Z2UvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhLmg6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYS5tbToKKyAgICAg
ICAgKFdlYktpdDo6VGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OlRpbGVkQ29yZUFuaW1h
dGlvbkRyYXdpbmdBcmVhKToKKyAgICAgICAgKFdlYktpdDo6VGlsZWRDb3JlQW5pbWF0aW9uRHJh
d2luZ0FyZWE6On5UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYSk6CisgICAgICAgIE1vdmUg
YXR0YWNoaW5nIGFuZCBkZXRhY2hpbmcgdGhlIHNjcm9sbGluZyB0cmVlIGludG8gV2ViUGFnZS4K
KworICAgICAgICAoV2ViS2l0OjpUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYTo6ZGlkSW5z
dGFsbFBhZ2VPdmVybGF5KToKKyAgICAgICAgKFdlYktpdDo6VGlsZWRDb3JlQW5pbWF0aW9uRHJh
d2luZ0FyZWE6OmRpZFVuaW5zdGFsbFBhZ2VPdmVybGF5KToKKyAgICAgICAgKFdlYktpdDo6VGls
ZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OnVwZGF0ZVByZWZlcmVuY2VzKToKKyAgICAgICAg
KFdlYktpdDo6VGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OmRpc3BhdGNoQWZ0ZXJFbnN1
cmluZ1VwZGF0ZWRTY3JvbGxQb3NpdGlvbik6CisgICAgICAgIE9ubHkgZG8gc2Nyb2xsaW5nIGNv
b3JkaW5hdG9yIHdvcmsgaWYgd2UgaGF2ZSBhIHNjcm9sbGluZyBjb29yZGluYXRvci4KKworICAg
ICAgICAoV2ViS2l0OjpUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYTo6c2hvdWxkVXNlVGls
ZWRCYWNraW5nRm9yRnJhbWUpOgorICAgICAgICBUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJl
YSBhbHdheXMgd2FudHMgYSB0aWxlZCBiYWNraW5nIGZvciB0aGUgbWFpbiBmcmFtZS4KKwogMjAx
My0wOS0yNCAgRW5yaWNhIENhc3VjY2kgIDxlbnJpY2FAYXBwbGUuY29tPgogCiAgICAgICAgIFVw
c3RyZWFtIGNoYW5nZXMgdG8gUGFzdGVib2FyZCBpbXBsZW1lbnRhdGlvbiBmb3IgaU9TLgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0RyYXdpbmdBcmVhSW5mby5oIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL0RyYXdpbmdBcmVhSW5mby5oCmluZGV4IGFlNGVkNzYuLjBiZGFlMmYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9EcmF3aW5nQXJlYUluZm8uaAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvRHJhd2luZ0FyZWFJbmZvLmgKQEAgLTMwLDEwICszMCw4
IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiBlbnVtIERyYXdpbmdBcmVhVHlwZSB7CiAgICAgRHJh
d2luZ0FyZWFUeXBlSW1wbCwKLSNpZiBQTEFURk9STShNQUMpICYmIEVOQUJMRShUSFJFQURFRF9T
Q1JPTExJTkcpCi0gICAgRHJhd2luZ0FyZWFUeXBlVGlsZWRDb3JlQW5pbWF0aW9uLAotI2VuZGlm
CiAjaWYgUExBVEZPUk0oTUFDKQorICAgIERyYXdpbmdBcmVhVHlwZVRpbGVkQ29yZUFuaW1hdGlv
biwKICAgICBEcmF3aW5nQXJlYVR5cGVSZW1vdGVMYXllclRyZWUsCiAjZW5kaWYKIH07CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oIGIvU291
cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaAppbmRleCA4YTg3M2QyLi43
NDc2NTExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNT
dG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgK
QEAgLTE2NCw2ICsxNjQsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKICAgICBtYWNybyhIaWRkZW5Q
YWdlRE9NVGltZXJUaHJvdHRsaW5nRW5hYmxlZCwgaGlkZGVuUGFnZURPTVRpbWVyVGhyb3R0bGlu
Z0VuYWJsZWQsIEJvb2wsIGJvb2wsIERFRkFVTFRfSElEREVOX1BBR0VfRE9NX1RJTUVSX1RIUk9U
VExJTkdfRU5BQkxFRCkgXAogICAgIG1hY3JvKEhpZGRlblBhZ2VDU1NBbmltYXRpb25TdXNwZW5z
aW9uRW5hYmxlZCwgaGlkZGVuUGFnZUNTU0FuaW1hdGlvblN1c3BlbnNpb25FbmFibGVkLCBCb29s
LCBib29sLCBERUZBVUxUX0hJRERFTl9QQUdFX0NTU19BTklNQVRJT05fU1VTUEVOU0lPTl9FTkFC
TEVEKSBcCiAgICAgbWFjcm8oTG93UG93ZXJWaWRlb0F1ZGlvQnVmZmVyU2l6ZUVuYWJsZWQsIGxv
d1Bvd2VyVmlkZW9BdWRpb0J1ZmZlclNpemVFbmFibGVkLCBCb29sLCBib29sLCBmYWxzZSkgXAor
ICAgIG1hY3JvKFRocmVhZGVkU2Nyb2xsaW5nRW5hYmxlZCwgdGhyZWFkZWRTY3JvbGxpbmdFbmFi
bGVkLCBCb29sLCBib29sLCB0cnVlKSBcCiAgICAgXAogCiAjZGVmaW5lIEZPUl9FQUNIX1dFQktJ
VF9ET1VCTEVfUFJFRkVSRU5DRShtYWNybykgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCmluZGV4IDVjYzQ1OWIuLjFlMGMxNzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKQEAg
LTExNTQsMyArMTE1NCwxMyBAQCBkb3VibGUgV0tQcmVmZXJlbmNlc0dldEluY3JlbWVudGFsUmVu
ZGVyaW5nU3VwcHJlc3Npb25UaW1lb3V0KFdLUHJlZmVyZW5jZXNSZWYgcAogewogICAgIHJldHVy
biB0b0FQSSh0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5pbmNyZW1lbnRhbFJlbmRlcmluZ1N1cHBy
ZXNzaW9uVGltZW91dCgpKTsKIH0KKwordm9pZCBXS1ByZWZlcmVuY2VzU2V0VGhyZWFkZWRTY3Jv
bGxpbmdFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxl
ZCkKK3sKKyAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5zZXRUaHJlYWRlZFNjcm9sbGluZ0Vu
YWJsZWQoZW5hYmxlZCk7Cit9CisKK2Jvb2wgV0tQcmVmZXJlbmNlc0dldFRocmVhZGVkU2Nyb2xs
aW5nRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQoreworICAgIHJldHVy
biB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT50aHJlYWRlZFNjcm9sbGluZ0VuYWJsZWQoKTsKK30K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2Vz
UHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQ
cml2YXRlLmgKaW5kZXggZTY2NTcyYi4uMzU2OTM1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRlLmgKKysrIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXNQcml2YXRlLmgKQEAgLTI4Nyw2ICsy
ODcsMTAgQEAgV0tfRVhQT1JUIGJvb2wgV0tQcmVmZXJlbmNlc0dldEF1dG9zdGFydE9yaWdpblBs
dWdJblNuYXBzaG90dGluZ0VuYWJsZWQoV0tQcmVmZXIKIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVy
ZW5jZXNTZXRQcmltYXJ5UGx1Z0luU25hcHNob3REZXRlY3Rpb25FbmFibGVkKFdLUHJlZmVyZW5j
ZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxlZCk7CiBXS19FWFBPUlQgYm9vbCBXS1By
ZWZlcmVuY2VzR2V0UHJpbWFyeVBsdWdJblNuYXBzaG90RGV0ZWN0aW9uRW5hYmxlZChXS1ByZWZl
cmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKIAorLy8gRGVmYXVsdHMgdG8gdHJ1ZQorV0tfRVhQ
T1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldFRocmVhZGVkU2Nyb2xsaW5nRW5hYmxlZChXS1ByZWZl
cmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIGVuYWJsZWQpOworV0tfRVhQT1JUIGJvb2wg
V0tQcmVmZXJlbmNlc0dldFRocmVhZGVkU2Nyb2xsaW5nRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVm
IHByZWZlcmVuY2VzUmVmKTsKKwogLy8gRGVmYXVsdHMgdG8gNSBzZWNvbmRzLgogV0tfRVhQT1JU
IHZvaWQgV0tQcmVmZXJlbmNlc1NldEluY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb25UaW1l
b3V0KFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGRvdWJsZSB0aW1lb3V0KTsKIFdL
X0VYUE9SVCBkb3VibGUgV0tQcmVmZXJlbmNlc0dldEluY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJl
c3Npb25UaW1lb3V0KFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3Lm1tCmluZGV4IDM5OTlhMDEuLjk2M2Y1NmMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0KQEAgLTIzNjcs
MTQgKzIzNjcsMTIgQEAgc3RhdGljIHZvaWQgZHJhd1BhZ2VCYWNrZ3JvdW5kKENHQ29udGV4dFJl
ZiBjb250ZXh0LCBXZWJQYWdlUHJveHkqIHBhZ2UsIGNvbnN0IEkKIAogLSAoT3duUHRyPFdlYktp
dDo6RHJhd2luZ0FyZWFQcm94eT4pX2NyZWF0ZURyYXdpbmdBcmVhUHJveHkKIHsKLSNpZiBFTkFC
TEUoVEhSRUFERURfU0NST0xMSU5HKQogICAgIGlmIChbc2VsZiBfc2hvdWxkVXNlVGlsZWREcmF3
aW5nQXJlYV0pIHsKICAgICAgICAgaWYgKGdldGVudigiV0tfVVNFX1JFTU9URV9MQVlFUl9UUkVF
X0RSQVdJTkdfQVJFQSIpKQogICAgICAgICAgICAgcmV0dXJuIFJlbW90ZUxheWVyVHJlZURyYXdp
bmdBcmVhUHJveHk6OmNyZWF0ZShfZGF0YS0+X3BhZ2UuZ2V0KCkpOwogCiAgICAgICAgIHJldHVy
biBjcmVhdGVPd25lZDxUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYVByb3h5PihfZGF0YS0+
X3BhZ2UuZ2V0KCkpOwogICAgIH0KLSNlbmRpZgogCiAgICAgcmV0dXJuIGNyZWF0ZU93bmVkPERy
YXdpbmdBcmVhUHJveHlJbXBsPihfZGF0YS0+X3BhZ2UuZ2V0KCkpOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJl
YVByb3h5LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1RpbGVkQ29yZUFuaW1hdGlv
bkRyYXdpbmdBcmVhUHJveHkuaAppbmRleCA2ZTBjYTI4Li43NDViYTI1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVh
UHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1RpbGVkQ29yZUFuaW1h
dGlvbkRyYXdpbmdBcmVhUHJveHkuaApAQCAtMjYsOCArMjYsNiBAQAogI2lmbmRlZiBUaWxlZENv
cmVBbmltYXRpb25EcmF3aW5nQXJlYVByb3h5X2gKICNkZWZpbmUgVGlsZWRDb3JlQW5pbWF0aW9u
RHJhd2luZ0FyZWFQcm94eV9oCiAKLSNpZiBFTkFCTEUoVEhSRUFERURfU0NST0xMSU5HKQotCiAj
aW5jbHVkZSAiRHJhd2luZ0FyZWFQcm94eS5oIgogI2luY2x1ZGUgPHd0Zi9QYXNzT3duUHRyLmg+
CiAKQEAgLTcxLDYgKzY5LDQgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAK
LSNlbmRpZiAvLyBFTkFCTEUoVEhSRUFERURfU0NST0xMSU5HKQotCiAjZW5kaWYgLy8gVGlsZWRD
b3JlQW5pbWF0aW9uRHJhd2luZ0FyZWFQcm94eV9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhUHJveHkubW0gYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVh
UHJveHkubW0KaW5kZXggZDAzMzhlYi4uNDM1YjA2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYVByb3h5Lm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2lu
Z0FyZWFQcm94eS5tbQpAQCAtMjYsOCArMjYsNiBAQAogI2ltcG9ydCAiY29uZmlnLmgiCiAjaW1w
b3J0ICJUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYVByb3h5LmgiCiAKLSNpZiBFTkFCTEUo
VEhSRUFERURfU0NST0xMSU5HKQotCiAjaW1wb3J0ICJDb2xvclNwYWNlRGF0YS5oIgogI2ltcG9y
dCAiRHJhd2luZ0FyZWFNZXNzYWdlcy5oIgogI2ltcG9ydCAiRHJhd2luZ0FyZWFQcm94eU1lc3Nh
Z2VzLmgiCkBAIC0xNTcsNSArMTU1LDMgQEAgdm9pZCBUaWxlZENvcmVBbmltYXRpb25EcmF3aW5n
QXJlYVByb3h5OjpzZW5kVXBkYXRlR2VvbWV0cnkoKQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKLQotI2VuZGlmIC8vIEVOQUJMRShUSFJFQURFRF9TQ1JPTExJTkcpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5jcHAKaW5kZXggY2JiM2M4OS4uNTYwNzAwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNw
cApAQCAtOTA0LDYgKzkwNCwxMSBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6ZGlkQWRkRm9vdGVy
TGF5ZXIoR3JhcGhpY3NMYXllciogZm9vdGVyUGFyZW50KQogICAgICAgICBiYW5uZXItPmRpZEFk
ZFBhcmVudExheWVyKGZvb3RlclBhcmVudCk7CiB9CiAKK2Jvb2wgV2ViQ2hyb21lQ2xpZW50Ojpz
aG91bGRVc2VUaWxlZEJhY2tpbmdGb3JGcmFtZShjb25zdCBGcmFtZSYgZnJhbWUpIGNvbnN0Cit7
CisgICAgcmV0dXJuIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+c2hvdWxkVXNlVGlsZWRCYWNraW5n
Rm9yRnJhbWUoZnJhbWUpOworfQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6aW5jcmVtZW50QWN0
aXZlUGFnZUNvdW50KCkKIHsKICAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS5pbmNyZW1lbnRBY3Rp
dmVUYXNrQ291bnQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCmluZGV4IGRmYzI0ZGUuLjNhNDI2YmEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJDaHJvbWVDbGllbnQuaApAQCAtMjM1LDYgKzIzNSw4IEBAIHByaXZhdGU6CiAgICAg
dmlydHVhbCB2b2lkIGRpZEFkZEhlYWRlckxheWVyKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqKSBP
VkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgZGlkQWRkRm9vdGVyTGF5ZXIoV2ViQ29yZTo6R3Jh
cGhpY3NMYXllciopIE9WRVJSSURFOwogCisgICAgdmlydHVhbCBib29sIHNob3VsZFVzZVRpbGVk
QmFja2luZ0ZvckZyYW1lKGNvbnN0IFdlYkNvcmU6OkZyYW1lJikgY29uc3QgT1ZFUlJJREU7CisK
ICAgICB2aXJ0dWFsIHZvaWQgaW5jcmVtZW50QWN0aXZlUGFnZUNvdW50KCkgT1ZFUlJJREU7CiAg
ICAgdmlydHVhbCB2b2lkIGRlY3JlbWVudEFjdGl2ZVBhZ2VDb3VudCgpIE9WRVJSSURFOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWEu
Y3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL0RyYXdpbmdBcmVhLmNwcApp
bmRleCBlZDZjZmFjLi40NThiOTA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWEuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9EcmF3aW5nQXJlYS5jcHAKQEAgLTI5LDEyICsyOSw5IEBACiAvLyBTdWJjbGFz
c2VzCiAjaW5jbHVkZSAiRHJhd2luZ0FyZWFJbXBsLmgiCiAKLSNpZiBQTEFURk9STShNQUMpICYm
IEVOQUJMRShUSFJFQURFRF9TQ1JPTExJTkcpCi0jaW5jbHVkZSAiVGlsZWRDb3JlQW5pbWF0aW9u
RHJhd2luZ0FyZWEuaCIKLSNlbmRpZgotCiAjaWYgUExBVEZPUk0oTUFDKQogI2luY2x1ZGUgIlJl
bW90ZUxheWVyVHJlZURyYXdpbmdBcmVhLmgiCisjaW5jbHVkZSAiVGlsZWRDb3JlQW5pbWF0aW9u
RHJhd2luZ0FyZWEuaCIKICNlbmRpZgogCiAjaW5jbHVkZSAiV2ViUGFnZUNyZWF0aW9uUGFyYW1l
dGVycy5oIgpAQCAtNDYsMTEgKzQzLDkgQEAgUGFzc093blB0cjxEcmF3aW5nQXJlYT4gRHJhd2lu
Z0FyZWE6OmNyZWF0ZShXZWJQYWdlKiB3ZWJQYWdlLCBjb25zdCBXZWJQYWdlQ3JlYXQKICAgICBz
d2l0Y2ggKHBhcmFtZXRlcnMuZHJhd2luZ0FyZWFUeXBlKSB7CiAgICAgY2FzZSBEcmF3aW5nQXJl
YVR5cGVJbXBsOgogICAgICAgICByZXR1cm4gRHJhd2luZ0FyZWFJbXBsOjpjcmVhdGUod2ViUGFn
ZSwgcGFyYW1ldGVycyk7Ci0jaWYgUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVEhSRUFERURfU0NS
T0xMSU5HKQorI2lmIFBMQVRGT1JNKE1BQykKICAgICBjYXNlIERyYXdpbmdBcmVhVHlwZVRpbGVk
Q29yZUFuaW1hdGlvbjoKICAgICAgICAgcmV0dXJuIFRpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdB
cmVhOjpjcmVhdGUod2ViUGFnZSwgcGFyYW1ldGVycyk7Ci0jZW5kaWYKLSNpZiBQTEFURk9STShN
QUMpCiAgICAgY2FzZSBEcmF3aW5nQXJlYVR5cGVSZW1vdGVMYXllclRyZWU6CiAgICAgICAgIHJl
dHVybiBSZW1vdGVMYXllclRyZWVEcmF3aW5nQXJlYTo6Y3JlYXRlKHdlYlBhZ2UsIHBhcmFtZXRl
cnMpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvRHJhd2luZ0FyZWEuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9EcmF3
aW5nQXJlYS5oCmluZGV4IDU4NmMzNmMuLmNhYTg5NGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9EcmF3aW5nQXJlYS5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViUGFnZS9EcmF3aW5nQXJlYS5oCkBAIC0zNCwxMyArMzQsMTQgQEAKICNp
bmNsdWRlIDx3dGYvUGFzc093blB0ci5oPgogCiBuYW1lc3BhY2UgQ29yZUlQQyB7Ci0gICAgY2xh
c3MgQ29ubmVjdGlvbjsKLSAgICBjbGFzcyBNZXNzYWdlRGVjb2RlcjsKK2NsYXNzIENvbm5lY3Rp
b247CitjbGFzcyBNZXNzYWdlRGVjb2RlcjsKIH0KIAogbmFtZXNwYWNlIFdlYkNvcmUgewotICAg
IGNsYXNzIEdyYXBoaWNzTGF5ZXI7Ci0gICAgY2xhc3MgR3JhcGhpY3NMYXllckZhY3Rvcnk7Citj
bGFzcyBGcmFtZTsKK2NsYXNzIEdyYXBoaWNzTGF5ZXI7CitjbGFzcyBHcmFwaGljc0xheWVyRmFj
dG9yeTsKIH0KIAogbmFtZXNwYWNlIFdlYktpdCB7CkBAIC04OCw2ICs4OSw4IEBAIHB1YmxpYzoK
IAogICAgIHZpcnR1YWwgdm9pZCBkaWRDaGFuZ2VTY3JvbGxPZmZzZXRGb3JBbnlGcmFtZSgpIHsg
fQogCisgICAgdmlydHVhbCBib29sIHNob3VsZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lKGNvbnN0
IFdlYkNvcmU6OkZyYW1lJikgeyByZXR1cm4gZmFsc2U7IH0KKwogI2lmIFVTRShBQ0NFTEVSQVRF
RF9DT01QT1NJVElORykKICAgICB2aXJ0dWFsIFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJGYWN0b3J5
KiBncmFwaGljc0xheWVyRmFjdG9yeSgpIHsgcmV0dXJuIDA7IH0KICAgICB2aXJ0dWFsIHZvaWQg
c2V0Um9vdENvbXBvc2l0aW5nTGF5ZXIoV2ViQ29yZTo6R3JhcGhpY3NMYXllciopID0gMDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCA2N2Qx
Yzc4Li5mZjgwNTFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuY3BwCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSAiRGVjb2RlckFkYXB0ZXIuaCIK
ICNpbmNsdWRlICJEcmF3aW5nQXJlYS5oIgogI2luY2x1ZGUgIkRyYXdpbmdBcmVhTWVzc2FnZXMu
aCIKKyNpbmNsdWRlICJFdmVudERpc3BhdGNoZXIuaCIKICNpbmNsdWRlICJJbmplY3RlZEJ1bmRs
ZS5oIgogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlQmFja0ZvcndhcmRMaXN0LmgiCiAjaW5jbHVk
ZSAiSW5qZWN0ZWRCdW5kbGVVc2VyTWVzc2FnZUNvZGVycy5oIgpAQCAtMjkxLDYgKzI5Miw3IEBA
IFdlYlBhZ2U6OldlYlBhZ2UodWludDY0X3QgcGFnZUlELCBjb25zdCBXZWJQYWdlQ3JlYXRpb25Q
YXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogICAgICwgbV9iYWNrZ3JvdW5kQ29sb3IoQ29sb3I6Ondo
aXRlKQogICAgICwgbV9tYXhpbXVtUmVuZGVyaW5nU3VwcHJlc3Npb25Ub2tlbigwKQogICAgICwg
bV9zY3JvbGxQaW5uaW5nQmVoYXZpb3IoRG9Ob3RQaW4pCisgICAgLCBtX3VzZVRocmVhZGVkU2Ny
b2xsaW5nKGZhbHNlKQogewogICAgIEFTU0VSVChtX3BhZ2VJRCk7CiAgICAgLy8gRklYTUU6IFRo
aXMgaXMgYSBub24taWRlYWwgbG9jYXRpb24gZm9yIHRoaXMgU2V0dGluZyBhbmQKQEAgLTMxOSw2
ICszMjEsOSBAQCBXZWJQYWdlOjpXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJRCwgY29uc3QgV2ViUGFn
ZUNyZWF0aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVycykKIAogICAgIG1fcGFnZSA9IGFkb3B0UHRy
KG5ldyBQYWdlKHBhZ2VDbGllbnRzKSk7CiAKKyAgICBtX3VzZVRocmVhZGVkU2Nyb2xsaW5nID0g
cGFyYW1ldGVycy5zdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OnRo
cmVhZGVkU2Nyb2xsaW5nRW5hYmxlZEtleSgpKTsKKyAgICBtX3BhZ2UtPnNldHRpbmdzKCkuc2V0
U2Nyb2xsaW5nQ29vcmRpbmF0b3JFbmFibGVkKG1fdXNlVGhyZWFkZWRTY3JvbGxpbmcpOworCiAg
ICAgbV9kcmF3aW5nQXJlYSA9IERyYXdpbmdBcmVhOjpjcmVhdGUodGhpcywgcGFyYW1ldGVycyk7
CiAgICAgbV9kcmF3aW5nQXJlYS0+c2V0UGFpbnRpbmdFbmFibGVkKGZhbHNlKTsKIApAQCAtNDE4
LDYgKzQyMywxMSBAQCBXZWJQYWdlOjpXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJRCwgY29uc3QgV2Vi
UGFnZUNyZWF0aW9uUGFyYW1ldGVycyYgcGFyYW1ldGVycykKICNpZm5kZWYgTkRFQlVHCiAgICAg
d2ViUGFnZUNvdW50ZXIuaW5jcmVtZW50KCk7CiAjZW5kaWYKKworI2lmIEVOQUJMRShUSFJFQURF
RF9TQ1JPTExJTkcpCisgICAgaWYgKG1fdXNlVGhyZWFkZWRTY3JvbGxpbmcpCisgICAgICAgIFdl
YlByb2Nlc3M6OnNoYXJlZCgpLmV2ZW50RGlzcGF0Y2hlcigpLmFkZFNjcm9sbGluZ1RyZWVGb3JQ
YWdlKHRoaXMpOworI2VuZGlmCiB9CiAKIFdlYlBhZ2U6On5XZWJQYWdlKCkKQEAgLTQyNyw2ICs0
MzcsMTEgQEAgV2ViUGFnZTo6fldlYlBhZ2UoKQogCiAgICAgQVNTRVJUKCFtX3BhZ2UpOwogCisj
aWYgRU5BQkxFKFRIUkVBREVEX1NDUk9MTElORykKKyAgICBpZiAobV91c2VUaHJlYWRlZFNjcm9s
bGluZykKKyAgICAgICAgV2ViUHJvY2Vzczo6c2hhcmVkKCkuZXZlbnREaXNwYXRjaGVyKCkucmVt
b3ZlU2Nyb2xsaW5nVHJlZUZvclBhZ2UodGhpcyk7CisjZW5kaWYKKwogICAgIG1fc2FuZGJveEV4
dGVuc2lvblRyYWNrZXIuaW52YWxpZGF0ZSgpOwogCiAgICAgZm9yIChIYXNoU2V0PFBsdWdpblZp
ZXcqPjo6Y29uc3RfaXRlcmF0b3IgaXQgPSBtX3BsdWdpblZpZXdzLmJlZ2luKCksIGVuZCA9IG1f
cGx1Z2luVmlld3MuZW5kKCk7IGl0ICE9IGVuZDsgKytpdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCmluZGV4IGEyMDZiNzUuLjk1NjgyNjcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKKysrIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtMTAyOSw2ICsxMDI5
LDggQEAgcHJpdmF0ZToKICAgICB1bnNpZ25lZCBtX21heGltdW1SZW5kZXJpbmdTdXBwcmVzc2lv
blRva2VuOwogICAgIAogICAgIFdlYkNvcmU6OlNjcm9sbFBpbm5pbmdCZWhhdmlvciBtX3Njcm9s
bFBpbm5pbmdCZWhhdmlvcjsKKworICAgIGJvb2wgbV91c2VUaHJlYWRlZFNjcm9sbGluZzsKIH07
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYS5oIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3
aW5nQXJlYS5oCmluZGV4IDczMDBhN2UuLmViY2FhMzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEu
aAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29yZUFu
aW1hdGlvbkRyYXdpbmdBcmVhLmgKQEAgLTI2LDggKzI2LDYgQEAKICNpZm5kZWYgVGlsZWRDb3Jl
QW5pbWF0aW9uRHJhd2luZ0FyZWFfaAogI2RlZmluZSBUaWxlZENvcmVBbmltYXRpb25EcmF3aW5n
QXJlYV9oCiAKLSNpZiBFTkFCTEUoVEhSRUFERURfU0NST0xMSU5HKQotCiAjaW5jbHVkZSAiRHJh
d2luZ0FyZWEuaCIKICNpbmNsdWRlICJMYXllclRyZWVDb250ZXh0LmgiCiAjaW5jbHVkZSA8V2Vi
Q29yZS9GbG9hdFJlY3QuaD4KQEAgLTgzLDYgKzgxLDggQEAgcHJpdmF0ZToKIAogICAgIHZpcnR1
YWwgdm9pZCBkaXNwYXRjaEFmdGVyRW5zdXJpbmdVcGRhdGVkU2Nyb2xsUG9zaXRpb24oY29uc3Qg
RnVuY3Rpb248dm9pZCAoKT4mKSBPVkVSUklERTsKIAorICAgIHZpcnR1YWwgYm9vbCBzaG91bGRV
c2VUaWxlZEJhY2tpbmdGb3JGcmFtZShjb25zdCBXZWJDb3JlOjpGcmFtZSYpOworCiAgICAgLy8g
V2ViQ29yZTo6R3JhcGhpY3NMYXllckNsaWVudAogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlBbmlt
YXRpb25TdGFydGVkKGNvbnN0IFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXIqLCBkb3VibGUgdGltZSkg
T1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeUZsdXNoUmVxdWlyZWQoY29uc3QgV2Vi
Q29yZTo6R3JhcGhpY3NMYXllciopIE9WRVJSSURFOwpAQCAtMTQ0LDYgKzE0NCw0IEBAIHByaXZh
dGU6CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCi0jZW5kaWYgLy8gRU5BQkxFKFRIUkVBREVE
X1NDUk9MTElORykKLQogI2VuZGlmIC8vIFRpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhX2gK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvVGlsZWRD
b3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEubW0gYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhLm1tCmluZGV4IGFjNmM0ZDMu
LmQyYjRkZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9t
YWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEubW0KKysrIGIvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYS5tbQpA
QCAtMjYsMTEgKzI2LDggQEAKICNpbXBvcnQgImNvbmZpZy5oIgogI2ltcG9ydCAiVGlsZWRDb3Jl
QW5pbWF0aW9uRHJhd2luZ0FyZWEuaCIKIAotI2lmIEVOQUJMRShUSFJFQURFRF9TQ1JPTExJTkcp
Ci0KICNpbXBvcnQgIkNvbG9yU3BhY2VEYXRhLmgiCiAjaW1wb3J0ICJEcmF3aW5nQXJlYVByb3h5
TWVzc2FnZXMuaCIKLSNpbXBvcnQgIkV2ZW50RGlzcGF0Y2hlci5oIgogI2ltcG9ydCAiTGF5ZXJI
b3N0aW5nQ29udGV4dC5oIgogI2ltcG9ydCAiTGF5ZXJUcmVlQ29udGV4dC5oIgogI2ltcG9ydCAi
V2ViRnJhbWUuaCIKQEAgLTQ1LDEzICs0MiwxNiBAQAogI2ltcG9ydCA8V2ViQ29yZS9HcmFwaGlj
c0xheWVyQ0EuaD4KICNpbXBvcnQgPFdlYkNvcmUvUGFnZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9S
ZW5kZXJWaWV3Lmg+Ci0jaW1wb3J0IDxXZWJDb3JlL1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmg+Ci0j
aW1wb3J0IDxXZWJDb3JlL1Njcm9sbGluZ1RocmVhZC5oPgotI2ltcG9ydCA8V2ViQ29yZS9TY3Jv
bGxpbmdUcmVlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NldHRpbmdzLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1RpbGVkQmFja2luZy5oPgogI2ltcG9ydCA8d3RmL01haW5UaHJlYWQuaD4KIAorI2lmIEVO
QUJMRShUSFJFQURFRF9TQ1JPTExJTkcpCisjaW1wb3J0IDxXZWJDb3JlL1Njcm9sbGluZ0Nvb3Jk
aW5hdG9yLmg+CisjaW1wb3J0IDxXZWJDb3JlL1Njcm9sbGluZ1RocmVhZC5oPgorI2ltcG9ydCA8
V2ViQ29yZS9TY3JvbGxpbmdUcmVlLmg+CisjZW5kaWYKKwogQGludGVyZmFjZSBDQVRyYW5zYWN0
aW9uIChEZXRhaWxzKQogKyAodm9pZClzeW5jaHJvbml6ZTsKIEBlbmQKQEAgLTczLDEyICs3Myw3
IEBAIFRpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhOjpUaWxlZENvcmVBbmltYXRpb25EcmF3
aW5nQXJlYShXZWJQYWdlKiB3ZWJQYWdlLCBjCiAgICAgLCBtX2NsaXBzVG9FeHBvc2VkUmVjdChm
YWxzZSkKICAgICAsIG1fdXBkYXRlSW50cmluc2ljQ29udGVudFNpemVUaW1lcih0aGlzLCAmVGls
ZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OnVwZGF0ZUludHJpbnNpY0NvbnRlbnRTaXplVGlt
ZXJGaXJlZCkKIHsKLSAgICBQYWdlKiBwYWdlID0gbV93ZWJQYWdlLT5jb3JlUGFnZSgpOwotCi0g
ICAgcGFnZS0+c2V0dGluZ3MoKS5zZXRTY3JvbGxpbmdDb29yZGluYXRvckVuYWJsZWQodHJ1ZSk7
Ci0gICAgcGFnZS0+c2V0dGluZ3MoKS5zZXRGb3JjZUNvbXBvc2l0aW5nTW9kZSh0cnVlKTsKLQot
ICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLmV2ZW50RGlzcGF0Y2hlcigpLmFkZFNjcm9sbGluZ1Ry
ZWVGb3JQYWdlKHdlYlBhZ2UpOworICAgIG1fd2ViUGFnZS0+Y29yZVBhZ2UoKS0+c2V0dGluZ3Mo
KS5zZXRGb3JjZUNvbXBvc2l0aW5nTW9kZSh0cnVlKTsKIAogICAgIG1fcm9vdExheWVyID0gW0NB
TGF5ZXIgbGF5ZXJdOwogCkBAIC05Nyw4ICs5Miw2IEBAIFRpbGVkQ29yZUFuaW1hdGlvbkRyYXdp
bmdBcmVhOjpUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYShXZWJQYWdlKiB3ZWJQYWdlLCBj
CiAKIFRpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhOjp+VGlsZWRDb3JlQW5pbWF0aW9uRHJh
d2luZ0FyZWEoKQogewotICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLmV2ZW50RGlzcGF0Y2hlcigp
LnJlbW92ZVNjcm9sbGluZ1RyZWVGb3JQYWdlKG1fd2ViUGFnZSk7Ci0KICAgICBtX2xheWVyRmx1
c2hTY2hlZHVsZXIuaW52YWxpZGF0ZSgpOwogfQogCkBAIC0xOTIsNyArMTg1LDEwIEBAIHZvaWQg
VGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OnNjaGVkdWxlQ29tcG9zaXRpbmdMYXllckZs
dXNoKCkKIAogdm9pZCBUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYTo6ZGlkSW5zdGFsbFBh
Z2VPdmVybGF5KFBhZ2VPdmVybGF5KiBwYWdlT3ZlcmxheSkKIHsKLSAgICBtX3dlYlBhZ2UtPmNv
cmVQYWdlKCktPnNjcm9sbGluZ0Nvb3JkaW5hdG9yKCktPnNldEZvcmNlTWFpblRocmVhZFNjcm9s
bExheWVyUG9zaXRpb25VcGRhdGVzKHRydWUpOworI2lmIEVOQUJMRShUSFJFQURFRF9TQ1JPTExJ
TkcpCisgICAgaWYgKFNjcm9sbGluZ0Nvb3JkaW5hdG9yKiBzY3JvbGxpbmdDb29yZGluYXRvciA9
IG1fd2ViUGFnZS0+Y29yZVBhZ2UoKS0+c2Nyb2xsaW5nQ29vcmRpbmF0b3IoKSkKKyAgICAgICAg
c2Nyb2xsaW5nQ29vcmRpbmF0b3ItPnNldEZvcmNlTWFpblRocmVhZFNjcm9sbExheWVyUG9zaXRp
b25VcGRhdGVzKHRydWUpOworI2VuZGlmCiAKICAgICBjcmVhdGVQYWdlT3ZlcmxheUxheWVyKHBh
Z2VPdmVybGF5KTsKIH0KQEAgLTIwNSw4ICsyMDEsMTIgQEAgdm9pZCBUaWxlZENvcmVBbmltYXRp
b25EcmF3aW5nQXJlYTo6ZGlkVW5pbnN0YWxsUGFnZU92ZXJsYXkoUGFnZU92ZXJsYXkqIHBhZ2VP
dmUKICAgICBpZiAobV9wYWdlT3ZlcmxheUxheWVycy5zaXplKCkpCiAgICAgICAgIHJldHVybjsK
IAotICAgIGlmIChQYWdlKiBwYWdlID0gbV93ZWJQYWdlLT5jb3JlUGFnZSgpKQotICAgICAgICBw
YWdlLT5zY3JvbGxpbmdDb29yZGluYXRvcigpLT5zZXRGb3JjZU1haW5UaHJlYWRTY3JvbGxMYXll
clBvc2l0aW9uVXBkYXRlcyhmYWxzZSk7CisjaWYgRU5BQkxFKFRIUkVBREVEX1NDUk9MTElORykK
KyAgICBpZiAoUGFnZSogcGFnZSA9IG1fd2ViUGFnZS0+Y29yZVBhZ2UoKSkgeworICAgICAgICBp
ZiAoU2Nyb2xsaW5nQ29vcmRpbmF0b3IqIHNjcm9sbGluZ0Nvb3JkaW5hdG9yID0gcGFnZS0+c2Ny
b2xsaW5nQ29vcmRpbmF0b3IoKSkKKyAgICAgICAgICAgIHNjcm9sbGluZ0Nvb3JkaW5hdG9yLT5z
ZXRGb3JjZU1haW5UaHJlYWRTY3JvbGxMYXllclBvc2l0aW9uVXBkYXRlcyhmYWxzZSk7CisgICAg
fQorI2VuZGlmCiB9CiAKIHZvaWQgVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OnNldFBh
Z2VPdmVybGF5TmVlZHNEaXNwbGF5KFBhZ2VPdmVybGF5KiBwYWdlT3ZlcmxheSwgY29uc3QgSW50
UmVjdCYgcmVjdCkKQEAgLTIzOSw4ICsyMzksMTMgQEAgdm9pZCBUaWxlZENvcmVBbmltYXRpb25E
cmF3aW5nQXJlYTo6c2V0UGFnZU92ZXJsYXlPcGFjaXR5KFBhZ2VPdmVybGF5KiBwYWdlT3ZlcmwK
IHZvaWQgVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OnVwZGF0ZVByZWZlcmVuY2VzKGNv
bnN0IFdlYlByZWZlcmVuY2VzU3RvcmUmKQogewogICAgIFNldHRpbmdzJiBzZXR0aW5ncyA9IG1f
d2ViUGFnZS0+Y29yZVBhZ2UoKS0+c2V0dGluZ3MoKTsKLSAgICBib29sIHNjcm9sbGluZ1BlcmZv
cm1hbmNlTG9nZ2luZ0VuYWJsZWQgPSBtX3dlYlBhZ2UtPnNjcm9sbGluZ1BlcmZvcm1hbmNlTG9n
Z2luZ0VuYWJsZWQoKTsKLSAgICBTY3JvbGxpbmdUaHJlYWQ6OmRpc3BhdGNoKGJpbmQoJlNjcm9s
bGluZ1RyZWU6OnNldFNjcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWQsIG1fd2ViUGFn
ZS0+Y29yZVBhZ2UoKS0+c2Nyb2xsaW5nQ29vcmRpbmF0b3IoKS0+c2Nyb2xsaW5nVHJlZSgpLCBz
Y3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkKSk7CisKKyNpZiBFTkFCTEUoVEhSRUFE
RURfU0NST0xMSU5HKQorICAgIGlmIChTY3JvbGxpbmdDb29yZGluYXRvciogc2Nyb2xsaW5nQ29v
cmRpbmF0b3IgPSBtX3dlYlBhZ2UtPmNvcmVQYWdlKCktPnNjcm9sbGluZ0Nvb3JkaW5hdG9yKCkp
IHsKKyAgICAgICAgYm9vbCBzY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkID0gbV93
ZWJQYWdlLT5zY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVkKCk7CisgICAgICAgIFNj
cm9sbGluZ1RocmVhZDo6ZGlzcGF0Y2goYmluZCgmU2Nyb2xsaW5nVHJlZTo6c2V0U2Nyb2xsaW5n
UGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZCwgc2Nyb2xsaW5nQ29vcmRpbmF0b3ItPnNjcm9sbGlu
Z1RyZWUoKSwgc2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZCkpOworICAgIH0KKyNl
bmRpZgogCiAgICAgaWYgKFRpbGVkQmFja2luZyogdGlsZWRCYWNraW5nID0gbWFpbkZyYW1lVGls
ZWRCYWNraW5nKCkpCiAgICAgICAgIHRpbGVkQmFja2luZy0+c2V0QWdncmVzc2l2ZWx5UmV0YWlu
c1RpbGVzKHNldHRpbmdzLmFnZ3Jlc3NpdmVUaWxlUmV0ZW50aW9uRW5hYmxlZCgpKTsKQEAgLTI5
MywxNCArMjk4LDIwIEBAIHZvaWQgVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OnVwZGF0
ZUludHJpbnNpY0NvbnRlbnRTaXplVGltZXJGaXJlZChUaW1lcjxUCiAKIHZvaWQgVGlsZWRDb3Jl
QW5pbWF0aW9uRHJhd2luZ0FyZWE6OmRpc3BhdGNoQWZ0ZXJFbnN1cmluZ1VwZGF0ZWRTY3JvbGxQ
b3NpdGlvbihjb25zdCBGdW5jdGlvbjx2b2lkICgpPiYgZnVuY3Rpb25SZWYpCiB7CisgICAgRnVu
Y3Rpb248dm9pZCAoKT4gZnVuY3Rpb24gPSBmdW5jdGlvblJlZjsKKworI2lmIEVOQUJMRShUSFJF
QURFRF9TQ1JPTExJTkcpCisgICAgaWYgKCFtX3dlYlBhZ2UtPmNvcmVQYWdlKCktPnNjcm9sbGlu
Z0Nvb3JkaW5hdG9yKCkpIHsKKyAgICAgICAgZnVuY3Rpb24oKTsKKyAgICAgICAgcmV0dXJuOwor
ICAgIH0KKwogICAgIG1fd2ViUGFnZS0+cmVmKCk7CiAgICAgbV93ZWJQYWdlLT5jb3JlUGFnZSgp
LT5zY3JvbGxpbmdDb29yZGluYXRvcigpLT5jb21taXRUcmVlU3RhdGVJZk5lZWRlZCgpOwogCiAg
ICAgaWYgKCFtX2xheWVyVHJlZVN0YXRlSXNGcm96ZW4pCiAgICAgICAgIG1fbGF5ZXJGbHVzaFNj
aGVkdWxlci5zdXNwZW5kKCk7CiAKLSAgICBGdW5jdGlvbjx2b2lkICgpPiBmdW5jdGlvbiA9IGZ1
bmN0aW9uUmVmOwotCiAgICAgLy8gSXQgaXMgcG9zc2libGUgZm9yIHRoZSBkcmF3aW5nIGFyZWEg
dG8gYmUgZGVzdHJveWVkIGJlZm9yZSB0aGUgYm91bmQgYmxvY2sKICAgICAvLyBpcyBpbnZva2Vk
LCBzbyBncmFiIGEgcmVmZXJlbmNlIHRvIHRoZSB3ZWIgcGFnZSBoZXJlIHNvIHdlIGNhbiBhY2Nl
c3MgdGhlIGRyYXdpbmcgYXJlYSB0aHJvdWdoIGl0LgogICAgIC8vIChUaGUgd2ViIHBhZ2UgaXMg
YWxyZWFkeSBrZXB0IGFsaXZlIGJ5IGRpc3BhdGNoQWZ0ZXJFbnN1cmluZ1VwZGF0ZWRTY3JvbGxQ
b3NpdGlvbikuCkBAIC0zMTgsNiArMzI5LDkgQEAgdm9pZCBUaWxlZENvcmVBbmltYXRpb25EcmF3
aW5nQXJlYTo6ZGlzcGF0Y2hBZnRlckVuc3VyaW5nVXBkYXRlZFNjcm9sbFBvc2l0aW9uKGMKIAog
ICAgICAgICB3ZWJQYWdlLT5kZXJlZigpOwogICAgIH0pKTsKKyNlbHNlCisgICAgZnVuY3Rpb24o
KTsKKyNlbmRpZgogfQogCiB2b2lkIFRpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhOjpub3Rp
ZnlBbmltYXRpb25TdGFydGVkKGNvbnN0IEdyYXBoaWNzTGF5ZXIqLCBkb3VibGUpCkBAIC02OTAs
NiArNzA0LDkgQEAgdm9pZCBUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYTo6dXBkYXRlRGVi
dWdJbmZvTGF5ZXIoYm9vbCBzaG93TGF5ZXIpCiAgICAgfQogfQogCi19IC8vIG5hbWVzcGFjZSBX
ZWJLaXQKK2Jvb2wgVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OnNob3VsZFVzZVRpbGVk
QmFja2luZ0ZvckZyYW1lKGNvbnN0IEZyYW1lJiBmcmFtZSkKK3sKKyAgICByZXR1cm4gbV93ZWJQ
YWdlLT5jb3JlUGFnZSgpICYmIG1fd2ViUGFnZS0+Y29yZVBhZ2UoKS0+ZnJhbWVJc01haW5GcmFt
ZSgmZnJhbWUpOworfQogCi0jZW5kaWYgLy8gRU5BQkxFKFRIUkVBREVEX1NDUk9MTElORykKK30g
Ly8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMv
Q2hhbmdlTG9nCmluZGV4IDE0ZjAzZTcuLjViMTgyZDEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5n
ZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMy0wOS0yNSAg
VGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKworICAgICAgICBUaWxlZCBk
cmF3aW5nIHNob3VsZCBub3QgaW1wbHkgdGhyZWFkZWQgc2Nyb2xsaW5nCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjE4NzQKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzE1MDcxNDk0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9tYWMvUGxhdGZvcm1XZWJWaWV3TWFjLm1t
OgorICAgICAgICAoV1RSOjpQbGF0Zm9ybVdlYlZpZXc6OlBsYXRmb3JtV2ViVmlldyk6CisgICAg
ICAgIFRoZSBleGlzdGluZyB0aWxlZC1kcmF3aW5nIGxheW91dCB0ZXN0cyByZXF1aXJlIHRocmVh
ZGVkIHNjcm9sbGluZyB0byBiZSBlbmFibGVkLgorCiAyMDEzLTA5LTI0ICBNYXJrIFJvd2UgIDxt
cm93ZUBhcHBsZS5jb20+CiAKICAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzE0OTcxNTE4PiBXZWJL
aXQgc2hvdWxkIGJ1aWxkIGFnYWluc3QgdGhlIFhjb2RlIGRlZmF1bHQgdG9vbGNoYWluIHdoZW4g
dGFyZ2V0aW5nIE9TIFggMTAuOApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9t
YWMvUGxhdGZvcm1XZWJWaWV3TWFjLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9tYWMvUGxh
dGZvcm1XZWJWaWV3TWFjLm1tCmluZGV4IGQ3MTIyMDAuLmJhOGQ3ZjUgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL1BsYXRmb3JtV2ViVmlld01hYy5tbQorKysgYi9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL21hYy9QbGF0Zm9ybVdlYlZpZXdNYWMubW0KQEAgLTI5LDYgKzI5
LDcgQEAKICNpbXBvcnQgIlRlc3RDb250cm9sbGVyLmgiCiAjaW1wb3J0ICJXZWJLaXRUZXN0UnVu
bmVyRHJhZ2dpbmdJbmZvLmgiCiAjaW1wb3J0IDxXZWJLaXQyL1dLSW1hZ2VDRy5oPgorI2ltcG9y
dCA8V2ViS2l0Mi9XS1ByZWZlcmVuY2VzUHJpdmF0ZS5oPgogI2ltcG9ydCA8V2ViS2l0Mi9XS1Zp
ZXdQcml2YXRlLmg+CiAjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+CiAKQEAgLTEzMyw2ICsxMzQs
MTAgQEAgUGxhdGZvcm1XZWJWaWV3OjpQbGF0Zm9ybVdlYlZpZXcoV0tDb250ZXh0UmVmIGNvbnRl
eHRSZWYsIFdLUGFnZUdyb3VwUmVmIHBhZ2VHcm8KICAgICBXS1R5cGVSZWYgdXNlVGlsZWREcmF3
aW5nVmFsdWUgPSBvcHRpb25zID8gV0tEaWN0aW9uYXJ5R2V0SXRlbUZvcktleShvcHRpb25zLCB1
c2VUaWxlZERyYXdpbmdLZXkuZ2V0KCkpIDogTlVMTDsKICAgICBib29sIHVzZVRpbGVkRHJhd2lu
ZyA9IHVzZVRpbGVkRHJhd2luZ1ZhbHVlICYmIFdLQm9vbGVhbkdldFZhbHVlKHN0YXRpY19jYXN0
PFdLQm9vbGVhblJlZj4odXNlVGlsZWREcmF3aW5nVmFsdWUpKTsKIAorICAgIC8vIFRoZSB0aWxl
ZCBkcmF3aW5nIHNwZWNpZmljIHRlc3RzIGFsc28gZGVwZW5kIG9uIHRocmVhZGVkIHNjcm9sbGlu
Zy4KKyAgICBXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzID0gV0tQYWdlR3JvdXBHZXRQcmVm
ZXJlbmNlcyhwYWdlR3JvdXBSZWYpOworICAgIFdLUHJlZmVyZW5jZXNTZXRUaHJlYWRlZFNjcm9s
bGluZ0VuYWJsZWQocHJlZmVyZW5jZXMsIHVzZVRpbGVkRHJhd2luZyk7CisKICAgICBOU1JlY3Qg
cmVjdCA9IE5TTWFrZVJlY3QoMCwgMCwgVGVzdENvbnRyb2xsZXI6OnZpZXdXaWR0aCwgVGVzdENv
bnRyb2xsZXI6OnZpZXdIZWlnaHQpOwogICAgIG1fdmlldyA9IFtbVGVzdFJ1bm5lcldLVmlldyBh
bGxvY10gaW5pdFdpdGhGcmFtZTpyZWN0IGNvbnRleHRSZWY6Y29udGV4dFJlZiBwYWdlR3JvdXBS
ZWY6cGFnZUdyb3VwUmVmIHJlbGF0ZWRUb1BhZ2U6cmVsYXRlZFBhZ2UgdXNlVGlsZWREcmF3aW5n
OnVzZVRpbGVkRHJhd2luZ107CiAgICAgW21fdmlldyBzZXRXaW5kb3dPY2NsdXNpb25EZXRlY3Rp
b25FbmFibGVkOk5PXTsK
</data>
<flag name="review"
          id="234898"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>