<?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>196051</bug_id>
          
          <creation_ts>2019-03-20 20:34:15 -0700</creation_ts>
          <short_desc>[ContentChangeObserver] Start tracking implicit transitions at touchStart</short_desc>
          <delta_ts>2019-03-21 11:49:59 -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>WebKit 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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1519437</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2019-03-20 20:34:15 -0700</bug_when>
    <thetext>up until touchEnd.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1519448</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-03-20 21:01:28 -0700</bug_when>
    <thetext>&lt;rdar://problem/49092952&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1519459</commentid>
    <comment_count>2</comment_count>
      <attachid>365481</attachid>
    <who name="alan">zalan</who>
    <bug_when>2019-03-20 21:23:31 -0700</bug_when>
    <thetext>Created attachment 365481
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1519654</commentid>
    <comment_count>3</comment_count>
      <attachid>365549</attachid>
    <who name="alan">zalan</who>
    <bug_when>2019-03-21 08:54:19 -0700</bug_when>
    <thetext>Created attachment 365549
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1519741</commentid>
    <comment_count>4</comment_count>
      <attachid>365549</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2019-03-21 11:06:46 -0700</bug_when>
    <thetext>Comment on attachment 365549
Patch

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

&gt; Source/WebCore/page/ios/ContentChangeObserver.cpp:357
&gt;          }
&gt; +        // It&apos;s way too early to notify the client.

Remove.

&gt; Source/WebCore/page/ios/ContentChangeObserver.h:173
&gt; +        CancelledTransition,

Canceled?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1519789</commentid>
    <comment_count>5</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2019-03-21 11:49:59 -0700</bug_when>
    <thetext>Committed r243307: &lt;https://trac.webkit.org/changeset/243307&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>365481</attachid>
            <date>2019-03-20 21:23:31 -0700</date>
            <delta_ts>2019-03-21 08:54:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-196051-20190320212330.patch</filename>
            <type>text/plain</type>
            <size>20327</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQzMjcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGZkMzZjZDk3NzRkYmRj
