<?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>5887</bug_id>
          
          <creation_ts>2005-11-30 00:45:05 -0800</creation_ts>
          <short_desc>Make make_names.pl namespace agnostic and add XLinkNames</short_desc>
          <delta_ts>2005-11-30 03:50:33 -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>SVG</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P4</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>5889</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Eric Seidel (no email)">eric</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>25185</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2005-11-30 00:45:05 -0800</bug_when>
    <thetext>Make make_names.pl namespace agnostic and add XLinkNames

The attached patches fix make_names.pl to no longer be SVG-only (it&apos;s even possible of generating 
HTMLNames.* now), and add XLinkNames.* to the project to support xlink:href and other attributes used 
in SVG.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25187</commentid>
    <comment_count>1</comment_count>
      <attachid>4870</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2005-11-30 00:49:09 -0800</bug_when>
    <thetext>Created attachment 4870
Changes to make_names.pl to make it namespace agnostic</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25188</commentid>
    <comment_count>2</comment_count>
      <attachid>4871</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2005-11-30 00:50:17 -0800</bug_when>
    <thetext>Created attachment 4871
Changes to WebCore.xcodeproj and sources to add (and use) XLinkNames</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25193</commentid>
    <comment_count>3</comment_count>
      <attachid>4870</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2005-11-30 02:59:29 -0800</bug_when>
    <thetext>Comment on attachment 4870
Changes to make_names.pl to make it namespace agnostic

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25194</commentid>
    <comment_count>4</comment_count>
      <attachid>4871</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2005-11-30 03:01:46 -0800</bug_when>
    <thetext>Comment on attachment 4871
Changes to WebCore.xcodeproj and sources to add (and use) XLinkNames

r=me on this bit too</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>4870</attachid>
            <date>2005-11-30 00:49:09 -0800</date>
            <delta_ts>2005-11-30 02:59:29 -0800</delta_ts>
            <desc>Changes to make_names.pl to make it namespace agnostic</desc>
            <filename>make_names.patch</filename>
            <type>text/plain</type>
            <size>15717</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">SW5kZXg6IGtzdmcyL3NjcmlwdHMvbWFrZV9uYW1lcy5wbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAv
