<?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>71305</bug_id>
          
          <creation_ts>2011-11-01 11:06:48 -0700</creation_ts>
          <short_desc>De-virtualize JSObject::lookupSetter</short_desc>
          <delta_ts>2011-11-02 15:53:30 -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>JavaScriptCore</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>
          
          <blocked>70960</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Hahnenberg">mhahnenberg</reporter>
          <assigned_to name="Mark Hahnenberg">mhahnenberg</assigned_to>
          <cc>abarth</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>494034</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2011-11-01 11:06:48 -0700</bug_when>
    <thetext>We&apos;re de-virtualizing JSObject. lookupSetter is a virtual method in JSObject.  Thus, we need to de-virtualize lookupSetter.  We&apos;ll put it in the MethodTable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>494234</commentid>
    <comment_count>1</comment_count>
      <attachid>113245</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2011-11-01 15:46:58 -0700</bug_when>
    <thetext>Created attachment 113245
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>494994</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2011-11-02 15:53:30 -0700</bug_when>
    <thetext>I believe Sam took care of this one in bug 71336.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>113245</attachid>
            <date>2011-11-01 15:46:58 -0700</date>
            <delta_ts>2011-11-01 15:52:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-71305-20111101154657.patch</filename>
            <type>text/plain</type>
            <size>15443</size>
            <attacher name="Mark Hahnenberg">mhahnenberg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTg5NzUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDhm
MjAwMTExNzUzNmNmMWFiMDY0ZGU2OTYwNTQ1OWE2YmU4NGI5OTQuLmIzMDZjN2IzZDI3Y2IwMDM1
Yzg2Y2UyYTAzM2EwY2Q2ZDM2ZTk3ZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDI5IEBACisyMDExLTExLTAxICBNYXJrIEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0BhcHBs
ZS5jb20+CisKKyAgICAgICAgRGUtdmlydHVhbGl6ZSBKU09iamVjdDo6bG9va3VwU2V0dGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTMwNQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIGxvb2t1
cFNldHRlciB0byB0aGUgTWV0aG9kVGFibGUsIGNoYW5nZWQgYWxsIHRoZSB2aXJ0dWFsIAorICAg
ICAgICBpbXBsZW1lbnRhdGlvbnMgb2YgbG9va3VwU2V0dGVyIHRvIHN0YXRpYyBvbmVzLCBhbmQg
cmVwbGFjZWQgCisgICAgICAgIGFsbCBjYWxsIHNpdGVzIHdpdGggY29ycmVzcG9uZGluZyBsb29r
dXBzIGluIHRoZSBNZXRob2RUYWJsZS4KKworICAgICAgICAqIEphdmFTY3JpcHRDb3JlLmV4cDoK
KyAgICAgICAgKiBKYXZhU2NyaXB0Q29yZS52Y3Byb2ovSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlw
dENvcmUuZGVmOgorICAgICAgICAqIGRlYnVnZ2VyL0RlYnVnZ2VyQWN0aXZhdGlvbi5jcHA6Cisg
ICAgICAgIChKU0M6OkRlYnVnZ2VyQWN0aXZhdGlvbjo6bG9va3VwU2V0dGVyKToKKyAgICAgICAg
KiBkZWJ1Z2dlci9EZWJ1Z2dlckFjdGl2YXRpb24uaDoKKyAgICAgICAgKiBydW50aW1lL0NsYXNz
SW5mby5oOgorICAgICAgICAqIHJ1bnRpbWUvSlNDZWxsLmNwcDoKKyAgICAgICAgKEpTQzo6SlND
ZWxsOjpsb29rdXBTZXR0ZXIpOgorICAgICAgICAqIHJ1bnRpbWUvSlNDZWxsLmg6CisgICAgICAg
ICogcnVudGltZS9KU09iamVjdC5jcHA6CisgICAgICAgIChKU0M6OkpTT2JqZWN0Ojpsb29rdXBT
ZXR0ZXIpOgorICAgICAgICAqIHJ1bnRpbWUvSlNPYmplY3QuaDoKKyAgICAgICAgKiBydW50aW1l
L09iamVjdFByb3RvdHlwZS5jcHA6CisgICAgICAgIChKU0M6Om9iamVjdFByb3RvRnVuY0xvb2t1
cFNldHRlcik6CisKIDIwMTEtMTAtMzEgIEZpbGlwIFBpemxvICA8ZnBpemxvQGFwcGxlLmNvbT4K
IAogICAgICAgICBUaGUgR0Mgc2hvdWxkIGJlIHBhcmFsbGVsCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzM4NGVm
OGI4N2E4MzJjYmEzMDdhYzAyOGI4NzU0MzI4OWI4YWQ1Yi4uMDVlZjRjM2JlZGZjOTFlZjMwMzcx
OWQxNjhhOGExZDZkYjEzNDBmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDExLTEx
LTAxICBNYXJrIEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0BhcHBsZS5jb20+CisKKyAgICAgICAg
RGUtdmlydHVhbGl6ZSBKU09iamVjdDo6bG9va3VwU2V0dGVyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MTMwNQorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4KKworICAgICAgICBBZGRl
ZCBsb29rdXBTZXR0ZXIgdG8gdGhlIE1ldGhvZFRhYmxlLCBjaGFuZ2VkIGFsbCB0aGUgdmlydHVh
bCAKKyAgICAgICAgaW1wbGVtZW50YXRpb25zIG9mIGxvb2t1cFNldHRlciB0byBzdGF0aWMgb25l
cywgYW5kIHJlcGxhY2VkIAorICAgICAgICBhbGwgY2FsbCBzaXRlcyB3aXRoIGNvcnJlc3BvbmRp
bmcgbG9va3VwcyBpbiB0aGUgTWV0aG9kVGFibGUuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0RPTVdpbmRvd0N1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKU0RPTVdpbmRvdzo6bG9v
a3VwU2V0dGVyKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1NoZWxsLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkpTRE9NV2luZG93U2hlbGw6Omxvb2t1cFNldHRlcik6CisgICAg
ICAgICogYmluZGluZ3MvanMvSlNET01XaW5kb3dTaGVsbC5oOgorICAgICAgICAqIGJpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtOgorICAgICAgICAoR2VuZXJhdGVIZWFkZXIpOgor
CiAyMDExLTExLTAxICBNaWtlIFJlZWQgIDxyZWVkQGdvb2dsZS5jb20+CiAKICAgICAgICAgW3Nr
aWFdIGNhbGwgcmVhZFBpeGVscyBvbiBjYW52YXMgaW5zdGVhZCBvZiBkZXZpY2UgKHdpbGwgYmUg
cHJpdmF0ZSBvbiBkZXZpY2Ugc29vbikgYW5kIGNoZWNrIGZvciBlcnJvcgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmV4cCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9KYXZhU2NyaXB0Q29yZS5leHAKaW5kZXggMmI3ODkzMWY2YzNlMGZlNzNhZDRjMTEy
M2E1ZDQ2YmVlZTU0MmE5Zi4uMzgwNjAxZDMzYmExYzU2M2Q4ZDBhYzE0MTk3MDMwYjc0Nzk1NDI3
YiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmV4cAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUuZXhwCkBAIC0zMDksNyAr
MzA5LDcgQEAgX19aTjNKU0M4SlNPYmplY3QxMmRlZmluZUdldHRlckVQUzBfUE5TXzlFeGVjU3Rh
dGVFUktOU18xMElkZW50aWZpZXJFUzFfagogX19aTjNKU0M4SlNPYmplY3QxMmRlZmF1bHRWYWx1
ZUVQS1MwX1BOU185RXhlY1N0YXRlRU5TXzIyUHJlZmVycmVkUHJpbWl0aXZlVHlwZUUKIF9fWk4z
SlNDOEpTT2JqZWN0MTJkZWZpbmVTZXR0ZXJFUE5TXzlFeGVjU3RhdGVFUktOU18xMElkZW50aWZp
ZXJFUFMwX2oKIF9fWk4zSlNDOEpTT2JqZWN0MTJsb29rdXBHZXR0ZXJFUE5TXzlFeGVjU3RhdGVF
UktOU18xMElkZW50aWZpZXJFCi1fX1pOM0pTQzhKU09iamVjdDEybG9va3VwU2V0dGVyRVBOU185
RXhlY1N0YXRlRVJLTlNfMTBJZGVudGlmaWVyRQorX19aTjNKU0M4SlNPYmplY3QxMmxvb2t1cFNl
dHRlckVQUzBfUE5TXzlFeGVjU3RhdGVFUktOU18xMElkZW50aWZpZXJFCiBfX1pOM0pTQzhKU09i
amVjdDEydG9UaGlzT2JqZWN0RVBOU182SlNDZWxsRVBOU185RXhlY1N0YXRlRQogX19aTjNKU0M4
SlNPYmplY3QxM3Zpc2l0Q2hpbGRyZW5FUE5TXzZKU0NlbGxFUk5TXzExU2xvdFZpc2l0b3JFCiBf
X1pOM0pTQzhKU09iamVjdDE0ZGVsZXRlUHJvcGVydHlFUE5TXzZKU0NlbGxFUE5TXzlFeGVjU3Rh
dGVFUktOU18xMElkZW50aWZpZXJFCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
SmF2YVNjcmlwdENvcmUudmNwcm9qL0phdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmRlZiBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3Byb2ovSmF2YVNjcmlwdENv
cmUvSmF2YVNjcmlwdENvcmUuZGVmCmluZGV4IDI3MDNkODNhNDFiMThhNjFmZTdhMDY5ODMwZDBh
ZGUyMTdkYjU4ZTMuLjViZjcwYmJjODU4NmZmODU4OGI1MTYzN2I2YjY1MWM1ZDA1ZjA4ZWYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS52Y3Byb2ovSmF2
YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUuZGVmCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9KYXZhU2NyaXB0Q29yZS52Y3Byb2ovSmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUuZGVm
CkBAIC0yNDEsNyArMjQxLDcgQEAgRVhQT1JUUwogICAgID9sb2NrQXRvbWljYWxseUluaXRpYWxp
emVkU3RhdGljTXV0ZXhAV1RGQEBZQVhYWgogICAgID9sb2NrQ291bnRASlNMb2NrQEpTQ0BAU0FI
WFoKICAgICA/bG9va3VwR2V0dGVyQEpTT2JqZWN0QEpTQ0BAVUFFP0FWSlNWYWx1ZUAyQFBBVkV4
ZWNTdGF0ZUAyQEFCVklkZW50aWZpZXJAMkBAWgotICAgID9sb29rdXBTZXR0ZXJASlNPYmplY3RA
SlNDQEBVQUU/QVZKU1ZhbHVlQDJAUEFWRXhlY1N0YXRlQDJAQUJWSWRlbnRpZmllckAyQEBaCisg
ICAgP2xvb2t1cFNldHRlckBKU09iamVjdEBKU0NAQFNBP0FWSlNWYWx1ZUAyQFBBVjEyQFBBVkV4
ZWNTdGF0ZUAyQEFCVklkZW50aWZpZXJAMkBAWgogICAgID9tYXRjaEBSZWdFeHBASlNDQEBRQUVI
QUFWSlNHbG9iYWxEYXRhQDJAQUJWVVN0cmluZ0AyQEhQQVY/JFZlY3RvckBIJDBDQUBAV1RGQEBA
WgogICAgID9tYXRlcmlhbGl6ZVByb3BlcnR5TWFwQFN0cnVjdHVyZUBKU0NAQEFBRVhBQVZKU0ds
b2JhbERhdGFAMkBAWgogICAgID9tb25vdG9uaWNhbGx5SW5jcmVhc2luZ1RpbWVAV1RGQEBZQU5Y
WgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RlYnVnZ2VyL0RlYnVnZ2VyQWN0
aXZhdGlvbi5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJBY3Rp
dmF0aW9uLmNwcAppbmRleCBiYjM2N2MyZWRkOWJhOWI4YjBlM2Y3MmM5YjhmNzIzYzZiODI4YmY4
Li45NTU2MjAwMmM1YWRkYjRiYjBmNGMwMDEyNzA5MDE1OTQ3ZDJiMDllIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJBY3RpdmF0aW9uLmNwcAorKysg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdnZXJBY3RpdmF0aW9uLmNwcApA
QCAtMTA5LDkgKzEwOSwxMCBAQCBKU1ZhbHVlIERlYnVnZ2VyQWN0aXZhdGlvbjo6bG9va3VwR2V0
dGVyKEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgSWRlbnRpZmllciYgcHJvcAogICAgIHJldHVybiBt
X2FjdGl2YXRpb24tPmxvb2t1cEdldHRlcihleGVjLCBwcm9wZXJ0eU5hbWUpOwogfQogCi1KU1Zh
bHVlIERlYnVnZ2VyQWN0aXZhdGlvbjo6bG9va3VwU2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgY29u
c3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lKQorSlNWYWx1ZSBEZWJ1Z2dlckFjdGl2YXRpb246
Omxvb2t1cFNldHRlcihKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IElk
ZW50aWZpZXImIHByb3BlcnR5TmFtZSkKIHsKLSAgICByZXR1cm4gbV9hY3RpdmF0aW9uLT5sb29r
dXBTZXR0ZXIoZXhlYywgcHJvcGVydHlOYW1lKTsKKyAgICBEZWJ1Z2dlckFjdGl2YXRpb24qIHRo
aXNPYmplY3QgPSBzdGF0aWNfY2FzdDxEZWJ1Z2dlckFjdGl2YXRpb24qPihvYmplY3QpOworICAg
IHJldHVybiB0aGlzT2JqZWN0LT5tX2FjdGl2YXRpb24tPm1ldGhvZFRhYmxlKCktPmxvb2t1cFNl
dHRlcih0aGlzT2JqZWN0LT5tX2FjdGl2YXRpb24uZ2V0KCksIGV4ZWMsIHByb3BlcnR5TmFtZSk7
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2RlYnVnZ2VyL0RlYnVnZ2VyQWN0aXZhdGlvbi5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2RlYnVnZ2VyL0RlYnVnZ2VyQWN0aXZhdGlvbi5oCmluZGV4IDFmMDkwN2MwMDk0ZTM1YzBlNTdj
ZmRkNWFmODA2MjY1ZDc1YTIwZWMuLjVkNjY4YThjZTU1MTdkMWY2ODE2MWJjMzY4NGVhZDc4YmI0
YWQ4YTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZWJ1Z2dlci9EZWJ1Z2dl
ckFjdGl2YXRpb24uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGVidWdnZXIvRGVidWdn
ZXJBY3RpdmF0aW9uLmgKQEAgLTUyLDcgKzUyLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAg
IHN0YXRpYyB2b2lkIGRlZmluZUdldHRlcihKU09iamVjdCosIEV4ZWNTdGF0ZSosIGNvbnN0IElk
ZW50aWZpZXImIHByb3BlcnR5TmFtZSwgSlNPYmplY3QqIGdldHRlckZ1bmN0aW9uLCB1bnNpZ25l
ZCBhdHRyaWJ1dGVzKTsKICAgICAgICAgdmlydHVhbCB2b2lkIGRlZmluZVNldHRlcihFeGVjU3Rh
dGUqLCBjb25zdCBJZGVudGlmaWVyJiBwcm9wZXJ0eU5hbWUsIEpTT2JqZWN0KiBzZXR0ZXJGdW5j
dGlvbiwgdW5zaWduZWQgYXR0cmlidXRlcyk7CiAgICAgICAgIHZpcnR1YWwgSlNWYWx1ZSBsb29r
dXBHZXR0ZXIoRXhlY1N0YXRlKiwgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lKTsKLSAg
ICAgICAgdmlydHVhbCBKU1ZhbHVlIGxvb2t1cFNldHRlcihFeGVjU3RhdGUqLCBjb25zdCBJZGVu
dGlmaWVyJiBwcm9wZXJ0eU5hbWUpOworICAgICAgICBzdGF0aWMgSlNWYWx1ZSBsb29rdXBTZXR0
ZXIoSlNPYmplY3QqLCBFeGVjU3RhdGUqLCBjb25zdCBJZGVudGlmaWVyJiBwcm9wZXJ0eU5hbWUp
OwogCiAgICAgICAgIHN0YXRpYyBTdHJ1Y3R1cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0dsb2JhbERh
dGEmIGdsb2JhbERhdGEsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJv
dG90eXBlKSAKICAgICAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvQ2xhc3NJbmZvLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DbGFzc0lu
Zm8uaAppbmRleCBkOGU3MTcwOTAzZWNlMjdlNTI5ZjRjZjdlNTVmMTdhMDc0NTU2MTk2Li4yNGE2
YzlmNjA3ZmJhZjI3OTExMjgzNTU1MmQzMzM0MDNkZDdkZmM5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9DbGFzc0luZm8uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9DbGFzc0luZm8uaApAQCAtNjcsNiArNjcsOSBAQCBuYW1lc3BhY2UgSlND
IHsKIAogICAgICAgICB0eXBlZGVmIEpTVmFsdWUgKCpEZWZhdWx0VmFsdWVGdW5jdGlvblB0ciko
Y29uc3QgSlNPYmplY3QqLCBFeGVjU3RhdGUqLCBQcmVmZXJyZWRQcmltaXRpdmVUeXBlKTsKICAg
ICAgICAgRGVmYXVsdFZhbHVlRnVuY3Rpb25QdHIgZGVmYXVsdFZhbHVlOworCisgICAgICAgIHR5
cGVkZWYgSlNWYWx1ZSAoKkxvb2t1cFNldHRlckZ1bmN0aW9uUHRyKShKU09iamVjdCosIEV4ZWNT
dGF0ZSosIGNvbnN0IElkZW50aWZpZXImKTsKKyAgICAgICAgTG9va3VwU2V0dGVyRnVuY3Rpb25Q
dHIgbG9va3VwU2V0dGVyOwogICAgIH07CiAKICNkZWZpbmUgQ1JFQVRFX01FTUJFUl9DSEVDS0VS
KG1lbWJlcikgXApAQCAtMTAxLDYgKzEwNCw3IEBAIHN0cnVjdCBNZW1iZXJDaGVjayMjbWVtYmVy
IHsgXAogICAgICAgICAmQ2xhc3NOYW1lOjp0b1RoaXNPYmplY3QsIFwKICAgICAgICAgJkNsYXNz
TmFtZTo6ZGVmaW5lR2V0dGVyLCBcCiAgICAgICAgICZDbGFzc05hbWU6OmRlZmF1bHRWYWx1ZSwg
XAorICAgICAgICAmQ2xhc3NOYW1lOjpsb29rdXBTZXR0ZXIsIFwKICAgICB9LCBcCiAgICAgc2l6
ZW9mKENsYXNzTmFtZSkKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNDZWxsLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5jcHAK
aW5kZXggZmZlY2NmY2MzYWE4Mjc2MmIzNTM5YjM3NDg5OTQwZWY4NDk1NjY0My4uNTYzMDI2Zjc0
MmExYzFjMmI2ZGZhZThhMGExMzE4MTc2MzBmYzBkZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNDZWxsLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0NlbGwuY3BwCkBAIC0xNjksNCArMTY5LDEwIEBAIEpTVmFsdWUgSlNDZWxsOjpk
ZWZhdWx0VmFsdWUoY29uc3QgSlNPYmplY3QqLCBFeGVjU3RhdGUqLCBQcmVmZXJyZWRQcmltaXRp
dmVUeXBlCiAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CiB9CiAKK0pTVmFsdWUgSlNDZWxsOjps
b29rdXBTZXR0ZXIoSlNPYmplY3QqLCBFeGVjU3RhdGUqLCBjb25zdCBJZGVudGlmaWVyJikKK3sK
KyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKK30K
KwogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0NlbGwuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5o
CmluZGV4IGFhNzdmNzkxOTlmODQzMWI2Y2U2NWM1NDIyNTM5ZmU1YzcxNmI2MDcuLjJkYWMyNmNi
ZGQ2MWU0NTJmOTYzYTA0MmE1ODc3NmY0MTRkZTA4MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTQ2VsbC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTQ2VsbC5oCkBAIC0xMzYsNiArMTM2LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAg
ICAgIC8vIER1bW15IGltcGxlbWVudGF0aW9ucyBvZiBvdmVycmlkZS1hYmxlIHN0YXRpYyBmdW5j
dGlvbnMgZm9yIGNsYXNzZXMgdG8gcHV0IGluIHRoZWlyIE1ldGhvZFRhYmxlCiAgICAgICAgIHN0
YXRpYyBOT19SRVRVUk5fRFVFX1RPX0FTU0VSVCB2b2lkIGRlZmluZUdldHRlcihKU09iamVjdCos
IEV4ZWNTdGF0ZSosIGNvbnN0IElkZW50aWZpZXImLCBKU09iamVjdCosIHVuc2lnbmVkKTsKICAg
ICAgICAgc3RhdGljIEpTVmFsdWUgZGVmYXVsdFZhbHVlKGNvbnN0IEpTT2JqZWN0KiwgRXhlY1N0
YXRlKiwgUHJlZmVycmVkUHJpbWl0aXZlVHlwZSk7CisgICAgICAgIHN0YXRpYyBKU1ZhbHVlIGxv
b2t1cFNldHRlcihKU09iamVjdCosIEV4ZWNTdGF0ZSosIGNvbnN0IElkZW50aWZpZXImIHByb3Bl
cnR5TmFtZSk7CiAKICAgICBwcml2YXRlOgogICAgICAgICBXcml0ZUJhcnJpZXI8U3RydWN0dXJl
PiBtX3N0cnVjdHVyZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmNw
cAppbmRleCA3ZjEwOTNjNTEzNmUzODQ1NTY4ZGI0MGJlZTk3NjQ1NTlkNzk4YTA4Li4zMjk0MTM0
MDI1NWQwY2IyOGE4MzA4ODA2NjZlZmY3NWI1YWU3YmQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwCkBAIC00NTEsOSArNDUxLDggQEAgSlNWYWx1ZSBKU09i
amVjdDo6bG9va3VwR2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgSWRlbnRpZmllciYgcHJv
cGVydHlOYW1lKQogICAgIH0KIH0KIAotSlNWYWx1ZSBKU09iamVjdDo6bG9va3VwU2V0dGVyKEV4
ZWNTdGF0ZSogZXhlYywgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lKQorSlNWYWx1ZSBK
U09iamVjdDo6bG9va3VwU2V0dGVyKEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogZXhlYywg
Y29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lKQogewotICAgIEpTT2JqZWN0KiBvYmplY3Qg
PSB0aGlzOwogICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgIGlmIChKU1ZhbHVlIHZhbHVlID0g
b2JqZWN0LT5nZXREaXJlY3QoZXhlYy0+Z2xvYmFsRGF0YSgpLCBwcm9wZXJ0eU5hbWUpKSB7CiAg
ICAgICAgICAgICBpZiAoIXZhbHVlLmlzR2V0dGVyU2V0dGVyKCkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNPYmplY3QuaAppbmRleCBkNjVlNWFkMzU0OTQ0ZTNjOWFiODM2NWJlOTUw
MWY2ZGIyYzIzYmQwLi43YTBlNTRiZmJlNWZkNWQxMjVhOWZiOWY4MzA4ZmRlNzA5NGY3ZGU2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5oCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmgKQEAgLTE4OCw3ICsxODgs
NyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgc3RhdGljIHZvaWQgZGVmaW5lR2V0dGVyKEpT
T2JqZWN0KiwgRXhlY1N0YXRlKiwgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lLCBKU09i
amVjdCogZ2V0dGVyRnVuY3Rpb24sIHVuc2lnbmVkIGF0dHJpYnV0ZXMgPSAwKTsKICAgICAgICAg
dmlydHVhbCB2b2lkIGRlZmluZVNldHRlcihFeGVjU3RhdGUqLCBjb25zdCBJZGVudGlmaWVyJiBw
cm9wZXJ0eU5hbWUsIEpTT2JqZWN0KiBzZXR0ZXJGdW5jdGlvbiwgdW5zaWduZWQgYXR0cmlidXRl
cyA9IDApOwogICAgICAgICB2aXJ0dWFsIEpTVmFsdWUgbG9va3VwR2V0dGVyKEV4ZWNTdGF0ZSos
IGNvbnN0IElkZW50aWZpZXImIHByb3BlcnR5TmFtZSk7Ci0gICAgICAgIHZpcnR1YWwgSlNWYWx1
ZSBsb29rdXBTZXR0ZXIoRXhlY1N0YXRlKiwgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1l
KTsKKyAgICAgICAgc3RhdGljIEpTVmFsdWUgbG9va3VwU2V0dGVyKEpTT2JqZWN0KiwgRXhlY1N0
YXRlKiwgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lKTsKICAgICAgICAgdmlydHVhbCBi
b29sIGRlZmluZU93blByb3BlcnR5KEV4ZWNTdGF0ZSosIGNvbnN0IElkZW50aWZpZXImIHByb3Bl
cnR5TmFtZSwgUHJvcGVydHlEZXNjcmlwdG9yJiwgYm9vbCBzaG91bGRUaHJvdyk7CiAKICAgICAg
ICAgYm9vbCBpc0dsb2JhbE9iamVjdCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0UHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL09iamVjdFByb3RvdHlwZS5jcHAKaW5kZXggZDU2OTEwYmYwMGRjNmE0OGE2
MmFlMTJlY2RlZGU1N2Q1YTdmMjRkNy4uMzEzZjIwNzdlMDM4MDZmMGQ5NjkwZmE4NDI5ZTRlYjhl
OWE1MmE0NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0
UHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RQ
cm90b3R5cGUuY3BwCkBAIC0xNzksNyArMTc5LDcgQEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1Rf
Q0FMTCBvYmplY3RQcm90b0Z1bmNMb29rdXBTZXR0ZXIoRXhlY1N0YXRlKiBleGVjKQogICAgIGlm
IChleGVjLT5oYWRFeGNlcHRpb24oKSkKICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShq
c1VuZGVmaW5lZCgpKTsKIAotICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUodGhpc09iamVjdC0+
bG9va3VwU2V0dGVyKGV4ZWMsIElkZW50aWZpZXIoZXhlYywgZXhlYy0+YXJndW1lbnQoMCkudG9T
dHJpbmcoZXhlYykpKSk7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZSh0aGlzT2JqZWN0LT5t
ZXRob2RUYWJsZSgpLT5sb29rdXBTZXR0ZXIodGhpc09iamVjdCwgZXhlYywgSWRlbnRpZmllcihl
eGVjLCBleGVjLT5hcmd1bWVudCgwKS50b1N0cmluZyhleGVjKSkpKTsKIH0KIAogRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBvYmplY3RQcm90b0Z1bmNQcm9wZXJ0eUlzRW51bWVyYWJsZShF
eGVjU3RhdGUqIGV4ZWMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0RPTVdpbmRvd0N1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdp
bmRvd0N1c3RvbS5jcHAKaW5kZXggNWI5Y2Q4MDhhNWIzYjlmMGE5YjRjMTU3MjVlNGE1YjUwYjYy
NTNlMi4uMjUyNTkxNjY2ZjgyMTIzYWY1MGFhOGE2OTI2YjFjMmRkYWY2YTQ5YiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dDdXN0b20uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93Q3VzdG9tLmNwcApAQCAtNDIy
LDEyICs0MjIsMTMgQEAgSlNWYWx1ZSBKU0RPTVdpbmRvdzo6bG9va3VwR2V0dGVyKEV4ZWNTdGF0
ZSogZXhlYywgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW0KICAgICByZXR1cm4gQmFzZTo6
bG9va3VwR2V0dGVyKGV4ZWMsIHByb3BlcnR5TmFtZSk7CiB9CiAKLUpTVmFsdWUgSlNET01XaW5k
b3c6Omxvb2t1cFNldHRlcihFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IElkZW50aWZpZXImIHByb3Bl
cnR5TmFtZSkKK0pTVmFsdWUgSlNET01XaW5kb3c6Omxvb2t1cFNldHRlcihKU09iamVjdCogb2Jq
ZWN0LCBFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IElkZW50aWZpZXImIHByb3BlcnR5TmFtZSkKIHsK
KyAgICBKU0RPTVdpbmRvdyogdGhpc09iamVjdCA9IHN0YXRpY19jYXN0PEpTRE9NV2luZG93Kj4o
b2JqZWN0KTsKICAgICAvLyBPbmx5IGFsbG93IGxvb2tpbmctdXAgc2V0dGVycyBieSBmcmFtZXMg
aW4gdGhlIHNhbWUgb3JpZ2luLgotICAgIGlmICghYWxsb3dzQWNjZXNzRnJvbShleGVjKSkKKyAg
ICBpZiAoIXRoaXNPYmplY3QtPmFsbG93c0FjY2Vzc0Zyb20oZXhlYykpCiAgICAgICAgIHJldHVy
biBqc1VuZGVmaW5lZCgpOwotICAgIHJldHVybiBCYXNlOjpsb29rdXBTZXR0ZXIoZXhlYywgcHJv
cGVydHlOYW1lKTsKKyAgICByZXR1cm4gQmFzZTo6bG9va3VwU2V0dGVyKHRoaXNPYmplY3QsIGV4
ZWMsIHByb3BlcnR5TmFtZSk7CiB9CiAKIC8vIEN1c3RvbSBBdHRyaWJ1dGVzCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVdpbmRvd1NoZWxsLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwuY3BwCmluZGV4IDhmNjg3OTkz
MzIwMDZhNjcxZjRlZDZjZWI2OWE2NTdiYmU2YjhkNzMuLjU5NWQzZWM4MTRkYTA1OTc4ZTk3Mzdj
MDdlMWQ0MDgzN2Q0M2Y4M2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRE9NV2luZG93U2hlbGwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RE9NV2luZG93U2hlbGwuY3BwCkBAIC0xNDgsOSArMTQ4LDEwIEBAIEpTVmFsdWUgSlNET01XaW5k
b3dTaGVsbDo6bG9va3VwR2V0dGVyKEV4ZWNTdGF0ZSogZXhlYywgY29uc3QgSWRlbnRpZmllciYg
cHJvcGVyCiAgICAgcmV0dXJuIHdpbmRvdygpLT5sb29rdXBHZXR0ZXIoZXhlYywgcHJvcGVydHlO
YW1lKTsKIH0KIAotSlNWYWx1ZSBKU0RPTVdpbmRvd1NoZWxsOjpsb29rdXBTZXR0ZXIoRXhlY1N0
YXRlKiBleGVjLCBjb25zdCBJZGVudGlmaWVyJiBwcm9wZXJ0eU5hbWUpCitKU1ZhbHVlIEpTRE9N
V2luZG93U2hlbGw6Omxvb2t1cFNldHRlcihKU09iamVjdCogb2JqZWN0LCBFeGVjU3RhdGUqIGV4
ZWMsIGNvbnN0IElkZW50aWZpZXImIHByb3BlcnR5TmFtZSkKIHsKLSAgICByZXR1cm4gd2luZG93
KCktPmxvb2t1cFNldHRlcihleGVjLCBwcm9wZXJ0eU5hbWUpOworICAgIEpTRE9NV2luZG93U2hl
bGwqIHRoaXNPYmplY3QgPSBzdGF0aWNfY2FzdDxKU0RPTVdpbmRvd1NoZWxsKj4ob2JqZWN0KTsK
KyAgICByZXR1cm4gdGhpc09iamVjdC0+d2luZG93KCktPm1ldGhvZFRhYmxlKCktPmxvb2t1cFNl
dHRlcih0aGlzT2JqZWN0LCBleGVjLCBwcm9wZXJ0eU5hbWUpOwogfQogCiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwuaCBiL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93U2hlbGwuaAppbmRleCAxMTg1MTMyNmQxNWM1
ZjQ2N2I0M2Y3ZGYxMWMyMzdjZTg0MThlZjc2Li5mZDg4MzAxY2NiMmNiZjdiZTY1YmVlZTYzNDYx
YTdhNzc1NTFmYzQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TVdpbmRvd1NoZWxsLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5k
b3dTaGVsbC5oCkBAIC05MCw3ICs5MCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAg
dmlydHVhbCB2b2lkIGRlZmluZVNldHRlcihKU0M6OkV4ZWNTdGF0ZSosIGNvbnN0IEpTQzo6SWRl
bnRpZmllciYgcHJvcGVydHlOYW1lLCBKU0M6OkpTT2JqZWN0KiBzZXR0ZXJGdW5jdGlvbiwgdW5z
aWduZWQgYXR0cmlidXRlcyk7CiAgICAgICAgIHZpcnR1YWwgYm9vbCBkZWZpbmVPd25Qcm9wZXJ0
eShKU0M6OkV4ZWNTdGF0ZSosIGNvbnN0IEpTQzo6SWRlbnRpZmllciYgcHJvcGVydHlOYW1lLCBK
U0M6OlByb3BlcnR5RGVzY3JpcHRvciYsIGJvb2wgc2hvdWxkVGhyb3cpOwogICAgICAgICB2aXJ0
dWFsIEpTQzo6SlNWYWx1ZSBsb29rdXBHZXR0ZXIoSlNDOjpFeGVjU3RhdGUqLCBjb25zdCBKU0M6
OklkZW50aWZpZXImIHByb3BlcnR5TmFtZSk7Ci0gICAgICAgIHZpcnR1YWwgSlNDOjpKU1ZhbHVl
IGxvb2t1cFNldHRlcihKU0M6OkV4ZWNTdGF0ZSosIGNvbnN0IEpTQzo6SWRlbnRpZmllciYgcHJv
cGVydHlOYW1lKTsKKyAgICAgICAgc3RhdGljIEpTQzo6SlNWYWx1ZSBsb29rdXBTZXR0ZXIoSlND
OjpKU09iamVjdCosIEpTQzo6RXhlY1N0YXRlKiwgY29uc3QgSlNDOjpJZGVudGlmaWVyJiBwcm9w
ZXJ0eU5hbWUpOwogCiAgICAgICAgIFJlZlB0cjxET01XcmFwcGVyV29ybGQ+IG1fd29ybGQ7CiAg
ICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdl
bmVyYXRvckpTLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9ySlMucG0KaW5kZXggMjllZTU1NGIzOGQ3MzZlZTdlYzcwOTI4MWU4NTM2OTFiYTY1MjVjMy4u
NWI0YmFhNWE2NTNiYTUzYmQ3NTMyOWU3NDQyZmY5NGMyM2FmNDI0NiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KQEAgLTg1MSw3
ICs4NTEsNyBAQCBzdWIgR2VuZXJhdGVIZWFkZXIKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAi
ICAgIHZpcnR1YWwgSlNDOjpKU1ZhbHVlIGxvb2t1cEdldHRlcihKU0M6OkV4ZWNTdGF0ZSosIGNv
bnN0IEpTQzo6SWRlbnRpZmllciYgcHJvcGVydHlOYW1lKTtcbiIpIGlmICRkYXRhTm9kZS0+ZXh0
ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUxvb2t1cEdldHRlciJ9OwogCiAgICAgIyBDdXN0b20g
bG9va3VwU2V0dGVyIGZ1bmN0aW9uCi0gICAgcHVzaChAaGVhZGVyQ29udGVudCwgIiAgICB2aXJ0
dWFsIEpTQzo6SlNWYWx1ZSBsb29rdXBTZXR0ZXIoSlNDOjpFeGVjU3RhdGUqLCBjb25zdCBKU0M6
OklkZW50aWZpZXImIHByb3BlcnR5TmFtZSk7XG4iKSBpZiAkZGF0YU5vZGUtPmV4dGVuZGVkQXR0
cmlidXRlcy0+eyJDdXN0b21Mb29rdXBTZXR0ZXIifTsKKyAgICBwdXNoKEBoZWFkZXJDb250ZW50
LCAiICAgIHN0YXRpYyBKU0M6OkpTVmFsdWUgbG9va3VwU2V0dGVyKEpTQzo6SlNPYmplY3QqLCBK
U0M6OkV4ZWNTdGF0ZSosIGNvbnN0IEpTQzo6SWRlbnRpZmllciYgcHJvcGVydHlOYW1lKTtcbiIp
IGlmICRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUxvb2t1cFNldHRlciJ9
OwogCiAgICAgIyBPdmVycmlkZSB0b0Jvb2xlYW4gdG8gcmV0dXJuIGZhbHNlIGZvciBvYmplY3Rz
IHRoYXQgd2FudCB0byAnTWFzcXVlcmFkZXNBc1VuZGVmaW5lZCcuCiAgICAgaWYgKCRkYXRhTm9k
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik1hc3F1ZXJhZGVzQXNVbmRlZmluZWQifSkgewo=
</data>
<flag name="review"
          id="111533"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>