<?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>196371</bug_id>
          
          <creation_ts>2019-03-28 12:46:08 -0700</creation_ts>
          <short_desc>B3 should reduce (integer) Sub(Neg(x), y) to Neg(Add(x, y))</short_desc>
          <delta_ts>2019-07-12 10:29:49 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=199203</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>196361</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Robin Morisset">rmorisset</reporter>
          <assigned_to name="Justin Michaud">justin_michaud</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>justin_michaud</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1522180</commentid>
    <comment_count>0</comment_count>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2019-03-28 12:46:08 -0700</bug_when>
    <thetext>It does not reduce the number of operation, but is a useful canonicalization in a few ways:
- improves the chance for CSE to work
- floating the Neg outwards maximizes the chance it will get eliminated
- it is generally easier to optimize Add (which is associative on integers) than Sub.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1548550</commentid>
    <comment_count>1</comment_count>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2019-06-27 11:22:18 -0700</bug_when>
    <thetext>Other similar reduction rules that would be useful (look at https://bugs.webkit.org/show_bug.cgi?id=199203 for an example where rules 1 and 3 would allow a lot of simplifications):
Sub(Sub(a, b), c) =&gt; Sub(a, Add(b, c))
Sub(a, Sub(b, c)) =&gt; Sub(Add(a, c), b)
Sub(Add(a, b), c) =&gt; Add(a, Sub(b, c))</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1552349</commentid>
    <comment_count>2</comment_count>
      <attachid>373995</attachid>
    <who name="Justin Michaud">justin_michaud</who>
    <bug_when>2019-07-11 20:11:57 -0700</bug_when>
    <thetext>Created attachment 373995
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1552350</commentid>
    <comment_count>3</comment_count>
      <attachid>373995</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2019-07-11 20:19:20 -0700</bug_when>
    <thetext>Comment on attachment 373995
Patch

r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1552446</commentid>
    <comment_count>4</comment_count>
      <attachid>373995</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-07-12 10:11:37 -0700</bug_when>
    <thetext>Comment on attachment 373995
Patch

Clearing flags on attachment: 373995

Committed r247390: &lt;https://trac.webkit.org/changeset/247390&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1552447</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-07-12 10:11:38 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1552449</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-07-12 10:14:04 -0700</bug_when>
    <thetext>&lt;rdar://problem/53014344&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>373995</attachid>
            <date>2019-07-11 20:11:57 -0700</date>
            <delta_ts>2019-07-12 10:11:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-196371-20190711201157.patch</filename>
            <type>text/plain</type>
            <size>7999</size>
            <attacher name="Justin Michaud">justin_michaud</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ3MzY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
ZjA2NjVjNWI2YjMyMTY4Yjc3OTYyOTg5ZDI2MTNhY2Q4OTUxMWZmLi5kNTc1YTY5NDdmMDc1YzA2
MWZjNzAwZGJiNTI3NzU0OTBlYjhjY2NmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMSBAQAorMjAxOS0wNy0xMSAgSnVzdGluIE1pY2hhdWQgIDxqdXN0aW5fbWljaGF1ZEBh
cHBsZS5jb20+CisKKyAgICAgICAgQjMgc2hvdWxkIHJlZHVjZSAoaW50ZWdlcikgU3ViKE5lZyh4
KSwgeSkgdG8gTmVnKEFkZCh4LCB5KSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE5NjM3MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFkZGluZyB0aGVzZSBzdHJlbmd0aCByZWR1Y3Rpb25zIGdpdmVzIDJ4
IGEgKHg4NikgYW5kIDN4IChhcm02NCkgcGVyZm9ybWFuY2UgaW1wcm92ZW1lbnQKKyAgICAgICAg
b24gdGhlIG1pY3JvYmVuY2htYXJrLgorCisgICAgICAgICogYjMvQjNSZWR1Y2VTdHJlbmd0aC5j
cHA6CisgICAgICAgICogYjMvdGVzdGIzLmNwcDoKKyAgICAgICAgKEpTQzo6QjM6OnRlc3RTdWJT
dWIpOgorICAgICAgICAoSlNDOjpCMzo6dGVzdFN1YlN1YjIpOgorICAgICAgICAoSlNDOjpCMzo6
dGVzdFN1YkFkZCk6CisgICAgICAgIChKU0M6OkIzOjp0ZXN0U3ViRmlyc3ROZWcpOgorICAgICAg
ICAoSlNDOjpCMzo6cnVuKToKKwogMjAxOS0wNy0xMSAgSnVzdGluIE1pY2hhdWQgIDxqdXN0aW5f
bWljaGF1ZEBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGIzIG1hY3JvIGxvd2VyaW5nIGZvciBD
aGVja011bCBvbiBhcm02NApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0Iz
UmVkdWNlU3RyZW5ndGguY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzUmVkdWNlU3Ry
ZW5ndGguY3BwCmluZGV4IDEwMjQ3OGYzODA0NWU5Njg4ZmU4OWNjMzMwNjU1ZGI0ZTM0NmE5MTgu
LjlkYzI2MzNiODM5Yjk3ZjhlMzU0ZmRjZGZjYWJiNGU4OTcxOTliNTYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1JlZHVjZVN0cmVuZ3RoLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYjMvQjNSZWR1Y2VTdHJlbmd0aC5jcHAKQEAgLTY1MSw2ICs2NTEsMzkg
QEAgcHJpdmF0ZToKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAg
fQogCisgICAgICAgICAgICAgICAgLy8gVHVybiB0aGlzOiBTdWIoTmVnKHZhbHVlKSwgdmFsdWUy
KQorICAgICAgICAgICAgICAgIC8vIEludG8gdGhpczogTmVnKEFkZCh2YWx1ZSwgdmFsdWUyKSkK
KyAgICAgICAgICAgICAgICBpZiAobV92YWx1ZS0+Y2hpbGQoMCktPm9wY29kZSgpID09IE5lZykg
eworICAgICAgICAgICAgICAgICAgICByZXBsYWNlV2l0aE5ldzxWYWx1ZT4oTmVnLCBtX3ZhbHVl
LT5vcmlnaW4oKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIG1faW5zZXJ0aW9uU2V0Lmluc2Vy
dDxWYWx1ZT4obV9pbmRleCwgQWRkLCBtX3ZhbHVlLT5vcmlnaW4oKSwgbV92YWx1ZS0+Y2hpbGQo
MCktPmNoaWxkKDApLCBtX3ZhbHVlLT5jaGlsZCgxKSkpOworICAgICAgICAgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAvLyBUdXJuIHRoaXM6
IFN1YihTdWIoYSwgYiksIGMpCisgICAgICAgICAgICAgICAgLy8gSW50byB0aGlzOiBTdWIoYSwg
QWRkKGIsIGMpKQorICAgICAgICAgICAgICAgIGlmIChtX3ZhbHVlLT5jaGlsZCgwKS0+b3Bjb2Rl
KCkgPT0gU3ViKSB7CisgICAgICAgICAgICAgICAgICAgIHJlcGxhY2VXaXRoTmV3PFZhbHVlPihT
dWIsIG1fdmFsdWUtPm9yaWdpbigpLCBtX3ZhbHVlLT5jaGlsZCgwKS0+Y2hpbGQoMCksCisgICAg
ICAgICAgICAgICAgICAgICAgICBtX2luc2VydGlvblNldC5pbnNlcnQ8VmFsdWU+KG1faW5kZXgs
IEFkZCwgbV92YWx1ZS0+b3JpZ2luKCksIG1fdmFsdWUtPmNoaWxkKDApLT5jaGlsZCgxKSwgbV92
YWx1ZS0+Y2hpbGQoMSkpKTsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAg
ICAgICAgfQorCisgICAgICAgICAgICAgICAgLy8gVHVybiB0aGlzOiBTdWIoYSwgU3ViKGIsIGMp
KQorICAgICAgICAgICAgICAgIC8vIEludG8gdGhpczogQWRkKFN1YihhLCBiKSwgYykKKyAgICAg
ICAgICAgICAgICBpZiAobV92YWx1ZS0+Y2hpbGQoMSktPm9wY29kZSgpID09IFN1YikgeworICAg
ICAgICAgICAgICAgICAgICByZXBsYWNlV2l0aE5ldzxWYWx1ZT4oQWRkLCBtX3ZhbHVlLT5vcmln
aW4oKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIG1faW5zZXJ0aW9uU2V0Lmluc2VydDxWYWx1
ZT4obV9pbmRleCwgU3ViLCBtX3ZhbHVlLT5vcmlnaW4oKSwgbV92YWx1ZS0+Y2hpbGQoMCksIG1f
dmFsdWUtPmNoaWxkKDEpLT5jaGlsZCgwKSksCisgICAgICAgICAgICAgICAgICAgICAgICBtX3Zh
bHVlLT5jaGlsZCgxKS0+Y2hpbGQoMSkpOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAvLyBUdXJuIHRoaXM6IFN1YihBZGQo
YSwgYiksIGMpCisgICAgICAgICAgICAgICAgLy8gSW50byB0aGlzOiBBZGQoYSwgU3ViKGIsIGMp
KQorICAgICAgICAgICAgICAgIGlmIChtX3ZhbHVlLT5jaGlsZCgwKS0+b3Bjb2RlKCkgPT0gQWRk
KSB7CisgICAgICAgICAgICAgICAgICAgIHJlcGxhY2VXaXRoTmV3PFZhbHVlPihBZGQsIG1fdmFs
dWUtPm9yaWdpbigpLCBtX3ZhbHVlLT5jaGlsZCgwKS0+Y2hpbGQoMCksCisgICAgICAgICAgICAg
ICAgICAgICAgICBtX2luc2VydGlvblNldC5pbnNlcnQ8VmFsdWU+KG1faW5kZXgsIFN1YiwgbV92
YWx1ZS0+b3JpZ2luKCksIG1fdmFsdWUtPmNoaWxkKDApLT5jaGlsZCgxKSwgbV92YWx1ZS0+Y2hp
bGQoMSkpKTsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgfQor
CiAgICAgICAgICAgICAgICAgaWYgKGhhbmRsZU11bERpc3RyaWJ1dGl2aXR5KCkpCiAgICAgICAg
ICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2IzL3Rlc3RiMy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvdGVz
dGIzLmNwcAppbmRleCBjOWZkMThlOWJhZjIxNDBjNWMwMzYyNmZiZTYxZjY5NDk3M2E2YWNkLi5l
ODQxYmI4ZmM3MjllMTcwMzkyZDY0ZjVjZTdhN2M3NDc4OGM2ZDFiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYjMvdGVzdGIzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYjMvdGVzdGIzLmNwcApAQCAtMjE5MCw2ICsyMTkwLDY5IEBAIHZvaWQgdGVzdE5lZ1ZhbHVl
U3ViT25lKGludCBhKQogICAgIENIRUNLKGNvbXBpbGVBbmRSdW48aW50Pihwcm9jLCBhKSA9PSAt
YSAtIDEpOwogfQogCit2b2lkIHRlc3RTdWJTdWIoaW50IGEsIGludCBiLCBpbnQgYykKK3sKKyAg
ICBQcm9jZWR1cmUgcHJvYzsKKyAgICBCYXNpY0Jsb2NrKiByb290ID0gcHJvYy5hZGRCbG9jaygp
OworICAgIHJvb3QtPmFwcGVuZE5ld0NvbnRyb2xWYWx1ZSgKKyAgICAgICAgcHJvYywgUmV0dXJu
LCBPcmlnaW4oKSwKKyAgICAgICAgcm9vdC0+YXBwZW5kTmV3PFZhbHVlPigKKyAgICAgICAgICAg
IHByb2MsIFN1YiwgT3JpZ2luKCksCisgICAgICAgICAgICByb290LT5hcHBlbmROZXc8VmFsdWU+
KHByb2MsIFN1YiwgT3JpZ2luKCksCisgICAgICAgICAgICAgICAgcm9vdC0+YXBwZW5kTmV3PEFy
Z3VtZW50UmVnVmFsdWU+KHByb2MsIE9yaWdpbigpLCBHUFJJbmZvOjphcmd1bWVudEdQUjApLAor
ICAgICAgICAgICAgICAgIHJvb3QtPmFwcGVuZE5ldzxBcmd1bWVudFJlZ1ZhbHVlPihwcm9jLCBP
cmlnaW4oKSwgR1BSSW5mbzo6YXJndW1lbnRHUFIxKSksCisgICAgICAgICAgICByb290LT5hcHBl
bmROZXc8QXJndW1lbnRSZWdWYWx1ZT4ocHJvYywgT3JpZ2luKCksIEdQUkluZm86OmFyZ3VtZW50
R1BSMikpKTsKKworICAgIENIRUNLKGNvbXBpbGVBbmRSdW48aW50Pihwcm9jLCBhLCBiLCBjKSA9
PSAoYS1iKS1jKTsKK30KKwordm9pZCB0ZXN0U3ViU3ViMihpbnQgYSwgaW50IGIsIGludCBjKQor
eworICAgIFByb2NlZHVyZSBwcm9jOworICAgIEJhc2ljQmxvY2sqIHJvb3QgPSBwcm9jLmFkZEJs
b2NrKCk7CisgICAgcm9vdC0+YXBwZW5kTmV3Q29udHJvbFZhbHVlKAorICAgICAgICBwcm9jLCBS
ZXR1cm4sIE9yaWdpbigpLAorICAgICAgICByb290LT5hcHBlbmROZXc8VmFsdWU+KAorICAgICAg
ICAgICAgcHJvYywgU3ViLCBPcmlnaW4oKSwKKyAgICAgICAgICAgIHJvb3QtPmFwcGVuZE5ldzxB
cmd1bWVudFJlZ1ZhbHVlPihwcm9jLCBPcmlnaW4oKSwgR1BSSW5mbzo6YXJndW1lbnRHUFIwKSwK
KyAgICAgICAgICAgIHJvb3QtPmFwcGVuZE5ldzxWYWx1ZT4ocHJvYywgU3ViLCBPcmlnaW4oKSwK
KyAgICAgICAgICAgICAgICByb290LT5hcHBlbmROZXc8QXJndW1lbnRSZWdWYWx1ZT4ocHJvYywg
T3JpZ2luKCksIEdQUkluZm86OmFyZ3VtZW50R1BSMSksCisgICAgICAgICAgICAgICAgcm9vdC0+
YXBwZW5kTmV3PEFyZ3VtZW50UmVnVmFsdWU+KHByb2MsIE9yaWdpbigpLCBHUFJJbmZvOjphcmd1
bWVudEdQUjIpKSkpOworCisgICAgQ0hFQ0soY29tcGlsZUFuZFJ1bjxpbnQ+KHByb2MsIGEsIGIs
IGMpID09IGEtKGItYykpOworfQorCit2b2lkIHRlc3RTdWJBZGQoaW50IGEsIGludCBiLCBpbnQg
YykKK3sKKyAgICBQcm9jZWR1cmUgcHJvYzsKKyAgICBCYXNpY0Jsb2NrKiByb290ID0gcHJvYy5h
ZGRCbG9jaygpOworICAgIHJvb3QtPmFwcGVuZE5ld0NvbnRyb2xWYWx1ZSgKKyAgICAgICAgcHJv
YywgUmV0dXJuLCBPcmlnaW4oKSwKKyAgICAgICAgcm9vdC0+YXBwZW5kTmV3PFZhbHVlPigKKyAg
ICAgICAgICAgIHByb2MsIFN1YiwgT3JpZ2luKCksCisgICAgICAgICAgICByb290LT5hcHBlbmRO
ZXc8VmFsdWU+KHByb2MsIEFkZCwgT3JpZ2luKCksCisgICAgICAgICAgICAgICAgcm9vdC0+YXBw
ZW5kTmV3PEFyZ3VtZW50UmVnVmFsdWU+KHByb2MsIE9yaWdpbigpLCBHUFJJbmZvOjphcmd1bWVu
dEdQUjApLAorICAgICAgICAgICAgICAgIHJvb3QtPmFwcGVuZE5ldzxBcmd1bWVudFJlZ1ZhbHVl
Pihwcm9jLCBPcmlnaW4oKSwgR1BSSW5mbzo6YXJndW1lbnRHUFIxKSksCisgICAgICAgICAgICBy
b290LT5hcHBlbmROZXc8QXJndW1lbnRSZWdWYWx1ZT4ocHJvYywgT3JpZ2luKCksIEdQUkluZm86
OmFyZ3VtZW50R1BSMikpKTsKKworICAgIENIRUNLKGNvbXBpbGVBbmRSdW48aW50Pihwcm9jLCBh
LCBiLCBjKSA9PSAoYStiKS1jKTsKK30KKwordm9pZCB0ZXN0U3ViRmlyc3ROZWcoaW50IGEsIGlu
dCBiKQoreworICAgIFByb2NlZHVyZSBwcm9jOworICAgIEJhc2ljQmxvY2sqIHJvb3QgPSBwcm9j
LmFkZEJsb2NrKCk7CisgICAgcm9vdC0+YXBwZW5kTmV3Q29udHJvbFZhbHVlKAorICAgICAgICBw
cm9jLCBSZXR1cm4sIE9yaWdpbigpLAorICAgICAgICByb290LT5hcHBlbmROZXc8VmFsdWU+KAor
ICAgICAgICAgICAgcHJvYywgU3ViLCBPcmlnaW4oKSwKKyAgICAgICAgICAgIHJvb3QtPmFwcGVu
ZE5ldzxWYWx1ZT4ocHJvYywgTmVnLCBPcmlnaW4oKSwKKyAgICAgICAgICAgICAgICByb290LT5h
cHBlbmROZXc8QXJndW1lbnRSZWdWYWx1ZT4ocHJvYywgT3JpZ2luKCksIEdQUkluZm86OmFyZ3Vt
ZW50R1BSMCkpLAorICAgICAgICAgICAgcm9vdC0+YXBwZW5kTmV3PEFyZ3VtZW50UmVnVmFsdWU+
KHByb2MsIE9yaWdpbigpLCBHUFJJbmZvOjphcmd1bWVudEdQUjEpKSk7CisKKyAgICBDSEVDSyhj
b21waWxlQW5kUnVuPGludD4ocHJvYywgYSwgYikgPT0gKC1hKS1iKTsKK30KKwogdm9pZCB0ZXN0
U3ViSW1tQXJnKGludCBhLCBpbnQgYikKIHsKICAgICBQcm9jZWR1cmUgcHJvYzsKQEAgLTE3NDU3
LDYgKzE3NTIwLDExIEBAIHZvaWQgcnVuKGNvbnN0IGNoYXIqIGZpbHRlcikKICAgICBSVU5fQklO
QVJZKHRlc3ROZWdNdWxBcmdJbW0sIGludDY0T3BlcmFuZHMoKSwgaW50NjRPcGVyYW5kcygpKTsK
ICAgICBSVU5fVEVSTkFSWSh0ZXN0U3ViTXVsTXVsQXJncywgaW50NjRPcGVyYW5kcygpLCBpbnQ2
NE9wZXJhbmRzKCksIGludDY0T3BlcmFuZHMoKSk7CiAKKyAgICBSVU5fVEVSTkFSWSh0ZXN0U3Vi
U3ViLCBpbnQzMk9wZXJhbmRzKCksIGludDMyT3BlcmFuZHMoKSwgaW50MzJPcGVyYW5kcygpKTsK
KyAgICBSVU5fVEVSTkFSWSh0ZXN0U3ViU3ViMiwgaW50MzJPcGVyYW5kcygpLCBpbnQzMk9wZXJh
bmRzKCksIGludDMyT3BlcmFuZHMoKSk7CisgICAgUlVOX1RFUk5BUlkodGVzdFN1YkFkZCwgaW50
MzJPcGVyYW5kcygpLCBpbnQzMk9wZXJhbmRzKCksIGludDMyT3BlcmFuZHMoKSk7CisgICAgUlVO
X0JJTkFSWSh0ZXN0U3ViRmlyc3ROZWcsIGludDMyT3BlcmFuZHMoKSwgaW50MzJPcGVyYW5kcygp
KTsKKwogICAgIFJVTih0ZXN0U3ViQXJnczMyKDEsIDEpKTsKICAgICBSVU4odGVzdFN1YkFyZ3Mz
MigxLCAyKSk7CiAgICAgUlVOKHRlc3RTdWJBcmdzMzIoMTMsIC00MikpOwpkaWZmIC0tZ2l0IGEv
SlNUZXN0cy9DaGFuZ2VMb2cgYi9KU1Rlc3RzL0NoYW5nZUxvZwppbmRleCBkMGYxNzMyMjFhOWY0
MDQ2NjBiNWQ5ODkyNjEzYWM5NmZkYTFmZWNmLi4zNWEzMTk1MTlhZDQ3MTcxYzBkNjcwMWYwYmE1
ODQ5MzgzMDg2YTI0IDEwMDY0NAotLS0gYS9KU1Rlc3RzL0NoYW5nZUxvZworKysgYi9KU1Rlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDE5LTA3LTExICBKdXN0aW4gTWljaGF1ZCAg
PGp1c3Rpbl9taWNoYXVkQGFwcGxlLmNvbT4KKworICAgICAgICBCMyBzaG91bGQgcmVkdWNlIChp
bnRlZ2VyKSBTdWIoTmVnKHgpLCB5KSB0byBOZWcoQWRkKHgsIHkpKQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk2MzcxCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBtaWNyb2JlbmNobWFya3MvbXVsLWlt
bWVkaWF0ZS1zdWIuanM6IEFkZGVkLgorICAgICAgICAoZG9UZXN0KToKKwogMjAxOS0wNy0xMSAg
SnVzdGluIE1pY2hhdWQgIDxqdXN0aW5fbWljaGF1ZEBhcHBsZS5jb20+CiAKICAgICAgICAgQWRk
IGIzIG1hY3JvIGxvd2VyaW5nIGZvciBDaGVja011bCBvbiBhcm02NApkaWZmIC0tZ2l0IGEvSlNU
ZXN0cy9taWNyb2JlbmNobWFya3MvbXVsLWltbWVkaWF0ZS1zdWIuanMgYi9KU1Rlc3RzL21pY3Jv
YmVuY2htYXJrcy9tdWwtaW1tZWRpYXRlLXN1Yi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wODhhZDc2MTBjMWVk
YjgxZWQ2NmNmODNmMWY0YWMwZGUwZTYyMzM1Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy9t
aWNyb2JlbmNobWFya3MvbXVsLWltbWVkaWF0ZS1zdWIuanMKQEAgLTAsMCArMSwxMyBAQAorZnVu
Y3Rpb24gZG9UZXN0KG1heCkgeworICAgIGxldCBzdW0gPSAwCisgICAgZm9yIChsZXQgaT0wOyBp
PG1heDsgKytpKSB7CisgICAgICAgIHN1bSA9ICgoKCgoKCgoKCgoc3VtfDApICsgKChpKjI1Nil8
MCkpfDApIC0gKChpKjkpfDApKXwwKSAtICgoaSozMSl8MCkpfDApIC0gKChpKjY3KXwwKSl8MCkg
LSAoKGkqNjQpfDApKXwwKQorICAgIH0KKyAgICByZXR1cm4gc3VtCit9Citub0lubGluZShkb1Rl
c3QpOworCitmb3IgKGxldCBpPTA7IGk8MTAwMDAwOyArK2kpIGRvVGVzdCgxMDAwMCkKKworaWYg
KGRvVGVzdCgxMDAwKSAhPSA0MjQ1NzUwMCkKKyAgICB0aHJvdyAiRXJyb3I6IGJhZCByZXN1bHQ6
ICIgKyBkb1Rlc3QoMTAwMCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>