<?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>50087</bug_id>
          
          <creation_ts>2010-11-25 09:01:21 -0800</creation_ts>
          <short_desc>IDBFactory::open should not have a description argument.</short_desc>
          <delta_ts>2010-11-26 03:35:38 -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>WebKit Misc.</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="Andrei Popescu">andreip</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>hans</cc>
    
    <cc>jorlow</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>313794</commentid>
    <comment_count>0</comment_count>
    <who name="Andrei Popescu">andreip</who>
    <bug_when>2010-11-25 09:01:21 -0800</bug_when>
    <thetext>This argument was removed from the Indexed Database specification.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313798</commentid>
    <comment_count>1</comment_count>
      <attachid>74885</attachid>
    <who name="Andrei Popescu">andreip</who>
    <bug_when>2010-11-25 09:16:20 -0800</bug_when>
    <thetext>Created attachment 74885
Remove description argument of IDBFactory::open()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313807</commentid>
    <comment_count>2</comment_count>
      <attachid>74885</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-11-25 09:46:39 -0800</bug_when>
    <thetext>Comment on attachment 74885
Remove description argument of IDBFactory::open()

r=me

Please reset the expected results though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313936</commentid>
    <comment_count>3</comment_count>
    <who name="Andrei Popescu">andreip</who>
    <bug_when>2010-11-26 03:05:10 -0800</bug_when>
    <thetext>Committed r72753</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313943</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-11-26 03:35:38 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/72753 might have broken GTK Linux 64-bit Debug
The following tests are not passing:
editing/selection/extend-by-character-002.html</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>74885</attachid>
            <date>2010-11-25 09:16:20 -0800</date>
            <delta_ts>2010-11-25 09:46:38 -0800</delta_ts>
            <desc>Remove description argument of IDBFactory::open()</desc>
            <filename>desc.patch</filename>
            <type>text/plain</type>
            <size>33628</size>
            <attacher name="Andrei Popescu">andreip</attacher>
            
              <data encoding="base64">Y29tbWl0IDgxYzZkODZkMWQzZTUzNDVlYTc2MGJkZDkyOWI3ZWIzYWJmZGJkYWEKQXV0aG9yOiBB
