<?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>39033</bug_id>
          
          <creation_ts>2010-05-12 16:57:08 -0700</creation_ts>
          <short_desc>Composited plug-ins can cause missed painting</short_desc>
          <delta_ts>2010-05-12 21:55:53 -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>PC</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>224983</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-12 16:57:08 -0700</bug_when>
    <thetext>If you load a page with Flash 10.1 in iframes, and then you bring that tab to the front, we assert and bail from FrameView::paintContents() here:

    ASSERT(!needsLayout());
    if (needsLayout())
        return;

This is because the iframe-compositing code is doing a setNeedsStyleRecalc() on the root frame from inside the -viewWillDraw machinery, but after that root frame has done layout. So by the time it paints, we&apos;ve marked it as needing layout.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>224984</commentid>
    <comment_count>1</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-12 16:57:46 -0700</bug_when>
    <thetext>&lt;rdar://problem/7972478&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>224993</commentid>
    <comment_count>2</comment_count>
      <attachid>55913</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-12 17:17:51 -0700</bug_when>
    <thetext>Created attachment 55913
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225029</commentid>
    <comment_count>3</comment_count>
      <attachid>55923</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-12 18:23:36 -0700</bug_when>
    <thetext>Created attachment 55923
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225030</commentid>
    <comment_count>4</comment_count>
      <attachid>55923</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-05-12 18:25:05 -0700</bug_when>
    <thetext>Comment on attachment 55923
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225081</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-05-12 20:38:38 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/59338</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225111</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-12 21:55:53 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/59338 might have broken Leopard Intel Debug (Tests)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55913</attachid>
            <date>2010-05-12 17:17:51 -0700</date>
            <delta_ts>2010-05-12 18:23:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-39033-20100512171750.patch</filename>
            <type>text/plain</type>
            <size>22001</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0YWRkMTA0NWY4YThhMmQxZTQ1ZjdhYTc2NjFiMjIzNDhkNzUyNWY4Li5kMDI4MWZk
