<?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>58157</bug_id>
          
          <creation_ts>2011-04-08 13:17:18 -0700</creation_ts>
          <short_desc>Need more efficient ways to set inline CSS styles</short_desc>
          <delta_ts>2011-10-11 09:48: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>CSS</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>
          <dependson>53020</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dimitri Glazkov (Google)">dglazkov</reporter>
          <assigned_to name="Dimitri Glazkov (Google)">dglazkov</assigned_to>
          <cc>arun.patole</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>382501</commentid>
    <comment_count>0</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-04-08 13:17:18 -0700</bug_when>
    <thetext>After media controls were refactored to use new shadow DOM, they use inline styles to show, hide, and animate. The inline styles are set using strings, which is not super-efficient, since we have to go through CSS parser to do this. Event though it&apos;s as good as JavaScript, we can go faster. And we should.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>382592</commentid>
    <comment_count>1</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-04-08 15:29:04 -0700</bug_when>
    <thetext>Also, &quot;show()&quot; actually means removal of display:none style, which makes it confusingly named.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>477575</commentid>
    <comment_count>2</comment_count>
    <who name="Arun Patole">arun.patole</who>
    <bug_when>2011-10-04 06:51:02 -0700</bug_when>
    <thetext>Hi,

I have tried to optimized media controls code related to setting inline CSS styles, attaching raw patch for discussion. 

Below are the changes:
-Used CSSPropertyNames, CSSValues and CSSPrimitiveValues instead of Strings.
-Removed displayString(), webkitTransitionString(), opacityString() functions as they will no longer be needed after this change.
-Moved makeOpaque and makeTransparent functionality to MediaControlPanelElement from MediaControlRootElement. This is making it look better and also avoiding styles related code duplication in MediaControlRootElementChromium.

If the patch looks good in general, I will work on making all media layout tests work with this change and submit the updated patch for review/commit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>477576</commentid>
    <comment_count>3</comment_count>
      <attachid>109616</attachid>
    <who name="Arun Patole">arun.patole</who>
    <bug_when>2011-10-04 06:51:42 -0700</bug_when>
    <thetext>Created attachment 109616
patch for discussion</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481431</commentid>
    <comment_count>4</comment_count>
    <who name="Arun Patole">arun.patole</who>
    <bug_when>2011-10-10 21:45:15 -0700</bug_when>
    <thetext>Adding Eric in cc...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481441</commentid>
    <comment_count>5</comment_count>
      <attachid>110471</attachid>
    <who name="Arun Patole">arun.patole</who>
    <bug_when>2011-10-10 22:05:10 -0700</bug_when>
    <thetext>Created attachment 110471
updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481442</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-10 22:06:34 -0700</bug_when>
    <thetext>Attachment 110471 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1

Source/WebCore/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Total errors found: 1 in 5 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481446</commentid>
    <comment_count>7</comment_count>
      <attachid>110473</attachid>
    <who name="Arun Patole">arun.patole</who>
    <bug_when>2011-10-10 22:09:32 -0700</bug_when>
    <thetext>Created attachment 110473
updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481631</commentid>
    <comment_count>8</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2011-10-11 07:54:06 -0700</bug_when>
    <thetext>I didn&apos;t mark this r+ so dglazkov has a chance to check, since the original is his code, but this looks fine to me.

Nice optimizations Arun!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481646</commentid>
    <comment_count>9</comment_count>
      <attachid>110473</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-10-11 08:43:46 -0700</bug_when>
    <thetext>Comment on attachment 110473
updated patch

awesome.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481649</commentid>
    <comment_count>10</comment_count>
    <who name="Arun Patole">arun.patole</who>
    <bug_when>2011-10-11 08:48:45 -0700</bug_when>
    <thetext>Thanks Eric and Dimitri for reviewing the patch!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481683</commentid>
    <comment_count>11</comment_count>
      <attachid>110473</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-11 09:47:58 -0700</bug_when>
    <thetext>Comment on attachment 110473
updated patch

Clearing flags on attachment: 110473

Committed r97157: &lt;http://trac.webkit.org/changeset/97157&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481684</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-11 09:48:03 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>109616</attachid>
            <date>2011-10-04 06:51:42 -0700</date>
            <delta_ts>2011-10-10 22:10:59 -0700</delta_ts>
            <desc>patch for discussion</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>8707</size>
            <attacher name="Arun Patole">arun.patole</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS93ZWJraXQuY3JlYXRvcgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uvd2Via2l0
