<?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>41769</bug_id>
          
          <creation_ts>2010-07-07 07:17:42 -0700</creation_ts>
          <short_desc>[Qt] QScriptValue API should have a property flag accessor.</short_desc>
          <delta_ts>2010-07-09 02:21:06 -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>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>31863</blocked>
    
    <blocked>41680</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jędrzej Nowacki">jedrzej.nowacki</reporter>
          <assigned_to name="Jędrzej Nowacki">jedrzej.nowacki</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>hausmann</cc>
    
    <cc>jedrzej.nowacki</cc>
    
    <cc>kent.hansen</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>247540</commentid>
    <comment_count>0</comment_count>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-07-07 07:17:42 -0700</bug_when>
    <thetext>QtScript should provide an API for checking a JS object&apos;s properties flags

see http://doc.trolltech.com/4.6/qscriptvalue.html#propertyFlags</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>247547</commentid>
    <comment_count>1</comment_count>
      <attachid>60733</attachid>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-07-07 07:31:24 -0700</bug_when>
    <thetext>Created attachment 60733
Fix v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>247816</commentid>
    <comment_count>2</comment_count>
    <who name="Caio Marcelo de Oliveira Filho">cmarcelo</who>
    <bug_when>2010-07-07 15:52:17 -0700</bug_when>
    <thetext>Jędrzej, I have a question: since the &apos;Object&apos; property of the global object can be modified and propertyFlags() could be called after that, isn&apos;t &quot;dangerous&quot; to get the Object constructor at this point?

I had a similar situation for isArray(), and ended up extracting the Array constructor and prototype just after the global context was created in QScriptEnginePrivate (C++) ctor, storing them in member variables.

Maybe the same could be done to the Object constructor, or am I missing a difference between those two cases?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248050</commentid>
    <comment_count>3</comment_count>
      <attachid>60733</attachid>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-07-08 00:49:31 -0700</bug_when>
    <thetext>Comment on attachment 60733
Fix v1

