<?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>106434</bug_id>
          
          <creation_ts>2013-01-09 03:01:53 -0800</creation_ts>
          <short_desc>[chromium] move dumpcreateview methods to testrunner library</short_desc>
          <delta_ts>2013-01-09 13:08:41 -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>New Bugs</component>
          <version>528+ (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>0</everconfirmed>
          <reporter name="Dan Carney">dcarney</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>dglazkov</cc>
    
    <cc>fishd</cc>
    
    <cc>jamesr</cc>
    
    <cc>jochen</cc>
    
    <cc>tkent+wkapi</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>803182</commentid>
    <comment_count>0</comment_count>
    <who name="Dan Carney">dcarney</who>
    <bug_when>2013-01-09 03:01:53 -0800</bug_when>
    <thetext>[chromium] move dumpcreateview methods to testrunner library</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803183</commentid>
    <comment_count>1</comment_count>
      <attachid>181886</attachid>
    <who name="Dan Carney">dcarney</who>
    <bug_when>2013-01-09 03:02:27 -0800</bug_when>
    <thetext>Created attachment 181886
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803184</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-09 03:04:19 -0800</bug_when>
    <thetext>Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before submitting, as this patch contains changes to the Chromium public API. See also https://trac.webkit.org/wiki/ChromiumWebKitAPI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803216</commentid>
    <comment_count>3</comment_count>
      <attachid>181886</attachid>
    <who name="">jochen</who>
    <bug_when>2013-01-09 04:06:44 -0800</bug_when>
    <thetext>Comment on attachment 181886
Patch

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

I would recommend to move this method together with canOpenWindows, so you can move the first two if statements of WebViewHost::createView to WebTestProxyBase::createView (and add WebTestProxy::createView to invoke it)

&gt; Tools/DumpRenderTree/chromium/TestRunner/src/TestRunner.h:169
&gt; +    void dumpCreateView(const CppArgumentList&amp;, CppVariant*);

this should go in the section of methods that modify TestRunner&apos;s state (after dumpTitleChanges iirc)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803338</commentid>
    <comment_count>4</comment_count>
      <attachid>181925</attachid>
    <who name="Dan Carney">dcarney</who>
    <bug_when>2013-01-09 07:45:27 -0800</bug_when>
    <thetext>Created attachment 181925
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803348</commentid>
    <comment_count>5</comment_count>
      <attachid>181925</attachid>
    <who name="">jochen</who>
    <bug_when>2013-01-09 07:57:35 -0800</bug_when>
    <thetext>Comment on attachment 181925
Patch

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

&gt; Tools/DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:58
&gt; +class WebURLRequest;

these should be alphabetically sorted. First all classes, then all structs

&gt; Tools/DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h:60
&gt; +    virtual bool canOpenWindows() { return false; }

const missing

&gt; Tools/DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:146
&gt; +static string URLDescription(const GURL&amp; url)

you can remove the static and move it in the anonymous namespace above</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803354</commentid>
    <comment_count>6</comment_count>
      <attachid>181929</attachid>
    <who name="Dan Carney">dcarney</who>
    <bug_when>2013-01-09 08:08:08 -0800</bug_when>
    <thetext>Created attachment 181929
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803355</commentid>
    <comment_count>7</comment_count>
      <attachid>181929</attachid>
    <who name="">jochen</who>
    <bug_when>2013-01-09 08:09:24 -0800</bug_when>
    <thetext>Comment on attachment 181929
Patch

LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803636</commentid>
    <comment_count>8</comment_count>
      <attachid>181929</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-09 13:08:37 -0800</bug_when>
    <thetext>Comment on attachment 181929
Patch

Clearing flags on attachment: 181929

Committed r139231: &lt;http://trac.webkit.org/changeset/139231&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>803637</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-09 13:08:41 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181886</attachid>
            <date>2013-01-09 03:02:27 -0800</date>
            <delta_ts>2013-01-09 07:45:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-106434-20130109115930.patch</filename>
            <type>text/plain</type>
            <size>9000</size>
            <attacher name="Dan Carney">dcarney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5MTc3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNzg1YTRmOGExNDhkYjljYWI3MjMyOWI5ZTUxM2JkMWRh
Y2Q2NzQ4ZS4uM2YyMGRjZjYwZTdkNWMxODUzNTFiODYzMDlkZjlmNzNlOTIzZTY5NiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2
IEBACisyMDEzLTAxLTA5ICBEYW4gQ2FybmV5ICA8ZGNhcm5leUBnb29nbGUuY29tPgorCisgICAg
ICAgIFtjaHJvbWl1bV0gbW92ZSBkdW1wY3JlYXRldmlldyBtZXRob2RzIHRvIHRlc3RydW5uZXIg
bGlicmFyeQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTA2NDM0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBEdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9EUlRUZXN0UnVubmVyLmNwcDoKKyAgICAgICAgKERS
VFRlc3RSdW5uZXI6OkRSVFRlc3RSdW5uZXIpOgorICAgICAgICAoRFJUVGVzdFJ1bm5lcjo6cmVz
ZXQpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0RSVFRlc3RSdW5uZXIuaDoK
KyAgICAgICAgKERSVFRlc3RSdW5uZXIpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9t
aXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RSdW5uZXIuaDoKKyAgICAgICAgKFdlYlRlc3RS
dW5uZXI6OldlYlRlc3RSdW5uZXI6OnNob3VsZER1bXBDcmVhdGVWaWV3KToKKyAgICAgICAgKiBE
dW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3NyYy9UZXN0UnVubmVyLmNwcDoKKyAg
ICAgICAgKFdlYlRlc3RSdW5uZXI6OlRlc3RSdW5uZXI6OlRlc3RSdW5uZXIpOgorICAgICAgICAo
V2ViVGVzdFJ1bm5lcjo6VGVzdFJ1bm5lcjo6cmVzZXQpOgorICAgICAgICAoV2ViVGVzdFJ1bm5l
cjo6VGVzdFJ1bm5lcjo6c2hvdWxkRHVtcENyZWF0ZVZpZXcpOgorICAgICAgICAoV2ViVGVzdFJ1
bm5lcik6CisgICAgICAgIChXZWJUZXN0UnVubmVyOjpUZXN0UnVubmVyOjpkdW1wQ3JlYXRlVmll
dyk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9zcmMvVGVz
dFJ1bm5lci5oOgorICAgICAgICAoVGVzdFJ1bm5lcik6CisKIDIwMTMtMDEtMDggIEd5dXlvdW5n
IEtpbSAgPGd5dXlvdW5nLmtpbUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBSZWdyZXNzaW9uKHIx
Mzg2ODEpOiBBZGQgSEFWRShBQ0NFU1NJQklMSVRZKSBndWFyZCB0byBhdGsgZmlsZXMKZGlmZiAt
LWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0RSVFRlc3RSdW5uZXIuY3BwIGIv
VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRFJUVGVzdFJ1bm5lci5jcHAKaW5kZXggYWU0
MDIxY2EzMWM5ODJkNmY0MmViOTIxNjZkMzk0ZjU3ZmQ5ZWIzYS4uM2YzYWRhZDc2YTg1YTcxZDgy
MmM2NzYxOGY4NTMyYzQzNTU2ZDM4NCAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vRFJUVGVzdFJ1bm5lci5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hy
b21pdW0vRFJUVGVzdFJ1bm5lci5jcHAKQEAgLTEyNSw3ICsxMjUsNiBAQCBEUlRUZXN0UnVubmVy
OjpEUlRUZXN0UnVubmVyKFRlc3RTaGVsbCogc2hlbGwpCiAgICAgYmluZE1ldGhvZCgiZHVtcFNl
bGVjdGlvblJlY3QiLCAmRFJUVGVzdFJ1bm5lcjo6ZHVtcFNlbGVjdGlvblJlY3QpOwogICAgIGJp
bmRNZXRob2QoImR1bXBTdGF0dXNDYWxsYmFja3MiLCAmRFJUVGVzdFJ1bm5lcjo6ZHVtcFdpbmRv
d1N0YXR1c0NoYW5nZXMpOwogICAgIGJpbmRNZXRob2QoImR1bXBQZXJtaXNzaW9uQ2xpZW50Q2Fs
bGJhY2tzIiwgJkRSVFRlc3RSdW5uZXI6OmR1bXBQZXJtaXNzaW9uQ2xpZW50Q2FsbGJhY2tzKTsK
LSAgICBiaW5kTWV0aG9kKCJkdW1wQ3JlYXRlVmlldyIsICZEUlRUZXN0UnVubmVyOjpkdW1wQ3Jl
YXRlVmlldyk7CiAgICAgYmluZE1ldGhvZCgiZW5hYmxlQXV0b1Jlc2l6ZU1vZGUiLCAmRFJUVGVz
dFJ1bm5lcjo6ZW5hYmxlQXV0b1Jlc2l6ZU1vZGUpOwogICAgIGJpbmRNZXRob2QoImV2YWx1YXRl
SW5XZWJJbnNwZWN0b3IiLCAmRFJUVGVzdFJ1bm5lcjo6ZXZhbHVhdGVJbldlYkluc3BlY3Rvcik7
CiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCkBAIC0yODMsMTIgKzI4Miw2IEBAIHZvaWQgRFJU
VGVzdFJ1bm5lcjo6ZHVtcFBlcm1pc3Npb25DbGllbnRDYWxsYmFja3MoY29uc3QgQ3BwQXJndW1l
bnRMaXN0JiwgQ3BwVmFyCiAgICAgcmVzdWx0LT5zZXROdWxsKCk7CiB9CiAKLXZvaWQgRFJUVGVz
dFJ1bm5lcjo6ZHVtcENyZWF0ZVZpZXcoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFu
dCogcmVzdWx0KQotewotICAgIG1fZHVtcENyZWF0ZVZpZXcgPSB0cnVlOwotICAgIHJlc3VsdC0+
c2V0TnVsbCgpOwotfQotCiB2b2lkIERSVFRlc3RSdW5uZXI6OndhaXRVbnRpbERvbmUoY29uc3Qg
Q3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCogcmVzdWx0KQogewogICAgIGlmICghd2Via2l0
X3N1cHBvcnQ6OkJlaW5nRGVidWdnZWQoKSkKQEAgLTQ3Myw3ICs0NjYsNiBAQCB2b2lkIERSVFRl
c3RSdW5uZXI6OnJlc2V0KCkKICAgICBUZXN0UnVubmVyOjpyZXNldCgpOwogICAgIGlmIChtX3No
ZWxsKQogICAgICAgICBtX3NoZWxsLT53ZWJWaWV3SG9zdCgpLT5zZXREZXZpY2VTY2FsZUZhY3Rv
cigxKTsKLSAgICBtX2R1bXBDcmVhdGVWaWV3ID0gZmFsc2U7CiAgICAgbV9kdW1wUHJvZ3Jlc3NG
aW5pc2hlZENhbGxiYWNrID0gZmFsc2U7CiAgICAgbV9kdW1wUmVzb3VyY2VMb2FkQ2FsbGJhY2tz
ID0gZmFsc2U7CiAgICAgbV9kdW1wUmVzb3VyY2VSZXF1ZXN0Q2FsbGJhY2tzID0gZmFsc2U7CmRp
ZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9EUlRUZXN0UnVubmVyLmgg
Yi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9EUlRUZXN0UnVubmVyLmgKaW5kZXggNDgz
MGQ1NTg3ZDdhZDRlODJlZmZkOGIzYzljNDM0YWM0MDZjYmQ0MS4uMGZlNDNlZDRmYzVmMGMzOWQ2
NDllOGZjZjQyOTY5ZmI0Njk0OTRiNyAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vRFJUVGVzdFJ1bm5lci5oCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9t
aXVtL0RSVFRlc3RSdW5uZXIuaApAQCAtMTA0LDExICsxMDQsNiBAQCBwdWJsaWM6CiAgICAgLy8g
SXQgdGFrZXMgbm8gYXJndW1lbnRzLCBhbmQgaWdub3JlcyBhbnkgdGhhdCBtYXkgYmUgcHJlc2Vu
dC4KICAgICB2b2lkIGR1bXBXaW5kb3dTdGF0dXNDaGFuZ2VzKGNvbnN0IENwcEFyZ3VtZW50TGlz
dCYsIENwcFZhcmlhbnQqKTsKIAotICAgIC8vIFRoaXMgZnVuY3Rpb24gc2V0cyBhIGZsYWcgdGhh
dCB0ZWxscyB0aGUgdGVzdF9zaGVsbCB0byBkdW1wIGFsbCBjYWxscyB0bwotICAgIC8vIFdlYlZp
ZXdDbGllbnQ6OmNyZWF0ZVZpZXcoKS4KLSAgICAvLyBJdCB0YWtlcyBubyBhcmd1bWVudHMsIGFu
ZCBpZ25vcmVzIGFueSB0aGF0IG1heSBiZSBwcmVzZW50LgotICAgIHZvaWQgZHVtcENyZWF0ZVZp
ZXcoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCopOwotCiAgICAgLy8gRnVuY3Rp
b25zIGZvciBkZWFsaW5nIHdpdGggd2luZG93cy4gQnkgZGVmYXVsdCB3ZSBibG9jayBhbGwgbmV3
IHdpbmRvd3MuCiAgICAgdm9pZCB3aW5kb3dDb3VudChjb25zdCBDcHBBcmd1bWVudExpc3QmLCBD
cHBWYXJpYW50Kik7CiAgICAgdm9pZCBzZXRDYW5PcGVuV2luZG93cyhjb25zdCBDcHBBcmd1bWVu
dExpc3QmLCBDcHBWYXJpYW50Kik7CkBAIC0yNTgsNyArMjUzLDYgQEAgcHVibGljOgogICAgIGJv
b2wgc2hvdWxkRHVtcFNlbGVjdGlvblJlY3QoKSB7IHJldHVybiBtX2R1bXBTZWxlY3Rpb25SZWN0
OyB9CiAgICAgYm9vbCBzaG91bGREdW1wQmFja0ZvcndhcmRMaXN0KCkgeyByZXR1cm4gbV9kdW1w
QmFja0ZvcndhcmRMaXN0OyB9CiAgICAgYm9vbCBzaG91bGREdW1wUGVybWlzc2lvbkNsaWVudENh
bGxiYWNrcygpIHsgcmV0dXJuIG1fZHVtcFBlcm1pc3Npb25DbGllbnRDYWxsYmFja3M7IH0KLSAg
ICBib29sIHNob3VsZER1bXBDcmVhdGVWaWV3KCkgeyByZXR1cm4gbV9kdW1wQ3JlYXRlVmlldzsg
fQogICAgIGJvb2wgY2FuT3BlbldpbmRvd3MoKSB7IHJldHVybiBtX2Nhbk9wZW5XaW5kb3dzOyB9
CiAgICAgYm9vbCBkZWZlck1haW5SZXNvdXJjZURhdGFMb2FkKCkgeyByZXR1cm4gbV9kZWZlck1h
aW5SZXNvdXJjZURhdGFMb2FkOyB9CiAgICAgdm9pZCBzZXRTaG93RGVidWdMYXllclRyZWUoYm9v
bCB2YWx1ZSkgeyBtX3Nob3dEZWJ1Z0xheWVyVHJlZSA9IHZhbHVlOyB9CkBAIC0zODAsMTAgKzM3
NCw2IEBAIHByaXZhdGU6CiAgICAgLy8gY2FsbGJhY2sgaXMgaW52b2tlZC4gQ3VycmVudGx5IG9u
bHkgaW1wbGVtZW50ZWQgZm9yIGFsbG93SW1hZ2UuCiAgICAgYm9vbCBtX2R1bXBQZXJtaXNzaW9u
Q2xpZW50Q2FsbGJhY2tzOwogCi0gICAgLy8gSWYgdHJ1ZSwgb3V0cHV0IGEgZGVzY3JpcHRpdmUg
bGluZSBlYWNoIHRpbWUgV2ViVmlld0NsaWVudDo6Y3JlYXRlVmlldwotICAgIC8vIGlzIGludm9r
ZWQuCi0gICAgYm9vbCBtX2R1bXBDcmVhdGVWaWV3OwotCiAgICAgLy8gSWYgdHJ1ZSwgbmV3IHdp
bmRvd3MgY2FuIGJlIG9wZW5lZCB2aWEgamF2YXNjcmlwdCBvciBieSBwbHVnaW5zLiBCeQogICAg
IC8vIGRlZmF1bHQsIHNldCB0byBmYWxzZSBhbmQgY2FuIGJlIHRvZ2dsZWQgdG8gdHJ1ZSB1c2lu
ZwogICAgIC8vIHNldENhbk9wZW5XaW5kb3dzKCkuCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3B1YmxpYy9XZWJUZXN0UnVubmVyLmggYi9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3B1YmxpYy9XZWJUZXN0UnVubmVy
LmgKaW5kZXggM2YxYjE2ZDkxZTc3M2JmN2QzYTIxNTY2MzE5MTA5MjVkNmRmODU5MS4uOGQ0YzQ4
NWFjMWE0NDcxOWUyMWEwMGZkN2E4MTdlN2UzNDYyZjk3NiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9wdWJsaWMvV2ViVGVzdFJ1bm5lci5oCisr
KyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRl
c3RSdW5uZXIuaApAQCAtNTYsNiArNTYsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIHNo
b3VsZER1bXBVc2VyR2VzdHVyZUluRnJhbWVMb2FkQ2FsbGJhY2tzKCkgY29uc3QgeyByZXR1cm4g
ZmFsc2U7IH0KICAgICB2aXJ0dWFsIGJvb2wgc3RvcFByb3Zpc2lvbmFsRnJhbWVMb2FkcygpIGNv
bnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIHNob3VsZER1bXBUaXRsZUNo
YW5nZXMoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQorICAgIHZpcnR1YWwgYm9vbCBzaG91bGRE
dW1wQ3JlYXRlVmlldygpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiB9OwogCiB9CmRpZmYgLS1n
aXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3NyYy9UZXN0UnVu
bmVyLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL1Rl
c3RSdW5uZXIuY3BwCmluZGV4IGQ3NjY2YzlhOTJjZTcxYTc5YzhkNjYzZmQ3OGI2OTQyZDU0ZGNm
ZTMuLmEwMWNjMWU4MTM2OWY4NWU2Mzk2ODViY2UyYTc4ZDNjNzg0NWJmZDIgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL1Rlc3RSdW5uZXIu
Y3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL1Rl
c3RSdW5uZXIuY3BwCkBAIC0xMTYsNiArMTE2LDcgQEAgVGVzdFJ1bm5lcjo6VGVzdFJ1bm5lcigp
CiAgICAgYmluZE1ldGhvZCgic2V0UGFnZVZpc2liaWxpdHkiLCAmVGVzdFJ1bm5lcjo6c2V0UGFn
ZVZpc2liaWxpdHkpOwogICAgIGJpbmRNZXRob2QoInNldFRleHREaXJlY3Rpb24iLCAmVGVzdFJ1
bm5lcjo6c2V0VGV4dERpcmVjdGlvbik7CiAgICAgYmluZE1ldGhvZCgidGV4dFN1cnJvdW5kaW5n
Tm9kZSIsICZUZXN0UnVubmVyOjp0ZXh0U3Vycm91bmRpbmdOb2RlKTsKKyAgICBiaW5kTWV0aG9k
KCJkdW1wQ3JlYXRlVmlldyIsICZUZXN0UnVubmVyOjpkdW1wQ3JlYXRlVmlldyk7CiAKICAgICAv
LyBUaGUgZm9sbG93aW5nIG1vZGlmeSBXZWJQcmVmZXJlbmNlcy4KICAgICBiaW5kTWV0aG9kKCJz
ZXRVc2VyU3R5bGVTaGVldEVuYWJsZWQiLCAmVGVzdFJ1bm5lcjo6c2V0VXNlclN0eWxlU2hlZXRF
bmFibGVkKTsKQEAgLTIxNiw2ICsyMTcsNyBAQCB2b2lkIFRlc3RSdW5uZXI6OnJlc2V0KCkKICAg
ICBtX2R1bXBVc2VyR2VzdHVyZUluRnJhbWVMb2FkQ2FsbGJhY2tzID0gZmFsc2U7CiAgICAgbV9z
dG9wUHJvdmlzaW9uYWxGcmFtZUxvYWRzID0gZmFsc2U7CiAgICAgbV9kdW1wVGl0bGVDaGFuZ2Vz
ID0gZmFsc2U7CisgICAgbV9kdW1wQ3JlYXRlVmlldyA9IGZhbHNlOwogCiAgICAgbV9nbG9iYWxG
bGFnLnNldChmYWxzZSk7CiAgICAgbV9wbGF0Zm9ybU5hbWUuc2V0KCJjaHJvbWl1bSIpOwpAQCAt
Mjk4LDYgKzMwMCwxMSBAQCBib29sIFRlc3RSdW5uZXI6OnNob3VsZER1bXBUaXRsZUNoYW5nZXMo
KSBjb25zdAogICAgIHJldHVybiBtX2R1bXBUaXRsZUNoYW5nZXM7CiB9CiAKK2Jvb2wgVGVzdFJ1
bm5lcjo6c2hvdWxkRHVtcENyZWF0ZVZpZXcoKSBjb25zdAoreworICAgIHJldHVybiBtX2R1bXBD
cmVhdGVWaWV3OworfQorCiB2b2lkIFRlc3RSdW5uZXI6OnNldFRhYktleUN5Y2xlc1Rocm91Z2hF
bGVtZW50cyhjb25zdCBDcHBBcmd1bWVudExpc3QmIGFyZ3VtZW50cywgQ3BwVmFyaWFudCogcmVz
dWx0KQogewogICAgIGlmIChhcmd1bWVudHMuc2l6ZSgpID4gMCAmJiBhcmd1bWVudHNbMF0uaXNC
b29sKCkpCkBAIC03NzksNiArNzg2LDEyIEBAIHZvaWQgVGVzdFJ1bm5lcjo6dGV4dFN1cnJvdW5k
aW5nTm9kZShjb25zdCBDcHBBcmd1bWVudExpc3QmIGFyZ3VtZW50cywgQ3BwVmFyaWFuCiAgICAg
cmVzdWx0LT5zZXQoc3Vycm91bmRpbmdUZXh0LnRleHRDb250ZW50KCkudXRmOCgpKTsKIH0KIAor
dm9pZCBUZXN0UnVubmVyOjpkdW1wQ3JlYXRlVmlldyhjb25zdCBDcHBBcmd1bWVudExpc3QmLCBD
cHBWYXJpYW50KiByZXN1bHQpCit7CisgICAgbV9kdW1wQ3JlYXRlVmlldyA9IHRydWU7CisgICAg
cmVzdWx0LT5zZXROdWxsKCk7Cit9CisKIHZvaWQgVGVzdFJ1bm5lcjo6c2V0VXNlclN0eWxlU2hl
ZXRFbmFibGVkKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYgYXJndW1lbnRzLCBDcHBWYXJpYW50KiBy
ZXN1bHQpCiB7CiAgICAgaWYgKGFyZ3VtZW50cy5zaXplKCkgPiAwICYmIGFyZ3VtZW50c1swXS5p
c0Jvb2woKSkgewpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVz
dFJ1bm5lci9zcmMvVGVzdFJ1bm5lci5oIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0v
VGVzdFJ1bm5lci9zcmMvVGVzdFJ1bm5lci5oCmluZGV4IDU4ZDA2YjkyNWQ1MjdmNmI5MGFhOGQw
N2Q0MDkwZDkxYmIwMGQwNWQuLjJmZGQ4ODIxZTllY2U2ZGYwMjNiNjhiNDg0OGZjMTdhOWE3ZWM0
ZGYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIv
c3JjL1Rlc3RSdW5uZXIuaAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0
UnVubmVyL3NyYy9UZXN0UnVubmVyLmgKQEAgLTc0LDYgKzc0LDcgQEAgcHVibGljOgogICAgIHZp
cnR1YWwgYm9vbCBzaG91bGREdW1wVXNlckdlc3R1cmVJbkZyYW1lTG9hZENhbGxiYWNrcygpIGNv
bnN0IE9WRVJSSURFOwogICAgIHZpcnR1YWwgYm9vbCBzdG9wUHJvdmlzaW9uYWxGcmFtZUxvYWRz
KCkgY29uc3QgT1ZFUlJJREU7CiAgICAgdmlydHVhbCBib29sIHNob3VsZER1bXBUaXRsZUNoYW5n
ZXMoKSBjb25zdCBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkRHVtcENyZWF0ZVZp
ZXcoKSBjb25zdCBPVkVSUklERTsKIAogcHJvdGVjdGVkOgogICAgIC8vIEZJWE1FOiBtYWtlIHRo
ZXNlIHByaXZhdGUgb25jZSB0aGUgbW92ZSBmcm9tIERSVFRlc3RSdW5uZXIgdG8gVGVzdFJ1bm5l
cgpAQCAtMTYyLDYgKzE2MywxMSBAQCBwcml2YXRlOgogICAgIC8vIGxlbmd0aCB0byByZXRyaWV2
ZS4KICAgICB2b2lkIHRleHRTdXJyb3VuZGluZ05vZGUoY29uc3QgQ3BwQXJndW1lbnRMaXN0Jiwg
Q3BwVmFyaWFudCopOwogCisgICAgLy8gVGhpcyBmdW5jdGlvbiBzZXRzIGEgZmxhZyB0aGF0IHRl
bGxzIHRoZSB0ZXN0X3NoZWxsIHRvIGR1bXAgYWxsIGNhbGxzIHRvCisgICAgLy8gV2ViVmlld0Ns
aWVudDo6Y3JlYXRlVmlldygpLgorICAgIC8vIEl0IHRha2VzIG5vIGFyZ3VtZW50cywgYW5kIGln
bm9yZXMgYW55IHRoYXQgbWF5IGJlIHByZXNlbnQuCisgICAgdm9pZCBkdW1wQ3JlYXRlVmlldyhj
b25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7CisKICAgICAvLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8KICAgICAvLyBNZXRob2RzIG1vZGlmeWluZyBXZWJQcmVmZXJlbmNlcy4KIApAQCAtMzEz
LDYgKzMxOSwxMCBAQCBwcml2YXRlOgogICAgIC8vIElmIHRydWUsIG91dHB1dCBhIG1lc3NhZ2Ug
d2hlbiB0aGUgcGFnZSB0aXRsZSBpcyBjaGFuZ2VkLgogICAgIGJvb2wgbV9kdW1wVGl0bGVDaGFu
Z2VzOwogCisgICAgLy8gSWYgdHJ1ZSwgb3V0cHV0IGEgZGVzY3JpcHRpdmUgbGluZSBlYWNoIHRp
bWUgV2ViVmlld0NsaWVudDo6Y3JlYXRlVmlldworICAgIC8vIGlzIGludm9rZWQuCisgICAgYm9v
bCBtX2R1bXBDcmVhdGVWaWV3OworCiAgICAgLy8gV0FWIGF1ZGlvIGRhdGEgaXMgc3RvcmVkIGhl
cmUuCiAgICAgV2ViS2l0OjpXZWJBcnJheUJ1ZmZlclZpZXcgbV9hdWRpb0RhdGE7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181925</attachid>
            <date>2013-01-09 07:45:27 -0800</date>
            <delta_ts>2013-01-09 08:08:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-106434-20130109164230.patch</filename>
            <type>text/plain</type>
            <size>16354</size>
            <attacher name="Dan Carney">dcarney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5MTc3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNzg1YTRmOGExNDhkYjljYWI3MjMyOWI5ZTUxM2JkMWRh
Y2Q2NzQ4ZS4uM2YyMGRjZjYwZTdkNWMxODUzNTFiODYzMDlkZjlmNzNlOTIzZTY5NiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2
IEBACisyMDEzLTAxLTA5ICBEYW4gQ2FybmV5ICA8ZGNhcm5leUBnb29nbGUuY29tPgorCisgICAg
ICAgIFtjaHJvbWl1bV0gbW92ZSBkdW1wY3JlYXRldmlldyBtZXRob2RzIHRvIHRlc3RydW5uZXIg
bGlicmFyeQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTA2NDM0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBEdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9EUlRUZXN0UnVubmVyLmNwcDoKKyAgICAgICAgKERS
VFRlc3RSdW5uZXI6OkRSVFRlc3RSdW5uZXIpOgorICAgICAgICAoRFJUVGVzdFJ1bm5lcjo6cmVz
ZXQpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0RSVFRlc3RSdW5uZXIuaDoK
KyAgICAgICAgKERSVFRlc3RSdW5uZXIpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9t
aXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RSdW5uZXIuaDoKKyAgICAgICAgKFdlYlRlc3RS
dW5uZXI6OldlYlRlc3RSdW5uZXI6OnNob3VsZER1bXBDcmVhdGVWaWV3KToKKyAgICAgICAgKiBE
dW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3NyYy9UZXN0UnVubmVyLmNwcDoKKyAg
ICAgICAgKFdlYlRlc3RSdW5uZXI6OlRlc3RSdW5uZXI6OlRlc3RSdW5uZXIpOgorICAgICAgICAo
V2ViVGVzdFJ1bm5lcjo6VGVzdFJ1bm5lcjo6cmVzZXQpOgorICAgICAgICAoV2ViVGVzdFJ1bm5l
cjo6VGVzdFJ1bm5lcjo6c2hvdWxkRHVtcENyZWF0ZVZpZXcpOgorICAgICAgICAoV2ViVGVzdFJ1
bm5lcik6CisgICAgICAgIChXZWJUZXN0UnVubmVyOjpUZXN0UnVubmVyOjpkdW1wQ3JlYXRlVmll
dyk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9zcmMvVGVz
dFJ1bm5lci5oOgorICAgICAgICAoVGVzdFJ1bm5lcik6CisKIDIwMTMtMDEtMDggIEd5dXlvdW5n
IEtpbSAgPGd5dXlvdW5nLmtpbUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBSZWdyZXNzaW9uKHIx
Mzg2ODEpOiBBZGQgSEFWRShBQ0NFU1NJQklMSVRZKSBndWFyZCB0byBhdGsgZmlsZXMKZGlmZiAt
LWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0RSVFRlc3RSdW5uZXIuY3BwIGIv
VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRFJUVGVzdFJ1bm5lci5jcHAKaW5kZXggYWU0
MDIxY2EzMWM5ODJkNmY0MmViOTIxNjZkMzk0ZjU3ZmQ5ZWIzYS4uMzg4MmE1YWRjOGVkNzkxZTYw
NTNmNTUyYzZmOGEwYjNhZmExMTY3YiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vRFJUVGVzdFJ1bm5lci5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hy
b21pdW0vRFJUVGVzdFJ1bm5lci5jcHAKQEAgLTEyNSw3ICsxMjUsNiBAQCBEUlRUZXN0UnVubmVy
OjpEUlRUZXN0UnVubmVyKFRlc3RTaGVsbCogc2hlbGwpCiAgICAgYmluZE1ldGhvZCgiZHVtcFNl
bGVjdGlvblJlY3QiLCAmRFJUVGVzdFJ1bm5lcjo6ZHVtcFNlbGVjdGlvblJlY3QpOwogICAgIGJp
bmRNZXRob2QoImR1bXBTdGF0dXNDYWxsYmFja3MiLCAmRFJUVGVzdFJ1bm5lcjo6ZHVtcFdpbmRv
d1N0YXR1c0NoYW5nZXMpOwogICAgIGJpbmRNZXRob2QoImR1bXBQZXJtaXNzaW9uQ2xpZW50Q2Fs
bGJhY2tzIiwgJkRSVFRlc3RSdW5uZXI6OmR1bXBQZXJtaXNzaW9uQ2xpZW50Q2FsbGJhY2tzKTsK
LSAgICBiaW5kTWV0aG9kKCJkdW1wQ3JlYXRlVmlldyIsICZEUlRUZXN0UnVubmVyOjpkdW1wQ3Jl
YXRlVmlldyk7CiAgICAgYmluZE1ldGhvZCgiZW5hYmxlQXV0b1Jlc2l6ZU1vZGUiLCAmRFJUVGVz
dFJ1bm5lcjo6ZW5hYmxlQXV0b1Jlc2l6ZU1vZGUpOwogICAgIGJpbmRNZXRob2QoImV2YWx1YXRl
SW5XZWJJbnNwZWN0b3IiLCAmRFJUVGVzdFJ1bm5lcjo6ZXZhbHVhdGVJbldlYkluc3BlY3Rvcik7
CiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCkBAIC0xNDUsNyArMTQ0LDYgQEAgRFJUVGVzdFJ1
bm5lcjo6RFJUVGVzdFJ1bm5lcihUZXN0U2hlbGwqIHNoZWxsKQogICAgIGJpbmRNZXRob2QoInNl
dEFsbG93RGlzcGxheU9mSW5zZWN1cmVDb250ZW50IiwgJkRSVFRlc3RSdW5uZXI6OnNldEFsbG93
RGlzcGxheU9mSW5zZWN1cmVDb250ZW50KTsKICAgICBiaW5kTWV0aG9kKCJzZXRBbGxvd1J1bm5p
bmdPZkluc2VjdXJlQ29udGVudCIsICZEUlRUZXN0UnVubmVyOjpzZXRBbGxvd1J1bm5pbmdPZklu
c2VjdXJlQ29udGVudCk7CiAgICAgYmluZE1ldGhvZCgic2V0QWx3YXlzQWNjZXB0Q29va2llcyIs
ICZEUlRUZXN0UnVubmVyOjpzZXRBbHdheXNBY2NlcHRDb29raWVzKTsKLSAgICBiaW5kTWV0aG9k
KCJzZXRDYW5PcGVuV2luZG93cyIsICZEUlRUZXN0UnVubmVyOjpzZXRDYW5PcGVuV2luZG93cyk7
CiAgICAgYmluZE1ldGhvZCgic2V0Q2xvc2VSZW1haW5pbmdXaW5kb3dzV2hlbkNvbXBsZXRlIiwg
JkRSVFRlc3RSdW5uZXI6OnNldENsb3NlUmVtYWluaW5nV2luZG93c1doZW5Db21wbGV0ZSk7CiAg
ICAgYmluZE1ldGhvZCgic2V0Q3VzdG9tUG9saWN5RGVsZWdhdGUiLCAmRFJUVGVzdFJ1bm5lcjo6
c2V0Q3VzdG9tUG9saWN5RGVsZWdhdGUpOwogICAgIGJpbmRNZXRob2QoInNldERhdGFiYXNlUXVv
dGEiLCAmRFJUVGVzdFJ1bm5lcjo6c2V0RGF0YWJhc2VRdW90YSk7CkBAIC0yODMsMTIgKzI4MSw2
IEBAIHZvaWQgRFJUVGVzdFJ1bm5lcjo6ZHVtcFBlcm1pc3Npb25DbGllbnRDYWxsYmFja3MoY29u
c3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyCiAgICAgcmVzdWx0LT5zZXROdWxsKCk7CiB9CiAK
LXZvaWQgRFJUVGVzdFJ1bm5lcjo6ZHVtcENyZWF0ZVZpZXcoY29uc3QgQ3BwQXJndW1lbnRMaXN0
JiwgQ3BwVmFyaWFudCogcmVzdWx0KQotewotICAgIG1fZHVtcENyZWF0ZVZpZXcgPSB0cnVlOwot
ICAgIHJlc3VsdC0+c2V0TnVsbCgpOwotfQotCiB2b2lkIERSVFRlc3RSdW5uZXI6OndhaXRVbnRp
bERvbmUoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCogcmVzdWx0KQogewogICAg
IGlmICghd2Via2l0X3N1cHBvcnQ6OkJlaW5nRGVidWdnZWQoKSkKQEAgLTQ3Myw3ICs0NjUsNiBA
QCB2b2lkIERSVFRlc3RSdW5uZXI6OnJlc2V0KCkKICAgICBUZXN0UnVubmVyOjpyZXNldCgpOwog
ICAgIGlmIChtX3NoZWxsKQogICAgICAgICBtX3NoZWxsLT53ZWJWaWV3SG9zdCgpLT5zZXREZXZp
Y2VTY2FsZUZhY3RvcigxKTsKLSAgICBtX2R1bXBDcmVhdGVWaWV3ID0gZmFsc2U7CiAgICAgbV9k
dW1wUHJvZ3Jlc3NGaW5pc2hlZENhbGxiYWNrID0gZmFsc2U7CiAgICAgbV9kdW1wUmVzb3VyY2VM
b2FkQ2FsbGJhY2tzID0gZmFsc2U7CiAgICAgbV9kdW1wUmVzb3VyY2VSZXF1ZXN0Q2FsbGJhY2tz
ID0gZmFsc2U7CkBAIC00ODMsNyArNDc0LDYgQEAgdm9pZCBEUlRUZXN0UnVubmVyOjpyZXNldCgp
CiAgICAgbV9kdW1wU2VsZWN0aW9uUmVjdCA9IGZhbHNlOwogICAgIG1fZHVtcFBlcm1pc3Npb25D
bGllbnRDYWxsYmFja3MgPSBmYWxzZTsKICAgICBtX3dhaXRVbnRpbERvbmUgPSBmYWxzZTsKLSAg
ICBtX2Nhbk9wZW5XaW5kb3dzID0gZmFsc2U7CiAgICAgbV90ZXN0UmVwYWludCA9IGZhbHNlOwog
ICAgIG1fc3dlZXBIb3Jpem9udGFsbHkgPSBmYWxzZTsKICAgICBtX2RlZmVyTWFpblJlc291cmNl
RGF0YUxvYWQgPSB0cnVlOwpAQCAtNTI2LDEyICs1MTYsNiBAQCB2b2lkIERSVFRlc3RSdW5uZXI6
OnBvbGljeURlbGVnYXRlRG9uZSgpCiAgICAgbV93YWl0VW50aWxEb25lID0gZmFsc2U7CiB9CiAK
LXZvaWQgRFJUVGVzdFJ1bm5lcjo6c2V0Q2FuT3BlbldpbmRvd3MoY29uc3QgQ3BwQXJndW1lbnRM
aXN0JiwgQ3BwVmFyaWFudCogcmVzdWx0KQotewotICAgIG1fY2FuT3BlbldpbmRvd3MgPSB0cnVl
OwotICAgIHJlc3VsdC0+c2V0TnVsbCgpOwotfQotCiB2b2lkIERSVFRlc3RSdW5uZXI6OndpbmRv
d0NvdW50KGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqIHJlc3VsdCkKIHsKICAg
ICByZXN1bHQtPnNldChzdGF0aWNfY2FzdDxpbnQ+KG1fc2hlbGwtPndpbmRvd0NvdW50KCkpKTsK
ZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0RSVFRlc3RSdW5uZXIu
aCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0RSVFRlc3RSdW5uZXIuaAppbmRleCA0
ODMwZDU1ODdkN2FkNGU4MmVmZmQ4YjNjOWM0MzRhYzQwNmNiZDQxLi5hOWQwYzViYjZhMTc1YWUz
MmQyNmQxYzk1YTk3ZDQ2MTUxNGRhNjQ1IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9jaHJvbWl1bS9EUlRUZXN0UnVubmVyLmgKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hy
b21pdW0vRFJUVGVzdFJ1bm5lci5oCkBAIC0xMDQsMTQgKzEwNCw4IEBAIHB1YmxpYzoKICAgICAv
LyBJdCB0YWtlcyBubyBhcmd1bWVudHMsIGFuZCBpZ25vcmVzIGFueSB0aGF0IG1heSBiZSBwcmVz
ZW50LgogICAgIHZvaWQgZHVtcFdpbmRvd1N0YXR1c0NoYW5nZXMoY29uc3QgQ3BwQXJndW1lbnRM
aXN0JiwgQ3BwVmFyaWFudCopOwogCi0gICAgLy8gVGhpcyBmdW5jdGlvbiBzZXRzIGEgZmxhZyB0
aGF0IHRlbGxzIHRoZSB0ZXN0X3NoZWxsIHRvIGR1bXAgYWxsIGNhbGxzIHRvCi0gICAgLy8gV2Vi
Vmlld0NsaWVudDo6Y3JlYXRlVmlldygpLgotICAgIC8vIEl0IHRha2VzIG5vIGFyZ3VtZW50cywg
YW5kIGlnbm9yZXMgYW55IHRoYXQgbWF5IGJlIHByZXNlbnQuCi0gICAgdm9pZCBkdW1wQ3JlYXRl
Vmlldyhjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7Ci0KICAgICAvLyBGdW5j
dGlvbnMgZm9yIGRlYWxpbmcgd2l0aCB3aW5kb3dzLiBCeSBkZWZhdWx0IHdlIGJsb2NrIGFsbCBu
ZXcgd2luZG93cy4KICAgICB2b2lkIHdpbmRvd0NvdW50KGNvbnN0IENwcEFyZ3VtZW50TGlzdCYs
IENwcFZhcmlhbnQqKTsKLSAgICB2b2lkIHNldENhbk9wZW5XaW5kb3dzKGNvbnN0IENwcEFyZ3Vt
ZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKICAgICB2b2lkIHNldENsb3NlUmVtYWluaW5nV2luZG93
c1doZW5Db21wbGV0ZShjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7CiAKICAg
ICAvLyBCeSBkZWZhdWx0LCB0ZXN0cyBlbmQgd2hlbiBwYWdlIGxvYWQgaXMgY29tcGxldGUuIFRo
ZXNlIG1ldGhvZHMgYXJlIHVzZWQKQEAgLTI1OCw4ICsyNTIsNiBAQCBwdWJsaWM6CiAgICAgYm9v
bCBzaG91bGREdW1wU2VsZWN0aW9uUmVjdCgpIHsgcmV0dXJuIG1fZHVtcFNlbGVjdGlvblJlY3Q7
IH0KICAgICBib29sIHNob3VsZER1bXBCYWNrRm9yd2FyZExpc3QoKSB7IHJldHVybiBtX2R1bXBC
YWNrRm9yd2FyZExpc3Q7IH0KICAgICBib29sIHNob3VsZER1bXBQZXJtaXNzaW9uQ2xpZW50Q2Fs
bGJhY2tzKCkgeyByZXR1cm4gbV9kdW1wUGVybWlzc2lvbkNsaWVudENhbGxiYWNrczsgfQotICAg
IGJvb2wgc2hvdWxkRHVtcENyZWF0ZVZpZXcoKSB7IHJldHVybiBtX2R1bXBDcmVhdGVWaWV3OyB9
Ci0gICAgYm9vbCBjYW5PcGVuV2luZG93cygpIHsgcmV0dXJuIG1fY2FuT3BlbldpbmRvd3M7IH0K
ICAgICBib29sIGRlZmVyTWFpblJlc291cmNlRGF0YUxvYWQoKSB7IHJldHVybiBtX2RlZmVyTWFp
blJlc291cmNlRGF0YUxvYWQ7IH0KICAgICB2b2lkIHNldFNob3dEZWJ1Z0xheWVyVHJlZShib29s
IHZhbHVlKSB7IG1fc2hvd0RlYnVnTGF5ZXJUcmVlID0gdmFsdWU7IH0KICAgICB2b2lkIHNldFRp
dGxlVGV4dERpcmVjdGlvbihXZWJLaXQ6OldlYlRleHREaXJlY3Rpb24gZGlyKQpAQCAtMzgwLDE1
ICszNzIsNiBAQCBwcml2YXRlOgogICAgIC8vIGNhbGxiYWNrIGlzIGludm9rZWQuIEN1cnJlbnRs
eSBvbmx5IGltcGxlbWVudGVkIGZvciBhbGxvd0ltYWdlLgogICAgIGJvb2wgbV9kdW1wUGVybWlz
c2lvbkNsaWVudENhbGxiYWNrczsKIAotICAgIC8vIElmIHRydWUsIG91dHB1dCBhIGRlc2NyaXB0
aXZlIGxpbmUgZWFjaCB0aW1lIFdlYlZpZXdDbGllbnQ6OmNyZWF0ZVZpZXcKLSAgICAvLyBpcyBp
bnZva2VkLgotICAgIGJvb2wgbV9kdW1wQ3JlYXRlVmlldzsKLQotICAgIC8vIElmIHRydWUsIG5l
dyB3aW5kb3dzIGNhbiBiZSBvcGVuZWQgdmlhIGphdmFzY3JpcHQgb3IgYnkgcGx1Z2lucy4gQnkK
LSAgICAvLyBkZWZhdWx0LCBzZXQgdG8gZmFsc2UgYW5kIGNhbiBiZSB0b2dnbGVkIHRvIHRydWUg
dXNpbmcKLSAgICAvLyBzZXRDYW5PcGVuV2luZG93cygpLgotICAgIGJvb2wgbV9jYW5PcGVuV2lu
ZG93czsKLQogICAgIC8vIFdoZW4gcmVzZXQgaXMgY2FsbGVkLCBnbyB0aHJvdWdoIGFuZCBjbG9z
ZSBhbGwgYnV0IHRoZSBtYWluIHRlc3Qgc2hlbGwKICAgICAvLyB3aW5kb3cuIEJ5IGRlZmF1bHQs
IHNldCB0byB0cnVlIGJ1dCB0b2dnbGVkIHRvIGZhbHNlIHVzaW5nCiAgICAgLy8gc2V0Q2xvc2VS
ZW1haW5pbmdXaW5kb3dzV2hlbkNvbXBsZXRlKCkuCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3B1YmxpYy9XZWJUZXN0UHJveHkuaCBiL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RQcm94eS5o
CmluZGV4IGVkZmNkYjJjYTQ2YWUwMTY1MjJhM2U2ZDg0ZmQzZGE1NTg0Y2JjZWMuLjMwOWM4Mzk1
OWNkMjA0NTc0ODkxNTVjOTc2NWJiMDI0NzNlMjcwZTkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RQcm94eS5oCisrKyBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RQ
cm94eS5oCkBAIC01NSw2ICs1NSw5IEBAIGNsYXNzIFdlYlVSTDsKIHN0cnVjdCBXZWJQb2ludDsK
IHN0cnVjdCBXZWJTaXplOwogc3RydWN0IFdlYlVSTEVycm9yOworY2xhc3MgV2ViVVJMUmVxdWVz
dDsKK3N0cnVjdCBXZWJXaW5kb3dGZWF0dXJlczsKK2NsYXNzIFdlYlZpZXc7CiB9CiAKIG5hbWVz
cGFjZSBXZWJUZXN0UnVubmVyIHsKQEAgLTk3LDYgKzEwMCw3IEBAIHByb3RlY3RlZDoKICAgICB2
b2lkIGRpZEVuZEVkaXRpbmcoKTsKICAgICB2b2lkIHJlZ2lzdGVySW50ZW50U2VydmljZShXZWJL
aXQ6OldlYkZyYW1lKiwgY29uc3QgV2ViS2l0OjpXZWJJbnRlbnRTZXJ2aWNlSW5mbyYpOwogICAg
IHZvaWQgZGlzcGF0Y2hJbnRlbnQoV2ViS2l0OjpXZWJGcmFtZSogc291cmNlLCBjb25zdCBXZWJL
aXQ6OldlYkludGVudFJlcXVlc3QmKTsKKyAgICBXZWJLaXQ6OldlYlZpZXcqIGNyZWF0ZVZpZXco
V2ViS2l0OjpXZWJGcmFtZSogY3JlYXRvciwgY29uc3QgV2ViS2l0OjpXZWJVUkxSZXF1ZXN0Jiwg
Y29uc3QgV2ViS2l0OjpXZWJXaW5kb3dGZWF0dXJlcyYsIGNvbnN0IFdlYktpdDo6V2ViU3RyaW5n
JiBmcmFtZU5hbWUsIFdlYktpdDo6V2ViTmF2aWdhdGlvblBvbGljeSk7CiAgICAgdm9pZCB3aWxs
UGVyZm9ybUNsaWVudFJlZGlyZWN0KFdlYktpdDo6V2ViRnJhbWUqLCBjb25zdCBXZWJLaXQ6Oldl
YlVSTCYgZnJvbSwgY29uc3QgV2ViS2l0OjpXZWJVUkwmIHRvLCBkb3VibGUgaW50ZXJ2YWwsIGRv
dWJsZSBmaXJlX3RpbWUpOwogICAgIHZvaWQgZGlkQ2FuY2VsQ2xpZW50UmVkaXJlY3QoV2ViS2l0
OjpXZWJGcmFtZSopOwogICAgIHZvaWQgZGlkU3RhcnRQcm92aXNpb25hbExvYWQoV2ViS2l0OjpX
ZWJGcmFtZSopOwpAQCAtMjQzLDYgKzI0NywxMSBAQCBwdWJsaWM6CiAgICAgICAgIFdlYlRlc3RQ
cm94eUJhc2U6OmRpc3BhdGNoSW50ZW50KHNvdXJjZSwgcmVxdWVzdCk7CiAgICAgICAgIEJhc2U6
OmRpc3BhdGNoSW50ZW50KHNvdXJjZSwgcmVxdWVzdCk7CiAgICAgfQorICAgIHZpcnR1YWwgV2Vi
S2l0OjpXZWJWaWV3KiBjcmVhdGVWaWV3KFdlYktpdDo6V2ViRnJhbWUqIGNyZWF0b3IsIGNvbnN0
IFdlYktpdDo6V2ViVVJMUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgV2ViS2l0OjpXZWJXaW5kb3dG
ZWF0dXJlcyYgZmVhdHVyZXMsIGNvbnN0IFdlYktpdDo6V2ViU3RyaW5nJiBmcmFtZU5hbWUsIFdl
YktpdDo6V2ViTmF2aWdhdGlvblBvbGljeSBwb2xpY3kpCisgICAgeworICAgICAgICBXZWJUZXN0
UHJveHlCYXNlOjpjcmVhdGVWaWV3KGNyZWF0b3IsIHJlcXVlc3QsIGZlYXR1cmVzLCBmcmFtZU5h
bWUsIHBvbGljeSk7CisgICAgICAgIHJldHVybiBCYXNlOjpjcmVhdGVWaWV3KGNyZWF0b3IsIHJl
cXVlc3QsIGZlYXR1cmVzLCBmcmFtZU5hbWUsIHBvbGljeSk7CisgICAgfQogCiAgICAgLy8gV2Vi
RnJhbWVDbGllbnQgaW1wbGVtZW50YXRpb24uCiAgICAgdmlydHVhbCB2b2lkIHdpbGxQZXJmb3Jt
Q2xpZW50UmVkaXJlY3QoV2ViS2l0OjpXZWJGcmFtZSogZnJhbWUsIGNvbnN0IFdlYktpdDo6V2Vi
VVJMJiBmcm9tLCBjb25zdCBXZWJLaXQ6OldlYlVSTCYgdG8sIGRvdWJsZSBpbnRlcnZhbCwgZG91
YmxlIGZpcmVUaW1lKQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0v
VGVzdFJ1bm5lci9wdWJsaWMvV2ViVGVzdFJ1bm5lci5oIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vVGVzdFJ1bm5lci9wdWJsaWMvV2ViVGVzdFJ1bm5lci5oCmluZGV4IDNmMWIxNmQ5
MWU3NzNiZjdkM2EyMTU2NjMxOTEwOTI1ZDZkZjg1OTEuLmJiZjhhYTgyNzFlNzViZjliY2Y3ZGYy
NzAxNzRlNzE5Zjc1ZTk3ZmMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9t
aXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RSdW5uZXIuaAorKysgYi9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3B1YmxpYy9XZWJUZXN0UnVubmVyLmgKQEAgLTU2
LDYgKzU2LDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBzaG91bGREdW1wVXNlckdlc3R1
cmVJbkZyYW1lTG9hZENhbGxiYWNrcygpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmly
dHVhbCBib29sIHN0b3BQcm92aXNpb25hbEZyYW1lTG9hZHMoKSBjb25zdCB7IHJldHVybiBmYWxz
ZTsgfQogICAgIHZpcnR1YWwgYm9vbCBzaG91bGREdW1wVGl0bGVDaGFuZ2VzKCkgY29uc3QgeyBy
ZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkRHVtcENyZWF0ZVZpZXcoKSBj
b25zdCB7IHJldHVybiBmYWxzZTsgfQorICAgIHZpcnR1YWwgYm9vbCBjYW5PcGVuV2luZG93cygp
IHsgcmV0dXJuIGZhbHNlOyB9CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVy
VHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3NyYy9UZXN0UnVubmVyLmNwcCBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL1Rlc3RSdW5uZXIuY3BwCmluZGV4IGQ3
NjY2YzlhOTJjZTcxYTc5YzhkNjYzZmQ3OGI2OTQyZDU0ZGNmZTMuLjQxYjZiZGMxMzQ5N2VkYTA2
OTFlMzJlNDYyNjIyN2M0MDU2YzUzOTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL1Rlc3RSdW5uZXIuY3BwCisrKyBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL1Rlc3RSdW5uZXIuY3BwCkBAIC0xNDIs
NiArMTQyLDggQEAgVGVzdFJ1bm5lcjo6VGVzdFJ1bm5lcigpCiAgICAgYmluZE1ldGhvZCgiZHVt
cFVzZXJHZXN0dXJlSW5GcmFtZUxvYWRDYWxsYmFja3MiLCAmVGVzdFJ1bm5lcjo6ZHVtcFVzZXJH
ZXN0dXJlSW5GcmFtZUxvYWRDYWxsYmFja3MpOwogICAgIGJpbmRNZXRob2QoInNldFN0b3BQcm92
aXNpb25hbEZyYW1lTG9hZHMiLCAmVGVzdFJ1bm5lcjo6c2V0U3RvcFByb3Zpc2lvbmFsRnJhbWVM
b2Fkcyk7CiAgICAgYmluZE1ldGhvZCgiZHVtcFRpdGxlQ2hhbmdlcyIsICZUZXN0UnVubmVyOjpk
dW1wVGl0bGVDaGFuZ2VzKTsKKyAgICBiaW5kTWV0aG9kKCJkdW1wQ3JlYXRlVmlldyIsICZUZXN0
UnVubmVyOjpkdW1wQ3JlYXRlVmlldyk7CisgICAgYmluZE1ldGhvZCgic2V0Q2FuT3BlbldpbmRv
d3MiLCAmVGVzdFJ1bm5lcjo6c2V0Q2FuT3BlbldpbmRvd3MpOwogCiAgICAgLy8gVGhlIGZvbGxv
d2luZyBtZXRob2RzIGludGVyYWN0IHdpdGggdGhlIFdlYlRlc3RQcm94eS4KICAgICBiaW5kTWV0
aG9kKCJzZW5kV2ViSW50ZW50UmVzcG9uc2UiLCAmVGVzdFJ1bm5lcjo6c2VuZFdlYkludGVudFJl
c3BvbnNlKTsKQEAgLTIxNiw2ICsyMTgsOCBAQCB2b2lkIFRlc3RSdW5uZXI6OnJlc2V0KCkKICAg
ICBtX2R1bXBVc2VyR2VzdHVyZUluRnJhbWVMb2FkQ2FsbGJhY2tzID0gZmFsc2U7CiAgICAgbV9z
dG9wUHJvdmlzaW9uYWxGcmFtZUxvYWRzID0gZmFsc2U7CiAgICAgbV9kdW1wVGl0bGVDaGFuZ2Vz
ID0gZmFsc2U7CisgICAgbV9kdW1wQ3JlYXRlVmlldyA9IGZhbHNlOworICAgIG1fY2FuT3Blbldp
bmRvd3MgPSBmYWxzZTsKIAogICAgIG1fZ2xvYmFsRmxhZy5zZXQoZmFsc2UpOwogICAgIG1fcGxh
dGZvcm1OYW1lLnNldCgiY2hyb21pdW0iKTsKQEAgLTI5OCw2ICszMDIsMTYgQEAgYm9vbCBUZXN0
UnVubmVyOjpzaG91bGREdW1wVGl0bGVDaGFuZ2VzKCkgY29uc3QKICAgICByZXR1cm4gbV9kdW1w
VGl0bGVDaGFuZ2VzOwogfQogCitib29sIFRlc3RSdW5uZXI6OnNob3VsZER1bXBDcmVhdGVWaWV3
KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9kdW1wQ3JlYXRlVmlldzsKK30KKworYm9vbCBUZXN0
UnVubmVyOjpjYW5PcGVuV2luZG93cygpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY2FuT3Blbldp
bmRvd3M7Cit9CisKIHZvaWQgVGVzdFJ1bm5lcjo6c2V0VGFiS2V5Q3ljbGVzVGhyb3VnaEVsZW1l
bnRzKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYgYXJndW1lbnRzLCBDcHBWYXJpYW50KiByZXN1bHQp
CiB7CiAgICAgaWYgKGFyZ3VtZW50cy5zaXplKCkgPiAwICYmIGFyZ3VtZW50c1swXS5pc0Jvb2wo
KSkKQEAgLTEwNjMsNiArMTA3NywxOCBAQCB2b2lkIFRlc3RSdW5uZXI6OmR1bXBUaXRsZUNoYW5n
ZXMoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCogcmVzdWx0KQogICAgIHJlc3Vs
dC0+c2V0TnVsbCgpOwogfQogCit2b2lkIFRlc3RSdW5uZXI6OmR1bXBDcmVhdGVWaWV3KGNvbnN0
IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqIHJlc3VsdCkKK3sKKyAgICBtX2R1bXBDcmVh
dGVWaWV3ID0gdHJ1ZTsKKyAgICByZXN1bHQtPnNldE51bGwoKTsKK30KKwordm9pZCBUZXN0UnVu
bmVyOjpzZXRDYW5PcGVuV2luZG93cyhjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50
KiByZXN1bHQpCit7CisgICAgbV9jYW5PcGVuV2luZG93cyA9IHRydWU7CisgICAgcmVzdWx0LT5z
ZXROdWxsKCk7Cit9CisKIHZvaWQgVGVzdFJ1bm5lcjo6d29ya2VyVGhyZWFkQ291bnQoQ3BwVmFy
aWFudCogcmVzdWx0KQogewogICAgIHJlc3VsdC0+c2V0KHN0YXRpY19jYXN0PGludD4oV2ViV29y
a2VySW5mbzo6ZGVkaWNhdGVkV29ya2VyQ291bnQoKSkpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9zcmMvVGVzdFJ1bm5lci5oIGIvVG9vbHMv
RHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9zcmMvVGVzdFJ1bm5lci5oCmluZGV4
IDU4ZDA2YjkyNWQ1MjdmNmI5MGFhOGQwN2Q0MDkwZDkxYmIwMGQwNWQuLjlmYjMxOTk1NTkyM2Jm
NmU4N2IxNjIzY2Q4YzMxNGM2YWZlOWVkODcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL1Rlc3RSdW5uZXIuaAorKysgYi9Ub29scy9EdW1w
UmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3NyYy9UZXN0UnVubmVyLmgKQEAgLTc0LDYg
Kzc0LDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBzaG91bGREdW1wVXNlckdlc3R1cmVJ
bkZyYW1lTG9hZENhbGxiYWNrcygpIGNvbnN0IE9WRVJSSURFOwogICAgIHZpcnR1YWwgYm9vbCBz
dG9wUHJvdmlzaW9uYWxGcmFtZUxvYWRzKCkgY29uc3QgT1ZFUlJJREU7CiAgICAgdmlydHVhbCBi
b29sIHNob3VsZER1bXBUaXRsZUNoYW5nZXMoKSBjb25zdCBPVkVSUklERTsKKyAgICB2aXJ0dWFs
IGJvb2wgc2hvdWxkRHVtcENyZWF0ZVZpZXcoKSBjb25zdCBPVkVSUklERTsKKyAgICB2aXJ0dWFs
IGJvb2wgY2FuT3BlbldpbmRvd3MoKSBjb25zdCBPVkVSUklERTsKIAogcHJvdGVjdGVkOgogICAg
IC8vIEZJWE1FOiBtYWtlIHRoZXNlIHByaXZhdGUgb25jZSB0aGUgbW92ZSBmcm9tIERSVFRlc3RS
dW5uZXIgdG8gVGVzdFJ1bm5lcgpAQCAtMjMyLDYgKzIzNCwxMyBAQCBwcml2YXRlOgogCiAgICAg
dm9pZCBkdW1wVGl0bGVDaGFuZ2VzKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQq
KTsKIAorICAgIC8vIFRoaXMgZnVuY3Rpb24gc2V0cyBhIGZsYWcgdGhhdCB0ZWxscyB0aGUgdGVz
dF9zaGVsbCB0byBkdW1wIGFsbCBjYWxscyB0bworICAgIC8vIFdlYlZpZXdDbGllbnQ6OmNyZWF0
ZVZpZXcoKS4KKyAgICAvLyBJdCB0YWtlcyBubyBhcmd1bWVudHMsIGFuZCBpZ25vcmVzIGFueSB0
aGF0IG1heSBiZSBwcmVzZW50LgorICAgIHZvaWQgZHVtcENyZWF0ZVZpZXcoY29uc3QgQ3BwQXJn
dW1lbnRMaXN0JiwgQ3BwVmFyaWFudCopOworCisgICAgdm9pZCBzZXRDYW5PcGVuV2luZG93cyhj
b25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7CisKICAgICAvLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8KICAgICAvLyBNZXRob2RzIGludGVyYWN0aW5nIHdpdGggdGhlIFdlYlRlc3RQcm94eQog
CkBAIC0zMTMsNiArMzIyLDE1IEBAIHByaXZhdGU6CiAgICAgLy8gSWYgdHJ1ZSwgb3V0cHV0IGEg
bWVzc2FnZSB3aGVuIHRoZSBwYWdlIHRpdGxlIGlzIGNoYW5nZWQuCiAgICAgYm9vbCBtX2R1bXBU
aXRsZUNoYW5nZXM7CiAKKyAgICAvLyBJZiB0cnVlLCBvdXRwdXQgYSBkZXNjcmlwdGl2ZSBsaW5l
IGVhY2ggdGltZSBXZWJWaWV3Q2xpZW50OjpjcmVhdGVWaWV3CisgICAgLy8gaXMgaW52b2tlZC4K
KyAgICBib29sIG1fZHVtcENyZWF0ZVZpZXc7CisKKyAgICAvLyBJZiB0cnVlLCBuZXcgd2luZG93
cyBjYW4gYmUgb3BlbmVkIHZpYSBqYXZhc2NyaXB0IG9yIGJ5IHBsdWdpbnMuIEJ5CisgICAgLy8g
ZGVmYXVsdCwgc2V0IHRvIGZhbHNlIGFuZCBjYW4gYmUgdG9nZ2xlZCB0byB0cnVlIHVzaW5nCisg
ICAgLy8gc2V0Q2FuT3BlbldpbmRvd3MoKS4KKyAgICBib29sIG1fY2FuT3BlbldpbmRvd3M7CisK
ICAgICAvLyBXQVYgYXVkaW8gZGF0YSBpcyBzdG9yZWQgaGVyZS4KICAgICBXZWJLaXQ6OldlYkFy
cmF5QnVmZmVyVmlldyBtX2F1ZGlvRGF0YTsKIApkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRl
clRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9zcmMvV2ViVGVzdFByb3h5LmNwcCBiL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL1dlYlRlc3RQcm94eS5jcHAKaW5k
ZXggMTNjZTk2NGM0ZDc5YjEwZDRmZGE1N2E0OWU0OGMyZDYyMjIzNjRkNy4uMjkyNzU0MGQ2NzJi
NzA1NmZkZGZlZTZkNmNkZjgxODMxNGJmYmU5OSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRl
clRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9zcmMvV2ViVGVzdFByb3h5LmNwcAorKysgYi9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3NyYy9XZWJUZXN0UHJveHkuY3Bw
CkBAIC00Nyw2ICs0Nyw3IEBACiAjaW5jbHVkZSAiV2ViVGVzdFJ1bm5lci5oIgogI2luY2x1ZGUg
IldlYlZpZXcuaCIKICNpbmNsdWRlICJwbGF0Zm9ybS9XZWJDU3RyaW5nLmgiCisjaW5jbHVkZSAi
cGxhdGZvcm0vV2ViVVJMUmVxdWVzdC5oIgogI2luY2x1ZGUgPHd0Zi9TdHJpbmdFeHRyYXMuaD4K
IAogdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKQEAgLTE0Miw2ICsxNDMsMTMgQEAgdm9pZCBwcmlu
dEZyYW1lVXNlckdlc3R1cmVTdGF0dXMoV2ViVGVzdERlbGVnYXRlKiBkZWxlZ2F0ZSwgV2ViRnJh
bWUqIGZyYW1lLCBjb24KIAogfQogCitzdGF0aWMgc3RyaW5nIFVSTERlc2NyaXB0aW9uKGNvbnN0
IEdVUkwmIHVybCkKK3sKKyAgICBpZiAodXJsLlNjaGVtZUlzKCJmaWxlIikpCisgICAgICAgIHJl
dHVybiB1cmwuRXh0cmFjdEZpbGVOYW1lKCk7CisgICAgcmV0dXJuIHVybC5wb3NzaWJseV9pbnZh
bGlkX3NwZWMoKTsKK30KKwogV2ViVGVzdFByb3h5QmFzZTo6V2ViVGVzdFByb3h5QmFzZSgpCiAg
ICAgOiBtX3Rlc3RJbnRlcmZhY2VzKDApCiAgICAgLCBtX2RlbGVnYXRlKDApCkBAIC00NTIsNiAr
NDYwLDE1IEBAIHZvaWQgV2ViVGVzdFByb3h5QmFzZTo6ZGlzcGF0Y2hJbnRlbnQoV2ViRnJhbWUq
IHNvdXJjZSwgY29uc3QgV2ViSW50ZW50UmVxdWVzdCYKICAgICAgICAgbV9kZWxlZ2F0ZS0+cHJp
bnRNZXNzYWdlKHN0cmluZygiSGF2ZSBzdWdnZXN0aW9uICIpICsgc3VnZ2VzdGlvbnNbaV0uc3Bl
YygpLmRhdGEoKSArICJcbiIpOwogfQogCitXZWJWaWV3KiBXZWJUZXN0UHJveHlCYXNlOjpjcmVh
dGVWaWV3KFdlYkZyYW1lKiwgY29uc3QgV2ViVVJMUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgV2Vi
V2luZG93RmVhdHVyZXMmLCBjb25zdCBXZWJTdHJpbmcmLCBXZWJOYXZpZ2F0aW9uUG9saWN5KQor
eworICAgIGlmICghbV90ZXN0SW50ZXJmYWNlcy0+dGVzdFJ1bm5lcigpIHx8ICFtX3Rlc3RJbnRl
cmZhY2VzLT50ZXN0UnVubmVyKCktPmNhbk9wZW5XaW5kb3dzKCkpCisgICAgICAgIHJldHVybiAw
OworICAgIGlmIChtX3Rlc3RJbnRlcmZhY2VzLT50ZXN0UnVubmVyKCktPnNob3VsZER1bXBDcmVh
dGVWaWV3KCkpCisgICAgICAgIG1fZGVsZWdhdGUtPnByaW50TWVzc2FnZShzdHJpbmcoImNyZWF0
ZVZpZXcoIikgKyBVUkxEZXNjcmlwdGlvbihyZXF1ZXN0LnVybCgpKSArICIpXG4iKTsKKyAgICBy
ZXR1cm4gMDsKK30KKwogdm9pZCBXZWJUZXN0UHJveHlCYXNlOjp3aWxsUGVyZm9ybUNsaWVudFJl
ZGlyZWN0KFdlYkZyYW1lKiBmcmFtZSwgY29uc3QgV2ViVVJMJiwgY29uc3QgV2ViVVJMJiB0bywg
ZG91YmxlLCBkb3VibGUpCiB7CiAgICAgaWYgKG1fdGVzdEludGVyZmFjZXMtPnRlc3RSdW5uZXIo
KSAmJiBtX3Rlc3RJbnRlcmZhY2VzLT50ZXN0UnVubmVyKCktPnNob3VsZER1bXBGcmFtZUxvYWRD
YWxsYmFja3MoKSkgewpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0v
V2ViVmlld0hvc3QuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViVmlld0hv
c3QuY3BwCmluZGV4IDI0NTAwY2ZkNjNiNzM3YzI5Zjk4OTVjNTA3NWEwZjdiMmU1NjU2MmQuLjQy
YzNlN2RkMTVjNzBlNjcwN2RmMTM4MmRkMGJhNTg0YjFhNWViMTIgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlZpZXdIb3N0LmNwcAorKysgYi9Ub29scy9EdW1w
UmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJWaWV3SG9zdC5jcHAKQEAgLTIwMywxMiArMjAzLDEwIEBA
IHN0YXRpYyB2b2lkIHByaW50Tm9kZURlc2NyaXB0aW9uKGNvbnN0IFdlYk5vZGUmIG5vZGUsIGlu
dCBleGNlcHRpb24pCiAKIC8vIFdlYlZpZXdDbGllbnQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1XZWJWaWV3KiBXZWJWaWV3
SG9zdDo6Y3JlYXRlVmlldyhXZWJGcmFtZSogY3JlYXRvciwgY29uc3QgV2ViVVJMUmVxdWVzdCYg
cmVxdWVzdCwgY29uc3QgV2ViV2luZG93RmVhdHVyZXMmLCBjb25zdCBXZWJTdHJpbmcmLCBXZWJO
YXZpZ2F0aW9uUG9saWN5KQorV2ViVmlldyogV2ViVmlld0hvc3Q6OmNyZWF0ZVZpZXcoV2ViRnJh
bWUqIGNyZWF0b3IsIGNvbnN0IFdlYlVSTFJlcXVlc3QmLCBjb25zdCBXZWJXaW5kb3dGZWF0dXJl
cyYsIGNvbnN0IFdlYlN0cmluZyYsIFdlYk5hdmlnYXRpb25Qb2xpY3kpCiB7CiAgICAgaWYgKCF0
ZXN0UnVubmVyKCktPmNhbk9wZW5XaW5kb3dzKCkpCiAgICAgICAgIHJldHVybiAwOwotICAgIGlm
ICh0ZXN0UnVubmVyKCktPnNob3VsZER1bXBDcmVhdGVWaWV3KCkpCi0gICAgICAgIGZwcmludGYo
c3Rkb3V0LCAiY3JlYXRlVmlldyglcylcbiIsIFVSTERlc2NyaXB0aW9uKHJlcXVlc3QudXJsKCkp
LmNfc3RyKCkpOwogICAgIGNyZWF0b3ItPmNvbnN1bWVVc2VyR2VzdHVyZSgpOwogICAgIHJldHVy
biBtX3NoZWxsLT5jcmVhdGVOZXdXaW5kb3coV2ViVVJMKCkpLT53ZWJWaWV3KCk7CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>181929</attachid>
            <date>2013-01-09 08:08:08 -0800</date>
            <delta_ts>2013-01-09 13:08:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-106434-20130109170511.patch</filename>
            <type>text/plain</type>
            <size>16503</size>
            <attacher name="Dan Carney">dcarney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5MTc3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNzg1YTRmOGExNDhkYjljYWI3MjMyOWI5ZTUxM2JkMWRh
Y2Q2NzQ4ZS4uM2YyMGRjZjYwZTdkNWMxODUzNTFiODYzMDlkZjlmNzNlOTIzZTY5NiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2
IEBACisyMDEzLTAxLTA5ICBEYW4gQ2FybmV5ICA8ZGNhcm5leUBnb29nbGUuY29tPgorCisgICAg
ICAgIFtjaHJvbWl1bV0gbW92ZSBkdW1wY3JlYXRldmlldyBtZXRob2RzIHRvIHRlc3RydW5uZXIg
bGlicmFyeQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTA2NDM0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBEdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9EUlRUZXN0UnVubmVyLmNwcDoKKyAgICAgICAgKERS
VFRlc3RSdW5uZXI6OkRSVFRlc3RSdW5uZXIpOgorICAgICAgICAoRFJUVGVzdFJ1bm5lcjo6cmVz
ZXQpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0RSVFRlc3RSdW5uZXIuaDoK
KyAgICAgICAgKERSVFRlc3RSdW5uZXIpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9t
aXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RSdW5uZXIuaDoKKyAgICAgICAgKFdlYlRlc3RS
dW5uZXI6OldlYlRlc3RSdW5uZXI6OnNob3VsZER1bXBDcmVhdGVWaWV3KToKKyAgICAgICAgKiBE
dW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3NyYy9UZXN0UnVubmVyLmNwcDoKKyAg
ICAgICAgKFdlYlRlc3RSdW5uZXI6OlRlc3RSdW5uZXI6OlRlc3RSdW5uZXIpOgorICAgICAgICAo
V2ViVGVzdFJ1bm5lcjo6VGVzdFJ1bm5lcjo6cmVzZXQpOgorICAgICAgICAoV2ViVGVzdFJ1bm5l
cjo6VGVzdFJ1bm5lcjo6c2hvdWxkRHVtcENyZWF0ZVZpZXcpOgorICAgICAgICAoV2ViVGVzdFJ1
bm5lcik6CisgICAgICAgIChXZWJUZXN0UnVubmVyOjpUZXN0UnVubmVyOjpkdW1wQ3JlYXRlVmll
dyk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9zcmMvVGVz
dFJ1bm5lci5oOgorICAgICAgICAoVGVzdFJ1bm5lcik6CisKIDIwMTMtMDEtMDggIEd5dXlvdW5n
IEtpbSAgPGd5dXlvdW5nLmtpbUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBSZWdyZXNzaW9uKHIx
Mzg2ODEpOiBBZGQgSEFWRShBQ0NFU1NJQklMSVRZKSBndWFyZCB0byBhdGsgZmlsZXMKZGlmZiAt
LWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0RSVFRlc3RSdW5uZXIuY3BwIGIv
VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRFJUVGVzdFJ1bm5lci5jcHAKaW5kZXggYWU0
MDIxY2EzMWM5ODJkNmY0MmViOTIxNjZkMzk0ZjU3ZmQ5ZWIzYS4uMzg4MmE1YWRjOGVkNzkxZTYw
NTNmNTUyYzZmOGEwYjNhZmExMTY3YiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vRFJUVGVzdFJ1bm5lci5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hy
b21pdW0vRFJUVGVzdFJ1bm5lci5jcHAKQEAgLTEyNSw3ICsxMjUsNiBAQCBEUlRUZXN0UnVubmVy
OjpEUlRUZXN0UnVubmVyKFRlc3RTaGVsbCogc2hlbGwpCiAgICAgYmluZE1ldGhvZCgiZHVtcFNl
bGVjdGlvblJlY3QiLCAmRFJUVGVzdFJ1bm5lcjo6ZHVtcFNlbGVjdGlvblJlY3QpOwogICAgIGJp
bmRNZXRob2QoImR1bXBTdGF0dXNDYWxsYmFja3MiLCAmRFJUVGVzdFJ1bm5lcjo6ZHVtcFdpbmRv
d1N0YXR1c0NoYW5nZXMpOwogICAgIGJpbmRNZXRob2QoImR1bXBQZXJtaXNzaW9uQ2xpZW50Q2Fs
bGJhY2tzIiwgJkRSVFRlc3RSdW5uZXI6OmR1bXBQZXJtaXNzaW9uQ2xpZW50Q2FsbGJhY2tzKTsK
LSAgICBiaW5kTWV0aG9kKCJkdW1wQ3JlYXRlVmlldyIsICZEUlRUZXN0UnVubmVyOjpkdW1wQ3Jl
YXRlVmlldyk7CiAgICAgYmluZE1ldGhvZCgiZW5hYmxlQXV0b1Jlc2l6ZU1vZGUiLCAmRFJUVGVz
dFJ1bm5lcjo6ZW5hYmxlQXV0b1Jlc2l6ZU1vZGUpOwogICAgIGJpbmRNZXRob2QoImV2YWx1YXRl
SW5XZWJJbnNwZWN0b3IiLCAmRFJUVGVzdFJ1bm5lcjo6ZXZhbHVhdGVJbldlYkluc3BlY3Rvcik7
CiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCkBAIC0xNDUsNyArMTQ0LDYgQEAgRFJUVGVzdFJ1
bm5lcjo6RFJUVGVzdFJ1bm5lcihUZXN0U2hlbGwqIHNoZWxsKQogICAgIGJpbmRNZXRob2QoInNl
dEFsbG93RGlzcGxheU9mSW5zZWN1cmVDb250ZW50IiwgJkRSVFRlc3RSdW5uZXI6OnNldEFsbG93
RGlzcGxheU9mSW5zZWN1cmVDb250ZW50KTsKICAgICBiaW5kTWV0aG9kKCJzZXRBbGxvd1J1bm5p
bmdPZkluc2VjdXJlQ29udGVudCIsICZEUlRUZXN0UnVubmVyOjpzZXRBbGxvd1J1bm5pbmdPZklu
c2VjdXJlQ29udGVudCk7CiAgICAgYmluZE1ldGhvZCgic2V0QWx3YXlzQWNjZXB0Q29va2llcyIs
ICZEUlRUZXN0UnVubmVyOjpzZXRBbHdheXNBY2NlcHRDb29raWVzKTsKLSAgICBiaW5kTWV0aG9k
KCJzZXRDYW5PcGVuV2luZG93cyIsICZEUlRUZXN0UnVubmVyOjpzZXRDYW5PcGVuV2luZG93cyk7
CiAgICAgYmluZE1ldGhvZCgic2V0Q2xvc2VSZW1haW5pbmdXaW5kb3dzV2hlbkNvbXBsZXRlIiwg
JkRSVFRlc3RSdW5uZXI6OnNldENsb3NlUmVtYWluaW5nV2luZG93c1doZW5Db21wbGV0ZSk7CiAg
ICAgYmluZE1ldGhvZCgic2V0Q3VzdG9tUG9saWN5RGVsZWdhdGUiLCAmRFJUVGVzdFJ1bm5lcjo6
c2V0Q3VzdG9tUG9saWN5RGVsZWdhdGUpOwogICAgIGJpbmRNZXRob2QoInNldERhdGFiYXNlUXVv
dGEiLCAmRFJUVGVzdFJ1bm5lcjo6c2V0RGF0YWJhc2VRdW90YSk7CkBAIC0yODMsMTIgKzI4MSw2
IEBAIHZvaWQgRFJUVGVzdFJ1bm5lcjo6ZHVtcFBlcm1pc3Npb25DbGllbnRDYWxsYmFja3MoY29u
c3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyCiAgICAgcmVzdWx0LT5zZXROdWxsKCk7CiB9CiAK
LXZvaWQgRFJUVGVzdFJ1bm5lcjo6ZHVtcENyZWF0ZVZpZXcoY29uc3QgQ3BwQXJndW1lbnRMaXN0
JiwgQ3BwVmFyaWFudCogcmVzdWx0KQotewotICAgIG1fZHVtcENyZWF0ZVZpZXcgPSB0cnVlOwot
ICAgIHJlc3VsdC0+c2V0TnVsbCgpOwotfQotCiB2b2lkIERSVFRlc3RSdW5uZXI6OndhaXRVbnRp
bERvbmUoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCogcmVzdWx0KQogewogICAg
IGlmICghd2Via2l0X3N1cHBvcnQ6OkJlaW5nRGVidWdnZWQoKSkKQEAgLTQ3Myw3ICs0NjUsNiBA
QCB2b2lkIERSVFRlc3RSdW5uZXI6OnJlc2V0KCkKICAgICBUZXN0UnVubmVyOjpyZXNldCgpOwog
ICAgIGlmIChtX3NoZWxsKQogICAgICAgICBtX3NoZWxsLT53ZWJWaWV3SG9zdCgpLT5zZXREZXZp
Y2VTY2FsZUZhY3RvcigxKTsKLSAgICBtX2R1bXBDcmVhdGVWaWV3ID0gZmFsc2U7CiAgICAgbV9k
dW1wUHJvZ3Jlc3NGaW5pc2hlZENhbGxiYWNrID0gZmFsc2U7CiAgICAgbV9kdW1wUmVzb3VyY2VM
b2FkQ2FsbGJhY2tzID0gZmFsc2U7CiAgICAgbV9kdW1wUmVzb3VyY2VSZXF1ZXN0Q2FsbGJhY2tz
ID0gZmFsc2U7CkBAIC00ODMsNyArNDc0LDYgQEAgdm9pZCBEUlRUZXN0UnVubmVyOjpyZXNldCgp
CiAgICAgbV9kdW1wU2VsZWN0aW9uUmVjdCA9IGZhbHNlOwogICAgIG1fZHVtcFBlcm1pc3Npb25D
bGllbnRDYWxsYmFja3MgPSBmYWxzZTsKICAgICBtX3dhaXRVbnRpbERvbmUgPSBmYWxzZTsKLSAg
ICBtX2Nhbk9wZW5XaW5kb3dzID0gZmFsc2U7CiAgICAgbV90ZXN0UmVwYWludCA9IGZhbHNlOwog
ICAgIG1fc3dlZXBIb3Jpem9udGFsbHkgPSBmYWxzZTsKICAgICBtX2RlZmVyTWFpblJlc291cmNl
RGF0YUxvYWQgPSB0cnVlOwpAQCAtNTI2LDEyICs1MTYsNiBAQCB2b2lkIERSVFRlc3RSdW5uZXI6
OnBvbGljeURlbGVnYXRlRG9uZSgpCiAgICAgbV93YWl0VW50aWxEb25lID0gZmFsc2U7CiB9CiAK
LXZvaWQgRFJUVGVzdFJ1bm5lcjo6c2V0Q2FuT3BlbldpbmRvd3MoY29uc3QgQ3BwQXJndW1lbnRM
aXN0JiwgQ3BwVmFyaWFudCogcmVzdWx0KQotewotICAgIG1fY2FuT3BlbldpbmRvd3MgPSB0cnVl
OwotICAgIHJlc3VsdC0+c2V0TnVsbCgpOwotfQotCiB2b2lkIERSVFRlc3RSdW5uZXI6OndpbmRv
d0NvdW50KGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqIHJlc3VsdCkKIHsKICAg
ICByZXN1bHQtPnNldChzdGF0aWNfY2FzdDxpbnQ+KG1fc2hlbGwtPndpbmRvd0NvdW50KCkpKTsK
ZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0RSVFRlc3RSdW5uZXIu
aCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0RSVFRlc3RSdW5uZXIuaAppbmRleCA0
ODMwZDU1ODdkN2FkNGU4MmVmZmQ4YjNjOWM0MzRhYzQwNmNiZDQxLi5hOWQwYzViYjZhMTc1YWUz
MmQyNmQxYzk1YTk3ZDQ2MTUxNGRhNjQ1IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9jaHJvbWl1bS9EUlRUZXN0UnVubmVyLmgKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hy
b21pdW0vRFJUVGVzdFJ1bm5lci5oCkBAIC0xMDQsMTQgKzEwNCw4IEBAIHB1YmxpYzoKICAgICAv
LyBJdCB0YWtlcyBubyBhcmd1bWVudHMsIGFuZCBpZ25vcmVzIGFueSB0aGF0IG1heSBiZSBwcmVz
ZW50LgogICAgIHZvaWQgZHVtcFdpbmRvd1N0YXR1c0NoYW5nZXMoY29uc3QgQ3BwQXJndW1lbnRM
aXN0JiwgQ3BwVmFyaWFudCopOwogCi0gICAgLy8gVGhpcyBmdW5jdGlvbiBzZXRzIGEgZmxhZyB0
aGF0IHRlbGxzIHRoZSB0ZXN0X3NoZWxsIHRvIGR1bXAgYWxsIGNhbGxzIHRvCi0gICAgLy8gV2Vi
Vmlld0NsaWVudDo6Y3JlYXRlVmlldygpLgotICAgIC8vIEl0IHRha2VzIG5vIGFyZ3VtZW50cywg
YW5kIGlnbm9yZXMgYW55IHRoYXQgbWF5IGJlIHByZXNlbnQuCi0gICAgdm9pZCBkdW1wQ3JlYXRl
Vmlldyhjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7Ci0KICAgICAvLyBGdW5j
dGlvbnMgZm9yIGRlYWxpbmcgd2l0aCB3aW5kb3dzLiBCeSBkZWZhdWx0IHdlIGJsb2NrIGFsbCBu
ZXcgd2luZG93cy4KICAgICB2b2lkIHdpbmRvd0NvdW50KGNvbnN0IENwcEFyZ3VtZW50TGlzdCYs
IENwcFZhcmlhbnQqKTsKLSAgICB2b2lkIHNldENhbk9wZW5XaW5kb3dzKGNvbnN0IENwcEFyZ3Vt
ZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKICAgICB2b2lkIHNldENsb3NlUmVtYWluaW5nV2luZG93
c1doZW5Db21wbGV0ZShjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50Kik7CiAKICAg
ICAvLyBCeSBkZWZhdWx0LCB0ZXN0cyBlbmQgd2hlbiBwYWdlIGxvYWQgaXMgY29tcGxldGUuIFRo
ZXNlIG1ldGhvZHMgYXJlIHVzZWQKQEAgLTI1OCw4ICsyNTIsNiBAQCBwdWJsaWM6CiAgICAgYm9v
bCBzaG91bGREdW1wU2VsZWN0aW9uUmVjdCgpIHsgcmV0dXJuIG1fZHVtcFNlbGVjdGlvblJlY3Q7
IH0KICAgICBib29sIHNob3VsZER1bXBCYWNrRm9yd2FyZExpc3QoKSB7IHJldHVybiBtX2R1bXBC
YWNrRm9yd2FyZExpc3Q7IH0KICAgICBib29sIHNob3VsZER1bXBQZXJtaXNzaW9uQ2xpZW50Q2Fs
bGJhY2tzKCkgeyByZXR1cm4gbV9kdW1wUGVybWlzc2lvbkNsaWVudENhbGxiYWNrczsgfQotICAg
IGJvb2wgc2hvdWxkRHVtcENyZWF0ZVZpZXcoKSB7IHJldHVybiBtX2R1bXBDcmVhdGVWaWV3OyB9
Ci0gICAgYm9vbCBjYW5PcGVuV2luZG93cygpIHsgcmV0dXJuIG1fY2FuT3BlbldpbmRvd3M7IH0K
ICAgICBib29sIGRlZmVyTWFpblJlc291cmNlRGF0YUxvYWQoKSB7IHJldHVybiBtX2RlZmVyTWFp
blJlc291cmNlRGF0YUxvYWQ7IH0KICAgICB2b2lkIHNldFNob3dEZWJ1Z0xheWVyVHJlZShib29s
IHZhbHVlKSB7IG1fc2hvd0RlYnVnTGF5ZXJUcmVlID0gdmFsdWU7IH0KICAgICB2b2lkIHNldFRp
dGxlVGV4dERpcmVjdGlvbihXZWJLaXQ6OldlYlRleHREaXJlY3Rpb24gZGlyKQpAQCAtMzgwLDE1
ICszNzIsNiBAQCBwcml2YXRlOgogICAgIC8vIGNhbGxiYWNrIGlzIGludm9rZWQuIEN1cnJlbnRs
eSBvbmx5IGltcGxlbWVudGVkIGZvciBhbGxvd0ltYWdlLgogICAgIGJvb2wgbV9kdW1wUGVybWlz
c2lvbkNsaWVudENhbGxiYWNrczsKIAotICAgIC8vIElmIHRydWUsIG91dHB1dCBhIGRlc2NyaXB0
aXZlIGxpbmUgZWFjaCB0aW1lIFdlYlZpZXdDbGllbnQ6OmNyZWF0ZVZpZXcKLSAgICAvLyBpcyBp
bnZva2VkLgotICAgIGJvb2wgbV9kdW1wQ3JlYXRlVmlldzsKLQotICAgIC8vIElmIHRydWUsIG5l
dyB3aW5kb3dzIGNhbiBiZSBvcGVuZWQgdmlhIGphdmFzY3JpcHQgb3IgYnkgcGx1Z2lucy4gQnkK
LSAgICAvLyBkZWZhdWx0LCBzZXQgdG8gZmFsc2UgYW5kIGNhbiBiZSB0b2dnbGVkIHRvIHRydWUg
dXNpbmcKLSAgICAvLyBzZXRDYW5PcGVuV2luZG93cygpLgotICAgIGJvb2wgbV9jYW5PcGVuV2lu
ZG93czsKLQogICAgIC8vIFdoZW4gcmVzZXQgaXMgY2FsbGVkLCBnbyB0aHJvdWdoIGFuZCBjbG9z
ZSBhbGwgYnV0IHRoZSBtYWluIHRlc3Qgc2hlbGwKICAgICAvLyB3aW5kb3cuIEJ5IGRlZmF1bHQs
IHNldCB0byB0cnVlIGJ1dCB0b2dnbGVkIHRvIGZhbHNlIHVzaW5nCiAgICAgLy8gc2V0Q2xvc2VS
ZW1haW5pbmdXaW5kb3dzV2hlbkNvbXBsZXRlKCkuCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3B1YmxpYy9XZWJUZXN0UHJveHkuaCBiL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RQcm94eS5o
CmluZGV4IGVkZmNkYjJjYTQ2YWUwMTY1MjJhM2U2ZDg0ZmQzZGE1NTg0Y2JjZWMuLjk1OWQyOTA1
ODZlOTEyMDg3ZTA1NjAyNzQ0ZmIwYTQzOWFjZmFjMTQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RQcm94eS5oCisrKyBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RQ
cm94eS5oCkBAIC01Miw5ICs1MiwxMiBAQCBjbGFzcyBXZWJTZWN1cml0eU9yaWdpbjsKIGNsYXNz
IFdlYlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTsKIGNsYXNzIFdlYlN0cmluZzsKIGNsYXNzIFdlYlVS
TDsKK2NsYXNzIFdlYlVSTFJlcXVlc3Q7CitjbGFzcyBXZWJWaWV3Owogc3RydWN0IFdlYlBvaW50
Owogc3RydWN0IFdlYlNpemU7CiBzdHJ1Y3QgV2ViVVJMRXJyb3I7CitzdHJ1Y3QgV2ViV2luZG93
RmVhdHVyZXM7CiB9CiAKIG5hbWVzcGFjZSBXZWJUZXN0UnVubmVyIHsKQEAgLTk3LDYgKzEwMCw3
IEBAIHByb3RlY3RlZDoKICAgICB2b2lkIGRpZEVuZEVkaXRpbmcoKTsKICAgICB2b2lkIHJlZ2lz
dGVySW50ZW50U2VydmljZShXZWJLaXQ6OldlYkZyYW1lKiwgY29uc3QgV2ViS2l0OjpXZWJJbnRl
bnRTZXJ2aWNlSW5mbyYpOwogICAgIHZvaWQgZGlzcGF0Y2hJbnRlbnQoV2ViS2l0OjpXZWJGcmFt
ZSogc291cmNlLCBjb25zdCBXZWJLaXQ6OldlYkludGVudFJlcXVlc3QmKTsKKyAgICBXZWJLaXQ6
OldlYlZpZXcqIGNyZWF0ZVZpZXcoV2ViS2l0OjpXZWJGcmFtZSogY3JlYXRvciwgY29uc3QgV2Vi
S2l0OjpXZWJVUkxSZXF1ZXN0JiwgY29uc3QgV2ViS2l0OjpXZWJXaW5kb3dGZWF0dXJlcyYsIGNv
bnN0IFdlYktpdDo6V2ViU3RyaW5nJiBmcmFtZU5hbWUsIFdlYktpdDo6V2ViTmF2aWdhdGlvblBv
bGljeSk7CiAgICAgdm9pZCB3aWxsUGVyZm9ybUNsaWVudFJlZGlyZWN0KFdlYktpdDo6V2ViRnJh
bWUqLCBjb25zdCBXZWJLaXQ6OldlYlVSTCYgZnJvbSwgY29uc3QgV2ViS2l0OjpXZWJVUkwmIHRv
LCBkb3VibGUgaW50ZXJ2YWwsIGRvdWJsZSBmaXJlX3RpbWUpOwogICAgIHZvaWQgZGlkQ2FuY2Vs
Q2xpZW50UmVkaXJlY3QoV2ViS2l0OjpXZWJGcmFtZSopOwogICAgIHZvaWQgZGlkU3RhcnRQcm92
aXNpb25hbExvYWQoV2ViS2l0OjpXZWJGcmFtZSopOwpAQCAtMjQzLDYgKzI0NywxMSBAQCBwdWJs
aWM6CiAgICAgICAgIFdlYlRlc3RQcm94eUJhc2U6OmRpc3BhdGNoSW50ZW50KHNvdXJjZSwgcmVx
dWVzdCk7CiAgICAgICAgIEJhc2U6OmRpc3BhdGNoSW50ZW50KHNvdXJjZSwgcmVxdWVzdCk7CiAg
ICAgfQorICAgIHZpcnR1YWwgV2ViS2l0OjpXZWJWaWV3KiBjcmVhdGVWaWV3KFdlYktpdDo6V2Vi
RnJhbWUqIGNyZWF0b3IsIGNvbnN0IFdlYktpdDo6V2ViVVJMUmVxdWVzdCYgcmVxdWVzdCwgY29u
c3QgV2ViS2l0OjpXZWJXaW5kb3dGZWF0dXJlcyYgZmVhdHVyZXMsIGNvbnN0IFdlYktpdDo6V2Vi
U3RyaW5nJiBmcmFtZU5hbWUsIFdlYktpdDo6V2ViTmF2aWdhdGlvblBvbGljeSBwb2xpY3kpCisg
ICAgeworICAgICAgICBXZWJUZXN0UHJveHlCYXNlOjpjcmVhdGVWaWV3KGNyZWF0b3IsIHJlcXVl
c3QsIGZlYXR1cmVzLCBmcmFtZU5hbWUsIHBvbGljeSk7CisgICAgICAgIHJldHVybiBCYXNlOjpj
cmVhdGVWaWV3KGNyZWF0b3IsIHJlcXVlc3QsIGZlYXR1cmVzLCBmcmFtZU5hbWUsIHBvbGljeSk7
CisgICAgfQogCiAgICAgLy8gV2ViRnJhbWVDbGllbnQgaW1wbGVtZW50YXRpb24uCiAgICAgdmly
dHVhbCB2b2lkIHdpbGxQZXJmb3JtQ2xpZW50UmVkaXJlY3QoV2ViS2l0OjpXZWJGcmFtZSogZnJh
bWUsIGNvbnN0IFdlYktpdDo6V2ViVVJMJiBmcm9tLCBjb25zdCBXZWJLaXQ6OldlYlVSTCYgdG8s
IGRvdWJsZSBpbnRlcnZhbCwgZG91YmxlIGZpcmVUaW1lKQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9wdWJsaWMvV2ViVGVzdFJ1bm5lci5oIGIv
VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9wdWJsaWMvV2ViVGVzdFJ1
bm5lci5oCmluZGV4IDNmMWIxNmQ5MWU3NzNiZjdkM2EyMTU2NjMxOTEwOTI1ZDZkZjg1OTEuLmQy
NGU3MDVkYzIzMzMxNmQ2ZmY1OTMwYTNlZWQ0ODdlZmRiOGZlZmIgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvcHVibGljL1dlYlRlc3RSdW5uZXIu
aAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3B1YmxpYy9X
ZWJUZXN0UnVubmVyLmgKQEAgLTU2LDYgKzU2LDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9v
bCBzaG91bGREdW1wVXNlckdlc3R1cmVJbkZyYW1lTG9hZENhbGxiYWNrcygpIGNvbnN0IHsgcmV0
dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCBib29sIHN0b3BQcm92aXNpb25hbEZyYW1lTG9hZHMo
KSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1YWwgYm9vbCBzaG91bGREdW1wVGl0
bGVDaGFuZ2VzKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0dWFsIGJvb2wgc2hv
dWxkRHVtcENyZWF0ZVZpZXcoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQorICAgIHZpcnR1YWwg
Ym9vbCBjYW5PcGVuV2luZG93cygpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiB9OwogCiB9CmRp
ZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3NyYy9U
ZXN0UnVubmVyLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIv
c3JjL1Rlc3RSdW5uZXIuY3BwCmluZGV4IGQ3NjY2YzlhOTJjZTcxYTc5YzhkNjYzZmQ3OGI2OTQy
ZDU0ZGNmZTMuLjQxYjZiZGMxMzQ5N2VkYTA2OTFlMzJlNDYyNjIyN2M0MDU2YzUzOTEgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL1Rlc3RS
dW5uZXIuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIv
c3JjL1Rlc3RSdW5uZXIuY3BwCkBAIC0xNDIsNiArMTQyLDggQEAgVGVzdFJ1bm5lcjo6VGVzdFJ1
bm5lcigpCiAgICAgYmluZE1ldGhvZCgiZHVtcFVzZXJHZXN0dXJlSW5GcmFtZUxvYWRDYWxsYmFj
a3MiLCAmVGVzdFJ1bm5lcjo6ZHVtcFVzZXJHZXN0dXJlSW5GcmFtZUxvYWRDYWxsYmFja3MpOwog
ICAgIGJpbmRNZXRob2QoInNldFN0b3BQcm92aXNpb25hbEZyYW1lTG9hZHMiLCAmVGVzdFJ1bm5l
cjo6c2V0U3RvcFByb3Zpc2lvbmFsRnJhbWVMb2Fkcyk7CiAgICAgYmluZE1ldGhvZCgiZHVtcFRp
dGxlQ2hhbmdlcyIsICZUZXN0UnVubmVyOjpkdW1wVGl0bGVDaGFuZ2VzKTsKKyAgICBiaW5kTWV0
aG9kKCJkdW1wQ3JlYXRlVmlldyIsICZUZXN0UnVubmVyOjpkdW1wQ3JlYXRlVmlldyk7CisgICAg
YmluZE1ldGhvZCgic2V0Q2FuT3BlbldpbmRvd3MiLCAmVGVzdFJ1bm5lcjo6c2V0Q2FuT3Blbldp
bmRvd3MpOwogCiAgICAgLy8gVGhlIGZvbGxvd2luZyBtZXRob2RzIGludGVyYWN0IHdpdGggdGhl
IFdlYlRlc3RQcm94eS4KICAgICBiaW5kTWV0aG9kKCJzZW5kV2ViSW50ZW50UmVzcG9uc2UiLCAm
VGVzdFJ1bm5lcjo6c2VuZFdlYkludGVudFJlc3BvbnNlKTsKQEAgLTIxNiw2ICsyMTgsOCBAQCB2
b2lkIFRlc3RSdW5uZXI6OnJlc2V0KCkKICAgICBtX2R1bXBVc2VyR2VzdHVyZUluRnJhbWVMb2Fk
Q2FsbGJhY2tzID0gZmFsc2U7CiAgICAgbV9zdG9wUHJvdmlzaW9uYWxGcmFtZUxvYWRzID0gZmFs
c2U7CiAgICAgbV9kdW1wVGl0bGVDaGFuZ2VzID0gZmFsc2U7CisgICAgbV9kdW1wQ3JlYXRlVmll
dyA9IGZhbHNlOworICAgIG1fY2FuT3BlbldpbmRvd3MgPSBmYWxzZTsKIAogICAgIG1fZ2xvYmFs
RmxhZy5zZXQoZmFsc2UpOwogICAgIG1fcGxhdGZvcm1OYW1lLnNldCgiY2hyb21pdW0iKTsKQEAg
LTI5OCw2ICszMDIsMTYgQEAgYm9vbCBUZXN0UnVubmVyOjpzaG91bGREdW1wVGl0bGVDaGFuZ2Vz
KCkgY29uc3QKICAgICByZXR1cm4gbV9kdW1wVGl0bGVDaGFuZ2VzOwogfQogCitib29sIFRlc3RS
dW5uZXI6OnNob3VsZER1bXBDcmVhdGVWaWV3KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9kdW1w
Q3JlYXRlVmlldzsKK30KKworYm9vbCBUZXN0UnVubmVyOjpjYW5PcGVuV2luZG93cygpIGNvbnN0
Cit7CisgICAgcmV0dXJuIG1fY2FuT3BlbldpbmRvd3M7Cit9CisKIHZvaWQgVGVzdFJ1bm5lcjo6
c2V0VGFiS2V5Q3ljbGVzVGhyb3VnaEVsZW1lbnRzKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYgYXJn
dW1lbnRzLCBDcHBWYXJpYW50KiByZXN1bHQpCiB7CiAgICAgaWYgKGFyZ3VtZW50cy5zaXplKCkg
PiAwICYmIGFyZ3VtZW50c1swXS5pc0Jvb2woKSkKQEAgLTEwNjMsNiArMTA3NywxOCBAQCB2b2lk
IFRlc3RSdW5uZXI6OmR1bXBUaXRsZUNoYW5nZXMoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3Bw
VmFyaWFudCogcmVzdWx0KQogICAgIHJlc3VsdC0+c2V0TnVsbCgpOwogfQogCit2b2lkIFRlc3RS
dW5uZXI6OmR1bXBDcmVhdGVWaWV3KGNvbnN0IENwcEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQq
IHJlc3VsdCkKK3sKKyAgICBtX2R1bXBDcmVhdGVWaWV3ID0gdHJ1ZTsKKyAgICByZXN1bHQtPnNl
dE51bGwoKTsKK30KKwordm9pZCBUZXN0UnVubmVyOjpzZXRDYW5PcGVuV2luZG93cyhjb25zdCBD
cHBBcmd1bWVudExpc3QmLCBDcHBWYXJpYW50KiByZXN1bHQpCit7CisgICAgbV9jYW5PcGVuV2lu
ZG93cyA9IHRydWU7CisgICAgcmVzdWx0LT5zZXROdWxsKCk7Cit9CisKIHZvaWQgVGVzdFJ1bm5l
cjo6d29ya2VyVGhyZWFkQ291bnQoQ3BwVmFyaWFudCogcmVzdWx0KQogewogICAgIHJlc3VsdC0+
c2V0KHN0YXRpY19jYXN0PGludD4oV2ViV29ya2VySW5mbzo6ZGVkaWNhdGVkV29ya2VyQ291bnQo
KSkpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5l
ci9zcmMvVGVzdFJ1bm5lci5oIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1
bm5lci9zcmMvVGVzdFJ1bm5lci5oCmluZGV4IDU4ZDA2YjkyNWQ1MjdmNmI5MGFhOGQwN2Q0MDkw
ZDkxYmIwMGQwNWQuLjlmYjMxOTk1NTkyM2JmNmU4N2IxNjIzY2Q4YzMxNGM2YWZlOWVkODcgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL1Rl
c3RSdW5uZXIuaAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0UnVubmVy
L3NyYy9UZXN0UnVubmVyLmgKQEAgLTc0LDYgKzc0LDggQEAgcHVibGljOgogICAgIHZpcnR1YWwg
Ym9vbCBzaG91bGREdW1wVXNlckdlc3R1cmVJbkZyYW1lTG9hZENhbGxiYWNrcygpIGNvbnN0IE9W
RVJSSURFOwogICAgIHZpcnR1YWwgYm9vbCBzdG9wUHJvdmlzaW9uYWxGcmFtZUxvYWRzKCkgY29u
c3QgT1ZFUlJJREU7CiAgICAgdmlydHVhbCBib29sIHNob3VsZER1bXBUaXRsZUNoYW5nZXMoKSBj
b25zdCBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkRHVtcENyZWF0ZVZpZXcoKSBj
b25zdCBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGJvb2wgY2FuT3BlbldpbmRvd3MoKSBjb25zdCBP
VkVSUklERTsKIAogcHJvdGVjdGVkOgogICAgIC8vIEZJWE1FOiBtYWtlIHRoZXNlIHByaXZhdGUg
b25jZSB0aGUgbW92ZSBmcm9tIERSVFRlc3RSdW5uZXIgdG8gVGVzdFJ1bm5lcgpAQCAtMjMyLDYg
KzIzNCwxMyBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBkdW1wVGl0bGVDaGFuZ2VzKGNvbnN0IENw
cEFyZ3VtZW50TGlzdCYsIENwcFZhcmlhbnQqKTsKIAorICAgIC8vIFRoaXMgZnVuY3Rpb24gc2V0
cyBhIGZsYWcgdGhhdCB0ZWxscyB0aGUgdGVzdF9zaGVsbCB0byBkdW1wIGFsbCBjYWxscyB0bwor
ICAgIC8vIFdlYlZpZXdDbGllbnQ6OmNyZWF0ZVZpZXcoKS4KKyAgICAvLyBJdCB0YWtlcyBubyBh
cmd1bWVudHMsIGFuZCBpZ25vcmVzIGFueSB0aGF0IG1heSBiZSBwcmVzZW50LgorICAgIHZvaWQg
ZHVtcENyZWF0ZVZpZXcoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiwgQ3BwVmFyaWFudCopOworCisg
ICAgdm9pZCBzZXRDYW5PcGVuV2luZG93cyhjb25zdCBDcHBBcmd1bWVudExpc3QmLCBDcHBWYXJp
YW50Kik7CisKICAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICAgICAvLyBNZXRob2RzIGludGVyYWN0
aW5nIHdpdGggdGhlIFdlYlRlc3RQcm94eQogCkBAIC0zMTMsNiArMzIyLDE1IEBAIHByaXZhdGU6
CiAgICAgLy8gSWYgdHJ1ZSwgb3V0cHV0IGEgbWVzc2FnZSB3aGVuIHRoZSBwYWdlIHRpdGxlIGlz
IGNoYW5nZWQuCiAgICAgYm9vbCBtX2R1bXBUaXRsZUNoYW5nZXM7CiAKKyAgICAvLyBJZiB0cnVl
LCBvdXRwdXQgYSBkZXNjcmlwdGl2ZSBsaW5lIGVhY2ggdGltZSBXZWJWaWV3Q2xpZW50OjpjcmVh
dGVWaWV3CisgICAgLy8gaXMgaW52b2tlZC4KKyAgICBib29sIG1fZHVtcENyZWF0ZVZpZXc7CisK
KyAgICAvLyBJZiB0cnVlLCBuZXcgd2luZG93cyBjYW4gYmUgb3BlbmVkIHZpYSBqYXZhc2NyaXB0
IG9yIGJ5IHBsdWdpbnMuIEJ5CisgICAgLy8gZGVmYXVsdCwgc2V0IHRvIGZhbHNlIGFuZCBjYW4g
YmUgdG9nZ2xlZCB0byB0cnVlIHVzaW5nCisgICAgLy8gc2V0Q2FuT3BlbldpbmRvd3MoKS4KKyAg
ICBib29sIG1fY2FuT3BlbldpbmRvd3M7CisKICAgICAvLyBXQVYgYXVkaW8gZGF0YSBpcyBzdG9y
ZWQgaGVyZS4KICAgICBXZWJLaXQ6OldlYkFycmF5QnVmZmVyVmlldyBtX2F1ZGlvRGF0YTsKIApk
aWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9zcmMv
V2ViVGVzdFByb3h5LmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5u
ZXIvc3JjL1dlYlRlc3RQcm94eS5jcHAKaW5kZXggMTNjZTk2NGM0ZDc5YjEwZDRmZGE1N2E0OWU0
OGMyZDYyMjIzNjRkNy4uM2Y5MmEyMzJkOWU0OGQ5NTQ3YTljZmM3ZGY4MmU2MGVhY2M1ZWY5NiAx
MDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9zcmMv
V2ViVGVzdFByb3h5LmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0
UnVubmVyL3NyYy9XZWJUZXN0UHJveHkuY3BwCkBAIC00Nyw2ICs0Nyw3IEBACiAjaW5jbHVkZSAi
V2ViVGVzdFJ1bm5lci5oIgogI2luY2x1ZGUgIldlYlZpZXcuaCIKICNpbmNsdWRlICJwbGF0Zm9y
bS9XZWJDU3RyaW5nLmgiCisjaW5jbHVkZSAicGxhdGZvcm0vV2ViVVJMUmVxdWVzdC5oIgogI2lu
Y2x1ZGUgPHd0Zi9TdHJpbmdFeHRyYXMuaD4KIAogdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKQEAg
LTE0MCw2ICsxNDEsMTMgQEAgdm9pZCBwcmludEZyYW1lVXNlckdlc3R1cmVTdGF0dXMoV2ViVGVz
dERlbGVnYXRlKiBkZWxlZ2F0ZSwgV2ViRnJhbWUqIGZyYW1lLCBjb24KICAgICBkZWxlZ2F0ZS0+
cHJpbnRNZXNzYWdlKHN0cmluZygiRnJhbWUgd2l0aCB1c2VyIGdlc3R1cmUgXCIiKSArIChpc1Vz
ZXJHZXN0dXJlID8gInRydWUiIDogImZhbHNlIikgKyAiXCIiICsgbXNnKTsKIH0KIAorc3RyaW5n
IFVSTERlc2NyaXB0aW9uKGNvbnN0IEdVUkwmIHVybCkKK3sKKyAgICBpZiAodXJsLlNjaGVtZUlz
KCJmaWxlIikpCisgICAgICAgIHJldHVybiB1cmwuRXh0cmFjdEZpbGVOYW1lKCk7CisgICAgcmV0
dXJuIHVybC5wb3NzaWJseV9pbnZhbGlkX3NwZWMoKTsKK30KKwogfQogCiBXZWJUZXN0UHJveHlC
YXNlOjpXZWJUZXN0UHJveHlCYXNlKCkKQEAgLTQ1Miw2ICs0NjAsMTUgQEAgdm9pZCBXZWJUZXN0
UHJveHlCYXNlOjpkaXNwYXRjaEludGVudChXZWJGcmFtZSogc291cmNlLCBjb25zdCBXZWJJbnRl
bnRSZXF1ZXN0JgogICAgICAgICBtX2RlbGVnYXRlLT5wcmludE1lc3NhZ2Uoc3RyaW5nKCJIYXZl
IHN1Z2dlc3Rpb24gIikgKyBzdWdnZXN0aW9uc1tpXS5zcGVjKCkuZGF0YSgpICsgIlxuIik7CiB9
CiAKK1dlYlZpZXcqIFdlYlRlc3RQcm94eUJhc2U6OmNyZWF0ZVZpZXcoV2ViRnJhbWUqLCBjb25z
dCBXZWJVUkxSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBXZWJXaW5kb3dGZWF0dXJlcyYsIGNvbnN0
IFdlYlN0cmluZyYsIFdlYk5hdmlnYXRpb25Qb2xpY3kpCit7CisgICAgaWYgKCFtX3Rlc3RJbnRl
cmZhY2VzLT50ZXN0UnVubmVyKCkgfHwgIW1fdGVzdEludGVyZmFjZXMtPnRlc3RSdW5uZXIoKS0+
Y2FuT3BlbldpbmRvd3MoKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKG1fdGVzdEludGVy
ZmFjZXMtPnRlc3RSdW5uZXIoKS0+c2hvdWxkRHVtcENyZWF0ZVZpZXcoKSkKKyAgICAgICAgbV9k
ZWxlZ2F0ZS0+cHJpbnRNZXNzYWdlKHN0cmluZygiY3JlYXRlVmlldygiKSArIFVSTERlc2NyaXB0
aW9uKHJlcXVlc3QudXJsKCkpICsgIilcbiIpOworICAgIHJldHVybiAwOworfQorCiB2b2lkIFdl
YlRlc3RQcm94eUJhc2U6OndpbGxQZXJmb3JtQ2xpZW50UmVkaXJlY3QoV2ViRnJhbWUqIGZyYW1l
LCBjb25zdCBXZWJVUkwmLCBjb25zdCBXZWJVUkwmIHRvLCBkb3VibGUsIGRvdWJsZSkKIHsKICAg
ICBpZiAobV90ZXN0SW50ZXJmYWNlcy0+dGVzdFJ1bm5lcigpICYmIG1fdGVzdEludGVyZmFjZXMt
PnRlc3RSdW5uZXIoKS0+c2hvdWxkRHVtcEZyYW1lTG9hZENhbGxiYWNrcygpKSB7CmRpZmYgLS1n
aXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJWaWV3SG9zdC5jcHAgYi9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJWaWV3SG9zdC5jcHAKaW5kZXggMjQ1MDBjZmQ2
M2I3MzdjMjlmOTg5NWM1MDc1YTBmN2IyZTU2NTYyZC4uNDJjM2U3ZGQxNWM3MGU2NzA3ZGYxMzgy
ZGQwYmE1ODRiMWE1ZWIxMiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21p
dW0vV2ViVmlld0hvc3QuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dl
YlZpZXdIb3N0LmNwcApAQCAtMjAzLDEyICsyMDMsMTAgQEAgc3RhdGljIHZvaWQgcHJpbnROb2Rl
RGVzY3JpcHRpb24oY29uc3QgV2ViTm9kZSYgbm9kZSwgaW50IGV4Y2VwdGlvbikKIAogLy8gV2Vi
Vmlld0NsaWVudCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tCiAKLVdlYlZpZXcqIFdlYlZpZXdIb3N0OjpjcmVhdGVWaWV3KFdlYkZy
YW1lKiBjcmVhdG9yLCBjb25zdCBXZWJVUkxSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBXZWJXaW5k
b3dGZWF0dXJlcyYsIGNvbnN0IFdlYlN0cmluZyYsIFdlYk5hdmlnYXRpb25Qb2xpY3kpCitXZWJW
aWV3KiBXZWJWaWV3SG9zdDo6Y3JlYXRlVmlldyhXZWJGcmFtZSogY3JlYXRvciwgY29uc3QgV2Vi
VVJMUmVxdWVzdCYsIGNvbnN0IFdlYldpbmRvd0ZlYXR1cmVzJiwgY29uc3QgV2ViU3RyaW5nJiwg
V2ViTmF2aWdhdGlvblBvbGljeSkKIHsKICAgICBpZiAoIXRlc3RSdW5uZXIoKS0+Y2FuT3Blbldp
bmRvd3MoKSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgaWYgKHRlc3RSdW5uZXIoKS0+c2hvdWxk
RHVtcENyZWF0ZVZpZXcoKSkKLSAgICAgICAgZnByaW50ZihzdGRvdXQsICJjcmVhdGVWaWV3KCVz
KVxuIiwgVVJMRGVzY3JpcHRpb24ocmVxdWVzdC51cmwoKSkuY19zdHIoKSk7CiAgICAgY3JlYXRv
ci0+Y29uc3VtZVVzZXJHZXN0dXJlKCk7CiAgICAgcmV0dXJuIG1fc2hlbGwtPmNyZWF0ZU5ld1dp
bmRvdyhXZWJVUkwoKSktPndlYlZpZXcoKTsKIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>