<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>10717</bug_id>
          
          <creation_ts>2007-01-26 16:48:31 +0300</creation_ts>
          <short_desc>не поддерживает большие файлы</short_desc>
          <delta_ts>2007-02-01 18:52:20 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>mdf2iso</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</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="Alexey Shabalin">shaba</reporter>
          <assigned_to name="Nobody&apos;s working on this, feel free to take it">nobody</assigned_to>
          
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>44810</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Shabalin">shaba</who>
    <bug_when>2007-01-26 16:48:31 +0300</bug_when>
    <thetext>не поддерживает большие файлы
есть патч, исправляющий это:
https://developer.berlios.de/patch/index.php?func=detailpatch&amp;patch_id=665&amp;group_id=2545

Steps to Reproduce:
1. mdf2iso H5DVD.mdf H5DVD.iso

Actual Results:  
File too large</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44811</commentid>
    <comment_count>1</comment_count>
      <attachid>1763</attachid>
    <who name="Alexey Shabalin">shaba</who>
    <bug_when>2007-01-26 16:51:46 +0300</bug_when>
    <thetext>Created attachment 1763
Поддержка больших файлов

Поддержка больших файлов</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44814</commentid>
    <comment_count>2</comment_count>
    <who name="Konstantin Pavlov">thresh</who>
    <bug_when>2007-01-26 20:18:09 +0300</bug_when>
    <thetext>приложим.

на самом деле, я не видел mdf-файлов больше &gt;2G, с которыми бы нельзя было
сделать mount -o loop file.mdf /mnt/somewhere :)
Есть подозрение, что в файлах такого размера немного иная структура и mount с
ней вполне справляется.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44898</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Shabalin">shaba</who>
    <bug_when>2007-01-29 20:18:07 +0300</bug_when>
    <thetext>да, так у меня и получилось - был образ DVD в mdf, который нормально
примонтировался. (а конвентироватся все равно отказался, но уже по другой
причине - типа это уже не mdf, а iso 9660)
Но патч думаю не помешает.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44972</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Shabalin">shaba</who>
    <bug_when>2007-02-01 18:52:05 +0300</bug_when>
    <thetext>в Сизифе</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>1763</attachid>
            <date>2007-01-26 16:51:46 +0300</date>
            <delta_ts>2007-01-26 16:51:46 +0300</delta_ts>
            <desc>Поддержка больших файлов</desc>
            <filename>mdf2iso.patch</filename>
            <type>text/plain</type>
            <size>17631</size>
            <attacher name="Alexey Shabalin">shaba</attacher>
            
              <data encoding="base64">T25seSBpbiBtZGYyaXNvL3NyYzogLmRlcHMKT25seSBpbiBtZGYyaXNvLm5ldy9zcmM6IC5rZGJn
