<?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>158828</bug_id>
          
          <creation_ts>2016-06-15 21:51:59 -0700</creation_ts>
          <short_desc>[iOS WK2] On iPad, indirect focussing of a text field doesn&apos;t always scroll to the correct location</short_desc>
          <delta_ts>2016-06-16 11:49: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>New Bugs</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>enrica</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1202864</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2016-06-15 21:51:59 -0700</bug_when>
    <thetext>[iOS WK2] On iPad, indirect focussing of a text field doesn&apos;t always scroll to the correct location</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1202866</commentid>
    <comment_count>1</comment_count>
      <attachid>281439</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2016-06-15 22:00:14 -0700</bug_when>
    <thetext>Created attachment 281439
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1202867</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-15 22:03:05 -0700</bug_when>
    <thetext>Attachment 281439 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm:1070:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm:1071:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 2 in 20 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1202961</commentid>
    <comment_count>3</comment_count>
      <attachid>281439</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2016-06-16 11:08:39 -0700</bug_when>
    <thetext>Comment on attachment 281439
Patch

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

&gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h:255
&gt; +- (void)keyboardAccessoryBarPrevious WK_AVAILABLE(WK_MAC_TBA, WK_IOS_TBA);

Why for macOS as well?

&gt; Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h:257
&gt; +@property (nonatomic) BOOL forceIPadStyleZoomOnInputFocus WK_AVAILABLE(WK_MAC_TBA, WK_IOS_TBA);

Ditto

&gt; LayoutTests/fast/forms/ios/resources/zooming-test-utils.js:2
&gt; +function testZoomAfterTap(targetElement, xOffset, yOffset, useIPadBehavior)

Do you also need to update the tests you added yesterday, now that this function takes one extra parameter?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1202968</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2016-06-16 11:49:44 -0700</bug_when>
    <thetext>https://trac.webkit.org/r202132</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>281439</attachid>
            <date>2016-06-15 22:00:14 -0700</date>
            <delta_ts>2016-06-16 11:08:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-158828-20160615220013.patch</filename>
            <type>text/plain</type>
            <size>23857</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAyMTE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMWM0Njc4YjE5ZTViZjVj
