<?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>205284</bug_id>
          
          <creation_ts>2019-12-16 10:29:35 -0800</creation_ts>
          <short_desc>Organize DocumentEditingContext.mm under a more descriptive suite</short_desc>
          <delta_ts>2019-12-16 14:36:18 -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>Tools / Tests</component>
          <version>WebKit Local 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>
          <dependson>196127</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1598964</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2019-12-16 10:29:35 -0800</bug_when>
    <thetext>Currently it is not possible to run all the tests in DocumentEditingContext.mm without

1) specifying each full test name on the command line.

OR

2) running all tests in the WebKit suite.


Instead of putting all tests in DocumentEditingContext.mm under the WebKit suite we can put them under a DocumentEditingContext suite. Then you can run all the tests using:

run-api-tests DocumentEditingContext</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1598968</commentid>
    <comment_count>1</comment_count>
      <attachid>385785</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2019-12-16 10:40:53 -0800</bug_when>
    <thetext>Created attachment 385785
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1598969</commentid>
    <comment_count>2</comment_count>
      <attachid>385786</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2019-12-16 10:41:33 -0800</bug_when>
    <thetext>Created attachment 385786
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1599043</commentid>
    <comment_count>3</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2019-12-16 12:49:29 -0800</bug_when>
    <thetext>Patch will not apply until bug #196127 is landed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1599117</commentid>
    <comment_count>4</comment_count>
      <attachid>385812</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2019-12-16 14:34:34 -0800</bug_when>
    <thetext>Created attachment 385812
To land</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1599118</commentid>
    <comment_count>5</comment_count>
      <attachid>385812</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2019-12-16 14:35:45 -0800</bug_when>
    <thetext>Comment on attachment 385812
To land

Clearing flags on attachment: 385812

Committed r253582: &lt;https://trac.webkit.org/changeset/253582&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1599119</commentid>
    <comment_count>6</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2019-12-16 14:35:46 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1599120</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-12-16 14:36:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/57985588&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>385785</attachid>
            <date>2019-12-16 10:40:53 -0800</date>
            <delta_ts>2019-12-16 10:41:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-205284-20191216104052.patch</filename>
            <type>text/plain</type>
            <size>14576</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUzMzM1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYzI0NjYwZWE0NzlmNTk0ZmJiZTNjZGIyNWNhZDIxODI3
