<?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>50102</bug_id>
          
          <creation_ts>2010-11-26 02:19:49 -0800</creation_ts>
          <short_desc>IndexedDB: Rename IDBDatabase.objectStores to objectStoreNames</short_desc>
          <delta_ts>2010-11-26 03:04:22 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</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="Hans Wennborg">hans</reporter>
          <assigned_to name="Hans Wennborg">hans</assigned_to>
          <cc>andreip</cc>
    
    <cc>jorlow</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>313926</commentid>
    <comment_count>0</comment_count>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-11-26 02:19:49 -0800</bug_when>
    <thetext>IndexedDB: Rename IDBDatabase.objectStores to objectStoreNames</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313927</commentid>
    <comment_count>1</comment_count>
      <attachid>74909</attachid>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-11-26 02:27:43 -0800</bug_when>
    <thetext>Created attachment 74909
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313928</commentid>
    <comment_count>2</comment_count>
      <attachid>74909</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-11-26 02:36:03 -0800</bug_when>
    <thetext>Comment on attachment 74909
Patch

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

r=me

&gt; WebCore/storage/IDBDatabaseBackendImpl.cpp:250
&gt; +PassRefPtr&lt;IDBTransactionBackendInterface&gt; IDBDatabaseBackendImpl::transaction(DOMStringList* storeNames, unsigned short mode, unsigned long timeout, ExceptionCode&amp;)

rename this to objectStoreNames

&gt; WebKit/chromium/public/WebIDBDatabase.h:64
&gt;          return WebDOMStringList();

I believe this needs to link back.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313935</commentid>
    <comment_count>3</comment_count>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-11-26 03:04:22 -0800</bug_when>
    <thetext>Committed r72754: &lt;http://trac.webkit.org/changeset/72754&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>74909</attachid>
            <date>2010-11-26 02:27:43 -0800</date>
            <delta_ts>2010-11-26 02:36:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-50102-20101126102740.patch</filename>
            <type>text/plain</type>
            <size>29595</size>
            <attacher name="Hans Wennborg">hans</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBkNTE4ZGU3ZmM2ZjhhOGYyM2UzYzMyNWVkMmQyYzhjMDllNjU1MjE1Li42ZDIxYTM3