ODNmMTk1NjNlNTYzOWQzNzFjNzc1NmJkZS4uZTE2N2JmYmEwMDk0MGMxMTdhMTBmYmM5MWI1MmIx
ODQxMDczZWEzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDE2LTA2LTE1ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFtpT1MgV0syXSBP
biBpUGFkLCBpbmRpcmVjdCBmb2N1c3Npbmcgb2YgYSB0ZXh0IGZpZWxkIGRvZXNuJ3QgYWx3YXlz
IHNjcm9sbCB0byB0aGUgY29ycmVjdCBsb2NhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4ODI4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBXZWJQYWdlOjpnZXRBc3Npc3RlZE5vZGVJ
bmZvcm1hdGlvbigpIHVuY29uZGl0aW9uYWxseSBzZXQgaW5mb3JtYXRpb24uc2VsZWN0aW9uUmVj
dCgpCisgICAgICAgIHRvIGEgMXgxIHJlY3QgYXQgdGhlIGxhc3QgaW50ZXJhY3Rpb24gbG9jYXRp
b24uIFRoaXMgY2F1c2VkIC1bV0tXZWJWaWV3IF96b29tVG9Gb2N1c1JlY3Q6Li4uXQorICAgICAg
ICB0byBlYXJseSByZXR1cm4gdW5kZXIgdGhlICFmb3JjZVNjcm9sbCBjbGF1c2UgaWYgdGhlIGxh
c3QgaW50ZXJhY3Rpb24gcmVjdCB3YXMgdmlzaWJsZSwgYnV0CisgICAgICAgIHRoZSBlbGVtZW50
UmVjdCB3YXMgbm90LiBUaGlzIHdvdWxkIGhhcHBlbiwgZm9yIGV4YW1wbGUsIGlmIGEgY2xpY2sg
aW4gYSA8YnV0dG9uPiBmb2N1c3NlZAorICAgICAgICBhbiBpbnB1dCBvbiBzb21lIG90aGVyIHBv
cnRpb24gb2YgdGhlIHBhZ2UuIFRoaXMgYmVoYXZpb3IgaXMgaVBhZC1vbmx5LCBiZWNhdXNlIGZv
cmNlU2Nyb2xsCisgICAgICAgIGlzIG9ubHkgTk8gdGhlcmUuCisgICAgICAgIAorICAgICAgICBG
aXggYnkgbWFraW5nIGdldEFzc2lzdGVkTm9kZUluZm9ybWF0aW9uKCkgb25seSBzZXQgdGhlIHNl
bGVjdGlvblJlY3QgdG8gdGhlIGxhc3QgaW50ZXJhY3Rpb24KKyAgICAgICAgbG9jYXRpb24gaWYg
dGhhdCBpcyBpbnNpZGUgb2YgdGhlIGVsZW1lbnRSZWN0ICh0aGlzIGNhdGVycyB0byB0aGUgY2Fz
ZSB3aGVyZSBhIHRhcCBpcyBpbnNpZGUKKyAgICAgICAgYW4gaW5wdXQgd2hpY2ggaXMgbGFyZ2Vy
IHRoYW4gdGhlIHNjcmVlbikuIE90aGVyd2lzZSwgc2V0IGl0IHRvIHRoZSBlbXB0eSByZWN0Lgor
ICAgICAgICAKKyAgICAgICAgTWFrZSB0aGlzIHRlc3RhYmxlIGJ5IGFsbG93aW5nIGEgdGVzdCB0
byBvcHQgaW50byB0aGUgaVBhZC1zdHlsZSBzY3JvbGxpbmcvem9vbWluZyBiZWhhdmlvcgorICAg
ICAgICBpbiB0aGlzIGNvZGUgcGF0aCAoZXNzZW50aWFsbHksIG1ha2luZyBmb3JjZVNjcm9sbCBO
TyBmb3IgdGVzdGluZyksIHZpYSB0ZXN0aW5nIFNQSSBvbiBXS1dlYlZpZXcsCisgICAgICAgIHBs
dW1iZWQgdGhyb3VnaCB0byBXS0NvbnRlbnRWaWV3LgorCisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1dlYlZpZXcubW06CisgICAgICAgICgtW1dLV2ViVmlldyBmb3JjZUlQYWRTdHls
ZVpvb21PbklucHV0Rm9jdXNdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3IHNldEZvcmNlSVBhZFN0
eWxlWm9vbU9uSW5wdXRGb2N1czpdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dL
V2ViVmlld1ByaXZhdGUuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJ
bnRlcmFjdGlvbi5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVy
YWN0aW9uLm1tOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IF9kaXNwbGF5Rm9ybU5vZGVJbnB1
dFZpZXddKToKKyAgICAgICAgKC1bV0tDb250ZW50VmlldyByZXF1aXJlc0FjY2Vzc29yeVZpZXc6
XSk6CisgICAgICAgICgtW1dLQ29udGVudFZpZXcgaW5wdXRBY2Nlc3NvcnlWaWV3XSk6CisgICAg
ICAgICgtW1dLQ29udGVudFZpZXcgZm9yY2VJUGFkU3R5bGVab29tT25JbnB1dEZvY3VzXSk6Cisg
ICAgICAgICgtW1dLQ29udGVudFZpZXcgc2V0Rm9yY2VJUGFkU3R5bGVab29tT25JbnB1dEZvY3Vz
Ol0pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IHJlcXVpcmVzQWNjZXNzb3J5Vmlld10pOiBS
ZW1vdmUgcmVkdW5kYW50IHJldHVybnMsIGFuZCBhbGxvdyB0ZXN0aW5nIHRvCisgICAgICAgIG92
ZXJyaWRlIHRoZSAiaXNJUGFkIiBjb25kaXRpb24uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQ
YWdlL2lvcy9XZWJQYWdlSU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpnZXRBc3Np
c3RlZE5vZGVJbmZvcm1hdGlvbik6CisKIDIwMTYtMDYtMTMgIFNpbW9uIEZyYXNlciAgPHNpbW9u
LmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgW2lPUyBXSzJdIE1ha2UgaXQgcG9zc2libGUg
dG8gdGVzdCB0aGUgTmV4dC9QcmV2aW91cyBidXR0b25zIGluIHRoZSBrZXlib2FyZCBhY2Nlc3Nv
cnkgYmFyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dL
V2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3
Lm1tCmluZGV4IGI4ODI2ZGM0N2Q4MzQyY2JkYTg5MjVhNjdjYmFlOTZiNTRmMmM4MDQuLmM4MjA3
NzgxNDc2ZjY3ZWVkZDBiMzY5ODRlZmYyMDIyZWMzODQ1ZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCkBAIC00NDQ4LDYgKzQ0NDgsMTYg
QEAgLSAodm9pZClrZXlib2FyZEFjY2Vzc29yeUJhclByZXZpb3VzCiAgICAgW19jb250ZW50Vmll
dyBhY2Nlc3NvcnlUYWI6Tk9dOwogfQogCistIChCT09MKWZvcmNlSVBhZFN0eWxlWm9vbU9uSW5w
dXRGb2N1cworeworICAgIHJldHVybiBbX2NvbnRlbnRWaWV3IGZvcmNlSVBhZFN0eWxlWm9vbU9u
SW5wdXRGb2N1c107Cit9CisKKy0gKHZvaWQpc2V0Rm9yY2VJUGFkU3R5bGVab29tT25JbnB1dEZv
Y3VzOihCT09MKWZvcmNlSVBhZFN0eWxlWm9vbQoreworICAgIFtfY29udGVudFZpZXcgc2V0Rm9y
Y2VJUGFkU3R5bGVab29tT25JbnB1dEZvY3VzOmZvcmNlSVBhZFN0eWxlWm9vbV07Cit9CisKICNl
bmRpZiAvLyBQTEFURk9STShJT1MpCiAKICNpZiBQTEFURk9STShNQUMpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaCBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3UHJpdmF0ZS5oCmluZGV4
IDk3ODM0OGViNWIxYTAzMTk3ZmM4YWEzOWRjM2UwMzU4MGRmZmEyMTMuLjMxNWY0M2UyMGE4MDJi
Mzg0MGM0MTFkZTUyMTIxMzQwZDRjMDg1MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3UHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3UHJpdmF0ZS5oCkBAIC0yNTEsOCArMjUxLDEw
IEBAIHR5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIsIF9XS0ltbWVkaWF0ZUFjdGlvblR5cGUpIHsK
IC0gKENHUG9pbnQpX2NvbnZlcnRQb2ludEZyb21Db250ZW50c1RvVmlldzooQ0dQb2ludClwb2lu
dCBXS19BVkFJTEFCTEUoV0tfTUFDX1RCQSwgV0tfSU9TX1RCQSk7CiAtIChDR1BvaW50KV9jb252
ZXJ0UG9pbnRGcm9tVmlld1RvQ29udGVudHM6KENHUG9pbnQpcG9pbnQgV0tfQVZBSUxBQkxFKFdL
X01BQ19UQkEsIFdLX0lPU19UQkEpOwogCi0tICh2b2lkKWtleWJvYXJkQWNjZXNzb3J5QmFyTmV4
dDsKLS0gKHZvaWQpa2V5Ym9hcmRBY2Nlc3NvcnlCYXJQcmV2aW91czsKKy0gKHZvaWQpa2V5Ym9h
cmRBY2Nlc3NvcnlCYXJOZXh0IFdLX0FWQUlMQUJMRShXS19NQUNfVEJBLCBXS19JT1NfVEJBKTsK
Ky0gKHZvaWQpa2V5Ym9hcmRBY2Nlc3NvcnlCYXJQcmV2aW91cyBXS19BVkFJTEFCTEUoV0tfTUFD
X1RCQSwgV0tfSU9TX1RCQSk7CisKK0Bwcm9wZXJ0eSAobm9uYXRvbWljKSBCT09MIGZvcmNlSVBh
ZFN0eWxlWm9vbU9uSW5wdXRGb2N1cyBXS19BVkFJTEFCTEUoV0tfTUFDX1RCQSwgV0tfSU9TX1RC
QSk7CiAjZW5kaWYKIAogI2lmICFUQVJHRVRfT1NfSVBIT05FCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24uaAppbmRleCBi
ZTAxMjFjMDQxNzA4MTkyNTAwYmI0NzE3NTQ3NDY0ZDkwYWMxMmZlLi5jNDRhNDg1YWU0ZDkwMTkw
ZTI5ZDM2M2EwOWZmYmY4OGMwYmZkODI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgKQEAgLTE3MSw2ICsxNzEs
OSBAQCBzdHJ1Y3QgV0tBdXRvQ29ycmVjdGlvbkRhdGEgewogICAgIEJPT0wgX3Nob3dEZWJ1Z1Rh
cEhpZ2hsaWdodHNGb3JGYXN0Q2xpY2tpbmc7CiAKICAgICBCT09MIF9yZXNpZ25pbmdGaXJzdFJl
c3BvbmRlcjsKKworICAgIC8vIEZvciB0ZXN0aW5nLgorICAgIEJPT0wgX2ZvcmNlSVBhZFN0eWxl
Wm9vbU9uSW5wdXRGb2N1czsKIH0KIAogQGVuZApAQCAtMjMxLDQgKzIzNCwxMCBAQCBzdHJ1Y3Qg
V0tBdXRvQ29ycmVjdGlvbkRhdGEgewogQGVuZAogI2VuZGlmCiAKK0BpbnRlcmZhY2UgV0tDb250
ZW50VmlldyAoV0tJbnRlcmFjdGlvblRlc3RpbmcpCisKK0Bwcm9wZXJ0eSAobm9uYXRvbWljKSBC
T09MIGZvcmNlSVBhZFN0eWxlWm9vbU9uSW5wdXRGb2N1czsKKworQGVuZAorCiAjZW5kaWYgLy8g
UExBVEZPUk0oSU9TKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9X
S0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9z
L1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5tbQppbmRleCA5YTI4MTM2ZWJhYTM0OTQ0NjBmMDE5
NWU1MTg3MGQxNjNlODc4NDUzLi42MjYwZGU0NjExYThlYWRhNWNjMTUyOWMxMzNjNzUxYzY4MDYz
ZmM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZp
ZXdJbnRlcmFjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29u
dGVudFZpZXdJbnRlcmFjdGlvbi5tbQpAQCAtMTA2Nyw4ICsxMDY3LDkgQEAgLSAodm9pZClfZGlz
cGxheUZvcm1Ob2RlSW5wdXRWaWV3CiAgICAgICAgICAgICAgICAgICBmb250U2l6ZTpfYXNzaXN0
ZWROb2RlSW5mb3JtYXRpb24ubm9kZUZvbnRTaXplCiAgICAgICAgICAgICAgIG1pbmltdW1TY2Fs
ZTpfYXNzaXN0ZWROb2RlSW5mb3JtYXRpb24ubWluaW11bVNjYWxlRmFjdG9yCiAgICAgICAgICAg
ICAgIG1heGltdW1TY2FsZTpfYXNzaXN0ZWROb2RlSW5mb3JtYXRpb24ubWF4aW11bVNjYWxlRmFj
dG9yCi0gICAgICAgICAgICAgIGFsbG93U2NhbGluZzooX2Fzc2lzdGVkTm9kZUluZm9ybWF0aW9u
LmFsbG93c1VzZXJTY2FsaW5nSWdub3JpbmdGb3JjZUFsd2F5c1NjYWxpbmcgJiYgIVVJQ3VycmVu
dFVzZXJJbnRlcmZhY2VJZGlvbUlzUGFkKCkpCi0gICAgICAgICAgICAgICBmb3JjZVNjcm9sbDpb
c2VsZiByZXF1aXJlc0FjY2Vzc29yeVZpZXddXTsKKyAgICAgICAgICAgICAgYWxsb3dTY2FsaW5n
OihfYXNzaXN0ZWROb2RlSW5mb3JtYXRpb24uYWxsb3dzVXNlclNjYWxpbmdJZ25vcmluZ0ZvcmNl
QWx3YXlzU2NhbGluZyAmJiAoIVVJQ3VycmVudFVzZXJJbnRlcmZhY2VJZGlvbUlzUGFkKCkgfHwg
X2ZvcmNlSVBhZFN0eWxlWm9vbU9uSW5wdXRGb2N1cykpCisgICAgICAgICAgICAgICBmb3JjZVNj
cm9sbDpbc2VsZiByZXF1aXJlc0FjY2Vzc29yeVZpZXc6X2ZvcmNlSVBhZFN0eWxlWm9vbU9uSW5w
dXRGb2N1c11dOworCiAgICAgX2RpZEFjY2Vzc29yeVRhYkluaXRpYXRlRm9jdXMgPSBOTzsKICAg
ICBbc2VsZiBfZW5zdXJlRm9ybUFjY2Vzc29yeVZpZXddOwogICAgIFtzZWxmIF91cGRhdGVBY2Nl
c3NvcnldOwpAQCAtMTU3OSw3ICsxNTgwLDcgQEAgLSAodm9pZClfZGlkRW5kU2Nyb2xsaW5nT3Ja
b29taW5nCiAgICAgW190ZXh0U2VsZWN0aW9uQXNzaXN0YW50IGRpZEVuZFNjcm9sbGluZ092ZXJm
bG93XTsKIH0KIAotLSAoQk9PTClyZXF1aXJlc0FjY2Vzc29yeVZpZXcKKy0gKEJPT0wpcmVxdWly
ZXNBY2Nlc3NvcnlWaWV3OihCT09MKWZvcmNlSVBhZEJlaGF2aW9yCiB7CiAgICAgaWYgKFtfZm9y
bUlucHV0U2Vzc2lvbiBhY2Nlc3NvcnlWaWV3U2hvdWxkTm90U2hvd10pCiAgICAgICAgIHJldHVy
biBOTzsKQEAgLTE1OTUsMTAgKzE1OTYsOCBAQCAtIChCT09MKXJlcXVpcmVzQWNjZXNzb3J5Vmll
dwogICAgIGNhc2UgSW5wdXRUeXBlOjpQaG9uZToKICAgICBjYXNlIElucHV0VHlwZTo6TnVtYmVy
OgogICAgIGNhc2UgSW5wdXRUeXBlOjpOdW1iZXJQYWQ6Ci0gICAgICAgIHJldHVybiAhVUlDdXJy
ZW50VXNlckludGVyZmFjZUlkaW9tSXNQYWQoKTsKICAgICBjYXNlIElucHV0VHlwZTo6Q29udGVu
dEVkaXRhYmxlOgogICAgIGNhc2UgSW5wdXRUeXBlOjpUZXh0QXJlYToKLSAgICAgICAgcmV0dXJu
ICFVSUN1cnJlbnRVc2VySW50ZXJmYWNlSWRpb21Jc1BhZCgpOwogICAgIGNhc2UgSW5wdXRUeXBl
OjpTZWxlY3Q6CiAgICAgY2FzZSBJbnB1dFR5cGU6OkRhdGU6CiAgICAgY2FzZSBJbnB1dFR5cGU6
OkRhdGVUaW1lOgpAQCAtMTYwNiw3ICsxNjA1LDcgQEAgLSAoQk9PTClyZXF1aXJlc0FjY2Vzc29y
eVZpZXcKICAgICBjYXNlIElucHV0VHlwZTo6TW9udGg6CiAgICAgY2FzZSBJbnB1dFR5cGU6Oldl
ZWs6CiAgICAgY2FzZSBJbnB1dFR5cGU6OlRpbWU6Ci0gICAgICAgIHJldHVybiAhVUlDdXJyZW50
VXNlckludGVyZmFjZUlkaW9tSXNQYWQoKTsKKyAgICAgICAgcmV0dXJuICEoVUlDdXJyZW50VXNl
ckludGVyZmFjZUlkaW9tSXNQYWQoKSB8fCBmb3JjZUlQYWRCZWhhdmlvcik7CiAgICAgfQogfQog
CkBAIC0xNjIxLDcgKzE2MjAsNyBAQCAtICh2b2lkKV9lbnN1cmVGb3JtQWNjZXNzb3J5Vmlldwog
CiAtIChVSVZpZXcgKilpbnB1dEFjY2Vzc29yeVZpZXcKIHsKLSAgICBpZiAoIVtzZWxmIHJlcXVp
cmVzQWNjZXNzb3J5Vmlld10pCisgICAgaWYgKCFbc2VsZiByZXF1aXJlc0FjY2Vzc29yeVZpZXc6
Tk9dKQogICAgICAgICByZXR1cm4gbmlsOwogCiAgICAgcmV0dXJuIHNlbGYuZm9ybUFjY2Vzc29y
eVZpZXc7CkBAIC00MTEyLDYgKzQxMTEsMjEgQEAgQGVuZAogCiAjZW5kaWYKIAorQGltcGxlbWVu
dGF0aW9uIFdLQ29udGVudFZpZXcgKFdLSW50ZXJhY3Rpb25UZXN0aW5nKQorCistIChCT09MKWZv
cmNlSVBhZFN0eWxlWm9vbU9uSW5wdXRGb2N1cworeworICAgIHJldHVybiBfZm9yY2VJUGFkU3R5
bGVab29tT25JbnB1dEZvY3VzOworfQorCistICh2b2lkKXNldEZvcmNlSVBhZFN0eWxlWm9vbU9u
SW5wdXRGb2N1czooQk9PTClmb3JjZUlQYWRTdHlsZVpvb20KK3sKKyAgICBfZm9yY2VJUGFkU3R5
bGVab29tT25JbnB1dEZvY3VzID0gZm9yY2VJUGFkU3R5bGVab29tOworfQorCitAZW5kCisKKwog
Ly8gVUlUZXh0UmFuZ2UsIFVJVGV4dFBvc2l0aW9uIGFuZCBVSVRleHRTZWxlY3Rpb25SZWN0IGlt
cGxlbWVudGF0aW9ucyBmb3IgV0syCiAKIEBpbXBsZW1lbnRhdGlvbiBXS1RleHRSYW5nZSAoVUlU
ZXh0SW5wdXRBZGRpdGlvbnMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0gYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KaW5kZXggYmJjYWIxNWFkMDIwNWM5MjVjM2MwMmQ3OWZm
ZWQzNDZhNDk0MmQ4OC4uZWY4ZGE3YTk3NjRmMGU3N2FjOTQ1ZWEyYmFiODg2YWViYzIyYmQ0NiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9XZWJQYWdl
SU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFn
ZUlPUy5tbQpAQCAtMjUxNiw5ICsyNTE2LDggQEAgdm9pZCBXZWJQYWdlOjpnZXRBc3Npc3RlZE5v
ZGVJbmZvcm1hdGlvbihBc3Npc3RlZE5vZGVJbmZvcm1hdGlvbiYgaW5mb3JtYXRpb24pCiB7CiAg
ICAgbGF5b3V0SWZOZWVkZWQoKTsKIAotICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCByZXR1cm4g
dGhlIHNlbGVjdGlvbiByZWN0LCBidXQgd2hlbiB0aGlzIGlzIGNhbGxlZCBhdCBmb2N1cyB0aW1l
CisgICAgLy8gRklYTUU6IGluZm9ybWF0aW9uLnNlbGVjdGlvblJlY3Qgc2hvdWxkIGJlIHNldCB0
byB0aGUgYWN0dWFsIHNlbGVjdGlvbiByZWN0LCBidXQgd2hlbiB0aGlzIGlzIGNhbGxlZCBhdCBm
b2N1cyB0aW1lCiAgICAgLy8gd2UgZG9uJ3QgaGF2ZSBhIHNlbGVjdGlvbiB5ZXQuIFVzaW5nIHRo
ZSBsYXN0IGludGVyYWN0aW9uIGxvY2F0aW9uIGlzIGEgcmVhc29uYWJsZSBhcHByb3hpbWF0aW9u
IGZvciBub3cuCi0gICAgLy8gRklYTUU6IHNob3VsZCB0aGUgc2VsZWN0aW9uIHJlY3QgYWx3YXlz
IGJlIGluc2lkZSB0aGUgZWxlbWVudFJlY3Q/CiAgICAgaW5mb3JtYXRpb24uc2VsZWN0aW9uUmVj
dCA9IEludFJlY3QobV9sYXN0SW50ZXJhY3Rpb25Mb2NhdGlvbiwgSW50U2l6ZSgxLCAxKSk7CiAK
ICAgICBpZiAoUmVuZGVyT2JqZWN0KiByZW5kZXJlciA9IG1fYXNzaXN0ZWROb2RlLT5yZW5kZXJl
cigpKSB7CkBAIC0yNTM4LDggKzI1MzcsMTIgQEAgdm9pZCBXZWJQYWdlOjpnZXRBc3Npc3RlZE5v
ZGVJbmZvcm1hdGlvbihBc3Npc3RlZE5vZGVJbmZvcm1hdGlvbiYgaW5mb3JtYXRpb24pCiAgICAg
ICAgICAgICBpbmZvcm1hdGlvbi5lbGVtZW50UmVjdCA9IGZyYW1lVmlldy0+Y29udGVudHNUb1Jv
b3RWaWV3KHJlbmRlcmVyLT5hYnNvbHV0ZUJvdW5kaW5nQm94UmVjdCgpKTsKICAgICAgICAgICAg
IGZyYW1lVmlldy0+c2V0Q3VzdG9tRml4ZWRQb3NpdGlvbkxheW91dFJlY3QoY3VycmVudEZpeGVk
UG9zaXRpb25SZWN0KTsKICAgICAgICAgICAgIAotICAgICAgICAgICAgaWYgKCFpbmZvcm1hdGlv
bi5lbGVtZW50UmVjdC5jb250YWlucyhpbmZvcm1hdGlvbi5zZWxlY3Rpb25SZWN0KSkKKyAgICAg
ICAgICAgIGlmICghaW5mb3JtYXRpb24uZWxlbWVudFJlY3QuY29udGFpbnMobV9sYXN0SW50ZXJh
Y3Rpb25Mb2NhdGlvbikpCiAgICAgICAgICAgICAgICAgaW5mb3JtYXRpb24uc2VsZWN0aW9uUmVj
dC5zZXRMb2NhdGlvbihpbmZvcm1hdGlvbi5lbGVtZW50UmVjdC5sb2NhdGlvbigpKTsKKyAgICAg
ICAgfSBlbHNlIHsKKyAgICAgICAgICAgIC8vIERvbid0IHVzZSB0aGUgc2VsZWN0aW9uIHJlY3Qg
aWYgaW50ZXJhY3Rpb24gd2FzIG91dHNpZGUgdGhlIGVsZW1lbnQgcmVjdC4KKyAgICAgICAgICAg
IGlmICghaW5mb3JtYXRpb24uZWxlbWVudFJlY3QuY29udGFpbnMobV9sYXN0SW50ZXJhY3Rpb25M
b2NhdGlvbikpCisgICAgICAgICAgICAgICAgaW5mb3JtYXRpb24uc2VsZWN0aW9uUmVjdCA9IElu
dFJlY3QoKTsKICAgICAgICAgfQogICAgIH0gZWxzZQogICAgICAgICBpbmZvcm1hdGlvbi5lbGVt
ZW50UmVjdCA9IEludFJlY3QoKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xz
L0NoYW5nZUxvZwppbmRleCA2MDJiMWYyYTA0YTZmNzVjYzBhMWFiZWE5ZGZlMDZiNTZhODNjMDQw
Li4yYWVkYzc0MGRmMjAzOWU5NWY0MDA1YTQyMTYxNjNlNzAwMmU0N2I2IDEwMDY0NAotLS0gYS9U
b29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIw
MTYtMDYtMTUgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAg
ICAgW2lPUyBXSzJdIE9uIGlQYWQsIGluZGlyZWN0IGZvY3Vzc2luZyBvZiBhIHRleHQgZmllbGQg
ZG9lc24ndCBhbHdheXMgc2Nyb2xsIHRvIHRoZSBjb3JyZWN0IGxvY2F0aW9uCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTg4MjgKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIEV4cG9zZSAiZm9y
Y2VJUGFkU3R5bGVab29tT25JbnB1dEZvY3VzIiBvbiBVSVNjcmlwdENvbnRyb2xsZXIsIHdoaWNo
IGFsbG93cyBpUGFkLXN0eWxlCisgICAgICAgIHpvb21pbmcgYmVoYXZpb3Igb24gPGlucHV0PiBm
b2N1cyBpbiB0aGUgaVBob25lIHNpbXVsYXRvciwgd2hpY2ggaXMgdXNlZCBmb3IgdGVzdGluZy4K
KworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVUlTY3JpcHRDb250ZXh0L0JpbmRpbmdzL1VJ
U2NyaXB0Q29udHJvbGxlci5pZGw6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9VSVNjcmlw
dENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRD
b250cm9sbGVyOjpmb3JjZUlQYWRTdHlsZVpvb21PbklucHV0Rm9jdXMpOgorICAgICAgICAoV1RS
OjpVSVNjcmlwdENvbnRyb2xsZXI6OnNldEZvcmNlSVBhZFN0eWxlWm9vbU9uSW5wdXRGb2N1cyk6
CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250
cm9sbGVyLmg6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9pb3MvVGVzdENvbnRyb2xsZXJJ
T1MubW06CisgICAgICAgIChXVFI6OlRlc3RDb250cm9sbGVyOjpwbGF0Zm9ybVJlc2V0U3RhdGVU
b0NvbnNpc3RlbnRWYWx1ZXMpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvaW9zL1VJU2Ny
aXB0Q29udHJvbGxlcklPUy5tbToKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyOjpm
b3JjZUlQYWRTdHlsZVpvb21PbklucHV0Rm9jdXMpOgorICAgICAgICAoV1RSOjpVSVNjcmlwdENv
bnRyb2xsZXI6OnNldEZvcmNlSVBhZFN0eWxlWm9vbU9uSW5wdXRGb2N1cyk6CisKIDIwMTYtMDYt
MTMgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgW2lP
UyBXSzJdIE1ha2UgaXQgcG9zc2libGUgdG8gdGVzdCB0aGUgTmV4dC9QcmV2aW91cyBidXR0b25z
IGluIHRoZSBrZXlib2FyZCBhY2Nlc3NvcnkgYmFyCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRU
ZXN0UnVubmVyL1VJU2NyaXB0Q29udGV4dC9CaW5kaW5ncy9VSVNjcmlwdENvbnRyb2xsZXIuaWRs
IGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9VSVNjcmlwdENvbnRleHQvQmluZGluZ3MvVUlTY3Jp
cHRDb250cm9sbGVyLmlkbAppbmRleCAzYmM1YTZiMTUzYmZmZDAwN2E3YWQyZWZiMTRmMTA4OTYw
ZWU5NDlmLi43NzhlZDYxOTQ0N2RjZTk4MzdkMDM5ZDFhNWVjNGVmODM0NDhiYjk3IDEwMDY0NAot
LS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1VJU2NyaXB0Q29udGV4dC9CaW5kaW5ncy9VSVNj
cmlwdENvbnRyb2xsZXIuaWRsCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVUlTY3JpcHRD
b250ZXh0L0JpbmRpbmdzL1VJU2NyaXB0Q29udHJvbGxlci5pZGwKQEAgLTYwLDUgKzYwLDggQEAg
aW50ZXJmYWNlIFVJU2NyaXB0Q29udHJvbGxlciB7CiAKICAgICByZWFkb25seSBhdHRyaWJ1dGUg
b2JqZWN0IGNvbnRlbnRWaXNpYmxlUmVjdDsgLy8gUmV0dXJuZWQgb2JqZWN0IGhhcyAnbGVmdCcs
ICd0b3AnLCAnd2lkdGgnLCAnaGVpZ2h0JyBwcm9wZXJ0aWVzLgogCisgICAgLy8gQmVoYXZpb3IK
KyAgICBhdHRyaWJ1dGUgYm9vbGVhbiBmb3JjZUlQYWRTdHlsZVpvb21PbklucHV0Rm9jdXM7CisK
ICAgICB2b2lkIHVpU2NyaXB0Q29tcGxldGUoRE9NU3RyaW5nIHJlc3VsdCk7CiB9OwpkaWZmIC0t
Z2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250
cm9sbGVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVUlTY3JpcHRDb250ZXh0L1VJU2Ny
aXB0Q29udHJvbGxlci5jcHAKaW5kZXggZjMyN2JmOTkxODdlOTBjNzU2ZGFiNmVmOGM3YzZhYmE5
MTcwYTljZi4uNjAxMWZjYTVkODY5NjVmYzY3OTE0YjAwMDVjMDk3YWNmOWZlNjRiNCAxMDA2NDQK
LS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250
cm9sbGVyLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1VJU2NyaXB0Q29udGV4dC9V
SVNjcmlwdENvbnRyb2xsZXIuY3BwCkBAIC0xNzgsNiArMTc4LDE1IEBAIEpTT2JqZWN0UmVmIFVJ
U2NyaXB0Q29udHJvbGxlcjo6Y29udGVudFZpc2libGVSZWN0KCkgY29uc3QKICAgICByZXR1cm4g
bnVsbHB0cjsKIH0KIAorYm9vbCBVSVNjcmlwdENvbnRyb2xsZXI6OmZvcmNlSVBhZFN0eWxlWm9v
bU9uSW5wdXRGb2N1cygpIGNvbnN0Cit7CisgICAgcmV0dXJuIGZhbHNlOworfQorCit2b2lkIFVJ
U2NyaXB0Q29udHJvbGxlcjo6c2V0Rm9yY2VJUGFkU3R5bGVab29tT25JbnB1dEZvY3VzKGJvb2wp
Cit7Cit9CisKIHZvaWQgVUlTY3JpcHRDb250cm9sbGVyOjpwbGF0Zm9ybVNldFdpbGxCZWdpblpv
b21pbmdDYWxsYmFjaygpCiB7CiB9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVy
L1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaCBiL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvVUlTY3JpcHRDb250ZXh0L1VJU2NyaXB0Q29udHJvbGxlci5oCmluZGV4IGI1MDQ3ODY1
OWY0NDQyYWQxNDQ1OTRjNWFmYzY0ZTM4Y2EyYTZmYjYuLjQ5ZWUyNzI3YzBjY2M1MDJjYTYxZWJk
OWIxMzI2MGI2MDU5YzAzODYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVUlT
Y3JpcHRDb250ZXh0L1VJU2NyaXB0Q29udHJvbGxlci5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvVUlTY3JpcHRDb250ZXh0L1VJU2NyaXB0Q29udHJvbGxlci5oCkBAIC04MCw2ICs4MCw5
IEBAIHB1YmxpYzoKICAgICBkb3VibGUgbWF4aW11bVpvb21TY2FsZSgpIGNvbnN0OwogCiAgICAg
SlNPYmplY3RSZWYgY29udGVudFZpc2libGVSZWN0KCkgY29uc3Q7CisgICAgCisgICAgYm9vbCBm
b3JjZUlQYWRTdHlsZVpvb21PbklucHV0Rm9jdXMoKSBjb25zdDsKKyAgICB2b2lkIHNldEZvcmNl
SVBhZFN0eWxlWm9vbU9uSW5wdXRGb2N1cyhib29sKTsKIAogICAgIHZvaWQgdWlTY3JpcHRDb21w
bGV0ZShKU1N0cmluZ1JlZiByZXN1bHQpOwogCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL2lvcy9UZXN0Q29udHJvbGxlcklPUy5tbSBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
aW9zL1Rlc3RDb250cm9sbGVySU9TLm1tCmluZGV4IGE0MGU2NjgwMWU1ZWFlODFhYzQzZGYxZDgx
YjdmYjE5ZjdjNmQwY2UuLmM2NDBlMDhhNjE4ZGFjNjdmZjA0YzZiYjBmZGQwNjk4YjllZGE3NWQg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9zL1Rlc3RDb250cm9sbGVySU9T
Lm1tCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9zL1Rlc3RDb250cm9sbGVySU9TLm1t
CkBAIC0yOSwxMyArMjksMTMgQEAKICNpbXBvcnQgIlBsYXRmb3JtV2ViVmlldy5oIgogI2ltcG9y
dCAiVGVzdEludm9jYXRpb24uaCIKICNpbXBvcnQgPEZvdW5kYXRpb24vRm91bmRhdGlvbi5oPgor
I2ltcG9ydCA8VUlLaXQvVUlLaXQuaD4KICNpbXBvcnQgPFdlYktpdC9XS1ByZWZlcmVuY2VzUmVm
UHJpdmF0ZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dLUHJvY2Vzc1Bvb2xQcml2YXRlLmg+CiAjaW1w
b3J0IDxXZWJLaXQvV0tTdHJpbmdDRi5oPgogI2ltcG9ydCA8V2ViS2l0L1dLVXNlckNvbnRlbnRD
b250cm9sbGVyUHJpdmF0ZS5oPgotI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlldy5oPgotI2ltcG9y
dCA8V2ViS2l0L1dLV2ViVmlld0NvbmZpZ3VyYXRpb24uaD4KICNpbXBvcnQgPFdlYktpdC9XS1dl
YlZpZXdDb25maWd1cmF0aW9uUHJpdmF0ZS5oPgorI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlld1By
aXZhdGUuaD4KICNpbXBvcnQgPHd0Zi9NYWluVGhyZWFkLmg+CiAKIG5hbWVzcGFjZSBXVFIgewpA
QCAtODMsNiArODMsNyBAQCB2b2lkIFRlc3RDb250cm9sbGVyOjpwbGF0Zm9ybVJlc2V0UHJlZmVy
ZW5jZXNUb0NvbnNpc3RlbnRWYWx1ZXMoKQogdm9pZCBUZXN0Q29udHJvbGxlcjo6cGxhdGZvcm1S
ZXNldFN0YXRlVG9Db25zaXN0ZW50VmFsdWVzKCkKIHsKICAgICBjb2NvYVJlc2V0U3RhdGVUb0Nv
bnNpc3RlbnRWYWx1ZXMoKTsKKyAgICBbbWFpbldlYlZpZXcoKS0+cGxhdGZvcm1WaWV3KCkgc2V0
Rm9yY2VJUGFkU3R5bGVab29tT25JbnB1dEZvY3VzOk5PXTsKIH0KIAogdm9pZCBUZXN0Q29udHJv
bGxlcjo6cGxhdGZvcm1Db25maWd1cmVWaWV3Rm9yVGVzdChjb25zdCBUZXN0SW52b2NhdGlvbiYg
dGVzdCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9zL1VJU2NyaXB0Q29u
dHJvbGxlcklPUy5tbSBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvaW9zL1VJU2NyaXB0Q29udHJv
bGxlcklPUy5tbQppbmRleCA3NmQ4ZTZmMTE5YmYyNWQ2MTIwYTg3NDhjNGJiYTRmODg4YjNhYmJi
Li44ZjdhZDU4YmRmNmM1MjUxNGU0MDMzMzA1YTcyZDA1YmRhNmEzZjc4IDEwMDY0NAotLS0gYS9U
b29scy9XZWJLaXRUZXN0UnVubmVyL2lvcy9VSVNjcmlwdENvbnRyb2xsZXJJT1MubW0KKysrIGIv
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9pb3MvVUlTY3JpcHRDb250cm9sbGVySU9TLm1tCkBAIC0y
MDksNiArMjA5LDE4IEBAIEpTT2JqZWN0UmVmIFVJU2NyaXB0Q29udHJvbGxlcjo6Y29udGVudFZp
c2libGVSZWN0KCkgY29uc3QKICAgICByZXR1cm4gbV9jb250ZXh0LT5vYmplY3RGcm9tUmVjdCh3
a1JlY3QpOwogfQogCitib29sIFVJU2NyaXB0Q29udHJvbGxlcjo6Zm9yY2VJUGFkU3R5bGVab29t
T25JbnB1dEZvY3VzKCkgY29uc3QKK3sKKyAgICBUZXN0UnVubmVyV0tXZWJWaWV3ICp3ZWJWaWV3
ID0gVGVzdENvbnRyb2xsZXI6OnNpbmdsZXRvbigpLm1haW5XZWJWaWV3KCktPnBsYXRmb3JtVmll
dygpOworICAgIHJldHVybiB3ZWJWaWV3LmZvcmNlSVBhZFN0eWxlWm9vbU9uSW5wdXRGb2N1czsK
K30KKwordm9pZCBVSVNjcmlwdENvbnRyb2xsZXI6OnNldEZvcmNlSVBhZFN0eWxlWm9vbU9uSW5w
dXRGb2N1cyhib29sIHZhbHVlKQoreworICAgIFRlc3RSdW5uZXJXS1dlYlZpZXcgKndlYlZpZXcg
PSBUZXN0Q29udHJvbGxlcjo6c2luZ2xldG9uKCkubWFpbldlYlZpZXcoKS0+cGxhdGZvcm1WaWV3
KCk7CisgICAgd2ViVmlldy5mb3JjZUlQYWRTdHlsZVpvb21PbklucHV0Rm9jdXMgPSB2YWx1ZTsK
K30KKwogdm9pZCBVSVNjcmlwdENvbnRyb2xsZXI6OnBsYXRmb3JtU2V0V2lsbEJlZ2luWm9vbWlu
Z0NhbGxiYWNrKCkKIHsKICAgICBUZXN0UnVubmVyV0tXZWJWaWV3ICp3ZWJWaWV3ID0gVGVzdENv
bnRyb2xsZXI6OnNpbmdsZXRvbigpLm1haW5XZWJWaWV3KCktPnBsYXRmb3JtVmlldygpOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IDZkZjM1MWJlZWU1MDhlZWUwOTc2MTRiMmUzYjljZmE3YjVhMmQxYTUuLjcyY2Y3Yzg3N2Iy
ZWVhOTIwMzUwZmFmMjdkNDMxY2NlNTRjNDA3ZTMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAx
Ni0wNi0xNSAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KKworICAgICAg
ICBbaU9TIFdLMl0gT24gaVBhZCwgaW5kaXJlY3QgZm9jdXNzaW5nIG9mIGEgdGV4dCBmaWVsZCBk
b2Vzbid0IGFsd2F5cyBzY3JvbGwgdG8gdGhlIGNvcnJlY3QgbG9jYXRpb24KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODgyOAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgQWRkIHZhcmlvdXMg
dGVzdHMgZm9yIGZvY3VzaW5nIGZvcm0gZmllbGRzLiBmb2N1cy1pbnB1dC12aWEtYnV0dG9uLWlw
YWQuaHRtbCB0ZXN0cworICAgICAgICB0aGUgY2hhbmdlIGluIHRoZSBjdXJyZW50IHBhdGNoLgor
CisgICAgICAgICogZmFzdC9mb3Jtcy9pb3MvZm9jdXMtaW5wdXQtaW4tZml4ZWQtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1zL2lvcy9mb2N1cy1pbnB1dC1pbi1maXhl
ZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1zL2lvcy9mb2N1cy1pbnB1dC12aWEt
YnV0dG9uLWlwYWQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2Zvcm1zL2lv
cy9mb2N1cy1pbnB1dC12aWEtYnV0dG9uLWlwYWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFz
dC9mb3Jtcy9pb3MvZm9jdXMtbG9uZy10ZXh0YXJlYS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvZm9ybXMvaW9zL2ZvY3VzLWxvbmctdGV4dGFyZWEuaHRtbDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9mb3Jtcy9pb3MvcmVzb3VyY2VzL3pvb21pbmctdGVzdC11dGlscy5qczoK
KyAgICAgICAgKHRlc3Rab29tQWZ0ZXJUYXApOgorCiAyMDE2LTA2LTEzICBTaW1vbiBGcmFzZXIg
IDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFtpT1MgV0syXSBNYWtlIGl0IHBv
c3NpYmxlIHRvIHRlc3QgdGhlIE5leHQvUHJldmlvdXMgYnV0dG9ucyBpbiB0aGUga2V5Ym9hcmQg
YWNjZXNzb3J5IGJhcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pb3MvZm9j
dXMtaW5wdXQtaW4tZml4ZWQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9p
b3MvZm9jdXMtaW5wdXQtaW4tZml4ZWQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFhYzgwOGJi
YzA3ODllZWNlY2JjYTg4ZWJhMDIxZGU2MzZiNTY1YTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2Zvcm1zL2lvcy9mb2N1cy1pbnB1dC1pbi1maXhlZC1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSw0IEBACisKK3RhcCBsb2NhdGlvbgl7IHg6IDQwLjAwMCwgeTogMTMwLjAwMCB9
CitzY2FsZQkxLjQ1NQordmlzaWJsZVJlY3QJeyBsZWZ0OiAwLjAwMCwgdG9wOiAzNy44MDksIHdp
ZHRoOiAyMTkuOTc5LCBoZWlnaHQ6IDMyOS45NjggfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9mb3Jtcy9pb3MvZm9jdXMtaW5wdXQtaW4tZml4ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvZm9ybXMvaW9zL2ZvY3VzLWlucHV0LWluLWZpeGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2Q4Yjhj
MDBjNmZhNGUyNDFhNWNmNzdlNzMyM2JmYTMyYTc3MDRmYwotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZm9ybXMvaW9zL2ZvY3VzLWlucHV0LWluLWZpeGVkLmh0bWwKQEAgLTAs
MCArMSw0MyBAQAorPCFET0NUWVBFIGh0bWw+IDwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgdXNl
RmxleGlibGVWaWV3cG9ydD10cnVlIF0gLS0+CisKKzxodG1sPgorPGhlYWQ+CisgICAgPG1ldGEg
bmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9ImluaXRpYWwtc2NhbGU9MC41Ij4KKyAgICA8c3R5bGU+
CisgICAgICAgIC5maXhlZCB7CisgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7CisgICAgICAg
ICAgICBoZWlnaHQ6IDIwMHB4OworICAgICAgICAgICAgd2lkdGg6IDQwMHB4OworICAgICAgICAg
ICAgdG9wOiAxMDBweDsKKyAgICAgICAgICAgIGxlZnQ6IDEwcHg7CisgICAgICAgICAgICBiYWNr
Z3JvdW5kLWNvbG9yOiBzaWx2ZXI7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIGlucHV0
W3R5cGU9InRleHQiXSB7CisgICAgICAgICAgICBtYXJnaW46IDIwcHg7CisgICAgICAgIH0KKyAg
ICA8L3N0eWxlPgorICAgIAorICAgIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvem9vbWluZy10ZXN0
LXV0aWxzLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgdGVzdFJ1
bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgfQorICAgIAorICAgIGZ1bmN0aW9uIGRvVGVzdCgp
CisgICAgeworICAgICAgICB0ZXN0Wm9vbUFmdGVyVGFwKGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCdpbnB1dCcpLCAxMCwgMTApOworICAgIH0KKworICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVy
KCdsb2FkJywgZG9UZXN0LCBmYWxzZSk7CisgICAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4K
KworPGRpdiBjbGFzcz0iZml4ZWQiPgorICAgIDxpbnB1dCBpZD0iaW5wdXQiIHR5cGU9InRleHQi
PgorPC9kaXY+CisKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvZm9ybXMvaW9zL2ZvY3VzLWlucHV0LXZpYS1idXR0b24taXBhZC1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lvcy9mb2N1cy1pbnB1dC12aWEtYnV0dG9uLWlwYWQtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY2MzJhODZkY2I0YjVmN2M5NWQ4MTRmODA3MDZmMGM0ZjUw
YTcwMTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lvcy9mb2N1
cy1pbnB1dC12aWEtYnV0dG9uLWlwYWQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorVGVz
dHMgem9vbWluZyBpbnRvIGEgdGV4dCBpbnB1dCBvbiB0YXAuCisKK0NsaWNrIHRvIGZvY3VzIGlu
cHV0CisKK3RhcCBsb2NhdGlvbgl7IHg6IDIwLjAwMCwgeTogNjIuMDAwIH0KK3NjYWxlCTEuNDU1
Cit2aXNpYmxlUmVjdAl7IGxlZnQ6IDAuMDAwLCB0b3A6IDc5MS45MjMsIHdpZHRoOiAyMTkuOTc5
LCBoZWlnaHQ6IDMyOS45NjggfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9p
b3MvZm9jdXMtaW5wdXQtdmlhLWJ1dHRvbi1pcGFkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Zv
cm1zL2lvcy9mb2N1cy1pbnB1dC12aWEtYnV0dG9uLWlwYWQuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40N2Yz
Y2I0MzM1OGE0MTc4ZjE1NzBkNzIzNGUyNjQwOGNlODdlZjA0Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pb3MvZm9jdXMtaW5wdXQtdmlhLWJ1dHRvbi1pcGFkLmh0
bWwKQEAgLTAsMCArMSw0NCBAQAorPCFET0NUWVBFIGh0bWw+IDwhLS0gd2Via2l0LXRlc3QtcnVu
bmVyIFsgdXNlRmxleGlibGVWaWV3cG9ydD10cnVlIF0gLS0+CisKKzxodG1sPgorPGhlYWQ+Cisg
ICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9ImluaXRpYWwtc2NhbGU9MC41Ij4KKyAg
ICA8c3R5bGU+CisgICAgICAgIGlucHV0W3R5cGU9InRleHQiXSB7CisgICAgICAgICAgICBtYXJn
aW46IDgwMHB4IDIwcHg7CisgICAgICAgIH0KKyAgICAgICAgYnV0dG9uIHsKKyAgICAgICAgICAg
IGRpc3BsYXk6IGJsb2NrOworICAgICAgICB9CisgICAgPC9zdHlsZT4KKyAgICAKKyAgICA8c2Ny
aXB0IHNyYz0icmVzb3VyY2VzL3pvb21pbmctdGVzdC11dGlscy5qcyI+PC9zY3JpcHQ+CisgICAg
PHNjcmlwdD4KKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7CisgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAg
IH0KKyAgICAKKyAgICBmdW5jdGlvbiBidXR0b25DbGlja2VkKCkKKyAgICB7CisgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCdpbnB1dCcpLmZvY3VzKCk7CisgICAgfQorCisgICAgZnVu
Y3Rpb24gZG9UZXN0KCkKKyAgICB7CisgICAgICAgIGNvbnN0IHVzZUlQYWRab29taW5nQmVoYXZp
b3IgPSB0cnVlOworICAgICAgICB0ZXN0Wm9vbUFmdGVyVGFwKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCd0YXJnZXQnKSwgMTAsIDEwLCB1c2VJUGFkWm9vbWluZ0JlaGF2aW9yKTsKKyAgICB9CisK
KyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGRvVGVzdCwgZmFsc2UpOworICAg
IDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisKKzxwPlRlc3RzIHpvb21pbmcgaW50byBhIHRl
eHQgaW5wdXQgb24gdGFwLjwvcD4KKzxidXR0b24gaWQ9InRhcmdldCIgb25jbGljaz0iYnV0dG9u
Q2xpY2tlZCgpIj5DbGljayB0byBmb2N1cyBpbnB1dDwvYnV0dG9uPgorCis8aW5wdXQgaWQ9Imlu
cHV0IiB0eXBlPSJ0ZXh0Ij4KKworPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9mb3Jtcy9pb3MvZm9jdXMtbG9uZy10ZXh0YXJlYS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lvcy9mb2N1cy1sb25nLXRleHRhcmVhLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5lYzBhZDljYWEzMjNjZjMwNDY3MTUyZWU0ZDUyMzI1N2YxMTE5YjMwCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pb3MvZm9jdXMtbG9uZy10
ZXh0YXJlYS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw2IEBACitUZXN0cyB6b29taW5nIGludG8g
YSB0YWxsIHRleHRhcmVhIG9uIHRhcC4KKworCit0YXAgbG9jYXRpb24JeyB4OiAzOC4wMDAsIHk6
IDY2NC4wMDAgfQorc2NhbGUJMS40NTUKK3Zpc2libGVSZWN0CXsgbGVmdDogMC4wMDAsIHRvcDog
NDkyLjU0Niwgd2lkdGg6IDIxOS45NzksIGhlaWdodDogMzI5Ljk2OCB9CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2lvcy9mb2N1cy1sb25nLXRleHRhcmVhLmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2Zvcm1zL2lvcy9mb2N1cy1sb25nLXRleHRhcmVhLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYjQ2MTc2NTkzMjczYzA5ZTJkNTU1ZWQ3MmM1Mjk1Mjc5ZDcwZDZiYwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvaW9zL2ZvY3VzLWxvbmctdGV4dGFyZWEuaHRt
bApAQCAtMCwwICsxLDY2IEBACis8IURPQ1RZUEUgaHRtbD4gPCEtLSB3ZWJraXQtdGVzdC1ydW5u
ZXIgWyB1c2VGbGV4aWJsZVZpZXdwb3J0PXRydWUgXSAtLT4KKworPGh0bWw+Cis8aGVhZD4KKyAg
ICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0iaW5pdGlhbC1zY2FsZT0wLjUiPgorICAg
IDxzdHlsZT4KKyAgICAgICAgdGV4dGFyZWEgeworICAgICAgICAgICAgbWFyZ2luOiA0MDBweCAy
MHB4OworICAgICAgICB9CisgICAgPC9zdHlsZT4KKyAgICAKKyAgICA8c2NyaXB0IHNyYz0icmVz
b3VyY2VzL3pvb21pbmctdGVzdC11dGlscy5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4KKyAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0
KCk7CisgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgIH0KKworICAgIGZ1
bmN0aW9uIGRvVGVzdCgpCisgICAgeworICAgICAgICB2YXIgdGV4dGFyZWEgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgnaW5wdXQnKTsKKyAgICAgICAgdmFyIHZlcnRpY2FsUG9pbnQgPSB0ZXh0
YXJlYS5jbGllbnRIZWlnaHQgLyAyOworICAgICAgICB0ZXN0Wm9vbUFmdGVyVGFwKHRleHRhcmVh
LCAxMCwgdmVydGljYWxQb2ludCk7CisgICAgfQorCisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVu
ZXIoJ2xvYWQnLCBkb1Rlc3QsIGZhbHNlKTsKKyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorCis8cD5UZXN0cyB6b29taW5nIGludG8gYSB0YWxsIHRleHRhcmVhIG9uIHRhcC48L3A+Cis8
dGV4dGFyZWEgaWQ9ImlucHV0IiByb3dzPSIzMCI+CitBCitBCitBCitBCitBCitBCitBCitBCitB
CitBCitBCitBCitBCitBCitBCitBCitBCitBCitBCitBCitBCitBCitBCitBCitBCitBCitBCitB
CitBCitBCis8L3RleHRhcmVhPgorCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2Zvcm1zL2lvcy9yZXNvdXJjZXMvem9vbWluZy10ZXN0LXV0aWxzLmpzIGIv
TGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9pb3MvcmVzb3VyY2VzL3pvb21pbmctdGVzdC11dGlscy5q
cwppbmRleCAwZTNmNGE1OTU1OGM3ZWQ2NDFmNjc2N2IwNDZlNDUwYTY1ODY2MWUyLi43MjBmMTky
ZGM2NjFhMWM0YjMwYTU3MGZiZThlZjIwYzlkYTY2NjFkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9mYXN0L2Zvcm1zL2lvcy9yZXNvdXJjZXMvem9vbWluZy10ZXN0LXV0aWxzLmpzCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZm9ybXMvaW9zL3Jlc291cmNlcy96b29taW5nLXRlc3QtdXRpbHMuanMK
QEAgLTEsMTIgKzEsMTIgQEAKIAotZnVuY3Rpb24gdGVzdFpvb21BZnRlclRhcCh0YXJnZXRFbGVt
ZW50LCB4T2Zmc2V0LCB5T2Zmc2V0KQorZnVuY3Rpb24gdGVzdFpvb21BZnRlclRhcCh0YXJnZXRF
bGVtZW50LCB4T2Zmc2V0LCB5T2Zmc2V0LCB1c2VJUGFkQmVoYXZpb3IpCiB7CiAgICAgaWYgKCF3
aW5kb3cudGVzdFJ1bm5lciB8fCAhdGVzdFJ1bm5lci5ydW5VSVNjcmlwdCkKICAgICAgICAgcmV0
dXJuOwogCiAgICAgdmFyIHBvaW50ID0gZ2V0UG9pbnRJbnNpZGVFbGVtZW50KHRhcmdldEVsZW1l
bnQsIHhPZmZzZXQsIHlPZmZzZXQpOwogCi0gICAgdmFyIHVpU2NyaXB0ID0gem9vbUFmdGVyU2lu
Z2xlVGFwVUlTY3JpcHQocG9pbnQueCwgcG9pbnQueSk7CisgICAgdmFyIHVpU2NyaXB0ID0gem9v
bUFmdGVyU2luZ2xlVGFwVUlTY3JpcHQocG9pbnQueCwgcG9pbnQueSwgdXNlSVBhZEJlaGF2aW9y
KTsKICAgICB0ZXN0UnVubmVyLnJ1blVJU2NyaXB0KHVpU2NyaXB0LCBmdW5jdGlvbihyZXN1bHQp
IHsKICAgICAgICAgdmFyIHJlc3VsdHMgPSB0YWJsZUZyb21KU09OKHJlc3VsdCk7CiAgICAgICAg
IGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVzdWx0cyk7CkBAIC0xNCw3ICsxNCw3IEBAIGZ1
bmN0aW9uIHRlc3Rab29tQWZ0ZXJUYXAodGFyZ2V0RWxlbWVudCwgeE9mZnNldCwgeU9mZnNldCkK
ICAgICB9KTsKIH0KIAotZnVuY3Rpb24gem9vbUFmdGVyU2luZ2xlVGFwVUlTY3JpcHQoeCwgeSkK
K2Z1bmN0aW9uIHpvb21BZnRlclNpbmdsZVRhcFVJU2NyaXB0KHgsIHksIHVzZUlQYWRCZWhhdmlv
cikKIHsKICAgICByZXR1cm4gYAogICAgICAgICAoZnVuY3Rpb24oKSB7CkBAIC0zNCw2ICszNCw4
IEBAIGZ1bmN0aW9uIHpvb21BZnRlclNpbmdsZVRhcFVJU2NyaXB0KHgsIHkpCiAgICAgICAgICAg
ICAgICAgdWlDb250cm9sbGVyLnVpU2NyaXB0Q29tcGxldGUocmVzdWx0KTsKICAgICAgICAgICAg
IH07CiAKKyAgICAgICAgICAgIGlmICgke3VzZUlQYWRCZWhhdmlvcn0pCisgICAgICAgICAgICAg
ICAgdWlDb250cm9sbGVyLmZvcmNlSVBhZFN0eWxlWm9vbU9uSW5wdXRGb2N1cyA9IHRydWU7CiAg
ICAgICAgICAgICB1aUNvbnRyb2xsZXIuc2luZ2xlVGFwQXRQb2ludCgke3h9LCAke3l9LCBmdW5j
dGlvbigpIHt9KTsKICAgICAgICAgfSkoKTtgCiB9Cg==
</data>
<flag name="review"
          id="305287"
          type_id="1"
          status="+"
          setter="enrica"
    />
          </attachment>
      

    </bug>

</bugzilla>