<?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>138388</bug_id>
          
          <creation_ts>2014-11-04 17:25:03 -0800</creation_ts>
          <short_desc>Add bundle SPI allowing PageOverlay to customize the action menu</short_desc>
          <delta_ts>2014-11-04 17:40:05 -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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>andersca</cc>
    
    <cc>bdakin</cc>
    
    <cc>mitz</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1046303</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-11-04 17:25:03 -0800</bug_when>
    <thetext>Add bundle SPI allowing PageOverlay to customize the action menu</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1046304</commentid>
    <comment_count>1</comment_count>
      <attachid>240988</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-11-04 17:25:23 -0800</bug_when>
    <thetext>Created attachment 240988
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1046309</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2014-11-04 17:26:37 -0800</bug_when>
    <thetext>&lt;rdar://problem/18875579&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1046317</commentid>
    <comment_count>3</comment_count>
      <attachid>240988</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-11-04 17:36:10 -0800</bug_when>
    <thetext>Comment on attachment 240988
Patch

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

&gt; Source/WebCore/page/PageOverlayController.h:52
&gt; +    Vector&lt;RefPtr&lt;PageOverlay&gt;&gt;&amp; pageOverlays() const { return m_pageOverlays; }

This should either return a const Vector&amp; or not be const.

&gt; Source/WebKit2/WebProcess/WebPage/WebPageOverlay.cpp:39
&gt; +static HashMap&lt;PageOverlay*, WebPageOverlay*&gt;&amp; coreOverlayMap()

I think this can just be called overlayMap().

