<?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>92332</bug_id>
          
          <creation_ts>2012-07-25 22:08:22 -0700</creation_ts>
          <short_desc>Gather the duplicated timer code into CachedResource.</short_desc>
          <delta_ts>2012-07-27 01:26:02 -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>Page Loading</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>
          <dependson>91733</dependson>
    
    <dependson>92443</dependson>
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Dongseong Hwang">dongseong.hwang</reporter>
          <assigned_to name="Kwang Yul Seo">skyul</assigned_to>
          <cc>ggaren</cc>
    
    <cc>japhet</cc>
    
    <cc>jochen</cc>
    
    <cc>skyul</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>678847</commentid>
    <comment_count>0</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-07-25 22:08:22 -0700</bug_when>
    <thetext>When all clients are removed, CachedImage, CachedScript and CachedCSSStyleSheet
start the timer to destroy decoded data. Those three classes have their own
timer.
Changed CachedCSSStyleSheet::didAddClient to call super class method in order to
stop the timer. This change does not have any side effect because
CachedResource::didAddClient only stops the timer in this case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>678848</commentid>
    <comment_count>1</comment_count>
      <attachid>154537</attachid>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-07-25 22:10:22 -0700</bug_when>
    <thetext>Created attachment 154537
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>678851</commentid>
    <comment_count>2</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-07-25 22:13:50 -0700</bug_when>
    <thetext>This is follow-up patch of Bug 91733.

Geoffrey said &quot;I&apos;d like to see more code sharing for destroying decoded data on a timer.&quot;, and I agreed.

Therefore, I did this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>678874</commentid>
    <comment_count>3</comment_count>
      <attachid>154547</attachid>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-07-25 22:54:58 -0700</bug_when>
    <thetext>Created attachment 154547
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>678875</commentid>
    <comment_count>4</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-07-25 22:55:58 -0700</bug_when>
    <thetext>Changed the Changlog to add &quot;Internal review by&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>679880</commentid>
    <comment_count>5</comment_count>
      <attachid>154547</attachid>
    <who name="Kwang Yul Seo">skyul</who>
    <bug_when>2012-07-26 16:03:59 -0700</bug_when>
    <thetext>Comment on attachment 154547
Patch

Clearing flags on attachment: 154547

Committed r123808: &lt;http://trac.webkit.org/changeset/123808&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>679881</commentid>
    <comment_count>6</comment_count>
    <who name="Kwang Yul Seo">skyul</who>
    <bug_when>2012-07-26 16:04:05 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>679989</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-26 18:30:03 -0700</bug_when>
    <thetext>Re-opened since this is blocked by 92443</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>680023</commentid>
    <comment_count>8</comment_count>
    <who name="Dongseong Hwang">dongseong.hwang</who>
    <bug_when>2012-07-26 19:28:28 -0700</bug_when>
    <thetext>I&apos;m sorry for my carelessness.

CachedScript::script() calls m_decodedDataDeletionTimer.startOneShot(0).

 466 void CachedResource::decodedDataDeletionTimerFired(Timer&lt;CachedResource&gt;*)
 467 {
 468     ASSERT(!hasClients());
 469     destroyDecodedData();
 470 }

So, ASSERTION can be failed.

I&apos;ll remove ASSERT and kseo will commit again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>680029</commentid>
    <comment_count>9</comment_count>
      <attachid>154815</attachid>
    <who name="Kwang Yul Seo">skyul</who>
    <bug_when>2012-07-26 19:37:28 -0700</bug_when>
    <thetext>Created attachment 154815
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>680283</commentid>
    <comment_count>10</comment_count>
      <attachid>154815</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-27 01:25:58 -0700</bug_when>
    <thetext>Comment on attachment 154815
Patch for landing

Clearing flags on attachment: 154815

Committed r123848: &lt;http://trac.webkit.org/changeset/123848&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>680284</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-27 01:26:02 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>154537</attachid>
            <date>2012-07-25 22:10:22 -0700</date>
            <delta_ts>2012-07-25 22:54:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-92332-20120726140949.patch</filename>
            <type>text/plain</type>
            <size>14678</size>
            <attacher name="Dongseong Hwang">dongseong.hwang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIzNjgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjU4OTZiYWQxOWE5MDM2
