<?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>102300</bug_id>
          
          <creation_ts>2012-11-14 16:41:39 -0800</creation_ts>
          <short_desc>Add a new shared class WebCoreFullScreenPlaceholderView, for use in WebKit and WebKit2.</short_desc>
          <delta_ts>2012-11-27 16:39:25 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</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>102299</dependson>
          <blocked>102315</blocked>
    
    <blocked>100025</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>767450</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2012-11-14 16:41:39 -0800</bug_when>
    <thetext>Add a new shared class WebCoreFullScreenPlaceholderView, for use in WebKit and WebKit2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>767480</commentid>
    <comment_count>1</comment_count>
      <attachid>174292</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2012-11-14 16:59:50 -0800</bug_when>
    <thetext>Created attachment 174292
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774923</commentid>
    <comment_count>2</comment_count>
      <attachid>174292</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2012-11-24 18:40:56 -0800</bug_when>
    <thetext>Comment on attachment 174292
Patch

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

&gt; Source/WebCore/platform/mac/WebCoreFullScreenPlaceholderView.mm:84
&gt; +    [_exitWarning.get() setHidden:!visible];
&gt; +    if (visible) {
&gt; +        CIFilter* filter = [CIFilter filterWithName:@&quot;CIFalseColor&quot; keysAndValues:
&gt; +                            @&quot;inputColor0&quot;, [CIColor colorWithRed:0 green:0 blue:0],
&gt; +                            @&quot;inputColor1&quot;, [CIColor colorWithRed:.9 green:.9 blue:.9],
&gt; +                            nil];
&gt; +        [[self layer] setCompositingFilter:filter];
&gt; +    } else
&gt; +        [[self layer] setCompositingFilter:nil];

We should try to do this without using CoreImage.  CoreImage doesn&apos;t play nice with our layer hosting strategy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775994</commentid>
    <comment_count>3</comment_count>
      <attachid>176098</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2012-11-26 15:49:20 -0800</bug_when>
    <thetext>Created attachment 176098
Patch

Removed the CIFilter, replacing it with a simple greyscale overlay layer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>777234</commentid>
    <comment_count>4</comment_count>
      <attachid>176340</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2012-11-27 14:32:00 -0800</bug_when>
    <thetext>Created attachment 176340
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>777268</commentid>
    <comment_count>5</comment_count>
      <attachid>176340</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-11-27 15:22:22 -0800</bug_when>
    <thetext>Comment on attachment 176340
Patch

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

&gt; Source/WebCore/platform/mac/WebCoreFullScreenPlaceholderView.mm:55
&gt; +    warningFrame.origin = NSMakePoint(
&gt; +                                      (frameRect.size.width - warningFrame.size.width) / 2,
&gt; +                                      (frameRect.size.height - warningFrame.size.height) / 2);

Remove the newlines here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>777363</commentid>
    <comment_count>6</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2012-11-27 16:39:25 -0800</bug_when>
    <thetext>Committed r135941: &lt;http://trac.webkit.org/changeset/135941&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>174292</attachid>
            <date>2012-11-14 16:59:50 -0800</date>
            <delta_ts>2012-11-26 15:49:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102300-20121114165749.patch</filename>
            <type>text/plain</type>
            <size>14808</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM0NjU5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDZhOTA4N2RiYTM3OWY5