LmNyZWF0b3IJKHJldmlzaW9uIDApCisrKyBTb3VyY2Uvd2Via2l0LmNyZWF0b3IJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEgQEAKK1tHZW5lcmFsXQpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvTWVkaWFDb250cm9sRWxlbWVudHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcAkocmV2aXNpb24gOTY1NzIp
CisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTc2LDI1ICs3NiwxNCBAQCBNZWRpYUNvbnRyb2xFbGVtZW50OjpN
ZWRpYUNvbnRyb2xFbGVtZW50CiB7CiB9CiAKLXN0YXRpYyBjb25zdCBTdHJpbmcmIGRpc3BsYXlT
dHJpbmcoKQotewotICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBzLCAoImRpc3BsYXki
KSk7Ci0gICAgcmV0dXJuIHM7Ci19Ci0KIHZvaWQgTWVkaWFDb250cm9sRWxlbWVudDo6c2hvdygp
CiB7Ci0gICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAgICAvLyBGSVhNRTogTWFrZSBtb3JlIGVmZmlj
aWVudCA8aHR0cDovL3dlYmtpdC5vcmcvYi81ODE1Nz4KLSAgICBzdHlsZSgpLT5yZW1vdmVQcm9w
ZXJ0eShkaXNwbGF5U3RyaW5nKCksIGVjKTsKKyAgICBnZXRJbmxpbmVTdHlsZURlY2woKS0+cmVt
b3ZlUHJvcGVydHkoQ1NTUHJvcGVydHlEaXNwbGF5KTsKIH0KIAogdm9pZCBNZWRpYUNvbnRyb2xF
bGVtZW50OjpoaWRlKCkKIHsKLSAgICBFeGNlcHRpb25Db2RlIGVjOwotICAgIC8vIEZJWE1FOiBN
YWtlIG1vcmUgZWZmaWNpZW50IDxodHRwOi8vd2Via2l0Lm9yZy9iLzU4MTU3PgotICAgIERFRklO
RV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBub25lLCAoIm5vbmUiKSk7Ci0gICAgc3R5bGUoKS0+c2V0
UHJvcGVydHkoZGlzcGxheVN0cmluZygpLCBub25lLCBlYyk7CisgICAgZ2V0SW5saW5lU3R5bGVE
ZWNsKCktPnNldFByb3BlcnR5KENTU1Byb3BlcnR5RGlzcGxheSwgQ1NTVmFsdWVOb25lKTsKIH0K
IAogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtMTAzLDYgKzkyLDcgQEAgaW5s
aW5lIE1lZGlhQ29udHJvbFBhbmVsRWxlbWVudDo6TWVkaWFDbwogICAgIDogTWVkaWFDb250cm9s
RWxlbWVudChtZWRpYUVsZW1lbnQpCiAgICAgLCBtX2NhbkJlRHJhZ2dlZChmYWxzZSkKICAgICAs
IG1faXNCZWluZ0RyYWdnZWQoZmFsc2UpCisgICAgLCBtX29wYXF1ZSh0cnVlKQogewogfQogCkBA
IC0xOTQsNiArMTg0LDMyIEBAIHZvaWQgTWVkaWFDb250cm9sUGFuZWxFbGVtZW50OjpyZXNldFBv
c2kKICAgICBzdHlsZS0+cmVtb3ZlUHJvcGVydHkoQ1NTUHJvcGVydHlNYXJnaW5Ub3ApOwogfQog
Cit2b2lkIE1lZGlhQ29udHJvbFBhbmVsRWxlbWVudDo6bWFrZU9wYXF1ZSgpCit7CisgICAgaWYg
KG1fb3BhcXVlKQorICAgICAgICByZXR1cm47CisgICAgCisgICAgQ1NTTXV0YWJsZVN0eWxlRGVj
bGFyYXRpb24qIHN0eWxlID0gZ2V0SW5saW5lU3R5bGVEZWNsKCk7CisgICAgc3R5bGUtPnNldFBy
b3BlcnR5KENTU1Byb3BlcnR5V2Via2l0VHJhbnNpdGlvblByb3BlcnR5LCBDU1NQcm9wZXJ0eU9w
YWNpdHkpOworICAgIHN0eWxlLT5zZXRQcm9wZXJ0eShDU1NQcm9wZXJ0eVdlYmtpdFRyYW5zaXRp
b25EdXJhdGlvbiwgZG9jdW1lbnQoKS0+cGFnZSgpLT50aGVtZSgpLT5tZWRpYUNvbnRyb2xzRmFk
ZUluRHVyYXRpb24oKSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19TKTsKKyAgICBzdHlsZS0+c2V0
UHJvcGVydHkoQ1NTUHJvcGVydHlPcGFjaXR5LCAxLjAsIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1Nf
TlVNQkVSKTsKKworICAgIG1fb3BhcXVlID0gdHJ1ZTsKK30KKwordm9pZCBNZWRpYUNvbnRyb2xQ
YW5lbEVsZW1lbnQ6Om1ha2VUcmFuc3BhcmVudCgpCit7CisgICAgaWYgKCFtX29wYXF1ZSkKKyAg
ICAgICAgcmV0dXJuOworCisgICAgQ1NTTXV0YWJsZVN0eWxlRGVjbGFyYXRpb24qIHN0eWxlID0g
Z2V0SW5saW5lU3R5bGVEZWNsKCk7CisgICAgc3R5bGUtPnNldFByb3BlcnR5KENTU1Byb3BlcnR5
V2Via2l0VHJhbnNpdGlvblByb3BlcnR5LCBDU1NQcm9wZXJ0eU9wYWNpdHkpOworICAgIHN0eWxl
LT5zZXRQcm9wZXJ0eShDU1NQcm9wZXJ0eVdlYmtpdFRyYW5zaXRpb25EdXJhdGlvbiwgZG9jdW1l
bnQoKS0+cGFnZSgpLT50aGVtZSgpLT5tZWRpYUNvbnRyb2xzRmFkZU91dER1cmF0aW9uKCksIENT
U1ByaW1pdGl2ZVZhbHVlOjpDU1NfUyk7CisgICAgc3R5bGUtPnNldFByb3BlcnR5KENTU1Byb3Bl
cnR5T3BhY2l0eSwgMC4wLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUik7CisKKyAgICBt
X29wYXF1ZSA9IGZhbHNlOworfQorCiB2b2lkIE1lZGlhQ29udHJvbFBhbmVsRWxlbWVudDo6ZGVm
YXVsdEV2ZW50SGFuZGxlcihFdmVudCogZXZlbnQpCiB7CiAgICAgTWVkaWFDb250cm9sRWxlbWVu
dDo6ZGVmYXVsdEV2ZW50SGFuZGxlcihldmVudCk7CkBAIC0zOTYsMTUgKzQxMiwxMiBAQCBNZWRp
YUNvbnRyb2xJbnB1dEVsZW1lbnQ6Ok1lZGlhQ29udHJvbEluCiAKIHZvaWQgTWVkaWFDb250cm9s
SW5wdXRFbGVtZW50OjpzaG93KCkKIHsKLSAgICBFeGNlcHRpb25Db2RlIGVjOwotICAgIHN0eWxl
KCktPnJlbW92ZVByb3BlcnR5KGRpc3BsYXlTdHJpbmcoKSwgZWMpOworICAgIGdldElubGluZVN0
eWxlRGVjbCgpLT5yZW1vdmVQcm9wZXJ0eShDU1NQcm9wZXJ0eURpc3BsYXkpOwogfQogCiB2b2lk
IE1lZGlhQ29udHJvbElucHV0RWxlbWVudDo6aGlkZSgpCiB7Ci0gICAgRXhjZXB0aW9uQ29kZSBl
YzsKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgbm9uZSwgKCJub25lIikpOwotICAg
IHN0eWxlKCktPnNldFByb3BlcnR5KGRpc3BsYXlTdHJpbmcoKSwgbm9uZSwgZWMpOworICAgIGdl
dElubGluZVN0eWxlRGVjbCgpLT5zZXRQcm9wZXJ0eShDU1NQcm9wZXJ0eURpc3BsYXksIENTU1Zh
bHVlTm9uZSk7CiB9CiAKIApJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFD
b250cm9sRWxlbWVudHMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRv
dy9NZWRpYUNvbnRyb2xFbGVtZW50cy5oCShyZXZpc2lvbiA5NjU3MikKKysrIFNvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmgJKHdvcmtpbmcgY29weSkKQEAg
LTEwMSw2ICsxMDEsOCBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldENhbkJlRHJhZ2dlZChib29s
KTsKICAgICB2b2lkIHJlc2V0UG9zaXRpb24oKTsKKyAgICB2b2lkIG1ha2VPcGFxdWUoKTsKKyAg
ICB2b2lkIG1ha2VUcmFuc3BhcmVudCgpOwogCiBwcml2YXRlOgogICAgIE1lZGlhQ29udHJvbFBh
bmVsRWxlbWVudChIVE1MTWVkaWFFbGVtZW50Kik7CkBAIC0xMTYsNiArMTE4LDcgQEAgcHJpdmF0
ZToKIAogICAgIGJvb2wgbV9jYW5CZURyYWdnZWQ7CiAgICAgYm9vbCBtX2lzQmVpbmdEcmFnZ2Vk
OworICAgIGJvb2wgbV9vcGFxdWU7CiAgICAgTGF5b3V0UG9pbnQgbV9kcmFnU3RhcnRQb3NpdGlv
bjsKICAgICBMYXlvdXRQb2ludCBtX2RyYWdTdGFydEV2ZW50TG9jYXRpb247CiB9OwpJbmRleDog
U291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnQuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RF
bGVtZW50LmNwcAkocmV2aXNpb24gOTY1NzIpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRv
dy9NZWRpYUNvbnRyb2xSb290RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY0LDcgKzY0
LDYgQEAgTWVkaWFDb250cm9sUm9vdEVsZW1lbnQ6Ok1lZGlhQ29udHJvbFJvbwogICAgICwgbV9m
dWxsU2NyZWVuVm9sdW1lU2xpZGVyKDApCiAgICAgLCBtX2Z1bGxTY3JlZW5NYXhWb2x1bWVCdXR0
b24oMCkKICAgICAsIG1fcGFuZWwoMCkKLSAgICAsIG1fb3BhcXVlKHRydWUpCiAgICAgLCBtX2lz
TW91c2VPdmVyQ29udHJvbHMoZmFsc2UpCiAgICAgLCBtX2hpZGVGdWxsc2NyZWVuQ29udHJvbHNU
aW1lcih0aGlzLCAmTWVkaWFDb250cm9sUm9vdEVsZW1lbnQ6OmhpZGVGdWxsc2NyZWVuQ29udHJv
bHNUaW1lckZpcmVkKQogewpAQCAtMjI4LDUwICsyMjcsMTQgQEAgdm9pZCBNZWRpYUNvbnRyb2xS
b290RWxlbWVudDo6aGlkZSgpCiAgICAgbV9wYW5lbC0+aGlkZSgpOwogfQogCi1zdGF0aWMgY29u
c3QgU3RyaW5nJiB3ZWJraXRUcmFuc2l0aW9uU3RyaW5nKCkKLXsKLSAgICBERUZJTkVfU1RBVElD
X0xPQ0FMKFN0cmluZywgcywgKCItd2Via2l0LXRyYW5zaXRpb24iKSk7Ci0gICAgcmV0dXJuIHM7
Ci19Ci0KLXN0YXRpYyBjb25zdCBTdHJpbmcmIG9wYWNpdHlTdHJpbmcoKQotewotICAgIERFRklO
RV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBzLCAoIm9wYWNpdHkiKSk7Ci0gICAgcmV0dXJuIHM7Ci19
Ci0KIHZvaWQgTWVkaWFDb250cm9sUm9vdEVsZW1lbnQ6Om1ha2VPcGFxdWUoKQogewotICAgIGlm
IChtX29wYXF1ZSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChT
dHJpbmcsIHRyYW5zaXRpb25WYWx1ZSwgKCkpOwotICAgIGlmICh0cmFuc2l0aW9uVmFsdWUuaXNO
dWxsKCkpCi0gICAgICAgIHRyYW5zaXRpb25WYWx1ZSA9IFN0cmluZzo6Zm9ybWF0KCJvcGFjaXR5
ICUuMWdzIiwgZG9jdW1lbnQoKS0+cGFnZSgpLT50aGVtZSgpLT5tZWRpYUNvbnRyb2xzRmFkZUlu
RHVyYXRpb24oKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIG9wYWNpdHlWYWx1
ZSwgKCIxIikpOwotCi0gICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAgICAvLyBGSVhNRTogTWFrZSBt
b3JlIGVmZmljaWVudCA8aHR0cDovL3dlYmtpdC5vcmcvYi81ODE1Nz4KLSAgICBtX3BhbmVsLT5z
dHlsZSgpLT5zZXRQcm9wZXJ0eSh3ZWJraXRUcmFuc2l0aW9uU3RyaW5nKCksIHRyYW5zaXRpb25W
YWx1ZSwgZWMpOwotICAgIG1fcGFuZWwtPnN0eWxlKCktPnNldFByb3BlcnR5KG9wYWNpdHlTdHJp
bmcoKSwgb3BhY2l0eVZhbHVlLCBlYyk7Ci0gICAgbV9vcGFxdWUgPSB0cnVlOworICAgIG1fcGFu
ZWwtPm1ha2VPcGFxdWUoKTsKIH0KIAogdm9pZCBNZWRpYUNvbnRyb2xSb290RWxlbWVudDo6bWFr
ZVRyYW5zcGFyZW50KCkKIHsKLSAgICBpZiAoIW1fb3BhcXVlKQotICAgICAgICByZXR1cm47Ci0K
LSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgdHJhbnNpdGlvblZhbHVlLCAoKSk7Ci0g
ICAgaWYgKHRyYW5zaXRpb25WYWx1ZS5pc051bGwoKSkKLSAgICAgICAgdHJhbnNpdGlvblZhbHVl
ID0gU3RyaW5nOjpmb3JtYXQoIm9wYWNpdHkgJS4xZ3MiLCBkb2N1bWVudCgpLT5wYWdlKCktPnRo
ZW1lKCktPm1lZGlhQ29udHJvbHNGYWRlT3V0RHVyYXRpb24oKSk7Ci0gICAgREVGSU5FX1NUQVRJ
Q19MT0NBTChTdHJpbmcsIG9wYWNpdHlWYWx1ZSwgKCIwIikpOwotCi0gICAgRXhjZXB0aW9uQ29k
ZSBlYzsKLSAgICAvLyBGSVhNRTogTWFrZSBtb3JlIGVmZmljaWVudCA8aHR0cDovL3dlYmtpdC5v
cmcvYi81ODE1Nz4KLSAgICBtX3BhbmVsLT5zdHlsZSgpLT5zZXRQcm9wZXJ0eSh3ZWJraXRUcmFu
c2l0aW9uU3RyaW5nKCksIHRyYW5zaXRpb25WYWx1ZSwgZWMpOwotICAgIG1fcGFuZWwtPnN0eWxl
KCktPnNldFByb3BlcnR5KG9wYWNpdHlTdHJpbmcoKSwgb3BhY2l0eVZhbHVlLCBlYyk7Ci0gICAg
bV9vcGFxdWUgPSBmYWxzZTsKKyAgICBtX3BhbmVsLT5tYWtlVHJhbnNwYXJlbnQoKTsKIH0KIAog
dm9pZCBNZWRpYUNvbnRyb2xSb290RWxlbWVudDo6cmVzZXQoKQpJbmRleDogU291cmNlL1dlYkNv
cmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnQuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xSb290RWxlbWVudC5oCShyZXZp
c2lvbiA5NjU3MikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFJv
b3RFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTEzMiw3ICsxMzIsNiBAQCBwcml2YXRlOgog
ICAgIE1lZGlhQ29udHJvbEZ1bGxzY3JlZW5Wb2x1bWVTbGlkZXJFbGVtZW50KiBtX2Z1bGxTY3Jl
ZW5Wb2x1bWVTbGlkZXI7CiAgICAgTWVkaWFDb250cm9sRnVsbHNjcmVlblZvbHVtZU1heEJ1dHRv
bkVsZW1lbnQqIG1fZnVsbFNjcmVlbk1heFZvbHVtZUJ1dHRvbjsKICAgICBNZWRpYUNvbnRyb2xQ
YW5lbEVsZW1lbnQqIG1fcGFuZWw7Ci0gICAgYm9vbCBtX29wYXF1ZTsKICAgICBib29sIG1faXNN
b3VzZU92ZXJDb250cm9sczsKICAgICBUaW1lcjxNZWRpYUNvbnRyb2xSb290RWxlbWVudD4gbV9o
aWRlRnVsbHNjcmVlbkNvbnRyb2xzVGltZXI7CiB9OwpJbmRleDogU291cmNlL1dlYkNvcmUvaHRt
bC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJv
bWl1bS5jcHAJKHJldmlzaW9uIDk2NTcyKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEz
Miw1MCArMTMyLDE0IEBAIHZvaWQgTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6aGkK
ICAgICBtX3BhbmVsLT5oaWRlKCk7CiB9CiAKLXN0YXRpYyBjb25zdCBTdHJpbmcmIHdlYmtpdFRy
YW5zaXRpb25TdHJpbmcoKQotewotICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBzLCAo
Ii13ZWJraXQtdHJhbnNpdGlvbiIpKTsKLSAgICByZXR1cm4gczsKLX0KLQotc3RhdGljIGNvbnN0
IFN0cmluZyYgb3BhY2l0eVN0cmluZygpCi17Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJp
bmcsIHMsICgib3BhY2l0eSIpKTsKLSAgICByZXR1cm4gczsKLX0KLQogdm9pZCBNZWRpYUNvbnRy
b2xSb290RWxlbWVudENocm9taXVtOjptYWtlT3BhcXVlKCkKIHsKLSAgICBpZiAobV9vcGFxdWUp
Ci0gICAgICAgIHJldHVybjsKLQotICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCB0cmFu
c2l0aW9uVmFsdWUsICgpKTsKLSAgICBpZiAodHJhbnNpdGlvblZhbHVlLmlzTnVsbCgpKQotICAg
ICAgICB0cmFuc2l0aW9uVmFsdWUgPSBTdHJpbmc6OmZvcm1hdCgib3BhY2l0eSAlLjFncyIsIGRv
Y3VtZW50KCktPnBhZ2UoKS0+dGhlbWUoKS0+bWVkaWFDb250cm9sc0ZhZGVJbkR1cmF0aW9uKCkp
OwotICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBvcGFjaXR5VmFsdWUsICgiMSIpKTsK
LQotICAgIEV4Y2VwdGlvbkNvZGUgZWM7Ci0gICAgLy8gRklYTUU6IE1ha2UgbW9yZSBlZmZpY2ll
bnQgPGh0dHA6Ly93ZWJraXQub3JnL2IvNTgxNTc+Ci0gICAgbV9wYW5lbC0+c3R5bGUoKS0+c2V0
UHJvcGVydHkod2Via2l0VHJhbnNpdGlvblN0cmluZygpLCB0cmFuc2l0aW9uVmFsdWUsIGVjKTsK
LSAgICBtX3BhbmVsLT5zdHlsZSgpLT5zZXRQcm9wZXJ0eShvcGFjaXR5U3RyaW5nKCksIG9wYWNp
dHlWYWx1ZSwgZWMpOwotICAgIG1fb3BhcXVlID0gdHJ1ZTsKKyAgICBtX3BhbmVsLT5tYWtlT3Bh
cXVlKCk7CiB9CiAKIHZvaWQgTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6bWFrZVRy
YW5zcGFyZW50KCkKIHsKLSAgICBpZiAoIW1fb3BhcXVlKQotICAgICAgICByZXR1cm47Ci0KLSAg
ICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgdHJhbnNpdGlvblZhbHVlLCAoKSk7Ci0gICAg
aWYgKHRyYW5zaXRpb25WYWx1ZS5pc051bGwoKSkKLSAgICAgICAgdHJhbnNpdGlvblZhbHVlID0g
U3RyaW5nOjpmb3JtYXQoIm9wYWNpdHkgJS4xZ3MiLCBkb2N1bWVudCgpLT5wYWdlKCktPnRoZW1l
KCktPm1lZGlhQ29udHJvbHNGYWRlT3V0RHVyYXRpb24oKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19M
T0NBTChTdHJpbmcsIG9wYWNpdHlWYWx1ZSwgKCIwIikpOwotCi0gICAgRXhjZXB0aW9uQ29kZSBl
YzsKLSAgICAvLyBGSVhNRTogTWFrZSBtb3JlIGVmZmljaWVudCA8aHR0cDovL3dlYmtpdC5vcmcv
Yi81ODE1Nz4KLSAgICBtX3BhbmVsLT5zdHlsZSgpLT5zZXRQcm9wZXJ0eSh3ZWJraXRUcmFuc2l0
aW9uU3RyaW5nKCksIHRyYW5zaXRpb25WYWx1ZSwgZWMpOwotICAgIG1fcGFuZWwtPnN0eWxlKCkt
PnNldFByb3BlcnR5KG9wYWNpdHlTdHJpbmcoKSwgb3BhY2l0eVZhbHVlLCBlYyk7Ci0gICAgbV9v
cGFxdWUgPSBmYWxzZTsKKyAgICBtX3BhbmVsLT5tYWtlVHJhbnNwYXJlbnQoKTsKIH0KIAogdm9p
ZCBNZWRpYUNvbnRyb2xSb290RWxlbWVudENocm9taXVtOjpyZXNldCgpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>110471</attachid>
            <date>2011-10-10 22:05:10 -0700</date>
            <delta_ts>2011-10-10 22:10:30 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>10576</size>
            <attacher name="Arun Patole">arun.patole</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk3MTIxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzcgQEAKKzIwMTEtMTAtMTAgIEFydW4gUGF0
