<?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>122960</bug_id>
          
          <creation_ts>2013-10-17 06:01:40 -0700</creation_ts>
          <short_desc>MainThreadTask class variants should use std::unique_ptr</short_desc>
          <delta_ts>2015-04-20 10:00:30 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</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>
          
          <blocked>128007</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Zan Dobersek">zan</reporter>
          <assigned_to name="Zan Dobersek">zan</assigned_to>
          <cc>darin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>940748</commentid>
    <comment_count>0</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-10-17 06:01:40 -0700</bug_when>
    <thetext>MainThreadTask class variants should use std::unique_ptr</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>940750</commentid>
    <comment_count>1</comment_count>
      <attachid>214451</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-10-17 06:10:14 -0700</bug_when>
    <thetext>Created attachment 214451
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>940764</commentid>
    <comment_count>2</comment_count>
      <attachid>214451</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-10-17 07:02:01 -0700</bug_when>
    <thetext>Comment on attachment 214451
Patch

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

Instead of using std::unique_ptr&lt;MainThreadTask&gt;(new MainThreadTask(...) you can just use std::make_unique&lt;MainThreadTask&gt;(...).

&gt; Source/WebCore/platform/MainThreadTask.h:487
&gt; -    typename CrossThreadCopier&lt;P4&gt;::Type, MP4, typename CrossThreadCopier&lt;P5&gt;::Type, MP5, typename CrossThreadCopier&lt;P6&gt;::Type, MP6,
&gt; -    typename CrossThreadCopier&lt;P7&gt;::Type, MP7, typename CrossThreadCopier&lt;P8&gt;::Type, MP8&gt;::create(
&gt; -                                                       method,
&gt; -                                                       CrossThreadCopier&lt;P1&gt;::copy(parameter1), CrossThreadCopier&lt;P2&gt;::copy(parameter2),
&gt; -                                                       CrossThreadCopier&lt;P3&gt;::copy(parameter3), CrossThreadCopier&lt;P4&gt;::copy(parameter4),
&gt; -                                                       CrossThreadCopier&lt;P5&gt;::copy(parameter5), CrossThreadCopier&lt;P6&gt;::copy(parameter6),
&gt; -                                                       CrossThreadCopier&lt;P7&gt;::copy(parameter7), CrossThreadCopier&lt;P8&gt;::copy(parameter8)).leakPtr());
&gt; +        typename CrossThreadCopier&lt;P4&gt;::Type, MP4, typename CrossThreadCopier&lt;P5&gt;::Type, MP5, typename CrossThreadCopier&lt;P6&gt;::Type, MP6,
&gt; +        typename CrossThreadCopier&lt;P7&gt;::Type, MP7, typename CrossThreadCopier&lt;P8&gt;::Type, MP8&gt;::create(
&gt; +            method,
&gt; +            CrossThreadCopier&lt;P1&gt;::copy(parameter1), CrossThreadCopier&lt;P2&gt;::copy(parameter2),
&gt; +            CrossThreadCopier&lt;P3&gt;::copy(parameter3), CrossThreadCopier&lt;P4&gt;::copy(parameter4),
&gt; +            CrossThreadCopier&lt;P5&gt;::copy(parameter5), CrossThreadCopier&lt;P6&gt;::copy(parameter6),
&gt; +            CrossThreadCopier&lt;P7&gt;::copy(parameter7), CrossThreadCopier&lt;P8&gt;::copy(parameter8)).release());

I don&apos;t think there&apos;s any point in re-indenting this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>940793</commentid>
    <comment_count>3</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2013-10-17 08:54:37 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 214451 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=214451&amp;action=review
