<?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>157106</bug_id>
          
          <creation_ts>2016-04-27 15:42:35 -0700</creation_ts>
          <short_desc>Modernize platform/CrossThreadCopier.h style</short_desc>
          <delta_ts>2016-04-27 15:55:26 -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>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>achristensen</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1187983</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-04-27 15:42:35 -0700</bug_when>
    <thetext>Modernize platform/CrossThreadCopier.h style

I&apos;m about to touch it in an upcoming patch, and I really want to re-indent it, but don&apos;t want that to clutter up another already-large patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1187984</commentid>
    <comment_count>1</comment_count>
      <attachid>277544</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-04-27 15:43:33 -0700</bug_when>
    <thetext>Created attachment 277544
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1187995</commentid>
    <comment_count>2</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-04-27 15:55:26 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/200156</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277544</attachid>
            <date>2016-04-27 15:43:33 -0700</date>
            <delta_ts>2016-04-27 15:49:17 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>18883</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA2ZTIxZTk4Li5hODUxOTdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEg
QEAKKzIwMTYtMDQtMjcgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgIE1vZGVybml6ZSBwbGF0Zm9ybS9Dcm9zc1RocmVhZENvcGllci5oIHN0eWxlLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTA2CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIChO
byBjaGFuZ2UgaW4gYmVoYXZpb3IpLgorCisgICAgICAgICogcGxhdGZvcm0vQ3Jvc3NUaHJlYWRD
b3BpZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OkNyb3NzVGhyZWFkQ29waWVyUGFzc1Rocm91Z2g6
OmNvcHkpOgorICAgICAgICAoV2ViQ29yZTo6QWxsb3dDcm9zc1RocmVhZEFjY2Vzc1dyYXBwZXI6
OkFsbG93Q3Jvc3NUaHJlYWRBY2Nlc3NXcmFwcGVyKToKKyAgICAgICAgKFdlYkNvcmU6OkFsbG93
Q3Jvc3NUaHJlYWRBY2Nlc3NXcmFwcGVyOjp2YWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpBbGxv
d0Nyb3NzVGhyZWFkQWNjZXNzKToKKyAgICAgICAgKFdlYkNvcmU6OkFsbG93QWNjZXNzTGF0ZXJX
cmFwcGVyOjpBbGxvd0FjY2Vzc0xhdGVyV3JhcHBlcik6CisgICAgICAgIChXZWJDb3JlOjpBbGxv
d0FjY2Vzc0xhdGVyV3JhcHBlcjo6dmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6QWxsb3dBY2Nl
c3NMYXRlcik6CisKIDIwMTYtMDQtMjcgIEh1bnNlb3AgSmVvbmcgIDxoczg1Lmplb25nQHNhbXN1
bmcuY29tPgogCiAgICAgICAgIFtFRkxdW0dUS10gVm9sdW1lIHNsaWRlciBvbmx5IGNoYW5nZXMg
dm9sdW1lIHdoZW4gdGh1bWIgaXMgcmVsZWFzZWQsIG5vdCB3aGlsZSBkcmFnZ2luZwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vQ3Jvc3NUaHJlYWRDb3BpZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL0Nyb3NzVGhyZWFkQ29waWVyLmgKaW5kZXggZDI5OWQxZi4uNDBj
ZmEzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vQ3Jvc3NUaHJlYWRDb3Bp
ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Dcm9zc1RocmVhZENvcGllci5oCkBA
IC0yOCw4ICsyOCw3IEBACiAgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLSNpZm5kZWYgQ3Jvc3NUaHJl
YWRDb3BpZXJfaAotI2RlZmluZSBDcm9zc1RocmVhZENvcGllcl9oCisjcHJhZ21hIG9uY2UKIAog
I2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KQEAg
LTM5LDI0NSArMzgsMjQ1IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotICAgIGNsYXNzIElu
dFJlY3Q7Ci0gICAgY2xhc3MgSW50U2l6ZTsKLSAgICBjbGFzcyBVUkw7Ci0gICAgY2xhc3MgUmVz
b3VyY2VFcnJvcjsKLSAgICBjbGFzcyBSZXNvdXJjZVJlcXVlc3Q7Ci0gICAgY2xhc3MgUmVzb3Vy
Y2VSZXNwb25zZTsKLSAgICBjbGFzcyBTZXNzaW9uSUQ7Ci0gICAgY2xhc3MgVGhyZWFkU2FmZURh
dGFCdWZmZXI7Ci0gICAgc3RydWN0IENyb3NzVGhyZWFkUmVzb3VyY2VSZXNwb25zZURhdGE7Ci0g
ICAgc3RydWN0IENyb3NzVGhyZWFkUmVzb3VyY2VSZXF1ZXN0RGF0YTsKLSAgICBzdHJ1Y3QgVGhy
ZWFkYWJsZUxvYWRlck9wdGlvbnM7Ci0KLSAgICBzdHJ1Y3QgQ3Jvc3NUaHJlYWRDb3BpZXJCYXNl
SGVscGVyIHsKLSAgICAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RydWN0IFJlbW92ZVBvaW50
ZXIgewotICAgICAgICAgICAgdHlwZWRlZiBUIFR5cGU7Ci0gICAgICAgIH07Ci0gICAgICAgIHRl
bXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVjdCBSZW1vdmVQb2ludGVyPFQqPiB7Ci0gICAgICAgICAg
ICB0eXBlZGVmIFQgVHlwZTsKLSAgICAgICAgfTsKLQotICAgICAgICB0ZW1wbGF0ZTx0eXBlbmFt
ZSBUPiBzdHJ1Y3QgUmVtb3ZlUG9pbnRlcjxSZWZQdHI8VD4+IHsKLSAgICAgICAgICAgIHR5cGVk
ZWYgVCBUeXBlOwotICAgICAgICB9OwotCi0gICAgICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0
cnVjdCBSZW1vdmVQb2ludGVyPFBhc3NSZWZQdHI8VD4+IHsKLSAgICAgICAgICAgIHR5cGVkZWYg
VCBUeXBlOwotICAgICAgICB9OwotCi0gICAgICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVj
dCBJc0VudW1PckNvbnZlcnRpYmxlVG9JbnRlZ2VyIHsKLSAgICAgICAgICAgIHN0YXRpYyBjb25z
dCBib29sIHZhbHVlID0gc3RkOjppc19pbnRlZ3JhbDxUPjo6dmFsdWUgfHwgc3RkOjppc19lbnVt
PFQ+Ojp2YWx1ZSB8fCBzdGQ6OmlzX2NvbnZlcnRpYmxlPFQsIGxvbmcgZG91YmxlPjo6dmFsdWU7
Ci0gICAgICAgIH07Ci0KLSAgICAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RydWN0IElzVGhy
ZWFkU2FmZVJlZkNvdW50ZWRQb2ludGVyIHsKLSAgICAgICAgICAgIHN0YXRpYyBjb25zdCBib29s
IHZhbHVlID0gc3RkOjppc19jb252ZXJ0aWJsZTx0eXBlbmFtZSBSZW1vdmVQb2ludGVyPFQ+OjpU
eXBlKiwgVGhyZWFkU2FmZVJlZkNvdW50ZWQ8dHlwZW5hbWUgUmVtb3ZlUG9pbnRlcjxUPjo6VHlw
ZT4qPjo6dmFsdWU7Ci0gICAgICAgIH07Ci0gICAgfTsKLQotICAgIHRlbXBsYXRlPHR5cGVuYW1l
IFQ+IHN0cnVjdCBDcm9zc1RocmVhZENvcGllclBhc3NUaHJvdWdoIHsKK2NsYXNzIEludFJlY3Q7
CitjbGFzcyBJbnRTaXplOworY2xhc3MgVVJMOworY2xhc3MgUmVzb3VyY2VFcnJvcjsKK2NsYXNz
IFJlc291cmNlUmVxdWVzdDsKK2NsYXNzIFJlc291cmNlUmVzcG9uc2U7CitjbGFzcyBTZXNzaW9u
SUQ7CitjbGFzcyBUaHJlYWRTYWZlRGF0YUJ1ZmZlcjsKK3N0cnVjdCBDcm9zc1RocmVhZFJlc291
cmNlUmVzcG9uc2VEYXRhOworc3RydWN0IENyb3NzVGhyZWFkUmVzb3VyY2VSZXF1ZXN0RGF0YTsK
K3N0cnVjdCBUaHJlYWRhYmxlTG9hZGVyT3B0aW9uczsKKworc3RydWN0IENyb3NzVGhyZWFkQ29w
aWVyQmFzZUhlbHBlciB7CisgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RydWN0IFJlbW92ZVBv
aW50ZXIgewogICAgICAgICB0eXBlZGVmIFQgVHlwZTsKLSAgICAgICAgc3RhdGljIFR5cGUgY29w
eShjb25zdCBUJiBwYXJhbWV0ZXIpCi0gICAgICAgIHsKLSAgICAgICAgICAgIHJldHVybiBwYXJh
bWV0ZXI7Ci0gICAgICAgIH0KLSAgICB9OwotCi0gICAgdGVtcGxhdGU8Ym9vbCBpc0VudW1PckNv
bnZlcnRpYmxlVG9JbnRlZ2VyLCBib29sIGlzVGhyZWFkU2FmZVJlZkNvdW50ZWQsIHR5cGVuYW1l
IFQ+IHN0cnVjdCBDcm9zc1RocmVhZENvcGllckJhc2U7Ci0KLSAgICAvLyBJbnRlZ2VycyBnZXQg
cGFzc2VkIHRocm91Z2ggd2l0aG91dCBhbnkgY2hhbmdlcy4KLSAgICB0ZW1wbGF0ZTx0eXBlbmFt
ZSBUPiBzdHJ1Y3QgQ3Jvc3NUaHJlYWRDb3BpZXJCYXNlPHRydWUsIGZhbHNlLCBUPiA6IHB1Ymxp
YyBDcm9zc1RocmVhZENvcGllclBhc3NUaHJvdWdoPFQ+IHsKLSAgICB9OwotCi0gICAgLy8gVG8g
YWxsb3cgYSB0eXBlIHRvIGJlIHBhc3NlZCBhY3Jvc3MgdGhyZWFkcyB1c2luZyBpdHMgY29weSBj
b25zdHJ1Y3RvciwgYWRkIGEgZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiB0aGUgdHlwZSBhbmQKLSAg
ICAvLyBhIENvcHlUaHJlYWRDb3BpZXJCYXNlPGZhbHNlLCBmYWxzZSwgVHlwZU5hbWU+IDogcHVi
bGljIENyb3NzVGhyZWFkQ29waWVyUGFzc1Rocm91Z2g8VHlwZU5hbWU+IHsgfTsgdG8gdGhpcyBm
aWxlLgotICAgIHRlbXBsYXRlPD4gc3RydWN0IENyb3NzVGhyZWFkQ29waWVyQmFzZTxmYWxzZSwg
ZmFsc2UsIEludFJlY3Q+IDogcHVibGljIENyb3NzVGhyZWFkQ29waWVyUGFzc1Rocm91Z2g8SW50
UmVjdD4gewotICAgIH07Ci0KLSAgICB0ZW1wbGF0ZTw+IHN0cnVjdCBDcm9zc1RocmVhZENvcGll
ckJhc2U8ZmFsc2UsIGZhbHNlLCBJbnRTaXplPiA6IHB1YmxpYyBDcm9zc1RocmVhZENvcGllclBh
c3NUaHJvdWdoPEludFNpemU+IHsKLSAgICB9OwotCi0gICAgLy8gQ3VzdG9tIGNvcHkgbWV0aG9k
cy4KLSAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdHJ1Y3QgQ3Jvc3NUaHJlYWRDb3BpZXJCYXNl
PGZhbHNlLCB0cnVlLCBUPiB7Ci0gICAgICAgIHR5cGVkZWYgdHlwZW5hbWUgQ3Jvc3NUaHJlYWRD
b3BpZXJCYXNlSGVscGVyOjpSZW1vdmVQb2ludGVyPFQ+OjpUeXBlIFJlZkNvdW50ZWRUeXBlOwot
ICAgICAgICBzdGF0aWNfYXNzZXJ0KHN0ZDo6aXNfY29udmVydGlibGU8UmVmQ291bnRlZFR5cGUq
LCBUaHJlYWRTYWZlUmVmQ291bnRlZDxSZWZDb3VudGVkVHlwZT4qPjo6dmFsdWUsICJUIGlzIG5v
dCBjb252ZXJ0aWJsZSB0byBUaHJlYWRTYWZlUmVmQ291bnRlZCEiKTsKLQotICAgICAgICB0eXBl
ZGVmIFBhc3NSZWZQdHI8UmVmQ291bnRlZFR5cGU+IFR5cGU7Ci0gICAgICAgIFdFQkNPUkVfRVhQ
T1JUIHN0YXRpYyBUeXBlIGNvcHkoY29uc3QgVCYgcmVmUHRyKQotICAgICAgICB7Ci0gICAgICAg
ICAgICByZXR1cm4gcmVmUHRyOwotICAgICAgICB9Ci0gICAgfTsKLQotICAgIHRlbXBsYXRlPD4g
c3RydWN0IENyb3NzVGhyZWFkQ29waWVyQmFzZTxmYWxzZSwgZmFsc2UsIFVSTD4gewotICAgICAg
ICB0eXBlZGVmIFVSTCBUeXBlOwotICAgICAgICBzdGF0aWMgVHlwZSBjb3B5KGNvbnN0IFVSTCYp
OwotICAgIH07Ci0KLSAgICB0ZW1wbGF0ZTw+IHN0cnVjdCBXRUJDT1JFX0VYUE9SVCBDcm9zc1Ro
cmVhZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBTdHJpbmc+IHsKLSAgICAgICAgdHlwZWRlZiBT
dHJpbmcgVHlwZTsKLSAgICAgICAgc3RhdGljIFR5cGUgY29weShjb25zdCBTdHJpbmcmKTsKICAg
ICB9OwotCi0gICAgdGVtcGxhdGU8PiBzdHJ1Y3QgQ3Jvc3NUaHJlYWRDb3BpZXJCYXNlPGZhbHNl
LCBmYWxzZSwgUmVzb3VyY2VFcnJvcj4gewotICAgICAgICB0eXBlZGVmIFJlc291cmNlRXJyb3Ig
VHlwZTsKLSAgICAgICAgc3RhdGljIFR5cGUgY29weShjb25zdCBSZXNvdXJjZUVycm9yJik7Cisg
ICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RydWN0IFJlbW92ZVBvaW50ZXI8VCo+IHsKKyAgICAg
ICAgdHlwZWRlZiBUIFR5cGU7CiAgICAgfTsKIAotICAgIHRlbXBsYXRlPD4gc3RydWN0IENyb3Nz
VGhyZWFkQ29waWVyQmFzZTxmYWxzZSwgZmFsc2UsIFJlc291cmNlUmVxdWVzdD4gewotICAgICAg
ICB0eXBlZGVmIHN0ZDo6dW5pcXVlX3B0cjxDcm9zc1RocmVhZFJlc291cmNlUmVxdWVzdERhdGE+
IFR5cGU7Ci0gICAgICAgIHN0YXRpYyBUeXBlIGNvcHkoY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7
CisgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RydWN0IFJlbW92ZVBvaW50ZXI8UmVmUHRyPFQ+
PiB7CisgICAgICAgIHR5cGVkZWYgVCBUeXBlOwogICAgIH07CiAKLSAgICB0ZW1wbGF0ZTw+IHN0
cnVjdCBDcm9zc1RocmVhZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBSZXNvdXJjZVJlc3BvbnNl
PiB7Ci0gICAgICAgIHR5cGVkZWYgc3RkOjp1bmlxdWVfcHRyPENyb3NzVGhyZWFkUmVzb3VyY2VS
ZXNwb25zZURhdGE+IFR5cGU7Ci0gICAgICAgIHN0YXRpYyBUeXBlIGNvcHkoY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYpOworICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVjdCBSZW1vdmVQb2lu
dGVyPFBhc3NSZWZQdHI8VD4+IHsKKyAgICAgICAgdHlwZWRlZiBUIFR5cGU7CiAgICAgfTsKIAot
ICAgIHRlbXBsYXRlPD4gc3RydWN0IENyb3NzVGhyZWFkQ29waWVyQmFzZTxmYWxzZSwgZmFsc2Us
IFNlc3Npb25JRD4gewotICAgICAgICB0eXBlZGVmIFNlc3Npb25JRCBUeXBlOwotICAgICAgICBz
dGF0aWMgVHlwZSBjb3B5KGNvbnN0IFNlc3Npb25JRCYpOworICAgIHRlbXBsYXRlPHR5cGVuYW1l
IFQ+IHN0cnVjdCBJc0VudW1PckNvbnZlcnRpYmxlVG9JbnRlZ2VyIHsKKyAgICAgICAgc3RhdGlj
IGNvbnN0IGJvb2wgdmFsdWUgPSBzdGQ6OmlzX2ludGVncmFsPFQ+Ojp2YWx1ZSB8fCBzdGQ6Omlz
X2VudW08VD46OnZhbHVlIHx8IHN0ZDo6aXNfY29udmVydGlibGU8VCwgbG9uZyBkb3VibGU+Ojp2
YWx1ZTsKICAgICB9OwogCi0gICAgdGVtcGxhdGU8PiBzdHJ1Y3QgQ3Jvc3NUaHJlYWRDb3BpZXJC
YXNlPGZhbHNlLCBmYWxzZSwgVGhyZWFkU2FmZURhdGFCdWZmZXI+IHsKLSAgICAgICAgdHlwZWRl
ZiBUaHJlYWRTYWZlRGF0YUJ1ZmZlciBUeXBlOwotICAgICAgICBzdGF0aWMgVHlwZSBjb3B5KGNv
bnN0IFRocmVhZFNhZmVEYXRhQnVmZmVyJik7CisgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3Ry
dWN0IElzVGhyZWFkU2FmZVJlZkNvdW50ZWRQb2ludGVyIHsKKyAgICAgICAgc3RhdGljIGNvbnN0
IGJvb2wgdmFsdWUgPSBzdGQ6OmlzX2NvbnZlcnRpYmxlPHR5cGVuYW1lIFJlbW92ZVBvaW50ZXI8
VD46OlR5cGUqLCBUaHJlYWRTYWZlUmVmQ291bnRlZDx0eXBlbmFtZSBSZW1vdmVQb2ludGVyPFQ+
OjpUeXBlPio+Ojp2YWx1ZTsKICAgICB9OworfTsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQotICAgIG5hbWVzcGFjZSBJbmRleGVkREIgewotICAgICAgICBlbnVtIGNsYXNzIFRyYW5z
YWN0aW9uTW9kZTsKLSAgICAgICAgZW51bSBjbGFzcyBDdXJzb3JEaXJlY3Rpb247Ci0gICAgICAg
IGVudW0gY2xhc3MgQ3Vyc29yVHlwZTsKK3RlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVjdCBDcm9z
c1RocmVhZENvcGllclBhc3NUaHJvdWdoIHsKKyAgICB0eXBlZGVmIFQgVHlwZTsKKyAgICBzdGF0
aWMgVHlwZSBjb3B5KGNvbnN0IFQmIHBhcmFtZXRlcikKKyAgICB7CisgICAgICAgIHJldHVybiBw
YXJhbWV0ZXI7CiAgICAgfQotICAgIHRlbXBsYXRlPD4gc3RydWN0IENyb3NzVGhyZWFkQ29waWVy
QmFzZTxmYWxzZSwgZmFsc2UsIEluZGV4ZWREQjo6VHJhbnNhY3Rpb25Nb2RlPiB7Ci0gICAgICAg
IFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBJbmRleGVkREI6OlRyYW5zYWN0aW9uTW9kZSBjb3B5KGNv
bnN0IEluZGV4ZWREQjo6VHJhbnNhY3Rpb25Nb2RlJik7Ci0gICAgfTsKLSAgICB0ZW1wbGF0ZTw+
IHN0cnVjdCBDcm9zc1RocmVhZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBJbmRleGVkREI6OkN1
cnNvckRpcmVjdGlvbj4gewotICAgICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgSW5kZXhlZERC
OjpDdXJzb3JEaXJlY3Rpb24gY29weShjb25zdCBJbmRleGVkREI6OkN1cnNvckRpcmVjdGlvbiYp
OwotICAgIH07Ci0gICAgdGVtcGxhdGU8PiBzdHJ1Y3QgQ3Jvc3NUaHJlYWRDb3BpZXJCYXNlPGZh
bHNlLCBmYWxzZSwgSW5kZXhlZERCOjpDdXJzb3JUeXBlPiB7Ci0gICAgICAgIFdFQkNPUkVfRVhQ
T1JUIHN0YXRpYyBJbmRleGVkREI6OkN1cnNvclR5cGUgY29weShjb25zdCBJbmRleGVkREI6OkN1
cnNvclR5cGUmKTsKLSAgICB9OworfTsKIAotICAgIGNsYXNzIElEQkdldFJlc3VsdDsKLSAgICB0
ZW1wbGF0ZTw+IHN0cnVjdCBXRUJDT1JFX0VYUE9SVCBDcm9zc1RocmVhZENvcGllckJhc2U8ZmFs
c2UsIGZhbHNlLCBJREJHZXRSZXN1bHQ+IHsKLSAgICAgICAgdHlwZWRlZiBJREJHZXRSZXN1bHQg
VHlwZTsKLSAgICAgICAgc3RhdGljIFR5cGUgY29weShjb25zdCBJREJHZXRSZXN1bHQmKTsKLSAg
ICB9OwordGVtcGxhdGU8Ym9vbCBpc0VudW1PckNvbnZlcnRpYmxlVG9JbnRlZ2VyLCBib29sIGlz
VGhyZWFkU2FmZVJlZkNvdW50ZWQsIHR5cGVuYW1lIFQ+IHN0cnVjdCBDcm9zc1RocmVhZENvcGll
ckJhc2U7CiAKLSAgICBjbGFzcyBJREJLZXlEYXRhOwotICAgIHRlbXBsYXRlPD4gc3RydWN0IFdF
QkNPUkVfRVhQT1JUIENyb3NzVGhyZWFkQ29waWVyQmFzZTxmYWxzZSwgZmFsc2UsIElEQktleURh
dGE+IHsKLSAgICAgICAgdHlwZWRlZiBJREJLZXlEYXRhIFR5cGU7Ci0gICAgICAgIHN0YXRpYyBU
eXBlIGNvcHkoY29uc3QgSURCS2V5RGF0YSYpOwotICAgIH07CisvLyBJbnRlZ2VycyBnZXQgcGFz
c2VkIHRocm91Z2ggd2l0aG91dCBhbnkgY2hhbmdlcy4KK3RlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0
cnVjdCBDcm9zc1RocmVhZENvcGllckJhc2U8dHJ1ZSwgZmFsc2UsIFQ+IDogcHVibGljIENyb3Nz
VGhyZWFkQ29waWVyUGFzc1Rocm91Z2g8VD4geworfTsKIAotICAgIHN0cnVjdCBJREJLZXlSYW5n
ZURhdGE7Ci0gICAgdGVtcGxhdGU8PiBzdHJ1Y3QgV0VCQ09SRV9FWFBPUlQgQ3Jvc3NUaHJlYWRD
b3BpZXJCYXNlPGZhbHNlLCBmYWxzZSwgSURCS2V5UmFuZ2VEYXRhPiB7Ci0gICAgICAgIHR5cGVk
ZWYgSURCS2V5UmFuZ2VEYXRhIFR5cGU7Ci0gICAgICAgIHN0YXRpYyBUeXBlIGNvcHkoY29uc3Qg
SURCS2V5UmFuZ2VEYXRhJik7Ci0gICAgfTsKKy8vIFRvIGFsbG93IGEgdHlwZSB0byBiZSBwYXNz
ZWQgYWNyb3NzIHRocmVhZHMgdXNpbmcgaXRzIGNvcHkgY29uc3RydWN0b3IsIGFkZCBhIGZvcndh
cmQgZGVjbGFyYXRpb24gb2YgdGhlIHR5cGUgYW5kCisvLyBhIENvcHlUaHJlYWRDb3BpZXJCYXNl
PGZhbHNlLCBmYWxzZSwgVHlwZU5hbWU+IDogcHVibGljIENyb3NzVGhyZWFkQ29waWVyUGFzc1Ro
cm91Z2g8VHlwZU5hbWU+IHsgfTsgdG8gdGhpcyBmaWxlLgordGVtcGxhdGU8PiBzdHJ1Y3QgQ3Jv
c3NUaHJlYWRDb3BpZXJCYXNlPGZhbHNlLCBmYWxzZSwgSW50UmVjdD4gOiBwdWJsaWMgQ3Jvc3NU
aHJlYWRDb3BpZXJQYXNzVGhyb3VnaDxJbnRSZWN0PiB7Cit9OwogCi0gICAgY2xhc3MgSURCRGF0
YWJhc2VJbmZvOwotICAgIHRlbXBsYXRlPD4gc3RydWN0IFdFQkNPUkVfRVhQT1JUIENyb3NzVGhy
ZWFkQ29waWVyQmFzZTxmYWxzZSwgZmFsc2UsIElEQkRhdGFiYXNlSW5mbz4gewotICAgICAgICB0
eXBlZGVmIElEQkRhdGFiYXNlSW5mbyBUeXBlOwotICAgICAgICBzdGF0aWMgVHlwZSBjb3B5KGNv
bnN0IElEQkRhdGFiYXNlSW5mbyYpOwotICAgIH07Cit0ZW1wbGF0ZTw+IHN0cnVjdCBDcm9zc1Ro
cmVhZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBJbnRTaXplPiA6IHB1YmxpYyBDcm9zc1RocmVh
ZENvcGllclBhc3NUaHJvdWdoPEludFNpemU+IHsKK307CiAKLSAgICBjbGFzcyBJREJEYXRhYmFz
ZUlkZW50aWZpZXI7Ci0gICAgdGVtcGxhdGU8PiBzdHJ1Y3QgV0VCQ09SRV9FWFBPUlQgQ3Jvc3NU
aHJlYWRDb3BpZXJCYXNlPGZhbHNlLCBmYWxzZSwgSURCRGF0YWJhc2VJZGVudGlmaWVyPiB7Ci0g
ICAgICAgIHR5cGVkZWYgSURCRGF0YWJhc2VJZGVudGlmaWVyIFR5cGU7Ci0gICAgICAgIHN0YXRp
YyBUeXBlIGNvcHkoY29uc3QgSURCRGF0YWJhc2VJZGVudGlmaWVyJik7Ci0gICAgfTsKKy8vIEN1
c3RvbSBjb3B5IG1ldGhvZHMuCit0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdHJ1Y3QgQ3Jvc3NUaHJl
YWRDb3BpZXJCYXNlPGZhbHNlLCB0cnVlLCBUPiB7CisgICAgdHlwZWRlZiB0eXBlbmFtZSBDcm9z
c1RocmVhZENvcGllckJhc2VIZWxwZXI6OlJlbW92ZVBvaW50ZXI8VD46OlR5cGUgUmVmQ291bnRl
ZFR5cGU7CisgICAgc3RhdGljX2Fzc2VydChzdGQ6OmlzX2NvbnZlcnRpYmxlPFJlZkNvdW50ZWRU
eXBlKiwgVGhyZWFkU2FmZVJlZkNvdW50ZWQ8UmVmQ291bnRlZFR5cGU+Kj46OnZhbHVlLCAiVCBp
cyBub3QgY29udmVydGlibGUgdG8gVGhyZWFkU2FmZVJlZkNvdW50ZWQhIik7CiAKLSAgICBjbGFz
cyBJREJFcnJvcjsKLSAgICB0ZW1wbGF0ZTw+IHN0cnVjdCBXRUJDT1JFX0VYUE9SVCBDcm9zc1Ro
cmVhZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBJREJFcnJvcj4gewotICAgICAgICB0eXBlZGVm
IElEQkVycm9yIFR5cGU7Ci0gICAgICAgIHN0YXRpYyBUeXBlIGNvcHkoY29uc3QgSURCRXJyb3Im
KTsKLSAgICB9OwotCi0gICAgY2xhc3MgSURCUmVzb3VyY2VJZGVudGlmaWVyOwotICAgIHRlbXBs
YXRlPD4gc3RydWN0IFdFQkNPUkVfRVhQT1JUIENyb3NzVGhyZWFkQ29waWVyQmFzZTxmYWxzZSwg
ZmFsc2UsIElEQlJlc291cmNlSWRlbnRpZmllcj4gewotICAgICAgICB0eXBlZGVmIElEQlJlc291
cmNlSWRlbnRpZmllciBUeXBlOwotICAgICAgICBzdGF0aWMgVHlwZSBjb3B5KGNvbnN0IElEQlJl
c291cmNlSWRlbnRpZmllciYpOwotICAgIH07Ci0KLSAgICBjbGFzcyBJREJUcmFuc2FjdGlvbklu
Zm87Ci0gICAgdGVtcGxhdGU8PiBzdHJ1Y3QgV0VCQ09SRV9FWFBPUlQgQ3Jvc3NUaHJlYWRDb3Bp
ZXJCYXNlPGZhbHNlLCBmYWxzZSwgSURCVHJhbnNhY3Rpb25JbmZvPiB7Ci0gICAgICAgIHR5cGVk
ZWYgSURCVHJhbnNhY3Rpb25JbmZvIFR5cGU7Ci0gICAgICAgIHN0YXRpYyBUeXBlIGNvcHkoY29u
c3QgSURCVHJhbnNhY3Rpb25JbmZvJik7Ci0gICAgfTsKLQotICAgIGNsYXNzIElEQk9iamVjdFN0
b3JlSW5mbzsKLSAgICB0ZW1wbGF0ZTw+IHN0cnVjdCBXRUJDT1JFX0VYUE9SVCBDcm9zc1RocmVh
ZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBJREJPYmplY3RTdG9yZUluZm8+IHsKLSAgICAgICAg
dHlwZWRlZiBJREJPYmplY3RTdG9yZUluZm8gVHlwZTsKLSAgICAgICAgc3RhdGljIFR5cGUgY29w
eShjb25zdCBJREJPYmplY3RTdG9yZUluZm8mKTsKLSAgICB9OwotCi0gICAgY2xhc3MgSURCSW5k
ZXhJbmZvOwotICAgIHRlbXBsYXRlPD4gc3RydWN0IFdFQkNPUkVfRVhQT1JUIENyb3NzVGhyZWFk
Q29waWVyQmFzZTxmYWxzZSwgZmFsc2UsIElEQkluZGV4SW5mbz4gewotICAgICAgICB0eXBlZGVm
IElEQkluZGV4SW5mbyBUeXBlOwotICAgICAgICBzdGF0aWMgVHlwZSBjb3B5KGNvbnN0IElEQklu
ZGV4SW5mbyYpOwotICAgIH07Ci0KLSAgICBjbGFzcyBJREJDdXJzb3JJbmZvOwotICAgIHRlbXBs
YXRlPD4gc3RydWN0IFdFQkNPUkVfRVhQT1JUIENyb3NzVGhyZWFkQ29waWVyQmFzZTxmYWxzZSwg
ZmFsc2UsIElEQkN1cnNvckluZm8+IHsKLSAgICAgICAgdHlwZWRlZiBJREJDdXJzb3JJbmZvIFR5
cGU7Ci0gICAgICAgIHN0YXRpYyBUeXBlIGNvcHkoY29uc3QgSURCQ3Vyc29ySW5mbyYpOwotICAg
IH07Ci0KLSAgICBjbGFzcyBJREJWYWx1ZTsKLSAgICB0ZW1wbGF0ZTw+IHN0cnVjdCBXRUJDT1JF
X0VYUE9SVCBDcm9zc1RocmVhZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBJREJWYWx1ZT4gewot
ICAgICAgICB0eXBlZGVmIElEQlZhbHVlIFR5cGU7Ci0gICAgICAgIHN0YXRpYyBUeXBlIGNvcHko
Y29uc3QgSURCVmFsdWUmKTsKLSAgICB9OwotCi0jZW5kaWYKLQotICAgIHRlbXBsYXRlPHR5cGVu
YW1lIFQ+Ci0gICAgc3RydWN0IENyb3NzVGhyZWFkQ29waWVyIDogcHVibGljIENyb3NzVGhyZWFk
Q29waWVyQmFzZTxDcm9zc1RocmVhZENvcGllckJhc2VIZWxwZXI6OklzRW51bU9yQ29udmVydGli
bGVUb0ludGVnZXI8VD46OnZhbHVlLCBDcm9zc1RocmVhZENvcGllckJhc2VIZWxwZXI6OklzVGhy
ZWFkU2FmZVJlZkNvdW50ZWRQb2ludGVyPFQ+Ojp2YWx1ZSwgVD4gewotICAgIH07Ci0KLSAgICB0
ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdHJ1Y3QgQWxsb3dDcm9zc1RocmVhZEFjY2Vzc1dyYXBwZXIg
ewotICAgIHB1YmxpYzoKLSAgICAgICAgZXhwbGljaXQgQWxsb3dDcm9zc1RocmVhZEFjY2Vzc1dy
YXBwZXIoVCogdmFsdWUpIDogbV92YWx1ZSh2YWx1ZSkgeyB9Ci0gICAgICAgIFQqIHZhbHVlKCkg
Y29uc3QgeyByZXR1cm4gbV92YWx1ZTsgfQotICAgIHByaXZhdGU6Ci0gICAgICAgIFQqIG1fdmFs
dWU7Ci0gICAgfTsKLQotICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVjdCBDcm9zc1RocmVh
ZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBBbGxvd0Nyb3NzVGhyZWFkQWNjZXNzV3JhcHBlcjxU
Pj4gewotICAgICAgICB0eXBlZGVmIFQqIFR5cGU7Ci0gICAgICAgIHN0YXRpYyBUeXBlIGNvcHko
Y29uc3QgQWxsb3dDcm9zc1RocmVhZEFjY2Vzc1dyYXBwZXI8VD4mIHdyYXBwZXIpIHsgcmV0dXJu
IHdyYXBwZXIudmFsdWUoKTsgfQotICAgIH07Ci0KLSAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBB
bGxvd0Nyb3NzVGhyZWFkQWNjZXNzV3JhcHBlcjxUPiBBbGxvd0Nyb3NzVGhyZWFkQWNjZXNzKFQq
IHZhbHVlKSAKKyAgICB0eXBlZGVmIFBhc3NSZWZQdHI8UmVmQ291bnRlZFR5cGU+IFR5cGU7Cisg
ICAgV0VCQ09SRV9FWFBPUlQgc3RhdGljIFR5cGUgY29weShjb25zdCBUJiByZWZQdHIpCiAgICAg
ewotICAgICAgICByZXR1cm4gQWxsb3dDcm9zc1RocmVhZEFjY2Vzc1dyYXBwZXI8VD4odmFsdWUp
OworICAgICAgICByZXR1cm4gcmVmUHRyOwogICAgIH0KK307CisKK3RlbXBsYXRlPD4gc3RydWN0
IENyb3NzVGhyZWFkQ29waWVyQmFzZTxmYWxzZSwgZmFsc2UsIFVSTD4geworICAgIHR5cGVkZWYg
VVJMIFR5cGU7CisgICAgc3RhdGljIFR5cGUgY29weShjb25zdCBVUkwmKTsKK307CisKK3RlbXBs
YXRlPD4gc3RydWN0IFdFQkNPUkVfRVhQT1JUIENyb3NzVGhyZWFkQ29waWVyQmFzZTxmYWxzZSwg
ZmFsc2UsIFN0cmluZz4geworICAgIHR5cGVkZWYgU3RyaW5nIFR5cGU7CisgICAgc3RhdGljIFR5
cGUgY29weShjb25zdCBTdHJpbmcmKTsKK307CisKK3RlbXBsYXRlPD4gc3RydWN0IENyb3NzVGhy
ZWFkQ29waWVyQmFzZTxmYWxzZSwgZmFsc2UsIFJlc291cmNlRXJyb3I+IHsKKyAgICB0eXBlZGVm
IFJlc291cmNlRXJyb3IgVHlwZTsKKyAgICBzdGF0aWMgVHlwZSBjb3B5KGNvbnN0IFJlc291cmNl
RXJyb3ImKTsKK307CisKK3RlbXBsYXRlPD4gc3RydWN0IENyb3NzVGhyZWFkQ29waWVyQmFzZTxm
YWxzZSwgZmFsc2UsIFJlc291cmNlUmVxdWVzdD4geworICAgIHR5cGVkZWYgc3RkOjp1bmlxdWVf
cHRyPENyb3NzVGhyZWFkUmVzb3VyY2VSZXF1ZXN0RGF0YT4gVHlwZTsKKyAgICBzdGF0aWMgVHlw
ZSBjb3B5KGNvbnN0IFJlc291cmNlUmVxdWVzdCYpOworfTsKKwordGVtcGxhdGU8PiBzdHJ1Y3Qg
Q3Jvc3NUaHJlYWRDb3BpZXJCYXNlPGZhbHNlLCBmYWxzZSwgUmVzb3VyY2VSZXNwb25zZT4gewor
ICAgIHR5cGVkZWYgc3RkOjp1bmlxdWVfcHRyPENyb3NzVGhyZWFkUmVzb3VyY2VSZXNwb25zZURh
dGE+IFR5cGU7CisgICAgc3RhdGljIFR5cGUgY29weShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7
Cit9OworCit0ZW1wbGF0ZTw+IHN0cnVjdCBDcm9zc1RocmVhZENvcGllckJhc2U8ZmFsc2UsIGZh
bHNlLCBTZXNzaW9uSUQ+IHsKKyAgICB0eXBlZGVmIFNlc3Npb25JRCBUeXBlOworICAgIHN0YXRp
YyBUeXBlIGNvcHkoY29uc3QgU2Vzc2lvbklEJik7Cit9OworCit0ZW1wbGF0ZTw+IHN0cnVjdCBD
cm9zc1RocmVhZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBUaHJlYWRTYWZlRGF0YUJ1ZmZlcj4g
eworICAgIHR5cGVkZWYgVGhyZWFkU2FmZURhdGFCdWZmZXIgVHlwZTsKKyAgICBzdGF0aWMgVHlw
ZSBjb3B5KGNvbnN0IFRocmVhZFNhZmVEYXRhQnVmZmVyJik7Cit9OwogCi0gICAgLy8gRklYTUU6
IE1vdmUgdG8gYSBkaWZmZXJlbnQgaGVhZGVyIGZpbGUuIEFsbG93QWNjZXNzTGF0ZXIgaXMgZm9y
IGNyb3NzLXRocmVhZCBhY2Nlc3MKLSAgICAvLyB0aGF0IGlzIG5vdCBjcm9zcy10aHJlYWQgKHRh
c2tzIHBvc3RlZCB0byBhIHF1ZXVlIGd1YXJhbnRlZWQgdG8gcnVuIG9uIHRoZSBzYW1lIHRocmVh
ZCkuCi0gICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RydWN0IEFsbG93QWNjZXNzTGF0ZXJXcmFw
cGVyIHsKLSAgICBwdWJsaWM6Ci0gICAgICAgIGV4cGxpY2l0IEFsbG93QWNjZXNzTGF0ZXJXcmFw
cGVyKFQqIHZhbHVlKSA6IG1fdmFsdWUodmFsdWUpIHsgfQotICAgICAgICBUKiB2YWx1ZSgpIGNv
bnN0IHsgcmV0dXJuIG1fdmFsdWU7IH0KLSAgICBwcml2YXRlOgotICAgICAgICBUKiBtX3ZhbHVl
OwotICAgIH07CisjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCituYW1lc3BhY2UgSW5kZXhl
ZERCIHsKK2VudW0gY2xhc3MgVHJhbnNhY3Rpb25Nb2RlOworZW51bSBjbGFzcyBDdXJzb3JEaXJl
Y3Rpb247CitlbnVtIGNsYXNzIEN1cnNvclR5cGU7Cit9Cit0ZW1wbGF0ZTw+IHN0cnVjdCBDcm9z
c1RocmVhZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBJbmRleGVkREI6OlRyYW5zYWN0aW9uTW9k
ZT4geworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBJbmRleGVkREI6OlRyYW5zYWN0aW9uTW9k
ZSBjb3B5KGNvbnN0IEluZGV4ZWREQjo6VHJhbnNhY3Rpb25Nb2RlJik7Cit9OwordGVtcGxhdGU8
PiBzdHJ1Y3QgQ3Jvc3NUaHJlYWRDb3BpZXJCYXNlPGZhbHNlLCBmYWxzZSwgSW5kZXhlZERCOjpD
dXJzb3JEaXJlY3Rpb24+IHsKKyAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgSW5kZXhlZERCOjpD
dXJzb3JEaXJlY3Rpb24gY29weShjb25zdCBJbmRleGVkREI6OkN1cnNvckRpcmVjdGlvbiYpOwor
fTsKK3RlbXBsYXRlPD4gc3RydWN0IENyb3NzVGhyZWFkQ29waWVyQmFzZTxmYWxzZSwgZmFsc2Us
IEluZGV4ZWREQjo6Q3Vyc29yVHlwZT4geworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBJbmRl
eGVkREI6OkN1cnNvclR5cGUgY29weShjb25zdCBJbmRleGVkREI6OkN1cnNvclR5cGUmKTsKK307
CisKK2NsYXNzIElEQkdldFJlc3VsdDsKK3RlbXBsYXRlPD4gc3RydWN0IFdFQkNPUkVfRVhQT1JU
IENyb3NzVGhyZWFkQ29waWVyQmFzZTxmYWxzZSwgZmFsc2UsIElEQkdldFJlc3VsdD4geworICAg
IHR5cGVkZWYgSURCR2V0UmVzdWx0IFR5cGU7CisgICAgc3RhdGljIFR5cGUgY29weShjb25zdCBJ
REJHZXRSZXN1bHQmKTsKK307CisKK2NsYXNzIElEQktleURhdGE7Cit0ZW1wbGF0ZTw+IHN0cnVj
dCBXRUJDT1JFX0VYUE9SVCBDcm9zc1RocmVhZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBJREJL
ZXlEYXRhPiB7CisgICAgdHlwZWRlZiBJREJLZXlEYXRhIFR5cGU7CisgICAgc3RhdGljIFR5cGUg
Y29weShjb25zdCBJREJLZXlEYXRhJik7Cit9OworCitzdHJ1Y3QgSURCS2V5UmFuZ2VEYXRhOwor
dGVtcGxhdGU8PiBzdHJ1Y3QgV0VCQ09SRV9FWFBPUlQgQ3Jvc3NUaHJlYWRDb3BpZXJCYXNlPGZh
bHNlLCBmYWxzZSwgSURCS2V5UmFuZ2VEYXRhPiB7CisgICAgdHlwZWRlZiBJREJLZXlSYW5nZURh
dGEgVHlwZTsKKyAgICBzdGF0aWMgVHlwZSBjb3B5KGNvbnN0IElEQktleVJhbmdlRGF0YSYpOwor
fTsKKworY2xhc3MgSURCRGF0YWJhc2VJbmZvOwordGVtcGxhdGU8PiBzdHJ1Y3QgV0VCQ09SRV9F
WFBPUlQgQ3Jvc3NUaHJlYWRDb3BpZXJCYXNlPGZhbHNlLCBmYWxzZSwgSURCRGF0YWJhc2VJbmZv
PiB7CisgICAgdHlwZWRlZiBJREJEYXRhYmFzZUluZm8gVHlwZTsKKyAgICBzdGF0aWMgVHlwZSBj
b3B5KGNvbnN0IElEQkRhdGFiYXNlSW5mbyYpOworfTsKKworY2xhc3MgSURCRGF0YWJhc2VJZGVu
dGlmaWVyOwordGVtcGxhdGU8PiBzdHJ1Y3QgV0VCQ09SRV9FWFBPUlQgQ3Jvc3NUaHJlYWRDb3Bp
ZXJCYXNlPGZhbHNlLCBmYWxzZSwgSURCRGF0YWJhc2VJZGVudGlmaWVyPiB7CisgICAgdHlwZWRl
ZiBJREJEYXRhYmFzZUlkZW50aWZpZXIgVHlwZTsKKyAgICBzdGF0aWMgVHlwZSBjb3B5KGNvbnN0
IElEQkRhdGFiYXNlSWRlbnRpZmllciYpOworfTsKKworY2xhc3MgSURCRXJyb3I7Cit0ZW1wbGF0
ZTw+IHN0cnVjdCBXRUJDT1JFX0VYUE9SVCBDcm9zc1RocmVhZENvcGllckJhc2U8ZmFsc2UsIGZh
bHNlLCBJREJFcnJvcj4geworICAgIHR5cGVkZWYgSURCRXJyb3IgVHlwZTsKKyAgICBzdGF0aWMg
VHlwZSBjb3B5KGNvbnN0IElEQkVycm9yJik7Cit9OworCitjbGFzcyBJREJSZXNvdXJjZUlkZW50
aWZpZXI7Cit0ZW1wbGF0ZTw+IHN0cnVjdCBXRUJDT1JFX0VYUE9SVCBDcm9zc1RocmVhZENvcGll
ckJhc2U8ZmFsc2UsIGZhbHNlLCBJREJSZXNvdXJjZUlkZW50aWZpZXI+IHsKKyAgICB0eXBlZGVm
IElEQlJlc291cmNlSWRlbnRpZmllciBUeXBlOworICAgIHN0YXRpYyBUeXBlIGNvcHkoY29uc3Qg
SURCUmVzb3VyY2VJZGVudGlmaWVyJik7Cit9OworCitjbGFzcyBJREJUcmFuc2FjdGlvbkluZm87
Cit0ZW1wbGF0ZTw+IHN0cnVjdCBXRUJDT1JFX0VYUE9SVCBDcm9zc1RocmVhZENvcGllckJhc2U8
ZmFsc2UsIGZhbHNlLCBJREJUcmFuc2FjdGlvbkluZm8+IHsKKyAgICB0eXBlZGVmIElEQlRyYW5z
YWN0aW9uSW5mbyBUeXBlOworICAgIHN0YXRpYyBUeXBlIGNvcHkoY29uc3QgSURCVHJhbnNhY3Rp
b25JbmZvJik7Cit9OworCitjbGFzcyBJREJPYmplY3RTdG9yZUluZm87Cit0ZW1wbGF0ZTw+IHN0
cnVjdCBXRUJDT1JFX0VYUE9SVCBDcm9zc1RocmVhZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBJ
REJPYmplY3RTdG9yZUluZm8+IHsKKyAgICB0eXBlZGVmIElEQk9iamVjdFN0b3JlSW5mbyBUeXBl
OworICAgIHN0YXRpYyBUeXBlIGNvcHkoY29uc3QgSURCT2JqZWN0U3RvcmVJbmZvJik7Cit9Owor
CitjbGFzcyBJREJJbmRleEluZm87Cit0ZW1wbGF0ZTw+IHN0cnVjdCBXRUJDT1JFX0VYUE9SVCBD
cm9zc1RocmVhZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBJREJJbmRleEluZm8+IHsKKyAgICB0
eXBlZGVmIElEQkluZGV4SW5mbyBUeXBlOworICAgIHN0YXRpYyBUeXBlIGNvcHkoY29uc3QgSURC
SW5kZXhJbmZvJik7Cit9OworCitjbGFzcyBJREJDdXJzb3JJbmZvOwordGVtcGxhdGU8PiBzdHJ1
Y3QgV0VCQ09SRV9FWFBPUlQgQ3Jvc3NUaHJlYWRDb3BpZXJCYXNlPGZhbHNlLCBmYWxzZSwgSURC
Q3Vyc29ySW5mbz4geworICAgIHR5cGVkZWYgSURCQ3Vyc29ySW5mbyBUeXBlOworICAgIHN0YXRp
YyBUeXBlIGNvcHkoY29uc3QgSURCQ3Vyc29ySW5mbyYpOworfTsKKworY2xhc3MgSURCVmFsdWU7
Cit0ZW1wbGF0ZTw+IHN0cnVjdCBXRUJDT1JFX0VYUE9SVCBDcm9zc1RocmVhZENvcGllckJhc2U8
ZmFsc2UsIGZhbHNlLCBJREJWYWx1ZT4geworICAgIHR5cGVkZWYgSURCVmFsdWUgVHlwZTsKKyAg
ICBzdGF0aWMgVHlwZSBjb3B5KGNvbnN0IElEQlZhbHVlJik7Cit9OwogCi0gICAgdGVtcGxhdGU8
dHlwZW5hbWUgVD4gc3RydWN0IENyb3NzVGhyZWFkQ29waWVyQmFzZTxmYWxzZSwgZmFsc2UsIEFs
bG93QWNjZXNzTGF0ZXJXcmFwcGVyPFQ+PiB7Ci0gICAgICAgIHR5cGVkZWYgVCogVHlwZTsKLSAg
ICAgICAgc3RhdGljIFR5cGUgY29weShjb25zdCBBbGxvd0FjY2Vzc0xhdGVyV3JhcHBlcjxUPiYg
d3JhcHBlcikgeyByZXR1cm4gd3JhcHBlci52YWx1ZSgpOyB9Ci0gICAgfTsKKyNlbmRpZgogCi0g
ICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gQWxsb3dBY2Nlc3NMYXRlcldyYXBwZXI8VD4gQWxsb3dB
Y2Nlc3NMYXRlcihUKiB2YWx1ZSkKLSAgICB7Ci0gICAgICAgIHJldHVybiBBbGxvd0FjY2Vzc0xh
dGVyV3JhcHBlcjxUPih2YWx1ZSk7Ci0gICAgfQordGVtcGxhdGU8dHlwZW5hbWUgVD4KK3N0cnVj
dCBDcm9zc1RocmVhZENvcGllciA6IHB1YmxpYyBDcm9zc1RocmVhZENvcGllckJhc2U8Q3Jvc3NU
aHJlYWRDb3BpZXJCYXNlSGVscGVyOjpJc0VudW1PckNvbnZlcnRpYmxlVG9JbnRlZ2VyPFQ+Ojp2
YWx1ZSwgQ3Jvc3NUaHJlYWRDb3BpZXJCYXNlSGVscGVyOjpJc1RocmVhZFNhZmVSZWZDb3VudGVk
UG9pbnRlcjxUPjo6dmFsdWUsIFQ+IHsKK307CisKK3RlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVj
dCBBbGxvd0Nyb3NzVGhyZWFkQWNjZXNzV3JhcHBlciB7CitwdWJsaWM6CisgICAgZXhwbGljaXQg
QWxsb3dDcm9zc1RocmVhZEFjY2Vzc1dyYXBwZXIoVCogdmFsdWUpCisgICAgICAgIDogbV92YWx1
ZSh2YWx1ZSkgeyB9CisgICAgVCogdmFsdWUoKSBjb25zdCB7IHJldHVybiBtX3ZhbHVlOyB9Citw
cml2YXRlOgorICAgIFQqIG1fdmFsdWU7Cit9OworCit0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBzdHJ1
Y3QgQ3Jvc3NUaHJlYWRDb3BpZXJCYXNlPGZhbHNlLCBmYWxzZSwgQWxsb3dDcm9zc1RocmVhZEFj
Y2Vzc1dyYXBwZXI8VD4+IHsKKyAgICB0eXBlZGVmIFQqIFR5cGU7CisgICAgc3RhdGljIFR5cGUg
Y29weShjb25zdCBBbGxvd0Nyb3NzVGhyZWFkQWNjZXNzV3JhcHBlcjxUPiYgd3JhcHBlcikgeyBy
ZXR1cm4gd3JhcHBlci52YWx1ZSgpOyB9Cit9OworCit0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBBbGxv
d0Nyb3NzVGhyZWFkQWNjZXNzV3JhcHBlcjxUPiBBbGxvd0Nyb3NzVGhyZWFkQWNjZXNzKFQqIHZh
bHVlKSAKK3sKKyAgICByZXR1cm4gQWxsb3dDcm9zc1RocmVhZEFjY2Vzc1dyYXBwZXI8VD4odmFs
dWUpOworfQorCisvLyBGSVhNRTogTW92ZSB0byBhIGRpZmZlcmVudCBoZWFkZXIgZmlsZS4gQWxs
b3dBY2Nlc3NMYXRlciBpcyBmb3IgY3Jvc3MtdGhyZWFkIGFjY2VzcworLy8gdGhhdCBpcyBub3Qg
Y3Jvc3MtdGhyZWFkICh0YXNrcyBwb3N0ZWQgdG8gYSBxdWV1ZSBndWFyYW50ZWVkIHRvIHJ1biBv
biB0aGUgc2FtZSB0aHJlYWQpLgordGVtcGxhdGU8dHlwZW5hbWUgVD4gc3RydWN0IEFsbG93QWNj
ZXNzTGF0ZXJXcmFwcGVyIHsKK3B1YmxpYzoKKyAgICBleHBsaWNpdCBBbGxvd0FjY2Vzc0xhdGVy
V3JhcHBlcihUKiB2YWx1ZSkKKyAgICAgICAgOiBtX3ZhbHVlKHZhbHVlKSB7IH0KKyAgICBUKiB2
YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdmFsdWU7IH0KK3ByaXZhdGU6CisgICAgVCogbV92YWx1
ZTsKK307CisKK3RlbXBsYXRlPHR5cGVuYW1lIFQ+IHN0cnVjdCBDcm9zc1RocmVhZENvcGllckJh
c2U8ZmFsc2UsIGZhbHNlLCBBbGxvd0FjY2Vzc0xhdGVyV3JhcHBlcjxUPj4geworICAgIHR5cGVk
ZWYgVCogVHlwZTsKKyAgICBzdGF0aWMgVHlwZSBjb3B5KGNvbnN0IEFsbG93QWNjZXNzTGF0ZXJX
cmFwcGVyPFQ+JiB3cmFwcGVyKSB7IHJldHVybiB3cmFwcGVyLnZhbHVlKCk7IH0KK307CisKK3Rl
bXBsYXRlPHR5cGVuYW1lIFQ+IEFsbG93QWNjZXNzTGF0ZXJXcmFwcGVyPFQ+IEFsbG93QWNjZXNz
TGF0ZXIoVCogdmFsdWUpCit7CisgICAgcmV0dXJuIEFsbG93QWNjZXNzTGF0ZXJXcmFwcGVyPFQ+
KHZhbHVlKTsKK30KIAogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBDcm9z
c1RocmVhZENvcGllcl9oCg==
</data>
<flag name="review"
          id="301709"
          type_id="1"
          status="+"
          setter="achristensen"
    />
          </attachment>
      

    </bug>

</bugzilla>