<?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>85329</bug_id>
          
          <creation_ts>2012-05-01 17:44:02 -0700</creation_ts>
          <short_desc>[V8] Add an Isolate parameter to setJSWrapperForXXX()</short_desc>
          <delta_ts>2012-05-01 23:06:23 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore JavaScript</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>84074</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kentaro Hara">haraken</reporter>
          <assigned_to name="Kentaro Hara">haraken</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>613834</commentid>
    <comment_count>0</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-05-01 17:44:02 -0700</bug_when>
    <thetext>The objective is to pass Isolate around in V8 bindings. In this bug we add an Isolate parameter to setJSWrapperForXXX() and pass Isolate in CodeGeneratorV8.pm. I&apos;ll pass Isolate in custom bindings in a follow-up patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>613836</commentid>
    <comment_count>1</comment_count>
      <attachid>139718</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-05-01 17:48:35 -0700</bug_when>
    <thetext>Created attachment 139718
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>613975</commentid>
    <comment_count>2</comment_count>
      <attachid>139718</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-01 22:34:56 -0700</bug_when>
    <thetext>Comment on attachment 139718
Patch

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

&gt; Source/WebCore/bindings/v8/V8DOMWrapper.h:158
&gt; -    void V8DOMWrapper::setJSWrapperForDOMObject(PassRefPtr&lt;T&gt; object, v8::Persistent&lt;v8::Object&gt; wrapper)
&gt; +    void V8DOMWrapper::setJSWrapperForDOMObject(PassRefPtr&lt;T&gt; object, v8::Persistent&lt;v8::Object&gt; wrapper, v8::Isolate* isolate)

If I were writing these patches, I probably would have made v8::Isolate the first argument to mirror ExecState in JSC, but that probably doesn&apos;t play nicely with having the isolate be optional.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>613977</commentid>
    <comment_count>3</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-05-01 22:36:38 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; If I were writing these patches, I probably would have made v8::Isolate the first argument to mirror ExecState in JSC, but that probably doesn&apos;t play nicely with having the isolate be optional.

Yeah, we put the Isolate in the last argument to make it optional.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>614007</commentid>
    <comment_count>4</comment_count>
      <attachid>139718</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-01 23:06:19 -0700</bug_when>
    <thetext>Comment on attachment 139718
Patch

Clearing flags on attachment: 139718

Committed r115797: &lt;http://trac.webkit.org/changeset/115797&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>614009</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-01 23:06:23 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>139718</attachid>
            <date>2012-05-01 17:48:35 -0700</date>
            <delta_ts>2012-05-01 23:06:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-85329-20120501174834.patch</filename>
            <type>text/plain</type>
            <size>19949</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE1NjU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDE1N2Q2YzA2MDA2YzNm
