<?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>40944</bug_id>
          
          <creation_ts>2010-06-21 14:18:20 -0700</creation_ts>
          <short_desc>More WebBasePluginPackage cleanup</short_desc>
          <delta_ts>2010-06-21 14:40:47 -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>Other</rep_platform>
          <op_sys>OS X 10.5</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>240887</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-06-21 14:18:20 -0700</bug_when>
    <thetext>More WebBasePluginPackage cleanup</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240889</commentid>
    <comment_count>1</comment_count>
      <attachid>59288</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-06-21 14:19:31 -0700</bug_when>
    <thetext>Created attachment 59288
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>240901</commentid>
    <comment_count>2</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-06-21 14:40:47 -0700</bug_when>
    <thetext>Committed r61581: &lt;http://trac.webkit.org/changeset/61581&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59288</attachid>
            <date>2010-06-21 14:19:31 -0700</date>
            <delta_ts>2010-06-21 14:31:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-40944-20100621141929.patch</filename>
            <type>text/plain</type>
            <size>25355</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9tYWMvQ2hh
bmdlTG9nCShyZXZpc2lvbiA2MTU3OCkKKysrIFdlYktpdC9tYWMvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsNTMgQEAKKzIwMTAtMDYtMjEgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBNb3JlIFdlYkJhc2VQbHVnaW5QYWNrYWdlIGNsZWFudXAKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwOTQ0CisKKyAgICAgICAgKiBQ
bHVnaW5zL0hvc3RlZC9Ib3N0ZWROZXRzY2FwZVBsdWdpblN0cmVhbS5tbToKKyAgICAgICAgKFdl
YktpdDo6SG9zdGVkTmV0c2NhcGVQbHVnaW5TdHJlYW06OnBsdWdpbkNhbmNlbGxlZENvbm5lY3Rp
b25FcnJvcik6CisgICAgICAgICogUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5Ib3N0TWFu
YWdlci5tbToKKyAgICAgICAgKFdlYktpdDo6TmV0c2NhcGVQbHVnaW5Ib3N0TWFuYWdlcjo6c3Bh
d25QbHVnaW5Ib3N0KToKKyAgICAgICAgKiBQbHVnaW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdpblN0
cmVhbS5tbToKKyAgICAgICAgKFdlYk5ldHNjYXBlUGx1Z2luU3RyZWFtOjpwbHVnaW5DYW5jZWxs
ZWRDb25uZWN0aW9uRXJyb3IpOgorICAgICAgICAqIFBsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1
Z2luVmlldy5tbToKKyAgICAgICAgKFdlYkhhbHRhYmxlUGx1Z2luOjpwbHVnaW5OYW1lKToKKyAg
ICAgICAgKiBQbHVnaW5zL1dlYkJhc2VQbHVnaW5QYWNrYWdlLmg6CisgICAgICAgICogUGx1Z2lu
cy9XZWJCYXNlUGx1Z2luUGFja2FnZS5tbToKKyAgICAgICAgKC1bV2ViQmFzZVBsdWdpblBhY2th
Z2UgaW5pdFdpdGhQYXRoOl0pOgorICAgICAgICAoLVtXZWJCYXNlUGx1Z2luUGFja2FnZSBfb2Jq
ZWN0Rm9ySW5mb0RpY3Rpb25hcnlLZXk6XSk6CisgICAgICAgICgtW1dlYkJhc2VQbHVnaW5QYWNr
YWdlIGdldFBsdWdpbkluZm9Gcm9tUExpc3RzXSk6CisgICAgICAgICgtW1dlYkJhc2VQbHVnaW5Q
YWNrYWdlIGxvYWRdKToKKyAgICAgICAgKC1bV2ViQmFzZVBsdWdpblBhY2thZ2UgZGVhbGxvY10p
OgorICAgICAgICAoLVtXZWJCYXNlUGx1Z2luUGFja2FnZSBmaW5hbGl6ZV0pOgorICAgICAgICAo
LVtXZWJCYXNlUGx1Z2luUGFja2FnZSBwbHVnaW5JbmZvXSk6CisgICAgICAgICgtW1dlYkJhc2VQ
bHVnaW5QYWNrYWdlIHN1cHBvcnRzRXh0ZW5zaW9uOl0pOgorICAgICAgICAoLVtXZWJCYXNlUGx1
Z2luUGFja2FnZSBzdXBwb3J0c01JTUVUeXBlOldlYkNvcmU6Ol0pOgorICAgICAgICAoLVtXZWJC
YXNlUGx1Z2luUGFja2FnZSBNSU1FVHlwZUZvckV4dGVuc2lvbjpdKToKKyAgICAgICAgKC1bV2Vi
QmFzZVBsdWdpblBhY2thZ2UgaXNKYXZhUGx1Z0luXSk6CisgICAgICAgICgtW1dlYkJhc2VQbHVn
aW5QYWNrYWdlIHZlcnNpb25OdW1iZXJdKToKKyAgICAgICAgKC1bV2ViQmFzZVBsdWdpblBhY2th
Z2UgV2ViQ29yZTo6XSk6CisgICAgICAgICogUGx1Z2lucy9XZWJOZXRzY2FwZVBsdWdpblBhY2th
Z2UubW06CisgICAgICAgICgtW1dlYk5ldHNjYXBlUGx1Z2luUGFja2FnZSBvcGVuUmVzb3VyY2VG
aWxlXSk6CisgICAgICAgICgtW1dlYk5ldHNjYXBlUGx1Z2luUGFja2FnZSBjbG9zZVJlc291cmNl
RmlsZTpdKToKKyAgICAgICAgKC1bV2ViTmV0c2NhcGVQbHVnaW5QYWNrYWdlIGdldFBsdWdpbklu
Zm9Gcm9tUmVzb3VyY2VzXSk6CisgICAgICAgICgtW1dlYk5ldHNjYXBlUGx1Z2luUGFja2FnZSBf
aW5pdFdpdGhQYXRoOl0pOgorICAgICAgICAoLVtXZWJOZXRzY2FwZVBsdWdpblBhY2thZ2UgX2Fw
cGx5RGpWdVdvcmthcm91bmRdKToKKyAgICAgICAgKC1bV2ViTmV0c2NhcGVQbHVnaW5QYWNrYWdl
IF90cnlMb2FkXSk6CisgICAgICAgICgtW1dlYk5ldHNjYXBlUGx1Z2luUGFja2FnZSBzdXBwb3J0
c1NuYXBzaG90dGluZ10pOgorICAgICAgICAoLVtXZWJOZXRzY2FwZVBsdWdpblBhY2thZ2UgX3Vu
bG9hZFdpdGhTaHV0ZG93bjpdKToKKyAgICAgICAgKiBQbHVnaW5zL1dlYlBsdWdpbkRhdGFiYXNl
Lm1tOgorICAgICAgICAoLVtXZWJQbHVnaW5EYXRhYmFzZSByZWZyZXNoXSk6CisgICAgICAgICgt
W1dlYlBsdWdpbkRhdGFiYXNlIF9yZW1vdmVQbHVnaW46XSk6CisgICAgICAgICogUGx1Z2lucy9X
ZWJQbHVnaW5QYWNrYWdlLm1tOgorICAgICAgICAoLVtXZWJQbHVnaW5QYWNrYWdlIGluaXRXaXRo
UGF0aDpdKToKKyAgICAgICAgKC1bV2ViUGx1Z2luUGFja2FnZSBsb2FkXSk6CisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW06CisgICAgICAgIChXZWJGcmFt
ZUxvYWRlckNsaWVudDo6Y3JlYXRlUGx1Z2luKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9X
ZWJQbGF0Zm9ybVN0cmF0ZWdpZXMubW06CisgICAgICAgIChXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6
OmdldFBsdWdpbkluZm8pOgorCiAyMDEwLTA2LTIxICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNj
YUBhcHBsZS5jb20+CiAKICAgICAgICAgQW5vdGhlciBQb3dlclBDIGJ1aWxkIGZpeC4KSW5kZXg6
IFdlYktpdC9tYWMvUGx1Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5TdHJlYW0ubW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViS2l0L21hYy9QbHVnaW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdpblN0cmVhbS5t
bQkocmV2aXNpb24gNjE1NzgpCisrKyBXZWJLaXQvbWFjL1BsdWdpbnMvV2ViQmFzZU5ldHNjYXBl
UGx1Z2luU3RyZWFtLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMDQsNyArMTA0LDcgQEAgTlNFcnJv
ciAqV2ViTmV0c2NhcGVQbHVnaW5TdHJlYW06OnBsdWdpbgogICAgIHJldHVybiBbW1tOU0Vycm9y
IGFsbG9jXSBfaW5pdFdpdGhQbHVnaW5FcnJvckNvZGU6V2ViS2l0RXJyb3JQbHVnSW5DYW5jZWxs
ZWRDb25uZWN0aW9uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29udGVudFVSTDptX3Jlc3BvbnNlVVJMID8gbV9yZXNwb25zZVVSTC5nZXQoKSA6IG1fcmVxdWVz
dFVSTC5nZXQoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsdWdp
blBhZ2VVUkw6bmlsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cGx1Z2luTmFtZTpbW21fcGx1Z2luVmlldy5nZXQoKSBwbHVnaW5QYWNrYWdlXSBuYW1lXQorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsdWdpbk5hbWU6W1ttX3Bs
dWdpblZpZXcuZ2V0KCkgcGx1Z2luUGFja2FnZV0gcGx1Z2luSW5mb10ubmFtZQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTUlNRVR5cGU6bV9taW1lVHlwZS5n
ZXQoKV0gYXV0b3JlbGVhc2VdOwogfQogCkluZGV4OiBXZWJLaXQvbWFjL1BsdWdpbnMvV2ViQmFz
ZU5ldHNjYXBlUGx1Z2luVmlldy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvbWFjL1BsdWdpbnMv
V2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldy5tbQkocmV2aXNpb24gNjE1NzgpCisrKyBXZWJLaXQv
bWFjL1BsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldy5tbQkod29ya2luZyBjb3B5KQpA
QCAtMTA4LDcgKzEwOCw3IEBAIGJvb2wgV2ViSGFsdGFibGVQbHVnaW46OmlzV2luZG93ZWQoKSBj
b24KIAogU3RyaW5nIFdlYkhhbHRhYmxlUGx1Z2luOjpwbHVnaW5OYW1lKCkgY29uc3QKIHsKLSAg
ICByZXR1cm4gW1ttX3ZpZXcgcGx1Z2luUGFja2FnZV0gbmFtZV07CisgICAgcmV0dXJuIFtbbV92
aWV3IHBsdWdpblBhY2thZ2VdIHBsdWdpbkluZm9dLm5hbWU7CiB9CiAKIEBpbXBsZW1lbnRhdGlv
biBXZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3CkluZGV4OiBXZWJLaXQvbWFjL1BsdWdpbnMvV2Vi
QmFzZVBsdWdpblBhY2thZ2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvbWFjL1BsdWdpbnMvV2Vi
QmFzZVBsdWdpblBhY2thZ2UuaAkocmV2aXNpb24gNjE1NzgpCisrKyBXZWJLaXQvbWFjL1BsdWdp
bnMvV2ViQmFzZVBsdWdpblBhY2thZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtMjcsNiArMjcsNyBA
QAogICovCiAKICNpbXBvcnQgPFdlYkNvcmUvUGx1Z2luRGF0YS5oPgorI2ltcG9ydCA8d3RmL1Jl
dGFpblB0ci5oPgogCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAjaW1wb3J0IDxX
ZWJLaXQvbnBmdW5jdGlvbnMuaD4KQEAgLTU2LDEzICs1NywxMCBAQCBAaW50ZXJmYWNlIFdlYkJh
c2VQbHVnaW5QYWNrYWdlIDogTlNPYmplCiB7CiAgICAgTlNNdXRhYmxlU2V0ICpwbHVnaW5EYXRh
YmFzZXM7CiAgICAgCi0gICAgV2ViQ29yZTo6U3RyaW5nIG5hbWU7CiAgICAgV2ViQ29yZTo6U3Ry
aW5nIHBhdGg7Ci0gICAgV2ViQ29yZTo6U3RyaW5nIHBsdWdpbkRlc2NyaXB0aW9uOworICAgIFdl
YkNvcmU6OlBsdWdpbkluZm8gcGx1Z2luSW5mbzsKIAotICAgIFZlY3RvcjxXZWJDb3JlOjpNaW1l
Q2xhc3NJbmZvPiBtaW1lVHlwZXM7Ci0KLSAgICBDRkJ1bmRsZVJlZiBjZkJ1bmRsZTsKKyAgICBS
ZXRhaW5QdHI8Q0ZCdW5kbGVSZWY+IGNmQnVuZGxlOwogCiAgICAgQlBfQ3JlYXRlUGx1Z2luTUlN
RVR5cGVzUHJlZmVyZW5jZXNGdW5jUHRyIEJQX0NyZWF0ZVBsdWdpbk1JTUVUeXBlc1ByZWZlcmVu
Y2VzOwogfQpAQCAtNzUsMTIgKzczLDkgQEAgQGludGVyZmFjZSBXZWJCYXNlUGx1Z2luUGFja2Fn
ZSA6IE5TT2JqZQogLSAoQk9PTClsb2FkOwogLSAodm9pZCl1bmxvYWQ7CiAKLS0gKFdlYkNvcmU6
OlN0cmluZylmaWxlbmFtZTsKLS0gKGNvbnN0IFdlYkNvcmU6OlN0cmluZyYpbmFtZTsKIC0gKGNv
bnN0IFdlYkNvcmU6OlN0cmluZyYpcGF0aDsKLS0gKGNvbnN0IFdlYkNvcmU6OlN0cmluZyYpcGx1
Z2luRGVzY3JpcHRpb247CiAKLS0gKGNvbnN0IFZlY3RvcjxXZWJDb3JlOjpNaW1lQ2xhc3NJbmZv
PiYpbWltZVR5cGVzOworLSAoY29uc3QgV2ViQ29yZTo6UGx1Z2luSW5mbyYpcGx1Z2luSW5mbzsK
IAogLSAoV2ViQ29yZTo6U3RyaW5nKWJ1bmRsZUlkZW50aWZpZXI7CiAKSW5kZXg6IFdlYktpdC9t
YWMvUGx1Z2lucy9XZWJCYXNlUGx1Z2luUGFja2FnZS5tbQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQv
bWFjL1BsdWdpbnMvV2ViQmFzZVBsdWdpblBhY2thZ2UubW0JKHJldmlzaW9uIDYxNTc4KQorKysg
V2ViS2l0L21hYy9QbHVnaW5zL1dlYkJhc2VQbHVnaW5QYWNrYWdlLm1tCSh3b3JraW5nIGNvcHkp
CkBAIC01MCw3ICs1MCw3IEBACiAKICNkZWZpbmUgSmF2YUNvY29hUGx1Z2luSWRlbnRpZmllciAg
ICJjb20uYXBwbGUuSmF2YVBsdWdpbkNvY29hIgogI2RlZmluZSBKYXZhQ2FyYm9uUGx1Z2luSWRl
bnRpZmllciAgImNvbS5hcHBsZS5KYXZhQXBwbGV0UGx1Z2luIgotI2RlZmluZSBKYXZhQ0ZNUGx1
Z2luRmlsZW5hbWUgICAgICAgQCJKYXZhIEFwcGxldCBQbHVnaW4gRW5hYmxlciIKKyNkZWZpbmUg
SmF2YUNGTVBsdWdpbkZpbGVuYW1lICAgICAgICJKYXZhIEFwcGxldCBQbHVnaW4gRW5hYmxlciIK
IAogI2RlZmluZSBRdWlja1RpbWVDYXJib25QbHVnaW5JZGVudGlmaWVyICAgICAgICJjb20uYXBw
bGUuUXVpY2tUaW1lIFBsdWdpbi5wbHVnaW4iCiAjZGVmaW5lIFF1aWNrVGltZUNvY29hUGx1Z2lu
SWRlbnRpZmllciAgICAgICAgImNvbS5hcHBsZS5xdWlja3RpbWUud2VicGx1Z2luIgpAQCAtMTI2
LDcgKzEyNiw3IEBAIC0gKGlkKWluaXRXaXRoUGF0aDooTlNTdHJpbmcgKilwbHVnaW5QYXQKICAg
ICAgICAgcmV0dXJuIG5pbDsKICAgICAgICAgCiAgICAgcGF0aCA9IHBhdGhCeVJlc29sdmluZ1N5
bWxpbmtzQW5kQWxpYXNlcyhwbHVnaW5QYXRoKTsKLSAgICBjZkJ1bmRsZSA9IENGQnVuZGxlQ3Jl
YXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIChDRlVSTFJlZilbTlNVUkwgZmlsZVVSTFdpdGhQYXRo
OnBhdGhdKTsKKyAgICBjZkJ1bmRsZS5hZG9wdENGKENGQnVuZGxlQ3JlYXRlKGtDRkFsbG9jYXRv
ckRlZmF1bHQsIChDRlVSTFJlZilbTlNVUkwgZmlsZVVSTFdpdGhQYXRoOnBhdGhdKSk7CiAKICNp
Zm5kZWYgX19wcGNfXwogICAgIC8vIDMyLWJpdCBQb3dlclBDIGlzIHRoZSBvbmx5IHBsYXRmb3Jt
IHdoZXJlIG5vbi1idW5kbGVkIENGTSBwbHVnaW5zIGFyZSBzdXBwb3J0ZWQKQEAgLTE3MCw3ICsx
NzAsNyBAQCAtIChOU0RpY3Rpb25hcnkgKilwTGlzdEZvclBhdGg6KE5TU3RyaW5nCiAKIC0gKGlk
KV9vYmplY3RGb3JJbmZvRGljdGlvbmFyeUtleTooTlNTdHJpbmcgKilrZXkKIHsKLSAgICBDRkRp
Y3Rpb25hcnlSZWYgYnVuZGxlSW5mb0RpY3Rpb25hcnkgPSBDRkJ1bmRsZUdldEluZm9EaWN0aW9u
YXJ5KGNmQnVuZGxlKTsKKyAgICBDRkRpY3Rpb25hcnlSZWYgYnVuZGxlSW5mb0RpY3Rpb25hcnkg
PSBDRkJ1bmRsZUdldEluZm9EaWN0aW9uYXJ5KGNmQnVuZGxlLmdldCgpKTsKICAgICBpZiAoIWJ1
bmRsZUluZm9EaWN0aW9uYXJ5KQogICAgICAgICByZXR1cm4gbmlsOwogCkBAIC0yMzMsMjIgKzIz
MywyMyBAQCAtIChCT09MKWdldFBsdWdpbkluZm9Gcm9tUExpc3RzCiAgICAgICAgIGRlc2NyaXB0
aW9uID0gW01JTUVEaWN0aW9uYXJ5IG9iamVjdEZvcktleTpXZWJQbHVnaW5UeXBlRGVzY3JpcHRp
b25LZXldOwogICAgICAgICBtaW1lQ2xhc3NJbmZvLmRlc2MgPSBkZXNjcmlwdGlvbjsKIAotICAg
ICAgICBtaW1lVHlwZXMuYXBwZW5kKG1pbWVDbGFzc0luZm8pOworICAgICAgICBwbHVnaW5JbmZv
Lm1pbWVzLmFwcGVuZChtaW1lQ2xhc3NJbmZvKTsKICAgICAgICAgaWYgKCFkZXNjcmlwdGlvbikK
ICAgICAgICAgICAgIGRlc2NyaXB0aW9uID0gQCIiOwogICAgIH0KIAotICAgIE5TU3RyaW5nICpm
aWxlbmFtZSA9IFtzZWxmIGZpbGVuYW1lXTsKKyAgICBOU1N0cmluZyAqZmlsZW5hbWUgPSBbKE5T
U3RyaW5nICopcGF0aCBsYXN0UGF0aENvbXBvbmVudF07CisgICAgcGx1Z2luSW5mby5maWxlID0g
ZmlsZW5hbWU7CiAKICAgICBOU1N0cmluZyAqdGhlTmFtZSA9IFtzZWxmIF9vYmplY3RGb3JJbmZv
RGljdGlvbmFyeUtleTpXZWJQbHVnaW5OYW1lS2V5XTsKICAgICBpZiAoIXRoZU5hbWUpCiAgICAg
ICAgIHRoZU5hbWUgPSBmaWxlbmFtZTsKLSAgICBuYW1lID0gdGhlTmFtZTsKKyAgICBwbHVnaW5J
bmZvLm5hbWUgPSB0aGVOYW1lOwogCiAgICAgZGVzY3JpcHRpb24gPSBbc2VsZiBfb2JqZWN0Rm9y
SW5mb0RpY3Rpb25hcnlLZXk6V2ViUGx1Z2luRGVzY3JpcHRpb25LZXldOwogICAgIGlmICghZGVz
Y3JpcHRpb24pCiAgICAgICAgIGRlc2NyaXB0aW9uID0gZmlsZW5hbWU7Ci0gICAgcGx1Z2luRGVz
Y3JpcHRpb24gPSBkZXNjcmlwdGlvbjsKKyAgICBwbHVnaW5JbmZvLmRlc2MgPSBkZXNjcmlwdGlv
bjsKIAogICAgIHJldHVybiBZRVM7CiB9CkBAIC0yNTYsNyArMjU3LDcgQEAgLSAoQk9PTClnZXRQ
bHVnaW5JbmZvRnJvbVBMaXN0cwogLSAoQk9PTClsb2FkCiB7CiAgICAgaWYgKGNmQnVuZGxlICYm
ICFCUF9DcmVhdGVQbHVnaW5NSU1FVHlwZXNQcmVmZXJlbmNlcykKLSAgICAgICAgQlBfQ3JlYXRl
UGx1Z2luTUlNRVR5cGVzUHJlZmVyZW5jZXMgPSAoQlBfQ3JlYXRlUGx1Z2luTUlNRVR5cGVzUHJl
ZmVyZW5jZXNGdW5jUHRyKUNGQnVuZGxlR2V0RnVuY3Rpb25Qb2ludGVyRm9yTmFtZShjZkJ1bmRs
ZSwgQ0ZTVFIoIkJQX0NyZWF0ZVBsdWdpbk1JTUVUeXBlc1ByZWZlcmVuY2VzIikpOworICAgICAg
ICBCUF9DcmVhdGVQbHVnaW5NSU1FVHlwZXNQcmVmZXJlbmNlcyA9IChCUF9DcmVhdGVQbHVnaW5N
SU1FVHlwZXNQcmVmZXJlbmNlc0Z1bmNQdHIpQ0ZCdW5kbGVHZXRGdW5jdGlvblBvaW50ZXJGb3JO
YW1lKGNmQnVuZGxlLmdldCgpLCBDRlNUUigiQlBfQ3JlYXRlUGx1Z2luTUlNRVR5cGVzUHJlZmVy
ZW5jZXMiKSk7CiAgICAgCiAgICAgcmV0dXJuIFlFUzsKIH0KQEAgLTI2Niw5ICsyNjcsNiBAQCAt
ICh2b2lkKWRlYWxsb2MKICAgICBBU1NFUlQoIXBsdWdpbkRhdGFiYXNlcyB8fCBbcGx1Z2luRGF0
YWJhc2VzIGNvdW50XSA9PSAwKTsKICAgICBbcGx1Z2luRGF0YWJhc2VzIHJlbGVhc2VdOwogICAg
IAotICAgIGlmIChjZkJ1bmRsZSkKLSAgICAgICAgQ0ZSZWxlYXNlKGNmQnVuZGxlKTsKLSAgICAK
ICAgICBbc3VwZXIgZGVhbGxvY107CiB9CiAKQEAgLTI3OCw0MyArMjc2LDI1IEBAIC0gKHZvaWQp
ZmluYWxpemUKICAgICBBU1NFUlQoIXBsdWdpbkRhdGFiYXNlcyB8fCBbcGx1Z2luRGF0YWJhc2Vz
IGNvdW50XSA9PSAwKTsKICAgICBbcGx1Z2luRGF0YWJhc2VzIHJlbGVhc2VdOwogCi0gICAgaWYg
KGNmQnVuZGxlKQotICAgICAgICBDRlJlbGVhc2UoY2ZCdW5kbGUpOwotCiAgICAgW3N1cGVyIGZp
bmFsaXplXTsKIH0KIAotLSAoY29uc3QgU3RyaW5nJiluYW1lCi17Ci0gICAgcmV0dXJuIG5hbWU7
Ci19Ci0KIC0gKGNvbnN0IFN0cmluZyYpcGF0aAogewogICAgIHJldHVybiBwYXRoOwogfQogCi0t
IChTdHJpbmcpZmlsZW5hbWUKLXsKLSAgICByZXR1cm4gWyhOU1N0cmluZyAqKXBhdGggbGFzdFBh
dGhDb21wb25lbnRdOwotfQotCi0tIChjb25zdCBTdHJpbmcmKXBsdWdpbkRlc2NyaXB0aW9uCi17
Ci0gICAgcmV0dXJuIHBsdWdpbkRlc2NyaXB0aW9uOwotfQotCi0tIChjb25zdCBWZWN0b3I8V2Vi
Q29yZTo6TWltZUNsYXNzSW5mbz4mKW1pbWVUeXBlcworLSAoY29uc3QgUGx1Z2luSW5mbyYpcGx1
Z2luSW5mbwogewotICAgIHJldHVybiBtaW1lVHlwZXM7CisgICAgcmV0dXJuIHBsdWdpbkluZm87
CiB9CiAKIC0gKEJPT0wpc3VwcG9ydHNFeHRlbnNpb246KGNvbnN0IFN0cmluZyYpZXh0ZW5zaW9u
CiB7CiAgICAgQVNTRVJUKGV4dGVuc2lvbi5sb3dlcigpID09IGV4dGVuc2lvbik7CiAgICAgCi0g
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtaW1lVHlwZXMuc2l6ZSgpOyArK2kpIHsKLSAgICAg
ICAgY29uc3QgVmVjdG9yPFN0cmluZz4mIGV4dGVuc2lvbnMgPSBtaW1lVHlwZXNbaV0uZXh0ZW5z
aW9uczsKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHBsdWdpbkluZm8ubWltZXMuc2l6ZSgp
OyArK2kpIHsKKyAgICAgICAgY29uc3QgVmVjdG9yPFN0cmluZz4mIGV4dGVuc2lvbnMgPSBwbHVn
aW5JbmZvLm1pbWVzW2ldLmV4dGVuc2lvbnM7CiAKICAgICAgICAgaWYgKGZpbmQoZXh0ZW5zaW9u
cy5iZWdpbigpLCBleHRlbnNpb25zLmVuZCgpLCBleHRlbnNpb24pICE9IGV4dGVuc2lvbnMuZW5k
KCkpCiAgICAgICAgICAgICByZXR1cm4gWUVTOwpAQCAtMzI3LDggKzMwNyw4IEBAIC0gKEJPT0wp
c3VwcG9ydHNNSU1FVHlwZTooY29uc3QgV2ViQ29yZToKIHsKICAgICBBU1NFUlQobWltZVR5cGUu
bG93ZXIoKSA9PSBtaW1lVHlwZSk7CiAgICAgCi0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBt
aW1lVHlwZXMuc2l6ZSgpOyArK2kpIHsKLSAgICAgICAgaWYgKG1pbWVUeXBlc1tpXS50eXBlID09
IG1pbWVUeXBlKQorICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcGx1Z2luSW5mby5taW1lcy5z
aXplKCk7ICsraSkgeworICAgICAgICBpZiAocGx1Z2luSW5mby5taW1lc1tpXS50eXBlID09IG1p
bWVUeXBlKQogICAgICAgICAgICAgcmV0dXJuIFlFUzsKICAgICB9CiAgICAgCkBAIC0zMzksOCAr
MzE5LDggQEAgLSAoTlNTdHJpbmcgKilNSU1FVHlwZUZvckV4dGVuc2lvbjooY29ucwogewogICAg
IEFTU0VSVChleHRlbnNpb24ubG93ZXIoKSA9PSBleHRlbnNpb24pOwogICAgIAotICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgbWltZVR5cGVzLnNpemUoKTsgKytpKSB7Ci0gICAgICAgIGNvbnN0
IE1pbWVDbGFzc0luZm8mIG1pbWVDbGFzc0luZm8gPSBtaW1lVHlwZXNbaV07CisgICAgZm9yIChz
aXplX3QgaSA9IDA7IGkgPCBwbHVnaW5JbmZvLm1pbWVzLnNpemUoKTsgKytpKSB7CisgICAgICAg
IGNvbnN0IE1pbWVDbGFzc0luZm8mIG1pbWVDbGFzc0luZm8gPSBwbHVnaW5JbmZvLm1pbWVzW2ld
OwogICAgICAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiYgZXh0ZW5zaW9ucyA9IG1pbWVDbGFzc0lu
Zm8uZXh0ZW5zaW9uczsKIAogICAgICAgICBpZiAoZmluZChleHRlbnNpb25zLmJlZ2luKCksIGV4
dGVuc2lvbnMuZW5kKCksIGV4dGVuc2lvbikgIT0gZXh0ZW5zaW9ucy5lbmQoKSkKQEAgLTM2MCw3
ICszNDAsNyBAQCAtIChCT09MKWlzSmF2YVBsdWdJbgogewogICAgIGNvbnN0IFN0cmluZyYgYnVu
ZGxlSWRlbnRpZmllciA9IFtzZWxmIGJ1bmRsZUlkZW50aWZpZXJdOwogICAgIHJldHVybiBidW5k
bGVJZGVudGlmaWVyID09IEphdmFDb2NvYVBsdWdpbklkZW50aWZpZXIgfHwgYnVuZGxlSWRlbnRp
ZmllciA9PSBKYXZhQ2FyYm9uUGx1Z2luSWRlbnRpZmllciB8fAotICAgICAgICBbKE5TU3RyaW5n
ICopW3NlbGYgZmlsZW5hbWVdIF93ZWJraXRfaXNDYXNlSW5zZW5zaXRpdmVFcXVhbFRvU3RyaW5n
OkphdmFDRk1QbHVnaW5GaWxlbmFtZV07CisgICAgICAgIGVxdWFsSWdub3JpbmdDYXNlKHBsdWdp
bkluZm8uZmlsZSwgSmF2YUNGTVBsdWdpbkZpbGVuYW1lKTsKIH0KIAogc3RhdGljIGlubGluZSB2
b2lkIHN3YXBJbnRzSW5IZWFkZXIodWludDhfdCogYnl0ZXMsIHVuc2lnbmVkIGxlbmd0aCkKQEAg
LTQ0NSw3ICs0MjUsNyBAQCAtIChCT09MKWlzTmF0aXZlTGlicmFyeURhdGE6KE5TRGF0YSAqKWRh
CiAtIChVSW50MzIpdmVyc2lvbk51bWJlcgogewogICAgIC8vIENGQnVuZGxlR2V0VmVyc2lvbk51
bWJlciBkb2Vzbid0IHdvcmsgd2l0aCBhbGwgcG9zc2libGUgdmVyc2lvbmluZyBzY2hlbWVzLCBi
dXQgd2UgdGhpbmsgZm9yIG5vdyBpdCdzIGdvb2QgZW5vdWdoIGZvciB1cy4KLSAgICByZXR1cm4g
Q0ZCdW5kbGVHZXRWZXJzaW9uTnVtYmVyKGNmQnVuZGxlKTsKKyAgICByZXR1cm4gQ0ZCdW5kbGVH
ZXRWZXJzaW9uTnVtYmVyKGNmQnVuZGxlLmdldCgpKTsKIH0KIAogLSAodm9pZCl3YXNBZGRlZFRv
UGx1Z2luRGF0YWJhc2U6KFdlYlBsdWdpbkRhdGFiYXNlICopZGF0YWJhc2UKQEAgLTQ2Nyw3ICs0
NDcsNyBAQCAtICh2b2lkKXdhc1JlbW92ZWRGcm9tUGx1Z2luRGF0YWJhc2U6KFdlCiAKIC0gKFdl
YkNvcmU6OlN0cmluZylidW5kbGVJZGVudGlmaWVyCiB7Ci0gICAgcmV0dXJuIENGQnVuZGxlR2V0
SWRlbnRpZmllcihjZkJ1bmRsZSk7CisgICAgcmV0dXJuIENGQnVuZGxlR2V0SWRlbnRpZmllcihj
ZkJ1bmRsZS5nZXQoKSk7CiB9CiAKIEBlbmQKSW5kZXg6IFdlYktpdC9tYWMvUGx1Z2lucy9XZWJO
ZXRzY2FwZVBsdWdpblBhY2thZ2UubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L21hYy9QbHVnaW5z
L1dlYk5ldHNjYXBlUGx1Z2luUGFja2FnZS5tbQkocmV2aXNpb24gNjE1NzgpCisrKyBXZWJLaXQv
bWFjL1BsdWdpbnMvV2ViTmV0c2NhcGVQbHVnaW5QYWNrYWdlLm1tCSh3b3JraW5nIGNvcHkpCkBA
IC0xMDcsNyArMTA3LDcgQEAgLSAoUmVzRmlsZVJlZk51bSlvcGVuUmVzb3VyY2VGaWxlCiAgICAg
fQogI2VuZGlmCiAKLSAgICByZXR1cm4gQ0ZCdW5kbGVPcGVuQnVuZGxlUmVzb3VyY2VNYXAoY2ZC
dW5kbGUpOworICAgIHJldHVybiBDRkJ1bmRsZU9wZW5CdW5kbGVSZXNvdXJjZU1hcChjZkJ1bmRs
ZS5nZXQoKSk7CiB9CiAKIC0gKHZvaWQpY2xvc2VSZXNvdXJjZUZpbGU6KFJlc0ZpbGVSZWZOdW0p
cmVzUmVmCkBAIC0xMTksNyArMTE5LDcgQEAgLSAodm9pZCljbG9zZVJlc291cmNlRmlsZTooUmVz
RmlsZVJlZk51bQogICAgIH0KICNlbmRpZgogCi0gICAgQ0ZCdW5kbGVDbG9zZUJ1bmRsZVJlc291
cmNlTWFwKGNmQnVuZGxlLCByZXNSZWYpOworICAgIENGQnVuZGxlQ2xvc2VCdW5kbGVSZXNvdXJj
ZU1hcChjZkJ1bmRsZS5nZXQoKSwgcmVzUmVmKTsKIH0KIAogLSAoTlNTdHJpbmcgKilzdHJpbmdG
b3JTdHJpbmdMaXN0SUQ6KFNJbnQxNilzdHJpbmdMaXN0SUQgYW5kSW5kZXg6KFNJbnQxNilpbmRl
eApAQCAtMTc3LDI0ICsxNzcsMjUgQEAgLSAoQk9PTClnZXRQbHVnaW5JbmZvRnJvbVJlc291cmNl
cwogICAgICAgICB9CiAgICAgICAgIAogICAgICAgICBkZXNjcmlwdGlvbiA9IFtzZWxmIHN0cmlu
Z0ZvclN0cmluZ0xpc3RJRDpNSU1FRGVzY3JpcHRpb25TdHJpbmdOdW1iZXIKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5kSW5kZXg6bWltZVR5cGVzLnNpemUoKV07
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZEluZGV4OnBsdWdp
bkluZm8ubWltZXMuc2l6ZSgpXTsKICAgICAgICAgbWltZUNsYXNzSW5mby5kZXNjID0gZGVzY3Jp
cHRpb247CiAKLSAgICAgICAgbWltZVR5cGVzLmFwcGVuZChtaW1lQ2xhc3NJbmZvKTsKKyAgICAg
ICAgcGx1Z2luSW5mby5taW1lcy5hcHBlbmQobWltZUNsYXNzSW5mbyk7CiAgICAgfQogCi0gICAg
TlNTdHJpbmcgKmZpbGVuYW1lID0gW3NlbGYgZmlsZW5hbWVdOworICAgIE5TU3RyaW5nICpmaWxl
bmFtZSA9IFsoTlNTdHJpbmcgKilwYXRoIGxhc3RQYXRoQ29tcG9uZW50XTsKKyAgICBwbHVnaW5J
bmZvLmZpbGUgPSBmaWxlbmFtZTsKICAgICAKICAgICBkZXNjcmlwdGlvbiA9IFtzZWxmIHN0cmlu
Z0ZvclN0cmluZ0xpc3RJRDpQbHVnaW5OYW1lT3JEZXNjcmlwdGlvblN0cmluZ051bWJlciBhbmRJ
bmRleDoxXTsKICAgICBpZiAoIWRlc2NyaXB0aW9uKQogICAgICAgICBkZXNjcmlwdGlvbiA9IGZp
bGVuYW1lOwotICAgIHBsdWdpbkRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb247CisgICAgcGx1Z2lu
SW5mby5kZXNjID0gZGVzY3JpcHRpb247CiAgICAgCiAgICAgCiAgICAgTlNTdHJpbmcgKnRoZU5h
bWUgPSBbc2VsZiBzdHJpbmdGb3JTdHJpbmdMaXN0SUQ6UGx1Z2luTmFtZU9yRGVzY3JpcHRpb25T
dHJpbmdOdW1iZXIgYW5kSW5kZXg6Ml07CiAgICAgaWYgKCF0aGVOYW1lKQogICAgICAgICB0aGVO
YW1lID0gZmlsZW5hbWU7Ci0gICAgbmFtZSA9IHRoZU5hbWU7CisgICAgcGx1Z2luSW5mby5uYW1l
ID0gdGhlTmFtZTsKICAgICAKICAgICBbc2VsZiBjbG9zZVJlc291cmNlRmlsZTpyZXNSZWZdOwog
ICAgIApAQCAtMjA5LDcgKzIxMCw3IEBAIC0gKEJPT0wpX2luaXRXaXRoUGF0aDooTlNTdHJpbmcg
KilwbHVnaW4KIAogICAgIGlmIChjZkJ1bmRsZSkgewogICAgICAgICAvLyBCdW5kbGUKLSAgICAg
ICAgQ0ZCdW5kbGVHZXRQYWNrYWdlSW5mbyhjZkJ1bmRsZSwgJnR5cGUsIE5VTEwpOworICAgICAg
ICBDRkJ1bmRsZUdldFBhY2thZ2VJbmZvKGNmQnVuZGxlLmdldCgpLCAmdHlwZSwgTlVMTCk7CiAj
aWZkZWYgU1VQUE9SVF9DRk0KICAgICAgICAgaXNCdW5kbGUgPSBZRVM7CiAjZW5kaWYKQEAgLTIz
MCw3ICsyMzEsNyBAQCAtIChCT09MKV9pbml0V2l0aFBhdGg6KE5TU3RyaW5nICopcGx1Z2luCiAK
ICAgICAvLyBDaGVjayBpZiB0aGUgZXhlY3V0YWJsZSBpcyBNYWNoLU8gb3IgQ0ZNLgogICAgIGlm
IChjZkJ1bmRsZSkgewotICAgICAgICBSZXRhaW5QdHI8Q0ZVUkxSZWY+IGV4ZWN1dGFibGVVUkwo
QWRvcHRDRiwgQ0ZCdW5kbGVDb3B5RXhlY3V0YWJsZVVSTChjZkJ1bmRsZSkpOworICAgICAgICBS
ZXRhaW5QdHI8Q0ZVUkxSZWY+IGV4ZWN1dGFibGVVUkwoQWRvcHRDRiwgQ0ZCdW5kbGVDb3B5RXhl
Y3V0YWJsZVVSTChjZkJ1bmRsZS5nZXQoKSkpOwogICAgICAgICBpZiAoIWV4ZWN1dGFibGVVUkwp
CiAgICAgICAgICAgICByZXR1cm4gTk87CiAgICAgICAgIE5TRmlsZUhhbmRsZSAqZXhlY3V0YWJs
ZUZpbGUgPSBbTlNGaWxlSGFuZGxlIGZpbGVIYW5kbGVGb3JSZWFkaW5nQXRQYXRoOlsoTlNVUkwg
KilleGVjdXRhYmxlVVJMLmdldCgpIHBhdGhdXTsKQEAgLTI0OCw3ICsyNDksNyBAQCAtIChCT09M
KV9pbml0V2l0aFBhdGg6KE5TU3RyaW5nICopcGx1Z2luCiAjZW5kaWYKIAogI2lmIFVTRShQTFVH
SU5fSE9TVF9QUk9DRVNTKQotICAgICAgICBSZXRhaW5QdHI8Q0ZBcnJheVJlZj4gYXJjaHMoQWRv
cHRDRiwgQ0ZCdW5kbGVDb3B5RXhlY3V0YWJsZUFyY2hpdGVjdHVyZXMoY2ZCdW5kbGUpKTsKKyAg
ICAgICAgUmV0YWluUHRyPENGQXJyYXlSZWY+IGFyY2hzKEFkb3B0Q0YsIENGQnVuZGxlQ29weUV4
ZWN1dGFibGVBcmNoaXRlY3R1cmVzKGNmQnVuZGxlLmdldCgpKSk7CiAgICAgICAgIAogICAgICAg
ICBpZiAoWyhOU0FycmF5ICopYXJjaHMuZ2V0KCkgY29udGFpbnNPYmplY3Q6W05TTnVtYmVyIG51
bWJlcldpdGhJbnRlZ2VyOk5TQnVuZGxlRXhlY3V0YWJsZUFyY2hpdGVjdHVyZVg4Nl82NF1dKQog
ICAgICAgICAgICAgcGx1Z2luSG9zdEFyY2hpdGVjdHVyZSA9IENQVV9UWVBFX1g4Nl82NDsKQEAg
LTMyNSw3ICszMjYsNyBAQCAtICh2b2lkKV9hcHBseURqVnVXb3JrYXJvdW5kCiAgICAgaWYgKCFj
ZkJ1bmRsZSkKICAgICAgICAgcmV0dXJuOwogICAgIAotICAgIGlmIChbKE5TU3RyaW5nICopQ0ZC
dW5kbGVHZXRJZGVudGlmaWVyKGNmQnVuZGxlKSBpc0VxdWFsVG9TdHJpbmc6QCJjb20ubGl6YXJk
dGVjaC5OUERqVnUiXSkgeworICAgIGlmIChbc2VsZiBidW5kbGVJZGVudGlmaWVyXSA9PSAiY29t
LmxpemFyZHRlY2guTlBEalZ1IikgewogICAgICAgICAvLyBUaGUgRGpWdSBwbHVnLWluIHdpbGwg
Y3Jhc2ggY29weWluZyB0aGUgdnRhYmxlIGlmIGl0J3MgdG9vIGJpZyBzbyB3ZSBjYXAgaXQgdG8g
CiAgICAgICAgIC8vIHdoYXQgdGhlIHBsdWctaW4gZXhwZWN0cyBoZXJlLiAKICAgICAgICAgLy8g
c2l6ZSArIHZlcnNpb24gKyA0MCBmdW5jdGlvbiBwb2ludGVycy4KQEAgLTM1NCw3ICszNTUsNyBA
QCAtIChCT09MKV90cnlMb2FkCiAgICAgQ0ZBYnNvbHV0ZVRpbWUgY3VycmVudFRpbWU7CiAgICAg
Q0ZBYnNvbHV0ZVRpbWUgZHVyYXRpb247CiAjZW5kaWYKLSAgICBMT0coUGx1Z2lucywgIiVmIExv
YWQgdGltaW5nIHN0YXJ0ZWQgZm9yOiAlQCIsIHN0YXJ0LCAoTlNTdHJpbmcgKilbc2VsZiBuYW1l
XSk7CisgICAgTE9HKFBsdWdpbnMsICIlZiBMb2FkIHRpbWluZyBzdGFydGVkIGZvcjogJUAiLCBz
dGFydCwgKE5TU3RyaW5nICopW3NlbGYgcGx1Z2luSW5mb10ubmFtZSk7CiAKICAgICBpZiAoaXNM
b2FkZWQpCiAgICAgICAgIHJldHVybiBZRVM7CkBAIC0zNjIsNyArMzYzLDcgQEAgLSAoQk9PTClf
dHJ5TG9hZAogI2lmZGVmIFNVUFBPUlRfQ0ZNCiAgICAgaWYgKGlzQnVuZGxlKSB7CiAjZW5kaWYK
LSAgICAgICAgaWYgKCFDRkJ1bmRsZUxvYWRFeGVjdXRhYmxlKGNmQnVuZGxlKSkKKyAgICAgICAg
aWYgKCFDRkJ1bmRsZUxvYWRFeGVjdXRhYmxlKGNmQnVuZGxlLmdldCgpKSkKICAgICAgICAgICAg
IHJldHVybiBOTzsKICNpZiAhTE9HX0RJU0FCTEVECiAgICAgICAgIGN1cnJlbnRUaW1lID0gQ0ZB
YnNvbHV0ZVRpbWVHZXRDdXJyZW50KCk7CkBAIC0zNzgsOSArMzc5LDkgQEAgLSAoQk9PTClfdHJ5
TG9hZAogICAgICAgICAgICAgICAgIHJldHVybiBOTzsKICAgICAgICAgfSBlbHNlIHsKICNlbmRp
ZgotICAgICAgICAgICAgTlBfSW5pdGlhbGl6ZSA9IChOUF9Jbml0aWFsaXplRnVuY1B0cilDRkJ1
bmRsZUdldEZ1bmN0aW9uUG9pbnRlckZvck5hbWUoY2ZCdW5kbGUsIENGU1RSKCJOUF9Jbml0aWFs
aXplIikpOwotICAgICAgICAgICAgTlBfR2V0RW50cnlQb2ludHMgPSAoTlBfR2V0RW50cnlQb2lu
dHNGdW5jUHRyKUNGQnVuZGxlR2V0RnVuY3Rpb25Qb2ludGVyRm9yTmFtZShjZkJ1bmRsZSwgQ0ZT
VFIoIk5QX0dldEVudHJ5UG9pbnRzIikpOwotICAgICAgICAgICAgTlBfU2h1dGRvd24gPSAoTlBQ
X1NodXRkb3duUHJvY1B0cilDRkJ1bmRsZUdldEZ1bmN0aW9uUG9pbnRlckZvck5hbWUoY2ZCdW5k
bGUsIENGU1RSKCJOUF9TaHV0ZG93biIpKTsKKyAgICAgICAgICAgIE5QX0luaXRpYWxpemUgPSAo
TlBfSW5pdGlhbGl6ZUZ1bmNQdHIpQ0ZCdW5kbGVHZXRGdW5jdGlvblBvaW50ZXJGb3JOYW1lKGNm
QnVuZGxlLmdldCgpLCBDRlNUUigiTlBfSW5pdGlhbGl6ZSIpKTsKKyAgICAgICAgICAgIE5QX0dl
dEVudHJ5UG9pbnRzID0gKE5QX0dldEVudHJ5UG9pbnRzRnVuY1B0cilDRkJ1bmRsZUdldEZ1bmN0
aW9uUG9pbnRlckZvck5hbWUoY2ZCdW5kbGUuZ2V0KCksIENGU1RSKCJOUF9HZXRFbnRyeVBvaW50
cyIpKTsKKyAgICAgICAgICAgIE5QX1NodXRkb3duID0gKE5QUF9TaHV0ZG93blByb2NQdHIpQ0ZC
dW5kbGVHZXRGdW5jdGlvblBvaW50ZXJGb3JOYW1lKGNmQnVuZGxlLmdldCgpLCBDRlNUUigiTlBf
U2h1dGRvd24iKSk7CiAgICAgICAgICAgICBpZiAoIU5QX0luaXRpYWxpemUgfHwgIU5QX0dldEVu
dHJ5UG9pbnRzIHx8ICFOUF9TaHV0ZG93bikKICAgICAgICAgICAgICAgICByZXR1cm4gTk87CiAj
aWZkZWYgU1VQUE9SVF9DRk0KQEAgLTYyNyw5ICs2MjgsOSBAQCAtIChCT09MKV90cnlMb2FkCiAg
ICAgICAgIHBsdWdpblZlcnNpb24gPSBwbHVnaW5GdW5jcy52ZXJzaW9uOwogICAgICAgICAKICAg
ICAgICAgaWYgKHBsdWdpbkZ1bmNzLmphdmFDbGFzcykKLSAgICAgICAgICAgIExPRyhMaXZlQ29u
bmVjdCwgIiVAOiAgbWFjaC1vIGVudHJ5IHBvaW50IGZvciBOUFBfR2V0SmF2YUNsYXNzID0gJXAi
LCAoTlNTdHJpbmcgKilbc2VsZiBuYW1lXSwgcGx1Z2luRnVuY3MuamF2YUNsYXNzKTsKKyAgICAg
ICAgICAgIExPRyhMaXZlQ29ubmVjdCwgIiVAOiAgbWFjaC1vIGVudHJ5IHBvaW50IGZvciBOUFBf
R2V0SmF2YUNsYXNzID0gJXAiLCAoTlNTdHJpbmcgKilbc2VsZiBwbHVnaW5JbmZvXS5uYW1lLCBw
bHVnaW5GdW5jcy5qYXZhQ2xhc3MpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICBMT0coTGl2
ZUNvbm5lY3QsICIlQDogIG5vIGVudHJ5IHBvaW50IGZvciBOUFBfR2V0SmF2YUNsYXNzIiwgKE5T
U3RyaW5nICopW3NlbGYgbmFtZV0pOworICAgICAgICAgICAgTE9HKExpdmVDb25uZWN0LCAiJUA6
ICBubyBlbnRyeSBwb2ludCBmb3IgTlBQX0dldEphdmFDbGFzcyIsIChOU1N0cmluZyAqKVtzZWxm
IHBsdWdpbkluZm9dLm5hbWUpOwogCiAjaWZkZWYgU1VQUE9SVF9DRk0KICAgICB9CkBAIC02OTgs
NyArNjk5LDcgQEAgLSAoQk9PTClzdXBwb3J0c1NuYXBzaG90dGluZwogICAgICAgICByZXR1cm4g
WUVTOwogICAgIAogICAgIC8vIEZsYXNoIGhhcyBhIGJvZ3VzIEluZm8ucGxpc3QgZW50cnkgZm9y
IENGQnVuZGxlVmVyc2lvblN0cmluZywgc28gdXNlIENGQnVuZGxlU2hvcnRWZXJzaW9uU3RyaW5n
LgotICAgIE5TU3RyaW5nICp2ZXJzaW9uU3RyaW5nID0gKE5TU3RyaW5nICopQ0ZEaWN0aW9uYXJ5
R2V0VmFsdWUoQ0ZCdW5kbGVHZXRJbmZvRGljdGlvbmFyeShjZkJ1bmRsZSksIENGU1RSKCJDRkJ1
bmRsZVNob3J0VmVyc2lvblN0cmluZyIpKTsKKyAgICBOU1N0cmluZyAqdmVyc2lvblN0cmluZyA9
IChOU1N0cmluZyAqKUNGRGljdGlvbmFyeUdldFZhbHVlKENGQnVuZGxlR2V0SW5mb0RpY3Rpb25h
cnkoY2ZCdW5kbGUuZ2V0KCkpLCBDRlNUUigiQ0ZCdW5kbGVTaG9ydFZlcnNpb25TdHJpbmciKSk7
CiAgICAgCiAgICAgaWYgKCFbdmVyc2lvblN0cmluZyBoYXNQcmVmaXg6QCIxMC4xIl0pCiAgICAg
ICAgIHJldHVybiBZRVM7CkBAIC03NTQsNyArNzU1LDcgQEAgLSAodm9pZClfdW5sb2FkV2l0aFNo
dXRkb3duOihCT09MKXNodXRkbwogICAgIGlmICghaXNMb2FkZWQpCiAgICAgICAgIHJldHVybjsK
ICAgICAKLSAgICBMT0coUGx1Z2lucywgIlVubG9hZGluZyAlQC4uLiIsIChOU1N0cmluZyAqKW5h
bWUpOworICAgIExPRyhQbHVnaW5zLCAiVW5sb2FkaW5nICVALi4uIiwgKE5TU3RyaW5nICopcGx1
Z2luSW5mby5uYW1lKTsKIAogICAgIC8vIENhbm5vdCB1bmxvYWQgYSBwbHVnLWluIHBhY2thZ2Ug
d2hpbGUgYW4gaW5zdGFuY2UgaXMgc3RpbGwgdXNpbmcgaXQKICAgICBpZiAoaW5zdGFuY2VDb3Vu
dCA+IDApIHsKSW5kZXg6IFdlYktpdC9tYWMvUGx1Z2lucy9XZWJQbHVnaW5EYXRhYmFzZS5tbQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJLaXQvbWFjL1BsdWdpbnMvV2ViUGx1Z2luRGF0YWJhc2UubW0JKHJl
dmlzaW9uIDYxNTc4KQorKysgV2ViS2l0L21hYy9QbHVnaW5zL1dlYlBsdWdpbkRhdGFiYXNlLm1t
CSh3b3JraW5nIGNvcHkpCkBAIC0zMDcsOSArMzA3LDkgQEAgLSAodm9pZClyZWZyZXNoCiAgICAg
TlNNdXRhYmxlU2V0ICpNSU1FVHlwZXMgPSBbW05TTXV0YWJsZVNldCBhbGxvY10gaW5pdF07CiAg
ICAgcGx1Z2luRW51bWVyYXRvciA9IFtwbHVnaW5zIG9iamVjdEVudW1lcmF0b3JdOwogICAgIHdo
aWxlICgocGx1Z2luID0gW3BsdWdpbkVudW1lcmF0b3IgbmV4dE9iamVjdF0pKSB7Ci0gICAgICAg
IGNvbnN0IFZlY3RvcjxNaW1lQ2xhc3NJbmZvPiYgbWltZVR5cGVzID0gW3BsdWdpbiBtaW1lVHlw
ZXNdOwotICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG1pbWVUeXBlcy5zaXplKCk7ICsr
aSkKLSAgICAgICAgICAgIFtNSU1FVHlwZXMgYWRkT2JqZWN0Om1pbWVUeXBlc1tpXS50eXBlXTsK
KyAgICAgICAgY29uc3QgUGx1Z2luSW5mbyYgcGx1Z2luSW5mbyA9IFtwbHVnaW4gcGx1Z2luSW5m
b107CisgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcGx1Z2luSW5mby5taW1lcy5zaXpl
KCk7ICsraSkKKyAgICAgICAgICAgIFtNSU1FVHlwZXMgYWRkT2JqZWN0OnBsdWdpbkluZm8ubWlt
ZXNbaV0udHlwZV07CiAgICAgfQogICAgIAogICAgIC8vIFJlZ2lzdGVyIHBsdWctaW4gdmlld3Mg
YW5kIHJlcHJlc2VudGF0aW9ucy4KQEAgLTQ0NCw5ICs0NDQsOSBAQCAtICh2b2lkKV9yZW1vdmVQ
bHVnaW46KFdlYkJhc2VQbHVnaW5QYWNrCiAgICAgQVNTRVJUKHBsdWdpbik7CiAKICAgICAvLyBV
bnJlZ2lzdGVyIHBsdWctaW4ncyBNSU1FIHR5cGUgcmVnaXN0cmF0aW9ucwotICAgIGNvbnN0IFZl
Y3RvcjxNaW1lQ2xhc3NJbmZvPiYgbWltZVR5cGVzID0gW3BsdWdpbiBtaW1lVHlwZXNdOwotICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbWltZVR5cGVzLnNpemUoKTsgKytpKSB7Ci0gICAgICAg
IE5TU3RyaW5nICpNSU1FVHlwZSA9IG1pbWVUeXBlc1tpXS50eXBlOworICAgIGNvbnN0IFBsdWdp
bkluZm8mIHBsdWdpbkluZm8gPSBbcGx1Z2luIHBsdWdpbkluZm9dOworICAgIGZvciAoc2l6ZV90
IGkgPSAwOyBpIDwgcGx1Z2luSW5mby5taW1lcy5zaXplKCk7ICsraSkgeworICAgICAgICBOU1N0
cmluZyAqTUlNRVR5cGUgPSBwbHVnaW5JbmZvLm1pbWVzW2ldLnR5cGU7CiAKICAgICAgICAgaWYg
KFtyZWdpc3RlcmVkTUlNRVR5cGVzIGNvbnRhaW5zT2JqZWN0Ok1JTUVUeXBlXSkgewogICAgICAg
ICAgICAgaWYgKHNlbGYgPT0gc2hhcmVkRGF0YWJhc2UpCkluZGV4OiBXZWJLaXQvbWFjL1BsdWdp
bnMvV2ViUGx1Z2luUGFja2FnZS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvbWFjL1BsdWdpbnMv
V2ViUGx1Z2luUGFja2FnZS5tbQkocmV2aXNpb24gNjE1NzgpCisrKyBXZWJLaXQvbWFjL1BsdWdp
bnMvV2ViUGx1Z2luUGFja2FnZS5tbQkod29ya2luZyBjb3B5KQpAQCAtNTQsNyArNTQsNyBAQCAt
IChpZClpbml0V2l0aFBhdGg6KE5TU3RyaW5nICopcGx1Z2luUGF0CiAgICAgCiAgICAgaWYgKCFb
W3BsdWdpblBhdGggcGF0aEV4dGVuc2lvbl0gX3dlYmtpdF9pc0Nhc2VJbnNlbnNpdGl2ZUVxdWFs
VG9TdHJpbmc6QCJ3ZWJwbHVnaW4iXSkgewogICAgICAgICBVSW50MzIgdHlwZSA9IDA7Ci0gICAg
ICAgIENGQnVuZGxlR2V0UGFja2FnZUluZm8oY2ZCdW5kbGUsICZ0eXBlLCBOVUxMKTsKKyAgICAg
ICAgQ0ZCdW5kbGVHZXRQYWNrYWdlSW5mbyhjZkJ1bmRsZS5nZXQoKSwgJnR5cGUsIE5VTEwpOwog
ICAgICAgICBpZiAodHlwZSAhPSBGT1VSX0NIQVJfQ09ERSgnV0JQTCcpKSB7CiAgICAgICAgICAg
ICBbc2VsZiByZWxlYXNlXTsKICAgICAgICAgICAgIHJldHVybiBuaWw7CkBAIC0xMDMsNyArMTAz
LDcgQEAgLSAoQk9PTClsb2FkCiAgICAgCiAjaWYgIUxPR19ESVNBQkxFRAogICAgIENGQWJzb2x1
dGVUaW1lIGR1cmF0aW9uID0gQ0ZBYnNvbHV0ZVRpbWVHZXRDdXJyZW50KCkgLSBzdGFydDsKLSAg
ICBMT0coUGx1Z2lucywgInByaW5jaXBhbENsYXNzIHRvb2sgJWYgc2Vjb25kcyBmb3I6ICVAIiwg
ZHVyYXRpb24sIChOU1N0cmluZyAqKVtzZWxmIG5hbWVdKTsKKyAgICBMT0coUGx1Z2lucywgInBy
aW5jaXBhbENsYXNzIHRvb2sgJWYgc2Vjb25kcyBmb3I6ICVAIiwgZHVyYXRpb24sIChOU1N0cmlu
ZyAqKVtzZWxmIHBsdWdpbkluZm9dLm5hbWUpOwogI2VuZGlmCiAgICAgcmV0dXJuIFtzdXBlciBs
b2FkXTsKIH0KSW5kZXg6IFdlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvSG9zdGVkTmV0c2NhcGVQ
bHVnaW5TdHJlYW0ubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9I
b3N0ZWROZXRzY2FwZVBsdWdpblN0cmVhbS5tbQkocmV2aXNpb24gNjE1NzgpCisrKyBXZWJLaXQv
bWFjL1BsdWdpbnMvSG9zdGVkL0hvc3RlZE5ldHNjYXBlUGx1Z2luU3RyZWFtLm1tCSh3b3JraW5n
IGNvcHkpCkBAIC0yNTYsNyArMjU2LDcgQEAgTlNFcnJvciAqSG9zdGVkTmV0c2NhcGVQbHVnaW5T
dHJlYW06OnBsdQogICAgIHJldHVybiBbW1tOU0Vycm9yIGFsbG9jXSBfaW5pdFdpdGhQbHVnaW5F
cnJvckNvZGU6V2ViS2l0RXJyb3JQbHVnSW5DYW5jZWxsZWRDb25uZWN0aW9uCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudFVSTDptX3Jlc3BvbnNlVVJM
ID8gbV9yZXNwb25zZVVSTC5nZXQoKSA6IG1fcmVxdWVzdFVSTC5nZXQoKQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsdWdpblBhZ2VVUkw6bmlsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGx1Z2luTmFtZTpbW21faW5zdGFuY2Ut
PnBsdWdpblZpZXcoKSBwbHVnaW5QYWNrYWdlXSBuYW1lXQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHBsdWdpbk5hbWU6W1ttX2luc3RhbmNlLT5wbHVnaW5WaWV3
KCkgcGx1Z2luUGFja2FnZV0gcGx1Z2luSW5mb10ubmFtZQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgTUlNRVR5cGU6bV9taW1lVHlwZS5nZXQoKV0gYXV0b3Jl
bGVhc2VdOwogfQogCkluZGV4OiBXZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1
Z2luSG9zdE1hbmFnZXIubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L21hYy9QbHVnaW5zL0hvc3Rl
ZC9OZXRzY2FwZVBsdWdpbkhvc3RNYW5hZ2VyLm1tCShyZXZpc2lvbiA2MTU3OCkKKysrIFdlYktp
dC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2NhcGVQbHVnaW5Ib3N0TWFuYWdlci5tbQkod29ya2lu
ZyBjb3B5KQpAQCAtMTUyLDcgKzE1Miw3IEBAIGJvb2wgTmV0c2NhcGVQbHVnaW5Ib3N0TWFuYWdl
cjo6c3Bhd25QbHUKICAgICBOU1N0cmluZyAqdmlzaWJsZU5hbWUgPSBbTlNTdHJpbmcgc3RyaW5n
V2l0aEZvcm1hdDpVSV9TVFJJTkcoIiVAICglQCBJbnRlcm5ldCBwbHVnLWluKSIsCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICJ2aXNpYmxlIG5hbWUgb2YgdGhlIHBsdWctaW4gaG9zdCBwcm9jZXNzLiBUaGUgZmlyc3QgYXJn
dW1lbnQgaXMgdGhlIHBsdWctaW4gbmFtZSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbmQgdGhlIHNlY29uZCBhcmd1
bWVudCBpcyB0aGUgYXBwbGljYXRpb24gbmFtZS4iKSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgW1twYWNrYWdlIGZpbGVuYW1lXSBzdHJpbmdCeURlbGV0aW5nUGF0aEV4dGVuc2lvbl0s
IFtbTlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gcHJvY2Vzc05hbWVdXTsKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgWyhOU1N0cmluZyAqKVtwYWNrYWdlIHBsdWdpbkluZm9dLmZpbGUg
c3RyaW5nQnlEZWxldGluZ1BhdGhFeHRlbnNpb25dLCBbW05TUHJvY2Vzc0luZm8gcHJvY2Vzc0lu
Zm9dIHByb2Nlc3NOYW1lXV07CiAgICAgCiAgICAgTlNEaWN0aW9uYXJ5ICpob3N0UHJvcGVydGll
cyA9IFtbTlNEaWN0aW9uYXJ5IGFsbG9jXSBpbml0V2l0aE9iamVjdHNBbmRLZXlzOgogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJsZU5hbWUsIEAidmlzaWJsZU5hbWUi
LApJbmRleDogV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5t
bQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVy
Q2xpZW50Lm1tCShyZXZpc2lvbiA2MTU3OCkKKysrIFdlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViRnJhbWVMb2FkZXJDbGllbnQubW0JKHdvcmtpbmcgY29weSkKQEAgLTE2MzIsNyArMTYzMiw3
IEBAIFBhc3NSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDoKICAgICAgICAgICAg
IEtVUkwgcGx1Z2luUGFnZVVSTCA9IGRvY3VtZW50LT5jb21wbGV0ZVVSTChkZXByZWNhdGVkUGFy
c2VVUkwocGFyYW1ldGVyVmFsdWUocGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMsICJwbHVnaW5zcGFn
ZSIpKSk7CiAgICAgICAgICAgICBpZiAoIXBsdWdpblBhZ2VVUkwucHJvdG9jb2xJbkhUVFBGYW1p
bHkoKSkKICAgICAgICAgICAgICAgICBwbHVnaW5QYWdlVVJMID0gS1VSTCgpOwotICAgICAgICAg
ICAgTlNTdHJpbmcgKnBsdWdpbk5hbWUgPSBwbHVnaW5QYWNrYWdlID8gKE5TU3RyaW5nICopW3Bs
dWdpblBhY2thZ2UgbmFtZV0gOiBuaWw7CisgICAgICAgICAgICBOU1N0cmluZyAqcGx1Z2luTmFt
ZSA9IHBsdWdpblBhY2thZ2UgPyAoTlNTdHJpbmcgKilbcGx1Z2luUGFja2FnZSBwbHVnaW5JbmZv
XS5uYW1lIDogbmlsOwogCiAgICAgICAgICAgICBOU0Vycm9yICplcnJvciA9IFtbTlNFcnJvciBh
bGxvY10gX2luaXRXaXRoUGx1Z2luRXJyb3JDb2RlOmVycm9yQ29kZQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudFVSTDpw
bHVnaW5VUkwgcGx1Z2luUGFnZVVSTDpwbHVnaW5QYWdlVVJMIHBsdWdpbk5hbWU6cGx1Z2luTmFt
ZSBNSU1FVHlwZTpNSU1FVHlwZV07CkBAIC0xNzI0LDcgKzE3MjQsNyBAQCBQYXNzUmVmUHRyPFdp
ZGdldD4gV2ViRnJhbWVMb2FkZXJDbGllbnQ6CiAgICAgaWYgKCF2aWV3KSB7CiAgICAgICAgIFdl
YlJlc291cmNlRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hlKiBpbXBsZW1lbnRhdGlvbnMgPSBX
ZWJWaWV3R2V0UmVzb3VyY2VMb2FkRGVsZWdhdGVJbXBsZW1lbnRhdGlvbnMoZ2V0V2ViVmlldyht
X3dlYkZyYW1lLmdldCgpKSk7CiAgICAgICAgIGlmIChpbXBsZW1lbnRhdGlvbnMtPnBsdWdJbkZh
aWxlZFdpdGhFcnJvckZ1bmMpIHsKLSAgICAgICAgICAgIE5TU3RyaW5nICpwbHVnaW5OYW1lID0g
cGx1Z2luUGFja2FnZSA/IChOU1N0cmluZyAqKVtwbHVnaW5QYWNrYWdlIG5hbWVdIDogbmlsOwor
ICAgICAgICAgICAgTlNTdHJpbmcgKnBsdWdpbk5hbWUgPSBwbHVnaW5QYWNrYWdlID8gKE5TU3Ry
aW5nICopW3BsdWdpblBhY2thZ2UgcGx1Z2luSW5mb10ubmFtZSA6IG5pbDsKICAgICAgICAgICAg
IE5TRXJyb3IgKmVycm9yID0gW1tOU0Vycm9yIGFsbG9jXSBfaW5pdFdpdGhQbHVnaW5FcnJvckNv
ZGU6V2ViS2l0RXJyb3JKYXZhVW5hdmFpbGFibGUgY29udGVudFVSTDpuaWwgcGx1Z2luUGFnZVVS
TDpuaWwgcGx1Z2luTmFtZTpwbHVnaW5OYW1lIE1JTUVUeXBlOk1JTUVUeXBlXTsKICAgICAgICAg
ICAgIENhbGxSZXNvdXJjZUxvYWREZWxlZ2F0ZShpbXBsZW1lbnRhdGlvbnMtPnBsdWdJbkZhaWxl
ZFdpdGhFcnJvckZ1bmMsIFttX3dlYkZyYW1lLmdldCgpIHdlYlZpZXddLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEBzZWxlY3Rvcih3ZWJWaWV3OnBsdWdJbkZhaWxlZFdp
dGhFcnJvcjpkYXRhU291cmNlOiksIGVycm9yLCBbbV93ZWJGcmFtZS5nZXQoKSBfZGF0YVNvdXJj
ZV0pOwpJbmRleDogV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdp
ZXMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9y
bVN0cmF0ZWdpZXMubW0JKHJldmlzaW9uIDYxNTc4KQorKysgV2ViS2l0L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMubW0JKHdvcmtpbmcgY29weSkKQEAgLTY0LDE2ICs2
NCw5IEBAIHZvaWQgV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjpnZXRQbHVnaW5JbmYKIAogICAgIE5T
QXJyYXkqIHBsdWdpbnNBcnJheSA9IFtbV2ViUGx1Z2luRGF0YWJhc2Ugc2hhcmVkRGF0YWJhc2Vd
IHBsdWdpbnNdOwogICAgIGZvciAodW5zaWduZWQgaW50IGkgPSAwOyBpIDwgW3BsdWdpbnNBcnJh
eSBjb3VudF07ICsraSkgewotICAgICAgICBQbHVnaW5JbmZvIHBsdWdpbkluZm87Ci0KICAgICAg
ICAgV2ViUGx1Z2luUGFja2FnZSAqcGx1Z2luID0gW3BsdWdpbnNBcnJheSBvYmplY3RBdEluZGV4
OmldOwotICAgIAotICAgICAgICBwbHVnaW5JbmZvLm5hbWUgPSBbcGx1Z2luIG5hbWVdOwotICAg
ICAgICBwbHVnaW5JbmZvLmZpbGUgPSBbcGx1Z2luIGZpbGVuYW1lXTsKLSAgICAgICAgcGx1Z2lu
SW5mby5kZXNjID0gW3BsdWdpbiBwbHVnaW5EZXNjcmlwdGlvbl07Ci0gICAgICAgIHBsdWdpbklu
Zm8ubWltZXMgPSBbcGx1Z2luIG1pbWVUeXBlc107CiAKLSAgICAgICAgcGx1Z2lucy5hcHBlbmQo
cGx1Z2luSW5mbyk7CisgICAgICAgIHBsdWdpbnMuYXBwZW5kKFtwbHVnaW4gcGx1Z2luSW5mb10p
OwogICAgIH0KICAgICAKICAgICBFTkRfQkxPQ0tfT0JKQ19FWENFUFRJT05TOwo=
</data>
<flag name="review"
          id="46057"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>