<?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>207009</bug_id>
          
          <creation_ts>2020-01-30 11:01:16 -0800</creation_ts>
          <short_desc>Move inline definitions out of NSKeyedArchiverSPI.h</short_desc>
          <delta_ts>2020-01-31 08:36:19 -0800</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>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=206905</see_also>
          <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="Jonathan Bedard">jbedard</reporter>
          <assigned_to name="Jonathan Bedard">jbedard</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1613047</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2020-01-30 11:01:16 -0800</bug_when>
    <thetext>A comment in https://bugs.webkit.org/show_bug.cgi?id=206905 pointed this improvement out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1613204</commentid>
    <comment_count>1</comment_count>
      <attachid>389300</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2020-01-30 16:26:59 -0800</bug_when>
    <thetext>Created attachment 389300
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1613376</commentid>
    <comment_count>2</comment_count>
      <attachid>389352</attachid>
    <who name="Jonathan Bedard">jbedard</who>
    <bug_when>2020-01-31 08:36:19 -0800</bug_when>
    <thetext>Created attachment 389352
Patch</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>389300</attachid>
            <date>2020-01-30 16:26:59 -0800</date>
            <delta_ts>2020-01-31 08:36:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207009-20200130162658.patch</filename>
            <type>text/plain</type>
            <size>11332</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjU1NDY1KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI4IEBACisyMDIwLTAx
LTMwICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNvbT4KKworICAgICAgICBNb3Zl
IGlubGluZSBkZWZpbml0aW9ucyBvdXQgb2YgTlNLZXllZEFyY2hpdmVyU1BJLmgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzAwOQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogUEFMLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGFsL3NwaS9jb2NvYS9OU0tleWVkQXJjaGl2ZXJT
UEkuaDoKKyAgICAgICAgKHNlY3VyZWx5QXJjaGl2ZWREYXRhV2l0aFJvb3RPYmplY3QpOiBNb3Zl
ZCBkZWZpbml0aW9uIHRvIE5TS2V5ZWRBcmNoaXZlclNQSS5tLgorICAgICAgICAoaW5zZWN1cmVs
eUFyY2hpdmVkRGF0YVdpdGhSb290T2JqZWN0KTogRGl0dG8uCisgICAgICAgIChpbnNlY3VyZWx5
VW5hcmNoaXZlT2JqZWN0RnJvbURhdGEpOiBEaXR0by4KKyAgICAgICAgKHVuYXJjaGl2ZWRPYmpl
Y3RPZkNsYXNzZXNGcm9tRGF0YSk6IERpdHRvLgorICAgICAgICAoc2VjdXJlQXJjaGl2ZXIpOiBE
aXR0by4KKyAgICAgICAgKHNlY3VyZVVuYXJjaGl2ZXJGcm9tRGF0YSk6IERpdHRvLgorICAgICAg
ICAoZGVjb2RlT2JqZWN0T2ZDbGFzc0ZvcktleUZyb21Db2Rlcik6IERpdHRvLgorICAgICAgICAq
IHBhbC9zcGkvY29jb2EvTlNLZXllZEFyY2hpdmVyU1BJLm06IEFkZGVkLgorICAgICAgICAoc2Vj
dXJlbHlBcmNoaXZlZERhdGFXaXRoUm9vdE9iamVjdCk6IE1vdmVkIGZyb20gTlNLZXllZEFyY2hp
dmVyU1BJLmguCisgICAgICAgIChpbnNlY3VyZWx5QXJjaGl2ZWREYXRhV2l0aFJvb3RPYmplY3Qp
OiBEaXR0by4KKyAgICAgICAgKGluc2VjdXJlbHlVbmFyY2hpdmVPYmplY3RGcm9tRGF0YSk6IERp
dHRvLgorICAgICAgICAodW5hcmNoaXZlZE9iamVjdE9mQ2xhc3Nlc0Zyb21EYXRhKTogRGl0dG8u
CisgICAgICAgIChzZWN1cmVBcmNoaXZlcik6IERpdHRvLgorICAgICAgICAoc2VjdXJlVW5hcmNo
aXZlckZyb21EYXRhKTogRGl0dG8uCisgICAgICAgIChkZWNvZGVPYmplY3RPZkNsYXNzRm9yS2V5
RnJvbUNvZGVyKTogRGl0dG8uCisKIDIwMjAtMDEtMzAgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hy
aXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBBZGQgV0tOYXZpZ2F0aW9uRGVsZWdhdGUg
U1BJIHRvIGRpc2FibGUgVExTIDEuMCBhbmQgMS4xCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9QQUwv
UEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAyNTU0NjUpCisr
KyBTb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtp
bmcgY29weSkKQEAgLTExNCw2ICsxMTQsNyBAQAogCQkyRDAyRTkzQzIwNTZGQUE3MDBBMTM3OTcg
LyogQXVkaW9Ub29sYm94U1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAyRDAyRTkzQjIwNTZGQUE3MDBBMTM3OTcgLyogQXVkaW9Ub29sYm94U1BJLmgg
Ki87IH07CiAJCTJFMTM0MkNDMjE1QUExMEEwMDcxOTlEMiAvKiBVSUtpdFNvZnRMaW5rLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTEzNDJDQTIxNUFB
MTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5oICovOyB9OwogCQkyRTEzNDJDRDIxNUFBMTBB
MDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDJFMTM0MkNCMjE1QUExMEEwMDcxOTlEMiAvKiBVSUtpdFNvZnRM
aW5rLm1tICovOyB9OworCQkzMTE5Njg3MzIzRTNBMUQ0MDBFQkEzNTcgLyogTlNLZXllZEFyY2hp
dmVyU1BJLm0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAz
MTE5Njg3MjIzRTNBMUQ0MDBFQkEzNTcgLyogTlNLZXllZEFyY2hpdmVyU1BJLm0gKi87IH07CiAJ
CTMxMzA4QjE0MjBBMjE3MDUwMDNGQjkyOSAvKiBTeXN0ZW1QcmV2aWV3U1BJLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTMwOEIxMzIwQTIxNzA1MDAz
RkI5MjkgLyogU3lzdGVtUHJldmlld1NQSS5oICovOyB9OwogCQk0NDI5NTZDRDIxOEE3MkRGMDA4
MERCNTQgLyogUmV2ZWFsU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0NDI5NTZDQzIxOEE3MkRFMDA4MERCNTQgLyogUmV2ZWFsU1BJLmggKi87IH07
CiAJCTQ0NTBGQzlGMjFGNUY2MDIwMDRERkE1NiAvKiBRdWlja0xvb2tTb2Z0TGluay5tbSBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0NTBGQzlEMjFGNUY2
MDIwMDRERkE1NiAvKiBRdWlja0xvb2tTb2Z0TGluay5tbSAqLzsgfTsKQEAgLTI4OSw2ICsyOTAs
NyBAQAogCQkyRDAyRTkzQjIwNTZGQUE3MDBBMTM3OTcgLyogQXVkaW9Ub29sYm94U1BJLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvVG9vbGJveFNQSS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQkyRTEzNDJDQTIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRT
b2Z0TGluay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVSUtpdFNvZnRMaW5r
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJFMTM0MkNCMjE1QUExMEEwMDcxOTlE
MiAvKiBVSUtpdFNvZnRMaW5rLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBw
YXRoID0gVUlLaXRTb2Z0TGluay5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzEx
OTY4NzIyM0UzQTFENDAwRUJBMzU3IC8qIE5TS2V5ZWRBcmNoaXZlclNQSS5tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLm9iamM7IHBhdGggPSBOU0tleWVkQXJjaGl2ZXJTUEkubTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEzMDhCMTMyMEEyMTcwNTAwM0ZCOTI5IC8qIFN5c3RlbVBy
ZXZpZXdTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3lzdGVtUHJldmlld1NQSS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkzNzExOUE3ODIwQ0NCNUZGMDAyQzZEQzkgLyogV2ViS2l0VGFy
Z2V0Q29uZGl0aW9uYWxzLnhjY29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IFdlYktpdFRhcmdldENvbmRp
dGlvbmFscy54Y2NvbmZpZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNDQyOTU2Q0My
MThBNzJERTAwODBEQjU0IC8qIFJldmVhbFNQSS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBSZXZlYWxTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTQzOSw2
ICs0NDEsNyBAQAogCQkJCTBDMkRBMTMzMUYzQkVCNDkwMERCQzMxNyAvKiBOU0ZpbGVNYW5hZ2Vy
U1BJLmggKi8sCiAJCQkJRjQ0MjkxNUQxRkE1MjQ3MzAwMkNDOTNFIC8qIE5TRmlsZVNpemVGb3Jt
YXR0ZXJTUEkuaCAqLywKIAkJCQk3QTE2NTY0MzFGOTdCMkI4MDBCQTNDRTQgLyogTlNLZXllZEFy
Y2hpdmVyU1BJLmggKi8sCisJCQkJMzExOTY4NzIyM0UzQTFENDAwRUJBMzU3IC8qIE5TS2V5ZWRB
cmNoaXZlclNQSS5tICovLAogCQkJCTYzRTM2OUY5MjFBRkE4M0YwMDFDMTRCQyAvKiBOU1Byb2dy
ZXNzU1BJLmggKi8sCiAJCQkJMEMyREExMzQxRjNCRUI0OTAwREJDMzE3IC8qIE5TU3RyaW5nU1BJ
LmggKi8sCiAJCQkJMEMyREExMzUxRjNCRUI0OTAwREJDMzE3IC8qIE5TVG91Y2hCYXJTUEkuaCAq
LywKQEAgLTk0NSw2ICs5NDgsNyBAQAogCQkJCTVDN0M3ODc0MjNBQzNFNzcwMDY1RjQ3RSAvKiBN
YW5hZ2VkQ29uZmlndXJhdGlvblNvZnRMaW5rLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMENGOTlD
QTQxRjczNjM3NTAwN0VFNzkzIC8qIE1lZGlhVGltZUFWRm91bmRhdGlvbi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlDREFDQjM2MDIzODc0MjVCMDAxOEQ3Q0UgLyogTWVkaWFUb29sYm94U29mdExp
bmsuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMzExOTY4NzMyM0UzQTFENDAwRUJBMzU3IC8qIE5T
S2V5ZWRBcmNoaXZlclNQSS5tIGluIFNvdXJjZXMgKi8sCiAJCQkJQTFGNjNDQTAyMUE0REJGNzAw
NkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGluay5tbSBpbiBTb3VyY2VzICovLAogCQkJCUExMTc1QjRG
MUY2QjMzNzMwMEM0QjlGMCAvKiBQb3B1cE1lbnUubW0gaW4gU291cmNlcyAqLywKIAkJCQk0NDUw
RkM5RjIxRjVGNjAyMDA0REZBNTYgLyogUXVpY2tMb29rU29mdExpbmsubW0gaW4gU291cmNlcyAq
LywKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL05TS2V5ZWRBcmNoaXZl
clNQSS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL05T
S2V5ZWRBcmNoaXZlclNQSS5oCShyZXZpc2lvbiAyNTU0NjUpCisrKyBTb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL3NwaS9jb2NvYS9OU0tleWVkQXJjaGl2ZXJTUEkuaAkod29ya2luZyBjb3B5KQpAQCAt
NTIsNTQgKzUyLDEwIEBAIE5TX0FTU1VNRV9OT05OVUxMX0VORAogCiAjZW5kaWYgLyogVVNFKEFQ
UExFX0lOVEVSTkFMX1NESykgKi8KIAotaW5saW5lIE5TRGF0YSAqX051bGxhYmxlIHNlY3VyZWx5
QXJjaGl2ZWREYXRhV2l0aFJvb3RPYmplY3QoaWQgX05vbm51bGwgb2JqZWN0KQotewotICAgIE5T
RXJyb3IgKmVycm9yOwotICAgIE5TRGF0YSAqZGF0YSA9IFtOU0tleWVkQXJjaGl2ZXIgYXJjaGl2
ZWREYXRhV2l0aFJvb3RPYmplY3Q6b2JqZWN0IHJlcXVpcmluZ1NlY3VyZUNvZGluZzpZRVMgZXJy
b3I6JmVycm9yXTsKLSAgICBpZiAoIWRhdGEpCi0gICAgICAgIExPR19FUlJPUigiVW5hYmxlIHRv
IGFyY2hpdmUgZGF0YTogJUAiLCBlcnJvcik7Ci0gICAgcmV0dXJuIGRhdGE7Ci19Ci0KLWlubGlu
ZSBOU0RhdGEgKl9OdWxsYWJsZSBpbnNlY3VyZWx5QXJjaGl2ZWREYXRhV2l0aFJvb3RPYmplY3Qo
aWQgX05vbm51bGwgb2JqZWN0KQotewotICAgIE5TRXJyb3IgKmVycm9yOwotICAgIE5TRGF0YSAq
ZGF0YSA9IFtOU0tleWVkQXJjaGl2ZXIgYXJjaGl2ZWREYXRhV2l0aFJvb3RPYmplY3Q6b2JqZWN0
IHJlcXVpcmluZ1NlY3VyZUNvZGluZzpOTyBlcnJvcjomZXJyb3JdOwotICAgIGlmICghZGF0YSkK
LSAgICAgICAgTE9HX0VSUk9SKCJVbmFibGUgdG8gYXJjaGl2ZSBkYXRhOiAlQCIsIGVycm9yKTsK
LSAgICByZXR1cm4gZGF0YTsKLX0KLQotaW5saW5lIGlkIF9OdWxsYWJsZSBpbnNlY3VyZWx5VW5h
cmNoaXZlT2JqZWN0RnJvbURhdGEoTlNEYXRhICogX05vbm51bGwgZGF0YSkKLXsKLSAgICBBTExP
V19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19CRUdJTgotICAgIHJldHVybiBbTlNLZXllZFVuYXJj
aGl2ZXIgdW5hcmNoaXZlT2JqZWN0V2l0aERhdGE6ZGF0YV07Ci0gICAgQUxMT1dfREVQUkVDQVRF
RF9ERUNMQVJBVElPTlNfRU5ECi19Ci0KLWlubGluZSBpZCBfTnVsbGFibGUgdW5hcmNoaXZlZE9i
amVjdE9mQ2xhc3Nlc0Zyb21EYXRhKE5TU2V0PENsYXNzPiAqIF9Ob25udWxsIGNsYXNzZXMsIE5T
RGF0YSAqIF9Ob25udWxsIGRhdGEpCi17Ci0gICAgTlNFcnJvciAqZXJyb3I7Ci0gICAgaWQgdmFs
dWUgPSBbTlNLZXllZFVuYXJjaGl2ZXIgdW5hcmNoaXZlZE9iamVjdE9mQ2xhc3NlczpjbGFzc2Vz
IGZyb21EYXRhOmRhdGEgZXJyb3I6JmVycm9yXTsKLSAgICBpZiAoIXZhbHVlKQotICAgICAgICBM
T0dfRVJST1IoIlVuYWJsZSB0byB1bmFyY2hpdmUgZGF0YTogJUAiLCBlcnJvcik7Ci0gICAgcmV0
dXJuIHZhbHVlOwotfQotCi1pbmxpbmUgUmV0YWluUHRyPE5TS2V5ZWRBcmNoaXZlcj4gc2VjdXJl
QXJjaGl2ZXIoKQotewotICAgIE5TS2V5ZWRBcmNoaXZlciAqYXJjaGl2ZXIgPSBbW05TS2V5ZWRB
cmNoaXZlciBhbGxvY10gaW5pdFJlcXVpcmluZ1NlY3VyZUNvZGluZzpZRVNdOwotICAgIHJldHVy
biBhZG9wdE5TKGFyY2hpdmVyKTsKLX0KLQotaW5saW5lIFJldGFpblB0cjxOU0tleWVkVW5hcmNo
aXZlcj4gc2VjdXJlVW5hcmNoaXZlckZyb21EYXRhKE5TRGF0YSAqX05vbm51bGwgZGF0YSkKLXsK
LSAgICBOU0tleWVkVW5hcmNoaXZlciAqdW5hcmNoaXZlciA9IFtbTlNLZXllZFVuYXJjaGl2ZXIg
YWxsb2NdIGluaXRGb3JSZWFkaW5nRnJvbURhdGE6ZGF0YSBlcnJvcjpuaWxdOwotICAgIHVuYXJj
aGl2ZXIuZGVjb2RpbmdGYWlsdXJlUG9saWN5ID0gTlNEZWNvZGluZ0ZhaWx1cmVQb2xpY3lSYWlz
ZUV4Y2VwdGlvbjsKLSAgICByZXR1cm4gYWRvcHROUyh1bmFyY2hpdmVyKTsKLX0KLQotaW5saW5l
IGlkIF9OdWxsYWJsZSBkZWNvZGVPYmplY3RPZkNsYXNzRm9yS2V5RnJvbUNvZGVyKENsYXNzIF9O
b25udWxsIGNscywgTlNTdHJpbmcgKiBfTm9ubnVsbCBrZXksIE5TQ29kZXIgKiBfTm9ubnVsbCBj
b2RlcikKLXsKLSAgICByZXR1cm4gW2NvZGVyIGRlY29kZU9iamVjdE9mQ2xhc3M6Y2xzIGZvcktl
eTprZXldOwotfQorTlNEYXRhICpfTnVsbGFibGUgc2VjdXJlbHlBcmNoaXZlZERhdGFXaXRoUm9v
dE9iamVjdChpZCBfTm9ubnVsbCk7CitOU0RhdGEgKl9OdWxsYWJsZSBpbnNlY3VyZWx5QXJjaGl2
ZWREYXRhV2l0aFJvb3RPYmplY3QoaWQgX05vbm51bGwpOworaWQgX051bGxhYmxlIGluc2VjdXJl
bHlVbmFyY2hpdmVPYmplY3RGcm9tRGF0YShOU0RhdGEgKiBfTm9ubnVsbCk7CitpZCBfTnVsbGFi
bGUgdW5hcmNoaXZlZE9iamVjdE9mQ2xhc3Nlc0Zyb21EYXRhKE5TU2V0PENsYXNzPiAqIF9Ob25u
dWxsIGNsYXNzZXMsIE5TRGF0YSAqIF9Ob25udWxsKTsKK1JldGFpblB0cjxOU0tleWVkQXJjaGl2
ZXI+IHNlY3VyZUFyY2hpdmVyKCk7CitSZXRhaW5QdHI8TlNLZXllZFVuYXJjaGl2ZXI+IHNlY3Vy
ZVVuYXJjaGl2ZXJGcm9tRGF0YShOU0RhdGEgKl9Ob25udWxsKTsKK2lkIF9OdWxsYWJsZSBkZWNv
ZGVPYmplY3RPZkNsYXNzRm9yS2V5RnJvbUNvZGVyKENsYXNzIF9Ob25udWxsIGNscywgTlNTdHJp
bmcgKiBfTm9ubnVsbCBrZXksIE5TQ29kZXIgKiBfTm9ubnVsbCk7CkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9QQUwvcGFsL3NwaS9jb2NvYS9OU0tleWVkQXJjaGl2ZXJTUEkubQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9OU0tleWVkQXJjaGl2ZXJTUEkubQko
bm9uZXhpc3RlbnQpCisrKyBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9OU0tleWVk
QXJjaGl2ZXJTUEkubQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDgwIEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycn
IEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwK
KyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgor
CisjaW5jbHVkZSA8cGFsL3NwaS9jb2NvYS9OU0tleWVkQXJjaGl2ZXJTUEkuaD4KKworTlNEYXRh
ICpfTnVsbGFibGUgc2VjdXJlbHlBcmNoaXZlZERhdGFXaXRoUm9vdE9iamVjdChpZCBfTm9ubnVs
bCBvYmplY3QpCit7CisgICAgTlNFcnJvciAqZXJyb3I7CisgICAgTlNEYXRhICpkYXRhID0gW05T
S2V5ZWRBcmNoaXZlciBhcmNoaXZlZERhdGFXaXRoUm9vdE9iamVjdDpvYmplY3QgcmVxdWlyaW5n
U2VjdXJlQ29kaW5nOllFUyBlcnJvcjomZXJyb3JdOworICAgIGlmICghZGF0YSkKKyAgICAgICAg
TE9HX0VSUk9SKCJVbmFibGUgdG8gYXJjaGl2ZSBkYXRhOiAlQCIsIGVycm9yKTsKKyAgICByZXR1
cm4gZGF0YTsKK30KKworTlNEYXRhICpfTnVsbGFibGUgaW5zZWN1cmVseUFyY2hpdmVkRGF0YVdp
dGhSb290T2JqZWN0KGlkIF9Ob25udWxsIG9iamVjdCkKK3sKKyAgICBOU0Vycm9yICplcnJvcjsK
KyAgICBOU0RhdGEgKmRhdGEgPSBbTlNLZXllZEFyY2hpdmVyIGFyY2hpdmVkRGF0YVdpdGhSb290
T2JqZWN0Om9iamVjdCByZXF1aXJpbmdTZWN1cmVDb2Rpbmc6Tk8gZXJyb3I6JmVycm9yXTsKKyAg
ICBpZiAoIWRhdGEpCisgICAgICAgIExPR19FUlJPUigiVW5hYmxlIHRvIGFyY2hpdmUgZGF0YTog
JUAiLCBlcnJvcik7CisgICAgcmV0dXJuIGRhdGE7Cit9CisKK2lkIF9OdWxsYWJsZSBpbnNlY3Vy
ZWx5VW5hcmNoaXZlT2JqZWN0RnJvbURhdGEoTlNEYXRhICogX05vbm51bGwgZGF0YSkKK3sKKyAg
ICBBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19CRUdJTgorICAgIHJldHVybiBbTlNLZXll
ZFVuYXJjaGl2ZXIgdW5hcmNoaXZlT2JqZWN0V2l0aERhdGE6ZGF0YV07CisgICAgQUxMT1dfREVQ
UkVDQVRFRF9ERUNMQVJBVElPTlNfRU5ECit9CisKK2lkIF9OdWxsYWJsZSB1bmFyY2hpdmVkT2Jq
ZWN0T2ZDbGFzc2VzRnJvbURhdGEoTlNTZXQ8Q2xhc3M+ICogX05vbm51bGwgY2xhc3NlcywgTlNE
YXRhICogX05vbm51bGwgZGF0YSkKK3sKKyAgICBOU0Vycm9yICplcnJvcjsKKyAgICBpZCB2YWx1
ZSA9IFtOU0tleWVkVW5hcmNoaXZlciB1bmFyY2hpdmVkT2JqZWN0T2ZDbGFzc2VzOmNsYXNzZXMg
ZnJvbURhdGE6ZGF0YSBlcnJvcjomZXJyb3JdOworICAgIGlmICghdmFsdWUpCisgICAgICAgIExP
R19FUlJPUigiVW5hYmxlIHRvIHVuYXJjaGl2ZSBkYXRhOiAlQCIsIGVycm9yKTsKKyAgICByZXR1
cm4gdmFsdWU7Cit9CisKK1JldGFpblB0cjxOU0tleWVkQXJjaGl2ZXI+IHNlY3VyZUFyY2hpdmVy
KCkKK3sKKyAgICBOU0tleWVkQXJjaGl2ZXIgKmFyY2hpdmVyID0gW1tOU0tleWVkQXJjaGl2ZXIg
YWxsb2NdIGluaXRSZXF1aXJpbmdTZWN1cmVDb2Rpbmc6WUVTXTsKKyAgICByZXR1cm4gYWRvcHRO
UyhhcmNoaXZlcik7Cit9CisKK1JldGFpblB0cjxOU0tleWVkVW5hcmNoaXZlcj4gc2VjdXJlVW5h
cmNoaXZlckZyb21EYXRhKE5TRGF0YSAqX05vbm51bGwgZGF0YSkKK3sKKyAgICBOU0tleWVkVW5h
cmNoaXZlciAqdW5hcmNoaXZlciA9IFtbTlNLZXllZFVuYXJjaGl2ZXIgYWxsb2NdIGluaXRGb3JS
ZWFkaW5nRnJvbURhdGE6ZGF0YSBlcnJvcjpuaWxdOworICAgIHVuYXJjaGl2ZXIuZGVjb2RpbmdG
YWlsdXJlUG9saWN5ID0gTlNEZWNvZGluZ0ZhaWx1cmVQb2xpY3lSYWlzZUV4Y2VwdGlvbjsKKyAg
ICByZXR1cm4gYWRvcHROUyh1bmFyY2hpdmVyKTsKK30KKworaWQgX051bGxhYmxlIGRlY29kZU9i
amVjdE9mQ2xhc3NGb3JLZXlGcm9tQ29kZXIoQ2xhc3MgX05vbm51bGwgY2xzLCBOU1N0cmluZyAq
IF9Ob25udWxsIGtleSwgTlNDb2RlciAqIF9Ob25udWxsIGNvZGVyKQoreworICAgIHJldHVybiBb
Y29kZXIgZGVjb2RlT2JqZWN0T2ZDbGFzczpjbHMgZm9yS2V5OmtleV07Cit9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>389352</attachid>
            <date>2020-01-31 08:36:19 -0800</date>
            <delta_ts>2020-01-31 08:36:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-207009-20200131083618.patch</filename>
            <type>text/plain</type>
            <size>11342</size>
            <attacher name="Jonathan Bedard">jbedard</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvUEFML0NoYW5nZUxvZwkocmV2aXNpb24gMjU1NDk1KQorKysgU291cmNlL1dlYkNv