NDBmMmI0YzQxOTMzODA1Mjg2OWYxZmJkYi4uMGM4M2NmYmY2ZGRmNjQxOWU2MjBiNzlkZTE2N2Yy
NTZhNmNkNGZkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDE5LTAzLTIwICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvbnRlbnRDaGFuZ2VPYnNl
cnZlcl0gU3RhcnQgdHJhY2tpbmcgaW1wbGljaXQgdHJhbnNpdGlvbnMgYXQgdG91Y2hTdGFydAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk2MDUxCisg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS80OTA5Mjk1Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGVuYWJsZXMgdHJhbnNpdGlvbiB0
cmFja2luZyBvbiB0b3VjaFN0YXJ0LgorCisgICAgICAgIDEuIFN0YXJ0IG9ic2VydmluZyBmb3Ig
bmV3IHRyYW5zaXRpb25zIGF0IHRvdWNoU3RhcnQKKyAgICAgICAgMi4gU3RvcCBvYnNlcnZpbmcg
YXQgdG91Y2hFbmQKKyAgICAgICAgMy4gQ2hlY2sgdGhlIG5leHQgc3R5bGUgcmVjYWxjIHdoZW4g
dGhlIHRyYW5zaXRpb24gaXMgZmluaXNoZWQgKGF0IG9uQW5pbWF0aW9uRW5kIHdlIGRvbid0IHll
dCBoYXZlIHRoZSBmaW5hbCBjb21wdXRlZCBzdHlsZSkuCisgICAgICAgIDQuIFJlbW92ZSB0aGUg
dHJhY2tlZCB0cmFuc2l0aW9uIHdoZW4gaXQgaXMgY2FuY2VsZWQuCisKKyAgICAgICAgVGVzdHM6
IGZhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzBtcy10cmFuc2l0aW9u
LW9uLXRvdWNoLXN0YXJ0Lmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvZXZlbnRzL3RvdWNoL2lv
cy9jb250ZW50LW9ic2VydmF0aW9uLzEwMG1zLXRyYW5zaXRpb24tb24tdG91Y2gtc3RhcnQuaHRt
bAorICAgICAgICAgICAgICAgZmFzdC9ldmVudHMvdG91Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRp
b24vMTBtcy1kZWxheS10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0Lmh0bWwKKyAgICAgICAgICAg
ICAgIGZhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uL3RyYW5zaXRpb24t
b24tdG91Y2gtc3RhcnQtYW5kLXJlbW92ZS5odG1sCisKKyAgICAgICAgKiBwYWdlL2lvcy9Db250
ZW50Q2hhbmdlT2JzZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudENoYW5nZU9i
c2VydmVyOjpkaWRBZGRUcmFuc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRDaGFu
Z2VPYnNlcnZlcjo6ZGlkRmluaXNoVHJhbnNpdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpDb250
ZW50Q2hhbmdlT2JzZXJ2ZXI6OmRpZFJlbW92ZVRyYW5zaXRpb24pOgorICAgICAgICAoV2ViQ29y
ZTo6Q29udGVudENoYW5nZU9ic2VydmVyOjphZGp1c3RPYnNlcnZlZFN0YXRlKToKKyAgICAgICAg
KiBwYWdlL2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNv
bnRlbnRDaGFuZ2VPYnNlcnZlcjo6c2V0U2hvdWxkT2JzZXJ2ZVRyYW5zaXRpb25zKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6Y2xlYXJPYnNlcnZlZFRyYW5zaXRp
b25zKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6aGFzT2JzZXJ2
ZWRUcmFuc2l0aW9uIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRDaGFuZ2VPYnNl
cnZlcjo6aGFzUGVuZGluZ0FjdGl2aXR5IGNvbnN0KToKKwogMjAxOS0wMy0yMCAgWmFsYW4gQnVq
dGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtDb250ZW50Q2hhbmdlT2JzZXJ2ZXJd
IFRyYWNrIGhpZGRlbiBlbGVtZW50cyBvbmx5IHdoaWxlIHRyYW5zaXRpb25pbmcuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9pb3MvQ29udGVudENoYW5nZU9ic2VydmVyLmNwcAppbmRleCBi
NWUxYzJlYTFiY2Y4MTRkY2E3MmMxYjdjNTA1YTYyODI2MTU4NmRhLi5iODIzN2ZjOTYxZGZjMGMy
ZTZkOTE3MmE5Mjg1ZDFjMWRlMmNlNzg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
aW9zL0NvbnRlbnRDaGFuZ2VPYnNlcnZlci5jcHAKQEAgLTE0MSw3ICsxNDEsNyBAQCB2b2lkIENv
bnRlbnRDaGFuZ2VPYnNlcnZlcjo6ZGlkQWRkVHJhbnNpdGlvbihjb25zdCBFbGVtZW50JiBlbGVt
ZW50LCBjb25zdCBBbmltYQogICAgIExPR19XSVRIX1NUUkVBTShDb250ZW50T2JzZXJ2YXRpb24s
IHN0cmVhbSA8PCAiZGlkQWRkVHJhbnNpdGlvbjogdHJhbnNpdGlvbiBjcmVhdGVkIG9uICIgPDwg
JmVsZW1lbnQgPDwgIiAoIiA8PCB0cmFuc2l0aW9uRW5kLm1pbGxpc2Vjb25kcygpIDw8ICJtcyku
Iik7CiAKICAgICBtX2VsZW1lbnRzV2l0aFRyYW5zaXRpb24uYWRkKCZlbGVtZW50KTsKLSAgICAv
LyBGSVhNRTogcmVwb3J0IHN0YXRlIGNoYW5nZS4KKyAgICBhZGp1c3RPYnNlcnZlZFN0YXRlKEV2
ZW50OjpBZGRlZFRyYW5zaXRpb24pOwogfQogCiB2b2lkIENvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6
ZGlkRmluaXNoVHJhbnNpdGlvbihjb25zdCBFbGVtZW50JiBlbGVtZW50LCBDU1NQcm9wZXJ0eUlE
IHByb3BlcnR5SUQpCkBAIC0xNTEsNyArMTUxLDggQEAgdm9pZCBDb250ZW50Q2hhbmdlT2JzZXJ2
ZXI6OmRpZEZpbmlzaFRyYW5zaXRpb24oY29uc3QgRWxlbWVudCYgZWxlbWVudCwgQ1NTUHJvcGUK
ICAgICBpZiAoIW1fZWxlbWVudHNXaXRoVHJhbnNpdGlvbi50YWtlKCZlbGVtZW50KSkKICAgICAg
ICAgcmV0dXJuOwogICAgIExPR19XSVRIX1NUUkVBTShDb250ZW50T2JzZXJ2YXRpb24sIHN0cmVh
bSA8PCAiZGlkRmluaXNoVHJhbnNpdGlvbjogdHJhbnNpdGlvbiBmaW5pc2hlZCAoIiA8PCAmZWxl
bWVudCA8PCAiKS4iKTsKLSAgICAvLyBGSVhNRTogcmVwb3J0IHN0YXRlIGNoYW5nZS4KKworICAg
IGFkanVzdE9ic2VydmVkU3RhdGUoRXZlbnQ6OkVuZGVkVHJhbnNpdGlvbik7CiB9CiAKIHZvaWQg
Q29udGVudENoYW5nZU9ic2VydmVyOjpkaWRSZW1vdmVUcmFuc2l0aW9uKGNvbnN0IEVsZW1lbnQm
IGVsZW1lbnQsIENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkKQEAgLTE2MSw3ICsxNjIsOCBAQCB2
b2lkIENvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6ZGlkUmVtb3ZlVHJhbnNpdGlvbihjb25zdCBFbGVt
ZW50JiBlbGVtZW50LCBDU1NQcm9wZQogICAgIGlmICghbV9lbGVtZW50c1dpdGhUcmFuc2l0aW9u
LnRha2UoJmVsZW1lbnQpKQogICAgICAgICByZXR1cm47CiAgICAgTE9HX1dJVEhfU1RSRUFNKENv
bnRlbnRPYnNlcnZhdGlvbiwgc3RyZWFtIDw8ICJkaWRSZW1vdmVUcmFuc2l0aW9uOiB0cmFuc2l0
aW9uIGdvdCBpbnRlcnJ1cHRlZCAoIiA8PCAmZWxlbWVudCA8PCAiKS4iKTsKLSAgICAvLyBGSVhN
RTogcmVwb3J0IHN0YXRlIGNoYW5nZS4KKworICAgIGFkanVzdE9ic2VydmVkU3RhdGUoRXZlbnQ6
OkNhbmNlbGxlZFRyYW5zaXRpb24pOwogfQogCiB2b2lkIENvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6
ZGlkSW5zdGFsbERPTVRpbWVyKGNvbnN0IERPTVRpbWVyJiB0aW1lciwgU2Vjb25kcyB0aW1lb3V0
LCBib29sIHNpbmdsZVNob3QpCkBAIC0zMzQsNiArMzM2LDcgQEAgdm9pZCBDb250ZW50Q2hhbmdl
T2JzZXJ2ZXI6OmFkanVzdE9ic2VydmVkU3RhdGUoRXZlbnQgZXZlbnQpCiAgICAgYXV0byByZXNl
dCA9IFsmXSB7CiAgICAgICAgIHNldEhhc05vQ2hhbmdlU3RhdGUoKTsKICAgICAgICAgY2xlYXJP
YnNlcnZlZERPTVRpbWVycygpOworICAgICAgICBjbGVhck9ic2VydmVkVHJhbnNpdGlvbnMoKTsK
ICAgICAgICAgc2V0SXNCZXR3ZWVuVG91Y2hFbmRBbmRNb3VzZU1vdmVkKGZhbHNlKTsKICAgICAg
ICAgQVNTRVJUKCFtX2lzT2JzZXJ2aW5nRE9NVGltZXJTY2hlZHVsaW5nKTsKICAgICAgICAgQVNT
RVJUKCFtX2lzV2FpdGluZ0ZvclN0eWxlUmVjYWxjKTsKQEAgLTM1MSw2ICszNTQsMTEgQEAgdm9p
ZCBDb250ZW50Q2hhbmdlT2JzZXJ2ZXI6OmFkanVzdE9ic2VydmVkU3RhdGUoRXZlbnQgZXZlbnQp
CiAgICAgICAgICAgICBMT0coQ29udGVudE9ic2VydmF0aW9uLCAiYWRqdXN0U3RhdGVBbmROb3Rp
ZnlDb250ZW50Q2hhbmdlSWZOZWVkZWQ6IGluIG1vdXNlTW92ZWQgY2FsbC4gTm8gbmVlZCB0byBu
b3RpZnkgdGhlIGNsaWVudC4iKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQorICAg
ICAgICAvLyBJdCdzIHdheSB0b28gZWFybHkgdG8gbm90aWZ5IHRoZSBjbGllbnQuCisgICAgICAg
IGlmIChpc0JldHdlZW5Ub3VjaEVuZEFuZE1vdXNlTW92ZWQoKSkgeworICAgICAgICAgICAgTE9H
KENvbnRlbnRPYnNlcnZhdGlvbiwgImFkanVzdFN0YXRlQW5kTm90aWZ5Q29udGVudENoYW5nZUlm
TmVlZGVkOiBOb3QgcmVhY2hlZCBtb3VzZU1vdmVkIHlldC4gTm8gbmVlZCB0byBub3RpZnkgdGhl
IGNsaWVudC4iKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQogICAgICAgICBpZiAo
IWhhc0RldGVybWluYXRlU3RhdGUoKSkgewogICAgICAgICAgICAgTE9HKENvbnRlbnRPYnNlcnZh
dGlvbiwgImFkanVzdFN0YXRlQW5kTm90aWZ5Q29udGVudENoYW5nZUlmTmVlZGVkOiBub3QgaW4g
YSBkZXRlcm1pbmVkIHN0YXRlIHlldC4iKTsKICAgICAgICAgICAgIHJldHVybjsKQEAgLTM2NSw5
ICszNzMsMTEgQEAgdm9pZCBDb250ZW50Q2hhbmdlT2JzZXJ2ZXI6OmFkanVzdE9ic2VydmVkU3Rh
dGUoRXZlbnQgZXZlbnQpCiAgICAgY2FzZSBFdmVudDo6U3RhcnRlZFRvdWNoU3RhcnRFdmVudERp
c3BhdGNoaW5nOgogICAgICAgICByZXNldCgpOwogICAgICAgICBzZXRTaG91bGRPYnNlcnZlRE9N
VGltZXJTY2hlZHVsaW5nKHRydWUpOworICAgICAgICBzZXRTaG91bGRPYnNlcnZlVHJhbnNpdGlv
bnModHJ1ZSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRXZlbnQ6OkVuZGVkVG91Y2hTdGFy
dEV2ZW50RGlzcGF0Y2hpbmc6CiAgICAgICAgIHNldFNob3VsZE9ic2VydmVET01UaW1lclNjaGVk
dWxpbmcoZmFsc2UpOworICAgICAgICBzZXRTaG91bGRPYnNlcnZlVHJhbnNpdGlvbnMoZmFsc2Up
OwogICAgICAgICBzZXRJc0JldHdlZW5Ub3VjaEVuZEFuZE1vdXNlTW92ZWQodHJ1ZSk7CiAgICAg
ICAgIGJyZWFrOwogICAgIGNhc2UgRXZlbnQ6OldpbGxOb3RQcm9jZWVkV2l0aENsaWNrOgpAQCAt
Mzk0LDE0ICs0MDQsMTcgQEAgdm9pZCBDb250ZW50Q2hhbmdlT2JzZXJ2ZXI6OmFkanVzdE9ic2Vy
dmVkU3RhdGUoRXZlbnQgZXZlbnQpCiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRXZlbnQ6Oklu
c3RhbGxlZERPTVRpbWVyOgogICAgIGNhc2UgRXZlbnQ6OlN0YXJ0ZWRGaXhlZE9ic2VydmF0aW9u
VGltZVdpbmRvdzoKKyAgICBjYXNlIEV2ZW50OjpBZGRlZFRyYW5zaXRpb246CiAgICAgICAgIEFT
U0VSVCghaGFzVmlzaWJsZUNoYW5nZVN0YXRlKCkpOwogICAgICAgICBzZXRIYXNJbmRldGVybWlu
YXRlU3RhdGUoKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBFdmVudDo6RW5kZWRET01UaW1l
ckV4ZWN1dGlvbjoKKyAgICBjYXNlIEV2ZW50OjpFbmRlZFRyYW5zaXRpb246CiAgICAgICAgIHNl
dFNob3VsZE9ic2VydmVOZXh0U3R5bGVSZWNhbGMobV9kb2N1bWVudC5oYXNQZW5kaW5nU3R5bGVS
ZWNhbGMoKSk7CiAgICAgICAgIEZBTExUSFJPVUdIOwogICAgIGNhc2UgRXZlbnQ6OkVuZGVkU3R5
bGVSZWNhbGM6CiAgICAgY2FzZSBFdmVudDo6UmVtb3ZlZERPTVRpbWVyOgorICAgIGNhc2UgRXZl
bnQ6OkNhbmNlbGxlZFRyYW5zaXRpb246CiAgICAgICAgIGlmICghaXNPYnNlcnZhdGlvblRpbWVX
aW5kb3dBY3RpdmUoKSkKICAgICAgICAgICAgIGFkanVzdFN0YXRlQW5kTm90aWZ5Q29udGVudENo
YW5nZUlmTmVlZGVkKCk7CiAgICAgICAgIGJyZWFrOwpAQCAtNDEzLDYgKzQyNiw3IEBAIHZvaWQg
Q29udGVudENoYW5nZU9ic2VydmVyOjphZGp1c3RPYnNlcnZlZFN0YXRlKEV2ZW50IGV2ZW50KQog
ICAgICAgICAvLyBSZW1vdmUgcGVuZGluZyBhY3Rpdml0aWVzLiBXZSBkb24ndCBuZWVkIHRvIG9i
c2VydmUgdGhlbSBhbnltb3JlLgogICAgICAgICBzZXRTaG91bGRPYnNlcnZlTmV4dFN0eWxlUmVj
YWxjKGZhbHNlKTsKICAgICAgICAgY2xlYXJPYnNlcnZlZERPTVRpbWVycygpOworICAgICAgICBj
bGVhck9ic2VydmVkVHJhbnNpdGlvbnMoKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9pb3MvQ29udGVudENoYW5nZU9ic2VydmVyLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuaAppbmRleCBm
OWUxODQ1NzlkNjgzMTgxMzY2Y2Q4ODhhNDVkYTQyNmU1MTM1OWEzLi44OGY4ZmMxZGVlZTcwOTNm
NGZjODNhNWFiYWYyMGE1YTIxYzk1NWI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2lv
cy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuaApAQCAtMTE5LDYgKzExOSw3IEBAIHByaXZhdGU6CiAK
ICAgICB2b2lkIHNldFNob3VsZE9ic2VydmVET01UaW1lclNjaGVkdWxpbmcoYm9vbCBvYnNlcnZl
KSB7IG1faXNPYnNlcnZpbmdET01UaW1lclNjaGVkdWxpbmcgPSBvYnNlcnZlOyB9CiAgICAgYm9v
bCBpc09ic2VydmluZ0RPTVRpbWVyU2NoZWR1bGluZygpIGNvbnN0IHsgcmV0dXJuIG1faXNPYnNl
cnZpbmdET01UaW1lclNjaGVkdWxpbmc7IH0KKyAgICB2b2lkIHNldFNob3VsZE9ic2VydmVUcmFu
c2l0aW9ucyhib29sIG9ic2VydmUpIHsgbV9pc09ic2VydmluZ1RyYW5zaXRpb25zID0gb2JzZXJ2
ZTsgfQogICAgIGJvb2wgaXNPYnNlcnZpbmdUcmFuc2l0aW9ucygpIGNvbnN0IHsgcmV0dXJuIG1f
aXNPYnNlcnZpbmdUcmFuc2l0aW9uczsgfQogICAgIGJvb2wgaXNPYnNlcnZlZFByb3BlcnR5Rm9y
VHJhbnNpdGlvbihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SWQpIGNvbnN0IHsgcmV0dXJuIHByb3Bl
cnR5SWQgPT0gQ1NTUHJvcGVydHlMZWZ0OyB9CiAgICAgdm9pZCBkb21UaW1lckV4ZWN1dGVEaWRT
dGFydChjb25zdCBET01UaW1lciYpOwpAQCAtMTI2LDYgKzEyNyw3IEBAIHByaXZhdGU6CiAgICAg
dm9pZCByZWdpc3RlckRPTVRpbWVyKGNvbnN0IERPTVRpbWVyJiB0aW1lcikgeyBtX0RPTVRpbWVy
TGlzdC5hZGQoJnRpbWVyKTsgfQogICAgIHZvaWQgdW5yZWdpc3RlckRPTVRpbWVyKGNvbnN0IERP
TVRpbWVyJiB0aW1lcikgeyBtX0RPTVRpbWVyTGlzdC5yZW1vdmUoJnRpbWVyKTsgfQogICAgIHZv
aWQgY2xlYXJPYnNlcnZlZERPTVRpbWVycygpIHsgbV9ET01UaW1lckxpc3QuY2xlYXIoKTsgfQor
ICAgIHZvaWQgY2xlYXJPYnNlcnZlZFRyYW5zaXRpb25zKCkgeyBtX2VsZW1lbnRzV2l0aFRyYW5z
aXRpb24uY2xlYXIoKTsgfQogICAgIGJvb2wgY29udGFpbnNPYnNlcnZlZERPTVRpbWVyKGNvbnN0
IERPTVRpbWVyJiB0aW1lcikgY29uc3QgeyByZXR1cm4gbV9ET01UaW1lckxpc3QuY29udGFpbnMo
JnRpbWVyKTsgfQogCiAgICAgdm9pZCBzdHlsZVJlY2FsY0RpZFN0YXJ0KCk7CkBAIC0xNDMsMTIg
KzE0NSwxMyBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBoYXNWaXNpYmxlQ2hhbmdlU3RhdGUoKSBj
b25zdCB7IHJldHVybiBvYnNlcnZlZENvbnRlbnRDaGFuZ2UoKSA9PSBXS0NvbnRlbnRWaXNpYmls
aXR5Q2hhbmdlOyB9CiAgICAgYm9vbCBoYXNPYnNlcnZlZERPTVRpbWVyKCkgY29uc3QgeyByZXR1
cm4gIW1fRE9NVGltZXJMaXN0LmlzRW1wdHkoKTsgfQorICAgIGJvb2wgaGFzT2JzZXJ2ZWRUcmFu
c2l0aW9uKCkgY29uc3QgeyByZXR1cm4gIW1fZWxlbWVudHNXaXRoVHJhbnNpdGlvbi5pc0VtcHR5
KCk7IH0KICAgICBib29sIGhhc0RldGVybWluYXRlU3RhdGUoKSBjb25zdDsKIAogICAgIHZvaWQg
c2V0SXNCZXR3ZWVuVG91Y2hFbmRBbmRNb3VzZU1vdmVkKGJvb2wgaXNCZXR3ZWVuKSB7IG1faXNC
ZXR3ZWVuVG91Y2hFbmRBbmRNb3VzZU1vdmVkID0gaXNCZXR3ZWVuOyB9CiAgICAgYm9vbCBpc0Jl
dHdlZW5Ub3VjaEVuZEFuZE1vdXNlTW92ZWQoKSBjb25zdCB7IHJldHVybiBtX2lzQmV0d2VlblRv
dWNoRW5kQW5kTW91c2VNb3ZlZDsgfQogCi0gICAgYm9vbCBoYXNQZW5kaW5nQWN0aXZpdHkoKSBj
b25zdCB7IHJldHVybiBoYXNPYnNlcnZlZERPTVRpbWVyKCkgfHwgbV9pc1dhaXRpbmdGb3JTdHls
ZVJlY2FsYyB8fCBpc09ic2VydmF0aW9uVGltZVdpbmRvd0FjdGl2ZSgpOyB9CisgICAgYm9vbCBo
YXNQZW5kaW5nQWN0aXZpdHkoKSBjb25zdCB7IHJldHVybiBoYXNPYnNlcnZlZERPTVRpbWVyKCkg
fHwgaGFzT2JzZXJ2ZWRUcmFuc2l0aW9uKCkgfHwgbV9pc1dhaXRpbmdGb3JTdHlsZVJlY2FsYyB8
fCBpc09ic2VydmF0aW9uVGltZVdpbmRvd0FjdGl2ZSgpOyB9CiAgICAgYm9vbCBpc09ic2VydmF0
aW9uVGltZVdpbmRvd0FjdGl2ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGVudE9ic2VydmF0aW9u
VGltZXIuaXNBY3RpdmUoKTsgfQogCiAgICAgdm9pZCBjb21wbGV0ZUR1cmF0aW9uQmFzZWRDb250
ZW50T2JzZXJ2YXRpb24oKTsKQEAgLTE2NSw2ICsxNjgsOSBAQCBwcml2YXRlOgogICAgICAgICBF
bmRlZERPTVRpbWVyRXhlY3V0aW9uLAogICAgICAgICBTdGFydGVkU3R5bGVSZWNhbGMsCiAgICAg
ICAgIEVuZGVkU3R5bGVSZWNhbGMsCisgICAgICAgIEFkZGVkVHJhbnNpdGlvbiwKKyAgICAgICAg
RW5kZWRUcmFuc2l0aW9uLAorICAgICAgICBDYW5jZWxsZWRUcmFuc2l0aW9uLAogICAgICAgICBT
dGFydGVkRml4ZWRPYnNlcnZhdGlvblRpbWVXaW5kb3csCiAgICAgICAgIEVuZGVkRml4ZWRPYnNl
cnZhdGlvblRpbWVXaW5kb3csCiAgICAgICAgIENvbnRlbnRWaXNpYmlsaXR5Q2hhbmdlZApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IGY1N2QxMDUwYWNjZWEwZmMzMTNlZDAyMjA2ZDNmYTI0YmRmODM4NTkuLmI0ZjQ1NzMwZDQx
NDFlYmE2ZTc3Y2QxYWIyOTU2YjQyOTg4MWIxYmMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAx
OS0wMy0yMCAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtDb250
ZW50Q2hhbmdlT2JzZXJ2ZXJdIFN0YXJ0IHRyYWNraW5nIGltcGxpY2l0IHRyYW5zaXRpb25zIGF0
IHRvdWNoU3RhcnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE5NjA1MQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDkwOTI5NTI+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L2V2ZW50cy90b3Vj
aC9pb3MvY29udGVudC1vYnNlcnZhdGlvbi8wbXMtdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250
ZW50LW9ic2VydmF0aW9uLzBtcy10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0Lmh0bWw6IEFkZGVk
LgorICAgICAgICAqIGZhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzEw
MG1zLXRyYW5zaXRpb24tb24tdG91Y2gtc3RhcnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2V2ZW50cy90b3VjaC9pb3MvY29udGVudC1vYnNlcnZhdGlvbi8xMDBtcy10cmFu
c2l0aW9uLW9uLXRvdWNoLXN0YXJ0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRz
L3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzEwbXMtZGVsYXktdHJhbnNpdGlvbi1vbi10
b3VjaC1zdGFydC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3Rv
dWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzEwbXMtZGVsYXktdHJhbnNpdGlvbi1vbi10b3Vj
aC1zdGFydC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy90b3VjaC9pb3MvY29u
dGVudC1vYnNlcnZhdGlvbi90cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWFuZC1yZW1vdmUtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy90b3VjaC9pb3MvY29udGVu
dC1vYnNlcnZhdGlvbi90cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWFuZC1yZW1vdmUuaHRtbDog
QWRkZWQuCisKIDIwMTktMDMtMjAgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgog
CiAgICAgICAgIEluY2x1ZGUgV0FMIGFuZCBTSE0gZmlsZSBzaXplIGluIElEQiBkYXRhYmFzZSBz
aXplIGNvbXB1dGF0aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3Vj
aC9pb3MvY29udGVudC1vYnNlcnZhdGlvbi8wbXMtdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3MvY29udGVudC1v
YnNlcnZhdGlvbi8wbXMtdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNjZkYjRjOTQwOGE2YzAzMTJkZDBlMmQ0ODVjMDFiODM1ZTdjZjkzZAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9i
c2VydmF0aW9uLzBtcy10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDIgQEAKK1BBU1MgaWYgJ2NsaWNrZWQnIHRleHQgaXMgbm90IHNob3duIGJlbG93Lgor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3MvY29udGVudC1v
YnNlcnZhdGlvbi8wbXMtdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRpb24vMG1zLXRyYW5zaXRp
b24tb24tdG91Y2gtc3RhcnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MTAxYTVmMDY2N2FmNjRjZGZmNDk1
MTkzY2FmODQ5YTc5YzlmY2RhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMvdG91Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRpb24vMG1zLXRyYW5zaXRpb24tb24tdG91
Y2gtc3RhcnQuaHRtbApAQCAtMCwwICsxLDYwIEBACis8aHRtbD4KKzxoZWFkPgorPHRpdGxlPlRo
aXMgdGVzdHMgdGhlIGNhc2Ugd2hlbiB0b3VjaEVuZCB0cmlnZ2VycyBhIDBtcyB0cmFuc2l0aW9u
LjwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2Jhc2ljLWdl
c3R1cmVzLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyN0YXB0aGlzIHsKKyAgICB3aWR0aDogNDAw
cHg7CisgICAgaGVpZ2h0OiA0MDBweDsKKyAgICBib3JkZXI6IDFweCBzb2xpZCBncmVlbjsKK30K
KworI2JlY29tZXNWaXNpYmxlIHsKKwlwb3NpdGlvbjogYWJzb2x1dGU7CisJdG9wOiAxMDBweDsK
KwlsZWZ0OiAtMTAwMHB4OworCXdpZHRoOiAxMDBweDsKKwloZWlnaHQ6IDEwMHB4OworCWJhY2tn
cm91bmQtY29sb3I6IGdyZWVuOworCXRyYW5zaXRpb246IGxlZnQgMG1zIGVhc2UtaW4tb3V0IDBt
czsKK30KKzwvc3R5bGU+Cis8c2NyaXB0PgorYXN5bmMgZnVuY3Rpb24gdGVzdCgpIHsKKyAgICBp
ZiAoIXdpbmRvdy50ZXN0UnVubmVyIHx8ICF0ZXN0UnVubmVyLnJ1blVJU2NyaXB0KQorICAgICAg
ICByZXR1cm47CisgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgIGludGVybmFscy5z
ZXR0aW5ncy5zZXRDb250ZW50Q2hhbmdlT2JzZXJ2ZXJFbmFibGVkKHRydWUpOworCisgICAgdGVz
dFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisK
KyAgICBsZXQgcmVjdCA9IHRhcHRoaXMuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7CisgICAgbGV0
IHggPSByZWN0LmxlZnQgKyByZWN0LndpZHRoIC8gMjsKKyAgICBsZXQgeSA9IHJlY3QudG9wICsg
cmVjdC5oZWlnaHQgLyAyOworCisgICAgYXdhaXQgdGFwQXRQb2ludCh4LCB5KTsKK30KKzwvc2Ny
aXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJ0ZXN0KCkiPgorPGRpdiBpZD10YXB0aGlzPlBB
U1MgaWYgJ2NsaWNrZWQnIHRleHQgaXMgbm90IHNob3duIGJlbG93LjwvZGl2PgorPGRpdiBpZD1i
ZWNvbWVzVmlzaWJsZT48L2Rpdj4KKzxwcmUgaWQ9cmVzdWx0PjwvcHJlPgorPHNjcmlwdD4KK3Rh
cHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsIGZ1bmN0aW9uKCBldmVudCApIHsK
KyAgICBiZWNvbWVzVmlzaWJsZS5zdHlsZS5sZWZ0ID0gIjEwcHgiOworICAgIGlmICh3aW5kb3cu
dGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cit9LCBmYWxzZSk7
CisKK2JlY29tZXNWaXNpYmxlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24oIGV2
ZW50ICkgeyAgIAorICAgIHJlc3VsdC5pbm5lckhUTUwgPSAiY2xpY2tlZCBoaWRkZW4iOworfSwg
ZmFsc2UpOworCit0YXB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24oIGV2
ZW50ICkgeyAgIAorICAgIHJlc3VsdC5pbm5lckhUTUwgPSAiY2xpY2tlZCI7Cit9LCBmYWxzZSk7
Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzEwMG1zLXRyYW5zaXRpb24t
b24tdG91Y2gtc3RhcnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91
Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRpb24vMTAwbXMtdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFy
dC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjZkYjRjOTQwOGE2YzAzMTJkZDBlMmQ0ODVjMDFi
ODM1ZTdjZjkzZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3Rv
dWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzEwMG1zLXRyYW5zaXRpb24tb24tdG91Y2gtc3Rh
cnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAorUEFTUyBpZiAnY2xpY2tlZCcgdGV4dCBp
cyBub3Qgc2hvd24gYmVsb3cuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRz
L3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzEwMG1zLXRyYW5zaXRpb24tb24tdG91Y2gt
c3RhcnQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9i
c2VydmF0aW9uLzEwMG1zLXRyYW5zaXRpb24tb24tdG91Y2gtc3RhcnQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5mMGVlODZlZTkzNjRmYzRkMDkzNGYyY2U0MWNmMGNhN2NiYzhmNTJlCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRp
b24vMTAwbXMtdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC5odG1sCkBAIC0wLDAgKzEsNjAgQEAK
KzxodG1sPgorPGhlYWQ+Cis8dGl0bGU+VGhpcyB0ZXN0cyB0aGUgY2FzZSB3aGVuIHRvdWNoRW5k
IHRyaWdnZXJzIGEgbm9uLTBtcyB0cmFuc2l0aW9uLjwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vLi4vLi4vLi4vcmVzb3VyY2VzL2Jhc2ljLWdlc3R1cmVzLmpzIj48L3NjcmlwdD4KKzxzdHls
ZT4KKyN0YXB0aGlzIHsKKyAgICB3aWR0aDogNDAwcHg7CisgICAgaGVpZ2h0OiA0MDBweDsKKyAg
ICBib3JkZXI6IDFweCBzb2xpZCBncmVlbjsKK30KKworI2JlY29tZXNWaXNpYmxlIHsKKwlwb3Np
dGlvbjogYWJzb2x1dGU7CisJdG9wOiAxMDBweDsKKwlsZWZ0OiAtMTAwMHB4OworCXdpZHRoOiAx
MDBweDsKKwloZWlnaHQ6IDEwMHB4OworCWJhY2tncm91bmQtY29sb3I6IGdyZWVuOworCXRyYW5z
aXRpb246IGxlZnQgMTAwbXMgZWFzZS1pbi1vdXQgMG1zOworfQorPC9zdHlsZT4KKzxzY3JpcHQ+
Cithc3luYyBmdW5jdGlvbiB0ZXN0KCkgeworICAgIGlmICghd2luZG93LnRlc3RSdW5uZXIgfHwg
IXRlc3RSdW5uZXIucnVuVUlTY3JpcHQpCisgICAgICAgIHJldHVybjsKKyAgICBpZiAod2luZG93
LmludGVybmFscykKKyAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldENvbnRlbnRDaGFuZ2VP
YnNlcnZlckVuYWJsZWQodHJ1ZSk7CisKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsK
KyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgIGxldCByZWN0ID0gdGFwdGhpcy5n
ZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKKyAgICBsZXQgeCA9IHJlY3QubGVmdCArIHJlY3Qud2lk
dGggLyAyOworICAgIGxldCB5ID0gcmVjdC50b3AgKyByZWN0LmhlaWdodCAvIDI7CisKKyAgICBh
d2FpdCB0YXBBdFBvaW50KHgsIHkpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxv
YWQ9InRlc3QoKSI+Cis8ZGl2IGlkPXRhcHRoaXM+UEFTUyBpZiAnY2xpY2tlZCcgdGV4dCBpcyBu
b3Qgc2hvd24gYmVsb3cuPC9kaXY+Cis8ZGl2IGlkPWJlY29tZXNWaXNpYmxlPjwvZGl2PgorPHBy
ZSBpZD1yZXN1bHQ+PC9wcmU+Cis8c2NyaXB0PgordGFwdGhpcy5hZGRFdmVudExpc3RlbmVyKCJ0
b3VjaHN0YXJ0IiwgZnVuY3Rpb24oIGV2ZW50ICkgeworICAgIGJlY29tZXNWaXNpYmxlLnN0eWxl
LmxlZnQgPSAiMTBweCI7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0
UnVubmVyLm5vdGlmeURvbmUoKTsKK30sIGZhbHNlKTsKKworYmVjb21lc1Zpc2libGUuYWRkRXZl
bnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlvbiggZXZlbnQgKSB7ICAgCisgICAgcmVzdWx0Lmlu
bmVySFRNTCA9ICJjbGlja2VkIGhpZGRlbiI7Cit9LCBmYWxzZSk7CisKK3RhcHRoaXMuYWRkRXZl
bnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlvbiggZXZlbnQgKSB7ICAgCisgICAgcmVzdWx0Lmlu
bmVySFRNTCA9ICJjbGlja2VkIjsKK30sIGZhbHNlKTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL2NvbnRl
bnQtb2JzZXJ2YXRpb24vMTBtcy1kZWxheS10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9ic2Vy
dmF0aW9uLzEwbXMtZGVsYXktdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNjZkYjRjOTQwOGE2YzAzMTJkZDBlMmQ0ODVjMDFiODM1ZTdjZjkzZAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50
LW9ic2VydmF0aW9uLzEwbXMtZGVsYXktdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwyIEBACitQQVNTIGlmICdjbGlja2VkJyB0ZXh0IGlzIG5vdCBzaG93
biBiZWxvdy4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9z
L2NvbnRlbnQtb2JzZXJ2YXRpb24vMTBtcy1kZWxheS10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3MvY29udGVudC1vYnNlcnZh
dGlvbi8xMG1zLWRlbGF5LXRyYW5zaXRpb24tb24tdG91Y2gtc3RhcnQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5lMjg5NGNkZjMzMWQ5ZmNjY2FhMmU0ZTBjMmM4NjE3ZjBmYzJjOTgyCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRp
b24vMTBtcy1kZWxheS10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0Lmh0bWwKQEAgLTAsMCArMSw2
MCBAQAorPGh0bWw+Cis8aGVhZD4KKzx0aXRsZT5UaGlzIHRlc3RzIHRoZSBjYXNlIHdoZW4gdG91
Y2hFbmQgdHJpZ2dlcnMgYSBub24tMG1zIHRyYW5zaXRpb24gd2l0aCBkZWxheS48L3RpdGxlPgor
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uLy4uL3Jlc291cmNlcy9iYXNpYy1nZXN0dXJlcy5qcyI+
PC9zY3JpcHQ+Cis8c3R5bGU+CisjdGFwdGhpcyB7CisgICAgd2lkdGg6IDQwMHB4OworICAgIGhl
aWdodDogNDAwcHg7CisgICAgYm9yZGVyOiAxcHggc29saWQgZ3JlZW47Cit9CisKKyNiZWNvbWVz
VmlzaWJsZSB7CisJcG9zaXRpb246IGFic29sdXRlOworCXRvcDogMTAwcHg7CisJbGVmdDogLTEw
MDBweDsKKwl3aWR0aDogMTAwcHg7CisJaGVpZ2h0OiAxMDBweDsKKwliYWNrZ3JvdW5kLWNvbG9y
OiBncmVlbjsKKwl0cmFuc2l0aW9uOiBsZWZ0IDEwbXMgZWFzZS1pbi1vdXQgMTBtczsKK30KKzwv
c3R5bGU+Cis8c2NyaXB0PgorYXN5bmMgZnVuY3Rpb24gdGVzdCgpIHsKKyAgICBpZiAoIXdpbmRv
dy50ZXN0UnVubmVyIHx8ICF0ZXN0UnVubmVyLnJ1blVJU2NyaXB0KQorICAgICAgICByZXR1cm47
CisgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCisgICAgICAgIGludGVybmFscy5zZXR0aW5ncy5z
ZXRDb250ZW50Q2hhbmdlT2JzZXJ2ZXJFbmFibGVkKHRydWUpOworCisgICAgdGVzdFJ1bm5lci53
YWl0VW50aWxEb25lKCk7CisgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisKKyAgICBsZXQg
cmVjdCA9IHRhcHRoaXMuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7CisgICAgbGV0IHggPSByZWN0
LmxlZnQgKyByZWN0LndpZHRoIC8gMjsKKyAgICBsZXQgeSA9IHJlY3QudG9wICsgcmVjdC5oZWln
aHQgLyAyOworCisgICAgYXdhaXQgdGFwQXRQb2ludCh4LCB5KTsKK30KKzwvc2NyaXB0PgorPC9o
ZWFkPgorPGJvZHkgb25sb2FkPSJ0ZXN0KCkiPgorPGRpdiBpZD10YXB0aGlzPlBBU1MgaWYgJ2Ns
aWNrZWQnIHRleHQgaXMgbm90IHNob3duIGJlbG93LjwvZGl2PgorPGRpdiBpZD1iZWNvbWVzVmlz
aWJsZT48L2Rpdj4KKzxwcmUgaWQ9cmVzdWx0PjwvcHJlPgorPHNjcmlwdD4KK3RhcHRoaXMuYWRk
RXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsIGZ1bmN0aW9uKCBldmVudCApIHsKKyAgICBiZWNv
bWVzVmlzaWJsZS5zdHlsZS5sZWZ0ID0gIjEwcHgiOworICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikKKyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cit9LCBmYWxzZSk7CisKK2JlY29t
ZXNWaXNpYmxlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24oIGV2ZW50ICkgeyAg
IAorICAgIHJlc3VsdC5pbm5lckhUTUwgPSAiY2xpY2tlZCBoaWRkZW4iOworfSwgZmFsc2UpOwor
Cit0YXB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24oIGV2ZW50ICkgeyAg
IAorICAgIHJlc3VsdC5pbm5lckhUTUwgPSAiY2xpY2tlZCI7Cit9LCBmYWxzZSk7Cis8L3Njcmlw
dD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRz
L3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uL3RyYW5zaXRpb24tb24tdG91Y2gtc3RhcnQt
YW5kLXJlbW92ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9p
b3MvY29udGVudC1vYnNlcnZhdGlvbi90cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWFuZC1yZW1v
dmUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMxOTU0YTM5ZDcwOWE0YTc2MTRhMTA4ODE0ODI0
YjEwMWE0MmNkZmIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90
b3VjaC9pb3MvY29udGVudC1vYnNlcnZhdGlvbi90cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWFu
ZC1yZW1vdmUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorUEFTUyBpZiAnY2xpY2tlZCcg
dGV4dCBpcyBzaG93biBiZWxvdy4KKworY2xpY2tlZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9ldmVudHMvdG91Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRpb24vdHJhbnNpdGlvbi1vbi10
b3VjaC1zdGFydC1hbmQtcmVtb3ZlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3Vj
aC9pb3MvY29udGVudC1vYnNlcnZhdGlvbi90cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWFuZC1y
ZW1vdmUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yOTRkYzgwMzJmMTQ4YWFkMmQ2MmI5NzgwZmE5MmI4NTdj
MzJkOWRkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gv
aW9zL2NvbnRlbnQtb2JzZXJ2YXRpb24vdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC1hbmQtcmVt
b3ZlLmh0bWwKQEAgLTAsMCArMSw2MCBAQAorPGh0bWw+Cis8aGVhZD4KKzx0aXRsZT5UaGlzIHRl
c3RzIHRoZSBjYXNlIHdoZW4gdG91Y2hFbmQgdHJpZ2dlcnMgYSB0cmFuc2l0aW9uIGFuZCB0aGUg
ZWxlbWVudCBpcyByZW1vdmVkLjwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vLi4v
cmVzb3VyY2VzL2Jhc2ljLWdlc3R1cmVzLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyN0YXB0aGlz
IHsKKyAgICB3aWR0aDogNDAwcHg7CisgICAgaGVpZ2h0OiA0MDBweDsKKyAgICBib3JkZXI6IDFw
eCBzb2xpZCBncmVlbjsKK30KKworI2JlY29tZXNWaXNpYmxlIHsKKwlwb3NpdGlvbjogYWJzb2x1
dGU7CisJdG9wOiAxMDBweDsKKwlsZWZ0OiAtMTAwMHB4OworCXdpZHRoOiAxMDBweDsKKwloZWln
aHQ6IDEwMHB4OworCWJhY2tncm91bmQtY29sb3I6IGdyZWVuOworCXRyYW5zaXRpb246IGxlZnQg
MTAwbXMgZWFzZS1pbi1vdXQgMG1zOworfQorPC9zdHlsZT4KKzxzY3JpcHQ+Cithc3luYyBmdW5j
dGlvbiB0ZXN0KCkgeworICAgIGlmICghd2luZG93LnRlc3RSdW5uZXIgfHwgIXRlc3RSdW5uZXIu
cnVuVUlTY3JpcHQpCisgICAgICAgIHJldHVybjsKKyAgICBpZiAod2luZG93LmludGVybmFscykK
KyAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldENvbnRlbnRDaGFuZ2VPYnNlcnZlckVuYWJs
ZWQodHJ1ZSk7CisKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICB0ZXN0UnVu
bmVyLmR1bXBBc1RleHQoKTsKKworICAgIGxldCByZWN0ID0gdGFwdGhpcy5nZXRCb3VuZGluZ0Ns
aWVudFJlY3QoKTsKKyAgICBsZXQgeCA9IHJlY3QubGVmdCArIHJlY3Qud2lkdGggLyAyOworICAg
IGxldCB5ID0gcmVjdC50b3AgKyByZWN0LmhlaWdodCAvIDI7CisKKyAgICBhd2FpdCB0YXBBdFBv
aW50KHgsIHkpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InRlc3QoKSI+
Cis8ZGl2IGlkPXRhcHRoaXM+UEFTUyBpZiAnY2xpY2tlZCcgdGV4dCBpcyBzaG93biBiZWxvdy48
L2Rpdj4KKzxkaXYgaWQ9YmVjb21lc1Zpc2libGU+PC9kaXY+Cis8cHJlIGlkPXJlc3VsdD48L3By
ZT4KKzxzY3JpcHQ+Cit0YXB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLCBmdW5j
dGlvbiggZXZlbnQgKSB7CisgICAgYmVjb21lc1Zpc2libGUucmVtb3ZlKCk7CisgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKK30sIGZh
bHNlKTsKKworYmVjb21lc1Zpc2libGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlv
biggZXZlbnQgKSB7ICAgCisgICAgcmVzdWx0LmlubmVySFRNTCA9ICJjbGlja2VkIGhpZGRlbiI7
Cit9LCBmYWxzZSk7CisKK3RhcHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlv
biggZXZlbnQgKSB7ICAgCisgICAgcmVzdWx0LmlubmVySFRNTCA9ICJjbGlja2VkIjsKK30sIGZh
bHNlKTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>365549</attachid>
            <date>2019-03-21 08:54:19 -0700</date>
            <delta_ts>2019-03-21 11:06:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-196051-20190321085418.patch</filename>
            <type>text/plain</type>
            <size>20312</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQzMjg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWQ0OGJhOTllMDZlZmE0