b2xlICA8Qk1GODM0QG1vdG9yb2xhLmNvbT4KKworICAgICAgICBOZWVkIG1vcmUgZWZmaWNpZW50
IHdheXMgdG8gc2V0IGlubGluZSBDU1Mgc3R5bGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Byb2Nlc3NfYnVnLmNnaQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyBhZGRlZCBhcyB0aGlzIGlzIGp1c3QgYSBjb2Rl
IG9wdGltaXphdGlvbi4KKworICAgICAgICBDb2RlIG9wdGltaXphdGlvbjoKKyAgICAgICAgICAt
VXNlZCBDU1NQcm9wZXJ0eU5hbWVzLCBDU1NWYWx1ZXMgYW5kIENTU1ByaW1pdGl2ZVZhbHVlcyBp
bnN0ZWFkIG9mIFN0cmluZ3MuCisgICAgICAgICAgLVJlbW92ZWQgZGlzcGxheVN0cmluZygpLCB3
ZWJraXRUcmFuc2l0aW9uU3RyaW5nKCksIG9wYWNpdHlTdHJpbmcoKSBmdW5jdGlvbnMgYXMgdGhl
eSB3aWxsIG5vIGxvbmdlciBiZSBuZWVkZWQgYWZ0ZXIgdGhpcyBjaGFuZ2UuCisgICAgICAgICAg
LU1vdmVkIG1ha2VPcGFxdWUgYW5kIG1ha2VUcmFuc3BhcmVudCBmdW5jdGlvbmFsaXR5IHRvIE1l
ZGlhQ29udHJvbFBhbmVsRWxlbWVudCBmcm9tIE1lZGlhQ29udHJvbFJvb3RFbGVtZW50LgorCisg
ICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyUmF0ZUNoYW5nZWQpOgorICAgICAgICAqIGh0bWwv
c2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlh
Q29udHJvbEVsZW1lbnQ6OnNob3cpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sRWxl
bWVudDo6aGlkZSk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQ6
Ok1lZGlhQ29udHJvbFBhbmVsRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRy
b2xQYW5lbEVsZW1lbnQ6Om1ha2VPcGFxdWUpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250
cm9sUGFuZWxFbGVtZW50OjptYWtlVHJhbnNwYXJlbnQpOgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFDb250cm9sSW5wdXRFbGVtZW50OjpzaG93KToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29u
dHJvbElucHV0RWxlbWVudDo6aGlkZSk6CisgICAgICAgICogaHRtbC9zaGFkb3cvTWVkaWFDb250
cm9sRWxlbWVudHMuaDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xSb290RWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xSb290RWxlbWVudDo6TWVk
aWFDb250cm9sUm9vdEVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sUm9v
dEVsZW1lbnQ6Om1ha2VPcGFxdWUpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sUm9v
dEVsZW1lbnQ6Om1ha2VUcmFuc3BhcmVudCk6CisgICAgICAgICogaHRtbC9zaGFkb3cvTWVkaWFD
b250cm9sUm9vdEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xS
b290RWxlbWVudENocm9taXVtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29udHJvbFJv
b3RFbGVtZW50Q2hyb21pdW06Om1ha2VPcGFxdWUpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFD
b250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6bWFrZVRyYW5zcGFyZW50KToKKwogMjAxMS0xMC0x
MCAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgTW92ZSBtX2xp
c3RJdGVtcyBhbmQgbV9yZWNhbGNMaXN0SXRlbXMgZnJvbSBTZWxlY3RFbGVtZW50RGF0YSB0byBI
VE1MU2VsZWN0RWxlbWVudApJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFD
b250cm9sRWxlbWVudHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvc2hh
ZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcAkocmV2aXNpb24gOTY1NzIpCisrKyBTb3VyY2Uv
V2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTc2LDI1ICs3NiwxNCBAQCBNZWRpYUNvbnRyb2xFbGVtZW50OjpNZWRpYUNvbnRyb2xF
bGVtZW50CiB7CiB9CiAKLXN0YXRpYyBjb25zdCBTdHJpbmcmIGRpc3BsYXlTdHJpbmcoKQotewot
ICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBzLCAoImRpc3BsYXkiKSk7Ci0gICAgcmV0
dXJuIHM7Ci19Ci0KIHZvaWQgTWVkaWFDb250cm9sRWxlbWVudDo6c2hvdygpCiB7Ci0gICAgRXhj
ZXB0aW9uQ29kZSBlYzsKLSAgICAvLyBGSVhNRTogTWFrZSBtb3JlIGVmZmljaWVudCA8aHR0cDov
L3dlYmtpdC5vcmcvYi81ODE1Nz4KLSAgICBzdHlsZSgpLT5yZW1vdmVQcm9wZXJ0eShkaXNwbGF5
U3RyaW5nKCksIGVjKTsKKyAgICBnZXRJbmxpbmVTdHlsZURlY2woKS0+cmVtb3ZlUHJvcGVydHko
Q1NTUHJvcGVydHlEaXNwbGF5KTsKIH0KIAogdm9pZCBNZWRpYUNvbnRyb2xFbGVtZW50OjpoaWRl
KCkKIHsKLSAgICBFeGNlcHRpb25Db2RlIGVjOwotICAgIC8vIEZJWE1FOiBNYWtlIG1vcmUgZWZm
aWNpZW50IDxodHRwOi8vd2Via2l0Lm9yZy9iLzU4MTU3PgotICAgIERFRklORV9TVEFUSUNfTE9D
QUwoU3RyaW5nLCBub25lLCAoIm5vbmUiKSk7Ci0gICAgc3R5bGUoKS0+c2V0UHJvcGVydHkoZGlz
cGxheVN0cmluZygpLCBub25lLCBlYyk7CisgICAgZ2V0SW5saW5lU3R5bGVEZWNsKCktPnNldFBy
b3BlcnR5KENTU1Byb3BlcnR5RGlzcGxheSwgQ1NTVmFsdWVOb25lKTsKIH0KIAogLy8gLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtMTAzLDYgKzkyLDcgQEAgaW5saW5lIE1lZGlhQ29u
dHJvbFBhbmVsRWxlbWVudDo6TWVkaWFDbwogICAgIDogTWVkaWFDb250cm9sRWxlbWVudChtZWRp
YUVsZW1lbnQpCiAgICAgLCBtX2NhbkJlRHJhZ2dlZChmYWxzZSkKICAgICAsIG1faXNCZWluZ0Ry
YWdnZWQoZmFsc2UpCisgICAgLCBtX29wYXF1ZSh0cnVlKQogewogfQogCkBAIC0xOTQsNiArMTg0
LDMyIEBAIHZvaWQgTWVkaWFDb250cm9sUGFuZWxFbGVtZW50OjpyZXNldFBvc2kKICAgICBzdHls
ZS0+cmVtb3ZlUHJvcGVydHkoQ1NTUHJvcGVydHlNYXJnaW5Ub3ApOwogfQogCit2b2lkIE1lZGlh
Q29udHJvbFBhbmVsRWxlbWVudDo6bWFrZU9wYXF1ZSgpCit7CisgICAgaWYgKG1fb3BhcXVlKQor
ICAgICAgICByZXR1cm47CisgICAgCisgICAgQ1NTTXV0YWJsZVN0eWxlRGVjbGFyYXRpb24qIHN0
eWxlID0gZ2V0SW5saW5lU3R5bGVEZWNsKCk7CisgICAgc3R5bGUtPnNldFByb3BlcnR5KENTU1By
b3BlcnR5V2Via2l0VHJhbnNpdGlvblByb3BlcnR5LCBDU1NQcm9wZXJ0eU9wYWNpdHkpOworICAg
IHN0eWxlLT5zZXRQcm9wZXJ0eShDU1NQcm9wZXJ0eVdlYmtpdFRyYW5zaXRpb25EdXJhdGlvbiwg
ZG9jdW1lbnQoKS0+cGFnZSgpLT50aGVtZSgpLT5tZWRpYUNvbnRyb2xzRmFkZUluRHVyYXRpb24o
KSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19TKTsKKyAgICBzdHlsZS0+c2V0UHJvcGVydHkoQ1NT
UHJvcGVydHlPcGFjaXR5LCAxLjAsIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVSKTsKKwor
ICAgIG1fb3BhcXVlID0gdHJ1ZTsKK30KKwordm9pZCBNZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQ6
Om1ha2VUcmFuc3BhcmVudCgpCit7CisgICAgaWYgKCFtX29wYXF1ZSkKKyAgICAgICAgcmV0dXJu
OworCisgICAgQ1NTTXV0YWJsZVN0eWxlRGVjbGFyYXRpb24qIHN0eWxlID0gZ2V0SW5saW5lU3R5
bGVEZWNsKCk7CisgICAgc3R5bGUtPnNldFByb3BlcnR5KENTU1Byb3BlcnR5V2Via2l0VHJhbnNp
dGlvblByb3BlcnR5LCBDU1NQcm9wZXJ0eU9wYWNpdHkpOworICAgIHN0eWxlLT5zZXRQcm9wZXJ0
eShDU1NQcm9wZXJ0eVdlYmtpdFRyYW5zaXRpb25EdXJhdGlvbiwgZG9jdW1lbnQoKS0+cGFnZSgp
LT50aGVtZSgpLT5tZWRpYUNvbnRyb2xzRmFkZU91dER1cmF0aW9uKCksIENTU1ByaW1pdGl2ZVZh
bHVlOjpDU1NfUyk7CisgICAgc3R5bGUtPnNldFByb3BlcnR5KENTU1Byb3BlcnR5T3BhY2l0eSwg
MC4wLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUik7CisKKyAgICBtX29wYXF1ZSA9IGZh
bHNlOworfQorCiB2b2lkIE1lZGlhQ29udHJvbFBhbmVsRWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFu
ZGxlcihFdmVudCogZXZlbnQpCiB7CiAgICAgTWVkaWFDb250cm9sRWxlbWVudDo6ZGVmYXVsdEV2
ZW50SGFuZGxlcihldmVudCk7CkBAIC0zOTYsMTUgKzQxMiwxMiBAQCBNZWRpYUNvbnRyb2xJbnB1
dEVsZW1lbnQ6Ok1lZGlhQ29udHJvbEluCiAKIHZvaWQgTWVkaWFDb250cm9sSW5wdXRFbGVtZW50
OjpzaG93KCkKIHsKLSAgICBFeGNlcHRpb25Db2RlIGVjOwotICAgIHN0eWxlKCktPnJlbW92ZVBy
b3BlcnR5KGRpc3BsYXlTdHJpbmcoKSwgZWMpOworICAgIGdldElubGluZVN0eWxlRGVjbCgpLT5y
ZW1vdmVQcm9wZXJ0eShDU1NQcm9wZXJ0eURpc3BsYXkpOwogfQogCiB2b2lkIE1lZGlhQ29udHJv
bElucHV0RWxlbWVudDo6aGlkZSgpCiB7Ci0gICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAgICBERUZJ
TkVfU1RBVElDX0xPQ0FMKFN0cmluZywgbm9uZSwgKCJub25lIikpOwotICAgIHN0eWxlKCktPnNl
dFByb3BlcnR5KGRpc3BsYXlTdHJpbmcoKSwgbm9uZSwgZWMpOworICAgIGdldElubGluZVN0eWxl
RGVjbCgpLT5zZXRQcm9wZXJ0eShDU1NQcm9wZXJ0eURpc3BsYXksIENTU1ZhbHVlTm9uZSk7CiB9
CiAKIApJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sRWxlbWVu
dHMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRy
b2xFbGVtZW50cy5oCShyZXZpc2lvbiA5NjU3MikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvc2hh
ZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmgJKHdvcmtpbmcgY29weSkKQEAgLTEwMSw2ICsxMDEs
OCBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldENhbkJlRHJhZ2dlZChib29sKTsKICAgICB2b2lk
IHJlc2V0UG9zaXRpb24oKTsKKyAgICB2b2lkIG1ha2VPcGFxdWUoKTsKKyAgICB2b2lkIG1ha2VU
cmFuc3BhcmVudCgpOwogCiBwcml2YXRlOgogICAgIE1lZGlhQ29udHJvbFBhbmVsRWxlbWVudChI
VE1MTWVkaWFFbGVtZW50Kik7CkBAIC0xMTYsNiArMTE4LDcgQEAgcHJpdmF0ZToKIAogICAgIGJv
b2wgbV9jYW5CZURyYWdnZWQ7CiAgICAgYm9vbCBtX2lzQmVpbmdEcmFnZ2VkOworICAgIGJvb2wg
bV9vcGFxdWU7CiAgICAgTGF5b3V0UG9pbnQgbV9kcmFnU3RhcnRQb3NpdGlvbjsKICAgICBMYXlv
dXRQb2ludCBtX2RyYWdTdGFydEV2ZW50TG9jYXRpb247CiB9OwpJbmRleDogU291cmNlL1dlYkNv
cmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50LmNwcAko
cmV2aXNpb24gOTY1NzIpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRy
b2xSb290RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY0LDcgKzY0LDYgQEAgTWVkaWFD
b250cm9sUm9vdEVsZW1lbnQ6Ok1lZGlhQ29udHJvbFJvbwogICAgICwgbV9mdWxsU2NyZWVuVm9s
dW1lU2xpZGVyKDApCiAgICAgLCBtX2Z1bGxTY3JlZW5NYXhWb2x1bWVCdXR0b24oMCkKICAgICAs
IG1fcGFuZWwoMCkKLSAgICAsIG1fb3BhcXVlKHRydWUpCiAgICAgLCBtX2lzTW91c2VPdmVyQ29u
dHJvbHMoZmFsc2UpCiAgICAgLCBtX2hpZGVGdWxsc2NyZWVuQ29udHJvbHNUaW1lcih0aGlzLCAm
TWVkaWFDb250cm9sUm9vdEVsZW1lbnQ6OmhpZGVGdWxsc2NyZWVuQ29udHJvbHNUaW1lckZpcmVk
KQogewpAQCAtMjI4LDUwICsyMjcsMTQgQEAgdm9pZCBNZWRpYUNvbnRyb2xSb290RWxlbWVudDo6
aGlkZSgpCiAgICAgbV9wYW5lbC0+aGlkZSgpOwogfQogCi1zdGF0aWMgY29uc3QgU3RyaW5nJiB3
ZWJraXRUcmFuc2l0aW9uU3RyaW5nKCkKLXsKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmlu
ZywgcywgKCItd2Via2l0LXRyYW5zaXRpb24iKSk7Ci0gICAgcmV0dXJuIHM7Ci19Ci0KLXN0YXRp
YyBjb25zdCBTdHJpbmcmIG9wYWNpdHlTdHJpbmcoKQotewotICAgIERFRklORV9TVEFUSUNfTE9D
QUwoU3RyaW5nLCBzLCAoIm9wYWNpdHkiKSk7Ci0gICAgcmV0dXJuIHM7Ci19Ci0KIHZvaWQgTWVk
aWFDb250cm9sUm9vdEVsZW1lbnQ6Om1ha2VPcGFxdWUoKQogewotICAgIGlmIChtX29wYXF1ZSkK
LSAgICAgICAgcmV0dXJuOwotCi0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIHRyYW5z
aXRpb25WYWx1ZSwgKCkpOwotICAgIGlmICh0cmFuc2l0aW9uVmFsdWUuaXNOdWxsKCkpCi0gICAg
ICAgIHRyYW5zaXRpb25WYWx1ZSA9IFN0cmluZzo6Zm9ybWF0KCJvcGFjaXR5ICUuMWdzIiwgZG9j
dW1lbnQoKS0+cGFnZSgpLT50aGVtZSgpLT5tZWRpYUNvbnRyb2xzRmFkZUluRHVyYXRpb24oKSk7
Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIG9wYWNpdHlWYWx1ZSwgKCIxIikpOwot
Ci0gICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAgICAvLyBGSVhNRTogTWFrZSBtb3JlIGVmZmljaWVu
dCA8aHR0cDovL3dlYmtpdC5vcmcvYi81ODE1Nz4KLSAgICBtX3BhbmVsLT5zdHlsZSgpLT5zZXRQ
cm9wZXJ0eSh3ZWJraXRUcmFuc2l0aW9uU3RyaW5nKCksIHRyYW5zaXRpb25WYWx1ZSwgZWMpOwot
ICAgIG1fcGFuZWwtPnN0eWxlKCktPnNldFByb3BlcnR5KG9wYWNpdHlTdHJpbmcoKSwgb3BhY2l0
eVZhbHVlLCBlYyk7Ci0gICAgbV9vcGFxdWUgPSB0cnVlOworICAgIG1fcGFuZWwtPm1ha2VPcGFx
dWUoKTsKIH0KIAogdm9pZCBNZWRpYUNvbnRyb2xSb290RWxlbWVudDo6bWFrZVRyYW5zcGFyZW50
KCkKIHsKLSAgICBpZiAoIW1fb3BhcXVlKQotICAgICAgICByZXR1cm47Ci0KLSAgICBERUZJTkVf
U1RBVElDX0xPQ0FMKFN0cmluZywgdHJhbnNpdGlvblZhbHVlLCAoKSk7Ci0gICAgaWYgKHRyYW5z
aXRpb25WYWx1ZS5pc051bGwoKSkKLSAgICAgICAgdHJhbnNpdGlvblZhbHVlID0gU3RyaW5nOjpm
b3JtYXQoIm9wYWNpdHkgJS4xZ3MiLCBkb2N1bWVudCgpLT5wYWdlKCktPnRoZW1lKCktPm1lZGlh
Q29udHJvbHNGYWRlT3V0RHVyYXRpb24oKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJp
bmcsIG9wYWNpdHlWYWx1ZSwgKCIwIikpOwotCi0gICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAgICAv
LyBGSVhNRTogTWFrZSBtb3JlIGVmZmljaWVudCA8aHR0cDovL3dlYmtpdC5vcmcvYi81ODE1Nz4K
LSAgICBtX3BhbmVsLT5zdHlsZSgpLT5zZXRQcm9wZXJ0eSh3ZWJraXRUcmFuc2l0aW9uU3RyaW5n
KCksIHRyYW5zaXRpb25WYWx1ZSwgZWMpOwotICAgIG1fcGFuZWwtPnN0eWxlKCktPnNldFByb3Bl
cnR5KG9wYWNpdHlTdHJpbmcoKSwgb3BhY2l0eVZhbHVlLCBlYyk7Ci0gICAgbV9vcGFxdWUgPSBm
YWxzZTsKKyAgICBtX3BhbmVsLT5tYWtlVHJhbnNwYXJlbnQoKTsKIH0KIAogdm9pZCBNZWRpYUNv
bnRyb2xSb290RWxlbWVudDo6cmVzZXQoKQpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9zaGFk
b3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xSb290RWxlbWVudC5oCShyZXZpc2lvbiA5NjU3MikK
KysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50LmgJ
KHdvcmtpbmcgY29weSkKQEAgLTEzMiw3ICsxMzIsNiBAQCBwcml2YXRlOgogICAgIE1lZGlhQ29u
dHJvbEZ1bGxzY3JlZW5Wb2x1bWVTbGlkZXJFbGVtZW50KiBtX2Z1bGxTY3JlZW5Wb2x1bWVTbGlk
ZXI7CiAgICAgTWVkaWFDb250cm9sRnVsbHNjcmVlblZvbHVtZU1heEJ1dHRvbkVsZW1lbnQqIG1f
ZnVsbFNjcmVlbk1heFZvbHVtZUJ1dHRvbjsKICAgICBNZWRpYUNvbnRyb2xQYW5lbEVsZW1lbnQq
IG1fcGFuZWw7Ci0gICAgYm9vbCBtX29wYXF1ZTsKICAgICBib29sIG1faXNNb3VzZU92ZXJDb250
cm9sczsKICAgICBUaW1lcjxNZWRpYUNvbnRyb2xSb290RWxlbWVudD4gbV9oaWRlRnVsbHNjcmVl
bkNvbnRyb2xzVGltZXI7CiB9OwpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVk
aWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHAJKHJl
dmlzaW9uIDk2NTcyKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9s
Um9vdEVsZW1lbnRDaHJvbWl1bS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEzMiw1MCArMTMyLDE0
IEBAIHZvaWQgTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6aGkKICAgICBtX3BhbmVs
LT5oaWRlKCk7CiB9CiAKLXN0YXRpYyBjb25zdCBTdHJpbmcmIHdlYmtpdFRyYW5zaXRpb25TdHJp
bmcoKQotewotICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBzLCAoIi13ZWJraXQtdHJh
bnNpdGlvbiIpKTsKLSAgICByZXR1cm4gczsKLX0KLQotc3RhdGljIGNvbnN0IFN0cmluZyYgb3Bh
Y2l0eVN0cmluZygpCi17Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIHMsICgib3Bh
Y2l0eSIpKTsKLSAgICByZXR1cm4gczsKLX0KLQogdm9pZCBNZWRpYUNvbnRyb2xSb290RWxlbWVu
dENocm9taXVtOjptYWtlT3BhcXVlKCkKIHsKLSAgICBpZiAobV9vcGFxdWUpCi0gICAgICAgIHJl
dHVybjsKLQotICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCB0cmFuc2l0aW9uVmFsdWUs
ICgpKTsKLSAgICBpZiAodHJhbnNpdGlvblZhbHVlLmlzTnVsbCgpKQotICAgICAgICB0cmFuc2l0
aW9uVmFsdWUgPSBTdHJpbmc6OmZvcm1hdCgib3BhY2l0eSAlLjFncyIsIGRvY3VtZW50KCktPnBh
Z2UoKS0+dGhlbWUoKS0+bWVkaWFDb250cm9sc0ZhZGVJbkR1cmF0aW9uKCkpOwotICAgIERFRklO
RV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBvcGFjaXR5VmFsdWUsICgiMSIpKTsKLQotICAgIEV4Y2Vw
dGlvbkNvZGUgZWM7Ci0gICAgLy8gRklYTUU6IE1ha2UgbW9yZSBlZmZpY2llbnQgPGh0dHA6Ly93
ZWJraXQub3JnL2IvNTgxNTc+Ci0gICAgbV9wYW5lbC0+c3R5bGUoKS0+c2V0UHJvcGVydHkod2Vi
a2l0VHJhbnNpdGlvblN0cmluZygpLCB0cmFuc2l0aW9uVmFsdWUsIGVjKTsKLSAgICBtX3BhbmVs
LT5zdHlsZSgpLT5zZXRQcm9wZXJ0eShvcGFjaXR5U3RyaW5nKCksIG9wYWNpdHlWYWx1ZSwgZWMp
OwotICAgIG1fb3BhcXVlID0gdHJ1ZTsKKyAgICBtX3BhbmVsLT5tYWtlT3BhcXVlKCk7CiB9CiAK
IHZvaWQgTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6bWFrZVRyYW5zcGFyZW50KCkK
IHsKLSAgICBpZiAoIW1fb3BhcXVlKQotICAgICAgICByZXR1cm47Ci0KLSAgICBERUZJTkVfU1RB
VElDX0xPQ0FMKFN0cmluZywgdHJhbnNpdGlvblZhbHVlLCAoKSk7Ci0gICAgaWYgKHRyYW5zaXRp
b25WYWx1ZS5pc051bGwoKSkKLSAgICAgICAgdHJhbnNpdGlvblZhbHVlID0gU3RyaW5nOjpmb3Jt
YXQoIm9wYWNpdHkgJS4xZ3MiLCBkb2N1bWVudCgpLT5wYWdlKCktPnRoZW1lKCktPm1lZGlhQ29u
dHJvbHNGYWRlT3V0RHVyYXRpb24oKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcs
IG9wYWNpdHlWYWx1ZSwgKCIwIikpOwotCi0gICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAgICAvLyBG
SVhNRTogTWFrZSBtb3JlIGVmZmljaWVudCA8aHR0cDovL3dlYmtpdC5vcmcvYi81ODE1Nz4KLSAg
ICBtX3BhbmVsLT5zdHlsZSgpLT5zZXRQcm9wZXJ0eSh3ZWJraXRUcmFuc2l0aW9uU3RyaW5nKCks
IHRyYW5zaXRpb25WYWx1ZSwgZWMpOwotICAgIG1fcGFuZWwtPnN0eWxlKCktPnNldFByb3BlcnR5
KG9wYWNpdHlTdHJpbmcoKSwgb3BhY2l0eVZhbHVlLCBlYyk7Ci0gICAgbV9vcGFxdWUgPSBmYWxz
ZTsKKyAgICBtX3BhbmVsLT5tYWtlVHJhbnNwYXJlbnQoKTsKIH0KIAogdm9pZCBNZWRpYUNvbnRy
b2xSb290RWxlbWVudENocm9taXVtOjpyZXNldCgpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>110473</attachid>
            <date>2011-10-10 22:09:32 -0700</date>
            <delta_ts>2011-10-11 09:47:58 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>10582</size>
            <attacher name="Arun Patole">arun.patole</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk3MTIxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzcgQEAKKzIwMTEtMTAtMTAgIEFydW4gUGF0
