<?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>66393</bug_id>
          
          <creation_ts>2011-08-17 11:40:45 -0700</creation_ts>
          <short_desc>Remove unused Core Animation related classes</short_desc>
          <delta_ts>2011-08-17 12:11:27 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>452428</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2011-08-17 11:40:45 -0700</bug_when>
    <thetext>Remove unused Core Animation related classes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>452429</commentid>
    <comment_count>1</comment_count>
      <attachid>104204</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2011-08-17 11:41:12 -0700</bug_when>
    <thetext>Created attachment 104204
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>452462</commentid>
    <comment_count>2</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2011-08-17 12:11:27 -0700</bug_when>
    <thetext>Committed r93233: &lt;http://trac.webkit.org/changeset/93233&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>104204</attachid>
            <date>2011-08-17 11:41:12 -0700</date>
            <delta_ts>2011-08-17 11:43:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-66393-20110817114110.patch</filename>
            <type>text/plain</type>
            <size>24748</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDkzMjI4KQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDgtMTcgIEFuZGVycyBD
YXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgdW51c2VkIENv
cmUgQW5pbWF0aW9uIHJlbGF0ZWQgY2xhc3NlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjYzOTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIFNoYXJlZC9tYWMvQ29yZUFuaW1hdGlvblJlbmRlcmVyLmg6
IFJlbW92ZWQuCisgICAgICAgICogU2hhcmVkL21hYy9Db3JlQW5pbWF0aW9uUmVuZGVyZXIubW06
IFJlbW92ZWQuCisgICAgICAgICogU2hhcmVkL21hYy9TaGFyZWFibGVTdXJmYWNlLmNwcDogUmVt
b3ZlZC4KKyAgICAgICAgKiBTaGFyZWQvbWFjL1NoYXJlYWJsZVN1cmZhY2UuaDogUmVtb3ZlZC4K
KyAgICAgICAgKiBXZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisKIDIwMTEtMDgt
MTUgIERtaXRyeSBUaXRvdiAgPGRpbWljaEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgRnJhbWVM
b2FkZXJDbGllbnQ6OnRyYW5zZmVyTG9hZGluZ1Jlc291cmNlRnJvbVBhZ2UgZG9lcyBub3QgaGF2
ZSBlbm91Z2ggcGFyYW1ldGVycwpJbmRleDogU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9Db3Jl
QW5pbWF0aW9uUmVuZGVyZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
bWFjL0NvcmVBbmltYXRpb25SZW5kZXJlci5oCShyZXZpc2lvbiA5MzIyMykKKysrIFNvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9tYWMvQ29yZUFuaW1hdGlvblJlbmRlcmVyLmgJKHdvcmtpbmcgY29weSkK
QEAgLTEsNjkgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgQ29yZUFuaW1hdGlvblJlbmRl
cmVyX2gKLSNkZWZpbmUgQ29yZUFuaW1hdGlvblJlbmRlcmVyX2gKLQotI2luY2x1ZGUgPHd0Zi9Q
YXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KLSNpbmNsdWRlIDx3dGYv
UmV0YWluUHRyLmg+Ci0KLU9CSkNfQ0xBU1MgQ0FMYXllcjsKLU9CSkNfQ0xBU1MgQ0FSZW5kZXJl
cjsKLQotdHlwZWRlZiBzdHJ1Y3QgX0NHTENvbnRleHRPYmplY3QqIENHTENvbnRleHRPYmo7Ci0K
LW5hbWVzcGFjZSBXZWJLaXQgewotCi1jbGFzcyBDb3JlQW5pbWF0aW9uUmVuZGVyZXIgOiBwdWJs
aWMgUmVmQ291bnRlZDxDb3JlQW5pbWF0aW9uUmVuZGVyZXI+IHsKLXB1YmxpYzoKLSAgICBjbGFz
cyBDbGllbnQgewotICAgIHB1YmxpYzoKLSAgICAgICAgdmlydHVhbCB+Q2xpZW50KCkgeyB9Ci0g
ICAgICAgIHZpcnR1YWwgdm9pZCByZW5kZXJlckRpZENoYW5nZShDb3JlQW5pbWF0aW9uUmVuZGVy
ZXIqKSA9IDA7Ci0gICAgfTsKLQotICAgIHN0YXRpYyBQYXNzUmVmUHRyPENvcmVBbmltYXRpb25S
ZW5kZXJlcj4gY3JlYXRlKENsaWVudCosIENHTENvbnRleHRPYmosIENBTGF5ZXIgKik7Ci0gICAg
fkNvcmVBbmltYXRpb25SZW5kZXJlcigpOwotCi0gICAgdm9pZCBpbnZhbGlkYXRlKCk7Ci0KLSAg
ICB2b2lkIHNldEJvdW5kcyhDR1JlY3QpOwotICAgIHZvaWQgcmVuZGVyKENGVGltZUludGVydmFs
IGZyYW1lVGltZSwgQ1ZUaW1lU3RhbXAqLCBDRlRpbWVJbnRlcnZhbCYgbmV4dEZyYW1lVGltZSk7
Ci0KLXByaXZhdGU6Ci0gICAgQ29yZUFuaW1hdGlvblJlbmRlcmVyKENsaWVudCosIENHTENvbnRl
eHRPYmosIENBTGF5ZXIgKik7Ci0KLSAgICBzdGF0aWMgdm9pZCByZW5kZXJlckRpZENoYW5nZSh2
b2lkKik7Ci0gICAgdm9pZCByZW5kZXJlckRpZENoYW5nZSgpOwotCi0gICAgQ2xpZW50KiBtX2Ns
aWVudDsKLSAgICBDR0xDb250ZXh0T2JqIG1fY2dsQ29udGV4dDsKLSAgICBSZXRhaW5QdHI8Q0FS
ZW5kZXJlcj4gbV9yZW5kZXJlcjsKLX07ICAgIAotICAgIAotfSAvLyBuYW1lc3BhY2UgV2ViS2l0
Ci0KLSNlbmRpZiAvLyBDb3JlQW5pbWF0aW9uUmVuZGVyZXJfaApJbmRleDogU291cmNlL1dlYktp
dDIvU2hhcmVkL21hYy9Db3JlQW5pbWF0aW9uUmVuZGVyZXIubW0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYktpdDIvU2hhcmVkL21hYy9Db3JlQW5pbWF0aW9uUmVuZGVyZXIubW0JKHJldmlzaW9u
IDkzMjIzKQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9Db3JlQW5pbWF0aW9uUmVuZGVy
ZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTEsMTAwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW1w
b3J0ICJjb25maWcuaCIKLSNpbXBvcnQgIkNvcmVBbmltYXRpb25SZW5kZXJlci5oIgotCi0jaW1w
b3J0IDxXZWJLaXRTeXN0ZW1JbnRlcmZhY2UuaD4KLSNpbXBvcnQgPFF1YXJ0ekNvcmUvUXVhcnR6
Q29yZS5oPgotI2ltcG9ydCA8T3BlbkdML0NHTE1hY3JvLmg+Ci0KLS8vIFRoZSBDR0xNYWNyby5o
IGhlYWRlciBhZGRzIGFuIGltcGxpY2l0IENHTENvbnRleHRPYmogcGFyYW1ldGVyIHRvIGFsbCBP
cGVuR0wgY2FsbHMsCi0vLyB3aGljaCBpcyBnb29kIGJlY2F1c2UgaXQgYWxsb3dzIHVzIHRvIG1h
a2UgT3BlbkdMIGNhbGxzIHdpdGhvdXQgc2F2aW5nIGFuZCByZXN0b3JpbmcgdGhlCi0vLyBjdXJy
ZW50IGNvbnRleHQuIFRoZSBjb250ZXh0IGFyZ3VtZW50IGlzIG5hbWVkICJjZ2xfY3R4IiBieSBk
ZWZhdWx0LCBzbyB3ZSB1c2UgdGhlIG1hY3JvCi0vLyBiZWxvdyB0byBkZWNsYXJlIHRoaXMgdmFy
aWFibGUuCi0jZGVmaW5lIERFQ0xBUkVfR0xfQ09OVEVYVF9WQVJJQUJMRShuYW1lKSBcCi0gICAg
Q0dMQ29udGV4dE9iaiBjZ2xfY3R4ID0gKG5hbWUpCi0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi1Q
YXNzUmVmUHRyPENvcmVBbmltYXRpb25SZW5kZXJlcj4gQ29yZUFuaW1hdGlvblJlbmRlcmVyOjpj
cmVhdGUoQ2xpZW50KiBjbGllbnQsIENHTENvbnRleHRPYmogY2dsQ29udGV4dE9iaiwgQ0FMYXll
ciAqbGF5ZXIpCi17Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBDb3JlQW5pbWF0aW9uUmVuZGVy
ZXIoY2xpZW50LCBjZ2xDb250ZXh0T2JqLCBsYXllcikpOwotfQotCi1Db3JlQW5pbWF0aW9uUmVu
ZGVyZXI6OkNvcmVBbmltYXRpb25SZW5kZXJlcihDbGllbnQqIGNsaWVudCwgQ0dMQ29udGV4dE9i
aiBjZ2xDb250ZXh0T2JqLCBDQUxheWVyICpsYXllcikKLSAgICA6IG1fY2xpZW50KGNsaWVudCkK
LSAgICAsIG1fY2dsQ29udGV4dChjZ2xDb250ZXh0T2JqKQotICAgICwgbV9yZW5kZXJlcihbQ0FS
ZW5kZXJlciByZW5kZXJlcldpdGhDR0xDb250ZXh0Om1fY2dsQ29udGV4dCBvcHRpb25zOm5pbF0p
Ci17Ci0gICAgW21fcmVuZGVyZXIuZ2V0KCkgc2V0TGF5ZXI6bGF5ZXJdOwotCi0gICAgV0tDQVJl
bmRlcmVyQWRkQ2hhbmdlTm90aWZpY2F0aW9uT2JzZXJ2ZXIobV9yZW5kZXJlci5nZXQoKSwgcmVu
ZGVyZXJEaWRDaGFuZ2UsIHRoaXMpOwotfQotCi1Db3JlQW5pbWF0aW9uUmVuZGVyZXI6On5Db3Jl
QW5pbWF0aW9uUmVuZGVyZXIoKQotewotICAgIEFTU0VSVCghbV9jbGllbnQpOwotfQotCi12b2lk
IENvcmVBbmltYXRpb25SZW5kZXJlcjo6c2V0Qm91bmRzKENHUmVjdCBib3VuZHMpCi17Ci0gICAg
W21fcmVuZGVyZXIuZ2V0KCkgc2V0Qm91bmRzOmJvdW5kc107Ci0KLSAgICBbQ0FUcmFuc2FjdGlv
biBiZWdpbl07Ci0gICAgW0NBVHJhbnNhY3Rpb24gc2V0RGlzYWJsZUFjdGlvbnM6WUVTXTsKLSAg
ICBbW21fcmVuZGVyZXIuZ2V0KCkgbGF5ZXJdIHNldEZyYW1lOmJvdW5kc107Ci0gICAgW0NBVHJh
bnNhY3Rpb24gY29tbWl0XTsKLX0KLQotdm9pZCBDb3JlQW5pbWF0aW9uUmVuZGVyZXI6OnJlbmRl
cihDRlRpbWVJbnRlcnZhbCBmcmFtZVRpbWUsIENWVGltZVN0YW1wKiB0aW1lU3RhbXAsIENGVGlt
ZUludGVydmFsJiBuZXh0RnJhbWVUaW1lKQotewotICAgIFttX3JlbmRlcmVyLmdldCgpIGJlZ2lu
RnJhbWVBdFRpbWU6ZnJhbWVUaW1lIHRpbWVTdGFtcDp0aW1lU3RhbXBdOwotICAgIFttX3JlbmRl
cmVyLmdldCgpIHJlbmRlcl07Ci0gICAgbmV4dEZyYW1lVGltZSA9IFttX3JlbmRlcmVyLmdldCgp
IG5leHRGcmFtZVRpbWVdOwotICAgIFttX3JlbmRlcmVyLmdldCgpIGVuZEZyYW1lXTsKLX0KLQot
dm9pZCBDb3JlQW5pbWF0aW9uUmVuZGVyZXI6OmludmFsaWRhdGUoKQotewotICAgIEFTU0VSVCht
X2NsaWVudCk7Ci0KLSAgICBXS0NBUmVuZGVyZXJSZW1vdmVDaGFuZ2VOb3RpZmljYXRpb25PYnNl
cnZlcihtX3JlbmRlcmVyLmdldCgpLCByZW5kZXJlckRpZENoYW5nZSwgdGhpcyk7Ci0gICAgbV9j
bGllbnQgPSAwOwotfQotCi12b2lkIENvcmVBbmltYXRpb25SZW5kZXJlcjo6cmVuZGVyZXJEaWRD
aGFuZ2Uodm9pZCogY29udGV4dCkKLXsKLSAgICBzdGF0aWNfY2FzdDxDb3JlQW5pbWF0aW9uUmVu
ZGVyZXIqPihjb250ZXh0KS0+cmVuZGVyZXJEaWRDaGFuZ2UoKTsKLX0KLQotdm9pZCBDb3JlQW5p
bWF0aW9uUmVuZGVyZXI6OnJlbmRlcmVyRGlkQ2hhbmdlKCkKLXsKLSAgICBBU1NFUlQobV9jbGll
bnQpOwotCi0gICAgbV9jbGllbnQtPnJlbmRlcmVyRGlkQ2hhbmdlKHRoaXMpOwotfQotCi19IC8v
IG5hbWVzcGFjZSBXZWJLaXQKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvU2hhcmVh
YmxlU3VyZmFjZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9T
aGFyZWFibGVTdXJmYWNlLmNwcAkocmV2aXNpb24gOTMyMjMpCisrKyBTb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvbWFjL1NoYXJlYWJsZVN1cmZhY2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xLDIxNSAr
MCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQot
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywK
LSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgot
ICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAq
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlNoYXJl
YWJsZVN1cmZhY2UuaCIKLQotI2luY2x1ZGUgIkFyZ3VtZW50RGVjb2Rlci5oIgotI2luY2x1ZGUg
IkFyZ3VtZW50RW5jb2Rlci5oIgotI2luY2x1ZGUgIk1hY2hQb3J0LmgiCi0jaW5jbHVkZSA8SU9T
dXJmYWNlL0lPU3VyZmFjZS5oPgotI2luY2x1ZGUgPE9wZW5HTC9DR0xJT1N1cmZhY2UuaD4KLSNp
bmNsdWRlIDxPcGVuR0wvQ0dMTWFjcm8uaD4KLSNpbmNsdWRlIDxPcGVuR0wvT3BlbkdMLmg+Ci0j
aW5jbHVkZSA8bWFjaC9tYWNoX3BvcnQuaD4KLQotLy8gVGhlIENHTE1hY3JvLmggaGVhZGVyIGFk
ZHMgYW4gaW1wbGljaXQgQ0dMQ29udGV4dE9iaiBwYXJhbWV0ZXIgdG8gYWxsIE9wZW5HTCBjYWxs
cywKLS8vIHdoaWNoIGlzIGdvb2QgYmVjYXVzZSBpdCBhbGxvd3MgdXMgdG8gbWFrZSBPcGVuR0wg
Y2FsbHMgd2l0aG91dCBzYXZpbmcgYW5kIHJlc3RvcmluZyB0aGUKLS8vIGN1cnJlbnQgY29udGV4
dC4gVGhlIGNvbnRleHQgYXJndW1lbnQgaXMgbmFtZWQgImNnbF9jdHgiIGJ5IGRlZmF1bHQsIHNv
IHdlIHRoZSBtYWNybwotLy8gYmVsb3cgdG8gZGVjbGFyZSB0aGlzIHZhcmlhYmxlLgotI2RlZmlu
ZSBERUNMQVJFX0dMX0NPTlRFWFRfVkFSSUFCTEUobmFtZSkgXAotICAgIENHTENvbnRleHRPYmog
Y2dsX2N0eCA9IChuYW1lKQotCi0vLyBJdCBleHBlY3RzIGEgY29udGV4dCBuYW1lZCAiCi11c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKLQotbmFtZXNwYWNlIFdlYktpdCB7Ci0KLVNoYXJlYWJsZVN1
cmZhY2U6OkhhbmRsZTo6SGFuZGxlKCkKLSAgICA6IG1fcG9ydChNQUNIX1BPUlRfTlVMTCkKLXsK
LX0KLQotU2hhcmVhYmxlU3VyZmFjZTo6SGFuZGxlOjp+SGFuZGxlKCkKLXsKLSAgICBpZiAobV9w
b3J0ICE9IE1BQ0hfUE9SVF9OVUxMKQotICAgICAgICBtYWNoX3BvcnRfZGVhbGxvY2F0ZShtYWNo
X3Rhc2tfc2VsZigpLCBtX3BvcnQpOwotfQotCi12b2lkIFNoYXJlYWJsZVN1cmZhY2U6OkhhbmRs
ZTo6ZW5jb2RlKENvcmVJUEM6OkFyZ3VtZW50RW5jb2RlciogZW5jb2RlcikgY29uc3QKLXsKLSAg
ICBlbmNvZGVyLT5lbmNvZGUoQ29yZUlQQzo6TWFjaFBvcnQobV9wb3J0LCBNQUNIX01TR19UWVBF
X01PVkVfU0VORCkpOwotICAgIG1fcG9ydCA9IE1BQ0hfUE9SVF9OVUxMOwotfQotCi1ib29sIFNo
YXJlYWJsZVN1cmZhY2U6OkhhbmRsZTo6ZGVjb2RlKENvcmVJUEM6OkFyZ3VtZW50RGVjb2Rlciog
ZGVjb2RlciwgSGFuZGxlJiBoYW5kbGUpCi17Ci0gICAgQVNTRVJUX0FSRyhoYW5kbGUsIGhhbmRs
ZS5tX3BvcnQgPT0gTUFDSF9QT1JUX05VTEwpOwotCi0gICAgQ29yZUlQQzo6TWFjaFBvcnQgbWFj
aFBvcnQ7Ci0gICAgaWYgKCFkZWNvZGVyLT5kZWNvZGUobWFjaFBvcnQpKQotICAgICAgICByZXR1
cm4gZmFsc2U7Ci0KLSAgICBoYW5kbGUubV9wb3J0ID0gbWFjaFBvcnQucG9ydCgpOwotICAgIHJl
dHVybiBmYWxzZTsKLX0KLQotc3RhdGljIFJldGFpblB0cjxJT1N1cmZhY2VSZWY+IGNyZWF0ZUlP
U3VyZmFjZShjb25zdCBJbnRTaXplJiBzaXplKQotewotICAgIGludCB3aWR0aCA9IHNpemUud2lk
dGgoKTsKLSAgICBpbnQgaGVpZ2h0ID0gc2l6ZS5oZWlnaHQoKTsKLSAgICAKLSAgICB1bnNpZ25l
ZCBieXRlc1BlckVsZW1lbnQgPSA0OwotICAgIHVuc2lnbmVkIGxvbmcgYnl0ZXNQZXJSb3cgPSBJ
T1N1cmZhY2VBbGlnblByb3BlcnR5KGtJT1N1cmZhY2VCeXRlc1BlclJvdywgd2lkdGggKiBieXRl
c1BlckVsZW1lbnQpOwotICAgIGlmICghYnl0ZXNQZXJSb3cpCi0gICAgICAgIHJldHVybiAwOwot
ICAgIAotICAgIHVuc2lnbmVkIGxvbmcgYWxsb2NTaXplID0gSU9TdXJmYWNlQWxpZ25Qcm9wZXJ0
eShrSU9TdXJmYWNlQWxsb2NTaXplLCBoZWlnaHQgKiBieXRlc1BlclJvdyk7Ci0gICAgaWYgKCFh
bGxvY1NpemUpCi0gICAgICAgIHJldHVybiAwOwotICAgIAotICAgIHVuc2lnbmVkIHBpeGVsRm9y
bWF0ID0gJ0JHUkEnOwotCi0gICAgc3RhdGljIGNvbnN0IHNpemVfdCBudW1LZXlzID0gNjsKLSAg
ICBjb25zdCB2b2lkICprZXlzW251bUtleXNdOwotICAgIGNvbnN0IHZvaWQgKnZhbHVlc1tudW1L
ZXlzXTsKLSAgICBrZXlzWzBdID0ga0lPU3VyZmFjZVdpZHRoOwotICAgIHZhbHVlc1swXSA9IENG
TnVtYmVyQ3JlYXRlKDAsIGtDRk51bWJlckludFR5cGUsICZ3aWR0aCk7Ci0gICAga2V5c1sxXSA9
IGtJT1N1cmZhY2VIZWlnaHQ7Ci0gICAgdmFsdWVzWzFdID0gQ0ZOdW1iZXJDcmVhdGUoMCwga0NG
TnVtYmVySW50VHlwZSwgJmhlaWdodCk7Ci0gICAga2V5c1syXSA9IGtJT1N1cmZhY2VQaXhlbEZv
cm1hdDsKLSAgICB2YWx1ZXNbMl0gPSBDRk51bWJlckNyZWF0ZSgwLCBrQ0ZOdW1iZXJJbnRUeXBl
LCAmcGl4ZWxGb3JtYXQpOwotICAgIGtleXNbM10gPSBrSU9TdXJmYWNlQnl0ZXNQZXJFbGVtZW50
OwotICAgIHZhbHVlc1szXSA9IENGTnVtYmVyQ3JlYXRlKDAsIGtDRk51bWJlckludFR5cGUsICZi
eXRlc1BlckVsZW1lbnQpOwotICAgIGtleXNbNF0gPSBrSU9TdXJmYWNlQnl0ZXNQZXJSb3c7Ci0g
ICAgdmFsdWVzWzRdID0gQ0ZOdW1iZXJDcmVhdGUoMCwga0NGTnVtYmVyTG9uZ1R5cGUsICZieXRl
c1BlclJvdyk7Ci0gICAga2V5c1s1XSA9IGtJT1N1cmZhY2VBbGxvY1NpemU7Ci0gICAgdmFsdWVz
WzVdID0gQ0ZOdW1iZXJDcmVhdGUoMCwga0NGTnVtYmVyTG9uZ1R5cGUsICZhbGxvY1NpemUpOwot
ICAgIAotICAgIFJldGFpblB0cjxDRkRpY3Rpb25hcnlSZWY+IGRpY3Rpb25hcnkoQWRvcHRDRiwg
Q0ZEaWN0aW9uYXJ5Q3JlYXRlKDAsIGtleXMsIHZhbHVlcywgbnVtS2V5cywgJmtDRlR5cGVEaWN0
aW9uYXJ5S2V5Q2FsbEJhY2tzLCAma0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOwot
ICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBudW1LZXlzOyBpKyspCi0gICAgICAgIENGUmVs
ZWFzZSh2YWx1ZXNbaV0pOwotICAgIAotICAgIHJldHVybiBSZXRhaW5QdHI8SU9TdXJmYWNlUmVm
PihBZG9wdENGLCBJT1N1cmZhY2VDcmVhdGUoZGljdGlvbmFyeS5nZXQoKSkpOwotfQotICAgICAg
ICAKLVBhc3NSZWZQdHI8U2hhcmVhYmxlU3VyZmFjZT4gU2hhcmVhYmxlU3VyZmFjZTo6Y3JlYXRl
KENHTENvbnRleHRPYmogY2dsQ29udGV4dE9iaiwgY29uc3QgSW50U2l6ZSYgc2l6ZSkKLXsKLSAg
ICBSZXRhaW5QdHI8SU9TdXJmYWNlUmVmPiBpb1N1cmZhY2UgPSBjcmVhdGVJT1N1cmZhY2Uoc2l6
ZSk7Ci0gICAgaWYgKCFpb1N1cmZhY2UpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgcmV0dXJu
IGFkb3B0UmVmKG5ldyBTaGFyZWFibGVTdXJmYWNlKGNnbENvbnRleHRPYmosIHNpemUsIGlvU3Vy
ZmFjZS5nZXQoKSkpOwotfQotCi1QYXNzUmVmUHRyPFNoYXJlYWJsZVN1cmZhY2U+IFNoYXJlYWJs
ZVN1cmZhY2U6OmNyZWF0ZShDR0xDb250ZXh0T2JqIGNnbENvbnRleHRPYmosIGNvbnN0IEhhbmRs
ZSYgaGFuZGxlKQotewotICAgIEFTU0VSVF9BUkcoaGFuZGxlLCBoYW5kbGUubV9wb3J0ICE9IE1B
Q0hfUE9SVF9OVUxMKTsKLQotICAgIFJldGFpblB0cjxJT1N1cmZhY2VSZWY+IGlvU3VyZmFjZShB
ZG9wdENGLCBJT1N1cmZhY2VMb29rdXBGcm9tTWFjaFBvcnQoaGFuZGxlLm1fcG9ydCkpOwotICAg
IGlmICghaW9TdXJmYWNlKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIEludFNpemUgc2l6ZSA9
IEludFNpemUoSU9TdXJmYWNlR2V0V2lkdGgoaW9TdXJmYWNlLmdldCgpKSwgSU9TdXJmYWNlR2V0
SGVpZ2h0KGlvU3VyZmFjZS5nZXQoKSkpOwotICAgIAotICAgIHJldHVybiBhZG9wdFJlZihuZXcg
U2hhcmVhYmxlU3VyZmFjZShjZ2xDb250ZXh0T2JqLCBzaXplLCBpb1N1cmZhY2UuZ2V0KCkpKTsK
LX0KLQotU2hhcmVhYmxlU3VyZmFjZTo6U2hhcmVhYmxlU3VyZmFjZShDR0xDb250ZXh0T2JqIGNn
bENvbnRleHRPYmosIGNvbnN0IEludFNpemUmIHNpemUsIElPU3VyZmFjZVJlZiBpb1N1cmZhY2Up
Ci0gICAgOiBtX2NnbENvbnRleHRPYmooQ0dMUmV0YWluQ29udGV4dChjZ2xDb250ZXh0T2JqKSkK
LSAgICAsIG1fc2l6ZShzaXplKQotICAgICwgbV90ZXh0dXJlSUQoMCkKLSAgICAsIG1fZnJhbWVC
dWZmZXJPYmplY3RJRCgwKQotICAgICwgbV9pb1N1cmZhY2UoaW9TdXJmYWNlKQotewotfQotCi1T
aGFyZWFibGVTdXJmYWNlOjp+U2hhcmVhYmxlU3VyZmFjZSgpCi17Ci0gICAgREVDTEFSRV9HTF9D
T05URVhUX1ZBUklBQkxFKG1fY2dsQ29udGV4dE9iaik7Ci0KLSAgICBpZiAobV90ZXh0dXJlSUQp
Ci0gICAgICAgIGdsRGVsZXRlVGV4dHVyZXMoMSwgJm1fdGV4dHVyZUlEKTsKLQotICAgIGlmICht
X2ZyYW1lQnVmZmVyT2JqZWN0SUQpCi0gICAgICAgIGdsRGVsZXRlRnJhbWVidWZmZXJzRVhUKDEs
ICZtX2ZyYW1lQnVmZmVyT2JqZWN0SUQpOwotCi0gICAgQ0dMUmVsZWFzZUNvbnRleHQobV9jZ2xD
b250ZXh0T2JqKTsKLX0KLQotYm9vbCBTaGFyZWFibGVTdXJmYWNlOjpjcmVhdGVIYW5kbGUoSGFu
ZGxlJiBoYW5kbGUpCi17Ci0gICAgQVNTRVJUX0FSRyhoYW5kbGUsIGhhbmRsZS5tX3BvcnQgPT0g
TUFDSF9QT1JUX05VTEwpOwotCi0gICAgbWFjaF9wb3J0X3QgcG9ydCA9IElPU3VyZmFjZUNyZWF0
ZU1hY2hQb3J0KG1faW9TdXJmYWNlLmdldCgpKTsKLSAgICBpZiAocG9ydCA9PSBNQUNIX1BPUlRf
TlVMTCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgaGFuZGxlLm1fcG9ydCA9IHBvcnQ7
Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLXZvaWQgU2hhcmVhYmxlU3VyZmFjZTo6YXR0YWNoKCkK
LXsKLSAgICBERUNMQVJFX0dMX0NPTlRFWFRfVkFSSUFCTEUobV9jZ2xDb250ZXh0T2JqKTsKLQot
ICAgIGlmICghbV9mcmFtZUJ1ZmZlck9iamVjdElEKSB7Ci0gICAgICAgIC8vIEdlbmVyYXRlIGEg
ZnJhbWUgYnVmZmVyIG9iamVjdC4KLSAgICAgICAgZ2xHZW5GcmFtZWJ1ZmZlcnNFWFQoMSwgJm1f
ZnJhbWVCdWZmZXJPYmplY3RJRCk7Ci0KLSAgICAgICAgLy8gQXNzb2NpYXRlIGl0IHdpdGggdGhl
IHRleHR1cmUuCi0gICAgICAgIGdsQmluZEZyYW1lYnVmZmVyRVhUKEdMX0ZSQU1FQlVGRkVSX0VY
VCwgbV9mcmFtZUJ1ZmZlck9iamVjdElEKTsKLSAgICAgICAgZ2xGcmFtZWJ1ZmZlclRleHR1cmUy
REVYVChHTF9GUkFNRUJVRkZFUl9FWFQsIEdMX0NPTE9SX0FUVEFDSE1FTlQwX0VYVCwgR0xfVEVY
VFVSRV9SRUNUQU5HTEVfRVhULCB0ZXh0dXJlSUQoKSwgMCk7Ci0gICAgfSBlbHNlCi0gICAgICAg
IGdsQmluZEZyYW1lYnVmZmVyRVhUKEdMX0ZSQU1FQlVGRkVSX0VYVCwgbV9mcmFtZUJ1ZmZlck9i
amVjdElEKTsKLX0KLQotdm9pZCBTaGFyZWFibGVTdXJmYWNlOjpkZXRhY2goKQotewotICAgIERF
Q0xBUkVfR0xfQ09OVEVYVF9WQVJJQUJMRShtX2NnbENvbnRleHRPYmopOwotCi0gICAgZ2xCaW5k
RnJhbWVidWZmZXJFWFQoR0xfRlJBTUVCVUZGRVJfRVhULCAwKTsKLX0KLQotdW5zaWduZWQgU2hh
cmVhYmxlU3VyZmFjZTo6dGV4dHVyZUlEKCkKLXsKLSAgICBpZiAobV90ZXh0dXJlSUQpCi0gICAg
ICAgIHJldHVybiBtX3RleHR1cmVJRDsKLQotICAgIERFQ0xBUkVfR0xfQ09OVEVYVF9WQVJJQUJM
RShtX2NnbENvbnRleHRPYmopOwotICAgIAotICAgIC8vIEdlbmVyYXRlIGEgdGV4dHVyZS4KLSAg
ICBnbEdlblRleHR1cmVzKDEsICZtX3RleHR1cmVJRCk7Ci0gICAgCi0gICAgLy8gQXNzb2NpYXRl
IGl0IHdpdGggb3VyIElPU3VyZmFjZS4KLSAgICBnbEJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfUkVD
VEFOR0xFX0VYVCwgbV90ZXh0dXJlSUQpOwotICAgIENHTFRleEltYWdlSU9TdXJmYWNlMkQoY2ds
X2N0eCwgR0xfVEVYVFVSRV9SRUNUQU5HTEVfRVhULCBHTF9SR0JBOCwgbV9zaXplLndpZHRoKCks
IG1fc2l6ZS5oZWlnaHQoKSwgR0xfQkdSQSwgR0xfVU5TSUdORURfSU5UXzhfOF84XzhfUkVWLCBt
X2lvU3VyZmFjZS5nZXQoKSwgMCk7Ci0gICAgZ2xCaW5kVGV4dHVyZShHTF9URVhUVVJFX1JFQ1RB
TkdMRV9FWFQsIDApOwotCi0gICAgcmV0dXJuIG1fdGV4dHVyZUlEOwotfQotCi19IC8vIG5hbWVz
cGFjZSBXZWJLaXQKLQpJbmRleDogU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9TaGFyZWFibGVT
dXJmYWNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9TaGFyZWFi
bGVTdXJmYWNlLmgJKHJldmlzaW9uIDkzMjIzKQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL21h
Yy9TaGFyZWFibGVTdXJmYWNlLmgJKHdvcmtpbmcgY29weSkKQEAgLTEsOTggKzAsMCBAQAotLyoK
LSAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0g
KgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgotICovCi0KLSNpZm5kZWYgU2hhcmVhYmxlU3VyZmFjZV9oCi0jZGVmaW5lIFNoYXJlYWJsZVN1
cmZhY2VfaAotCi0jaW5jbHVkZSA8V2ViQ29yZS9JbnRTaXplLmg+Ci0jaW5jbHVkZSA8d3RmL05v
bmNvcHlhYmxlLmg+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgotI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KLQotdHlwZWRlZiBzdHJ1
Y3QgX0NHTENvbnRleHRPYmplY3QqIENHTENvbnRleHRPYmo7Ci10eXBlZGVmIHN0cnVjdCBfX0lP
U3VyZmFjZSogSU9TdXJmYWNlUmVmOwotCi1uYW1lc3BhY2UgQ29yZUlQQyB7Ci0gICAgY2xhc3Mg
QXJndW1lbnREZWNvZGVyOwotICAgIGNsYXNzIEFyZ3VtZW50RW5jb2RlcjsKLX0KLQotbmFtZXNw
YWNlIFdlYktpdCB7Ci0KLWNsYXNzIFNoYXJlYWJsZVN1cmZhY2UgOiBwdWJsaWMgUmVmQ291bnRl
ZDxTaGFyZWFibGVTdXJmYWNlPiB7Ci1wdWJsaWM6Ci0gICAgY2xhc3MgSGFuZGxlIHsKLSAgICAg
ICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoSGFuZGxlKTsKLSAgICAKLSAgICBwdWJsaWM6Ci0gICAg
ICAgIEhhbmRsZSgpOwotICAgICAgICB+SGFuZGxlKCk7Ci0KLSAgICAgICAgdm9pZCBlbmNvZGUo
Q29yZUlQQzo6QXJndW1lbnRFbmNvZGVyKikgY29uc3Q7Ci0gICAgICAgIHN0YXRpYyBib29sIGRl
Y29kZShDb3JlSVBDOjpBcmd1bWVudERlY29kZXIqLCBIYW5kbGUmKTsKLQotICAgIHByaXZhdGU6
Ci0gICAgICAgIGZyaWVuZCBjbGFzcyBTaGFyZWFibGVTdXJmYWNlOwotCi0gICAgICAgIG11dGFi
bGUgbWFjaF9wb3J0X3QgbV9wb3J0OwotICAgIH07Ci0KLSAgICAvLyBDcmVhdGUgYSBzaGFyZWFi
bGUgc3VyZmFjZSB3aXRoIHRoZSBnaXZlbiBzaXplLiBSZXR1cm5zIDAgb24gZmFpbHVyZS4KLSAg
ICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFyZWFibGVTdXJmYWNlPiBjcmVhdGUoQ0dMQ29udGV4dE9i
aiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpOwotCi0gICAgLy8gQ3JlYXRlIGEgc2hhcmVhYmxl
IHN1cmZhY2UgZnJvbSBhIGhhbmRsZS4gUmV0dXJucyAwIG9uIGZhaWx1cmUuCi0gICAgc3RhdGlj
IFBhc3NSZWZQdHI8U2hhcmVhYmxlU3VyZmFjZT4gY3JlYXRlKENHTENvbnRleHRPYmosIGNvbnN0
IEhhbmRsZSYpOwotCi0gICAgflNoYXJlYWJsZVN1cmZhY2UoKTsKLQotICAgIGJvb2wgY3JlYXRl
SGFuZGxlKEhhbmRsZSYpOwotICAgIAotICAgIHVuc2lnbmVkIHRleHR1cmVJRCgpOwotCi0gICAg
dm9pZCBhdHRhY2goKTsKLSAgICB2b2lkIGRldGFjaCgpOwotCi1wcml2YXRlOgotICAgIFNoYXJl
YWJsZVN1cmZhY2UoQ0dMQ29udGV4dE9iaiwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYsIElPU3Vy
ZmFjZVJlZik7Ci0KLSAgICAvLyBUaGUgT3BlbkdMIGNvbnRleHQuCi0gICAgQ0dMQ29udGV4dE9i
aiBtX2NnbENvbnRleHRPYmo7Ci0KLSAgICAvLyBUaGUgc2l6ZSBvZiB0aGUgc3VyZmFjZS4KLSAg
ICBXZWJDb3JlOjpJbnRTaXplIG1fc2l6ZTsKLSAgICAKLSAgICAvLyBUaGUgSUQgb2YgdGhlIHRl
eHR1cmUuCi0gICAgdW5zaWduZWQgbV90ZXh0dXJlSUQ7Ci0KLSAgICAvLyBUaGUgZnJhbWUgYnVm
ZmVyIG9iamVjdCBJRCBvZiB0aGUgdGV4dHVyZTsgdXNlZCB3aGVuIHRoZSBzdXJmYWNlIGlzIHVz
ZWQgYXMgYSByZW5kZXIgZGVzdGluYXRpb24uCi0gICAgdW5zaWduZWQgbV9mcmFtZUJ1ZmZlck9i
amVjdElEOwotCi0gICAgUmV0YWluUHRyPElPU3VyZmFjZVJlZj4gbV9pb1N1cmZhY2U7Ci19Owot
Ci19IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIFNoYXJlYWJsZVN1cmZhY2VfaApJ
bmRleDogU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagkocmV2aXNpb24gOTMyMjMpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTE3NCwxMCArMTc0LDYgQEAKIAkJ
MUE5MTAxMEIxMjY4QzhDQTAwMTg0MkY1IC8qIEZpbmRJbmRpY2F0b3JXaW5kb3cubW0gaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTkxMDEwOTEyNjhDOENB
MDAxODQyRjUgLyogRmluZEluZGljYXRvcldpbmRvdy5tbSAqLzsgfTsKIAkJMUE5MkRDMTExMkY4
QkE0NjAwMTdBRjY1IC8qIExheWVyVHJlZUNvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBOTJEQzEwMTJGOEJBNDYwMDE3QUY2NSAvKiBMYXll
clRyZWVDb250ZXh0LmggKi87IH07CiAJCTFBOTJEQzEzMTJGOEJBQjkwMDE3QUY2NSAvKiBMYXll
clRyZWVDb250ZXh0TWFjLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMUE5MkRDMTIxMkY4QkFCOTAwMTdBRjY1IC8qIExheWVyVHJlZUNvbnRleHRNYWMu
bW0gKi87IH07Ci0JCTFBOTYzNkJDMTJGMzQ4NDkwMDc4QTA2MiAvKiBTaGFyZWFibGVTdXJmYWNl
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBOTYz
NkJBMTJGMzQ4NDkwMDc4QTA2MiAvKiBTaGFyZWFibGVTdXJmYWNlLmNwcCAqLzsgfTsKLQkJMUE5
NjM2QkQxMkYzNDg0OTAwNzhBMDYyIC8qIFNoYXJlYWJsZVN1cmZhY2UuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBOTYzNkJCMTJGMzQ4NDkwMDc4QTA2
MiAvKiBTaGFyZWFibGVTdXJmYWNlLmggKi87IH07Ci0JCTFBOTYzOUY3MTJGMzhFQ0QwMDc4QTA2
MiAvKiBDb3JlQW5pbWF0aW9uUmVuZGVyZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDFBOTYzOUY1MTJGMzhFQ0QwMDc4QTA2MiAvKiBDb3JlQW5pbWF0
aW9uUmVuZGVyZXIuaCAqLzsgfTsKLQkJMUE5NjM5RjgxMkYzOEVDRDAwNzhBMDYyIC8qIENvcmVB
bmltYXRpb25SZW5kZXJlci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFBOTYzOUY2MTJGMzhFQ0QwMDc4QTA2MiAvKiBDb3JlQW5pbWF0aW9uUmVuZGVy
ZXIubW0gKi87IH07CiAJCTFBQTFDQzVEMTAwRkExQTEwMDc4REVCQyAvKiBRdWFydHpDb3JlLmZy
YW1ld29yayBpbiBGcmFtZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDFBQTFDQzVDMTAwRkExQTEwMDc4REVCQyAvKiBRdWFydHpDb3JlLmZyYW1ld29yayAqLzsgfTsK
IAkJMUFBMUNEMDcxMDBGQTFCQTAwNzhERUJDIC8qIENhcmJvbi5mcmFtZXdvcmsgaW4gRnJhbWV3
b3JrcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUExQ0QwNjEwMEZBMUJB
MDA3OERFQkMgLyogQ2FyYm9uLmZyYW1ld29yayAqLzsgfTsKIAkJMUFBMkU1MUQxMkU0QzA1RTAw
QkM0OTY2IC8qIENHVXRpbGl0aWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQUEyRTUxQjEyRTRDMDVFMDBCQzQ5NjYgLyogQ0dVdGlsaXRpZXMuaCAq
LzsgfTsKQEAgLTEwOTAsMTAgKzEwODYsNiBAQAogCQkxQTkxMDEwOTEyNjhDOENBMDAxODQyRjUg
LyogRmluZEluZGljYXRvcldpbmRvdy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IEZpbmRJbmRpY2F0b3JXaW5kb3cubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFBOTJEQzEwMTJGOEJBNDYwMDE3QUY2NSAvKiBMYXllclRyZWVDb250ZXh0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExheWVyVHJlZUNvbnRleHQuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE5MkRDMTIxMkY4QkFCOTAwMTdBRjY1IC8qIExheWVy
VHJlZUNvbnRleHRNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGgg
PSBMYXllclRyZWVDb250ZXh0TWFjLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkx
QTk2MzZCQTEyRjM0ODQ5MDA3OEEwNjIgLyogU2hhcmVhYmxlU3VyZmFjZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTaGFyZWFibGVTdXJmYWNlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMUE5NjM2QkIxMkYzNDg0OTAwNzhBMDYyIC8qIFNoYXJl
YWJsZVN1cmZhY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2hhcmVhYmxl
U3VyZmFjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkxQTk2MzlGNTEyRjM4RUNE
MDA3OEEwNjIgLyogQ29yZUFuaW1hdGlvblJlbmRlcmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IENvcmVBbmltYXRpb25SZW5kZXJlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQkxQTk2MzlGNjEyRjM4RUNEMDA3OEEwNjIgLyogQ29yZUFuaW1hdGlvblJlbmRl
cmVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gQ29yZUFuaW1h
dGlvblJlbmRlcmVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUExQzc5QTEw
MEU3RkM1MDA3OERFQkMgLyogV2ViQ29yZS5mcmFtZXdvcmsgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB3cmFwcGVyLmZyYW1ld29yazsgcGF0aCA9IFdl
YkNvcmUuZnJhbWV3b3JrOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQkx
QUExQzdERTEwMEU4NDZFMDA3OERFQkMgLyogSmF2YVNjcmlwdENvcmUuZnJhbWV3b3JrICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gd3JhcHBlci5mcmFt
ZXdvcms7IHBhdGggPSBKYXZhU2NyaXB0Q29yZS5mcmFtZXdvcms7IHNvdXJjZVRyZWUgPSBCVUlM
VF9QUk9EVUNUU19ESVI7IH07CiAJCTFBQTFDQzVDMTAwRkExQTEwMDc4REVCQyAvKiBRdWFydHpD
b3JlLmZyYW1ld29yayAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHdyYXBwZXIuZnJhbWV3b3JrOyBuYW1lID0gUXVhcnR6Q29yZS5mcmFtZXdvcms7IHBh
dGggPSAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9RdWFydHpDb3JlLmZyYW1ld29yazsgc291
cmNlVHJlZSA9ICI8YWJzb2x1dGU+IjsgfTsKQEAgLTI4OTQsOCArMjg4Niw2IEBACiAJCQkJRTFB
MzE3MzExMzRDRUE2QzAwN0M5QTRGIC8qIEF0dHJpYnV0ZWRTdHJpbmcuaCAqLywKIAkJCQlFMUEz
MTczNDEzNENFQTgwMDA3QzlBNEYgLyogQXR0cmlidXRlZFN0cmluZy5tbSAqLywKIAkJCQkxQTZG
OUZCNjExRTE0MDg1MDBEQjEzNzEgLyogQ29tbWFuZExpbmVNYWMuY3BwICovLAotCQkJCTFBOTYz
OUY1MTJGMzhFQ0QwMDc4QTA2MiAvKiBDb3JlQW5pbWF0aW9uUmVuZGVyZXIuaCAqLywKLQkJCQkx
QTk2MzlGNjEyRjM4RUNEMDA3OEEwNjIgLyogQ29yZUFuaW1hdGlvblJlbmRlcmVyLm1tICovLAog
CQkJCTUxMTJDQjA3MTM4NUI5N0IwMDMwODY3RCAvKiBLZXljaGFpbkF0dHJpYnV0ZS5jcHAgKi8s
CiAJCQkJNTExMkNCMDUxMzg1QjhEOTAwMzA4NjdEIC8qIEtleWNoYWluQXR0cmlidXRlLmggKi8s
CiAJCQkJMUE5MkRDMTIxMkY4QkFCOTAwMTdBRjY1IC8qIExheWVyVHJlZUNvbnRleHRNYWMubW0g
Ki8sCkBAIC0yOTE2LDggKzI5MDYsNiBAQAogCQkJCTUxMTJDQTQ4MTM4NThENEIwMDMwODY3RCAv
KiBTZWNLZXljaGFpbkl0ZW1SZXF1ZXN0RGF0YS5oICovLAogCQkJCTUxMTJDQTQ5MTM4NThENEIw
MDMwODY3RCAvKiBTZWNLZXljaGFpbkl0ZW1SZXNwb25zZURhdGEuY3BwICovLAogCQkJCTUxMTJD
QTRBMTM4NThENEIwMDMwODY3RCAvKiBTZWNLZXljaGFpbkl0ZW1SZXNwb25zZURhdGEuaCAqLywK
LQkJCQkxQTk2MzZCQTEyRjM0ODQ5MDA3OEEwNjIgLyogU2hhcmVhYmxlU3VyZmFjZS5jcHAgKi8s
Ci0JCQkJMUE5NjM2QkIxMkYzNDg0OTAwNzhBMDYyIC8qIFNoYXJlYWJsZVN1cmZhY2UuaCAqLywK
IAkJCQlCQ0UyMzI2MjEyMkM2Q0YzMDBENUMzNUEgLyogV2ViQ29yZUFyZ3VtZW50Q29kZXJzTWFj
Lm1tICovLAogCQkJCUJDMTExQjVCMTEyRjYyOTgwMDMzN0JBQiAvKiBXZWJFdmVudEZhY3Rvcnku
aCAqLywKIAkJCQlCQzExMUI1QzExMkY2Mjk4MDAzMzdCQUIgLyogV2ViRXZlbnRGYWN0b3J5Lm1t
ICovLApAQCAtMzc1Miw4ICszNzQwLDYgQEAKIAkJCQlFMTM0RjAxNzEyRUE1RDMzMDA0RUM1OEQg
LyogV0tQcmludGluZ1ZpZXcuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBMTg2RUVBMTJFRjc2MTgw
MDhFNUYzNyAvKiBMYXllclRyZWVIb3N0LmggaW4gSGVhZGVycyAqLywKIAkJCQlCRkE2MTc5RjEy
RjBCOTlEMDAzM0UwQ0EgLyogV0tWaWV3UHJpdmF0ZS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMUE5
NjM2QkQxMkYzNDg0OTAwNzhBMDYyIC8qIFNoYXJlYWJsZVN1cmZhY2UuaCBpbiBIZWFkZXJzICov
LAotCQkJCTFBOTYzOUY3MTJGMzhFQ0QwMDc4QTA2MiAvKiBDb3JlQW5pbWF0aW9uUmVuZGVyZXIu
aCBpbiBIZWFkZXJzICovLAogCQkJCUJDODE0N0E5MTJGNjRDREEwMDdCMkMzMiAvKiBJbmplY3Rl
ZEJ1bmRsZVBhZ2VQb2xpY3lDbGllbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDODE0N0Q1MTJG
NjZEMzEwMDdCMkMzMiAvKiBJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rpb24uaCBpbiBIZWFk
ZXJzICovLAogCQkJCUJDNzA0M0NDMTJGNzVFRTAwMDY0NzJCOSAvKiBXS0J1bmRsZU5hdmlnYXRp
b25BY3Rpb24uaCBpbiBIZWFkZXJzICovLApAQCAtNDQwNiw4ICs0MzkyLDYgQEAKIAkJCQlCQzk1
ODVDODEyRjA5NUI4MDA3NTU4MjEgLyogV2ViR2VzdHVyZUV2ZW50LmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTFBMTg2RUVCMTJFRjc2MTgwMDhFNUYzNyAvKiBMYXllclRyZWVIb3N0LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTY1MDFCRDFBMTJGMTI0MzQwMEU5RjI0OCAvKiBXS0J1bmRsZUluc3Bl
Y3Rvci5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkxQTk2MzZCQzEyRjM0ODQ5MDA3OEEwNjIgLyog
U2hhcmVhYmxlU3VyZmFjZS5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkxQTk2MzlGODEyRjM4RUNE
MDA3OEEwNjIgLyogQ29yZUFuaW1hdGlvblJlbmRlcmVyLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QkM4MTQ3QUExMkY2NENEQTAwN0IyQzMyIC8qIEluamVjdGVkQnVuZGxlUGFnZVBvbGljeUNsaWVu
dC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQzgxNDdENjEyRjY2RDMxMDA3QjJDMzIgLyogSW5q
ZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDNzA0
M0NEMTJGNzVFRTAwMDY0NzJCOSAvKiBXS0J1bmRsZU5hdmlnYXRpb25BY3Rpb24uY3BwIGluIFNv
dXJjZXMgKi8sCg==
</data>
<flag name="review"
          id="99969"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>