<?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>72315</bug_id>
          
          <creation_ts>2011-11-14 14:59:08 -0800</creation_ts>
          <short_desc>Mouse Lock: Renaming to &apos;Pointer Lock&apos;: MouseLockable to PointerLock</short_desc>
          <delta_ts>2011-11-15 14:39:17 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Vincent Scheib">scheib</reporter>
          <assigned_to name="Vincent Scheib">scheib</assigned_to>
          <cc>abarth</cc>
    
    <cc>dglazkov</cc>
    
    <cc>gustavo</cc>
    
    <cc>ojan</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>502343</commentid>
    <comment_count>0</comment_count>
    <who name="Vincent Scheib">scheib</who>
    <bug_when>2011-11-14 14:59:08 -0800</bug_when>
    <thetext>Mouse Lock: Renaming to &apos;Pointer Lock&apos;: MouseLockable to PointerLock</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502344</commentid>
    <comment_count>1</comment_count>
      <attachid>115036</attachid>
    <who name="Vincent Scheib">scheib</who>
    <bug_when>2011-11-14 14:59:45 -0800</bug_when>
    <thetext>Created attachment 115036
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502353</commentid>
    <comment_count>2</comment_count>
      <attachid>115036</attachid>
    <who name="Vincent Scheib">scheib</who>
    <bug_when>2011-11-14 15:06:09 -0800</bug_when>
    <thetext>Comment on attachment 115036
Patch

-- oops, forgot to edit the [Conditional...] new patch coming shortly...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502355</commentid>
    <comment_count>3</comment_count>
      <attachid>115038</attachid>
    <who name="Vincent Scheib">scheib</who>
    <bug_when>2011-11-14 15:08:24 -0800</bug_when>
    <thetext>Created attachment 115038
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502377</commentid>
    <comment_count>4</comment_count>
      <attachid>115038</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-11-14 15:23:46 -0800</bug_when>
    <thetext>Comment on attachment 115038
Patch

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

&gt; Source/WebCore/page/Navigator.idl:47
&gt; +        readonly attribute [Conditional=POINTER_LOCK,EnabledAtRuntime] PointerLock webkitPointer;

space after comma?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502390</commentid>
    <comment_count>5</comment_count>
      <attachid>115038</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2011-11-14 15:36:51 -0800</bug_when>
    <thetext>Comment on attachment 115038
Patch

Attachment 115038 did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/10483071</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502443</commentid>
    <comment_count>6</comment_count>
    <who name="Vincent Scheib">scheib</who>
    <bug_when>2011-11-14 16:29:33 -0800</bug_when>
    <thetext>Addressing Dimitri&apos;s space nit.
Also, rekicking gtk EWS, seems to be an unrelated error?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502444</commentid>
    <comment_count>7</comment_count>
      <attachid>115054</attachid>
    <who name="Vincent Scheib">scheib</who>
    <bug_when>2011-11-14 16:30:11 -0800</bug_when>
    <thetext>Created attachment 115054
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502539</commentid>
    <comment_count>8</comment_count>
      <attachid>115054</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2011-11-14 17:35:35 -0800</bug_when>
    <thetext>Comment on attachment 115054
Patch

Attachment 115054 did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/10484117</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>503069</commentid>
    <comment_count>9</comment_count>
      <attachid>115205</attachid>
    <who name="Vincent Scheib">scheib</who>
    <bug_when>2011-11-15 11:10:18 -0800</bug_when>
    <thetext>Created attachment 115205
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>503070</commentid>
    <comment_count>10</comment_count>
    <who name="Vincent Scheib">scheib</who>
    <bug_when>2011-11-15 11:12:00 -0800</bug_when>
    <thetext>GTK was still failing? Not certain what the issue is. Attempting with Navigator.idl no using [Conditional] on the attribute?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>503098</commentid>
    <comment_count>11</comment_count>
      <attachid>115205</attachid>
    <who name="Vincent Scheib">scheib</who>
    <bug_when>2011-11-15 11:35:54 -0800</bug_when>
    <thetext>Comment on attachment 115205
Patch

GTK was failing. I changed Navigator.idl to not use the [Conditional] prefix on the attribute, instead wrapping with &quot;#if defined(ENABLE_POINTER_LOCK) ...&quot; and the bot passes OK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>503195</commentid>
    <comment_count>12</comment_count>
      <attachid>115229</attachid>
    <who name="Vincent Scheib">scheib</who>
    <bug_when>2011-11-15 13:28:29 -0800</bug_when>
    <thetext>Created attachment 115229
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>503300</commentid>
    <comment_count>13</comment_count>
      <attachid>115229</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-15 14:39:10 -0800</bug_when>
    <thetext>Comment on attachment 115229
Patch for landing

Clearing flags on attachment: 115229

Committed r100328: &lt;http://trac.webkit.org/changeset/100328&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>503301</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-15 14:39:17 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>115036</attachid>
            <date>2011-11-14 14:59:45 -0800</date>
            <delta_ts>2011-11-14 15:08:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-72315-20111114145944.patch</filename>
            <type>text/plain</type>
            <size>18345</size>
            <attacher name="Vincent Scheib">scheib</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTAwMTk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjExODZhNDQxOGQxYTQ1
NDdmODg2MDk4ZjdmZWVhOWVlNTE2ZWJiMi4uMWU2Njk4OWI5NTZmMjRmOGMzOGQ4ZjI4MWQxOWY2
Njk5MWFkOGQwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDExLTExLTE0ICBWaW5j
ZW50IFNjaGVpYiAgPHNjaGVpYkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgTW91c2UgTG9jazog
UmVuYW1pbmcgdG8gJ1BvaW50ZXIgTG9jayc6IE1vdXNlTG9ja2FibGUgdG8gUG9pbnRlckxvY2sK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyMzE1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3Jl
Lmd5cGk6CisgICAgICAgICogcGFnZS9OYXZpZ2F0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TmF2aWdhdG9yOjp3ZWJraXRQb2ludGVyKToKKyAgICAgICAgKiBwYWdlL05hdmlnYXRvci5oOgor
ICAgICAgICAqIHBhZ2UvTmF2aWdhdG9yLmlkbDoKKyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2Nr
LmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvTW91c2VMb2NrYWJsZS5jcHAu
CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9jazo6UG9pbnRlckxvY2spOgorICAgICAgICAo
V2ViQ29yZTo6UG9pbnRlckxvY2s6On5Qb2ludGVyTG9jayk6CisgICAgICAgIChXZWJDb3JlOjpQ
b2ludGVyTG9jazo6d2Via2l0TG9jayk6CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9jazo6
d2Via2l0VW5sb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrOjp3ZWJraXRJc0xv
Y2tlZCk6CisgICAgICAgICogcGFnZS9Qb2ludGVyTG9jay5oOiBSZW5hbWVkIGZyb20gU291cmNl
L1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmguCisgICAgICAgIChXZWJDb3JlOjpQb2ludGVy
TG9jazo6Y3JlYXRlKToKKyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2NrLmlkbDogUmVuYW1lZCBm
cm9tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvTW91c2VMb2NrYWJsZS5pZGwuCisKIDIwMTEtMTEtMTQg
IFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZW1vdmUgdGhlIENT
UzNfRkxFWEJPWCBjb21waWxlIHRpbWUgZmxhZyBhbmQgZW5hYmxlIG9uIGFsbCBwb3J0cwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS5neXBpCmluZGV4IGU4MzA2MWQyYjU5NmY0MTU5ZmE4NzYxNzc5NmUyOTJkM2RmZjcyMjIu
LmQ5ZDA1YzhlNDUyNTUyZDNmYWRhZDdmZGNiZDVlNmE5Njc1NWU0NWMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5
cGkKQEAgLTE0MDUsNyArMTQwNSw2IEBACiAgICAgICAgICAgICAncGFnZS9IaXN0b3J5LmlkbCcs
CiAgICAgICAgICAgICAncGFnZS9Mb2NhdGlvbi5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvTWVt
b3J5SW5mby5pZGwnLAotICAgICAgICAgICAgJ3BhZ2UvTW91c2VMb2NrYWJsZS5pZGwnLAogICAg
ICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9OYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvci5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3JDYWxsYmFjay5pZGwnLApAQCAtMTQxMyw2ICsxNDEyLDcgQEAKICAgICAgICAgICAg
ICdwYWdlL1BlcmZvcm1hbmNlLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZU5h
dmlnYXRpb24uaWRsJywKICAgICAgICAgICAgICdwYWdlL1BlcmZvcm1hbmNlVGltaW5nLmlkbCcs
CisgICAgICAgICAgICAncGFnZS9Qb2ludGVyTG9jay5pZGwnLAogICAgICAgICAgICAgJ3BhZ2Uv
UG9zaXRpb25DYWxsYmFjay5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUG9zaXRpb25FcnJvci5p
ZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUG9zaXRpb25FcnJvckNhbGxiYWNrLmlkbCcsCkBAIC0y
OTYwLDggKzI5NjAsNiBAQAogICAgICAgICAgICAgJ3BhZ2UvTWVtb3J5SW5mby5jcHAnLAogICAg
ICAgICAgICAgJ3BhZ2UvTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5jcHAnLAogICAgICAg
ICAgICAgJ3BhZ2UvTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5oJywKLSAgICAgICAgICAg
ICdwYWdlL01vdXNlTG9ja2FibGUuY3BwJywKLSAgICAgICAgICAgICdwYWdlL01vdXNlTG9ja2Fi
bGUuaCcsCiAgICAgICAgICAgICAncGFnZS9OYXZpZ2F0b3IuY3BwJywKICAgICAgICAgICAgICdw
YWdlL05hdmlnYXRvci5oJywKICAgICAgICAgICAgICdwYWdlL05hdmlnYXRvckJhc2UuY3BwJywK
QEAgLTI5ODMsNiArMjk4MSw4IEBACiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZU5hdmln
YXRpb24uaCcsCiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZVRpbWluZy5jcHAnLAogICAg
ICAgICAgICAgJ3BhZ2UvUGVyZm9ybWFuY2VUaW1pbmcuaCcsCisgICAgICAgICAgICAncGFnZS9Q
b2ludGVyTG9jay5jcHAnLAorICAgICAgICAgICAgJ3BhZ2UvUG9pbnRlckxvY2suaCcsCiAgICAg
ICAgICAgICAncGFnZS9QcmludENvbnRleHQuY3BwJywKICAgICAgICAgICAgICdwYWdlL1NjcmVl
bi5jcHAnLAogICAgICAgICAgICAgJ3BhZ2UvU2NyZWVuLmgnLApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTW91
c2VMb2NrYWJsZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg0M2E3ZTM3ZGIx
NzRjOTYzNWUwYTQ5MDhkODRjY2UwZjU5YjViN2YuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmNw
cAorKysgL2Rldi9udWxsCkBAIC0xLDU4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIu
ICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICog
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJNb3VzZUxvY2thYmxlLmgiCi0KLSNpZiBFTkFCTEUoUE9J
TlRFUl9MT0NLKQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLU1vdXNlTG9ja2FibGU6Ok1vdXNl
TG9ja2FibGUoKQotewotfQotCi1Nb3VzZUxvY2thYmxlOjp+TW91c2VMb2NrYWJsZSgpCi17Ci19
Ci0KLXZvaWQgTW91c2VMb2NrYWJsZTo6d2Via2l0TG9jayhFbGVtZW50KiB0YXJnZXQsIFBhc3NS
ZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8Vm9pZENhbGxi
YWNrPiBmYWlsdXJlQ2FsbGJhY2spCi17Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudAotfQotCi12
b2lkIE1vdXNlTG9ja2FibGU6OndlYmtpdFVubG9jaygpCi17Ci0gICAgLy8gRklYTUU6IEltcGxl
bWVudAotfQotCi1ib29sIE1vdXNlTG9ja2FibGU6OndlYmtpdElzTG9ja2VkKCkKLXsKLSAgICAv
LyBGSVhNRTogSW1wbGVtZW50Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCi19Ci0KLSNlbmRpZiAv
LyBFTkFCTEUoUE9JTlRFUl9MT0NLKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9N
b3VzZUxvY2thYmxlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODUyMjA4ODllZjNhYmE0MjY0ODIyMjNhOGQyZmI2
NTQwMjgxZTRjZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaAorKysgL2Rldi9udWxsCkBAIC0x
LDU3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFO
WQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwot
ICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgTW91c2VMb2NrYWJsZV9oCi0jZGVm
aW5lIE1vdXNlTG9ja2FibGVfaAotCi0jaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKLQotI2luY2x1
ZGUgIlZvaWRDYWxsYmFjay5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBFbGVt
ZW50OwotCi1jbGFzcyBNb3VzZUxvY2thYmxlIDogcHVibGljIFJlZkNvdW50ZWQ8TW91c2VMb2Nr
YWJsZT4gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPE1vdXNlTG9ja2FibGU+IGNy
ZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBNb3VzZUxvY2thYmxlKCkpOyB9Ci0KLSAgICB+
TW91c2VMb2NrYWJsZSgpOwotCi0gICAgdm9pZCB3ZWJraXRMb2NrKEVsZW1lbnQqIHRhcmdldCwg
UGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxWb2lk
Q2FsbGJhY2s+IGZhaWx1cmVDYWxsYmFjayk7Ci0gICAgdm9pZCB3ZWJraXRVbmxvY2soKTsKLSAg
ICBib29sIHdlYmtpdElzTG9ja2VkKCk7Ci0KLXByaXZhdGU6Ci0gICAgTW91c2VMb2NrYWJsZSgp
OwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFBPSU5U
RVJfTE9DSykKLQotI2VuZGlmIC8vIE1vdXNlTG9ja2FibGVfaAotCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9N
b3VzZUxvY2thYmxlLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGVhMTZkMjhj
N2YyNzMwNzMyZGVlNzM0NzY5ZGIzZjVkZGNmOWNhYy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUu
aWRsCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
Mi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0g
KiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotbW9kdWxl
IGNvcmUgewotCi0gICAgaW50ZXJmYWNlIFsKLSAgICAgICAgQ29uZGl0aW9uYWw9UE9JTlRFUl9M
T0NLLAotICAgICAgICBPbWl0Q29uc3RydWN0b3IKLSAgICBdIE1vdXNlTG9ja2FibGUgewotICAg
ICAgICB2b2lkIHdlYmtpdExvY2soaW4gRWxlbWVudCB0YXJnZXQsIGluIFtDYWxsYmFjaywgT3B0
aW9uYWxdIFZvaWRDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIGluIFtDYWxsYmFjaywgT3B0aW9u
YWxdIFZvaWRDYWxsYmFjayBmYWlsdXJlQ2FsbGJhY2spOwotICAgICAgICB2b2lkIHdlYmtpdFVu
bG9jaygpOwotICAgICAgICBib29sZWFuIHdlYmtpdElzTG9ja2VkKCk7Ci0gICAgfTsKLQotfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9OYXZpZ2F0b3IuY3BwCmluZGV4IDU3ZDM4ZmYwMzQ4MjQzZTRhYzQ1MDBjYTEw
ZTk0ZTcwYWE1ZWMxYzUuLmNjZmJmYjljYzg0OTcyN2M0MTdlMmZiODE0YzQ0NWQxY2E5ZTExYjYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKICNpbmNsdWRl
ICJGcmFtZUxvYWRlci5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyQ2xpZW50LmgiCiAjaW5jbHVk
ZSAiR2VvbG9jYXRpb24uaCIKLSNpbmNsdWRlICJNb3VzZUxvY2thYmxlLmgiCisjaW5jbHVkZSAi
UG9pbnRlckxvY2suaCIKICNpbmNsdWRlICJLVVJMLmgiCiAjaW5jbHVkZSAiTGFuZ3VhZ2UuaCIK
ICNpbmNsdWRlICJQYWdlLmgiCkBAIC0xNzIsMTAgKzE3MiwxMCBAQCBHZW9sb2NhdGlvbiogTmF2
aWdhdG9yOjpnZW9sb2NhdGlvbigpIGNvbnN0CiB9CiAKICNpZiBFTkFCTEUoUE9JTlRFUl9MT0NL
KQotTW91c2VMb2NrYWJsZSogTmF2aWdhdG9yOjp3ZWJraXRQb2ludGVyKCkgY29uc3QKK1BvaW50
ZXJMb2NrKiBOYXZpZ2F0b3I6OndlYmtpdFBvaW50ZXIoKSBjb25zdAogewogICAgIGlmICghbV9w
b2ludGVyKQotICAgICAgICBtX3BvaW50ZXIgPSBNb3VzZUxvY2thYmxlOjpjcmVhdGUoKTsKKyAg
ICAgICAgbV9wb2ludGVyID0gUG9pbnRlckxvY2s6OmNyZWF0ZSgpOwogICAgIHJldHVybiBtX3Bv
aW50ZXIuZ2V0KCk7CiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
TmF2aWdhdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5oCmluZGV4IGRhZjA5
ZDc5NjdlNzUzYjEzYTc1YjZkZjJmZjkxNzhlODc3ZmRkODYuLjQ5YzU0ODhjNWIyMzhkMDZhZmI3
ZTU0MWRhNWU5MjE5ZTM2YTM3ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2
aWdhdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuaApAQCAtMzIsNyAr
MzIsNyBAQCBjbGFzcyBET01NaW1lVHlwZUFycmF5OwogY2xhc3MgRE9NUGx1Z2luQXJyYXk7CiBj
bGFzcyBGcmFtZTsKIGNsYXNzIEdlb2xvY2F0aW9uOwotY2xhc3MgTW91c2VMb2NrYWJsZTsKK2Ns
YXNzIFBvaW50ZXJMb2NrOwogY2xhc3MgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjazsK
IGNsYXNzIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIFBsdWdpbkRh
dGE7CkBAIC02MCw3ICs2MCw3IEBAIHB1YmxpYzoKICAgICBHZW9sb2NhdGlvbiogZ2VvbG9jYXRp
b24oKSBjb25zdDsKIAogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0gICAgTW91c2VMb2NrYWJs
ZSogd2Via2l0UG9pbnRlcigpIGNvbnN0OworICAgIFBvaW50ZXJMb2NrKiB3ZWJraXRQb2ludGVy
KCkgY29uc3Q7CiAjZW5kaWYKIAogICAgIC8vIFJlbGlucXVpc2hlcyB0aGUgc3RvcmFnZSBsb2Nr
LCBpZiBvbmUgZXhpc3RzLgpAQCAtODEsNyArODEsNyBAQCBwcml2YXRlOgogICAgIG11dGFibGUg
UmVmUHRyPERPTU1pbWVUeXBlQXJyYXk+IG1fbWltZVR5cGVzOwogICAgIG11dGFibGUgUmVmUHRy
PEdlb2xvY2F0aW9uPiBtX2dlb2xvY2F0aW9uOwogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0g
ICAgbXV0YWJsZSBSZWZQdHI8TW91c2VMb2NrYWJsZT4gbV9wb2ludGVyOworICAgIG11dGFibGUg
UmVmUHRyPFBvaW50ZXJMb2NrPiBtX3BvaW50ZXI7CiAjZW5kaWYKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
TmF2aWdhdG9yLmlkbAppbmRleCA2NTkxYWJlNWJhMWZlNDI1NGNlMzVmM2Y4M2MzZmE0NmU2OWI0
NTY3Li42ZmU0M2U2NjBhODUwNzMzMTQ4NTNmNTgxNjEzMTdhNmRiZmEyMzg1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9OYXZpZ2F0b3IuaWRsCkBAIC00NSw3ICs0NSw3IEBAIG1vZHVsZSB3aW5kb3cgewogI2Vu
ZGlmCiAKICNpZiBkZWZpbmVkKEVOQUJMRV9QT0lOVEVSX0xPQ0spICYmIEVOQUJMRV9QT0lOVEVS
X0xPQ0sKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFbmFibGVkQXRSdW50aW1lXSBNb3Vz
ZUxvY2thYmxlIHdlYmtpdFBvaW50ZXI7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbRW5h
YmxlZEF0UnVudGltZV0gUG9pbnRlckxvY2sgd2Via2l0UG9pbnRlcjsKICNlbmRpZgogCiAgICAg
ICAgIHZvaWQgZ2V0U3RvcmFnZVVwZGF0ZXMoKTsgLy8gRklYTUU6IFJlbW92ZSB0aGlzIG1ldGhv
ZCBvciByZW5hbWUgdG8geWllbGRGb3JTdG9yYWdlVXBkYXRlcy4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2lu
dGVyTG9jay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjNjNWUwYmMzZTg2NmU2NDExNjNlNTIxMWRkMjIzMDk1
MTJkNWE2ZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxv
Y2suY3BwCkBAIC0wLDAgKzEsNTggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICog
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVU
T1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAor
ICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcu
aCIKKyNpbmNsdWRlICJQb2ludGVyTG9jay5oIgorCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykK
KworbmFtZXNwYWNlIFdlYkNvcmUgeworCitQb2ludGVyTG9jazo6UG9pbnRlckxvY2soKQorewor
fQorCitQb2ludGVyTG9jazo6flBvaW50ZXJMb2NrKCkKK3sKK30KKwordm9pZCBQb2ludGVyTG9j
azo6d2Via2l0TG9jayhFbGVtZW50KiB0YXJnZXQsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBz
dWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBmYWlsdXJlQ2FsbGJhY2sp
Cit7CisgICAgLy8gRklYTUU6IEltcGxlbWVudAorfQorCit2b2lkIFBvaW50ZXJMb2NrOjp3ZWJr
aXRVbmxvY2soKQoreworICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQKK30KKworYm9vbCBQb2ludGVy
TG9jazo6d2Via2l0SXNMb2NrZWQoKQoreworICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQKKyAgICBy
ZXR1cm4gZmFsc2U7Cit9CisKK30KKworI2VuZGlmIC8vIEVOQUJMRShQT0lOVEVSX0xPQ0spCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BvaW50ZXJMb2NrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDk1ZTRhMDMwZTk4YTU0M2JiMzI1
MjBhNDFmY2E5YWViNTM4N2ExYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUG9pbnRlckxvY2suaApAQCAtMCwwICsxLDU3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVm
IFBvaW50ZXJMb2NrX2gKKyNkZWZpbmUgUG9pbnRlckxvY2tfaAorCisjaWYgRU5BQkxFKFBPSU5U
RVJfTE9DSykKKworI2luY2x1ZGUgIlZvaWRDYWxsYmFjay5oIgorI2luY2x1ZGUgPHd0Zi9QYXNz
UmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCitjbGFzcyBFbGVtZW50OworCitjbGFzcyBQb2ludGVyTG9jayA6IHB1YmxpYyBSZWZD
b3VudGVkPFBvaW50ZXJMb2NrPiB7CitwdWJsaWM6CisgICAgc3RhdGljIFBhc3NSZWZQdHI8UG9p
bnRlckxvY2s+IGNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBQb2ludGVyTG9jaygpKTsg
fQorCisgICAgflBvaW50ZXJMb2NrKCk7CisKKyAgICB2b2lkIHdlYmtpdExvY2soRWxlbWVudCog
dGFyZ2V0LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVm
UHRyPFZvaWRDYWxsYmFjaz4gZmFpbHVyZUNhbGxiYWNrKTsKKyAgICB2b2lkIHdlYmtpdFVubG9j
aygpOworICAgIGJvb2wgd2Via2l0SXNMb2NrZWQoKTsKKworcHJpdmF0ZToKKyAgICBQb2ludGVy
TG9jaygpOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxF
KFBPSU5URVJfTE9DSykKKworI2VuZGlmIC8vIFBvaW50ZXJMb2NrX2gKKwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9jay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BvaW50ZXJMb2NrLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZjA5ZTM1ZTIxZmVjNjExOGU4YjZjYjk0ZWVh
MWZiMWUyOGExOTBmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2lu
dGVyTG9jay5pZGwKQEAgLTAsMCArMSwzNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBH
b29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
CisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworbW9kdWxlIGNvcmUg
eworCisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgQ29uZGl0aW9uYWw9UE9JTlRFUl9MT0NLLAor
ICAgICAgICBPbWl0Q29uc3RydWN0b3IKKyAgICBdIFBvaW50ZXJMb2NrIHsKKyAgICAgICAgdm9p
ZCB3ZWJraXRMb2NrKGluIEVsZW1lbnQgdGFyZ2V0LCBpbiBbQ2FsbGJhY2ssIE9wdGlvbmFsXSBW
b2lkQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBpbiBbQ2FsbGJhY2ssIE9wdGlvbmFsXSBWb2lk
Q2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsKKyAgICAgICAgdm9pZCB3ZWJraXRVbmxvY2soKTsK
KyAgICAgICAgYm9vbGVhbiB3ZWJraXRJc0xvY2tlZCgpOworICAgIH07CisKK30K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>115038</attachid>
            <date>2011-11-14 15:08:24 -0800</date>
            <delta_ts>2011-11-14 16:30:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-72315-20111114150823.patch</filename>
            <type>text/plain</type>
            <size>18444</size>
            <attacher name="Vincent Scheib">scheib</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTAwMTk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjExODZhNDQxOGQxYTQ1
NDdmODg2MDk4ZjdmZWVhOWVlNTE2ZWJiMi4uMWU2Njk4OWI5NTZmMjRmOGMzOGQ4ZjI4MWQxOWY2
Njk5MWFkOGQwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDExLTExLTE0ICBWaW5j
ZW50IFNjaGVpYiAgPHNjaGVpYkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgTW91c2UgTG9jazog
UmVuYW1pbmcgdG8gJ1BvaW50ZXIgTG9jayc6IE1vdXNlTG9ja2FibGUgdG8gUG9pbnRlckxvY2sK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyMzE1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3Jl
Lmd5cGk6CisgICAgICAgICogcGFnZS9OYXZpZ2F0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TmF2aWdhdG9yOjp3ZWJraXRQb2ludGVyKToKKyAgICAgICAgKiBwYWdlL05hdmlnYXRvci5oOgor
ICAgICAgICAqIHBhZ2UvTmF2aWdhdG9yLmlkbDoKKyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2Nr
LmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvTW91c2VMb2NrYWJsZS5jcHAu
CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9jazo6UG9pbnRlckxvY2spOgorICAgICAgICAo
V2ViQ29yZTo6UG9pbnRlckxvY2s6On5Qb2ludGVyTG9jayk6CisgICAgICAgIChXZWJDb3JlOjpQ
b2ludGVyTG9jazo6d2Via2l0TG9jayk6CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9jazo6
d2Via2l0VW5sb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrOjp3ZWJraXRJc0xv
Y2tlZCk6CisgICAgICAgICogcGFnZS9Qb2ludGVyTG9jay5oOiBSZW5hbWVkIGZyb20gU291cmNl
L1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmguCisgICAgICAgIChXZWJDb3JlOjpQb2ludGVy
TG9jazo6Y3JlYXRlKToKKyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2NrLmlkbDogUmVuYW1lZCBm
cm9tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvTW91c2VMb2NrYWJsZS5pZGwuCisKIDIwMTEtMTEtMTQg
IFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZW1vdmUgdGhlIENT
UzNfRkxFWEJPWCBjb21waWxlIHRpbWUgZmxhZyBhbmQgZW5hYmxlIG9uIGFsbCBwb3J0cwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS5neXBpCmluZGV4IGU4MzA2MWQyYjU5NmY0MTU5ZmE4NzYxNzc5NmUyOTJkM2RmZjcyMjIu
LmQ5ZDA1YzhlNDUyNTUyZDNmYWRhZDdmZGNiZDVlNmE5Njc1NWU0NWMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5
cGkKQEAgLTE0MDUsNyArMTQwNSw2IEBACiAgICAgICAgICAgICAncGFnZS9IaXN0b3J5LmlkbCcs
CiAgICAgICAgICAgICAncGFnZS9Mb2NhdGlvbi5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvTWVt
b3J5SW5mby5pZGwnLAotICAgICAgICAgICAgJ3BhZ2UvTW91c2VMb2NrYWJsZS5pZGwnLAogICAg
ICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9OYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvci5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3JDYWxsYmFjay5pZGwnLApAQCAtMTQxMyw2ICsxNDEyLDcgQEAKICAgICAgICAgICAg
ICdwYWdlL1BlcmZvcm1hbmNlLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZU5h
dmlnYXRpb24uaWRsJywKICAgICAgICAgICAgICdwYWdlL1BlcmZvcm1hbmNlVGltaW5nLmlkbCcs
CisgICAgICAgICAgICAncGFnZS9Qb2ludGVyTG9jay5pZGwnLAogICAgICAgICAgICAgJ3BhZ2Uv
UG9zaXRpb25DYWxsYmFjay5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUG9zaXRpb25FcnJvci5p
ZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUG9zaXRpb25FcnJvckNhbGxiYWNrLmlkbCcsCkBAIC0y
OTYwLDggKzI5NjAsNiBAQAogICAgICAgICAgICAgJ3BhZ2UvTWVtb3J5SW5mby5jcHAnLAogICAg
ICAgICAgICAgJ3BhZ2UvTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5jcHAnLAogICAgICAg
ICAgICAgJ3BhZ2UvTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5oJywKLSAgICAgICAgICAg
ICdwYWdlL01vdXNlTG9ja2FibGUuY3BwJywKLSAgICAgICAgICAgICdwYWdlL01vdXNlTG9ja2Fi
bGUuaCcsCiAgICAgICAgICAgICAncGFnZS9OYXZpZ2F0b3IuY3BwJywKICAgICAgICAgICAgICdw
YWdlL05hdmlnYXRvci5oJywKICAgICAgICAgICAgICdwYWdlL05hdmlnYXRvckJhc2UuY3BwJywK
QEAgLTI5ODMsNiArMjk4MSw4IEBACiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZU5hdmln
YXRpb24uaCcsCiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZVRpbWluZy5jcHAnLAogICAg
ICAgICAgICAgJ3BhZ2UvUGVyZm9ybWFuY2VUaW1pbmcuaCcsCisgICAgICAgICAgICAncGFnZS9Q
b2ludGVyTG9jay5jcHAnLAorICAgICAgICAgICAgJ3BhZ2UvUG9pbnRlckxvY2suaCcsCiAgICAg
ICAgICAgICAncGFnZS9QcmludENvbnRleHQuY3BwJywKICAgICAgICAgICAgICdwYWdlL1NjcmVl
bi5jcHAnLAogICAgICAgICAgICAgJ3BhZ2UvU2NyZWVuLmgnLApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTW91
c2VMb2NrYWJsZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg0M2E3ZTM3ZGIx
NzRjOTYzNWUwYTQ5MDhkODRjY2UwZjU5YjViN2YuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmNw
cAorKysgL2Rldi9udWxsCkBAIC0xLDU4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIu
ICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICog
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJNb3VzZUxvY2thYmxlLmgiCi0KLSNpZiBFTkFCTEUoUE9J
TlRFUl9MT0NLKQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLU1vdXNlTG9ja2FibGU6Ok1vdXNl
TG9ja2FibGUoKQotewotfQotCi1Nb3VzZUxvY2thYmxlOjp+TW91c2VMb2NrYWJsZSgpCi17Ci19
Ci0KLXZvaWQgTW91c2VMb2NrYWJsZTo6d2Via2l0TG9jayhFbGVtZW50KiB0YXJnZXQsIFBhc3NS
ZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8Vm9pZENhbGxi
YWNrPiBmYWlsdXJlQ2FsbGJhY2spCi17Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudAotfQotCi12
b2lkIE1vdXNlTG9ja2FibGU6OndlYmtpdFVubG9jaygpCi17Ci0gICAgLy8gRklYTUU6IEltcGxl
bWVudAotfQotCi1ib29sIE1vdXNlTG9ja2FibGU6OndlYmtpdElzTG9ja2VkKCkKLXsKLSAgICAv
LyBGSVhNRTogSW1wbGVtZW50Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCi19Ci0KLSNlbmRpZiAv
LyBFTkFCTEUoUE9JTlRFUl9MT0NLKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9N
b3VzZUxvY2thYmxlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODUyMjA4ODllZjNhYmE0MjY0ODIyMjNhOGQyZmI2
NTQwMjgxZTRjZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaAorKysgL2Rldi9udWxsCkBAIC0x
LDU3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFO
WQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwot
ICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgTW91c2VMb2NrYWJsZV9oCi0jZGVm
aW5lIE1vdXNlTG9ja2FibGVfaAotCi0jaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKLQotI2luY2x1
ZGUgIlZvaWRDYWxsYmFjay5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBFbGVt
ZW50OwotCi1jbGFzcyBNb3VzZUxvY2thYmxlIDogcHVibGljIFJlZkNvdW50ZWQ8TW91c2VMb2Nr
YWJsZT4gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPE1vdXNlTG9ja2FibGU+IGNy
ZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBNb3VzZUxvY2thYmxlKCkpOyB9Ci0KLSAgICB+
TW91c2VMb2NrYWJsZSgpOwotCi0gICAgdm9pZCB3ZWJraXRMb2NrKEVsZW1lbnQqIHRhcmdldCwg
UGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxWb2lk
Q2FsbGJhY2s+IGZhaWx1cmVDYWxsYmFjayk7Ci0gICAgdm9pZCB3ZWJraXRVbmxvY2soKTsKLSAg
ICBib29sIHdlYmtpdElzTG9ja2VkKCk7Ci0KLXByaXZhdGU6Ci0gICAgTW91c2VMb2NrYWJsZSgp
OwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFBPSU5U
RVJfTE9DSykKLQotI2VuZGlmIC8vIE1vdXNlTG9ja2FibGVfaAotCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9N
b3VzZUxvY2thYmxlLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGVhMTZkMjhj
N2YyNzMwNzMyZGVlNzM0NzY5ZGIzZjVkZGNmOWNhYy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUu
aWRsCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
Mi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0g
KiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotbW9kdWxl
IGNvcmUgewotCi0gICAgaW50ZXJmYWNlIFsKLSAgICAgICAgQ29uZGl0aW9uYWw9UE9JTlRFUl9M
T0NLLAotICAgICAgICBPbWl0Q29uc3RydWN0b3IKLSAgICBdIE1vdXNlTG9ja2FibGUgewotICAg
ICAgICB2b2lkIHdlYmtpdExvY2soaW4gRWxlbWVudCB0YXJnZXQsIGluIFtDYWxsYmFjaywgT3B0
aW9uYWxdIFZvaWRDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIGluIFtDYWxsYmFjaywgT3B0aW9u
YWxdIFZvaWRDYWxsYmFjayBmYWlsdXJlQ2FsbGJhY2spOwotICAgICAgICB2b2lkIHdlYmtpdFVu
bG9jaygpOwotICAgICAgICBib29sZWFuIHdlYmtpdElzTG9ja2VkKCk7Ci0gICAgfTsKLQotfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9OYXZpZ2F0b3IuY3BwCmluZGV4IDU3ZDM4ZmYwMzQ4MjQzZTRhYzQ1MDBjYTEw
ZTk0ZTcwYWE1ZWMxYzUuLmNjZmJmYjljYzg0OTcyN2M0MTdlMmZiODE0YzQ0NWQxY2E5ZTExYjYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKICNpbmNsdWRl
ICJGcmFtZUxvYWRlci5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyQ2xpZW50LmgiCiAjaW5jbHVk
ZSAiR2VvbG9jYXRpb24uaCIKLSNpbmNsdWRlICJNb3VzZUxvY2thYmxlLmgiCisjaW5jbHVkZSAi
UG9pbnRlckxvY2suaCIKICNpbmNsdWRlICJLVVJMLmgiCiAjaW5jbHVkZSAiTGFuZ3VhZ2UuaCIK
ICNpbmNsdWRlICJQYWdlLmgiCkBAIC0xNzIsMTAgKzE3MiwxMCBAQCBHZW9sb2NhdGlvbiogTmF2
aWdhdG9yOjpnZW9sb2NhdGlvbigpIGNvbnN0CiB9CiAKICNpZiBFTkFCTEUoUE9JTlRFUl9MT0NL
KQotTW91c2VMb2NrYWJsZSogTmF2aWdhdG9yOjp3ZWJraXRQb2ludGVyKCkgY29uc3QKK1BvaW50
ZXJMb2NrKiBOYXZpZ2F0b3I6OndlYmtpdFBvaW50ZXIoKSBjb25zdAogewogICAgIGlmICghbV9w
b2ludGVyKQotICAgICAgICBtX3BvaW50ZXIgPSBNb3VzZUxvY2thYmxlOjpjcmVhdGUoKTsKKyAg
ICAgICAgbV9wb2ludGVyID0gUG9pbnRlckxvY2s6OmNyZWF0ZSgpOwogICAgIHJldHVybiBtX3Bv
aW50ZXIuZ2V0KCk7CiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
TmF2aWdhdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5oCmluZGV4IGRhZjA5
ZDc5NjdlNzUzYjEzYTc1YjZkZjJmZjkxNzhlODc3ZmRkODYuLjQ5YzU0ODhjNWIyMzhkMDZhZmI3
ZTU0MWRhNWU5MjE5ZTM2YTM3ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2
aWdhdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuaApAQCAtMzIsNyAr
MzIsNyBAQCBjbGFzcyBET01NaW1lVHlwZUFycmF5OwogY2xhc3MgRE9NUGx1Z2luQXJyYXk7CiBj
bGFzcyBGcmFtZTsKIGNsYXNzIEdlb2xvY2F0aW9uOwotY2xhc3MgTW91c2VMb2NrYWJsZTsKK2Ns
YXNzIFBvaW50ZXJMb2NrOwogY2xhc3MgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjazsK
IGNsYXNzIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIFBsdWdpbkRh
dGE7CkBAIC02MCw3ICs2MCw3IEBAIHB1YmxpYzoKICAgICBHZW9sb2NhdGlvbiogZ2VvbG9jYXRp
b24oKSBjb25zdDsKIAogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0gICAgTW91c2VMb2NrYWJs
ZSogd2Via2l0UG9pbnRlcigpIGNvbnN0OworICAgIFBvaW50ZXJMb2NrKiB3ZWJraXRQb2ludGVy
KCkgY29uc3Q7CiAjZW5kaWYKIAogICAgIC8vIFJlbGlucXVpc2hlcyB0aGUgc3RvcmFnZSBsb2Nr
LCBpZiBvbmUgZXhpc3RzLgpAQCAtODEsNyArODEsNyBAQCBwcml2YXRlOgogICAgIG11dGFibGUg
UmVmUHRyPERPTU1pbWVUeXBlQXJyYXk+IG1fbWltZVR5cGVzOwogICAgIG11dGFibGUgUmVmUHRy
PEdlb2xvY2F0aW9uPiBtX2dlb2xvY2F0aW9uOwogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0g
ICAgbXV0YWJsZSBSZWZQdHI8TW91c2VMb2NrYWJsZT4gbV9wb2ludGVyOworICAgIG11dGFibGUg
UmVmUHRyPFBvaW50ZXJMb2NrPiBtX3BvaW50ZXI7CiAjZW5kaWYKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
TmF2aWdhdG9yLmlkbAppbmRleCA2NTkxYWJlNWJhMWZlNDI1NGNlMzVmM2Y4M2MzZmE0NmU2OWI0
NTY3Li43MzRlNzQyYmY4YzFlYTdhMTQ2ZWUwMDM2MTc5ZDc4MzNkN2VkOGIxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9OYXZpZ2F0b3IuaWRsCkBAIC00NCw5ICs0NCw3IEBAIG1vZHVsZSB3aW5kb3cgewogICAg
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0VuYWJsZWRBdFJ1bnRpbWVdIEdlb2xvY2F0aW9uIGdl
b2xvY2F0aW9uOwogI2VuZGlmCiAKLSNpZiBkZWZpbmVkKEVOQUJMRV9QT0lOVEVSX0xPQ0spICYm
IEVOQUJMRV9QT0lOVEVSX0xPQ0sKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFbmFibGVk
QXRSdW50aW1lXSBNb3VzZUxvY2thYmxlIHdlYmtpdFBvaW50ZXI7Ci0jZW5kaWYKKyAgICAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIFtDb25kaXRpb25hbD1QT0lOVEVSX0xPQ0ssRW5hYmxlZEF0UnVu
dGltZV0gUG9pbnRlckxvY2sgd2Via2l0UG9pbnRlcjsKIAogICAgICAgICB2b2lkIGdldFN0b3Jh
Z2VVcGRhdGVzKCk7IC8vIEZJWE1FOiBSZW1vdmUgdGhpcyBtZXRob2Qgb3IgcmVuYW1lIHRvIHlp
ZWxkRm9yU3RvcmFnZVVwZGF0ZXMuCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UG9pbnRlckxvY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9jay5jcHAKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uZjNjNWUwYmMzZTg2NmU2NDExNjNlNTIxMWRkMjIzMDk1MTJkNWE2ZAotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2suY3BwCkBAIC0wLDAg
KzEsNTggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQor
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICog
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
IE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJQ
b2ludGVyTG9jay5oIgorCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKKworbmFtZXNwYWNlIFdl
YkNvcmUgeworCitQb2ludGVyTG9jazo6UG9pbnRlckxvY2soKQoreworfQorCitQb2ludGVyTG9j
azo6flBvaW50ZXJMb2NrKCkKK3sKK30KKwordm9pZCBQb2ludGVyTG9jazo6d2Via2l0TG9jayhF
bGVtZW50KiB0YXJnZXQsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ss
IFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBmYWlsdXJlQ2FsbGJhY2spCit7CisgICAgLy8gRklY
TUU6IEltcGxlbWVudAorfQorCit2b2lkIFBvaW50ZXJMb2NrOjp3ZWJraXRVbmxvY2soKQorewor
ICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQKK30KKworYm9vbCBQb2ludGVyTG9jazo6d2Via2l0SXNM
b2NrZWQoKQoreworICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQKKyAgICByZXR1cm4gZmFsc2U7Cit9
CisKK30KKworI2VuZGlmIC8vIEVOQUJMRShQT0lOVEVSX0xPQ0spCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50
ZXJMb2NrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uMDk1ZTRhMDMwZTk4YTU0M2JiMzI1MjBhNDFmY2E5YWViNTM4
N2ExYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2su
aApAQCAtMCwwICsxLDU3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
IEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFBvaW50ZXJMb2NrX2gK
KyNkZWZpbmUgUG9pbnRlckxvY2tfaAorCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKKworI2lu
Y2x1ZGUgIlZvaWRDYWxsYmFjay5oIgorI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5j
bHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBF
bGVtZW50OworCitjbGFzcyBQb2ludGVyTG9jayA6IHB1YmxpYyBSZWZDb3VudGVkPFBvaW50ZXJM
b2NrPiB7CitwdWJsaWM6CisgICAgc3RhdGljIFBhc3NSZWZQdHI8UG9pbnRlckxvY2s+IGNyZWF0
ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBQb2ludGVyTG9jaygpKTsgfQorCisgICAgflBvaW50
ZXJMb2NrKCk7CisKKyAgICB2b2lkIHdlYmtpdExvY2soRWxlbWVudCogdGFyZ2V0LCBQYXNzUmVm
UHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFj
az4gZmFpbHVyZUNhbGxiYWNrKTsKKyAgICB2b2lkIHdlYmtpdFVubG9jaygpOworICAgIGJvb2wg
d2Via2l0SXNMb2NrZWQoKTsKKworcHJpdmF0ZToKKyAgICBQb2ludGVyTG9jaygpOworfTsKKwor
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFBPSU5URVJfTE9DSykK
KworI2VuZGlmIC8vIFBvaW50ZXJMb2NrX2gKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGFnZS9Qb2ludGVyTG9jay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrLmlk
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5kZjA5ZTM1ZTIxZmVjNjExOGU4YjZjYjk0ZWVhMWZiMWUyOGExOTBmCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9jay5pZGwKQEAg
LTAsMCArMSwzNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQg
QU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworbW9kdWxlIGNvcmUgeworCisgICAgaW50ZXJm
YWNlIFsKKyAgICAgICAgQ29uZGl0aW9uYWw9UE9JTlRFUl9MT0NLLAorICAgICAgICBPbWl0Q29u
c3RydWN0b3IKKyAgICBdIFBvaW50ZXJMb2NrIHsKKyAgICAgICAgdm9pZCB3ZWJraXRMb2NrKGlu
IEVsZW1lbnQgdGFyZ2V0LCBpbiBbQ2FsbGJhY2ssIE9wdGlvbmFsXSBWb2lkQ2FsbGJhY2sgc3Vj
Y2Vzc0NhbGxiYWNrLCBpbiBbQ2FsbGJhY2ssIE9wdGlvbmFsXSBWb2lkQ2FsbGJhY2sgZmFpbHVy
ZUNhbGxiYWNrKTsKKyAgICAgICAgdm9pZCB3ZWJraXRVbmxvY2soKTsKKyAgICAgICAgYm9vbGVh
biB3ZWJraXRJc0xvY2tlZCgpOworICAgIH07CisKK30K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>115054</attachid>
            <date>2011-11-14 16:30:11 -0800</date>
            <delta_ts>2011-11-15 11:10:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-72315-20111114163005.patch</filename>
            <type>text/plain</type>
            <size>18445</size>
            <attacher name="Vincent Scheib">scheib</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTAwMTk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjExODZhNDQxOGQxYTQ1
NDdmODg2MDk4ZjdmZWVhOWVlNTE2ZWJiMi4uMWU2Njk4OWI5NTZmMjRmOGMzOGQ4ZjI4MWQxOWY2
Njk5MWFkOGQwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDExLTExLTE0ICBWaW5j
ZW50IFNjaGVpYiAgPHNjaGVpYkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgTW91c2UgTG9jazog
UmVuYW1pbmcgdG8gJ1BvaW50ZXIgTG9jayc6IE1vdXNlTG9ja2FibGUgdG8gUG9pbnRlckxvY2sK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyMzE1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3Jl
Lmd5cGk6CisgICAgICAgICogcGFnZS9OYXZpZ2F0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TmF2aWdhdG9yOjp3ZWJraXRQb2ludGVyKToKKyAgICAgICAgKiBwYWdlL05hdmlnYXRvci5oOgor
ICAgICAgICAqIHBhZ2UvTmF2aWdhdG9yLmlkbDoKKyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2Nr
LmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvTW91c2VMb2NrYWJsZS5jcHAu
CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9jazo6UG9pbnRlckxvY2spOgorICAgICAgICAo
V2ViQ29yZTo6UG9pbnRlckxvY2s6On5Qb2ludGVyTG9jayk6CisgICAgICAgIChXZWJDb3JlOjpQ
b2ludGVyTG9jazo6d2Via2l0TG9jayk6CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9jazo6
d2Via2l0VW5sb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrOjp3ZWJraXRJc0xv
Y2tlZCk6CisgICAgICAgICogcGFnZS9Qb2ludGVyTG9jay5oOiBSZW5hbWVkIGZyb20gU291cmNl
L1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmguCisgICAgICAgIChXZWJDb3JlOjpQb2ludGVy
TG9jazo6Y3JlYXRlKToKKyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2NrLmlkbDogUmVuYW1lZCBm
cm9tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvTW91c2VMb2NrYWJsZS5pZGwuCisKIDIwMTEtMTEtMTQg
IFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZW1vdmUgdGhlIENT
UzNfRkxFWEJPWCBjb21waWxlIHRpbWUgZmxhZyBhbmQgZW5hYmxlIG9uIGFsbCBwb3J0cwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS5neXBpCmluZGV4IGU4MzA2MWQyYjU5NmY0MTU5ZmE4NzYxNzc5NmUyOTJkM2RmZjcyMjIu
LmQ5ZDA1YzhlNDUyNTUyZDNmYWRhZDdmZGNiZDVlNmE5Njc1NWU0NWMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5
cGkKQEAgLTE0MDUsNyArMTQwNSw2IEBACiAgICAgICAgICAgICAncGFnZS9IaXN0b3J5LmlkbCcs
CiAgICAgICAgICAgICAncGFnZS9Mb2NhdGlvbi5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvTWVt
b3J5SW5mby5pZGwnLAotICAgICAgICAgICAgJ3BhZ2UvTW91c2VMb2NrYWJsZS5pZGwnLAogICAg
ICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9OYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvci5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3JDYWxsYmFjay5pZGwnLApAQCAtMTQxMyw2ICsxNDEyLDcgQEAKICAgICAgICAgICAg
ICdwYWdlL1BlcmZvcm1hbmNlLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZU5h
dmlnYXRpb24uaWRsJywKICAgICAgICAgICAgICdwYWdlL1BlcmZvcm1hbmNlVGltaW5nLmlkbCcs
CisgICAgICAgICAgICAncGFnZS9Qb2ludGVyTG9jay5pZGwnLAogICAgICAgICAgICAgJ3BhZ2Uv
UG9zaXRpb25DYWxsYmFjay5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUG9zaXRpb25FcnJvci5p
ZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUG9zaXRpb25FcnJvckNhbGxiYWNrLmlkbCcsCkBAIC0y
OTYwLDggKzI5NjAsNiBAQAogICAgICAgICAgICAgJ3BhZ2UvTWVtb3J5SW5mby5jcHAnLAogICAg
ICAgICAgICAgJ3BhZ2UvTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5jcHAnLAogICAgICAg
ICAgICAgJ3BhZ2UvTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5oJywKLSAgICAgICAgICAg
ICdwYWdlL01vdXNlTG9ja2FibGUuY3BwJywKLSAgICAgICAgICAgICdwYWdlL01vdXNlTG9ja2Fi
bGUuaCcsCiAgICAgICAgICAgICAncGFnZS9OYXZpZ2F0b3IuY3BwJywKICAgICAgICAgICAgICdw
YWdlL05hdmlnYXRvci5oJywKICAgICAgICAgICAgICdwYWdlL05hdmlnYXRvckJhc2UuY3BwJywK
QEAgLTI5ODMsNiArMjk4MSw4IEBACiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZU5hdmln
YXRpb24uaCcsCiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZVRpbWluZy5jcHAnLAogICAg
ICAgICAgICAgJ3BhZ2UvUGVyZm9ybWFuY2VUaW1pbmcuaCcsCisgICAgICAgICAgICAncGFnZS9Q
b2ludGVyTG9jay5jcHAnLAorICAgICAgICAgICAgJ3BhZ2UvUG9pbnRlckxvY2suaCcsCiAgICAg
ICAgICAgICAncGFnZS9QcmludENvbnRleHQuY3BwJywKICAgICAgICAgICAgICdwYWdlL1NjcmVl
bi5jcHAnLAogICAgICAgICAgICAgJ3BhZ2UvU2NyZWVuLmgnLApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTW91
c2VMb2NrYWJsZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg0M2E3ZTM3ZGIx
NzRjOTYzNWUwYTQ5MDhkODRjY2UwZjU5YjViN2YuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmNw
cAorKysgL2Rldi9udWxsCkBAIC0xLDU4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIu
ICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICog
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJNb3VzZUxvY2thYmxlLmgiCi0KLSNpZiBFTkFCTEUoUE9J
TlRFUl9MT0NLKQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLU1vdXNlTG9ja2FibGU6Ok1vdXNl
TG9ja2FibGUoKQotewotfQotCi1Nb3VzZUxvY2thYmxlOjp+TW91c2VMb2NrYWJsZSgpCi17Ci19
Ci0KLXZvaWQgTW91c2VMb2NrYWJsZTo6d2Via2l0TG9jayhFbGVtZW50KiB0YXJnZXQsIFBhc3NS
ZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8Vm9pZENhbGxi
YWNrPiBmYWlsdXJlQ2FsbGJhY2spCi17Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudAotfQotCi12
b2lkIE1vdXNlTG9ja2FibGU6OndlYmtpdFVubG9jaygpCi17Ci0gICAgLy8gRklYTUU6IEltcGxl
bWVudAotfQotCi1ib29sIE1vdXNlTG9ja2FibGU6OndlYmtpdElzTG9ja2VkKCkKLXsKLSAgICAv
LyBGSVhNRTogSW1wbGVtZW50Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCi19Ci0KLSNlbmRpZiAv
LyBFTkFCTEUoUE9JTlRFUl9MT0NLKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9N
b3VzZUxvY2thYmxlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODUyMjA4ODllZjNhYmE0MjY0ODIyMjNhOGQyZmI2
NTQwMjgxZTRjZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaAorKysgL2Rldi9udWxsCkBAIC0x
LDU3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFO
WQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwot
ICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgTW91c2VMb2NrYWJsZV9oCi0jZGVm
aW5lIE1vdXNlTG9ja2FibGVfaAotCi0jaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKLQotI2luY2x1
ZGUgIlZvaWRDYWxsYmFjay5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBFbGVt
ZW50OwotCi1jbGFzcyBNb3VzZUxvY2thYmxlIDogcHVibGljIFJlZkNvdW50ZWQ8TW91c2VMb2Nr
YWJsZT4gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPE1vdXNlTG9ja2FibGU+IGNy
ZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBNb3VzZUxvY2thYmxlKCkpOyB9Ci0KLSAgICB+
TW91c2VMb2NrYWJsZSgpOwotCi0gICAgdm9pZCB3ZWJraXRMb2NrKEVsZW1lbnQqIHRhcmdldCwg
UGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxWb2lk
Q2FsbGJhY2s+IGZhaWx1cmVDYWxsYmFjayk7Ci0gICAgdm9pZCB3ZWJraXRVbmxvY2soKTsKLSAg
ICBib29sIHdlYmtpdElzTG9ja2VkKCk7Ci0KLXByaXZhdGU6Ci0gICAgTW91c2VMb2NrYWJsZSgp
OwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFBPSU5U
RVJfTE9DSykKLQotI2VuZGlmIC8vIE1vdXNlTG9ja2FibGVfaAotCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9N
b3VzZUxvY2thYmxlLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGVhMTZkMjhj
N2YyNzMwNzMyZGVlNzM0NzY5ZGIzZjVkZGNmOWNhYy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUu
aWRsCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
Mi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0g
KiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotbW9kdWxl
IGNvcmUgewotCi0gICAgaW50ZXJmYWNlIFsKLSAgICAgICAgQ29uZGl0aW9uYWw9UE9JTlRFUl9M
T0NLLAotICAgICAgICBPbWl0Q29uc3RydWN0b3IKLSAgICBdIE1vdXNlTG9ja2FibGUgewotICAg
ICAgICB2b2lkIHdlYmtpdExvY2soaW4gRWxlbWVudCB0YXJnZXQsIGluIFtDYWxsYmFjaywgT3B0
aW9uYWxdIFZvaWRDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIGluIFtDYWxsYmFjaywgT3B0aW9u
YWxdIFZvaWRDYWxsYmFjayBmYWlsdXJlQ2FsbGJhY2spOwotICAgICAgICB2b2lkIHdlYmtpdFVu
bG9jaygpOwotICAgICAgICBib29sZWFuIHdlYmtpdElzTG9ja2VkKCk7Ci0gICAgfTsKLQotfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9OYXZpZ2F0b3IuY3BwCmluZGV4IDU3ZDM4ZmYwMzQ4MjQzZTRhYzQ1MDBjYTEw
ZTk0ZTcwYWE1ZWMxYzUuLmNjZmJmYjljYzg0OTcyN2M0MTdlMmZiODE0YzQ0NWQxY2E5ZTExYjYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKICNpbmNsdWRl
ICJGcmFtZUxvYWRlci5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyQ2xpZW50LmgiCiAjaW5jbHVk
ZSAiR2VvbG9jYXRpb24uaCIKLSNpbmNsdWRlICJNb3VzZUxvY2thYmxlLmgiCisjaW5jbHVkZSAi
UG9pbnRlckxvY2suaCIKICNpbmNsdWRlICJLVVJMLmgiCiAjaW5jbHVkZSAiTGFuZ3VhZ2UuaCIK
ICNpbmNsdWRlICJQYWdlLmgiCkBAIC0xNzIsMTAgKzE3MiwxMCBAQCBHZW9sb2NhdGlvbiogTmF2
aWdhdG9yOjpnZW9sb2NhdGlvbigpIGNvbnN0CiB9CiAKICNpZiBFTkFCTEUoUE9JTlRFUl9MT0NL
KQotTW91c2VMb2NrYWJsZSogTmF2aWdhdG9yOjp3ZWJraXRQb2ludGVyKCkgY29uc3QKK1BvaW50
ZXJMb2NrKiBOYXZpZ2F0b3I6OndlYmtpdFBvaW50ZXIoKSBjb25zdAogewogICAgIGlmICghbV9w
b2ludGVyKQotICAgICAgICBtX3BvaW50ZXIgPSBNb3VzZUxvY2thYmxlOjpjcmVhdGUoKTsKKyAg
ICAgICAgbV9wb2ludGVyID0gUG9pbnRlckxvY2s6OmNyZWF0ZSgpOwogICAgIHJldHVybiBtX3Bv
aW50ZXIuZ2V0KCk7CiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
TmF2aWdhdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5oCmluZGV4IGRhZjA5
ZDc5NjdlNzUzYjEzYTc1YjZkZjJmZjkxNzhlODc3ZmRkODYuLjQ5YzU0ODhjNWIyMzhkMDZhZmI3
ZTU0MWRhNWU5MjE5ZTM2YTM3ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2
aWdhdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuaApAQCAtMzIsNyAr
MzIsNyBAQCBjbGFzcyBET01NaW1lVHlwZUFycmF5OwogY2xhc3MgRE9NUGx1Z2luQXJyYXk7CiBj
bGFzcyBGcmFtZTsKIGNsYXNzIEdlb2xvY2F0aW9uOwotY2xhc3MgTW91c2VMb2NrYWJsZTsKK2Ns
YXNzIFBvaW50ZXJMb2NrOwogY2xhc3MgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjazsK
IGNsYXNzIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIFBsdWdpbkRh
dGE7CkBAIC02MCw3ICs2MCw3IEBAIHB1YmxpYzoKICAgICBHZW9sb2NhdGlvbiogZ2VvbG9jYXRp
b24oKSBjb25zdDsKIAogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0gICAgTW91c2VMb2NrYWJs
ZSogd2Via2l0UG9pbnRlcigpIGNvbnN0OworICAgIFBvaW50ZXJMb2NrKiB3ZWJraXRQb2ludGVy
KCkgY29uc3Q7CiAjZW5kaWYKIAogICAgIC8vIFJlbGlucXVpc2hlcyB0aGUgc3RvcmFnZSBsb2Nr
LCBpZiBvbmUgZXhpc3RzLgpAQCAtODEsNyArODEsNyBAQCBwcml2YXRlOgogICAgIG11dGFibGUg
UmVmUHRyPERPTU1pbWVUeXBlQXJyYXk+IG1fbWltZVR5cGVzOwogICAgIG11dGFibGUgUmVmUHRy
PEdlb2xvY2F0aW9uPiBtX2dlb2xvY2F0aW9uOwogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0g
ICAgbXV0YWJsZSBSZWZQdHI8TW91c2VMb2NrYWJsZT4gbV9wb2ludGVyOworICAgIG11dGFibGUg
UmVmUHRyPFBvaW50ZXJMb2NrPiBtX3BvaW50ZXI7CiAjZW5kaWYKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
TmF2aWdhdG9yLmlkbAppbmRleCA2NTkxYWJlNWJhMWZlNDI1NGNlMzVmM2Y4M2MzZmE0NmU2OWI0
NTY3Li5iN2VjNWQwMzlmYTIxN2YyNzkxZGExNTk0NzU5NDViOGRiZDM4MmU5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9OYXZpZ2F0b3IuaWRsCkBAIC00NCw5ICs0NCw3IEBAIG1vZHVsZSB3aW5kb3cgewogICAg
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0VuYWJsZWRBdFJ1bnRpbWVdIEdlb2xvY2F0aW9uIGdl
b2xvY2F0aW9uOwogI2VuZGlmCiAKLSNpZiBkZWZpbmVkKEVOQUJMRV9QT0lOVEVSX0xPQ0spICYm
IEVOQUJMRV9QT0lOVEVSX0xPQ0sKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFbmFibGVk
QXRSdW50aW1lXSBNb3VzZUxvY2thYmxlIHdlYmtpdFBvaW50ZXI7Ci0jZW5kaWYKKyAgICAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIFtDb25kaXRpb25hbD1QT0lOVEVSX0xPQ0ssIEVuYWJsZWRBdFJ1
bnRpbWVdIFBvaW50ZXJMb2NrIHdlYmtpdFBvaW50ZXI7CiAKICAgICAgICAgdm9pZCBnZXRTdG9y
YWdlVXBkYXRlcygpOyAvLyBGSVhNRTogUmVtb3ZlIHRoaXMgbWV0aG9kIG9yIHJlbmFtZSB0byB5
aWVsZEZvclN0b3JhZ2VVcGRhdGVzLgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BvaW50ZXJMb2NrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2suY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmYzYzVlMGJjM2U4NjZlNjQxMTYzZTUyMTFkZDIyMzA5NTEyZDVhNmQKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrLmNwcApAQCAtMCww
ICsxLDU4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6
CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAq
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAi
UG9pbnRlckxvY2suaCIKKworI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworUG9pbnRlckxvY2s6OlBvaW50ZXJMb2NrKCkKK3sKK30KKworUG9pbnRlckxv
Y2s6On5Qb2ludGVyTG9jaygpCit7Cit9CisKK3ZvaWQgUG9pbnRlckxvY2s6OndlYmtpdExvY2so
RWxlbWVudCogdGFyZ2V0LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNr
LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gZmFpbHVyZUNhbGxiYWNrKQoreworICAgIC8vIEZJ
WE1FOiBJbXBsZW1lbnQKK30KKwordm9pZCBQb2ludGVyTG9jazo6d2Via2l0VW5sb2NrKCkKK3sK
KyAgICAvLyBGSVhNRTogSW1wbGVtZW50Cit9CisKK2Jvb2wgUG9pbnRlckxvY2s6OndlYmtpdElz
TG9ja2VkKCkKK3sKKyAgICAvLyBGSVhNRTogSW1wbGVtZW50CisgICAgcmV0dXJuIGZhbHNlOwor
fQorCit9CisKKyNlbmRpZiAvLyBFTkFCTEUoUE9JTlRFUl9MT0NLKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9jay5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2lu
dGVyTG9jay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjA5NWU0YTAzMGU5OGE1NDNiYjMyNTIwYTQxZmNhOWFlYjUz
ODdhMWIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2Nr
LmgKQEAgLTAsMCArMSw1NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMn
JyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBQb2ludGVyTG9ja19o
CisjZGVmaW5lIFBvaW50ZXJMb2NrX2gKKworI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCisKKyNp
bmNsdWRlICJWb2lkQ2FsbGJhY2suaCIKKyNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgorI2lu
Y2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3Mg
RWxlbWVudDsKKworY2xhc3MgUG9pbnRlckxvY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxQb2ludGVy
TG9jaz4geworcHVibGljOgorICAgIHN0YXRpYyBQYXNzUmVmUHRyPFBvaW50ZXJMb2NrPiBjcmVh
dGUoKSB7IHJldHVybiBhZG9wdFJlZihuZXcgUG9pbnRlckxvY2soKSk7IH0KKworICAgIH5Qb2lu
dGVyTG9jaygpOworCisgICAgdm9pZCB3ZWJraXRMb2NrKEVsZW1lbnQqIHRhcmdldCwgUGFzc1Jl
ZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxWb2lkQ2FsbGJh
Y2s+IGZhaWx1cmVDYWxsYmFjayk7CisgICAgdm9pZCB3ZWJraXRVbmxvY2soKTsKKyAgICBib29s
IHdlYmtpdElzTG9ja2VkKCk7CisKK3ByaXZhdGU6CisgICAgUG9pbnRlckxvY2soKTsKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShQT0lOVEVSX0xPQ0sp
CisKKyNlbmRpZiAvLyBQb2ludGVyTG9ja19oCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUG9pbnRlckxvY2suaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9jay5p
ZGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZGYwOWUzNWUyMWZlYzYxMThlOGI2Y2I5NGVlYTFmYjFlMjhhMTkwZgot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2suaWRsCkBA
IC0wLDAgKzEsMzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5E
IEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21vZHVsZSBjb3JlIHsKKworICAgIGludGVy
ZmFjZSBbCisgICAgICAgIENvbmRpdGlvbmFsPVBPSU5URVJfTE9DSywKKyAgICAgICAgT21pdENv
bnN0cnVjdG9yCisgICAgXSBQb2ludGVyTG9jayB7CisgICAgICAgIHZvaWQgd2Via2l0TG9jayhp
biBFbGVtZW50IHRhcmdldCwgaW4gW0NhbGxiYWNrLCBPcHRpb25hbF0gVm9pZENhbGxiYWNrIHN1
Y2Nlc3NDYWxsYmFjaywgaW4gW0NhbGxiYWNrLCBPcHRpb25hbF0gVm9pZENhbGxiYWNrIGZhaWx1
cmVDYWxsYmFjayk7CisgICAgICAgIHZvaWQgd2Via2l0VW5sb2NrKCk7CisgICAgICAgIGJvb2xl
YW4gd2Via2l0SXNMb2NrZWQoKTsKKyAgICB9OworCit9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>115205</attachid>
            <date>2011-11-15 11:10:18 -0800</date>
            <delta_ts>2011-11-15 13:28:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-72315-20111115111016.patch</filename>
            <type>text/plain</type>
            <size>18345</size>
            <attacher name="Vincent Scheib">scheib</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTAwMTk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjExODZhNDQxOGQxYTQ1
NDdmODg2MDk4ZjdmZWVhOWVlNTE2ZWJiMi4uMWU2Njk4OWI5NTZmMjRmOGMzOGQ4ZjI4MWQxOWY2
Njk5MWFkOGQwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDExLTExLTE0ICBWaW5j
ZW50IFNjaGVpYiAgPHNjaGVpYkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgTW91c2UgTG9jazog
UmVuYW1pbmcgdG8gJ1BvaW50ZXIgTG9jayc6IE1vdXNlTG9ja2FibGUgdG8gUG9pbnRlckxvY2sK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyMzE1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3Jl
Lmd5cGk6CisgICAgICAgICogcGFnZS9OYXZpZ2F0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TmF2aWdhdG9yOjp3ZWJraXRQb2ludGVyKToKKyAgICAgICAgKiBwYWdlL05hdmlnYXRvci5oOgor
ICAgICAgICAqIHBhZ2UvTmF2aWdhdG9yLmlkbDoKKyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2Nr
LmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvTW91c2VMb2NrYWJsZS5jcHAu
CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9jazo6UG9pbnRlckxvY2spOgorICAgICAgICAo
V2ViQ29yZTo6UG9pbnRlckxvY2s6On5Qb2ludGVyTG9jayk6CisgICAgICAgIChXZWJDb3JlOjpQ
b2ludGVyTG9jazo6d2Via2l0TG9jayk6CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9jazo6
d2Via2l0VW5sb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrOjp3ZWJraXRJc0xv
Y2tlZCk6CisgICAgICAgICogcGFnZS9Qb2ludGVyTG9jay5oOiBSZW5hbWVkIGZyb20gU291cmNl
L1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmguCisgICAgICAgIChXZWJDb3JlOjpQb2ludGVy
TG9jazo6Y3JlYXRlKToKKyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2NrLmlkbDogUmVuYW1lZCBm
cm9tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvTW91c2VMb2NrYWJsZS5pZGwuCisKIDIwMTEtMTEtMTQg
IFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZW1vdmUgdGhlIENT
UzNfRkxFWEJPWCBjb21waWxlIHRpbWUgZmxhZyBhbmQgZW5hYmxlIG9uIGFsbCBwb3J0cwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS5neXBpCmluZGV4IGU4MzA2MWQyYjU5NmY0MTU5ZmE4NzYxNzc5NmUyOTJkM2RmZjcyMjIu
LmQ5ZDA1YzhlNDUyNTUyZDNmYWRhZDdmZGNiZDVlNmE5Njc1NWU0NWMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5
cGkKQEAgLTE0MDUsNyArMTQwNSw2IEBACiAgICAgICAgICAgICAncGFnZS9IaXN0b3J5LmlkbCcs
CiAgICAgICAgICAgICAncGFnZS9Mb2NhdGlvbi5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvTWVt
b3J5SW5mby5pZGwnLAotICAgICAgICAgICAgJ3BhZ2UvTW91c2VMb2NrYWJsZS5pZGwnLAogICAg
ICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9OYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvci5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3JDYWxsYmFjay5pZGwnLApAQCAtMTQxMyw2ICsxNDEyLDcgQEAKICAgICAgICAgICAg
ICdwYWdlL1BlcmZvcm1hbmNlLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZU5h
dmlnYXRpb24uaWRsJywKICAgICAgICAgICAgICdwYWdlL1BlcmZvcm1hbmNlVGltaW5nLmlkbCcs
CisgICAgICAgICAgICAncGFnZS9Qb2ludGVyTG9jay5pZGwnLAogICAgICAgICAgICAgJ3BhZ2Uv
UG9zaXRpb25DYWxsYmFjay5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUG9zaXRpb25FcnJvci5p
ZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUG9zaXRpb25FcnJvckNhbGxiYWNrLmlkbCcsCkBAIC0y
OTYwLDggKzI5NjAsNiBAQAogICAgICAgICAgICAgJ3BhZ2UvTWVtb3J5SW5mby5jcHAnLAogICAg
ICAgICAgICAgJ3BhZ2UvTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5jcHAnLAogICAgICAg
ICAgICAgJ3BhZ2UvTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5oJywKLSAgICAgICAgICAg
ICdwYWdlL01vdXNlTG9ja2FibGUuY3BwJywKLSAgICAgICAgICAgICdwYWdlL01vdXNlTG9ja2Fi
bGUuaCcsCiAgICAgICAgICAgICAncGFnZS9OYXZpZ2F0b3IuY3BwJywKICAgICAgICAgICAgICdw
YWdlL05hdmlnYXRvci5oJywKICAgICAgICAgICAgICdwYWdlL05hdmlnYXRvckJhc2UuY3BwJywK
QEAgLTI5ODMsNiArMjk4MSw4IEBACiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZU5hdmln
YXRpb24uaCcsCiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZVRpbWluZy5jcHAnLAogICAg
ICAgICAgICAgJ3BhZ2UvUGVyZm9ybWFuY2VUaW1pbmcuaCcsCisgICAgICAgICAgICAncGFnZS9Q
b2ludGVyTG9jay5jcHAnLAorICAgICAgICAgICAgJ3BhZ2UvUG9pbnRlckxvY2suaCcsCiAgICAg
ICAgICAgICAncGFnZS9QcmludENvbnRleHQuY3BwJywKICAgICAgICAgICAgICdwYWdlL1NjcmVl
bi5jcHAnLAogICAgICAgICAgICAgJ3BhZ2UvU2NyZWVuLmgnLApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTW91
c2VMb2NrYWJsZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg0M2E3ZTM3ZGIx
NzRjOTYzNWUwYTQ5MDhkODRjY2UwZjU5YjViN2YuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmNw
cAorKysgL2Rldi9udWxsCkBAIC0xLDU4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIu
ICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICog
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJNb3VzZUxvY2thYmxlLmgiCi0KLSNpZiBFTkFCTEUoUE9J
TlRFUl9MT0NLKQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLU1vdXNlTG9ja2FibGU6Ok1vdXNl
TG9ja2FibGUoKQotewotfQotCi1Nb3VzZUxvY2thYmxlOjp+TW91c2VMb2NrYWJsZSgpCi17Ci19
Ci0KLXZvaWQgTW91c2VMb2NrYWJsZTo6d2Via2l0TG9jayhFbGVtZW50KiB0YXJnZXQsIFBhc3NS
ZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8Vm9pZENhbGxi
YWNrPiBmYWlsdXJlQ2FsbGJhY2spCi17Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudAotfQotCi12
b2lkIE1vdXNlTG9ja2FibGU6OndlYmtpdFVubG9jaygpCi17Ci0gICAgLy8gRklYTUU6IEltcGxl
bWVudAotfQotCi1ib29sIE1vdXNlTG9ja2FibGU6OndlYmtpdElzTG9ja2VkKCkKLXsKLSAgICAv
LyBGSVhNRTogSW1wbGVtZW50Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCi19Ci0KLSNlbmRpZiAv
LyBFTkFCTEUoUE9JTlRFUl9MT0NLKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9N
b3VzZUxvY2thYmxlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODUyMjA4ODllZjNhYmE0MjY0ODIyMjNhOGQyZmI2
NTQwMjgxZTRjZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaAorKysgL2Rldi9udWxsCkBAIC0x
LDU3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFO
WQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwot
ICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgTW91c2VMb2NrYWJsZV9oCi0jZGVm
aW5lIE1vdXNlTG9ja2FibGVfaAotCi0jaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKLQotI2luY2x1
ZGUgIlZvaWRDYWxsYmFjay5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBFbGVt
ZW50OwotCi1jbGFzcyBNb3VzZUxvY2thYmxlIDogcHVibGljIFJlZkNvdW50ZWQ8TW91c2VMb2Nr
YWJsZT4gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPE1vdXNlTG9ja2FibGU+IGNy
ZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBNb3VzZUxvY2thYmxlKCkpOyB9Ci0KLSAgICB+
TW91c2VMb2NrYWJsZSgpOwotCi0gICAgdm9pZCB3ZWJraXRMb2NrKEVsZW1lbnQqIHRhcmdldCwg
UGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxWb2lk
Q2FsbGJhY2s+IGZhaWx1cmVDYWxsYmFjayk7Ci0gICAgdm9pZCB3ZWJraXRVbmxvY2soKTsKLSAg
ICBib29sIHdlYmtpdElzTG9ja2VkKCk7Ci0KLXByaXZhdGU6Ci0gICAgTW91c2VMb2NrYWJsZSgp
OwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFBPSU5U
RVJfTE9DSykKLQotI2VuZGlmIC8vIE1vdXNlTG9ja2FibGVfaAotCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9N
b3VzZUxvY2thYmxlLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGVhMTZkMjhj
N2YyNzMwNzMyZGVlNzM0NzY5ZGIzZjVkZGNmOWNhYy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUu
aWRsCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
Mi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0g
KiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotbW9kdWxl
IGNvcmUgewotCi0gICAgaW50ZXJmYWNlIFsKLSAgICAgICAgQ29uZGl0aW9uYWw9UE9JTlRFUl9M
T0NLLAotICAgICAgICBPbWl0Q29uc3RydWN0b3IKLSAgICBdIE1vdXNlTG9ja2FibGUgewotICAg
ICAgICB2b2lkIHdlYmtpdExvY2soaW4gRWxlbWVudCB0YXJnZXQsIGluIFtDYWxsYmFjaywgT3B0
aW9uYWxdIFZvaWRDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIGluIFtDYWxsYmFjaywgT3B0aW9u
YWxdIFZvaWRDYWxsYmFjayBmYWlsdXJlQ2FsbGJhY2spOwotICAgICAgICB2b2lkIHdlYmtpdFVu
bG9jaygpOwotICAgICAgICBib29sZWFuIHdlYmtpdElzTG9ja2VkKCk7Ci0gICAgfTsKLQotfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9OYXZpZ2F0b3IuY3BwCmluZGV4IDU3ZDM4ZmYwMzQ4MjQzZTRhYzQ1MDBjYTEw
ZTk0ZTcwYWE1ZWMxYzUuLmNjZmJmYjljYzg0OTcyN2M0MTdlMmZiODE0YzQ0NWQxY2E5ZTExYjYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKICNpbmNsdWRl
ICJGcmFtZUxvYWRlci5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyQ2xpZW50LmgiCiAjaW5jbHVk
ZSAiR2VvbG9jYXRpb24uaCIKLSNpbmNsdWRlICJNb3VzZUxvY2thYmxlLmgiCisjaW5jbHVkZSAi
UG9pbnRlckxvY2suaCIKICNpbmNsdWRlICJLVVJMLmgiCiAjaW5jbHVkZSAiTGFuZ3VhZ2UuaCIK
ICNpbmNsdWRlICJQYWdlLmgiCkBAIC0xNzIsMTAgKzE3MiwxMCBAQCBHZW9sb2NhdGlvbiogTmF2
aWdhdG9yOjpnZW9sb2NhdGlvbigpIGNvbnN0CiB9CiAKICNpZiBFTkFCTEUoUE9JTlRFUl9MT0NL
KQotTW91c2VMb2NrYWJsZSogTmF2aWdhdG9yOjp3ZWJraXRQb2ludGVyKCkgY29uc3QKK1BvaW50
ZXJMb2NrKiBOYXZpZ2F0b3I6OndlYmtpdFBvaW50ZXIoKSBjb25zdAogewogICAgIGlmICghbV9w
b2ludGVyKQotICAgICAgICBtX3BvaW50ZXIgPSBNb3VzZUxvY2thYmxlOjpjcmVhdGUoKTsKKyAg
ICAgICAgbV9wb2ludGVyID0gUG9pbnRlckxvY2s6OmNyZWF0ZSgpOwogICAgIHJldHVybiBtX3Bv
aW50ZXIuZ2V0KCk7CiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
TmF2aWdhdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5oCmluZGV4IGRhZjA5
ZDc5NjdlNzUzYjEzYTc1YjZkZjJmZjkxNzhlODc3ZmRkODYuLjQ5YzU0ODhjNWIyMzhkMDZhZmI3
ZTU0MWRhNWU5MjE5ZTM2YTM3ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2
aWdhdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuaApAQCAtMzIsNyAr
MzIsNyBAQCBjbGFzcyBET01NaW1lVHlwZUFycmF5OwogY2xhc3MgRE9NUGx1Z2luQXJyYXk7CiBj
bGFzcyBGcmFtZTsKIGNsYXNzIEdlb2xvY2F0aW9uOwotY2xhc3MgTW91c2VMb2NrYWJsZTsKK2Ns
YXNzIFBvaW50ZXJMb2NrOwogY2xhc3MgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjazsK
IGNsYXNzIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIFBsdWdpbkRh
dGE7CkBAIC02MCw3ICs2MCw3IEBAIHB1YmxpYzoKICAgICBHZW9sb2NhdGlvbiogZ2VvbG9jYXRp
b24oKSBjb25zdDsKIAogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0gICAgTW91c2VMb2NrYWJs
ZSogd2Via2l0UG9pbnRlcigpIGNvbnN0OworICAgIFBvaW50ZXJMb2NrKiB3ZWJraXRQb2ludGVy
KCkgY29uc3Q7CiAjZW5kaWYKIAogICAgIC8vIFJlbGlucXVpc2hlcyB0aGUgc3RvcmFnZSBsb2Nr
LCBpZiBvbmUgZXhpc3RzLgpAQCAtODEsNyArODEsNyBAQCBwcml2YXRlOgogICAgIG11dGFibGUg
UmVmUHRyPERPTU1pbWVUeXBlQXJyYXk+IG1fbWltZVR5cGVzOwogICAgIG11dGFibGUgUmVmUHRy
PEdlb2xvY2F0aW9uPiBtX2dlb2xvY2F0aW9uOwogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0g
ICAgbXV0YWJsZSBSZWZQdHI8TW91c2VMb2NrYWJsZT4gbV9wb2ludGVyOworICAgIG11dGFibGUg
UmVmUHRyPFBvaW50ZXJMb2NrPiBtX3BvaW50ZXI7CiAjZW5kaWYKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
TmF2aWdhdG9yLmlkbAppbmRleCA2NTkxYWJlNWJhMWZlNDI1NGNlMzVmM2Y4M2MzZmE0NmU2OWI0
NTY3Li42ZmU0M2U2NjBhODUwNzMzMTQ4NTNmNTgxNjEzMTdhNmRiZmEyMzg1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9OYXZpZ2F0b3IuaWRsCkBAIC00NSw3ICs0NSw3IEBAIG1vZHVsZSB3aW5kb3cgewogI2Vu
ZGlmCiAKICNpZiBkZWZpbmVkKEVOQUJMRV9QT0lOVEVSX0xPQ0spICYmIEVOQUJMRV9QT0lOVEVS
X0xPQ0sKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFbmFibGVkQXRSdW50aW1lXSBNb3Vz
ZUxvY2thYmxlIHdlYmtpdFBvaW50ZXI7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbRW5h
YmxlZEF0UnVudGltZV0gUG9pbnRlckxvY2sgd2Via2l0UG9pbnRlcjsKICNlbmRpZgogCiAgICAg
ICAgIHZvaWQgZ2V0U3RvcmFnZVVwZGF0ZXMoKTsgLy8gRklYTUU6IFJlbW92ZSB0aGlzIG1ldGhv
ZCBvciByZW5hbWUgdG8geWllbGRGb3JTdG9yYWdlVXBkYXRlcy4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2lu
dGVyTG9jay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjNjNWUwYmMzZTg2NmU2NDExNjNlNTIxMWRkMjIzMDk1
MTJkNWE2ZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxv
Y2suY3BwCkBAIC0wLDAgKzEsNTggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICog
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVU
T1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAor
ICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcu
aCIKKyNpbmNsdWRlICJQb2ludGVyTG9jay5oIgorCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykK
KworbmFtZXNwYWNlIFdlYkNvcmUgeworCitQb2ludGVyTG9jazo6UG9pbnRlckxvY2soKQorewor
fQorCitQb2ludGVyTG9jazo6flBvaW50ZXJMb2NrKCkKK3sKK30KKwordm9pZCBQb2ludGVyTG9j
azo6d2Via2l0TG9jayhFbGVtZW50KiB0YXJnZXQsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBz
dWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBmYWlsdXJlQ2FsbGJhY2sp
Cit7CisgICAgLy8gRklYTUU6IEltcGxlbWVudAorfQorCit2b2lkIFBvaW50ZXJMb2NrOjp3ZWJr
aXRVbmxvY2soKQoreworICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQKK30KKworYm9vbCBQb2ludGVy
TG9jazo6d2Via2l0SXNMb2NrZWQoKQoreworICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQKKyAgICBy
ZXR1cm4gZmFsc2U7Cit9CisKK30KKworI2VuZGlmIC8vIEVOQUJMRShQT0lOVEVSX0xPQ0spCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BvaW50ZXJMb2NrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDk1ZTRhMDMwZTk4YTU0M2JiMzI1
MjBhNDFmY2E5YWViNTM4N2ExYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUG9pbnRlckxvY2suaApAQCAtMCwwICsxLDU3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVm
IFBvaW50ZXJMb2NrX2gKKyNkZWZpbmUgUG9pbnRlckxvY2tfaAorCisjaWYgRU5BQkxFKFBPSU5U
RVJfTE9DSykKKworI2luY2x1ZGUgIlZvaWRDYWxsYmFjay5oIgorI2luY2x1ZGUgPHd0Zi9QYXNz
UmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCitjbGFzcyBFbGVtZW50OworCitjbGFzcyBQb2ludGVyTG9jayA6IHB1YmxpYyBSZWZD
b3VudGVkPFBvaW50ZXJMb2NrPiB7CitwdWJsaWM6CisgICAgc3RhdGljIFBhc3NSZWZQdHI8UG9p
bnRlckxvY2s+IGNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBQb2ludGVyTG9jaygpKTsg
fQorCisgICAgflBvaW50ZXJMb2NrKCk7CisKKyAgICB2b2lkIHdlYmtpdExvY2soRWxlbWVudCog
dGFyZ2V0LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVm
UHRyPFZvaWRDYWxsYmFjaz4gZmFpbHVyZUNhbGxiYWNrKTsKKyAgICB2b2lkIHdlYmtpdFVubG9j
aygpOworICAgIGJvb2wgd2Via2l0SXNMb2NrZWQoKTsKKworcHJpdmF0ZToKKyAgICBQb2ludGVy
TG9jaygpOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxF
KFBPSU5URVJfTE9DSykKKworI2VuZGlmIC8vIFBvaW50ZXJMb2NrX2gKKwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9jay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BvaW50ZXJMb2NrLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZjA5ZTM1ZTIxZmVjNjExOGU4YjZjYjk0ZWVh
MWZiMWUyOGExOTBmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2lu
dGVyTG9jay5pZGwKQEAgLTAsMCArMSwzNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBH
b29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
CisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworbW9kdWxlIGNvcmUg
eworCisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgQ29uZGl0aW9uYWw9UE9JTlRFUl9MT0NLLAor
ICAgICAgICBPbWl0Q29uc3RydWN0b3IKKyAgICBdIFBvaW50ZXJMb2NrIHsKKyAgICAgICAgdm9p
ZCB3ZWJraXRMb2NrKGluIEVsZW1lbnQgdGFyZ2V0LCBpbiBbQ2FsbGJhY2ssIE9wdGlvbmFsXSBW
b2lkQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBpbiBbQ2FsbGJhY2ssIE9wdGlvbmFsXSBWb2lk
Q2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsKKyAgICAgICAgdm9pZCB3ZWJraXRVbmxvY2soKTsK
KyAgICAgICAgYm9vbGVhbiB3ZWJraXRJc0xvY2tlZCgpOworICAgIH07CisKK30K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>115229</attachid>
            <date>2011-11-15 13:28:29 -0800</date>
            <delta_ts>2011-11-15 14:39:10 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-72315-20111115132828.patch</filename>
            <type>text/plain</type>
            <size>18345</size>
            <attacher name="Vincent Scheib">scheib</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTAwMzEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDFmMGEyZjRmNDQ5ZWMy