&gt; Source/WebKit2/WebProcess/WebPage/mac/WebPageMac.mm:1205
&gt; +    for (auto&amp; overlay : mainFrame.pageOverlayController().pageOverlays()) {

I think this can be const auto&amp;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1046319</commentid>
    <comment_count>4</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-11-04 17:40:05 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/175597</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>240988</attachid>
            <date>2014-11-04 17:25:23 -0800</date>
            <delta_ts>2014-11-04 17:36:10 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138388-20141104172533.patch</filename>
            <type>text/plain</type>
            <size>15152</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc1NTY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTQ3YjNhOWYwZGIyYTQx
ODAxNmI1MTNlODE3YmQ1NTE4ODJiNmIxMy4uMTI2OTk5NWM3MDdmN2RlZDRjMWYwMzYzMDIxN2I0
YTA0Zjg2MmNmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDE1IEBACiAyMDE0LTExLTA0ICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCisgICAgICAgIEFkZCBidW5kbGUg
U1BJIGFsbG93aW5nIFBhZ2VPdmVybGF5IHRvIGN1c3RvbWl6ZSB0aGUgYWN0aW9uIG1lbnUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzODM4OAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGFnZS9QYWdl
T3ZlcmxheUNvbnRyb2xsZXIuaDoKKyAgICAgICAgRXhwb3NlIHRoZSBsaXN0IG9mIGFsbCBvdmVy
bGF5cy4KKworMjAxNC0xMS0wNCAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNv
bT4KKwogICAgICAgICBJbXBsZW1lbnQgeWVsbG93IGhpZ2hsaWdodCBvdmVyIGRhdGEgZGV0ZWN0
ZWQgaXRlbXMKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEzODM0MAogICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTg4NDAxMDI+CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXgg
ODk1MWQ4MTE3MWE2OWU5MTM1NWJhZjI3MTIwMmE3NGIxNjNlMjJmYy4uM2E3YjViMGM1NDBiZWVj
YjQ2NmUxNDM2ZmY5ZDM5ZmM2NjI0N2ZhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQzIEBACiAy
MDE0LTExLTA0ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCisgICAg
ICAgIEFkZCBidW5kbGUgU1BJIGFsbG93aW5nIFBhZ2VPdmVybGF5IHRvIGN1c3RvbWl6ZSB0aGUg
YWN0aW9uIG1lbnUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEzODM4OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VPdmVybGF5
LmNwcDoKKyAgICAgICAgQnVtcCB0aGUgQnVuZGxlUGFnZU92ZXJsYXkgY2xpZW50IHZlcnNpb24u
CisKKyAgICAgICAgKFdLQnVuZGxlUGFnZU92ZXJsYXlDcmVhdGUpOgorICAgICAgICAoV0tCdW5k
bGVQYWdlT3ZlcmxheVNldEFjY2Vzc2liaWxpdHlDbGllbnQpOgorICAgICAgICBEb24ndCByZXR1
cm4gaWYgd2UgaGF2ZSBhIHZlcnNpb247IHRoZSB2ZXJzaW9uIGNoZWNrIGhhcHBlbnMgbGF0ZXIg
YW55d2F5LAorICAgICAgICBhbmQgbm93IGl0IGlzIHZhbGlkIHRvIGhhdmUgYSB2ZXJzaW9uID4w
LgorCisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBh
Z2VPdmVybGF5Lmg6CisgICAgICAgIEJ1bXAgdGhlIEJ1bmRsZVBhZ2VPdmVybGF5IGNsaWVudCB2
ZXJzaW9uLgorICAgICAgICBBZGQgcHJlcGFyZUZvckFjdGlvbk1lbnUgY2FsbGJhY2suCisKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZU92ZXJsYXkuaDoKKyAgICAgICAgKFdl
YktpdDo6V2ViUGFnZU92ZXJsYXk6OkNsaWVudDo6cHJlcGFyZUZvckFjdGlvbk1lbnUpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlT3ZlcmxheS5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OmNvcmVPdmVybGF5TWFwKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZU92ZXJsYXk6
OldlYlBhZ2VPdmVybGF5KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZU92ZXJsYXk6On5XZWJQ
YWdlT3ZlcmxheSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VPdmVybGF5Ojpmcm9tQ29yZU92
ZXJsYXkpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlT3ZlcmxheTo6cGFnZU92ZXJsYXlEZXN0
cm95ZWQpOgorICAgICAgICBLZWVwIHRyYWNrIG9mIGEgbWFwIG9mIFBhZ2VPdmVybGF5IHRvIFdl
YlBhZ2VPdmVybGF5LgorCisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VPdmVybGF5OjpwcmVwYXJl
Rm9yQWN0aW9uTWVudSk6CisgICAgICAgIEZvcndhcmQgcHJlcGFyZUZvckFjdGlvbk1lbnUgdG8g
dGhlIGNsaWVudC4KKyAgICAgICAgCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9X
ZWJQYWdlTWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpwZXJmb3JtQWN0aW9uTWVu
dUhpdFRlc3RBdExvY2F0aW9uKToKKyAgICAgICAgSXRlcmF0ZSB0aHJvdWdoIHRoZSBvdmVybGF5
cyBhbmQgbGV0IHRoZW0gcHJlcGFyZUZvckFjdGlvbk1lbnU7CisgICAgICAgIHRoZSBmaXJzdCBv
dmVybGF5IHRoYXQgcmV0dXJucyB0cnVlIHdpbnMuIElmIG5vIG92ZXJsYXlzIHdhbnQgdG8KKyAg
ICAgICAgZG8gYW55dGhpbmcsIGhhbmQgcHJlcGFyYXRpb24gYWxvbmcgdG8gdGhlIGNvbnRleHQg
bWVudSBjbGllbnQuCisKKzIwMTQtMTEtMDQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBh
cHBsZS5jb20+CisKICAgICAgICAgSW1wbGVtZW50IHllbGxvdyBoaWdobGlnaHQgb3ZlciBkYXRh
IGRldGVjdGVkIGl0ZW1zCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMzgzNDAKICAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzE4ODQwMTAyPgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlT3ZlcmxheUNvbnRyb2xsZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGFnZU92ZXJsYXlDb250cm9sbGVyLmgKaW5kZXggMzM2OThhZjk2OWRi
NTFjNTg4MDIyZWM5MWE4NmU2Y2M2MzdiOTQyOS4uZmU3YmM5ODhjNTVlMDQ2MTI5OGM5NDIwMDNh
YTU2NWViZGMzYTRjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlT3Zlcmxh
eUNvbnRyb2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2VPdmVybGF5Q29udHJv
bGxlci5oCkBAIC00OSw2ICs0OSw4IEBAIHB1YmxpYzoKICAgICBHcmFwaGljc0xheWVyJiBkb2N1
bWVudE92ZXJsYXlSb290TGF5ZXIoKTsKICAgICBHcmFwaGljc0xheWVyJiB2aWV3T3ZlcmxheVJv
b3RMYXllcigpOwogCisgICAgVmVjdG9yPFJlZlB0cjxQYWdlT3ZlcmxheT4+JiBwYWdlT3Zlcmxh
eXMoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VPdmVybGF5czsgfQorCiAgICAgdm9pZCBpbnN0YWxs
UGFnZU92ZXJsYXkoUGFzc1JlZlB0cjxQYWdlT3ZlcmxheT4sIFBhZ2VPdmVybGF5OjpGYWRlTW9k
ZSk7CiAgICAgdm9pZCB1bmluc3RhbGxQYWdlT3ZlcmxheShQYWdlT3ZlcmxheSosIFBhZ2VPdmVy
bGF5OjpGYWRlTW9kZSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlT3ZlcmxheS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZU92ZXJsYXku
Y3BwCmluZGV4IGJhM2ZjMjYyMjM4YzJjODhhZGZhOWUwYWM1NmZjOGUxMWY5NmZlMjMuLjgwOWFl
MGIyOGJjODViYWMyZWFjOTllOTJlYjE2MjYwNDQ3YzRlZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlT3Zlcmxh
eS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkv
Yy9XS0J1bmRsZVBhZ2VPdmVybGF5LmNwcApAQCAtNDIsNyArNDIsNyBAQAogbmFtZXNwYWNlIEFQ
SSB7CiAKIHRlbXBsYXRlPD4gc3RydWN0IENsaWVudFRyYWl0czxXS0J1bmRsZVBhZ2VPdmVybGF5
Q2xpZW50QmFzZT4gewotICAgIHR5cGVkZWYgc3RkOjp0dXBsZTxXS0J1bmRsZVBhZ2VPdmVybGF5
Q2xpZW50VjA+IFZlcnNpb25zOworICAgIHR5cGVkZWYgc3RkOjp0dXBsZTxXS0J1bmRsZVBhZ2VP
dmVybGF5Q2xpZW50VjAsIFdLQnVuZGxlUGFnZU92ZXJsYXlDbGllbnRWMT4gVmVyc2lvbnM7CiB9
OwogCiB0ZW1wbGF0ZTw+IHN0cnVjdCBDbGllbnRUcmFpdHM8V0tCdW5kbGVQYWdlT3ZlcmxheUFj
Y2Vzc2liaWxpdHlDbGllbnRCYXNlPiB7CkBAIC0xMzEsNiArMTMxLDIwIEBAIHByaXZhdGU6CiAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIH0KICAgICB9CisKKyAgICB2aXJ0dWFs
IGJvb2wgcHJlcGFyZUZvckFjdGlvbk1lbnUoV2ViUGFnZU92ZXJsYXkmIHBhZ2VPdmVybGF5LCBS
ZWZQdHI8QVBJOjpPYmplY3Q+JiB1c2VyRGF0YSkgb3ZlcnJpZGUKKyAgICB7CisgICAgICAgIGlm
ICghbV9jbGllbnQucHJlcGFyZUZvckFjdGlvbk1lbnUpCisgICAgICAgICAgICByZXR1cm4gZmFs
c2U7CisKKyAgICAgICAgV0tUeXBlUmVmIHVzZXJEYXRhVG9QYXNzID0gbnVsbHB0cjsKKyAgICAg
ICAgaWYgKG1fY2xpZW50LnByZXBhcmVGb3JBY3Rpb25NZW51KHRvQVBJKCZwYWdlT3ZlcmxheSks
ICZ1c2VyRGF0YVRvUGFzcywgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKSkgeworICAgICAgICAg
ICAgdXNlckRhdGEgPSBhZG9wdFJlZih0b0ltcGwodXNlckRhdGFUb1Bhc3MpKTsKKyAgICAgICAg
ICAgIHJldHVybiB0cnVlOworICAgICAgICB9CisKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAg
IH0KICAgICAKICAgICB2aXJ0dWFsIGJvb2wgY29weUFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVTdHJp
bmdWYWx1ZUZvclBvaW50KFdlYlBhZ2VPdmVybGF5JiBwYWdlT3ZlcmxheSwgU3RyaW5nIGF0dHJp
YnV0ZSwgV2ViQ29yZTo6RmxvYXRQb2ludCBwYXJhbWV0ZXIsIFN0cmluZyYgdmFsdWUpIG92ZXJy
aWRlCiAgICAgewpAQCAtMTgxLDkgKzE5NSw2IEBAIFdLVHlwZUlEIFdLQnVuZGxlUGFnZU92ZXJs
YXlHZXRUeXBlSUQoKQogCiBXS0J1bmRsZVBhZ2VPdmVybGF5UmVmIFdLQnVuZGxlUGFnZU92ZXJs
YXlDcmVhdGUoV0tCdW5kbGVQYWdlT3ZlcmxheUNsaWVudEJhc2UqIHdrQ2xpZW50KQogewotICAg
IGlmICh3a0NsaWVudCAmJiB3a0NsaWVudC0+dmVyc2lvbikKLSAgICAgICAgcmV0dXJuIG51bGxw
dHI7Ci0KICAgICBhdXRvIGNsaWVudEltcGwgPSBzdGQ6Om1ha2VfdW5pcXVlPFBhZ2VPdmVybGF5
Q2xpZW50SW1wbD4od2tDbGllbnQpOwogCiAgICAgLy8gRklYTUU6IExvb2tzIGxpa2UgdGhpcyBs
ZWFrcyB0aGUgY2xpZW50SW1wbC4KQEAgLTE5Miw4ICsyMDMsNiBAQCBXS0J1bmRsZVBhZ2VPdmVy
bGF5UmVmIFdLQnVuZGxlUGFnZU92ZXJsYXlDcmVhdGUoV0tCdW5kbGVQYWdlT3ZlcmxheUNsaWVu
dEJhc2UqCiAKIHZvaWQgV0tCdW5kbGVQYWdlT3ZlcmxheVNldEFjY2Vzc2liaWxpdHlDbGllbnQo
V0tCdW5kbGVQYWdlT3ZlcmxheVJlZiBidW5kbGVQYWdlT3ZlcmxheVJlZiwgV0tCdW5kbGVQYWdl
T3ZlcmxheUFjY2Vzc2liaWxpdHlDbGllbnRCYXNlKiBjbGllbnQpCiB7Ci0gICAgaWYgKGNsaWVu
dCAmJiBjbGllbnQtPnZlcnNpb24pCi0gICAgICAgIHJldHVybjsKICAgICBzdGF0aWNfY2FzdDxQ
YWdlT3ZlcmxheUNsaWVudEltcGwmPih0b0ltcGwoYnVuZGxlUGFnZU92ZXJsYXlSZWYpLT5jbGll
bnQoKSkuc2V0QWNjZXNzaWJpbGl0eUNsaWVudChjbGllbnQpOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFn
ZU92ZXJsYXkuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJ
L2MvV0tCdW5kbGVQYWdlT3ZlcmxheS5oCmluZGV4IGFkNzBlYzNlMDE2N2Y0MjIzZGQzZTE3YzBj
ZmY3ZWE2NmM1NzkwYTguLjFjN2ZkMTAzZWMxZmY5ZmZiMDc1NWVlMzEyYzZkMDNjYWYwMjM1YWQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJ
L2MvV0tCdW5kbGVQYWdlT3ZlcmxheS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlT3ZlcmxheS5oCkBAIC00OCw2ICs0OCw3
IEBAIHR5cGVkZWYgYm9vbCAoKldLQnVuZGxlUGFnZU92ZXJsYXlNb3VzZURvd25DYWxsYmFjayko
V0tCdW5kbGVQYWdlT3ZlcmxheVJlZiBwYWdlCiB0eXBlZGVmIGJvb2wgKCpXS0J1bmRsZVBhZ2VP
dmVybGF5TW91c2VVcENhbGxiYWNrKShXS0J1bmRsZVBhZ2VPdmVybGF5UmVmIHBhZ2VPdmVybGF5
LCBXS1BvaW50IHBvc2l0aW9uLCBXS0V2ZW50TW91c2VCdXR0b24gbW91c2VCdXR0b24sIGNvbnN0
IHZvaWQqIGNsaWVudEluZm8pOwogdHlwZWRlZiBib29sICgqV0tCdW5kbGVQYWdlT3ZlcmxheU1v
dXNlTW92ZWRDYWxsYmFjaykoV0tCdW5kbGVQYWdlT3ZlcmxheVJlZiBwYWdlT3ZlcmxheSwgV0tQ
b2ludCBwb3NpdGlvbiwgY29uc3Qgdm9pZCogY2xpZW50SW5mbyk7CiB0eXBlZGVmIGJvb2wgKCpX
S0J1bmRsZVBhZ2VPdmVybGF5TW91c2VEcmFnZ2VkQ2FsbGJhY2spKFdLQnVuZGxlUGFnZU92ZXJs
YXlSZWYgcGFnZU92ZXJsYXksIFdLUG9pbnQgcG9zaXRpb24sIFdLRXZlbnRNb3VzZUJ1dHRvbiBt
b3VzZUJ1dHRvbiwgY29uc3Qgdm9pZCogY2xpZW50SW5mbyk7Cit0eXBlZGVmIGJvb2wgKCpXS0J1
bmRsZVBhZ2VPdmVybGF5UHJlcGFyZUZvckFjdGlvbk1lbnVDYWxsYmFjaykoV0tCdW5kbGVQYWdl
T3ZlcmxheVJlZiBwYWdlT3ZlcmxheSwgV0tUeXBlUmVmKiB1c2VyRGF0YSwgY29uc3Qgdm9pZCog
Y2xpZW50SW5mbyk7CiAKIHR5cGVkZWYgc3RydWN0IFdLQnVuZGxlUGFnZU92ZXJsYXlDbGllbnRC
YXNlIHsKICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb247CkBAIC01Nyw3ICs1OCw2IEBAIHR5cGVkZWYg
c3RydWN0IFdLQnVuZGxlUGFnZU92ZXJsYXlDbGllbnRCYXNlIHsKIHR5cGVkZWYgc3RydWN0IFdL
QnVuZGxlUGFnZU92ZXJsYXlDbGllbnRWMCB7CiAgICAgV0tCdW5kbGVQYWdlT3ZlcmxheUNsaWVu
dEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlOwogCi0gICAg
Ly8gVmVyc2lvbiAwLgogICAgIFdLQnVuZGxlUGFnZU92ZXJsYXlXaWxsTW92ZVRvUGFnZUNhbGxi
YWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lsbE1vdmVUb1BhZ2U7CiAgICAgV0tCdW5k
bGVQYWdlT3ZlcmxheURpZE1vdmVUb1BhZ2VDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBkaWRNb3ZlVG9QYWdlOwogICAgIFdLQnVuZGxlUGFnZU92ZXJsYXlEcmF3UmVjdENhbGxi
YWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJhd1JlY3Q7CkBAIC02NywxMiAr
NjcsMjUgQEAgdHlwZWRlZiBzdHJ1Y3QgV0tCdW5kbGVQYWdlT3ZlcmxheUNsaWVudFYwIHsKICAg
ICBXS0J1bmRsZVBhZ2VPdmVybGF5TW91c2VEcmFnZ2VkQ2FsbGJhY2sgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIG1vdXNlRHJhZ2dlZDsKIH0gV0tCdW5kbGVQYWdlT3ZlcmxheUNsaWVudFYw
OwogCit0eXBlZGVmIHN0cnVjdCBXS0J1bmRsZVBhZ2VPdmVybGF5Q2xpZW50VjEgeworICAgIFdL
QnVuZGxlUGFnZU92ZXJsYXlDbGllbnRCYXNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYmFzZTsKKworICAgIFdLQnVuZGxlUGFnZU92ZXJsYXlXaWxsTW92ZVRvUGFnZUNh
bGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lsbE1vdmVUb1BhZ2U7CisgICAgV0tC
dW5kbGVQYWdlT3ZlcmxheURpZE1vdmVUb1BhZ2VDYWxsYmFjayAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBkaWRNb3ZlVG9QYWdlOworICAgIFdLQnVuZGxlUGFnZU92ZXJsYXlEcmF3UmVjdENh
bGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJhd1JlY3Q7CisgICAgV0tC
dW5kbGVQYWdlT3ZlcmxheU1vdXNlRG93bkNhbGxiYWNrICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBtb3VzZURvd247CisgICAgV0tCdW5kbGVQYWdlT3ZlcmxheU1vdXNlVXBDYWxsYmFj
ayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb3VzZVVwOworICAgIFdLQnVuZGxl
UGFnZU92ZXJsYXlNb3VzZU1vdmVkQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgbW91c2VNb3ZlZDsKKyAgICBXS0J1bmRsZVBhZ2VPdmVybGF5TW91c2VEcmFnZ2VkQ2FsbGJh
Y2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vdXNlRHJhZ2dlZDsKKworICAgIFdLQnVu
ZGxlUGFnZU92ZXJsYXlQcmVwYXJlRm9yQWN0aW9uTWVudUNhbGxiYWNrICAgICAgICAgICAgICAg
ICAgICAgcHJlcGFyZUZvckFjdGlvbk1lbnU7Cit9IFdLQnVuZGxlUGFnZU92ZXJsYXlDbGllbnRW
MTsKKwogZW51bSB7IGtXS0J1bmRsZVBhZ2VPdmVybGF5Q2xpZW50Q3VycmVudFZlcnNpb24gV0tf
RU5VTV9ERVBSRUNBVEVEKCJVc2UgYW4gZXhwbGljaXQgdmVyc2lvbiBudW1iZXIgaW5zdGVhZCIp
ID0gMCB9OwogdHlwZWRlZiBzdHJ1Y3QgV0tCdW5kbGVQYWdlT3ZlcmxheUNsaWVudCB7CiAgICAg
aW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB2ZXJzaW9uOwogICAgIGNvbnN0IHZvaWQgKiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpZW50SW5mbzsKIAotICAgIC8v
IFZlcnNpb24gMC4KICAgICBXS0J1bmRsZVBhZ2VPdmVybGF5V2lsbE1vdmVUb1BhZ2VDYWxsYmFj
ayAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbGxNb3ZlVG9QYWdlOwogICAgIFdLQnVuZGxl
UGFnZU92ZXJsYXlEaWRNb3ZlVG9QYWdlQ2FsbGJhY2sgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZGlkTW92ZVRvUGFnZTsKICAgICBXS0J1bmRsZVBhZ2VPdmVybGF5RHJhd1JlY3RDYWxsYmFj
ayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRyYXdSZWN0OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2VPdmVybGF5LmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlT3ZlcmxheS5jcHAKaW5kZXgg
MWQyZTNkNWQ1NDI2MDI1ZmQ0MmU3YTBlZGQ4YjMyMGJiNjYxNDhiMy4uZjg3OGI2Mjc0YzlmYjRi
M2YwMTMxYTk0ZWVhZjY0NmU4MjAxN2FmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2VPdmVybGF5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZU92ZXJsYXkuY3BwCkBAIC0zMCwxMSArMzAsMTggQEAK
ICNpbmNsdWRlICJXZWJQYWdlLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9HcmFwaGljc0xheWVyLmg+
CiAjaW5jbHVkZSA8V2ViQ29yZS9QYWdlT3ZlcmxheS5oPgorI2luY2x1ZGUgPHd0Zi9OZXZlckRl
c3Ryb3llZC5oPgogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNwYWNlIFdlYktp
dCB7CiAKK3N0YXRpYyBIYXNoTWFwPFBhZ2VPdmVybGF5KiwgV2ViUGFnZU92ZXJsYXkqPiYgY29y
ZU92ZXJsYXlNYXAoKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxIYXNoTWFwPFBhZ2VP
dmVybGF5KiwgV2ViUGFnZU92ZXJsYXkqPj4gbWFwOworICAgIHJldHVybiBtYXA7Cit9CisKIFBh
c3NSZWZQdHI8V2ViUGFnZU92ZXJsYXk+IFdlYlBhZ2VPdmVybGF5OjpjcmVhdGUoV2ViUGFnZU92
ZXJsYXk6OkNsaWVudCYgY2xpZW50LCBQYWdlT3ZlcmxheTo6T3ZlcmxheVR5cGUgb3ZlcmxheVR5
cGUpCiB7CiAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJQYWdlT3ZlcmxheShjbGllbnQsIG92
ZXJsYXlUeXBlKSk7CkBAIC00NCwxMCArNTEsMjEgQEAgV2ViUGFnZU92ZXJsYXk6OldlYlBhZ2VP
dmVybGF5KFdlYlBhZ2VPdmVybGF5OjpDbGllbnQmIGNsaWVudCwgUGFnZU92ZXJsYXk6Ok92ZXIK
ICAgICA6IG1fb3ZlcmxheShQYWdlT3ZlcmxheTo6Y3JlYXRlKCp0aGlzLCBvdmVybGF5VHlwZSkp
CiAgICAgLCBtX2NsaWVudChjbGllbnQpCiB7CisgICAgY29yZU92ZXJsYXlNYXAoKS5hZGQobV9v
dmVybGF5LmdldCgpLCB0aGlzKTsKIH0KIAogV2ViUGFnZU92ZXJsYXk6On5XZWJQYWdlT3Zlcmxh
eSgpCiB7CisgICAgaWYgKCFtX292ZXJsYXkpCisgICAgICAgIHJldHVybjsKKworICAgIGNvcmVP
dmVybGF5TWFwKCkucmVtb3ZlKG1fb3ZlcmxheS5nZXQoKSk7CisgICAgbV9vdmVybGF5ID0gbnVs
bHB0cjsKK30KKworV2ViUGFnZU92ZXJsYXkqIFdlYlBhZ2VPdmVybGF5Ojpmcm9tQ29yZU92ZXJs
YXkoUGFnZU92ZXJsYXkmIG92ZXJsYXkpCit7CisgICAgcmV0dXJuIGNvcmVPdmVybGF5TWFwKCku
Z2V0KCZvdmVybGF5KTsKIH0KIAogdm9pZCBXZWJQYWdlT3ZlcmxheTo6c2V0TmVlZHNEaXNwbGF5
KGNvbnN0IEludFJlY3QmIGRpcnR5UmVjdCkKQEAgLTY3LDYgKzg1LDExIEBAIHZvaWQgV2ViUGFn
ZU92ZXJsYXk6OmNsZWFyKCkKIAogdm9pZCBXZWJQYWdlT3ZlcmxheTo6cGFnZU92ZXJsYXlEZXN0
cm95ZWQoUGFnZU92ZXJsYXkmKQogeworICAgIGlmIChtX292ZXJsYXkpIHsKKyAgICAgICAgY29y
ZU92ZXJsYXlNYXAoKS5yZW1vdmUobV9vdmVybGF5LmdldCgpKTsKKyAgICAgICAgbV9vdmVybGF5
ID0gbnVsbHB0cjsKKyAgICB9CisKICAgICBtX2NsaWVudC5wYWdlT3ZlcmxheURlc3Ryb3llZCgq
dGhpcyk7CiB9CiAKQEAgLTk1LDYgKzExOCwxMSBAQCB2b2lkIFdlYlBhZ2VPdmVybGF5OjpkaWRT
Y3JvbGxGcmFtZShQYWdlT3ZlcmxheSYsIEZyYW1lJiBmcmFtZSkKICAgICBtX2NsaWVudC5kaWRT
Y3JvbGxGcmFtZSgqdGhpcywgV2ViRnJhbWU6OmZyb21Db3JlRnJhbWUoZnJhbWUpKTsKIH0KIAor
Ym9vbCBXZWJQYWdlT3ZlcmxheTo6cHJlcGFyZUZvckFjdGlvbk1lbnUoUmVmUHRyPEFQSTo6T2Jq
ZWN0PiYgdXNlckRhdGEpCit7CisgICAgcmV0dXJuIG1fY2xpZW50LnByZXBhcmVGb3JBY3Rpb25N
ZW51KCp0aGlzLCB1c2VyRGF0YSk7Cit9CisKIGJvb2wgV2ViUGFnZU92ZXJsYXk6OmNvcHlBY2Nl
c3NpYmlsaXR5QXR0cmlidXRlU3RyaW5nVmFsdWVGb3JQb2ludChQYWdlT3ZlcmxheSYsIFN0cmlu
ZyBhdHRyaWJ1dGUsIEZsb2F0UG9pbnQgcGFyYW1ldGVyLCBTdHJpbmcmIHZhbHVlKQogewogICAg
IHJldHVybiBtX2NsaWVudC5jb3B5QWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVN0cmluZ1ZhbHVlRm9y
UG9pbnQoKnRoaXMsIGF0dHJpYnV0ZSwgcGFyYW1ldGVyLCB2YWx1ZSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZU92ZXJsYXkuaCBiL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlT3ZlcmxheS5oCmluZGV4IDIxMTQ2
YjIyNDI2N2ZkNTdkMjBhYWIwMDc5NmE4Mjg4ODdhODViOTkuLmU3NjgxYmYxMDRjMjZmY2VkMzdm
NDZiOWY5N2I4ZTI1MjMxZjk2YmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlT3ZlcmxheS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlT3ZlcmxheS5oCkBAIC01MCw2ICs1MCw3IEBAIHB1YmxpYzoKICAg
ICAgICAgdmlydHVhbCB2b2lkIGRyYXdSZWN0KFdlYlBhZ2VPdmVybGF5JiwgV2ViQ29yZTo6R3Jh
cGhpY3NDb250ZXh0JiwgY29uc3QgV2ViQ29yZTo6SW50UmVjdCYgZGlydHlSZWN0KSA9IDA7CiAg
ICAgICAgIHZpcnR1YWwgYm9vbCBtb3VzZUV2ZW50KFdlYlBhZ2VPdmVybGF5JiwgY29uc3QgV2Vi
Q29yZTo6UGxhdGZvcm1Nb3VzZUV2ZW50JikgPSAwOwogICAgICAgICB2aXJ0dWFsIHZvaWQgZGlk
U2Nyb2xsRnJhbWUoV2ViUGFnZU92ZXJsYXkmLCBXZWJGcmFtZSopIHsgfQorICAgICAgICB2aXJ0
dWFsIGJvb2wgcHJlcGFyZUZvckFjdGlvbk1lbnUoV2ViUGFnZU92ZXJsYXkmLCBSZWZQdHI8QVBJ
OjpPYmplY3Q+JiB1c2VyRGF0YSkgeyByZXR1cm4gZmFsc2U7IH0KIAogICAgICAgICB2aXJ0dWFs
IGJvb2wgY29weUFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVTdHJpbmdWYWx1ZUZvclBvaW50KFdlYlBh
Z2VPdmVybGF5JiwgU3RyaW5nIC8qIGF0dHJpYnV0ZSAqLywgV2ViQ29yZTo6RmxvYXRQb2ludCAv
KiBwYXJhbWV0ZXIgKi8sIFN0cmluZyYgLyogdmFsdWUgKi8pIHsgcmV0dXJuIGZhbHNlOyB9CiAg
ICAgICAgIHZpcnR1YWwgYm9vbCBjb3B5QWNjZXNzaWJpbGl0eUF0dHJpYnV0ZUJvb2xWYWx1ZUZv
clBvaW50KFdlYlBhZ2VPdmVybGF5JiwgU3RyaW5nIC8qIGF0dHJpYnV0ZSAqLywgV2ViQ29yZTo6
RmxvYXRQb2ludCAvKiBwYXJhbWV0ZXIgKi8sIGJvb2wmIC8qIHZhbHVlICovKSB7IHJldHVybiBm
YWxzZTsgfQpAQCAtNTcsNiArNTgsNyBAQCBwdWJsaWM6CiAgICAgfTsKIAogICAgIHN0YXRpYyBQ
YXNzUmVmUHRyPFdlYlBhZ2VPdmVybGF5PiBjcmVhdGUoQ2xpZW50JiwgV2ViQ29yZTo6UGFnZU92
ZXJsYXk6Ok92ZXJsYXlUeXBlID0gV2ViQ29yZTo6UGFnZU92ZXJsYXk6Ok92ZXJsYXlUeXBlOjpW
aWV3KTsKKyAgICBzdGF0aWMgV2ViUGFnZU92ZXJsYXkqIGZyb21Db3JlT3ZlcmxheShXZWJDb3Jl
OjpQYWdlT3ZlcmxheSYpOwogICAgIHZpcnR1YWwgfldlYlBhZ2VPdmVybGF5KCk7CiAKICAgICB2
b2lkIHNldE5lZWRzRGlzcGxheShjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBkaXJ0eVJlY3QpOwpA
QCAtNjcsNiArNjksOCBAQCBwdWJsaWM6CiAgICAgV2ViQ29yZTo6UGFnZU92ZXJsYXkqIGNvcmVP
dmVybGF5KCkgY29uc3QgeyByZXR1cm4gbV9vdmVybGF5LmdldCgpOyB9CiAgICAgQ2xpZW50JiBj
bGllbnQoKSBjb25zdCB7IHJldHVybiBtX2NsaWVudDsgfQogCisgICAgYm9vbCBwcmVwYXJlRm9y
QWN0aW9uTWVudShSZWZQdHI8QVBJOjpPYmplY3Q+JiB1c2VyRGF0YSk7CisKIHByaXZhdGU6CiAg
ICAgV2ViUGFnZU92ZXJsYXkoQ2xpZW50JiwgV2ViQ29yZTo6UGFnZU92ZXJsYXk6Ok92ZXJsYXlU
eXBlKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21h
Yy9XZWJQYWdlTWFjLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9X
ZWJQYWdlTWFjLm1tCmluZGV4IDVkOWI3YjAyYjFlMzFmNmY5YjRiNWVkMDQwYTc4YTEwMTg5YThk
OWYuLjVhOTVjMGE5ZjJlNjU4YWNlYjliZWQyYmFhYTQ5ODQ2ZjQ4MzljOGMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VNYWMubW0KQEAg
LTQ3LDYgKzQ3LDcgQEAKICNpbXBvcnQgIldlYkZyYW1lLmgiCiAjaW1wb3J0ICJXZWJJbWFnZS5o
IgogI2ltcG9ydCAiV2ViSW5zcGVjdG9yLmgiCisjaW1wb3J0ICJXZWJQYWdlT3ZlcmxheS5oIgog
I2ltcG9ydCAiV2ViUGFnZVByb3h5TWVzc2FnZXMuaCIKICNpbXBvcnQgIldlYlBhc3RlYm9hcmRP
dmVycmlkZXMuaCIKICNpbXBvcnQgIldlYlByZWZlcmVuY2VzU3RvcmUuaCIKQEAgLTY4LDYgKzY5
LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvTWFpbkZyYW1lLmg+CiAjaW1wb3J0IDxXZWJDb3JlL05l
dHdvcmtpbmdDb250ZXh0Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1BhZ2UuaD4KKyNpbXBvcnQgPFdl
YkNvcmUvUGFnZU92ZXJsYXlDb250cm9sbGVyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1BsYXRmb3Jt
S2V5Ym9hcmRFdmVudC5oPgogI2ltcG9ydCA8V2ViQ29yZS9QbHVnaW5Eb2N1bWVudC5oPgogI2lt
cG9ydCA8V2ViQ29yZS9SZW5kZXJFbGVtZW50Lmg+CkBAIC0xMTk4LDggKzEyMDAsMjIgQEAgdm9p
ZCBXZWJQYWdlOjpwZXJmb3JtQWN0aW9uTWVudUhpdFRlc3RBdExvY2F0aW9uKFdlYkNvcmU6OkZs
b2F0UG9pbnQgbG9jYXRpb25JblYKICAgICB9CiAKICAgICBSZWZQdHI8QVBJOjpPYmplY3Q+IHVz
ZXJEYXRhOwotICAgIFJlZlB0cjxJbmplY3RlZEJ1bmRsZUhpdFRlc3RSZXN1bHQ+IGluamVjdGVk
QnVuZGxlSGl0VGVzdFJlc3VsdCA9IEluamVjdGVkQnVuZGxlSGl0VGVzdFJlc3VsdDo6Y3JlYXRl
KGhpdFRlc3RSZXN1bHQpOwotICAgIGluamVjdGVkQnVuZGxlQ29udGV4dE1lbnVDbGllbnQoKS5w
cmVwYXJlRm9yQWN0aW9uTWVudSh0aGlzLCBpbmplY3RlZEJ1bmRsZUhpdFRlc3RSZXN1bHQuZ2V0
KCksIHVzZXJEYXRhKTsKKworICAgIGJvb2wgaGFuZGxlZCA9IGZhbHNlOworICAgIGZvciAoYXV0
byYgb3ZlcmxheSA6IG1haW5GcmFtZS5wYWdlT3ZlcmxheUNvbnRyb2xsZXIoKS5wYWdlT3Zlcmxh
eXMoKSkgeworICAgICAgICBXZWJQYWdlT3ZlcmxheSogd2ViT3ZlcmxheSA9IFdlYlBhZ2VPdmVy
bGF5Ojpmcm9tQ29yZU92ZXJsYXkoKm92ZXJsYXkpOworICAgICAgICBpZiAoIXdlYk92ZXJsYXkp
CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgaWYgKHdlYk92ZXJsYXktPnByZXBhcmVG
b3JBY3Rpb25NZW51KHVzZXJEYXRhKSkgeworICAgICAgICAgICAgaGFuZGxlZCA9IHRydWU7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgIH0KKworICAgIGlmICghaGFuZGxlZCkg
eworICAgICAgICBSZWZQdHI8SW5qZWN0ZWRCdW5kbGVIaXRUZXN0UmVzdWx0PiBpbmplY3RlZEJ1
bmRsZUhpdFRlc3RSZXN1bHQgPSBJbmplY3RlZEJ1bmRsZUhpdFRlc3RSZXN1bHQ6OmNyZWF0ZSho
aXRUZXN0UmVzdWx0KTsKKyAgICAgICAgaW5qZWN0ZWRCdW5kbGVDb250ZXh0TWVudUNsaWVudCgp
LnByZXBhcmVGb3JBY3Rpb25NZW51KHRoaXMsIGluamVjdGVkQnVuZGxlSGl0VGVzdFJlc3VsdC5n
ZXQoKSwgdXNlckRhdGEpOworICAgIH0KIAogICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94
eTo6RGlkUGVyZm9ybUFjdGlvbk1lbnVIaXRUZXN0KGFjdGlvbk1lbnVSZXN1bHQsIEluamVjdGVk
QnVuZGxlVXNlck1lc3NhZ2VFbmNvZGVyKHVzZXJEYXRhLmdldCgpKSkpOwogfQo=
</data>
<flag name="review"
          id="265782"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>