NzUxOGIxZWFjMTdkNDE2YjZiMjc3NTljN2NkODRhOWEwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAK
KzIwMTAtMTEtMjYgIEhhbnMgV2VubmJvcmcgIDxoYW5zQGNocm9taXVtLm9yZz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbmRleGVkREI6IFJlbmFt
ZSBJREJEYXRhYmFzZS5vYmplY3RTdG9yZXMgdG8gb2JqZWN0U3RvcmVOYW1lcworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTAxMDIKKworICAgICAgICBV
cGRhdGUgbGF5b3V0IHRlc3RzIHRvIHVzZSB0aGUgbmV3IG5hbWUuCisKKyAgICAgICAgKiBzdG9y
YWdlL2luZGV4ZWRkYi9kYXRhYmFzZS1iYXNpY3MtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN0
b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLWJhc2ljcy5odG1sOgorICAgICAgICAqIHN0b3JhZ2Uv
aW5kZXhlZGRiL2RhdGFiYXNlLXF1b3RhLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdG9yYWdl
L2luZGV4ZWRkYi9kYXRhYmFzZS1xdW90YS5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhl
ZGRiL29iamVjdHN0b3JlLWJhc2ljcy1leHBlY3RlZC50eHQ6CisgICAgICAgICogc3RvcmFnZS9p
bmRleGVkZGIvb2JqZWN0c3RvcmUtYmFzaWNzLmh0bWw6CisgICAgICAgICogc3RvcmFnZS9pbmRl
eGVkZGIvcmVzb3VyY2VzL3NoYXJlZC5qczoKKyAgICAgICAgKGRlbGV0ZUFsbE9iamVjdFN0b3Jl
cyk6CisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvdHJhbnNhY3Rpb24tYmFzaWNzLWV4cGVj
dGVkLnR4dDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1iYXNpY3Mu
aHRtbDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi90dXRvcmlhbC5odG1sOgorCiAyMDEw
LTExLTI1ICBZdXpvIEZ1amlzaGltYSAgPHl1em9AZ29vZ2xlLmNvbT4KIAogICAgICAgICBVbnJl
dmlld2VkIENocm9taXVtIHRlc3QgZXhwZWN0YWlvbiBjaGFuZ2UuCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS1iYXNpY3MtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGF0YWJhc2UtYmFzaWNzLWV4cGVjdGVkLnR4
dAppbmRleCAyYTVmYTJmYWZkYjU0OWRjZWRlNjkzM2MyMTg5OWU5MDQ4NGI4MmFmLi4zMWFjZjEy
YzExNzcwYmJmYTgyMmVkMGQ4MmY4Y2ZhNWY2Yjg2ZDQzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS1iYXNpY3MtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLWJhc2ljcy1leHBlY3RlZC50eHQK
QEAgLTc5LDE3ICs3OSwxNyBAQCBQQVNTIGV2ZW50LnRhcmdldC5yZWFkeVN0YXRlIGlzIGV2ZW50
LnRhcmdldC5ET05FCiAKIFBBU1MgZGIudmVyc2lvbiBpcyAidmVyc2lvbiBiIgogUEFTUyBkYi5u
YW1lIGlzICJuYW1lIgotUEFTUyBkYi5vYmplY3RTdG9yZXMgaXMgW10KLVBBU1MgZGIub2JqZWN0
U3RvcmVzLmxlbmd0aCBpcyAwCi1QQVNTIGRiLm9iamVjdFN0b3Jlcy5jb250YWlucygnJykgaXMg
ZmFsc2UKLVBBU1MgZGIub2JqZWN0U3RvcmVzWzBdIGlzIG51bGwKLVBBU1MgZGIub2JqZWN0U3Rv
cmVzLml0ZW0oMCkgaXMgbnVsbAorUEFTUyBkYi5vYmplY3RTdG9yZU5hbWVzIGlzIFtdCitQQVNT
IGRiLm9iamVjdFN0b3JlTmFtZXMubGVuZ3RoIGlzIDAKK1BBU1MgZGIub2JqZWN0U3RvcmVOYW1l
cy5jb250YWlucygnJykgaXMgZmFsc2UKK1BBU1MgZGIub2JqZWN0U3RvcmVOYW1lc1swXSBpcyBu
dWxsCitQQVNTIGRiLm9iamVjdFN0b3JlTmFtZXMuaXRlbSgwKSBpcyBudWxsCiBkYi5jcmVhdGVP
YmplY3RTdG9yZSgidGVzdDEyMyIpCi1QQVNTIGRiLm9iamVjdFN0b3JlcyBpcyBbJ3Rlc3QxMjMn
XQotUEFTUyBkYi5vYmplY3RTdG9yZXMubGVuZ3RoIGlzIDEKLVBBU1MgZGIub2JqZWN0U3RvcmVz
LmNvbnRhaW5zKCcnKSBpcyBmYWxzZQotUEFTUyBkYi5vYmplY3RTdG9yZXMuY29udGFpbnMoJ3Rl
c3Q0NTYnKSBpcyBmYWxzZQotUEFTUyBkYi5vYmplY3RTdG9yZXMuY29udGFpbnMoJ3Rlc3QxMjMn
KSBpcyB0cnVlCitQQVNTIGRiLm9iamVjdFN0b3JlTmFtZXMgaXMgWyd0ZXN0MTIzJ10KK1BBU1Mg
ZGIub2JqZWN0U3RvcmVOYW1lcy5sZW5ndGggaXMgMQorUEFTUyBkYi5vYmplY3RTdG9yZU5hbWVz
LmNvbnRhaW5zKCcnKSBpcyBmYWxzZQorUEFTUyBkYi5vYmplY3RTdG9yZU5hbWVzLmNvbnRhaW5z
KCd0ZXN0NDU2JykgaXMgZmFsc2UKK1BBU1MgZGIub2JqZWN0U3RvcmVOYW1lcy5jb250YWlucygn
dGVzdDEyMycpIGlzIHRydWUKIGRiLnNldFZlcnNpb24oInZlcnNpb24gYyIpCiBQQVNTICdvbnN1
Y2Nlc3MnIGluIHJlc3VsdCBpcyB0cnVlCiBQQVNTICdvbmVycm9yJyBpbiByZXN1bHQgaXMgdHJ1
ZQpAQCAtMTA5LDIwICsxMDksMjAgQEAgUEFTUyBldmVudC50YXJnZXQucmVhZHlTdGF0ZSBpcyBl
dmVudC50YXJnZXQuRE9ORQogCiBQQVNTIGRiLnZlcnNpb24gaXMgInZlcnNpb24gYyIKIFBBU1Mg
ZGIubmFtZSBpcyAibmFtZSIKLVBBU1MgZGIub2JqZWN0U3RvcmVzIGlzIFsndGVzdDEyMyddCi1Q
QVNTIGRiLm9iamVjdFN0b3Jlcy5sZW5ndGggaXMgMQotUEFTUyBkYi5vYmplY3RTdG9yZXMuY29u
dGFpbnMoJycpIGlzIGZhbHNlCi1QQVNTIGRiLm9iamVjdFN0b3Jlcy5jb250YWlucygndGVzdDQ1
NicpIGlzIGZhbHNlCi1QQVNTIGRiLm9iamVjdFN0b3Jlcy5jb250YWlucygndGVzdDEyMycpIGlz
IHRydWUKK1BBU1MgZGIub2JqZWN0U3RvcmVOYW1lcyBpcyBbJ3Rlc3QxMjMnXQorUEFTUyBkYi5v
YmplY3RTdG9yZU5hbWVzLmxlbmd0aCBpcyAxCitQQVNTIGRiLm9iamVjdFN0b3JlTmFtZXMuY29u
dGFpbnMoJycpIGlzIGZhbHNlCitQQVNTIGRiLm9iamVjdFN0b3JlTmFtZXMuY29udGFpbnMoJ3Rl
c3Q0NTYnKSBpcyBmYWxzZQorUEFTUyBkYi5vYmplY3RTdG9yZU5hbWVzLmNvbnRhaW5zKCd0ZXN0
MTIzJykgaXMgdHJ1ZQogZGIuY3JlYXRlT2JqZWN0U3RvcmUoInRlc3Q0NTYiKQogc2V0VmVyc2lv
blRyYW5zID0gZXZlbnQucmVzdWx0CiBQQVNTIHNldFZlcnNpb25UcmFucyAhPT0gbnVsbCBpcyB0
cnVlCiBQQVNTIGRiLnZlcnNpb24gaXMgInZlcnNpb24gYiIKLVBBU1MgZGIub2JqZWN0U3RvcmVz
IGlzIFsndGVzdDEyMyddCi1QQVNTIGRiLm9iamVjdFN0b3Jlcy5sZW5ndGggaXMgMQotUEFTUyBk
Yi5vYmplY3RTdG9yZXMuY29udGFpbnMoJycpIGlzIGZhbHNlCi1QQVNTIGRiLm9iamVjdFN0b3Jl
cy5jb250YWlucygndGVzdDQ1NicpIGlzIGZhbHNlCi1QQVNTIGRiLm9iamVjdFN0b3Jlcy5jb250
YWlucygndGVzdDEyMycpIGlzIHRydWUKK1BBU1MgZGIub2JqZWN0U3RvcmVOYW1lcyBpcyBbJ3Rl
c3QxMjMnXQorUEFTUyBkYi5vYmplY3RTdG9yZU5hbWVzLmxlbmd0aCBpcyAxCitQQVNTIGRiLm9i
amVjdFN0b3JlTmFtZXMuY29udGFpbnMoJycpIGlzIGZhbHNlCitQQVNTIGRiLm9iamVjdFN0b3Jl
TmFtZXMuY29udGFpbnMoJ3Rlc3Q0NTYnKSBpcyBmYWxzZQorUEFTUyBkYi5vYmplY3RTdG9yZU5h
bWVzLmNvbnRhaW5zKCd0ZXN0MTIzJykgaXMgdHJ1ZQogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdl
L2luZGV4ZWRkYi9kYXRhYmFzZS1iYXNpY3MuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5k
ZXhlZGRiL2RhdGFiYXNlLWJhc2ljcy5odG1sCmluZGV4IDMxYzg4N2I0Y2YxOTAyOTBmNTY1NmVj
MWZhNjU4MTA5MzZmMGM5MzEuLjk1MmFlNmJkMmM4ZjBmZDNiMTRkNjYxYTYzODdlNDZjODgwM2Y5
MDIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLWJh
c2ljcy5odG1sCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLWJh
c2ljcy5odG1sCkBAIC02OCwxMSArNjgsMTEgQEAgZnVuY3Rpb24gY3JlYXRlT2JqZWN0U3RvcmUo
KQogICAgIHZlcmlmeVN1Y2Nlc3NFdmVudChldmVudCk7CiAgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJkYi52ZXJzaW9uIiwgInZlcnNpb24gYiIpOwogICAgIHNob3VsZEJlRXF1YWxUb1N0cmlu
ZygiZGIubmFtZSIsICJuYW1lIik7Ci0gICAgc2hvdWxkQmUoImRiLm9iamVjdFN0b3JlcyIsICJb
XSIpOwotICAgIHNob3VsZEJlKCJkYi5vYmplY3RTdG9yZXMubGVuZ3RoIiwgIjAiKTsKLSAgICBz
aG91bGRCZSgiZGIub2JqZWN0U3RvcmVzLmNvbnRhaW5zKCcnKSIsICJmYWxzZSIpOwotICAgIHNo
b3VsZEJlTnVsbCgiZGIub2JqZWN0U3RvcmVzWzBdIik7Ci0gICAgc2hvdWxkQmVOdWxsKCJkYi5v
YmplY3RTdG9yZXMuaXRlbSgwKSIpOworICAgIHNob3VsZEJlKCJkYi5vYmplY3RTdG9yZU5hbWVz
IiwgIltdIik7CisgICAgc2hvdWxkQmUoImRiLm9iamVjdFN0b3JlTmFtZXMubGVuZ3RoIiwgIjAi
KTsKKyAgICBzaG91bGRCZSgiZGIub2JqZWN0U3RvcmVOYW1lcy5jb250YWlucygnJykiLCAiZmFs
c2UiKTsKKyAgICBzaG91bGRCZU51bGwoImRiLm9iamVjdFN0b3JlTmFtZXNbMF0iKTsKKyAgICBz
aG91bGRCZU51bGwoImRiLm9iamVjdFN0b3JlTmFtZXMuaXRlbSgwKSIpOwogCiAgICAgb2JqZWN0
U3RvcmUgPSBldmFsQW5kTG9nKCdkYi5jcmVhdGVPYmplY3RTdG9yZSgidGVzdDEyMyIpJyk7CiAg
ICAgY2hlY2tPYmplY3RTdG9yZSgpOwpAQCAtODEsMTEgKzgxLDExIEBAIGZ1bmN0aW9uIGNyZWF0
ZU9iamVjdFN0b3JlKCkKIAogZnVuY3Rpb24gY2hlY2tPYmplY3RTdG9yZSgpCiB7Ci0gICAgc2hv
dWxkQmUoImRiLm9iamVjdFN0b3JlcyIsICJbJ3Rlc3QxMjMnXSIpOwotICAgIHNob3VsZEJlKCJk
Yi5vYmplY3RTdG9yZXMubGVuZ3RoIiwgIjEiKTsKLSAgICBzaG91bGRCZSgiZGIub2JqZWN0U3Rv
cmVzLmNvbnRhaW5zKCcnKSIsICJmYWxzZSIpOwotICAgIHNob3VsZEJlKCJkYi5vYmplY3RTdG9y
ZXMuY29udGFpbnMoJ3Rlc3Q0NTYnKSIsICJmYWxzZSIpOwotICAgIHNob3VsZEJlKCJkYi5vYmpl
Y3RTdG9yZXMuY29udGFpbnMoJ3Rlc3QxMjMnKSIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoImRi
Lm9iamVjdFN0b3JlTmFtZXMiLCAiWyd0ZXN0MTIzJ10iKTsKKyAgICBzaG91bGRCZSgiZGIub2Jq
ZWN0U3RvcmVOYW1lcy5sZW5ndGgiLCAiMSIpOworICAgIHNob3VsZEJlKCJkYi5vYmplY3RTdG9y
ZU5hbWVzLmNvbnRhaW5zKCcnKSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJkYi5vYmplY3RT
dG9yZU5hbWVzLmNvbnRhaW5zKCd0ZXN0NDU2JykiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgi
ZGIub2JqZWN0U3RvcmVOYW1lcy5jb250YWlucygndGVzdDEyMycpIiwgInRydWUiKTsKIH0KIAog
ZnVuY3Rpb24gY29tbWl0QW5kQ29udGludWUoKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3Rv
cmFnZS9pbmRleGVkZGIvZGF0YWJhc2UtcXVvdGEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
c3RvcmFnZS9pbmRleGVkZGIvZGF0YWJhc2UtcXVvdGEtZXhwZWN0ZWQudHh0CmluZGV4IDkxZDNh
YzdmZTJhNTliMzcwNTk2N2YyYzUxZTVhYzgxNmU5YWRiMzYuLjBjMmQxMTYzNTVjNjE4ODIzNDUy
MmQyMDYxNGYzMzMzOTZhM2M3YzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5k
ZXhlZGRiL2RhdGFiYXNlLXF1b3RhLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdG9y
YWdlL2luZGV4ZWRkYi9kYXRhYmFzZS1xdW90YS1leHBlY3RlZC50eHQKQEAgLTU1LDE1ICs1NSwx
NSBAQCBQQVNTIGV2ZW50LnRhcmdldC5yZWFkeVN0YXRlIGlzIGV2ZW50LnRhcmdldC5ET05FCiAK
IFBBU1MgZGIudmVyc2lvbiBpcyAibmV3IHZlcnNpb24iCiBQQVNTIGRiLm5hbWUgaXMgIm5hbWUi
Ci1QQVNTIGRiLm9iamVjdFN0b3JlcyBpcyBbXQotUEFTUyBkYi5vYmplY3RTdG9yZXMubGVuZ3Ro
IGlzIDAKLVBBU1MgZGIub2JqZWN0U3RvcmVzLmNvbnRhaW5zKCcnKSBpcyBmYWxzZQorUEFTUyBk
Yi5vYmplY3RTdG9yZU5hbWVzIGlzIFtdCitQQVNTIGRiLm9iamVjdFN0b3JlTmFtZXMubGVuZ3Ro
IGlzIDAKK1BBU1MgZGIub2JqZWN0U3RvcmVOYW1lcy5jb250YWlucygnJykgaXMgZmFsc2UKIGRi
LmNyZWF0ZU9iamVjdFN0b3JlKCJ0ZXN0MTIzIikKLVBBU1MgZGIub2JqZWN0U3RvcmVzIGlzIFsn
dGVzdDEyMyddCi1QQVNTIGRiLm9iamVjdFN0b3Jlcy5sZW5ndGggaXMgMQotUEFTUyBkYi5vYmpl
Y3RTdG9yZXMuY29udGFpbnMoJycpIGlzIGZhbHNlCi1QQVNTIGRiLm9iamVjdFN0b3Jlcy5jb250
YWlucygndGVzdDQ1NicpIGlzIGZhbHNlCi1QQVNTIGRiLm9iamVjdFN0b3Jlcy5jb250YWlucygn
dGVzdDEyMycpIGlzIHRydWUKK1BBU1MgZGIub2JqZWN0U3RvcmVOYW1lcyBpcyBbJ3Rlc3QxMjMn
XQorUEFTUyBkYi5vYmplY3RTdG9yZU5hbWVzLmxlbmd0aCBpcyAxCitQQVNTIGRiLm9iamVjdFN0
b3JlTmFtZXMuY29udGFpbnMoJycpIGlzIGZhbHNlCitQQVNTIGRiLm9iamVjdFN0b3JlTmFtZXMu
Y29udGFpbnMoJ3Rlc3Q0NTYnKSBpcyBmYWxzZQorUEFTUyBkYi5vYmplY3RTdG9yZU5hbWVzLmNv
bnRhaW5zKCd0ZXN0MTIzJykgaXMgdHJ1ZQogdHJhbnMgPSBkYi50cmFuc2FjdGlvbigpCiBDcmVh
dGluZyAnZGF0YScgd2hpY2ggY29udGFpbnMgNjRLIG9mIGRhdGEKIFBBU1MgZGF0YS5sZW5ndGgg
aXMgNjU1MzYKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFi
YXNlLXF1b3RhLmh0bWwgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS1x
dW90YS5odG1sCmluZGV4IGFlZmU2YjExODIzYTI3YWE4MzI2ODRlYjgwZDk1NTg5MjU0N2IyOTAu
LmMwMGE0MWRjODQwNDNjNjY4MmIzNDI5MjIyNzhlNzUwNWQwYTg2OTYgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXF1b3RhLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGF0YWJhc2UtcXVvdGEuaHRtbApAQCAtNDksOSAr
NDksOSBAQCBmdW5jdGlvbiBjcmVhdGVOZXdPYmplY3RTdG9yZSgpCiAgICAgdmVyaWZ5U3VjY2Vz
c0V2ZW50KGV2ZW50KTsKICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImRiLnZlcnNpb24iLCAi
bmV3IHZlcnNpb24iKTsKICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImRiLm5hbWUiLCAibmFt
ZSIpOwotICAgIHNob3VsZEJlKCJkYi5vYmplY3RTdG9yZXMiLCAiW10iKTsKLSAgICBzaG91bGRC
ZSgiZGIub2JqZWN0U3RvcmVzLmxlbmd0aCIsICIwIik7Ci0gICAgc2hvdWxkQmUoImRiLm9iamVj
dFN0b3Jlcy5jb250YWlucygnJykiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgiZGIub2JqZWN0
U3RvcmVOYW1lcyIsICJbXSIpOworICAgIHNob3VsZEJlKCJkYi5vYmplY3RTdG9yZU5hbWVzLmxl
bmd0aCIsICIwIik7CisgICAgc2hvdWxkQmUoImRiLm9iamVjdFN0b3JlTmFtZXMuY29udGFpbnMo
JycpIiwgImZhbHNlIik7CiAKICAgICBvYmplY3RTdG9yZSA9IGV2YWxBbmRMb2coJ2RiLmNyZWF0
ZU9iamVjdFN0b3JlKCJ0ZXN0MTIzIiknKTsNCiAgICAgY2hlY2tPYmplY3RTdG9yZSgpOw0KQEAg
LTYwLDExICs2MCwxMSBAQCBmdW5jdGlvbiBjcmVhdGVOZXdPYmplY3RTdG9yZSgpCiAKIGZ1bmN0
aW9uIGNoZWNrT2JqZWN0U3RvcmUoKQogewotICAgIHNob3VsZEJlKCJkYi5vYmplY3RTdG9yZXMi
LCAiWyd0ZXN0MTIzJ10iKTsKLSAgICBzaG91bGRCZSgiZGIub2JqZWN0U3RvcmVzLmxlbmd0aCIs
ICIxIik7Ci0gICAgc2hvdWxkQmUoImRiLm9iamVjdFN0b3Jlcy5jb250YWlucygnJykiLCAiZmFs
c2UiKTsKLSAgICBzaG91bGRCZSgiZGIub2JqZWN0U3RvcmVzLmNvbnRhaW5zKCd0ZXN0NDU2Jyki
LCAiZmFsc2UiKTsKLSAgICBzaG91bGRCZSgiZGIub2JqZWN0U3RvcmVzLmNvbnRhaW5zKCd0ZXN0
MTIzJykiLCAidHJ1ZSIpOw0KKyAgICBzaG91bGRCZSgiZGIub2JqZWN0U3RvcmVOYW1lcyIsICJb
J3Rlc3QxMjMnXSIpOworICAgIHNob3VsZEJlKCJkYi5vYmplY3RTdG9yZU5hbWVzLmxlbmd0aCIs
ICIxIik7CisgICAgc2hvdWxkQmUoImRiLm9iamVjdFN0b3JlTmFtZXMuY29udGFpbnMoJycpIiwg
ImZhbHNlIik7CisgICAgc2hvdWxkQmUoImRiLm9iamVjdFN0b3JlTmFtZXMuY29udGFpbnMoJ3Rl
c3Q0NTYnKSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJkYi5vYmplY3RTdG9yZU5hbWVzLmNv
bnRhaW5zKCd0ZXN0MTIzJykiLCAidHJ1ZSIpOw0KIH0NCiANCiBmdW5jdGlvbiBjb21taXRBbmRD
b250aW51ZSgpDQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2Jq
ZWN0c3RvcmUtYmFzaWNzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhl
ZGRiL29iamVjdHN0b3JlLWJhc2ljcy1leHBlY3RlZC50eHQKaW5kZXggZGVjZDM2Y2YzMDQ1NjBj
ZDc4YTZjMGI2YjIyMWM0NjdkMTE0ZWU4Zi4uMDM4ZjAzYTQ2N2Q1MmZjMzkyYTc2YzRhN2E5MzI2
NTUxMTk4ZWExMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2Jq
ZWN0c3RvcmUtYmFzaWNzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9vYmplY3RzdG9yZS1iYXNpY3MtZXhwZWN0ZWQudHh0CkBAIC00NSw3ICs0NSw3IEBA
IFBBU1MgdHJhbnMgIT09IG51bGwgaXMgdHJ1ZQogRGVsZXRlZCBhbGwgb2JqZWN0IHN0b3Jlcy4K
IGNyZWF0ZU9iamVjdFN0b3JlKCk6CiBzdG9yZSA9IGRiLmNyZWF0ZU9iamVjdFN0b3JlKCdzdG9y
ZU5hbWUnLCBudWxsKQotc3RvcmVOYW1lcyA9IGRiLm9iamVjdFN0b3Jlcworc3RvcmVOYW1lcyA9
IGRiLm9iamVjdFN0b3JlTmFtZXMKIFBBU1Mgc3RvcmUubmFtZSBpcyAic3RvcmVOYW1lIgogUEFT
UyBzdG9yZS5rZXlQYXRoIGlzIG51bGwKIFBBU1Mgc3RvcmVOYW1lcy5jb250YWlucygnc3RvcmVO
YW1lJykgaXMgdHJ1ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIv
b2JqZWN0c3RvcmUtYmFzaWNzLmh0bWwgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9v
YmplY3RzdG9yZS1iYXNpY3MuaHRtbAppbmRleCA1ZmY1MGMyZDI4ZGYzODc4ZTFiMTQyMWEyMTM2
YmEzOGE0NWY4MTU5Li5iM2Y0NTliMTdmYzU4ZWQwN2M4NWY2NjBjOTZjOGVlOWI4MTVkNDcwIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1iYXNp
Y3MuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1i
YXNpY3MuaHRtbApAQCAtNDksNyArNDksNyBAQCBmdW5jdGlvbiBjcmVhdGVPYmplY3RTdG9yZSgp
CiB7CiAgICAgZGVidWcoImNyZWF0ZU9iamVjdFN0b3JlKCk6Iik7CiAgICAgd2luZG93LnN0b3Jl
ID0gZXZhbEFuZExvZygic3RvcmUgPSBkYi5jcmVhdGVPYmplY3RTdG9yZSgnc3RvcmVOYW1lJywg
bnVsbCkiKTsKLSAgICB2YXIgc3RvcmVOYW1lcyA9IGV2YWxBbmRMb2coInN0b3JlTmFtZXMgPSBk
Yi5vYmplY3RTdG9yZXMiKTsKKyAgICB2YXIgc3RvcmVOYW1lcyA9IGV2YWxBbmRMb2coInN0b3Jl
TmFtZXMgPSBkYi5vYmplY3RTdG9yZU5hbWVzIik7CiAKICAgICBzaG91bGRCZUVxdWFsVG9TdHJp
bmcoInN0b3JlLm5hbWUiLCAic3RvcmVOYW1lIik7CiAgICAgc2hvdWxkQmVOdWxsKCJzdG9yZS5r
ZXlQYXRoIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNv
dXJjZXMvc2hhcmVkLmpzIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2Vz
L3NoYXJlZC5qcwppbmRleCAwMWVjNjA2NDUwODEzMDdmMWIwNDc1OGZjOGRlOGQ2MDYzNjgyNzBj
Li43MWFiZjQ0OWIzOGNiZGEyMTk0ODkwZTAwMGE2MTQ4YTc5YmE4NzAyIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvc2hhcmVkLmpzCisrKyBiL0xh
eW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9zaGFyZWQuanMKQEAgLTkwLDgg
KzkwLDggQEAgZnVuY3Rpb24gdW5leHBlY3RlZENvbXBsZXRlQ2FsbGJhY2soKQogLy8gRklYTUU6
IHJlbW92ZSB0aGUgb25maW5pc2hlZCBwYXJhbWV0ZXIuCiBmdW5jdGlvbiBkZWxldGVBbGxPYmpl
Y3RTdG9yZXMoZGIsIG9uZmluaXNoZWQpCiB7Ci0gICAgd2hpbGUgKGRiLm9iamVjdFN0b3Jlcy5s
ZW5ndGgpCi0gICAgICAgIGRiLnJlbW92ZU9iamVjdFN0b3JlKGRiLm9iamVjdFN0b3Jlcy5pdGVt
KDApKTsKKyAgICB3aGlsZSAoZGIub2JqZWN0U3RvcmVOYW1lcy5sZW5ndGgpCisgICAgICAgIGRi
LnJlbW92ZU9iamVjdFN0b3JlKGRiLm9iamVjdFN0b3JlTmFtZXMuaXRlbSgwKSk7CiAKICAgICBk
ZWJ1ZygiRGVsZXRlZCBhbGwgb2JqZWN0IHN0b3Jlcy4iKTsKICAgICBvbmZpbmlzaGVkKCk7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1iYXNp
Y3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvdHJhbnNhY3Rp
b24tYmFzaWNzLWV4cGVjdGVkLnR4dAppbmRleCBiNDkzOTQ2NGQzZDFjYzBlMDQzYjgwMTkyMjA4
ZTQ3NjhkNDk1ZmM1Li5hOWZmMzY4NzZjNDliNmI5ZDliY2YzMTQwY2RjZjY2YjUyYTE4MzM1IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1iYXNp
Y3MtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3RyYW5z
YWN0aW9uLWJhc2ljcy1leHBlY3RlZC50eHQKQEAgLTM3LDEyICszNywxMiBAQCBQQVNTICdyZWFk
eVN0YXRlJyBpbiBldmVudC50YXJnZXQgaXMgdHJ1ZQogUEFTUyBldmVudC50YXJnZXQucmVhZHlT
dGF0ZSBpcyBldmVudC50YXJnZXQuRE9ORQogCiBEZWxldGVkIGFsbCBvYmplY3Qgc3RvcmVzLgot
UEFTUyB3aW5kb3cuZGIub2JqZWN0U3RvcmVzIGlzIFtdCi1QQVNTIHdpbmRvdy5kYi5vYmplY3RT
dG9yZXMubGVuZ3RoIGlzIDAKLVBBU1Mgd2luZG93LmRiLm9iamVjdFN0b3Jlcy5jb250YWlucygn
c3RvcmVGYWlsJykgaXMgZmFsc2UKLVBBU1Mgd2luZG93LmRiLm9iamVjdFN0b3JlcyBpcyBbXQot
UEFTUyB3aW5kb3cuZGIub2JqZWN0U3RvcmVzLmxlbmd0aCBpcyAwCi1QQVNTIHdpbmRvdy5kYi5v
YmplY3RTdG9yZXMuY29udGFpbnMoJ3N0b3JlRmFpbCcpIGlzIGZhbHNlCitQQVNTIHdpbmRvdy5k
Yi5vYmplY3RTdG9yZU5hbWVzIGlzIFtdCitQQVNTIHdpbmRvdy5kYi5vYmplY3RTdG9yZU5hbWVz
Lmxlbmd0aCBpcyAwCitQQVNTIHdpbmRvdy5kYi5vYmplY3RTdG9yZU5hbWVzLmNvbnRhaW5zKCdz
dG9yZUZhaWwnKSBpcyBmYWxzZQorUEFTUyB3aW5kb3cuZGIub2JqZWN0U3RvcmVOYW1lcyBpcyBb
XQorUEFTUyB3aW5kb3cuZGIub2JqZWN0U3RvcmVOYW1lcy5sZW5ndGggaXMgMAorUEFTUyB3aW5k
b3cuZGIub2JqZWN0U3RvcmVOYW1lcy5jb250YWlucygnc3RvcmVGYWlsJykgaXMgZmFsc2UKIHJl
c3VsdCA9IHN0YXJ0U2V0VmVyc2lvbigndmVyc2lvbiBmYWlsJykKIFBBU1MgJ29uc3VjY2Vzcycg
aW4gcmVzdWx0IGlzIHRydWUKIFBBU1MgJ29uZXJyb3InIGluIHJlc3VsdCBpcyB0cnVlCkBAIC02
Nyw5ICs2Nyw5IEBAIHN0b3JlID0gZGIuY3JlYXRlT2JqZWN0U3RvcmUoJ3N0b3JlRmFpbCcsIG51
bGwpCiBpbmRleCA9IHN0b3JlLmNyZWF0ZUluZGV4KCdpbmRleEZhaWwnLCAneCcsIGZhbHNlKQog
ZGIucmVtb3ZlT2JqZWN0U3RvcmUoJ3N0b3JlRmFpbCcpCiBzdG9yZS5yZW1vdmVJbmRleCgnaW5k
ZXhGYWlsJykKLVBBU1Mgd2luZG93LmRiLm9iamVjdFN0b3JlcyBpcyBbXQotUEFTUyB3aW5kb3cu
ZGIub2JqZWN0U3RvcmVzLmxlbmd0aCBpcyAwCi1QQVNTIHdpbmRvdy5kYi5vYmplY3RTdG9yZXMu
Y29udGFpbnMoJ3N0b3JlRmFpbCcpIGlzIGZhbHNlCitQQVNTIHdpbmRvdy5kYi5vYmplY3RTdG9y
ZU5hbWVzIGlzIFtdCitQQVNTIHdpbmRvdy5kYi5vYmplY3RTdG9yZU5hbWVzLmxlbmd0aCBpcyAw
CitQQVNTIHdpbmRvdy5kYi5vYmplY3RTdG9yZU5hbWVzLmNvbnRhaW5zKCdzdG9yZUZhaWwnKSBp
cyBmYWxzZQogcmVzdWx0ID0gc3RhcnRTZXRWZXJzaW9uKCd2ZXJzaW9uIGZhaWwnKQogUEFTUyAn
b25zdWNjZXNzJyBpbiByZXN1bHQgaXMgdHJ1ZQogUEFTUyAnb25lcnJvcicgaW4gcmVzdWx0IGlz
IHRydWUKQEAgLTk2LDkgKzk2LDkgQEAgZGIucmVtb3ZlT2JqZWN0U3RvcmUoJ3N0b3JlRmFpbCcp
CiBzdG9yZS5yZW1vdmVJbmRleCgnaW5kZXhGYWlsJykKIHN0b3JlID0gZGIuY3JlYXRlT2JqZWN0
U3RvcmUoJ3N0b3JlRmFpbCcsIG51bGwpCiBpbmRleCA9IHN0b3JlLmNyZWF0ZUluZGV4KCdpbmRl
eEZhaWwnLCAneCcsIGZhbHNlKQotUEFTUyB3aW5kb3cuZGIub2JqZWN0U3RvcmVzIGlzIFtdCi1Q
QVNTIHdpbmRvdy5kYi5vYmplY3RTdG9yZXMubGVuZ3RoIGlzIDAKLVBBU1Mgd2luZG93LmRiLm9i
amVjdFN0b3Jlcy5jb250YWlucygnc3RvcmVGYWlsJykgaXMgZmFsc2UKK1BBU1Mgd2luZG93LmRi
Lm9iamVjdFN0b3JlTmFtZXMgaXMgW10KK1BBU1Mgd2luZG93LmRiLm9iamVjdFN0b3JlTmFtZXMu
bGVuZ3RoIGlzIDAKK1BBU1Mgd2luZG93LmRiLm9iamVjdFN0b3JlTmFtZXMuY29udGFpbnMoJ3N0
b3JlRmFpbCcpIGlzIGZhbHNlCiByZXN1bHQgPSBzdGFydFNldFZlcnNpb24oJ3ZlcnNpb24gZmFp
bCcpCiBQQVNTICdvbnN1Y2Nlc3MnIGluIHJlc3VsdCBpcyB0cnVlCiBQQVNTICdvbmVycm9yJyBp
biByZXN1bHQgaXMgdHJ1ZQpAQCAtMTIxLDkgKzEyMSw5IEBAIHRyYW5zID0gZXZlbnQucmVzdWx0
CiBQQVNTIHRyYW5zICE9PSBudWxsIGlzIHRydWUKIHN0b3JlID0gZGIuY3JlYXRlT2JqZWN0U3Rv
cmUoJ3N0b3JlRmFpbCcsIG51bGwpCiBpbmRleCA9IHN0b3JlLmNyZWF0ZUluZGV4KCdpbmRleEZh
aWwnLCAneCcsIGZhbHNlKQotUEFTUyBkYi5vYmplY3RTdG9yZXMgaXMgWydzdG9yZUZhaWwnXQot
UEFTUyBkYi5vYmplY3RTdG9yZXMubGVuZ3RoIGlzIDEKLVBBU1MgZGIub2JqZWN0U3RvcmVzLmNv
bnRhaW5zKCdzdG9yZUZhaWwnKSBpcyB0cnVlCitQQVNTIGRiLm9iamVjdFN0b3JlTmFtZXMgaXMg
WydzdG9yZUZhaWwnXQorUEFTUyBkYi5vYmplY3RTdG9yZU5hbWVzLmxlbmd0aCBpcyAxCitQQVNT
IGRiLm9iamVjdFN0b3JlTmFtZXMuY29udGFpbnMoJ3N0b3JlRmFpbCcpIGlzIHRydWUKIHJlc3Vs
dCA9IHN0YXJ0U2V0VmVyc2lvbigndmVyc2lvbiBmYWlsJykKIFBBU1MgJ29uc3VjY2VzcycgaW4g
cmVzdWx0IGlzIHRydWUKIFBBU1MgJ29uZXJyb3InIGluIHJlc3VsdCBpcyB0cnVlCkBAIC0xNDcs
OSArMTQ3LDkgQEAgUEFTUyB0cmFucyAhPT0gbnVsbCBpcyB0cnVlCiBzdG9yZSA9IHRyYW5zLm9i
amVjdFN0b3JlKCdzdG9yZUZhaWwnKQogc3RvcmUucmVtb3ZlSW5kZXgoJ2luZGV4RmFpbCcpCiBk
Yi5yZW1vdmVPYmplY3RTdG9yZSgnc3RvcmVGYWlsJykKLVBBU1MgZGIub2JqZWN0U3RvcmVzIGlz
IFsnc3RvcmVGYWlsJ10KLVBBU1MgZGIub2JqZWN0U3RvcmVzLmxlbmd0aCBpcyAxCi1QQVNTIGRi
Lm9iamVjdFN0b3Jlcy5jb250YWlucygnc3RvcmVGYWlsJykgaXMgdHJ1ZQorUEFTUyBkYi5vYmpl
Y3RTdG9yZU5hbWVzIGlzIFsnc3RvcmVGYWlsJ10KK1BBU1MgZGIub2JqZWN0U3RvcmVOYW1lcy5s
ZW5ndGggaXMgMQorUEFTUyBkYi5vYmplY3RTdG9yZU5hbWVzLmNvbnRhaW5zKCdzdG9yZUZhaWwn
KSBpcyB0cnVlCiBkYi5zZXRWZXJzaW9uKCduZXcgdmVyc2lvbicpCiBQQVNTICdvbnN1Y2Nlc3Mn
IGluIHJlc3VsdCBpcyB0cnVlCiBQQVNTICdvbmVycm9yJyBpbiByZXN1bHQgaXMgdHJ1ZQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvdHJhbnNhY3Rpb24tYmFzaWNz
Lmh0bWwgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1iYXNpY3Mu
aHRtbAppbmRleCAwN2ZjNjg1YjYwMmYwMjA2MjU0NzAwNWQ3MGFlMzQ0MWM4NDg0YjllLi44YWQw
MDU2ZmMxNzNjM2M3YmZmYjVmZDI4YzcwOWZlOGRkNmJkOThjIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1iYXNpY3MuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi90cmFuc2FjdGlvbi1iYXNpY3MuaHRtbApAQCAtMTgy
LDE2ICsxODIsMTYgQEAgZnVuY3Rpb24gc3RhcnRTZXRWZXJzaW9uKHZlcnNpb25OYW1lKQogDQog
ZnVuY3Rpb24gY2hlY2tNZXRhZGF0YUVtcHR5KCkNCiB7DQotICAgIHNob3VsZEJlKCJ3aW5kb3cu
ZGIub2JqZWN0U3RvcmVzIiwgIltdIik7DQotICAgIHNob3VsZEJlKCJ3aW5kb3cuZGIub2JqZWN0
U3RvcmVzLmxlbmd0aCIsICIwIik7DQotICAgIHNob3VsZEJlKCJ3aW5kb3cuZGIub2JqZWN0U3Rv
cmVzLmNvbnRhaW5zKCdzdG9yZUZhaWwnKSIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJ3aW5k
b3cuZGIub2JqZWN0U3RvcmVOYW1lcyIsICJbXSIpOw0KKyAgICBzaG91bGRCZSgid2luZG93LmRi
Lm9iamVjdFN0b3JlTmFtZXMubGVuZ3RoIiwgIjAiKTsNCisgICAgc2hvdWxkQmUoIndpbmRvdy5k
Yi5vYmplY3RTdG9yZU5hbWVzLmNvbnRhaW5zKCdzdG9yZUZhaWwnKSIsICJmYWxzZSIpOwogfQ0K
IA0KIGZ1bmN0aW9uIGNoZWNrTWV0YWRhdGFFeGlzdGluZ09iamVjdFN0b3JlKCkNCiB7DQotICAg
IHNob3VsZEJlKCJkYi5vYmplY3RTdG9yZXMiLCAiWydzdG9yZUZhaWwnXSIpOw0KLSAgICBzaG91
bGRCZSgiZGIub2JqZWN0U3RvcmVzLmxlbmd0aCIsICIxIik7DQotICAgIHNob3VsZEJlKCJkYi5v
YmplY3RTdG9yZXMuY29udGFpbnMoJ3N0b3JlRmFpbCcpIiwgInRydWUiKTsNCisgICAgc2hvdWxk
QmUoImRiLm9iamVjdFN0b3JlTmFtZXMiLCAiWydzdG9yZUZhaWwnXSIpOw0KKyAgICBzaG91bGRC
ZSgiZGIub2JqZWN0U3RvcmVOYW1lcy5sZW5ndGgiLCAiMSIpOw0KKyAgICBzaG91bGRCZSgiZGIu
b2JqZWN0U3RvcmVOYW1lcy5jb250YWlucygnc3RvcmVGYWlsJykiLCAidHJ1ZSIpOw0KIH0KIAog
ZnVuY3Rpb24gc2V0TmV3VmVyc2lvbigpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdl
L2luZGV4ZWRkYi90dXRvcmlhbC5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIv
dHV0b3JpYWwuaHRtbAppbmRleCAzNTc4ODQ4NWFkOTI0Njk0NWFhMjM4Y2MyMWNmNDU5Y2E4YWI0
MTAxLi5iM2QxZTk0MmNmOTdlMmZiZDQ2NjJmZGZlYWM4Mjk5MWQwMmUwOWMxIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi90dXRvcmlhbC5odG1sCisrKyBiL0xheW91
dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3R1dG9yaWFsLmh0bWwKQEAgLTEyMSw4ICsxMjEsOCBA
QCBmdW5jdGlvbiBvblNldFZlcnNpb24oKQogICAgIGN1cnJlbnRUcmFuc2FjdGlvbi5vbmFib3J0
ID0gdW5leHBlY3RlZEFib3J0OwogCiAgICAgLy8gRGVsZXRlIGV4aXN0aW5nIG9iamVjdCBzdG9y
ZXMuCi0gICAgd2hpbGUgKGRiLm9iamVjdFN0b3Jlcy5sZW5ndGgpCi0gICAgICAgIGRiLnJlbW92
ZU9iamVjdFN0b3JlKGRiLm9iamVjdFN0b3Jlc1swXSk7CisgICAgd2hpbGUgKGRiLm9iamVjdFN0
b3JlTmFtZXMubGVuZ3RoKQorICAgICAgICBkYi5yZW1vdmVPYmplY3RTdG9yZShkYi5vYmplY3RT
dG9yZU5hbWVzWzBdKTsKIAogICAgIC8vIE5vdyB0aGF0IHdlIGhhdmUgYSBibGFuayBzbGF0ZSwg
bGV0J3MgY3JlYXRlIGFuIG9iamVjdFN0b3JlLiBBbiBvYmplY3RTdG9yZSBpcyBzaW1wbHkgYW4K
ICAgICAvLyBvcmRlcmVkIG1hcHBpbmcgb2Yga2V5cyB0byB2YWx1ZXMuIFdlIGNhbiBpdGVyYXRl
IHRocm91Z2ggcmFuZ2VzIG9mIGtleXMgb3IgZG8gaW5kaXZpZHVhbApAQCAtMjI3LDkgKzIyNyw5
IEBAIGZ1bmN0aW9uIG9uU2V0VmVyc2lvbkNvbXBsZXRlKCkKICAgICBjdXJyZW50VHJhbnNhY3Rp
b24ub25jb21wbGV0ZSA9IHVuZXhwZWN0ZWRDb21wbGV0ZTsKICAgICBjdXJyZW50VHJhbnNhY3Rp
b24ub25hYm9ydCA9IG9uVHJhbnNhY3Rpb25BYm9ydGVkOwogCi0gICAgLy8gVmVyaWZ5IHRoYXQg
InBlb3BsZSIgaXMgdGhlIG9ubHkgb2JqZWN0IHN0b3JlIGluIGV4aXN0YW5jZS4gVGhlIG9iamVj
dFN0b3JlcyBhdHRyaWJ1dGUgaXMKKyAgICAvLyBWZXJpZnkgdGhhdCAicGVvcGxlIiBpcyB0aGUg
b25seSBvYmplY3Qgc3RvcmUgaW4gZXhpc3RhbmNlLiBUaGUgb2JqZWN0U3RvcmVOYW1lcyBhdHRy
aWJ1dGUgaXMKICAgICAvLyBhIERPTVN0cmluZ0xpc3Qgd2hpY2ggaXMgc29tZXdoYXQgbGlrZSBh
biBhcnJheS4KLSAgICB2YXIgb2JqZWN0U3RvcmVMaXN0ID0gZGIub2JqZWN0U3RvcmVzOworICAg
IHZhciBvYmplY3RTdG9yZUxpc3QgPSBkYi5vYmplY3RTdG9yZU5hbWVzOwogICAgIGlmIChvYmpl
Y3RTdG9yZUxpc3QubGVuZ3RoICE9IDEKICAgICAgICAgfHwgIW9iamVjdFN0b3JlTGlzdC5jb250
YWlucygicGVvcGxlIikKICAgICAgICAgfHwgb2JqZWN0U3RvcmVMaXN0Lml0ZW0oMCkgIT0gInBl
b3BsZSIKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cK
aW5kZXggNDdjNWU3MmU4NDZjZWQ1Y2YzZDI5OGZhMTRlMWQwOTdmMGI4YWQ1Zi4uMGVjNjQ2NmY1
Yzc4YmM2MmFiY2RmNTI5Yjc4YTRmMGFkZmY5ZjdhNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFu
Z2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxMC0xMS0y
NiAgSGFucyBXZW5uYm9yZyAgPGhhbnNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEluZGV4ZWREQjogUmVuYW1lIElEQkRhdGFi
YXNlLm9iamVjdFN0b3JlcyB0byBvYmplY3RTdG9yZU5hbWVzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MDEwMgorCisgICAgICAgIFJlbmFtZSBhcyBw
ZXIgdGhlIHNwZWM6IGh0dHA6Ly9kdmNzLnczLm9yZy9oZy9JbmRleGVkREIvcmF3LWZpbGUvdGlw
L092ZXJ2aWV3Lmh0bWwjZGF0YWJhc2UtaW50ZXJmYWNlCisKKyAgICAgICAgKiBtYW51YWwtdGVz
dHMvaW5kZXhlZGRiLXBlcnNpc3RzLmh0bWw6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFz
ZS5oOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2U6Om9iamVjdFN0b3JlTmFtZXMpOgor
ICAgICAgICAqIHN0b3JhZ2UvSURCRGF0YWJhc2UuaWRsOgorICAgICAgICAqIHN0b3JhZ2UvSURC
RGF0YWJhc2VCYWNrZW5kSW1wbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZUJh
Y2tlbmRJbXBsOjpvYmplY3RTdG9yZU5hbWVzKToKKyAgICAgICAgKFdlYkNvcmU6OklEQkRhdGFi
YXNlQmFja2VuZEltcGw6OnNldFZlcnNpb24pOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJh
c2VCYWNrZW5kSW1wbDo6dHJhbnNhY3Rpb24pOgorICAgICAgICAqIHN0b3JhZ2UvSURCRGF0YWJh
c2VCYWNrZW5kSW1wbC5oOgorICAgICAgICAqIHN0b3JhZ2UvSURCRGF0YWJhc2VCYWNrZW5kSW50
ZXJmYWNlLmg6CisKIDIwMTAtMTEtMjUgIEtlbmljaGkgSXNoaWJhc2hpICA8YmFzaGlAZ29vZ2xl
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW50IFRhbXVyYS4KZGlmZiAtLWdpdCBhL1dl
YkNvcmUvbWFudWFsLXRlc3RzL2luZGV4ZWRkYi1wZXJzaXN0cy5odG1sIGIvV2ViQ29yZS9tYW51
YWwtdGVzdHMvaW5kZXhlZGRiLXBlcnNpc3RzLmh0bWwKaW5kZXggNmY1ZTAzNmRkNWZlMzUyYjNi
Mzk3ZWEyOGEzZTJjNDY1NzY5ZmQ4ZS4uZDgwNjFlMWJjYzc0Y2ZmMmY2YTMyZTMzNmRmYTkwYThm
OTcyNDljNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9tYW51YWwtdGVzdHMvaW5kZXhlZGRiLXBlcnNp
c3RzLmh0bWwKKysrIGIvV2ViQ29yZS9tYW51YWwtdGVzdHMvaW5kZXhlZGRiLXBlcnNpc3RzLmh0
bWwKQEAgLTMzLDggKzMzLDggQEAgZnVuY3Rpb24gc2V0RGF0YSgpCiAgICAgd2Via2l0SW5kZXhl
ZERCLm9wZW4oInNvbWVEQiIsICJzb21lIGRlc2NyaXB0aW9uIikub25zdWNjZXNzID0gZnVuY3Rp
b24oKSB7CiAgICAgICAgIGV2ZW50LnJlc3VsdC5zZXRWZXJzaW9uKCJzb21lIHZlcnNpb24iKS5v
bnN1Y2Nlc3MgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgIHZhciBkYiA9IGV2ZW50LnNvdXJj
ZTsKLSAgICAgICAgICAgIHdoaWxlIChkYi5vYmplY3RTdG9yZXMubGVuZ3RoKQotICAgICAgICAg
ICAgICAgIGRiLnJlbW92ZU9iamVjdFN0b3JlKGRiLm9iamVjdFN0b3Jlc1swXSk7CisgICAgICAg
ICAgICB3aGlsZSAoZGIub2JqZWN0U3RvcmVOYW1lcy5sZW5ndGgpCisgICAgICAgICAgICAgICAg
ZGIucmVtb3ZlT2JqZWN0U3RvcmUoZGIub2JqZWN0U3RvcmVOYW1lc1swXSk7CiAgICAgICAgICAg
ICBkYi5jcmVhdGVPYmplY3RTdG9yZSgidGVzdCIpLnB1dCgidmFsdWUiLCAia2V5Iikub25zdWNj
ZXNzID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgc3RhdHVzKCJWYWx1ZSBzZXQiLCAi
Z3JlZW4iKTsKICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3RvcmFnZS9JREJE
YXRhYmFzZS5oIGIvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlLmgKaW5kZXggM2UzMzQ3MmIy
ZWQwYzE4N2JiNmEwYzQyZWIxMDdhY2EwMGRlZjFlNC4uNzdmYTVkMDNjYjI4YjIxOGYwN2I2YWY0
NzA0MmY4MzU1YWQ4NWMxYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNl
LmgKKysrIGIvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlLmgKQEAgLTU3LDcgKzU3LDcgQEAg
cHVibGljOgogICAgIC8vIEltcGxlbWVudCB0aGUgSURMCiAgICAgU3RyaW5nIG5hbWUoKSBjb25z
dCB7IHJldHVybiBtX2JhY2tlbmQtPm5hbWUoKTsgfQogICAgIFN0cmluZyB2ZXJzaW9uKCkgY29u
c3QgeyByZXR1cm4gbV9iYWNrZW5kLT52ZXJzaW9uKCk7IH0KLSAgICBQYXNzUmVmUHRyPERPTVN0
cmluZ0xpc3Q+IG9iamVjdFN0b3JlcygpIGNvbnN0IHsgcmV0dXJuIG1fYmFja2VuZC0+b2JqZWN0
U3RvcmVzKCk7IH0KKyAgICBQYXNzUmVmUHRyPERPTVN0cmluZ0xpc3Q+IG9iamVjdFN0b3JlTmFt
ZXMoKSBjb25zdCB7IHJldHVybiBtX2JhY2tlbmQtPm9iamVjdFN0b3JlTmFtZXMoKTsgfQogCiAg
ICAgLy8gRklYTUU6IFRyeSB0byBtb2RpZnkgdGhlIGNvZGUgZ2VuZXJhdG9yIHNvIHRoaXMgaXMg
dW5uZWVkZWQuCiAgICAgUGFzc1JlZlB0cjxJREJPYmplY3RTdG9yZT4gY3JlYXRlT2JqZWN0U3Rv
cmUoY29uc3QgU3RyaW5nJiBuYW1lLCBFeGNlcHRpb25Db2RlJiBlYykgeyByZXR1cm4gY3JlYXRl
T2JqZWN0U3RvcmUobmFtZSwgT3B0aW9uc09iamVjdCgpLCBlYyk7IH0KZGlmZiAtLWdpdCBhL1dl
YkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZS5pZGwgYi9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJh
c2UuaWRsCmluZGV4IGIwOGQ0NTljNWY2ODgyOTdhYzU3ZDk3MTE3Yzc3ZjJjNjA4MjIzMWYuLjcw
ZDAwYTA4YzAyNTYzZDJhODA1ZDM3M2RiNTYxYTAxOTE4NGEyMzcgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvc3RvcmFnZS9JREJEYXRhYmFzZS5pZGwKKysrIGIvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFi
YXNlLmlkbApAQCAtMzAsNyArMzAsNyBAQCBtb2R1bGUgc3RvcmFnZSB7CiAgICAgXSBJREJEYXRh
YmFzZSB7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgbmFtZTsKICAgICAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyB2ZXJzaW9uOwotICAgICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgRE9NU3RyaW5nTGlzdCBvYmplY3RTdG9yZXM7CisgICAgICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBET01TdHJpbmdMaXN0IG9iamVjdFN0b3JlTmFtZXM7CiAKICAgICAgICAgSURC
T2JqZWN0U3RvcmUgY3JlYXRlT2JqZWN0U3RvcmUoaW4gRE9NU3RyaW5nIG5hbWUsIGluIFtPcHRp
b25hbF0gT3B0aW9uc09iamVjdCBvcHRpb25zKQogICAgICAgICAgICAgcmFpc2VzIChJREJEYXRh
YmFzZUV4Y2VwdGlvbik7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VC
YWNrZW5kSW1wbC5jcHAgYi9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VCYWNrZW5kSW1wbC5j
cHAKaW5kZXggMjY4MTkwMDAwOGI1NmQ0ZGVlYjQ0ZWQzNTA4MWZkZjgwOGFlZjMxMC4uMjNlZGVk
YTFmZjZiN2ZhYTg4MjJmYjViYWZiMTg1NWQwZTRjMjk0YiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9z
dG9yYWdlL0lEQkRhdGFiYXNlQmFja2VuZEltcGwuY3BwCisrKyBiL1dlYkNvcmUvc3RvcmFnZS9J
REJEYXRhYmFzZUJhY2tlbmRJbXBsLmNwcApAQCAtMTI4LDcgKzEyOCw3IEBAIFNRTGl0ZURhdGFi
YXNlJiBJREJEYXRhYmFzZUJhY2tlbmRJbXBsOjpzcWxpdGVEYXRhYmFzZSgpIGNvbnN0CiAgICAg
cmV0dXJuIG1fc3FsaXRlRGF0YWJhc2UtPmRiKCk7CiB9CiAKLVBhc3NSZWZQdHI8RE9NU3RyaW5n
TGlzdD4gSURCRGF0YWJhc2VCYWNrZW5kSW1wbDo6b2JqZWN0U3RvcmVzKCkgY29uc3QKK1Bhc3NS
ZWZQdHI8RE9NU3RyaW5nTGlzdD4gSURCRGF0YWJhc2VCYWNrZW5kSW1wbDo6b2JqZWN0U3RvcmVO
YW1lcygpIGNvbnN0CiB7CiAgICAgUmVmUHRyPERPTVN0cmluZ0xpc3Q+IG9iamVjdFN0b3JlTmFt
ZXMgPSBET01TdHJpbmdMaXN0OjpjcmVhdGUoKTsKICAgICBmb3IgKE9iamVjdFN0b3JlTWFwOjpj
b25zdF9pdGVyYXRvciBpdCA9IG1fb2JqZWN0U3RvcmVzLmJlZ2luKCk7IGl0ICE9IG1fb2JqZWN0
U3RvcmVzLmVuZCgpOyArK2l0KQpAQCAtMjI2LDggKzIyNiw4IEBAIHZvaWQgSURCRGF0YWJhc2VC
YWNrZW5kSW1wbDo6c2V0VmVyc2lvbihjb25zdCBTdHJpbmcmIHZlcnNpb24sIFBhc3NSZWZQdHI8
SURCQ2FsCiB7CiAgICAgUmVmUHRyPElEQkRhdGFiYXNlQmFja2VuZEltcGw+IGRhdGFiYXNlID0g
dGhpczsKICAgICBSZWZQdHI8SURCQ2FsbGJhY2tzPiBjYWxsYmFja3MgPSBwcnBDYWxsYmFja3M7
Ci0gICAgUmVmUHRyPERPTVN0cmluZ0xpc3Q+IG9iamVjdFN0b3JlcyA9IERPTVN0cmluZ0xpc3Q6
OmNyZWF0ZSgpOwotICAgIFJlZlB0cjxJREJUcmFuc2FjdGlvbkJhY2tlbmRJbnRlcmZhY2U+IHRy
YW5zYWN0aW9uID0gSURCVHJhbnNhY3Rpb25CYWNrZW5kSW1wbDo6Y3JlYXRlKG9iamVjdFN0b3Jl
cy5nZXQoKSwgSURCVHJhbnNhY3Rpb246OlZFUlNJT05fQ0hBTkdFLCAwLCB0aGlzKTsKKyAgICBS
ZWZQdHI8RE9NU3RyaW5nTGlzdD4gb2JqZWN0U3RvcmVOYW1lcyA9IERPTVN0cmluZ0xpc3Q6OmNy
ZWF0ZSgpOworICAgIFJlZlB0cjxJREJUcmFuc2FjdGlvbkJhY2tlbmRJbnRlcmZhY2U+IHRyYW5z
YWN0aW9uID0gSURCVHJhbnNhY3Rpb25CYWNrZW5kSW1wbDo6Y3JlYXRlKG9iamVjdFN0b3JlTmFt
ZXMuZ2V0KCksIElEQlRyYW5zYWN0aW9uOjpWRVJTSU9OX0NIQU5HRSwgMCwgdGhpcyk7CiAgICAg
aWYgKCF0cmFuc2FjdGlvbi0+c2NoZWR1bGVUYXNrKGNyZWF0ZUNhbGxiYWNrVGFzaygmSURCRGF0
YWJhc2VCYWNrZW5kSW1wbDo6c2V0VmVyc2lvbkludGVybmFsLCBkYXRhYmFzZSwgdmVyc2lvbiwg
Y2FsbGJhY2tzLCB0cmFuc2FjdGlvbiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNyZWF0ZUNhbGxiYWNrVGFzaygmSURCRGF0YWJhc2VCYWNrZW5kSW1wbDo6cmVzZXRWZXJz
aW9uLCBkYXRhYmFzZSwgbV92ZXJzaW9uKSkpIHsKICAgICAgICAgZWMgPSBJREJEYXRhYmFzZUV4
Y2VwdGlvbjo6Tk9UX0FMTE9XRURfRVJSOwpAQCAtMjQ3LDEwICsyNDcsMTAgQEAgdm9pZCBJREJE
YXRhYmFzZUJhY2tlbmRJbXBsOjpzZXRWZXJzaW9uSW50ZXJuYWwoU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dCosIFBhc3NSZWYKICAgICBjYWxsYmFja3MtPm9uU3VjY2Vzcyh0cmFuc2FjdGlvbik7CiB9
CiAKLVBhc3NSZWZQdHI8SURCVHJhbnNhY3Rpb25CYWNrZW5kSW50ZXJmYWNlPiBJREJEYXRhYmFz
ZUJhY2tlbmRJbXBsOjp0cmFuc2FjdGlvbihET01TdHJpbmdMaXN0KiBvYmplY3RTdG9yZXMsIHVu
c2lnbmVkIHNob3J0IG1vZGUsIHVuc2lnbmVkIGxvbmcgdGltZW91dCwgRXhjZXB0aW9uQ29kZSYp
CitQYXNzUmVmUHRyPElEQlRyYW5zYWN0aW9uQmFja2VuZEludGVyZmFjZT4gSURCRGF0YWJhc2VC
YWNrZW5kSW1wbDo6dHJhbnNhY3Rpb24oRE9NU3RyaW5nTGlzdCogc3RvcmVOYW1lcywgdW5zaWdu
ZWQgc2hvcnQgbW9kZSwgdW5zaWduZWQgbG9uZyB0aW1lb3V0LCBFeGNlcHRpb25Db2RlJikKIHsK
ICAgICAvLyBGSVhNRTogUmV0dXJuIG5vdCBhbGxvd2VkIGVyciBpZiBjbG9zZSBoYXMgYmVlbiBj
YWxsZWQuCi0gICAgcmV0dXJuIElEQlRyYW5zYWN0aW9uQmFja2VuZEltcGw6OmNyZWF0ZShvYmpl
Y3RTdG9yZXMsIG1vZGUsIHRpbWVvdXQsIHRoaXMpOworICAgIHJldHVybiBJREJUcmFuc2FjdGlv
bkJhY2tlbmRJbXBsOjpjcmVhdGUoc3RvcmVOYW1lcywgbW9kZSwgdGltZW91dCwgdGhpcyk7CiB9
CiAKIHZvaWQgSURCRGF0YWJhc2VCYWNrZW5kSW1wbDo6Y2xvc2UoKQpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQmFja2VuZEltcGwuaCBiL1dlYkNvcmUvc3RvcmFnZS9J
REJEYXRhYmFzZUJhY2tlbmRJbXBsLmgKaW5kZXggOGM5N2E3MDg0ODdhOWZmNDMxZTQyNGJhYmEx
YzY0ZmI5ZWRkOTU2OC4uY2VkYmJhZWEzZGMzNTRkNTk1NDdjMDY5YTY3MmRjZDZhYWRjNjE0NCAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQmFja2VuZEltcGwuaAorKysg
Yi9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VCYWNrZW5kSW1wbC5oCkBAIC01OCw3ICs1OCw3
IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIFN0cmluZyBuYW1lKCkgY29uc3QgeyByZXR1cm4gbV9u
YW1lOyB9CiAgICAgdmlydHVhbCBTdHJpbmcgZGVzY3JpcHRpb24oKSBjb25zdCB7IHJldHVybiBt
X2Rlc2NyaXB0aW9uOyB9CiAgICAgdmlydHVhbCBTdHJpbmcgdmVyc2lvbigpIGNvbnN0IHsgcmV0
dXJuIG1fdmVyc2lvbjsgfQotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxET01TdHJpbmdMaXN0PiBv
YmplY3RTdG9yZXMoKSBjb25zdDsKKyAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8RE9NU3RyaW5nTGlz
dD4gb2JqZWN0U3RvcmVOYW1lcygpIGNvbnN0OwogCiAgICAgdmlydHVhbCBQYXNzUmVmUHRyPElE
Qk9iamVjdFN0b3JlQmFja2VuZEludGVyZmFjZT4gY3JlYXRlT2JqZWN0U3RvcmUoY29uc3QgU3Ry
aW5nJiBuYW1lLCBjb25zdCBTdHJpbmcmIGtleVBhdGgsIGJvb2wgYXV0b0luY3JlbWVudCwgSURC
VHJhbnNhY3Rpb25CYWNrZW5kSW50ZXJmYWNlKiwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZpcnR1
YWwgdm9pZCByZW1vdmVPYmplY3RTdG9yZShjb25zdCBTdHJpbmcmIG5hbWUsIElEQlRyYW5zYWN0
aW9uQmFja2VuZEludGVyZmFjZSosIEV4Y2VwdGlvbkNvZGUmKTsKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvc3RvcmFnZS9JREJEYXRhYmFzZUJhY2tlbmRJbnRlcmZhY2UuaCBiL1dlYkNvcmUvc3RvcmFn
ZS9JREJEYXRhYmFzZUJhY2tlbmRJbnRlcmZhY2UuaAppbmRleCA0YjAyNTVkZTZmZjUyZWFmYzdi
MzFjOWI5M2Y0OTY5YmI4YmY1MmVlLi4xZDYzNWEyYmExZTQwMGE5NGUyZDA3ZDAzYmZlOWI1YmMx
N2I0Y2Q4IDEwMDY0NAotLS0gYS9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VCYWNrZW5kSW50
ZXJmYWNlLmgKKysrIGIvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQmFja2VuZEludGVyZmFj
ZS5oCkBAIC01Myw3ICs1Myw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIFN0cmluZyBuYW1lKCkg
Y29uc3QgPSAwOwogICAgIHZpcnR1YWwgU3RyaW5nIGRlc2NyaXB0aW9uKCkgY29uc3QgPSAwOwog
ICAgIHZpcnR1YWwgU3RyaW5nIHZlcnNpb24oKSBjb25zdCA9IDA7Ci0gICAgdmlydHVhbCBQYXNz
UmVmUHRyPERPTVN0cmluZ0xpc3Q+IG9iamVjdFN0b3JlcygpIGNvbnN0ID0gMDsKKyAgICB2aXJ0
dWFsIFBhc3NSZWZQdHI8RE9NU3RyaW5nTGlzdD4gb2JqZWN0U3RvcmVOYW1lcygpIGNvbnN0ID0g
MDsKIAogICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxJREJPYmplY3RTdG9yZUJhY2tlbmRJbnRlcmZh
Y2U+IGNyZWF0ZU9iamVjdFN0b3JlKGNvbnN0IFN0cmluZyYgbmFtZSwgY29uc3QgU3RyaW5nJiBr
ZXlQYXRoLCBib29sIGF1dG9JbmNyZW1lbnQsIElEQlRyYW5zYWN0aW9uQmFja2VuZEludGVyZmFj
ZSosIEV4Y2VwdGlvbkNvZGUmKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHJlbW92ZU9iamVjdFN0
b3JlKGNvbnN0IFN0cmluZyYgbmFtZSwgSURCVHJhbnNhY3Rpb25CYWNrZW5kSW50ZXJmYWNlKiwg
RXhjZXB0aW9uQ29kZSYpID0gMDsKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VM
b2cgYi9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDU0MDNmYzM5YmEzOWIwODc2NWIw
NWE1ZTUzYjQ2ZWE5ZGVhZjU1ZTIuLjY5YmExNjUxMTkyZWY5Y2M1YTVkYzFkNjUwYzY4ZmQ3ZDBh
MDA0MzcgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0
L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEwLTExLTI2ICBIYW5zIFdl
bm5ib3JnICA8aGFuc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgSW5kZXhlZERCOiBSZW5hbWUgSURCRGF0YWJhc2Uub2JqZWN0
U3RvcmVzIHRvIG9iamVjdFN0b3JlTmFtZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTUwMTAyCisKKyAgICAgICAgUmVuYW1lIGFzIHBlciB0aGUgc3Bl
YzogaHR0cDovL2R2Y3MudzMub3JnL2hnL0luZGV4ZWREQi9yYXctZmlsZS90aXAvT3ZlcnZpZXcu
aHRtbCNkYXRhYmFzZS1pbnRlcmZhY2UKKworICAgICAgICAqIHB1YmxpYy9XZWJJREJEYXRhYmFz
ZS5oOgorICAgICAgICAoV2ViS2l0OjpXZWJJREJEYXRhYmFzZTo6b2JqZWN0U3RvcmVzKToKKyAg
ICAgICAgKFdlYktpdDo6V2ViSURCRGF0YWJhc2U6Om9iamVjdFN0b3JlTmFtZXMpOgorICAgICAg
ICAqIHNyYy9JREJEYXRhYmFzZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQkRhdGFi
YXNlUHJveHk6Om9iamVjdFN0b3JlTmFtZXMpOgorICAgICAgICAqIHNyYy9JREJEYXRhYmFzZVBy
b3h5Lmg6CisgICAgICAgICogc3JjL1dlYklEQkRhdGFiYXNlSW1wbC5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OldlYklEQkRhdGFiYXNlSW1wbDo6b2JqZWN0U3RvcmVOYW1lcyk6CisgICAgICAgICog
c3JjL1dlYklEQkRhdGFiYXNlSW1wbC5oOgorCiAyMDEwLTExLTI1ICBJbHlhIFRpa2hvbm92c2t5
ICA8bG9pc2xvQGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLiBSb2xsIGNocm9t
aXVtIDY3MDA0OjY3NDA0LgpkaWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJJ
REJEYXRhYmFzZS5oIGIvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJJREJEYXRhYmFzZS5oCmlu
ZGV4IGE1NTY1MTVkOWQ1Y2NkMTg0MjA4Mjk2MDFjYmFkNzc0N2Y3MGZkN2MuLjhiYzM3NTIwNzkw
N2Q3NWJmY2MxYzM2MTI1ZDZkMTNiZmEyMGE1ZjIgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1
bS9wdWJsaWMvV2ViSURCRGF0YWJhc2UuaAorKysgYi9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dl
YklEQkRhdGFiYXNlLmgKQEAgLTU3LDcgKzU3LDggQEAgcHVibGljOgogICAgICAgICBXRUJLSVRf
QVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgICAgIHJldHVybiBXZWJTdHJpbmcoKTsKICAgICB9
Ci0gICAgdmlydHVhbCBXZWJET01TdHJpbmdMaXN0IG9iamVjdFN0b3JlcygpIGNvbnN0CisgICAg
V2ViRE9NU3RyaW5nTGlzdCBvYmplY3RTdG9yZXMoKSBjb25zdCB7IHJldHVybiBvYmplY3RTdG9y
ZU5hbWVzKCk7IH0gLy8gRklYTUU6IFJlbW92ZSBhZnRlciByb2xsLgorICAgIHZpcnR1YWwgV2Vi
RE9NU3RyaW5nTGlzdCBvYmplY3RTdG9yZU5hbWVzKCkgY29uc3QKICAgICB7CiAgICAgICAgIFdF
QktJVF9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgcmV0dXJuIFdlYkRPTVN0cmluZ0xp
c3QoKTsKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9zcmMvSURCRGF0YWJhc2VQcm94eS5j
cHAgYi9XZWJLaXQvY2hyb21pdW0vc3JjL0lEQkRhdGFiYXNlUHJveHkuY3BwCmluZGV4IDRmZWNm
MWJmODdjMWFiMDA5ZmUyZjRmNTBjNjdlYWJmZWMxZjEwZWEuLmY4ZmUxZmEwNjk1ZDhhNGNmNDlk
MDM2NDczZTM3NDM0MWU5ODMyNzggMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9zcmMvSURC
RGF0YWJhc2VQcm94eS5jcHAKKysrIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9JREJEYXRhYmFzZVBy
b3h5LmNwcApAQCAtNzEsOSArNzEsOSBAQCBTdHJpbmcgSURCRGF0YWJhc2VQcm94eTo6dmVyc2lv
bigpIGNvbnN0CiAgICAgcmV0dXJuIG1fd2ViSURCRGF0YWJhc2UtPnZlcnNpb24oKTsKIH0KIAot
UGFzc1JlZlB0cjxET01TdHJpbmdMaXN0PiBJREJEYXRhYmFzZVByb3h5OjpvYmplY3RTdG9yZXMo
KSBjb25zdAorUGFzc1JlZlB0cjxET01TdHJpbmdMaXN0PiBJREJEYXRhYmFzZVByb3h5OjpvYmpl
Y3RTdG9yZU5hbWVzKCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV93ZWJJREJEYXRhYmFzZS0+b2Jq
ZWN0U3RvcmVzKCk7CisgICAgcmV0dXJuIG1fd2ViSURCRGF0YWJhc2UtPm9iamVjdFN0b3JlTmFt
ZXMoKTsKIH0KIAogUGFzc1JlZlB0cjxJREJPYmplY3RTdG9yZUJhY2tlbmRJbnRlcmZhY2U+IElE
QkRhdGFiYXNlUHJveHk6OmNyZWF0ZU9iamVjdFN0b3JlKGNvbnN0IFN0cmluZyYgbmFtZSwgY29u
c3QgU3RyaW5nJiBrZXlQYXRoLCBib29sIGF1dG9JbmNyZW1lbnQsIElEQlRyYW5zYWN0aW9uQmFj
a2VuZEludGVyZmFjZSogdHJhbnNhY3Rpb24sIEV4Y2VwdGlvbkNvZGUmIGVjKQpkaWZmIC0tZ2l0
IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9JREJEYXRhYmFzZVByb3h5LmggYi9XZWJLaXQvY2hyb21p
dW0vc3JjL0lEQkRhdGFiYXNlUHJveHkuaAppbmRleCA1ZDIwMDczYjNhMTIyY2RmYmZkODEwYWM0
MjY5OGQzNmY4MzJhZjhlLi44YmI0ZDJmYzUzMDA0Y2QwNjhiMGI3ZGQwODVkMzkwMzFiZDYzMzQ5
IDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vc3JjL0lEQkRhdGFiYXNlUHJveHkuaAorKysg
Yi9XZWJLaXQvY2hyb21pdW0vc3JjL0lEQkRhdGFiYXNlUHJveHkuaApAQCAtNDUsNyArNDUsNyBA
QCBwdWJsaWM6CiAgICAgdmlydHVhbCBTdHJpbmcgbmFtZSgpIGNvbnN0OwogICAgIHZpcnR1YWwg
U3RyaW5nIGRlc2NyaXB0aW9uKCkgY29uc3Q7CiAgICAgdmlydHVhbCBTdHJpbmcgdmVyc2lvbigp
IGNvbnN0OwotICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxET01TdHJpbmdMaXN0PiBvYmplY3RTdG9y
ZXMoKSBjb25zdDsKKyAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8RE9NU3RyaW5nTGlzdD4gb2JqZWN0
U3RvcmVOYW1lcygpIGNvbnN0OwogCiAgICAgdmlydHVhbCBQYXNzUmVmUHRyPElEQk9iamVjdFN0
b3JlQmFja2VuZEludGVyZmFjZT4gY3JlYXRlT2JqZWN0U3RvcmUoY29uc3QgU3RyaW5nJiBuYW1l
LCBjb25zdCBTdHJpbmcmIGtleVBhdGgsIGJvb2wgYXV0b0luY3JlbWVudCwgSURCVHJhbnNhY3Rp
b25CYWNrZW5kSW50ZXJmYWNlKiwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZpcnR1YWwgdm9pZCBy
ZW1vdmVPYmplY3RTdG9yZShjb25zdCBTdHJpbmcmIG5hbWUsIElEQlRyYW5zYWN0aW9uQmFja2Vu
ZEludGVyZmFjZSosIEV4Y2VwdGlvbkNvZGUmKTsKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViSURCRGF0YWJhc2VJbXBsLmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViSURC
RGF0YWJhc2VJbXBsLmNwcAppbmRleCAyZDk1ZTIxMGNlYmMwZjJhMjZkZDc3YWUyNzkyZmUzOGNk
ZWUxYjRiLi4yOTAwMzVhMWNmMTBkZThjZTMwMzkzMDkwNjk0YTI1ZWE4ODU4ZDIyIDEwMDY0NAot
LS0gYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYklEQkRhdGFiYXNlSW1wbC5jcHAKKysrIGIvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJJREJEYXRhYmFzZUltcGwuY3BwCkBAIC02NCw5ICs2NCw5IEBA
IFdlYlN0cmluZyBXZWJJREJEYXRhYmFzZUltcGw6OnZlcnNpb24oKSBjb25zdAogICAgIHJldHVy
biBtX2RhdGFiYXNlQmFja2VuZC0+dmVyc2lvbigpOwogfQogCi1XZWJET01TdHJpbmdMaXN0IFdl
YklEQkRhdGFiYXNlSW1wbDo6b2JqZWN0U3RvcmVzKCkgY29uc3QKK1dlYkRPTVN0cmluZ0xpc3Qg
V2ViSURCRGF0YWJhc2VJbXBsOjpvYmplY3RTdG9yZU5hbWVzKCkgY29uc3QKIHsKLSAgICByZXR1
cm4gbV9kYXRhYmFzZUJhY2tlbmQtPm9iamVjdFN0b3JlcygpOworICAgIHJldHVybiBtX2RhdGFi
YXNlQmFja2VuZC0+b2JqZWN0U3RvcmVOYW1lcygpOwogfQogCiBXZWJJREJPYmplY3RTdG9yZSog
V2ViSURCRGF0YWJhc2VJbXBsOjpjcmVhdGVPYmplY3RTdG9yZShjb25zdCBXZWJTdHJpbmcmIG5h
bWUsIGNvbnN0IFdlYlN0cmluZyYga2V5UGF0aCwgYm9vbCBhdXRvSW5jcmVtZW50LCBjb25zdCBX
ZWJJREJUcmFuc2FjdGlvbiYgdHJhbnNhY3Rpb24sIFdlYkV4Y2VwdGlvbkNvZGUmIGVjKQpkaWZm
IC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJJREJEYXRhYmFzZUltcGwuaCBiL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViSURCRGF0YWJhc2VJbXBsLmgKaW5kZXggOTRmMTEwMTQ4YWQ4Y2Zl
Y2IyNzg2OTJmNzVkNTI0NzJkZTY3MTg1ZS4uNjg0ZDJmZjkwNmI5NzAzNTljYWYwNzRjM2E3YmJh
YTEwY2MzMjgzYSAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJJREJEYXRhYmFz
ZUltcGwuaAorKysgYi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYklEQkRhdGFiYXNlSW1wbC5oCkBA
IC00OCw3ICs0OCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIFdlYlN0cmluZyBuYW1lKCkgY29u
c3Q7CiAgICAgdmlydHVhbCBXZWJTdHJpbmcgZGVzY3JpcHRpb24oKSBjb25zdDsKICAgICB2aXJ0
dWFsIFdlYlN0cmluZyB2ZXJzaW9uKCkgY29uc3Q7Ci0gICAgdmlydHVhbCBXZWJET01TdHJpbmdM
aXN0IG9iamVjdFN0b3JlcygpIGNvbnN0OworICAgIHZpcnR1YWwgV2ViRE9NU3RyaW5nTGlzdCBv
YmplY3RTdG9yZU5hbWVzKCkgY29uc3Q7CiAKICAgICB2aXJ0dWFsIFdlYklEQk9iamVjdFN0b3Jl
KiBjcmVhdGVPYmplY3RTdG9yZShjb25zdCBXZWJTdHJpbmcmIG5hbWUsIGNvbnN0IFdlYlN0cmlu
ZyYga2V5UGF0aCwgYm9vbCBhdXRvSW5jcmVtZW50LCBjb25zdCBXZWJJREJUcmFuc2FjdGlvbiYs
IFdlYkV4Y2VwdGlvbkNvZGUmKTsKICAgICB2aXJ0dWFsIHZvaWQgcmVtb3ZlT2JqZWN0U3RvcmUo
Y29uc3QgV2ViU3RyaW5nJiBuYW1lLCBjb25zdCBXZWJJREJUcmFuc2FjdGlvbiYsIFdlYkV4Y2Vw
dGlvbkNvZGUmKTsK
</data>
<flag name="review"
          id="65620"
          type_id="1"
          status="+"
          setter="jorlow"
    />
          </attachment>
      

    </bug>

</bugzilla>