<?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>60629</bug_id>
          
          <creation_ts>2011-05-11 08:22:10 -0700</creation_ts>
          <short_desc>Implement plugin process for UNIX platform</short_desc>
          <delta_ts>2011-08-25 01:16:28 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk, Qt, QtTriaged</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>57617</blocked>
    
    <blocked>58223</blocked>
    
    <blocked>60546</blocked>
    
    <blocked>60621</blocked>
    
    <blocked>61065</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andersca</cc>
    
    <cc>benjamin</cc>
    
    <cc>eric</cc>
    
    <cc>kbalazs</cc>
    
    <cc>sam</cc>
    
    <cc>sangseok.lim</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>401981</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-05-11 08:22:10 -0700</bug_when>
    <thetext>Patch attached to bug #57617 contains some parts needed to implement the plugin process that are common to unix platforms.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>401985</commentid>
    <comment_count>1</comment_count>
      <attachid>93120</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-05-11 08:27:57 -0700</bug_when>
    <thetext>Created attachment 93120
Patch

This patch contains the common parts needed to implement the plugin process for unix. It&apos;s mostly the same patch written by Balazs Kelemen in bug #57617.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>403431</commentid>
    <comment_count>2</comment_count>
      <attachid>93415</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-05-13 01:03:25 -0700</bug_when>
    <thetext>Created attachment 93415
Updated patch

Remove assertions that check that the Handle is not null. In PluginProxy::geometryDidChange we pass a null Handle if we do not need to allocate a new backing store.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>403556</commentid>
    <comment_count>3</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2011-05-13 08:15:42 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Created an attachment (id=93415) [details]
&gt; Updated patch
&gt; 
&gt; Remove assertions that check that the Handle is not null. In PluginProxy::geometryDidChange we pass a null Handle if we do not need to allocate a new backing store.

It&apos;s in conflict with your comment there: https://bugs.webkit.org/show_bug.cgi?id=57617#c19. Is the patch obsolete now?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>404320</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-05-15 23:56:07 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; Created an attachment (id=93415) [details] [details]
&gt; &gt; Updated patch
&gt; &gt; 
&gt; &gt; Remove assertions that check that the Handle is not null. In PluginProxy::geometryDidChange we pass a null Handle if we do not need to allocate a new backing store.
&gt; 
&gt; It&apos;s in conflict with your comment there: https://bugs.webkit.org/show_bug.cgi?id=57617#c19. Is the patch obsolete now?

Yes, see bug https://bugs.webkit.org/show_bug.cgi?id=60621</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>404424</commentid>
    <comment_count>5</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-05-16 05:33:53 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #3)