OWJiYTQ4NWFiNTM4M2U0YTk2NmU5OTY5Ny4uNjZiOWYwZDc3ZTk4NTIzMTJkZjI2OTc0YTZiYWFi
OTM2OTU0M2MxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTA3LTI1ICBIdWFu
ZyBEb25nc3VuZyAgPGx1eHRlbGxhQGNvbXBhbnkxMDAubmV0PgorCisgICAgICAgIEdhdGhlciB0
aGUgZHVwbGljYXRlZCB0aW1lciBjb2RlIGludG8gQ2FjaGVkUmVzb3VyY2UuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MjMzMgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gYWxsIGNsaWVudHMgYXJl
IHJlbW92ZWQsIENhY2hlZEltYWdlLCBDYWNoZWRTY3JpcHQgYW5kIENhY2hlZENTU1N0eWxlU2hl
ZXQKKyAgICAgICAgc3RhcnQgdGhlIHRpbWVyIHRvIGRlc3Ryb3kgZGVjb2RlZCBkYXRhLiBUaG9z
ZSB0aHJlZSBjbGFzc2VzIGhhdmUgdGhlaXIgb3duCisgICAgICAgIHRpbWVyLgorICAgICAgICBD
aGFuZ2VkIENhY2hlZENTU1N0eWxlU2hlZXQ6OmRpZEFkZENsaWVudCB0byBjYWxsIHN1cGVyIGNs
YXNzIG1ldGhvZCBpbiBvcmRlciB0bworICAgICAgICBzdG9wIHRoZSB0aW1lci4gVGhpcyBjaGFu
Z2UgZG9lcyBub3QgaGF2ZSBhbnkgc2lkZSBlZmZlY3QgYmVjYXVzZQorICAgICAgICBDYWNoZWRS
ZXNvdXJjZTo6ZGlkQWRkQ2xpZW50IG9ubHkgc3RvcHMgdGhlIHRpbWVyIGluIHRoaXMgY2FzZS4K
KworICAgICAgICBObyBuZXcgdGVzdHMgLSBubyBuZXcgdGVzdGFibGUgZnVuY3Rpb25hbGl0eS4K
KworICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNhY2hlZENTU1N0eWxlU2hlZXQ6OkNhY2hlZENTU1N0eWxlU2hlZXQpOgor
ICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkQ1NTU3R5bGVTaGVldDo6ZGlkQWRkQ2xpZW50KToKKyAg
ICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oOgorICAgICAgICAoQ2Fj
aGVkQ1NTU3R5bGVTaGVldCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZEltYWdlOjpDYWNoZWRJbWFnZSk6CisgICAgICAg
IChXZWJDb3JlOjpDYWNoZWRJbWFnZTo6ZGlkQWRkQ2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6
OkNhY2hlZEltYWdlOjphbGxDbGllbnRzUmVtb3ZlZCk6CisgICAgICAgICogbG9hZGVyL2NhY2hl
L0NhY2hlZEltYWdlLmg6CisgICAgICAgIChDYWNoZWRJbWFnZSk6CisgICAgICAgICogbG9hZGVy
L2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291
cmNlOjpDYWNoZWRSZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZTo6
ZGlkQWRkQ2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpyZW1vdmVD
bGllbnQpOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2U6OmRlc3Ryb3lEZWNvZGVk
RGF0YUlmTmVlZGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Q2Fj
aGVkUmVzb3VyY2U6OmRlY29kZWREYXRhRGVsZXRpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBs
b2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaDoKKyAgICAgICAgKENhY2hlZFJlc291cmNlKToK
KyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkNhY2hlZFNjcmlwdDo6Q2FjaGVkU2NyaXB0KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUv
Q2FjaGVkU2NyaXB0Lmg6CisgICAgICAgIChDYWNoZWRTY3JpcHQpOgorCiAyMDEyLTA3LTI1ICBN
aWNoYWVsIFNhYm9mZiAgPG1zYWJvZmZAYXBwbGUuY29tPgogCiAgICAgICAgIENvbnZlcnQgSFRN
TCBwYXJzZXIgdG8gaGFuZGxlIDgtYml0IHJlc291cmNlcyB3aXRob3V0IGNvbnZlcnRpbmcgdG8g
VUNoYXIqCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NT
U3R5bGVTaGVldC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5
bGVTaGVldC5jcHAKaW5kZXggNjE3MzJiMTE1Mjg5ODVjMTk3MTFhNzQwYmQ2NzFhYmVmZTU3YmUz
Ni4uZTFmYjAyY2ZhY2ZmZjAyZWEyMThjMjJiZmE4Njg3OTQ0ODFhZmQxNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcApAQCAt
NDMsNyArNDMsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBDYWNoZWRDU1NTdHlsZVNoZWV0OjpD
YWNoZWRDU1NTdHlsZVNoZWV0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1ZXN0
LCBjb25zdCBTdHJpbmcmIGNoYXJzZXQpCiAgICAgOiBDYWNoZWRSZXNvdXJjZShyZXNvdXJjZVJl
cXVlc3QsIENTU1N0eWxlU2hlZXQpCiAgICAgLCBtX2RlY29kZXIoVGV4dFJlc291cmNlRGVjb2Rl
cjo6Y3JlYXRlKCJ0ZXh0L2NzcyIsIGNoYXJzZXQpKQotICAgICwgbV9kZWNvZGVkRGF0YURlbGV0
aW9uVGltZXIodGhpcywgJkNhY2hlZENTU1N0eWxlU2hlZXQ6OmRlY29kZWREYXRhRGVsZXRpb25U
aW1lckZpcmVkKQogewogICAgIC8vIFByZWZlciB0ZXh0L2NzcyBidXQgYWNjZXB0IGFueSB0eXBl
IChkZWxsLmNvbSBzZXJ2ZXMgYSBzdHlsZXNoZWV0CiAgICAgLy8gYXMgdGV4dC9odG1sOyBzZWUg
PGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNDUxPikuCkBAIC01OSwx
NyArNTgsMTAgQEAgQ2FjaGVkQ1NTU3R5bGVTaGVldDo6fkNhY2hlZENTU1N0eWxlU2hlZXQoKQog
dm9pZCBDYWNoZWRDU1NTdHlsZVNoZWV0OjpkaWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGll
bnQqIGMpCiB7CiAgICAgQVNTRVJUKGMtPnJlc291cmNlQ2xpZW50VHlwZSgpID09IENhY2hlZFN0
eWxlU2hlZXRDbGllbnQ6OmV4cGVjdGVkVHlwZSgpKTsKLSAgICBpZiAobV9kZWNvZGVkRGF0YURl
bGV0aW9uVGltZXIuaXNBY3RpdmUoKSkKLSAgICAgICAgbV9kZWNvZGVkRGF0YURlbGV0aW9uVGlt
ZXIuc3RvcCgpOwotCiAgICAgaWYgKCFpc0xvYWRpbmcoKSkKICAgICAgICAgc3RhdGljX2Nhc3Q8
Q2FjaGVkU3R5bGVTaGVldENsaWVudCo+KGMpLT5zZXRDU1NTdHlsZVNoZWV0KG1fcmVzb3VyY2VS
ZXF1ZXN0LnVybCgpLCBtX3Jlc3BvbnNlLnVybCgpLCBtX2RlY29kZXItPmVuY29kaW5nKCkubmFt
ZSgpLCB0aGlzKTsKLX0KIAotdm9pZCBDYWNoZWRDU1NTdHlsZVNoZWV0OjphbGxDbGllbnRzUmVt
b3ZlZCgpCi17Ci0gICAgaWYgKGRvdWJsZSBpbnRlcnZhbCA9IG1lbW9yeUNhY2hlKCktPmRlYWRE
ZWNvZGVkRGF0YURlbGV0aW9uSW50ZXJ2YWwoKSkKLSAgICAgICAgbV9kZWNvZGVkRGF0YURlbGV0
aW9uVGltZXIuc3RhcnRPbmVTaG90KGludGVydmFsKTsKKyAgICBDYWNoZWRSZXNvdXJjZTo6ZGlk
QWRkQ2xpZW50KGMpOwogfQogCiB2b2lkIENhY2hlZENTU1N0eWxlU2hlZXQ6OnNldEVuY29kaW5n
KGNvbnN0IFN0cmluZyYgY2hzKQpAQCAtMTcyLDExICsxNjQsNiBAQCB2b2lkIENhY2hlZENTU1N0
eWxlU2hlZXQ6OmRlc3Ryb3lEZWNvZGVkRGF0YSgpCiAgICAgICAgIG1ha2VQdXJnZWFibGUodHJ1
ZSk7CiB9CiAKLXZvaWQgQ2FjaGVkQ1NTU3R5bGVTaGVldDo6ZGVjb2RlZERhdGFEZWxldGlvblRp
bWVyRmlyZWQoVGltZXI8Q2FjaGVkQ1NTU3R5bGVTaGVldD4qKQotewotICAgIGRlc3Ryb3lEZWNv
ZGVkRGF0YSgpOwotfQotCiBQYXNzUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gQ2FjaGVkQ1NT
U3R5bGVTaGVldDo6cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQoY29uc3QgQ1NTUGFyc2VyQ29udGV4
dCYgY29udGV4dCkKIHsKICAgICBpZiAoIW1fcGFyc2VkU3R5bGVTaGVldENhY2hlKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuaCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmgKaW5kZXgg
OWY1MWYzMGFhYTBiODdjNGFkNWJjNjdhM2JmOWE2YTA3ZWUyMDUxNC4uOWFkNmYxNGJhMjM2OTg3
OGU0ZTYxOGUyNmYyODc1ZWRlZjI1YjllOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oCkBAIC0yNyw3ICsyNyw2IEBACiAjZGVmaW5l
IENhY2hlZENTU1N0eWxlU2hlZXRfaAogCiAjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2UuaCIKLSNp
bmNsdWRlICJUaW1lci5oIgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAogbmFtZXNwYWNlIFdl
YkNvcmUgewpAQCAtNDcsOCArNDYsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAg
dmlydHVhbCB2b2lkIGRpZEFkZENsaWVudChDYWNoZWRSZXNvdXJjZUNsaWVudCopOwogICAgICAg
ICAKLSAgICAgICAgdmlydHVhbCB2b2lkIGFsbENsaWVudHNSZW1vdmVkKCk7Ci0KICAgICAgICAg
dmlydHVhbCB2b2lkIHNldEVuY29kaW5nKGNvbnN0IFN0cmluZyYpOwogICAgICAgICB2aXJ0dWFs
IFN0cmluZyBlbmNvZGluZygpIGNvbnN0OwogICAgICAgICB2aXJ0dWFsIHZvaWQgZGF0YShQYXNz
UmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpOwpAQCAtNjIs
MTQgKzU5LDEyIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBzYXZlUGFyc2Vk
U3R5bGVTaGVldChQYXNzUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4pOwogICAgIAogICAgIHBy
aXZhdGU6Ci0gICAgICAgIHZvaWQgZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmlyZWQoVGltZXI8
Q2FjaGVkQ1NTU3R5bGVTaGVldD4qKTsKICAgICAgICAgYm9vbCBjYW5Vc2VTaGVldChib29sIGVu
Zm9yY2VNSU1FVHlwZSwgYm9vbCogaGFzVmFsaWRNSU1FVHlwZSkgY29uc3Q7CiAgICAgICAgIHZp
cnR1YWwgUHVyZ2VQcmlvcml0eSBwdXJnZVByaW9yaXR5KCkgY29uc3QgeyByZXR1cm4gUHVyZ2VM
YXN0OyB9CiAKICAgICBwcm90ZWN0ZWQ6CiAgICAgICAgIFJlZlB0cjxUZXh0UmVzb3VyY2VEZWNv
ZGVyPiBtX2RlY29kZXI7CiAgICAgICAgIFN0cmluZyBtX2RlY29kZWRTaGVldFRleHQ7Ci0gICAg
ICAgIFRpbWVyPENhY2hlZENTU1N0eWxlU2hlZXQ+IG1fZGVjb2RlZERhdGFEZWxldGlvblRpbWVy
OwogCiAgICAgICAgIFJlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IG1fcGFyc2VkU3R5bGVTaGVl
dENhY2hlOwogICAgIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkSW1hZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdl
LmNwcAppbmRleCBmYjMxZjFiYWY1N2RhMGYxMjM5Y2FiZmE3Yjg2ZTdkMDcxMjk3ZDcyLi4zMTM0
NzVjZTFiZjZkZTMwOWIxOWEzZTFhODVhOWNhMjM1NTA2YWQzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkSW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRJbWFnZS5jcHAKQEAgLTU3LDcgKzU3LDYgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogQ2FjaGVkSW1hZ2U6OkNhY2hlZEltYWdlKGNvbnN0IFJlc291cmNlUmVxdWVz
dCYgcmVzb3VyY2VSZXF1ZXN0KQogICAgIDogQ2FjaGVkUmVzb3VyY2UocmVzb3VyY2VSZXF1ZXN0
LCBJbWFnZVJlc291cmNlKQogICAgICwgbV9pbWFnZSgwKQotICAgICwgbV9kZWNvZGVkRGF0YURl
bGV0aW9uVGltZXIodGhpcywgJkNhY2hlZEltYWdlOjpkZWNvZGVkRGF0YURlbGV0aW9uVGltZXJG
aXJlZCkKICAgICAsIG1fc2hvdWxkUGFpbnRCcm9rZW5JbWFnZSh0cnVlKQogewogICAgIHNldFN0
YXR1cyhVbmtub3duKTsKQEAgLTY2LDcgKzY1LDYgQEAgQ2FjaGVkSW1hZ2U6OkNhY2hlZEltYWdl
KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1ZXN0KQogQ2FjaGVkSW1hZ2U6OkNh
Y2hlZEltYWdlKEltYWdlKiBpbWFnZSkKICAgICA6IENhY2hlZFJlc291cmNlKFJlc291cmNlUmVx
dWVzdCgpLCBJbWFnZVJlc291cmNlKQogICAgICwgbV9pbWFnZShpbWFnZSkKLSAgICAsIG1fZGVj
b2RlZERhdGFEZWxldGlvblRpbWVyKHRoaXMsICZDYWNoZWRJbWFnZTo6ZGVjb2RlZERhdGFEZWxl
dGlvblRpbWVyRmlyZWQpCiAgICAgLCBtX3Nob3VsZFBhaW50QnJva2VuSW1hZ2UodHJ1ZSkKIHsK
ICAgICBzZXRTdGF0dXMoQ2FjaGVkKTsKQEAgLTc4LDEyICs3Niw2IEBAIENhY2hlZEltYWdlOjp+
Q2FjaGVkSW1hZ2UoKQogICAgIGNsZWFySW1hZ2UoKTsKIH0KIAotdm9pZCBDYWNoZWRJbWFnZTo6
ZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmlyZWQoVGltZXI8Q2FjaGVkSW1hZ2U+KikKLXsKLSAg
ICBBU1NFUlQoIWhhc0NsaWVudHMoKSk7Ci0gICAgZGVzdHJveURlY29kZWREYXRhKCk7Ci19Ci0K
IHZvaWQgQ2FjaGVkSW1hZ2U6OmxvYWQoQ2FjaGVkUmVzb3VyY2VMb2FkZXIqIGNhY2hlZFJlc291
cmNlTG9hZGVyLCBjb25zdCBSZXNvdXJjZUxvYWRlck9wdGlvbnMmIG9wdGlvbnMpCiB7CiAgICAg
aWYgKCFjYWNoZWRSZXNvdXJjZUxvYWRlciB8fCBjYWNoZWRSZXNvdXJjZUxvYWRlci0+YXV0b0xv
YWRJbWFnZXMoKSkKQEAgLTk0LDkgKzg2LDYgQEAgdm9pZCBDYWNoZWRJbWFnZTo6bG9hZChDYWNo
ZWRSZXNvdXJjZUxvYWRlciogY2FjaGVkUmVzb3VyY2VMb2FkZXIsIGNvbnN0IFJlc291cmMKIAog
dm9pZCBDYWNoZWRJbWFnZTo6ZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50KiBjKQog
ewotICAgIGlmIChtX2RlY29kZWREYXRhRGVsZXRpb25UaW1lci5pc0FjdGl2ZSgpKQotICAgICAg
ICBtX2RlY29kZWREYXRhRGVsZXRpb25UaW1lci5zdG9wKCk7Ci0gICAgCiAgICAgaWYgKG1fZGF0
YSAmJiAhbV9pbWFnZSAmJiAhZXJyb3JPY2N1cnJlZCgpKSB7CiAgICAgICAgIGNyZWF0ZUltYWdl
KCk7CiAgICAgICAgIG1faW1hZ2UtPnNldERhdGEobV9kYXRhLCB0cnVlKTsKQEAgLTEyNCw4ICsx
MTMsNiBAQCB2b2lkIENhY2hlZEltYWdlOjphbGxDbGllbnRzUmVtb3ZlZCgpCiB7CiAgICAgaWYg
KG1faW1hZ2UgJiYgIWVycm9yT2NjdXJyZWQoKSkKICAgICAgICAgbV9pbWFnZS0+cmVzZXRBbmlt
YXRpb24oKTsKLSAgICBpZiAoZG91YmxlIGludGVydmFsID0gbWVtb3J5Q2FjaGUoKS0+ZGVhZERl
Y29kZWREYXRhRGVsZXRpb25JbnRlcnZhbCgpKQotICAgICAgICBtX2RlY29kZWREYXRhRGVsZXRp
b25UaW1lci5zdGFydE9uZVNob3QoaW50ZXJ2YWwpOwogfQogCiBwYWlyPEltYWdlKiwgZmxvYXQ+
IENhY2hlZEltYWdlOjpicm9rZW5JbWFnZShmbG9hdCBkZXZpY2VTY2FsZUZhY3RvcikgY29uc3QK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRJbWFnZS5oIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmgKaW5kZXggOWUzOTIxMTc0
MzRmZjY0NGI4N2I3MDJjMDc2NWM2MTY3OTI1YWI2Ny4uYjk5MjE1MTczNThiYzExYTNiYjJjZGMy
ZTM0YWIwNjUzZDRjMzZhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZEltYWdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZElt
YWdlLmgKQEAgLTI4LDcgKzI4LDYgQEAKICNpbmNsdWRlICJTVkdJbWFnZUNhY2hlLmgiCiAjaW5j
bHVkZSAiSW1hZ2VPYnNlcnZlci5oIgogI2luY2x1ZGUgIkludFJlY3QuaCIKLSNpbmNsdWRlICJU
aW1lci5oIgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpA
QCAtMTA0LDcgKzEwMyw2IEBAIHByaXZhdGU6CiAgICAgc2l6ZV90IG1heGltdW1EZWNvZGVkSW1h
Z2VTaXplKCk7CiAgICAgLy8gSWYgbm90IG51bGwsIGNoYW5nZVJlY3QgaXMgdGhlIGNoYW5nZWQg
cGFydCBvZiB0aGUgaW1hZ2UuCiAgICAgdm9pZCBub3RpZnlPYnNlcnZlcnMoY29uc3QgSW50UmVj
dCogY2hhbmdlUmVjdCA9IDApOwotICAgIHZvaWQgZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmly
ZWQoVGltZXI8Q2FjaGVkSW1hZ2U+Kik7CiAgICAgdmlydHVhbCBQdXJnZVByaW9yaXR5IHB1cmdl
UHJpb3JpdHkoKSBjb25zdCB7IHJldHVybiBQdXJnZUZpcnN0OyB9CiAgICAgdm9pZCBjaGVja1No
b3VsZFBhaW50QnJva2VuSW1hZ2UoKTsKIApAQCAtMTEyLDcgKzExMCw2IEBAIHByaXZhdGU6CiAj
aWYgRU5BQkxFKFNWRykKICAgICBPd25QdHI8U1ZHSW1hZ2VDYWNoZT4gbV9zdmdJbWFnZUNhY2hl
OwogI2VuZGlmCi0gICAgVGltZXI8Q2FjaGVkSW1hZ2U+IG1fZGVjb2RlZERhdGFEZWxldGlvblRp
bWVyOwogICAgIGJvb2wgbV9zaG91bGRQYWludEJyb2tlbkltYWdlOwogfTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKaW5kZXggMzk5OGVmZDMy
NjMzM2ZhYjIyYTUzZGM0ZmRhNDAyMmY4ZTM5OGI1NC4uNTY4ZDMzMTRjMDY3MDVjNGUyMGJmZGU0
NTQ4OWZjMmEyZGYzNmMzZiAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZFJlc291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkUmVzb3VyY2UuY3BwCkBAIC0xMzYsNiArMTM2LDcgQEAgQ2FjaGVkUmVzb3VyY2U6OkNhY2hl
ZFJlc291cmNlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgVHlwZSB0eXBlKQogICAg
IDogbV9yZXNvdXJjZVJlcXVlc3QocmVxdWVzdCkKICAgICAsIG1fbG9hZFByaW9yaXR5KGRlZmF1
bHRQcmlvcml0eUZvclJlc291cmNlVHlwZSh0eXBlKSkKICAgICAsIG1fcmVzcG9uc2VUaW1lc3Rh
bXAoY3VycmVudFRpbWUoKSkKKyAgICAsIG1fZGVjb2RlZERhdGFEZWxldGlvblRpbWVyKHRoaXMs
ICZDYWNoZWRSZXNvdXJjZTo6ZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmlyZWQpCiAgICAgLCBt
X2xhc3REZWNvZGVkQWNjZXNzVGltZSgwKQogICAgICwgbV9sb2FkRmluaXNoVGltZSgwKQogICAg
ICwgbV9lbmNvZGVkU2l6ZSgwKQpAQCAtMzgwLDYgKzM4MSw5IEBAIHZvaWQgQ2FjaGVkUmVzb3Vy
Y2U6OmFkZENsaWVudChDYWNoZWRSZXNvdXJjZUNsaWVudCogY2xpZW50KQogCiB2b2lkIENhY2hl
ZFJlc291cmNlOjpkaWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQqIGMpCiB7CisgICAg
aWYgKG1fZGVjb2RlZERhdGFEZWxldGlvblRpbWVyLmlzQWN0aXZlKCkpCisgICAgICAgIG1fZGVj
b2RlZERhdGFEZWxldGlvblRpbWVyLnN0b3AoKTsKKwogICAgIGlmIChtX2NsaWVudHNBd2FpdGlu
Z0NhbGxiYWNrLmNvbnRhaW5zKGMpKSB7CiAgICAgICAgIG1fY2xpZW50cy5hZGQoYyk7CiAgICAg
ICAgIG1fY2xpZW50c0F3YWl0aW5nQ2FsbGJhY2sucmVtb3ZlKGMpOwpAQCAtNDM2LDYgKzQ0MCw3
IEBAIHZvaWQgQ2FjaGVkUmVzb3VyY2U6OnJlbW92ZUNsaWVudChDYWNoZWRSZXNvdXJjZUNsaWVu
dCogY2xpZW50KQogICAgICAgICBtZW1vcnlDYWNoZSgpLT5yZW1vdmVGcm9tTGl2ZVJlc291cmNl
c1NpemUodGhpcyk7CiAgICAgICAgIG1lbW9yeUNhY2hlKCktPnJlbW92ZUZyb21MaXZlRGVjb2Rl
ZFJlc291cmNlc0xpc3QodGhpcyk7CiAgICAgICAgIGFsbENsaWVudHNSZW1vdmVkKCk7CisgICAg
ICAgIGRlc3Ryb3lEZWNvZGVkRGF0YUlmTmVlZGVkKCk7CiAgICAgICAgIGlmIChyZXNwb25zZSgp
LmNhY2hlQ29udHJvbENvbnRhaW5zTm9TdG9yZSgpKSB7CiAgICAgICAgICAgICAvLyBSRkMyNjE2
IDE0LjkuMjoKICAgICAgICAgICAgIC8vICJuby1zdG9yZTogLi4uIE1VU1QgbWFrZSBhIGJlc3Qt
ZWZmb3J0IGF0dGVtcHQgdG8gcmVtb3ZlIHRoZSBpbmZvcm1hdGlvbiBmcm9tIHZvbGF0aWxlIHN0
b3JhZ2UgYXMgcHJvbXB0bHkgYXMgcG9zc2libGUiCkBAIC00NDksNiArNDU0LDIxIEBAIHZvaWQg
Q2FjaGVkUmVzb3VyY2U6OnJlbW92ZUNsaWVudChDYWNoZWRSZXNvdXJjZUNsaWVudCogY2xpZW50
KQogICAgIC8vIFRoaXMgb2JqZWN0IG1heSBiZSBkZWFkIGhlcmUuCiB9CiAKK3ZvaWQgQ2FjaGVk
UmVzb3VyY2U6OmRlc3Ryb3lEZWNvZGVkRGF0YUlmTmVlZGVkKCkKK3sKKyAgICBpZiAoIW1fZGVj
b2RlZFNpemUpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChkb3VibGUgaW50ZXJ2YWwgPSBt
ZW1vcnlDYWNoZSgpLT5kZWFkRGVjb2RlZERhdGFEZWxldGlvbkludGVydmFsKCkpCisgICAgICAg
IG1fZGVjb2RlZERhdGFEZWxldGlvblRpbWVyLnN0YXJ0T25lU2hvdChpbnRlcnZhbCk7Cit9CisK
K3ZvaWQgQ2FjaGVkUmVzb3VyY2U6OmRlY29kZWREYXRhRGVsZXRpb25UaW1lckZpcmVkKFRpbWVy
PENhY2hlZFJlc291cmNlPiopCit7CisgICAgQVNTRVJUKCFoYXNDbGllbnRzKCkpOworICAgIGRl
c3Ryb3lEZWNvZGVkRGF0YSgpOworfQorCiB2b2lkIENhY2hlZFJlc291cmNlOjpkZWxldGVJZlBv
c3NpYmxlKCkKIHsKICAgICBpZiAoY2FuRGVsZXRlKCkgJiYgIWluQ2FjaGUoKSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKaW5kZXggN2ZiZjczMzY1ODU1
YjM4YTcwNTNjNTkyZGI2MDZmOGYxZWQyYTg0YS4uMTYxZGQ0MzgzYjE5ZjIzMTFmNTM0NDg3MzZm
NmZiYTJmNmJhN2MwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZFJlc291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJl
c291cmNlLmgKQEAgLTEyOCw2ICsxMjgsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGRp
ZEFkZENsaWVudChDYWNoZWRSZXNvdXJjZUNsaWVudCopOwogICAgIHZpcnR1YWwgdm9pZCBkaWRS
ZW1vdmVDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQqKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQg
YWxsQ2xpZW50c1JlbW92ZWQoKSB7IH0KKyAgICB2b2lkIGRlc3Ryb3lEZWNvZGVkRGF0YUlmTmVl
ZGVkKCk7CiAKICAgICB1bnNpZ25lZCBjb3VudCgpIGNvbnN0IHsgcmV0dXJuIG1fY2xpZW50cy5z
aXplKCk7IH0KIApAQCAtMjg2LDkgKzI4NywxMSBAQCBwcm90ZWN0ZWQ6CiAKICAgICBSZWZQdHI8
U2hhcmVkQnVmZmVyPiBtX2RhdGE7CiAgICAgT3duUHRyPFB1cmdlYWJsZUJ1ZmZlcj4gbV9wdXJn
ZWFibGVEYXRhOworICAgIFRpbWVyPENhY2hlZFJlc291cmNlPiBtX2RlY29kZWREYXRhRGVsZXRp
b25UaW1lcjsKIAogcHJpdmF0ZToKICAgICBib29sIGFkZENsaWVudFRvU2V0KENhY2hlZFJlc291
cmNlQ2xpZW50Kik7CisgICAgdm9pZCBkZWNvZGVkRGF0YURlbGV0aW9uVGltZXJGaXJlZChUaW1l
cjxDYWNoZWRSZXNvdXJjZT4qKTsKIAogICAgIHZpcnR1YWwgUHVyZ2VQcmlvcml0eSBwdXJnZVBy
aW9yaXR5KCkgY29uc3QgeyByZXR1cm4gUHVyZ2VEZWZhdWx0OyB9CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKaW5kZXggODM3NTFlY2E3YzAyMDcyMjBk
MDA3MzI4YTY3MGZlMTgzNGQ5MWQ0Ny4uMDg2ZmExYjNiZDYwNTZkMzYxZDU0NGQwNzQ3YTdlMWUy
MGI3ZWRlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNj
cmlwdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5j
cHAKQEAgLTQzLDcgKzQzLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogQ2FjaGVkU2NyaXB0OjpD
YWNoZWRTY3JpcHQoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXNvdXJjZVJlcXVlc3QsIGNvbnN0
IFN0cmluZyYgY2hhcnNldCkKICAgICA6IENhY2hlZFJlc291cmNlKHJlc291cmNlUmVxdWVzdCwg
U2NyaXB0KQogICAgICwgbV9kZWNvZGVyKFRleHRSZXNvdXJjZURlY29kZXI6OmNyZWF0ZSgiYXBw
bGljYXRpb24vamF2YXNjcmlwdCIsIGNoYXJzZXQpKQotICAgICwgbV9kZWNvZGVkRGF0YURlbGV0
aW9uVGltZXIodGhpcywgJkNhY2hlZFNjcmlwdDo6ZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmly
ZWQpCiB7CiAgICAgLy8gSXQncyBqYXZhc2NyaXB0IHdlIHdhbnQuCiAgICAgLy8gQnV0IHNvbWUg
d2Vic2l0ZXMgdGhpbmsgdGhlaXIgc2NyaXB0cyBhcmUgPHNvbWUgd3JvbmcgbWltZXR5cGUgaGVy
ZT4KQEAgLTU1LDIwICs1NCw2IEBAIENhY2hlZFNjcmlwdDo6fkNhY2hlZFNjcmlwdCgpCiB7CiB9
CiAKLXZvaWQgQ2FjaGVkU2NyaXB0OjpkaWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQq
IGMpCi17Ci0gICAgaWYgKG1fZGVjb2RlZERhdGFEZWxldGlvblRpbWVyLmlzQWN0aXZlKCkpCi0g
ICAgICAgIG1fZGVjb2RlZERhdGFEZWxldGlvblRpbWVyLnN0b3AoKTsKLQotICAgIENhY2hlZFJl
c291cmNlOjpkaWRBZGRDbGllbnQoYyk7Ci19Ci0KLXZvaWQgQ2FjaGVkU2NyaXB0OjphbGxDbGll
bnRzUmVtb3ZlZCgpCi17Ci0gICAgaWYgKGRvdWJsZSBpbnRlcnZhbCA9IG1lbW9yeUNhY2hlKCkt
PmRlYWREZWNvZGVkRGF0YURlbGV0aW9uSW50ZXJ2YWwoKSkKLSAgICAgICAgbV9kZWNvZGVkRGF0
YURlbGV0aW9uVGltZXIuc3RhcnRPbmVTaG90KGludGVydmFsKTsKLX0KLQogdm9pZCBDYWNoZWRT
Y3JpcHQ6OnNldEVuY29kaW5nKGNvbnN0IFN0cmluZyYgY2hzKQogewogICAgIG1fZGVjb2Rlci0+
c2V0RW5jb2RpbmcoY2hzLCBUZXh0UmVzb3VyY2VEZWNvZGVyOjpFbmNvZGluZ0Zyb21IVFRQSGVh
ZGVyKTsKQEAgLTEyNywxMSArMTEyLDYgQEAgdm9pZCBDYWNoZWRTY3JpcHQ6OmRlc3Ryb3lEZWNv
ZGVkRGF0YSgpCiAgICAgICAgIG1ha2VQdXJnZWFibGUodHJ1ZSk7CiB9CiAKLXZvaWQgQ2FjaGVk
U2NyaXB0OjpkZWNvZGVkRGF0YURlbGV0aW9uVGltZXJGaXJlZChUaW1lcjxDYWNoZWRTY3JpcHQ+
KikKLXsKLSAgICBkZXN0cm95RGVjb2RlZERhdGEoKTsKLX0KLQogI2lmIFVTRShKU0MpCiBKU0M6
OlNvdXJjZVByb3ZpZGVyQ2FjaGUqIENhY2hlZFNjcmlwdDo6c291cmNlUHJvdmlkZXJDYWNoZSgp
IGNvbnN0CiB7ICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkU2NyaXB0LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmgK
aW5kZXggMWE3NmMxOGY0NjdlNDBiZDA1OTM2MGQxZGYzNzgwYmZmNzkxNGRhZi4uOWE0ZjM4YWQw
YjNmN2JmZTMxZTc0Nzg3N2Q0Y2VmNTY5NDI1ODJiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRTY3JpcHQuaApAQCAtMjcsNyArMjcsNiBAQAogI2RlZmluZSBDYWNoZWRT
Y3JpcHRfaAogCiAjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2UuaCIKLSNpbmNsdWRlICJUaW1lci5o
IgogCiAjaWYgVVNFKEpTQykKIG5hbWVzcGFjZSBKU0MgewpAQCAtNDcsOSArNDYsNiBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAgY29uc3QgU3RyaW5nJiBzY3JpcHQoKTsKIAotICAg
ICAgICB2aXJ0dWFsIHZvaWQgZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50Kik7Ci0g
ICAgICAgIHZpcnR1YWwgdm9pZCBhbGxDbGllbnRzUmVtb3ZlZCgpOwotCiAgICAgICAgIHZpcnR1
YWwgdm9pZCBzZXRFbmNvZGluZyhjb25zdCBTdHJpbmcmKTsKICAgICAgICAgdmlydHVhbCBTdHJp
bmcgZW5jb2RpbmcoKSBjb25zdDsKICAgICAgICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0
cjxTaGFyZWRCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKTsKQEAgLTYyLDEyICs1
OCwxMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZvaWQgc291cmNlUHJvdmlkZXJD
YWNoZVNpemVDaGFuZ2VkKGludCBkZWx0YSk7CiAjZW5kaWYKICAgICBwcml2YXRlOgotICAgICAg
ICB2b2lkIGRlY29kZWREYXRhRGVsZXRpb25UaW1lckZpcmVkKFRpbWVyPENhY2hlZFNjcmlwdD4q
KTsKICAgICAgICAgdmlydHVhbCBQdXJnZVByaW9yaXR5IHB1cmdlUHJpb3JpdHkoKSBjb25zdCB7
IHJldHVybiBQdXJnZUxhc3Q7IH0KIAogICAgICAgICBTdHJpbmcgbV9zY3JpcHQ7CiAgICAgICAg
IFJlZlB0cjxUZXh0UmVzb3VyY2VEZWNvZGVyPiBtX2RlY29kZXI7Ci0gICAgICAgIFRpbWVyPENh
Y2hlZFNjcmlwdD4gbV9kZWNvZGVkRGF0YURlbGV0aW9uVGltZXI7CiAjaWYgVVNFKEpTQykgICAg
ICAgIAogICAgICAgICBtdXRhYmxlIE93blB0cjxKU0M6OlNvdXJjZVByb3ZpZGVyQ2FjaGU+IG1f
c291cmNlUHJvdmlkZXJDYWNoZTsKICNlbmRpZgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>154547</attachid>
            <date>2012-07-25 22:54:58 -0700</date>
            <delta_ts>2012-07-26 19:37:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-92332-20120726145425.patch</filename>
            <type>text/plain</type>
            <size>14723</size>
            <attacher name="Dongseong Hwang">dongseong.hwang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIzNjgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjU4OTZiYWQxOWE5MDM2