NDIxMTdjOTA0MGU3MjVkODA1ZDExMTVhYi4uNDY0Y2YwMDNiOWE3ZjY1NGM0OTEyN2NmMTRlNTk4
MThkOTc0YWQyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMyIEBACiAyMDEyLTExLTE0ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCisgICAgICAgIEFkZCBhIG5ldyBzaGFyZWQg
Y2xhc3MgV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcsIGZvciB1c2UgaW4gV2ViS2l0
IGFuZCBXZWJLaXQyLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTAyMzAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkIGEgbmV3IHNoYXJlZCBjbGFzcyBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVy
Vmlldywgd2hpY2ggcHJlc2VudHMgdGhlIGNvbnRlbnRzIG9mIHRoZSAKKyAgICAgICAgV2ViVmll
dyBwcmlvciB0byBmdWxsIHNjcmVlbiB3aXRoIGEgbWVzc2FnZSBpbmZvcm1pbmcgdGhlIHVzZXIg
aG93IHRvIGV4aXQgZnJvbSBmdWxsIHNjcmVlbiBtb2RlLgorCisgICAgICAgICogcGxhdGZvcm0v
bWFjL1dlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJD
b3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldyBpbml0V2l0aEZyYW1lOl0pOiBDcmVhdGUgdGhl
IHdhcm5pbmcgdmlldyBhbmQgc2V0IHVwIHRoZSBwbGFjZWhvbGRlciBsYXllci4KKyAgICAgICAg
KC1bV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcgc2V0Q29udGVudHM6XSk6IFBhc3Mg
YWxvbmcgdG8gY29udGVudCB2aWV3IGxheWVyLgorICAgICAgICAoLVtXZWJDb3JlRnVsbFNjcmVl
blBsYWNlaG9sZGVyVmlldyBjb250ZW50c10pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViQ29yZUZ1
bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcgc2V0RXhpdFdhcm5pbmdWaXNpYmxlOl0pOiBTaG93IG9y
IGhpZGUgdGhlIGV4aXQgd2FybmluZy4KKyAgICAgICAgKC1bV2ViQ29yZUZ1bGxTY3JlZW5QbGFj
ZWhvbGRlclZpZXcgbW91c2VEb3duOl0pOiBDYWxsIHRoZSB0YXJnZXQgd2l0aCBhY3Rpb24uCisK
KyAgICAgICAgIEFkZCBhIGxvY2FsaXplZCBzdHJpbmcgZW50cnkgZm9yIHRoZSAiY2xpY2sgdG8g
ZXhpdCIgdGV4dDoKKyAgICAgICAgICogRW5nbGlzaC5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdz
OgorICAgICAgICAqIHBsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Y2xpY2tUb0V4aXRGdWxsU2NyZWVuVGV4dCk6CisgICAgICAgICogcGxhdGZvcm0vTG9j
YWxpemVkU3RyaW5ncy5oOgorCisgICAgICAgIEFkZCB0aGUgbmV3IGZpbGVzIHRvIHRoZSBwcm9q
ZWN0IGFuZCBleHBvcnRzIGxpc3Q6CisgICAgICAgICogV2ViQ29yZS5leHAuaW46CisgICAgICAg
ICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorCisyMDEyLTExLTE0ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCiAgICAgICAgIEFkZCBhIG5ldyBzaGFyZWQg
Y2xhc3MgV2ViQ29yZUZ1bGxTY3JlZW5XYXJuaW5nVmlldyB3aGljaCBwcmVzZW50cyBhIHN0eWxl
ZCB3YXJuaW5nIG1lc3NhZ2UuCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDIyOTkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5l
eHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCBhYmUxNzcxNjYyYzFj
ZTg2ZWMyNjRmYzBhYThhYTY4NWE0YjRiNTdkLi44ZjhlNTg1NjJlYjhkMmVhMjI0MTRhMDEzZDBh
NTI1NTkyNTI3ZmQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgor
KysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtMTYyMyw2ICsxNjIzLDcgQEAg
X3drU2lnbmFsQ0ZSZWFkU3RyZWFtSGFzQnl0ZXMKIC5vYmpjX2NsYXNzX25hbWVfRE9NU3R5bGVT
aGVldAogLm9iamNfY2xhc3NfbmFtZV9ET01TdHlsZVNoZWV0TGlzdAogLm9iamNfY2xhc3NfbmFt
ZV9ET01UcmVlV2Fsa2VyCisub2JqY19jbGFzc19uYW1lX1dlYkNvcmVGdWxsU2NyZWVuUGxhY2Vo
b2xkZXJWaWV3CiAub2JqY19jbGFzc19uYW1lX1dlYkNvcmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcK
IC5vYmpjX2NsYXNzX25hbWVfV2ViQ29yZUZ1bGxTY3JlZW5XaW5kb3cKIC5vYmpjX2NsYXNzX25h
bWVfV2ViSFRNTENvbnZlcnRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDU4MjZlZTE3NmE5NTRiN2I0MzA4MTRmZDgyZWYyYzIz
MDZjZjMxNmEuLjMxNmMzOGFhOGM4OGMwMGVkODUxNGQ4ZTk2ZGMxOTI3ZTI4NzViYzggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagor
KysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAg
LTU5MDQsNiArNTkwNCw4IEBACiAJCUNEQjg1OUY3MTYwRDQ4QTQwMEU1QjA3RiAvKiBNZWRpYUtl
eUV2ZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IENEQjg1OUY0MTYwRDQ4OTkwMEU1QjA3RiAvKiBNZWRpYUtleUV2ZW50LmNwcCAqLzsgfTsKIAkJ
Q0RCODU5RkExNjBENDk0OTAwRTVCMDdGIC8qIEpTTWVkaWFLZXlFdmVudC5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREI4NTlGODE2MEQ0OTNFMDBF
NUIwN0YgLyogSlNNZWRpYUtleUV2ZW50LmNwcCAqLzsgfTsKIAkJQ0RCODU5RkIxNjBENDk0RjAw
RTVCMDdGIC8qIEpTTWVkaWFLZXlFcnJvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDREI4NTlGMDE2MEQ0MkREMDBFNUIwN0YgLyogSlNNZWRpYUtl
eUVycm9yLmNwcCAqLzsgfTsKKwkJQ0RDNjlEREExNjM3MUZENDAwN0MzOERGIC8qIFdlYkNvcmVG
dWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBDREM2OUREODE2MzcxRkQzMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxT
Y3JlZW5QbGFjZWhvbGRlclZpZXcuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OworCQlDREM2OUREQjE2MzcxRkQ0MDA3QzM4REYgLyogV2ViQ29yZUZ1bGxT
Y3JlZW5QbGFjZWhvbGRlclZpZXcubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDREM2OUREOTE2MzcxRkQzMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3Jl
ZW5QbGFjZWhvbGRlclZpZXcubW0gKi87IH07CiAJCUNEQzY5REQ2MTYzMjAyNkMwMDdDMzhERiAv
KiBXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREM2OURENDE2MzIwMjZDMDA3QzM4REYgLyogV2ViQ29y
ZUZ1bGxTY3JlZW5XYXJuaW5nVmlldy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCUNEQzY5REQ3MTYzMjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVs
bFNjcmVlbldhcm5pbmdWaWV3Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0RDNjlERDUxNjMyMDI2QzAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVu
V2FybmluZ1ZpZXcubW0gKi87IH07CiAJCUNERDUyNUQ3MTQ1QjZERDAwMDhEMjA0RCAvKiBKU0hU
TUxNZWRpYUVsZW1lbnRDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQ0RGNjVDQ0MxNDVCNkFGRTAwQzRDN0FBIC8qIEpTSFRNTE1lZGlhRWxl
bWVudEN1c3RvbS5jcHAgKi87IH07CkBAIC0xMzI5OCw2ICsxMzMwMCw4IEBACiAJCUNEQjg1OUY4
MTYwRDQ5M0UwMEU1QjA3RiAvKiBKU01lZGlhS2V5RXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNNZWRpYUtleUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQ0RCODU5RjkxNjBENDkzRTAwRTVCMDdGIC8qIEpTTWVkaWFLZXlFdmVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhS2V5RXZlbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0RCRDkzQkExMzMzQkQ0QjAwMjU3MEUzIC8q
IGZ1bGxzY3JlZW5RdWlja1RpbWUuY3NzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5jc3M7IHBhdGggPSBmdWxs
c2NyZWVuUXVpY2tUaW1lLmNzczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDNjlE
RDgxNjM3MUZEMzAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vo
b2xkZXJWaWV3Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQzY5REQ5MTYzNzFG
RDMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldy5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vo
b2xkZXJWaWV3Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDREM2OURENDE2MzIw
MjZDMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5XYXJuaW5nVmlldy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEQzY5REQ1MTYzMjAyNkMwMDdDMzhERiAvKiBX
ZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gV2ViQ29yZUZ1bGxTY3JlZW5XYXJuaW5nVmlldy5tbTsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0RDRTVDRDAxNDYzM0JDOTAwRDQ3Q0NBIC8qIEV2ZW50VGFy
Z2V0RmFjdG9yeS5pbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBFdmVudFRhcmdldEZhY3Rvcnku
aW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNTgwOCw2ICsxNTgxMiw4IEBACiAJ
CQkJQkNFNjU5RTUwRUE5MkZCMjAwN0U0NTMzIC8qIFRoZW1lTWFjLmggKi8sCiAJCQkJQkNFNjU5
RTgwRUE5MkZGQTAwN0U0NTMzIC8qIFRoZW1lTWFjLm1tICovLAogCQkJCTUxREY2RDdGMEI5MkEx
OEUwMEMyREM4NSAvKiBUaHJlYWRDaGVjay5tbSAqLywKKwkJCQlDREM2OUREODE2MzcxRkQzMDA3
QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcuaCAqLywKKwkJCQlDREM2
OUREOTE2MzcxRkQzMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcu
bW0gKi8sCiAJCQkJQ0RDNjlERDQxNjMyMDI2QzAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVu
V2FybmluZ1ZpZXcuaCAqLywKIAkJCQlDREM2OURENTE2MzIwMjZDMDA3QzM4REYgLyogV2ViQ29y
ZUZ1bGxTY3JlZW5XYXJuaW5nVmlldy5tbSAqLywKIAkJCQlDRDEyN0RFQTE0RjMwOTc5MDBFODQ3
NzkgLyogV2ViQ29yZUZ1bGxTY3JlZW5XaW5kb3cuaCAqLywKQEAgLTI1NTU3LDYgKzI1NTYzLDcg
QEAKIAkJCQlGRDU4MUZCNTE1MjBGOTNCMDAzQTdBNzUgLyogV2F2ZVRhYmxlLmggaW4gSGVhZGVy
cyAqLywKIAkJCQkyOUE4MTI0OTBGQkI5Q0E5MDA1MTAyOTMgLyogV2ViQWNjZXNzaWJpbGl0eU9i
amVjdFdyYXBwZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzRjE5OUE4MDgyNDVFNTkwMDFFOUFC
QyAvKiBXZWJDb3JlRnJhbWVWaWV3LmggaW4gSGVhZGVycyAqLywKKwkJCQlDREM2OUREQTE2Mzcx
RkQ0MDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUNEQzY5REQ2MTYzMjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVl
bldhcm5pbmdWaWV3LmggaW4gSGVhZGVycyAqLywKIAkJCQlDRDEyN0RFRTE0RjMwOTg0MDBFODQ3
NzkgLyogV2ViQ29yZUZ1bGxTY3JlZW5XaW5kb3cuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNTNE
OTExMTE0MzEwQ0MwMDBEODE3RSAvKiBXZWJDb3JlSlNDbGllbnREYXRhLmggaW4gSGVhZGVycyAq
LywKQEAgLTI4NjYwLDYgKzI4NjY3LDcgQEAKIAkJCQlGRDdGMjk5NjEzRDRDMENCMDBBRDk1MzUg
LyogV2F2ZVNoYXBlclByb2Nlc3Nvci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGRDU4MUZCNDE1
MjBGOTNCMDAzQTdBNzUgLyogV2F2ZVRhYmxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTI5QTgx
MjRBMEZCQjlDQTkwMDUxMDI5MyAvKiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlci5tbSBp
biBTb3VyY2VzICovLAorCQkJCUNEQzY5RERCMTYzNzFGRDQwMDdDMzhERiAvKiBXZWJDb3JlRnVs
bFNjcmVlblBsYWNlaG9sZGVyVmlldy5tbSBpbiBTb3VyY2VzICovLAogCQkJCUNEQzY5REQ3MTYz
MjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3Lm1tIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQ0QxMjdERUQxNEYzMDk3RDAwRTg0Nzc5IC8qIFdlYkNvcmVGdWxsU2NyZWVu
V2luZG93Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRjNCRkM5RDMxNUMxNzdFQzAwNDI0NEU1IC8q
IFdlYkNvcmVNZW1vcnlJbnN0cnVtZW50YXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuY3BwCmluZGV4IDAyNzcyMjM1ZmE4
NGY1MTliZDcwZWQ1OTRhN2IwZWEyYjAxZmI4NTYuLjhhN2NjZDY4NTU5OTlmNGFlOWE3MGY3ZjU1
OGZmZGZkZWYyYzlhMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2Fs
aXplZFN0cmluZ3MuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0
cmluZ3MuY3BwCkBAIC05OTIsNCArOTkyLDkgQEAgU3RyaW5nIHZhbGlkYXRpb25NZXNzYWdlU3Rl
cE1pc21hdGNoVGV4dChjb25zdCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmKQogICAgIHJldHVybiBX
RUJfVUlfU1RSSU5HKCJzdGVwIG1pc21hdGNoIiwgIlZhbGlkYXRpb24gbWVzc2FnZSBmb3IgaW5w
dXQgZm9ybSBjb250cm9scyB3aXRoIHZhbHVlIG5vdCByZXNwZWN0aW5nIHRoZSBzdGVwIGF0dHJp
YnV0ZSIpOwogfQogCitTdHJpbmcgY2xpY2tUb0V4aXRGdWxsU2NyZWVuVGV4dCgpCit7CisgICAg
cmV0dXJuIFdFQl9VSV9TVFJJTkcoIkNsaWNrIHRvIGV4aXQgZnVsbCBzY3JlZW4gbW9kZSIsICJN
ZXNzYWdlIHRvIGRpc3BsYXkgaW4gYnJvd3NlciB3aW5kb3cgd2hlbiBpbiB3ZWJraXQgZnVsbCBz
Y3JlZW4gbW9kZS4iKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oCmluZGV4IDY3MzI3NDhiMTIwODgyNjMzODI4
YjVmZDI5ZmViNjBlOWZhOWIyZWQuLmU5NTg3NmU3NjIwMWZjYWI2MjE5OTMzMmE5MDBiM2FmNmIw
OWI3MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmlu
Z3MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmgKQEAg
LTI1Niw2ICsyNTYsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgU3RyaW5nIHVuYWNjZXB0
YWJsZVRMU0NlcnRpZmljYXRlKCk7CiAjZW5kaWYKIAorICAgIFN0cmluZyBjbGlja1RvRXhpdEZ1
bGxTY3JlZW5UZXh0KCk7CisKICNpZiAhUExBVEZPUk0oQ0hST01JVU0pCiAjZGVmaW5lIFdFQl9V
SV9TVFJJTkcoc3RyaW5nLCBkZXNjcmlwdGlvbikgV2ViQ29yZTo6bG9jYWxpemVkU3RyaW5nKHN0
cmluZykKICNkZWZpbmUgV0VCX1VJX1NUUklOR19LRVkoc3RyaW5nLCBrZXksIGRlc2NyaXB0aW9u
KSBXZWJDb3JlOjpsb2NhbGl6ZWRTdHJpbmcoa2V5KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi43YjI0M2IwYTJmMjRjMjA1NzM3YWEzOTc4ZDFhOGM2YWU0ZGM0NGMzCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVGdWxs
U2NyZWVuUGxhY2Vob2xkZXJWaWV3LmgKQEAgLTAsMCArMSw0MiBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAxMiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
Zm5kZWYgV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXdfaAorI2RlZmluZSBXZWJDb3Jl
RnVsbFNjcmVlblBsYWNlaG9sZGVyVmlld19oCisKKyNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4K
KworQGludGVyZmFjZSBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldyA6IE5TVmlldyB7
CisgICAgUmV0YWluUHRyPE5TVmlldz4gX2V4aXRXYXJuaW5nOworICAgIE5TT2JqZWN0KiBfdGFy
Z2V0OworICAgIFNFTCBfYWN0aW9uOworfQorQHByb3BlcnR5KHJldGFpbikgaWQgY29udGVudHM7
CitAcHJvcGVydHkoYXNzaWduKSBOU09iamVjdCogdGFyZ2V0OworQHByb3BlcnR5KGFzc2lnbikg
U0VMIGFjdGlvbjsKKy0gKHZvaWQpc2V0RXhpdFdhcm5pbmdWaXNpYmxlOihCT09MKXZpc2libGU7
CitAZW5kCisKKyNlbmRpZiAvLyBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlld19oCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZUZ1bGxTY3JlZW5Q
bGFjZWhvbGRlclZpZXcubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZUZ1
bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjkyMTAyNDk1ZDJhYmYxZWY3
ZGY1MTJlNWQ0MjEwNzJkM2MwNGU3NwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21hYy9XZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldy5tbQpAQCAtMCww
ICsxLDk2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
KyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIldl
YkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3LmgiCisKKyNpbmNsdWRlICJMb2NhbGl6ZWRT
dHJpbmdzLmgiCisjaW5jbHVkZSAiV2ViQ29yZUZ1bGxTY3JlZW5XYXJuaW5nVmlldy5oIgorI2lu
Y2x1ZGUgPFF1YXJ0ekNvcmUvQ29yZUltYWdlLmg+CisjaW5jbHVkZSA8d3RmL1VudXNlZFBhcmFt
Lmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK3VzaW5nIG5hbWVzcGFjZSBX
ZWJDb3JlOworCitAaW1wbGVtZW50YXRpb24gV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZp
ZXcKKy0gKGlkKWluaXRXaXRoRnJhbWU6KE5TUmVjdClmcmFtZVJlY3QKK3sKKyAgICBzZWxmID0g
W3N1cGVyIGluaXRXaXRoRnJhbWU6ZnJhbWVSZWN0XTsKKyAgICBpZiAoIXNlbGYpCisgICAgICAg
IHJldHVybiBuaWw7CisKKyAgICBbc2VsZiBzZXRMYXllcjpbQ0FMYXllciBsYXllcl1dOworICAg
IFtzZWxmIHNldExheWVyQ29udGVudHNSZWRyYXdQb2xpY3k6TlNWaWV3TGF5ZXJDb250ZW50c1Jl
ZHJhd05ldmVyXTsKKyAgICBbc2VsZiBzZXRXYW50c0xheWVyOllFU107CisKKyAgICBfZXhpdFdh
cm5pbmcgPSBhZG9wdE5TKFtbV2ViQ29yZUZ1bGxTY3JlZW5XYXJuaW5nVmlldyBhbGxvY10gaW5p
dFdpdGhUaXRsZTpjbGlja1RvRXhpdEZ1bGxTY3JlZW5UZXh0KCldKTsKKyAgICBOU1JlY3Qgd2Fy
bmluZ0ZyYW1lID0gW19leGl0V2FybmluZy5nZXQoKSBmcmFtZV07CisgICAgd2FybmluZ0ZyYW1l
Lm9yaWdpbiA9IE5TTWFrZVBvaW50KAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAoZnJhbWVSZWN0LnNpemUud2lkdGggLSB3YXJuaW5nRnJhbWUuc2l6ZS53aWR0aCkgLyAy
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZnJhbWVSZWN0LnNpemUu
aGVpZ2h0IC0gd2FybmluZ0ZyYW1lLnNpemUuaGVpZ2h0KSAvIDIpOworICAgIFtfZXhpdFdhcm5p
bmcuZ2V0KCkgc2V0RnJhbWU6d2FybmluZ0ZyYW1lXTsKKyAgICBbX2V4aXRXYXJuaW5nLmdldCgp
IHNldEhpZGRlbjpZRVNdOworICAgIFtzZWxmIGFkZFN1YnZpZXc6X2V4aXRXYXJuaW5nLmdldCgp
XTsKKworICAgIHJldHVybiBzZWxmOworfQorCitAc3ludGhlc2l6ZSB0YXJnZXQgPSBfdGFyZ2V0
OworQHN5bnRoZXNpemUgYWN0aW9uID0gX2FjdGlvbjsKKworQGR5bmFtaWMgY29udGVudHM7Cist
ICh2b2lkKXNldENvbnRlbnRzOihpZCljb250ZW50cworeworICAgIFtbc2VsZiBsYXllcl0gc2V0
Q29udGVudHM6Y29udGVudHNdOworfQorCistIChpZCljb250ZW50cworeworICAgIHJldHVybiBb
W3NlbGYgbGF5ZXJdIGNvbnRlbnRzXTsKK30KKworLSAodm9pZClzZXRFeGl0V2FybmluZ1Zpc2li
bGU6KEJPT0wpdmlzaWJsZQoreworICAgIFtfZXhpdFdhcm5pbmcuZ2V0KCkgc2V0SGlkZGVuOiF2
aXNpYmxlXTsKKyAgICBpZiAodmlzaWJsZSkgeworICAgICAgICBDSUZpbHRlciogZmlsdGVyID0g
W0NJRmlsdGVyIGZpbHRlcldpdGhOYW1lOkAiQ0lGYWxzZUNvbG9yIiBrZXlzQW5kVmFsdWVzOgor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEAiaW5wdXRDb2xvcjAiLCBbQ0lDb2xvciBjb2xv
cldpdGhSZWQ6MCBncmVlbjowIGJsdWU6MF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
QCJpbnB1dENvbG9yMSIsIFtDSUNvbG9yIGNvbG9yV2l0aFJlZDouOSBncmVlbjouOSBibHVlOi45
XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBuaWxdOworICAgICAgICBbW3NlbGYgbGF5
ZXJdIHNldENvbXBvc2l0aW5nRmlsdGVyOmZpbHRlcl07CisgICAgfSBlbHNlCisgICAgICAgIFtb
c2VsZiBsYXllcl0gc2V0Q29tcG9zaXRpbmdGaWx0ZXI6bmlsXTsKK30KKworLSAodm9pZCltb3Vz
ZURvd246KE5TRXZlbnQgKil0aGVFdmVudAoreworICAgIFVOVVNFRF9QQVJBTSh0aGVFdmVudCk7
CisKKyAgICBpZiAoIV90YXJnZXQgfHwgIV9hY3Rpb24pCisgICAgICAgIHJldHVybjsKKyAgICBb
X3RhcmdldCBwZXJmb3JtU2VsZWN0b3I6X2FjdGlvbl07Cit9CisKK0BlbmQK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176098</attachid>
            <date>2012-11-26 15:49:20 -0800</date>
            <delta_ts>2012-11-27 14:31:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102300-20121126154659.patch</filename>
            <type>text/plain</type>
            <size>15483</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM0OTczCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzhkZDg1YWE1YmI3MWY2
