<?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>228269</bug_id>
          
          <creation_ts>2021-07-24 16:24:34 -0700</creation_ts>
          <short_desc>[iOS] Unified field is unselected after focusing URL bar if text was selected in a fixed position container</short_desc>
          <delta_ts>2021-07-25 12:40:44 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>HTML Editing</component>
          <version>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="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>bdakin</cc>
    
    <cc>hi</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1779343</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-07-24 16:24:34 -0700</bug_when>
    <thetext>rdar://80556392</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1779347</commentid>
    <comment_count>1</comment_count>
      <attachid>434176</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-07-24 17:17:55 -0700</bug_when>
    <thetext>Created attachment 434176
For EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1779371</commentid>
    <comment_count>2</comment_count>
      <attachid>434176</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-07-25 12:36:27 -0700</bug_when>
    <thetext>Comment on attachment 434176
For EWS

Thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1779372</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-07-25 12:40:43 -0700</bug_when>
    <thetext>Committed r280288 (239946@main): &lt;https://commits.webkit.org/239946@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 434176.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>434176</attachid>
            <date>2021-07-24 17:17:55 -0700</date>
            <delta_ts>2021-07-25 12:40:44 -0700</delta_ts>
            <desc>For EWS</desc>
            <filename>bug-228269-20210724171755.patch</filename>
            <type>text/plain</type>
            <size>32190</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgwMjg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGYxYTA1YmNiNjVhNzdmYTQw
