<?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>52721</bug_id>
          
          <creation_ts>2011-01-19 06:44:29 -0800</creation_ts>
          <short_desc>Web Inspector: [JSC] scripts have incorrect starting line (always 1)</short_desc>
          <delta_ts>2011-01-19 09:01:45 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Pavel Podivilov">podivilov</reporter>
          <assigned_to name="Pavel Podivilov">podivilov</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>336490</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Podivilov">podivilov</who>
    <bug_when>2011-01-19 06:44:29 -0800</bug_when>
    <thetext>Web Inspector: [JSC] scripts has incorrect starting line (always 1).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336492</commentid>
    <comment_count>1</comment_count>
      <attachid>79417</attachid>
    <who name="Pavel Podivilov">podivilov</who>
    <bug_when>2011-01-19 06:45:59 -0800</bug_when>
    <thetext>Created attachment 79417
Patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336515</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-01-19 07:32:49 -0800</bug_when>
    <thetext>Attachment 79417 did not build on mac:
Build output: http://queues.webkit.org/results/7535205</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336536</commentid>
    <comment_count>3</comment_count>
      <attachid>79417</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-01-19 08:07:31 -0800</bug_when>
    <thetext>Comment on attachment 79417
Patch.

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

&gt; LayoutTests/inspector/debugger-scripts.html:6
&gt; +&lt;script&gt;// First script

Is the comment necessary?

&gt; LayoutTests/inspector/debugger-scripts.html:15
&gt; +        WebInspector.debuggerModel.queryScripts(function(script) { step2({ data: script.sourceID }) });

Why do you need to call step2 from 2 places, wouldn&apos;t adding it as ParsedScriptSource listener be enough?

&gt; LayoutTests/inspector/debugger-scripts.html:46
&gt; +window.onload = runTest;

Why not declare it as body onload=&quot;runTest()&quot; like in other inspector tests?

&gt; LayoutTests/inspector/debugger-scripts.html:52
&gt; +Tests that valid parsed script notifications are received by front-end.

Please add a link to the bug.

&gt; LayoutTests/inspector/debugger-scripts.html:55
&gt; +&lt;/body&gt;

Opening &lt;body&gt; tag is missing, is it intentional? If so it should be documented.

&gt; Source/WebCore/bindings/js/ScriptDebugServer.cpp:296
&gt; +        copy[i]-&gt;didParseSource(sourceID, url, data, lineOffset, columnOffset, worldType);

We should change listeners API to pass TextPostion instead of line+column separately</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336562</commentid>
    <comment_count>4</comment_count>
    <who name="Pavel Podivilov">podivilov</who>
    <bug_when>2011-01-19 08:57:47 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 79417 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=79417&amp;action=review
&gt; 
&gt; &gt; LayoutTests/inspector/debugger-scripts.html:6
&gt; &gt; +&lt;script&gt;// First script
&gt; 
&gt; Is the comment necessary?

Not really :)

&gt; 
&gt; &gt; LayoutTests/inspector/debugger-scripts.html:15
&gt; &gt; +        WebInspector.debuggerModel.queryScripts(function(script) { step2({ data: script.sourceID }) });
&gt; 
&gt; Why do you need to call step2 from 2 places, wouldn&apos;t adding it as ParsedScriptSource listener be enough?

When test is started there can already be scripts in DebuggerModel (at least for v8).

&gt; 
&gt; &gt; LayoutTests/inspector/debugger-scripts.html:46
&gt; &gt; +window.onload = runTest;
&gt; 
&gt; Why not declare it as body onload=&quot;runTest()&quot; like in other inspector tests?
&gt; 

Because JSC and v8 treat inlined handler scripts differently (there won&apos;t be parsedScript notification from v8). But it doesn&apos;t seem to be important enough to add separate expectation for chromium.

&gt; &gt; LayoutTests/inspector/debugger-scripts.html:52
&gt; &gt; +Tests that valid parsed script notifications are received by front-end.
&gt; 
&gt; Please add a link to the bug.

Done.

&gt; 
&gt; &gt; LayoutTests/inspector/debugger-scripts.html:55
&gt; &gt; +&lt;/body&gt;
&gt; 
&gt; Opening &lt;body&gt; tag is missing, is it intentional? If so it should be documented.

Fixed.

&gt; 
&gt; &gt; Source/WebCore/bindings/js/ScriptDebugServer.cpp:296
&gt; &gt; +        copy[i]-&gt;didParseSource(sourceID, url, data, lineOffset, columnOffset, worldType);
&gt; 
&gt; We should change listeners API to pass TextPostion instead of line+column separately

TextPosition isn&apos;t used by v8 debugger, so we should probably keep pair of ints.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336565</commentid>
    <comment_count>5</comment_count>
    <who name="Pavel Podivilov">podivilov</who>
    <bug_when>2011-01-19 09:01:45 -0800</bug_when>
    <thetext>Committed r76129: &lt;http://trac.webkit.org/changeset/76129&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79417</attachid>
            <date>2011-01-19 06:45:59 -0800</date>
            <delta_ts>2011-01-19 08:07:31 -0800</delta_ts>
            <desc>Patch.</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>18493</size>
            <attacher name="Pavel Podivilov">podivilov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAzNzhmMWU1Li5kYjQ1ZGFlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDEt
MTkgIFBhdmVsIFBvZGl2aWxvdiAgPHBvZGl2aWxvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogW0pT
Q10gc2NyaXB0cyBoYXMgaW5jb3JyZWN0IHN0YXJ0aW5nIGxpbmUgKGFsd2F5cyAxKS4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyNzIxCisKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZGVidWdnZXItc2NyaXB0cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGluc3BlY3Rvci9kZWJ1Z2dlci1zY3JpcHRzLmh0bWw6IEFkZGVkLgorCiAyMDExLTAx
LTE4ICBNYWNpZWogU3RhY2hvd2lhayAgPG1qc0BhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgU2FtIFdlaW5pZy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1
Z2dlci1zY3JpcHRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dl
ci1zY3JpcHRzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li43OThmMTY2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVn
Z2VyLXNjcmlwdHMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTEgQEAKK1Rlc3RzIHRoYXQgdmFs
aWQgcGFyc2VkIHNjcmlwdCBub3RpZmljYXRpb25zIGFyZSByZWNlaXZlZCBieSBmcm9udC1lbmQu
CisKK0RlYnVnZ2VyIHdhcyBlbmFibGVkLgorc2NyaXB0IDE6CisgICAgb2Zmc2V0OiA1OjgKKyAg
ICBsZW5ndGg6IDExMjEKK3NjcmlwdCAyOgorICAgIG9mZnNldDogNDA6MjEKKyAgICBsZW5ndGg6
IDUwCitEZWJ1Z2dlciB3YXMgZGlzYWJsZWQuCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lu
c3BlY3Rvci9kZWJ1Z2dlci1zY3JpcHRzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVi
dWdnZXItc2NyaXB0cy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkx
YzIwMzQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIt
c2NyaXB0cy5odG1sCkBAIC0wLDAgKzEsNTYgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNy
Yz0iLi4vaHR0cC90ZXN0cy9pbnNwZWN0b3IvaW5zcGVjdG9yLXRlc3QyLmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi9odHRwL3Rlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci10ZXN0Mi5qcyI+
PC9zY3JpcHQ+CisKKzxzY3JpcHQ+Ly8gRmlyc3Qgc2NyaXB0CisKK3ZhciB0ZXN0ID0gZnVuY3Rp
b24oKQoreworICAgIHZhciBzY3JpcHRzID0gW107CisgICAgSW5zcGVjdG9yVGVzdC5zdGFydERl
YnVnZ2VyVGVzdChzdGVwMSk7CisKKyAgICBmdW5jdGlvbiBzdGVwMSgpCisgICAgeworICAgICAg
ICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNb2RlbC5xdWVyeVNjcmlwdHMoZnVuY3Rpb24oc2NyaXB0
KSB7IHN0ZXAyKHsgZGF0YTogc2NyaXB0LnNvdXJjZUlEIH0pIH0pOworICAgICAgICBXZWJJbnNw
ZWN0b3IuZGVidWdnZXJNb2RlbC5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5EZWJ1Z2dl
ck1vZGVsLkV2ZW50cy5QYXJzZWRTY3JpcHRTb3VyY2UsIHN0ZXAyKTsKKyAgICB9CisKKyAgICBm
dW5jdGlvbiBzdGVwMihldmVudCkKKyAgICB7CisgICAgICAgIHZhciBzY3JpcHQgPSBXZWJJbnNw
ZWN0b3IuZGVidWdnZXJNb2RlbC5zY3JpcHRGb3JTb3VyY2VJRChldmVudC5kYXRhKTsKKyAgICAg
ICAgaWYgKHNjcmlwdC5zb3VyY2VVUkwgIT09IFdlYkluc3BlY3Rvci5tYWluUmVzb3VyY2UudXJs
KQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBzY3JpcHRzLnB1c2goc2NyaXB0KTsKKyAg
ICAgICAgaWYgKHNjcmlwdHMubGVuZ3RoID09PSAyKQorICAgICAgICAgICAgc3RlcDMoKTsKKyAg
ICB9CisKKyAgICBmdW5jdGlvbiBzdGVwMygpCisgICAgeworICAgICAgICBzY3JpcHRzLnNvcnQo
ZnVuY3Rpb24oeCwgeSkgeyByZXR1cm4geC5saW5lT2Zmc2V0IC0geS5saW5lT2Zmc2V0IH0pOwor
ICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHNjcmlwdHMubGVuZ3RoOyArK2kpIHsKKyAgICAg
ICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJzY3JpcHQgIiArIChpICsgMSkgKyAiOiIp
OworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIiAgICBvZmZzZXQ6ICIgKyBz
Y3JpcHRzW2ldLmxpbmVPZmZzZXQgKyAiOiIgKyBzY3JpcHRzW2ldLmNvbHVtbk9mZnNldCk7Cisg
ICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiICAgIGxlbmd0aDogIiArIHNjcmlw
dHNbaV0ubGVuZ3RoKTsKKyAgICAgICAgfQorICAgICAgICBJbnNwZWN0b3JUZXN0LmNvbXBsZXRl
RGVidWdnZXJUZXN0KCk7CisgICAgfQorfQorCis8L3NjcmlwdD4gICAgPHNjcmlwdD4KK2Z1bmN0
aW9uIGRvU3R1ZmYoKQoreworfQorCit3aW5kb3cub25sb2FkID0gcnVuVGVzdDsKKzwvc2NyaXB0
PgorCis8L2hlYWQ+CisKKzxwPgorVGVzdHMgdGhhdCB2YWxpZCBwYXJzZWQgc2NyaXB0IG5vdGlm
aWNhdGlvbnMgYXJlIHJlY2VpdmVkIGJ5IGZyb250LWVuZC4KKzwvcD4KKworPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKaW5kZXggNGNiOWQwZi4uM2YzMDNiMyAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMDEtMTkgIFBhdmVsIFBv
ZGl2aWxvdiAgPHBvZGl2aWxvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogW0pTQ10gc2NyaXB0cyBo
YXMgaW5jb3JyZWN0IHN0YXJ0aW5nIGxpbmUgKGFsd2F5cyAxKS4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyNzIxCisKKyAgICAgICAgKiBkZWJ1Z2dl
ci9EZWJ1Z2dlci5jcHA6CisgICAgICAgIChKU0M6OkRlYnVnZ2VyOjpyZWNvbXBpbGVBbGxKU0Z1
bmN0aW9ucyk6CisgICAgICAgICogZGVidWdnZXIvRGVidWdnZXIuaDoKKyAgICAgICAgKiBwYXJz
ZXIvUGFyc2VyLmg6CisgICAgICAgIChKU0M6OlBhcnNlcjo6cGFyc2UpOgorICAgICAgICAqIHBh
cnNlci9Tb3VyY2VDb2RlLmg6CisgICAgICAgIChKU0M6OlNvdXJjZUNvZGU6OlNvdXJjZUNvZGUp
OgorICAgICAgICAqIHBhcnNlci9Tb3VyY2VQcm92aWRlci5oOgorICAgICAgICAoSlNDOjpTb3Vy
Y2VQcm92aWRlcjo6c3RhcnRQb3NpdGlvbik6CisKIDIwMTEtMDEtMTggIEtlbm5ldGggUnVzc2Vs
bCAgPGtickBnb29nbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI3
NjA3OC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dl
ci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXIuY3BwCmluZGV4
IDZiMjRjNWEuLjIzYjkzNjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1
Z2dlci9EZWJ1Z2dlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0Rl
YnVnZ2VyLmNwcApAQCAtOTQsNyArOTQsNyBAQCB2b2lkIERlYnVnZ2VyOjpyZWNvbXBpbGVBbGxK
U0Z1bmN0aW9ucyhKU0dsb2JhbERhdGEqIGdsb2JhbERhdGEpCiAgICAgLy8gSmF2YVNjcmlwdCBp
biB0aGUgaW5zcGVjdG9yLgogICAgIFNvdXJjZVByb3ZpZGVyTWFwOjpjb25zdF9pdGVyYXRvciBl
bmQgPSBzb3VyY2VQcm92aWRlcnMuZW5kKCk7CiAgICAgZm9yIChTb3VyY2VQcm92aWRlck1hcDo6
Y29uc3RfaXRlcmF0b3IgaXRlciA9IHNvdXJjZVByb3ZpZGVycy5iZWdpbigpOyBpdGVyICE9IGVu
ZDsgKytpdGVyKQotICAgICAgICBzb3VyY2VQYXJzZWQoaXRlci0+c2Vjb25kLCBTb3VyY2VDb2Rl
KGl0ZXItPmZpcnN0KSwgLTEsIFVTdHJpbmcoKSk7CisgICAgICAgIHNvdXJjZVBhcnNlZChpdGVy
LT5zZWNvbmQsIGl0ZXItPmZpcnN0LCAtMSwgVVN0cmluZygpKTsKIH0KIAogSlNWYWx1ZSBldmFs
dWF0ZUluR2xvYmFsQ2FsbEZyYW1lKGNvbnN0IFVTdHJpbmcmIHNjcmlwdCwgSlNWYWx1ZSYgZXhj
ZXB0aW9uLCBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGVidWdnZXIvRGVidWdnZXIuaAppbmRleCAzYjliZWM0Li5lYzVjZjM3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXIuaAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXIuaApAQCAtMzEsNyArMzEsNyBAQCBuYW1l
c3BhY2UgSlNDIHsKICAgICBjbGFzcyBKU0dsb2JhbERhdGE7CiAgICAgY2xhc3MgSlNHbG9iYWxP
YmplY3Q7CiAgICAgY2xhc3MgSlNWYWx1ZTsKLSAgICBjbGFzcyBTb3VyY2VDb2RlOworICAgIGNs
YXNzIFNvdXJjZVByb3ZpZGVyOwogICAgIGNsYXNzIFVTdHJpbmc7CiAKICAgICBjbGFzcyBEZWJ1
Z2dlciB7CkBAIC00MSw3ICs0MSw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICB2b2lkIGF0
dGFjaChKU0dsb2JhbE9iamVjdCopOwogICAgICAgICB2aXJ0dWFsIHZvaWQgZGV0YWNoKEpTR2xv
YmFsT2JqZWN0Kik7CiAKLSAgICAgICAgdmlydHVhbCB2b2lkIHNvdXJjZVBhcnNlZChFeGVjU3Rh
dGUqLCBjb25zdCBTb3VyY2VDb2RlJiwgaW50IGVycm9yTGluZU51bWJlciwgY29uc3QgVVN0cmlu
ZyYgZXJyb3JNZXNzYWdlKSA9IDA7CisgICAgICAgIHZpcnR1YWwgdm9pZCBzb3VyY2VQYXJzZWQo
RXhlY1N0YXRlKiwgU291cmNlUHJvdmlkZXIqLCBpbnQgZXJyb3JMaW5lTnVtYmVyLCBjb25zdCBV
U3RyaW5nJiBlcnJvck1lc3NhZ2UpID0gMDsKICAgICAgICAgdmlydHVhbCB2b2lkIGV4Y2VwdGlv
bihjb25zdCBEZWJ1Z2dlckNhbGxGcmFtZSYsIGludHB0cl90IHNvdXJjZUlELCBpbnQgbGluZU51
bWJlciwgYm9vbCBoYXNIYW5kbGVyKSA9IDA7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBhdFN0YXRl
bWVudChjb25zdCBEZWJ1Z2dlckNhbGxGcmFtZSYsIGludHB0cl90IHNvdXJjZUlELCBpbnQgbGlu
ZU51bWJlcikgPSAwOwogICAgICAgICB2aXJ0dWFsIHZvaWQgY2FsbEV2ZW50KGNvbnN0IERlYnVn
Z2VyQ2FsbEZyYW1lJiwgaW50cHRyX3Qgc291cmNlSUQsIGludCBsaW5lTnVtYmVyKSA9IDA7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuaAppbmRleCAyMTM4MjdiLi5iMjU3YjY4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmgKQEAgLTExOSw3ICsxMTksNyBAQCBu
YW1lc3BhY2UgSlNDIHsKICAgICAgICAgbV9mdW5jRGVjbGFyYXRpb25zID0gMDsKIAogICAgICAg
ICBpZiAoZGVidWdnZXIgJiYgIVBhcnNlZE5vZGU6OnNjb3BlSXNGdW5jdGlvbikKLSAgICAgICAg
ICAgIGRlYnVnZ2VyLT5zb3VyY2VQYXJzZWQoZGVidWdnZXJFeGVjU3RhdGUsIHNvdXJjZSwgZXJy
TGluZSwgZXJyTXNnKTsKKyAgICAgICAgICAgIGRlYnVnZ2VyLT5zb3VyY2VQYXJzZWQoZGVidWdn
ZXJFeGVjU3RhdGUsIHNvdXJjZS5wcm92aWRlcigpLCBlcnJMaW5lLCBlcnJNc2cpOwogICAgICAg
ICByZXR1cm4gcmVzdWx0LnJlbGVhc2UoKTsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9wYXJzZXIvU291cmNlQ29kZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3BhcnNlci9Tb3VyY2VDb2RlLmgKaW5kZXggYTNjZTc1OS4uOWJhNGRhMyAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VDb2RlLmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VDb2RlLmgKQEAgLTMxLDcgKzMxLDYgQEAKIAogI2lu
Y2x1ZGUgIlNvdXJjZVByb3ZpZGVyLmgiCiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgotI2luY2x1
ZGUgPHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oPgogCiBuYW1lc3BhY2UgSlNDIHsKIApAQCAtNDIs
MzQgKzQxLDIyIEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICAgICAgLCBtX3N0YXJ0Q2hhcigw
KQogICAgICAgICAgICAgLCBtX2VuZENoYXIoMCkKICAgICAgICAgICAgICwgbV9maXJzdExpbmUo
MCkKLSAgICAgICAgICAgICwgbV9maXJzdENvbHVtbigwKQogICAgICAgICB7CiAgICAgICAgIH0K
IAotICAgICAgICBTb3VyY2VDb2RlKFBhc3NSZWZQdHI8U291cmNlUHJvdmlkZXI+IHByb3ZpZGVy
LCBpbnQgZmlyc3RMaW5lID0gMSwgaW50IGZpcnN0Q29sdW1uID0gMSkKKyAgICAgICAgU291cmNl
Q29kZShQYXNzUmVmUHRyPFNvdXJjZVByb3ZpZGVyPiBwcm92aWRlciwgaW50IGZpcnN0TGluZSA9
IDEpCiAgICAgICAgICAgICA6IG1fcHJvdmlkZXIocHJvdmlkZXIpCiAgICAgICAgICAgICAsIG1f
c3RhcnRDaGFyKDApCiAgICAgICAgICAgICAsIG1fZW5kQ2hhcihtX3Byb3ZpZGVyLT5sZW5ndGgo
KSkKICAgICAgICAgICAgICwgbV9maXJzdExpbmUoc3RkOjptYXgoZmlyc3RMaW5lLCAxKSkKLSAg
ICAgICAgICAgICwgbV9maXJzdENvbHVtbihzdGQ6Om1heChmaXJzdENvbHVtbiwgMSkpCiAgICAg
ICAgIHsKICAgICAgICAgfQogCi0gICAgICAgIFNvdXJjZUNvZGUoUGFzc1JlZlB0cjxTb3VyY2VQ
cm92aWRlcj4gcHJvdmlkZXIsIGludCBzdGFydCwgaW50IGVuZCwgaW50IGZpcnN0TGluZSwgaW50
IGZpcnN0Q29sdW1uID0gMSkKKyAgICAgICAgU291cmNlQ29kZShQYXNzUmVmUHRyPFNvdXJjZVBy
b3ZpZGVyPiBwcm92aWRlciwgaW50IHN0YXJ0LCBpbnQgZW5kLCBpbnQgZmlyc3RMaW5lKQogICAg
ICAgICAgICAgOiBtX3Byb3ZpZGVyKHByb3ZpZGVyKQogICAgICAgICAgICAgLCBtX3N0YXJ0Q2hh
cihzdGFydCkKICAgICAgICAgICAgICwgbV9lbmRDaGFyKGVuZCkKICAgICAgICAgICAgICwgbV9m
aXJzdExpbmUoc3RkOjptYXgoZmlyc3RMaW5lLCAxKSkKLSAgICAgICAgICAgICwgbV9maXJzdENv
bHVtbihzdGQ6Om1heChmaXJzdENvbHVtbiwgMSkpCi0gICAgICAgIHsKLSAgICAgICAgfQotCi0g
ICAgICAgIFNvdXJjZUNvZGUoUGFzc1JlZlB0cjxTb3VyY2VQcm92aWRlcj4gcHJvdmlkZXIsIGNv
bnN0IFRleHRQb3NpdGlvbjEmIHN0YXJ0UG9zaXRpb24pCi0gICAgICAgICAgICA6IG1fcHJvdmlk
ZXIocHJvdmlkZXIpCi0gICAgICAgICAgICAsIG1fc3RhcnRDaGFyKDApCi0gICAgICAgICAgICAs
IG1fZW5kQ2hhcihtX3Byb3ZpZGVyLT5sZW5ndGgoKSkKLSAgICAgICAgICAgICwgbV9maXJzdExp
bmUoc3RhcnRQb3NpdGlvbi5tX2xpbmUub25lQmFzZWRJbnQoKSkKLSAgICAgICAgICAgICwgbV9m
aXJzdENvbHVtbihzdGFydFBvc2l0aW9uLm1fY29sdW1uLm9uZUJhc2VkSW50KCkpCiAgICAgICAg
IHsKICAgICAgICAgfQogCkBAIC04Myw3ICs3MCw2IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAg
ICBib29sIGlzTnVsbCgpIGNvbnN0IHsgcmV0dXJuICFtX3Byb3ZpZGVyOyB9CiAgICAgICAgIFNv
dXJjZVByb3ZpZGVyKiBwcm92aWRlcigpIGNvbnN0IHsgcmV0dXJuIG1fcHJvdmlkZXIuZ2V0KCk7
IH0KICAgICAgICAgaW50IGZpcnN0TGluZSgpIGNvbnN0IHsgcmV0dXJuIG1fZmlyc3RMaW5lOyB9
Ci0gICAgICAgIGludCBmaXJzdENvbHVtbigpIGNvbnN0IHsgcmV0dXJuIG1fZmlyc3RDb2x1bW47
IH0KICAgICAgICAgaW50IHN0YXJ0T2Zmc2V0KCkgY29uc3QgeyByZXR1cm4gbV9zdGFydENoYXI7
IH0KICAgICAgICAgaW50IGVuZE9mZnNldCgpIGNvbnN0IHsgcmV0dXJuIG1fZW5kQ2hhcjsgfQog
ICAgICAgICBjb25zdCBVQ2hhciogZGF0YSgpIGNvbnN0IHsgcmV0dXJuIG1fcHJvdmlkZXItPmRh
dGEoKSArIG1fc3RhcnRDaGFyOyB9CkBAIC05NCw3ICs4MCw2IEBAIG5hbWVzcGFjZSBKU0Mgewog
ICAgICAgICBpbnQgbV9zdGFydENoYXI7CiAgICAgICAgIGludCBtX2VuZENoYXI7CiAgICAgICAg
IGludCBtX2ZpcnN0TGluZTsKLSAgICAgICAgaW50IG1fZmlyc3RDb2x1bW47CiAgICAgfTsKIAog
ICAgIGlubGluZSBTb3VyY2VDb2RlIG1ha2VTb3VyY2UoY29uc3QgVVN0cmluZyYgc291cmNlLCBj
b25zdCBVU3RyaW5nJiB1cmwgPSBVU3RyaW5nKCksIGludCBmaXJzdExpbmUgPSAxKQpkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VQcm92aWRlci5oIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Tb3VyY2VQcm92aWRlci5oCmluZGV4IDVmZjFkMTQu
LjM2NDgxMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvU291cmNl
UHJvdmlkZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1NvdXJjZVByb3Zp
ZGVyLmgKQEAgLTMxLDYgKzMxLDcgQEAKIAogI2luY2x1ZGUgIlVTdHJpbmcuaCIKICNpbmNsdWRl
IDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1RleHRQb3NpdGlvbi5oPgog
CiBuYW1lc3BhY2UgSlNDIHsKIApAQCAtNDgsNiArNDksNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAg
ICAgICAgdmlydHVhbCBpbnQgbGVuZ3RoKCkgY29uc3QgPSAwOwogICAgICAgICAKICAgICAgICAg
Y29uc3QgVVN0cmluZyYgdXJsKCkgeyByZXR1cm4gbV91cmw7IH0KKyAgICAgICAgdmlydHVhbCBU
ZXh0UG9zaXRpb24xIHN0YXJ0UG9zaXRpb24oKSBjb25zdCB7IHJldHVybiBUZXh0UG9zaXRpb24x
OjptaW5pbXVtUG9zaXRpb24oKTsgfQogICAgICAgICBpbnRwdHJfdCBhc0lEKCkgeyByZXR1cm4g
cmVpbnRlcnByZXRfY2FzdDxpbnRwdHJfdD4odGhpcyk7IH0KIAogICAgICAgICBib29sIGlzVmFs
aWQoKSBjb25zdCB7IHJldHVybiBtX3ZhbGlkYXRlZDsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGEzZTVkYzgu
LjRmNWZlOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMS0wMS0xOSAgUGF2ZWwg
UG9kaXZpbG92ICA8cG9kaXZpbG92QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWIgSW5zcGVjdG9yOiBbSlNDXSBzY3JpcHRz
IGhhcyBpbmNvcnJlY3Qgc3RhcnRpbmcgbGluZSAoYWx3YXlzIDEpLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTI3MjEKKworICAgICAgICBUZXN0OiBp
bnNwZWN0b3IvZGVidWdnZXItc2NyaXB0cy5odG1sCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9T
Y3JpcHREZWJ1Z1NlcnZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHREZWJ1Z1NlcnZl
cjo6ZGlzcGF0Y2hEaWRQYXJzZVNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHREZWJ1
Z1NlcnZlcjo6ZGlzcGF0Y2hGYWlsZWRUb1BhcnNlU291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6
OlNjcmlwdERlYnVnU2VydmVyOjpzb3VyY2VQYXJzZWQpOgorICAgICAgICAqIGJpbmRpbmdzL2pz
L1NjcmlwdERlYnVnU2VydmVyLmg6CisgICAgICAgICogYmluZGluZ3MvanMvU2NyaXB0U291cmNl
Q29kZS5oOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0U291cmNlQ29kZTo6U2NyaXB0U291cmNl
Q29kZSk6CisgICAgICAgICogYmluZGluZ3MvanMvU3RyaW5nU291cmNlUHJvdmlkZXIuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OlN0cmluZ1NvdXJjZVByb3ZpZGVyOjpjcmVhdGUpOgorICAgICAgICAo
V2ViQ29yZTo6U3RyaW5nU291cmNlUHJvdmlkZXI6OnN0YXJ0UG9zaXRpb24pOgorICAgICAgICAo
V2ViQ29yZTo6U3RyaW5nU291cmNlUHJvdmlkZXI6OlN0cmluZ1NvdXJjZVByb3ZpZGVyKToKKwog
MjAxMS0wMS0xOCBNT1JJVEEgSGFqaW1lICA8bW9ycml0YUBnb29nbGUuY29tPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IFJ5b3N1a2UgTml3YS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL1NjcmlwdERlYnVnU2VydmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL1NjcmlwdERlYnVnU2VydmVyLmNwcAppbmRleCBiMjM2NDFmLi5iNTE2ZjZkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHREZWJ1Z1NlcnZlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0RGVidWdTZXJ2ZXIuY3BwCkBAIC00
OCw3ICs0OCw3IEBACiAjaW5jbHVkZSAiU2Nyb2xsVmlldy5oIgogI2luY2x1ZGUgIldpZGdldC5o
IgogI2luY2x1ZGUgPGRlYnVnZ2VyL0RlYnVnZ2VyQ2FsbEZyYW1lLmg+Ci0jaW5jbHVkZSA8cGFy
c2VyL1NvdXJjZUNvZGUuaD4KKyNpbmNsdWRlIDxwYXJzZXIvU291cmNlUHJvdmlkZXIuaD4KICNp
bmNsdWRlIDxydW50aW1lL0pTTG9jay5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0NvbmNh
dGVuYXRlLmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KQEAgLTI4MiwyMyArMjgyLDI1
IEBAIHZvaWQgU2NyaXB0RGVidWdTZXJ2ZXI6OmRpc3BhdGNoRGlkQ29udGludWUoU2NyaXB0RGVi
dWdMaXN0ZW5lciogbGlzdGVuZXIpCiAgICAgbGlzdGVuZXItPmRpZENvbnRpbnVlKCk7CiB9CiAK
LXZvaWQgU2NyaXB0RGVidWdTZXJ2ZXI6OmRpc3BhdGNoRGlkUGFyc2VTb3VyY2UoY29uc3QgTGlz
dGVuZXJTZXQmIGxpc3RlbmVycywgY29uc3QgSlNDOjpTb3VyY2VDb2RlJiBzb3VyY2UsIFNjcmlw
dFdvcmxkVHlwZSB3b3JsZFR5cGUpCit2b2lkIFNjcmlwdERlYnVnU2VydmVyOjpkaXNwYXRjaERp
ZFBhcnNlU291cmNlKGNvbnN0IExpc3RlbmVyU2V0JiBsaXN0ZW5lcnMsIFNvdXJjZVByb3ZpZGVy
KiBzb3VyY2VQcm92aWRlciwgU2NyaXB0V29ybGRUeXBlIHdvcmxkVHlwZSkKIHsKLSAgICBTdHJp
bmcgc291cmNlSUQgPSB1c3RyaW5nVG9TdHJpbmcoSlNDOjpVU3RyaW5nOjpudW1iZXIoc291cmNl
LnByb3ZpZGVyKCktPmFzSUQoKSkpOwotICAgIFN0cmluZyB1cmwgPSB1c3RyaW5nVG9TdHJpbmco
c291cmNlLnByb3ZpZGVyKCktPnVybCgpKTsKLSAgICBTdHJpbmcgZGF0YSA9IHVzdHJpbmdUb1N0
cmluZyhKU0M6OlVTdHJpbmcoc291cmNlLmRhdGEoKSwgc291cmNlLmxlbmd0aCgpKSk7CisgICAg
U3RyaW5nIHNvdXJjZUlEID0gdXN0cmluZ1RvU3RyaW5nKEpTQzo6VVN0cmluZzo6bnVtYmVyKHNv
dXJjZVByb3ZpZGVyLT5hc0lEKCkpKTsKKyAgICBTdHJpbmcgdXJsID0gdXN0cmluZ1RvU3RyaW5n
KHNvdXJjZVByb3ZpZGVyLT51cmwoKSk7CisgICAgU3RyaW5nIGRhdGEgPSB1c3RyaW5nVG9TdHJp
bmcoSlNDOjpVU3RyaW5nKHNvdXJjZVByb3ZpZGVyLT5kYXRhKCksIHNvdXJjZVByb3ZpZGVyLT5s
ZW5ndGgoKSkpOworICAgIGludCBsaW5lT2Zmc2V0ID0gc291cmNlUHJvdmlkZXItPnN0YXJ0UG9z
aXRpb24oKS5tX2xpbmUuY29udmVydEFzWmVyb0Jhc2VkSW50KCk7CisgICAgaW50IGNvbHVtbk9m
ZnNldCA9IHNvdXJjZVByb3ZpZGVyLT5zdGFydFBvc2l0aW9uKCkubV9jb2x1bW4uY29udmVydEFz
WmVyb0Jhc2VkSW50KCk7CiAKICAgICBWZWN0b3I8U2NyaXB0RGVidWdMaXN0ZW5lcio+IGNvcHk7
CiAgICAgY29weVRvVmVjdG9yKGxpc3RlbmVycywgY29weSk7CiAgICAgZm9yIChzaXplX3QgaSA9
IDA7IGkgPCBjb3B5LnNpemUoKTsgKytpKQotICAgICAgICBjb3B5W2ldLT5kaWRQYXJzZVNvdXJj
ZShzb3VyY2VJRCwgdXJsLCBkYXRhLCBzb3VyY2UuZmlyc3RMaW5lKCkgLSAxLCBzb3VyY2UuZmly
c3RDb2x1bW4oKSAtIDEsIHdvcmxkVHlwZSk7CisgICAgICAgIGNvcHlbaV0tPmRpZFBhcnNlU291
cmNlKHNvdXJjZUlELCB1cmwsIGRhdGEsIGxpbmVPZmZzZXQsIGNvbHVtbk9mZnNldCwgd29ybGRU
eXBlKTsKIH0KIAotdm9pZCBTY3JpcHREZWJ1Z1NlcnZlcjo6ZGlzcGF0Y2hGYWlsZWRUb1BhcnNl
U291cmNlKGNvbnN0IExpc3RlbmVyU2V0JiBsaXN0ZW5lcnMsIGNvbnN0IFNvdXJjZUNvZGUmIHNv
dXJjZSwgaW50IGVycm9yTGluZSwgY29uc3QgU3RyaW5nJiBlcnJvck1lc3NhZ2UpCit2b2lkIFNj
cmlwdERlYnVnU2VydmVyOjpkaXNwYXRjaEZhaWxlZFRvUGFyc2VTb3VyY2UoY29uc3QgTGlzdGVu
ZXJTZXQmIGxpc3RlbmVycywgU291cmNlUHJvdmlkZXIqIHNvdXJjZVByb3ZpZGVyLCBpbnQgZXJy
b3JMaW5lLCBjb25zdCBTdHJpbmcmIGVycm9yTWVzc2FnZSkKIHsKLSAgICBTdHJpbmcgdXJsID0g
dXN0cmluZ1RvU3RyaW5nKHNvdXJjZS5wcm92aWRlcigpLT51cmwoKSk7Ci0gICAgU3RyaW5nIGRh
dGEgPSB1c3RyaW5nVG9TdHJpbmcoSlNDOjpVU3RyaW5nKHNvdXJjZS5kYXRhKCksIHNvdXJjZS5s
ZW5ndGgoKSkpOwotICAgIGludCBmaXJzdExpbmUgPSBzb3VyY2UuZmlyc3RMaW5lKCk7CisgICAg
U3RyaW5nIHVybCA9IHVzdHJpbmdUb1N0cmluZyhzb3VyY2VQcm92aWRlci0+dXJsKCkpOworICAg
IFN0cmluZyBkYXRhID0gdXN0cmluZ1RvU3RyaW5nKEpTQzo6VVN0cmluZyhzb3VyY2VQcm92aWRl
ci0+ZGF0YSgpLCBzb3VyY2VQcm92aWRlci0+bGVuZ3RoKCkpKTsKKyAgICBpbnQgZmlyc3RMaW5l
ID0gc291cmNlUHJvdmlkZXItPnN0YXJ0UG9zaXRpb24oKS5tX2xpbmUub25lQmFzZWRJbnQoKTsK
IAogICAgIFZlY3RvcjxTY3JpcHREZWJ1Z0xpc3RlbmVyKj4gY29weTsKICAgICBjb3B5VG9WZWN0
b3IobGlzdGVuZXJzLCBjb3B5KTsKQEAgLTMzNSw3ICszMzcsNyBAQCB2b2lkIFNjcmlwdERlYnVn
U2VydmVyOjpkZXRhY2goSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKICAgICBEZWJ1Z2dl
cjo6ZGV0YWNoKGdsb2JhbE9iamVjdCk7CiB9CiAKLXZvaWQgU2NyaXB0RGVidWdTZXJ2ZXI6OnNv
dXJjZVBhcnNlZChFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IFNvdXJjZUNvZGUmIHNvdXJjZSwgaW50
IGVycm9yTGluZSwgY29uc3QgVVN0cmluZyYgZXJyb3JNZXNzYWdlKQordm9pZCBTY3JpcHREZWJ1
Z1NlcnZlcjo6c291cmNlUGFyc2VkKEV4ZWNTdGF0ZSogZXhlYywgU291cmNlUHJvdmlkZXIqIHNv
dXJjZVByb3ZpZGVyLCBpbnQgZXJyb3JMaW5lLCBjb25zdCBVU3RyaW5nJiBlcnJvck1lc3NhZ2Up
CiB7CiAgICAgaWYgKG1fY2FsbGluZ0xpc3RlbmVycykKICAgICAgICAgcmV0dXJuOwpAQCAtMzUz
LDkgKzM1NSw5IEBAIHZvaWQgU2NyaXB0RGVidWdTZXJ2ZXI6OnNvdXJjZVBhcnNlZChFeGVjU3Rh
dGUqIGV4ZWMsIGNvbnN0IFNvdXJjZUNvZGUmIHNvdXJjZSwKICAgICBpZiAoTGlzdGVuZXJTZXQq
IHBhZ2VMaXN0ZW5lcnMgPSBtX3BhZ2VMaXN0ZW5lcnNNYXAuZ2V0KHBhZ2UpKSB7CiAgICAgICAg
IEFTU0VSVCghcGFnZUxpc3RlbmVycy0+aXNFbXB0eSgpKTsKICAgICAgICAgaWYgKGlzRXJyb3Ip
Ci0gICAgICAgICAgICBkaXNwYXRjaEZhaWxlZFRvUGFyc2VTb3VyY2UoKnBhZ2VMaXN0ZW5lcnMs
IHNvdXJjZSwgZXJyb3JMaW5lLCB1c3RyaW5nVG9TdHJpbmcoZXJyb3JNZXNzYWdlKSk7CisgICAg
ICAgICAgICBkaXNwYXRjaEZhaWxlZFRvUGFyc2VTb3VyY2UoKnBhZ2VMaXN0ZW5lcnMsIHNvdXJj
ZVByb3ZpZGVyLCBlcnJvckxpbmUsIHVzdHJpbmdUb1N0cmluZyhlcnJvck1lc3NhZ2UpKTsKICAg
ICAgICAgZWxzZQotICAgICAgICAgICAgZGlzcGF0Y2hEaWRQYXJzZVNvdXJjZSgqcGFnZUxpc3Rl
bmVycywgc291cmNlLCB3b3JsZFR5cGUpOworICAgICAgICAgICAgZGlzcGF0Y2hEaWRQYXJzZVNv
dXJjZSgqcGFnZUxpc3RlbmVycywgc291cmNlUHJvdmlkZXIsIHdvcmxkVHlwZSk7CiAgICAgfQog
CiAgICAgbV9jYWxsaW5nTGlzdGVuZXJzID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9TY3JpcHREZWJ1Z1NlcnZlci5oIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvU2NyaXB0RGVidWdTZXJ2ZXIuaAppbmRleCA5ZDM4MGZiLi5kZTI3NGRiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHREZWJ1Z1NlcnZlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdERlYnVnU2VydmVyLmgKQEAgLTEx
NSw4ICsxMTUsOCBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlzcGF0Y2hGdW5jdGlvblRvTGlzdGVu
ZXJzKGNvbnN0IExpc3RlbmVyU2V0JiBsaXN0ZW5lcnMsIEphdmFTY3JpcHRFeGVjdXRpb25DYWxs
YmFjayBjYWxsYmFjayk7CiAgICAgdm9pZCBkaXNwYXRjaERpZFBhdXNlKFNjcmlwdERlYnVnTGlz
dGVuZXIqKTsKICAgICB2b2lkIGRpc3BhdGNoRGlkQ29udGludWUoU2NyaXB0RGVidWdMaXN0ZW5l
ciopOwotICAgIHZvaWQgZGlzcGF0Y2hEaWRQYXJzZVNvdXJjZShjb25zdCBMaXN0ZW5lclNldCYg
bGlzdGVuZXJzLCBjb25zdCBKU0M6OlNvdXJjZUNvZGUmIHNvdXJjZSwgZW51bSBTY3JpcHRXb3Js
ZFR5cGUpOwotICAgIHZvaWQgZGlzcGF0Y2hGYWlsZWRUb1BhcnNlU291cmNlKGNvbnN0IExpc3Rl
bmVyU2V0JiBsaXN0ZW5lcnMsIGNvbnN0IEpTQzo6U291cmNlQ29kZSYgc291cmNlLCBpbnQgZXJy
b3JMaW5lLCBjb25zdCBTdHJpbmcmIGVycm9yTWVzc2FnZSk7CisgICAgdm9pZCBkaXNwYXRjaERp
ZFBhcnNlU291cmNlKGNvbnN0IExpc3RlbmVyU2V0JiBsaXN0ZW5lcnMsIEpTQzo6U291cmNlUHJv
dmlkZXIqLCBlbnVtIFNjcmlwdFdvcmxkVHlwZSk7CisgICAgdm9pZCBkaXNwYXRjaEZhaWxlZFRv
UGFyc2VTb3VyY2UoY29uc3QgTGlzdGVuZXJTZXQmIGxpc3RlbmVycywgSlNDOjpTb3VyY2VQcm92
aWRlciosIGludCBlcnJvckxpbmUsIGNvbnN0IFN0cmluZyYgZXJyb3JNZXNzYWdlKTsKIAogICAg
IHZvaWQgY3JlYXRlQ2FsbEZyYW1lQW5kUGF1c2VJZk5lZWRlZChjb25zdCBKU0M6OkRlYnVnZ2Vy
Q2FsbEZyYW1lJiwgaW50cHRyX3Qgc291cmNlSUQsIGludCBsaW5lTnVtYmVyKTsKICAgICB2b2lk
IHVwZGF0ZUNhbGxGcmFtZUFuZFBhdXNlSWZOZWVkZWQoY29uc3QgSlNDOjpEZWJ1Z2dlckNhbGxG
cmFtZSYsIGludHB0cl90IHNvdXJjZUlELCBpbnQgbGluZU51bWJlcik7CkBAIC0xMjQsNyArMTI0
LDcgQEAgcHJpdmF0ZToKIAogICAgIHZpcnR1YWwgdm9pZCBkZXRhY2goSlNDOjpKU0dsb2JhbE9i
amVjdCopOwogCi0gICAgdmlydHVhbCB2b2lkIHNvdXJjZVBhcnNlZChKU0M6OkV4ZWNTdGF0ZSos
IGNvbnN0IEpTQzo6U291cmNlQ29kZSYsIGludCBlcnJvckxpbmUsIGNvbnN0IEpTQzo6VVN0cmlu
ZyYgZXJyb3JNc2cpOworICAgIHZpcnR1YWwgdm9pZCBzb3VyY2VQYXJzZWQoSlNDOjpFeGVjU3Rh
dGUqLCBKU0M6OlNvdXJjZVByb3ZpZGVyKiwgaW50IGVycm9yTGluZSwgY29uc3QgSlNDOjpVU3Ry
aW5nJiBlcnJvck1zZyk7CiAgICAgdmlydHVhbCB2b2lkIGNhbGxFdmVudChjb25zdCBKU0M6OkRl
YnVnZ2VyQ2FsbEZyYW1lJiwgaW50cHRyX3Qgc291cmNlSUQsIGludCBsaW5lTnVtYmVyKTsKICAg
ICB2aXJ0dWFsIHZvaWQgYXRTdGF0ZW1lbnQoY29uc3QgSlNDOjpEZWJ1Z2dlckNhbGxGcmFtZSYs
IGludHB0cl90IHNvdXJjZUlELCBpbnQgZmlyc3RMaW5lKTsKICAgICB2aXJ0dWFsIHZvaWQgcmV0
dXJuRXZlbnQoY29uc3QgSlNDOjpEZWJ1Z2dlckNhbGxGcmFtZSYsIGludHB0cl90IHNvdXJjZUlE
LCBpbnQgbGluZU51bWJlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9TY3JpcHRTb3VyY2VDb2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TY3JpcHRT
b3VyY2VDb2RlLmgKaW5kZXggNmNmMzk4Ny4uMzczZGIzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvU2NyaXB0U291cmNlQ29kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL1NjcmlwdFNvdXJjZUNvZGUuaApAQCAtNDMsOCArNDMsOCBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiBjbGFzcyBTY3JpcHRTb3VyY2VDb2RlIHsKIHB1YmxpYzoKICAgICBTY3Jp
cHRTb3VyY2VDb2RlKGNvbnN0IFN0cmluZyYgc291cmNlLCBjb25zdCBLVVJMJiB1cmwgPSBLVVJM
KCksIGNvbnN0IFRleHRQb3NpdGlvbjEmIHN0YXJ0UG9zaXRpb24gPSBUZXh0UG9zaXRpb24xOjpt
aW5pbXVtUG9zaXRpb24oKSkKLSAgICAgICAgOiBtX3Byb3ZpZGVyKFN0cmluZ1NvdXJjZVByb3Zp
ZGVyOjpjcmVhdGUoc291cmNlLCB1cmwuaXNOdWxsKCkgPyBTdHJpbmcoKSA6IHVybC5zdHJpbmco
KSkpCi0gICAgICAgICwgbV9jb2RlKG1fcHJvdmlkZXIsIHN0YXJ0UG9zaXRpb24pCisgICAgICAg
IDogbV9wcm92aWRlcihTdHJpbmdTb3VyY2VQcm92aWRlcjo6Y3JlYXRlKHNvdXJjZSwgdXJsLmlz
TnVsbCgpID8gU3RyaW5nKCkgOiB1cmwuc3RyaW5nKCksIHN0YXJ0UG9zaXRpb24pKQorICAgICAg
ICAsIG1fY29kZShtX3Byb3ZpZGVyLCBzdGFydFBvc2l0aW9uLm1fbGluZS5vbmVCYXNlZEludCgp
KQogICAgICAgICAsIG1fdXJsKHVybCkKICAgICB7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvU3RyaW5nU291cmNlUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL1N0cmluZ1NvdXJjZVByb3ZpZGVyLmgKaW5kZXggNDc4YzFkMS4uZTIz
ZmU1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU3RyaW5nU291cmNl
UHJvdmlkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9TdHJpbmdTb3VyY2VQ
cm92aWRlci5oCkBAIC0zNywyMCArMzcsMjYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAg
Y2xhc3MgU3RyaW5nU291cmNlUHJvdmlkZXIgOiBwdWJsaWMgU2NyaXB0U291cmNlUHJvdmlkZXIg
ewogICAgIHB1YmxpYzoKLSAgICAgICAgc3RhdGljIFBhc3NSZWZQdHI8U3RyaW5nU291cmNlUHJv
dmlkZXI+IGNyZWF0ZShjb25zdCBTdHJpbmcmIHNvdXJjZSwgY29uc3QgU3RyaW5nJiB1cmwpIHsg
cmV0dXJuIGFkb3B0UmVmKG5ldyBTdHJpbmdTb3VyY2VQcm92aWRlcihzb3VyY2UsIHVybCkpOyB9
CisgICAgICAgIHN0YXRpYyBQYXNzUmVmUHRyPFN0cmluZ1NvdXJjZVByb3ZpZGVyPiBjcmVhdGUo
Y29uc3QgU3RyaW5nJiBzb3VyY2UsIGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBUZXh0UG9zaXRp
b24xJiBzdGFydFBvc2l0aW9uID0gVGV4dFBvc2l0aW9uMTo6bWluaW11bVBvc2l0aW9uKCkpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgU3RyaW5nU291cmNlUHJv
dmlkZXIoc291cmNlLCB1cmwsIHN0YXJ0UG9zaXRpb24pKTsKKyAgICAgICAgfQogCisgICAgICAg
IHZpcnR1YWwgVGV4dFBvc2l0aW9uMSBzdGFydFBvc2l0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9z
dGFydFBvc2l0aW9uOyB9CiAgICAgICAgIEpTQzo6VVN0cmluZyBnZXRSYW5nZShpbnQgc3RhcnQs
IGludCBlbmQpIGNvbnN0IHsgcmV0dXJuIEpTQzo6VVN0cmluZyhtX3NvdXJjZS5jaGFyYWN0ZXJz
KCkgKyBzdGFydCwgZW5kIC0gc3RhcnQpOyB9CiAgICAgICAgIGNvbnN0IFVDaGFyKiBkYXRhKCkg
Y29uc3QgeyByZXR1cm4gbV9zb3VyY2UuY2hhcmFjdGVycygpOyB9CiAgICAgICAgIGludCBsZW5n
dGgoKSBjb25zdCB7IHJldHVybiBtX3NvdXJjZS5sZW5ndGgoKTsgfQogICAgICAgICBjb25zdCBT
dHJpbmcmIHNvdXJjZSgpIGNvbnN0IHsgcmV0dXJuIG1fc291cmNlOyB9CiAKICAgICBwcml2YXRl
OgotICAgICAgICBTdHJpbmdTb3VyY2VQcm92aWRlcihjb25zdCBTdHJpbmcmIHNvdXJjZSwgY29u
c3QgU3RyaW5nJiB1cmwpCisgICAgICAgIFN0cmluZ1NvdXJjZVByb3ZpZGVyKGNvbnN0IFN0cmlu
ZyYgc291cmNlLCBjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgVGV4dFBvc2l0aW9uMSYgc3RhcnRQ
b3NpdGlvbikKICAgICAgICAgICAgIDogU2NyaXB0U291cmNlUHJvdmlkZXIoc3RyaW5nVG9VU3Ry
aW5nKHVybCkpCisgICAgICAgICAgICAsIG1fc3RhcnRQb3NpdGlvbihzdGFydFBvc2l0aW9uKQog
ICAgICAgICAgICAgLCBtX3NvdXJjZShzb3VyY2UpCiAgICAgICAgIHsKICAgICAgICAgfQogICAg
ICAgICAKKyAgICAgICAgVGV4dFBvc2l0aW9uMSBtX3N0YXJ0UG9zaXRpb247CiAgICAgICAgIFN0
cmluZyBtX3NvdXJjZTsKICAgICB9OwogCg==
</data>
<flag name="review"
          id="70830"
          type_id="1"
          status="+"
          setter="yurys"
    />
          </attachment>
      

    </bug>

</bugzilla>