Y3ZzL3Jvb3QvU1ZHU3VwcG9ydC9rc3ZnMi9zY3JpcHRzL21ha2VfbmFtZXMucGwsdgpyZXRyaWV2
aW5nIHJldmlzaW9uIDEuMwpkaWZmIC1wIC11IC1yMS4zIGtzdmcyL3NjcmlwdHMvbWFrZV9uYW1l
cy5wbAotLS0ga3N2ZzIvc2NyaXB0cy9tYWtlX25hbWVzLnBsCTI4IE5vdiAyMDA1IDIzOjM0OjA1
IC0wMDAwCTEuMworKysga3N2ZzIvc2NyaXB0cy9tYWtlX25hbWVzLnBsCTMwIE5vdiAyMDA1IDA4
OjQxOjI0IC0wMDAwCkBAIC00LDI3ICs0LDM1IEBAIHVzZSBzdHJpY3Q7CiB1c2UgR2V0b3B0OjpM
b25nOwogdXNlIEZpbGU6OlBhdGg7CiAKLQotbXkgJG5hbWVzSGVhZGVyID0gMDsKLW15ICRuYW1l
c0NwcCA9IDA7Ci1teSAkZmFjdG9yeUhlYWRlciA9IDA7Ci1teSAkZmFjdG9yeUNwcCA9IDA7Ci0K
LW15ICR3cmFwcGVyTmFtZXNwYWNlID0gIktTVkciOwotbXkgJG5hbWVzcGFjZSA9ICJTVkciOwot
bXkgJHRhZ3NGaWxlID0gImtzdmcyL3N2Zy90YWduYW1lcy5pbiI7Ci1teSAkYXR0cnNGaWxlID0g
ImtzdmcyL3N2Zy9hdHRybmFtZXMuaW4iOwotCitteSAkcHJpbnRGYWN0b3J5ID0gMDsKK215ICRj
cHBOYW1lc3BhY2UgPSAiIjsKK215ICRuYW1lc3BhY2UgPSAiIjsKK215ICRuYW1lc3BhY2VVUkkg
PSAiIjsKK215ICR0YWdzRmlsZSA9ICIiOworbXkgJGF0dHJzRmlsZSA9ICIiOwogbXkgJG91dHB1
dERpciA9ICIuIjsKK215IEB0YWdzID0gKCk7CitteSBAYXR0cnMgPSAoKTsKK215ICR0YWdzTnVs
bE5hbWVzcGFjZSA9IDA7CitteSAkYXR0cnNOdWxsTmFtZXNwYWNlID0gMDsKIAogR2V0T3B0aW9u
cygndGFncz1zJyA9PiBcJHRhZ3NGaWxlLCAKICAgICAnYXR0cnM9cycgPT4gXCRhdHRyc0ZpbGUs
CiAgICAgJ291dHB1dERpcj1zJyA9PiBcJG91dHB1dERpciwKLSAgICAnbmFtZXNwYWNlPXMnID0+
IFwkbmFtZXNwYWNlKTsKKyAgICAnbmFtZXNwYWNlPXMnID0+IFwkbmFtZXNwYWNlLAorICAgICdu
YW1lc3BhY2VVUkk9cycgPT4gXCRuYW1lc3BhY2VVUkksCisgICAgJ2NwcE5hbWVzcGFjZT1zJyA9
PiBcJGNwcE5hbWVzcGFjZSwKKyAgICAnZmFjdG9yeScgPT4gXCRwcmludEZhY3RvcnksCisgICAg
J3RhZ3NOdWxsTmFtZXNwYWNlJyA9PiBcJHRhZ3NOdWxsTmFtZXNwYWNlLAorICAgICdhdHRyc051
bGxOYW1lc3BhY2UnID0+IFwkYXR0cnNOdWxsTmFtZXNwYWNlLCk7CisKK2RpZSAiWW91IG11c3Qg
c3BlY2lmeSBhIG5hbWVzcGFjZSAoZS5nLiBTVkcpIGZvciA8bmFtZXNwYWNlPk5hbWVzLmgiIHVu
bGVzcyAkbmFtZXNwYWNlOworZGllICJZb3UgbXVzdCBzcGVjaWZ5IGEgbmFtZXNwYWNlVVJJIChl
LmcuIGh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnKSIgdW5sZXNzICRuYW1lc3BhY2VVUkk7Citk
aWUgIllvdSBtdXN0IHNwZWNpZnkgYSBjcHBOYW1lc3BhY2UgKGUuZy4gRE9NKSB1c2VkIGZvciA8
Y3BwTmFtZXNwYWNlPjo6PG5hbWVzcGFjZT5OYW1lczo6Zm9vVGFnIiB1bmxlc3MgJGNwcE5hbWVz
cGFjZTsKK2RpZSAiWW91IG11c3Qgc3BlY2lmeSBhdCBsZWFzdCBvbmUgb2YgLS10YWdzIDxmaWxl
PiBvciAtLWF0dHJzIDxmaWxlPiIgdW5sZXNzIChsZW5ndGgoJHRhZ3NGaWxlKSB8fCBsZW5ndGgo
JGF0dHJzRmlsZSkpOwogCi1teSBAdGFncyA9IHJlYWROYW1lcygkdGFnc0ZpbGUpOwotbXkgQGF0
dHJzID0gcmVhZE5hbWVzKCRhdHRyc0ZpbGUpOwotbXkgQGVsZW1lbnRzID0gZWxlbWVudHNGb3JU
YWdzKEB0YWdzKTsKK0B0YWdzID0gcmVhZE5hbWVzKCR0YWdzRmlsZSkgaWYgbGVuZ3RoKCR0YWdz
RmlsZSk7CitAYXR0cnMgPSByZWFkTmFtZXMoJGF0dHJzRmlsZSkgaWYgbGVuZ3RoKCRhdHRyc0Zp
bGUpOwogCiBta3BhdGgoJG91dHB1dERpcik7CiBteSAkbmFtZXNCYXNlUGF0aCA9ICIkb3V0cHV0
RGlyLyR7bmFtZXNwYWNlfU5hbWVzIjsKQEAgLTMyLDkgKzQwLDEzIEBAIG15ICRmYWN0b3J5QmFz
ZVBhdGggPSAiJG91dHB1dERpci8ke25hbWUKIAogcHJpbnROYW1lc0hlYWRlckZpbGUoIiRuYW1l
c0Jhc2VQYXRoLmgiKTsKIHByaW50TmFtZXNDcHBGaWxlKCIkbmFtZXNCYXNlUGF0aC5jcHAiKTsK
LXByaW50RmFjdG9yeUNwcEZpbGUoIiRmYWN0b3J5QmFzZVBhdGguY3BwIik7Ci1wcmludEZhY3Rv
cnlIZWFkZXJGaWxlKCIkZmFjdG9yeUJhc2VQYXRoLmgiKTsKK2lmICgkcHJpbnRGYWN0b3J5KSB7
CisJcHJpbnRGYWN0b3J5Q3BwRmlsZSgiJGZhY3RvcnlCYXNlUGF0aC5jcHAiKTsKKwlwcmludEZh
Y3RvcnlIZWFkZXJGaWxlKCIkZmFjdG9yeUJhc2VQYXRoLmgiKTsKK30KKwogCisjIyBTdXBwb3J0
IHJvdXRpbmVzCiAKIHN1YiByZWFkTmFtZXMKIHsKQEAgLTQzLDE2ICs1NSwxOCBAQCBzdWIgcmVh
ZE5hbWVzCiAJZGllICJGYWlsZWQgdG8gb3BlbiBmaWxlOiAkbmFtZXNGaWxlIiB1bmxlc3Mgb3Bl
bihOQU1FUywgIjwiLCAkbmFtZXNGaWxlKTsKIAlteSBAbmFtZXMgPSAoKTsKIAl3aGlsZSAoPE5B
TUVTPikgeworCQluZXh0IGlmIChtLyMvKTsKIAkJcy8tL18vZzsKIAkJY2hvbXAgJF87CiAJCXB1
c2ggQG5hbWVzLCAkXzsKIAl9CQogCWNsb3NlKE5BTUVTKTsKIAkKKwlkaWUgIkZhaWxlZCB0byBy
ZWFkIG5hbWVzIGZyb20gZmlsZTogJG5hbWVzRmlsZSIgdW5sZXNzIChzY2FsYXIoQG5hbWVzKSk7
CisJCiAJcmV0dXJuIEBuYW1lcwogfQogCi0KIHN1YiBwcmludE1hY3JvcwogewogCW15IEBuYW1l
cyA9IEBfOwpAQCAtODIsMTA3ICs5Niw2NyBAQCBzdWIgcHJpbnRGdW5jdGlvbkluaXRzCiAJfQog
fQogCi1zdWIgdXBwZXJDYXNlTmFtZQorc3ViIHN2Z0NhcGl0YWxpemF0aW9uSGFja3MKIHsKIAlt
eSAkbmFtZSA9IHNoaWZ0OwogCQotCSRuYW1lID0gY2FtZWxDYXNlTmFtZSgkbmFtZSk7Ci0JJG5h
bWUgPX4gcy9zdmcvU1ZHLzsKLQkKIAlpZiAoJG5hbWUgPX4gL15mZSguKykkLykgewotCQlyZXR1
cm4gIkZFIiAuIHVjZmlyc3QgJDE7CisJCSRuYW1lID0gIkZFIiAuIHVjZmlyc3QgJDE7CiAJfQot
CXJldHVybiB1Y2ZpcnN0ICRuYW1lOwotfQotCi1zdWIgY2FtZWxDYXNlTmFtZQotewotCW15ICRu
YW1lID0gc2hpZnQ7Ci0JJG5hbWUgPX4gcy9ncmFkaWVudC9HcmFkaWVudC87Ci0JJG5hbWUgPX4g
cy9jb2xvci9Db2xvci87Ci0JJG5hbWUgPX4gcy9hbmltYXRlL0FuaW1hdGUvOwotCSRuYW1lID1+
IHMvbWF0cml4L01hdHJpeC87Ci0JJG5hbWUgPX4gcy9ub2RlL05vZGUvOwotCSRuYW1lID1+IHMv
dHVyYi9UdXJiLzsKLQkkbmFtZSA9fiBzL21lcmdlL01lcmdlLzsKLQkkbmFtZSA9fiBzL2dhdXMv
R2F1cy87Ci0JJG5hbWUgPX4gcy9ibHVyL0JsdXIvOwotCSRuYW1lID1+IHMvc3Bhbi9TcGFuLzsK
LQkkbmFtZSA9fiBzL3BhdGgvUGF0aC87Ci0JJG5hbWUgPX4gcy9pbWFnZS9JbWFnZS87Ci0JJG5h
bWUgPX4gcy9jb21wL0NvbXAvOwotCSRuYW1lID1+IHMvb2ZmL09mZi87Ci0JJG5hbWUgPX4gcy9m
bG9vZC9GbG9vZC87Ci0JJG5hbWUgPX4gcy9ibGVuZC9CbGVuZC87Ci0JJG5hbWUgPX4gcy90cmFu
cy9UcmFucy87Ci0JJG5hbWUgPX4gcy9nbHlwaC9HbHlwaC87Ci0JJG5hbWUgPX4gcy9pdGVtL0l0
ZW0vOwotCSRuYW1lID1+IHMvZmFjZS9GYWNlLzsKLQkkbmFtZSA9fiBzL3VyaS9VUkkvOwotCSRu
YW1lID1+IHMvc3JjL1NyYy87Ci0JJG5hbWUgPX4gcy9mb3JtYXQvRm9ybWF0LzsKLQkkbmFtZSA9
fiBzL3JlZi9SZWYvOwotCSRuYW1lID1+IHMvcHJvZmlsZS9Qcm9maWxlLzsKLQkkbmFtZSA9fiBz
L3Nwb3QvU3BvdC87Ci0JJG5hbWUgPX4gcy9uYW1lL05hbWUvOwotCSRuYW1lID1+IHMvb2JqZWN0
L09iamVjdC87Ci0JJG5hbWUgPX4gcy9tb3Rpb24vTW90aW9uLzsKLQkkbmFtZSA9fiBzL21vdGlv
bi9MaWdodC87CiAJJG5hbWUgPX4gcy9rZXJuL0tlcm4vOwotCSRuYW1lID1+IHMvbWFwL01hcC87
Ci0JJG5hbWUgPX4gcy9mdW5jKC4pJC8iRnVuYyIuIHVjICQxL2U7Ci0JcmV0dXJuIGxjZmlyc3Qg
JG5hbWU7CisJJG5hbWUgPX4gcy9tcGF0aC9NUGF0aC87CisJJG5hbWUgPX4gcy9zdmcvU1ZHLzsK
KwkkbmFtZSA9fiBzL3RyZWYvVFJlZi87CisJJG5hbWUgPX4gcy90c3Bhbi9UU3Bhbi87CisJJG5h
bWUgPX4gcy91cmkvVVJJLzsKKwkKKwlyZXR1cm4gJG5hbWU7CiB9CiAKLXN1YiBlbGVtZW50c0Zv
clRhZ3MKK3N1YiB1cHBlckNhc2VOYW1lCiB7Ci0JbXkgQG5hbWVzID0gQF87Ci0JbXkgQGZpbHRl
cmVkID0gKCk7Ci0JZm9yIChAbmFtZXMpIHsKLQkJbmV4dCBpZiAvXy87Ci0JCW5leHQgaWYgL2Zv
bnQvaTsKLQkJbmV4dCBpZiAvZ2x5cGgvaTsKLQkJbmV4dCBpZiAva2Vybi9pOwotCQluZXh0IGlm
IC9tb3Rpb24vaTsKLQkJbmV4dCBpZiAvbWFzay9pOwotCQluZXh0IGlmIC9tZXRhL2k7Ci0JCW5l
eHQgaWYgL21wYXRoL2k7Ci0JCW5leHQgaWYgL3RyZWYvaTsKLQkJbmV4dCBpZiAvdGV4dHBhdGgv
aTsKLQkJbmV4dCBpZiAvZm9yZWlnbi9pOwotCQluZXh0IGlmIC9jb252b2x2ZS9pOwotCQluZXh0
IGlmIC9tYXAvaTsKLQkJbmV4dCBpZiAvbW9ycGgvaTsKLQkJcHVzaChAZmlsdGVyZWQsICRfKTsK
KwlteSAkbmFtZSA9IHNoaWZ0OworCQorCSRuYW1lID0gc3ZnQ2FwaXRhbGl6YXRpb25IYWNrcygk
bmFtZSkgaWYgKCRuYW1lc3BhY2UgZXEgIlNWRyIpOworCQorCXdoaWxlICgkbmFtZSA9fiAvXigu
Kj8pXyguKikvKSB7CisJCSRuYW1lID0gJDEgLiB1Y2ZpcnN0ICQyOwogCX0KLQlyZXR1cm4gQGZp
bHRlcmVkOworCQorCXJldHVybiB1Y2ZpcnN0ICRuYW1lOwogfQogCi0KIHN1YiBwcmludExpY2Vu
c2VIZWFkZXIKIHsKIAlwcmludCAiLyoKLSAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSAkbmFt
ZXNwYWNlIERPTSBpbXBsZW1lbnRhdGlvbiBmb3IgS0RFLgotICoKLSAqIENvcHlyaWdodCAoQykg
MjAwNSBBcHBsZSBDb21wdXRlciwgSW5jLgorICogVEhJUyBGSUxFIElTIEFVVE9NQVRJQ0FMTFkg
R0VORVJBVEVELCBETyBOT1QgRURJVC4KICAqCi0gKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0
d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCi0gKiBtb2RpZnkgaXQgdW5kZXIg
dGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwotICogTGljZW5zZSBh
cyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCi0gKiB2
ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl
cnNpb24uCiAgKgotICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRo
YXQgaXQgd2lsbCBiZSB1c2VmdWwsCi0gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhv
dXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgotICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKLSAqIExpYnJhcnkg
R2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICogQ29weXJpZ2h0IChD
KSAyMDA1IEFwcGxlIENvbXB1dGVyLCBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKLSAq
IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVy
YWwgUHVibGljIExpY2Vuc2UKLSAqIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBzZWUgdGhlIGZp
bGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCi0gKiB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UgLSBTdWl0ZSAzMzAsCi0gKiBCb3N0b24s
IE1BIDAyMTExLTEzMDcsIFVTQS4KKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgogICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgQ09NUFVURVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
CisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBDT01QVVRFUiwgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLiAKICAqLwogCisKICI7CiB9CiAKQEAgLTE5NiwzNyArMTcwLDQyIEBA
IHN1YiBwcmludE5hbWVzSGVhZGVyRmlsZQogCXByaW50ICIjZGVmaW5lIERPTV8ke25hbWVzcGFj
ZX1OQU1FU19IXG5cbiI7CiAJcHJpbnQgIiNpbmNsdWRlIFwiZG9tX3FuYW1lLmhcIlxuXG4iOwog
CQotCXByaW50ICJuYW1lc3BhY2UgJHdyYXBwZXJOYW1lc3BhY2UgeyBuYW1lc3BhY2UgJHtuYW1l
c3BhY2V9TmFtZXMge1xuXG4iOworCXByaW50ICJuYW1lc3BhY2UgJGNwcE5hbWVzcGFjZSB7IG5h
bWVzcGFjZSAke25hbWVzcGFjZX1OYW1lcyB7XG5cbiI7CiAJCi0JcHJpbnQiI2RlZmluZSBET01f
JHtuYW1lc3BhY2V9TkFNRVNfRk9SX0VBQ0hfVEFHKG1hY3JvKSBcXFxuIjsKLQlwcmludE1hY3Jv
cyhAdGFncyk7Ci0JcHJpbnQiLy8gZW5kIG9mIG1hY3JvXG5cbiI7Ci0JcHJpbnQgIiNkZWZpbmUg
RE9NXyR7bmFtZXNwYWNlfU5BTUVTX0ZPUl9FQUNIX0FUVFIobWFjcm8pIFxcXG4iOwotCXByaW50
TWFjcm9zKEBhdHRycyk7Ci0JcHJpbnQgIi8vIGVuZCBvZiBtYWNyb1xuXG4iOworCWlmIChzY2Fs
YXIoQHRhZ3MpKSB7CisJCXByaW50IiNkZWZpbmUgRE9NXyR7bmFtZXNwYWNlfU5BTUVTX0ZPUl9F
QUNIX1RBRyhtYWNybykgXFxcbiI7CisJCXByaW50TWFjcm9zKEB0YWdzKTsKKwkJcHJpbnQiLy8g
ZW5kIG9mIG1hY3JvXG5cbiI7CisJfQorCWlmIChzY2FsYXIoQGF0dHJzKSkgeworCQlwcmludCAi
I2RlZmluZSBET01fJHtuYW1lc3BhY2V9TkFNRVNfRk9SX0VBQ0hfQVRUUihtYWNybykgXFxcbiI7
CisJCXByaW50TWFjcm9zKEBhdHRycyk7CisJCXByaW50ICIvLyBlbmQgb2YgbWFjcm9cblxuIjsK
Kwl9CiAJCiAJbXkgJGxvd2VyTmFtZXNwYWNlID0gbGMoJG5hbWVzcGFjZSk7Ci0JcHJpbnQiI2lm
ICFET01fJHtuYW1lc3BhY2V9TkFNRVNfSElERV9HTE9CQUxTCi0gICAgLy8gTmFtZXNwYWNlCi0g
ICAgZXh0ZXJuIGNvbnN0IERPTTo6QXRvbWljU3RyaW5nICR7bG93ZXJOYW1lc3BhY2V9TmFtZXNw
YWNlVVJJOwotCi0gICAgLy8gVGFncwotICAgICNkZWZpbmUgRE9NX05BTUVTX0RFRklORV9UQUdf
R0xPQkFMKG5hbWUpIGV4dGVybiBjb25zdCBET006OlF1YWxpZmllZE5hbWUgbmFtZSMjVGFnOwot
ICAgIERPTV8ke25hbWVzcGFjZX1OQU1FU19GT1JfRUFDSF9UQUcoRE9NX05BTUVTX0RFRklORV9U
QUdfR0xPQkFMKQotICAgICN1bmRlZiBET01fTkFNRVNfREVGSU5FX1RBR19HTE9CQUwKLQotICAg
IC8vIEF0dHJpYnV0ZXMKLSAgICAjZGVmaW5lIERPTV9OQU1FU19ERUZJTkVfQVRUUl9HTE9CQUwo
bmFtZSkgZXh0ZXJuIGNvbnN0IERPTTo6UXVhbGlmaWVkTmFtZSBuYW1lIyNBdHRyOwotICAgIERP
TV8ke25hbWVzcGFjZX1OQU1FU19GT1JfRUFDSF9BVFRSKERPTV9OQU1FU19ERUZJTkVfQVRUUl9H
TE9CQUwpCi0gICAgI3VuZGVmIERPTV9OQU1FU19ERUZJTkVfQVRUUl9HTE9CQUwKLSNlbmRpZgot
Ci0gICAgdm9pZCBpbml0KCk7Ci19IH0KLQotI2VuZGlmCi0KLSI7CisJcHJpbnQgIiNpZiAhRE9N
XyR7bmFtZXNwYWNlfU5BTUVTX0hJREVfR0xPQkFMU1xuIjsKKyAgICBwcmludCAiLy8gTmFtZXNw
YWNlXG4iOworICAgIHByaW50ICJleHRlcm4gY29uc3QgRE9NOjpBdG9taWNTdHJpbmcgJHtsb3dl
ck5hbWVzcGFjZX1OYW1lc3BhY2VVUkk7XG5cbiI7CisKKwlpZiAoc2NhbGFyKEB0YWdzKSkgewor
ICAgIAlwcmludCAiLy8gVGFnc1xuIjsKKwkJcHJpbnQgIiNkZWZpbmUgRE9NX05BTUVTX0RFRklO
RV9UQUdfR0xPQkFMKG5hbWUpIGV4dGVybiBjb25zdCBET006OlF1YWxpZmllZE5hbWUgbmFtZSMj
VGFnO1xuIjsKKwkJcHJpbnQgIkRPTV8ke25hbWVzcGFjZX1OQU1FU19GT1JfRUFDSF9UQUcoRE9N
X05BTUVTX0RFRklORV9UQUdfR0xPQkFMKVxuIjsKKwkJcHJpbnQgIiN1bmRlZiBET01fTkFNRVNf
REVGSU5FX1RBR19HTE9CQUxcblxuIjsKKyAgICB9CisJCisJaWYgKHNjYWxhcihAYXR0cnMpKSB7
CisJCXByaW50ICIvLyBBdHRyaWJ1dGVzXG4iOworCQlwcmludCAiI2RlZmluZSBET01fTkFNRVNf
REVGSU5FX0FUVFJfR0xPQkFMKG5hbWUpIGV4dGVybiBjb25zdCBET006OlF1YWxpZmllZE5hbWUg
bmFtZSMjQXR0cjtcbiI7CisJCXByaW50ICJET01fJHtuYW1lc3BhY2V9TkFNRVNfRk9SX0VBQ0hf
QVRUUihET01fTkFNRVNfREVGSU5FX0FUVFJfR0xPQkFMKVxuIjsKKwkJcHJpbnQgIiN1bmRlZiBE
T01fTkFNRVNfREVGSU5FX0FUVFJfR0xPQkFMXG5cbiI7CisgICAgfQorCXByaW50ICIjZW5kaWZc
blxuIjsKKwlwcmludCAidm9pZCBpbml0KCk7XG5cbiI7CisJcHJpbnQgIn0gfVxuXG4iOworCXBy
aW50ICIjZW5kaWZcblxuIjsKKwkKIAlyZXN0b3JlU1RET1VUKCk7CiB9CiAKQEAgLTIzNiwxMyAr
MjE1LDE1IEBAIHN1YiBwcmludE5hbWVzQ3BwRmlsZQogCXJlZGlyZWN0U1RET1VUKCRjcHBQYXRo
KTsKIAkKIAlwcmludExpY2Vuc2VIZWFkZXIoKTsKKwkKKwlteSAkbG93ZXJOYW1lc3BhY2UgPSBs
YygkbmFtZXNwYWNlKTsKIAogcHJpbnQgIiNkZWZpbmUgRE9NXyR7bmFtZXNwYWNlfU5BTUVTX0hJ
REVfR0xPQkFMUyAxXG5cbiI7CiAKIHByaW50ICIjaW5jbHVkZSBcImNvbmZpZy5oXCJcbiI7CiBw
cmludCAiI2luY2x1ZGUgXCIke25hbWVzcGFjZX1OYW1lcy5oXCJcblxuIjsKIAotcHJpbnQgIm5h
bWVzcGFjZSAkd3JhcHBlck5hbWVzcGFjZSB7IG5hbWVzcGFjZSAke25hbWVzcGFjZX1OYW1lcyB7
CitwcmludCAibmFtZXNwYWNlICRjcHBOYW1lc3BhY2UgeyBuYW1lc3BhY2UgJHtuYW1lc3BhY2V9
TmFtZXMgewogCiB1c2luZyBuYW1lc3BhY2UgS0RPTTsKIApAQCAtMjUxLDE1ICsyMzIsMjAgQEAg
dXNpbmcgbmFtZXNwYWNlIEtET007CiAKICNkZWZpbmUgREVGSU5FX1VOSU5JVElBTElaRURfR0xP
QkFMKHR5cGUsIG5hbWUpIHZvaWQgKm5hbWVbKHNpemVvZih0eXBlKSArIHNpemVvZih2b2lkICop
IC0gMSkgLyBzaXplb2Yodm9pZCAqKV07CiAKLURFRklORV9VTklOSVRJQUxJWkVEX0dMT0JBTChE
T006OkF0b21pY1N0cmluZywgc3ZnTmFtZXNwYWNlVVJJKQorREVGSU5FX1VOSU5JVElBTElaRURf
R0xPQkFMKEF0b21pY1N0cmluZywgJHtsb3dlck5hbWVzcGFjZX1OYW1lc3BhY2VVUkkpCisiOwog
Ci0jZGVmaW5lIERFRklORV9UQUdfR0xPQkFMKG5hbWUpIERFRklORV9VTklOSVRJQUxJWkVEX0dM
T0JBTChET006OlF1YWxpZmllZE5hbWUsIG5hbWUjI1RhZykKLURPTV8ke25hbWVzcGFjZX1OQU1F
U19GT1JfRUFDSF9UQUcoREVGSU5FX1RBR19HTE9CQUwpCisJaWYgKHNjYWxhcihAdGFncykpIHsK
KwkJcHJpbnQgIiNkZWZpbmUgREVGSU5FX1RBR19HTE9CQUwobmFtZSkgREVGSU5FX1VOSU5JVElB
TElaRURfR0xPQkFMKFF1YWxpZmllZE5hbWUsIG5hbWUjI1RhZylcbiI7CisJCXByaW50ICJET01f
JHtuYW1lc3BhY2V9TkFNRVNfRk9SX0VBQ0hfVEFHKERFRklORV9UQUdfR0xPQkFMKVxuXG4iOwor
CX0KIAotI2RlZmluZSBERUZJTkVfQVRUUl9HTE9CQUwobmFtZSkgREVGSU5FX1VOSU5JVElBTEla
RURfR0xPQkFMKERPTTo6UXVhbGlmaWVkTmFtZSwgbmFtZSMjQXR0cikKLURPTV8ke25hbWVzcGFj
ZX1OQU1FU19GT1JfRUFDSF9BVFRSKERFRklORV9BVFRSX0dMT0JBTCkKKwlpZiAoc2NhbGFyKEBh
dHRycykpIHsKKwkJcHJpbnQgIiNkZWZpbmUgREVGSU5FX0FUVFJfR0xPQkFMKG5hbWUpIERFRklO
RV9VTklOSVRJQUxJWkVEX0dMT0JBTChRdWFsaWZpZWROYW1lLCBuYW1lIyNBdHRyKVxuIjsKKwkJ
cHJpbnQgIkRPTV8ke25hbWVzcGFjZX1OQU1FU19GT1JfRUFDSF9BVFRSKERFRklORV9BVFRSX0dM
T0JBTClcblxuIjsKKwl9CiAKLXZvaWQgaW5pdCgpCitwcmludCAidm9pZCBpbml0KCkKIHsKICAg
ICBzdGF0aWMgYm9vbCBpbml0aWFsaXplZCA9IGZhbHNlOwogICAgIGlmIChpbml0aWFsaXplZCkK
QEAgLTI2OCwxNSArMjU0LDE5IEBAIHZvaWQgaW5pdCgpCiAgICAgCiAgICAgLy8gVXNlIHBsYWNl
bWVudCBuZXcgdG8gaW5pdGlhbGl6ZSB0aGUgZ2xvYmFscy4KICI7Ci0KLQlteSAkbG93ZXJOYW1l
c3BhY2UgPSBsYygkbmFtZXNwYWNlKTsKIAkKLSAgICBwcmludCgiICAgIERPTTo6QXRvbWljU3Ry
aW5nIHN2Z05TKFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIik7XG5cbiIpOworICAgIHBy
aW50KCIgICAgQXRvbWljU3RyaW5nICR7bG93ZXJOYW1lc3BhY2V9TlMoXCIkbmFtZXNwYWNlVVJJ
XCIpO1xuXG4iKTsKIAogICAgIHByaW50KCIgICAgLy8gTmFtZXNwYWNlXG4iKTsKLSAgICBwcmlu
dCgiICAgIG5ldyAoJiR7bG93ZXJOYW1lc3BhY2V9TmFtZXNwYWNlVVJJKSBET006OkF0b21pY1N0
cmluZygke2xvd2VyTmFtZXNwYWNlfU5TKTtcbiIpOwotCXByaW50RGVmaW5pdGlvbnMoXEB0YWdz
LCAidGFncyIsICIke2xvd2VyTmFtZXNwYWNlfU5TIik7Ci0JcHJpbnREZWZpbml0aW9ucyhcQGF0
dHJzLCAiYXR0cmlidXRlcyIsICJudWxsQXRvbSIpOworICAgIHByaW50KCIgICAgbmV3ICgmJHts
b3dlck5hbWVzcGFjZX1OYW1lc3BhY2VVUkkpIEF0b21pY1N0cmluZygke2xvd2VyTmFtZXNwYWNl
fU5TKTtcblxuIik7CisgICAgaWYgKHNjYWxhcihAdGFncykpIHsKKyAgICAJbXkgJHRhZ3NOYW1l
c3BhY2UgPSAkdGFnc051bGxOYW1lc3BhY2UgPyAibnVsbEF0b20iIDogIiR7bG93ZXJOYW1lc3Bh
Y2V9TlMiOworCQlwcmludERlZmluaXRpb25zKFxAdGFncywgInRhZ3MiLCAkdGFnc05hbWVzcGFj
ZSk7CisJfQorCWlmIChzY2FsYXIoQGF0dHJzKSkgeworICAgIAlteSAkYXR0cnNOYW1lc3BhY2Ug
PSAkYXR0cnNOdWxsTmFtZXNwYWNlID8gIm51bGxBdG9tIiA6ICIke2xvd2VyTmFtZXNwYWNlfU5T
IjsKKwkJcHJpbnREZWZpbml0aW9ucyhcQGF0dHJzLCAiYXR0cmlidXRlcyIsICRhdHRyc05hbWVz
cGFjZSk7CisJfQogCiAJcHJpbnQgIn1cblxufSB9IjsKIAlyZXN0b3JlU1RET1VUKCk7CkBAIC0z
MDUsMTEgKzI5NSwxMSBAQCBzdWIgcHJpbnREZWZpbml0aW9ucwogCWZvciBteSAkbmFtZSAoQCRu
YW1lc1JlZikgewogCQlpZiAoJG5hbWUgPX4gL18vKSB7CiAJCQlteSAkcmVhbE5hbWUgPSAkbmFt
ZTsKLQkJCSRyZWFsTmFtZSA9fiBzL18vLS87CisJCQkkcmVhbE5hbWUgPX4gcy9fLy0vZzsKIAkJ
CXByaW50ICIgICAgJHtuYW1lfSR7c2hvcnRDYW1lbFR5cGV9U3RyaW5nID0gXCIkcmVhbE5hbWVc
IjtcbiI7CiAJCX0KIAl9Ci0JcHJpbnQgIlxuICAgICNkZWZpbmUgSU5JVElBTElaRV8ke3Nob3J0
VXBwZXJUeXBlfV9HTE9CQUwobmFtZSkgbmV3ICgmbmFtZSMjJHtzaG9ydENhbWVsVHlwZX0pIERP
TTo6UXVhbGlmaWVkTmFtZShudWxsQXRvbSwgbmFtZSMjJHtzaG9ydENhbWVsVHlwZX1TdHJpbmcs
ICRuYW1lc3BhY2VVUkkpO1xuIjsKKwlwcmludCAiXG4gICAgI2RlZmluZSBJTklUSUFMSVpFXyR7
c2hvcnRVcHBlclR5cGV9X0dMT0JBTChuYW1lKSBuZXcgKCZuYW1lIyMke3Nob3J0Q2FtZWxUeXBl
fSkgUXVhbGlmaWVkTmFtZShudWxsQXRvbSwgbmFtZSMjJHtzaG9ydENhbWVsVHlwZX1TdHJpbmcs
ICRuYW1lc3BhY2VVUkkpO1xuIjsKIAlwcmludCAiICAgIERPTV8ke25hbWVzcGFjZX1OQU1FU19G
T1JfRUFDSF8ke3Nob3J0VXBwZXJUeXBlfShJTklUSUFMSVpFXyR7c2hvcnRVcHBlclR5cGV9X0dM
T0JBTClcblxuIjsKIH0KIApAQCAtMzM2LDI0ICszMjYsMjQgQEAgc3ViIHByaW50RmFjdG9yeUNw
cEZpbGUKIHByaW50TGljZW5zZUhlYWRlcigpOwogCiBwcmludCAiI2luY2x1ZGUgXCJjb25maWcu
aFwiXG5cbiI7Ci1wcmludCAiI2luY2x1ZGUgXCJTVkdFbGVtZW50RmFjdG9yeS5oXCJcbiI7Citw
cmludCAiI2luY2x1ZGUgXCIke25hbWVzcGFjZX1FbGVtZW50RmFjdG9yeS5oXCJcbiI7CiBwcmlu
dCAiI2luY2x1ZGUgXCIke25hbWVzcGFjZX1OYW1lcy5oXCJcblxuIjsKIAotcHJpbnRFbGVtZW50
SW5jbHVkZXMoQGVsZW1lbnRzKTsKK3ByaW50RWxlbWVudEluY2x1ZGVzKEB0YWdzKTsKIAogcHJp
bnQgIlxuXG4jaW5jbHVkZSA8a3htbGNvcmUvSGFzaE1hcC5oPlxuXG4iOwogCiBwcmludCAidXNp
bmcgbmFtZXNwYWNlIEtET007XG4iOwotcHJpbnQgInVzaW5nIG5hbWVzcGFjZSAke3dyYXBwZXJO
YW1lc3BhY2V9Ojoke25hbWVzcGFjZX1OYW1lcztcblxuIjsKK3ByaW50ICJ1c2luZyBuYW1lc3Bh
Y2UgJHtjcHBOYW1lc3BhY2V9Ojoke25hbWVzcGFjZX1OYW1lcztcblxuIjsKIAogcHJpbnQgInR5
cGVkZWYgS1hNTENvcmU6Okhhc2hNYXA8RE9NU3RyaW5nSW1wbCAqLCB2b2lkICosIEtYTUxDb3Jl
OjpQb2ludGVySGFzaDxET01TdHJpbmdJbXBsICo+ID4gRnVuY3Rpb25NYXA7XG4iOwogcHJpbnQg
InN0YXRpYyBGdW5jdGlvbk1hcCAqZ0Z1bmN0aW9uTWFwID0gMDtcblxuIjsKIAotcHJpbnQgIm5h
bWVzcGFjZSAke3dyYXBwZXJOYW1lc3BhY2V9XG57XG5cbiI7CitwcmludCAibmFtZXNwYWNlICR7
Y3BwTmFtZXNwYWNlfVxue1xuXG4iOwogCiBwcmludCAidHlwZWRlZiAke25hbWVzcGFjZX1FbGVt
ZW50SW1wbCAqKCpDb25zdHJ1Y3RvckZ1bmMpKERvY3VtZW50SW1wbCAqZG9jLCBib29sIGNyZWF0
ZWRCeVBhcnNlcik7XG5cbiI7CiAKLXByaW50Q29uc3RydWN0b3JzKEBlbGVtZW50cyk7Citwcmlu
dENvbnN0cnVjdG9ycyhAdGFncyk7CiAKIHByaW50ICIKIHN0YXRpYyBpbmxpbmUgdm9pZCBjcmVh
dGVGdW5jdGlvbk1hcElmTmVjZXNzYXJ5KCkKQEAgLTM2Niw3ICszNTYsNyBAQCBzdGF0aWMgaW5s
aW5lIHZvaWQgY3JlYXRlRnVuY3Rpb25NYXBJZk5lCiAgICAgLy8gUG9wdWxhdGUgaXQgd2l0aCBj
b25zdHJ1Y3RvciBmdW5jdGlvbnMuCiAiOwogCi1wcmludEZ1bmN0aW9uSW5pdHMoQGVsZW1lbnRz
KTsKK3ByaW50RnVuY3Rpb25Jbml0cyhAdGFncyk7CiAKIHByaW50ICJ9XG4iOwogCkBAIC00MDQs
MjQgKzM5NCwyNCBAQCBwcmludCAiI2RlZmluZSAke25hbWVzcGFjZX1FTEVNRU5URkFDVE9SCiAK
IHByaW50ICIKIG5hbWVzcGFjZSBLRE9NIHsKLQljbGFzcyBFbGVtZW50SW1wbDsKLQljbGFzcyBE
b2N1bWVudEltcGw7Ci0JY2xhc3MgUXVhbGlmaWVkTmFtZTsKLQljbGFzcyBBdG9taWNTdHJpbmc7
Ci19Ci0KLW5hbWVzcGFjZSAke3dyYXBwZXJOYW1lc3BhY2V9Ci17Ci0JY2xhc3MgJHtuYW1lc3Bh
Y2V9RWxlbWVudEltcGw7Ci0JCi0JLy8gVGhlIGlkZWEgYmVoaW5kIHRoaXMgY2xhc3MgaXMgdGhh
dCB0aGVyZSB3aWxsIGV2ZW50dWFsbHkgYmUgYSBtYXBwaW5nIGZyb20gbmFtZXNwYWNlIFVSSXMg
dG8gRWxlbWVudEZhY3RvcmllcyB0aGF0IGNhbiBkaXNwZW5zZQotCS8vIGVsZW1lbnRzLiAgSW4g
YSBjb21wb3VuZCBkb2N1bWVudCB3b3JsZCwgdGhlIGdlbmVyaWMgY3JlYXRlRWxlbWVudCBmdW5j
dGlvbiAod2lsbCBlbmQgdXAgYmVpbmcgdmlydHVhbCkgd2lsbCBiZSBjYWxsZWQuCi0JY2xhc3Mg
JHtuYW1lc3BhY2V9RWxlbWVudEZhY3RvcnkKLQl7Ci0JcHVibGljOgotCQlLRE9NOjpFbGVtZW50
SW1wbCAqY3JlYXRlRWxlbWVudChjb25zdCBLRE9NOjpRdWFsaWZpZWROYW1lJiBxTmFtZSwgS0RP
TTo6RG9jdW1lbnRJbXBsICpkb2MsIGJvb2wgY3JlYXRlZEJ5UGFyc2VyID0gdHJ1ZSk7Ci0JCXN0
YXRpYyAke25hbWVzcGFjZX1FbGVtZW50SW1wbCAqY3JlYXRlJHtuYW1lc3BhY2V9RWxlbWVudChj
b25zdCBLRE9NOjpRdWFsaWZpZWROYW1lJiBxTmFtZSwgS0RPTTo6RG9jdW1lbnRJbXBsICpkb2Ms
IGJvb2wgY3JlYXRlZEJ5UGFyc2VyID0gdHJ1ZSk7Ci0JfTsKKyAgICBjbGFzcyBFbGVtZW50SW1w
bDsKKyAgICBjbGFzcyBEb2N1bWVudEltcGw7CisgICAgY2xhc3MgUXVhbGlmaWVkTmFtZTsKKyAg
ICBjbGFzcyBBdG9taWNTdHJpbmc7Cit9CisKK25hbWVzcGFjZSAke2NwcE5hbWVzcGFjZX0KK3sK
KyAgICBjbGFzcyAke25hbWVzcGFjZX1FbGVtZW50SW1wbDsKKworICAgIC8vIFRoZSBpZGVhIGJl
aGluZCB0aGlzIGNsYXNzIGlzIHRoYXQgdGhlcmUgd2lsbCBldmVudHVhbGx5IGJlIGEgbWFwcGlu
ZyBmcm9tIG5hbWVzcGFjZSBVUklzIHRvIEVsZW1lbnRGYWN0b3JpZXMgdGhhdCBjYW4gZGlzcGVu
c2UKKyAgICAvLyBlbGVtZW50cy4gIEluIGEgY29tcG91bmQgZG9jdW1lbnQgd29ybGQsIHRoZSBn
ZW5lcmljIGNyZWF0ZUVsZW1lbnQgZnVuY3Rpb24gKHdpbGwgZW5kIHVwIGJlaW5nIHZpcnR1YWwp
IHdpbGwgYmUgY2FsbGVkLgorICAgIGNsYXNzICR7bmFtZXNwYWNlfUVsZW1lbnRGYWN0b3J5Cisg
ICAgeworICAgIHB1YmxpYzoKKyAgICAgICAgS0RPTTo6RWxlbWVudEltcGwgKmNyZWF0ZUVsZW1l
bnQoY29uc3QgS0RPTTo6UXVhbGlmaWVkTmFtZSYgcU5hbWUsIEtET006OkRvY3VtZW50SW1wbCAq
ZG9jLCBib29sIGNyZWF0ZWRCeVBhcnNlciA9IHRydWUpOworICAgICAgICBzdGF0aWMgJHtuYW1l
c3BhY2V9RWxlbWVudEltcGwgKmNyZWF0ZSR7bmFtZXNwYWNlfUVsZW1lbnQoY29uc3QgS0RPTTo6
UXVhbGlmaWVkTmFtZSYgcU5hbWUsIEtET006OkRvY3VtZW50SW1wbCAqZG9jLCBib29sIGNyZWF0
ZWRCeVBhcnNlciA9IHRydWUpOworICAgIH07CiB9CiAKICNlbmRpZgoK
</data>
<flag name="review"
          id="921"
          type_id="1"
          status="+"
          setter="mjs"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>4871</attachid>
            <date>2005-11-30 00:50:17 -0800</date>
            <delta_ts>2005-11-30 03:01:46 -0800</delta_ts>
            <desc>Changes to WebCore.xcodeproj and sources to add (and use) XLinkNames</desc>
            <filename>better.patch</filename>
            <type>text/plain</type>
            <size>16690</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUrU1ZHL1hMaW5rTmFtZXNXcmFwcGVyLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBm
aWxlOiBXZWJDb3JlK1NWRy9YTGlua05hbWVzV3JhcHBlci5jcHAKZGlmZiAtTiBXZWJDb3JlK1NW
Ry9YTGlua05hbWVzV3JhcHBlci5jcHAKLS0tIFdlYkNvcmUrU1ZHL1hMaW5rTmFtZXNXcmFwcGVy
LmNwcAkxIEphbiAxOTcwIDAwOjAwOjAwIC0wMDAwCisrKyBXZWJDb3JlK1NWRy9YTGlua05hbWVz
V3JhcHBlci5jcHAJMzAgTm92IDIwMDUgMDg6NDE6MDAgLTAwMDAKQEAgLTAsMCArMSBAQAorI2lu
Y2x1ZGUgIlhMaW5rTmFtZXMuY3BwIgpJbmRleDogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaix2CnJldHJpZXZpbmcgcmV2aXNpb24gMS40NwpkaWZmIC1w
IC11IC1yMS40NyBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKLS0tIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkyOCBOb3YgMjAwNSAyMzozMzo1NSAtMDAwMAkxLjQ3
CisrKyBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJMzAgTm92IDIwMDUgMDg6NDE6
MTggLTAwMDAKQEAgLTEyODIsNyArMTI4Miw2IEBACiAJCUE4QzBGQkIxMDg5NzAxRjkwMEJBNTEx
NCAvKiBTVkdSZW5kZXJTdHlsZURlZnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEE4QzBGNzAyMDg5NzAxRjEwMEJBNTExNCAvKiBTVkdSZW5kZXJTdHls
ZURlZnMuaCAqLzsgfTsKIAkJQThDMEZDOUYwODk3MDFGOTAwQkE1MTE0IC8qIFNWR1pvb21FdmVu
dEltcGwuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
QThDMEY3RjUwODk3MDFGMzAwQkE1MTE0IC8qIFNWR1pvb21FdmVudEltcGwuY3BwICovOyB9Owog
CQlBOEMwRkNBMDA4OTcwMUY5MDBCQTUxMTQgLyogU1ZHWm9vbUV2ZW50SW1wbC5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThDMEY3RjYwODk3MDFGMzAw
QkE1MTE0IC8qIFNWR1pvb21FdmVudEltcGwuaCAqLzsgfTsKLQkJQThDMEZDQTEwODk3MDFGOTAw
QkE1MTE0IC8qIGtzdmdldmVudHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEE4QzBGN0Y3MDg5NzAxRjMwMEJBNTExNCAvKiBrc3ZnZXZlbnRzLmggKi87
IH07CiAJCUE4QzBGQ0E4MDg5NzAxRjkwMEJBNTExNCAvKiBTVkdBRWxlbWVudEltcGwuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThDMEY3RkYwODk3
MDFGMzAwQkE1MTE0IC8qIFNWR0FFbGVtZW50SW1wbC5jcHAgKi87IH07CiAJCUE4QzBGQ0E5MDg5
NzAxRjkwMEJBNTExNCAvKiBTVkdBRWxlbWVudEltcGwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4QzBGODAwMDg5NzAxRjMwMEJBNTExNCAvKiBTVkdB
RWxlbWVudEltcGwuaCAqLzsgfTsKIAkJQThDMEZDQUEwODk3MDFGOTAwQkE1MTE0IC8qIFNWR0Fu
Z2xlSW1wbC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBOEMwRjgwMTA4OTcwMUYzMDBCQTUxMTQgLyogU1ZHQW5nbGVJbXBsLmNwcCAqLzsgfTsKQEAg
LTE1NzYsNiArMTU3NSw3IEBACiAJCUE4QzMyOTcxMDkzQkI3QjIwMDBCOUNBQyAvKiBTVkdGRVNw
ZWN1bGFyTGlnaHRpbmdFbGVtZW50SW1wbC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBOEMzMjk2NTA5M0JCN0IyMDAwQjlDQUMgLyogU1ZHRkVTcGVj
dWxhckxpZ2h0aW5nRWxlbWVudEltcGwuY3BwICovOyB9OwogCQlBOEMzMjk3MjA5M0JCN0IyMDAw
QjlDQUMgLyogU1ZHRkVQb2ludExpZ2h0RWxlbWVudEltcGwuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4QzMyOTY2MDkzQkI3QjIwMDBCOUNBQyAvKiBT
VkdGRVBvaW50TGlnaHRFbGVtZW50SW1wbC5oICovOyB9OwogCQlBOEMzMjk3MzA5M0JCN0IyMDAw
QjlDQUMgLyogU1ZHRkVQb2ludExpZ2h0RWxlbWVudEltcGwuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQThDMzI5NjcwOTNCQjdCMjAwMEI5Q0FDIC8q
IFNWR0ZFUG9pbnRMaWdodEVsZW1lbnRJbXBsLmNwcCAqLzsgfTsKKwkJQThDMzJEOTcwOTNEOEVB
NDAwMEI5Q0FDIC8qIFhMaW5rTmFtZXNXcmFwcGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEE4QzMyRDk2MDkzRDhFQTQwMDBCOUNBQyAvKiBYTGlu
a05hbWVzV3JhcHBlci5jcHAgKi87IH07CiAJCUE4RkQ4Qjg2MDg3Q0I0NEMwMERDMzcwNyAvKiBL
V1FXTWF0cml4Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTg1RDdBOEMwODc5RUM2NDAwNkE5MTcyIC8qIEtXUVdNYXRyaXgubW0gKi87IH07CiAJCUE4
RkQ4Qjg3MDg3Q0I0NTcwMERDMzcwNyAvKiBLV1FXTWF0cml4LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBODVEN0E4RDA4NzlFQzY0MDA2QTkxNzIgLyog
S1dRV01hdHJpeC5oICovOyB9OwogCQlCQzE3OTg5MjA4OEQ5NzVGMDA2MDY4QTUgLyogcmVuZGVy
X3RoZW1lX21hYy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IEJDMTc5ODhGMDg4RDk3NUYwMDYwNjhBNSAvKiByZW5kZXJfdGhlbWVfbWFjLm1tICovOyB9
OwpAQCAtMjI1Myw3ICsyMjUzLDYgQEAKIAkJQThDMEY3RjAwODk3MDFGMzAwQkE1MTE0IC8qIFNW
R0xvb2t1cC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdMb29rdXAuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQThDMEY3RjUwODk3MDFGMzAwQkE1MTE0IC8q
IFNWR1pvb21FdmVudEltcGwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU1ZHWm9vbUV2ZW50SW1wbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE4
QzBGN0Y2MDg5NzAxRjMwMEJBNTExNCAvKiBTVkdab29tRXZlbnRJbXBsLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNWR1pvb21FdmVudEltcGwuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJQThDMEY3RjcwODk3MDFGMzAwQkE1MTE0IC8qIGtzdmdldmVudHMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0ga3N2Z2V2ZW50cy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlBOEMwRjdGRjA4OTcwMUYzMDBCQTUxMTQgLyogU1ZHQUVsZW1l
bnRJbXBsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNWR0FFbGVt
ZW50SW1wbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE4QzBGODAwMDg5NzAx
RjMwMEJBNTExNCAvKiBTVkdBRWxlbWVudEltcGwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU1ZHQUVsZW1lbnRJbXBsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUE4QzBGODAxMDg5NzAxRjMwMEJBNTExNCAvKiBTVkdBbmdsZUltcGwuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHQW5nbGVJbXBsLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKQEAgLTI1NjksNiArMjU2OCw4IEBACiAJCUE4QzMyOTY1MDkzQkI3QjIw
MDBCOUNBQyAvKiBTVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50SW1wbC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50
SW1wbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE4QzMyOTY2MDkzQkI3QjIw
MDBCOUNBQyAvKiBTVkdGRVBvaW50TGlnaHRFbGVtZW50SW1wbC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBTVkdGRVBvaW50TGlnaHRFbGVtZW50SW1wbC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlBOEMzMjk2NzA5M0JCN0IyMDAwQjlDQUMgLyogU1ZHRkVQb2lu
dExpZ2h0RWxlbWVudEltcGwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gU1ZHRkVQb2ludExpZ2h0RWxlbWVudEltcGwuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQlBOEMzMkQ4OTA5M0Q4QkZBMDAwQjlDQUMgLyogeGxpbmthdHRycy5pbiAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHRleHQ7IHBhdGggPSB4bGlua2F0dHJzLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQlBOEMzMkQ5NjA5M0Q4RUE0MDAwQjlDQUMgLyogWExpbmtOYW1lc1dyYXBwZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gWExpbmtOYW1lc1dyYXBwZXIuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBOERDNjNFQjA4RTBERDJBMDA0NTA3Rjcg
LyogRWNtYUludGVyZmFjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBFY21hSW50ZXJmYWNlLmNwcDsgcGF0aCA9IGtzdmcyL2VjbWEvRWNtYUludGVyZmFjZS5jcHA7
IHNvdXJjZVRyZWUgPSBERVJJVkVEX0ZJTEVfRElSOyB9OwogCQlCQzA2RjI0OTA2RDE4QTdFMDA0
QTZGQTMgLyogeHNsX3N0eWxlc2hlZXRpbXBsLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IG5hbWUgPSB4c2xfc3R5bGVzaGVldGltcGwuY3BwOyBwYXRoID0geHNsL3hzbF9zdHls
ZXNoZWV0aW1wbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDMDZGMjRBMDZE
MThBN0UwMDRBNkZBMyAvKiB4c2xfc3R5bGVzaGVldGltcGwuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgbmFtZSA9IHhzbF9zdHlsZXNoZWV0aW1wbC5oOyBwYXRoID0geHNsL3hzbF9zdHls
ZXNoZWV0aW1wbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMzU3MSw2ICszNTcy
LDcgQEAKIAkJCQlBODg0Mjg0MjA5MzA4QzFDMDBCNkQ0NjEgLyogS0RPTVN0dWJDbGFzc2VzLmgg
Ki8sCiAJCQkJQTg4NDI4NDYwOTMwOEMxQzAwQjZENDYxIC8qIEtET01IZWFkZXJzLmggKi8sCiAJ
CQkJQTg4NDI4MzgwOTMwOEMxQzAwQjZENDYxIC8qIFNWR05hbWVzV3JhcHBlci5jcHAgKi8sCisJ
CQkJQThDMzJEOTYwOTNEOEVBNDAwMEI5Q0FDIC8qIFhMaW5rTmFtZXNXcmFwcGVyLmNwcCAqLywK
IAkJCQlBODg0MjgzOTA5MzA4QzFDMDBCNkQ0NjEgLyogU1ZHRWxlbWVudEZhY3RvcnlXcmFwcGVy
LmNwcCAqLywKIAkJCQlBODg0MjgzRTA5MzA4QzFDMDBCNkQ0NjEgLyogUkdCQ29sb3JJbXBsLmgg
Ki8sCiAJCQkJQTg4NDI4M0YwOTMwOEMxQzAwQjZENDYxIC8qIFJHQkNvbG9ySW1wbC5jcHAgKi8s
CkBAIC0zNjMxLDYgKzM2MzMsNyBAQAogCQkJCUE4QzBGNkVDMDg5NzAxRjEwMEJBNTExNCAvKiBL
Q2FudmFzUmVuZGVyaW5nU3R5bGUuaCAqLywKIAkJCQlBOEMwRjZFRjA4OTcwMUYxMDBCQTUxMTQg
LyogS1NWR1RpbWVTY2hlZHVsZXIuY3BwICovLAogCQkJCUE4QzBGNkYwMDg5NzAxRjEwMEJBNTEx
NCAvKiBLU1ZHVGltZVNjaGVkdWxlci5oICovLAorCQkJCUE4QzMyRDg5MDkzRDhCRkEwMDBCOUNB
QyAvKiB4bGlua2F0dHJzLmluICovLAogCQkJKTsKIAkJCXBhdGggPSBtaXNjOwogCQkJc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsKQEAgLTM2NjksNyArMzY3Miw2IEBACiAJCUE4QzBGN0YxMDg5NzAx
RjMwMEJBNTExNCAvKiBldmVudHMgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxk
cmVuID0gKAotCQkJCUE4QzBGN0Y3MDg5NzAxRjMwMEJBNTExNCAvKiBrc3ZnZXZlbnRzLmggKi8s
CiAJCQkJQThDMEY3RjUwODk3MDFGMzAwQkE1MTE0IC8qIFNWR1pvb21FdmVudEltcGwuY3BwICov
LAogCQkJCUE4QzBGN0Y2MDg5NzAxRjMwMEJBNTExNCAvKiBTVkdab29tRXZlbnRJbXBsLmggKi8s
CiAJCQkpOwpAQCAtNTQ5OCw3ICs1NTAwLDYgQEAKIAkJCQlBOEMwRkJBRjA4OTcwMUY5MDBCQTUx
MTQgLyogU1ZHUmVuZGVyU3R5bGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4QzBGQkIxMDg5NzAx
RjkwMEJBNTExNCAvKiBTVkdSZW5kZXJTdHlsZURlZnMuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4
QzBGQ0EwMDg5NzAxRjkwMEJBNTExNCAvKiBTVkdab29tRXZlbnRJbXBsLmggaW4gSGVhZGVycyAq
LywKLQkJCQlBOEMwRkNBMTA4OTcwMUY5MDBCQTUxMTQgLyoga3N2Z2V2ZW50cy5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQThDMEZDQTkwODk3MDFGOTAwQkE1MTE0IC8qIFNWR0FFbGVtZW50SW1wbC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQThDMEZDQUIwODk3MDFGOTAwQkE1MTE0IC8qIFNWR0FuZ2xl
SW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQThDMEZDQUQwODk3MDFGOTAwQkE1MTE0IC8qIFNW
R0FuaW1hdGVDb2xvckVsZW1lbnRJbXBsLmggaW4gSGVhZGVycyAqLywKQEAgLTU4MTEsNiArNTgx
Miw3IEBACiAJCQkJQTgzQzg2ODUwOTExQUE5RDAwOUJGNEE3IC8qIFhTTFRQcm9jZXNzb3IubHV0
LmggKi8sCiAJCQkJQTgyMTJBODUwODc5NEEyMzAwNjc3MzU5IC8qIGRvbXBhcnNlci5sdXQuaCAq
LywKIAkJCQlBODkwRUEwQTA5MzFBOTJEMDA1MTNGODggLyogU1ZHIE5hbWVzICYgRWxlbWVudEZh
Y3RvcnkgKi8sCisJCQkJQThDMzJEQTgwOTNEOEYzRjAwMEI5Q0FDIC8qIFhMaW5rTmFtZXMgKi8s
CiAJCQkJQTgzN0FFRjEwOEI2OTkxMTAwRUJGRkRDIC8qIGtzdmdjc3Nwcm9wZXJ0aWVzLmMvaCAq
LywKIAkJCQlBODM3QUVGMzA4QjY5OTJDMDBFQkZGREMgLyoga3N2Z2Nzc3ZhbHVlcy5jL2ggKi8s
CiAJCQkJQTgyMTJBODYwODc5NEEyMzAwNjc3MzU5IC8qIEhlYWRlcnMgKi8sCkBAIC02NzQ0LDcg
KzY3NDYsNyBAQAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3Npbmcg
PSAwOwogCQkJc2hlbGxQYXRoID0gL2Jpbi9zaDsKLQkJCXNoZWxsU2NyaXB0ID0gImtzdmcyL3Nj
cmlwdHMvbWFrZV9uYW1lcy5wbCAtLXRhZ3Mga3N2ZzIvc3ZnL3N2Z3RhZ3MuaW4gLS1hdHRycyBr
c3ZnMi9zdmcvc3ZnYXR0cnMuaW4gLS1vdXRwdXQgXCIkREVSSVZFRF9GSUxFX0RJUlwiIjsKKwkJ
CXNoZWxsU2NyaXB0ID0gImtzdmcyL3NjcmlwdHMvbWFrZV9uYW1lcy5wbCAtLXRhZ3Mga3N2ZzIv
c3ZnL3N2Z3RhZ3MuaW4gLS1hdHRycyBrc3ZnMi9zdmcvc3ZnYXR0cnMuaW4gXFxcbiAgICAtLW5h
bWVzcGFjZSBTVkcgLS1jcHBOYW1lc3BhY2UgS1NWRyAtLW5hbWVzcGFjZVVSSSBcImh0dHA6Ly93
d3cudzMub3JnLzIwMDAvc3ZnXCIgXFxcbiAgICAtLWZhY3RvcnkgLS1hdHRyc051bGxOYW1lc3Bh
Y2UgLS1vdXRwdXQgXCIkREVSSVZFRF9GSUxFX0RJUlwiIjsKIAkJfTsKIAkJQThBQTYxOUIwODlD
REFCRjAwNjY2ODI1IC8qIFdlYkNvcmUrU1ZHLmV4cCAqLyA9IHsKIAkJCWlzYSA9IFBCWFNoZWxs
U2NyaXB0QnVpbGRQaGFzZTsKQEAgLTY3NjMsNiArNjc2NSwyNCBAQAogCQkJc2hlbGxQYXRoID0g
L2Jpbi9zaDsKIAkJCXNoZWxsU2NyaXB0ID0gImlmIGdjYyAtZHVtcHZlcnNpb24gfCBncmVwIC1x
ICdeM1xcLidcbnRoZW5cbiAgICBjYXQgV2ViQ29yZS5leHAgV2ViQ29yZS1zdmcuZXhwIHwgZ3Jl
cCAtdiAnXl9fWlRJJyA+IFwiJERFUklWRURfRklMRV9ESVIvV2ViQ29yZStTVkcuZXhwXCJcbmVs
c2VcbiAgICBjYXQgV2ViQ29yZS5leHAgV2ViQ29yZS1zdmcuZXhwID4gXCIkREVSSVZFRF9GSUxF
X0RJUi9XZWJDb3JlK1NWRy5leHBcIlxuZmkiOwogCQl9OworCQlBOEMzMkRBODA5M0Q4RjNGMDAw
QjlDQUMgLyogWExpbmtOYW1lcyAqLyA9IHsKKwkJCWlzYSA9IFBCWFNoZWxsU2NyaXB0QnVpbGRQ
aGFzZTsKKwkJCWJ1aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7CisJCQlmaWxlcyA9ICgKKwkJ
CSk7CisJCQlpbnB1dFBhdGhzID0gKAorCQkJCSIkKFNSQ1JPT1QpL2tzdmcyL21pc2MveGxpbmth
dHRycy5pbiIsCisJCQkJIiQoU1JDUk9PVCkva3N2ZzIvc2NyaXB0cy9tYWtlX25hbWVzLnBsIiwK
KwkJCSk7CisJCQluYW1lID0gWExpbmtOYW1lczsKKwkJCW91dHB1dFBhdGhzID0gKAorCQkJCSIk
KERFUklWRURfRklMRV9ESVIpL1hMaW5rTmFtZXMuaCIsCisJCQkJIiQoREVSSVZFRF9GSUxFX0RJ
UikvWExpbmtOYW1lcy5jcHAiLAorCQkJKTsKKwkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHBy
b2Nlc3NpbmcgPSAwOworCQkJc2hlbGxQYXRoID0gL2Jpbi9zaDsKKwkJCXNoZWxsU2NyaXB0ID0g
ImtzdmcyL3NjcmlwdHMvbWFrZV9uYW1lcy5wbCAtLWF0dHJzIGtzdmcyL21pc2MveGxpbmthdHRy
cy5pbiAtLW5hbWVzcGFjZSBYTGluayAtLWNwcE5hbWVzcGFjZSBET00gLS1uYW1lc3BhY2VVUkkg
XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCIgLS1vdXRwdXQgXCIkREVSSVZFRF9GSUxF
X0RJUlwiIjsKKwkJfTsKIC8qIEVuZCBQQlhTaGVsbFNjcmlwdEJ1aWxkUGhhc2Ugc2VjdGlvbiAq
LwogCiAvKiBCZWdpbiBQQlhTb3VyY2VzQnVpbGRQaGFzZSBzZWN0aW9uICovCkBAIC03NDY2LDYg
Kzc0ODYsNyBAQAogCQkJCUE4QzMyOTZGMDkzQkI3QjIwMDBCOUNBQyAvKiBTVkdGRVNwb3RMaWdo
dEVsZW1lbnRJbXBsLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUE4QzMyOTcxMDkzQkI3QjIwMDBC
OUNBQyAvKiBTVkdGRVNwZWN1bGFyTGlnaHRpbmdFbGVtZW50SW1wbC5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlBOEMzMjk3MzA5M0JCN0IyMDAwQjlDQUMgLyogU1ZHRkVQb2ludExpZ2h0RWxlbWVu
dEltcGwuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJQThDMzJEOTcwOTNEOEVBNDAwMEI5Q0FDIC8q
IFhMaW5rTmFtZXNXcmFwcGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlG
b3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpJbmRleDoga2h0bWwva2h0bWxf
cGFydC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9yb290L1dlYkNvcmUva2h0bWwva2h0
bWxfcGFydC5jcHAsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMzU5CmRpZmYgLXAgLXUgLXIxLjM1
OSBraHRtbC9raHRtbF9wYXJ0LmNwcAotLS0ga2h0bWwva2h0bWxfcGFydC5jcHAJMjEgTm92IDIw
MDUgMDQ6MDE6NTEgLTAwMDAJMS4zNTkKKysrIGtodG1sL2todG1sX3BhcnQuY3BwCTMwIE5vdiAy
MDA1IDA4OjQxOjIxIC0wMDAwCkBAIC0yMDAsNiArMjAwLDcgQEAgdm9pZCBLSFRNTFBhcnQ6Omlu
aXQoIEtIVE1MVmlldyAqdmlldywgRwogICBIVE1MTmFtZXM6OmluaXQoKTsgLy8gRklYTUU6IFdl
IHNob3VsZCBtYWtlIHRoaXMgaGFwcGVuIG9ubHkgd2hlbiBIVE1MIGlzIHVzZWQuCiAjaWYgU1ZH
X1NVUFBPUlQKICAgS1NWRzo6U1ZHTmFtZXM6OmluaXQoKTsKKyAgRE9NOjpYTGlua05hbWVzOjpp
bml0KCk7CiAjZW5kaWYKICAgaWYgKCBwcm9mID09IERlZmF1bHRHVUkgKQogICAgIHNldFhNTEZp
bGUoICJraHRtbC5yYyIgKTsKSW5kZXg6IGtodG1sL3htbC9kb21fZWxlbWVudGltcGwuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9XZWJDb3JlL2todG1sL3htbC9kb21fZWxlbWVu
dGltcGwuY3BwLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjkzCmRpZmYgLXAgLXUgLXIxLjkzIGto
dG1sL3htbC9kb21fZWxlbWVudGltcGwuY3BwCi0tLSBraHRtbC94bWwvZG9tX2VsZW1lbnRpbXBs
LmNwcAkyMSBOb3YgMjAwNSAwNDowMTo1OCAtMDAwMAkxLjkzCisrKyBraHRtbC94bWwvZG9tX2Vs
ZW1lbnRpbXBsLmNwcAkzMCBOb3YgMjAwNSAwODo0MToyMyAtMDAwMApAQCAtNTI1LDcgKzUyNSw3
IEBAIHZvaWQgRWxlbWVudEltcGw6OnJlbW92ZWRGcm9tRG9jdW1lbnQoKQogYm9vbCBFbGVtZW50
SW1wbDo6cmVuZGVyZXJJc05lZWRlZChraHRtbDo6UmVuZGVyU3R5bGUgKikKIHsKICAgICAvLyBT
VkcgaWdub3JlcyBhcmJpdHJhcnkgeG1sIGVsZW1lbnRzIGluIGl0cyByZW5kZXIgdHJlZSBjb250
cmFyeSB0byB0aGUgbm9ybWFsIENTUy9YTUwgYmVoYXZpb3IuCi0gICAgaWYgKChLU1ZHOjpTVkdO
YW1lczo6c3ZnTmFtZXNwYWNlVVJJID09IHBhcmVudE5vZGUoKS0+bmFtZXNwYWNlVVJJKCkpICYm
ICFwYXJlbnROb2RlKCktPmhhc1RhZ05hbWUoS1NWRzo6U1ZHTmFtZXM6OmZvcmVpZ25PYmplY3RU
YWcpKQorICAgIGlmICgoS1NWRzo6U1ZHTmFtZXM6OnN2Z05hbWVzcGFjZVVSSSA9PSBwYXJlbnRO
b2RlKCktPm5hbWVzcGFjZVVSSSgpKSkgLy8gRklYTUU6ICYmICFwYXJlbnROb2RlKCktPmhhc1Rh
Z05hbWUoS1NWRzo6U1ZHTmFtZXM6OmZvcmVpZ25PYmplY3RUYWcpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KSW5kZXg6IGtzdmcyL21pc2MveGxpbmthdHRycy5p
bgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09ClJDUyBmaWxlOiBrc3ZnMi9taXNjL3hsaW5rYXR0cnMuaW4KZGlmZiAtTiBr
c3ZnMi9taXNjL3hsaW5rYXR0cnMuaW4KLS0tIGtzdmcyL21pc2MveGxpbmthdHRycy5pbgkxIEph
biAxOTcwIDAwOjAwOjAwIC0wMDAwCisrKyBrc3ZnMi9taXNjL3hsaW5rYXR0cnMuaW4JMzAgTm92
IDIwMDUgMDg6NDE6MjQgLTAwMDAKQEAgLTAsMCArMSw3IEBACithY3R1YXRlCithcmNyb2xlCito
cmVmCityb2xlCitzaG93Cit0aXRsZQordHlwZQpJbmRleDoga3N2ZzIvc3ZnL1NWR0xvY2F0YWJs
ZUltcGwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvcm9vdC9TVkdTdXBwb3J0L2tzdmcy
L3N2Zy9TVkdMb2NhdGFibGVJbXBsLmNwcCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS45CmRpZmYg
LXAgLXUgLXIxLjkga3N2ZzIvc3ZnL1NWR0xvY2F0YWJsZUltcGwuY3BwCi0tLSBrc3ZnMi9zdmcv
U1ZHTG9jYXRhYmxlSW1wbC5jcHAJMjYgTm92IDIwMDUgMjI6MzU6NDcgLTAwMDAJMS45CisrKyBr
c3ZnMi9zdmcvU1ZHTG9jYXRhYmxlSW1wbC5jcHAJMzAgTm92IDIwMDUgMDg6NDE6MjQgLTAwMDAK
QEAgLTQzLDExICs0Myw5IEBAIFNWR0xvY2F0YWJsZUltcGw6On5TVkdMb2NhdGFibGVJbXBsKCkK
IFNWR0VsZW1lbnRJbXBsICpTVkdMb2NhdGFibGVJbXBsOjpuZWFyZXN0Vmlld3BvcnRFbGVtZW50
KGNvbnN0IFNWR1N0eWxlZEVsZW1lbnRJbXBsICplKQogewogICAgIEtET006Ok5vZGVJbXBsICpu
ID0gZS0+cGFyZW50Tm9kZSgpOwotICAgIHdoaWxlKG4gJiYgbi0+aXNEb2N1bWVudE5vZGUoKSkK
LSAgICB7Ci0gICAgICAgIGlmKG4tPmlzRWxlbWVudE5vZGUoKSAmJgotICAgICAgICAgICAgKG4t
Pmhhc1RhZ05hbWUoU1ZHTmFtZXM6OnN2Z1RhZykgfHwgbi0+aGFzVGFnTmFtZShTVkdOYW1lczo6
c3ltYm9sVGFnKSB8fAotICAgICAgICAgICAgIG4tPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OmZvcmVp
Z25PYmplY3RUYWcpIHx8IG4tPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OmltYWdlVGFnKSkpCisgICAg
d2hpbGUgKG4gJiYgIW4tPmlzRG9jdW1lbnROb2RlKCkpIHsKKyAgICAgICAgaWYgKG4tPmhhc1Rh
Z05hbWUoU1ZHTmFtZXM6OnN2Z1RhZykgfHwgbi0+aGFzVGFnTmFtZShTVkdOYW1lczo6c3ltYm9s
VGFnKSB8fAorICAgICAgICAgICAgbi0+aGFzVGFnTmFtZShTVkdOYW1lczo6aW1hZ2VUYWcpKSAv
LyBGSVhNRTogfHwgbi0+aGFzVGFnTmFtZShTVkdOYW1lczo6Zm9yZWlnbk9iamVjdFRhZykKICAg
ICAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxTVkdFbGVtZW50SW1wbCAqPihuKTsKIAogICAg
ICAgICBuID0gbi0+cGFyZW50Tm9kZSgpOwpAQCAtNjQsMTEgKzYyLDkgQEAgU1ZHRWxlbWVudElt
cGwgKlNWR0xvY2F0YWJsZUltcGw6OmZhcnRoZQogICAgIC8vIHVzZWQgaW5zdGVhZC4gVGhpcyBk
ZXBlbmRzIG9uIGNkZiBkZW1hbmRzIHRob3VnaChSb2IuKQogICAgIFNWR0VsZW1lbnRJbXBsICpm
YXJ0aGVzdCA9IDA7CiAgICAgS0RPTTo6Tm9kZUltcGwgKm4gPSBlLT5wYXJlbnROb2RlKCk7Ci0g
ICAgd2hpbGUobiAmJiAhbi0+aXNEb2N1bWVudE5vZGUoKSkKLSAgICB7Ci0gICAgICAgIGlmKG4t
PmlzRWxlbWVudE5vZGUoKSAmJgotICAgICAgICAgICAgKG4tPmhhc1RhZ05hbWUoU1ZHTmFtZXM6
OnN2Z1RhZykgfHwgbi0+aGFzVGFnTmFtZShTVkdOYW1lczo6c3ltYm9sVGFnKSB8fAotICAgICAg
ICAgICAgIG4tPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OmZvcmVpZ25PYmplY3RUYWcpIHx8IG4tPmhh
c1RhZ05hbWUoU1ZHTmFtZXM6OmltYWdlVGFnKSkpCisgICAgd2hpbGUgKG4gJiYgIW4tPmlzRG9j
dW1lbnROb2RlKCkpIHsKKyAgICAgICAgaWYgKG4tPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OnN2Z1Rh
ZykgfHwgbi0+aGFzVGFnTmFtZShTVkdOYW1lczo6c3ltYm9sVGFnKSB8fAorICAgICAgICAgICAg
bi0+aGFzVGFnTmFtZShTVkdOYW1lczo6aW1hZ2VUYWcpKSAvLyBGSVhNRTogfHwgbi0+aGFzVGFn
TmFtZShTVkdOYW1lczo6Zm9yZWlnbk9iamVjdFRhZykKICAgICAgICAgICAgIGZhcnRoZXN0ID0g
c3RhdGljX2Nhc3Q8U1ZHRWxlbWVudEltcGwgKj4obik7CiAKICAgICAgICAgbiA9IG4tPnBhcmVu
dE5vZGUoKTsKSW5kZXg6IGtzdmcyL3N2Zy9TVkdVUklSZWZlcmVuY2VJbXBsLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvU1ZHU3VwcG9ydC9rc3ZnMi9zdmcvU1ZHVVJJUmVmZXJl
bmNlSW1wbC5jcHAsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuOQpkaWZmIC1wIC11IC1yMS45IGtz
dmcyL3N2Zy9TVkdVUklSZWZlcmVuY2VJbXBsLmNwcAotLS0ga3N2ZzIvc3ZnL1NWR1VSSVJlZmVy
ZW5jZUltcGwuY3BwCTI2IE5vdiAyMDA1IDIyOjE5OjE4IC0wMDAwCTEuOQorKysga3N2ZzIvc3Zn
L1NWR1VSSVJlZmVyZW5jZUltcGwuY3BwCTMwIE5vdiAyMDA1IDA4OjQxOjI1IC0wMDAwCkBAIC0y
NSw2ICsyNSw3IEBACiAjaW5jbHVkZSA8a2RvbS9jb3JlL0F0dHJJbXBsLmg+CiAKICNpbmNsdWRl
ICJTVkdOYW1lcy5oIgorI2luY2x1ZGUgIlhMaW5rTmFtZXMuaCIKICNpbmNsdWRlICJTVkdIZWxw
ZXIuaCIKICNpbmNsdWRlICJTVkdVUklSZWZlcmVuY2VJbXBsLmgiCiAjaW5jbHVkZSAiU1ZHU3R5
bGVkRWxlbWVudEltcGwuaCIKQEAgLTQ4LDggKzQ5LDcgQEAgU1ZHQW5pbWF0ZWRTdHJpbmdJbXBs
ICpTVkdVUklSZWZlcmVuY2VJbQogCiBib29sIFNWR1VSSVJlZmVyZW5jZUltcGw6OnBhcnNlTWFw
cGVkQXR0cmlidXRlKEtET006Ok1hcHBlZEF0dHJpYnV0ZUltcGwgKmF0dHIpCiB7Ci0gICAgaWYg
KGF0dHItPm5hbWUoKSA9PSBTVkdOYW1lczo6aHJlZkF0dHIgfHwgYXR0ci0+bmFtZSgpLmxvY2Fs
TmFtZSgpID09ICJocmVmIikgLy8gfHwgYXR0ci0+bmFtZSgpID09IFhMaW5rTmFtZXM6OmhyZWZB
dHRyKQotICAgIHsKKyAgICBpZiAoYXR0ci0+bmFtZSgpID09IEtET006OlhMaW5rTmFtZXM6Omhy
ZWZBdHRyKSB7CiAgICAgICAgIGhyZWYoKS0+c2V0QmFzZVZhbChhdHRyLT52YWx1ZSgpLmltcGwo
KSk7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KSW5kZXg6IGtzdmcyL3N2Zy9zdmdhdHRy
cy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3Jvb3QvU1ZHU3VwcG9ydC9rc3ZnMi9zdmcv
c3ZnYXR0cnMuaW4sdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIGtz
dmcyL3N2Zy9zdmdhdHRycy5pbgotLS0ga3N2ZzIvc3ZnL3N2Z2F0dHJzLmluCTkgSnVsIDIwMDUg
MDY6NTU6NDMgLTAwMDAJMS4xCisrKyBrc3ZnMi9zdmcvc3ZnYXR0cnMuaW4JMzAgTm92IDIwMDUg
MDg6NDE6MjUgLTAwMDAKQEAgLTg2LDcgKzg2LDYgQEAgaGVpZ2h0CiBob3Jpei1hZHYteAogaG9y
aXotb3JpZ2luLXgKIGhvcml6LW9yaWdpbi15Ci1ocmVmCiBpZGVvZ3JhcGhpYwogaW1hZ2UtcmVu
ZGVyaW5nCiBpbgpJbmRleDoga3N2ZzIvc3ZnL3N2Z3RhZ3MuaW4KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmls
ZTogL2N2cy9yb290L1NWR1N1cHBvcnQva3N2ZzIvc3ZnL3N2Z3RhZ3MuaW4sdgpyZXRyaWV2aW5n
IHJldmlzaW9uIDEuMQpkaWZmIC1wIC11IC1yMS4xIGtzdmcyL3N2Zy9zdmd0YWdzLmluCi0tLSBr
c3ZnMi9zdmcvc3ZndGFncy5pbgk5IEp1bCAyMDA1IDA2OjU1OjQzIC0wMDAwCTEuMQorKysga3N2
ZzIvc3ZnL3N2Z3RhZ3MuaW4JMzAgTm92IDIwMDUgMDg6NDE6MjUgLTAwMDAKQEAgLTEsMTYgKzEs
MTYgQEAKIGEKLWFsdEdseXBoCi1hbHRHbHlwaERlZgotYWx0R2x5cGhJdGVtCisjYWx0R2x5cGgK
KyNhbHRHbHlwaERlZgorI2FsdEdseXBoSXRlbQogYW5pbWF0ZQogYW5pbWF0ZUNvbG9yCi1hbmlt
YXRlTW90aW9uCisjYW5pbWF0ZU1vdGlvbgogYW5pbWF0ZVRyYW5zZm9ybQogY2lyY2xlCiBjbGlw
UGF0aAotY29sb3JfcHJvZmlsZQorI2NvbG9yX3Byb2ZpbGUKIGN1cnNvcgotZGVmaW5pdGlvbl9z
cmMKKyNkZWZpbml0aW9uX3NyYwogZGVmcwogZGVzYwogZWxsaXBzZQpAQCAtMTgsOSArMTgsOSBA
QCBmZUJsZW5kCiBmZUNvbG9yTWF0cml4CiBmZUNvbXBvbmVudFRyYW5zZmVyCiBmZUNvbXBvc2l0
ZQotZmVDb252b2x2ZU1hdHJpeAorI2ZlQ29udm9sdmVNYXRyaXgKIGZlRGlmZnVzZUxpZ2h0aW5n
Ci1mZURpc3BsYWNlbWVudE1hcAorI2ZlRGlzcGxhY2VtZW50TWFwCiBmZURpc3RhbnRMaWdodAog
ZmVGbG9vZAogZmVGdW5jQQpAQCAtMzEsNyArMzEsNyBAQCBmZUdhdXNzaWFuQmx1cgogZmVJbWFn
ZQogZmVNZXJnZQogZmVNZXJnZU5vZGUKLWZlTW9ycGhvbG9neQorI2ZlTW9ycGhvbG9neQogZmVP
ZmZzZXQKIGZlUG9pbnRMaWdodAogZmVTcGVjdWxhckxpZ2h0aW5nCkBAIC0zOSwyNSArMzksMjUg
QEAgZmVTcG90TGlnaHQKIGZlVGlsZQogZmVUdXJidWxlbmNlCiBmaWx0ZXIKLWZvbnQKLWZvbnRf
ZmFjZQotZm9udF9mYWNlX2Zvcm1hdAotZm9udF9mYWNlX25hbWUKLWZvbnRfZmFjZV9zcmMKLWZv
bnRfZmFjZV91cmkKLWZvcmVpZ25PYmplY3QKKyNmb250CisjZm9udF9mYWNlCisjZm9udF9mYWNl
X2Zvcm1hdAorI2ZvbnRfZmFjZV9uYW1lCisjZm9udF9mYWNlX3NyYworI2ZvbnRfZmFjZV91cmkK
KyNmb3JlaWduT2JqZWN0CiBnCi1nbHlwaAotZ2x5cGhSZWYKLWhrZXJuCisjZ2x5cGgKKyNnbHlw
aFJlZgorI2hrZXJuCiBpbWFnZQogbGluZQogbGluZWFyR3JhZGllbnQKIG1hcmtlcgotbWFzawot
bWV0YWRhdGEKLW1pc3NpbmdfZ2x5cGgKLW1wYXRoCisjbWFzaworI21ldGFkYXRhCisjbWlzc2lu
Z19nbHlwaAorI21wYXRoCiBwYXRoCiBwYXR0ZXJuCiBwb2x5Z29uCkBAIC03MiwxMCArNzIsMTAg
QEAgc3ZnCiBzd2l0Y2gKIHN5bWJvbAogdGV4dAotdGV4dFBhdGgKKyN0ZXh0UGF0aAogdGl0bGUK
LXRyZWYKKyN0cmVmCiB0c3BhbgogdXNlCiB2aWV3Ci12a2VybgorI3ZrZXJuCg==
</data>
<flag name="review"
          id="922"
          type_id="1"
          status="+"
          setter="mjs"
    />
          </attachment>
      

    </bug>

</bugzilla>