NzQxMDgyN2Y1YjU3ZTY3ZDBkY2E3ZTVmNi4uNzkyZjI1NzBlZmVjNjc0MDEzMWU0ODNiMDlkNWNm
NDAwMzkyNWY4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDE5LTAzLTIxICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvbnRlbnRDaGFuZ2VPYnNl
cnZlcl0gU3RhcnQgdHJhY2tpbmcgaW1wbGljaXQgdHJhbnNpdGlvbnMgYXQgdG91Y2hTdGFydAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk2MDUxCisg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS80OTA5Mjk1Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGVuYWJsZXMgdHJhbnNpdGlvbiB0
cmFja2luZyBvbiB0b3VjaFN0YXJ0LgorCisgICAgICAgIDEuIFN0YXJ0IG9ic2VydmluZyBmb3Ig
bmV3IHRyYW5zaXRpb25zIGF0IHRvdWNoU3RhcnQKKyAgICAgICAgMi4gU3RvcCBvYnNlcnZpbmcg
YXQgdG91Y2hFbmQKKyAgICAgICAgMy4gQ2hlY2sgdGhlIG5leHQgc3R5bGUgcmVjYWxjIHdoZW4g
dGhlIHRyYW5zaXRpb24gaXMgZmluaXNoZWQgKGF0IG9uQW5pbWF0aW9uRW5kIHdlIGRvbid0IHll
dCBoYXZlIHRoZSBmaW5hbCBjb21wdXRlZCBzdHlsZSkuCisgICAgICAgIDQuIFJlbW92ZSB0aGUg
dHJhY2tlZCB0cmFuc2l0aW9uIHdoZW4gaXQgaXMgY2FuY2VsZWQuCisKKyAgICAgICAgVGVzdHM6
IGZhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzBtcy10cmFuc2l0aW9u
LW9uLXRvdWNoLXN0YXJ0Lmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvZXZlbnRzL3RvdWNoL2lv
cy9jb250ZW50LW9ic2VydmF0aW9uLzEwMG1zLXRyYW5zaXRpb24tb24tdG91Y2gtc3RhcnQuaHRt
bAorICAgICAgICAgICAgICAgZmFzdC9ldmVudHMvdG91Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRp
b24vMTBtcy1kZWxheS10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0Lmh0bWwKKyAgICAgICAgICAg
ICAgIGZhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uL3RyYW5zaXRpb24t
b24tdG91Y2gtc3RhcnQtYW5kLXJlbW92ZS5odG1sCisKKyAgICAgICAgKiBwYWdlL2lvcy9Db250
ZW50Q2hhbmdlT2JzZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29udGVudENoYW5nZU9i
c2VydmVyOjpkaWRBZGRUcmFuc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRDaGFu
Z2VPYnNlcnZlcjo6ZGlkRmluaXNoVHJhbnNpdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpDb250
ZW50Q2hhbmdlT2JzZXJ2ZXI6OmRpZFJlbW92ZVRyYW5zaXRpb24pOgorICAgICAgICAoV2ViQ29y
ZTo6Q29udGVudENoYW5nZU9ic2VydmVyOjphZGp1c3RPYnNlcnZlZFN0YXRlKToKKyAgICAgICAg
KiBwYWdlL2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNv
bnRlbnRDaGFuZ2VPYnNlcnZlcjo6c2V0U2hvdWxkT2JzZXJ2ZVRyYW5zaXRpb25zKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6Y2xlYXJPYnNlcnZlZFRyYW5zaXRp
b25zKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6aGFzT2JzZXJ2
ZWRUcmFuc2l0aW9uIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRlbnRDaGFuZ2VPYnNl
cnZlcjo6aGFzUGVuZGluZ0FjdGl2aXR5IGNvbnN0KToKKwogMjAxOS0wMy0yMSAgWmFsYW4gQnVq
dGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtDb250ZW50Q2hhbmdlT2JzZXJ2ZXJd
IFRyYWNrIGhpZGRlbiBlbGVtZW50cyBvbmx5IHdoaWxlIHRyYW5zaXRpb25pbmcuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9pb3MvQ29udGVudENoYW5nZU9ic2VydmVyLmNwcAppbmRleCBi
NWUxYzJlYTFiY2Y4MTRkY2E3MmMxYjdjNTA1YTYyODI2MTU4NmRhLi5iODIzN2ZjOTYxZGZjMGMy
ZTZkOTE3MmE5Mjg1ZDFjMWRlMmNlNzg2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
aW9zL0NvbnRlbnRDaGFuZ2VPYnNlcnZlci5jcHAKQEAgLTE0MSw3ICsxNDEsNyBAQCB2b2lkIENv
bnRlbnRDaGFuZ2VPYnNlcnZlcjo6ZGlkQWRkVHJhbnNpdGlvbihjb25zdCBFbGVtZW50JiBlbGVt
ZW50LCBjb25zdCBBbmltYQogICAgIExPR19XSVRIX1NUUkVBTShDb250ZW50T2JzZXJ2YXRpb24s
IHN0cmVhbSA8PCAiZGlkQWRkVHJhbnNpdGlvbjogdHJhbnNpdGlvbiBjcmVhdGVkIG9uICIgPDwg
JmVsZW1lbnQgPDwgIiAoIiA8PCB0cmFuc2l0aW9uRW5kLm1pbGxpc2Vjb25kcygpIDw8ICJtcyku
Iik7CiAKICAgICBtX2VsZW1lbnRzV2l0aFRyYW5zaXRpb24uYWRkKCZlbGVtZW50KTsKLSAgICAv
LyBGSVhNRTogcmVwb3J0IHN0YXRlIGNoYW5nZS4KKyAgICBhZGp1c3RPYnNlcnZlZFN0YXRlKEV2
ZW50OjpBZGRlZFRyYW5zaXRpb24pOwogfQogCiB2b2lkIENvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6
ZGlkRmluaXNoVHJhbnNpdGlvbihjb25zdCBFbGVtZW50JiBlbGVtZW50LCBDU1NQcm9wZXJ0eUlE
IHByb3BlcnR5SUQpCkBAIC0xNTEsNyArMTUxLDggQEAgdm9pZCBDb250ZW50Q2hhbmdlT2JzZXJ2
ZXI6OmRpZEZpbmlzaFRyYW5zaXRpb24oY29uc3QgRWxlbWVudCYgZWxlbWVudCwgQ1NTUHJvcGUK
ICAgICBpZiAoIW1fZWxlbWVudHNXaXRoVHJhbnNpdGlvbi50YWtlKCZlbGVtZW50KSkKICAgICAg
ICAgcmV0dXJuOwogICAgIExPR19XSVRIX1NUUkVBTShDb250ZW50T2JzZXJ2YXRpb24sIHN0cmVh
bSA8PCAiZGlkRmluaXNoVHJhbnNpdGlvbjogdHJhbnNpdGlvbiBmaW5pc2hlZCAoIiA8PCAmZWxl
bWVudCA8PCAiKS4iKTsKLSAgICAvLyBGSVhNRTogcmVwb3J0IHN0YXRlIGNoYW5nZS4KKworICAg
IGFkanVzdE9ic2VydmVkU3RhdGUoRXZlbnQ6OkVuZGVkVHJhbnNpdGlvbik7CiB9CiAKIHZvaWQg
Q29udGVudENoYW5nZU9ic2VydmVyOjpkaWRSZW1vdmVUcmFuc2l0aW9uKGNvbnN0IEVsZW1lbnQm
IGVsZW1lbnQsIENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkKQEAgLTE2MSw3ICsxNjIsOCBAQCB2
b2lkIENvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6ZGlkUmVtb3ZlVHJhbnNpdGlvbihjb25zdCBFbGVt
ZW50JiBlbGVtZW50LCBDU1NQcm9wZQogICAgIGlmICghbV9lbGVtZW50c1dpdGhUcmFuc2l0aW9u
LnRha2UoJmVsZW1lbnQpKQogICAgICAgICByZXR1cm47CiAgICAgTE9HX1dJVEhfU1RSRUFNKENv
bnRlbnRPYnNlcnZhdGlvbiwgc3RyZWFtIDw8ICJkaWRSZW1vdmVUcmFuc2l0aW9uOiB0cmFuc2l0
aW9uIGdvdCBpbnRlcnJ1cHRlZCAoIiA8PCAmZWxlbWVudCA8PCAiKS4iKTsKLSAgICAvLyBGSVhN
RTogcmVwb3J0IHN0YXRlIGNoYW5nZS4KKworICAgIGFkanVzdE9ic2VydmVkU3RhdGUoRXZlbnQ6
OkNhbmNlbGxlZFRyYW5zaXRpb24pOwogfQogCiB2b2lkIENvbnRlbnRDaGFuZ2VPYnNlcnZlcjo6
ZGlkSW5zdGFsbERPTVRpbWVyKGNvbnN0IERPTVRpbWVyJiB0aW1lciwgU2Vjb25kcyB0aW1lb3V0
LCBib29sIHNpbmdsZVNob3QpCkBAIC0zMzQsNiArMzM2LDcgQEAgdm9pZCBDb250ZW50Q2hhbmdl
T2JzZXJ2ZXI6OmFkanVzdE9ic2VydmVkU3RhdGUoRXZlbnQgZXZlbnQpCiAgICAgYXV0byByZXNl
dCA9IFsmXSB7CiAgICAgICAgIHNldEhhc05vQ2hhbmdlU3RhdGUoKTsKICAgICAgICAgY2xlYXJP
YnNlcnZlZERPTVRpbWVycygpOworICAgICAgICBjbGVhck9ic2VydmVkVHJhbnNpdGlvbnMoKTsK
ICAgICAgICAgc2V0SXNCZXR3ZWVuVG91Y2hFbmRBbmRNb3VzZU1vdmVkKGZhbHNlKTsKICAgICAg
ICAgQVNTRVJUKCFtX2lzT2JzZXJ2aW5nRE9NVGltZXJTY2hlZHVsaW5nKTsKICAgICAgICAgQVNT
RVJUKCFtX2lzV2FpdGluZ0ZvclN0eWxlUmVjYWxjKTsKQEAgLTM1MSw2ICszNTQsMTEgQEAgdm9p
ZCBDb250ZW50Q2hhbmdlT2JzZXJ2ZXI6OmFkanVzdE9ic2VydmVkU3RhdGUoRXZlbnQgZXZlbnQp
CiAgICAgICAgICAgICBMT0coQ29udGVudE9ic2VydmF0aW9uLCAiYWRqdXN0U3RhdGVBbmROb3Rp
ZnlDb250ZW50Q2hhbmdlSWZOZWVkZWQ6IGluIG1vdXNlTW92ZWQgY2FsbC4gTm8gbmVlZCB0byBu
b3RpZnkgdGhlIGNsaWVudC4iKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQorICAg
ICAgICAvLyBJdCdzIHdheSB0b28gZWFybHkgdG8gbm90aWZ5IHRoZSBjbGllbnQuCisgICAgICAg
IGlmIChpc0JldHdlZW5Ub3VjaEVuZEFuZE1vdXNlTW92ZWQoKSkgeworICAgICAgICAgICAgTE9H
KENvbnRlbnRPYnNlcnZhdGlvbiwgImFkanVzdFN0YXRlQW5kTm90aWZ5Q29udGVudENoYW5nZUlm
TmVlZGVkOiBOb3QgcmVhY2hlZCBtb3VzZU1vdmVkIHlldC4gTm8gbmVlZCB0byBub3RpZnkgdGhl
IGNsaWVudC4iKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQogICAgICAgICBpZiAo
IWhhc0RldGVybWluYXRlU3RhdGUoKSkgewogICAgICAgICAgICAgTE9HKENvbnRlbnRPYnNlcnZh
dGlvbiwgImFkanVzdFN0YXRlQW5kTm90aWZ5Q29udGVudENoYW5nZUlmTmVlZGVkOiBub3QgaW4g
YSBkZXRlcm1pbmVkIHN0YXRlIHlldC4iKTsKICAgICAgICAgICAgIHJldHVybjsKQEAgLTM2NSw5
ICszNzMsMTEgQEAgdm9pZCBDb250ZW50Q2hhbmdlT2JzZXJ2ZXI6OmFkanVzdE9ic2VydmVkU3Rh
dGUoRXZlbnQgZXZlbnQpCiAgICAgY2FzZSBFdmVudDo6U3RhcnRlZFRvdWNoU3RhcnRFdmVudERp
c3BhdGNoaW5nOgogICAgICAgICByZXNldCgpOwogICAgICAgICBzZXRTaG91bGRPYnNlcnZlRE9N
VGltZXJTY2hlZHVsaW5nKHRydWUpOworICAgICAgICBzZXRTaG91bGRPYnNlcnZlVHJhbnNpdGlv
bnModHJ1ZSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRXZlbnQ6OkVuZGVkVG91Y2hTdGFy
dEV2ZW50RGlzcGF0Y2hpbmc6CiAgICAgICAgIHNldFNob3VsZE9ic2VydmVET01UaW1lclNjaGVk
dWxpbmcoZmFsc2UpOworICAgICAgICBzZXRTaG91bGRPYnNlcnZlVHJhbnNpdGlvbnMoZmFsc2Up
OwogICAgICAgICBzZXRJc0JldHdlZW5Ub3VjaEVuZEFuZE1vdXNlTW92ZWQodHJ1ZSk7CiAgICAg
ICAgIGJyZWFrOwogICAgIGNhc2UgRXZlbnQ6OldpbGxOb3RQcm9jZWVkV2l0aENsaWNrOgpAQCAt
Mzk0LDE0ICs0MDQsMTcgQEAgdm9pZCBDb250ZW50Q2hhbmdlT2JzZXJ2ZXI6OmFkanVzdE9ic2Vy
dmVkU3RhdGUoRXZlbnQgZXZlbnQpCiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgRXZlbnQ6Oklu
c3RhbGxlZERPTVRpbWVyOgogICAgIGNhc2UgRXZlbnQ6OlN0YXJ0ZWRGaXhlZE9ic2VydmF0aW9u
VGltZVdpbmRvdzoKKyAgICBjYXNlIEV2ZW50OjpBZGRlZFRyYW5zaXRpb246CiAgICAgICAgIEFT
U0VSVCghaGFzVmlzaWJsZUNoYW5nZVN0YXRlKCkpOwogICAgICAgICBzZXRIYXNJbmRldGVybWlu
YXRlU3RhdGUoKTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBFdmVudDo6RW5kZWRET01UaW1l
ckV4ZWN1dGlvbjoKKyAgICBjYXNlIEV2ZW50OjpFbmRlZFRyYW5zaXRpb246CiAgICAgICAgIHNl
dFNob3VsZE9ic2VydmVOZXh0U3R5bGVSZWNhbGMobV9kb2N1bWVudC5oYXNQZW5kaW5nU3R5bGVS
ZWNhbGMoKSk7CiAgICAgICAgIEZBTExUSFJPVUdIOwogICAgIGNhc2UgRXZlbnQ6OkVuZGVkU3R5
bGVSZWNhbGM6CiAgICAgY2FzZSBFdmVudDo6UmVtb3ZlZERPTVRpbWVyOgorICAgIGNhc2UgRXZl
bnQ6OkNhbmNlbGxlZFRyYW5zaXRpb246CiAgICAgICAgIGlmICghaXNPYnNlcnZhdGlvblRpbWVX
aW5kb3dBY3RpdmUoKSkKICAgICAgICAgICAgIGFkanVzdFN0YXRlQW5kTm90aWZ5Q29udGVudENo
YW5nZUlmTmVlZGVkKCk7CiAgICAgICAgIGJyZWFrOwpAQCAtNDEzLDYgKzQyNiw3IEBAIHZvaWQg
Q29udGVudENoYW5nZU9ic2VydmVyOjphZGp1c3RPYnNlcnZlZFN0YXRlKEV2ZW50IGV2ZW50KQog
ICAgICAgICAvLyBSZW1vdmUgcGVuZGluZyBhY3Rpdml0aWVzLiBXZSBkb24ndCBuZWVkIHRvIG9i
c2VydmUgdGhlbSBhbnltb3JlLgogICAgICAgICBzZXRTaG91bGRPYnNlcnZlTmV4dFN0eWxlUmVj
YWxjKGZhbHNlKTsKICAgICAgICAgY2xlYXJPYnNlcnZlZERPTVRpbWVycygpOworICAgICAgICBj
bGVhck9ic2VydmVkVHJhbnNpdGlvbnMoKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9pb3MvQ29udGVudENoYW5nZU9ic2VydmVyLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuaAppbmRleCBm
OWUxODQ1NzlkNjgzMTgxMzY2Y2Q4ODhhNDVkYTQyNmU1MTM1OWEzLi44OGY4ZmMxZGVlZTcwOTNm
NGZjODNhNWFiYWYyMGE1YTIxYzk1NWI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L2lvcy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2lv
cy9Db250ZW50Q2hhbmdlT2JzZXJ2ZXIuaApAQCAtMTE5LDYgKzExOSw3IEBAIHByaXZhdGU6CiAK
ICAgICB2b2lkIHNldFNob3VsZE9ic2VydmVET01UaW1lclNjaGVkdWxpbmcoYm9vbCBvYnNlcnZl
KSB7IG1faXNPYnNlcnZpbmdET01UaW1lclNjaGVkdWxpbmcgPSBvYnNlcnZlOyB9CiAgICAgYm9v
bCBpc09ic2VydmluZ0RPTVRpbWVyU2NoZWR1bGluZygpIGNvbnN0IHsgcmV0dXJuIG1faXNPYnNl
cnZpbmdET01UaW1lclNjaGVkdWxpbmc7IH0KKyAgICB2b2lkIHNldFNob3VsZE9ic2VydmVUcmFu
c2l0aW9ucyhib29sIG9ic2VydmUpIHsgbV9pc09ic2VydmluZ1RyYW5zaXRpb25zID0gb2JzZXJ2
ZTsgfQogICAgIGJvb2wgaXNPYnNlcnZpbmdUcmFuc2l0aW9ucygpIGNvbnN0IHsgcmV0dXJuIG1f
aXNPYnNlcnZpbmdUcmFuc2l0aW9uczsgfQogICAgIGJvb2wgaXNPYnNlcnZlZFByb3BlcnR5Rm9y
VHJhbnNpdGlvbihDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SWQpIGNvbnN0IHsgcmV0dXJuIHByb3Bl
cnR5SWQgPT0gQ1NTUHJvcGVydHlMZWZ0OyB9CiAgICAgdm9pZCBkb21UaW1lckV4ZWN1dGVEaWRT
dGFydChjb25zdCBET01UaW1lciYpOwpAQCAtMTI2LDYgKzEyNyw3IEBAIHByaXZhdGU6CiAgICAg
dm9pZCByZWdpc3RlckRPTVRpbWVyKGNvbnN0IERPTVRpbWVyJiB0aW1lcikgeyBtX0RPTVRpbWVy
TGlzdC5hZGQoJnRpbWVyKTsgfQogICAgIHZvaWQgdW5yZWdpc3RlckRPTVRpbWVyKGNvbnN0IERP
TVRpbWVyJiB0aW1lcikgeyBtX0RPTVRpbWVyTGlzdC5yZW1vdmUoJnRpbWVyKTsgfQogICAgIHZv
aWQgY2xlYXJPYnNlcnZlZERPTVRpbWVycygpIHsgbV9ET01UaW1lckxpc3QuY2xlYXIoKTsgfQor
ICAgIHZvaWQgY2xlYXJPYnNlcnZlZFRyYW5zaXRpb25zKCkgeyBtX2VsZW1lbnRzV2l0aFRyYW5z
aXRpb24uY2xlYXIoKTsgfQogICAgIGJvb2wgY29udGFpbnNPYnNlcnZlZERPTVRpbWVyKGNvbnN0
IERPTVRpbWVyJiB0aW1lcikgY29uc3QgeyByZXR1cm4gbV9ET01UaW1lckxpc3QuY29udGFpbnMo
JnRpbWVyKTsgfQogCiAgICAgdm9pZCBzdHlsZVJlY2FsY0RpZFN0YXJ0KCk7CkBAIC0xNDMsMTIg
KzE0NSwxMyBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBoYXNWaXNpYmxlQ2hhbmdlU3RhdGUoKSBj
b25zdCB7IHJldHVybiBvYnNlcnZlZENvbnRlbnRDaGFuZ2UoKSA9PSBXS0NvbnRlbnRWaXNpYmls
aXR5Q2hhbmdlOyB9CiAgICAgYm9vbCBoYXNPYnNlcnZlZERPTVRpbWVyKCkgY29uc3QgeyByZXR1
cm4gIW1fRE9NVGltZXJMaXN0LmlzRW1wdHkoKTsgfQorICAgIGJvb2wgaGFzT2JzZXJ2ZWRUcmFu
c2l0aW9uKCkgY29uc3QgeyByZXR1cm4gIW1fZWxlbWVudHNXaXRoVHJhbnNpdGlvbi5pc0VtcHR5
KCk7IH0KICAgICBib29sIGhhc0RldGVybWluYXRlU3RhdGUoKSBjb25zdDsKIAogICAgIHZvaWQg
c2V0SXNCZXR3ZWVuVG91Y2hFbmRBbmRNb3VzZU1vdmVkKGJvb2wgaXNCZXR3ZWVuKSB7IG1faXNC
ZXR3ZWVuVG91Y2hFbmRBbmRNb3VzZU1vdmVkID0gaXNCZXR3ZWVuOyB9CiAgICAgYm9vbCBpc0Jl
dHdlZW5Ub3VjaEVuZEFuZE1vdXNlTW92ZWQoKSBjb25zdCB7IHJldHVybiBtX2lzQmV0d2VlblRv
dWNoRW5kQW5kTW91c2VNb3ZlZDsgfQogCi0gICAgYm9vbCBoYXNQZW5kaW5nQWN0aXZpdHkoKSBj
b25zdCB7IHJldHVybiBoYXNPYnNlcnZlZERPTVRpbWVyKCkgfHwgbV9pc1dhaXRpbmdGb3JTdHls
ZVJlY2FsYyB8fCBpc09ic2VydmF0aW9uVGltZVdpbmRvd0FjdGl2ZSgpOyB9CisgICAgYm9vbCBo
YXNQZW5kaW5nQWN0aXZpdHkoKSBjb25zdCB7IHJldHVybiBoYXNPYnNlcnZlZERPTVRpbWVyKCkg
fHwgaGFzT2JzZXJ2ZWRUcmFuc2l0aW9uKCkgfHwgbV9pc1dhaXRpbmdGb3JTdHlsZVJlY2FsYyB8
fCBpc09ic2VydmF0aW9uVGltZVdpbmRvd0FjdGl2ZSgpOyB9CiAgICAgYm9vbCBpc09ic2VydmF0
aW9uVGltZVdpbmRvd0FjdGl2ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGVudE9ic2VydmF0aW9u
VGltZXIuaXNBY3RpdmUoKTsgfQogCiAgICAgdm9pZCBjb21wbGV0ZUR1cmF0aW9uQmFzZWRDb250
ZW50T2JzZXJ2YXRpb24oKTsKQEAgLTE2NSw2ICsxNjgsOSBAQCBwcml2YXRlOgogICAgICAgICBF
bmRlZERPTVRpbWVyRXhlY3V0aW9uLAogICAgICAgICBTdGFydGVkU3R5bGVSZWNhbGMsCiAgICAg
ICAgIEVuZGVkU3R5bGVSZWNhbGMsCisgICAgICAgIEFkZGVkVHJhbnNpdGlvbiwKKyAgICAgICAg
RW5kZWRUcmFuc2l0aW9uLAorICAgICAgICBDYW5jZWxsZWRUcmFuc2l0aW9uLAogICAgICAgICBT
dGFydGVkRml4ZWRPYnNlcnZhdGlvblRpbWVXaW5kb3csCiAgICAgICAgIEVuZGVkRml4ZWRPYnNl
cnZhdGlvblRpbWVXaW5kb3csCiAgICAgICAgIENvbnRlbnRWaXNpYmlsaXR5Q2hhbmdlZApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IDJiODJlYmRjZmI4Yzc0M2Y2ZTk3MTliNWFjOGQxNjA0MGI3ZDE5NDQuLmE2ZTIzNDY1NzVi
Y2FhYjM5ZWQ5MDQwNzg2MjFhNzk3YjQ3ZWMzYzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAx
OS0wMy0yMSAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgorCisgICAgICAgIFtDb250
ZW50Q2hhbmdlT2JzZXJ2ZXJdIFN0YXJ0IHRyYWNraW5nIGltcGxpY2l0IHRyYW5zaXRpb25zIGF0
IHRvdWNoU3RhcnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE5NjA1MQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDkwOTI5NTI+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L2V2ZW50cy90b3Vj
aC9pb3MvY29udGVudC1vYnNlcnZhdGlvbi8wbXMtdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250
ZW50LW9ic2VydmF0aW9uLzBtcy10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0Lmh0bWw6IEFkZGVk
LgorICAgICAgICAqIGZhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzEw
MG1zLXRyYW5zaXRpb24tb24tdG91Y2gtc3RhcnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2V2ZW50cy90b3VjaC9pb3MvY29udGVudC1vYnNlcnZhdGlvbi8xMDBtcy10cmFu
c2l0aW9uLW9uLXRvdWNoLXN0YXJ0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRz
L3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzEwbXMtZGVsYXktdHJhbnNpdGlvbi1vbi10
b3VjaC1zdGFydC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3Rv
dWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzEwbXMtZGVsYXktdHJhbnNpdGlvbi1vbi10b3Vj
aC1zdGFydC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy90b3VjaC9pb3MvY29u
dGVudC1vYnNlcnZhdGlvbi90cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWFuZC1yZW1vdmUtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy90b3VjaC9pb3MvY29udGVu
dC1vYnNlcnZhdGlvbi90cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWFuZC1yZW1vdmUuaHRtbDog
QWRkZWQuCisKIDIwMTktMDMtMjEgIE1pZ3VlbCBHb21leiAgPG1hZ29tZXpAaWdhbGlhLmNvbT4K
IAogICAgICAgICBVbnJldmlld2VkIEdUSysgYW5kIFdQRSBnYXJkZW5pbmcgYWZ0ZXIgcjI0MzI3
OC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50
LW9ic2VydmF0aW9uLzBtcy10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzBt
cy10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NmRi
NGM5NDA4YTZjMDMxMmRkMGUyZDQ4NWMwMWI4MzVlN2NmOTNkCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRpb24vMG1z
LXRyYW5zaXRpb24tb24tdG91Y2gtc3RhcnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMiBAQAor
UEFTUyBpZiAnY2xpY2tlZCcgdGV4dCBpcyBub3Qgc2hvd24gYmVsb3cuCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzBt
cy10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50
cy90b3VjaC9pb3MvY29udGVudC1vYnNlcnZhdGlvbi8wbXMtdHJhbnNpdGlvbi1vbi10b3VjaC1z
dGFydC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjYxMDFhNWYwNjY3YWY2NGNkZmY0OTUxOTNjYWY4NDlhNzlj
OWZjZGEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9p
b3MvY29udGVudC1vYnNlcnZhdGlvbi8wbXMtdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC5odG1s
CkBAIC0wLDAgKzEsNjAgQEAKKzxodG1sPgorPGhlYWQ+Cis8dGl0bGU+VGhpcyB0ZXN0cyB0aGUg
Y2FzZSB3aGVuIHRvdWNoRW5kIHRyaWdnZXJzIGEgMG1zIHRyYW5zaXRpb24uPC90aXRsZT4KKzxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi8uLi8uLi9yZXNvdXJjZXMvYmFzaWMtZ2VzdHVyZXMuanMiPjwv
c2NyaXB0PgorPHN0eWxlPgorI3RhcHRoaXMgeworICAgIHdpZHRoOiA0MDBweDsKKyAgICBoZWln
aHQ6IDQwMHB4OworICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyZWVuOworfQorCisjYmVjb21lc1Zp
c2libGUgeworCXBvc2l0aW9uOiBhYnNvbHV0ZTsKKwl0b3A6IDEwMHB4OworCWxlZnQ6IC0xMDAw
cHg7CisJd2lkdGg6IDEwMHB4OworCWhlaWdodDogMTAwcHg7CisJYmFja2dyb3VuZC1jb2xvcjog
Z3JlZW47CisJdHJhbnNpdGlvbjogbGVmdCAwbXMgZWFzZS1pbi1vdXQgMG1zOworfQorPC9zdHls
ZT4KKzxzY3JpcHQ+Cithc3luYyBmdW5jdGlvbiB0ZXN0KCkgeworICAgIGlmICghd2luZG93LnRl
c3RSdW5uZXIgfHwgIXRlc3RSdW5uZXIucnVuVUlTY3JpcHQpCisgICAgICAgIHJldHVybjsKKyAg
ICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldENv
bnRlbnRDaGFuZ2VPYnNlcnZlckVuYWJsZWQodHJ1ZSk7CisKKyAgICB0ZXN0UnVubmVyLndhaXRV
bnRpbERvbmUoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgIGxldCByZWN0
ID0gdGFwdGhpcy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKKyAgICBsZXQgeCA9IHJlY3QubGVm
dCArIHJlY3Qud2lkdGggLyAyOworICAgIGxldCB5ID0gcmVjdC50b3AgKyByZWN0LmhlaWdodCAv
IDI7CisKKyAgICBhd2FpdCB0YXBBdFBvaW50KHgsIHkpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+
Cis8Ym9keSBvbmxvYWQ9InRlc3QoKSI+Cis8ZGl2IGlkPXRhcHRoaXM+UEFTUyBpZiAnY2xpY2tl
ZCcgdGV4dCBpcyBub3Qgc2hvd24gYmVsb3cuPC9kaXY+Cis8ZGl2IGlkPWJlY29tZXNWaXNpYmxl
PjwvZGl2PgorPHByZSBpZD1yZXN1bHQ+PC9wcmU+Cis8c2NyaXB0PgordGFwdGhpcy5hZGRFdmVu
dExpc3RlbmVyKCJ0b3VjaHN0YXJ0IiwgZnVuY3Rpb24oIGV2ZW50ICkgeworICAgIGJlY29tZXNW
aXNpYmxlLnN0eWxlLmxlZnQgPSAiMTBweCI7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQor
ICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKK30sIGZhbHNlKTsKKworYmVjb21lc1Zp
c2libGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlvbiggZXZlbnQgKSB7ICAgCisg
ICAgcmVzdWx0LmlubmVySFRNTCA9ICJjbGlja2VkIGhpZGRlbiI7Cit9LCBmYWxzZSk7CisKK3Rh
cHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlvbiggZXZlbnQgKSB7ICAgCisg
ICAgcmVzdWx0LmlubmVySFRNTCA9ICJjbGlja2VkIjsKK30sIGZhbHNlKTsKKzwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91
Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRpb24vMTAwbXMtdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFy
dC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3MvY29udGVu
dC1vYnNlcnZhdGlvbi8xMDBtcy10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi42NmRiNGM5NDA4YTZjMDMxMmRkMGUyZDQ4NWMwMWI4MzVlN2NmOTNkCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL2NvbnRl
bnQtb2JzZXJ2YXRpb24vMTAwbXMtdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwyIEBACitQQVNTIGlmICdjbGlja2VkJyB0ZXh0IGlzIG5vdCBzaG93biBi
ZWxvdy4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL2Nv
bnRlbnQtb2JzZXJ2YXRpb24vMTAwbXMtdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRpb24vMTAw
bXMtdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYwZWU4NmVlOTM2
NGZjNGQwOTM0ZjJjZTQxY2YwY2E3Y2JjOGY1MmUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3MvY29udGVudC1vYnNlcnZhdGlvbi8xMDBtcy10cmFu
c2l0aW9uLW9uLXRvdWNoLXN0YXJ0Lmh0bWwKQEAgLTAsMCArMSw2MCBAQAorPGh0bWw+Cis8aGVh
ZD4KKzx0aXRsZT5UaGlzIHRlc3RzIHRoZSBjYXNlIHdoZW4gdG91Y2hFbmQgdHJpZ2dlcnMgYSBu
b24tMG1zIHRyYW5zaXRpb24uPC90aXRsZT4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi8uLi8uLi9y
ZXNvdXJjZXMvYmFzaWMtZ2VzdHVyZXMuanMiPjwvc2NyaXB0PgorPHN0eWxlPgorI3RhcHRoaXMg
eworICAgIHdpZHRoOiA0MDBweDsKKyAgICBoZWlnaHQ6IDQwMHB4OworICAgIGJvcmRlcjogMXB4
IHNvbGlkIGdyZWVuOworfQorCisjYmVjb21lc1Zpc2libGUgeworCXBvc2l0aW9uOiBhYnNvbHV0
ZTsKKwl0b3A6IDEwMHB4OworCWxlZnQ6IC0xMDAwcHg7CisJd2lkdGg6IDEwMHB4OworCWhlaWdo
dDogMTAwcHg7CisJYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47CisJdHJhbnNpdGlvbjogbGVmdCAx
MDBtcyBlYXNlLWluLW91dCAwbXM7Cit9Cis8L3N0eWxlPgorPHNjcmlwdD4KK2FzeW5jIGZ1bmN0
aW9uIHRlc3QoKSB7CisgICAgaWYgKCF3aW5kb3cudGVzdFJ1bm5lciB8fCAhdGVzdFJ1bm5lci5y
dW5VSVNjcmlwdCkKKyAgICAgICAgcmV0dXJuOworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQor
ICAgICAgICBpbnRlcm5hbHMuc2V0dGluZ3Muc2V0Q29udGVudENoYW5nZU9ic2VydmVyRW5hYmxl
ZCh0cnVlKTsKKworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgIHRlc3RSdW5u
ZXIuZHVtcEFzVGV4dCgpOworCisgICAgbGV0IHJlY3QgPSB0YXB0aGlzLmdldEJvdW5kaW5nQ2xp
ZW50UmVjdCgpOworICAgIGxldCB4ID0gcmVjdC5sZWZ0ICsgcmVjdC53aWR0aCAvIDI7CisgICAg
bGV0IHkgPSByZWN0LnRvcCArIHJlY3QuaGVpZ2h0IC8gMjsKKworICAgIGF3YWl0IHRhcEF0UG9p
bnQoeCwgeSk7Cit9Cis8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0idGVzdCgpIj4K
KzxkaXYgaWQ9dGFwdGhpcz5QQVNTIGlmICdjbGlja2VkJyB0ZXh0IGlzIG5vdCBzaG93biBiZWxv
dy48L2Rpdj4KKzxkaXYgaWQ9YmVjb21lc1Zpc2libGU+PC9kaXY+Cis8cHJlIGlkPXJlc3VsdD48
L3ByZT4KKzxzY3JpcHQ+Cit0YXB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLCBm
dW5jdGlvbiggZXZlbnQgKSB7CisgICAgYmVjb21lc1Zpc2libGUuc3R5bGUubGVmdCA9ICIxMHB4
IjsKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5
RG9uZSgpOworfSwgZmFsc2UpOworCitiZWNvbWVzVmlzaWJsZS5hZGRFdmVudExpc3RlbmVyKCJj
bGljayIsIGZ1bmN0aW9uKCBldmVudCApIHsgICAKKyAgICByZXN1bHQuaW5uZXJIVE1MID0gImNs
aWNrZWQgaGlkZGVuIjsKK30sIGZhbHNlKTsKKwordGFwdGhpcy5hZGRFdmVudExpc3RlbmVyKCJj
bGljayIsIGZ1bmN0aW9uKCBldmVudCApIHsgICAKKyAgICByZXN1bHQuaW5uZXJIVE1MID0gImNs
aWNrZWQiOworfSwgZmFsc2UpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3MvY29udGVudC1vYnNlcnZhdGlv
bi8xMG1zLWRlbGF5LXRyYW5zaXRpb24tb24tdG91Y2gtc3RhcnQtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRpb24vMTBtcy1k
ZWxheS10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42
NmRiNGM5NDA4YTZjMDMxMmRkMGUyZDQ4NWMwMWI4MzVlN2NmOTNkCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRpb24v
MTBtcy1kZWxheS10cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDIgQEAKK1BBU1MgaWYgJ2NsaWNrZWQnIHRleHQgaXMgbm90IHNob3duIGJlbG93LgorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3MvY29udGVudC1vYnNl
cnZhdGlvbi8xMG1zLWRlbGF5LXRyYW5zaXRpb24tb24tdG91Y2gtc3RhcnQuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9ic2VydmF0aW9uLzEwbXMtZGVs
YXktdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUyODk0Y2RmMzMx
ZDlmY2NjYWEyZTRlMGMyYzg2MTdmMGZjMmM5ODIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3MvY29udGVudC1vYnNlcnZhdGlvbi8xMG1zLWRlbGF5
LXRyYW5zaXRpb24tb24tdG91Y2gtc3RhcnQuaHRtbApAQCAtMCwwICsxLDYwIEBACis8aHRtbD4K
KzxoZWFkPgorPHRpdGxlPlRoaXMgdGVzdHMgdGhlIGNhc2Ugd2hlbiB0b3VjaEVuZCB0cmlnZ2Vy
cyBhIG5vbi0wbXMgdHJhbnNpdGlvbiB3aXRoIGRlbGF5LjwvdGl0bGU+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2Jhc2ljLWdlc3R1cmVzLmpzIj48L3NjcmlwdD4KKzxz
dHlsZT4KKyN0YXB0aGlzIHsKKyAgICB3aWR0aDogNDAwcHg7CisgICAgaGVpZ2h0OiA0MDBweDsK
KyAgICBib3JkZXI6IDFweCBzb2xpZCBncmVlbjsKK30KKworI2JlY29tZXNWaXNpYmxlIHsKKwlw
b3NpdGlvbjogYWJzb2x1dGU7CisJdG9wOiAxMDBweDsKKwlsZWZ0OiAtMTAwMHB4OworCXdpZHRo
OiAxMDBweDsKKwloZWlnaHQ6IDEwMHB4OworCWJhY2tncm91bmQtY29sb3I6IGdyZWVuOworCXRy
YW5zaXRpb246IGxlZnQgMTBtcyBlYXNlLWluLW91dCAxMG1zOworfQorPC9zdHlsZT4KKzxzY3Jp
cHQ+Cithc3luYyBmdW5jdGlvbiB0ZXN0KCkgeworICAgIGlmICghd2luZG93LnRlc3RSdW5uZXIg
fHwgIXRlc3RSdW5uZXIucnVuVUlTY3JpcHQpCisgICAgICAgIHJldHVybjsKKyAgICBpZiAod2lu
ZG93LmludGVybmFscykKKyAgICAgICAgaW50ZXJuYWxzLnNldHRpbmdzLnNldENvbnRlbnRDaGFu
Z2VPYnNlcnZlckVuYWJsZWQodHJ1ZSk7CisKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUo
KTsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgIGxldCByZWN0ID0gdGFwdGhp
cy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKKyAgICBsZXQgeCA9IHJlY3QubGVmdCArIHJlY3Qu
d2lkdGggLyAyOworICAgIGxldCB5ID0gcmVjdC50b3AgKyByZWN0LmhlaWdodCAvIDI7CisKKyAg
ICBhd2FpdCB0YXBBdFBvaW50KHgsIHkpOworfQorPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBv
bmxvYWQ9InRlc3QoKSI+Cis8ZGl2IGlkPXRhcHRoaXM+UEFTUyBpZiAnY2xpY2tlZCcgdGV4dCBp
cyBub3Qgc2hvd24gYmVsb3cuPC9kaXY+Cis8ZGl2IGlkPWJlY29tZXNWaXNpYmxlPjwvZGl2Pgor
PHByZSBpZD1yZXN1bHQ+PC9wcmU+Cis8c2NyaXB0PgordGFwdGhpcy5hZGRFdmVudExpc3RlbmVy
KCJ0b3VjaHN0YXJ0IiwgZnVuY3Rpb24oIGV2ZW50ICkgeworICAgIGJlY29tZXNWaXNpYmxlLnN0
eWxlLmxlZnQgPSAiMTBweCI7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0
ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKK30sIGZhbHNlKTsKKworYmVjb21lc1Zpc2libGUuYWRk
RXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlvbiggZXZlbnQgKSB7ICAgCisgICAgcmVzdWx0
LmlubmVySFRNTCA9ICJjbGlja2VkIGhpZGRlbiI7Cit9LCBmYWxzZSk7CisKK3RhcHRoaXMuYWRk
RXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlvbiggZXZlbnQgKSB7ICAgCisgICAgcmVzdWx0
LmlubmVySFRNTCA9ICJjbGlja2VkIjsKK30sIGZhbHNlKTsKKzwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL2Nv
bnRlbnQtb2JzZXJ2YXRpb24vdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC1hbmQtcmVtb3ZlLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250ZW50LW9i
c2VydmF0aW9uL3RyYW5zaXRpb24tb24tdG91Y2gtc3RhcnQtYW5kLXJlbW92ZS1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNjc3ZTNhMzFlNGQyNzU5M2FhOTRkYmQ2MzdhNDUzYWY4Y2VkZGQ3OAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2lvcy9jb250
ZW50LW9ic2VydmF0aW9uL3RyYW5zaXRpb24tb24tdG91Y2gtc3RhcnQtYW5kLXJlbW92ZS1leHBl
Y3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitQQVNTIGlmICdjbGlja2VkJyB0ZXh0IGlzIHNob3du
IGJlbG93LgorY2xpY2tlZApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91
Y2gvaW9zL2NvbnRlbnQtb2JzZXJ2YXRpb24vdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC1hbmQt
cmVtb3ZlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9pb3MvY29udGVudC1v
YnNlcnZhdGlvbi90cmFuc2l0aW9uLW9uLXRvdWNoLXN0YXJ0LWFuZC1yZW1vdmUuaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi40YmRhZGVkYTU5YzcwM2EwZDVjNDZiZDkxNTJiY2FiODU5NGQxMzA1Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvaW9zL2NvbnRlbnQtb2Jz
ZXJ2YXRpb24vdHJhbnNpdGlvbi1vbi10b3VjaC1zdGFydC1hbmQtcmVtb3ZlLmh0bWwKQEAgLTAs
MCArMSw2MCBAQAorPGh0bWw+Cis8aGVhZD4KKzx0aXRsZT5UaGlzIHRlc3RzIHRoZSBjYXNlIHdo
ZW4gdG91Y2hFbmQgdHJpZ2dlcnMgYSB0cmFuc2l0aW9uIGFuZCB0aGUgZWxlbWVudCBpcyByZW1v
dmVkLjwvdGl0bGU+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2Jhc2lj
LWdlc3R1cmVzLmpzIj48L3NjcmlwdD4KKzxzdHlsZT4KKyN0YXB0aGlzIHsKKyAgICB3aWR0aDog
NDAwcHg7CisgICAgaGVpZ2h0OiA0MDBweDsKKyAgICBib3JkZXI6IDFweCBzb2xpZCBncmVlbjsK
K30KKworI2JlY29tZXNWaXNpYmxlIHsKKwlwb3NpdGlvbjogYWJzb2x1dGU7CisJdG9wOiAxMDBw
eDsKKwlsZWZ0OiAtMTAwMHB4OworCXdpZHRoOiAxMDBweDsKKwloZWlnaHQ6IDEwMHB4OworCWJh
Y2tncm91bmQtY29sb3I6IGdyZWVuOworCXRyYW5zaXRpb246IGxlZnQgMTAwbXMgZWFzZS1pbi1v
dXQgMG1zOworfQorPC9zdHlsZT4KKzxzY3JpcHQ+Cithc3luYyBmdW5jdGlvbiB0ZXN0KCkgewor
ICAgIGlmICghd2luZG93LnRlc3RSdW5uZXIgfHwgIXRlc3RSdW5uZXIucnVuVUlTY3JpcHQpCisg
ICAgICAgIHJldHVybjsKKyAgICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgaW50ZXJu
YWxzLnNldHRpbmdzLnNldENvbnRlbnRDaGFuZ2VPYnNlcnZlckVuYWJsZWQodHJ1ZSk7CisKKyAg
ICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQo
KTsKKworICAgIGxldCByZWN0ID0gdGFwdGhpcy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKKyAg
ICBsZXQgeCA9IHJlY3QubGVmdCArIHJlY3Qud2lkdGggLyAyOworICAgIGxldCB5ID0gcmVjdC50
b3AgKyByZWN0LmhlaWdodCAvIDI7CisKKyAgICBhd2FpdCB0YXBBdFBvaW50KHgsIHkpOworfQor
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InRlc3QoKSI+Cis8ZGl2IGlkPXRhcHRo
aXM+UEFTUyBpZiAnY2xpY2tlZCcgdGV4dCBpcyBzaG93biBiZWxvdy48L2Rpdj4KKzxkaXYgaWQ9
YmVjb21lc1Zpc2libGU+PC9kaXY+Cis8cHJlIGlkPXJlc3VsdD48L3ByZT4KKzxzY3JpcHQ+Cit0
YXB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLCBmdW5jdGlvbiggZXZlbnQgKSB7
CisgICAgYmVjb21lc1Zpc2libGUucmVtb3ZlKCk7Cit9LCBmYWxzZSk7CisKK2JlY29tZXNWaXNp
YmxlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24oIGV2ZW50ICkgeyAgIAorICAg
IHJlc3VsdC5pbm5lckhUTUwgPSAiY2xpY2tlZCBoaWRkZW4iOworfSwgZmFsc2UpOworCit0YXB0
aGlzLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24oIGV2ZW50ICkgeyAgIAorICAg
IHJlc3VsdC5pbm5lckhUTUwgPSAiY2xpY2tlZCI7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQorICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKK30sIGZhbHNlKTsKKzwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgo=
</data>
<flag name="review"
          id="382006"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>