NDQ1ZDA5OTRlN2Q5MDliYTY0NGYzZjM1YmIyMDllY2NmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAK
KzIwMTAtMDUtMTIgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29tcG9zaXRlZCBw
bHVnLWlucyBjYW4gY2F1c2UgbWlzc2VkIHBhaW50aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTAzMworICAgICAgICA8cmRhcjovL3Byb2JsZW0v
Nzk3MjQ3OD4KKyAgICAgICAgCisgICAgICAgIE5ldyB0ZXN0Y2FzZXMsIG9uZSB3aGljaCByZW1v
dmVzIHRoZSBjb250ZW50cyBvZiBhIGNvbXBvc2l0ZWQgaWZyYW1lLCBhbmQgY2hlY2tzIHRoYXQK
KyAgICAgICAgYWxsIGxheWVycyBnbyBhd2F5LCBhbmQgYW5vdGhlciB0aGF0IGhhcyBhIGNvbXBv
c2l0ZWQgaWZyYW1lLCB0aGVuIHRvZ2dsZXMgdGhlIHBhcmVudAorICAgICAgICBkb2N1bWVudCBp
bnRvIGNvbXBvc2l0aW5nIG1vZGUsIHRvIGNoZWNrIHRoYXQgdGhlIGxheWVyIHRyZWVzIGdldCBj
b25uZWN0ZWQuCisKKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2Nvbm5lY3QtY29tcG9z
aXRpbmctaWZyYW1lLWRlbGF5ZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBjb21w
b3NpdGluZy9pZnJhbWVzL2Nvbm5lY3QtY29tcG9zaXRpbmctaWZyYW1lLWRlbGF5ZWQuaHRtbDog
QWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9pZnJhbWUtc3JjLWNoYW5nZS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvaWZyYW1l
LXNyYy1jaGFuZ2UuaHRtbDogQWRkZWQuCisKIDIwMTAtMDUtMTEgIFNpbW9uIEZyYXNlciAgPHNp
bW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTWFjaWVqIFN0YWNo
b3dpYWsuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2Nvbm5l
Y3QtY29tcG9zaXRpbmctaWZyYW1lLWRlbGF5ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
Y29tcG9zaXRpbmcvaWZyYW1lcy9jb25uZWN0LWNvbXBvc2l0aW5nLWlmcmFtZS1kZWxheWVkLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kMWY0MjM5Yjg1MTQ3MTI5ZmE5ZDQ2MzE2MWQxYTMzN2Ji
YmYwMTBjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1l
cy9jb25uZWN0LWNvbXBvc2l0aW5nLWlmcmFtZS1kZWxheWVkLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDEyMCBAQAorCitXaGVuIHRoZSBwYXJlbnQgZG9jdW1lbnQgYmVjb21lcyBjb21wb3NpdGVk
LCB0aGUgbGF5ZXIgdHJlZXMgc2hvdWxkIGdldCBjb25uZWN0ZWQgdG9nZXRoZXIuCisKKyhHcmFw
aGljc0xheWVyCisgIChwb3NpdGlvbiAwLjAwIDAuMDApCisgIChhbmNob3IgMC41MCAwLjUwKQor
ICAoYm91bmRzIDgwMC4wMCA2MDAuMDApCisgIChvcGFjaXR5IDEuMDApCisgICh1c2luZ1RpbGVk
TGF5ZXIgMCkKKyAgKHByZXNlcnZlczNEIDApCisgIChkcmF3c0NvbnRlbnQgMCkKKyAgKGJhY2tm
YWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICh0cmFu
c2Zvcm0gaWRlbnRpdHkpCisgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgKGNoaWxk
cmVuIDEKKyAgICAoR3JhcGhpY3NMYXllcgorICAgICAgKHBvc2l0aW9uIDAuMDAgMC4wMCkKKyAg
ICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgKGJvdW5kcyA4MDAuMDAgNjAwLjAwKQorICAg
ICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgIChwcmVz
ZXJ2ZXMzRCAwKQorICAgICAgKGRyYXdzQ29udGVudCAwKQorICAgICAgKGJhY2tmYWNlVmlzaWJp
bGl0eSB2aXNpYmxlKQorICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgKHRyYW5z
Zm9ybSBpZGVudGl0eSkKKyAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAg
IChjaGlsZHJlbiAyCisgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgKHBvc2l0aW9u
IDguMDAgMTA4LjAwKQorICAgICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAgIChi
b3VuZHMgMzcwLjAwIDIyMC4wMCkKKyAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAg
ICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAg
ICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxl
KQorICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAodHJhbnNmb3Jt
IGlkZW50aXR5KQorICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAg
ICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAg
ICAgKHBvc2l0aW9uIDM1LjAwIDM1LjAwKQorICAgICAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41
MCkKKyAgICAgICAgICAgICAgKGJvdW5kcyAzMDAuMDAgMTUwLjAwKQorICAgICAgICAgICAgICAo
b3BhY2l0eSAxLjAwKQorICAgICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAg
ICAgICAgIChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAoZHJhd3NDb250ZW50IDApCisg
ICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAgICAg
KGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5
KQorICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAg
ICAgIChjaGlsZHJlbiAxCisgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAg
ICAgICAgICAgIChwb3NpdGlvbiAwLjAwIDAuMDApCisgICAgICAgICAgICAgICAgICAoYW5jaG9y
IDAuNTAgMC41MCkKKyAgICAgICAgICAgICAgICAgIChib3VuZHMgMjg1LjAwIDIzMC4wMCkKKyAg
ICAgICAgICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAgICAgICAodXNpbmdU
aWxlZExheWVyIDApCisgICAgICAgICAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAg
ICAgICAgICAgIChkcmF3c0NvbnRlbnQgMCkKKyAgICAgICAgICAgICAgICAgIChiYWNrZmFjZVZp
c2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAgICAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9u
ZSkKKyAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAg
ICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAoY2hp
bGRyZW4gMQorICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAg
ICAgICAgICAgIChwb3NpdGlvbiAwLjAwIDAuMDApCisgICAgICAgICAgICAgICAgICAgICAgKGFu
Y2hvciAwLjUwIDAuNTApCisgICAgICAgICAgICAgICAgICAgICAgKGJvdW5kcyAyODUuMDAgMjMw
LjAwKQorICAgICAgICAgICAgICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAgICAgICAgICAg
ICAgICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgICAgICAgICAgICAgICAgIChwcmVz
ZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkKKyAgICAg
ICAgICAgICAgICAgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAgICAg
ICAgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAgICAgICAgICAgICAgICAgICAg
ICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuVHJh
bnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlbiAxCisgICAg
ICAgICAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAocG9zaXRpb24gMTguMDAgMTAuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChh
bmNob3IgMC41MCAwLjUwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAoYm91bmRzIDIxMC4w
MCAyMTAuMDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChvcGFjaXR5IDEuMDApCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAgICAgICAgICAgICAgICAgIChk
cmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGJhY2tmYWNlVmlzaWJp
bGl0eSB2aXNpYmxlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAoYmFja2dyb3VuZENvbG9y
IG5vbmUpCisgICAgICAgICAgICAgICAgICAgICAgICAgICh0cmFuc2Zvcm0gaWRlbnRpdHkpCisg
ICAgICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAg
ICAgICAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICAgICApCisgICAgICAg
ICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICApCisg
ICAgICAgICAgICAgICkKKyAgICAgICAgICAgICkKKyAgICAgICAgICApCisgICAgICAgICkKKyAg
ICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAocG9zaXRpb24gOC4wMCA4LjAwKQorICAg
ICAgICAgIChhbmNob3IgMC41MCAwLjUwKQorICAgICAgICAgIChib3VuZHMgMTAwLjAwIDEwMC4w
MCkKKyAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICh1c2luZ1RpbGVkTGF5ZXIg
MCkKKyAgICAgICAgICAocHJlc2VydmVzM0QgMCkKKyAgICAgICAgICAoZHJhd3NDb250ZW50IDEp
CisgICAgICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgIChiYWNr
Z3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAg
ICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgKQorICAgICAgKQorICAg
ICkKKyAgKQorKQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVz
L2Nvbm5lY3QtY29tcG9zaXRpbmctaWZyYW1lLWRlbGF5ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Nv
bXBvc2l0aW5nL2lmcmFtZXMvY29ubmVjdC1jb21wb3NpdGluZy1pZnJhbWUtZGVsYXllZC5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjY3YjJlMmNjMjdhNGZjMTllNzhmMjkyYzg0N2RkZGU2MzM0NjhhYmYKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2Nvbm5lY3Qt
Y29tcG9zaXRpbmctaWZyYW1lLWRlbGF5ZWQuaHRtbApAQCAtMCwwICsxLDU5IEBACis8IURPQ1RZ
UEUgaHRtbD4KKworPGh0bWw+Cis8aGVhZD4KKyAgPHN0eWxlIHR5cGU9InRleHQvY3NzIiBtZWRp
YT0ic2NyZWVuIj4KKyAgICBpZnJhbWUgeworICAgICAgICBib3JkZXI6IDEwcHggc29saWQgYmxh
Y2s7CisgICAgICAgIHBhZGRpbmc6IDVweDsKKyAgICAgICAgbWFyZ2luOiAyMHB4OworICAgICAg
ICBoZWlnaHQ6IDE1MHB4OworICAgICAgICB3aWR0aDogMzAwcHg7CisgICAgICAgIC13ZWJraXQt
Ym94LXNoYWRvdzogMCAwIDIwcHggYmxhY2s7CisgICAgfQorICAgIAorICAgICNib3ggeworICAg
ICAgaGVpZ2h0OiAxMDBweDsKKyAgICAgIHdpZHRoOiAxMDBweDsKKyAgICAgIGJhY2tncm91bmQt
Y29sb3I6IGJsdWU7CisgICAgfQorICAgIAorICAgIC5jb21wb3NpdGVkIHsKKyAgICAgIC13ZWJr
aXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOworICAgIH0KKyAgICAKKyAgPC9zdHlsZT4KKyAg
PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICBpZiAo
d2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgIGxheW91dFRlc3RDb250cm9s
bGVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGls
RG9uZSgpOworICAgIH0KKworICAgIGZ1bmN0aW9uIGRvVGVzdCgpCisgICAgeworICAgICAgLy8g
V2FpdCBmb3IgYSBsYXllciB1cGRhdGUuCisgICAgICB3aW5kb3cuc2V0VGltZW91dChmdW5jdGlv
bigpIHsKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2JveCcpLmNsYXNzTmFtZSA9
ICdjb21wb3NpdGVkJzsKKyAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKSB7Cisg
ICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xheWVycycpLmlubmVyVGV4dCA9IGxheW91dFRlc3RD
b250cm9sbGVyLmxheWVyVHJlZUFzVGV4dCgpOworICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIubm90aWZ5RG9uZSgpOworICAgICAgICAgIH0KKyAgICAgICAgfSwgMCk7CisgICAgICB9
LCAwKTsKKyAgICB9CisgICAgCisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBk
b1Rlc3QsIGZhbHNlKTsKKyAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworICAgIDxkaXYg
aWQ9ImJveCI+PC9kaXY+CisKKyAgICA8IS0tIFRlc3Qgd2l0aCBhbHJlYWR5LWNvbXBvc2l0ZWQg
aWZyYW1lIGNvbnRlbnRzLCBhbmQgaWZyYW1lIGl0c2VsZiBjb21wb3NpdGVkLiAtLT4KKyAgICA8
aWZyYW1lIGlkPSJpZnJhbWUiIHNyYz0icmVzb3VyY2VzL2NvbXBvc2l0ZWQtc3ViZnJhbWUuaHRt
bCI+PC9pZnJhbWU+CisgICAgCisgICAgPHA+V2hlbiB0aGUgcGFyZW50IGRvY3VtZW50IGJlY29t
ZXMgY29tcG9zaXRlZCwgdGhlIGxheWVyIHRyZWVzIHNob3VsZCBnZXQgY29ubmVjdGVkIHRvZ2V0
aGVyLjwvcD4KKyAgICA8cHJlIGlkPSJsYXllcnMiPkxheWVyIHRyZWUgYXBwZWFycyBoZXJlIGlu
IERSVC48L3ByZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nv
bXBvc2l0aW5nL2lmcmFtZXMvaWZyYW1lLXNyYy1jaGFuZ2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pZnJhbWUtc3JjLWNoYW5nZS1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uOTFjY2UzOTg4MWZhNzYwNzk1NWVhMTAzY2Q3OGI4NjZiMTkzMjU5MAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaWZyYW1lLXNy
Yy1jaGFuZ2UtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNCBAQAorCitUaGUgaWZyYW1lIGNvbnRl
bnQgd2FzIHJlbW92ZWQuIFRoZXJlIHNob3VsZCBiZSBubyBsYXllcnMgaGVyZS4KKworCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2lmcmFtZS1zcmMtY2hhbmdl
Lmh0bWwgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2lmcmFtZS1zcmMtY2hhbmdl
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uZTdhZDQ0ODkzNjI3MmZlMTkwNzk0MDgyOTcwM2I3YThlMjA5YWU1
OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvaWZy
YW1lLXNyYy1jaGFuZ2UuaHRtbApAQCAtMCwwICsxLDU4IEBACis8IURPQ1RZUEUgaHRtbD4KKwor
PGh0bWw+Cis8aGVhZD4KKyAgPHN0eWxlIHR5cGU9InRleHQvY3NzIiBtZWRpYT0ic2NyZWVuIj4K
KyAgICBpZnJhbWUgeworICAgICAgICBib3JkZXI6IDEwcHggc29saWQgYmxhY2s7CisgICAgICAg
IHBhZGRpbmc6IDVweDsKKyAgICAgICAgbWFyZ2luOiAyMHB4OworICAgICAgICBoZWlnaHQ6IDE1
MHB4OworICAgICAgICB3aWR0aDogMzAwcHg7CisgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzog
MCAwIDIwcHggYmxhY2s7CisgICAgfQorICAgIAorICAgIC5vdmVybGF5IHsKKyAgICAgIHBvc2l0
aW9uOiBhYnNvbHV0ZTsKKyAgICAgIHdpZHRoOiA1MHB4OworICAgICAgaGVpZ2h0OiA1MHB4Owor
ICAgICAgdG9wOiA1cHg7CisgICAgICBsZWZ0OiA1cHg7CisgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiByZ2JhKDAsIDAsIDAsIDAuMik7CisgICAgfQorICAgIAorICA8L3N0eWxlPgorICA8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiPgorICAgIGlmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVt
cEFzVGV4dCgpOworICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7
CisgICAgfQorCisgICAgZnVuY3Rpb24gZG9UZXN0KCkKKyAgICB7CisgICAgICAvLyBXYWl0IGZv
ciBhIGxheWVyIHVwZGF0ZS4KKyAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewor
ICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncGFyZW50LWlmcmFtZScpLnNyYyA9ICJh
Ym91dDpibGFuayI7CisgICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAg
ICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCdsYXllcnMnKS5pbm5lckhUTUwgPSBsYXlvdXRUZXN0Q29u
dHJvbGxlci5sYXllclRyZWVBc1RleHQoKTsKKyAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9s
bGVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgICB9CisgICAgICAgIH0sIDApOworICAgICAgfSwg
MCk7CisgICAgfQorICAgIAorICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZG9U
ZXN0LCBmYWxzZSk7CisgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisKKyAgICA8aWZyYW1l
IGlkPSJwYXJlbnQtaWZyYW1lIiBzcmM9InJlc291cmNlcy9jb21wb3NpdGVkLXN1YmZyYW1lLmh0
bWwiPjwvaWZyYW1lPgorICAgIAorICAgIDxkaXYgY2xhc3M9Im92ZXJsYXkiPgorICAgIDwvZGl2
PgorCisgICAgPHA+VGhlIGlmcmFtZSBjb250ZW50IHdhcyByZW1vdmVkLiBUaGVyZSBzaG91bGQg
YmUgbm8gbGF5ZXJzIGhlcmUuPC9wPgorICAgIDxwcmUgaWQ9ImxheWVycyI+TGF5ZXIgdHJlZSBh
cHBlYXJzIGhlcmUgaW4gRFJULjwvcHJlPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA0YTdiYzIxZjFkOTYx
NWYyNDM3ODY3MjBhMjc5ZWJiMGRiNTM0YTIwLi41MWY5MTM1MzIwYjZhOTVhMzA5YjdmNzkwZWYy
ODY5YzE0NDg0YWM3IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3Jl
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDEwLTA1LTEyICBTaW1vbiBGcmFzZXIgIDxz
aW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIENvbXBvc2l0ZWQgcGx1Zy1pbnMgY2FuIGNhdXNlIG1pc3NlZCBwYWlu
dGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzkw
MzMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc5NzI0Nzg+CisKKyAgICAgICAgRml4ZWQgbWlz
c2VkIHBhaW50aW5nIChhbmQgYXNzZXJ0aW9ucyBpbiBkZWJ1ZyBidWlsZHMpIHJlbGF0ZWQgdG8g
Y29tcG9zaXRpbmcKKyAgICAgICAgcHJvcGFnYXRpbmcgb3V0IG9mIGlmcmFtZXMgdGhhdCBjb250
YWluIHBsdWctaW5zLgorICAgICAgICAKKyAgICAgICAgV2hlbiBhbiBpZnJhbWUgZW50ZXJzIG9y
IGxlYXZlcyBjb21wb3NpdGluZyBtb2RlLCBSZW5kZXJMYXllckNvbXBvc2l0b3IgdXNlcworICAg
ICAgICBzZXROZWVkc1N0eWxlUmVjYWxjKFN5bnRoZXRpY1N0eWxlQ2hhbmdlKSB0byB0cmlnZ2Vy
IHRoZSBwYXJlbnQgZG9jdW1lbnQgdG8gcmUtZXZhbHVhdGUKKyAgICAgICAgd2hldGhlciB0aGUg
aWZyYW1lIGl0c2VsZiBzaG91bGQgYmUgY29tcG9zaXRlZC4gSG93ZXZlciwgZm9yIGlmcmFtZXMg
Y29udGFpbmluZyBwbHVnLWlucywKKyAgICAgICAgdGhpcyBjYW4gaGFwcGVuIGF0IGluYXBwcm9w
cmlhdGUgdGltZXMuIEZvciBleGFtcGxlLCB3aGVuIGEgYnJvd3NlciB0YWIgaXMgYnJvdWdodCBm
cm9udG1vc3QsCisgICAgICAgIHBsdWctaW5zIGFyZSBpbnN0YW50aWF0ZWQgZm9yIHRoZSBmaXJz
dCB0aW1lICh2aWEgLXZpZXdEaWRNb3ZlVG9XaW5kb3cpLCB3aGljaCB0cmlnZ2VycyBhIAorICAg
ICAgICBzZXROZWVkc1N0eWxlUmVjYWxjKCkgb24gdGhlIG9iamVjdCBlbGVtZW50LiBTb29uIGFm
dGVyLCB0aGUgLXZpZXdXaWxsRHJhdyBtYWNoaW5lcnkKKyAgICAgICAgZG9lcyBsYXlvdXQgZnJv
bSB0aGUgdG9wIGRvd24uIER1cmluZyBsYXlvdXQgb2YgdGhlIGlmcmFtZSwgdGhlIGlmcmFtZSBl
bnRlcnMgY29tcG9zaXRpbmcgbW9kZSwKKyAgICAgICAgYW5kIGRvZXMgYSBzZXROZWVkc1N0eWxl
UmVjYWxjKCkgb24gdGhlIGlmcmFtZSBlbGVtZW50IGluIGl0cyBwYXJlbnQgZG9jdW1lbnQuIFRo
aXMgbGVhdmVzIHRoZQorICAgICAgICBGcmFtZVZpZXcgYXMgbmVlZHNMYXlvdXQoKSwgc28gdGhl
IEZyYW1lVmlldzo6cGFpbnRDb250ZW50cygpIGFzc2VydHMgYW5kIGJhaWxzLgorICAgICAgICAK
KyAgICAgICAgVGhlIGZpeCBpcyB0byBhdm9pZCBkb2luZyBhIHNldE5lZWRzU3R5bGVSZWNhbGMo
KSBvbiB0aGUgcm9vdCB3aGlsZSBpbnNpZGUgYSByZWNhbGNTdHlsZSBvbgorICAgICAgICB0aGUg
aWZyYW1lLiBXZSBkbyB0aGlzIGJ5IHN3aXRjaGluZyB0aGUgaWZyYW1lIGludG8gY29tcG9zaXRp
bmcgbW9kZSBlYWdlcmx5IGFzIHNvb24gYXMgd2Uga25vdworICAgICAgICB0aGUgcGx1Zy1pbiBu
ZWVkcyBpdC4KKyAgICAgICAgCisgICAgICAgIEEgc2Vjb25kYXJ5IGZpeCBpcyB0byBlbnN1cmUg
dGhhdCBpZiBhIGRvY3VtZW50IGhhcyBjb21wb3NpdGVkIGlmcmFtZXMsIHdoZW4gdGhhdCBkb2N1
bWVudCBiZWNvbWVzCisgICAgICAgIGNvbXBvc2l0ZWQsIHdlIGNvbm5lY3QgY29tcG9zaXRpbmcg
bGF5ZXJzIGJldHdlZW4gdGhlIGlmcmFtZXMgYW5kIHRoZSBwYXJlbnQgZG9jdW1lbnQuCisKKyAg
ICAgICAgVGVzdHM6IGNvbXBvc2l0aW5nL2lmcmFtZXMvY29ubmVjdC1jb21wb3NpdGluZy1pZnJh
bWUtZGVsYXllZC5odG1sCisgICAgICAgICAgICAgICBjb21wb3NpdGluZy9pZnJhbWVzL2lmcmFt
ZS1zcmMtY2hhbmdlLmh0bWwKKworICAgICAgICAqIFdlYkNvcmUuYmFzZS5leHA6IEV4cG9ydCBG
cmFtZVZpZXc6OmVudGVyQ29tcG9zaXRpbmdNb2RlKCkKKworICAgICAgICAqIHBhZ2UvRnJhbWVW
aWV3Lmg6IE5ldyBtZXRob2QsIGVudGVyQ29tcG9zaXRpbmdNb2RlKCksIHRoYXQgd2UgY2FuIGNh
bGwgZnJvbSBXZWJLaXQgcGx1Zy1pbiBjb2RlLgorICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmlldzo6ZW50ZXJDb21wb3NpdGluZ01vZGUpOgor
CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5oOgorICAgICAgICAq
IHJlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjplbmFibGVDb21wb3NpdGluZ01vZGUpOiBXaGVuIHdlIHN3
aXRjaCBpbnRvIGNvbXBvc2l0aW5nIG1vZGUsIHdlCisgICAgICAgICAgICBmb3JjZSBhIHN0eWxl
IHJlY2FjbGMgb24gYW55IGlmcmFtZXMgdG8gZ2V0IHRoZW0gaW50byBjb21wb3NpdGluZyBsYXll
cnMsIHNvIHRoZXkgY2FuIGhvb2sgdXAKKyAgICAgICAgICAgIHdpdGggdGhlaXIgY29udGVudCBs
YXllcnMgaWYgbmVjZXNzYXJ5LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3Np
dG9yOjpkaWRNb3ZlT25zY3JlZW4pOiBPbmx5IGNhbGwgYXR0YWNoUm9vdFBsYXRmb3JtTGF5ZXIo
KSBpZiB3ZSByZWFsbHkgbmVlZCB0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQ29t
cG9zaXRvcjo6d2lsbE1vdmVPZmZzY3JlZW4pOiBPbmx5IGNhbGwgZGV0YWNoUm9vdFBsYXRmb3Jt
TGF5ZXIoKSBpZiB3ZSByZWFsbHkgbmVlZCB0by4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxh
eWVyQ29tcG9zaXRvcjo6ZGV0YWNoUm9vdFBsYXRmb3JtTGF5ZXIpOiBXaGl0ZXNwYWNlLgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpub3RpZnlJRnJhbWVzT2ZDb21w
b3NpdGluZ0NoYW5nZSk6IEZldGNoIGlmcmFtZSBlbGVtZW50cywgYW5kIHNlbmQgYSAKKyAgICAg
ICAgICAgIHN5bnRoZXRpYyBzdHlsZSByZWNhbGMgb24gdGhlbS4KKwogMjAxMC0wNS0xMSAgU2lt
b24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBNYWNpZWogU3RhY2hvd2lhay4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5iYXNlLmV4
cCBiL1dlYkNvcmUvV2ViQ29yZS5iYXNlLmV4cAppbmRleCBmN2Y4NDgwZmM5YTc3NDcwNTdjN2M5
MjI1ZDgwNzRkOGI2ZDQ3N2RmLi42ODQxOWQ2MzViZGE4ZTBmNTkzMjI1NzkyMDVmM2VlZWRiNGU2
MTA0IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAKKysrIGIvV2ViQ29yZS9X
ZWJDb3JlLmJhc2UuZXhwCkBAIC03MjIsNiArNzIyLDcgQEAgX19aTjdXZWJDb3JlOUZyYW1lVmll
dzIzdXBkYXRlQ2FuSGF2ZVNjcm9sbGJhcnNFdgogX19aTjdXZWJDb3JlOUZyYW1lVmlldzI5Zm9y
Y2VMYXlvdXRXaXRoUGFnZVdpZHRoUmFuZ2VFZmZiCiBfX1pON1dlYkNvcmU5RnJhbWVWaWV3Mjlz
ZXRTaG91bGRVcGRhdGVXaGlsZU9mZnNjcmVlbkViCiBfX1pON1dlYkNvcmU5RnJhbWVWaWV3Mjlz
eW5jQ29tcG9zaXRpbmdTdGF0ZVJlY3Vyc2l2ZUV2CitfX1pON1dlYkNvcmU5RnJhbWVWaWV3MjBl
bnRlckNvbXBvc2l0aW5nTW9kZUV2CiBfX1pON1dlYkNvcmU5RnJhbWVWaWV3NmNyZWF0ZUVQTlNf
NUZyYW1lRQogX19aTjdXZWJDb3JlOUZyYW1lVmlldzZjcmVhdGVFUE5TXzVGcmFtZUVSS05TXzdJ
bnRTaXplRQogX19aTjdXZWJDb3JlOUhUTUxOYW1lczEwbGlzdGluZ1RhZ0UKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAK
aW5kZXggM2YzNDI2MTA3OWI5ZTVkYjY3NGY0MDk4ZjdhZTFmMWY3MTQxZDQ0Yy4uNDU3YjAwNDdi
ZTdhMWRjY2FhMmQ1OGJkM2MwOTJjZDAyYmFmMjdlNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdl
L0ZyYW1lVmlldy5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKQEAgLTQ4Nyw2
ICs0ODcsMTUgQEAgYm9vbCBGcmFtZVZpZXc6Omhhc0NvbXBvc2l0ZWRDb250ZW50KCkgY29uc3QK
ICAgICByZXR1cm4gZmFsc2U7CiB9CiAKKy8vIFNvbWV0aW1lcyAoZm9yIHBsdWctaW5zKSB3ZSBu
ZWVkIHRvIGVhZ2VybHkgZ28gaW50byBjb21wb3NpdGluZyBtb2RlLgordm9pZCBGcmFtZVZpZXc6
OmVudGVyQ29tcG9zaXRpbmdNb2RlKCkKK3sKKyNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJ
TkcpCisgICAgaWYgKFJlbmRlclZpZXcqIHZpZXcgPSBtX2ZyYW1lLT5jb250ZW50UmVuZGVyZXIo
KSkKKyAgICAgICAgcmV0dXJuIHZpZXctPmNvbXBvc2l0b3IoKS0+ZW5hYmxlQ29tcG9zaXRpbmdN
b2RlKCk7CisjZW5kaWYKK30KKwogYm9vbCBGcmFtZVZpZXc6OmlzRW5jbG9zZWRJbkNvbXBvc2l0
aW5nTGF5ZXIoKSBjb25zdAogewogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaCBiL1dlYkNvcmUvcGFnZS9GcmFtZVZp
ZXcuaAppbmRleCBmNmRmYjFkZjAxMDU1MGFkY2UxNjBhNzg5NmM4NTE0YTNjYTAwMGViLi42YmQx
YzIxOTE2MDg3ZDZjNzFkMjAyYzQ1M2QwZjI3ZDU3YzAxZWE3IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L3BhZ2UvRnJhbWVWaWV3LmgKKysrIGIvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCkBAIC0xMDYs
NiArMTA2LDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAgICBib29sIGhhc0NvbXBvc2l0ZWRDb250
ZW50KCkgY29uc3Q7CisgICAgdm9pZCBlbnRlckNvbXBvc2l0aW5nTW9kZSgpOwogICAgIGJvb2wg
aXNFbmNsb3NlZEluQ29tcG9zaXRpbmdMYXllcigpIGNvbnN0OwogCiAgICAgLy8gT25seSB1c2Vk
IHdpdGggYWNjZWxlcmF0ZWQgY29tcG9zaXRpbmcsIGJ1dCBvdXRzaWRlIHRoZSAjaWZkZWYgdG8g
bWFrZSBsaW5rYWdlIGVhc2llci4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckxheWVyQ29tcG9zaXRvci5jcHAgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBv
c2l0b3IuY3BwCmluZGV4IDJlYzBkNDUwNmE5ZjY4NGIzNWZjMWE0ZDA4NTg0ZTA2YzVlZmI0MTEu
LmRhNjg1M2ZlM2EwZGJhMWIxZWJjNzE5OGUzNGJmYzNlMGE2ZWM2NTYgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAKKysrIGIvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcApAQCAtNDIsNiArNDIsNyBAQAogI2lu
Y2x1ZGUgIkhUTUxNZWRpYUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNlbmRp
ZgorI2luY2x1ZGUgIk5vZGVMaXN0LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlJl
bmRlckVtYmVkZGVkT2JqZWN0LmgiCiAjaW5jbHVkZSAiUmVuZGVySUZyYW1lLmgiCkBAIC0xMTEs
MTIgKzExMiwxMCBAQCB2b2lkIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6ZW5hYmxlQ29tcG9zaXRp
bmdNb2RlKGJvb2wgZW5hYmxlIC8qID0gdHJ1ZSAqLykKICAgICBpZiAoZW5hYmxlICE9IG1fY29t
cG9zaXRpbmcpIHsKICAgICAgICAgbV9jb21wb3NpdGluZyA9IGVuYWJsZTsKICAgICAgICAgCi0g
ICAgICAgIC8vIFdlIG5ldmVyIGdvIG91dCBvZiBjb21wb3NpdGluZyBtb2RlIGZvciBhIGdpdmVu
IHBhZ2UsCi0gICAgICAgIC8vIGJ1dCBpZiBhbGwgdGhlIGxheWVycyBkaXNhcHBlYXIsIHdlJ2xs
IGp1c3QgYmUgbGVmdCB3aXRoCi0gICAgICAgIC8vIHRoZSBlbXB0eSByb290IGxheWVyLCB3aGlj
aCBoYXMgbWluaW1hbCBvdmVyaGVhZC4KLSAgICAgICAgaWYgKG1fY29tcG9zaXRpbmcpCisgICAg
ICAgIGlmIChtX2NvbXBvc2l0aW5nKSB7CiAgICAgICAgICAgICBlbnN1cmVSb290UGxhdGZvcm1M
YXllcigpOwotICAgICAgICBlbHNlCisgICAgICAgICAgICBub3RpZnlJRnJhbWVzT2ZDb21wb3Np
dGluZ0NoYW5nZSgpOworICAgICAgICB9IGVsc2UKICAgICAgICAgICAgIGRlc3Ryb3lSb290UGxh
dGZvcm1MYXllcigpOwogICAgIH0KIH0KQEAgLTk3MSwxMiArOTcwLDE4IEBAIEdyYXBoaWNzTGF5
ZXIqIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6cm9vdFBsYXRmb3JtTGF5ZXIoKSBjb25zdAogCiB2
b2lkIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6ZGlkTW92ZU9uc2NyZWVuKCkKIHsKKyAgICBpZiAo
IWluQ29tcG9zaXRpbmdNb2RlKCkgfHwgbV9yb290TGF5ZXJBdHRhY2htZW50ICE9IFJvb3RMYXll
clVuYXR0YWNoZWQpCisgICAgICAgIHJldHVybjsKKwogICAgIFJvb3RMYXllckF0dGFjaG1lbnQg
YXR0YWNobWVudCA9IHNob3VsZFByb3BhZ2F0ZUNvbXBvc2l0aW5nVG9FbmNsb3NpbmdJRnJhbWUo
KSA/IFJvb3RMYXllckF0dGFjaGVkVmlhRW5jbG9zaW5nSWZyYW1lIDogUm9vdExheWVyQXR0YWNo
ZWRWaWFDaHJvbWVDbGllbnQ7CiAgICAgYXR0YWNoUm9vdFBsYXRmb3JtTGF5ZXIoYXR0YWNobWVu
dCk7CiB9CiAKIHZvaWQgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp3aWxsTW92ZU9mZnNjcmVlbigp
CiB7CisgICAgaWYgKCFpbkNvbXBvc2l0aW5nTW9kZSgpIHx8IG1fcm9vdExheWVyQXR0YWNobWVu
dCA9PSBSb290TGF5ZXJVbmF0dGFjaGVkKQorICAgICAgICByZXR1cm47CisKICAgICBkZXRhY2hS
b290UGxhdGZvcm1MYXllcigpOwogfQogCkBAIC0xMzEwLDYgKzEzMTUsNyBAQCB2b2lkIFJlbmRl
ckxheWVyQ29tcG9zaXRvcjo6ZGV0YWNoUm9vdFBsYXRmb3JtTGF5ZXIoKQogICAgICAgICAgICAg
ICAgIG1fY2xpcHBpbmdMYXllci0+cmVtb3ZlRnJvbVBhcmVudCgpOwogICAgICAgICAgICAgZWxz
ZQogICAgICAgICAgICAgICAgIG1fcm9vdFBsYXRmb3JtTGF5ZXItPnJlbW92ZUZyb21QYXJlbnQo
KTsKKwogICAgICAgICAgICAgbV9yZW5kZXJWaWV3LT5kb2N1bWVudCgpLT5vd25lckVsZW1lbnQo
KS0+c2V0TmVlZHNTdHlsZVJlY2FsYyhTeW50aGV0aWNTdHlsZUNoYW5nZSk7CiAgICAgICAgICAg
ICBicmVhazsKICAgICAgICAgfQpAQCAtMTM0NCw2ICsxMzUwLDE3IEBAIHZvaWQgUmVuZGVyTGF5
ZXJDb21wb3NpdG9yOjpyb290TGF5ZXJBdHRhY2htZW50Q2hhbmdlZCgpCiAgICAgICAgIGJhY2tp
bmctPnVwZGF0ZURyYXdzQ29udGVudCgpOwogfQogCisvLyBJRnJhbWVzIGFyZSBzcGVjaWFsLCBi
ZWNhdXNlIHdlIGhvb2sgY29tcG9zaXRpbmcgbGF5ZXJzIHRvZ2V0aGVyIGFjcm9zcyBpZnJhbWUg
Ym91bmRhcmllcworLy8gd2hlbiBib3RoIHBhcmVudCBhbmQgaWZyYW1lIGNvbnRlbnQgYXJlIGNv
bXBvc2l0ZWQuIFNvIHdoZW4gdGhpcyBmcmFtZSBiZWNvbWVzIGNvbXBvc2l0ZWQsIHdlIGhhdmUK
Ky8vIHRvIHVzZSBhIHN5bnRoZXRpYyBzdHlsZSBjaGFuZ2UgdG8gZ2V0IHRoZSBpZnJhbWVzIGlu
dG8gUmVuZGVyTGF5ZXJzIGluIG9yZGVyIHRvIGFsbG93IHRoZW0gdG8gY29tcG9zaXRlLgordm9p
ZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6Om5vdGlmeUlGcmFtZXNPZkNvbXBvc2l0aW5nQ2hhbmdl
KCkKK3sKKyAgICBSZWZQdHI8Tm9kZUxpc3Q+IGlmcmFtZXNMaXN0ID0gbV9yZW5kZXJWaWV3LT5k
b2N1bWVudCgpLT5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaWZyYW1lIik7CisgICAgdW5zaWduZWQg
bGVuID0gaWZyYW1lc0xpc3QtPmxlbmd0aCgpOworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkg
PCBsZW47IGkrKykKKyAgICAgICAgaWZyYW1lc0xpc3QtPml0ZW0oaSktPnNldE5lZWRzU3R5bGVS
ZWNhbGMoU3ludGhldGljU3R5bGVDaGFuZ2UpOworfQorCiBib29sIFJlbmRlckxheWVyQ29tcG9z
aXRvcjo6bGF5ZXJIYXMzRENvbnRlbnQoY29uc3QgUmVuZGVyTGF5ZXIqIGxheWVyKSBjb25zdAog
ewogICAgIGNvbnN0IFJlbmRlclN0eWxlKiBzdHlsZSA9IGxheWVyLT5yZW5kZXJlcigpLT5zdHls
ZSgpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9y
LmggYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaAppbmRleCBmZmU1
ODRlYmUwODRiNGIyMzE5MjA4Mjk4NDI4MGJiOTE0ZTg0ZGY3Li4xMmE2MjY0MTgxZjU3MThjYzJh
YTcwMzZmYzY3ZDUyYWMwMTM1YjM4IDEwMDY0NAotLS0gYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJMYXllckNvbXBvc2l0b3IuaAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNv
bXBvc2l0b3IuaApAQCAtMTk4LDYgKzE5OCw4IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkZXRhY2hS
b290UGxhdGZvcm1MYXllcigpOwogICAgIAogICAgIHZvaWQgcm9vdExheWVyQXR0YWNobWVudENo
YW5nZWQoKTsKKyAgICAKKyAgICB2b2lkIG5vdGlmeUlGcmFtZXNPZkNvbXBvc2l0aW5nQ2hhbmdl
KCk7CiAKICAgICAvLyBXaGV0aGVyIGEgcnVubmluZyB0cmFuc2l0aW9uIG9yIGFuaW1hdGlvbiBl
bmZvcmNlcyB0aGUgbmVlZCBmb3IgYSBjb21wb3NpdGluZyBsYXllci4KICAgICBib29sIHJlcXVp
cmVzQ29tcG9zaXRpbmdGb3JBbmltYXRpb24oUmVuZGVyT2JqZWN0KikgY29uc3Q7CmRpZmYgLS1n
aXQgYS9XZWJLaXQvbWFjL0NoYW5nZUxvZyBiL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDZh
YjdmMTI3NjYzNjRiZGZhYTc2OGVmNGVjMWEwZjc4NDkzMmRlOTYuLjg3OTY3Y2RiM2ZmOWY1ZDAz
Njk2MTE0OWZmZjY0ODliZTkzNjE4ZTIgMTAwNjQ0Ci0tLSBhL1dlYktpdC9tYWMvQ2hhbmdlTG9n
CisrKyBiL1dlYktpdC9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTAtMDUtMTIg
IFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29tcG9zaXRlZCBwbHVnLWlucyBjYW4g
Y2F1c2UgbWlzc2VkIHBhaW50aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0zOTAzMworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzk3MjQ3OD4KKyAg
ICAgICAgCisgICAgICAgIEVhZ2VybHkgZW5hYmxlIGNvbXBvc2l0aW5nIG1vZGUgdmlhIHRoZSBl
bmNsb3NpbmcgRnJhbWVWaWV3IHdoZW4gdGhlIHBsdWctaW4gdGVsbHMgdXMgaXQgd2FudHMKKyAg
ICAgICAgdG8gZG8gY29tcG9zaXRpbmcuCisKKyAgICAgICAgKiBQbHVnaW5zL0hvc3RlZC9XZWJI
b3N0ZWROZXRzY2FwZVBsdWdpblZpZXcubW06CisgICAgICAgICgtW1dlYkhvc3RlZE5ldHNjYXBl
UGx1Z2luVmlldyBjcmVhdGVQbHVnaW5dKToKKyAgICAgICAgKiBQbHVnaW5zL1dlYk5ldHNjYXBl
UGx1Z2luVmlldy5tbToKKyAgICAgICAgKC1bV2ViTmV0c2NhcGVQbHVnaW5WaWV3IGNyZWF0ZVBs
dWdpbl0pOgorCiAyMDEwLTA1LTExICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CiAKICAg
ICAgICAgRml4IHRoZSB3b3JsZC4KZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0
ZWQvV2ViSG9zdGVkTmV0c2NhcGVQbHVnaW5WaWV3Lm1tIGIvV2ViS2l0L21hYy9QbHVnaW5zL0hv
c3RlZC9XZWJIb3N0ZWROZXRzY2FwZVBsdWdpblZpZXcubW0KaW5kZXggNzUyZmVjZTJhNDRhMDVh
NWIxYjIzYWUwMTViMzY2MmNjNDRiMzg4My4uZmU5YmM0ZmYzNWZmNDg5NzkzZDM0ZGY0ZjNjOGFh
NDcxMGM1NDU0MiAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9XZWJIb3N0
ZWROZXRzY2FwZVBsdWdpblZpZXcubW0KKysrIGIvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9X
ZWJIb3N0ZWROZXRzY2FwZVBsdWdpblZpZXcubW0KQEAgLTQwLDYgKzQwLDcgQEAKICNpbXBvcnQg
PFdlYkNvcmUvQnJpZGdlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL0ZyYW1lTG9hZGVyVHlwZXMuaD4KKyNpbXBvcnQgPFdlYkNvcmUvRnJhbWV2aWV3Lmg+
CiAjaW1wb3J0IDxXZWJDb3JlL0hUTUxQbHVnSW5FbGVtZW50Lmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L1JlbmRlckVtYmVkZGVkT2JqZWN0Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVPYmpDRXh0
cmFzLmg+CkBAIC0xMjAsOSArMTIxLDEyIEBAIGV4dGVybiAiQyIgewogICAgIGVsc2UgewogICAg
ICAgICBfcGx1Z2luTGF5ZXIgPSBXS01ha2VSZW5kZXJMYXllcihfcHJveHktPnJlbmRlckNvbnRl
eHRJRCgpKTsKIAotICAgICAgICBpZiAoYWNjbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCAmJiBf
cHJveHktPnJlbmRlcmVyVHlwZSgpID09IFVzZUFjY2VsZXJhdGVkQ29tcG9zaXRpbmcpCisgICAg
ICAgIGlmIChhY2NsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkICYmIF9wcm94eS0+cmVuZGVyZXJU
eXBlKCkgPT0gVXNlQWNjZWxlcmF0ZWRDb21wb3NpdGluZykgeworICAgICAgICAgICAgLy8gRWFn
ZXJseSBlbnRlciBjb21wb3NpdGluZyBtb2RlLCBzaW5jZSB3ZSBrbm93IHdlJ2xsIG5lZWQgaXQu
IFRoaXMgYXZvaWRzIGZpcmluZyBzZXROZWVkc1N0eWxlUmVjYWxjKCkKKyAgICAgICAgICAgIC8v
IGZvciBpZnJhbWVzIHRoYXQgY29udGFpbiBjb21wb3NpdGVkIHBsdWdpbnMgYXQgYmFkIHRpbWVz
LiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkwMzMKKyAgICAgICAg
ICAgIGNvcmUoW3NlbGYgd2ViRnJhbWVdKS0+dmlldygpLT5lbnRlckNvbXBvc2l0aW5nTW9kZSgp
OwogICAgICAgICAgICAgW3NlbGYgZWxlbWVudF0tPnNldE5lZWRzU3R5bGVSZWNhbGMoU3ludGhl
dGljU3R5bGVDaGFuZ2UpOwotICAgICAgICBlbHNlCisgICAgICAgIH0gZWxzZQogICAgICAgICAg
ICAgc2VsZi53YW50c0xheWVyID0gWUVTOwogICAgIH0KICAgICAKZGlmZiAtLWdpdCBhL1dlYktp
dC9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpblZpZXcubW0gYi9XZWJLaXQvbWFjL1BsdWdp
bnMvV2ViTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCmluZGV4IGViYzNmODU1MzE2MGNmYTVlNzRkNmNl
OGQxY2MzMTJiMjQxZGMwZjcuLjlmNWE2YzI1NzMwOWFhMDIyZGVkMDdiMmQ3MzNlODBlOGIwODk5
ZWMgMTAwNjQ0Ci0tLSBhL1dlYktpdC9tYWMvUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpblZpZXcu
bW0KKysrIGIvV2ViS2l0L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luVmlldy5tbQpAQCAt
NjEsNiArNjEsNyBAQAogI2ltcG9ydCA8V2ViQ29yZS9GcmFtZS5oPiAKICNpbXBvcnQgPFdlYkNv
cmUvRnJhbWVMb2FkZXIuaD4gCiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lVHJlZS5oPgorI2ltcG9y
dCA8V2ViQ29yZS9GcmFtZVZpZXcuaD4KICNpbXBvcnQgPFdlYkNvcmUvSFRNTFBsdWdJbkVsZW1l
bnQuaD4KICNpbXBvcnQgPFdlYkNvcmUvUGFnZS5oPiAKICNpbXBvcnQgPFdlYkNvcmUvUGx1Z2lu
TWFpblRocmVhZFNjaGVkdWxlci5oPgpAQCAtMTA4OSwxMCArMTA5MCwxNCBAQCBzdGF0aWMgaW5s
aW5lIHZvaWQgZ2V0TlBSZWN0KGNvbnN0IE5TUmVjdCYgbnIsIE5QUmVjdCYgbnByKQogI2lmIFVT
RShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKICAgICAgICAgICAgIGFjY2xlcmF0ZWRDb21wb3Np
dGluZ0VuYWJsZWQgPSBbW1tzZWxmIHdlYlZpZXddIHByZWZlcmVuY2VzXSBhY2NlbGVyYXRlZENv
bXBvc2l0aW5nRW5hYmxlZF07CiAjZW5kaWYKLSAgICAgICAgICAgIGlmIChhY2NsZXJhdGVkQ29t
cG9zaXRpbmdFbmFibGVkKQorICAgICAgICAgICAgaWYgKGFjY2xlcmF0ZWRDb21wb3NpdGluZ0Vu
YWJsZWQpIHsKKyAgICAgICAgICAgICAgICAvLyBFYWdlcmx5IGVudGVyIGNvbXBvc2l0aW5nIG1v
ZGUsIHNpbmNlIHdlIGtub3cgd2UnbGwgbmVlZCBpdC4gVGhpcyBhdm9pZHMgZmlyaW5nIHNldE5l
ZWRzU3R5bGVSZWNhbGMoKQorICAgICAgICAgICAgICAgIC8vIGZvciBpZnJhbWVzIHRoYXQgY29u
dGFpbiBjb21wb3NpdGVkIHBsdWdpbnMgYXQgYmFkIHRpbWVzLiBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzkwMzMKKyAgICAgICAgICAgICAgICBjb3JlKFtzZWxmIHdl
YkZyYW1lXSktPnZpZXcoKS0+ZW50ZXJDb21wb3NpdGluZ01vZGUoKTsKICAgICAgICAgICAgICAg
ICBbc2VsZiBlbGVtZW50XS0+c2V0TmVlZHNTdHlsZVJlY2FsYyhTeW50aGV0aWNTdHlsZUNoYW5n
ZSk7Ci0gICAgICAgICAgICBlbHNlCisgICAgICAgICAgICB9IGVsc2UKICAgICAgICAgICAgICAg
ICBbc2VsZiBzZXRXYW50c0xheWVyOllFU107CisKICAgICAgICAgICAgIExPRyhQbHVnaW5zLCAi
JUAgaXMgdXNpbmcgQ29yZSBBbmltYXRpb24gZHJhd2luZyBtb2RlbCB3aXRoIGxheWVyICVAIiwg
X3BsdWdpblBhY2thZ2UuZ2V0KCksIF9wbHVnaW5MYXllci5nZXQoKSk7CiAgICAgICAgIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55923</attachid>
            <date>2010-05-12 18:23:36 -0700</date>
            <delta_ts>2010-05-12 18:25:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-39033-20100512182335.patch</filename>
            <type>text/plain</type>
            <size>22134</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5ZTcwNDZkNzAwODM1YzBkY2RhZmNkNDEwZDg1NWFhNDE4ZDQ0NDQ0Li5hNGQwNWRj