&gt; 
&gt; Instead of using std::unique_ptr&lt;MainThreadTask&gt;(new MainThreadTask(...) you can just use std::make_unique&lt;MainThreadTask&gt;(...).
&gt; 

That would require for the constructor to be public.

If I (can?) make the constructor public, the static create() methods could be abandoned and std::make_unique&lt;MainThreadTask&gt;() could be used directly.

The constructor could be kept private if std::make_unique is listed as a friend in the class&apos; definitions. I tried that already, but couldn&apos;t set up a properly templatized friend declaration for it to work.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>998228</commentid>
    <comment_count>4</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-07 13:32:27 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; That would require for the constructor to be public.

Yes, I think that’s a fine thing to do.

Another option is to use “friend” for this. We have done both in the past. Either is fine depending on your preferences.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1086804</commentid>
    <comment_count>5</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-04-20 10:00:30 -0700</bug_when>
    <thetext>This class has been removed, so we no longer need to do this.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>214451</attachid>
            <date>2013-10-17 06:10:14 -0700</date>
            <delta_ts>2013-10-17 07:02:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-122960-20131017151012.patch</filename>
            <type>text/plain</type>
            <size>13760</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU3NTY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGIzMmE2ODA2Mzg0ZmNm
ZGQ0YTFiNzk0YzEwMzFhMWEyZTE1YTNlMy4uOTExNGI4NjIyMTQzOGVkMTg3MzY0OTg4MDY1NjU5
ZDg5YjU0OGYwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEzLTEwLTE3ICBaYW4g
RG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KKworICAgICAgICBNYWluVGhyZWFkVGFz
ayBjbGFzcyB2YXJpYW50cyBzaG91bGQgdXNlIHN0ZDo6dW5pcXVlX3B0cgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIyOTYwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFpblRocmVhZFRhc2s/OjpjcmVh
dGUgbWV0aG9kcyBzaG91bGQgcmV0dXJuIGEgc3RkOjp1bmlxdWVfcHRyLiBUaGUgY2FsbE9uTWFp
blRocmVhZCBmdW5jdGlvbiB2YXJpYW50cworICAgICAgICB0aGVuIHJlbGVhc2UgdGhlIHVuaXF1
ZSBwb2ludGVyIHRvIHRoZSBXVEY6OmNhbGxPbk1haW5UaHJlYWQgZnVuY3Rpb24gYW5kIHRoZSBl
eGVjdXRlTWFpblRocmVhZFRhc2sgZnVuY3Rpb24KKyAgICAgICAgY3JlYXRlcyBhIG5ldyBzdGQ6
OnVuaXF1ZV9wdHIgdGhhdCB0YWtlcyBvdmVyIHRoZSBvd25lcnNoaXAgb2YgdGhlIHBhc3NlZC1p
biBvYmplY3QuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9NYWluVGhyZWFkVGFzay5oOgorICAgICAg
ICAoV2ViQ29yZTo6TWFpblRocmVhZFRhc2sxOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6
TWFpblRocmVhZFRhc2syOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6TWFpblRocmVhZFRh
c2szOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6TWFpblRocmVhZFRhc2s0OjpjcmVhdGUp
OgorICAgICAgICAoV2ViQ29yZTo6TWFpblRocmVhZFRhc2s1OjpjcmVhdGUpOgorICAgICAgICAo
V2ViQ29yZTo6TWFpblRocmVhZFRhc2s2OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6TWFp
blRocmVhZFRhc2s3OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6TWFpblRocmVhZFRhc2s4
OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6ZXhlY3V0ZU1haW5UaHJlYWRUYXNrKToKKyAg
ICAgICAgKFdlYkNvcmU6OmNhbGxPbk1haW5UaHJlYWQpOgorCiAyMDEzLTEwLTE3ICBLcnp5c3p0
b2YgQ3plY2ggIDxrLmN6ZWNoQHNhbXN1bmcuY29tPgogCiAgICAgICAgIFtFRkxdIFByb3Blcmx5
IGV4cG9zZSB0YWJsZXMgaW4gYWNjZXNzaWJpbGl0eQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vTWFpblRocmVhZFRhc2suaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL01h
aW5UaHJlYWRUYXNrLmgKaW5kZXggOGU3OGQ5ZDcxODVkMzcwMzJjNDkyZGU2ZDk4NjViMjBjN2M1
ODI1Yi4uNDI1ODg2YzNlOTQwZjgxMjE4ZDBjNzBhNmFkZWY2ZjAxNzQ3ZjY2NiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTWFpblRocmVhZFRhc2suaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9NYWluVGhyZWFkVGFzay5oCkBAIC03Myw5ICs3Myw5IEBAIHB1Ymxp
YzoKICAgICB0eXBlZGVmIE1haW5UaHJlYWRUYXNrMTxQMSwgTVAxPiBNYWluVGhyZWFkVGFzazsK
ICAgICB0eXBlZGVmIHR5cGVuYW1lIE1haW5UaHJlYWRUYXNrVHJhaXRzPFAxPjo6UGFyYW1UeXBl
IFBhcmFtMTsKIAotICAgIHN0YXRpYyBQYXNzT3duUHRyPE1haW5UaHJlYWRUYXNrPiBjcmVhdGUo
TWV0aG9kIG1ldGhvZCwgUGFyYW0xIHBhcmFtZXRlcjEpCisgICAgc3RhdGljIHN0ZDo6dW5pcXVl
X3B0cjxNYWluVGhyZWFkVGFzaz4gY3JlYXRlKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0
ZXIxKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBNYWluVGhyZWFkVGFzayht
ZXRob2QsIHBhcmFtZXRlcjEpKTsKKyAgICAgICAgcmV0dXJuIHN0ZDo6dW5pcXVlX3B0cjxNYWlu
VGhyZWFkVGFzaz4obmV3IE1haW5UaHJlYWRUYXNrKG1ldGhvZCwgcGFyYW1ldGVyMSkpOwogICAg
IH0KIAogcHJpdmF0ZToKQEAgLTEwMyw5ICsxMDMsOSBAQCBwdWJsaWM6CiAgICAgdHlwZWRlZiB0
eXBlbmFtZSBNYWluVGhyZWFkVGFza1RyYWl0czxQMT46OlBhcmFtVHlwZSBQYXJhbTE7CiAgICAg
dHlwZWRlZiB0eXBlbmFtZSBNYWluVGhyZWFkVGFza1RyYWl0czxQMj46OlBhcmFtVHlwZSBQYXJh
bTI7CiAKLSAgICBzdGF0aWMgUGFzc093blB0cjxNYWluVGhyZWFkVGFzaz4gY3JlYXRlKE1ldGhv
ZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0ZXIxLCBQYXJhbTIgcGFyYW1ldGVyMikKKyAgICBzdGF0
aWMgc3RkOjp1bmlxdWVfcHRyPE1haW5UaHJlYWRUYXNrPiBjcmVhdGUoTWV0aG9kIG1ldGhvZCwg
UGFyYW0xIHBhcmFtZXRlcjEsIFBhcmFtMiBwYXJhbWV0ZXIyKQogICAgIHsKLSAgICAgICAgcmV0
dXJuIGFkb3B0UHRyKG5ldyBNYWluVGhyZWFkVGFzayhtZXRob2QsIHBhcmFtZXRlcjEsIHBhcmFt
ZXRlcjIpKTsKKyAgICAgICAgcmV0dXJuIHN0ZDo6dW5pcXVlX3B0cjxNYWluVGhyZWFkVGFzaz4o
bmV3IE1haW5UaHJlYWRUYXNrKG1ldGhvZCwgcGFyYW1ldGVyMSwgcGFyYW1ldGVyMikpOwogICAg
IH0KIAogcHJpdmF0ZToKQEAgLTEzNiw5ICsxMzYsOSBAQCBwdWJsaWM6CiAgICAgdHlwZWRlZiB0
eXBlbmFtZSBNYWluVGhyZWFkVGFza1RyYWl0czxQMj46OlBhcmFtVHlwZSBQYXJhbTI7CiAgICAg
dHlwZWRlZiB0eXBlbmFtZSBNYWluVGhyZWFkVGFza1RyYWl0czxQMz46OlBhcmFtVHlwZSBQYXJh
bTM7CiAKLSAgICBzdGF0aWMgUGFzc093blB0cjxNYWluVGhyZWFkVGFzaz4gY3JlYXRlKE1ldGhv
ZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0ZXIxLCBQYXJhbTIgcGFyYW1ldGVyMiwgUGFyYW0zIHBh
cmFtZXRlcjMpCisgICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxNYWluVGhyZWFkVGFzaz4gY3Jl
YXRlKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0ZXIxLCBQYXJhbTIgcGFyYW1ldGVyMiwg
UGFyYW0zIHBhcmFtZXRlcjMpCiAgICAgewotICAgICAgICByZXR1cm4gYWRvcHRQdHIobmV3IE1h
aW5UaHJlYWRUYXNrKG1ldGhvZCwgcGFyYW1ldGVyMSwgcGFyYW1ldGVyMiwgcGFyYW1ldGVyMykp
OworICAgICAgICByZXR1cm4gc3RkOjp1bmlxdWVfcHRyPE1haW5UaHJlYWRUYXNrPihuZXcgTWFp
blRocmVhZFRhc2sobWV0aG9kLCBwYXJhbWV0ZXIxLCBwYXJhbWV0ZXIyLCBwYXJhbWV0ZXIzKSk7
CiAgICAgfQogCiBwcml2YXRlOgpAQCAtMTcyLDkgKzE3Miw5IEBAIHB1YmxpYzoKICAgICB0eXBl
ZGVmIHR5cGVuYW1lIE1haW5UaHJlYWRUYXNrVHJhaXRzPFAzPjo6UGFyYW1UeXBlIFBhcmFtMzsK
ICAgICB0eXBlZGVmIHR5cGVuYW1lIE1haW5UaHJlYWRUYXNrVHJhaXRzPFA0Pjo6UGFyYW1UeXBl
IFBhcmFtNDsKIAotICAgIHN0YXRpYyBQYXNzT3duUHRyPE1haW5UaHJlYWRUYXNrPiBjcmVhdGUo
TWV0aG9kIG1ldGhvZCwgUGFyYW0xIHBhcmFtZXRlcjEsIFBhcmFtMiBwYXJhbWV0ZXIyLCBQYXJh
bTMgcGFyYW1ldGVyMywgUGFyYW00IHBhcmFtZXRlcjQpCisgICAgc3RhdGljIHN0ZDo6dW5pcXVl
X3B0cjxNYWluVGhyZWFkVGFzaz4gY3JlYXRlKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0
ZXIxLCBQYXJhbTIgcGFyYW1ldGVyMiwgUGFyYW0zIHBhcmFtZXRlcjMsIFBhcmFtNCBwYXJhbWV0
ZXI0KQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBNYWluVGhyZWFkVGFzayht
ZXRob2QsIHBhcmFtZXRlcjEsIHBhcmFtZXRlcjIsIHBhcmFtZXRlcjMsIHBhcmFtZXRlcjQpKTsK
KyAgICAgICAgcmV0dXJuIHN0ZDo6dW5pcXVlX3B0cjxNYWluVGhyZWFkVGFzaz4obmV3IE1haW5U
aHJlYWRUYXNrKG1ldGhvZCwgcGFyYW1ldGVyMSwgcGFyYW1ldGVyMiwgcGFyYW1ldGVyMywgcGFy
YW1ldGVyNCkpOwogICAgIH0KIAogcHJpdmF0ZToKQEAgLTIxMSw5ICsyMTEsOSBAQCBwdWJsaWM6
CiAgICAgdHlwZWRlZiB0eXBlbmFtZSBNYWluVGhyZWFkVGFza1RyYWl0czxQND46OlBhcmFtVHlw
ZSBQYXJhbTQ7CiAgICAgdHlwZWRlZiB0eXBlbmFtZSBNYWluVGhyZWFkVGFza1RyYWl0czxQNT46
OlBhcmFtVHlwZSBQYXJhbTU7CiAKLSAgICBzdGF0aWMgUGFzc093blB0cjxNYWluVGhyZWFkVGFz
az4gY3JlYXRlKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0ZXIxLCBQYXJhbTIgcGFyYW1l
dGVyMiwgUGFyYW0zIHBhcmFtZXRlcjMsIFBhcmFtNCBwYXJhbWV0ZXI0LCBQYXJhbTUgcGFyYW1l
dGVyNSkKKyAgICBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPE1haW5UaHJlYWRUYXNrPiBjcmVhdGUo
TWV0aG9kIG1ldGhvZCwgUGFyYW0xIHBhcmFtZXRlcjEsIFBhcmFtMiBwYXJhbWV0ZXIyLCBQYXJh
bTMgcGFyYW1ldGVyMywgUGFyYW00IHBhcmFtZXRlcjQsIFBhcmFtNSBwYXJhbWV0ZXI1KQogICAg
IHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBNYWluVGhyZWFkVGFzayhtZXRob2QsIHBh
cmFtZXRlcjEsIHBhcmFtZXRlcjIsIHBhcmFtZXRlcjMsIHBhcmFtZXRlcjQsIHBhcmFtZXRlcjUp
KTsKKyAgICAgICAgcmV0dXJuIHN0ZDo6dW5pcXVlX3B0cjxNYWluVGhyZWFkVGFzaz4obmV3IE1h
aW5UaHJlYWRUYXNrKG1ldGhvZCwgcGFyYW1ldGVyMSwgcGFyYW1ldGVyMiwgcGFyYW1ldGVyMywg
cGFyYW1ldGVyNCwgcGFyYW1ldGVyNSkpOwogICAgIH0KIAogcHJpdmF0ZToKQEAgLTI1Myw5ICsy
NTMsOSBAQCBwdWJsaWM6CiAgICAgdHlwZWRlZiB0eXBlbmFtZSBNYWluVGhyZWFkVGFza1RyYWl0
czxQNT46OlBhcmFtVHlwZSBQYXJhbTU7CiAgICAgdHlwZWRlZiB0eXBlbmFtZSBNYWluVGhyZWFk
VGFza1RyYWl0czxQNj46OlBhcmFtVHlwZSBQYXJhbTY7CiAKLSAgICBzdGF0aWMgUGFzc093blB0
cjxNYWluVGhyZWFkVGFzaz4gY3JlYXRlKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0ZXIx
LCBQYXJhbTIgcGFyYW1ldGVyMiwgUGFyYW0zIHBhcmFtZXRlcjMsIFBhcmFtNCBwYXJhbWV0ZXI0
LCBQYXJhbTUgcGFyYW1ldGVyNSwgUGFyYW02IHBhcmFtZXRlcjYpCisgICAgc3RhdGljIHN0ZDo6
dW5pcXVlX3B0cjxNYWluVGhyZWFkVGFzaz4gY3JlYXRlKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBw
YXJhbWV0ZXIxLCBQYXJhbTIgcGFyYW1ldGVyMiwgUGFyYW0zIHBhcmFtZXRlcjMsIFBhcmFtNCBw
YXJhbWV0ZXI0LCBQYXJhbTUgcGFyYW1ldGVyNSwgUGFyYW02IHBhcmFtZXRlcjYpCiAgICAgewot
ICAgICAgICByZXR1cm4gYWRvcHRQdHIobmV3IE1haW5UaHJlYWRUYXNrKG1ldGhvZCwgcGFyYW1l
dGVyMSwgcGFyYW1ldGVyMiwgcGFyYW1ldGVyMywgcGFyYW1ldGVyNCwgcGFyYW1ldGVyNSwgcGFy
YW1ldGVyNikpOworICAgICAgICByZXR1cm4gc3RkOjp1bmlxdWVfcHRyPE1haW5UaHJlYWRUYXNr
PihuZXcgTWFpblRocmVhZFRhc2sobWV0aG9kLCBwYXJhbWV0ZXIxLCBwYXJhbWV0ZXIyLCBwYXJh
bWV0ZXIzLCBwYXJhbWV0ZXI0LCBwYXJhbWV0ZXI1LCBwYXJhbWV0ZXI2KSk7CiAgICAgfQogCiBw
cml2YXRlOgpAQCAtMjk4LDkgKzI5OCw5IEBAIHB1YmxpYzoKICAgICB0eXBlZGVmIHR5cGVuYW1l
IE1haW5UaHJlYWRUYXNrVHJhaXRzPFA2Pjo6UGFyYW1UeXBlIFBhcmFtNjsKICAgICB0eXBlZGVm
IHR5cGVuYW1lIE1haW5UaHJlYWRUYXNrVHJhaXRzPFA3Pjo6UGFyYW1UeXBlIFBhcmFtNzsKIAot
ICAgIHN0YXRpYyBQYXNzT3duUHRyPE1haW5UaHJlYWRUYXNrPiBjcmVhdGUoTWV0aG9kIG1ldGhv
ZCwgUGFyYW0xIHBhcmFtZXRlcjEsIFBhcmFtMiBwYXJhbWV0ZXIyLCBQYXJhbTMgcGFyYW1ldGVy
MywgUGFyYW00IHBhcmFtZXRlcjQsIFBhcmFtNSBwYXJhbWV0ZXI1LCBQYXJhbTYgcGFyYW1ldGVy
NiwgUGFyYW03IHBhcmFtZXRlcjcpCisgICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxNYWluVGhy
ZWFkVGFzaz4gY3JlYXRlKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0ZXIxLCBQYXJhbTIg
cGFyYW1ldGVyMiwgUGFyYW0zIHBhcmFtZXRlcjMsIFBhcmFtNCBwYXJhbWV0ZXI0LCBQYXJhbTUg
cGFyYW1ldGVyNSwgUGFyYW02IHBhcmFtZXRlcjYsIFBhcmFtNyBwYXJhbWV0ZXI3KQogICAgIHsK
LSAgICAgICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBNYWluVGhyZWFkVGFzayhtZXRob2QsIHBhcmFt
ZXRlcjEsIHBhcmFtZXRlcjIsIHBhcmFtZXRlcjMsIHBhcmFtZXRlcjQsIHBhcmFtZXRlcjUsIHBh
cmFtZXRlcjYsIHBhcmFtZXRlcjcpKTsKKyAgICAgICAgcmV0dXJuIHN0ZDo6dW5pcXVlX3B0cjxN
YWluVGhyZWFkVGFzaz4obmV3IE1haW5UaHJlYWRUYXNrKG1ldGhvZCwgcGFyYW1ldGVyMSwgcGFy
YW1ldGVyMiwgcGFyYW1ldGVyMywgcGFyYW1ldGVyNCwgcGFyYW1ldGVyNSwgcGFyYW1ldGVyNiwg
cGFyYW1ldGVyNykpOwogICAgIH0KIAogcHJpdmF0ZToKQEAgLTM0Niw5ICszNDYsOSBAQCBwdWJs
aWM6CiAgICAgdHlwZWRlZiB0eXBlbmFtZSBNYWluVGhyZWFkVGFza1RyYWl0czxQNz46OlBhcmFt
VHlwZSBQYXJhbTc7CiAgICAgdHlwZWRlZiB0eXBlbmFtZSBNYWluVGhyZWFkVGFza1RyYWl0czxQ
OD46OlBhcmFtVHlwZSBQYXJhbTg7CiAgICAgCi0gICAgc3RhdGljIFBhc3NPd25QdHI8TWFpblRo
cmVhZFRhc2s+IGNyZWF0ZShNZXRob2QgbWV0aG9kLCBQYXJhbTEgcGFyYW1ldGVyMSwgUGFyYW0y
IHBhcmFtZXRlcjIsIFBhcmFtMyBwYXJhbWV0ZXIzLCBQYXJhbTQgcGFyYW1ldGVyNCwgUGFyYW01
IHBhcmFtZXRlcjUsIFBhcmFtNiBwYXJhbWV0ZXI2LCBQYXJhbTcgcGFyYW1ldGVyNywgUGFyYW04
IHBhcmFtZXRlcjgpCisgICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxNYWluVGhyZWFkVGFzaz4g
Y3JlYXRlKE1ldGhvZCBtZXRob2QsIFBhcmFtMSBwYXJhbWV0ZXIxLCBQYXJhbTIgcGFyYW1ldGVy
MiwgUGFyYW0zIHBhcmFtZXRlcjMsIFBhcmFtNCBwYXJhbWV0ZXI0LCBQYXJhbTUgcGFyYW1ldGVy
NSwgUGFyYW02IHBhcmFtZXRlcjYsIFBhcmFtNyBwYXJhbWV0ZXI3LCBQYXJhbTggcGFyYW1ldGVy
OCkKICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFB0cihuZXcgTWFpblRocmVhZFRhc2sobWV0
aG9kLCBwYXJhbWV0ZXIxLCBwYXJhbWV0ZXIyLCBwYXJhbWV0ZXIzLCBwYXJhbWV0ZXI0LCBwYXJh
bWV0ZXI1LCBwYXJhbWV0ZXI2LCBwYXJhbWV0ZXI3LCBwYXJhbWV0ZXI4KSk7CisgICAgICAgIHJl
dHVybiBzdGQ6OnVuaXF1ZV9wdHI8TWFpblRocmVhZFRhc2s+KG5ldyBNYWluVGhyZWFkVGFzayht
ZXRob2QsIHBhcmFtZXRlcjEsIHBhcmFtZXRlcjIsIHBhcmFtZXRlcjMsIHBhcmFtZXRlcjQsIHBh
cmFtZXRlcjUsIHBhcmFtZXRlcjYsIHBhcmFtZXRlcjcsIHBhcmFtZXRlcjgpKTsKICAgICB9CiAg
ICAgCiBwcml2YXRlOgpAQCAtMzg0LDcgKzM4NCw3IEBAIHByaXZhdGU6CiAKIHN0YXRpYyB2b2lk
IGV4ZWN1dGVNYWluVGhyZWFkVGFzayh2b2lkKiBjb250ZXh0KQogewotICAgIE93blB0cjxNYWlu
VGhyZWFkVGFza0Jhc2U+IHRhc2sgPSBhZG9wdFB0cihzdGF0aWNfY2FzdDxNYWluVGhyZWFkVGFz
a0Jhc2UqPihjb250ZXh0KSk7CisgICAgc3RkOjp1bmlxdWVfcHRyPE1haW5UaHJlYWRUYXNrQmFz
ZT4gdGFzayhzdGF0aWNfY2FzdDxNYWluVGhyZWFkVGFza0Jhc2UqPihjb250ZXh0KSk7CiAgICAg
dGFzay0+cGVyZm9ybVRhc2soKTsKIH0KIApAQCAtMzk1LDcgKzM5NSw3IEBAIHZvaWQgY2FsbE9u
TWFpblRocmVhZCgKIHsKICAgICBXVEY6OmNhbGxPbk1haW5UaHJlYWQoZXhlY3V0ZU1haW5UaHJl
YWRUYXNrLCBNYWluVGhyZWFkVGFzazE8dHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDE+OjpU
eXBlLCBNUDE+OjpjcmVhdGUoCiAgICAgICAgIG1ldGhvZCwKLSAgICAgICAgQ3Jvc3NUaHJlYWRD
b3BpZXI8UDE+Ojpjb3B5KHBhcmFtZXRlcjEpKS5sZWFrUHRyKCkpOworICAgICAgICBDcm9zc1Ro
cmVhZENvcGllcjxQMT46OmNvcHkocGFyYW1ldGVyMSkpLnJlbGVhc2UoKSk7CiB9CiAKIHRlbXBs
YXRlPHR5cGVuYW1lIFAxLCB0eXBlbmFtZSBNUDEsIHR5cGVuYW1lIFAyLCB0eXBlbmFtZSBNUDI+
CkBAIC00MDUsNyArNDA1LDcgQEAgdm9pZCBjYWxsT25NYWluVGhyZWFkKAogewogICAgIFdURjo6
Y2FsbE9uTWFpblRocmVhZChleGVjdXRlTWFpblRocmVhZFRhc2ssIE1haW5UaHJlYWRUYXNrMjx0
eXBlbmFtZSBDcm9zc1RocmVhZENvcGllcjxQMT46OlR5cGUsIE1QMSwgdHlwZW5hbWUgQ3Jvc3NU
aHJlYWRDb3BpZXI8UDI+OjpUeXBlLCBNUDI+OjpjcmVhdGUoCiAgICAgICAgIG1ldGhvZCwKLSAg
ICAgICAgQ3Jvc3NUaHJlYWRDb3BpZXI8UDE+Ojpjb3B5KHBhcmFtZXRlcjEpLCBDcm9zc1RocmVh
ZENvcGllcjxQMj46OmNvcHkocGFyYW1ldGVyMikpLmxlYWtQdHIoKSk7CisgICAgICAgIENyb3Nz
VGhyZWFkQ29waWVyPFAxPjo6Y29weShwYXJhbWV0ZXIxKSwgQ3Jvc3NUaHJlYWRDb3BpZXI8UDI+
Ojpjb3B5KHBhcmFtZXRlcjIpKS5yZWxlYXNlKCkpOwogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBQ
MSwgdHlwZW5hbWUgTVAxLCB0eXBlbmFtZSBQMiwgdHlwZW5hbWUgTVAyLCB0eXBlbmFtZSBQMywg
dHlwZW5hbWUgTVAzPgpAQCAtNDE2LDcgKzQxNiw3IEBAIHZvaWQgY2FsbE9uTWFpblRocmVhZCgK
ICAgICBXVEY6OmNhbGxPbk1haW5UaHJlYWQoZXhlY3V0ZU1haW5UaHJlYWRUYXNrLCBNYWluVGhy
ZWFkVGFzazM8dHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDE+OjpUeXBlLCBNUDEsIHR5cGVu
YW1lIENyb3NzVGhyZWFkQ29waWVyPFAyPjo6VHlwZSwgTVAyLCB0eXBlbmFtZSBDcm9zc1RocmVh
ZENvcGllcjxQMz46OlR5cGUsIE1QMz46OmNyZWF0ZSgKICAgICAgICAgbWV0aG9kLAogICAgICAg
ICBDcm9zc1RocmVhZENvcGllcjxQMT46OmNvcHkocGFyYW1ldGVyMSksIENyb3NzVGhyZWFkQ29w
aWVyPFAyPjo6Y29weShwYXJhbWV0ZXIyKSwKLSAgICAgICAgQ3Jvc3NUaHJlYWRDb3BpZXI8UDM+
Ojpjb3B5KHBhcmFtZXRlcjMpKS5sZWFrUHRyKCkpOworICAgICAgICBDcm9zc1RocmVhZENvcGll
cjxQMz46OmNvcHkocGFyYW1ldGVyMykpLnJlbGVhc2UoKSk7CiB9CiAKIHRlbXBsYXRlPHR5cGVu
YW1lIFAxLCB0eXBlbmFtZSBNUDEsIHR5cGVuYW1lIFAyLCB0eXBlbmFtZSBNUDIsIHR5cGVuYW1l
IFAzLCB0eXBlbmFtZSBNUDMsIHR5cGVuYW1lIFA0LCB0eXBlbmFtZSBNUDQ+CkBAIC00MjgsNyAr
NDI4LDcgQEAgdm9pZCBjYWxsT25NYWluVGhyZWFkKAogICAgICAgICB0eXBlbmFtZSBDcm9zc1Ro
cmVhZENvcGllcjxQND46OlR5cGUsIE1QND46OmNyZWF0ZSgKICAgICAgICAgICAgIG1ldGhvZCwK
ICAgICAgICAgICAgIENyb3NzVGhyZWFkQ29waWVyPFAxPjo6Y29weShwYXJhbWV0ZXIxKSwgQ3Jv
c3NUaHJlYWRDb3BpZXI8UDI+Ojpjb3B5KHBhcmFtZXRlcjIpLAotICAgICAgICAgICAgQ3Jvc3NU
aHJlYWRDb3BpZXI8UDM+Ojpjb3B5KHBhcmFtZXRlcjMpLCBDcm9zc1RocmVhZENvcGllcjxQND46
OmNvcHkocGFyYW1ldGVyNCkpLmxlYWtQdHIoKSk7CisgICAgICAgICAgICBDcm9zc1RocmVhZENv
cGllcjxQMz46OmNvcHkocGFyYW1ldGVyMyksIENyb3NzVGhyZWFkQ29waWVyPFA0Pjo6Y29weShw
YXJhbWV0ZXI0KSkucmVsZWFzZSgpKTsKIH0KIAogdGVtcGxhdGU8dHlwZW5hbWUgUDEsIHR5cGVu
YW1lIE1QMSwgdHlwZW5hbWUgUDIsIHR5cGVuYW1lIE1QMiwgdHlwZW5hbWUgUDMsIHR5cGVuYW1l
IE1QMywgdHlwZW5hbWUgUDQsIHR5cGVuYW1lIE1QNCwgdHlwZW5hbWUgUDUsIHR5cGVuYW1lIE1Q
NT4KQEAgLTQ0MSw3ICs0NDEsNyBAQCB2b2lkIGNhbGxPbk1haW5UaHJlYWQoCiAgICAgICAgICAg
ICBtZXRob2QsCiAgICAgICAgICAgICBDcm9zc1RocmVhZENvcGllcjxQMT46OmNvcHkocGFyYW1l
dGVyMSksIENyb3NzVGhyZWFkQ29waWVyPFAyPjo6Y29weShwYXJhbWV0ZXIyKSwKICAgICAgICAg
ICAgIENyb3NzVGhyZWFkQ29waWVyPFAzPjo6Y29weShwYXJhbWV0ZXIzKSwgQ3Jvc3NUaHJlYWRD
b3BpZXI8UDQ+Ojpjb3B5KHBhcmFtZXRlcjQpLAotICAgICAgICAgICAgQ3Jvc3NUaHJlYWRDb3Bp
ZXI8UDU+Ojpjb3B5KHBhcmFtZXRlcjUpKS5sZWFrUHRyKCkpOworICAgICAgICAgICAgQ3Jvc3NU
aHJlYWRDb3BpZXI8UDU+Ojpjb3B5KHBhcmFtZXRlcjUpKS5yZWxlYXNlKCkpOwogfQogCiB0ZW1w
bGF0ZTx0eXBlbmFtZSBQMSwgdHlwZW5hbWUgTVAxLCB0eXBlbmFtZSBQMiwgdHlwZW5hbWUgTVAy
LCB0eXBlbmFtZSBQMywgdHlwZW5hbWUgTVAzLCB0eXBlbmFtZSBQNCwgdHlwZW5hbWUgTVA0LCB0
eXBlbmFtZSBQNSwgdHlwZW5hbWUgTVA1LCB0eXBlbmFtZSBQNiwgdHlwZW5hbWUgTVA2PgpAQCAt
NDU0LDcgKzQ1NCw3IEBAIHZvaWQgY2FsbE9uTWFpblRocmVhZCgKICAgICAgICAgICAgIG1ldGhv
ZCwKICAgICAgICAgICAgIENyb3NzVGhyZWFkQ29waWVyPFAxPjo6Y29weShwYXJhbWV0ZXIxKSwg
Q3Jvc3NUaHJlYWRDb3BpZXI8UDI+Ojpjb3B5KHBhcmFtZXRlcjIpLAogICAgICAgICAgICAgQ3Jv
c3NUaHJlYWRDb3BpZXI8UDM+Ojpjb3B5KHBhcmFtZXRlcjMpLCBDcm9zc1RocmVhZENvcGllcjxQ
ND46OmNvcHkocGFyYW1ldGVyNCksCi0gICAgICAgICAgICBDcm9zc1RocmVhZENvcGllcjxQNT46
OmNvcHkocGFyYW1ldGVyNSksIENyb3NzVGhyZWFkQ29waWVyPFA2Pjo6Y29weShwYXJhbWV0ZXI2
KSkubGVha1B0cigpKTsKKyAgICAgICAgICAgIENyb3NzVGhyZWFkQ29waWVyPFA1Pjo6Y29weShw
YXJhbWV0ZXI1KSwgQ3Jvc3NUaHJlYWRDb3BpZXI8UDY+Ojpjb3B5KHBhcmFtZXRlcjYpKS5yZWxl
YXNlKCkpOwogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBQMSwgdHlwZW5hbWUgTVAxLCB0eXBlbmFt
ZSBQMiwgdHlwZW5hbWUgTVAyLCB0eXBlbmFtZSBQMywgdHlwZW5hbWUgTVAzLCB0eXBlbmFtZSBQ
NCwgdHlwZW5hbWUgTVA0LCB0eXBlbmFtZSBQNSwgdHlwZW5hbWUgTVA1LCB0eXBlbmFtZSBQNiwg
dHlwZW5hbWUgTVA2LCB0eXBlbmFtZSBQNywgdHlwZW5hbWUgTVA3PgpAQCAtNDY5LDcgKzQ2OSw3
IEBAIHZvaWQgY2FsbE9uTWFpblRocmVhZCgKICAgICAgICAgICAgIENyb3NzVGhyZWFkQ29waWVy
PFAxPjo6Y29weShwYXJhbWV0ZXIxKSwgQ3Jvc3NUaHJlYWRDb3BpZXI8UDI+Ojpjb3B5KHBhcmFt
ZXRlcjIpLAogICAgICAgICAgICAgQ3Jvc3NUaHJlYWRDb3BpZXI8UDM+Ojpjb3B5KHBhcmFtZXRl
cjMpLCBDcm9zc1RocmVhZENvcGllcjxQND46OmNvcHkocGFyYW1ldGVyNCksCiAgICAgICAgICAg
ICBDcm9zc1RocmVhZENvcGllcjxQNT46OmNvcHkocGFyYW1ldGVyNSksIENyb3NzVGhyZWFkQ29w
aWVyPFA2Pjo6Y29weShwYXJhbWV0ZXI2KSwKLSAgICAgICAgICAgIENyb3NzVGhyZWFkQ29waWVy
PFA3Pjo6Y29weShwYXJhbWV0ZXI3KSkubGVha1B0cigpKTsKKyAgICAgICAgICAgIENyb3NzVGhy
ZWFkQ29waWVyPFA3Pjo6Y29weShwYXJhbWV0ZXI3KSkucmVsZWFzZSgpKTsKIH0KIAogdGVtcGxh
dGU8dHlwZW5hbWUgUDEsIHR5cGVuYW1lIE1QMSwgdHlwZW5hbWUgUDIsIHR5cGVuYW1lIE1QMiwg
dHlwZW5hbWUgUDMsIHR5cGVuYW1lIE1QMywgdHlwZW5hbWUgUDQsIHR5cGVuYW1lIE1QNCwgdHlw
ZW5hbWUgUDUsIHR5cGVuYW1lIE1QNSwgdHlwZW5hbWUgUDYsIHR5cGVuYW1lIE1QNiwgdHlwZW5h
bWUgUDcsIHR5cGVuYW1lIE1QNywgdHlwZW5hbWUgUDgsIHR5cGVuYW1lIE1QOD4KQEAgLTQ3OCwx
MyArNDc4LDEzIEBAIHZvaWQgY2FsbE9uTWFpblRocmVhZCgKICAgICBjb25zdCBQMSYgcGFyYW1l
dGVyMSwgY29uc3QgUDImIHBhcmFtZXRlcjIsIGNvbnN0IFAzJiBwYXJhbWV0ZXIzLCBjb25zdCBQ
NCYgcGFyYW1ldGVyNCwgY29uc3QgUDUmIHBhcmFtZXRlcjUsIGNvbnN0IFA2JiBwYXJhbWV0ZXI2
LCBjb25zdCBQNyYgcGFyYW1ldGVyNywgY29uc3QgUDgmIHBhcmFtZXRlcjgpCiB7CiAgICAgV1RG
OjpjYWxsT25NYWluVGhyZWFkKGV4ZWN1dGVNYWluVGhyZWFkVGFzaywgTWFpblRocmVhZFRhc2s4
PHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFAxPjo6VHlwZSwgTVAxLCB0eXBlbmFtZSBDcm9z
c1RocmVhZENvcGllcjxQMj46OlR5cGUsIE1QMiwgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8
UDM+OjpUeXBlLCBNUDMsCi0gICAgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDQ+OjpUeXBl
LCBNUDQsIHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFA1Pjo6VHlwZSwgTVA1LCB0eXBlbmFt
ZSBDcm9zc1RocmVhZENvcGllcjxQNj46OlR5cGUsIE1QNiwKLSAgICB0eXBlbmFtZSBDcm9zc1Ro
cmVhZENvcGllcjxQNz46OlR5cGUsIE1QNywgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDg+
OjpUeXBlLCBNUDg+OjpjcmVhdGUoCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgbWV0aG9kLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyb3NzVGhyZWFkQ29waWVyPFAxPjo6Y29weShw
YXJhbWV0ZXIxKSwgQ3Jvc3NUaHJlYWRDb3BpZXI8UDI+Ojpjb3B5KHBhcmFtZXRlcjIpLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyb3Nz
VGhyZWFkQ29waWVyPFAzPjo6Y29weShwYXJhbWV0ZXIzKSwgQ3Jvc3NUaHJlYWRDb3BpZXI8UDQ+
Ojpjb3B5KHBhcmFtZXRlcjQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIENyb3NzVGhyZWFkQ29waWVyPFA1Pjo6Y29weShwYXJhbWV0ZXI1
KSwgQ3Jvc3NUaHJlYWRDb3BpZXI8UDY+Ojpjb3B5KHBhcmFtZXRlcjYpLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyb3NzVGhyZWFkQ29w
aWVyPFA3Pjo6Y29weShwYXJhbWV0ZXI3KSwgQ3Jvc3NUaHJlYWRDb3BpZXI8UDg+Ojpjb3B5KHBh
cmFtZXRlcjgpKS5sZWFrUHRyKCkpOworICAgICAgICB0eXBlbmFtZSBDcm9zc1RocmVhZENvcGll
cjxQND46OlR5cGUsIE1QNCwgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRDb3BpZXI8UDU+OjpUeXBlLCBN
UDUsIHR5cGVuYW1lIENyb3NzVGhyZWFkQ29waWVyPFA2Pjo6VHlwZSwgTVA2LAorICAgICAgICB0
eXBlbmFtZSBDcm9zc1RocmVhZENvcGllcjxQNz46OlR5cGUsIE1QNywgdHlwZW5hbWUgQ3Jvc3NU
aHJlYWRDb3BpZXI8UDg+OjpUeXBlLCBNUDg+OjpjcmVhdGUoCisgICAgICAgICAgICBtZXRob2Qs
CisgICAgICAgICAgICBDcm9zc1RocmVhZENvcGllcjxQMT46OmNvcHkocGFyYW1ldGVyMSksIENy
b3NzVGhyZWFkQ29waWVyPFAyPjo6Y29weShwYXJhbWV0ZXIyKSwKKyAgICAgICAgICAgIENyb3Nz
VGhyZWFkQ29waWVyPFAzPjo6Y29weShwYXJhbWV0ZXIzKSwgQ3Jvc3NUaHJlYWRDb3BpZXI8UDQ+
Ojpjb3B5KHBhcmFtZXRlcjQpLAorICAgICAgICAgICAgQ3Jvc3NUaHJlYWRDb3BpZXI8UDU+Ojpj
b3B5KHBhcmFtZXRlcjUpLCBDcm9zc1RocmVhZENvcGllcjxQNj46OmNvcHkocGFyYW1ldGVyNiks
CisgICAgICAgICAgICBDcm9zc1RocmVhZENvcGllcjxQNz46OmNvcHkocGFyYW1ldGVyNyksIENy
b3NzVGhyZWFkQ29waWVyPFA4Pjo6Y29weShwYXJhbWV0ZXI4KSkucmVsZWFzZSgpKTsKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>
<flag name="review"
          id="236994"
          type_id="1"
          status="-"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>