YmY0NjdiNDEwMmVjNjIzOTg3MWQ4ZjZmZC4uODk3YTVmYmE5YTdjYmRhOTdjNjJkMTgxYjhkZjY4
MWFlZDk1MDZmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDExLTExLTE0ICBWaW5j
ZW50IFNjaGVpYiAgPHNjaGVpYkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgTW91c2UgTG9jazog
UmVuYW1pbmcgdG8gJ1BvaW50ZXIgTG9jayc6IE1vdXNlTG9ja2FibGUgdG8gUG9pbnRlckxvY2sK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyMzE1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgRGltaXRyaSBHbGF6a292LgorCisgICAgICAgICogV2ViQ29y
ZS5neXBpOgorICAgICAgICAqIHBhZ2UvTmF2aWdhdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
Ok5hdmlnYXRvcjo6d2Via2l0UG9pbnRlcik6CisgICAgICAgICogcGFnZS9OYXZpZ2F0b3IuaDoK
KyAgICAgICAgKiBwYWdlL05hdmlnYXRvci5pZGw6CisgICAgICAgICogcGFnZS9Qb2ludGVyTG9j
ay5jcHA6IFJlbmFtZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuY3Bw
LgorICAgICAgICAoV2ViQ29yZTo6UG9pbnRlckxvY2s6OlBvaW50ZXJMb2NrKToKKyAgICAgICAg
KFdlYkNvcmU6OlBvaW50ZXJMb2NrOjp+UG9pbnRlckxvY2spOgorICAgICAgICAoV2ViQ29yZTo6
UG9pbnRlckxvY2s6OndlYmtpdExvY2spOgorICAgICAgICAoV2ViQ29yZTo6UG9pbnRlckxvY2s6
OndlYmtpdFVubG9jayk6CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9jazo6d2Via2l0SXNM
b2NrZWQpOgorICAgICAgICAqIHBhZ2UvUG9pbnRlckxvY2suaDogUmVuYW1lZCBmcm9tIFNvdXJj
ZS9XZWJDb3JlL3BhZ2UvTW91c2VMb2NrYWJsZS5oLgorICAgICAgICAoV2ViQ29yZTo6UG9pbnRl
ckxvY2s6OmNyZWF0ZSk6CisgICAgICAgICogcGFnZS9Qb2ludGVyTG9jay5pZGw6IFJlbmFtZWQg
ZnJvbSBTb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaWRsLgorCiAyMDExLTExLTE1
ICBOYXRlIENoYXBpbiAgPGphcGhldEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0IGlzIG5vdyB0aGUgb25seSBTdWJyZXNvdXJjZUxvYWRlckNsaWVudApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS5neXBpCmluZGV4IGMwMmRmNmM5YmJmNWFlNTZmNzZlNmJkZTQ5N2M4N2YwNWZiNGRiN2Uu
LmNiY2Y1NTdiZjk5MWFmYjI5MWQ5Y2JiZWUzMTI2YjVlZTM1ZWE0ODUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5
cGkKQEAgLTE0MDMsNyArMTQwMyw2IEBACiAgICAgICAgICAgICAncGFnZS9IaXN0b3J5LmlkbCcs
CiAgICAgICAgICAgICAncGFnZS9Mb2NhdGlvbi5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvTWVt
b3J5SW5mby5pZGwnLAotICAgICAgICAgICAgJ3BhZ2UvTW91c2VMb2NrYWJsZS5pZGwnLAogICAg
ICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9OYXZpZ2F0
b3JVc2VyTWVkaWFFcnJvci5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yVXNlck1l
ZGlhRXJyb3JDYWxsYmFjay5pZGwnLApAQCAtMTQxMSw2ICsxNDEwLDcgQEAKICAgICAgICAgICAg
ICdwYWdlL1BlcmZvcm1hbmNlLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZU5h
dmlnYXRpb24uaWRsJywKICAgICAgICAgICAgICdwYWdlL1BlcmZvcm1hbmNlVGltaW5nLmlkbCcs
CisgICAgICAgICAgICAncGFnZS9Qb2ludGVyTG9jay5pZGwnLAogICAgICAgICAgICAgJ3BhZ2Uv
UG9zaXRpb25DYWxsYmFjay5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUG9zaXRpb25FcnJvci5p
ZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUG9zaXRpb25FcnJvckNhbGxiYWNrLmlkbCcsCkBAIC0y
OTU2LDggKzI5NTYsNiBAQAogICAgICAgICAgICAgJ3BhZ2UvTWVtb3J5SW5mby5jcHAnLAogICAg
ICAgICAgICAgJ3BhZ2UvTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5jcHAnLAogICAgICAg
ICAgICAgJ3BhZ2UvTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5oJywKLSAgICAgICAgICAg
ICdwYWdlL01vdXNlTG9ja2FibGUuY3BwJywKLSAgICAgICAgICAgICdwYWdlL01vdXNlTG9ja2Fi
bGUuaCcsCiAgICAgICAgICAgICAncGFnZS9OYXZpZ2F0b3IuY3BwJywKICAgICAgICAgICAgICdw
YWdlL05hdmlnYXRvci5oJywKICAgICAgICAgICAgICdwYWdlL05hdmlnYXRvckJhc2UuY3BwJywK
QEAgLTI5NzksNiArMjk3Nyw4IEBACiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZU5hdmln
YXRpb24uaCcsCiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZVRpbWluZy5jcHAnLAogICAg
ICAgICAgICAgJ3BhZ2UvUGVyZm9ybWFuY2VUaW1pbmcuaCcsCisgICAgICAgICAgICAncGFnZS9Q
b2ludGVyTG9jay5jcHAnLAorICAgICAgICAgICAgJ3BhZ2UvUG9pbnRlckxvY2suaCcsCiAgICAg
ICAgICAgICAncGFnZS9QcmludENvbnRleHQuY3BwJywKICAgICAgICAgICAgICdwYWdlL1NjcmVl
bi5jcHAnLAogICAgICAgICAgICAgJ3BhZ2UvU2NyZWVuLmgnLApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTW91
c2VMb2NrYWJsZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg0M2E3ZTM3ZGIx
NzRjOTYzNWUwYTQ5MDhkODRjY2UwZjU5YjViN2YuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Nb3VzZUxvY2thYmxlLmNw
cAorKysgL2Rldi9udWxsCkBAIC0xLDU4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIw
MTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIu
ICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICog
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJNb3VzZUxvY2thYmxlLmgiCi0KLSNpZiBFTkFCTEUoUE9J
TlRFUl9MT0NLKQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLU1vdXNlTG9ja2FibGU6Ok1vdXNl
TG9ja2FibGUoKQotewotfQotCi1Nb3VzZUxvY2thYmxlOjp+TW91c2VMb2NrYWJsZSgpCi17Ci19
Ci0KLXZvaWQgTW91c2VMb2NrYWJsZTo6d2Via2l0TG9jayhFbGVtZW50KiB0YXJnZXQsIFBhc3NS
ZWZQdHI8Vm9pZENhbGxiYWNrPiBzdWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8Vm9pZENhbGxi
YWNrPiBmYWlsdXJlQ2FsbGJhY2spCi17Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudAotfQotCi12
b2lkIE1vdXNlTG9ja2FibGU6OndlYmtpdFVubG9jaygpCi17Ci0gICAgLy8gRklYTUU6IEltcGxl
bWVudAotfQotCi1ib29sIE1vdXNlTG9ja2FibGU6OndlYmtpdElzTG9ja2VkKCkKLXsKLSAgICAv
LyBGSVhNRTogSW1wbGVtZW50Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCi19Ci0KLSNlbmRpZiAv
LyBFTkFCTEUoUE9JTlRFUl9MT0NLKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9N
b3VzZUxvY2thYmxlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODUyMjA4ODllZjNhYmE0MjY0ODIyMjNhOGQyZmI2
NTQwMjgxZTRjZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaAorKysgL2Rldi9udWxsCkBAIC0x
LDU3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFO
WQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwotICogKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwot
ICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgTW91c2VMb2NrYWJsZV9oCi0jZGVm
aW5lIE1vdXNlTG9ja2FibGVfaAotCi0jaWYgRU5BQkxFKFBPSU5URVJfTE9DSykKLQotI2luY2x1
ZGUgIlZvaWRDYWxsYmFjay5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBFbGVt
ZW50OwotCi1jbGFzcyBNb3VzZUxvY2thYmxlIDogcHVibGljIFJlZkNvdW50ZWQ8TW91c2VMb2Nr
YWJsZT4gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPE1vdXNlTG9ja2FibGU+IGNy
ZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBNb3VzZUxvY2thYmxlKCkpOyB9Ci0KLSAgICB+
TW91c2VMb2NrYWJsZSgpOwotCi0gICAgdm9pZCB3ZWJraXRMb2NrKEVsZW1lbnQqIHRhcmdldCwg
UGFzc1JlZlB0cjxWb2lkQ2FsbGJhY2s+IHN1Y2Nlc3NDYWxsYmFjaywgUGFzc1JlZlB0cjxWb2lk
Q2FsbGJhY2s+IGZhaWx1cmVDYWxsYmFjayk7Ci0gICAgdm9pZCB3ZWJraXRVbmxvY2soKTsKLSAg
ICBib29sIHdlYmtpdElzTG9ja2VkKCk7Ci0KLXByaXZhdGU6Ci0gICAgTW91c2VMb2NrYWJsZSgp
OwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFBPSU5U
RVJfTE9DSykKLQotI2VuZGlmIC8vIE1vdXNlTG9ja2FibGVfaAotCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUuaWRsIGIvU291cmNlL1dlYkNvcmUvcGFnZS9N
b3VzZUxvY2thYmxlLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGVhMTZkMjhj
N2YyNzMwNzMyZGVlNzM0NzY5ZGIzZjVkZGNmOWNhYy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL01vdXNlTG9ja2FibGUu
aWRsCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
Mi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFCi0gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0g
KiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KLSAqIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotbW9kdWxl
IGNvcmUgewotCi0gICAgaW50ZXJmYWNlIFsKLSAgICAgICAgQ29uZGl0aW9uYWw9UE9JTlRFUl9M
T0NLLAotICAgICAgICBPbWl0Q29uc3RydWN0b3IKLSAgICBdIE1vdXNlTG9ja2FibGUgewotICAg
ICAgICB2b2lkIHdlYmtpdExvY2soaW4gRWxlbWVudCB0YXJnZXQsIGluIFtDYWxsYmFjaywgT3B0
aW9uYWxdIFZvaWRDYWxsYmFjayBzdWNjZXNzQ2FsbGJhY2ssIGluIFtDYWxsYmFjaywgT3B0aW9u
YWxdIFZvaWRDYWxsYmFjayBmYWlsdXJlQ2FsbGJhY2spOwotICAgICAgICB2b2lkIHdlYmtpdFVu
bG9jaygpOwotICAgICAgICBib29sZWFuIHdlYmtpdElzTG9ja2VkKCk7Ci0gICAgfTsKLQotfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9OYXZpZ2F0b3IuY3BwCmluZGV4IDU3ZDM4ZmYwMzQ4MjQzZTRhYzQ1MDBjYTEw
ZTk0ZTcwYWE1ZWMxYzUuLmNjZmJmYjljYzg0OTcyN2M0MTdlMmZiODE0YzQ0NWQxY2E5ZTExYjYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5jcHAKQEAgLTMzLDcgKzMzLDcgQEAKICNpbmNsdWRl
ICJGcmFtZUxvYWRlci5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyQ2xpZW50LmgiCiAjaW5jbHVk
ZSAiR2VvbG9jYXRpb24uaCIKLSNpbmNsdWRlICJNb3VzZUxvY2thYmxlLmgiCisjaW5jbHVkZSAi
UG9pbnRlckxvY2suaCIKICNpbmNsdWRlICJLVVJMLmgiCiAjaW5jbHVkZSAiTGFuZ3VhZ2UuaCIK
ICNpbmNsdWRlICJQYWdlLmgiCkBAIC0xNzIsMTAgKzE3MiwxMCBAQCBHZW9sb2NhdGlvbiogTmF2
aWdhdG9yOjpnZW9sb2NhdGlvbigpIGNvbnN0CiB9CiAKICNpZiBFTkFCTEUoUE9JTlRFUl9MT0NL
KQotTW91c2VMb2NrYWJsZSogTmF2aWdhdG9yOjp3ZWJraXRQb2ludGVyKCkgY29uc3QKK1BvaW50
ZXJMb2NrKiBOYXZpZ2F0b3I6OndlYmtpdFBvaW50ZXIoKSBjb25zdAogewogICAgIGlmICghbV9w
b2ludGVyKQotICAgICAgICBtX3BvaW50ZXIgPSBNb3VzZUxvY2thYmxlOjpjcmVhdGUoKTsKKyAg
ICAgICAgbV9wb2ludGVyID0gUG9pbnRlckxvY2s6OmNyZWF0ZSgpOwogICAgIHJldHVybiBtX3Bv
aW50ZXIuZ2V0KCk7CiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
TmF2aWdhdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5oCmluZGV4IGRhZjA5
ZDc5NjdlNzUzYjEzYTc1YjZkZjJmZjkxNzhlODc3ZmRkODYuLjQ5YzU0ODhjNWIyMzhkMDZhZmI3
ZTU0MWRhNWU5MjE5ZTM2YTM3ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2
aWdhdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuaApAQCAtMzIsNyAr
MzIsNyBAQCBjbGFzcyBET01NaW1lVHlwZUFycmF5OwogY2xhc3MgRE9NUGx1Z2luQXJyYXk7CiBj
bGFzcyBGcmFtZTsKIGNsYXNzIEdlb2xvY2F0aW9uOwotY2xhc3MgTW91c2VMb2NrYWJsZTsKK2Ns
YXNzIFBvaW50ZXJMb2NrOwogY2xhc3MgTmF2aWdhdG9yVXNlck1lZGlhRXJyb3JDYWxsYmFjazsK
IGNsYXNzIE5hdmlnYXRvclVzZXJNZWRpYVN1Y2Nlc3NDYWxsYmFjazsKIGNsYXNzIFBsdWdpbkRh
dGE7CkBAIC02MCw3ICs2MCw3IEBAIHB1YmxpYzoKICAgICBHZW9sb2NhdGlvbiogZ2VvbG9jYXRp
b24oKSBjb25zdDsKIAogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0gICAgTW91c2VMb2NrYWJs
ZSogd2Via2l0UG9pbnRlcigpIGNvbnN0OworICAgIFBvaW50ZXJMb2NrKiB3ZWJraXRQb2ludGVy
KCkgY29uc3Q7CiAjZW5kaWYKIAogICAgIC8vIFJlbGlucXVpc2hlcyB0aGUgc3RvcmFnZSBsb2Nr
LCBpZiBvbmUgZXhpc3RzLgpAQCAtODEsNyArODEsNyBAQCBwcml2YXRlOgogICAgIG11dGFibGUg
UmVmUHRyPERPTU1pbWVUeXBlQXJyYXk+IG1fbWltZVR5cGVzOwogICAgIG11dGFibGUgUmVmUHRy
PEdlb2xvY2F0aW9uPiBtX2dlb2xvY2F0aW9uOwogI2lmIEVOQUJMRShQT0lOVEVSX0xPQ0spCi0g
ICAgbXV0YWJsZSBSZWZQdHI8TW91c2VMb2NrYWJsZT4gbV9wb2ludGVyOworICAgIG11dGFibGUg
UmVmUHRyPFBvaW50ZXJMb2NrPiBtX3BvaW50ZXI7CiAjZW5kaWYKIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
TmF2aWdhdG9yLmlkbAppbmRleCA2NTkxYWJlNWJhMWZlNDI1NGNlMzVmM2Y4M2MzZmE0NmU2OWI0
NTY3Li42ZmU0M2U2NjBhODUwNzMzMTQ4NTNmNTgxNjEzMTdhNmRiZmEyMzg1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvci5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9OYXZpZ2F0b3IuaWRsCkBAIC00NSw3ICs0NSw3IEBAIG1vZHVsZSB3aW5kb3cgewogI2Vu
ZGlmCiAKICNpZiBkZWZpbmVkKEVOQUJMRV9QT0lOVEVSX0xPQ0spICYmIEVOQUJMRV9QT0lOVEVS
X0xPQ0sKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFbmFibGVkQXRSdW50aW1lXSBNb3Vz
ZUxvY2thYmxlIHdlYmtpdFBvaW50ZXI7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbRW5h
YmxlZEF0UnVudGltZV0gUG9pbnRlckxvY2sgd2Via2l0UG9pbnRlcjsKICNlbmRpZgogCiAgICAg
ICAgIHZvaWQgZ2V0U3RvcmFnZVVwZGF0ZXMoKTsgLy8gRklYTUU6IFJlbW92ZSB0aGlzIG1ldGhv
ZCBvciByZW5hbWUgdG8geWllbGRGb3JTdG9yYWdlVXBkYXRlcy4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2lu
dGVyTG9jay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjNjNWUwYmMzZTg2NmU2NDExNjNlNTIxMWRkMjIzMDk1
MTJkNWE2ZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxv
Y2suY3BwCkBAIC0wLDAgKzEsNTggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICog
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVU
T1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAor
ICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcu
aCIKKyNpbmNsdWRlICJQb2ludGVyTG9jay5oIgorCisjaWYgRU5BQkxFKFBPSU5URVJfTE9DSykK
KworbmFtZXNwYWNlIFdlYkNvcmUgeworCitQb2ludGVyTG9jazo6UG9pbnRlckxvY2soKQorewor
fQorCitQb2ludGVyTG9jazo6flBvaW50ZXJMb2NrKCkKK3sKK30KKwordm9pZCBQb2ludGVyTG9j
azo6d2Via2l0TG9jayhFbGVtZW50KiB0YXJnZXQsIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBz
dWNjZXNzQ2FsbGJhY2ssIFBhc3NSZWZQdHI8Vm9pZENhbGxiYWNrPiBmYWlsdXJlQ2FsbGJhY2sp
Cit7CisgICAgLy8gRklYTUU6IEltcGxlbWVudAorfQorCit2b2lkIFBvaW50ZXJMb2NrOjp3ZWJr
aXRVbmxvY2soKQoreworICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQKK30KKworYm9vbCBQb2ludGVy
TG9jazo6d2Via2l0SXNMb2NrZWQoKQoreworICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQKKyAgICBy
ZXR1cm4gZmFsc2U7Cit9CisKK30KKworI2VuZGlmIC8vIEVOQUJMRShQT0lOVEVSX0xPQ0spCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BvaW50ZXJMb2NrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDk1ZTRhMDMwZTk4YTU0M2JiMzI1
MjBhNDFmY2E5YWViNTM4N2ExYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvUG9pbnRlckxvY2suaApAQCAtMCwwICsxLDU3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T
RSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorICogQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVm
IFBvaW50ZXJMb2NrX2gKKyNkZWZpbmUgUG9pbnRlckxvY2tfaAorCisjaWYgRU5BQkxFKFBPSU5U
RVJfTE9DSykKKworI2luY2x1ZGUgIlZvaWRDYWxsYmFjay5oIgorI2luY2x1ZGUgPHd0Zi9QYXNz
UmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCitjbGFzcyBFbGVtZW50OworCitjbGFzcyBQb2ludGVyTG9jayA6IHB1YmxpYyBSZWZD
b3VudGVkPFBvaW50ZXJMb2NrPiB7CitwdWJsaWM6CisgICAgc3RhdGljIFBhc3NSZWZQdHI8UG9p
bnRlckxvY2s+IGNyZWF0ZSgpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBQb2ludGVyTG9jaygpKTsg
fQorCisgICAgflBvaW50ZXJMb2NrKCk7CisKKyAgICB2b2lkIHdlYmtpdExvY2soRWxlbWVudCog
dGFyZ2V0LCBQYXNzUmVmUHRyPFZvaWRDYWxsYmFjaz4gc3VjY2Vzc0NhbGxiYWNrLCBQYXNzUmVm
UHRyPFZvaWRDYWxsYmFjaz4gZmFpbHVyZUNhbGxiYWNrKTsKKyAgICB2b2lkIHdlYmtpdFVubG9j
aygpOworICAgIGJvb2wgd2Via2l0SXNMb2NrZWQoKTsKKworcHJpdmF0ZToKKyAgICBQb2ludGVy
TG9jaygpOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxF
KFBPSU5URVJfTE9DSykKKworI2VuZGlmIC8vIFBvaW50ZXJMb2NrX2gKKwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9jay5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BvaW50ZXJMb2NrLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZjA5ZTM1ZTIxZmVjNjExOGU4YjZjYjk0ZWVh
MWZiMWUyOGExOTBmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2lu
dGVyTG9jay5pZGwKQEAgLTAsMCArMSwzNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBH
b29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJF
CisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworbW9kdWxlIGNvcmUg
eworCisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgQ29uZGl0aW9uYWw9UE9JTlRFUl9MT0NLLAor
ICAgICAgICBPbWl0Q29uc3RydWN0b3IKKyAgICBdIFBvaW50ZXJMb2NrIHsKKyAgICAgICAgdm9p
ZCB3ZWJraXRMb2NrKGluIEVsZW1lbnQgdGFyZ2V0LCBpbiBbQ2FsbGJhY2ssIE9wdGlvbmFsXSBW
b2lkQ2FsbGJhY2sgc3VjY2Vzc0NhbGxiYWNrLCBpbiBbQ2FsbGJhY2ssIE9wdGlvbmFsXSBWb2lk
Q2FsbGJhY2sgZmFpbHVyZUNhbGxiYWNrKTsKKyAgICAgICAgdm9pZCB3ZWJraXRVbmxvY2soKTsK
KyAgICAgICAgYm9vbGVhbiB3ZWJraXRJc0xvY2tlZCgpOworICAgIH07CisKK30K
</data>

          </attachment>
      

    </bug>

</bugzilla>