OTNiOTVkMzZhNGE5NDQ4YTczNmQzMzdlZC4uMDIzNTQ0ZTdlODY4ZGU3Y2MxM2Y3YjliZDY5ODFi
OWNiY2Q2OWJlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMzIEBACiAyMDEyLTExLTE0ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCisgICAgICAgIEFkZCBhIG5ldyBzaGFyZWQg
Y2xhc3MgV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcsIGZvciB1c2UgaW4gV2ViS2l0
IGFuZCBXZWJLaXQyLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTAyMzAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkIGEgbmV3IHNoYXJlZCBjbGFzcyBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVy
Vmlldywgd2hpY2ggcHJlc2VudHMgdGhlIGNvbnRlbnRzIG9mIHRoZSAKKyAgICAgICAgV2ViVmll
dyBwcmlvciB0byBmdWxsIHNjcmVlbiB3aXRoIGEgbWVzc2FnZSBpbmZvcm1pbmcgdGhlIHVzZXIg
aG93IHRvIGV4aXQgZnJvbSBmdWxsIHNjcmVlbiBtb2RlLgorCisgICAgICAgICogcGxhdGZvcm0v
bWFjL1dlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJD
b3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldyBpbml0V2l0aEZyYW1lOl0pOiBDcmVhdGUgdGhl
IHdhcm5pbmcgdmlldyBhbmQgc2V0IHVwIHRoZSBwbGFjZWhvbGRlciBsYXllci4KKyAgICAgICAg
KC1bV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcgc2V0Q29udGVudHM6XSk6IFBhc3Mg
YWxvbmcgdG8gY29udGVudCB2aWV3IGxheWVyLgorICAgICAgICAoLVtXZWJDb3JlRnVsbFNjcmVl
blBsYWNlaG9sZGVyVmlldyBjb250ZW50c10pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViQ29yZUZ1
bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcgc2V0RXhpdFdhcm5pbmdWaXNpYmxlOl0pOiBTaG93IG9y
IGhpZGUgdGhlIGV4aXQgd2FybmluZy4KKyAgICAgICAgKC1bV2ViQ29yZUZ1bGxTY3JlZW5QbGFj
ZWhvbGRlclZpZXcgbW91c2VEb3duOl0pOiBDYWxsIHRoZSB0YXJnZXQgd2l0aCBhY3Rpb24uCisK
KyAgICAgICAgIEFkZCBhIGxvY2FsaXplZCBzdHJpbmcgZW50cnkgZm9yIHRoZSAiY2xpY2sgdG8g
ZXhpdCIgdGV4dDoKKyAgICAgICAgICogRW5nbGlzaC5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdz
OgorICAgICAgICAqIHBsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Y2xpY2tUb0V4aXRGdWxsU2NyZWVuVGV4dCk6CisgICAgICAgICogcGxhdGZvcm0vTG9j
YWxpemVkU3RyaW5ncy5oOgorICAgICAgICAqIEVuZ2xpc2gubHByb2ovTG9jYWxpemFibGUuc3Ry
aW5nczoKKworICAgICAgICBBZGQgdGhlIG5ldyBmaWxlcyB0byB0aGUgcHJvamVjdCBhbmQgZXhw
b3J0cyBsaXN0OgorICAgICAgICAqIFdlYkNvcmUuZXhwLmluOgorICAgICAgICAqIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKworMjAxMi0xMS0xNCAgSmVyIE5vYmxlICA8amVy
Lm5vYmxlQGFwcGxlLmNvbT4KKwogICAgICAgICBBZGQgYSBuZXcgc2hhcmVkIGNsYXNzIFdlYkNv
cmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcgd2hpY2ggcHJlc2VudHMgYSBzdHlsZWQgd2FybmluZyBt
ZXNzYWdlLgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTAyMjk5CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovTG9jYWxp
emFibGUuc3RyaW5ncyBiL1NvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovTG9jYWxpemFibGUu
c3RyaW5ncwppbmRleCBhMGE4NzY2MTcwY2VmNmI3MTcyMjM0OTBmOGYyNTczYzlkOTA2MmJkLi44
YzY1NWQ2MTlmMWRkMTEwNmEyZmJhZDAzNjk3Y2EwOTdhOTFhZmUyIDEwMDY0NApHSVQgYmluYXJ5
IHBhdGNoCmRlbHRhIDIxMgp6Y21YQEdrTkw+fjxfIStfTUh1dU12PXxmXmQ+SysxaWgoZVpBKU8o
MGEpR2tFWVo1fmRMcTA8fVAlSVY1UVVKMHQKejhTKXJYeit4YT8yMmVaP0M9TDxAQGx6Uis3X3gh
OTUrRTspcF9DeTkybyl3NWMjMGU5MFkkV2NfSFojTUYqcE43CmZHWn5WQkRpd2UjXk1QYjRMakBM
SGxEWX5Fd21AMHBiO3RuI0BvcCskCgpkZWx0YSA5ClFjbWFFSWZjZH5hPF8hK18wVTZULV95N09e
CgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCA2MzhjMzMzNDgxMDM4ZDU3Y2MzY2I1YWMzODQxYjJk
MzA4ZDYxNzJkLi40ODRmNjRhOThlN2RhNWZmNjAwOTgzNWI5MzQ0ODRlY2ZhZmQxZjM2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLmV4cC5pbgpAQCAtMTU4NCw2ICsxNTg0LDcgQEAgX3drU2lnbmFsQ0ZSZWFkU3Ry
ZWFtSGFzQnl0ZXMKIC5vYmpjX2NsYXNzX25hbWVfRE9NU3R5bGVTaGVldAogLm9iamNfY2xhc3Nf
bmFtZV9ET01TdHlsZVNoZWV0TGlzdAogLm9iamNfY2xhc3NfbmFtZV9ET01UcmVlV2Fsa2VyCisu
b2JqY19jbGFzc19uYW1lX1dlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3CiAub2JqY19j
bGFzc19uYW1lX1dlYkNvcmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcKIC5vYmpjX2NsYXNzX25hbWVf
V2ViQ29yZUZ1bGxTY3JlZW5XaW5kb3cKIC5vYmpjX2NsYXNzX25hbWVfV2ViSFRNTENvbnZlcnRl
cgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IDc5OThhNGU2ZTA3ZTJkOTU0YTU2NDU4Y2MzOWJjYTA0NmE2MDkxMTUuLjBiNjZkOGUx
Zjc4YmRiYzdjNDkwOTgxMDg2MjdlZTU5ZTNmNmZlMmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTU5MDksNiArNTkwOSw4IEBA
CiAJCUNEQjg1OUY3MTYwRDQ4QTQwMEU1QjA3RiAvKiBNZWRpYUtleUV2ZW50LmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQjg1OUY0MTYwRDQ4OTkw
MEU1QjA3RiAvKiBNZWRpYUtleUV2ZW50LmNwcCAqLzsgfTsKIAkJQ0RCODU5RkExNjBENDk0OTAw
RTVCMDdGIC8qIEpTTWVkaWFLZXlFdmVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDREI4NTlGODE2MEQ0OTNFMDBFNUIwN0YgLyogSlNNZWRpYUtl
eUV2ZW50LmNwcCAqLzsgfTsKIAkJQ0RCODU5RkIxNjBENDk0RjAwRTVCMDdGIC8qIEpTTWVkaWFL
ZXlFcnJvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDREI4NTlGMDE2MEQ0MkREMDBFNUIwN0YgLyogSlNNZWRpYUtleUVycm9yLmNwcCAqLzsgfTsK
KwkJQ0RDNjlEREExNjM3MUZENDAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xk
ZXJWaWV3LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
REM2OUREODE2MzcxRkQzMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZp
ZXcuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlD
REM2OUREQjE2MzcxRkQ0MDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZp
ZXcubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREM2
OUREOTE2MzcxRkQzMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcu
bW0gKi87IH07CiAJCUNEQzY5REQ2MTYzMjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVl
bldhcm5pbmdWaWV3LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDREM2OURENDE2MzIwMjZDMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5XYXJuaW5n
Vmlldy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CUNEQzY5REQ3MTYzMjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RDNjlE
RDUxNjMyMDI2QzAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcubW0gKi87
IH07CiAJCUNERDUyNUQ3MTQ1QjZERDAwMDhEMjA0RCAvKiBKU0hUTUxNZWRpYUVsZW1lbnRDdXN0
b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RG
NjVDQ0MxNDVCNkFGRTAwQzRDN0FBIC8qIEpTSFRNTE1lZGlhRWxlbWVudEN1c3RvbS5jcHAgKi87
IH07CkBAIC0xMzMxMyw2ICsxMzMxNSw4IEBACiAJCUNEQjg1OUY4MTYwRDQ5M0UwMEU1QjA3RiAv
KiBKU01lZGlhS2V5RXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNNZWRpYUtleUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0RC
ODU5RjkxNjBENDkzRTAwRTVCMDdGIC8qIEpTTWVkaWFLZXlFdmVudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhS2V5RXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQ0RCRDkzQkExMzMzQkQ0QjAwMjU3MEUzIC8qIGZ1bGxzY3JlZW5RdWlja1Rp
bWUuY3NzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dC5jc3M7IHBhdGggPSBmdWxsc2NyZWVuUXVpY2tUaW1lLmNz
czsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDNjlERDgxNjM3MUZEMzAwN0MzOERG
IC8qIFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQzY5REQ5MTYzNzFGRDMwMDdDMzhERiAvKiBXZWJD
b3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgcGF0aCA9IFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3Lm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDREM2OURENDE2MzIwMjZDMDA3QzM4REYgLyogV2Vi
Q29yZUZ1bGxTY3JlZW5XYXJuaW5nVmlldy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUNEQzY5REQ1MTYzMjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlbldh
cm5pbmdWaWV3Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2Vi
Q29yZUZ1bGxTY3JlZW5XYXJuaW5nVmlldy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQ0RDRTVDRDAxNDYzM0JDOTAwRDQ3Q0NBIC8qIEV2ZW50VGFyZ2V0RmFjdG9yeS5pbiAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBFdmVudFRhcmdldEZhY3RvcnkuaW47IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CkBAIC0xNTgxMCw2ICsxNTgxNCw4IEBACiAJCQkJQkNFNjU5RTUwRUE5MkZC
MjAwN0U0NTMzIC8qIFRoZW1lTWFjLmggKi8sCiAJCQkJQkNFNjU5RTgwRUE5MkZGQTAwN0U0NTMz
IC8qIFRoZW1lTWFjLm1tICovLAogCQkJCTUxREY2RDdGMEI5MkExOEUwMEMyREM4NSAvKiBUaHJl
YWRDaGVjay5tbSAqLywKKwkJCQlDREM2OUREODE2MzcxRkQzMDA3QzM4REYgLyogV2ViQ29yZUZ1
bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcuaCAqLywKKwkJCQlDREM2OUREOTE2MzcxRkQzMDA3QzM4
REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcubW0gKi8sCiAJCQkJQ0RDNjlE
RDQxNjMyMDI2QzAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcuaCAqLywK
IAkJCQlDREM2OURENTE2MzIwMjZDMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5XYXJuaW5n
Vmlldy5tbSAqLywKIAkJCQlDRDEyN0RFQTE0RjMwOTc5MDBFODQ3NzkgLyogV2ViQ29yZUZ1bGxT
Y3JlZW5XaW5kb3cuaCAqLywKQEAgLTI1NTgxLDYgKzI1NTg3LDcgQEAKIAkJCQlGRDU4MUZCNTE1
MjBGOTNCMDAzQTdBNzUgLyogV2F2ZVRhYmxlLmggaW4gSGVhZGVycyAqLywKIAkJCQkyOUE4MTI0
OTBGQkI5Q0E5MDA1MTAyOTMgLyogV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTkzRjE5OUE4MDgyNDVFNTkwMDFFOUFCQyAvKiBXZWJDb3JlRnJhbWVW
aWV3LmggaW4gSGVhZGVycyAqLywKKwkJCQlDREM2OUREQTE2MzcxRkQ0MDA3QzM4REYgLyogV2Vi
Q29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcuaCBpbiBIZWFkZXJzICovLAogCQkJCUNEQzY5
REQ2MTYzMjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3LmggaW4g
SGVhZGVycyAqLywKIAkJCQlDRDEyN0RFRTE0RjMwOTg0MDBFODQ3NzkgLyogV2ViQ29yZUZ1bGxT
Y3JlZW5XaW5kb3cuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNTNEOTExMTE0MzEwQ0MwMDBEODE3
RSAvKiBXZWJDb3JlSlNDbGllbnREYXRhLmggaW4gSGVhZGVycyAqLywKQEAgLTI4Njg2LDYgKzI4
NjkzLDcgQEAKIAkJCQlGRDdGMjk5NjEzRDRDMENCMDBBRDk1MzUgLyogV2F2ZVNoYXBlclByb2Nl
c3Nvci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGRDU4MUZCNDE1MjBGOTNCMDAzQTdBNzUgLyog
V2F2ZVRhYmxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTI5QTgxMjRBMEZCQjlDQTkwMDUxMDI5
MyAvKiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlci5tbSBpbiBTb3VyY2VzICovLAorCQkJ
CUNEQzY5RERCMTYzNzFGRDQwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVy
Vmlldy5tbSBpbiBTb3VyY2VzICovLAogCQkJCUNEQzY5REQ3MTYzMjAyNkMwMDdDMzhERiAvKiBX
ZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0QxMjdE
RUQxNEYzMDk3RDAwRTg0Nzc5IC8qIFdlYkNvcmVGdWxsU2NyZWVuV2luZG93Lm1tIGluIFNvdXJj
ZXMgKi8sCiAJCQkJRjNCRkM5RDMxNUMxNzdFQzAwNDI0NEU1IC8qIFdlYkNvcmVNZW1vcnlJbnN0
cnVtZW50YXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L0xvY2FsaXplZFN0cmluZ3MuY3BwCmluZGV4IDAyNzcyMjM1ZmE4NGY1MTliZDcwZWQ1OTRhN2Iw
ZWEyYjAxZmI4NTYuLjhhN2NjZDY4NTU5OTlmNGFlOWE3MGY3ZjU1OGZmZGZkZWYyYzlhMmEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuY3BwCkBAIC05OTIs
NCArOTkyLDkgQEAgU3RyaW5nIHZhbGlkYXRpb25NZXNzYWdlU3RlcE1pc21hdGNoVGV4dChjb25z
dCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmKQogICAgIHJldHVybiBXRUJfVUlfU1RSSU5HKCJzdGVw
IG1pc21hdGNoIiwgIlZhbGlkYXRpb24gbWVzc2FnZSBmb3IgaW5wdXQgZm9ybSBjb250cm9scyB3
aXRoIHZhbHVlIG5vdCByZXNwZWN0aW5nIHRoZSBzdGVwIGF0dHJpYnV0ZSIpOwogfQogCitTdHJp
bmcgY2xpY2tUb0V4aXRGdWxsU2NyZWVuVGV4dCgpCit7CisgICAgcmV0dXJuIFdFQl9VSV9TVFJJ
TkcoIkNsaWNrIHRvIGV4aXQgZnVsbCBzY3JlZW4gbW9kZSIsICJNZXNzYWdlIHRvIGRpc3BsYXkg
aW4gYnJvd3NlciB3aW5kb3cgd2hlbiBpbiB3ZWJraXQgZnVsbCBzY3JlZW4gbW9kZS4iKTsKK30K
KwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxp
emVkU3RyaW5ncy5oCmluZGV4IDY3MzI3NDhiMTIwODgyNjMzODI4YjVmZDI5ZmViNjBlOWZhOWIy
ZWQuLmU5NTg3NmU3NjIwMWZjYWI2MjE5OTMzMmE5MDBiM2FmNmIwOWI3MmEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmgKQEAgLTI1Niw2ICsyNTYsOCBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgU3RyaW5nIHVuYWNjZXB0YWJsZVRMU0NlcnRpZmljYXRl
KCk7CiAjZW5kaWYKIAorICAgIFN0cmluZyBjbGlja1RvRXhpdEZ1bGxTY3JlZW5UZXh0KCk7CisK
ICNpZiAhUExBVEZPUk0oQ0hST01JVU0pCiAjZGVmaW5lIFdFQl9VSV9TVFJJTkcoc3RyaW5nLCBk
ZXNjcmlwdGlvbikgV2ViQ29yZTo6bG9jYWxpemVkU3RyaW5nKHN0cmluZykKICNkZWZpbmUgV0VC
X1VJX1NUUklOR19LRVkoc3RyaW5nLCBrZXksIGRlc2NyaXB0aW9uKSBXZWJDb3JlOjpsb2NhbGl6
ZWRTdHJpbmcoa2V5KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dl
YkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tYWMvV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcuaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hYzhl
YmVjNDQ5NmU2Y2I4OWM2MzI5MzIyZjc5ODhmZTI5YmUzNzdmCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJW
aWV3LmgKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgV2ViQ29yZUZ1bGxT
Y3JlZW5QbGFjZWhvbGRlclZpZXdfaAorI2RlZmluZSBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9s
ZGVyVmlld19oCisKKyNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KKworQGludGVyZmFjZSBXZWJD
b3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldyA6IE5TVmlldyB7CisgICAgUmV0YWluUHRyPE5T
Vmlldz4gX2V4aXRXYXJuaW5nOworICAgIFJldGFpblB0cjxDQUxheWVyPiBfcGF0dGVybkxheWVy
OworICAgIE5TT2JqZWN0KiBfdGFyZ2V0OworICAgIFNFTCBfYWN0aW9uOworfQorQHByb3BlcnR5
KHJldGFpbikgaWQgY29udGVudHM7CitAcHJvcGVydHkoYXNzaWduKSBOU09iamVjdCogdGFyZ2V0
OworQHByb3BlcnR5KGFzc2lnbikgU0VMIGFjdGlvbjsKKy0gKHZvaWQpc2V0RXhpdFdhcm5pbmdW
aXNpYmxlOihCT09MKXZpc2libGU7CitAZW5kCisKKyNlbmRpZiAvLyBXZWJDb3JlRnVsbFNjcmVl
blBsYWNlaG9sZGVyVmlld19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcubW0gYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tYWMvV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcubW0KbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZDdmNWQ3OTRlZWJhYmI2ZmE4OWM3MzU0NTgyOWNmZDRlNzZhZTAxMgotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlRnVsbFNjcmVlblBsYWNl
aG9sZGVyVmlldy5tbQpAQCAtMCwwICsxLDEwMCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAx
MiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJj
b25maWcuaCIKKyNpbmNsdWRlICJXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldy5oIgor
CisjaW5jbHVkZSAiTG9jYWxpemVkU3RyaW5ncy5oIgorI2luY2x1ZGUgIldlYkNvcmVGdWxsU2Ny
ZWVuV2FybmluZ1ZpZXcuaCIKKyNpbmNsdWRlIDx3dGYvVW51c2VkUGFyYW0uaD4KKyNpbmNsdWRl
IDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKwordXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CisKK3N0
YXRpYyBDR0Zsb2F0IFBhdHRlcm5CYWNrZ3JvdW5kR3JleSA9IDAuMjU7CitzdGF0aWMgQ0dGbG9h
dCBQYXR0ZXJuQmFja2dyb3VuZEFscGhhID0gMC4yNTsKKworQGltcGxlbWVudGF0aW9uIFdlYkNv
cmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3CistIChpZClpbml0V2l0aEZyYW1lOihOU1JlY3Qp
ZnJhbWVSZWN0Cit7CisgICAgc2VsZiA9IFtzdXBlciBpbml0V2l0aEZyYW1lOmZyYW1lUmVjdF07
CisgICAgaWYgKCFzZWxmKQorICAgICAgICByZXR1cm4gbmlsOworCisgICAgW3NlbGYgc2V0TGF5
ZXI6W0NBTGF5ZXIgbGF5ZXJdXTsKKyAgICBbc2VsZiBzZXRMYXllckNvbnRlbnRzUmVkcmF3UG9s
aWN5Ok5TVmlld0xheWVyQ29udGVudHNSZWRyYXdOZXZlcl07CisgICAgW3NlbGYgc2V0V2FudHNM
YXllcjpZRVNdOworCisgICAgX3BhdHRlcm5MYXllciA9IGFkb3B0TlMoW1tDQUxheWVyIGFsbG9j
XSBpbml0XSk7CisgICAgW19wYXR0ZXJuTGF5ZXIgc2V0RnJhbWU6IFtbc2VsZiBsYXllcl0gYm91
bmRzXV07CisgICAgW19wYXR0ZXJuTGF5ZXIgc2V0QXV0b3Jlc2l6aW5nTWFzazooa0NBTGF5ZXJX
aWR0aFNpemFibGV8a0NBTGF5ZXJIZWlnaHRTaXphYmxlKV07CisgICAgW1tzZWxmIGxheWVyXSBh
ZGRTdWJsYXllcjpfcGF0dGVybkxheWVyLmdldCgpXTsKKworICAgIF9leGl0V2FybmluZyA9IGFk
b3B0TlMoW1tXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3IGFsbG9jXSBpbml0V2l0aFRpdGxl
OmNsaWNrVG9FeGl0RnVsbFNjcmVlblRleHQoKV0pOworICAgIE5TUmVjdCB3YXJuaW5nRnJhbWUg
PSBbX2V4aXRXYXJuaW5nLmdldCgpIGZyYW1lXTsKKyAgICB3YXJuaW5nRnJhbWUub3JpZ2luID0g
TlNNYWtlUG9pbnQoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmcmFt
ZVJlY3Quc2l6ZS53aWR0aCAtIHdhcm5pbmdGcmFtZS5zaXplLndpZHRoKSAvIDIsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmcmFtZVJlY3Quc2l6ZS5oZWlnaHQgLSB3
YXJuaW5nRnJhbWUuc2l6ZS5oZWlnaHQpIC8gMik7CisgICAgW19leGl0V2FybmluZy5nZXQoKSBz
ZXRGcmFtZTp3YXJuaW5nRnJhbWVdOworICAgIFtfZXhpdFdhcm5pbmcuZ2V0KCkgc2V0SGlkZGVu
OllFU107CisgICAgW3NlbGYgYWRkU3VidmlldzpfZXhpdFdhcm5pbmcuZ2V0KCldOworCisgICAg
cmV0dXJuIHNlbGY7Cit9CisKK0BzeW50aGVzaXplIHRhcmdldCA9IF90YXJnZXQ7CitAc3ludGhl
c2l6ZSBhY3Rpb24gPSBfYWN0aW9uOworCitAZHluYW1pYyBjb250ZW50czsKKy0gKHZvaWQpc2V0
Q29udGVudHM6KGlkKWNvbnRlbnRzCit7CisgICAgW1tzZWxmIGxheWVyXSBzZXRDb250ZW50czpj
b250ZW50c107Cit9CisKKy0gKGlkKWNvbnRlbnRzCit7CisgICAgcmV0dXJuIFtbc2VsZiBsYXll
cl0gY29udGVudHNdOworfQorCistICh2b2lkKXNldEV4aXRXYXJuaW5nVmlzaWJsZTooQk9PTCl2
aXNpYmxlCit7CisgICAgW19leGl0V2FybmluZy5nZXQoKSBzZXRIaWRkZW46IXZpc2libGVdOwor
ICAgIGlmICh2aXNpYmxlKSB7CisgICAgICAgIFJldGFpblB0cjxDR0NvbG9yUmVmPiBjb2xvciA9
IGFkb3B0Q0YoQ0dDb2xvckNyZWF0ZUdlbmVyaWNHcmF5KFBhdHRlcm5CYWNrZ3JvdW5kR3JleSwg
UGF0dGVybkJhY2tncm91bmRBbHBoYSkpOworICAgICAgICBbX3BhdHRlcm5MYXllciBzZXRCYWNr
Z3JvdW5kQ29sb3I6Y29sb3IuZ2V0KCldOworICAgIH0gZWxzZQorICAgICAgICBbX3BhdHRlcm5M
YXllciBzZXRCYWNrZ3JvdW5kQ29sb3I6bmlsXTsKK30KKworLSAodm9pZCltb3VzZURvd246KE5T
RXZlbnQgKil0aGVFdmVudAoreworICAgIFVOVVNFRF9QQVJBTSh0aGVFdmVudCk7CisKKyAgICBp
ZiAoIV90YXJnZXQgfHwgIV9hY3Rpb24pCisgICAgICAgIHJldHVybjsKKyAgICBbX3RhcmdldCBw
ZXJmb3JtU2VsZWN0b3I6X2FjdGlvbl07Cit9CisKK0BlbmQK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176340</attachid>
            <date>2012-11-27 14:32:00 -0800</date>
            <delta_ts>2012-11-27 15:22:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102300-20121127142937.patch</filename>
            <type>text/plain</type>
            <size>15192</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1OTE5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODM2NTZiNzRhMDM1NGJl