OWJiYTQ4NWFiNTM4M2U0YTk2NmU5OTY5Ny4uM2FmY2NkODNkMjNmMjVmNGJjYzllMjFkZDkwYzgw
YWE4OGViZWMyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDEyLTA3LTI1ICBIdWFu
ZyBEb25nc3VuZyAgPGx1eHRlbGxhQGNvbXBhbnkxMDAubmV0PgorCisgICAgICAgIEdhdGhlciB0
aGUgZHVwbGljYXRlZCB0aW1lciBjb2RlIGludG8gQ2FjaGVkUmVzb3VyY2UuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MjMzMgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEludGVybmFsIHJldmlldyBieSBK
YWUgSHl1biBQYXJrLgorCisgICAgICAgIFdoZW4gYWxsIGNsaWVudHMgYXJlIHJlbW92ZWQsIENh
Y2hlZEltYWdlLCBDYWNoZWRTY3JpcHQgYW5kIENhY2hlZENTU1N0eWxlU2hlZXQKKyAgICAgICAg
c3RhcnQgdGhlIHRpbWVyIHRvIGRlc3Ryb3kgZGVjb2RlZCBkYXRhLiBUaG9zZSB0aHJlZSBjbGFz
c2VzIGhhdmUgdGhlaXIgb3duCisgICAgICAgIHRpbWVyLgorICAgICAgICBDaGFuZ2VkIENhY2hl
ZENTU1N0eWxlU2hlZXQ6OmRpZEFkZENsaWVudCB0byBjYWxsIHN1cGVyIGNsYXNzIG1ldGhvZCBp
biBvcmRlciB0bworICAgICAgICBzdG9wIHRoZSB0aW1lci4gVGhpcyBjaGFuZ2UgZG9lcyBub3Qg
aGF2ZSBhbnkgc2lkZSBlZmZlY3QgYmVjYXVzZQorICAgICAgICBDYWNoZWRSZXNvdXJjZTo6ZGlk
QWRkQ2xpZW50IG9ubHkgc3RvcHMgdGhlIHRpbWVyIGluIHRoaXMgY2FzZS4KKworICAgICAgICBO
byBuZXcgdGVzdHMgLSBubyBuZXcgdGVzdGFibGUgZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAq
IGxvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkNhY2hlZENTU1N0eWxlU2hlZXQ6OkNhY2hlZENTU1N0eWxlU2hlZXQpOgorICAgICAgICAoV2Vi
Q29yZTo6Q2FjaGVkQ1NTU3R5bGVTaGVldDo6ZGlkQWRkQ2xpZW50KToKKyAgICAgICAgKiBsb2Fk
ZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oOgorICAgICAgICAoQ2FjaGVkQ1NTU3R5bGVT
aGVldCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNhY2hlZEltYWdlOjpDYWNoZWRJbWFnZSk6CisgICAgICAgIChXZWJDb3JlOjpD
YWNoZWRJbWFnZTo6ZGlkQWRkQ2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZEltYWdl
OjphbGxDbGllbnRzUmVtb3ZlZCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdl
Lmg6CisgICAgICAgIChDYWNoZWRJbWFnZSk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpDYWNoZWRS
ZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZTo6ZGlkQWRkQ2xpZW50
KToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpyZW1vdmVDbGllbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2U6OmRlc3Ryb3lEZWNvZGVkRGF0YUlmTmVlZGVk
KToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2U6
OmRlY29kZWREYXRhRGVsZXRpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUv
Q2FjaGVkUmVzb3VyY2UuaDoKKyAgICAgICAgKENhY2hlZFJlc291cmNlKToKKyAgICAgICAgKiBs
b2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFNj
cmlwdDo6Q2FjaGVkU2NyaXB0KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0
Lmg6CisgICAgICAgIChDYWNoZWRTY3JpcHQpOgorCiAyMDEyLTA3LTI1ICBNaWNoYWVsIFNhYm9m
ZiAgPG1zYWJvZmZAYXBwbGUuY29tPgogCiAgICAgICAgIENvbnZlcnQgSFRNTCBwYXJzZXIgdG8g
aGFuZGxlIDgtYml0IHJlc291cmNlcyB3aXRob3V0IGNvbnZlcnRpbmcgdG8gVUNoYXIqCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHAK
aW5kZXggNjE3MzJiMTE1Mjg5ODVjMTk3MTFhNzQwYmQ2NzFhYmVmZTU3YmUzNi4uZTFmYjAyY2Zh
Y2ZmZjAyZWEyMThjMjJiZmE4Njg3OTQ0ODFhZmQxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcApAQCAtNDMsNyArNDMsNiBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBDYWNoZWRDU1NTdHlsZVNoZWV0OjpDYWNoZWRDU1NTdHls
ZVNoZWV0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1ZXN0LCBjb25zdCBTdHJp
bmcmIGNoYXJzZXQpCiAgICAgOiBDYWNoZWRSZXNvdXJjZShyZXNvdXJjZVJlcXVlc3QsIENTU1N0
eWxlU2hlZXQpCiAgICAgLCBtX2RlY29kZXIoVGV4dFJlc291cmNlRGVjb2Rlcjo6Y3JlYXRlKCJ0
ZXh0L2NzcyIsIGNoYXJzZXQpKQotICAgICwgbV9kZWNvZGVkRGF0YURlbGV0aW9uVGltZXIodGhp
cywgJkNhY2hlZENTU1N0eWxlU2hlZXQ6OmRlY29kZWREYXRhRGVsZXRpb25UaW1lckZpcmVkKQog
ewogICAgIC8vIFByZWZlciB0ZXh0L2NzcyBidXQgYWNjZXB0IGFueSB0eXBlIChkZWxsLmNvbSBz
ZXJ2ZXMgYSBzdHlsZXNoZWV0CiAgICAgLy8gYXMgdGV4dC9odG1sOyBzZWUgPGh0dHA6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNDUxPikuCkBAIC01OSwxNyArNTgsMTAgQEAg
Q2FjaGVkQ1NTU3R5bGVTaGVldDo6fkNhY2hlZENTU1N0eWxlU2hlZXQoKQogdm9pZCBDYWNoZWRD
U1NTdHlsZVNoZWV0OjpkaWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQqIGMpCiB7CiAg
ICAgQVNTRVJUKGMtPnJlc291cmNlQ2xpZW50VHlwZSgpID09IENhY2hlZFN0eWxlU2hlZXRDbGll
bnQ6OmV4cGVjdGVkVHlwZSgpKTsKLSAgICBpZiAobV9kZWNvZGVkRGF0YURlbGV0aW9uVGltZXIu
aXNBY3RpdmUoKSkKLSAgICAgICAgbV9kZWNvZGVkRGF0YURlbGV0aW9uVGltZXIuc3RvcCgpOwot
CiAgICAgaWYgKCFpc0xvYWRpbmcoKSkKICAgICAgICAgc3RhdGljX2Nhc3Q8Q2FjaGVkU3R5bGVT
aGVldENsaWVudCo+KGMpLT5zZXRDU1NTdHlsZVNoZWV0KG1fcmVzb3VyY2VSZXF1ZXN0LnVybCgp
LCBtX3Jlc3BvbnNlLnVybCgpLCBtX2RlY29kZXItPmVuY29kaW5nKCkubmFtZSgpLCB0aGlzKTsK
LX0KIAotdm9pZCBDYWNoZWRDU1NTdHlsZVNoZWV0OjphbGxDbGllbnRzUmVtb3ZlZCgpCi17Ci0g
ICAgaWYgKGRvdWJsZSBpbnRlcnZhbCA9IG1lbW9yeUNhY2hlKCktPmRlYWREZWNvZGVkRGF0YURl
bGV0aW9uSW50ZXJ2YWwoKSkKLSAgICAgICAgbV9kZWNvZGVkRGF0YURlbGV0aW9uVGltZXIuc3Rh
cnRPbmVTaG90KGludGVydmFsKTsKKyAgICBDYWNoZWRSZXNvdXJjZTo6ZGlkQWRkQ2xpZW50KGMp
OwogfQogCiB2b2lkIENhY2hlZENTU1N0eWxlU2hlZXQ6OnNldEVuY29kaW5nKGNvbnN0IFN0cmlu
ZyYgY2hzKQpAQCAtMTcyLDExICsxNjQsNiBAQCB2b2lkIENhY2hlZENTU1N0eWxlU2hlZXQ6OmRl
c3Ryb3lEZWNvZGVkRGF0YSgpCiAgICAgICAgIG1ha2VQdXJnZWFibGUodHJ1ZSk7CiB9CiAKLXZv
aWQgQ2FjaGVkQ1NTU3R5bGVTaGVldDo6ZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmlyZWQoVGlt
ZXI8Q2FjaGVkQ1NTU3R5bGVTaGVldD4qKQotewotICAgIGRlc3Ryb3lEZWNvZGVkRGF0YSgpOwot
fQotCiBQYXNzUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4gQ2FjaGVkQ1NTU3R5bGVTaGVldDo6
cmVzdG9yZVBhcnNlZFN0eWxlU2hlZXQoY29uc3QgQ1NTUGFyc2VyQ29udGV4dCYgY29udGV4dCkK
IHsKICAgICBpZiAoIW1fcGFyc2VkU3R5bGVTaGVldENhY2hlKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuaCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmgKaW5kZXggOWY1MWYzMGFhYTBi
ODdjNGFkNWJjNjdhM2JmOWE2YTA3ZWUyMDUxNC4uOWFkNmYxNGJhMjM2OTg3OGU0ZTYxOGUyNmYy
ODc1ZWRlZjI1YjllOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZENTU1N0eWxlU2hlZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkQ1NTU3R5bGVTaGVldC5oCkBAIC0yNyw3ICsyNyw2IEBACiAjZGVmaW5lIENhY2hlZENTU1N0
eWxlU2hlZXRfaAogCiAjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2UuaCIKLSNpbmNsdWRlICJUaW1l
ci5oIgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAt
NDcsOCArNDYsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAgdmlydHVhbCB2b2lk
IGRpZEFkZENsaWVudChDYWNoZWRSZXNvdXJjZUNsaWVudCopOwogICAgICAgICAKLSAgICAgICAg
dmlydHVhbCB2b2lkIGFsbENsaWVudHNSZW1vdmVkKCk7Ci0KICAgICAgICAgdmlydHVhbCB2b2lk
IHNldEVuY29kaW5nKGNvbnN0IFN0cmluZyYpOwogICAgICAgICB2aXJ0dWFsIFN0cmluZyBlbmNv
ZGluZygpIGNvbnN0OwogICAgICAgICB2aXJ0dWFsIHZvaWQgZGF0YShQYXNzUmVmUHRyPFNoYXJl
ZEJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpOwpAQCAtNjIsMTQgKzU5LDEyIEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBzYXZlUGFyc2VkU3R5bGVTaGVldChQ
YXNzUmVmUHRyPFN0eWxlU2hlZXRDb250ZW50cz4pOwogICAgIAogICAgIHByaXZhdGU6Ci0gICAg
ICAgIHZvaWQgZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmlyZWQoVGltZXI8Q2FjaGVkQ1NTU3R5
bGVTaGVldD4qKTsKICAgICAgICAgYm9vbCBjYW5Vc2VTaGVldChib29sIGVuZm9yY2VNSU1FVHlw
ZSwgYm9vbCogaGFzVmFsaWRNSU1FVHlwZSkgY29uc3Q7CiAgICAgICAgIHZpcnR1YWwgUHVyZ2VQ
cmlvcml0eSBwdXJnZVByaW9yaXR5KCkgY29uc3QgeyByZXR1cm4gUHVyZ2VMYXN0OyB9CiAKICAg
ICBwcm90ZWN0ZWQ6CiAgICAgICAgIFJlZlB0cjxUZXh0UmVzb3VyY2VEZWNvZGVyPiBtX2RlY29k
ZXI7CiAgICAgICAgIFN0cmluZyBtX2RlY29kZWRTaGVldFRleHQ7Ci0gICAgICAgIFRpbWVyPENh
Y2hlZENTU1N0eWxlU2hlZXQ+IG1fZGVjb2RlZERhdGFEZWxldGlvblRpbWVyOwogCiAgICAgICAg
IFJlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IG1fcGFyc2VkU3R5bGVTaGVldENhY2hlOwogICAg
IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkSW1hZ2Uu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmNwcAppbmRleCBm
YjMxZjFiYWY1N2RhMGYxMjM5Y2FiZmE3Yjg2ZTdkMDcxMjk3ZDcyLi4zMTM0NzVjZTFiZjZkZTMw
OWIxOWEzZTFhODVhOWNhMjM1NTA2YWQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkSW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRJbWFnZS5jcHAKQEAgLTU3LDcgKzU3LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
Q2FjaGVkSW1hZ2U6OkNhY2hlZEltYWdlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VS
ZXF1ZXN0KQogICAgIDogQ2FjaGVkUmVzb3VyY2UocmVzb3VyY2VSZXF1ZXN0LCBJbWFnZVJlc291
cmNlKQogICAgICwgbV9pbWFnZSgwKQotICAgICwgbV9kZWNvZGVkRGF0YURlbGV0aW9uVGltZXIo
dGhpcywgJkNhY2hlZEltYWdlOjpkZWNvZGVkRGF0YURlbGV0aW9uVGltZXJGaXJlZCkKICAgICAs
IG1fc2hvdWxkUGFpbnRCcm9rZW5JbWFnZSh0cnVlKQogewogICAgIHNldFN0YXR1cyhVbmtub3du
KTsKQEAgLTY2LDcgKzY1LDYgQEAgQ2FjaGVkSW1hZ2U6OkNhY2hlZEltYWdlKGNvbnN0IFJlc291
cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1ZXN0KQogQ2FjaGVkSW1hZ2U6OkNhY2hlZEltYWdlKElt
YWdlKiBpbWFnZSkKICAgICA6IENhY2hlZFJlc291cmNlKFJlc291cmNlUmVxdWVzdCgpLCBJbWFn
ZVJlc291cmNlKQogICAgICwgbV9pbWFnZShpbWFnZSkKLSAgICAsIG1fZGVjb2RlZERhdGFEZWxl
dGlvblRpbWVyKHRoaXMsICZDYWNoZWRJbWFnZTo6ZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmly
ZWQpCiAgICAgLCBtX3Nob3VsZFBhaW50QnJva2VuSW1hZ2UodHJ1ZSkKIHsKICAgICBzZXRTdGF0
dXMoQ2FjaGVkKTsKQEAgLTc4LDEyICs3Niw2IEBAIENhY2hlZEltYWdlOjp+Q2FjaGVkSW1hZ2Uo
KQogICAgIGNsZWFySW1hZ2UoKTsKIH0KIAotdm9pZCBDYWNoZWRJbWFnZTo6ZGVjb2RlZERhdGFE
ZWxldGlvblRpbWVyRmlyZWQoVGltZXI8Q2FjaGVkSW1hZ2U+KikKLXsKLSAgICBBU1NFUlQoIWhh
c0NsaWVudHMoKSk7Ci0gICAgZGVzdHJveURlY29kZWREYXRhKCk7Ci19Ci0KIHZvaWQgQ2FjaGVk
SW1hZ2U6OmxvYWQoQ2FjaGVkUmVzb3VyY2VMb2FkZXIqIGNhY2hlZFJlc291cmNlTG9hZGVyLCBj
b25zdCBSZXNvdXJjZUxvYWRlck9wdGlvbnMmIG9wdGlvbnMpCiB7CiAgICAgaWYgKCFjYWNoZWRS
ZXNvdXJjZUxvYWRlciB8fCBjYWNoZWRSZXNvdXJjZUxvYWRlci0+YXV0b0xvYWRJbWFnZXMoKSkK
QEAgLTk0LDkgKzg2LDYgQEAgdm9pZCBDYWNoZWRJbWFnZTo6bG9hZChDYWNoZWRSZXNvdXJjZUxv
YWRlciogY2FjaGVkUmVzb3VyY2VMb2FkZXIsIGNvbnN0IFJlc291cmMKIAogdm9pZCBDYWNoZWRJ
bWFnZTo6ZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50KiBjKQogewotICAgIGlmICht
X2RlY29kZWREYXRhRGVsZXRpb25UaW1lci5pc0FjdGl2ZSgpKQotICAgICAgICBtX2RlY29kZWRE
YXRhRGVsZXRpb25UaW1lci5zdG9wKCk7Ci0gICAgCiAgICAgaWYgKG1fZGF0YSAmJiAhbV9pbWFn
ZSAmJiAhZXJyb3JPY2N1cnJlZCgpKSB7CiAgICAgICAgIGNyZWF0ZUltYWdlKCk7CiAgICAgICAg
IG1faW1hZ2UtPnNldERhdGEobV9kYXRhLCB0cnVlKTsKQEAgLTEyNCw4ICsxMTMsNiBAQCB2b2lk
IENhY2hlZEltYWdlOjphbGxDbGllbnRzUmVtb3ZlZCgpCiB7CiAgICAgaWYgKG1faW1hZ2UgJiYg
IWVycm9yT2NjdXJyZWQoKSkKICAgICAgICAgbV9pbWFnZS0+cmVzZXRBbmltYXRpb24oKTsKLSAg
ICBpZiAoZG91YmxlIGludGVydmFsID0gbWVtb3J5Q2FjaGUoKS0+ZGVhZERlY29kZWREYXRhRGVs
ZXRpb25JbnRlcnZhbCgpKQotICAgICAgICBtX2RlY29kZWREYXRhRGVsZXRpb25UaW1lci5zdGFy
dE9uZVNob3QoaW50ZXJ2YWwpOwogfQogCiBwYWlyPEltYWdlKiwgZmxvYXQ+IENhY2hlZEltYWdl
Ojpicm9rZW5JbWFnZShmbG9hdCBkZXZpY2VTY2FsZUZhY3RvcikgY29uc3QKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRJbWFnZS5oIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmgKaW5kZXggOWUzOTIxMTc0MzRmZjY0NGI4N2I3
MDJjMDc2NWM2MTY3OTI1YWI2Ny4uYjk5MjE1MTczNThiYzExYTNiYjJjZGMyZTM0YWIwNjUzZDRj
MzZhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmgKQEAgLTI4
LDcgKzI4LDYgQEAKICNpbmNsdWRlICJTVkdJbWFnZUNhY2hlLmgiCiAjaW5jbHVkZSAiSW1hZ2VP
YnNlcnZlci5oIgogI2luY2x1ZGUgIkludFJlY3QuaCIKLSNpbmNsdWRlICJUaW1lci5oIgogI2lu
Y2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMTA0LDcgKzEw
Myw2IEBAIHByaXZhdGU6CiAgICAgc2l6ZV90IG1heGltdW1EZWNvZGVkSW1hZ2VTaXplKCk7CiAg
ICAgLy8gSWYgbm90IG51bGwsIGNoYW5nZVJlY3QgaXMgdGhlIGNoYW5nZWQgcGFydCBvZiB0aGUg
aW1hZ2UuCiAgICAgdm9pZCBub3RpZnlPYnNlcnZlcnMoY29uc3QgSW50UmVjdCogY2hhbmdlUmVj
dCA9IDApOwotICAgIHZvaWQgZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmlyZWQoVGltZXI8Q2Fj
aGVkSW1hZ2U+Kik7CiAgICAgdmlydHVhbCBQdXJnZVByaW9yaXR5IHB1cmdlUHJpb3JpdHkoKSBj
b25zdCB7IHJldHVybiBQdXJnZUZpcnN0OyB9CiAgICAgdm9pZCBjaGVja1Nob3VsZFBhaW50QnJv
a2VuSW1hZ2UoKTsKIApAQCAtMTEyLDcgKzExMCw2IEBAIHByaXZhdGU6CiAjaWYgRU5BQkxFKFNW
RykKICAgICBPd25QdHI8U1ZHSW1hZ2VDYWNoZT4gbV9zdmdJbWFnZUNhY2hlOwogI2VuZGlmCi0g
ICAgVGltZXI8Q2FjaGVkSW1hZ2U+IG1fZGVjb2RlZERhdGFEZWxldGlvblRpbWVyOwogICAgIGJv
b2wgbV9zaG91bGRQYWludEJyb2tlbkltYWdlOwogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKaW5kZXggMzk5OGVmZDMyNjMzM2ZhYjIyYTUz
ZGM0ZmRhNDAyMmY4ZTM5OGI1NC4uNTY4ZDMzMTRjMDY3MDVjNGUyMGJmZGU0NTQ4OWZjMmEyZGYz
NmMzZiAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291
cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2Uu
Y3BwCkBAIC0xMzYsNiArMTM2LDcgQEAgQ2FjaGVkUmVzb3VyY2U6OkNhY2hlZFJlc291cmNlKGNv
bnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgVHlwZSB0eXBlKQogICAgIDogbV9yZXNvdXJj
ZVJlcXVlc3QocmVxdWVzdCkKICAgICAsIG1fbG9hZFByaW9yaXR5KGRlZmF1bHRQcmlvcml0eUZv
clJlc291cmNlVHlwZSh0eXBlKSkKICAgICAsIG1fcmVzcG9uc2VUaW1lc3RhbXAoY3VycmVudFRp
bWUoKSkKKyAgICAsIG1fZGVjb2RlZERhdGFEZWxldGlvblRpbWVyKHRoaXMsICZDYWNoZWRSZXNv
dXJjZTo6ZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmlyZWQpCiAgICAgLCBtX2xhc3REZWNvZGVk
QWNjZXNzVGltZSgwKQogICAgICwgbV9sb2FkRmluaXNoVGltZSgwKQogICAgICwgbV9lbmNvZGVk
U2l6ZSgwKQpAQCAtMzgwLDYgKzM4MSw5IEBAIHZvaWQgQ2FjaGVkUmVzb3VyY2U6OmFkZENsaWVu
dChDYWNoZWRSZXNvdXJjZUNsaWVudCogY2xpZW50KQogCiB2b2lkIENhY2hlZFJlc291cmNlOjpk
aWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQqIGMpCiB7CisgICAgaWYgKG1fZGVjb2Rl
ZERhdGFEZWxldGlvblRpbWVyLmlzQWN0aXZlKCkpCisgICAgICAgIG1fZGVjb2RlZERhdGFEZWxl
dGlvblRpbWVyLnN0b3AoKTsKKwogICAgIGlmIChtX2NsaWVudHNBd2FpdGluZ0NhbGxiYWNrLmNv
bnRhaW5zKGMpKSB7CiAgICAgICAgIG1fY2xpZW50cy5hZGQoYyk7CiAgICAgICAgIG1fY2xpZW50
c0F3YWl0aW5nQ2FsbGJhY2sucmVtb3ZlKGMpOwpAQCAtNDM2LDYgKzQ0MCw3IEBAIHZvaWQgQ2Fj
aGVkUmVzb3VyY2U6OnJlbW92ZUNsaWVudChDYWNoZWRSZXNvdXJjZUNsaWVudCogY2xpZW50KQog
ICAgICAgICBtZW1vcnlDYWNoZSgpLT5yZW1vdmVGcm9tTGl2ZVJlc291cmNlc1NpemUodGhpcyk7
CiAgICAgICAgIG1lbW9yeUNhY2hlKCktPnJlbW92ZUZyb21MaXZlRGVjb2RlZFJlc291cmNlc0xp
c3QodGhpcyk7CiAgICAgICAgIGFsbENsaWVudHNSZW1vdmVkKCk7CisgICAgICAgIGRlc3Ryb3lE
ZWNvZGVkRGF0YUlmTmVlZGVkKCk7CiAgICAgICAgIGlmIChyZXNwb25zZSgpLmNhY2hlQ29udHJv
bENvbnRhaW5zTm9TdG9yZSgpKSB7CiAgICAgICAgICAgICAvLyBSRkMyNjE2IDE0LjkuMjoKICAg
ICAgICAgICAgIC8vICJuby1zdG9yZTogLi4uIE1VU1QgbWFrZSBhIGJlc3QtZWZmb3J0IGF0dGVt
cHQgdG8gcmVtb3ZlIHRoZSBpbmZvcm1hdGlvbiBmcm9tIHZvbGF0aWxlIHN0b3JhZ2UgYXMgcHJv
bXB0bHkgYXMgcG9zc2libGUiCkBAIC00NDksNiArNDU0LDIxIEBAIHZvaWQgQ2FjaGVkUmVzb3Vy
Y2U6OnJlbW92ZUNsaWVudChDYWNoZWRSZXNvdXJjZUNsaWVudCogY2xpZW50KQogICAgIC8vIFRo
aXMgb2JqZWN0IG1heSBiZSBkZWFkIGhlcmUuCiB9CiAKK3ZvaWQgQ2FjaGVkUmVzb3VyY2U6OmRl
c3Ryb3lEZWNvZGVkRGF0YUlmTmVlZGVkKCkKK3sKKyAgICBpZiAoIW1fZGVjb2RlZFNpemUpCisg
ICAgICAgIHJldHVybjsKKworICAgIGlmIChkb3VibGUgaW50ZXJ2YWwgPSBtZW1vcnlDYWNoZSgp
LT5kZWFkRGVjb2RlZERhdGFEZWxldGlvbkludGVydmFsKCkpCisgICAgICAgIG1fZGVjb2RlZERh
dGFEZWxldGlvblRpbWVyLnN0YXJ0T25lU2hvdChpbnRlcnZhbCk7Cit9CisKK3ZvaWQgQ2FjaGVk
UmVzb3VyY2U6OmRlY29kZWREYXRhRGVsZXRpb25UaW1lckZpcmVkKFRpbWVyPENhY2hlZFJlc291
cmNlPiopCit7CisgICAgQVNTRVJUKCFoYXNDbGllbnRzKCkpOworICAgIGRlc3Ryb3lEZWNvZGVk
RGF0YSgpOworfQorCiB2b2lkIENhY2hlZFJlc291cmNlOjpkZWxldGVJZlBvc3NpYmxlKCkKIHsK
ICAgICBpZiAoY2FuRGVsZXRlKCkgJiYgIWluQ2FjaGUoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKaW5kZXggN2ZiZjczMzY1ODU1YjM4YTcwNTNjNTky
ZGI2MDZmOGYxZWQyYTg0YS4uMTYxZGQ0MzgzYjE5ZjIzMTFmNTM0NDg3MzZmNmZiYTJmNmJhN2Mw
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNl
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKQEAg
LTEyOCw2ICsxMjgsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGRpZEFkZENsaWVudChD
YWNoZWRSZXNvdXJjZUNsaWVudCopOwogICAgIHZpcnR1YWwgdm9pZCBkaWRSZW1vdmVDbGllbnQo
Q2FjaGVkUmVzb3VyY2VDbGllbnQqKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgYWxsQ2xpZW50c1Jl
bW92ZWQoKSB7IH0KKyAgICB2b2lkIGRlc3Ryb3lEZWNvZGVkRGF0YUlmTmVlZGVkKCk7CiAKICAg
ICB1bnNpZ25lZCBjb3VudCgpIGNvbnN0IHsgcmV0dXJuIG1fY2xpZW50cy5zaXplKCk7IH0KIApA
QCAtMjg2LDkgKzI4NywxMSBAQCBwcm90ZWN0ZWQ6CiAKICAgICBSZWZQdHI8U2hhcmVkQnVmZmVy
PiBtX2RhdGE7CiAgICAgT3duUHRyPFB1cmdlYWJsZUJ1ZmZlcj4gbV9wdXJnZWFibGVEYXRhOwor
ICAgIFRpbWVyPENhY2hlZFJlc291cmNlPiBtX2RlY29kZWREYXRhRGVsZXRpb25UaW1lcjsKIAog
cHJpdmF0ZToKICAgICBib29sIGFkZENsaWVudFRvU2V0KENhY2hlZFJlc291cmNlQ2xpZW50Kik7
CisgICAgdm9pZCBkZWNvZGVkRGF0YURlbGV0aW9uVGltZXJGaXJlZChUaW1lcjxDYWNoZWRSZXNv
dXJjZT4qKTsKIAogICAgIHZpcnR1YWwgUHVyZ2VQcmlvcml0eSBwdXJnZVByaW9yaXR5KCkgY29u
c3QgeyByZXR1cm4gUHVyZ2VEZWZhdWx0OyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFNjcmlwdC5jcHAKaW5kZXggODM3NTFlY2E3YzAyMDcyMjBkMDA3MzI4YTY3MGZl
MTgzNGQ5MWQ0Ny4uMDg2ZmExYjNiZDYwNTZkMzYxZDU0NGQwNzQ3YTdlMWUyMGI3ZWRlZiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKQEAgLTQzLDcg
KzQzLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogQ2FjaGVkU2NyaXB0OjpDYWNoZWRTY3JpcHQo
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXNvdXJjZVJlcXVlc3QsIGNvbnN0IFN0cmluZyYgY2hh
cnNldCkKICAgICA6IENhY2hlZFJlc291cmNlKHJlc291cmNlUmVxdWVzdCwgU2NyaXB0KQogICAg
ICwgbV9kZWNvZGVyKFRleHRSZXNvdXJjZURlY29kZXI6OmNyZWF0ZSgiYXBwbGljYXRpb24vamF2
YXNjcmlwdCIsIGNoYXJzZXQpKQotICAgICwgbV9kZWNvZGVkRGF0YURlbGV0aW9uVGltZXIodGhp
cywgJkNhY2hlZFNjcmlwdDo6ZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmlyZWQpCiB7CiAgICAg
Ly8gSXQncyBqYXZhc2NyaXB0IHdlIHdhbnQuCiAgICAgLy8gQnV0IHNvbWUgd2Vic2l0ZXMgdGhp
bmsgdGhlaXIgc2NyaXB0cyBhcmUgPHNvbWUgd3JvbmcgbWltZXR5cGUgaGVyZT4KQEAgLTU1LDIw
ICs1NCw2IEBAIENhY2hlZFNjcmlwdDo6fkNhY2hlZFNjcmlwdCgpCiB7CiB9CiAKLXZvaWQgQ2Fj
aGVkU2NyaXB0OjpkaWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQqIGMpCi17Ci0gICAg
aWYgKG1fZGVjb2RlZERhdGFEZWxldGlvblRpbWVyLmlzQWN0aXZlKCkpCi0gICAgICAgIG1fZGVj
b2RlZERhdGFEZWxldGlvblRpbWVyLnN0b3AoKTsKLQotICAgIENhY2hlZFJlc291cmNlOjpkaWRB
ZGRDbGllbnQoYyk7Ci19Ci0KLXZvaWQgQ2FjaGVkU2NyaXB0OjphbGxDbGllbnRzUmVtb3ZlZCgp
Ci17Ci0gICAgaWYgKGRvdWJsZSBpbnRlcnZhbCA9IG1lbW9yeUNhY2hlKCktPmRlYWREZWNvZGVk
RGF0YURlbGV0aW9uSW50ZXJ2YWwoKSkKLSAgICAgICAgbV9kZWNvZGVkRGF0YURlbGV0aW9uVGlt
ZXIuc3RhcnRPbmVTaG90KGludGVydmFsKTsKLX0KLQogdm9pZCBDYWNoZWRTY3JpcHQ6OnNldEVu
Y29kaW5nKGNvbnN0IFN0cmluZyYgY2hzKQogewogICAgIG1fZGVjb2Rlci0+c2V0RW5jb2Rpbmco
Y2hzLCBUZXh0UmVzb3VyY2VEZWNvZGVyOjpFbmNvZGluZ0Zyb21IVFRQSGVhZGVyKTsKQEAgLTEy
NywxMSArMTEyLDYgQEAgdm9pZCBDYWNoZWRTY3JpcHQ6OmRlc3Ryb3lEZWNvZGVkRGF0YSgpCiAg
ICAgICAgIG1ha2VQdXJnZWFibGUodHJ1ZSk7CiB9CiAKLXZvaWQgQ2FjaGVkU2NyaXB0OjpkZWNv
ZGVkRGF0YURlbGV0aW9uVGltZXJGaXJlZChUaW1lcjxDYWNoZWRTY3JpcHQ+KikKLXsKLSAgICBk
ZXN0cm95RGVjb2RlZERhdGEoKTsKLX0KLQogI2lmIFVTRShKU0MpCiBKU0M6OlNvdXJjZVByb3Zp
ZGVyQ2FjaGUqIENhY2hlZFNjcmlwdDo6c291cmNlUHJvdmlkZXJDYWNoZSgpIGNvbnN0CiB7ICAg
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmgKaW5kZXggMWE3NmMx
OGY0NjdlNDBiZDA1OTM2MGQxZGYzNzgwYmZmNzkxNGRhZi4uOWE0ZjM4YWQwYjNmN2JmZTMxZTc0
Nzg3N2Q0Y2VmNTY5NDI1ODJiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFNjcmlwdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRTY3JpcHQuaApAQCAtMjcsNyArMjcsNiBAQAogI2RlZmluZSBDYWNoZWRTY3JpcHRfaAogCiAj
aW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2UuaCIKLSNpbmNsdWRlICJUaW1lci5oIgogCiAjaWYgVVNF
KEpTQykKIG5hbWVzcGFjZSBKU0MgewpAQCAtNDcsOSArNDYsNiBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKICAgICAgICAgY29uc3QgU3RyaW5nJiBzY3JpcHQoKTsKIAotICAgICAgICB2aXJ0dWFs
IHZvaWQgZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50Kik7Ci0gICAgICAgIHZpcnR1
YWwgdm9pZCBhbGxDbGllbnRzUmVtb3ZlZCgpOwotCiAgICAgICAgIHZpcnR1YWwgdm9pZCBzZXRF
bmNvZGluZyhjb25zdCBTdHJpbmcmKTsKICAgICAgICAgdmlydHVhbCBTdHJpbmcgZW5jb2Rpbmco
KSBjb25zdDsKICAgICAgICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0cjxTaGFyZWRCdWZm
ZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKTsKQEAgLTYyLDEyICs1OCwxMCBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZvaWQgc291cmNlUHJvdmlkZXJDYWNoZVNpemVDaGFu
Z2VkKGludCBkZWx0YSk7CiAjZW5kaWYKICAgICBwcml2YXRlOgotICAgICAgICB2b2lkIGRlY29k
ZWREYXRhRGVsZXRpb25UaW1lckZpcmVkKFRpbWVyPENhY2hlZFNjcmlwdD4qKTsKICAgICAgICAg
dmlydHVhbCBQdXJnZVByaW9yaXR5IHB1cmdlUHJpb3JpdHkoKSBjb25zdCB7IHJldHVybiBQdXJn
ZUxhc3Q7IH0KIAogICAgICAgICBTdHJpbmcgbV9zY3JpcHQ7CiAgICAgICAgIFJlZlB0cjxUZXh0
UmVzb3VyY2VEZWNvZGVyPiBtX2RlY29kZXI7Ci0gICAgICAgIFRpbWVyPENhY2hlZFNjcmlwdD4g
bV9kZWNvZGVkRGF0YURlbGV0aW9uVGltZXI7CiAjaWYgVVNFKEpTQykgICAgICAgIAogICAgICAg
ICBtdXRhYmxlIE93blB0cjxKU0M6OlNvdXJjZVByb3ZpZGVyQ2FjaGU+IG1fc291cmNlUHJvdmlk
ZXJDYWNoZTsKICNlbmRpZgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>154815</attachid>
            <date>2012-07-26 19:37:28 -0700</date>
            <delta_ts>2012-07-27 01:25:58 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-92332-20120727113709.patch</filename>
            <type>text/plain</type>
            <size>14654</size>
            <attacher name="Kwang Yul Seo">skyul</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIzODMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWJkYzRkMTQ1YjQyMjI1
