<?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>101422</bug_id>
          
          <creation_ts>2012-11-06 19:22:31 -0800</creation_ts>
          <short_desc>[V8] Unify setJSWrapperForDOMObject and setJSWrapperForDOMNode</short_desc>
          <delta_ts>2012-11-06 21:41:57 -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>101110</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>760299</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-06 19:22:31 -0800</bug_when>
    <thetext>[V8] Unify setJSWrapperForDOMObject and setJSWrapperForDOMNode</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>760301</commentid>
    <comment_count>1</comment_count>
      <attachid>172700</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-06 19:24:23 -0800</bug_when>
    <thetext>Created attachment 172700
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>760306</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-06 19:30:30 -0800</bug_when>
    <thetext>Attachment 172700 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/bindings/scripts/test/V8/V8TestEventTarget.h:59:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebCore/bindings/scripts/test/V8/V8TestEventConstructor.h:58:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebCore/bindings/scripts/test/V8/V8TestObj.h:62:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebCore/bindings/scripts/test/V8/V8TestInterface.h:61:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebCore/bindings/scripts/test/V8/V8Float64Array.h:58:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebCore/bindings/scripts/test/V8/V8TestMediaQueryListListener.h:56:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebCore/bindings/scripts/test/V8/V8TestNamedConstructor.h:63:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebCore/bindings/scripts/test/V8/V8TestException.h:56:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebCore/bindings/scripts/test/V8/V8TestActiveDOMObject.h:58:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebCore/bindings/scripts/test/V8/V8TestCustomNamedGetter.h:57:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Source/WebCore/bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:59:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Total errors found: 11 in 19 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>760355</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-06 21:00:14 -0800</bug_when>
    <thetext>Committed r133719: &lt;http://trac.webkit.org/changeset/133719&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>172700</attachid>
            <date>2012-11-06 19:24:23 -0800</date>
            <delta_ts>2012-11-06 21:41:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-101422-20121106192234.patch</filename>
            <type>text/plain</type>
            <size>23958</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMzNjc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWI3MzhjNzNkMWMxZDI2
