<?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>101645</bug_id>
          
          <creation_ts>2012-11-08 14:31:41 -0800</creation_ts>
          <short_desc>REGRESSION(r133945): Numerous layout and unit test failures (Requested by jsbell|gardener on #webkit).</short_desc>
          <delta_ts>2012-11-08 15:05:53 -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>
          
          <blocked>101519</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="WebKit Review Bot">webkit.review.bot</assigned_to>
          <cc>abarth</cc>
    
    <cc>jsbell</cc>
    
    <cc>ojan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>762182</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-08 14:31:41 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/133945 broke the build:
Numerous layout and unit test failures (Requested by jsbell|gardener on #webkit).

This is an automatic bug report generated by the sheriff-bot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests case pain.

&quot;Only you can prevent forest fires.&quot; -- Smokey the Bear</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>762184</commentid>
    <comment_count>1</comment_count>
      <attachid>173119</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-08 14:32:21 -0800</bug_when>
    <thetext>Created attachment 173119
ROLLOUT of r133945

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the rollout will be successful.  This process takes approximately 15 minutes.

If you would like to land the rollout faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>762189</commentid>
    <comment_count>2</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-11-08 14:34:57 -0800</bug_when>
    <thetext>webkit_unit_test failure:

http://chromegw.corp.google.com/i/chromium.webkit/builders/WebKit%20Mac10.6/builds/1450/steps/webkit_unit_tests/logs/ExecuteScriptDuringDidCreateScriptContext

WebFrameTest.ExecuteScriptDuringDidCreateScriptContext: 
Did not complete.

layout test failures:

http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=http%2Ftests%2Fsecurity%2FisolatedWorld%2Fall-window-prototypes.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Fbody-prototype.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Fbypass-main-world-csp.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Fcontext-destroy.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Fcross-origin-xhr.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2FdispatchEvent.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Fdocument-properties.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Fevents.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Fimage-properties.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Flocation-properties.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Fnumber-prototype.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Fsandboxed-iframe.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Fstorage-prototype.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Ftop-properties.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2FuserGestureEvents.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Fwindow-setTimeout-function.html%2Chttp%2Ftests%2Fsecurity%2FisolatedWorld%2Fworld-reuse.html%2Cplatform%2Fchromium%2Fhttp%2Ftests%2Fmisc%2Fexecute-and-return-value.html%2Cplugins%2Fplugin-document-willSendRequest-null.html%2Cstorage%2Fwebsql%2Fopen-database-creation-callback-isolated-world.html%2Cstorage%2Fwebsql%2Fstatement-error-callback-isolated-world.html%2Cstorage%2Fwebsql%2Fstatement-success-callback-isolated-world.html%2Cstorage%2Fwebsql%2Ftransaction-callback-isolated-world.html%2Cstorage%2Fwebsql%2Ftransaction-error-callback-isolated-world.html%2Cstorage%2Fwebsql%2Ftransaction-success-callback-isolated-world.html%2Cuserscripts%2Fmixed-case-stylesheet.html%2Cuserscripts%2Fscript-not-run-for-fragments.html%2Cuserscripts%2Fscript-run-at-start.html%2Cuserscripts%2Fuser-script-all-frames.html%2Cuserscripts%2Fuser-script-audio-document.html%2Cuserscripts%2Fuser-script-image-document.html%2Cuserscripts%2Fuser-script-plugin-document.html%2Cuserscripts%2Fuser-script-top-frame-only.html%2Cuserscripts%2Fuser-script-video-document.html%2Cuserscripts%2Fwindow-onerror-for-isolated-world-1.html%2Cuserscripts%2Fwindow-onerror-for-isolated-world-2.html%2Cfast%2Fcss%2Ftext-overflow-input.html%2Cfast%2Fforms%2Finput-readonly-dimmed.html%2Cfast%2Fforms%2Finput-text-scroll-left-on-blur.html

Sample stack:

crash log for DumpRenderTree (pid 1852):
STDOUT: &lt;empty&gt;
STDERR: 1   0x7f86bbfa6a18
STDERR: 2   0x7f86b8dc83dd
STDERR: 3   0x7f86b8dc842a
STDERR: 4   0x7f86b8dc9d3d
STDERR: 5   0x7f86b8ddce9c v8::Object::SlowGetAlignedPointerFromInternalField(int)
STDERR: 6   0x7f86bae82d72
STDERR: 7   0x7f86bbfa70e0
STDERR: 8   0x7f86bb0e9b6f
STDERR: 9   0x7f86bbf6338c
... etc ...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>762192</commentid>
    <comment_count>3</comment_count>
      <attachid>173119</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-11-08 14:35:59 -0800</bug_when>
    <thetext>Comment on attachment 173119
ROLLOUT of r133945

Clearing flags on attachment: 173119

Committed r133954: &lt;http://trac.webkit.org/changeset/133954&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>762193</commentid>
    <comment_count>4</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-11-08 14:36:01 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>762221</commentid>
    <comment_count>5</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-08 15:05:53 -0800</bug_when>
    <thetext>Thanks.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>173119</attachid>
            <date>2012-11-08 14:32:21 -0800</date>
            <delta_ts>2012-11-08 14:35:58 -0800</delta_ts>
            <desc>ROLLOUT of r133945</desc>
            <filename>bug-101645-20121108223842.patch</filename>
            <type>text/plain</type>
            <size>22301</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMzOTUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTg5NjRlNTU1Yjg1ZDYz
MTgxOWRhYTg4NDRlMTZhNWUwNTVkZWE5My4uOWZkODliZmJhOWM0Yzc3YWNlZjczY2EzMzUxMTU4
YjgyOGUzMzMyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU1IEBACisyMDEyLTExLTA4ICBTaGVy
aWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KKworICAgICAgICBVbnJldmll
d2VkLCByb2xsaW5nIG91dCByMTMzOTQ1LgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3Jn
L2NoYW5nZXNldC8xMzM5NDUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEwMTY0NQorCisgICAgICAgIE51bWVyb3VzIGxheW91dCBhbmQgdW5pdCB0ZXN0
IGZhaWx1cmVzIChSZXF1ZXN0ZWQgYnkKKyAgICAgICAganNiZWxsfGdhcmRlbmVyIG9uICN3ZWJr
aXQpLgorCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG06Cisg
ICAgICAgIChHZW5lcmF0ZUhlYWRlcik6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L1Y4L1Y4RmxvYXQ2NEFycmF5Lmg6CisgICAgICAgIChXZWJDb3JlOjpWOEZsb2F0NjRBcnJheTo6
dG9OYXRpdmUpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RBY3Rp
dmVET01PYmplY3QuaDoKKyAgICAgICAgKFdlYkNvcmU6OlY4VGVzdEFjdGl2ZURPTU9iamVjdDo6
dG9OYXRpdmUpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RDdXN0
b21OYW1lZEdldHRlci5oOgorICAgICAgICAoV2ViQ29yZTo6VjhUZXN0Q3VzdG9tTmFtZWRHZXR0
ZXI6OnRvTmF0aXZlKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0
RXZlbnRDb25zdHJ1Y3Rvci5oOgorICAgICAgICAoV2ViQ29yZTo6VjhUZXN0RXZlbnRDb25zdHJ1
Y3Rvcjo6dG9OYXRpdmUpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRl
c3RFdmVudFRhcmdldC5oOgorICAgICAgICAoV2ViQ29yZTo6VjhUZXN0RXZlbnRUYXJnZXQ6OnRv
TmF0aXZlKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0RXhjZXB0
aW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpWOFRlc3RFeGNlcHRpb246OnRvTmF0aXZlKToKKyAg
ICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0SW50ZXJmYWNlLmg6CisgICAg
ICAgIChXZWJDb3JlOjpWOFRlc3RJbnRlcmZhY2U6OnRvTmF0aXZlKToKKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lci5oOgorICAg
ICAgICAoV2ViQ29yZTo6VjhUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lcjo6dG9OYXRpdmUpOgor
ICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3ROYW1lZENvbnN0cnVjdG9y
Lmg6CisgICAgICAgIChXZWJDb3JlOjpWOFRlc3ROYW1lZENvbnN0cnVjdG9yOjp0b05hdGl2ZSk6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE5vZGUuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OlY4VGVzdE5vZGU6OnRvTmF0aXZlKToKKyAgICAgICAgKiBiaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmg6CisgICAgICAgIChXZWJDb3JlOjpWOFRlc3RPYmo6
OnRvTmF0aXZlKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0U2Vy
aWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmg6CisgICAgICAgIChXZWJDb3JlOjpWOFRlc3RT
ZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U6OnRvTmF0aXZlKToKKyAgICAgICAgKiBiaW5k
aW5ncy92OC9OUFY4T2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnY4T2JqZWN0VG9OUE9i
amVjdCk6CisgICAgICAgIChXZWJDb3JlOjpucENyZWF0ZVY4U2NyaXB0T2JqZWN0KToKKyAgICAg
ICAgKiBiaW5kaW5ncy92OC9WOENvbGxlY3Rpb24uaDoKKyAgICAgICAgKFdlYkNvcmU6OnRvTmF0
aXZlQ29sbGVjdGlvbik6CisgICAgICAgICogYmluZGluZ3MvdjgvVjhET01XaW5kb3dTaGVsbC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpzZXRJc29sYXRlZFdvcmxkRmllbGQpOgorICAgICAgICAo
V2ViQ29yZTo6VjhET01XaW5kb3dTaGVsbDo6ZW50ZXJlZElzb2xhdGVkV29ybGRDb250ZXh0KToK
KyAgICAgICAgKiBiaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6VjhET01XcmFwcGVyOjppc1dyYXBwZXJPZlR5cGUpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4
L1Y4RE9NV3JhcHBlci5oOgorICAgICAgICAoV2ViQ29yZTo6VjhET01XcmFwcGVyOjpzZXRET01X
cmFwcGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlY4RE9NV3JhcHBlcjo6Y2xlYXJET01XcmFwcGVy
KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9XcmFwcGVyVHlwZUluZm8uaDoKKyAgICAgICAgKFdl
YkNvcmU6OnRvTmF0aXZlKToKKyAgICAgICAgKFdlYkNvcmU6OnRvV3JhcHBlclR5cGVJbmZvKToK
KwogMjAxMi0xMS0wMSAgRmlsaXAgUGl6bG8gIDxmcGl6bG9AYXBwbGUuY29tPgogCiAgICAgICAg
IEpTQyBzaG91bGQgaW5mZXIgd2hlbiBpbmRleGVkIHN0b3JhZ2UgY29udGFpbnMgb25seSBpbnRl
Z2VycyBvciBkb3VibGVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JWOC5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvclY4LnBtCmluZGV4IDFjZDkyZmZlY2I1NTkwZWIyZjM5MjI3ZmVmYjY3Y2Nk
YmMyODRhMDMuLmZiZGRhZTdiYWI4Y2I1Mzc0ZjNkNTZlZTc2N2QzZTBjNTQ2ZGFkZDUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBt
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBt
CkBAIC0zNzksNyArMzc5LDcgQEAgRU5ECiAgICAgc3RhdGljIHY4OjpQZXJzaXN0ZW50PHY4OjpG
dW5jdGlvblRlbXBsYXRlPiBHZXRUZW1wbGF0ZSgpOwogICAgIHN0YXRpYyAke25hdGl2ZVR5cGV9
KiB0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IG9iamVjdCkKICAgICB7Ci0gICAgICAg
IHJldHVybiByZWludGVycHJldF9jYXN0PCR7bmF0aXZlVHlwZX0qPihvYmplY3QtPkdldEFsaWdu
ZWRQb2ludGVyRnJvbUludGVybmFsRmllbGQodjhET01XcmFwcGVyT2JqZWN0SW5kZXgpKTsKKyAg
ICAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8JHtuYXRpdmVUeXBlfSo+KG9iamVjdC0+R2V0
UG9pbnRlckZyb21JbnRlcm5hbEZpZWxkKHY4RE9NV3JhcHBlck9iamVjdEluZGV4KSk7CiAgICAg
fQogICAgIGlubGluZSBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwKCR7bmF0aXZl
VHlwZX0qLCB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGNyZWF0aW9uQ29udGV4dCA9IHY4OjpIYW5k
bGU8djg6Ok9iamVjdD4oKSwgdjg6Oklzb2xhdGUqID0gMCk7CiAgICAgc3RhdGljIHZvaWQgZGVy
ZWZPYmplY3Qodm9pZCopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L1Y4L1Y4RmxvYXQ2NEFycmF5LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvVjgvVjhGbG9hdDY0QXJyYXkuaAppbmRleCAyMTM0NjZmMDAwMjI1ODRiMGQ3
MTVlNGVmZWRkMjBlNjNhMzg4MzUwLi5iZTAxYjFjMDZkZWYzNDFhZThkODhmNjJlYTk3MmJkOWY4
YmQ4NDBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
VjgvVjhGbG9hdDY0QXJyYXkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvVjgvVjhGbG9hdDY0QXJyYXkuaApAQCAtNDAsNyArNDAsNyBAQCBwdWJsaWM6CiAgICAg
c3RhdGljIHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5jdGlvblRlbXBsYXRlPiBHZXRUZW1wbGF0ZSgp
OwogICAgIHN0YXRpYyBGbG9hdDY0QXJyYXkqIHRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVj
dD4gb2JqZWN0KQogICAgIHsKLSAgICAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8RmxvYXQ2
NEFycmF5Kj4ob2JqZWN0LT5HZXRBbGlnbmVkUG9pbnRlckZyb21JbnRlcm5hbEZpZWxkKHY4RE9N
V3JhcHBlck9iamVjdEluZGV4KSk7CisgICAgICAgIHJldHVybiByZWludGVycHJldF9jYXN0PEZs
b2F0NjRBcnJheSo+KG9iamVjdC0+R2V0UG9pbnRlckZyb21JbnRlcm5hbEZpZWxkKHY4RE9NV3Jh
cHBlck9iamVjdEluZGV4KSk7CiAgICAgfQogICAgIGlubGluZSBzdGF0aWMgdjg6OkhhbmRsZTx2
ODo6T2JqZWN0PiB3cmFwKEZsb2F0NjRBcnJheSosIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gY3Jl
YXRpb25Db250ZXh0ID0gdjg6OkhhbmRsZTx2ODo6T2JqZWN0PigpLCB2ODo6SXNvbGF0ZSogPSAw
KTsKICAgICBzdGF0aWMgdm9pZCBkZXJlZk9iamVjdCh2b2lkKik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0QWN0aXZlRE9NT2JqZWN0
LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0QWN0aXZl
RE9NT2JqZWN0LmgKaW5kZXggMjhhZjk0NTI4ODE2MDkxMGMwZTViM2EyYjk5NGIzOTI1MDAwOGQ2
Yi4uMTkyMzgxMGFiMDQ5ZTJhMzQxNmIzNDM2ZDhjOTRiNjJmZmViMGE2OCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEFjdGl2ZURPTU9i
amVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRl
c3RBY3RpdmVET01PYmplY3QuaApAQCAtMzksNyArMzksNyBAQCBwdWJsaWM6CiAgICAgc3RhdGlj
IHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5jdGlvblRlbXBsYXRlPiBHZXRUZW1wbGF0ZSgpOwogICAg
IHN0YXRpYyBUZXN0QWN0aXZlRE9NT2JqZWN0KiB0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmpl
Y3Q+IG9iamVjdCkKICAgICB7Ci0gICAgICAgIHJldHVybiByZWludGVycHJldF9jYXN0PFRlc3RB
Y3RpdmVET01PYmplY3QqPihvYmplY3QtPkdldEFsaWduZWRQb2ludGVyRnJvbUludGVybmFsRmll
bGQodjhET01XcmFwcGVyT2JqZWN0SW5kZXgpKTsKKyAgICAgICAgcmV0dXJuIHJlaW50ZXJwcmV0
X2Nhc3Q8VGVzdEFjdGl2ZURPTU9iamVjdCo+KG9iamVjdC0+R2V0UG9pbnRlckZyb21JbnRlcm5h
bEZpZWxkKHY4RE9NV3JhcHBlck9iamVjdEluZGV4KSk7CiAgICAgfQogICAgIGlubGluZSBzdGF0
aWMgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwKFRlc3RBY3RpdmVET01PYmplY3QqLCB2ODo6
SGFuZGxlPHY4OjpPYmplY3Q+IGNyZWF0aW9uQ29udGV4dCA9IHY4OjpIYW5kbGU8djg6Ok9iamVj
dD4oKSwgdjg6Oklzb2xhdGUqID0gMCk7CiAgICAgc3RhdGljIHZvaWQgZGVyZWZPYmplY3Qodm9p
ZCopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4
L1Y4VGVzdEN1c3RvbU5hbWVkR2V0dGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvVjgvVjhUZXN0Q3VzdG9tTmFtZWRHZXR0ZXIuaAppbmRleCAwZDdhZmYxOWZiZDY5
MGRjNjRlODM4NWM1ZmQ3N2RhNjg0YzI3NjVmLi44Yzg5YzBhMjlkZGE1NDdmNjFiNzIyNTEyODUx
YTVhZGJlZGU3NWQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvVjgvVjhUZXN0Q3VzdG9tTmFtZWRHZXR0ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0Q3VzdG9tTmFtZWRHZXR0ZXIuaApAQCAtMzks
NyArMzksNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5jdGlv
blRlbXBsYXRlPiBHZXRUZW1wbGF0ZSgpOwogICAgIHN0YXRpYyBUZXN0Q3VzdG9tTmFtZWRHZXR0
ZXIqIHRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gb2JqZWN0KQogICAgIHsKLSAgICAg
ICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8VGVzdEN1c3RvbU5hbWVkR2V0dGVyKj4ob2JqZWN0
LT5HZXRBbGlnbmVkUG9pbnRlckZyb21JbnRlcm5hbEZpZWxkKHY4RE9NV3JhcHBlck9iamVjdElu
ZGV4KSk7CisgICAgICAgIHJldHVybiByZWludGVycHJldF9jYXN0PFRlc3RDdXN0b21OYW1lZEdl
dHRlcio+KG9iamVjdC0+R2V0UG9pbnRlckZyb21JbnRlcm5hbEZpZWxkKHY4RE9NV3JhcHBlck9i
amVjdEluZGV4KSk7CiAgICAgfQogICAgIGlubGluZSBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6T2Jq
ZWN0PiB3cmFwKFRlc3RDdXN0b21OYW1lZEdldHRlciosIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4g
Y3JlYXRpb25Db250ZXh0ID0gdjg6OkhhbmRsZTx2ODo6T2JqZWN0PigpLCB2ODo6SXNvbGF0ZSog
PSAwKTsKICAgICBzdGF0aWMgdm9pZCBkZXJlZk9iamVjdCh2b2lkKik7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0RXZlbnRDb25zdHJ1
Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEV2
ZW50Q29uc3RydWN0b3IuaAppbmRleCAwNDg4YTQ4YzRhNjk1ZTc0MTEzMjg4NmNiOWY1ZTFjNjA0
Y2ZhY2ZhLi42MjlhNWI1NWU5Yjc2NmM4ZGZjYzMxY2NiMmQ1MTM3OTUyMDczYjkxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0RXZlbnRD
b25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9W
OC9WOFRlc3RFdmVudENvbnN0cnVjdG9yLmgKQEAgLTQwLDcgKzQwLDcgQEAgcHVibGljOgogICAg
IHN0YXRpYyB2ODo6UGVyc2lzdGVudDx2ODo6RnVuY3Rpb25UZW1wbGF0ZT4gR2V0VGVtcGxhdGUo
KTsKICAgICBzdGF0aWMgVGVzdEV2ZW50Q29uc3RydWN0b3IqIHRvTmF0aXZlKHY4OjpIYW5kbGU8
djg6Ok9iamVjdD4gb2JqZWN0KQogICAgIHsKLSAgICAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nh
c3Q8VGVzdEV2ZW50Q29uc3RydWN0b3IqPihvYmplY3QtPkdldEFsaWduZWRQb2ludGVyRnJvbUlu
dGVybmFsRmllbGQodjhET01XcmFwcGVyT2JqZWN0SW5kZXgpKTsKKyAgICAgICAgcmV0dXJuIHJl
aW50ZXJwcmV0X2Nhc3Q8VGVzdEV2ZW50Q29uc3RydWN0b3IqPihvYmplY3QtPkdldFBvaW50ZXJG
cm9tSW50ZXJuYWxGaWVsZCh2OERPTVdyYXBwZXJPYmplY3RJbmRleCkpOwogICAgIH0KICAgICBp
bmxpbmUgc3RhdGljIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcChUZXN0RXZlbnRDb25zdHJ1
Y3RvciosIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gY3JlYXRpb25Db250ZXh0ID0gdjg6OkhhbmRs
ZTx2ODo6T2JqZWN0PigpLCB2ODo6SXNvbGF0ZSogPSAwKTsKICAgICBzdGF0aWMgdm9pZCBkZXJl
Zk9iamVjdCh2b2lkKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL3Rlc3QvVjgvVjhUZXN0RXZlbnRUYXJnZXQuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RFdmVudFRhcmdldC5oCmluZGV4IGE1MmU4YTRlMDI5MTIz
ODZhZmE1YjMwZTQ4NmZjZGVhNDE1YmI2MGIuLjliNjhlMzRlMWZmMWFmYjFmYmNjN2Y1YmY0ZjQ5
NjEwZmUzMmEyNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9WOC9WOFRlc3RFdmVudFRhcmdldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RFdmVudFRhcmdldC5oCkBAIC0zOSw3ICszOSw3IEBAIHB1
YmxpYzoKICAgICBzdGF0aWMgdjg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IEdl
dFRlbXBsYXRlKCk7CiAgICAgc3RhdGljIFRlc3RFdmVudFRhcmdldCogdG9OYXRpdmUodjg6Okhh
bmRsZTx2ODo6T2JqZWN0PiBvYmplY3QpCiAgICAgewotICAgICAgICByZXR1cm4gcmVpbnRlcnBy
ZXRfY2FzdDxUZXN0RXZlbnRUYXJnZXQqPihvYmplY3QtPkdldEFsaWduZWRQb2ludGVyRnJvbUlu
dGVybmFsRmllbGQodjhET01XcmFwcGVyT2JqZWN0SW5kZXgpKTsKKyAgICAgICAgcmV0dXJuIHJl
aW50ZXJwcmV0X2Nhc3Q8VGVzdEV2ZW50VGFyZ2V0Kj4ob2JqZWN0LT5HZXRQb2ludGVyRnJvbUlu
dGVybmFsRmllbGQodjhET01XcmFwcGVyT2JqZWN0SW5kZXgpKTsKICAgICB9CiAgICAgaW5saW5l
IHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXAoVGVzdEV2ZW50VGFyZ2V0Kiwgdjg6
OkhhbmRsZTx2ODo6T2JqZWN0PiBjcmVhdGlvbkNvbnRleHQgPSB2ODo6SGFuZGxlPHY4OjpPYmpl
Y3Q+KCksIHY4OjpJc29sYXRlKiA9IDApOwogICAgIHN0YXRpYyB2b2lkIGRlcmVmT2JqZWN0KHZv
aWQqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9W
OC9WOFRlc3RFeGNlcHRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9WOC9WOFRlc3RFeGNlcHRpb24uaAppbmRleCBlZmJhYWM5MWY3ZjQwZjE3ZmNjNDNlYzY5Mzli
YWFlYjAwY2Q2MjcwLi43MWI5NDc4ZDNmZTk1ZTA3ODUzZjUyMTEwMGI3Nzg3ZDQxODQyNDZjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0
RXhjZXB0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4
L1Y4VGVzdEV4Y2VwdGlvbi5oCkBAIC0zOSw3ICszOSw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMg
djg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IEdldFRlbXBsYXRlKCk7CiAgICAg
c3RhdGljIFRlc3RFeGNlcHRpb24qIHRvTmF0aXZlKHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gb2Jq
ZWN0KQogICAgIHsKLSAgICAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8VGVzdEV4Y2VwdGlv
bio+KG9iamVjdC0+R2V0QWxpZ25lZFBvaW50ZXJGcm9tSW50ZXJuYWxGaWVsZCh2OERPTVdyYXBw
ZXJPYmplY3RJbmRleCkpOworICAgICAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxUZXN0RXhj
ZXB0aW9uKj4ob2JqZWN0LT5HZXRQb2ludGVyRnJvbUludGVybmFsRmllbGQodjhET01XcmFwcGVy
T2JqZWN0SW5kZXgpKTsKICAgICB9CiAgICAgaW5saW5lIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpP
YmplY3Q+IHdyYXAoVGVzdEV4Y2VwdGlvbiosIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gY3JlYXRp
b25Db250ZXh0ID0gdjg6OkhhbmRsZTx2ODo6T2JqZWN0PigpLCB2ODo6SXNvbGF0ZSogPSAwKTsK
ICAgICBzdGF0aWMgdm9pZCBkZXJlZk9iamVjdCh2b2lkKik7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0SW50ZXJmYWNlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0SW50ZXJmYWNlLmgKaW5k
ZXggMDgwODJjM2E5NjdkZDQ0N2RhNzViZTI3NTM1ZGI5NWU2ZGJmNjFiYy4uNzVmZDExZmYyNmMz
MTU3OTBkNmQzY2FkMDVkMDM2Yzg0MWQ3YzA4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEludGVyZmFjZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RJbnRlcmZhY2UuaApAQCAtNDEs
NyArNDEsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5jdGlv
blRlbXBsYXRlPiBHZXRUZW1wbGF0ZSgpOwogICAgIHN0YXRpYyBUZXN0SW50ZXJmYWNlKiB0b05h
dGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IG9iamVjdCkKICAgICB7Ci0gICAgICAgIHJldHVy
biByZWludGVycHJldF9jYXN0PFRlc3RJbnRlcmZhY2UqPihvYmplY3QtPkdldEFsaWduZWRQb2lu
dGVyRnJvbUludGVybmFsRmllbGQodjhET01XcmFwcGVyT2JqZWN0SW5kZXgpKTsKKyAgICAgICAg
cmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8VGVzdEludGVyZmFjZSo+KG9iamVjdC0+R2V0UG9pbnRl
ckZyb21JbnRlcm5hbEZpZWxkKHY4RE9NV3JhcHBlck9iamVjdEluZGV4KSk7CiAgICAgfQogICAg
IGlubGluZSBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwKFRlc3RJbnRlcmZhY2Uq
LCB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGNyZWF0aW9uQ29udGV4dCA9IHY4OjpIYW5kbGU8djg6
Ok9iamVjdD4oKSwgdjg6Oklzb2xhdGUqID0gMCk7CiAgICAgc3RhdGljIHZvaWQgZGVyZWZPYmpl
Y3Qodm9pZCopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L1Y4L1Y4VGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmgKaW5k
ZXggOGFmZGE3MmNjMjBlYzY2MDJmZjNjZWI4YTIxOWQxMDBkYzFkNmJlMC4uN2JhNGE1NjQxNmNl
YjNmNjg3MzVlNGFhZGM5ODJlMDU3OWE1NTJiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0TWVkaWFR
dWVyeUxpc3RMaXN0ZW5lci5oCkBAIC0zOSw3ICszOSw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMg
djg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IEdldFRlbXBsYXRlKCk7CiAgICAg
c3RhdGljIFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyKiB0b05hdGl2ZSh2ODo6SGFuZGxlPHY4
OjpPYmplY3Q+IG9iamVjdCkKICAgICB7Ci0gICAgICAgIHJldHVybiByZWludGVycHJldF9jYXN0
PFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyKj4ob2JqZWN0LT5HZXRBbGlnbmVkUG9pbnRlckZy
b21JbnRlcm5hbEZpZWxkKHY4RE9NV3JhcHBlck9iamVjdEluZGV4KSk7CisgICAgICAgIHJldHVy
biByZWludGVycHJldF9jYXN0PFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyKj4ob2JqZWN0LT5H
ZXRQb2ludGVyRnJvbUludGVybmFsRmllbGQodjhET01XcmFwcGVyT2JqZWN0SW5kZXgpKTsKICAg
ICB9CiAgICAgaW5saW5lIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXAoVGVzdE1l
ZGlhUXVlcnlMaXN0TGlzdGVuZXIqLCB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGNyZWF0aW9uQ29u
dGV4dCA9IHY4OjpIYW5kbGU8djg6Ok9iamVjdD4oKSwgdjg6Oklzb2xhdGUqID0gMCk7CiAgICAg
c3RhdGljIHZvaWQgZGVyZWZPYmplY3Qodm9pZCopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE5hbWVkQ29uc3RydWN0b3IuaCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3ROYW1lZENvbnN0cnVj
dG9yLmgKaW5kZXggNWQzM2ZlYTE2ZmI2MjYwMDE1ZTQ2OTdhYmJkODgwNmRjMTA0ZWUwYi4uYjBm
MzQ3MWM4OTczZDBhOTFkMWUxNjQ2Yjg2ZGU1NGRjNDNiM2E0YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE5hbWVkQ29uc3RydWN0b3Iu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0TmFt
ZWRDb25zdHJ1Y3Rvci5oCkBAIC00NSw3ICs0NSw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdjg6
OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IEdldFRlbXBsYXRlKCk7CiAgICAgc3Rh
dGljIFRlc3ROYW1lZENvbnN0cnVjdG9yKiB0b05hdGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+
IG9iamVjdCkKICAgICB7Ci0gICAgICAgIHJldHVybiByZWludGVycHJldF9jYXN0PFRlc3ROYW1l
ZENvbnN0cnVjdG9yKj4ob2JqZWN0LT5HZXRBbGlnbmVkUG9pbnRlckZyb21JbnRlcm5hbEZpZWxk
KHY4RE9NV3JhcHBlck9iamVjdEluZGV4KSk7CisgICAgICAgIHJldHVybiByZWludGVycHJldF9j
YXN0PFRlc3ROYW1lZENvbnN0cnVjdG9yKj4ob2JqZWN0LT5HZXRQb2ludGVyRnJvbUludGVybmFs
RmllbGQodjhET01XcmFwcGVyT2JqZWN0SW5kZXgpKTsKICAgICB9CiAgICAgaW5saW5lIHN0YXRp
YyB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXAoVGVzdE5hbWVkQ29uc3RydWN0b3IqLCB2ODo6
SGFuZGxlPHY4OjpPYmplY3Q+IGNyZWF0aW9uQ29udGV4dCA9IHY4OjpIYW5kbGU8djg6Ok9iamVj
dD4oKSwgdjg6Oklzb2xhdGUqID0gMCk7CiAgICAgc3RhdGljIHZvaWQgZGVyZWZPYmplY3Qodm9p
ZCopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4
L1Y4VGVzdE5vZGUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9W
OFRlc3ROb2RlLmgKaW5kZXggNWU4ZWMyOGY1Njk5ZDY1NWI3OTY2ZDkyOWE1YmViM2ZkOTVhNjg5
Mi4uZmQzMzM4ODM5OTA0ZDEzMGY5NzhlODc4MTE2Y2JhM2RiMDcxMWFiNyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE5vZGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0Tm9kZS5oCkBA
IC0zOSw3ICszOSw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdjg6OlBlcnNpc3RlbnQ8djg6OkZ1
bmN0aW9uVGVtcGxhdGU+IEdldFRlbXBsYXRlKCk7CiAgICAgc3RhdGljIFRlc3ROb2RlKiB0b05h
dGl2ZSh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IG9iamVjdCkKICAgICB7Ci0gICAgICAgIHJldHVy
biByZWludGVycHJldF9jYXN0PFRlc3ROb2RlKj4ob2JqZWN0LT5HZXRBbGlnbmVkUG9pbnRlckZy
b21JbnRlcm5hbEZpZWxkKHY4RE9NV3JhcHBlck9iamVjdEluZGV4KSk7CisgICAgICAgIHJldHVy
biByZWludGVycHJldF9jYXN0PFRlc3ROb2RlKj4ob2JqZWN0LT5HZXRQb2ludGVyRnJvbUludGVy
bmFsRmllbGQodjhET01XcmFwcGVyT2JqZWN0SW5kZXgpKTsKICAgICB9CiAgICAgaW5saW5lIHN0
YXRpYyB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXAoVGVzdE5vZGUqLCB2ODo6SGFuZGxlPHY4
OjpPYmplY3Q+IGNyZWF0aW9uQ29udGV4dCA9IHY4OjpIYW5kbGU8djg6Ok9iamVjdD4oKSwgdjg6
Oklzb2xhdGUqID0gMCk7CiAgICAgc3RhdGljIHZvaWQgZGVyZWZPYmplY3Qodm9pZCopOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9i
ai5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5o
CmluZGV4IGIxODU1YjQ5MmJlZjQzOWEzZmM4OTYzNmI2NDg2NjBiYjU2OGM0M2UuLjk0Mzg5NTJj
ODgyMmU5M2U4NzNmNmY4OTA3MDgyMzA0MTgyZDNiZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmouaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmgKQEAgLTM5LDcgKzM5LDcg
QEAgcHVibGljOgogICAgIHN0YXRpYyB2ODo6UGVyc2lzdGVudDx2ODo6RnVuY3Rpb25UZW1wbGF0
ZT4gR2V0VGVtcGxhdGUoKTsKICAgICBzdGF0aWMgVGVzdE9iaiogdG9OYXRpdmUodjg6OkhhbmRs
ZTx2ODo6T2JqZWN0PiBvYmplY3QpCiAgICAgewotICAgICAgICByZXR1cm4gcmVpbnRlcnByZXRf
Y2FzdDxUZXN0T2JqKj4ob2JqZWN0LT5HZXRBbGlnbmVkUG9pbnRlckZyb21JbnRlcm5hbEZpZWxk
KHY4RE9NV3JhcHBlck9iamVjdEluZGV4KSk7CisgICAgICAgIHJldHVybiByZWludGVycHJldF9j
YXN0PFRlc3RPYmoqPihvYmplY3QtPkdldFBvaW50ZXJGcm9tSW50ZXJuYWxGaWVsZCh2OERPTVdy
YXBwZXJPYmplY3RJbmRleCkpOwogICAgIH0KICAgICBpbmxpbmUgc3RhdGljIHY4OjpIYW5kbGU8
djg6Ok9iamVjdD4gd3JhcChUZXN0T2JqKiwgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBjcmVhdGlv
bkNvbnRleHQgPSB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+KCksIHY4OjpJc29sYXRlKiA9IDApOwog
ICAgIHN0YXRpYyB2b2lkIGRlcmVmT2JqZWN0KHZvaWQqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RTZXJpYWxpemVkU2NyaXB0VmFs
dWVJbnRlcmZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9W
OFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuaAppbmRleCA5NGQ5ZDA2Y2RlYjY2
NWViZDFmNWY5OTNiMGZlNmMxZjFhZjYxNGU3Li4zOTcwMTY4NTBkYjVlYmU4ZjM1ZGY0OWY3MjRk
ODZkYjJjOTU2NDA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvVjgvVjhUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZUludGVyZmFjZS5oCkBAIC00MSw3ICs0MSw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMg
djg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IEdldFRlbXBsYXRlKCk7CiAgICAg
c3RhdGljIFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UqIHRvTmF0aXZlKHY4OjpI
YW5kbGU8djg6Ok9iamVjdD4gb2JqZWN0KQogICAgIHsKLSAgICAgICAgcmV0dXJuIHJlaW50ZXJw
cmV0X2Nhc3Q8VGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSo+KG9iamVjdC0+R2V0
QWxpZ25lZFBvaW50ZXJGcm9tSW50ZXJuYWxGaWVsZCh2OERPTVdyYXBwZXJPYmplY3RJbmRleCkp
OworICAgICAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxUZXN0U2VyaWFsaXplZFNjcmlwdFZh
bHVlSW50ZXJmYWNlKj4ob2JqZWN0LT5HZXRQb2ludGVyRnJvbUludGVybmFsRmllbGQodjhET01X
cmFwcGVyT2JqZWN0SW5kZXgpKTsKICAgICB9CiAgICAgaW5saW5lIHN0YXRpYyB2ODo6SGFuZGxl
PHY4OjpPYmplY3Q+IHdyYXAoVGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZSosIHY4
OjpIYW5kbGU8djg6Ok9iamVjdD4gY3JlYXRpb25Db250ZXh0ID0gdjg6OkhhbmRsZTx2ODo6T2Jq
ZWN0PigpLCB2ODo6SXNvbGF0ZSogPSAwKTsKICAgICBzdGF0aWMgdm9pZCBkZXJlZk9iamVjdCh2
b2lkKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9OUFY4T2JqZWN0
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L05QVjhPYmplY3QuY3BwCmluZGV4IDJm
MjczZTEyYzUyMjZkYjc2ZjQzYmM2MzNlMDdmNDE0NTYxMDUxOTguLjljZjllNWZhZGNhZmI4OWZi
MTViZThmMmM1MTE0NmQzZGIxMmQzOTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L05QVjhPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L05Q
VjhPYmplY3QuY3BwCkBAIC0xMjAsNyArMTIwLDcgQEAgc3RhdGljIHY4OjpMb2NhbDx2ODo6U3Ry
aW5nPiBucElkZW50aWZpZXJUb1Y4SWRlbnRpZmllcihOUElkZW50aWZpZXIgbmFtZSkKIAogTlBP
YmplY3QqIHY4T2JqZWN0VG9OUE9iamVjdCh2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IG9iamVjdCkK
IHsKLSAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxOUE9iamVjdCo+KG9iamVjdC0+R2V0QWxp
Z25lZFBvaW50ZXJGcm9tSW50ZXJuYWxGaWVsZCh2OERPTVdyYXBwZXJPYmplY3RJbmRleCkpOyAK
KyAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxOUE9iamVjdCo+KG9iamVjdC0+R2V0UG9pbnRl
ckZyb21JbnRlcm5hbEZpZWxkKHY4RE9NV3JhcHBlck9iamVjdEluZGV4KSk7IAogfQogCiBzdGF0
aWMgTlBDbGFzcyBWOE5QT2JqZWN0Q2xhc3MgPSB7IE5QX0NMQVNTX1NUUlVDVF9WRVJTSU9OLApA
QCAtMTM1LDcgKzEzNSw3IEBAIE5QT2JqZWN0KiBucENyZWF0ZVY4U2NyaXB0T2JqZWN0KE5QUCBu
cHAsIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gb2JqZWN0LCBET01XaW5kCiB7CiAgICAgLy8gQ2hl
Y2sgdG8gc2VlIGlmIHRoaXMgb2JqZWN0IGlzIGFscmVhZHkgd3JhcHBlZC4KICAgICBpZiAob2Jq
ZWN0LT5JbnRlcm5hbEZpZWxkQ291bnQoKSA9PSBucE9iamVjdEludGVybmFsRmllbGRDb3VudCkg
ewotICAgICAgICBXcmFwcGVyVHlwZUluZm8qIHR5cGVJbmZvID0gc3RhdGljX2Nhc3Q8V3JhcHBl
clR5cGVJbmZvKj4ob2JqZWN0LT5HZXRBbGlnbmVkUG9pbnRlckZyb21JbnRlcm5hbEZpZWxkKHY4
RE9NV3JhcHBlclR5cGVJbmRleCkpOworICAgICAgICBXcmFwcGVyVHlwZUluZm8qIHR5cGVJbmZv
ID0gc3RhdGljX2Nhc3Q8V3JhcHBlclR5cGVJbmZvKj4ob2JqZWN0LT5HZXRQb2ludGVyRnJvbUlu
dGVybmFsRmllbGQodjhET01XcmFwcGVyVHlwZUluZGV4KSk7CiAgICAgICAgIGlmICh0eXBlSW5m
byA9PSBucE9iamVjdFR5cGVJbmZvKCkpIHsKIAogICAgICAgICAgICAgTlBPYmplY3QqIHJldHVy
blZhbHVlID0gdjhPYmplY3RUb05QT2JqZWN0KG9iamVjdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy92OC9WOENvbGxlY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L1Y4Q29sbGVjdGlvbi5oCmluZGV4IGY3MzlmNTBiYzYyYWZhYjg2NmQ3YmYyZmY1MWUx
M2M0ZmUzZDIwODIuLmZjODBhNWE3ZTE0YTVmMmI3ZDQxYTcwY2Q3NmRiYTZlYTExZWEwODUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4Q29sbGVjdGlvbi5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4Q29sbGVjdGlvbi5oCkBAIC01MCw3ICs1MCw3
IEBAIHRlbXBsYXRlPGNsYXNzIFQ+IHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gZ2V0VjhP
YmplY3QoVCogaW1wbGVtZW50YXRpb24sIHY4CiAKIHRlbXBsYXRlPGNsYXNzIENvbGxlY3Rpb24+
IHN0YXRpYyBDb2xsZWN0aW9uKiB0b05hdGl2ZUNvbGxlY3Rpb24odjg6OkxvY2FsPHY4OjpPYmpl
Y3Q+IG9iamVjdCkKIHsKLSAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxDb2xsZWN0aW9uKj4o
b2JqZWN0LT5HZXRBbGlnbmVkUG9pbnRlckZyb21JbnRlcm5hbEZpZWxkKHY4RE9NV3JhcHBlck9i
amVjdEluZGV4KSk7CisgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8Q29sbGVjdGlvbio+KG9i
amVjdC0+R2V0UG9pbnRlckZyb21JbnRlcm5hbEZpZWxkKHY4RE9NV3JhcHBlck9iamVjdEluZGV4
KSk7CiB9CiAKIHRlbXBsYXRlPGNsYXNzIFQ+IHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4g
Z2V0VjhPYmplY3QoUGFzc1JlZlB0cjxUPiBpbXBsZW1lbnRhdGlvbiwgdjg6OkhhbmRsZTx2ODo6
T2JqZWN0PiBjcmVhdGlvbkNvbnRleHQsIHY4OjpJc29sYXRlKiBpc29sYXRlKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XaW5kb3dTaGVsbC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERPTVdpbmRvd1NoZWxsLmNwcAppbmRleCA5NGVlZThl
NTRiODUwZmY5ZjM3YzZiNjlhMWRiYmZjYmFjNzIxZjQ1Li4wMmIzNDdkYzI3YjdlNmFiOTAzMzJi
YTJjZDdkYWU5NjYzNjQ1OWZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92
OC9WOERPTVdpbmRvd1NoZWxsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9W
OERPTVdpbmRvd1NoZWxsLmNwcApAQCAtMTcxLDEyICsxNzEsMTIgQEAgc3RhdGljIHZvaWQgY2hl
Y2tEb2N1bWVudFdyYXBwZXIodjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyLCBEb2N1bWVu
dCogZG9jdW0KIAogc3RhdGljIHZvaWQgc2V0SXNvbGF0ZWRXb3JsZEZpZWxkKFY4RE9NV2luZG93
U2hlbGwqIHNoZWxsLCB2ODo6TG9jYWw8djg6OkNvbnRleHQ+IGNvbnRleHQpCiB7Ci0gICAgdG9J
bm5lckdsb2JhbE9iamVjdChjb250ZXh0KS0+U2V0QWxpZ25lZFBvaW50ZXJJbkludGVybmFsRmll
bGQoVjhET01XaW5kb3c6OmVudGVyZWRJc29sYXRlZFdvcmxkSW5kZXgsIHNoZWxsKTsKKyAgICB0
b0lubmVyR2xvYmFsT2JqZWN0KGNvbnRleHQpLT5TZXRQb2ludGVySW5JbnRlcm5hbEZpZWxkKFY4
RE9NV2luZG93OjplbnRlcmVkSXNvbGF0ZWRXb3JsZEluZGV4LCBzaGVsbCk7CiB9CiAKIFY4RE9N
V2luZG93U2hlbGwqIFY4RE9NV2luZG93U2hlbGw6OmVudGVyZWRJc29sYXRlZFdvcmxkQ29udGV4
dCgpCiB7Ci0gICAgcmV0dXJuIHN0YXRpY19jYXN0PFY4RE9NV2luZG93U2hlbGwqPih0b0lubmVy
R2xvYmFsT2JqZWN0KHY4OjpDb250ZXh0OjpHZXRFbnRlcmVkKCkpLT5HZXRBbGlnbmVkUG9pbnRl
ckZyb21JbnRlcm5hbEZpZWxkKFY4RE9NV2luZG93OjplbnRlcmVkSXNvbGF0ZWRXb3JsZEluZGV4
KSk7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PFY4RE9NV2luZG93U2hlbGwqPih0b0lubmVyR2xv
YmFsT2JqZWN0KHY4OjpDb250ZXh0OjpHZXRFbnRlcmVkKCkpLT5HZXRQb2ludGVyRnJvbUludGVy
bmFsRmllbGQoVjhET01XaW5kb3c6OmVudGVyZWRJc29sYXRlZFdvcmxkSW5kZXgpKTsKIH0KIAog
c3RhdGljIHZvaWQgc2V0SW5qZWN0ZWRTY3JpcHRDb250ZXh0RGVidWdJZCh2ODo6SGFuZGxlPHY4
OjpDb250ZXh0PiB0YXJnZXRDb250ZXh0LCBpbnQgZGVidWdJZCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy92OC9WOERPTVdyYXBwZXIuY3BwCmluZGV4IGUxMDk5NzcwNzY1MjM3ODIxODk0ZWE3
MWE2ZmY4M2E1N2ZkNGUzNzkuLmFhYzk1ZGJlZTJhM2MyMDViZTFjMDMxNTI0MDkyZDljMWYzNWJi
NDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmNwcApAQCAt
MTU3LDcgKzE1Nyw3IEBAIGJvb2wgVjhET01XcmFwcGVyOjppc1dyYXBwZXJPZlR5cGUodjg6Okhh
bmRsZTx2ODo6VmFsdWU+IHZhbHVlLCBXcmFwcGVyVHlwZUluZm8qCiAgICAgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IHdyYXBwZXIgPSBvYmplY3QtPkdldEludGVybmFsRmllbGQodjhET01XcmFwcGVy
T2JqZWN0SW5kZXgpOwogICAgIEFTU0VSVF9VTlVTRUQod3JhcHBlciwgd3JhcHBlci0+SXNOdW1i
ZXIoKSB8fCB3cmFwcGVyLT5Jc0V4dGVybmFsKCkpOwogCi0gICAgV3JhcHBlclR5cGVJbmZvKiB0
eXBlSW5mbyA9IHN0YXRpY19jYXN0PFdyYXBwZXJUeXBlSW5mbyo+KG9iamVjdC0+R2V0QWxpZ25l
ZFBvaW50ZXJGcm9tSW50ZXJuYWxGaWVsZCh2OERPTVdyYXBwZXJUeXBlSW5kZXgpKTsKKyAgICBX
cmFwcGVyVHlwZUluZm8qIHR5cGVJbmZvID0gc3RhdGljX2Nhc3Q8V3JhcHBlclR5cGVJbmZvKj4o
b2JqZWN0LT5HZXRQb2ludGVyRnJvbUludGVybmFsRmllbGQodjhET01XcmFwcGVyVHlwZUluZGV4
KSk7CiAgICAgcmV0dXJuIHR5cGVJbmZvID09IHR5cGU7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5oIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvVjhET01XcmFwcGVyLmgKaW5kZXggODI0YzIzOWVmZjc1YWM1ZGQ4MWRjMDNiYTJk
NjVhMTU3MGM1ZjVjMS4uYWI2YzJjZDQ4NWI3Njg5ZGUyYzk5M2MxNzc4YTY2MTUyOWNkZjJlNCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmgKQEAgLTY5LDE2ICs2
OSwxNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHN0YXRpYyB2b2lkIHNldERPTVdy
YXBwZXIodjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBvYmplY3QsIFdyYXBwZXJUeXBlSW5mbyogdHlw
ZSwgdm9pZCogY3B0cikKICAgICAgICAgewogICAgICAgICAgICAgQVNTRVJUKG9iamVjdC0+SW50
ZXJuYWxGaWVsZENvdW50KCkgPj0gMik7Ci0gICAgICAgICAgICBvYmplY3QtPlNldEFsaWduZWRQ
b2ludGVySW5JbnRlcm5hbEZpZWxkKHY4RE9NV3JhcHBlck9iamVjdEluZGV4LCBjcHRyKTsKLSAg
ICAgICAgICAgIG9iamVjdC0+U2V0QWxpZ25lZFBvaW50ZXJJbkludGVybmFsRmllbGQodjhET01X
cmFwcGVyVHlwZUluZGV4LCB0eXBlKTsKKyAgICAgICAgICAgIG9iamVjdC0+U2V0UG9pbnRlcklu
SW50ZXJuYWxGaWVsZCh2OERPTVdyYXBwZXJPYmplY3RJbmRleCwgY3B0cik7CisgICAgICAgICAg
ICBvYmplY3QtPlNldFBvaW50ZXJJbkludGVybmFsRmllbGQodjhET01XcmFwcGVyVHlwZUluZGV4
LCB0eXBlKTsKICAgICAgICAgfQogCiAgICAgICAgIHN0YXRpYyB2b2lkIGNsZWFyRE9NV3JhcHBl
cih2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IG9iamVjdCwgV3JhcHBlclR5cGVJbmZvKiB0eXBlKQog
ICAgICAgICB7CiAgICAgICAgICAgICBBU1NFUlQob2JqZWN0LT5JbnRlcm5hbEZpZWxkQ291bnQo
KSA+PSAyKTsKICAgICAgICAgICAgIEFTU0VSVCh0eXBlKTsKLSAgICAgICAgICAgIG9iamVjdC0+
U2V0QWxpZ25lZFBvaW50ZXJJbkludGVybmFsRmllbGQodjhET01XcmFwcGVyVHlwZUluZGV4LCB0
eXBlKTsKLSAgICAgICAgICAgIG9iamVjdC0+U2V0QWxpZ25lZFBvaW50ZXJJbkludGVybmFsRmll
bGQodjhET01XcmFwcGVyT2JqZWN0SW5kZXgsIDApOworICAgICAgICAgICAgb2JqZWN0LT5TZXRQ
b2ludGVySW5JbnRlcm5hbEZpZWxkKHY4RE9NV3JhcHBlclR5cGVJbmRleCwgdHlwZSk7CisgICAg
ICAgICAgICBvYmplY3QtPlNldFBvaW50ZXJJbkludGVybmFsRmllbGQodjhET01XcmFwcGVyT2Jq
ZWN0SW5kZXgsIDApOwogICAgICAgICB9CiAKICAgICAgICAgc3RhdGljIHY4OjpIYW5kbGU8djg6
Ok9iamVjdD4gbG9va3VwRE9NV3JhcHBlcih2ODo6SGFuZGxlPHY4OjpGdW5jdGlvblRlbXBsYXRl
PiBmdW5jdGlvblRlbXBsYXRlLCB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IG9iamVjdCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1dyYXBwZXJUeXBlSW5mby5oIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvV3JhcHBlclR5cGVJbmZvLmgKaW5kZXggZWJlYzJkZTAy
ODMwYmE5N2M3N2MxZmQwYmUxNzFiNzkwMDgxYjBjMC4uMGNiNGI5NTliOGI5NmM1NWJhNzVkN2Zm
OGU3NjdhNjMyNDkxMjcwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvdjgv
V3JhcHBlclR5cGVJbmZvLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvV3JhcHBl
clR5cGVJbmZvLmgKQEAgLTEyMiwxMyArMTIyLDEzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAg
ICBpbmxpbmUgdm9pZCogdG9OYXRpdmUodjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBvYmplY3QpCiAg
ICAgewogICAgICAgICBBU1NFUlQob2JqZWN0LT5JbnRlcm5hbEZpZWxkQ291bnQoKSA+PSB2OERP
TVdyYXBwZXJPYmplY3RJbmRleCk7Ci0gICAgICAgIHJldHVybiBvYmplY3QtPkdldEFsaWduZWRQ
b2ludGVyRnJvbUludGVybmFsRmllbGQodjhET01XcmFwcGVyT2JqZWN0SW5kZXgpOworICAgICAg
ICByZXR1cm4gb2JqZWN0LT5HZXRQb2ludGVyRnJvbUludGVybmFsRmllbGQodjhET01XcmFwcGVy
T2JqZWN0SW5kZXgpOwogICAgIH0KIAogICAgIGlubGluZSBXcmFwcGVyVHlwZUluZm8qIHRvV3Jh
cHBlclR5cGVJbmZvKHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gb2JqZWN0KQogICAgIHsKICAgICAg
ICAgQVNTRVJUKG9iamVjdC0+SW50ZXJuYWxGaWVsZENvdW50KCkgPj0gdjhET01XcmFwcGVyVHlw
ZUluZGV4KTsKLSAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFdyYXBwZXJUeXBlSW5mbyo+KG9i
amVjdC0+R2V0QWxpZ25lZFBvaW50ZXJGcm9tSW50ZXJuYWxGaWVsZCh2OERPTVdyYXBwZXJUeXBl
SW5kZXgpKTsKKyAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFdyYXBwZXJUeXBlSW5mbyo+KG9i
amVjdC0+R2V0UG9pbnRlckZyb21JbnRlcm5hbEZpZWxkKHY4RE9NV3JhcHBlclR5cGVJbmRleCkp
OwogICAgIH0KIAogfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>