ZTFkMWI1NTkxNzNmYmQ2OWY4ZGRjN2I1OC4uYjZjMDE4ZTk4OTAwZTNkYTZjZTMwODUxMDdkMWYy
ODlkMjA1NDFiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDEyLTA3LTI2ICBIdWFu
ZyBEb25nc3VuZyAgPGx1eHRlbGxhQGNvbXBhbnkxMDAubmV0PgorCisgICAgICAgIEdhdGhlciB0
aGUgZHVwbGljYXRlZCB0aW1lciBjb2RlIGludG8gQ2FjaGVkUmVzb3VyY2UuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MjMzMgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5hdGUgQ2hhcGluLgorCisgICAgICAgIEludGVybmFsIHJldmlldyBieSBKYWUg
SHl1biBQYXJrLgorCisgICAgICAgIFdoZW4gYWxsIGNsaWVudHMgYXJlIHJlbW92ZWQsIENhY2hl
ZEltYWdlLCBDYWNoZWRTY3JpcHQgYW5kIENhY2hlZENTU1N0eWxlU2hlZXQKKyAgICAgICAgc3Rh
cnQgdGhlIHRpbWVyIHRvIGRlc3Ryb3kgZGVjb2RlZCBkYXRhLiBUaG9zZSB0aHJlZSBjbGFzc2Vz
IGhhdmUgdGhlaXIgb3duCisgICAgICAgIHRpbWVyLgorICAgICAgICBDaGFuZ2VkIENhY2hlZENT
U1N0eWxlU2hlZXQ6OmRpZEFkZENsaWVudCB0byBjYWxsIHN1cGVyIGNsYXNzIG1ldGhvZCBpbiBv
cmRlciB0bworICAgICAgICBzdG9wIHRoZSB0aW1lci4gVGhpcyBjaGFuZ2UgZG9lcyBub3QgaGF2
ZSBhbnkgc2lkZSBlZmZlY3QgYmVjYXVzZQorICAgICAgICBDYWNoZWRSZXNvdXJjZTo6ZGlkQWRk
Q2xpZW50IG9ubHkgc3RvcHMgdGhlIHRpbWVyIGluIHRoaXMgY2FzZS4KKworICAgICAgICBObyBu
ZXcgdGVzdHMgLSBubyBuZXcgdGVzdGFibGUgZnVuY3Rpb25hbGl0eS4KKworICAgICAgICAqIGxv
YWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNh
Y2hlZENTU1N0eWxlU2hlZXQ6OkNhY2hlZENTU1N0eWxlU2hlZXQpOgorICAgICAgICAoV2ViQ29y
ZTo6Q2FjaGVkQ1NTU3R5bGVTaGVldDo6ZGlkQWRkQ2xpZW50KToKKyAgICAgICAgKiBsb2FkZXIv
Y2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oOgorICAgICAgICAoQ2FjaGVkQ1NTU3R5bGVTaGVl
dCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNhY2hlZEltYWdlOjpDYWNoZWRJbWFnZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNo
ZWRJbWFnZTo6ZGlkQWRkQ2xpZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZEltYWdlOjph
bGxDbGllbnRzUmVtb3ZlZCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmg6
CisgICAgICAgIChDYWNoZWRJbWFnZSk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJl
c291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpDYWNoZWRSZXNv
dXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZTo6ZGlkQWRkQ2xpZW50KToK
KyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpyZW1vdmVDbGllbnQpOgorICAgICAg
ICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2U6OmRlc3Ryb3lEZWNvZGVkRGF0YUlmTmVlZGVkKToK
KyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2U6OmRl
Y29kZWREYXRhRGVsZXRpb25UaW1lckZpcmVkKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2Fj
aGVkUmVzb3VyY2UuaDoKKyAgICAgICAgKENhY2hlZFJlc291cmNlKToKKyAgICAgICAgKiBsb2Fk
ZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFNjcmlw
dDo6Q2FjaGVkU2NyaXB0KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0Lmg6
CisgICAgICAgIChDYWNoZWRTY3JpcHQpOgorCiAyMDEyLTA3LTI2ICBBbmlzaCBCaGF5YW5pICA8
YW5pc2guYmhheWFuaUBnbWFpbC5jb20+CiAKICAgICAgICAgRGUtdmlydHVhbGl6ZSBXcmFwU2hh
cGUgY2xhc3NlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZENTU1N0eWxlU2hlZXQuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENT
U1N0eWxlU2hlZXQuY3BwCmluZGV4IDYxNzMyYjExNTI4OTg1YzE5NzExYTc0MGJkNjcxYWJlZmU1
N2JlMzYuLmUxZmIwMmNmYWNmZmYwMmVhMjE4YzIyYmZhODY4Nzk0NDgxYWZkMTUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHAK
QEAgLTQzLDcgKzQzLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogQ2FjaGVkQ1NTU3R5bGVTaGVl
dDo6Q2FjaGVkQ1NTU3R5bGVTaGVldChjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlc291cmNlUmVx
dWVzdCwgY29uc3QgU3RyaW5nJiBjaGFyc2V0KQogICAgIDogQ2FjaGVkUmVzb3VyY2UocmVzb3Vy
Y2VSZXF1ZXN0LCBDU1NTdHlsZVNoZWV0KQogICAgICwgbV9kZWNvZGVyKFRleHRSZXNvdXJjZURl
Y29kZXI6OmNyZWF0ZSgidGV4dC9jc3MiLCBjaGFyc2V0KSkKLSAgICAsIG1fZGVjb2RlZERhdGFE
ZWxldGlvblRpbWVyKHRoaXMsICZDYWNoZWRDU1NTdHlsZVNoZWV0OjpkZWNvZGVkRGF0YURlbGV0
aW9uVGltZXJGaXJlZCkKIHsKICAgICAvLyBQcmVmZXIgdGV4dC9jc3MgYnV0IGFjY2VwdCBhbnkg
dHlwZSAoZGVsbC5jb20gc2VydmVzIGEgc3R5bGVzaGVldAogICAgIC8vIGFzIHRleHQvaHRtbDsg
c2VlIDxodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTQ1MT4pLgpAQCAt
NTksMTcgKzU4LDEwIEBAIENhY2hlZENTU1N0eWxlU2hlZXQ6On5DYWNoZWRDU1NTdHlsZVNoZWV0
KCkKIHZvaWQgQ2FjaGVkQ1NTU3R5bGVTaGVldDo6ZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNl
Q2xpZW50KiBjKQogewogICAgIEFTU0VSVChjLT5yZXNvdXJjZUNsaWVudFR5cGUoKSA9PSBDYWNo
ZWRTdHlsZVNoZWV0Q2xpZW50OjpleHBlY3RlZFR5cGUoKSk7Ci0gICAgaWYgKG1fZGVjb2RlZERh
dGFEZWxldGlvblRpbWVyLmlzQWN0aXZlKCkpCi0gICAgICAgIG1fZGVjb2RlZERhdGFEZWxldGlv
blRpbWVyLnN0b3AoKTsKLQogICAgIGlmICghaXNMb2FkaW5nKCkpCiAgICAgICAgIHN0YXRpY19j
YXN0PENhY2hlZFN0eWxlU2hlZXRDbGllbnQqPihjKS0+c2V0Q1NTU3R5bGVTaGVldChtX3Jlc291
cmNlUmVxdWVzdC51cmwoKSwgbV9yZXNwb25zZS51cmwoKSwgbV9kZWNvZGVyLT5lbmNvZGluZygp
Lm5hbWUoKSwgdGhpcyk7Ci19CiAKLXZvaWQgQ2FjaGVkQ1NTU3R5bGVTaGVldDo6YWxsQ2xpZW50
c1JlbW92ZWQoKQotewotICAgIGlmIChkb3VibGUgaW50ZXJ2YWwgPSBtZW1vcnlDYWNoZSgpLT5k
ZWFkRGVjb2RlZERhdGFEZWxldGlvbkludGVydmFsKCkpCi0gICAgICAgIG1fZGVjb2RlZERhdGFE
ZWxldGlvblRpbWVyLnN0YXJ0T25lU2hvdChpbnRlcnZhbCk7CisgICAgQ2FjaGVkUmVzb3VyY2U6
OmRpZEFkZENsaWVudChjKTsKIH0KIAogdm9pZCBDYWNoZWRDU1NTdHlsZVNoZWV0OjpzZXRFbmNv
ZGluZyhjb25zdCBTdHJpbmcmIGNocykKQEAgLTE3MiwxMSArMTY0LDYgQEAgdm9pZCBDYWNoZWRD
U1NTdHlsZVNoZWV0OjpkZXN0cm95RGVjb2RlZERhdGEoKQogICAgICAgICBtYWtlUHVyZ2VhYmxl
KHRydWUpOwogfQogCi12b2lkIENhY2hlZENTU1N0eWxlU2hlZXQ6OmRlY29kZWREYXRhRGVsZXRp
b25UaW1lckZpcmVkKFRpbWVyPENhY2hlZENTU1N0eWxlU2hlZXQ+KikKLXsKLSAgICBkZXN0cm95
RGVjb2RlZERhdGEoKTsKLX0KLQogUGFzc1JlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IENhY2hl
ZENTU1N0eWxlU2hlZXQ6OnJlc3RvcmVQYXJzZWRTdHlsZVNoZWV0KGNvbnN0IENTU1BhcnNlckNv
bnRleHQmIGNvbnRleHQpCiB7CiAgICAgaWYgKCFtX3BhcnNlZFN0eWxlU2hlZXRDYWNoZSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oCmlu
ZGV4IDlmNTFmMzBhYWEwYjg3YzRhZDViYzY3YTNiZjlhNmEwN2VlMjA1MTQuLjlhZDZmMTRiYTIz
Njk4NzhlNGU2MThlMjZmMjg3NWVkZWYyNWI5ZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuaApAQCAtMjcsNyArMjcsNiBAQAogI2Rl
ZmluZSBDYWNoZWRDU1NTdHlsZVNoZWV0X2gKIAogI2luY2x1ZGUgIkNhY2hlZFJlc291cmNlLmgi
Ci0jaW5jbHVkZSAiVGltZXIuaCIKICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKQEAgLTQ3LDggKzQ2LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAg
ICAgIHZpcnR1YWwgdm9pZCBkaWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQqKTsKICAg
ICAgICAgCi0gICAgICAgIHZpcnR1YWwgdm9pZCBhbGxDbGllbnRzUmVtb3ZlZCgpOwotCiAgICAg
ICAgIHZpcnR1YWwgdm9pZCBzZXRFbmNvZGluZyhjb25zdCBTdHJpbmcmKTsKICAgICAgICAgdmly
dHVhbCBTdHJpbmcgZW5jb2RpbmcoKSBjb25zdDsKICAgICAgICAgdmlydHVhbCB2b2lkIGRhdGEo
UGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKTsKQEAg
LTYyLDE0ICs1OSwxMiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZvaWQgc2F2ZVBh
cnNlZFN0eWxlU2hlZXQoUGFzc1JlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+KTsKICAgICAKICAg
ICBwcml2YXRlOgotICAgICAgICB2b2lkIGRlY29kZWREYXRhRGVsZXRpb25UaW1lckZpcmVkKFRp
bWVyPENhY2hlZENTU1N0eWxlU2hlZXQ+Kik7CiAgICAgICAgIGJvb2wgY2FuVXNlU2hlZXQoYm9v
bCBlbmZvcmNlTUlNRVR5cGUsIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUpIGNvbnN0OwogICAgICAg
ICB2aXJ0dWFsIFB1cmdlUHJpb3JpdHkgcHVyZ2VQcmlvcml0eSgpIGNvbnN0IHsgcmV0dXJuIFB1
cmdlTGFzdDsgfQogCiAgICAgcHJvdGVjdGVkOgogICAgICAgICBSZWZQdHI8VGV4dFJlc291cmNl
RGVjb2Rlcj4gbV9kZWNvZGVyOwogICAgICAgICBTdHJpbmcgbV9kZWNvZGVkU2hlZXRUZXh0Owot
ICAgICAgICBUaW1lcjxDYWNoZWRDU1NTdHlsZVNoZWV0PiBtX2RlY29kZWREYXRhRGVsZXRpb25U
aW1lcjsKIAogICAgICAgICBSZWZQdHI8U3R5bGVTaGVldENvbnRlbnRzPiBtX3BhcnNlZFN0eWxl
U2hlZXRDYWNoZTsKICAgICB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZEltYWdlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRJ
bWFnZS5jcHAKaW5kZXggZmIzMWYxYmFmNTdkYTBmMTIzOWNhYmZhN2I4NmU3ZDA3MTI5N2Q3Mi4u
MzEzNDc1Y2UxYmY2ZGUzMDliMTlhM2UxYTg1YTljYTIzNTUwNmFkMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkSW1hZ2UuY3BwCkBAIC01Nyw3ICs1Nyw2IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIENhY2hlZEltYWdlOjpDYWNoZWRJbWFnZShjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlc291cmNlUmVxdWVzdCkKICAgICA6IENhY2hlZFJlc291cmNlKHJlc291cmNlUmVx
dWVzdCwgSW1hZ2VSZXNvdXJjZSkKICAgICAsIG1faW1hZ2UoMCkKLSAgICAsIG1fZGVjb2RlZERh
dGFEZWxldGlvblRpbWVyKHRoaXMsICZDYWNoZWRJbWFnZTo6ZGVjb2RlZERhdGFEZWxldGlvblRp
bWVyRmlyZWQpCiAgICAgLCBtX3Nob3VsZFBhaW50QnJva2VuSW1hZ2UodHJ1ZSkKIHsKICAgICBz
ZXRTdGF0dXMoVW5rbm93bik7CkBAIC02Niw3ICs2NSw2IEBAIENhY2hlZEltYWdlOjpDYWNoZWRJ
bWFnZShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlc291cmNlUmVxdWVzdCkKIENhY2hlZEltYWdl
OjpDYWNoZWRJbWFnZShJbWFnZSogaW1hZ2UpCiAgICAgOiBDYWNoZWRSZXNvdXJjZShSZXNvdXJj
ZVJlcXVlc3QoKSwgSW1hZ2VSZXNvdXJjZSkKICAgICAsIG1faW1hZ2UoaW1hZ2UpCi0gICAgLCBt
X2RlY29kZWREYXRhRGVsZXRpb25UaW1lcih0aGlzLCAmQ2FjaGVkSW1hZ2U6OmRlY29kZWREYXRh
RGVsZXRpb25UaW1lckZpcmVkKQogICAgICwgbV9zaG91bGRQYWludEJyb2tlbkltYWdlKHRydWUp
CiB7CiAgICAgc2V0U3RhdHVzKENhY2hlZCk7CkBAIC03OCwxMiArNzYsNiBAQCBDYWNoZWRJbWFn
ZTo6fkNhY2hlZEltYWdlKCkKICAgICBjbGVhckltYWdlKCk7CiB9CiAKLXZvaWQgQ2FjaGVkSW1h
Z2U6OmRlY29kZWREYXRhRGVsZXRpb25UaW1lckZpcmVkKFRpbWVyPENhY2hlZEltYWdlPiopCi17
Ci0gICAgQVNTRVJUKCFoYXNDbGllbnRzKCkpOwotICAgIGRlc3Ryb3lEZWNvZGVkRGF0YSgpOwot
fQotCiB2b2lkIENhY2hlZEltYWdlOjpsb2FkKENhY2hlZFJlc291cmNlTG9hZGVyKiBjYWNoZWRS
ZXNvdXJjZUxvYWRlciwgY29uc3QgUmVzb3VyY2VMb2FkZXJPcHRpb25zJiBvcHRpb25zKQogewog
ICAgIGlmICghY2FjaGVkUmVzb3VyY2VMb2FkZXIgfHwgY2FjaGVkUmVzb3VyY2VMb2FkZXItPmF1
dG9Mb2FkSW1hZ2VzKCkpCkBAIC05NCw5ICs4Niw2IEBAIHZvaWQgQ2FjaGVkSW1hZ2U6OmxvYWQo
Q2FjaGVkUmVzb3VyY2VMb2FkZXIqIGNhY2hlZFJlc291cmNlTG9hZGVyLCBjb25zdCBSZXNvdXJj
CiAKIHZvaWQgQ2FjaGVkSW1hZ2U6OmRpZEFkZENsaWVudChDYWNoZWRSZXNvdXJjZUNsaWVudCog
YykKIHsKLSAgICBpZiAobV9kZWNvZGVkRGF0YURlbGV0aW9uVGltZXIuaXNBY3RpdmUoKSkKLSAg
ICAgICAgbV9kZWNvZGVkRGF0YURlbGV0aW9uVGltZXIuc3RvcCgpOwotICAgIAogICAgIGlmICht
X2RhdGEgJiYgIW1faW1hZ2UgJiYgIWVycm9yT2NjdXJyZWQoKSkgewogICAgICAgICBjcmVhdGVJ
bWFnZSgpOwogICAgICAgICBtX2ltYWdlLT5zZXREYXRhKG1fZGF0YSwgdHJ1ZSk7CkBAIC0xMjQs
OCArMTEzLDYgQEAgdm9pZCBDYWNoZWRJbWFnZTo6YWxsQ2xpZW50c1JlbW92ZWQoKQogewogICAg
IGlmIChtX2ltYWdlICYmICFlcnJvck9jY3VycmVkKCkpCiAgICAgICAgIG1faW1hZ2UtPnJlc2V0
QW5pbWF0aW9uKCk7Ci0gICAgaWYgKGRvdWJsZSBpbnRlcnZhbCA9IG1lbW9yeUNhY2hlKCktPmRl
YWREZWNvZGVkRGF0YURlbGV0aW9uSW50ZXJ2YWwoKSkKLSAgICAgICAgbV9kZWNvZGVkRGF0YURl
bGV0aW9uVGltZXIuc3RhcnRPbmVTaG90KGludGVydmFsKTsKIH0KIAogcGFpcjxJbWFnZSosIGZs
b2F0PiBDYWNoZWRJbWFnZTo6YnJva2VuSW1hZ2UoZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IpIGNv
bnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkSW1hZ2Uu
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRJbWFnZS5oCmluZGV4IDllMzky
MTE3NDM0ZmY2NDRiODdiNzAyYzA3NjVjNjE2NzkyNWFiNjcuLmI5OTIxNTE3MzU4YmMxMWEzYmIy
Y2RjMmUzNGFiMDY1M2Q0YzM2YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9j
YWNoZS9DYWNoZWRJbWFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRJbWFnZS5oCkBAIC0yOCw3ICsyOCw2IEBACiAjaW5jbHVkZSAiU1ZHSW1hZ2VDYWNoZS5oIgog
I2luY2x1ZGUgIkltYWdlT2JzZXJ2ZXIuaCIKICNpbmNsdWRlICJJbnRSZWN0LmgiCi0jaW5jbHVk
ZSAiVGltZXIuaCIKICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKQEAgLTEwNCw3ICsxMDMsNiBAQCBwcml2YXRlOgogICAgIHNpemVfdCBtYXhpbXVtRGVjb2Rl
ZEltYWdlU2l6ZSgpOwogICAgIC8vIElmIG5vdCBudWxsLCBjaGFuZ2VSZWN0IGlzIHRoZSBjaGFu
Z2VkIHBhcnQgb2YgdGhlIGltYWdlLgogICAgIHZvaWQgbm90aWZ5T2JzZXJ2ZXJzKGNvbnN0IElu
dFJlY3QqIGNoYW5nZVJlY3QgPSAwKTsKLSAgICB2b2lkIGRlY29kZWREYXRhRGVsZXRpb25UaW1l
ckZpcmVkKFRpbWVyPENhY2hlZEltYWdlPiopOwogICAgIHZpcnR1YWwgUHVyZ2VQcmlvcml0eSBw
dXJnZVByaW9yaXR5KCkgY29uc3QgeyByZXR1cm4gUHVyZ2VGaXJzdDsgfQogICAgIHZvaWQgY2hl
Y2tTaG91bGRQYWludEJyb2tlbkltYWdlKCk7CiAKQEAgLTExMiw3ICsxMTAsNiBAQCBwcml2YXRl
OgogI2lmIEVOQUJMRShTVkcpCiAgICAgT3duUHRyPFNWR0ltYWdlQ2FjaGU+IG1fc3ZnSW1hZ2VD
YWNoZTsKICNlbmRpZgotICAgIFRpbWVyPENhY2hlZEltYWdlPiBtX2RlY29kZWREYXRhRGVsZXRp
b25UaW1lcjsKICAgICBib29sIG1fc2hvdWxkUGFpbnRCcm9rZW5JbWFnZTsKIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwCmluZGV4IDM5OThl
ZmQzMjYzMzNmYWIyMmE1M2RjNGZkYTQwMjJmOGUzOThiNTQuLjc0ZmE0OTRkNzk2YTIzNjQ1YmU3
OTgzZWVkNzRiZTM4OWFiOGI5NTggMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9j
YWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZFJlc291cmNlLmNwcApAQCAtMTM2LDYgKzEzNiw3IEBAIENhY2hlZFJlc291cmNlOjpD
YWNoZWRSZXNvdXJjZShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIFR5cGUgdHlwZSkK
ICAgICA6IG1fcmVzb3VyY2VSZXF1ZXN0KHJlcXVlc3QpCiAgICAgLCBtX2xvYWRQcmlvcml0eShk
ZWZhdWx0UHJpb3JpdHlGb3JSZXNvdXJjZVR5cGUodHlwZSkpCiAgICAgLCBtX3Jlc3BvbnNlVGlt
ZXN0YW1wKGN1cnJlbnRUaW1lKCkpCisgICAgLCBtX2RlY29kZWREYXRhRGVsZXRpb25UaW1lcih0
aGlzLCAmQ2FjaGVkUmVzb3VyY2U6OmRlY29kZWREYXRhRGVsZXRpb25UaW1lckZpcmVkKQogICAg
ICwgbV9sYXN0RGVjb2RlZEFjY2Vzc1RpbWUoMCkKICAgICAsIG1fbG9hZEZpbmlzaFRpbWUoMCkK
ICAgICAsIG1fZW5jb2RlZFNpemUoMCkKQEAgLTM4MCw2ICszODEsOSBAQCB2b2lkIENhY2hlZFJl
c291cmNlOjphZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQqIGNsaWVudCkKIAogdm9pZCBD
YWNoZWRSZXNvdXJjZTo6ZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50KiBjKQogewor
ICAgIGlmIChtX2RlY29kZWREYXRhRGVsZXRpb25UaW1lci5pc0FjdGl2ZSgpKQorICAgICAgICBt
X2RlY29kZWREYXRhRGVsZXRpb25UaW1lci5zdG9wKCk7CisKICAgICBpZiAobV9jbGllbnRzQXdh
aXRpbmdDYWxsYmFjay5jb250YWlucyhjKSkgewogICAgICAgICBtX2NsaWVudHMuYWRkKGMpOwog
ICAgICAgICBtX2NsaWVudHNBd2FpdGluZ0NhbGxiYWNrLnJlbW92ZShjKTsKQEAgLTQzNiw2ICs0
NDAsNyBAQCB2b2lkIENhY2hlZFJlc291cmNlOjpyZW1vdmVDbGllbnQoQ2FjaGVkUmVzb3VyY2VD
bGllbnQqIGNsaWVudCkKICAgICAgICAgbWVtb3J5Q2FjaGUoKS0+cmVtb3ZlRnJvbUxpdmVSZXNv
dXJjZXNTaXplKHRoaXMpOwogICAgICAgICBtZW1vcnlDYWNoZSgpLT5yZW1vdmVGcm9tTGl2ZURl
Y29kZWRSZXNvdXJjZXNMaXN0KHRoaXMpOwogICAgICAgICBhbGxDbGllbnRzUmVtb3ZlZCgpOwor
ICAgICAgICBkZXN0cm95RGVjb2RlZERhdGFJZk5lZWRlZCgpOwogICAgICAgICBpZiAocmVzcG9u
c2UoKS5jYWNoZUNvbnRyb2xDb250YWluc05vU3RvcmUoKSkgewogICAgICAgICAgICAgLy8gUkZD
MjYxNiAxNC45LjI6CiAgICAgICAgICAgICAvLyAibm8tc3RvcmU6IC4uLiBNVVNUIG1ha2UgYSBi
ZXN0LWVmZm9ydCBhdHRlbXB0IHRvIHJlbW92ZSB0aGUgaW5mb3JtYXRpb24gZnJvbSB2b2xhdGls
ZSBzdG9yYWdlIGFzIHByb21wdGx5IGFzIHBvc3NpYmxlIgpAQCAtNDQ5LDYgKzQ1NCwyMCBAQCB2
b2lkIENhY2hlZFJlc291cmNlOjpyZW1vdmVDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQqIGNs
aWVudCkKICAgICAvLyBUaGlzIG9iamVjdCBtYXkgYmUgZGVhZCBoZXJlLgogfQogCit2b2lkIENh
Y2hlZFJlc291cmNlOjpkZXN0cm95RGVjb2RlZERhdGFJZk5lZWRlZCgpCit7CisgICAgaWYgKCFt
X2RlY29kZWRTaXplKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoZG91YmxlIGludGVydmFs
ID0gbWVtb3J5Q2FjaGUoKS0+ZGVhZERlY29kZWREYXRhRGVsZXRpb25JbnRlcnZhbCgpKQorICAg
ICAgICBtX2RlY29kZWREYXRhRGVsZXRpb25UaW1lci5zdGFydE9uZVNob3QoaW50ZXJ2YWwpOwor
fQorCit2b2lkIENhY2hlZFJlc291cmNlOjpkZWNvZGVkRGF0YURlbGV0aW9uVGltZXJGaXJlZChU
aW1lcjxDYWNoZWRSZXNvdXJjZT4qKQoreworICAgIGRlc3Ryb3lEZWNvZGVkRGF0YSgpOworfQor
CiB2b2lkIENhY2hlZFJlc291cmNlOjpkZWxldGVJZlBvc3NpYmxlKCkKIHsKICAgICBpZiAoY2Fu
RGVsZXRlKCkgJiYgIWluQ2FjaGUoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZFJlc291cmNlLmgKaW5kZXggN2ZiZjczMzY1ODU1YjM4YTcwNTNjNTkyZGI2MDZmOGYxZWQy
YTg0YS4uMTYxZGQ0MzgzYjE5ZjIzMTFmNTM0NDg3MzZmNmZiYTJmNmJhN2MwOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKQEAgLTEyOCw2ICsxMjgs
NyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGRpZEFkZENsaWVudChDYWNoZWRSZXNvdXJj
ZUNsaWVudCopOwogICAgIHZpcnR1YWwgdm9pZCBkaWRSZW1vdmVDbGllbnQoQ2FjaGVkUmVzb3Vy
Y2VDbGllbnQqKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgYWxsQ2xpZW50c1JlbW92ZWQoKSB7IH0K
KyAgICB2b2lkIGRlc3Ryb3lEZWNvZGVkRGF0YUlmTmVlZGVkKCk7CiAKICAgICB1bnNpZ25lZCBj
b3VudCgpIGNvbnN0IHsgcmV0dXJuIG1fY2xpZW50cy5zaXplKCk7IH0KIApAQCAtMjg2LDkgKzI4
NywxMSBAQCBwcm90ZWN0ZWQ6CiAKICAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBtX2RhdGE7CiAg
ICAgT3duUHRyPFB1cmdlYWJsZUJ1ZmZlcj4gbV9wdXJnZWFibGVEYXRhOworICAgIFRpbWVyPENh
Y2hlZFJlc291cmNlPiBtX2RlY29kZWREYXRhRGVsZXRpb25UaW1lcjsKIAogcHJpdmF0ZToKICAg
ICBib29sIGFkZENsaWVudFRvU2V0KENhY2hlZFJlc291cmNlQ2xpZW50Kik7CisgICAgdm9pZCBk
ZWNvZGVkRGF0YURlbGV0aW9uVGltZXJGaXJlZChUaW1lcjxDYWNoZWRSZXNvdXJjZT4qKTsKIAog
ICAgIHZpcnR1YWwgUHVyZ2VQcmlvcml0eSBwdXJnZVByaW9yaXR5KCkgY29uc3QgeyByZXR1cm4g
UHVyZ2VEZWZhdWx0OyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRTY3JpcHQuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNj
cmlwdC5jcHAKaW5kZXggODM3NTFlY2E3YzAyMDcyMjBkMDA3MzI4YTY3MGZlMTgzNGQ5MWQ0Ny4u
MDg2ZmExYjNiZDYwNTZkMzYxZDU0NGQwNzQ3YTdlMWUyMGI3ZWRlZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5jcHAKQEAgLTQzLDcgKzQzLDYgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogQ2FjaGVkU2NyaXB0OjpDYWNoZWRTY3JpcHQoY29uc3QgUmVzb3Vy
Y2VSZXF1ZXN0JiByZXNvdXJjZVJlcXVlc3QsIGNvbnN0IFN0cmluZyYgY2hhcnNldCkKICAgICA6
IENhY2hlZFJlc291cmNlKHJlc291cmNlUmVxdWVzdCwgU2NyaXB0KQogICAgICwgbV9kZWNvZGVy
KFRleHRSZXNvdXJjZURlY29kZXI6OmNyZWF0ZSgiYXBwbGljYXRpb24vamF2YXNjcmlwdCIsIGNo
YXJzZXQpKQotICAgICwgbV9kZWNvZGVkRGF0YURlbGV0aW9uVGltZXIodGhpcywgJkNhY2hlZFNj
cmlwdDo6ZGVjb2RlZERhdGFEZWxldGlvblRpbWVyRmlyZWQpCiB7CiAgICAgLy8gSXQncyBqYXZh
c2NyaXB0IHdlIHdhbnQuCiAgICAgLy8gQnV0IHNvbWUgd2Vic2l0ZXMgdGhpbmsgdGhlaXIgc2Ny
aXB0cyBhcmUgPHNvbWUgd3JvbmcgbWltZXR5cGUgaGVyZT4KQEAgLTU1LDIwICs1NCw2IEBAIENh
Y2hlZFNjcmlwdDo6fkNhY2hlZFNjcmlwdCgpCiB7CiB9CiAKLXZvaWQgQ2FjaGVkU2NyaXB0Ojpk
aWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQqIGMpCi17Ci0gICAgaWYgKG1fZGVjb2Rl
ZERhdGFEZWxldGlvblRpbWVyLmlzQWN0aXZlKCkpCi0gICAgICAgIG1fZGVjb2RlZERhdGFEZWxl
dGlvblRpbWVyLnN0b3AoKTsKLQotICAgIENhY2hlZFJlc291cmNlOjpkaWRBZGRDbGllbnQoYyk7
Ci19Ci0KLXZvaWQgQ2FjaGVkU2NyaXB0OjphbGxDbGllbnRzUmVtb3ZlZCgpCi17Ci0gICAgaWYg
KGRvdWJsZSBpbnRlcnZhbCA9IG1lbW9yeUNhY2hlKCktPmRlYWREZWNvZGVkRGF0YURlbGV0aW9u
SW50ZXJ2YWwoKSkKLSAgICAgICAgbV9kZWNvZGVkRGF0YURlbGV0aW9uVGltZXIuc3RhcnRPbmVT
aG90KGludGVydmFsKTsKLX0KLQogdm9pZCBDYWNoZWRTY3JpcHQ6OnNldEVuY29kaW5nKGNvbnN0
IFN0cmluZyYgY2hzKQogewogICAgIG1fZGVjb2Rlci0+c2V0RW5jb2RpbmcoY2hzLCBUZXh0UmVz
b3VyY2VEZWNvZGVyOjpFbmNvZGluZ0Zyb21IVFRQSGVhZGVyKTsKQEAgLTEyNywxMSArMTEyLDYg
QEAgdm9pZCBDYWNoZWRTY3JpcHQ6OmRlc3Ryb3lEZWNvZGVkRGF0YSgpCiAgICAgICAgIG1ha2VQ
dXJnZWFibGUodHJ1ZSk7CiB9CiAKLXZvaWQgQ2FjaGVkU2NyaXB0OjpkZWNvZGVkRGF0YURlbGV0
aW9uVGltZXJGaXJlZChUaW1lcjxDYWNoZWRTY3JpcHQ+KikKLXsKLSAgICBkZXN0cm95RGVjb2Rl
ZERhdGEoKTsKLX0KLQogI2lmIFVTRShKU0MpCiBKU0M6OlNvdXJjZVByb3ZpZGVyQ2FjaGUqIENh
Y2hlZFNjcmlwdDo6c291cmNlUHJvdmlkZXJDYWNoZSgpIGNvbnN0CiB7ICAgCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmggYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmgKaW5kZXggMWE3NmMxOGY0NjdlNDBiZDA1
OTM2MGQxZGYzNzgwYmZmNzkxNGRhZi4uOWE0ZjM4YWQwYjNmN2JmZTMxZTc0Nzg3N2Q0Y2VmNTY5
NDI1ODJiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNj
cmlwdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuaApA
QCAtMjcsNyArMjcsNiBAQAogI2RlZmluZSBDYWNoZWRTY3JpcHRfaAogCiAjaW5jbHVkZSAiQ2Fj
aGVkUmVzb3VyY2UuaCIKLSNpbmNsdWRlICJUaW1lci5oIgogCiAjaWYgVVNFKEpTQykKIG5hbWVz
cGFjZSBKU0MgewpAQCAtNDcsOSArNDYsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICAg
ICAgY29uc3QgU3RyaW5nJiBzY3JpcHQoKTsKIAotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkQWRk
Q2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50Kik7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBhbGxD
bGllbnRzUmVtb3ZlZCgpOwotCiAgICAgICAgIHZpcnR1YWwgdm9pZCBzZXRFbmNvZGluZyhjb25z
dCBTdHJpbmcmKTsKICAgICAgICAgdmlydHVhbCBTdHJpbmcgZW5jb2RpbmcoKSBjb25zdDsKICAg
ICAgICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGEsIGJv
b2wgYWxsRGF0YVJlY2VpdmVkKTsKQEAgLTYyLDEyICs1OCwxMCBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAgICAgICAgIHZvaWQgc291cmNlUHJvdmlkZXJDYWNoZVNpemVDaGFuZ2VkKGludCBkZWx0
YSk7CiAjZW5kaWYKICAgICBwcml2YXRlOgotICAgICAgICB2b2lkIGRlY29kZWREYXRhRGVsZXRp
b25UaW1lckZpcmVkKFRpbWVyPENhY2hlZFNjcmlwdD4qKTsKICAgICAgICAgdmlydHVhbCBQdXJn
ZVByaW9yaXR5IHB1cmdlUHJpb3JpdHkoKSBjb25zdCB7IHJldHVybiBQdXJnZUxhc3Q7IH0KIAog
ICAgICAgICBTdHJpbmcgbV9zY3JpcHQ7CiAgICAgICAgIFJlZlB0cjxUZXh0UmVzb3VyY2VEZWNv
ZGVyPiBtX2RlY29kZXI7Ci0gICAgICAgIFRpbWVyPENhY2hlZFNjcmlwdD4gbV9kZWNvZGVkRGF0
YURlbGV0aW9uVGltZXI7CiAjaWYgVVNFKEpTQykgICAgICAgIAogICAgICAgICBtdXRhYmxlIE93
blB0cjxKU0M6OlNvdXJjZVByb3ZpZGVyQ2FjaGU+IG1fc291cmNlUHJvdmlkZXJDYWNoZTsKICNl
bmRpZgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>