<?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>67717</bug_id>
          
          <creation_ts>2011-09-07 10:53:41 -0700</creation_ts>
          <short_desc>Web Inspector: get rid of RawSourceCode.createSourceMappingIfNeeded.</short_desc>
          <delta_ts>2011-09-08 09:37:41 -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>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>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>463450</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Podivilov">podivilov</who>
    <bug_when>2011-09-07 10:53:41 -0700</bug_when>
    <thetext>Web Inspector: get rid of RawSourceCode.createSourceMappingIfNeeded.

Listen to SourceMappingUpdated event instead of using createSourceMappingIfNeeded.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>463455</commentid>
    <comment_count>1</comment_count>
      <attachid>106601</attachid>
    <who name="Pavel Podivilov">podivilov</who>
    <bug_when>2011-09-07 10:57:10 -0700</bug_when>
    <thetext>Created attachment 106601
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>464098</commentid>
    <comment_count>2</comment_count>
    <who name="Pavel Podivilov">podivilov</who>
    <bug_when>2011-09-08 09:37:41 -0700</bug_when>
    <thetext>Committed r94762: &lt;http://trac.webkit.org/changeset/94762&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106601</attachid>
            <date>2011-09-07 10:57:10 -0700</date>
            <delta_ts>2011-09-08 00:12:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-67717-20110907215708.patch</filename>
            <type>text/plain</type>
            <size>27233</size>
            <attacher name="Pavel Podivilov">podivilov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTQ2NzUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAwODg1YzhlZGI5YWQ0MGU5NmNlODhi
