<?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>41506</bug_id>
          
          <creation_ts>2010-07-01 22:48:51 -0700</creation_ts>
          <short_desc>Add a FixedArray template to encapsulate fixed length arrays</short_desc>
          <delta_ts>2010-07-01 23:42:02 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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="Oliver Hunt">oliver</reporter>
          <assigned_to name="Oliver Hunt">oliver</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>245767</commentid>
    <comment_count>0</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-07-01 22:48:51 -0700</bug_when>
    <thetext>Add a FixedArray template to encapsulate fixed length arrays</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245769</commentid>
    <comment_count>1</comment_count>
      <attachid>60339</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-07-01 22:51:47 -0700</bug_when>
    <thetext>Created attachment 60339
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245770</commentid>
    <comment_count>2</comment_count>
      <attachid>60339</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2010-07-01 22:58:36 -0700</bug_when>
    <thetext>Comment on attachment 60339
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245777</commentid>
    <comment_count>3</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-07-01 23:31:44 -0700</bug_when>
    <thetext>Committed r62367: &lt;http://trac.webkit.org/changeset/62367&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245780</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-07-01 23:42:02 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/62367 might have broken Chromium Linux Release</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60339</attachid>
            <date>2010-07-01 22:51:47 -0700</date>
            <delta_ts>2010-07-01 23:30:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-41506-20100701225146.patch</filename>
            <type>text/plain</type>
            <size>21686</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCA1NDdlZDEyOTg1YjZmYjU3MjUwZDI0MWFjNDllYjU3MDljNDgwOTg4Li5m
