<?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>160726</bug_id>
          
          <creation_ts>2016-08-09 18:48:16 -0700</creation_ts>
          <short_desc>Move SQLTransactionBackend construction inside SQLTransaction</short_desc>
          <delta_ts>2016-08-10 09:48:41 -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>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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1218945</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2016-08-09 18:48:16 -0700</bug_when>
    <thetext>Move SQLTransactionBackend construction inside SQLTransaction</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1219022</commentid>
    <comment_count>1</comment_count>
      <attachid>285728</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2016-08-10 09:01:16 -0700</bug_when>
    <thetext>Created attachment 285728
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1219025</commentid>
    <comment_count>2</comment_count>
      <attachid>285729</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2016-08-10 09:11:39 -0700</bug_when>
    <thetext>Created attachment 285729
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1219033</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2016-08-10 09:48:41 -0700</bug_when>
    <thetext>Committed r204333: &lt;http://trac.webkit.org/changeset/204333&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>285728</attachid>
            <date>2016-08-10 09:01:16 -0700</date>
            <delta_ts>2016-08-10 09:11:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-160726-20160810085941.patch</filename>
            <type>text/plain</type>
            <size>17895</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA0MzE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTkxZTZkN2I0NTY1OThk
ODdhZTlmODQ2NWMyMGIxZDA2NzgzNGEzZC4uNTcxMjdhYjBmMTY3MDA4N2QyNGZlMGJlMWIzN2I5
ODhlMDIwNTA3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE2LTA4LTA5ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgTW92ZSBTUUxUcmFu
c2FjdGlvbkJhY2tlbmQgY29uc3RydWN0aW9uIGluc2lkZSBTUUxUcmFuc2FjdGlvbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYwNzI2CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBpcyB0aGUgZmly
c3Qgc3RlcCB0b3dhcmRzIHJlLW1lcmdpbmcgU1FMVHJhbnNhY3Rpb25CYWNrZW5kIGFuZCBTUUxU
cmFuc2FjdGlvbiBhbmQgY2xlYW4gdXAgdGhlIGNvZGUuCisKKyAgICAgICAgKiBNb2R1bGVzL3dl
YmRhdGFiYXNlL0NoYW5nZVZlcnNpb25XcmFwcGVyLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL3dl
YmRhdGFiYXNlL0NoYW5nZVZlcnNpb25XcmFwcGVyLmg6CisgICAgICAgICogTW9kdWxlcy93ZWJk
YXRhYmFzZS9EYXRhYmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEYXRhYmFzZTo6cGVyZm9y
bUNsb3NlKToKKyAgICAgICAgKFdlYkNvcmU6OkRhdGFiYXNlOjpzY2hlZHVsZVRyYW5zYWN0aW9u
U3RlcCk6CisgICAgICAgIChXZWJDb3JlOjpEYXRhYmFzZTo6Y2hhbmdlVmVyc2lvbik6CisgICAg
ICAgIChXZWJDb3JlOjpEYXRhYmFzZTo6dHJhbnNhY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6
RGF0YWJhc2U6OnJlYWRUcmFuc2FjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpEYXRhYmFzZTo6
cnVuVHJhbnNhY3Rpb24pOgorICAgICAgICAqIE1vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2Uu
aDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlVGFzay5jcHA6CisgICAg
ICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbi5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTUUxUcmFuc2FjdGlvbjo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlNRTFRy
YW5zYWN0aW9uOjpTUUxUcmFuc2FjdGlvbik6CisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFz
ZS9TUUxUcmFuc2FjdGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6U1FMVHJhbnNhY3Rpb25XcmFw
cGVyOjp+U1FMVHJhbnNhY3Rpb25XcmFwcGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNRTFRyYW5z
YWN0aW9uOjpiYWNrZW5kKToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5z
YWN0aW9uQmFja2VuZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTUUxUcmFuc2FjdGlvbkJhY2tl
bmQ6OmxvY2tBY3F1aXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpTUUxUcmFuc2FjdGlvbkJhY2tl
bmQ6OnJlcXVlc3RUcmFuc2l0VG9TdGF0ZSk6CisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFz
ZS9TUUxUcmFuc2FjdGlvbkJhY2tlbmQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNRTFRyYW5zYWN0
aW9uV3JhcHBlcjo6flNRTFRyYW5zYWN0aW9uV3JhcHBlcik6IERlbGV0ZWQuCisKIDIwMTYtMDgt
MDkgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBDaGFyYWN0ZXJE
YXRhLmRhdGEgc2V0dGVyIG9wdGltaXphdGlvbiBpcyBub3Qgc3BlYy1jb21wbGlhbnQgYW5kIGlz
IG9ic2VydmFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJh
c2UvQ2hhbmdlVmVyc2lvbldyYXBwZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJk
YXRhYmFzZS9DaGFuZ2VWZXJzaW9uV3JhcHBlci5jcHAKaW5kZXggNTE1ZWMyOGY3NTc1NDMwNmJh
MTczZGRiOTNhNGJmMmZiZWJhOTY5Yi4uMzJkMDJlOTA3MGJhM2E4ZmY4ZDQ2Y2UxZjJlOGQzM2Y2
MjE3MzBhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9D
aGFuZ2VWZXJzaW9uV3JhcHBlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJk
YXRhYmFzZS9DaGFuZ2VWZXJzaW9uV3JhcHBlci5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2lu
Y2x1ZGUgIkRhdGFiYXNlLmgiCiAjaW5jbHVkZSAiU1FMRXJyb3IuaCIKKyNpbmNsdWRlICJTUUxU
cmFuc2FjdGlvbkJhY2tlbmQuaCIKICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJh
c2UvQ2hhbmdlVmVyc2lvbldyYXBwZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0
YWJhc2UvQ2hhbmdlVmVyc2lvbldyYXBwZXIuaAppbmRleCBlZWMzMWYyNWNmYjg0MjUyYTY0NGY2
ZmJkY2I5MjM2NzAwNWIzMTI0Li4yY2NlN2E0ZWMwZDE5OGNmNGRlYjExOTBkMzVhZmI4YmRlOGQy
ZThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0NoYW5n
ZVZlcnNpb25XcmFwcGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFz
ZS9DaGFuZ2VWZXJzaW9uV3JhcHBlci5oCkBAIC0yOCw3ICsyOCw3IEBACiAjaWZuZGVmIENoYW5n
ZVZlcnNpb25XcmFwcGVyX2gKICNkZWZpbmUgQ2hhbmdlVmVyc2lvbldyYXBwZXJfaAogCi0jaW5j
bHVkZSAiU1FMVHJhbnNhY3Rpb25CYWNrZW5kLmgiCisjaW5jbHVkZSAiU1FMVHJhbnNhY3Rpb24u
aCIKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2UuY3BwCmluZGV4IGI4
MTAzZjFhOGZiMDA5ZTA3YTIwMGY0N2YwZjc4NGU3NmU5MWYzMGUuLmVlOWMyZGE0Y2JjNTRiN2Vh
NjIyMGU3NmE0YTAzOWVhNjZlNjNiM2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViZGF0YWJhc2UvRGF0YWJhc2UuY3BwCkBAIC0zMTIsOSArMzEyLDggQEAgdm9pZCBEYXRhYmFz
ZTo6cGVyZm9ybUNsb3NlKCkKICAgICAgICAgLy8gQ2xlYW4gdXAgdHJhbnNhY3Rpb25zIHRoYXQg
aGF2ZSBub3QgYmVlbiBzY2hlZHVsZWQgeWV0OgogICAgICAgICAvLyBUcmFuc2FjdGlvbiBwaGFz
ZSAxIGNsZWFudXAuIFNlZSBjb21tZW50IG9uICJXaGF0IGhhcHBlbnMgaWYgYQogICAgICAgICAv
LyB0cmFuc2FjdGlvbiBpcyBpbnRlcnJ1cHRlZD8iIGF0IHRoZSB0b3Agb2YgU1FMVHJhbnNhY3Rp
b25CYWNrZW5kLmNwcC4KLSAgICAgICAgUmVmUHRyPFNRTFRyYW5zYWN0aW9uQmFja2VuZD4gdHJh
bnNhY3Rpb247CiAgICAgICAgIHdoaWxlICghbV90cmFuc2FjdGlvblF1ZXVlLmlzRW1wdHkoKSkg
ewotICAgICAgICAgICAgdHJhbnNhY3Rpb24gPSBtX3RyYW5zYWN0aW9uUXVldWUudGFrZUZpcnN0
KCk7CisgICAgICAgICAgICBhdXRvIHRyYW5zYWN0aW9uID0gbV90cmFuc2FjdGlvblF1ZXVlLnRh
a2VGaXJzdCgpOwogICAgICAgICAgICAgdHJhbnNhY3Rpb24tPm5vdGlmeURhdGFiYXNlVGhyZWFk
SXNTaHV0dGluZ0Rvd24oKTsKICAgICAgICAgfQogCkBAIC01NzYsMzAgKzU3NSwxMiBAQCB2b2lk
IERhdGFiYXNlOjpzY2hlZHVsZVRyYW5zYWN0aW9uKCkKICAgICAgICAgbV90cmFuc2FjdGlvbklu
UHJvZ3Jlc3MgPSBmYWxzZTsKIH0KIAotUmVmUHRyPFNRTFRyYW5zYWN0aW9uQmFja2VuZD4gRGF0
YWJhc2U6OnJ1blRyYW5zYWN0aW9uKFJlZjxTUUxUcmFuc2FjdGlvbj4mJiB0cmFuc2FjdGlvbiwg
Ym9vbCByZWFkT25seSwgY29uc3QgQ2hhbmdlVmVyc2lvbkRhdGEqIGRhdGEpCi17Ci0gICAgTG9j
a0hvbGRlciBsb2NrZXIobV90cmFuc2FjdGlvbkluUHJvZ3Jlc3NNdXRleCk7Ci0gICAgaWYgKCFt
X2lzVHJhbnNhY3Rpb25RdWV1ZUVuYWJsZWQpCi0gICAgICAgIHJldHVybiBudWxscHRyOwotCi0g
ICAgUmVmUHRyPFNRTFRyYW5zYWN0aW9uV3JhcHBlcj4gd3JhcHBlcjsKLSAgICBpZiAoZGF0YSkK
LSAgICAgICAgd3JhcHBlciA9IENoYW5nZVZlcnNpb25XcmFwcGVyOjpjcmVhdGUoZGF0YS0+b2xk
VmVyc2lvbigpLCBkYXRhLT5uZXdWZXJzaW9uKCkpOwotCi0gICAgUmVmUHRyPFNRTFRyYW5zYWN0
aW9uQmFja2VuZD4gdHJhbnNhY3Rpb25CYWNrZW5kID0gU1FMVHJhbnNhY3Rpb25CYWNrZW5kOjpj
cmVhdGUodGhpcywgV1RGTW92ZSh0cmFuc2FjdGlvbiksIFdURk1vdmUod3JhcHBlciksIHJlYWRP
bmx5KTsKLSAgICBtX3RyYW5zYWN0aW9uUXVldWUuYXBwZW5kKHRyYW5zYWN0aW9uQmFja2VuZCk7
Ci0gICAgaWYgKCFtX3RyYW5zYWN0aW9uSW5Qcm9ncmVzcykKLSAgICAgICAgc2NoZWR1bGVUcmFu
c2FjdGlvbigpOwotCi0gICAgcmV0dXJuIHRyYW5zYWN0aW9uQmFja2VuZDsKLX0KLQotdm9pZCBE
YXRhYmFzZTo6c2NoZWR1bGVUcmFuc2FjdGlvblN0ZXAoU1FMVHJhbnNhY3Rpb25CYWNrZW5kKiB0
cmFuc2FjdGlvbikKK3ZvaWQgRGF0YWJhc2U6OnNjaGVkdWxlVHJhbnNhY3Rpb25TdGVwKFNRTFRy
YW5zYWN0aW9uQmFja2VuZCYgdHJhbnNhY3Rpb24pCiB7CiAgICAgaWYgKCFkYXRhYmFzZUNvbnRl
eHQoKS0+ZGF0YWJhc2VUaHJlYWQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgYXV0byB0YXNr
ID0gc3RkOjptYWtlX3VuaXF1ZTxEYXRhYmFzZVRyYW5zYWN0aW9uVGFzaz4odHJhbnNhY3Rpb24p
OworICAgIGF1dG8gdGFzayA9IHN0ZDo6bWFrZV91bmlxdWU8RGF0YWJhc2VUcmFuc2FjdGlvblRh
c2s+KCZ0cmFuc2FjdGlvbik7CiAgICAgTE9HKFN0b3JhZ2VBUEksICJTY2hlZHVsaW5nIERhdGFi
YXNlVHJhbnNhY3Rpb25UYXNrICVwIGZvciB0aGUgdHJhbnNhY3Rpb24gc3RlcFxuIiwgdGFzay5n
ZXQoKSk7CiAgICAgZGF0YWJhc2VDb250ZXh0KCktPmRhdGFiYXNlVGhyZWFkKCktPnNjaGVkdWxl
VGFzayhXVEZNb3ZlKHRhc2spKTsKIH0KQEAgLTY1MSwxOCArNjMyLDE3IEBAIHZvaWQgRGF0YWJh
c2U6Om1hcmtBc0RlbGV0ZWRBbmRDbG9zZSgpCiAKIHZvaWQgRGF0YWJhc2U6OmNoYW5nZVZlcnNp
b24oY29uc3QgU3RyaW5nJiBvbGRWZXJzaW9uLCBjb25zdCBTdHJpbmcmIG5ld1ZlcnNpb24sIFJl
ZlB0cjxTUUxUcmFuc2FjdGlvbkNhbGxiYWNrPiYmIGNhbGxiYWNrLCBSZWZQdHI8U1FMVHJhbnNh
Y3Rpb25FcnJvckNhbGxiYWNrPiYmIGVycm9yQ2FsbGJhY2ssIFJlZlB0cjxWb2lkQ2FsbGJhY2s+
JiYgc3VjY2Vzc0NhbGxiYWNrKQogewotICAgIENoYW5nZVZlcnNpb25EYXRhIGRhdGEob2xkVmVy
c2lvbiwgbmV3VmVyc2lvbik7Ci0gICAgcnVuVHJhbnNhY3Rpb24oV1RGTW92ZShjYWxsYmFjayks
IFdURk1vdmUoZXJyb3JDYWxsYmFjayksIFdURk1vdmUoc3VjY2Vzc0NhbGxiYWNrKSwgZmFsc2Us
ICZkYXRhKTsKKyAgICBydW5UcmFuc2FjdGlvbihXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShl
cnJvckNhbGxiYWNrKSwgV1RGTW92ZShzdWNjZXNzQ2FsbGJhY2spLCBDaGFuZ2VWZXJzaW9uV3Jh
cHBlcjo6Y3JlYXRlKG9sZFZlcnNpb24sIG5ld1ZlcnNpb24pLCBmYWxzZSk7CiB9CiAKIHZvaWQg
RGF0YWJhc2U6OnRyYW5zYWN0aW9uKFJlZlB0cjxTUUxUcmFuc2FjdGlvbkNhbGxiYWNrPiYmIGNh
bGxiYWNrLCBSZWZQdHI8U1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrPiYmIGVycm9yQ2FsbGJh
Y2ssIFJlZlB0cjxWb2lkQ2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxiYWNrKQogewotICAgIHJ1blRy
YW5zYWN0aW9uKFdURk1vdmUoY2FsbGJhY2spLCBXVEZNb3ZlKGVycm9yQ2FsbGJhY2spLCBXVEZN
b3ZlKHN1Y2Nlc3NDYWxsYmFjayksIGZhbHNlKTsKKyAgICBydW5UcmFuc2FjdGlvbihXVEZNb3Zl
KGNhbGxiYWNrKSwgV1RGTW92ZShlcnJvckNhbGxiYWNrKSwgV1RGTW92ZShzdWNjZXNzQ2FsbGJh
Y2spLCBudWxscHRyLCBmYWxzZSk7CiB9CiAKIHZvaWQgRGF0YWJhc2U6OnJlYWRUcmFuc2FjdGlv
bihSZWZQdHI8U1FMVHJhbnNhY3Rpb25DYWxsYmFjaz4mJiBjYWxsYmFjaywgUmVmUHRyPFNRTFRy
YW5zYWN0aW9uRXJyb3JDYWxsYmFjaz4mJiBlcnJvckNhbGxiYWNrLCBSZWZQdHI8Vm9pZENhbGxi
YWNrPiYmIHN1Y2Nlc3NDYWxsYmFjaykKIHsKLSAgICBydW5UcmFuc2FjdGlvbihXVEZNb3ZlKGNh
bGxiYWNrKSwgV1RGTW92ZShlcnJvckNhbGxiYWNrKSwgV1RGTW92ZShzdWNjZXNzQ2FsbGJhY2sp
LCB0cnVlKTsKKyAgICBydW5UcmFuc2FjdGlvbihXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShl
cnJvckNhbGxiYWNrKSwgV1RGTW92ZShzdWNjZXNzQ2FsbGJhY2spLCBudWxscHRyLCB0cnVlKTsK
IH0KIAogU3RyaW5nIERhdGFiYXNlOjpzdHJpbmdJZGVudGlmaWVyKCkgY29uc3QKQEAgLTc0Miwx
NyArNzIyLDIzIEBAIHZvaWQgRGF0YWJhc2U6OnJlc2V0QXV0aG9yaXplcigpCiAgICAgICAgIG1f
ZGF0YWJhc2VBdXRob3JpemVyLT5yZXNldCgpOwogfQogCi12b2lkIERhdGFiYXNlOjpydW5UcmFu
c2FjdGlvbihSZWZQdHI8U1FMVHJhbnNhY3Rpb25DYWxsYmFjaz4mJiBjYWxsYmFjaywgUmVmUHRy
PFNRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjaz4mJiBlcnJvckNhbGxiYWNrLCBSZWZQdHI8Vm9p
ZENhbGxiYWNrPiYmIHN1Y2Nlc3NDYWxsYmFjaywgYm9vbCByZWFkT25seSwgY29uc3QgQ2hhbmdl
VmVyc2lvbkRhdGEqIGNoYW5nZVZlcnNpb25EYXRhKQordm9pZCBEYXRhYmFzZTo6cnVuVHJhbnNh
Y3Rpb24oUmVmUHRyPFNRTFRyYW5zYWN0aW9uQ2FsbGJhY2s+JiYgY2FsbGJhY2ssIFJlZlB0cjxT
UUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2s+JiYgZXJyb3JDYWxsYmFjaywgUmVmUHRyPFZvaWRD
YWxsYmFjaz4mJiBzdWNjZXNzQ2FsbGJhY2ssIFJlZlB0cjxTUUxUcmFuc2FjdGlvbldyYXBwZXI+
JiYgd3JhcHBlciwgYm9vbCByZWFkT25seSkKIHsKLSAgICBSZWY8U1FMVHJhbnNhY3Rpb24+IHRy
YW5zYWN0aW9uID0gU1FMVHJhbnNhY3Rpb246OmNyZWF0ZSgqdGhpcywgV1RGTW92ZShjYWxsYmFj
ayksIFdURk1vdmUoc3VjY2Vzc0NhbGxiYWNrKSwgZXJyb3JDYWxsYmFjay5jb3B5UmVmKCksIHJl
YWRPbmx5KTsKLQotICAgIFJlZlB0cjxTUUxUcmFuc2FjdGlvbkJhY2tlbmQ+IHRyYW5zYWN0aW9u
QmFja2VuZCA9IHJ1blRyYW5zYWN0aW9uKFdURk1vdmUodHJhbnNhY3Rpb24pLCByZWFkT25seSwg
Y2hhbmdlVmVyc2lvbkRhdGEpOwotICAgIGlmICghdHJhbnNhY3Rpb25CYWNrZW5kICYmIGVycm9y
Q2FsbGJhY2spIHsKLSAgICAgICAgUmVmUHRyPFNRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjaz4g
ZXJyb3JDYWxsYmFja1Byb3RlY3RvciA9IFdURk1vdmUoZXJyb3JDYWxsYmFjayk7Ci0gICAgICAg
IG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+cG9zdFRhc2soW2Vycm9yQ2FsbGJhY2tQcm90ZWN0
b3JdKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmKSB7Ci0gICAgICAgICAgICBlcnJvckNhbGxiYWNr
UHJvdGVjdG9yLT5oYW5kbGVFdmVudChTUUxFcnJvcjo6Y3JlYXRlKFNRTEVycm9yOjpVTktOT1dO
X0VSUiwgImRhdGFiYXNlIGhhcyBiZWVuIGNsb3NlZCIpLnB0cigpKTsKLSAgICAgICAgfSk7Cisg
ICAgTG9ja0hvbGRlciBsb2NrZXIobV90cmFuc2FjdGlvbkluUHJvZ3Jlc3NNdXRleCk7CisgICAg
aWYgKCFtX2lzVHJhbnNhY3Rpb25RdWV1ZUVuYWJsZWQpIHsKKyAgICAgICAgaWYgKGVycm9yQ2Fs
bGJhY2spIHsKKyAgICAgICAgICAgIFJlZlB0cjxTUUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2s+
IGVycm9yQ2FsbGJhY2tQcm90ZWN0b3IgPSBXVEZNb3ZlKGVycm9yQ2FsbGJhY2spOworICAgICAg
ICAgICAgbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LT5wb3N0VGFzayhbZXJyb3JDYWxsYmFja1By
b3RlY3Rvcl0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYpIHsKKyAgICAgICAgICAgICAgICBlcnJv
ckNhbGxiYWNrUHJvdGVjdG9yLT5oYW5kbGVFdmVudChTUUxFcnJvcjo6Y3JlYXRlKFNRTEVycm9y
OjpVTktOT1dOX0VSUiwgImRhdGFiYXNlIGhhcyBiZWVuIGNsb3NlZCIpLnB0cigpKTsKKyAgICAg
ICAgICAgIH0pOworICAgICAgICB9CisgICAgICAgIHJldHVybjsKICAgICB9CisKKyAgICBhdXRv
IHRyYW5zYWN0aW9uID0gU1FMVHJhbnNhY3Rpb246OmNyZWF0ZSgqdGhpcywgV1RGTW92ZShjYWxs
YmFjayksIFdURk1vdmUoc3VjY2Vzc0NhbGxiYWNrKSwgZXJyb3JDYWxsYmFjay5jb3B5UmVmKCks
IFdURk1vdmUod3JhcHBlciksIHJlYWRPbmx5KTsKKyAgICBtX3RyYW5zYWN0aW9uUXVldWUuYXBw
ZW5kKCZ0cmFuc2FjdGlvbi0+YmFja2VuZCgpKTsKKyAgICBpZiAoIW1fdHJhbnNhY3Rpb25JblBy
b2dyZXNzKQorICAgICAgICBzY2hlZHVsZVRyYW5zYWN0aW9uKCk7CiB9CiAKIHZvaWQgRGF0YWJh
c2U6OnNjaGVkdWxlVHJhbnNhY3Rpb25DYWxsYmFjayhTUUxUcmFuc2FjdGlvbiogdHJhbnNhY3Rp
b24pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFi
YXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlLmgKaW5k
ZXggMWUxMDAwZjJiNWYwYTczOWUxNmE5ZjRlYjVkZTQzNjBkNDhkYzFjZi4uNTkwYzZiMzkwMWRl
ZDEwYTY0Y2M5OWI4NGYxODE2ZjBhZmM5ZjEyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2UuaApAQCAtMzgsNyArMzgsNiBAQAogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKLWNsYXNzIENoYW5nZVZlcnNpb25EYXRhOwogY2xhc3MgRGF0YWJhc2VDYWxs
YmFjazsKIGNsYXNzIERhdGFiYXNlRGV0YWlsczsKIGNsYXNzIERhdGFiYXNlQ29udGV4dDsKQEAg
LTUwLDYgKzQ5LDcgQEAgY2xhc3MgU1FMVHJhbnNhY3Rpb25DYWxsYmFjazsKIGNsYXNzIFNRTFRy
YW5zYWN0aW9uQ2xpZW50OwogY2xhc3MgU1FMVHJhbnNhY3Rpb25Db29yZGluYXRvcjsKIGNsYXNz
IFNRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjazsKK2NsYXNzIFNRTFRyYW5zYWN0aW9uV3JhcHBl
cjsKIGNsYXNzIFZvaWRDYWxsYmFjazsKIAogY2xhc3MgRGF0YWJhc2UgZmluYWwgOiBwdWJsaWMg
VGhyZWFkU2FmZVJlZkNvdW50ZWQ8RGF0YWJhc2U+IHsKQEAgLTY2LDggKzY2LDcgQEAgcHVibGlj
OgogCiAgICAgdW5zaWduZWQgbG9uZyBsb25nIG1heGltdW1TaXplKCkgY29uc3Q7CiAKLSAgICBS
ZWZQdHI8U1FMVHJhbnNhY3Rpb25CYWNrZW5kPiBydW5UcmFuc2FjdGlvbihSZWY8U1FMVHJhbnNh
Y3Rpb24+JiYsIGJvb2wgcmVhZE9ubHksIGNvbnN0IENoYW5nZVZlcnNpb25EYXRhKik7Ci0gICAg
dm9pZCBzY2hlZHVsZVRyYW5zYWN0aW9uU3RlcChTUUxUcmFuc2FjdGlvbkJhY2tlbmQqKTsKKyAg
ICB2b2lkIHNjaGVkdWxlVHJhbnNhY3Rpb25TdGVwKFNRTFRyYW5zYWN0aW9uQmFja2VuZCYpOwog
ICAgIHZvaWQgaW5Qcm9ncmVzc1RyYW5zYWN0aW9uQ29tcGxldGVkKCk7CiAKICAgICBib29sIGhh
c1BlbmRpbmdUcmFuc2FjdGlvbigpOwpAQCAtMTM5LDcgKzEzOCw3IEBAIHByaXZhdGU6CiAKICAg
ICB2b2lkIHNjaGVkdWxlVHJhbnNhY3Rpb24oKTsKIAotICAgIHZvaWQgcnVuVHJhbnNhY3Rpb24o
UmVmUHRyPFNRTFRyYW5zYWN0aW9uQ2FsbGJhY2s+JiYsIFJlZlB0cjxTUUxUcmFuc2FjdGlvbkVy
cm9yQ2FsbGJhY2s+JiYsIFJlZlB0cjxWb2lkQ2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxiYWNrLCBi
b29sIHJlYWRPbmx5LCBjb25zdCBDaGFuZ2VWZXJzaW9uRGF0YSogPSBudWxscHRyKTsKKyAgICB2
b2lkIHJ1blRyYW5zYWN0aW9uKFJlZlB0cjxTUUxUcmFuc2FjdGlvbkNhbGxiYWNrPiYmLCBSZWZQ
dHI8U1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrPiYmLCBSZWZQdHI8Vm9pZENhbGxiYWNrPiYm
IHN1Y2Nlc3NDYWxsYmFjaywgUmVmUHRyPFNRTFRyYW5zYWN0aW9uV3JhcHBlcj4mJiwgYm9vbCBy
ZWFkT25seSk7CiAKICNpZiAhTE9HX0RJU0FCTEVEIHx8ICFFUlJPUl9ESVNBQkxFRAogICAgIFN0
cmluZyBkYXRhYmFzZURlYnVnTmFtZSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVRhc2suY3BwIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVRhc2suY3BwCmluZGV4IGI4NzE1MTVkYjgzYTll
MDQwNWMwZDllNzI5YmJlZGVmYjk0ZjNiZjkuLmU1YzQyZGFiYTZiYTQyYzE4M2JmZWE5MjJkY2I0
ZjU4ODhhOWQzNWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJh
c2UvRGF0YWJhc2VUYXNrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFi
YXNlL0RhdGFiYXNlVGFzay5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2luY2x1ZGUgIkRhdGFi
YXNlLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgorI2luY2x1ZGUgIlNRTFRyYW5zYWN0aW9uLmgi
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uLmNwcAppbmRleCA1MWZkY2RlODMzOWY4YzQy
Mjg3NDRmNTY1YWNkM2UwNzkzYTQwMTI4Li40YjEzNmE1ZTk5MTlhZDZmYzZhN2Y4YmNlYjYxYmNh
ZDVkMzJjYmY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNl
L1NRTFRyYW5zYWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFi
YXNlL1NRTFRyYW5zYWN0aW9uLmNwcApAQCAtNDgsMTIgKzQ4LDEyIEBACiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotUmVmPFNRTFRyYW5zYWN0aW9uPiBTUUxUcmFuc2FjdGlvbjo6Y3JlYXRlKFJl
ZjxEYXRhYmFzZT4mJiBkYXRhYmFzZSwgUmVmUHRyPFNRTFRyYW5zYWN0aW9uQ2FsbGJhY2s+JiYg
Y2FsbGJhY2ssIFJlZlB0cjxWb2lkQ2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxiYWNrLCBSZWZQdHI8
U1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrPiYmIGVycm9yQ2FsbGJhY2ssIGJvb2wgcmVhZE9u
bHkpCitSZWY8U1FMVHJhbnNhY3Rpb24+IFNRTFRyYW5zYWN0aW9uOjpjcmVhdGUoUmVmPERhdGFi
YXNlPiYmIGRhdGFiYXNlLCBSZWZQdHI8U1FMVHJhbnNhY3Rpb25DYWxsYmFjaz4mJiBjYWxsYmFj
aywgUmVmUHRyPFZvaWRDYWxsYmFjaz4mJiBzdWNjZXNzQ2FsbGJhY2ssIFJlZlB0cjxTUUxUcmFu
c2FjdGlvbkVycm9yQ2FsbGJhY2s+JiYgZXJyb3JDYWxsYmFjaywgUmVmUHRyPFNRTFRyYW5zYWN0
aW9uV3JhcHBlcj4mJiB3cmFwcGVyLCBib29sIHJlYWRPbmx5KQogewotICAgIHJldHVybiBhZG9w
dFJlZigqbmV3IFNRTFRyYW5zYWN0aW9uKFdURk1vdmUoZGF0YWJhc2UpLCBXVEZNb3ZlKGNhbGxi
YWNrKSwgV1RGTW92ZShzdWNjZXNzQ2FsbGJhY2spLCBXVEZNb3ZlKGVycm9yQ2FsbGJhY2spLCBy
ZWFkT25seSkpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFNRTFRyYW5zYWN0aW9uKFdURk1v
dmUoZGF0YWJhc2UpLCBXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShzdWNjZXNzQ2FsbGJhY2sp
LCBXVEZNb3ZlKGVycm9yQ2FsbGJhY2spLCBXVEZNb3ZlKHdyYXBwZXIpLCByZWFkT25seSkpOwog
fQogCi1TUUxUcmFuc2FjdGlvbjo6U1FMVHJhbnNhY3Rpb24oUmVmPERhdGFiYXNlPiYmIGRhdGFi
YXNlLCBSZWZQdHI8U1FMVHJhbnNhY3Rpb25DYWxsYmFjaz4mJiBjYWxsYmFjaywgUmVmUHRyPFZv
aWRDYWxsYmFjaz4mJiBzdWNjZXNzQ2FsbGJhY2ssIFJlZlB0cjxTUUxUcmFuc2FjdGlvbkVycm9y
Q2FsbGJhY2s+JiYgZXJyb3JDYWxsYmFjaywgYm9vbCByZWFkT25seSkKK1NRTFRyYW5zYWN0aW9u
OjpTUUxUcmFuc2FjdGlvbihSZWY8RGF0YWJhc2U+JiYgZGF0YWJhc2UsIFJlZlB0cjxTUUxUcmFu
c2FjdGlvbkNhbGxiYWNrPiYmIGNhbGxiYWNrLCBSZWZQdHI8Vm9pZENhbGxiYWNrPiYmIHN1Y2Nl
c3NDYWxsYmFjaywgUmVmUHRyPFNRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjaz4mJiBlcnJvckNh
bGxiYWNrLCBSZWZQdHI8U1FMVHJhbnNhY3Rpb25XcmFwcGVyPiYmIHdyYXBwZXIsIGJvb2wgcmVh
ZE9ubHkpCiAgICAgOiBtX2RhdGFiYXNlKFdURk1vdmUoZGF0YWJhc2UpKQogICAgICwgbV9jYWxs
YmFja1dyYXBwZXIoV1RGTW92ZShjYWxsYmFjayksIG1fZGF0YWJhc2UtPnNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKSkKICAgICAsIG1fc3VjY2Vzc0NhbGxiYWNrV3JhcHBlcihXVEZNb3ZlKHN1Y2Nl
c3NDYWxsYmFjayksIG1fZGF0YWJhc2UtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkKQEAgLTYx
LDYgKzYxLDggQEAgU1FMVHJhbnNhY3Rpb246OlNRTFRyYW5zYWN0aW9uKFJlZjxEYXRhYmFzZT4m
JiBkYXRhYmFzZSwgUmVmUHRyPFNRTFRyYW5zYWN0aW9uQ2EKICAgICAsIG1fZXhlY3V0ZVNxbEFs
bG93ZWQoZmFsc2UpCiAgICAgLCBtX3JlYWRPbmx5KHJlYWRPbmx5KQogeworICAgIC8vIFRoaXMg
d2lsbCBlbmQgdXAgYXNzaWduaW5nIHRvIG1fZnJvbnRlbmQuCisgICAgU1FMVHJhbnNhY3Rpb25C
YWNrZW5kOjpjcmVhdGUobV9kYXRhYmFzZS5wdHIoKSwgdGhpcywgV1RGTW92ZSh3cmFwcGVyKSwg
cmVhZE9ubHkpOwogfQogCiBTUUxUcmFuc2FjdGlvbjo6flNRTFRyYW5zYWN0aW9uKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb24u
aCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb24uaApp
bmRleCBkZGFjYzhiOThmYWJlNGM0YWM3MTY3MzlkM2Q5YWEzODk5NDZhZDlmLi4zNDI2YzQzNjgw
MjU4ODYwYTJhYjEwMzQ1YzUxZTc3NDE1ZDVjNDM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbi5oCkBAIC00NywxNiArNDcsMjgg
QEAgY2xhc3MgU1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrOwogY2xhc3MgU1FMVmFsdWU7CiBj
bGFzcyBWb2lkQ2FsbGJhY2s7CiAKK2NsYXNzIFNRTFRyYW5zYWN0aW9uV3JhcHBlciA6IHB1Ymxp
YyBUaHJlYWRTYWZlUmVmQ291bnRlZDxTUUxUcmFuc2FjdGlvbldyYXBwZXI+IHsKK3B1YmxpYzoK
KyAgICB2aXJ0dWFsIH5TUUxUcmFuc2FjdGlvbldyYXBwZXIoKSB7IH0KKyAgICB2aXJ0dWFsIGJv
b2wgcGVyZm9ybVByZWZsaWdodChTUUxUcmFuc2FjdGlvbkJhY2tlbmQqKSA9IDA7CisgICAgdmly
dHVhbCBib29sIHBlcmZvcm1Qb3N0ZmxpZ2h0KFNRTFRyYW5zYWN0aW9uQmFja2VuZCopID0gMDsK
KyAgICB2aXJ0dWFsIFNRTEVycm9yKiBzcWxFcnJvcigpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFs
IHZvaWQgaGFuZGxlQ29tbWl0RmFpbGVkQWZ0ZXJQb3N0ZmxpZ2h0KFNRTFRyYW5zYWN0aW9uQmFj
a2VuZCopID0gMDsKK307CisKIGNsYXNzIFNRTFRyYW5zYWN0aW9uIDogcHVibGljIFRocmVhZFNh
ZmVSZWZDb3VudGVkPFNRTFRyYW5zYWN0aW9uPiwgcHVibGljIFNRTFRyYW5zYWN0aW9uU3RhdGVN
YWNoaW5lPFNRTFRyYW5zYWN0aW9uPiB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxTUUxUcmFu
c2FjdGlvbj4gY3JlYXRlKFJlZjxEYXRhYmFzZT4mJiwgUmVmUHRyPFNRTFRyYW5zYWN0aW9uQ2Fs
bGJhY2s+JiYsIFJlZlB0cjxWb2lkQ2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxiYWNrLCBSZWZQdHI8
U1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrPiYmLCBib29sIHJlYWRPbmx5KTsKKyAgICBzdGF0
aWMgUmVmPFNRTFRyYW5zYWN0aW9uPiBjcmVhdGUoUmVmPERhdGFiYXNlPiYmLCBSZWZQdHI8U1FM
VHJhbnNhY3Rpb25DYWxsYmFjaz4mJiwgUmVmUHRyPFZvaWRDYWxsYmFjaz4mJiBzdWNjZXNzQ2Fs
bGJhY2ssIFJlZlB0cjxTUUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2s+JiYsIFJlZlB0cjxTUUxU
cmFuc2FjdGlvbldyYXBwZXI+JiYsIGJvb2wgcmVhZE9ubHkpOwogICAgIH5TUUxUcmFuc2FjdGlv
bigpOwogCisgICAgdm9pZCBleGVjdXRlU1FMKGNvbnN0IFN0cmluZyYgc3FsU3RhdGVtZW50LCBj
b25zdCBWZWN0b3I8U1FMVmFsdWU+JiBhcmd1bWVudHMsIFJlZlB0cjxTUUxTdGF0ZW1lbnRDYWxs
YmFjaz4mJiwgUmVmUHRyPFNRTFN0YXRlbWVudEVycm9yQ2FsbGJhY2s+JiYsIEV4Y2VwdGlvbkNv
ZGUmKTsKKwogICAgIHZvaWQgcGVyZm9ybVBlbmRpbmdDYWxsYmFjaygpOwogCi0gICAgdm9pZCBl
eGVjdXRlU1FMKGNvbnN0IFN0cmluZyYgc3FsU3RhdGVtZW50LCBjb25zdCBWZWN0b3I8U1FMVmFs
dWU+JiBhcmd1bWVudHMsIFJlZlB0cjxTUUxTdGF0ZW1lbnRDYWxsYmFjaz4mJiwgUmVmUHRyPFNR
TFN0YXRlbWVudEVycm9yQ2FsbGJhY2s+JiYsIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIG5v
dGlmeURhdGFiYXNlVGhyZWFkSXNTaHV0dGluZ0Rvd24oKTsKIAogICAgIERhdGFiYXNlJiBkYXRh
YmFzZSgpIHsgcmV0dXJuIG1fZGF0YWJhc2U7IH0KKyAgICBTUUxUcmFuc2FjdGlvbkJhY2tlbmQm
IGJhY2tlbmQoKSB7IHJldHVybiAqbV9iYWNrZW5kOyB9CiAKICAgICAvLyBBUElzIGNhbGxlZCBm
cm9tIHRoZSBiYWNrZW5kIHB1Ymxpc2hlZCB2aWEgU1FMVHJhbnNhY3Rpb246CiAgICAgdm9pZCBy
ZXF1ZXN0VHJhbnNpdFRvU3RhdGUoU1FMVHJhbnNhY3Rpb25TdGF0ZSk7CkBAIC02Niw3ICs3OCw3
IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEJhY2tlbmQoU1FMVHJhbnNhY3Rpb25CYWNrZW5kKik7
CiAKIHByaXZhdGU6Ci0gICAgU1FMVHJhbnNhY3Rpb24oUmVmPERhdGFiYXNlPiYmLCBSZWZQdHI8
U1FMVHJhbnNhY3Rpb25DYWxsYmFjaz4mJiwgUmVmUHRyPFZvaWRDYWxsYmFjaz4mJiBzdWNjZXNz
Q2FsbGJhY2ssIFJlZlB0cjxTUUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2s+JiYsIGJvb2wgcmVh
ZE9ubHkpOworICAgIFNRTFRyYW5zYWN0aW9uKFJlZjxEYXRhYmFzZT4mJiwgUmVmUHRyPFNRTFRy
YW5zYWN0aW9uQ2FsbGJhY2s+JiYsIFJlZlB0cjxWb2lkQ2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxi
YWNrLCBSZWZQdHI8U1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrPiYmLCBSZWZQdHI8U1FMVHJh
bnNhY3Rpb25XcmFwcGVyPiYmLCBib29sIHJlYWRPbmx5KTsKIAogICAgIHZvaWQgY2xlYXJDYWxs
YmFja1dyYXBwZXJzKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
ZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25CYWNrZW5kLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25CYWNrZW5kLmNwcAppbmRleCA4OGExMzQ5YzEw
NWI1YTk5ZmY4NTdmZTEzMzMwMTA0Y2JiNjA3ZTJjLi5hODRjODNiMTdhNGMyNTRmYWNjNGQ4MWM3
Y2E4YzZiZDE2MGM1NThiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRh
dGFiYXNlL1NRTFRyYW5zYWN0aW9uQmFja2VuZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbkJhY2tlbmQuY3BwCkBAIC01NDYsNyArNTQ2
LDcgQEAgdm9pZCBTUUxUcmFuc2FjdGlvbkJhY2tlbmQ6OmxvY2tBY3F1aXJlZCgpCiAKICAgICBt
X3JlcXVlc3RlZFN0YXRlID0gU1FMVHJhbnNhY3Rpb25TdGF0ZTo6T3BlblRyYW5zYWN0aW9uQW5k
UHJlZmxpZ2h0OwogICAgIEFTU0VSVChtX3JlcXVlc3RlZFN0YXRlICE9IFNRTFRyYW5zYWN0aW9u
U3RhdGU6OkVuZCk7Ci0gICAgbV9kYXRhYmFzZS0+c2NoZWR1bGVUcmFuc2FjdGlvblN0ZXAodGhp
cyk7CisgICAgbV9kYXRhYmFzZS0+c2NoZWR1bGVUcmFuc2FjdGlvblN0ZXAoKnRoaXMpOwogfQog
CiB2b2lkIFNRTFRyYW5zYWN0aW9uQmFja2VuZDo6b3BlblRyYW5zYWN0aW9uQW5kUHJlZmxpZ2h0
KCkKQEAgLTgzMCw3ICs4MzAsNyBAQCB2b2lkIFNRTFRyYW5zYWN0aW9uQmFja2VuZDo6cmVxdWVz
dFRyYW5zaXRUb1N0YXRlKFNRTFRyYW5zYWN0aW9uU3RhdGUgbmV4dFN0YXRlKQogICAgIExPRyhT
dG9yYWdlQVBJLCAiU2NoZWR1bGluZyAlcyBmb3IgdHJhbnNhY3Rpb24gJXBcbiIsIG5hbWVGb3JT
UUxUcmFuc2FjdGlvblN0YXRlKG5leHRTdGF0ZSksIHRoaXMpOwogICAgIG1fcmVxdWVzdGVkU3Rh
dGUgPSBuZXh0U3RhdGU7CiAgICAgQVNTRVJUKG1fcmVxdWVzdGVkU3RhdGUgIT0gU1FMVHJhbnNh
Y3Rpb25TdGF0ZTo6RW5kKTsKLSAgICBtX2RhdGFiYXNlLT5zY2hlZHVsZVRyYW5zYWN0aW9uU3Rl
cCh0aGlzKTsKKyAgICBtX2RhdGFiYXNlLT5zY2hlZHVsZVRyYW5zYWN0aW9uU3RlcCgqdGhpcyk7
CiB9CiAKIC8vIFRoaXMgc3RhdGUgZnVuY3Rpb24gaXMgdXNlZCBhcyBhIHN0dWIgZnVuY3Rpb24g
dG8gcGx1ZyB1bmltcGxlbWVudGVkIHN0YXRlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbkJhY2tlbmQuaCBiL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25CYWNrZW5kLmgKaW5kZXggNTUx
MDcxMGY3NDNmOTRkNDk4YTg1NmM2NmI0ZjI0ODllZDllMGU5MC4uOWNkYzIwODZiMTlkYjViNzJk
MmU4NjgwNGVmZDcyNDUwZDZkMmQwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbkJhY2tlbmQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uQmFja2VuZC5oCkBAIC00NCwxOCAr
NDQsOSBAQCBjbGFzcyBTUUxFcnJvcjsKIGNsYXNzIFNRTGl0ZVRyYW5zYWN0aW9uOwogY2xhc3Mg
U1FMU3RhdGVtZW50OwogY2xhc3MgU1FMVHJhbnNhY3Rpb247Ci1jbGFzcyBTUUxUcmFuc2FjdGlv
bkJhY2tlbmQ7CitjbGFzcyBTUUxUcmFuc2FjdGlvbldyYXBwZXI7CiBjbGFzcyBTUUxWYWx1ZTsK
IAotY2xhc3MgU1FMVHJhbnNhY3Rpb25XcmFwcGVyIDogcHVibGljIFRocmVhZFNhZmVSZWZDb3Vu
dGVkPFNRTFRyYW5zYWN0aW9uV3JhcHBlcj4gewotcHVibGljOgotICAgIHZpcnR1YWwgflNRTFRy
YW5zYWN0aW9uV3JhcHBlcigpIHsgfQotICAgIHZpcnR1YWwgYm9vbCBwZXJmb3JtUHJlZmxpZ2h0
KFNRTFRyYW5zYWN0aW9uQmFja2VuZCopID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgcGVyZm9ybVBv
c3RmbGlnaHQoU1FMVHJhbnNhY3Rpb25CYWNrZW5kKikgPSAwOwotICAgIHZpcnR1YWwgU1FMRXJy
b3IqIHNxbEVycm9yKCkgY29uc3QgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBoYW5kbGVDb21taXRG
YWlsZWRBZnRlclBvc3RmbGlnaHQoU1FMVHJhbnNhY3Rpb25CYWNrZW5kKikgPSAwOwotfTsKLQog
Y2xhc3MgU1FMVHJhbnNhY3Rpb25CYWNrZW5kIDogcHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVk
PFNRTFRyYW5zYWN0aW9uQmFja2VuZD4sIHB1YmxpYyBTUUxUcmFuc2FjdGlvblN0YXRlTWFjaGlu
ZTxTUUxUcmFuc2FjdGlvbkJhY2tlbmQ+IHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPFNRTFRy
YW5zYWN0aW9uQmFja2VuZD4gY3JlYXRlKERhdGFiYXNlKiwgUmVmUHRyPFNRTFRyYW5zYWN0aW9u
PiYmLCBSZWZQdHI8U1FMVHJhbnNhY3Rpb25XcmFwcGVyPiYmLCBib29sIHJlYWRPbmx5KTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>285729</attachid>
            <date>2016-08-10 09:11:39 -0700</date>
            <delta_ts>2016-08-10 09:47:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-160726-20160810091003.patch</filename>
            <type>text/plain</type>
            <size>17713</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA0MzE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTkxZTZkN2I0NTY1OThk