ZjAwZDIzNzIyZmNlYWRiZGYxNTkyMzAxYS4uNTUzOGZjMDg3YjA2YTllZDhmZDc3M2Q3M2VkMjgy
YzlkMDJjMWZjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDYyIEBACiAyMDEyLTExLTA2ICBBZGFt
IEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKKyAgICAgICAgW1Y4XSBVbmlmeSBzZXRKU1dy
YXBwZXJGb3JET01PYmplY3QgYW5kIHNldEpTV3JhcHBlckZvckRPTU5vZGUKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMTQyMgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggaXMgYW5vdGhl
ciBpbmNyZW1lbnRhbCBzdGVwIHRvd2FyZHMgdGhlIHBhdGNoIGluIEJ1ZyAxMDExMC4KKyAgICAg
ICAgSW4gdGhpcyBzdGVwLCB3ZSB1bmlmeSBzZXRKU1dyYXBwZXJGb3JET01PYmplY3QgYW5kCisg
ICAgICAgIHNldEpTV3JhcHBlckZvckRPTU5vZGUuCisKKyAgICAgICAgKiBiaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JWOC5wbToKKyAgICAgICAgKEdlbmVyYXRlSGVhZGVyKToKKyAgICAg
ICAgKEdlbmVyYXRlTm9ybWFsQXR0ckdldHRlcik6CisgICAgICAgIChHZW5lcmF0ZUNvbnN0cnVj
dG9yQ2FsbGJhY2spOgorICAgICAgICAoR2VuZXJhdGVOYW1lZENvbnN0cnVjdG9yQ2FsbGJhY2sp
OgorICAgICAgICAoR2VuZXJhdGVUb1Y4Q29udmVydGVycyk6CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L1Y4L1Y4RmxvYXQ2NEFycmF5Lmg6CisgICAgICAgIChXZWJDb3JlOjpWOEZs
b2F0NjRBcnJheTo6d3JhcCk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4
VGVzdEFjdGl2ZURPTU9iamVjdC5oOgorICAgICAgICAoV2ViQ29yZTo6VjhUZXN0QWN0aXZlRE9N
T2JqZWN0Ojp3cmFwKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0
Q3VzdG9tTmFtZWRHZXR0ZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OlY4VGVzdEN1c3RvbU5hbWVk
R2V0dGVyOjp3cmFwKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0
RXZlbnRDb25zdHJ1Y3Rvci5oOgorICAgICAgICAoV2ViQ29yZTo6VjhUZXN0RXZlbnRDb25zdHJ1
Y3Rvcjo6d3JhcCk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEV2
ZW50VGFyZ2V0Lmg6CisgICAgICAgIChXZWJDb3JlOjpWOFRlc3RFdmVudFRhcmdldDo6d3JhcCk6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEV4Y2VwdGlvbi5oOgor
ICAgICAgICAoV2ViQ29yZTo6VjhUZXN0RXhjZXB0aW9uOjp3cmFwKToKKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0SW50ZXJmYWNlLmg6CisgICAgICAgIChXZWJDb3Jl
OjpWOFRlc3RJbnRlcmZhY2U6OndyYXApOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVz
dC9WOC9WOFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmg6CisgICAgICAgIChXZWJDb3JlOjpW
OFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyOjp3cmFwKToKKyAgICAgICAgKiBiaW5kaW5ncy9z
Y3JpcHRzL3Rlc3QvVjgvVjhUZXN0TmFtZWRDb25zdHJ1Y3Rvci5oOgorICAgICAgICAoV2ViQ29y
ZTo6VjhUZXN0TmFtZWRDb25zdHJ1Y3Rvcjo6d3JhcCk6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy90ZXN0L1Y4L1Y4VGVzdE5vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhUZXN0Tm9k
ZTo6Y29uc3RydWN0b3JDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpWOFRlc3ROb2RlOjp3
cmFwU2xvdyk6CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpUZXN0T2JqVjhJbnRlcm5hbDo6cmVhZE9ubHlUZXN0T2Jq
QXR0ckF0dHJHZXR0ZXIpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRl
c3RPYmouaDoKKyAgICAgICAgKFdlYkNvcmU6OlY4VGVzdE9iajo6d3JhcCk6CisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUludGVy
ZmFjZS5oOgorICAgICAgICAoV2ViQ29yZTo6VjhUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50
ZXJmYWNlOjp3cmFwKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9ET01EYXRhU3RvcmUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6RE9NRGF0YVN0b3JlOjpjdXJyZW50KToKKyAgICAgICAgKiBiaW5k
aW5ncy92OC9ET01EYXRhU3RvcmUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkRPTURhdGFTdG9yZTo6
Z2V0KToKKyAgICAgICAgKERPTURhdGFTdG9yZSk6CisgICAgICAgICogYmluZGluZ3MvdjgvVjhE
T01XcmFwcGVyLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuaDoKKyAg
ICAgICAgKFY4RE9NV3JhcHBlcik6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdyYXBwZXI6OnNl
dEpTV3JhcHBlclByaXZhdGUpOgorICAgICAgICAoV2ViQ29yZTo6VjhET01XcmFwcGVyOjpzZXRK
U1dyYXBwZXJGb3JET01PYmplY3QpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOEhU
TUxJbWFnZUVsZW1lbnRDb25zdHJ1Y3Rvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjp2OEhUTUxJ
bWFnZUVsZW1lbnRDb25zdHJ1Y3RvckNhbGxiYWNrKToKKworMjAxMi0xMS0wNiAgQWRhbSBCYXJ0
aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgorCiAgICAgICAgIFtWOF0gbmV1dGVyQmluZGluZyBzaG91
bGQgcmVtZW1iZXIgdGhlIHR5cGUgb2YgaXRzIGFyZ3VtZW50CiAgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDE0MTMKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0gYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbQppbmRleCA2Zjk5NWNiODRj
NDhiNjgzYTVkYTkzNjQzZDRjZTA3MTIxOWE0N2NmLi4yZDlmOTEyZTJiNzgzMDlhM2QxODQ5OThl
ODBhNWYyZmE0YzA2NzJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JWOC5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JWOC5wbQpAQCAtNTAyLDggKzUwMiw3IEBAIEVORAogdjg6OkhhbmRs
ZTx2ODo6T2JqZWN0PiAke2NsYXNzTmFtZX06OndyYXAoJHtuYXRpdmVUeXBlfSogaW1wbCwgdjg6
OkhhbmRsZTx2ODo6T2JqZWN0PiBjcmVhdGlvbkNvbnRleHQsIHY4OjpJc29sYXRlKiBpc29sYXRl
KQogewogRU5ECi0gICAgbXkgJGRvbU1hcEZ1bmN0aW9uID0gR2V0RG9tTWFwRnVuY3Rpb24oJGRh
dGFOb2RlLCAkaW50ZXJmYWNlTmFtZSwgImlzb2xhdGUiKTsKLSAgICBteSAkZ2V0Q2FjaGVkV3Jh
cHBlciA9IElzTm9kZVN1YlR5cGUoJGRhdGFOb2RlKSA/ICJWOERPTVdyYXBwZXI6OmdldENhY2hl
ZFdyYXBwZXIoaW1wbCkiIDogIiR7ZG9tTWFwRnVuY3Rpb259LmdldChpbXBsKSI7CisgICAgbXkg
JGdldENhY2hlZFdyYXBwZXIgPSBJc05vZGVTdWJUeXBlKCRkYXRhTm9kZSkgPyAiVjhET01XcmFw
cGVyOjpnZXRDYWNoZWRXcmFwcGVyKGltcGwpIiA6ICJET01EYXRhU3RvcmU6OmN1cnJlbnQoaXNv
bGF0ZSktPmdldChpbXBsKSI7CiAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgPDxFTkQpOwogICAg
ICAgICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXBwZXIgPSAkZ2V0Q2FjaGVkV3JhcHBlcjsK
ICAgICAgICAgaWYgKCF3cmFwcGVyLklzRW1wdHkoKSkKQEAgLTEwMzcsOCArMTAzNiw3IEBAIEVO
RAogICAgICAgICAjIENoZWNrIGZvciBhIHdyYXBwZXIgaW4gdGhlIHdyYXBwZXIgY2FjaGUuIElm
IHRoZXJlIGlzIG9uZSwgd2Uga25vdyB0aGF0IGEgaGlkZGVuIHJlZmVyZW5jZSBoYXMgYWxyZWFk
eQogICAgICAgICAjIGJlZW4gY3JlYXRlZC4gSWYgd2UgZG9uJ3QgZmluZCBhIHdyYXBwZXIsIHdl
IGNyZWF0ZSBib3RoIGEgd3JhcHBlciBhbmQgYSBoaWRkZW4gcmVmZXJlbmNlLgogICAgICAgICBw
dXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgIFJlZlB0cjwkcmV0dXJuVHlwZT4gcmVzdWx0ID0g
JHtnZXR0ZXJTdHJpbmd9O1xuIik7Ci0gICAgICAgIG15ICRkb21NYXBGdW5jdGlvbiA9IEdldERv
bU1hcEZ1bmN0aW9uKCRkYXRhTm9kZSwgJGludGVyZmFjZU5hbWUsICJpbmZvLkdldElzb2xhdGUo
KSIpOwotICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgIHY4OjpIYW5kbGU8djg6
OlZhbHVlPiB3cmFwcGVyID0gcmVzdWx0LmdldCgpID8gJHtkb21NYXBGdW5jdGlvbn0uZ2V0KHJl
c3VsdC5nZXQoKSkgOiB2OFVuZGVmaW5lZCgpO1xuIik7CisgICAgICAgIHB1c2goQGltcGxDb250
ZW50RGVjbHMsICIgICAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHdyYXBwZXIgPSByZXN1bHQuZ2V0
KCkgPyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4oRE9NRGF0YVN0b3JlOjpjdXJyZW50KGluZm8uR2V0
SXNvbGF0ZSgpKS0+Z2V0KHJlc3VsdC5nZXQoKSkpIDogdjhVbmRlZmluZWQoKTtcbiIpOwogICAg
ICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgIGlmICh3cmFwcGVyLklzRW1wdHkoKSkg
e1xuIik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAgICAgIHdyYXBwZXIg
PSB0b1Y4KHJlc3VsdC5nZXQoKSwgaW5mby5Ib2xkZXIoKSwgaW5mby5HZXRJc29sYXRlKCkpO1xu
Iik7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAgICAgIGlmICghd3JhcHBl
ci5Jc0VtcHR5KCkpXG4iKTsKQEAgLTE5NDIsMTEgKzE5NDAsMTAgQEAgRU5ECiAgICAgICAgIHB1
c2goQGltcGxDb250ZW50LCAiICAgICAgICBnb3RvIGZhaWw7XG4iKTsKICAgICB9CiAKLSAgICBt
eSAkRE9NT2JqZWN0ID0gR2V0RG9tTWFwTmFtZSgkZGF0YU5vZGUsICRpbXBsQ2xhc3NOYW1lKTsK
ICAgICBwdXNoKEBpbXBsQ29udGVudCwgPDxFTkQpOwogCiAgICAgVjhET01XcmFwcGVyOjpzZXRE
T01XcmFwcGVyKHdyYXBwZXIsICZpbmZvLCBpbXBsLmdldCgpKTsKLSAgICBWOERPTVdyYXBwZXI6
OnNldEpTV3JhcHBlckZvciR7RE9NT2JqZWN0fShpbXBsLnJlbGVhc2UoKSwgd3JhcHBlciwgYXJn
cy5HZXRJc29sYXRlKCkpOworICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9NT2Jq
ZWN0KGltcGwucmVsZWFzZSgpLCB3cmFwcGVyLCBhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgcmV0
dXJuIHdyYXBwZXI7CiBFTkQKIApAQCAtMjEzNCwxMSArMjEzMSwxMCBAQCBFTkQKICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIGdvdG8gZmFpbDtcbiIpOwogICAgIH0KIAotICAg
IG15ICRET01PYmplY3QgPSBHZXREb21NYXBOYW1lKCRkYXRhTm9kZSwgJGltcGxDbGFzc05hbWUp
OwogICAgIHB1c2goQGltcGxDb250ZW50LCA8PEVORCk7CiAKICAgICBWOERPTVdyYXBwZXI6OnNl
dERPTVdyYXBwZXIod3JhcHBlciwgJlY4JHtpbXBsQ2xhc3NOYW1lfUNvbnN0cnVjdG9yOjppbmZv
LCBpbXBsLmdldCgpKTsKLSAgICBWOERPTVdyYXBwZXI6OnNldEpTV3JhcHBlckZvciR7RE9NT2Jq
ZWN0fShpbXBsLnJlbGVhc2UoKSwgd3JhcHBlciwgYXJncy5HZXRJc29sYXRlKCkpOworICAgIFY4
RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9NT2JqZWN0KGltcGwucmVsZWFzZSgpLCB3cmFw
cGVyLCBhcmdzLkdldElzb2xhdGUoKSk7CiAgICAgcmV0dXJuIHdyYXBwZXI7CiBFTkQKIApAQCAt
MzQwMiw3ICszMzk4LDYgQEAgc3ViIEdlbmVyYXRlVG9WOENvbnZlcnRlcnMKICAgICBteSAkY2xh
c3NOYW1lID0gc2hpZnQ7CiAgICAgbXkgJG5hdGl2ZVR5cGUgPSBzaGlmdDsKIAotICAgIG15ICRk
b21NYXBOYW1lID0gR2V0RG9tTWFwTmFtZSgkZGF0YU5vZGUsICRpbnRlcmZhY2VOYW1lKTsKICAg
ICBteSAkd3JhcFNsb3dBcmd1bWVudFR5cGUgPSBHZXRQYXNzUmVmUHRyVHlwZSgkbmF0aXZlVHlw
ZSk7CiAgICAgbXkgJGJhc2VUeXBlID0gQmFzZUludGVyZmFjZU5hbWUoJGRhdGFOb2RlKTsKIApA
QCAtMzQ2Myw3ICszNDU4LDcgQEAgRU5ECiAgICAgICAgIHJldHVybiB3cmFwcGVyOwogCiAgICAg
aW5zdGFsbFBlckNvbnRleHRQcm9wZXJ0aWVzKHdyYXBwZXIsIGltcGwuZ2V0KCkpOwotICAgIHY4
OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+IHdyYXBwZXJIYW5kbGUgPSBWOERPTVdyYXBwZXI6OnNl
dEpTV3JhcHBlckZvciR7ZG9tTWFwTmFtZX0oaW1wbCwgd3JhcHBlciwgaXNvbGF0ZSk7CisgICAg
djg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD4gd3JhcHBlckhhbmRsZSA9IFY4RE9NV3JhcHBlcjo6
c2V0SlNXcmFwcGVyRm9yRE9NT2JqZWN0KGltcGwsIHdyYXBwZXIsIGlzb2xhdGUpOwogICAgIGlm
ICghaGFzRGVwZW5kZW50TGlmZXRpbWUpCiAgICAgICAgIHdyYXBwZXJIYW5kbGUuTWFya0luZGVw
ZW5kZW50KCk7CiAgICAgcmV0dXJuIHdyYXBwZXI7CkBAIC0zNDcxLDI0ICszNDY2LDYgQEAgRU5E
CiBFTkQKIH0KIAotc3ViIEdldERvbU1hcEZ1bmN0aW9uCi17Ci0gICAgbXkgJGRhdGFOb2RlID0g
c2hpZnQ7Ci0gICAgbXkgJGludGVyZmFjZU5hbWUgPSBzaGlmdDsKLSAgICBteSAkZ2V0SXNvbGF0
ZSA9IHNoaWZ0OwotCi0gICAgcmV0dXJuICJnZXQiIC4gR2V0RG9tTWFwTmFtZSgkZGF0YU5vZGUs
ICRpbnRlcmZhY2VOYW1lKSAuICJNYXAoIiAuICRnZXRJc29sYXRlIC4gIikiOwotfQotCi1zdWIg
R2V0RG9tTWFwTmFtZQotewotICAgIG15ICRkYXRhTm9kZSA9IHNoaWZ0OwotICAgIG15ICR0eXBl
ID0gc2hpZnQ7Ci0KLSAgICByZXR1cm4gIkRPTU5vZGUiIGlmIElzTm9kZVN1YlR5cGUoJGRhdGFO
b2RlKTsKLSAgICByZXR1cm4gIkRPTU9iamVjdCI7Ci19Ci0KIHN1YiBHZXROYXRpdmVUeXBlRm9y
Q29udmVyc2lvbnMKIHsKICAgICBteSAkZGF0YU5vZGUgPSBzaGlmdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOEZsb2F0NjRBcnJheS5oIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4RmxvYXQ2NEFycmF5LmgK
aW5kZXggYWZiMDEzNDRlYmUxZWVhM2M3YjUwMjY4N2RkNjkyNWNkNjk5OWEyMC4uYmUwMWIxYzA2
ZGVmMzQxYWU4ZDg4ZjYyZWE5NzJiZDlmOGJkODQwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4RmxvYXQ2NEFycmF5LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4RmxvYXQ2NEFycmF5LmgKQEAgLTU1
LDcgKzU1LDcgQEAgcHJpdmF0ZToKIAogdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBWOEZsb2F0NjRB
cnJheTo6d3JhcChGbG9hdDY0QXJyYXkqIGltcGwsIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gY3Jl
YXRpb25Db250ZXh0LCB2ODo6SXNvbGF0ZSogaXNvbGF0ZSkKIHsKLSAgICAgICAgdjg6OkhhbmRs
ZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gZ2V0RE9NT2JqZWN0TWFwKGlzb2xhdGUpLmdldChpbXBs
KTsKKyAgICAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gRE9NRGF0YVN0b3Jl
OjpjdXJyZW50KGlzb2xhdGUpLT5nZXQoaW1wbCk7CiAgICAgICAgIGlmICghd3JhcHBlci5Jc0Vt
cHR5KCkpCiAgICAgICAgICAgICByZXR1cm4gd3JhcHBlcjsKICAgICByZXR1cm4gVjhGbG9hdDY0
QXJyYXk6OndyYXBTbG93KGltcGwsIGNyZWF0aW9uQ29udGV4dCwgaXNvbGF0ZSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0QWN0aXZl
RE9NT2JqZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhU
ZXN0QWN0aXZlRE9NT2JqZWN0LmgKaW5kZXggN2JhZWFjY2E5NzczM2E3Y2IwZmRiZGNjNzIzNTVh
N2M5YTAzNjViZS4uMTkyMzgxMGFiMDQ5ZTJhMzQxNmIzNDM2ZDhjOTRiNjJmZmViMGE2OCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEFj
dGl2ZURPTU9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9WOC9WOFRlc3RBY3RpdmVET01PYmplY3QuaApAQCAtNTUsNyArNTUsNyBAQCBwcml2YXRlOgog
CiB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IFY4VGVzdEFjdGl2ZURPTU9iamVjdDo6d3JhcChUZXN0
QWN0aXZlRE9NT2JqZWN0KiBpbXBsLCB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGNyZWF0aW9uQ29u
dGV4dCwgdjg6Oklzb2xhdGUqIGlzb2xhdGUpCiB7Ci0gICAgICAgIHY4OjpIYW5kbGU8djg6Ok9i
amVjdD4gd3JhcHBlciA9IGdldERPTU9iamVjdE1hcChpc29sYXRlKS5nZXQoaW1wbCk7CisgICAg
ICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IERPTURhdGFTdG9yZTo6Y3VycmVu
dChpc29sYXRlKS0+Z2V0KGltcGwpOwogICAgICAgICBpZiAoIXdyYXBwZXIuSXNFbXB0eSgpKQog
ICAgICAgICAgICAgcmV0dXJuIHdyYXBwZXI7CiAgICAgcmV0dXJuIFY4VGVzdEFjdGl2ZURPTU9i
amVjdDo6d3JhcFNsb3coaW1wbCwgY3JlYXRpb25Db250ZXh0LCBpc29sYXRlKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RDdXN0b21O
YW1lZEdldHRlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4
VGVzdEN1c3RvbU5hbWVkR2V0dGVyLmgKaW5kZXggZWEzMzRiMGU0Y2M5M2EzY2QxODQ0ZjM1ZjI5
ZmJjNWQ5NDcxNDNjZS4uOGM4OWMwYTI5ZGRhNTQ3ZjYxYjcyMjUxMjg1MWE1YWRiZWRlNzVkNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVz
dEN1c3RvbU5hbWVkR2V0dGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Y4L1Y4VGVzdEN1c3RvbU5hbWVkR2V0dGVyLmgKQEAgLTU0LDcgKzU0LDcgQEAgcHJp
dmF0ZToKIAogdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBWOFRlc3RDdXN0b21OYW1lZEdldHRlcjo6
d3JhcChUZXN0Q3VzdG9tTmFtZWRHZXR0ZXIqIGltcGwsIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4g
Y3JlYXRpb25Db250ZXh0LCB2ODo6SXNvbGF0ZSogaXNvbGF0ZSkKIHsKLSAgICAgICAgdjg6Okhh
bmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gZ2V0RE9NT2JqZWN0TWFwKGlzb2xhdGUpLmdldChp
bXBsKTsKKyAgICAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gRE9NRGF0YVN0
b3JlOjpjdXJyZW50KGlzb2xhdGUpLT5nZXQoaW1wbCk7CiAgICAgICAgIGlmICghd3JhcHBlci5J
c0VtcHR5KCkpCiAgICAgICAgICAgICByZXR1cm4gd3JhcHBlcjsKICAgICByZXR1cm4gVjhUZXN0
Q3VzdG9tTmFtZWRHZXR0ZXI6OndyYXBTbG93KGltcGwsIGNyZWF0aW9uQ29udGV4dCwgaXNvbGF0
ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgv
VjhUZXN0RXZlbnRDb25zdHJ1Y3Rvci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy90ZXN0L1Y4L1Y4VGVzdEV2ZW50Q29uc3RydWN0b3IuaAppbmRleCA5OTYxMjgwZjBlZjM3MjNm
NWFiMmMyNDk5ODQ0NTg3MmI4NWFkYzdiLi42MjlhNWI1NWU5Yjc2NmM4ZGZjYzMxY2NiMmQ1MTM3
OTUyMDczYjkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvVjgvVjhUZXN0RXZlbnRDb25zdHJ1Y3Rvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RFdmVudENvbnN0cnVjdG9yLmgKQEAgLTU1LDcgKzU1
LDcgQEAgcHJpdmF0ZToKIAogdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBWOFRlc3RFdmVudENvbnN0
cnVjdG9yOjp3cmFwKFRlc3RFdmVudENvbnN0cnVjdG9yKiBpbXBsLCB2ODo6SGFuZGxlPHY4OjpP
YmplY3Q+IGNyZWF0aW9uQ29udGV4dCwgdjg6Oklzb2xhdGUqIGlzb2xhdGUpCiB7Ci0gICAgICAg
IHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IGdldERPTU9iamVjdE1hcChpc29sYXRl
KS5nZXQoaW1wbCk7CisgICAgICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IERP
TURhdGFTdG9yZTo6Y3VycmVudChpc29sYXRlKS0+Z2V0KGltcGwpOwogICAgICAgICBpZiAoIXdy
YXBwZXIuSXNFbXB0eSgpKQogICAgICAgICAgICAgcmV0dXJuIHdyYXBwZXI7CiAgICAgcmV0dXJu
IFY4VGVzdEV2ZW50Q29uc3RydWN0b3I6OndyYXBTbG93KGltcGwsIGNyZWF0aW9uQ29udGV4dCwg
aXNvbGF0ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvVjgvVjhUZXN0RXZlbnRUYXJnZXQuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9WOC9WOFRlc3RFdmVudFRhcmdldC5oCmluZGV4IGY5YjFmN2FmMTZmZTgwOGQ1YWFm
MDRjNjlkYjE3MTlhYzRlMDFiOTEuLjliNjhlMzRlMWZmMWFmYjFmYmNjN2Y1YmY0ZjQ5NjEwZmUz
MmEyNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9W
OC9WOFRlc3RFdmVudFRhcmdldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvdGVzdC9WOC9WOFRlc3RFdmVudFRhcmdldC5oCkBAIC01Niw3ICs1Niw3IEBAIHByaXZhdGU6
CiAKIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gVjhUZXN0RXZlbnRUYXJnZXQ6OndyYXAoVGVzdEV2
ZW50VGFyZ2V0KiBpbXBsLCB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGNyZWF0aW9uQ29udGV4dCwg
djg6Oklzb2xhdGUqIGlzb2xhdGUpCiB7Ci0gICAgICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4g
d3JhcHBlciA9IGdldERPTU9iamVjdE1hcChpc29sYXRlKS5nZXQoaW1wbCk7CisgICAgICAgIHY4
OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IERPTURhdGFTdG9yZTo6Y3VycmVudChpc29s
YXRlKS0+Z2V0KGltcGwpOwogICAgICAgICBpZiAoIXdyYXBwZXIuSXNFbXB0eSgpKQogICAgICAg
ICAgICAgcmV0dXJuIHdyYXBwZXI7CiAgICAgcmV0dXJuIFY4VGVzdEV2ZW50VGFyZ2V0Ojp3cmFw
U2xvdyhpbXBsLCBjcmVhdGlvbkNvbnRleHQsIGlzb2xhdGUpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEV4Y2VwdGlvbi5oIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEV4Y2VwdGlvbi5oCmlu
ZGV4IDk5YWZlOGIxNjM5YjJiN2E1ZDJiMzBiMjhlZDI5MmM3ZTRmNjkzNzcuLjcxYjk0NzhkM2Zl
OTVlMDc4NTNmNTIxMTAwYjc3ODdkNDE4NDI0NmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RFeGNlcHRpb24uaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0RXhjZXB0aW9uLmgKQEAgLTUz
LDcgKzUzLDcgQEAgcHJpdmF0ZToKIAogdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBWOFRlc3RFeGNl
cHRpb246OndyYXAoVGVzdEV4Y2VwdGlvbiogaW1wbCwgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBj
cmVhdGlvbkNvbnRleHQsIHY4OjpJc29sYXRlKiBpc29sYXRlKQogewotICAgICAgICB2ODo6SGFu
ZGxlPHY4OjpPYmplY3Q+IHdyYXBwZXIgPSBnZXRET01PYmplY3RNYXAoaXNvbGF0ZSkuZ2V0KGlt
cGwpOworICAgICAgICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXBwZXIgPSBET01EYXRhU3Rv
cmU6OmN1cnJlbnQoaXNvbGF0ZSktPmdldChpbXBsKTsKICAgICAgICAgaWYgKCF3cmFwcGVyLklz
RW1wdHkoKSkKICAgICAgICAgICAgIHJldHVybiB3cmFwcGVyOwogICAgIHJldHVybiBWOFRlc3RF
eGNlcHRpb246OndyYXBTbG93KGltcGwsIGNyZWF0aW9uQ29udGV4dCwgaXNvbGF0ZSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0SW50
ZXJmYWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0
SW50ZXJmYWNlLmgKaW5kZXggODdjYTBiOGFkYzU0N2QyYjdlOTUwMWU4MjBhZmFkMzNmZTlkMzU0
Zi4uNzVmZDExZmYyNmMzMTU3OTBkNmQzY2FkMDVkMDM2Yzg0MWQ3YzA4OSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdEludGVyZmFjZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RJbnRl
cmZhY2UuaApAQCAtNTgsNyArNTgsNyBAQCBwcml2YXRlOgogCiB2ODo6SGFuZGxlPHY4OjpPYmpl
Y3Q+IFY4VGVzdEludGVyZmFjZTo6d3JhcChUZXN0SW50ZXJmYWNlKiBpbXBsLCB2ODo6SGFuZGxl
PHY4OjpPYmplY3Q+IGNyZWF0aW9uQ29udGV4dCwgdjg6Oklzb2xhdGUqIGlzb2xhdGUpCiB7Ci0g
ICAgICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IGdldERPTU9iamVjdE1hcChp
c29sYXRlKS5nZXQoaW1wbCk7CisgICAgICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBl
ciA9IERPTURhdGFTdG9yZTo6Y3VycmVudChpc29sYXRlKS0+Z2V0KGltcGwpOwogICAgICAgICBp
ZiAoIXdyYXBwZXIuSXNFbXB0eSgpKQogICAgICAgICAgICAgcmV0dXJuIHdyYXBwZXI7CiAgICAg
cmV0dXJuIFY4VGVzdEludGVyZmFjZTo6d3JhcFNsb3coaW1wbCwgY3JlYXRpb25Db250ZXh0LCBp
c29sYXRlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVz
dC9WOC9WOFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0TWVkaWFRdWVyeUxpc3RMaXN0ZW5lci5oCmluZGV4
IGY4ODU5ODA0NmNlODU4YWUyNDk3MTI3ZTkyN2I0ZDQ2YmNjZGMzNjUuLjdiYTRhNTY0MTZjZWIz
ZjY4NzM1ZTRhYWRjOTgyZTA1NzlhNTUyYjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RNZWRpYVF1ZXJ5TGlzdExpc3RlbmVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE1lZGlhUXVl
cnlMaXN0TGlzdGVuZXIuaApAQCAtNTMsNyArNTMsNyBAQCBwcml2YXRlOgogCiB2ODo6SGFuZGxl
PHY4OjpPYmplY3Q+IFY4VGVzdE1lZGlhUXVlcnlMaXN0TGlzdGVuZXI6OndyYXAoVGVzdE1lZGlh
UXVlcnlMaXN0TGlzdGVuZXIqIGltcGwsIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gY3JlYXRpb25D
b250ZXh0LCB2ODo6SXNvbGF0ZSogaXNvbGF0ZSkKIHsKLSAgICAgICAgdjg6OkhhbmRsZTx2ODo6
T2JqZWN0PiB3cmFwcGVyID0gZ2V0RE9NT2JqZWN0TWFwKGlzb2xhdGUpLmdldChpbXBsKTsKKyAg
ICAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gRE9NRGF0YVN0b3JlOjpjdXJy
ZW50KGlzb2xhdGUpLT5nZXQoaW1wbCk7CiAgICAgICAgIGlmICghd3JhcHBlci5Jc0VtcHR5KCkp
CiAgICAgICAgICAgICByZXR1cm4gd3JhcHBlcjsKICAgICByZXR1cm4gVjhUZXN0TWVkaWFRdWVy
eUxpc3RMaXN0ZW5lcjo6d3JhcFNsb3coaW1wbCwgY3JlYXRpb25Db250ZXh0LCBpc29sYXRlKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRl
c3ROYW1lZENvbnN0cnVjdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvVjgvVjhUZXN0TmFtZWRDb25zdHJ1Y3Rvci5oCmluZGV4IDk5NTk5ZTYyNWIyMGMyNDVlNzkw
ZDE1NDFmOWMwZWIwZjBkMTk1MjMuLmIwZjM0NzFjODk3M2QwYTkxZDFlMTY0NmI4NmRlNTRkYzQz
YjNhNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9W
OC9WOFRlc3ROYW1lZENvbnN0cnVjdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE5hbWVkQ29uc3RydWN0b3IuaApAQCAtNjAsNyArNjAsNyBA
QCBwcml2YXRlOgogCiB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IFY4VGVzdE5hbWVkQ29uc3RydWN0
b3I6OndyYXAoVGVzdE5hbWVkQ29uc3RydWN0b3IqIGltcGwsIHY4OjpIYW5kbGU8djg6Ok9iamVj
dD4gY3JlYXRpb25Db250ZXh0LCB2ODo6SXNvbGF0ZSogaXNvbGF0ZSkKIHsKLSAgICAgICAgdjg6
OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gZ2V0RE9NT2JqZWN0TWFwKGlzb2xhdGUpLmdl
dChpbXBsKTsKKyAgICAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gRE9NRGF0
YVN0b3JlOjpjdXJyZW50KGlzb2xhdGUpLT5nZXQoaW1wbCk7CiAgICAgICAgIGlmICghd3JhcHBl
ci5Jc0VtcHR5KCkpCiAgICAgICAgICAgICByZXR1cm4gd3JhcHBlcjsKICAgICByZXR1cm4gVjhU
ZXN0TmFtZWRDb25zdHJ1Y3Rvcjo6d3JhcFNsb3coaW1wbCwgY3JlYXRpb25Db250ZXh0LCBpc29s
YXRlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9W
OC9WOFRlc3ROb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9W
OC9WOFRlc3ROb2RlLmNwcAppbmRleCBhNWRlNGI2M2E3NDlmNTk4ODZhNzU0NGI5YzIxZjJkNTlj
M2NmMTYwLi4xM2ViYzY1YWU0YmU4ZGY5YTJiNWUyYjllYjI2MmExZDhjM2NmZDBiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgvVjhUZXN0Tm9kZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE5v
ZGUuY3BwCkBAIC01NCw3ICs1NCw3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOFRlc3ROb2Rl
Ojpjb25zdHJ1Y3RvckNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVudHMmIGFyZ3MpCiAgICAgdjg6
OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gYXJncy5Ib2xkZXIoKTsKIAogICAgIFY4RE9N
V3JhcHBlcjo6c2V0RE9NV3JhcHBlcih3cmFwcGVyLCAmaW5mbywgaW1wbC5nZXQoKSk7Ci0gICAg
VjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJGb3JET01Ob2RlKGltcGwucmVsZWFzZSgpLCB3cmFw
cGVyLCBhcmdzLkdldElzb2xhdGUoKSk7CisgICAgVjhET01XcmFwcGVyOjpzZXRKU1dyYXBwZXJG
b3JET01PYmplY3QoaW1wbC5yZWxlYXNlKCksIHdyYXBwZXIsIGFyZ3MuR2V0SXNvbGF0ZSgpKTsK
ICAgICByZXR1cm4gd3JhcHBlcjsKIH0KIApAQCAtMTM1LDcgKzEzNSw3IEBAIHY4OjpIYW5kbGU8
djg6Ok9iamVjdD4gVjhUZXN0Tm9kZTo6d3JhcFNsb3coUGFzc1JlZlB0cjxUZXN0Tm9kZT4gaW1w
bCwgdjg6OkhhbmRsCiAgICAgICAgIHJldHVybiB3cmFwcGVyOwogCiAgICAgaW5zdGFsbFBlckNv
bnRleHRQcm9wZXJ0aWVzKHdyYXBwZXIsIGltcGwuZ2V0KCkpOwotICAgIHY4OjpQZXJzaXN0ZW50
PHY4OjpPYmplY3Q+IHdyYXBwZXJIYW5kbGUgPSBWOERPTVdyYXBwZXI6OnNldEpTV3JhcHBlckZv
ckRPTU5vZGUoaW1wbCwgd3JhcHBlciwgaXNvbGF0ZSk7CisgICAgdjg6OlBlcnNpc3RlbnQ8djg6
Ok9iamVjdD4gd3JhcHBlckhhbmRsZSA9IFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9yRE9N
T2JqZWN0KGltcGwsIHdyYXBwZXIsIGlzb2xhdGUpOwogICAgIGlmICghaGFzRGVwZW5kZW50TGlm
ZXRpbWUpCiAgICAgICAgIHdyYXBwZXJIYW5kbGUuTWFya0luZGVwZW5kZW50KCk7CiAgICAgcmV0
dXJuIHdyYXBwZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvVjgvVjhUZXN0T2JqLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
dGVzdC9WOC9WOFRlc3RPYmouY3BwCmluZGV4IDJkYzczNjYxOGEyYjk2MWQ4OTJhZTFkMDlmYmZi
ODM1ZWY3OGIyZGIuLjI1YjZiNGI5ZGRjMjU2ZWQ1NWViMWU3YzMxZDA3YmUzN2FhZmYzNDkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RP
YmouY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRl
c3RPYmouY3BwCkBAIC0xMDEsNyArMTAxLDcgQEAgc3RhdGljIHY4OjpIYW5kbGU8djg6OlZhbHVl
PiByZWFkT25seVRlc3RPYmpBdHRyQXR0ckdldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4KICAg
ICBJTkNfU1RBVFMoIkRPTS5UZXN0T2JqLnJlYWRPbmx5VGVzdE9iakF0dHIuX2dldCIpOwogICAg
IFRlc3RPYmoqIGltcCA9IFY4VGVzdE9iajo6dG9OYXRpdmUoaW5mby5Ib2xkZXIoKSk7CiAgICAg
UmVmUHRyPFRlc3RPYmo+IHJlc3VsdCA9IGltcC0+cmVhZE9ubHlUZXN0T2JqQXR0cigpOwotICAg
IHY4OjpIYW5kbGU8djg6OlZhbHVlPiB3cmFwcGVyID0gcmVzdWx0LmdldCgpID8gZ2V0RE9NT2Jq
ZWN0TWFwKGluZm8uR2V0SXNvbGF0ZSgpKS5nZXQocmVzdWx0LmdldCgpKSA6IHY4VW5kZWZpbmVk
KCk7CisgICAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHdyYXBwZXIgPSByZXN1bHQuZ2V0KCkgPyB2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4oRE9NRGF0YVN0b3JlOjpjdXJyZW50KGluZm8uR2V0SXNvbGF0
ZSgpKS0+Z2V0KHJlc3VsdC5nZXQoKSkpIDogdjhVbmRlZmluZWQoKTsKICAgICBpZiAod3JhcHBl
ci5Jc0VtcHR5KCkpIHsKICAgICAgICAgd3JhcHBlciA9IHRvVjgocmVzdWx0LmdldCgpLCBpbmZv
LkhvbGRlcigpLCBpbmZvLkdldElzb2xhdGUoKSk7CiAgICAgICAgIGlmICghd3JhcHBlci5Jc0Vt
cHR5KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
VjgvVjhUZXN0T2JqLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVjgv
VjhUZXN0T2JqLmgKaW5kZXggNjIxZTI5N2FmMzk5OWYwMzhlZDlmZGMxNzBiZTg5NmI3YWQ2YjJj
Zi4uOTQzODk1MmM4ODIyZTkzZTg3M2Y2Zjg5MDcwODIzMDQxODJkM2JmYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdE9iai5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RPYmouaApAQCAt
NTksNyArNTksNyBAQCBwcml2YXRlOgogCiB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IFY4VGVzdE9i
ajo6d3JhcChUZXN0T2JqKiBpbXBsLCB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGNyZWF0aW9uQ29u
dGV4dCwgdjg6Oklzb2xhdGUqIGlzb2xhdGUpCiB7Ci0gICAgICAgIHY4OjpIYW5kbGU8djg6Ok9i
amVjdD4gd3JhcHBlciA9IGdldERPTU9iamVjdE1hcChpc29sYXRlKS5nZXQoaW1wbCk7CisgICAg
ICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IERPTURhdGFTdG9yZTo6Y3VycmVu
dChpc29sYXRlKS0+Z2V0KGltcGwpOwogICAgICAgICBpZiAoIXdyYXBwZXIuSXNFbXB0eSgpKQog
ICAgICAgICAgICAgcmV0dXJuIHdyYXBwZXI7CiAgICAgcmV0dXJuIFY4VGVzdE9iajo6d3JhcFNs
b3coaW1wbCwgY3JlYXRpb25Db250ZXh0LCBpc29sYXRlKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9WOFRlc3RTZXJpYWxpemVkU2NyaXB0VmFs
dWVJbnRlcmZhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9WOC9W
OFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UuaAppbmRleCA2M2MyMjJhMGIwYzE2
ZGU5ZTllNzQyM2E1ZDU2ZTEwN2IwMTgwNDUwLi4zOTcwMTY4NTBkYjVlYmU4ZjM1ZGY0OWY3MjRk
ODZkYjJjOTU2NDA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvVjgvVjhUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Y4L1Y4VGVzdFNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZUludGVyZmFjZS5oCkBAIC01Niw3ICs1Niw3IEBAIHByaXZhdGU6CiAKIHY4OjpIYW5k
bGU8djg6Ok9iamVjdD4gVjhUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlOjp3cmFw
KFRlc3RTZXJpYWxpemVkU2NyaXB0VmFsdWVJbnRlcmZhY2UqIGltcGwsIHY4OjpIYW5kbGU8djg6
Ok9iamVjdD4gY3JlYXRpb25Db250ZXh0LCB2ODo6SXNvbGF0ZSogaXNvbGF0ZSkKIHsKLSAgICAg
ICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0gZ2V0RE9NT2JqZWN0TWFwKGlzb2xh
dGUpLmdldChpbXBsKTsKKyAgICAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiB3cmFwcGVyID0g
RE9NRGF0YVN0b3JlOjpjdXJyZW50KGlzb2xhdGUpLT5nZXQoaW1wbCk7CiAgICAgICAgIGlmICgh
d3JhcHBlci5Jc0VtcHR5KCkpCiAgICAgICAgICAgICByZXR1cm4gd3JhcHBlcjsKICAgICByZXR1
cm4gVjhUZXN0U2VyaWFsaXplZFNjcmlwdFZhbHVlSW50ZXJmYWNlOjp3cmFwU2xvdyhpbXBsLCBj
cmVhdGlvbkNvbnRleHQsIGlzb2xhdGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvRE9NRGF0YVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0RP
TURhdGFTdG9yZS5jcHAKaW5kZXggYjRmOWRhZjdkYjcyYTgzNzYzMDBmMjg2MmQwNTU3NGQzZTg5
NGU3MC4uMWViNTQ4ZmJlMTQ3NGM2MDAzNDliMDU1NjFiYzZiMTI1ZGM3MTVjZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvRE9NRGF0YVN0b3JlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9ET01EYXRhU3RvcmUuY3BwCkBAIC03MCw3ICs3MCw3IEBA
IERPTURhdGFTdG9yZTo6fkRPTURhdGFTdG9yZSgpCiBET01EYXRhU3RvcmUqIERPTURhdGFTdG9y
ZTo6Y3VycmVudCh2ODo6SXNvbGF0ZSogaXNvbGF0ZSkKIHsKICAgICBERUZJTkVfU1RBVElDX0xP
Q0FMKERPTURhdGFTdG9yZSwgZGVmYXVsdFN0b3JlLCAoTWFpbldvcmxkKSk7Ci0gICAgVjhQZXJJ
c29sYXRlRGF0YSogZGF0YSA9IFY4UGVySXNvbGF0ZURhdGE6OmZyb20oaXNvbGF0ZSk7CisgICAg
VjhQZXJJc29sYXRlRGF0YSogZGF0YSA9IGlzb2xhdGUgPyBWOFBlcklzb2xhdGVEYXRhOjpmcm9t
KGlzb2xhdGUpIDogVjhQZXJJc29sYXRlRGF0YTo6Y3VycmVudCgpOwogICAgIGlmIChVTkxJS0VM
WSghIWRhdGEtPmRvbURhdGFTdG9yZSgpKSkKICAgICAgICAgcmV0dXJuIGRhdGEtPmRvbURhdGFT
dG9yZSgpOwogICAgIFY4RE9NV2luZG93U2hlbGwqIGNvbnRleHQgPSBWOERPTVdpbmRvd1NoZWxs
OjpnZXRFbnRlcmVkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9E
T01EYXRhU3RvcmUuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0RPTURhdGFTdG9yZS5o
CmluZGV4IGYwY2M3MDg1MjAwNWMwMzYzNGJkMzAxZTFkMTQ4OWEwOGE1MWViNjguLmVhODNmNDE3
YTVlYjkzOGMwMmI0MDcwMTZkOTA4YmI3ZmFiZmNhZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L0RPTURhdGFTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L0RPTURhdGFTdG9yZS5oCkBAIC01OSw2ICs1OSw5IEBAIHB1YmxpYzoKIAogICAgIHN0
YXRpYyBET01EYXRhU3RvcmUqIGN1cnJlbnQodjg6Oklzb2xhdGUqKTsKIAorICAgIGlubGluZSB2
ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGdldCh2b2lkKiBvYmplY3QpIGNvbnN0IHsgcmV0dXJuIG1f
ZG9tT2JqZWN0TWFwLT5nZXQob2JqZWN0KTsgfQorICAgIGlubGluZSB2ODo6SGFuZGxlPHY4OjpP
YmplY3Q+IGdldChOb2RlKiBvYmplY3QpIGNvbnN0IHsgcmV0dXJuIG1fZG9tTm9kZU1hcC0+Z2V0
KG9iamVjdCk7IH0KKwogICAgIERPTVdyYXBwZXJNYXA8Tm9kZT4mIGRvbU5vZGVNYXAoKSB7IHJl
dHVybiAqbV9kb21Ob2RlTWFwOyB9CiAgICAgRE9NV3JhcHBlck1hcDx2b2lkPiYgZG9tT2JqZWN0
TWFwKCkgeyByZXR1cm4gKm1fZG9tT2JqZWN0TWFwOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9WOERPTVdyYXBwZXIuY3BwCmluZGV4IDc4M2NhYmY1NmY0NTlkOTgwMmEwZDNkMjk5
Y2JlOGUxYTFmMTdjYTYuLmFhYzk1ZGJlZTJhM2MyMDViZTFjMDMxNTI0MDkyZDljMWYzNWJiNDYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmNwcApAQCAtNjgs
MTUgKzY4LDYgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi12ODo6UGVyc2lzdGVudDx2ODo6
T2JqZWN0PiBWOERPTVdyYXBwZXI6OnNldEpTV3JhcHBlckZvckRPTU5vZGUoUGFzc1JlZlB0cjxO
b2RlPiBub2RlLCB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXBwZXIsIHY4OjpJc29sYXRlKiBp
c29sYXRlKQotewotICAgIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+IHdyYXBwZXJIYW5kbGUg
PSB2ODo6UGVyc2lzdGVudDx2ODo6T2JqZWN0Pjo6TmV3KHdyYXBwZXIpOwotICAgIEFTU0VSVCht
YXliZURPTVdyYXBwZXIod3JhcHBlckhhbmRsZSkpOwotICAgIHdyYXBwZXJIYW5kbGUuU2V0V3Jh
cHBlckNsYXNzSWQodjhET01Ob2RlQ2xhc3NJZCk7Ci0gICAgZ2V0RE9NTm9kZU1hcChpc29sYXRl
KS5zZXQobm9kZS5sZWFrUmVmKCksIHdyYXBwZXJIYW5kbGUpOwotICAgIHJldHVybiB3cmFwcGVy
SGFuZGxlOwotfQotCiB2b2lkIFY4RE9NV3JhcHBlcjo6c2V0TmFtZWRIaWRkZW5SZWZlcmVuY2Uo
djg6OkhhbmRsZTx2ODo6T2JqZWN0PiBwYXJlbnQsIGNvbnN0IGNoYXIqIG5hbWUsIHY4OjpIYW5k
bGU8djg6OlZhbHVlPiBjaGlsZCkKIHsKICAgICBBU1NFUlQobmFtZSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5oCmluZGV4IDM0ZDg4MTk0Njc1YjljMTQxNzMyMWNi
NmVhMTU4NzMyNjliODI2YjkuLjM3N2ZjZWRmNmVjNDEyNmZiNGEyYTY5MGJiMjY0ODY2YWFhMzQw
ZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5oCkBAIC0xMDMs
NyArMTAzLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgICAgIHRlbXBsYXRlPHR5cGVu
YW1lIFQ+CiAgICAgICAgIHN0YXRpYyB2ODo6UGVyc2lzdGVudDx2ODo6T2JqZWN0PiBzZXRKU1dy
YXBwZXJGb3JET01PYmplY3QoUGFzc1JlZlB0cjxUPiwgdjg6OkhhbmRsZTx2ODo6T2JqZWN0Piwg
djg6Oklzb2xhdGUqID0gMCk7Ci0gICAgICAgIHN0YXRpYyB2ODo6UGVyc2lzdGVudDx2ODo6T2Jq
ZWN0PiBzZXRKU1dyYXBwZXJGb3JET01Ob2RlKFBhc3NSZWZQdHI8Tm9kZT4sIHY4OjpIYW5kbGU8
djg6Ok9iamVjdD4sIHY4OjpJc29sYXRlKiA9IDApOwogCiAgICAgICAgIHN0YXRpYyBib29sIGlz
VmFsaWRET01PYmplY3Qodjg6OkhhbmRsZTx2ODo6VmFsdWU+KTsKIApAQCAtMTMxLDYgKzEzMCwx
OSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgICAgICBET01XcmFwcGVyTWFwPE5vZGU+
JiBkb21Ob2RlTWFwID0gc3RvcmUtPmRvbU5vZGVNYXAoKTsKICAgICAgICAgICAgIHJldHVybiBk
b21Ob2RlTWFwLmdldChub2RlKTsKICAgICAgICAgfQorCisgICAgcHJpdmF0ZToKKyAgICAgICAg
c3RhdGljIHZvaWQgc2V0SlNXcmFwcGVyUHJpdmF0ZSh2b2lkKiBvYmplY3QsIHY4OjpQZXJzaXN0
ZW50PHY4OjpPYmplY3Q+IHdyYXBwZXIsIHY4OjpJc29sYXRlKiBpc29sYXRlKQorICAgICAgICB7
CisgICAgICAgICAgICB3cmFwcGVyLlNldFdyYXBwZXJDbGFzc0lkKHY4RE9NT2JqZWN0Q2xhc3NJ
ZCk7CisgICAgICAgICAgICBnZXRET01PYmplY3RNYXAoaXNvbGF0ZSkuc2V0KG9iamVjdCwgd3Jh
cHBlcik7CisgICAgICAgIH0KKworICAgICAgICBzdGF0aWMgdm9pZCBzZXRKU1dyYXBwZXJQcml2
YXRlKE5vZGUqIG9iamVjdCwgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD4gd3JhcHBlciwgdjg6
Oklzb2xhdGUqIGlzb2xhdGUpCisgICAgICAgIHsKKyAgICAgICAgICAgIHdyYXBwZXIuU2V0V3Jh
cHBlckNsYXNzSWQodjhET01Ob2RlQ2xhc3NJZCk7CisgICAgICAgICAgICBnZXRET01Ob2RlTWFw
KGlzb2xhdGUpLnNldChvYmplY3QsIHdyYXBwZXIpOworICAgICAgICB9CiAgICAgfTsKIAogICAg
IHRlbXBsYXRlPHR5cGVuYW1lIFQ+CkBAIC0xMzgsOCArMTUwLDcgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogICAgIHsKICAgICAgICAgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD4gd3JhcHBlckhh
bmRsZSA9IHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+OjpOZXcod3JhcHBlcik7CiAgICAgICAg
IEFTU0VSVChtYXliZURPTVdyYXBwZXIod3JhcHBlckhhbmRsZSkpOwotICAgICAgICB3cmFwcGVy
SGFuZGxlLlNldFdyYXBwZXJDbGFzc0lkKHY4RE9NT2JqZWN0Q2xhc3NJZCk7Ci0gICAgICAgIGdl
dERPTU9iamVjdE1hcChpc29sYXRlKS5zZXQob2JqZWN0LmxlYWtSZWYoKSwgd3JhcHBlckhhbmRs
ZSk7CisgICAgICAgIHNldEpTV3JhcHBlclByaXZhdGUob2JqZWN0LmxlYWtSZWYoKSwgd3JhcHBl
ckhhbmRsZSwgaXNvbGF0ZSk7CiAgICAgICAgIHJldHVybiB3cmFwcGVySGFuZGxlOwogICAgIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4SFRNTElt
YWdlRWxlbWVudENvbnN0cnVjdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1
c3RvbS9WOEhUTUxJbWFnZUVsZW1lbnRDb25zdHJ1Y3Rvci5jcHAKaW5kZXggMjU2YzlkMzdlNDEx
Y2ZlNzBhNmUzNjM3ODJhMzY2M2EwNDQ1M2QzZi4uNThhN2FmNDkyZTI5MDVmYWVhNzBjZjRlYjQz
N2EyNmYxZWRkZDI1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4SFRNTEltYWdlRWxlbWVudENvbnN0cnVjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9jdXN0b20vVjhIVE1MSW1hZ2VFbGVtZW50Q29uc3RydWN0b3IuY3BwCkBA
IC04MCw3ICs4MCw3IEBAIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdjhIVE1MSW1hZ2VF
bGVtZW50Q29uc3RydWN0b3JDYWxsYmFjayhjb25zdCB2ODo6QXJnCiAgICAgUmVmUHRyPEhUTUxJ
bWFnZUVsZW1lbnQ+IGltYWdlID0gSFRNTEltYWdlRWxlbWVudDo6Y3JlYXRlRm9ySlNDb25zdHJ1
Y3Rvcihkb2N1bWVudCwgb3B0aW9uYWxXaWR0aCwgb3B0aW9uYWxIZWlnaHQpOwogICAgIHY4OjpI
YW5kbGU8djg6Ok9iamVjdD4gd3JhcHBlciA9IGFyZ3MuSG9sZGVyKCk7CiAgICAgVjhET01XcmFw
cGVyOjpzZXRET01XcmFwcGVyKHdyYXBwZXIsICZWOEhUTUxJbWFnZUVsZW1lbnRDb25zdHJ1Y3Rv
cjo6aW5mbywgaW1hZ2UuZ2V0KCkpOwotICAgIFY4RE9NV3JhcHBlcjo6c2V0SlNXcmFwcGVyRm9y
RE9NTm9kZShpbWFnZS5yZWxlYXNlKCksIHdyYXBwZXIpOworICAgIFY4RE9NV3JhcHBlcjo6c2V0
SlNXcmFwcGVyRm9yRE9NT2JqZWN0KGltYWdlLnJlbGVhc2UoKSwgd3JhcHBlcik7CiAgICAgcmV0
dXJuIHdyYXBwZXI7CiB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>