(In reply to comment #2)
&gt; Jędrzej, I have a question: since the &apos;Object&apos; property of the global object can be modified and propertyFlags() could be called after that, isn&apos;t &quot;dangerous&quot; to get the Object constructor at this point?
It is. There should be a &quot;fixme&quot; apparently it was lost somehow. Thanks for the review.

&gt; I had a similar situation for isArray(), and ended up extracting the Array constructor and prototype just after the global context was created in QScriptEnginePrivate (C++) ctor, storing them in member variables.
Yes I think keeping a reference to the prototype and to the constructor is a good solution (and maybe only one as JSC doesn&apos;t keep original values).

The same issue is in the QSV::isError(), QSV::isRegExp() functions, I think it will be for an other too. Moreover the QtScript API permits to change global object and in the same time it use it a lot.

From architectural point of view I believe that we should create separate class/struct that represent Original Global Object, It should be created at QScriptEnginePrivate creation time and it should be private for the QSEP.

I will repost the patch with the fixme comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248068</commentid>
    <comment_count>4</comment_count>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-07-08 01:20:29 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; From architectural point of view I believe that we should create separate class/struct that represent Original Global Object, It should be created at QScriptEnginePrivate creation time and it should be private for the QSEP.
I&apos;ve created a bug(41839).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248070</commentid>
    <comment_count>5</comment_count>
      <attachid>60850</attachid>
    <who name="Jędrzej Nowacki">jedrzej.nowacki</who>
    <bug_when>2010-07-08 01:27:13 -0700</bug_when>
    <thetext>Created attachment 60850
fix v1.01

Mostly the same patch, I have added the FIXME.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248805</commentid>
    <comment_count>6</comment_count>
    <who name="Kent Hansen">kent.hansen</who>
    <bug_when>2010-07-09 00:57:18 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Created an attachment (id=60850) [details]
&gt; fix v1.01
&gt; 
&gt; Mostly the same patch, I have added the FIXME.

The way to make it &quot;safe&quot; would be to store a reference to the original getOwnPropertyDescriptor() function at engine construction time (storing the Object constructor is not enough).

The current approach is suboptimal anyway; as the patch says, there should be a C API for getting attributes. I&apos;ve created https://bugs.webkit.org/show_bug.cgi?id=41937 for this.

I think the patch is fine for now. Let&apos;s do it &quot;properly&quot; when the C API arrives.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248849</commentid>
    <comment_count>7</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-07-09 02:21:06 -0700</bug_when>
    <thetext>Committed r62921: &lt;http://trac.webkit.org/changeset/62921&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60733</attachid>
            <date>2010-07-07 07:31:24 -0700</date>
            <delta_ts>2010-07-08 01:27:13 -0700</delta_ts>
            <desc>Fix v1</desc>
            <filename>propFlag.diff</filename>
            <type>text/plain</type>
            <size>11255</size>
            <attacher name="Jędrzej Nowacki">jedrzej.nowacki</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3F0L0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3Jl
L3F0L0NoYW5nZUxvZwppbmRleCA1YTc1YmEzLi5mYjMwMWE3IDEwMDY0NAotLS0gYS9KYXZhU2Ny
aXB0Q29yZS9xdC9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvcXQvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjYgQEAKKzIwMTAtMDctMDcgIEplZHJ6ZWogTm93YWNraSAgPGplZHJ6ZWoubm93
YWNraUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgSW1wbGVtZW50YXRpb24gb2YgdGhlIFFTY3JpcHRWYWx1ZTo6cHJvcGVydHlGbGFn
cyBmdW5jdGlvbi4KKworICAgICAgICBUaGUgZnVuY3Rpb24gcmV0dXJucyB0aGUgZmxhZ3Mgb2Yg
YSBwcm9wZXJ0eSB3aXRoIHRoZSBnaXZlbiBuYW1lLAorICAgICAgICB1c2luZyBhIGdpdmVuIG1v
ZGUgdG8gcmVzb2x2ZSB0aGUgcHJvcGVydHkuIFRoaXMgaXMgYSBzaW1wbGUKKyAgICAgICAgaW1w
bGVtZW50YXRpb24gdGhhdCBpcyBzdWZmaWNpZW50IHRvIHRlc3QgdGhlIFFTY3JpcHRWYWx1ZUl0
ZXJhdG9yLgorCisgICAgICAgIFtRdF0gUVNjcmlwdFZhbHVlIEFQSSBzaG91bGQgaGF2ZSBhIHBy
b3BlcnR5IGZsYWcgYWNjZXNzb3IuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD00MTc2OQorCisgICAgICAgICogYXBpL3FzY3JpcHR2YWx1ZS5jcHA6Cisg
ICAgICAgIChRU2NyaXB0VmFsdWU6OnByb3BlcnR5RmxhZ3MpOgorICAgICAgICAqIGFwaS9xc2Ny
aXB0dmFsdWUuaDoKKyAgICAgICAgKiBhcGkvcXNjcmlwdHZhbHVlX3AuaDoKKyAgICAgICAgKFFT
Y3JpcHRWYWx1ZVByaXZhdGU6OnByb3BlcnR5RmxhZ3MpOgorICAgICAgICAqIHRlc3RzL3FzY3Jp
cHR2YWx1ZS90c3RfcXNjcmlwdHZhbHVlLmNwcDoKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6
OnByb3BlcnR5RmxhZ19kYXRhKToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OnByb3BlcnR5
RmxhZyk6CisgICAgICAgICogdGVzdHMvcXNjcmlwdHZhbHVlL3RzdF9xc2NyaXB0dmFsdWUuaDoK
KwogMjAxMC0wNy0wNSAgSmVkcnplaiBOb3dhY2tpICA8amVkcnplai5ub3dhY2tpQG5va2lhLmNv
bT4KIAogICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KZGlmZiAtLWdpdCBhL0ph
dmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWUuY3BwIGIvSmF2YVNjcmlwdENvcmUvcXQv
YXBpL3FzY3JpcHR2YWx1ZS5jcHAKaW5kZXggYzFkMGZkMy4uZjljYTEyZiAxMDA2NDQKLS0tIGEv
SmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZS5jcHAKKysrIGIvSmF2YVNjcmlwdENv
cmUvcXQvYXBpL3FzY3JpcHR2YWx1ZS5jcHAKQEAgLTc0NCwzICs3NDQsMjUgQEAgdm9pZCBRU2Ny
aXB0VmFsdWU6OnNldFByb3BlcnR5KGNvbnN0IFFTY3JpcHRTdHJpbmcmIG5hbWUsIGNvbnN0IFFT
Y3JpcHRWYWx1ZSYgdmEKIHsKICAgICBkX3B0ci0+c2V0UHJvcGVydHkoUVNjcmlwdFN0cmluZ1By
aXZhdGU6OmdldChuYW1lKS5jb25zdERhdGEoKSwgUVNjcmlwdFZhbHVlUHJpdmF0ZTo6Z2V0KHZh
bHVlKSwgZmxhZ3MpOwogfQorCisvKiEKKyAgUmV0dXJucyB0aGUgZmxhZ3Mgb2YgdGhlIHByb3Bl
cnR5IHdpdGggdGhlIGdpdmVuIFxhIG5hbWUsIHVzaW5nIHRoZQorICBnaXZlbiBcYSBtb2RlIHRv
IHJlc29sdmUgdGhlIHByb3BlcnR5LgorCisgIFxzYSBwcm9wZXJ0eSgpCisqLworUVNjcmlwdFZh
bHVlOjpQcm9wZXJ0eUZsYWdzIFFTY3JpcHRWYWx1ZTo6cHJvcGVydHlGbGFncyhjb25zdCBRU3Ry
aW5nJiBuYW1lLCBjb25zdCBSZXNvbHZlRmxhZ3MmIG1vZGUpIGNvbnN0Cit7CisgICAgcmV0dXJu
IGRfcHRyLT5wcm9wZXJ0eUZsYWdzKG5hbWUsIG1vZGUpOworfQorCisvKiEKKyAgUmV0dXJucyB0
aGUgZmxhZ3Mgb2YgdGhlIHByb3BlcnR5IHdpdGggdGhlIGdpdmVuIFxhIG5hbWUsIHVzaW5nIHRo
ZQorICBnaXZlbiBcYSBtb2RlIHRvIHJlc29sdmUgdGhlIHByb3BlcnR5LgorCisgIFxzYSBwcm9w
ZXJ0eSgpCisqLworUVNjcmlwdFZhbHVlOjpQcm9wZXJ0eUZsYWdzIFFTY3JpcHRWYWx1ZTo6cHJv
cGVydHlGbGFncyhjb25zdCBRU2NyaXB0U3RyaW5nJiBuYW1lLCBjb25zdCBSZXNvbHZlRmxhZ3Mm
IG1vZGUpIGNvbnN0Cit7CisgICAgcmV0dXJuIGRfcHRyLT5wcm9wZXJ0eUZsYWdzKFFTY3JpcHRT
dHJpbmdQcml2YXRlOjpnZXQobmFtZSkuY29uc3REYXRhKCksIG1vZGUpOworfQpkaWZmIC0tZ2l0
IGEvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZS5oIGIvSmF2YVNjcmlwdENvcmUv
cXQvYXBpL3FzY3JpcHR2YWx1ZS5oCmluZGV4IGI4NWM4NDUuLjRiMTM2OTEgMTAwNjQ0Ci0tLSBh
L0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWUuaAorKysgYi9KYXZhU2NyaXB0Q29y
ZS9xdC9hcGkvcXNjcmlwdHZhbHVlLmgKQEAgLTk2LDYgKzk2LDkgQEAgcHVibGljOgogICAgIHZv
aWQgc2V0UHJvcGVydHkocXVpbnQzMiBhcnJheUluZGV4LCBjb25zdCBRU2NyaXB0VmFsdWUmIHZh
bHVlLCBjb25zdCBQcm9wZXJ0eUZsYWdzJiBmbGFncyA9IEtlZXBFeGlzdGluZ0ZsYWdzKTsKICAg
ICB2b2lkIHNldFByb3BlcnR5KGNvbnN0IFFTY3JpcHRTdHJpbmcmIG5hbWUsIGNvbnN0IFFTY3Jp
cHRWYWx1ZSYgdmFsdWUsIGNvbnN0IFByb3BlcnR5RmxhZ3MmIGZsYWdzID0gS2VlcEV4aXN0aW5n
RmxhZ3MpOwogCisgICAgUHJvcGVydHlGbGFncyBwcm9wZXJ0eUZsYWdzKGNvbnN0IFFTdHJpbmcm
IG5hbWUsIGNvbnN0IFJlc29sdmVGbGFncyYgbW9kZSA9IFJlc29sdmVQcm90b3R5cGUpIGNvbnN0
OworICAgIFByb3BlcnR5RmxhZ3MgcHJvcGVydHlGbGFncyhjb25zdCBRU2NyaXB0U3RyaW5nJiBu
YW1lLCBjb25zdCBSZXNvbHZlRmxhZ3MmIG1vZGUgPSBSZXNvbHZlUHJvdG90eXBlKSBjb25zdDsK
KwogICAgIFFTY3JpcHRFbmdpbmUqIGVuZ2luZSgpIGNvbnN0OwogCiAgICAgYm9vbCBpc1ZhbGlk
KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdHZhbHVl
X3AuaCBiL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWVfcC5oCmluZGV4IDkyZjRi
MGEuLjRhNjJkNDggMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFs
dWVfcC5oCisrKyBiL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWVfcC5oCkBAIC0x
NDAsNiArMTQwLDEwIEBAIHB1YmxpYzoKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgogICAgIGlu
bGluZSB2b2lkIHNldFByb3BlcnR5KFQgbmFtZSwgUVNjcmlwdFZhbHVlUHJpdmF0ZSogdmFsdWUs
IGNvbnN0IFFTY3JpcHRWYWx1ZTo6UHJvcGVydHlGbGFncyYgZmxhZ3MpOwogCisgICAgUVNjcmlw
dFZhbHVlOjpQcm9wZXJ0eUZsYWdzIHByb3BlcnR5RmxhZ3MoY29uc3QgUVN0cmluZyYgbmFtZSwg
Y29uc3QgUVNjcmlwdFZhbHVlOjpSZXNvbHZlRmxhZ3MmIG1vZGUpOworICAgIFFTY3JpcHRWYWx1
ZTo6UHJvcGVydHlGbGFncyBwcm9wZXJ0eUZsYWdzKGNvbnN0IFFTY3JpcHRTdHJpbmdQcml2YXRl
KiBuYW1lLCBjb25zdCBRU2NyaXB0VmFsdWU6OlJlc29sdmVGbGFncyYgbW9kZSk7CisgICAgUVNj
cmlwdFZhbHVlOjpQcm9wZXJ0eUZsYWdzIHByb3BlcnR5RmxhZ3MoY29uc3QgSlNTdHJpbmdSZWYg
bmFtZSwgY29uc3QgUVNjcmlwdFZhbHVlOjpSZXNvbHZlRmxhZ3MmIG1vZGUpOworCiAgICAgaW5s
aW5lIFFTY3JpcHRWYWx1ZVByaXZhdGUqIGNhbGwoY29uc3QgUVNjcmlwdFZhbHVlUHJpdmF0ZSog
LCBjb25zdCBRU2NyaXB0VmFsdWVMaXN0JiBhcmdzKTsKIAogICAgIGlubGluZSBvcGVyYXRvciBK
U1ZhbHVlUmVmKCkgY29uc3Q7CkBAIC05NzQsNiArOTc4LDc0IEBAIGlubGluZSB2b2lkIFFTY3Jp
cHRWYWx1ZVByaXZhdGU6OnNldFByb3BlcnR5KFQgbmFtZSwgUVNjcmlwdFZhbHVlUHJpdmF0ZSog
dmFsdWUsCiAgICAgbV9lbmdpbmUtPnNldEV4Y2VwdGlvbihleGNlcHRpb24pOwogfQogCitpbmxp
bmUgUVNjcmlwdFZhbHVlOjpQcm9wZXJ0eUZsYWdzIFFTY3JpcHRWYWx1ZVByaXZhdGU6OnByb3Bl
cnR5RmxhZ3MoY29uc3QgUVN0cmluZyYgbmFtZSwgY29uc3QgUVNjcmlwdFZhbHVlOjpSZXNvbHZl
RmxhZ3MmIG1vZGUpCit7CisgICAgSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IHByb3BlcnR5TmFt
ZShBZG9wdCwgUVNjcmlwdENvbnZlcnRlcjo6dG9TdHJpbmcobmFtZSkpOworICAgIHJldHVybiBw
cm9wZXJ0eUZsYWdzKHByb3BlcnR5TmFtZS5nZXQoKSwgbW9kZSk7Cit9CisKK2lubGluZSBRU2Ny
aXB0VmFsdWU6OlByb3BlcnR5RmxhZ3MgUVNjcmlwdFZhbHVlUHJpdmF0ZTo6cHJvcGVydHlGbGFn
cyhjb25zdCBRU2NyaXB0U3RyaW5nUHJpdmF0ZSogbmFtZSwgY29uc3QgUVNjcmlwdFZhbHVlOjpS
ZXNvbHZlRmxhZ3MmIG1vZGUpCit7CisgICAgcmV0dXJuIHByb3BlcnR5RmxhZ3MoKm5hbWUsIG1v
ZGUpOworfQorCitpbmxpbmUgUVNjcmlwdFZhbHVlOjpQcm9wZXJ0eUZsYWdzIFFTY3JpcHRWYWx1
ZVByaXZhdGU6OnByb3BlcnR5RmxhZ3MoSlNTdHJpbmdSZWYgbmFtZSwgY29uc3QgUVNjcmlwdFZh
bHVlOjpSZXNvbHZlRmxhZ3MmIG1vZGUpCit7CisgICAgdW5zaWduZWQgZmxhZ3MgPSAwOworICAg
IGlmICghaXNPYmplY3QoKSkKKyAgICAgICAgcmV0dXJuIFFTY3JpcHRWYWx1ZTo6UHJvcGVydHlG
bGFncyhmbGFncyk7CisKKyAgICAvLyBGSVhNRSBpdCBjb3VsZCBiZSBmYXN0ZXIgYW5kIG5pY2Vy
LCBidXQgbmV3IEpTQyBDIEFQSSBzaG91bGQgYmUgY3JlYXRlZC4KKyAgICBzdGF0aWMgSlNTdHJp
bmdSZWYgb2JqZWN0TmFtZSA9IFFTY3JpcHRDb252ZXJ0ZXI6OnRvU3RyaW5nKCJPYmplY3QiKTsK
KyAgICBzdGF0aWMgSlNTdHJpbmdSZWYgcHJvcGVydHlEZXNjcmlwdG9yTmFtZSA9IFFTY3JpcHRD
b252ZXJ0ZXI6OnRvU3RyaW5nKCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiKTsKKworICAgIEpT
VmFsdWVSZWYgZXhjZXB0aW9uID0gMDsKKyAgICBKU09iamVjdFJlZiBnbG9iYWxPYmplY3QgPSBK
U0NvbnRleHRHZXRHbG9iYWxPYmplY3QoKm1fZW5naW5lKTsKKyAgICBKU1ZhbHVlUmVmIG9iamVj
dENvbnN0cnVjdG9yID0gSlNPYmplY3RHZXRQcm9wZXJ0eSgqbV9lbmdpbmUsIGdsb2JhbE9iamVj
dCwgb2JqZWN0TmFtZSwgJmV4Y2VwdGlvbik7CisgICAgUV9BU1NFUlQoSlNWYWx1ZUlzT2JqZWN0
KCptX2VuZ2luZSwgb2JqZWN0Q29uc3RydWN0b3IpKTsKKyAgICBKU1ZhbHVlUmVmIHByb3BlcnR5
RGVzY3JpcHRvckdldHRlciA9IEpTT2JqZWN0R2V0UHJvcGVydHkoKm1fZW5naW5lLCBjb25zdF9j
YXN0PEpTT2JqZWN0UmVmPihvYmplY3RDb25zdHJ1Y3RvciksIHByb3BlcnR5RGVzY3JpcHRvck5h
bWUsICZleGNlcHRpb24pOworICAgIFFfQVNTRVJUKEpTVmFsdWVJc09iamVjdCgqbV9lbmdpbmUs
IHByb3BlcnR5RGVzY3JpcHRvckdldHRlcikpOworCisgICAgSlNWYWx1ZVJlZiBhcmd1bWVudHNb
XSA9IHsgKnRoaXMsIEpTVmFsdWVNYWtlU3RyaW5nKCptX2VuZ2luZSwgbmFtZSkgfTsKKyAgICBK
U09iamVjdFJlZiBwcm9wZXJ0eURlc2NyaXB0b3IKKyAgICAgICAgICAgID0gY29uc3RfY2FzdDxK
U09iamVjdFJlZj4oSlNPYmplY3RDYWxsQXNGdW5jdGlvbigqbV9lbmdpbmUsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdF9j
YXN0PEpTT2JqZWN0UmVmPihwcm9wZXJ0eURlc2NyaXB0b3JHZXR0ZXIpLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdGhpc09i
amVjdCAqLyAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogYXJndW1lbnRDb3VudCAqLyAyLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJndW1lbnRzLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
JmV4Y2VwdGlvbikpOworICAgIGlmIChleGNlcHRpb24pIHsKKyAgICAgICAgLy8gSW52YWxpZCBw
cm9wZXJ0eS4KKyAgICAgICAgcmV0dXJuIFFTY3JpcHRWYWx1ZTo6UHJvcGVydHlGbGFncyhmbGFn
cyk7CisgICAgfQorCisgICAgaWYgKCFKU1ZhbHVlSXNPYmplY3QoKm1fZW5naW5lLCBwcm9wZXJ0
eURlc2NyaXB0b3IpKSB7CisgICAgICAgIC8vIFByb3BlcnR5IGlzbid0IG93bmVkIGJ5IHRoaXMg
b2JqZWN0LgorICAgICAgICBKU09iamVjdFJlZiBwcm90bzsKKyAgICAgICAgaWYgKG1vZGUgPT0g
UVNjcmlwdFZhbHVlOjpSZXNvbHZlTG9jYWwKKyAgICAgICAgICAgICAgICB8fCAoKHByb3RvID0g
Y29uc3RfY2FzdDxKU09iamVjdFJlZj4oSlNPYmplY3RHZXRQcm90b3R5cGUoKm1fZW5naW5lLCAq
dGhpcykpKSAmJiBKU1ZhbHVlSXNOdWxsKCptX2VuZ2luZSwgcHJvdG8pKSkgeworICAgICAgICAg
ICAgcmV0dXJuIFFTY3JpcHRWYWx1ZTo6UHJvcGVydHlGbGFncyhmbGFncyk7CisgICAgICAgIH0K
KyAgICAgICAgUVNjcmlwdFZhbHVlUHJpdmF0ZSBwKGVuZ2luZSgpLCBwcm90byk7CisgICAgICAg
IHJldHVybiBwLnByb3BlcnR5RmxhZ3MobmFtZSwgUVNjcmlwdFZhbHVlOjpSZXNvbHZlUHJvdG90
eXBlKTsKKyAgICB9CisKKyAgICBzdGF0aWMgSlNTdHJpbmdSZWYgd3JpdGFibGVOYW1lID0gUVNj
cmlwdENvbnZlcnRlcjo6dG9TdHJpbmcoIndyaXRhYmxlIik7CisgICAgc3RhdGljIEpTU3RyaW5n
UmVmIGNvbmZpZ3VyYWJsZU5hbWUgPSBRU2NyaXB0Q29udmVydGVyOjp0b1N0cmluZygiY29uZmln
dXJhYmxlIik7CisgICAgc3RhdGljIEpTU3RyaW5nUmVmIGVudW1lcmFibGVOYW1lID0gUVNjcmlw
dENvbnZlcnRlcjo6dG9TdHJpbmcoImVudW1lcmFibGUiKTsKKworICAgIGJvb2wgcmVhZE9ubHkg
PSAhSlNWYWx1ZVRvQm9vbGVhbigqbV9lbmdpbmUsIEpTT2JqZWN0R2V0UHJvcGVydHkoKm1fZW5n
aW5lLCBwcm9wZXJ0eURlc2NyaXB0b3IsIHdyaXRhYmxlTmFtZSwgJmV4Y2VwdGlvbikpOworICAg
IGlmICghZXhjZXB0aW9uICYmIHJlYWRPbmx5KQorICAgICAgICBmbGFncyB8PSBRU2NyaXB0VmFs
dWU6OlJlYWRPbmx5OworICAgIGJvb2wgdW5kZWxldGFibGUgPSAhSlNWYWx1ZVRvQm9vbGVhbigq
bV9lbmdpbmUsIEpTT2JqZWN0R2V0UHJvcGVydHkoKm1fZW5naW5lLCBwcm9wZXJ0eURlc2NyaXB0
b3IsIGNvbmZpZ3VyYWJsZU5hbWUsICZleGNlcHRpb24pKTsKKyAgICBpZiAoIWV4Y2VwdGlvbiAm
JiB1bmRlbGV0YWJsZSkKKyAgICAgICAgZmxhZ3MgfD0gUVNjcmlwdFZhbHVlOjpVbmRlbGV0YWJs
ZTsKKyAgICBib29sIHNraXBJbkVudW0gPSAhSlNWYWx1ZVRvQm9vbGVhbigqbV9lbmdpbmUsIEpT
T2JqZWN0R2V0UHJvcGVydHkoKm1fZW5naW5lLCBwcm9wZXJ0eURlc2NyaXB0b3IsIGVudW1lcmFi
bGVOYW1lLCAmZXhjZXB0aW9uKSk7CisgICAgaWYgKCFleGNlcHRpb24gJiYgc2tpcEluRW51bSkK
KyAgICAgICAgZmxhZ3MgfD0gUVNjcmlwdFZhbHVlOjpTa2lwSW5FbnVtZXJhdGlvbjsKKworICAg
IHJldHVybiBRU2NyaXB0VmFsdWU6OlByb3BlcnR5RmxhZ3MoZmxhZ3MpOworfQogCiBRU2NyaXB0
VmFsdWVQcml2YXRlKiBRU2NyaXB0VmFsdWVQcml2YXRlOjpjYWxsKGNvbnN0IFFTY3JpcHRWYWx1
ZVByaXZhdGUqLCBjb25zdCBRU2NyaXB0VmFsdWVMaXN0JiBhcmdzKQogewpkaWZmIC0tZ2l0IGEv
SmF2YVNjcmlwdENvcmUvcXQvdGVzdHMvcXNjcmlwdHZhbHVlL3RzdF9xc2NyaXB0dmFsdWUuY3Bw
IGIvSmF2YVNjcmlwdENvcmUvcXQvdGVzdHMvcXNjcmlwdHZhbHVlL3RzdF9xc2NyaXB0dmFsdWUu
Y3BwCmluZGV4IDEyODYyM2MuLjczYjU3ZGMgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3F0
L3Rlc3RzL3FzY3JpcHR2YWx1ZS90c3RfcXNjcmlwdHZhbHVlLmNwcAorKysgYi9KYXZhU2NyaXB0
Q29yZS9xdC90ZXN0cy9xc2NyaXB0dmFsdWUvdHN0X3FzY3JpcHR2YWx1ZS5jcHAKQEAgLTEyMTks
NCArMTIxOSw0NiBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnNldFByb3BlcnR5KCkKICAgICBR
VkVSSUZZKHNraXBJbkVudW1lcmF0aW9uICE9IGVuZ2luZS5ldmFsdWF0ZSgiby5wcm9wZXJ0eUlz
RW51bWVyYWJsZSgnZGVmaW5lZDInKSIpLnRvQm9vbCgpKTsKIH0KIAordm9pZCB0c3RfUVNjcmlw
dFZhbHVlOjpwcm9wZXJ0eUZsYWdfZGF0YSgpCit7CisgICAgUVRlc3Q6OmFkZENvbHVtbjxRU3Ry
aW5nPigibmFtZSIpOworICAgIFFUZXN0OjphZGRDb2x1bW48aW50PigiZmxhZyIpOworCisgICAg
UVRlc3Q6Om5ld1JvdygiP0NyQGp6aSElJCIpIDw8ICI/Q3JAanppISUkIiA8PCBzdGF0aWNfY2Fz
dDxpbnQ+KDApOworICAgIFFUZXN0OjpuZXdSb3coIlJlYWRPbmx5IikgPDwgIlJlYWRPbmx5IiA8
PCBzdGF0aWNfY2FzdDxpbnQ+KFFTY3JpcHRWYWx1ZTo6UmVhZE9ubHkpOworICAgIFFUZXN0Ojpu
ZXdSb3coIlVuZGVsZXRhYmxlIikgPDwgIlVuZGVsZXRhYmxlIiA8PCBzdGF0aWNfY2FzdDxpbnQ+
KFFTY3JpcHRWYWx1ZTo6VW5kZWxldGFibGUpOworICAgIFFUZXN0OjpuZXdSb3coIlNraXBJbkVu
dW1lcmF0aW9uIikgPDwgIlNraXBJbkVudW1lcmF0aW9uIiA8PCBzdGF0aWNfY2FzdDxpbnQ+KFFT
Y3JpcHRWYWx1ZTo6U2tpcEluRW51bWVyYXRpb24pOworICAgIFFUZXN0OjpuZXdSb3coIlJlYWRP
bmx5IHwgVW5kZWxldGFibGUiKSA8PCAiUmVhZE9ubHlfVW5kZWxldGFibGUiIDw8IHN0YXRpY19j
YXN0PGludD4oUVNjcmlwdFZhbHVlOjpSZWFkT25seSB8IFFTY3JpcHRWYWx1ZTo6VW5kZWxldGFi
bGUpOworICAgIFFUZXN0OjpuZXdSb3coIlJlYWRPbmx5IHwgU2tpcEluRW51bWVyYXRpb24iKSA8
PCAiUmVhZE9ubHlfU2tpcEluRW51bWVyYXRpb24iIDw8IHN0YXRpY19jYXN0PGludD4oUVNjcmlw
dFZhbHVlOjpSZWFkT25seSB8IFFTY3JpcHRWYWx1ZTo6U2tpcEluRW51bWVyYXRpb24pOworICAg
IFFUZXN0OjpuZXdSb3coIlVuZGVsZXRhYmxlIHwgU2tpcEluRW51bWVyYXRpb24iKSA8PCAiVW5k
ZWxldGFibGVfU2tpcEluRW51bWVyYXRpb24iIDw8IHN0YXRpY19jYXN0PGludD4oUVNjcmlwdFZh
bHVlOjpVbmRlbGV0YWJsZSB8IFFTY3JpcHRWYWx1ZTo6U2tpcEluRW51bWVyYXRpb24pOworICAg
IFFUZXN0OjpuZXdSb3coIlJlYWRPbmx5IHwgVW5kZWxldGFibGUgfCBTa2lwSW5FbnVtZXJhdGlv
biIpIDw8ICJSZWFkT25seV9VbmRlbGV0YWJsZV9Ta2lwSW5FbnVtZXJhdGlvbiIgPDwgc3RhdGlj
X2Nhc3Q8aW50PihRU2NyaXB0VmFsdWU6OlJlYWRPbmx5IHwgUVNjcmlwdFZhbHVlOjpVbmRlbGV0
YWJsZSB8IFFTY3JpcHRWYWx1ZTo6U2tpcEluRW51bWVyYXRpb24pOworfQorCit2b2lkIHRzdF9R
U2NyaXB0VmFsdWU6OnByb3BlcnR5RmxhZygpCit7CisgICAgUVNjcmlwdEVuZ2luZSBlbmdpbmU7
CisgICAgUUZFVENIKFFTdHJpbmcsIG5hbWUpOworICAgIFFGRVRDSChpbnQsIGZsYWcpOworICAg
IGNvbnN0IFFTY3JpcHRTdHJpbmcgbmFtZUhhbmRsZSA9IGVuZ2luZS50b1N0cmluZ0hhbmRsZShu
YW1lKTsKKyAgICBjb25zdCBRU3RyaW5nIHByb3RvTmFtZSA9ICJwcm90byIgKyBuYW1lOworICAg
IGNvbnN0IFFTY3JpcHRTdHJpbmcgcHJvdG9OYW1lSGFuZGxlID0gZW5naW5lLnRvU3RyaW5nSGFu
ZGxlKHByb3RvTmFtZSk7CisKKyAgICBRU2NyaXB0VmFsdWUgcHJvdG8gPSBlbmdpbmUubmV3T2Jq
ZWN0KCk7CisgICAgUVNjcmlwdFZhbHVlIG9iamVjdCA9IGVuZ2luZS5uZXdPYmplY3QoKTsKKyAg
ICBvYmplY3Quc2V0UHJvdG90eXBlKHByb3RvKTsKKworICAgIHByb3RvLnNldFByb3BlcnR5KHBy
b3RvTmFtZSwgUVNjcmlwdFZhbHVlKDEyNDgxNiksIFFTY3JpcHRWYWx1ZTo6UHJvcGVydHlGbGFn
KGZsYWcpKTsKKyAgICBvYmplY3Quc2V0UHJvcGVydHkobmFtZSwgUVNjcmlwdFZhbHVlKDEyNDgx
NiksIFFTY3JpcHRWYWx1ZTo6UHJvcGVydHlGbGFnKGZsYWcpKTsKKworICAgIC8vIENoZWNrIHVz
aW5nIFFTdHJpbmcgbmFtZQorICAgIFFDT01QQVJFKG9iamVjdC5wcm9wZXJ0eUZsYWdzKG5hbWUp
LCBRU2NyaXB0VmFsdWU6OlByb3BlcnR5RmxhZyhmbGFnKSk7CisgICAgUUNPTVBBUkUob2JqZWN0
LnByb3BlcnR5RmxhZ3MocHJvdG9OYW1lLCBRU2NyaXB0VmFsdWU6OlJlc29sdmVQcm90b3R5cGUp
LCBRU2NyaXB0VmFsdWU6OlByb3BlcnR5RmxhZyhmbGFnKSk7CisgICAgUVZFUklGWSghb2JqZWN0
LnByb3BlcnR5RmxhZ3MocHJvdG9OYW1lLCBRU2NyaXB0VmFsdWU6OlJlc29sdmVMb2NhbCkpOwor
CisgICAgLy8gQ2hlY2sgdXNpbmcgUVNjcmlwdFN0cmluZyBuYW1lCisgICAgUUNPTVBBUkUob2Jq
ZWN0LnByb3BlcnR5RmxhZ3MobmFtZUhhbmRsZSksIFFTY3JpcHRWYWx1ZTo6UHJvcGVydHlGbGFn
KGZsYWcpKTsKKyAgICBRQ09NUEFSRShvYmplY3QucHJvcGVydHlGbGFncyhwcm90b05hbWVIYW5k
bGUsIFFTY3JpcHRWYWx1ZTo6UmVzb2x2ZVByb3RvdHlwZSksIFFTY3JpcHRWYWx1ZTo6UHJvcGVy
dHlGbGFnKGZsYWcpKTsKKyAgICBRVkVSSUZZKCFvYmplY3QucHJvcGVydHlGbGFncyhwcm90b05h
bWVIYW5kbGUsIFFTY3JpcHRWYWx1ZTo6UmVzb2x2ZUxvY2FsKSk7Cit9CisKIFFURVNUX01BSU4o
dHN0X1FTY3JpcHRWYWx1ZSkKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3Fz
Y3JpcHR2YWx1ZS90c3RfcXNjcmlwdHZhbHVlLmggYi9KYXZhU2NyaXB0Q29yZS9xdC90ZXN0cy9x
c2NyaXB0dmFsdWUvdHN0X3FzY3JpcHR2YWx1ZS5oCmluZGV4IDE2MzZhMzQuLjYxMDg0MjMgMTAw
NjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3FzY3JpcHR2YWx1ZS90c3RfcXNjcmlw
dHZhbHVlLmgKKysrIGIvSmF2YVNjcmlwdENvcmUvcXQvdGVzdHMvcXNjcmlwdHZhbHVlL3RzdF9x
c2NyaXB0dmFsdWUuaApAQCAtNTgsNiArNTgsOCBAQCBwcml2YXRlIHNsb3RzOgogICAgIHZvaWQg
c2V0UHJvcGVydHkoKTsKICAgICB2b2lkIGdldFNldFByb3BlcnR5KCk7CiAgICAgdm9pZCBnZXRQ
cm9wZXJ0eVJlc29sdmVGbGFnKCk7CisgICAgdm9pZCBwcm9wZXJ0eUZsYWdfZGF0YSgpOworICAg
IHZvaWQgcHJvcGVydHlGbGFnKCk7CiAKICAgICAvLyBHZW5lcmF0ZWQgdGVzdCBmdW5jdGlvbnMu
CiAgICAgdm9pZCBpc0Jvb2xfZGF0YSgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60850</attachid>
            <date>2010-07-08 01:27:13 -0700</date>
            <delta_ts>2010-07-09 02:18:04 -0700</delta_ts>
            <desc>fix v1.01</desc>
            <filename>propFlag.diff</filename>
            <type>text/plain</type>
            <size>11330</size>
            <attacher name="Jędrzej Nowacki">jedrzej.nowacki</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3F0L0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3Jl
L3F0L0NoYW5nZUxvZwppbmRleCA1YTc1YmEzLi5mYjMwMWE3IDEwMDY0NAotLS0gYS9KYXZhU2Ny
aXB0Q29yZS9xdC9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvcXQvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjYgQEAKKzIwMTAtMDctMDcgIEplZHJ6ZWogTm93YWNraSAgPGplZHJ6ZWoubm93
YWNraUBub2tpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgSW1wbGVtZW50YXRpb24gb2YgdGhlIFFTY3JpcHRWYWx1ZTo6cHJvcGVydHlGbGFn
cyBmdW5jdGlvbi4KKworICAgICAgICBUaGUgZnVuY3Rpb24gcmV0dXJucyB0aGUgZmxhZ3Mgb2Yg
YSBwcm9wZXJ0eSB3aXRoIHRoZSBnaXZlbiBuYW1lLAorICAgICAgICB1c2luZyBhIGdpdmVuIG1v
ZGUgdG8gcmVzb2x2ZSB0aGUgcHJvcGVydHkuIFRoaXMgaXMgYSBzaW1wbGUKKyAgICAgICAgaW1w
bGVtZW50YXRpb24gdGhhdCBpcyBzdWZmaWNpZW50IHRvIHRlc3QgdGhlIFFTY3JpcHRWYWx1ZUl0
ZXJhdG9yLgorCisgICAgICAgIFtRdF0gUVNjcmlwdFZhbHVlIEFQSSBzaG91bGQgaGF2ZSBhIHBy
b3BlcnR5IGZsYWcgYWNjZXNzb3IuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD00MTc2OQorCisgICAgICAgICogYXBpL3FzY3JpcHR2YWx1ZS5jcHA6Cisg
ICAgICAgIChRU2NyaXB0VmFsdWU6OnByb3BlcnR5RmxhZ3MpOgorICAgICAgICAqIGFwaS9xc2Ny
aXB0dmFsdWUuaDoKKyAgICAgICAgKiBhcGkvcXNjcmlwdHZhbHVlX3AuaDoKKyAgICAgICAgKFFT
Y3JpcHRWYWx1ZVByaXZhdGU6OnByb3BlcnR5RmxhZ3MpOgorICAgICAgICAqIHRlc3RzL3FzY3Jp
cHR2YWx1ZS90c3RfcXNjcmlwdHZhbHVlLmNwcDoKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6
OnByb3BlcnR5RmxhZ19kYXRhKToKKyAgICAgICAgKHRzdF9RU2NyaXB0VmFsdWU6OnByb3BlcnR5
RmxhZyk6CisgICAgICAgICogdGVzdHMvcXNjcmlwdHZhbHVlL3RzdF9xc2NyaXB0dmFsdWUuaDoK
KwogMjAxMC0wNy0wNSAgSmVkcnplaiBOb3dhY2tpICA8amVkcnplai5ub3dhY2tpQG5va2lhLmNv
bT4KIAogICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KZGlmZiAtLWdpdCBhL0ph
dmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWUuY3BwIGIvSmF2YVNjcmlwdENvcmUvcXQv
YXBpL3FzY3JpcHR2YWx1ZS5jcHAKaW5kZXggYzFkMGZkMy4uZjljYTEyZiAxMDA2NDQKLS0tIGEv
SmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZS5jcHAKKysrIGIvSmF2YVNjcmlwdENv
cmUvcXQvYXBpL3FzY3JpcHR2YWx1ZS5jcHAKQEAgLTc0NCwzICs3NDQsMjUgQEAgdm9pZCBRU2Ny
aXB0VmFsdWU6OnNldFByb3BlcnR5KGNvbnN0IFFTY3JpcHRTdHJpbmcmIG5hbWUsIGNvbnN0IFFT
Y3JpcHRWYWx1ZSYgdmEKIHsKICAgICBkX3B0ci0+c2V0UHJvcGVydHkoUVNjcmlwdFN0cmluZ1By
aXZhdGU6OmdldChuYW1lKS5jb25zdERhdGEoKSwgUVNjcmlwdFZhbHVlUHJpdmF0ZTo6Z2V0KHZh
bHVlKSwgZmxhZ3MpOwogfQorCisvKiEKKyAgUmV0dXJucyB0aGUgZmxhZ3Mgb2YgdGhlIHByb3Bl
cnR5IHdpdGggdGhlIGdpdmVuIFxhIG5hbWUsIHVzaW5nIHRoZQorICBnaXZlbiBcYSBtb2RlIHRv
IHJlc29sdmUgdGhlIHByb3BlcnR5LgorCisgIFxzYSBwcm9wZXJ0eSgpCisqLworUVNjcmlwdFZh
bHVlOjpQcm9wZXJ0eUZsYWdzIFFTY3JpcHRWYWx1ZTo6cHJvcGVydHlGbGFncyhjb25zdCBRU3Ry
aW5nJiBuYW1lLCBjb25zdCBSZXNvbHZlRmxhZ3MmIG1vZGUpIGNvbnN0Cit7CisgICAgcmV0dXJu
IGRfcHRyLT5wcm9wZXJ0eUZsYWdzKG5hbWUsIG1vZGUpOworfQorCisvKiEKKyAgUmV0dXJucyB0
aGUgZmxhZ3Mgb2YgdGhlIHByb3BlcnR5IHdpdGggdGhlIGdpdmVuIFxhIG5hbWUsIHVzaW5nIHRo
ZQorICBnaXZlbiBcYSBtb2RlIHRvIHJlc29sdmUgdGhlIHByb3BlcnR5LgorCisgIFxzYSBwcm9w
ZXJ0eSgpCisqLworUVNjcmlwdFZhbHVlOjpQcm9wZXJ0eUZsYWdzIFFTY3JpcHRWYWx1ZTo6cHJv
cGVydHlGbGFncyhjb25zdCBRU2NyaXB0U3RyaW5nJiBuYW1lLCBjb25zdCBSZXNvbHZlRmxhZ3Mm
IG1vZGUpIGNvbnN0Cit7CisgICAgcmV0dXJuIGRfcHRyLT5wcm9wZXJ0eUZsYWdzKFFTY3JpcHRT
dHJpbmdQcml2YXRlOjpnZXQobmFtZSkuY29uc3REYXRhKCksIG1vZGUpOworfQpkaWZmIC0tZ2l0
IGEvSmF2YVNjcmlwdENvcmUvcXQvYXBpL3FzY3JpcHR2YWx1ZS5oIGIvSmF2YVNjcmlwdENvcmUv
cXQvYXBpL3FzY3JpcHR2YWx1ZS5oCmluZGV4IGI4NWM4NDUuLjRiMTM2OTEgMTAwNjQ0Ci0tLSBh
L0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWUuaAorKysgYi9KYXZhU2NyaXB0Q29y
ZS9xdC9hcGkvcXNjcmlwdHZhbHVlLmgKQEAgLTk2LDYgKzk2LDkgQEAgcHVibGljOgogICAgIHZv
aWQgc2V0UHJvcGVydHkocXVpbnQzMiBhcnJheUluZGV4LCBjb25zdCBRU2NyaXB0VmFsdWUmIHZh
bHVlLCBjb25zdCBQcm9wZXJ0eUZsYWdzJiBmbGFncyA9IEtlZXBFeGlzdGluZ0ZsYWdzKTsKICAg
ICB2b2lkIHNldFByb3BlcnR5KGNvbnN0IFFTY3JpcHRTdHJpbmcmIG5hbWUsIGNvbnN0IFFTY3Jp
cHRWYWx1ZSYgdmFsdWUsIGNvbnN0IFByb3BlcnR5RmxhZ3MmIGZsYWdzID0gS2VlcEV4aXN0aW5n
RmxhZ3MpOwogCisgICAgUHJvcGVydHlGbGFncyBwcm9wZXJ0eUZsYWdzKGNvbnN0IFFTdHJpbmcm
IG5hbWUsIGNvbnN0IFJlc29sdmVGbGFncyYgbW9kZSA9IFJlc29sdmVQcm90b3R5cGUpIGNvbnN0
OworICAgIFByb3BlcnR5RmxhZ3MgcHJvcGVydHlGbGFncyhjb25zdCBRU2NyaXB0U3RyaW5nJiBu
YW1lLCBjb25zdCBSZXNvbHZlRmxhZ3MmIG1vZGUgPSBSZXNvbHZlUHJvdG90eXBlKSBjb25zdDsK
KwogICAgIFFTY3JpcHRFbmdpbmUqIGVuZ2luZSgpIGNvbnN0OwogCiAgICAgYm9vbCBpc1ZhbGlk
KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9xdC9hcGkvcXNjcmlwdHZhbHVl
X3AuaCBiL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWVfcC5oCmluZGV4IDkyZjRi
MGEuLjExNDUxZjcgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFs
dWVfcC5oCisrKyBiL0phdmFTY3JpcHRDb3JlL3F0L2FwaS9xc2NyaXB0dmFsdWVfcC5oCkBAIC0x
NDAsNiArMTQwLDEwIEBAIHB1YmxpYzoKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgogICAgIGlu
bGluZSB2b2lkIHNldFByb3BlcnR5KFQgbmFtZSwgUVNjcmlwdFZhbHVlUHJpdmF0ZSogdmFsdWUs
IGNvbnN0IFFTY3JpcHRWYWx1ZTo6UHJvcGVydHlGbGFncyYgZmxhZ3MpOwogCisgICAgUVNjcmlw
dFZhbHVlOjpQcm9wZXJ0eUZsYWdzIHByb3BlcnR5RmxhZ3MoY29uc3QgUVN0cmluZyYgbmFtZSwg
Y29uc3QgUVNjcmlwdFZhbHVlOjpSZXNvbHZlRmxhZ3MmIG1vZGUpOworICAgIFFTY3JpcHRWYWx1
ZTo6UHJvcGVydHlGbGFncyBwcm9wZXJ0eUZsYWdzKGNvbnN0IFFTY3JpcHRTdHJpbmdQcml2YXRl
KiBuYW1lLCBjb25zdCBRU2NyaXB0VmFsdWU6OlJlc29sdmVGbGFncyYgbW9kZSk7CisgICAgUVNj
cmlwdFZhbHVlOjpQcm9wZXJ0eUZsYWdzIHByb3BlcnR5RmxhZ3MoY29uc3QgSlNTdHJpbmdSZWYg
bmFtZSwgY29uc3QgUVNjcmlwdFZhbHVlOjpSZXNvbHZlRmxhZ3MmIG1vZGUpOworCiAgICAgaW5s
aW5lIFFTY3JpcHRWYWx1ZVByaXZhdGUqIGNhbGwoY29uc3QgUVNjcmlwdFZhbHVlUHJpdmF0ZSog
LCBjb25zdCBRU2NyaXB0VmFsdWVMaXN0JiBhcmdzKTsKIAogICAgIGlubGluZSBvcGVyYXRvciBK
U1ZhbHVlUmVmKCkgY29uc3Q7CkBAIC05NzQsNiArOTc4LDc1IEBAIGlubGluZSB2b2lkIFFTY3Jp
cHRWYWx1ZVByaXZhdGU6OnNldFByb3BlcnR5KFQgbmFtZSwgUVNjcmlwdFZhbHVlUHJpdmF0ZSog
dmFsdWUsCiAgICAgbV9lbmdpbmUtPnNldEV4Y2VwdGlvbihleGNlcHRpb24pOwogfQogCitpbmxp
bmUgUVNjcmlwdFZhbHVlOjpQcm9wZXJ0eUZsYWdzIFFTY3JpcHRWYWx1ZVByaXZhdGU6OnByb3Bl
cnR5RmxhZ3MoY29uc3QgUVN0cmluZyYgbmFtZSwgY29uc3QgUVNjcmlwdFZhbHVlOjpSZXNvbHZl
RmxhZ3MmIG1vZGUpCit7CisgICAgSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IHByb3BlcnR5TmFt
ZShBZG9wdCwgUVNjcmlwdENvbnZlcnRlcjo6dG9TdHJpbmcobmFtZSkpOworICAgIHJldHVybiBw
cm9wZXJ0eUZsYWdzKHByb3BlcnR5TmFtZS5nZXQoKSwgbW9kZSk7Cit9CisKK2lubGluZSBRU2Ny
aXB0VmFsdWU6OlByb3BlcnR5RmxhZ3MgUVNjcmlwdFZhbHVlUHJpdmF0ZTo6cHJvcGVydHlGbGFn
cyhjb25zdCBRU2NyaXB0U3RyaW5nUHJpdmF0ZSogbmFtZSwgY29uc3QgUVNjcmlwdFZhbHVlOjpS
ZXNvbHZlRmxhZ3MmIG1vZGUpCit7CisgICAgcmV0dXJuIHByb3BlcnR5RmxhZ3MoKm5hbWUsIG1v
ZGUpOworfQorCitpbmxpbmUgUVNjcmlwdFZhbHVlOjpQcm9wZXJ0eUZsYWdzIFFTY3JpcHRWYWx1
ZVByaXZhdGU6OnByb3BlcnR5RmxhZ3MoSlNTdHJpbmdSZWYgbmFtZSwgY29uc3QgUVNjcmlwdFZh
bHVlOjpSZXNvbHZlRmxhZ3MmIG1vZGUpCit7CisgICAgdW5zaWduZWQgZmxhZ3MgPSAwOworICAg
IGlmICghaXNPYmplY3QoKSkKKyAgICAgICAgcmV0dXJuIFFTY3JpcHRWYWx1ZTo6UHJvcGVydHlG
bGFncyhmbGFncyk7CisKKyAgICAvLyBGSVhNRSBJdCBjb3VsZCBiZSBmYXN0ZXIgYW5kIG5pY2Vy
LCBidXQgbmV3IEpTQyBDIEFQSSBzaG91bGQgYmUgY3JlYXRlZC4KKyAgICBzdGF0aWMgSlNTdHJp
bmdSZWYgb2JqZWN0TmFtZSA9IFFTY3JpcHRDb252ZXJ0ZXI6OnRvU3RyaW5nKCJPYmplY3QiKTsK
KyAgICBzdGF0aWMgSlNTdHJpbmdSZWYgcHJvcGVydHlEZXNjcmlwdG9yTmFtZSA9IFFTY3JpcHRD
b252ZXJ0ZXI6OnRvU3RyaW5nKCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiKTsKKworICAgIC8v
IEZJWE1FIFRoaXMgaXMgZGFuZ2Vyb3VzIGlmIGdsb2JhbCBvYmplY3Qgd2FzIG1vZGlmaWVkIChi
dWcgNDE4MzkpLgorICAgIEpTVmFsdWVSZWYgZXhjZXB0aW9uID0gMDsKKyAgICBKU09iamVjdFJl
ZiBnbG9iYWxPYmplY3QgPSBKU0NvbnRleHRHZXRHbG9iYWxPYmplY3QoKm1fZW5naW5lKTsKKyAg
ICBKU1ZhbHVlUmVmIG9iamVjdENvbnN0cnVjdG9yID0gSlNPYmplY3RHZXRQcm9wZXJ0eSgqbV9l
bmdpbmUsIGdsb2JhbE9iamVjdCwgb2JqZWN0TmFtZSwgJmV4Y2VwdGlvbik7CisgICAgUV9BU1NF
UlQoSlNWYWx1ZUlzT2JqZWN0KCptX2VuZ2luZSwgb2JqZWN0Q29uc3RydWN0b3IpKTsKKyAgICBK
U1ZhbHVlUmVmIHByb3BlcnR5RGVzY3JpcHRvckdldHRlciA9IEpTT2JqZWN0R2V0UHJvcGVydHko
Km1fZW5naW5lLCBjb25zdF9jYXN0PEpTT2JqZWN0UmVmPihvYmplY3RDb25zdHJ1Y3RvciksIHBy
b3BlcnR5RGVzY3JpcHRvck5hbWUsICZleGNlcHRpb24pOworICAgIFFfQVNTRVJUKEpTVmFsdWVJ
c09iamVjdCgqbV9lbmdpbmUsIHByb3BlcnR5RGVzY3JpcHRvckdldHRlcikpOworCisgICAgSlNW
YWx1ZVJlZiBhcmd1bWVudHNbXSA9IHsgKnRoaXMsIEpTVmFsdWVNYWtlU3RyaW5nKCptX2VuZ2lu
ZSwgbmFtZSkgfTsKKyAgICBKU09iamVjdFJlZiBwcm9wZXJ0eURlc2NyaXB0b3IKKyAgICAgICAg
ICAgID0gY29uc3RfY2FzdDxKU09iamVjdFJlZj4oSlNPYmplY3RDYWxsQXNGdW5jdGlvbigqbV9l
bmdpbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdF9jYXN0PEpTT2JqZWN0UmVmPihwcm9wZXJ0eURlc2NyaXB0b3JHZXR0
ZXIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogdGhpc09iamVjdCAqLyAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogYXJndW1lbnRDb3VudCAqLyAyLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYXJndW1lbnRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJmV4Y2VwdGlvbikpOworICAgIGlmIChleGNlcHRpb24pIHsKKyAg
ICAgICAgLy8gSW52YWxpZCBwcm9wZXJ0eS4KKyAgICAgICAgcmV0dXJuIFFTY3JpcHRWYWx1ZTo6
UHJvcGVydHlGbGFncyhmbGFncyk7CisgICAgfQorCisgICAgaWYgKCFKU1ZhbHVlSXNPYmplY3Qo
Km1fZW5naW5lLCBwcm9wZXJ0eURlc2NyaXB0b3IpKSB7CisgICAgICAgIC8vIFByb3BlcnR5IGlz
bid0IG93bmVkIGJ5IHRoaXMgb2JqZWN0LgorICAgICAgICBKU09iamVjdFJlZiBwcm90bzsKKyAg
ICAgICAgaWYgKG1vZGUgPT0gUVNjcmlwdFZhbHVlOjpSZXNvbHZlTG9jYWwKKyAgICAgICAgICAg
ICAgICB8fCAoKHByb3RvID0gY29uc3RfY2FzdDxKU09iamVjdFJlZj4oSlNPYmplY3RHZXRQcm90
b3R5cGUoKm1fZW5naW5lLCAqdGhpcykpKSAmJiBKU1ZhbHVlSXNOdWxsKCptX2VuZ2luZSwgcHJv
dG8pKSkgeworICAgICAgICAgICAgcmV0dXJuIFFTY3JpcHRWYWx1ZTo6UHJvcGVydHlGbGFncyhm
bGFncyk7CisgICAgICAgIH0KKyAgICAgICAgUVNjcmlwdFZhbHVlUHJpdmF0ZSBwKGVuZ2luZSgp
LCBwcm90byk7CisgICAgICAgIHJldHVybiBwLnByb3BlcnR5RmxhZ3MobmFtZSwgUVNjcmlwdFZh
bHVlOjpSZXNvbHZlUHJvdG90eXBlKTsKKyAgICB9CisKKyAgICBzdGF0aWMgSlNTdHJpbmdSZWYg
d3JpdGFibGVOYW1lID0gUVNjcmlwdENvbnZlcnRlcjo6dG9TdHJpbmcoIndyaXRhYmxlIik7Cisg
ICAgc3RhdGljIEpTU3RyaW5nUmVmIGNvbmZpZ3VyYWJsZU5hbWUgPSBRU2NyaXB0Q29udmVydGVy
Ojp0b1N0cmluZygiY29uZmlndXJhYmxlIik7CisgICAgc3RhdGljIEpTU3RyaW5nUmVmIGVudW1l
cmFibGVOYW1lID0gUVNjcmlwdENvbnZlcnRlcjo6dG9TdHJpbmcoImVudW1lcmFibGUiKTsKKwor
ICAgIGJvb2wgcmVhZE9ubHkgPSAhSlNWYWx1ZVRvQm9vbGVhbigqbV9lbmdpbmUsIEpTT2JqZWN0
R2V0UHJvcGVydHkoKm1fZW5naW5lLCBwcm9wZXJ0eURlc2NyaXB0b3IsIHdyaXRhYmxlTmFtZSwg
JmV4Y2VwdGlvbikpOworICAgIGlmICghZXhjZXB0aW9uICYmIHJlYWRPbmx5KQorICAgICAgICBm
bGFncyB8PSBRU2NyaXB0VmFsdWU6OlJlYWRPbmx5OworICAgIGJvb2wgdW5kZWxldGFibGUgPSAh
SlNWYWx1ZVRvQm9vbGVhbigqbV9lbmdpbmUsIEpTT2JqZWN0R2V0UHJvcGVydHkoKm1fZW5naW5l
LCBwcm9wZXJ0eURlc2NyaXB0b3IsIGNvbmZpZ3VyYWJsZU5hbWUsICZleGNlcHRpb24pKTsKKyAg
ICBpZiAoIWV4Y2VwdGlvbiAmJiB1bmRlbGV0YWJsZSkKKyAgICAgICAgZmxhZ3MgfD0gUVNjcmlw
dFZhbHVlOjpVbmRlbGV0YWJsZTsKKyAgICBib29sIHNraXBJbkVudW0gPSAhSlNWYWx1ZVRvQm9v
bGVhbigqbV9lbmdpbmUsIEpTT2JqZWN0R2V0UHJvcGVydHkoKm1fZW5naW5lLCBwcm9wZXJ0eURl
c2NyaXB0b3IsIGVudW1lcmFibGVOYW1lLCAmZXhjZXB0aW9uKSk7CisgICAgaWYgKCFleGNlcHRp
b24gJiYgc2tpcEluRW51bSkKKyAgICAgICAgZmxhZ3MgfD0gUVNjcmlwdFZhbHVlOjpTa2lwSW5F
bnVtZXJhdGlvbjsKKworICAgIHJldHVybiBRU2NyaXB0VmFsdWU6OlByb3BlcnR5RmxhZ3MoZmxh
Z3MpOworfQogCiBRU2NyaXB0VmFsdWVQcml2YXRlKiBRU2NyaXB0VmFsdWVQcml2YXRlOjpjYWxs
KGNvbnN0IFFTY3JpcHRWYWx1ZVByaXZhdGUqLCBjb25zdCBRU2NyaXB0VmFsdWVMaXN0JiBhcmdz
KQogewpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcXQvdGVzdHMvcXNjcmlwdHZhbHVlL3Rz
dF9xc2NyaXB0dmFsdWUuY3BwIGIvSmF2YVNjcmlwdENvcmUvcXQvdGVzdHMvcXNjcmlwdHZhbHVl
L3RzdF9xc2NyaXB0dmFsdWUuY3BwCmluZGV4IDEyODYyM2MuLjczYjU3ZGMgMTAwNjQ0Ci0tLSBh
L0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3FzY3JpcHR2YWx1ZS90c3RfcXNjcmlwdHZhbHVlLmNw
cAorKysgYi9KYXZhU2NyaXB0Q29yZS9xdC90ZXN0cy9xc2NyaXB0dmFsdWUvdHN0X3FzY3JpcHR2
YWx1ZS5jcHAKQEAgLTEyMTksNCArMTIxOSw0NiBAQCB2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnNl
dFByb3BlcnR5KCkKICAgICBRVkVSSUZZKHNraXBJbkVudW1lcmF0aW9uICE9IGVuZ2luZS5ldmFs
dWF0ZSgiby5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnZGVmaW5lZDInKSIpLnRvQm9vbCgpKTsKIH0K
IAordm9pZCB0c3RfUVNjcmlwdFZhbHVlOjpwcm9wZXJ0eUZsYWdfZGF0YSgpCit7CisgICAgUVRl
c3Q6OmFkZENvbHVtbjxRU3RyaW5nPigibmFtZSIpOworICAgIFFUZXN0OjphZGRDb2x1bW48aW50
PigiZmxhZyIpOworCisgICAgUVRlc3Q6Om5ld1JvdygiP0NyQGp6aSElJCIpIDw8ICI/Q3JAanpp
ISUkIiA8PCBzdGF0aWNfY2FzdDxpbnQ+KDApOworICAgIFFUZXN0OjpuZXdSb3coIlJlYWRPbmx5
IikgPDwgIlJlYWRPbmx5IiA8PCBzdGF0aWNfY2FzdDxpbnQ+KFFTY3JpcHRWYWx1ZTo6UmVhZE9u
bHkpOworICAgIFFUZXN0OjpuZXdSb3coIlVuZGVsZXRhYmxlIikgPDwgIlVuZGVsZXRhYmxlIiA8
PCBzdGF0aWNfY2FzdDxpbnQ+KFFTY3JpcHRWYWx1ZTo6VW5kZWxldGFibGUpOworICAgIFFUZXN0
OjpuZXdSb3coIlNraXBJbkVudW1lcmF0aW9uIikgPDwgIlNraXBJbkVudW1lcmF0aW9uIiA8PCBz
dGF0aWNfY2FzdDxpbnQ+KFFTY3JpcHRWYWx1ZTo6U2tpcEluRW51bWVyYXRpb24pOworICAgIFFU
ZXN0OjpuZXdSb3coIlJlYWRPbmx5IHwgVW5kZWxldGFibGUiKSA8PCAiUmVhZE9ubHlfVW5kZWxl
dGFibGUiIDw8IHN0YXRpY19jYXN0PGludD4oUVNjcmlwdFZhbHVlOjpSZWFkT25seSB8IFFTY3Jp
cHRWYWx1ZTo6VW5kZWxldGFibGUpOworICAgIFFUZXN0OjpuZXdSb3coIlJlYWRPbmx5IHwgU2tp
cEluRW51bWVyYXRpb24iKSA8PCAiUmVhZE9ubHlfU2tpcEluRW51bWVyYXRpb24iIDw8IHN0YXRp
Y19jYXN0PGludD4oUVNjcmlwdFZhbHVlOjpSZWFkT25seSB8IFFTY3JpcHRWYWx1ZTo6U2tpcElu
RW51bWVyYXRpb24pOworICAgIFFUZXN0OjpuZXdSb3coIlVuZGVsZXRhYmxlIHwgU2tpcEluRW51
bWVyYXRpb24iKSA8PCAiVW5kZWxldGFibGVfU2tpcEluRW51bWVyYXRpb24iIDw8IHN0YXRpY19j
YXN0PGludD4oUVNjcmlwdFZhbHVlOjpVbmRlbGV0YWJsZSB8IFFTY3JpcHRWYWx1ZTo6U2tpcElu
RW51bWVyYXRpb24pOworICAgIFFUZXN0OjpuZXdSb3coIlJlYWRPbmx5IHwgVW5kZWxldGFibGUg
fCBTa2lwSW5FbnVtZXJhdGlvbiIpIDw8ICJSZWFkT25seV9VbmRlbGV0YWJsZV9Ta2lwSW5FbnVt
ZXJhdGlvbiIgPDwgc3RhdGljX2Nhc3Q8aW50PihRU2NyaXB0VmFsdWU6OlJlYWRPbmx5IHwgUVNj
cmlwdFZhbHVlOjpVbmRlbGV0YWJsZSB8IFFTY3JpcHRWYWx1ZTo6U2tpcEluRW51bWVyYXRpb24p
OworfQorCit2b2lkIHRzdF9RU2NyaXB0VmFsdWU6OnByb3BlcnR5RmxhZygpCit7CisgICAgUVNj
cmlwdEVuZ2luZSBlbmdpbmU7CisgICAgUUZFVENIKFFTdHJpbmcsIG5hbWUpOworICAgIFFGRVRD
SChpbnQsIGZsYWcpOworICAgIGNvbnN0IFFTY3JpcHRTdHJpbmcgbmFtZUhhbmRsZSA9IGVuZ2lu
ZS50b1N0cmluZ0hhbmRsZShuYW1lKTsKKyAgICBjb25zdCBRU3RyaW5nIHByb3RvTmFtZSA9ICJw
cm90byIgKyBuYW1lOworICAgIGNvbnN0IFFTY3JpcHRTdHJpbmcgcHJvdG9OYW1lSGFuZGxlID0g
ZW5naW5lLnRvU3RyaW5nSGFuZGxlKHByb3RvTmFtZSk7CisKKyAgICBRU2NyaXB0VmFsdWUgcHJv
dG8gPSBlbmdpbmUubmV3T2JqZWN0KCk7CisgICAgUVNjcmlwdFZhbHVlIG9iamVjdCA9IGVuZ2lu
ZS5uZXdPYmplY3QoKTsKKyAgICBvYmplY3Quc2V0UHJvdG90eXBlKHByb3RvKTsKKworICAgIHBy
b3RvLnNldFByb3BlcnR5KHByb3RvTmFtZSwgUVNjcmlwdFZhbHVlKDEyNDgxNiksIFFTY3JpcHRW
YWx1ZTo6UHJvcGVydHlGbGFnKGZsYWcpKTsKKyAgICBvYmplY3Quc2V0UHJvcGVydHkobmFtZSwg
UVNjcmlwdFZhbHVlKDEyNDgxNiksIFFTY3JpcHRWYWx1ZTo6UHJvcGVydHlGbGFnKGZsYWcpKTsK
KworICAgIC8vIENoZWNrIHVzaW5nIFFTdHJpbmcgbmFtZQorICAgIFFDT01QQVJFKG9iamVjdC5w
cm9wZXJ0eUZsYWdzKG5hbWUpLCBRU2NyaXB0VmFsdWU6OlByb3BlcnR5RmxhZyhmbGFnKSk7Cisg
ICAgUUNPTVBBUkUob2JqZWN0LnByb3BlcnR5RmxhZ3MocHJvdG9OYW1lLCBRU2NyaXB0VmFsdWU6
OlJlc29sdmVQcm90b3R5cGUpLCBRU2NyaXB0VmFsdWU6OlByb3BlcnR5RmxhZyhmbGFnKSk7Cisg
ICAgUVZFUklGWSghb2JqZWN0LnByb3BlcnR5RmxhZ3MocHJvdG9OYW1lLCBRU2NyaXB0VmFsdWU6
OlJlc29sdmVMb2NhbCkpOworCisgICAgLy8gQ2hlY2sgdXNpbmcgUVNjcmlwdFN0cmluZyBuYW1l
CisgICAgUUNPTVBBUkUob2JqZWN0LnByb3BlcnR5RmxhZ3MobmFtZUhhbmRsZSksIFFTY3JpcHRW
YWx1ZTo6UHJvcGVydHlGbGFnKGZsYWcpKTsKKyAgICBRQ09NUEFSRShvYmplY3QucHJvcGVydHlG
bGFncyhwcm90b05hbWVIYW5kbGUsIFFTY3JpcHRWYWx1ZTo6UmVzb2x2ZVByb3RvdHlwZSksIFFT
Y3JpcHRWYWx1ZTo6UHJvcGVydHlGbGFnKGZsYWcpKTsKKyAgICBRVkVSSUZZKCFvYmplY3QucHJv
cGVydHlGbGFncyhwcm90b05hbWVIYW5kbGUsIFFTY3JpcHRWYWx1ZTo6UmVzb2x2ZUxvY2FsKSk7
Cit9CisKIFFURVNUX01BSU4odHN0X1FTY3JpcHRWYWx1ZSkKZGlmZiAtLWdpdCBhL0phdmFTY3Jp
cHRDb3JlL3F0L3Rlc3RzL3FzY3JpcHR2YWx1ZS90c3RfcXNjcmlwdHZhbHVlLmggYi9KYXZhU2Ny
aXB0Q29yZS9xdC90ZXN0cy9xc2NyaXB0dmFsdWUvdHN0X3FzY3JpcHR2YWx1ZS5oCmluZGV4IDE2
MzZhMzQuLjYxMDg0MjMgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3F0L3Rlc3RzL3FzY3Jp
cHR2YWx1ZS90c3RfcXNjcmlwdHZhbHVlLmgKKysrIGIvSmF2YVNjcmlwdENvcmUvcXQvdGVzdHMv
cXNjcmlwdHZhbHVlL3RzdF9xc2NyaXB0dmFsdWUuaApAQCAtNTgsNiArNTgsOCBAQCBwcml2YXRl
IHNsb3RzOgogICAgIHZvaWQgc2V0UHJvcGVydHkoKTsKICAgICB2b2lkIGdldFNldFByb3BlcnR5
KCk7CiAgICAgdm9pZCBnZXRQcm9wZXJ0eVJlc29sdmVGbGFnKCk7CisgICAgdm9pZCBwcm9wZXJ0
eUZsYWdfZGF0YSgpOworICAgIHZvaWQgcHJvcGVydHlGbGFnKCk7CiAKICAgICAvLyBHZW5lcmF0
ZWQgdGVzdCBmdW5jdGlvbnMuCiAgICAgdm9pZCBpc0Jvb2xfZGF0YSgpOwo=
</data>
<flag name="review"
          id="48644"
          type_id="1"
          status="+"
          setter="hausmann"
    />
          </attachment>
      

    </bug>

</bugzilla>