ZDFmMTNhNS4uODVmZWZhNDA5ODZjZWRmZWI3ZTE0MGUzMjRlMmJiN2RkNGFjMzIzNCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0
IEBACisyMDE5LTEyLTE2ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAg
ICAgICBPcmdhbml6ZSBEb2N1bWVudEVkaXRpbmdDb250ZXh0Lm1tIHVuZGVyIGEgbW9yZSBkZXNj
cmlwdGl2ZSBzdWl0ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjA1Mjg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgUmVnaXN0ZXIgd2l0aCB0aGUgcnVudGltZSBhbGwgb2YgdGhlIERvY3VtZW50RWRpdGlu
Z0NvbnRleHQubW0gdGVzdHMgdW5kZXIgdGhlIHN1aXRlCisgICAgICAgIERvY3VtZW50RWRpdGlu
Z0NvbnRleHQgYXMgb3Bwb3NlZCB0byB0aGUgc3VpdGUgV2ViS2l0IChhcyB0aGV5IGFyZSBub3cp
LiBUaGlzIG1ha2VzCisgICAgICAgIGl0IGVhc3kgdG8gcnVuIGFsbCBvZiB0aGVzZSB0ZXN0cyB1
c2luZzoKKworICAgICAgICAgICAgICAgIHJ1bi1hcGktdGVzdHMgRG9jdW1lbnRFZGl0aW5nQ29u
dGV4dAorCisgICAgICAgIFRoaXMgaXMgbW9yZSB1c2VmdWwgdGhhbiBsZXR0aW5nIHRoZW0gc3Rh
eSBjYXRlZ29yaXplZCB1bmRlciB0aGUgV2ViS2l0IHN1aXRlLiBJZiBpdAorICAgICAgICB0dXJu
cyBvdXQgdGhpcyBjaGFuZ2UgaW50ZXJmZXJlcyB3aXRoIHRoZSB3b3JrZmxvdyBvZiBvdGhlcnMg
dGhlbiB3ZSBjYW4gcmV2ZXJ0IHRoaXMKKyAgICAgICAgY2hhbmdlIGFuZCBsb29rIHRvIGV4cG9z
ZSBHb29nbGUgVGVzdCdzIHJlZ2V4IGZpbHRlcmluZyBpbiBydW4tYXBpLXRlc3RzIHRvIGFjaGll
dmUKKyAgICAgICAgYSBzaW1pbGlhciByZXN1bHQgZ2l2ZW4gdGhhdCB0aGVzZSB0ZXN0cyBoYXZl
IHRoZSBzYW1lIHByZWZpeC4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
Q29jb2EvRG9jdW1lbnRFZGl0aW5nQ29udGV4dC5tbToKKyAgICAgICAgKFRFU1QpOgorCiAyMDE5
LTEyLTE2ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBVc2Ug
QWhlbSBmb250IHRvIGVuc3VyZSBjb25zaXN0ZW50IHRlc3QgcmVzdWx0cwpkaWZmIC0tZ2l0IGEv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Eb2N1bWVudEVkaXRpbmdDb250
ZXh0Lm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Eb2N1bWVudEVk
aXRpbmdDb250ZXh0Lm1tCmluZGV4IDM4N2IwNjNjMzNjZDIyODFjN2MxMTRjM2EyOWI4N2I3YWIx
OWJjMzcuLjllYzQwOTcyNDZlZWI3NTU5MzhhZDk1ZmFiNTY3MTE3YTUwMTViNGYgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvRG9jdW1lbnRFZGl0aW5n
Q29udGV4dC5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0Rv
Y3VtZW50RWRpdGluZ0NvbnRleHQubW0KQEAgLTE0OSw3ICsxNDksNyBAQCBzdGF0aWMgTlNTdHJp
bmcgKmFwcGx5QWhlbVN0eWxlKE5TU3RyaW5nICpodG1sU3RyaW5nKQogICAgIHJldHVybiBbTlNT
dHJpbmcgc3RyaW5nV2l0aEZvcm1hdDpAIjxzdHlsZT5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6
IEFoZW07IHNyYzogdXJsKEFoZW0udHRmKTsgfSBib2R5IHsgbWFyZ2luOiAwOyB9ICogeyBmb250
OiAldXB4LzEgQWhlbTsgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlJTsgfTwvc3R5bGU+
PG1ldGEgbmFtZT0ndmlld3BvcnQnIGNvbnRlbnQ9J3dpZHRoPTk4MCwgaW5pdGlhbC1zY2FsZT0x
LjAnPiVAIiwgZ2x5cGhXaWR0aCwgaHRtbFN0cmluZ107CiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1
bWVudEVkaXRpbmdDb250ZXh0KQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBTaW1wbGUp
CiB7CiAgICAgUmV0YWluUHRyPFRlc3RXS1dlYlZpZXc+IHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVz
dFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAw
KV0pOwogCkBAIC0yNzIsNyArMjcyLDcgQEAgVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0Nv
bnRleHQpCiAgICAgRVhQRUNUX05TU1RSSU5HX0VRKCIgd29ybGQiLCBjb250ZXh0LmNvbnRleHRB
ZnRlcik7CiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0V2l0aE1hcmtl
ZFRleHQpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RXaXRoTWFya2VkVGV4
dCkKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10g
aW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIGF1dG8gKmNv
bnRlbnRWaWV3ID0gW3dlYlZpZXcgdGV4dElucHV0Q29udGVudFZpZXddOwpAQCAtMzcwLDcgKzM3
MCw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0V2l0aE1hcmtlZFRleHQp
CiAgICAgfQogfQogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFNwYXRpYWxS
ZXF1ZXN0SW5UZXh0RmllbGQpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFNwYXRpYWxS
ZXF1ZXN0SW5UZXh0RmllbGQpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RX
S1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCld
KTsKIApAQCAtMzk3LDcgKzM5Nyw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250
ZXh0U3BhdGlhbFJlcXVlc3RJblRleHRGaWVsZCkKIAogLy8gTUFSSzogVGVzdHMgdXNpbmcgd29y
ZCBncmFudWxhcml0eQogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVl
c3RGaXJzdFR3b1dvcmRzKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0Rmly
c3RUd29Xb3JkcykKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmll
dyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAg
IFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseUFoZW1TdHlsZShAIjxw
IGlkPSd0ZXh0JyBjb250ZW50ZWRpdGFibGU+VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVy
IHRoZSBsYXp5IGRvZy48L3A+IildOwpAQCAtNDIyLDcgKzQyMiw3IEBAIFRFU1QoV2ViS2l0LCBE
b2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdEZpcnN0VHdvV29yZHMpCiAgICAgRVhQRUNUX0VR
KENHUmVjdE1ha2UoNTYsIDAsIDksIDE5KSwgdGV4dFJlY3RzWzhdLkNHUmVjdFZhbHVlKTsgLy8g
awogfQogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdFR3
b1dvcmRXaXRoTGVhZGluZ05vbkJyZWFrYWJsZVNwYWNlKQorVEVTVChEb2N1bWVudEVkaXRpbmdD
b250ZXh0LCBSZXF1ZXN0Rmlyc3RUd29Xb3JkV2l0aExlYWRpbmdOb25CcmVha2FibGVTcGFjZSkK
IHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5p
dFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5
bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseUFoZW1TdHlsZShAIjxwIGlkPSd0ZXh0JyBj
b250ZW50ZWRpdGFibGU+Jm5ic3A7VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBs
YXp5IGRvZy48L3A+IildOwpAQCAtNDQyLDcgKzQ0Miw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVu
dEVkaXRpbmdDb250ZXh0UmVxdWVzdEZpcnN0VHdvV29yZFdpdGhMZWFkaW5nTm9uQnJlYWthYmxl
U3BhCiAgICAgRVhQRUNUX0VRKENHUmVjdE1ha2UoMjEsIDAsIDgsIDE5KSwgdGV4dFJlY3RzWzNd
LkNHUmVjdFZhbHVlKTsgLy8gZQogfQogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29u
dGV4dFJlcXVlc3RMYXN0V29yZCkKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVz
dExhc3RXb3JkKQogewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3
IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAg
W3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5nOmFwcGx5QWhlbVN0eWxlKEAiPHAg
aWQ9J3RleHQnIGNvbnRlbnRlZGl0YWJsZT5UaGUgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIg
dGhlIGxhenkgZG9nLjwvcD4iKV07CkBAIC00NjIsNyArNDYyLDcgQEAgVEVTVChXZWJLaXQsIERv
Y3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0TGFzdFdvcmQpCiAgICAgRVhQRUNUX0VRKENHUmVj
dE1ha2UoMjkyLCAwLCA1LCAxOSksIHRleHRSZWN0c1szXS5DR1JlY3RWYWx1ZSk7IC8vIC4KIH0K
IAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0TGFzdFdvcmRXaXRo
VHJhaWxpbmdOb25CcmVha2FibGVTcGFjZSkKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwg
UmVxdWVzdExhc3RXb3JkV2l0aFRyYWlsaW5nTm9uQnJlYWthYmxlU3BhY2UpCiB7CiAgICAgYXV0
byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6
TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5
TG9hZEhUTUxTdHJpbmc6YXBwbHlBaGVtU3R5bGUoQCI8cCBpZD0ndGV4dCcgY29udGVudGVkaXRh
YmxlPlRoZSBxdWljayBicm93biBmb3gganVtcHMgb3ZlciB0aGUgbGF6eSBkb2cuJm5ic3A7PC9w
PiIpXTsKQEAgLTQ4Myw3ICs0ODMsNyBAQCBURVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29u
dGV4dFJlcXVlc3RMYXN0V29yZFdpdGhUcmFpbGluZ05vbkJyZWFrYWJsZVNwYWNlKQogICAgIEVY
UEVDVF9FUShDR1JlY3RNYWtlKDI5NiwgMCwgNSwgMTkpLCB0ZXh0UmVjdHNbNF0uQ0dSZWN0VmFs
dWUpOyAvLwogfQogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RU
d29Xb3Jkc0Fyb3VuZFNlbGVjdGlvbikKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVx
dWVzdFR3b1dvcmRzQXJvdW5kU2VsZWN0aW9uKQogewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0
TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwg
ODAwLCA2MDApXSk7CiAgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5nOmFw
cGx5U3R5bGUoQCI8c3BhbiBpZD0ndGhlJz5UaGU8L3NwYW4+IHF1aWNrIGJyb3duIGZveCA8c3Bh
biBpZD0nanVtcHMnPmp1bXBzPC9zcGFuPiBvdmVyIHRoZSBsYXp5IDxzcGFuIGlkPSdkb2cnPmRv
Zy48L3NwYW4+IildOwpAQCAtNDk2LDcgKzQ5Niw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVk
aXRpbmdDb250ZXh0UmVxdWVzdFR3b1dvcmRzQXJvdW5kU2VsZWN0aW9uKQogICAgIEVYUEVDVF9O
U1NUUklOR19FUSgiIG92ZXIgdGhlIiwgY29udGV4dC5jb250ZXh0QWZ0ZXIpOwogfQogCi1URVNU
KFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RUaHJlZVdvcmRzQXJvdW5kU2Vs
ZWN0aW9uKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0VGhyZWVXb3Jkc0Fy
b3VuZFNlbGVjdGlvbikKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2Vi
VmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwog
ICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseVN0eWxlKEAiPHNw
YW4gaWQ9J3RoZSc+VGhlPC9zcGFuPiBxdWljayBicm93biBmb3ggPHNwYW4gaWQ9J2p1bXBzJz5q
dW1wczwvc3Bhbj4gb3ZlciB0aGUgbGF6eSA8c3BhbiBpZD0nZG9nJz5kb2cuPC9zcGFuPiIpXTsK
QEAgLTUxMyw3ICs1MTMsNyBAQCBURVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJl
cXVlc3RUaHJlZVdvcmRzQXJvdW5kU2VsZWN0aW9uKQogCiBjb25zdGV4cHIgTlNTdHJpbmcgKiBj
b25zdCB0aHJlZVNlbnRlbmNlc0V4YW1wbGUgPSBAIjxwIGlkPSd0ZXh0JyBjb250ZW50ZWRpdGFi
bGU+VGhlIGZpcnN0IHNlbnRlbmNlLiBUaGUgc2Vjb25kIHNlbnRlbmNlLiBUaGUgdGhpcmQgc2Vu
dGVuY2UuPC9wPiI7CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVz
dEZpcnN0VHdvU2VudGVuY2VzKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0
Rmlyc3RUd29TZW50ZW5jZXMpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RX
S1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCld
KTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlTdHlsZSh0
aHJlZVNlbnRlbmNlc0V4YW1wbGUpXTsKQEAgLTUyNiw3ICs1MjYsNyBAQCBURVNUKFdlYktpdCwg
RG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdFR3b1NlbnRlbmNlcykKICAgICBFWFBF
Q1RfTlNTVFJJTkdfRVEoIlRoZSBmaXJzdCBzZW50ZW5jZS4gVGhlIHNlY29uZCBzZW50ZW5jZS4g
IiwgY29udGV4dC5jb250ZXh0QWZ0ZXIpOwogfQogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0
aW5nQ29udGV4dFJlcXVlc3RGaXJzdFR3b1NlbnRlbmNlc05vU3BhY2VzKQorVEVTVChEb2N1bWVu
dEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0Rmlyc3RUd29TZW50ZW5jZXNOb1NwYWNlcykKIHsKICAg
ICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhG
cmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5bmNocm9u
b3VzbHlMb2FkSFRNTFN0cmluZzphcHBseVN0eWxlKEAiPHAgaWQ9J3RleHQnIGNvbnRlbnRlZGl0
YWJsZT5UaGUgZmlyc3Qgc2VudGVuY2UuVGhlIHNlY29uZCBzZW50ZW5jZS5UaGUgdGhpcmQgc2Vu
dGVuY2UuPC9wPiIpXTsKQEAgLTUzOSw3ICs1MzksNyBAQCBURVNUKFdlYktpdCwgRG9jdW1lbnRF
ZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdFR3b1NlbnRlbmNlc05vU3BhY2VzKQogICAgIEVYUEVD
VF9OU1NUUklOR19FUSgiVGhlIGZpcnN0IHNlbnRlbmNlLlRoZSBzZWNvbmQgc2VudGVuY2UuVGhl
IHRoaXJkIHNlbnRlbmNlLiIsIGNvbnRleHQuY29udGV4dEFmdGVyKTsKIH0KIAotVEVTVChXZWJL
aXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0TGFzdFNlbnRlbmNlKQorVEVTVChEb2N1
bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0TGFzdFNlbnRlbmNlKQogewogICAgIGF1dG8gd2Vi
VmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFr
ZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRI
VE1MU3RyaW5nOmFwcGx5U3R5bGUodGhyZWVTZW50ZW5jZXNFeGFtcGxlKV07CkBAIC01NTIsNyAr
NTUyLDcgQEAgVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0TGFzdFNl
bnRlbmNlKQogICAgIEVYUEVDVF9OVUxMKGNvbnRleHQuY29udGV4dEFmdGVyKTsKIH0KIAotVEVT
VChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0TGFzdFR3b1NlbnRlbmNlcykK
K1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVzdExhc3RUd29TZW50ZW5jZXMpCiB7
CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRX
aXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKICAgICBbd2ViVmlldyBzeW5j
aHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlTdHlsZSh0aHJlZVNlbnRlbmNlc0V4YW1wbGUp
XTsKQEAgLTU2OSw3ICs1NjksNyBAQCBURVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4
dFJlcXVlc3RMYXN0VHdvU2VudGVuY2VzKQogCiBjb25zdGV4cHIgTlNTdHJpbmcgKiBjb25zdCB0
aHJlZVBhcmFncmFwaHNFeGFtcGxlID0gQCI8cHJlIGlkPSd0ZXh0JyBzdHlsZT0nd2lkdGg6IDMy
ZW0nIGNvbnRlbnRlZGl0YWJsZT5UaGUgZmlyc3Qgc2VudGVuY2UgaW4gdGhlIGZpcnN0IHBhcmFn
cmFwaC4gVGhlIHNlY29uZCBzZW50ZW5jZSBpbiB0aGUgZmlyc3QgcGFyYWdyYXBoLiBUaGUgdGhp
cmQgc2VudGVuY2UgaW4gdGhlIGZpcnN0IHBhcmFncmFwaC5cblRoZSBmaXJzdCBzZW50ZW5jZSBp
biB0aGUgc2Vjb25kIHBhcmFncmFwaC4gVGhlIHNlY29uZCBzZW50ZW5jZSBpbiB0aGUgc2Vjb25k
IHBhcmFncmFwaC4gVGhlIHRoaXJkIHNlbnRlbmNlIGluIHRoZSBzZWNvbmQgcGFyYWdyYXBoLlxu
VGhlIGZpcnN0IHNlbnRlbmNlIGluIHRoZSB0aGlyZCBwYXJhZ3JhcGguIFRoZSBzZWNvbmQgc2Vu
dGVuY2UgaW4gdGhlIHRoaXJkIHBhcmFncmFwaC4gVGhlIHRoaXJkIHNlbnRlbmNlIGluIHRoZSB0
aGlyZCBwYXJhZ3JhcGguPC9wcmU+IjsKIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0Nv
bnRleHRSZXF1ZXN0Rmlyc3RQYXJhZ3JhcGgpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQs
IFJlcXVlc3RGaXJzdFBhcmFncmFwaCkKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtb
VGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwg
NjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseVN0
eWxlKHRocmVlUGFyYWdyYXBoc0V4YW1wbGUpXTsKQEAgLTU4Miw3ICs1ODIsNyBAQCBURVNUKFdl
YktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdFBhcmFncmFwaCkKICAgICBF
WFBFQ1RfTlNTVFJJTkdfRVEoIlRoZSBmaXJzdCBzZW50ZW5jZSBpbiB0aGUgZmlyc3QgcGFyYWdy
YXBoLiBUaGUgc2Vjb25kIHNlbnRlbmNlIGluIHRoZSBmaXJzdCBwYXJhZ3JhcGguIFRoZSB0aGly
ZCBzZW50ZW5jZSBpbiB0aGUgZmlyc3QgcGFyYWdyYXBoLiIsIGNvbnRleHQuY29udGV4dEFmdGVy
KTsKIH0KIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RU
d29QYXJhZ3JhcGhzKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0Rmlyc3RU
d29QYXJhZ3JhcGhzKQogewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJW
aWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAg
ICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5nOmFwcGx5U3R5bGUodGhyZWVQ
YXJhZ3JhcGhzRXhhbXBsZSldOwpAQCAtNTk1LDcgKzU5NSw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1
bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdEZpcnN0VHdvUGFyYWdyYXBocykKICAgICBFWFBFQ1Rf
TlNTVFJJTkdfRVEoIlRoZSBmaXJzdCBzZW50ZW5jZSBpbiB0aGUgZmlyc3QgcGFyYWdyYXBoLiBU
aGUgc2Vjb25kIHNlbnRlbmNlIGluIHRoZSBmaXJzdCBwYXJhZ3JhcGguIFRoZSB0aGlyZCBzZW50
ZW5jZSBpbiB0aGUgZmlyc3QgcGFyYWdyYXBoLlxuVGhlIGZpcnN0IHNlbnRlbmNlIGluIHRoZSBz
ZWNvbmQgcGFyYWdyYXBoLiBUaGUgc2Vjb25kIHNlbnRlbmNlIGluIHRoZSBzZWNvbmQgcGFyYWdy
YXBoLiBUaGUgdGhpcmQgc2VudGVuY2UgaW4gdGhlIHNlY29uZCBwYXJhZ3JhcGguIiwgY29udGV4
dC5jb250ZXh0QWZ0ZXIpOwogfQogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4
dFJlcXVlc3RMYXN0UGFyYWdyYXBoKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1
ZXN0TGFzdFBhcmFncmFwaCkKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdL
V2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0p
OwogICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseVN0eWxlKHRo
cmVlUGFyYWdyYXBoc0V4YW1wbGUpXTsKQEAgLTYwOCw3ICs2MDgsNyBAQCBURVNUKFdlYktpdCwg
RG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RMYXN0UGFyYWdyYXBoKQogICAgIEVYUEVDVF9O
VUxMKGNvbnRleHQuY29udGV4dEFmdGVyKTsKIH0KIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRp
dGluZ0NvbnRleHRSZXF1ZXN0TGFzdFR3b1BhcmFncmFwaHMpCitURVNUKERvY3VtZW50RWRpdGlu
Z0NvbnRleHQsIFJlcXVlc3RMYXN0VHdvUGFyYWdyYXBocykKIHsKICAgICBhdXRvIHdlYlZpZXcg
PSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0
KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0
cmluZzphcHBseVN0eWxlKHRocmVlUGFyYWdyYXBoc0V4YW1wbGUpXTsKQEAgLTYyMSw3ICs2MjEs
NyBAQCBURVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RMYXN0VHdvUGFy
YWdyYXBocykKICAgICBFWFBFQ1RfTlVMTChjb250ZXh0LmNvbnRleHRBZnRlcik7CiB9CiAKLVRF
U1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdExhc3RUd29QYXJhZ3JhcGhz
V2l0aENhcmV0Tm90SW5QYXJhZ3JhcGgpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJl
cXVlc3RMYXN0VHdvUGFyYWdyYXBoc1dpdGhDYXJldE5vdEluUGFyYWdyYXBoKQogewogICAgIGF1
dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1l
Ok5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAgW3dlYlZpZXcgc3luY2hyb25vdXNs
eUxvYWRIVE1MU3RyaW5nOmFwcGx5QWhlbVN0eWxlKEAiPHNwYW4gaWQ9J3RoZSc+VGhlPC9zcGFu
PiBxdWljayBicm93biBmb3ggPHNwYW4gaWQ9J2p1bXBzJz5qdW1wczwvc3Bhbj4gb3ZlciB0aGUg
bGF6eSA8c3BhbiBpZD0nZG9nJz5kb2cuPC9zcGFuPiIpXTsKQEAgLTYzNyw3ICs2MzcsNyBAQCBU
RVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RMYXN0VHdvUGFyYWdyYXBo
c1dpdGhDYXJldE5vdEluUGFyYWdyYQogLy8gTUFSSzogVGVzdHMgdXNpbmcgY2hhcmFjdGVyIGdy
YW51bGFyaXR5CiAvLyBOb3RlIHRoYXQgd2UgYWx3YXlzIHJldHVybiByZXN1bHRzIHdpdGggcmVz
cGVjdCB0byB0aGUgbmVhcmVzdCB3b3JkIGJvdW5kYXJ5IGluIHRoZSBkaXJlY3Rpb24gb2YgdGhl
IHNlbGVjdGlvbi4KIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0
Rmlyc3RDaGFyYWN0ZXIpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RGaXJz
dENoYXJhY3RlcikKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmll
dyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAg
IFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseVN0eWxlKHRocmVlUGFy
YWdyYXBoc0V4YW1wbGUpXTsKQEAgLTY1MCw3ICs2NTAsNyBAQCBURVNUKFdlYktpdCwgRG9jdW1l
bnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdENoYXJhY3RlcikKICAgICBFWFBFQ1RfTlNTVFJJ
TkdfRVEoIlRoZSIsIGNvbnRleHQuY29udGV4dEFmdGVyKTsKIH0KIAotVEVTVChXZWJLaXQsIERv
Y3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RXb3JkVXNpbmdDaGFyYWN0ZXJHcmFudWxh
cml0eSkKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVzdEZpcnN0V29yZFVzaW5n
Q2hhcmFjdGVyR3JhbnVsYXJpdHkpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rl
c3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYw
MCldKTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlTdHls
ZSh0aHJlZVBhcmFncmFwaHNFeGFtcGxlKV07CkBAIC02NjMsNyArNjYzLDcgQEAgVEVTVChXZWJL
aXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RXb3JkVXNpbmdDaGFyYWN0ZXJH
cmFudWxhcml0eSkKICAgICBFWFBFQ1RfTlNTVFJJTkdfRVEoIlRoZSIsIGNvbnRleHQuY29udGV4
dEFmdGVyKTsKIH0KIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0
Rmlyc3RXb3JkUGx1c1RyYWlsaW5nU3BhY2VVc2luZ0NoYXJhY3RlckdyYW51bGFyaXR5KQorVEVT
VChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0Rmlyc3RXb3JkUGx1c1RyYWlsaW5nU3Bh
Y2VVc2luZ0NoYXJhY3RlckdyYW51bGFyaXR5KQogewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0
TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwg
ODAwLCA2MDApXSk7CiAgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5nOmFw
cGx5U3R5bGUodGhyZWVQYXJhZ3JhcGhzRXhhbXBsZSldOwpAQCAtNjc4LDcgKzY3OCw3IEBAIFRF
U1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdEZpcnN0V29yZFBsdXNUcmFp
bGluZ1NwYWNlVXNpbmdDaGFyYWN0CiAKIC8vIE1BUks6IFRlc3RzIHVzaW5nIGxpbmUgZ3JhbnVs
YXJpdHkKIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RM
aW5lKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0Rmlyc3RMaW5lKQogewog
ICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0
aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAgW3dlYlZpZXcgc3luY2hy
b25vdXNseUxvYWRIVE1MU3RyaW5nOmFwcGx5QWhlbVN0eWxlKHRocmVlUGFyYWdyYXBoc0V4YW1w
bGUpXTsKQEAgLTY5MSw3ICs2OTEsNyBAQCBURVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29u
dGV4dFJlcXVlc3RGaXJzdExpbmUpCiAgICAgRVhQRUNUX05TU1RSSU5HX0VRKCJUaGUgZmlyc3Qg
c2VudGVuY2UgaW4gdGhlIGZpcnN0IHBhcmFncmFwaCIsIGNvbnRleHQuY29udGV4dEFmdGVyKTsK
IH0KIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RUd29M
aW5lcykKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVzdEZpcnN0VHdvTGluZXMp
CiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGlu
aXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKICAgICBbd2ViVmlldyBz
eW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlBaGVtU3R5bGUodGhyZWVQYXJhZ3JhcGhz
RXhhbXBsZSldOwpAQCAtNzA0LDcgKzcwNCw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRp
bmdDb250ZXh0UmVxdWVzdEZpcnN0VHdvTGluZXMpCiAgICAgRVhQRUNUX05TU1RSSU5HX0VRKCJU
aGUgZmlyc3Qgc2VudGVuY2UgaW4gdGhlIGZpcnN0IHBhcmFncmFwaC4gVGhlIHNlY29uZCBzZW50
ZW5jZSBpbiIsIGNvbnRleHQuY29udGV4dEFmdGVyKTsKIH0KIAotVEVTVChXZWJLaXQsIERvY3Vt
ZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0TGFzdExpbmUpCitURVNUKERvY3VtZW50RWRpdGluZ0Nv
bnRleHQsIFJlcXVlc3RMYXN0TGluZSkKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtb
VGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwg
NjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseUFo
ZW1TdHlsZSh0aHJlZVBhcmFncmFwaHNFeGFtcGxlKV07CkBAIC03MTcsNyArNzE3LDcgQEAgVEVT
VChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0TGFzdExpbmUpCiAgICAgRVhQ
RUNUX05VTEwoY29udGV4dC5jb250ZXh0QWZ0ZXIpOwogfQogCi1URVNUKFdlYktpdCwgRG9jdW1l
bnRFZGl0aW5nQ29udGV4dFJlcXVlc3RMYXN0VHdvTGluZXMpCitURVNUKERvY3VtZW50RWRpdGlu
Z0NvbnRleHQsIFJlcXVlc3RMYXN0VHdvTGluZXMpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRv
cHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAw
LCA4MDAsIDYwMCldKTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6
YXBwbHlBaGVtU3R5bGUodGhyZWVQYXJhZ3JhcGhzRXhhbXBsZSldOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>385786</attachid>
            <date>2019-12-16 10:41:33 -0800</date>
            <delta_ts>2019-12-16 14:34:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-205284-20191216104133.patch</filename>
            <type>text/plain</type>
            <size>14572</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUzMzM1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYzI0NjYwZWE0NzlmNTk0ZmJiZTNjZGIyNWNhZDIxODI3