ZjE3NzY1NWI0YmZmMTNmYTViNWFlNzVmYi4uYzg4ZGQ2ZjVjM2NkY2Q0N2Q0NzA5MzVhYjBmMDI4
N2RjODI2OTljMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYwIEBACisyMDEyLTA1LTAxICBLZW50
YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KKworICAgICAgICBbVjhdIEFkZCBhbiBJ
c29sYXRlIHBhcmFtZXRlciB0byBzZXRKU1dyYXBwZXJGb3JYWFgoKQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODUzMjkKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgb2JqZWN0aXZlIGlzIHRvIHBhc3Mg
SXNvbGF0ZSBhcm91bmQgaW4gVjggYmluZGluZ3MuCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBh
biBJc29sYXRlIHBhcmFtZXRlciB0byBzZXRKU1dyYXBwZXJGb3JYWFgoKQorICAgICAgICBhbmQg
cGFzc2VzIElzb2xhdGUgdG8gc2V0SlNXcmFwcGVyRm9yWFhYKCkgaW4gQ29kZUdlbmVyYXRvclY4
LnBtLgorICAgICAgICBJJ2xsIHBhc3MgSXNvbGF0ZSB0byBzZXRKU1dyYXBwZXJGb3JYWFgoKSBp
biBjdXN0b20gYmluZGluZ3MKKyAgICAgICAgaW4gYSBmb2xsb3ctdXAgcGF0Y2guCisKKyAgICAg
ICAgTm8gdGVzdHMuIE5vIGNoYW5nZSBpbiBiZWhhdmlvci4KKworICAgICAgICAqIGJpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtOiBNb2RpZmllZCBhcyBkZXNjcmliZWQgYWJvdmUu
CisgICAgICAgIChHZW5lcmF0ZUNvbnN0cnVjdG9yQ2FsbGJhY2spOgorICAgICAgICAoR2VuZXJh
dGVFdmVudENvbnN0cnVjdG9yQ2FsbGJhY2spOgorICAgICAgICAoR2VuZXJhdGVOYW1lZENvbnN0
cnVjdG9yQ2FsbGJhY2spOgorICAgICAgICAoR2VuZXJhdGVUb1Y4Q29udmVydGVycyk6CisgICAg
ICAgICogYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4
RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9NTm9kZSk6CisgICAgICAgIChXZWJDb3JlOjpW
OERPTVdyYXBwZXI6OnNldEpTV3JhcHBlckZvckFjdGl2ZURPTU5vZGUpOgorICAgICAgICAqIGJp
bmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5oOgorICAgICAgICAoVjhET01XcmFwcGVyKToKKyAgICAg
ICAgKFdlYkNvcmU6OlY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9NT2JqZWN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yQWN0aXZlRE9NT2Jq
ZWN0KToKKworICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOEZsb2F0NjRBcnJh
eS5jcHA6IFVwZGF0ZWQgcnVuLWJpbmRpbmdzLXRlc3RzIHJlc3VsdHMuCisgICAgICAgIChXZWJD
b3JlOjpWOEZsb2F0NjRBcnJheTo6d3JhcFNsb3cpOgorICAgICAgICAqIGJpbmRpbmdzL3Njcmlw
dHMvdGVzdC9WOC9WOFRlc3RBY3RpdmVET01PYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
VjhUZXN0QWN0aXZlRE9NT2JqZWN0Ojp3cmFwU2xvdyk6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L1Y4L1Y4VGVzdEN1c3RvbU5hbWVkR2V0dGVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OlY4VGVzdEN1c3RvbU5hbWVkR2V0dGVyOjp3cmFwU2xvdyk6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEV2ZW50Q29uc3RydWN0b3IuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6VjhUZXN0RXZlbnRDb25zdHJ1Y3Rvcjo6Y29uc3RydWN0b3JDYWxsYmFjayk6Cisg
ICAgICAgIChXZWJDb3JlOjpWOFRlc3RFdmVudENvbnN0cnVjdG9yOjp3cmFwU2xvdyk6CisgICAg
ICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEV2ZW50VGFyZ2V0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlY4VGVzdEV2ZW50VGFyZ2V0Ojp3cmFwU2xvdyk6CisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEludGVyZmFjZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpWOFRlc3RJbnRlcmZhY2U6OmNvbnN0cnVjdG9yQ2FsbGJhY2spOgorICAgICAgICAo
V2ViQ29yZTo6VjhUZXN0SW50ZXJmYWNlOjp3cmFwU2xvdyk6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6VjhUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lcjo6d3JhcFNsb3cpOgorICAg
ICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3ROYW1lZENvbnN0cnVjdG9yLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlY4VGVzdE5hbWVkQ29uc3RydWN0b3JDb25zdHJ1Y3RvckNh
bGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlY4VGVzdE5hbWVkQ29uc3RydWN0b3I6OndyYXBT
bG93KToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0Tm9kZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpWOFRlc3ROb2RlOjpjb25zdHJ1Y3RvckNhbGxiYWNrKToKKyAg
ICAgICAgKFdlYkNvcmU6OlY4VGVzdE5vZGU6OndyYXBTbG93KToKKyAgICAgICAgKiBiaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4VGVz
dE9iajo6Y29uc3RydWN0b3JDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOFRlc3RPYmo6
OndyYXBTbG93KToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0U2Vy
aWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4VGVz
dFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZTo6Y29uc3RydWN0b3JDYWxsYmFjayk6Cisg
ICAgICAgIChXZWJDb3JlOjpWOFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2U6Ondy
YXBTbG93KToKKwogMjAxMi0wNC0zMCAgTmF0ZSBDaGFwaW4gIDxqYXBoZXRAY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIE1vdmUgbW9yZSBvZiBjb21taXR0aW5nIGFuZCBzdGFydGluZyB0byB3cml0
ZSBhIERvY3VtZW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JWOC5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29k
ZUdlbmVyYXRvclY4LnBtCmluZGV4IGY3MWMzYmI4YTA1NDg2Y2YyN2JlMmQ4MmZkNWI0NmFiYTFj
NGJmMTEuLjE1Zjk0MThhZjM3NjYzMDgxYzQxYjA4NDQxY2MwZjQ5NGE1ZWRmYzkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtCkBA
IC0xNzczLDcgKzE3NzMsNyBAQCBFTkQKICAgICBwdXNoKEBpbXBsQ29udGVudCwgPDxFTkQpOwog
CiAgICAgVjhET01XcmFwcGVyOjpzZXRET01XcmFwcGVyKHdyYXBwZXIsICZpbmZvLCBpbXBsLmdl
dCgpKTsKLSAgICBWOERPTVdyYXBwZXI6OnNldEpTV3JhcHBlckZvciR7RE9NT2JqZWN0fShpbXBs
LnJlbGVhc2UoKSwgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD46Ok5ldyh3cmFwcGVyKSk7Cisg
ICAgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3Ike0RPTU9iamVjdH0oaW1wbC5yZWxlYXNl
KCksIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+OjpOZXcod3JhcHBlciksIGFyZ3MuR2V0SXNv
bGF0ZSgpKTsKICAgICByZXR1cm4gYXJncy5Ib2xkZXIoKTsKIEVORAogCkBAIC0xODE4LDcgKzE4
MTgsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjgke2ltcGxDbGFzc05hbWV9Ojpjb25zdHJ1
Y3RvckNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudAogICAgIFJlZlB0cjwke2ltcGxDbGFzc05h
bWV9PiBldmVudCA9ICR7aW1wbENsYXNzTmFtZX06OmNyZWF0ZSh0eXBlLCBldmVudEluaXQpOwog
CiAgICAgVjhET01XcmFwcGVyOjpzZXRET01XcmFwcGVyKGFyZ3MuSG9sZGVyKCksICZpbmZvLCBl
dmVudC5nZXQoKSk7Ci0gICAgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01PYmplY3Qo
ZXZlbnQucmVsZWFzZSgpLCB2ODo6UGVyc2lzdGVudDx2ODo6T2JqZWN0Pjo6TmV3KGFyZ3MuSG9s
ZGVyKCkpKTsKKyAgICBWOERPTVdyYXBwZXI6OnNldEpTV3JhcHBlckZvckRPTU9iamVjdChldmVu
dC5yZWxlYXNlKCksIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+OjpOZXcoYXJncy5Ib2xkZXIo
KSksIGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICByZXR1cm4gYXJncy5Ib2xkZXIoKTsKIH0KIApA
QCAtMTk0OCw3ICsxOTQ4LDcgQEAgRU5ECiAgICAgcHVzaChAaW1wbENvbnRlbnQsIDw8RU5EKTsK
IAogICAgIFY4RE9NV3JhcHBlcjo6c2V0RE9NV3JhcHBlcih3cmFwcGVyLCAmVjgke2ltcGxDbGFz
c05hbWV9Q29uc3RydWN0b3I6OmluZm8sIGltcGwuZ2V0KCkpOwotICAgIFY4RE9NV3JhcHBlcjo6
c2V0SlNXcmFwcGVyRm9yJHtET01PYmplY3R9KGltcGwucmVsZWFzZSgpLCB2ODo6UGVyc2lzdGVu
dDx2ODo6T2JqZWN0Pjo6TmV3KHdyYXBwZXIpKTsKKyAgICBWOERPTVdyYXBwZXI6OnNldEpTV3Jh
cHBlckZvciR7RE9NT2JqZWN0fShpbXBsLnJlbGVhc2UoKSwgdjg6OlBlcnNpc3RlbnQ8djg6Ok9i
amVjdD46Ok5ldyh3cmFwcGVyKSwgYXJncy5HZXRJc29sYXRlKCkpOwogICAgIHJldHVybiBhcmdz
LkhvbGRlcigpOwogRU5ECiAKQEAgLTMxOTgsNyArMzE5OCw3IEBAIEVORAogRU5ECiAgICAgfQog
ICAgIHB1c2goQGltcGxDb250ZW50LCA8PEVORCk7Ci0gICAgVjhET01XcmFwcGVyOjpzZXRKU1dy
YXBwZXJGb3Ike2RvbU1hcE5hbWV9KGltcGwsIHdyYXBwZXJIYW5kbGUpOworICAgIFY4RE9NV3Jh
cHBlcjo6c2V0SlNXcmFwcGVyRm9yJHtkb21NYXBOYW1lfShpbXBsLCB3cmFwcGVySGFuZGxlLCBp
c29sYXRlKTsKICAgICByZXR1cm4gd3JhcHBlcjsKIH0KIEVORApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4RmxvYXQ2NEFycmF5LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOEZsb2F0NjRBcnJheS5jcHAK
aW5kZXggOTRiZTUxNTAwNjE1MjhkNTY2ZWIwOTkyY2Y2OTViZDJjYzQ1NzY2Zi4uODU4MWE4ZDY4
ZWZhMDZkNTIzMjY0YWQxN2UzN2UwMWJhMGI5ZDM1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4RmxvYXQ2NEFycmF5LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhGbG9hdDY0QXJyYXkuY3BwCkBA
IC0xMzIsNyArMTMyLDcgQEAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBWOEZsb2F0NjRBcnJheTo6
d3JhcFNsb3coUGFzc1JlZlB0cjxGbG9hdDY0QXJyYXk+IGltcGwsIHYKIAogICAgIGlmICghaGFz
RGVwZW5kZW50TGlmZXRpbWUpCiAgICAgICAgIHdyYXBwZXJIYW5kbGUuTWFya0luZGVwZW5kZW50
KCk7Ci0gICAgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01PYmplY3QoaW1wbCwgd3Jh
cHBlckhhbmRsZSk7CisgICAgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01PYmplY3Qo
aW1wbCwgd3JhcHBlckhhbmRsZSwgaXNvbGF0ZSk7CiAgICAgcmV0dXJuIHdyYXBwZXI7CiB9CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRl
c3RBY3RpdmVET01PYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90
ZXN0L1Y4L1Y4VGVzdEFjdGl2ZURPTU9iamVjdC5jcHAKaW5kZXggMzVlN2FkYzg3M2ZiM2YwY2I0
NTI5ZTA3MTY4NTU0MDI0YTVlNGNhMC4uNzQ5MDAwMDE3NjlmNWZlMzRkNjYwZjVkNWE5ZDNhNzZi
ODg3Y2M0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L1Y4L1Y4VGVzdEFjdGl2ZURPTU9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEFjdGl2ZURPTU9iamVjdC5jcHAKQEAgLTE4OCw3ICsx
ODgsNyBAQCB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IFY4VGVzdEFjdGl2ZURPTU9iamVjdDo6d3Jh
cFNsb3coUGFzc1JlZlB0cjxUZXN0QWN0aXZlRE9NTwogCiAgICAgaWYgKCFoYXNEZXBlbmRlbnRM
aWZldGltZSkKICAgICAgICAgd3JhcHBlckhhbmRsZS5NYXJrSW5kZXBlbmRlbnQoKTsKLSAgICBW
OERPTVdyYXBwZXI6OnNldEpTV3JhcHBlckZvckRPTU9iamVjdChpbXBsLCB3cmFwcGVySGFuZGxl
KTsKKyAgICBWOERPTVdyYXBwZXI6OnNldEpTV3JhcHBlckZvckRPTU9iamVjdChpbXBsLCB3cmFw
cGVySGFuZGxlLCBpc29sYXRlKTsKICAgICByZXR1cm4gd3JhcHBlcjsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEN1c3RvbU5h
bWVkR2V0dGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9W
OFRlc3RDdXN0b21OYW1lZEdldHRlci5jcHAKaW5kZXggZDNhNTg5YjBkMjc3YWM4ZjE0NjNkZDkx
NGVkM2M3ZDA3MTA0NWQ0OC4uMjBlYjVhMTFhYzI5YjBhZTc4ZTRlODhkYThhN2NhNjI0Mzg1YTNl
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4
VGVzdEN1c3RvbU5hbWVkR2V0dGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvVjgvVjhUZXN0Q3VzdG9tTmFtZWRHZXR0ZXIuY3BwCkBAIC0xMjIsNyArMTIy
LDcgQEAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBWOFRlc3RDdXN0b21OYW1lZEdldHRlcjo6d3Jh
cFNsb3coUGFzc1JlZlB0cjxUZXN0Q3VzdG9tTmEKIAogICAgIGlmICghaGFzRGVwZW5kZW50TGlm
ZXRpbWUpCiAgICAgICAgIHdyYXBwZXJIYW5kbGUuTWFya0luZGVwZW5kZW50KCk7Ci0gICAgVjhE
T01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01PYmplY3QoaW1wbCwgd3JhcHBlckhhbmRsZSk7
CisgICAgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01PYmplY3QoaW1wbCwgd3JhcHBl
ckhhbmRsZSwgaXNvbGF0ZSk7CiAgICAgcmV0dXJuIHdyYXBwZXI7CiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RFdmVudENvbnN0
cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRl
c3RFdmVudENvbnN0cnVjdG9yLmNwcAppbmRleCA3MjdlMDJiYzc4YmRhMDVjYWM3MzQ2ZmRlYzE3
MjA4MDNjZTliZWEzLi5mZWIyMmFlZTlhMjIwMTUwYmQ4NGQ3MTEyNTcwMDcxZDgyNzgyMTBmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0
RXZlbnRDb25zdHJ1Y3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Y4L1Y4VGVzdEV2ZW50Q29uc3RydWN0b3IuY3BwCkBAIC04Niw3ICs4Niw3IEBAIHY4
OjpIYW5kbGU8djg6OlZhbHVlPiBWOFRlc3RFdmVudENvbnN0cnVjdG9yOjpjb25zdHJ1Y3RvckNh
bGxiYWNrKGNvbnN0IHY4OjpBcmd1CiAgICAgUmVmUHRyPFRlc3RFdmVudENvbnN0cnVjdG9yPiBl
dmVudCA9IFRlc3RFdmVudENvbnN0cnVjdG9yOjpjcmVhdGUodHlwZSwgZXZlbnRJbml0KTsKIAog
ICAgIFY4RE9NV3JhcHBlcjo6c2V0RE9NV3JhcHBlcihhcmdzLkhvbGRlcigpLCAmaW5mbywgZXZl
bnQuZ2V0KCkpOwotICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9NT2JqZWN0KGV2
ZW50LnJlbGVhc2UoKSwgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD46Ok5ldyhhcmdzLkhvbGRl
cigpKSk7CisgICAgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01PYmplY3QoZXZlbnQu
cmVsZWFzZSgpLCB2ODo6UGVyc2lzdGVudDx2ODo6T2JqZWN0Pjo6TmV3KGFyZ3MuSG9sZGVyKCkp
LCBhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgcmV0dXJuIGFyZ3MuSG9sZGVyKCk7CiB9CiAKQEAg
LTE1OCw3ICsxNTgsNyBAQCB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IFY4VGVzdEV2ZW50Q29uc3Ry
dWN0b3I6OndyYXBTbG93KFBhc3NSZWZQdHI8VGVzdEV2ZW50Q29ucwogCiAgICAgaWYgKCFoYXNE
ZXBlbmRlbnRMaWZldGltZSkKICAgICAgICAgd3JhcHBlckhhbmRsZS5NYXJrSW5kZXBlbmRlbnQo
KTsKLSAgICBWOERPTVdyYXBwZXI6OnNldEpTV3JhcHBlckZvckRPTU9iamVjdChpbXBsLCB3cmFw
cGVySGFuZGxlKTsKKyAgICBWOERPTVdyYXBwZXI6OnNldEpTV3JhcHBlckZvckRPTU9iamVjdChp
bXBsLCB3cmFwcGVySGFuZGxlLCBpc29sYXRlKTsKICAgICByZXR1cm4gd3JhcHBlcjsKIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVz
dEV2ZW50VGFyZ2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9W
OC9WOFRlc3RFdmVudFRhcmdldC5jcHAKaW5kZXggMWVkZmVjNDhiZDE5Zjc5Yzc0MDQ0MTdkM2Ux
ZTU3OTNmZTRkNmI1Ny4uN2NhZDJhMzNlOWQxOTM5NjZjODYwZWQzN2MyYzRkOGRjNjg2Njc4YSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVz
dEV2ZW50VGFyZ2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvVjgvVjhUZXN0RXZlbnRUYXJnZXQuY3BwCkBAIC0xODUsNyArMTg1LDcgQEAgdjg6OkhhbmRs
ZTx2ODo6T2JqZWN0PiBWOFRlc3RFdmVudFRhcmdldDo6d3JhcFNsb3coUGFzc1JlZlB0cjxUZXN0
RXZlbnRUYXJnZXQ+IGkKIAogICAgIGlmICghaGFzRGVwZW5kZW50TGlmZXRpbWUpCiAgICAgICAg
IHdyYXBwZXJIYW5kbGUuTWFya0luZGVwZW5kZW50KCk7Ci0gICAgVjhET01XcmFwcGVyOjpzZXRK
U1dyYXBwZXJGb3JET01PYmplY3QoaW1wbCwgd3JhcHBlckhhbmRsZSk7CisgICAgVjhET01XcmFw
cGVyOjpzZXRKU1dyYXBwZXJGb3JET01PYmplY3QoaW1wbCwgd3JhcHBlckhhbmRsZSwgaXNvbGF0
ZSk7CiAgICAgcmV0dXJuIHdyYXBwZXI7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RJbnRlcmZhY2UuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEludGVyZmFjZS5jcHAKaW5kZXgg
ZTIwNThiOTdmOWNjNmFjYWIzMjY4YzU0MGQ5MTFkZmIwZTViOTdmMS4uODRmOGQ4M2Q3OGVlNDdh
NDdkZGU0OGU4ZmI3YTExODY0YWRjMTVmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEludGVyZmFjZS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEludGVyZmFjZS5jcHAKQEAgLTIy
OSw3ICsyMjksNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhUZXN0SW50ZXJmYWNlOjpjb25z
dHJ1Y3RvckNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmCiAgICAgICAgIGdvdG8gZmFpbDsK
IAogICAgIFY4RE9NV3JhcHBlcjo6c2V0RE9NV3JhcHBlcih3cmFwcGVyLCAmaW5mbywgaW1wbC5n
ZXQoKSk7Ci0gICAgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JBY3RpdmVET01PYmplY3Qo
aW1wbC5yZWxlYXNlKCksIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+OjpOZXcod3JhcHBlcikp
OworICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yQWN0aXZlRE9NT2JqZWN0KGltcGwu
cmVsZWFzZSgpLCB2ODo6UGVyc2lzdGVudDx2ODo6T2JqZWN0Pjo6TmV3KHdyYXBwZXIpLCBhcmdz
LkdldElzb2xhdGUoKSk7CiAgICAgcmV0dXJuIGFyZ3MuSG9sZGVyKCk7CiAgIGZhaWw6CiAgICAg
cmV0dXJuIHRocm93RXJyb3IoZWMpOwpAQCAtMzE3LDcgKzMxNyw3IEBAIHY4OjpIYW5kbGU8djg6
Ok9iamVjdD4gVjhUZXN0SW50ZXJmYWNlOjp3cmFwU2xvdyhQYXNzUmVmUHRyPFRlc3RJbnRlcmZh
Y2U+IGltcGwsCiAKICAgICBpZiAoIWhhc0RlcGVuZGVudExpZmV0aW1lKQogICAgICAgICB3cmFw
cGVySGFuZGxlLk1hcmtJbmRlcGVuZGVudCgpOwotICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFw
cGVyRm9yQWN0aXZlRE9NT2JqZWN0KGltcGwsIHdyYXBwZXJIYW5kbGUpOworICAgIFY4RE9NV3Jh
cHBlcjo6c2V0SlNXcmFwcGVyRm9yQWN0aXZlRE9NT2JqZWN0KGltcGwsIHdyYXBwZXJIYW5kbGUs
IGlzb2xhdGUpOwogICAgIHJldHVybiB3cmFwcGVyOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0TWVkaWFRdWVyeUxpc3RMaXN0
ZW5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0
TWVkaWFRdWVyeUxpc3RMaXN0ZW5lci5jcHAKaW5kZXggZjEyNTUyYTYyMTBjZDM1ZTUyZTg3Yzlj
OTgxOWYxNjI0ZDdjNzdlMy4uYjUxNWI0MzQ2ZGU4MTczY2E0MGZjMTRmMWE1NjI1ZDJmMTk1ZGI5
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4
VGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmNwcApAQCAt
MTIyLDcgKzEyMiw3IEBAIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gVjhUZXN0TWVkaWFRdWVyeUxp
c3RMaXN0ZW5lcjo6d3JhcFNsb3coUGFzc1JlZlB0cjxUZXN0TWVkCiAKICAgICBpZiAoIWhhc0Rl
cGVuZGVudExpZmV0aW1lKQogICAgICAgICB3cmFwcGVySGFuZGxlLk1hcmtJbmRlcGVuZGVudCgp
OwotICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9NT2JqZWN0KGltcGwsIHdyYXBw
ZXJIYW5kbGUpOworICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9NT2JqZWN0KGlt
cGwsIHdyYXBwZXJIYW5kbGUsIGlzb2xhdGUpOwogICAgIHJldHVybiB3cmFwcGVyOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0
TmFtZWRDb25zdHJ1Y3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvVjgvVjhUZXN0TmFtZWRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMDQ2ZDMwOTY1ZjcwN2U1MmVi
ZTc1ZmU0ZWE2NDdhYzI2ZmQ2Njc2NS4uNTNjM2M0YjY0NzkyYmMzOWU5OTIwZTM3NmVkNzRhYTdm
MTY0OGNjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0
L1Y4L1Y4VGVzdE5hbWVkQ29uc3RydWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3ROYW1lZENvbnN0cnVjdG9yLmNwcApAQCAtNzcsNyAr
NzcsNyBAQCBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4VGVzdE5hbWVkQ29uc3RydWN0
b3JDb25zdHJ1Y3RvckNhbGxiYWNrKGNvbnN0IHY4OgogICAgICAgICBnb3RvIGZhaWw7CiAKICAg
ICBWOERPTVdyYXBwZXI6OnNldERPTVdyYXBwZXIod3JhcHBlciwgJlY4VGVzdE5hbWVkQ29uc3Ry
dWN0b3JDb25zdHJ1Y3Rvcjo6aW5mbywgaW1wbC5nZXQoKSk7Ci0gICAgVjhET01XcmFwcGVyOjpz
ZXRKU1dyYXBwZXJGb3JBY3RpdmVET01PYmplY3QoaW1wbC5yZWxlYXNlKCksIHY4OjpQZXJzaXN0
ZW50PHY4OjpPYmplY3Q+OjpOZXcod3JhcHBlcikpOworICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNX
cmFwcGVyRm9yQWN0aXZlRE9NT2JqZWN0KGltcGwucmVsZWFzZSgpLCB2ODo6UGVyc2lzdGVudDx2
ODo6T2JqZWN0Pjo6TmV3KHdyYXBwZXIpLCBhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgcmV0dXJu
IGFyZ3MuSG9sZGVyKCk7CiAgIGZhaWw6CiAgICAgcmV0dXJuIHRocm93RXJyb3IoZWMpOwpAQCAt
MTY2LDcgKzE2Niw3IEBAIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gVjhUZXN0TmFtZWRDb25zdHJ1
Y3Rvcjo6d3JhcFNsb3coUGFzc1JlZlB0cjxUZXN0TmFtZWRDb25zCiAKICAgICBpZiAoIWhhc0Rl
cGVuZGVudExpZmV0aW1lKQogICAgICAgICB3cmFwcGVySGFuZGxlLk1hcmtJbmRlcGVuZGVudCgp
OwotICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yQWN0aXZlRE9NT2JqZWN0KGltcGws
IHdyYXBwZXJIYW5kbGUpOworICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yQWN0aXZl
RE9NT2JqZWN0KGltcGwsIHdyYXBwZXJIYW5kbGUsIGlzb2xhdGUpOwogICAgIHJldHVybiB3cmFw
cGVyOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvVjgvVjhUZXN0Tm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvVjgvVjhUZXN0Tm9kZS5jcHAKaW5kZXggN2IyZDJhNzc4YzAwMGRmOGMyNmI0MWQxZDVlYmI1
OGRjZDA5NjdlYy4uZGM0OTQzYzQxZGE5ZGI5NTY0NThlMDgxY2UwZTgyOWJiYWQ4ZTE1YyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE5v
ZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRl
c3ROb2RlLmNwcApAQCAtNTQsNyArNTQsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhUZXN0
Tm9kZTo6Y29uc3RydWN0b3JDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogICAg
IHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IGFyZ3MuSG9sZGVyKCk7CiAKICAgICBW
OERPTVdyYXBwZXI6OnNldERPTVdyYXBwZXIod3JhcHBlciwgJmluZm8sIGltcGwuZ2V0KCkpOwot
ICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9NTm9kZShpbXBsLnJlbGVhc2UoKSwg
djg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD46Ok5ldyh3cmFwcGVyKSk7CisgICAgVjhET01XcmFw
cGVyOjpzZXRKU1dyYXBwZXJGb3JET01Ob2RlKGltcGwucmVsZWFzZSgpLCB2ODo6UGVyc2lzdGVu
dDx2ODo6T2JqZWN0Pjo6TmV3KHdyYXBwZXIpLCBhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgcmV0
dXJuIGFyZ3MuSG9sZGVyKCk7CiB9CiAKQEAgLTEzNCw3ICsxMzQsNyBAQCB2ODo6SGFuZGxlPHY4
OjpPYmplY3Q+IFY4VGVzdE5vZGU6OndyYXBTbG93KFBhc3NSZWZQdHI8VGVzdE5vZGU+IGltcGws
IHY4OjpJc29sYQogICAgIGlmICghaGFzRGVwZW5kZW50TGlmZXRpbWUpCiAgICAgICAgIHdyYXBw
ZXJIYW5kbGUuTWFya0luZGVwZW5kZW50KCk7CiAgICAgd3JhcHBlckhhbmRsZS5TZXRXcmFwcGVy
Q2xhc3NJZCh2OERPTVN1YnRyZWVDbGFzc0lkKTsKLSAgICBWOERPTVdyYXBwZXI6OnNldEpTV3Jh
cHBlckZvckRPTU5vZGUoaW1wbCwgd3JhcHBlckhhbmRsZSk7CisgICAgVjhET01XcmFwcGVyOjpz
ZXRKU1dyYXBwZXJGb3JET01Ob2RlKGltcGwsIHdyYXBwZXJIYW5kbGUsIGlzb2xhdGUpOwogICAg
IHJldHVybiB3cmFwcGVyOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0T2JqLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmouY3BwCmluZGV4IDVhNTUyNTFlZTYxMTI0ZjExYzgw
Y2NlNTUzNzM1YWUzMGI1ZGZmMGMuLjM4NWQ0NTdiNTM1YTMxNzIxZGNiMTYyNWFkNGQ4MGE3ZTM3
OTE1YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9W
OC9WOFRlc3RPYmouY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9WOC9WOFRlc3RPYmouY3BwCkBAIC0yMjQ4LDcgKzIyNDgsNyBAQCB2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gVjhUZXN0T2JqOjpjb25zdHJ1Y3RvckNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMm
IGFyZ3MpCiAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gYXJncy5Ib2xkZXIo
KTsKIAogICAgIFY4RE9NV3JhcHBlcjo6c2V0RE9NV3JhcHBlcih3cmFwcGVyLCAmaW5mbywgaW1w
bC5nZXQoKSk7Ci0gICAgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01PYmplY3QoaW1w
bC5yZWxlYXNlKCksIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+OjpOZXcod3JhcHBlcikpOwor
ICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9NT2JqZWN0KGltcGwucmVsZWFzZSgp
LCB2ODo6UGVyc2lzdGVudDx2ODo6T2JqZWN0Pjo6TmV3KHdyYXBwZXIpLCBhcmdzLkdldElzb2xh
dGUoKSk7CiAgICAgcmV0dXJuIGFyZ3MuSG9sZGVyKCk7CiB9CiAKQEAgLTI0MDEsNyArMjQwMSw3
IEBAIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gVjhUZXN0T2JqOjp3cmFwU2xvdyhQYXNzUmVmUHRy
PFRlc3RPYmo+IGltcGwsIHY4OjpJc29sYXRlCiAKICAgICBpZiAoIWhhc0RlcGVuZGVudExpZmV0
aW1lKQogICAgICAgICB3cmFwcGVySGFuZGxlLk1hcmtJbmRlcGVuZGVudCgpOwotICAgIFY4RE9N
V3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9NT2JqZWN0KGltcGwsIHdyYXBwZXJIYW5kbGUpOwor
ICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9NT2JqZWN0KGltcGwsIHdyYXBwZXJI
YW5kbGUsIGlzb2xhdGUpOwogICAgIHJldHVybiB3cmFwcGVyOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0U2VyaWFsaXplZFNj
cmlwdFZhbHVlSW50ZXJmYWNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9WOC9WOFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuY3BwCmluZGV4IGFh
OTE0OGZmYzkzNGYxNGIzYjNjMzBhYTAyYjY5NWViZTc3NzYwMTcuLmE5OWEwY2Y1NDgyZjcwYzE4
N2FhZDY2OWEzOTk5OGU3NmQ0YmQyODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2Uu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RT
ZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuY3BwCkBAIC0yMzUsNyArMjM1LDcgQEAgdjg6
OkhhbmRsZTx2ODo6VmFsdWU+IFY4VGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVyZmFjZTo6
Y29uc3RydWN0b3JDYWxsYmFjaygKICAgICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXBwZXIg
PSBhcmdzLkhvbGRlcigpOwogCiAgICAgVjhET01XcmFwcGVyOjpzZXRET01XcmFwcGVyKHdyYXBw
ZXIsICZpbmZvLCBpbXBsLmdldCgpKTsKLSAgICBWOERPTVdyYXBwZXI6OnNldEpTV3JhcHBlckZv
ckRPTU9iamVjdChpbXBsLnJlbGVhc2UoKSwgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD46Ok5l
dyh3cmFwcGVyKSk7CisgICAgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01PYmplY3Qo
aW1wbC5yZWxlYXNlKCksIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+OjpOZXcod3JhcHBlciks
IGFyZ3MuR2V0SXNvbGF0ZSgpKTsKICAgICByZXR1cm4gYXJncy5Ib2xkZXIoKTsKIH0KIApAQCAt
MzA1LDcgKzMwNSw3IEBAIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gVjhUZXN0U2VyaWFsaXplZFNj
cmlwdFZhbHVlSW50ZXJmYWNlOjp3cmFwU2xvdyhQYXNzUmVmUHRyCiAKICAgICBpZiAoIWhhc0Rl
cGVuZGVudExpZmV0aW1lKQogICAgICAgICB3cmFwcGVySGFuZGxlLk1hcmtJbmRlcGVuZGVudCgp
OwotICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9NT2JqZWN0KGltcGwsIHdyYXBw
ZXJIYW5kbGUpOworICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9NT2JqZWN0KGlt
cGwsIHdyYXBwZXJIYW5kbGUsIGlzb2xhdGUpOwogICAgIHJldHVybiB3cmFwcGVyOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmNwcAppbmRleCAyMzdhYzFj
MDIxZjJmNjk1YmZhMGVhZTVhODZmZjkyMWZkZGNmN2JkLi4wYWQ0ZTIyMTQ2M2Y1NGU3ZWVmMTA5
YzgzZGQ3MGZmNzBlMTYyZTYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92
OC9WOERPTVdyYXBwZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9N
V3JhcHBlci5jcHAKQEAgLTY4LDE4ICs2OCwxOCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
LXZvaWQgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01Ob2RlKFBhc3NSZWZQdHI8Tm9k
ZT4gbm9kZSwgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD4gd3JhcHBlcikKK3ZvaWQgVjhET01X
cmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01Ob2RlKFBhc3NSZWZQdHI8Tm9kZT4gbm9kZSwgdjg6
OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD4gd3JhcHBlciwgdjg6Oklzb2xhdGUqIGlzb2xhdGUpCiB7
CiAgICAgQVNTRVJUKG1heWJlRE9NV3JhcHBlcih3cmFwcGVyKSk7CiAgICAgQVNTRVJUKCFub2Rl
LT5pc0FjdGl2ZU5vZGUoKSk7Ci0gICAgZ2V0RE9NTm9kZU1hcCgpLnNldChub2RlLmxlYWtSZWYo
KSwgd3JhcHBlcik7CisgICAgZ2V0RE9NTm9kZU1hcChpc29sYXRlKS5zZXQobm9kZS5sZWFrUmVm
KCksIHdyYXBwZXIpOwogfQogCi12b2lkIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yQWN0
aXZlRE9NTm9kZShQYXNzUmVmUHRyPE5vZGU+IG5vZGUsIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmpl
Y3Q+IHdyYXBwZXIpCit2b2lkIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yQWN0aXZlRE9N
Tm9kZShQYXNzUmVmUHRyPE5vZGU+IG5vZGUsIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+IHdy
YXBwZXIsIHY4OjpJc29sYXRlKiBpc29sYXRlKQogewogICAgIEFTU0VSVChtYXliZURPTVdyYXBw
ZXIod3JhcHBlcikpOwogICAgIEFTU0VSVChub2RlLT5pc0FjdGl2ZU5vZGUoKSk7Ci0gICAgZ2V0
QWN0aXZlRE9NTm9kZU1hcCgpLnNldChub2RlLmxlYWtSZWYoKSwgd3JhcHBlcik7CisgICAgZ2V0
QWN0aXZlRE9NTm9kZU1hcChpc29sYXRlKS5zZXQobm9kZS5sZWFrUmVmKCksIHdyYXBwZXIpOwog
fQogCiB2ODo6TG9jYWw8djg6OkZ1bmN0aW9uPiBWOERPTVdyYXBwZXI6OmNvbnN0cnVjdG9yRm9y
VHlwZShXcmFwcGVyVHlwZUluZm8qIHR5cGUsIERPTVdpbmRvdyogd2luZG93KQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuaAppbmRleCAxNjMyNmI5NjZlOGUzMzlhMGQ1
OGYwZWMxZDRlZjIxYmQzMzY2MzllLi5iM2M5ZmY5ZDcyYzNkZjgwNTJkNzZhZWE3YWEwZTU5MjM0
NTM2NGVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBw
ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuaApAQCAt
MTA2LDEwICsxMDYsMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBzdGF0aWMgdjg6
OkxvY2FsPHY4OjpGdW5jdGlvbj4gY29uc3RydWN0b3JGb3JUeXBlKFdyYXBwZXJUeXBlSW5mbyos
IFdvcmtlckNvbnRleHQqKTsKICNlbmRpZgogCi0gICAgICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+
IHN0YXRpYyB2b2lkIHNldEpTV3JhcHBlckZvckRPTU9iamVjdChQYXNzUmVmUHRyPFQ+LCB2ODo6
UGVyc2lzdGVudDx2ODo6T2JqZWN0Pik7Ci0gICAgICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0
YXRpYyB2b2lkIHNldEpTV3JhcHBlckZvckFjdGl2ZURPTU9iamVjdChQYXNzUmVmUHRyPFQ+LCB2
ODo6UGVyc2lzdGVudDx2ODo6T2JqZWN0Pik7Ci0gICAgICAgIHN0YXRpYyB2b2lkIHNldEpTV3Jh
cHBlckZvckRPTU5vZGUoUGFzc1JlZlB0cjxOb2RlPiwgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVj
dD4pOwotICAgICAgICBzdGF0aWMgdm9pZCBzZXRKU1dyYXBwZXJGb3JBY3RpdmVET01Ob2RlKFBh
c3NSZWZQdHI8Tm9kZT4sIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+KTsKKyAgICAgICAgdGVt
cGxhdGU8dHlwZW5hbWUgVD4gc3RhdGljIHZvaWQgc2V0SlNXcmFwcGVyRm9yRE9NT2JqZWN0KFBh
c3NSZWZQdHI8VD4sIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+LCB2ODo6SXNvbGF0ZSogPSAw
KTsKKyAgICAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RhdGljIHZvaWQgc2V0SlNXcmFwcGVy
Rm9yQWN0aXZlRE9NT2JqZWN0KFBhc3NSZWZQdHI8VD4sIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmpl
Y3Q+LCB2ODo6SXNvbGF0ZSogPSAwKTsKKyAgICAgICAgc3RhdGljIHZvaWQgc2V0SlNXcmFwcGVy
Rm9yRE9NTm9kZShQYXNzUmVmUHRyPE5vZGU+LCB2ODo6UGVyc2lzdGVudDx2ODo6T2JqZWN0Piwg
djg6Oklzb2xhdGUqID0gMCk7CisgICAgICAgIHN0YXRpYyB2b2lkIHNldEpTV3JhcHBlckZvckFj
dGl2ZURPTU5vZGUoUGFzc1JlZlB0cjxOb2RlPiwgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD4s
IHY4OjpJc29sYXRlKiA9IDApOwogCiAgICAgICAgIHN0YXRpYyBib29sIGlzVmFsaWRET01PYmpl
Y3Qodjg6OkhhbmRsZTx2ODo6VmFsdWU+KTsKIApAQCAtMTU1LDE5ICsxNTUsMTkgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgIH07CiAKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgotICAgIHZv
aWQgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01PYmplY3QoUGFzc1JlZlB0cjxUPiBv
YmplY3QsIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+IHdyYXBwZXIpCisgICAgdm9pZCBWOERP
TVdyYXBwZXI6OnNldEpTV3JhcHBlckZvckRPTU9iamVjdChQYXNzUmVmUHRyPFQ+IG9iamVjdCwg
djg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD4gd3JhcHBlciwgdjg6Oklzb2xhdGUqIGlzb2xhdGUp
CiAgICAgewogICAgICAgICBBU1NFUlQobWF5YmVET01XcmFwcGVyKHdyYXBwZXIpKTsKICAgICAg
ICAgQVNTRVJUKCFkb21XcmFwcGVyVHlwZSh3cmFwcGVyKS0+dG9BY3RpdmVET01PYmplY3RGdW5j
dGlvbik7Ci0gICAgICAgIGdldERPTU9iamVjdE1hcCgpLnNldChvYmplY3QubGVha1JlZigpLCB3
cmFwcGVyKTsKKyAgICAgICAgZ2V0RE9NT2JqZWN0TWFwKGlzb2xhdGUpLnNldChvYmplY3QubGVh
a1JlZigpLCB3cmFwcGVyKTsKICAgICB9CiAKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgotICAg
IHZvaWQgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JBY3RpdmVET01PYmplY3QoUGFzc1Jl
ZlB0cjxUPiBvYmplY3QsIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+IHdyYXBwZXIpCisgICAg
dm9pZCBWOERPTVdyYXBwZXI6OnNldEpTV3JhcHBlckZvckFjdGl2ZURPTU9iamVjdChQYXNzUmVm
UHRyPFQ+IG9iamVjdCwgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD4gd3JhcHBlciwgdjg6Oklz
b2xhdGUqIGlzb2xhdGUpCiAgICAgewogICAgICAgICBBU1NFUlQobWF5YmVET01XcmFwcGVyKHdy
YXBwZXIpKTsKICAgICAgICAgQVNTRVJUKGRvbVdyYXBwZXJUeXBlKHdyYXBwZXIpLT50b0FjdGl2
ZURPTU9iamVjdEZ1bmN0aW9uKTsKLSAgICAgICAgZ2V0QWN0aXZlRE9NT2JqZWN0TWFwKCkuc2V0
KG9iamVjdC5sZWFrUmVmKCksIHdyYXBwZXIpOworICAgICAgICBnZXRBY3RpdmVET01PYmplY3RN
YXAoaXNvbGF0ZSkuc2V0KG9iamVjdC5sZWFrUmVmKCksIHdyYXBwZXIpOwogICAgIH0KIH0KIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>