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

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

    <bug>
          <bug_id>34715</bug_id>
          
          <creation_ts>2018-03-26 19:36:53 +0300</creation_ts>
          <short_desc>[FR] добавить патч для поддержки кривых камер FLIR?</short_desc>
          <delta_ts>2018-03-26 19:36:53 +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>libdc1394-devel</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc>https://habrahabr.ru/post/86230/</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Shigorin">mike</reporter>
          <assigned_to name="Nobody&apos;s working on this, feel free to take it">nobody</assigned_to>
          <cc>lav</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>169906</commentid>
    <comment_count>0</comment_count>
      <attachid>7455</attachid>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2018-03-26 19:36:53 +0300</bug_when>
    <thetext>Created attachment 7455
реализация объездов для кривой камеры

Возможно, стоит добавить этот патч Вадима Фролова:
https://github.com/fralik/libdc1394-flir

Стоит иметь в виду, что апстрим патч проигнорировал (&quot;чините свои камеры&quot;).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>7455</attachid>
            <date>2018-03-26 19:36:53 +0300</date>
            <delta_ts>2018-03-26 19:36:53 +0300</delta_ts>
            <desc>реализация объездов для кривой камеры</desc>
            <filename>libdc1394-2.1.2-flir.patch</filename>
            <type>text/plain</type>
            <size>20740</size>
            <attacher name="Michael Shigorin">mike</attacher>
            
              <data encoding="base64">ZGlmZiAtY3JCIC4uL2Rpc3RyaWIvbGliZGMxMzk0LTIuMS4yL2RjMTM5NC9jYW1lcmEuaCBsaWJk