&gt; &gt; (In reply to comment #2)
&gt; &gt; &gt; Created an attachment (id=93415) [details] [details] [details]
&gt; &gt; &gt; Updated patch
&gt; &gt; &gt; 
&gt; &gt; &gt; Remove assertions that check that the Handle is not null. In PluginProxy::geometryDidChange we pass a null Handle if we do not need to allocate a new backing store.
&gt; &gt; 
&gt; &gt; It&apos;s in conflict with your comment there: https://bugs.webkit.org/show_bug.cgi?id=57617#c19. Is the patch obsolete now?
&gt; 
&gt; Yes, see bug https://bugs.webkit.org/show_bug.cgi?id=60621

Just to clarify, I didn&apos;t answer your question, sorry, the changelog text is in conflict with my comment, but the patch is not obsolete, patch attached to bug #60621 allows to send null handles.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>415796</commentid>
    <comment_count>6</comment_count>
      <attachid>96081</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-06-06 05:53:40 -0700</bug_when>
    <thetext>Created attachment 96081
Updated patch

Since r88147 the GTK port uses STREAM sockets, so I&apos;ve updated the patch to use STREAM sockets in the plugin process too for the GTK port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>415846</commentid>
    <comment_count>7</comment_count>
      <attachid>96081</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2011-06-06 08:20:54 -0700</bug_when>
    <thetext>Comment on attachment 96081
Updated patch

Attachment 96081 did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/8766865</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>437095</commentid>
    <comment_count>8</comment_count>
      <attachid>96081</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2011-07-14 08:18:58 -0700</bug_when>
    <thetext>Comment on attachment 96081
Updated patch

Ideally I&apos;d like to see a generic, cross-platform way to send a connection endpoint over another connection. However, this is fine for now!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>437189</commentid>
    <comment_count>9</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2011-07-14 10:44:47 -0700</bug_when>
    <thetext>Committed r91013: &lt;http://trac.webkit.org/changeset/91013&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>456702</commentid>
    <comment_count>10</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2011-08-25 01:16:28 -0700</bug_when>
    <thetext>*** Bug 57617 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>93120</attachid>
            <date>2011-05-11 08:27:57 -0700</date>
            <delta_ts>2011-05-13 01:03:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-plugin-process-unix.diff</filename>
            <type>text/plain</type>
            <size>11724</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA3NWYxOGMwLi5lNzAxYjQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcg
QEAKKzIwMTEtMDUtMTEgIEJhbGF6cyBLZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPiBhbmQg
Q2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50IHBsdWdpbiBwcm9j
ZXNzIGZvciBVTklYIHBsYXRmb3JtCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02MDYyOQorCisgICAgICAgICogUGxhdGZvcm0vQ29yZUlQQy9BdHRhY2ht
ZW50Lmg6CisgICAgICAgICogUGxhdGZvcm0vQ29yZUlQQy91bml4L0F0dGFjaG1lbnRVbml4LmNw
cDoKKyAgICAgICAgKENvcmVJUEM6OkF0dGFjaG1lbnQ6OkF0dGFjaG1lbnQpOiBBZGQgdGhlIGFi
aWxpdHkgdG8gcGFzcyBhCisgICAgICAgIHNvY2tldCB2aWEgQXR0YWNobWVudC4KKyAgICAgICAg
KiBQbHVnaW5Qcm9jZXNzL1BsdWdpblByb2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpQbHVn
aW5Qcm9jZXNzOjpjcmVhdGVXZWJQcm9jZXNzQ29ubmVjdGlvbik6ICBVc2UKKyAgICAgICAgQXR0
YWNobWVudC4gU2V0IHVwIHRoZSBjb25uZWN0aW9uIHdpdGggc29ja2V0cGFpci4KKyAgICAgICAg
KiBVSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpQbHVnaW5Qcm9jZXNzUHJveHk6OnBsdWdpblByb2Nlc3NDcmFzaGVkT3JGYWlsZWRUb0xh
dW5jaCk6CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nlc3NQcm94eTo6ZGlkQ3JlYXRlV2Vi
UHJvY2Vzc0Nvbm5lY3Rpb24pOgorICAgICAgICAqIFVJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblBy
b2Nlc3NQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQ
cm94eS5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5Lm1l
c3NhZ2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzQ29u
bmVjdGlvbk1hbmFnZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpQbHVnaW5Qcm9jZXNzQ29ubmVj
dGlvbk1hbmFnZXI6OmdldFBsdWdpblByb2Nlc3NDb25uZWN0aW9uKToKKyAgICAgICAgVXNlIEF0
dGFjaG1lbnQgdG8gcGFzcyB0aGUgY29ubmVjdGlvbi4KKwogMjAxMS0wNS0xMCAgT2xpdmVyIEh1
bnQgIDxvbGl2ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEdlb2ZmcmV5IEdh
cmVuLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vQ29yZUlQQy9BdHRhY2ht
ZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9Db3JlSVBDL0F0dGFjaG1lbnQuaAppbmRl
eCA4MDYwYzY0Li4yZmY2NjlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9D
b3JlSVBDL0F0dGFjaG1lbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9Db3JlSVBD
L0F0dGFjaG1lbnQuaApAQCAtNDEsNyArNDEsOCBAQCBwdWJsaWM6CiAgICAgICAgIE1hY2hQb3J0
VHlwZSwKICAgICAgICAgTWFjaE9PTE1lbW9yeVR5cGUsCiAjZWxpZiBVU0UoVU5JWF9ET01BSU5f
U09DS0VUUykKLSAgICAgICAgTWFwcGVkTWVtb3J5CisgICAgICAgIFNvY2tldFR5cGUsCisgICAg
ICAgIE1hcHBlZE1lbW9yeVR5cGUKICNlbmRpZgogICAgIH07CiAKQEAgLTUwLDYgKzUxLDcgQEAg
cHVibGljOgogICAgIEF0dGFjaG1lbnQodm9pZCogYWRkcmVzcywgbWFjaF9tc2dfc2l6ZV90IHNp
emUsIG1hY2hfbXNnX2NvcHlfb3B0aW9uc190IGNvcHlPcHRpb25zLCBib29sIGRlYWxsb2NhdGUp
OwogI2VsaWYgVVNFKFVOSVhfRE9NQUlOX1NPQ0tFVFMpCiAgICAgQXR0YWNobWVudChpbnQgZmls
ZURlc2NyaXB0b3IsIHNpemVfdCk7CisgICAgQXR0YWNobWVudChpbnQgZmlsZURlc2NyaXB0b3Ip
OwogI2VuZGlmCiAKICAgICBUeXBlIHR5cGUoKSBjb25zdCB7IHJldHVybiBtX3R5cGU7IH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0NvcmVJUEMvdW5peC9BdHRhY2htZW50
VW5peC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9Db3JlSVBDL3VuaXgvQXR0YWNobWVu
dFVuaXguY3BwCmluZGV4IDJkODQyZGEuLjllZjEyNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1BsYXRmb3JtL0NvcmVJUEMvdW5peC9BdHRhY2htZW50VW5peC5jcHAKKysrIGIvU291cmNl
L1dlYktpdDIvUGxhdGZvcm0vQ29yZUlQQy91bml4L0F0dGFjaG1lbnRVbml4LmNwcApAQCAtMzMs
NyArMzMsNyBAQAogbmFtZXNwYWNlIENvcmVJUEMgewogCiBBdHRhY2htZW50OjpBdHRhY2htZW50
KGludCBmaWxlRGVzY3JpcHRvciwgc2l6ZV90IHNpemUpCi0gICAgOiBtX3R5cGUoTWFwcGVkTWVt
b3J5KQorICAgIDogbV90eXBlKE1hcHBlZE1lbW9yeVR5cGUpCiAgICAgLCBtX2ZpbGVEZXNjcmlw
dG9yKGZpbGVEZXNjcmlwdG9yKQogICAgICwgbV9zaXplKHNpemUpCiB7CkBAIC00MSw2ICs0MSwx
NCBAQCBBdHRhY2htZW50OjpBdHRhY2htZW50KGludCBmaWxlRGVzY3JpcHRvciwgc2l6ZV90IHNp
emUpCiAgICAgQVNTRVJUKG1fc2l6ZSk7CiB9CiAKK0F0dGFjaG1lbnQ6OkF0dGFjaG1lbnQoaW50
IGZpbGVEZXNjcmlwdG9yKQorICAgIDogbV90eXBlKFNvY2tldFR5cGUpCisgICAgLCBtX2ZpbGVE
ZXNjcmlwdG9yKGZpbGVEZXNjcmlwdG9yKQorICAgICwgbV9zaXplKDApCit7CisgICAgQVNTRVJU
KG1fZmlsZURlc2NyaXB0b3IpOworfQorCiB2b2lkIEF0dGFjaG1lbnQ6OmRpc3Bvc2UoKQogewog
ICAgIGlmIChtX2ZpbGVEZXNjcmlwdG9yICE9IC0xKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvUGx1Z2luUHJvY2Vzcy9QbHVnaW5Qcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1BsdWdp
blByb2Nlc3MvUGx1Z2luUHJvY2Vzcy5jcHAKaW5kZXggMzA1MDRhMi4uZjE5ZjAyMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9QbHVnaW5Qcm9jZXNzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL1BsdWdpblByb2Nlc3MuY3BwCkBAIC0yOSwx
MyArMjksMTggQEAKICNpZiBFTkFCTEUoUExVR0lOX1BST0NFU1MpCiAKICNpbmNsdWRlICJBcmd1
bWVudENvZGVycy5oIgorI2luY2x1ZGUgIkF0dGFjaG1lbnQuaCIKICNpbmNsdWRlICJOZXRzY2Fw
ZVBsdWdpbk1vZHVsZS5oIgogI2luY2x1ZGUgIlBsdWdpblByb2Nlc3NQcm94eU1lc3NhZ2VzLmgi
CiAjaW5jbHVkZSAiUGx1Z2luUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oIgogI2luY2x1ZGUg
IldlYlByb2Nlc3NDb25uZWN0aW9uLmgiCiAKLSNpZiBQTEFURk9STShNQUMpCi0jaW5jbHVkZSAi
TWFjaFBvcnQuaCIKKyNpZiBVU0UoVU5JWF9ET01BSU5fU09DS0VUUykKKyNpbmNsdWRlIDxlcnJu
by5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8c3lzL3Jlc291cmNlLmg+CisjaW5j
bHVkZSA8c3lzL3NvY2tldC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgogI2VuZGlmCiAKIG5hbWVz
cGFjZSBXZWJLaXQgewpAQCAtMTUwLDExICsxNTUsNDIgQEAgdm9pZCBQbHVnaW5Qcm9jZXNzOjpj
cmVhdGVXZWJQcm9jZXNzQ29ubmVjdGlvbigpCiAgICAgUmVmUHRyPFdlYlByb2Nlc3NDb25uZWN0
aW9uPiBjb25uZWN0aW9uID0gV2ViUHJvY2Vzc0Nvbm5lY3Rpb246OmNyZWF0ZShsaXN0ZW5pbmdQ
b3J0KTsKICAgICBtX3dlYlByb2Nlc3NDb25uZWN0aW9ucy5hcHBlbmQoY29ubmVjdGlvbi5yZWxl
YXNlKCkpOwogCi0gICAgQ29yZUlQQzo6TWFjaFBvcnQgY2xpZW50UG9ydChsaXN0ZW5pbmdQb3J0
LCBNQUNIX01TR19UWVBFX01BS0VfU0VORCk7CisgICAgQ29yZUlQQzo6QXR0YWNobWVudCBjbGll
bnRQb3J0KGxpc3RlbmluZ1BvcnQsIE1BQ0hfTVNHX1RZUEVfTUFLRV9TRU5EKTsKICAgICBtX2Nv
bm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6OlBsdWdpblByb2Nlc3NQcm94eTo6RGlkQ3JlYXRlV2Vi
UHJvY2Vzc0Nvbm5lY3Rpb24oY2xpZW50UG9ydCksIDApOworI2VsaWYgVVNFKFVOSVhfRE9NQUlO
X1NPQ0tFVFMpCisgICAgaW50IHNvY2tldHNbMl07CisgICAgaWYgKHNvY2tldHBhaXIoQUZfVU5J
WCwgU09DS19ER1JBTSwgMCwgc29ja2V0cykgPT0gLTEpIHsKKyAgICAgICAgQVNTRVJUX05PVF9S
RUFDSEVEKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICAvLyBEb24ndCBleHBvc2Ug
dGhlIHBsdWdpbiBwcm9jZXNzIHNvY2tldCB0byB0aGUgd2ViIHByb2Nlc3MuCisgICAgd2hpbGUg
KGZjbnRsKHNvY2tldHNbMV0sIEZfU0VURkQsIEZEX0NMT0VYRUMpICA9PSAtMSkgeworICAgICAg
ICBpZiAoZXJybm8gIT0gRUlOVFIpIHsKKyAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OworICAgICAgICAgICAgd2hpbGUgKGNsb3NlKHNvY2tldHNbMF0pID09IC0xICYmIGVycm5vID09
IEVJTlRSKSB7IH0KKyAgICAgICAgICAgIHdoaWxlIChjbG9zZShzb2NrZXRzWzFdKSA9PSAtMSAm
JiBlcnJubyA9PSBFSU5UUikgeyB9CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAg
ICB9CisKKyAgICAvLyBEb24ndCBleHBvc2UgdGhlIHdlYiBwcm9jZXNzIHNvY2tldCB0byBwb3Nz
aWJsZSBmdXR1cmUgd2ViIHByb2Nlc3Nlcy4KKyAgICB3aGlsZSAoZmNudGwoc29ja2V0c1swXSwg
Rl9TRVRGRCwgRkRfQ0xPRVhFQykgPT0gLTEpIHsKKyAgICAgICAgaWYgKGVycm5vICE9IEVJTlRS
KSB7CisgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgICAgIHdoaWxl
IChjbG9zZShzb2NrZXRzWzBdKSA9PSAtMSAmJiBlcnJubyA9PSBFSU5UUikgeyB9CisgICAgICAg
ICAgICB3aGlsZSAoY2xvc2Uoc29ja2V0c1sxXSkgPT0gLTEgJiYgZXJybm8gPT0gRUlOVFIpIHsg
fQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgfQorCisgICAgUmVmUHRyPFdl
YlByb2Nlc3NDb25uZWN0aW9uPiBjb25uZWN0aW9uID0gV2ViUHJvY2Vzc0Nvbm5lY3Rpb246OmNy
ZWF0ZShzb2NrZXRzWzFdKTsKKyAgICBtX3dlYlByb2Nlc3NDb25uZWN0aW9ucy5hcHBlbmQoY29u
bmVjdGlvbi5yZWxlYXNlKCkpOworCisgICAgQ29yZUlQQzo6QXR0YWNobWVudCBjbGllbnRTb2Nr
ZXQoc29ja2V0c1swXSk7CisgICAgbV9jb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpQbHVnaW5Q
cm9jZXNzUHJveHk6OkRpZENyZWF0ZVdlYlByb2Nlc3NDb25uZWN0aW9uKGNsaWVudFNvY2tldCks
IDApOwogI2Vsc2UKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50LgotICAgIEFTU0VSVF9OT1RfUkVB
Q0hFRCgpOworICAgIEFTU0VSVF9XSVRIX01FU1NBR0UoMCwgIk1pc3NpbmcgaW1wbGVtZW50YXRv
biBmb3IgUGx1Z2luUHJvY2Vzczo6Y3JlYXRlV2ViUHJvY2Vzc0Nvbm5lY3Rpb24oKSIpOwogI2Vu
ZGlmCiAKICAgICBpZiAoTmV0c2NhcGVQbHVnaW5Nb2R1bGUqIG1vZHVsZSA9IG5ldHNjYXBlUGx1
Z2luTW9kdWxlKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVn
aW5zL1BsdWdpblByb2Nlc3NQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1
Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuY3BwCmluZGV4IDI5NzU1YTEuLmM2Yzk4YWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94
eS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vz
c1Byb3h5LmNwcApAQCAtMzcsNiArMzcsNyBAQAogI2luY2x1ZGUgIldlYlBsdWdpblNpdGVEYXRh
TWFuYWdlci5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3NNZXNzYWdlcy5oIgogI2luY2x1ZGUgIldl
YlByb2Nlc3NQcm94eS5oIgorI2luY2x1ZGUgPFdlYkNvcmUvTm90SW1wbGVtZW50ZWQuaD4KIAog
I2lmIFBMQVRGT1JNKE1BQykKICNpbmNsdWRlICJNYWNoUG9ydC5oIgpAQCAtMTM0LDEwICsxMzUs
MTEgQEAgdm9pZCBQbHVnaW5Qcm9jZXNzUHJveHk6OnBsdWdpblByb2Nlc3NDcmFzaGVkT3JGYWls
ZWRUb0xhdW5jaCgpCiAgICAgICAgIFJlZlB0cjxNZXNzYWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpH
ZXRQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbjo6RGVsYXllZFJlcGx5PiByZXBseSA9IG1fcGVuZGlu
Z0Nvbm5lY3Rpb25SZXBsaWVzLnRha2VGaXJzdCgpOwogCiAjaWYgUExBVEZPUk0oTUFDKQotICAg
ICAgICByZXBseS0+c2VuZChDb3JlSVBDOjpNYWNoUG9ydCgwLCBNQUNIX01TR19UWVBFX01PVkVf
U0VORCkpOworICAgICAgICByZXBseS0+c2VuZChDb3JlSVBDOjpBdHRhY2htZW50KDAsIE1BQ0hf
TVNHX1RZUEVfTU9WRV9TRU5EKSk7CisjZWxpZiBVU0UoVU5JWF9ET01BSU5fU09DS0VUUykKKyAg
ICAgICAgcmVwbHktPnNlbmQoQ29yZUlQQzo6QXR0YWNobWVudCgpKTsKICNlbHNlCi0gICAgICAg
IC8vIEZJWE1FOiBJbXBsZW1lbnQuCi0gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAg
ICAgICBub3RJbXBsZW1lbnRlZCgpOwogI2VuZGlmCiAgICAgfQogCkBAIC0yMjQsMTcgKzIyNiwy
MSBAQCB2b2lkIFBsdWdpblByb2Nlc3NQcm94eTo6ZGlkRmluaXNoTGF1bmNoaW5nKFByb2Nlc3NM
YXVuY2hlciosIENvcmVJUEM6OkNvbm5lY3RpbwogICAgIG1fbnVtUGVuZGluZ0Nvbm5lY3Rpb25S
ZXF1ZXN0cyA9IDA7CiB9CiAKLSNpZiBQTEFURk9STShNQUMpCi12b2lkIFBsdWdpblByb2Nlc3NQ
cm94eTo6ZGlkQ3JlYXRlV2ViUHJvY2Vzc0Nvbm5lY3Rpb24oY29uc3QgQ29yZUlQQzo6TWFjaFBv
cnQmIG1hY2hQb3J0KQordm9pZCBQbHVnaW5Qcm9jZXNzUHJveHk6OmRpZENyZWF0ZVdlYlByb2Nl
c3NDb25uZWN0aW9uKGNvbnN0IENvcmVJUEM6OkF0dGFjaG1lbnQmIGNvbm5lY3Rpb25JZGVudGlm
aWVyKQogewogICAgIEFTU0VSVCghbV9wZW5kaW5nQ29ubmVjdGlvblJlcGxpZXMuaXNFbXB0eSgp
KTsKIAogICAgIC8vIEdyYWIgdGhlIGZpcnN0IHBlbmRpbmcgY29ubmVjdGlvbiByZXBseS4KICAg
ICBSZWZQdHI8TWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6R2V0UGx1Z2luUHJvY2Vzc0Nvbm5l
Y3Rpb246OkRlbGF5ZWRSZXBseT4gcmVwbHkgPSBtX3BlbmRpbmdDb25uZWN0aW9uUmVwbGllcy50
YWtlRmlyc3QoKTsKIAotICAgIHJlcGx5LT5zZW5kKENvcmVJUEM6Ok1hY2hQb3J0KG1hY2hQb3J0
LnBvcnQoKSwgTUFDSF9NU0dfVFlQRV9NT1ZFX1NFTkQpKTsKLX0KKyNpZiBQTEFURk9STShNQUMp
CisgICAgcmVwbHktPnNlbmQoQ29yZUlQQzo6QXR0YWNobWVudChjb25uZWN0aW9uSWRlbnRpZmll
ci5wb3J0KCksIE1BQ0hfTVNHX1RZUEVfTU9WRV9TRU5EKSk7CisjZWxpZiBVU0UoVU5JWF9ET01B
SU5fU09DS0VUUykKKyAgICByZXBseS0+c2VuZChjb25uZWN0aW9uSWRlbnRpZmllcik7CisjZWxz
ZQorICAgIG5vdEltcGxlbWVudGVkKCk7CiAjZW5kaWYKK30KIAogdm9pZCBQbHVnaW5Qcm9jZXNz
UHJveHk6OmRpZEdldFNpdGVzV2l0aERhdGEoY29uc3QgVmVjdG9yPFN0cmluZz4mIHNpdGVzLCB1
aW50NjRfdCBjYWxsYmFja0lEKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuaAppbmRleCBiMGQ4MmNhLi4zNGNhODI0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNz
UHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9j
ZXNzUHJveHkuaApAQCAtOTYsOSArOTYsNyBAQCBwcml2YXRlOgogCiAgICAgLy8gTWVzc2FnZSBo
YW5kbGVycwogICAgIHZvaWQgZGlkUmVjZWl2ZVBsdWdpblByb2Nlc3NQcm94eU1lc3NhZ2UoQ29y
ZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1lc3NhZ2VJRCwgQ29yZUlQQzo6QXJndW1lbnRE
ZWNvZGVyKik7Ci0jaWYgUExBVEZPUk0oTUFDKQotICAgIHZvaWQgZGlkQ3JlYXRlV2ViUHJvY2Vz
c0Nvbm5lY3Rpb24oY29uc3QgQ29yZUlQQzo6TWFjaFBvcnQmKTsKLSNlbmRpZgorICAgIHZvaWQg
ZGlkQ3JlYXRlV2ViUHJvY2Vzc0Nvbm5lY3Rpb24oY29uc3QgQ29yZUlQQzo6QXR0YWNobWVudCYp
OwogICAgIHZvaWQgZGlkR2V0U2l0ZXNXaXRoRGF0YShjb25zdCBWZWN0b3I8U3RyaW5nPiYgc2l0
ZXMsIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwogICAgIHZvaWQgZGlkQ2xlYXJTaXRlRGF0YSh1aW50
NjRfdCBjYWxsYmFja0lEKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluCmluZGV4IDdj
YWFjMTEuLjdiNTlhZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVn
aW5zL1BsdWdpblByb2Nlc3NQcm94eS5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkubWVzc2FnZXMuaW4KQEAgLTIzLDkg
KzIzLDcgQEAKICNpZiBFTkFCTEUoUExVR0lOX1BST0NFU1MpCiAKIG1lc3NhZ2VzIC0+IFBsdWdp
blByb2Nlc3NQcm94eSB7Ci0jaWYgUExBVEZPUk0oTUFDKQotICAgIERpZENyZWF0ZVdlYlByb2Nl
c3NDb25uZWN0aW9uKENvcmVJUEM6Ok1hY2hQb3J0IGNvbm5lY3Rpb25JZGVudGlmaWVyKQotI2Vu
ZGlmCisgICAgRGlkQ3JlYXRlV2ViUHJvY2Vzc0Nvbm5lY3Rpb24oQ29yZUlQQzo6QXR0YWNobWVu
dCBjb25uZWN0aW9uSWRlbnRpZmllcikKIAogICAgIERpZEdldFNpdGVzV2l0aERhdGEoVmVjdG9y
PFdURjo6U3RyaW5nPiBzaXRlcywgdWludDY0X3QgY2FsbGJhY2tJRCkKICAgICBEaWRDbGVhclNp
dGVEYXRhKHVpbnQ2NF90IGNhbGxiYWNrSUQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQcm94eS5tZXNzYWdlcy5pbgppbmRleCBlODBiZGQwLi5iYjVkZjcy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5Lm1l
c3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHku
bWVzc2FnZXMuaW4KQEAgLTI4LDcgKzI4LDcgQEAgbWVzc2FnZXMgLT4gV2ViUHJvY2Vzc1Byb3h5
IHsKICAgICBTaG91bGRUZXJtaW5hdGUoKSAtPiAoYm9vbCBzaG91bGRUZXJtaW5hdGUpCiAKICNp
ZiBFTkFCTEUoUExVR0lOX1BST0NFU1MpCi0gICAgR2V0UGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb24o
V1RGOjpTdHJpbmcgcGx1Z2luUGF0aCkgLT4gKENvcmVJUEM6Ok1hY2hQb3J0IGNvbm5lY3Rpb25I
YW5kbGUpIERlbGF5ZWQKKyAgICBHZXRQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbihXVEY6OlN0cmlu
ZyBwbHVnaW5QYXRoKSAtPiAoQ29yZUlQQzo6QXR0YWNobWVudCBjb25uZWN0aW9uSGFuZGxlKSBE
ZWxheWVkCiAgICAgUGx1Z2luU3luY01lc3NhZ2VTZW5kVGltZWRPdXQoV1RGOjpTdHJpbmcgcGx1
Z2luUGF0aCkKICNlbmRpZgogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9QbHVnaW5zL1BsdWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25NYW5hZ2VyLmNw
cAppbmRleCAzMWRmNWYyLi5mZDE5MDZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25NYW5hZ2VyLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25N
YW5hZ2VyLmNwcApAQCAtNTYsMjEgKzU2LDIwIEBAIFBsdWdpblByb2Nlc3NDb25uZWN0aW9uKiBQ
bHVnaW5Qcm9jZXNzQ29ubmVjdGlvbk1hbmFnZXI6OmdldFBsdWdpblByb2Nlc3NDb25uZWN0CiAg
ICAgICAgICAgICByZXR1cm4gbV9wbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbnNbaV0uZ2V0KCk7CiAg
ICAgfQogCi0gICAgQ29yZUlQQzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllciBjb25uZWN0aW9uSWRl
bnRpZmllcjsKLSNpZiBQTEFURk9STShNQUMpCi0gICAgQ29yZUlQQzo6TWFjaFBvcnQgY29ubmVj
dGlvbk1hY2hQb3J0OwotCi0gICAgaWYgKCFXZWJQcm9jZXNzOjpzaGFyZWQoKS5jb25uZWN0aW9u
KCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OkdldFBsdWdpblByb2Nlc3ND
b25uZWN0aW9uKHBsdWdpblBhdGgpLCBNZXNzYWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpHZXRQbHVn
aW5Qcm9jZXNzQ29ubmVjdGlvbjo6UmVwbHkoY29ubmVjdGlvbk1hY2hQb3J0KSwgMCkpCisgICAg
Q29yZUlQQzo6QXR0YWNobWVudCBlbmNvZGVkQ29ubmVjdGlvbklkZW50aWZpZXI7CisgICAgaWYg
KCFXZWJQcm9jZXNzOjpzaGFyZWQoKS5jb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpX
ZWJQcm9jZXNzUHJveHk6OkdldFBsdWdpblByb2Nlc3NDb25uZWN0aW9uKHBsdWdpblBhdGgpLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNZXNz
YWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpHZXRQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbjo6UmVwbHko
ZW5jb2RlZENvbm5lY3Rpb25JZGVudGlmaWVyKSwgMCkpCiAgICAgICAgIHJldHVybiAwOwogCi0g
ICAgY29ubmVjdGlvbklkZW50aWZpZXIgPSBjb25uZWN0aW9uTWFjaFBvcnQucG9ydCgpOwotI2Vs
c2UKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50LgotICAgIGNvbm5lY3Rpb25JZGVudGlmaWVyID0g
MDsKLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSNlbmRpZgorI2lmIFBMQVRGT1JNKE1BQykK
KyAgICBDb3JlSVBDOjpDb25uZWN0aW9uOjpJZGVudGlmaWVyIGNvbm5lY3Rpb25JZGVudGlmaWVy
ID0gZW5jb2RlZENvbm5lY3Rpb25JZGVudGlmaWVyLnBvcnQoKTsKICAgICBpZiAoIWNvbm5lY3Rp
b25JZGVudGlmaWVyKQogICAgICAgICByZXR1cm4gMDsKKyNlbGlmIFVTRShVTklYX0RPTUFJTl9T
T0NLRVRTKQorICAgIENvcmVJUEM6OkNvbm5lY3Rpb246OklkZW50aWZpZXIgY29ubmVjdGlvbklk
ZW50aWZpZXIgPSBlbmNvZGVkQ29ubmVjdGlvbklkZW50aWZpZXIuZmlsZURlc2NyaXB0b3IoKTsK
KyAgICBpZiAoY29ubmVjdGlvbklkZW50aWZpZXIgPT0gLTEpCisgICAgICAgIHJldHVybiAwOwor
I2VuZGlmCiAKICAgICBSZWZQdHI8UGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb24+IHBsdWdpblByb2Nl
c3NDb25uZWN0aW9uID0gUGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb246OmNyZWF0ZSh0aGlzLCBwbHVn
aW5QYXRoLCBjb25uZWN0aW9uSWRlbnRpZmllcik7CiAgICAgbV9wbHVnaW5Qcm9jZXNzQ29ubmVj
dGlvbnMuYXBwZW5kKHBsdWdpblByb2Nlc3NDb25uZWN0aW9uKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>93415</attachid>
            <date>2011-05-13 01:03:25 -0700</date>
            <delta_ts>2011-06-06 05:53:40 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>wk2-plugin-process-unix2.diff</filename>
            <type>text/plain</type>
            <size>12720</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCBkMDljYjNjLi40NmNjZTNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMg
QEAKKzIwMTEtMDUtMTMgIEJhbGF6cyBLZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPiBhbmQg
Q2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50IHBsdWdpbiBwcm9j
ZXNzIGZvciBVTklYIHBsYXRmb3JtCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02MDYyOQorCisgICAgICAgICogUGxhdGZvcm0vQ29yZUlQQy9BdHRhY2ht
ZW50Lmg6CisgICAgICAgICogUGxhdGZvcm0vQ29yZUlQQy91bml4L0F0dGFjaG1lbnRVbml4LmNw
cDoKKyAgICAgICAgKENvcmVJUEM6OkF0dGFjaG1lbnQ6OkF0dGFjaG1lbnQpOiBBZGQgdGhlIGFi
aWxpdHkgdG8gcGFzcyBhCisgICAgICAgIHNvY2tldCB2aWEgQXR0YWNobWVudC4KKyAgICAgICAg
KiBQbGF0Zm9ybS91bml4L1NoYXJlZE1lbW9yeVVuaXguY3BwOgorICAgICAgICAoV2ViS2l0OjpT
aGFyZWRNZW1vcnk6OkhhbmRsZTo6ZW5jb2RlKTogUmVtb3ZlIGFzc2VydGlvbnMgdGhhdAorICAg
ICAgICBjaGVjayB0aGF0IHRoZSBIYW5kbGUgaXMgbm90IG51bGwuIEluCisgICAgICAgIFBsdWdp
blByb3h5OjpnZW9tZXRyeURpZENoYW5nZSB3ZSBwYXNzIGEgbnVsbCBIYW5kbGUgaWYgd2UgZG8g
bm90CisgICAgICAgIG5lZWQgdG8gYWxsb2NhdGUgYSBuZXcgYmFja2luZyBzdG9yZS4KKyAgICAg
ICAgKFdlYktpdDo6U2hhcmVkTWVtb3J5OjpIYW5kbGU6OnJlbGVhc2VUb0F0dGFjaG1lbnQpOiBE
aXR0by4KKyAgICAgICAgKiBQbHVnaW5Qcm9jZXNzL1BsdWdpblByb2Nlc3MuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpQbHVnaW5Qcm9jZXNzOjpjcmVhdGVXZWJQcm9jZXNzQ29ubmVjdGlvbik6IFVz
ZQorICAgICAgICBBdHRhY2htZW50LiBTZXQgdXAgdGhlIGNvbm5lY3Rpb24gd2l0aCBzb2NrZXRw
YWlyLgorICAgICAgICAqIFVJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94eS5jcHA6
CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nlc3NQcm94eTo6cGx1Z2luUHJvY2Vzc0NyYXNo
ZWRPckZhaWxlZFRvTGF1bmNoKToKKyAgICAgICAgKFdlYktpdDo6UGx1Z2luUHJvY2Vzc1Byb3h5
OjpkaWRDcmVhdGVXZWJQcm9jZXNzQ29ubmVjdGlvbik6CisgICAgICAgICogVUlQcm9jZXNzL1Bs
dWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1BsdWdpbnMv
UGx1Z2luUHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQ
cm9jZXNzUHJveHkubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL1Bs
dWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBsdWdp
blByb2Nlc3NDb25uZWN0aW9uTWFuYWdlcjo6Z2V0UGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb24pOgor
ICAgICAgICBVc2UgQXR0YWNobWVudCB0byBwYXNzIHRoZSBjb25uZWN0aW9uLgorCiAyMDExLTA1
LTEyICBQcmF0aWsgU29sYW5raSAgPHBzb2xhbmtpQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBBbnR0aSBLb2l2aXN0by4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsYXRm
b3JtL0NvcmVJUEMvQXR0YWNobWVudC5oIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vQ29yZUlQ
Qy9BdHRhY2htZW50LmgKaW5kZXggODA2MGM2NC4uMmZmNjY5ZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvUGxhdGZvcm0vQ29yZUlQQy9BdHRhY2htZW50LmgKKysrIGIvU291cmNlL1dlYktp
dDIvUGxhdGZvcm0vQ29yZUlQQy9BdHRhY2htZW50LmgKQEAgLTQxLDcgKzQxLDggQEAgcHVibGlj
OgogICAgICAgICBNYWNoUG9ydFR5cGUsCiAgICAgICAgIE1hY2hPT0xNZW1vcnlUeXBlLAogI2Vs
aWYgVVNFKFVOSVhfRE9NQUlOX1NPQ0tFVFMpCi0gICAgICAgIE1hcHBlZE1lbW9yeQorICAgICAg
ICBTb2NrZXRUeXBlLAorICAgICAgICBNYXBwZWRNZW1vcnlUeXBlCiAjZW5kaWYKICAgICB9Owog
CkBAIC01MCw2ICs1MSw3IEBAIHB1YmxpYzoKICAgICBBdHRhY2htZW50KHZvaWQqIGFkZHJlc3Ms
IG1hY2hfbXNnX3NpemVfdCBzaXplLCBtYWNoX21zZ19jb3B5X29wdGlvbnNfdCBjb3B5T3B0aW9u
cywgYm9vbCBkZWFsbG9jYXRlKTsKICNlbGlmIFVTRShVTklYX0RPTUFJTl9TT0NLRVRTKQogICAg
IEF0dGFjaG1lbnQoaW50IGZpbGVEZXNjcmlwdG9yLCBzaXplX3QpOworICAgIEF0dGFjaG1lbnQo
aW50IGZpbGVEZXNjcmlwdG9yKTsKICNlbmRpZgogCiAgICAgVHlwZSB0eXBlKCkgY29uc3QgeyBy
ZXR1cm4gbV90eXBlOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9Db3Jl
SVBDL3VuaXgvQXR0YWNobWVudFVuaXguY3BwIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vQ29y
ZUlQQy91bml4L0F0dGFjaG1lbnRVbml4LmNwcAppbmRleCAyZDg0MmRhLi5hOGMwMjY5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9Db3JlSVBDL3VuaXgvQXR0YWNobWVudFVu
aXguY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0NvcmVJUEMvdW5peC9BdHRhY2ht
ZW50VW5peC5jcHAKQEAgLTMzLDEyICszMywxNyBAQAogbmFtZXNwYWNlIENvcmVJUEMgewogCiBB
dHRhY2htZW50OjpBdHRhY2htZW50KGludCBmaWxlRGVzY3JpcHRvciwgc2l6ZV90IHNpemUpCi0g
ICAgOiBtX3R5cGUoTWFwcGVkTWVtb3J5KQorICAgIDogbV90eXBlKE1hcHBlZE1lbW9yeVR5cGUp
CiAgICAgLCBtX2ZpbGVEZXNjcmlwdG9yKGZpbGVEZXNjcmlwdG9yKQogICAgICwgbV9zaXplKHNp
emUpCiB7Ci0gICAgQVNTRVJUKG1fZmlsZURlc2NyaXB0b3IpOwotICAgIEFTU0VSVChtX3NpemUp
OworfQorCitBdHRhY2htZW50OjpBdHRhY2htZW50KGludCBmaWxlRGVzY3JpcHRvcikKKyAgICA6
IG1fdHlwZShTb2NrZXRUeXBlKQorICAgICwgbV9maWxlRGVzY3JpcHRvcihmaWxlRGVzY3JpcHRv
cikKKyAgICAsIG1fc2l6ZSgwKQorewogfQogCiB2b2lkIEF0dGFjaG1lbnQ6OmRpc3Bvc2UoKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vdW5peC9TaGFyZWRNZW1vcnlVbml4
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL3VuaXgvU2hhcmVkTWVtb3J5VW5peC5jcHAK
aW5kZXggN2FjZjEzMi4uOGZiY2MyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvUGxhdGZv
cm0vdW5peC9TaGFyZWRNZW1vcnlVbml4LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9y
bS91bml4L1NoYXJlZE1lbW9yeVVuaXguY3BwCkBAIC02OCw4ICs2OCw2IEBAIGJvb2wgU2hhcmVk
TWVtb3J5OjpIYW5kbGU6OmlzTnVsbCgpIGNvbnN0CiAKIHZvaWQgU2hhcmVkTWVtb3J5OjpIYW5k
bGU6OmVuY29kZShDb3JlSVBDOjpBcmd1bWVudEVuY29kZXIqIGVuY29kZXIpIGNvbnN0CiB7Ci0g
ICAgQVNTRVJUKCFpc051bGwoKSk7Ci0KICAgICBlbmNvZGVyLT5lbmNvZGUocmVsZWFzZVRvQXR0
YWNobWVudCgpKTsKIH0KIApAQCAtODgsOCArODYsNiBAQCBib29sIFNoYXJlZE1lbW9yeTo6SGFu
ZGxlOjpkZWNvZGUoQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyKiBkZWNvZGVyLCBIYW5kbGUmIGhh
bgogCiBDb3JlSVBDOjpBdHRhY2htZW50IFNoYXJlZE1lbW9yeTo6SGFuZGxlOjpyZWxlYXNlVG9B
dHRhY2htZW50KCkgY29uc3QKIHsKLSAgICBBU1NFUlQoIWlzTnVsbCgpKTsKLQogICAgIGludCB0
ZW1wID0gbV9maWxlRGVzY3JpcHRvcjsKICAgICBtX2ZpbGVEZXNjcmlwdG9yID0gLTE7CiAgICAg
cmV0dXJuIENvcmVJUEM6OkF0dGFjaG1lbnQodGVtcCwgbV9zaXplKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1BsdWdpblByb2Nlc3MvUGx1Z2luUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9QbHVnaW5Qcm9jZXNzL1BsdWdpblByb2Nlc3MuY3BwCmluZGV4IDMwNTA0YTIuLmFjMDVk
NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsdWdpblByb2Nlc3MvUGx1Z2luUHJvY2Vz
cy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9QbHVnaW5Qcm9jZXNzLmNw
cApAQCAtMjksMTMgKzI5LDE5IEBACiAjaWYgRU5BQkxFKFBMVUdJTl9QUk9DRVNTKQogCiAjaW5j
bHVkZSAiQXJndW1lbnRDb2RlcnMuaCIKKyNpbmNsdWRlICJBdHRhY2htZW50LmgiCiAjaW5jbHVk
ZSAiTmV0c2NhcGVQbHVnaW5Nb2R1bGUuaCIKICNpbmNsdWRlICJQbHVnaW5Qcm9jZXNzUHJveHlN
ZXNzYWdlcy5oIgogI2luY2x1ZGUgIlBsdWdpblByb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaCIK
ICNpbmNsdWRlICJXZWJQcm9jZXNzQ29ubmVjdGlvbi5oIgotCi0jaWYgUExBVEZPUk0oTUFDKQot
I2luY2x1ZGUgIk1hY2hQb3J0LmgiCisjaW5jbHVkZSA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRlZC5o
PgorCisjaWYgVVNFKFVOSVhfRE9NQUlOX1NPQ0tFVFMpCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNp
bmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHN5cy9yZXNvdXJjZS5oPgorI2luY2x1ZGUgPHN5
cy9zb2NrZXQuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KICNlbmRpZgogCiBuYW1lc3BhY2UgV2Vi
S2l0IHsKQEAgLTE1MCwxMSArMTU2LDQyIEBAIHZvaWQgUGx1Z2luUHJvY2Vzczo6Y3JlYXRlV2Vi
UHJvY2Vzc0Nvbm5lY3Rpb24oKQogICAgIFJlZlB0cjxXZWJQcm9jZXNzQ29ubmVjdGlvbj4gY29u
bmVjdGlvbiA9IFdlYlByb2Nlc3NDb25uZWN0aW9uOjpjcmVhdGUobGlzdGVuaW5nUG9ydCk7CiAg
ICAgbV93ZWJQcm9jZXNzQ29ubmVjdGlvbnMuYXBwZW5kKGNvbm5lY3Rpb24ucmVsZWFzZSgpKTsK
IAotICAgIENvcmVJUEM6Ok1hY2hQb3J0IGNsaWVudFBvcnQobGlzdGVuaW5nUG9ydCwgTUFDSF9N
U0dfVFlQRV9NQUtFX1NFTkQpOworICAgIENvcmVJUEM6OkF0dGFjaG1lbnQgY2xpZW50UG9ydChs
aXN0ZW5pbmdQb3J0LCBNQUNIX01TR19UWVBFX01BS0VfU0VORCk7CiAgICAgbV9jb25uZWN0aW9u
LT5zZW5kKE1lc3NhZ2VzOjpQbHVnaW5Qcm9jZXNzUHJveHk6OkRpZENyZWF0ZVdlYlByb2Nlc3ND
b25uZWN0aW9uKGNsaWVudFBvcnQpLCAwKTsKKyNlbGlmIFVTRShVTklYX0RPTUFJTl9TT0NLRVRT
KQorICAgIGludCBzb2NrZXRzWzJdOworICAgIGlmIChzb2NrZXRwYWlyKEFGX1VOSVgsIFNPQ0tf
REdSQU0sIDAsIHNvY2tldHMpID09IC0xKSB7CisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgLy8gRG9uJ3QgZXhwb3NlIHRoZSBwbHVn
aW4gcHJvY2VzcyBzb2NrZXQgdG8gdGhlIHdlYiBwcm9jZXNzLgorICAgIHdoaWxlIChmY250bChz
b2NrZXRzWzFdLCBGX1NFVEZELCBGRF9DTE9FWEVDKSAgPT0gLTEpIHsKKyAgICAgICAgaWYgKGVy
cm5vICE9IEVJTlRSKSB7CisgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAg
ICAgICAgIHdoaWxlIChjbG9zZShzb2NrZXRzWzBdKSA9PSAtMSAmJiBlcnJubyA9PSBFSU5UUikg
eyB9CisgICAgICAgICAgICB3aGlsZSAoY2xvc2Uoc29ja2V0c1sxXSkgPT0gLTEgJiYgZXJybm8g
PT0gRUlOVFIpIHsgfQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgfQorCisg
ICAgLy8gRG9uJ3QgZXhwb3NlIHRoZSB3ZWIgcHJvY2VzcyBzb2NrZXQgdG8gcG9zc2libGUgZnV0
dXJlIHdlYiBwcm9jZXNzZXMuCisgICAgd2hpbGUgKGZjbnRsKHNvY2tldHNbMF0sIEZfU0VURkQs
IEZEX0NMT0VYRUMpID09IC0xKSB7CisgICAgICAgIGlmIChlcnJubyAhPSBFSU5UUikgeworICAg
ICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgICAgICB3aGlsZSAoY2xvc2Uo
c29ja2V0c1swXSkgPT0gLTEgJiYgZXJybm8gPT0gRUlOVFIpIHsgfQorICAgICAgICAgICAgd2hp
bGUgKGNsb3NlKHNvY2tldHNbMV0pID09IC0xICYmIGVycm5vID09IEVJTlRSKSB7IH0KKyAgICAg
ICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgIH0KKworICAgIFJlZlB0cjxXZWJQcm9jZXNz
Q29ubmVjdGlvbj4gY29ubmVjdGlvbiA9IFdlYlByb2Nlc3NDb25uZWN0aW9uOjpjcmVhdGUoc29j
a2V0c1sxXSk7CisgICAgbV93ZWJQcm9jZXNzQ29ubmVjdGlvbnMuYXBwZW5kKGNvbm5lY3Rpb24u
cmVsZWFzZSgpKTsKKworICAgIENvcmVJUEM6OkF0dGFjaG1lbnQgY2xpZW50U29ja2V0KHNvY2tl
dHNbMF0pOworICAgIG1fY29ubmVjdGlvbi0+c2VuZChNZXNzYWdlczo6UGx1Z2luUHJvY2Vzc1By
b3h5OjpEaWRDcmVhdGVXZWJQcm9jZXNzQ29ubmVjdGlvbihjbGllbnRTb2NrZXQpLCAwKTsKICNl
bHNlCi0gICAgLy8gRklYTUU6IEltcGxlbWVudC4KLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsK
KyAgICBub3RJbXBsZW1lbnRlZCgpOwogI2VuZGlmCiAKICAgICBpZiAoTmV0c2NhcGVQbHVnaW5N
b2R1bGUqIG1vZHVsZSA9IG5ldHNjYXBlUGx1Z2luTW9kdWxlKCkpIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94eS5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuY3BwCmlu
ZGV4IDI5NzU1YTEuLmM2Yzk4YWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5LmNwcApAQCAtMzcsNiArMzcsNyBAQAog
I2luY2x1ZGUgIldlYlBsdWdpblNpdGVEYXRhTWFuYWdlci5oIgogI2luY2x1ZGUgIldlYlByb2Nl
c3NNZXNzYWdlcy5oIgogI2luY2x1ZGUgIldlYlByb2Nlc3NQcm94eS5oIgorI2luY2x1ZGUgPFdl
YkNvcmUvTm90SW1wbGVtZW50ZWQuaD4KIAogI2lmIFBMQVRGT1JNKE1BQykKICNpbmNsdWRlICJN
YWNoUG9ydC5oIgpAQCAtMTM0LDEwICsxMzUsMTEgQEAgdm9pZCBQbHVnaW5Qcm9jZXNzUHJveHk6
OnBsdWdpblByb2Nlc3NDcmFzaGVkT3JGYWlsZWRUb0xhdW5jaCgpCiAgICAgICAgIFJlZlB0cjxN
ZXNzYWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpHZXRQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbjo6RGVs
YXllZFJlcGx5PiByZXBseSA9IG1fcGVuZGluZ0Nvbm5lY3Rpb25SZXBsaWVzLnRha2VGaXJzdCgp
OwogCiAjaWYgUExBVEZPUk0oTUFDKQotICAgICAgICByZXBseS0+c2VuZChDb3JlSVBDOjpNYWNo
UG9ydCgwLCBNQUNIX01TR19UWVBFX01PVkVfU0VORCkpOworICAgICAgICByZXBseS0+c2VuZChD
b3JlSVBDOjpBdHRhY2htZW50KDAsIE1BQ0hfTVNHX1RZUEVfTU9WRV9TRU5EKSk7CisjZWxpZiBV
U0UoVU5JWF9ET01BSU5fU09DS0VUUykKKyAgICAgICAgcmVwbHktPnNlbmQoQ29yZUlQQzo6QXR0
YWNobWVudCgpKTsKICNlbHNlCi0gICAgICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQuCi0gICAgICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBub3RJbXBsZW1lbnRlZCgpOwogI2VuZGlm
CiAgICAgfQogCkBAIC0yMjQsMTcgKzIyNiwyMSBAQCB2b2lkIFBsdWdpblByb2Nlc3NQcm94eTo6
ZGlkRmluaXNoTGF1bmNoaW5nKFByb2Nlc3NMYXVuY2hlciosIENvcmVJUEM6OkNvbm5lY3Rpbwog
ICAgIG1fbnVtUGVuZGluZ0Nvbm5lY3Rpb25SZXF1ZXN0cyA9IDA7CiB9CiAKLSNpZiBQTEFURk9S
TShNQUMpCi12b2lkIFBsdWdpblByb2Nlc3NQcm94eTo6ZGlkQ3JlYXRlV2ViUHJvY2Vzc0Nvbm5l
Y3Rpb24oY29uc3QgQ29yZUlQQzo6TWFjaFBvcnQmIG1hY2hQb3J0KQordm9pZCBQbHVnaW5Qcm9j
ZXNzUHJveHk6OmRpZENyZWF0ZVdlYlByb2Nlc3NDb25uZWN0aW9uKGNvbnN0IENvcmVJUEM6OkF0
dGFjaG1lbnQmIGNvbm5lY3Rpb25JZGVudGlmaWVyKQogewogICAgIEFTU0VSVCghbV9wZW5kaW5n
Q29ubmVjdGlvblJlcGxpZXMuaXNFbXB0eSgpKTsKIAogICAgIC8vIEdyYWIgdGhlIGZpcnN0IHBl
bmRpbmcgY29ubmVjdGlvbiByZXBseS4KICAgICBSZWZQdHI8TWVzc2FnZXM6OldlYlByb2Nlc3NQ
cm94eTo6R2V0UGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb246OkRlbGF5ZWRSZXBseT4gcmVwbHkgPSBt
X3BlbmRpbmdDb25uZWN0aW9uUmVwbGllcy50YWtlRmlyc3QoKTsKIAotICAgIHJlcGx5LT5zZW5k
KENvcmVJUEM6Ok1hY2hQb3J0KG1hY2hQb3J0LnBvcnQoKSwgTUFDSF9NU0dfVFlQRV9NT1ZFX1NF
TkQpKTsKLX0KKyNpZiBQTEFURk9STShNQUMpCisgICAgcmVwbHktPnNlbmQoQ29yZUlQQzo6QXR0
YWNobWVudChjb25uZWN0aW9uSWRlbnRpZmllci5wb3J0KCksIE1BQ0hfTVNHX1RZUEVfTU9WRV9T
RU5EKSk7CisjZWxpZiBVU0UoVU5JWF9ET01BSU5fU09DS0VUUykKKyAgICByZXBseS0+c2VuZChj
b25uZWN0aW9uSWRlbnRpZmllcik7CisjZWxzZQorICAgIG5vdEltcGxlbWVudGVkKCk7CiAjZW5k
aWYKK30KIAogdm9pZCBQbHVnaW5Qcm9jZXNzUHJveHk6OmRpZEdldFNpdGVzV2l0aERhdGEoY29u
c3QgVmVjdG9yPFN0cmluZz4mIHNpdGVzLCB1aW50NjRfdCBjYWxsYmFja0lEKQogewpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5
LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHku
aAppbmRleCBiMGQ4MmNhLi4zNGNhODI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuaApAQCAtOTYsOSArOTYsNyBAQCBw
cml2YXRlOgogCiAgICAgLy8gTWVzc2FnZSBoYW5kbGVycwogICAgIHZvaWQgZGlkUmVjZWl2ZVBs
dWdpblByb2Nlc3NQcm94eU1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1l
c3NhZ2VJRCwgQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyKik7Ci0jaWYgUExBVEZPUk0oTUFDKQot
ICAgIHZvaWQgZGlkQ3JlYXRlV2ViUHJvY2Vzc0Nvbm5lY3Rpb24oY29uc3QgQ29yZUlQQzo6TWFj
aFBvcnQmKTsKLSNlbmRpZgorICAgIHZvaWQgZGlkQ3JlYXRlV2ViUHJvY2Vzc0Nvbm5lY3Rpb24o
Y29uc3QgQ29yZUlQQzo6QXR0YWNobWVudCYpOwogICAgIHZvaWQgZGlkR2V0U2l0ZXNXaXRoRGF0
YShjb25zdCBWZWN0b3I8U3RyaW5nPiYgc2l0ZXMsIHVpbnQ2NF90IGNhbGxiYWNrSUQpOwogICAg
IHZvaWQgZGlkQ2xlYXJTaXRlRGF0YSh1aW50NjRfdCBjYWxsYmFja0lEKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5Lm1l
c3NhZ2VzLmluIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vz
c1Byb3h5Lm1lc3NhZ2VzLmluCmluZGV4IDdjYWFjMTEuLjdiNTlhZWYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94eS5tZXNzYWdl
cy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNz
UHJveHkubWVzc2FnZXMuaW4KQEAgLTIzLDkgKzIzLDcgQEAKICNpZiBFTkFCTEUoUExVR0lOX1BS
T0NFU1MpCiAKIG1lc3NhZ2VzIC0+IFBsdWdpblByb2Nlc3NQcm94eSB7Ci0jaWYgUExBVEZPUk0o
TUFDKQotICAgIERpZENyZWF0ZVdlYlByb2Nlc3NDb25uZWN0aW9uKENvcmVJUEM6Ok1hY2hQb3J0
IGNvbm5lY3Rpb25JZGVudGlmaWVyKQotI2VuZGlmCisgICAgRGlkQ3JlYXRlV2ViUHJvY2Vzc0Nv
bm5lY3Rpb24oQ29yZUlQQzo6QXR0YWNobWVudCBjb25uZWN0aW9uSWRlbnRpZmllcikKIAogICAg
IERpZEdldFNpdGVzV2l0aERhdGEoVmVjdG9yPFdURjo6U3RyaW5nPiBzaXRlcywgdWludDY0X3Qg
Y2FsbGJhY2tJRCkKICAgICBEaWRDbGVhclNpdGVEYXRhKHVpbnQ2NF90IGNhbGxiYWNrSUQpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5Lm1lc3Nh
Z2VzLmluIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5tZXNzYWdl
cy5pbgppbmRleCBlODBiZGQwLi5iYjVkZjcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkubWVzc2FnZXMuaW4KQEAgLTI4LDcgKzI4LDcgQEAg
bWVzc2FnZXMgLT4gV2ViUHJvY2Vzc1Byb3h5IHsKICAgICBTaG91bGRUZXJtaW5hdGUoKSAtPiAo
Ym9vbCBzaG91bGRUZXJtaW5hdGUpCiAKICNpZiBFTkFCTEUoUExVR0lOX1BST0NFU1MpCi0gICAg
R2V0UGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb24oV1RGOjpTdHJpbmcgcGx1Z2luUGF0aCkgLT4gKENv
cmVJUEM6Ok1hY2hQb3J0IGNvbm5lY3Rpb25IYW5kbGUpIERlbGF5ZWQKKyAgICBHZXRQbHVnaW5Q
cm9jZXNzQ29ubmVjdGlvbihXVEY6OlN0cmluZyBwbHVnaW5QYXRoKSAtPiAoQ29yZUlQQzo6QXR0
YWNobWVudCBjb25uZWN0aW9uSGFuZGxlKSBEZWxheWVkCiAgICAgUGx1Z2luU3luY01lc3NhZ2VT
ZW5kVGltZWRPdXQoV1RGOjpTdHJpbmcgcGx1Z2luUGF0aCkKICNlbmRpZgogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NDb25uZWN0
aW9uTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2lu
UHJvY2Vzc0Nvbm5lY3Rpb25NYW5hZ2VyLmNwcAppbmRleCAzMWRmNWYyLi5mZDE5MDZkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc0Nv
bm5lY3Rpb25NYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdp
bnMvUGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25NYW5hZ2VyLmNwcApAQCAtNTYsMjEgKzU2LDIwIEBA
IFBsdWdpblByb2Nlc3NDb25uZWN0aW9uKiBQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbk1hbmFnZXI6
OmdldFBsdWdpblByb2Nlc3NDb25uZWN0CiAgICAgICAgICAgICByZXR1cm4gbV9wbHVnaW5Qcm9j
ZXNzQ29ubmVjdGlvbnNbaV0uZ2V0KCk7CiAgICAgfQogCi0gICAgQ29yZUlQQzo6Q29ubmVjdGlv
bjo6SWRlbnRpZmllciBjb25uZWN0aW9uSWRlbnRpZmllcjsKLSNpZiBQTEFURk9STShNQUMpCi0g
ICAgQ29yZUlQQzo6TWFjaFBvcnQgY29ubmVjdGlvbk1hY2hQb3J0OwotCi0gICAgaWYgKCFXZWJQ
cm9jZXNzOjpzaGFyZWQoKS5jb25uZWN0aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQcm9j
ZXNzUHJveHk6OkdldFBsdWdpblByb2Nlc3NDb25uZWN0aW9uKHBsdWdpblBhdGgpLCBNZXNzYWdl
czo6V2ViUHJvY2Vzc1Byb3h5OjpHZXRQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbjo6UmVwbHkoY29u
bmVjdGlvbk1hY2hQb3J0KSwgMCkpCisgICAgQ29yZUlQQzo6QXR0YWNobWVudCBlbmNvZGVkQ29u
bmVjdGlvbklkZW50aWZpZXI7CisgICAgaWYgKCFXZWJQcm9jZXNzOjpzaGFyZWQoKS5jb25uZWN0
aW9uKCktPnNlbmRTeW5jKE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OkdldFBsdWdpblByb2Nl
c3NDb25uZWN0aW9uKHBsdWdpblBhdGgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBNZXNzYWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpHZXRQbHVn
aW5Qcm9jZXNzQ29ubmVjdGlvbjo6UmVwbHkoZW5jb2RlZENvbm5lY3Rpb25JZGVudGlmaWVyKSwg
MCkpCiAgICAgICAgIHJldHVybiAwOwogCi0gICAgY29ubmVjdGlvbklkZW50aWZpZXIgPSBjb25u
ZWN0aW9uTWFjaFBvcnQucG9ydCgpOwotI2Vsc2UKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50Lgot
ICAgIGNvbm5lY3Rpb25JZGVudGlmaWVyID0gMDsKLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsK
LSNlbmRpZgorI2lmIFBMQVRGT1JNKE1BQykKKyAgICBDb3JlSVBDOjpDb25uZWN0aW9uOjpJZGVu
dGlmaWVyIGNvbm5lY3Rpb25JZGVudGlmaWVyID0gZW5jb2RlZENvbm5lY3Rpb25JZGVudGlmaWVy
LnBvcnQoKTsKICAgICBpZiAoIWNvbm5lY3Rpb25JZGVudGlmaWVyKQogICAgICAgICByZXR1cm4g
MDsKKyNlbGlmIFVTRShVTklYX0RPTUFJTl9TT0NLRVRTKQorICAgIENvcmVJUEM6OkNvbm5lY3Rp
b246OklkZW50aWZpZXIgY29ubmVjdGlvbklkZW50aWZpZXIgPSBlbmNvZGVkQ29ubmVjdGlvbklk
ZW50aWZpZXIuZmlsZURlc2NyaXB0b3IoKTsKKyAgICBpZiAoY29ubmVjdGlvbklkZW50aWZpZXIg
PT0gLTEpCisgICAgICAgIHJldHVybiAwOworI2VuZGlmCiAKICAgICBSZWZQdHI8UGx1Z2luUHJv
Y2Vzc0Nvbm5lY3Rpb24+IHBsdWdpblByb2Nlc3NDb25uZWN0aW9uID0gUGx1Z2luUHJvY2Vzc0Nv
bm5lY3Rpb246OmNyZWF0ZSh0aGlzLCBwbHVnaW5QYXRoLCBjb25uZWN0aW9uSWRlbnRpZmllcik7
CiAgICAgbV9wbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbnMuYXBwZW5kKHBsdWdpblByb2Nlc3NDb25u
ZWN0aW9uKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>96081</attachid>
            <date>2011-06-06 05:53:40 -0700</date>
            <delta_ts>2011-07-14 08:18:58 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>wk2-plugin-process3.diff</filename>
            <type>text/plain</type>
            <size>12856</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA5ZDk1OTQxLi5jM2QxYmM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMg
QEAKKzIwMTEtMDYtMDYgIEJhbGF6cyBLZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPiBhbmQg
Q2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50IHBsdWdpbiBwcm9j
ZXNzIGZvciBVTklYIHBsYXRmb3JtCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02MDYyOQorCisgICAgICAgICogUGxhdGZvcm0vQ29yZUlQQy9BdHRhY2ht
ZW50Lmg6CisgICAgICAgICogUGxhdGZvcm0vQ29yZUlQQy91bml4L0F0dGFjaG1lbnRVbml4LmNw
cDoKKyAgICAgICAgKENvcmVJUEM6OkF0dGFjaG1lbnQ6OkF0dGFjaG1lbnQpOiBBZGQgdGhlIGFi
aWxpdHkgdG8gcGFzcyBhCisgICAgICAgIHNvY2tldCB2aWEgQXR0YWNobWVudC4KKyAgICAgICAg
KiBQbGF0Zm9ybS91bml4L1NoYXJlZE1lbW9yeVVuaXguY3BwOgorICAgICAgICAoV2ViS2l0OjpT
aGFyZWRNZW1vcnk6OkhhbmRsZTo6ZW5jb2RlKTogUmVtb3ZlIGFzc2VydGlvbnMgdGhhdAorICAg
ICAgICBjaGVjayB0aGF0IHRoZSBIYW5kbGUgaXMgbm90IG51bGwuIEluCisgICAgICAgIFBsdWdp
blByb3h5OjpnZW9tZXRyeURpZENoYW5nZSB3ZSBwYXNzIGEgbnVsbCBIYW5kbGUgaWYgd2UgZG8g
bm90CisgICAgICAgIG5lZWQgdG8gYWxsb2NhdGUgYSBuZXcgYmFja2luZyBzdG9yZS4KKyAgICAg
ICAgKFdlYktpdDo6U2hhcmVkTWVtb3J5OjpIYW5kbGU6OnJlbGVhc2VUb0F0dGFjaG1lbnQpOiBE
aXR0by4KKyAgICAgICAgKiBQbHVnaW5Qcm9jZXNzL1BsdWdpblByb2Nlc3MuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpQbHVnaW5Qcm9jZXNzOjpjcmVhdGVXZWJQcm9jZXNzQ29ubmVjdGlvbik6IFVz
ZQorICAgICAgICBBdHRhY2htZW50LiBTZXQgdXAgdGhlIGNvbm5lY3Rpb24gd2l0aCBzb2NrZXRw
YWlyLgorICAgICAgICAqIFVJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94eS5jcHA6
CisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nlc3NQcm94eTo6cGx1Z2luUHJvY2Vzc0NyYXNo
ZWRPckZhaWxlZFRvTGF1bmNoKToKKyAgICAgICAgKFdlYktpdDo6UGx1Z2luUHJvY2Vzc1Byb3h5
OjpkaWRDcmVhdGVXZWJQcm9jZXNzQ29ubmVjdGlvbik6CisgICAgICAgICogVUlQcm9jZXNzL1Bs
dWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1BsdWdpbnMv
UGx1Z2luUHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQ
cm9jZXNzUHJveHkubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL1Bs
dWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBsdWdp
blByb2Nlc3NDb25uZWN0aW9uTWFuYWdlcjo6Z2V0UGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb24pOgor
ICAgICAgICBVc2UgQXR0YWNobWVudCB0byBwYXNzIHRoZSBjb25uZWN0aW9uLgorCiAyMDExLTA2
LTA2ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBBbmRlcnMgQ2FybHNzb24uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9QbGF0Zm9ybS9Db3JlSVBDL0F0dGFjaG1lbnQuaCBiL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3Jt
L0NvcmVJUEMvQXR0YWNobWVudC5oCmluZGV4IGRlMThmZGUuLmExNjg5M2IgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0NvcmVJUEMvQXR0YWNobWVudC5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1BsYXRmb3JtL0NvcmVJUEMvQXR0YWNobWVudC5oCkBAIC00MSw3ICs0MSw4IEBA
IHB1YmxpYzoKICAgICAgICAgTWFjaFBvcnRUeXBlLAogICAgICAgICBNYWNoT09MTWVtb3J5VHlw
ZSwKICNlbGlmIFVTRShVTklYX0RPTUFJTl9TT0NLRVRTKSB8fCBPUyhTWU1CSUFOKQotICAgICAg
ICBNYXBwZWRNZW1vcnkKKyAgICAgICAgU29ja2V0VHlwZSwKKyAgICAgICAgTWFwcGVkTWVtb3J5
VHlwZQogI2VuZGlmCiAgICAgfTsKIApAQCAtNTAsNiArNTEsNyBAQCBwdWJsaWM6CiAgICAgQXR0
YWNobWVudCh2b2lkKiBhZGRyZXNzLCBtYWNoX21zZ19zaXplX3Qgc2l6ZSwgbWFjaF9tc2dfY29w
eV9vcHRpb25zX3QgY29weU9wdGlvbnMsIGJvb2wgZGVhbGxvY2F0ZSk7CiAjZWxpZiBVU0UoVU5J
WF9ET01BSU5fU09DS0VUUykgfHwgT1MoU1lNQklBTikKICAgICBBdHRhY2htZW50KGludCBmaWxl
RGVzY3JpcHRvciwgc2l6ZV90KTsKKyAgICBBdHRhY2htZW50KGludCBmaWxlRGVzY3JpcHRvcik7
CiAjZW5kaWYKIAogICAgIFR5cGUgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsgfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vQ29yZUlQQy91bml4L0F0dGFjaG1lbnRV
bml4LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0NvcmVJUEMvdW5peC9BdHRhY2htZW50
VW5peC5jcHAKaW5kZXggMmQ4NDJkYS4uYThjMDI2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvUGxhdGZvcm0vQ29yZUlQQy91bml4L0F0dGFjaG1lbnRVbml4LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9QbGF0Zm9ybS9Db3JlSVBDL3VuaXgvQXR0YWNobWVudFVuaXguY3BwCkBAIC0zMywx
MiArMzMsMTcgQEAKIG5hbWVzcGFjZSBDb3JlSVBDIHsKIAogQXR0YWNobWVudDo6QXR0YWNobWVu
dChpbnQgZmlsZURlc2NyaXB0b3IsIHNpemVfdCBzaXplKQotICAgIDogbV90eXBlKE1hcHBlZE1l
bW9yeSkKKyAgICA6IG1fdHlwZShNYXBwZWRNZW1vcnlUeXBlKQogICAgICwgbV9maWxlRGVzY3Jp
cHRvcihmaWxlRGVzY3JpcHRvcikKICAgICAsIG1fc2l6ZShzaXplKQogewotICAgIEFTU0VSVCht
X2ZpbGVEZXNjcmlwdG9yKTsKLSAgICBBU1NFUlQobV9zaXplKTsKK30KKworQXR0YWNobWVudDo6
QXR0YWNobWVudChpbnQgZmlsZURlc2NyaXB0b3IpCisgICAgOiBtX3R5cGUoU29ja2V0VHlwZSkK
KyAgICAsIG1fZmlsZURlc2NyaXB0b3IoZmlsZURlc2NyaXB0b3IpCisgICAgLCBtX3NpemUoMCkK
K3sKIH0KIAogdm9pZCBBdHRhY2htZW50OjpkaXNwb3NlKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1BsYXRmb3JtL3VuaXgvU2hhcmVkTWVtb3J5VW5peC5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9QbGF0Zm9ybS91bml4L1NoYXJlZE1lbW9yeVVuaXguY3BwCmluZGV4IDNkY2UxYzIuLjgxYzY5
YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL3VuaXgvU2hhcmVkTWVtb3J5
VW5peC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vdW5peC9TaGFyZWRNZW1vcnlV
bml4LmNwcApAQCAtNjksOCArNjksNiBAQCBib29sIFNoYXJlZE1lbW9yeTo6SGFuZGxlOjppc051
bGwoKSBjb25zdAogCiB2b2lkIFNoYXJlZE1lbW9yeTo6SGFuZGxlOjplbmNvZGUoQ29yZUlQQzo6
QXJndW1lbnRFbmNvZGVyKiBlbmNvZGVyKSBjb25zdAogewotICAgIEFTU0VSVCghaXNOdWxsKCkp
OwotCiAgICAgZW5jb2Rlci0+ZW5jb2RlKHJlbGVhc2VUb0F0dGFjaG1lbnQoKSk7CiB9CiAKQEAg
LTg5LDggKzg3LDYgQEAgYm9vbCBTaGFyZWRNZW1vcnk6OkhhbmRsZTo6ZGVjb2RlKENvcmVJUEM6
OkFyZ3VtZW50RGVjb2RlciogZGVjb2RlciwgSGFuZGxlJiBoYW4KIAogQ29yZUlQQzo6QXR0YWNo
bWVudCBTaGFyZWRNZW1vcnk6OkhhbmRsZTo6cmVsZWFzZVRvQXR0YWNobWVudCgpIGNvbnN0CiB7
Ci0gICAgQVNTRVJUKCFpc051bGwoKSk7Ci0KICAgICBpbnQgdGVtcCA9IG1fZmlsZURlc2NyaXB0
b3I7CiAgICAgbV9maWxlRGVzY3JpcHRvciA9IC0xOwogICAgIHJldHVybiBDb3JlSVBDOjpBdHRh
Y2htZW50KHRlbXAsIG1fc2l6ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9QbHVnaW5Q
cm9jZXNzL1BsdWdpblByb2Nlc3MuY3BwIGIvU291cmNlL1dlYktpdDIvUGx1Z2luUHJvY2Vzcy9Q
bHVnaW5Qcm9jZXNzLmNwcAppbmRleCAzMDUwNGEyLi5lMWFmY2ViIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9QbHVnaW5Qcm9jZXNzL1BsdWdpblByb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1BsdWdpblByb2Nlc3MvUGx1Z2luUHJvY2Vzcy5jcHAKQEAgLTI5LDEzICsyOSwyNSBA
QAogI2lmIEVOQUJMRShQTFVHSU5fUFJPQ0VTUykKIAogI2luY2x1ZGUgIkFyZ3VtZW50Q29kZXJz
LmgiCisjaW5jbHVkZSAiQXR0YWNobWVudC5oIgogI2luY2x1ZGUgIk5ldHNjYXBlUGx1Z2luTW9k
dWxlLmgiCiAjaW5jbHVkZSAiUGx1Z2luUHJvY2Vzc1Byb3h5TWVzc2FnZXMuaCIKICNpbmNsdWRl
ICJQbHVnaW5Qcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vz
c0Nvbm5lY3Rpb24uaCIKKyNpbmNsdWRlIDxXZWJDb3JlL05vdEltcGxlbWVudGVkLmg+CiAKLSNp
ZiBQTEFURk9STShNQUMpCi0jaW5jbHVkZSAiTWFjaFBvcnQuaCIKKyNpZiBVU0UoVU5JWF9ET01B
SU5fU09DS0VUUykKKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5j
bHVkZSA8c3lzL3Jlc291cmNlLmg+CisjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgorI2luY2x1ZGUg
PHVuaXN0ZC5oPgorCisjaWYgUExBVEZPUk0oR1RLKQorI2RlZmluZSBTT0NLRVRfVFlQRSBTT0NL
X1NUUkVBTQorI2Vsc2UKKyNkZWZpbmUgU09DS0VUX1RZUEUgU09DS19ER1JBTQorI2VuZGlmCiAj
ZW5kaWYKIAogbmFtZXNwYWNlIFdlYktpdCB7CkBAIC0xNTAsMTEgKzE2Miw0MiBAQCB2b2lkIFBs
dWdpblByb2Nlc3M6OmNyZWF0ZVdlYlByb2Nlc3NDb25uZWN0aW9uKCkKICAgICBSZWZQdHI8V2Vi
UHJvY2Vzc0Nvbm5lY3Rpb24+IGNvbm5lY3Rpb24gPSBXZWJQcm9jZXNzQ29ubmVjdGlvbjo6Y3Jl
YXRlKGxpc3RlbmluZ1BvcnQpOwogICAgIG1fd2ViUHJvY2Vzc0Nvbm5lY3Rpb25zLmFwcGVuZChj
b25uZWN0aW9uLnJlbGVhc2UoKSk7CiAKLSAgICBDb3JlSVBDOjpNYWNoUG9ydCBjbGllbnRQb3J0
KGxpc3RlbmluZ1BvcnQsIE1BQ0hfTVNHX1RZUEVfTUFLRV9TRU5EKTsKKyAgICBDb3JlSVBDOjpB
dHRhY2htZW50IGNsaWVudFBvcnQobGlzdGVuaW5nUG9ydCwgTUFDSF9NU0dfVFlQRV9NQUtFX1NF
TkQpOwogICAgIG1fY29ubmVjdGlvbi0+c2VuZChNZXNzYWdlczo6UGx1Z2luUHJvY2Vzc1Byb3h5
OjpEaWRDcmVhdGVXZWJQcm9jZXNzQ29ubmVjdGlvbihjbGllbnRQb3J0KSwgMCk7CisjZWxpZiBV
U0UoVU5JWF9ET01BSU5fU09DS0VUUykKKyAgICBpbnQgc29ja2V0c1syXTsKKyAgICBpZiAoc29j
a2V0cGFpcihBRl9VTklYLCBTT0NLRVRfVFlQRSwgMCwgc29ja2V0cykgPT0gLTEpIHsKKyAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICAv
LyBEb24ndCBleHBvc2UgdGhlIHBsdWdpbiBwcm9jZXNzIHNvY2tldCB0byB0aGUgd2ViIHByb2Nl
c3MuCisgICAgd2hpbGUgKGZjbnRsKHNvY2tldHNbMV0sIEZfU0VURkQsIEZEX0NMT0VYRUMpICA9
PSAtMSkgeworICAgICAgICBpZiAoZXJybm8gIT0gRUlOVFIpIHsKKyAgICAgICAgICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOworICAgICAgICAgICAgd2hpbGUgKGNsb3NlKHNvY2tldHNbMF0pID09
IC0xICYmIGVycm5vID09IEVJTlRSKSB7IH0KKyAgICAgICAgICAgIHdoaWxlIChjbG9zZShzb2Nr
ZXRzWzFdKSA9PSAtMSAmJiBlcnJubyA9PSBFSU5UUikgeyB9CisgICAgICAgICAgICByZXR1cm47
CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvLyBEb24ndCBleHBvc2UgdGhlIHdlYiBwcm9jZXNz
IHNvY2tldCB0byBwb3NzaWJsZSBmdXR1cmUgd2ViIHByb2Nlc3Nlcy4KKyAgICB3aGlsZSAoZmNu
dGwoc29ja2V0c1swXSwgRl9TRVRGRCwgRkRfQ0xPRVhFQykgPT0gLTEpIHsKKyAgICAgICAgaWYg
KGVycm5vICE9IEVJTlRSKSB7CisgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAg
ICAgICAgICAgIHdoaWxlIChjbG9zZShzb2NrZXRzWzBdKSA9PSAtMSAmJiBlcnJubyA9PSBFSU5U
UikgeyB9CisgICAgICAgICAgICB3aGlsZSAoY2xvc2Uoc29ja2V0c1sxXSkgPT0gLTEgJiYgZXJy
bm8gPT0gRUlOVFIpIHsgfQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgfQor
CisgICAgUmVmUHRyPFdlYlByb2Nlc3NDb25uZWN0aW9uPiBjb25uZWN0aW9uID0gV2ViUHJvY2Vz
c0Nvbm5lY3Rpb246OmNyZWF0ZShzb2NrZXRzWzFdKTsKKyAgICBtX3dlYlByb2Nlc3NDb25uZWN0
aW9ucy5hcHBlbmQoY29ubmVjdGlvbi5yZWxlYXNlKCkpOworCisgICAgQ29yZUlQQzo6QXR0YWNo
bWVudCBjbGllbnRTb2NrZXQoc29ja2V0c1swXSk7CisgICAgbV9jb25uZWN0aW9uLT5zZW5kKE1l
c3NhZ2VzOjpQbHVnaW5Qcm9jZXNzUHJveHk6OkRpZENyZWF0ZVdlYlByb2Nlc3NDb25uZWN0aW9u
KGNsaWVudFNvY2tldCksIDApOwogI2Vsc2UKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50LgotICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIG5vdEltcGxlbWVudGVkKCk7CiAjZW5kaWYKIAog
ICAgIGlmIChOZXRzY2FwZVBsdWdpbk1vZHVsZSogbW9kdWxlID0gbmV0c2NhcGVQbHVnaW5Nb2R1
bGUoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1
Z2luUHJvY2Vzc1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1Bs
dWdpblByb2Nlc3NQcm94eS5jcHAKaW5kZXggMjk3NTVhMS4uYzZjOThhYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1Z2luUHJvY2Vzc1Byb3h5LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHku
Y3BwCkBAIC0zNyw2ICszNyw3IEBACiAjaW5jbHVkZSAiV2ViUGx1Z2luU2l0ZURhdGFNYW5hZ2Vy
LmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vzc01lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiV2ViUHJvY2Vz
c1Byb3h5LmgiCisjaW5jbHVkZSA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRlZC5oPgogCiAjaWYgUExB
VEZPUk0oTUFDKQogI2luY2x1ZGUgIk1hY2hQb3J0LmgiCkBAIC0xMzQsMTAgKzEzNSwxMSBAQCB2
b2lkIFBsdWdpblByb2Nlc3NQcm94eTo6cGx1Z2luUHJvY2Vzc0NyYXNoZWRPckZhaWxlZFRvTGF1
bmNoKCkKICAgICAgICAgUmVmUHRyPE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6OkdldFBsdWdp
blByb2Nlc3NDb25uZWN0aW9uOjpEZWxheWVkUmVwbHk+IHJlcGx5ID0gbV9wZW5kaW5nQ29ubmVj
dGlvblJlcGxpZXMudGFrZUZpcnN0KCk7CiAKICNpZiBQTEFURk9STShNQUMpCi0gICAgICAgIHJl
cGx5LT5zZW5kKENvcmVJUEM6Ok1hY2hQb3J0KDAsIE1BQ0hfTVNHX1RZUEVfTU9WRV9TRU5EKSk7
CisgICAgICAgIHJlcGx5LT5zZW5kKENvcmVJUEM6OkF0dGFjaG1lbnQoMCwgTUFDSF9NU0dfVFlQ
RV9NT1ZFX1NFTkQpKTsKKyNlbGlmIFVTRShVTklYX0RPTUFJTl9TT0NLRVRTKQorICAgICAgICBy
ZXBseS0+c2VuZChDb3JlSVBDOjpBdHRhY2htZW50KCkpOwogI2Vsc2UKLSAgICAgICAgLy8gRklY
TUU6IEltcGxlbWVudC4KLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIG5v
dEltcGxlbWVudGVkKCk7CiAjZW5kaWYKICAgICB9CiAKQEAgLTIyNCwxNyArMjI2LDIxIEBAIHZv
aWQgUGx1Z2luUHJvY2Vzc1Byb3h5OjpkaWRGaW5pc2hMYXVuY2hpbmcoUHJvY2Vzc0xhdW5jaGVy
KiwgQ29yZUlQQzo6Q29ubmVjdGlvCiAgICAgbV9udW1QZW5kaW5nQ29ubmVjdGlvblJlcXVlc3Rz
ID0gMDsKIH0KIAotI2lmIFBMQVRGT1JNKE1BQykKLXZvaWQgUGx1Z2luUHJvY2Vzc1Byb3h5Ojpk
aWRDcmVhdGVXZWJQcm9jZXNzQ29ubmVjdGlvbihjb25zdCBDb3JlSVBDOjpNYWNoUG9ydCYgbWFj
aFBvcnQpCit2b2lkIFBsdWdpblByb2Nlc3NQcm94eTo6ZGlkQ3JlYXRlV2ViUHJvY2Vzc0Nvbm5l
Y3Rpb24oY29uc3QgQ29yZUlQQzo6QXR0YWNobWVudCYgY29ubmVjdGlvbklkZW50aWZpZXIpCiB7
CiAgICAgQVNTRVJUKCFtX3BlbmRpbmdDb25uZWN0aW9uUmVwbGllcy5pc0VtcHR5KCkpOwogCiAg
ICAgLy8gR3JhYiB0aGUgZmlyc3QgcGVuZGluZyBjb25uZWN0aW9uIHJlcGx5LgogICAgIFJlZlB0
cjxNZXNzYWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpHZXRQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbjo6
RGVsYXllZFJlcGx5PiByZXBseSA9IG1fcGVuZGluZ0Nvbm5lY3Rpb25SZXBsaWVzLnRha2VGaXJz
dCgpOwogCi0gICAgcmVwbHktPnNlbmQoQ29yZUlQQzo6TWFjaFBvcnQobWFjaFBvcnQucG9ydCgp
LCBNQUNIX01TR19UWVBFX01PVkVfU0VORCkpOwotfQorI2lmIFBMQVRGT1JNKE1BQykKKyAgICBy
ZXBseS0+c2VuZChDb3JlSVBDOjpBdHRhY2htZW50KGNvbm5lY3Rpb25JZGVudGlmaWVyLnBvcnQo
KSwgTUFDSF9NU0dfVFlQRV9NT1ZFX1NFTkQpKTsKKyNlbGlmIFVTRShVTklYX0RPTUFJTl9TT0NL
RVRTKQorICAgIHJlcGx5LT5zZW5kKGNvbm5lY3Rpb25JZGVudGlmaWVyKTsKKyNlbHNlCisgICAg
bm90SW1wbGVtZW50ZWQoKTsKICNlbmRpZgorfQogCiB2b2lkIFBsdWdpblByb2Nlc3NQcm94eTo6
ZGlkR2V0U2l0ZXNXaXRoRGF0YShjb25zdCBWZWN0b3I8U3RyaW5nPiYgc2l0ZXMsIHVpbnQ2NF90
IGNhbGxiYWNrSUQpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1
Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVn
aW5zL1BsdWdpblByb2Nlc3NQcm94eS5oCmluZGV4IGIwZDgyY2EuLjM0Y2E4MjQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94eS5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94
eS5oCkBAIC05Niw5ICs5Niw3IEBAIHByaXZhdGU6CiAKICAgICAvLyBNZXNzYWdlIGhhbmRsZXJz
CiAgICAgdm9pZCBkaWRSZWNlaXZlUGx1Z2luUHJvY2Vzc1Byb3h5TWVzc2FnZShDb3JlSVBDOjpD
b25uZWN0aW9uKiwgQ29yZUlQQzo6TWVzc2FnZUlELCBDb3JlSVBDOjpBcmd1bWVudERlY29kZXIq
KTsKLSNpZiBQTEFURk9STShNQUMpCi0gICAgdm9pZCBkaWRDcmVhdGVXZWJQcm9jZXNzQ29ubmVj
dGlvbihjb25zdCBDb3JlSVBDOjpNYWNoUG9ydCYpOwotI2VuZGlmCisgICAgdm9pZCBkaWRDcmVh
dGVXZWJQcm9jZXNzQ29ubmVjdGlvbihjb25zdCBDb3JlSVBDOjpBdHRhY2htZW50Jik7CiAgICAg
dm9pZCBkaWRHZXRTaXRlc1dpdGhEYXRhKGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBzaXRlcywgdWlu
dDY0X3QgY2FsbGJhY2tJRCk7CiAgICAgdm9pZCBkaWRDbGVhclNpdGVEYXRhKHVpbnQ2NF90IGNh
bGxiYWNrSUQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUGx1Z2lu
cy9QbHVnaW5Qcm9jZXNzUHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvUGx1Z2lucy9QbHVnaW5Qcm9jZXNzUHJveHkubWVzc2FnZXMuaW4KaW5kZXggN2NhYWMxMS4u
N2I1OWFlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1BsdWdpbnMvUGx1
Z2luUHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9QbHVnaW5zL1BsdWdpblByb2Nlc3NQcm94eS5tZXNzYWdlcy5pbgpAQCAtMjMsOSArMjMsNyBA
QAogI2lmIEVOQUJMRShQTFVHSU5fUFJPQ0VTUykKIAogbWVzc2FnZXMgLT4gUGx1Z2luUHJvY2Vz
c1Byb3h5IHsKLSNpZiBQTEFURk9STShNQUMpCi0gICAgRGlkQ3JlYXRlV2ViUHJvY2Vzc0Nvbm5l
Y3Rpb24oQ29yZUlQQzo6TWFjaFBvcnQgY29ubmVjdGlvbklkZW50aWZpZXIpCi0jZW5kaWYKKyAg
ICBEaWRDcmVhdGVXZWJQcm9jZXNzQ29ubmVjdGlvbihDb3JlSVBDOjpBdHRhY2htZW50IGNvbm5l
Y3Rpb25JZGVudGlmaWVyKQogCiAgICAgRGlkR2V0U2l0ZXNXaXRoRGF0YShWZWN0b3I8V1RGOjpT
dHJpbmc+IHNpdGVzLCB1aW50NjRfdCBjYWxsYmFja0lEKQogICAgIERpZENsZWFyU2l0ZURhdGEo
dWludDY0X3QgY2FsbGJhY2tJRCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUHJveHkubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Byb3h5Lm1lc3NhZ2VzLmluCmluZGV4IDM4MWY3YjcuLjg5NDNmZmMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkubWVzc2FnZXMu
aW4KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5tZXNzYWdl
cy5pbgpAQCAtMjgsNyArMjgsNyBAQCBtZXNzYWdlcyAtPiBXZWJQcm9jZXNzUHJveHkgewogICAg
IFNob3VsZFRlcm1pbmF0ZSgpIC0+IChib29sIHNob3VsZFRlcm1pbmF0ZSkKIAogI2lmIEVOQUJM
RShQTFVHSU5fUFJPQ0VTUykKLSAgICBHZXRQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbihXVEY6OlN0
cmluZyBwbHVnaW5QYXRoKSAtPiAoQ29yZUlQQzo6TWFjaFBvcnQgY29ubmVjdGlvbkhhbmRsZSkg
RGVsYXllZAorICAgIEdldFBsdWdpblByb2Nlc3NDb25uZWN0aW9uKFdURjo6U3RyaW5nIHBsdWdp
blBhdGgpIC0+IChDb3JlSVBDOjpBdHRhY2htZW50IGNvbm5lY3Rpb25IYW5kbGUpIERlbGF5ZWQK
ICAgICBQbHVnaW5TeW5jTWVzc2FnZVNlbmRUaW1lZE91dChXVEY6OlN0cmluZyBwbHVnaW5QYXRo
KQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lu
cy9QbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbk1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlci5jcHAKaW5kZXgg
MzFkZjVmMi4uZmQxOTA2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Q
bHVnaW5zL1BsdWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlci5jcHAKKysrIGIvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblByb2Nlc3NDb25uZWN0aW9uTWFuYWdlci5j
cHAKQEAgLTU2LDIxICs1NiwyMCBAQCBQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbiogUGx1Z2luUHJv
Y2Vzc0Nvbm5lY3Rpb25NYW5hZ2VyOjpnZXRQbHVnaW5Qcm9jZXNzQ29ubmVjdAogICAgICAgICAg
ICAgcmV0dXJuIG1fcGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25zW2ldLmdldCgpOwogICAgIH0KIAot
ICAgIENvcmVJUEM6OkNvbm5lY3Rpb246OklkZW50aWZpZXIgY29ubmVjdGlvbklkZW50aWZpZXI7
Ci0jaWYgUExBVEZPUk0oTUFDKQotICAgIENvcmVJUEM6Ok1hY2hQb3J0IGNvbm5lY3Rpb25NYWNo
UG9ydDsKLQotICAgIGlmICghV2ViUHJvY2Vzczo6c2hhcmVkKCkuY29ubmVjdGlvbigpLT5zZW5k
U3luYyhNZXNzYWdlczo6V2ViUHJvY2Vzc1Byb3h5OjpHZXRQbHVnaW5Qcm9jZXNzQ29ubmVjdGlv
bihwbHVnaW5QYXRoKSwgTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6R2V0UGx1Z2luUHJvY2Vz
c0Nvbm5lY3Rpb246OlJlcGx5KGNvbm5lY3Rpb25NYWNoUG9ydCksIDApKQorICAgIENvcmVJUEM6
OkF0dGFjaG1lbnQgZW5jb2RlZENvbm5lY3Rpb25JZGVudGlmaWVyOworICAgIGlmICghV2ViUHJv
Y2Vzczo6c2hhcmVkKCkuY29ubmVjdGlvbigpLT5zZW5kU3luYyhNZXNzYWdlczo6V2ViUHJvY2Vz
c1Byb3h5OjpHZXRQbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbihwbHVnaW5QYXRoKSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWVzc2FnZXM6Oldl
YlByb2Nlc3NQcm94eTo6R2V0UGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb246OlJlcGx5KGVuY29kZWRD
b25uZWN0aW9uSWRlbnRpZmllciksIDApKQogICAgICAgICByZXR1cm4gMDsKIAotICAgIGNvbm5l
Y3Rpb25JZGVudGlmaWVyID0gY29ubmVjdGlvbk1hY2hQb3J0LnBvcnQoKTsKLSNlbHNlCi0gICAg
Ly8gRklYTUU6IEltcGxlbWVudC4KLSAgICBjb25uZWN0aW9uSWRlbnRpZmllciA9IDA7Ci0gICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0jZW5kaWYKKyNpZiBQTEFURk9STShNQUMpCisgICAgQ29y
ZUlQQzo6Q29ubmVjdGlvbjo6SWRlbnRpZmllciBjb25uZWN0aW9uSWRlbnRpZmllciA9IGVuY29k
ZWRDb25uZWN0aW9uSWRlbnRpZmllci5wb3J0KCk7CiAgICAgaWYgKCFjb25uZWN0aW9uSWRlbnRp
ZmllcikKICAgICAgICAgcmV0dXJuIDA7CisjZWxpZiBVU0UoVU5JWF9ET01BSU5fU09DS0VUUykK
KyAgICBDb3JlSVBDOjpDb25uZWN0aW9uOjpJZGVudGlmaWVyIGNvbm5lY3Rpb25JZGVudGlmaWVy
ID0gZW5jb2RlZENvbm5lY3Rpb25JZGVudGlmaWVyLmZpbGVEZXNjcmlwdG9yKCk7CisgICAgaWYg
KGNvbm5lY3Rpb25JZGVudGlmaWVyID09IC0xKQorICAgICAgICByZXR1cm4gMDsKKyNlbmRpZgog
CiAgICAgUmVmUHRyPFBsdWdpblByb2Nlc3NDb25uZWN0aW9uPiBwbHVnaW5Qcm9jZXNzQ29ubmVj
dGlvbiA9IFBsdWdpblByb2Nlc3NDb25uZWN0aW9uOjpjcmVhdGUodGhpcywgcGx1Z2luUGF0aCwg
Y29ubmVjdGlvbklkZW50aWZpZXIpOwogICAgIG1fcGx1Z2luUHJvY2Vzc0Nvbm5lY3Rpb25zLmFw
cGVuZChwbHVnaW5Qcm9jZXNzQ29ubmVjdGlvbik7Cg==
</data>
<flag name="review"
          id="89696"
          type_id="1"
          status="+"
          setter="andersca"
    />
    <flag name="commit-queue"
          id="89713"
          type_id="3"
          status="-"
          setter="gyuyoung.kim"
    />
          </attachment>
      

    </bug>

</bugzilla>