bmRyZWkgUG9wZXNjdSA8YW5kcmVpcEBnb29nbGUuY29tPgpEYXRlOiAgIFRodSBOb3YgMjUgMTY6
NTc6MjcgMjAxMCArMDAwMAoKICAgIFJlbW92ZSBkZXNjcmlwdGlvbgoKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzZWMyZDA4
Li5jN2FhNjM2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMTAtMTEtMjUgIEFuZHJlaSBQb3Bl
c2N1ICA8YW5kcmVpcEBnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIElEQkZhY3Rvcnk6Om9wZW4gc2hvdWxkIG5vdCBoYXZlIGEgZGVz
Y3JpcHRpb24gYXJndW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD01MDA4NworCisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvYmFzaWNzLWV4
cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9iYXNpY3MuaHRtbDoKKyAg
ICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9jcmVhdGVBbmRSZW1vdmVPYmplY3RTdG9yZS5odG1s
OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLWJhc2ljcy5odG1sOgorICAg
ICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXF1b3RhLmh0bWw6CisgICAgICAgICog
c3RvcmFnZS9pbmRleGVkZGIvZHVwbGljYXRlcy5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5k
ZXhlZGRiL2luZGV4LWJhc2ljcy5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2lu
ZGV4LWN1cnNvci5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3Jl
LWJhc2ljcy5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLWN1
cnNvci5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLXJlbW92
ZW9iamVjdHN0b3JlLmh0bWw6CisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvb3Blbi1jdXJz
b3IuaHRtbDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9xdWV1ZWQtY29tbWFuZHMuaHRt
bDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1iYXNpY3MuaHRtbDoK
KyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi90dXRvcmlhbC5odG1sOgorCiAyMDEwLTExLTI1
ICBJbHlhIFRpa2hvbm92c2t5ICA8bG9pc2xvQGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJl
dmlld2VkLiBFbmFibGUgdGVzdHMgaW4gY2hyb21pdW0uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9zdG9yYWdlL2luZGV4ZWRkYi9iYXNpY3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3Rv
cmFnZS9pbmRleGVkZGIvYmFzaWNzLWV4cGVjdGVkLnR4dAppbmRleCBiN2I4Yjk0Li5mN2M4ZTNm
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9iYXNpY3MtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2Jhc2ljcy1leHBlY3Rl
ZC50eHQKQEAgLTIyLDEyICsyMiw2IEBAIFBBU1MgJ29uZXJyb3InIGluIGV2ZW50LnRhcmdldCBp
cyB0cnVlCiBQQVNTICdyZWFkeVN0YXRlJyBpbiBldmVudC50YXJnZXQgaXMgdHJ1ZQogUEFTUyBl
dmVudC50YXJnZXQucmVhZHlTdGF0ZSBpcyBldmVudC50YXJnZXQuRE9ORQogCi13ZWJraXRJbmRl
eGVkREIub3BlbignbmFtZScpOwotUEFTUyBFeGNlcHRpb24gdGhyb3duLgotd2Via2l0SW5kZXhl
ZERCLm9wZW4oJ25hbWUnLCBudWxsKTsKLVBBU1MgRXhjZXB0aW9uIHRocm93bi4KLXdlYmtpdElu
ZGV4ZWREQi5vcGVuKCduYW1lJywgdW5kZWZpbmVkKTsKLVBBU1MgRXhjZXB0aW9uIHRocm93bi4K
IFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvYmFzaWNzLmh0bWwgYi9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9iYXNpY3MuaHRtbAppbmRleCAyZTM4MmIyLi4yNDE1MDcw
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9iYXNpY3MuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9iYXNpY3MuaHRtbApAQCAtMjEsNyAr
MjEsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKIAogICAgIC8vIEZJWE1FOiBWZXJpZnkgb3RoZXIgSW5k
ZXhlZERhdGFiYXNlUmVxdWVzdCBjb25zdHJ1Y3RvcnMsIG9uY2UgdGhleSdyZSBpbXBsZW1lbnRl
ZC4KIAotICAgIHJlc3VsdCA9IGV2YWxBbmRMb2coIndlYmtpdEluZGV4ZWREQi5vcGVuKCduYW1l
JywgJ2Rlc2NyaXB0aW9uJykiKTsKKyAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJ3ZWJraXRJbmRl
eGVkREIub3BlbignbmFtZScpIik7CiAgICAgdmVyaWZ5UmVzdWx0KHJlc3VsdCk7CiAgICAgcmVz
dWx0Lm9uc3VjY2VzcyA9IG9wZW5DYWxsYmFjazsKICAgICByZXN1bHQub25lcnJvciA9IHVuZXhw
ZWN0ZWRFcnJvckNhbGxiYWNrOw0KQEAgLTMwLDI3ICszMCw2IEBAIGZ1bmN0aW9uIHRlc3QoKQog
ZnVuY3Rpb24gb3BlbkNhbGxiYWNrKCkNCiB7DQogICAgIHZlcmlmeVN1Y2Nlc3NFdmVudChldmVu
dCk7DQotICAgIHRyeSB7DQotICAgICAgICBkZWJ1Zygid2Via2l0SW5kZXhlZERCLm9wZW4oJ25h
bWUnKTsiKTsNCi0gICAgICAgIHdlYmtpdEluZGV4ZWREQi5vcGVuKCduYW1lJyk7DQotICAgICAg
ICB0ZXN0RmFpbGVkKCJDYWxsaW5nIElEQkZhY3Rvcnk6Om9wZW4gd2l0aG91dCBhIGRlc2NyaXB0
aW9uIHNob3VsZCBoYXZlIHRocm93bi4iKTsNCi0gICAgfSBjYXRjaCAoZXJyKSB7DQotICAgICAg
ICB0ZXN0UGFzc2VkKCJFeGNlcHRpb24gdGhyb3duLiIpOw0KLSAgICB9DQotICAgIHRyeSB7DQot
ICAgICAgICBkZWJ1Zygid2Via2l0SW5kZXhlZERCLm9wZW4oJ25hbWUnLCBudWxsKTsiKTsNCi0g
ICAgICAgIHdlYmtpdEluZGV4ZWREQi5vcGVuKCduYW1lJywgbnVsbCk7DQotICAgICAgICB0ZXN0
RmFpbGVkKCJDYWxsaW5nIElEQkZhY3Rvcnk6Om9wZW4gd2l0aCBhIG51bGwgZGVzY3JpcHRpb24g
c2hvdWxkIGhhdmUgdGhyb3duLiIpOw0KLSAgICB9IGNhdGNoIChlcnIpIHsNCi0gICAgICAgIHRl
c3RQYXNzZWQoIkV4Y2VwdGlvbiB0aHJvd24uIik7DQotICAgIH0NCi0gICAgdHJ5IHsNCi0gICAg
ICAgIGRlYnVnKCJ3ZWJraXRJbmRleGVkREIub3BlbignbmFtZScsIHVuZGVmaW5lZCk7Iik7DQot
ICAgICAgICB3ZWJraXRJbmRleGVkREIub3BlbignbmFtZScsIHVuZGVmaW5lZCk7DQotICAgICAg
ICB0ZXN0RmFpbGVkKCJDYWxsaW5nIElEQkZhY3Rvcnk6Om9wZW4gd2l0aCBhbiB1bmRlZmluZWQg
ZGVzY3JpcHRpb24gc2hvdWxkIGhhdmUgdGhyb3duLiIpOw0KLSAgICB9IGNhdGNoIChlcnIpIHsN
Ci0gICAgICAgIHRlc3RQYXNzZWQoIkV4Y2VwdGlvbiB0aHJvd24uIik7DQotICAgIH0NCiAgICAg
ZG9uZSgpOw0KIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIv
Y3JlYXRlQW5kUmVtb3ZlT2JqZWN0U3RvcmUuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5k
ZXhlZGRiL2NyZWF0ZUFuZFJlbW92ZU9iamVjdFN0b3JlLmh0bWwKaW5kZXggZTA1ZWE2ZS4uZGQy
NDY5NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvY3JlYXRlQW5k
UmVtb3ZlT2JqZWN0U3RvcmUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRk
Yi9jcmVhdGVBbmRSZW1vdmVPYmplY3RTdG9yZS5odG1sCkBAIC0xOSw3ICsxOSw3IEBAIGZ1bmN0
aW9uIHRlc3QoKQogICAgIHNob3VsZEJlVHJ1ZSgiJ3dlYmtpdEluZGV4ZWREQicgaW4gd2luZG93
Iik7CiAgICAgc2hvdWxkQmVGYWxzZSgid2Via2l0SW5kZXhlZERCID09IG51bGwiKTsKIAotICAg
IHJlc3VsdCA9IGV2YWxBbmRMb2coIndlYmtpdEluZGV4ZWREQi5vcGVuKCduYW1lJywgJ2Rlc2Ny
aXB0aW9uJykiKTsKKyAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJ3ZWJraXRJbmRleGVkREIub3Bl
bignbmFtZScpIik7CiAgICAgdmVyaWZ5UmVzdWx0KHJlc3VsdCk7CiAgICAgcmVzdWx0Lm9uc3Vj
Y2VzcyA9IG9wZW5TdWNjZXNzOwogICAgIHJlc3VsdC5vbmVycm9yID0gdW5leHBlY3RlZEVycm9y
Q2FsbGJhY2s7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRh
YmFzZS1iYXNpY3MuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNl
LWJhc2ljcy5odG1sCmluZGV4IDMxYzg4N2IuLmJiMzI1NmMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLWJhc2ljcy5odG1sCisrKyBiL0xheW91dFRl
c3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLWJhc2ljcy5odG1sCkBAIC0xNiw3ICsxNiw3
IEBAIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCiAKIGZ1bmN0aW9uIHRlc3QoKQog
ewotICAgIHJlc3VsdCA9IGV2YWxBbmRMb2coIndlYmtpdEluZGV4ZWREQi5vcGVuKCduYW1lJywg
J2Rlc2NyaXB0aW9uJykiKTsKKyAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJ3ZWJraXRJbmRleGVk
REIub3BlbignbmFtZScpIik7CiAgICAgdmVyaWZ5UmVzdWx0KHJlc3VsdCk7CiAgICAgcmVzdWx0
Lm9uc3VjY2VzcyA9IG9wZW5TdWNjZXNzOwogICAgIHJlc3VsdC5vbmVycm9yID0gdW5leHBlY3Rl
ZEVycm9yQ2FsbGJhY2s7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRk
Yi9kYXRhYmFzZS1xdW90YS5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGF0
YWJhc2UtcXVvdGEuaHRtbAppbmRleCBhZWZlNmIxLi5lYjljMzJlIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS1xdW90YS5odG1sCisrKyBiL0xheW91
dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXF1b3RhLmh0bWwKQEAgLTE2LDcgKzE2
LDcgQEAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKIAogZnVuY3Rpb24gdGVzdCgp
CiB7Ci0gICAgcmVzdWx0ID0gZXZhbEFuZExvZygid2Via2l0SW5kZXhlZERCLm9wZW4oJ25hbWUn
LCAnZGVzY3JpcHRpb24nKSIpOworICAgIHJlc3VsdCA9IGV2YWxBbmRMb2coIndlYmtpdEluZGV4
ZWREQi5vcGVuKCduYW1lJykiKTsKICAgICB2ZXJpZnlSZXN1bHQocmVzdWx0KTsKICAgICByZXN1
bHQub25zdWNjZXNzID0gb3BlblN1Y2Nlc3M7CiAgICAgcmVzdWx0Lm9uZXJyb3IgPSB1bmV4cGVj
dGVkRXJyb3JDYWxsYmFjazsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhl
ZGRiL2R1cGxpY2F0ZXMuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2R1cGxp
Y2F0ZXMuaHRtbAppbmRleCA3MGNmOGM0Li4zNTIzNjdmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9zdG9yYWdlL2luZGV4ZWRkYi9kdXBsaWNhdGVzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvc3Rv
cmFnZS9pbmRleGVkZGIvZHVwbGljYXRlcy5odG1sCkBAIC0xOCw5ICsxOCw5IEBAIHRlc3RDb3Vu
dCA9IDA7CiBmdW5jdGlvbiB0ZXN0KCkKIHsKICAgICBpZiAodGVzdENvdW50KysgPT0gMCkKLSAg
ICAgICAgcmVzdWx0ID0gZXZhbEFuZExvZygid2Via2l0SW5kZXhlZERCLm9wZW4oJ25hbWUnLCAn
ZGVzY3JpcHRpb24nKSIpOworICAgICAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJ3ZWJraXRJbmRl
eGVkREIub3BlbignbmFtZScpIik7CiAgICAgZWxzZQotICAgICAgICByZXN1bHQgPSBldmFsQW5k
TG9nKCJ3ZWJraXRJbmRleGVkREIub3BlbignbmFtZTInLCAnZGVzY3JpcHRpb24yJykiKTsKKyAg
ICAgICAgcmVzdWx0ID0gZXZhbEFuZExvZygid2Via2l0SW5kZXhlZERCLm9wZW4oJ25hbWUyJyki
KTsKICAgICB2ZXJpZnlSZXN1bHQocmVzdWx0KTsKICAgICByZXN1bHQub25zdWNjZXNzID0gc2V0
VmVyc2lvbjsKICAgICByZXN1bHQub25lcnJvciA9IHVuZXhwZWN0ZWRFcnJvckNhbGxiYWNrOwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW5kZXgtYmFzaWNzLmh0
bWwgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbmRleC1iYXNpY3MuaHRtbAppbmRl
eCA3YTE2YzNhLi43OTA3MDcwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4
ZWRkYi9pbmRleC1iYXNpY3MuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRk
Yi9pbmRleC1iYXNpY3MuaHRtbApAQCAtMTYsNyArMTYsNyBAQCBpZiAod2luZG93LmxheW91dFRl
c3RDb250cm9sbGVyKQogCiBmdW5jdGlvbiB0ZXN0KCkKIHsKLSAgICByZXN1bHQgPSBldmFsQW5k
TG9nKCJ3ZWJraXRJbmRleGVkREIub3BlbignbmFtZScsICdkZXNjcmlwdGlvbicpIik7CisgICAg
cmVzdWx0ID0gZXZhbEFuZExvZygid2Via2l0SW5kZXhlZERCLm9wZW4oJ25hbWUnKSIpOwogICAg
IHZlcmlmeVJlc3VsdChyZXN1bHQpOwogICAgIHJlc3VsdC5vbnN1Y2Nlc3MgPSBzZXRWZXJzaW9u
OwogICAgIHJlc3VsdC5vbmVycm9yID0gdW5leHBlY3RlZEVycm9yQ2FsbGJhY2s7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbmRleC1jdXJzb3IuaHRtbCBiL0xh
eW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2luZGV4LWN1cnNvci5odG1sCmluZGV4IDI2ZWJj
YTIuLmM3YjYxZGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2lu
ZGV4LWN1cnNvci5odG1sCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2luZGV4
LWN1cnNvci5odG1sCkBAIC0yOSw3ICsyOSw3IEBAIHdpbmRvdy50ZXN0RGF0YSA9IFsKICAKIGZ1
bmN0aW9uIG9wZW5EYXRhYmFzZSgpCiB7Ci0gICAgcmVzdWx0ID0gZXZhbEFuZExvZygid2Via2l0
SW5kZXhlZERCLm9wZW4oJ3NvbWVEQicsICdzb21lIGRlc2NyaXB0aW9uJykiKTsKKyAgICByZXN1
bHQgPSBldmFsQW5kTG9nKCJ3ZWJraXRJbmRleGVkREIub3Blbignc29tZURCJykiKTsKICAgICB2
ZXJpZnlSZXN1bHQocmVzdWx0KTsKICAgICByZXN1bHQub25zdWNjZXNzID0gc2V0VmVyc2lvbjsK
ICAgICByZXN1bHQub25lcnJvciA9IHVuZXhwZWN0ZWRFcnJvckNhbGxiYWNrOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYmFzaWNzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1iYXNpY3MuaHRtbApp
bmRleCAwNTAxZjMwLi44NWE0OGE4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9vYmplY3RzdG9yZS1iYXNpY3MuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdl
L2luZGV4ZWRkYi9vYmplY3RzdG9yZS1iYXNpY3MuaHRtbApAQCAtMTYsNyArMTYsNyBAQCBpZiAo
d2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQogCiBmdW5jdGlvbiB0ZXN0KCkKIHsKLSAgICBy
ZXN1bHQgPSBldmFsQW5kTG9nKCJ3ZWJraXRJbmRleGVkREIub3BlbignbmFtZScsICdkZXNjcmlw
dGlvbicpIik7CisgICAgcmVzdWx0ID0gZXZhbEFuZExvZygid2Via2l0SW5kZXhlZERCLm9wZW4o
J25hbWUnKSIpOwogICAgIHZlcmlmeVJlc3VsdChyZXN1bHQpOwogICAgIHJlc3VsdC5vbnN1Y2Nl
c3MgPSBvcGVuU3VjY2VzczsKICAgICByZXN1bHQub25lcnJvciA9IHVuZXhwZWN0ZWRFcnJvckNh
bGxiYWNrOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0
c3RvcmUtY3Vyc29yLmh0bWwgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3Rz
dG9yZS1jdXJzb3IuaHRtbAppbmRleCBkNTYxMzE1Li4yNDk3NDc5IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1jdXJzb3IuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1jdXJzb3IuaHRtbApAQCAt
MjgsNyArMjgsNyBAQCB3aW5kb3cudGVzdERhdGEgPSBbCiAgCiBmdW5jdGlvbiBvcGVuRGF0YWJh
c2UoKQogewotICAgIHJlc3VsdCA9IGV2YWxBbmRMb2coIndlYmtpdEluZGV4ZWREQi5vcGVuKCdz
b21lREInLCAnc29tZSBkZXNjcmlwdGlvbicpIik7CisgICAgcmVzdWx0ID0gZXZhbEFuZExvZygi
d2Via2l0SW5kZXhlZERCLm9wZW4oJ3NvbWVEQicpIik7CiAgICAgdmVyaWZ5UmVzdWx0KHJlc3Vs
dCk7CiAgICAgcmVzdWx0Lm9uc3VjY2VzcyA9IHNldFZlcnNpb247CiAgICAgcmVzdWx0Lm9uZXJy
b3IgPSB1bmV4cGVjdGVkRXJyb3JDYWxsYmFjazsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLXJlbW92ZW9iamVjdHN0b3JlLmh0bWwgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS5o
dG1sCmluZGV4IGM0NDE4YmMuLjhkNjZlMGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLXJlbW92ZW9iamVjdHN0b3JlLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtcmVtb3Zlb2JqZWN0c3RvcmUu
aHRtbApAQCAtMTYsNyArMTYsNyBAQCBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQog
CiBmdW5jdGlvbiB0ZXN0KCkKIHsKLSAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJ3ZWJraXRJbmRl
eGVkREIub3BlbignbmFtZScsICdkZXNjcmlwdGlvbicpIik7CisgICAgcmVzdWx0ID0gZXZhbEFu
ZExvZygid2Via2l0SW5kZXhlZERCLm9wZW4oJ25hbWUnKSIpOwogICAgIHZlcmlmeVJlc3VsdChy
ZXN1bHQpOwogICAgIHJlc3VsdC5vbnN1Y2Nlc3MgPSBzdGFydFNldFZlcnNpb247CiAgICAgcmVz
dWx0Lm9uZXJyb3IgPSB1bmV4cGVjdGVkRXJyb3JDYWxsYmFjazsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29wZW4tY3Vyc29yLmh0bWwgYi9MYXlvdXRUZXN0cy9z
dG9yYWdlL2luZGV4ZWRkYi9vcGVuLWN1cnNvci5odG1sCmluZGV4IDgxNWMwMWIuLjdlNmFmOWEg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29wZW4tY3Vyc29yLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb3Blbi1jdXJzb3IuaHRtbApA
QCAtOTUsNyArOTUsNyBAQCBmdW5jdGlvbiBvcGVuU3VjY2VzcygpCiAKIGZ1bmN0aW9uIHRlc3Qo
KQogewotICAgIHJlc3VsdCA9IGV2YWxBbmRMb2coIndlYmtpdEluZGV4ZWREQi5vcGVuKCduYW1l
JywgJ2Rlc2NyaXB0aW9uJykiKTsKKyAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJ3ZWJraXRJbmRl
eGVkREIub3BlbignbmFtZScpIik7CiAgICAgdmVyaWZ5UmVzdWx0KHJlc3VsdCk7CiAgICAgcmVz
dWx0Lm9uc3VjY2VzcyA9IG9wZW5TdWNjZXNzOwogICAgIHJlc3VsdC5vbmVycm9yID0gdW5leHBl
Y3RlZEVycm9yQ2FsbGJhY2s7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4
ZWRkYi9xdWV1ZWQtY29tbWFuZHMuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRi
L3F1ZXVlZC1jb21tYW5kcy5odG1sCmluZGV4IDdkYzk0YzMuLmQ0OGNiNTIgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3F1ZXVlZC1jb21tYW5kcy5odG1sCisrKyBi
L0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3F1ZXVlZC1jb21tYW5kcy5odG1sCkBAIC0x
Niw3ICsxNiw3IEBAIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCiAKIGZ1bmN0aW9u
IHRlc3QoKQogewotICAgIHJlc3VsdCA9IGV2YWxBbmRMb2coIndlYmtpdEluZGV4ZWREQi5vcGVu
KCduYW1lJywgJ2Rlc2NyaXB0aW9uJykiKTsKKyAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJ3ZWJr
aXRJbmRleGVkREIub3BlbignbmFtZScpIik7CiAgICAgdmVyaWZ5UmVzdWx0KHJlc3VsdCk7CiAg
ICAgcmVzdWx0Lm9uc3VjY2VzcyA9IHNldFZlcnNpb247CiAgICAgcmVzdWx0Lm9uZXJyb3IgPSB1
bmV4cGVjdGVkRXJyb3JDYWxsYmFjazsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL3RyYW5zYWN0aW9uLWJhc2ljcy5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9p
bmRleGVkZGIvdHJhbnNhY3Rpb24tYmFzaWNzLmh0bWwKaW5kZXggMDdmYzY4NS4uNjI3NTRkMCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvdHJhbnNhY3Rpb24tYmFz
aWNzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvdHJhbnNhY3Rpb24t
YmFzaWNzLmh0bWwKQEAgLTE5LDcgKzE5LDcgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgc2hvdWxk
QmVUcnVlKCInd2Via2l0SW5kZXhlZERCJyBpbiB3aW5kb3ciKTsKICAgICBzaG91bGRCZUZhbHNl
KCJ3ZWJraXRJbmRleGVkREIgPT0gbnVsbCIpOwogCi0gICAgcmVzdWx0ID0gZXZhbEFuZExvZygi
d2Via2l0SW5kZXhlZERCLm9wZW4oJ25hbWUnLCAnZGVzY3JpcHRpb24nKSIpOworICAgIHJlc3Vs
dCA9IGV2YWxBbmRMb2coIndlYmtpdEluZGV4ZWREQi5vcGVuKCduYW1lJykiKTsKICAgICB2ZXJp
ZnlSZXN1bHQocmVzdWx0KTsKICAgICByZXN1bHQub25zdWNjZXNzID0gb3BlblN1Y2Nlc3M7CiAg
ICAgcmVzdWx0Lm9uZXJyb3IgPSB1bmV4cGVjdGVkRXJyb3JDYWxsYmFjazsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3R1dG9yaWFsLmh0bWwgYi9MYXlvdXRUZXN0
cy9zdG9yYWdlL2luZGV4ZWRkYi90dXRvcmlhbC5odG1sCmluZGV4IDM1Nzg4NDguLjM2YTA4NTYg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3R1dG9yaWFsLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvdHV0b3JpYWwuaHRtbApAQCAtNzAs
NyArNzAsNyBAQCBmdW5jdGlvbiBzdGFydCgpCiAgICAgLy8gImFkZEV2ZW50TGlzdGVuZXIiIGlm
IHlvdSdkIGxpa2UsIGJ1dCBJJ20gdXNpbmcgdGhlIHNpbXBsZXIgPSBzeW50YXguIE9ubHkgb25l
IG9yIHRoZSBvdGhlcgogICAgIC8vIHdpbGwgZmlyZS4gWW91J3JlIGd1YXJhbnRlZWQgdGhhdCB0
aGV5IHdvbid0IGZpcmUgdW50aWwgY29udHJvbCBpcyByZXR1cm5lZCBmcm9tIEphdmFTY3JpcHQK
ICAgICAvLyBleGVjdXRpb24uCi0gICAgdmFyIHJlcXVlc3QgPSBpbmRleGVkREIub3BlbigibXlE
QiIsICJUaGlzIGlzIGEgZGVzY3JpcHRpb24gb2YgdGhlIGRhdGFiYXNlLiIpOyAvLyBDaHJvbWl1
bS9XZWJLaXQgZG9lc24ndCB5ZXQgcmVxdWlyZSB0aGUgZGVzY3JpcHRpb24sIGJ1dCBpdCB3aWxs
IHNvb24uCisgICAgdmFyIHJlcXVlc3QgPSBpbmRleGVkREIub3BlbigibXlEQiIpOwogICAgIHJl
cXVlc3Qub25zdWNjZXNzID0gb25PcGVuOwogICAgIHJlcXVlc3Qub25lcnJvciA9IHVuZXhwZWN0
ZWRFcnJvcjsKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFu
Z2VMb2cKaW5kZXggODAwNzIyZC4uNTlkNzI1MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VM
b2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOCBAQAorMjAxMC0xMS0yNSAg
QW5kcmVpIFBvcGVzY3UgIDxhbmRyZWlwQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSURCRmFjdG9yeTo6b3BlbiBzaG91bGQgbm90
IGhhdmUgYSBkZXNjcmlwdGlvbiBhcmd1bWVudC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTUwMDg3CisKKyAgICAgICAgTW9kaWZpZWQgZXhpc2l0aW5n
IHRlc3RzIHRvIGNvdmVyIHRoaXMgY2hhbmdlLgorCisgICAgICAgICogc3RvcmFnZS9JREJEYXRh
YmFzZUJhY2tlbmRJbXBsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnNldE1ldGFEYXRhKToKKyAg
ICAgICAgKFdlYkNvcmU6OklEQkRhdGFiYXNlQmFja2VuZEltcGw6OklEQkRhdGFiYXNlQmFja2Vu
ZEltcGwpOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2VCYWNrZW5kSW1wbDo6c2V0VmVy
c2lvbkludGVybmFsKToKKyAgICAgICAgKiBzdG9yYWdlL0lEQkRhdGFiYXNlQmFja2VuZEltcGwu
aDoKKyAgICAgICAgKFdlYkNvcmU6OklEQkRhdGFiYXNlQmFja2VuZEltcGw6OmNyZWF0ZSk6Cisg
ICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZUJhY2tlbmRJbnRlcmZhY2UuaDoKKyAgICAgICAg
KiBzdG9yYWdlL0lEQkZhY3RvcnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCRmFjdG9yeTo6
b3Blbik6CisgICAgICAgICogc3RvcmFnZS9JREJGYWN0b3J5Lmg6CisgICAgICAgICogc3RvcmFn
ZS9JREJGYWN0b3J5LmlkbDoKKyAgICAgICAgKiBzdG9yYWdlL0lEQkZhY3RvcnlCYWNrZW5kSW1w
bC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJGYWN0b3J5QmFja2VuZEltcGw6Om9wZW4pOgor
ICAgICAgICAqIHN0b3JhZ2UvSURCRmFjdG9yeUJhY2tlbmRJbXBsLmg6CisgICAgICAgICogc3Rv
cmFnZS9JREJGYWN0b3J5QmFja2VuZEludGVyZmFjZS5oOgorCiAyMDEwLTExLTI1ICBIYW5zIFdl
bm5ib3JnICA8aGFuc0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgSmVyZW15
IE9ybG93LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQmFja2VuZElt
cGwuY3BwIGIvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQmFja2VuZEltcGwuY3BwCmluZGV4
IDI2ODE5MDAuLjZmNWI4OTAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFz
ZUJhY2tlbmRJbXBsLmNwcAorKysgYi9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VCYWNrZW5k
SW1wbC5jcHAKQEAgLTYwLDE0ICs2MCwxMyBAQCBzdGF0aWMgYm9vbCBleHRyYWN0TWV0YURhdGEo
U1FMaXRlRGF0YWJhc2UmIHNxbGl0ZURhdGFiYXNlLCBjb25zdCBTdHJpbmcmIG5hbWUsCiAgICAg
cmV0dXJuIHRydWU7CiB9CiAKLXN0YXRpYyBib29sIHNldE1ldGFEYXRhKFNRTGl0ZURhdGFiYXNl
JiBzcWxpdGVEYXRhYmFzZSwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGRlc2Ny
aXB0aW9uLCBjb25zdCBTdHJpbmcmIHZlcnNpb24sIGludDY0X3QmIHJvd0lkKQorc3RhdGljIGJv
b2wgc2V0TWV0YURhdGEoU1FMaXRlRGF0YWJhc2UmIHNxbGl0ZURhdGFiYXNlLCBjb25zdCBTdHJp
bmcmIG5hbWUsIGNvbnN0IFN0cmluZyYgdmVyc2lvbiwgaW50NjRfdCYgcm93SWQpCiB7CiAgICAg
QVNTRVJUKCFuYW1lLmlzTnVsbCgpKTsKLSAgICBBU1NFUlQoIWRlc2NyaXB0aW9uLmlzTnVsbCgp
KTsKICAgICBBU1NFUlQoIXZlcnNpb24uaXNOdWxsKCkpOwogCi0gICAgU3RyaW5nIHNxbCA9IHJv
d0lkICE9IElEQkRhdGFiYXNlQmFja2VuZEltcGw6OkludmFsaWRJZCA/ICJVUERBVEUgRGF0YWJh
c2VzIFNFVCBuYW1lID0gPywgZGVzY3JpcHRpb24gPSA/LCB2ZXJzaW9uID0gPyBXSEVSRSBpZCA9
ID8iCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA6ICJJTlNFUlQgSU5UTyBEYXRhYmFzZXMgKG5hbWUsIGRlc2NyaXB0aW9uLCB2ZXJz
aW9uKSBWQUxVRVMgKD8sID8sID8pIjsKKyAgICBTdHJpbmcgc3FsID0gcm93SWQgIT0gSURCRGF0
YWJhc2VCYWNrZW5kSW1wbDo6SW52YWxpZElkID8gIlVQREFURSBEYXRhYmFzZXMgU0VUIG5hbWUg
PSA/LCB2ZXJzaW9uID0gPyBXSEVSRSBpZCA9ID8iCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICJJTlNFUlQgSU5UTyBEYXRhYmFz
ZXMgKG5hbWUsIGRlc2NyaXB0aW9uLCB2ZXJzaW9uKSBWQUxVRVMgKD8sICcnLCA/KSI7CiAgICAg
U1FMaXRlU3RhdGVtZW50IHF1ZXJ5KHNxbGl0ZURhdGFiYXNlLCBzcWwpOwogICAgIGlmIChxdWVy
eS5wcmVwYXJlKCkgIT0gU1FMUmVzdWx0T2spIHsKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCk7CkBAIC03NSwxMCArNzQsOSBAQCBzdGF0aWMgYm9vbCBzZXRNZXRhRGF0YShTUUxpdGVEYXRh
YmFzZSYgc3FsaXRlRGF0YWJhc2UsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29ucwogICAgIH0KIAog
ICAgIHF1ZXJ5LmJpbmRUZXh0KDEsIG5hbWUpOwotICAgIHF1ZXJ5LmJpbmRUZXh0KDIsIGRlc2Ny
aXB0aW9uKTsKLSAgICBxdWVyeS5iaW5kVGV4dCgzLCB2ZXJzaW9uKTsKKyAgICBxdWVyeS5iaW5k
VGV4dCgyLCB2ZXJzaW9uKTsKICAgICBpZiAocm93SWQgIT0gSURCRGF0YWJhc2VCYWNrZW5kSW1w
bDo6SW52YWxpZElkKQotICAgICAgICBxdWVyeS5iaW5kSW50NjQoNCwgcm93SWQpOworICAgICAg
ICBxdWVyeS5iaW5kSW50NjQoMywgcm93SWQpOwogCiAgICAgaWYgKHF1ZXJ5LnN0ZXAoKSAhPSBT
UUxSZXN1bHREb25lKQogICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC04OSwyMiArODcsMjAgQEAg
c3RhdGljIGJvb2wgc2V0TWV0YURhdGEoU1FMaXRlRGF0YWJhc2UmIHNxbGl0ZURhdGFiYXNlLCBj
b25zdCBTdHJpbmcmIG5hbWUsIGNvbnMKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotSURCRGF0YWJh
c2VCYWNrZW5kSW1wbDo6SURCRGF0YWJhc2VCYWNrZW5kSW1wbChjb25zdCBTdHJpbmcmIG5hbWUs
IGNvbnN0IFN0cmluZyYgZGVzY3JpcHRpb24sIElEQlNRTGl0ZURhdGFiYXNlKiBzcWxpdGVEYXRh
YmFzZSwgSURCVHJhbnNhY3Rpb25Db29yZGluYXRvciogY29vcmRpbmF0b3IsIElEQkZhY3RvcnlC
YWNrZW5kSW1wbCogZmFjdG9yeSwgY29uc3QgU3RyaW5nJiB1bmlxdWVJZGVudGlmaWVyKQorSURC
RGF0YWJhc2VCYWNrZW5kSW1wbDo6SURCRGF0YWJhc2VCYWNrZW5kSW1wbChjb25zdCBTdHJpbmcm
IG5hbWUsIElEQlNRTGl0ZURhdGFiYXNlKiBzcWxpdGVEYXRhYmFzZSwgSURCVHJhbnNhY3Rpb25D
b29yZGluYXRvciogY29vcmRpbmF0b3IsIElEQkZhY3RvcnlCYWNrZW5kSW1wbCogZmFjdG9yeSwg
Y29uc3QgU3RyaW5nJiB1bmlxdWVJZGVudGlmaWVyKQogICAgIDogbV9zcWxpdGVEYXRhYmFzZShz
cWxpdGVEYXRhYmFzZSkKICAgICAsIG1faWQoSW52YWxpZElkKQogICAgICwgbV9uYW1lKG5hbWUp
Ci0gICAgLCBtX2Rlc2NyaXB0aW9uKGRlc2NyaXB0aW9uKQogICAgICwgbV92ZXJzaW9uKCIiKQog
ICAgICwgbV9pZGVudGlmaWVyKHVuaXF1ZUlkZW50aWZpZXIpCiAgICAgLCBtX2ZhY3RvcnkoZmFj
dG9yeSkKICAgICAsIG1fdHJhbnNhY3Rpb25Db29yZGluYXRvcihjb29yZGluYXRvcikKIHsKICAg
ICBBU1NFUlQoIW1fbmFtZS5pc051bGwoKSk7Ci0gICAgQVNTRVJUKCFtX2Rlc2NyaXB0aW9uLmlz
TnVsbCgpKTsKIAogICAgIGJvb2wgc3VjY2VzcyA9IGV4dHJhY3RNZXRhRGF0YShtX3NxbGl0ZURh
dGFiYXNlLT5kYigpLCBtX25hbWUsIG1fdmVyc2lvbiwgbV9pZCk7CiAgICAgQVNTRVJUX1VOVVNF
RChzdWNjZXNzLCBzdWNjZXNzID09IChtX2lkICE9IEludmFsaWRJZCkpOwotICAgIGlmICghc2V0
TWV0YURhdGEobV9zcWxpdGVEYXRhYmFzZS0+ZGIoKSwgbV9uYW1lLCBtX2Rlc2NyaXB0aW9uLCBt
X3ZlcnNpb24sIG1faWQpKQorICAgIGlmICghc2V0TWV0YURhdGEobV9zcWxpdGVEYXRhYmFzZS0+
ZGIoKSwgbV9uYW1lLCBtX3ZlcnNpb24sIG1faWQpKQogICAgICAgICBBU1NFUlRfTk9UX1JFQUNI
RUQoKTsgLy8gRklYTUU6IE5lZWQgYmV0dGVyIGVycm9yIGhhbmRsaW5nLgogICAgIGxvYWRPYmpl
Y3RTdG9yZXMoKTsKIH0KQEAgLTExNCwxNSArMTEwLDYgQEAgSURCRGF0YWJhc2VCYWNrZW5kSW1w
bDo6fklEQkRhdGFiYXNlQmFja2VuZEltcGwoKQogICAgIG1fZmFjdG9yeS0+cmVtb3ZlSURCRGF0
YWJhc2VCYWNrZW5kKG1faWRlbnRpZmllcik7CiB9CiAKLXZvaWQgSURCRGF0YWJhc2VCYWNrZW5k
SW1wbDo6c2V0RGVzY3JpcHRpb24oY29uc3QgU3RyaW5nJiBkZXNjcmlwdGlvbikKLXsKLSAgICBp
ZiAoZGVzY3JpcHRpb24gPT0gbV9kZXNjcmlwdGlvbikKLSAgICAgICAgcmV0dXJuOwotCi0gICAg
bV9kZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uOwotICAgIHNldE1ldGFEYXRhKG1fc3FsaXRlRGF0
YWJhc2UtPmRiKCksIG1fbmFtZSwgbV9kZXNjcmlwdGlvbiwgbV92ZXJzaW9uLCBtX2lkKTsKLX0K
LQogU1FMaXRlRGF0YWJhc2UmIElEQkRhdGFiYXNlQmFja2VuZEltcGw6OnNxbGl0ZURhdGFiYXNl
KCkgY29uc3QKIHsKICAgICByZXR1cm4gbV9zcWxpdGVEYXRhYmFzZS0+ZGIoKTsKQEAgLTIzOCw3
ICsyMjUsNyBAQCB2b2lkIElEQkRhdGFiYXNlQmFja2VuZEltcGw6OnNldFZlcnNpb25JbnRlcm5h
bChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZgogewogICAgIGludDY0X3QgZGF0YWJh
c2VJZCA9IGRhdGFiYXNlLT5pZCgpOwogICAgIGRhdGFiYXNlLT5tX3ZlcnNpb24gPSB2ZXJzaW9u
OwotICAgIGlmICghc2V0TWV0YURhdGEoZGF0YWJhc2UtPm1fc3FsaXRlRGF0YWJhc2UtPmRiKCks
IGRhdGFiYXNlLT5tX25hbWUsIGRhdGFiYXNlLT5tX2Rlc2NyaXB0aW9uLCBkYXRhYmFzZS0+bV92
ZXJzaW9uLCBkYXRhYmFzZUlkKSkgeworICAgIGlmICghc2V0TWV0YURhdGEoZGF0YWJhc2UtPm1f
c3FsaXRlRGF0YWJhc2UtPmRiKCksIGRhdGFiYXNlLT5tX25hbWUsIGRhdGFiYXNlLT5tX3ZlcnNp
b24sIGRhdGFiYXNlSWQpKSB7CiAgICAgICAgIC8vIEZJWE1FOiBUaGUgSW5kZXhlZCBEYXRhYmFz
ZSBzcGVjaWZpY2F0aW9uIGRvZXMgbm90IGhhdmUgYW4gZXJyb3IgY29kZSBkZWRpY2F0ZWQgdG8g
SS9PIGVycm9ycy4KICAgICAgICAgY2FsbGJhY2tzLT5vbkVycm9yKElEQkRhdGFiYXNlRXJyb3I6
OmNyZWF0ZShJREJEYXRhYmFzZUV4Y2VwdGlvbjo6VU5LTk9XTl9FUlIsICJFcnJvciB3cml0aW5n
IGRhdGEgdG8gc3RhYmxlIHN0b3JhZ2UuIikpOwogICAgICAgICB0cmFuc2FjdGlvbi0+YWJvcnQo
KTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZUJhY2tlbmRJbXBsLmgg
Yi9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VCYWNrZW5kSW1wbC5oCmluZGV4IDhjOTdhNzAu
LmFmZGNkNjIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZUJhY2tlbmRJ
bXBsLmgKKysrIGIvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQmFja2VuZEltcGwuaApAQCAt
NDMsMjAgKzQzLDE4IEBAIGNsYXNzIFNRTGl0ZURhdGFiYXNlOwogCiBjbGFzcyBJREJEYXRhYmFz
ZUJhY2tlbmRJbXBsIDogcHVibGljIElEQkRhdGFiYXNlQmFja2VuZEludGVyZmFjZSB7CiBwdWJs
aWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8SURCRGF0YWJhc2VCYWNrZW5kSW1wbD4gY3JlYXRl
KGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBkZXNjcmlwdGlvbiwgSURCU1FMaXRl
RGF0YWJhc2UqIGRhdGFiYXNlLCBJREJUcmFuc2FjdGlvbkNvb3JkaW5hdG9yKiBjb29yZGluYXRv
ciwgSURCRmFjdG9yeUJhY2tlbmRJbXBsKiBmYWN0b3J5LCBjb25zdCBTdHJpbmcmIHVuaXF1ZUlk
ZW50aWZpZXIpCisgICAgc3RhdGljIFBhc3NSZWZQdHI8SURCRGF0YWJhc2VCYWNrZW5kSW1wbD4g
Y3JlYXRlKGNvbnN0IFN0cmluZyYgbmFtZSwgSURCU1FMaXRlRGF0YWJhc2UqIGRhdGFiYXNlLCBJ
REJUcmFuc2FjdGlvbkNvb3JkaW5hdG9yKiBjb29yZGluYXRvciwgSURCRmFjdG9yeUJhY2tlbmRJ
bXBsKiBmYWN0b3J5LCBjb25zdCBTdHJpbmcmIHVuaXF1ZUlkZW50aWZpZXIpCiAgICAgewotICAg
ICAgICByZXR1cm4gYWRvcHRSZWYobmV3IElEQkRhdGFiYXNlQmFja2VuZEltcGwobmFtZSwgZGVz
Y3JpcHRpb24sIGRhdGFiYXNlLCBjb29yZGluYXRvciwgZmFjdG9yeSwgdW5pcXVlSWRlbnRpZmll
cikpOworICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IElEQkRhdGFiYXNlQmFja2VuZEltcGwo
bmFtZSwgZGF0YWJhc2UsIGNvb3JkaW5hdG9yLCBmYWN0b3J5LCB1bmlxdWVJZGVudGlmaWVyKSk7
CiAgICAgfQogICAgIHZpcnR1YWwgfklEQkRhdGFiYXNlQmFja2VuZEltcGwoKTsKIAotICAgIHZv
aWQgc2V0RGVzY3JpcHRpb24oY29uc3QgU3RyaW5nJiBkZXNjcmlwdGlvbik7CiAgICAgU1FMaXRl
RGF0YWJhc2UmIHNxbGl0ZURhdGFiYXNlKCkgY29uc3Q7CiAKICAgICBzdGF0aWMgY29uc3QgaW50
NjRfdCBJbnZhbGlkSWQgPSAwOwogICAgIGludDY0X3QgaWQoKSBjb25zdCB7IHJldHVybiBtX2lk
OyB9CiAKICAgICB2aXJ0dWFsIFN0cmluZyBuYW1lKCkgY29uc3QgeyByZXR1cm4gbV9uYW1lOyB9
Ci0gICAgdmlydHVhbCBTdHJpbmcgZGVzY3JpcHRpb24oKSBjb25zdCB7IHJldHVybiBtX2Rlc2Ny
aXB0aW9uOyB9CiAgICAgdmlydHVhbCBTdHJpbmcgdmVyc2lvbigpIGNvbnN0IHsgcmV0dXJuIG1f
dmVyc2lvbjsgfQogICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxET01TdHJpbmdMaXN0PiBvYmplY3RT
dG9yZXMoKSBjb25zdDsKIApAQCAtNzAsNyArNjgsNyBAQCBwdWJsaWM6CiAgICAgSURCVHJhbnNh
Y3Rpb25Db29yZGluYXRvciogdHJhbnNhY3Rpb25Db29yZGluYXRvcigpIGNvbnN0IHsgcmV0dXJu
IG1fdHJhbnNhY3Rpb25Db29yZGluYXRvci5nZXQoKTsgfQogCiBwcml2YXRlOgotICAgIElEQkRh
dGFiYXNlQmFja2VuZEltcGwoY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGRlc2Ny
aXB0aW9uLCBJREJTUUxpdGVEYXRhYmFzZSogZGF0YWJhc2UsIElEQlRyYW5zYWN0aW9uQ29vcmRp
bmF0b3IqLCBJREJGYWN0b3J5QmFja2VuZEltcGwqLCBjb25zdCBTdHJpbmcmIHVuaXF1ZUlkZW50
aWZpZXIpOworICAgIElEQkRhdGFiYXNlQmFja2VuZEltcGwoY29uc3QgU3RyaW5nJiBuYW1lLCBJ
REJTUUxpdGVEYXRhYmFzZSogZGF0YWJhc2UsIElEQlRyYW5zYWN0aW9uQ29vcmRpbmF0b3IqLCBJ
REJGYWN0b3J5QmFja2VuZEltcGwqLCBjb25zdCBTdHJpbmcmIHVuaXF1ZUlkZW50aWZpZXIpOwog
CiAgICAgdm9pZCBsb2FkT2JqZWN0U3RvcmVzKCk7CiAKQEAgLTg2LDcgKzg0LDYgQEAgcHJpdmF0
ZToKICAgICBSZWZQdHI8SURCU1FMaXRlRGF0YWJhc2U+IG1fc3FsaXRlRGF0YWJhc2U7CiAgICAg
aW50NjQgbV9pZDsKICAgICBTdHJpbmcgbV9uYW1lOwotICAgIFN0cmluZyBtX2Rlc2NyaXB0aW9u
OwogICAgIFN0cmluZyBtX3ZlcnNpb247CiAKICAgICBTdHJpbmcgbV9pZGVudGlmaWVyOwpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQmFja2VuZEludGVyZmFjZS5oIGIv
V2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQmFja2VuZEludGVyZmFjZS5oCmluZGV4IDRiMDI1
NWQuLmU2NzJhNTAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZUJhY2tl
bmRJbnRlcmZhY2UuaAorKysgYi9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VCYWNrZW5kSW50
ZXJmYWNlLmgKQEAgLTUxLDcgKzUxLDYgQEAgcHVibGljOgogICAgIHZpcnR1YWwgfklEQkRhdGFi
YXNlQmFja2VuZEludGVyZmFjZSgpIHsgfQogCiAgICAgdmlydHVhbCBTdHJpbmcgbmFtZSgpIGNv
bnN0ID0gMDsKLSAgICB2aXJ0dWFsIFN0cmluZyBkZXNjcmlwdGlvbigpIGNvbnN0ID0gMDsKICAg
ICB2aXJ0dWFsIFN0cmluZyB2ZXJzaW9uKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgUGFzc1Jl
ZlB0cjxET01TdHJpbmdMaXN0PiBvYmplY3RTdG9yZXMoKSBjb25zdCA9IDA7CiAKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvc3RvcmFnZS9JREJGYWN0b3J5LmNwcCBiL1dlYkNvcmUvc3RvcmFnZS9JREJG
YWN0b3J5LmNwcAppbmRleCA2NDllYjM3Li44NWU5NzZjIDEwMDY0NAotLS0gYS9XZWJDb3JlL3N0
b3JhZ2UvSURCRmFjdG9yeS5jcHAKKysrIGIvV2ViQ29yZS9zdG9yYWdlL0lEQkZhY3RvcnkuY3Bw
CkBAIC01Nyw3ICs1Nyw3IEBAIElEQkZhY3Rvcnk6On5JREJGYWN0b3J5KCkKIHsKIH0KIAotUGFz
c1JlZlB0cjxJREJSZXF1ZXN0PiBJREJGYWN0b3J5OjpvcGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGNvbnRleHQsIGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBkZXNjcmlwdGlv
biwgRXhjZXB0aW9uQ29kZSYgZWMpCitQYXNzUmVmUHRyPElEQlJlcXVlc3Q+IElEQkZhY3Rvcnk6
Om9wZW4oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgY29uc3QgU3RyaW5nJiBuYW1l
LCBFeGNlcHRpb25Db2RlJiBlYykKIHsKICAgICBpZiAoIWNvbnRleHQtPmlzRG9jdW1lbnQoKSkg
ewogICAgICAgICAvLyBGSVhNRTogbWFrZSB0aGlzIHdvcmsgd2l0aCB3b3JrZXJzLgpAQCAtNzEs
MTQgKzcxLDEwIEBAIFBhc3NSZWZQdHI8SURCUmVxdWVzdD4gSURCRmFjdG9yeTo6b3BlbihTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBTCiAKICAgICAvLyBGSVhNRTogUmFp
c2UgYSBOT05fVFJBTlNJRU5UX0VSUiBpZiB0aGUgbmFtZSBpcyBpbnZhbGlkLgogCi0gICAgaWYg
KGRlc2NyaXB0aW9uLmlzTnVsbCgpKSB7Ci0gICAgICAgIGVjID0gSURCRGF0YWJhc2VFeGNlcHRp
b246Ok5PTl9UUkFOU0lFTlRfRVJSOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9CiAKICAgICBS
ZWZQdHI8SURCUmVxdWVzdD4gcmVxdWVzdCA9IElEQlJlcXVlc3Q6OmNyZWF0ZShkb2N1bWVudCwg
SURCQW55OjpjcmVhdGUodGhpcyksIDApOwogICAgIEdyb3VwU2V0dGluZ3MqIGdyb3VwU2V0dGlu
Z3MgPSBkb2N1bWVudC0+cGFnZSgpLT5ncm91cCgpLmdyb3VwU2V0dGluZ3MoKTsKLSAgICBtX2Zh
Y3RvcnlCYWNrZW5kLT5vcGVuKG5hbWUsIGRlc2NyaXB0aW9uLCByZXF1ZXN0LCBkb2N1bWVudC0+
c2VjdXJpdHlPcmlnaW4oKSwgZG9jdW1lbnQtPmZyYW1lKCksIGdyb3VwU2V0dGluZ3MtPmluZGV4
ZWREQkRhdGFiYXNlUGF0aCgpLCBncm91cFNldHRpbmdzLT5pbmRleGVkREJRdW90YUJ5dGVzKCkp
OworICAgIG1fZmFjdG9yeUJhY2tlbmQtPm9wZW4obmFtZSwgcmVxdWVzdCwgZG9jdW1lbnQtPnNl
Y3VyaXR5T3JpZ2luKCksIGRvY3VtZW50LT5mcmFtZSgpLCBncm91cFNldHRpbmdzLT5pbmRleGVk
REJEYXRhYmFzZVBhdGgoKSwgZ3JvdXBTZXR0aW5ncy0+aW5kZXhlZERCUXVvdGFCeXRlcygpKTsK
ICAgICByZXR1cm4gcmVxdWVzdDsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9zdG9yYWdlL0lE
QkZhY3RvcnkuaCBiL1dlYkNvcmUvc3RvcmFnZS9JREJGYWN0b3J5LmgKaW5kZXggODk1MzI0NS4u
Y2QwZDY0ZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQkZhY3RvcnkuaAorKysgYi9X
ZWJDb3JlL3N0b3JhZ2UvSURCRmFjdG9yeS5oCkBAIC01NCw3ICs1NCw3IEBAIHB1YmxpYzoKICAg
ICB9CiAgICAgfklEQkZhY3RvcnkoKTsKIAotICAgIFBhc3NSZWZQdHI8SURCUmVxdWVzdD4gb3Bl
bihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJp
bmcmIGRlc2NyaXB0aW9uLCBFeGNlcHRpb25Db2RlJik7CisgICAgUGFzc1JlZlB0cjxJREJSZXF1
ZXN0PiBvcGVuKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBTdHJpbmcmIG5hbWUsIEV4
Y2VwdGlvbkNvZGUmKTsKIAogcHJpdmF0ZToKICAgICBJREJGYWN0b3J5KElEQkZhY3RvcnlCYWNr
ZW5kSW50ZXJmYWNlKik7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3N0b3JhZ2UvSURCRmFjdG9yeS5p
ZGwgYi9XZWJDb3JlL3N0b3JhZ2UvSURCRmFjdG9yeS5pZGwKaW5kZXggNjQ2ZGY0MS4uMDJlZWQw
ZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQkZhY3RvcnkuaWRsCisrKyBiL1dlYkNv
cmUvc3RvcmFnZS9JREJGYWN0b3J5LmlkbApAQCAtMjgsNyArMjgsNyBAQCBtb2R1bGUgc3RvcmFn
ZSB7CiAgICAgaW50ZXJmYWNlIFsKICAgICAgICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFT
RQogICAgIF0gSURCRmFjdG9yeSB7Ci0gICAgICAgIFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25D
b250ZXh0XSBJREJSZXF1ZXN0IG9wZW4oaW4gRE9NU3RyaW5nIG5hbWUsIGluIFtDb252ZXJ0VW5k
ZWZpbmVkT3JOdWxsVG9OdWxsU3RyaW5nXSBET01TdHJpbmcgZGVzY3JpcHRpb24pCisgICAgICAg
IFtDYWxsV2l0aD1TY3JpcHRFeGVjdXRpb25Db250ZXh0XSBJREJSZXF1ZXN0IG9wZW4oaW4gRE9N
U3RyaW5nIG5hbWUpCiAgICAgICAgICAgICByYWlzZXMgKElEQkRhdGFiYXNlRXhjZXB0aW9uKTsK
ICAgICB9OwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL3N0b3JhZ2UvSURCRmFjdG9yeUJhY2tlbmRJ
bXBsLmNwcCBiL1dlYkNvcmUvc3RvcmFnZS9JREJGYWN0b3J5QmFja2VuZEltcGwuY3BwCmluZGV4
IGU0ZDBlZTguLmRlY2U5ZDMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3RvcmFnZS9JREJGYWN0b3J5
QmFja2VuZEltcGwuY3BwCisrKyBiL1dlYkNvcmUvc3RvcmFnZS9JREJGYWN0b3J5QmFja2VuZElt
cGwuY3BwCkBAIC0xMjIsMTQgKzEyMiwxMiBAQCBzdGF0aWMgYm9vbCBjcmVhdGVUYWJsZXMoU1FM
aXRlRGF0YWJhc2UmIHNxbGl0ZURhdGFiYXNlKQogICAgIHJldHVybiB0cnVlOwogfQogCi12b2lk
IElEQkZhY3RvcnlCYWNrZW5kSW1wbDo6b3Blbihjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0
cmluZyYgZGVzY3JpcHRpb24sIFBhc3NSZWZQdHI8SURCQ2FsbGJhY2tzPiBjYWxsYmFja3MsIFBh
c3NSZWZQdHI8U2VjdXJpdHlPcmlnaW4+IHNlY3VyaXR5T3JpZ2luLCBGcmFtZSosIGNvbnN0IFN0
cmluZyYgZGF0YURpciwgaW50NjRfdCBtYXhpbXVtU2l6ZSkKK3ZvaWQgSURCRmFjdG9yeUJhY2tl
bmRJbXBsOjpvcGVuKGNvbnN0IFN0cmluZyYgbmFtZSwgUGFzc1JlZlB0cjxJREJDYWxsYmFja3M+
IGNhbGxiYWNrcywgUGFzc1JlZlB0cjxTZWN1cml0eU9yaWdpbj4gc2VjdXJpdHlPcmlnaW4sIEZy
YW1lKiwgY29uc3QgU3RyaW5nJiBkYXRhRGlyLCBpbnQ2NF90IG1heGltdW1TaXplKQogewogICAg
IFN0cmluZyBmaWxlSWRlbnRpZmllciA9IHNlY3VyaXR5T3JpZ2luLT5kYXRhYmFzZUlkZW50aWZp
ZXIoKTsKICAgICBTdHJpbmcgdW5pcXVlSWRlbnRpZmllciA9IGZpbGVJZGVudGlmaWVyICsgIkAi
ICsgbmFtZTsKICAgICBJREJEYXRhYmFzZUJhY2tlbmRNYXA6Oml0ZXJhdG9yIGl0ID0gbV9kYXRh
YmFzZUJhY2tlbmRNYXAuZmluZCh1bmlxdWVJZGVudGlmaWVyKTsKICAgICBpZiAoaXQgIT0gbV9k
YXRhYmFzZUJhY2tlbmRNYXAuZW5kKCkpIHsKLSAgICAgICAgaWYgKCFkZXNjcmlwdGlvbi5pc051
bGwoKSkKLSAgICAgICAgICAgIGl0LT5zZWNvbmQtPnNldERlc2NyaXB0aW9uKGRlc2NyaXB0aW9u
KTsgLy8gVGhlIGRlc2NyaXB0aW9uIG1heSBoYXZlIGNoYW5nZWQuCiAgICAgICAgIGNhbGxiYWNr
cy0+b25TdWNjZXNzKGl0LT5zZWNvbmQpOwogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtMTUw
LDcgKzE0OCw3IEBAIHZvaWQgSURCRmFjdG9yeUJhY2tlbmRJbXBsOjpvcGVuKGNvbnN0IFN0cmlu
ZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBkZXNjcmlwdGlvbiwKICAgICAgICAgbV9zcWxpdGVEYXRh
YmFzZU1hcC5zZXQoZmlsZUlkZW50aWZpZXIsIHNxbGl0ZURhdGFiYXNlLmdldCgpKTsKICAgICB9
CiAKLSAgICBSZWZQdHI8SURCRGF0YWJhc2VCYWNrZW5kSW1wbD4gZGF0YWJhc2VCYWNrZW5kID0g
SURCRGF0YWJhc2VCYWNrZW5kSW1wbDo6Y3JlYXRlKG5hbWUsIGRlc2NyaXB0aW9uLCBzcWxpdGVE
YXRhYmFzZS5nZXQoKSwgbV90cmFuc2FjdGlvbkNvb3JkaW5hdG9yLmdldCgpLCB0aGlzLCB1bmlx
dWVJZGVudGlmaWVyKTsKKyAgICBSZWZQdHI8SURCRGF0YWJhc2VCYWNrZW5kSW1wbD4gZGF0YWJh
c2VCYWNrZW5kID0gSURCRGF0YWJhc2VCYWNrZW5kSW1wbDo6Y3JlYXRlKG5hbWUsIHNxbGl0ZURh
dGFiYXNlLmdldCgpLCBtX3RyYW5zYWN0aW9uQ29vcmRpbmF0b3IuZ2V0KCksIHRoaXMsIHVuaXF1
ZUlkZW50aWZpZXIpOwogICAgIGNhbGxiYWNrcy0+b25TdWNjZXNzKGRhdGFiYXNlQmFja2VuZC5n
ZXQoKSk7CiAgICAgbV9kYXRhYmFzZUJhY2tlbmRNYXAuc2V0KHVuaXF1ZUlkZW50aWZpZXIsIGRh
dGFiYXNlQmFja2VuZC5nZXQoKSk7CiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL3N0b3JhZ2UvSURC
RmFjdG9yeUJhY2tlbmRJbXBsLmggYi9XZWJDb3JlL3N0b3JhZ2UvSURCRmFjdG9yeUJhY2tlbmRJ
bXBsLmgKaW5kZXggZDYxOGZlMi4uMTQyNDBmZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdl
L0lEQkZhY3RvcnlCYWNrZW5kSW1wbC5oCisrKyBiL1dlYkNvcmUvc3RvcmFnZS9JREJGYWN0b3J5
QmFja2VuZEltcGwuaApAQCAtNTQsNyArNTQsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCByZW1vdmVJ
REJEYXRhYmFzZUJhY2tlbmQoY29uc3QgU3RyaW5nJiB1bmlxdWVJZGVudGlmaWVyKTsKICAgICB2
b2lkIHJlbW92ZVNRTGl0ZURhdGFiYXNlKGNvbnN0IFN0cmluZyYgdW5pcXVlSWRlbnRpZmllcik7
CiAKLSAgICB2aXJ0dWFsIHZvaWQgb3Blbihjb25zdCBTdHJpbmcmIG5hbWUsIGNvbnN0IFN0cmlu
ZyYgZGVzY3JpcHRpb24sIFBhc3NSZWZQdHI8SURCQ2FsbGJhY2tzPiwgUGFzc1JlZlB0cjxTZWN1
cml0eU9yaWdpbj4sIEZyYW1lKiwgY29uc3QgU3RyaW5nJiBkYXRhRGlyLCBpbnQ2NF90IG1heGlt
dW1TaXplKTsKKyAgICB2aXJ0dWFsIHZvaWQgb3Blbihjb25zdCBTdHJpbmcmIG5hbWUsIFBhc3NS
ZWZQdHI8SURCQ2FsbGJhY2tzPiwgUGFzc1JlZlB0cjxTZWN1cml0eU9yaWdpbj4sIEZyYW1lKiwg
Y29uc3QgU3RyaW5nJiBkYXRhRGlyLCBpbnQ2NF90IG1heGltdW1TaXplKTsKIAogICAgIHN0YXRp
YyBTdHJpbmcgZGF0YWJhc2VGaWxlTmFtZShTZWN1cml0eU9yaWdpbiopOwogCmRpZmYgLS1naXQg
YS9XZWJDb3JlL3N0b3JhZ2UvSURCRmFjdG9yeUJhY2tlbmRJbnRlcmZhY2UuaCBiL1dlYkNvcmUv
c3RvcmFnZS9JREJGYWN0b3J5QmFja2VuZEludGVyZmFjZS5oCmluZGV4IDQ0NWY5ZTkuLjE2NmQ1
MTcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3RvcmFnZS9JREJGYWN0b3J5QmFja2VuZEludGVyZmFj
ZS5oCisrKyBiL1dlYkNvcmUvc3RvcmFnZS9JREJGYWN0b3J5QmFja2VuZEludGVyZmFjZS5oCkBA
IC01MSw3ICs1MSw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxJREJGYWN0b3J5
QmFja2VuZEludGVyZmFjZT4gY3JlYXRlKCk7CiAgICAgdmlydHVhbCB+SURCRmFjdG9yeUJhY2tl
bmRJbnRlcmZhY2UoKTsKIAotICAgIHZpcnR1YWwgdm9pZCBvcGVuKGNvbnN0IFN0cmluZyYgbmFt
ZSwgY29uc3QgU3RyaW5nJiBkZXNjcmlwdGlvbiwgUGFzc1JlZlB0cjxJREJDYWxsYmFja3M+LCBQ
YXNzUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiwgRnJhbWUqLCBjb25zdCBTdHJpbmcmIGRhdGFEaXIs
IGludDY0X3QgbWF4aW11bVNpemUpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgb3Blbihjb25zdCBT
dHJpbmcmIG5hbWUsIFBhc3NSZWZQdHI8SURCQ2FsbGJhY2tzPiwgUGFzc1JlZlB0cjxTZWN1cml0
eU9yaWdpbj4sIEZyYW1lKiwgY29uc3QgU3RyaW5nJiBkYXRhRGlyLCBpbnQ2NF90IG1heGltdW1T
aXplKSA9IDA7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCBi
MDg0YzIxLi40Nzk0NmVhIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisr
KyBiL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMC0xMS0y
NSAgQW5kcmVpIFBvcGVzY3UgIDxhbmRyZWlwQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSURCRmFjdG9yeTo6b3BlbiBzaG91bGQg
bm90IGhhdmUgYSBkZXNjcmlwdGlvbiBhcmd1bWVudC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUwMDg3CisKKyAgICAgICAgKiBwdWJsaWMvV2ViSURC
RGF0YWJhc2UuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViSURCRGF0YWJhc2U6OmRlc2NyaXB0aW9u
KToKKyAgICAgICAgKiBwdWJsaWMvV2ViSURCRmFjdG9yeS5oOgorICAgICAgICAoV2ViS2l0OjpX
ZWJJREJGYWN0b3J5OjpvcGVuKToKKyAgICAgICAgKiBzcmMvSURCRmFjdG9yeUJhY2tlbmRQcm94
eS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJGYWN0b3J5QmFja2VuZFByb3h5OjpvcGVuKToK
KyAgICAgICAgKiBzcmMvSURCRmFjdG9yeUJhY2tlbmRQcm94eS5oOgorICAgICAgICAqIHNyYy9X
ZWJJREJEYXRhYmFzZUltcGwuY3BwOgorICAgICAgICAqIHNyYy9XZWJJREJEYXRhYmFzZUltcGwu
aDoKKyAgICAgICAgKiBzcmMvV2ViSURCRmFjdG9yeS5jcHA6CisgICAgICAgICogc3JjL1dlYklE
QkZhY3RvcnlJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViSURCRmFjdG9yeUltcGw6Om9w
ZW4pOgorICAgICAgICAqIHNyYy9XZWJJREJGYWN0b3J5SW1wbC5oOgorCiAyMDEwLTExLTI1ICBK
ZXJlbXkgT3Jsb3cgIDxqb3Jsb3dAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5
IFN0ZXZlIEJsb2NrLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJJREJE
YXRhYmFzZS5oIGIvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJJREJEYXRhYmFzZS5oCmluZGV4
IGE1NTY1MTUuLjgyNDcyZTEgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2Vi
SURCRGF0YWJhc2UuaAorKysgYi9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYklEQkRhdGFiYXNl
LmgKQEAgLTQ3LDkgKzQ3LDkgQEAgcHVibGljOgogICAgICAgICBXRUJLSVRfQVNTRVJUX05PVF9S
RUFDSEVEKCk7CiAgICAgICAgIHJldHVybiBXZWJTdHJpbmcoKTsKICAgICB9CisgICAgLy8gRklY
TUU6IHJlbW92ZSBhZnRlciByb2xsLgogICAgIHZpcnR1YWwgV2ViU3RyaW5nIGRlc2NyaXB0aW9u
KCkgY29uc3QKICAgICB7Ci0gICAgICAgIFdFQktJVF9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAg
ICAgICAgcmV0dXJuIFdlYlN0cmluZygpOwogICAgIH0KICAgICB2aXJ0dWFsIFdlYlN0cmluZyB2
ZXJzaW9uKCkgY29uc3QKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViSURC
RmFjdG9yeS5oIGIvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJJREJGYWN0b3J5LmgKaW5kZXgg
NjZjZWFkYi4uMjQxZGVlMyAxMDA3NTUKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJJ
REJGYWN0b3J5LmgKKysrIGIvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJJREJGYWN0b3J5LmgK
QEAgLTUxLDE2ICs1MSwyMSBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIH5XZWJJREJGYWN0b3J5
KCkgeyB9CiAKLSAgICAvLyBUaGUgV2ViS2l0IGltcGxlbWVudGF0aW9uIG9mIG9wZW4gaWdub3Jl
cyB0aGUgV2ViRnJhbWUqIHBhcmFtZXRlci4KKyAgICAvLyBGSVhNRTogUmVtb3ZlIGFmdGVyIHJv
bGwuCiAgICAgdmlydHVhbCB2b2lkIG9wZW4oY29uc3QgV2ViU3RyaW5nJiBuYW1lLCBjb25zdCBX
ZWJTdHJpbmcmIGRlc2NyaXB0aW9uLCBXZWJJREJDYWxsYmFja3MqIGNhbGxiYWNrcywgY29uc3Qg
V2ViU2VjdXJpdHlPcmlnaW4mIG9yaWdpbiwgV2ViRnJhbWUqIHdlYkZyYW1lLCBjb25zdCBXZWJT
dHJpbmcmIGRhdGFEaXIsIHVuc2lnbmVkIGxvbmcgbG9uZyBtYXhpbXVtU2l6ZSkKICAgICB7Ci0g
ICAgICAgIFdFQktJVF9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgb3BlbihuYW1lLCBj
YWxsYmFja3MsIG9yaWdpbiwgd2ViRnJhbWUsIGRhdGFEaXIsIG1heGltdW1TaXplKTsKKyAgICB9
CisKKyAgICAvLyBUaGUgV2ViS2l0IGltcGxlbWVudGF0aW9uIG9mIG9wZW4gaWdub3JlcyB0aGUg
V2ViRnJhbWUqIHBhcmFtZXRlci4KKyAgICB2aXJ0dWFsIHZvaWQgb3Blbihjb25zdCBXZWJTdHJp
bmcmIG5hbWUsIFdlYklEQkNhbGxiYWNrcyogY2FsbGJhY2tzLCBjb25zdCBXZWJTZWN1cml0eU9y
aWdpbiYgb3JpZ2luLCBXZWJGcmFtZSogd2ViRnJhbWUsIGNvbnN0IFdlYlN0cmluZyYgZGF0YURp
ciwgdW5zaWduZWQgbG9uZyBsb25nIG1heGltdW1TaXplKQorICAgIHsKKyAgICAgICAgLy8gV0VC
S0lUX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBvcGVuKG5hbWUsICIiLCBjYWxsYmFj
a3MsIG9yaWdpbiwgd2ViRnJhbWUsIGRhdGFEaXIsIG1heGltdW1TaXplKTsKICAgICB9CiAKICAg
ICAvLyBUaGUgZmlsZSBuYW1lIHRoYXQgd291bGQgYmUgdXNlZCBmb3IgcGVyc2lzdGluZyBhIGdp
dmVuIGluZGV4ZWQgZGF0YWJhc2Ugb24gdGhlIGZpbGUgc3lzdGVtLgogICAgIFdFQktJVF9BUEkg
c3RhdGljIFdlYlN0cmluZyBkYXRhYmFzZUZpbGVOYW1lKGNvbnN0IFdlYlNlY3VyaXR5T3JpZ2lu
Jik7Ci0gICAgLy8gRklYTUU6IFJlbW92ZSBhZnRlciByb2xsLgotICAgIFdFQktJVF9BUEkgc3Rh
dGljIFdlYlN0cmluZyBkYXRhYmFzZUZpbGVOYW1lKGNvbnN0IFdlYlN0cmluZyYgbmFtZSwgY29u
c3QgV2ViU2VjdXJpdHlPcmlnaW4mKTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZm
IC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9JREJGYWN0b3J5QmFja2VuZFByb3h5LmNwcCBi
L1dlYktpdC9jaHJvbWl1bS9zcmMvSURCRmFjdG9yeUJhY2tlbmRQcm94eS5jcHAKaW5kZXggMmU2
NTI0Ni4uNjc1MDRhMyAxMDA3NTUKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9JREJGYWN0b3J5
QmFja2VuZFByb3h5LmNwcAorKysgYi9XZWJLaXQvY2hyb21pdW0vc3JjL0lEQkZhY3RvcnlCYWNr
ZW5kUHJveHkuY3BwCkBAIC01OSwxMCArNTksMTAgQEAgSURCRmFjdG9yeUJhY2tlbmRQcm94eTo6
fklEQkZhY3RvcnlCYWNrZW5kUHJveHkoKQogewogfQogCi12b2lkIElEQkZhY3RvcnlCYWNrZW5k
UHJveHk6Om9wZW4oY29uc3QgU3RyaW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGRlc2NyaXB0aW9u
LCBQYXNzUmVmUHRyPElEQkNhbGxiYWNrcz4gY2FsbGJhY2tzLCBQYXNzUmVmUHRyPFNlY3VyaXR5
T3JpZ2luPiBvcmlnaW4sIEZyYW1lKiBmcmFtZSwgY29uc3QgU3RyaW5nJiBkYXRhRGlyLCBpbnQ2
NF90IG1heGltdW1TaXplKQordm9pZCBJREJGYWN0b3J5QmFja2VuZFByb3h5OjpvcGVuKGNvbnN0
IFN0cmluZyYgbmFtZSwgUGFzc1JlZlB0cjxJREJDYWxsYmFja3M+IGNhbGxiYWNrcywgUGFzc1Jl
ZlB0cjxTZWN1cml0eU9yaWdpbj4gb3JpZ2luLCBGcmFtZSogZnJhbWUsIGNvbnN0IFN0cmluZyYg
ZGF0YURpciwgaW50NjRfdCBtYXhpbXVtU2l6ZSkKIHsKICAgICBXZWJLaXQ6OldlYkZyYW1lKiB3
ZWJGcmFtZSA9IFdlYktpdDo6V2ViRnJhbWVJbXBsOjpmcm9tRnJhbWUoZnJhbWUpOwotICAgIG1f
d2ViSURCRmFjdG9yeS0+b3BlbihuYW1lLCBkZXNjcmlwdGlvbiwgbmV3IFdlYklEQkNhbGxiYWNr
c0ltcGwoY2FsbGJhY2tzKSwgb3JpZ2luLCB3ZWJGcmFtZSwgZGF0YURpciwgbWF4aW11bVNpemUp
OworICAgIG1fd2ViSURCRmFjdG9yeS0+b3BlbihuYW1lLCBuZXcgV2ViSURCQ2FsbGJhY2tzSW1w
bChjYWxsYmFja3MpLCBvcmlnaW4sIHdlYkZyYW1lLCBkYXRhRGlyLCBtYXhpbXVtU2l6ZSk7CiB9
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9z
cmMvSURCRmFjdG9yeUJhY2tlbmRQcm94eS5oIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9JREJGYWN0
b3J5QmFja2VuZFByb3h5LmgKaW5kZXggMGE1NWI1OS4uNTk1MGE2OCAxMDA3NTUKLS0tIGEvV2Vi
S2l0L2Nocm9taXVtL3NyYy9JREJGYWN0b3J5QmFja2VuZFByb3h5LmgKKysrIGIvV2ViS2l0L2No
cm9taXVtL3NyYy9JREJGYWN0b3J5QmFja2VuZFByb3h5LmgKQEAgLTQ1LDcgKzQ1LDcgQEAgcHVi
bGljOgogICAgIHZpcnR1YWwgfklEQkZhY3RvcnlCYWNrZW5kUHJveHkoKTsKIAogICAgIFBhc3NS
ZWZQdHI8RE9NU3RyaW5nTGlzdD4gZGF0YWJhc2VzKHZvaWQpIGNvbnN0OwotICAgIHZpcnR1YWwg
dm9pZCBvcGVuKGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBkZXNjcmlwdGlvbiwg
UGFzc1JlZlB0cjxJREJDYWxsYmFja3M+LCBQYXNzUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiwgRnJh
bWUqLCBjb25zdCBTdHJpbmcmIGRhdGFEaXIsIGludDY0X3QgbWF4aW11bVNpemUpOworICAgIHZp
cnR1YWwgdm9pZCBvcGVuKGNvbnN0IFN0cmluZyYgbmFtZSwgUGFzc1JlZlB0cjxJREJDYWxsYmFj
a3M+LCBQYXNzUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiwgRnJhbWUqLCBjb25zdCBTdHJpbmcmIGRh
dGFEaXIsIGludDY0X3QgbWF4aW11bVNpemUpOwogCiBwcml2YXRlOgogICAgIElEQkZhY3RvcnlC
YWNrZW5kUHJveHkoKTsKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViSURCRGF0
YWJhc2VJbXBsLmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViSURCRGF0YWJhc2VJbXBsLmNw
cAppbmRleCAyZDk1ZTIxLi4wMjJiYjUyIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYklEQkRhdGFiYXNlSW1wbC5jcHAKKysrIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJJREJE
YXRhYmFzZUltcGwuY3BwCkBAIC01NCwxMSArNTQsNiBAQCBXZWJTdHJpbmcgV2ViSURCRGF0YWJh
c2VJbXBsOjpuYW1lKCkgY29uc3QKICAgICByZXR1cm4gbV9kYXRhYmFzZUJhY2tlbmQtPm5hbWUo
KTsKIH0KIAotV2ViU3RyaW5nIFdlYklEQkRhdGFiYXNlSW1wbDo6ZGVzY3JpcHRpb24oKSBjb25z
dAotewotICAgIHJldHVybiBtX2RhdGFiYXNlQmFja2VuZC0+ZGVzY3JpcHRpb24oKTsKLX0KLQog
V2ViU3RyaW5nIFdlYklEQkRhdGFiYXNlSW1wbDo6dmVyc2lvbigpIGNvbnN0CiB7CiAgICAgcmV0
dXJuIG1fZGF0YWJhc2VCYWNrZW5kLT52ZXJzaW9uKCk7CmRpZmYgLS1naXQgYS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYklEQkRhdGFiYXNlSW1wbC5oIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJJ
REJEYXRhYmFzZUltcGwuaAppbmRleCA5NGYxMTAxLi42NTliYjQwIDEwMDY0NAotLS0gYS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYklEQkRhdGFiYXNlSW1wbC5oCisrKyBiL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViSURCRGF0YWJhc2VJbXBsLmgKQEAgLTQ2LDcgKzQ2LDYgQEAgcHVibGljOgogICAg
IHZpcnR1YWwgfldlYklEQkRhdGFiYXNlSW1wbCgpOwogCiAgICAgdmlydHVhbCBXZWJTdHJpbmcg
bmFtZSgpIGNvbnN0OwotICAgIHZpcnR1YWwgV2ViU3RyaW5nIGRlc2NyaXB0aW9uKCkgY29uc3Q7
CiAgICAgdmlydHVhbCBXZWJTdHJpbmcgdmVyc2lvbigpIGNvbnN0OwogICAgIHZpcnR1YWwgV2Vi
RE9NU3RyaW5nTGlzdCBvYmplY3RTdG9yZXMoKSBjb25zdDsKIApkaWZmIC0tZ2l0IGEvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJJREJGYWN0b3J5LmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
SURCRmFjdG9yeS5jcHAKaW5kZXggNDBlZmY5Ny4uMjkwNWZkNSAxMDA3NTUKLS0tIGEvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJJREJGYWN0b3J5LmNwcAorKysgYi9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYklEQkZhY3RvcnkuY3BwCkBAIC00NCwxMCArNDQsNCBAQCBXZWJTdHJpbmcgV2ViSURCRmFj
dG9yeTo6ZGF0YWJhc2VGaWxlTmFtZShjb25zdCBXZWJTZWN1cml0eU9yaWdpbiYgb3JpZ2luKQog
ICAgIHJldHVybiBJREJGYWN0b3J5QmFja2VuZEltcGw6OmRhdGFiYXNlRmlsZU5hbWUob3JpZ2lu
LmdldCgpKTsKIH0KIAotV2ViU3RyaW5nIFdlYklEQkZhY3Rvcnk6OmRhdGFiYXNlRmlsZU5hbWUo
Y29uc3QgV2ViU3RyaW5nJiBuYW1lLCBjb25zdCBXZWJTZWN1cml0eU9yaWdpbiYgb3JpZ2luKQot
ewotICAgIFVOVVNFRF9QQVJBTShuYW1lKTsKLSAgICByZXR1cm4gZGF0YWJhc2VGaWxlTmFtZShv
cmlnaW4pOwotfQotCiB9CmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYklEQkZh
Y3RvcnlJbXBsLmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViSURCRmFjdG9yeUltcGwuY3Bw
CmluZGV4IDVkMGFiODUuLmE1MDkwNzYgMTAwNzU1Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViSURCRmFjdG9yeUltcGwuY3BwCisrKyBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViSURCRmFj
dG9yeUltcGwuY3BwCkBAIC01OCw5ICs1OCw5IEBAIFdlYklEQkZhY3RvcnlJbXBsOjp+V2ViSURC
RmFjdG9yeUltcGwoKQogewogfQogCi12b2lkIFdlYklEQkZhY3RvcnlJbXBsOjpvcGVuKGNvbnN0
IFdlYlN0cmluZyYgbmFtZSwgY29uc3QgV2ViU3RyaW5nJiBkZXNjcmlwdGlvbiwgV2ViSURCQ2Fs
bGJhY2tzKiBjYWxsYmFja3MsIGNvbnN0IFdlYlNlY3VyaXR5T3JpZ2luJiBvcmlnaW4sIFdlYkZy
YW1lKiwgY29uc3QgV2ViU3RyaW5nJiBkYXRhRGlyLCB1bnNpZ25lZCBsb25nIGxvbmcgbWF4aW11
bVNpemUpCit2b2lkIFdlYklEQkZhY3RvcnlJbXBsOjpvcGVuKGNvbnN0IFdlYlN0cmluZyYgbmFt
ZSwgV2ViSURCQ2FsbGJhY2tzKiBjYWxsYmFja3MsIGNvbnN0IFdlYlNlY3VyaXR5T3JpZ2luJiBv
cmlnaW4sIFdlYkZyYW1lKiwgY29uc3QgV2ViU3RyaW5nJiBkYXRhRGlyLCB1bnNpZ25lZCBsb25n
IGxvbmcgbWF4aW11bVNpemUpCiB7Ci0gICAgbV9pZGJGYWN0b3J5QmFja2VuZC0+b3BlbihuYW1l
LCBkZXNjcmlwdGlvbiwgSURCQ2FsbGJhY2tzUHJveHk6OmNyZWF0ZShjYWxsYmFja3MpLCBvcmln
aW4sIDAsIGRhdGFEaXIsIG1heGltdW1TaXplKTsKKyAgICBtX2lkYkZhY3RvcnlCYWNrZW5kLT5v
cGVuKG5hbWUsIElEQkNhbGxiYWNrc1Byb3h5OjpjcmVhdGUoY2FsbGJhY2tzKSwgb3JpZ2luLCAw
LCBkYXRhRGlyLCBtYXhpbXVtU2l6ZSk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZm
IC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJJREJGYWN0b3J5SW1wbC5oIGIvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJJREJGYWN0b3J5SW1wbC5oCmluZGV4IDRiYzk0MjYuLjllZDZlM2Yg
MTAwNzU1Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViSURCRmFjdG9yeUltcGwuaAorKysg
Yi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYklEQkZhY3RvcnlJbXBsLmgKQEAgLTQyLDcgKzQyLDcg
QEAgcHVibGljOgogICAgIFdlYklEQkZhY3RvcnlJbXBsKCk7CiAgICAgdmlydHVhbCB+V2ViSURC
RmFjdG9yeUltcGwoKTsKIAotICAgIHZpcnR1YWwgdm9pZCBvcGVuKGNvbnN0IFdlYlN0cmluZyYg
bmFtZSwgY29uc3QgV2ViU3RyaW5nJiBkZXNjcmlwdGlvbiwgV2ViSURCQ2FsbGJhY2tzKiwgY29u
c3QgV2ViU2VjdXJpdHlPcmlnaW4mLCBXZWJGcmFtZSosIGNvbnN0IFdlYlN0cmluZyYgZGF0YURp
ciwgdW5zaWduZWQgbG9uZyBsb25nIG1heGltdW1TaXplKTsKKyAgICB2aXJ0dWFsIHZvaWQgb3Bl
bihjb25zdCBXZWJTdHJpbmcmIG5hbWUsIFdlYklEQkNhbGxiYWNrcyosIGNvbnN0IFdlYlNlY3Vy
aXR5T3JpZ2luJiwgV2ViRnJhbWUqLCBjb25zdCBXZWJTdHJpbmcmIGRhdGFEaXIsIHVuc2lnbmVk
IGxvbmcgbG9uZyBtYXhpbXVtU2l6ZSk7CiAKIHByaXZhdGU6CiAgICAgV1RGOjpSZWZQdHI8V2Vi
Q29yZTo6SURCRmFjdG9yeUJhY2tlbmRJbnRlcmZhY2U+IG1faWRiRmFjdG9yeUJhY2tlbmQ7Cg==
</data>
<flag name="review"
          id="65591"
          type_id="1"
          status="+"
          setter="jorlow"
    />
    <flag name="commit-queue"
          id="65592"
          type_id="3"
          status="-"
          setter="jorlow"
    />
          </attachment>
      

    </bug>

</bugzilla>