MTU5NjE5Mjk3MzBhOTU3ODlmLi43ODg3ODZmNjU2YzY3ZjkyNmI4Njc3MTAwNDMyM2YwODljMzVh
ZDI1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTEtMDktMDcgIFBhdmVsIFBvZGl2aWxvdiAg
PHBvZGl2aWxvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogZ2V0IHJp
ZCBvZiBSYXdTb3VyY2VDb2RlLmNyZWF0ZVNvdXJjZU1hcHBpbmdJZk5lZWRlZC4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3NzE3CisKKyAgICAgICAg
TWVyZ2Ugc291cmNlLWZpbGUuaHRtbCBpbnRvIHJhdy1zb3VyY2UtY29kZS5odG1sLgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5zcGVjdG9yL2Rl
YnVnZ2VyL3Jhdy1zb3VyY2UtY29kZS5odG1sOgorICAgICAgICAqIGluc3BlY3Rvci9kZWJ1Z2dl
ci9zb3VyY2UtZmlsZS5odG1sOiBSZW1vdmVkLgorCiAyMDExLTA5LTA2ICBQYXZlbCBQb2Rpdmls
b3YgIDxwb2Rpdmlsb3ZAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IGRv
IG5vdCByZS1jcmVhdGUgUmF3U291cmNlQ29kZSB3aGVuIHRvZ2dsaW5nIHByZXR0eS1wcmludCBt
b2RlLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL3Jhdy1zb3Vy
Y2UtY29kZS5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RlYnVnZ2VyL3Jhdy1zb3VyY2Ut
Y29kZS5odG1sCmluZGV4IDllM2IzZGU1NWViM2I0NTI0YzliNGM0ZWQ4YWQ3NGRkNWQzYTczOGIu
LjQxMGUwZDJjYTliOTcyZjUyMmVlMzllNDA2NWEyNGYzY2NmMzA0OTAgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1Z2dlci9yYXctc291cmNlLWNvZGUuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9pbnNwZWN0b3IvZGVidWdnZXIvcmF3LXNvdXJjZS1jb2RlLmh0bWwKQEAgLTgw
LDYgKzgwLDI1IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICB0aHJvdyAiVW5leHBlY3RlZCBT
b3VyY2VNYXBwaW5nVXBkYXRlZCBldmVudC4iOwogICAgIH0KIAorICAgIGZ1bmN0aW9uIGNyZWF0
ZVJhd0xvY2F0aW9uKGxpbmVOdW1iZXIsIGNvbHVtbk51bWJlcikKKyAgICB7CisgICAgICAgIHJl
dHVybiB7IGxpbmVOdW1iZXI6IGxpbmVOdW1iZXIsIGNvbHVtbk51bWJlcjogY29sdW1uTnVtYmVy
IH07CisgICAgfQorCisgICAgZnVuY3Rpb24gY2hlY2tSYXdMb2NhdGlvbihzY3JpcHQsIGxpbmVO
dW1iZXIsIGNvbHVtbk51bWJlciwgbG9jYXRpb24pCisgICAgeworICAgICAgICBJbnNwZWN0b3JU
ZXN0LmFzc2VydEVxdWFscyhzY3JpcHQuc2NyaXB0SWQsIGxvY2F0aW9uLnNjcmlwdElkKTsKKyAg
ICAgICAgSW5zcGVjdG9yVGVzdC5hc3NlcnRFcXVhbHMobGluZU51bWJlciwgbG9jYXRpb24ubGlu
ZU51bWJlcik7CisgICAgICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0RXF1YWxzKGNvbHVtbk51bWJl
ciwgbG9jYXRpb24uY29sdW1uTnVtYmVyKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBjaGVja1VJ
TG9jYXRpb24odWlTb3VyY2VDb2RlLCBsaW5lTnVtYmVyLCBjb2x1bW5OdW1iZXIsIGxvY2F0aW9u
KQorICAgIHsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5hc3NlcnRFcXVhbHModWlTb3VyY2VDb2Rl
LCBsb2NhdGlvbi51aVNvdXJjZUNvZGUpOworICAgICAgICBJbnNwZWN0b3JUZXN0LmFzc2VydEVx
dWFscyhsaW5lTnVtYmVyLCBsb2NhdGlvbi5saW5lTnVtYmVyKTsKKyAgICAgICAgSW5zcGVjdG9y
VGVzdC5hc3NlcnRFcXVhbHMoY29sdW1uTnVtYmVyLCBsb2NhdGlvbi5jb2x1bW5OdW1iZXIpOwor
ICAgIH0KKwogICAgIEluc3BlY3RvclRlc3QucnVuVGVzdFN1aXRlKFsKICAgICAgICAgZnVuY3Rp
b24gdGVzdFNjcmlwdFdpdGhvdXRSZXNvdXJjZShuZXh0KQogICAgICAgICB7CkBAIC05MSw2ICsx
MTAsOCBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0
RXF1YWxzKCJmb28uanMiLCB1aVNvdXJjZUNvZGUudXJsKTsKICAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QuYXNzZXJ0RXF1YWxzKHRydWUsIHVpU291cmNlQ29kZS5pc0NvbnRlbnRTY3JpcHQpOwog
ICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hc3NlcnRFcXVhbHMocmF3U291cmNlQ29kZSwgdWlT
b3VyY2VDb2RlLnJhd1NvdXJjZUNvZGUpOworICAgICAgICAgICAgY2hlY2tVSUxvY2F0aW9uKHVp
U291cmNlQ29kZSwgMCwgNSwgcmF3U291cmNlQ29kZS5yYXdMb2NhdGlvblRvVUlMb2NhdGlvbihj
cmVhdGVSYXdMb2NhdGlvbigwLCA1KSkpOworICAgICAgICAgICAgY2hlY2tSYXdMb2NhdGlvbihz
Y3JpcHQsIDAsIDEwLCByYXdTb3VyY2VDb2RlLnVpTG9jYXRpb25Ub1Jhd0xvY2F0aW9uKDAsIDEw
KSk7CiAgICAgICAgICAgICB1aVNvdXJjZUNvZGUucmVxdWVzdENvbnRlbnQoZGlkUmVxdWVzdENv
bnRlbnQpOwogCiAgICAgICAgICAgICBmdW5jdGlvbiBkaWRSZXF1ZXN0Q29udGVudChtaW1lVHlw
ZSwgY29udGVudCkKQEAgLTEzNCw4ICsxNTUsOCBAQCBmdW5jdGlvbiB0ZXN0KCkKIAogICAgICAg
ICBmdW5jdGlvbiB0ZXN0SFRNTFdpdGhGaW5pc2hlZFJlc291cmNlKG5leHQpCiAgICAgICAgIHsK
LSAgICAgICAgICAgIHZhciBzY3JpcHQxID0gY3JlYXRlU2NyaXB0TW9jaygiaW5kZXguaHRtbCIs
IDAsIDEwLCBmYWxzZSwgIjxzY3JpcHQgc291cmNlIDE+Iik7Ci0gICAgICAgICAgICB2YXIgc2Ny
aXB0MiA9IGNyZWF0ZVNjcmlwdE1vY2soImluZGV4Lmh0bWwiLCAwLCA0NSwgZmFsc2UsICI8c2Ny
aXB0IHNvdXJjZSAyPiIpOworICAgICAgICAgICAgdmFyIHNjcmlwdDEgPSBjcmVhdGVTY3JpcHRN
b2NrKCJpbmRleC5odG1sIiwgMSwgMTAsIGZhbHNlLCAiPHNjcmlwdCBzb3VyY2UgMT4iKTsKKyAg
ICAgICAgICAgIHZhciBzY3JpcHQyID0gY3JlYXRlU2NyaXB0TW9jaygiaW5kZXguaHRtbCIsIDUs
IDQ1LCBmYWxzZSwgIjxzY3JpcHRcbnNvdXJjZVxuMj4iKTsKICAgICAgICAgICAgIHZhciByZXNv
dXJjZSA9IGNyZWF0ZUZpbmlzaGVkUmVzb3VyY2VNb2NrKCJkb2N1bWVudCIsICI8cmVzb3VyY2Ug
Y29udGVudD4iKTsKICAgICAgICAgICAgIHZhciByYXdTb3VyY2VDb2RlID0gY3JlYXRlUmF3U291
cmNlQ29kZShzY3JpcHQxLCByZXNvdXJjZSk7CiAKQEAgLTE1Miw2ICsxNzMsMTAgQEAgZnVuY3Rp
b24gdGVzdCgpCiAKICAgICAgICAgICAgICAgICByYXdTb3VyY2VDb2RlLmFkZFNjcmlwdChzY3Jp
cHQyKTsKICAgICAgICAgICAgICAgICByYXdTb3VyY2VDb2RlLmZvcmNlVXBkYXRlU291cmNlTWFw
cGluZygpOworICAgICAgICAgICAgICAgIGNoZWNrVUlMb2NhdGlvbih1aVNvdXJjZUNvZGUsIDEs
IDIwLCByYXdTb3VyY2VDb2RlLnJhd0xvY2F0aW9uVG9VSUxvY2F0aW9uKGNyZWF0ZVJhd0xvY2F0
aW9uKDEsIDIwKSkpOworICAgICAgICAgICAgICAgIGNoZWNrUmF3TG9jYXRpb24oc2NyaXB0MSwg
MSwgMjAsIHJhd1NvdXJjZUNvZGUudWlMb2NhdGlvblRvUmF3TG9jYXRpb24oMSwgMjApKTsKKyAg
ICAgICAgICAgICAgICBjaGVja1Jhd0xvY2F0aW9uKHNjcmlwdDIsIDYsIDIsIHJhd1NvdXJjZUNv
ZGUudWlMb2NhdGlvblRvUmF3TG9jYXRpb24oNiwgMikpOworCiAgICAgICAgICAgICAgICAgbmV4
dCgpOwogICAgICAgICAgICAgfQogICAgICAgICB9LApAQCAtMjU2LDEwICsyODEsOCBAQCBmdW5j
dGlvbiB0ZXN0KCkKIAogICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hc3NlcnRUcnVlKCEhcmF3
U291cmNlQ29kZS51aVNvdXJjZUNvZGUpOwogICAgICAgICAgICAgdmFyIHVpU291cmNlQ29kZSA9
IHJhd1NvdXJjZUNvZGUudWlTb3VyY2VDb2RlOwotICAgICAgICAgICAgdmFyIHVpTG9jYXRpb24g
PSByYXdTb3VyY2VDb2RlLnJhd0xvY2F0aW9uVG9VSUxvY2F0aW9uKHsgbGluZU51bWJlciA6IDEs
IGNvbHVtbk51bWJlcjogMiB9KTsKLSAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0RXF1
YWxzKHVpU291cmNlQ29kZSwgdWlMb2NhdGlvbi51aVNvdXJjZUNvZGUpOwotICAgICAgICAgICAg
SW5zcGVjdG9yVGVzdC5hc3NlcnRFcXVhbHMoMSwgdWlMb2NhdGlvbi5saW5lTnVtYmVyKTsKLSAg
ICAgICAgICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0RXF1YWxzKDIsIHVpTG9jYXRpb24uY29sdW1u
TnVtYmVyKTsKKyAgICAgICAgICAgIGNoZWNrVUlMb2NhdGlvbih1aVNvdXJjZUNvZGUsIDEsIDIs
IHJhd1NvdXJjZUNvZGUucmF3TG9jYXRpb25Ub1VJTG9jYXRpb24oY3JlYXRlUmF3TG9jYXRpb24o
MSwgMikpKTsKKyAgICAgICAgICAgIGNoZWNrUmF3TG9jYXRpb24oc2NyaXB0LCAxLCAyLCByYXdT
b3VyY2VDb2RlLnVpTG9jYXRpb25Ub1Jhd0xvY2F0aW9uKDEsIDIpKTsKICAgICAgICAgICAgIHVp
U291cmNlQ29kZS5yZXF1ZXN0Q29udGVudChkaWRSZXF1ZXN0Q29udGVudCk7CiAKICAgICAgICAg
ICAgIGZ1bmN0aW9uIGRpZFJlcXVlc3RDb250ZW50KG1pbWVUeXBlLCBjb250ZW50KQpAQCAtMjc1
LDEwICsyOTgsOCBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICAgICAgICAgIGZ1bmN0aW9uIHJlcXVl
c3RGb3JtYXR0ZWRDb250ZW50KCkKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICB2YXIg
dWlTb3VyY2VDb2RlID0gcmF3U291cmNlQ29kZS51aVNvdXJjZUNvZGU7Ci0gICAgICAgICAgICAg
ICAgdmFyIHVpTG9jYXRpb24gPSByYXdTb3VyY2VDb2RlLnJhd0xvY2F0aW9uVG9VSUxvY2F0aW9u
KHsgbGluZU51bWJlciA6IDEsIGNvbHVtbk51bWJlcjogMiB9KTsKLSAgICAgICAgICAgICAgICBJ
bnNwZWN0b3JUZXN0LmFzc2VydEVxdWFscyh1aVNvdXJjZUNvZGUsIHVpTG9jYXRpb24udWlTb3Vy
Y2VDb2RlKTsKLSAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFzc2VydEVxdWFscygyLCB1
aUxvY2F0aW9uLmxpbmVOdW1iZXIpOwotICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYXNz
ZXJ0RXF1YWxzKDQsIHVpTG9jYXRpb24uY29sdW1uTnVtYmVyKTsKKyAgICAgICAgICAgICAgICBj
aGVja1VJTG9jYXRpb24odWlTb3VyY2VDb2RlLCAyLCA0LCByYXdTb3VyY2VDb2RlLnJhd0xvY2F0
aW9uVG9VSUxvY2F0aW9uKGNyZWF0ZVJhd0xvY2F0aW9uKDEsIDIpKSk7CisgICAgICAgICAgICAg
ICAgY2hlY2tSYXdMb2NhdGlvbihzY3JpcHQsIDEsIDIsIHJhd1NvdXJjZUNvZGUudWlMb2NhdGlv
blRvUmF3TG9jYXRpb24oMiwgNCkpOwogICAgICAgICAgICAgICAgIHVpU291cmNlQ29kZS5yZXF1
ZXN0Q29udGVudChkaWRSZXF1ZXN0Rm9ybWF0dGVkQ29udGVudCk7CiAgICAgICAgICAgICB9CiAK
QEAgLTI5NCwxMCArMzE1LDggQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgICAgICAgICBmdW5jdGlv
biByZXF1ZXN0Tm90Rm9ybWF0dGVkQ29udGVudCgpCiAgICAgICAgICAgICB7CiAgICAgICAgICAg
ICAgICAgdmFyIHVpU291cmNlQ29kZSA9IHJhd1NvdXJjZUNvZGUudWlTb3VyY2VDb2RlOwotICAg
ICAgICAgICAgICAgIHZhciB1aUxvY2F0aW9uID0gcmF3U291cmNlQ29kZS5yYXdMb2NhdGlvblRv
VUlMb2NhdGlvbih7IGxpbmVOdW1iZXIgOiAxLCBjb2x1bW5OdW1iZXI6IDIgfSk7Ci0gICAgICAg
ICAgICAgICAgSW5zcGVjdG9yVGVzdC5hc3NlcnRFcXVhbHModWlTb3VyY2VDb2RlLCB1aUxvY2F0
aW9uLnVpU291cmNlQ29kZSk7Ci0gICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hc3NlcnRF
cXVhbHMoMSwgdWlMb2NhdGlvbi5saW5lTnVtYmVyKTsKLSAgICAgICAgICAgICAgICBJbnNwZWN0
b3JUZXN0LmFzc2VydEVxdWFscygyLCB1aUxvY2F0aW9uLmNvbHVtbk51bWJlcik7CisgICAgICAg
ICAgICAgICAgY2hlY2tVSUxvY2F0aW9uKHVpU291cmNlQ29kZSwgMSwgMiwgcmF3U291cmNlQ29k
ZS5yYXdMb2NhdGlvblRvVUlMb2NhdGlvbihjcmVhdGVSYXdMb2NhdGlvbigxLCAyKSkpOworICAg
ICAgICAgICAgICAgIGNoZWNrUmF3TG9jYXRpb24oc2NyaXB0LCAxLCAyLCByYXdTb3VyY2VDb2Rl
LnVpTG9jYXRpb25Ub1Jhd0xvY2F0aW9uKDEsIDIpKTsKICAgICAgICAgICAgICAgICB1aVNvdXJj
ZUNvZGUucmVxdWVzdENvbnRlbnQoZGlkUmVxdWVzdE5vdEZvcm1hdHRlZENvbnRlbnQpOwogICAg
ICAgICAgICAgfQogCkBAIC0zMjQsMTEgKzM0Myw4IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAg
ICAgICAgZnVuY3Rpb24gY2hlY2tNYXBwaW5nKCkKICAgICAgICAgICAgIHsKICAgICAgICAgICAg
ICAgICB2YXIgdWlTb3VyY2VDb2RlID0gcmF3U291cmNlQ29kZS51aVNvdXJjZUNvZGU7Ci0gICAg
ICAgICAgICAgICAgdmFyIHVpTG9jYXRpb24gPSByYXdTb3VyY2VDb2RlLnJhd0xvY2F0aW9uVG9V
SUxvY2F0aW9uKHsgbGluZU51bWJlciA6IDEsIGNvbHVtbk51bWJlcjogMiB9KTsKLSAgICAgICAg
ICAgICAgICBJbnNwZWN0b3JUZXN0LmFzc2VydEVxdWFscyh1aVNvdXJjZUNvZGUsIHVpTG9jYXRp
b24udWlTb3VyY2VDb2RlKTsKLSAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFzc2VydEVx
dWFscygyLCB1aUxvY2F0aW9uLmxpbmVOdW1iZXIpOwotICAgICAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QuYXNzZXJ0RXF1YWxzKDQsIHVpTG9jYXRpb24uY29sdW1uTnVtYmVyKTsKLQorICAgICAg
ICAgICAgICAgIGNoZWNrVUlMb2NhdGlvbih1aVNvdXJjZUNvZGUsIDIsIDQsIHJhd1NvdXJjZUNv
ZGUucmF3TG9jYXRpb25Ub1VJTG9jYXRpb24oY3JlYXRlUmF3TG9jYXRpb24oMSwgMikpKTsKKyAg
ICAgICAgICAgICAgICBjaGVja1Jhd0xvY2F0aW9uKHNjcmlwdCwgMSwgMiwgcmF3U291cmNlQ29k
ZS51aUxvY2F0aW9uVG9SYXdMb2NhdGlvbigyLCA0KSk7CiAgICAgICAgICAgICAgICAgbmV4dCgp
OwogICAgICAgICAgICAgfQogICAgICAgICB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3IvZGVidWdnZXIvc291cmNlLWZpbGUuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9k
ZWJ1Z2dlci9zb3VyY2UtZmlsZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBj
ZTJiMzdjNzhiYjcyZTE1MjU5MjkzZmUyODExZmQ2MGRjMzY2Mzk2Li4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9kZWJ1
Z2dlci9zb3VyY2UtZmlsZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMTM1ICswLDAgQEAKLTxo
dG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vaHR0cC90ZXN0cy9pbnNwZWN0b3IvaW5z
cGVjdG9yLXRlc3QuanMiPjwvc2NyaXB0PgotCi08c2NyaXB0PgotCi1mdW5jdGlvbiB0ZXN0KCkK
LXsKLSAgICB2YXIgbW9ja1NvdXJjZU1hcHBpbmcgPSB7Ci0gICAgICAgIG9yaWdpbmFsVG9Gb3Jt
YXR0ZWQ6IGZ1bmN0aW9uKGxvY2F0aW9uKQotICAgICAgICB7Ci0gICAgICAgICAgICB2YXIgZm9y
bWF0dGVkTG9jYXRpb24gPSB7fTsKLSAgICAgICAgICAgIGZvcm1hdHRlZExvY2F0aW9uLmxpbmVO
dW1iZXIgPSBsb2NhdGlvbi5saW5lTnVtYmVyICogMjsKLSAgICAgICAgICAgIGZvcm1hdHRlZExv
Y2F0aW9uLmNvbHVtbk51bWJlciA9IGxvY2F0aW9uLmNvbHVtbk51bWJlciAqIDI7Ci0gICAgICAg
ICAgICByZXR1cm4gZm9ybWF0dGVkTG9jYXRpb247Ci0gICAgICAgIH0sCi0KLSAgICAgICAgZm9y
bWF0dGVkVG9PcmlnaW5hbDogZnVuY3Rpb24obG9jYXRpb24pCi0gICAgICAgIHsKLSAgICAgICAg
ICAgIHZhciBvcmlnaW5hbExvY2F0aW9uID0ge307Ci0gICAgICAgICAgICBvcmlnaW5hbExvY2F0
aW9uLmxpbmVOdW1iZXIgPSBNYXRoLmZsb29yKGxvY2F0aW9uLmxpbmVOdW1iZXIgLyAyKTsKLSAg
ICAgICAgICAgIG9yaWdpbmFsTG9jYXRpb24uY29sdW1uTnVtYmVyID0gTWF0aC5mbG9vcihsb2Nh
dGlvbi5jb2x1bW5OdW1iZXIgLyAyKTsKLSAgICAgICAgICAgIHJldHVybiBvcmlnaW5hbExvY2F0
aW9uOwotICAgICAgICB9Ci0gICAgfTsKLQotICAgIHZhciBtb2NrU2NyaXB0Rm9ybWF0dGVyID0g
ewotICAgICAgICBmb3JtYXRDb250ZW50OiBmdW5jdGlvbihtaW1lVHlwZSwgY29udGVudCwgY2Fs
bGJhY2spCi0gICAgICAgIHsKLSAgICAgICAgICAgIGNhbGxiYWNrKGNvbnRlbnQsIG1vY2tTb3Vy
Y2VNYXBwaW5nKTsKLSAgICAgICAgfQotICAgIH07Ci0KLSAgICBmdW5jdGlvbiBybChsaW5lTnVt
YmVyLCBjb2x1bW5OdW1iZXIpCi0gICAgewotICAgICAgICByZXR1cm4geyBsaW5lTnVtYmVyOiBs
aW5lTnVtYmVyLCBjb2x1bW5OdW1iZXI6IGNvbHVtbk51bWJlciB9OwotICAgIH0KLQotICAgIGZ1
bmN0aW9uIGNoZWNrUmF3TG9jYXRpb24oc2NyaXB0LCBsaW5lTnVtYmVyLCBjb2x1bW5OdW1iZXIs
IGxvY2F0aW9uKQotICAgIHsKLSAgICAgICAgSW5zcGVjdG9yVGVzdC5hc3NlcnRFcXVhbHMoc2Ny
aXB0LnNjcmlwdElkLCBsb2NhdGlvbi5zY3JpcHRJZCk7Ci0gICAgICAgIEluc3BlY3RvclRlc3Qu
YXNzZXJ0RXF1YWxzKGxpbmVOdW1iZXIsIGxvY2F0aW9uLmxpbmVOdW1iZXIpOwotICAgICAgICBJ
bnNwZWN0b3JUZXN0LmFzc2VydEVxdWFscyhjb2x1bW5OdW1iZXIsIGxvY2F0aW9uLmNvbHVtbk51
bWJlcik7Ci0gICAgfQotCi0gICAgZnVuY3Rpb24gY2hlY2tVSUxvY2F0aW9uKHJhd1NvdXJjZUNv
ZGUsIGxpbmVOdW1iZXIsIGNvbHVtbk51bWJlciwgbG9jYXRpb24pCi0gICAgewotICAgICAgICBJ
bnNwZWN0b3JUZXN0LmFzc2VydEVxdWFscyhyYXdTb3VyY2VDb2RlLnVpU291cmNlQ29kZSwgbG9j
YXRpb24udWlTb3VyY2VDb2RlKTsKLSAgICAgICAgSW5zcGVjdG9yVGVzdC5hc3NlcnRFcXVhbHMo
bGluZU51bWJlciwgbG9jYXRpb24ubGluZU51bWJlcik7Ci0gICAgICAgIEluc3BlY3RvclRlc3Qu
YXNzZXJ0RXF1YWxzKGNvbHVtbk51bWJlciwgbG9jYXRpb24uY29sdW1uTnVtYmVyKTsKLSAgICB9
Ci0KLSAgICBJbnNwZWN0b3JUZXN0LnJ1blRlc3RTdWl0ZShbCi0gICAgICAgIGZ1bmN0aW9uIHRl
c3RQbGFpbkNvbnZlcnRMb2NhdGlvbihuZXh0KQotICAgICAgICB7Ci0gICAgICAgICAgICB2YXIg
c2NyaXB0ID0gbmV3IFdlYkluc3BlY3Rvci5TY3JpcHQoIjEiLCAiZm9vLmpzIiwgMCwgMCwgMjAs
IDgwLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgZmFsc2UpOwotICAgICAgICAgICAgdmFyIHJhd1Nv
dXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLlJhd1NvdXJjZUNvZGUoImlkIiwgc2NyaXB0KTsK
LQotICAgICAgICAgICAgY2hlY2tVSUxvY2F0aW9uKHJhd1NvdXJjZUNvZGUsIDEwLCAyMCwgcmF3
U291cmNlQ29kZS5yYXdMb2NhdGlvblRvVUlMb2NhdGlvbihybCgxMCwgMjApKSk7Ci0gICAgICAg
ICAgICBjaGVja1Jhd0xvY2F0aW9uKHNjcmlwdCwgMzAsIDQwLCByYXdTb3VyY2VDb2RlLnVpTG9j
YXRpb25Ub1Jhd0xvY2F0aW9uKDMwLCA0MCkpOwotCi0gICAgICAgICAgICBuZXh0KCk7Ci0gICAg
ICAgIH0sCi0KLSAgICAgICAgZnVuY3Rpb24gdGVzdENvbmNhdGVuYXRlZENvbnZlcnRMb2NhdGlv
bihuZXh0KQotICAgICAgICB7Ci0gICAgICAgICAgICB2YXIgc2NyaXB0MSA9IG5ldyBXZWJJbnNw
ZWN0b3IuU2NyaXB0KCIxIiwgImZvby5qcyIsIDEwLCAyMCwgMzAsIDQwLCB1bmRlZmluZWQsIHVu
ZGVmaW5lZCwgZmFsc2UpOwotICAgICAgICAgICAgdmFyIHNjcmlwdDIgPSBuZXcgV2ViSW5zcGVj
dG9yLlNjcmlwdCgiMiIsICJmb28uanMiLCA1MCwgNjAsIDcwLCA4MCwgdW5kZWZpbmVkLCB1bmRl
ZmluZWQsIGZhbHNlKTsKLSAgICAgICAgICAgIHZhciByYXdTb3VyY2VDb2RlID0gbmV3IFdlYklu
c3BlY3Rvci5SYXdTb3VyY2VDb2RlKCJpZCIsIHNjcmlwdDEpOwotICAgICAgICAgICAgcmF3U291
cmNlQ29kZS5hZGRTY3JpcHQoc2NyaXB0Mik7Ci0KLSAgICAgICAgICAgIGNoZWNrVUlMb2NhdGlv
bihyYXdTb3VyY2VDb2RlLCAyMCwgMCwgcmF3U291cmNlQ29kZS5yYXdMb2NhdGlvblRvVUlMb2Nh
dGlvbihybCgyMCwgMCkpKTsKLQotICAgICAgICAgICAgY2hlY2tSYXdMb2NhdGlvbihzY3JpcHQx
LCAwLCA0MCwgcmF3U291cmNlQ29kZS51aUxvY2F0aW9uVG9SYXdMb2NhdGlvbigwLCA0MCkpOwot
ICAgICAgICAgICAgY2hlY2tSYXdMb2NhdGlvbihzY3JpcHQxLCAyMCwgMCwgcmF3U291cmNlQ29k
ZS51aUxvY2F0aW9uVG9SYXdMb2NhdGlvbigyMCwgMCkpOwotICAgICAgICAgICAgY2hlY2tSYXdM
b2NhdGlvbihzY3JpcHQyLCA1MCwgNjAsIHJhd1NvdXJjZUNvZGUudWlMb2NhdGlvblRvUmF3TG9j
YXRpb24oNTAsIDYwKSk7Ci0KLSAgICAgICAgICAgIG5leHQoKTsKLSAgICAgICAgfSwKLQotICAg
ICAgICBmdW5jdGlvbiB0ZXN0Rm9ybWF0dGVkQ29udmVydExvY2F0aW9uKG5leHQpCi0gICAgICAg
IHsKLSAgICAgICAgICAgIHZhciBzY3JpcHQgPSBuZXcgV2ViSW5zcGVjdG9yLlNjcmlwdCgiMSIs
ICJmb28uanMiLCAwLCAwLCAyMCwgODAsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCBmYWxzZSk7Ci0g
ICAgICAgICAgICB2YXIgcmF3U291cmNlQ29kZSA9IG5ldyBXZWJJbnNwZWN0b3IuUmF3U291cmNl
Q29kZSgiaWQiLCBzY3JpcHQsIG51bGwsIG1vY2tTY3JpcHRGb3JtYXR0ZXIsIHRydWUpOwotCi0g
ICAgICAgICAgICBmdW5jdGlvbiBkaWRDcmVhdGVTb3VyY2VNYXBwaW5nKCkKLSAgICAgICAgICAg
IHsKLSAgICAgICAgICAgICAgICBjaGVja1VJTG9jYXRpb24ocmF3U291cmNlQ29kZSwgMjIsIDQw
LCByYXdTb3VyY2VDb2RlLnJhd0xvY2F0aW9uVG9VSUxvY2F0aW9uKHJsKDExLCAyMCkpKTsKLSAg
ICAgICAgICAgICAgICBjaGVja1Jhd0xvY2F0aW9uKHNjcmlwdCwgNywgOSwgcmF3U291cmNlQ29k
ZS51aUxvY2F0aW9uVG9SYXdMb2NhdGlvbigxNCwgMTkpKTsKLSAgICAgICAgICAgICAgICBuZXh0
KCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICByYXdTb3VyY2VDb2RlLmNyZWF0ZVNvdXJj
ZU1hcHBpbmdJZk5lZWRlZChkaWRDcmVhdGVTb3VyY2VNYXBwaW5nKTsKLSAgICAgICAgfSwKLQot
ICAgICAgICBmdW5jdGlvbiB0ZXN0Q29uY2F0ZW5hdGVkRm9ybWF0dGVkQ29udmVydExvY2F0aW9u
KG5leHQpCi0gICAgICAgIHsKLSAgICAgICAgICAgIHZhciBzY3JpcHQxID0gbmV3IFdlYkluc3Bl
Y3Rvci5TY3JpcHQoIjEiLCAiZm9vLmpzIiwgMTAsIDIwLCAzMCwgNDAsIHVuZGVmaW5lZCwgdW5k
ZWZpbmVkLCBmYWxzZSk7Ci0gICAgICAgICAgICB2YXIgc2NyaXB0MiA9IG5ldyBXZWJJbnNwZWN0
b3IuU2NyaXB0KCIyIiwgImZvby5qcyIsIDUwLCA2MCwgNzAsIDgwLCB1bmRlZmluZWQsIHVuZGVm
aW5lZCwgZmFsc2UpOwotICAgICAgICAgICAgdmFyIHJhd1NvdXJjZUNvZGUgPSBuZXcgV2ViSW5z
cGVjdG9yLlJhd1NvdXJjZUNvZGUoImlkIiwgc2NyaXB0MSwgbnVsbCwgbW9ja1NjcmlwdEZvcm1h
dHRlciwgdHJ1ZSk7Ci0gICAgICAgICAgICByYXdTb3VyY2VDb2RlLmFkZFNjcmlwdChzY3JpcHQy
KTsKLQotICAgICAgICAgICAgZnVuY3Rpb24gZGlkQ3JlYXRlU291cmNlTWFwcGluZygpCi0gICAg
ICAgICAgICB7Ci0gICAgICAgICAgICAgICAgY2hlY2tVSUxvY2F0aW9uKHJhd1NvdXJjZUNvZGUs
IDIyLCA2MCwgcmF3U291cmNlQ29kZS5yYXdMb2NhdGlvblRvVUlMb2NhdGlvbihybCgxMSwgMzAp
KSk7Ci0gICAgICAgICAgICAgICAgY2hlY2tSYXdMb2NhdGlvbihzY3JpcHQxLCAxMiwgMTAsIHJh
d1NvdXJjZUNvZGUudWlMb2NhdGlvblRvUmF3TG9jYXRpb24oMjQsIDIwKSk7Ci0gICAgICAgICAg
ICAgICAgY2hlY2tSYXdMb2NhdGlvbihzY3JpcHQyLCA2MCwgMTksIHJhd1NvdXJjZUNvZGUudWlM
b2NhdGlvblRvUmF3TG9jYXRpb24oMTIxLCAzOCkpOwotICAgICAgICAgICAgICAgIG5leHQoKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHJhd1NvdXJjZUNvZGUuY3JlYXRlU291cmNlTWFw
cGluZ0lmTmVlZGVkKGRpZENyZWF0ZVNvdXJjZU1hcHBpbmcpOwotICAgICAgICB9LAotCi0gICAg
ICAgIGZ1bmN0aW9uIHRlc3RVSVNvdXJjZUNvZGVBZGRlZChuZXh0KQotICAgICAgICB7Ci0gICAg
ICAgICAgICB2YXIgc2NyaXB0ID0gbmV3IFdlYkluc3BlY3Rvci5TY3JpcHQoIjEiLCAiZm9vLmpz
IiwgMCwgMCwgMjAsIDgwLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgZmFsc2UpOwotICAgICAgICAg
ICAgdmFyIHJhd1NvdXJjZUNvZGUgPSBuZXcgV2ViSW5zcGVjdG9yLlJhd1NvdXJjZUNvZGUoImlk
Iiwgc2NyaXB0KTsKLSAgICAgICAgICAgIGZ1bmN0aW9uIHVpU291cmNlQ29kZUFkZGVkKGV2ZW50
KQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0RXF1
YWxzKCJmb28uanMiLCBldmVudC5kYXRhLnVybCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAg
ICByYXdTb3VyY2VDb2RlLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLlJhd1NvdXJjZUNv
ZGUuRXZlbnRzLlVJU291cmNlQ29kZUFkZGVkLCB1aVNvdXJjZUNvZGVBZGRlZCwgdGhpcyk7Ci0K
LSAgICAgICAgICAgIG5leHQoKTsKLSAgICAgICAgfQotICAgIF0pOwotfTsKLQotPC9zY3JpcHQ+
Ci0KLTwvaGVhZD4KLQotPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgotPHA+VGVzdHMgbWFwcGlu
ZyBiZXR3ZWVuIHJhdyBsb2NhdGlvbnMgYW5kIHVpIGxvY2F0aW9ucy48L3A+Ci0KLTwvYm9keT4K
LTwvaHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwppbmRleCBjNzEwMTU5MDUwZGJkZDA0NGZjMDY1ZDg0NGQ3N2JmNWFh
MjM0ZDFmLi4zNGIyZTVmZDMzNDZhZjQ2YjMyNTUyM2E4MDE1MGY1YWY5NTQ1NzQyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMzAgQEAKKzIwMTEtMDktMDcgIFBhdmVsIFBvZGl2aWxvdiAgPHBvZGl2
aWxvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogZ2V0IHJpZCBvZiBS
YXdTb3VyY2VDb2RlLmNyZWF0ZVNvdXJjZU1hcHBpbmdJZk5lZWRlZC4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3NzE3CisKKyAgICAgICAgTGlzdGVu
IHRvIFNvdXJjZU1hcHBpbmdVcGRhdGVkIGV2ZW50IGluc3RlYWQgb2YgdXNpbmcgY3JlYXRlU291
cmNlTWFwcGluZ0lmTmVlZGVkLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9EZWJ1Z2dlclByZXNlbnRhdGlvbk1v
ZGVsLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRlYnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwp
OgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRlYnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwucHJvdG90
eXBlLmxpbmtpZnlMb2NhdGlvbi51cGRhdGVBbmNob3IpOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LkRlYnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwucHJvdG90eXBlLmxpbmtpZnlMb2NhdGlvbik6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuRGVidWdnZXJQcmVzZW50YXRpb25Nb2RlbC5wcm90b3R5cGUu
X3VwZGF0ZVNvdXJjZU1hcHBpbmcpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkRlYnVnZ2VyUHJl
c2VudGF0aW9uTW9kZWwucHJvdG90eXBlLl9yZXN0b3JlQnJlYWtwb2ludHMpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLkRlYnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwucHJvdG90eXBlLl9yZXN0b3Jl
Q29uc29sZU1lc3NhZ2VzKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5EZWJ1Z2dlclByZXNlbnRh
dGlvbk1vZGVsLnByb3RvdHlwZS5zZXRGb3JtYXRTb3VyY2UpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLkRlYnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwucHJvdG90eXBlLl9jb25zb2xlTWVzc2FnZUFk
ZGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5EZWJ1Z2dlclByZXNlbnRhdGlvbk1vZGVsLnBy
b3RvdHlwZS5fY3JlYXRlUHJlc2VudGF0aW9uTWVzc2FnZSk6CisgICAgICAgIChXZWJJbnNwZWN0
b3IuRGVidWdnZXJQcmVzZW50YXRpb25Nb2RlbC5wcm90b3R5cGUuX2NvbnNvbGVDbGVhcmVkKToK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5EZWJ1Z2dlclByZXNlbnRhdGlvbk1vZGVsLnByb3RvdHlw
ZS5jb250aW51ZVRvTGluZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuRGVidWdnZXJQcmVzZW50
YXRpb25Nb2RlbC5wcm90b3R5cGUubWVzc2FnZXNGb3JVSVNvdXJjZUNvZGUpOgorICAgICAgICAo
V2ViSW5zcGVjdG9yLkRlYnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwucHJvdG90eXBlLl9kZWJ1Z2dl
clJlc2V0KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5QcmVzZW50YXRpb25DYWxsRnJhbWUucHJv
dG90eXBlLnNvdXJjZUxpbmUuc291cmNlTWFwcGluZ1VwZGF0ZWQpOgorICAgICAgICAoV2ViSW5z
cGVjdG9yLlByZXNlbnRhdGlvbkNhbGxGcmFtZS5wcm90b3R5cGUuc291cmNlTGluZSk6CisgICAg
ICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9Tb3VyY2VGaWxlLmpzOgorCiAyMDExLTA5LTA2ICBQ
YXZlbCBQb2Rpdmlsb3YgIDxwb2Rpdmlsb3ZAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJ
bnNwZWN0b3I6IGRvIG5vdCByZS1jcmVhdGUgUmF3U291cmNlQ29kZSB3aGVuIHRvZ2dsaW5nIHBy
ZXR0eS1wcmludCBtb2RlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9EZWJ1Z2dlclByZXNlbnRhdGlvbk1vZGVsLmpzIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9EZWJ1Z2dlclByZXNlbnRhdGlvbk1vZGVsLmpzCmluZGV4IDhhOGUx
ZTY4MTg0MDZmMTFmMmRjNDg3NmY4ZDMwMzk4NTdjOTE1YWMuLmRmNWQ5OTMwZDcxZGExZGU5MmE5
OWZkMTk1ZDJjN2QyZDFhODYzMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvRGVidWdnZXJQcmVzZW50YXRpb25Nb2RlbC5qcworKysgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0RlYnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwuanMKQEAg
LTM2LDggKzM2LDYgQEAgV2ViSW5zcGVjdG9yLkRlYnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwgPSBm
dW5jdGlvbigpCiAgICAgLy8gRklYTUU6IGFwcGx5IGZvcm1hdHRlciBmcm9tIG91dHNpZGUgYXMg
YSBnZW5lcmljIG1hcHBpbmcuCiAgICAgdGhpcy5fZm9ybWF0dGVyID0gbmV3IFdlYkluc3BlY3Rv
ci5TY3JpcHRGb3JtYXR0ZXIoKTsKICAgICB0aGlzLl9yYXdTb3VyY2VDb2RlID0ge307Ci0gICAg
dGhpcy5fbWVzc2FnZXMgPSBbXTsKLQogICAgIHRoaXMuX3ByZXNlbnRhdGlvbkNhbGxGcmFtZXMg
PSBbXTsKICAgICB0aGlzLl9zZWxlY3RlZENhbGxGcmFtZUluZGV4ID0gMDsKIApAQCAtNjgsMzQg
KzY2LDYgQEAgV2ViSW5zcGVjdG9yLkRlYnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwuRXZlbnRzID0g
ewogfQogCiBXZWJJbnNwZWN0b3IuRGVidWdnZXJQcmVzZW50YXRpb25Nb2RlbC5wcm90b3R5cGUg
PSB7Ci0gICAgX3NjcmlwdExvY2F0aW9uVG9VSUxvY2F0aW9uOiBmdW5jdGlvbihzb3VyY2VVUkws
IHNjcmlwdElkLCBsaW5lTnVtYmVyLCBjb2x1bW5OdW1iZXIsIGNhbGxiYWNrKQotICAgIHsKLSAg
ICAgICAgdmFyIHJhd1NvdXJjZUNvZGUgPSB0aGlzLl9yYXdTb3VyY2VDb2RlRm9yU2NyaXB0KHNv
dXJjZVVSTCwgc2NyaXB0SWQpOwotCi0gICAgICAgIGZ1bmN0aW9uIGRpZENyZWF0ZVNvdXJjZU1h
cHBpbmcoKQotICAgICAgICB7Ci0gICAgICAgICAgICB2YXIgdWlMb2NhdGlvbiA9IHJhd1NvdXJj
ZUNvZGUucmF3TG9jYXRpb25Ub1VJTG9jYXRpb24oeyBsaW5lTnVtYmVyOiBsaW5lTnVtYmVyLCBj
b2x1bW5OdW1iZXI6IGNvbHVtbk51bWJlciB9KTsKLSAgICAgICAgICAgIGNhbGxiYWNrKHVpTG9j
YXRpb24udWlTb3VyY2VDb2RlLCB1aUxvY2F0aW9uLmxpbmVOdW1iZXIpOwotICAgICAgICB9Ci0g
ICAgICAgIC8vIEZJWE1FOiBmb3JjZSBzb3VyY2UgZm9ybWF0dGluZyBpZiBuZWVkZWQuIFRoaXMg
d2lsbCBnbyBhd2F5IG9uY2UgZm9ybWF0dGluZwotICAgICAgICAvLyBpcyBmdWxseSBlbmNhcHN1
bGF0ZWQgaW4gUmF3U291cmNlQ29kZSBjbGFzcy4KLSAgICAgICAgcmF3U291cmNlQ29kZS5jcmVh
dGVTb3VyY2VNYXBwaW5nSWZOZWVkZWQoZGlkQ3JlYXRlU291cmNlTWFwcGluZyk7Ci0gICAgfSwK
LQotICAgIF91aUxvY2F0aW9uVG9TY3JpcHRMb2NhdGlvbjogZnVuY3Rpb24odWlTb3VyY2VDb2Rl
LCBsaW5lTnVtYmVyLCBjYWxsYmFjaykKLSAgICB7Ci0gICAgICAgIHZhciByYXdTb3VyY2VDb2Rl
ID0gdWlTb3VyY2VDb2RlLnJhd1NvdXJjZUNvZGU7Ci0KLSAgICAgICAgZnVuY3Rpb24gZGlkQ3Jl
YXRlU291cmNlTWFwcGluZygpCi0gICAgICAgIHsKLSAgICAgICAgICAgIHZhciByYXdMb2NhdGlv
biA9IHJhd1NvdXJjZUNvZGUudWlMb2NhdGlvblRvUmF3TG9jYXRpb24obGluZU51bWJlciwgMCk7
Ci0gICAgICAgICAgICBjYWxsYmFjayhyYXdMb2NhdGlvbik7Ci0gICAgICAgIH0KLSAgICAgICAg
Ly8gRklYTUU6IGZvcmNlIHNvdXJjZSBmb3JtYXR0aW5nIGlmIG5lZWRlZC4gVGhpcyB3aWxsIGdv
IGF3YXkgb25jZSBmb3JtYXR0aW5nCi0gICAgICAgIC8vIGlzIGZ1bGx5IGVuY2Fwc3VsYXRlZCBp
biBSYXdTb3VyY2VDb2RlIGNsYXNzLgotICAgICAgICByYXdTb3VyY2VDb2RlLmNyZWF0ZVNvdXJj
ZU1hcHBpbmdJZk5lZWRlZChkaWRDcmVhdGVTb3VyY2VNYXBwaW5nKTsKLSAgICB9LAotCiAgICAg
bGlua2lmeUxvY2F0aW9uOiBmdW5jdGlvbihzb3VyY2VVUkwsIGxpbmVOdW1iZXIsIGNvbHVtbk51
bWJlciwgY2xhc3NlcykKICAgICB7CiAgICAgICAgIHZhciBsaW5rVGV4dCA9IFdlYkluc3BlY3Rv
ci5mb3JtYXRMaW5rVGV4dChzb3VyY2VVUkwsIGxpbmVOdW1iZXIpOwpAQCAtMTEwLDE2ICs4MCwx
NCBAQCBXZWJJbnNwZWN0b3IuRGVidWdnZXJQcmVzZW50YXRpb25Nb2RlbC5wcm90b3R5cGUgPSB7
CiAKICAgICAgICAgZnVuY3Rpb24gdXBkYXRlQW5jaG9yKCkKICAgICAgICAgewotICAgICAgICAg
ICAgZnVuY3Rpb24gZGlkR2V0TG9jYXRpb24odWlTb3VyY2VDb2RlLCBsaW5lTnVtYmVyKQotICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIGFuY2hvci50ZXh0Q29udGVudCA9IFdlYkluc3Bl
Y3Rvci5mb3JtYXRMaW5rVGV4dCh1aVNvdXJjZUNvZGUudXJsLCBsaW5lTnVtYmVyKTsKLSAgICAg
ICAgICAgICAgICBhbmNob3Iuc2V0QXR0cmlidXRlKCJwcmVmZXJyZWRfcGFuZWwiLCAic2NyaXB0
cyIpOwotICAgICAgICAgICAgICAgIGFuY2hvci51aVNvdXJjZUNvZGUgPSB1aVNvdXJjZUNvZGU7
Ci0gICAgICAgICAgICAgICAgYW5jaG9yLmxpbmVOdW1iZXIgPSBsaW5lTnVtYmVyOwotICAgICAg
ICAgICAgfQotICAgICAgICAgICAgdGhpcy5fc2NyaXB0TG9jYXRpb25Ub1VJTG9jYXRpb24oc291
cmNlVVJMLCBudWxsLCBsaW5lTnVtYmVyLCBjb2x1bW5OdW1iZXIsIGRpZEdldExvY2F0aW9uLmJp
bmQodGhpcykpOworICAgICAgICAgICAgdmFyIHVpTG9jYXRpb24gPSByYXdTb3VyY2VDb2RlLnJh
d0xvY2F0aW9uVG9VSUxvY2F0aW9uKHsgbGluZU51bWJlcjogbGluZU51bWJlciwgY29sdW1uTnVt
YmVyOiBjb2x1bW5OdW1iZXIgfSk7CisgICAgICAgICAgICBhbmNob3IudGV4dENvbnRlbnQgPSBX
ZWJJbnNwZWN0b3IuZm9ybWF0TGlua1RleHQodWlMb2NhdGlvbi51aVNvdXJjZUNvZGUudXJsLCB1
aUxvY2F0aW9uLmxpbmVOdW1iZXIpOworICAgICAgICAgICAgYW5jaG9yLnNldEF0dHJpYnV0ZSgi
cHJlZmVycmVkX3BhbmVsIiwgInNjcmlwdHMiKTsKKyAgICAgICAgICAgIGFuY2hvci51aVNvdXJj
ZUNvZGUgPSB1aUxvY2F0aW9uLnVpU291cmNlQ29kZTsKKyAgICAgICAgICAgIGFuY2hvci5saW5l
TnVtYmVyID0gdWlMb2NhdGlvbi5saW5lTnVtYmVyOwogICAgICAgICB9Ci0gICAgICAgIHVwZGF0
ZUFuY2hvci5jYWxsKHRoaXMpOworICAgICAgICBpZiAocmF3U291cmNlQ29kZS51aVNvdXJjZUNv
ZGUpCisgICAgICAgICAgICB1cGRhdGVBbmNob3IuY2FsbCh0aGlzKTsKICAgICAgICAgcmF3U291
cmNlQ29kZS5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5SYXdTb3VyY2VDb2RlLkV2ZW50
cy5Tb3VyY2VNYXBwaW5nVXBkYXRlZCwgdXBkYXRlQW5jaG9yLCB0aGlzKTsKICAgICAgICAgcmV0
dXJuIGFuY2hvcjsKICAgICB9LApAQCAtMTY0LDI1ICsxMzIsNDEgQEAgV2ViSW5zcGVjdG9yLkRl
YnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwucHJvdG90eXBlID0gewogICAgIHsKICAgICAgICAgdmFy
IHVpU291cmNlQ29kZSA9IHJhd1NvdXJjZUNvZGUudWlTb3VyY2VDb2RlOwogCi0gICAgICAgIGlm
ICghb2xkVUlTb3VyY2VDb2RlKQotICAgICAgICAgICAgdGhpcy5kaXNwYXRjaEV2ZW50VG9MaXN0
ZW5lcnMoV2ViSW5zcGVjdG9yLkRlYnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwuRXZlbnRzLlVJU291
cmNlQ29kZUFkZGVkLCB1aVNvdXJjZUNvZGUpOwotICAgICAgICBlbHNlIHsKKyAgICAgICAgaWYg
KG9sZFVJU291cmNlQ29kZSkgewogICAgICAgICAgICAgdmFyIGJyZWFrcG9pbnRzID0gdGhpcy5f
YnJlYWtwb2ludE1hbmFnZXIuYnJlYWtwb2ludHNGb3JVSVNvdXJjZUNvZGUob2xkVUlTb3VyY2VD
b2RlKTsKICAgICAgICAgICAgIGZvciAodmFyIGxpbmVOdW1iZXIgaW4gYnJlYWtwb2ludHMpIHsK
ICAgICAgICAgICAgICAgICB2YXIgYnJlYWtwb2ludCA9IGJyZWFrcG9pbnRzW2xpbmVOdW1iZXJd
OwogICAgICAgICAgICAgICAgIHRoaXMuX2JyZWFrcG9pbnRSZW1vdmVkKGJyZWFrcG9pbnQpOwog
ICAgICAgICAgICAgICAgIGRlbGV0ZSBicmVha3BvaW50LnVpU291cmNlQ29kZTsKICAgICAgICAg
ICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIHRoaXMuX3Jlc3RvcmVCcmVha3BvaW50cyh1aVNv
dXJjZUNvZGUpOworICAgICAgICB0aGlzLl9yZXN0b3JlQ29uc29sZU1lc3NhZ2VzKHVpU291cmNl
Q29kZSk7CisKKyAgICAgICAgaWYgKCFvbGRVSVNvdXJjZUNvZGUpCisgICAgICAgICAgICB0aGlz
LmRpc3BhdGNoRXZlbnRUb0xpc3RlbmVycyhXZWJJbnNwZWN0b3IuRGVidWdnZXJQcmVzZW50YXRp
b25Nb2RlbC5FdmVudHMuVUlTb3VyY2VDb2RlQWRkZWQsIHVpU291cmNlQ29kZSk7CisgICAgICAg
IGVsc2UgewogICAgICAgICAgICAgdmFyIGV2ZW50RGF0YSA9IHsgdWlTb3VyY2VDb2RlOiB1aVNv
dXJjZUNvZGUsIG9sZFVJU291cmNlQ29kZTogb2xkVUlTb3VyY2VDb2RlIH07CiAgICAgICAgICAg
ICB0aGlzLmRpc3BhdGNoRXZlbnRUb0xpc3RlbmVycyhXZWJJbnNwZWN0b3IuRGVidWdnZXJQcmVz
ZW50YXRpb25Nb2RlbC5FdmVudHMuVUlTb3VyY2VDb2RlUmVwbGFjZWQsIGV2ZW50RGF0YSk7CiAg
ICAgICAgIH0KKyAgICB9LAogCisgICAgX3Jlc3RvcmVCcmVha3BvaW50czogZnVuY3Rpb24odWlT
b3VyY2VDb2RlKQorICAgIHsKICAgICAgICAgdGhpcy5fYnJlYWtwb2ludE1hbmFnZXIudWlTb3Vy
Y2VDb2RlQWRkZWQodWlTb3VyY2VDb2RlKTsKICAgICAgICAgdmFyIGJyZWFrcG9pbnRzID0gdGhp
cy5fYnJlYWtwb2ludE1hbmFnZXIuYnJlYWtwb2ludHNGb3JVSVNvdXJjZUNvZGUodWlTb3VyY2VD
b2RlKTsKICAgICAgICAgZm9yICh2YXIgbGluZU51bWJlciBpbiBicmVha3BvaW50cykKICAgICAg
ICAgICAgIHRoaXMuX2JyZWFrcG9pbnRBZGRlZChicmVha3BvaW50c1tsaW5lTnVtYmVyXSk7CiAg
ICAgfSwKIAorICAgIF9yZXN0b3JlQ29uc29sZU1lc3NhZ2VzOiBmdW5jdGlvbih1aVNvdXJjZUNv
ZGUpCisgICAgeworICAgICAgICB2YXIgbWVzc2FnZXMgPSB1aVNvdXJjZUNvZGUucmF3U291cmNl
Q29kZS5tZXNzYWdlczsKKyAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBtZXNzYWdlcy5sZW5n
dGg7ICsraSkKKyAgICAgICAgICAgIG1lc3NhZ2VzW2ldLl9wcmVzZW50YXRpb25NZXNzYWdlID0g
dGhpcy5fY3JlYXRlUHJlc2VudGF0aW9uTWVzc2FnZShtZXNzYWdlc1tpXSwgdWlTb3VyY2VDb2Rl
KTsKKyAgICB9LAorCiAgICAgY2FuRWRpdFNjcmlwdFNvdXJjZTogZnVuY3Rpb24odWlTb3VyY2VD
b2RlKQogICAgIHsKICAgICAgICAgaWYgKCFQcmVmZXJlbmNlcy5jYW5FZGl0U2NyaXB0U291cmNl
IHx8IHRoaXMuX2Zvcm1hdFNvdXJjZSkKQEAgLTI1OSwxMSArMjQzLDYgQEAgV2ViSW5zcGVjdG9y
LkRlYnVnZ2VyUHJlc2VudGF0aW9uTW9kZWwucHJvdG90eXBlID0gewogICAgICAgICAgICAgdGhp
cy5fcmF3U291cmNlQ29kZVtpZF0uc2V0Rm9ybWF0dGVkKHRoaXMuX2Zvcm1hdFNvdXJjZSk7CiAg
ICAgICAgIH0KIAotICAgICAgICB2YXIgbWVzc2FnZXMgPSB0aGlzLl9tZXNzYWdlczsKLSAgICAg
ICAgdGhpcy5fbWVzc2FnZXMgPSBbXTsKLSAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBtZXNz
YWdlcy5sZW5ndGg7ICsraSkKLSAgICAgICAgICAgIHRoaXMuX2FkZENvbnNvbGVNZXNzYWdlKG1l
c3NhZ2VzW2ldKTsKLQogICAgICAgICBpZiAoV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTW9kZWwuY2Fs
bEZyYW1lcykKICAgICAgICAgICAgIHRoaXMuX2RlYnVnZ2VyUGF1c2VkKCk7CiAgICAgfSwKQEAg
LTI3MSwzNiArMjUwLDM1IEBAIFdlYkluc3BlY3Rvci5EZWJ1Z2dlclByZXNlbnRhdGlvbk1vZGVs
LnByb3RvdHlwZSA9IHsKICAgICBfY29uc29sZU1lc3NhZ2VBZGRlZDogZnVuY3Rpb24oZXZlbnQp
CiAgICAgewogICAgICAgICB2YXIgbWVzc2FnZSA9IGV2ZW50LmRhdGE7Ci0gICAgICAgIGlmICht
ZXNzYWdlLnVybCAmJiBtZXNzYWdlLmlzRXJyb3JPcldhcm5pbmcoKSAmJiBtZXNzYWdlLm1lc3Nh
Z2UpCi0gICAgICAgICAgICB0aGlzLl9hZGRDb25zb2xlTWVzc2FnZShtZXNzYWdlKTsKLSAgICB9
LAotCi0gICAgX2FkZENvbnNvbGVNZXNzYWdlOiBmdW5jdGlvbihtZXNzYWdlKQotICAgIHsKLSAg
ICAgICAgdGhpcy5fbWVzc2FnZXMucHVzaChtZXNzYWdlKTsKKyAgICAgICAgaWYgKCFtZXNzYWdl
LnVybCB8fCAhbWVzc2FnZS5pc0Vycm9yT3JXYXJuaW5nKCkgfHwgIW1lc3NhZ2UubWVzc2FnZSkK
KyAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICB2YXIgcmF3U291cmNlQ29kZSA9IHRoaXMu
X3Jhd1NvdXJjZUNvZGVGb3JTY3JpcHQobWVzc2FnZS51cmwpOwogICAgICAgICBpZiAoIXJhd1Nv
dXJjZUNvZGUpCiAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAgZnVuY3Rpb24gZGlkR2V0
VUlMb2NhdGlvbih1aVNvdXJjZUNvZGUsIGxpbmVOdW1iZXIpCi0gICAgICAgIHsKLSAgICAgICAg
ICAgIHZhciBwcmVzZW50YXRpb25NZXNzYWdlID0ge307Ci0gICAgICAgICAgICBwcmVzZW50YXRp
b25NZXNzYWdlLnVpU291cmNlQ29kZSA9IHVpU291cmNlQ29kZTsKLSAgICAgICAgICAgIHByZXNl
bnRhdGlvbk1lc3NhZ2UubGluZU51bWJlciA9IGxpbmVOdW1iZXI7Ci0gICAgICAgICAgICBwcmVz
ZW50YXRpb25NZXNzYWdlLm9yaWdpbmFsTWVzc2FnZSA9IG1lc3NhZ2U7Ci0gICAgICAgICAgICBy
YXdTb3VyY2VDb2RlLm1lc3NhZ2VzLnB1c2gocHJlc2VudGF0aW9uTWVzc2FnZSk7Ci0gICAgICAg
ICAgICB0aGlzLmRpc3BhdGNoRXZlbnRUb0xpc3RlbmVycyhXZWJJbnNwZWN0b3IuRGVidWdnZXJQ
cmVzZW50YXRpb25Nb2RlbC5FdmVudHMuQ29uc29sZU1lc3NhZ2VBZGRlZCwgcHJlc2VudGF0aW9u
TWVzc2FnZSk7CisgICAgICAgIHJhd1NvdXJjZUNvZGUubWVzc2FnZXMucHVzaChtZXNzYWdlKTsK
KyAgICAgICAgaWYgKHJhd1NvdXJjZUNvZGUudWlTb3VyY2VDb2RlKSB7CisgICAgICAgICAgICBt
ZXNzYWdlLl9wcmVzZW50YXRpb25NZXNzYWdlID0gdGhpcy5fY3JlYXRlUHJlc2VudGF0aW9uTWVz
c2FnZShtZXNzYWdlLCByYXdTb3VyY2VDb2RlLnVpU291cmNlQ29kZSk7CisgICAgICAgICAgICB0
aGlzLmRpc3BhdGNoRXZlbnRUb0xpc3RlbmVycyhXZWJJbnNwZWN0b3IuRGVidWdnZXJQcmVzZW50
YXRpb25Nb2RlbC5FdmVudHMuQ29uc29sZU1lc3NhZ2VBZGRlZCwgbWVzc2FnZS5fcHJlc2VudGF0
aW9uTWVzc2FnZSk7CiAgICAgICAgIH0KKyAgICB9LAorCisgICAgX2NyZWF0ZVByZXNlbnRhdGlv
bk1lc3NhZ2U6IGZ1bmN0aW9uKG1lc3NhZ2UsIHVpU291cmNlQ29kZSkKKyAgICB7CiAgICAgICAg
IC8vIEZJWE1FKDYyNzI1KTogc3RhY2sgdHJhY2UgbGluZS9jb2x1bW4gbnVtYmVycyBhcmUgb25l
LWJhc2VkLgogICAgICAgICB2YXIgbGluZU51bWJlciA9IG1lc3NhZ2Uuc3RhY2tUcmFjZSA/IG1l
c3NhZ2Uuc3RhY2tUcmFjZVswXS5saW5lTnVtYmVyIC0gMSA6IG1lc3NhZ2UubGluZSAtIDE7CiAg
ICAgICAgIHZhciBjb2x1bW5OdW1iZXIgPSBtZXNzYWdlLnN0YWNrVHJhY2UgPyBtZXNzYWdlLnN0
YWNrVHJhY2VbMF0uY29sdW1uTnVtYmVyIC0gMSA6IDA7Ci0gICAgICAgIHRoaXMuX3NjcmlwdExv
Y2F0aW9uVG9VSUxvY2F0aW9uKG1lc3NhZ2UudXJsLCBudWxsLCBsaW5lTnVtYmVyLCBjb2x1bW5O
dW1iZXIsIGRpZEdldFVJTG9jYXRpb24uYmluZCh0aGlzKSk7CisgICAgICAgIHZhciB1aUxvY2F0
aW9uID0gdWlTb3VyY2VDb2RlLnJhd1NvdXJjZUNvZGUucmF3TG9jYXRpb25Ub1VJTG9jYXRpb24o
eyBsaW5lTnVtYmVyOiBsaW5lTnVtYmVyLCBjb2x1bW5OdW1iZXI6IGNvbHVtbk51bWJlciB9KTsK
KyAgICAgICAgdmFyIHByZXNlbnRhdGlvbk1lc3NhZ2UgPSB7fTsKKyAgICAgICAgcHJlc2VudGF0
aW9uTWVzc2FnZS51aVNvdXJjZUNvZGUgPSB1aUxvY2F0aW9uLnVpU291cmNlQ29kZTsKKyAgICAg
ICAgcHJlc2VudGF0aW9uTWVzc2FnZS5saW5lTnVtYmVyID0gdWlMb2NhdGlvbi5saW5lTnVtYmVy
OworICAgICAgICBwcmVzZW50YXRpb25NZXNzYWdlLm9yaWdpbmFsTWVzc2FnZSA9IG1lc3NhZ2U7
CisgICAgICAgIHJldHVybiBwcmVzZW50YXRpb25NZXNzYWdlOwogICAgIH0sCiAKICAgICBfY29u
c29sZUNsZWFyZWQ6IGZ1bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIHRoaXMuX21lc3NhZ2VzID0g
W107CiAgICAgICAgIGZvciAodmFyIGlkIGluIHRoaXMuX3Jhd1NvdXJjZUNvZGUpCiAgICAgICAg
ICAgICB0aGlzLl9yYXdTb3VyY2VDb2RlW2lkXS5tZXNzYWdlcyA9IFtdOwogICAgICAgICB0aGlz
LmRpc3BhdGNoRXZlbnRUb0xpc3RlbmVycyhXZWJJbnNwZWN0b3IuRGVidWdnZXJQcmVzZW50YXRp
b25Nb2RlbC5FdmVudHMuQ29uc29sZU1lc3NhZ2VzQ2xlYXJlZCk7CkBAIC0zMDgsMTEgKzI4Niw4
IEBAIFdlYkluc3BlY3Rvci5EZWJ1Z2dlclByZXNlbnRhdGlvbk1vZGVsLnByb3RvdHlwZSA9IHsK
IAogICAgIGNvbnRpbnVlVG9MaW5lOiBmdW5jdGlvbih1aVNvdXJjZUNvZGUsIGxpbmVOdW1iZXIp
CiAgICAgewotICAgICAgICBmdW5jdGlvbiBkaWRHZXRTY3JpcHRMb2NhdGlvbihsb2NhdGlvbikK
LSAgICAgICAgewotICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTW9kZWwuY29udGlu
dWVUb0xvY2F0aW9uKGxvY2F0aW9uKTsKLSAgICAgICAgfQotICAgICAgICB0aGlzLl91aUxvY2F0
aW9uVG9TY3JpcHRMb2NhdGlvbih1aVNvdXJjZUNvZGUsIGxpbmVOdW1iZXIsIGRpZEdldFNjcmlw
dExvY2F0aW9uKTsKKyAgICAgICAgdmFyIHJhd0xvY2F0aW9uID0gdWlTb3VyY2VDb2RlLnJhd1Nv
dXJjZUNvZGUudWlMb2NhdGlvblRvUmF3TG9jYXRpb24obGluZU51bWJlciwgMCk7CisgICAgICAg
IFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1vZGVsLmNvbnRpbnVlVG9Mb2NhdGlvbihyYXdMb2NhdGlv
bik7CiAgICAgfSwKIAogICAgIGJyZWFrcG9pbnRzRm9yVUlTb3VyY2VDb2RlOiBmdW5jdGlvbih1
aVNvdXJjZUNvZGUpCkBAIC0zMjcsNyArMzAyLDEwIEBAIFdlYkluc3BlY3Rvci5EZWJ1Z2dlclBy
ZXNlbnRhdGlvbk1vZGVsLnByb3RvdHlwZSA9IHsKICAgICBtZXNzYWdlc0ZvclVJU291cmNlQ29k
ZTogZnVuY3Rpb24odWlTb3VyY2VDb2RlKQogICAgIHsKICAgICAgICAgdmFyIHJhd1NvdXJjZUNv
ZGUgPSB1aVNvdXJjZUNvZGUucmF3U291cmNlQ29kZTsKLSAgICAgICAgcmV0dXJuIHJhd1NvdXJj
ZUNvZGUubWVzc2FnZXM7CisgICAgICAgIHZhciBtZXNzYWdlcyA9IFtdOworICAgICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IHJhd1NvdXJjZUNvZGUubWVzc2FnZXMubGVuZ3RoOyArK2kpCisgICAg
ICAgICAgICBtZXNzYWdlcy5wdXNoKHJhd1NvdXJjZUNvZGUubWVzc2FnZXNbaV0uX3ByZXNlbnRh
dGlvbk1lc3NhZ2UpOworICAgICAgICByZXR1cm4gbWVzc2FnZXM7CiAgICAgfSwKIAogICAgIHNl
dEJyZWFrcG9pbnQ6IGZ1bmN0aW9uKHVpU291cmNlQ29kZSwgbGluZU51bWJlciwgY29uZGl0aW9u
LCBlbmFibGVkKQpAQCAtNDM3LDcgKzQxNSw2IEBAIFdlYkluc3BlY3Rvci5EZWJ1Z2dlclByZXNl
bnRhdGlvbk1vZGVsLnByb3RvdHlwZSA9IHsKICAgICBfZGVidWdnZXJSZXNldDogZnVuY3Rpb24o
KQogICAgIHsKICAgICAgICAgdGhpcy5fcmF3U291cmNlQ29kZSA9IHt9OwotICAgICAgICB0aGlz
Ll9tZXNzYWdlcyA9IFtdOwogICAgICAgICB0aGlzLl9wcmVzZW50YXRpb25DYWxsRnJhbWVzID0g
W107CiAgICAgICAgIHRoaXMuX3NlbGVjdGVkQ2FsbEZyYW1lSW5kZXggPSAwOwogICAgICAgICB0
aGlzLl9icmVha3BvaW50TWFuYWdlci5kZWJ1Z2dlclJlc2V0KCk7CkBAIC01MjEsMTEgKzQ5OCwy
NSBAQCBXZWJJbnNwZWN0b3IuUHJlc2VudGF0aW9uQ2FsbEZyYW1lLnByb3RvdHlwZSA9IHsKIAog
ICAgIHNvdXJjZUxpbmU6IGZ1bmN0aW9uKGNhbGxiYWNrKQogICAgIHsKLSAgICAgICAgdmFyIGxv
Y2F0aW9uID0gdGhpcy5fY2FsbEZyYW1lLmxvY2F0aW9uOwotICAgICAgICBpZiAoIXRoaXMuaXNJ
bnRlcm5hbFNjcmlwdCkKLSAgICAgICAgICAgIHRoaXMuX21vZGVsLl9zY3JpcHRMb2NhdGlvblRv
VUlMb2NhdGlvbihudWxsLCBsb2NhdGlvbi5zY3JpcHRJZCwgbG9jYXRpb24ubGluZU51bWJlciwg
bG9jYXRpb24uY29sdW1uTnVtYmVyLCBjYWxsYmFjayk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAg
ICAgIGNhbGxiYWNrKHVuZGVmaW5lZCwgbG9jYXRpb24ubGluZU51bWJlcik7CisgICAgICAgIHZh
ciByYXdMb2NhdGlvbiA9IHRoaXMuX2NhbGxGcmFtZS5sb2NhdGlvbjsKKyAgICAgICAgaWYgKCF0
aGlzLl9yYXdTb3VyY2VDb2RlKSB7CisgICAgICAgICAgICBjYWxsYmFjayh1bmRlZmluZWQsIHJh
d0xvY2F0aW9uLmxpbmVOdW1iZXIpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisK
KyAgICAgICAgaWYgKHRoaXMuX3Jhd1NvdXJjZUNvZGUudWlTb3VyY2VDb2RlKSB7CisgICAgICAg
ICAgICB2YXIgdWlMb2NhdGlvbiA9IHRoaXMuX3Jhd1NvdXJjZUNvZGUucmF3TG9jYXRpb25Ub1VJ
TG9jYXRpb24ocmF3TG9jYXRpb24pOworICAgICAgICAgICAgY2FsbGJhY2sodWlMb2NhdGlvbi51
aVNvdXJjZUNvZGUsIHVpTG9jYXRpb24ubGluZU51bWJlcik7CisgICAgICAgICAgICByZXR1cm47
CisgICAgICAgIH0KKworICAgICAgICBmdW5jdGlvbiBzb3VyY2VNYXBwaW5nVXBkYXRlZCgpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIHRoaXMuX3Jhd1NvdXJjZUNvZGUucmVtb3ZlRXZlbnRMaXN0
ZW5lcihXZWJJbnNwZWN0b3IuUmF3U291cmNlQ29kZS5FdmVudHMuU291cmNlTWFwcGluZ1VwZGF0
ZWQsIHNvdXJjZU1hcHBpbmdVcGRhdGVkLCB0aGlzKTsKKyAgICAgICAgICAgIHZhciB1aUxvY2F0
aW9uID0gdGhpcy5fcmF3U291cmNlQ29kZS5yYXdMb2NhdGlvblRvVUlMb2NhdGlvbihyYXdMb2Nh
dGlvbik7CisgICAgICAgICAgICBjYWxsYmFjayh1aUxvY2F0aW9uLnVpU291cmNlQ29kZSwgdWlM
b2NhdGlvbi5saW5lTnVtYmVyKTsKKyAgICAgICAgfQorICAgICAgICB0aGlzLl9yYXdTb3VyY2VD
b2RlLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLlJhd1NvdXJjZUNvZGUuRXZlbnRzLlNv
dXJjZU1hcHBpbmdVcGRhdGVkLCBzb3VyY2VNYXBwaW5nVXBkYXRlZCwgdGhpcyk7CiAgICAgfQog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NvdXJj
ZUZpbGUuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NvdXJjZUZpbGUu
anMKaW5kZXggODUwNjRmMWJiNDBiMmI3YmIzMjlmMGViYjdmOWVkYzc5YjVmZTIwMy4uYzgxMjBm
NjIxMzI0OWRjOGY0NzA1OWM0NDA0NjQ1YThhNTAzNjU0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Tb3VyY2VGaWxlLmpzCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU291cmNlRmlsZS5qcwpAQCAtMTE4LDIyICsxMTgsNiBA
QCBXZWJJbnNwZWN0b3IuUmF3U291cmNlQ29kZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVy
biBjbG9zZXN0U2NyaXB0OwogICAgIH0sCiAKLSAgICBjcmVhdGVTb3VyY2VNYXBwaW5nSWZOZWVk
ZWQ6IGZ1bmN0aW9uKGNhbGxiYWNrKQotICAgIHsKLSAgICAgICAgLy8gRklYTUU6IHJlbW92ZSBj
cmVhdGVTb3VyY2VNYXBwaW5nSWZOZWVkZWQsIGNsaWVudCBzaG91bGQgbGlzdGVuIHRvIFNvdXJj
ZU1hcHBpbmdVcGRhdGVkIGV2ZW50IGluc3RlYWQuCi0gICAgICAgIGlmICh0aGlzLl91aVNvdXJj
ZUNvZGUgJiYgIXRoaXMuX3VwZGF0aW5nU291cmNlTWFwcGluZykgewotICAgICAgICAgICAgY2Fs
bGJhY2soKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQotCi0gICAgICAgIGZ1bmN0
aW9uIHNvdXJjZU1hcHBpbmdVcGRhdGVkKCkKLSAgICAgICAgewotICAgICAgICAgICAgdGhpcy5y
ZW1vdmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5SYXdTb3VyY2VDb2RlLkV2ZW50cy5Tb3Vy
Y2VNYXBwaW5nVXBkYXRlZCwgc291cmNlTWFwcGluZ1VwZGF0ZWQsIHRoaXMpOwotICAgICAgICAg
ICAgY2FsbGJhY2soKTsKLSAgICAgICAgfQotICAgICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIo
V2ViSW5zcGVjdG9yLlJhd1NvdXJjZUNvZGUuRXZlbnRzLlNvdXJjZU1hcHBpbmdVcGRhdGVkLCBz
b3VyY2VNYXBwaW5nVXBkYXRlZCwgdGhpcyk7Ci0gICAgfSwKLQogICAgIGZvcmNlVXBkYXRlU291
cmNlTWFwcGluZzogZnVuY3Rpb24oc2NyaXB0KQogICAgIHsKICAgICAgICAgaWYgKCF0aGlzLl91
c2VUZW1wb3JhcnlDb250ZW50IHx8ICF0aGlzLl9oYXNOZXdTY3JpcHRzKQo=
</data>
<flag name="review"
          id="103064"
          type_id="1"
          status="+"
          setter="yurys"
    />
          </attachment>
      

    </bug>

</bugzilla>