ZDFmMTNhNS4uODVmZWZhNDA5ODZjZWRmZWI3ZTE0MGUzMjRlMmJiN2RkNGFjMzIzNCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0
IEBACisyMDE5LTEyLTE2ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAg
ICAgICBPcmdhbml6ZSBEb2N1bWVudEVkaXRpbmdDb250ZXh0Lm1tIHVuZGVyIGEgbW9yZSBkZXNj
cmlwdGl2ZSBzdWl0ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjA1Mjg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgUmVnaXN0ZXIgd2l0aCB0aGUgcnVudGltZSBhbGwgb2YgdGhlIERvY3VtZW50RWRpdGlu
Z0NvbnRleHQubW0gdGVzdHMgdW5kZXIgdGhlIHN1aXRlCisgICAgICAgIERvY3VtZW50RWRpdGlu
Z0NvbnRleHQgYXMgb3Bwb3NlZCB0byB0aGUgc3VpdGUgV2ViS2l0IChhcyB0aGV5IGFyZSBub3cp
LiBUaGlzIG1ha2VzCisgICAgICAgIGl0IGVhc3kgdG8gcnVuIGFsbCBvZiB0aGVzZSB0ZXN0cyB1
c2luZzoKKworICAgICAgICAgICAgICAgIHJ1bi1hcGktdGVzdHMgRG9jdW1lbnRFZGl0aW5nQ29u
dGV4dAorCisgICAgICAgIFRoaXMgaXMgbW9yZSB1c2VmdWwgdGhhbiBsZXR0aW5nIHRoZW0gc3Rh
eSBjYXRlZ29yaXplZCB1bmRlciB0aGUgV2ViS2l0IHN1aXRlLiBJZiBpdAorICAgICAgICB0dXJu
cyBvdXQgdGhpcyBjaGFuZ2UgaW50ZXJmZXJlcyB3aXRoIHRoZSB3b3JrZmxvdyBvZiBvdGhlcnMg
dGhlbiB3ZSBjYW4gcmV2ZXJ0IHRoaXMKKyAgICAgICAgY2hhbmdlIGFuZCBsb29rIHRvIGV4cG9z
ZSBHb29nbGUgVGVzdCdzIHJlZ2V4IGZpbHRlcmluZyBpbiBydW4tYXBpLXRlc3RzIHRvIGFjaGll
dmUKKyAgICAgICAgYSBzaW1pbGlhciByZXN1bHQgZ2l2ZW4gdGhhdCB0aGVzZSB0ZXN0cyBoYXZl
IHRoZSBzYW1lIHByZWZpeC4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
Q29jb2EvRG9jdW1lbnRFZGl0aW5nQ29udGV4dC5tbToKKyAgICAgICAgKFRFU1QpOgorCiAyMDE5
LTEyLTE2ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBVc2Ug
QWhlbSBmb250IHRvIGVuc3VyZSBjb25zaXN0ZW50IHRlc3QgcmVzdWx0cwpkaWZmIC0tZ2l0IGEv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Eb2N1bWVudEVkaXRpbmdDb250
ZXh0Lm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Eb2N1bWVudEVk
aXRpbmdDb250ZXh0Lm1tCmluZGV4IDM4N2IwNjNjMzNjZDIyODFjN2MxMTRjM2EyOWI4N2I3YWIx
OWJjMzcuLjJiYzM4NWExOTA0NDU2ZDY4ZGJmYmExMTlhZjc0MGVkZjE2Y2E2YmEgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvRG9jdW1lbnRFZGl0aW5n
Q29udGV4dC5tbQorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0Rv
Y3VtZW50RWRpdGluZ0NvbnRleHQubW0KQEAgLTE0OSw3ICsxNDksNyBAQCBzdGF0aWMgTlNTdHJp
bmcgKmFwcGx5QWhlbVN0eWxlKE5TU3RyaW5nICpodG1sU3RyaW5nKQogICAgIHJldHVybiBbTlNT
dHJpbmcgc3RyaW5nV2l0aEZvcm1hdDpAIjxzdHlsZT5AZm9udC1mYWNlIHsgZm9udC1mYW1pbHk6
IEFoZW07IHNyYzogdXJsKEFoZW0udHRmKTsgfSBib2R5IHsgbWFyZ2luOiAwOyB9ICogeyBmb250
OiAldXB4LzEgQWhlbTsgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlJTsgfTwvc3R5bGU+
PG1ldGEgbmFtZT0ndmlld3BvcnQnIGNvbnRlbnQ9J3dpZHRoPTk4MCwgaW5pdGlhbC1zY2FsZT0x
LjAnPiVAIiwgZ2x5cGhXaWR0aCwgaHRtbFN0cmluZ107CiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1
bWVudEVkaXRpbmdDb250ZXh0KQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBTaW1wbGUp
CiB7CiAgICAgUmV0YWluUHRyPFRlc3RXS1dlYlZpZXc+IHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVz
dFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAw
KV0pOwogCkBAIC0yNzIsNyArMjcyLDcgQEAgVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0Nv
bnRleHQpCiAgICAgRVhQRUNUX05TU1RSSU5HX0VRKCIgd29ybGQiLCBjb250ZXh0LmNvbnRleHRB
ZnRlcik7CiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0V2l0aE1hcmtl
ZFRleHQpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RNYXJrZWRUZXh0KQog
ewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0
V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAgYXV0byAqY29udGVu
dFZpZXcgPSBbd2ViVmlldyB0ZXh0SW5wdXRDb250ZW50Vmlld107CkBAIC0zNzAsNyArMzcwLDcg
QEAgVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRXaXRoTWFya2VkVGV4dCkKICAg
ICB9CiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0U3BhdGlhbFJlcXVl
c3RJblRleHRGaWVsZCkKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgU3BhdGlhbFJlcXVl
c3RJblRleHRGaWVsZCkKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2Vi
VmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwog
CkBAIC0zOTcsNyArMzk3LDcgQEAgVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRT
cGF0aWFsUmVxdWVzdEluVGV4dEZpZWxkKQogCiAvLyBNQVJLOiBUZXN0cyB1c2luZyB3b3JkIGdy
YW51bGFyaXR5CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdEZp
cnN0VHdvV29yZHMpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RGaXJzdFR3
b1dvcmRzKQogewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFs
bG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAgW3dl
YlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5nOmFwcGx5QWhlbVN0eWxlKEAiPHAgaWQ9
J3RleHQnIGNvbnRlbnRlZGl0YWJsZT5UaGUgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhl
IGxhenkgZG9nLjwvcD4iKV07CkBAIC00MjIsNyArNDIyLDcgQEAgVEVTVChXZWJLaXQsIERvY3Vt
ZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RUd29Xb3JkcykKICAgICBFWFBFQ1RfRVEoQ0dS
ZWN0TWFrZSg1NiwgMCwgOSwgMTkpLCB0ZXh0UmVjdHNbOF0uQ0dSZWN0VmFsdWUpOyAvLyBrCiB9
CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdEZpcnN0VHdvV29y
ZFdpdGhMZWFkaW5nTm9uQnJlYWthYmxlU3BhY2UpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRl
eHQsIFJlcXVlc3RGaXJzdFR3b1dvcmRXaXRoTGVhZGluZ05vbkJyZWFrYWJsZVNwYWNlKQogewog
ICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0
aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAgW3dlYlZpZXcgc3luY2hy
b25vdXNseUxvYWRIVE1MU3RyaW5nOmFwcGx5QWhlbVN0eWxlKEAiPHAgaWQ9J3RleHQnIGNvbnRl
bnRlZGl0YWJsZT4mbmJzcDtUaGUgcXVpY2sgYnJvd24gZm94IGp1bXBzIG92ZXIgdGhlIGxhenkg
ZG9nLjwvcD4iKV07CkBAIC00NDIsNyArNDQyLDcgQEAgVEVTVChXZWJLaXQsIERvY3VtZW50RWRp
dGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RUd29Xb3JkV2l0aExlYWRpbmdOb25CcmVha2FibGVTcGEK
ICAgICBFWFBFQ1RfRVEoQ0dSZWN0TWFrZSgyMSwgMCwgOCwgMTkpLCB0ZXh0UmVjdHNbM10uQ0dS
ZWN0VmFsdWUpOyAvLyBlCiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0
UmVxdWVzdExhc3RXb3JkKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0TGFz
dFdvcmQpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxs
b2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKICAgICBbd2Vi
VmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlBaGVtU3R5bGUoQCI8cCBpZD0n
dGV4dCcgY29udGVudGVkaXRhYmxlPlRoZSBxdWljayBicm93biBmb3gganVtcHMgb3ZlciB0aGUg
bGF6eSBkb2cuPC9wPiIpXTsKQEAgLTQ2Miw3ICs0NjIsNyBAQCBURVNUKFdlYktpdCwgRG9jdW1l
bnRFZGl0aW5nQ29udGV4dFJlcXVlc3RMYXN0V29yZCkKICAgICBFWFBFQ1RfRVEoQ0dSZWN0TWFr
ZSgyOTIsIDAsIDUsIDE5KSwgdGV4dFJlY3RzWzNdLkNHUmVjdFZhbHVlKTsgLy8gLgogfQogCi1U
RVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RMYXN0V29yZFdpdGhUcmFp
bGluZ05vbkJyZWFrYWJsZVNwYWNlKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1
ZXN0TGFzdFdvcmRXaXRoVHJhaWxpbmdOb25CcmVha2FibGVTcGFjZSkKIHsKICAgICBhdXRvIHdl
YlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01h
a2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2Fk
SFRNTFN0cmluZzphcHBseUFoZW1TdHlsZShAIjxwIGlkPSd0ZXh0JyBjb250ZW50ZWRpdGFibGU+
VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4mbmJzcDs8L3A+Iild
OwpAQCAtNDgzLDcgKzQ4Myw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0
UmVxdWVzdExhc3RXb3JkV2l0aFRyYWlsaW5nTm9uQnJlYWthYmxlU3BhY2UpCiAgICAgRVhQRUNU
X0VRKENHUmVjdE1ha2UoMjk2LCAwLCA1LCAxOSksIHRleHRSZWN0c1s0XS5DR1JlY3RWYWx1ZSk7
IC8vCiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdFR3b1dv
cmRzQXJvdW5kU2VsZWN0aW9uKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0
VHdvV29yZHNBcm91bmRTZWxlY3Rpb24pCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhb
W1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAs
IDYwMCldKTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlT
dHlsZShAIjxzcGFuIGlkPSd0aGUnPlRoZTwvc3Bhbj4gcXVpY2sgYnJvd24gZm94IDxzcGFuIGlk
PSdqdW1wcyc+anVtcHM8L3NwYW4+IG92ZXIgdGhlIGxhenkgPHNwYW4gaWQ9J2RvZyc+ZG9nLjwv
c3Bhbj4iKV07CkBAIC00OTYsNyArNDk2LDcgQEAgVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGlu
Z0NvbnRleHRSZXF1ZXN0VHdvV29yZHNBcm91bmRTZWxlY3Rpb24pCiAgICAgRVhQRUNUX05TU1RS
SU5HX0VRKCIgb3ZlciB0aGUiLCBjb250ZXh0LmNvbnRleHRBZnRlcik7CiB9CiAKLVRFU1QoV2Vi
S2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdFRocmVlV29yZHNBcm91bmRTZWxlY3Rp
b24pCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RUaHJlZVdvcmRzQXJvdW5k
U2VsZWN0aW9uKQogewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3
IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAg
W3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5nOmFwcGx5U3R5bGUoQCI8c3BhbiBp
ZD0ndGhlJz5UaGU8L3NwYW4+IHF1aWNrIGJyb3duIGZveCA8c3BhbiBpZD0nanVtcHMnPmp1bXBz
PC9zcGFuPiBvdmVyIHRoZSBsYXp5IDxzcGFuIGlkPSdkb2cnPmRvZy48L3NwYW4+IildOwpAQCAt
NTEzLDcgKzUxMyw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVz
dFRocmVlV29yZHNBcm91bmRTZWxlY3Rpb24pCiAKIGNvbnN0ZXhwciBOU1N0cmluZyAqIGNvbnN0
IHRocmVlU2VudGVuY2VzRXhhbXBsZSA9IEAiPHAgaWQ9J3RleHQnIGNvbnRlbnRlZGl0YWJsZT5U
aGUgZmlyc3Qgc2VudGVuY2UuIFRoZSBzZWNvbmQgc2VudGVuY2UuIFRoZSB0aGlyZCBzZW50ZW5j
ZS48L3A+IjsKIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmly
c3RUd29TZW50ZW5jZXMpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RGaXJz
dFR3b1NlbnRlbmNlcykKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2Vi
VmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwog
ICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseVN0eWxlKHRocmVl
U2VudGVuY2VzRXhhbXBsZSldOwpAQCAtNTI2LDcgKzUyNiw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1
bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdEZpcnN0VHdvU2VudGVuY2VzKQogICAgIEVYUEVDVF9O
U1NUUklOR19FUSgiVGhlIGZpcnN0IHNlbnRlbmNlLiBUaGUgc2Vjb25kIHNlbnRlbmNlLiAiLCBj
b250ZXh0LmNvbnRleHRBZnRlcik7CiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdD
b250ZXh0UmVxdWVzdEZpcnN0VHdvU2VudGVuY2VzTm9TcGFjZXMpCitURVNUKERvY3VtZW50RWRp
dGluZ0NvbnRleHQsIFJlcXVlc3RGaXJzdFR3b1NlbnRlbmNlc05vU3BhY2VzKQogewogICAgIGF1
dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1l
Ok5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAgW3dlYlZpZXcgc3luY2hyb25vdXNs
eUxvYWRIVE1MU3RyaW5nOmFwcGx5U3R5bGUoQCI8cCBpZD0ndGV4dCcgY29udGVudGVkaXRhYmxl
PlRoZSBmaXJzdCBzZW50ZW5jZS5UaGUgc2Vjb25kIHNlbnRlbmNlLlRoZSB0aGlyZCBzZW50ZW5j
ZS48L3A+IildOwpAQCAtNTM5LDcgKzUzOSw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRp
bmdDb250ZXh0UmVxdWVzdEZpcnN0VHdvU2VudGVuY2VzTm9TcGFjZXMpCiAgICAgRVhQRUNUX05T
U1RSSU5HX0VRKCJUaGUgZmlyc3Qgc2VudGVuY2UuVGhlIHNlY29uZCBzZW50ZW5jZS5UaGUgdGhp
cmQgc2VudGVuY2UuIiwgY29udGV4dC5jb250ZXh0QWZ0ZXIpOwogfQogCi1URVNUKFdlYktpdCwg
RG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RMYXN0U2VudGVuY2UpCitURVNUKERvY3VtZW50
RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RMYXN0U2VudGVuY2UpCiB7CiAgICAgYXV0byB3ZWJWaWV3
ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVj
dCgwLCAwLCA4MDAsIDYwMCldKTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxT
dHJpbmc6YXBwbHlTdHlsZSh0aHJlZVNlbnRlbmNlc0V4YW1wbGUpXTsKQEAgLTU1Miw3ICs1NTIs
NyBAQCBURVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RMYXN0U2VudGVu
Y2UpCiAgICAgRVhQRUNUX05VTEwoY29udGV4dC5jb250ZXh0QWZ0ZXIpOwogfQogCi1URVNUKFdl
YktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RMYXN0VHdvU2VudGVuY2VzKQorVEVT
VChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0TGFzdFR3b1NlbnRlbmNlcykKIHsKICAg
ICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhG
cmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5bmNocm9u
b3VzbHlMb2FkSFRNTFN0cmluZzphcHBseVN0eWxlKHRocmVlU2VudGVuY2VzRXhhbXBsZSldOwpA
QCAtNTY5LDcgKzU2OSw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVx
dWVzdExhc3RUd29TZW50ZW5jZXMpCiAKIGNvbnN0ZXhwciBOU1N0cmluZyAqIGNvbnN0IHRocmVl
UGFyYWdyYXBoc0V4YW1wbGUgPSBAIjxwcmUgaWQ9J3RleHQnIHN0eWxlPSd3aWR0aDogMzJlbScg
Y29udGVudGVkaXRhYmxlPlRoZSBmaXJzdCBzZW50ZW5jZSBpbiB0aGUgZmlyc3QgcGFyYWdyYXBo
LiBUaGUgc2Vjb25kIHNlbnRlbmNlIGluIHRoZSBmaXJzdCBwYXJhZ3JhcGguIFRoZSB0aGlyZCBz
ZW50ZW5jZSBpbiB0aGUgZmlyc3QgcGFyYWdyYXBoLlxuVGhlIGZpcnN0IHNlbnRlbmNlIGluIHRo
ZSBzZWNvbmQgcGFyYWdyYXBoLiBUaGUgc2Vjb25kIHNlbnRlbmNlIGluIHRoZSBzZWNvbmQgcGFy
YWdyYXBoLiBUaGUgdGhpcmQgc2VudGVuY2UgaW4gdGhlIHNlY29uZCBwYXJhZ3JhcGguXG5UaGUg
Zmlyc3Qgc2VudGVuY2UgaW4gdGhlIHRoaXJkIHBhcmFncmFwaC4gVGhlIHNlY29uZCBzZW50ZW5j
ZSBpbiB0aGUgdGhpcmQgcGFyYWdyYXBoLiBUaGUgdGhpcmQgc2VudGVuY2UgaW4gdGhlIHRoaXJk
IHBhcmFncmFwaC48L3ByZT4iOwogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4
dFJlcXVlc3RGaXJzdFBhcmFncmFwaCkKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVx
dWVzdEZpcnN0UGFyYWdyYXBoKQogewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0
V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDAp
XSk7CiAgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5nOmFwcGx5U3R5bGUo
dGhyZWVQYXJhZ3JhcGhzRXhhbXBsZSldOwpAQCAtNTgyLDcgKzU4Miw3IEBAIFRFU1QoV2ViS2l0
LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdEZpcnN0UGFyYWdyYXBoKQogICAgIEVYUEVD
VF9OU1NUUklOR19FUSgiVGhlIGZpcnN0IHNlbnRlbmNlIGluIHRoZSBmaXJzdCBwYXJhZ3JhcGgu
IFRoZSBzZWNvbmQgc2VudGVuY2UgaW4gdGhlIGZpcnN0IHBhcmFncmFwaC4gVGhlIHRoaXJkIHNl
bnRlbmNlIGluIHRoZSBmaXJzdCBwYXJhZ3JhcGguIiwgY29udGV4dC5jb250ZXh0QWZ0ZXIpOwog
fQogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdFR3b1Bh
cmFncmFwaHMpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RGaXJzdFR3b1Bh
cmFncmFwaHMpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcg
YWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKICAgICBb
d2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlTdHlsZSh0aHJlZVBhcmFn
cmFwaHNFeGFtcGxlKV07CkBAIC01OTUsNyArNTk1LDcgQEAgVEVTVChXZWJLaXQsIERvY3VtZW50
RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RUd29QYXJhZ3JhcGhzKQogICAgIEVYUEVDVF9OU1NU
UklOR19FUSgiVGhlIGZpcnN0IHNlbnRlbmNlIGluIHRoZSBmaXJzdCBwYXJhZ3JhcGguIFRoZSBz
ZWNvbmQgc2VudGVuY2UgaW4gdGhlIGZpcnN0IHBhcmFncmFwaC4gVGhlIHRoaXJkIHNlbnRlbmNl
IGluIHRoZSBmaXJzdCBwYXJhZ3JhcGguXG5UaGUgZmlyc3Qgc2VudGVuY2UgaW4gdGhlIHNlY29u
ZCBwYXJhZ3JhcGguIFRoZSBzZWNvbmQgc2VudGVuY2UgaW4gdGhlIHNlY29uZCBwYXJhZ3JhcGgu
IFRoZSB0aGlyZCBzZW50ZW5jZSBpbiB0aGUgc2Vjb25kIHBhcmFncmFwaC4iLCBjb250ZXh0LmNv
bnRleHRBZnRlcik7CiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVx
dWVzdExhc3RQYXJhZ3JhcGgpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RM
YXN0UGFyYWdyYXBoKQogewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJW
aWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAg
ICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5nOmFwcGx5U3R5bGUodGhyZWVQ
YXJhZ3JhcGhzRXhhbXBsZSldOwpAQCAtNjA4LDcgKzYwOCw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1
bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdExhc3RQYXJhZ3JhcGgpCiAgICAgRVhQRUNUX05VTEwo
Y29udGV4dC5jb250ZXh0QWZ0ZXIpOwogfQogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5n
Q29udGV4dFJlcXVlc3RMYXN0VHdvUGFyYWdyYXBocykKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29u
dGV4dCwgUmVxdWVzdExhc3RUd29QYXJhZ3JhcGhzKQogewogICAgIGF1dG8gd2ViVmlldyA9IGFk
b3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwg
MCwgODAwLCA2MDApXSk7CiAgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5n
OmFwcGx5U3R5bGUodGhyZWVQYXJhZ3JhcGhzRXhhbXBsZSldOwpAQCAtNjIxLDcgKzYyMSw3IEBA
IFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdExhc3RUd29QYXJhZ3Jh
cGhzKQogICAgIEVYUEVDVF9OVUxMKGNvbnRleHQuY29udGV4dEFmdGVyKTsKIH0KIAotVEVTVChX
ZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0TGFzdFR3b1BhcmFncmFwaHNXaXRo
Q2FyZXROb3RJblBhcmFncmFwaCkKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVz
dExhc3RUd29QYXJhZ3JhcGhzV2l0aENhcmV0Tm90SW5QYXJhZ3JhcGgpCiB7CiAgICAgYXV0byB3
ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNN
YWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9h
ZEhUTUxTdHJpbmc6YXBwbHlBaGVtU3R5bGUoQCI8c3BhbiBpZD0ndGhlJz5UaGU8L3NwYW4+IHF1
aWNrIGJyb3duIGZveCA8c3BhbiBpZD0nanVtcHMnPmp1bXBzPC9zcGFuPiBvdmVyIHRoZSBsYXp5
IDxzcGFuIGlkPSdkb2cnPmRvZy48L3NwYW4+IildOwpAQCAtNjM3LDcgKzYzNyw3IEBAIFRFU1Qo
V2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdExhc3RUd29QYXJhZ3JhcGhzV2l0
aENhcmV0Tm90SW5QYXJhZ3JhCiAvLyBNQVJLOiBUZXN0cyB1c2luZyBjaGFyYWN0ZXIgZ3JhbnVs
YXJpdHkKIC8vIE5vdGUgdGhhdCB3ZSBhbHdheXMgcmV0dXJuIHJlc3VsdHMgd2l0aCByZXNwZWN0
IHRvIHRoZSBuZWFyZXN0IHdvcmQgYm91bmRhcnkgaW4gdGhlIGRpcmVjdGlvbiBvZiB0aGUgc2Vs
ZWN0aW9uLgogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJz
dENoYXJhY3RlcikKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVzdEZpcnN0Q2hh
cmFjdGVyKQogewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFs
bG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAgW3dl
YlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5nOmFwcGx5U3R5bGUodGhyZWVQYXJhZ3Jh
cGhzRXhhbXBsZSldOwpAQCAtNjUwLDcgKzY1MCw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVk
aXRpbmdDb250ZXh0UmVxdWVzdEZpcnN0Q2hhcmFjdGVyKQogICAgIEVYUEVDVF9OU1NUUklOR19F
USgiVGhlIiwgY29udGV4dC5jb250ZXh0QWZ0ZXIpOwogfQogCi1URVNUKFdlYktpdCwgRG9jdW1l
bnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdFdvcmRVc2luZ0NoYXJhY3RlckdyYW51bGFyaXR5
KQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0Rmlyc3RXb3JkVXNpbmdDaGFy
YWN0ZXJHcmFudWxhcml0eSkKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdL
V2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0p
OwogICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseVN0eWxlKHRo
cmVlUGFyYWdyYXBoc0V4YW1wbGUpXTsKQEAgLTY2Myw3ICs2NjMsNyBAQCBURVNUKFdlYktpdCwg
RG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdFdvcmRVc2luZ0NoYXJhY3RlckdyYW51
bGFyaXR5KQogICAgIEVYUEVDVF9OU1NUUklOR19FUSgiVGhlIiwgY29udGV4dC5jb250ZXh0QWZ0
ZXIpOwogfQogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJz
dFdvcmRQbHVzVHJhaWxpbmdTcGFjZVVzaW5nQ2hhcmFjdGVyR3JhbnVsYXJpdHkpCitURVNUKERv
Y3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RGaXJzdFdvcmRQbHVzVHJhaWxpbmdTcGFjZVVz
aW5nQ2hhcmFjdGVyR3JhbnVsYXJpdHkpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhb
W1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAs
IDYwMCldKTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlT
dHlsZSh0aHJlZVBhcmFncmFwaHNFeGFtcGxlKV07CkBAIC02NzgsNyArNjc4LDcgQEAgVEVTVChX
ZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RXb3JkUGx1c1RyYWlsaW5n
U3BhY2VVc2luZ0NoYXJhY3QKIAogLy8gTUFSSzogVGVzdHMgdXNpbmcgbGluZSBncmFudWxhcml0
eQogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdExpbmUp
CitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RGaXJzdExpbmUpCiB7CiAgICAg
YXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJh
bWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91
c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlBaGVtU3R5bGUodGhyZWVQYXJhZ3JhcGhzRXhhbXBsZSld
OwpAQCAtNjkxLDcgKzY5MSw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0
UmVxdWVzdEZpcnN0TGluZSkKICAgICBFWFBFQ1RfTlNTVFJJTkdfRVEoIlRoZSBmaXJzdCBzZW50
ZW5jZSBpbiB0aGUgZmlyc3QgcGFyYWdyYXBoIiwgY29udGV4dC5jb250ZXh0QWZ0ZXIpOwogfQog
Ci1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdFR3b0xpbmVz
KQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0Rmlyc3RUd29MaW5lcykKIHsK
ICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdp
dGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5bmNo
cm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseUFoZW1TdHlsZSh0aHJlZVBhcmFncmFwaHNFeGFt
cGxlKV07CkBAIC03MDQsNyArNzA0LDcgQEAgVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0Nv
bnRleHRSZXF1ZXN0Rmlyc3RUd29MaW5lcykKICAgICBFWFBFQ1RfTlNTVFJJTkdfRVEoIlRoZSBm
aXJzdCBzZW50ZW5jZSBpbiB0aGUgZmlyc3QgcGFyYWdyYXBoLiBUaGUgc2Vjb25kIHNlbnRlbmNl
IGluIiwgY29udGV4dC5jb250ZXh0QWZ0ZXIpOwogfQogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRF
ZGl0aW5nQ29udGV4dFJlcXVlc3RMYXN0TGluZSkKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4
dCwgUmVxdWVzdExhc3RMaW5lKQogewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0
V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDAp
XSk7CiAgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5nOmFwcGx5QWhlbVN0
eWxlKHRocmVlUGFyYWdyYXBoc0V4YW1wbGUpXTsKQEAgLTcxNyw3ICs3MTcsNyBAQCBURVNUKFdl
YktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RMYXN0TGluZSkKICAgICBFWFBFQ1Rf
TlVMTChjb250ZXh0LmNvbnRleHRBZnRlcik7CiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVk
aXRpbmdDb250ZXh0UmVxdWVzdExhc3RUd29MaW5lcykKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29u
dGV4dCwgUmVxdWVzdExhc3RUd29MaW5lcykKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5T
KFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgw
MCwgNjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBs
eUFoZW1TdHlsZSh0aHJlZVBhcmFncmFwaHNFeGFtcGxlKV07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>385812</attachid>
            <date>2019-12-16 14:34:34 -0800</date>
            <delta_ts>2019-12-16 14:34:34 -0800</delta_ts>
            <desc>To land</desc>
            <filename>bug-205284-20191216143433.patch</filename>
            <type>text/plain</type>
            <size>14586</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUzMzM1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMDZkMzI4NzZhMjI3ZjIyOWU5MWFjYzM1NmQ0ZDBkMTkw