cmMubWRmMmlzbwpkaWZmIC1idXIgbWRmMmlzby9zcmMvTWFrZWZpbGUuYW0gbWRmMmlzby5uZXcv
c3JjL01ha2VmaWxlLmFtCi0tLSBtZGYyaXNvL3NyYy9NYWtlZmlsZS5hbQkyMDA1LTA1LTE5IDEx
OjI0OjExLjAwMDAwMDAwMCArMDIwMAorKysgbWRmMmlzby5uZXcvc3JjL01ha2VmaWxlLmFtCTIw
MDUtMDctMzEgMTc6NDc6MzYuMDAwMDAwMDAwICswMjAwCkBAIC0xLDIgKzEsMyBAQAogYmluX1BS
T0dSQU1TID0gbWRmMmlzbwogbWRmMmlzb19TT1VSQ0VTID0gbWRmMmlzby5jCitBTV9DRkxBR1Mg
PSAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IC1XYWxsCmRpZmYgLWJ1ciBtZGYyaXNvL3NyYy9NYWtl
ZmlsZS5pbiBtZGYyaXNvLm5ldy9zcmMvTWFrZWZpbGUuaW4KLS0tIG1kZjJpc28vc3JjL01ha2Vm
aWxlLmluCTIwMDUtMDUtMjIgMjE6NDI6MDkuMDAwMDAwMDAwICswMjAwCisrKyBtZGYyaXNvLm5l
dy9zcmMvTWFrZWZpbGUuaW4JMjAwNS0wNy0zMSAxNzo0OToxNi4wMDAwMDAwMDAgKzAyMDAKQEAg
LTEzNiw2ICsxMzYsNyBAQAogc3lzY29uZmRpciA9IEBzeXNjb25mZGlyQAogdGFyZ2V0X2FsaWFz
ID0gQHRhcmdldF9hbGlhc0AKIG1kZjJpc29fU09VUkNFUyA9IG1kZjJpc28uYworQU1fQ0ZMQUdT
ID0gLURfRklMRV9PRkZTRVRfQklUUz02NCAtV2FsbAogYWxsOiBhbGwtYW0KIAogLlNVRkZJWEVT
OgpAQCAtMTQ5LDkgKzE1MCw5IEBACiAJICAgICAgZXhpdCAxOzsgXAogCSAgZXNhYzsgXAogCWRv
bmU7IFwKLQllY2hvICcgY2QgJCh0b3Bfc3JjZGlyKSAmJiAkKEFVVE9NQUtFKSAtLWZvcmVpZ24g
IHNyYy9NYWtlZmlsZSc7IFwKKwllY2hvICcgY2QgJCh0b3Bfc3JjZGlyKSAmJiAkKEFVVE9NQUtF
KSAtLWdudSAgc3JjL01ha2VmaWxlJzsgXAogCWNkICQodG9wX3NyY2RpcikgJiYgXAotCSAgJChB
VVRPTUFLRSkgLS1mb3JlaWduICBzcmMvTWFrZWZpbGUKKwkgICQoQVVUT01BS0UpIC0tZ251ICBz
cmMvTWFrZWZpbGUKIC5QUkVDSU9VUzogTWFrZWZpbGUKIE1ha2VmaWxlOiAkKHNyY2RpcikvTWFr
ZWZpbGUuaW4gJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5zdGF0dXMKIAlAY2FzZSAnJD8nIGluIFwK
ZGlmZiAtYnVyIG1kZjJpc28vc3JjL21kZjJpc28uYyBtZGYyaXNvLm5ldy9zcmMvbWRmMmlzby5j
Ci0tLSBtZGYyaXNvL3NyYy9tZGYyaXNvLmMJMjAwNS0wNS0yMiAyMTo1MjowOC4wMDAwMDAwMDAg
KzAyMDAKKysrIG1kZjJpc28ubmV3L3NyYy9tZGYyaXNvLmMJMjAwNS0wNy0zMSAxOTo0MTo1Ni4w
MDAwMDAwMDAgKzAyMDAKQEAgLTEsNCArMSw0IEBACi0gLyogICRJZDogbWRmMmlzby5jLCAyMi8w
NS8wNSAKKy8qICAkSWQ6IG1kZjJpc28uYywgMjIvMDUvMDUgCiAKICAgICBDb3B5cmlnaHQgKEMp
IDIwMDQsMjAwNSBTYWx2YXRvcmUgU2FudGFnYXRpIDxzYWx2YXRvcmUuc2FudGFnYXRpQGdtYWls
LmNvbT4gICAKIApAQCAtMTYsMTkgKzE2LDE0IEBACiAgICAgYWxvbmcgd2l0aCB0aGlzIHByb2dy
YW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgIEZy
ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAKICAgICA1OSBUZW1wbGUgUGxhY2UgLSBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEg
IDAyMTExLTEzMDcsIFVTQS4gICAgICAgIAotICAqLworKi8KIAogI2luY2x1ZGUgPHN0ZGlvLmg+
CiAjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8ZXJy
bm8uaD4KIAotI2RlZmluZSBWRVJTSU9OICIwLjMuMCIKLQotLyogU3VwcG9ydCBMYXJnZSBGaWxl
ICovCi0KLSNkZWZpbmUgX0ZJTEVfT0ZGU0VUX0JJVFMgNjQKLQorI2RlZmluZSBWRVJTSU9OICIw
LjMuMSIKIAogCiBjb25zdCBjaGFyIFNZTkNfSEVBREVSWzEyXSA9IHsgKGNoYXIpIDB4MDAsCkBA
IC04MywxNCArNzgsMjEgQEAKICAgKGNoYXIpIDB4MDAKIH07CiAKKyNkZWZpbmUgSVNPOTY2MCAw
CisjZGVmaW5lIFNZTkMgMQorI2RlZmluZSBTWU5DX01ERiAyCisjZGVmaW5lIE1ERl9BVURJTyAz
CisjZGVmaW5lIFVOS05PV04gLTEKIAotdm9pZAotdG9jX2ZpbGUgKGNoYXIgKmRlc3RmaWxlbmFt
ZSwgaW50IHN1YikKK2ludCB0b2NfZmlsZSAoY2hhciAqZGVzdGZpbGVuYW1lLCBpbnQgc3ViKQog
ewotICBjaGFyIGRlc3RmaWxldG9jWzEwMjRdLCBkZXN0ZmlsZWRhdFsxMDI0XTsKKyAgaW50IHJl
dD0wOworICBjaGFyICpkZXN0ZmlsZXRvYzsKKyAgY2hhciAqZGVzdGZpbGVkYXQ7CiAgIEZJTEUg
KmZ0b2M7Ci0gIHN0cmNweSAoZGVzdGZpbGV0b2MsIGRlc3RmaWxlbmFtZSk7Ci0gIHN0cmNweSAo
ZGVzdGZpbGVkYXQsIGRlc3RmaWxlbmFtZSk7CisgIAorICBkZXN0ZmlsZXRvYz1zdHJkdXAoZGVz
dGZpbGVuYW1lKTsKKyAgZGVzdGZpbGVkYXQ9c3RyZHVwKGRlc3RmaWxlbmFtZSk7CiAgIHN0cmNw
eSAoZGVzdGZpbGV0b2MgKyBzdHJsZW4gKGRlc3RmaWxlbmFtZSkgLSA0LCAiLnRvYyIpOwogICBz
dHJjcHkgKGRlc3RmaWxlZGF0ICsgc3RybGVuIChkZXN0ZmlsZW5hbWUpIC0gNCwgIi5kYXQiKTsK
IApAQCAtMTAwLDExICsxMDIsOCBAQAogICAgICAgZnByaW50ZiAoZnRvYywgIi8vIFRyYWNrIDFc
biIpOwogICAgICAgZnByaW50ZiAoZnRvYywgIlRSQUNLIE1PREUxX1JBVyIpOwogCi0gICAgICBp
ZiAoc3ViID09IDEpCi0JZnByaW50ZiAoZnRvYywgIiBSV19SQVdcbiIpOwotCi0gICAgICBlbHNl
Ci0JZnByaW50ZiAoZnRvYywgIlxuIik7CisgICAgaWYgKHN1YiA9PSAxKSBmcHJpbnRmIChmdG9j
LCAiIFJXX1JBV1xuIik7CisgICAgZWxzZSBmcHJpbnRmIChmdG9jLCAiXG4iKTsKIAogICAgICAg
ZnByaW50ZiAoZnRvYywgIk5PIENPUFlcbiIpOwogICAgICAgZnByaW50ZiAoZnRvYywgIkRBVEFG
SUxFIFwiJXNcIlxuIiwgZGVzdGZpbGVkYXQpOwpAQCAtMTE0LDI2ICsxMTMsMjcgQEAKICAgICB9
CiAgIGVsc2UKICAgICB7Ci0gICAgICBwcmludGYgKCIlc1xuIiwgc3RyZXJyb3IgKGVycm5vKSk7
Ci0gICAgICBleGl0IChFWElUX0ZBSUxVUkUpOworICAgIHByaW50ZiAoIkVycm9yIG9wZW5pbmcg
JXMgZm9yIG91dHB1dDogJXNcbiIsZGVzdGZpbGV0b2Msc3RyZXJyb3IoZXJybm8pKTsKKyAgICBy
ZXQ9LTE7CiAgICAgfTsKLQorICBmcmVlKGRlc3RmaWxldG9jKTsKKyAgZnJlZShkZXN0ZmlsZWRh
dCk7CisgIHJldHVybiByZXQ7CiB9CiAKLWludAotbnVtYmVyX2ZpbGUgKGNoYXIgKmRlc3RmaWxl
bmFtZSkKKy8qCitpbnQgbnVtYmVyX2ZpbGUgKGNoYXIgKmRlc3RmaWxlbmFtZSkKIHsKICAgaW50
IGkgPSAxLCB0ZXN0X21kZiA9IDA7CiAgIGludCBuX21kZjsKICAgY2hhciBtZGZbMl0sIGRlc3Rm
aWxlbWRmWzIzNTRdOwogICBGSUxFICpmc291cmNlOworICAKICAgc3RyY3B5IChkZXN0ZmlsZW1k
ZiwgZGVzdGZpbGVuYW1lKTsKICAgc3RyY3B5IChkZXN0ZmlsZW1kZiArIHN0cmxlbiAoZGVzdGZp
bGVuYW1lKSAtIDEsICIuMCIpOwogICBmb3IgKGkgPSAwOyB0ZXN0X21kZiA9PSAwOyBpKyspCi0K
ICAgICB7CiAgICAgICBpZiAoKGZzb3VyY2UgPSBmb3BlbiAoZGVzdGZpbGVtZGYsICJyYiIpKSAh
PSBOVUxMKQotCiAJewogCSAgcHJpbnRmICgiXG5DaGVjayA6ICIpOwogCSAgc3ByaW50ZiAobWRm
LCAibWQlZCIsIGkpOwpAQCAtMTQxLDIwMyArMTQxLDIxOSBAQAogCSAgcHJpbnRmICgiJXMsICIs
IGRlc3RmaWxlbWRmKTsKIAkgIGZjbG9zZSAoZnNvdXJjZSk7CiAJfQotCiAgICAgICBlbHNlCiAJ
ewogCSAgdGVzdF9tZGYgPSAxOwogCX0KLSAgICB9OworICB9CiAgIHByaW50ZiAoIlxyICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiIpOwogICBuX21kZiA9IGkgLSAxOwogICBy
ZXR1cm4gKG5fbWRmKTsKIH0KKyovCiAKLXZvaWQKLWN1ZXNoZWV0cyAoY2hhciAqZGVzdGZpbGVu
YW1lKQoraW50IGN1ZXNoZWV0cyAoY2hhciAqZGVzdGZpbGVuYW1lKQogewotICBjaGFyIGRlc3Rm
aWxlY3VlWzEwMjRdLCBkZXN0ZmlsZWJpblsxMDI0XTsKKyAgaW50IHJldD0wOworICBjaGFyICpk
ZXN0ZmlsZWN1ZTsKKyAgY2hhciAqZGVzdGZpbGViaW47CiAgIEZJTEUgKmZjdWU7Ci0gIHN0cmNw
eSAoZGVzdGZpbGVjdWUsIGRlc3RmaWxlbmFtZSk7Ci0gIHN0cmNweSAoZGVzdGZpbGViaW4sIGRl
c3RmaWxlbmFtZSk7CisgIAorICBkZXN0ZmlsZWN1ZT1zdHJkdXAoZGVzdGZpbGVuYW1lKTsKKyAg
ZGVzdGZpbGViaW49c3RyZHVwKGRlc3RmaWxlbmFtZSk7CiAgIHN0cmNweSAoZGVzdGZpbGVjdWUg
KyBzdHJsZW4gKGRlc3RmaWxlbmFtZSkgLSA0LCAiLmN1ZSIpOwogICBzdHJjcHkgKGRlc3RmaWxl
YmluICsgc3RybGVuIChkZXN0ZmlsZW5hbWUpIC0gNCwgIi5iaW4iKTsKLSAgZmN1ZSA9IGZvcGVu
IChkZXN0ZmlsZWN1ZSwgInciKTsKKyAgaWYgKChmY3VlID0gZm9wZW4gKGRlc3RmaWxlY3VlLCAi
dyIpKSE9TlVMTCkKKyAgewogICBmcHJpbnRmIChmY3VlLCAiRklMRSBcIiVzXCIgQklOQVJZXG4i
LCBkZXN0ZmlsZWJpbik7CiAgIGZwcmludGYgKGZjdWUsICJUUkFDSyAxIE1PREUxLzIzNTJcbiIp
OwogICBmcHJpbnRmIChmY3VlLCAiSU5ERVggMSAwMDowMDowMFxuIik7CiAgIHJlbmFtZSAoZGVz
dGZpbGVuYW1lLCBkZXN0ZmlsZWJpbik7CiAgIHByaW50ZiAoIkNyZWF0ZSBDdWVzaGVldHMgOiAl
c1xuIiwgZGVzdGZpbGVjdWUpOwogICBmY2xvc2UgKGZjdWUpOworICB9CisgIGVsc2UKKyAgewor
ICAgIHByaW50ZiAoIkVycm9yIG9wZW5pbmcgJXMgZm9yIG91dHB1dDogJXNcbiIsZGVzdGZpbGVj
dWUsc3RyZXJyb3IoZXJybm8pKTsKKyAgICByZXQ9LTE7CisgIH0KKyAgcmV0dXJuIHJldDsKIH0K
IAotdm9pZAotbWFpbl9wZXJjZW50IChpbnQgcGVyY2VudF9iYXIpCitpbnQgcHJldmlvdXNfcGVy
Y2VudD0tMTsKK3ZvaWQgbWFpbl9wZXJjZW50IChpbnQgcGVyY2VudF9iYXIpCisvLyBQcmludHMg
YSBwcm9ncmVzcyBiYXIsIHRha2VzIGEgcGVyY2VudGFnZSBhcyBhcmd1bWVudC4KIHsKLSAgaW50
IHByb2dyZXNzX2JhciwgcHJvZ3Jlc3Nfc3BhY2U7CisgIC8vaW50IHByb2dyZXNzX2JhciwgcHJv
Z3Jlc3Nfc3BhY2U7CisgCisgIGlmIChwZXJjZW50X2Jhcj09cHJldmlvdXNfcGVyY2VudCkgcmV0
dXJuOyAgLy8gTm90aGluZyBjaGFuZ2VkLCBkb24ndCB3YXN0ZSBDUFUgY3ljbGVzLgorICAKKyAg
cHJpbnRmKCIlM2QlJSBbOiUuKnM+JS4qczpdXHIiLHBlcmNlbnRfYmFyLDIwLShwZXJjZW50X2Jh
ci81KSwiICAgICAgICAgICAgICAgICAgICAiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBwZXJjZW50X2Jhci81LCI9PT09PT09PT09PT09PT09PT09
PSIpOworICAvKgogICBwcmludGYgKCIlZCUlIFs6IiwgcGVyY2VudF9iYXIpOwotICBmb3IgKHBy
b2dyZXNzX2JhciA9IDE7IHByb2dyZXNzX2JhciA8PSAoaW50KSAocGVyY2VudF9iYXIgLyA1KTsK
LSAgICAgICBwcm9ncmVzc19iYXIrKykKKyAgZm9yIChwcm9ncmVzc19iYXIgPSAxOyBwcm9ncmVz
c19iYXIgPD0gKGludCkgKHBlcmNlbnRfYmFyIC8gNSk7IHByb2dyZXNzX2JhcisrKQogICAgIHBy
aW50ZiAoIj0iKTsKICAgcHJpbnRmICgiPiIpOwogCi0gIGZvciAocHJvZ3Jlc3Nfc3BhY2UgPSAw
OyBwcm9ncmVzc19zcGFjZSA8ICgyMCAtIHByb2dyZXNzX2Jhcik7Ci0gICAgICAgcHJvZ3Jlc3Nf
c3BhY2UrKykKLSAgICBwcmludGYgKCIgIik7CisgIGZvciAoOyBwcm9ncmVzc19iYXIgPD0gMjA7
ICsrcHJvZ3Jlc3NfYmFyKSBwcmludGYgKCIgIik7CiAgIHByaW50ZiAoIjpdXHIiKTsKKyAgKi8K
IH0KIAotdm9pZAotdXNhZ2UgKCkKK3ZvaWQgdXNhZ2UgKCkKKy8vIFByaW50cyB0aGUgY29tbWFu
ZCBsaW5lIHN5bnRheAogewotICBwcmludGYgKCJtZGYyaXNvIHYlcyBieSBTYWx2YXRvcmUgU2Fu
dGFnYXRpXG4iLCBWRVJTSU9OKTsKLSAgcHJpbnRmICgiV2ViICAgICA6IGh0dHAvL21kZjJpc28u
YmVybGlvcy5kZVxuIik7Ci0gIHByaW50ZiAoIkVtYWlsICAgOiBzYWx2YXRvcmUuc2FudGFnYXRp
QGdtYWlsLmNvbVxuIik7Ci0gIHByaW50ZiAoIklyYyAgICAgOiBpcmMuZnJlZW5vZGUubmV0ICNp
Z251c1xuIik7Ci0gIHByaW50ZiAoIk5vdGUJOiBpb2RlbGxhdml0YW5vbmhvY2FwaXRvdW5jYXp6
b1xuIik7Ci0gIHByaW50ZiAoIkxpY2Vuc2UgOiByZWxlYXNlZCB1bmRlciB0aGUgR05VIEdQTCB2
MiBvciBsYXRlclxuXG4iKTsKKyAgcHJpbnRmICgiIFdlYiAgICAgOiBodHRwLy9tZGYyaXNvLmJl
cmxpb3MuZGVcbiIpOworICBwcmludGYgKCIgRW1haWwgICA6IHNhbHZhdG9yZS5zYW50YWdhdGlA
Z21haWwuY29tXG4iKTsKKyAgcHJpbnRmICgiIElyYyAgICAgOiBpcmMuZnJlZW5vZGUubmV0ICNp
Z251c1xuIik7CisgIHByaW50ZiAoIiBOb3RlICAgIDogaW9kZWxsYXZpdGFub25ob2NhcGl0b3Vu
Y2F6em9cblxuIik7CiAgIHByaW50ZiAoIlVzYWdlIDpcbiIpOwotICBwcmludGYgKCJtZGYyaXNv
IFtPUFRJT05dIFtCQVNFTkFNRS5NREZdIFtERVNUSU5BVElPTl1cblxuIik7Ci0gIHByaW50ZiAo
Ik9QVElPTlxuIik7Ci0gIHByaW50ZiAoIlx0LS10b2MgICAgR2VuZXJhdGUgdG9jIGZpbGVcbiIp
OwotICBwcmludGYgKCJcdC0tY3VlICAgIEdlbmVyYXRlIGN1ZSBmaWxlXG4iKTsKLSAgcHJpbnRm
ICgiXHQtLWhlbHAgICBkaXNwbGF5IHRoaXMgbm90aWNlXG5cbiIpOworICBwcmludGYgKCJtZGYy
aXNvIFstLWN1ZXwtLXRvY3wtLWhlbHBdIDxzb3VyY2VmaWxlPiBbZGVzdGZpbGVdXG5cbiIpOwor
ICBwcmludGYgKCJPcHRpb25zOlxuIik7CisgIHByaW50ZiAoIiAgLS10b2MgICAgR2VuZXJhdGUg
dG9jL2RhdCBmaWxlc1xuIik7CisgIHByaW50ZiAoIiAgLS1jdWUgICAgR2VuZXJhdGUgY3VlL2Jp
biBmaWxlc1xuIik7CisgIHByaW50ZiAoIiAgLS1oZWxwICAgRGlzcGxheSB0aGlzIG5vdGljZVxu
Iik7CisgIHByaW50ZiAoIiBzb3VyY2VmaWxlXHRGaWxlbmFtZSBvZiB0aGUgLm1kZiBmaWxlIHRv
IGJlIGNvbnZlcnRlZFxuIik7CisgIHByaW50ZiAoIiBkZXN0ZmlsZVx0RmlsZW5hbWUgb2YgdGhl
IHRhcmdldCBJU085NjYwIGZpbGUuXG4iXAorICAgICAgICAgICJcdFx0SWYgbm9uZSBnaXZlbiwg
b25lIGlzIGRlcml2ZWQgZnJvbSBzb3VyY2VmaWxlLlxuXG4iKTsKIH0KIAotaW50Ci1tYWluIChp
bnQgYXJnYywgY2hhciAqKmFyZ3YpCitjaGFyIG1kZnR5cGUoRklMRSAqZikKKy8qIHJldHVybnMg
CisgICAtMSBmb3IgdW5rbm93bgorICAgMCBmb3IgSVNPOTY2MAorICAgMSBmb3IgU1lOQworICAg
MiBmb3IgU1lOQyBNREYKKyAgIDMgZm9yIE1ERiBBdWRpbworICAgKHNlZSAjZGVmaW5lcyBhYm92
ZSkKKyovCiB7Ci0gIGludCBzZWVrX2VjYywgc2VjdG9yX3NpemUsIHNlZWtfaGVhZCwgc2VjdG9y
X2RhdGEsIG5fbWRmOworICBjaGFyIGJ1ZlsxMl07CisgIAorICBmc2VlayhmLCAzMjc2OCwgU0VF
S19TRVQpOworICBmcmVhZChidWYsIHNpemVvZiAoY2hhciksIDgsIGYpOworICBpZiAoIW1lbWNt
cCAoSVNPXzk2NjAsIGJ1ZiwgOCkpIHJldHVybiBJU085NjYwOyAvLyBGaWxlIGlzIElTTzk2NjAK
KyAgCisgIGZzZWVrKGYsIDBMLCBTRUVLX1NFVCk7CisgIGZyZWFkKGJ1Ziwgc2l6ZW9mIChjaGFy
KSwgMTIsIGYpOworICAKKyAgZnNlZWsgKGYsIDIzNTIsIFNFRUtfU0VUKTsKKyAgCisgIGlmICgh
bWVtY21wIChTWU5DX0hFQURFUiwgYnVmLCAxMikpICAvLyBIYXMgU1lOQ19IRUFERVIKKyAgewor
ICAgIGZyZWFkIChidWYsIHNpemVvZiAoY2hhciksIDEyLCBmKTsKKyAgICBpZiAoIW1lbWNtcCAo
U1lOQ19IRUFERVJfTURGLCBidWYsIDEyKSkgcmV0dXJuIFNZTkNfTURGOyAgIC8vIEZpbGUgaXMg
U1lOQyBNREYKKyAgICBpZiAoIW1lbWNtcCAoU1lOQ19IRUFERVIsIGJ1ZiwgMTIpKSByZXR1cm4g
U1lOQzsgICAgICAgLy8gRmlsZSBpcyBTWU5DCisgIH0KKyAgZWxzZSAgLy8gRG9lcyBub3QgaGF2
ZSBTWU5DX0hFQURFUgorICB7CisgICAgZnJlYWQoYnVmLCBzaXplb2YgKGNoYXIpLCAxMiwgZik7
CisgICAgaWYgKCFtZW1jbXAgKFNZTkNfSEVBREVSX01ERl9BVURJTywgYnVmLCAxMikpIHJldHVy
biBNREZfQVVESU87IC8vIEZpbGUgaXMgTURGIEF1ZGlvCisgIH0KKworICAvLyBSZWFjaGVkIGEg
cG9pbnQgd2hlcmUgbm90aGluZyBlbHNlIG1hdHRlcnMuICAKKyAgcmV0dXJuIFVOS05PV047ICAv
LyBVbmtub3duIGZvcm1hdAorfQorCisKKy8vID09PSBNYWluIHByb2dyYW0gY29kZSA9PT0KKwor
aW50IG1haW4gKGludCBhcmdjLCBjaGFyICoqYXJndikKK3sKKyAgaW50IHNlZWtfZWNjLCBzZWN0
b3Jfc2l6ZSwgc2Vla19oZWFkLCBzZWN0b3JfZGF0YTsvLywgbl9tZGY7CiAgIGludCBjdWUgPSAw
LCBjdWVfbW9kZSA9IDAsIHN1YiA9IDEsIHRvYyA9IDAsIHN1Yl90b2MgPSAwOwogICBpbnQgb3B0
cyA9IDA7Ci0gIGRvdWJsZSBzaXplX2lzbywgd3JpdGVfaXNvOwotICBsb25nIHBlcmNlbnQgPSAw
OwotICBsb25nIGksIHNvdXJjZV9sZW5ndGgsIHByb2dyZXNzYmFyOwotICBjaGFyIGJ1ZlsyNDQ4
XSwgZGVzdGZpbGVuYW1lWzIzNTRdOworICBsb25nIGksIHNvdXJjZV9sZW5ndGg7CisgIGNoYXIg
YnVmWzI0NDhdOworICBjaGFyICpkZXN0ZmlsZW5hbWU9TlVMTDsKKyAgY2hhciAqYmFzZWZpbGVu
YW1lPU5VTEw7CiAgIEZJTEUgKmZkZXN0LCAqZnNvdXJjZTsKIAorICAvLyBQcmludCBpZGVudGlm
aWNhdGlvbgorICBwcmludGYgKCJtZGYyaXNvIHYlcyBieSBTYWx2YXRvcmUgU2FudGFnYXRpXG4i
LCBWRVJTSU9OKTsKKyAgcHJpbnRmICgiTGljZW5zZWQgdW5kZXIgR1BMIHYyIG9yIGxhdGVyXG4i
KTsKIAotICBpZiAoYXJnYyA8IDIpCiAKKyAgLy8gKioqIFByb2Nlc3MgY29tbWFuZCBsaW5lIG9w
dGlvbnMgKioqCisgIAorICBpZiAoYXJnYyA8IDIpCiAgICAgewotICAgICAgdXNhZ2UgKCk7Ci0g
ICAgICBleGl0IChFWElUX0ZBSUxVUkUpOworICAgIC8vIE5vdCBlbm91Z2ggcGFyYW1ldGVyczsg
cHJpbnQgaGVscAorICAgIHVzYWdlKCk7CisgICAgZXhpdChFWElUX0ZBSUxVUkUpOwogICAgIH0K
IAotICBlbHNlCi0KLSAgICB7CisgIC8vIFNlYXJjaCBmb3Igb3B0aW9ucyAtLWN1ZSBhbmQgLS10
b2MKICAgICAgIGZvciAoaSA9IDA7IGkgPCBhcmdjOyBpKyspCi0KIAl7Ci0KIAkgIGlmICghc3Ry
Y21wIChhcmd2W2ldLCAiLS1oZWxwIikpCi0KIAkgICAgewogCSAgICAgIHVzYWdlICgpOwogCSAg
ICAgIGV4aXQgKEVYSVRfU1VDQ0VTUyk7CiAJICAgIH0KIAkgIGlmICghc3RyY21wIChhcmd2W2ld
LCAiLS1jdWUiKSkKLQogCSAgICB7CiAJICAgICAgY3VlID0gMTsKIAkgICAgICBvcHRzKys7CiAJ
ICAgIH0KIAkgIGlmICghc3RyY21wIChhcmd2W2ldLCAiLS10b2MiKSkKLQogCSAgICB7CiAJICAg
ICAgdG9jID0gMTsKIAkgICAgICBvcHRzKys7CiAJICAgIH0KIAl9CiAKLSAgICAgIGlmICgoY3Vl
ID09IDEpICYmICh0b2MgPT0gMSkpCi0KLQl7Ci0JICB1c2FnZSAoKTsKLQkgIGV4aXQgKEVYSVRf
RkFJTFVSRSk7Ci0JfQotICAgICAgaWYgKChvcHRzID09IDEpICYmIChhcmdjIDw9IDIpKQotCisg
IC8vIENhdGNoIGltcG9zc2libGUgcGFyYW1ldGVyIGNvbWJpbmF0aW9ucworICBpZiAoKChjdWUg
PT0gMSkgJiYgKHRvYyA9PSAxKSkgfHwKKyAgICAgKChvcHRzID09IDEpICYmIChhcmdjIDw9IDIp
KSkKIAl7Ci0JICB1c2FnZSAoKTsKLQkgIGV4aXQgKEVYSVRfRkFJTFVSRSk7CisgICAgdXNhZ2Uo
KTsKKyAgICBleGl0KEVYSVRfRkFJTFVSRSk7CiAJfQogCisgIC8vIEdldCB0aGUgYmFzZSBmaWxl
bmFtZQorICBiYXNlZmlsZW5hbWU9YXJndlsxK29wdHNdOyAgLy8gc2ltcGxlIHBvaW50ZXIsIGJ1
dCBtYWtlcyBsaWZlIGVhc2llci4KIAorICAvLyBHZXQgdGhlIGRlc3RpbmF0aW9uIGZpbGVuYW1l
CiAgICAgICBpZiAoYXJnYyA+PSAoMyArIG9wdHMpKQotCXN0cmNweSAoZGVzdGZpbGVuYW1lLCBh
cmd2WzIgKyBvcHRzXSk7Ci0KLSAgICAgIGVsc2UKLQotCXsKLQkgIHN0cmNweSAoZGVzdGZpbGVu
YW1lLCBhcmd2WzEgKyBvcHRzXSk7Ci0JICBpZiAoc3RybGVuIChhcmd2WzEgKyBjdWVdKSA8IDUK
LQkgICAgICB8fCBzdHJjbXAgKGRlc3RmaWxlbmFtZSArIHN0cmxlbiAoYXJndlsxICsgb3B0c10p
IC0gNCwgIi5tZGYiKSkKLQkgICAgc3RyY3B5IChkZXN0ZmlsZW5hbWUgKyBzdHJsZW4gKGFyZ3Zb
MSArIG9wdHNdKSwgIi5pc28iKTsKLQorICAgIC8vIFRoZSBkZXN0aW5hdGlvbiBmaWxlbmFtZSBp
cyBleHBsaWNpdGx5IGVudGVyZWQgYXQgdGhlIHByb21wdAorICAgIGRlc3RmaWxlbmFtZT1zdHJk
dXAoYXJndlsyICsgb3B0c10pOwogCSAgZWxzZQotCSAgICBzdHJjcHkgKGRlc3RmaWxlbmFtZSAr
IHN0cmxlbiAoYXJndlsxICsgb3B0c10pIC0gNCwgIi5pc28iKTsKLQl9Ci0gICAgICBpZiAoKGZz
b3VyY2UgPSBmb3BlbiAoYXJndlsxICsgb3B0c10sICJyYiIpKSAhPSBOVUxMKQotCiAJewotCSAg
ZnNlZWsgKGZzb3VyY2UsIDMyNzY4LCBTRUVLX0NVUik7Ci0JICBmcmVhZCAoYnVmLCBzaXplb2Yg
KGNoYXIpLCA4LCBmc291cmNlKTsKLQkgIGlmIChtZW1jbXAgKElTT185NjYwLCBidWYsIDgpKQot
CisgICAgLy8gRGVyaXZlIGRlc3RpbmF0aW9uIGZpbGVuYW1lIGZyb20gdGhlIGJhc2VuYW1lOgor
ICAgIC8vICBJZiBiYXNlbmFtZSBpcyAiKi5tZGYiIHVzZSAiKi5pc28iIGFscyBkZXN0bmFtZQor
ICAgIC8vICBvdGhlcndpc2Ugc2ltcGx5IGFwcGVuZCAiLmlzbyIgdG8gdGhlIGJhc2VuYW1lIHRv
IGNyZWF0ZSBkZXN0bmFtZS4KKyAgICBkZXN0ZmlsZW5hbWU9c3RyZHVwKGJhc2VmaWxlbmFtZSk7
CisgICAgaT1zdHJsZW4oZGVzdGZpbGVuYW1lKTsgIC8vIFJldXNpbmcgJ2knIGhlcmUgYXMgdGVt
cG9yYXJ5IHZhcmlhYmxlCisgICAgaWYgKGkgPCA1IHx8IHN0cmNtcChkZXN0ZmlsZW5hbWUgKyBp
IC0gNCwgIi5tZGYiKSkKIAkgICAgewotCSAgICAgIGZzZWVrIChmc291cmNlLCAwTCwgU0VFS19T
RVQpOwotCSAgICAgIGZyZWFkIChidWYsIHNpemVvZiAoY2hhciksIDEyLCBmc291cmNlKTsKLQkg
ICAgICBpZiAoIW1lbWNtcCAoU1lOQ19IRUFERVIsIGJ1ZiwgMTIpKQotCi0JCXsKLQkJICBmc2Vl
ayAoZnNvdXJjZSwgMEwsIFNFRUtfU0VUKTsKLQkJICBmc2VlayAoZnNvdXJjZSwgMjM1MiwgU0VF
S19DVVIpOwotCQkgIGZyZWFkIChidWYsIHNpemVvZiAoY2hhciksIDEyLCBmc291cmNlKTsKLQkJ
ICBpZiAoIW1lbWNtcCAoU1lOQ19IRUFERVJfTURGLCBidWYsIDEyKSkKLQotCQkgICAgewotCQkg
ICAgICBpZiAoY3VlID09IDEpCi0JCQl7Ci0JCQkgIGN1ZV9tb2RlID0gMTsKLQotCQkJICAvKiBC
QUQgU0VDVE9SIFRPIE5PUk1BTCBJTUFHRSAqLwotCQkJICBzZWVrX2VjYyA9IDk2OwotCQkJICBz
ZWN0b3Jfc2l6ZSA9IDI0NDg7Ci0JCQkgIHNlY3Rvcl9kYXRhID0gMjM1MjsKLQkJCSAgc2Vla19o
ZWFkID0gMDsKLQkJCX0KLQotCQkgICAgICBlbHNlIGlmICh0b2MgPT0gMCkKLQotCQkJewotCi0J
CQkgIC8qQkFEIFNFQ1RPUiAqLwotCQkJICBzZWVrX2VjYyA9IDM4NDsKLQkJCSAgc2VjdG9yX3Np
emUgPSAyNDQ4OwotCQkJICBzZWN0b3JfZGF0YSA9IDIwNDg7Ci0JCQkgIHNlZWtfaGVhZCA9IDE2
OworICAgICAgZGVzdGZpbGVuYW1lPXJlYWxsb2MoZGVzdGZpbGVuYW1lLGkrNSk7IAorICAgICAg
c3RyY2F0KGRlc3RmaWxlbmFtZSwgIi5pc28iKTsKIAkJCX0KLQogCQkgICAgICBlbHNlCi0KLQkJ
CXsKLQotCQkJICAvKkJBRCBTRUNUT1IgKi8KLQkJCSAgc2Vla19lY2MgPSAwOwotCQkJICBzZWN0
b3Jfc2l6ZSA9IDI0NDg7Ci0JCQkgIHNlY3Rvcl9kYXRhID0gMjQ0ODsKLQkJCSAgc2Vla19oZWFk
ID0gMDsKLQkJCSAgc3ViX3RvYyA9IDE7Ci0JCQl9CisgICAgICBzdHJjcHkoZGVzdGZpbGVuYW1l
ICsgaSAtIDMsICJpc28iKTsKIAkJICAgIH0KIAotCQkgIGVsc2UKKyAgLy8gKioqIFByZXByb2Nl
c3MgYmFzZWZpbGUgKioqCiAKKyAgLy8gVHJ5IG9wZW5pbmcgYmFzZWZpbGUKKyAgaWYgKChmc291
cmNlID0gZm9wZW4oYmFzZWZpbGVuYW1lLCAicmIiKSkgPT0gTlVMTCkKIAkJICAgIHsKLQkJICAg
ICAgaWYgKCFtZW1jbXAgKFNZTkNfSEVBREVSLCBidWYsIDEyKSkKKyAgICBmcmVlKGRlc3RmaWxl
bmFtZSk7CisgICAgcHJpbnRmICgiQ291bGQgbm90IG9wZW4gJXM6ICVzXG4iLCBiYXNlZmlsZW5h
bWUsIHN0cmVycm9yKGVycm5vKSk7CisgICAgZXhpdCAoRVhJVF9GQUlMVVJFKTsKKyAgfQogCisg
IC8vIERldGVybWluZSBmaWxldHlwZSAmIHNldCBzb21lIHN0dWZmIGFjY29yZGluZ2x5IChvciBl
eGl0KQorICBzd2l0Y2ggKG1kZnR5cGUoZnNvdXJjZSkpCiAJCQl7CisgICAgY2FzZSBJU085NjYw
OgorICAgICAgICAgICAgcHJpbnRmKCIlcyBpcyBhbHJlYWR5IElTTzk2NjAuXG4iLGJhc2VmaWxl
bmFtZSk7CisgICAgICAgICAgICBmY2xvc2UoZnNvdXJjZSk7CisgICAgICAgICAgICBmcmVlKGRl
c3RmaWxlbmFtZSk7CisgICAgICAgICAgICBleGl0KEVYSVRfU1VDQ0VTUyk7CisgICAgY2FzZSBT
WU5DOiAKIAkJCSAgaWYgKGN1ZSA9PSAxKQogCQkJICAgIHsKIAkJCSAgICAgIGN1ZV9tb2RlID0g
MTsKQEAgLTM0OCwxMjkgKzM2NCwxMzQgQEAKIAkJCSAgICAgIHNlZWtfaGVhZCA9IDA7CiAJCQkg
ICAgfQogCQkJICBpZiAodG9jID09IDApCi0KIAkJCSAgICB7Ci0KIAkJCSAgICAgIC8qTk9STUFM
IElNQUdFICovCiAJCQkgICAgICBzZWVrX2VjYyA9IDI4ODsKIAkJCSAgICAgIHNlY3Rvcl9zaXpl
ID0gMjM1MjsKIAkJCSAgICAgIHNlY3Rvcl9kYXRhID0gMjA0ODsKIAkJCSAgICAgIHNlZWtfaGVh
ZCA9IDE2OwogCQkJICAgIH0KLQogCQkJICBlbHNlCi0KIAkJCSAgICB7CiAJCQkgICAgICBzZWVr
X2VjYyA9IDA7CiAJCQkgICAgICBzZWN0b3Jfc2l6ZSA9IDIzNTI7CiAJCQkgICAgICBzZWN0b3Jf
ZGF0YSA9IDIzNTI7CiAJCQkgICAgICBzZWVrX2hlYWQgPSAwOwogCQkJICAgIH0KLQkJCX0KLQot
CQkgICAgICBlbHNlCi0KLQkJCXsKLQkJCSAgcHJpbnRmICgiU29ycnkgSSBkb24ndCBrbm93IHRo
aXMgZm9ybWF0IDooXG4iKTsKLQkJCSAgZXhpdCAoRVhJVF9GQUlMVVJFKTsKLQkJCX0KLQkJICAg
IH0KLQkJfQotCi0JICAgICAgZWxzZQotCisgICAgICAgICAgICBicmVhazsKKyAgICBjYXNlIFNZ
TkNfTURGOgorICAgICAgICAgICAgaWYgKGN1ZSA9PSAxKQogCQl7Ci0JCSAgZnNlZWsgKGZzb3Vy
Y2UsIDBMLCBTRUVLX1NFVCk7Ci0JCSAgZnNlZWsgKGZzb3VyY2UsIDIzNTIsIFNFRUtfQ1VSKTsK
LQkJICBmcmVhZCAoYnVmLCBzaXplb2YgKGNoYXIpLCAxMiwgZnNvdXJjZSk7Ci0JCSAgaWYgKG1l
bWNtcCAoU1lOQ19IRUFERVJfTURGX0FVRElPLCBidWYsIDEyKSkKKyAgICAgICAgICAgICAgY3Vl
X21vZGUgPSAxOwogCisgICAgICAgICAgICAgIC8qIEJBRCBTRUNUT1IgVE8gTk9STUFMIElNQUdF
ICovCisgICAgICAgICAgICAgIHNlZWtfZWNjID0gOTY7CisgICAgICAgICAgICAgIHNlY3Rvcl9z
aXplID0gMjQ0ODsKKyAgICAgICAgICAgICAgc2VjdG9yX2RhdGEgPSAyMzUyOworICAgICAgICAg
ICAgICBzZWVrX2hlYWQgPSAwOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSBpZiAo
dG9jID09IDApCiAJCSAgICB7Ci0JCSAgICAgIHByaW50ZiAoIlNvcnJ5IEkgZG9uJ3Qga25vdyB0
aGlzIGZvcm1hdCA6KFxuIik7Ci0JCSAgICAgIGV4aXQgKEVYSVRfRkFJTFVSRSk7CisgICAgICAg
ICAgICAgIC8qQkFEIFNFQ1RPUiAqLworICAgICAgICAgICAgICBzZWVrX2VjYyA9IDM4NDsKKyAg
ICAgICAgICAgICAgc2VjdG9yX3NpemUgPSAyNDQ4OworICAgICAgICAgICAgICBzZWN0b3JfZGF0
YSA9IDIwNDg7CisgICAgICAgICAgICAgIHNlZWtfaGVhZCA9IDE2OwogCQkgICAgfQotCiAJCSAg
ZWxzZQotCiAJCSAgICB7Ci0KKyAgICAgICAgICAgICAgLypCQUQgU0VDVE9SICovCisgICAgICAg
ICAgICAgIHNlZWtfZWNjID0gMDsKKyAgICAgICAgICAgICAgc2VjdG9yX3NpemUgPSAyNDQ4Owor
ICAgICAgICAgICAgICBzZWN0b3JfZGF0YSA9IDI0NDg7CisgICAgICAgICAgICAgIHNlZWtfaGVh
ZCA9IDA7CisgICAgICAgICAgICAgIHN1Yl90b2MgPSAxOworICAgICAgICAgICAgfQorICAgICAg
ICAgICAgYnJlYWs7CisgICAgY2FzZSBNREZfQVVESU86CiAJCSAgICAgIC8qQkFEIFNFQ1RPUiBB
VURJTyAqLwogCQkgICAgICBzZWVrX2hlYWQgPSAwOwogCQkgICAgICBzZWN0b3Jfc2l6ZSA9IDI0
NDg7CiAJCSAgICAgIHNlZWtfZWNjID0gOTY7CiAJCSAgICAgIHNlY3Rvcl9kYXRhID0gMjM1MjsK
IAkJICAgICAgY3VlID0gMDsKKyAgICAgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6cHJpbnRm
KCJVbmtub3duIGZvcm1hdCBmb3IgJXMuXG4iLGJhc2VmaWxlbmFtZSk7CisgICAgICAgICAgICBm
Y2xvc2UoZnNvdXJjZSk7CisgICAgICAgICAgICBmcmVlKGRlc3RmaWxlbmFtZSk7CisgICAgICAg
ICAgICBleGl0IChFWElUX0ZBSUxVUkUpOwogCQkgICAgfQotCQl9Ci0JICAgICAgaWYgKChmZGVz
dCA9IGZvcGVuIChkZXN0ZmlsZW5hbWUsICJ3YiIpKSAhPSBOVUxMKTsKIAotCSAgICAgIGVsc2UK
KyAgLy8gICoqKiBDcmVhdGUgZGVzdGluYXRpb24gZmlsZSAqKioKKyAgICAKKyAgLy8gVHJ5IG9w
ZW5pbmcgdGhlIGRlc3RpbmF0aW9uIGZpbGUgZm9yIG91dHB1dAorICBpZiAoKGZkZXN0ID0gZm9w
ZW4gKGRlc3RmaWxlbmFtZSwgIndiIikpID09IE5VTEwpCiAJCXsKLQkJICBwcmludGYgKCIlc1xu
Iiwgc3RyZXJyb3IgKGVycm5vKSk7CisgICAgcHJpbnRmICgiVW5hYmxlIHRvIG9wZW4gJXMgZm9y
IG91dHB1dDogJXNcbiIsZGVzdGZpbGVuYW1lLHN0cmVycm9yKGVycm5vKSk7CisgICAgZnJlZShk
ZXN0ZmlsZW5hbWUpOworICAgIGZjbG9zZShmc291cmNlKTsKIAkJICBleGl0IChFWElUX0ZBSUxV
UkUpOwotCQl9OworICB9CisKKyAgICAKIAkgICAgICBmc2VlayAoZnNvdXJjZSwgMEwsIFNFRUtf
RU5EKTsKIAkgICAgICBzb3VyY2VfbGVuZ3RoID0gZnRlbGwgKGZzb3VyY2UpIC8gc2VjdG9yX3Np
emU7Ci0JICAgICAgc2l6ZV9pc28gPSAoaW50KSAoc291cmNlX2xlbmd0aCAqIHNlY3Rvcl9kYXRh
KTsKLQkgICAgICBwcm9ncmVzc2JhciA9IDEwMCAvIHNvdXJjZV9sZW5ndGg7CiAJICAgICAgZnNl
ZWsgKGZzb3VyY2UsIDBMLCBTRUVLX1NFVCk7Ci0KIAkgICAgICB7CiAJCWZvciAoaSA9IDA7IGkg
PCBzb3VyY2VfbGVuZ3RoOyBpKyspCi0KIAkJICB7CiAJCSAgICBmc2VlayAoZnNvdXJjZSwgc2Vl
a19oZWFkLCBTRUVLX0NVUik7Ci0JCSAgICBpZiAoZnJlYWQgKGJ1Ziwgc2l6ZW9mIChjaGFyKSwg
c2VjdG9yX2RhdGEsIGZzb3VyY2UpKTsKLQotCQkgICAgZWxzZQorICAgICAgaWYgKGZyZWFkKGJ1
Ziwgc2l6ZW9mIChjaGFyKSwgc2VjdG9yX2RhdGEsIGZzb3VyY2UpIT1zZWN0b3JfZGF0YSkKIAkJ
ICAgICAgewotCQkJcHJpbnRmICgiJXNcbiIsIHN0cmVycm9yIChlcnJubykpOworICAgICAgICBw
cmludGYgKCJFcnJvciByZWFkaW5nIGZyb20gJXM6ICVzXG4iLGJhc2VmaWxlbmFtZSwgc3RyZXJy
b3IgKGVycm5vKSk7CisgICAgICAgIGZjbG9zZShmc291cmNlKTsKKyAgICAgICAgZmNsb3NlKGZk
ZXN0KTsKKyAgICAgICAgcmVtb3ZlKGRlc3RmaWxlbmFtZSk7CisgICAgICAgIGZyZWUoZGVzdGZp
bGVuYW1lKTsKIAkJCWV4aXQgKEVYSVRfRkFJTFVSRSk7Ci0JCSAgICAgIH07Ci0JCSAgICBpZiAo
ZndyaXRlIChidWYsIHNpemVvZiAoY2hhciksIHNlY3Rvcl9kYXRhLCBmZGVzdCkpOwotCi0JCSAg
ICBlbHNlCisgICAgICB9CisgICAgICBpZiAoZndyaXRlIChidWYsIHNpemVvZiAoY2hhciksIHNl
Y3Rvcl9kYXRhLCBmZGVzdCkhPXNlY3Rvcl9kYXRhKQogCQkgICAgICB7Ci0JCQlwcmludGYgKCIl
c1xuIiwgc3RyZXJyb3IgKGVycm5vKSk7CisgICAgICAgIHByaW50ZiAoIkVycm9yIHdyaXRpbmcg
dG8gJXM6ICVzXG4iLGRlc3RmaWxlbmFtZSwgc3RyZXJyb3IgKGVycm5vKSk7CisgICAgICAgIGZj
bG9zZShmc291cmNlKTsKKyAgICAgICAgZmNsb3NlKGZkZXN0KTsKKyAgICAgICAgcmVtb3ZlKGRl
c3RmaWxlbmFtZSk7CisgICAgICAgIGZyZWUoZGVzdGZpbGVuYW1lKTsKIAkJCWV4aXQgKEVYSVRf
RkFJTFVSRSk7Ci0JCSAgICAgIH07CisgICAgICB9CiAJCSAgICBmc2VlayAoZnNvdXJjZSwgc2Vl
a19lY2MsIFNFRUtfQ1VSKTsKLQkJICAgIHdyaXRlX2lzbyA9IChpbnQpIChzZWN0b3JfZGF0YSAq
IGkpOwotCQkgICAgaWYgKGkgIT0gMCkKLQkJICAgICAgcGVyY2VudCA9IChpbnQpICh3cml0ZV9p
c28gKiAxMDAgLyBzaXplX2lzbyk7Ci0JCSAgICBtYWluX3BlcmNlbnQgKHBlcmNlbnQpOwotCSAg
ICAgIH19IHByaW50ZiAoIjEwMCUlWzo9PT09PT09PT09PT09PT09PT09PTpdXG4iKTsKKyAgICAg
IG1haW5fcGVyY2VudChpKjEwMC9zb3VyY2VfbGVuZ3RoKTsKKyAgICB9CisgIH0gcHJpbnRmICgi
MTAwJSUgWzo9PT09PT09PT09PT09PT09PT09PT06XVxuIik7CiAKIAkgICAgICBmY2xvc2UgKGZz
b3VyY2UpOwogCSAgICAgIGZjbG9zZSAoZmRlc3QpOwogCi0JICAgICAgaWYgKGN1ZSA9PSAxKQot
CQljdWVzaGVldHMgKGRlc3RmaWxlbmFtZSk7Ci0JICAgICAgaWYgKHRvYyA9PSAxKQotCQl0b2Nf
ZmlsZSAoZGVzdGZpbGVuYW1lLCBzdWJfdG9jKTsKKyAgLy8gKioqIGNyZWF0ZSBUb2Mgb3IgQ3Vl
IGZpbGUgaXMgcmVxdWVzdGVkICoqKgorICBpZiAoY3VlID09IDEpIGlmIChjdWVzaGVldHMoZGVz
dGZpbGVuYW1lKSkKKyAgeworICAgIGZyZWUoZGVzdGZpbGVuYW1lKTsKKyAgICBleGl0KEVYSVRf
RkFJTFVSRSk7CisgIH0KKyAgaWYgKHRvYyA9PSAxKSBpZiAodG9jX2ZpbGUoZGVzdGZpbGVuYW1l
LCBzdWJfdG9jKSkKKyAgeworICAgIGZyZWUoZGVzdGZpbGVuYW1lKTsKKyAgICBleGl0KEVYSVRf
RkFJTFVSRSk7CisgIH0KIAkgICAgICBpZiAoKHRvYyA9PSAwKSAmJiAoY3VlID09IDApKQotCQlw
cmludGYgKCJDcmVhdGUgaXNvOTY2MDogJXNcbiIsIGRlc3RmaWxlbmFtZSk7CisgICAgcHJpbnRm
KCJDcmVhdGVkIGlzbzk2NjA6ICVzXG4iLCBkZXN0ZmlsZW5hbWUpOworCisgIGZyZWUoZGVzdGZp
bGVuYW1lKTsKIAogCSAgICAgIGV4aXQgKEVYSVRfU1VDQ0VTUyk7Ci0JICAgIH0KIAotCSAgZWxz
ZQotCSAgICBwcmludGYgKCJUaGlzIGlzIGZpbGUgaXNvOTY2MCA7KVxuIik7CisvKgogCSAgbl9t
ZGYgPSBudW1iZXJfZmlsZSAoZGVzdGZpbGVuYW1lKSAtIDE7Ci0JICAvKiBpZiAobl9tZGYgPiAx
KQotCisgIC8gKiBpZiAobl9tZGYgPiAxKSAKIAkgICAgIHsKIAkgICAgIHByaW50ZiAoIlxyRGV0
ZWN0ICVkIG1kKiBmaWxlIGFuZCBub3cgZW1lcmdlIHRoaXNcbiIsIG5fbWRmKTsKIAkgICAgIH0K
LQkgICAqLworICAqIC8KIAkgIGZjbG9zZSAoZnNvdXJjZSk7Ci0JICBleGl0IChFWElUX1NVQ0NF
U1MpOwotCX0KLQotICAgICAgZWxzZQotCXsKLQkgIHByaW50ZiAoIiVzXG4iLCBzdHJlcnJvciAo
ZXJybm8pKTsKLQkgIGV4aXQgKEVYSVRfRkFJTFVSRSk7Ci0JfTsKLSAgICB9CisgIGV4aXQgKEVY
SVRfU1VDQ0VTUyk7Ki8KIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>