<?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>163330</bug_id>
          
          <creation_ts>2016-10-12 05:54:17 -0700</creation_ts>
          <short_desc>WebRTC: [GTK] Update jhbuild environment for OpenWebRTC</short_desc>
          <delta_ts>2016-10-19 01:21:38 -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>WebKitGTK</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>
          
          <blocked>143211</blocked>
    
    <blocked>163327</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Bergkvist">adam.bergkvist</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>alex</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>pnormand</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1239257</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2016-10-12 05:54:17 -0700</bug_when>
    <thetext>It&apos;s not possible to run, for example, the test-send-receive (OpenWebRTC test) in the current jhbuild environment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1239262</commentid>
    <comment_count>1</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2016-10-12 06:07:22 -0700</bug_when>
    <thetext>What&apos;s missing? openh264 ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1239273</commentid>
    <comment_count>2</comment_count>
      <attachid>291355</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2016-10-12 07:32:01 -0700</bug_when>
    <thetext>Created attachment 291355
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1239281</commentid>
    <comment_count>3</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2016-10-12 07:59:24 -0700</bug_when>
    <thetext>Even with this patch the p2p demo barely works here between Chrome/Android and WebKitGTK. Can you check on your side Adam?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1239364</commentid>
    <comment_count>4</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2016-10-12 11:10:41 -0700</bug_when>
    <thetext>Thanks for taking a stab at this Philippe. I&apos;ll test it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1239721</commentid>
    <comment_count>5</comment_count>
      <attachid>291463</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2016-10-13 00:50:24 -0700</bug_when>
    <thetext>Created attachment 291463
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1240144</commentid>
    <comment_count>6</comment_count>
      <attachid>291582</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2016-10-14 00:29:15 -0700</bug_when>
    <thetext>Created attachment 291582
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1241429</commentid>
    <comment_count>7</comment_count>
      <attachid>291946</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2016-10-18 06:20:32 -0700</bug_when>
    <thetext>Created attachment 291946
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1241430</commentid>
    <comment_count>8</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2016-10-18 06:33:06 -0700</bug_when>
    <thetext>Adam please check this on your antique distro before I land the patch :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1241855</commentid>
    <comment_count>9</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2016-10-18 23:47:32 -0700</bug_when>
    <thetext>Can you provide the patch in &quot;Dead Sea Scrolls&quot; format for my distro. ;)

I&apos;ll test it. Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1241875</commentid>
    <comment_count>10</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2016-10-19 00:59:50 -0700</bug_when>
    <thetext>The patch works for me. Thanks philn</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1241879</commentid>
    <comment_count>11</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2016-10-19 01:21:38 -0700</bug_when>
    <thetext>Committed r207531: &lt;http://trac.webkit.org/changeset/207531&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>291355</attachid>
            <date>2016-10-12 07:32:01 -0700</date>
            <delta_ts>2016-10-13 00:50:24 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch.patch</filename>
            <type>text/plain</type>
            <size>28740</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">RnJvbSAxMzVlZWU4MTQzNWE2ZmJmMjcxNGJlMWVmNTViY2YyNTkxOGIwN2VlIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwZSBOb3JtYW5kIDxwbm9ybWFuZEBpZ2FsaWEuY29t
PgpEYXRlOiBXZWQsIDEyIE9jdCAyMDE2IDE2OjI3OjQyICswMjAwClN1YmplY3Q6IFtQQVRDSF0g
cGF0Y2gKCi0tLQogVG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgMjIgKysKIFRvb2xzL2d0ay9vcGVud2VicnRjLm1vZHVsZXMgICAgICAgICAgICAg
ICAgICAgICAgIHwgIDc5ICsrKysrKysKIC4uLmxpYm5pY2UtMDAwMS1UVVJOLWFsbG93LVJFQUxN
LXRvLWJlLWVtcHR5LnBhdGNoIHwgIDUwICsrKysKIC4uLi0wMDAxLWFnZW50LVJlbW92ZS11bm5l
Y2Vzc2FyeS1OVUxMLWNoZWNrLnBhdGNoIHwgIDQ0ICsrKysKIC4uLm4tdGhlLWFnZW50LW1haW5s
b29wLWluLWEtc2VwYXJhdGUtdGhyZWFkLnBhdGNoIHwgMjUzICsrKysrKysrKysrKysrKysrKysr
KwogLi4uMi1Eby1ub3QtdXBkYXRlLWEtcmVtb3RlLWNhbmRpZGF0ZS1zLXR5cGUucGF0Y2ggfCAg
MzEgKysrCiAuLi4taGFuZGxlLTQzNy1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5wYXRj
aCB8IDEzMSArKysrKysrKysrKwogLi4uYXJlLXNjb3BlLWZvci1JUHY2LWFkZHJlc3Mtd2hlbi1z
Y29wZS1pcy0ucGF0Y2ggfCAgNDMgKysrKwogLi4uL2xpYm5pY2UtMDAwNC1SZW1vdmluZy1uby1v
cC1hc3NpZ25tZW50LnBhdGNoICAgfCAgMjQgKysKIDkgZmlsZXMgY2hhbmdlZCwgNjc3IGluc2Vy
dGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBUb29scy9ndGsvb3BlbndlYnJ0Yy5tb2R1bGVz
CiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAxLVRVUk4t
YWxsb3ctUkVBTE0tdG8tYmUtZW1wdHkucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBUb29scy9n
dGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtYWdlbnQtUmVtb3ZlLXVubmVjZXNzYXJ5LU5VTEwtY2hl
Y2sucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBUb29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAw
MDEtbmljZXNyYy1zcGluLXRoZS1hZ2VudC1tYWlubG9vcC1pbi1hLXNlcGFyYXRlLXRocmVhZC5w
YXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IFRvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMi1E
by1ub3QtdXBkYXRlLWEtcmVtb3RlLWNhbmRpZGF0ZS1zLXR5cGUucGF0Y2gKIGNyZWF0ZSBtb2Rl
IDEwMDY0NCBUb29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDItVFVSTi1oYW5kbGUtNDM3LUFs
bG9jYXRpb24tTWlzbWF0Y2gtcmVzcG9uc2VzLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9v
bHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAzLURvLW5vdC1jb21wYXJlLXNjb3BlLWZvci1JUHY2
LWFkZHJlc3Mtd2hlbi1zY29wZS1pcy0ucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBUb29scy9n
dGsvcGF0Y2hlcy9saWJuaWNlLTAwMDQtUmVtb3Zpbmctbm8tb3AtYXNzaWdubWVudC5wYXRjaAoK
ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBiMTc5
Y2ViLi5lYmY1NDZlIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTYtMTAtMTIgIFBoaWxpcHBlIE5vcm1hbmQgIDxw
bm9ybWFuZEBpZ2FsaWEuY29tPgorCisgICAgICAgIFdlYlJUQzogW0dUS10gVXBkYXRlIGpoYnVp
bGQgZW52aXJvbm1lbnQgZm9yIE9wZW5XZWJSVEMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MzMzMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEJyaW5nIGJhY2sgdGhlIG9wZW53ZWJydGMgSkhCdWlsZCBt
b2R1bGVzZXQgaW4gdGhlIHRpbWUgYmVpbmcuIEl0CisgICAgICAgIHNob3VsZCBiZSByZW1vdmVk
IGFmdGVyIHRoZSBidW1wIHRvIEdTdHJlYW1lciAxLjEwIGlzIGNvbXBsZXRlIGFuZAorICAgICAg
ICB0aGUgbGlibmljZSBwYXRjaGVzIGhhdmUgYmVlbiB1cHN0cmVhbWVkLiBUaGUgR1N0cmVhbWVy
IGdpdAorICAgICAgICBzbmFwc2hvdHMgdXNlZCBpbiB0aGlzIHBhdGNoIGFyZSB0aGUgb25lcyBj
b25maWd1cmVkIGluIEVyaWNzc29uJ3MKKyAgICAgICAgR1N0cmVhbWVyIENlcmJlcm8gZm9yay4K
KworICAgICAgICAqIGd0ay9vcGVud2VicnRjLm1vZHVsZXM6IEFkZGVkLgorICAgICAgICAqIGd0
ay9wYXRjaGVzL2xpYm5pY2UtMDAwMS1UVVJOLWFsbG93LVJFQUxNLXRvLWJlLWVtcHR5LnBhdGNo
OiBBZGRlZC4KKyAgICAgICAgKiBndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtYWdlbnQtUmVtb3Zl
LXVubmVjZXNzYXJ5LU5VTEwtY2hlY2sucGF0Y2g6IEFkZGVkLgorICAgICAgICAqIGd0ay9wYXRj
aGVzL2xpYm5pY2UtMDAwMS1uaWNlc3JjLXNwaW4tdGhlLWFnZW50LW1haW5sb29wLWluLWEtc2Vw
YXJhdGUtdGhyZWFkLnBhdGNoOiBBZGRlZC4KKyAgICAgICAgKiBndGsvcGF0Y2hlcy9saWJuaWNl
LTAwMDItRG8tbm90LXVwZGF0ZS1hLXJlbW90ZS1jYW5kaWRhdGUtcy10eXBlLnBhdGNoOiBBZGRl
ZC4KKyAgICAgICAgKiBndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDItVFVSTi1oYW5kbGUtNDM3LUFs
bG9jYXRpb24tTWlzbWF0Y2gtcmVzcG9uc2VzLnBhdGNoOiBBZGRlZC4KKyAgICAgICAgKiBndGsv
cGF0Y2hlcy9saWJuaWNlLTAwMDMtRG8tbm90LWNvbXBhcmUtc2NvcGUtZm9yLUlQdjYtYWRkcmVz
cy13aGVuLXNjb3BlLWlzLS5wYXRjaDogQWRkZWQuCisgICAgICAgICogZ3RrL3BhdGNoZXMvbGli
bmljZS0wMDA0LVJlbW92aW5nLW5vLW9wLWFzc2lnbm1lbnQucGF0Y2g6IEFkZGVkLgorCiAyMDE2
LTEwLTExICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAg
ICAgICAgVXBkYXRlIEFQSSB0ZXN0IGV4cGVjdGF0aW9uIGFmdGVyIHIyMDcxNjIuCmRpZmYgLS1n
aXQgYS9Ub29scy9ndGsvb3BlbndlYnJ0Yy5tb2R1bGVzIGIvVG9vbHMvZ3RrL29wZW53ZWJydGMu
bW9kdWxlcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNmFjYmIyCi0tLSAv
ZGV2L251bGwKKysrIGIvVG9vbHMvZ3RrL29wZW53ZWJydGMubW9kdWxlcwpAQCAtMCwwICsxLDc5
IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiPz4KKzwhRE9DVFlQRSBtb2R1bGVzZXQgU1lTVEVNICJt
b2R1bGVzZXQuZHRkIj4KKzw/eG1sLXN0eWxlc2hlZXQgdHlwZT0idGV4dC94c2wiIGhyZWY9Im1v
ZHVsZXNldC54c2wiPz4KKzxtb2R1bGVzZXQ+CisKKyAgPHJlcG9zaXRvcnkgdHlwZT0idGFyYmFs
bCIgbmFtZT0iZ2l0aHViLXRhcmJhbGwiCisgICAgICBocmVmPSJodHRwczovL2dpdGh1Yi5jb20v
Ii8+CisgIDxyZXBvc2l0b3J5IHR5cGU9ImdpdCIgbmFtZT0iZ3N0cmVhbWVyIgorICAgICAgaHJl
Zj0iZ2l0Oi8vYW5vbmdpdC5mcmVlZGVza3RvcC5vcmcvZ2l0L2dzdHJlYW1lci8iLz4KKyAgPHJl
cG9zaXRvcnkgdHlwZT0idGFyYmFsbCIgbmFtZT0ibmljZS5mcmVlZGVza3RvcC5vcmciCisgICAg
ICBocmVmPSJodHRwOi8vbmljZS5mcmVlZGVza3RvcC5vcmciLz4KKworICA8YXV0b3Rvb2xzIGlk
PSJvcGVuaDI2NCIgc3VwcG9ydHMtbm9uLXNyY2Rpci1idWlsZHM9Im5vIiBhdXRvZ2VuLXNoPSJw
c2V1ZG8tY29uZmlndXJlIj4KKyAgICA8YnJhbmNoIG1vZHVsZT0iY2lzY28vb3BlbmgyNjQvYXJj
aGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiIHZlcnNpb249IjEuNS4wIgorICAgICAgICAgICAgY2hl
Y2tvdXRkaXI9Im9wZW5oMjY0LSR7dmVyc2lvbn0iIHJlcG89ImdpdGh1Yi10YXJiYWxsIj4KKyAg
ICAgIDxwYXRjaCBmaWxlPSJvcGVuaDI2NC1jb25maWd1cmUucGF0Y2giIHN0cmlwPSIwIi8+Cisg
ICAgPC9icmFuY2g+CisgIDwvYXV0b3Rvb2xzPgorCisgIDxhdXRvdG9vbHMgaWQ9ImxpYm5pY2Ui
IHN1cHBvcnRzLW5vbi1zcmNkaXItYnVpbGRzPSJubyI+CisgICAgPGRlcGVuZGVuY2llcz4KKyAg
ICAgIDxkZXAgcGFja2FnZT0iZ3N0cmVhbWVyIi8+CisgICAgPC9kZXBlbmRlbmNpZXM+CisgICAg
PGJyYW5jaCByZXBvPSJuaWNlLmZyZWVkZXNrdG9wLm9yZyIgbW9kdWxlPSJyZWxlYXNlcy9saWJu
aWNlLSR7dmVyc2lvbn0udGFyLmd6IiB2ZXJzaW9uPSIwLjEuMTMiIGNoZWNrb3V0ZGlyPSJsaWJu
aWNlLSR7dmVyc2lvbn0iPgorICAgICAgPHBhdGNoIGZpbGU9ImxpYm5pY2UtMDAwMS1hZ2VudC1S
ZW1vdmUtdW5uZWNlc3NhcnktTlVMTC1jaGVjay5wYXRjaCIgc3RyaXA9IjEiLz4KKyAgICAgIDxw
YXRjaCBmaWxlPSJsaWJuaWNlLTAwMDItRG8tbm90LXVwZGF0ZS1hLXJlbW90ZS1jYW5kaWRhdGUt
cy10eXBlLnBhdGNoIiBzdHJpcD0iMSIvPgorICAgICAgPHBhdGNoIGZpbGU9ImxpYm5pY2UtMDAw
My1Eby1ub3QtY29tcGFyZS1zY29wZS1mb3ItSVB2Ni1hZGRyZXNzLXdoZW4tc2NvcGUtaXMtLnBh
dGNoIiBzdHJpcD0iMSIvPgorICAgICAgPHBhdGNoIGZpbGU9ImxpYm5pY2UtMDAwNC1SZW1vdmlu
Zy1uby1vcC1hc3NpZ25tZW50LnBhdGNoIiBzdHJpcD0iMSIvPgorICAgICAgPHBhdGNoIGZpbGU9
ImxpYm5pY2UtMDAwMS1uaWNlc3JjLXNwaW4tdGhlLWFnZW50LW1haW5sb29wLWluLWEtc2VwYXJh
dGUtdGhyZWFkLnBhdGNoIiBzdHJpcD0iMSIvPgorICAgICAgPHBhdGNoIGZpbGU9ImxpYm5pY2Ut
MDAwMS1UVVJOLWFsbG93LVJFQUxNLXRvLWJlLWVtcHR5LnBhdGNoIiBzdHJpcD0iMSIvPgorICAg
ICAgPHBhdGNoIGZpbGU9ImxpYm5pY2UtMDAwMi1UVVJOLWhhbmRsZS00MzctQWxsb2NhdGlvbi1N
aXNtYXRjaC1yZXNwb25zZXMucGF0Y2giIHN0cmlwPSIxIi8+CisgICAgPC9icmFuY2g+CisgIDwv
YXV0b3Rvb2xzPgorCisgIDxhdXRvdG9vbHMgaWQ9ImdzdHJlYW1lciIgYXV0b2dlbmFyZ3M9Ii0t
ZGlzYWJsZS1ndGstZG9jIj4KKyAgICA8aWYgY29uZGl0aW9uLXNldD0ibWFjb3MiPgorICAgICAg
PGF1dG9nZW5hcmdzIHZhbHVlPSItLWRpc2FibGUtaW50cm9zcGVjdGlvbiIvPgorICAgIDwvaWY+
CisgICAgPGRlcGVuZGVuY2llcz4KKyAgICAgIDxkZXAgcGFja2FnZT0ib3JjIi8+CisgICAgPC9k
ZXBlbmRlbmNpZXM+CisgICAgPGJyYW5jaCByZXBvPSJnc3RyZWFtZXIiIG1vZHVsZT0iZ3N0cmVh
bWVyIiBjaGVja291dGRpcj0iZ3N0cmVhbWVyLWI2ZTY5ZmZkZmIzYmIyMWRiYWRhOGYwMWI0ODhh
ZTg3N2Y4ZDIwNWMiIHRhZz0iYjZlNjlmZmRmYjNiYjIxZGJhZGE4ZjAxYjQ4OGFlODc3ZjhkMjA1
YyIvPgorICA8L2F1dG90b29scz4KKworICA8YXV0b3Rvb2xzIGlkPSJnc3QtcGx1Z2lucy1iYXNl
IgorICAgICAgICAgICAgIGF1dG9nZW4tc2g9ImF1dG9nZW4uc2giCisgICAgICAgICAgICAgYXV0
b2dlbmFyZ3M9Ii0tZGlzYWJsZS1leGFtcGxlcyAtLWRpc2FibGUtZ3RrLWRvYyI+CisgICAgPGlm
IGNvbmRpdGlvbi1zZXQ9Im1hY29zIj4KKyAgICAgIDxhdXRvZ2VuYXJncyB2YWx1ZT0iLS1kaXNh
YmxlLWludHJvc3BlY3Rpb24iLz4KKyAgICA8L2lmPgorICAgIDxkZXBlbmRlbmNpZXM+CisgICAg
ICA8ZGVwIHBhY2thZ2U9ImdzdHJlYW1lciIvPgorICAgIDwvZGVwZW5kZW5jaWVzPgorICAgIDxi
cmFuY2ggcmVwbz0iZ3N0cmVhbWVyIiBtb2R1bGU9ImdzdC1wbHVnaW5zLWJhc2UiIGNoZWNrb3V0
ZGlyPSJnc3QtcGx1Z2lucy1iYXNlLWNmMThmYWU5ZGViMDJmMDg2N2I2NzU5M2Y2NzhiOTMyZjhl
YjkzMWEiIHRhZz0iY2YxOGZhZTlkZWIwMmYwODY3YjY3NTkzZjY3OGI5MzJmOGViOTMxYSIvPgor
ICA8L2F1dG90b29scz4KKworICA8YXV0b3Rvb2xzIGlkPSJnc3QtcGx1Z2lucy1nb29kIiBhdXRv
Z2VuYXJncz0iLS1kaXNhYmxlLWV4YW1wbGVzIC0tZGlzYWJsZS1zb3VwIC0tZGlzYWJsZS1ndGst
ZG9jIj4KKyAgICA8aWYgY29uZGl0aW9uLXNldD0ibWFjb3MiPgorICAgICAgPGF1dG9nZW5hcmdz
IHZhbHVlPSItLWRpc2FibGUtaW50cm9zcGVjdGlvbiIvPgorICAgIDwvaWY+CisgICAgPGRlcGVu
ZGVuY2llcz4KKyAgICAgIDxkZXAgcGFja2FnZT0iZ3N0LXBsdWdpbnMtYmFzZSIvPgorICAgIDwv
ZGVwZW5kZW5jaWVzPgorICAgICA8YnJhbmNoIHJlcG89ImdzdHJlYW1lciIgbW9kdWxlPSJnc3Qt
cGx1Z2lucy1nb29kIiBjaGVja291dGRpcj0iZ3N0LXBsdWdpbnMtZ29vZC01NjdhZmRkNGQzZjJm
YTA3ZmVjZjRjMDJhN2VjYTcwZjdhN2VmN2Y3IiB0YWc9IjU2N2FmZGQ0ZDNmMmZhMDdmZWNmNGMw
MmE3ZWNhNzBmN2E3ZWY3ZjciLz4KKyAgPC9hdXRvdG9vbHM+CisKKyAgPGF1dG90b29scyBpZD0i
Z3N0LXBsdWdpbnMtYmFkIiBhdXRvZ2VuYXJncz0iLS1kaXNhYmxlLWV4YW1wbGVzIC0tZGlzYWJs
ZS1ndGstZG9jIC0tZW5hYmxlLW9wZW5oMjY0Ij4KKyAgICA8aWYgY29uZGl0aW9uLXNldD0ibWFj
b3MiPgorICAgICAgPGF1dG9nZW5hcmdzIHZhbHVlPSItLWRpc2FibGUtaW50cm9zcGVjdGlvbiIv
PgorICAgIDwvaWY+CisgICAgPGRlcGVuZGVuY2llcz4KKyAgICAgIDxkZXAgcGFja2FnZT0iZ3N0
LXBsdWdpbnMtYmFzZSIvPgorICAgICAgPGRlcCBwYWNrYWdlPSJvcGVud2VicnRjIi8+CisgICAg
ICA8ZGVwIHBhY2thZ2U9Im9wZW5oMjY0Ii8+CisgICAgPC9kZXBlbmRlbmNpZXM+CisgICAgPGJy
YW5jaCByZXBvPSJnc3RyZWFtZXIiIG1vZHVsZT0iZ3N0LXBsdWdpbnMtYmFkIiBjaGVja291dGRp
cj0iZ3N0LXBsdWdpbnMtYmFkLWEwMzZiN2VmOWZmZTlmZTVkYWM0YTdlNDZmYmMzYmFjOTI5MjFh
NTQiIHRhZz0iYTAzNmI3ZWY5ZmZlOWZlNWRhYzRhN2U0NmZiYzNiYWM5MjkyMWE1NCIvPgorICA8
L2F1dG90b29scz4KKyAgCis8L21vZHVsZXNldD4KZGlmZiAtLWdpdCBhL1Rvb2xzL2d0ay9wYXRj
aGVzL2xpYm5pY2UtMDAwMS1UVVJOLWFsbG93LVJFQUxNLXRvLWJlLWVtcHR5LnBhdGNoIGIvVG9v
bHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAxLVRVUk4tYWxsb3ctUkVBTE0tdG8tYmUtZW1wdHku
cGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2Y1MmU0MAotLS0gL2Rl
di9udWxsCisrKyBiL1Rvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMS1UVVJOLWFsbG93LVJF
QUxNLXRvLWJlLWVtcHR5LnBhdGNoCkBAIC0wLDAgKzEsNTAgQEAKK0Zyb20gMGM1NTE2NmE4MTdl
YzUxMDk2NDYwZjc4OTIzNGVmNDkyMzcwMDBjYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zy
b206IEFsZXNzYW5kcm8gRGVjaW5hIDxhbGVzc2FuZHJvLmRAZ21haWwuY29tPgorRGF0ZTogVGh1
LCAyNCBNYXIgMjAxNiAxMDo0ODoyNyArMTEwMAorU3ViamVjdDogW1BBVENIIDEvMl0gVFVSTjog
YWxsb3cgUkVBTE0gdG8gYmUgZW1wdHkKKworLS0tCisgYWdlbnQvY29ubmNoZWNrLmMgfCA2ICsr
LS0tLQorIHN0dW4vc3R1bmhtYWMuYyAgIHwgNiArKysrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYg
aW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2FnZW50L2Nvbm5j
aGVjay5jIGIvYWdlbnQvY29ubmNoZWNrLmMKK2luZGV4IDA1N2ZjODEuLjk3YmY1MzYgMTAwNjQ0
CistLS0gYS9hZ2VudC9jb25uY2hlY2suYworKysrIGIvYWdlbnQvY29ubmNoZWNrLmMKK0BAIC0y
NzY4LDEzICsyNzY4LDExIEBAIHN0YXRpYyBnYm9vbGVhbiBwcml2X21hcF9yZXBseV90b19yZWxh
eV9yZXF1ZXN0IChOaWNlQWdlbnQgKmFnZW50LCBTdHVuTWVzc2FnZSAqCisgICAgICAgICAgICAg
ICAgYWdlbnQtPmNvbXBhdGliaWxpdHkgPT0gTklDRV9DT01QQVRJQklMSVRZX09DMjAwN1IyKSAm
JgorICAgICAgICAgICAgICAgc3R1bl9tZXNzYWdlX2dldF9jbGFzcyAocmVzcCkgPT0gU1RVTl9F
UlJPUiAmJgorICAgICAgICAgICAgICAgc3R1bl9tZXNzYWdlX2ZpbmRfZXJyb3IgKHJlc3AsICZj
b2RlKSA9PQorLSAgICAgICAgICAgICAgU1RVTl9NRVNTQUdFX1JFVFVSTl9TVUNDRVNTICYmCist
ICAgICAgICAgICAgICByZWN2X3JlYWxtICE9IE5VTEwgJiYgcmVjdl9yZWFsbV9sZW4gPiAwKSB7
CistCisrICAgICAgICAgICAgICBTVFVOX01FU1NBR0VfUkVUVVJOX1NVQ0NFU1MpIHsKKyAgICAg
ICAgICAgICBpZiAoY29kZSA9PSA0MzggfHwKKyAgICAgICAgICAgICAgICAgKGNvZGUgPT0gNDAx
ICYmCisgICAgICAgICAgICAgICAgICAgICAhKHJlY3ZfcmVhbG1fbGVuID09IHNlbnRfcmVhbG1f
bGVuICYmCistICAgICAgICAgICAgICAgICAgICAgICAgc2VudF9yZWFsbSAhPSBOVUxMICYmCisr
ICAgICAgICAgICAgICAgICAgICAgICAgcmVjdl9yZWFsbSAhPSBOVUxMICYmIHNlbnRfcmVhbG0g
IT0gTlVMTCAmJgorICAgICAgICAgICAgICAgICAgICAgICAgIG1lbWNtcCAoc2VudF9yZWFsbSwg
cmVjdl9yZWFsbSwgc2VudF9yZWFsbV9sZW4pID09IDApKSkgeworICAgICAgICAgICAgICAgZC0+
c3R1bl9yZXNwX21zZyA9ICpyZXNwOworICAgICAgICAgICAgICAgbWVtY3B5IChkLT5zdHVuX3Jl
c3BfYnVmZmVyLCByZXNwLT5idWZmZXIsCitkaWZmIC0tZ2l0IGEvc3R1bi9zdHVuaG1hYy5jIGIv
c3R1bi9zdHVuaG1hYy5jCitpbmRleCBkZjVkZWI2Li5mNzM5NDNmIDEwMDY0NAorLS0tIGEvc3R1
bi9zdHVuaG1hYy5jCisrKysgYi9zdHVuL3N0dW5obWFjLmMKK0BAIC05MCw4ICs5MCwxMCBAQCBz
dGF0aWMgY29uc3QgdWludDhfdCAqcHJpdl90cmltX3ZhciAoY29uc3QgdWludDhfdCAqdmFyLCBz
aXplX3QgKnZhcl9sZW4pCisgICAgIHB0cisrOworICAgICAoKnZhcl9sZW4pLS07CisgICB9Cist
ICB3aGlsZShwdHJbKnZhcl9sZW4tMV0gPT0gJyInIHx8CistICAgICAgcHRyWyp2YXJfbGVuLTFd
ID09IDApIHsKKysKKysgIHdoaWxlKCp2YXJfbGVuID4gMCAmJgorKyAgICAgIChwdHJbKnZhcl9s
ZW4tMV0gPT0gJyInIHx8CisrICAgICAgcHRyWyp2YXJfbGVuLTFdID09IDApKSB7CisgICAgICgq
dmFyX2xlbiktLTsKKyAgIH0KKyAKKy0tIAorMi4zLjQKKwpkaWZmIC0tZ2l0IGEvVG9vbHMvZ3Rr
L3BhdGNoZXMvbGlibmljZS0wMDAxLWFnZW50LVJlbW92ZS11bm5lY2Vzc2FyeS1OVUxMLWNoZWNr
LnBhdGNoIGIvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAxLWFnZW50LVJlbW92ZS11bm5l
Y2Vzc2FyeS1OVUxMLWNoZWNrLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLmI0ZWNmOGMKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNl
LTAwMDEtYWdlbnQtUmVtb3ZlLXVubmVjZXNzYXJ5LU5VTEwtY2hlY2sucGF0Y2gKQEAgLTAsMCAr
MSw0NCBAQAorRnJvbSA3YjdkMmQ5ODY4NzZmYzUzYTIzYWY3YjUxNmQ3OGY4MmYyYTU0NmU5IE1v
biBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogUGhpbGlwIFdpdGhuYWxsIDxwaGlsaXBAdGVj
bm9jb2RlLmNvLnVrPgorRGF0ZTogU3VuLCAzIE1heSAyMDE1IDE2OjA1OjMwICswMTAwCitTdWJq
ZWN0OiBbUEFUQ0ggMS80XSBhZ2VudDogUmVtb3ZlIHVubmVjZXNzYXJ5IE5VTEwgY2hlY2sKKwor
V2l0aCB0aGUgY2hhbmdlcyBpbiBjb21taXQgNDgzYmRjZjgsIEBuYW1lIGlzIG5vdyBndWFyYW50
ZWVkIHRvIGJlCitub24tTlVMTC4gU3BvdHRlZCBieSBDb3Zlcml0eS4KKworQ0lEOiAjMTA5ODc4
CistLS0KKyBhZ2VudC9hZ2VudC5jIHwgMTYgKysrKysrKy0tLS0tLS0tLQorIDEgZmlsZSBjaGFu
Z2VkLCA3IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9hZ2Vu
dC9hZ2VudC5jIGIvYWdlbnQvYWdlbnQuYworaW5kZXggMjU5ZmRjOS4uZTczM2M4MiAxMDA2NDQK
Ky0tLSBhL2FnZW50L2FnZW50LmMKKysrKyBiL2FnZW50L2FnZW50LmMKK0BAIC01MzI5LDE2ICs1
MzI5LDE0IEBAIG5pY2VfYWdlbnRfc2V0X3N0cmVhbV9uYW1lIChOaWNlQWdlbnQgKmFnZW50LCBn
dWludCBzdHJlYW1faWQsCisgCisgICBhZ2VudF9sb2NrKCk7CisgCistICBpZiAobmFtZSAhPSBO
VUxMKSB7CistICAgIGZvciAoaSA9IGFnZW50LT5zdHJlYW1zOyBpOyBpID0gaS0+bmV4dCkgewor
LSAgICAgIFN0cmVhbSAqc3RyZWFtID0gaS0+ZGF0YTsKKysgIGZvciAoaSA9IGFnZW50LT5zdHJl
YW1zOyBpOyBpID0gaS0+bmV4dCkgeworKyAgICBTdHJlYW0gKnN0cmVhbSA9IGktPmRhdGE7Cisg
CistICAgICAgaWYgKHN0cmVhbS0+aWQgIT0gc3RyZWFtX2lkICYmCistICAgICAgICAgIGdfc3Ry
Y21wMCAoc3RyZWFtLT5uYW1lLCBuYW1lKSA9PSAwKQorLSAgICAgICAgZ290byBkb25lOworLSAg
ICAgIGVsc2UgaWYgKHN0cmVhbS0+aWQgPT0gc3RyZWFtX2lkKQorLSAgICAgICAgc3RyZWFtX3Rv
X25hbWUgPSBzdHJlYW07CistICAgIH0KKysgICAgaWYgKHN0cmVhbS0+aWQgIT0gc3RyZWFtX2lk
ICYmCisrICAgICAgICBnX3N0cmNtcDAgKHN0cmVhbS0+bmFtZSwgbmFtZSkgPT0gMCkKKysgICAg
ICBnb3RvIGRvbmU7CisrICAgIGVsc2UgaWYgKHN0cmVhbS0+aWQgPT0gc3RyZWFtX2lkKQorKyAg
ICAgIHN0cmVhbV90b19uYW1lID0gc3RyZWFtOworICAgfQorIAorICAgaWYgKHN0cmVhbV90b19u
YW1lID09IE5VTEwpCistLSAKKzIuMy4yIChBcHBsZSBHaXQtNTUpCisKZGlmZiAtLWdpdCBhL1Rv
b2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMS1uaWNlc3JjLXNwaW4tdGhlLWFnZW50LW1haW5s
b29wLWluLWEtc2VwYXJhdGUtdGhyZWFkLnBhdGNoIGIvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmlj
ZS0wMDAxLW5pY2VzcmMtc3Bpbi10aGUtYWdlbnQtbWFpbmxvb3AtaW4tYS1zZXBhcmF0ZS10aHJl
YWQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmFmNTdlOAotLS0g
L2Rldi9udWxsCisrKyBiL1Rvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMS1uaWNlc3JjLXNw
aW4tdGhlLWFnZW50LW1haW5sb29wLWluLWEtc2VwYXJhdGUtdGhyZWFkLnBhdGNoCkBAIC0wLDAg
KzEsMjUzIEBACitGcm9tIDMxOTZhOTZhNDA4YTkwZjcwN2RmZjNmMzFmYTNkMDVkNjRhZWI2OGEg
TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBBbGVzc2FuZHJvIERlY2luYSA8YWxlc3Nh
bmRyby5kQGdtYWlsLmNvbT4KK0RhdGU6IFR1ZSwgMTMgT2N0IDIwMTUgMTI6NDk6MTkgKzExMDAK
K1N1YmplY3Q6IFtQQVRDSF0gbmljZXNyYzogc3BpbiB0aGUgYWdlbnQgbWFpbmxvb3AgaW4gYSBz
ZXBhcmF0ZSB0aHJlYWQKKworRG9uJ3QgcnVuIHRoZSBtYWlubG9vcCBmcm9tIHRoZSBzcmNwYWQg
dGFzaywgc2luY2UgdGhhdCBjYW4gZ2V0IGJsb2NrZWQgaW4gdGhlCitwaXBlbGluZSBhbmQgY2F1
c2UgdW5uZWNlc3NhcnkgU1RVTiByZXRyYXNtaXNzaW9ucyAoYXQgYmVzdCkgYW5kIGNvbXBsZXRl
bHkKK2Jsb2NrIHRoZSBhZ2VudCAoYXQgd29yc3QpLgorLS0tCisgZ3N0L2dzdG5pY2VzcmMuYyB8
IDE1OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tCisgZ3N0L2dzdG5pY2VzcmMuaCB8ICAgNCArLQorIDIgZmlsZXMgY2hhbmdlZCwgOTMgaW5z
ZXJ0aW9ucygrKSwgNjkgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9nc3QvZ3N0bmljZXNy
Yy5jIGIvZ3N0L2dzdG5pY2VzcmMuYworaW5kZXggZDM2OWUwOS4uZWI1OWZlOSAxMDA2NDQKKy0t
LSBhL2dzdC9nc3RuaWNlc3JjLmMKKysrKyBiL2dzdC9nc3RuaWNlc3JjLmMKK0BAIC00OCw2ICs0
OCwxNCBAQCBHU1RfREVCVUdfQ0FURUdPUllfU1RBVElDIChuaWNlc3JjX2RlYnVnKTsKKyAKKyAj
ZGVmaW5lIEJVRkZFUl9TSVpFICg2NTUzNikKKyAKKytzdGF0aWMgZ2Jvb2xlYW4KKytnc3Rfbmlj
ZV9zcmNfc3RhcnQgKAorKyAgICBHc3RCYXNlU3JjICpiYXNlc3JjKTsKKysKKytzdGF0aWMgZ2Jv
b2xlYW4KKytnc3RfbmljZV9zcmNfc3RvcCAoCisrICAgIEdzdEJhc2VTcmMgKmJhc2VzcmMpOwor
KworIHN0YXRpYyBHc3RGbG93UmV0dXJuCisgZ3N0X25pY2Vfc3JjX2NyZWF0ZSAoCisgICBHc3RQ
dXNoU3JjICpiYXNlc3JjLAorQEAgLTU3LDEwICs2NSw2IEBAIHN0YXRpYyBnYm9vbGVhbgorIGdz
dF9uaWNlX3NyY191bmxvY2sgKAorICAgICBHc3RCYXNlU3JjICpiYXNlc3JjKTsKKyAKKy1zdGF0
aWMgZ2Jvb2xlYW4KKy1nc3RfbmljZV9zcmNfdW5sb2NrX3N0b3AgKAorLSAgICBHc3RCYXNlU3Jj
ICpiYXNlc3JjKTsKKy0KKyBzdGF0aWMgdm9pZAorIGdzdF9uaWNlX3NyY19zZXRfcHJvcGVydHkg
KAorICAgR09iamVjdCAqb2JqZWN0LAorQEAgLTExNiw4ICsxMjAsOSBAQCBnc3RfbmljZV9zcmNf
Y2xhc3NfaW5pdCAoR3N0TmljZVNyY0NsYXNzICprbGFzcykKKyAgIGdzdHB1c2hzcmNfY2xhc3Mt
PmNyZWF0ZSA9IEdTVF9ERUJVR19GVU5DUFRSIChnc3RfbmljZV9zcmNfY3JlYXRlKTsKKyAKKyAg
IGdzdGJhc2VzcmNfY2xhc3MgPSAoR3N0QmFzZVNyY0NsYXNzICopIGtsYXNzOworKyAgZ3N0YmFz
ZXNyY19jbGFzcy0+c3RhcnQgPSBHU1RfREVCVUdfRlVOQ1BUUiAoZ3N0X25pY2Vfc3JjX3N0YXJ0
KTsKKysgIGdzdGJhc2VzcmNfY2xhc3MtPnN0b3AgPSBHU1RfREVCVUdfRlVOQ1BUUiAoZ3N0X25p
Y2Vfc3JjX3N0b3ApOworICAgZ3N0YmFzZXNyY19jbGFzcy0+dW5sb2NrID0gR1NUX0RFQlVHX0ZV
TkNQVFIgKGdzdF9uaWNlX3NyY191bmxvY2spOworLSAgZ3N0YmFzZXNyY19jbGFzcy0+dW5sb2Nr
X3N0b3AgPSBHU1RfREVCVUdfRlVOQ1BUUiAoZ3N0X25pY2Vfc3JjX3VubG9ja19zdG9wKTsKKyAK
KyAgIGdvYmplY3RfY2xhc3MgPSAoR09iamVjdENsYXNzICopIGtsYXNzOworICAgZ29iamVjdF9j
bGFzcy0+c2V0X3Byb3BlcnR5ID0gZ3N0X25pY2Vfc3JjX3NldF9wcm9wZXJ0eTsKK0BAIC0xNzks
OSArMTg0LDgzIEBAIGdzdF9uaWNlX3NyY19pbml0IChHc3ROaWNlU3JjICpzcmMpCisgICBzcmMt
PmNvbXBvbmVudF9pZCA9IDA7CisgICBzcmMtPm1haW5jdHggPSBnX21haW5fY29udGV4dF9uZXcg
KCk7CisgICBzcmMtPm1haW5sb29wID0gZ19tYWluX2xvb3BfbmV3IChzcmMtPm1haW5jdHgsIEZB
TFNFKTsKKy0gIHNyYy0+dW5sb2NrZWQgPSBGQUxTRTsKKy0gIHNyYy0+aWRsZV9zb3VyY2UgPSBO
VUxMOworICAgc3JjLT5vdXRidWZzID0gZ19xdWV1ZV9uZXcgKCk7CisrICBzcmMtPmFnZW50X2lv
X3RocmVhZCA9IE5VTEw7CisrICBnX2NvbmRfaW5pdCAoJnNyYy0+b3V0Y29uZCk7CisrfQorKwor
K3N0YXRpYyBncG9pbnRlcgorK2dzdF9uaWNlX3NyY19hZ2VudF9pb190aHJlYWQgKGdwb2ludGVy
IGRhdGEpCisreworKyAgR3N0TmljZVNyYyAqbmljZXNyYyA9IEdTVF9OSUNFX1NSQyAoZGF0YSk7
CisrCisrICBHU1RfSU5GT19PQkpFQ1QgKG5pY2VzcmMsICJzdGFydGluZyBhZ2VudCBpbyB0aHJl
YWQiKTsKKysgIGdfbWFpbl9sb29wX3J1biAobmljZXNyYy0+bWFpbmxvb3ApOworKyAgR1NUX0lO
Rk9fT0JKRUNUIChuaWNlc3JjLCAiZXhpdGluZyBhZ2VudCBpbyB0aHJlYWQiKTsKKysKKysgIHJl
dHVybiBOVUxMOworK30KKysKKytzdGF0aWMgZ2Jvb2xlYW4KKyttYWluX2xvb3BfcnVubmluZ19j
YiAoZ3BvaW50ZXIgZGF0YSkKKyt7CisrICBHc3ROaWNlU3JjICpuaWNlc3JjID0gR1NUX05JQ0Vf
U1JDIChkYXRhKTsKKysKKysgIEdTVF9PQkpFQ1RfTE9DSyAobmljZXNyYyk7CisrICAvKiBfc3Rh
cnQoKSBhbmQgX3N0b3AoKSBjb3VsZCBib3RoIGJlIHdhaXRpbmcgZm9yIHRoZSBtYWlubG9vcCB0
byBzdGFydCBzbyB3ZQorKyAgICogbmVlZCB0byBicm9hZGNhc3QgKi8KKysgIGdfY29uZF9icm9h
ZGNhc3QgKCZuaWNlc3JjLT5vdXRjb25kKTsKKysgIEdTVF9PQkpFQ1RfVU5MT0NLIChuaWNlc3Jj
KTsKKysKKysgIHJldHVybiBGQUxTRTsKKyt9CisrCisrc3RhdGljIGdib29sZWFuCisrZ3N0X25p
Y2Vfc3JjX3N0YXJ0IChHc3RCYXNlU3JjICogYmFzZXNyYykKKyt7CisrICBHc3ROaWNlU3JjICpu
aWNlc3JjID0gR1NUX05JQ0VfU1JDIChiYXNlc3JjKTsKKysgIEdTb3VyY2UgKnNvdXJjZTsKKysg
IGdjaGFyICp0aHJlYWRfbmFtZTsKKysKKysgIEdTVF9PQkpFQ1RfTE9DSyAobmljZXNyYyk7Cisr
ICBzb3VyY2UgPSBnX2lkbGVfc291cmNlX25ldyAoKTsKKysgIGdfc291cmNlX3NldF9jYWxsYmFj
ayAoc291cmNlLAorKyAgICAgIChHU291cmNlRnVuYykgbWFpbl9sb29wX3J1bm5pbmdfY2IsIG5p
Y2VzcmMsIE5VTEwpOworKyAgZ19zb3VyY2VfYXR0YWNoIChzb3VyY2UsIG5pY2VzcmMtPm1haW5j
dHgpOworKyAgZ19zb3VyY2VfdW5yZWYgKHNvdXJjZSk7CisrCisrICB0aHJlYWRfbmFtZSA9IGdf
c3RyZHVwX3ByaW50ZiAoIiVzOmFnZW50X2lvIiwgR1NUX09CSkVDVF9OQU1FIChuaWNlc3JjKSk7
CisrICBuaWNlc3JjLT5hZ2VudF9pb190aHJlYWQgPSBnX3RocmVhZF9uZXcgKHRocmVhZF9uYW1l
LCBnc3RfbmljZV9zcmNfYWdlbnRfaW9fdGhyZWFkLCBuaWNlc3JjKTsKKysgIGdfZnJlZSAodGhy
ZWFkX25hbWUpOworKyAgLyogd2FpdCB1bnRpbCB0aGUgYWdlbnQgdGhyZWFkIHN0YXJ0cyBzcGlu
bmluZyB0aGUgbWFpbmxvb3Agb3IgX3N0b3AoKSBpcworKyAgICogY2FsbGVkICovCisrICB3aGls
ZSAoR1NUX0JBU0VfU1JDX0lTX1NUQVJUSU5HIChiYXNlc3JjKSAmJgorKyAgICAgICFnX21haW5f
bG9vcF9pc19ydW5uaW5nIChuaWNlc3JjLT5tYWlubG9vcCkpCisrICAgIGdfY29uZF93YWl0ICgm
bmljZXNyYy0+b3V0Y29uZCwgR1NUX09CSkVDVF9HRVRfTE9DSyAobmljZXNyYykpOworKyAgR1NU
X09CSkVDVF9VTkxPQ0sgKG5pY2VzcmMpOworKworKyAgcmV0dXJuIFRSVUU7CisrfQorKworK3N0
YXRpYyBnYm9vbGVhbgorK2dzdF9uaWNlX3NyY19zdG9wIChHc3RCYXNlU3JjICogYmFzZXNyYykK
Kyt7CisrICBHc3ROaWNlU3JjICpuaWNlc3JjID0gR1NUX05JQ0VfU1JDIChiYXNlc3JjKTsKKysg
IEdUaHJlYWQgKmFnZW50X2lvX3RocmVhZCA9IE5VTEw7CisrCisrICBHU1RfT0JKRUNUX0xPQ0sg
KG5pY2VzcmMpOworKyAgLyogaGVyZSB3ZSB3YWl0IGZvciB0aGUgYWdlbnQgdGhyZWFkIGNyZWF0
ZWQgaW4gX3N0YXJ0KCkgdG8gYmUgc2NoZWR1bGVkIHNvCisrICAgKiB0aGF0IHdlIGRvbid0IHJp
c2sgY2FsbGluZyBfcXVpdCgpIGZpcnN0IGFuZCB0aGVuIF9ydW4oKSBvbiB0aGUgbWFpbmxvb3Ag
Ki8KKysgIHdoaWxlICghZ19tYWluX2xvb3BfaXNfcnVubmluZyAobmljZXNyYy0+bWFpbmxvb3Ap
KQorKyAgICBnX2NvbmRfd2FpdCAoJm5pY2VzcmMtPm91dGNvbmQsIEdTVF9PQkpFQ1RfR0VUX0xP
Q0sgKG5pY2VzcmMpKTsKKysgIGdfbWFpbl9sb29wX3F1aXQgKG5pY2VzcmMtPm1haW5sb29wKTsK
KysgIGFnZW50X2lvX3RocmVhZCA9IG5pY2VzcmMtPmFnZW50X2lvX3RocmVhZDsKKysgIG5pY2Vz
cmMtPmFnZW50X2lvX3RocmVhZCA9IE5VTEw7CisrICBHU1RfT0JKRUNUX1VOTE9DSyAobmljZXNy
Yyk7CisrCisrICBnX3RocmVhZF9qb2luIChhZ2VudF9pb190aHJlYWQpOworKworKyAgcmV0dXJu
IFRSVUU7CisgfQorIAorIHN0YXRpYyB2b2lkCitAQCAtMjA3LDYyICsyODYsMTcgQEAgZ3N0X25p
Y2Vfc3JjX3JlYWRfY2FsbGJhY2sgKE5pY2VBZ2VudCAqYWdlbnQsCisgI2VuZGlmCisgICBHU1Rf
T0JKRUNUX0xPQ0sgKG5pY2VzcmMpOworICAgZ19xdWV1ZV9wdXNoX3RhaWwgKG5pY2VzcmMtPm91
dGJ1ZnMsIGJ1ZmZlcik7CistICBnX21haW5fbG9vcF9xdWl0IChuaWNlc3JjLT5tYWlubG9vcCk7
CisrICBnX2NvbmRfc2lnbmFsICgmbmljZXNyYy0+b3V0Y29uZCk7CisgICBHU1RfT0JKRUNUX1VO
TE9DSyAobmljZXNyYyk7CisgfQorIAorIHN0YXRpYyBnYm9vbGVhbgorLWdzdF9uaWNlX3NyY191
bmxvY2tfaWRsZXIgKGdwb2ludGVyIGRhdGEpCisteworLSAgR3N0TmljZVNyYyAqbmljZXNyYyA9
IEdTVF9OSUNFX1NSQyAoZGF0YSk7CistCistICBHU1RfT0JKRUNUX0xPQ0sgKG5pY2VzcmMpOwor
LSAgaWYgKG5pY2VzcmMtPnVubG9ja2VkKQorLSAgICBnX21haW5fbG9vcF9xdWl0IChuaWNlc3Jj
LT5tYWlubG9vcCk7CistCistICBpZiAobmljZXNyYy0+aWRsZV9zb3VyY2UpIHsKKy0gICAgZ19z
b3VyY2VfZGVzdHJveSAobmljZXNyYy0+aWRsZV9zb3VyY2UpOworLSAgICBnX3NvdXJjZV91bnJl
ZiAobmljZXNyYy0+aWRsZV9zb3VyY2UpOworLSAgICBuaWNlc3JjLT5pZGxlX3NvdXJjZSA9IE5V
TEw7CistICB9CistICBHU1RfT0JKRUNUX1VOTE9DSyAobmljZXNyYyk7CistCistICByZXR1cm4g
RkFMU0U7CistfQorLQorLXN0YXRpYyBnYm9vbGVhbgorIGdzdF9uaWNlX3NyY191bmxvY2sgKEdz
dEJhc2VTcmMgKnNyYykKKyB7CisgICBHc3ROaWNlU3JjICpuaWNlc3JjID0gR1NUX05JQ0VfU1JD
IChzcmMpOworIAorICAgR1NUX09CSkVDVF9MT0NLIChzcmMpOworLSAgbmljZXNyYy0+dW5sb2Nr
ZWQgPSBUUlVFOworLQorLSAgZ19tYWluX2xvb3BfcXVpdCAobmljZXNyYy0+bWFpbmxvb3ApOwor
LQorLSAgaWYgKCFuaWNlc3JjLT5pZGxlX3NvdXJjZSkgeworLSAgICBuaWNlc3JjLT5pZGxlX3Nv
dXJjZSA9IGdfaWRsZV9zb3VyY2VfbmV3ICgpOworLSAgICBnX3NvdXJjZV9zZXRfcHJpb3JpdHkg
KG5pY2VzcmMtPmlkbGVfc291cmNlLCBHX1BSSU9SSVRZX0hJR0gpOworLSAgICBnX3NvdXJjZV9z
ZXRfY2FsbGJhY2sgKG5pY2VzcmMtPmlkbGVfc291cmNlLCBnc3RfbmljZV9zcmNfdW5sb2NrX2lk
bGVyLCBzcmMsIE5VTEwpOworLSAgICBnX3NvdXJjZV9hdHRhY2ggKG5pY2VzcmMtPmlkbGVfc291
cmNlLCBnX21haW5fbG9vcF9nZXRfY29udGV4dCAobmljZXNyYy0+bWFpbmxvb3ApKTsKKy0gIH0K
Ky0gIEdTVF9PQkpFQ1RfVU5MT0NLIChzcmMpOworLQorLSAgcmV0dXJuIFRSVUU7CistfQorLQor
LXN0YXRpYyBnYm9vbGVhbgorLWdzdF9uaWNlX3NyY191bmxvY2tfc3RvcCAoR3N0QmFzZVNyYyAq
c3JjKQorLXsKKy0gIEdzdE5pY2VTcmMgKm5pY2VzcmMgPSBHU1RfTklDRV9TUkMgKHNyYyk7Cist
CistICBHU1RfT0JKRUNUX0xPQ0sgKHNyYyk7CistICBuaWNlc3JjLT51bmxvY2tlZCA9IEZBTFNF
OworLSAgaWYgKG5pY2VzcmMtPmlkbGVfc291cmNlKSB7CistICAgIGdfc291cmNlX2Rlc3Ryb3kg
KG5pY2VzcmMtPmlkbGVfc291cmNlKTsKKy0gICAgZ19zb3VyY2VfdW5yZWYobmljZXNyYy0+aWRs
ZV9zb3VyY2UpOworLSAgfQorLSAgbmljZXNyYy0+aWRsZV9zb3VyY2UgPSBOVUxMOworKyAgZ19j
b25kX3NpZ25hbCAoJm5pY2VzcmMtPm91dGNvbmQpOworICAgR1NUX09CSkVDVF9VTkxPQ0sgKHNy
Yyk7CisgCisgICByZXR1cm4gVFJVRTsKK0BAIC0yNzgsMTkgKzMxMiw4IEBAIGdzdF9uaWNlX3Ny
Y19jcmVhdGUgKAorICAgR1NUX0xPR19PQkpFQ1QgKG5pY2VzcmMsICJjcmVhdGUgY2FsbGVkIik7
CisgCisgICBHU1RfT0JKRUNUX0xPQ0sgKGJhc2VzcmMpOworLSAgaWYgKG5pY2VzcmMtPnVubG9j
a2VkKSB7CistICAgIEdTVF9PQkpFQ1RfVU5MT0NLIChiYXNlc3JjKTsKKy0jaWYgR1NUX0NIRUNL
X1ZFUlNJT04gKDEsMCwwKQorLSAgICByZXR1cm4gR1NUX0ZMT1dfRkxVU0hJTkc7CistI2Vsc2UK
Ky0gICAgcmV0dXJuIEdTVF9GTE9XX1dST05HX1NUQVRFOworLSNlbmRpZgorLSAgfQorLSAgaWYg
KGdfcXVldWVfaXNfZW1wdHkgKG5pY2VzcmMtPm91dGJ1ZnMpKSB7CistICAgIEdTVF9PQkpFQ1Rf
VU5MT0NLIChiYXNlc3JjKTsKKy0gICAgZ19tYWluX2xvb3BfcnVuIChuaWNlc3JjLT5tYWlubG9v
cCk7CistICAgIEdTVF9PQkpFQ1RfTE9DSyAoYmFzZXNyYyk7CistICB9CisrICBpZiAoZ19xdWV1
ZV9pc19lbXB0eSAobmljZXNyYy0+b3V0YnVmcykpCisrICAgIGdfY29uZF93YWl0ICgmbmljZXNy
Yy0+b3V0Y29uZCwgR1NUX09CSkVDVF9HRVRfTE9DSyAobmljZXNyYykpOworIAorICAgKmJ1ZmZl
ciA9IGdfcXVldWVfcG9wX2hlYWQgKG5pY2VzcmMtPm91dGJ1ZnMpOworICAgR1NUX09CSkVDVF9V
TkxPQ0sgKGJhc2VzcmMpOworQEAgLTMzMSw2ICszNTQsNyBAQCBnc3RfbmljZV9zcmNfZGlzcG9z
ZSAoR09iamVjdCAqb2JqZWN0KQorICAgICBnX3F1ZXVlX2ZyZWUgKHNyYy0+b3V0YnVmcyk7Cisg
ICB9CisgICBzcmMtPm91dGJ1ZnMgPSBOVUxMOworKyAgZ19jb25kX2NsZWFyICgmc3JjLT5vdXRj
b25kKTsKKyAKKyAgIEdfT0JKRUNUX0NMQVNTIChnc3RfbmljZV9zcmNfcGFyZW50X2NsYXNzKS0+
ZGlzcG9zZSAob2JqZWN0KTsKKyB9CitkaWZmIC0tZ2l0IGEvZ3N0L2dzdG5pY2VzcmMuaCBiL2dz
dC9nc3RuaWNlc3JjLmgKK2luZGV4IDVkM2Y1NTQuLjJkOWY2NzQgMTAwNjQ0CistLS0gYS9nc3Qv
Z3N0bmljZXNyYy5oCisrKysgYi9nc3QvZ3N0bmljZXNyYy5oCitAQCAtNjgsOCArNjgsOCBAQCBz
dHJ1Y3QgX0dzdE5pY2VTcmMKKyAgIEdNYWluQ29udGV4dCAqbWFpbmN0eDsKKyAgIEdNYWluTG9v
cCAqbWFpbmxvb3A7CisgICBHUXVldWUgKm91dGJ1ZnM7CistICBnYm9vbGVhbiB1bmxvY2tlZDsK
Ky0gIEdTb3VyY2UgKmlkbGVfc291cmNlOworKyAgR0NvbmQgb3V0Y29uZDsKKysgIEdUaHJlYWQg
KmFnZW50X2lvX3RocmVhZDsKKyB9OworIAorIHR5cGVkZWYgc3RydWN0IF9Hc3ROaWNlU3JjQ2xh
c3MgR3N0TmljZVNyY0NsYXNzOworLS0gCisyLjMuNAorCmRpZmYgLS1naXQgYS9Ub29scy9ndGsv
cGF0Y2hlcy9saWJuaWNlLTAwMDItRG8tbm90LXVwZGF0ZS1hLXJlbW90ZS1jYW5kaWRhdGUtcy10
eXBlLnBhdGNoIGIvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAyLURvLW5vdC11cGRhdGUt
YS1yZW1vdGUtY2FuZGlkYXRlLXMtdHlwZS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi44MWNhNjZjCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvZ3RrL3BhdGNoZXMv
bGlibmljZS0wMDAyLURvLW5vdC11cGRhdGUtYS1yZW1vdGUtY2FuZGlkYXRlLXMtdHlwZS5wYXRj
aApAQCAtMCwwICsxLDMxIEBACitGcm9tIDkzODYyYzFlMTk0MDYxOGUwNjE0M2Q0Nzg4ZjU0YmZm
ZDRkMWM1ZGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBZb3VuZXNzIEFsYW91aSA8
a2FrYXJvdG9Aa2FrYXJvdG8uaG9tZWxpbnV4Lm5ldD4KK0RhdGU6IFR1ZSwgNSBNYXkgMjAxNSAx
NDoyNDoxNSAtMDQwMAorU3ViamVjdDogW1BBVENIIDIvNF0gRG8gbm90IHVwZGF0ZSBhIHJlbW90
ZSBjYW5kaWRhdGUncyB0eXBlCisKK1doZW4gYWRkaW5nIGEgcmVtb3RlIGNhbmRpZGF0ZSwgaWYg
aXQncyB0aGUgc2FtZSBpcDpwb3J0LCB3ZSBzaG91bGQKK2Fsc28gY2hlY2sgaXRzIHR5cGUsIG90
aGVyd2lzZSBpdCdzIGEgbmV3IGNhbmRpZGF0ZS4gV2UgY2FuJ3QgYWxsb3cKK2EgY2FuZGlkYXRl
IHR5cGUgdG8gYmUgdXBkYXRlZC4gVGhpcyBjYXVzZWQgaXNzdWVzIHRvIGlrb25zdF8gb24gSVJD
Cit3aGVyZSBmb3Igc29tZSByZWFzb24gYSBob3N0IGNhbmRpZGF0ZSBhcHBlYXJlZCBhcyBib3Ro
IGhvc3QgYW5kIHByZmx4CithbmQgdGhlIHVwZGF0ZSBjYXVzZWQgYSByZW1vdGUgaG9zdCBjYW5k
aWRhdGUgdG8gYmUgdXBkYXRlZCB0byBwcmZseAorY2F1c2luZyBhIGNyYXNoIHdoZW4gdGhlIHNv
Y2twdHIgd2FzIGJlaW5nIGFjY2Vzc2VkLgorLS0tCisgYWdlbnQvYWdlbnQuYyB8IDIgKy0KKyAx
IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKKworZGlmZiAtLWdp
dCBhL2FnZW50L2FnZW50LmMgYi9hZ2VudC9hZ2VudC5jCitpbmRleCBlNzMzYzgyLi4zOGI2Nzlm
IDEwMDY0NAorLS0tIGEvYWdlbnQvYWdlbnQuYworKysrIGIvYWdlbnQvYWdlbnQuYworQEAgLTMw
NDEsNyArMzA0MSw3IEBAIHN0YXRpYyBnYm9vbGVhbiBwcml2X2FkZF9yZW1vdGVfY2FuZGlkYXRl
ICgKKyAKKyAgIC8qIHN0ZXA6IGNoZWNrIHdoZXRoZXIgdGhlIGNhbmRpZGF0ZSBhbHJlYWR5IGV4
aXN0cyAqLworICAgY2FuZGlkYXRlID0gY29tcG9uZW50X2ZpbmRfcmVtb3RlX2NhbmRpZGF0ZShj
b21wb25lbnQsIGFkZHIsIHRyYW5zcG9ydCk7CistICBpZiAoY2FuZGlkYXRlKSB7CisrICBpZiAo
Y2FuZGlkYXRlICYmIGNhbmRpZGF0ZS0+dHlwZSA9PSB0eXBlKSB7CisgICAgIGlmIChuaWNlX2Rl
YnVnX2lzX2VuYWJsZWQgKCkpIHsKKyAgICAgICBnY2hhciB0bXBidWZbSU5FVDZfQUREUlNUUkxF
Tl07CisgICAgICAgbmljZV9hZGRyZXNzX3RvX3N0cmluZyAoYWRkciwgdG1wYnVmKTsKKy0tIAor
Mi4zLjIgKEFwcGxlIEdpdC01NSkKKwpkaWZmIC0tZ2l0IGEvVG9vbHMvZ3RrL3BhdGNoZXMvbGli
bmljZS0wMDAyLVRVUk4taGFuZGxlLTQzNy1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5w
YXRjaCBiL1Rvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMi1UVVJOLWhhbmRsZS00MzctQWxs
b2NhdGlvbi1NaXNtYXRjaC1yZXNwb25zZXMucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uNGFjZThjMgotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL2d0ay9wYXRjaGVz
L2xpYm5pY2UtMDAwMi1UVVJOLWhhbmRsZS00MzctQWxsb2NhdGlvbi1NaXNtYXRjaC1yZXNwb25z
ZXMucGF0Y2gKQEAgLTAsMCArMSwxMzEgQEAKK0Zyb20gOWUyY2VkMTMxYWMwZmM2NDJlZjVjODYx
ODUxYzU5ODhkOGI5NmQxNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IEFsZXNzYW5k
cm8gRGVjaW5hIDxhbGVzc2FuZHJvLmRAZ21haWwuY29tPgorRGF0ZTogVGh1LCAyNCBNYXIgMjAx
NiAxMDo1NDoyMCArMTEwMAorU3ViamVjdDogW1BBVENIIDIvMl0gVFVSTjogaGFuZGxlIDQzNyBB
bGxvY2F0aW9uIE1pc21hdGNoIHJlc3BvbnNlcworCitPbiBBbGxvY2F0aW9uIE1pc21hdGNoIHJl
c3BvbnNlcywgdGhlIGNsaWVudCBpcyBzdXBwb3NlZCB0byByZXRyeSB3aXRoIGEKK2RpZmZlcmVu
dCBob3N0OnBvcnQgY29tYmluYXRpb24uCistLS0KKyBhZ2VudC9jb25uY2hlY2suYyB8IDQyICsr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLQorIGFnZW50L2Rpc2NvdmVy
eS5oIHwgIDEgKworIHN0dW4vc3R1bmFnZW50LmMgIHwgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQs
IDM1IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvYWdlbnQv
Y29ubmNoZWNrLmMgYi9hZ2VudC9jb25uY2hlY2suYworaW5kZXggOTdiZjUzNi4uZDAzZTU3YSAx
MDA2NDQKKy0tLSBhL2FnZW50L2Nvbm5jaGVjay5jCisrKysgYi9hZ2VudC9jb25uY2hlY2suYwor
QEAgLTI2MzAsOSArMjYzMCwxMCBAQCBzdGF0aWMgZ2Jvb2xlYW4gcHJpdl9tYXBfcmVwbHlfdG9f
cmVsYXlfcmVxdWVzdCAoTmljZUFnZW50ICphZ2VudCwgU3R1bk1lc3NhZ2UgKgorICAgU3R1blRy
YW5zYWN0aW9uSWQgZGlzY292ZXJ5X2lkOworICAgU3R1blRyYW5zYWN0aW9uSWQgcmVzcG9uc2Vf
aWQ7CisgICBzdHVuX21lc3NhZ2VfaWQgKHJlc3AsIHJlc3BvbnNlX2lkKTsKKysgIENhbmRpZGF0
ZURpc2NvdmVyeSAqZCA9IE5VTEw7CisgCisgICBmb3IgKGkgPSBhZ2VudC0+ZGlzY292ZXJ5X2xp
c3Q7IGkgJiYgdHJhbnNfZm91bmQgIT0gVFJVRTsgaSA9IGktPm5leHQpIHsKKy0gICAgQ2FuZGlk
YXRlRGlzY292ZXJ5ICpkID0gaS0+ZGF0YTsKKysgICAgZCA9IGktPmRhdGE7CisgCisgICAgIGlm
IChkLT50eXBlID09IE5JQ0VfQ0FORElEQVRFX1RZUEVfUkVMQVlFRCAmJgorICAgICAgICAgZC0+
c3R1bl9tZXNzYWdlLmJ1ZmZlcikgeworQEAgLTI3NTcsNiArMjc1OCw3IEBAIHN0YXRpYyBnYm9v
bGVhbiBwcml2X21hcF9yZXBseV90b19yZWxheV9yZXF1ZXN0IChOaWNlQWdlbnQgKmFnZW50LCBT
dHVuTWVzc2FnZSAqCisgICAgICAgICAgIHVpbnQxNl90IHNlbnRfcmVhbG1fbGVuID0gMDsKKyAg
ICAgICAgICAgdWludDE2X3QgcmVjdl9yZWFsbV9sZW4gPSAwOworIAorKyAgICAgICAgICB0cmFu
c19mb3VuZCA9IFRSVUU7CisgICAgICAgICAgIHNlbnRfcmVhbG0gPSAodWludDhfdCAqKSBzdHVu
X21lc3NhZ2VfZmluZCAoJmQtPnN0dW5fbWVzc2FnZSwKKyAgICAgICAgICAgICAgIFNUVU5fQVRU
UklCVVRFX1JFQUxNLCAmc2VudF9yZWFsbV9sZW4pOworICAgICAgICAgICByZWN2X3JlYWxtID0g
KHVpbnQ4X3QgKikgc3R1bl9tZXNzYWdlX2ZpbmQgKHJlc3AsCitAQCAtMjc2OSwxMSArMjc3MSwz
MSBAQCBzdGF0aWMgZ2Jvb2xlYW4gcHJpdl9tYXBfcmVwbHlfdG9fcmVsYXlfcmVxdWVzdCAoTmlj
ZUFnZW50ICphZ2VudCwgU3R1bk1lc3NhZ2UgKgorICAgICAgICAgICAgICAgc3R1bl9tZXNzYWdl
X2dldF9jbGFzcyAocmVzcCkgPT0gU1RVTl9FUlJPUiAmJgorICAgICAgICAgICAgICAgc3R1bl9t
ZXNzYWdlX2ZpbmRfZXJyb3IgKHJlc3AsICZjb2RlKSA9PQorICAgICAgICAgICAgICAgU1RVTl9N
RVNTQUdFX1JFVFVSTl9TVUNDRVNTKSB7CistICAgICAgICAgICAgaWYgKGNvZGUgPT0gNDM4IHx8
CisrICAgICAgICAgICAgaWYgKGNvZGUgPT0gNDM3IHx8CisrICAgICAgICAgICAgICAgIGNvZGUg
PT0gNDM4IHx8CisgICAgICAgICAgICAgICAgIChjb2RlID09IDQwMSAmJgorICAgICAgICAgICAg
ICAgICAgICAgIShyZWN2X3JlYWxtX2xlbiA9PSBzZW50X3JlYWxtX2xlbiAmJgorICAgICAgICAg
ICAgICAgICAgICAgICAgIHJlY3ZfcmVhbG0gIT0gTlVMTCAmJiBzZW50X3JlYWxtICE9IE5VTEwg
JiYKKyAgICAgICAgICAgICAgICAgICAgICAgICBtZW1jbXAgKHNlbnRfcmVhbG0sIHJlY3ZfcmVh
bG0sIHNlbnRfcmVhbG1fbGVuKSA9PSAwKSkpIHsKKysgICAgICAgICAgICAgIGlmIChjb2RlID09
IDQzNykgeworKyAgICAgICAgICAgICAgICBpZiAoZC0+dHVybl9yZXRyaWVzKysgPT0gMykKKysg
ICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworKworKyAgICAgICAgICAgICAgICAvKiByZXRy
eSB1cCB0byB0aHJlZSB0aW1lcyBvbiBBbGxvY2F0aW9uIE1pc21hdGNoIGVycm9ycyAqLworKyAg
ICAgICAgICAgICAgICBOaWNlQWRkcmVzcyBhZGRyID0gZC0+bmljZXNvY2stPmFkZHI7CisrICAg
ICAgICAgICAgICAgIE5pY2VTb2NrZXQgKm5ld19zb2NrZXQ7CisrCisrICAgICAgICAgICAgICAg
IC8qIEZJWE1FOiB0aGlzIGlnbm9yZXMgbmljZV9hZ2VudF9zZXRfcG9ydF9yYW5nZSAqLworKyAg
ICAgICAgICAgICAgICBuaWNlX2FkZHJlc3Nfc2V0X3BvcnQgKCZhZGRyLCAwKTsKKysKKysgICAg
ICAgICAgICAgICAgbmV3X3NvY2tldCA9IG5pY2VfdWRwX2JzZF9zb2NrZXRfbmV3ICgmYWRkcik7
CisrICAgICAgICAgICAgICAgIGlmIChuZXdfc29ja2V0KSB7CisrICAgICAgICAgICAgICAgICAg
X3ByaXZfc2V0X3NvY2tldF90b3MgKGFnZW50LCBuZXdfc29ja2V0LCBkLT5zdHJlYW0tPnRvcyk7
CisrICAgICAgICAgICAgICAgICAgY29tcG9uZW50X2F0dGFjaF9zb2NrZXQgKGQtPmNvbXBvbmVu
dCwgbmV3X3NvY2tldCk7CisrICAgICAgICAgICAgICAgICAgZC0+bmljZXNvY2sgPSBuZXdfc29j
a2V0OworKyAgICAgICAgICAgICAgICB9CisrICAgICAgICAgICAgICB9CisrCisgICAgICAgICAg
ICAgICBkLT5zdHVuX3Jlc3BfbXNnID0gKnJlc3A7CisgICAgICAgICAgICAgICBtZW1jcHkgKGQt
PnN0dW5fcmVzcF9idWZmZXIsIHJlc3AtPmJ1ZmZlciwKKyAgICAgICAgICAgICAgICAgICBzdHVu
X21lc3NhZ2VfbGVuZ3RoIChyZXNwKSk7CitAQCAtMjc4MiwyMyArMjgwNCwyNSBAQCBzdGF0aWMg
Z2Jvb2xlYW4gcHJpdl9tYXBfcmVwbHlfdG9fcmVsYXlfcmVxdWVzdCAoTmljZUFnZW50ICphZ2Vu
dCwgU3R1bk1lc3NhZ2UgKgorICAgICAgICAgICAgICAgZC0+cGVuZGluZyA9IEZBTFNFOworICAg
ICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAvKiBjYXNlOiBhIHJlYWwgdW5hdXRo
b3JpemVkIGVycm9yICovCistICAgICAgICAgICAgICBkLT5zdHVuX21lc3NhZ2UuYnVmZmVyID0g
TlVMTDsKKy0gICAgICAgICAgICAgIGQtPnN0dW5fbWVzc2FnZS5idWZmZXJfbGVuID0gMDsKKy0g
ICAgICAgICAgICAgIGQtPmRvbmUgPSBUUlVFOworKyAgICAgICAgICAgICAgZ290byBlcnJvcjsK
KyAgICAgICAgICAgICB9CisgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgLyogY2Fz
ZTogU1RVTiBlcnJvciwgdGhlIGNoZWNrIFNUVU4gY29udGV4dCB3YXMgZnJlZWQgKi8KKy0gICAg
ICAgICAgICBkLT5zdHVuX21lc3NhZ2UuYnVmZmVyID0gTlVMTDsKKy0gICAgICAgICAgICBkLT5z
dHVuX21lc3NhZ2UuYnVmZmVyX2xlbiA9IDA7CistICAgICAgICAgICAgZC0+ZG9uZSA9IFRSVUU7
CisrICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgfQorLSAgICAgICAgICB0cmFu
c19mb3VuZCA9IFRSVUU7CisgICAgICAgICB9CisgICAgICAgfQorICAgICB9CisgICB9CisgCisg
ICByZXR1cm4gdHJhbnNfZm91bmQ7CisrCisrZXJyb3I6CisrICBkLT5zdHVuX21lc3NhZ2UuYnVm
ZmVyID0gTlVMTDsKKysgIGQtPnN0dW5fbWVzc2FnZS5idWZmZXJfbGVuID0gMDsKKysgIGQtPmRv
bmUgPSBUUlVFOworKworKyAgcmV0dXJuIHRyYW5zX2ZvdW5kOworIH0KKyAKKyAKK2RpZmYgLS1n
aXQgYS9hZ2VudC9kaXNjb3ZlcnkuaCBiL2FnZW50L2Rpc2NvdmVyeS5oCitpbmRleCBjMjJlYTZh
Li4xNDhiOGMyIDEwMDY0NAorLS0tIGEvYWdlbnQvZGlzY292ZXJ5LmgKKysrKyBiL2FnZW50L2Rp
c2NvdmVyeS5oCitAQCAtNTYsNiArNTYsNyBAQCB0eXBlZGVmIHN0cnVjdAorICAgU3RyZWFtICpz
dHJlYW07CisgICBDb21wb25lbnQgKmNvbXBvbmVudDsKKyAgIFR1cm5TZXJ2ZXIgKnR1cm47Cisr
ICBnaW50IHR1cm5fcmV0cmllczsKKyAgIFN0dW5BZ2VudCBzdHVuX2FnZW50OworICAgU3R1blRp
bWVyIHRpbWVyOworICAgdWludDhfdCBzdHVuX2J1ZmZlcltTVFVOX01BWF9NRVNTQUdFX1NJWkVf
SVBWNl07CitkaWZmIC0tZ2l0IGEvc3R1bi9zdHVuYWdlbnQuYyBiL3N0dW4vc3R1bmFnZW50LmMK
K2luZGV4IDJhYmNjMjkuLjBhYmFlM2QgMTAwNjQ0CistLS0gYS9zdHVuL3N0dW5hZ2VudC5jCisr
KysgYi9zdHVuL3N0dW5hZ2VudC5jCitAQCAtMzAxLDcgKzMwMSw3IEBAIFN0dW5WYWxpZGF0aW9u
U3RhdHVzIHN0dW5fYWdlbnRfdmFsaWRhdGUgKFN0dW5BZ2VudCAqYWdlbnQsIFN0dW5NZXNzYWdl
ICptc2csCisgICAgIH0gZWxzZSBpZiAoIShzdHVuX21lc3NhZ2VfZ2V0X2NsYXNzIChtc2cpID09
IFNUVU5fRVJST1IgJiYKKyAgICAgICAgIHN0dW5fbWVzc2FnZV9maW5kX2Vycm9yIChtc2csICZl
cnJvcl9jb2RlKSA9PQorICAgICAgICAgICAgIFNUVU5fTUVTU0FHRV9SRVRVUk5fU1VDQ0VTUyAm
JgorLSAgICAgICAgKGVycm9yX2NvZGUgPT0gNDAwIHx8IGVycm9yX2NvZGUgPT0gNDAxKSkpIHsK
KysgICAgICAgIChlcnJvcl9jb2RlID09IDQwMCB8fCBlcnJvcl9jb2RlID09IDQwMSB8fCBlcnJv
cl9jb2RlID09IDQzNykpKSB7CisgICAgICAgc3R1bl9kZWJ1ZyAoIlNUVU4gYXV0aCBlcnJvcjog
Tm8gbWVzc2FnZSBpbnRlZ3JpdHkgYXR0cmlidXRlISIpOworICAgICAgIHJldHVybiBTVFVOX1ZB
TElEQVRJT05fVU5BVVRIT1JJWkVEOworICAgICB9CistLSAKKzIuMy40CisKZGlmZiAtLWdpdCBh
L1Rvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMy1Eby1ub3QtY29tcGFyZS1zY29wZS1mb3It
SVB2Ni1hZGRyZXNzLXdoZW4tc2NvcGUtaXMtLnBhdGNoIGIvVG9vbHMvZ3RrL3BhdGNoZXMvbGli
bmljZS0wMDAzLURvLW5vdC1jb21wYXJlLXNjb3BlLWZvci1JUHY2LWFkZHJlc3Mtd2hlbi1zY29w
ZS1pcy0ucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODA2ZjllYgot
LS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMy1Eby1ub3Qt
Y29tcGFyZS1zY29wZS1mb3ItSVB2Ni1hZGRyZXNzLXdoZW4tc2NvcGUtaXMtLnBhdGNoCkBAIC0w
LDAgKzEsNDMgQEAKK0Zyb20gOTFhN2I5MzI0MjQ0ODQ0YmFmMzVkOGZjZWYwMTlhNGVhMzg3MmQz
MCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IFlvdW5lc3MgQWxhb3VpIDxrYWthcm90
b0BrYWthcm90by5ob21lbGludXgubmV0PgorRGF0ZTogVHVlLCA1IE1heSAyMDE1IDE1OjAwOjMw
IC0wNDAwCitTdWJqZWN0OiBbUEFUQ0ggMy80XSBEbyBub3QgY29tcGFyZSBzY29wZSBmb3IgSVB2
NiBhZGRyZXNzIHdoZW4gc2NvcGUgaXMgMAorCitUaGlzIGNhdXNlZCBpc3N1ZXMgd2l0aCB0aGlu
a2luZyBsb2NhbCBob3N0IGNhbmRpZGF0ZXMgd2VyZSBwZWVyLXJlZmxleGl2ZQorY2FuZGlkYXRl
cyBiZWNhdXNlIHRoZSBuaWNlX2FkZHJlc3NfZXF1YWwgd291bGQgZmFpbCBzaW5jZSB0aGUgc2Nv
cGUKK3dvdWxkIGJlIDYgKG9yIHNvbWUgb3RoZXIgdmFsdWUpIGJ1dCBsb2NhbGx5IGNyZWF0ZWQg
TmljZUFkZHJlc3MgZnJvbQorYSBzdHVuIHJlc3BvbnNlIHdvdWxkIGhhdmUgdGhlIHNjb3BlIHNl
dCB0byAwLgorV2UgaWdub3JlIHRoZSBzY29wZSB3aGVuIGNvbXBhcmluZyBpcHY2IGNhbmRpZGF0
ZXMgd2hlbiBzY29wZSBpcyAwCit0byBhdm9pZCB0aGVzZSBraW5kcyBvZiBpc3N1ZXMuCitUaGFu
a3MgdG8gaWtvbnN0XyBmb3IgZmluZGluZyB0aGVzZSBpc3N1ZXMKKy0tLQorIGFnZW50L2FkZHJl
c3MuYyB8IDYgKysrKy0tCisgMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMiBkZWxl
dGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2FnZW50L2FkZHJlc3MuYyBiL2FnZW50L2FkZHJlc3Mu
YworaW5kZXggYThkOWM3Ni4uMDFlZWJhYiAxMDA2NDQKKy0tLSBhL2FnZW50L2FkZHJlc3MuYwor
KysrIGIvYWdlbnQvYWRkcmVzcy5jCitAQCAtMjk3LDcgKzI5Nyw4IEBAIG5pY2VfYWRkcmVzc19l
cXVhbCAoY29uc3QgTmljZUFkZHJlc3MgKmEsIGNvbnN0IE5pY2VBZGRyZXNzICpiKQorICAgICBj
YXNlIEFGX0lORVQ2OgorICAgICAgIHJldHVybiBJTjZfQVJFX0FERFJfRVFVQUwgKCZhLT5zLmlw
Ni5zaW42X2FkZHIsICZiLT5zLmlwNi5zaW42X2FkZHIpCisgICAgICAgICAgICYmIChhLT5zLmlw
Ni5zaW42X3BvcnQgPT0gYi0+cy5pcDYuc2luNl9wb3J0KQorLSAgICAgICAgICAmJiAoYS0+cy5p
cDYuc2luNl9zY29wZV9pZCA9PSBiLT5zLmlwNi5zaW42X3Njb3BlX2lkKTsKKysgICAgICAgICAg
JiYgKGEtPnMuaXA2LnNpbjZfc2NvcGVfaWQgPT0gMCB8fCBiLT5zLmlwNi5zaW42X3Njb3BlX2lk
ID09IDAgfHwKKysgICAgICAgICAgICAgIChhLT5zLmlwNi5zaW42X3Njb3BlX2lkID09IGItPnMu
aXA2LnNpbjZfc2NvcGVfaWQpKTsKKyAKKyAgICAgZGVmYXVsdDoKKyAgICAgICBnX3JldHVybl92
YWxfaWZfcmVhY2hlZCAoRkFMU0UpOworQEAgLTQxMiw3ICs0MTMsOCBAQCBuaWNlX2FkZHJlc3Nf
ZXF1YWxfbm9fcG9ydCAoY29uc3QgTmljZUFkZHJlc3MgKmEsIGNvbnN0IE5pY2VBZGRyZXNzICpi
KQorIAorICAgICBjYXNlIEFGX0lORVQ2OgorICAgICAgIHJldHVybiBJTjZfQVJFX0FERFJfRVFV
QUwgKCZhLT5zLmlwNi5zaW42X2FkZHIsICZiLT5zLmlwNi5zaW42X2FkZHIpCistICAgICAgICAg
ICYmIChhLT5zLmlwNi5zaW42X3Njb3BlX2lkID09IGItPnMuaXA2LnNpbjZfc2NvcGVfaWQpOwor
KyAgICAgICAgICAmJiAoYS0+cy5pcDYuc2luNl9zY29wZV9pZCA9PSAwIHx8IGItPnMuaXA2LnNp
bjZfc2NvcGVfaWQgPT0gMCB8fAorKyAgICAgICAgICAgICAgKGEtPnMuaXA2LnNpbjZfc2NvcGVf
aWQgPT0gYi0+cy5pcDYuc2luNl9zY29wZV9pZCkpOworIAorICAgICBkZWZhdWx0OgorICAgICAg
IGdfcmV0dXJuX3ZhbF9pZl9yZWFjaGVkIChGQUxTRSk7CistLSAKKzIuMy4yIChBcHBsZSBHaXQt
NTUpCisKZGlmZiAtLWdpdCBhL1Rvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwNC1SZW1vdmlu
Zy1uby1vcC1hc3NpZ25tZW50LnBhdGNoIGIvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDA0
LVJlbW92aW5nLW5vLW9wLWFzc2lnbm1lbnQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uOTNiZWE5MgotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL2d0ay9wYXRjaGVz
L2xpYm5pY2UtMDAwNC1SZW1vdmluZy1uby1vcC1hc3NpZ25tZW50LnBhdGNoCkBAIC0wLDAgKzEs
MjQgQEAKK0Zyb20gNmE4YzYzMjE5YzYzMmMyNzcwNzI2N2I2NTEwZGNhMDk2YzZmZDUxMSBNb24g
U2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IFlvdW5lc3MgQWxhb3VpIDxrYWthcm90b0BrYWth
cm90by5ob21lbGludXgubmV0PgorRGF0ZTogVHVlLCA1IE1heSAyMDE1IDE1OjA3OjEwIC0wNDAw
CitTdWJqZWN0OiBbUEFUQ0ggNC80XSBSZW1vdmluZyBuby1vcCBhc3NpZ25tZW50CisKKy0tLQor
IGFnZW50L2FnZW50LmMgfCAxIC0KKyAxIGZpbGUgY2hhbmdlZCwgMSBkZWxldGlvbigtKQorCitk
aWZmIC0tZ2l0IGEvYWdlbnQvYWdlbnQuYyBiL2FnZW50L2FnZW50LmMKK2luZGV4IDM4YjY3OWYu
Ljg0ZDQwOTMgMTAwNjQ0CistLS0gYS9hZ2VudC9hZ2VudC5jCisrKysgYi9hZ2VudC9hZ2VudC5j
CitAQCAtMzA1MSw3ICszMDUxLDYgQEAgc3RhdGljIGdib29sZWFuIHByaXZfYWRkX3JlbW90ZV9j
YW5kaWRhdGUgKAorICAgICAgICAgICB1c2VybmFtZSwgcGFzc3dvcmQsIHByaW9yaXR5KTsKKyAg
ICAgfQorICAgICAvKiBjYXNlIDE6IGFuIGV4aXN0aW5nIGNhbmRpZGF0ZSwgdXBkYXRlIHRoZSBh
dHRyaWJ1dGVzICovCistICAgIGNhbmRpZGF0ZS0+dHlwZSA9IHR5cGU7CisgICAgIGlmIChiYXNl
X2FkZHIpCisgICAgICAgY2FuZGlkYXRlLT5iYXNlX2FkZHIgPSAqYmFzZV9hZGRyOworICAgICBj
YW5kaWRhdGUtPnByaW9yaXR5ID0gcHJpb3JpdHk7CistLSAKKzIuMy4yIChBcHBsZSBHaXQtNTUp
CisKLS0gCjIuOS4z
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>291463</attachid>
            <date>2016-10-13 00:50:24 -0700</date>
            <delta_ts>2016-10-14 00:29:15 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch.patch</filename>
            <type>text/plain</type>
            <size>29374</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">RnJvbSBlYThkNzk5Yzk4NzExNzM0MmYzOTgyNzQ3OTcyZDQ5Njc0YjQ3YTMwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwZSBOb3JtYW5kIDxwbm9ybWFuZEBpZ2FsaWEuY29t
PgpEYXRlOiBXZWQsIDEyIE9jdCAyMDE2IDE2OjI3OjQyICswMjAwClN1YmplY3Q6IFtQQVRDSF0g
cGF0Y2gKCi0tLQogVG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgMjIgKysKIFRvb2xzL2d0ay9qaGJ1aWxkLm1vZHVsZXMgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAxICsKIFRvb2xzL2d0ay9vcGVud2VicnRjLm1vZHVsZXMgICAgICAgICAg
ICAgICAgICAgICAgIHwgIDc5ICsrKysrKysKIC4uLmxpYm5pY2UtMDAwMS1UVVJOLWFsbG93LVJF
QUxNLXRvLWJlLWVtcHR5LnBhdGNoIHwgIDUwICsrKysKIC4uLi0wMDAxLWFnZW50LVJlbW92ZS11
bm5lY2Vzc2FyeS1OVUxMLWNoZWNrLnBhdGNoIHwgIDQ0ICsrKysKIC4uLm4tdGhlLWFnZW50LW1h
aW5sb29wLWluLWEtc2VwYXJhdGUtdGhyZWFkLnBhdGNoIHwgMjUzICsrKysrKysrKysrKysrKysr
KysrKwogLi4uMi1Eby1ub3QtdXBkYXRlLWEtcmVtb3RlLWNhbmRpZGF0ZS1zLXR5cGUucGF0Y2gg
fCAgMzEgKysrCiAuLi4taGFuZGxlLTQzNy1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5w
YXRjaCB8IDEzMSArKysrKysrKysrKwogLi4uYXJlLXNjb3BlLWZvci1JUHY2LWFkZHJlc3Mtd2hl
bi1zY29wZS1pcy0ucGF0Y2ggfCAgNDMgKysrKwogLi4uL2xpYm5pY2UtMDAwNC1SZW1vdmluZy1u
by1vcC1hc3NpZ25tZW50LnBhdGNoICAgfCAgMjQgKysKIDEwIGZpbGVzIGNoYW5nZWQsIDY3OCBp
bnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9vbHMvZ3RrL29wZW53ZWJydGMubW9k
dWxlcwogY3JlYXRlIG1vZGUgMTAwNjQ0IFRvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMS1U
VVJOLWFsbG93LVJFQUxNLXRvLWJlLWVtcHR5LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9v
bHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAxLWFnZW50LVJlbW92ZS11bm5lY2Vzc2FyeS1OVUxM
LWNoZWNrLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmlj
ZS0wMDAxLW5pY2VzcmMtc3Bpbi10aGUtYWdlbnQtbWFpbmxvb3AtaW4tYS1zZXBhcmF0ZS10aHJl
YWQucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBUb29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAw
MDItRG8tbm90LXVwZGF0ZS1hLXJlbW90ZS1jYW5kaWRhdGUtcy10eXBlLnBhdGNoCiBjcmVhdGUg
bW9kZSAxMDA2NDQgVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAyLVRVUk4taGFuZGxlLTQz
Ny1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0
IFRvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMy1Eby1ub3QtY29tcGFyZS1zY29wZS1mb3It
SVB2Ni1hZGRyZXNzLXdoZW4tc2NvcGUtaXMtLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9v
bHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDA0LVJlbW92aW5nLW5vLW9wLWFzc2lnbm1lbnQucGF0
Y2gKCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXgg
YjE3OWNlYi4uZWJmNTQ2ZSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE2LTEwLTEyICBQaGlsaXBwZSBOb3JtYW5k
ICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAgICBXZWJSVEM6IFtHVEtdIFVwZGF0ZSBq
aGJ1aWxkIGVudmlyb25tZW50IGZvciBPcGVuV2ViUlRDCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjMzMzAKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCcmluZyBiYWNrIHRoZSBvcGVud2VicnRjIEpIQnVp
bGQgbW9kdWxlc2V0IGluIHRoZSB0aW1lIGJlaW5nLiBJdAorICAgICAgICBzaG91bGQgYmUgcmVt
b3ZlZCBhZnRlciB0aGUgYnVtcCB0byBHU3RyZWFtZXIgMS4xMCBpcyBjb21wbGV0ZSBhbmQKKyAg
ICAgICAgdGhlIGxpYm5pY2UgcGF0Y2hlcyBoYXZlIGJlZW4gdXBzdHJlYW1lZC4gVGhlIEdTdHJl
YW1lciBnaXQKKyAgICAgICAgc25hcHNob3RzIHVzZWQgaW4gdGhpcyBwYXRjaCBhcmUgdGhlIG9u
ZXMgY29uZmlndXJlZCBpbiBFcmljc3NvbidzCisgICAgICAgIEdTdHJlYW1lciBDZXJiZXJvIGZv
cmsuCisKKyAgICAgICAgKiBndGsvb3BlbndlYnJ0Yy5tb2R1bGVzOiBBZGRlZC4KKyAgICAgICAg
KiBndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtVFVSTi1hbGxvdy1SRUFMTS10by1iZS1lbXB0eS5w
YXRjaDogQWRkZWQuCisgICAgICAgICogZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAxLWFnZW50LVJl
bW92ZS11bm5lY2Vzc2FyeS1OVUxMLWNoZWNrLnBhdGNoOiBBZGRlZC4KKyAgICAgICAgKiBndGsv
cGF0Y2hlcy9saWJuaWNlLTAwMDEtbmljZXNyYy1zcGluLXRoZS1hZ2VudC1tYWlubG9vcC1pbi1h
LXNlcGFyYXRlLXRocmVhZC5wYXRjaDogQWRkZWQuCisgICAgICAgICogZ3RrL3BhdGNoZXMvbGli
bmljZS0wMDAyLURvLW5vdC11cGRhdGUtYS1yZW1vdGUtY2FuZGlkYXRlLXMtdHlwZS5wYXRjaDog
QWRkZWQuCisgICAgICAgICogZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAyLVRVUk4taGFuZGxlLTQz
Ny1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5wYXRjaDogQWRkZWQuCisgICAgICAgICog
Z3RrL3BhdGNoZXMvbGlibmljZS0wMDAzLURvLW5vdC1jb21wYXJlLXNjb3BlLWZvci1JUHY2LWFk
ZHJlc3Mtd2hlbi1zY29wZS1pcy0ucGF0Y2g6IEFkZGVkLgorICAgICAgICAqIGd0ay9wYXRjaGVz
L2xpYm5pY2UtMDAwNC1SZW1vdmluZy1uby1vcC1hc3NpZ25tZW50LnBhdGNoOiBBZGRlZC4KKwog
MjAxNi0xMC0xMSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgog
CiAgICAgICAgIFVwZGF0ZSBBUEkgdGVzdCBleHBlY3RhdGlvbiBhZnRlciByMjA3MTYyLgpkaWZm
IC0tZ2l0IGEvVG9vbHMvZ3RrL2poYnVpbGQubW9kdWxlcyBiL1Rvb2xzL2d0ay9qaGJ1aWxkLm1v
ZHVsZXMKaW5kZXggNWQ4NmI3MS4uYTgzN2RkYSAxMDA2NDQKLS0tIGEvVG9vbHMvZ3RrL2poYnVp
bGQubW9kdWxlcworKysgYi9Ub29scy9ndGsvamhidWlsZC5tb2R1bGVzCkBAIC01MTIsNiArNTEy
LDcgQEAKICAgPGF1dG90b29scyBpZD0ib3BlbndlYnJ0YyIgYXV0b2dlbmFyZ3M9Ii0tZW5hYmxl
LWJyaWRnZT1ubyAtLWVuYWJsZS1vd3ItZ3N0PXllcyI+CiAgICAgPGRlcGVuZGVuY2llcz4KICAg
ICAgIDxkZXAgcGFja2FnZT0iZ3N0LXBsdWdpbnMtb3BlbndlYnJ0YyIvPgorICAgICAgPGRlcCBw
YWNrYWdlPSJnc3QtcGx1Z2lucy1iYWQiLz4KICAgICAgIDxkZXAgcGFja2FnZT0ibGlibmljZSIv
PgogICAgICA8L2RlcGVuZGVuY2llcz4KICAgICA8YnJhbmNoIHJlcG89ImdpdGh1Yi5jb20iIG1v
ZHVsZT0iRXJpY3Nzb25SZXNlYXJjaC9vcGVud2VicnRjLmdpdCIgY2hlY2tvdXRkaXI9Im9wZW53
ZWJydGMiIHRhZz0iMGIyOGIwODBkNjFhZjNhZGIxZjc3OWU2OTNmYzAyOWY5YzFhZDQ5OSIvPgpk
aWZmIC0tZ2l0IGEvVG9vbHMvZ3RrL29wZW53ZWJydGMubW9kdWxlcyBiL1Rvb2xzL2d0ay9vcGVu
d2VicnRjLm1vZHVsZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDZhY2Ji
MgotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL2d0ay9vcGVud2VicnRjLm1vZHVsZXMKQEAgLTAs
MCArMSw3OSBAQAorPD94bWwgdmVyc2lvbj0iMS4wIj8+Cis8IURPQ1RZUEUgbW9kdWxlc2V0IFNZ
U1RFTSAibW9kdWxlc2V0LmR0ZCI+Cis8P3htbC1zdHlsZXNoZWV0IHR5cGU9InRleHQveHNsIiBo
cmVmPSJtb2R1bGVzZXQueHNsIj8+Cis8bW9kdWxlc2V0PgorCisgIDxyZXBvc2l0b3J5IHR5cGU9
InRhcmJhbGwiIG5hbWU9ImdpdGh1Yi10YXJiYWxsIgorICAgICAgaHJlZj0iaHR0cHM6Ly9naXRo
dWIuY29tLyIvPgorICA8cmVwb3NpdG9yeSB0eXBlPSJnaXQiIG5hbWU9ImdzdHJlYW1lciIKKyAg
ICAgIGhyZWY9ImdpdDovL2Fub25naXQuZnJlZWRlc2t0b3Aub3JnL2dpdC9nc3RyZWFtZXIvIi8+
CisgIDxyZXBvc2l0b3J5IHR5cGU9InRhcmJhbGwiIG5hbWU9Im5pY2UuZnJlZWRlc2t0b3Aub3Jn
IgorICAgICAgaHJlZj0iaHR0cDovL25pY2UuZnJlZWRlc2t0b3Aub3JnIi8+CisKKyAgPGF1dG90
b29scyBpZD0ib3BlbmgyNjQiIHN1cHBvcnRzLW5vbi1zcmNkaXItYnVpbGRzPSJubyIgYXV0b2dl
bi1zaD0icHNldWRvLWNvbmZpZ3VyZSI+CisgICAgPGJyYW5jaCBtb2R1bGU9ImNpc2NvL29wZW5o
MjY0L2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6IiB2ZXJzaW9uPSIxLjUuMCIKKyAgICAgICAg
ICAgIGNoZWNrb3V0ZGlyPSJvcGVuaDI2NC0ke3ZlcnNpb259IiByZXBvPSJnaXRodWItdGFyYmFs
bCI+CisgICAgICA8cGF0Y2ggZmlsZT0ib3BlbmgyNjQtY29uZmlndXJlLnBhdGNoIiBzdHJpcD0i
MCIvPgorICAgIDwvYnJhbmNoPgorICA8L2F1dG90b29scz4KKworICA8YXV0b3Rvb2xzIGlkPSJs
aWJuaWNlIiBzdXBwb3J0cy1ub24tc3JjZGlyLWJ1aWxkcz0ibm8iPgorICAgIDxkZXBlbmRlbmNp
ZXM+CisgICAgICA8ZGVwIHBhY2thZ2U9ImdzdHJlYW1lciIvPgorICAgIDwvZGVwZW5kZW5jaWVz
PgorICAgIDxicmFuY2ggcmVwbz0ibmljZS5mcmVlZGVza3RvcC5vcmciIG1vZHVsZT0icmVsZWFz
ZXMvbGlibmljZS0ke3ZlcnNpb259LnRhci5neiIgdmVyc2lvbj0iMC4xLjEzIiBjaGVja291dGRp
cj0ibGlibmljZS0ke3ZlcnNpb259Ij4KKyAgICAgIDxwYXRjaCBmaWxlPSJsaWJuaWNlLTAwMDEt
YWdlbnQtUmVtb3ZlLXVubmVjZXNzYXJ5LU5VTEwtY2hlY2sucGF0Y2giIHN0cmlwPSIxIi8+Cisg
ICAgICA8cGF0Y2ggZmlsZT0ibGlibmljZS0wMDAyLURvLW5vdC11cGRhdGUtYS1yZW1vdGUtY2Fu
ZGlkYXRlLXMtdHlwZS5wYXRjaCIgc3RyaXA9IjEiLz4KKyAgICAgIDxwYXRjaCBmaWxlPSJsaWJu
aWNlLTAwMDMtRG8tbm90LWNvbXBhcmUtc2NvcGUtZm9yLUlQdjYtYWRkcmVzcy13aGVuLXNjb3Bl
LWlzLS5wYXRjaCIgc3RyaXA9IjEiLz4KKyAgICAgIDxwYXRjaCBmaWxlPSJsaWJuaWNlLTAwMDQt
UmVtb3Zpbmctbm8tb3AtYXNzaWdubWVudC5wYXRjaCIgc3RyaXA9IjEiLz4KKyAgICAgIDxwYXRj
aCBmaWxlPSJsaWJuaWNlLTAwMDEtbmljZXNyYy1zcGluLXRoZS1hZ2VudC1tYWlubG9vcC1pbi1h
LXNlcGFyYXRlLXRocmVhZC5wYXRjaCIgc3RyaXA9IjEiLz4KKyAgICAgIDxwYXRjaCBmaWxlPSJs
aWJuaWNlLTAwMDEtVFVSTi1hbGxvdy1SRUFMTS10by1iZS1lbXB0eS5wYXRjaCIgc3RyaXA9IjEi
Lz4KKyAgICAgIDxwYXRjaCBmaWxlPSJsaWJuaWNlLTAwMDItVFVSTi1oYW5kbGUtNDM3LUFsbG9j
YXRpb24tTWlzbWF0Y2gtcmVzcG9uc2VzLnBhdGNoIiBzdHJpcD0iMSIvPgorICAgIDwvYnJhbmNo
PgorICA8L2F1dG90b29scz4KKworICA8YXV0b3Rvb2xzIGlkPSJnc3RyZWFtZXIiIGF1dG9nZW5h
cmdzPSItLWRpc2FibGUtZ3RrLWRvYyI+CisgICAgPGlmIGNvbmRpdGlvbi1zZXQ9Im1hY29zIj4K
KyAgICAgIDxhdXRvZ2VuYXJncyB2YWx1ZT0iLS1kaXNhYmxlLWludHJvc3BlY3Rpb24iLz4KKyAg
ICA8L2lmPgorICAgIDxkZXBlbmRlbmNpZXM+CisgICAgICA8ZGVwIHBhY2thZ2U9Im9yYyIvPgor
ICAgIDwvZGVwZW5kZW5jaWVzPgorICAgIDxicmFuY2ggcmVwbz0iZ3N0cmVhbWVyIiBtb2R1bGU9
ImdzdHJlYW1lciIgY2hlY2tvdXRkaXI9ImdzdHJlYW1lci1iNmU2OWZmZGZiM2JiMjFkYmFkYThm
MDFiNDg4YWU4NzdmOGQyMDVjIiB0YWc9ImI2ZTY5ZmZkZmIzYmIyMWRiYWRhOGYwMWI0ODhhZTg3
N2Y4ZDIwNWMiLz4KKyAgPC9hdXRvdG9vbHM+CisKKyAgPGF1dG90b29scyBpZD0iZ3N0LXBsdWdp
bnMtYmFzZSIKKyAgICAgICAgICAgICBhdXRvZ2VuLXNoPSJhdXRvZ2VuLnNoIgorICAgICAgICAg
ICAgIGF1dG9nZW5hcmdzPSItLWRpc2FibGUtZXhhbXBsZXMgLS1kaXNhYmxlLWd0ay1kb2MiPgor
ICAgIDxpZiBjb25kaXRpb24tc2V0PSJtYWNvcyI+CisgICAgICA8YXV0b2dlbmFyZ3MgdmFsdWU9
Ii0tZGlzYWJsZS1pbnRyb3NwZWN0aW9uIi8+CisgICAgPC9pZj4KKyAgICA8ZGVwZW5kZW5jaWVz
PgorICAgICAgPGRlcCBwYWNrYWdlPSJnc3RyZWFtZXIiLz4KKyAgICA8L2RlcGVuZGVuY2llcz4K
KyAgICA8YnJhbmNoIHJlcG89ImdzdHJlYW1lciIgbW9kdWxlPSJnc3QtcGx1Z2lucy1iYXNlIiBj
aGVja291dGRpcj0iZ3N0LXBsdWdpbnMtYmFzZS1jZjE4ZmFlOWRlYjAyZjA4NjdiNjc1OTNmNjc4
YjkzMmY4ZWI5MzFhIiB0YWc9ImNmMThmYWU5ZGViMDJmMDg2N2I2NzU5M2Y2NzhiOTMyZjhlYjkz
MWEiLz4KKyAgPC9hdXRvdG9vbHM+CisKKyAgPGF1dG90b29scyBpZD0iZ3N0LXBsdWdpbnMtZ29v
ZCIgYXV0b2dlbmFyZ3M9Ii0tZGlzYWJsZS1leGFtcGxlcyAtLWRpc2FibGUtc291cCAtLWRpc2Fi
bGUtZ3RrLWRvYyI+CisgICAgPGlmIGNvbmRpdGlvbi1zZXQ9Im1hY29zIj4KKyAgICAgIDxhdXRv
Z2VuYXJncyB2YWx1ZT0iLS1kaXNhYmxlLWludHJvc3BlY3Rpb24iLz4KKyAgICA8L2lmPgorICAg
IDxkZXBlbmRlbmNpZXM+CisgICAgICA8ZGVwIHBhY2thZ2U9ImdzdC1wbHVnaW5zLWJhc2UiLz4K
KyAgICA8L2RlcGVuZGVuY2llcz4KKyAgICAgPGJyYW5jaCByZXBvPSJnc3RyZWFtZXIiIG1vZHVs
ZT0iZ3N0LXBsdWdpbnMtZ29vZCIgY2hlY2tvdXRkaXI9ImdzdC1wbHVnaW5zLWdvb2QtNTY3YWZk
ZDRkM2YyZmEwN2ZlY2Y0YzAyYTdlY2E3MGY3YTdlZjdmNyIgdGFnPSI1NjdhZmRkNGQzZjJmYTA3
ZmVjZjRjMDJhN2VjYTcwZjdhN2VmN2Y3Ii8+CisgIDwvYXV0b3Rvb2xzPgorCisgIDxhdXRvdG9v
bHMgaWQ9ImdzdC1wbHVnaW5zLWJhZCIgYXV0b2dlbmFyZ3M9Ii0tZGlzYWJsZS1leGFtcGxlcyAt
LWRpc2FibGUtZ3RrLWRvYyAtLWVuYWJsZS1vcGVuaDI2NCI+CisgICAgPGlmIGNvbmRpdGlvbi1z
ZXQ9Im1hY29zIj4KKyAgICAgIDxhdXRvZ2VuYXJncyB2YWx1ZT0iLS1kaXNhYmxlLWludHJvc3Bl
Y3Rpb24iLz4KKyAgICA8L2lmPgorICAgIDxkZXBlbmRlbmNpZXM+CisgICAgICA8ZGVwIHBhY2th
Z2U9ImdzdC1wbHVnaW5zLWJhc2UiLz4KKyAgICAgIDxkZXAgcGFja2FnZT0ib3BlbndlYnJ0YyIv
PgorICAgICAgPGRlcCBwYWNrYWdlPSJvcGVuaDI2NCIvPgorICAgIDwvZGVwZW5kZW5jaWVzPgor
ICAgIDxicmFuY2ggcmVwbz0iZ3N0cmVhbWVyIiBtb2R1bGU9ImdzdC1wbHVnaW5zLWJhZCIgY2hl
Y2tvdXRkaXI9ImdzdC1wbHVnaW5zLWJhZC1hMDM2YjdlZjlmZmU5ZmU1ZGFjNGE3ZTQ2ZmJjM2Jh
YzkyOTIxYTU0IiB0YWc9ImEwMzZiN2VmOWZmZTlmZTVkYWM0YTdlNDZmYmMzYmFjOTI5MjFhNTQi
Lz4KKyAgPC9hdXRvdG9vbHM+CisgIAorPC9tb2R1bGVzZXQ+CmRpZmYgLS1naXQgYS9Ub29scy9n
dGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtVFVSTi1hbGxvdy1SRUFMTS10by1iZS1lbXB0eS5wYXRj
aCBiL1Rvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMS1UVVJOLWFsbG93LVJFQUxNLXRvLWJl
LWVtcHR5LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdmNTJlNDAK
LS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtVFVSTi1h
bGxvdy1SRUFMTS10by1iZS1lbXB0eS5wYXRjaApAQCAtMCwwICsxLDUwIEBACitGcm9tIDBjNTUx
NjZhODE3ZWM1MTA5NjQ2MGY3ODkyMzRlZjQ5MjM3MDAwY2MgTW9uIFNlcCAxNyAwMDowMDowMCAy
MDAxCitGcm9tOiBBbGVzc2FuZHJvIERlY2luYSA8YWxlc3NhbmRyby5kQGdtYWlsLmNvbT4KK0Rh
dGU6IFRodSwgMjQgTWFyIDIwMTYgMTA6NDg6MjcgKzExMDAKK1N1YmplY3Q6IFtQQVRDSCAxLzJd
IFRVUk46IGFsbG93IFJFQUxNIHRvIGJlIGVtcHR5CisKKy0tLQorIGFnZW50L2Nvbm5jaGVjay5j
IHwgNiArKy0tLS0KKyBzdHVuL3N0dW5obWFjLmMgICB8IDYgKysrKy0tCisgMiBmaWxlcyBjaGFu
Z2VkLCA2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9hZ2Vu
dC9jb25uY2hlY2suYyBiL2FnZW50L2Nvbm5jaGVjay5jCitpbmRleCAwNTdmYzgxLi45N2JmNTM2
IDEwMDY0NAorLS0tIGEvYWdlbnQvY29ubmNoZWNrLmMKKysrKyBiL2FnZW50L2Nvbm5jaGVjay5j
CitAQCAtMjc2OCwxMyArMjc2OCwxMSBAQCBzdGF0aWMgZ2Jvb2xlYW4gcHJpdl9tYXBfcmVwbHlf
dG9fcmVsYXlfcmVxdWVzdCAoTmljZUFnZW50ICphZ2VudCwgU3R1bk1lc3NhZ2UgKgorICAgICAg
ICAgICAgICAgIGFnZW50LT5jb21wYXRpYmlsaXR5ID09IE5JQ0VfQ09NUEFUSUJJTElUWV9PQzIw
MDdSMikgJiYKKyAgICAgICAgICAgICAgIHN0dW5fbWVzc2FnZV9nZXRfY2xhc3MgKHJlc3ApID09
IFNUVU5fRVJST1IgJiYKKyAgICAgICAgICAgICAgIHN0dW5fbWVzc2FnZV9maW5kX2Vycm9yIChy
ZXNwLCAmY29kZSkgPT0KKy0gICAgICAgICAgICAgIFNUVU5fTUVTU0FHRV9SRVRVUk5fU1VDQ0VT
UyAmJgorLSAgICAgICAgICAgICAgcmVjdl9yZWFsbSAhPSBOVUxMICYmIHJlY3ZfcmVhbG1fbGVu
ID4gMCkgeworLQorKyAgICAgICAgICAgICAgU1RVTl9NRVNTQUdFX1JFVFVSTl9TVUNDRVNTKSB7
CisgICAgICAgICAgICAgaWYgKGNvZGUgPT0gNDM4IHx8CisgICAgICAgICAgICAgICAgIChjb2Rl
ID09IDQwMSAmJgorICAgICAgICAgICAgICAgICAgICAgIShyZWN2X3JlYWxtX2xlbiA9PSBzZW50
X3JlYWxtX2xlbiAmJgorLSAgICAgICAgICAgICAgICAgICAgICAgIHNlbnRfcmVhbG0gIT0gTlVM
TCAmJgorKyAgICAgICAgICAgICAgICAgICAgICAgIHJlY3ZfcmVhbG0gIT0gTlVMTCAmJiBzZW50
X3JlYWxtICE9IE5VTEwgJiYKKyAgICAgICAgICAgICAgICAgICAgICAgICBtZW1jbXAgKHNlbnRf
cmVhbG0sIHJlY3ZfcmVhbG0sIHNlbnRfcmVhbG1fbGVuKSA9PSAwKSkpIHsKKyAgICAgICAgICAg
ICAgIGQtPnN0dW5fcmVzcF9tc2cgPSAqcmVzcDsKKyAgICAgICAgICAgICAgIG1lbWNweSAoZC0+
c3R1bl9yZXNwX2J1ZmZlciwgcmVzcC0+YnVmZmVyLAorZGlmZiAtLWdpdCBhL3N0dW4vc3R1bmht
YWMuYyBiL3N0dW4vc3R1bmhtYWMuYworaW5kZXggZGY1ZGViNi4uZjczOTQzZiAxMDA2NDQKKy0t
LSBhL3N0dW4vc3R1bmhtYWMuYworKysrIGIvc3R1bi9zdHVuaG1hYy5jCitAQCAtOTAsOCArOTAs
MTAgQEAgc3RhdGljIGNvbnN0IHVpbnQ4X3QgKnByaXZfdHJpbV92YXIgKGNvbnN0IHVpbnQ4X3Qg
KnZhciwgc2l6ZV90ICp2YXJfbGVuKQorICAgICBwdHIrKzsKKyAgICAgKCp2YXJfbGVuKS0tOwor
ICAgfQorLSAgd2hpbGUocHRyWyp2YXJfbGVuLTFdID09ICciJyB8fAorLSAgICAgIHB0clsqdmFy
X2xlbi0xXSA9PSAwKSB7CisrCisrICB3aGlsZSgqdmFyX2xlbiA+IDAgJiYKKysgICAgICAocHRy
Wyp2YXJfbGVuLTFdID09ICciJyB8fAorKyAgICAgIHB0clsqdmFyX2xlbi0xXSA9PSAwKSkgewor
ICAgICAoKnZhcl9sZW4pLS07CisgICB9CisgCistLSAKKzIuMy40CisKZGlmZiAtLWdpdCBhL1Rv
b2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMS1hZ2VudC1SZW1vdmUtdW5uZWNlc3NhcnktTlVM
TC1jaGVjay5wYXRjaCBiL1Rvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMS1hZ2VudC1SZW1v
dmUtdW5uZWNlc3NhcnktTlVMTC1jaGVjay5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi5iNGVjZjhjCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvZ3RrL3BhdGNoZXMv
bGlibmljZS0wMDAxLWFnZW50LVJlbW92ZS11bm5lY2Vzc2FyeS1OVUxMLWNoZWNrLnBhdGNoCkBA
IC0wLDAgKzEsNDQgQEAKK0Zyb20gN2I3ZDJkOTg2ODc2ZmM1M2EyM2FmN2I1MTZkNzhmODJmMmE1
NDZlOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IFBoaWxpcCBXaXRobmFsbCA8cGhp
bGlwQHRlY25vY29kZS5jby51az4KK0RhdGU6IFN1biwgMyBNYXkgMjAxNSAxNjowNTozMCArMDEw
MAorU3ViamVjdDogW1BBVENIIDEvNF0gYWdlbnQ6IFJlbW92ZSB1bm5lY2Vzc2FyeSBOVUxMIGNo
ZWNrCisKK1dpdGggdGhlIGNoYW5nZXMgaW4gY29tbWl0IDQ4M2JkY2Y4LCBAbmFtZSBpcyBub3cg
Z3VhcmFudGVlZCB0byBiZQorbm9uLU5VTEwuIFNwb3R0ZWQgYnkgQ292ZXJpdHkuCisKK0NJRDog
IzEwOTg3OAorLS0tCisgYWdlbnQvYWdlbnQuYyB8IDE2ICsrKysrKystLS0tLS0tLS0KKyAxIGZp
bGUgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0
IGEvYWdlbnQvYWdlbnQuYyBiL2FnZW50L2FnZW50LmMKK2luZGV4IDI1OWZkYzkuLmU3MzNjODIg
MTAwNjQ0CistLS0gYS9hZ2VudC9hZ2VudC5jCisrKysgYi9hZ2VudC9hZ2VudC5jCitAQCAtNTMy
OSwxNiArNTMyOSwxNCBAQCBuaWNlX2FnZW50X3NldF9zdHJlYW1fbmFtZSAoTmljZUFnZW50ICph
Z2VudCwgZ3VpbnQgc3RyZWFtX2lkLAorIAorICAgYWdlbnRfbG9jaygpOworIAorLSAgaWYgKG5h
bWUgIT0gTlVMTCkgeworLSAgICBmb3IgKGkgPSBhZ2VudC0+c3RyZWFtczsgaTsgaSA9IGktPm5l
eHQpIHsKKy0gICAgICBTdHJlYW0gKnN0cmVhbSA9IGktPmRhdGE7CisrICBmb3IgKGkgPSBhZ2Vu
dC0+c3RyZWFtczsgaTsgaSA9IGktPm5leHQpIHsKKysgICAgU3RyZWFtICpzdHJlYW0gPSBpLT5k
YXRhOworIAorLSAgICAgIGlmIChzdHJlYW0tPmlkICE9IHN0cmVhbV9pZCAmJgorLSAgICAgICAg
ICBnX3N0cmNtcDAgKHN0cmVhbS0+bmFtZSwgbmFtZSkgPT0gMCkKKy0gICAgICAgIGdvdG8gZG9u
ZTsKKy0gICAgICBlbHNlIGlmIChzdHJlYW0tPmlkID09IHN0cmVhbV9pZCkKKy0gICAgICAgIHN0
cmVhbV90b19uYW1lID0gc3RyZWFtOworLSAgICB9CisrICAgIGlmIChzdHJlYW0tPmlkICE9IHN0
cmVhbV9pZCAmJgorKyAgICAgICAgZ19zdHJjbXAwIChzdHJlYW0tPm5hbWUsIG5hbWUpID09IDAp
CisrICAgICAgZ290byBkb25lOworKyAgICBlbHNlIGlmIChzdHJlYW0tPmlkID09IHN0cmVhbV9p
ZCkKKysgICAgICBzdHJlYW1fdG9fbmFtZSA9IHN0cmVhbTsKKyAgIH0KKyAKKyAgIGlmIChzdHJl
YW1fdG9fbmFtZSA9PSBOVUxMKQorLS0gCisyLjMuMiAoQXBwbGUgR2l0LTU1KQorCmRpZmYgLS1n
aXQgYS9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtbmljZXNyYy1zcGluLXRoZS1hZ2Vu
dC1tYWlubG9vcC1pbi1hLXNlcGFyYXRlLXRocmVhZC5wYXRjaCBiL1Rvb2xzL2d0ay9wYXRjaGVz
L2xpYm5pY2UtMDAwMS1uaWNlc3JjLXNwaW4tdGhlLWFnZW50LW1haW5sb29wLWluLWEtc2VwYXJh
dGUtdGhyZWFkLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZhZjU3
ZTgKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtbmlj
ZXNyYy1zcGluLXRoZS1hZ2VudC1tYWlubG9vcC1pbi1hLXNlcGFyYXRlLXRocmVhZC5wYXRjaApA
QCAtMCwwICsxLDI1MyBAQAorRnJvbSAzMTk2YTk2YTQwOGE5MGY3MDdkZmYzZjMxZmEzZDA1ZDY0
YWViNjhhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogQWxlc3NhbmRybyBEZWNpbmEg
PGFsZXNzYW5kcm8uZEBnbWFpbC5jb20+CitEYXRlOiBUdWUsIDEzIE9jdCAyMDE1IDEyOjQ5OjE5
ICsxMTAwCitTdWJqZWN0OiBbUEFUQ0hdIG5pY2VzcmM6IHNwaW4gdGhlIGFnZW50IG1haW5sb29w
IGluIGEgc2VwYXJhdGUgdGhyZWFkCisKK0Rvbid0IHJ1biB0aGUgbWFpbmxvb3AgZnJvbSB0aGUg
c3JjcGFkIHRhc2ssIHNpbmNlIHRoYXQgY2FuIGdldCBibG9ja2VkIGluIHRoZQorcGlwZWxpbmUg
YW5kIGNhdXNlIHVubmVjZXNzYXJ5IFNUVU4gcmV0cmFzbWlzc2lvbnMgKGF0IGJlc3QpIGFuZCBj
b21wbGV0ZWx5CitibG9jayB0aGUgYWdlbnQgKGF0IHdvcnN0KS4KKy0tLQorIGdzdC9nc3RuaWNl
c3JjLmMgfCAxNTggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQorIGdzdC9nc3RuaWNlc3JjLmggfCAgIDQgKy0KKyAyIGZpbGVzIGNoYW5nZWQs
IDkzIGluc2VydGlvbnMoKyksIDY5IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvZ3N0L2dz
dG5pY2VzcmMuYyBiL2dzdC9nc3RuaWNlc3JjLmMKK2luZGV4IGQzNjllMDkuLmViNTlmZTkgMTAw
NjQ0CistLS0gYS9nc3QvZ3N0bmljZXNyYy5jCisrKysgYi9nc3QvZ3N0bmljZXNyYy5jCitAQCAt
NDgsNiArNDgsMTQgQEAgR1NUX0RFQlVHX0NBVEVHT1JZX1NUQVRJQyAobmljZXNyY19kZWJ1Zyk7
CisgCisgI2RlZmluZSBCVUZGRVJfU0laRSAoNjU1MzYpCisgCisrc3RhdGljIGdib29sZWFuCisr
Z3N0X25pY2Vfc3JjX3N0YXJ0ICgKKysgICAgR3N0QmFzZVNyYyAqYmFzZXNyYyk7CisrCisrc3Rh
dGljIGdib29sZWFuCisrZ3N0X25pY2Vfc3JjX3N0b3AgKAorKyAgICBHc3RCYXNlU3JjICpiYXNl
c3JjKTsKKysKKyBzdGF0aWMgR3N0Rmxvd1JldHVybgorIGdzdF9uaWNlX3NyY19jcmVhdGUgKAor
ICAgR3N0UHVzaFNyYyAqYmFzZXNyYywKK0BAIC01NywxMCArNjUsNiBAQCBzdGF0aWMgZ2Jvb2xl
YW4KKyBnc3RfbmljZV9zcmNfdW5sb2NrICgKKyAgICAgR3N0QmFzZVNyYyAqYmFzZXNyYyk7Cisg
Cistc3RhdGljIGdib29sZWFuCistZ3N0X25pY2Vfc3JjX3VubG9ja19zdG9wICgKKy0gICAgR3N0
QmFzZVNyYyAqYmFzZXNyYyk7CistCisgc3RhdGljIHZvaWQKKyBnc3RfbmljZV9zcmNfc2V0X3By
b3BlcnR5ICgKKyAgIEdPYmplY3QgKm9iamVjdCwKK0BAIC0xMTYsOCArMTIwLDkgQEAgZ3N0X25p
Y2Vfc3JjX2NsYXNzX2luaXQgKEdzdE5pY2VTcmNDbGFzcyAqa2xhc3MpCisgICBnc3RwdXNoc3Jj
X2NsYXNzLT5jcmVhdGUgPSBHU1RfREVCVUdfRlVOQ1BUUiAoZ3N0X25pY2Vfc3JjX2NyZWF0ZSk7
CisgCisgICBnc3RiYXNlc3JjX2NsYXNzID0gKEdzdEJhc2VTcmNDbGFzcyAqKSBrbGFzczsKKysg
IGdzdGJhc2VzcmNfY2xhc3MtPnN0YXJ0ID0gR1NUX0RFQlVHX0ZVTkNQVFIgKGdzdF9uaWNlX3Ny
Y19zdGFydCk7CisrICBnc3RiYXNlc3JjX2NsYXNzLT5zdG9wID0gR1NUX0RFQlVHX0ZVTkNQVFIg
KGdzdF9uaWNlX3NyY19zdG9wKTsKKyAgIGdzdGJhc2VzcmNfY2xhc3MtPnVubG9jayA9IEdTVF9E
RUJVR19GVU5DUFRSIChnc3RfbmljZV9zcmNfdW5sb2NrKTsKKy0gIGdzdGJhc2VzcmNfY2xhc3Mt
PnVubG9ja19zdG9wID0gR1NUX0RFQlVHX0ZVTkNQVFIgKGdzdF9uaWNlX3NyY191bmxvY2tfc3Rv
cCk7CisgCisgICBnb2JqZWN0X2NsYXNzID0gKEdPYmplY3RDbGFzcyAqKSBrbGFzczsKKyAgIGdv
YmplY3RfY2xhc3MtPnNldF9wcm9wZXJ0eSA9IGdzdF9uaWNlX3NyY19zZXRfcHJvcGVydHk7CitA
QCAtMTc5LDkgKzE4NCw4MyBAQCBnc3RfbmljZV9zcmNfaW5pdCAoR3N0TmljZVNyYyAqc3JjKQor
ICAgc3JjLT5jb21wb25lbnRfaWQgPSAwOworICAgc3JjLT5tYWluY3R4ID0gZ19tYWluX2NvbnRl
eHRfbmV3ICgpOworICAgc3JjLT5tYWlubG9vcCA9IGdfbWFpbl9sb29wX25ldyAoc3JjLT5tYWlu
Y3R4LCBGQUxTRSk7CistICBzcmMtPnVubG9ja2VkID0gRkFMU0U7CistICBzcmMtPmlkbGVfc291
cmNlID0gTlVMTDsKKyAgIHNyYy0+b3V0YnVmcyA9IGdfcXVldWVfbmV3ICgpOworKyAgc3JjLT5h
Z2VudF9pb190aHJlYWQgPSBOVUxMOworKyAgZ19jb25kX2luaXQgKCZzcmMtPm91dGNvbmQpOwor
K30KKysKKytzdGF0aWMgZ3BvaW50ZXIKKytnc3RfbmljZV9zcmNfYWdlbnRfaW9fdGhyZWFkIChn
cG9pbnRlciBkYXRhKQorK3sKKysgIEdzdE5pY2VTcmMgKm5pY2VzcmMgPSBHU1RfTklDRV9TUkMg
KGRhdGEpOworKworKyAgR1NUX0lORk9fT0JKRUNUIChuaWNlc3JjLCAic3RhcnRpbmcgYWdlbnQg
aW8gdGhyZWFkIik7CisrICBnX21haW5fbG9vcF9ydW4gKG5pY2VzcmMtPm1haW5sb29wKTsKKysg
IEdTVF9JTkZPX09CSkVDVCAobmljZXNyYywgImV4aXRpbmcgYWdlbnQgaW8gdGhyZWFkIik7Cisr
CisrICByZXR1cm4gTlVMTDsKKyt9CisrCisrc3RhdGljIGdib29sZWFuCisrbWFpbl9sb29wX3J1
bm5pbmdfY2IgKGdwb2ludGVyIGRhdGEpCisreworKyAgR3N0TmljZVNyYyAqbmljZXNyYyA9IEdT
VF9OSUNFX1NSQyAoZGF0YSk7CisrCisrICBHU1RfT0JKRUNUX0xPQ0sgKG5pY2VzcmMpOworKyAg
LyogX3N0YXJ0KCkgYW5kIF9zdG9wKCkgY291bGQgYm90aCBiZSB3YWl0aW5nIGZvciB0aGUgbWFp
bmxvb3AgdG8gc3RhcnQgc28gd2UKKysgICAqIG5lZWQgdG8gYnJvYWRjYXN0ICovCisrICBnX2Nv
bmRfYnJvYWRjYXN0ICgmbmljZXNyYy0+b3V0Y29uZCk7CisrICBHU1RfT0JKRUNUX1VOTE9DSyAo
bmljZXNyYyk7CisrCisrICByZXR1cm4gRkFMU0U7CisrfQorKworK3N0YXRpYyBnYm9vbGVhbgor
K2dzdF9uaWNlX3NyY19zdGFydCAoR3N0QmFzZVNyYyAqIGJhc2VzcmMpCisreworKyAgR3N0Tmlj
ZVNyYyAqbmljZXNyYyA9IEdTVF9OSUNFX1NSQyAoYmFzZXNyYyk7CisrICBHU291cmNlICpzb3Vy
Y2U7CisrICBnY2hhciAqdGhyZWFkX25hbWU7CisrCisrICBHU1RfT0JKRUNUX0xPQ0sgKG5pY2Vz
cmMpOworKyAgc291cmNlID0gZ19pZGxlX3NvdXJjZV9uZXcgKCk7CisrICBnX3NvdXJjZV9zZXRf
Y2FsbGJhY2sgKHNvdXJjZSwKKysgICAgICAoR1NvdXJjZUZ1bmMpIG1haW5fbG9vcF9ydW5uaW5n
X2NiLCBuaWNlc3JjLCBOVUxMKTsKKysgIGdfc291cmNlX2F0dGFjaCAoc291cmNlLCBuaWNlc3Jj
LT5tYWluY3R4KTsKKysgIGdfc291cmNlX3VucmVmIChzb3VyY2UpOworKworKyAgdGhyZWFkX25h
bWUgPSBnX3N0cmR1cF9wcmludGYgKCIlczphZ2VudF9pbyIsIEdTVF9PQkpFQ1RfTkFNRSAobmlj
ZXNyYykpOworKyAgbmljZXNyYy0+YWdlbnRfaW9fdGhyZWFkID0gZ190aHJlYWRfbmV3ICh0aHJl
YWRfbmFtZSwgZ3N0X25pY2Vfc3JjX2FnZW50X2lvX3RocmVhZCwgbmljZXNyYyk7CisrICBnX2Zy
ZWUgKHRocmVhZF9uYW1lKTsKKysgIC8qIHdhaXQgdW50aWwgdGhlIGFnZW50IHRocmVhZCBzdGFy
dHMgc3Bpbm5pbmcgdGhlIG1haW5sb29wIG9yIF9zdG9wKCkgaXMKKysgICAqIGNhbGxlZCAqLwor
KyAgd2hpbGUgKEdTVF9CQVNFX1NSQ19JU19TVEFSVElORyAoYmFzZXNyYykgJiYKKysgICAgICAh
Z19tYWluX2xvb3BfaXNfcnVubmluZyAobmljZXNyYy0+bWFpbmxvb3ApKQorKyAgICBnX2NvbmRf
d2FpdCAoJm5pY2VzcmMtPm91dGNvbmQsIEdTVF9PQkpFQ1RfR0VUX0xPQ0sgKG5pY2VzcmMpKTsK
KysgIEdTVF9PQkpFQ1RfVU5MT0NLIChuaWNlc3JjKTsKKysKKysgIHJldHVybiBUUlVFOworK30K
KysKKytzdGF0aWMgZ2Jvb2xlYW4KKytnc3RfbmljZV9zcmNfc3RvcCAoR3N0QmFzZVNyYyAqIGJh
c2VzcmMpCisreworKyAgR3N0TmljZVNyYyAqbmljZXNyYyA9IEdTVF9OSUNFX1NSQyAoYmFzZXNy
Yyk7CisrICBHVGhyZWFkICphZ2VudF9pb190aHJlYWQgPSBOVUxMOworKworKyAgR1NUX09CSkVD
VF9MT0NLIChuaWNlc3JjKTsKKysgIC8qIGhlcmUgd2Ugd2FpdCBmb3IgdGhlIGFnZW50IHRocmVh
ZCBjcmVhdGVkIGluIF9zdGFydCgpIHRvIGJlIHNjaGVkdWxlZCBzbworKyAgICogdGhhdCB3ZSBk
b24ndCByaXNrIGNhbGxpbmcgX3F1aXQoKSBmaXJzdCBhbmQgdGhlbiBfcnVuKCkgb24gdGhlIG1h
aW5sb29wICovCisrICB3aGlsZSAoIWdfbWFpbl9sb29wX2lzX3J1bm5pbmcgKG5pY2VzcmMtPm1h
aW5sb29wKSkKKysgICAgZ19jb25kX3dhaXQgKCZuaWNlc3JjLT5vdXRjb25kLCBHU1RfT0JKRUNU
X0dFVF9MT0NLIChuaWNlc3JjKSk7CisrICBnX21haW5fbG9vcF9xdWl0IChuaWNlc3JjLT5tYWlu
bG9vcCk7CisrICBhZ2VudF9pb190aHJlYWQgPSBuaWNlc3JjLT5hZ2VudF9pb190aHJlYWQ7Cisr
ICBuaWNlc3JjLT5hZ2VudF9pb190aHJlYWQgPSBOVUxMOworKyAgR1NUX09CSkVDVF9VTkxPQ0sg
KG5pY2VzcmMpOworKworKyAgZ190aHJlYWRfam9pbiAoYWdlbnRfaW9fdGhyZWFkKTsKKysKKysg
IHJldHVybiBUUlVFOworIH0KKyAKKyBzdGF0aWMgdm9pZAorQEAgLTIwNyw2MiArMjg2LDE3IEBA
IGdzdF9uaWNlX3NyY19yZWFkX2NhbGxiYWNrIChOaWNlQWdlbnQgKmFnZW50LAorICNlbmRpZgor
ICAgR1NUX09CSkVDVF9MT0NLIChuaWNlc3JjKTsKKyAgIGdfcXVldWVfcHVzaF90YWlsIChuaWNl
c3JjLT5vdXRidWZzLCBidWZmZXIpOworLSAgZ19tYWluX2xvb3BfcXVpdCAobmljZXNyYy0+bWFp
bmxvb3ApOworKyAgZ19jb25kX3NpZ25hbCAoJm5pY2VzcmMtPm91dGNvbmQpOworICAgR1NUX09C
SkVDVF9VTkxPQ0sgKG5pY2VzcmMpOworIH0KKyAKKyBzdGF0aWMgZ2Jvb2xlYW4KKy1nc3Rfbmlj
ZV9zcmNfdW5sb2NrX2lkbGVyIChncG9pbnRlciBkYXRhKQorLXsKKy0gIEdzdE5pY2VTcmMgKm5p
Y2VzcmMgPSBHU1RfTklDRV9TUkMgKGRhdGEpOworLQorLSAgR1NUX09CSkVDVF9MT0NLIChuaWNl
c3JjKTsKKy0gIGlmIChuaWNlc3JjLT51bmxvY2tlZCkKKy0gICAgZ19tYWluX2xvb3BfcXVpdCAo
bmljZXNyYy0+bWFpbmxvb3ApOworLQorLSAgaWYgKG5pY2VzcmMtPmlkbGVfc291cmNlKSB7Cist
ICAgIGdfc291cmNlX2Rlc3Ryb3kgKG5pY2VzcmMtPmlkbGVfc291cmNlKTsKKy0gICAgZ19zb3Vy
Y2VfdW5yZWYgKG5pY2VzcmMtPmlkbGVfc291cmNlKTsKKy0gICAgbmljZXNyYy0+aWRsZV9zb3Vy
Y2UgPSBOVUxMOworLSAgfQorLSAgR1NUX09CSkVDVF9VTkxPQ0sgKG5pY2VzcmMpOworLQorLSAg
cmV0dXJuIEZBTFNFOworLX0KKy0KKy1zdGF0aWMgZ2Jvb2xlYW4KKyBnc3RfbmljZV9zcmNfdW5s
b2NrIChHc3RCYXNlU3JjICpzcmMpCisgeworICAgR3N0TmljZVNyYyAqbmljZXNyYyA9IEdTVF9O
SUNFX1NSQyAoc3JjKTsKKyAKKyAgIEdTVF9PQkpFQ1RfTE9DSyAoc3JjKTsKKy0gIG5pY2VzcmMt
PnVubG9ja2VkID0gVFJVRTsKKy0KKy0gIGdfbWFpbl9sb29wX3F1aXQgKG5pY2VzcmMtPm1haW5s
b29wKTsKKy0KKy0gIGlmICghbmljZXNyYy0+aWRsZV9zb3VyY2UpIHsKKy0gICAgbmljZXNyYy0+
aWRsZV9zb3VyY2UgPSBnX2lkbGVfc291cmNlX25ldyAoKTsKKy0gICAgZ19zb3VyY2Vfc2V0X3By
aW9yaXR5IChuaWNlc3JjLT5pZGxlX3NvdXJjZSwgR19QUklPUklUWV9ISUdIKTsKKy0gICAgZ19z
b3VyY2Vfc2V0X2NhbGxiYWNrIChuaWNlc3JjLT5pZGxlX3NvdXJjZSwgZ3N0X25pY2Vfc3JjX3Vu
bG9ja19pZGxlciwgc3JjLCBOVUxMKTsKKy0gICAgZ19zb3VyY2VfYXR0YWNoIChuaWNlc3JjLT5p
ZGxlX3NvdXJjZSwgZ19tYWluX2xvb3BfZ2V0X2NvbnRleHQgKG5pY2VzcmMtPm1haW5sb29wKSk7
CistICB9CistICBHU1RfT0JKRUNUX1VOTE9DSyAoc3JjKTsKKy0KKy0gIHJldHVybiBUUlVFOwor
LX0KKy0KKy1zdGF0aWMgZ2Jvb2xlYW4KKy1nc3RfbmljZV9zcmNfdW5sb2NrX3N0b3AgKEdzdEJh
c2VTcmMgKnNyYykKKy17CistICBHc3ROaWNlU3JjICpuaWNlc3JjID0gR1NUX05JQ0VfU1JDIChz
cmMpOworLQorLSAgR1NUX09CSkVDVF9MT0NLIChzcmMpOworLSAgbmljZXNyYy0+dW5sb2NrZWQg
PSBGQUxTRTsKKy0gIGlmIChuaWNlc3JjLT5pZGxlX3NvdXJjZSkgeworLSAgICBnX3NvdXJjZV9k
ZXN0cm95IChuaWNlc3JjLT5pZGxlX3NvdXJjZSk7CistICAgIGdfc291cmNlX3VucmVmKG5pY2Vz
cmMtPmlkbGVfc291cmNlKTsKKy0gIH0KKy0gIG5pY2VzcmMtPmlkbGVfc291cmNlID0gTlVMTDsK
KysgIGdfY29uZF9zaWduYWwgKCZuaWNlc3JjLT5vdXRjb25kKTsKKyAgIEdTVF9PQkpFQ1RfVU5M
T0NLIChzcmMpOworIAorICAgcmV0dXJuIFRSVUU7CitAQCAtMjc4LDE5ICszMTIsOCBAQCBnc3Rf
bmljZV9zcmNfY3JlYXRlICgKKyAgIEdTVF9MT0dfT0JKRUNUIChuaWNlc3JjLCAiY3JlYXRlIGNh
bGxlZCIpOworIAorICAgR1NUX09CSkVDVF9MT0NLIChiYXNlc3JjKTsKKy0gIGlmIChuaWNlc3Jj
LT51bmxvY2tlZCkgeworLSAgICBHU1RfT0JKRUNUX1VOTE9DSyAoYmFzZXNyYyk7CistI2lmIEdT
VF9DSEVDS19WRVJTSU9OICgxLDAsMCkKKy0gICAgcmV0dXJuIEdTVF9GTE9XX0ZMVVNISU5HOwor
LSNlbHNlCistICAgIHJldHVybiBHU1RfRkxPV19XUk9OR19TVEFURTsKKy0jZW5kaWYKKy0gIH0K
Ky0gIGlmIChnX3F1ZXVlX2lzX2VtcHR5IChuaWNlc3JjLT5vdXRidWZzKSkgeworLSAgICBHU1Rf
T0JKRUNUX1VOTE9DSyAoYmFzZXNyYyk7CistICAgIGdfbWFpbl9sb29wX3J1biAobmljZXNyYy0+
bWFpbmxvb3ApOworLSAgICBHU1RfT0JKRUNUX0xPQ0sgKGJhc2VzcmMpOworLSAgfQorKyAgaWYg
KGdfcXVldWVfaXNfZW1wdHkgKG5pY2VzcmMtPm91dGJ1ZnMpKQorKyAgICBnX2NvbmRfd2FpdCAo
Jm5pY2VzcmMtPm91dGNvbmQsIEdTVF9PQkpFQ1RfR0VUX0xPQ0sgKG5pY2VzcmMpKTsKKyAKKyAg
ICpidWZmZXIgPSBnX3F1ZXVlX3BvcF9oZWFkIChuaWNlc3JjLT5vdXRidWZzKTsKKyAgIEdTVF9P
QkpFQ1RfVU5MT0NLIChiYXNlc3JjKTsKK0BAIC0zMzEsNiArMzU0LDcgQEAgZ3N0X25pY2Vfc3Jj
X2Rpc3Bvc2UgKEdPYmplY3QgKm9iamVjdCkKKyAgICAgZ19xdWV1ZV9mcmVlIChzcmMtPm91dGJ1
ZnMpOworICAgfQorICAgc3JjLT5vdXRidWZzID0gTlVMTDsKKysgIGdfY29uZF9jbGVhciAoJnNy
Yy0+b3V0Y29uZCk7CisgCisgICBHX09CSkVDVF9DTEFTUyAoZ3N0X25pY2Vfc3JjX3BhcmVudF9j
bGFzcyktPmRpc3Bvc2UgKG9iamVjdCk7CisgfQorZGlmZiAtLWdpdCBhL2dzdC9nc3RuaWNlc3Jj
LmggYi9nc3QvZ3N0bmljZXNyYy5oCitpbmRleCA1ZDNmNTU0Li4yZDlmNjc0IDEwMDY0NAorLS0t
IGEvZ3N0L2dzdG5pY2VzcmMuaAorKysrIGIvZ3N0L2dzdG5pY2VzcmMuaAorQEAgLTY4LDggKzY4
LDggQEAgc3RydWN0IF9Hc3ROaWNlU3JjCisgICBHTWFpbkNvbnRleHQgKm1haW5jdHg7CisgICBH
TWFpbkxvb3AgKm1haW5sb29wOworICAgR1F1ZXVlICpvdXRidWZzOworLSAgZ2Jvb2xlYW4gdW5s
b2NrZWQ7CistICBHU291cmNlICppZGxlX3NvdXJjZTsKKysgIEdDb25kIG91dGNvbmQ7CisrICBH
VGhyZWFkICphZ2VudF9pb190aHJlYWQ7CisgfTsKKyAKKyB0eXBlZGVmIHN0cnVjdCBfR3N0Tmlj
ZVNyY0NsYXNzIEdzdE5pY2VTcmNDbGFzczsKKy0tIAorMi4zLjQKKwpkaWZmIC0tZ2l0IGEvVG9v
bHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAyLURvLW5vdC11cGRhdGUtYS1yZW1vdGUtY2FuZGlk
YXRlLXMtdHlwZS5wYXRjaCBiL1Rvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMi1Eby1ub3Qt
dXBkYXRlLWEtcmVtb3RlLWNhbmRpZGF0ZS1zLXR5cGUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uODFjYTY2YwotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL2d0ay9w
YXRjaGVzL2xpYm5pY2UtMDAwMi1Eby1ub3QtdXBkYXRlLWEtcmVtb3RlLWNhbmRpZGF0ZS1zLXR5
cGUucGF0Y2gKQEAgLTAsMCArMSwzMSBAQAorRnJvbSA5Mzg2MmMxZTE5NDA2MThlMDYxNDNkNDc4
OGY1NGJmZmQ0ZDFjNWRhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogWW91bmVzcyBB
bGFvdWkgPGtha2Fyb3RvQGtha2Fyb3RvLmhvbWVsaW51eC5uZXQ+CitEYXRlOiBUdWUsIDUgTWF5
IDIwMTUgMTQ6MjQ6MTUgLTA0MDAKK1N1YmplY3Q6IFtQQVRDSCAyLzRdIERvIG5vdCB1cGRhdGUg
YSByZW1vdGUgY2FuZGlkYXRlJ3MgdHlwZQorCitXaGVuIGFkZGluZyBhIHJlbW90ZSBjYW5kaWRh
dGUsIGlmIGl0J3MgdGhlIHNhbWUgaXA6cG9ydCwgd2Ugc2hvdWxkCithbHNvIGNoZWNrIGl0cyB0
eXBlLCBvdGhlcndpc2UgaXQncyBhIG5ldyBjYW5kaWRhdGUuIFdlIGNhbid0IGFsbG93CithIGNh
bmRpZGF0ZSB0eXBlIHRvIGJlIHVwZGF0ZWQuIFRoaXMgY2F1c2VkIGlzc3VlcyB0byBpa29uc3Rf
IG9uIElSQword2hlcmUgZm9yIHNvbWUgcmVhc29uIGEgaG9zdCBjYW5kaWRhdGUgYXBwZWFyZWQg
YXMgYm90aCBob3N0IGFuZCBwcmZseAorYW5kIHRoZSB1cGRhdGUgY2F1c2VkIGEgcmVtb3RlIGhv
c3QgY2FuZGlkYXRlIHRvIGJlIHVwZGF0ZWQgdG8gcHJmbHgKK2NhdXNpbmcgYSBjcmFzaCB3aGVu
IHRoZSBzb2NrcHRyIHdhcyBiZWluZyBhY2Nlc3NlZC4KKy0tLQorIGFnZW50L2FnZW50LmMgfCAy
ICstCisgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCisKK2Rp
ZmYgLS1naXQgYS9hZ2VudC9hZ2VudC5jIGIvYWdlbnQvYWdlbnQuYworaW5kZXggZTczM2M4Mi4u
MzhiNjc5ZiAxMDA2NDQKKy0tLSBhL2FnZW50L2FnZW50LmMKKysrKyBiL2FnZW50L2FnZW50LmMK
K0BAIC0zMDQxLDcgKzMwNDEsNyBAQCBzdGF0aWMgZ2Jvb2xlYW4gcHJpdl9hZGRfcmVtb3RlX2Nh
bmRpZGF0ZSAoCisgCisgICAvKiBzdGVwOiBjaGVjayB3aGV0aGVyIHRoZSBjYW5kaWRhdGUgYWxy
ZWFkeSBleGlzdHMgKi8KKyAgIGNhbmRpZGF0ZSA9IGNvbXBvbmVudF9maW5kX3JlbW90ZV9jYW5k
aWRhdGUoY29tcG9uZW50LCBhZGRyLCB0cmFuc3BvcnQpOworLSAgaWYgKGNhbmRpZGF0ZSkgewor
KyAgaWYgKGNhbmRpZGF0ZSAmJiBjYW5kaWRhdGUtPnR5cGUgPT0gdHlwZSkgeworICAgICBpZiAo
bmljZV9kZWJ1Z19pc19lbmFibGVkICgpKSB7CisgICAgICAgZ2NoYXIgdG1wYnVmW0lORVQ2X0FE
RFJTVFJMRU5dOworICAgICAgIG5pY2VfYWRkcmVzc190b19zdHJpbmcgKGFkZHIsIHRtcGJ1Zik7
CistLSAKKzIuMy4yIChBcHBsZSBHaXQtNTUpCisKZGlmZiAtLWdpdCBhL1Rvb2xzL2d0ay9wYXRj
aGVzL2xpYm5pY2UtMDAwMi1UVVJOLWhhbmRsZS00MzctQWxsb2NhdGlvbi1NaXNtYXRjaC1yZXNw
b25zZXMucGF0Y2ggYi9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDItVFVSTi1oYW5kbGUt
NDM3LUFsbG9jYXRpb24tTWlzbWF0Y2gtcmVzcG9uc2VzLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLjRhY2U4YzIKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9ndGsv
cGF0Y2hlcy9saWJuaWNlLTAwMDItVFVSTi1oYW5kbGUtNDM3LUFsbG9jYXRpb24tTWlzbWF0Y2gt
cmVzcG9uc2VzLnBhdGNoCkBAIC0wLDAgKzEsMTMxIEBACitGcm9tIDllMmNlZDEzMWFjMGZjNjQy
ZWY1Yzg2MTg1MWM1OTg4ZDhiOTZkMTYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBB
bGVzc2FuZHJvIERlY2luYSA8YWxlc3NhbmRyby5kQGdtYWlsLmNvbT4KK0RhdGU6IFRodSwgMjQg
TWFyIDIwMTYgMTA6NTQ6MjAgKzExMDAKK1N1YmplY3Q6IFtQQVRDSCAyLzJdIFRVUk46IGhhbmRs
ZSA0MzcgQWxsb2NhdGlvbiBNaXNtYXRjaCByZXNwb25zZXMKKworT24gQWxsb2NhdGlvbiBNaXNt
YXRjaCByZXNwb25zZXMsIHRoZSBjbGllbnQgaXMgc3VwcG9zZWQgdG8gcmV0cnkgd2l0aCBhCitk
aWZmZXJlbnQgaG9zdDpwb3J0IGNvbWJpbmF0aW9uLgorLS0tCisgYWdlbnQvY29ubmNoZWNrLmMg
fCA0MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0KKyBhZ2VudC9k
aXNjb3ZlcnkuaCB8ICAxICsKKyBzdHVuL3N0dW5hZ2VudC5jICB8ICAyICstCisgMyBmaWxlcyBj
aGFuZ2VkLCAzNSBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBh
L2FnZW50L2Nvbm5jaGVjay5jIGIvYWdlbnQvY29ubmNoZWNrLmMKK2luZGV4IDk3YmY1MzYuLmQw
M2U1N2EgMTAwNjQ0CistLS0gYS9hZ2VudC9jb25uY2hlY2suYworKysrIGIvYWdlbnQvY29ubmNo
ZWNrLmMKK0BAIC0yNjMwLDkgKzI2MzAsMTAgQEAgc3RhdGljIGdib29sZWFuIHByaXZfbWFwX3Jl
cGx5X3RvX3JlbGF5X3JlcXVlc3QgKE5pY2VBZ2VudCAqYWdlbnQsIFN0dW5NZXNzYWdlICoKKyAg
IFN0dW5UcmFuc2FjdGlvbklkIGRpc2NvdmVyeV9pZDsKKyAgIFN0dW5UcmFuc2FjdGlvbklkIHJl
c3BvbnNlX2lkOworICAgc3R1bl9tZXNzYWdlX2lkIChyZXNwLCByZXNwb25zZV9pZCk7CisrICBD
YW5kaWRhdGVEaXNjb3ZlcnkgKmQgPSBOVUxMOworIAorICAgZm9yIChpID0gYWdlbnQtPmRpc2Nv
dmVyeV9saXN0OyBpICYmIHRyYW5zX2ZvdW5kICE9IFRSVUU7IGkgPSBpLT5uZXh0KSB7CistICAg
IENhbmRpZGF0ZURpc2NvdmVyeSAqZCA9IGktPmRhdGE7CisrICAgIGQgPSBpLT5kYXRhOworIAor
ICAgICBpZiAoZC0+dHlwZSA9PSBOSUNFX0NBTkRJREFURV9UWVBFX1JFTEFZRUQgJiYKKyAgICAg
ICAgIGQtPnN0dW5fbWVzc2FnZS5idWZmZXIpIHsKK0BAIC0yNzU3LDYgKzI3NTgsNyBAQCBzdGF0
aWMgZ2Jvb2xlYW4gcHJpdl9tYXBfcmVwbHlfdG9fcmVsYXlfcmVxdWVzdCAoTmljZUFnZW50ICph
Z2VudCwgU3R1bk1lc3NhZ2UgKgorICAgICAgICAgICB1aW50MTZfdCBzZW50X3JlYWxtX2xlbiA9
IDA7CisgICAgICAgICAgIHVpbnQxNl90IHJlY3ZfcmVhbG1fbGVuID0gMDsKKyAKKysgICAgICAg
ICAgdHJhbnNfZm91bmQgPSBUUlVFOworICAgICAgICAgICBzZW50X3JlYWxtID0gKHVpbnQ4X3Qg
Kikgc3R1bl9tZXNzYWdlX2ZpbmQgKCZkLT5zdHVuX21lc3NhZ2UsCisgICAgICAgICAgICAgICBT
VFVOX0FUVFJJQlVURV9SRUFMTSwgJnNlbnRfcmVhbG1fbGVuKTsKKyAgICAgICAgICAgcmVjdl9y
ZWFsbSA9ICh1aW50OF90ICopIHN0dW5fbWVzc2FnZV9maW5kIChyZXNwLAorQEAgLTI3NjksMTEg
KzI3NzEsMzEgQEAgc3RhdGljIGdib29sZWFuIHByaXZfbWFwX3JlcGx5X3RvX3JlbGF5X3JlcXVl
c3QgKE5pY2VBZ2VudCAqYWdlbnQsIFN0dW5NZXNzYWdlICoKKyAgICAgICAgICAgICAgIHN0dW5f
bWVzc2FnZV9nZXRfY2xhc3MgKHJlc3ApID09IFNUVU5fRVJST1IgJiYKKyAgICAgICAgICAgICAg
IHN0dW5fbWVzc2FnZV9maW5kX2Vycm9yIChyZXNwLCAmY29kZSkgPT0KKyAgICAgICAgICAgICAg
IFNUVU5fTUVTU0FHRV9SRVRVUk5fU1VDQ0VTUykgeworLSAgICAgICAgICAgIGlmIChjb2RlID09
IDQzOCB8fAorKyAgICAgICAgICAgIGlmIChjb2RlID09IDQzNyB8fAorKyAgICAgICAgICAgICAg
ICBjb2RlID09IDQzOCB8fAorICAgICAgICAgICAgICAgICAoY29kZSA9PSA0MDEgJiYKKyAgICAg
ICAgICAgICAgICAgICAgICEocmVjdl9yZWFsbV9sZW4gPT0gc2VudF9yZWFsbV9sZW4gJiYKKyAg
ICAgICAgICAgICAgICAgICAgICAgICByZWN2X3JlYWxtICE9IE5VTEwgJiYgc2VudF9yZWFsbSAh
PSBOVUxMICYmCisgICAgICAgICAgICAgICAgICAgICAgICAgbWVtY21wIChzZW50X3JlYWxtLCBy
ZWN2X3JlYWxtLCBzZW50X3JlYWxtX2xlbikgPT0gMCkpKSB7CisrICAgICAgICAgICAgICBpZiAo
Y29kZSA9PSA0MzcpIHsKKysgICAgICAgICAgICAgICAgaWYgKGQtPnR1cm5fcmV0cmllcysrID09
IDMpCisrICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKysKKysgICAgICAgICAgICAgICAg
LyogcmV0cnkgdXAgdG8gdGhyZWUgdGltZXMgb24gQWxsb2NhdGlvbiBNaXNtYXRjaCBlcnJvcnMg
Ki8KKysgICAgICAgICAgICAgICAgTmljZUFkZHJlc3MgYWRkciA9IGQtPm5pY2Vzb2NrLT5hZGRy
OworKyAgICAgICAgICAgICAgICBOaWNlU29ja2V0ICpuZXdfc29ja2V0OworKworKyAgICAgICAg
ICAgICAgICAvKiBGSVhNRTogdGhpcyBpZ25vcmVzIG5pY2VfYWdlbnRfc2V0X3BvcnRfcmFuZ2Ug
Ki8KKysgICAgICAgICAgICAgICAgbmljZV9hZGRyZXNzX3NldF9wb3J0ICgmYWRkciwgMCk7Cisr
CisrICAgICAgICAgICAgICAgIG5ld19zb2NrZXQgPSBuaWNlX3VkcF9ic2Rfc29ja2V0X25ldyAo
JmFkZHIpOworKyAgICAgICAgICAgICAgICBpZiAobmV3X3NvY2tldCkgeworKyAgICAgICAgICAg
ICAgICAgIF9wcml2X3NldF9zb2NrZXRfdG9zIChhZ2VudCwgbmV3X3NvY2tldCwgZC0+c3RyZWFt
LT50b3MpOworKyAgICAgICAgICAgICAgICAgIGNvbXBvbmVudF9hdHRhY2hfc29ja2V0IChkLT5j
b21wb25lbnQsIG5ld19zb2NrZXQpOworKyAgICAgICAgICAgICAgICAgIGQtPm5pY2Vzb2NrID0g
bmV3X3NvY2tldDsKKysgICAgICAgICAgICAgICAgfQorKyAgICAgICAgICAgICAgfQorKworICAg
ICAgICAgICAgICAgZC0+c3R1bl9yZXNwX21zZyA9ICpyZXNwOworICAgICAgICAgICAgICAgbWVt
Y3B5IChkLT5zdHVuX3Jlc3BfYnVmZmVyLCByZXNwLT5idWZmZXIsCisgICAgICAgICAgICAgICAg
ICAgc3R1bl9tZXNzYWdlX2xlbmd0aCAocmVzcCkpOworQEAgLTI3ODIsMjMgKzI4MDQsMjUgQEAg
c3RhdGljIGdib29sZWFuIHByaXZfbWFwX3JlcGx5X3RvX3JlbGF5X3JlcXVlc3QgKE5pY2VBZ2Vu
dCAqYWdlbnQsIFN0dW5NZXNzYWdlICoKKyAgICAgICAgICAgICAgIGQtPnBlbmRpbmcgPSBGQUxT
RTsKKyAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgLyogY2FzZTogYSByZWFs
IHVuYXV0aG9yaXplZCBlcnJvciAqLworLSAgICAgICAgICAgICAgZC0+c3R1bl9tZXNzYWdlLmJ1
ZmZlciA9IE5VTEw7CistICAgICAgICAgICAgICBkLT5zdHVuX21lc3NhZ2UuYnVmZmVyX2xlbiA9
IDA7CistICAgICAgICAgICAgICBkLT5kb25lID0gVFJVRTsKKysgICAgICAgICAgICAgIGdvdG8g
ZXJyb3I7CisgICAgICAgICAgICAgfQorICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAg
IC8qIGNhc2U6IFNUVU4gZXJyb3IsIHRoZSBjaGVjayBTVFVOIGNvbnRleHQgd2FzIGZyZWVkICov
CistICAgICAgICAgICAgZC0+c3R1bl9tZXNzYWdlLmJ1ZmZlciA9IE5VTEw7CistICAgICAgICAg
ICAgZC0+c3R1bl9tZXNzYWdlLmJ1ZmZlcl9sZW4gPSAwOworLSAgICAgICAgICAgIGQtPmRvbmUg
PSBUUlVFOworKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgIH0KKy0gICAgICAg
ICAgdHJhbnNfZm91bmQgPSBUUlVFOworICAgICAgICAgfQorICAgICAgIH0KKyAgICAgfQorICAg
fQorIAorICAgcmV0dXJuIHRyYW5zX2ZvdW5kOworKworK2Vycm9yOgorKyAgZC0+c3R1bl9tZXNz
YWdlLmJ1ZmZlciA9IE5VTEw7CisrICBkLT5zdHVuX21lc3NhZ2UuYnVmZmVyX2xlbiA9IDA7Cisr
ICBkLT5kb25lID0gVFJVRTsKKysKKysgIHJldHVybiB0cmFuc19mb3VuZDsKKyB9CisgCisgCitk
aWZmIC0tZ2l0IGEvYWdlbnQvZGlzY292ZXJ5LmggYi9hZ2VudC9kaXNjb3ZlcnkuaAoraW5kZXgg
YzIyZWE2YS4uMTQ4YjhjMiAxMDA2NDQKKy0tLSBhL2FnZW50L2Rpc2NvdmVyeS5oCisrKysgYi9h
Z2VudC9kaXNjb3ZlcnkuaAorQEAgLTU2LDYgKzU2LDcgQEAgdHlwZWRlZiBzdHJ1Y3QKKyAgIFN0
cmVhbSAqc3RyZWFtOworICAgQ29tcG9uZW50ICpjb21wb25lbnQ7CisgICBUdXJuU2VydmVyICp0
dXJuOworKyAgZ2ludCB0dXJuX3JldHJpZXM7CisgICBTdHVuQWdlbnQgc3R1bl9hZ2VudDsKKyAg
IFN0dW5UaW1lciB0aW1lcjsKKyAgIHVpbnQ4X3Qgc3R1bl9idWZmZXJbU1RVTl9NQVhfTUVTU0FH
RV9TSVpFX0lQVjZdOworZGlmZiAtLWdpdCBhL3N0dW4vc3R1bmFnZW50LmMgYi9zdHVuL3N0dW5h
Z2VudC5jCitpbmRleCAyYWJjYzI5Li4wYWJhZTNkIDEwMDY0NAorLS0tIGEvc3R1bi9zdHVuYWdl
bnQuYworKysrIGIvc3R1bi9zdHVuYWdlbnQuYworQEAgLTMwMSw3ICszMDEsNyBAQCBTdHVuVmFs
aWRhdGlvblN0YXR1cyBzdHVuX2FnZW50X3ZhbGlkYXRlIChTdHVuQWdlbnQgKmFnZW50LCBTdHVu
TWVzc2FnZSAqbXNnLAorICAgICB9IGVsc2UgaWYgKCEoc3R1bl9tZXNzYWdlX2dldF9jbGFzcyAo
bXNnKSA9PSBTVFVOX0VSUk9SICYmCisgICAgICAgICBzdHVuX21lc3NhZ2VfZmluZF9lcnJvciAo
bXNnLCAmZXJyb3JfY29kZSkgPT0KKyAgICAgICAgICAgICBTVFVOX01FU1NBR0VfUkVUVVJOX1NV
Q0NFU1MgJiYKKy0gICAgICAgIChlcnJvcl9jb2RlID09IDQwMCB8fCBlcnJvcl9jb2RlID09IDQw
MSkpKSB7CisrICAgICAgICAoZXJyb3JfY29kZSA9PSA0MDAgfHwgZXJyb3JfY29kZSA9PSA0MDEg
fHwgZXJyb3JfY29kZSA9PSA0MzcpKSkgeworICAgICAgIHN0dW5fZGVidWcgKCJTVFVOIGF1dGgg
ZXJyb3I6IE5vIG1lc3NhZ2UgaW50ZWdyaXR5IGF0dHJpYnV0ZSEiKTsKKyAgICAgICByZXR1cm4g
U1RVTl9WQUxJREFUSU9OX1VOQVVUSE9SSVpFRDsKKyAgICAgfQorLS0gCisyLjMuNAorCmRpZmYg
LS1naXQgYS9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDMtRG8tbm90LWNvbXBhcmUtc2Nv
cGUtZm9yLUlQdjYtYWRkcmVzcy13aGVuLXNjb3BlLWlzLS5wYXRjaCBiL1Rvb2xzL2d0ay9wYXRj
aGVzL2xpYm5pY2UtMDAwMy1Eby1ub3QtY29tcGFyZS1zY29wZS1mb3ItSVB2Ni1hZGRyZXNzLXdo
ZW4tc2NvcGUtaXMtLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgw
NmY5ZWIKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDMt
RG8tbm90LWNvbXBhcmUtc2NvcGUtZm9yLUlQdjYtYWRkcmVzcy13aGVuLXNjb3BlLWlzLS5wYXRj
aApAQCAtMCwwICsxLDQzIEBACitGcm9tIDkxYTdiOTMyNDI0NDg0NGJhZjM1ZDhmY2VmMDE5YTRl
YTM4NzJkMzAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBZb3VuZXNzIEFsYW91aSA8
a2FrYXJvdG9Aa2FrYXJvdG8uaG9tZWxpbnV4Lm5ldD4KK0RhdGU6IFR1ZSwgNSBNYXkgMjAxNSAx
NTowMDozMCAtMDQwMAorU3ViamVjdDogW1BBVENIIDMvNF0gRG8gbm90IGNvbXBhcmUgc2NvcGUg
Zm9yIElQdjYgYWRkcmVzcyB3aGVuIHNjb3BlIGlzIDAKKworVGhpcyBjYXVzZWQgaXNzdWVzIHdp
dGggdGhpbmtpbmcgbG9jYWwgaG9zdCBjYW5kaWRhdGVzIHdlcmUgcGVlci1yZWZsZXhpdmUKK2Nh
bmRpZGF0ZXMgYmVjYXVzZSB0aGUgbmljZV9hZGRyZXNzX2VxdWFsIHdvdWxkIGZhaWwgc2luY2Ug
dGhlIHNjb3BlCit3b3VsZCBiZSA2IChvciBzb21lIG90aGVyIHZhbHVlKSBidXQgbG9jYWxseSBj
cmVhdGVkIE5pY2VBZGRyZXNzIGZyb20KK2Egc3R1biByZXNwb25zZSB3b3VsZCBoYXZlIHRoZSBz
Y29wZSBzZXQgdG8gMC4KK1dlIGlnbm9yZSB0aGUgc2NvcGUgd2hlbiBjb21wYXJpbmcgaXB2NiBj
YW5kaWRhdGVzIHdoZW4gc2NvcGUgaXMgMAordG8gYXZvaWQgdGhlc2Uga2luZHMgb2YgaXNzdWVz
LgorVGhhbmtzIHRvIGlrb25zdF8gZm9yIGZpbmRpbmcgdGhlc2UgaXNzdWVzCistLS0KKyBhZ2Vu
dC9hZGRyZXNzLmMgfCA2ICsrKystLQorIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyks
IDIgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9hZ2VudC9hZGRyZXNzLmMgYi9hZ2VudC9h
ZGRyZXNzLmMKK2luZGV4IGE4ZDljNzYuLjAxZWViYWIgMTAwNjQ0CistLS0gYS9hZ2VudC9hZGRy
ZXNzLmMKKysrKyBiL2FnZW50L2FkZHJlc3MuYworQEAgLTI5Nyw3ICsyOTcsOCBAQCBuaWNlX2Fk
ZHJlc3NfZXF1YWwgKGNvbnN0IE5pY2VBZGRyZXNzICphLCBjb25zdCBOaWNlQWRkcmVzcyAqYikK
KyAgICAgY2FzZSBBRl9JTkVUNjoKKyAgICAgICByZXR1cm4gSU42X0FSRV9BRERSX0VRVUFMICgm
YS0+cy5pcDYuc2luNl9hZGRyLCAmYi0+cy5pcDYuc2luNl9hZGRyKQorICAgICAgICAgICAmJiAo
YS0+cy5pcDYuc2luNl9wb3J0ID09IGItPnMuaXA2LnNpbjZfcG9ydCkKKy0gICAgICAgICAgJiYg
KGEtPnMuaXA2LnNpbjZfc2NvcGVfaWQgPT0gYi0+cy5pcDYuc2luNl9zY29wZV9pZCk7CisrICAg
ICAgICAgICYmIChhLT5zLmlwNi5zaW42X3Njb3BlX2lkID09IDAgfHwgYi0+cy5pcDYuc2luNl9z
Y29wZV9pZCA9PSAwIHx8CisrICAgICAgICAgICAgICAoYS0+cy5pcDYuc2luNl9zY29wZV9pZCA9
PSBiLT5zLmlwNi5zaW42X3Njb3BlX2lkKSk7CisgCisgICAgIGRlZmF1bHQ6CisgICAgICAgZ19y
ZXR1cm5fdmFsX2lmX3JlYWNoZWQgKEZBTFNFKTsKK0BAIC00MTIsNyArNDEzLDggQEAgbmljZV9h
ZGRyZXNzX2VxdWFsX25vX3BvcnQgKGNvbnN0IE5pY2VBZGRyZXNzICphLCBjb25zdCBOaWNlQWRk
cmVzcyAqYikKKyAKKyAgICAgY2FzZSBBRl9JTkVUNjoKKyAgICAgICByZXR1cm4gSU42X0FSRV9B
RERSX0VRVUFMICgmYS0+cy5pcDYuc2luNl9hZGRyLCAmYi0+cy5pcDYuc2luNl9hZGRyKQorLSAg
ICAgICAgICAmJiAoYS0+cy5pcDYuc2luNl9zY29wZV9pZCA9PSBiLT5zLmlwNi5zaW42X3Njb3Bl
X2lkKTsKKysgICAgICAgICAgJiYgKGEtPnMuaXA2LnNpbjZfc2NvcGVfaWQgPT0gMCB8fCBiLT5z
LmlwNi5zaW42X3Njb3BlX2lkID09IDAgfHwKKysgICAgICAgICAgICAgIChhLT5zLmlwNi5zaW42
X3Njb3BlX2lkID09IGItPnMuaXA2LnNpbjZfc2NvcGVfaWQpKTsKKyAKKyAgICAgZGVmYXVsdDoK
KyAgICAgICBnX3JldHVybl92YWxfaWZfcmVhY2hlZCAoRkFMU0UpOworLS0gCisyLjMuMiAoQXBw
bGUgR2l0LTU1KQorCmRpZmYgLS1naXQgYS9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDQt
UmVtb3Zpbmctbm8tb3AtYXNzaWdubWVudC5wYXRjaCBiL1Rvb2xzL2d0ay9wYXRjaGVzL2xpYm5p
Y2UtMDAwNC1SZW1vdmluZy1uby1vcC1hc3NpZ25tZW50LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAuLjkzYmVhOTIKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9ndGsv
cGF0Y2hlcy9saWJuaWNlLTAwMDQtUmVtb3Zpbmctbm8tb3AtYXNzaWdubWVudC5wYXRjaApAQCAt
MCwwICsxLDI0IEBACitGcm9tIDZhOGM2MzIxOWM2MzJjMjc3MDcyNjdiNjUxMGRjYTA5NmM2ZmQ1
MTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBZb3VuZXNzIEFsYW91aSA8a2FrYXJv
dG9Aa2FrYXJvdG8uaG9tZWxpbnV4Lm5ldD4KK0RhdGU6IFR1ZSwgNSBNYXkgMjAxNSAxNTowNzox
MCAtMDQwMAorU3ViamVjdDogW1BBVENIIDQvNF0gUmVtb3Zpbmcgbm8tb3AgYXNzaWdubWVudAor
CistLS0KKyBhZ2VudC9hZ2VudC5jIHwgMSAtCisgMSBmaWxlIGNoYW5nZWQsIDEgZGVsZXRpb24o
LSkKKworZGlmZiAtLWdpdCBhL2FnZW50L2FnZW50LmMgYi9hZ2VudC9hZ2VudC5jCitpbmRleCAz
OGI2NzlmLi44NGQ0MDkzIDEwMDY0NAorLS0tIGEvYWdlbnQvYWdlbnQuYworKysrIGIvYWdlbnQv
YWdlbnQuYworQEAgLTMwNTEsNyArMzA1MSw2IEBAIHN0YXRpYyBnYm9vbGVhbiBwcml2X2FkZF9y
ZW1vdGVfY2FuZGlkYXRlICgKKyAgICAgICAgICAgdXNlcm5hbWUsIHBhc3N3b3JkLCBwcmlvcml0
eSk7CisgICAgIH0KKyAgICAgLyogY2FzZSAxOiBhbiBleGlzdGluZyBjYW5kaWRhdGUsIHVwZGF0
ZSB0aGUgYXR0cmlidXRlcyAqLworLSAgICBjYW5kaWRhdGUtPnR5cGUgPSB0eXBlOworICAgICBp
ZiAoYmFzZV9hZGRyKQorICAgICAgIGNhbmRpZGF0ZS0+YmFzZV9hZGRyID0gKmJhc2VfYWRkcjsK
KyAgICAgY2FuZGlkYXRlLT5wcmlvcml0eSA9IHByaW9yaXR5OworLS0gCisyLjMuMiAoQXBwbGUg
R2l0LTU1KQorCi0tIAoyLjkuMw==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>291582</attachid>
            <date>2016-10-14 00:29:15 -0700</date>
            <delta_ts>2016-10-18 06:20:32 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch.patch</filename>
            <type>text/plain</type>
            <size>29339</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">RnJvbSBmNGJiN2UzOGVlMGQ0YzZkOTUxMWQ5Yzk5OTQxOGIyOTJiNjVmODZiIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwZSBOb3JtYW5kIDxwbm9ybWFuZEBpZ2FsaWEuY29t
PgpEYXRlOiBXZWQsIDEyIE9jdCAyMDE2IDE2OjI3OjQyICswMjAwClN1YmplY3Q6IFtQQVRDSF0g
cGF0Y2gKCi0tLQogVG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgMjIgKysKIFRvb2xzL2d0ay9qaGJ1aWxkLm1vZHVsZXMgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAxICsKIFRvb2xzL2d0ay9vcGVud2VicnRjLm1vZHVsZXMgICAgICAgICAg
ICAgICAgICAgICAgIHwgIDc4ICsrKysrKysKIC4uLmxpYm5pY2UtMDAwMS1UVVJOLWFsbG93LVJF
QUxNLXRvLWJlLWVtcHR5LnBhdGNoIHwgIDUwICsrKysKIC4uLi0wMDAxLWFnZW50LVJlbW92ZS11
bm5lY2Vzc2FyeS1OVUxMLWNoZWNrLnBhdGNoIHwgIDQ0ICsrKysKIC4uLm4tdGhlLWFnZW50LW1h
aW5sb29wLWluLWEtc2VwYXJhdGUtdGhyZWFkLnBhdGNoIHwgMjUzICsrKysrKysrKysrKysrKysr
KysrKwogLi4uMi1Eby1ub3QtdXBkYXRlLWEtcmVtb3RlLWNhbmRpZGF0ZS1zLXR5cGUucGF0Y2gg
fCAgMzEgKysrCiAuLi4taGFuZGxlLTQzNy1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5w
YXRjaCB8IDEzMSArKysrKysrKysrKwogLi4uYXJlLXNjb3BlLWZvci1JUHY2LWFkZHJlc3Mtd2hl
bi1zY29wZS1pcy0ucGF0Y2ggfCAgNDMgKysrKwogLi4uL2xpYm5pY2UtMDAwNC1SZW1vdmluZy1u
by1vcC1hc3NpZ25tZW50LnBhdGNoICAgfCAgMjQgKysKIDEwIGZpbGVzIGNoYW5nZWQsIDY3NyBp
bnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9vbHMvZ3RrL29wZW53ZWJydGMubW9k
dWxlcwogY3JlYXRlIG1vZGUgMTAwNjQ0IFRvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMS1U
VVJOLWFsbG93LVJFQUxNLXRvLWJlLWVtcHR5LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9v
bHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAxLWFnZW50LVJlbW92ZS11bm5lY2Vzc2FyeS1OVUxM
LWNoZWNrLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmlj
ZS0wMDAxLW5pY2VzcmMtc3Bpbi10aGUtYWdlbnQtbWFpbmxvb3AtaW4tYS1zZXBhcmF0ZS10aHJl
YWQucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBUb29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAw
MDItRG8tbm90LXVwZGF0ZS1hLXJlbW90ZS1jYW5kaWRhdGUtcy10eXBlLnBhdGNoCiBjcmVhdGUg
bW9kZSAxMDA2NDQgVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAyLVRVUk4taGFuZGxlLTQz
Ny1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0
IFRvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMy1Eby1ub3QtY29tcGFyZS1zY29wZS1mb3It
SVB2Ni1hZGRyZXNzLXdoZW4tc2NvcGUtaXMtLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9v
bHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDA0LVJlbW92aW5nLW5vLW9wLWFzc2lnbm1lbnQucGF0
Y2gKCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXgg
YjE3OWNlYi4uZWJmNTQ2ZSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE2LTEwLTEyICBQaGlsaXBwZSBOb3JtYW5k
ICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAgICBXZWJSVEM6IFtHVEtdIFVwZGF0ZSBq
aGJ1aWxkIGVudmlyb25tZW50IGZvciBPcGVuV2ViUlRDCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjMzMzAKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCcmluZyBiYWNrIHRoZSBvcGVud2VicnRjIEpIQnVp
bGQgbW9kdWxlc2V0IGluIHRoZSB0aW1lIGJlaW5nLiBJdAorICAgICAgICBzaG91bGQgYmUgcmVt
b3ZlZCBhZnRlciB0aGUgYnVtcCB0byBHU3RyZWFtZXIgMS4xMCBpcyBjb21wbGV0ZSBhbmQKKyAg
ICAgICAgdGhlIGxpYm5pY2UgcGF0Y2hlcyBoYXZlIGJlZW4gdXBzdHJlYW1lZC4gVGhlIEdTdHJl
YW1lciBnaXQKKyAgICAgICAgc25hcHNob3RzIHVzZWQgaW4gdGhpcyBwYXRjaCBhcmUgdGhlIG9u
ZXMgY29uZmlndXJlZCBpbiBFcmljc3NvbidzCisgICAgICAgIEdTdHJlYW1lciBDZXJiZXJvIGZv
cmsuCisKKyAgICAgICAgKiBndGsvb3BlbndlYnJ0Yy5tb2R1bGVzOiBBZGRlZC4KKyAgICAgICAg
KiBndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtVFVSTi1hbGxvdy1SRUFMTS10by1iZS1lbXB0eS5w
YXRjaDogQWRkZWQuCisgICAgICAgICogZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAxLWFnZW50LVJl
bW92ZS11bm5lY2Vzc2FyeS1OVUxMLWNoZWNrLnBhdGNoOiBBZGRlZC4KKyAgICAgICAgKiBndGsv
cGF0Y2hlcy9saWJuaWNlLTAwMDEtbmljZXNyYy1zcGluLXRoZS1hZ2VudC1tYWlubG9vcC1pbi1h
LXNlcGFyYXRlLXRocmVhZC5wYXRjaDogQWRkZWQuCisgICAgICAgICogZ3RrL3BhdGNoZXMvbGli
bmljZS0wMDAyLURvLW5vdC11cGRhdGUtYS1yZW1vdGUtY2FuZGlkYXRlLXMtdHlwZS5wYXRjaDog
QWRkZWQuCisgICAgICAgICogZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAyLVRVUk4taGFuZGxlLTQz
Ny1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5wYXRjaDogQWRkZWQuCisgICAgICAgICog
Z3RrL3BhdGNoZXMvbGlibmljZS0wMDAzLURvLW5vdC1jb21wYXJlLXNjb3BlLWZvci1JUHY2LWFk
ZHJlc3Mtd2hlbi1zY29wZS1pcy0ucGF0Y2g6IEFkZGVkLgorICAgICAgICAqIGd0ay9wYXRjaGVz
L2xpYm5pY2UtMDAwNC1SZW1vdmluZy1uby1vcC1hc3NpZ25tZW50LnBhdGNoOiBBZGRlZC4KKwog
MjAxNi0xMC0xMSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgog
CiAgICAgICAgIFVwZGF0ZSBBUEkgdGVzdCBleHBlY3RhdGlvbiBhZnRlciByMjA3MTYyLgpkaWZm
IC0tZ2l0IGEvVG9vbHMvZ3RrL2poYnVpbGQubW9kdWxlcyBiL1Rvb2xzL2d0ay9qaGJ1aWxkLm1v
ZHVsZXMKaW5kZXggNWQ4NmI3MS4uYTgzN2RkYSAxMDA2NDQKLS0tIGEvVG9vbHMvZ3RrL2poYnVp
bGQubW9kdWxlcworKysgYi9Ub29scy9ndGsvamhidWlsZC5tb2R1bGVzCkBAIC01MTIsNiArNTEy
LDcgQEAKICAgPGF1dG90b29scyBpZD0ib3BlbndlYnJ0YyIgYXV0b2dlbmFyZ3M9Ii0tZW5hYmxl
LWJyaWRnZT1ubyAtLWVuYWJsZS1vd3ItZ3N0PXllcyI+CiAgICAgPGRlcGVuZGVuY2llcz4KICAg
ICAgIDxkZXAgcGFja2FnZT0iZ3N0LXBsdWdpbnMtb3BlbndlYnJ0YyIvPgorICAgICAgPGRlcCBw
YWNrYWdlPSJnc3QtcGx1Z2lucy1iYWQiLz4KICAgICAgIDxkZXAgcGFja2FnZT0ibGlibmljZSIv
PgogICAgICA8L2RlcGVuZGVuY2llcz4KICAgICA8YnJhbmNoIHJlcG89ImdpdGh1Yi5jb20iIG1v
ZHVsZT0iRXJpY3Nzb25SZXNlYXJjaC9vcGVud2VicnRjLmdpdCIgY2hlY2tvdXRkaXI9Im9wZW53
ZWJydGMiIHRhZz0iMGIyOGIwODBkNjFhZjNhZGIxZjc3OWU2OTNmYzAyOWY5YzFhZDQ5OSIvPgpk
aWZmIC0tZ2l0IGEvVG9vbHMvZ3RrL29wZW53ZWJydGMubW9kdWxlcyBiL1Rvb2xzL2d0ay9vcGVu
d2VicnRjLm1vZHVsZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjMxNmNl
MwotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL2d0ay9vcGVud2VicnRjLm1vZHVsZXMKQEAgLTAs
MCArMSw3OCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIj8+Cis8IURPQ1RZUEUgbW9kdWxlc2V0IFNZ
U1RFTSAibW9kdWxlc2V0LmR0ZCI+Cis8P3htbC1zdHlsZXNoZWV0IHR5cGU9InRleHQveHNsIiBo
cmVmPSJtb2R1bGVzZXQueHNsIj8+Cis8bW9kdWxlc2V0PgorCisgIDxyZXBvc2l0b3J5IHR5cGU9
InRhcmJhbGwiIG5hbWU9ImdpdGh1Yi10YXJiYWxsIgorICAgICAgaHJlZj0iaHR0cHM6Ly9naXRo
dWIuY29tLyIvPgorICA8cmVwb3NpdG9yeSB0eXBlPSJnaXQiIG5hbWU9ImdzdHJlYW1lciIKKyAg
ICAgIGhyZWY9ImdpdDovL2Fub25naXQuZnJlZWRlc2t0b3Aub3JnL2dpdC9nc3RyZWFtZXIvIi8+
CisgIDxyZXBvc2l0b3J5IHR5cGU9InRhcmJhbGwiIG5hbWU9Im5pY2UuZnJlZWRlc2t0b3Aub3Jn
IgorICAgICAgaHJlZj0iaHR0cDovL25pY2UuZnJlZWRlc2t0b3Aub3JnIi8+CisKKyAgPGF1dG90
b29scyBpZD0ib3BlbmgyNjQiIHN1cHBvcnRzLW5vbi1zcmNkaXItYnVpbGRzPSJubyIgYXV0b2dl
bi1zaD0icHNldWRvLWNvbmZpZ3VyZSI+CisgICAgPGJyYW5jaCBtb2R1bGU9ImNpc2NvL29wZW5o
MjY0L2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6IiB2ZXJzaW9uPSIxLjUuMCIKKyAgICAgICAg
ICAgIGNoZWNrb3V0ZGlyPSJvcGVuaDI2NC0ke3ZlcnNpb259IiByZXBvPSJnaXRodWItdGFyYmFs
bCI+CisgICAgICA8cGF0Y2ggZmlsZT0ib3BlbmgyNjQtY29uZmlndXJlLnBhdGNoIiBzdHJpcD0i
MCIvPgorICAgIDwvYnJhbmNoPgorICA8L2F1dG90b29scz4KKworICA8YXV0b3Rvb2xzIGlkPSJs
aWJuaWNlIiBzdXBwb3J0cy1ub24tc3JjZGlyLWJ1aWxkcz0ibm8iPgorICAgIDxkZXBlbmRlbmNp
ZXM+CisgICAgICA8ZGVwIHBhY2thZ2U9ImdzdHJlYW1lciIvPgorICAgIDwvZGVwZW5kZW5jaWVz
PgorICAgIDxicmFuY2ggcmVwbz0ibmljZS5mcmVlZGVza3RvcC5vcmciIG1vZHVsZT0icmVsZWFz
ZXMvbGlibmljZS0ke3ZlcnNpb259LnRhci5neiIgdmVyc2lvbj0iMC4xLjEzIiBjaGVja291dGRp
cj0ibGlibmljZS0ke3ZlcnNpb259Ij4KKyAgICAgIDxwYXRjaCBmaWxlPSJsaWJuaWNlLTAwMDEt
YWdlbnQtUmVtb3ZlLXVubmVjZXNzYXJ5LU5VTEwtY2hlY2sucGF0Y2giIHN0cmlwPSIxIi8+Cisg
ICAgICA8cGF0Y2ggZmlsZT0ibGlibmljZS0wMDAyLURvLW5vdC11cGRhdGUtYS1yZW1vdGUtY2Fu
ZGlkYXRlLXMtdHlwZS5wYXRjaCIgc3RyaXA9IjEiLz4KKyAgICAgIDxwYXRjaCBmaWxlPSJsaWJu
aWNlLTAwMDMtRG8tbm90LWNvbXBhcmUtc2NvcGUtZm9yLUlQdjYtYWRkcmVzcy13aGVuLXNjb3Bl
LWlzLS5wYXRjaCIgc3RyaXA9IjEiLz4KKyAgICAgIDxwYXRjaCBmaWxlPSJsaWJuaWNlLTAwMDQt
UmVtb3Zpbmctbm8tb3AtYXNzaWdubWVudC5wYXRjaCIgc3RyaXA9IjEiLz4KKyAgICAgIDxwYXRj
aCBmaWxlPSJsaWJuaWNlLTAwMDEtbmljZXNyYy1zcGluLXRoZS1hZ2VudC1tYWlubG9vcC1pbi1h
LXNlcGFyYXRlLXRocmVhZC5wYXRjaCIgc3RyaXA9IjEiLz4KKyAgICAgIDxwYXRjaCBmaWxlPSJs
aWJuaWNlLTAwMDEtVFVSTi1hbGxvdy1SRUFMTS10by1iZS1lbXB0eS5wYXRjaCIgc3RyaXA9IjEi
Lz4KKyAgICAgIDxwYXRjaCBmaWxlPSJsaWJuaWNlLTAwMDItVFVSTi1oYW5kbGUtNDM3LUFsbG9j
YXRpb24tTWlzbWF0Y2gtcmVzcG9uc2VzLnBhdGNoIiBzdHJpcD0iMSIvPgorICAgIDwvYnJhbmNo
PgorICA8L2F1dG90b29scz4KKworICA8YXV0b3Rvb2xzIGlkPSJnc3RyZWFtZXIiIGF1dG9nZW5h
cmdzPSItLWRpc2FibGUtZ3RrLWRvYyI+CisgICAgPGlmIGNvbmRpdGlvbi1zZXQ9Im1hY29zIj4K
KyAgICAgIDxhdXRvZ2VuYXJncyB2YWx1ZT0iLS1kaXNhYmxlLWludHJvc3BlY3Rpb24iLz4KKyAg
ICA8L2lmPgorICAgIDxkZXBlbmRlbmNpZXM+CisgICAgICA8ZGVwIHBhY2thZ2U9Im9yYyIvPgor
ICAgIDwvZGVwZW5kZW5jaWVzPgorICAgIDxicmFuY2ggcmVwbz0iZ3N0cmVhbWVyIiBtb2R1bGU9
ImdzdHJlYW1lciIgY2hlY2tvdXRkaXI9ImdzdHJlYW1lci1iNmU2OWZmZGZiM2JiMjFkYmFkYThm
MDFiNDg4YWU4NzdmOGQyMDVjIiB0YWc9ImI2ZTY5ZmZkZmIzYmIyMWRiYWRhOGYwMWI0ODhhZTg3
N2Y4ZDIwNWMiLz4KKyAgPC9hdXRvdG9vbHM+CisKKyAgPGF1dG90b29scyBpZD0iZ3N0LXBsdWdp
bnMtYmFzZSIKKyAgICAgICAgICAgICBhdXRvZ2VuLXNoPSJhdXRvZ2VuLnNoIgorICAgICAgICAg
ICAgIGF1dG9nZW5hcmdzPSItLWRpc2FibGUtZXhhbXBsZXMgLS1kaXNhYmxlLWd0ay1kb2MiPgor
ICAgIDxpZiBjb25kaXRpb24tc2V0PSJtYWNvcyI+CisgICAgICA8YXV0b2dlbmFyZ3MgdmFsdWU9
Ii0tZGlzYWJsZS1pbnRyb3NwZWN0aW9uIi8+CisgICAgPC9pZj4KKyAgICA8ZGVwZW5kZW5jaWVz
PgorICAgICAgPGRlcCBwYWNrYWdlPSJnc3RyZWFtZXIiLz4KKyAgICA8L2RlcGVuZGVuY2llcz4K
KyAgICA8YnJhbmNoIHJlcG89ImdzdHJlYW1lciIgbW9kdWxlPSJnc3QtcGx1Z2lucy1iYXNlIiBj
aGVja291dGRpcj0iZ3N0LXBsdWdpbnMtYmFzZS1jZjE4ZmFlOWRlYjAyZjA4NjdiNjc1OTNmNjc4
YjkzMmY4ZWI5MzFhIiB0YWc9ImNmMThmYWU5ZGViMDJmMDg2N2I2NzU5M2Y2NzhiOTMyZjhlYjkz
MWEiLz4KKyAgPC9hdXRvdG9vbHM+CisKKyAgPGF1dG90b29scyBpZD0iZ3N0LXBsdWdpbnMtZ29v
ZCIgYXV0b2dlbmFyZ3M9Ii0tZGlzYWJsZS1leGFtcGxlcyAtLWRpc2FibGUtc291cCAtLWRpc2Fi
bGUtZ3RrLWRvYyI+CisgICAgPGlmIGNvbmRpdGlvbi1zZXQ9Im1hY29zIj4KKyAgICAgIDxhdXRv
Z2VuYXJncyB2YWx1ZT0iLS1kaXNhYmxlLWludHJvc3BlY3Rpb24iLz4KKyAgICA8L2lmPgorICAg
IDxkZXBlbmRlbmNpZXM+CisgICAgICA8ZGVwIHBhY2thZ2U9ImdzdC1wbHVnaW5zLWJhc2UiLz4K
KyAgICA8L2RlcGVuZGVuY2llcz4KKyAgICAgPGJyYW5jaCByZXBvPSJnc3RyZWFtZXIiIG1vZHVs
ZT0iZ3N0LXBsdWdpbnMtZ29vZCIgY2hlY2tvdXRkaXI9ImdzdC1wbHVnaW5zLWdvb2QtNTY3YWZk
ZDRkM2YyZmEwN2ZlY2Y0YzAyYTdlY2E3MGY3YTdlZjdmNyIgdGFnPSI1NjdhZmRkNGQzZjJmYTA3
ZmVjZjRjMDJhN2VjYTcwZjdhN2VmN2Y3Ii8+CisgIDwvYXV0b3Rvb2xzPgorCisgIDxhdXRvdG9v
bHMgaWQ9ImdzdC1wbHVnaW5zLWJhZCIgYXV0b2dlbmFyZ3M9Ii0tZGlzYWJsZS1leGFtcGxlcyAt
LWRpc2FibGUtZ3RrLWRvYyAtLWVuYWJsZS1vcGVuaDI2NCI+CisgICAgPGlmIGNvbmRpdGlvbi1z
ZXQ9Im1hY29zIj4KKyAgICAgIDxhdXRvZ2VuYXJncyB2YWx1ZT0iLS1kaXNhYmxlLWludHJvc3Bl
Y3Rpb24iLz4KKyAgICA8L2lmPgorICAgIDxkZXBlbmRlbmNpZXM+CisgICAgICA8ZGVwIHBhY2th
Z2U9ImdzdC1wbHVnaW5zLWJhc2UiLz4KKyAgICAgIDxkZXAgcGFja2FnZT0ib3BlbmgyNjQiLz4K
KyAgICA8L2RlcGVuZGVuY2llcz4KKyAgICA8YnJhbmNoIHJlcG89ImdzdHJlYW1lciIgbW9kdWxl
PSJnc3QtcGx1Z2lucy1iYWQiIGNoZWNrb3V0ZGlyPSJnc3QtcGx1Z2lucy1iYWQtYTAzNmI3ZWY5
ZmZlOWZlNWRhYzRhN2U0NmZiYzNiYWM5MjkyMWE1NCIgdGFnPSJhMDM2YjdlZjlmZmU5ZmU1ZGFj
NGE3ZTQ2ZmJjM2JhYzkyOTIxYTU0Ii8+CisgIDwvYXV0b3Rvb2xzPgorICAKKzwvbW9kdWxlc2V0
PgpkaWZmIC0tZ2l0IGEvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAxLVRVUk4tYWxsb3ct
UkVBTE0tdG8tYmUtZW1wdHkucGF0Y2ggYi9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEt
VFVSTi1hbGxvdy1SRUFMTS10by1iZS1lbXB0eS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwLi43ZjUyZTQwCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvZ3RrL3BhdGNo
ZXMvbGlibmljZS0wMDAxLVRVUk4tYWxsb3ctUkVBTE0tdG8tYmUtZW1wdHkucGF0Y2gKQEAgLTAs
MCArMSw1MCBAQAorRnJvbSAwYzU1MTY2YTgxN2VjNTEwOTY0NjBmNzg5MjM0ZWY0OTIzNzAwMGNj
IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogQWxlc3NhbmRybyBEZWNpbmEgPGFsZXNz
YW5kcm8uZEBnbWFpbC5jb20+CitEYXRlOiBUaHUsIDI0IE1hciAyMDE2IDEwOjQ4OjI3ICsxMTAw
CitTdWJqZWN0OiBbUEFUQ0ggMS8yXSBUVVJOOiBhbGxvdyBSRUFMTSB0byBiZSBlbXB0eQorCist
LS0KKyBhZ2VudC9jb25uY2hlY2suYyB8IDYgKystLS0tCisgc3R1bi9zdHVuaG1hYy5jICAgfCA2
ICsrKystLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygt
KQorCitkaWZmIC0tZ2l0IGEvYWdlbnQvY29ubmNoZWNrLmMgYi9hZ2VudC9jb25uY2hlY2suYwor
aW5kZXggMDU3ZmM4MS4uOTdiZjUzNiAxMDA2NDQKKy0tLSBhL2FnZW50L2Nvbm5jaGVjay5jCisr
KysgYi9hZ2VudC9jb25uY2hlY2suYworQEAgLTI3NjgsMTMgKzI3NjgsMTEgQEAgc3RhdGljIGdi
b29sZWFuIHByaXZfbWFwX3JlcGx5X3RvX3JlbGF5X3JlcXVlc3QgKE5pY2VBZ2VudCAqYWdlbnQs
IFN0dW5NZXNzYWdlICoKKyAgICAgICAgICAgICAgICBhZ2VudC0+Y29tcGF0aWJpbGl0eSA9PSBO
SUNFX0NPTVBBVElCSUxJVFlfT0MyMDA3UjIpICYmCisgICAgICAgICAgICAgICBzdHVuX21lc3Nh
Z2VfZ2V0X2NsYXNzIChyZXNwKSA9PSBTVFVOX0VSUk9SICYmCisgICAgICAgICAgICAgICBzdHVu
X21lc3NhZ2VfZmluZF9lcnJvciAocmVzcCwgJmNvZGUpID09CistICAgICAgICAgICAgICBTVFVO
X01FU1NBR0VfUkVUVVJOX1NVQ0NFU1MgJiYKKy0gICAgICAgICAgICAgIHJlY3ZfcmVhbG0gIT0g
TlVMTCAmJiByZWN2X3JlYWxtX2xlbiA+IDApIHsKKy0KKysgICAgICAgICAgICAgIFNUVU5fTUVT
U0FHRV9SRVRVUk5fU1VDQ0VTUykgeworICAgICAgICAgICAgIGlmIChjb2RlID09IDQzOCB8fAor
ICAgICAgICAgICAgICAgICAoY29kZSA9PSA0MDEgJiYKKyAgICAgICAgICAgICAgICAgICAgICEo
cmVjdl9yZWFsbV9sZW4gPT0gc2VudF9yZWFsbV9sZW4gJiYKKy0gICAgICAgICAgICAgICAgICAg
ICAgICBzZW50X3JlYWxtICE9IE5VTEwgJiYKKysgICAgICAgICAgICAgICAgICAgICAgICByZWN2
X3JlYWxtICE9IE5VTEwgJiYgc2VudF9yZWFsbSAhPSBOVUxMICYmCisgICAgICAgICAgICAgICAg
ICAgICAgICAgbWVtY21wIChzZW50X3JlYWxtLCByZWN2X3JlYWxtLCBzZW50X3JlYWxtX2xlbikg
PT0gMCkpKSB7CisgICAgICAgICAgICAgICBkLT5zdHVuX3Jlc3BfbXNnID0gKnJlc3A7CisgICAg
ICAgICAgICAgICBtZW1jcHkgKGQtPnN0dW5fcmVzcF9idWZmZXIsIHJlc3AtPmJ1ZmZlciwKK2Rp
ZmYgLS1naXQgYS9zdHVuL3N0dW5obWFjLmMgYi9zdHVuL3N0dW5obWFjLmMKK2luZGV4IGRmNWRl
YjYuLmY3Mzk0M2YgMTAwNjQ0CistLS0gYS9zdHVuL3N0dW5obWFjLmMKKysrKyBiL3N0dW4vc3R1
bmhtYWMuYworQEAgLTkwLDggKzkwLDEwIEBAIHN0YXRpYyBjb25zdCB1aW50OF90ICpwcml2X3Ry
aW1fdmFyIChjb25zdCB1aW50OF90ICp2YXIsIHNpemVfdCAqdmFyX2xlbikKKyAgICAgcHRyKys7
CisgICAgICgqdmFyX2xlbiktLTsKKyAgIH0KKy0gIHdoaWxlKHB0clsqdmFyX2xlbi0xXSA9PSAn
IicgfHwKKy0gICAgICBwdHJbKnZhcl9sZW4tMV0gPT0gMCkgeworKworKyAgd2hpbGUoKnZhcl9s
ZW4gPiAwICYmCisrICAgICAgKHB0clsqdmFyX2xlbi0xXSA9PSAnIicgfHwKKysgICAgICBwdHJb
KnZhcl9sZW4tMV0gPT0gMCkpIHsKKyAgICAgKCp2YXJfbGVuKS0tOworICAgfQorIAorLS0gCisy
LjMuNAorCmRpZmYgLS1naXQgYS9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtYWdlbnQt
UmVtb3ZlLXVubmVjZXNzYXJ5LU5VTEwtY2hlY2sucGF0Y2ggYi9Ub29scy9ndGsvcGF0Y2hlcy9s
aWJuaWNlLTAwMDEtYWdlbnQtUmVtb3ZlLXVubmVjZXNzYXJ5LU5VTEwtY2hlY2sucGF0Y2gKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjRlY2Y4YwotLS0gL2Rldi9udWxsCisr
KyBiL1Rvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMS1hZ2VudC1SZW1vdmUtdW5uZWNlc3Nh
cnktTlVMTC1jaGVjay5wYXRjaApAQCAtMCwwICsxLDQ0IEBACitGcm9tIDdiN2QyZDk4Njg3NmZj
NTNhMjNhZjdiNTE2ZDc4ZjgyZjJhNTQ2ZTkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9t
OiBQaGlsaXAgV2l0aG5hbGwgPHBoaWxpcEB0ZWNub2NvZGUuY28udWs+CitEYXRlOiBTdW4sIDMg
TWF5IDIwMTUgMTY6MDU6MzAgKzAxMDAKK1N1YmplY3Q6IFtQQVRDSCAxLzRdIGFnZW50OiBSZW1v
dmUgdW5uZWNlc3NhcnkgTlVMTCBjaGVjaworCitXaXRoIHRoZSBjaGFuZ2VzIGluIGNvbW1pdCA0
ODNiZGNmOCwgQG5hbWUgaXMgbm93IGd1YXJhbnRlZWQgdG8gYmUKK25vbi1OVUxMLiBTcG90dGVk
IGJ5IENvdmVyaXR5LgorCitDSUQ6ICMxMDk4NzgKKy0tLQorIGFnZW50L2FnZW50LmMgfCAxNiAr
KysrKysrLS0tLS0tLS0tCisgMSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgOSBkZWxl
dGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2FnZW50L2FnZW50LmMgYi9hZ2VudC9hZ2VudC5jCitp
bmRleCAyNTlmZGM5Li5lNzMzYzgyIDEwMDY0NAorLS0tIGEvYWdlbnQvYWdlbnQuYworKysrIGIv
YWdlbnQvYWdlbnQuYworQEAgLTUzMjksMTYgKzUzMjksMTQgQEAgbmljZV9hZ2VudF9zZXRfc3Ry
ZWFtX25hbWUgKE5pY2VBZ2VudCAqYWdlbnQsIGd1aW50IHN0cmVhbV9pZCwKKyAKKyAgIGFnZW50
X2xvY2soKTsKKyAKKy0gIGlmIChuYW1lICE9IE5VTEwpIHsKKy0gICAgZm9yIChpID0gYWdlbnQt
PnN0cmVhbXM7IGk7IGkgPSBpLT5uZXh0KSB7CistICAgICAgU3RyZWFtICpzdHJlYW0gPSBpLT5k
YXRhOworKyAgZm9yIChpID0gYWdlbnQtPnN0cmVhbXM7IGk7IGkgPSBpLT5uZXh0KSB7CisrICAg
IFN0cmVhbSAqc3RyZWFtID0gaS0+ZGF0YTsKKyAKKy0gICAgICBpZiAoc3RyZWFtLT5pZCAhPSBz
dHJlYW1faWQgJiYKKy0gICAgICAgICAgZ19zdHJjbXAwIChzdHJlYW0tPm5hbWUsIG5hbWUpID09
IDApCistICAgICAgICBnb3RvIGRvbmU7CistICAgICAgZWxzZSBpZiAoc3RyZWFtLT5pZCA9PSBz
dHJlYW1faWQpCistICAgICAgICBzdHJlYW1fdG9fbmFtZSA9IHN0cmVhbTsKKy0gICAgfQorKyAg
ICBpZiAoc3RyZWFtLT5pZCAhPSBzdHJlYW1faWQgJiYKKysgICAgICAgIGdfc3RyY21wMCAoc3Ry
ZWFtLT5uYW1lLCBuYW1lKSA9PSAwKQorKyAgICAgIGdvdG8gZG9uZTsKKysgICAgZWxzZSBpZiAo
c3RyZWFtLT5pZCA9PSBzdHJlYW1faWQpCisrICAgICAgc3RyZWFtX3RvX25hbWUgPSBzdHJlYW07
CisgICB9CisgCisgICBpZiAoc3RyZWFtX3RvX25hbWUgPT0gTlVMTCkKKy0tIAorMi4zLjIgKEFw
cGxlIEdpdC01NSkKKwpkaWZmIC0tZ2l0IGEvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAx
LW5pY2VzcmMtc3Bpbi10aGUtYWdlbnQtbWFpbmxvb3AtaW4tYS1zZXBhcmF0ZS10aHJlYWQucGF0
Y2ggYi9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtbmljZXNyYy1zcGluLXRoZS1hZ2Vu
dC1tYWlubG9vcC1pbi1hLXNlcGFyYXRlLXRocmVhZC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwLi42YWY1N2U4Ci0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvZ3RrL3Bh
dGNoZXMvbGlibmljZS0wMDAxLW5pY2VzcmMtc3Bpbi10aGUtYWdlbnQtbWFpbmxvb3AtaW4tYS1z
ZXBhcmF0ZS10aHJlYWQucGF0Y2gKQEAgLTAsMCArMSwyNTMgQEAKK0Zyb20gMzE5NmE5NmE0MDhh
OTBmNzA3ZGZmM2YzMWZhM2QwNWQ2NGFlYjY4YSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zy
b206IEFsZXNzYW5kcm8gRGVjaW5hIDxhbGVzc2FuZHJvLmRAZ21haWwuY29tPgorRGF0ZTogVHVl
LCAxMyBPY3QgMjAxNSAxMjo0OToxOSArMTEwMAorU3ViamVjdDogW1BBVENIXSBuaWNlc3JjOiBz
cGluIHRoZSBhZ2VudCBtYWlubG9vcCBpbiBhIHNlcGFyYXRlIHRocmVhZAorCitEb24ndCBydW4g
dGhlIG1haW5sb29wIGZyb20gdGhlIHNyY3BhZCB0YXNrLCBzaW5jZSB0aGF0IGNhbiBnZXQgYmxv
Y2tlZCBpbiB0aGUKK3BpcGVsaW5lIGFuZCBjYXVzZSB1bm5lY2Vzc2FyeSBTVFVOIHJldHJhc21p
c3Npb25zIChhdCBiZXN0KSBhbmQgY29tcGxldGVseQorYmxvY2sgdGhlIGFnZW50IChhdCB3b3Jz
dCkuCistLS0KKyBnc3QvZ3N0bmljZXNyYy5jIHwgMTU4ICsrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBnc3QvZ3N0bmljZXNyYy5oIHwgICA0
ICstCisgMiBmaWxlcyBjaGFuZ2VkLCA5MyBpbnNlcnRpb25zKCspLCA2OSBkZWxldGlvbnMoLSkK
KworZGlmZiAtLWdpdCBhL2dzdC9nc3RuaWNlc3JjLmMgYi9nc3QvZ3N0bmljZXNyYy5jCitpbmRl
eCBkMzY5ZTA5Li5lYjU5ZmU5IDEwMDY0NAorLS0tIGEvZ3N0L2dzdG5pY2VzcmMuYworKysrIGIv
Z3N0L2dzdG5pY2VzcmMuYworQEAgLTQ4LDYgKzQ4LDE0IEBAIEdTVF9ERUJVR19DQVRFR09SWV9T
VEFUSUMgKG5pY2VzcmNfZGVidWcpOworIAorICNkZWZpbmUgQlVGRkVSX1NJWkUgKDY1NTM2KQor
IAorK3N0YXRpYyBnYm9vbGVhbgorK2dzdF9uaWNlX3NyY19zdGFydCAoCisrICAgIEdzdEJhc2VT
cmMgKmJhc2VzcmMpOworKworK3N0YXRpYyBnYm9vbGVhbgorK2dzdF9uaWNlX3NyY19zdG9wICgK
KysgICAgR3N0QmFzZVNyYyAqYmFzZXNyYyk7CisrCisgc3RhdGljIEdzdEZsb3dSZXR1cm4KKyBn
c3RfbmljZV9zcmNfY3JlYXRlICgKKyAgIEdzdFB1c2hTcmMgKmJhc2VzcmMsCitAQCAtNTcsMTAg
KzY1LDYgQEAgc3RhdGljIGdib29sZWFuCisgZ3N0X25pY2Vfc3JjX3VubG9jayAoCisgICAgIEdz
dEJhc2VTcmMgKmJhc2VzcmMpOworIAorLXN0YXRpYyBnYm9vbGVhbgorLWdzdF9uaWNlX3NyY191
bmxvY2tfc3RvcCAoCistICAgIEdzdEJhc2VTcmMgKmJhc2VzcmMpOworLQorIHN0YXRpYyB2b2lk
CisgZ3N0X25pY2Vfc3JjX3NldF9wcm9wZXJ0eSAoCisgICBHT2JqZWN0ICpvYmplY3QsCitAQCAt
MTE2LDggKzEyMCw5IEBAIGdzdF9uaWNlX3NyY19jbGFzc19pbml0IChHc3ROaWNlU3JjQ2xhc3Mg
KmtsYXNzKQorICAgZ3N0cHVzaHNyY19jbGFzcy0+Y3JlYXRlID0gR1NUX0RFQlVHX0ZVTkNQVFIg
KGdzdF9uaWNlX3NyY19jcmVhdGUpOworIAorICAgZ3N0YmFzZXNyY19jbGFzcyA9IChHc3RCYXNl
U3JjQ2xhc3MgKikga2xhc3M7CisrICBnc3RiYXNlc3JjX2NsYXNzLT5zdGFydCA9IEdTVF9ERUJV
R19GVU5DUFRSIChnc3RfbmljZV9zcmNfc3RhcnQpOworKyAgZ3N0YmFzZXNyY19jbGFzcy0+c3Rv
cCA9IEdTVF9ERUJVR19GVU5DUFRSIChnc3RfbmljZV9zcmNfc3RvcCk7CisgICBnc3RiYXNlc3Jj
X2NsYXNzLT51bmxvY2sgPSBHU1RfREVCVUdfRlVOQ1BUUiAoZ3N0X25pY2Vfc3JjX3VubG9jayk7
CistICBnc3RiYXNlc3JjX2NsYXNzLT51bmxvY2tfc3RvcCA9IEdTVF9ERUJVR19GVU5DUFRSIChn
c3RfbmljZV9zcmNfdW5sb2NrX3N0b3ApOworIAorICAgZ29iamVjdF9jbGFzcyA9IChHT2JqZWN0
Q2xhc3MgKikga2xhc3M7CisgICBnb2JqZWN0X2NsYXNzLT5zZXRfcHJvcGVydHkgPSBnc3Rfbmlj
ZV9zcmNfc2V0X3Byb3BlcnR5OworQEAgLTE3OSw5ICsxODQsODMgQEAgZ3N0X25pY2Vfc3JjX2lu
aXQgKEdzdE5pY2VTcmMgKnNyYykKKyAgIHNyYy0+Y29tcG9uZW50X2lkID0gMDsKKyAgIHNyYy0+
bWFpbmN0eCA9IGdfbWFpbl9jb250ZXh0X25ldyAoKTsKKyAgIHNyYy0+bWFpbmxvb3AgPSBnX21h
aW5fbG9vcF9uZXcgKHNyYy0+bWFpbmN0eCwgRkFMU0UpOworLSAgc3JjLT51bmxvY2tlZCA9IEZB
TFNFOworLSAgc3JjLT5pZGxlX3NvdXJjZSA9IE5VTEw7CisgICBzcmMtPm91dGJ1ZnMgPSBnX3F1
ZXVlX25ldyAoKTsKKysgIHNyYy0+YWdlbnRfaW9fdGhyZWFkID0gTlVMTDsKKysgIGdfY29uZF9p
bml0ICgmc3JjLT5vdXRjb25kKTsKKyt9CisrCisrc3RhdGljIGdwb2ludGVyCisrZ3N0X25pY2Vf
c3JjX2FnZW50X2lvX3RocmVhZCAoZ3BvaW50ZXIgZGF0YSkKKyt7CisrICBHc3ROaWNlU3JjICpu
aWNlc3JjID0gR1NUX05JQ0VfU1JDIChkYXRhKTsKKysKKysgIEdTVF9JTkZPX09CSkVDVCAobmlj
ZXNyYywgInN0YXJ0aW5nIGFnZW50IGlvIHRocmVhZCIpOworKyAgZ19tYWluX2xvb3BfcnVuIChu
aWNlc3JjLT5tYWlubG9vcCk7CisrICBHU1RfSU5GT19PQkpFQ1QgKG5pY2VzcmMsICJleGl0aW5n
IGFnZW50IGlvIHRocmVhZCIpOworKworKyAgcmV0dXJuIE5VTEw7CisrfQorKworK3N0YXRpYyBn
Ym9vbGVhbgorK21haW5fbG9vcF9ydW5uaW5nX2NiIChncG9pbnRlciBkYXRhKQorK3sKKysgIEdz
dE5pY2VTcmMgKm5pY2VzcmMgPSBHU1RfTklDRV9TUkMgKGRhdGEpOworKworKyAgR1NUX09CSkVD
VF9MT0NLIChuaWNlc3JjKTsKKysgIC8qIF9zdGFydCgpIGFuZCBfc3RvcCgpIGNvdWxkIGJvdGgg
YmUgd2FpdGluZyBmb3IgdGhlIG1haW5sb29wIHRvIHN0YXJ0IHNvIHdlCisrICAgKiBuZWVkIHRv
IGJyb2FkY2FzdCAqLworKyAgZ19jb25kX2Jyb2FkY2FzdCAoJm5pY2VzcmMtPm91dGNvbmQpOwor
KyAgR1NUX09CSkVDVF9VTkxPQ0sgKG5pY2VzcmMpOworKworKyAgcmV0dXJuIEZBTFNFOworK30K
KysKKytzdGF0aWMgZ2Jvb2xlYW4KKytnc3RfbmljZV9zcmNfc3RhcnQgKEdzdEJhc2VTcmMgKiBi
YXNlc3JjKQorK3sKKysgIEdzdE5pY2VTcmMgKm5pY2VzcmMgPSBHU1RfTklDRV9TUkMgKGJhc2Vz
cmMpOworKyAgR1NvdXJjZSAqc291cmNlOworKyAgZ2NoYXIgKnRocmVhZF9uYW1lOworKworKyAg
R1NUX09CSkVDVF9MT0NLIChuaWNlc3JjKTsKKysgIHNvdXJjZSA9IGdfaWRsZV9zb3VyY2VfbmV3
ICgpOworKyAgZ19zb3VyY2Vfc2V0X2NhbGxiYWNrIChzb3VyY2UsCisrICAgICAgKEdTb3VyY2VG
dW5jKSBtYWluX2xvb3BfcnVubmluZ19jYiwgbmljZXNyYywgTlVMTCk7CisrICBnX3NvdXJjZV9h
dHRhY2ggKHNvdXJjZSwgbmljZXNyYy0+bWFpbmN0eCk7CisrICBnX3NvdXJjZV91bnJlZiAoc291
cmNlKTsKKysKKysgIHRocmVhZF9uYW1lID0gZ19zdHJkdXBfcHJpbnRmICgiJXM6YWdlbnRfaW8i
LCBHU1RfT0JKRUNUX05BTUUgKG5pY2VzcmMpKTsKKysgIG5pY2VzcmMtPmFnZW50X2lvX3RocmVh
ZCA9IGdfdGhyZWFkX25ldyAodGhyZWFkX25hbWUsIGdzdF9uaWNlX3NyY19hZ2VudF9pb190aHJl
YWQsIG5pY2VzcmMpOworKyAgZ19mcmVlICh0aHJlYWRfbmFtZSk7CisrICAvKiB3YWl0IHVudGls
IHRoZSBhZ2VudCB0aHJlYWQgc3RhcnRzIHNwaW5uaW5nIHRoZSBtYWlubG9vcCBvciBfc3RvcCgp
IGlzCisrICAgKiBjYWxsZWQgKi8KKysgIHdoaWxlIChHU1RfQkFTRV9TUkNfSVNfU1RBUlRJTkcg
KGJhc2VzcmMpICYmCisrICAgICAgIWdfbWFpbl9sb29wX2lzX3J1bm5pbmcgKG5pY2VzcmMtPm1h
aW5sb29wKSkKKysgICAgZ19jb25kX3dhaXQgKCZuaWNlc3JjLT5vdXRjb25kLCBHU1RfT0JKRUNU
X0dFVF9MT0NLIChuaWNlc3JjKSk7CisrICBHU1RfT0JKRUNUX1VOTE9DSyAobmljZXNyYyk7Cisr
CisrICByZXR1cm4gVFJVRTsKKyt9CisrCisrc3RhdGljIGdib29sZWFuCisrZ3N0X25pY2Vfc3Jj
X3N0b3AgKEdzdEJhc2VTcmMgKiBiYXNlc3JjKQorK3sKKysgIEdzdE5pY2VTcmMgKm5pY2VzcmMg
PSBHU1RfTklDRV9TUkMgKGJhc2VzcmMpOworKyAgR1RocmVhZCAqYWdlbnRfaW9fdGhyZWFkID0g
TlVMTDsKKysKKysgIEdTVF9PQkpFQ1RfTE9DSyAobmljZXNyYyk7CisrICAvKiBoZXJlIHdlIHdh
aXQgZm9yIHRoZSBhZ2VudCB0aHJlYWQgY3JlYXRlZCBpbiBfc3RhcnQoKSB0byBiZSBzY2hlZHVs
ZWQgc28KKysgICAqIHRoYXQgd2UgZG9uJ3QgcmlzayBjYWxsaW5nIF9xdWl0KCkgZmlyc3QgYW5k
IHRoZW4gX3J1bigpIG9uIHRoZSBtYWlubG9vcCAqLworKyAgd2hpbGUgKCFnX21haW5fbG9vcF9p
c19ydW5uaW5nIChuaWNlc3JjLT5tYWlubG9vcCkpCisrICAgIGdfY29uZF93YWl0ICgmbmljZXNy
Yy0+b3V0Y29uZCwgR1NUX09CSkVDVF9HRVRfTE9DSyAobmljZXNyYykpOworKyAgZ19tYWluX2xv
b3BfcXVpdCAobmljZXNyYy0+bWFpbmxvb3ApOworKyAgYWdlbnRfaW9fdGhyZWFkID0gbmljZXNy
Yy0+YWdlbnRfaW9fdGhyZWFkOworKyAgbmljZXNyYy0+YWdlbnRfaW9fdGhyZWFkID0gTlVMTDsK
KysgIEdTVF9PQkpFQ1RfVU5MT0NLIChuaWNlc3JjKTsKKysKKysgIGdfdGhyZWFkX2pvaW4gKGFn
ZW50X2lvX3RocmVhZCk7CisrCisrICByZXR1cm4gVFJVRTsKKyB9CisgCisgc3RhdGljIHZvaWQK
K0BAIC0yMDcsNjIgKzI4NiwxNyBAQCBnc3RfbmljZV9zcmNfcmVhZF9jYWxsYmFjayAoTmljZUFn
ZW50ICphZ2VudCwKKyAjZW5kaWYKKyAgIEdTVF9PQkpFQ1RfTE9DSyAobmljZXNyYyk7CisgICBn
X3F1ZXVlX3B1c2hfdGFpbCAobmljZXNyYy0+b3V0YnVmcywgYnVmZmVyKTsKKy0gIGdfbWFpbl9s
b29wX3F1aXQgKG5pY2VzcmMtPm1haW5sb29wKTsKKysgIGdfY29uZF9zaWduYWwgKCZuaWNlc3Jj
LT5vdXRjb25kKTsKKyAgIEdTVF9PQkpFQ1RfVU5MT0NLIChuaWNlc3JjKTsKKyB9CisgCisgc3Rh
dGljIGdib29sZWFuCistZ3N0X25pY2Vfc3JjX3VubG9ja19pZGxlciAoZ3BvaW50ZXIgZGF0YSkK
Ky17CistICBHc3ROaWNlU3JjICpuaWNlc3JjID0gR1NUX05JQ0VfU1JDIChkYXRhKTsKKy0KKy0g
IEdTVF9PQkpFQ1RfTE9DSyAobmljZXNyYyk7CistICBpZiAobmljZXNyYy0+dW5sb2NrZWQpCist
ICAgIGdfbWFpbl9sb29wX3F1aXQgKG5pY2VzcmMtPm1haW5sb29wKTsKKy0KKy0gIGlmIChuaWNl
c3JjLT5pZGxlX3NvdXJjZSkgeworLSAgICBnX3NvdXJjZV9kZXN0cm95IChuaWNlc3JjLT5pZGxl
X3NvdXJjZSk7CistICAgIGdfc291cmNlX3VucmVmIChuaWNlc3JjLT5pZGxlX3NvdXJjZSk7Cist
ICAgIG5pY2VzcmMtPmlkbGVfc291cmNlID0gTlVMTDsKKy0gIH0KKy0gIEdTVF9PQkpFQ1RfVU5M
T0NLIChuaWNlc3JjKTsKKy0KKy0gIHJldHVybiBGQUxTRTsKKy19CistCistc3RhdGljIGdib29s
ZWFuCisgZ3N0X25pY2Vfc3JjX3VubG9jayAoR3N0QmFzZVNyYyAqc3JjKQorIHsKKyAgIEdzdE5p
Y2VTcmMgKm5pY2VzcmMgPSBHU1RfTklDRV9TUkMgKHNyYyk7CisgCisgICBHU1RfT0JKRUNUX0xP
Q0sgKHNyYyk7CistICBuaWNlc3JjLT51bmxvY2tlZCA9IFRSVUU7CistCistICBnX21haW5fbG9v
cF9xdWl0IChuaWNlc3JjLT5tYWlubG9vcCk7CistCistICBpZiAoIW5pY2VzcmMtPmlkbGVfc291
cmNlKSB7CistICAgIG5pY2VzcmMtPmlkbGVfc291cmNlID0gZ19pZGxlX3NvdXJjZV9uZXcgKCk7
CistICAgIGdfc291cmNlX3NldF9wcmlvcml0eSAobmljZXNyYy0+aWRsZV9zb3VyY2UsIEdfUFJJ
T1JJVFlfSElHSCk7CistICAgIGdfc291cmNlX3NldF9jYWxsYmFjayAobmljZXNyYy0+aWRsZV9z
b3VyY2UsIGdzdF9uaWNlX3NyY191bmxvY2tfaWRsZXIsIHNyYywgTlVMTCk7CistICAgIGdfc291
cmNlX2F0dGFjaCAobmljZXNyYy0+aWRsZV9zb3VyY2UsIGdfbWFpbl9sb29wX2dldF9jb250ZXh0
IChuaWNlc3JjLT5tYWlubG9vcCkpOworLSAgfQorLSAgR1NUX09CSkVDVF9VTkxPQ0sgKHNyYyk7
CistCistICByZXR1cm4gVFJVRTsKKy19CistCistc3RhdGljIGdib29sZWFuCistZ3N0X25pY2Vf
c3JjX3VubG9ja19zdG9wIChHc3RCYXNlU3JjICpzcmMpCisteworLSAgR3N0TmljZVNyYyAqbmlj
ZXNyYyA9IEdTVF9OSUNFX1NSQyAoc3JjKTsKKy0KKy0gIEdTVF9PQkpFQ1RfTE9DSyAoc3JjKTsK
Ky0gIG5pY2VzcmMtPnVubG9ja2VkID0gRkFMU0U7CistICBpZiAobmljZXNyYy0+aWRsZV9zb3Vy
Y2UpIHsKKy0gICAgZ19zb3VyY2VfZGVzdHJveSAobmljZXNyYy0+aWRsZV9zb3VyY2UpOworLSAg
ICBnX3NvdXJjZV91bnJlZihuaWNlc3JjLT5pZGxlX3NvdXJjZSk7CistICB9CistICBuaWNlc3Jj
LT5pZGxlX3NvdXJjZSA9IE5VTEw7CisrICBnX2NvbmRfc2lnbmFsICgmbmljZXNyYy0+b3V0Y29u
ZCk7CisgICBHU1RfT0JKRUNUX1VOTE9DSyAoc3JjKTsKKyAKKyAgIHJldHVybiBUUlVFOworQEAg
LTI3OCwxOSArMzEyLDggQEAgZ3N0X25pY2Vfc3JjX2NyZWF0ZSAoCisgICBHU1RfTE9HX09CSkVD
VCAobmljZXNyYywgImNyZWF0ZSBjYWxsZWQiKTsKKyAKKyAgIEdTVF9PQkpFQ1RfTE9DSyAoYmFz
ZXNyYyk7CistICBpZiAobmljZXNyYy0+dW5sb2NrZWQpIHsKKy0gICAgR1NUX09CSkVDVF9VTkxP
Q0sgKGJhc2VzcmMpOworLSNpZiBHU1RfQ0hFQ0tfVkVSU0lPTiAoMSwwLDApCistICAgIHJldHVy
biBHU1RfRkxPV19GTFVTSElORzsKKy0jZWxzZQorLSAgICByZXR1cm4gR1NUX0ZMT1dfV1JPTkdf
U1RBVEU7CistI2VuZGlmCistICB9CistICBpZiAoZ19xdWV1ZV9pc19lbXB0eSAobmljZXNyYy0+
b3V0YnVmcykpIHsKKy0gICAgR1NUX09CSkVDVF9VTkxPQ0sgKGJhc2VzcmMpOworLSAgICBnX21h
aW5fbG9vcF9ydW4gKG5pY2VzcmMtPm1haW5sb29wKTsKKy0gICAgR1NUX09CSkVDVF9MT0NLIChi
YXNlc3JjKTsKKy0gIH0KKysgIGlmIChnX3F1ZXVlX2lzX2VtcHR5IChuaWNlc3JjLT5vdXRidWZz
KSkKKysgICAgZ19jb25kX3dhaXQgKCZuaWNlc3JjLT5vdXRjb25kLCBHU1RfT0JKRUNUX0dFVF9M
T0NLIChuaWNlc3JjKSk7CisgCisgICAqYnVmZmVyID0gZ19xdWV1ZV9wb3BfaGVhZCAobmljZXNy
Yy0+b3V0YnVmcyk7CisgICBHU1RfT0JKRUNUX1VOTE9DSyAoYmFzZXNyYyk7CitAQCAtMzMxLDYg
KzM1NCw3IEBAIGdzdF9uaWNlX3NyY19kaXNwb3NlIChHT2JqZWN0ICpvYmplY3QpCisgICAgIGdf
cXVldWVfZnJlZSAoc3JjLT5vdXRidWZzKTsKKyAgIH0KKyAgIHNyYy0+b3V0YnVmcyA9IE5VTEw7
CisrICBnX2NvbmRfY2xlYXIgKCZzcmMtPm91dGNvbmQpOworIAorICAgR19PQkpFQ1RfQ0xBU1Mg
KGdzdF9uaWNlX3NyY19wYXJlbnRfY2xhc3MpLT5kaXNwb3NlIChvYmplY3QpOworIH0KK2RpZmYg
LS1naXQgYS9nc3QvZ3N0bmljZXNyYy5oIGIvZ3N0L2dzdG5pY2VzcmMuaAoraW5kZXggNWQzZjU1
NC4uMmQ5ZjY3NCAxMDA2NDQKKy0tLSBhL2dzdC9nc3RuaWNlc3JjLmgKKysrKyBiL2dzdC9nc3Ru
aWNlc3JjLmgKK0BAIC02OCw4ICs2OCw4IEBAIHN0cnVjdCBfR3N0TmljZVNyYworICAgR01haW5D
b250ZXh0ICptYWluY3R4OworICAgR01haW5Mb29wICptYWlubG9vcDsKKyAgIEdRdWV1ZSAqb3V0
YnVmczsKKy0gIGdib29sZWFuIHVubG9ja2VkOworLSAgR1NvdXJjZSAqaWRsZV9zb3VyY2U7Cisr
ICBHQ29uZCBvdXRjb25kOworKyAgR1RocmVhZCAqYWdlbnRfaW9fdGhyZWFkOworIH07CisgCisg
dHlwZWRlZiBzdHJ1Y3QgX0dzdE5pY2VTcmNDbGFzcyBHc3ROaWNlU3JjQ2xhc3M7CistLSAKKzIu
My40CisKZGlmZiAtLWdpdCBhL1Rvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMi1Eby1ub3Qt
dXBkYXRlLWEtcmVtb3RlLWNhbmRpZGF0ZS1zLXR5cGUucGF0Y2ggYi9Ub29scy9ndGsvcGF0Y2hl
cy9saWJuaWNlLTAwMDItRG8tbm90LXVwZGF0ZS1hLXJlbW90ZS1jYW5kaWRhdGUtcy10eXBlLnBh
dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgxY2E2NmMKLS0tIC9kZXYv
bnVsbAorKysgYi9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDItRG8tbm90LXVwZGF0ZS1h
LXJlbW90ZS1jYW5kaWRhdGUtcy10eXBlLnBhdGNoCkBAIC0wLDAgKzEsMzEgQEAKK0Zyb20gOTM4
NjJjMWUxOTQwNjE4ZTA2MTQzZDQ3ODhmNTRiZmZkNGQxYzVkYSBNb24gU2VwIDE3IDAwOjAwOjAw
IDIwMDEKK0Zyb206IFlvdW5lc3MgQWxhb3VpIDxrYWthcm90b0BrYWthcm90by5ob21lbGludXgu
bmV0PgorRGF0ZTogVHVlLCA1IE1heSAyMDE1IDE0OjI0OjE1IC0wNDAwCitTdWJqZWN0OiBbUEFU
Q0ggMi80XSBEbyBub3QgdXBkYXRlIGEgcmVtb3RlIGNhbmRpZGF0ZSdzIHR5cGUKKworV2hlbiBh
ZGRpbmcgYSByZW1vdGUgY2FuZGlkYXRlLCBpZiBpdCdzIHRoZSBzYW1lIGlwOnBvcnQsIHdlIHNo
b3VsZAorYWxzbyBjaGVjayBpdHMgdHlwZSwgb3RoZXJ3aXNlIGl0J3MgYSBuZXcgY2FuZGlkYXRl
LiBXZSBjYW4ndCBhbGxvdworYSBjYW5kaWRhdGUgdHlwZSB0byBiZSB1cGRhdGVkLiBUaGlzIGNh
dXNlZCBpc3N1ZXMgdG8gaWtvbnN0XyBvbiBJUkMKK3doZXJlIGZvciBzb21lIHJlYXNvbiBhIGhv
c3QgY2FuZGlkYXRlIGFwcGVhcmVkIGFzIGJvdGggaG9zdCBhbmQgcHJmbHgKK2FuZCB0aGUgdXBk
YXRlIGNhdXNlZCBhIHJlbW90ZSBob3N0IGNhbmRpZGF0ZSB0byBiZSB1cGRhdGVkIHRvIHByZmx4
CitjYXVzaW5nIGEgY3Jhc2ggd2hlbiB0aGUgc29ja3B0ciB3YXMgYmVpbmcgYWNjZXNzZWQuCist
LS0KKyBhZ2VudC9hZ2VudC5jIHwgMiArLQorIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigr
KSwgMSBkZWxldGlvbigtKQorCitkaWZmIC0tZ2l0IGEvYWdlbnQvYWdlbnQuYyBiL2FnZW50L2Fn
ZW50LmMKK2luZGV4IGU3MzNjODIuLjM4YjY3OWYgMTAwNjQ0CistLS0gYS9hZ2VudC9hZ2VudC5j
CisrKysgYi9hZ2VudC9hZ2VudC5jCitAQCAtMzA0MSw3ICszMDQxLDcgQEAgc3RhdGljIGdib29s
ZWFuIHByaXZfYWRkX3JlbW90ZV9jYW5kaWRhdGUgKAorIAorICAgLyogc3RlcDogY2hlY2sgd2hl
dGhlciB0aGUgY2FuZGlkYXRlIGFscmVhZHkgZXhpc3RzICovCisgICBjYW5kaWRhdGUgPSBjb21w
b25lbnRfZmluZF9yZW1vdGVfY2FuZGlkYXRlKGNvbXBvbmVudCwgYWRkciwgdHJhbnNwb3J0KTsK
Ky0gIGlmIChjYW5kaWRhdGUpIHsKKysgIGlmIChjYW5kaWRhdGUgJiYgY2FuZGlkYXRlLT50eXBl
ID09IHR5cGUpIHsKKyAgICAgaWYgKG5pY2VfZGVidWdfaXNfZW5hYmxlZCAoKSkgeworICAgICAg
IGdjaGFyIHRtcGJ1ZltJTkVUNl9BRERSU1RSTEVOXTsKKyAgICAgICBuaWNlX2FkZHJlc3NfdG9f
c3RyaW5nIChhZGRyLCB0bXBidWYpOworLS0gCisyLjMuMiAoQXBwbGUgR2l0LTU1KQorCmRpZmYg
LS1naXQgYS9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDItVFVSTi1oYW5kbGUtNDM3LUFs
bG9jYXRpb24tTWlzbWF0Y2gtcmVzcG9uc2VzLnBhdGNoIGIvVG9vbHMvZ3RrL3BhdGNoZXMvbGli
bmljZS0wMDAyLVRVUk4taGFuZGxlLTQzNy1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5w
YXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YWNlOGMyCi0tLSAvZGV2
L251bGwKKysrIGIvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAyLVRVUk4taGFuZGxlLTQz
Ny1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5wYXRjaApAQCAtMCwwICsxLDEzMSBAQAor
RnJvbSA5ZTJjZWQxMzFhYzBmYzY0MmVmNWM4NjE4NTFjNTk4OGQ4Yjk2ZDE2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQorRnJvbTogQWxlc3NhbmRybyBEZWNpbmEgPGFsZXNzYW5kcm8uZEBnbWFp
bC5jb20+CitEYXRlOiBUaHUsIDI0IE1hciAyMDE2IDEwOjU0OjIwICsxMTAwCitTdWJqZWN0OiBb
UEFUQ0ggMi8yXSBUVVJOOiBoYW5kbGUgNDM3IEFsbG9jYXRpb24gTWlzbWF0Y2ggcmVzcG9uc2Vz
CisKK09uIEFsbG9jYXRpb24gTWlzbWF0Y2ggcmVzcG9uc2VzLCB0aGUgY2xpZW50IGlzIHN1cHBv
c2VkIHRvIHJldHJ5IHdpdGggYQorZGlmZmVyZW50IGhvc3Q6cG9ydCBjb21iaW5hdGlvbi4KKy0t
LQorIGFnZW50L2Nvbm5jaGVjay5jIHwgNDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrLS0tLS0tLS0tCisgYWdlbnQvZGlzY292ZXJ5LmggfCAgMSArCisgc3R1bi9zdHVuYWdlbnQu
YyAgfCAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRp
b25zKC0pCisKK2RpZmYgLS1naXQgYS9hZ2VudC9jb25uY2hlY2suYyBiL2FnZW50L2Nvbm5jaGVj
ay5jCitpbmRleCA5N2JmNTM2Li5kMDNlNTdhIDEwMDY0NAorLS0tIGEvYWdlbnQvY29ubmNoZWNr
LmMKKysrKyBiL2FnZW50L2Nvbm5jaGVjay5jCitAQCAtMjYzMCw5ICsyNjMwLDEwIEBAIHN0YXRp
YyBnYm9vbGVhbiBwcml2X21hcF9yZXBseV90b19yZWxheV9yZXF1ZXN0IChOaWNlQWdlbnQgKmFn
ZW50LCBTdHVuTWVzc2FnZSAqCisgICBTdHVuVHJhbnNhY3Rpb25JZCBkaXNjb3ZlcnlfaWQ7Cisg
ICBTdHVuVHJhbnNhY3Rpb25JZCByZXNwb25zZV9pZDsKKyAgIHN0dW5fbWVzc2FnZV9pZCAocmVz
cCwgcmVzcG9uc2VfaWQpOworKyAgQ2FuZGlkYXRlRGlzY292ZXJ5ICpkID0gTlVMTDsKKyAKKyAg
IGZvciAoaSA9IGFnZW50LT5kaXNjb3ZlcnlfbGlzdDsgaSAmJiB0cmFuc19mb3VuZCAhPSBUUlVF
OyBpID0gaS0+bmV4dCkgeworLSAgICBDYW5kaWRhdGVEaXNjb3ZlcnkgKmQgPSBpLT5kYXRhOwor
KyAgICBkID0gaS0+ZGF0YTsKKyAKKyAgICAgaWYgKGQtPnR5cGUgPT0gTklDRV9DQU5ESURBVEVf
VFlQRV9SRUxBWUVEICYmCisgICAgICAgICBkLT5zdHVuX21lc3NhZ2UuYnVmZmVyKSB7CitAQCAt
Mjc1Nyw2ICsyNzU4LDcgQEAgc3RhdGljIGdib29sZWFuIHByaXZfbWFwX3JlcGx5X3RvX3JlbGF5
X3JlcXVlc3QgKE5pY2VBZ2VudCAqYWdlbnQsIFN0dW5NZXNzYWdlICoKKyAgICAgICAgICAgdWlu
dDE2X3Qgc2VudF9yZWFsbV9sZW4gPSAwOworICAgICAgICAgICB1aW50MTZfdCByZWN2X3JlYWxt
X2xlbiA9IDA7CisgCisrICAgICAgICAgIHRyYW5zX2ZvdW5kID0gVFJVRTsKKyAgICAgICAgICAg
c2VudF9yZWFsbSA9ICh1aW50OF90ICopIHN0dW5fbWVzc2FnZV9maW5kICgmZC0+c3R1bl9tZXNz
YWdlLAorICAgICAgICAgICAgICAgU1RVTl9BVFRSSUJVVEVfUkVBTE0sICZzZW50X3JlYWxtX2xl
bik7CisgICAgICAgICAgIHJlY3ZfcmVhbG0gPSAodWludDhfdCAqKSBzdHVuX21lc3NhZ2VfZmlu
ZCAocmVzcCwKK0BAIC0yNzY5LDExICsyNzcxLDMxIEBAIHN0YXRpYyBnYm9vbGVhbiBwcml2X21h
cF9yZXBseV90b19yZWxheV9yZXF1ZXN0IChOaWNlQWdlbnQgKmFnZW50LCBTdHVuTWVzc2FnZSAq
CisgICAgICAgICAgICAgICBzdHVuX21lc3NhZ2VfZ2V0X2NsYXNzIChyZXNwKSA9PSBTVFVOX0VS
Uk9SICYmCisgICAgICAgICAgICAgICBzdHVuX21lc3NhZ2VfZmluZF9lcnJvciAocmVzcCwgJmNv
ZGUpID09CisgICAgICAgICAgICAgICBTVFVOX01FU1NBR0VfUkVUVVJOX1NVQ0NFU1MpIHsKKy0g
ICAgICAgICAgICBpZiAoY29kZSA9PSA0MzggfHwKKysgICAgICAgICAgICBpZiAoY29kZSA9PSA0
MzcgfHwKKysgICAgICAgICAgICAgICAgY29kZSA9PSA0MzggfHwKKyAgICAgICAgICAgICAgICAg
KGNvZGUgPT0gNDAxICYmCisgICAgICAgICAgICAgICAgICAgICAhKHJlY3ZfcmVhbG1fbGVuID09
IHNlbnRfcmVhbG1fbGVuICYmCisgICAgICAgICAgICAgICAgICAgICAgICAgcmVjdl9yZWFsbSAh
PSBOVUxMICYmIHNlbnRfcmVhbG0gIT0gTlVMTCAmJgorICAgICAgICAgICAgICAgICAgICAgICAg
IG1lbWNtcCAoc2VudF9yZWFsbSwgcmVjdl9yZWFsbSwgc2VudF9yZWFsbV9sZW4pID09IDApKSkg
eworKyAgICAgICAgICAgICAgaWYgKGNvZGUgPT0gNDM3KSB7CisrICAgICAgICAgICAgICAgIGlm
IChkLT50dXJuX3JldHJpZXMrKyA9PSAzKQorKyAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7
CisrCisrICAgICAgICAgICAgICAgIC8qIHJldHJ5IHVwIHRvIHRocmVlIHRpbWVzIG9uIEFsbG9j
YXRpb24gTWlzbWF0Y2ggZXJyb3JzICovCisrICAgICAgICAgICAgICAgIE5pY2VBZGRyZXNzIGFk
ZHIgPSBkLT5uaWNlc29jay0+YWRkcjsKKysgICAgICAgICAgICAgICAgTmljZVNvY2tldCAqbmV3
X3NvY2tldDsKKysKKysgICAgICAgICAgICAgICAgLyogRklYTUU6IHRoaXMgaWdub3JlcyBuaWNl
X2FnZW50X3NldF9wb3J0X3JhbmdlICovCisrICAgICAgICAgICAgICAgIG5pY2VfYWRkcmVzc19z
ZXRfcG9ydCAoJmFkZHIsIDApOworKworKyAgICAgICAgICAgICAgICBuZXdfc29ja2V0ID0gbmlj
ZV91ZHBfYnNkX3NvY2tldF9uZXcgKCZhZGRyKTsKKysgICAgICAgICAgICAgICAgaWYgKG5ld19z
b2NrZXQpIHsKKysgICAgICAgICAgICAgICAgICBfcHJpdl9zZXRfc29ja2V0X3RvcyAoYWdlbnQs
IG5ld19zb2NrZXQsIGQtPnN0cmVhbS0+dG9zKTsKKysgICAgICAgICAgICAgICAgICBjb21wb25l
bnRfYXR0YWNoX3NvY2tldCAoZC0+Y29tcG9uZW50LCBuZXdfc29ja2V0KTsKKysgICAgICAgICAg
ICAgICAgICBkLT5uaWNlc29jayA9IG5ld19zb2NrZXQ7CisrICAgICAgICAgICAgICAgIH0KKysg
ICAgICAgICAgICAgIH0KKysKKyAgICAgICAgICAgICAgIGQtPnN0dW5fcmVzcF9tc2cgPSAqcmVz
cDsKKyAgICAgICAgICAgICAgIG1lbWNweSAoZC0+c3R1bl9yZXNwX2J1ZmZlciwgcmVzcC0+YnVm
ZmVyLAorICAgICAgICAgICAgICAgICAgIHN0dW5fbWVzc2FnZV9sZW5ndGggKHJlc3ApKTsKK0BA
IC0yNzgyLDIzICsyODA0LDI1IEBAIHN0YXRpYyBnYm9vbGVhbiBwcml2X21hcF9yZXBseV90b19y
ZWxheV9yZXF1ZXN0IChOaWNlQWdlbnQgKmFnZW50LCBTdHVuTWVzc2FnZSAqCisgICAgICAgICAg
ICAgICBkLT5wZW5kaW5nID0gRkFMU0U7CisgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgICAgIC8qIGNhc2U6IGEgcmVhbCB1bmF1dGhvcml6ZWQgZXJyb3IgKi8KKy0gICAgICAgICAg
ICAgIGQtPnN0dW5fbWVzc2FnZS5idWZmZXIgPSBOVUxMOworLSAgICAgICAgICAgICAgZC0+c3R1
bl9tZXNzYWdlLmJ1ZmZlcl9sZW4gPSAwOworLSAgICAgICAgICAgICAgZC0+ZG9uZSA9IFRSVUU7
CisrICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgICAvKiBjYXNlOiBTVFVOIGVycm9yLCB0aGUgY2hlY2sgU1RV
TiBjb250ZXh0IHdhcyBmcmVlZCAqLworLSAgICAgICAgICAgIGQtPnN0dW5fbWVzc2FnZS5idWZm
ZXIgPSBOVUxMOworLSAgICAgICAgICAgIGQtPnN0dW5fbWVzc2FnZS5idWZmZXJfbGVuID0gMDsK
Ky0gICAgICAgICAgICBkLT5kb25lID0gVFJVRTsKKysgICAgICAgICAgICBnb3RvIGVycm9yOwor
ICAgICAgICAgICB9CistICAgICAgICAgIHRyYW5zX2ZvdW5kID0gVFJVRTsKKyAgICAgICAgIH0K
KyAgICAgICB9CisgICAgIH0KKyAgIH0KKyAKKyAgIHJldHVybiB0cmFuc19mb3VuZDsKKysKKytl
cnJvcjoKKysgIGQtPnN0dW5fbWVzc2FnZS5idWZmZXIgPSBOVUxMOworKyAgZC0+c3R1bl9tZXNz
YWdlLmJ1ZmZlcl9sZW4gPSAwOworKyAgZC0+ZG9uZSA9IFRSVUU7CisrCisrICByZXR1cm4gdHJh
bnNfZm91bmQ7CisgfQorIAorIAorZGlmZiAtLWdpdCBhL2FnZW50L2Rpc2NvdmVyeS5oIGIvYWdl
bnQvZGlzY292ZXJ5LmgKK2luZGV4IGMyMmVhNmEuLjE0OGI4YzIgMTAwNjQ0CistLS0gYS9hZ2Vu
dC9kaXNjb3ZlcnkuaAorKysrIGIvYWdlbnQvZGlzY292ZXJ5LmgKK0BAIC01Niw2ICs1Niw3IEBA
IHR5cGVkZWYgc3RydWN0CisgICBTdHJlYW0gKnN0cmVhbTsKKyAgIENvbXBvbmVudCAqY29tcG9u
ZW50OworICAgVHVyblNlcnZlciAqdHVybjsKKysgIGdpbnQgdHVybl9yZXRyaWVzOworICAgU3R1
bkFnZW50IHN0dW5fYWdlbnQ7CisgICBTdHVuVGltZXIgdGltZXI7CisgICB1aW50OF90IHN0dW5f
YnVmZmVyW1NUVU5fTUFYX01FU1NBR0VfU0laRV9JUFY2XTsKK2RpZmYgLS1naXQgYS9zdHVuL3N0
dW5hZ2VudC5jIGIvc3R1bi9zdHVuYWdlbnQuYworaW5kZXggMmFiY2MyOS4uMGFiYWUzZCAxMDA2
NDQKKy0tLSBhL3N0dW4vc3R1bmFnZW50LmMKKysrKyBiL3N0dW4vc3R1bmFnZW50LmMKK0BAIC0z
MDEsNyArMzAxLDcgQEAgU3R1blZhbGlkYXRpb25TdGF0dXMgc3R1bl9hZ2VudF92YWxpZGF0ZSAo
U3R1bkFnZW50ICphZ2VudCwgU3R1bk1lc3NhZ2UgKm1zZywKKyAgICAgfSBlbHNlIGlmICghKHN0
dW5fbWVzc2FnZV9nZXRfY2xhc3MgKG1zZykgPT0gU1RVTl9FUlJPUiAmJgorICAgICAgICAgc3R1
bl9tZXNzYWdlX2ZpbmRfZXJyb3IgKG1zZywgJmVycm9yX2NvZGUpID09CisgICAgICAgICAgICAg
U1RVTl9NRVNTQUdFX1JFVFVSTl9TVUNDRVNTICYmCistICAgICAgICAoZXJyb3JfY29kZSA9PSA0
MDAgfHwgZXJyb3JfY29kZSA9PSA0MDEpKSkgeworKyAgICAgICAgKGVycm9yX2NvZGUgPT0gNDAw
IHx8IGVycm9yX2NvZGUgPT0gNDAxIHx8IGVycm9yX2NvZGUgPT0gNDM3KSkpIHsKKyAgICAgICBz
dHVuX2RlYnVnICgiU1RVTiBhdXRoIGVycm9yOiBObyBtZXNzYWdlIGludGVncml0eSBhdHRyaWJ1
dGUhIik7CisgICAgICAgcmV0dXJuIFNUVU5fVkFMSURBVElPTl9VTkFVVEhPUklaRUQ7CisgICAg
IH0KKy0tIAorMi4zLjQKKwpkaWZmIC0tZ2l0IGEvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0w
MDAzLURvLW5vdC1jb21wYXJlLXNjb3BlLWZvci1JUHY2LWFkZHJlc3Mtd2hlbi1zY29wZS1pcy0u
cGF0Y2ggYi9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDMtRG8tbm90LWNvbXBhcmUtc2Nv
cGUtZm9yLUlQdjYtYWRkcmVzcy13aGVuLXNjb3BlLWlzLS5wYXRjaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi44MDZmOWViCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvZ3Rr
L3BhdGNoZXMvbGlibmljZS0wMDAzLURvLW5vdC1jb21wYXJlLXNjb3BlLWZvci1JUHY2LWFkZHJl
c3Mtd2hlbi1zY29wZS1pcy0ucGF0Y2gKQEAgLTAsMCArMSw0MyBAQAorRnJvbSA5MWE3YjkzMjQy
NDQ4NDRiYWYzNWQ4ZmNlZjAxOWE0ZWEzODcyZDMwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQor
RnJvbTogWW91bmVzcyBBbGFvdWkgPGtha2Fyb3RvQGtha2Fyb3RvLmhvbWVsaW51eC5uZXQ+CitE
YXRlOiBUdWUsIDUgTWF5IDIwMTUgMTU6MDA6MzAgLTA0MDAKK1N1YmplY3Q6IFtQQVRDSCAzLzRd
IERvIG5vdCBjb21wYXJlIHNjb3BlIGZvciBJUHY2IGFkZHJlc3Mgd2hlbiBzY29wZSBpcyAwCisK
K1RoaXMgY2F1c2VkIGlzc3VlcyB3aXRoIHRoaW5raW5nIGxvY2FsIGhvc3QgY2FuZGlkYXRlcyB3
ZXJlIHBlZXItcmVmbGV4aXZlCitjYW5kaWRhdGVzIGJlY2F1c2UgdGhlIG5pY2VfYWRkcmVzc19l
cXVhbCB3b3VsZCBmYWlsIHNpbmNlIHRoZSBzY29wZQord291bGQgYmUgNiAob3Igc29tZSBvdGhl
ciB2YWx1ZSkgYnV0IGxvY2FsbHkgY3JlYXRlZCBOaWNlQWRkcmVzcyBmcm9tCithIHN0dW4gcmVz
cG9uc2Ugd291bGQgaGF2ZSB0aGUgc2NvcGUgc2V0IHRvIDAuCitXZSBpZ25vcmUgdGhlIHNjb3Bl
IHdoZW4gY29tcGFyaW5nIGlwdjYgY2FuZGlkYXRlcyB3aGVuIHNjb3BlIGlzIDAKK3RvIGF2b2lk
IHRoZXNlIGtpbmRzIG9mIGlzc3Vlcy4KK1RoYW5rcyB0byBpa29uc3RfIGZvciBmaW5kaW5nIHRo
ZXNlIGlzc3VlcworLS0tCisgYWdlbnQvYWRkcmVzcy5jIHwgNiArKysrLS0KKyAxIGZpbGUgY2hh
bmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvYWdl
bnQvYWRkcmVzcy5jIGIvYWdlbnQvYWRkcmVzcy5jCitpbmRleCBhOGQ5Yzc2Li4wMWVlYmFiIDEw
MDY0NAorLS0tIGEvYWdlbnQvYWRkcmVzcy5jCisrKysgYi9hZ2VudC9hZGRyZXNzLmMKK0BAIC0y
OTcsNyArMjk3LDggQEAgbmljZV9hZGRyZXNzX2VxdWFsIChjb25zdCBOaWNlQWRkcmVzcyAqYSwg
Y29uc3QgTmljZUFkZHJlc3MgKmIpCisgICAgIGNhc2UgQUZfSU5FVDY6CisgICAgICAgcmV0dXJu
IElONl9BUkVfQUREUl9FUVVBTCAoJmEtPnMuaXA2LnNpbjZfYWRkciwgJmItPnMuaXA2LnNpbjZf
YWRkcikKKyAgICAgICAgICAgJiYgKGEtPnMuaXA2LnNpbjZfcG9ydCA9PSBiLT5zLmlwNi5zaW42
X3BvcnQpCistICAgICAgICAgICYmIChhLT5zLmlwNi5zaW42X3Njb3BlX2lkID09IGItPnMuaXA2
LnNpbjZfc2NvcGVfaWQpOworKyAgICAgICAgICAmJiAoYS0+cy5pcDYuc2luNl9zY29wZV9pZCA9
PSAwIHx8IGItPnMuaXA2LnNpbjZfc2NvcGVfaWQgPT0gMCB8fAorKyAgICAgICAgICAgICAgKGEt
PnMuaXA2LnNpbjZfc2NvcGVfaWQgPT0gYi0+cy5pcDYuc2luNl9zY29wZV9pZCkpOworIAorICAg
ICBkZWZhdWx0OgorICAgICAgIGdfcmV0dXJuX3ZhbF9pZl9yZWFjaGVkIChGQUxTRSk7CitAQCAt
NDEyLDcgKzQxMyw4IEBAIG5pY2VfYWRkcmVzc19lcXVhbF9ub19wb3J0IChjb25zdCBOaWNlQWRk
cmVzcyAqYSwgY29uc3QgTmljZUFkZHJlc3MgKmIpCisgCisgICAgIGNhc2UgQUZfSU5FVDY6Cisg
ICAgICAgcmV0dXJuIElONl9BUkVfQUREUl9FUVVBTCAoJmEtPnMuaXA2LnNpbjZfYWRkciwgJmIt
PnMuaXA2LnNpbjZfYWRkcikKKy0gICAgICAgICAgJiYgKGEtPnMuaXA2LnNpbjZfc2NvcGVfaWQg
PT0gYi0+cy5pcDYuc2luNl9zY29wZV9pZCk7CisrICAgICAgICAgICYmIChhLT5zLmlwNi5zaW42
X3Njb3BlX2lkID09IDAgfHwgYi0+cy5pcDYuc2luNl9zY29wZV9pZCA9PSAwIHx8CisrICAgICAg
ICAgICAgICAoYS0+cy5pcDYuc2luNl9zY29wZV9pZCA9PSBiLT5zLmlwNi5zaW42X3Njb3BlX2lk
KSk7CisgCisgICAgIGRlZmF1bHQ6CisgICAgICAgZ19yZXR1cm5fdmFsX2lmX3JlYWNoZWQgKEZB
TFNFKTsKKy0tIAorMi4zLjIgKEFwcGxlIEdpdC01NSkKKwpkaWZmIC0tZ2l0IGEvVG9vbHMvZ3Rr
L3BhdGNoZXMvbGlibmljZS0wMDA0LVJlbW92aW5nLW5vLW9wLWFzc2lnbm1lbnQucGF0Y2ggYi9U
b29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDQtUmVtb3Zpbmctbm8tb3AtYXNzaWdubWVudC5w
YXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45M2JlYTkyCi0tLSAvZGV2
L251bGwKKysrIGIvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDA0LVJlbW92aW5nLW5vLW9w
LWFzc2lnbm1lbnQucGF0Y2gKQEAgLTAsMCArMSwyNCBAQAorRnJvbSA2YThjNjMyMTljNjMyYzI3
NzA3MjY3YjY1MTBkY2EwOTZjNmZkNTExIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTog
WW91bmVzcyBBbGFvdWkgPGtha2Fyb3RvQGtha2Fyb3RvLmhvbWVsaW51eC5uZXQ+CitEYXRlOiBU
dWUsIDUgTWF5IDIwMTUgMTU6MDc6MTAgLTA0MDAKK1N1YmplY3Q6IFtQQVRDSCA0LzRdIFJlbW92
aW5nIG5vLW9wIGFzc2lnbm1lbnQKKworLS0tCisgYWdlbnQvYWdlbnQuYyB8IDEgLQorIDEgZmls
ZSBjaGFuZ2VkLCAxIGRlbGV0aW9uKC0pCisKK2RpZmYgLS1naXQgYS9hZ2VudC9hZ2VudC5jIGIv
YWdlbnQvYWdlbnQuYworaW5kZXggMzhiNjc5Zi4uODRkNDA5MyAxMDA2NDQKKy0tLSBhL2FnZW50
L2FnZW50LmMKKysrKyBiL2FnZW50L2FnZW50LmMKK0BAIC0zMDUxLDcgKzMwNTEsNiBAQCBzdGF0
aWMgZ2Jvb2xlYW4gcHJpdl9hZGRfcmVtb3RlX2NhbmRpZGF0ZSAoCisgICAgICAgICAgIHVzZXJu
YW1lLCBwYXNzd29yZCwgcHJpb3JpdHkpOworICAgICB9CisgICAgIC8qIGNhc2UgMTogYW4gZXhp
c3RpbmcgY2FuZGlkYXRlLCB1cGRhdGUgdGhlIGF0dHJpYnV0ZXMgKi8KKy0gICAgY2FuZGlkYXRl
LT50eXBlID0gdHlwZTsKKyAgICAgaWYgKGJhc2VfYWRkcikKKyAgICAgICBjYW5kaWRhdGUtPmJh
c2VfYWRkciA9ICpiYXNlX2FkZHI7CisgICAgIGNhbmRpZGF0ZS0+cHJpb3JpdHkgPSBwcmlvcml0
eTsKKy0tIAorMi4zLjIgKEFwcGxlIEdpdC01NSkKKwotLSAKMi45LjM=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>291946</attachid>
            <date>2016-10-18 06:20:32 -0700</date>
            <delta_ts>2016-10-18 06:29:43 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch.patch</filename>
            <type>text/plain</type>
            <size>29891</size>
            <attacher name="Philippe Normand">pnormand</attacher>
            
              <data encoding="base64">RnJvbSA0YTIyNDhmZjhiNmE5ZWRmMjEyZTNmOWE3NDExZmYwZTQxMGQzZmEyIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwZSBOb3JtYW5kIDxwbm9ybWFuZEBpZ2FsaWEuY29t
PgpEYXRlOiBUdWUsIDE4IE9jdCAyMDE2IDE1OjE1OjMzICswMjAwClN1YmplY3Q6IFtQQVRDSF0g
cGF0Y2gKCi0tLQogVG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfCAgMjIgKysKIFRvb2xzL2d0ay9qaGJ1aWxkLm1vZHVsZXMgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAxICsKIFRvb2xzL2d0ay9vcGVud2VicnRjLm1vZHVsZXMgICAgICAgICAg
ICAgICAgICAgICAgIHwgIDg3ICsrKysrKysKIC4uLmxpYm5pY2UtMDAwMS1UVVJOLWFsbG93LVJF
QUxNLXRvLWJlLWVtcHR5LnBhdGNoIHwgIDUwICsrKysKIC4uLi0wMDAxLWFnZW50LVJlbW92ZS11
bm5lY2Vzc2FyeS1OVUxMLWNoZWNrLnBhdGNoIHwgIDQ0ICsrKysKIC4uLm4tdGhlLWFnZW50LW1h
aW5sb29wLWluLWEtc2VwYXJhdGUtdGhyZWFkLnBhdGNoIHwgMjUzICsrKysrKysrKysrKysrKysr
KysrKwogLi4uMi1Eby1ub3QtdXBkYXRlLWEtcmVtb3RlLWNhbmRpZGF0ZS1zLXR5cGUucGF0Y2gg
fCAgMzEgKysrCiAuLi4taGFuZGxlLTQzNy1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5w
YXRjaCB8IDEzMSArKysrKysrKysrKwogLi4uYXJlLXNjb3BlLWZvci1JUHY2LWFkZHJlc3Mtd2hl
bi1zY29wZS1pcy0ucGF0Y2ggfCAgNDMgKysrKwogLi4uL2xpYm5pY2UtMDAwNC1SZW1vdmluZy1u
by1vcC1hc3NpZ25tZW50LnBhdGNoICAgfCAgMjQgKysKIDEwIGZpbGVzIGNoYW5nZWQsIDY4NiBp
bnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9vbHMvZ3RrL29wZW53ZWJydGMubW9k
dWxlcwogY3JlYXRlIG1vZGUgMTAwNjQ0IFRvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMS1U
VVJOLWFsbG93LVJFQUxNLXRvLWJlLWVtcHR5LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9v
bHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAxLWFnZW50LVJlbW92ZS11bm5lY2Vzc2FyeS1OVUxM
LWNoZWNrLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmlj
ZS0wMDAxLW5pY2VzcmMtc3Bpbi10aGUtYWdlbnQtbWFpbmxvb3AtaW4tYS1zZXBhcmF0ZS10aHJl
YWQucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBUb29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAw
MDItRG8tbm90LXVwZGF0ZS1hLXJlbW90ZS1jYW5kaWRhdGUtcy10eXBlLnBhdGNoCiBjcmVhdGUg
bW9kZSAxMDA2NDQgVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAyLVRVUk4taGFuZGxlLTQz
Ny1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0
IFRvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMy1Eby1ub3QtY29tcGFyZS1zY29wZS1mb3It
SVB2Ni1hZGRyZXNzLXdoZW4tc2NvcGUtaXMtLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgVG9v
bHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDA0LVJlbW92aW5nLW5vLW9wLWFzc2lnbm1lbnQucGF0
Y2gKCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXgg
OWRkYmJhYy4uNDMyZDQ0NSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE2LTEwLTE4ICBQaGlsaXBwZSBOb3JtYW5k
ICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KKworICAgICAgICBXZWJSVEM6IFtHVEtdIFVwZGF0ZSBq
aGJ1aWxkIGVudmlyb25tZW50IGZvciBPcGVuV2ViUlRDCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjMzMzAKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCcmluZyBiYWNrIHRoZSBvcGVud2VicnRjIEpIQnVp
bGQgbW9kdWxlc2V0IGluIHRoZSB0aW1lIGJlaW5nLiBJdAorICAgICAgICBzaG91bGQgYmUgcmVt
b3ZlZCBhZnRlciB0aGUgYnVtcCB0byBHU3RyZWFtZXIgMS4xMCBpcyBjb21wbGV0ZSBhbmQKKyAg
ICAgICAgdGhlIGxpYm5pY2UgcGF0Y2hlcyBoYXZlIGJlZW4gdXBzdHJlYW1lZC4gVGhlIEdTdHJl
YW1lciBnaXQKKyAgICAgICAgc25hcHNob3RzIHVzZWQgaW4gdGhpcyBwYXRjaCBhcmUgdGhlIG9u
ZXMgY29uZmlndXJlZCBpbiBFcmljc3NvbidzCisgICAgICAgIEdTdHJlYW1lciBDZXJiZXJvIGZv
cmsuCisKKyAgICAgICAgKiBndGsvb3BlbndlYnJ0Yy5tb2R1bGVzOiBBZGRlZC4KKyAgICAgICAg
KiBndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtVFVSTi1hbGxvdy1SRUFMTS10by1iZS1lbXB0eS5w
YXRjaDogQWRkZWQuCisgICAgICAgICogZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAxLWFnZW50LVJl
bW92ZS11bm5lY2Vzc2FyeS1OVUxMLWNoZWNrLnBhdGNoOiBBZGRlZC4KKyAgICAgICAgKiBndGsv
cGF0Y2hlcy9saWJuaWNlLTAwMDEtbmljZXNyYy1zcGluLXRoZS1hZ2VudC1tYWlubG9vcC1pbi1h
LXNlcGFyYXRlLXRocmVhZC5wYXRjaDogQWRkZWQuCisgICAgICAgICogZ3RrL3BhdGNoZXMvbGli
bmljZS0wMDAyLURvLW5vdC11cGRhdGUtYS1yZW1vdGUtY2FuZGlkYXRlLXMtdHlwZS5wYXRjaDog
QWRkZWQuCisgICAgICAgICogZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAyLVRVUk4taGFuZGxlLTQz
Ny1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5wYXRjaDogQWRkZWQuCisgICAgICAgICog
Z3RrL3BhdGNoZXMvbGlibmljZS0wMDAzLURvLW5vdC1jb21wYXJlLXNjb3BlLWZvci1JUHY2LWFk
ZHJlc3Mtd2hlbi1zY29wZS1pcy0ucGF0Y2g6IEFkZGVkLgorICAgICAgICAqIGd0ay9wYXRjaGVz
L2xpYm5pY2UtMDAwNC1SZW1vdmluZy1uby1vcC1hc3NpZ25tZW50LnBhdGNoOiBBZGRlZC4KKwog
MjAxNi0xMC0xNyAgTWVnYW4gR2FyZG5lciAgPG1lZ2FuX2dhcmRuZXJAYXBwbGUuY29tPgogCiAg
ICAgICAgIEFkZCB0ZXN0IGFuZCBpbmZyYXN0cnVjdHVyZSBmb3IgbGluayBwb3BvdmVyCmRpZmYg
LS1naXQgYS9Ub29scy9ndGsvamhidWlsZC5tb2R1bGVzIGIvVG9vbHMvZ3RrL2poYnVpbGQubW9k
dWxlcwppbmRleCA1ZDg2YjcxLi5hODM3ZGRhIDEwMDY0NAotLS0gYS9Ub29scy9ndGsvamhidWls
ZC5tb2R1bGVzCisrKyBiL1Rvb2xzL2d0ay9qaGJ1aWxkLm1vZHVsZXMKQEAgLTUxMiw2ICs1MTIs
NyBAQAogICA8YXV0b3Rvb2xzIGlkPSJvcGVud2VicnRjIiBhdXRvZ2VuYXJncz0iLS1lbmFibGUt
YnJpZGdlPW5vIC0tZW5hYmxlLW93ci1nc3Q9eWVzIj4KICAgICA8ZGVwZW5kZW5jaWVzPgogICAg
ICAgPGRlcCBwYWNrYWdlPSJnc3QtcGx1Z2lucy1vcGVud2VicnRjIi8+CisgICAgICA8ZGVwIHBh
Y2thZ2U9ImdzdC1wbHVnaW5zLWJhZCIvPgogICAgICAgPGRlcCBwYWNrYWdlPSJsaWJuaWNlIi8+
CiAgICAgIDwvZGVwZW5kZW5jaWVzPgogICAgIDxicmFuY2ggcmVwbz0iZ2l0aHViLmNvbSIgbW9k
dWxlPSJFcmljc3NvblJlc2VhcmNoL29wZW53ZWJydGMuZ2l0IiBjaGVja291dGRpcj0ib3Blbndl
YnJ0YyIgdGFnPSIwYjI4YjA4MGQ2MWFmM2FkYjFmNzc5ZTY5M2ZjMDI5ZjljMWFkNDk5Ii8+CmRp
ZmYgLS1naXQgYS9Ub29scy9ndGsvb3BlbndlYnJ0Yy5tb2R1bGVzIGIvVG9vbHMvZ3RrL29wZW53
ZWJydGMubW9kdWxlcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NzQ2MzZi
Ci0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvZ3RrL29wZW53ZWJydGMubW9kdWxlcwpAQCAtMCww
ICsxLDg3IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiPz4KKzwhRE9DVFlQRSBtb2R1bGVzZXQgU1lT
VEVNICJtb2R1bGVzZXQuZHRkIj4KKzw/eG1sLXN0eWxlc2hlZXQgdHlwZT0idGV4dC94c2wiIGhy
ZWY9Im1vZHVsZXNldC54c2wiPz4KKzxtb2R1bGVzZXQ+CisKKyAgPHJlcG9zaXRvcnkgdHlwZT0i
dGFyYmFsbCIgbmFtZT0iZ2l0aHViLXRhcmJhbGwiCisgICAgICBocmVmPSJodHRwczovL2dpdGh1
Yi5jb20vIi8+CisgIDxyZXBvc2l0b3J5IHR5cGU9ImdpdCIgbmFtZT0iZ3N0cmVhbWVyIgorICAg
ICAgaHJlZj0iZ2l0Oi8vYW5vbmdpdC5mcmVlZGVza3RvcC5vcmcvZ2l0L2dzdHJlYW1lci8iLz4K
KyAgPHJlcG9zaXRvcnkgdHlwZT0idGFyYmFsbCIgbmFtZT0ibmljZS5mcmVlZGVza3RvcC5vcmci
CisgICAgICBocmVmPSJodHRwOi8vbmljZS5mcmVlZGVza3RvcC5vcmciLz4KKyAgPHJlcG9zaXRv
cnkgdHlwZT0iZ2l0IiBuYW1lPSJnaXRodWIuY29tIgorICAgICAgaHJlZj0iaHR0cHM6Ly9naXRo
dWIuY29tIi8+CisKKyAgPGF1dG90b29scyBpZD0ib3BlbmgyNjQiIHN1cHBvcnRzLW5vbi1zcmNk
aXItYnVpbGRzPSJubyIgYXV0b2dlbi1zaD0icHNldWRvLWNvbmZpZ3VyZSI+CisgICAgPGJyYW5j
aCBtb2R1bGU9ImNpc2NvL29wZW5oMjY0L2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6IiB2ZXJz
aW9uPSIxLjUuMCIKKyAgICAgICAgICAgIGNoZWNrb3V0ZGlyPSJvcGVuaDI2NC0ke3ZlcnNpb259
IiByZXBvPSJnaXRodWItdGFyYmFsbCI+CisgICAgICA8cGF0Y2ggZmlsZT0ib3BlbmgyNjQtY29u
ZmlndXJlLnBhdGNoIiBzdHJpcD0iMCIvPgorICAgIDwvYnJhbmNoPgorICA8L2F1dG90b29scz4K
KworICA8YXV0b3Rvb2xzIGlkPSJsaWJ2cHgiCisgICAgYXV0b2dlbi10ZW1wbGF0ZT0iJShzcmNk
aXIpcy9jb25maWd1cmUgLS1wcmVmaXg9JShwcmVmaXgpcyAtLWVuYWJsZS1waWMgLS1hcz15YXNt
IC0tZGlzYWJsZS11bml0LXRlc3RzIC0tc2l6ZS1saW1pdD0xNjM4NHgxNjM4NCAtLWVuYWJsZS1w
b3N0cHJvYyAtLWVuYWJsZS1tdWx0aS1yZXMtZW5jb2RpbmcgLS1lbmFibGUtdGVtcG9yYWwtZGVu
b2lzaW5nIC0tZW5hYmxlLXZwOS10ZW1wb3JhbC1kZW5vaXNpbmcgLS1lbmFibGUtdnA5LXBvc3Rw
cm9jIC0tZW5hYmxlLXNoYXJlZCI+CisgICAgPGJyYW5jaCByZXBvPSJnaXRodWIuY29tIiBtb2R1
bGU9IndlYm1wcm9qZWN0L2xpYnZweC5naXQiIHZlcnNpb249IjEuNi4wIiBjaGVja291dGRpcj0i
bGlidnB4LTEuNi4wIj4KKyAgICA8L2JyYW5jaD4KKyAgPC9hdXRvdG9vbHM+CisKKyAgPGF1dG90
b29scyBpZD0ibGlibmljZSIgc3VwcG9ydHMtbm9uLXNyY2Rpci1idWlsZHM9Im5vIj4KKyAgICA8
ZGVwZW5kZW5jaWVzPgorICAgICAgPGRlcCBwYWNrYWdlPSJnc3RyZWFtZXIiLz4KKyAgICA8L2Rl
cGVuZGVuY2llcz4KKyAgICA8YnJhbmNoIHJlcG89Im5pY2UuZnJlZWRlc2t0b3Aub3JnIiBtb2R1
bGU9InJlbGVhc2VzL2xpYm5pY2UtJHt2ZXJzaW9ufS50YXIuZ3oiIHZlcnNpb249IjAuMS4xMyIg
Y2hlY2tvdXRkaXI9ImxpYm5pY2UtJHt2ZXJzaW9ufSI+CisgICAgICA8cGF0Y2ggZmlsZT0ibGli
bmljZS0wMDAxLWFnZW50LVJlbW92ZS11bm5lY2Vzc2FyeS1OVUxMLWNoZWNrLnBhdGNoIiBzdHJp
cD0iMSIvPgorICAgICAgPHBhdGNoIGZpbGU9ImxpYm5pY2UtMDAwMi1Eby1ub3QtdXBkYXRlLWEt
cmVtb3RlLWNhbmRpZGF0ZS1zLXR5cGUucGF0Y2giIHN0cmlwPSIxIi8+CisgICAgICA8cGF0Y2gg
ZmlsZT0ibGlibmljZS0wMDAzLURvLW5vdC1jb21wYXJlLXNjb3BlLWZvci1JUHY2LWFkZHJlc3Mt
d2hlbi1zY29wZS1pcy0ucGF0Y2giIHN0cmlwPSIxIi8+CisgICAgICA8cGF0Y2ggZmlsZT0ibGli
bmljZS0wMDA0LVJlbW92aW5nLW5vLW9wLWFzc2lnbm1lbnQucGF0Y2giIHN0cmlwPSIxIi8+Cisg
ICAgICA8cGF0Y2ggZmlsZT0ibGlibmljZS0wMDAxLW5pY2VzcmMtc3Bpbi10aGUtYWdlbnQtbWFp
bmxvb3AtaW4tYS1zZXBhcmF0ZS10aHJlYWQucGF0Y2giIHN0cmlwPSIxIi8+CisgICAgICA8cGF0
Y2ggZmlsZT0ibGlibmljZS0wMDAxLVRVUk4tYWxsb3ctUkVBTE0tdG8tYmUtZW1wdHkucGF0Y2gi
IHN0cmlwPSIxIi8+CisgICAgICA8cGF0Y2ggZmlsZT0ibGlibmljZS0wMDAyLVRVUk4taGFuZGxl
LTQzNy1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5wYXRjaCIgc3RyaXA9IjEiLz4KKyAg
ICA8L2JyYW5jaD4KKyAgPC9hdXRvdG9vbHM+CisKKyAgPGF1dG90b29scyBpZD0iZ3N0cmVhbWVy
IiBhdXRvZ2VuYXJncz0iLS1kaXNhYmxlLWd0ay1kb2MiPgorICAgIDxpZiBjb25kaXRpb24tc2V0
PSJtYWNvcyI+CisgICAgICA8YXV0b2dlbmFyZ3MgdmFsdWU9Ii0tZGlzYWJsZS1pbnRyb3NwZWN0
aW9uIi8+CisgICAgPC9pZj4KKyAgICA8ZGVwZW5kZW5jaWVzPgorICAgICAgPGRlcCBwYWNrYWdl
PSJvcmMiLz4KKyAgICA8L2RlcGVuZGVuY2llcz4KKyAgICA8YnJhbmNoIHJlcG89ImdzdHJlYW1l
ciIgbW9kdWxlPSJnc3RyZWFtZXIiIGNoZWNrb3V0ZGlyPSJnc3RyZWFtZXItYjZlNjlmZmRmYjNi
YjIxZGJhZGE4ZjAxYjQ4OGFlODc3ZjhkMjA1YyIgdGFnPSJiNmU2OWZmZGZiM2JiMjFkYmFkYThm
MDFiNDg4YWU4NzdmOGQyMDVjIi8+CisgIDwvYXV0b3Rvb2xzPgorCisgIDxhdXRvdG9vbHMgaWQ9
ImdzdC1wbHVnaW5zLWJhc2UiCisgICAgICAgICAgICAgYXV0b2dlbi1zaD0iYXV0b2dlbi5zaCIK
KyAgICAgICAgICAgICBhdXRvZ2VuYXJncz0iLS1kaXNhYmxlLWV4YW1wbGVzIC0tZGlzYWJsZS1n
dGstZG9jIj4KKyAgICA8aWYgY29uZGl0aW9uLXNldD0ibWFjb3MiPgorICAgICAgPGF1dG9nZW5h
cmdzIHZhbHVlPSItLWRpc2FibGUtaW50cm9zcGVjdGlvbiIvPgorICAgIDwvaWY+CisgICAgPGRl
cGVuZGVuY2llcz4KKyAgICAgIDxkZXAgcGFja2FnZT0iZ3N0cmVhbWVyIi8+CisgICAgPC9kZXBl
bmRlbmNpZXM+CisgICAgPGJyYW5jaCByZXBvPSJnc3RyZWFtZXIiIG1vZHVsZT0iZ3N0LXBsdWdp
bnMtYmFzZSIgY2hlY2tvdXRkaXI9ImdzdC1wbHVnaW5zLWJhc2UtY2YxOGZhZTlkZWIwMmYwODY3
YjY3NTkzZjY3OGI5MzJmOGViOTMxYSIgdGFnPSJjZjE4ZmFlOWRlYjAyZjA4NjdiNjc1OTNmNjc4
YjkzMmY4ZWI5MzFhIi8+CisgIDwvYXV0b3Rvb2xzPgorCisgIDxhdXRvdG9vbHMgaWQ9ImdzdC1w
bHVnaW5zLWdvb2QiIGF1dG9nZW5hcmdzPSItLWRpc2FibGUtZXhhbXBsZXMgLS1kaXNhYmxlLXNv
dXAgLS1kaXNhYmxlLWd0ay1kb2MiPgorICAgIDxpZiBjb25kaXRpb24tc2V0PSJtYWNvcyI+Cisg
ICAgICA8YXV0b2dlbmFyZ3MgdmFsdWU9Ii0tZGlzYWJsZS1pbnRyb3NwZWN0aW9uIi8+CisgICAg
PC9pZj4KKyAgICA8ZGVwZW5kZW5jaWVzPgorICAgICA8ZGVwIHBhY2thZ2U9ImxpYnZweCIvPgor
ICAgICA8ZGVwIHBhY2thZ2U9ImdzdC1wbHVnaW5zLWJhc2UiLz4KKyAgICA8L2RlcGVuZGVuY2ll
cz4KKyAgICAgPGJyYW5jaCByZXBvPSJnc3RyZWFtZXIiIG1vZHVsZT0iZ3N0LXBsdWdpbnMtZ29v
ZCIgY2hlY2tvdXRkaXI9ImdzdC1wbHVnaW5zLWdvb2QtNTY3YWZkZDRkM2YyZmEwN2ZlY2Y0YzAy
YTdlY2E3MGY3YTdlZjdmNyIgdGFnPSI1NjdhZmRkNGQzZjJmYTA3ZmVjZjRjMDJhN2VjYTcwZjdh
N2VmN2Y3Ii8+CisgIDwvYXV0b3Rvb2xzPgorCisgIDxhdXRvdG9vbHMgaWQ9ImdzdC1wbHVnaW5z
LWJhZCIgYXV0b2dlbmFyZ3M9Ii0tZGlzYWJsZS1leGFtcGxlcyAtLWRpc2FibGUtZ3RrLWRvYyAt
LWVuYWJsZS1vcGVuaDI2NCI+CisgICAgPGlmIGNvbmRpdGlvbi1zZXQ9Im1hY29zIj4KKyAgICAg
IDxhdXRvZ2VuYXJncyB2YWx1ZT0iLS1kaXNhYmxlLWludHJvc3BlY3Rpb24iLz4KKyAgICA8L2lm
PgorICAgIDxkZXBlbmRlbmNpZXM+CisgICAgICA8ZGVwIHBhY2thZ2U9ImdzdC1wbHVnaW5zLWJh
c2UiLz4KKyAgICAgIDxkZXAgcGFja2FnZT0ib3BlbmgyNjQiLz4KKyAgICA8L2RlcGVuZGVuY2ll
cz4KKyAgICA8YnJhbmNoIHJlcG89ImdzdHJlYW1lciIgbW9kdWxlPSJnc3QtcGx1Z2lucy1iYWQi
IGNoZWNrb3V0ZGlyPSJnc3QtcGx1Z2lucy1iYWQtYTAzNmI3ZWY5ZmZlOWZlNWRhYzRhN2U0NmZi
YzNiYWM5MjkyMWE1NCIgdGFnPSJhMDM2YjdlZjlmZmU5ZmU1ZGFjNGE3ZTQ2ZmJjM2JhYzkyOTIx
YTU0Ii8+CisgIDwvYXV0b3Rvb2xzPgorICAKKzwvbW9kdWxlc2V0PgpkaWZmIC0tZ2l0IGEvVG9v
bHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAxLVRVUk4tYWxsb3ctUkVBTE0tdG8tYmUtZW1wdHku
cGF0Y2ggYi9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtVFVSTi1hbGxvdy1SRUFMTS10
by1iZS1lbXB0eS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZjUy
ZTQwCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAxLVRV
Uk4tYWxsb3ctUkVBTE0tdG8tYmUtZW1wdHkucGF0Y2gKQEAgLTAsMCArMSw1MCBAQAorRnJvbSAw
YzU1MTY2YTgxN2VjNTEwOTY0NjBmNzg5MjM0ZWY0OTIzNzAwMGNjIE1vbiBTZXAgMTcgMDA6MDA6
MDAgMjAwMQorRnJvbTogQWxlc3NhbmRybyBEZWNpbmEgPGFsZXNzYW5kcm8uZEBnbWFpbC5jb20+
CitEYXRlOiBUaHUsIDI0IE1hciAyMDE2IDEwOjQ4OjI3ICsxMTAwCitTdWJqZWN0OiBbUEFUQ0gg
MS8yXSBUVVJOOiBhbGxvdyBSRUFMTSB0byBiZSBlbXB0eQorCistLS0KKyBhZ2VudC9jb25uY2hl
Y2suYyB8IDYgKystLS0tCisgc3R1bi9zdHVuaG1hYy5jICAgfCA2ICsrKystLQorIDIgZmlsZXMg
Y2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEv
YWdlbnQvY29ubmNoZWNrLmMgYi9hZ2VudC9jb25uY2hlY2suYworaW5kZXggMDU3ZmM4MS4uOTdi
ZjUzNiAxMDA2NDQKKy0tLSBhL2FnZW50L2Nvbm5jaGVjay5jCisrKysgYi9hZ2VudC9jb25uY2hl
Y2suYworQEAgLTI3NjgsMTMgKzI3NjgsMTEgQEAgc3RhdGljIGdib29sZWFuIHByaXZfbWFwX3Jl
cGx5X3RvX3JlbGF5X3JlcXVlc3QgKE5pY2VBZ2VudCAqYWdlbnQsIFN0dW5NZXNzYWdlICoKKyAg
ICAgICAgICAgICAgICBhZ2VudC0+Y29tcGF0aWJpbGl0eSA9PSBOSUNFX0NPTVBBVElCSUxJVFlf
T0MyMDA3UjIpICYmCisgICAgICAgICAgICAgICBzdHVuX21lc3NhZ2VfZ2V0X2NsYXNzIChyZXNw
KSA9PSBTVFVOX0VSUk9SICYmCisgICAgICAgICAgICAgICBzdHVuX21lc3NhZ2VfZmluZF9lcnJv
ciAocmVzcCwgJmNvZGUpID09CistICAgICAgICAgICAgICBTVFVOX01FU1NBR0VfUkVUVVJOX1NV
Q0NFU1MgJiYKKy0gICAgICAgICAgICAgIHJlY3ZfcmVhbG0gIT0gTlVMTCAmJiByZWN2X3JlYWxt
X2xlbiA+IDApIHsKKy0KKysgICAgICAgICAgICAgIFNUVU5fTUVTU0FHRV9SRVRVUk5fU1VDQ0VT
UykgeworICAgICAgICAgICAgIGlmIChjb2RlID09IDQzOCB8fAorICAgICAgICAgICAgICAgICAo
Y29kZSA9PSA0MDEgJiYKKyAgICAgICAgICAgICAgICAgICAgICEocmVjdl9yZWFsbV9sZW4gPT0g
c2VudF9yZWFsbV9sZW4gJiYKKy0gICAgICAgICAgICAgICAgICAgICAgICBzZW50X3JlYWxtICE9
IE5VTEwgJiYKKysgICAgICAgICAgICAgICAgICAgICAgICByZWN2X3JlYWxtICE9IE5VTEwgJiYg
c2VudF9yZWFsbSAhPSBOVUxMICYmCisgICAgICAgICAgICAgICAgICAgICAgICAgbWVtY21wIChz
ZW50X3JlYWxtLCByZWN2X3JlYWxtLCBzZW50X3JlYWxtX2xlbikgPT0gMCkpKSB7CisgICAgICAg
ICAgICAgICBkLT5zdHVuX3Jlc3BfbXNnID0gKnJlc3A7CisgICAgICAgICAgICAgICBtZW1jcHkg
KGQtPnN0dW5fcmVzcF9idWZmZXIsIHJlc3AtPmJ1ZmZlciwKK2RpZmYgLS1naXQgYS9zdHVuL3N0
dW5obWFjLmMgYi9zdHVuL3N0dW5obWFjLmMKK2luZGV4IGRmNWRlYjYuLmY3Mzk0M2YgMTAwNjQ0
CistLS0gYS9zdHVuL3N0dW5obWFjLmMKKysrKyBiL3N0dW4vc3R1bmhtYWMuYworQEAgLTkwLDgg
KzkwLDEwIEBAIHN0YXRpYyBjb25zdCB1aW50OF90ICpwcml2X3RyaW1fdmFyIChjb25zdCB1aW50
OF90ICp2YXIsIHNpemVfdCAqdmFyX2xlbikKKyAgICAgcHRyKys7CisgICAgICgqdmFyX2xlbikt
LTsKKyAgIH0KKy0gIHdoaWxlKHB0clsqdmFyX2xlbi0xXSA9PSAnIicgfHwKKy0gICAgICBwdHJb
KnZhcl9sZW4tMV0gPT0gMCkgeworKworKyAgd2hpbGUoKnZhcl9sZW4gPiAwICYmCisrICAgICAg
KHB0clsqdmFyX2xlbi0xXSA9PSAnIicgfHwKKysgICAgICBwdHJbKnZhcl9sZW4tMV0gPT0gMCkp
IHsKKyAgICAgKCp2YXJfbGVuKS0tOworICAgfQorIAorLS0gCisyLjMuNAorCmRpZmYgLS1naXQg
YS9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtYWdlbnQtUmVtb3ZlLXVubmVjZXNzYXJ5
LU5VTEwtY2hlY2sucGF0Y2ggYi9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDEtYWdlbnQt
UmVtb3ZlLXVubmVjZXNzYXJ5LU5VTEwtY2hlY2sucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uYjRlY2Y4YwotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL2d0ay9wYXRj
aGVzL2xpYm5pY2UtMDAwMS1hZ2VudC1SZW1vdmUtdW5uZWNlc3NhcnktTlVMTC1jaGVjay5wYXRj
aApAQCAtMCwwICsxLDQ0IEBACitGcm9tIDdiN2QyZDk4Njg3NmZjNTNhMjNhZjdiNTE2ZDc4Zjgy
ZjJhNTQ2ZTkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBQaGlsaXAgV2l0aG5hbGwg
PHBoaWxpcEB0ZWNub2NvZGUuY28udWs+CitEYXRlOiBTdW4sIDMgTWF5IDIwMTUgMTY6MDU6MzAg
KzAxMDAKK1N1YmplY3Q6IFtQQVRDSCAxLzRdIGFnZW50OiBSZW1vdmUgdW5uZWNlc3NhcnkgTlVM
TCBjaGVjaworCitXaXRoIHRoZSBjaGFuZ2VzIGluIGNvbW1pdCA0ODNiZGNmOCwgQG5hbWUgaXMg
bm93IGd1YXJhbnRlZWQgdG8gYmUKK25vbi1OVUxMLiBTcG90dGVkIGJ5IENvdmVyaXR5LgorCitD
SUQ6ICMxMDk4NzgKKy0tLQorIGFnZW50L2FnZW50LmMgfCAxNiArKysrKysrLS0tLS0tLS0tCisg
MSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworZGlmZiAt
LWdpdCBhL2FnZW50L2FnZW50LmMgYi9hZ2VudC9hZ2VudC5jCitpbmRleCAyNTlmZGM5Li5lNzMz
YzgyIDEwMDY0NAorLS0tIGEvYWdlbnQvYWdlbnQuYworKysrIGIvYWdlbnQvYWdlbnQuYworQEAg
LTUzMjksMTYgKzUzMjksMTQgQEAgbmljZV9hZ2VudF9zZXRfc3RyZWFtX25hbWUgKE5pY2VBZ2Vu
dCAqYWdlbnQsIGd1aW50IHN0cmVhbV9pZCwKKyAKKyAgIGFnZW50X2xvY2soKTsKKyAKKy0gIGlm
IChuYW1lICE9IE5VTEwpIHsKKy0gICAgZm9yIChpID0gYWdlbnQtPnN0cmVhbXM7IGk7IGkgPSBp
LT5uZXh0KSB7CistICAgICAgU3RyZWFtICpzdHJlYW0gPSBpLT5kYXRhOworKyAgZm9yIChpID0g
YWdlbnQtPnN0cmVhbXM7IGk7IGkgPSBpLT5uZXh0KSB7CisrICAgIFN0cmVhbSAqc3RyZWFtID0g
aS0+ZGF0YTsKKyAKKy0gICAgICBpZiAoc3RyZWFtLT5pZCAhPSBzdHJlYW1faWQgJiYKKy0gICAg
ICAgICAgZ19zdHJjbXAwIChzdHJlYW0tPm5hbWUsIG5hbWUpID09IDApCistICAgICAgICBnb3Rv
IGRvbmU7CistICAgICAgZWxzZSBpZiAoc3RyZWFtLT5pZCA9PSBzdHJlYW1faWQpCistICAgICAg
ICBzdHJlYW1fdG9fbmFtZSA9IHN0cmVhbTsKKy0gICAgfQorKyAgICBpZiAoc3RyZWFtLT5pZCAh
PSBzdHJlYW1faWQgJiYKKysgICAgICAgIGdfc3RyY21wMCAoc3RyZWFtLT5uYW1lLCBuYW1lKSA9
PSAwKQorKyAgICAgIGdvdG8gZG9uZTsKKysgICAgZWxzZSBpZiAoc3RyZWFtLT5pZCA9PSBzdHJl
YW1faWQpCisrICAgICAgc3RyZWFtX3RvX25hbWUgPSBzdHJlYW07CisgICB9CisgCisgICBpZiAo
c3RyZWFtX3RvX25hbWUgPT0gTlVMTCkKKy0tIAorMi4zLjIgKEFwcGxlIEdpdC01NSkKKwpkaWZm
IC0tZ2l0IGEvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAxLW5pY2VzcmMtc3Bpbi10aGUt
YWdlbnQtbWFpbmxvb3AtaW4tYS1zZXBhcmF0ZS10aHJlYWQucGF0Y2ggYi9Ub29scy9ndGsvcGF0
Y2hlcy9saWJuaWNlLTAwMDEtbmljZXNyYy1zcGluLXRoZS1hZ2VudC1tYWlubG9vcC1pbi1hLXNl
cGFyYXRlLXRocmVhZC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42
YWY1N2U4Ci0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAx
LW5pY2VzcmMtc3Bpbi10aGUtYWdlbnQtbWFpbmxvb3AtaW4tYS1zZXBhcmF0ZS10aHJlYWQucGF0
Y2gKQEAgLTAsMCArMSwyNTMgQEAKK0Zyb20gMzE5NmE5NmE0MDhhOTBmNzA3ZGZmM2YzMWZhM2Qw
NWQ2NGFlYjY4YSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IEFsZXNzYW5kcm8gRGVj
aW5hIDxhbGVzc2FuZHJvLmRAZ21haWwuY29tPgorRGF0ZTogVHVlLCAxMyBPY3QgMjAxNSAxMjo0
OToxOSArMTEwMAorU3ViamVjdDogW1BBVENIXSBuaWNlc3JjOiBzcGluIHRoZSBhZ2VudCBtYWlu
bG9vcCBpbiBhIHNlcGFyYXRlIHRocmVhZAorCitEb24ndCBydW4gdGhlIG1haW5sb29wIGZyb20g
dGhlIHNyY3BhZCB0YXNrLCBzaW5jZSB0aGF0IGNhbiBnZXQgYmxvY2tlZCBpbiB0aGUKK3BpcGVs
aW5lIGFuZCBjYXVzZSB1bm5lY2Vzc2FyeSBTVFVOIHJldHJhc21pc3Npb25zIChhdCBiZXN0KSBh
bmQgY29tcGxldGVseQorYmxvY2sgdGhlIGFnZW50IChhdCB3b3JzdCkuCistLS0KKyBnc3QvZ3N0
bmljZXNyYy5jIHwgMTU4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0KKyBnc3QvZ3N0bmljZXNyYy5oIHwgICA0ICstCisgMiBmaWxlcyBjaGFu
Z2VkLCA5MyBpbnNlcnRpb25zKCspLCA2OSBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2dz
dC9nc3RuaWNlc3JjLmMgYi9nc3QvZ3N0bmljZXNyYy5jCitpbmRleCBkMzY5ZTA5Li5lYjU5ZmU5
IDEwMDY0NAorLS0tIGEvZ3N0L2dzdG5pY2VzcmMuYworKysrIGIvZ3N0L2dzdG5pY2VzcmMuYwor
QEAgLTQ4LDYgKzQ4LDE0IEBAIEdTVF9ERUJVR19DQVRFR09SWV9TVEFUSUMgKG5pY2VzcmNfZGVi
dWcpOworIAorICNkZWZpbmUgQlVGRkVSX1NJWkUgKDY1NTM2KQorIAorK3N0YXRpYyBnYm9vbGVh
bgorK2dzdF9uaWNlX3NyY19zdGFydCAoCisrICAgIEdzdEJhc2VTcmMgKmJhc2VzcmMpOworKwor
K3N0YXRpYyBnYm9vbGVhbgorK2dzdF9uaWNlX3NyY19zdG9wICgKKysgICAgR3N0QmFzZVNyYyAq
YmFzZXNyYyk7CisrCisgc3RhdGljIEdzdEZsb3dSZXR1cm4KKyBnc3RfbmljZV9zcmNfY3JlYXRl
ICgKKyAgIEdzdFB1c2hTcmMgKmJhc2VzcmMsCitAQCAtNTcsMTAgKzY1LDYgQEAgc3RhdGljIGdi
b29sZWFuCisgZ3N0X25pY2Vfc3JjX3VubG9jayAoCisgICAgIEdzdEJhc2VTcmMgKmJhc2VzcmMp
OworIAorLXN0YXRpYyBnYm9vbGVhbgorLWdzdF9uaWNlX3NyY191bmxvY2tfc3RvcCAoCistICAg
IEdzdEJhc2VTcmMgKmJhc2VzcmMpOworLQorIHN0YXRpYyB2b2lkCisgZ3N0X25pY2Vfc3JjX3Nl
dF9wcm9wZXJ0eSAoCisgICBHT2JqZWN0ICpvYmplY3QsCitAQCAtMTE2LDggKzEyMCw5IEBAIGdz
dF9uaWNlX3NyY19jbGFzc19pbml0IChHc3ROaWNlU3JjQ2xhc3MgKmtsYXNzKQorICAgZ3N0cHVz
aHNyY19jbGFzcy0+Y3JlYXRlID0gR1NUX0RFQlVHX0ZVTkNQVFIgKGdzdF9uaWNlX3NyY19jcmVh
dGUpOworIAorICAgZ3N0YmFzZXNyY19jbGFzcyA9IChHc3RCYXNlU3JjQ2xhc3MgKikga2xhc3M7
CisrICBnc3RiYXNlc3JjX2NsYXNzLT5zdGFydCA9IEdTVF9ERUJVR19GVU5DUFRSIChnc3Rfbmlj
ZV9zcmNfc3RhcnQpOworKyAgZ3N0YmFzZXNyY19jbGFzcy0+c3RvcCA9IEdTVF9ERUJVR19GVU5D
UFRSIChnc3RfbmljZV9zcmNfc3RvcCk7CisgICBnc3RiYXNlc3JjX2NsYXNzLT51bmxvY2sgPSBH
U1RfREVCVUdfRlVOQ1BUUiAoZ3N0X25pY2Vfc3JjX3VubG9jayk7CistICBnc3RiYXNlc3JjX2Ns
YXNzLT51bmxvY2tfc3RvcCA9IEdTVF9ERUJVR19GVU5DUFRSIChnc3RfbmljZV9zcmNfdW5sb2Nr
X3N0b3ApOworIAorICAgZ29iamVjdF9jbGFzcyA9IChHT2JqZWN0Q2xhc3MgKikga2xhc3M7Cisg
ICBnb2JqZWN0X2NsYXNzLT5zZXRfcHJvcGVydHkgPSBnc3RfbmljZV9zcmNfc2V0X3Byb3BlcnR5
OworQEAgLTE3OSw5ICsxODQsODMgQEAgZ3N0X25pY2Vfc3JjX2luaXQgKEdzdE5pY2VTcmMgKnNy
YykKKyAgIHNyYy0+Y29tcG9uZW50X2lkID0gMDsKKyAgIHNyYy0+bWFpbmN0eCA9IGdfbWFpbl9j
b250ZXh0X25ldyAoKTsKKyAgIHNyYy0+bWFpbmxvb3AgPSBnX21haW5fbG9vcF9uZXcgKHNyYy0+
bWFpbmN0eCwgRkFMU0UpOworLSAgc3JjLT51bmxvY2tlZCA9IEZBTFNFOworLSAgc3JjLT5pZGxl
X3NvdXJjZSA9IE5VTEw7CisgICBzcmMtPm91dGJ1ZnMgPSBnX3F1ZXVlX25ldyAoKTsKKysgIHNy
Yy0+YWdlbnRfaW9fdGhyZWFkID0gTlVMTDsKKysgIGdfY29uZF9pbml0ICgmc3JjLT5vdXRjb25k
KTsKKyt9CisrCisrc3RhdGljIGdwb2ludGVyCisrZ3N0X25pY2Vfc3JjX2FnZW50X2lvX3RocmVh
ZCAoZ3BvaW50ZXIgZGF0YSkKKyt7CisrICBHc3ROaWNlU3JjICpuaWNlc3JjID0gR1NUX05JQ0Vf
U1JDIChkYXRhKTsKKysKKysgIEdTVF9JTkZPX09CSkVDVCAobmljZXNyYywgInN0YXJ0aW5nIGFn
ZW50IGlvIHRocmVhZCIpOworKyAgZ19tYWluX2xvb3BfcnVuIChuaWNlc3JjLT5tYWlubG9vcCk7
CisrICBHU1RfSU5GT19PQkpFQ1QgKG5pY2VzcmMsICJleGl0aW5nIGFnZW50IGlvIHRocmVhZCIp
OworKworKyAgcmV0dXJuIE5VTEw7CisrfQorKworK3N0YXRpYyBnYm9vbGVhbgorK21haW5fbG9v
cF9ydW5uaW5nX2NiIChncG9pbnRlciBkYXRhKQorK3sKKysgIEdzdE5pY2VTcmMgKm5pY2VzcmMg
PSBHU1RfTklDRV9TUkMgKGRhdGEpOworKworKyAgR1NUX09CSkVDVF9MT0NLIChuaWNlc3JjKTsK
KysgIC8qIF9zdGFydCgpIGFuZCBfc3RvcCgpIGNvdWxkIGJvdGggYmUgd2FpdGluZyBmb3IgdGhl
IG1haW5sb29wIHRvIHN0YXJ0IHNvIHdlCisrICAgKiBuZWVkIHRvIGJyb2FkY2FzdCAqLworKyAg
Z19jb25kX2Jyb2FkY2FzdCAoJm5pY2VzcmMtPm91dGNvbmQpOworKyAgR1NUX09CSkVDVF9VTkxP
Q0sgKG5pY2VzcmMpOworKworKyAgcmV0dXJuIEZBTFNFOworK30KKysKKytzdGF0aWMgZ2Jvb2xl
YW4KKytnc3RfbmljZV9zcmNfc3RhcnQgKEdzdEJhc2VTcmMgKiBiYXNlc3JjKQorK3sKKysgIEdz
dE5pY2VTcmMgKm5pY2VzcmMgPSBHU1RfTklDRV9TUkMgKGJhc2VzcmMpOworKyAgR1NvdXJjZSAq
c291cmNlOworKyAgZ2NoYXIgKnRocmVhZF9uYW1lOworKworKyAgR1NUX09CSkVDVF9MT0NLIChu
aWNlc3JjKTsKKysgIHNvdXJjZSA9IGdfaWRsZV9zb3VyY2VfbmV3ICgpOworKyAgZ19zb3VyY2Vf
c2V0X2NhbGxiYWNrIChzb3VyY2UsCisrICAgICAgKEdTb3VyY2VGdW5jKSBtYWluX2xvb3BfcnVu
bmluZ19jYiwgbmljZXNyYywgTlVMTCk7CisrICBnX3NvdXJjZV9hdHRhY2ggKHNvdXJjZSwgbmlj
ZXNyYy0+bWFpbmN0eCk7CisrICBnX3NvdXJjZV91bnJlZiAoc291cmNlKTsKKysKKysgIHRocmVh
ZF9uYW1lID0gZ19zdHJkdXBfcHJpbnRmICgiJXM6YWdlbnRfaW8iLCBHU1RfT0JKRUNUX05BTUUg
KG5pY2VzcmMpKTsKKysgIG5pY2VzcmMtPmFnZW50X2lvX3RocmVhZCA9IGdfdGhyZWFkX25ldyAo
dGhyZWFkX25hbWUsIGdzdF9uaWNlX3NyY19hZ2VudF9pb190aHJlYWQsIG5pY2VzcmMpOworKyAg
Z19mcmVlICh0aHJlYWRfbmFtZSk7CisrICAvKiB3YWl0IHVudGlsIHRoZSBhZ2VudCB0aHJlYWQg
c3RhcnRzIHNwaW5uaW5nIHRoZSBtYWlubG9vcCBvciBfc3RvcCgpIGlzCisrICAgKiBjYWxsZWQg
Ki8KKysgIHdoaWxlIChHU1RfQkFTRV9TUkNfSVNfU1RBUlRJTkcgKGJhc2VzcmMpICYmCisrICAg
ICAgIWdfbWFpbl9sb29wX2lzX3J1bm5pbmcgKG5pY2VzcmMtPm1haW5sb29wKSkKKysgICAgZ19j
b25kX3dhaXQgKCZuaWNlc3JjLT5vdXRjb25kLCBHU1RfT0JKRUNUX0dFVF9MT0NLIChuaWNlc3Jj
KSk7CisrICBHU1RfT0JKRUNUX1VOTE9DSyAobmljZXNyYyk7CisrCisrICByZXR1cm4gVFJVRTsK
Kyt9CisrCisrc3RhdGljIGdib29sZWFuCisrZ3N0X25pY2Vfc3JjX3N0b3AgKEdzdEJhc2VTcmMg
KiBiYXNlc3JjKQorK3sKKysgIEdzdE5pY2VTcmMgKm5pY2VzcmMgPSBHU1RfTklDRV9TUkMgKGJh
c2VzcmMpOworKyAgR1RocmVhZCAqYWdlbnRfaW9fdGhyZWFkID0gTlVMTDsKKysKKysgIEdTVF9P
QkpFQ1RfTE9DSyAobmljZXNyYyk7CisrICAvKiBoZXJlIHdlIHdhaXQgZm9yIHRoZSBhZ2VudCB0
aHJlYWQgY3JlYXRlZCBpbiBfc3RhcnQoKSB0byBiZSBzY2hlZHVsZWQgc28KKysgICAqIHRoYXQg
d2UgZG9uJ3QgcmlzayBjYWxsaW5nIF9xdWl0KCkgZmlyc3QgYW5kIHRoZW4gX3J1bigpIG9uIHRo
ZSBtYWlubG9vcCAqLworKyAgd2hpbGUgKCFnX21haW5fbG9vcF9pc19ydW5uaW5nIChuaWNlc3Jj
LT5tYWlubG9vcCkpCisrICAgIGdfY29uZF93YWl0ICgmbmljZXNyYy0+b3V0Y29uZCwgR1NUX09C
SkVDVF9HRVRfTE9DSyAobmljZXNyYykpOworKyAgZ19tYWluX2xvb3BfcXVpdCAobmljZXNyYy0+
bWFpbmxvb3ApOworKyAgYWdlbnRfaW9fdGhyZWFkID0gbmljZXNyYy0+YWdlbnRfaW9fdGhyZWFk
OworKyAgbmljZXNyYy0+YWdlbnRfaW9fdGhyZWFkID0gTlVMTDsKKysgIEdTVF9PQkpFQ1RfVU5M
T0NLIChuaWNlc3JjKTsKKysKKysgIGdfdGhyZWFkX2pvaW4gKGFnZW50X2lvX3RocmVhZCk7Cisr
CisrICByZXR1cm4gVFJVRTsKKyB9CisgCisgc3RhdGljIHZvaWQKK0BAIC0yMDcsNjIgKzI4Niwx
NyBAQCBnc3RfbmljZV9zcmNfcmVhZF9jYWxsYmFjayAoTmljZUFnZW50ICphZ2VudCwKKyAjZW5k
aWYKKyAgIEdTVF9PQkpFQ1RfTE9DSyAobmljZXNyYyk7CisgICBnX3F1ZXVlX3B1c2hfdGFpbCAo
bmljZXNyYy0+b3V0YnVmcywgYnVmZmVyKTsKKy0gIGdfbWFpbl9sb29wX3F1aXQgKG5pY2VzcmMt
Pm1haW5sb29wKTsKKysgIGdfY29uZF9zaWduYWwgKCZuaWNlc3JjLT5vdXRjb25kKTsKKyAgIEdT
VF9PQkpFQ1RfVU5MT0NLIChuaWNlc3JjKTsKKyB9CisgCisgc3RhdGljIGdib29sZWFuCistZ3N0
X25pY2Vfc3JjX3VubG9ja19pZGxlciAoZ3BvaW50ZXIgZGF0YSkKKy17CistICBHc3ROaWNlU3Jj
ICpuaWNlc3JjID0gR1NUX05JQ0VfU1JDIChkYXRhKTsKKy0KKy0gIEdTVF9PQkpFQ1RfTE9DSyAo
bmljZXNyYyk7CistICBpZiAobmljZXNyYy0+dW5sb2NrZWQpCistICAgIGdfbWFpbl9sb29wX3F1
aXQgKG5pY2VzcmMtPm1haW5sb29wKTsKKy0KKy0gIGlmIChuaWNlc3JjLT5pZGxlX3NvdXJjZSkg
eworLSAgICBnX3NvdXJjZV9kZXN0cm95IChuaWNlc3JjLT5pZGxlX3NvdXJjZSk7CistICAgIGdf
c291cmNlX3VucmVmIChuaWNlc3JjLT5pZGxlX3NvdXJjZSk7CistICAgIG5pY2VzcmMtPmlkbGVf
c291cmNlID0gTlVMTDsKKy0gIH0KKy0gIEdTVF9PQkpFQ1RfVU5MT0NLIChuaWNlc3JjKTsKKy0K
Ky0gIHJldHVybiBGQUxTRTsKKy19CistCistc3RhdGljIGdib29sZWFuCisgZ3N0X25pY2Vfc3Jj
X3VubG9jayAoR3N0QmFzZVNyYyAqc3JjKQorIHsKKyAgIEdzdE5pY2VTcmMgKm5pY2VzcmMgPSBH
U1RfTklDRV9TUkMgKHNyYyk7CisgCisgICBHU1RfT0JKRUNUX0xPQ0sgKHNyYyk7CistICBuaWNl
c3JjLT51bmxvY2tlZCA9IFRSVUU7CistCistICBnX21haW5fbG9vcF9xdWl0IChuaWNlc3JjLT5t
YWlubG9vcCk7CistCistICBpZiAoIW5pY2VzcmMtPmlkbGVfc291cmNlKSB7CistICAgIG5pY2Vz
cmMtPmlkbGVfc291cmNlID0gZ19pZGxlX3NvdXJjZV9uZXcgKCk7CistICAgIGdfc291cmNlX3Nl
dF9wcmlvcml0eSAobmljZXNyYy0+aWRsZV9zb3VyY2UsIEdfUFJJT1JJVFlfSElHSCk7CistICAg
IGdfc291cmNlX3NldF9jYWxsYmFjayAobmljZXNyYy0+aWRsZV9zb3VyY2UsIGdzdF9uaWNlX3Ny
Y191bmxvY2tfaWRsZXIsIHNyYywgTlVMTCk7CistICAgIGdfc291cmNlX2F0dGFjaCAobmljZXNy
Yy0+aWRsZV9zb3VyY2UsIGdfbWFpbl9sb29wX2dldF9jb250ZXh0IChuaWNlc3JjLT5tYWlubG9v
cCkpOworLSAgfQorLSAgR1NUX09CSkVDVF9VTkxPQ0sgKHNyYyk7CistCistICByZXR1cm4gVFJV
RTsKKy19CistCistc3RhdGljIGdib29sZWFuCistZ3N0X25pY2Vfc3JjX3VubG9ja19zdG9wIChH
c3RCYXNlU3JjICpzcmMpCisteworLSAgR3N0TmljZVNyYyAqbmljZXNyYyA9IEdTVF9OSUNFX1NS
QyAoc3JjKTsKKy0KKy0gIEdTVF9PQkpFQ1RfTE9DSyAoc3JjKTsKKy0gIG5pY2VzcmMtPnVubG9j
a2VkID0gRkFMU0U7CistICBpZiAobmljZXNyYy0+aWRsZV9zb3VyY2UpIHsKKy0gICAgZ19zb3Vy
Y2VfZGVzdHJveSAobmljZXNyYy0+aWRsZV9zb3VyY2UpOworLSAgICBnX3NvdXJjZV91bnJlZihu
aWNlc3JjLT5pZGxlX3NvdXJjZSk7CistICB9CistICBuaWNlc3JjLT5pZGxlX3NvdXJjZSA9IE5V
TEw7CisrICBnX2NvbmRfc2lnbmFsICgmbmljZXNyYy0+b3V0Y29uZCk7CisgICBHU1RfT0JKRUNU
X1VOTE9DSyAoc3JjKTsKKyAKKyAgIHJldHVybiBUUlVFOworQEAgLTI3OCwxOSArMzEyLDggQEAg
Z3N0X25pY2Vfc3JjX2NyZWF0ZSAoCisgICBHU1RfTE9HX09CSkVDVCAobmljZXNyYywgImNyZWF0
ZSBjYWxsZWQiKTsKKyAKKyAgIEdTVF9PQkpFQ1RfTE9DSyAoYmFzZXNyYyk7CistICBpZiAobmlj
ZXNyYy0+dW5sb2NrZWQpIHsKKy0gICAgR1NUX09CSkVDVF9VTkxPQ0sgKGJhc2VzcmMpOworLSNp
ZiBHU1RfQ0hFQ0tfVkVSU0lPTiAoMSwwLDApCistICAgIHJldHVybiBHU1RfRkxPV19GTFVTSElO
RzsKKy0jZWxzZQorLSAgICByZXR1cm4gR1NUX0ZMT1dfV1JPTkdfU1RBVEU7CistI2VuZGlmCist
ICB9CistICBpZiAoZ19xdWV1ZV9pc19lbXB0eSAobmljZXNyYy0+b3V0YnVmcykpIHsKKy0gICAg
R1NUX09CSkVDVF9VTkxPQ0sgKGJhc2VzcmMpOworLSAgICBnX21haW5fbG9vcF9ydW4gKG5pY2Vz
cmMtPm1haW5sb29wKTsKKy0gICAgR1NUX09CSkVDVF9MT0NLIChiYXNlc3JjKTsKKy0gIH0KKysg
IGlmIChnX3F1ZXVlX2lzX2VtcHR5IChuaWNlc3JjLT5vdXRidWZzKSkKKysgICAgZ19jb25kX3dh
aXQgKCZuaWNlc3JjLT5vdXRjb25kLCBHU1RfT0JKRUNUX0dFVF9MT0NLIChuaWNlc3JjKSk7Cisg
CisgICAqYnVmZmVyID0gZ19xdWV1ZV9wb3BfaGVhZCAobmljZXNyYy0+b3V0YnVmcyk7CisgICBH
U1RfT0JKRUNUX1VOTE9DSyAoYmFzZXNyYyk7CitAQCAtMzMxLDYgKzM1NCw3IEBAIGdzdF9uaWNl
X3NyY19kaXNwb3NlIChHT2JqZWN0ICpvYmplY3QpCisgICAgIGdfcXVldWVfZnJlZSAoc3JjLT5v
dXRidWZzKTsKKyAgIH0KKyAgIHNyYy0+b3V0YnVmcyA9IE5VTEw7CisrICBnX2NvbmRfY2xlYXIg
KCZzcmMtPm91dGNvbmQpOworIAorICAgR19PQkpFQ1RfQ0xBU1MgKGdzdF9uaWNlX3NyY19wYXJl
bnRfY2xhc3MpLT5kaXNwb3NlIChvYmplY3QpOworIH0KK2RpZmYgLS1naXQgYS9nc3QvZ3N0bmlj
ZXNyYy5oIGIvZ3N0L2dzdG5pY2VzcmMuaAoraW5kZXggNWQzZjU1NC4uMmQ5ZjY3NCAxMDA2NDQK
Ky0tLSBhL2dzdC9nc3RuaWNlc3JjLmgKKysrKyBiL2dzdC9nc3RuaWNlc3JjLmgKK0BAIC02OCw4
ICs2OCw4IEBAIHN0cnVjdCBfR3N0TmljZVNyYworICAgR01haW5Db250ZXh0ICptYWluY3R4Owor
ICAgR01haW5Mb29wICptYWlubG9vcDsKKyAgIEdRdWV1ZSAqb3V0YnVmczsKKy0gIGdib29sZWFu
IHVubG9ja2VkOworLSAgR1NvdXJjZSAqaWRsZV9zb3VyY2U7CisrICBHQ29uZCBvdXRjb25kOwor
KyAgR1RocmVhZCAqYWdlbnRfaW9fdGhyZWFkOworIH07CisgCisgdHlwZWRlZiBzdHJ1Y3QgX0dz
dE5pY2VTcmNDbGFzcyBHc3ROaWNlU3JjQ2xhc3M7CistLSAKKzIuMy40CisKZGlmZiAtLWdpdCBh
L1Rvb2xzL2d0ay9wYXRjaGVzL2xpYm5pY2UtMDAwMi1Eby1ub3QtdXBkYXRlLWEtcmVtb3RlLWNh
bmRpZGF0ZS1zLXR5cGUucGF0Y2ggYi9Ub29scy9ndGsvcGF0Y2hlcy9saWJuaWNlLTAwMDItRG8t
bm90LXVwZGF0ZS1hLXJlbW90ZS1jYW5kaWRhdGUtcy10eXBlLnBhdGNoCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgxY2E2NmMKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9n
dGsvcGF0Y2hlcy9saWJuaWNlLTAwMDItRG8tbm90LXVwZGF0ZS1hLXJlbW90ZS1jYW5kaWRhdGUt
cy10eXBlLnBhdGNoCkBAIC0wLDAgKzEsMzEgQEAKK0Zyb20gOTM4NjJjMWUxOTQwNjE4ZTA2MTQz
ZDQ3ODhmNTRiZmZkNGQxYzVkYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IFlvdW5l
c3MgQWxhb3VpIDxrYWthcm90b0BrYWthcm90by5ob21lbGludXgubmV0PgorRGF0ZTogVHVlLCA1
IE1heSAyMDE1IDE0OjI0OjE1IC0wNDAwCitTdWJqZWN0OiBbUEFUQ0ggMi80XSBEbyBub3QgdXBk
YXRlIGEgcmVtb3RlIGNhbmRpZGF0ZSdzIHR5cGUKKworV2hlbiBhZGRpbmcgYSByZW1vdGUgY2Fu
ZGlkYXRlLCBpZiBpdCdzIHRoZSBzYW1lIGlwOnBvcnQsIHdlIHNob3VsZAorYWxzbyBjaGVjayBp
dHMgdHlwZSwgb3RoZXJ3aXNlIGl0J3MgYSBuZXcgY2FuZGlkYXRlLiBXZSBjYW4ndCBhbGxvdwor
YSBjYW5kaWRhdGUgdHlwZSB0byBiZSB1cGRhdGVkLiBUaGlzIGNhdXNlZCBpc3N1ZXMgdG8gaWtv
bnN0XyBvbiBJUkMKK3doZXJlIGZvciBzb21lIHJlYXNvbiBhIGhvc3QgY2FuZGlkYXRlIGFwcGVh
cmVkIGFzIGJvdGggaG9zdCBhbmQgcHJmbHgKK2FuZCB0aGUgdXBkYXRlIGNhdXNlZCBhIHJlbW90
ZSBob3N0IGNhbmRpZGF0ZSB0byBiZSB1cGRhdGVkIHRvIHByZmx4CitjYXVzaW5nIGEgY3Jhc2gg
d2hlbiB0aGUgc29ja3B0ciB3YXMgYmVpbmcgYWNjZXNzZWQuCistLS0KKyBhZ2VudC9hZ2VudC5j
IHwgMiArLQorIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQor
CitkaWZmIC0tZ2l0IGEvYWdlbnQvYWdlbnQuYyBiL2FnZW50L2FnZW50LmMKK2luZGV4IGU3MzNj
ODIuLjM4YjY3OWYgMTAwNjQ0CistLS0gYS9hZ2VudC9hZ2VudC5jCisrKysgYi9hZ2VudC9hZ2Vu
dC5jCitAQCAtMzA0MSw3ICszMDQxLDcgQEAgc3RhdGljIGdib29sZWFuIHByaXZfYWRkX3JlbW90
ZV9jYW5kaWRhdGUgKAorIAorICAgLyogc3RlcDogY2hlY2sgd2hldGhlciB0aGUgY2FuZGlkYXRl
IGFscmVhZHkgZXhpc3RzICovCisgICBjYW5kaWRhdGUgPSBjb21wb25lbnRfZmluZF9yZW1vdGVf
Y2FuZGlkYXRlKGNvbXBvbmVudCwgYWRkciwgdHJhbnNwb3J0KTsKKy0gIGlmIChjYW5kaWRhdGUp
IHsKKysgIGlmIChjYW5kaWRhdGUgJiYgY2FuZGlkYXRlLT50eXBlID09IHR5cGUpIHsKKyAgICAg
aWYgKG5pY2VfZGVidWdfaXNfZW5hYmxlZCAoKSkgeworICAgICAgIGdjaGFyIHRtcGJ1ZltJTkVU
Nl9BRERSU1RSTEVOXTsKKyAgICAgICBuaWNlX2FkZHJlc3NfdG9fc3RyaW5nIChhZGRyLCB0bXBi
dWYpOworLS0gCisyLjMuMiAoQXBwbGUgR2l0LTU1KQorCmRpZmYgLS1naXQgYS9Ub29scy9ndGsv
cGF0Y2hlcy9saWJuaWNlLTAwMDItVFVSTi1oYW5kbGUtNDM3LUFsbG9jYXRpb24tTWlzbWF0Y2gt
cmVzcG9uc2VzLnBhdGNoIGIvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAyLVRVUk4taGFu
ZGxlLTQzNy1BbGxvY2F0aW9uLU1pc21hdGNoLXJlc3BvbnNlcy5wYXRjaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi40YWNlOGMyCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMv
Z3RrL3BhdGNoZXMvbGlibmljZS0wMDAyLVRVUk4taGFuZGxlLTQzNy1BbGxvY2F0aW9uLU1pc21h
dGNoLXJlc3BvbnNlcy5wYXRjaApAQCAtMCwwICsxLDEzMSBAQAorRnJvbSA5ZTJjZWQxMzFhYzBm
YzY0MmVmNWM4NjE4NTFjNTk4OGQ4Yjk2ZDE2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJv
bTogQWxlc3NhbmRybyBEZWNpbmEgPGFsZXNzYW5kcm8uZEBnbWFpbC5jb20+CitEYXRlOiBUaHUs
IDI0IE1hciAyMDE2IDEwOjU0OjIwICsxMTAwCitTdWJqZWN0OiBbUEFUQ0ggMi8yXSBUVVJOOiBo
YW5kbGUgNDM3IEFsbG9jYXRpb24gTWlzbWF0Y2ggcmVzcG9uc2VzCisKK09uIEFsbG9jYXRpb24g
TWlzbWF0Y2ggcmVzcG9uc2VzLCB0aGUgY2xpZW50IGlzIHN1cHBvc2VkIHRvIHJldHJ5IHdpdGgg
YQorZGlmZmVyZW50IGhvc3Q6cG9ydCBjb21iaW5hdGlvbi4KKy0tLQorIGFnZW50L2Nvbm5jaGVj
ay5jIHwgNDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tCisgYWdl
bnQvZGlzY292ZXJ5LmggfCAgMSArCisgc3R1bi9zdHVuYWdlbnQuYyAgfCAgMiArLQorIDMgZmls
ZXMgY2hhbmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1n
aXQgYS9hZ2VudC9jb25uY2hlY2suYyBiL2FnZW50L2Nvbm5jaGVjay5jCitpbmRleCA5N2JmNTM2
Li5kMDNlNTdhIDEwMDY0NAorLS0tIGEvYWdlbnQvY29ubmNoZWNrLmMKKysrKyBiL2FnZW50L2Nv
bm5jaGVjay5jCitAQCAtMjYzMCw5ICsyNjMwLDEwIEBAIHN0YXRpYyBnYm9vbGVhbiBwcml2X21h
cF9yZXBseV90b19yZWxheV9yZXF1ZXN0IChOaWNlQWdlbnQgKmFnZW50LCBTdHVuTWVzc2FnZSAq
CisgICBTdHVuVHJhbnNhY3Rpb25JZCBkaXNjb3ZlcnlfaWQ7CisgICBTdHVuVHJhbnNhY3Rpb25J
ZCByZXNwb25zZV9pZDsKKyAgIHN0dW5fbWVzc2FnZV9pZCAocmVzcCwgcmVzcG9uc2VfaWQpOwor
KyAgQ2FuZGlkYXRlRGlzY292ZXJ5ICpkID0gTlVMTDsKKyAKKyAgIGZvciAoaSA9IGFnZW50LT5k
aXNjb3ZlcnlfbGlzdDsgaSAmJiB0cmFuc19mb3VuZCAhPSBUUlVFOyBpID0gaS0+bmV4dCkgewor
LSAgICBDYW5kaWRhdGVEaXNjb3ZlcnkgKmQgPSBpLT5kYXRhOworKyAgICBkID0gaS0+ZGF0YTsK
KyAKKyAgICAgaWYgKGQtPnR5cGUgPT0gTklDRV9DQU5ESURBVEVfVFlQRV9SRUxBWUVEICYmCisg
ICAgICAgICBkLT5zdHVuX21lc3NhZ2UuYnVmZmVyKSB7CitAQCAtMjc1Nyw2ICsyNzU4LDcgQEAg
c3RhdGljIGdib29sZWFuIHByaXZfbWFwX3JlcGx5X3RvX3JlbGF5X3JlcXVlc3QgKE5pY2VBZ2Vu
dCAqYWdlbnQsIFN0dW5NZXNzYWdlICoKKyAgICAgICAgICAgdWludDE2X3Qgc2VudF9yZWFsbV9s
ZW4gPSAwOworICAgICAgICAgICB1aW50MTZfdCByZWN2X3JlYWxtX2xlbiA9IDA7CisgCisrICAg
ICAgICAgIHRyYW5zX2ZvdW5kID0gVFJVRTsKKyAgICAgICAgICAgc2VudF9yZWFsbSA9ICh1aW50
OF90ICopIHN0dW5fbWVzc2FnZV9maW5kICgmZC0+c3R1bl9tZXNzYWdlLAorICAgICAgICAgICAg
ICAgU1RVTl9BVFRSSUJVVEVfUkVBTE0sICZzZW50X3JlYWxtX2xlbik7CisgICAgICAgICAgIHJl
Y3ZfcmVhbG0gPSAodWludDhfdCAqKSBzdHVuX21lc3NhZ2VfZmluZCAocmVzcCwKK0BAIC0yNzY5
LDExICsyNzcxLDMxIEBAIHN0YXRpYyBnYm9vbGVhbiBwcml2X21hcF9yZXBseV90b19yZWxheV9y
ZXF1ZXN0IChOaWNlQWdlbnQgKmFnZW50LCBTdHVuTWVzc2FnZSAqCisgICAgICAgICAgICAgICBz
dHVuX21lc3NhZ2VfZ2V0X2NsYXNzIChyZXNwKSA9PSBTVFVOX0VSUk9SICYmCisgICAgICAgICAg
ICAgICBzdHVuX21lc3NhZ2VfZmluZF9lcnJvciAocmVzcCwgJmNvZGUpID09CisgICAgICAgICAg
ICAgICBTVFVOX01FU1NBR0VfUkVUVVJOX1NVQ0NFU1MpIHsKKy0gICAgICAgICAgICBpZiAoY29k
ZSA9PSA0MzggfHwKKysgICAgICAgICAgICBpZiAoY29kZSA9PSA0MzcgfHwKKysgICAgICAgICAg
ICAgICAgY29kZSA9PSA0MzggfHwKKyAgICAgICAgICAgICAgICAgKGNvZGUgPT0gNDAxICYmCisg
ICAgICAgICAgICAgICAgICAgICAhKHJlY3ZfcmVhbG1fbGVuID09IHNlbnRfcmVhbG1fbGVuICYm
CisgICAgICAgICAgICAgICAgICAgICAgICAgcmVjdl9yZWFsbSAhPSBOVUxMICYmIHNlbnRfcmVh
bG0gIT0gTlVMTCAmJgorICAgICAgICAgICAgICAgICAgICAgICAgIG1lbWNtcCAoc2VudF9yZWFs
bSwgcmVjdl9yZWFsbSwgc2VudF9yZWFsbV9sZW4pID09IDApKSkgeworKyAgICAgICAgICAgICAg
aWYgKGNvZGUgPT0gNDM3KSB7CisrICAgICAgICAgICAgICAgIGlmIChkLT50dXJuX3JldHJpZXMr
KyA9PSAzKQorKyAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisrCisrICAgICAgICAgICAg
ICAgIC8qIHJldHJ5IHVwIHRvIHRocmVlIHRpbWVzIG9uIEFsbG9jYXRpb24gTWlzbWF0Y2ggZXJy
b3JzICovCisrICAgICAgICAgICAgICAgIE5pY2VBZGRyZXNzIGFkZHIgPSBkLT5uaWNlc29jay0+
YWRkcjsKKysgICAgICAgICAgICAgICAgTmljZVNvY2tldCAqbmV3X3NvY2tldDsKKysKKysgICAg
ICAgICAgICAgICAgLyogRklYTUU6IHRoaXMgaWdub3JlcyBuaWNlX2FnZW50X3NldF9wb3J0X3Jh
bmdlICovCisrICAgICAgICAgICAgICAgIG5pY2VfYWRkcmVzc19zZXRfcG9ydCAoJmFkZHIsIDAp
OworKworKyAgICAgICAgICAgICAgICBuZXdfc29ja2V0ID0gbmljZV91ZHBfYnNkX3NvY2tldF9u
ZXcgKCZhZGRyKTsKKysgICAgICAgICAgICAgICAgaWYgKG5ld19zb2NrZXQpIHsKKysgICAgICAg
ICAgICAgICAgICBfcHJpdl9zZXRfc29ja2V0X3RvcyAoYWdlbnQsIG5ld19zb2NrZXQsIGQtPnN0
cmVhbS0+dG9zKTsKKysgICAgICAgICAgICAgICAgICBjb21wb25lbnRfYXR0YWNoX3NvY2tldCAo
ZC0+Y29tcG9uZW50LCBuZXdfc29ja2V0KTsKKysgICAgICAgICAgICAgICAgICBkLT5uaWNlc29j
ayA9IG5ld19zb2NrZXQ7CisrICAgICAgICAgICAgICAgIH0KKysgICAgICAgICAgICAgIH0KKysK
KyAgICAgICAgICAgICAgIGQtPnN0dW5fcmVzcF9tc2cgPSAqcmVzcDsKKyAgICAgICAgICAgICAg
IG1lbWNweSAoZC0+c3R1bl9yZXNwX2J1ZmZlciwgcmVzcC0+YnVmZmVyLAorICAgICAgICAgICAg
ICAgICAgIHN0dW5fbWVzc2FnZV9sZW5ndGggKHJlc3ApKTsKK0BAIC0yNzgyLDIzICsyODA0LDI1
IEBAIHN0YXRpYyBnYm9vbGVhbiBwcml2X21hcF9yZXBseV90b19yZWxheV9yZXF1ZXN0IChOaWNl
QWdlbnQgKmFnZW50LCBTdHVuTWVzc2FnZSAqCisgICAgICAgICAgICAgICBkLT5wZW5kaW5nID0g
RkFMU0U7CisgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgIC8qIGNhc2U6IGEg
cmVhbCB1bmF1dGhvcml6ZWQgZXJyb3IgKi8KKy0gICAgICAgICAgICAgIGQtPnN0dW5fbWVzc2Fn
ZS5idWZmZXIgPSBOVUxMOworLSAgICAgICAgICAgICAgZC0+c3R1bl9tZXNzYWdlLmJ1ZmZlcl9s
ZW4gPSAwOworLSAgICAgICAgICAgICAgZC0+ZG9uZSA9IFRSVUU7CisrICAgICAgICAgICAgICBn
b3RvIGVycm9yOworICAgICAgICAgICAgIH0KKyAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgICAvKiBjYXNlOiBTVFVOIGVycm9yLCB0aGUgY2hlY2sgU1RVTiBjb250ZXh0IHdhcyBmcmVl
ZCAqLworLSAgICAgICAgICAgIGQtPnN0dW5fbWVzc2FnZS5idWZmZXIgPSBOVUxMOworLSAgICAg
ICAgICAgIGQtPnN0dW5fbWVzc2FnZS5idWZmZXJfbGVuID0gMDsKKy0gICAgICAgICAgICBkLT5k
b25lID0gVFJVRTsKKysgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICB9CistICAg
ICAgICAgIHRyYW5zX2ZvdW5kID0gVFJVRTsKKyAgICAgICAgIH0KKyAgICAgICB9CisgICAgIH0K
KyAgIH0KKyAKKyAgIHJldHVybiB0cmFuc19mb3VuZDsKKysKKytlcnJvcjoKKysgIGQtPnN0dW5f
bWVzc2FnZS5idWZmZXIgPSBOVUxMOworKyAgZC0+c3R1bl9tZXNzYWdlLmJ1ZmZlcl9sZW4gPSAw
OworKyAgZC0+ZG9uZSA9IFRSVUU7CisrCisrICByZXR1cm4gdHJhbnNfZm91bmQ7CisgfQorIAor
IAorZGlmZiAtLWdpdCBhL2FnZW50L2Rpc2NvdmVyeS5oIGIvYWdlbnQvZGlzY292ZXJ5LmgKK2lu
ZGV4IGMyMmVhNmEuLjE0OGI4YzIgMTAwNjQ0CistLS0gYS9hZ2VudC9kaXNjb3ZlcnkuaAorKysr
IGIvYWdlbnQvZGlzY292ZXJ5LmgKK0BAIC01Niw2ICs1Niw3IEBAIHR5cGVkZWYgc3RydWN0Cisg
ICBTdHJlYW0gKnN0cmVhbTsKKyAgIENvbXBvbmVudCAqY29tcG9uZW50OworICAgVHVyblNlcnZl
ciAqdHVybjsKKysgIGdpbnQgdHVybl9yZXRyaWVzOworICAgU3R1bkFnZW50IHN0dW5fYWdlbnQ7
CisgICBTdHVuVGltZXIgdGltZXI7CisgICB1aW50OF90IHN0dW5fYnVmZmVyW1NUVU5fTUFYX01F
U1NBR0VfU0laRV9JUFY2XTsKK2RpZmYgLS1naXQgYS9zdHVuL3N0dW5hZ2VudC5jIGIvc3R1bi9z
dHVuYWdlbnQuYworaW5kZXggMmFiY2MyOS4uMGFiYWUzZCAxMDA2NDQKKy0tLSBhL3N0dW4vc3R1
bmFnZW50LmMKKysrKyBiL3N0dW4vc3R1bmFnZW50LmMKK0BAIC0zMDEsNyArMzAxLDcgQEAgU3R1
blZhbGlkYXRpb25TdGF0dXMgc3R1bl9hZ2VudF92YWxpZGF0ZSAoU3R1bkFnZW50ICphZ2VudCwg
U3R1bk1lc3NhZ2UgKm1zZywKKyAgICAgfSBlbHNlIGlmICghKHN0dW5fbWVzc2FnZV9nZXRfY2xh
c3MgKG1zZykgPT0gU1RVTl9FUlJPUiAmJgorICAgICAgICAgc3R1bl9tZXNzYWdlX2ZpbmRfZXJy
b3IgKG1zZywgJmVycm9yX2NvZGUpID09CisgICAgICAgICAgICAgU1RVTl9NRVNTQUdFX1JFVFVS
Tl9TVUNDRVNTICYmCistICAgICAgICAoZXJyb3JfY29kZSA9PSA0MDAgfHwgZXJyb3JfY29kZSA9
PSA0MDEpKSkgeworKyAgICAgICAgKGVycm9yX2NvZGUgPT0gNDAwIHx8IGVycm9yX2NvZGUgPT0g
NDAxIHx8IGVycm9yX2NvZGUgPT0gNDM3KSkpIHsKKyAgICAgICBzdHVuX2RlYnVnICgiU1RVTiBh
dXRoIGVycm9yOiBObyBtZXNzYWdlIGludGVncml0eSBhdHRyaWJ1dGUhIik7CisgICAgICAgcmV0
dXJuIFNUVU5fVkFMSURBVElPTl9VTkFVVEhPUklaRUQ7CisgICAgIH0KKy0tIAorMi4zLjQKKwpk
aWZmIC0tZ2l0IGEvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0wMDAzLURvLW5vdC1jb21wYXJl
LXNjb3BlLWZvci1JUHY2LWFkZHJlc3Mtd2hlbi1zY29wZS1pcy0ucGF0Y2ggYi9Ub29scy9ndGsv
cGF0Y2hlcy9saWJuaWNlLTAwMDMtRG8tbm90LWNvbXBhcmUtc2NvcGUtZm9yLUlQdjYtYWRkcmVz
cy13aGVuLXNjb3BlLWlzLS5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li44MDZmOWViCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0w
MDAzLURvLW5vdC1jb21wYXJlLXNjb3BlLWZvci1JUHY2LWFkZHJlc3Mtd2hlbi1zY29wZS1pcy0u
cGF0Y2gKQEAgLTAsMCArMSw0MyBAQAorRnJvbSA5MWE3YjkzMjQyNDQ4NDRiYWYzNWQ4ZmNlZjAx
OWE0ZWEzODcyZDMwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogWW91bmVzcyBBbGFv
dWkgPGtha2Fyb3RvQGtha2Fyb3RvLmhvbWVsaW51eC5uZXQ+CitEYXRlOiBUdWUsIDUgTWF5IDIw
MTUgMTU6MDA6MzAgLTA0MDAKK1N1YmplY3Q6IFtQQVRDSCAzLzRdIERvIG5vdCBjb21wYXJlIHNj
b3BlIGZvciBJUHY2IGFkZHJlc3Mgd2hlbiBzY29wZSBpcyAwCisKK1RoaXMgY2F1c2VkIGlzc3Vl
cyB3aXRoIHRoaW5raW5nIGxvY2FsIGhvc3QgY2FuZGlkYXRlcyB3ZXJlIHBlZXItcmVmbGV4aXZl
CitjYW5kaWRhdGVzIGJlY2F1c2UgdGhlIG5pY2VfYWRkcmVzc19lcXVhbCB3b3VsZCBmYWlsIHNp
bmNlIHRoZSBzY29wZQord291bGQgYmUgNiAob3Igc29tZSBvdGhlciB2YWx1ZSkgYnV0IGxvY2Fs
bHkgY3JlYXRlZCBOaWNlQWRkcmVzcyBmcm9tCithIHN0dW4gcmVzcG9uc2Ugd291bGQgaGF2ZSB0
aGUgc2NvcGUgc2V0IHRvIDAuCitXZSBpZ25vcmUgdGhlIHNjb3BlIHdoZW4gY29tcGFyaW5nIGlw
djYgY2FuZGlkYXRlcyB3aGVuIHNjb3BlIGlzIDAKK3RvIGF2b2lkIHRoZXNlIGtpbmRzIG9mIGlz
c3Vlcy4KK1RoYW5rcyB0byBpa29uc3RfIGZvciBmaW5kaW5nIHRoZXNlIGlzc3VlcworLS0tCisg
YWdlbnQvYWRkcmVzcy5jIHwgNiArKysrLS0KKyAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25z
KCspLCAyIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvYWdlbnQvYWRkcmVzcy5jIGIvYWdl
bnQvYWRkcmVzcy5jCitpbmRleCBhOGQ5Yzc2Li4wMWVlYmFiIDEwMDY0NAorLS0tIGEvYWdlbnQv
YWRkcmVzcy5jCisrKysgYi9hZ2VudC9hZGRyZXNzLmMKK0BAIC0yOTcsNyArMjk3LDggQEAgbmlj
ZV9hZGRyZXNzX2VxdWFsIChjb25zdCBOaWNlQWRkcmVzcyAqYSwgY29uc3QgTmljZUFkZHJlc3Mg
KmIpCisgICAgIGNhc2UgQUZfSU5FVDY6CisgICAgICAgcmV0dXJuIElONl9BUkVfQUREUl9FUVVB
TCAoJmEtPnMuaXA2LnNpbjZfYWRkciwgJmItPnMuaXA2LnNpbjZfYWRkcikKKyAgICAgICAgICAg
JiYgKGEtPnMuaXA2LnNpbjZfcG9ydCA9PSBiLT5zLmlwNi5zaW42X3BvcnQpCistICAgICAgICAg
ICYmIChhLT5zLmlwNi5zaW42X3Njb3BlX2lkID09IGItPnMuaXA2LnNpbjZfc2NvcGVfaWQpOwor
KyAgICAgICAgICAmJiAoYS0+cy5pcDYuc2luNl9zY29wZV9pZCA9PSAwIHx8IGItPnMuaXA2LnNp
bjZfc2NvcGVfaWQgPT0gMCB8fAorKyAgICAgICAgICAgICAgKGEtPnMuaXA2LnNpbjZfc2NvcGVf
aWQgPT0gYi0+cy5pcDYuc2luNl9zY29wZV9pZCkpOworIAorICAgICBkZWZhdWx0OgorICAgICAg
IGdfcmV0dXJuX3ZhbF9pZl9yZWFjaGVkIChGQUxTRSk7CitAQCAtNDEyLDcgKzQxMyw4IEBAIG5p
Y2VfYWRkcmVzc19lcXVhbF9ub19wb3J0IChjb25zdCBOaWNlQWRkcmVzcyAqYSwgY29uc3QgTmlj
ZUFkZHJlc3MgKmIpCisgCisgICAgIGNhc2UgQUZfSU5FVDY6CisgICAgICAgcmV0dXJuIElONl9B
UkVfQUREUl9FUVVBTCAoJmEtPnMuaXA2LnNpbjZfYWRkciwgJmItPnMuaXA2LnNpbjZfYWRkcikK
Ky0gICAgICAgICAgJiYgKGEtPnMuaXA2LnNpbjZfc2NvcGVfaWQgPT0gYi0+cy5pcDYuc2luNl9z
Y29wZV9pZCk7CisrICAgICAgICAgICYmIChhLT5zLmlwNi5zaW42X3Njb3BlX2lkID09IDAgfHwg
Yi0+cy5pcDYuc2luNl9zY29wZV9pZCA9PSAwIHx8CisrICAgICAgICAgICAgICAoYS0+cy5pcDYu
c2luNl9zY29wZV9pZCA9PSBiLT5zLmlwNi5zaW42X3Njb3BlX2lkKSk7CisgCisgICAgIGRlZmF1
bHQ6CisgICAgICAgZ19yZXR1cm5fdmFsX2lmX3JlYWNoZWQgKEZBTFNFKTsKKy0tIAorMi4zLjIg
KEFwcGxlIEdpdC01NSkKKwpkaWZmIC0tZ2l0IGEvVG9vbHMvZ3RrL3BhdGNoZXMvbGlibmljZS0w
MDA0LVJlbW92aW5nLW5vLW9wLWFzc2lnbm1lbnQucGF0Y2ggYi9Ub29scy9ndGsvcGF0Y2hlcy9s
aWJuaWNlLTAwMDQtUmVtb3Zpbmctbm8tb3AtYXNzaWdubWVudC5wYXRjaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi45M2JlYTkyCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMv
Z3RrL3BhdGNoZXMvbGlibmljZS0wMDA0LVJlbW92aW5nLW5vLW9wLWFzc2lnbm1lbnQucGF0Y2gK
QEAgLTAsMCArMSwyNCBAQAorRnJvbSA2YThjNjMyMTljNjMyYzI3NzA3MjY3YjY1MTBkY2EwOTZj
NmZkNTExIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogWW91bmVzcyBBbGFvdWkgPGth
a2Fyb3RvQGtha2Fyb3RvLmhvbWVsaW51eC5uZXQ+CitEYXRlOiBUdWUsIDUgTWF5IDIwMTUgMTU6
MDc6MTAgLTA0MDAKK1N1YmplY3Q6IFtQQVRDSCA0LzRdIFJlbW92aW5nIG5vLW9wIGFzc2lnbm1l
bnQKKworLS0tCisgYWdlbnQvYWdlbnQuYyB8IDEgLQorIDEgZmlsZSBjaGFuZ2VkLCAxIGRlbGV0
aW9uKC0pCisKK2RpZmYgLS1naXQgYS9hZ2VudC9hZ2VudC5jIGIvYWdlbnQvYWdlbnQuYworaW5k
ZXggMzhiNjc5Zi4uODRkNDA5MyAxMDA2NDQKKy0tLSBhL2FnZW50L2FnZW50LmMKKysrKyBiL2Fn
ZW50L2FnZW50LmMKK0BAIC0zMDUxLDcgKzMwNTEsNiBAQCBzdGF0aWMgZ2Jvb2xlYW4gcHJpdl9h
ZGRfcmVtb3RlX2NhbmRpZGF0ZSAoCisgICAgICAgICAgIHVzZXJuYW1lLCBwYXNzd29yZCwgcHJp
b3JpdHkpOworICAgICB9CisgICAgIC8qIGNhc2UgMTogYW4gZXhpc3RpbmcgY2FuZGlkYXRlLCB1
cGRhdGUgdGhlIGF0dHJpYnV0ZXMgKi8KKy0gICAgY2FuZGlkYXRlLT50eXBlID0gdHlwZTsKKyAg
ICAgaWYgKGJhc2VfYWRkcikKKyAgICAgICBjYW5kaWRhdGUtPmJhc2VfYWRkciA9ICpiYXNlX2Fk
ZHI7CisgICAgIGNhbmRpZGF0ZS0+cHJpb3JpdHkgPSBwcmlvcml0eTsKKy0tIAorMi4zLjIgKEFw
cGxlIEdpdC01NSkKKwotLSAKMi45LjM=
</data>
<flag name="review"
          id="315051"
          type_id="1"
          status="+"
          setter="mcatanzaro"
    />
          </attachment>
      

    </bug>

</bugzilla>