<?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>92813</bug_id>
          
          <creation_ts>2012-07-31 16:41:33 -0700</creation_ts>
          <short_desc>[chromium] Make WebKit API support draggable region change update</short_desc>
          <delta_ts>2012-08-01 17:29:00 -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>WebKit Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jian Li">jianli</reporter>
          <assigned_to name="Jian Li">jianli</assigned_to>
          <cc>abarth</cc>
    
    <cc>dglazkov</cc>
    
    <cc>dimich</cc>
    
    <cc>fishd</cc>
    
    <cc>jamesr</cc>
    
    <cc>tkent+wkapi</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>683633</commentid>
    <comment_count>0</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2012-07-31 16:41:33 -0700</bug_when>
    <thetext>We need to make WebKit API for chromium support draggable region change update.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>683658</commentid>
    <comment_count>1</comment_count>
      <attachid>155681</attachid>
    <who name="Jian Li">jianli</who>
    <bug_when>2012-07-31 17:08:12 -0700</bug_when>
    <thetext>Created attachment 155681
Proposed Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>683668</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-31 17:18:00 -0700</bug_when>
    <thetext>Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before submitting, as this patch contains changes to the Chromium public API. See also https://trac.webkit.org/wiki/ChromiumWebKitAPI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>683669</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-31 17:18:19 -0700</bug_when>
    <thetext>Attachment 155681 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/Platform/ChangeLog&apos;, u&apos;Source/Platf...&quot; exit_code: 1
Source/WebKit/chromium/src/WebDocument.cpp:248:  draggable_regions is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming/underscores] [4]
Total errors found: 1 in 9 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>683672</commentid>
    <comment_count>4</comment_count>
      <attachid>155685</attachid>
    <who name="Jian Li">jianli</who>
    <bug_when>2012-07-31 17:21:33 -0700</bug_when>
    <thetext>Created attachment 155685
Proposed Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>684330</commentid>
    <comment_count>5</comment_count>
      <attachid>155685</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-01 11:05:26 -0700</bug_when>
    <thetext>Comment on attachment 155685
Proposed Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=155685&amp;action=review

