<?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>60031</bug_id>
          
          <creation_ts>2011-05-03 09:07:20 -0700</creation_ts>
          <short_desc>Web Inspector: can&apos;t inspect element in an iframe when element originates from non-frame document</short_desc>
          <delta_ts>2011-05-03 23:45:59 -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>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>1</everconfirmed>
          <reporter name="Yury Semikhatsky">yurys</reporter>
          <assigned_to name="Yury Semikhatsky">yurys</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>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>397109</commentid>
    <comment_count>0</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-05-03 09:07:20 -0700</bug_when>
    <thetext>What steps will reproduce the problem?
1. Open http://kangax.github.com/jstests/iframe-createElement-web-inspector/
2. Try inspecting both elements in an iframe
3. One of the elements can&apos;t be inspected

This seems to be due to an element originating from context other than iframe&apos;s context (i.e. created via &lt;main document&gt;.createElement rather than &lt;iframe document&gt;.createElement).

Original Chromium bug report: http://code.google.com/p/chromium/issues/detail?id=77453</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>397114</commentid>
    <comment_count>1</comment_count>
      <attachid>92084</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-05-03 09:14:35 -0700</bug_when>
    <thetext>Created attachment 92084
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>397146</commentid>
    <comment_count>2</comment_count>
      <attachid>92084</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-05-03 10:05:30 -0700</bug_when>
    <thetext>Comment on attachment 92084
Patch

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

&gt; Source/WebCore/bindings/js/JSInjectedScriptHostCustom.cpp:102
&gt; +        return jsBoolean(true);

return jsUndefined() ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>397704</commentid>
    <comment_count>3</comment_count>
      <attachid>92196</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-05-03 23:04:14 -0700</bug_when>
    <thetext>Created attachment 92196
Patch for landing

Review comments addressed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>397716</commentid>
    <comment_count>4</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-05-03 23:45:59 -0700</bug_when>
    <thetext>Committed r85722: &lt;http://trac.webkit.org/changeset/85722&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>92084</attachid>
            <date>2011-05-03 09:14:35 -0700</date>
            <delta_ts>2011-05-03 10:05:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-60031-20110503201432.patch</filename>
            <type>text/plain</type>
            <size>13879</size>
            <attacher name="Yury Semikhatsky">yurys</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODU2MDEKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBlYjYzZDZlMWU2NGZmMTliYWM0Y2Q4