MWYxYzE2ZGE5ZjlkYzBiZWM4NTBkZWMxNy4uODU1YjFlNGFhOGY2OTgyNGU1NGM2MjVkNTY5ZmI4
ZWEyZjgxYTA5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMzIEBACiAyMDEyLTExLTE0ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCisgICAgICAgIEFkZCBhIG5ldyBzaGFyZWQg
Y2xhc3MgV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcsIGZvciB1c2UgaW4gV2ViS2l0
IGFuZCBXZWJLaXQyLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTAyMzAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQWRkIGEgbmV3IHNoYXJlZCBjbGFzcyBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVy
Vmlldywgd2hpY2ggcHJlc2VudHMgdGhlIGNvbnRlbnRzIG9mIHRoZSAKKyAgICAgICAgV2ViVmll
dyBwcmlvciB0byBmdWxsIHNjcmVlbiB3aXRoIGEgbWVzc2FnZSBpbmZvcm1pbmcgdGhlIHVzZXIg
aG93IHRvIGV4aXQgZnJvbSBmdWxsIHNjcmVlbiBtb2RlLgorCisgICAgICAgICogcGxhdGZvcm0v
bWFjL1dlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJD
b3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldyBpbml0V2l0aEZyYW1lOl0pOiBDcmVhdGUgdGhl
IHdhcm5pbmcgdmlldyBhbmQgc2V0IHVwIHRoZSBwbGFjZWhvbGRlciBsYXllci4KKyAgICAgICAg
KC1bV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcgc2V0Q29udGVudHM6XSk6IFBhc3Mg
YWxvbmcgdG8gY29udGVudCB2aWV3IGxheWVyLgorICAgICAgICAoLVtXZWJDb3JlRnVsbFNjcmVl
blBsYWNlaG9sZGVyVmlldyBjb250ZW50c10pOiBEaXR0by4KKyAgICAgICAgKC1bV2ViQ29yZUZ1
bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcgc2V0RXhpdFdhcm5pbmdWaXNpYmxlOl0pOiBTaG93IG9y
IGhpZGUgdGhlIGV4aXQgd2FybmluZy4KKyAgICAgICAgKC1bV2ViQ29yZUZ1bGxTY3JlZW5QbGFj
ZWhvbGRlclZpZXcgbW91c2VEb3duOl0pOiBDYWxsIHRoZSB0YXJnZXQgd2l0aCBhY3Rpb24uCisK
KyAgICAgICAgIEFkZCBhIGxvY2FsaXplZCBzdHJpbmcgZW50cnkgZm9yIHRoZSAiY2xpY2sgdG8g
ZXhpdCIgdGV4dDoKKyAgICAgICAgICogRW5nbGlzaC5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdz
OgorICAgICAgICAqIHBsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Y2xpY2tUb0V4aXRGdWxsU2NyZWVuVGV4dCk6CisgICAgICAgICogcGxhdGZvcm0vTG9j
YWxpemVkU3RyaW5ncy5oOgorICAgICAgICAqIEVuZ2xpc2gubHByb2ovTG9jYWxpemFibGUuc3Ry
aW5nczoKKworICAgICAgICBBZGQgdGhlIG5ldyBmaWxlcyB0byB0aGUgcHJvamVjdCBhbmQgZXhw
b3J0cyBsaXN0OgorICAgICAgICAqIFdlYkNvcmUuZXhwLmluOgorICAgICAgICAqIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKworMjAxMi0xMS0xNCAgSmVyIE5vYmxlICA8amVy
Lm5vYmxlQGFwcGxlLmNvbT4KKwogICAgICAgICBBZGQgYSBuZXcgc2hhcmVkIGNsYXNzIFdlYkNv
cmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcgd2hpY2ggcHJlc2VudHMgYSBzdHlsZWQgd2FybmluZyBt
ZXNzYWdlLgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTAyMjk5CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovTG9jYWxp
emFibGUuc3RyaW5ncyBiL1NvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHByb2ovTG9jYWxpemFibGUu
c3RyaW5ncwppbmRleCBhMGE4NzY2MTcwY2VmNmI3MTcyMjM0OTBmOGYyNTczYzlkOTA2MmJkLi44
YzY1NWQ2MTlmMWRkMTEwNmEyZmJhZDAzNjk3Y2EwOTdhOTFhZmUyIDEwMDY0NApHSVQgYmluYXJ5
IHBhdGNoCmRlbHRhIDIxMgp6Y21YQEdrTkw+fjxfIStfTUh1dU12PXxmXmQ+SysxaWgoZVpBKU8o
MGEpR2tFWVo1fmRMcTA8fVAlSVY1UVVKMHQKejhTKXJYeit4YT8yMmVaP0M9TDxAQGx6Uis3X3gh
OTUrRTspcF9DeTkybyl3NWMjMGU5MFkkV2NfSFojTUYqcE43CmZHWn5WQkRpd2UjXk1QYjRMakBM
SGxEWX5Fd21AMHBiO3RuI0BvcCskCgpkZWx0YSA5ClFjbWFFSWZjZH5hPF8hK18wVTZULV95N09e
CgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCA0Nzg5ZjRjNjM2NTkzOTdiMmFjMzRjYTQ1NGUzZjlk
MzQ0YTEyMmQ3Li5hOGE1ZGY4NjdhMGE5Nzk2ZGVlZGNkNWQ0YTk5NTgyMmU2ZDg2Njg2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLmV4cC5pbgpAQCAtMTU5OCw2ICsxNTk4LDcgQEAgX3drU2lnbmFsQ0ZSZWFkU3Ry
ZWFtSGFzQnl0ZXMKIC5vYmpjX2NsYXNzX25hbWVfRE9NU3R5bGVTaGVldAogLm9iamNfY2xhc3Nf
bmFtZV9ET01TdHlsZVNoZWV0TGlzdAogLm9iamNfY2xhc3NfbmFtZV9ET01UcmVlV2Fsa2VyCisu
b2JqY19jbGFzc19uYW1lX1dlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3CiAub2JqY19j
bGFzc19uYW1lX1dlYkNvcmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcKIC5vYmpjX2NsYXNzX25hbWVf
V2ViQ29yZUZ1bGxTY3JlZW5XaW5kb3cKIC5vYmpjX2NsYXNzX25hbWVfV2ViSFRNTENvbnZlcnRl
cgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IGFjNzUyMWNkMmMwNjgyNTA3ZjNlMzM0OTExNGJmY2M4NzZlNjEwMWYuLmUxYjBjODFh
MmM3YzQ0ZTAyMzI3ODRkODgzNWNkMTVhMmQ2OGU2YTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTU5MjcsNiArNTkyNyw4IEBA
CiAJCUNEQjg1OUY3MTYwRDQ4QTQwMEU1QjA3RiAvKiBNZWRpYUtleUV2ZW50LmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQjg1OUY0MTYwRDQ4OTkw
MEU1QjA3RiAvKiBNZWRpYUtleUV2ZW50LmNwcCAqLzsgfTsKIAkJQ0RCODU5RkExNjBENDk0OTAw
RTVCMDdGIC8qIEpTTWVkaWFLZXlFdmVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDREI4NTlGODE2MEQ0OTNFMDBFNUIwN0YgLyogSlNNZWRpYUtl
eUV2ZW50LmNwcCAqLzsgfTsKIAkJQ0RCODU5RkIxNjBENDk0RjAwRTVCMDdGIC8qIEpTTWVkaWFL
ZXlFcnJvci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBDREI4NTlGMDE2MEQ0MkREMDBFNUIwN0YgLyogSlNNZWRpYUtleUVycm9yLmNwcCAqLzsgfTsK
KwkJQ0RDNjlEREExNjM3MUZENDAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xk
ZXJWaWV3LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
REM2OUREODE2MzcxRkQzMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZp
ZXcuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlD
REM2OUREQjE2MzcxRkQ0MDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZp
ZXcubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREM2
OUREOTE2MzcxRkQzMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcu
bW0gKi87IH07CiAJCUNEQzY5REQ2MTYzMjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVl
bldhcm5pbmdWaWV3LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDREM2OURENDE2MzIwMjZDMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5XYXJuaW5n
Vmlldy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CUNEQzY5REQ3MTYzMjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RDNjlE
RDUxNjMyMDI2QzAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcubW0gKi87
IH07CiAJCUNERDUyNUQ3MTQ1QjZERDAwMDhEMjA0RCAvKiBKU0hUTUxNZWRpYUVsZW1lbnRDdXN0
b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RG
NjVDQ0MxNDVCNkFGRTAwQzRDN0FBIC8qIEpTSFRNTE1lZGlhRWxlbWVudEN1c3RvbS5jcHAgKi87
IH07CkBAIC0xMzM1Miw2ICsxMzM1NCw4IEBACiAJCUNEQjg1OUY4MTYwRDQ5M0UwMEU1QjA3RiAv
KiBKU01lZGlhS2V5RXZlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNNZWRpYUtleUV2ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0RC
ODU5RjkxNjBENDkzRTAwRTVCMDdGIC8qIEpTTWVkaWFLZXlFdmVudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU01lZGlhS2V5RXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQ0RCRDkzQkExMzMzQkQ0QjAwMjU3MEUzIC8qIGZ1bGxzY3JlZW5RdWlja1Rp
bWUuY3NzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dC5jc3M7IHBhdGggPSBmdWxsc2NyZWVuUXVpY2tUaW1lLmNz
czsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RDNjlERDgxNjM3MUZEMzAwN0MzOERG
IC8qIFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQzY5REQ5MTYzNzFGRDMwMDdDMzhERiAvKiBXZWJD
b3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgcGF0aCA9IFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3Lm1tOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDREM2OURENDE2MzIwMjZDMDA3QzM4REYgLyogV2Vi
Q29yZUZ1bGxTY3JlZW5XYXJuaW5nVmlldy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUNEQzY5REQ1MTYzMjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlbldh
cm5pbmdWaWV3Lm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV2Vi
Q29yZUZ1bGxTY3JlZW5XYXJuaW5nVmlldy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQ0RDRTVDRDAxNDYzM0JDOTAwRDQ3Q0NBIC8qIEV2ZW50VGFyZ2V0RmFjdG9yeS5pbiAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBFdmVudFRhcmdldEZhY3RvcnkuaW47IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CkBAIC0xNTg1NSw2ICsxNTg1OSw4IEBACiAJCQkJQkNFNjU5RTUwRUE5MkZC
MjAwN0U0NTMzIC8qIFRoZW1lTWFjLmggKi8sCiAJCQkJQkNFNjU5RTgwRUE5MkZGQTAwN0U0NTMz
IC8qIFRoZW1lTWFjLm1tICovLAogCQkJCTUxREY2RDdGMEI5MkExOEUwMEMyREM4NSAvKiBUaHJl
YWRDaGVjay5tbSAqLywKKwkJCQlDREM2OUREODE2MzcxRkQzMDA3QzM4REYgLyogV2ViQ29yZUZ1
bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcuaCAqLywKKwkJCQlDREM2OUREOTE2MzcxRkQzMDA3QzM4
REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcubW0gKi8sCiAJCQkJQ0RDNjlE
RDQxNjMyMDI2QzAwN0MzOERGIC8qIFdlYkNvcmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcuaCAqLywK
IAkJCQlDREM2OURENTE2MzIwMjZDMDA3QzM4REYgLyogV2ViQ29yZUZ1bGxTY3JlZW5XYXJuaW5n
Vmlldy5tbSAqLywKIAkJCQlDRDEyN0RFQTE0RjMwOTc5MDBFODQ3NzkgLyogV2ViQ29yZUZ1bGxT
Y3JlZW5XaW5kb3cuaCAqLywKQEAgLTI1NjQ2LDYgKzI1NjUyLDcgQEAKIAkJCQlGRDU4MUZCNTE1
MjBGOTNCMDAzQTdBNzUgLyogV2F2ZVRhYmxlLmggaW4gSGVhZGVycyAqLywKIAkJCQkyOUE4MTI0
OTBGQkI5Q0E5MDA1MTAyOTMgLyogV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTkzRjE5OUE4MDgyNDVFNTkwMDFFOUFCQyAvKiBXZWJDb3JlRnJhbWVW
aWV3LmggaW4gSGVhZGVycyAqLywKKwkJCQlDREM2OUREQTE2MzcxRkQ0MDA3QzM4REYgLyogV2Vi
Q29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcuaCBpbiBIZWFkZXJzICovLAogCQkJCUNEQzY5
REQ2MTYzMjAyNkMwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3LmggaW4g
SGVhZGVycyAqLywKIAkJCQlDRDEyN0RFRTE0RjMwOTg0MDBFODQ3NzkgLyogV2ViQ29yZUZ1bGxT
Y3JlZW5XaW5kb3cuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNTNEOTExMTE0MzEwQ0MwMDBEODE3
RSAvKiBXZWJDb3JlSlNDbGllbnREYXRhLmggaW4gSGVhZGVycyAqLywKQEAgLTI4NzY0LDYgKzI4
NzcxLDcgQEAKIAkJCQlGRDdGMjk5NjEzRDRDMENCMDBBRDk1MzUgLyogV2F2ZVNoYXBlclByb2Nl
c3Nvci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlGRDU4MUZCNDE1MjBGOTNCMDAzQTdBNzUgLyog
V2F2ZVRhYmxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTI5QTgxMjRBMEZCQjlDQTkwMDUxMDI5
MyAvKiBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlci5tbSBpbiBTb3VyY2VzICovLAorCQkJ
CUNEQzY5RERCMTYzNzFGRDQwMDdDMzhERiAvKiBXZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVy
Vmlldy5tbSBpbiBTb3VyY2VzICovLAogCQkJCUNEQzY5REQ3MTYzMjAyNkMwMDdDMzhERiAvKiBX
ZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0QxMjdE
RUQxNEYzMDk3RDAwRTg0Nzc5IC8qIFdlYkNvcmVGdWxsU2NyZWVuV2luZG93Lm1tIGluIFNvdXJj
ZXMgKi8sCiAJCQkJRjNCRkM5RDMxNUMxNzdFQzAwNDI0NEU1IC8qIFdlYkNvcmVNZW1vcnlJbnN0
cnVtZW50YXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L0xvY2FsaXplZFN0cmluZ3MuY3BwCmluZGV4IDhlMDA1ZWY0ZjQ3ZDYyNTZhYWFlMmI5N2U4NzQ5
NzAxYTQzMGJmNGMuLmJkYWNkYjg4ZDE1MzdkZGZhOGNiNzFmNmExZTFiNWU5NmViMGE5MTAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuY3BwCkBAIC05OTgs
NCArOTk4LDkgQEAgU3RyaW5nIHZhbGlkYXRpb25NZXNzYWdlQmFkSW5wdXRGb3JOdW1iZXJUZXh0
KCkKICAgICByZXR1cm4gdmFsaWRhdGlvbk1lc3NhZ2VUeXBlTWlzbWF0Y2hUZXh0KCk7CiB9CiAK
K1N0cmluZyBjbGlja1RvRXhpdEZ1bGxTY3JlZW5UZXh0KCkKK3sKKyAgICByZXR1cm4gV0VCX1VJ
X1NUUklORygiQ2xpY2sgdG8gZXhpdCBmdWxsIHNjcmVlbiBtb2RlIiwgIk1lc3NhZ2UgdG8gZGlz
cGxheSBpbiBicm93c2VyIHdpbmRvdyB3aGVuIGluIHdlYmtpdCBmdWxsIHNjcmVlbiBtb2RlLiIp
OworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9M
b2NhbGl6ZWRTdHJpbmdzLmgKaW5kZXggYmI0OTE2ZTZkNGY0MDk1ZjUzNWJlMjFmMzI2OTdlM2Vk
MzA4ZGVkMy4uYmIyMTlkYjE0ZmI5NzVmMDRlY2E0ZDdlOTMyNWI1ZjExNWNmYWY3MiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuaApAQCAtMjYwLDYgKzI2MCw4
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBTdHJpbmcgdW5hY2NlcHRhYmxlVExTQ2VydGlm
aWNhdGUoKTsKICNlbmRpZgogCisgICAgU3RyaW5nIGNsaWNrVG9FeGl0RnVsbFNjcmVlblRleHQo
KTsKKwogI2lmICFQTEFURk9STShDSFJPTUlVTSkKICNkZWZpbmUgV0VCX1VJX1NUUklORyhzdHJp
bmcsIGRlc2NyaXB0aW9uKSBXZWJDb3JlOjpsb2NhbGl6ZWRTdHJpbmcoc3RyaW5nKQogI2RlZmlu
ZSBXRUJfVUlfU1RSSU5HX0tFWShzdHJpbmcsIGtleSwgZGVzY3JpcHRpb24pIFdlYkNvcmU6Omxv
Y2FsaXplZFN0cmluZyhrZXkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhvbGRlclZpZXcuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21hYy9XZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmlldy5oCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjdiMjQzYjBhMmYyNGMyMDU3MzdhYTM5NzhkMWE4YzZhZTRkYzQ0YzMKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZUZ1bGxTY3JlZW5QbGFjZWhv
bGRlclZpZXcuaApAQCAtMCwwICsxLDQyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJ
UycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMg
T1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwor
ICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBX
QVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisg
KiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBXZWJDb3Jl
RnVsbFNjcmVlblBsYWNlaG9sZGVyVmlld19oCisjZGVmaW5lIFdlYkNvcmVGdWxsU2NyZWVuUGxh
Y2Vob2xkZXJWaWV3X2gKKworI2ltcG9ydCA8d3RmL1JldGFpblB0ci5oPgorCitAaW50ZXJmYWNl
IFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3IDogTlNWaWV3IHsKKyAgICBSZXRhaW5Q
dHI8TlNWaWV3PiBfZXhpdFdhcm5pbmc7CisgICAgTlNPYmplY3QqIF90YXJnZXQ7CisgICAgU0VM
IF9hY3Rpb247Cit9CitAcHJvcGVydHkocmV0YWluKSBpZCBjb250ZW50czsKK0Bwcm9wZXJ0eShh
c3NpZ24pIE5TT2JqZWN0KiB0YXJnZXQ7CitAcHJvcGVydHkoYXNzaWduKSBTRUwgYWN0aW9uOwor
LSAodm9pZClzZXRFeGl0V2FybmluZ1Zpc2libGU6KEJPT0wpdmlzaWJsZTsKK0BlbmQKKworI2Vu
ZGlmIC8vIFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3X2gKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlRnVsbFNjcmVlblBsYWNlaG9sZGVyVmll
dy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlRnVsbFNjcmVlblBsYWNl
aG9sZGVyVmlldy5tbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iOGUyMGU5ZjI4NDY3MDkxZjM4MzY5ZWYwZTNmMDM3
MGI2N2NkNTNkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1dlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3Lm1tCkBAIC0wLDAgKzEsOTggQEAKKy8q
CisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiV2ViQ29yZUZ1bGxTY3Jl
ZW5QbGFjZWhvbGRlclZpZXcuaCIKKworI2luY2x1ZGUgIkxvY2FsaXplZFN0cmluZ3MuaCIKKyNp
bmNsdWRlICJXZWJDb3JlRnVsbFNjcmVlbldhcm5pbmdWaWV3LmgiCisjaW5jbHVkZSA8d3RmL1Vu
dXNlZFBhcmFtLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK0BpbnRlcmZh
Y2UgQ0FGaWx0ZXIgOiBOU09iamVjdAorKyAoQ0FGaWx0ZXIgKilmaWx0ZXJXaXRoVHlwZTooTlNT
dHJpbmcgKil0eXBlOworQGVuZAorCit1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKKworQGltcGxl
bWVudGF0aW9uIFdlYkNvcmVGdWxsU2NyZWVuUGxhY2Vob2xkZXJWaWV3CistIChpZClpbml0V2l0
aEZyYW1lOihOU1JlY3QpZnJhbWVSZWN0Cit7CisgICAgc2VsZiA9IFtzdXBlciBpbml0V2l0aEZy
YW1lOmZyYW1lUmVjdF07CisgICAgaWYgKCFzZWxmKQorICAgICAgICByZXR1cm4gbmlsOworCisg
ICAgW3NlbGYgc2V0TGF5ZXI6W0NBTGF5ZXIgbGF5ZXJdXTsKKyAgICBbc2VsZiBzZXRMYXllckNv
bnRlbnRzUmVkcmF3UG9saWN5Ok5TVmlld0xheWVyQ29udGVudHNSZWRyYXdOZXZlcl07CisgICAg
W3NlbGYgc2V0V2FudHNMYXllcjpZRVNdOworCisgICAgX2V4aXRXYXJuaW5nID0gYWRvcHROUyhb
W1dlYkNvcmVGdWxsU2NyZWVuV2FybmluZ1ZpZXcgYWxsb2NdIGluaXRXaXRoVGl0bGU6Y2xpY2tU
b0V4aXRGdWxsU2NyZWVuVGV4dCgpXSk7CisgICAgTlNSZWN0IHdhcm5pbmdGcmFtZSA9IFtfZXhp
dFdhcm5pbmcuZ2V0KCkgZnJhbWVdOworICAgIHdhcm5pbmdGcmFtZS5vcmlnaW4gPSBOU01ha2VQ
b2ludCgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZyYW1lUmVjdC5z
aXplLndpZHRoIC0gd2FybmluZ0ZyYW1lLnNpemUud2lkdGgpIC8gMiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKGZyYW1lUmVjdC5zaXplLmhlaWdodCAtIHdhcm5pbmdG
cmFtZS5zaXplLmhlaWdodCkgLyAyKTsKKyAgICBbX2V4aXRXYXJuaW5nLmdldCgpIHNldEZyYW1l
Ondhcm5pbmdGcmFtZV07CisgICAgW19leGl0V2FybmluZy5nZXQoKSBzZXRIaWRkZW46WUVTXTsK
KyAgICBbc2VsZiBhZGRTdWJ2aWV3Ol9leGl0V2FybmluZy5nZXQoKV07CisKKyAgICByZXR1cm4g
c2VsZjsKK30KKworQHN5bnRoZXNpemUgdGFyZ2V0ID0gX3RhcmdldDsKK0BzeW50aGVzaXplIGFj
dGlvbiA9IF9hY3Rpb247CisKK0BkeW5hbWljIGNvbnRlbnRzOworLSAodm9pZClzZXRDb250ZW50
czooaWQpY29udGVudHMKK3sKKyAgICBbW3NlbGYgbGF5ZXJdIHNldENvbnRlbnRzOmNvbnRlbnRz
XTsKK30KKworLSAoaWQpY29udGVudHMKK3sKKyAgICByZXR1cm4gW1tzZWxmIGxheWVyXSBjb250
ZW50c107Cit9CisKKy0gKHZvaWQpc2V0RXhpdFdhcm5pbmdWaXNpYmxlOihCT09MKXZpc2libGUK
K3sKKyAgICBbX2V4aXRXYXJuaW5nLmdldCgpIHNldEhpZGRlbjohdmlzaWJsZV07CisgICAgaWYg
KHZpc2libGUpIHsKKyAgICAgICAgQ0FGaWx0ZXIqIGZpbHRlciA9IFtDQUZpbHRlciBmaWx0ZXJX
aXRoVHlwZTpAImNvbG9yTW9ub2Nocm9tZSJdOworICAgICAgICBbZmlsdGVyIHNldFZhbHVlOltO
U051bWJlciBudW1iZXJXaXRoRmxvYXQ6LTAuMl0gZm9yS2V5OkAiaW5wdXRCaWFzIl07CisgICAg
ICAgIFtmaWx0ZXIgc2V0VmFsdWU6W05TTnVtYmVyIG51bWJlcldpdGhGbG9hdDoxXSBmb3JLZXk6
QCJpbnB1dEFtb3VudCJdOworICAgICAgICBbW3NlbGYgbGF5ZXJdIHNldEZpbHRlcnM6W05TQXJy
YXkgYXJyYXlXaXRoT2JqZWN0OmZpbHRlcl1dOworICAgIH0gZWxzZQorICAgICAgICBbW3NlbGYg
bGF5ZXJdIHNldEZpbHRlcnM6bmlsXTsKK30KKworLSAodm9pZCltb3VzZURvd246KE5TRXZlbnQg
Kil0aGVFdmVudAoreworICAgIFVOVVNFRF9QQVJBTSh0aGVFdmVudCk7CisKKyAgICBpZiAoIV90
YXJnZXQgfHwgIV9hY3Rpb24pCisgICAgICAgIHJldHVybjsKKyAgICBbX3RhcmdldCBwZXJmb3Jt
U2VsZWN0b3I6X2FjdGlvbl07Cit9CisKK0BlbmQK
</data>
<flag name="review"
          id="192088"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>