&gt; Source/Platform/chromium/public/WebDraggableRegion.h:40
&gt; +struct WebDraggableRegion {

This looks like a wrapper for DashboardRegionValue, which is a WebCore concept, not a WebCore/platform concept.  Therefore, this header should be in WebKit/chromium/public rather than in Platform.

&gt; Source/Platform/chromium/public/WebDraggableRegion.h:44
&gt; +    int type;

Is this really an enum?  Should we create an API for the enum values so we can COMPILE_ASSERT that they match their WebCore counterparts?

&gt; Source/WebKit/chromium/public/WebViewClient.h:384
&gt; +    // Draggable regions ----------------------------------------------------

Two blank lines before section headings.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>684684</commentid>
    <comment_count>6</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2012-08-01 15:51:38 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 155685 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=155685&amp;action=review
&gt; 
&gt; &gt; Source/Platform/chromium/public/WebDraggableRegion.h:40
&gt; &gt; +struct WebDraggableRegion {
&gt; 
&gt; This looks like a wrapper for DashboardRegionValue, which is a WebCore concept, not a WebCore/platform concept.  Therefore, this header should be in WebKit/chromium/public rather than in Platform.

Will fix it at landing time.

&gt; 
&gt; &gt; Source/Platform/chromium/public/WebDraggableRegion.h:44
&gt; &gt; +    int type;
&gt; 
&gt; Is this really an enum?  Should we create an API for the enum values so we can COMPILE_ASSERT that they match their WebCore counterparts?

WebCore counterparts also use int type. For now, I am going to keep int type for our version. I am thinking of ignoring the type information (rectangular or circular). We will extract the shape information from the element when CSS shape is fully supported and then update this struct.

&gt; 
&gt; &gt; Source/WebKit/chromium/public/WebViewClient.h:384
&gt; &gt; +    // Draggable regions ----------------------------------------------------
&gt; 
&gt; Two blank lines before section headings.

Will fix it at landing time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>684746</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-01 16:27:12 -0700</bug_when>
    <thetext>&gt; WebCore counterparts also use int type. For now, I am going to keep int type for our version. I am thinking of ignoring the type information (rectangular or circular). We will extract the shape information from the element when CSS shape is fully supported and then update this struct.

Just a bare int doesn&apos;t make any sense in the API.  Perhaps we should omit it for now and add it later when we need it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>684751</commentid>
    <comment_count>8</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2012-08-01 16:30:14 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; &gt; WebCore counterparts also use int type. For now, I am going to keep int type for our version. I am thinking of ignoring the type information (rectangular or circular). We will extract the shape information from the element when CSS shape is fully supported and then update this struct.
&gt; 
&gt; Just a bare int doesn&apos;t make any sense in the API.  Perhaps we should omit it for now and add it later when we need it?

Sounds good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>684807</commentid>
    <comment_count>9</comment_count>
    <who name="Jian Li">jianli</who>
    <bug_when>2012-08-01 17:29:00 -0700</bug_when>
    <thetext>Committed as http://trac.webkit.org/changeset/124394.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>155681</attachid>
            <date>2012-07-31 17:08:12 -0700</date>
            <delta_ts>2012-07-31 17:21:33 -0700</delta_ts>
            <desc>Proposed Patch</desc>
            <filename>92813</filename>
            <type>text/plain</type>
            <size>10707</size>
            <attacher name="Jian Li">jianli</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9QbGF0Zm9ybS9DaGFuZ2VMb2cgYi9Tb3VyY2UvUGxhdGZvcm0v
Q2hhbmdlTG9nCmluZGV4IDY5NjU2NzkuLmI3NGYxOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9QbGF0
Zm9ybS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1BsYXRmb3JtL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE3IEBACisyMDEyLTA3LTMxICBKaWFuIExpICA8amlhbmxpQGNocm9taXVtLm9yZz4KKworICAg
ICAgICBbY2hyb21pdW1dIE1ha2UgV2ViS2l0IEFQSSBzdXBwb3J0IGRyYWdnYWJsZSByZWdpb24g
Y2hhbmdlIHVwZGF0ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9OTI4MTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBBZGQgV2ViRHJhZ2dhYmxlUmVnaW9uIGZvciBjaHJvbWl1bSdzIHVzYWdlLgorCisgICAg
ICAgICogY2hyb21pdW0vcHVibGljL1dlYkRyYWdnYWJsZVJlZ2lvbi5oOiBBZGRlZC4KKyAgICAg
ICAgKFdlYktpdCk6CisgICAgICAgIChXZWJEcmFnZ2FibGVSZWdpb24pOgorICAgICAgICAoV2Vi
S2l0OjpXZWJEcmFnZ2FibGVSZWdpb246OldlYkRyYWdnYWJsZVJlZ2lvbik6CisKIDIwMTItMDct
MzEgIElhbiBWb2xsaWNrICA8dm9sbGlja0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW2Nocm9t
aXVtXSBVc2UgV2ViQW5pbWF0aW9uIGFuZCByZWxhdGVkIGNsYXNzZXMgaW4gR3JhcGhpY3NMYXll
ckNocm9taXVtIGFuZCBBbmltVHJhbnNsYXRpb25VdGlsCmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxh
dGZvcm0vY2hyb21pdW0vcHVibGljL1dlYkRyYWdnYWJsZVJlZ2lvbi5oIGIvU291cmNlL1BsYXRm
b3JtL2Nocm9taXVtL3B1YmxpYy9XZWJEcmFnZ2FibGVSZWdpb24uaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5lNTlhOTIzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1Bs
YXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJEcmFnZ2FibGVSZWdpb24uaApAQCAtMCwwICsxLDUx
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgor
ICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xl
IEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05U
UklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisg
KiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworI2lmbmRlZiBXZWJEcmFnZ2FibGVSZWdpb25faAorI2RlZmluZSBXZWJEcmFnZ2FibGVSZWdp
b25faAorCisjaW5jbHVkZSAiV2ViQ29tbW9uLmgiCisjaW5jbHVkZSAiV2ViUmVjdC5oIgorI2lu
Y2x1ZGUgIldlYlN0cmluZy5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworc3RydWN0IFdlYkRy
YWdnYWJsZVJlZ2lvbiB7CisgICAgV2ViU3RyaW5nIGxhYmVsOworICAgIFdlYlJlY3QgYm91bmRz
OworICAgIFdlYlJlY3QgY2xpcDsKKyAgICBpbnQgdHlwZTsKKworICAgIFdlYkRyYWdnYWJsZVJl
Z2lvbigpIDogdHlwZSgwKSB7IH0KK307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCisjZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggN2FjMTEwMC4uOTNjNmEzNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOCBAQAorMjAxMi0wNy0zMSAgSmlhbiBM
aSAgPGppYW5saUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBNYWtlIFdlYktp
dCBBUEkgc3VwcG9ydCBkcmFnZ2FibGUgcmVnaW9uIGNoYW5nZSB1cGRhdGUKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkyODEzCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW50cm9kdWNlIFdlYkRyYWdnYWJs
ZVJlZ2lvbiBhbmQgZGVsZWdhdGUgdGhlIGRyYWdnYWJsZSByZWdpb24gdXBkYXRlCisgICAgICAg
IGNhbGwgdG8gdGhlIG5ldyBtZXRob2QgZHJhZ2dhYmxlUmVnaW9uc0NoYW5nZWQgaW4gV2ViVmll
d0NsaWVudC4KKworICAgICAgICAqIHB1YmxpYy9XZWJEb2N1bWVudC5oOgorICAgICAgICAoV2Vi
RG9jdW1lbnQpOgorICAgICAgICAqIHB1YmxpYy9XZWJWaWV3Q2xpZW50Lmg6CisgICAgICAgIChX
ZWJWaWV3Q2xpZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0NsaWVudDo6ZHJhZ2dhYmxl
UmVnaW9uc0NoYW5nZWQpOgorICAgICAgICAqIHB1YmxpYy9wbGF0Zm9ybS9XZWJEcmFnZ2FibGVS
ZWdpb24uaDogQWRkZWQuCisgICAgICAgICogc3JjL0Nocm9tZUNsaWVudEltcGwuY3BwOgorICAg
ICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6Q2hyb21lQ2xpZW50SW1wbDo6ZGFzaGJv
YXJkUmVnaW9uc0NoYW5nZWQpOgorICAgICAgICAqIHNyYy9DaHJvbWVDbGllbnRJbXBsLmg6Cisg
ICAgICAgIChDaHJvbWVDbGllbnRJbXBsKToKKyAgICAgICAgKiBzcmMvV2ViRG9jdW1lbnQuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJEb2N1bWVudDo6ZHJhZ2dhYmxlUmVnaW9ucyk6CisgICAg
ICAgIChXZWJLaXQpOgorCiAyMDEyLTA3LTMxICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgW0Nocm9taXVtLUFuZHJvaWRdIFdlIHNob3VsZCBodWVyaXN0aWNhbGx5
IGRldGVjdCBjb250ZW50IGludGVudHMgb24gdG91Y2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYkRvY3VtZW50LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3B1YmxpYy9XZWJEb2N1bWVudC5oCmluZGV4IGYyMjk2YjcuLjg5YTdmZDAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkRvY3VtZW50LmgKKysrIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRG9jdW1lbnQuaApAQCAtMzMsNiArMzMsNyBAQAog
CiAjaW5jbHVkZSAiV2ViTm9kZS5oIgogI2luY2x1ZGUgIldlYlNlY3VyaXR5T3JpZ2luLmgiCisj
aW5jbHVkZSAicGxhdGZvcm0vV2ViRHJhZ2dhYmxlUmVnaW9uLmgiCiAjaW5jbHVkZSAicGxhdGZv
cm0vV2ViUmVmZXJyZXJQb2xpY3kuaCIKICNpbmNsdWRlICJwbGF0Zm9ybS9XZWJWZWN0b3IuaCIK
IApAQCAtMTIwLDYgKzEyMSw4IEBAIHB1YmxpYzoKICAgICAvLyBXZWJWaWV3LgogICAgIFdFQktJ
VF9FWFBPUlQgdm9pZCBpbnNlcnRVc2VyU3R5bGVTaGVldChjb25zdCBXZWJTdHJpbmcmIHNvdXJj
ZUNvZGUsIFVzZXJTdHlsZUxldmVsKTsKIAorICAgIFdFQktJVF9FWFBPUlQgV2ViVmVjdG9yPFdl
YkRyYWdnYWJsZVJlZ2lvbj4gZHJhZ2dhYmxlUmVnaW9ucygpIGNvbnN0OworCiAjaWYgV0VCS0lU
X0lNUExFTUVOVEFUSU9OCiAgICAgV2ViRG9jdW1lbnQoY29uc3QgV1RGOjpQYXNzUmVmUHRyPFdl
YkNvcmU6OkRvY3VtZW50PiYpOwogICAgIFdlYkRvY3VtZW50JiBvcGVyYXRvcj0oY29uc3QgV1RG
OjpQYXNzUmVmUHRyPFdlYkNvcmU6OkRvY3VtZW50PiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViVmlld0NsaWVudC5oIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9wdWJsaWMvV2ViVmlld0NsaWVudC5oCmluZGV4IGM1NDExZDkuLjdhN2EyZGQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlZpZXdDbGllbnQuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJWaWV3Q2xpZW50LmgKQEAgLTM4MSw2
ICszODEsMTEgQEAgcHVibGljOgogICAgIC8vIENhbmNlbHMgYW55IHByZXZpb3VzbHkgc2NoZWR1
bGVkIGNvbnRlbnQgaW50ZW50cyB0aGF0IGhhdmUgbm90IHlldCBsYXVuY2hlZC4KICAgICB2aXJ0
dWFsIHZvaWQgY2FuY2VsU2NoZWR1bGVkQ29udGVudEludGVudHMoKSB7IH0KIAorICAgIC8vIERy
YWdnYWJsZSByZWdpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KKworICAgIC8vIEluZm9ybXMgdGhlIGJyb3dzZXIgdGhhdCB0aGUgZHJhZ2dh
YmxlIHJlZ2lvbnMgaGF2ZSBiZWVuIHVwZGF0ZWQuCisgICAgdmlydHVhbCB2b2lkIGRyYWdnYWJs
ZVJlZ2lvbnNDaGFuZ2VkKCkgeyB9CisKIHByb3RlY3RlZDoKICAgICB+V2ViVmlld0NsaWVudCgp
IHsgfQogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL3BsYXRm
b3JtL1dlYkRyYWdnYWJsZVJlZ2lvbi5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMv
cGxhdGZvcm0vV2ViRHJhZ2dhYmxlUmVnaW9uLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uYjFiNDcwNAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vcHVibGljL3BsYXRmb3JtL1dlYkRyYWdnYWJsZVJlZ2lvbi5oCkBAIC0wLDAgKzEsMzEgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAg
ICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQor
ICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5j
LiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUg
d2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9X
TkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
KyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
aW5jbHVkZSAiLi4vLi4vLi4vLi4vUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dlYkRyYWdnYWJs
ZVJlZ2lvbi5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvQ2hyb21l
Q2xpZW50SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJ
bXBsLmNwcAppbmRleCAwNzQwMWM2Li5hZDEwMDBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBsLmNwcApAQCAtMTExMiw2ICsxMTEyLDE1IEBAIGJv
b2wgQ2hyb21lQ2xpZW50SW1wbDo6aXNQb2ludGVyTG9ja2VkKCkKIH0KICNlbmRpZgogCisjaWYg
RU5BQkxFKFdJREdFVF9SRUdJT04pCit2b2lkIENocm9tZUNsaWVudEltcGw6OmRhc2hib2FyZFJl
Z2lvbnNDaGFuZ2VkKCkKK3sKKyAgICBXZWJWaWV3Q2xpZW50KiBjbGllbnQgPSBtX3dlYlZpZXct
PmNsaWVudCgpOworICAgIGlmIChjbGllbnQpCisgICAgICAgIGNsaWVudC0+ZHJhZ2dhYmxlUmVn
aW9uc0NoYW5nZWQoKTsKK30KKyNlbmRpZgorCiAjaWYgRU5BQkxFKFJFR0lTVEVSX1BST1RPQ09M
X0hBTkRMRVIpCiBQYXNzT3duUHRyPFJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyQ2xpZW50SW1wbD4g
UmVnaXN0ZXJQcm90b2NvbEhhbmRsZXJDbGllbnRJbXBsOjpjcmVhdGUoV2ViVmlld0ltcGwqIHdl
YlZpZXcpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVD
bGllbnRJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBs
LmgKaW5kZXggYzhjNGU1OC4uYTc4NmRjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvQ2hyb21lQ2xpZW50SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL0Nocm9tZUNsaWVudEltcGwuaApAQCAtMTM2LDYgKzEzNiw5IEBAIHB1YmxpYzoKICAgICAg
ICAgV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYgZGF0YWJhc2VOYW1lKTsKICAg
ICB2aXJ0dWFsIHZvaWQgcmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVk
KTsKICAgICB2aXJ0dWFsIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShX
ZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCk7CisjaWYg
RU5BQkxFKFdJREdFVF9SRUdJT04pCisgICAgdmlydHVhbCB2b2lkIGRhc2hib2FyZFJlZ2lvbnND
aGFuZ2VkKCk7CisjZW5kaWYKICAgICB2aXJ0dWFsIGJvb2wgcGFpbnRDdXN0b21PdmVyaGFuZ0Fy
ZWEoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0KiwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYsIGNv
bnN0IFdlYkNvcmU6OkludFJlY3QmLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jik7CiAjaWYgRU5B
QkxFKElOUFVUX1RZUEVfQ09MT1IpCiAgICAgdmlydHVhbCBQYXNzT3duUHRyPFdlYkNvcmU6OkNv
bG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9vc2VyKFdlYkNvcmU6OkNvbG9yQ2hvb3NlckNsaWVu
dCosIGNvbnN0IFdlYkNvcmU6OkNvbG9yJikgT1ZFUlJJREU7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJEb2N1bWVudC5jcHAKaW5kZXggMDYzZjcxOC4uZTU3MWZmZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRvY3VtZW50LmNwcApAQCAtNDQsNiArNDQsNyBAQAog
I2luY2x1ZGUgIkhUTUxGb3JtRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxIZWFkRWxlbWVudC5o
IgogI2luY2x1ZGUgIk5vZGVMaXN0LmgiCisjaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCiAjaW5j
bHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJTdHlsZVNoZWV0Q29udGVudHMuaCIK
ICNpbmNsdWRlICJXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0LmgiCkBAIC0yNDIsNiArMjQzLDI2IEBA
IFdlYkFjY2Vzc2liaWxpdHlPYmplY3QgV2ViRG9jdW1lbnQ6OmFjY2Vzc2liaWxpdHlPYmplY3RG
cm9tSUQoaW50IGF4SUQpIGNvbnN0CiAgICAgICAgIGRvY3VtZW50LT5heE9iamVjdENhY2hlKCkt
Pm9iamVjdEZyb21BWElEKGF4SUQpKTsKIH0KIAorV2ViVmVjdG9yPFdlYkRyYWdnYWJsZVJlZ2lv
bj4gV2ViRG9jdW1lbnQ6OmRyYWdnYWJsZVJlZ2lvbnMoKSBjb25zdAoreworICAgIFdlYlZlY3Rv
cjxXZWJEcmFnZ2FibGVSZWdpb24+IGRyYWdnYWJsZV9yZWdpb25zOworI2lmIEVOQUJMRShXSURH
RVRfUkVHSU9OKQorICAgIGNvbnN0IERvY3VtZW50KiBkb2N1bWVudCA9IGNvbnN0VW53cmFwPERv
Y3VtZW50PigpOworICAgIGlmIChkb2N1bWVudC0+aGFzRGFzaGJvYXJkUmVnaW9ucygpKSB7Cisg
ICAgICAgIGNvbnN0IFZlY3RvcjxEYXNoYm9hcmRSZWdpb25WYWx1ZT4mIHJlZ2lvbnMgPSBkb2N1
bWVudC0+ZGFzaGJvYXJkUmVnaW9ucygpOworICAgICAgICBkcmFnZ2FibGVfcmVnaW9ucyA9IFdl
YlZlY3RvcjxXZWJEcmFnZ2FibGVSZWdpb24+KHJlZ2lvbnMuc2l6ZSgpKTsKKyAgICAgICAgZm9y
IChzaXplX3QgaSA9IDA7IGkgPCByZWdpb25zLnNpemUoKTsgaSsrKSB7CisgICAgICAgICAgICBj
b25zdCBEYXNoYm9hcmRSZWdpb25WYWx1ZSYgdmFsdWUgPSByZWdpb25zW2ldOworICAgICAgICAg
ICAgZHJhZ2dhYmxlX3JlZ2lvbnNbaV0ubGFiZWwgPSB2YWx1ZS5sYWJlbDsKKyAgICAgICAgICAg
IGRyYWdnYWJsZV9yZWdpb25zW2ldLmJvdW5kcyA9IFdlYkNvcmU6OkludFJlY3QodmFsdWUuYm91
bmRzKTsKKyAgICAgICAgICAgIGRyYWdnYWJsZV9yZWdpb25zW2ldLmNsaXAgPSBXZWJDb3JlOjpJ
bnRSZWN0KHZhbHVlLmNsaXApOworICAgICAgICAgICAgZHJhZ2dhYmxlX3JlZ2lvbnNbaV0udHlw
ZSA9IHZhbHVlLnR5cGU7CisgICAgICAgIH0KKyAgICB9CisjZW5kaWYKKyAgICByZXR1cm4gZHJh
Z2dhYmxlX3JlZ2lvbnM7Cit9CisKIFdlYkRvY3VtZW50OjpXZWJEb2N1bWVudChjb25zdCBQYXNz
UmVmUHRyPERvY3VtZW50PiYgZWxlbSkKICAgICA6IFdlYk5vZGUoZWxlbSkKIHsK
</data>
<flag name="commit-queue"
          id="165191"
          type_id="3"
          status="-"
          setter="jianli"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>155685</attachid>
            <date>2012-07-31 17:21:33 -0700</date>
            <delta_ts>2012-08-01 11:05:26 -0700</delta_ts>
            <desc>Proposed Patch</desc>
            <filename>92813_2</filename>
            <type>text/plain</type>
            <size>10700</size>
            <attacher name="Jian Li">jianli</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9QbGF0Zm9ybS9DaGFuZ2VMb2cgYi9Tb3VyY2UvUGxhdGZvcm0v
Q2hhbmdlTG9nCmluZGV4IDY5NjU2NzkuLmI3NGYxOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9QbGF0
Zm9ybS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1BsYXRmb3JtL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE3IEBACisyMDEyLTA3LTMxICBKaWFuIExpICA8amlhbmxpQGNocm9taXVtLm9yZz4KKworICAg
ICAgICBbY2hyb21pdW1dIE1ha2UgV2ViS2l0IEFQSSBzdXBwb3J0IGRyYWdnYWJsZSByZWdpb24g
Y2hhbmdlIHVwZGF0ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9OTI4MTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBBZGQgV2ViRHJhZ2dhYmxlUmVnaW9uIGZvciBjaHJvbWl1bSdzIHVzYWdlLgorCisgICAg
ICAgICogY2hyb21pdW0vcHVibGljL1dlYkRyYWdnYWJsZVJlZ2lvbi5oOiBBZGRlZC4KKyAgICAg
ICAgKFdlYktpdCk6CisgICAgICAgIChXZWJEcmFnZ2FibGVSZWdpb24pOgorICAgICAgICAoV2Vi
S2l0OjpXZWJEcmFnZ2FibGVSZWdpb246OldlYkRyYWdnYWJsZVJlZ2lvbik6CisKIDIwMTItMDct
MzEgIElhbiBWb2xsaWNrICA8dm9sbGlja0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW2Nocm9t
aXVtXSBVc2UgV2ViQW5pbWF0aW9uIGFuZCByZWxhdGVkIGNsYXNzZXMgaW4gR3JhcGhpY3NMYXll
ckNocm9taXVtIGFuZCBBbmltVHJhbnNsYXRpb25VdGlsCmRpZmYgLS1naXQgYS9Tb3VyY2UvUGxh
dGZvcm0vY2hyb21pdW0vcHVibGljL1dlYkRyYWdnYWJsZVJlZ2lvbi5oIGIvU291cmNlL1BsYXRm
b3JtL2Nocm9taXVtL3B1YmxpYy9XZWJEcmFnZ2FibGVSZWdpb24uaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwLi5lNTlhOTIzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1Bs
YXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJEcmFnZ2FibGVSZWdpb24uaApAQCAtMCwwICsxLDUx
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgor
ICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xl
IEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05U
UklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisg
KiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8K
KworI2lmbmRlZiBXZWJEcmFnZ2FibGVSZWdpb25faAorI2RlZmluZSBXZWJEcmFnZ2FibGVSZWdp
b25faAorCisjaW5jbHVkZSAiV2ViQ29tbW9uLmgiCisjaW5jbHVkZSAiV2ViUmVjdC5oIgorI2lu
Y2x1ZGUgIldlYlN0cmluZy5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworc3RydWN0IFdlYkRy
YWdnYWJsZVJlZ2lvbiB7CisgICAgV2ViU3RyaW5nIGxhYmVsOworICAgIFdlYlJlY3QgYm91bmRz
OworICAgIFdlYlJlY3QgY2xpcDsKKyAgICBpbnQgdHlwZTsKKworICAgIFdlYkRyYWdnYWJsZVJl
Z2lvbigpIDogdHlwZSgwKSB7IH0KK307CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCisjZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggN2FjMTEwMC4uOTNjNmEzNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOCBAQAorMjAxMi0wNy0zMSAgSmlhbiBM
aSAgPGppYW5saUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBNYWtlIFdlYktp
dCBBUEkgc3VwcG9ydCBkcmFnZ2FibGUgcmVnaW9uIGNoYW5nZSB1cGRhdGUKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkyODEzCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW50cm9kdWNlIFdlYkRyYWdnYWJs
ZVJlZ2lvbiBhbmQgZGVsZWdhdGUgdGhlIGRyYWdnYWJsZSByZWdpb24gdXBkYXRlCisgICAgICAg
IGNhbGwgdG8gdGhlIG5ldyBtZXRob2QgZHJhZ2dhYmxlUmVnaW9uc0NoYW5nZWQgaW4gV2ViVmll
d0NsaWVudC4KKworICAgICAgICAqIHB1YmxpYy9XZWJEb2N1bWVudC5oOgorICAgICAgICAoV2Vi
RG9jdW1lbnQpOgorICAgICAgICAqIHB1YmxpYy9XZWJWaWV3Q2xpZW50Lmg6CisgICAgICAgIChX
ZWJWaWV3Q2xpZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0NsaWVudDo6ZHJhZ2dhYmxl
UmVnaW9uc0NoYW5nZWQpOgorICAgICAgICAqIHB1YmxpYy9wbGF0Zm9ybS9XZWJEcmFnZ2FibGVS
ZWdpb24uaDogQWRkZWQuCisgICAgICAgICogc3JjL0Nocm9tZUNsaWVudEltcGwuY3BwOgorICAg
ICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6Q2hyb21lQ2xpZW50SW1wbDo6ZGFzaGJv
YXJkUmVnaW9uc0NoYW5nZWQpOgorICAgICAgICAqIHNyYy9DaHJvbWVDbGllbnRJbXBsLmg6Cisg
ICAgICAgIChDaHJvbWVDbGllbnRJbXBsKToKKyAgICAgICAgKiBzcmMvV2ViRG9jdW1lbnQuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJEb2N1bWVudDo6ZHJhZ2dhYmxlUmVnaW9ucyk6CisgICAg
ICAgIChXZWJLaXQpOgorCiAyMDEyLTA3LTMxICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgW0Nocm9taXVtLUFuZHJvaWRdIFdlIHNob3VsZCBodWVyaXN0aWNhbGx5
IGRldGVjdCBjb250ZW50IGludGVudHMgb24gdG91Y2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYkRvY3VtZW50LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3B1YmxpYy9XZWJEb2N1bWVudC5oCmluZGV4IGYyMjk2YjcuLjg5YTdmZDAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkRvY3VtZW50LmgKKysrIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRG9jdW1lbnQuaApAQCAtMzMsNiArMzMsNyBAQAog
CiAjaW5jbHVkZSAiV2ViTm9kZS5oIgogI2luY2x1ZGUgIldlYlNlY3VyaXR5T3JpZ2luLmgiCisj
aW5jbHVkZSAicGxhdGZvcm0vV2ViRHJhZ2dhYmxlUmVnaW9uLmgiCiAjaW5jbHVkZSAicGxhdGZv
cm0vV2ViUmVmZXJyZXJQb2xpY3kuaCIKICNpbmNsdWRlICJwbGF0Zm9ybS9XZWJWZWN0b3IuaCIK
IApAQCAtMTIwLDYgKzEyMSw4IEBAIHB1YmxpYzoKICAgICAvLyBXZWJWaWV3LgogICAgIFdFQktJ
VF9FWFBPUlQgdm9pZCBpbnNlcnRVc2VyU3R5bGVTaGVldChjb25zdCBXZWJTdHJpbmcmIHNvdXJj
ZUNvZGUsIFVzZXJTdHlsZUxldmVsKTsKIAorICAgIFdFQktJVF9FWFBPUlQgV2ViVmVjdG9yPFdl
YkRyYWdnYWJsZVJlZ2lvbj4gZHJhZ2dhYmxlUmVnaW9ucygpIGNvbnN0OworCiAjaWYgV0VCS0lU
X0lNUExFTUVOVEFUSU9OCiAgICAgV2ViRG9jdW1lbnQoY29uc3QgV1RGOjpQYXNzUmVmUHRyPFdl
YkNvcmU6OkRvY3VtZW50PiYpOwogICAgIFdlYkRvY3VtZW50JiBvcGVyYXRvcj0oY29uc3QgV1RG
OjpQYXNzUmVmUHRyPFdlYkNvcmU6OkRvY3VtZW50PiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViVmlld0NsaWVudC5oIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9wdWJsaWMvV2ViVmlld0NsaWVudC5oCmluZGV4IGM1NDExZDkuLjdhN2EyZGQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlZpZXdDbGllbnQuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJWaWV3Q2xpZW50LmgKQEAgLTM4MSw2
ICszODEsMTEgQEAgcHVibGljOgogICAgIC8vIENhbmNlbHMgYW55IHByZXZpb3VzbHkgc2NoZWR1
bGVkIGNvbnRlbnQgaW50ZW50cyB0aGF0IGhhdmUgbm90IHlldCBsYXVuY2hlZC4KICAgICB2aXJ0
dWFsIHZvaWQgY2FuY2VsU2NoZWR1bGVkQ29udGVudEludGVudHMoKSB7IH0KIAorICAgIC8vIERy
YWdnYWJsZSByZWdpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KKworICAgIC8vIEluZm9ybXMgdGhlIGJyb3dzZXIgdGhhdCB0aGUgZHJhZ2dh
YmxlIHJlZ2lvbnMgaGF2ZSBiZWVuIHVwZGF0ZWQuCisgICAgdmlydHVhbCB2b2lkIGRyYWdnYWJs
ZVJlZ2lvbnNDaGFuZ2VkKCkgeyB9CisKIHByb3RlY3RlZDoKICAgICB+V2ViVmlld0NsaWVudCgp
IHsgfQogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL3BsYXRm
b3JtL1dlYkRyYWdnYWJsZVJlZ2lvbi5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMv
cGxhdGZvcm0vV2ViRHJhZ2dhYmxlUmVnaW9uLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMC4uYjFiNDcwNAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vcHVibGljL3BsYXRmb3JtL1dlYkRyYWdnYWJsZVJlZ2lvbi5oCkBAIC0wLDAgKzEsMzEgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAg
ICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQor
ICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5j
LiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUg
d2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9X
TkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
KyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
aW5jbHVkZSAiLi4vLi4vLi4vLi4vUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dlYkRyYWdnYWJs
ZVJlZ2lvbi5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvQ2hyb21l
Q2xpZW50SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJ
bXBsLmNwcAppbmRleCAwNzQwMWM2Li5hZDEwMDBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBsLmNwcApAQCAtMTExMiw2ICsxMTEyLDE1IEBAIGJv
b2wgQ2hyb21lQ2xpZW50SW1wbDo6aXNQb2ludGVyTG9ja2VkKCkKIH0KICNlbmRpZgogCisjaWYg
RU5BQkxFKFdJREdFVF9SRUdJT04pCit2b2lkIENocm9tZUNsaWVudEltcGw6OmRhc2hib2FyZFJl
Z2lvbnNDaGFuZ2VkKCkKK3sKKyAgICBXZWJWaWV3Q2xpZW50KiBjbGllbnQgPSBtX3dlYlZpZXct
PmNsaWVudCgpOworICAgIGlmIChjbGllbnQpCisgICAgICAgIGNsaWVudC0+ZHJhZ2dhYmxlUmVn
aW9uc0NoYW5nZWQoKTsKK30KKyNlbmRpZgorCiAjaWYgRU5BQkxFKFJFR0lTVEVSX1BST1RPQ09M
X0hBTkRMRVIpCiBQYXNzT3duUHRyPFJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyQ2xpZW50SW1wbD4g
UmVnaXN0ZXJQcm90b2NvbEhhbmRsZXJDbGllbnRJbXBsOjpjcmVhdGUoV2ViVmlld0ltcGwqIHdl
YlZpZXcpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVD
bGllbnRJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBs
LmgKaW5kZXggYzhjNGU1OC4uYTc4NmRjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvQ2hyb21lQ2xpZW50SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL0Nocm9tZUNsaWVudEltcGwuaApAQCAtMTM2LDYgKzEzNiw5IEBAIHB1YmxpYzoKICAgICAg
ICAgV2ViQ29yZTo6RnJhbWUqLCBjb25zdCBXVEY6OlN0cmluZyYgZGF0YWJhc2VOYW1lKTsKICAg
ICB2aXJ0dWFsIHZvaWQgcmVhY2hlZE1heEFwcENhY2hlU2l6ZShpbnQ2NF90IHNwYWNlTmVlZGVk
KTsKICAgICB2aXJ0dWFsIHZvaWQgcmVhY2hlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YShX
ZWJDb3JlOjpTZWN1cml0eU9yaWdpbiosIGludDY0X3QgdG90YWxTcGFjZU5lZWRlZCk7CisjaWYg
RU5BQkxFKFdJREdFVF9SRUdJT04pCisgICAgdmlydHVhbCB2b2lkIGRhc2hib2FyZFJlZ2lvbnND
aGFuZ2VkKCk7CisjZW5kaWYKICAgICB2aXJ0dWFsIGJvb2wgcGFpbnRDdXN0b21PdmVyaGFuZ0Fy
ZWEoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0KiwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYsIGNv
bnN0IFdlYkNvcmU6OkludFJlY3QmLCBjb25zdCBXZWJDb3JlOjpJbnRSZWN0Jik7CiAjaWYgRU5B
QkxFKElOUFVUX1RZUEVfQ09MT1IpCiAgICAgdmlydHVhbCBQYXNzT3duUHRyPFdlYkNvcmU6OkNv
bG9yQ2hvb3Nlcj4gY3JlYXRlQ29sb3JDaG9vc2VyKFdlYkNvcmU6OkNvbG9yQ2hvb3NlckNsaWVu
dCosIGNvbnN0IFdlYkNvcmU6OkNvbG9yJikgT1ZFUlJJREU7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJEb2N1bWVudC5jcHAKaW5kZXggMDYzZjcxOC4uZTY1MmMzYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRvY3VtZW50LmNwcApAQCAtNDQsNiArNDQsNyBAQAog
I2luY2x1ZGUgIkhUTUxGb3JtRWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxIZWFkRWxlbWVudC5o
IgogI2luY2x1ZGUgIk5vZGVMaXN0LmgiCisjaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCiAjaW5j
bHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJTdHlsZVNoZWV0Q29udGVudHMuaCIK
ICNpbmNsdWRlICJXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0LmgiCkBAIC0yNDIsNiArMjQzLDI2IEBA
IFdlYkFjY2Vzc2liaWxpdHlPYmplY3QgV2ViRG9jdW1lbnQ6OmFjY2Vzc2liaWxpdHlPYmplY3RG
cm9tSUQoaW50IGF4SUQpIGNvbnN0CiAgICAgICAgIGRvY3VtZW50LT5heE9iamVjdENhY2hlKCkt
Pm9iamVjdEZyb21BWElEKGF4SUQpKTsKIH0KIAorV2ViVmVjdG9yPFdlYkRyYWdnYWJsZVJlZ2lv
bj4gV2ViRG9jdW1lbnQ6OmRyYWdnYWJsZVJlZ2lvbnMoKSBjb25zdAoreworICAgIFdlYlZlY3Rv
cjxXZWJEcmFnZ2FibGVSZWdpb24+IGRyYWdnYWJsZVJlZ2lvbnM7CisjaWYgRU5BQkxFKFdJREdF
VF9SRUdJT04pCisgICAgY29uc3QgRG9jdW1lbnQqIGRvY3VtZW50ID0gY29uc3RVbndyYXA8RG9j
dW1lbnQ+KCk7CisgICAgaWYgKGRvY3VtZW50LT5oYXNEYXNoYm9hcmRSZWdpb25zKCkpIHsKKyAg
ICAgICAgY29uc3QgVmVjdG9yPERhc2hib2FyZFJlZ2lvblZhbHVlPiYgcmVnaW9ucyA9IGRvY3Vt
ZW50LT5kYXNoYm9hcmRSZWdpb25zKCk7CisgICAgICAgIGRyYWdnYWJsZVJlZ2lvbnMgPSBXZWJW
ZWN0b3I8V2ViRHJhZ2dhYmxlUmVnaW9uPihyZWdpb25zLnNpemUoKSk7CisgICAgICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgcmVnaW9ucy5zaXplKCk7IGkrKykgeworICAgICAgICAgICAgY29u
c3QgRGFzaGJvYXJkUmVnaW9uVmFsdWUmIHZhbHVlID0gcmVnaW9uc1tpXTsKKyAgICAgICAgICAg
IGRyYWdnYWJsZVJlZ2lvbnNbaV0ubGFiZWwgPSB2YWx1ZS5sYWJlbDsKKyAgICAgICAgICAgIGRy
YWdnYWJsZVJlZ2lvbnNbaV0uYm91bmRzID0gV2ViQ29yZTo6SW50UmVjdCh2YWx1ZS5ib3VuZHMp
OworICAgICAgICAgICAgZHJhZ2dhYmxlUmVnaW9uc1tpXS5jbGlwID0gV2ViQ29yZTo6SW50UmVj
dCh2YWx1ZS5jbGlwKTsKKyAgICAgICAgICAgIGRyYWdnYWJsZVJlZ2lvbnNbaV0udHlwZSA9IHZh
bHVlLnR5cGU7CisgICAgICAgIH0KKyAgICB9CisjZW5kaWYKKyAgICByZXR1cm4gZHJhZ2dhYmxl
UmVnaW9uczsKK30KKwogV2ViRG9jdW1lbnQ6OldlYkRvY3VtZW50KGNvbnN0IFBhc3NSZWZQdHI8
RG9jdW1lbnQ+JiBlbGVtKQogICAgIDogV2ViTm9kZShlbGVtKQogewo=
</data>
<flag name="review"
          id="165197"
          type_id="1"
          status="+"
          setter="abarth"
    />
    <flag name="commit-queue"
          id="165198"
          type_id="3"
          status="-"
          setter="jianli"
    />
          </attachment>
      

    </bug>

</bugzilla>