<?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>192772</bug_id>
          
          <creation_ts>2018-12-17 13:07:36 -0800</creation_ts>
          <short_desc>Regression(r239182) SuspendedPage&apos;s process reuse for link navigation optimization sometimes broken</short_desc>
          <delta_ts>2018-12-18 07:27:26 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</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>
          
          <blocked>192668</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>koivisto</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1488555</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-12-17 13:07:36 -0800</bug_when>
    <thetext>SuspendedPage&apos;s process reuse for link navigation optimization sometimes broken after r239182. In particular, if the page fails to enter page cache, we now throw away the entire process, which can slow down &apos;back&apos; navigation to this HistoryItem or link navigations to the same domain.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1488602</commentid>
    <comment_count>1</comment_count>
      <attachid>357479</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-12-17 14:43:23 -0800</bug_when>
    <thetext>Created attachment 357479
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1488605</commentid>
    <comment_count>2</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-12-17 14:44:55 -0800</bug_when>
    <thetext>Attachment 357479 did not pass style-queue:


ERROR: Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:1795:  Multi-line string (&quot;...&quot;) found.  This lint script doesn&apos;t do well with such strings, and may give bogus warnings.  They&apos;re ugly and unnecessary, and you should use concatenation instead&quot;.  [readability/multiline_string] [5]
ERROR: Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:1802:  Multi-line string (&quot;...&quot;) found.  This lint script doesn&apos;t do well with such strings, and may give bogus warnings.  They&apos;re ugly and unnecessary, and you should use concatenation instead&quot;.  [readability/multiline_string] [5]
Total errors found: 2 in 7 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>1488825</commentid>
    <comment_count>3</comment_count>
      <attachid>357479</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2018-12-17 23:51:02 -0800</bug_when>
    <thetext>Comment on attachment 357479
Patch

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

&gt; Source/WebKit/ChangeLog:16
&gt; +        Address the issue by keeping the SuspendedPageProxy alive even if the WebPage fails to suspend.
&gt; +        When trying to reuse a SuspendedPageProxy, if the page failed to suspend, reuse its process but
&gt; +        not the suspended page itself.

As you mentioned in the original bug, a separate process cache for domains might be a nicer design. This will do though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1488878</commentid>
    <comment_count>4</comment_count>
      <attachid>357479</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-18 07:26:57 -0800</bug_when>
    <thetext>Comment on attachment 357479
Patch

Clearing flags on attachment: 357479

Committed r239333: &lt;https://trac.webkit.org/changeset/239333&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1488879</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-18 07:26:59 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1488882</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-12-18 07:27:26 -0800</bug_when>
    <thetext>&lt;rdar://problem/46809841&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357479</attachid>
            <date>2018-12-17 14:43:23 -0800</date>
            <delta_ts>2018-12-18 07:26:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192772-20181217144322.patch</filename>
            <type>text/plain</type>
            <size>14918</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5MjgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGNjOWM0YWI0ZmE0YzdkY2E0