Mjk5Nzk1Yy4uZmVjMzM1MGFlNjg5YjhmMWJlMjA4NGZhNWNmMTE0ZWU1ZjVkZjAxNSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0
IEBACisyMDE5LTEyLTE2ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAg
ICAgICBPcmdhbml6ZSBEb2N1bWVudEVkaXRpbmdDb250ZXh0Lm1tIHVuZGVyIGEgbW9yZSBkZXNj
cmlwdGl2ZSBzdWl0ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjA1Mjg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhvcnRvbi4KKworICAgICAg
ICBSZWdpc3RlciB3aXRoIHRoZSBydW50aW1lIGFsbCBvZiB0aGUgRG9jdW1lbnRFZGl0aW5nQ29u
dGV4dC5tbSB0ZXN0cyB1bmRlciB0aGUgc3VpdGUKKyAgICAgICAgRG9jdW1lbnRFZGl0aW5nQ29u
dGV4dCBhcyBvcHBvc2VkIHRvIHRoZSBzdWl0ZSBXZWJLaXQgKGFzIHRoZXkgYXJlIG5vdykuIFRo
aXMgbWFrZXMKKyAgICAgICAgaXQgZWFzeSB0byBydW4gYWxsIG9mIHRoZXNlIHRlc3RzIHVzaW5n
OgorCisgICAgICAgICAgICAgICAgcnVuLWFwaS10ZXN0cyBEb2N1bWVudEVkaXRpbmdDb250ZXh0
CisKKyAgICAgICAgVGhpcyBpcyBtb3JlIHVzZWZ1bCB0aGFuIGxldHRpbmcgdGhlbSBzdGF5IGNh
dGVnb3JpemVkIHVuZGVyIHRoZSBXZWJLaXQgc3VpdGUuIElmIGl0CisgICAgICAgIHR1cm5zIG91
dCB0aGlzIGNoYW5nZSBpbnRlcmZlcmVzIHdpdGggdGhlIHdvcmtmbG93IG9mIG90aGVycyB0aGVu
IHdlIGNhbiByZXZlcnQgdGhpcworICAgICAgICBjaGFuZ2UgYW5kIGxvb2sgdG8gZXhwb3NlIEdv
b2dsZSBUZXN0J3MgcmVnZXggZmlsdGVyaW5nIGluIHJ1bi1hcGktdGVzdHMgdG8gYWNoaWV2ZQor
ICAgICAgICBhIHNpbWlsaWFyIHJlc3VsdCBnaXZlbiB0aGF0IHRoZXNlIHRlc3RzIGhhdmUgdGhl
IHNhbWUgcHJlZml4LgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2Nv
YS9Eb2N1bWVudEVkaXRpbmdDb250ZXh0Lm1tOgorICAgICAgICAoVEVTVCk6CisKIDIwMTktMTIt
MTYgIERhbmllbCBCYXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSBBaGVt
IGZvbnQgdG8gZW5zdXJlIGNvbnNpc3RlbnQgdGVzdCByZXN1bHRzCmRpZmYgLS1naXQgYS9Ub29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0RvY3VtZW50RWRpdGluZ0NvbnRleHQu
bW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0RvY3VtZW50RWRpdGlu
Z0NvbnRleHQubW0KaW5kZXggNzBiNWZhYTg0NjYwYmZlY2MzMmYwZGUzZjQ4MTIxMWRiNmJlZjUz
OC4uNmM4NDU5ZmZhMDdkMjU4Y2RjNjJkMjY3MzExMmZlMzRmZjE2NjE4YyAxMDA2NDQKLS0tIGEv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9Eb2N1bWVudEVkaXRpbmdDb250
ZXh0Lm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvRG9jdW1l
bnRFZGl0aW5nQ29udGV4dC5tbQpAQCAtMTQ5LDcgKzE0OSw3IEBAIHN0YXRpYyBOU1N0cmluZyAq
YXBwbHlBaGVtU3R5bGUoTlNTdHJpbmcgKmh0bWxTdHJpbmcpCiAgICAgcmV0dXJuIFtOU1N0cmlu
ZyBzdHJpbmdXaXRoRm9ybWF0OkAiPHN0eWxlPkBmb250LWZhY2UgeyBmb250LWZhbWlseTogQWhl
bTsgc3JjOiB1cmwoQWhlbS50dGYpOyB9IGJvZHkgeyBtYXJnaW46IDA7IH0gKiB7IGZvbnQ6ICV1
cHgvMSBBaGVtOyAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCUlOyB9PC9zdHlsZT48bWV0
YSBuYW1lPSd2aWV3cG9ydCcgY29udGVudD0nd2lkdGg9OTgwLCBpbml0aWFsLXNjYWxlPTEuMCc+
JUAiLCBnbHlwaFdpZHRoLCBodG1sU3RyaW5nXTsKIH0KIAotVEVTVChXZWJLaXQsIERvY3VtZW50
RWRpdGluZ0NvbnRleHQpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFNpbXBsZSkKIHsK
ICAgICBSZXRhaW5QdHI8VGVzdFdLV2ViVmlldz4gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tX
ZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7
CiAKQEAgLTI3Miw3ICsyNzIsNyBAQCBURVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4
dCkKICAgICBFWFBFQ1RfTlNTVFJJTkdfRVEoIiB3b3JsZCIsIGNvbnRleHQuY29udGV4dEFmdGVy
KTsKIH0KIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRXaXRoTWFya2VkVGV4
dCkKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVzdE1hcmtlZFRleHQpCiB7CiAg
ICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRo
RnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKICAgICBhdXRvICpjb250ZW50Vmll
dyA9IFt3ZWJWaWV3IHRleHRJbnB1dENvbnRlbnRWaWV3XTsKQEAgLTM3MCw3ICszNzAsNyBAQCBU
RVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFdpdGhNYXJrZWRUZXh0KQogICAgIH0K
IH0KIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRTcGF0aWFsUmVxdWVzdElu
VGV4dEZpZWxkKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBTcGF0aWFsUmVxdWVzdElu
VGV4dEZpZWxkKQogewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3
IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAKQEAg
LTM5Nyw3ICszOTcsNyBAQCBURVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFNwYXRp
YWxSZXF1ZXN0SW5UZXh0RmllbGQpCiAKIC8vIE1BUks6IFRlc3RzIHVzaW5nIHdvcmQgZ3JhbnVs
YXJpdHkKIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RU
d29Xb3JkcykKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVzdEZpcnN0VHdvV29y
ZHMpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2Nd
IGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKICAgICBbd2ViVmll
dyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlBaGVtU3R5bGUoQCI8cCBpZD0ndGV4
dCcgY29udGVudGVkaXRhYmxlPlRoZSBxdWljayBicm93biBmb3gganVtcHMgb3ZlciB0aGUgbGF6
eSBkb2cuPC9wPiIpXTsKQEAgLTQyMiw3ICs0MjIsNyBAQCBURVNUKFdlYktpdCwgRG9jdW1lbnRF
ZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdFR3b1dvcmRzKQogICAgIEVYUEVDVF9FUShDR1JlY3RN
YWtlKDIwMCwgMCwgMjUsIDI1KSwgdGV4dFJlY3RzWzhdLkNHUmVjdFZhbHVlKTsgLy8gawogfQog
Ci1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdFR3b1dvcmRX
aXRoTGVhZGluZ05vbkJyZWFrYWJsZVNwYWNlKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0
LCBSZXF1ZXN0Rmlyc3RUd29Xb3JkV2l0aExlYWRpbmdOb25CcmVha2FibGVTcGFjZSkKIHsKICAg
ICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhG
cmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5bmNocm9u
b3VzbHlMb2FkSFRNTFN0cmluZzphcHBseUFoZW1TdHlsZShAIjxwIGlkPSd0ZXh0JyBjb250ZW50
ZWRpdGFibGU+Jm5ic3A7VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRv
Zy48L3A+IildOwpAQCAtNDQyLDcgKzQ0Miw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRp
bmdDb250ZXh0UmVxdWVzdEZpcnN0VHdvV29yZFdpdGhMZWFkaW5nTm9uQnJlYWthYmxlU3BhCiAg
ICAgRVhQRUNUX0VRKENHUmVjdE1ha2UoNzUsIDAsIDI1LCAyNSksIHRleHRSZWN0c1szXS5DR1Jl
Y3RWYWx1ZSk7IC8vIGUKIH0KIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRS
ZXF1ZXN0TGFzdFdvcmQpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RMYXN0
V29yZCkKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxv
Y10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIFt3ZWJW
aWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseUFoZW1TdHlsZShAIjxwIGlkPSd0
ZXh0JyBjb250ZW50ZWRpdGFibGU+VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBs
YXp5IGRvZy48L3A+IildOwpAQCAtNDYyLDcgKzQ2Miw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVu
dEVkaXRpbmdDb250ZXh0UmVxdWVzdExhc3RXb3JkKQogICAgIEVYUEVDVF9FUShDR1JlY3RNYWtl
KDc1LCAyNSwgMjUsIDI1KSwgdGV4dFJlY3RzWzNdLkNHUmVjdFZhbHVlKTsgLy8gLgogfQogCi1U
RVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RMYXN0V29yZFdpdGhUcmFp
bGluZ05vbkJyZWFrYWJsZVNwYWNlKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1
ZXN0TGFzdFdvcmRXaXRoVHJhaWxpbmdOb25CcmVha2FibGVTcGFjZSkKIHsKICAgICBhdXRvIHdl
YlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01h
a2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2Fk
SFRNTFN0cmluZzphcHBseUFoZW1TdHlsZShAIjxwIGlkPSd0ZXh0JyBjb250ZW50ZWRpdGFibGU+
VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIHRoZSBsYXp5IGRvZy4mbmJzcDs8L3A+Iild
OwpAQCAtNDgzLDcgKzQ4Myw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0
UmVxdWVzdExhc3RXb3JkV2l0aFRyYWlsaW5nTm9uQnJlYWthYmxlU3BhY2UpCiAgICAgRVhQRUNU
X0VRKENHUmVjdE1ha2UoMTAwLCAyNSwgMjUsIDI1KSwgdGV4dFJlY3RzWzRdLkNHUmVjdFZhbHVl
KTsgLy8KIH0KIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0VHdv
V29yZHNBcm91bmRTZWxlY3Rpb24pCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVl
c3RUd29Xb3Jkc0Fyb3VuZFNlbGVjdGlvbikKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5T
KFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgw
MCwgNjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBs
eVN0eWxlKEAiPHNwYW4gaWQ9J3RoZSc+VGhlPC9zcGFuPiBxdWljayBicm93biBmb3ggPHNwYW4g
aWQ9J2p1bXBzJz5qdW1wczwvc3Bhbj4gb3ZlciB0aGUgbGF6eSA8c3BhbiBpZD0nZG9nJz5kb2cu
PC9zcGFuPiIpXTsKQEAgLTQ5Niw3ICs0OTYsNyBAQCBURVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0
aW5nQ29udGV4dFJlcXVlc3RUd29Xb3Jkc0Fyb3VuZFNlbGVjdGlvbikKICAgICBFWFBFQ1RfTlNT
VFJJTkdfRVEoIiBvdmVyIHRoZSIsIGNvbnRleHQuY29udGV4dEFmdGVyKTsKIH0KIAotVEVTVChX
ZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0VGhyZWVXb3Jkc0Fyb3VuZFNlbGVj
dGlvbikKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVzdFRocmVlV29yZHNBcm91
bmRTZWxlY3Rpb24pCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZp
ZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKICAg
ICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlTdHlsZShAIjxzcGFu
IGlkPSd0aGUnPlRoZTwvc3Bhbj4gcXVpY2sgYnJvd24gZm94IDxzcGFuIGlkPSdqdW1wcyc+anVt
cHM8L3NwYW4+IG92ZXIgdGhlIGxhenkgPHNwYW4gaWQ9J2RvZyc+ZG9nLjwvc3Bhbj4iKV07CkBA
IC01MTMsNyArNTEzLDcgQEAgVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1
ZXN0VGhyZWVXb3Jkc0Fyb3VuZFNlbGVjdGlvbikKIAogY29uc3RleHByIE5TU3RyaW5nICogY29u
c3QgdGhyZWVTZW50ZW5jZXNFeGFtcGxlID0gQCI8cCBpZD0ndGV4dCcgY29udGVudGVkaXRhYmxl
PlRoZSBmaXJzdCBzZW50ZW5jZS4gVGhlIHNlY29uZCBzZW50ZW5jZS4gVGhlIHRoaXJkIHNlbnRl
bmNlLjwvcD4iOwogCi1URVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RG
aXJzdFR3b1NlbnRlbmNlcykKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVzdEZp
cnN0VHdvU2VudGVuY2VzKQogewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tX
ZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7
CiAgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5nOmFwcGx5U3R5bGUodGhy
ZWVTZW50ZW5jZXNFeGFtcGxlKV07CkBAIC01MjYsNyArNTI2LDcgQEAgVEVTVChXZWJLaXQsIERv
Y3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RUd29TZW50ZW5jZXMpCiAgICAgRVhQRUNU
X05TU1RSSU5HX0VRKCJUaGUgZmlyc3Qgc2VudGVuY2UuIFRoZSBzZWNvbmQgc2VudGVuY2UuICIs
IGNvbnRleHQuY29udGV4dEFmdGVyKTsKIH0KIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGlu
Z0NvbnRleHRSZXF1ZXN0Rmlyc3RUd29TZW50ZW5jZXNOb1NwYWNlcykKK1RFU1QoRG9jdW1lbnRF
ZGl0aW5nQ29udGV4dCwgUmVxdWVzdEZpcnN0VHdvU2VudGVuY2VzTm9TcGFjZXMpCiB7CiAgICAg
YXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJh
bWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91
c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlTdHlsZShAIjxwIGlkPSd0ZXh0JyBjb250ZW50ZWRpdGFi
bGU+VGhlIGZpcnN0IHNlbnRlbmNlLlRoZSBzZWNvbmQgc2VudGVuY2UuVGhlIHRoaXJkIHNlbnRl
bmNlLjwvcD4iKV07CkBAIC01MzksNyArNTM5LDcgQEAgVEVTVChXZWJLaXQsIERvY3VtZW50RWRp
dGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RUd29TZW50ZW5jZXNOb1NwYWNlcykKICAgICBFWFBFQ1Rf
TlNTVFJJTkdfRVEoIlRoZSBmaXJzdCBzZW50ZW5jZS5UaGUgc2Vjb25kIHNlbnRlbmNlLlRoZSB0
aGlyZCBzZW50ZW5jZS4iLCBjb250ZXh0LmNvbnRleHRBZnRlcik7CiB9CiAKLVRFU1QoV2ViS2l0
LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdExhc3RTZW50ZW5jZSkKK1RFU1QoRG9jdW1l
bnRFZGl0aW5nQ29udGV4dCwgUmVxdWVzdExhc3RTZW50ZW5jZSkKIHsKICAgICBhdXRvIHdlYlZp
ZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VS
ZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRN
TFN0cmluZzphcHBseVN0eWxlKHRocmVlU2VudGVuY2VzRXhhbXBsZSldOwpAQCAtNTUyLDcgKzU1
Miw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdExhc3RTZW50
ZW5jZSkKICAgICBFWFBFQ1RfTlVMTChjb250ZXh0LmNvbnRleHRBZnRlcik7CiB9CiAKLVRFU1Qo
V2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdExhc3RUd29TZW50ZW5jZXMpCitU
RVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RMYXN0VHdvU2VudGVuY2VzKQogewog
ICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0
aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAgW3dlYlZpZXcgc3luY2hy
b25vdXNseUxvYWRIVE1MU3RyaW5nOmFwcGx5U3R5bGUodGhyZWVTZW50ZW5jZXNFeGFtcGxlKV07
CkBAIC01NjksNyArNTY5LDcgQEAgVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRS
ZXF1ZXN0TGFzdFR3b1NlbnRlbmNlcykKIAogY29uc3RleHByIE5TU3RyaW5nICogY29uc3QgdGhy
ZWVQYXJhZ3JhcGhzRXhhbXBsZSA9IEAiPHByZSBpZD0ndGV4dCcgc3R5bGU9J3dpZHRoOiAzMmVt
JyBjb250ZW50ZWRpdGFibGU+VGhlIGZpcnN0IHNlbnRlbmNlIGluIHRoZSBmaXJzdCBwYXJhZ3Jh
cGguIFRoZSBzZWNvbmQgc2VudGVuY2UgaW4gdGhlIGZpcnN0IHBhcmFncmFwaC4gVGhlIHRoaXJk
IHNlbnRlbmNlIGluIHRoZSBmaXJzdCBwYXJhZ3JhcGguXG5UaGUgZmlyc3Qgc2VudGVuY2UgaW4g
dGhlIHNlY29uZCBwYXJhZ3JhcGguIFRoZSBzZWNvbmQgc2VudGVuY2UgaW4gdGhlIHNlY29uZCBw
YXJhZ3JhcGguIFRoZSB0aGlyZCBzZW50ZW5jZSBpbiB0aGUgc2Vjb25kIHBhcmFncmFwaC5cblRo
ZSBmaXJzdCBzZW50ZW5jZSBpbiB0aGUgdGhpcmQgcGFyYWdyYXBoLiBUaGUgc2Vjb25kIHNlbnRl
bmNlIGluIHRoZSB0aGlyZCBwYXJhZ3JhcGguIFRoZSB0aGlyZCBzZW50ZW5jZSBpbiB0aGUgdGhp
cmQgcGFyYWdyYXBoLjwvcHJlPiI7CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250
ZXh0UmVxdWVzdEZpcnN0UGFyYWdyYXBoKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBS
ZXF1ZXN0Rmlyc3RQYXJhZ3JhcGgpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rl
c3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYw
MCldKTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlTdHls
ZSh0aHJlZVBhcmFncmFwaHNFeGFtcGxlKV07CkBAIC01ODIsNyArNTgyLDcgQEAgVEVTVChXZWJL
aXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RQYXJhZ3JhcGgpCiAgICAgRVhQ
RUNUX05TU1RSSU5HX0VRKCJUaGUgZmlyc3Qgc2VudGVuY2UgaW4gdGhlIGZpcnN0IHBhcmFncmFw
aC4gVGhlIHNlY29uZCBzZW50ZW5jZSBpbiB0aGUgZmlyc3QgcGFyYWdyYXBoLiBUaGUgdGhpcmQg
c2VudGVuY2UgaW4gdGhlIGZpcnN0IHBhcmFncmFwaC4iLCBjb250ZXh0LmNvbnRleHRBZnRlcik7
CiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdEZpcnN0VHdv
UGFyYWdyYXBocykKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVzdEZpcnN0VHdv
UGFyYWdyYXBocykKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmll
dyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAg
IFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseVN0eWxlKHRocmVlUGFy
YWdyYXBoc0V4YW1wbGUpXTsKQEAgLTU5NSw3ICs1OTUsNyBAQCBURVNUKFdlYktpdCwgRG9jdW1l
bnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdFR3b1BhcmFncmFwaHMpCiAgICAgRVhQRUNUX05T
U1RSSU5HX0VRKCJUaGUgZmlyc3Qgc2VudGVuY2UgaW4gdGhlIGZpcnN0IHBhcmFncmFwaC4gVGhl
IHNlY29uZCBzZW50ZW5jZSBpbiB0aGUgZmlyc3QgcGFyYWdyYXBoLiBUaGUgdGhpcmQgc2VudGVu
Y2UgaW4gdGhlIGZpcnN0IHBhcmFncmFwaC5cblRoZSBmaXJzdCBzZW50ZW5jZSBpbiB0aGUgc2Vj
b25kIHBhcmFncmFwaC4gVGhlIHNlY29uZCBzZW50ZW5jZSBpbiB0aGUgc2Vjb25kIHBhcmFncmFw
aC4gVGhlIHRoaXJkIHNlbnRlbmNlIGluIHRoZSBzZWNvbmQgcGFyYWdyYXBoLiIsIGNvbnRleHQu
Y29udGV4dEFmdGVyKTsKIH0KIAotVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRS
ZXF1ZXN0TGFzdFBhcmFncmFwaCkKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVz
dExhc3RQYXJhZ3JhcGgpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dl
YlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCldKTsK
ICAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlTdHlsZSh0aHJl
ZVBhcmFncmFwaHNFeGFtcGxlKV07CkBAIC02MDgsNyArNjA4LDcgQEAgVEVTVChXZWJLaXQsIERv
Y3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0TGFzdFBhcmFncmFwaCkKICAgICBFWFBFQ1RfTlVM
TChjb250ZXh0LmNvbnRleHRBZnRlcik7CiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRp
bmdDb250ZXh0UmVxdWVzdExhc3RUd29QYXJhZ3JhcGhzKQorVEVTVChEb2N1bWVudEVkaXRpbmdD
b250ZXh0LCBSZXF1ZXN0TGFzdFR3b1BhcmFncmFwaHMpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0g
YWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgw
LCAwLCA4MDAsIDYwMCldKTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJp
bmc6YXBwbHlTdHlsZSh0aHJlZVBhcmFncmFwaHNFeGFtcGxlKV07CkBAIC02MjEsNyArNjIxLDcg
QEAgVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0TGFzdFR3b1BhcmFn
cmFwaHMpCiAgICAgRVhQRUNUX05VTEwoY29udGV4dC5jb250ZXh0QWZ0ZXIpOwogfQogCi1URVNU
KFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RMYXN0VHdvUGFyYWdyYXBoc1dp
dGhTZWxlY3Rpb250V2l0aGluUGFyYWdyYXBoKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0
LCBSZXF1ZXN0TGFzdFR3b1BhcmFncmFwaHNXaXRoU2VsZWN0aW9udFdpdGhpblBhcmFncmFwaCkK
IHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5p
dFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5
bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseUFoZW1TdHlsZShAIjxzcGFuIGlkPSd0aGUn
PlRoZTwvc3Bhbj4gcXVpY2sgYnJvd24gZm94IDxzcGFuIGlkPSdqdW1wcyc+anVtcHM8L3NwYW4+
IG92ZXIgdGhlIGxhenkgPHNwYW4gaWQ9J2RvZyc+ZG9nLjwvc3Bhbj4iKV07CkBAIC02MzcsNyAr
NjM3LDcgQEAgVEVTVChXZWJLaXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0TGFzdFR3
b1BhcmFncmFwaHNXaXRoU2VsZWN0aW9udFdpdGhpblAKIC8vIE1BUks6IFRlc3RzIHVzaW5nIGNo
YXJhY3RlciBncmFudWxhcml0eQogLy8gTm90ZSB0aGF0IHdlIGFsd2F5cyByZXR1cm4gcmVzdWx0
cyB3aXRoIHJlc3BlY3QgdG8gdGhlIG5lYXJlc3Qgd29yZCBib3VuZGFyeSBpbiB0aGUgZGlyZWN0
aW9uIG9mIHRoZSBzZWxlY3Rpb24uCiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250
ZXh0UmVxdWVzdEZpcnN0Q2hhcmFjdGVyKQorVEVTVChEb2N1bWVudEVkaXRpbmdDb250ZXh0LCBS
ZXF1ZXN0Rmlyc3RDaGFyYWN0ZXIpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rl
c3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYw
MCldKTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJpbmc6YXBwbHlTdHls
ZSh0aHJlZVBhcmFncmFwaHNFeGFtcGxlKV07CkBAIC02NTAsNyArNjUwLDcgQEAgVEVTVChXZWJL
aXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RDaGFyYWN0ZXIpCiAgICAgRVhQ
RUNUX05TU1RSSU5HX0VRKCJUaGUiLCBjb250ZXh0LmNvbnRleHRBZnRlcik7CiB9CiAKLVRFU1Qo
V2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdEZpcnN0V29yZFVzaW5nQ2hhcmFj
dGVyR3JhbnVsYXJpdHkpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RGaXJz
dFdvcmRVc2luZ0NoYXJhY3RlckdyYW51bGFyaXR5KQogewogICAgIGF1dG8gd2ViVmlldyA9IGFk
b3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwg
MCwgODAwLCA2MDApXSk7CiAgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5n
OmFwcGx5U3R5bGUodGhyZWVQYXJhZ3JhcGhzRXhhbXBsZSldOwpAQCAtNjYzLDcgKzY2Myw3IEBA
IFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdEZpcnN0V29yZFVzaW5n
Q2hhcmFjdGVyR3JhbnVsYXJpdHkpCiAgICAgRVhQRUNUX05TU1RSSU5HX0VRKCJUaGUiLCBjb250
ZXh0LmNvbnRleHRBZnRlcik7CiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250
ZXh0UmVxdWVzdEZpcnN0V29yZFBsdXNUcmFpbGluZ1NwYWNlVXNpbmdDaGFyYWN0ZXJHcmFudWxh
cml0eSkKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVzdEZpcnN0V29yZFBsdXNU
cmFpbGluZ1NwYWNlVXNpbmdDaGFyYWN0ZXJHcmFudWxhcml0eSkKIHsKICAgICBhdXRvIHdlYlZp
ZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxvY10gaW5pdFdpdGhGcmFtZTpOU01ha2VS
ZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkSFRN
TFN0cmluZzphcHBseVN0eWxlKHRocmVlUGFyYWdyYXBoc0V4YW1wbGUpXTsKQEAgLTY3OCw3ICs2
NzgsNyBAQCBURVNUKFdlYktpdCwgRG9jdW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdFdv
cmRQbHVzVHJhaWxpbmdTcGFjZVVzaW5nQ2hhcmFjdAogCiAvLyBNQVJLOiBUZXN0cyB1c2luZyBs
aW5lIGdyYW51bGFyaXR5CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVx
dWVzdEZpcnN0TGluZSkKK1RFU1QoRG9jdW1lbnRFZGl0aW5nQ29udGV4dCwgUmVxdWVzdEZpcnN0
TGluZSkKIHsKICAgICBhdXRvIHdlYlZpZXcgPSBhZG9wdE5TKFtbVGVzdFdLV2ViVmlldyBhbGxv
Y10gaW5pdFdpdGhGcmFtZTpOU01ha2VSZWN0KDAsIDAsIDgwMCwgNjAwKV0pOwogICAgIFt3ZWJW
aWV3IHN5bmNocm9ub3VzbHlMb2FkSFRNTFN0cmluZzphcHBseUFoZW1TdHlsZSh0aHJlZVBhcmFn
cmFwaHNFeGFtcGxlKV07CkBAIC02OTEsNyArNjkxLDcgQEAgVEVTVChXZWJLaXQsIERvY3VtZW50
RWRpdGluZ0NvbnRleHRSZXF1ZXN0Rmlyc3RMaW5lKQogICAgIEVYUEVDVF9OU1NUUklOR19FUSgi
VGhlIGZpcnN0IHNlbnRlbmNlIGluIHRoZSBmaXJzdCBwYXJhZ3JhcGgiLCBjb250ZXh0LmNvbnRl
eHRBZnRlcik7CiB9CiAKLVRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVz
dEZpcnN0VHdvTGluZXMpCitURVNUKERvY3VtZW50RWRpdGluZ0NvbnRleHQsIFJlcXVlc3RGaXJz
dFR3b0xpbmVzKQogewogICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3
IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAg
W3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRIVE1MU3RyaW5nOmFwcGx5QWhlbVN0eWxlKHRocmVl
UGFyYWdyYXBoc0V4YW1wbGUpXTsKQEAgLTcwNCw3ICs3MDQsNyBAQCBURVNUKFdlYktpdCwgRG9j
dW1lbnRFZGl0aW5nQ29udGV4dFJlcXVlc3RGaXJzdFR3b0xpbmVzKQogICAgIEVYUEVDVF9OU1NU
UklOR19FUSgiVGhlIGZpcnN0IHNlbnRlbmNlIGluIHRoZSBmaXJzdCBwYXJhZ3JhcGguIFRoZSBz
ZWNvbmQgc2VudGVuY2UgaW4iLCBjb250ZXh0LmNvbnRleHRBZnRlcik7CiB9CiAKLVRFU1QoV2Vi
S2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdExhc3RMaW5lKQorVEVTVChEb2N1bWVu
dEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0TGFzdExpbmUpCiB7CiAgICAgYXV0byB3ZWJWaWV3ID0g
YWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRoRnJhbWU6TlNNYWtlUmVjdCgw
LCAwLCA4MDAsIDYwMCldKTsKICAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZEhUTUxTdHJp
bmc6YXBwbHlBaGVtU3R5bGUodGhyZWVQYXJhZ3JhcGhzRXhhbXBsZSldOwpAQCAtNzE3LDcgKzcx
Nyw3IEBAIFRFU1QoV2ViS2l0LCBEb2N1bWVudEVkaXRpbmdDb250ZXh0UmVxdWVzdExhc3RMaW5l
KQogICAgIEVYUEVDVF9OVUxMKGNvbnRleHQuY29udGV4dEFmdGVyKTsKIH0KIAotVEVTVChXZWJL
aXQsIERvY3VtZW50RWRpdGluZ0NvbnRleHRSZXF1ZXN0TGFzdFR3b0xpbmVzKQorVEVTVChEb2N1
bWVudEVkaXRpbmdDb250ZXh0LCBSZXF1ZXN0TGFzdFR3b0xpbmVzKQogewogICAgIGF1dG8gd2Vi
VmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZyYW1lOk5TTWFr
ZVJlY3QoMCwgMCwgODAwLCA2MDApXSk7CiAgICAgW3dlYlZpZXcgc3luY2hyb25vdXNseUxvYWRI
VE1MU3RyaW5nOmFwcGx5QWhlbVN0eWxlKHRocmVlUGFyYWdyYXBoc0V4YW1wbGUpXTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>