YWI5YjFiNTM3M2UwNGQ4NzczNDg0M2E4MTJmMmQzMGZmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAK
KzIwMTAtMDUtMTIgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29tcG9zaXRlZCBw
bHVnLWlucyBjYW4gY2F1c2UgbWlzc2VkIHBhaW50aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTAzMworICAgICAgICA8cmRhcjovL3Byb2JsZW0v
Nzk3MjQ3OD4KKyAgICAgICAgCisgICAgICAgIE5ldyB0ZXN0Y2FzZXMsIG9uZSB3aGljaCByZW1v
dmVzIHRoZSBjb250ZW50cyBvZiBhIGNvbXBvc2l0ZWQgaWZyYW1lLCBhbmQgY2hlY2tzIHRoYXQK
KyAgICAgICAgYWxsIGxheWVycyBnbyBhd2F5LCBhbmQgYW5vdGhlciB0aGF0IGhhcyBhIGNvbXBv
c2l0ZWQgaWZyYW1lLCB0aGVuIHRvZ2dsZXMgdGhlIHBhcmVudAorICAgICAgICBkb2N1bWVudCBp
bnRvIGNvbXBvc2l0aW5nIG1vZGUsIHRvIGNoZWNrIHRoYXQgdGhlIGxheWVyIHRyZWVzIGdldCBj
b25uZWN0ZWQuCisKKyAgICAgICAgKiBjb21wb3NpdGluZy9pZnJhbWVzL2Nvbm5lY3QtY29tcG9z
aXRpbmctaWZyYW1lLWRlbGF5ZWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBjb21w
b3NpdGluZy9pZnJhbWVzL2Nvbm5lY3QtY29tcG9zaXRpbmctaWZyYW1lLWRlbGF5ZWQuaHRtbDog
QWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvaWZyYW1lcy9pZnJhbWUtc3JjLWNoYW5nZS1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2lmcmFtZXMvaWZyYW1l
LXNyYy1jaGFuZ2UuaHRtbDogQWRkZWQuCisKIDIwMTAtMDUtMTIgIERpcmsgUHJhbmtlICA8ZHBy
YW5rZUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgYnVpbGQgZml4LgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9jb25uZWN0LWNvbXBvc2l0
aW5nLWlmcmFtZS1kZWxheWVkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5n
L2lmcmFtZXMvY29ubmVjdC1jb21wb3NpdGluZy1pZnJhbWUtZGVsYXllZC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZDFmNDIzOWI4NTE0NzEyOWZhOWQ0NjMxNjFkMWEzMzdiYmJmMDEwYwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2lmcmFtZXMvY29ubmVjdC1j
b21wb3NpdGluZy1pZnJhbWUtZGVsYXllZC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMjAgQEAK
KworV2hlbiB0aGUgcGFyZW50IGRvY3VtZW50IGJlY29tZXMgY29tcG9zaXRlZCwgdGhlIGxheWVy
IHRyZWVzIHNob3VsZCBnZXQgY29ubmVjdGVkIHRvZ2V0aGVyLgorCisoR3JhcGhpY3NMYXllcgor
ICAocG9zaXRpb24gMC4wMCAwLjAwKQorICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgKGJvdW5kcyA4
MDAuMDAgNjAwLjAwKQorICAob3BhY2l0eSAxLjAwKQorICAodXNpbmdUaWxlZExheWVyIDApCisg
IChwcmVzZXJ2ZXMzRCAwKQorICAoZHJhd3NDb250ZW50IDApCisgIChiYWNrZmFjZVZpc2liaWxp
dHkgdmlzaWJsZSkKKyAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAodHJhbnNmb3JtIGlkZW50
aXR5KQorICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgIChjaGlsZHJlbiAxCisgICAg
KEdyYXBoaWNzTGF5ZXIKKyAgICAgIChwb3NpdGlvbiAwLjAwIDAuMDApCisgICAgICAoYW5jaG9y
IDAuNTAgMC41MCkKKyAgICAgIChib3VuZHMgODAwLjAwIDYwMC4wMCkKKyAgICAgIChvcGFjaXR5
IDEuMDApCisgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAocHJlc2VydmVzM0QgMCkK
KyAgICAgIChkcmF3c0NvbnRlbnQgMCkKKyAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJs
ZSkKKyAgICAgIChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICh0cmFuc2Zvcm0gaWRlbnRp
dHkpCisgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAoY2hpbGRyZW4g
MgorICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgIChwb3NpdGlvbiA4LjAwIDEwOC4w
MCkKKyAgICAgICAgICAoYW5jaG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAoYm91bmRzIDM3MC4w
MCAyMjAuMDApCisgICAgICAgICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICAgICAodXNpbmdUaWxl
ZExheWVyIDApCisgICAgICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAgKGRyYXdzQ29u
dGVudCAxKQorICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAg
ICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkK
KyAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgKGNoaWxk
cmVuIDEKKyAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgIChwb3NpdGlv
biAzNS4wMCAzNS4wMCkKKyAgICAgICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTApCisgICAgICAg
ICAgICAgIChib3VuZHMgMzAwLjAwIDE1MC4wMCkKKyAgICAgICAgICAgICAgKG9wYWNpdHkgMS4w
MCkKKyAgICAgICAgICAgICAgKHVzaW5nVGlsZWRMYXllciAwKQorICAgICAgICAgICAgICAocHJl
c2VydmVzM0QgMCkKKyAgICAgICAgICAgICAgKGRyYXdzQ29udGVudCAwKQorICAgICAgICAgICAg
ICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZpc2libGUpCisgICAgICAgICAgICAgIChiYWNrZ3JvdW5k
Q29sb3Igbm9uZSkKKyAgICAgICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAg
ICAgICAgKGNoaWxkcmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAoY2hpbGRy
ZW4gMQorICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgICAgICAo
cG9zaXRpb24gMC4wMCAwLjAwKQorICAgICAgICAgICAgICAgICAgKGFuY2hvciAwLjUwIDAuNTAp
CisgICAgICAgICAgICAgICAgICAoYm91bmRzIDI4NS4wMCAyMzAuMDApCisgICAgICAgICAgICAg
ICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICAgICAgICAgKHVzaW5nVGlsZWRMYXllciAw
KQorICAgICAgICAgICAgICAgICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAgICAgICAgICAo
ZHJhd3NDb250ZW50IDApCisgICAgICAgICAgICAgICAgICAoYmFja2ZhY2VWaXNpYmlsaXR5IHZp
c2libGUpCisgICAgICAgICAgICAgICAgICAoYmFja2dyb3VuZENvbG9yIG5vbmUpCisgICAgICAg
ICAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAgICAgKGNoaWxk
cmVuVHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAgICAgICAgKGNoaWxkcmVuIDEKKyAg
ICAgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAgICAgICAo
cG9zaXRpb24gMC4wMCAwLjAwKQorICAgICAgICAgICAgICAgICAgICAgIChhbmNob3IgMC41MCAw
LjUwKQorICAgICAgICAgICAgICAgICAgICAgIChib3VuZHMgMjg1LjAwIDIzMC4wMCkKKyAgICAg
ICAgICAgICAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICAgICAgICAgICAgICh1
c2luZ1RpbGVkTGF5ZXIgMCkKKyAgICAgICAgICAgICAgICAgICAgICAocHJlc2VydmVzM0QgMCkK
KyAgICAgICAgICAgICAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAgICAgICAg
ICAgICAgKGJhY2tmYWNlVmlzaWJpbGl0eSB2aXNpYmxlKQorICAgICAgICAgICAgICAgICAgICAg
IChiYWNrZ3JvdW5kQ29sb3Igbm9uZSkKKyAgICAgICAgICAgICAgICAgICAgICAodHJhbnNmb3Jt
IGlkZW50aXR5KQorICAgICAgICAgICAgICAgICAgICAgIChjaGlsZHJlblRyYW5zZm9ybSBpZGVu
dGl0eSkKKyAgICAgICAgICAgICAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgICAg
ICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHBvc2l0
aW9uIDE4LjAwIDEwLjAwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAoYW5jaG9yIDAuNTAg
MC41MCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGJvdW5kcyAyMTAuMDAgMjEwLjAwKQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAob3BhY2l0eSAxLjAwKQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAgICAgICAgICAgICAgICAgICAg
IChwcmVzZXJ2ZXMzRCAwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAoZHJhd3NDb250ZW50
IDEpCisgICAgICAgICAgICAgICAgICAgICAgICAgIChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJs
ZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGJhY2tncm91bmRDb2xvciBub25lKQorICAg
ICAgICAgICAgICAgICAgICAgICAgICAodHJhbnNmb3JtIGlkZW50aXR5KQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAoY2hpbGRyZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICAgICAg
ICAgICAgICAgICApCisgICAgICAgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgICAg
ICApCisgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgKQorICAgICAgICAgICAg
ICApCisgICAgICAgICAgICApCisgICAgICAgICAgKQorICAgICAgICApCisgICAgICAgIChHcmFw
aGljc0xheWVyCisgICAgICAgICAgKHBvc2l0aW9uIDguMDAgOC4wMCkKKyAgICAgICAgICAoYW5j
aG9yIDAuNTAgMC41MCkKKyAgICAgICAgICAoYm91bmRzIDEwMC4wMCAxMDAuMDApCisgICAgICAg
ICAgKG9wYWNpdHkgMS4wMCkKKyAgICAgICAgICAodXNpbmdUaWxlZExheWVyIDApCisgICAgICAg
ICAgKHByZXNlcnZlczNEIDApCisgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAg
IChiYWNrZmFjZVZpc2liaWxpdHkgdmlzaWJsZSkKKyAgICAgICAgICAoYmFja2dyb3VuZENvbG9y
IG5vbmUpCisgICAgICAgICAgKHRyYW5zZm9ybSBpZGVudGl0eSkKKyAgICAgICAgICAoY2hpbGRy
ZW5UcmFuc2Zvcm0gaWRlbnRpdHkpCisgICAgICAgICkKKyAgICAgICkKKyAgICApCisgICkKKykK
KwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9jb25uZWN0LWNv
bXBvc2l0aW5nLWlmcmFtZS1kZWxheWVkLmh0bWwgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9p
ZnJhbWVzL2Nvbm5lY3QtY29tcG9zaXRpbmctaWZyYW1lLWRlbGF5ZWQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42N2IyZTJjYzI3YTRmYzE5ZTc4ZjI5MmM4NDdkZGRlNjMzNDY4YWJmCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9jb25uZWN0LWNvbXBvc2l0aW5n
LWlmcmFtZS1kZWxheWVkLmh0bWwKQEAgLTAsMCArMSw1OSBAQAorPCFET0NUWVBFIGh0bWw+CisK
KzxodG1sPgorPGhlYWQ+CisgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+
CisgICAgaWZyYW1lIHsKKyAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkIGJsYWNrOworICAgICAg
ICBwYWRkaW5nOiA1cHg7CisgICAgICAgIG1hcmdpbjogMjBweDsKKyAgICAgICAgaGVpZ2h0OiAx
NTBweDsKKyAgICAgICAgd2lkdGg6IDMwMHB4OworICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6
IDAgMCAyMHB4IGJsYWNrOworICAgIH0KKyAgICAKKyAgICAjYm94IHsKKyAgICAgIGhlaWdodDog
MTAwcHg7CisgICAgICB3aWR0aDogMTAwcHg7CisgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVl
OworICAgIH0KKyAgICAKKyAgICAuY29tcG9zaXRlZCB7CisgICAgICAtd2Via2l0LXRyYW5zZm9y
bTogdHJhbnNsYXRlWigwKTsKKyAgICB9CisgICAgCisgIDwvc3R5bGU+CisgIDxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1dGYtOCI+CisgICAgaWYgKHdpbmRvdy5sYXlv
dXRUZXN0Q29udHJvbGxlcikgeworICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNU
ZXh0KCk7CisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKKyAg
ICB9CisKKyAgICBmdW5jdGlvbiBkb1Rlc3QoKQorICAgIHsKKyAgICAgIC8vIFdhaXQgZm9yIGEg
bGF5ZXIgdXBkYXRlLgorICAgICAgd2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CisgICAg
ICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdib3gnKS5jbGFzc05hbWUgPSAnY29tcG9zaXRl
ZCc7CisgICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICAgIGlm
ICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCdsYXllcnMnKS5pbm5lclRleHQgPSBsYXlvdXRUZXN0Q29udHJvbGxlci5s
YXllclRyZWVBc1RleHQoKTsKKyAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlm
eURvbmUoKTsKKyAgICAgICAgICB9CisgICAgICAgIH0sIDApOworICAgICAgfSwgMCk7CisgICAg
fQorICAgIAorICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZG9UZXN0LCBmYWxz
ZSk7CisgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisKKyAgICA8ZGl2IGlkPSJib3giPjwv
ZGl2PgorCisgICAgPCEtLSBUZXN0IHdpdGggYWxyZWFkeS1jb21wb3NpdGVkIGlmcmFtZSBjb250
ZW50cywgYW5kIGlmcmFtZSBpdHNlbGYgY29tcG9zaXRlZC4gLS0+CisgICAgPGlmcmFtZSBpZD0i
aWZyYW1lIiBzcmM9InJlc291cmNlcy9jb21wb3NpdGVkLXN1YmZyYW1lLmh0bWwiPjwvaWZyYW1l
PgorICAgIAorICAgIDxwPldoZW4gdGhlIHBhcmVudCBkb2N1bWVudCBiZWNvbWVzIGNvbXBvc2l0
ZWQsIHRoZSBsYXllciB0cmVlcyBzaG91bGQgZ2V0IGNvbm5lY3RlZCB0b2dldGhlci48L3A+Cisg
ICAgPHByZSBpZD0ibGF5ZXJzIj5MYXllciB0cmVlIGFwcGVhcnMgaGVyZSBpbiBEUlQuPC9wcmU+
Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9p
ZnJhbWVzL2lmcmFtZS1zcmMtY2hhbmdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NvbXBv
c2l0aW5nL2lmcmFtZXMvaWZyYW1lLXNyYy1jaGFuZ2UtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjkxY2NlMzk4ODFmYTc2MDc5NTVlYTEwM2NkNzhiODY2YjE5MzI1OTAKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2lmcmFtZS1zcmMtY2hhbmdlLWV4
cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAKKworVGhlIGlmcmFtZSBjb250ZW50IHdhcyByZW1v
dmVkLiBUaGVyZSBzaG91bGQgYmUgbm8gbGF5ZXJzIGhlcmUuCisKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pZnJhbWUtc3JjLWNoYW5nZS5odG1sIGIvTGF5
b3V0VGVzdHMvY29tcG9zaXRpbmcvaWZyYW1lcy9pZnJhbWUtc3JjLWNoYW5nZS5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjY3NTYzNWIyMTcyOWI2MGRhZWU0NzI0MjdiZDdmNjRmNDQxNzkxMDYKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9pZnJhbWVzL2lmcmFtZS1zcmMtY2hh
bmdlLmh0bWwKQEAgLTAsMCArMSw1OCBAQAorPCFET0NUWVBFIGh0bWw+CisKKzxodG1sPgorPGhl
YWQ+CisgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+CisgICAgaWZyYW1l
IHsKKyAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkIGJsYWNrOworICAgICAgICBwYWRkaW5nOiA1
cHg7CisgICAgICAgIG1hcmdpbjogMjBweDsKKyAgICAgICAgaGVpZ2h0OiAxNTBweDsKKyAgICAg
ICAgd2lkdGg6IDMwMHB4OworICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAyMHB4IGJs
YWNrOworICAgIH0KKyAgICAKKyAgICAub3ZlcmxheSB7CisgICAgICBwb3NpdGlvbjogYWJzb2x1
dGU7CisgICAgICB3aWR0aDogNTBweDsKKyAgICAgIGhlaWdodDogNTBweDsKKyAgICAgIHRvcDog
NXB4OworICAgICAgbGVmdDogNXB4OworICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAw
LCAwLCAwLjIpOworICAgIH0KKyAgICAKKyAgPC9zdHlsZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0
L2phdmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICBpZiAod2luZG93LmxheW91dFRlc3RD
b250cm9sbGVyKSB7CisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsK
KyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworICAgIH0KKwor
ICAgIGZ1bmN0aW9uIGRvVGVzdCgpCisgICAgeworICAgICAgLy8gV2FpdCBmb3IgYSBsYXllciB1
cGRhdGUuCisgICAgICB3aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhcmVudC1pZnJhbWUnKS5zcmMgPSAiYWJvdXQ6Ymxhbmsi
OworICAgICAgICB3aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgICBpZiAo
d2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgICAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgnbGF5ZXJzJykuaW5uZXJIVE1MID0gbGF5b3V0VGVzdENvbnRyb2xsZXIubGF5
ZXJUcmVlQXNUZXh0KCk7CisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlE
b25lKCk7CisgICAgICAgICAgfQorICAgICAgICB9LCAwKTsKKyAgICAgIH0sIDUwKTsKKyAgICB9
CisgICAgCisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBkb1Rlc3QsIGZhbHNl
KTsKKyAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworICAgIDxpZnJhbWUgaWQ9InBhcmVu
dC1pZnJhbWUiIHNyYz0icmVzb3VyY2VzL2NvbXBvc2l0ZWQtc3ViZnJhbWUuaHRtbCI+PC9pZnJh
bWU+CisgICAgCisgICAgPGRpdiBjbGFzcz0ib3ZlcmxheSI+CisgICAgPC9kaXY+CisKKyAgICA8
cD5UaGUgaWZyYW1lIGNvbnRlbnQgd2FzIHJlbW92ZWQuIFRoZXJlIHNob3VsZCBiZSBubyBsYXll
cnMgaGVyZS48L3A+CisgICAgPHByZSBpZD0ibGF5ZXJzIj5MYXllciB0cmVlIGFwcGVhcnMgaGVy
ZSBpbiBEUlQuPC9wcmU+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9XZWJDb3JlL0No
YW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDRiYmY0YzhlNDExMmZjMzhkMTRiMzYw
OTJmYTM1ZmRhZTE4ZDlkNzUuLjhiMTMyN2VmYzQzYTk2ZGZlMjVjMmNmNTI5MTQ5YWNjNjQzOTBk
NGEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsNTEgQEAKKzIwMTAtMDUtMTIgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNl
ckBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQ29tcG9zaXRlZCBwbHVnLWlucyBjYW4gY2F1c2UgbWlzc2VkIHBhaW50aW5nCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zOTAzMworICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNzk3MjQ3OD4KKworICAgICAgICBGaXhlZCBtaXNzZWQgcGFpbnRp
bmcgKGFuZCBhc3NlcnRpb25zIGluIGRlYnVnIGJ1aWxkcykgcmVsYXRlZCB0byBjb21wb3NpdGlu
ZworICAgICAgICBwcm9wYWdhdGluZyBvdXQgb2YgaWZyYW1lcyB0aGF0IGNvbnRhaW4gcGx1Zy1p
bnMuCisgICAgICAgIAorICAgICAgICBXaGVuIGFuIGlmcmFtZSBlbnRlcnMgb3IgbGVhdmVzIGNv
bXBvc2l0aW5nIG1vZGUsIFJlbmRlckxheWVyQ29tcG9zaXRvciB1c2VzCisgICAgICAgIHNldE5l
ZWRzU3R5bGVSZWNhbGMoU3ludGhldGljU3R5bGVDaGFuZ2UpIHRvIHRyaWdnZXIgdGhlIHBhcmVu
dCBkb2N1bWVudCB0byByZS1ldmFsdWF0ZQorICAgICAgICB3aGV0aGVyIHRoZSBpZnJhbWUgaXRz
ZWxmIHNob3VsZCBiZSBjb21wb3NpdGVkLiBIb3dldmVyLCBmb3IgaWZyYW1lcyBjb250YWluaW5n
IHBsdWctaW5zLAorICAgICAgICB0aGlzIGNhbiBoYXBwZW4gYXQgaW5hcHByb3ByaWF0ZSB0aW1l
cy4gRm9yIGV4YW1wbGUsIHdoZW4gYSBicm93c2VyIHRhYiBpcyBicm91Z2h0IGZyb250bW9zdCwK
KyAgICAgICAgcGx1Zy1pbnMgYXJlIGluc3RhbnRpYXRlZCBmb3IgdGhlIGZpcnN0IHRpbWUgKHZp
YSAtdmlld0RpZE1vdmVUb1dpbmRvdyksIHdoaWNoIHRyaWdnZXJzIGEgCisgICAgICAgIHNldE5l
ZWRzU3R5bGVSZWNhbGMoKSBvbiB0aGUgb2JqZWN0IGVsZW1lbnQuIFNvb24gYWZ0ZXIsIHRoZSAt
dmlld1dpbGxEcmF3IG1hY2hpbmVyeQorICAgICAgICBkb2VzIGxheW91dCBmcm9tIHRoZSB0b3Ag
ZG93bi4gRHVyaW5nIGxheW91dCBvZiB0aGUgaWZyYW1lLCB0aGUgaWZyYW1lIGVudGVycyBjb21w
b3NpdGluZyBtb2RlLAorICAgICAgICBhbmQgZG9lcyBhIHNldE5lZWRzU3R5bGVSZWNhbGMoKSBv
biB0aGUgaWZyYW1lIGVsZW1lbnQgaW4gaXRzIHBhcmVudCBkb2N1bWVudC4gVGhpcyBsZWF2ZXMg
dGhlCisgICAgICAgIEZyYW1lVmlldyBhcyBuZWVkc0xheW91dCgpLCBzbyB0aGUgRnJhbWVWaWV3
OjpwYWludENvbnRlbnRzKCkgYXNzZXJ0cyBhbmQgYmFpbHMuCisgICAgICAgIAorICAgICAgICBU
aGUgZml4IGlzIHRvIGF2b2lkIGRvaW5nIGEgc2V0TmVlZHNTdHlsZVJlY2FsYygpIG9uIHRoZSBy
b290IHdoaWxlIGluc2lkZSBhIHJlY2FsY1N0eWxlIG9uCisgICAgICAgIHRoZSBpZnJhbWUuIFdl
IGRvIHRoaXMgYnkgc3dpdGNoaW5nIHRoZSBpZnJhbWUgaW50byBjb21wb3NpdGluZyBtb2RlIGVh
Z2VybHkgYXMgc29vbiBhcyB3ZSBrbm93CisgICAgICAgIHRoZSBwbHVnLWluIG5lZWRzIGl0Lgor
ICAgICAgICAKKyAgICAgICAgQSBzZWNvbmRhcnkgZml4IGlzIHRvIGVuc3VyZSB0aGF0IGlmIGEg
ZG9jdW1lbnQgaGFzIGNvbXBvc2l0ZWQgaWZyYW1lcywgd2hlbiB0aGF0IGRvY3VtZW50IGJlY29t
ZXMKKyAgICAgICAgY29tcG9zaXRlZCwgd2UgY29ubmVjdCBjb21wb3NpdGluZyBsYXllcnMgYmV0
d2VlbiB0aGUgaWZyYW1lcyBhbmQgdGhlIHBhcmVudCBkb2N1bWVudC4KKworICAgICAgICBUZXN0
czogY29tcG9zaXRpbmcvaWZyYW1lcy9jb25uZWN0LWNvbXBvc2l0aW5nLWlmcmFtZS1kZWxheWVk
Lmh0bWwKKyAgICAgICAgICAgICAgIGNvbXBvc2l0aW5nL2lmcmFtZXMvaWZyYW1lLXNyYy1jaGFu
Z2UuaHRtbAorCisgICAgICAgICogV2ViQ29yZS5iYXNlLmV4cDogRXhwb3J0IEZyYW1lVmlldzo6
ZW50ZXJDb21wb3NpdGluZ01vZGUoKQorCisgICAgICAgICogcGFnZS9GcmFtZVZpZXcuaDogTmV3
IG1ldGhvZCwgZW50ZXJDb21wb3NpdGluZ01vZGUoKSwgdGhhdCB3ZSBjYW4gY2FsbCBmcm9tIFdl
YktpdCBwbHVnLWluIGNvZGUuCisgICAgICAgICogcGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RnJhbWVWaWV3OjplbnRlckNvbXBvc2l0aW5nTW9kZSk6CisKKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmg6CisgICAgICAgICogcmVuZGVyaW5n
L1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXll
ckNvbXBvc2l0b3I6OmVuYWJsZUNvbXBvc2l0aW5nTW9kZSk6IFdoZW4gd2Ugc3dpdGNoIGludG8g
Y29tcG9zaXRpbmcgbW9kZSwgd2UKKyAgICAgICAgICAgIGZvcmNlIGEgc3R5bGUgcmVjYWNsYyBv
biBhbnkgaWZyYW1lcyB0byBnZXQgdGhlbSBpbnRvIGNvbXBvc2l0aW5nIGxheWVycywgc28gdGhl
eSBjYW4gaG9vayB1cAorICAgICAgICAgICAgd2l0aCB0aGVpciBjb250ZW50IGxheWVycyBpZiBu
ZWNlc3NhcnkuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OmRpZE1v
dmVPbnNjcmVlbik6IE9ubHkgY2FsbCBhdHRhY2hSb290UGxhdGZvcm1MYXllcigpIGlmIHdlIHJl
YWxseSBuZWVkIHRvLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp3
aWxsTW92ZU9mZnNjcmVlbik6IE9ubHkgY2FsbCBkZXRhY2hSb290UGxhdGZvcm1MYXllcigpIGlm
IHdlIHJlYWxseSBuZWVkIHRvLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3Np
dG9yOjpkZXRhY2hSb290UGxhdGZvcm1MYXllcik6IFdoaXRlc3BhY2UuCisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6Om5vdGlmeUlGcmFtZXNPZkNvbXBvc2l0aW5nQ2hh
bmdlKTogRmV0Y2ggaWZyYW1lIGVsZW1lbnRzLCBhbmQgc2VuZCBhIAorICAgICAgICAgICAgc3lu
dGhldGljIHN0eWxlIHJlY2FsYyBvbiB0aGVtLgorCiAyMDEwLTA1LTEyICBTYW0gV2VpbmlnICA8
c2FtQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uLgpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmJhc2UuZXhwIGIvV2ViQ29yZS9XZWJDb3JlLmJh
c2UuZXhwCmluZGV4IDJjOWIyMTM1NjM3MWQ4MjZmZDYwYTE1MzFjNTkxNWE1N2ZhMTY3YjcuLjk5
OWUwNDg5MDVhZmJlZTQ0MDEyOTA5NGYzMWQ4MWZkNDY5ODZhOGUgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvV2ViQ29yZS5iYXNlLmV4cAorKysgYi9XZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAKQEAgLTcy
Miw2ICs3MjIsNyBAQCBfX1pON1dlYkNvcmU5RnJhbWVWaWV3MjN1cGRhdGVDYW5IYXZlU2Nyb2xs
YmFyc0V2CiBfX1pON1dlYkNvcmU5RnJhbWVWaWV3Mjlmb3JjZUxheW91dFdpdGhQYWdlV2lkdGhS
YW5nZUVmZmIKIF9fWk43V2ViQ29yZTlGcmFtZVZpZXcyOXNldFNob3VsZFVwZGF0ZVdoaWxlT2Zm
c2NyZWVuRWIKIF9fWk43V2ViQ29yZTlGcmFtZVZpZXcyOXN5bmNDb21wb3NpdGluZ1N0YXRlUmVj
dXJzaXZlRXYKK19fWk43V2ViQ29yZTlGcmFtZVZpZXcyMGVudGVyQ29tcG9zaXRpbmdNb2RlRXYK
IF9fWk43V2ViQ29yZTlGcmFtZVZpZXc2Y3JlYXRlRVBOU181RnJhbWVFCiBfX1pON1dlYkNvcmU5
RnJhbWVWaWV3NmNyZWF0ZUVQTlNfNUZyYW1lRVJLTlNfN0ludFNpemVFCiBfX1pON1dlYkNvcmU5
SFRNTE5hbWVzMTBsaXN0aW5nVGFnRQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0ZyYW1lVmll
dy5jcHAgYi9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAppbmRleCBmNzBiNjIyMzA4MjNmMDNl
NTc2ODQ2ZDNlZGRkZDU1ZmQ3MjIxYWM5Li5iMWM1ODY1ZGYwMWNmYjY5OGU2YjhlYzY0MDA1YjZi
NjI1MzI0ZTljIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysgYi9X
ZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtNDg3LDYgKzQ4NywxNSBAQCBib29sIEZyYW1l
Vmlldzo6aGFzQ29tcG9zaXRlZENvbnRlbnQoKSBjb25zdAogICAgIHJldHVybiBmYWxzZTsKIH0K
IAorLy8gU29tZXRpbWVzIChmb3IgcGx1Zy1pbnMpIHdlIG5lZWQgdG8gZWFnZXJseSBnbyBpbnRv
IGNvbXBvc2l0aW5nIG1vZGUuCit2b2lkIEZyYW1lVmlldzo6ZW50ZXJDb21wb3NpdGluZ01vZGUo
KQoreworI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKKyAgICBpZiAoUmVuZGVyVmll
dyogdmlldyA9IG1fZnJhbWUtPmNvbnRlbnRSZW5kZXJlcigpKQorICAgICAgICByZXR1cm4gdmll
dy0+Y29tcG9zaXRvcigpLT5lbmFibGVDb21wb3NpdGluZ01vZGUoKTsKKyNlbmRpZgorfQorCiBi
b29sIEZyYW1lVmlldzo6aXNFbmNsb3NlZEluQ29tcG9zaXRpbmdMYXllcigpIGNvbnN0CiB7CiAj
aWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdl
L0ZyYW1lVmlldy5oIGIvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCmluZGV4IGY2ZGZiMWRmMDEw
NTUwYWRjZTE2MGE3ODk2Yzg1MTRhM2NhMDAwZWIuLjZiZDFjMjE5MTYwODdkNmM3MWQyMDJjNDUz
ZDBmMjdkNTdjMDFlYTcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaAorKysg
Yi9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmgKQEAgLTEwNiw2ICsxMDYsNyBAQCBwdWJsaWM6CiAj
ZW5kaWYKIAogICAgIGJvb2wgaGFzQ29tcG9zaXRlZENvbnRlbnQoKSBjb25zdDsKKyAgICB2b2lk
IGVudGVyQ29tcG9zaXRpbmdNb2RlKCk7CiAgICAgYm9vbCBpc0VuY2xvc2VkSW5Db21wb3NpdGlu
Z0xheWVyKCkgY29uc3Q7CiAKICAgICAvLyBPbmx5IHVzZWQgd2l0aCBhY2NlbGVyYXRlZCBjb21w
b3NpdGluZywgYnV0IG91dHNpZGUgdGhlICNpZmRlZiB0byBtYWtlIGxpbmthZ2UgZWFzaWVyLgpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcCBi
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAKaW5kZXggMmVjMGQ0
NTA2YTlmNjg0YjM1ZmMxYTRkMDg1ODRlMDZjNWVmYjQxMS4uMTBiZjM3NWI3ZmI5ZTA0ZDU3Mzk4
MDIxNmIxY2RlMjViZmVmZGYxZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXJDb21wb3NpdG9yLmNwcAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNv
bXBvc2l0b3IuY3BwCkBAIC00Miw2ICs0Miw3IEBACiAjaW5jbHVkZSAiSFRNTE1lZGlhRWxlbWVu
dC5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2VuZGlmCisjaW5jbHVkZSAiTm9kZUxpc3Qu
aCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUmVuZGVyRW1iZWRkZWRPYmplY3QuaCIK
ICNpbmNsdWRlICJSZW5kZXJJRnJhbWUuaCIKQEAgLTExMSwxMiArMTEyLDEwIEBAIHZvaWQgUmVu
ZGVyTGF5ZXJDb21wb3NpdG9yOjplbmFibGVDb21wb3NpdGluZ01vZGUoYm9vbCBlbmFibGUgLyog
PSB0cnVlICovKQogICAgIGlmIChlbmFibGUgIT0gbV9jb21wb3NpdGluZykgewogICAgICAgICBt
X2NvbXBvc2l0aW5nID0gZW5hYmxlOwogICAgICAgICAKLSAgICAgICAgLy8gV2UgbmV2ZXIgZ28g
b3V0IG9mIGNvbXBvc2l0aW5nIG1vZGUgZm9yIGEgZ2l2ZW4gcGFnZSwKLSAgICAgICAgLy8gYnV0
IGlmIGFsbCB0aGUgbGF5ZXJzIGRpc2FwcGVhciwgd2UnbGwganVzdCBiZSBsZWZ0IHdpdGgKLSAg
ICAgICAgLy8gdGhlIGVtcHR5IHJvb3QgbGF5ZXIsIHdoaWNoIGhhcyBtaW5pbWFsIG92ZXJoZWFk
LgotICAgICAgICBpZiAobV9jb21wb3NpdGluZykKKyAgICAgICAgaWYgKG1fY29tcG9zaXRpbmcp
IHsKICAgICAgICAgICAgIGVuc3VyZVJvb3RQbGF0Zm9ybUxheWVyKCk7Ci0gICAgICAgIGVsc2UK
KyAgICAgICAgICAgIG5vdGlmeUlGcmFtZXNPZkNvbXBvc2l0aW5nQ2hhbmdlKCk7CisgICAgICAg
IH0gZWxzZQogICAgICAgICAgICAgZGVzdHJveVJvb3RQbGF0Zm9ybUxheWVyKCk7CiAgICAgfQog
fQpAQCAtOTcxLDEyICs5NzAsMTggQEAgR3JhcGhpY3NMYXllciogUmVuZGVyTGF5ZXJDb21wb3Np
dG9yOjpyb290UGxhdGZvcm1MYXllcigpIGNvbnN0CiAKIHZvaWQgUmVuZGVyTGF5ZXJDb21wb3Np
dG9yOjpkaWRNb3ZlT25zY3JlZW4oKQogeworICAgIGlmICghaW5Db21wb3NpdGluZ01vZGUoKSB8
fCBtX3Jvb3RMYXllckF0dGFjaG1lbnQgIT0gUm9vdExheWVyVW5hdHRhY2hlZCkKKyAgICAgICAg
cmV0dXJuOworCiAgICAgUm9vdExheWVyQXR0YWNobWVudCBhdHRhY2htZW50ID0gc2hvdWxkUHJv
cGFnYXRlQ29tcG9zaXRpbmdUb0VuY2xvc2luZ0lGcmFtZSgpID8gUm9vdExheWVyQXR0YWNoZWRW
aWFFbmNsb3NpbmdJZnJhbWUgOiBSb290TGF5ZXJBdHRhY2hlZFZpYUNocm9tZUNsaWVudDsKICAg
ICBhdHRhY2hSb290UGxhdGZvcm1MYXllcihhdHRhY2htZW50KTsKIH0KIAogdm9pZCBSZW5kZXJM
YXllckNvbXBvc2l0b3I6OndpbGxNb3ZlT2Zmc2NyZWVuKCkKIHsKKyAgICBpZiAoIWluQ29tcG9z
aXRpbmdNb2RlKCkgfHwgbV9yb290TGF5ZXJBdHRhY2htZW50ID09IFJvb3RMYXllclVuYXR0YWNo
ZWQpCisgICAgICAgIHJldHVybjsKKwogICAgIGRldGFjaFJvb3RQbGF0Zm9ybUxheWVyKCk7CiB9
CiAKQEAgLTEzMTAsNiArMTMxNSw3IEBAIHZvaWQgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpkZXRh
Y2hSb290UGxhdGZvcm1MYXllcigpCiAgICAgICAgICAgICAgICAgbV9jbGlwcGluZ0xheWVyLT5y
ZW1vdmVGcm9tUGFyZW50KCk7CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgbV9y
b290UGxhdGZvcm1MYXllci0+cmVtb3ZlRnJvbVBhcmVudCgpOworCiAgICAgICAgICAgICBtX3Jl
bmRlclZpZXctPmRvY3VtZW50KCktPm93bmVyRWxlbWVudCgpLT5zZXROZWVkc1N0eWxlUmVjYWxj
KFN5bnRoZXRpY1N0eWxlQ2hhbmdlKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBA
IC0xMzQ0LDYgKzEzNTAsMjEgQEAgdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnJvb3RMYXll
ckF0dGFjaG1lbnRDaGFuZ2VkKCkKICAgICAgICAgYmFja2luZy0+dXBkYXRlRHJhd3NDb250ZW50
KCk7CiB9CiAKKy8vIElGcmFtZXMgYXJlIHNwZWNpYWwsIGJlY2F1c2Ugd2UgaG9vayBjb21wb3Np
dGluZyBsYXllcnMgdG9nZXRoZXIgYWNyb3NzIGlmcmFtZSBib3VuZGFyaWVzCisvLyB3aGVuIGJv
dGggcGFyZW50IGFuZCBpZnJhbWUgY29udGVudCBhcmUgY29tcG9zaXRlZC4gU28gd2hlbiB0aGlz
IGZyYW1lIGJlY29tZXMgY29tcG9zaXRlZCwgd2UgaGF2ZQorLy8gdG8gdXNlIGEgc3ludGhldGlj
IHN0eWxlIGNoYW5nZSB0byBnZXQgdGhlIGlmcmFtZXMgaW50byBSZW5kZXJMYXllcnMgaW4gb3Jk
ZXIgdG8gYWxsb3cgdGhlbSB0byBjb21wb3NpdGUuCit2b2lkIFJlbmRlckxheWVyQ29tcG9zaXRv
cjo6bm90aWZ5SUZyYW1lc09mQ29tcG9zaXRpbmdDaGFuZ2UoKQoreworICAgIEZyYW1lKiBmcmFt
ZSA9IG1fcmVuZGVyVmlldy0+ZnJhbWVWaWV3KCkgPyBtX3JlbmRlclZpZXctPmZyYW1lVmlldygp
LT5mcmFtZSgpIDogMDsKKyAgICBpZiAoIWZyYW1lKQorICAgICAgICByZXR1cm47CisKKyAgICBm
b3IgKEZyYW1lKiBjaGlsZCA9IGZyYW1lLT50cmVlKCktPmZpcnN0Q2hpbGQoKTsgY2hpbGQ7IGNo
aWxkID0gY2hpbGQtPnRyZWUoKS0+bmV4dFNpYmxpbmcoKSkgeworICAgICAgICBpZiAoY2hpbGQt
PmRvY3VtZW50KCkgJiYgY2hpbGQtPmRvY3VtZW50KCktPm93bmVyRWxlbWVudCgpKQorICAgICAg
ICAgICAgY2hpbGQtPmRvY3VtZW50KCktPm93bmVyRWxlbWVudCgpLT5zZXROZWVkc1N0eWxlUmVj
YWxjKFN5bnRoZXRpY1N0eWxlQ2hhbmdlKTsKKyAgICB9Cit9CisKIGJvb2wgUmVuZGVyTGF5ZXJD
b21wb3NpdG9yOjpsYXllckhhczNEQ29udGVudChjb25zdCBSZW5kZXJMYXllciogbGF5ZXIpIGNv
bnN0CiB7CiAgICAgY29uc3QgUmVuZGVyU3R5bGUqIHN0eWxlID0gbGF5ZXItPnJlbmRlcmVyKCkt
PnN0eWxlKCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBv
c2l0b3IuaCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5oCmluZGV4
IGZmZTU4NGViZTA4NGI0YjIzMTkyMDgyOTg0MjgwYmI5MTRlODRkZjcuLjEyYTYyNjQxODFmNTcx
OGNjMmFhNzAzNmZjNjdkNTJhYzAxMzViMzggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckxheWVyQ29tcG9zaXRvci5oCisrKyBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxh
eWVyQ29tcG9zaXRvci5oCkBAIC0xOTgsNiArMTk4LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIGRl
dGFjaFJvb3RQbGF0Zm9ybUxheWVyKCk7CiAgICAgCiAgICAgdm9pZCByb290TGF5ZXJBdHRhY2ht
ZW50Q2hhbmdlZCgpOworICAgIAorICAgIHZvaWQgbm90aWZ5SUZyYW1lc09mQ29tcG9zaXRpbmdD
aGFuZ2UoKTsKIAogICAgIC8vIFdoZXRoZXIgYSBydW5uaW5nIHRyYW5zaXRpb24gb3IgYW5pbWF0
aW9uIGVuZm9yY2VzIHRoZSBuZWVkIGZvciBhIGNvbXBvc2l0aW5nIGxheWVyLgogICAgIGJvb2wg
cmVxdWlyZXNDb21wb3NpdGluZ0ZvckFuaW1hdGlvbihSZW5kZXJPYmplY3QqKSBjb25zdDsKZGlm
ZiAtLWdpdCBhL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5k
ZXggZjIwYTA1NWQxNGNmODkxMmZjMDc2NTAwYzQyNjQ1OGJlMmQ5OTY5Ni4uMjFjNDYzNzk4Njgx
OGE2MjI0ZTM2NTk3MThhYzcyYzdiY2JmNDAwOSAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9DaGFu
Z2VMb2cKKysrIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxMC0w
NS0xMiAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb21wb3NpdGVkIHBsdWctaW5z
IGNhbiBjYXVzZSBtaXNzZWQgcGFpbnRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTM5MDMzCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83OTcyNDc4
PgorICAgICAgICAKKyAgICAgICAgRWFnZXJseSBlbmFibGUgY29tcG9zaXRpbmcgbW9kZSB2aWEg
dGhlIGVuY2xvc2luZyBGcmFtZVZpZXcgd2hlbiB0aGUgcGx1Zy1pbiB0ZWxscyB1cyBpdCB3YW50
cworICAgICAgICB0byBkbyBjb21wb3NpdGluZy4KKworICAgICAgICAqIFBsdWdpbnMvSG9zdGVk
L1dlYkhvc3RlZE5ldHNjYXBlUGx1Z2luVmlldy5tbToKKyAgICAgICAgKC1bV2ViSG9zdGVkTmV0
c2NhcGVQbHVnaW5WaWV3IGNyZWF0ZVBsdWdpbl0pOgorICAgICAgICAqIFBsdWdpbnMvV2ViTmV0
c2NhcGVQbHVnaW5WaWV3Lm1tOgorICAgICAgICAoLVtXZWJOZXRzY2FwZVBsdWdpblZpZXcgY3Jl
YXRlUGx1Z2luXSk6CisKIDIwMTAtMDUtMTIgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5j
b20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCmRpZmYgLS1naXQgYS9XZWJL
aXQvbWFjL1BsdWdpbnMvSG9zdGVkL1dlYkhvc3RlZE5ldHNjYXBlUGx1Z2luVmlldy5tbSBiL1dl
YktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvV2ViSG9zdGVkTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCmlu
ZGV4IDc1MmZlY2UyYTQ0YTA1YTViMWIyM2FlMDE1YjM2NjJjYzQ0YjM4ODMuLmZlOWJjNGZmMzVm
ZjQ4OTc5M2QzNGRmNGYzYzhhYTQ3MTBjNTQ1NDIgMTAwNjQ0Ci0tLSBhL1dlYktpdC9tYWMvUGx1
Z2lucy9Ib3N0ZWQvV2ViSG9zdGVkTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCisrKyBiL1dlYktpdC9t
YWMvUGx1Z2lucy9Ib3N0ZWQvV2ViSG9zdGVkTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCkBAIC00MCw2
ICs0MCw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL0JyaWRnZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9G
cmFtZS5oPgogI2ltcG9ydCA8V2ViQ29yZS9GcmFtZUxvYWRlclR5cGVzLmg+CisjaW1wb3J0IDxX
ZWJDb3JlL0ZyYW1ldmlldy5oPgogI2ltcG9ydCA8V2ViQ29yZS9IVE1MUGx1Z0luRWxlbWVudC5o
PgogI2ltcG9ydCA8V2ViQ29yZS9SZW5kZXJFbWJlZGRlZE9iamVjdC5oPgogI2ltcG9ydCA8V2Vi
Q29yZS9XZWJDb3JlT2JqQ0V4dHJhcy5oPgpAQCAtMTIwLDkgKzEyMSwxMiBAQCBleHRlcm4gIkMi
IHsKICAgICBlbHNlIHsKICAgICAgICAgX3BsdWdpbkxheWVyID0gV0tNYWtlUmVuZGVyTGF5ZXIo
X3Byb3h5LT5yZW5kZXJDb250ZXh0SUQoKSk7CiAKLSAgICAgICAgaWYgKGFjY2xlcmF0ZWRDb21w
b3NpdGluZ0VuYWJsZWQgJiYgX3Byb3h5LT5yZW5kZXJlclR5cGUoKSA9PSBVc2VBY2NlbGVyYXRl
ZENvbXBvc2l0aW5nKQorICAgICAgICBpZiAoYWNjbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCAm
JiBfcHJveHktPnJlbmRlcmVyVHlwZSgpID09IFVzZUFjY2VsZXJhdGVkQ29tcG9zaXRpbmcpIHsK
KyAgICAgICAgICAgIC8vIEVhZ2VybHkgZW50ZXIgY29tcG9zaXRpbmcgbW9kZSwgc2luY2Ugd2Ug
a25vdyB3ZSdsbCBuZWVkIGl0LiBUaGlzIGF2b2lkcyBmaXJpbmcgc2V0TmVlZHNTdHlsZVJlY2Fs
YygpCisgICAgICAgICAgICAvLyBmb3IgaWZyYW1lcyB0aGF0IGNvbnRhaW4gY29tcG9zaXRlZCBw
bHVnaW5zIGF0IGJhZCB0aW1lcy4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTM5MDMzCisgICAgICAgICAgICBjb3JlKFtzZWxmIHdlYkZyYW1lXSktPnZpZXcoKS0+ZW50
ZXJDb21wb3NpdGluZ01vZGUoKTsKICAgICAgICAgICAgIFtzZWxmIGVsZW1lbnRdLT5zZXROZWVk
c1N0eWxlUmVjYWxjKFN5bnRoZXRpY1N0eWxlQ2hhbmdlKTsKLSAgICAgICAgZWxzZQorICAgICAg
ICB9IGVsc2UKICAgICAgICAgICAgIHNlbGYud2FudHNMYXllciA9IFlFUzsKICAgICB9CiAgICAg
CmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5WaWV3Lm1t
IGIvV2ViS2l0L21hYy9QbHVnaW5zL1dlYk5ldHNjYXBlUGx1Z2luVmlldy5tbQppbmRleCBlYmMz
Zjg1NTMxNjBjZmE1ZTc0ZDZjZThkMWNjMzEyYjI0MWRjMGY3Li45ZjVhNmMyNTczMDlhYTAyMmRl
ZDA3YjJkNzMzZTgwZThiMDg5OWVjIDEwMDY0NAotLS0gYS9XZWJLaXQvbWFjL1BsdWdpbnMvV2Vi
TmV0c2NhcGVQbHVnaW5WaWV3Lm1tCisrKyBiL1dlYktpdC9tYWMvUGx1Z2lucy9XZWJOZXRzY2Fw
ZVBsdWdpblZpZXcubW0KQEAgLTYxLDYgKzYxLDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvRnJhbWUu
aD4gCiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lTG9hZGVyLmg+IAogI2ltcG9ydCA8V2ViQ29yZS9G
cmFtZVRyZWUuaD4KKyNpbXBvcnQgPFdlYkNvcmUvRnJhbWVWaWV3Lmg+CiAjaW1wb3J0IDxXZWJD
b3JlL0hUTUxQbHVnSW5FbGVtZW50Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1BhZ2UuaD4gCiAjaW1w
b3J0IDxXZWJDb3JlL1BsdWdpbk1haW5UaHJlYWRTY2hlZHVsZXIuaD4KQEAgLTEwODksMTAgKzEw
OTAsMTQgQEAgc3RhdGljIGlubGluZSB2b2lkIGdldE5QUmVjdChjb25zdCBOU1JlY3QmIG5yLCBO
UFJlY3QmIG5wcikKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiAgICAgICAgICAg
ICBhY2NsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkID0gW1tbc2VsZiB3ZWJWaWV3XSBwcmVmZXJl
bmNlc10gYWNjZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWRdOwogI2VuZGlmCi0gICAgICAgICAg
ICBpZiAoYWNjbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCkKKyAgICAgICAgICAgIGlmIChhY2Ns
ZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkKSB7CisgICAgICAgICAgICAgICAgLy8gRWFnZXJseSBl
bnRlciBjb21wb3NpdGluZyBtb2RlLCBzaW5jZSB3ZSBrbm93IHdlJ2xsIG5lZWQgaXQuIFRoaXMg
YXZvaWRzIGZpcmluZyBzZXROZWVkc1N0eWxlUmVjYWxjKCkKKyAgICAgICAgICAgICAgICAvLyBm
b3IgaWZyYW1lcyB0aGF0IGNvbnRhaW4gY29tcG9zaXRlZCBwbHVnaW5zIGF0IGJhZCB0aW1lcy4g
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5MDMzCisgICAgICAgICAg
ICAgICAgY29yZShbc2VsZiB3ZWJGcmFtZV0pLT52aWV3KCktPmVudGVyQ29tcG9zaXRpbmdNb2Rl
KCk7CiAgICAgICAgICAgICAgICAgW3NlbGYgZWxlbWVudF0tPnNldE5lZWRzU3R5bGVSZWNhbGMo
U3ludGhldGljU3R5bGVDaGFuZ2UpOwotICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgfSBl
bHNlCiAgICAgICAgICAgICAgICAgW3NlbGYgc2V0V2FudHNMYXllcjpZRVNdOworCiAgICAgICAg
ICAgICBMT0coUGx1Z2lucywgIiVAIGlzIHVzaW5nIENvcmUgQW5pbWF0aW9uIGRyYXdpbmcgbW9k
ZWwgd2l0aCBsYXllciAlQCIsIF9wbHVnaW5QYWNrYWdlLmdldCgpLCBfcGx1Z2luTGF5ZXIuZ2V0
KCkpOwogICAgICAgICB9CiAK
</data>
<flag name="review"
          id="40233"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
      

    </bug>

</bugzilla>