<?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>29750</bug_id>
          
          <creation_ts>2009-09-25 15:03:59 -0700</creation_ts>
          <short_desc>Inlined some object creation code, including lexicalGlobalObject access</short_desc>
          <delta_ts>2009-09-25 15:29:03 -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>PC</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="Geoffrey Garen">ggaren</reporter>
          <assigned_to name="Geoffrey Garen">ggaren</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>150170</commentid>
    <comment_count>0</comment_count>
      <attachid>40147</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2009-09-25 15:03:59 -0700</bug_when>
    <thetext>Created attachment 40147
patch

You have to specify a description for this bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>150172</commentid>
    <comment_count>1</comment_count>
      <attachid>40147</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2009-09-25 15:12:58 -0700</bug_when>
    <thetext>Comment on attachment 40147
patch

&gt;  __ZN3WTF13tryFastMallocEm
&gt; +__ZN3WTF13tryFastMallocEm

Same line twice in a row.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>150188</commentid>
    <comment_count>2</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2009-09-25 15:29:03 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/48774</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40147</attachid>
            <date>2009-09-25 15:03:59 -0700</date>
            <delta_ts>2009-09-25 15:12:57 -0700</delta_ts>
            <desc>patch</desc>
            <filename>ro.txt</filename>
            <type>text/plain</type>
            <size>23966</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDQ4NzY5KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNDIgQEAKKzIwMDktMDktMjUgIEdlb2ZmcmV5
IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBOZWVkIGEgc2hvcnQgZGVzY3JpcHRpb24gYW5kIGJ1ZyBVUkwg
KE9PUFMhKQorICAgICAgICAKKyAgICAgICAgU3VuU3BpZGVyIHNheXMgMC41JSBmYXN0ZXIuCisg
ICAgICAgIAorICAgICAgICAwLjglIHNwZWVkdXAgb24gYmVuY2gtYWxsb2Mtbm9ucmV0YWluZWQu
anMuCisgICAgICAgIDIuNSUgc3BlZWR1cCBvbiB2OC1zcGxheS5qcy4KKworICAgICAgICAqIGlu
dGVycHJldGVyL0NhY2hlZENhbGwuaDoKKyAgICAgICAgKEpTQzo6Q2FjaGVkQ2FsbDo6Q2FjaGVk
Q2FsbCk6CisgICAgICAgICogaW50ZXJwcmV0ZXIvQ2FsbEZyYW1lLmg6CisgICAgICAgIChKU0M6
OkV4ZWNTdGF0ZTo6bGV4aWNhbEdsb2JhbE9iamVjdCk6CisgICAgICAgIChKU0M6OkV4ZWNTdGF0
ZTo6Z2xvYmFsVGhpc1ZhbHVlKToKKyAgICAgICAgKiBpbnRlcnByZXRlci9JbnRlcnByZXRlci5j
cHA6CisgICAgICAgIChKU0M6OkludGVycHJldGVyOjpkdW1wUmVnaXN0ZXJzKToKKyAgICAgICAg
KEpTQzo6SW50ZXJwcmV0ZXI6OmV4ZWN1dGUpOgorICAgICAgICAoSlNDOjpJbnRlcnByZXRlcjo6
cHJpdmF0ZUV4ZWN1dGUpOgorICAgICAgICAqIGppdC9KSVRTdHVicy5jcHA6CisgICAgICAgIChK
U0M6OkRFRklORV9TVFVCX0ZVTkNUSU9OKToKKyAgICAgICAgKiBydW50aW1lL0Z1bmN0aW9uQ29u
c3RydWN0b3IuY3BwOgorICAgICAgICAoSlNDOjpjb25zdHJ1Y3RGdW5jdGlvbik6CisgICAgICAg
ICogcnVudGltZS9TY29wZUNoYWluLmNwcDoKKyAgICAgICAgKEpTQzo6U2NvcGVDaGFpbk5vZGU6
OnByaW50KToKKyAgICAgICAgKiBydW50aW1lL1Njb3BlQ2hhaW4uaDoKKyAgICAgICAgKEpTQzo6
U2NvcGVDaGFpbk5vZGU6OlNjb3BlQ2hhaW5Ob2RlKToKKyAgICAgICAgKEpTQzo6U2NvcGVDaGFp
bk5vZGU6On5TY29wZUNoYWluTm9kZSk6CisgICAgICAgIChKU0M6OlNjb3BlQ2hhaW5Ob2RlOjpw
dXNoKToKKyAgICAgICAgKEpTQzo6U2NvcGVDaGFpbjo6U2NvcGVDaGFpbik6CisgICAgICAgIChK
U0M6OlNjb3BlQ2hhaW46Omdsb2JhbE9iamVjdCk6IEFkZGVkIGEgZ2xvYmFsT2JqZWN0IGRhdGEg
bWVtYmVyIHRvIFNjb3BlQ2hhaW5Ob2RlLgorICAgICAgICBSZXBsYWNlZCBhY2Nlc3NvciBmdW5j
dGlvbiBmb3IgZ2xvYmFsT2JqZWN0KCkgd2l0aCBkYXRhIG1lbWJlci4gUmVwbGFjZWQKKyAgICAg
ICAgZ2xvYmFsVGhpc09iamVjdCgpIGFjY2Vzc29yIHdpdGggZGlyZWN0IGFjY2VzcyB0byBnbG9i
YWxUaGlzLCB0byBtYXRjaC4KKworICAgICAgICAqIHJ1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3Bw
OgorICAgICAgICAoSlNDOjpKU0dsb2JhbE9iamVjdDo6aW5pdCk6CisgICAgICAgICogcnVudGlt
ZS9KU0dsb2JhbE9iamVjdC5oOiBJbmxpbmVkIGFycmF5IGFuZCBvYmplY3QgY29uc3RydWN0aW9u
LgorCiAyMDA5LTA5LTI1ICBMYXN6bG8gR29tYm9zICA8bGFzemxvLjEuZ29tYm9zQG5va2lhLmNv
bT4KIAogICAgICAgICBSZXZpZXdlZCBieSBHYXZpbiBCYXJyYWNsb3VnaC4KSW5kZXg6IEphdmFT
Y3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmV4cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29y
ZS9KYXZhU2NyaXB0Q29yZS5leHAJKHJldmlzaW9uIDQ4NzYyKQorKysgSmF2YVNjcmlwdENvcmUv
SmF2YVNjcmlwdENvcmUuZXhwCSh3b3JraW5nIGNvcHkpCkBAIC0xMzksNyArMTM5LDYgQEAgX19a
TjNKU0MxNEpTR2xvYmFsT2JqZWN0bndFbVBOU18xMkpTR2xvYgogX19aTjNKU0MxNFNhbXBsaW5n
VGhyZWFkNHN0b3BFdgogX19aTjNKU0MxNFNhbXBsaW5nVGhyZWFkNXN0YXJ0RWoKIF9fWk4zSlND
MTRUaW1lb3V0Q2hlY2tlcjVyZXNldEV2Ci1fX1pOM0pTQzE0Y29uc3RydWN0QXJyYXlFUE5TXzlF
eGVjU3RhdGVFUktOU183QXJnTGlzdEUKIF9fWk4zSlNDMTVKU1dyYXBwZXJPYmplY3QxMm1hcmtD
aGlsZHJlbkVSTlNfOU1hcmtTdGFja0UKIF9fWk4zSlNDMTV0b0ludDMyU2xvd0Nhc2VFZFJiCiBf
X1pOM0pTQzE2SW50ZXJuYWxGdW5jdGlvbjRpbmZvRQpAQCAtMTY0LDEwICsxNjMsOCBAQCBfX1pO
M0pTQzE4UHJvcGVydHlEZXNjcmlwdG9yMTdkZWZhdWx0QXR0CiBfX1pOM0pTQzE4UHJvcGVydHlE
ZXNjcmlwdG9yMjFzZXRBY2Nlc3NvckRlc2NyaXB0b3JFTlNfN0pTVmFsdWVFUzFfagogX19aTjNK
U0MxOFByb3BlcnR5RGVzY3JpcHRvcjlzZXRHZXR0ZXJFTlNfN0pTVmFsdWVFCiBfX1pOM0pTQzE4
UHJvcGVydHlEZXNjcmlwdG9yOXNldFNldHRlckVOU183SlNWYWx1ZUUKLV9fWk4zSlNDMTljb25z
dHJ1Y3RFbXB0eUFycmF5RVBOU185RXhlY1N0YXRlRQogX19aTjNKU0MxOWluaXRpYWxpemVUaHJl
YWRpbmdFdgogX19aTjNKU0MyME1hcmtlZEFyZ3VtZW50QnVmZmVyMTBzbG93QXBwZW5kRU5TXzdK
U1ZhbHVlRQotX19aTjNKU0MyMGNvbnN0cnVjdEVtcHR5T2JqZWN0RVBOU185RXhlY1N0YXRlRQog
X19aTjNKU0MyM0Fic3RyYWN0U2FtcGxpbmdDb3VudGVyNGR1bXBFdgogX19aTjNKU0MyM29iamVj
dFByb3RvRnVuY1RvU3RyaW5nRVBOU185RXhlY1N0YXRlRVBOU184SlNPYmplY3RFTlNfN0pTVmFs
dWVFUktOU183QXJnTGlzdEUKIF9fWk4zSlNDMjNzZXRVcFN0YXRpY0Z1bmN0aW9uU2xvdEVQTlNf
OUV4ZWNTdGF0ZUVQS05TXzlIYXNoRW50cnlFUE5TXzhKU09iamVjdEVSS05TXzEwSWRlbnRpZmll
ckVSTlNfMTJQcm9wZXJ0eVNsb3RFCkBAIC0yMTMsNiArMjEwLDcgQEAgX19aTjNKU0M2UGFyc2Vy
NXBhcnNlRVBOU18xMkpTR2xvYmFsRGF0YQogX19aTjNKU0M3Q1N0cmluZ0QxRXYKIF9fWk4zSlND
N0NTdHJpbmdhU0VSS1MwXwogX19aTjNKU0M3SlNBcnJheTRpbmZvRQorX19aTjNKU0M3SlNBcnJh
eUMxRU4zV1RGMTBQYXNzUmVmUHRySU5TXzlTdHJ1Y3R1cmVFRUUKIF9fWk4zSlNDN1Byb2ZpbGUx
MHJlc3RvcmVBbGxFdgogX19aTjNKU0M3UHJvZmlsZTVmb2N1c0VQS05TXzExUHJvZmlsZU5vZGVF
CiBfX1pOM0pTQzdQcm9maWxlN2V4Y2x1ZGVFUEtOU18xMVByb2ZpbGVOb2RlRQpAQCAtMzAxLDkg
KzI5OSw5IEBAIF9fWk4zV1RGMTJkZXRhY2hUaHJlYWRFagogX19aTjNXVEYxMmlzTWFpblRocmVh
ZEV2CiBfX1pOM1dURjEycmFuZG9tTnVtYmVyRXYKIF9fWk4zV1RGMTNjdXJyZW50VGhyZWFkRXYK
LV9fWk4zV1RGMTN0cnlGYXN0TWFsbG9jRW0KIF9fWk4zV1RGMTN0cnlGYXN0Q2FsbG9jRW1tCiBf
X1pOM1dURjEzdHJ5RmFzdE1hbGxvY0VtCitfX1pOM1dURjEzdHJ5RmFzdE1hbGxvY0VtCiBfX1pO
M1dURjE1VGhyZWFkQ29uZGl0aW9uNHdhaXRFUk5TXzVNdXRleEUKIF9fWk4zV1RGMTVUaHJlYWRD
b25kaXRpb242c2lnbmFsRXYKIF9fWk4zV1RGMTVUaHJlYWRDb25kaXRpb245YnJvYWRjYXN0RXYK
QEAgLTM1NSw4ICszNTMsOCBAQCBfX1pOSzNKU0MxOFByb3BlcnR5RGVzY3JpcHRvcjEwZW51bWVy
YWJsCiBfX1pOSzNKU0MxOFByb3BlcnR5RGVzY3JpcHRvcjEyY29uZmlndXJhYmxlRXYKIF9fWk5L
M0pTQzE4UHJvcGVydHlEZXNjcmlwdG9yMTZpc0RhdGFEZXNjcmlwdG9yRXYKIF9fWk5LM0pTQzE4
UHJvcGVydHlEZXNjcmlwdG9yMjBpc0FjY2Vzc29yRGVzY3JpcHRvckV2Ci1fX1pOSzNKU0MxOFBy
b3BlcnR5RGVzY3JpcHRvcjZzZXR0ZXJFdgogX19aTkszSlNDMThQcm9wZXJ0eURlc2NyaXB0b3I2
Z2V0dGVyRXYKK19fWk5LM0pTQzE4UHJvcGVydHlEZXNjcmlwdG9yNnNldHRlckV2CiBfX1pOSzNK
U0MxOFByb3BlcnR5RGVzY3JpcHRvcjh3cml0YWJsZUV2CiBfX1pOSzNKU0M0SGVhcDEwc3RhdGlz
dGljc0V2CiBfX1pOSzNKU0M2SlNDZWxsMTF0b1ByaW1pdGl2ZUVQTlNfOUV4ZWNTdGF0ZUVOU18y
MlByZWZlcnJlZFByaW1pdGl2ZVR5cGVFCkluZGV4OiBKYXZhU2NyaXB0Q29yZS9pbnRlcnByZXRl
ci9DYWNoZWRDYWxsLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIv
Q2FjaGVkQ2FsbC5oCShyZXZpc2lvbiA0ODc2MikKKysrIEphdmFTY3JpcHRDb3JlL2ludGVycHJl
dGVyL0NhY2hlZENhbGwuaAkod29ya2luZyBjb3B5KQpAQCAtMzgsNyArMzgsNyBAQCBuYW1lc3Bh
Y2UgSlNDIHsKICAgICAgICAgICAgIDogbV92YWxpZChmYWxzZSkKICAgICAgICAgICAgICwgbV9p
bnRlcnByZXRlcihjYWxsRnJhbWUtPmludGVycHJldGVyKCkpCiAgICAgICAgICAgICAsIG1fZXhj
ZXB0aW9uKGV4Y2VwdGlvbikKLSAgICAgICAgICAgICwgbV9nbG9iYWxPYmplY3RTY29wZShjYWxs
RnJhbWUsIGNhbGxGcmFtZS0+Z2xvYmFsRGF0YSgpLmR5bmFtaWNHbG9iYWxPYmplY3QgPyBjYWxs
RnJhbWUtPmdsb2JhbERhdGEoKS5keW5hbWljR2xvYmFsT2JqZWN0IDogZnVuY3Rpb24tPnNjb3Bl
KCkubm9kZSgpLT5nbG9iYWxPYmplY3QoKSkKKyAgICAgICAgICAgICwgbV9nbG9iYWxPYmplY3RT
Y29wZShjYWxsRnJhbWUsIGNhbGxGcmFtZS0+Z2xvYmFsRGF0YSgpLmR5bmFtaWNHbG9iYWxPYmpl
Y3QgPyBjYWxsRnJhbWUtPmdsb2JhbERhdGEoKS5keW5hbWljR2xvYmFsT2JqZWN0IDogZnVuY3Rp
b24tPnNjb3BlKCkuZ2xvYmFsT2JqZWN0KCkpCiAgICAgICAgIHsKICAgICAgICAgICAgIEFTU0VS
VCghZnVuY3Rpb24tPmlzSG9zdEZ1bmN0aW9uKCkpOwogICAgICAgICAgICAgbV9jbG9zdXJlID0g
bV9pbnRlcnByZXRlci0+cHJlcGFyZUZvclJlcGVhdENhbGwoZnVuY3Rpb24tPmpzRXhlY3V0YWJs
ZSgpLCBjYWxsRnJhbWUsIGZ1bmN0aW9uLCBhcmdDb3VudCwgZnVuY3Rpb24tPnNjb3BlKCkubm9k
ZSgpLCBleGNlcHRpb24pOwpJbmRleDogSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvQ2FsbEZy
YW1lLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvQ2FsbEZyYW1l
LmgJKHJldmlzaW9uIDQ4NzYyKQorKysgSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvQ2FsbEZy
YW1lLmgJKHdvcmtpbmcgY29weSkKQEAgLTUxLDE0ICs1MSwxNCBAQCBuYW1lc3BhY2UgSlNDICB7
CiAgICAgICAgIC8vIERpZmZlcnMgZnJvbSBkeW5hbWljR2xvYmFsT2JqZWN0KCkgZHVyaW5nIGZ1
bmN0aW9uIGNhbGxzIGFjcm9zcyB3ZWIgYnJvd3NlciBmcmFtZXMuCiAgICAgICAgIEpTR2xvYmFs
T2JqZWN0KiBsZXhpY2FsR2xvYmFsT2JqZWN0KCkgY29uc3QKICAgICAgICAgewotICAgICAgICAg
ICAgcmV0dXJuIHNjb3BlQ2hhaW4oKS0+Z2xvYmFsT2JqZWN0KCk7CisgICAgICAgICAgICByZXR1
cm4gc2NvcGVDaGFpbigpLT5nbG9iYWxPYmplY3Q7CiAgICAgICAgIH0KIAogICAgICAgICAvLyBE
aWZmZXJzIGZyb20gbGV4aWNhbEdsb2JhbE9iamVjdCBiZWNhdXNlIHRoaXMgd2lsbCBoYXZlIERP
TSB3aW5kb3cgc2hlbGwgcmF0aGVyIHRoYW4KICAgICAgICAgLy8gdGhlIGFjdHVhbCBET00gd2lu
ZG93LCB3aGljaCBjYW4ndCBiZSAidGhpcyIgZm9yIHNlY3VyaXR5IHJlYXNvbnMuCiAgICAgICAg
IEpTT2JqZWN0KiBnbG9iYWxUaGlzVmFsdWUoKSBjb25zdAogICAgICAgICB7Ci0gICAgICAgICAg
ICByZXR1cm4gc2NvcGVDaGFpbigpLT5nbG9iYWxUaGlzT2JqZWN0KCk7CisgICAgICAgICAgICBy
ZXR1cm4gc2NvcGVDaGFpbigpLT5nbG9iYWxUaGlzOwogICAgICAgICB9CiAKICAgICAgICAgLy8g
RklYTUU6IEVsc2V3aGVyZSwgd2UgdXNlIEpTR2xvYmFsRGF0YSogcmF0aGVyIHRoYW4gSlNHbG9i
YWxEYXRhJi4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL2ludGVycHJldGVyL0ludGVycHJldGVyLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9pbnRlcnByZXRlci9JbnRlcnByZXRlci5j
cHAJKHJldmlzaW9uIDQ4NzYyKQorKysgSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvSW50ZXJw
cmV0ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zODUsNyArMzg1LDcgQEAgdm9pZCBJbnRlcnBy
ZXRlcjo6ZHVtcFJlZ2lzdGVycyhDYWxsRnJhbQogICAgIHByaW50ZigiLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS1cbiIpOwogCiAgICAgQ29kZUJsb2NrKiBjb2RlQmxvY2sgPSBjYWxsRnJhbWUtPmNvZGVC
bG9jaygpOwotICAgIFJlZ2lzdGVyRmlsZSogcmVnaXN0ZXJGaWxlID0gJmNhbGxGcmFtZS0+c2Nv
cGVDaGFpbigpLT5nbG9iYWxPYmplY3QoKS0+Z2xvYmFsRGF0YSgpLT5pbnRlcnByZXRlci0+cmVn
aXN0ZXJGaWxlKCk7CisgICAgUmVnaXN0ZXJGaWxlKiByZWdpc3RlckZpbGUgPSAmY2FsbEZyYW1l
LT5zY29wZUNoYWluKCktPmdsb2JhbE9iamVjdC0+Z2xvYmFsRGF0YSgpLT5pbnRlcnByZXRlci0+
cmVnaXN0ZXJGaWxlKCk7CiAgICAgY29uc3QgUmVnaXN0ZXIqIGl0OwogICAgIGNvbnN0IFJlZ2lz
dGVyKiBlbmQ7CiAgICAgSlNWYWx1ZSB2OwpAQCAtNjI5LDcgKzYyOSw3IEBAIEpTVmFsdWUgSW50
ZXJwcmV0ZXI6OmV4ZWN1dGUoUHJvZ3JhbUV4ZWMKICAgICAgICAgcmV0dXJuIGpzTnVsbCgpOwog
ICAgIH0KIAotICAgIER5bmFtaWNHbG9iYWxPYmplY3RTY29wZSBnbG9iYWxPYmplY3RTY29wZShj
YWxsRnJhbWUsIHNjb3BlQ2hhaW4tPmdsb2JhbE9iamVjdCgpKTsKKyAgICBEeW5hbWljR2xvYmFs
T2JqZWN0U2NvcGUgZ2xvYmFsT2JqZWN0U2NvcGUoY2FsbEZyYW1lLCBzY29wZUNoYWluLT5nbG9i
YWxPYmplY3QpOwogCiAgICAgSlNHbG9iYWxPYmplY3QqIGxhc3RHbG9iYWxPYmplY3QgPSBtX3Jl
Z2lzdGVyRmlsZS5nbG9iYWxPYmplY3QoKTsKICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0ID0gY2FsbEZyYW1lLT5keW5hbWljR2xvYmFsT2JqZWN0KCk7CkBAIC02ODksNyArNjg5LDcg
QEAgSlNWYWx1ZSBJbnRlcnByZXRlcjo6ZXhlY3V0ZShGdW5jdGlvbkV4ZQogICAgICAgICByZXR1
cm4ganNOdWxsKCk7CiAgICAgfQogCi0gICAgRHluYW1pY0dsb2JhbE9iamVjdFNjb3BlIGdsb2Jh
bE9iamVjdFNjb3BlKGNhbGxGcmFtZSwgY2FsbEZyYW1lLT5nbG9iYWxEYXRhKCkuZHluYW1pY0ds
b2JhbE9iamVjdCA/IGNhbGxGcmFtZS0+Z2xvYmFsRGF0YSgpLmR5bmFtaWNHbG9iYWxPYmplY3Qg
OiBzY29wZUNoYWluLT5nbG9iYWxPYmplY3QoKSk7CisgICAgRHluYW1pY0dsb2JhbE9iamVjdFNj
b3BlIGdsb2JhbE9iamVjdFNjb3BlKGNhbGxGcmFtZSwgY2FsbEZyYW1lLT5nbG9iYWxEYXRhKCku
ZHluYW1pY0dsb2JhbE9iamVjdCA/IGNhbGxGcmFtZS0+Z2xvYmFsRGF0YSgpLmR5bmFtaWNHbG9i
YWxPYmplY3QgOiBzY29wZUNoYWluLT5nbG9iYWxPYmplY3QpOwogCiAgICAgQ2FsbEZyYW1lKiBu
ZXdDYWxsRnJhbWUgPSBDYWxsRnJhbWU6OmNyZWF0ZShvbGRFbmQpOwogICAgIHNpemVfdCBkc3Qg
PSAwOwpAQCAtODE5LDcgKzgxOSw3IEBAIEpTVmFsdWUgSW50ZXJwcmV0ZXI6OmV4ZWN1dGUoRXZh
bEV4ZWN1dGEKICAgICAgICAgfQogICAgIH0KIAotICAgIER5bmFtaWNHbG9iYWxPYmplY3RTY29w
ZSBnbG9iYWxPYmplY3RTY29wZShjYWxsRnJhbWUsIGNhbGxGcmFtZS0+Z2xvYmFsRGF0YSgpLmR5
bmFtaWNHbG9iYWxPYmplY3QgPyBjYWxsRnJhbWUtPmdsb2JhbERhdGEoKS5keW5hbWljR2xvYmFs
T2JqZWN0IDogc2NvcGVDaGFpbi0+Z2xvYmFsT2JqZWN0KCkpOworICAgIER5bmFtaWNHbG9iYWxP
YmplY3RTY29wZSBnbG9iYWxPYmplY3RTY29wZShjYWxsRnJhbWUsIGNhbGxGcmFtZS0+Z2xvYmFs
RGF0YSgpLmR5bmFtaWNHbG9iYWxPYmplY3QgPyBjYWxsRnJhbWUtPmdsb2JhbERhdGEoKS5keW5h
bWljR2xvYmFsT2JqZWN0IDogc2NvcGVDaGFpbi0+Z2xvYmFsT2JqZWN0KTsKIAogICAgIEV2YWxD
b2RlQmxvY2sqIGNvZGVCbG9jayA9ICZldmFsLT5ieXRlY29kZShjYWxsRnJhbWUsIHNjb3BlQ2hh
aW4pOwogCkBAIC0xMjQyLDcgKzEyNDIsNyBAQCBKU1ZhbHVlIEludGVycHJldGVyOjpwcml2YXRl
RXhlY3V0ZShFeGVjCiAgICAgICAgICovCiAgICAgICAgIGludCBkc3QgPSAoKyt2UEMpLT51Lm9w
ZXJhbmQ7CiAgICAgICAgIGludCByZWdFeHAgPSAoKyt2UEMpLT51Lm9wZXJhbmQ7Ci0gICAgICAg
IGNhbGxGcmFtZS0+cihkc3QpID0gSlNWYWx1ZShuZXcgKGdsb2JhbERhdGEpIFJlZ0V4cE9iamVj
dChjYWxsRnJhbWUtPnNjb3BlQ2hhaW4oKS0+Z2xvYmFsT2JqZWN0KCktPnJlZ0V4cFN0cnVjdHVy
ZSgpLCBjYWxsRnJhbWUtPmNvZGVCbG9jaygpLT5yZWdleHAocmVnRXhwKSkpOworICAgICAgICBj
YWxsRnJhbWUtPnIoZHN0KSA9IEpTVmFsdWUobmV3IChnbG9iYWxEYXRhKSBSZWdFeHBPYmplY3Qo
Y2FsbEZyYW1lLT5zY29wZUNoYWluKCktPmdsb2JhbE9iamVjdC0+cmVnRXhwU3RydWN0dXJlKCks
IGNhbGxGcmFtZS0+Y29kZUJsb2NrKCktPnJlZ2V4cChyZWdFeHApKSk7CiAKICAgICAgICAgKyt2
UEM7CiAgICAgICAgIE5FWFRfSU5TVFJVQ1RJT04oKTsKQEAgLTI5ODEsNyArMjk4MSw3IEBAIEpT
VmFsdWUgSW50ZXJwcmV0ZXI6OnByaXZhdGVFeGVjdXRlKEV4ZWMKICAgICAgICAgUmVnaXN0ZXIq
IG5ld0NhbGxGcmFtZSA9IGNhbGxGcmFtZS0+cmVnaXN0ZXJzKCkgKyByZWdpc3Rlck9mZnNldDsK
ICAgICAgICAgUmVnaXN0ZXIqIGFyZ3YgPSBuZXdDYWxsRnJhbWUgLSBSZWdpc3RlckZpbGU6OkNh
bGxGcmFtZUhlYWRlclNpemUgLSBhcmdDb3VudDsKICAgICAgICAgSlNWYWx1ZSB0aGlzVmFsdWUg
PSBhcmd2WzBdLmpzVmFsdWUoKTsKLSAgICAgICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVj
dCA9IGNhbGxGcmFtZS0+c2NvcGVDaGFpbigpLT5nbG9iYWxPYmplY3QoKTsKKyAgICAgICAgSlNH
bG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGNhbGxGcmFtZS0+c2NvcGVDaGFpbigpLT5nbG9i
YWxPYmplY3Q7CiAKICAgICAgICAgaWYgKHRoaXNWYWx1ZSA9PSBnbG9iYWxPYmplY3QgJiYgZnVu
Y1ZhbCA9PSBnbG9iYWxPYmplY3QtPmV2YWxGdW5jdGlvbigpKSB7CiAgICAgICAgICAgICBKU1Zh
bHVlIHJlc3VsdCA9IGNhbGxFdmFsKGNhbGxGcmFtZSwgcmVnaXN0ZXJGaWxlLCBhcmd2LCBhcmdD
b3VudCwgcmVnaXN0ZXJPZmZzZXQsIGV4Y2VwdGlvblZhbHVlKTsKQEAgLTM0MjksNyArMzQyOSw3
IEBAIEpTVmFsdWUgSW50ZXJwcmV0ZXI6OnByaXZhdGVFeGVjdXRlKEV4ZWMKICAgICAgICAgICAg
IGlmIChwcm90b3R5cGUuaXNPYmplY3QoKSkKICAgICAgICAgICAgICAgICBzdHJ1Y3R1cmUgPSBh
c09iamVjdChwcm90b3R5cGUpLT5pbmhlcml0b3JJRCgpOwogICAgICAgICAgICAgZWxzZQotICAg
ICAgICAgICAgICAgIHN0cnVjdHVyZSA9IGNhbGxEYXRhU2NvcGVDaGFpbi0+Z2xvYmFsT2JqZWN0
KCktPmVtcHR5T2JqZWN0U3RydWN0dXJlKCk7CisgICAgICAgICAgICAgICAgc3RydWN0dXJlID0g
Y2FsbERhdGFTY29wZUNoYWluLT5nbG9iYWxPYmplY3QtPmVtcHR5T2JqZWN0U3RydWN0dXJlKCk7
CiAgICAgICAgICAgICBKU09iamVjdCogbmV3T2JqZWN0ID0gbmV3IChnbG9iYWxEYXRhKSBKU09i
amVjdChzdHJ1Y3R1cmUpOwogCiAgICAgICAgICAgICBjYWxsRnJhbWUtPnIodGhpc1JlZ2lzdGVy
KSA9IEpTVmFsdWUobmV3T2JqZWN0KTsgLy8gInRoaXMiIHZhbHVlCkluZGV4OiBKYXZhU2NyaXB0
Q29yZS9qaXQvSklUU3R1YnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL2ppdC9K
SVRTdHVicy5jcHAJKHJldmlzaW9uIDQ4NzYyKQorKysgSmF2YVNjcmlwdENvcmUvaml0L0pJVFN0
dWJzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTE4Miw3ICsxMTgyLDcgQEAgREVGSU5FX1NUVUJf
RlVOQ1RJT04oRW5jb2RlZEpTVmFsdWUsIG9wXwogICAgICAgICAvLyBmb3Igbm93LiAgRm9yIG5v
dyBpdCBwZXJmb3JtcyBhIGNoZWNrIG9uIGEgc3BlY2lhbCBvYmplY3Qgb24gdGhlIGdsb2JhbCBv
YmplY3Qgb25seSB1c2VkIGZvciB0aGlzCiAgICAgICAgIC8vIHB1cnBvc2UuICBUaGUgb2JqZWN0
IGlzIGluIG5vIHdheSBleHBvc2VkLCBhbmQgYXMgc3VjaCB0aGUgY2hlY2sgd2lsbCBhbHdheXMg
cGFzcy4KICAgICAgICAgaWYgKHNsb3Quc2xvdEJhc2UoKSA9PSBiYXNlVmFsdWUpIHsKLSAgICAg
ICAgICAgIEpJVDo6cGF0Y2hNZXRob2RDYWxsUHJvdG8oY29kZUJsb2NrLCBtZXRob2RDYWxsTGlu
a0luZm8sIGNhbGxlZSwgc3RydWN0dXJlLCBjYWxsRnJhbWUtPnNjb3BlQ2hhaW4oKS0+Z2xvYmFs
T2JqZWN0KCktPm1ldGhvZENhbGxEdW1teSgpLCBTVFVCX1JFVFVSTl9BRERSRVNTKTsKKyAgICAg
ICAgICAgIEpJVDo6cGF0Y2hNZXRob2RDYWxsUHJvdG8oY29kZUJsb2NrLCBtZXRob2RDYWxsTGlu
a0luZm8sIGNhbGxlZSwgc3RydWN0dXJlLCBjYWxsRnJhbWUtPnNjb3BlQ2hhaW4oKS0+Z2xvYmFs
T2JqZWN0LT5tZXRob2RDYWxsRHVtbXkoKSwgU1RVQl9SRVRVUk5fQUREUkVTUyk7CiAgICAgICAg
ICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHJlc3VsdCk7CiAgICAgICAgIH0KICAgICB9CkBA
IC0xNzM4LDcgKzE3MzgsNyBAQCBERUZJTkVfU1RVQl9GVU5DVElPTihKU09iamVjdCosIG9wX2Nv
bnN0CiAgICAgaWYgKHN0YWNrRnJhbWUuYXJnc1szXS5qc1ZhbHVlKCkuaXNPYmplY3QoKSkKICAg
ICAgICAgc3RydWN0dXJlID0gYXNPYmplY3Qoc3RhY2tGcmFtZS5hcmdzWzNdLmpzVmFsdWUoKSkt
PmluaGVyaXRvcklEKCk7CiAgICAgZWxzZQotICAgICAgICBzdHJ1Y3R1cmUgPSBjb25zdHJ1Y3Rv
ci0+c2NvcGUoKS5ub2RlKCktPmdsb2JhbE9iamVjdCgpLT5lbXB0eU9iamVjdFN0cnVjdHVyZSgp
OworICAgICAgICBzdHJ1Y3R1cmUgPSBjb25zdHJ1Y3Rvci0+c2NvcGUoKS5ub2RlKCktPmdsb2Jh
bE9iamVjdC0+ZW1wdHlPYmplY3RTdHJ1Y3R1cmUoKTsKICAgICByZXR1cm4gbmV3IChzdGFja0Zy
YW1lLmdsb2JhbERhdGEpIEpTT2JqZWN0KHN0cnVjdHVyZSk7CiB9CiAKQEAgLTI2NDEsNyArMjY0
MSw3IEBAIERFRklORV9TVFVCX0ZVTkNUSU9OKEVuY29kZWRKU1ZhbHVlLCBvcF8KICAgICBSZWdp
c3RlciogbmV3Q2FsbEZyYW1lID0gY2FsbEZyYW1lLT5yZWdpc3RlcnMoKSArIHJlZ2lzdGVyT2Zm
c2V0OwogICAgIFJlZ2lzdGVyKiBhcmd2ID0gbmV3Q2FsbEZyYW1lIC0gUmVnaXN0ZXJGaWxlOjpD
YWxsRnJhbWVIZWFkZXJTaXplIC0gYXJnQ291bnQ7CiAgICAgSlNWYWx1ZSB0aGlzVmFsdWUgPSBh
cmd2WzBdLmpzVmFsdWUoKTsKLSAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gY2Fs
bEZyYW1lLT5zY29wZUNoYWluKCktPmdsb2JhbE9iamVjdCgpOworICAgIEpTR2xvYmFsT2JqZWN0
KiBnbG9iYWxPYmplY3QgPSBjYWxsRnJhbWUtPnNjb3BlQ2hhaW4oKS0+Z2xvYmFsT2JqZWN0Owog
CiAgICAgaWYgKHRoaXNWYWx1ZSA9PSBnbG9iYWxPYmplY3QgJiYgZnVuY1ZhbCA9PSBnbG9iYWxP
YmplY3QtPmV2YWxGdW5jdGlvbigpKSB7CiAgICAgICAgIEpTVmFsdWUgZXhjZXB0aW9uVmFsdWU7
CkluZGV4OiBKYXZhU2NyaXB0Q29yZS9ydW50aW1lL0Z1bmN0aW9uQ29uc3RydWN0b3IuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL3J1bnRpbWUvRnVuY3Rpb25Db25zdHJ1Y3Rvci5j
cHAJKHJldmlzaW9uIDQ4NzYyKQorKysgSmF2YVNjcmlwdENvcmUvcnVudGltZS9GdW5jdGlvbkNv
bnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTIsNyArOTIsNyBAQCBKU09iamVjdCog
Y29uc3RydWN0RnVuY3Rpb24oRXhlY1N0YXRlKiBlCiAgICAgICAgIHJldHVybiB0aHJvd0Vycm9y
KGV4ZWMsIFN5bnRheEVycm9yLCBlcnJNc2csIGVyckxpbmUsIHNvdXJjZS5wcm92aWRlcigpLT5h
c0lEKCksIHNvdXJjZS5wcm92aWRlcigpLT51cmwoKSk7CiAKICAgICBKU0dsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0ID0gZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpOwotICAgIFNjb3BlQ2hh
aW4gc2NvcGVDaGFpbihnbG9iYWxPYmplY3QsIGdsb2JhbE9iamVjdC0+Z2xvYmFsRGF0YSgpLCBl
eGVjLT5nbG9iYWxUaGlzVmFsdWUoKSk7CisgICAgU2NvcGVDaGFpbiBzY29wZUNoYWluKGdsb2Jh
bE9iamVjdCwgZ2xvYmFsT2JqZWN0LT5nbG9iYWxEYXRhKCksIGdsb2JhbE9iamVjdCwgZXhlYy0+
Z2xvYmFsVGhpc1ZhbHVlKCkpOwogICAgIHJldHVybiBuZXcgKGV4ZWMpIEpTRnVuY3Rpb24oZXhl
YywgZnVuY3Rpb24sIHNjb3BlQ2hhaW4ubm9kZSgpKTsKIH0KIApJbmRleDogSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0FycmF5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0pTQXJyYXkuY3BwCShyZXZpc2lvbiA0ODc2MikKKysrIEphdmFTY3JpcHRDb3JlL3J1bnRp
bWUvSlNBcnJheS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEwNjYsMjYgKzEwNjYsNCBAQCB2b2lk
IEpTQXJyYXk6OmNoZWNrQ29uc2lzdGVuY3koQ29uc2lzdGVuCiAKICNlbmRpZgogCi1KU0FycmF5
KiBjb25zdHJ1Y3RFbXB0eUFycmF5KEV4ZWNTdGF0ZSogZXhlYykKLXsKLSAgICByZXR1cm4gbmV3
IChleGVjKSBKU0FycmF5KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKS0+YXJyYXlTdHJ1Y3R1
cmUoKSk7Ci19Ci0KLUpTQXJyYXkqIGNvbnN0cnVjdEVtcHR5QXJyYXkoRXhlY1N0YXRlKiBleGVj
LCB1bnNpZ25lZCBpbml0aWFsTGVuZ3RoKQotewotICAgIHJldHVybiBuZXcgKGV4ZWMpIEpTQXJy
YXkoZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpLT5hcnJheVN0cnVjdHVyZSgpLCBpbml0aWFs
TGVuZ3RoKTsKLX0KLQotSlNBcnJheSogY29uc3RydWN0QXJyYXkoRXhlY1N0YXRlKiBleGVjLCBK
U1ZhbHVlIHNpbmdsZUl0ZW1WYWx1ZSkKLXsKLSAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciB2YWx1
ZXM7Ci0gICAgdmFsdWVzLmFwcGVuZChzaW5nbGVJdGVtVmFsdWUpOwotICAgIHJldHVybiBuZXcg
KGV4ZWMpIEpTQXJyYXkoZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpLT5hcnJheVN0cnVjdHVy
ZSgpLCB2YWx1ZXMpOwotfQotCi1KU0FycmF5KiBjb25zdHJ1Y3RBcnJheShFeGVjU3RhdGUqIGV4
ZWMsIGNvbnN0IEFyZ0xpc3QmIHZhbHVlcykKLXsKLSAgICByZXR1cm4gbmV3IChleGVjKSBKU0Fy
cmF5KGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKS0+YXJyYXlTdHJ1Y3R1cmUoKSwgdmFsdWVz
KTsKLX0KLQogfSAvLyBuYW1lc3BhY2UgSlNDCkluZGV4OiBKYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTQXJyYXkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXku
aAkocmV2aXNpb24gNDg3NjIpCisrKyBKYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXkuaAko
d29ya2luZyBjb3B5KQpAQCAtMTE2LDExICsxMTYsNiBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAg
IEpTQXJyYXkqIGFzQXJyYXkoSlNWYWx1ZSk7CiAKLSAgICBKU0FycmF5KiBjb25zdHJ1Y3RFbXB0
eUFycmF5KEV4ZWNTdGF0ZSopOwotICAgIEpTQXJyYXkqIGNvbnN0cnVjdEVtcHR5QXJyYXkoRXhl
Y1N0YXRlKiwgdW5zaWduZWQgaW5pdGlhbExlbmd0aCk7Ci0gICAgSlNBcnJheSogY29uc3RydWN0
QXJyYXkoRXhlY1N0YXRlKiwgSlNWYWx1ZSBzaW5nbGVJdGVtVmFsdWUpOwotICAgIEpTQXJyYXkq
IGNvbnN0cnVjdEFycmF5KEV4ZWNTdGF0ZSosIGNvbnN0IEFyZ0xpc3QmIHZhbHVlcyk7Ci0KICAg
ICBpbmxpbmUgSlNBcnJheSogYXNBcnJheShKU0NlbGwqIGNlbGwpCiAgICAgewogICAgICAgICBB
U1NFUlQoY2VsbC0+aW5oZXJpdHMoJkpTQXJyYXk6OmluZm8pKTsKSW5kZXg6IEphdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCShyZXZpc2lvbiA0ODc2MikKKysrIEphdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0x
MjksNyArMTI5LDcgQEAgdm9pZCBKU0dsb2JhbE9iamVjdDo6aW5pdChKU09iamVjdCogdGhpcwog
ICAgIEFTU0VSVChKU0xvY2s6OmN1cnJlbnRUaHJlYWRJc0hvbGRpbmdMb2NrKCkpOwogCiAgICAg
ZCgpLT5nbG9iYWxEYXRhID0gSGVhcDo6aGVhcCh0aGlzKS0+Z2xvYmFsRGF0YSgpOwotICAgIGQo
KS0+Z2xvYmFsU2NvcGVDaGFpbiA9IFNjb3BlQ2hhaW4odGhpcywgZCgpLT5nbG9iYWxEYXRhLmdl
dCgpLCB0aGlzVmFsdWUpOworICAgIGQoKS0+Z2xvYmFsU2NvcGVDaGFpbiA9IFNjb3BlQ2hhaW4o
dGhpcywgZCgpLT5nbG9iYWxEYXRhLmdldCgpLCB0aGlzLCB0aGlzVmFsdWUpOwogCiAgICAgSlNH
bG9iYWxPYmplY3Q6Omdsb2JhbEV4ZWMoKS0+aW5pdCgwLCAwLCBkKCktPmdsb2JhbFNjb3BlQ2hh
aW4ubm9kZSgpLCBDYWxsRnJhbWU6Om5vQ2FsbGVyKCksIDAsIDAsIDApOwogCkluZGV4OiBKYXZh
U2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5oCShyZXZpc2lvbiA0ODc2MikKKysrIEph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuaAkod29ya2luZyBjb3B5KQpAQCAt
MjIsNiArMjIsNyBAQAogI2lmbmRlZiBKU0dsb2JhbE9iamVjdF9oCiAjZGVmaW5lIEpTR2xvYmFs
T2JqZWN0X2gKIAorI2luY2x1ZGUgIkpTQXJyYXkuaCIKICNpbmNsdWRlICJKU0dsb2JhbERhdGEu
aCIKICNpbmNsdWRlICJKU1ZhcmlhYmxlT2JqZWN0LmgiCiAjaW5jbHVkZSAiTmF0aXZlRnVuY3Rp
b25XcmFwcGVyLmgiCkBAIC0zNDMsMTQgKzM0NCw2IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAg
ICByZXR1cm4gc3ltYm9sVGFibGVHZXQocHJvcGVydHlOYW1lLCBzbG90LCBzbG90SXNXcml0ZWFi
bGUpOwogICAgIH0KIAotICAgIGlubGluZSBKU0dsb2JhbE9iamVjdCogU2NvcGVDaGFpbk5vZGU6
Omdsb2JhbE9iamVjdCgpIGNvbnN0Ci0gICAgewotICAgICAgICBjb25zdCBTY29wZUNoYWluTm9k
ZSogbiA9IHRoaXM7Ci0gICAgICAgIHdoaWxlIChuLT5uZXh0KQotICAgICAgICAgICAgbiA9IG4t
Pm5leHQ7Ci0gICAgICAgIHJldHVybiBhc0dsb2JhbE9iamVjdChuLT5vYmplY3QpOwotICAgIH0K
LQogICAgIGlubGluZSBKU1ZhbHVlIFN0cnVjdHVyZTo6cHJvdG90eXBlRm9yTG9va3VwKEV4ZWNT
dGF0ZSogZXhlYykgY29uc3QKICAgICB7CiAgICAgICAgIGlmICh0eXBlSW5mbygpLnR5cGUoKSA9
PSBPYmplY3RUeXBlKQpAQCAtNDA1LDYgKzM5OCwzMyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAg
ICAgcmV0dXJuIGdsb2JhbERhdGEoKS5keW5hbWljR2xvYmFsT2JqZWN0OwogICAgIH0KIAorICAg
IGlubGluZSBKU09iamVjdCogY29uc3RydWN0RW1wdHlPYmplY3QoRXhlY1N0YXRlKiBleGVjKQor
ICAgIHsKKyAgICAgICAgcmV0dXJuIG5ldyAoZXhlYykgSlNPYmplY3QoZXhlYy0+bGV4aWNhbEds
b2JhbE9iamVjdCgpLT5lbXB0eU9iamVjdFN0cnVjdHVyZSgpKTsKKyAgICB9CisKKyAgICBpbmxp
bmUgSlNBcnJheSogY29uc3RydWN0RW1wdHlBcnJheShFeGVjU3RhdGUqIGV4ZWMpCisgICAgewor
ICAgICAgICByZXR1cm4gbmV3IChleGVjKSBKU0FycmF5KGV4ZWMtPmxleGljYWxHbG9iYWxPYmpl
Y3QoKS0+YXJyYXlTdHJ1Y3R1cmUoKSk7CisgICAgfQorCisgICAgaW5saW5lIEpTQXJyYXkqIGNv
bnN0cnVjdEVtcHR5QXJyYXkoRXhlY1N0YXRlKiBleGVjLCB1bnNpZ25lZCBpbml0aWFsTGVuZ3Ro
KQorICAgIHsKKyAgICAgICAgcmV0dXJuIG5ldyAoZXhlYykgSlNBcnJheShleGVjLT5sZXhpY2Fs
R2xvYmFsT2JqZWN0KCktPmFycmF5U3RydWN0dXJlKCksIGluaXRpYWxMZW5ndGgpOworICAgIH0K
KworICAgIGlubGluZSBKU0FycmF5KiBjb25zdHJ1Y3RBcnJheShFeGVjU3RhdGUqIGV4ZWMsIEpT
VmFsdWUgc2luZ2xlSXRlbVZhbHVlKQorICAgIHsKKyAgICAgICAgTWFya2VkQXJndW1lbnRCdWZm
ZXIgdmFsdWVzOworICAgICAgICB2YWx1ZXMuYXBwZW5kKHNpbmdsZUl0ZW1WYWx1ZSk7CisgICAg
ICAgIHJldHVybiBuZXcgKGV4ZWMpIEpTQXJyYXkoZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgp
LT5hcnJheVN0cnVjdHVyZSgpLCB2YWx1ZXMpOworICAgIH0KKworICAgIGlubGluZSBKU0FycmF5
KiBjb25zdHJ1Y3RBcnJheShFeGVjU3RhdGUqIGV4ZWMsIGNvbnN0IEFyZ0xpc3QmIHZhbHVlcykK
KyAgICB7CisgICAgICAgIHJldHVybiBuZXcgKGV4ZWMpIEpTQXJyYXkoZXhlYy0+bGV4aWNhbEds
b2JhbE9iamVjdCgpLT5hcnJheVN0cnVjdHVyZSgpLCB2YWx1ZXMpOworICAgIH0KKwogICAgIGNs
YXNzIER5bmFtaWNHbG9iYWxPYmplY3RTY29wZSA6IHB1YmxpYyBOb25jb3B5YWJsZSB7CiAgICAg
cHVibGljOgogICAgICAgICBEeW5hbWljR2xvYmFsT2JqZWN0U2NvcGUoQ2FsbEZyYW1lKiBjYWxs
RnJhbWUsIEpTR2xvYmFsT2JqZWN0KiBkeW5hbWljR2xvYmFsT2JqZWN0KSAKSW5kZXg6IEphdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwCShyZXZpc2lvbiA0ODc2MikKKysrIEphdmFTY3JpcHRD
b3JlL3J1bnRpbWUvSlNPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01MTMsMTEgKzUxMyw2
IEBAIHZvaWQgSlNPYmplY3Q6OmFsbG9jYXRlUHJvcGVydHlTdG9yYWdlKHMKICAgICBhbGxvY2F0
ZVByb3BlcnR5U3RvcmFnZUlubGluZShvbGRTaXplLCBuZXdTaXplKTsKIH0KIAotSlNPYmplY3Qq
IGNvbnN0cnVjdEVtcHR5T2JqZWN0KEV4ZWNTdGF0ZSogZXhlYykKLXsKLSAgICByZXR1cm4gbmV3
IChleGVjKSBKU09iamVjdChleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCktPmVtcHR5T2JqZWN0
U3RydWN0dXJlKCkpOwotfQotCiBib29sIEpTT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3IoRXhlY1N0YXRlKiwgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lLCBQcm9wZXJ0eURl
c2NyaXB0b3ImIGRlc2NyaXB0b3IpCiB7CiAgICAgdW5zaWduZWQgYXR0cmlidXRlcyA9IDA7Cklu
ZGV4OiBKYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSmF2
YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5oCShyZXZpc2lvbiA0ODc2MikKKysrIEphdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNPYmplY3QuaAkod29ya2luZyBjb3B5KQpAQCAtMjY0LDggKzI2
NCw2IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICBSZWZQdHI8U3RydWN0dXJlPiBtX2luaGVy
aXRvcklEOwogICAgIH07CiAgICAgCi1KU09iamVjdCogY29uc3RydWN0RW1wdHlPYmplY3QoRXhl
Y1N0YXRlKik7Ci0KIGlubGluZSBKU09iamVjdCogYXNPYmplY3QoSlNDZWxsKiBjZWxsKQogewog
ICAgIEFTU0VSVChjZWxsLT5pc09iamVjdCgpKTsKSW5kZXg6IEphdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU2NvcGVDaGFpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSmF2YVNjcmlwdENvcmUvcnVudGltZS9T
Y29wZUNoYWluLmNwcAkocmV2aXNpb24gNDg3NjIpCisrKyBKYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1Njb3BlQ2hhaW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNiw4ICszNiw4IEBAIHZvaWQgU2Nv
cGVDaGFpbk5vZGU6OnByaW50KCkgY29uc3QKICAgICBTY29wZUNoYWluSXRlcmF0b3Igc2NvcGVF
bmQgPSBlbmQoKTsKICAgICBmb3IgKFNjb3BlQ2hhaW5JdGVyYXRvciBzY29wZUl0ZXIgPSBiZWdp
bigpOyBzY29wZUl0ZXIgIT0gc2NvcGVFbmQ7ICsrc2NvcGVJdGVyKSB7CiAgICAgICAgIEpTT2Jq
ZWN0KiBvID0gKnNjb3BlSXRlcjsKLSAgICAgICAgUHJvcGVydHlOYW1lQXJyYXkgcHJvcGVydHlO
YW1lcyhnbG9iYWxPYmplY3QoKS0+Z2xvYmFsRXhlYygpKTsKLSAgICAgICAgby0+Z2V0UHJvcGVy
dHlOYW1lcyhnbG9iYWxPYmplY3QoKS0+Z2xvYmFsRXhlYygpLCBwcm9wZXJ0eU5hbWVzKTsKKyAg
ICAgICAgUHJvcGVydHlOYW1lQXJyYXkgcHJvcGVydHlOYW1lcyhnbG9iYWxPYmplY3QtPmdsb2Jh
bEV4ZWMoKSk7CisgICAgICAgIG8tPmdldFByb3BlcnR5TmFtZXMoZ2xvYmFsT2JqZWN0LT5nbG9i
YWxFeGVjKCksIHByb3BlcnR5TmFtZXMpOwogICAgICAgICBQcm9wZXJ0eU5hbWVBcnJheTo6Y29u
c3RfaXRlcmF0b3IgcHJvcEVuZCA9IHByb3BlcnR5TmFtZXMuZW5kKCk7CiAKICAgICAgICAgZnBy
aW50ZihzdGRlcnIsICItLS0tLSBbc2NvcGUgJXBdIC0tLS0tXG4iLCBvKTsKSW5kZXg6IEphdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU2NvcGVDaGFpbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU2NvcGVDaGFpbi5oCShyZXZpc2lvbiA0ODc2MikKKysrIEphdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU2NvcGVDaGFpbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMywxNCArMzMsMTYg
QEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgCiAgICAgY2xhc3MgU2NvcGVDaGFpbk5vZGUgOiBwdWJs
aWMgRmFzdEFsbG9jQmFzZSB7CiAgICAgcHVibGljOgotICAgICAgICBTY29wZUNoYWluTm9kZShT
Y29wZUNoYWluTm9kZSogbmV4dCwgSlNPYmplY3QqIG9iamVjdCwgSlNHbG9iYWxEYXRhKiBnbG9i
YWxEYXRhLCBKU09iamVjdCogZ2xvYmFsVGhpcykKKyAgICAgICAgU2NvcGVDaGFpbk5vZGUoU2Nv
cGVDaGFpbk5vZGUqIG5leHQsIEpTT2JqZWN0KiBvYmplY3QsIEpTR2xvYmFsRGF0YSogZ2xvYmFs
RGF0YSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNPYmplY3QqIGdsb2JhbFRoaXMp
CiAgICAgICAgICAgICA6IG5leHQobmV4dCkKICAgICAgICAgICAgICwgb2JqZWN0KG9iamVjdCkK
ICAgICAgICAgICAgICwgZ2xvYmFsRGF0YShnbG9iYWxEYXRhKQorICAgICAgICAgICAgLCBnbG9i
YWxPYmplY3QoZ2xvYmFsT2JqZWN0KQogICAgICAgICAgICAgLCBnbG9iYWxUaGlzKGdsb2JhbFRo
aXMpCiAgICAgICAgICAgICAsIHJlZkNvdW50KDEpCiAgICAgICAgIHsKICAgICAgICAgICAgIEFT
U0VSVChnbG9iYWxEYXRhKTsKKyAgICAgICAgICAgIEFTU0VSVChnbG9iYWxPYmplY3QpOwogICAg
ICAgICB9CiAjaWZuZGVmIE5ERUJVRwogICAgICAgICAvLyBEdWUgdG8gdGhlIG51bWJlciBvZiBz
dWJ0bGUgYW5kIHRpbWluZyBkZXBlbmRlbnQgYnVncyB0aGF0IGhhdmUgb2NjdXJyZWQgZHVlCkBA
IC01MSw2ICs1Myw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICAgICAgbmV4dCA9IDA7CiAg
ICAgICAgICAgICBvYmplY3QgPSAwOwogICAgICAgICAgICAgZ2xvYmFsRGF0YSA9IDA7CisgICAg
ICAgICAgICBnbG9iYWxPYmplY3QgPSAwOwogICAgICAgICAgICAgZ2xvYmFsVGhpcyA9IDA7CiAg
ICAgICAgIH0KICNlbmRpZgpAQCAtNTgsNiArNjEsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAg
ICAgU2NvcGVDaGFpbk5vZGUqIG5leHQ7CiAgICAgICAgIEpTT2JqZWN0KiBvYmplY3Q7CiAgICAg
ICAgIEpTR2xvYmFsRGF0YSogZ2xvYmFsRGF0YTsKKyAgICAgICAgSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdDsKICAgICAgICAgSlNPYmplY3QqIGdsb2JhbFRoaXM7CiAgICAgICAgIGludCBy
ZWZDb3VudDsKIApAQCAtODIsOSArODYsNiBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgU2Nv
cGVDaGFpbkl0ZXJhdG9yIGJlZ2luKCkgY29uc3Q7CiAgICAgICAgIFNjb3BlQ2hhaW5JdGVyYXRv
ciBlbmQoKSBjb25zdDsKIAotICAgICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KCkg
Y29uc3Q7IC8vIGRlZmluZWQgaW4gSlNHbG9iYWxPYmplY3QuaAotICAgICAgICBKU09iamVjdCog
Z2xvYmFsVGhpc09iamVjdCgpIGNvbnN0IHsgcmV0dXJuIGdsb2JhbFRoaXM7IH0KLQogI2lmbmRl
ZiBOREVCVUcgICAgICAgIAogICAgICAgICB2b2lkIHByaW50KCkgY29uc3Q7CiAjZW5kaWYKQEAg
LTkzLDcgKzk0LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgaW5saW5lIFNjb3BlQ2hhaW5Ob2Rl
KiBTY29wZUNoYWluTm9kZTo6cHVzaChKU09iamVjdCogbykKICAgICB7CiAgICAgICAgIEFTU0VS
VChvKTsKLSAgICAgICAgcmV0dXJuIG5ldyBTY29wZUNoYWluTm9kZSh0aGlzLCBvLCBnbG9iYWxE
YXRhLCBnbG9iYWxUaGlzKTsKKyAgICAgICAgcmV0dXJuIG5ldyBTY29wZUNoYWluTm9kZSh0aGlz
LCBvLCBnbG9iYWxEYXRhLCBnbG9iYWxPYmplY3QsIGdsb2JhbFRoaXMpOwogICAgIH0KIAogICAg
IGlubGluZSBTY29wZUNoYWluTm9kZSogU2NvcGVDaGFpbk5vZGU6OnBvcCgpCkBAIC0xNjMsOCAr
MTY0LDggQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIHsKICAgICAgICAgfQogCi0gICAgICAg
IFNjb3BlQ2hhaW4oSlNPYmplY3QqIG8sIEpTR2xvYmFsRGF0YSogZ2xvYmFsRGF0YSwgSlNPYmpl
Y3QqIGdsb2JhbFRoaXMpCi0gICAgICAgICAgICA6IG1fbm9kZShuZXcgU2NvcGVDaGFpbk5vZGUo
MCwgbywgZ2xvYmFsRGF0YSwgZ2xvYmFsVGhpcykpCisgICAgICAgIFNjb3BlQ2hhaW4oSlNPYmpl
Y3QqIG8sIEpTR2xvYmFsRGF0YSogZ2xvYmFsRGF0YSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgSlNPYmplY3QqIGdsb2JhbFRoaXMpCisgICAgICAgICAgICA6IG1fbm9kZShuZXcgU2Nv
cGVDaGFpbk5vZGUoMCwgbywgZ2xvYmFsRGF0YSwgZ2xvYmFsT2JqZWN0LCBnbG9iYWxUaGlzKSkK
ICAgICAgICAgewogICAgICAgICB9CiAKQEAgLTIwMyw3ICsyMDQsNyBAQCBuYW1lc3BhY2UgSlND
IHsKICAgICAgICAgdm9pZCBwb3AoKSB7IG1fbm9kZSA9IG1fbm9kZS0+cG9wKCk7IH0KICAgICAg
ICAgdm9pZCBjbGVhcigpIHsgbV9ub2RlLT5kZXJlZigpOyBtX25vZGUgPSAwOyB9CiAgICAgICAg
IAotICAgICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KCkgY29uc3QgeyByZXR1cm4g
bV9ub2RlLT5nbG9iYWxPYmplY3QoKTsgfQorICAgICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0KCkgY29uc3QgeyByZXR1cm4gbV9ub2RlLT5nbG9iYWxPYmplY3Q7IH0KIAogICAgICAg
ICB2b2lkIG1hcmtBZ2dyZWdhdGUoTWFya1N0YWNrJikgY29uc3Q7CiAKSW5kZXg6IFdlYkNvcmUv
Q2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9nCShyZXZpc2lvbiA0ODc2
OSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMDktMDktMjUgIEdlb2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBOZWVkIGEgc2hvcnQgZGVz
Y3JpcHRpb24gYW5kIGJ1ZyBVUkwgKE9PUFMhKQorCisgICAgICAgICogYmluZGluZ3MvanMvSlNJ
bnNwZWN0b3JCYWNrZW5kQ3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTSW5zcGVjdG9y
QmFja2VuZDo6Y3VycmVudENhbGxGcmFtZSk6CisgICAgICAgICogaW5zcGVjdG9yL0phdmFTY3Jp
cHREZWJ1Z1NlcnZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpKYXZhU2NyaXB0RGVidWdTZXJ2
ZXI6Omhhc0JyZWFrcG9pbnQpOiBVcGRhdGVkIGZvciBKYXZhU2NyaXB0Q29yZQorICAgICAgICBB
UEkgY2hhbmdlcy4KKwogMjAwOS0wOS0yNSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgR2VvZmZyZXkgR2FyZW4uCkluZGV4OiBXZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTSW5zcGVjdG9yQmFja2VuZEN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0luc3BlY3RvckJhY2tlbmRDdXN0b20uY3BwCShyZXZpc2lvbiA0
ODc2MikKKysrIFdlYkNvcmUvYmluZGluZ3MvanMvSlNJbnNwZWN0b3JCYWNrZW5kQ3VzdG9tLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjU0LDcgKzI1NCw3IEBAIEpTVmFsdWUgSlNJbnNwZWN0b3JC
YWNrZW5kOjpjdXJyZW50Q2FsbEYKICAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7CiAKICAg
ICAvLyBGSVhNRTogSSBhbSBub3Qgc3VyZSBpZiB0aGlzIGlzIGFjdHVhbGx5IG5lZWRlZC4gQ2Fu
IHdlIGp1c3QgdXNlIGV4ZWM/Ci0gICAgRXhlY1N0YXRlKiBnbG9iYWxFeGVjID0gY2FsbEZyYW1l
LT5zY29wZUNoYWluKCktPmdsb2JhbE9iamVjdCgpLT5nbG9iYWxFeGVjKCk7CisgICAgRXhlY1N0
YXRlKiBnbG9iYWxFeGVjID0gY2FsbEZyYW1lLT5zY29wZUNoYWluKCktPmdsb2JhbE9iamVjdC0+
Z2xvYmFsRXhlYygpOwogCiAgICAgSlNMb2NrIGxvY2soU2lsZW5jZUFzc2VydGlvbnNPbmx5KTsK
ICAgICByZXR1cm4gSlNJbnNwZWN0ZWRPYmplY3RXcmFwcGVyOjp3cmFwKGdsb2JhbEV4ZWMsIHRv
SlMoZXhlYywgY2FsbEZyYW1lKSk7CkluZGV4OiBXZWJDb3JlL2luc3BlY3Rvci9KYXZhU2NyaXB0
RGVidWdTZXJ2ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaW5zcGVjdG9yL0phdmFTY3Jp
cHREZWJ1Z1NlcnZlci5jcHAJKHJldmlzaW9uIDQ4NzYyKQorKysgV2ViQ29yZS9pbnNwZWN0b3Iv
SmF2YVNjcmlwdERlYnVnU2VydmVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjM1LDcgKzIzNSw3
IEBAIGJvb2wgSmF2YVNjcmlwdERlYnVnU2VydmVyOjpoYXNCcmVha3BvaW4KICAgICAgICAgLy8g
QW4gZXJyb25lb3VzIGNvbmRpdGlvbiBjb3VudHMgYXMgImZhbHNlIi4KICAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgIH0KLSAgICByZXR1cm4gcmVzdWx0LnRvQm9vbGVhbihtX2N1cnJlbnRDYWxs
RnJhbWUtPnNjb3BlQ2hhaW4oKS0+Z2xvYmFsT2JqZWN0KCktPmdsb2JhbEV4ZWMoKSk7CisgICAg
cmV0dXJuIHJlc3VsdC50b0Jvb2xlYW4obV9jdXJyZW50Q2FsbEZyYW1lLT5zY29wZUNoYWluKCkt
Pmdsb2JhbE9iamVjdC0+Z2xvYmFsRXhlYygpKTsKIH0KIAogdm9pZCBKYXZhU2NyaXB0RGVidWdT
ZXJ2ZXI6OmNsZWFyQnJlYWtwb2ludHMoKQo=
</data>
<flag name="review"
          id="21333"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>