ZjMwODQxM2JiYzMxNmFjMzk4MTUyYWUuLjgyZmQ1MmYwMjZiNTJkZjk4ZWI3ZDdmYzY3M2U5NTJl
YWUyOTdkN2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDEgQEAKKzIwMjEtMDctMjQgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gVW5pZmllZCBm
aWVsZCBpcyB1bnNlbGVjdGVkIGFmdGVyIGZvY3VzaW5nIFVSTCBiYXIgaWYgdGV4dCB3YXMgc2Vs
ZWN0ZWQgaW4gYSBmaXhlZCBwb3NpdGlvbiBjb250YWluZXIKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyODI2OQorICAgICAgICByZGFyOi8vODA1NTYz
OTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbiBT
YWZhcmkgb24gaU9TIDE1LCBpZiB0aGUgc2VsZWN0aW9uIChlaXRoZXIgcmFuZ2VkIG9yIGNhcmV0
KSBpcyBpbnNpZGUgYSBmaXhlZCBwb3NpdGlvbiBjb250YWluZXIgd2hlbiB0aGUKKyAgICAgICAg
dXNlciB0YXBzIG9uIHRoZSB1bmlmaWVkIGZpZWxkLCB3ZSdsbCBpbW1lZGlhdGVseSBjbGVhciB0
aGUgdGV4dCBzZWxlY3Rpb24gaW5zaWRlIHRoZSB1bmlmaWVkIGZpZWxkIHVwb24KKyAgICAgICAg
YnJpbmdpbmcgdXAgdGhlIGtleWJvYXJkLiBUaGlzIGhhcHBlbnMgYmVjYXVzZSB0aGUgdGFiIHBp
bGwgaW4gaU9TIDE1IGlzIGxvd2VyZWQgYXMgdGhlIFVSTCBiYXIgaXMgZm9jdXNlZCwKKyAgICAg
ICAgd2hpY2ggY2F1c2VzIHRoZSB3ZWIgdmlldyB0byBzY3JvbGwgc2xpZ2h0bHkuIFRoaXMsIGlu
IHR1cm4sIGluZHVjZXMgYSBicmllZiB1bnN0YWJsZSBzY3JvbGxpbmcgdHJlZSBzdGF0ZSwKKyAg
ICAgICAgd2hpY2ggdGhlbiBjYXVzZXMgdXMgdG8gdGVtcG9yYXJpbHkgaGlkZSBhbmQgc2hvdyBz
ZWxlY3Rpb24gdmlld3Mgd2hpbGUgc2Nyb2xsaW5nIGluIHVuc3RhYmxlIHN0YXRlIChzZWUKKyAg
ICAgICAgcjIwOTkzMSkgYnkgY2FsbGluZyBgLWRlYWN0aXZhdGVTZWxlY3Rpb25gIGFuZCB0aGVu
IGAtYWN0aXZhdGVTZWxlY3Rpb25gIG9uIHRoZSB0ZXh0IGludGVyYWN0aW9uIGFzc2lzdGFudC4K
KyAgICAgICAgQ2FsbGluZyBgLVtVSVdLVGV4dEludGVyYWN0aW9uQXNzaXN0YW50IGFjdGl2YXRl
U2VsZWN0aW9uXWAgdGhlbiBjYXVzZXMgVUlLaXQgdG8gZGlzcGF0Y2ggYQorICAgICAgICBVSVRl
eHRTZWxlY3Rpb25WaWV3QWN0aXZhdGVkTm90aWZpY2F0aW9uOyBJbiB0aGUgdW5pZmllZCBmaWVs
ZCwgd2hpY2ggaXMgYSBVSVRleHRGaWVsZCBzdWJjbGFzcywgVUlLaXQgY29kZSB0aGVuCisgICAg
ICAgIGxpc3RlbnMgZm9yIHRoaXMgbm90aWZpY2F0aW9uIGFuZCByZXNwb25kcyB0byBpdCBieSBj
bGVhcmluZyB0aGUgc2VsZWN0aW9uIGlmIHRoZSBuZXdseSBhY3RpdmF0ZWQgc2VsZWN0aW9uJ3MK
KyAgICAgICAgaG9zdCB2aWV3IChXS0NvbnRlbnRWaWV3KSBpcyBkaWZmZXJlbnQgdGhhbiBpdHNl
bGYsIHRoZXJlYnkgY2F1c2luZyB0aGUgYnVnLgorCisgICAgICAgIFRvIGZpeCB0aGlzLCB3ZSBz
aW1wbHkgbWFrZSB0d28gKG1pbm9yKSBhZGp1c3RtZW50cyB0byB0aGUgbG9naWMgZm9yIHRlbXBv
cmFyaWx5IGhpZGluZyBhbmQgc2hvd2luZyB0aGUKKyAgICAgICAgc2VsZWN0aW9uIHdoaWxlIHBl
cmZvcm1pbmcgYW4gdW5zdGFibGUgc2Nyb2xsLiBTZWUgYmVsb3cgZm9yIG1vcmUgZGV0YWlscy4K
KworICAgICAgICBUZXN0OiBlZGl0aW5nL3NlbGVjdGlvbi9pb3Mvc2Nyb2xsaW5nLXdpdGgtZml4
ZWQtc2VsZWN0aW9uLWRvZXMtbm90LXVuc2VsZWN0LW5hdGl2ZS10ZXh0LWZpZWxkLmh0bWwKKwor
ICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tOgorICAg
ICAgICAoLVtXS0NvbnRlbnRWaWV3IHNob3VsZEhpZGVTZWxlY3Rpb25XaGVuU2Nyb2xsaW5nXSk6
CisKKyAgICAgICAgT25seSBoaWRlIGFuZCAobGF0ZXIpIHJlc3RvcmUgdGhlIHNlbGVjdGlvbiBp
biBub24tZWRpdGFibGUgdGV4dCBpZiB0aGUgc2VsZWN0aW9uIGlzIHJhbmdlZC4gVGhpcyBpcyBi
ZWNhdXNlCisgICAgICAgIGNhcmV0IHNlbGVjdGlvbnMgaW4gbm9uLWVkaXRhYmxlIGNvbnRlbnQg
YXJlIG5vdCB1c2VyLXZpc2libGUgYW55d2F5cywgc28gdGhlcmUncyBubyBuZWVkIHRvIHRlbXBv
cmFyaWx5CisgICAgICAgIHN1cHByZXNzIHRoZSBzZWxlY3Rpb24uCisKKyAgICAgICAgKC1bV0tD
b250ZW50VmlldyBfdXBkYXRlQ2hhbmdlZFNlbGVjdGlvbjpdKToKKworICAgICAgICBPbmx5IGF0
dGVtcHQgdG8gc2hvdyB0aGUgc2VsZWN0aW9uIHZpZXdzIGFnYWluIGlmIGRvaW5nIHNvIGRvZXNu
J3QgY2F1c2UgdXMgdG8gc3RlYWwgZmlyc3QgcmVzcG9uZGVyIHN0YXR1cyBhd2F5CisgICAgICAg
IGZyb20gdGhlIGV4aXN0aW5nIGZpcnN0IHJlc3BvbmRlcjsgb3RoZXJ3aXNlLCB3ZSdsbCB3YWl0
IHVudGlsIHdlIGAtYmVjb21lRmlyc3RSZXNwb25kZXJgIHRvIGAtYWN0aXZhdGVTZWxlY3Rpb25g
LgorCisgICAgICAgICgtW1dLQ29udGVudFZpZXcgc2VsZWN0aW9uSW50ZXJhY3Rpb25Bc3Npc3Rh
bnRdKTogRGVsZXRlZC4KKwogMjAyMS0wNy0yNCAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBs
ZS5jb20+CiAKICAgICAgICAgW0FwcGxlIFBheV0gRG8gbm90IGFkZCBjb3Vwb24gY29kZSBgQXBw
bGVQYXlFcnJvckNvZGVgIHZhbHVlcyBmb3Igc3lzdGVtcyB0aGF0IGRvIG5vdCBzdXBwb3J0IGl0
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0lu
dGVyYWN0aW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJ
bnRlcmFjdGlvbi5tbQppbmRleCBkMWU5NTdiN2EzZjc2ZjdhNGRhZTExZTRhYzEwMTA2MWRmNGUw
NTgyLi4wMWViZjM5MmJiOTQ3ODI1Mjk1NzdmZDkxYzg1NjRmM2QxZmI3ZGQ1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1t
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rp
b24ubW0KQEAgLTE0MjQsNyArMTQyNCw3IEBAIC0gKEJPT0wpc2hvdWxkSGlkZVNlbGVjdGlvbldo
ZW5TY3JvbGxpbmcKICAgICAgICAgcmV0dXJuIF9mb2N1c2VkRWxlbWVudEluZm9ybWF0aW9uLmlu
c2lkZUZpeGVkUG9zaXRpb247CiAKICAgICBhdXRvJiBlZGl0b3JTdGF0ZSA9IF9wYWdlLT5lZGl0
b3JTdGF0ZSgpOwotICAgIHJldHVybiAhZWRpdG9yU3RhdGUuaXNNaXNzaW5nUG9zdExheW91dERh
dGEgJiYgZWRpdG9yU3RhdGUucG9zdExheW91dERhdGEoKS5pbnNpZGVGaXhlZFBvc2l0aW9uOwor
ICAgIHJldHVybiAhZWRpdG9yU3RhdGUuaXNNaXNzaW5nUG9zdExheW91dERhdGEgJiYgZWRpdG9y
U3RhdGUuc2VsZWN0aW9uSXNSYW5nZSAmJiBlZGl0b3JTdGF0ZS5wb3N0TGF5b3V0RGF0YSgpLmlu
c2lkZUZpeGVkUG9zaXRpb247CiB9CiAKIC0gKEJPT0wpaXNFZGl0YWJsZQpAQCAtNTYxNiwxMSAr
NTYxNiw2IEBAIC0gKFVJVGV4dEludGVyYWN0aW9uQXNzaXN0YW50ICopaW50ZXJhY3Rpb25Bc3Np
c3RhbnQKICAgICByZXR1cm4gX3RleHRJbnRlcmFjdGlvbkFzc2lzdGFudC5nZXQoKTsKIH0KIAot
LSAoaWQ8VUlTZWxlY3Rpb25JbnRlcmFjdGlvbkFzc2lzdGFudD4pc2VsZWN0aW9uSW50ZXJhY3Rp
b25Bc3Npc3RhbnQKLXsKLSAgICByZXR1cm4gbmlsOwotfQotCiAvLyBOU1JhbmdlIHN1cHBvcnQu
ICBXb3VsZCBsaWtlIHRvIGRlcHJlY2F0ZSB0byB0aGUgZXh0ZW50IHBvc3NpYmxlLCBhbHRob3Vn
aCBzb21lIHN1cHBvcnQKIC8vIChpLmUuIHNlbGVjdGlvblJhbmdlKSBoYXMgc2hpcHBlZCBhcyBB
UEkuCiAtIChOU1JhbmdlKXNlbGVjdGlvblJhbmdlCkBAIC03MjY5LDkgKzcyNjQsOCBAQCAtICh2
b2lkKV91cGRhdGVDaGFuZ2VkU2VsZWN0aW9uOihCT09MKWZvcmNlCiAgICAgfQogCiAgICAgaWYg
KHBvc3RMYXlvdXREYXRhLmlzU3RhYmxlU3RhdGVVcGRhdGUgJiYgX25lZWRzRGVmZXJyZWRFbmRT
Y3JvbGxpbmdTZWxlY3Rpb25VcGRhdGUgJiYgX3BhZ2UtPmluU3RhYmxlU3RhdGUoKSkgewotICAg
ICAgICBbW3NlbGYgc2VsZWN0aW9uSW50ZXJhY3Rpb25Bc3Npc3RhbnRdIHNob3dTZWxlY3Rpb25D
b21tYW5kc107Ci0KLSAgICAgICAgaWYgKCFfc3VwcHJlc3NTZWxlY3Rpb25Bc3Npc3RhbnRSZWFz
b25zKQorICAgICAgICBhdXRvIGZpcnN0UmVzcG9uZGVyID0gc2VsZi5maXJzdFJlc3BvbmRlcjsK
KyAgICAgICAgaWYgKCghZmlyc3RSZXNwb25kZXIgfHwgc2VsZiA9PSBmaXJzdFJlc3BvbmRlcikg
JiYgIV9zdXBwcmVzc1NlbGVjdGlvbkFzc2lzdGFudFJlYXNvbnMpCiAgICAgICAgICAgICBbX3Rl
eHRJbnRlcmFjdGlvbkFzc2lzdGFudCBhY3RpdmF0ZVNlbGVjdGlvbl07CiAKICAgICAgICAgW190
ZXh0SW50ZXJhY3Rpb25Bc3Npc3RhbnQgZGlkRW5kU2Nyb2xsaW5nT3ZlcmZsb3ddOwpkaWZmIC0t
Z2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDIwYjliYjU1OThj
ZTQ1ZWRkNzY4OGE3ZDcyYzcwZWU0OGNhY2JmZjYuLmE3ZTgyNzAxNDVjNWYwZDg5YzRkZmYyZTAw
ZTYyODAxNDEzYmYyYmEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSw3OCBAQAorMjAyMS0wNy0yNCAgV2Vuc29uIEhzaWVoICA8d2Vu
c29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBVbmlmaWVkIGZpZWxkIGlzIHVu
c2VsZWN0ZWQgYWZ0ZXIgZm9jdXNpbmcgVVJMIGJhciBpZiB0ZXh0IHdhcyBzZWxlY3RlZCBpbiBh
IGZpeGVkIHBvc2l0aW9uIGNvbnRhaW5lcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjI4MjY5CisgICAgICAgIHJkYXI6Ly84MDU1NjM5MgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlIGFscmVhZHkgaGF2
ZSBzb21lIHZlcnkgYmFzaWMgc3VwcG9ydCBmb3IgaW5zdGFsbGluZyBhbmQgcmVtb3ZpbmcgbmF0
aXZlIHRleHQgZmllbGRzIGluIHRoZSB2aWV3IGhpZXJhcmNoeSwKKyAgICAgICAgdGhyb3VnaCBg
VGVzdFJ1bm5lcjo6KGFkZHxyZW1vdmUpQ2hyb21lSW5wdXRGaWVsZCgpYC4gSW4gb3JkZXIgdG8g
c3VwcG9ydCB0aGUgbmV3IGxheW91dCB0ZXN0LCB3ZSBhZGRpdGlvbmFsbHkKKyAgICAgICAgaW1w
bGVtZW50IHRoZSBhYmlsaXR5IHRvOgorCisgICAgICAgIC0gU2V0IHRleHQgaW5zaWRlIHRoZSBu
YXRpdmUgY2hyb21lIGlucHV0IGZpZWxkIHRoYXQgd2FzIGluc3RhbGxlZCB1c2luZyBgYWRkQ2hy
b21lSW5wdXRGaWVsZCgpYC4KKyAgICAgICAgLSBTZWxlY3QgYWxsIHRleHQgaW5zaWRlIHRoZSBj
aHJvbWUgaW5wdXQgZmllbGQuCisgICAgICAgIC0gUXVlcnkgdGhlIGNocm9tZSBpbnB1dCBmaWVs
ZCBmb3IgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCB0ZXh0LgorCisgICAgICAgIFdlIG9ubHkgc3Vw
cG9ydCBpT1MgZm9yIHRoZSB0aW1lIGJlaW5nLCB3aXRoIHN0dWJzIG9uIG90aGVyIHBsYXRmb3Jt
cywgc2luY2UgdGhlIG5ldyB0ZXN0IHRoYXQgdXNlcyB0aGlzCisgICAgICAgIGZ1bmN0aW9uYWxp
dHkgaXMgaU9TLXNwZWNpZmljOyBpZiBuZWVkZWQgaW4gdGhlIGZ1dHVyZSBmb3IgYSBzaW1pbGFy
IHRlc3Qgb24gb3RoZXIgcGxhdGZvcm1zLCB3ZSBjYW4gaW1wbGVtZW50CisgICAgICAgIHRoZSBz
dHViYmVkIHRlc3RpbmcgaG9va3Mgb24gVGVzdFJ1bm5lciBhbmQgUGxhdGZvcm1XZWJWaWV3IGFz
IHdlbGwuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9UZXN0UnVubmVyLmg6CisgICAgICAg
ICogRHVtcFJlbmRlclRyZWUvbWFjL1Rlc3RSdW5uZXJNYWMubW06CisgICAgICAgIChUZXN0UnVu
bmVyOjpzZXRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkKToKKyAgICAgICAgKFRlc3RSdW5uZXI6OnNl
bGVjdENocm9tZUlucHV0RmllbGQpOgorICAgICAgICAoVGVzdFJ1bm5lcjo6Z2V0U2VsZWN0ZWRU
ZXh0SW5DaHJvbWVJbnB1dEZpZWxkKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS93aW4vVGVz
dFJ1bm5lcldpbi5jcHA6CisgICAgICAgIChUZXN0UnVubmVyOjpzZXRUZXh0SW5DaHJvbWVJbnB1
dEZpZWxkKToKKyAgICAgICAgKFRlc3RSdW5uZXI6OnNlbGVjdENocm9tZUlucHV0RmllbGQpOgor
ICAgICAgICAoVGVzdFJ1bm5lcjo6Z2V0U2VsZWN0ZWRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkKToK
KyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0JpbmRpbmdzL1Rlc3RS
dW5uZXIuaWRsOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5q
ZWN0ZWRCdW5kbGUuY3BwOgorICAgICAgICAoV1RSOjpJbmplY3RlZEJ1bmRsZTo6ZGlkUmVjZWl2
ZU1lc3NhZ2VUb1BhZ2UpOgorICAgICAgICAoV1RSOjpJbmplY3RlZEJ1bmRsZTo6cG9zdFNldFRl
eHRJbkNocm9tZUlucHV0RmllbGQpOgorICAgICAgICAoV1RSOjpJbmplY3RlZEJ1bmRsZTo6cG9z
dFNlbGVjdENocm9tZUlucHV0RmllbGQpOgorICAgICAgICAoV1RSOjpJbmplY3RlZEJ1bmRsZTo6
cG9zdEdldFNlbGVjdGVkVGV4dEluQ2hyb21lSW5wdXRGaWVsZCk6CisgICAgICAgICogV2ViS2l0
VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oOgorICAgICAgICAqIFdl
YktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHA6CisgICAgICAgIChX
VFI6OlRlc3RSdW5uZXI6OnNldFRleHRJbkNocm9tZUlucHV0RmllbGQpOgorICAgICAgICAoV1RS
OjpUZXN0UnVubmVyOjpzZWxlY3RDaHJvbWVJbnB1dEZpZWxkKToKKyAgICAgICAgKFdUUjo6VGVz
dFJ1bm5lcjo6Z2V0U2VsZWN0ZWRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkKToKKyAgICAgICAgKFdU
Ujo6VGVzdFJ1bm5lcjo6Y2FsbFNldFRleHRJbkNocm9tZUlucHV0RmllbGRDYWxsYmFjayk6Cisg
ICAgICAgIChXVFI6OlRlc3RSdW5uZXI6OmNhbGxTZWxlY3RDaHJvbWVJbnB1dEZpZWxkQ2FsbGJh
Y2spOgorICAgICAgICAoV1RSOjpUZXN0UnVubmVyOjpjYWxsR2V0U2VsZWN0ZWRUZXh0SW5DaHJv
bWVJbnB1dEZpZWxkQ2FsbGJhY2spOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0
ZWRCdW5kbGUvVGVzdFJ1bm5lci5oOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvUGxhdGZv
cm1XZWJWaWV3Lmg6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9UZXN0SW52b2NhdGlvbi5j
cHA6CisgICAgICAgIChXVFI6OlRlc3RJbnZvY2F0aW9uOjpkaWRSZWNlaXZlTWVzc2FnZUZyb21J
bmplY3RlZEJ1bmRsZSk6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9ndGsvUGxhdGZvcm1X
ZWJWaWV3R3RrLmNwcDoKKyAgICAgICAgKFdUUjo6UGxhdGZvcm1XZWJWaWV3OjpzZXRUZXh0SW5D
aHJvbWVJbnB1dEZpZWxkKToKKyAgICAgICAgKFdUUjo6UGxhdGZvcm1XZWJWaWV3OjpzZWxlY3RD
aHJvbWVJbnB1dEZpZWxkKToKKyAgICAgICAgKFdUUjo6UGxhdGZvcm1XZWJWaWV3OjpnZXRTZWxl
Y3RlZFRleHRJbkNocm9tZUlucHV0RmllbGQpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIv
aW9zL1BsYXRmb3JtV2ViVmlld0lPUy5tbToKKyAgICAgICAgKFdUUjo6Y2hyb21lSW5wdXRGaWVs
ZCk6CisKKyAgICAgICAgQWRkaXRpb25hbGx5IGRvIHNvbWUgbGlnaHQgcmVmYWN0b3JpbmcgYnkg
cHVsbGluZyBvdXQgbG9naWMgZm9yIGdyYWJiaW5nIHRoZSBjaHJvbWUgaW5wdXQgZmllbGQgKGku
ZS4gYSB2aWV3CisgICAgICAgIHdpdGggYSB0YWcgb2YgMSB1bmRlciB0aGUgd2luZG93KSBvdXQg
aW50byBhIHNlcGFyYXRlIGhlbHBlciBtZXRob2QuIFVzZSB0aGlzIGhlbHBlciBpbiBhIGZldyBw
bGFjZXMgYmVsb3cuCisKKyAgICAgICAgKFdUUjo6UGxhdGZvcm1XZWJWaWV3OjphZGRDaHJvbWVJ
bnB1dEZpZWxkKToKKyAgICAgICAgKFdUUjo6UGxhdGZvcm1XZWJWaWV3OjpzZXRUZXh0SW5DaHJv
bWVJbnB1dEZpZWxkKToKKyAgICAgICAgKFdUUjo6UGxhdGZvcm1XZWJWaWV3OjpzZWxlY3RDaHJv
bWVJbnB1dEZpZWxkKToKKyAgICAgICAgKFdUUjo6UGxhdGZvcm1XZWJWaWV3OjpnZXRTZWxlY3Rl
ZFRleHRJbkNocm9tZUlucHV0RmllbGQpOgorICAgICAgICAoV1RSOjpQbGF0Zm9ybVdlYlZpZXc6
OnJlbW92ZUNocm9tZUlucHV0RmllbGQpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvbWFj
L1BsYXRmb3JtV2ViVmlld01hYy5tbToKKyAgICAgICAgKFdUUjo6UGxhdGZvcm1XZWJWaWV3Ojpz
ZXRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkKToKKyAgICAgICAgKFdUUjo6UGxhdGZvcm1XZWJWaWV3
OjpzZWxlY3RDaHJvbWVJbnB1dEZpZWxkKToKKyAgICAgICAgKFdUUjo6UGxhdGZvcm1XZWJWaWV3
OjpnZXRTZWxlY3RlZFRleHRJbkNocm9tZUlucHV0RmllbGQpOgorICAgICAgICAqIFdlYktpdFRl
c3RSdW5uZXIvd2luL1BsYXRmb3JtV2ViVmlld1dpbi5jcHA6CisgICAgICAgIChXVFI6OlBsYXRm
b3JtV2ViVmlldzo6c2V0VGV4dEluQ2hyb21lSW5wdXRGaWVsZCk6CisgICAgICAgIChXVFI6OlBs
YXRmb3JtV2ViVmlldzo6c2VsZWN0Q2hyb21lSW5wdXRGaWVsZCk6CisgICAgICAgIChXVFI6OlBs
YXRmb3JtV2ViVmlldzo6Z2V0U2VsZWN0ZWRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkKToKKyAgICAg
ICAgKiBXZWJLaXRUZXN0UnVubmVyL3dwZS9QbGF0Zm9ybVdlYlZpZXdXUEUuY3BwOgorICAgICAg
ICAoV1RSOjpQbGF0Zm9ybVdlYlZpZXc6OnNldFRleHRJbkNocm9tZUlucHV0RmllbGQpOgorICAg
ICAgICAoV1RSOjpQbGF0Zm9ybVdlYlZpZXc6OnNlbGVjdENocm9tZUlucHV0RmllbGQpOgorICAg
ICAgICAoV1RSOjpQbGF0Zm9ybVdlYlZpZXc6OmdldFNlbGVjdGVkVGV4dEluQ2hyb21lSW5wdXRG
aWVsZCk6CisKIDIwMjEtMDctMjQgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgog
CiAgICAgICAgIFtpT1NdIFJFR1JFU1NJT04ocjI3NzUwNSk6IGAtW1dLV2ViVmlldyB1bmRlclBh
Z2VCYWNrZ3JvdW5kQ29sb3JdYCBhbHNvIGNoYW5nZXMgdGhlIHNjcm9sbCBiYXIgY29sb3IKZGlm
ZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RSdW5uZXIuaCBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL1Rlc3RSdW5uZXIuaAppbmRleCAyZTA0OTRlMzBmM2YwYjNhNzQyMmVlNzU5M2Y3
ZTdmM2Q2NTdkMGM4Li42ODNkNDBmMmFiNGM2MGU1MDdmMjRjODYyNWEyZDE1ZWI5ZjFmYTM0IDEw
MDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9UZXN0UnVubmVyLmgKKysrIGIvVG9vbHMv
RHVtcFJlbmRlclRyZWUvVGVzdFJ1bm5lci5oCkBAIC0zNiw2ICszNiw3IEBACiAjaW5jbHVkZSA8
c3RyaW5nPgogI2luY2x1ZGUgPHZlY3Rvcj4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgor
I2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBleHRlcm4gRklMRSogdGVzdFJlc3Vs
dDsKIApAQCAtMzI3LDYgKzMyOCwxMCBAQCBwdWJsaWM6CiAgICAgdm9pZCByZW1vdmVDaHJvbWVJ
bnB1dEZpZWxkKCk7CiAgICAgdm9pZCBmb2N1c1dlYlZpZXcoKTsKIAorICAgIHZvaWQgc2V0VGV4
dEluQ2hyb21lSW5wdXRGaWVsZChjb25zdCBTdHJpbmcmKTsKKyAgICB2b2lkIHNlbGVjdENocm9t
ZUlucHV0RmllbGQoKTsKKyAgICBTdHJpbmcgZ2V0U2VsZWN0ZWRUZXh0SW5DaHJvbWVJbnB1dEZp
ZWxkKCk7CisKICAgICB2b2lkIHNldEJhY2tpbmdTY2FsZUZhY3Rvcihkb3VibGUpOwogCiAgICAg
dm9pZCBzZXRQT1NJWExvY2FsZShKU1N0cmluZ1JlZik7CmRpZmYgLS1naXQgYS9Ub29scy9EdW1w
UmVuZGVyVHJlZS9tYWMvVGVzdFJ1bm5lck1hYy5tbSBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21h
Yy9UZXN0UnVubmVyTWFjLm1tCmluZGV4IDA5ZGMyYzQ1NTg1ZjAwN2YwNTYxNjUxZDE3MGVjNDM0
ZTVkZmVlZjcuLjU1ZGE1N2ViYjFjN2E2ZDUyNTcyMmQzM2JkNWJmYjMzYjJiMWY2YjIgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9UZXN0UnVubmVyTWFjLm1tCisrKyBiL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL21hYy9UZXN0UnVubmVyTWFjLm1tCkBAIC0xMDg0LDYgKzEwODQs
MTkgQEAgdm9pZCBUZXN0UnVubmVyOjpyZW1vdmVDaHJvbWVJbnB1dEZpZWxkKCkKICNlbmRpZgog
fQogCit2b2lkIFRlc3RSdW5uZXI6OnNldFRleHRJbkNocm9tZUlucHV0RmllbGQoY29uc3QgU3Ry
aW5nJikKK3sKK30KKwordm9pZCBUZXN0UnVubmVyOjpzZWxlY3RDaHJvbWVJbnB1dEZpZWxkKCkK
K3sKK30KKworU3RyaW5nIFRlc3RSdW5uZXI6OmdldFNlbGVjdGVkVGV4dEluQ2hyb21lSW5wdXRG
aWVsZCgpCit7CisgICAgcmV0dXJuIHsgfTsKK30KKwogdm9pZCBUZXN0UnVubmVyOjpmb2N1c1dl
YlZpZXcoKQogewogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQpkaWZmIC0tZ2l0IGEvVG9vbHMv
RHVtcFJlbmRlclRyZWUvd2luL1Rlc3RSdW5uZXJXaW4uY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvd2luL1Rlc3RSdW5uZXJXaW4uY3BwCmluZGV4IDFjY2VmMWNiZmM4OWYzYjJlMTEyMTY4Nzcz
M2E2ZjdjY2RiYWU0OWUuLjBlMmIxMjBlYmMzNDkzODhlNDE1MTU0MDkxOTJhMzMyNjNkYTQ1MGMg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9UZXN0UnVubmVyV2luLmNwcAor
KysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS93aW4vVGVzdFJ1bm5lcldpbi5jcHAKQEAgLTExNTAs
NiArMTE1MCwyMiBAQCB2b2lkIFRlc3RSdW5uZXI6OnJlbW92ZUNocm9tZUlucHV0RmllbGQoKQog
ICAgIGZwcmludGYodGVzdFJlc3VsdCwgIkVSUk9SOiBUZXN0UnVubmVyOjpyZW1vdmVDaHJvbWVJ
bnB1dEZpZWxkKCkgbm90IGltcGxlbWVudGVkXG4iKTsKIH0KIAordm9pZCBUZXN0UnVubmVyOjpz
ZXRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkKGNvbnN0IFN0cmluZyYpCit7CisgICAgZnByaW50Zih0
ZXN0UmVzdWx0LCAiRVJST1I6IFRlc3RSdW5uZXI6OnNldFRleHRJbkNocm9tZUlucHV0RmllbGQo
KSBub3QgaW1wbGVtZW50ZWRcbiIpOworfQorCit2b2lkIFRlc3RSdW5uZXI6OnNlbGVjdENocm9t
ZUlucHV0RmllbGQoKQoreworICAgIGZwcmludGYodGVzdFJlc3VsdCwgIkVSUk9SOiBUZXN0UnVu
bmVyOjpzZWxlY3RDaHJvbWVJbnB1dEZpZWxkKCkgbm90IGltcGxlbWVudGVkXG4iKTsKK30KKwor
U3RyaW5nIFRlc3RSdW5uZXI6OmdldFNlbGVjdGVkVGV4dEluQ2hyb21lSW5wdXRGaWVsZCgpCit7
CisgICAgZnByaW50Zih0ZXN0UmVzdWx0LCAiRVJST1I6IFRlc3RSdW5uZXI6OmdldFNlbGVjdGVk
VGV4dEluQ2hyb21lSW5wdXRGaWVsZCgpIG5vdCBpbXBsZW1lbnRlZFxuIik7CisgICAgcmV0dXJu
IHsgfTsKK30KKwogdm9pZCBUZXN0UnVubmVyOjpmb2N1c1dlYlZpZXcoKQogewogICAgIGZwcmlu
dGYodGVzdFJlc3VsdCwgIkVSUk9SOiBUZXN0UnVubmVyOjpmb2N1c1dlYlZpZXcoKSBub3QgaW1w
bGVtZW50ZWRcbiIpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3Rl
ZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
SW5qZWN0ZWRCdW5kbGUvQmluZGluZ3MvVGVzdFJ1bm5lci5pZGwKaW5kZXggNzVkMTZkMzFmMjUw
OWVlNmJkMDljNjg3M2RhZjEzZGVkZWQ1OWJmMy4uOWE5MDdkZWYyZDVlZjlmNWM4OGEwOGM4OTFl
NWQ4MzI1YWY0Y2E5YyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3Rl
ZEJ1bmRsZS9CaW5kaW5ncy9UZXN0UnVubmVyLmlkbAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVu
bmVyL0luamVjdGVkQnVuZGxlL0JpbmRpbmdzL1Rlc3RSdW5uZXIuaWRsCkBAIC0xNzksNiArMTc5
LDkgQEAgaW50ZXJmYWNlIFRlc3RSdW5uZXIgewogICAgIHVuZGVmaW5lZCBhZGRDaHJvbWVJbnB1
dEZpZWxkKG9iamVjdCBjYWxsYmFjayk7CiAgICAgdW5kZWZpbmVkIHJlbW92ZUNocm9tZUlucHV0
RmllbGQob2JqZWN0IGNhbGxiYWNrKTsKICAgICB1bmRlZmluZWQgZm9jdXNXZWJWaWV3KG9iamVj
dCBjYWxsYmFjayk7CisgICAgdW5kZWZpbmVkIHNldFRleHRJbkNocm9tZUlucHV0RmllbGQoRE9N
U3RyaW5nIHRleHQsIG9iamVjdCBjYWxsYmFjayk7CisgICAgdW5kZWZpbmVkIGdldFNlbGVjdGVk
VGV4dEluQ2hyb21lSW5wdXRGaWVsZChvYmplY3QgY2FsbGJhY2spOworICAgIHVuZGVmaW5lZCBz
ZWxlY3RDaHJvbWVJbnB1dEZpZWxkKG9iamVjdCBjYWxsYmFjayk7CiAKICAgICAvLyBXaW5kb3cv
dmlldyBzdGF0ZQogICAgIHVuZGVmaW5lZCBzZXRCYWNraW5nU2NhbGVGYWN0b3IoZG91YmxlIGJh
Y2tpbmdTY2FsZUZhY3Rvciwgb2JqZWN0IGNhbGxiYWNrKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwIGIvVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKaW5kZXgg
NzM4M2YzM2ViM2Q3MmFjNDgxNjc2MDQ4ZjE4N2FjMzcyNmY4NTEzNC4uZDVjYWJhM2NmZmM2ZWFk
ZGFiMDJiYjIwYzcxNTE5ZWM5ZmRjNGQ1ZiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKKysrIGIvVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKQEAgLTI1NSw2ICsy
NTUsMjQgQEAgdm9pZCBJbmplY3RlZEJ1bmRsZTo6ZGlkUmVjZWl2ZU1lc3NhZ2VUb1BhZ2UoV0tC
dW5kbGVQYWdlUmVmIHBhZ2UsIFdLU3RyaW5nUmVmIG0KICAgICAgICAgcmV0dXJuOwogICAgIH0K
IAorICAgIGlmIChXS1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKG1lc3NhZ2VOYW1lLCAiQ2Fs
bFNldFRleHRJbkNocm9tZUlucHV0RmllbGRDYWxsYmFjayIpKSB7CisgICAgICAgIG1fdGVzdFJ1
bm5lci0+Y2FsbFNldFRleHRJbkNocm9tZUlucHV0RmllbGRDYWxsYmFjaygpOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgaWYgKFdLU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmcobWVz
c2FnZU5hbWUsICJDYWxsU2VsZWN0Q2hyb21lSW5wdXRGaWVsZENhbGxiYWNrIikpIHsKKyAgICAg
ICAgbV90ZXN0UnVubmVyLT5jYWxsU2VsZWN0Q2hyb21lSW5wdXRGaWVsZENhbGxiYWNrKCk7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoV0tTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0
cmluZyhtZXNzYWdlTmFtZSwgIkNhbGxHZXRTZWxlY3RlZFRleHRJbkNocm9tZUlucHV0RmllbGRD
YWxsYmFjayIpKSB7CisgICAgICAgIEFTU0VSVChtZXNzYWdlQm9keSk7CisgICAgICAgIEFTU0VS
VChXS0dldFR5cGVJRChtZXNzYWdlQm9keSkgPT0gV0tTdHJpbmdHZXRUeXBlSUQoKSk7CisgICAg
ICAgIGF1dG8ganNTdHJpbmcgPSB0b0pTKHN0YXRpY19jYXN0PFdLU3RyaW5nUmVmPihtZXNzYWdl
Qm9keSkpOworICAgICAgICBtX3Rlc3RSdW5uZXItPmNhbGxHZXRTZWxlY3RlZFRleHRJbkNocm9t
ZUlucHV0RmllbGRDYWxsYmFjayhqc1N0cmluZy5nZXQoKSk7CisgICAgICAgIHJldHVybjsKKyAg
ICB9CisKICAgICBpZiAoV0tTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhtZXNzYWdlTmFtZSwg
IkNhbGxGb2N1c1dlYlZpZXdDYWxsYmFjayIpKSB7CiAgICAgICAgIG1fdGVzdFJ1bm5lci0+Y2Fs
bEZvY3VzV2ViVmlld0NhbGxiYWNrKCk7CiAgICAgICAgIHJldHVybjsKQEAgLTYwNyw2ICs2MjUs
MjIgQEAgdm9pZCBJbmplY3RlZEJ1bmRsZTo6cG9zdFJlbW92ZUNocm9tZUlucHV0RmllbGQoKQog
ICAgIHBvc3RQYWdlTWVzc2FnZSgiUmVtb3ZlQ2hyb21lSW5wdXRGaWVsZCIpOwogfQogCit2b2lk
IEluamVjdGVkQnVuZGxlOjpwb3N0U2V0VGV4dEluQ2hyb21lSW5wdXRGaWVsZChjb25zdCBTdHJp
bmcmIHRleHQpCit7CisgICAgYXV0byB3a1RleHQgPSB0b1dLKHRleHQpOworICAgIHBvc3RQYWdl
TWVzc2FnZSgiU2V0VGV4dEluQ2hyb21lSW5wdXRGaWVsZCIsIHdrVGV4dC5nZXQoKSk7Cit9CisK
K3ZvaWQgSW5qZWN0ZWRCdW5kbGU6OnBvc3RTZWxlY3RDaHJvbWVJbnB1dEZpZWxkKCkKK3sKKyAg
ICBwb3N0UGFnZU1lc3NhZ2UoIlNlbGVjdENocm9tZUlucHV0RmllbGQiKTsKK30KKwordm9pZCBJ
bmplY3RlZEJ1bmRsZTo6cG9zdEdldFNlbGVjdGVkVGV4dEluQ2hyb21lSW5wdXRGaWVsZCgpCit7
CisgICAgcG9zdFBhZ2VNZXNzYWdlKCJHZXRTZWxlY3RlZFRleHRJbkNocm9tZUlucHV0RmllbGQi
KTsKK30KKwogdm9pZCBJbmplY3RlZEJ1bmRsZTo6cG9zdEZvY3VzV2ViVmlldygpCiB7CiAgICAg
cG9zdFBhZ2VNZXNzYWdlKCJGb2N1c1dlYlZpZXciKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktp
dFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuaCBiL1Rvb2xzL1dlYktp
dFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuaAppbmRleCAzNTlkODk2
N2NmOWMwYTMzNzY3MjUyMzFkYzBmNjIxZjE1ZTFlMjFkLi43M2Y1ZmYxYTYyODZkODU1YjU5YmMx
MmE3NTM5YmQ5Y2I3YTE2OTZkIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0lu
amVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmgKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5oCkBAIC04Nyw2ICs4Nyw5IEBAIHB1Ymxp
YzoKICAgICB2b2lkIHBvc3ROZXdCZWZvcmVVbmxvYWRSZXR1cm5WYWx1ZShib29sKTsKICAgICB2
b2lkIHBvc3RBZGRDaHJvbWVJbnB1dEZpZWxkKCk7CiAgICAgdm9pZCBwb3N0UmVtb3ZlQ2hyb21l
SW5wdXRGaWVsZCgpOworICAgIHZvaWQgcG9zdFNldFRleHRJbkNocm9tZUlucHV0RmllbGQoY29u
c3QgU3RyaW5nJik7CisgICAgdm9pZCBwb3N0U2VsZWN0Q2hyb21lSW5wdXRGaWVsZCgpOworICAg
IHZvaWQgcG9zdEdldFNlbGVjdGVkVGV4dEluQ2hyb21lSW5wdXRGaWVsZCgpOwogICAgIHZvaWQg
cG9zdEZvY3VzV2ViVmlldygpOwogICAgIHZvaWQgcG9zdFNldEJhY2tpbmdTY2FsZUZhY3Rvcihk
b3VibGUpOwogICAgIHZvaWQgcG9zdFNldFdpbmRvd0lzS2V5KGJvb2wpOwpkaWZmIC0tZ2l0IGEv
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNwcCBiL1Rv
b2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHAKaW5kZXgg
NTE2MWM0YzkwMmNiYWM1YjI0MzdiOGM3MDUwZDU0YjY2ZjExYjE1My4uYTQ4Yzg2ODRlYWM3Njk4
NmY1Yjc4NTk2OTNhMmM0ZDgwMjRhMDViYyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3BwCkBAIC02MDgsNiArNjA4LDkgQEAg
c3RhdGljIENhbGxiYWNrTWFwJiBjYWxsYmFja01hcCgpCiBlbnVtIHsKICAgICBBZGRDaHJvbWVJ
bnB1dEZpZWxkQ2FsbGJhY2tJRCA9IDEsCiAgICAgUmVtb3ZlQ2hyb21lSW5wdXRGaWVsZENhbGxi
YWNrSUQsCisgICAgU2V0VGV4dEluQ2hyb21lSW5wdXRGaWVsZENhbGxiYWNrSUQsCisgICAgU2Vs
ZWN0Q2hyb21lSW5wdXRGaWVsZENhbGxiYWNrSUQsCisgICAgR2V0U2VsZWN0ZWRUZXh0SW5DaHJv
bWVJbnB1dEZpZWxkQ2FsbGJhY2tJRCwKICAgICBGb2N1c1dlYlZpZXdDYWxsYmFja0lELAogICAg
IFNldEJhY2tpbmdTY2FsZUZhY3RvckNhbGxiYWNrSUQsCiAgICAgRGlkQmVnaW5Td2lwZUNhbGxi
YWNrSUQsCkBAIC03MDAsNiArNzAzLDI0IEBAIHZvaWQgVGVzdFJ1bm5lcjo6cmVtb3ZlQ2hyb21l
SW5wdXRGaWVsZChKU1ZhbHVlUmVmIGNhbGxiYWNrKQogICAgIEluamVjdGVkQnVuZGxlOjpzaW5n
bGV0b24oKS5wb3N0UmVtb3ZlQ2hyb21lSW5wdXRGaWVsZCgpOwogfQogCit2b2lkIFRlc3RSdW5u
ZXI6OnNldFRleHRJbkNocm9tZUlucHV0RmllbGQoSlNTdHJpbmdSZWYgdGV4dCwgSlNWYWx1ZVJl
ZiBjYWxsYmFjaykKK3sKKyAgICBjYWNoZVRlc3RSdW5uZXJDYWxsYmFjayhTZXRUZXh0SW5DaHJv
bWVJbnB1dEZpZWxkQ2FsbGJhY2tJRCwgY2FsbGJhY2spOworICAgIEluamVjdGVkQnVuZGxlOjpz
aW5nbGV0b24oKS5wb3N0U2V0VGV4dEluQ2hyb21lSW5wdXRGaWVsZCh0b1dURlN0cmluZyh0ZXh0
KSk7Cit9CisKK3ZvaWQgVGVzdFJ1bm5lcjo6c2VsZWN0Q2hyb21lSW5wdXRGaWVsZChKU1ZhbHVl
UmVmIGNhbGxiYWNrKQoreworICAgIGNhY2hlVGVzdFJ1bm5lckNhbGxiYWNrKFNlbGVjdENocm9t
ZUlucHV0RmllbGRDYWxsYmFja0lELCBjYWxsYmFjayk7CisgICAgSW5qZWN0ZWRCdW5kbGU6OnNp
bmdsZXRvbigpLnBvc3RTZWxlY3RDaHJvbWVJbnB1dEZpZWxkKCk7Cit9CisKK3ZvaWQgVGVzdFJ1
bm5lcjo6Z2V0U2VsZWN0ZWRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkKEpTVmFsdWVSZWYgY2FsbGJh
Y2spCit7CisgICAgY2FjaGVUZXN0UnVubmVyQ2FsbGJhY2soR2V0U2VsZWN0ZWRUZXh0SW5DaHJv
bWVJbnB1dEZpZWxkQ2FsbGJhY2tJRCwgY2FsbGJhY2spOworICAgIEluamVjdGVkQnVuZGxlOjpz
aW5nbGV0b24oKS5wb3N0R2V0U2VsZWN0ZWRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkKCk7Cit9CisK
IHZvaWQgVGVzdFJ1bm5lcjo6Zm9jdXNXZWJWaWV3KEpTVmFsdWVSZWYgY2FsbGJhY2spCiB7CiAg
ICAgY2FjaGVUZXN0UnVubmVyQ2FsbGJhY2soRm9jdXNXZWJWaWV3Q2FsbGJhY2tJRCwgY2FsbGJh
Y2spOwpAQCAtNzMyLDYgKzc1MywyMiBAQCB2b2lkIFRlc3RSdW5uZXI6OmNhbGxSZW1vdmVDaHJv
bWVJbnB1dEZpZWxkQ2FsbGJhY2soKQogICAgIGNhbGxUZXN0UnVubmVyQ2FsbGJhY2soUmVtb3Zl
Q2hyb21lSW5wdXRGaWVsZENhbGxiYWNrSUQpOwogfQogCit2b2lkIFRlc3RSdW5uZXI6OmNhbGxT
ZXRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkQ2FsbGJhY2soKQoreworICAgIGNhbGxUZXN0UnVubmVy
Q2FsbGJhY2soU2V0VGV4dEluQ2hyb21lSW5wdXRGaWVsZENhbGxiYWNrSUQpOworfQorCit2b2lk
IFRlc3RSdW5uZXI6OmNhbGxTZWxlY3RDaHJvbWVJbnB1dEZpZWxkQ2FsbGJhY2soKQoreworICAg
IGNhbGxUZXN0UnVubmVyQ2FsbGJhY2soU2VsZWN0Q2hyb21lSW5wdXRGaWVsZENhbGxiYWNrSUQp
OworfQorCit2b2lkIFRlc3RSdW5uZXI6OmNhbGxHZXRTZWxlY3RlZFRleHRJbkNocm9tZUlucHV0
RmllbGRDYWxsYmFjayhKU1N0cmluZ1JlZiB0ZXh0KQoreworICAgIGF1dG8gdGV4dFZhbHVlID0g
SlNWYWx1ZU1ha2VTdHJpbmcobWFpbkZyYW1lSlNDb250ZXh0KCksIHRleHQpOworICAgIGNhbGxU
ZXN0UnVubmVyQ2FsbGJhY2soR2V0U2VsZWN0ZWRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkQ2FsbGJh
Y2tJRCwgMSwgJnRleHRWYWx1ZSk7Cit9CisKIHZvaWQgVGVzdFJ1bm5lcjo6Y2FsbEZvY3VzV2Vi
Vmlld0NhbGxiYWNrKCkKIHsKICAgICBjYWxsVGVzdFJ1bm5lckNhbGxiYWNrKEZvY3VzV2ViVmll
d0NhbGxiYWNrSUQpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3Rl
ZEJ1bmRsZS9UZXN0UnVubmVyLmggYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVu
ZGxlL1Rlc3RSdW5uZXIuaAppbmRleCA2OWMyZGEzZmRjMDA3ZWJiY2NiNmRhYjdjMWMzODE2MDcz
Mjg2OGJiLi5jMmQ2MjFlNWY5OWM5ZTc5YTFmNDVlZTk1MjYzYzc0NDViMGVmNGFlIDEwMDY0NAot
LS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaAor
KysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuaApA
QCAtMjU3LDYgKzI1NywxMSBAQCBwdWJsaWM6CiAgICAgdm9pZCBhZGRDaHJvbWVJbnB1dEZpZWxk
KEpTVmFsdWVSZWYpOwogICAgIHZvaWQgcmVtb3ZlQ2hyb21lSW5wdXRGaWVsZChKU1ZhbHVlUmVm
KTsKICAgICB2b2lkIGZvY3VzV2ViVmlldyhKU1ZhbHVlUmVmKTsKKworICAgIHZvaWQgc2V0VGV4
dEluQ2hyb21lSW5wdXRGaWVsZChKU1N0cmluZ1JlZiB0ZXh0LCBKU1ZhbHVlUmVmIGNhbGxiYWNr
KTsKKyAgICB2b2lkIHNlbGVjdENocm9tZUlucHV0RmllbGQoSlNWYWx1ZVJlZiBjYWxsYmFjayk7
CisgICAgdm9pZCBnZXRTZWxlY3RlZFRleHRJbkNocm9tZUlucHV0RmllbGQoSlNWYWx1ZVJlZiBj
YWxsYmFjayk7CisKICAgICB2b2lkIHNldEJhY2tpbmdTY2FsZUZhY3Rvcihkb3VibGUsIEpTVmFs
dWVSZWYpOwogCiAgICAgdm9pZCBzZXRXaW5kb3dJc0tleShib29sKTsKQEAgLTI2OCw2ICsyNzMs
MTAgQEAgcHVibGljOgogICAgIHZvaWQgY2FsbEZvY3VzV2ViVmlld0NhbGxiYWNrKCk7CiAgICAg
dm9pZCBjYWxsU2V0QmFja2luZ1NjYWxlRmFjdG9yQ2FsbGJhY2soKTsKIAorICAgIHZvaWQgY2Fs
bFNldFRleHRJbkNocm9tZUlucHV0RmllbGRDYWxsYmFjaygpOworICAgIHZvaWQgY2FsbFNlbGVj
dENocm9tZUlucHV0RmllbGRDYWxsYmFjaygpOworICAgIHZvaWQgY2FsbEdldFNlbGVjdGVkVGV4
dEluQ2hyb21lSW5wdXRGaWVsZENhbGxiYWNrKEpTU3RyaW5nUmVmKTsKKwogICAgIHN0YXRpYyB2
b2lkIG92ZXJyaWRlUHJlZmVyZW5jZShKU1N0cmluZ1JlZiBwcmVmZXJlbmNlLCBKU1N0cmluZ1Jl
ZiB2YWx1ZSk7CiAKICAgICAvLyBDb29raWVzIHRlc3RpbmcKZGlmZiAtLWdpdCBhL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvUGxhdGZvcm1XZWJWaWV3LmggYi9Ub29scy9XZWJLaXRUZXN0UnVubmVy
L1BsYXRmb3JtV2ViVmlldy5oCmluZGV4IGNjZTdlNDZjNDQ3NWIzODVlZDkyODhhMjA1MjBiYTE1
ZThhMTVjM2QuLmY5NTcxOTliMTBjYWFkMDRmYTg2NmM1NjYxODUzMjVmYjhkNTMzZDMgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvUGxhdGZvcm1XZWJWaWV3LmgKKysrIGIvVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9QbGF0Zm9ybVdlYlZpZXcuaApAQCAtMjcsNiArMjcsNyBAQAog
CiAjaW5jbHVkZSAiVGVzdE9wdGlvbnMuaCIKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgor
I2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiAjaWYgUExBVEZPUk0oQ09DT0EpICYm
ICFkZWZpbmVkKEJVSUxESU5HX0dUS19fKQogI2luY2x1ZGUgPFdlYktpdC9XS0ZvdW5kYXRpb24u
aD4KQEAgLTEwNyw2ICsxMDgsMTAgQEAgcHVibGljOgogICAgIHZvaWQgc2V0V2luZG93SXNLZXko
Ym9vbCk7CiAgICAgYm9vbCB3aW5kb3dJc0tleSgpIGNvbnN0IHsgcmV0dXJuIG1fd2luZG93SXNL
ZXk7IH0KIAorICAgIHZvaWQgc2V0VGV4dEluQ2hyb21lSW5wdXRGaWVsZChjb25zdCBTdHJpbmcm
KTsKKyAgICB2b2lkIHNlbGVjdENocm9tZUlucHV0RmllbGQoKTsKKyAgICBTdHJpbmcgZ2V0U2Vs
ZWN0ZWRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkKCk7CisKICAgICBib29sIGRyYXdzQmFja2dyb3Vu
ZCgpIGNvbnN0OwogICAgIHZvaWQgc2V0RHJhd3NCYWNrZ3JvdW5kKGJvb2wpOwogCmRpZmYgLS1n
aXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RJbnZvY2F0aW9uLmNwcCBiL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvVGVzdEludm9jYXRpb24uY3BwCmluZGV4IDQyYTg2OTU5NGVhZGNjNmIz
Mjg2YTM2MGQ4MzYyNzYwMDJhZGFlNzYuLmZjOWE3N2QwN2UxMWVhMDc4Y2Q1ZTM0YTQ4M2FiYTUy
YjYzMWEyOGUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdEludm9jYXRp
b24uY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdEludm9jYXRpb24uY3BwCkBA
IC0zNTcsNyArMzU3LDI1IEBAIHZvaWQgVGVzdEludm9jYXRpb246OmRpZFJlY2VpdmVNZXNzYWdl
RnJvbUluamVjdGVkQnVuZGxlKFdLU3RyaW5nUmVmIG1lc3NhZ2VOYW1lCiAgICAgICAgIHBvc3RQ
YWdlTWVzc2FnZSgiQ2FsbFJlbW92ZUNocm9tZUlucHV0RmllbGRDYWxsYmFjayIpOwogICAgICAg
ICByZXR1cm47CiAgICAgfQotICAgIAorCisgICAgaWYgKFdLU3RyaW5nSXNFcXVhbFRvVVRGOENT
dHJpbmcobWVzc2FnZU5hbWUsICJTZXRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkIikpIHsKKyAgICAg
ICAgVGVzdENvbnRyb2xsZXI6OnNpbmdsZXRvbigpLm1haW5XZWJWaWV3KCktPnNldFRleHRJbkNo
cm9tZUlucHV0RmllbGQodG9XVEZTdHJpbmcoc3RyaW5nVmFsdWUobWVzc2FnZUJvZHkpKSk7Cisg
ICAgICAgIHBvc3RQYWdlTWVzc2FnZSgiQ2FsbFNldFRleHRJbkNocm9tZUlucHV0RmllbGRDYWxs
YmFjayIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKFdLU3RyaW5nSXNFcXVh
bFRvVVRGOENTdHJpbmcobWVzc2FnZU5hbWUsICJTZWxlY3RDaHJvbWVJbnB1dEZpZWxkIikpIHsK
KyAgICAgICAgVGVzdENvbnRyb2xsZXI6OnNpbmdsZXRvbigpLm1haW5XZWJWaWV3KCktPnNlbGVj
dENocm9tZUlucHV0RmllbGQoKTsKKyAgICAgICAgcG9zdFBhZ2VNZXNzYWdlKCJDYWxsU2VsZWN0
Q2hyb21lSW5wdXRGaWVsZENhbGxiYWNrIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAg
ICBpZiAoV0tTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhtZXNzYWdlTmFtZSwgIkdldFNlbGVj
dGVkVGV4dEluQ2hyb21lSW5wdXRGaWVsZCIpKSB7CisgICAgICAgIGF1dG8gc2VsZWN0ZWRUZXh0
ID0gVGVzdENvbnRyb2xsZXI6OnNpbmdsZXRvbigpLm1haW5XZWJWaWV3KCktPmdldFNlbGVjdGVk
VGV4dEluQ2hyb21lSW5wdXRGaWVsZCgpOworICAgICAgICBwb3N0UGFnZU1lc3NhZ2UoIkNhbGxH
ZXRTZWxlY3RlZFRleHRJbkNocm9tZUlucHV0RmllbGRDYWxsYmFjayIsIHRvV0soc2VsZWN0ZWRU
ZXh0KSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAgICBpZiAoV0tTdHJpbmdJc0VxdWFs
VG9VVEY4Q1N0cmluZyhtZXNzYWdlTmFtZSwgIkZvY3VzV2ViVmlldyIpKSB7CiAgICAgICAgIFRl
c3RDb250cm9sbGVyOjpzaW5nbGV0b24oKS5tYWluV2ViVmlldygpLT5tYWtlV2ViVmlld0ZpcnN0
UmVzcG9uZGVyKCk7CiAgICAgICAgIHBvc3RQYWdlTWVzc2FnZSgiQ2FsbEZvY3VzV2ViVmlld0Nh
bGxiYWNrIik7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2d0ay9QbGF0Zm9y
bVdlYlZpZXdHdGsuY3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9ndGsvUGxhdGZvcm1XZWJW
aWV3R3RrLmNwcAppbmRleCBiOGEwYzMxZmJjMDM4MmM3OGFjMDNhZWM3OTAyYzBkM2UzMTZhZDQ0
Li5iNGVhNWJiMzE3OWJmZTQyYjUzNzM2NGYwZWZjNzk5ZTMxNGY1ZmNlIDEwMDY0NAotLS0gYS9U
b29scy9XZWJLaXRUZXN0UnVubmVyL2d0ay9QbGF0Zm9ybVdlYlZpZXdHdGsuY3BwCisrKyBiL1Rv
b2xzL1dlYktpdFRlc3RSdW5uZXIvZ3RrL1BsYXRmb3JtV2ViVmlld0d0ay5jcHAKQEAgLTM2LDYg
KzM2LDcgQEAKICNpbmNsdWRlIDxndGsvZ3RrLmg+CiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMu
aD4KICNpbmNsdWRlIDx3dGYvZ2xpYi9HUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RG
U3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXVFIgewogCkBAIC0xNjksNiArMTcwLDE5IEBAIHZvaWQg
UGxhdGZvcm1XZWJWaWV3OjpyZW1vdmVDaHJvbWVJbnB1dEZpZWxkKCkKIHsKIH0KIAordm9pZCBQ
bGF0Zm9ybVdlYlZpZXc6OnNldFRleHRJbkNocm9tZUlucHV0RmllbGQoY29uc3QgU3RyaW5nJikK
K3sKK30KKwordm9pZCBQbGF0Zm9ybVdlYlZpZXc6OnNlbGVjdENocm9tZUlucHV0RmllbGQoKQor
eworfQorCitTdHJpbmcgUGxhdGZvcm1XZWJWaWV3OjpnZXRTZWxlY3RlZFRleHRJbkNocm9tZUlu
cHV0RmllbGQoKQoreworICAgIHJldHVybiB7IH07Cit9CisKIHZvaWQgUGxhdGZvcm1XZWJWaWV3
OjphZGRUb1dpbmRvdygpCiB7CiAjaWYgVVNFKEdUSzQpCmRpZmYgLS1naXQgYS9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL2lvcy9QbGF0Zm9ybVdlYlZpZXdJT1MubW0gYi9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL2lvcy9QbGF0Zm9ybVdlYlZpZXdJT1MubW0KaW5kZXggNGE5Y2ZkZTUzODE2M2ZhOGUy
MThlYWRjNGU2NDUyYTY4ZDk0YzVkMC4uYjRhMjkzODY0MjhmOTBiNWQ4Mjk2NjY4YzFiNzYxN2Vj
MDNjNWNmMSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvUGxhdGZvcm1X
ZWJWaWV3SU9TLm1tCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9zL1BsYXRmb3JtV2Vi
Vmlld0lPUy5tbQpAQCAtMzIxLDE3ICszMjEsMzkgQEAgdm9pZCBQbGF0Zm9ybVdlYlZpZXc6OmRp
ZEluaXRpYWxpemVDbGllbnRzKCkKICAgICBzZXRXaW5kb3dGcmFtZSh3a0ZyYW1lKTsKIH0KIAor
c3RhdGljIFVJVGV4dEZpZWxkICpjaHJvbWVJbnB1dEZpZWxkKFVJV2luZG93ICp3aW5kb3cpCit7
CisgICAgcmV0dXJuIChVSVRleHRGaWVsZCAqKVt3aW5kb3cgdmlld1dpdGhUYWc6MV07Cit9CisK
IHZvaWQgUGxhdGZvcm1XZWJWaWV3OjphZGRDaHJvbWVJbnB1dEZpZWxkKCkKIHsKLSAgICBhdXRv
IHRleHRGaWVsZCA9IGFkb3B0TlMoW1tVSVRleHRGaWVsZCBhbGxvY10gaW5pdFdpdGhGcmFtZTpD
R1JlY3RNYWtlKDAsIDAsIDEwMCwgMjApXSk7CisgICAgYXV0byB0ZXh0RmllbGQgPSBhZG9wdE5T
KFtbVUlUZXh0RmllbGQgYWxsb2NdIGluaXRXaXRoRnJhbWU6Q0dSZWN0TWFrZSgwLCAwLCAzMjAs
IDY0KV0pOwogICAgIFt0ZXh0RmllbGQgc2V0VGFnOjFdOwogICAgIFttX3dpbmRvdyBhZGRTdWJ2
aWV3OnRleHRGaWVsZC5nZXQoKV07CiB9CiAKK3ZvaWQgUGxhdGZvcm1XZWJWaWV3OjpzZXRUZXh0
SW5DaHJvbWVJbnB1dEZpZWxkKGNvbnN0IFN0cmluZyYgdGV4dCkKK3sKKyAgICBjaHJvbWVJbnB1
dEZpZWxkKG1fd2luZG93KS50ZXh0ID0gdGV4dDsKK30KKwordm9pZCBQbGF0Zm9ybVdlYlZpZXc6
OnNlbGVjdENocm9tZUlucHV0RmllbGQoKQoreworICAgIGF1dG8gdGV4dEZpZWxkID0gY2hyb21l
SW5wdXRGaWVsZChtX3dpbmRvdyk7CisgICAgW3RleHRGaWVsZCBiZWNvbWVGaXJzdFJlc3BvbmRl
cl07CisgICAgW3RleHRGaWVsZCBzZWxlY3RBbGw6bmlsXTsKK30KKworU3RyaW5nIFBsYXRmb3Jt
V2ViVmlldzo6Z2V0U2VsZWN0ZWRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkKCkKK3sKKyAgICBhdXRv
IHRleHRGaWVsZCA9IGNocm9tZUlucHV0RmllbGQobV93aW5kb3cpOworICAgIHJldHVybiBbdGV4
dEZpZWxkIHRleHRJblJhbmdlOnRleHRGaWVsZC5zZWxlY3RlZFRleHRSYW5nZV07Cit9CisKIHZv
aWQgUGxhdGZvcm1XZWJWaWV3OjpyZW1vdmVDaHJvbWVJbnB1dEZpZWxkKCkKIHsKLSAgICBVSVRl
eHRGaWVsZCogdGV4dEZpZWxkID0gKFVJVGV4dEZpZWxkKilbbV93aW5kb3cgdmlld1dpdGhUYWc6
MV07Ci0gICAgaWYgKHRleHRGaWVsZCkgeworICAgIGlmIChhdXRvIHRleHRGaWVsZCA9IGNocm9t
ZUlucHV0RmllbGQobV93aW5kb3cpKSB7CiAgICAgICAgIFt0ZXh0RmllbGQgcmVtb3ZlRnJvbVN1
cGVydmlld107CiAgICAgICAgIG1ha2VXZWJWaWV3Rmlyc3RSZXNwb25kZXIoKTsKICAgICB9CmRp
ZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL21hYy9QbGF0Zm9ybVdlYlZpZXdNYWMu
bW0gYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL21hYy9QbGF0Zm9ybVdlYlZpZXdNYWMubW0KaW5k
ZXggYWNjYmFlZDZkYjE0ZjUxODRlNDRkYmQ0NGU3ZDliZThlODJjNjVjNC4uM2QyYTY4MTAyMTA0
ZTIzMmNlOWQ5NDdkYWZmM2ViMmVkMDhhOGFiNyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9tYWMvUGxhdGZvcm1XZWJWaWV3TWFjLm1tCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvbWFjL1BsYXRmb3JtV2ViVmlld01hYy5tbQpAQCAtMzUsNiArMzUsNyBAQAogI2ltcG9y
dCA8V2ViS2l0L1dLV2ViVmlld0NvbmZpZ3VyYXRpb24uaD4KICNpbXBvcnQgPFdlYktpdC9XS1dl
YlZpZXdQcml2YXRlLmg+CiAjaW1wb3J0IDx3dGYvUmV0YWluUHRyLmg+CisjaW1wb3J0IDx3dGYv
dGV4dC9XVEZTdHJpbmcuaD4KIAogQGludGVyZmFjZSBXS1dlYlZpZXcgKCkKIC0gKFdLUGFnZVJl
ZilfcGFnZUZvclRlc3Rpbmc7CkBAIC0xNjcsNiArMTY4LDE5IEBAIHZvaWQgUGxhdGZvcm1XZWJW
aWV3OjpyZW1vdmVDaHJvbWVJbnB1dEZpZWxkKCkKICAgICB9CiB9CiAKK3ZvaWQgUGxhdGZvcm1X
ZWJWaWV3OjpzZXRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkKGNvbnN0IFN0cmluZyYpCit7Cit9CisK
K3ZvaWQgUGxhdGZvcm1XZWJWaWV3OjpzZWxlY3RDaHJvbWVJbnB1dEZpZWxkKCkKK3sKK30KKwor
U3RyaW5nIFBsYXRmb3JtV2ViVmlldzo6Z2V0U2VsZWN0ZWRUZXh0SW5DaHJvbWVJbnB1dEZpZWxk
KCkKK3sKKyAgICByZXR1cm4geyB9OworfQorCiB2b2lkIFBsYXRmb3JtV2ViVmlldzo6YWRkVG9X
aW5kb3coKQogewogICAgIFtbbV93aW5kb3cgY29udGVudFZpZXddIGFkZFN1YnZpZXc6bV92aWV3
XTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvd2luL1BsYXRmb3JtV2ViVmll
d1dpbi5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL3dpbi9QbGF0Zm9ybVdlYlZpZXdXaW4u
Y3BwCmluZGV4IDc2YThiNDRkNDEzZDdlNGY2NmE0NWNkYTAwY2JiYTE1OWE1MjAxODUuLjRkNDhk
Mzk3MTZhNzQ0NTg2ZDAwZTUzZGZjZTg4ZTgwNmIyOGI3ZDAgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvd2luL1BsYXRmb3JtV2ViVmlld1dpbi5jcHAKKysrIGIvVG9vbHMvV2Vi
S2l0VGVzdFJ1bm5lci93aW4vUGxhdGZvcm1XZWJWaWV3V2luLmNwcApAQCAtMTY4LDYgKzE2OCwx
OSBAQCB2b2lkIFBsYXRmb3JtV2ViVmlldzo6cmVtb3ZlQ2hyb21lSW5wdXRGaWVsZCgpCiB7CiB9
CiAKK3ZvaWQgUGxhdGZvcm1XZWJWaWV3OjpzZXRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkKGNvbnN0
IFN0cmluZyYpCit7Cit9CisKK3ZvaWQgUGxhdGZvcm1XZWJWaWV3OjpzZWxlY3RDaHJvbWVJbnB1
dEZpZWxkKCkKK3sKK30KKworU3RyaW5nIFBsYXRmb3JtV2ViVmlldzo6Z2V0U2VsZWN0ZWRUZXh0
SW5DaHJvbWVJbnB1dEZpZWxkKCkKK3sKKyAgICByZXR1cm4geyB9OworfQorCiB2b2lkIFBsYXRm
b3JtV2ViVmlldzo6YWRkVG9XaW5kb3coKQogewogfQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci93cGUvUGxhdGZvcm1XZWJWaWV3V1BFLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvd3BlL1BsYXRmb3JtV2ViVmlld1dQRS5jcHAKaW5kZXggNjM5NDc3M2Q4ODUwMGMwNTcy
NjA5ZmQyMjRiODk2OTAyZWIyMDBkNy4uY2M5ZDRiNTQzNDI0NGJlMjA2N2ZhYTRhODcyNGU5YzQ3
ZDk1MGE3NiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci93cGUvUGxhdGZvcm1X
ZWJWaWV3V1BFLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL3dwZS9QbGF0Zm9ybVdl
YlZpZXdXUEUuY3BwCkBAIC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSA8Y3N0ZGlvPgogI2luY2x1
ZGUgPGdsaWIuaD4KICNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0
L1dURlN0cmluZy5oPgogCiBuYW1lc3BhY2UgV1RSIHsKIApAQCAtODIsNiArODMsMTkgQEAgdm9p
ZCBQbGF0Zm9ybVdlYlZpZXc6OnJlbW92ZUNocm9tZUlucHV0RmllbGQoKQogewogfQogCit2b2lk
IFBsYXRmb3JtV2ViVmlldzo6c2V0VGV4dEluQ2hyb21lSW5wdXRGaWVsZChjb25zdCBTdHJpbmcm
KQoreworfQorCit2b2lkIFBsYXRmb3JtV2ViVmlldzo6c2VsZWN0Q2hyb21lSW5wdXRGaWVsZCgp
Cit7Cit9CisKK1N0cmluZyBQbGF0Zm9ybVdlYlZpZXc6OmdldFNlbGVjdGVkVGV4dEluQ2hyb21l
SW5wdXRGaWVsZCgpCit7CisgICAgcmV0dXJuIHsgfTsKK30KKwogdm9pZCBQbGF0Zm9ybVdlYlZp
ZXc6OmFkZFRvV2luZG93KCkKIHsKICAgICBtX3dpbmRvdy0+YWRkQWN0aXZpdHlTdGF0ZSh3cGVf
dmlld19hY3Rpdml0eV9zdGF0ZV9pbl93aW5kb3cpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDRlOTAyZDBiYmQ0MTRkNzc0
MTliYmY3NGZiM2NkMzZlOWI2NzIzODkuLjBmNWQ3Y2I4NGZkYjU5OGFmMjA2MzA1NjhmM2U3N2U1
NzZmZTM3MGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOCBAQAorMjAyMS0wNy0yNCAgV2Vuc29uIEhzaWVo
ICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBVbmlmaWVkIGZpZWxk
IGlzIHVuc2VsZWN0ZWQgYWZ0ZXIgZm9jdXNpbmcgVVJMIGJhciBpZiB0ZXh0IHdhcyBzZWxlY3Rl
ZCBpbiBhIGZpeGVkIHBvc2l0aW9uIGNvbnRhaW5lcgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI4MjY5CisgICAgICAgIHJkYXI6Ly84MDU1NjM5Mgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIG5l
dyBsYXlvdXQgdGVzdCB0aGF0IGluc3RhbGxzLCBmb2N1c2VzLCBhbmQgc2VsZWN0cyB0ZXh0IGlu
c2lkZSBhIG5hdGl2ZSBVSVRleHRGaWVsZCAoc2ltdWxhdGluZyBTYWZhcmkncworICAgICAgICBV
UkwgZmllbGQpIHdoaWxlIHRoZSBET00gc2VsZWN0aW9uIGlzIGluc2lkZSBhIGZpeGVkIHBvc2l0
aW9uIGNvbnRhaW5lciwgYW5kIHRoZW4gc2Nyb2xscyB0aGUgd2ViIHZpZXcgYSBiaXQgdG8KKyAg
ICAgICAgdGVtcG9yYXJpbHkgaW5kdWNlIGFuIHVuc3RhYmxlIHNjcm9sbGluZyB0cmVlIHN0YXRl
LiBBZnRlciB0aGlzLCB3ZSB2ZXJpZnkgdGhhdCB0aGUgdGV4dCBzZWxlY3Rpb24gaW5zaWRlIHRo
ZQorICAgICAgICBuYXRpdmUgdGV4dCBmaWVsZCBoYXMgbm90IGJlZW4gY2xlYXJlZC4KKworICAg
ICAgICBTZWUgVG9vbHMvIGNoYW5nZXMgZm9yIG1vcmUgZGV0YWlscy4KKworICAgICAgICAqIGVk
aXRpbmcvc2VsZWN0aW9uL2lvcy9zY3JvbGxpbmctd2l0aC1maXhlZC1zZWxlY3Rpb24tZG9lcy1u
b3QtdW5zZWxlY3QtbmF0aXZlLXRleHQtZmllbGQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBlZGl0aW5nL3NlbGVjdGlvbi9pb3Mvc2Nyb2xsaW5nLXdpdGgtZml4ZWQtc2VsZWN0aW9u
LWRvZXMtbm90LXVuc2VsZWN0LW5hdGl2ZS10ZXh0LWZpZWxkLmh0bWw6IEFkZGVkLgorICAgICAg
ICAqIHJlc291cmNlcy91aS1oZWxwZXIuanM6CisgICAgICAgICh3aW5kb3cuVUlIZWxwZXIuYWRk
Q2hyb21lSW5wdXRGaWVsZCk6CisgICAgICAgICh3aW5kb3cuVUlIZWxwZXIucmVtb3ZlQ2hyb21l
SW5wdXRGaWVsZCk6CisgICAgICAgICh3aW5kb3cuVUlIZWxwZXIuc2V0VGV4dEluQ2hyb21lSW5w
dXRGaWVsZCk6CisgICAgICAgICh3aW5kb3cuVUlIZWxwZXIuc2VsZWN0Q2hyb21lSW5wdXRGaWVs
ZCk6CisgICAgICAgICh3aW5kb3cuVUlIZWxwZXIuZ2V0U2VsZWN0ZWRUZXh0SW5DaHJvbWVJbnB1
dEZpZWxkKToKKyAgICAgICAgKHdpbmRvdy5VSUhlbHBlcik6CisKIDIwMjEtMDctMjQgIERldmlu
IFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgogCiAgICAgICAgIFtBcHBsZSBQYXldIERvIG5v
dCBhZGQgY291cG9uIGNvZGUgYEFwcGxlUGF5RXJyb3JDb2RlYCB2YWx1ZXMgZm9yIHN5c3RlbXMg
dGhhdCBkbyBub3Qgc3VwcG9ydCBpdApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9z
ZWxlY3Rpb24vaW9zL3Njcm9sbGluZy13aXRoLWZpeGVkLXNlbGVjdGlvbi1kb2VzLW5vdC11bnNl
bGVjdC1uYXRpdmUtdGV4dC1maWVsZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9lZGl0aW5n
L3NlbGVjdGlvbi9pb3Mvc2Nyb2xsaW5nLXdpdGgtZml4ZWQtc2VsZWN0aW9uLWRvZXMtbm90LXVu
c2VsZWN0LW5hdGl2ZS10ZXh0LWZpZWxkLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jOWNjOTBk
Y2E1Y2RkNDcwZmQ4Yzk4NDMyMzFiMjljZTFhZTU1ZDcyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL3Njcm9sbGluZy13aXRoLWZpeGVkLXNlbGVj
dGlvbi1kb2VzLW5vdC11bnNlbGVjdC1uYXRpdmUtdGV4dC1maWVsZC1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSwxMCBAQAorVGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgc2Nyb2xsaW5nIHdoaWxlIHRo
ZXJlIGlzIGEgc2VsZWN0aW9uIGluIGEgZml4ZWQgcG9zaXRpb24gY29udGFpbmVyIGRvZXMgbm90
IHVuc2VsZWN0IHRleHQgaW4gYSBmb2N1c2VkIG5hdGl2ZSB0ZXh0IGZpZWxkLiBUaGlzIHRlc3Qg
cmVxdWlyZXMgV2ViS2l0VGVzdFJ1bm5lci4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CisKK1BBU1Mgc2VsZWN0ZWRUZXh0SW5JbnB1dEZpZWxkIGlzICJGb28gYmFyIgorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitIZWxsbwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL3Njcm9sbGluZy13aXRoLWZpeGVk
LXNlbGVjdGlvbi1kb2VzLW5vdC11bnNlbGVjdC1uYXRpdmUtdGV4dC1maWVsZC5odG1sIGIvTGF5
b3V0VGVzdHMvZWRpdGluZy9zZWxlY3Rpb24vaW9zL3Njcm9sbGluZy13aXRoLWZpeGVkLXNlbGVj
dGlvbi1kb2VzLW5vdC11bnNlbGVjdC1uYXRpdmUtdGV4dC1maWVsZC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmViNTJiYTU5MGE3NDdkOWVhZDljYjFhMTViYzBlZDU2NTkxYmEyMmYKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9lZGl0aW5nL3NlbGVjdGlvbi9pb3Mvc2Nyb2xsaW5nLXdpdGgtZml4
ZWQtc2VsZWN0aW9uLWRvZXMtbm90LXVuc2VsZWN0LW5hdGl2ZS10ZXh0LWZpZWxkLmh0bWwKQEAg
LTAsMCArMSw1OCBAQAorPCFET0NUWVBFIGh0bWw+IDwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsg
dXNlRmxleGlibGVWaWV3cG9ydD10cnVlIF0gLS0+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgbmFt
ZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0x
Ij4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+
Cis8c3R5bGU+Citib2R5LCBodG1sIHsKKyAgICB3aWR0aDogMTAwJTsKKyAgICBoZWlnaHQ6IDEw
MDB2aDsKK30KKworLmZpeGVkIHsKKyAgICBwb3NpdGlvbjogZml4ZWQ7CisgICAgd2lkdGg6IDEw
MCU7CisgICAgaGVpZ2h0OiAxMDBweDsKKyAgICBib3R0b206IDA7CisgICAgbGVmdDogMDsKKyAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiB0b21hdG87CisgICAgdGV4dC1hbGlnbjogY2VudGVyOworICAg
IGZvbnQtc2l6ZTogMTAwcHg7Cit9Cis8L3N0eWxlPgorPHNjcmlwdD4KK2pzVGVzdElzQXN5bmMg
PSB0cnVlOworCithZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgYXN5bmMgKCkgPT4geworICAgIGRl
c2NyaXB0aW9uKCJUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCBzY3JvbGxpbmcgd2hpbGUgdGhlcmUg
aXMgYSBzZWxlY3Rpb24gaW4gYSBmaXhlZCBwb3NpdGlvbiBjb250YWluZXIgZG9lcyBub3QgdW5z
ZWxlY3QgdGV4dCBpbiBhIGZvY3VzZWQgbmF0aXZlIHRleHQgZmllbGQuIFRoaXMgdGVzdCByZXF1
aXJlcyBXZWJLaXRUZXN0UnVubmVyLiIpOworICAgIGlmICghd2luZG93LnRlc3RSdW5uZXIpCisg
ICAgICAgIHJldHVybjsKKworICAgIGdldFNlbGVjdGlvbigpLnNlbGVjdEFsbENoaWxkcmVuKGRv
Y3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5maXhlZCIpKTsKKworICAgIGF3YWl0IFVJSGVscGVyLmFk
ZENocm9tZUlucHV0RmllbGQoKTsKKyAgICBhd2FpdCBVSUhlbHBlci5zZXRUZXh0SW5DaHJvbWVJ
bnB1dEZpZWxkKCJGb28gYmFyIik7CisgICAgYXdhaXQgVUlIZWxwZXIuc2VsZWN0Q2hyb21lSW5w
dXRGaWVsZCgpOworICAgIGF3YWl0IFVJSGVscGVyLnNlbmRFdmVudFN0cmVhbShuZXcgVUlIZWxw
ZXIuRXZlbnRTdHJlYW1CdWlsZGVyKCkKKyAgICAgICAgLmJlZ2luKDE1MCwgMzUwKQorICAgICAg
ICAubW92ZSgxNTAsIDEwMCwgMC4yNSkKKyAgICAgICAgLm1vdmUoMTUwLCAzNTAsIDAuMjUpCisg
ICAgICAgIC5lbmQoKQorICAgICAgICAudGFrZVJlc3VsdCgpKTsKKworICAgIGF3YWl0IFVJSGVs
cGVyLmVuc3VyZVN0YWJsZVByZXNlbnRhdGlvblVwZGF0ZSgpOworCisgICAgc2VsZWN0ZWRUZXh0
SW5JbnB1dEZpZWxkID0gYXdhaXQgVUlIZWxwZXIuZ2V0U2VsZWN0ZWRUZXh0SW5DaHJvbWVJbnB1
dEZpZWxkKCk7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJzZWxlY3RlZFRleHRJbklucHV0
RmllbGQiLCAiRm9vIGJhciIpOworCisgICAgYXdhaXQgVUlIZWxwZXIucmVtb3ZlQ2hyb21lSW5w
dXRGaWVsZCgpOworICAgIGF3YWl0IFVJSGVscGVyLmJlY29tZUZpcnN0UmVzcG9uZGVyKCk7Cisg
ICAgZmluaXNoSlNUZXN0KCk7Cit9KTsKKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2
IGNsYXNzPSJmaXhlZCI+SGVsbG88L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9yZXNvdXJjZXMvdWktaGVs
cGVyLmpzIGIvTGF5b3V0VGVzdHMvcmVzb3VyY2VzL3VpLWhlbHBlci5qcwppbmRleCA4ZjMyNzRk
MzQzOTY5ZmM2Njg2MjFjYzY0NWYzYWJkYTVlOTFkZWUwLi45OTI1OGMyY2UwYWYxZjFjYjg3YmMw
NWQxNjQyYjA3ZmFhZGY0M2E5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9yZXNvdXJjZXMvdWkt
aGVscGVyLmpzCisrKyBiL0xheW91dFRlc3RzL3Jlc291cmNlcy91aS1oZWxwZXIuanMKQEAgLTE1
OTIsNiArMTU5MiwzMSBAQCB3aW5kb3cuVUlIZWxwZXIgPSBjbGFzcyBVSUhlbHBlciB7CiAgICAg
ICAgY29uc3Qgc2NyaXB0ID0gYCgoKSA9PiB1aUNvbnRyb2xsZXIuZGlzbWlzc0NvbnRhY3RQaWNr
ZXJXaXRoQ29udGFjdHMoJHtKU09OLnN0cmluZ2lmeShjb250YWN0cyl9KSkoKWA7CiAgICAgICAg
cmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4gdGVzdFJ1bm5lci5ydW5VSVNjcmlwdChzY3Jp
cHQsIHJlc29sdmUpKTsKICAgICB9CisKKyAgICBzdGF0aWMgYWRkQ2hyb21lSW5wdXRGaWVsZCgp
CisgICAgeworICAgICAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB0ZXN0UnVubmVy
LmFkZENocm9tZUlucHV0RmllbGQocmVzb2x2ZSkpOworICAgIH0KKworICAgIHN0YXRpYyByZW1v
dmVDaHJvbWVJbnB1dEZpZWxkKCkKKyAgICB7CisgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShy
ZXNvbHZlID0+IHRlc3RSdW5uZXIucmVtb3ZlQ2hyb21lSW5wdXRGaWVsZChyZXNvbHZlKSk7Cisg
ICAgfQorCisgICAgc3RhdGljIHNldFRleHRJbkNocm9tZUlucHV0RmllbGQodGV4dCkKKyAgICB7
CisgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHRlc3RSdW5uZXIuc2V0VGV4
dEluQ2hyb21lSW5wdXRGaWVsZCh0ZXh0LCByZXNvbHZlKSk7CisgICAgfQorCisgICAgc3RhdGlj
IHNlbGVjdENocm9tZUlucHV0RmllbGQoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIG5ldyBQcm9t
aXNlKHJlc29sdmUgPT4gdGVzdFJ1bm5lci5zZWxlY3RDaHJvbWVJbnB1dEZpZWxkKHJlc29sdmUp
KTsKKyAgICB9CisKKyAgICBzdGF0aWMgZ2V0U2VsZWN0ZWRUZXh0SW5DaHJvbWVJbnB1dEZpZWxk
KCkKKyAgICB7CisgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHRlc3RSdW5u
ZXIuZ2V0U2VsZWN0ZWRUZXh0SW5DaHJvbWVJbnB1dEZpZWxkKHJlc29sdmUpKTsKKyAgICB9CiB9
CiAKIFVJSGVscGVyLkV2ZW50U3RyZWFtQnVpbGRlciA9IGNsYXNzIHsK
</data>

          </attachment>
      

    </bug>

</bugzilla>