ODdhZTlmODQ2NWMyMGIxZDA2NzgzNGEzZC4uNTcxMjdhYjBmMTY3MDA4N2QyNGZlMGJlMWIzN2I5
ODhlMDIwNTA3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE2LTA4LTA5ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgTW92ZSBTUUxUcmFu
c2FjdGlvbkJhY2tlbmQgY29uc3RydWN0aW9uIGluc2lkZSBTUUxUcmFuc2FjdGlvbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYwNzI2CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBpcyB0aGUgZmly
c3Qgc3RlcCB0b3dhcmRzIHJlLW1lcmdpbmcgU1FMVHJhbnNhY3Rpb25CYWNrZW5kIGFuZCBTUUxU
cmFuc2FjdGlvbiBhbmQgY2xlYW4gdXAgdGhlIGNvZGUuCisKKyAgICAgICAgKiBNb2R1bGVzL3dl
YmRhdGFiYXNlL0NoYW5nZVZlcnNpb25XcmFwcGVyLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL3dl
YmRhdGFiYXNlL0NoYW5nZVZlcnNpb25XcmFwcGVyLmg6CisgICAgICAgICogTW9kdWxlcy93ZWJk
YXRhYmFzZS9EYXRhYmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEYXRhYmFzZTo6cGVyZm9y
bUNsb3NlKToKKyAgICAgICAgKFdlYkNvcmU6OkRhdGFiYXNlOjpzY2hlZHVsZVRyYW5zYWN0aW9u
U3RlcCk6CisgICAgICAgIChXZWJDb3JlOjpEYXRhYmFzZTo6Y2hhbmdlVmVyc2lvbik6CisgICAg
ICAgIChXZWJDb3JlOjpEYXRhYmFzZTo6dHJhbnNhY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6
RGF0YWJhc2U6OnJlYWRUcmFuc2FjdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpEYXRhYmFzZTo6
cnVuVHJhbnNhY3Rpb24pOgorICAgICAgICAqIE1vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2Uu
aDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlVGFzay5jcHA6CisgICAg
ICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbi5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTUUxUcmFuc2FjdGlvbjo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlNRTFRy
YW5zYWN0aW9uOjpTUUxUcmFuc2FjdGlvbik6CisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFz
ZS9TUUxUcmFuc2FjdGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6U1FMVHJhbnNhY3Rpb25XcmFw
cGVyOjp+U1FMVHJhbnNhY3Rpb25XcmFwcGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNRTFRyYW5z
YWN0aW9uOjpiYWNrZW5kKToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5z
YWN0aW9uQmFja2VuZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTUUxUcmFuc2FjdGlvbkJhY2tl
bmQ6OmxvY2tBY3F1aXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpTUUxUcmFuc2FjdGlvbkJhY2tl
bmQ6OnJlcXVlc3RUcmFuc2l0VG9TdGF0ZSk6CisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFz
ZS9TUUxUcmFuc2FjdGlvbkJhY2tlbmQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNRTFRyYW5zYWN0
aW9uV3JhcHBlcjo6flNRTFRyYW5zYWN0aW9uV3JhcHBlcik6IERlbGV0ZWQuCisKIDIwMTYtMDgt
MDkgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBDaGFyYWN0ZXJE
YXRhLmRhdGEgc2V0dGVyIG9wdGltaXphdGlvbiBpcyBub3Qgc3BlYy1jb21wbGlhbnQgYW5kIGlz
IG9ic2VydmFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJh
c2UvQ2hhbmdlVmVyc2lvbldyYXBwZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJk
YXRhYmFzZS9DaGFuZ2VWZXJzaW9uV3JhcHBlci5jcHAKaW5kZXggNTE1ZWMyOGY3NTc1NDMwNmJh
MTczZGRiOTNhNGJmMmZiZWJhOTY5Yi4uMzJkMDJlOTA3MGJhM2E4ZmY4ZDQ2Y2UxZjJlOGQzM2Y2
MjE3MzBhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9D
aGFuZ2VWZXJzaW9uV3JhcHBlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJk
YXRhYmFzZS9DaGFuZ2VWZXJzaW9uV3JhcHBlci5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2lu
Y2x1ZGUgIkRhdGFiYXNlLmgiCiAjaW5jbHVkZSAiU1FMRXJyb3IuaCIKKyNpbmNsdWRlICJTUUxU
cmFuc2FjdGlvbkJhY2tlbmQuaCIKICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJh
c2UvQ2hhbmdlVmVyc2lvbldyYXBwZXIuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0
YWJhc2UvQ2hhbmdlVmVyc2lvbldyYXBwZXIuaAppbmRleCBlZWMzMWYyNWNmYjg0MjUyYTY0NGY2
ZmJkY2I5MjM2NzAwNWIzMTI0Li4yY2NlN2E0ZWMwZDE5OGNmNGRlYjExOTBkMzVhZmI4YmRlOGQy
ZThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0NoYW5n
ZVZlcnNpb25XcmFwcGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFz
ZS9DaGFuZ2VWZXJzaW9uV3JhcHBlci5oCkBAIC0yOCw3ICsyOCw3IEBACiAjaWZuZGVmIENoYW5n
ZVZlcnNpb25XcmFwcGVyX2gKICNkZWZpbmUgQ2hhbmdlVmVyc2lvbldyYXBwZXJfaAogCi0jaW5j
bHVkZSAiU1FMVHJhbnNhY3Rpb25CYWNrZW5kLmgiCisjaW5jbHVkZSAiU1FMVHJhbnNhY3Rpb24u
aCIKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2UuY3BwCmluZGV4IGI4
MTAzZjFhOGZiMDA5ZTA3YTIwMGY0N2YwZjc4NGU3NmU5MWYzMGUuLmVlOWMyZGE0Y2JjNTRiN2Vh
NjIyMGU3NmE0YTAzOWVhNjZlNjNiM2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViZGF0YWJhc2UvRGF0YWJhc2UuY3BwCkBAIC0zMTIsOSArMzEyLDggQEAgdm9pZCBEYXRhYmFz
ZTo6cGVyZm9ybUNsb3NlKCkKICAgICAgICAgLy8gQ2xlYW4gdXAgdHJhbnNhY3Rpb25zIHRoYXQg
aGF2ZSBub3QgYmVlbiBzY2hlZHVsZWQgeWV0OgogICAgICAgICAvLyBUcmFuc2FjdGlvbiBwaGFz
ZSAxIGNsZWFudXAuIFNlZSBjb21tZW50IG9uICJXaGF0IGhhcHBlbnMgaWYgYQogICAgICAgICAv
LyB0cmFuc2FjdGlvbiBpcyBpbnRlcnJ1cHRlZD8iIGF0IHRoZSB0b3Agb2YgU1FMVHJhbnNhY3Rp
b25CYWNrZW5kLmNwcC4KLSAgICAgICAgUmVmUHRyPFNRTFRyYW5zYWN0aW9uQmFja2VuZD4gdHJh
bnNhY3Rpb247CiAgICAgICAgIHdoaWxlICghbV90cmFuc2FjdGlvblF1ZXVlLmlzRW1wdHkoKSkg
ewotICAgICAgICAgICAgdHJhbnNhY3Rpb24gPSBtX3RyYW5zYWN0aW9uUXVldWUudGFrZUZpcnN0
KCk7CisgICAgICAgICAgICBhdXRvIHRyYW5zYWN0aW9uID0gbV90cmFuc2FjdGlvblF1ZXVlLnRh
a2VGaXJzdCgpOwogICAgICAgICAgICAgdHJhbnNhY3Rpb24tPm5vdGlmeURhdGFiYXNlVGhyZWFk
SXNTaHV0dGluZ0Rvd24oKTsKICAgICAgICAgfQogCkBAIC01NzYsMzAgKzU3NSwxMiBAQCB2b2lk
IERhdGFiYXNlOjpzY2hlZHVsZVRyYW5zYWN0aW9uKCkKICAgICAgICAgbV90cmFuc2FjdGlvbklu
UHJvZ3Jlc3MgPSBmYWxzZTsKIH0KIAotUmVmUHRyPFNRTFRyYW5zYWN0aW9uQmFja2VuZD4gRGF0
YWJhc2U6OnJ1blRyYW5zYWN0aW9uKFJlZjxTUUxUcmFuc2FjdGlvbj4mJiB0cmFuc2FjdGlvbiwg
Ym9vbCByZWFkT25seSwgY29uc3QgQ2hhbmdlVmVyc2lvbkRhdGEqIGRhdGEpCi17Ci0gICAgTG9j
a0hvbGRlciBsb2NrZXIobV90cmFuc2FjdGlvbkluUHJvZ3Jlc3NNdXRleCk7Ci0gICAgaWYgKCFt
X2lzVHJhbnNhY3Rpb25RdWV1ZUVuYWJsZWQpCi0gICAgICAgIHJldHVybiBudWxscHRyOwotCi0g
ICAgUmVmUHRyPFNRTFRyYW5zYWN0aW9uV3JhcHBlcj4gd3JhcHBlcjsKLSAgICBpZiAoZGF0YSkK
LSAgICAgICAgd3JhcHBlciA9IENoYW5nZVZlcnNpb25XcmFwcGVyOjpjcmVhdGUoZGF0YS0+b2xk
VmVyc2lvbigpLCBkYXRhLT5uZXdWZXJzaW9uKCkpOwotCi0gICAgUmVmUHRyPFNRTFRyYW5zYWN0
aW9uQmFja2VuZD4gdHJhbnNhY3Rpb25CYWNrZW5kID0gU1FMVHJhbnNhY3Rpb25CYWNrZW5kOjpj
cmVhdGUodGhpcywgV1RGTW92ZSh0cmFuc2FjdGlvbiksIFdURk1vdmUod3JhcHBlciksIHJlYWRP
bmx5KTsKLSAgICBtX3RyYW5zYWN0aW9uUXVldWUuYXBwZW5kKHRyYW5zYWN0aW9uQmFja2VuZCk7
Ci0gICAgaWYgKCFtX3RyYW5zYWN0aW9uSW5Qcm9ncmVzcykKLSAgICAgICAgc2NoZWR1bGVUcmFu
c2FjdGlvbigpOwotCi0gICAgcmV0dXJuIHRyYW5zYWN0aW9uQmFja2VuZDsKLX0KLQotdm9pZCBE
YXRhYmFzZTo6c2NoZWR1bGVUcmFuc2FjdGlvblN0ZXAoU1FMVHJhbnNhY3Rpb25CYWNrZW5kKiB0
cmFuc2FjdGlvbikKK3ZvaWQgRGF0YWJhc2U6OnNjaGVkdWxlVHJhbnNhY3Rpb25TdGVwKFNRTFRy
YW5zYWN0aW9uQmFja2VuZCYgdHJhbnNhY3Rpb24pCiB7CiAgICAgaWYgKCFkYXRhYmFzZUNvbnRl
eHQoKS0+ZGF0YWJhc2VUaHJlYWQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgYXV0byB0YXNr
ID0gc3RkOjptYWtlX3VuaXF1ZTxEYXRhYmFzZVRyYW5zYWN0aW9uVGFzaz4odHJhbnNhY3Rpb24p
OworICAgIGF1dG8gdGFzayA9IHN0ZDo6bWFrZV91bmlxdWU8RGF0YWJhc2VUcmFuc2FjdGlvblRh
c2s+KCZ0cmFuc2FjdGlvbik7CiAgICAgTE9HKFN0b3JhZ2VBUEksICJTY2hlZHVsaW5nIERhdGFi
YXNlVHJhbnNhY3Rpb25UYXNrICVwIGZvciB0aGUgdHJhbnNhY3Rpb24gc3RlcFxuIiwgdGFzay5n
ZXQoKSk7CiAgICAgZGF0YWJhc2VDb250ZXh0KCktPmRhdGFiYXNlVGhyZWFkKCktPnNjaGVkdWxl
VGFzayhXVEZNb3ZlKHRhc2spKTsKIH0KQEAgLTY1MSwxOCArNjMyLDE3IEBAIHZvaWQgRGF0YWJh
c2U6Om1hcmtBc0RlbGV0ZWRBbmRDbG9zZSgpCiAKIHZvaWQgRGF0YWJhc2U6OmNoYW5nZVZlcnNp
b24oY29uc3QgU3RyaW5nJiBvbGRWZXJzaW9uLCBjb25zdCBTdHJpbmcmIG5ld1ZlcnNpb24sIFJl
ZlB0cjxTUUxUcmFuc2FjdGlvbkNhbGxiYWNrPiYmIGNhbGxiYWNrLCBSZWZQdHI8U1FMVHJhbnNh
Y3Rpb25FcnJvckNhbGxiYWNrPiYmIGVycm9yQ2FsbGJhY2ssIFJlZlB0cjxWb2lkQ2FsbGJhY2s+
JiYgc3VjY2Vzc0NhbGxiYWNrKQogewotICAgIENoYW5nZVZlcnNpb25EYXRhIGRhdGEob2xkVmVy
c2lvbiwgbmV3VmVyc2lvbik7Ci0gICAgcnVuVHJhbnNhY3Rpb24oV1RGTW92ZShjYWxsYmFjayks
IFdURk1vdmUoZXJyb3JDYWxsYmFjayksIFdURk1vdmUoc3VjY2Vzc0NhbGxiYWNrKSwgZmFsc2Us
ICZkYXRhKTsKKyAgICBydW5UcmFuc2FjdGlvbihXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShl
cnJvckNhbGxiYWNrKSwgV1RGTW92ZShzdWNjZXNzQ2FsbGJhY2spLCBDaGFuZ2VWZXJzaW9uV3Jh
cHBlcjo6Y3JlYXRlKG9sZFZlcnNpb24sIG5ld1ZlcnNpb24pLCBmYWxzZSk7CiB9CiAKIHZvaWQg
RGF0YWJhc2U6OnRyYW5zYWN0aW9uKFJlZlB0cjxTUUxUcmFuc2FjdGlvbkNhbGxiYWNrPiYmIGNh
bGxiYWNrLCBSZWZQdHI8U1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrPiYmIGVycm9yQ2FsbGJh
Y2ssIFJlZlB0cjxWb2lkQ2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxiYWNrKQogewotICAgIHJ1blRy
YW5zYWN0aW9uKFdURk1vdmUoY2FsbGJhY2spLCBXVEZNb3ZlKGVycm9yQ2FsbGJhY2spLCBXVEZN
b3ZlKHN1Y2Nlc3NDYWxsYmFjayksIGZhbHNlKTsKKyAgICBydW5UcmFuc2FjdGlvbihXVEZNb3Zl
KGNhbGxiYWNrKSwgV1RGTW92ZShlcnJvckNhbGxiYWNrKSwgV1RGTW92ZShzdWNjZXNzQ2FsbGJh
Y2spLCBudWxscHRyLCBmYWxzZSk7CiB9CiAKIHZvaWQgRGF0YWJhc2U6OnJlYWRUcmFuc2FjdGlv
bihSZWZQdHI8U1FMVHJhbnNhY3Rpb25DYWxsYmFjaz4mJiBjYWxsYmFjaywgUmVmUHRyPFNRTFRy
YW5zYWN0aW9uRXJyb3JDYWxsYmFjaz4mJiBlcnJvckNhbGxiYWNrLCBSZWZQdHI8Vm9pZENhbGxi
YWNrPiYmIHN1Y2Nlc3NDYWxsYmFjaykKIHsKLSAgICBydW5UcmFuc2FjdGlvbihXVEZNb3ZlKGNh
bGxiYWNrKSwgV1RGTW92ZShlcnJvckNhbGxiYWNrKSwgV1RGTW92ZShzdWNjZXNzQ2FsbGJhY2sp
LCB0cnVlKTsKKyAgICBydW5UcmFuc2FjdGlvbihXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShl
cnJvckNhbGxiYWNrKSwgV1RGTW92ZShzdWNjZXNzQ2FsbGJhY2spLCBudWxscHRyLCB0cnVlKTsK
IH0KIAogU3RyaW5nIERhdGFiYXNlOjpzdHJpbmdJZGVudGlmaWVyKCkgY29uc3QKQEAgLTc0Miwx
NyArNzIyLDIzIEBAIHZvaWQgRGF0YWJhc2U6OnJlc2V0QXV0aG9yaXplcigpCiAgICAgICAgIG1f
ZGF0YWJhc2VBdXRob3JpemVyLT5yZXNldCgpOwogfQogCi12b2lkIERhdGFiYXNlOjpydW5UcmFu
c2FjdGlvbihSZWZQdHI8U1FMVHJhbnNhY3Rpb25DYWxsYmFjaz4mJiBjYWxsYmFjaywgUmVmUHRy
PFNRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjaz4mJiBlcnJvckNhbGxiYWNrLCBSZWZQdHI8Vm9p
ZENhbGxiYWNrPiYmIHN1Y2Nlc3NDYWxsYmFjaywgYm9vbCByZWFkT25seSwgY29uc3QgQ2hhbmdl
VmVyc2lvbkRhdGEqIGNoYW5nZVZlcnNpb25EYXRhKQordm9pZCBEYXRhYmFzZTo6cnVuVHJhbnNh
Y3Rpb24oUmVmUHRyPFNRTFRyYW5zYWN0aW9uQ2FsbGJhY2s+JiYgY2FsbGJhY2ssIFJlZlB0cjxT
UUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2s+JiYgZXJyb3JDYWxsYmFjaywgUmVmUHRyPFZvaWRD
YWxsYmFjaz4mJiBzdWNjZXNzQ2FsbGJhY2ssIFJlZlB0cjxTUUxUcmFuc2FjdGlvbldyYXBwZXI+
JiYgd3JhcHBlciwgYm9vbCByZWFkT25seSkKIHsKLSAgICBSZWY8U1FMVHJhbnNhY3Rpb24+IHRy
YW5zYWN0aW9uID0gU1FMVHJhbnNhY3Rpb246OmNyZWF0ZSgqdGhpcywgV1RGTW92ZShjYWxsYmFj
ayksIFdURk1vdmUoc3VjY2Vzc0NhbGxiYWNrKSwgZXJyb3JDYWxsYmFjay5jb3B5UmVmKCksIHJl
YWRPbmx5KTsKLQotICAgIFJlZlB0cjxTUUxUcmFuc2FjdGlvbkJhY2tlbmQ+IHRyYW5zYWN0aW9u
QmFja2VuZCA9IHJ1blRyYW5zYWN0aW9uKFdURk1vdmUodHJhbnNhY3Rpb24pLCByZWFkT25seSwg
Y2hhbmdlVmVyc2lvbkRhdGEpOwotICAgIGlmICghdHJhbnNhY3Rpb25CYWNrZW5kICYmIGVycm9y
Q2FsbGJhY2spIHsKLSAgICAgICAgUmVmUHRyPFNRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjaz4g
ZXJyb3JDYWxsYmFja1Byb3RlY3RvciA9IFdURk1vdmUoZXJyb3JDYWxsYmFjayk7Ci0gICAgICAg
IG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+cG9zdFRhc2soW2Vycm9yQ2FsbGJhY2tQcm90ZWN0
b3JdKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmKSB7Ci0gICAgICAgICAgICBlcnJvckNhbGxiYWNr
UHJvdGVjdG9yLT5oYW5kbGVFdmVudChTUUxFcnJvcjo6Y3JlYXRlKFNRTEVycm9yOjpVTktOT1dO
X0VSUiwgImRhdGFiYXNlIGhhcyBiZWVuIGNsb3NlZCIpLnB0cigpKTsKLSAgICAgICAgfSk7Cisg
ICAgTG9ja0hvbGRlciBsb2NrZXIobV90cmFuc2FjdGlvbkluUHJvZ3Jlc3NNdXRleCk7CisgICAg
aWYgKCFtX2lzVHJhbnNhY3Rpb25RdWV1ZUVuYWJsZWQpIHsKKyAgICAgICAgaWYgKGVycm9yQ2Fs
bGJhY2spIHsKKyAgICAgICAgICAgIFJlZlB0cjxTUUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2s+
IGVycm9yQ2FsbGJhY2tQcm90ZWN0b3IgPSBXVEZNb3ZlKGVycm9yQ2FsbGJhY2spOworICAgICAg
ICAgICAgbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LT5wb3N0VGFzayhbZXJyb3JDYWxsYmFja1By
b3RlY3Rvcl0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYpIHsKKyAgICAgICAgICAgICAgICBlcnJv
ckNhbGxiYWNrUHJvdGVjdG9yLT5oYW5kbGVFdmVudChTUUxFcnJvcjo6Y3JlYXRlKFNRTEVycm9y
OjpVTktOT1dOX0VSUiwgImRhdGFiYXNlIGhhcyBiZWVuIGNsb3NlZCIpLnB0cigpKTsKKyAgICAg
ICAgICAgIH0pOworICAgICAgICB9CisgICAgICAgIHJldHVybjsKICAgICB9CisKKyAgICBhdXRv
IHRyYW5zYWN0aW9uID0gU1FMVHJhbnNhY3Rpb246OmNyZWF0ZSgqdGhpcywgV1RGTW92ZShjYWxs
YmFjayksIFdURk1vdmUoc3VjY2Vzc0NhbGxiYWNrKSwgZXJyb3JDYWxsYmFjay5jb3B5UmVmKCks
IFdURk1vdmUod3JhcHBlciksIHJlYWRPbmx5KTsKKyAgICBtX3RyYW5zYWN0aW9uUXVldWUuYXBw
ZW5kKCZ0cmFuc2FjdGlvbi0+YmFja2VuZCgpKTsKKyAgICBpZiAoIW1fdHJhbnNhY3Rpb25JblBy
b2dyZXNzKQorICAgICAgICBzY2hlZHVsZVRyYW5zYWN0aW9uKCk7CiB9CiAKIHZvaWQgRGF0YWJh
c2U6OnNjaGVkdWxlVHJhbnNhY3Rpb25DYWxsYmFjayhTUUxUcmFuc2FjdGlvbiogdHJhbnNhY3Rp
b24pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFi
YXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlLmgKaW5k
ZXggMWUxMDAwZjJiNWYwYTczOWUxNmE5ZjRlYjVkZTQzNjBkNDhkYzFjZi4uNTkwYzZiMzkwMWRl
ZDEwYTY0Y2M5OWI4NGYxODE2ZjBhZmM5ZjEyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2UuaApAQCAtMzgsNyArMzgsNiBAQAogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKLWNsYXNzIENoYW5nZVZlcnNpb25EYXRhOwogY2xhc3MgRGF0YWJhc2VDYWxs
YmFjazsKIGNsYXNzIERhdGFiYXNlRGV0YWlsczsKIGNsYXNzIERhdGFiYXNlQ29udGV4dDsKQEAg
LTUwLDYgKzQ5LDcgQEAgY2xhc3MgU1FMVHJhbnNhY3Rpb25DYWxsYmFjazsKIGNsYXNzIFNRTFRy
YW5zYWN0aW9uQ2xpZW50OwogY2xhc3MgU1FMVHJhbnNhY3Rpb25Db29yZGluYXRvcjsKIGNsYXNz
IFNRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjazsKK2NsYXNzIFNRTFRyYW5zYWN0aW9uV3JhcHBl
cjsKIGNsYXNzIFZvaWRDYWxsYmFjazsKIAogY2xhc3MgRGF0YWJhc2UgZmluYWwgOiBwdWJsaWMg
VGhyZWFkU2FmZVJlZkNvdW50ZWQ8RGF0YWJhc2U+IHsKQEAgLTY2LDggKzY2LDcgQEAgcHVibGlj
OgogCiAgICAgdW5zaWduZWQgbG9uZyBsb25nIG1heGltdW1TaXplKCkgY29uc3Q7CiAKLSAgICBS
ZWZQdHI8U1FMVHJhbnNhY3Rpb25CYWNrZW5kPiBydW5UcmFuc2FjdGlvbihSZWY8U1FMVHJhbnNh
Y3Rpb24+JiYsIGJvb2wgcmVhZE9ubHksIGNvbnN0IENoYW5nZVZlcnNpb25EYXRhKik7Ci0gICAg
dm9pZCBzY2hlZHVsZVRyYW5zYWN0aW9uU3RlcChTUUxUcmFuc2FjdGlvbkJhY2tlbmQqKTsKKyAg
ICB2b2lkIHNjaGVkdWxlVHJhbnNhY3Rpb25TdGVwKFNRTFRyYW5zYWN0aW9uQmFja2VuZCYpOwog
ICAgIHZvaWQgaW5Qcm9ncmVzc1RyYW5zYWN0aW9uQ29tcGxldGVkKCk7CiAKICAgICBib29sIGhh
c1BlbmRpbmdUcmFuc2FjdGlvbigpOwpAQCAtMTM5LDcgKzEzOCw3IEBAIHByaXZhdGU6CiAKICAg
ICB2b2lkIHNjaGVkdWxlVHJhbnNhY3Rpb24oKTsKIAotICAgIHZvaWQgcnVuVHJhbnNhY3Rpb24o
UmVmUHRyPFNRTFRyYW5zYWN0aW9uQ2FsbGJhY2s+JiYsIFJlZlB0cjxTUUxUcmFuc2FjdGlvbkVy
cm9yQ2FsbGJhY2s+JiYsIFJlZlB0cjxWb2lkQ2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxiYWNrLCBi
b29sIHJlYWRPbmx5LCBjb25zdCBDaGFuZ2VWZXJzaW9uRGF0YSogPSBudWxscHRyKTsKKyAgICB2
b2lkIHJ1blRyYW5zYWN0aW9uKFJlZlB0cjxTUUxUcmFuc2FjdGlvbkNhbGxiYWNrPiYmLCBSZWZQ
dHI8U1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrPiYmLCBSZWZQdHI8Vm9pZENhbGxiYWNrPiYm
IHN1Y2Nlc3NDYWxsYmFjaywgUmVmUHRyPFNRTFRyYW5zYWN0aW9uV3JhcHBlcj4mJiwgYm9vbCBy
ZWFkT25seSk7CiAKICNpZiAhTE9HX0RJU0FCTEVEIHx8ICFFUlJPUl9ESVNBQkxFRAogICAgIFN0
cmluZyBkYXRhYmFzZURlYnVnTmFtZSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVRhc2suY3BwIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVRhc2suY3BwCmluZGV4IGI4NzE1MTVkYjgzYTll
MDQwNWMwZDllNzI5YmJlZGVmYjk0ZjNiZjkuLmU1YzQyZGFiYTZiYTQyYzE4M2JmZWE5MjJkY2I0
ZjU4ODhhOWQzNWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJh
c2UvRGF0YWJhc2VUYXNrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFi
YXNlL0RhdGFiYXNlVGFzay5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2luY2x1ZGUgIkRhdGFi
YXNlLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgorI2luY2x1ZGUgIlNRTFRyYW5zYWN0aW9uLmgi
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uLmNwcAppbmRleCA1MWZkY2RlODMzOWY4YzQy
Mjg3NDRmNTY1YWNkM2UwNzkzYTQwMTI4Li40YjEzNmE1ZTk5MTlhZDZmYzZhN2Y4YmNlYjYxYmNh
ZDVkMzJjYmY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNl
L1NRTFRyYW5zYWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFi
YXNlL1NRTFRyYW5zYWN0aW9uLmNwcApAQCAtNDgsMTIgKzQ4LDEyIEBACiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotUmVmPFNRTFRyYW5zYWN0aW9uPiBTUUxUcmFuc2FjdGlvbjo6Y3JlYXRlKFJl
ZjxEYXRhYmFzZT4mJiBkYXRhYmFzZSwgUmVmUHRyPFNRTFRyYW5zYWN0aW9uQ2FsbGJhY2s+JiYg
Y2FsbGJhY2ssIFJlZlB0cjxWb2lkQ2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxiYWNrLCBSZWZQdHI8
U1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrPiYmIGVycm9yQ2FsbGJhY2ssIGJvb2wgcmVhZE9u
bHkpCitSZWY8U1FMVHJhbnNhY3Rpb24+IFNRTFRyYW5zYWN0aW9uOjpjcmVhdGUoUmVmPERhdGFi
YXNlPiYmIGRhdGFiYXNlLCBSZWZQdHI8U1FMVHJhbnNhY3Rpb25DYWxsYmFjaz4mJiBjYWxsYmFj
aywgUmVmUHRyPFZvaWRDYWxsYmFjaz4mJiBzdWNjZXNzQ2FsbGJhY2ssIFJlZlB0cjxTUUxUcmFu
c2FjdGlvbkVycm9yQ2FsbGJhY2s+JiYgZXJyb3JDYWxsYmFjaywgUmVmUHRyPFNRTFRyYW5zYWN0
aW9uV3JhcHBlcj4mJiB3cmFwcGVyLCBib29sIHJlYWRPbmx5KQogewotICAgIHJldHVybiBhZG9w
dFJlZigqbmV3IFNRTFRyYW5zYWN0aW9uKFdURk1vdmUoZGF0YWJhc2UpLCBXVEZNb3ZlKGNhbGxi
YWNrKSwgV1RGTW92ZShzdWNjZXNzQ2FsbGJhY2spLCBXVEZNb3ZlKGVycm9yQ2FsbGJhY2spLCBy
ZWFkT25seSkpOworICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFNRTFRyYW5zYWN0aW9uKFdURk1v
dmUoZGF0YWJhc2UpLCBXVEZNb3ZlKGNhbGxiYWNrKSwgV1RGTW92ZShzdWNjZXNzQ2FsbGJhY2sp
LCBXVEZNb3ZlKGVycm9yQ2FsbGJhY2spLCBXVEZNb3ZlKHdyYXBwZXIpLCByZWFkT25seSkpOwog
fQogCi1TUUxUcmFuc2FjdGlvbjo6U1FMVHJhbnNhY3Rpb24oUmVmPERhdGFiYXNlPiYmIGRhdGFi
YXNlLCBSZWZQdHI8U1FMVHJhbnNhY3Rpb25DYWxsYmFjaz4mJiBjYWxsYmFjaywgUmVmUHRyPFZv
aWRDYWxsYmFjaz4mJiBzdWNjZXNzQ2FsbGJhY2ssIFJlZlB0cjxTUUxUcmFuc2FjdGlvbkVycm9y
Q2FsbGJhY2s+JiYgZXJyb3JDYWxsYmFjaywgYm9vbCByZWFkT25seSkKK1NRTFRyYW5zYWN0aW9u
OjpTUUxUcmFuc2FjdGlvbihSZWY8RGF0YWJhc2U+JiYgZGF0YWJhc2UsIFJlZlB0cjxTUUxUcmFu
c2FjdGlvbkNhbGxiYWNrPiYmIGNhbGxiYWNrLCBSZWZQdHI8Vm9pZENhbGxiYWNrPiYmIHN1Y2Nl
c3NDYWxsYmFjaywgUmVmUHRyPFNRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjaz4mJiBlcnJvckNh
bGxiYWNrLCBSZWZQdHI8U1FMVHJhbnNhY3Rpb25XcmFwcGVyPiYmIHdyYXBwZXIsIGJvb2wgcmVh
ZE9ubHkpCiAgICAgOiBtX2RhdGFiYXNlKFdURk1vdmUoZGF0YWJhc2UpKQogICAgICwgbV9jYWxs
YmFja1dyYXBwZXIoV1RGTW92ZShjYWxsYmFjayksIG1fZGF0YWJhc2UtPnNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQoKSkKICAgICAsIG1fc3VjY2Vzc0NhbGxiYWNrV3JhcHBlcihXVEZNb3ZlKHN1Y2Nl
c3NDYWxsYmFjayksIG1fZGF0YWJhc2UtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkKQEAgLTYx
LDYgKzYxLDggQEAgU1FMVHJhbnNhY3Rpb246OlNRTFRyYW5zYWN0aW9uKFJlZjxEYXRhYmFzZT4m
JiBkYXRhYmFzZSwgUmVmUHRyPFNRTFRyYW5zYWN0aW9uQ2EKICAgICAsIG1fZXhlY3V0ZVNxbEFs
bG93ZWQoZmFsc2UpCiAgICAgLCBtX3JlYWRPbmx5KHJlYWRPbmx5KQogeworICAgIC8vIFRoaXMg
d2lsbCBlbmQgdXAgYXNzaWduaW5nIHRvIG1fZnJvbnRlbmQuCisgICAgU1FMVHJhbnNhY3Rpb25C
YWNrZW5kOjpjcmVhdGUobV9kYXRhYmFzZS5wdHIoKSwgdGhpcywgV1RGTW92ZSh3cmFwcGVyKSwg
cmVhZE9ubHkpOwogfQogCiBTUUxUcmFuc2FjdGlvbjo6flNRTFRyYW5zYWN0aW9uKCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb24u
aCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb24uaApp
bmRleCBkZGFjYzhiOThmYWJlNGM0YWM3MTY3MzlkM2Q5YWEzODk5NDZhZDlmLi5iMjVlOGU0MGYz
MDFiZDIxYTM2OTBmYzU5YmI3ODk1NjgyNWNiZTgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbi5oCkBAIC00NywxNiArNDcsMjYg
QEAgY2xhc3MgU1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrOwogY2xhc3MgU1FMVmFsdWU7CiBj
bGFzcyBWb2lkQ2FsbGJhY2s7CiAKK2NsYXNzIFNRTFRyYW5zYWN0aW9uV3JhcHBlciA6IHB1Ymxp
YyBUaHJlYWRTYWZlUmVmQ291bnRlZDxTUUxUcmFuc2FjdGlvbldyYXBwZXI+IHsKK3B1YmxpYzoK
KyAgICB2aXJ0dWFsIH5TUUxUcmFuc2FjdGlvbldyYXBwZXIoKSB7IH0KKyAgICB2aXJ0dWFsIGJv
b2wgcGVyZm9ybVByZWZsaWdodChTUUxUcmFuc2FjdGlvbkJhY2tlbmQqKSA9IDA7CisgICAgdmly
dHVhbCBib29sIHBlcmZvcm1Qb3N0ZmxpZ2h0KFNRTFRyYW5zYWN0aW9uQmFja2VuZCopID0gMDsK
KyAgICB2aXJ0dWFsIFNRTEVycm9yKiBzcWxFcnJvcigpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFs
IHZvaWQgaGFuZGxlQ29tbWl0RmFpbGVkQWZ0ZXJQb3N0ZmxpZ2h0KFNRTFRyYW5zYWN0aW9uQmFj
a2VuZCopID0gMDsKK307CisKIGNsYXNzIFNRTFRyYW5zYWN0aW9uIDogcHVibGljIFRocmVhZFNh
ZmVSZWZDb3VudGVkPFNRTFRyYW5zYWN0aW9uPiwgcHVibGljIFNRTFRyYW5zYWN0aW9uU3RhdGVN
YWNoaW5lPFNRTFRyYW5zYWN0aW9uPiB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxTUUxUcmFu
c2FjdGlvbj4gY3JlYXRlKFJlZjxEYXRhYmFzZT4mJiwgUmVmUHRyPFNRTFRyYW5zYWN0aW9uQ2Fs
bGJhY2s+JiYsIFJlZlB0cjxWb2lkQ2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxiYWNrLCBSZWZQdHI8
U1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrPiYmLCBib29sIHJlYWRPbmx5KTsKKyAgICBzdGF0
aWMgUmVmPFNRTFRyYW5zYWN0aW9uPiBjcmVhdGUoUmVmPERhdGFiYXNlPiYmLCBSZWZQdHI8U1FM
VHJhbnNhY3Rpb25DYWxsYmFjaz4mJiwgUmVmUHRyPFZvaWRDYWxsYmFjaz4mJiBzdWNjZXNzQ2Fs
bGJhY2ssIFJlZlB0cjxTUUxUcmFuc2FjdGlvbkVycm9yQ2FsbGJhY2s+JiYsIFJlZlB0cjxTUUxU
cmFuc2FjdGlvbldyYXBwZXI+JiYsIGJvb2wgcmVhZE9ubHkpOwogICAgIH5TUUxUcmFuc2FjdGlv
bigpOwogCi0gICAgdm9pZCBwZXJmb3JtUGVuZGluZ0NhbGxiYWNrKCk7Ci0KICAgICB2b2lkIGV4
ZWN1dGVTUUwoY29uc3QgU3RyaW5nJiBzcWxTdGF0ZW1lbnQsIGNvbnN0IFZlY3RvcjxTUUxWYWx1
ZT4mIGFyZ3VtZW50cywgUmVmUHRyPFNRTFN0YXRlbWVudENhbGxiYWNrPiYmLCBSZWZQdHI8U1FM
U3RhdGVtZW50RXJyb3JDYWxsYmFjaz4mJiwgRXhjZXB0aW9uQ29kZSYpOwogCisgICAgdm9pZCBw
ZXJmb3JtUGVuZGluZ0NhbGxiYWNrKCk7CisKICAgICBEYXRhYmFzZSYgZGF0YWJhc2UoKSB7IHJl
dHVybiBtX2RhdGFiYXNlOyB9CisgICAgU1FMVHJhbnNhY3Rpb25CYWNrZW5kJiBiYWNrZW5kKCkg
eyByZXR1cm4gKm1fYmFja2VuZDsgfQogCiAgICAgLy8gQVBJcyBjYWxsZWQgZnJvbSB0aGUgYmFj
a2VuZCBwdWJsaXNoZWQgdmlhIFNRTFRyYW5zYWN0aW9uOgogICAgIHZvaWQgcmVxdWVzdFRyYW5z
aXRUb1N0YXRlKFNRTFRyYW5zYWN0aW9uU3RhdGUpOwpAQCAtNjYsNyArNzYsNyBAQCBwdWJsaWM6
CiAgICAgdm9pZCBzZXRCYWNrZW5kKFNRTFRyYW5zYWN0aW9uQmFja2VuZCopOwogCiBwcml2YXRl
OgotICAgIFNRTFRyYW5zYWN0aW9uKFJlZjxEYXRhYmFzZT4mJiwgUmVmUHRyPFNRTFRyYW5zYWN0
aW9uQ2FsbGJhY2s+JiYsIFJlZlB0cjxWb2lkQ2FsbGJhY2s+JiYgc3VjY2Vzc0NhbGxiYWNrLCBS
ZWZQdHI8U1FMVHJhbnNhY3Rpb25FcnJvckNhbGxiYWNrPiYmLCBib29sIHJlYWRPbmx5KTsKKyAg
ICBTUUxUcmFuc2FjdGlvbihSZWY8RGF0YWJhc2U+JiYsIFJlZlB0cjxTUUxUcmFuc2FjdGlvbkNh
bGxiYWNrPiYmLCBSZWZQdHI8Vm9pZENhbGxiYWNrPiYmIHN1Y2Nlc3NDYWxsYmFjaywgUmVmUHRy
PFNRTFRyYW5zYWN0aW9uRXJyb3JDYWxsYmFjaz4mJiwgUmVmUHRyPFNRTFRyYW5zYWN0aW9uV3Jh
cHBlcj4mJiwgYm9vbCByZWFkT25seSk7CiAKICAgICB2b2lkIGNsZWFyQ2FsbGJhY2tXcmFwcGVy
cygpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL1NR
TFRyYW5zYWN0aW9uQmFja2VuZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFi
YXNlL1NRTFRyYW5zYWN0aW9uQmFja2VuZC5jcHAKaW5kZXggODhhMTM0OWMxMDViNWE5OWZmODU3
ZmUxMzMzMDEwNGNiYjYwN2UyYy4uYTg0YzgzYjE3YTRjMjU0ZmFjYzRkODFjN2NhOGM2YmQxNjBj
NTU4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9TUUxU
cmFuc2FjdGlvbkJhY2tlbmQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0
YWJhc2UvU1FMVHJhbnNhY3Rpb25CYWNrZW5kLmNwcApAQCAtNTQ2LDcgKzU0Niw3IEBAIHZvaWQg
U1FMVHJhbnNhY3Rpb25CYWNrZW5kOjpsb2NrQWNxdWlyZWQoKQogCiAgICAgbV9yZXF1ZXN0ZWRT
dGF0ZSA9IFNRTFRyYW5zYWN0aW9uU3RhdGU6Ok9wZW5UcmFuc2FjdGlvbkFuZFByZWZsaWdodDsK
ICAgICBBU1NFUlQobV9yZXF1ZXN0ZWRTdGF0ZSAhPSBTUUxUcmFuc2FjdGlvblN0YXRlOjpFbmQp
OwotICAgIG1fZGF0YWJhc2UtPnNjaGVkdWxlVHJhbnNhY3Rpb25TdGVwKHRoaXMpOworICAgIG1f
ZGF0YWJhc2UtPnNjaGVkdWxlVHJhbnNhY3Rpb25TdGVwKCp0aGlzKTsKIH0KIAogdm9pZCBTUUxU
cmFuc2FjdGlvbkJhY2tlbmQ6Om9wZW5UcmFuc2FjdGlvbkFuZFByZWZsaWdodCgpCkBAIC04MzAs
NyArODMwLDcgQEAgdm9pZCBTUUxUcmFuc2FjdGlvbkJhY2tlbmQ6OnJlcXVlc3RUcmFuc2l0VG9T
dGF0ZShTUUxUcmFuc2FjdGlvblN0YXRlIG5leHRTdGF0ZSkKICAgICBMT0coU3RvcmFnZUFQSSwg
IlNjaGVkdWxpbmcgJXMgZm9yIHRyYW5zYWN0aW9uICVwXG4iLCBuYW1lRm9yU1FMVHJhbnNhY3Rp
b25TdGF0ZShuZXh0U3RhdGUpLCB0aGlzKTsKICAgICBtX3JlcXVlc3RlZFN0YXRlID0gbmV4dFN0
YXRlOwogICAgIEFTU0VSVChtX3JlcXVlc3RlZFN0YXRlICE9IFNRTFRyYW5zYWN0aW9uU3RhdGU6
OkVuZCk7Ci0gICAgbV9kYXRhYmFzZS0+c2NoZWR1bGVUcmFuc2FjdGlvblN0ZXAodGhpcyk7Cisg
ICAgbV9kYXRhYmFzZS0+c2NoZWR1bGVUcmFuc2FjdGlvblN0ZXAoKnRoaXMpOwogfQogCiAvLyBU
aGlzIHN0YXRlIGZ1bmN0aW9uIGlzIHVzZWQgYXMgYSBzdHViIGZ1bmN0aW9uIHRvIHBsdWcgdW5p
bXBsZW1lbnRlZCBzdGF0ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
ZGF0YWJhc2UvU1FMVHJhbnNhY3Rpb25CYWNrZW5kLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYmRhdGFiYXNlL1NRTFRyYW5zYWN0aW9uQmFja2VuZC5oCmluZGV4IDU1MTA3MTBmNzQzZjk0
ZDQ5OGE4NTZjNjZiNGYyNDg5ZWQ5ZTBlOTAuLjljZGMyMDg2YjE5ZGI1YjcyZDJlODY4MDRlZmQ3
MjQ1MGQ2ZDJkMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJh
c2UvU1FMVHJhbnNhY3Rpb25CYWNrZW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJkYXRhYmFzZS9TUUxUcmFuc2FjdGlvbkJhY2tlbmQuaApAQCAtNDQsMTggKzQ0LDkgQEAgY2xh
c3MgU1FMRXJyb3I7CiBjbGFzcyBTUUxpdGVUcmFuc2FjdGlvbjsKIGNsYXNzIFNRTFN0YXRlbWVu
dDsKIGNsYXNzIFNRTFRyYW5zYWN0aW9uOwotY2xhc3MgU1FMVHJhbnNhY3Rpb25CYWNrZW5kOwor
Y2xhc3MgU1FMVHJhbnNhY3Rpb25XcmFwcGVyOwogY2xhc3MgU1FMVmFsdWU7CiAKLWNsYXNzIFNR
TFRyYW5zYWN0aW9uV3JhcHBlciA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZDxTUUxUcmFu
c2FjdGlvbldyYXBwZXI+IHsKLXB1YmxpYzoKLSAgICB2aXJ0dWFsIH5TUUxUcmFuc2FjdGlvbldy
YXBwZXIoKSB7IH0KLSAgICB2aXJ0dWFsIGJvb2wgcGVyZm9ybVByZWZsaWdodChTUUxUcmFuc2Fj
dGlvbkJhY2tlbmQqKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIHBlcmZvcm1Qb3N0ZmxpZ2h0KFNR
TFRyYW5zYWN0aW9uQmFja2VuZCopID0gMDsKLSAgICB2aXJ0dWFsIFNRTEVycm9yKiBzcWxFcnJv
cigpIGNvbnN0ID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgaGFuZGxlQ29tbWl0RmFpbGVkQWZ0ZXJQ
b3N0ZmxpZ2h0KFNRTFRyYW5zYWN0aW9uQmFja2VuZCopID0gMDsKLX07Ci0KIGNsYXNzIFNRTFRy
YW5zYWN0aW9uQmFja2VuZCA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZDxTUUxUcmFuc2Fj
dGlvbkJhY2tlbmQ+LCBwdWJsaWMgU1FMVHJhbnNhY3Rpb25TdGF0ZU1hY2hpbmU8U1FMVHJhbnNh
Y3Rpb25CYWNrZW5kPiB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxTUUxUcmFuc2FjdGlvbkJh
Y2tlbmQ+IGNyZWF0ZShEYXRhYmFzZSosIFJlZlB0cjxTUUxUcmFuc2FjdGlvbj4mJiwgUmVmUHRy
PFNRTFRyYW5zYWN0aW9uV3JhcHBlcj4mJiwgYm9vbCByZWFkT25seSk7Cg==
</data>
<flag name="review"
          id="309338"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>