cmUvUEFML0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI4IEBACisyMDIwLTAx
LTMxICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNvbT4KKworICAgICAgICBNb3Zl
IGlubGluZSBkZWZpbml0aW9ucyBvdXQgb2YgTlNLZXllZEFyY2hpdmVyU1BJLmgKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzAwOQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogUEFMLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGFsL3NwaS9jb2NvYS9OU0tleWVkQXJjaGl2ZXJT
UEkuaDoKKyAgICAgICAgKHNlY3VyZWx5QXJjaGl2ZWREYXRhV2l0aFJvb3RPYmplY3QpOiBNb3Zl
ZCBkZWZpbml0aW9uIHRvIE5TS2V5ZWRBcmNoaXZlclNQSS5tLgorICAgICAgICAoaW5zZWN1cmVs
eUFyY2hpdmVkRGF0YVdpdGhSb290T2JqZWN0KTogRGl0dG8uCisgICAgICAgIChpbnNlY3VyZWx5
VW5hcmNoaXZlT2JqZWN0RnJvbURhdGEpOiBEaXR0by4KKyAgICAgICAgKHVuYXJjaGl2ZWRPYmpl
Y3RPZkNsYXNzZXNGcm9tRGF0YSk6IERpdHRvLgorICAgICAgICAoc2VjdXJlQXJjaGl2ZXIpOiBE
aXR0by4KKyAgICAgICAgKHNlY3VyZVVuYXJjaGl2ZXJGcm9tRGF0YSk6IERpdHRvLgorICAgICAg
ICAoZGVjb2RlT2JqZWN0T2ZDbGFzc0ZvcktleUZyb21Db2Rlcik6IERpdHRvLgorICAgICAgICAq
IHBhbC9zcGkvY29jb2EvTlNLZXllZEFyY2hpdmVyU1BJLm1tOiBBZGRlZC4KKyAgICAgICAgKHNl
Y3VyZWx5QXJjaGl2ZWREYXRhV2l0aFJvb3RPYmplY3QpOiBNb3ZlZCBmcm9tIE5TS2V5ZWRBcmNo
aXZlclNQSS5oLgorICAgICAgICAoaW5zZWN1cmVseUFyY2hpdmVkRGF0YVdpdGhSb290T2JqZWN0
KTogRGl0dG8uCisgICAgICAgIChpbnNlY3VyZWx5VW5hcmNoaXZlT2JqZWN0RnJvbURhdGEpOiBE
aXR0by4KKyAgICAgICAgKHVuYXJjaGl2ZWRPYmplY3RPZkNsYXNzZXNGcm9tRGF0YSk6IERpdHRv
LgorICAgICAgICAoc2VjdXJlQXJjaGl2ZXIpOiBEaXR0by4KKyAgICAgICAgKHNlY3VyZVVuYXJj
aGl2ZXJGcm9tRGF0YSk6IERpdHRvLgorICAgICAgICAoZGVjb2RlT2JqZWN0T2ZDbGFzc0Zvcktl
eUZyb21Db2Rlcik6IERpdHRvLgorCiAyMDIwLTAxLTMwICBBbGV4IENocmlzdGVuc2VuICA8YWNo
cmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRkIFdLTmF2aWdhdGlvbkRlbGVnYXRl
IFNQSSB0byBkaXNhYmxlIFRMUyAxLjAgYW5kIDEuMQpJbmRleDogU291cmNlL1dlYkNvcmUvUEFM
L1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gMjU1NDk1KQor
KysgU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMTQsNiArMTE0LDcgQEAKIAkJMkQwMkU5M0MyMDU2RkFBNzAwQTEzNzk3
IC8qIEF1ZGlvVG9vbGJveFNQSS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMkQwMkU5M0IyMDU2RkFBNzAwQTEzNzk3IC8qIEF1ZGlvVG9vbGJveFNQSS5o
ICovOyB9OwogCQkyRTEzNDJDQzIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkUxMzQyQ0EyMTVB
QTEwQTAwNzE5OUQyIC8qIFVJS2l0U29mdExpbmsuaCAqLzsgfTsKIAkJMkUxMzQyQ0QyMTVBQTEw
QTAwNzE5OUQyIC8qIFVJS2l0U29mdExpbmsubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAyRTEzNDJDQjIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0
TGluay5tbSAqLzsgfTsKKwkJMzExOTY4NzMyM0UzQTFENDAwRUJBMzU3IC8qIE5TS2V5ZWRBcmNo
aXZlclNQSS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDMxMTk2ODcyMjNFM0ExRDQwMEVCQTM1NyAvKiBOU0tleWVkQXJjaGl2ZXJTUEkubW0gKi87IH07
CiAJCTMxMzA4QjE0MjBBMjE3MDUwMDNGQjkyOSAvKiBTeXN0ZW1QcmV2aWV3U1BJLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTMwOEIxMzIwQTIxNzA1
MDAzRkI5MjkgLyogU3lzdGVtUHJldmlld1NQSS5oICovOyB9OwogCQk0NDI5NTZDRDIxOEE3MkRG
MDA4MERCNTQgLyogUmV2ZWFsU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0NDI5NTZDQzIxOEE3MkRFMDA4MERCNTQgLyogUmV2ZWFsU1BJLmggKi87
IH07CiAJCTQ0NTBGQzlGMjFGNUY2MDIwMDRERkE1NiAvKiBRdWlja0xvb2tTb2Z0TGluay5tbSBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQ0NTBGQzlEMjFG
NUY2MDIwMDRERkE1NiAvKiBRdWlja0xvb2tTb2Z0TGluay5tbSAqLzsgfTsKQEAgLTI4OSw2ICsy
OTAsNyBAQAogCQkyRDAyRTkzQjIwNTZGQUE3MDBBMTM3OTcgLyogQXVkaW9Ub29sYm94U1BJLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEF1ZGlvVG9vbGJveFNQSS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyRTEzNDJDQTIxNUFBMTBBMDA3MTk5RDIgLyogVUlL
aXRTb2Z0TGluay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVSUtpdFNvZnRM
aW5rLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJFMTM0MkNCMjE1QUExMEEwMDcx
OTlEMiAvKiBVSUtpdFNvZnRMaW5rLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gVUlLaXRTb2Z0TGluay5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MzExOTY4NzIyM0UzQTFENDAwRUJBMzU3IC8qIE5TS2V5ZWRBcmNoaXZlclNQSS5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IE5TS2V5ZWRBcmNoaXZlclNQSS5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEzMDhCMTMyMEEyMTcwNTAwM0ZCOTI5IC8q
IFN5c3RlbVByZXZpZXdTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3lzdGVtUHJldmlld1NQSS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzNzExOUE3ODIwQ0NCNUZGMDAyQzZEQzkgLyog
V2ViS2l0VGFyZ2V0Q29uZGl0aW9uYWxzLnhjY29uZmlnICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC54Y2NvbmZpZzsgcGF0aCA9IFdlYktpdFRh
cmdldENvbmRpdGlvbmFscy54Y2NvbmZpZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NDQyOTU2Q0MyMThBNzJERTAwODBEQjU0IC8qIFJldmVhbFNQSS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBSZXZlYWxTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
QEAgLTQzOSw2ICs0NDEsNyBAQAogCQkJCTBDMkRBMTMzMUYzQkVCNDkwMERCQzMxNyAvKiBOU0Zp
bGVNYW5hZ2VyU1BJLmggKi8sCiAJCQkJRjQ0MjkxNUQxRkE1MjQ3MzAwMkNDOTNFIC8qIE5TRmls
ZVNpemVGb3JtYXR0ZXJTUEkuaCAqLywKIAkJCQk3QTE2NTY0MzFGOTdCMkI4MDBCQTNDRTQgLyog
TlNLZXllZEFyY2hpdmVyU1BJLmggKi8sCisJCQkJMzExOTY4NzIyM0UzQTFENDAwRUJBMzU3IC8q
IE5TS2V5ZWRBcmNoaXZlclNQSS5tbSAqLywKIAkJCQk2M0UzNjlGOTIxQUZBODNGMDAxQzE0QkMg
LyogTlNQcm9ncmVzc1NQSS5oICovLAogCQkJCTBDMkRBMTM0MUYzQkVCNDkwMERCQzMxNyAvKiBO
U1N0cmluZ1NQSS5oICovLAogCQkJCTBDMkRBMTM1MUYzQkVCNDkwMERCQzMxNyAvKiBOU1RvdWNo
QmFyU1BJLmggKi8sCkBAIC05NDUsNiArOTQ4LDcgQEAKIAkJCQk1QzdDNzg3NDIzQUMzRTc3MDA2
NUY0N0UgLyogTWFuYWdlZENvbmZpZ3VyYXRpb25Tb2Z0TGluay5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTBDRjk5Q0E0MUY3MzYzNzUwMDdFRTc5MyAvKiBNZWRpYVRpbWVBVkZvdW5kYXRpb24uY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RBQ0IzNjAyMzg3NDI1QjAwMThEN0NFIC8qIE1lZGlhVG9v
bGJveFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMxMTk2ODczMjNFM0ExRDQwMEVC
QTM1NyAvKiBOU0tleWVkQXJjaGl2ZXJTUEkubW0gaW4gU291cmNlcyAqLywKIAkJCQlBMUY2M0NB
MDIxQTREQkY3MDA2RkI0M0IgLyogUGFzc0tpdFNvZnRMaW5rLm1tIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQTExNzVCNEYxRjZCMzM3MzAwQzRCOUYwIC8qIFBvcHVwTWVudS5tbSBpbiBTb3VyY2VzICov
LAogCQkJCTQ0NTBGQzlGMjFGNUY2MDIwMDRERkE1NiAvKiBRdWlja0xvb2tTb2Z0TGluay5tbSBp
biBTb3VyY2VzICovLApJbmRleDogU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvTlNL
ZXllZEFyY2hpdmVyU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvUEFML3BhbC9z
cGkvY29jb2EvTlNLZXllZEFyY2hpdmVyU1BJLmgJKHJldmlzaW9uIDI1NTQ5NSkKKysrIFNvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL05TS2V5ZWRBcmNoaXZlclNQSS5oCSh3b3JraW5n
IGNvcHkpCkBAIC01Miw1NCArNTIsMTAgQEAgTlNfQVNTVU1FX05PTk5VTExfRU5ECiAKICNlbmRp
ZiAvKiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKSAqLwogCi1pbmxpbmUgTlNEYXRhICpfTnVsbGFi
bGUgc2VjdXJlbHlBcmNoaXZlZERhdGFXaXRoUm9vdE9iamVjdChpZCBfTm9ubnVsbCBvYmplY3Qp
Ci17Ci0gICAgTlNFcnJvciAqZXJyb3I7Ci0gICAgTlNEYXRhICpkYXRhID0gW05TS2V5ZWRBcmNo
aXZlciBhcmNoaXZlZERhdGFXaXRoUm9vdE9iamVjdDpvYmplY3QgcmVxdWlyaW5nU2VjdXJlQ29k
aW5nOllFUyBlcnJvcjomZXJyb3JdOwotICAgIGlmICghZGF0YSkKLSAgICAgICAgTE9HX0VSUk9S
KCJVbmFibGUgdG8gYXJjaGl2ZSBkYXRhOiAlQCIsIGVycm9yKTsKLSAgICByZXR1cm4gZGF0YTsK
LX0KLQotaW5saW5lIE5TRGF0YSAqX051bGxhYmxlIGluc2VjdXJlbHlBcmNoaXZlZERhdGFXaXRo
Um9vdE9iamVjdChpZCBfTm9ubnVsbCBvYmplY3QpCi17Ci0gICAgTlNFcnJvciAqZXJyb3I7Ci0g
ICAgTlNEYXRhICpkYXRhID0gW05TS2V5ZWRBcmNoaXZlciBhcmNoaXZlZERhdGFXaXRoUm9vdE9i
amVjdDpvYmplY3QgcmVxdWlyaW5nU2VjdXJlQ29kaW5nOk5PIGVycm9yOiZlcnJvcl07Ci0gICAg
aWYgKCFkYXRhKQotICAgICAgICBMT0dfRVJST1IoIlVuYWJsZSB0byBhcmNoaXZlIGRhdGE6ICVA
IiwgZXJyb3IpOwotICAgIHJldHVybiBkYXRhOwotfQotCi1pbmxpbmUgaWQgX051bGxhYmxlIGlu
c2VjdXJlbHlVbmFyY2hpdmVPYmplY3RGcm9tRGF0YShOU0RhdGEgKiBfTm9ubnVsbCBkYXRhKQot
ewotICAgIEFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0JFR0lOCi0gICAgcmV0dXJuIFtO
U0tleWVkVW5hcmNoaXZlciB1bmFyY2hpdmVPYmplY3RXaXRoRGF0YTpkYXRhXTsKLSAgICBBTExP
V19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQKLX0KLQotaW5saW5lIGlkIF9OdWxsYWJsZSB1
bmFyY2hpdmVkT2JqZWN0T2ZDbGFzc2VzRnJvbURhdGEoTlNTZXQ8Q2xhc3M+ICogX05vbm51bGwg
Y2xhc3NlcywgTlNEYXRhICogX05vbm51bGwgZGF0YSkKLXsKLSAgICBOU0Vycm9yICplcnJvcjsK
LSAgICBpZCB2YWx1ZSA9IFtOU0tleWVkVW5hcmNoaXZlciB1bmFyY2hpdmVkT2JqZWN0T2ZDbGFz
c2VzOmNsYXNzZXMgZnJvbURhdGE6ZGF0YSBlcnJvcjomZXJyb3JdOwotICAgIGlmICghdmFsdWUp
Ci0gICAgICAgIExPR19FUlJPUigiVW5hYmxlIHRvIHVuYXJjaGl2ZSBkYXRhOiAlQCIsIGVycm9y
KTsKLSAgICByZXR1cm4gdmFsdWU7Ci19Ci0KLWlubGluZSBSZXRhaW5QdHI8TlNLZXllZEFyY2hp
dmVyPiBzZWN1cmVBcmNoaXZlcigpCi17Ci0gICAgTlNLZXllZEFyY2hpdmVyICphcmNoaXZlciA9
IFtbTlNLZXllZEFyY2hpdmVyIGFsbG9jXSBpbml0UmVxdWlyaW5nU2VjdXJlQ29kaW5nOllFU107
Ci0gICAgcmV0dXJuIGFkb3B0TlMoYXJjaGl2ZXIpOwotfQotCi1pbmxpbmUgUmV0YWluUHRyPE5T
S2V5ZWRVbmFyY2hpdmVyPiBzZWN1cmVVbmFyY2hpdmVyRnJvbURhdGEoTlNEYXRhICpfTm9ubnVs
bCBkYXRhKQotewotICAgIE5TS2V5ZWRVbmFyY2hpdmVyICp1bmFyY2hpdmVyID0gW1tOU0tleWVk
VW5hcmNoaXZlciBhbGxvY10gaW5pdEZvclJlYWRpbmdGcm9tRGF0YTpkYXRhIGVycm9yOm5pbF07
Ci0gICAgdW5hcmNoaXZlci5kZWNvZGluZ0ZhaWx1cmVQb2xpY3kgPSBOU0RlY29kaW5nRmFpbHVy
ZVBvbGljeVJhaXNlRXhjZXB0aW9uOwotICAgIHJldHVybiBhZG9wdE5TKHVuYXJjaGl2ZXIpOwot
fQotCi1pbmxpbmUgaWQgX051bGxhYmxlIGRlY29kZU9iamVjdE9mQ2xhc3NGb3JLZXlGcm9tQ29k
ZXIoQ2xhc3MgX05vbm51bGwgY2xzLCBOU1N0cmluZyAqIF9Ob25udWxsIGtleSwgTlNDb2RlciAq
IF9Ob25udWxsIGNvZGVyKQotewotICAgIHJldHVybiBbY29kZXIgZGVjb2RlT2JqZWN0T2ZDbGFz
czpjbHMgZm9yS2V5OmtleV07Ci19CitOU0RhdGEgKl9OdWxsYWJsZSBzZWN1cmVseUFyY2hpdmVk
RGF0YVdpdGhSb290T2JqZWN0KGlkIF9Ob25udWxsKTsKK05TRGF0YSAqX051bGxhYmxlIGluc2Vj
dXJlbHlBcmNoaXZlZERhdGFXaXRoUm9vdE9iamVjdChpZCBfTm9ubnVsbCk7CitpZCBfTnVsbGFi
bGUgaW5zZWN1cmVseVVuYXJjaGl2ZU9iamVjdEZyb21EYXRhKE5TRGF0YSAqIF9Ob25udWxsKTsK
K2lkIF9OdWxsYWJsZSB1bmFyY2hpdmVkT2JqZWN0T2ZDbGFzc2VzRnJvbURhdGEoTlNTZXQ8Q2xh
c3M+ICogX05vbm51bGwgY2xhc3NlcywgTlNEYXRhICogX05vbm51bGwpOworUmV0YWluUHRyPE5T
S2V5ZWRBcmNoaXZlcj4gc2VjdXJlQXJjaGl2ZXIoKTsKK1JldGFpblB0cjxOU0tleWVkVW5hcmNo
aXZlcj4gc2VjdXJlVW5hcmNoaXZlckZyb21EYXRhKE5TRGF0YSAqX05vbm51bGwpOworaWQgX051
bGxhYmxlIGRlY29kZU9iamVjdE9mQ2xhc3NGb3JLZXlGcm9tQ29kZXIoQ2xhc3MgX05vbm51bGwg
Y2xzLCBOU1N0cmluZyAqIF9Ob25udWxsIGtleSwgTlNDb2RlciAqIF9Ob25udWxsKTsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL05TS2V5ZWRBcmNoaXZlclNQSS5tbQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9OU0tleWVkQXJj
aGl2ZXJTUEkubW0JKG5vbmV4aXN0ZW50KQorKysgU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkv
Y29jb2EvTlNLZXllZEFyY2hpdmVyU1BJLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNzkg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAq
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
CisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0
ICJjb25maWcuaCIKKyNpbXBvcnQgPHBhbC9zcGkvY29jb2EvTlNLZXllZEFyY2hpdmVyU1BJLmg+
CisKK05TRGF0YSAqX051bGxhYmxlIHNlY3VyZWx5QXJjaGl2ZWREYXRhV2l0aFJvb3RPYmplY3Qo
aWQgX05vbm51bGwgb2JqZWN0KQoreworICAgIE5TRXJyb3IgKmVycm9yOworICAgIE5TRGF0YSAq
ZGF0YSA9IFtOU0tleWVkQXJjaGl2ZXIgYXJjaGl2ZWREYXRhV2l0aFJvb3RPYmplY3Q6b2JqZWN0
IHJlcXVpcmluZ1NlY3VyZUNvZGluZzpZRVMgZXJyb3I6JmVycm9yXTsKKyAgICBpZiAoIWRhdGEp
CisgICAgICAgIExPR19FUlJPUigiVW5hYmxlIHRvIGFyY2hpdmUgZGF0YTogJUAiLCBlcnJvcik7
CisgICAgcmV0dXJuIGRhdGE7Cit9CisKK05TRGF0YSAqX051bGxhYmxlIGluc2VjdXJlbHlBcmNo
aXZlZERhdGFXaXRoUm9vdE9iamVjdChpZCBfTm9ubnVsbCBvYmplY3QpCit7CisgICAgTlNFcnJv
ciAqZXJyb3I7CisgICAgTlNEYXRhICpkYXRhID0gW05TS2V5ZWRBcmNoaXZlciBhcmNoaXZlZERh
dGFXaXRoUm9vdE9iamVjdDpvYmplY3QgcmVxdWlyaW5nU2VjdXJlQ29kaW5nOk5PIGVycm9yOiZl
cnJvcl07CisgICAgaWYgKCFkYXRhKQorICAgICAgICBMT0dfRVJST1IoIlVuYWJsZSB0byBhcmNo
aXZlIGRhdGE6ICVAIiwgZXJyb3IpOworICAgIHJldHVybiBkYXRhOworfQorCitpZCBfTnVsbGFi
bGUgaW5zZWN1cmVseVVuYXJjaGl2ZU9iamVjdEZyb21EYXRhKE5TRGF0YSAqIF9Ob25udWxsIGRh
dGEpCit7CisgICAgQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJBVElPTlNfQkVHSU4KKyAgICByZXR1
cm4gW05TS2V5ZWRVbmFyY2hpdmVyIHVuYXJjaGl2ZU9iamVjdFdpdGhEYXRhOmRhdGFdOworICAg
IEFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0VORAorfQorCitpZCBfTnVsbGFibGUgdW5h
cmNoaXZlZE9iamVjdE9mQ2xhc3Nlc0Zyb21EYXRhKE5TU2V0PENsYXNzPiAqIF9Ob25udWxsIGNs
YXNzZXMsIE5TRGF0YSAqIF9Ob25udWxsIGRhdGEpCit7CisgICAgTlNFcnJvciAqZXJyb3I7Cisg
ICAgaWQgdmFsdWUgPSBbTlNLZXllZFVuYXJjaGl2ZXIgdW5hcmNoaXZlZE9iamVjdE9mQ2xhc3Nl
czpjbGFzc2VzIGZyb21EYXRhOmRhdGEgZXJyb3I6JmVycm9yXTsKKyAgICBpZiAoIXZhbHVlKQor
ICAgICAgICBMT0dfRVJST1IoIlVuYWJsZSB0byB1bmFyY2hpdmUgZGF0YTogJUAiLCBlcnJvcik7
CisgICAgcmV0dXJuIHZhbHVlOworfQorCitSZXRhaW5QdHI8TlNLZXllZEFyY2hpdmVyPiBzZWN1
cmVBcmNoaXZlcigpCit7CisgICAgTlNLZXllZEFyY2hpdmVyICphcmNoaXZlciA9IFtbTlNLZXll
ZEFyY2hpdmVyIGFsbG9jXSBpbml0UmVxdWlyaW5nU2VjdXJlQ29kaW5nOllFU107CisgICAgcmV0
dXJuIGFkb3B0TlMoYXJjaGl2ZXIpOworfQorCitSZXRhaW5QdHI8TlNLZXllZFVuYXJjaGl2ZXI+
IHNlY3VyZVVuYXJjaGl2ZXJGcm9tRGF0YShOU0RhdGEgKl9Ob25udWxsIGRhdGEpCit7CisgICAg
TlNLZXllZFVuYXJjaGl2ZXIgKnVuYXJjaGl2ZXIgPSBbW05TS2V5ZWRVbmFyY2hpdmVyIGFsbG9j
XSBpbml0Rm9yUmVhZGluZ0Zyb21EYXRhOmRhdGEgZXJyb3I6bmlsXTsKKyAgICB1bmFyY2hpdmVy
LmRlY29kaW5nRmFpbHVyZVBvbGljeSA9IE5TRGVjb2RpbmdGYWlsdXJlUG9saWN5UmFpc2VFeGNl
cHRpb247CisgICAgcmV0dXJuIGFkb3B0TlModW5hcmNoaXZlcik7Cit9CisKK2lkIF9OdWxsYWJs
ZSBkZWNvZGVPYmplY3RPZkNsYXNzRm9yS2V5RnJvbUNvZGVyKENsYXNzIF9Ob25udWxsIGNscywg
TlNTdHJpbmcgKiBfTm9ubnVsbCBrZXksIE5TQ29kZXIgKiBfTm9ubnVsbCBjb2RlcikKK3sKKyAg
ICByZXR1cm4gW2NvZGVyIGRlY29kZU9iamVjdE9mQ2xhc3M6Y2xzIGZvcktleTprZXldOworfQo=
</data>
<flag name="review"
          id="405038"
          type_id="1"
          status="?"
          setter="jbedard"
    />
          </attachment>
      

    </bug>

</bugzilla>