YzEzOTQtMi4xLjItZmxpci9kYzEzOTQvY2FtZXJhLmgKKioqIC4uL2Rpc3RyaWIvbGliZGMxMzk0
LTIuMS4yL2RjMTM5NC9jYW1lcmEuaAkyMDA5LTA2LTExIDA2OjA1OjQ3LjAwMDAwMDAwMCArMDIw
MAotLS0gbGliZGMxMzk0LTIuMS4yLWZsaXIvZGMxMzk0L2NhbWVyYS5oCTIwMDktMDktMzAgMTg6
MDY6NTkuMDAwMDAwMDAwICswMjAwCioqKioqKioqKioqKioqKgoqKiogMzMsMzggKioqKgotLS0g
MzMsNDUgLS0tLQogICovCiAgCiAgLyoqCisgICogRkxJUiBBNDAgY2FtZXJhIHVuaXQgc3BlYyBJ
RAorICAqCisgICogSXQgaXMgdXNlZCB0byB2ZXJpZnkgdGhhdCB3ZSBoYXZlIGEgRkxJUiBjYW1l
cmEKKyAgKi8KKyAjZGVmaW5lIEZMSVJfQTQwX01BR0lDIDB4NDA3RgorIAorIC8qKgogICAqIExp
c3Qgb2YgSUlEQyB2ZXJzaW9ucwogICAqCiAgICogQ3VycmVudGx5LCB0aGUgZm9sbG93aW5nIHZl
cnNpb25zIGV4aXN0OiAxLjA0LCAxLjIwLCBQVEdSRVksIDEuMzAgYW5kIDEuMzEgKDEuMzIgY29t
aW5nIHNvb24pCmRpZmYgLWNyQiAuLi9kaXN0cmliL2xpYmRjMTM5NC0yLjEuMi9kYzEzOTQvY29u
dHJvbC5jIGxpYmRjMTM5NC0yLjEuMi1mbGlyL2RjMTM5NC9jb250cm9sLmMKKioqIC4uL2Rpc3Ry
aWIvbGliZGMxMzk0LTIuMS4yL2RjMTM5NC9jb250cm9sLmMJMjAwOS0wNi0xMSAwNjowNTo0Ny4w
MDAwMDAwMDAgKzAyMDAKLS0tIGxpYmRjMTM5NC0yLjEuMi1mbGlyL2RjMTM5NC9jb250cm9sLmMJ
MjAwOS0xMS0xNiAxMToyMDoxNy4wMDAwMDAwMDAgKzAxMDAKKioqKioqKioqKioqKioqCioqKiA4
NCw4OSAqKioqCi0tLSA4NCw5MCAtLS0tCiAgdXBkYXRlX2NhbWVyYV9pbmZvIChkYzEzOTRjYW1l
cmFfdCAqY2FtZXJhKQogIHsKICAgICAgdWludDMyX3QgdmFsdWU9MCwgcXVhZHZhbCA9IDA7IC8v
IHNldCB0byB6ZXJvIHRvIGF2b2lkIHZhbGdyaW5kIGVycm9ycworICAgICB1aW50MzJfdCBmbGly
X3ZhbHVlID0gMTsKICAKICAgICAgZGMxMzk0X2dldF9jb250cm9sX3JlZ2lzdGVyKGNhbWVyYSwg
UkVHX0NBTUVSQV9CQVNJQ19GVU5DX0lOUSwgJnZhbHVlKTsKICAKKioqKioqKioqKioqKioqCioq
KiA1MTIsNTE3ICoqKioKLS0tIDUxMyw1MzAgLS0tLQogICAgICBlcnI9ZGMxMzk0X2dldF9jb250
cm9sX3JlZ2lzdGVyKGNhbWVyYSwgUkVHX0NBTUVSQV9WX0ZPUk1BVF9JTlEsICZzdXBfZm9ybWF0
cyk7CiAgICAgIERDMTM5NF9FUlJfUlROKGVyciwgIkNvdWxkIG5vdCBnZXQgc3VwcG9ydGVkIGZv
cm1hdHMiKTsKICAKKyAgICAgaWYgKGNhbWVyYS0+dW5pdF9zcGVjX0lEID09IEZMSVJfQTQwX01B
R0lDKQorICAgICB7CisgICAgIAkvKgorICAgICAJICogRkxJUiBoYXMgMCBpbiBSRUdfQ0FNRVJB
X1ZfRk9STUFUX0lOUSBhbmQgaW4gY29ycmVzcG9uZGluZyBtb2Rlcy4gT25lCisgICAgIAkgKiBj
YW4gZmluZCBvdXQgZm9ybWF0cyBleGFtaW5nIFJFR19DQU1FUkFfVl9NT0RFX0lOUV9CQVNFICsg
aS4gSXQgcmV0dXJucyAwCisgICAgIAkgKiBmb3Igc3VwcG9ydGVkIGZvcm1hdHMgYW5kICdFcnJv
cicgZm9yIHVuc3VwcG9ydGVkLiBUbyBmaW5kIG1vZGVzCisgICAgIAkgKiBvbmUgc2hvdWxkIGlu
cXVpcnkgZnJhbWVyYXRlcy4gU3VwcG9ydGVkIG1vZGVzIHdpbGwgaGF2ZSBtZWFuaW5nZnVsbAor
ICAgICAJICogdmFsdWVzIGZvciBmcmFtZXJhdGVzLgorICAgICAJICovCisgICAgIAlzdXBfZm9y
bWF0cyA9IDB4ODEwMDAwMDA7IC8vIEZvcm1hdF8wICYgRm9ybWF0XzcKKyAgICAgfQorIAogICAg
ICAvLyBmb3IgZWFjaCBmb3JtYXQgY2hlY2sgc3VwcG9ydGVkIG1vZGVzIGFuZCBhZGQgdGhlbSBh
cyB3ZSBmaW5kIHRoZW0uCiAgCiAgICAgIG1vZGVzLT5udW09MDsKKioqKioqKioqKioqKioqCioq
KiA1MjAsNTI1ICoqKioKLS0tIDUzMyw1NDIgLS0tLQogICAgICAgICAgZXJyPWRjMTM5NF9nZXRf
Y29udHJvbF9yZWdpc3RlcihjYW1lcmEsIFJFR19DQU1FUkFfVl9NT0RFX0lOUV9CQVNFICsgKChE
QzEzOTRfRk9STUFUMC1EQzEzOTRfRk9STUFUX01JTikgKiAweDA0VSksICZ2YWx1ZSk7CiAgICAg
ICAgICBEQzEzOTRfRVJSX1JUTihlcnIsICJDb3VsZCBub3QgZ2V0IHN1cHBvcnRlZCBtb2RlcyBm
b3IgRm9ybWF0XzAiKTsKICAKKyAgICAgICAgIGlmIChjYW1lcmEtPnVuaXRfc3BlY19JRCA9PSBG
TElSX0E0MF9NQUdJQykKKyAgICAgICAgIHsKKyAgICAgICAgIAl2YWx1ZSA9IDB4MTAwMDAwMDA7
CisgICAgICAgICB9CiAgICAgICAgICBmb3IgKG1vZGU9REMxMzk0X1ZJREVPX01PREVfRk9STUFU
MF9NSU47bW9kZTw9REMxMzk0X1ZJREVPX01PREVfRk9STUFUMF9NQVg7bW9kZSsrKSB7CiAgICAg
ICAgICAgICAgaWYgKCh2YWx1ZSAmICgweDE8PCgzMS0obW9kZS1EQzEzOTRfVklERU9fTU9ERV9G
T1JNQVQwX01JTikpKSkgPiAwKSB7CiAgICAgICAgICAgICAgICAgIG1vZGVzLT5tb2Rlc1ttb2Rl
cy0+bnVtXT1tb2RlOwoqKioqKioqKioqKioqKioKKioqIDU2OCw1NzMgKioqKgotLS0gNTg1LDU5
NCAtLS0tCiAgICAgICAgICBlcnI9ZGMxMzk0X2dldF9jb250cm9sX3JlZ2lzdGVyKGNhbWVyYSwg
UkVHX0NBTUVSQV9WX01PREVfSU5RX0JBU0UgKyAoKERDMTM5NF9GT1JNQVQ3LURDMTM5NF9GT1JN
QVRfTUlOKSAqIDB4MDRVKSwgJnZhbHVlKTsKICAgICAgICAgIERDMTM5NF9FUlJfUlROKGVyciwg
IkNvdWxkIG5vdCBnZXQgc3VwcG9ydGVkIG1vZGVzIGZvciBGb3JtYXRfNCIpOwogIAorICAgICAg
ICAgaWYgKGNhbWVyYS0+dW5pdF9zcGVjX0lEID09IEZMSVJfQTQwX01BR0lDKQorICAgICAgICAg
eworICAgICAgICAgCXZhbHVlID0gMHhFMDAwMDAwMDsKKyAgICAgICAgIH0KICAgICAgICAgIGZv
ciAobW9kZT1EQzEzOTRfVklERU9fTU9ERV9GT1JNQVQ3X01JTjttb2RlPD1EQzEzOTRfVklERU9f
TU9ERV9GT1JNQVQ3X01BWDttb2RlKyspIHsKICAgICAgICAgICAgICBpZiAoKHZhbHVlICYgKDB4
MTw8KDMxLShtb2RlLURDMTM5NF9WSURFT19NT0RFX0ZPUk1BVDdfTUlOKSkpKT4wKSB7CiAgICAg
ICAgICAgICAgICAgIG1vZGVzLT5tb2Rlc1ttb2Rlcy0+bnVtXT1tb2RlOwoqKioqKioqKioqKioq
KioKKioqIDIxMDAsMjEwNiAqKioqCi0tLSAyMTIxLDIxMjkgLS0tLQogICAgICAgICAgaWYgKGRp
c3AtPmNhbWVyYV9yZWFkIChwY2FtLCBvZmZzZXQgKyA0ICogaSwgJnF1YWQsIDEpIDwgMCkKICAg
ICAgICAgICAgICBnb3RvIGZhaWw7CiAgICAgICAgICBpZiAoKHF1YWQgPj4gMjQpID09IDB4NDAp
CisgICAgICAgICB7CiAgICAgICAgICAgICAgY29tbWFuZF9yZWdzX2Jhc2UgPSBxdWFkICYgMHhm
ZmZmZmY7CisgICAgICAgICB9CiAgICAgICAgICBlbHNlIGlmICgocXVhZCA+PiAyNCkgPT0gMHg4
MSkgewogICAgICAgICAgICAgIC8qCiAgICAgICAgICAgICAgICAgVGhlIGlTaWdodCB2ZXJzaW9u
IDEuMC4zIGhhcyB0d28gMHg4MSAodmVuZG9yKSBsZWF2ZXMgaW5zdGVhZAoqKioqKioqKioqKioq
KioKKioqIDIxNDIsMjE1OSAqKioqCiAgICAgIGNhbWVyYS0+dmVuZG9yID0gZ2V0X2xlYWZfc3Ry
aW5nIChwY2FtLCBkaXNwLCB2ZW5kb3JfbmFtZV9vZmZzZXQpOwogICAgICBjYW1lcmEtPm1vZGVs
ID0gZ2V0X2xlYWZfc3RyaW5nIChwY2FtLCBkaXNwLCBtb2RlbF9uYW1lX29mZnNldCk7CiAgCiEg
ICAgIGlmIChjYW1lcmEtPnVuaXRfc3BlY19JRCA9PSAweEEwMkQpIHsKICAgICAgICAgIGlmIChp
bmZvLT51bml0X3N3X3ZlcnNpb24gPT0gMHgxMDApCiAgICAgICAgICAgICAgY2FtZXJhLT5paWRj
X3ZlcnNpb24gPSBEQzEzOTRfSUlEQ19WRVJTSU9OXzFfMDQ7CiAgICAgICAgICBlbHNlIGlmIChp
bmZvLT51bml0X3N3X3ZlcnNpb24gPT0gMHgxMDEpCiAgICAgICAgICAgICAgY2FtZXJhLT5paWRj
X3ZlcnNpb24gPSBEQzEzOTRfSUlEQ19WRVJTSU9OXzFfMjA7CiEgICAgICAgICBlbHNlIGlmIChp
bmZvLT51bml0X3N3X3ZlcnNpb24gPT0gMHgxMDIpIHsKICAgICAgICAgICAgICBjYW1lcmEtPmlp
ZGNfdmVyc2lvbiA9IERDMTM5NF9JSURDX1ZFUlNJT05fMV8zMDsKICAgICAgICAgICAgICAvLyBv
bmx5IGFkZCBzdWJfc3dfdmVyc2lvbiBpZiBpdCBpcyB2YWxpZC4gT3RoZXJ3aXNlCiAgICAgICAg
ICAgICAgLy8gY29uc2lkZXIgdGhhdCBpdCdzIElJREMgMS4zMCAoaGVuY2UgYWRkIG5vdGhpbmcp
CiAgICAgICAgICAgICAgaWYgKCh1bml0X3N1Yl9zd192ZXJzaW9uID4+IDQpPD05KQogICAgICAg
ICAgICAgICAgICBjYW1lcmEtPmlpZGNfdmVyc2lvbiArPSB1bml0X3N1Yl9zd192ZXJzaW9uID4+
IDQ7CiAgICAgICAgICB9CiAgICAgIH0KICAgICAgZWxzZQogICAgICAgICAgY2FtZXJhLT5paWRj
X3ZlcnNpb24gPSBEQzEzOTRfSUlEQ19WRVJTSU9OX1BUR1JFWTsKLS0tIDIxNjUsMjE5NCAtLS0t
CiAgICAgIGNhbWVyYS0+dmVuZG9yID0gZ2V0X2xlYWZfc3RyaW5nIChwY2FtLCBkaXNwLCB2ZW5k
b3JfbmFtZV9vZmZzZXQpOwogICAgICBjYW1lcmEtPm1vZGVsID0gZ2V0X2xlYWZfc3RyaW5nIChw
Y2FtLCBkaXNwLCBtb2RlbF9uYW1lX29mZnNldCk7CiAgCiEgICAgIGlmIChjYW1lcmEtPnVuaXRf
c3BlY19JRCA9PSAweEEwMkQgfHwgY2FtZXJhLT51bml0X3NwZWNfSUQgPT0gRkxJUl9BNDBfTUFH
SUMpIC8vIEZMSVIgY2hlY2sKISAJewogICAgICAgICAgaWYgKGluZm8tPnVuaXRfc3dfdmVyc2lv
biA9PSAweDEwMCkKICAgICAgICAgICAgICBjYW1lcmEtPmlpZGNfdmVyc2lvbiA9IERDMTM5NF9J
SURDX1ZFUlNJT05fMV8wNDsKICAgICAgICAgIGVsc2UgaWYgKGluZm8tPnVuaXRfc3dfdmVyc2lv
biA9PSAweDEwMSkKICAgICAgICAgICAgICBjYW1lcmEtPmlpZGNfdmVyc2lvbiA9IERDMTM5NF9J
SURDX1ZFUlNJT05fMV8yMDsKISAgICAgICAgIGVsc2UgaWYgKGluZm8tPnVuaXRfc3dfdmVyc2lv
biA9PSAweDEwMikKISAJewohIAkgICAgcHJpbnRmKCJJSURDIDEuMzAsICVkXG4iLCBEQzEzOTRf
SUlEQ19WRVJTSU9OXzFfMzApOwogICAgICAgICAgICAgIGNhbWVyYS0+aWlkY192ZXJzaW9uID0g
REMxMzk0X0lJRENfVkVSU0lPTl8xXzMwOwogICAgICAgICAgICAgIC8vIG9ubHkgYWRkIHN1Yl9z
d192ZXJzaW9uIGlmIGl0IGlzIHZhbGlkLiBPdGhlcndpc2UKICAgICAgICAgICAgICAvLyBjb25z
aWRlciB0aGF0IGl0J3MgSUlEQyAxLjMwIChoZW5jZSBhZGQgbm90aGluZykKICAgICAgICAgICAg
ICBpZiAoKHVuaXRfc3ViX3N3X3ZlcnNpb24gPj4gNCk8PTkpCiAgICAgICAgICAgICAgICAgIGNh
bWVyYS0+aWlkY192ZXJzaW9uICs9IHVuaXRfc3ViX3N3X3ZlcnNpb24gPj4gNDsKICAgICAgICAg
IH0KKyAJZWxzZSBpZiAoaW5mby0+dW5pdF9zd192ZXJzaW9uID09IDB4MTAwMikKKyAJeworIAkJ
Ly8gRkxJUiwgSUlEQyAxLjMwCisgCQljYW1lcmEtPmlpZGNfdmVyc2lvbiA9IERDMTM5NF9JSURD
X1ZFUlNJT05fMV8zMDsKKyAgICAgICAgICAgICAvLyBvbmx5IGFkZCBzdWJfc3dfdmVyc2lvbiBp
ZiBpdCBpcyB2YWxpZC4gT3RoZXJ3aXNlCisgICAgICAgICAgICAgLy8gY29uc2lkZXIgdGhhdCBp
dCdzIElJREMgMS4zMCAoaGVuY2UgYWRkIG5vdGhpbmcpCisgICAgICAgICAgICAgaWYgKCh1bml0
X3N1Yl9zd192ZXJzaW9uID4+IDQpPD05KQorICAgICAgICAgICAgICAgICBjYW1lcmEtPmlpZGNf
dmVyc2lvbiArPSB1bml0X3N1Yl9zd192ZXJzaW9uID4+IDQ7CisgICAgICAgICB9CiAgICAgIH0K
ICAgICAgZWxzZQogICAgICAgICAgY2FtZXJhLT5paWRjX3ZlcnNpb24gPSBEQzEzOTRfSUlEQ19W
RVJTSU9OX1BUR1JFWTsKT25seSBpbiBsaWJkYzEzOTQtMi4xLjItZmxpci9kYzEzOTQ6IGNvbnRy
b2wuY34KZGlmZiAtY3JCIC4uL2Rpc3RyaWIvbGliZGMxMzk0LTIuMS4yL2RjMTM5NC9lbnVtZXJh
dGlvbi5jIGxpYmRjMTM5NC0yLjEuMi1mbGlyL2RjMTM5NC9lbnVtZXJhdGlvbi5jCioqKiAuLi9k
aXN0cmliL2xpYmRjMTM5NC0yLjEuMi9kYzEzOTQvZW51bWVyYXRpb24uYwkyMDA5LTA2LTExIDA2
OjA1OjQ3LjAwMDAwMDAwMCArMDIwMAotLS0gbGliZGMxMzk0LTIuMS4yLWZsaXIvZGMxMzk0L2Vu
dW1lcmF0aW9uLmMJMjAwOS0xMC0wMSAxMDo0MToyMi4wMDAwMDAwMDAgKzAyMDAKKioqKioqKioq
KioqKioqCioqKiA1Nyw2MiAqKioqCi0tLSA1Nyw2NCAtLS0tCiAgICAgICAgICAgICAgcmV0dXJu
IDA7CiAgICAgICAgICB9CiAgICAgIH0KKyAgICAgLy9wcmludGYoInVuaXRfc3cgb2YgYWRkZWQg
Y2FtZXJhIGlzIDB4JVhcbiIsIGluZm8tPnVuaXRfc3dfdmVyc2lvbik7CisgCiAgICAgIGQtPmNh
bWVyYXMgPSByZWFsbG9jIChkLT5jYW1lcmFzLCAobiArIDEpICogc2l6ZW9mIChjYW1lcmFfaW5m
b190KSk7CiAgICAgIG1lbWNweSAoZC0+Y2FtZXJhcyArIG4sIGluZm8sIHNpemVvZiAoY2FtZXJh
X2luZm9fdCkpOwogICAgICBkLT5udW1fY2FtZXJhcyA9IG4gKyAxOwoqKioqKioqKioqKioqKioK
KioqIDk0LDk5ICoqKioKLS0tIDk2LDEwMiAtLS0tCiAgewogICAgICBpZiAob2Zmc2V0ID49IG51
bV9xdWFkcykKICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgLy9wcmludGYoIk9mZnNldCBpcyAw
eCVYXG4iLCBvZmZzZXQpOwogICAgICBpbnQgbnVtX2VudHJpZXMgPSBxdWFkc1tvZmZzZXRdID4+
IDE2OwogICAgICBpZiAob2Zmc2V0ICsgbnVtX2VudHJpZXMgPj0gbnVtX3F1YWRzKQogICAgICAg
ICAgcmV0dXJuIC0xOwoqKioqKioqKioqKioqKioKKioqIDExMCwxMjMgKioqKgotLS0gMTEzLDEz
NiAtLS0tCiAgCiAgICAgIHVpbnQzMl90ICogZHF1YWRzID0gcXVhZHMgKyBvZmZzZXQgKyAxOwog
ICAgICBpbnQgaTsKKyAJLy9kYzEzOTRfbG9nX2RlYnVnKCJMb29raW5nIGludG8gdW5pdCBkaXJl
Y3RvcnkgZm9yICVkIGVudHJpZXMiLCBudW1fZW50cmllcyk7CiAgICAgIGZvciAoaSA9IDA7IGkg
PCBudW1fZW50cmllczsgaSsrKSB7CiAgICAgICAgICB1aW50MzJfdCBxID0gZHF1YWRzW2ldOwog
ICAgICAgICAgaWYgKChxID4+IDI0KSA9PSAweDEyKQorIAl7CiAgICAgICAgICAgICAgaW5mby51
bml0X3NwZWNfSUQgPSBxICYgMHhmZmZmZmY7CisgCS8vCXByaW50ZigiR290IHVuaXRfc3BlYyBp
ZDogMHglWFxuIiwgaW5mby51bml0X3NwZWNfSUQpOworIAl9CiAgICAgICAgICBpZiAoKHEgPj4g
MjQpID09IDB4MTMpCisgCXsKICAgICAgICAgICAgICBpbmZvLnVuaXRfc3dfdmVyc2lvbiA9IHEg
JiAweGZmZmZmZjsKKyAJCS8vcHJpbnRmKCJHb3QgdW5pdF9zdyAweCVYXG4iLCBpbmZvLnVuaXRf
c3dfdmVyc2lvbik7CisgCX0KICAgICAgICAgIGlmICgocSA+PiAyNCkgPT0gMHhENCkKKyAJewor
IAkgICAgLy9wcmludGYoIkZvdW5kIHVuaXRfZGVwZW5kZXRfZGlyZWN0b3J5IHBvaW50ZXI6IDB4
JVhcbiIsIG9mZnNldCk7CiAgICAgICAgICAgICAgaW5mby51bml0X2RlcGVuZGVudF9kaXJlY3Rv
cnkgPSAocSAmIDB4ZmZmZmZmKSArIG9mZnNldCArIGkgKyAxOworIAl9CiAgICAgICAgICBpZiAo
KHEgPj4gMjQpID09IDB4MTcpCiAgICAgICAgICAgICAgaW5mby5tb2RlbF9pZCA9IHEgJiAweGZm
ZmZmZjsKICAgICAgfQoqKioqKioqKioqKioqKioKKioqIDE0MiwxNTEgKioqKgogIAogICAgICAg
KHVwZGF0ZWQgMjAwNS0wNC0zMCkKICAgICovCiAgCiAgICAgIGlmICgoaW5mby51bml0X3NwZWNf
SUQgIT0gMHhBMDJEKSAmJgohICAgICAgICAgICAgIChpbmZvLnVuaXRfc3BlY19JRCAhPSAweEIw
OUQpKQogICAgICAgICAgcmV0dXJuIC0xOwogICAgICBpZiAoIWluZm8udW5pdF9kZXBlbmRlbnRf
ZGlyZWN0b3J5KQogICAgICAgICAgcmV0dXJuIC0xOwogIAotLS0gMTU1LDE3OCAtLS0tCiAgCiAg
ICAgICAodXBkYXRlZCAyMDA1LTA0LTMwKQogICAgKi8KKyAgIC8qCisgICAgICBOb3RlIG9uIEZM
SVIgY2FtZXJhczoKKyAgICAgIEZMSVIgaXMgbm90IGZ1bGx5IGNvbXBhdGlibGUgd2l0aCBJSURD
IHNwZWNzLCB0aG91Z2ggaXQgaXMgcG9zc2libGUKKyAgICAgIHRvIHdvcmsgd2l0aCB0aGVzZSBj
YW1lcmFzLiBUaGUgZm9sbG93aW5nIG1vZGlmaWNhdGlvbiBoYXZlIGJlZW4KKyAgICAgIHRlc3Rl
ZCB3aXRoIEZMSVIgQTQwIGNhbWVyYS4KKyAKKyAgICAgIFZhZGltIEZyb2xvdgorIAorICAgICAg
KHVwZGF0ZWQgMjAwOS0xMC0wMSkKKyAgICAqLwogIAogICAgICBpZiAoKGluZm8udW5pdF9zcGVj
X0lEICE9IDB4QTAyRCkgJiYKISAgICAgICAgICAgICAoaW5mby51bml0X3NwZWNfSUQgIT0gMHhC
MDlEKSAmJgohICAgICAgICAgICAgIChpbmZvLnVuaXRfc3BlY19JRCAhPSBGTElSX0E0MF9NQUdJ
QykpCiEgCXsKISAgICAgCWRjMTM5NF9sb2dfZGVidWcoIk5vdCBhIElJREMgY29tcGlsYW50LCBu
b3QgYSBQRyBjYW1lcmEgYW5kIG5vdCBhIEZMSVIiKTsKICAgICAgICAgIHJldHVybiAtMTsKKyAJ
fQogICAgICBpZiAoIWluZm8udW5pdF9kZXBlbmRlbnRfZGlyZWN0b3J5KQogICAgICAgICAgcmV0
dXJuIC0xOwogIAoqKioqKioqKioqKioqKioKKioqIDE1NiwxNjIgKioqKgogICAgICAgICAgZ290
byBkb25lOwogIAogICAgICBkcXVhZHMgPSBxdWFkcyArIGluZm8udW5pdF9kZXBlbmRlbnRfZGly
ZWN0b3J5ICsgMTsKISAgICAgZm9yIChpID0gMDsgaSA8IG51bV9lbnRyaWVzOyBpKyspIHsKICAg
ICAgICAgIHVpbnQzMl90IHEgPSBkcXVhZHNbaV07CiAgICAgICAgICBpZiAoKHEgPj4gMjQpID09
IDB4ODEpCiAgICAgICAgICAgICAgaW5mby52ZW5kb3IgPSBwYXJzZV9sZWFmICgocSAmIDB4ZmZm
ZmZmKSArCi0tLSAxODMsMTkwIC0tLS0KICAgICAgICAgIGdvdG8gZG9uZTsKICAKICAgICAgZHF1
YWRzID0gcXVhZHMgKyBpbmZvLnVuaXRfZGVwZW5kZW50X2RpcmVjdG9yeSArIDE7CiEgICAgIGZv
ciAoaSA9IDA7IGkgPCBudW1fZW50cmllczsgaSsrKSAKISAgICAgewogICAgICAgICAgdWludDMy
X3QgcSA9IGRxdWFkc1tpXTsKICAgICAgICAgIGlmICgocSA+PiAyNCkgPT0gMHg4MSkKICAgICAg
ICAgICAgICBpbmZvLnZlbmRvciA9IHBhcnNlX2xlYWYgKChxICYgMHhmZmZmZmYpICsKZGlmZiAt
Y3JCIC4uL2Rpc3RyaWIvbGliZGMxMzk0LTIuMS4yL2RjMTM5NC9pbnRlcm5hbC5jIGxpYmRjMTM5
NC0yLjEuMi1mbGlyL2RjMTM5NC9pbnRlcm5hbC5jCioqKiAuLi9kaXN0cmliL2xpYmRjMTM5NC0y
LjEuMi9kYzEzOTQvaW50ZXJuYWwuYwkyMDA5LTA2LTExIDA2OjA1OjQ3LjAwMDAwMDAwMCArMDIw
MAotLS0gbGliZGMxMzk0LTIuMS4yLWZsaXIvZGMxMzk0L2ludGVybmFsLmMJMjAwOS0xMC0wMSAx
MDowOTozOS4wMDAwMDAwMDAgKzAyMDAKKioqKioqKioqKioqKioqCioqKiAyNjYsMjcxICoqKioK
LS0tIDI2NiwyNzggLS0tLQogIAogICAgICBmcmFtZS0+eXV2X2J5dGVfb3JkZXIgPSBEQzEzOTRf
QllURV9PUkRFUl9VWVZZOwogIAorICAgICBpZiAoY2FtZXJhLT51bml0X3NwZWNfSUQgPT0gRkxJ
Ul9BNDBfTUFHSUMpCisgICAgIHsKKyAgICAgCS8vIGluY3JlYXNlIHBhY2tldCBzaXplIG9uIDQw
IGJ5dGVzCisgICAgIAlmcmFtZS0+cGFja2V0X3NpemUgKz0gNDA7CisgICAgIAlwcmludGYoIkZM
SVI6IHNldCBwYWNrZXQgc2l6ZSB0byAlZFxuIiwgZnJhbWUtPnBhY2tldF9zaXplKTsKKyAgICAg
fQorIAogICAgICBmcmFtZS0+dG90YWxfYnl0ZXMgPSBmcmFtZS0+cGFja2V0c19wZXJfZnJhbWUg
KiBmcmFtZS0+cGFja2V0X3NpemU7CiAgCiAgICAgIGVyciA9IGRjMTM5NF9nZXRfY29sb3JfY29k
aW5nX2Zyb21fdmlkZW9fbW9kZSAoY2FtZXJhLCB2aWRlb19tb2RlLCAmZnJhbWUtPmNvbG9yX2Nv
ZGluZyk7CmRpZmYgLWNyQiAuLi9kaXN0cmliL2xpYmRjMTM5NC0yLjEuMi9kYzEzOTQvbGludXgv
Y2FwdHVyZS5jIGxpYmRjMTM5NC0yLjEuMi1mbGlyL2RjMTM5NC9saW51eC9jYXB0dXJlLmMKKioq
IC4uL2Rpc3RyaWIvbGliZGMxMzk0LTIuMS4yL2RjMTM5NC9saW51eC9jYXB0dXJlLmMJMjAwOS0w
Ni0xMSAwNjowNTo0Ny4wMDAwMDAwMDAgKzAyMDAKLS0tIGxpYmRjMTM5NC0yLjEuMi1mbGlyL2Rj
MTM5NC9saW51eC9jYXB0dXJlLmMJMjAwOS0xMS0xNiAxMToxNjozMy4wMDAwMDAwMDAgKzAxMDAK
KioqKioqKioqKioqKioqCioqKiAyLDggKioqKgogICAqIDEzOTQtQmFzZWQgRGlnaXRhbCBDYW1l
cmEgQ29udHJvbCBMaWJyYXJ5CiAgICoKICAgKiBDYW1lcmEgQ2FwdHVyZSBDb2RlIGZvciBMaW51
eAohICAqICAKICAgKiBXcml0dGVuIGJ5CiAgICogICBDaHJpcyBVcm1zb24gPGN1cm1zb25Acmku
Y211LmVkdT4KICAgKiAgIERhbWllbiBEb3V4Y2hhbXBzIDxkZG91eGNoYW1wc0B1c2Vycy5zZi5u
ZXQ+Ci0tLSAyLDggLS0tLQogICAqIDEzOTQtQmFzZWQgRGlnaXRhbCBDYW1lcmEgQ29udHJvbCBM
aWJyYXJ5CiAgICoKICAgKiBDYW1lcmEgQ2FwdHVyZSBDb2RlIGZvciBMaW51eAohICAqCiAgICog
V3JpdHRlbiBieQogICAqICAgQ2hyaXMgVXJtc29uIDxjdXJtc29uQHJpLmNtdS5lZHU+CiAgICog
ICBEYW1pZW4gRG91eGNoYW1wcyA8ZGRvdXhjaGFtcHNAdXNlcnMuc2YubmV0PgoqKioqKioqKioq
KioqKioKKioqIDM4MSwzODYgKioqKgotLS0gMzgxLDM4OSAtLS0tCiAgICAgIGRjMTM5NHZpZGVv
X2ZyYW1lX3QgKiBmcmFtZV90bXA7CiAgICAgIGludCBjYjsKICAgICAgaW50IHJlc3VsdD0tMTsK
KyAgICAgdW5zaWduZWQgbG9uZyBpID0gMDsKKyAgICAgdW5zaWduZWQgY2hhciogY3VyX3BhY2tl
dCA9IE5VTEw7CisgICAgIHVuc2lnbmVkIGxvbmcgY3VyX29mZnNldCA9IDA7CiAgCiAgICAgIGlm
ICggKHBvbGljeTxEQzEzOTRfQ0FQVFVSRV9QT0xJQ1lfTUlOKSB8fCAocG9saWN5PkRDMTM5NF9D
QVBUVVJFX1BPTElDWV9NQVgpICkKICAgICAgICAgIHJldHVybiBEQzEzOTRfSU5WQUxJRF9DQVBU
VVJFX1BPTElDWTsKKioqKioqKioqKioqKioqCioqKiA0MjUsNDMwICoqKioKLS0tIDQyOCw0NDYg
LS0tLQogICAgICBmcmFtZV90bXAtPmZyYW1lc19iZWhpbmQgPSB2d2FpdC5idWZmZXI7CiAgICAg
IGZyYW1lX3RtcC0+dGltZXN0YW1wID0gKHVpbnQ2NF90KSB2d2FpdC5maWxsdGltZS50dl9zZWMg
KiAxMDAwMDAwICsgdndhaXQuZmlsbHRpbWUudHZfdXNlYzsKICAKKyAgICAgLyogRkxJUiBBNDAg
bW9kaWZpY2F0aW9ucyAqLworICAgICBpZiAoY3Jhdy0+Y2FtZXJhLT51bml0X3NwZWNfSUQgPT0g
RkxJUl9BNDBfTUFHSUMpCisgICAgIHsKKyAgICAgCS8qIHdlIG5lZWQgdG8gcHJvY2VzcyBlYWNo
IHBhY2tldCBhbmQgcmVtb3ZlIGZpcnN0IDQwIGJ5dGVzIGZyb20gaXQuCisgICAgIAkgKiBSZW1v
dmUgaGVhZGVyIGZyb20gZWFjaCBwYWNrZXQgYW5kIG1ha2UgY29udGludW91cyBmcmFtZS4gKi8K
KyAgICAgCWZvciAoaT0wOyBpIDwgZnJhbWVfdG1wLT5wYWNrZXRzX3Blcl9mcmFtZTsgaSsrKQor
ICAgICAJeworICAgICAJCWN1cl9wYWNrZXQgPSBmcmFtZV90bXAtPmltYWdlICsgKGZyYW1lX3Rt
cC0+cGFja2V0X3NpemUqaSk7CisgICAgIAkJbWVtbW92ZShmcmFtZV90bXAtPmltYWdlICsgY3Vy
X29mZnNldCwgY3VyX3BhY2tldCArIDQwLCBmcmFtZV90bXAtPnBhY2tldF9zaXplLTQwKTsKKyAg
ICAgCQljdXJfb2Zmc2V0ICs9IChmcmFtZV90bXAtPnBhY2tldF9zaXplLTQwKTsKKyAgICAgCX0K
KyAgICAgfQorIAogICAgICAqZnJhbWU9ZnJhbWVfdG1wOwogIAogICAgICByZXR1cm4gREMxMzk0
X1NVQ0NFU1M7CmRpZmYgLWNyQiAuLi9kaXN0cmliL2xpYmRjMTM5NC0yLjEuMi9kYzEzOTQvcmVn
aXN0ZXIuYyBsaWJkYzEzOTQtMi4xLjItZmxpci9kYzEzOTQvcmVnaXN0ZXIuYwoqKiogLi4vZGlz
dHJpYi9saWJkYzEzOTQtMi4xLjIvZGMxMzk0L3JlZ2lzdGVyLmMJMjAwOS0wNi0xMSAwNjowNTo0
Ny4wMDAwMDAwMDAgKzAyMDAKLS0tIGxpYmRjMTM5NC0yLjEuMi1mbGlyL2RjMTM5NC9yZWdpc3Rl
ci5jCTIwMDktMDktMDcgMTk6NDE6NTQuMDAwMDAwMDAwICswMjAwCioqKioqKioqKioqKioqKgoq
KiogOTQsOTkgKioqKgotLS0gOTQsMTAwIC0tLS0KICBkYzEzOTRfZ2V0X2NvbnRyb2xfcmVnaXN0
ZXJzIChkYzEzOTRjYW1lcmFfdCAqY2FtZXJhLCB1aW50NjRfdCBvZmZzZXQsCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgKnZhbHVlLCB1aW50MzJfdCBudW1fcmVncykK
ICB7CisgCS8vZGMxMzk0X2xvZ19kZWJ1ZygiQ2FtZXJhIGNvbW1hbmQgcmVnaXN0ZXJzIGJhc2Ug
aXMgMHglWCIsIGNhbWVyYS0+Y29tbWFuZF9yZWdpc3RlcnNfYmFzZSk7CiAgICAgIHJldHVybiBk
YzEzOTRfZ2V0X3JlZ2lzdGVycyAoY2FtZXJhLAogICAgICAgICAgY2FtZXJhLT5jb21tYW5kX3Jl
Z2lzdGVyc19iYXNlICsgb2Zmc2V0LCB2YWx1ZSwgbnVtX3JlZ3MpOwogIH0KT25seSBpbiBsaWJk
YzEzOTQtMi4xLjItZmxpci9leGFtcGxlczogMQpkaWZmIC1jckIgLi4vZGlzdHJpYi9saWJkYzEz
OTQtMi4xLjIvZXhhbXBsZXMvZ3JhYl9jb2xvcl9pbWFnZTIuYyBsaWJkYzEzOTQtMi4xLjItZmxp
ci9leGFtcGxlcy9ncmFiX2NvbG9yX2ltYWdlMi5jCioqKiAuLi9kaXN0cmliL2xpYmRjMTM5NC0y
LjEuMi9leGFtcGxlcy9ncmFiX2NvbG9yX2ltYWdlMi5jCTIwMDktMDYtMTEgMDY6MDU6NDcuMDAw
MDAwMDAwICswMjAwCi0tLSBsaWJkYzEzOTQtMi4xLjItZmxpci9leGFtcGxlcy9ncmFiX2NvbG9y
X2ltYWdlMi5jCTIwMDktMDktMjggMTk6NDQ6MjIuMDAwMDAwMDAwICswMjAwCioqKioqKioqKioq
KioqKgoqKiogMjA3LDIxMiAqKioqCi0tLSAyMDcsMjEzIC0tLS0KICAgICAgREMxMzk0X0VSUl9S
VE4oZXJyLCJDb3VsZCBub3QgZ2V0IGxpc3Qgb2YgbW9kZXMiKTsKICAKICAgICAgdWludDMyX3Qg
c2VsZWN0ZWRfbW9kZSA9IG1vZGVzLm1vZGVzW21vZGVzLm51bS0xXTsKKyAgICAgc2VsZWN0ZWRf
bW9kZSA9IERDMTM5NF9WSURFT19NT0RFXzY0MHg0ODBfWVVWNDIyOwogIAogICAgICAvKi0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tCiAgICAgICAqICBzZXR1cCBjYXB0dXJlCmRpZmYgLWNyQiAuLi9kaXN0cmliL2xp
YmRjMTM5NC0yLjEuMi9leGFtcGxlcy9ncmFiX2NvbG9yX2ltYWdlLmMgbGliZGMxMzk0LTIuMS4y
LWZsaXIvZXhhbXBsZXMvZ3JhYl9jb2xvcl9pbWFnZS5jCioqKiAuLi9kaXN0cmliL2xpYmRjMTM5
NC0yLjEuMi9leGFtcGxlcy9ncmFiX2NvbG9yX2ltYWdlLmMJMjAwOS0wNi0xMSAwNjowNTo0Ny4w
MDAwMDAwMDAgKzAyMDAKLS0tIGxpYmRjMTM5NC0yLjEuMi1mbGlyL2V4YW1wbGVzL2dyYWJfY29s
b3JfaW1hZ2UuYwkyMDA5LTA5LTI4IDE4OjE2OjI5LjAwMDAwMDAwMCArMDIwMAoqKioqKioqKioq
KioqKioKKioqIDgwLDg2ICoqKioKICAgICAgZXJyPWRjMTM5NF92aWRlb19zZXRfaXNvX3NwZWVk
KGNhbWVyYSwgREMxMzk0X0lTT19TUEVFRF80MDApOwogICAgICBEQzEzOTRfRVJSX0NMTl9SVE4o
ZXJyLGNsZWFudXBfYW5kX2V4aXQoY2FtZXJhKSwiQ291bGQgbm90IHNldCBpc28gc3BlZWQiKTsK
ICAKISAgICAgZXJyPWRjMTM5NF92aWRlb19zZXRfbW9kZShjYW1lcmEsIERDMTM5NF9WSURFT19N
T0RFXzY0MHg0ODBfUkdCOCk7CiAgICAgIERDMTM5NF9FUlJfQ0xOX1JUTihlcnIsY2xlYW51cF9h
bmRfZXhpdChjYW1lcmEpLCJDb3VsZCBub3Qgc2V0IHZpZGVvIG1vZGVcbiIpOwogIAogICAgICBl
cnI9ZGMxMzk0X3ZpZGVvX3NldF9mcmFtZXJhdGUoY2FtZXJhLCBEQzEzOTRfRlJBTUVSQVRFXzdf
NSk7Ci0tLSA4MCw4NiAtLS0tCiAgICAgIGVycj1kYzEzOTRfdmlkZW9fc2V0X2lzb19zcGVlZChj
YW1lcmEsIERDMTM5NF9JU09fU1BFRURfNDAwKTsKICAgICAgREMxMzk0X0VSUl9DTE5fUlROKGVy
cixjbGVhbnVwX2FuZF9leGl0KGNhbWVyYSksIkNvdWxkIG5vdCBzZXQgaXNvIHNwZWVkIik7CiAg
CiEgICAgIGVycj1kYzEzOTRfdmlkZW9fc2V0X21vZGUoY2FtZXJhLCBEQzEzOTRfVklERU9fTU9E
RV82NDB4NDgwX1lVVjQyMik7CiAgICAgIERDMTM5NF9FUlJfQ0xOX1JUTihlcnIsY2xlYW51cF9h
bmRfZXhpdChjYW1lcmEpLCJDb3VsZCBub3Qgc2V0IHZpZGVvIG1vZGVcbiIpOwogIAogICAgICBl
cnI9ZGMxMzk0X3ZpZGVvX3NldF9mcmFtZXJhdGUoY2FtZXJhLCBEQzEzOTRfRlJBTUVSQVRFXzdf
NSk7CmRpZmYgLWNyQiAuLi9kaXN0cmliL2xpYmRjMTM5NC0yLjEuMi9leGFtcGxlcy9ncmFiX2dy
YXlfaW1hZ2UuYyBsaWJkYzEzOTQtMi4xLjItZmxpci9leGFtcGxlcy9ncmFiX2dyYXlfaW1hZ2Uu
YwoqKiogLi4vZGlzdHJpYi9saWJkYzEzOTQtMi4xLjIvZXhhbXBsZXMvZ3JhYl9ncmF5X2ltYWdl
LmMJMjAwOS0wNi0xMSAwNjowNTo0Ny4wMDAwMDAwMDAgKzAyMDAKLS0tIGxpYmRjMTM5NC0yLjEu
Mi1mbGlyL2V4YW1wbGVzL2dyYWJfZ3JheV9pbWFnZS5jCTIwMDktMTAtMDEgMTA6MDM6MDkuMDAw
MDAwMDAwICswMjAwCioqKioqKioqKioqKioqKgoqKiogMjYsMzIgKioqKgogICNpbmNsdWRlIDxp
bnR0eXBlcy5oPgogIAogICNpZm5kZWYgX1dJTjMyCiEgI2luY2x1ZGUgPHVuaXN0ZC5oPgogICNl
bmRpZgogIAogICNkZWZpbmUgSU1BR0VfRklMRV9OQU1FICJpbWFnZS5wZ20iCi0tLSAyNiwzMiAt
LS0tCiAgI2luY2x1ZGUgPGludHR5cGVzLmg+CiAgCiAgI2lmbmRlZiBfV0lOMzIKISAvLyNpbmNs
dWRlIDx1bmlzdGQucj4KICAjZW5kaWYKICAKICAjZGVmaW5lIElNQUdFX0ZJTEVfTkFNRSAiaW1h
Z2UucGdtIgoqKioqKioqKioqKioqKioKKioqIDU3LDYyICoqKioKLS0tIDU3LDY1IC0tLS0KICAg
ICAgZGMxMzk0dmlkZW9fZnJhbWVfdCAqZnJhbWU7CiAgICAgIGRjMTM5NF90ICogZDsKICAgICAg
ZGMxMzk0Y2FtZXJhX2xpc3RfdCAqIGxpc3Q7CisgICAgIGxvbmcgcSA9IDA7CisgICAgIGxvbmcg
cCA9IDA7CisgICAgIHVuc2lnbmVkIGNoYXIgKmN1cl9mcmFtZTsKICAKICAgICAgZGMxMzk0ZXJy
b3JfdCBlcnI7CiAgCioqKioqKioqKioqKioqKgoqKiogOTgsMTE1ICoqKioKICAgICAgICAgICAg
ICB9CiAgICAgICAgICB9CiAgICAgIH0KISAgICAgaWYgKGkgPCAwKSB7CiEgICAgICAgICBkYzEz
OTRfbG9nX2Vycm9yKCJDb3VsZCBub3QgZ2V0IGEgdmFsaWQgTU9OTzggbW9kZSIpOwohICAgICAg
ICAgY2xlYW51cF9hbmRfZXhpdChjYW1lcmEpOwohICAgICB9CiAgCiEgICAgIGVycj1kYzEzOTRf
Z2V0X2NvbG9yX2NvZGluZ19mcm9tX3ZpZGVvX21vZGUoY2FtZXJhLCB2aWRlb19tb2RlLCZjb2Rp
bmcpOwohICAgICBEQzEzOTRfRVJSX0NMTl9SVE4oZXJyLGNsZWFudXBfYW5kX2V4aXQoY2FtZXJh
KSwiQ291bGQgbm90IGdldCBjb2xvciBjb2RpbmciKTsKICAKICAgICAgLy8gZ2V0IGhpZ2hlc3Qg
ZnJhbWVyYXRlCiEgICAgIGVycj1kYzEzOTRfdmlkZW9fZ2V0X3N1cHBvcnRlZF9mcmFtZXJhdGVz
KGNhbWVyYSx2aWRlb19tb2RlLCZmcmFtZXJhdGVzKTsKISAgICAgREMxMzk0X0VSUl9DTE5fUlRO
KGVycixjbGVhbnVwX2FuZF9leGl0KGNhbWVyYSksIkNvdWxkIG5vdCBnZXQgZnJhbXJhdGVzIik7
CiEgICAgIGZyYW1lcmF0ZT1mcmFtZXJhdGVzLmZyYW1lcmF0ZXNbZnJhbWVyYXRlcy5udW0tMV07
CiAgCiAgICAgIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICAgICogIHNldHVwIGNhcHR1cmUKLS0tIDEw
MSwxMTkgLS0tLQogICAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgfQohICAgICAvL2lm
IChpIDwgMCkgewohICAgICAgIC8vICBkYzEzOTRfbG9nX2Vycm9yKCJDb3VsZCBub3QgZ2V0IGEg
dmFsaWQgTU9OTzggbW9kZSIpOwohICAgICAgICAgLy9jbGVhbnVwX2FuZF9leGl0KGNhbWVyYSk7
CiEgICAgIC8vfQogIAohICAgICAvL2Vycj1kYzEzOTRfZ2V0X2NvbG9yX2NvZGluZ19mcm9tX3Zp
ZGVvX21vZGUoY2FtZXJhLCB2aWRlb19tb2RlLCZjb2RpbmcpOwohICAgICAvL0RDMTM5NF9FUlJf
Q0xOX1JUTihlcnIsY2xlYW51cF9hbmRfZXhpdChjYW1lcmEpLCJDb3VsZCBub3QgZ2V0IGNvbG9y
IGNvZGluZyIpOwogIAogICAgICAvLyBnZXQgaGlnaGVzdCBmcmFtZXJhdGUKISAgICAgLy9lcnI9
ZGMxMzk0X3ZpZGVvX2dldF9zdXBwb3J0ZWRfZnJhbWVyYXRlcyhjYW1lcmEsdmlkZW9fbW9kZSwm
ZnJhbWVyYXRlcyk7CiEgICAgIC8vREMxMzk0X0VSUl9DTE5fUlROKGVycixjbGVhbnVwX2FuZF9l
eGl0KGNhbWVyYSksIkNvdWxkIG5vdCBnZXQgZnJhbXJhdGVzIik7CiEgICAgIC8vZnJhbWVyYXRl
PWZyYW1lcmF0ZXMuZnJhbWVyYXRlc1tmcmFtZXJhdGVzLm51bS0xXTsKISAgICAgcHJpbnRmKCJz
cGVjIGlkIDB4JWxsWFxuIiwgY2FtZXJhLT51bml0X3NwZWNfSUQpOwogIAogICAgICAvKi0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tCiAgICAgICAqICBzZXR1cCBjYXB0dXJlCioqKioqKioqKioqKioqKgoqKiogMTE4
LDEyNyAqKioqCiAgICAgIGVycj1kYzEzOTRfdmlkZW9fc2V0X2lzb19zcGVlZChjYW1lcmEsIERD
MTM5NF9JU09fU1BFRURfNDAwKTsKICAgICAgREMxMzk0X0VSUl9DTE5fUlROKGVycixjbGVhbnVw
X2FuZF9leGl0KGNhbWVyYSksIkNvdWxkIG5vdCBzZXQgaXNvIHNwZWVkIik7CiAgCiEgICAgIGVy
cj1kYzEzOTRfdmlkZW9fc2V0X21vZGUoY2FtZXJhLCB2aWRlb19tb2RlKTsKICAgICAgREMxMzk0
X0VSUl9DTE5fUlROKGVycixjbGVhbnVwX2FuZF9leGl0KGNhbWVyYSksIkNvdWxkIG5vdCBzZXQg
dmlkZW8gbW9kZSIpOwogIAohICAgICBlcnI9ZGMxMzk0X3ZpZGVvX3NldF9mcmFtZXJhdGUoY2Ft
ZXJhLCBmcmFtZXJhdGUpOwogICAgICBEQzEzOTRfRVJSX0NMTl9SVE4oZXJyLGNsZWFudXBfYW5k
X2V4aXQoY2FtZXJhKSwiQ291bGQgbm90IHNldCBmcmFtZXJhdGUiKTsKICAKICAgICAgZXJyPWRj
MTM5NF9jYXB0dXJlX3NldHVwKGNhbWVyYSw0LCBEQzEzOTRfQ0FQVFVSRV9GTEFHU19ERUZBVUxU
KTsKLS0tIDEyMiwxMzQgLS0tLQogICAgICBlcnI9ZGMxMzk0X3ZpZGVvX3NldF9pc29fc3BlZWQo
Y2FtZXJhLCBEQzEzOTRfSVNPX1NQRUVEXzQwMCk7CiAgICAgIERDMTM5NF9FUlJfQ0xOX1JUTihl
cnIsY2xlYW51cF9hbmRfZXhpdChjYW1lcmEpLCJDb3VsZCBub3Qgc2V0IGlzbyBzcGVlZCIpOwog
IAohICAgICAvL2Vycj1kYzEzOTRfdmlkZW9fc2V0X21vZGUoY2FtZXJhLCB2aWRlb19tb2RlKTsK
ISAgICAgdmlkZW9fbW9kZSA9IERDMTM5NF9WSURFT19NT0RFXzY0MHg0ODBfWVVWNDIyOwohICAg
ICBlcnIgPSBkYzEzOTRfdmlkZW9fc2V0X21vZGUoY2FtZXJhLCBEQzEzOTRfVklERU9fTU9ERV82
NDB4NDgwX1lVVjQyMik7CiAgICAgIERDMTM5NF9FUlJfQ0xOX1JUTihlcnIsY2xlYW51cF9hbmRf
ZXhpdChjYW1lcmEpLCJDb3VsZCBub3Qgc2V0IHZpZGVvIG1vZGUiKTsKICAKISAgICAgLy9lcnI9
ZGMxMzk0X3ZpZGVvX3NldF9mcmFtZXJhdGUoY2FtZXJhLCBmcmFtZXJhdGUpOwohICAgICBlcnIg
PSBkYzEzOTRfdmlkZW9fc2V0X2ZyYW1lcmF0ZShjYW1lcmEsIERDMTM5NF9GUkFNRVJBVEVfN181
KTsKICAgICAgREMxMzk0X0VSUl9DTE5fUlROKGVycixjbGVhbnVwX2FuZF9leGl0KGNhbWVyYSks
IkNvdWxkIG5vdCBzZXQgZnJhbWVyYXRlIik7CiAgCiAgICAgIGVycj1kYzEzOTRfY2FwdHVyZV9z
ZXR1cChjYW1lcmEsNCwgREMxMzk0X0NBUFRVUkVfRkxBR1NfREVGQVVMVCk7CioqKioqKioqKioq
KioqKgoqKiogMTMwLDE0MiAqKioqCiAgICAgIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICAgICogIHJl
cG9ydCBjYW1lcmEncyBmZWF0dXJlcwogICAgICAgKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KISAgICAgZXJy
PWRjMTM5NF9mZWF0dXJlX2dldF9hbGwoY2FtZXJhLCZmZWF0dXJlcyk7CiEgICAgIGlmIChlcnIh
PURDMTM5NF9TVUNDRVNTKSB7CiEgICAgICAgICBkYzEzOTRfbG9nX3dhcm5pbmcoIkNvdWxkIG5v
dCBnZXQgZmVhdHVyZSBzZXQiKTsKISAgICAgfQohICAgICBlbHNlIHsKISAgICAgICAgIGRjMTM5
NF9mZWF0dXJlX3ByaW50X2FsbCgmZmVhdHVyZXMsIHN0ZG91dCk7CiEgICAgIH0KICAKICAgICAg
LyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLQogICAgICAgKiAgaGF2ZSB0aGUgY2FtZXJhIHN0YXJ0IHNlbmRpbmcg
dXMgZGF0YQotLS0gMTM3LDE0OSAtLS0tCiAgICAgIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICAgICog
IHJlcG9ydCBjYW1lcmEncyBmZWF0dXJlcwogICAgICAgKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KISAgICAg
Ly9lcnI9ZGMxMzk0X2ZlYXR1cmVfZ2V0X2FsbChjYW1lcmEsJmZlYXR1cmVzKTsKISAgICAgLy9p
ZiAoZXJyIT1EQzEzOTRfU1VDQ0VTUykgewohIC8vICAgICAgICBkYzEzOTRfbG9nX3dhcm5pbmco
IkNvdWxkIG5vdCBnZXQgZmVhdHVyZSBzZXQiKTsKISAvLyAgICB9CiEgLy8gICAgZWxzZSB7CiEg
Ly8gICAgICAgIGRjMTM5NF9mZWF0dXJlX3ByaW50X2FsbCgmZmVhdHVyZXMsIHN0ZG91dCk7CiEg
Ly8gICAgfQogIAogICAgICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAgICAqICBoYXZlIHRoZSBjYW1l
cmEgc3RhcnQgc2VuZGluZyB1cyBkYXRhCioqKioqKioqKioqKioqKgoqKiogMTY2LDE3NSAqKioq
CiAgICAgICAgICBjbGVhbnVwX2FuZF9leGl0KGNhbWVyYSk7CiAgICAgIH0KICAKICAgICAgZGMx
Mzk0X2dldF9pbWFnZV9zaXplX2Zyb21fdmlkZW9fbW9kZShjYW1lcmEsIHZpZGVvX21vZGUsICZ3
aWR0aCwgJmhlaWdodCk7CiAgICAgIGZwcmludGYoaW1hZ2VmaWxlLCJQNVxuJXUgJXUgMjU1XG4i
LCB3aWR0aCwgaGVpZ2h0KTsKISAgICAgZndyaXRlKGZyYW1lLT5pbWFnZSwgMSwgaGVpZ2h0Kndp
ZHRoLCBpbWFnZWZpbGUpOwohICAgICBmY2xvc2UoaW1hZ2VmaWxlKTsKICAgICAgcHJpbnRmKCJ3
cm90ZTogIiBJTUFHRV9GSUxFX05BTUUgIlxuIik7CiAgCiAgICAgIC8qLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
LS0tIDE3MywyMDIgLS0tLQogICAgICAgICAgY2xlYW51cF9hbmRfZXhpdChjYW1lcmEpOwogICAg
ICB9CiAgCisgICAgIHByaW50ZigiVG90YWwgYnl0ZXM6ICVkLCBpbWFnZSBieXRlcyAlZCwgcGFk
ZGluZyBieXRlcyAlZCwgcGFja2V0IHNpemUgJWRcbiBcCisgICAgIAkJcGFja2V0c19wZXJfZnJh
bWUgJWQsIGFsbG9jYXRlZCAlZFxuIiwgZnJhbWUtPnRvdGFsX2J5dGVzLCBmcmFtZS0+aW1hZ2Vf
Ynl0ZXMsIGZyYW1lLT5wYWRkaW5nX2J5dGVzLCBmcmFtZS0+cGFja2V0X3NpemUsCisgCQkJCQkJ
ZnJhbWUtPnBhY2tldHNfcGVyX2ZyYW1lLCBmcmFtZS0+YWxsb2NhdGVkX2ltYWdlX2J5dGVzKTsK
KyAKKyAKKyAgICAgLy91bnNpZ25lZCBpbnQgZGF0YVszMjAqMjQwXTsKICAgICAgZGMxMzk0X2dl
dF9pbWFnZV9zaXplX2Zyb21fdmlkZW9fbW9kZShjYW1lcmEsIHZpZGVvX21vZGUsICZ3aWR0aCwg
JmhlaWdodCk7CisgICAgIHByaW50ZigiSW1hZ2Ugc2l6ZSBpcyAlZHglZFxuIiwgd2lkdGgsIGhl
aWdodCk7CisgLy8gICAgZm9yIChsb25nIHE9MDsgcSA8IChoZWlnaHQvMik7IHErKykKKyAvLyAg
ICB7CisgLy8gICAgICAgIGZvciAobG9uZyBwPTA7IHAgPCAod2lkdGgvMik7IHArKykKKyAvLyAg
ICAgICAgeworIC8vLy8gICAgICAgICAgICBwcmludGYoIldyaXRpbmcgdG8gaW5kZXggJWQsIGZy
b20gJWRcbiIsIDMyMCpxK3AsICg2NDAqNCpxKSArICg0KnApICsgMSk7CisgLy8gICAgICAgICAg
ICBkYXRhWzMyMCpxICsgcF0gPSBmcmFtZS0+aW1hZ2VbICg2NDAqcSkgKyAocCkgKyAxXTsKKyAv
LyAgICAgICAgfQorIC8vICAgIH0KKyAvLworIC8vICAgIHdpZHRoID0gMzIwOworIC8vICAgIGhl
aWdodCA9IDI0MDsKKyAKKyAgICAgcHJpbnRmKCJUb3RhbCBieXRlcyAlZFxuIiwgZnJhbWUtPnRv
dGFsX2J5dGVzKTsKICAgICAgZnByaW50ZihpbWFnZWZpbGUsIlA1XG4ldSAldSAyNTVcbiIsIHdp
ZHRoLCBoZWlnaHQpOwohICAgICBmd3JpdGUoZnJhbWUtPmltYWdlLCAxLCBmcmFtZS0+dG90YWxf
Ynl0ZXMsIGltYWdlZmlsZSk7CiEgICAgIGZjbG9zZShpbWFnZWZpbGUpOyAvL3RhaHJ1bmcKICAg
ICAgcHJpbnRmKCJ3cm90ZTogIiBJTUFHRV9GSUxFX05BTUUgIlxuIik7CiAgCiAgICAgIC8qLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KT25seSBpbiBsaWJkYzEzOTQtMi4xLjItZmxpci9leGFtcGxlczogZ3JhYl9n
cmF5X2ltYWdlLmN+Ck9ubHkgaW4gbGliZGMxMzk0LTIuMS4yLWZsaXIvZXhhbXBsZXM6IGltYWdl
LnBnbQpPbmx5IGluIGxpYmRjMTM5NC0yLjEuMi1mbGlyL2V4YW1wbGVzOiBpbWFnZS5wcG0KT25s
eSBpbiBsaWJkYzEzOTQtMi4xLjItZmxpci9leGFtcGxlczogSW1hZ2VSR0IucHBtCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>