b2xlICA8Qk1GODM0QG1vdG9yb2xhLmNvbT4KKworICAgICAgICBOZWVkIG1vcmUgZWZmaWNpZW50
IHdheXMgdG8gc2V0IGlubGluZSBDU1Mgc3R5bGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODE1NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyBhZGRlZCBhcyB0aGlzIGlzIGp1c3Qg
YSBjb2RlIG9wdGltaXphdGlvbi4KKworICAgICAgICBDb2RlIG9wdGltaXphdGlvbjoKKyAgICAg
ICAgICAtVXNlZCBDU1NQcm9wZXJ0eU5hbWVzLCBDU1NWYWx1ZXMgYW5kIENTU1ByaW1pdGl2ZVZh
bHVlcyBpbnN0ZWFkIG9mIFN0cmluZ3MuCisgICAgICAgICAgLVJlbW92ZWQgZGlzcGxheVN0cmlu
ZygpLCB3ZWJraXRUcmFuc2l0aW9uU3RyaW5nKCksIG9wYWNpdHlTdHJpbmcoKSBmdW5jdGlvbnMg
YXMgdGhleSB3aWxsIG5vIGxvbmdlciBiZSBuZWVkZWQgYWZ0ZXIgdGhpcyBjaGFuZ2UuCisgICAg
ICAgICAgLU1vdmVkIG1ha2VPcGFxdWUgYW5kIG1ha2VUcmFuc3BhcmVudCBmdW5jdGlvbmFsaXR5
IHRvIE1lZGlhQ29udHJvbFBhbmVsRWxlbWVudCBmcm9tIE1lZGlhQ29udHJvbFJvb3RFbGVtZW50
LgorCisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxNZWRpYUVsZW1lbnQ6Om1lZGlhUGxheWVyUmF0ZUNoYW5nZWQpOgorICAgICAgICAq
IGh0bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
Ok1lZGlhQ29udHJvbEVsZW1lbnQ6OnNob3cpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250
cm9sRWxlbWVudDo6aGlkZSk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xQYW5lbEVs
ZW1lbnQ6Ok1lZGlhQ29udHJvbFBhbmVsRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRp
YUNvbnRyb2xQYW5lbEVsZW1lbnQ6Om1ha2VPcGFxdWUpOgorICAgICAgICAoV2ViQ29yZTo6TWVk
aWFDb250cm9sUGFuZWxFbGVtZW50OjptYWtlVHJhbnNwYXJlbnQpOgorICAgICAgICAoV2ViQ29y
ZTo6TWVkaWFDb250cm9sSW5wdXRFbGVtZW50OjpzaG93KToKKyAgICAgICAgKFdlYkNvcmU6Ok1l
ZGlhQ29udHJvbElucHV0RWxlbWVudDo6aGlkZSk6CisgICAgICAgICogaHRtbC9zaGFkb3cvTWVk
aWFDb250cm9sRWxlbWVudHMuaDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xS
b290RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUNvbnRyb2xSb290RWxlbWVu
dDo6TWVkaWFDb250cm9sUm9vdEVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250
cm9sUm9vdEVsZW1lbnQ6Om1ha2VPcGFxdWUpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250
cm9sUm9vdEVsZW1lbnQ6Om1ha2VUcmFuc3BhcmVudCk6CisgICAgICAgICogaHRtbC9zaGFkb3cv
TWVkaWFDb250cm9sUm9vdEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL3NoYWRvdy9NZWRpYUNv
bnRyb2xSb290RWxlbWVudENocm9taXVtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhQ29u
dHJvbFJvb3RFbGVtZW50Q2hyb21pdW06Om1ha2VPcGFxdWUpOgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6bWFrZVRyYW5zcGFyZW50KToKKwogMjAx
MS0xMC0xMCAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgTW92
ZSBtX2xpc3RJdGVtcyBhbmQgbV9yZWNhbGNMaXN0SXRlbXMgZnJvbSBTZWxlY3RFbGVtZW50RGF0
YSB0byBIVE1MU2VsZWN0RWxlbWVudApJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
TWVkaWFDb250cm9sRWxlbWVudHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmNwcAkocmV2aXNpb24gOTY1NzIpCisrKyBT
b3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xFbGVtZW50cy5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTc2LDI1ICs3NiwxNCBAQCBNZWRpYUNvbnRyb2xFbGVtZW50OjpNZWRpYUNv
bnRyb2xFbGVtZW50CiB7CiB9CiAKLXN0YXRpYyBjb25zdCBTdHJpbmcmIGRpc3BsYXlTdHJpbmco
KQotewotICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBzLCAoImRpc3BsYXkiKSk7Ci0g
ICAgcmV0dXJuIHM7Ci19Ci0KIHZvaWQgTWVkaWFDb250cm9sRWxlbWVudDo6c2hvdygpCiB7Ci0g
ICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAgICAvLyBGSVhNRTogTWFrZSBtb3JlIGVmZmljaWVudCA8
aHR0cDovL3dlYmtpdC5vcmcvYi81ODE1Nz4KLSAgICBzdHlsZSgpLT5yZW1vdmVQcm9wZXJ0eShk
aXNwbGF5U3RyaW5nKCksIGVjKTsKKyAgICBnZXRJbmxpbmVTdHlsZURlY2woKS0+cmVtb3ZlUHJv
cGVydHkoQ1NTUHJvcGVydHlEaXNwbGF5KTsKIH0KIAogdm9pZCBNZWRpYUNvbnRyb2xFbGVtZW50
OjpoaWRlKCkKIHsKLSAgICBFeGNlcHRpb25Db2RlIGVjOwotICAgIC8vIEZJWE1FOiBNYWtlIG1v
cmUgZWZmaWNpZW50IDxodHRwOi8vd2Via2l0Lm9yZy9iLzU4MTU3PgotICAgIERFRklORV9TVEFU
SUNfTE9DQUwoU3RyaW5nLCBub25lLCAoIm5vbmUiKSk7Ci0gICAgc3R5bGUoKS0+c2V0UHJvcGVy
dHkoZGlzcGxheVN0cmluZygpLCBub25lLCBlYyk7CisgICAgZ2V0SW5saW5lU3R5bGVEZWNsKCkt
PnNldFByb3BlcnR5KENTU1Byb3BlcnR5RGlzcGxheSwgQ1NTVmFsdWVOb25lKTsKIH0KIAogLy8g
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtMTAzLDYgKzkyLDcgQEAgaW5saW5lIE1l
ZGlhQ29udHJvbFBhbmVsRWxlbWVudDo6TWVkaWFDbwogICAgIDogTWVkaWFDb250cm9sRWxlbWVu
dChtZWRpYUVsZW1lbnQpCiAgICAgLCBtX2NhbkJlRHJhZ2dlZChmYWxzZSkKICAgICAsIG1faXNC
ZWluZ0RyYWdnZWQoZmFsc2UpCisgICAgLCBtX29wYXF1ZSh0cnVlKQogewogfQogCkBAIC0xOTQs
NiArMTg0LDMyIEBAIHZvaWQgTWVkaWFDb250cm9sUGFuZWxFbGVtZW50OjpyZXNldFBvc2kKICAg
ICBzdHlsZS0+cmVtb3ZlUHJvcGVydHkoQ1NTUHJvcGVydHlNYXJnaW5Ub3ApOwogfQogCit2b2lk
IE1lZGlhQ29udHJvbFBhbmVsRWxlbWVudDo6bWFrZU9wYXF1ZSgpCit7CisgICAgaWYgKG1fb3Bh
cXVlKQorICAgICAgICByZXR1cm47CisgICAgCisgICAgQ1NTTXV0YWJsZVN0eWxlRGVjbGFyYXRp
b24qIHN0eWxlID0gZ2V0SW5saW5lU3R5bGVEZWNsKCk7CisgICAgc3R5bGUtPnNldFByb3BlcnR5
KENTU1Byb3BlcnR5V2Via2l0VHJhbnNpdGlvblByb3BlcnR5LCBDU1NQcm9wZXJ0eU9wYWNpdHkp
OworICAgIHN0eWxlLT5zZXRQcm9wZXJ0eShDU1NQcm9wZXJ0eVdlYmtpdFRyYW5zaXRpb25EdXJh
dGlvbiwgZG9jdW1lbnQoKS0+cGFnZSgpLT50aGVtZSgpLT5tZWRpYUNvbnRyb2xzRmFkZUluRHVy
YXRpb24oKSwgQ1NTUHJpbWl0aXZlVmFsdWU6OkNTU19TKTsKKyAgICBzdHlsZS0+c2V0UHJvcGVy
dHkoQ1NTUHJvcGVydHlPcGFjaXR5LCAxLjAsIENTU1ByaW1pdGl2ZVZhbHVlOjpDU1NfTlVNQkVS
KTsKKworICAgIG1fb3BhcXVlID0gdHJ1ZTsKK30KKwordm9pZCBNZWRpYUNvbnRyb2xQYW5lbEVs
ZW1lbnQ6Om1ha2VUcmFuc3BhcmVudCgpCit7CisgICAgaWYgKCFtX29wYXF1ZSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgQ1NTTXV0YWJsZVN0eWxlRGVjbGFyYXRpb24qIHN0eWxlID0gZ2V0SW5s
aW5lU3R5bGVEZWNsKCk7CisgICAgc3R5bGUtPnNldFByb3BlcnR5KENTU1Byb3BlcnR5V2Via2l0
VHJhbnNpdGlvblByb3BlcnR5LCBDU1NQcm9wZXJ0eU9wYWNpdHkpOworICAgIHN0eWxlLT5zZXRQ
cm9wZXJ0eShDU1NQcm9wZXJ0eVdlYmtpdFRyYW5zaXRpb25EdXJhdGlvbiwgZG9jdW1lbnQoKS0+
cGFnZSgpLT50aGVtZSgpLT5tZWRpYUNvbnRyb2xzRmFkZU91dER1cmF0aW9uKCksIENTU1ByaW1p
dGl2ZVZhbHVlOjpDU1NfUyk7CisgICAgc3R5bGUtPnNldFByb3BlcnR5KENTU1Byb3BlcnR5T3Bh
Y2l0eSwgMC4wLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUik7CisKKyAgICBtX29wYXF1
ZSA9IGZhbHNlOworfQorCiB2b2lkIE1lZGlhQ29udHJvbFBhbmVsRWxlbWVudDo6ZGVmYXVsdEV2
ZW50SGFuZGxlcihFdmVudCogZXZlbnQpCiB7CiAgICAgTWVkaWFDb250cm9sRWxlbWVudDo6ZGVm
YXVsdEV2ZW50SGFuZGxlcihldmVudCk7CkBAIC0zOTYsMTUgKzQxMiwxMiBAQCBNZWRpYUNvbnRy
b2xJbnB1dEVsZW1lbnQ6Ok1lZGlhQ29udHJvbEluCiAKIHZvaWQgTWVkaWFDb250cm9sSW5wdXRF
bGVtZW50OjpzaG93KCkKIHsKLSAgICBFeGNlcHRpb25Db2RlIGVjOwotICAgIHN0eWxlKCktPnJl
bW92ZVByb3BlcnR5KGRpc3BsYXlTdHJpbmcoKSwgZWMpOworICAgIGdldElubGluZVN0eWxlRGVj
bCgpLT5yZW1vdmVQcm9wZXJ0eShDU1NQcm9wZXJ0eURpc3BsYXkpOwogfQogCiB2b2lkIE1lZGlh
Q29udHJvbElucHV0RWxlbWVudDo6aGlkZSgpCiB7Ci0gICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAg
ICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgbm9uZSwgKCJub25lIikpOwotICAgIHN0eWxl
KCktPnNldFByb3BlcnR5KGRpc3BsYXlTdHJpbmcoKSwgbm9uZSwgZWMpOworICAgIGdldElubGlu
ZVN0eWxlRGVjbCgpLT5zZXRQcm9wZXJ0eShDU1NQcm9wZXJ0eURpc3BsYXksIENTU1ZhbHVlTm9u
ZSk7CiB9CiAKIApJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9s
RWxlbWVudHMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRp
YUNvbnRyb2xFbGVtZW50cy5oCShyZXZpc2lvbiA5NjU3MikKKysrIFNvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L01lZGlhQ29udHJvbEVsZW1lbnRzLmgJKHdvcmtpbmcgY29weSkKQEAgLTEwMSw2
ICsxMDEsOCBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldENhbkJlRHJhZ2dlZChib29sKTsKICAg
ICB2b2lkIHJlc2V0UG9zaXRpb24oKTsKKyAgICB2b2lkIG1ha2VPcGFxdWUoKTsKKyAgICB2b2lk
IG1ha2VUcmFuc3BhcmVudCgpOwogCiBwcml2YXRlOgogICAgIE1lZGlhQ29udHJvbFBhbmVsRWxl
bWVudChIVE1MTWVkaWFFbGVtZW50Kik7CkBAIC0xMTYsNiArMTE4LDcgQEAgcHJpdmF0ZToKIAog
ICAgIGJvb2wgbV9jYW5CZURyYWdnZWQ7CiAgICAgYm9vbCBtX2lzQmVpbmdEcmFnZ2VkOworICAg
IGJvb2wgbV9vcGFxdWU7CiAgICAgTGF5b3V0UG9pbnQgbV9kcmFnU3RhcnRQb3NpdGlvbjsKICAg
ICBMYXlvdXRQb2ludCBtX2RyYWdTdGFydEV2ZW50TG9jYXRpb247CiB9OwpJbmRleDogU291cmNl
L1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnQuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVtZW50
LmNwcAkocmV2aXNpb24gOTY1NzIpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9NZWRp
YUNvbnRyb2xSb290RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY0LDcgKzY0LDYgQEAg
TWVkaWFDb250cm9sUm9vdEVsZW1lbnQ6Ok1lZGlhQ29udHJvbFJvbwogICAgICwgbV9mdWxsU2Ny
ZWVuVm9sdW1lU2xpZGVyKDApCiAgICAgLCBtX2Z1bGxTY3JlZW5NYXhWb2x1bWVCdXR0b24oMCkK
ICAgICAsIG1fcGFuZWwoMCkKLSAgICAsIG1fb3BhcXVlKHRydWUpCiAgICAgLCBtX2lzTW91c2VP
dmVyQ29udHJvbHMoZmFsc2UpCiAgICAgLCBtX2hpZGVGdWxsc2NyZWVuQ29udHJvbHNUaW1lcih0
aGlzLCAmTWVkaWFDb250cm9sUm9vdEVsZW1lbnQ6OmhpZGVGdWxsc2NyZWVuQ29udHJvbHNUaW1l
ckZpcmVkKQogewpAQCAtMjI4LDUwICsyMjcsMTQgQEAgdm9pZCBNZWRpYUNvbnRyb2xSb290RWxl
bWVudDo6aGlkZSgpCiAgICAgbV9wYW5lbC0+aGlkZSgpOwogfQogCi1zdGF0aWMgY29uc3QgU3Ry
aW5nJiB3ZWJraXRUcmFuc2l0aW9uU3RyaW5nKCkKLXsKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FM
KFN0cmluZywgcywgKCItd2Via2l0LXRyYW5zaXRpb24iKSk7Ci0gICAgcmV0dXJuIHM7Ci19Ci0K
LXN0YXRpYyBjb25zdCBTdHJpbmcmIG9wYWNpdHlTdHJpbmcoKQotewotICAgIERFRklORV9TVEFU
SUNfTE9DQUwoU3RyaW5nLCBzLCAoIm9wYWNpdHkiKSk7Ci0gICAgcmV0dXJuIHM7Ci19Ci0KIHZv
aWQgTWVkaWFDb250cm9sUm9vdEVsZW1lbnQ6Om1ha2VPcGFxdWUoKQogewotICAgIGlmIChtX29w
YXF1ZSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcs
IHRyYW5zaXRpb25WYWx1ZSwgKCkpOwotICAgIGlmICh0cmFuc2l0aW9uVmFsdWUuaXNOdWxsKCkp
Ci0gICAgICAgIHRyYW5zaXRpb25WYWx1ZSA9IFN0cmluZzo6Zm9ybWF0KCJvcGFjaXR5ICUuMWdz
IiwgZG9jdW1lbnQoKS0+cGFnZSgpLT50aGVtZSgpLT5tZWRpYUNvbnRyb2xzRmFkZUluRHVyYXRp
b24oKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIG9wYWNpdHlWYWx1ZSwgKCIx
IikpOwotCi0gICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAgICAvLyBGSVhNRTogTWFrZSBtb3JlIGVm
ZmljaWVudCA8aHR0cDovL3dlYmtpdC5vcmcvYi81ODE1Nz4KLSAgICBtX3BhbmVsLT5zdHlsZSgp
LT5zZXRQcm9wZXJ0eSh3ZWJraXRUcmFuc2l0aW9uU3RyaW5nKCksIHRyYW5zaXRpb25WYWx1ZSwg
ZWMpOwotICAgIG1fcGFuZWwtPnN0eWxlKCktPnNldFByb3BlcnR5KG9wYWNpdHlTdHJpbmcoKSwg
b3BhY2l0eVZhbHVlLCBlYyk7Ci0gICAgbV9vcGFxdWUgPSB0cnVlOworICAgIG1fcGFuZWwtPm1h
a2VPcGFxdWUoKTsKIH0KIAogdm9pZCBNZWRpYUNvbnRyb2xSb290RWxlbWVudDo6bWFrZVRyYW5z
cGFyZW50KCkKIHsKLSAgICBpZiAoIW1fb3BhcXVlKQotICAgICAgICByZXR1cm47Ci0KLSAgICBE
RUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgdHJhbnNpdGlvblZhbHVlLCAoKSk7Ci0gICAgaWYg
KHRyYW5zaXRpb25WYWx1ZS5pc051bGwoKSkKLSAgICAgICAgdHJhbnNpdGlvblZhbHVlID0gU3Ry
aW5nOjpmb3JtYXQoIm9wYWNpdHkgJS4xZ3MiLCBkb2N1bWVudCgpLT5wYWdlKCktPnRoZW1lKCkt
Pm1lZGlhQ29udHJvbHNGYWRlT3V0RHVyYXRpb24oKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NB
TChTdHJpbmcsIG9wYWNpdHlWYWx1ZSwgKCIwIikpOwotCi0gICAgRXhjZXB0aW9uQ29kZSBlYzsK
LSAgICAvLyBGSVhNRTogTWFrZSBtb3JlIGVmZmljaWVudCA8aHR0cDovL3dlYmtpdC5vcmcvYi81
ODE1Nz4KLSAgICBtX3BhbmVsLT5zdHlsZSgpLT5zZXRQcm9wZXJ0eSh3ZWJraXRUcmFuc2l0aW9u
U3RyaW5nKCksIHRyYW5zaXRpb25WYWx1ZSwgZWMpOwotICAgIG1fcGFuZWwtPnN0eWxlKCktPnNl
dFByb3BlcnR5KG9wYWNpdHlTdHJpbmcoKSwgb3BhY2l0eVZhbHVlLCBlYyk7Ci0gICAgbV9vcGFx
dWUgPSBmYWxzZTsKKyAgICBtX3BhbmVsLT5tYWtlVHJhbnNwYXJlbnQoKTsKIH0KIAogdm9pZCBN
ZWRpYUNvbnRyb2xSb290RWxlbWVudDo6cmVzZXQoKQpJbmRleDogU291cmNlL1dlYkNvcmUvaHRt
bC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9odG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xSb290RWxlbWVudC5oCShyZXZpc2lvbiA5
NjU3MikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L01lZGlhQ29udHJvbFJvb3RFbGVt
ZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTEzMiw3ICsxMzIsNiBAQCBwcml2YXRlOgogICAgIE1l
ZGlhQ29udHJvbEZ1bGxzY3JlZW5Wb2x1bWVTbGlkZXJFbGVtZW50KiBtX2Z1bGxTY3JlZW5Wb2x1
bWVTbGlkZXI7CiAgICAgTWVkaWFDb250cm9sRnVsbHNjcmVlblZvbHVtZU1heEJ1dHRvbkVsZW1l
bnQqIG1fZnVsbFNjcmVlbk1heFZvbHVtZUJ1dHRvbjsKICAgICBNZWRpYUNvbnRyb2xQYW5lbEVs
ZW1lbnQqIG1fcGFuZWw7Ci0gICAgYm9vbCBtX29wYXF1ZTsKICAgICBib29sIG1faXNNb3VzZU92
ZXJDb250cm9sczsKICAgICBUaW1lcjxNZWRpYUNvbnRyb2xSb290RWxlbWVudD4gbV9oaWRlRnVs
bHNjcmVlbkNvbnRyb2xzVGltZXI7CiB9OwpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9zaGFk
b3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5j
cHAJKHJldmlzaW9uIDk2NTcyKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvTWVkaWFD
b250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEzMiw1MCAr
MTMyLDE0IEBAIHZvaWQgTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6aGkKICAgICBt
X3BhbmVsLT5oaWRlKCk7CiB9CiAKLXN0YXRpYyBjb25zdCBTdHJpbmcmIHdlYmtpdFRyYW5zaXRp
b25TdHJpbmcoKQotewotICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBzLCAoIi13ZWJr
aXQtdHJhbnNpdGlvbiIpKTsKLSAgICByZXR1cm4gczsKLX0KLQotc3RhdGljIGNvbnN0IFN0cmlu
ZyYgb3BhY2l0eVN0cmluZygpCi17Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcsIHMs
ICgib3BhY2l0eSIpKTsKLSAgICByZXR1cm4gczsKLX0KLQogdm9pZCBNZWRpYUNvbnRyb2xSb290
RWxlbWVudENocm9taXVtOjptYWtlT3BhcXVlKCkKIHsKLSAgICBpZiAobV9vcGFxdWUpCi0gICAg
ICAgIHJldHVybjsKLQotICAgIERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCB0cmFuc2l0aW9u
VmFsdWUsICgpKTsKLSAgICBpZiAodHJhbnNpdGlvblZhbHVlLmlzTnVsbCgpKQotICAgICAgICB0
cmFuc2l0aW9uVmFsdWUgPSBTdHJpbmc6OmZvcm1hdCgib3BhY2l0eSAlLjFncyIsIGRvY3VtZW50
KCktPnBhZ2UoKS0+dGhlbWUoKS0+bWVkaWFDb250cm9sc0ZhZGVJbkR1cmF0aW9uKCkpOwotICAg
IERFRklORV9TVEFUSUNfTE9DQUwoU3RyaW5nLCBvcGFjaXR5VmFsdWUsICgiMSIpKTsKLQotICAg
IEV4Y2VwdGlvbkNvZGUgZWM7Ci0gICAgLy8gRklYTUU6IE1ha2UgbW9yZSBlZmZpY2llbnQgPGh0
dHA6Ly93ZWJraXQub3JnL2IvNTgxNTc+Ci0gICAgbV9wYW5lbC0+c3R5bGUoKS0+c2V0UHJvcGVy
dHkod2Via2l0VHJhbnNpdGlvblN0cmluZygpLCB0cmFuc2l0aW9uVmFsdWUsIGVjKTsKLSAgICBt
X3BhbmVsLT5zdHlsZSgpLT5zZXRQcm9wZXJ0eShvcGFjaXR5U3RyaW5nKCksIG9wYWNpdHlWYWx1
ZSwgZWMpOwotICAgIG1fb3BhcXVlID0gdHJ1ZTsKKyAgICBtX3BhbmVsLT5tYWtlT3BhcXVlKCk7
CiB9CiAKIHZvaWQgTWVkaWFDb250cm9sUm9vdEVsZW1lbnRDaHJvbWl1bTo6bWFrZVRyYW5zcGFy
ZW50KCkKIHsKLSAgICBpZiAoIW1fb3BhcXVlKQotICAgICAgICByZXR1cm47Ci0KLSAgICBERUZJ
TkVfU1RBVElDX0xPQ0FMKFN0cmluZywgdHJhbnNpdGlvblZhbHVlLCAoKSk7Ci0gICAgaWYgKHRy
YW5zaXRpb25WYWx1ZS5pc051bGwoKSkKLSAgICAgICAgdHJhbnNpdGlvblZhbHVlID0gU3RyaW5n
Ojpmb3JtYXQoIm9wYWNpdHkgJS4xZ3MiLCBkb2N1bWVudCgpLT5wYWdlKCktPnRoZW1lKCktPm1l
ZGlhQ29udHJvbHNGYWRlT3V0RHVyYXRpb24oKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChT
dHJpbmcsIG9wYWNpdHlWYWx1ZSwgKCIwIikpOwotCi0gICAgRXhjZXB0aW9uQ29kZSBlYzsKLSAg
ICAvLyBGSVhNRTogTWFrZSBtb3JlIGVmZmljaWVudCA8aHR0cDovL3dlYmtpdC5vcmcvYi81ODE1
Nz4KLSAgICBtX3BhbmVsLT5zdHlsZSgpLT5zZXRQcm9wZXJ0eSh3ZWJraXRUcmFuc2l0aW9uU3Ry
aW5nKCksIHRyYW5zaXRpb25WYWx1ZSwgZWMpOwotICAgIG1fcGFuZWwtPnN0eWxlKCktPnNldFBy
b3BlcnR5KG9wYWNpdHlTdHJpbmcoKSwgb3BhY2l0eVZhbHVlLCBlYyk7Ci0gICAgbV9vcGFxdWUg
PSBmYWxzZTsKKyAgICBtX3BhbmVsLT5tYWtlVHJhbnNwYXJlbnQoKTsKIH0KIAogdm9pZCBNZWRp
YUNvbnRyb2xSb290RWxlbWVudENocm9taXVtOjpyZXNldCgpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>