ZmZiZTY3ZWQ5OGZhZTQzYjNlLi40NTY5NzhjMTRjNDE3ZDBlYjBjYzlmMWYxZjg0YjE4NTNlNmE4
MGY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDUgKzEsMTUgQEAKIDIwMTEtMDUtMDMgIFl1cnkgU2VtaWtoYXRza3kg
IDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogY2FuJ3QgaW5zcGVjdCBlbGVtZW50IGluIGFu
IGlmcmFtZSB3aGVuIGVsZW1lbnQgb3JpZ2luYXRlcyBmcm9tIG5vbi1mcmFtZSBkb2N1bWVudAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjAwMzEKKwor
ICAgICAgICAqIGluc3BlY3Rvci9lbGVtZW50cy9lbGVtZW50cy1pbnNwZWN0LWlmcmFtZS1mcm9t
LWRpZmZlcmVudC1kb21haW4tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBpbnNwZWN0
b3IvZWxlbWVudHMvZWxlbWVudHMtaW5zcGVjdC1pZnJhbWUtZnJvbS1kaWZmZXJlbnQtZG9tYWlu
Lmh0bWw6IEFkZGVkLgorCisyMDExLTA1LTAzICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hy
b21pdW0ub3JnPgorCiAgICAgICAgIFVucmV2aWV3ZWQuIFByb3ZpZGUgQ2hyb21pdW0gdGVzdCBl
eHBlY3RhaW9ucyBmb3IgbmV3IHRlc3QuCiAKICAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9p
bnNwZWN0b3IvY29uc29sZS9jb25zb2xlLWxvZy1kb2N1bWVudC1wcm90by1leHBlY3RlZC50eHQ6
IEFkZGVkLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzL2VsZW1l
bnRzLWluc3BlY3QtaWZyYW1lLWZyb20tZGlmZmVyZW50LWRvbWFpbi1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9pbnNwZWN0b3IvZWxlbWVudHMvZWxlbWVudHMtaW5zcGVjdC1pZnJhbWUtZnJv
bS1kaWZmZXJlbnQtZG9tYWluLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMmQ2ZWM4MjI1ZDE5
NDIzZGU4MTc2NTg1NmJjMThhY2VmODdlMjdkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL2VsZW1lbnRzL2VsZW1lbnRzLWluc3BlY3QtaWZyYW1lLWZyb20tZGlmZmVy
ZW50LWRvbWFpbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw2IEBACitUZXN0IHRoYXQgd2ViIGlu
c3BlY3RvciBjYW4gc2VsZWN0IGVsZW1lbnQgaW4gYW4gaWZyYW1lIGV2ZW4gaWYgdGhlIGVsZW1l
bnQgd2FzIGNyZWF0ZWQgdmlhIGNyZWF0ZUVsZW1lbnQgb2YgZG9jdW1lbnQgb3RoZXIgdGhhbiBp
ZnJhbWUncyBkb2N1bWVudC4gQnVnIDYwMDMxCisKKworUEFTUzogc2VsZWN0ZWQgbm9kZSAgd2l0
aCBpZCAnbWFpbi1mcmFtZS1kaXYnCitQQVNTOiBzZWxlY3RlZCBub2RlICB3aXRoIGlkICdpZnJh
bWUtZGl2JworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWxlbWVudHMvZWxl
bWVudHMtaW5zcGVjdC1pZnJhbWUtZnJvbS1kaWZmZXJlbnQtZG9tYWluLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbnNwZWN0b3IvZWxlbWVudHMvZWxlbWVudHMtaW5zcGVjdC1pZnJhbWUtZnJvbS1kaWZm
ZXJlbnQtZG9tYWluLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWJhM2NkOWQ1OWIwYzI2ZWMxY2UzYzQ2OWJh
MTFlNTExODAyOWFjMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9l
bGVtZW50cy9lbGVtZW50cy1pbnNwZWN0LWlmcmFtZS1mcm9tLWRpZmZlcmVudC1kb21haW4uaHRt
bApAQCAtMCwwICsxLDg0IEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2h0
dHAvdGVzdHMvaW5zcGVjdG9yL2luc3BlY3Rvci10ZXN0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSIuLi8uLi9odHRwL3Rlc3RzL2luc3BlY3Rvci9lbGVtZW50cy10ZXN0LmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQ+Cit2YXIgZWwxOwordmFyIGVsMjsKK2Z1bmN0aW9uIGNyZWF0ZUR5bmFtaWNF
bGVtZW50cygpCit7CisgICAgdmFyIG1haW5Eb2MgPSBkb2N1bWVudDsKKyAgICB2YXIgZnJhbWVE
b2MgPSB3aW5kb3cuZnJhbWVzWzBdLmRvY3VtZW50OworCisgICAgZWwxID0gbWFpbkRvYy5jcmVh
dGVFbGVtZW50KCdkaXYnKTsKKyAgICBlbDEuaWQgPSAibWFpbi1mcmFtZS1kaXYiOworICAgIGVs
MiA9IGZyYW1lRG9jLmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworICAgIGVsMi5pZCA9ICJpZnJhbWUt
ZGl2IjsKKworICAgIGVsMS5pbm5lckhUTUwgPSAnRWxlbWVudCBjcmVhdGVkIHZpYSAmbHQ7bWFp
biBkb2N1bWVudD4uY3JlYXRlRWxlbWVudCc7CisgICAgZWwyLmlubmVySFRNTCA9ICdFbGVtZW50
IGNyZWF0ZWQgdmlhICZsdDtmcmFtZSBkb2N1bWVudD4uY3JlYXRlRWxlbWVudCc7CisKKyAgICBm
cmFtZURvYy5ib2R5LmFwcGVuZENoaWxkKGVsMSk7CisgICAgZnJhbWVEb2MuYm9keS5hcHBlbmRD
aGlsZChlbDIpOworfQorCitmdW5jdGlvbiB0ZXN0KCkKK3sKKyAgICAvL0luc3BlY3RvclRlc3Qu
c2VsZWN0Tm9kZVdpdGhJZCgibWFpbi1mcmFtZS1kaXYiLCBzdGVwMSk7CisgICAgSW5zcGVjdG9y
VGVzdC5ldmFsdWF0ZUluUGFnZSgiY3JlYXRlRHluYW1pY0VsZW1lbnRzKCkiLCBzdGVwMSk7CisK
KyAgICBmdW5jdGlvbiBzZWxlY3RlZE5vZGVJZCgpCisgICAgeworICAgICAgICB2YXIgc2VsZWN0
ZWRFbGVtZW50ID0gV2ViSW5zcGVjdG9yLnBhbmVscy5lbGVtZW50cy50cmVlT3V0bGluZS5zZWxl
Y3RlZFRyZWVFbGVtZW50OworICAgICAgICBpZiAoIXNlbGVjdGVkRWxlbWVudCkKKyAgICAgICAg
ICAgIHJldHVybiAiPG5vIHNlbGVjdGVkIG5vZGU+IjsKKyAgICAgICAgcmV0dXJuIHNlbGVjdGVk
RWxlbWVudC5yZXByZXNlbnRlZE9iamVjdC5nZXRBdHRyaWJ1dGUoImlkIik7CisgICAgfQorCisg
ICAgZnVuY3Rpb24gc3RlcDEoKQorICAgIHsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFsdWF0
ZUluQ29uc29sZSgiaW5zcGVjdChlbDEpIiwgc3RlcDIpOworICAgIH0KKworICAgIGZ1bmN0aW9u
IHN0ZXAyKCkKKyAgICB7CisgICAgICAgIEluc3BlY3RvclRlc3QucnVuQWZ0ZXJQZW5kaW5nRGlz
cGF0Y2hlcyhzdGVwMyk7CisgICAgfQorCisgICAgZnVuY3Rpb24gc3RlcDMoKQorICAgIHsKKyAg
ICAgICAgdmFyIGlkID0gc2VsZWN0ZWROb2RlSWQoKTsKKyAgICAgICAgaWYgKGlkID09PSAibWFp
bi1mcmFtZS1kaXYiKQorICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIlBBU1M6
IHNlbGVjdGVkIG5vZGUgIHdpdGggaWQgJyIgKyBpZCArICInIik7CisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJGQUlMOiB1bmV4cGVjdGVkIHNlbGVj
dGlvbiAiICsgaWQpOworICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5Db25zb2xlKCJp
bnNwZWN0KGVsMikiLCBzdGVwNCk7CisgICAgfQorCisgICAgZnVuY3Rpb24gc3RlcDQoKQorICAg
IHsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5ydW5BZnRlclBlbmRpbmdEaXNwYXRjaGVzKHN0ZXA1
KTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBzdGVwNSgpCisgICAgeworICAgICAgICB2YXIgaWQg
PSBzZWxlY3RlZE5vZGVJZCgpOworICAgICAgICBpZiAoaWQgPT09ICJpZnJhbWUtZGl2IikKKyAg
ICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJQQVNTOiBzZWxlY3RlZCBub2RlICB3
aXRoIGlkICciICsgaWQgKyAiJyIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBJbnNwZWN0
b3JUZXN0LmFkZFJlc3VsdCgiRkFJTDogdW5leHBlY3RlZCBzZWxlY3Rpb24gIiArIGlkKTsKKyAg
ICAgICAgSW5zcGVjdG9yVGVzdC5jb21wbGV0ZVRlc3QoKTsKKyAgICB9Cit9CisKKzwvc2NyaXB0
PgorPC9oZWFkPgorCis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Cis8cD5UZXN0IHRoYXQgd2Vi
IGluc3BlY3RvciBjYW4gc2VsZWN0IGVsZW1lbnQgaW4gYW4gaWZyYW1lIGV2ZW4gaWYgdGhlIGVs
ZW1lbnQgd2FzIGNyZWF0ZWQKK3ZpYSA8Y29kZT5jcmVhdGVFbGVtZW50PC9jb2RlPiBvZiA8Y29k
ZT5kb2N1bWVudDwvY29kZT4gb3RoZXIgdGhhbiBpZnJhbWUncyA8Y29kZT5kb2N1bWVudDwvY29k
ZT4uCis8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjAw
MzEiPkJ1ZyA2MDAzMTwvYT4KKzwvcD4KKzxpZnJhbWUgc3R5bGU9IndpZHRoOjQwMHB4Ij48L2lm
cmFtZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA1MTc0ODU3ODMxNjI2NDQ1Yjhi
MmYxYjQwNjhiMTU1OWVjZjBmMGMwLi4wMTc0YmQ3MGY0MmYyZDg2NjZkNDI1ZmE5ZmMyYjRhNjIy
MDc4NGIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTEtMDUtMDMgIFl1cnkgU2Vt
aWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogY2FuJ3QgaW5zcGVjdCBlbGVt
ZW50IGluIGFuIGlmcmFtZSB3aGVuIGVsZW1lbnQgb3JpZ2luYXRlcyBmcm9tIG5vbi1mcmFtZSBk
b2N1bWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NjAwMzEKKyAgICAgICAgCisgICAgICAgIEluc3BlY3RlZCBvYmplY3QgdHlwZSBldmFsdWF0aW9u
IGhhcyBtb3ZlZCBpbnRvIG5hdGl2ZSBiaW5kaW5ncy4gVGhpcyB3YXkgaXQgZG9lc24ndAorICAg
ICAgICBkZXBlbmQgb24gdGhlIGN1cnJlbnQgSlMgY29udGV4dC4KKworICAgICAgICBUZXN0OiBp
bnNwZWN0b3IvZWxlbWVudHMvZWxlbWVudHMtaW5zcGVjdC1pZnJhbWUtZnJvbS1kaWZmZXJlbnQt
ZG9tYWluLmh0bWwKKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTSW5qZWN0ZWRTY3JpcHRIb3N0
Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTSW5qZWN0ZWRTY3JpcHRIb3N0Ojppc0hU
TUxBbGxDb2xsZWN0aW9uKTogdGhpcyBtZXRob2QgaGVscHMgZGlzdGluZ3Vpc2gKKyAgICAgICAg
cmVhbCB1bmRlZmluZWQgdmFsdWVzIGZyb20gSFRNTEFsbENvbGxlY3Rpb24KKyAgICAgICAgKFdl
YkNvcmU6OkpTSW5qZWN0ZWRTY3JpcHRIb3N0Ojp0eXBlKTogbWV0aG9kIHRoYXQgcmV0dXJucyBw
cmVzaWNlIHR5cGUgb2YgdGhlIHBhc3NlZAorICAgICAgICB2YWx1ZQorICAgICAgICAqIGJpbmRp
bmdzL3Y4L2N1c3RvbS9WOEluamVjdGVkU2NyaXB0SG9zdEN1c3RvbS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpWOEluamVjdGVkU2NyaXB0SG9zdDo6aXNIVE1MQWxsQ29sbGVjdGlvbkNhbGxiYWNr
KToKKyAgICAgICAgKFdlYkNvcmU6OlY4SW5qZWN0ZWRTY3JpcHRIb3N0Ojp0eXBlQ2FsbGJhY2sp
OgorICAgICAgICAqIGluc3BlY3Rvci9JbmplY3RlZFNjcmlwdEhvc3QuaWRsOgorICAgICAgICAq
IGluc3BlY3Rvci9JbmplY3RlZFNjcmlwdFNvdXJjZS5qczoKKyAgICAgICAgKC4pOgorCiAyMDEx
LTA1LTAzICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AZ29vZ2xlLmNvbT4KIAogICAgICAgICBO
b3QgcmV2aWV3ZWQ6IGZpeCBpbnNwZWN0b3Igc3RhdHVzIGJhciBpbWFnZSBnbHlwaCByZWZlcmVu
Y2UgaW4gbmV0d29yayBwYW5lbC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTSW5qZWN0ZWRTY3JpcHRIb3N0Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTSW5qZWN0ZWRTY3JpcHRIb3N0Q3VzdG9tLmNwcAppbmRleCBhNTg5ZTRmMzg0ODk5
NmE0NWIwNWY0YTlkMWEwMTVmZWIxNTI5Nzg0Li41ZmMxMGNlMjYzYmRmZjk0MzVkNWRiYTk3OTE5
NDRhYjA3ZTAwYzEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lu
amVjdGVkU2NyaXB0SG9zdEN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNJbmplY3RlZFNjcmlwdEhvc3RDdXN0b20uY3BwCkBAIC0zOSwxMSArMzksMTcgQEAKICNp
bmNsdWRlICJEYXRhYmFzZS5oIgogI2luY2x1ZGUgIkpTRGF0YWJhc2UuaCIKICNlbmRpZgorI2lu
Y2x1ZGUgIkRhdGVJbnN0YW5jZS5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKICNpbmNs
dWRlICJJbmplY3RlZFNjcmlwdEhvc3QuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JEZWJ1Z2dlckFn
ZW50LmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yVmFsdWVzLmgiCisjaW5jbHVkZSAiSlNBcnJheS5o
IgorI2luY2x1ZGUgIkpTSFRNTEFsbENvbGxlY3Rpb24uaCIKKyNpbmNsdWRlICJKU0hUTUxDb2xs
ZWN0aW9uLmgiCiAjaW5jbHVkZSAiSlNOb2RlLmgiCisjaW5jbHVkZSAiSlNOb2RlTGlzdC5oIgor
I2luY2x1ZGUgIlJlZ0V4cE9iamVjdC5oIgogI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCiAjaWYg
RU5BQkxFKERPTV9TVE9SQUdFKQogI2luY2x1ZGUgIlN0b3JhZ2UuaCIKQEAgLTkwLDYgKzk2LDQy
IEBAIEpTVmFsdWUgSlNJbmplY3RlZFNjcmlwdEhvc3Q6OmludGVybmFsQ29uc3RydWN0b3JOYW1l
KEV4ZWNTdGF0ZSogZXhlYykKICAgICByZXR1cm4ganNTdHJpbmcoZXhlYywgcmVzdWx0KTsKIH0K
IAorSlNWYWx1ZSBKU0luamVjdGVkU2NyaXB0SG9zdDo6aXNIVE1MQWxsQ29sbGVjdGlvbihFeGVj
U3RhdGUqIGV4ZWMpCit7CisgICAgaWYgKGV4ZWMtPmFyZ3VtZW50Q291bnQoKSA8IDEpCisgICAg
ICAgIHJldHVybiBqc0Jvb2xlYW4odHJ1ZSk7CisKKyAgICBKU1ZhbHVlIHZhbHVlID0gZXhlYy0+
YXJndW1lbnQoMCk7CisgICAgcmV0dXJuIGpzQm9vbGVhbih2YWx1ZS5pbmhlcml0cygmSlNIVE1M
QWxsQ29sbGVjdGlvbjo6c19pbmZvKSk7Cit9CisKK0pTVmFsdWUgSlNJbmplY3RlZFNjcmlwdEhv
c3Q6OnR5cGUoRXhlY1N0YXRlKiBleGVjKQoreworICAgIGlmIChleGVjLT5hcmd1bWVudENvdW50
KCkgPCAxKQorICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKKworICAgIEpTVmFsdWUgdmFs
dWUgPSBleGVjLT5hcmd1bWVudCgwKTsKKyAgICBpZiAodmFsdWUuaXNTdHJpbmcoKSkKKyAgICAg
ICAgcmV0dXJuIGpzU3RyaW5nKGV4ZWMsIFN0cmluZygic3RyaW5nIikpOworICAgIGlmICh2YWx1
ZS5pbmhlcml0cygmSlNBcnJheTo6c19pbmZvKSkKKyAgICAgICAgcmV0dXJuIGpzU3RyaW5nKGV4
ZWMsIFN0cmluZygiYXJyYXkiKSk7CisgICAgaWYgKHZhbHVlLmlzQm9vbGVhbigpKQorICAgICAg
ICByZXR1cm4ganNTdHJpbmcoZXhlYywgU3RyaW5nKCJib29sZWFuIikpOworICAgIGlmICh2YWx1
ZS5pc051bWJlcigpKQorICAgICAgICByZXR1cm4ganNTdHJpbmcoZXhlYywgU3RyaW5nKCJudW1i
ZXIiKSk7CisgICAgaWYgKHZhbHVlLmluaGVyaXRzKCZEYXRlSW5zdGFuY2U6OnNfaW5mbykpCisg
ICAgICAgIHJldHVybiBqc1N0cmluZyhleGVjLCBTdHJpbmcoImRhdGUiKSk7CisgICAgaWYgKHZh
bHVlLmluaGVyaXRzKCZSZWdFeHBPYmplY3Q6OnNfaW5mbykpCisgICAgICAgIHJldHVybiBqc1N0
cmluZyhleGVjLCBTdHJpbmcoInJlZ2V4cCIpKTsKKyAgICBpZiAodmFsdWUuaW5oZXJpdHMoJkpT
Tm9kZTo6c19pbmZvKSkKKyAgICAgICAgcmV0dXJuIGpzU3RyaW5nKGV4ZWMsIFN0cmluZygibm9k
ZSIpKTsKKyAgICBpZiAodmFsdWUuaW5oZXJpdHMoJkpTTm9kZUxpc3Q6OnNfaW5mbykpCisgICAg
ICAgIHJldHVybiBqc1N0cmluZyhleGVjLCBTdHJpbmcoImFycmF5IikpOworICAgIGlmICh2YWx1
ZS5pbmhlcml0cygmSlNIVE1MQ29sbGVjdGlvbjo6c19pbmZvKSkKKyAgICAgICAgcmV0dXJuIGpz
U3RyaW5nKGV4ZWMsIFN0cmluZygiYXJyYXkiKSk7CisgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7
Cit9CisKIEpTVmFsdWUgSlNJbmplY3RlZFNjcmlwdEhvc3Q6Omluc3BlY3QoRXhlY1N0YXRlKiBl
eGVjKQogewogICAgIGlmIChleGVjLT5hcmd1bWVudENvdW50KCkgPj0gMikgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4SW5qZWN0ZWRTY3JpcHRIb3N0
Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEluamVjdGVk
U2NyaXB0SG9zdEN1c3RvbS5jcHAKaW5kZXggZDQ5ZDYxZGU0NmMzMmNmZWZhN2RlMTBkZjc1NDBl
MTYyNTlkYzZlYy4uYzIwODIzNjRkNDYwN2ZiNWFhZDY0ZmY4ZTIzYjBkZDE3MjliODUwNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4SW5qZWN0ZWRTY3Jp
cHRIb3N0Q3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20v
VjhJbmplY3RlZFNjcmlwdEhvc3RDdXN0b20uY3BwCkBAIC0zOSw3ICszOSwxMCBAQAogI2luY2x1
ZGUgIlY4QmluZGluZy5oIgogI2luY2x1ZGUgIlY4QmluZGluZ1N0YXRlLmgiCiAjaW5jbHVkZSAi
VjhEYXRhYmFzZS5oIgorI2luY2x1ZGUgIlY4SFRNTEFsbENvbGxlY3Rpb24uaCIKKyNpbmNsdWRl
ICJWOEhUTUxDb2xsZWN0aW9uLmgiCiAjaW5jbHVkZSAiVjhIaWRkZW5Qcm9wZXJ0eU5hbWUuaCIK
KyNpbmNsdWRlICJWOE5vZGVMaXN0LmgiCiAjaW5jbHVkZSAiVjhOb2RlLmgiCiAjaW5jbHVkZSAi
VjhQcm94eS5oIgogI2luY2x1ZGUgIlY4U3RvcmFnZS5oIgpAQCAtODksNiArOTIsNDcgQEAgdjg6
OkhhbmRsZTx2ODo6VmFsdWU+IFY4SW5qZWN0ZWRTY3JpcHRIb3N0OjppbnRlcm5hbENvbnN0cnVj
dG9yTmFtZUNhbGxiYWNrKGNvbnMKICAgICByZXR1cm4gYXJnc1swXS0+VG9PYmplY3QoKS0+R2V0
Q29uc3RydWN0b3JOYW1lKCk7CiB9CiAKK3Y4OjpIYW5kbGU8djg6OlZhbHVlPiBWOEluamVjdGVk
U2NyaXB0SG9zdDo6aXNIVE1MQWxsQ29sbGVjdGlvbkNhbGxiYWNrKGNvbnN0IHY4OjpBcmd1bWVu
dHMmIGFyZ3MpCit7CisgICAgSU5DX1NUQVRTKCJJbmplY3RlZFNjcmlwdEhvc3QuaXNIVE1MQWxs
Q29sbGVjdGlvbkNhbGxiYWNrKCkiKTsKKyAgICBpZiAoYXJncy5MZW5ndGgoKSA8IDEpCisgICAg
ICAgIHJldHVybiB2ODo6RmFsc2UoKTsKKworICAgIGlmICghYXJnc1swXS0+SXNPYmplY3QoKSkK
KyAgICAgICAgcmV0dXJuIHY4OjpGYWxzZSgpOworCisgICAgdjg6OkhhbmRsZVNjb3BlIGhhbmRs
ZVNjb3BlOworICAgIHJldHVybiB2ODo6Qm9vbGVhbjo6TmV3KFY4SFRNTEFsbENvbGxlY3Rpb246
Okhhc0luc3RhbmNlKGFyZ3NbMF0pKTsKK30KKwordjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4SW5q
ZWN0ZWRTY3JpcHRIb3N0Ojp0eXBlQ2FsbGJhY2soY29uc3Qgdjg6OkFyZ3VtZW50cyYgYXJncykK
K3sKKyAgICBJTkNfU1RBVFMoIkluamVjdGVkU2NyaXB0SG9zdC50eXBlQ2FsbGJhY2soKSIpOwor
ICAgIGlmIChhcmdzLkxlbmd0aCgpIDwgMSkKKyAgICAgICAgcmV0dXJuIHY4OjpTdHJpbmc6OkVt
cHR5KCk7CisKKyAgICB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUgPSBhcmdzWzBdOworICAg
IGlmICh2YWx1ZS0+SXNTdHJpbmcoKSkKKyAgICAgICAgcmV0dXJuIHY4OjpTdHJpbmc6Ok5ldygi
c3RyaW5nIik7CisgICAgaWYgKHZhbHVlLT5Jc0FycmF5KCkpCisgICAgICAgIHJldHVybiB2ODo6
U3RyaW5nOjpOZXcoImFycmF5Iik7CisgICAgaWYgKHZhbHVlLT5Jc0Jvb2xlYW4oKSkKKyAgICAg
ICAgcmV0dXJuIHY4OjpTdHJpbmc6Ok5ldygiYm9vbGVhbiIpOworICAgIGlmICh2YWx1ZS0+SXNO
dW1iZXIoKSkKKyAgICAgICAgcmV0dXJuIHY4OjpTdHJpbmc6Ok5ldygibnVtYmVyIik7CisgICAg
aWYgKHZhbHVlLT5Jc0RhdGUoKSkKKyAgICAgICAgcmV0dXJuIHY4OjpTdHJpbmc6Ok5ldygiZGF0
ZSIpOworICAgIGlmICh2YWx1ZS0+SXNSZWdFeHAoKSkKKyAgICAgICAgcmV0dXJuIHY4OjpTdHJp
bmc6Ok5ldygicmVnZXhwIik7CisgICAgaWYgKFY4Tm9kZTo6SGFzSW5zdGFuY2UodmFsdWUpKQor
ICAgICAgICByZXR1cm4gdjg6OlN0cmluZzo6TmV3KCJub2RlIik7CisgICAgaWYgKFY4Tm9kZUxp
c3Q6Okhhc0luc3RhbmNlKHZhbHVlKSkKKyAgICAgICAgcmV0dXJuIHY4OjpTdHJpbmc6Ok5ldygi
YXJyYXkiKTsKKyAgICBpZiAoVjhIVE1MQ29sbGVjdGlvbjo6SGFzSW5zdGFuY2UodmFsdWUpKQor
ICAgICAgICByZXR1cm4gdjg6OlN0cmluZzo6TmV3KCJhcnJheSIpOworICAgIHJldHVybiB2ODo6
U3RyaW5nOjpFbXB0eSgpOworfQorCiB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhJbmplY3RlZFNj
cmlwdEhvc3Q6Omluc3BlY3RDYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQogewog
ICAgIElOQ19TVEFUUygiSW5qZWN0ZWRTY3JpcHRIb3N0Lmluc3BlY3QoKSIpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVjdGVkU2NyaXB0SG9zdC5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRIb3N0LmlkbAppbmRleCA2OThlNGJk
ZGUyYWYzMWEwMjZkYmI4ZjEyMTUxODIzZmY1NDliZGMyLi45YzZlODQyYzMzOTE4ZTMwYjgwMDhm
ZWNlNGE2OGQ1OTJhYmZiYjBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5qZWN0ZWRTY3JpcHRIb3N0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5q
ZWN0ZWRTY3JpcHRIb3N0LmlkbApAQCAtMzgsNiArMzgsOCBAQCBtb2R1bGUgY29yZSB7CiAgICAg
ICAgIFtDdXN0b21dIHZvaWQgaW5zcGVjdChpbiBET01PYmplY3Qgb2JqZWN0SWQsIGluIERPTU9i
amVjdCBoaW50cyk7CiAgICAgICAgIFtDdXN0b21dIERPTU9iamVjdCBpbnNwZWN0ZWROb2RlKGlu
IGludCBudW0pOwogICAgICAgICBbQ3VzdG9tXSBET01PYmplY3QgaW50ZXJuYWxDb25zdHJ1Y3Rv
ck5hbWUoaW4gRE9NT2JqZWN0IG9iamVjdCk7CisgICAgICAgIFtDdXN0b21dIGJvb2xlYW4gaXNI
VE1MQWxsQ29sbGVjdGlvbihpbiBET01PYmplY3Qgb2JqZWN0KTsKKyAgICAgICAgW0N1c3RvbV0g
RE9NU3RyaW5nIHR5cGUoaW4gRE9NT2JqZWN0IG9iamVjdCk7CiAKICAgICAgICAgW0N1c3RvbV0g
aW50IGRhdGFiYXNlSWQoaW4gRE9NT2JqZWN0IGRhdGFiYXNlKTsKICAgICAgICAgW0N1c3RvbV0g
aW50IHN0b3JhZ2VJZChpbiBET01PYmplY3Qgc3RvcmFnZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRTb3VyY2UuanMgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRTb3VyY2UuanMKaW5kZXggZjg4NzQ2NWNkYzFiMDhk
MTQ0Y2I5ZGRiMTRhMWVjMDJmYmY5YzI0OS4uODVlMTQ3Y2VmOGQ0M2I0Y2ZmMjNmNTYyNDMzMDgw
MWI3ZGU2OTZhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luamVjdGVk
U2NyaXB0U291cmNlLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbmplY3RlZFNj
cmlwdFNvdXJjZS5qcwpAQCAtMzQ1LDcgKzM0NSw3IEBAIEluamVjdGVkU2NyaXB0LnByb3RvdHlw
ZSA9IHsKICAgICBfaXNIVE1MQWxsQ29sbGVjdGlvbjogZnVuY3Rpb24ob2JqZWN0KQogICAgIHsK
ICAgICAgICAgLy8gZG9jdW1lbnQuYWxsIGlzIHJlcG9ydGVkIGFzIHVuZGVmaW5lZCwgYnV0IHdl
IHN0aWxsIHdhbnQgdG8gcHJvY2VzcyBpdC4KLSAgICAgICAgcmV0dXJuICh0eXBlb2Ygb2JqZWN0
ID09PSAidW5kZWZpbmVkIikgJiYgaW5zcGVjdGVkV2luZG93LkhUTUxBbGxDb2xsZWN0aW9uICYm
IG9iamVjdCBpbnN0YW5jZW9mIGluc3BlY3RlZFdpbmRvdy5IVE1MQWxsQ29sbGVjdGlvbjsKKyAg
ICAgICAgcmV0dXJuICh0eXBlb2Ygb2JqZWN0ID09PSAidW5kZWZpbmVkIikgJiYgSW5qZWN0ZWRT
Y3JpcHRIb3N0LmlzSFRNTEFsbENvbGxlY3Rpb24ob2JqZWN0KTsKICAgICB9LAogCiAgICAgX3R5
cGU6IGZ1bmN0aW9uKG9iaikKQEAgLTM2MSwyNSArMzYxLDEwIEBAIEluamVjdGVkU2NyaXB0LnBy
b3RvdHlwZSA9IHsKICAgICAgICAgICAgIHJldHVybiB0eXBlOwogICAgICAgICB9CiAKLSAgICAg
ICAgLy8gSWYgb3duaW5nIGZyYW1lIGhhcyBuYXZpZ2F0ZWQgdG8gc29tZXdoZXJlIGVsc2Ugd2lu
ZG93IHByb3BlcnRpZXMgd2lsbCBiZSB1bmRlZmluZWQuCi0gICAgICAgIC8vIEluIHRoaXMgY2Fz
ZSBqdXN0IHJldHVybiByZXN1bHQgb2YgdGhlIHR5cGVvZi4KLSAgICAgICAgaWYgKCFpbnNwZWN0
ZWRXaW5kb3cuZG9jdW1lbnQpCi0gICAgICAgICAgICByZXR1cm4gdHlwZTsKKyAgICAgICAgdmFy
IHByZWNpc2VUeXBlID0gSW5qZWN0ZWRTY3JpcHRIb3N0LnR5cGUob2JqKTsKKyAgICAgICAgaWYg
KHByZWNpc2VUeXBlKQorICAgICAgICAgICAgcmV0dXJuIHByZWNpc2VUeXBlOwogCi0gICAgICAg
IGlmIChvYmogaW5zdGFuY2VvZiBpbnNwZWN0ZWRXaW5kb3cuTm9kZSkKLSAgICAgICAgICAgIHJl
dHVybiAibm9kZSI7Ci0gICAgICAgIGlmIChvYmogaW5zdGFuY2VvZiBpbnNwZWN0ZWRXaW5kb3cu
U3RyaW5nKQotICAgICAgICAgICAgcmV0dXJuICJzdHJpbmciOwotICAgICAgICBpZiAob2JqIGlu
c3RhbmNlb2YgaW5zcGVjdGVkV2luZG93LkFycmF5KQotICAgICAgICAgICAgcmV0dXJuICJhcnJh
eSI7Ci0gICAgICAgIGlmIChvYmogaW5zdGFuY2VvZiBpbnNwZWN0ZWRXaW5kb3cuQm9vbGVhbikK
LSAgICAgICAgICAgIHJldHVybiAiYm9vbGVhbiI7Ci0gICAgICAgIGlmIChvYmogaW5zdGFuY2Vv
ZiBpbnNwZWN0ZWRXaW5kb3cuTnVtYmVyKQotICAgICAgICAgICAgcmV0dXJuICJudW1iZXIiOwot
ICAgICAgICBpZiAob2JqIGluc3RhbmNlb2YgaW5zcGVjdGVkV2luZG93LkRhdGUpCi0gICAgICAg
ICAgICByZXR1cm4gImRhdGUiOwotICAgICAgICBpZiAob2JqIGluc3RhbmNlb2YgaW5zcGVjdGVk
V2luZG93LlJlZ0V4cCkKLSAgICAgICAgICAgIHJldHVybiAicmVnZXhwIjsKICAgICAgICAgLy8g
RmlyZUJ1ZydzIGFycmF5IGRldGVjdGlvbi4KICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgIGlm
IChpc0Zpbml0ZShvYmoubGVuZ3RoKSAmJiB0eXBlb2Ygb2JqLnNwbGljZSA9PT0gImZ1bmN0aW9u
IikKQEAgLTM4NywxMiArMzcyLDEwIEBAIEluamVjdGVkU2NyaXB0LnByb3RvdHlwZSA9IHsKICAg
ICAgICAgICAgIGlmIChpc0Zpbml0ZShvYmoubGVuZ3RoKSAmJiB0eXBlb2Ygb2JqLmNhbGxlZSA9
PT0gImZ1bmN0aW9uIikgLy8gYXJndW1lbnRzLgogICAgICAgICAgICAgICAgIHJldHVybiAiYXJy
YXkiOwogICAgICAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAgICAgICByZXR1cm4gdHlwZTsKICAg
ICAgICAgfQotICAgICAgICBpZiAob2JqIGluc3RhbmNlb2YgaW5zcGVjdGVkV2luZG93Lk5vZGVM
aXN0KQotICAgICAgICAgICAgcmV0dXJuICJhcnJheSI7Ci0gICAgICAgIGlmIChvYmogaW5zdGFu
Y2VvZiBpbnNwZWN0ZWRXaW5kb3cuSFRNTENvbGxlY3Rpb24pCi0gICAgICAgICAgICByZXR1cm4g
ImFycmF5IjsKKworICAgICAgICAvLyBJZiBvd25pbmcgZnJhbWUgaGFzIG5hdmlnYXRlZCB0byBz
b21ld2hlcmUgZWxzZSB3aW5kb3cgcHJvcGVydGllcyB3aWxsIGJlIHVuZGVmaW5lZC4KKyAgICAg
ICAgLy8gSW4gdGhpcyBjYXNlIGp1c3QgcmV0dXJuIHJlc3VsdCBvZiB0aGUgdHlwZW9mLgogICAg
ICAgICByZXR1cm4gdHlwZTsKICAgICB9LAogCg==
</data>
<flag name="review"
          id="85008"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>92196</attachid>
            <date>2011-05-03 23:04:14 -0700</date>
            <delta_ts>2011-05-03 23:04:14 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>xxx</filename>
            <type>text/plain</type>
            <size>13318</size>
            <attacher name="Yury Semikhatsky">yurys</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlYjYzZDZlLi40NTY5NzhjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTUgQEAKIDIwMTEtMDUt
MDMgIFl1cnkgU2VtaWtoYXRza3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CiAKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogY2FuJ3Qg
aW5zcGVjdCBlbGVtZW50IGluIGFuIGlmcmFtZSB3aGVuIGVsZW1lbnQgb3JpZ2luYXRlcyBmcm9t
IG5vbi1mcmFtZSBkb2N1bWVudAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NjAwMzEKKworICAgICAgICAqIGluc3BlY3Rvci9lbGVtZW50cy9lbGVtZW50
cy1pbnNwZWN0LWlmcmFtZS1mcm9tLWRpZmZlcmVudC1kb21haW4tZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBpbnNwZWN0b3IvZWxlbWVudHMvZWxlbWVudHMtaW5zcGVjdC1pZnJhbWUt
ZnJvbS1kaWZmZXJlbnQtZG9tYWluLmh0bWw6IEFkZGVkLgorCisyMDExLTA1LTAzICBZdXJ5IFNl
bWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgorCiAgICAgICAgIFVucmV2aWV3ZWQuIFBy
b3ZpZGUgQ2hyb21pdW0gdGVzdCBleHBlY3RhaW9ucyBmb3IgbmV3IHRlc3QuCiAKICAgICAgICAg
KiBwbGF0Zm9ybS9jaHJvbWl1bS9pbnNwZWN0b3IvY29uc29sZS9jb25zb2xlLWxvZy1kb2N1bWVu
dC1wcm90by1leHBlY3RlZC50eHQ6IEFkZGVkLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL2VsZW1lbnRzL2VsZW1lbnRzLWluc3BlY3QtaWZyYW1lLWZyb20tZGlmZmVyZW50LWRv
bWFpbi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWxlbWVudHMvZWxlbWVu
dHMtaW5zcGVjdC1pZnJhbWUtZnJvbS1kaWZmZXJlbnQtZG9tYWluLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMmQ2ZWM4Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzL2VsZW1lbnRzLWluc3BlY3QtaWZyYW1l
LWZyb20tZGlmZmVyZW50LWRvbWFpbi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw2IEBACitUZXN0
IHRoYXQgd2ViIGluc3BlY3RvciBjYW4gc2VsZWN0IGVsZW1lbnQgaW4gYW4gaWZyYW1lIGV2ZW4g
aWYgdGhlIGVsZW1lbnQgd2FzIGNyZWF0ZWQgdmlhIGNyZWF0ZUVsZW1lbnQgb2YgZG9jdW1lbnQg
b3RoZXIgdGhhbiBpZnJhbWUncyBkb2N1bWVudC4gQnVnIDYwMDMxCisKKworUEFTUzogc2VsZWN0
ZWQgbm9kZSAgd2l0aCBpZCAnbWFpbi1mcmFtZS1kaXYnCitQQVNTOiBzZWxlY3RlZCBub2RlICB3
aXRoIGlkICdpZnJhbWUtZGl2JworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
ZWxlbWVudHMvZWxlbWVudHMtaW5zcGVjdC1pZnJhbWUtZnJvbS1kaWZmZXJlbnQtZG9tYWluLmh0
bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWxlbWVudHMvZWxlbWVudHMtaW5zcGVjdC1pZnJh
bWUtZnJvbS1kaWZmZXJlbnQtZG9tYWluLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uYWJhM2NkOQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rv
ci9lbGVtZW50cy9lbGVtZW50cy1pbnNwZWN0LWlmcmFtZS1mcm9tLWRpZmZlcmVudC1kb21haW4u
aHRtbApAQCAtMCwwICsxLDg0IEBACis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4u
L2h0dHAvdGVzdHMvaW5zcGVjdG9yL2luc3BlY3Rvci10ZXN0LmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQgc3JjPSIuLi8uLi9odHRwL3Rlc3RzL2luc3BlY3Rvci9lbGVtZW50cy10ZXN0LmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQ+Cit2YXIgZWwxOwordmFyIGVsMjsKK2Z1bmN0aW9uIGNyZWF0ZUR5bmFt
aWNFbGVtZW50cygpCit7CisgICAgdmFyIG1haW5Eb2MgPSBkb2N1bWVudDsKKyAgICB2YXIgZnJh
bWVEb2MgPSB3aW5kb3cuZnJhbWVzWzBdLmRvY3VtZW50OworCisgICAgZWwxID0gbWFpbkRvYy5j
cmVhdGVFbGVtZW50KCdkaXYnKTsKKyAgICBlbDEuaWQgPSAibWFpbi1mcmFtZS1kaXYiOworICAg
IGVsMiA9IGZyYW1lRG9jLmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworICAgIGVsMi5pZCA9ICJpZnJh
bWUtZGl2IjsKKworICAgIGVsMS5pbm5lckhUTUwgPSAnRWxlbWVudCBjcmVhdGVkIHZpYSAmbHQ7
bWFpbiBkb2N1bWVudD4uY3JlYXRlRWxlbWVudCc7CisgICAgZWwyLmlubmVySFRNTCA9ICdFbGVt
ZW50IGNyZWF0ZWQgdmlhICZsdDtmcmFtZSBkb2N1bWVudD4uY3JlYXRlRWxlbWVudCc7CisKKyAg
ICBmcmFtZURvYy5ib2R5LmFwcGVuZENoaWxkKGVsMSk7CisgICAgZnJhbWVEb2MuYm9keS5hcHBl
bmRDaGlsZChlbDIpOworfQorCitmdW5jdGlvbiB0ZXN0KCkKK3sKKyAgICAvL0luc3BlY3RvclRl
c3Quc2VsZWN0Tm9kZVdpdGhJZCgibWFpbi1mcmFtZS1kaXYiLCBzdGVwMSk7CisgICAgSW5zcGVj
dG9yVGVzdC5ldmFsdWF0ZUluUGFnZSgiY3JlYXRlRHluYW1pY0VsZW1lbnRzKCkiLCBzdGVwMSk7
CisKKyAgICBmdW5jdGlvbiBzZWxlY3RlZE5vZGVJZCgpCisgICAgeworICAgICAgICB2YXIgc2Vs
ZWN0ZWRFbGVtZW50ID0gV2ViSW5zcGVjdG9yLnBhbmVscy5lbGVtZW50cy50cmVlT3V0bGluZS5z
ZWxlY3RlZFRyZWVFbGVtZW50OworICAgICAgICBpZiAoIXNlbGVjdGVkRWxlbWVudCkKKyAgICAg
ICAgICAgIHJldHVybiAiPG5vIHNlbGVjdGVkIG5vZGU+IjsKKyAgICAgICAgcmV0dXJuIHNlbGVj
dGVkRWxlbWVudC5yZXByZXNlbnRlZE9iamVjdC5nZXRBdHRyaWJ1dGUoImlkIik7CisgICAgfQor
CisgICAgZnVuY3Rpb24gc3RlcDEoKQorICAgIHsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFs
dWF0ZUluQ29uc29sZSgiaW5zcGVjdChlbDEpIiwgc3RlcDIpOworICAgIH0KKworICAgIGZ1bmN0
aW9uIHN0ZXAyKCkKKyAgICB7CisgICAgICAgIEluc3BlY3RvclRlc3QucnVuQWZ0ZXJQZW5kaW5n
RGlzcGF0Y2hlcyhzdGVwMyk7CisgICAgfQorCisgICAgZnVuY3Rpb24gc3RlcDMoKQorICAgIHsK
KyAgICAgICAgdmFyIGlkID0gc2VsZWN0ZWROb2RlSWQoKTsKKyAgICAgICAgaWYgKGlkID09PSAi
bWFpbi1mcmFtZS1kaXYiKQorICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIlBB
U1M6IHNlbGVjdGVkIG5vZGUgIHdpdGggaWQgJyIgKyBpZCArICInIik7CisgICAgICAgIGVsc2UK
KyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJGQUlMOiB1bmV4cGVjdGVkIHNl
bGVjdGlvbiAiICsgaWQpOworICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5Db25zb2xl
KCJpbnNwZWN0KGVsMikiLCBzdGVwNCk7CisgICAgfQorCisgICAgZnVuY3Rpb24gc3RlcDQoKQor
ICAgIHsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5ydW5BZnRlclBlbmRpbmdEaXNwYXRjaGVzKHN0
ZXA1KTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBzdGVwNSgpCisgICAgeworICAgICAgICB2YXIg
aWQgPSBzZWxlY3RlZE5vZGVJZCgpOworICAgICAgICBpZiAoaWQgPT09ICJpZnJhbWUtZGl2IikK
KyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJQQVNTOiBzZWxlY3RlZCBub2Rl
ICB3aXRoIGlkICciICsgaWQgKyAiJyIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBJbnNw
ZWN0b3JUZXN0LmFkZFJlc3VsdCgiRkFJTDogdW5leHBlY3RlZCBzZWxlY3Rpb24gIiArIGlkKTsK
KyAgICAgICAgSW5zcGVjdG9yVGVzdC5jb21wbGV0ZVRlc3QoKTsKKyAgICB9Cit9CisKKzwvc2Ny
aXB0PgorPC9oZWFkPgorCis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Cis8cD5UZXN0IHRoYXQg
d2ViIGluc3BlY3RvciBjYW4gc2VsZWN0IGVsZW1lbnQgaW4gYW4gaWZyYW1lIGV2ZW4gaWYgdGhl
IGVsZW1lbnQgd2FzIGNyZWF0ZWQKK3ZpYSA8Y29kZT5jcmVhdGVFbGVtZW50PC9jb2RlPiBvZiA8
Y29kZT5kb2N1bWVudDwvY29kZT4gb3RoZXIgdGhhbiBpZnJhbWUncyA8Y29kZT5kb2N1bWVudDwv
Y29kZT4uCis8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NjAwMzEiPkJ1ZyA2MDAzMTwvYT4KKzwvcD4KKzxpZnJhbWUgc3R5bGU9IndpZHRoOjQwMHB4Ij48
L2lmcmFtZT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA1MTc0ODU3Li4wMTc0YmQ3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTEtMDUtMDMgIFl1cnkgU2VtaWtoYXRz
a3kgIDx5dXJ5c0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogY2FuJ3QgaW5zcGVjdCBlbGVtZW50IGlu
IGFuIGlmcmFtZSB3aGVuIGVsZW1lbnQgb3JpZ2luYXRlcyBmcm9tIG5vbi1mcmFtZSBkb2N1bWVu
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjAwMzEK
KyAgICAgICAgCisgICAgICAgIEluc3BlY3RlZCBvYmplY3QgdHlwZSBldmFsdWF0aW9uIGhhcyBt
b3ZlZCBpbnRvIG5hdGl2ZSBiaW5kaW5ncy4gVGhpcyB3YXkgaXQgZG9lc24ndAorICAgICAgICBk
ZXBlbmQgb24gdGhlIGN1cnJlbnQgSlMgY29udGV4dC4KKworICAgICAgICBUZXN0OiBpbnNwZWN0
b3IvZWxlbWVudHMvZWxlbWVudHMtaW5zcGVjdC1pZnJhbWUtZnJvbS1kaWZmZXJlbnQtZG9tYWlu
Lmh0bWwKKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTSW5qZWN0ZWRTY3JpcHRIb3N0Q3VzdG9t
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTSW5qZWN0ZWRTY3JpcHRIb3N0Ojppc0hUTUxBbGxD
b2xsZWN0aW9uKTogdGhpcyBtZXRob2QgaGVscHMgZGlzdGluZ3Vpc2gKKyAgICAgICAgcmVhbCB1
bmRlZmluZWQgdmFsdWVzIGZyb20gSFRNTEFsbENvbGxlY3Rpb24KKyAgICAgICAgKFdlYkNvcmU6
OkpTSW5qZWN0ZWRTY3JpcHRIb3N0Ojp0eXBlKTogbWV0aG9kIHRoYXQgcmV0dXJucyBwcmVzaWNl
IHR5cGUgb2YgdGhlIHBhc3NlZAorICAgICAgICB2YWx1ZQorICAgICAgICAqIGJpbmRpbmdzL3Y4
L2N1c3RvbS9WOEluamVjdGVkU2NyaXB0SG9zdEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpWOEluamVjdGVkU2NyaXB0SG9zdDo6aXNIVE1MQWxsQ29sbGVjdGlvbkNhbGxiYWNrKToKKyAg
ICAgICAgKFdlYkNvcmU6OlY4SW5qZWN0ZWRTY3JpcHRIb3N0Ojp0eXBlQ2FsbGJhY2spOgorICAg
ICAgICAqIGluc3BlY3Rvci9JbmplY3RlZFNjcmlwdEhvc3QuaWRsOgorICAgICAgICAqIGluc3Bl
Y3Rvci9JbmplY3RlZFNjcmlwdFNvdXJjZS5qczoKKyAgICAgICAgKC4pOgorCiAyMDExLTA1LTAz
ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AZ29vZ2xlLmNvbT4KIAogICAgICAgICBOb3QgcmV2
aWV3ZWQ6IGZpeCBpbnNwZWN0b3Igc3RhdHVzIGJhciBpbWFnZSBnbHlwaCByZWZlcmVuY2UgaW4g
bmV0d29yayBwYW5lbC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
SW5qZWN0ZWRTY3JpcHRIb3N0Q3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTSW5qZWN0ZWRTY3JpcHRIb3N0Q3VzdG9tLmNwcAppbmRleCBhNTg5ZTRmLi41MGIzM2Y2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0luamVjdGVkU2NyaXB0SG9z
dEN1c3RvbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJbmplY3RlZFNj
cmlwdEhvc3RDdXN0b20uY3BwCkBAIC0zOSwxMSArMzksMTcgQEAKICNpbmNsdWRlICJEYXRhYmFz
ZS5oIgogI2luY2x1ZGUgIkpTRGF0YWJhc2UuaCIKICNlbmRpZgorI2luY2x1ZGUgIkRhdGVJbnN0
YW5jZS5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKICNpbmNsdWRlICJJbmplY3RlZFNj
cmlwdEhvc3QuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmgiCiAjaW5jbHVk
ZSAiSW5zcGVjdG9yVmFsdWVzLmgiCisjaW5jbHVkZSAiSlNBcnJheS5oIgorI2luY2x1ZGUgIkpT
SFRNTEFsbENvbGxlY3Rpb24uaCIKKyNpbmNsdWRlICJKU0hUTUxDb2xsZWN0aW9uLmgiCiAjaW5j
bHVkZSAiSlNOb2RlLmgiCisjaW5jbHVkZSAiSlNOb2RlTGlzdC5oIgorI2luY2x1ZGUgIlJlZ0V4
cE9iamVjdC5oIgogI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCiAjaWYgRU5BQkxFKERPTV9TVE9S
QUdFKQogI2luY2x1ZGUgIlN0b3JhZ2UuaCIKQEAgLTkwLDYgKzk2LDQyIEBAIEpTVmFsdWUgSlNJ
bmplY3RlZFNjcmlwdEhvc3Q6OmludGVybmFsQ29uc3RydWN0b3JOYW1lKEV4ZWNTdGF0ZSogZXhl
YykKICAgICByZXR1cm4ganNTdHJpbmcoZXhlYywgcmVzdWx0KTsKIH0KIAorSlNWYWx1ZSBKU0lu
amVjdGVkU2NyaXB0SG9zdDo6aXNIVE1MQWxsQ29sbGVjdGlvbihFeGVjU3RhdGUqIGV4ZWMpCit7
CisgICAgaWYgKGV4ZWMtPmFyZ3VtZW50Q291bnQoKSA8IDEpCisgICAgICAgIHJldHVybiBqc1Vu
ZGVmaW5lZCgpOworCisgICAgSlNWYWx1ZSB2YWx1ZSA9IGV4ZWMtPmFyZ3VtZW50KDApOworICAg
IHJldHVybiBqc0Jvb2xlYW4odmFsdWUuaW5oZXJpdHMoJkpTSFRNTEFsbENvbGxlY3Rpb246OnNf
aW5mbykpOworfQorCitKU1ZhbHVlIEpTSW5qZWN0ZWRTY3JpcHRIb3N0Ojp0eXBlKEV4ZWNTdGF0
ZSogZXhlYykKK3sKKyAgICBpZiAoZXhlYy0+YXJndW1lbnRDb3VudCgpIDwgMSkKKyAgICAgICAg
cmV0dXJuIGpzVW5kZWZpbmVkKCk7CisKKyAgICBKU1ZhbHVlIHZhbHVlID0gZXhlYy0+YXJndW1l
bnQoMCk7CisgICAgaWYgKHZhbHVlLmlzU3RyaW5nKCkpCisgICAgICAgIHJldHVybiBqc1N0cmlu
ZyhleGVjLCBTdHJpbmcoInN0cmluZyIpKTsKKyAgICBpZiAodmFsdWUuaW5oZXJpdHMoJkpTQXJy
YXk6OnNfaW5mbykpCisgICAgICAgIHJldHVybiBqc1N0cmluZyhleGVjLCBTdHJpbmcoImFycmF5
IikpOworICAgIGlmICh2YWx1ZS5pc0Jvb2xlYW4oKSkKKyAgICAgICAgcmV0dXJuIGpzU3RyaW5n
KGV4ZWMsIFN0cmluZygiYm9vbGVhbiIpKTsKKyAgICBpZiAodmFsdWUuaXNOdW1iZXIoKSkKKyAg
ICAgICAgcmV0dXJuIGpzU3RyaW5nKGV4ZWMsIFN0cmluZygibnVtYmVyIikpOworICAgIGlmICh2
YWx1ZS5pbmhlcml0cygmRGF0ZUluc3RhbmNlOjpzX2luZm8pKQorICAgICAgICByZXR1cm4ganNT
dHJpbmcoZXhlYywgU3RyaW5nKCJkYXRlIikpOworICAgIGlmICh2YWx1ZS5pbmhlcml0cygmUmVn
RXhwT2JqZWN0OjpzX2luZm8pKQorICAgICAgICByZXR1cm4ganNTdHJpbmcoZXhlYywgU3RyaW5n
KCJyZWdleHAiKSk7CisgICAgaWYgKHZhbHVlLmluaGVyaXRzKCZKU05vZGU6OnNfaW5mbykpCisg
ICAgICAgIHJldHVybiBqc1N0cmluZyhleGVjLCBTdHJpbmcoIm5vZGUiKSk7CisgICAgaWYgKHZh
bHVlLmluaGVyaXRzKCZKU05vZGVMaXN0OjpzX2luZm8pKQorICAgICAgICByZXR1cm4ganNTdHJp
bmcoZXhlYywgU3RyaW5nKCJhcnJheSIpKTsKKyAgICBpZiAodmFsdWUuaW5oZXJpdHMoJkpTSFRN
TENvbGxlY3Rpb246OnNfaW5mbykpCisgICAgICAgIHJldHVybiBqc1N0cmluZyhleGVjLCBTdHJp
bmcoImFycmF5IikpOworICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOworfQorCiBKU1ZhbHVlIEpT
SW5qZWN0ZWRTY3JpcHRIb3N0OjppbnNwZWN0KEV4ZWNTdGF0ZSogZXhlYykKIHsKICAgICBpZiAo
ZXhlYy0+YXJndW1lbnRDb3VudCgpID49IDIpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L2N1c3RvbS9WOEluamVjdGVkU2NyaXB0SG9zdEN1c3RvbS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhJbmplY3RlZFNjcmlwdEhvc3RDdXN0b20u
Y3BwCmluZGV4IGQ0OWQ2MWQuLmY3MWRlYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L2N1c3RvbS9WOEluamVjdGVkU2NyaXB0SG9zdEN1c3RvbS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4SW5qZWN0ZWRTY3JpcHRIb3N0Q3VzdG9t
LmNwcApAQCAtMzksNyArMzksMTAgQEAKICNpbmNsdWRlICJWOEJpbmRpbmcuaCIKICNpbmNsdWRl
ICJWOEJpbmRpbmdTdGF0ZS5oIgogI2luY2x1ZGUgIlY4RGF0YWJhc2UuaCIKKyNpbmNsdWRlICJW
OEhUTUxBbGxDb2xsZWN0aW9uLmgiCisjaW5jbHVkZSAiVjhIVE1MQ29sbGVjdGlvbi5oIgogI2lu
Y2x1ZGUgIlY4SGlkZGVuUHJvcGVydHlOYW1lLmgiCisjaW5jbHVkZSAiVjhOb2RlTGlzdC5oIgog
I2luY2x1ZGUgIlY4Tm9kZS5oIgogI2luY2x1ZGUgIlY4UHJveHkuaCIKICNpbmNsdWRlICJWOFN0
b3JhZ2UuaCIKQEAgLTg5LDYgKzkyLDQ3IEBAIHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOEluamVj
dGVkU2NyaXB0SG9zdDo6aW50ZXJuYWxDb25zdHJ1Y3Rvck5hbWVDYWxsYmFjayhjb25zCiAgICAg
cmV0dXJuIGFyZ3NbMF0tPlRvT2JqZWN0KCktPkdldENvbnN0cnVjdG9yTmFtZSgpOwogfQogCit2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhJbmplY3RlZFNjcmlwdEhvc3Q6OmlzSFRNTEFsbENvbGxl
Y3Rpb25DYWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIElOQ19TVEFU
UygiSW5qZWN0ZWRTY3JpcHRIb3N0LmlzSFRNTEFsbENvbGxlY3Rpb25DYWxsYmFjaygpIik7Cisg
ICAgaWYgKGFyZ3MuTGVuZ3RoKCkgPCAxKQorICAgICAgICByZXR1cm4gdjg6OlVuZGVmaW5lZCgp
OworCisgICAgaWYgKCFhcmdzWzBdLT5Jc09iamVjdCgpKQorICAgICAgICByZXR1cm4gdjg6OkZh
bHNlKCk7CisKKyAgICB2ODo6SGFuZGxlU2NvcGUgaGFuZGxlU2NvcGU7CisgICAgcmV0dXJuIHY4
OjpCb29sZWFuOjpOZXcoVjhIVE1MQWxsQ29sbGVjdGlvbjo6SGFzSW5zdGFuY2UoYXJnc1swXSkp
OworfQorCit2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhJbmplY3RlZFNjcmlwdEhvc3Q6OnR5cGVD
YWxsYmFjayhjb25zdCB2ODo6QXJndW1lbnRzJiBhcmdzKQoreworICAgIElOQ19TVEFUUygiSW5q
ZWN0ZWRTY3JpcHRIb3N0LnR5cGVDYWxsYmFjaygpIik7CisgICAgaWYgKGFyZ3MuTGVuZ3RoKCkg
PCAxKQorICAgICAgICByZXR1cm4gdjg6OlVuZGVmaW5lZCgpOworCisgICAgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IHZhbHVlID0gYXJnc1swXTsKKyAgICBpZiAodmFsdWUtPklzU3RyaW5nKCkpCisg
ICAgICAgIHJldHVybiB2ODo6U3RyaW5nOjpOZXcoInN0cmluZyIpOworICAgIGlmICh2YWx1ZS0+
SXNBcnJheSgpKQorICAgICAgICByZXR1cm4gdjg6OlN0cmluZzo6TmV3KCJhcnJheSIpOworICAg
IGlmICh2YWx1ZS0+SXNCb29sZWFuKCkpCisgICAgICAgIHJldHVybiB2ODo6U3RyaW5nOjpOZXco
ImJvb2xlYW4iKTsKKyAgICBpZiAodmFsdWUtPklzTnVtYmVyKCkpCisgICAgICAgIHJldHVybiB2
ODo6U3RyaW5nOjpOZXcoIm51bWJlciIpOworICAgIGlmICh2YWx1ZS0+SXNEYXRlKCkpCisgICAg
ICAgIHJldHVybiB2ODo6U3RyaW5nOjpOZXcoImRhdGUiKTsKKyAgICBpZiAodmFsdWUtPklzUmVn
RXhwKCkpCisgICAgICAgIHJldHVybiB2ODo6U3RyaW5nOjpOZXcoInJlZ2V4cCIpOworICAgIGlm
IChWOE5vZGU6Okhhc0luc3RhbmNlKHZhbHVlKSkKKyAgICAgICAgcmV0dXJuIHY4OjpTdHJpbmc6
Ok5ldygibm9kZSIpOworICAgIGlmIChWOE5vZGVMaXN0OjpIYXNJbnN0YW5jZSh2YWx1ZSkpCisg
ICAgICAgIHJldHVybiB2ODo6U3RyaW5nOjpOZXcoImFycmF5Iik7CisgICAgaWYgKFY4SFRNTENv
bGxlY3Rpb246Okhhc0luc3RhbmNlKHZhbHVlKSkKKyAgICAgICAgcmV0dXJuIHY4OjpTdHJpbmc6
Ok5ldygiYXJyYXkiKTsKKyAgICByZXR1cm4gdjg6OlVuZGVmaW5lZCgpOworfQorCiB2ODo6SGFu
ZGxlPHY4OjpWYWx1ZT4gVjhJbmplY3RlZFNjcmlwdEhvc3Q6Omluc3BlY3RDYWxsYmFjayhjb25z
dCB2ODo6QXJndW1lbnRzJiBhcmdzKQogewogICAgIElOQ19TVEFUUygiSW5qZWN0ZWRTY3JpcHRI
b3N0Lmluc3BlY3QoKSIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
amVjdGVkU2NyaXB0SG9zdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5qZWN0ZWRT
Y3JpcHRIb3N0LmlkbAppbmRleCA2OThlNGJkLi45YzZlODQyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRIb3N0LmlkbAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRIb3N0LmlkbApAQCAtMzgsNiArMzgsOCBAQCBt
b2R1bGUgY29yZSB7CiAgICAgICAgIFtDdXN0b21dIHZvaWQgaW5zcGVjdChpbiBET01PYmplY3Qg
b2JqZWN0SWQsIGluIERPTU9iamVjdCBoaW50cyk7CiAgICAgICAgIFtDdXN0b21dIERPTU9iamVj
dCBpbnNwZWN0ZWROb2RlKGluIGludCBudW0pOwogICAgICAgICBbQ3VzdG9tXSBET01PYmplY3Qg
aW50ZXJuYWxDb25zdHJ1Y3Rvck5hbWUoaW4gRE9NT2JqZWN0IG9iamVjdCk7CisgICAgICAgIFtD
dXN0b21dIGJvb2xlYW4gaXNIVE1MQWxsQ29sbGVjdGlvbihpbiBET01PYmplY3Qgb2JqZWN0KTsK
KyAgICAgICAgW0N1c3RvbV0gRE9NU3RyaW5nIHR5cGUoaW4gRE9NT2JqZWN0IG9iamVjdCk7CiAK
ICAgICAgICAgW0N1c3RvbV0gaW50IGRhdGFiYXNlSWQoaW4gRE9NT2JqZWN0IGRhdGFiYXNlKTsK
ICAgICAgICAgW0N1c3RvbV0gaW50IHN0b3JhZ2VJZChpbiBET01PYmplY3Qgc3RvcmFnZSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRTb3VyY2Uu
anMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5qZWN0ZWRTY3JpcHRTb3VyY2UuanMKaW5k
ZXggZjg4NzQ2NS4uODVlMTQ3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luamVjdGVkU2NyaXB0U291cmNlLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bmplY3RlZFNjcmlwdFNvdXJjZS5qcwpAQCAtMzQ1LDcgKzM0NSw3IEBAIEluamVjdGVkU2NyaXB0
LnByb3RvdHlwZSA9IHsKICAgICBfaXNIVE1MQWxsQ29sbGVjdGlvbjogZnVuY3Rpb24ob2JqZWN0
KQogICAgIHsKICAgICAgICAgLy8gZG9jdW1lbnQuYWxsIGlzIHJlcG9ydGVkIGFzIHVuZGVmaW5l
ZCwgYnV0IHdlIHN0aWxsIHdhbnQgdG8gcHJvY2VzcyBpdC4KLSAgICAgICAgcmV0dXJuICh0eXBl
b2Ygb2JqZWN0ID09PSAidW5kZWZpbmVkIikgJiYgaW5zcGVjdGVkV2luZG93LkhUTUxBbGxDb2xs
ZWN0aW9uICYmIG9iamVjdCBpbnN0YW5jZW9mIGluc3BlY3RlZFdpbmRvdy5IVE1MQWxsQ29sbGVj
dGlvbjsKKyAgICAgICAgcmV0dXJuICh0eXBlb2Ygb2JqZWN0ID09PSAidW5kZWZpbmVkIikgJiYg
SW5qZWN0ZWRTY3JpcHRIb3N0LmlzSFRNTEFsbENvbGxlY3Rpb24ob2JqZWN0KTsKICAgICB9LAog
CiAgICAgX3R5cGU6IGZ1bmN0aW9uKG9iaikKQEAgLTM2MSwyNSArMzYxLDEwIEBAIEluamVjdGVk
U2NyaXB0LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIHJldHVybiB0eXBlOwogICAgICAgICB9
CiAKLSAgICAgICAgLy8gSWYgb3duaW5nIGZyYW1lIGhhcyBuYXZpZ2F0ZWQgdG8gc29tZXdoZXJl
IGVsc2Ugd2luZG93IHByb3BlcnRpZXMgd2lsbCBiZSB1bmRlZmluZWQuCi0gICAgICAgIC8vIElu
IHRoaXMgY2FzZSBqdXN0IHJldHVybiByZXN1bHQgb2YgdGhlIHR5cGVvZi4KLSAgICAgICAgaWYg
KCFpbnNwZWN0ZWRXaW5kb3cuZG9jdW1lbnQpCi0gICAgICAgICAgICByZXR1cm4gdHlwZTsKKyAg
ICAgICAgdmFyIHByZWNpc2VUeXBlID0gSW5qZWN0ZWRTY3JpcHRIb3N0LnR5cGUob2JqKTsKKyAg
ICAgICAgaWYgKHByZWNpc2VUeXBlKQorICAgICAgICAgICAgcmV0dXJuIHByZWNpc2VUeXBlOwog
Ci0gICAgICAgIGlmIChvYmogaW5zdGFuY2VvZiBpbnNwZWN0ZWRXaW5kb3cuTm9kZSkKLSAgICAg
ICAgICAgIHJldHVybiAibm9kZSI7Ci0gICAgICAgIGlmIChvYmogaW5zdGFuY2VvZiBpbnNwZWN0
ZWRXaW5kb3cuU3RyaW5nKQotICAgICAgICAgICAgcmV0dXJuICJzdHJpbmciOwotICAgICAgICBp
ZiAob2JqIGluc3RhbmNlb2YgaW5zcGVjdGVkV2luZG93LkFycmF5KQotICAgICAgICAgICAgcmV0
dXJuICJhcnJheSI7Ci0gICAgICAgIGlmIChvYmogaW5zdGFuY2VvZiBpbnNwZWN0ZWRXaW5kb3cu
Qm9vbGVhbikKLSAgICAgICAgICAgIHJldHVybiAiYm9vbGVhbiI7Ci0gICAgICAgIGlmIChvYmog
aW5zdGFuY2VvZiBpbnNwZWN0ZWRXaW5kb3cuTnVtYmVyKQotICAgICAgICAgICAgcmV0dXJuICJu
dW1iZXIiOwotICAgICAgICBpZiAob2JqIGluc3RhbmNlb2YgaW5zcGVjdGVkV2luZG93LkRhdGUp
Ci0gICAgICAgICAgICByZXR1cm4gImRhdGUiOwotICAgICAgICBpZiAob2JqIGluc3RhbmNlb2Yg
aW5zcGVjdGVkV2luZG93LlJlZ0V4cCkKLSAgICAgICAgICAgIHJldHVybiAicmVnZXhwIjsKICAg
ICAgICAgLy8gRmlyZUJ1ZydzIGFycmF5IGRldGVjdGlvbi4KICAgICAgICAgdHJ5IHsKICAgICAg
ICAgICAgIGlmIChpc0Zpbml0ZShvYmoubGVuZ3RoKSAmJiB0eXBlb2Ygb2JqLnNwbGljZSA9PT0g
ImZ1bmN0aW9uIikKQEAgLTM4NywxMiArMzcyLDEwIEBAIEluamVjdGVkU2NyaXB0LnByb3RvdHlw
ZSA9IHsKICAgICAgICAgICAgIGlmIChpc0Zpbml0ZShvYmoubGVuZ3RoKSAmJiB0eXBlb2Ygb2Jq
LmNhbGxlZSA9PT0gImZ1bmN0aW9uIikgLy8gYXJndW1lbnRzLgogICAgICAgICAgICAgICAgIHJl
dHVybiAiYXJyYXkiOwogICAgICAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAgICAgICByZXR1cm4g
dHlwZTsKICAgICAgICAgfQotICAgICAgICBpZiAob2JqIGluc3RhbmNlb2YgaW5zcGVjdGVkV2lu
ZG93Lk5vZGVMaXN0KQotICAgICAgICAgICAgcmV0dXJuICJhcnJheSI7Ci0gICAgICAgIGlmIChv
YmogaW5zdGFuY2VvZiBpbnNwZWN0ZWRXaW5kb3cuSFRNTENvbGxlY3Rpb24pCi0gICAgICAgICAg
ICByZXR1cm4gImFycmF5IjsKKworICAgICAgICAvLyBJZiBvd25pbmcgZnJhbWUgaGFzIG5hdmln
YXRlZCB0byBzb21ld2hlcmUgZWxzZSB3aW5kb3cgcHJvcGVydGllcyB3aWxsIGJlIHVuZGVmaW5l
ZC4KKyAgICAgICAgLy8gSW4gdGhpcyBjYXNlIGp1c3QgcmV0dXJuIHJlc3VsdCBvZiB0aGUgdHlw
ZW9mLgogICAgICAgICByZXR1cm4gdHlwZTsKICAgICB9LAogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>