MDhiNzJhNTk2NDQ1NWVkOTRlN2FhNTYwNmFlZDQwOTU3M2U3NGFiIDEwMDY0NAotLS0gYS9KYXZh
U2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0x
LDUgKzEsNDIgQEAKIDIwMTAtMDctMDEgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4K
IAorICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYSBG
aXhlZEFycmF5IHRlbXBsYXRlIHRvIGVuY2Fwc3VsYXRlIGZpeGVkIGxlbmd0aCBhcnJheXMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxNTA2CisKKyAg
ICAgICAgVGhpcyBuZXcgdHlwZSBpcyB1c2VkIGluIHBsYWNlIG9mIGZpeGVkIGxlbmd0aCBDIGFy
cmF5cyBzbworICAgICAgICB0aGF0IGRlYnVnIGJ1aWxkcyBjYW4gZ3VhcmQgYWdhaW5zdCBhdHRl
bXB0cyB0byBnbyBiZXlvbmQKKyAgICAgICAgdGhlIGVuZCBvZiB0aGUgYXJyYXkuCisKKyAgICAg
ICAgKiBKYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAq
IGJ5dGVjb2RlL09wY29kZS5jcHA6CisgICAgICAgIChKU0M6Ok9wY29kZVN0YXRzOjp+T3Bjb2Rl
U3RhdHMpOgorICAgICAgICAqIHBjcmUvcGNyZV9jb21waWxlLmNwcDoKKyAgICAgICAgKGNhbGN1
bGF0ZUNvbXBpbGVkUGF0dGVybkxlbmd0aCk6CisgICAgICAgICogcnVudGltZS9Db2xsZWN0b3Iu
Y3BwOgorICAgICAgICAoSlNDOjpIZWFwOjphbGxvY2F0ZUJsb2NrKToKKyAgICAgICAgKEpTQzo6
SGVhcDo6YWxsb2NhdGUpOgorICAgICAgICAqIHJ1bnRpbWUvQ29sbGVjdG9yLmg6CisgICAgICAg
IChKU0M6OkNvbGxlY3RvckJpdG1hcDo6Y2xlYXJBbGwpOgorICAgICAgICAqIHJ1bnRpbWUvQ29s
bGVjdG9ySGVhcEl0ZXJhdG9yLmg6CisgICAgICAgIChKU0M6OkNvbGxlY3RvckhlYXBJdGVyYXRv
cjo6b3BlcmF0b3IqKToKKyAgICAgICAgKiBydW50aW1lL0RhdGVJbnN0YW5jZUNhY2hlLmg6Cisg
ICAgICAgICogcnVudGltZS9KU1N0cmluZy5jcHA6CisgICAgICAgIChKU0M6OkpTU3RyaW5nOjpy
ZXBsYWNlQ2hhcmFjdGVyKToKKyAgICAgICAgKiBydW50aW1lL0pTU3RyaW5nLmg6CisgICAgICAg
IChKU0M6OlJvcGVCdWlsZGVyOjpKU1N0cmluZ0ZpbmFsaXplclN0cnVjdDo6KToKKyAgICAgICAg
KiBydW50aW1lL051bWVyaWNTdHJpbmdzLmg6CisgICAgICAgICogcnVudGltZS9SZWdFeHBDYWNo
ZS5oOgorICAgICAgICAqIHJ1bnRpbWUvU21hbGxTdHJpbmdzLmg6CisgICAgICAgIChKU0M6OlNt
YWxsU3RyaW5nczo6c2luZ2xlQ2hhcmFjdGVyU3RyaW5ncyk6CisgICAgICAgICogd3RmL0FWTFRy
ZWUuaDoKKyAgICAgICAgKiB3dGYvRml4ZWRBcnJheS5oOiBBZGRlZC4KKyAgICAgICAgKFdURjo6
Rml4ZWRBcnJheTo6b3BlcmF0b3JbXSk6CisgICAgICAgIChXVEY6OkZpeGVkQXJyYXk6OmRhdGEp
OgorCisyMDEwLTA3LTAxICBPbGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CisKICAgICAg
ICAgUmV2aWV3ZWQgYnkgR2VvZmYgR2FyZW4uCiAKICAgICAgICAgSW1wcm92ZSByZWVudHJhbmN5
IGxvZ2ljIGluIHBvbHltb3JwaGljIGNhY2hlIHN0dWJzCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0
Q29yZS9KYXZhU2NyaXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvSmF2YVNjcmlw
dENvcmUvSmF2YVNjcmlwdENvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAxOGQ2
YjgzODYwYzgxNzA1MGYxMGU4NDM3ZDViZDA1MmI0NzczNmQ2Li42ZjU0Y2JjZjdmNmZmZTQ3YTM3
ZjQ1YTQwMDYyMDdmNjUwM2NhN2JjIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9KYXZhU2Ny
aXB0Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL0phdmFTY3JpcHRDb3JlL0ph
dmFTY3JpcHRDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTMyOSw2ICszMjksNyBA
QAogCQlBN0Q2NDlBQTEwMTUyMjRFMDA5QjJFMUIgLyogUG9zc2libHlOdWxsLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBN0Q2NDlBOTEwMTUyMjRFMDA5
QjJFMUIgLyogUG9zc2libHlOdWxsLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJQTdFMkVBNkIwRkI0NjBDRjAwNjAxRjA2IC8qIExpdGVyYWxQYXJz
ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3RTJF
QTY5MEZCNDYwQ0YwMDYwMUYwNiAvKiBMaXRlcmFsUGFyc2VyLmggKi87IH07CiAJCUE3RTJFQTZD
MEZCNDYwQ0YwMDYwMUYwNiAvKiBMaXRlcmFsUGFyc2VyLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3RTJFQTZBMEZCNDYwQ0YwMDYwMUYwNiAvKiBM
aXRlcmFsUGFyc2VyLmNwcCAqLzsgfTsKKwkJQTdGMTlFQ0UxMURENDkwOTAwOTMxRTcwIC8qIEZp
eGVkQXJyYXkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEE3RjE5RUNEMTFERDQ5MDkwMDkzMUU3MCAvKiBGaXhlZEFycmF5LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQTdGOTkzNUYwRkQ3MzI1MTAwQTBC
MkQwIC8qIEpTT05PYmplY3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEE3Rjk5MzVEMEZENzMyNTEwMEEwQjJEMCAvKiBKU09OT2JqZWN0LmggKi87IH07
CiAJCUE3Rjk5MzYwMEZENzMyNTEwMEEwQjJEMCAvKiBKU09OT2JqZWN0LmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE3Rjk5MzVFMEZENzMyNTEwMEEw
QjJEMCAvKiBKU09OT2JqZWN0LmNwcCAqLzsgfTsKIAkJQTdGQjYwQTQxMDNGN0RDMjAwMTdBMjg2
IC8qIFByb3BlcnR5RGVzY3JpcHRvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBBN0ZCNjBBMzEwM0Y3REMyMDAxN0EyODYgLyogUHJvcGVydHlEZXNj
cmlwdG9yLmNwcCAqLzsgfTsKQEAgLTkzNCw2ICs5MzUsNyBAQAogCQlBN0UyRUE2QTBGQjQ2MENG
MDA2MDFGMDYgLyogTGl0ZXJhbFBhcnNlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBMaXRlcmFsUGFyc2VyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQTdFNDJDMTgwRTM5Mzg4MzAwNjVBNTQ0IC8qIEpTU3RhdGljU2NvcGVPYmplY3QuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNTdGF0aWNTY29wZU9iamVjdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBN0U0MkMxOTBFMzkzODgzMDA2NUE1NDQgLyogSlNT
dGF0aWNTY29wZU9iamVjdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBKU1N0YXRpY1Njb3BlT2JqZWN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
QTdGMTlFQ0QxMURENDkwOTAwOTMxRTcwIC8qIEZpeGVkQXJyYXkuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gRml4ZWRBcnJheS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlBN0Y4NjkwRTBGOTU4NEExMDA1NTg2OTcgLyogQ2FjaGVkQ2FsbC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZWRDYWxsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUE3Rjg2OUVDMEY5NUMyRUMwMDU1ODY5NyAvKiBDYWxsRnJhbWVDbG9zdXJlLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhbGxGcmFtZUNsb3N1cmUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQTdGOTkzNUQwRkQ3MzI1MTAwQTBCMkQwIC8qIEpT
T05PYmplY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNPTk9iamVjdC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTQ4NCw2ICsxNDg2LDcgQEAKIAkJCQk5
NkRENzM3ODBGOURBMzEwMDAyN0ZCQ0MgLyogVk1UYWdzLmggKi8sCiAJCQkJODZEMDhENTExMTc5
MzYxMzAwNkU1RUQwIC8qIFdURlRocmVhZERhdGEuY3BwICovLAogCQkJCTg2RDA4RDUyMTE3OTM2
MTMwMDZFNUVEMCAvKiBXVEZUaHJlYWREYXRhLmggKi8sCisJCQkJQTdGMTlFQ0QxMURENDkwOTAw
OTMxRTcwIC8qIEZpeGVkQXJyYXkuaCAqLywKIAkJCSk7CiAJCQlwYXRoID0gd3RmOwogCQkJc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsKQEAgLTIxODMsNiArMjE4Niw3IEBACiAJCQkJQTc4NEEyNjEx
MUQxNjYyMjAwNTc3NkFDIC8qIEFTVEJ1aWxkZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUE3ODRB
MjYzMTFEMTY2MjIwMDU3NzZBQyAvKiBKU1BhcnNlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTc4
NEEyNjQxMUQxNjYyMjAwNTc3NkFDIC8qIFN5bnRheENoZWNrZXIuaCBpbiBIZWFkZXJzICovLAor
CQkJCUE3RjE5RUNFMTFERDQ5MDkwMDkzMUU3MCAvKiBGaXhlZEFycmF5LmggaW4gSGVhZGVycyAq
LywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJ
fTsKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL09wY29kZS5jcHAgYi9KYXZh
U2NyaXB0Q29yZS9ieXRlY29kZS9PcGNvZGUuY3BwCmluZGV4IGJiNzY5NmRkOGQ2ZGY1ZTg0ODE1
YzQxMTg0YmRkYjlkNDg1ZmYxM2QuLjhmN2YwMWYzMWZhM2I0NTgyZTY0NGMzMDljNDFkMTU1MDc4
NGVjYjkgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL09wY29kZS5jcHAKKysr
IGIvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvT3Bjb2RlLmNwcApAQCAtMTAxLDcgKzEwMSw3IEBA
IE9wY29kZVN0YXRzOjp+T3Bjb2RlU3RhdHMoKQogICAgICAgICBmb3IgKGludCBqID0gMDsgaiA8
IG51bU9wY29kZUlEczsgKytqKQogICAgICAgICAgICAgdG90YWxJbnN0cnVjdGlvblBhaXJzICs9
IG9wY29kZVBhaXJDb3VudHNbaV1bal07CiAKLSAgICBpbnQgc29ydGVkSW5kaWNlc1tudW1PcGNv
ZGVJRHNdOyAgICAKKyAgICBGaXhlZEFycmF5PGludCwgbnVtT3Bjb2RlSURzPiBzb3J0ZWRJbmRp
Y2VzOwogICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbnVtT3Bjb2RlSURzOyArK2kpCiAgICAgICAg
IHNvcnRlZEluZGljZXNbaV0gPSBpOwogICAgIHFzb3J0KHNvcnRlZEluZGljZXMsIG51bU9wY29k
ZUlEcywgc2l6ZW9mKGludCksIGNvbXBhcmVPcGNvZGVJbmRpY2VzKTsKZGlmZiAtLWdpdCBhL0ph
dmFTY3JpcHRDb3JlL3BjcmUvcGNyZV9jb21waWxlLmNwcCBiL0phdmFTY3JpcHRDb3JlL3BjcmUv
cGNyZV9jb21waWxlLmNwcAppbmRleCAyYmVkY2E2NjljMDYyMWM0ZTIzYmZiOTEwZjVkZWM3N2U1
ZWVjZTZjLi5lYTZlNDRjMWE2ZjJhYzA3ZjZjMDQzOTE4NTQyMjViNGM0ODdlN2UzIDEwMDY0NAot
LS0gYS9KYXZhU2NyaXB0Q29yZS9wY3JlL3BjcmVfY29tcGlsZS5jcHAKKysrIGIvSmF2YVNjcmlw
dENvcmUvcGNyZS9wY3JlX2NvbXBpbGUuY3BwCkBAIC00OCw2ICs0OCw3IEBAIHN1cHBvcnRpbmcg
aW50ZXJuYWwgZnVuY3Rpb25zIHRoYXQgYXJlIG5vdCB1c2VkIGJ5IG90aGVyIG1vZHVsZXMuICov
CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8d3RmL0FTQ0lJQ1R5cGUuaD4KICNpbmNs
dWRlIDx3dGYvRmFzdE1hbGxvYy5oPgorI2luY2x1ZGUgPHd0Zi9GaXhlZEFycmF5Lmg+CiAKIHVz
aW5nIG5hbWVzcGFjZSBXVEY7CiAKQEAgLTIwMzUsOCArMjAzNiw4IEBAIHN0YXRpYyBpbnQgY2Fs
Y3VsYXRlQ29tcGlsZWRQYXR0ZXJuTGVuZ3RoKGNvbnN0IFVDaGFyKiBwYXR0ZXJuLCBpbnQgcGF0
dGVybkxlbmd0CiAgICAgaW50IGJyYW5jaF9leHRyYSA9IDA7CiAgICAgaW50IGxhc3RpdGVtbGVu
Z3RoID0gMDsKICAgICB1bnNpZ25lZCBicmFzdGFja3B0ciA9IDA7Ci0gICAgaW50IGJyYXN0YWNr
W0JSQVNUQUNLX1NJWkVdOwotICAgIHVuc2lnbmVkIGNoYXIgYnJhbGVuc3RhY2tbQlJBU1RBQ0tf
U0laRV07CisgICAgRml4ZWRBcnJheTxpbnQsIEJSQVNUQUNLX1NJWkU+IGJyYXN0YWNrOworICAg
IEZpeGVkQXJyYXk8dW5zaWduZWQgY2hhciwgQlJBU1RBQ0tfU0laRT4gYnJhbGVuc3RhY2s7CiAg
ICAgaW50IGJyYWNvdW50ID0gMDsKICAgICAKICAgICBjb25zdCBVQ2hhciogcHRyID0gKGNvbnN0
IFVDaGFyKikocGF0dGVybiAtIDEpOwpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9Db2xsZWN0b3IuY3BwIGIvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db2xsZWN0b3IuY3BwCmlu
ZGV4IDAzMzg5YzRhN2NhMmFhMGQxMGQyYmU0ZTUwM2ZjMDMyOWFiMTRlM2UuLjM4ZjNjZTU2NDhh
Y2I3NWJlZTcyZWFjMzQ0ODQ5ZjdmNTVkOGI3MmIgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQ29sbGVjdG9yLmNwcAorKysgYi9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbGxl
Y3Rvci5jcHAKQEAgLTI0NSw3ICsyNDUsNyBAQCBORVZFUl9JTkxJTkUgQ29sbGVjdG9yQmxvY2sq
IEhlYXA6OmFsbG9jYXRlQmxvY2soKQogCiAgICAgU3RydWN0dXJlKiBkdW1teU1hcmthYmxlQ2Vs
bFN0cnVjdHVyZSA9IG1fZ2xvYmFsRGF0YS0+ZHVtbXlNYXJrYWJsZUNlbGxTdHJ1Y3R1cmUuZ2V0
KCk7CiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBIZWFwQ29uc3RhbnRzOjpjZWxsc1BlckJs
b2NrOyArK2kpCi0gICAgICAgIG5ldyAoYmxvY2stPmNlbGxzICsgaSkgSlNDZWxsKGR1bW15TWFy
a2FibGVDZWxsU3RydWN0dXJlKTsKKyAgICAgICAgbmV3ICgmYmxvY2stPmNlbGxzW2ldKSBKU0Nl
bGwoZHVtbXlNYXJrYWJsZUNlbGxTdHJ1Y3R1cmUpOwogICAgIAogICAgIC8vIEFkZCBibG9jayB0
byBibG9ja3MgdmVjdG9yLgogCkBAIC0zODQsNyArMzg0LDcgQEAgYWxsb2NhdGU6CiAgICAgICAg
IGRvIHsKICAgICAgICAgICAgIEFTU0VSVChtX2hlYXAubmV4dENlbGwgPCBIZWFwQ29uc3RhbnRz
OjpjZWxsc1BlckJsb2NrKTsKICAgICAgICAgICAgIGlmICghYmxvY2stPm1hcmtlZC5nZXQobV9o
ZWFwLm5leHRDZWxsKSkgeyAvLyBBbHdheXMgZmFsc2UgZm9yIHRoZSBsYXN0IGNlbGwgaW4gdGhl
IGJsb2NrCi0gICAgICAgICAgICAgICAgQ2VsbCogY2VsbCA9IGJsb2NrLT5jZWxscyArIG1faGVh
cC5uZXh0Q2VsbDsKKyAgICAgICAgICAgICAgICBDZWxsKiBjZWxsID0gJmJsb2NrLT5jZWxsc1tt
X2hlYXAubmV4dENlbGxdOwogCiAgICAgICAgICAgICAgICAgbV9oZWFwLm9wZXJhdGlvbkluUHJv
Z3Jlc3MgPSBBbGxvY2F0aW9uOwogICAgICAgICAgICAgICAgIEpTQ2VsbCogaW1wID0gcmVpbnRl
cnByZXRfY2FzdDxKU0NlbGwqPihjZWxsKTsKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQ29sbGVjdG9yLmggYi9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbGxlY3Rvci5oCmlu
ZGV4IDM0ZTIzOGM4NjM4NTNkNjQ4YzU1NGY4M2YwNmRiNTdiMzJiYzM3NDcuLmY1YmYxMTNiYWU5
N2I3NzM2OTYyMDcyZDRkN2FlMDU3NDAwYTVlZjAgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvQ29sbGVjdG9yLmgKKysrIGIvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db2xsZWN0
b3IuaApAQCAtMjQsNiArMjQsNyBAQAogCiAjaW5jbHVkZSA8c3RkZGVmLmg+CiAjaW5jbHVkZSA8
c3RyaW5nLmg+CisjaW5jbHVkZSA8d3RmL0ZpeGVkQXJyYXkuaD4KICNpbmNsdWRlIDx3dGYvSGFz
aENvdW50ZWRTZXQuaD4KICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9O
b25jb3B5YWJsZS5oPgpAQCAtMjE1LDExICsyMTYsMTEgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAg
Y29uc3Qgc2l6ZV90IEJJVE1BUF9XT1JEUyA9IChCSVRNQVBfU0laRSArIDMpIC8gc2l6ZW9mKHVp
bnQzMl90KTsKIAogICAgIHN0cnVjdCBDb2xsZWN0b3JCaXRtYXAgewotICAgICAgICB1aW50MzJf
dCBiaXRzW0JJVE1BUF9XT1JEU107CisgICAgICAgIEZpeGVkQXJyYXk8dWludDMyX3QsIEJJVE1B
UF9XT1JEUz4gYml0czsKICAgICAgICAgYm9vbCBnZXQoc2l6ZV90IG4pIGNvbnN0IHsgcmV0dXJu
ICEhKGJpdHNbbiA+PiA1XSAmICgxIDw8IChuICYgMHgxRikpKTsgfSAKICAgICAgICAgdm9pZCBz
ZXQoc2l6ZV90IG4pIHsgYml0c1tuID4+IDVdIHw9ICgxIDw8IChuICYgMHgxRikpOyB9IAogICAg
ICAgICB2b2lkIGNsZWFyKHNpemVfdCBuKSB7IGJpdHNbbiA+PiA1XSAmPSB+KDEgPDwgKG4gJiAw
eDFGKSk7IH0gCi0gICAgICAgIHZvaWQgY2xlYXJBbGwoKSB7IG1lbXNldChiaXRzLCAwLCBzaXpl
b2YoYml0cykpOyB9CisgICAgICAgIHZvaWQgY2xlYXJBbGwoKSB7IG1lbXNldChiaXRzLmRhdGEo
KSwgMCwgc2l6ZW9mKGJpdHMpKTsgfQogICAgICAgICBBTFdBWVNfSU5MSU5FIHZvaWQgYWR2YW5j
ZVRvTmV4dFBvc3NpYmxlRnJlZUNlbGwoc2l6ZV90JiBzdGFydENlbGwpCiAgICAgICAgIHsKICAg
ICAgICAgICAgIGlmICghfmJpdHNbc3RhcnRDZWxsID4+IDVdKQpAQCAtMjQ4LDEyICsyNDksMTIg
QEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgfTsKICAgCiAgICAgc3RydWN0IENvbGxlY3RvckNlbGwg
ewotICAgICAgICBkb3VibGUgbWVtb3J5W0NFTExfQVJSQVlfTEVOR1RIXTsKKyAgICAgICAgRml4
ZWRBcnJheTxkb3VibGUsIENFTExfQVJSQVlfTEVOR1RIPiBtZW1vcnk7CiAgICAgfTsKIAogICAg
IGNsYXNzIENvbGxlY3RvckJsb2NrIHsKICAgICBwdWJsaWM6Ci0gICAgICAgIENvbGxlY3RvckNl
bGwgY2VsbHNbQ0VMTFNfUEVSX0JMT0NLXTsKKyAgICAgICAgRml4ZWRBcnJheTxDb2xsZWN0b3JD
ZWxsLCBDRUxMU19QRVJfQkxPQ0s+IGNlbGxzOwogICAgICAgICBDb2xsZWN0b3JCaXRtYXAgbWFy
a2VkOwogICAgICAgICBIZWFwKiBoZWFwOwogICAgIH07CmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NvbGxlY3RvckhlYXBJdGVyYXRvci5oIGIvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9Db2xsZWN0b3JIZWFwSXRlcmF0b3IuaAppbmRleCBiZTZmM2M5NGJhZjQyYWEyZGUwY2I4
MWViODY0NGFiZTU2ZTVhOWUyLi45YTMzMjdjN2RkZTM3ZTI3OGQ3Y2U3N2JlZjgyNTNmYWM1NDM2
N2Q1IDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0NvbGxlY3RvckhlYXBJdGVy
YXRvci5oCisrKyBiL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29sbGVjdG9ySGVhcEl0ZXJhdG9y
LmgKQEAgLTc3LDcgKzc3LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICBpbmxpbmUgSlNDZWxs
KiBDb2xsZWN0b3JIZWFwSXRlcmF0b3I6Om9wZXJhdG9yKigpIGNvbnN0CiAgICAgewotICAgICAg
ICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxKU0NlbGwqPihtX2hlYXAuYmxvY2tzW21fYmxvY2td
LT5jZWxscyArIG1fY2VsbCk7CisgICAgICAgIHJldHVybiByZWludGVycHJldF9jYXN0PEpTQ2Vs
bCo+KCZtX2hlYXAuYmxvY2tzW21fYmxvY2tdLT5jZWxsc1ttX2NlbGxdKTsKICAgICB9CiAgICAg
CiAgICAgLy8gSXRlcmF0b3JzIGFkdmFuY2UgdXAgdG8gdGhlIG5leHQtdG8tbGFzdCAtLSBhbmQg
bm90IHRoZSBsYXN0IC0tIGNlbGwgaW4gYQpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9EYXRlSW5zdGFuY2VDYWNoZS5oIGIvSmF2YVNjcmlwdENvcmUvcnVudGltZS9EYXRlSW5z
dGFuY2VDYWNoZS5oCmluZGV4IGQyMDg1ODBhMzRlYmQ1ZTYzOWViNmIxZmRlM2NhYmI3ODA2NTBi
ZjQuLmI2MGMyOWE2MGVlZDNkNzJiNjRkMDQzMGJlMjg1YWU0OGJkZjgxZWMgMTAwNjQ0Ci0tLSBh
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvRGF0ZUluc3RhbmNlQ2FjaGUuaAorKysgYi9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0RhdGVJbnN0YW5jZUNhY2hlLmgKQEAgLTg2LDcgKzg2LDcgQEAgbmFt
ZXNwYWNlIEpTQyB7CiAKICAgICAgICAgQ2FjaGVFbnRyeSYgbG9va3VwKGRvdWJsZSBkKSB7IHJl
dHVybiBtX2NhY2hlW1dURjo6RmxvYXRIYXNoPGRvdWJsZT46Omhhc2goZCkgJiAoY2FjaGVTaXpl
IC0gMSldOyB9CiAKLSAgICAgICAgQ2FjaGVFbnRyeSBtX2NhY2hlW2NhY2hlU2l6ZV07CisgICAg
ICAgIEZpeGVkQXJyYXk8Q2FjaGVFbnRyeSwgY2FjaGVTaXplPiBtX2NhY2hlOwogICAgIH07CiAK
IH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcnVudGltZS9K
U1N0cmluZy5jcHAgYi9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nLmNwcAppbmRleCAx
ZDVlNjM5NzE0ZjVmNDc4MTEzOTBiZTRkN2JkZWI4MDMwOTM2YjhlLi4xM2M1YTUxYWI3MmJlMjc2
MmJhYzU4ZjdlODY3NmNjMDc3NDVhMjJhIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTU3RyaW5nLmNwcAorKysgYi9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTU3RyaW5nLmNw
cApAQCAtMTIwLDcgKzEyMCw3IEBAIEpTVmFsdWUgSlNTdHJpbmc6OnJlcGxhY2VDaGFyYWN0ZXIo
RXhlY1N0YXRlKiBleGVjLCBVQ2hhciBjaGFyYWN0ZXIsIGNvbnN0IFVTdHJpCiAgICAgc2l6ZV90
IGZpYmVyQ291bnQgPSAwOwogICAgIFVTdHJpbmdJbXBsKiBtYXRjaFN0cmluZyA9IDA7CiAgICAg
aW50IG1hdGNoUG9zaXRpb24gPSAtMTsKLSAgICBmb3IgKFJvcGVJdGVyYXRvciBpdChtX290aGVy
Lm1fZmliZXJzLCBtX2ZpYmVyQ291bnQpOyBpdCAhPSBlbmQ7ICsraXQpIHsKKyAgICBmb3IgKFJv
cGVJdGVyYXRvciBpdChtX290aGVyLm1fZmliZXJzLmRhdGEoKSwgbV9maWJlckNvdW50KTsgaXQg
IT0gZW5kOyArK2l0KSB7CiAgICAgICAgICsrZmliZXJDb3VudDsKICAgICAgICAgaWYgKG1hdGNo
U3RyaW5nKQogICAgICAgICAgICAgY29udGludWU7CkBAIC0xMzksNyArMTM5LDcgQEAgSlNWYWx1
ZSBKU1N0cmluZzo6cmVwbGFjZUNoYXJhY3RlcihFeGVjU3RhdGUqIGV4ZWMsIFVDaGFyIGNoYXJh
Y3RlciwgY29uc3QgVVN0cmkKICAgICBpZiAoVU5MSUtFTFkoYnVpbGRlci5pc091dE9mTWVtb3J5
KCkpKQogICAgICAgICByZXR1cm4gdGhyb3dPdXRPZk1lbW9yeUVycm9yKGV4ZWMpOwogCi0gICAg
Zm9yIChSb3BlSXRlcmF0b3IgaXQobV9vdGhlci5tX2ZpYmVycywgbV9maWJlckNvdW50KTsgaXQg
IT0gZW5kOyArK2l0KSB7CisgICAgZm9yIChSb3BlSXRlcmF0b3IgaXQobV9vdGhlci5tX2ZpYmVy
cy5kYXRhKCksIG1fZmliZXJDb3VudCk7IGl0ICE9IGVuZDsgKytpdCkgewogICAgICAgICBVU3Ry
aW5nSW1wbCogc3RyaW5nID0gKml0OwogICAgICAgICBpZiAoc3RyaW5nICE9IG1hdGNoU3RyaW5n
KSB7CiAgICAgICAgICAgICBidWlsZGVyLmFwcGVuZChVU3RyaW5nKHN0cmluZykpOwpkaWZmIC0t
Z2l0IGEvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1N0cmluZy5oIGIvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU1N0cmluZy5oCmluZGV4IDk3NWVmNDU0N2RkMTgzYjU3NDQ0YmZjNTE0N2JkZGVl
ODFlOTU4MzEuLjUzYzE0NGI0YjNmNDk2MDE4MzY5OGMzMTRhZDliZDhkODA5MDBjZDEgMTAwNjQ0
Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNTdHJpbmcuaAorKysgYi9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTU3RyaW5nLmgKQEAgLTQxNyw3ICs0MTcsNyBAQCBuYW1lc3BhY2UgSlND
IHsKICAgICAgICAgc3RydWN0IEpTU3RyaW5nRmluYWxpemVyU3RydWN0IHsKICAgICAgICAgICAg
IEpTU3RyaW5nRmluYWxpemVyU3RydWN0KCkgOiBtX2ZpbmFsaXplckNhbGxiYWNrKDApIHt9CiAg
ICAgICAgICAgICB1bmlvbiB7Ci0gICAgICAgICAgICAgICAgbXV0YWJsZSBSb3BlSW1wbDo6Rmli
ZXIgbV9maWJlcnNbc19tYXhJbnRlcm5hbFJvcGVMZW5ndGhdOworICAgICAgICAgICAgICAgIG11
dGFibGUgRml4ZWRBcnJheTxSb3BlSW1wbDo6RmliZXIsIHNfbWF4SW50ZXJuYWxSb3BlTGVuZ3Ro
PiBtX2ZpYmVyczsKICAgICAgICAgICAgICAgICBzdHJ1Y3QgewogICAgICAgICAgICAgICAgICAg
ICBKU1N0cmluZ0ZpbmFsaXplckNhbGxiYWNrIG1fZmluYWxpemVyQ2FsbGJhY2s7CiAgICAgICAg
ICAgICAgICAgICAgIHZvaWQqIG1fZmluYWxpemVyQ29udGV4dDsKZGlmZiAtLWdpdCBhL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvTnVtZXJpY1N0cmluZ3MuaCBiL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvTnVtZXJpY1N0cmluZ3MuaAppbmRleCA4OTIzNWFmNzc2NmViNDBiMTJmNDY5MTM0NjBmODk4
OGIwMzlkOGMzLi40N2ZiYmIyOGQ2ZjFlOTMxOGEyMmU2NzE3NjFiNTEwMzNiOWM3MGJmIDEwMDY0
NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL051bWVyaWNTdHJpbmdzLmgKKysrIGIvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9OdW1lcmljU3RyaW5ncy5oCkBAIC0yNyw2ICsyNyw3IEBACiAj
ZGVmaW5lIE51bWVyaWNTdHJpbmdzX2gKIAogI2luY2x1ZGUgIlVTdHJpbmcuaCIKKyNpbmNsdWRl
IDx3dGYvRml4ZWRBcnJheS5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoRnVuY3Rpb25zLmg+CiAKIG5h
bWVzcGFjZSBKU0MgewpAQCAtODYsMTAgKzg3LDEwIEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAg
ICAgICAgcmV0dXJuIHNtYWxsSW50Q2FjaGVbaV07CiAgICAgICAgIH0KIAotICAgICAgICBDYWNo
ZUVudHJ5PGRvdWJsZT4gZG91YmxlQ2FjaGVbY2FjaGVTaXplXTsKLSAgICAgICAgQ2FjaGVFbnRy
eTxpbnQ+IGludENhY2hlW2NhY2hlU2l6ZV07Ci0gICAgICAgIENhY2hlRW50cnk8dW5zaWduZWQ+
IHVuc2lnbmVkQ2FjaGVbY2FjaGVTaXplXTsKLSAgICAgICAgVVN0cmluZyBzbWFsbEludENhY2hl
W2NhY2hlU2l6ZV07CisgICAgICAgIEZpeGVkQXJyYXk8Q2FjaGVFbnRyeTxkb3VibGU+LCBjYWNo
ZVNpemU+IGRvdWJsZUNhY2hlOworICAgICAgICBGaXhlZEFycmF5PENhY2hlRW50cnk8aW50Piwg
Y2FjaGVTaXplPiBpbnRDYWNoZTsKKyAgICAgICAgRml4ZWRBcnJheTxDYWNoZUVudHJ5PHVuc2ln
bmVkPiwgY2FjaGVTaXplPiB1bnNpZ25lZENhY2hlOworICAgICAgICBGaXhlZEFycmF5PFVTdHJp
bmcsIGNhY2hlU2l6ZT4gc21hbGxJbnRDYWNoZTsKICAgICB9OwogCiB9IC8vIG5hbWVzcGFjZSBK
U0MKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ2FjaGUuaCBiL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvUmVnRXhwQ2FjaGUuaAppbmRleCAwM2I3M2FjZmRkZGRiNzhh
NWM3NzliMTNhYjdlYjIxMDBmMjZkYjlkLi42YjdiMjQwZGJhMTBlY2M2OTM1NTA2ZTBjMDQyMzc4
ZDhlZjQzOTQ3IDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1JlZ0V4cENhY2hl
LmgKKysrIGIvSmF2YVNjcmlwdENvcmUvcnVudGltZS9SZWdFeHBDYWNoZS5oCkBAIC00NSw3ICs0
NSw3IEBAIHByaXZhdGU6CiAgICAgc3RhdGljIGNvbnN0IGludCBtYXhDYWNoZWFibGVFbnRyaWVz
ID0gMjU2OwogCiAgICAgdHlwZWRlZiBIYXNoTWFwPFJlZ0V4cEtleSwgUmVmUHRyPFJlZ0V4cD4g
PiBSZWdFeHBDYWNoZU1hcDsKLSAgICBSZWdFeHBLZXkgcGF0dGVybktleUFycmF5W21heENhY2hl
YWJsZUVudHJpZXNdOworICAgIEZpeGVkQXJyYXk8UmVnRXhwS2V5LCBtYXhDYWNoZWFibGVFbnRy
aWVzPiBwYXR0ZXJuS2V5QXJyYXk7CiAgICAgUmVnRXhwQ2FjaGVNYXAgbV9jYWNoZU1hcDsKICAg
ICBKU0dsb2JhbERhdGEqIG1fZ2xvYmFsRGF0YTsKICAgICBpbnQgbV9uZXh0S2V5VG9FdmljdDsK
ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU21hbGxTdHJpbmdzLmggYi9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1NtYWxsU3RyaW5ncy5oCmluZGV4IGJjMzM3Yzk5NTgwNmQzNWMx
YWYxMTFjNTY5Mzc2MGRlMTIyZDNkNTQuLmI1NTBhMDQ3NTgwZTU3NTFhOTI1OGUxNGNhMzIwY2E4
NWI0ZTM1MmEgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU21hbGxTdHJpbmdz
LmgKKysrIGIvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TbWFsbFN0cmluZ3MuaApAQCAtMjcsNiAr
MjcsNyBAQAogI2RlZmluZSBTbWFsbFN0cmluZ3NfaAogCiAjaW5jbHVkZSAiVVN0cmluZy5oIgor
I2luY2x1ZGUgPHd0Zi9GaXhlZEFycmF5Lmg+CiAjaW5jbHVkZSA8d3RmL093blB0ci5oPgogCiBu
YW1lc3BhY2UgSlNDIHsKQEAgLTYxLDE0ICs2MiwxNCBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAg
ICAgICB1bnNpZ25lZCBjb3VudCgpIGNvbnN0OwogI2lmIEVOQUJMRShKSVQpCi0gICAgICAgIEpT
U3RyaW5nKiogc2luZ2xlQ2hhcmFjdGVyU3RyaW5ncygpIHsgcmV0dXJuIG1fc2luZ2xlQ2hhcmFj
dGVyU3RyaW5nczsgfQorICAgICAgICBKU1N0cmluZyoqIHNpbmdsZUNoYXJhY3RlclN0cmluZ3Mo
KSB7IHJldHVybiBtX3NpbmdsZUNoYXJhY3RlclN0cmluZ3MuZGF0YSgpOyB9CiAjZW5kaWYKICAg
ICBwcml2YXRlOgogICAgICAgICB2b2lkIGNyZWF0ZUVtcHR5U3RyaW5nKEpTR2xvYmFsRGF0YSop
OwogICAgICAgICB2b2lkIGNyZWF0ZVNpbmdsZUNoYXJhY3RlclN0cmluZyhKU0dsb2JhbERhdGEq
LCB1bnNpZ25lZCBjaGFyKTsKIAogICAgICAgICBKU1N0cmluZyogbV9lbXB0eVN0cmluZzsKLSAg
ICAgICAgSlNTdHJpbmcqIG1fc2luZ2xlQ2hhcmFjdGVyU3RyaW5nc1sweDEwMF07CisgICAgICAg
IEZpeGVkQXJyYXk8SlNTdHJpbmcqLCAweDEwMD4gbV9zaW5nbGVDaGFyYWN0ZXJTdHJpbmdzOwog
ICAgICAgICBPd25QdHI8U21hbGxTdHJpbmdzU3RvcmFnZT4gbV9zdG9yYWdlOwogICAgIH07CiAK
ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3d0Zi9BVkxUcmVlLmggYi9KYXZhU2NyaXB0Q29y
ZS93dGYvQVZMVHJlZS5oCmluZGV4IGQ3NDcwZTdmOTU2NTg4ZWFjYmI2MzYyZWZjNTkxZjRkZTc0
YmFlYjYuLmVjOGE2Mzk1MWQzNDY2MzYxNWI3M2Q5ODhhMWMwZWZiZjM1OGFkZGEgMTAwNjQ0Ci0t
LSBhL0phdmFTY3JpcHRDb3JlL3d0Zi9BVkxUcmVlLmgKKysrIGIvSmF2YVNjcmlwdENvcmUvd3Rm
L0FWTFRyZWUuaApAQCAtMzMsNiArMzMsNyBAQAogI2RlZmluZSBBVkxfVFJFRV9IXwogCiAjaW5j
bHVkZSAiQXNzZXJ0aW9ucy5oIgorI2luY2x1ZGUgPHd0Zi9GaXhlZEFycmF5Lmg+CiAKIG5hbWVz
cGFjZSBXVEYgewogCkBAIC03MCw3ICs3MSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHJlc2V0KCkg
eyBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgbWF4RGVwdGg7ICsraSkgbV9kYXRhW2ldID0gZmFs
c2U7IH0KIAogcHJpdmF0ZToKLSAgICBib29sIG1fZGF0YVttYXhEZXB0aF07CisgICAgRml4ZWRB
cnJheTxib29sLCBtYXhEZXB0aD4gbV9kYXRhOwogfTsKIAogLy8gSG93IHRvIGRldGVybWluZSBt
YXhEZXB0aDoKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3d0Zi9GaXhlZEFycmF5LmggYi9K
YXZhU2NyaXB0Q29yZS93dGYvRml4ZWRBcnJheS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY2ZjIzMjcwYTBjOGQ2
NjBkNWI3MmRmYTExNmIzYWM5OTJiODFhYTcKLS0tIC9kZXYvbnVsbAorKysgYi9KYXZhU2NyaXB0
Q29yZS93dGYvRml4ZWRBcnJheS5oCkBAIC0wLDAgKzEsNTMgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZu
ZGVmIEZpeGVkQXJyYXlfaAorI2RlZmluZSBGaXhlZEFycmF5X2gKKworI2luY2x1ZGUgPHd0Zi9B
c3NlcnRpb25zLmg+CisKK25hbWVzcGFjZSBXVEYgewordGVtcGxhdGUgPHR5cGVuYW1lIFQsIGlu
dCBTaXplPiBjbGFzcyBGaXhlZEFycmF5IHsKK3B1YmxpYzoKKyAgICBUJiBvcGVyYXRvcltdKHNp
emVfdCBpKQorICAgIHsKKyAgICAgICAgQVNTRVJUKGkgPCBTaXplKTsKKyAgICAgICAgcmV0dXJu
IG1fZGF0YVtpXTsKKyAgICB9CisKKyAgICBjb25zdCBUJiBvcGVyYXRvcltdKHNpemVfdCBpKSBj
b25zdAorICAgIHsKKyAgICAgICAgQVNTRVJUKGkgPCBTaXplKTsKKyAgICAgICAgcmV0dXJuIG1f
ZGF0YVtpXTsKKyAgICB9CisKKyAgICBUKiBkYXRhKCkgeyByZXR1cm4gbV9kYXRhOyB9Citwcml2
YXRlOgorICAgIFQgbV9kYXRhW1NpemVdOworfTsKK30KK3VzaW5nIFdURjo6Rml4ZWRBcnJheTsK
KworI2VuZGlmIC8vIEZpeGVkQXJyYXlfaApkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdEdsdWUvQ2hh
bmdlTG9nIGIvSmF2YVNjcmlwdEdsdWUvQ2hhbmdlTG9nCmluZGV4IGExZjBkNDg1NTllZDQ5NTY1
NzM4ZjBmNzM5NjVhOTMzOTliNWE2NzIuLjJjNWYwYzYyYjU2NzJhOWMzN2RlODk4NjZjYzZiZWNl
MjI3MDM5OGUgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRHbHVlL0NoYW5nZUxvZworKysgYi9KYXZh
U2NyaXB0R2x1ZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMC0wNy0wMSAgT2xpdmVy
IEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEFkZCBhIEZpeGVkQXJyYXkgdGVtcGxhdGUgdG8gZW5jYXBzdWxh
dGUgZml4ZWQgbGVuZ3RoIGFycmF5cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NDE1MDYKKworICAgICAgICBBZGQgZm9yd2FyZGluZyBoZWFkZXIuCisK
KyAgICAgICAgKiBGb3J3YXJkaW5nSGVhZGVycy93dGYvRml4ZWRBcnJheS5oOiBBZGRlZC4KKwog
MjAxMC0wNi0wMiAgR2F2aW4gQmFycmFjbG91Z2ggIDxiYXJyYWNsb3VnaEBhcHBsZS5jb20+CiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgT2xpdmVyIEh1bnQuCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0
R2x1ZS9Gb3J3YXJkaW5nSGVhZGVycy93dGYvRml4ZWRBcnJheS5oIGIvSmF2YVNjcmlwdEdsdWUv
Rm9yd2FyZGluZ0hlYWRlcnMvd3RmL0ZpeGVkQXJyYXkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jYzlmNTk5ODgz
Nzc3NTEwZjJlODk1YjdkNTIyYTFmNmQ5Zjc0NzkyCi0tLSAvZGV2L251bGwKKysrIGIvSmF2YVNj
cmlwdEdsdWUvRm9yd2FyZGluZ0hlYWRlcnMvd3RmL0ZpeGVkQXJyYXkuaApAQCAtMCwwICsxIEBA
CisjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvRml4ZWRBcnJheS5oPgpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAxNTg0OTAwNTBjZjI2Y2Vi
ZjUyZDBiYzIyODc2YmY4MDhkZTU1MmYwLi44ZGEyYWE1MWI5ZjQyNTNjNjVmZjJkOTJhNWUyOTg0
MWQ2ZWM1M2U0IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEwLTA3LTAxICBPbGl2ZXIgSHVudCAgPG9saXZl
ckBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkIGEgRml4ZWRBcnJheSB0ZW1wbGF0ZSB0byBlbmNhcHN1bGF0ZSBmaXhlZCBsZW5n
dGggYXJyYXlzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD00MTUwNgorCisgICAgICAgIEFkZCBmb3J3YXJkaW5nIGhlYWRlciwgYW5kIHJlcGxhY2UgYSBm
ZXcgZml4ZWQgbGVuZ3RoIGFycmF5cworICAgICAgICB3aXRoIHRoZSBuZXcgRml4ZWRBcnJheSB0
eXBlLgorCisgICAgICAgICogRm9yd2FyZGluZ0hlYWRlcnMvd3RmL0ZpeGVkQXJyYXkuaDogQWRk
ZWQuCisgICAgICAgICogZG9tL0RvY3VtZW50Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvR2x5cGhNZXRyaWNzTWFwLmg6CisKIDIwMTAtMDctMDEgIEFuZHJlYXMgS2xpbmcgIDxhbmRy
ZWFzLmtsaW5nQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBUb3IgQXJuZSBWZXN0
YsO4LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy93dGYvRml4ZWRBcnJh
eS5oIGIvV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy93dGYvRml4ZWRBcnJheS5oCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmZjOGRkN2U0YTlhYmYyZTAyMjJjNDJmOGE0OTQwYjg0ZTBjNDhjODkKLS0tIC9kZXYvbnVs
bAorKysgYi9XZWJDb3JlL0ZvcndhcmRpbmdIZWFkZXJzL3d0Zi9GaXhlZEFycmF5LmgKQEAgLTAs
MCArMSw0IEBACisjaWZuZGVmIFdlYkNvcmVfRldEX0ZpeGVkQXJyYXlfaAorI2RlZmluZSBXZWJD
b3JlX0ZXRF9GaXhlZEFycmF5X2gKKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9GaXhlZEFycmF5
Lmg+CisjZW5kaWYKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0RvY3VtZW50LmggYi9XZWJDb3Jl
L2RvbS9Eb2N1bWVudC5oCmluZGV4IDRjNTA3MTMyZDNlNTgyZDVhYWMyNDY0NGQ4MTY2MmZjMGQ1
ZmZkMzIuLjg4ODRhMWI4Yjk5NWY4M2E5Njc3YWE0NzNhZGRkYzMyYWFlYmI2NmYgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKKysrIGIvV2ViQ29yZS9kb20vRG9jdW1lbnQuaApA
QCAtMTIyNSw4ICsxMjI1LDggQEAgcHJpdmF0ZToKICAgICBDaGVja2VkUmFkaW9CdXR0b25zIG1f
Y2hlY2tlZFJhZGlvQnV0dG9uczsKIAogICAgIHR5cGVkZWYgSGFzaE1hcDxBdG9taWNTdHJpbmdJ
bXBsKiwgQ29sbGVjdGlvbkNhY2hlKj4gTmFtZWRDb2xsZWN0aW9uTWFwOwotICAgIENvbGxlY3Rp
b25DYWNoZSBtX2NvbGxlY3Rpb25JbmZvW051bVVubmFtZWREb2N1bWVudENhY2hlZFR5cGVzXTsK
LSAgICBOYW1lZENvbGxlY3Rpb25NYXAgbV9uYW1lQ29sbGVjdGlvbkluZm9bTnVtTmFtZWREb2N1
bWVudENhY2hlZFR5cGVzXTsKKyAgICBGaXhlZEFycmF5PENvbGxlY3Rpb25DYWNoZSwgTnVtVW5u
YW1lZERvY3VtZW50Q2FjaGVkVHlwZXM+IG1fY29sbGVjdGlvbkluZm87CisgICAgRml4ZWRBcnJh
eTxOYW1lZENvbGxlY3Rpb25NYXAsIE51bU5hbWVkRG9jdW1lbnRDYWNoZWRUeXBlcz4gbV9uYW1l
Q29sbGVjdGlvbkluZm87CiAKICNpZiBFTkFCTEUoWFBBVEgpCiAgICAgUmVmUHRyPFhQYXRoRXZh
bHVhdG9yPiBtX3hwYXRoRXZhbHVhdG9yOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9HbHlwaE1ldHJpY3NNYXAuaCBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2x5
cGhNZXRyaWNzTWFwLmgKaW5kZXggNWUxM2FmZTQ3YWVhZTJhOWJkMzYyODgwOGY3YjdlYTYwYTVj
NDc4ZS4uODJlMjM0YjUyN2EwNzk2OWIyYzhkMDE0ZDVjMDNhOTZjM2Y1YmE3ZiAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HbHlwaE1ldHJpY3NNYXAuaAorKysgYi9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dseXBoTWV0cmljc01hcC5oCkBAIC0yOSw2ICsyOSw3IEBA
CiAjaWZuZGVmIEdseXBoTWV0cmljc01hcF9oCiAjZGVmaW5lIEdseXBoTWV0cmljc01hcF9oCiAK
KyNpbmNsdWRlIDx3dGYvRml4ZWRBcnJheS5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAj
aW5jbHVkZSA8d3RmL093blB0ci5oPgogI2luY2x1ZGUgPHd0Zi91bmljb2RlL1VuaWNvZGUuaD4K
QEAgLTYxLDcgKzYyLDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBzdHJ1Y3QgR2x5cGhNZXRy
aWNzUGFnZSB7CiAgICAgICAgIHN0YXRpYyBjb25zdCBzaXplX3Qgc2l6ZSA9IDI1NjsgLy8gVXN1
YWxseSBjb3ZlcnMgTGF0aW4tMSBpbiBhIHNpbmdsZSBwYWdlLgotICAgICAgICBUIG1fbWV0cmlj
c1tzaXplXTsKKyAgICAgICAgRml4ZWRBcnJheTxULCBzaXplPiBtX21ldHJpY3M7CiAKICAgICAg
ICAgVCBtZXRyaWNzRm9yR2x5cGgoR2x5cGggZ2x5cGgpIGNvbnN0IHsgcmV0dXJuIG1fbWV0cmlj
c1tnbHlwaCAlIHNpemVdOyB9CiAgICAgICAgIHZvaWQgc2V0TWV0cmljc0ZvckdseXBoKEdseXBo
IGdseXBoLCBjb25zdCBUJiBtZXRyaWNzKQo=
</data>
<flag name="review"
          id="47773"
          type_id="1"
          status="+"
          setter="mjs"
    />
          </attachment>
      

    </bug>

</bugzilla>