NTY5NjJiZmYyNTkxZjRjMDgyZDMxN2IuLmI3MTM4MjE1YjhhODFiZGM1MDY2NmFmNTJhOTY2MTE2
N2Y4Y2RlOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMTgtMTItMTcgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBSZWdyZXNzaW9uKHIyMzkxODIpIFN1
c3BlbmRlZFBhZ2UncyBwcm9jZXNzIHJldXNlIGZvciBsaW5rIG5hdmlnYXRpb24gb3B0aW1pemF0
aW9uIHNvbWV0aW1lcyBicm9rZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE5Mjc3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFdpdGggcjIzOTE4MiwgaWYgdGhlIHBhZ2UgaW4gdGhlIHByZXZpb3VzIHBy
b2Nlc3Mgd291bGQgZmFpbCB0byBlbnRlciBQYWdlQ2FjaGUsIHdlIHdvdWxkIGRlc3Ryb3kKKyAg
ICAgICAgdGhlIGNvcnJlc3BvbmRpbmcgU3VzcGVuZGVkUGFnZVByb3h5LCB3aGljaCB3b3VsZCBw
b3RlbnRpYWxseSB0ZXJtaW5hdGUgdGhlIHByb2Nlc3MuIFRoaXMgd291bGQKKyAgICAgICAgcmVn
cmVzcyBwZXJmb3JtYW5jZSB3aGVuIHRyeWluZyB0byBuYXZpZ2F0ZSBiYWNrIGluIGhpc3Rvcnkg
dG8gdGhhdCBwYWdlLiBUaGlzIHdvdWxkIGFsc28gcmVncmVzcworICAgICAgICBwZXJmb3JtYW5j
ZSB3aGVuIGxpbmstbmF2aWdhdGluZyB0byB0aGUgc2FtZSBkb21haW4gYXMgd2Ugd291bGQgaGF2
ZSBwcmV2aW91c2x5IHJldXNlZCB0aGUgc3VzcGVuZGVkCisgICAgICAgIHBhZ2UncyBwcm9jZXNz
IGZvciBzdWNoIG5hdmlnYXRpb24uCisKKyAgICAgICAgQWRkcmVzcyB0aGUgaXNzdWUgYnkga2Vl
cGluZyB0aGUgU3VzcGVuZGVkUGFnZVByb3h5IGFsaXZlIGV2ZW4gaWYgdGhlIFdlYlBhZ2UgZmFp
bHMgdG8gc3VzcGVuZC4KKyAgICAgICAgV2hlbiB0cnlpbmcgdG8gcmV1c2UgYSBTdXNwZW5kZWRQ
YWdlUHJveHksIGlmIHRoZSBwYWdlIGZhaWxlZCB0byBzdXNwZW5kLCByZXVzZSBpdHMgcHJvY2Vz
cyBidXQKKyAgICAgICAgbm90IHRoZSBzdXNwZW5kZWQgcGFnZSBpdHNlbGYuCisKKyAgICAgICAg
KiBVSVByb2Nlc3MvU3VzcGVuZGVkUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6U3Vz
cGVuZGVkUGFnZVByb3h5Ojp+U3VzcGVuZGVkUGFnZVByb3h5KToKKyAgICAgICAgKFdlYktpdDo6
U3VzcGVuZGVkUGFnZVByb3h5Ojp3YWl0VW50aWxSZWFkeVRvVW5zdXNwZW5kKToKKyAgICAgICAg
KFdlYktpdDo6U3VzcGVuZGVkUGFnZVByb3h5Ojp1bnN1c3BlbmQpOgorICAgICAgICAoV2ViS2l0
OjpTdXNwZW5kZWRQYWdlUHJveHk6OmRpZFN1c3BlbmQpOgorICAgICAgICAoV2ViS2l0OjpTdXNw
ZW5kZWRQYWdlUHJveHk6OmRpZEZhaWxUb1N1c3BlbmQpOgorICAgICAgICAoV2ViS2l0OjpTdXNw
ZW5kZWRQYWdlUHJveHk6OmxvZ2dpbmdTdHJpbmcgY29uc3QpOgorICAgICAgICAqIFVJUHJvY2Vz
cy9TdXNwZW5kZWRQYWdlUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojpzd2FwVG9XZWJQcm9jZXNzKToK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJQcm9jZXNzUG9vbDo6cHJvY2Vzc0Zvck5hdmlnYXRpb25JbnRlcm5hbCk6CisKIDIwMTgt
MTItMTcgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFVu
cmV2aWV3ZWQgV1BFIGJ1aWxkIGZpeCBhZnRlciByMjM5Mjc3LgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvU3VzcGVuZGVkUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1N1c3BlbmRlZFBhZ2VQcm94eS5jcHAKaW5kZXggN2VkMjIzODA0MDUwMDNjMDZm
MmI2MzdlYWIwZmQxYzRmMGMyMzg2My4uNjFhMGFmOWFjNGM0Y2QwNzk0OWI5Y2E5YjBkOGFmNmIy
MGNjMmM4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3VzcGVuZGVkUGFn
ZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9TdXNwZW5kZWRQYWdlUHJv
eHkuY3BwCkBAIC05NCw3ICs5NCw3IEBAIFN1c3BlbmRlZFBhZ2VQcm94eTo6flN1c3BlbmRlZFBh
Z2VQcm94eSgpCiAgICAgaWYgKG1fcmVhZHlUb1Vuc3VzcGVuZEhhbmRsZXIpCiAgICAgICAgIG1f
cmVhZHlUb1Vuc3VzcGVuZEhhbmRsZXIobnVsbHB0cik7CiAKLSAgICBpZiAoIW1faXNTdXNwZW5k
ZWQpCisgICAgaWYgKG1fc3VzcGVuc2lvblN0YXRlID09IFN1c3BlbnNpb25TdGF0ZTo6UmVzdW1l
ZCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgLy8gSWYgdGhlIHN1c3BlbmRlZCBwYWdlIHdhcyBu
b3QgY29uc3VtZWQgYmVmb3JlIGdldHRpbmcgZGVzdHJveWVkLCB0aGVuIGNsb3NlIHRoZSBjb3Jy
ZXNwb25kaW5nIHBhZ2UKQEAgLTExNCwxOCArMTE0LDI2IEBAIHZvaWQgU3VzcGVuZGVkUGFnZVBy
b3h5Ojp3YWl0VW50aWxSZWFkeVRvVW5zdXNwZW5kKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoU3Vz
cGVuCiAgICAgaWYgKG1fcmVhZHlUb1Vuc3VzcGVuZEhhbmRsZXIpCiAgICAgICAgIG1fcmVhZHlU
b1Vuc3VzcGVuZEhhbmRsZXIobnVsbHB0cik7CiAKLSAgICBpZiAoIW1fZmluaXNoZWRTdXNwZW5k
aW5nKQorICAgIHN3aXRjaCAobV9zdXNwZW5zaW9uU3RhdGUpIHsKKyAgICBjYXNlIFN1c3BlbnNp
b25TdGF0ZTo6U3VzcGVuZGluZzoKICAgICAgICAgbV9yZWFkeVRvVW5zdXNwZW5kSGFuZGxlciA9
IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpOwotICAgIGVsc2UKKyAgICAgICAgYnJlYWs7Cisg
ICAgY2FzZSBTdXNwZW5zaW9uU3RhdGU6OkZhaWxlZFRvU3VzcGVuZDoKKyAgICBjYXNlIFN1c3Bl
bnNpb25TdGF0ZTo6U3VzcGVuZGVkOgogICAgICAgICBjb21wbGV0aW9uSGFuZGxlcih0aGlzKTsK
KyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBTdXNwZW5zaW9uU3RhdGU6OlJlc3VtZWQ6CisgICAg
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihudWxs
cHRyKTsKKyAgICAgICAgYnJlYWs7CisgICAgfQogfQogCiB2b2lkIFN1c3BlbmRlZFBhZ2VQcm94
eTo6dW5zdXNwZW5kKCkKIHsKLSAgICBBU1NFUlQobV9pc1N1c3BlbmRlZCk7Ci0gICAgQVNTRVJU
KG1fZmluaXNoZWRTdXNwZW5kaW5nKTsKKyAgICBBU1NFUlQobV9zdXNwZW5zaW9uU3RhdGUgPT0g
U3VzcGVuc2lvblN0YXRlOjpTdXNwZW5kZWQpOwogCi0gICAgbV9pc1N1c3BlbmRlZCA9IGZhbHNl
OworICAgIG1fc3VzcGVuc2lvblN0YXRlID0gU3VzcGVuc2lvblN0YXRlOjpSZXN1bWVkOwogICAg
IG1fcHJvY2Vzcy0+cmVtb3ZlTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6
Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9wYWdlLnBhZ2VJRCgpKTsKICAgICBtX3Byb2Nlc3Mt
PnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OlNldElzU3VzcGVuZGVkKGZhbHNlKSwgbV9wYWdlLnBh
Z2VJRCgpKTsKIH0KQEAgLTEzNCw3ICsxNDIsOCBAQCB2b2lkIFN1c3BlbmRlZFBhZ2VQcm94eTo6
ZGlkU3VzcGVuZCgpCiB7CiAgICAgTE9HKFByb2Nlc3NTd2FwcGluZywgIlN1c3BlbmRlZFBhZ2VQ
cm94eSAlcyBmcm9tIHByb2Nlc3MgJWkgZmluaXNoZWQgdHJhbnNpdGlvbiB0byBzdXNwZW5kZWQi
LCBsb2dnaW5nU3RyaW5nKCksIG1fcHJvY2Vzcy0+cHJvY2Vzc0lkZW50aWZpZXIoKSk7CiAKLSAg
ICBtX2ZpbmlzaGVkU3VzcGVuZGluZyA9IHRydWU7CisgICAgQVNTRVJUKG1fc3VzcGVuc2lvblN0
YXRlID09IFN1c3BlbnNpb25TdGF0ZTo6U3VzcGVuZGluZyk7CisgICAgbV9zdXNwZW5zaW9uU3Rh
dGUgPSBTdXNwZW5zaW9uU3RhdGU6OlN1c3BlbmRlZDsKIAogI2lmIFBMQVRGT1JNKElPU19GQU1J
TFkpCiAgICAgbV9zdXNwZW5zaW9uVG9rZW4gPSBudWxscHRyOwpAQCAtMTQ2LDExICsxNTUsMTEg
QEAgdm9pZCBTdXNwZW5kZWRQYWdlUHJveHk6OmRpZFN1c3BlbmQoKQogCiB2b2lkIFN1c3BlbmRl
ZFBhZ2VQcm94eTo6ZGlkRmFpbFRvU3VzcGVuZCgpCiB7Ci0gICAgLy8gV2UgYXJlIHVudXNhYmxl
IGR1ZSB0byBmYWlsdXJlIHRvIHN1c3BlbmQgc28gcmVtb3ZlIG91cnNlbHZlcyBmcm9tIHRoZSBX
ZWJQcm9jZXNzUG9vbC4KLSAgICBhdXRvIHByb3RlY3RlZFRoaXMgPSBtX3Byb2Nlc3MtPnByb2Nl
c3NQb29sKCkudGFrZVN1c3BlbmRlZFBhZ2UoKnRoaXMpOworICAgIEFTU0VSVChtX3N1c3BlbnNp
b25TdGF0ZSA9PSBTdXNwZW5zaW9uU3RhdGU6OlN1c3BlbmRpbmcpOworICAgIG1fc3VzcGVuc2lv
blN0YXRlID0gU3VzcGVuc2lvblN0YXRlOjpGYWlsZWRUb1N1c3BlbmQ7CiAKICAgICBpZiAobV9y
ZWFkeVRvVW5zdXNwZW5kSGFuZGxlcikKLSAgICAgICAgbV9yZWFkeVRvVW5zdXNwZW5kSGFuZGxl
cihudWxscHRyKTsKKyAgICAgICAgbV9yZWFkeVRvVW5zdXNwZW5kSGFuZGxlcih0aGlzKTsKIH0K
IAogdm9pZCBTdXNwZW5kZWRQYWdlUHJveHk6OmRpZFJlY2VpdmVNZXNzYWdlKElQQzo6Q29ubmVj
dGlvbiYsIElQQzo6RGVjb2RlciYgZGVjb2RlcikKQEAgLTE4MCw3ICsxODksNyBAQCB2b2lkIFN1
c3BlbmRlZFBhZ2VQcm94eTo6ZGlkUmVjZWl2ZVN5bmNNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYs
IElQQzo6RGVjb2RlciYsCiAjaWYgIUxPR19ESVNBQkxFRAogY29uc3QgY2hhciogU3VzcGVuZGVk
UGFnZVByb3h5Ojpsb2dnaW5nU3RyaW5nKCkgY29uc3QKIHsKLSAgICByZXR1cm4gZGVidWdTdHJp
bmcoIigiLCBTdHJpbmc6OmZvcm1hdCgiJXAiLCB0aGlzKSwgIiBwYWdlIElEICIsIFN0cmluZzo6
bnVtYmVyKG1fcGFnZS5wYWdlSUQoKSksICIsIG1fZmluaXNoZWRTdXNwZW5kaW5nICIsIFN0cmlu
Zzo6bnVtYmVyKG1fZmluaXNoZWRTdXNwZW5kaW5nKSwgIikiKTsKKyAgICByZXR1cm4gZGVidWdT
dHJpbmcoIigiLCBTdHJpbmc6OmZvcm1hdCgiJXAiLCB0aGlzKSwgIiBwYWdlIElEICIsIFN0cmlu
Zzo6bnVtYmVyKG1fcGFnZS5wYWdlSUQoKSksICIsIG1fc3VzcGVuc2lvblN0YXRlICIsIFN0cmlu
Zzo6bnVtYmVyKHN0YXRpY19jYXN0PHVuc2lnbmVkPihtX3N1c3BlbnNpb25TdGF0ZSkpLCAiKSIp
OwogfQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1N1c3Bl
bmRlZFBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvU3VzcGVuZGVkUGFnZVBy
b3h5LmgKaW5kZXggYjY2MWY1MmE4NmM1MjM2Y2Q3ZjE4MmFkYmEyNTc2ZmJmODZhMDE1My4uMWI1
NmQwNmFmNjY4MWRhMmI2MzZiOTk0Zjg3NWJkMTllMjRiMDViOSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvU3VzcGVuZGVkUGFnZVByb3h5LmgKKysrIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvU3VzcGVuZGVkUGFnZVByb3h5LmgKQEAgLTQ3LDYgKzQ3LDggQEAgcHVibGlj
OgogICAgIHVpbnQ2NF90IG1haW5GcmFtZUlEKCkgY29uc3QgeyByZXR1cm4gbV9tYWluRnJhbWVJ
RDsgfQogICAgIGNvbnN0IFN0cmluZyYgcmVnaXN0cmFibGVEb21haW4oKSBjb25zdCB7IHJldHVy
biBtX3JlZ2lzdHJhYmxlRG9tYWluOyB9CiAKKyAgICBib29sIGZhaWxlZFRvU3VzcGVuZCgpIGNv
bnN0IHsgcmV0dXJuIG1fc3VzcGVuc2lvblN0YXRlID09IFN1c3BlbnNpb25TdGF0ZTo6RmFpbGVk
VG9TdXNwZW5kOyB9CisKICAgICB2b2lkIHdhaXRVbnRpbFJlYWR5VG9VbnN1c3BlbmQoQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChTdXNwZW5kZWRQYWdlUHJveHkqKT4mJik7CiAgICAgdm9pZCB1bnN1
c3BlbmQoKTsKIApAQCAtNjcsOSArNjksOCBAQCBwcml2YXRlOgogICAgIHVpbnQ2NF90IG1fbWFp
bkZyYW1lSUQ7CiAgICAgU3RyaW5nIG1fcmVnaXN0cmFibGVEb21haW47CiAKLSAgICBib29sIG1f
aXNTdXNwZW5kZWQgeyB0cnVlIH07Ci0KLSAgICBib29sIG1fZmluaXNoZWRTdXNwZW5kaW5nIHsg
ZmFsc2UgfTsKKyAgICBlbnVtIGNsYXNzIFN1c3BlbnNpb25TdGF0ZSA6IHVpbnQ4X3QgeyBTdXNw
ZW5kaW5nLCBGYWlsZWRUb1N1c3BlbmQsIFN1c3BlbmRlZCwgUmVzdW1lZCB9OworICAgIFN1c3Bl
bnNpb25TdGF0ZSBtX3N1c3BlbnNpb25TdGF0ZSB7IFN1c3BlbnNpb25TdGF0ZTo6U3VzcGVuZGlu
ZyB9OwogICAgIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoU3VzcGVuZGVkUGFnZVByb3h5Kik+IG1f
cmVhZHlUb1Vuc3VzcGVuZEhhbmRsZXI7CiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBQ
cm9jZXNzVGhyb3R0bGVyOjpCYWNrZ3JvdW5kQWN0aXZpdHlUb2tlbiBtX3N1c3BlbnNpb25Ub2tl
bjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDUwMjI0ZWQx
ZDE2NmU1Yjk4NzhkZjk1YmFjOTA5Y2FjNGZjMmIyN2YuLmZjYjRjODM3M2YzMjNjYjNlZTM2NGQ3
Nzc3M2FhMjM2ZGRlM2JlZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmNwcApAQCAtNzgwLDExICs3ODAsMTYgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnN3YXBUb1dlYlBy
b2Nlc3MoUmVmPFdlYlByb2Nlc3NQcm94eT4mJiBwcm9jZXNzLCBzdGQ6OnVuaXF1ZV8KICAgICAv
LyBjYXNlLCB3ZSBuZWVkIHRvIGluaXRpYWxpemUgbV9tYWluRnJhbWUgdG8gcmVmbGVjdCB0aGUg
ZmFjdCB0aGUgdGhlIFdlYlByb2Nlc3MnIFdlYlBhZ2UKICAgICAvLyBhbHJlYWR5IGV4aXN0cyBh
bmQgYWxyZWFkeSBoYXMgYSBtYWluIGZyYW1lLgogICAgIGlmIChkZXN0aW5hdGlvblN1c3BlbmRl
ZFBhZ2UpIHsKLSAgICAgICAgQVNTRVJUKCFtX21haW5GcmFtZSk7Ci0gICAgICAgIEFTU0VSVCgm
ZGVzdGluYXRpb25TdXNwZW5kZWRQYWdlLT5wcm9jZXNzKCkgPT0gbV9wcm9jZXNzLnB0cigpKTsK
LSAgICAgICAgZGVzdGluYXRpb25TdXNwZW5kZWRQYWdlLT51bnN1c3BlbmQoKTsKLSAgICAgICAg
bV9tYWluRnJhbWUgPSBXZWJGcmFtZVByb3h5OjpjcmVhdGUoKnRoaXMsIGRlc3RpbmF0aW9uU3Vz
cGVuZGVkUGFnZS0+bWFpbkZyYW1lSUQoKSk7Ci0gICAgICAgIG1fcHJvY2Vzcy0+ZnJhbWVDcmVh
dGVkKGRlc3RpbmF0aW9uU3VzcGVuZGVkUGFnZS0+bWFpbkZyYW1lSUQoKSwgKm1fbWFpbkZyYW1l
KTsKKyAgICAgICAgaWYgKCFkZXN0aW5hdGlvblN1c3BlbmRlZFBhZ2UtPmZhaWxlZFRvU3VzcGVu
ZCgpKSB7CisgICAgICAgICAgICBBU1NFUlQoIW1fbWFpbkZyYW1lKTsKKyAgICAgICAgICAgIEFT
U0VSVCgmZGVzdGluYXRpb25TdXNwZW5kZWRQYWdlLT5wcm9jZXNzKCkgPT0gbV9wcm9jZXNzLnB0
cigpKTsKKyAgICAgICAgICAgIGRlc3RpbmF0aW9uU3VzcGVuZGVkUGFnZS0+dW5zdXNwZW5kKCk7
CisgICAgICAgICAgICBtX21haW5GcmFtZSA9IFdlYkZyYW1lUHJveHk6OmNyZWF0ZSgqdGhpcywg
ZGVzdGluYXRpb25TdXNwZW5kZWRQYWdlLT5tYWluRnJhbWVJRCgpKTsKKyAgICAgICAgICAgIG1f
cHJvY2Vzcy0+ZnJhbWVDcmVhdGVkKGRlc3RpbmF0aW9uU3VzcGVuZGVkUGFnZS0+bWFpbkZyYW1l
SUQoKSwgKm1fbWFpbkZyYW1lKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIC8vIFdl
IGZhaWxlZCB0byBzdXNwZW5kIHRoZSBwYWdlIHNvIGRlc3Ryb3kgaXQgbm93IGFuZCBtZXJlbHkg
cmV1c2UgaXRzIFdlYkNvbnRlbnQgcHJvY2Vzcy4KKyAgICAgICAgICAgIGRlc3RpbmF0aW9uU3Vz
cGVuZGVkUGFnZSA9IG51bGxwdHI7CisgICAgICAgIH0KICAgICB9CiAKICAgICBtX3Byb2Nlc3Mt
PmFkZEV4aXN0aW5nV2ViUGFnZSgqdGhpcywgbV9wYWdlSUQsIFdlYlByb2Nlc3NQcm94eTo6QmVn
aW5zVXNpbmdEYXRhU3RvcmU6Ok5vKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQb29sLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nl
c3NQb29sLmNwcAppbmRleCBmYTQzYTNkMWU3ODMwOTJiYjdjMDIxODE0N2ZkMTY0ZjgyN2IwM2Mw
Li44MjgzMGE1M2Y2MTQ5NGIxMjAyMGQ0ODE1MjA3OGE1YzkzZTJhNWNhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCkBAIC0yMTc3LDcgKzIxNzcsNyBAQCB2
b2lkIFdlYlByb2Nlc3NQb29sOjpwcm9jZXNzRm9yTmF2aWdhdGlvbkludGVybmFsKFdlYlBhZ2VQ
cm94eSYgcGFnZSwgY29uc3QgQVBJOgogICAgICAgICBpZiAoYXV0byogc3VzcGVuZGVkUGFnZSA9
IGJhY2tGb3J3YXJkTGlzdEl0ZW0tPnN1c3BlbmRlZFBhZ2UoKSkgewogICAgICAgICAgICAgcmV0
dXJuIHN1c3BlbmRlZFBhZ2UtPndhaXRVbnRpbFJlYWR5VG9VbnN1c3BlbmQoW2NyZWF0ZU5ld1By
b2Nlc3MgPSBXVEZNb3ZlKGNyZWF0ZU5ld1Byb2Nlc3MpLCBjb21wbGV0aW9uSGFuZGxlciA9IFdU
Rk1vdmUoY29tcGxldGlvbkhhbmRsZXIpXShTdXNwZW5kZWRQYWdlUHJveHkqIHN1c3BlbmRlZFBh
Z2UpIG11dGFibGUgewogICAgICAgICAgICAgICAgIGlmICghc3VzcGVuZGVkUGFnZSkKLSAgICAg
ICAgICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5kbGVyKGNyZWF0ZU5ld1Byb2Nlc3Mo
KSwgbnVsbHB0ciwgIlVzaW5nIG5ldyBwcm9jZXNzIGJlY2F1c2UgdGFyZ2V0IGJhY2svZm9yd2Fy
ZCBpdGVtJ3MgcHJvY2VzcyBmYWlsZWQgdG8gc3VzcGVuZCJfcyk7CisgICAgICAgICAgICAgICAg
ICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcihjcmVhdGVOZXdQcm9jZXNzKCksIG51bGxwdHIs
ICJVc2luZyBuZXcgcHJvY2VzcyBiZWNhdXNlIHRhcmdldCBiYWNrL2ZvcndhcmQgaXRlbSdzIHN1
c3BlbmRlZCBwYWdlIGlzIG5vdCByZXVzYWJsZSJfcyk7CiAgICAgICAgICAgICAgICAgUmVmPFdl
YlByb2Nlc3NQcm94eT4gcHJvY2VzcyA9IHN1c3BlbmRlZFBhZ2UtPnByb2Nlc3MoKTsKICAgICAg
ICAgICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKHByb2Nlc3MpLCBzdXNwZW5kZWRQ
YWdlLCAiVXNpbmcgdGFyZ2V0IGJhY2svZm9yd2FyZCBpdGVtJ3MgcHJvY2VzcyJfcyk7CiAgICAg
ICAgICAgICB9KTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxv
ZwppbmRleCBlN2MwMzI0YThjYzAyZjEzODk2YzJkMzIzMTY5ZWQxODllZDY3OTZhLi5mZjg1N2Ix
ZWY1OGJkZjliZmU5NDYzNjljNTc4NmI1NjdjNzA2MDUzIDEwMDY0NAotLS0gYS9Ub29scy9DaGFu
Z2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTgtMTItMTcg
IENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBSZWdyZXNzaW9uKHIy
MzkxODIpIFN1c3BlbmRlZFBhZ2UncyBwcm9jZXNzIHJldXNlIGZvciBsaW5rIG5hdmlnYXRpb24g
b3B0aW1pemF0aW9uIHNvbWV0aW1lcyBicm9rZW4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE5Mjc3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEFkZCBBUEkgdGVzdCBjb3ZlcmFnZS4KKworICAgICAgICAq
IFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvUHJvY2Vzc1N3YXBPbk5hdmlnYXRpb24u
bW06CisKIDIwMTgtMTItMTcgIERhbmllbCBCYXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgogCiAg
ICAgICAgIFN1cHBvcnQgY29uY2F0ZW5hdGluZyBTdHJpbmdWaWV3IHdpdGggb3RoZXIgc3RyaW5n
IHR5cGVzCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L1Byb2Nlc3NTd2FwT25OYXZpZ2F0aW9uLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRDb2NvYS9Qcm9jZXNzU3dhcE9uTmF2aWdhdGlvbi5tbQppbmRleCAwNzAxZGM0YmU2NDkw
OWI5NmMyZGI4ZjUzMTYyMjEwMDJjMjM2NjE5Li4yNDM0YmNlYzhjMWUxMWI1NDNiZGI3OGY4ZDVm
MmZlNWJlOTdmN2EzIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dENvY29hL1Byb2Nlc3NTd2FwT25OYXZpZ2F0aW9uLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvV2ViS2l0Q29jb2EvUHJvY2Vzc1N3YXBPbk5hdmlnYXRpb24ubW0KQEAgLTE3OTIs
NiArMTc5MiwxMTAgQEAgVEVTVChQcm9jZXNzU3dhcCwgUmV1c2VTdXNwZW5kZWRQcm9jZXNzKQog
ICAgIEVYUEVDVF9FUShhcHBsZVBJRCwgW3dlYlZpZXcgX3dlYlByb2Nlc3NJZGVudGlmaWVyXSk7
CiB9CiAKK3N0YXRpYyBjb25zdCBjaGFyKiBmYWlsc1RvRW50ZXJQYWdlQ2FjaGVUZXN0Qnl0ZXMg
PSBSIlBTT05SRVNPVVJDRSgKKzxib2R5PgorPHNjcmlwdD4KKy8vIFBhZ2VzIHdpdGggZGVkaWNh
dGVkIHdvcmtlcnMgZG8gbm90IGdvIGludG8gcGFnZSBjYWNoZS4KK3ZhciBteVdvcmtlciA9IG5l
dyBXb3JrZXIoJ3dvcmtlci5qcycpOworPC9zY3JpcHQ+Cis8L2JvZHk+CispUFNPTlJFU09VUkNF
IjsKKworVEVTVChQcm9jZXNzU3dhcCwgUmV1c2VTdXNwZW5kZWRQcm9jZXNzRXZlbklmUGFnZUNh
Y2hlRmFpbHMpCit7CisgICAgYXV0byBwcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24gPSBhZG9wdE5T
KFtbX1dLUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0XSk7CisgICAgW3Byb2Nl
c3NQb29sQ29uZmlndXJhdGlvbiBzZXRQcm9jZXNzU3dhcHNPbk5hdmlnYXRpb246WUVTXTsKKyAg
ICBhdXRvIHByb2Nlc3NQb29sID0gYWRvcHROUyhbW1dLUHJvY2Vzc1Bvb2wgYWxsb2NdIF9pbml0
V2l0aENvbmZpZ3VyYXRpb246cHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmdldCgpXSk7CisKKyAg
ICBhdXRvIHdlYlZpZXdDb25maWd1cmF0aW9uID0gYWRvcHROUyhbW1dLV2ViVmlld0NvbmZpZ3Vy
YXRpb24gYWxsb2NdIGluaXRdKTsKKyAgICBbd2ViVmlld0NvbmZpZ3VyYXRpb24gc2V0UHJvY2Vz
c1Bvb2w6cHJvY2Vzc1Bvb2wuZ2V0KCldOworICAgIGF1dG8gaGFuZGxlciA9IGFkb3B0TlMoW1tQ
U09OU2NoZW1lIGFsbG9jXSBpbml0XSk7CisgICAgW2hhbmRsZXIgYWRkTWFwcGluZ0Zyb21VUkxT
dHJpbmc6QCJwc29uOi8vd3d3LndlYmtpdC5vcmcvbWFpbjEuaHRtbCIgdG9EYXRhOmZhaWxzVG9F
bnRlclBhZ2VDYWNoZVRlc3RCeXRlc107CisgICAgW3dlYlZpZXdDb25maWd1cmF0aW9uIHNldFVS
TFNjaGVtZUhhbmRsZXI6aGFuZGxlci5nZXQoKSBmb3JVUkxTY2hlbWU6QCJQU09OIl07CisKKyAg
ICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbV0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1l
Ok5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApIGNvbmZpZ3VyYXRpb246d2ViVmlld0NvbmZpZ3Vy
YXRpb24uZ2V0KCldKTsKKyAgICBhdXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1BTT05OYXZpZ2F0
aW9uRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKKyAgICBbd2ViVmlldyBzZXROYXZpZ2F0aW9uRGVs
ZWdhdGU6ZGVsZWdhdGUuZ2V0KCldOworCisgICAgTlNVUkxSZXF1ZXN0ICpyZXF1ZXN0ID0gW05T
VVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDpbTlNVUkwgVVJMV2l0aFN0cmluZzpAInBzb246Ly93
d3cud2Via2l0Lm9yZy9tYWluMS5odG1sIl1dOworICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OnJl
cXVlc3RdOworCisgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZkb25lKTsKKyAgICBkb25l
ID0gZmFsc2U7CisKKyAgICBhdXRvIHdlYmtpdFBJRCA9IFt3ZWJWaWV3IF93ZWJQcm9jZXNzSWRl
bnRpZmllcl07CisKKyAgICByZXF1ZXN0ID0gW05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDpb
TlNVUkwgVVJMV2l0aFN0cmluZzpAInBzb246Ly93d3cuYXBwbGUuY29tL21haW4xLmh0bWwiXV07
CisgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6cmVxdWVzdF07CisKKyAgICBUZXN0V2ViS2l0QVBJ
OjpVdGlsOjpydW4oJmRvbmUpOworICAgIGRvbmUgPSBmYWxzZTsKKworICAgIGF1dG8gYXBwbGVQ
SUQgPSBbd2ViVmlldyBfd2ViUHJvY2Vzc0lkZW50aWZpZXJdOworCisgICAgRVhQRUNUX05FKHdl
YmtpdFBJRCwgYXBwbGVQSUQpOworCisgICAgcmVxdWVzdCA9IFtOU1VSTFJlcXVlc3QgcmVxdWVz
dFdpdGhVUkw6W05TVVJMIFVSTFdpdGhTdHJpbmc6QCJwc29uOi8vd3d3LndlYmtpdC5vcmcvbWFp
bjIuaHRtbCJdXTsKKyAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpyZXF1ZXN0XTsKKworICAgIFRl
c3RXZWJLaXRBUEk6OlV0aWw6OnJ1bigmZG9uZSk7CisgICAgZG9uZSA9IGZhbHNlOworCisgICAg
Ly8gV2Ugc2hvdWxkIGhhdmUgZ29uZSBiYWNrIHRvIHRoZSB3ZWJraXQub3JnIHByb2Nlc3MgZm9y
IHRoaXMgbG9hZCBzaW5jZSB3ZSByZXVzZSBTdXNwZW5kZWRQYWdlcycgcHJvY2VzcyB3aGVuIHBv
c3NpYmxlLgorICAgIEVYUEVDVF9FUSh3ZWJraXRQSUQsIFt3ZWJWaWV3IF93ZWJQcm9jZXNzSWRl
bnRpZmllcl0pOworCisgICAgcmVxdWVzdCA9IFtOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6
W05TVVJMIFVSTFdpdGhTdHJpbmc6QCJwc29uOi8vd3d3LmFwcGxlLmNvbS9tYWluMi5odG1sIl1d
OworICAgIFt3ZWJWaWV3IGxvYWRSZXF1ZXN0OnJlcXVlc3RdOworCisgICAgVGVzdFdlYktpdEFQ
STo6VXRpbDo6cnVuKCZkb25lKTsKKyAgICBkb25lID0gZmFsc2U7CisKKyAgICAvLyBXZSBzaG91
bGQgaGF2ZSBnb25lIGJhY2sgdG8gdGhlIGFwcGxlLmNvbSBwcm9jZXNzIGZvciB0aGlzIGxvYWQg
c2luY2Ugd2UgcmV1c2UgU3VzcGVuZGVkUGFnZXMnIHByb2Nlc3Mgd2hlbiBwb3NzaWJsZS4KKyAg
ICBFWFBFQ1RfRVEoYXBwbGVQSUQsIFt3ZWJWaWV3IF93ZWJQcm9jZXNzSWRlbnRpZmllcl0pOwor
fQorCitURVNUKFByb2Nlc3NTd2FwLCBSZXVzZVN1c3BlbmRlZFByb2Nlc3NPbkJhY2tFdmVuSWZQ
YWdlQ2FjaGVGYWlscykKK3sKKyAgICBhdXRvIHByb2Nlc3NQb29sQ29uZmlndXJhdGlvbiA9IGFk
b3B0TlMoW1tfV0tQcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24gYWxsb2NdIGluaXRdKTsKKyAgICBb
cHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uIHNldFByb2Nlc3NTd2Fwc09uTmF2aWdhdGlvbjpZRVNd
OworICAgIGF1dG8gcHJvY2Vzc1Bvb2wgPSBhZG9wdE5TKFtbV0tQcm9jZXNzUG9vbCBhbGxvY10g
X2luaXRXaXRoQ29uZmlndXJhdGlvbjpwcm9jZXNzUG9vbENvbmZpZ3VyYXRpb24uZ2V0KCldKTsK
KworICAgIGF1dG8gd2ViVmlld0NvbmZpZ3VyYXRpb24gPSBhZG9wdE5TKFtbV0tXZWJWaWV3Q29u
ZmlndXJhdGlvbiBhbGxvY10gaW5pdF0pOworICAgIFt3ZWJWaWV3Q29uZmlndXJhdGlvbiBzZXRQ
cm9jZXNzUG9vbDpwcm9jZXNzUG9vbC5nZXQoKV07CisgICAgYXV0byBoYW5kbGVyID0gYWRvcHRO
UyhbW1BTT05TY2hlbWUgYWxsb2NdIGluaXRdKTsKKyAgICBbaGFuZGxlciBhZGRNYXBwaW5nRnJv
bVVSTFN0cmluZzpAInBzb246Ly93d3cud2Via2l0Lm9yZy9tYWluMS5odG1sIiB0b0RhdGE6ZmFp
bHNUb0VudGVyUGFnZUNhY2hlVGVzdEJ5dGVzXTsKKyAgICBbd2ViVmlld0NvbmZpZ3VyYXRpb24g
c2V0VVJMU2NoZW1lSGFuZGxlcjpoYW5kbGVyLmdldCgpIGZvclVSTFNjaGVtZTpAIlBTT04iXTsK
KworICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRo
RnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCkgY29uZmlndXJhdGlvbjp3ZWJWaWV3Q29u
ZmlndXJhdGlvbi5nZXQoKV0pOworICAgIGF1dG8gZGVsZWdhdGUgPSBhZG9wdE5TKFtbUFNPTk5h
dmlnYXRpb25EZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOworICAgIFt3ZWJWaWV3IHNldE5hdmlnYXRp
b25EZWxlZ2F0ZTpkZWxlZ2F0ZS5nZXQoKV07CisKKyAgICBOU1VSTFJlcXVlc3QgKnJlcXVlc3Qg
PSBbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRoVVJMOltOU1VSTCBVUkxXaXRoU3RyaW5nOkAicHNv
bjovL3d3dy53ZWJraXQub3JnL21haW4xLmh0bWwiXV07CisgICAgW3dlYlZpZXcgbG9hZFJlcXVl
c3Q6cmVxdWVzdF07CisKKyAgICBUZXN0V2ViS2l0QVBJOjpVdGlsOjpydW4oJmRvbmUpOworICAg
IGRvbmUgPSBmYWxzZTsKKworICAgIGF1dG8gd2Via2l0UElEID0gW3dlYlZpZXcgX3dlYlByb2Nl
c3NJZGVudGlmaWVyXTsKKworICAgIHJlcXVlc3QgPSBbTlNVUkxSZXF1ZXN0IHJlcXVlc3RXaXRo
VVJMOltOU1VSTCBVUkxXaXRoU3RyaW5nOkAicHNvbjovL3d3dy5hcHBsZS5jb20vbWFpbjEuaHRt
bCJdXTsKKyAgICBbd2ViVmlldyBsb2FkUmVxdWVzdDpyZXF1ZXN0XTsKKworICAgIFRlc3RXZWJL
aXRBUEk6OlV0aWw6OnJ1bigmZG9uZSk7CisgICAgZG9uZSA9IGZhbHNlOworCisgICAgYXV0byBh
cHBsZVBJRCA9IFt3ZWJWaWV3IF93ZWJQcm9jZXNzSWRlbnRpZmllcl07CisKKyAgICBFWFBFQ1Rf
TkUod2Via2l0UElELCBhcHBsZVBJRCk7CisKKyAgICBbd2ViVmlldyBnb0JhY2tdOworCisgICAg
VGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZkb25lKTsKKyAgICBkb25lID0gZmFsc2U7CisKKyAg
ICBFWFBFQ1RfRVEod2Via2l0UElELCBbd2ViVmlldyBfd2ViUHJvY2Vzc0lkZW50aWZpZXJdKTsK
K30KKwogc3RhdGljIGNvbnN0IGNoYXIqIG1haW5GcmFtZXNPbmx5TWFpbkZyYW1lID0gUiJQU09O
UkVTT1VSQ0UoCiA8c2NyaXB0PgogZnVuY3Rpb24gbG9hZGVkKCkgewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>