<?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>33918</bug_id>
          
          <creation_ts>2010-01-20 13:19:34 -0800</creation_ts>
          <short_desc>MSAA: accSelect() is not implemented</short_desc>
          <delta_ts>2011-03-31 16:27:50 -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>Accessibility</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows XP</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jon Honeycutt">jhoneycutt</reporter>
          <assigned_to name="Jon Honeycutt">jhoneycutt</assigned_to>
          <cc>mattc</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>182898</commentid>
    <comment_count>0</comment_count>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2010-01-20 13:19:34 -0800</bug_when>
    <thetext>The IAccessible::accSelect() function is not implemented.

&lt;rdar://problem/7436861&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>182903</commentid>
    <comment_count>1</comment_count>
      <attachid>47060</attachid>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2010-01-20 13:30:57 -0800</bug_when>
    <thetext>Created attachment 47060
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>182915</commentid>
    <comment_count>2</comment_count>
      <attachid>47060</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-01-20 14:10:56 -0800</bug_when>
    <thetext>Comment on attachment 47060
patch

&gt; +    // FIXME: Should implement SELFLAG_EXTENDSELECTION. For now, we just return
&gt; +    // S_OK, matching Firefox.

Is that really better than returning E_INVALIDARG?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>182921</commentid>
    <comment_count>3</comment_count>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2010-01-20 14:33:22 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 47060 [details])
&gt; &gt; +    // FIXME: Should implement SELFLAG_EXTENDSELECTION. For now, we just return
&gt; &gt; +    // S_OK, matching Firefox.
&gt; 
&gt; Is that really better than returning E_INVALIDARG?

I&apos;m not sure whether any clients use this flag, but I&apos;d rather match Firefox&apos;s behavior.

Thanks for the review! Landed in r53567.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>377535</commentid>
    <comment_count>4</comment_count>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2011-03-31 16:27:50 -0700</bug_when>
    <thetext>*** Bug 29124 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>47060</attachid>
            <date>2010-01-20 13:30:57 -0800</date>
            <delta_ts>2010-01-20 14:10:56 -0800</delta_ts>
            <desc>patch</desc>
            <filename>0002-MSAA-accSelect-is-not-implemented.patch</filename>
            <type>text/plain</type>
            <size>24392</size>
            <attacher name="Jon Honeycutt">jhoneycutt</attacher>
            
              <data encoding="base64">RnJvbSA2ODQyNzRiZmUyOThlMjQ3NGY5YzZlZGFmOTA0MmEwNDAwN2U3NDQ3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKb24gSG9uZXljdXR0IDxqaG9uZXljdXR0QGFwcGxlLmNvbT4K
RGF0ZTogV2VkLCAyMCBKYW4gMjAxMCAxMzoyOTowNyAtMDgwMApTdWJqZWN0OiBbUEFUQ0hdIE1T
QUE6IGFjY1NlbGVjdCgpIGlzIG5vdCBpbXBsZW1lbnRlZAoKaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTMzOTE4CjxyZGFyOi8vcHJvYmxlbS83NDM2ODYxPgoKUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCgpXZWJDb3JlOgoKVGVzdDogcGxhdGZvcm0vd2luL2FjY2Vz
c2liaWxpdHkvc2VsZWN0aW9uLWFuZC1mb2N1cy5odG1sCgoqIGFjY2Vzc2liaWxpdHkvQWNjZXNz
aWJpbGl0eU1lbnVMaXN0T3B0aW9uLmNwcDoKKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlNZW51TGlz
dE9wdGlvbjo6c2V0U2VsZWN0ZWQpOgpSZXR1cm4gZWFybHkgaWYgdGhlIG9iamVjdCBpcyBub3Qg
c2VsZWN0YWJsZS4KCldlYktpdC93aW46CgoqIEFjY2Vzc2libGVCYXNlLmNwcDoKKEFjY2Vzc2li
bGVCYXNlOjphY2NTZWxlY3QpOgpJZiB0aGVyZSBpcyBhbiBpbnZhbGlkIGNvbWJpbmF0aW9uIG9m
IHN0YXRlIGZsYWdzLCByZXR1cm4gZWFybHkuIElmIHRoZQpjYWxsZXIgcGFzc2VkIHRoZSAidGFr
ZSBmb2N1cyIgZmxhZywgZm9jdXMgdGhlIG9iamVjdC4gSWYgdGhlICJ0YWtlCnNlbGVjdGlvbiIg
ZmxhZyB3YXMgcGFzc2VkLCBjaGVjayB3aGV0aGVyIHRoZSBwYXJlbnQgb2JqZWN0IGlzIGFuCkFj
Y2Vzc2liaWxpdHlMaXN0Qm94OyBpZiBzbywgY2FsbCB0aGUgb2JqZWN0J3Mgc2V0U2VsZWN0ZWRD
aGlsZHJlbigpCmZ1bmN0aW9uLiBJZiB0aGUgcGFyZW50IGlzIGFuIEFjY2Vzc2liaWxpdHlNZW51
TGlzdFBvcHVwLCBjYWxsIHRoZQpjaGlsZCBvYmplY3QncyBzZXRTZWxlY3RlZCgpIGZ1bmN0aW9u
LiBPdGhlcndpc2UsIGlmIHRoZSBwYXJlbnQgaXMgc29tZQpvdGhlciwgdW5zdXBwb3J0ZWQgb2Jq
ZWN0LCByZXR1cm4gZWFybHkuCklmIHRoZSBzZWxlY3Rpb24gZmxhZ3MgaW5jbHVkZSAiYWRkIiwg
InJlbW92ZSIsIG9yICJleHRlbmQiIHNlbGVjdGlvbiwKYW5kIHRoZSBwYXJlbnQgb2JqZWN0IGlz
IG5vdCBtdWx0aS1zZWxlY3RhYmxlLCByZXR1cm4gZWFybHkuIE90aGVyd2lzZSwKc2V0IG9yIHVu
c2V0IHRoZSBjaGlsZCdzIHNlbGVjdGVkIGZsYWcgYmFzZWQgb24gdGhlIHBhc3NlZCBmbGFnLgoK
V2ViS2l0VG9vbHM6CgoqIER1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuY3Bw
OgoodGFrZUZvY3VzQ2FsbGJhY2spOgpDYWxsIHRoZSBvYmplY3QncyB0YWtlRm9jdXMoKSBmdW5j
dGlvbi4KKHRha2VTZWxlY3Rpb25DYWxsYmFjayk6CkNhbGwgaXRzIHRha2VTZWxlY3Rpb24oKSBm
dW5jdGlvbi4KKGFkZFNlbGVjdGlvbkNhbGxiYWNrKToKQ2FsbCBpdHMgYWRkU2VsZWN0aW9uKCkg
ZnVuY3Rpb24uCihyZW1vdmVTZWxlY3Rpb25DYWxsYmFjayk6CkNhbGwgaXRzIHJlbW92ZVNlbGVj
dGlvbigpIGZ1bmN0aW9uLgooQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6Z2V0SlNDbGFzcyk6CkFk
ZCBuZXcgZnVuY3Rpb25zIHRvIHRoZSBKUyBjbGFzcyBkZWZpbml0aW9uLgoKKiBEdW1wUmVuZGVy
VHJlZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50Lmg6CkRlY2xhcmUgbmV3IGZ1bmN0aW9ucy4KCiog
RHVtcFJlbmRlclRyZWUvZ3RrL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRHdGsuY3BwOgooQWNjZXNz
aWJpbGl0eVVJRWxlbWVudDo6dGFrZUZvY3VzKToKU3R1YmJlZC4KKEFjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQ6OnRha2VTZWxlY3Rpb24pOgpTdHViYmVkLgooQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6
YWRkU2VsZWN0aW9uKToKU3R1YmJlZC4KKEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnJlbW92ZVNl
bGVjdGlvbik6ClN0dWJiZWQuCgoqIER1bXBSZW5kZXJUcmVlL21hYy9BY2Nlc3NpYmlsaXR5VUlF
bGVtZW50TWFjLm1tOgooQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dGFrZUZvY3VzKToKU3R1YmJl
ZC4KKEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnRha2VTZWxlY3Rpb24pOgpTdHViYmVkLgooQWNj
ZXNzaWJpbGl0eVVJRWxlbWVudDo6YWRkU2VsZWN0aW9uKToKU3R1YmJlZC4KKEFjY2Vzc2liaWxp
dHlVSUVsZW1lbnQ6OnJlbW92ZVNlbGVjdGlvbik6ClN0dWJiZWQuCgoqIER1bXBSZW5kZXJUcmVl
L3dpbi9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50V2luLmNwcDoKKEFjY2Vzc2liaWxpdHlVSUVsZW1l
bnQ6OnRha2VGb2N1cyk6CkNhbGwgdGhlIG9iamVjdCdzIGFjY1NlbGVjdCgpIGZ1bmN0aW9uLCBw
YXNzaW5nIHRoZSBhcHByb3ByaWF0ZSBmbGFnLgooQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dGFr
ZVNlbGVjdGlvbik6CkRpdHRvLgooQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6YWRkU2VsZWN0aW9u
KToKRGl0dG8uCihBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpyZW1vdmVTZWxlY3Rpb24pOgpEaXR0
by4KCkxheW91dFRlc3RzOgoKKiBwbGF0Zm9ybS93aW4vYWNjZXNzaWJpbGl0eS9zZWxlY3Rpb24t
YW5kLWZvY3VzLWV4cGVjdGVkLnR4dDogQWRkZWQuCiogcGxhdGZvcm0vd2luL2FjY2Vzc2liaWxp
dHkvc2VsZWN0aW9uLWFuZC1mb2N1cy5odG1sOiBBZGRlZC4KLS0tCiBMYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTIgKysKIC4uLi9hY2Nlc3Np
YmlsaXR5L3NlbGVjdGlvbi1hbmQtZm9jdXMtZXhwZWN0ZWQudHh0IHwgICA4NCArKysrKysrKysr
KysrCiAuLi4vd2luL2FjY2Vzc2liaWxpdHkvc2VsZWN0aW9uLWFuZC1mb2N1cy5odG1sICAgICB8
ICAxMjMgKysrKysrKysrKysrKysrKysrKysKIFdlYkNvcmUvQ2hhbmdlTG9nICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwgICAxNSArKysKIC4uLi9hY2Nlc3NpYmlsaXR5L0FjY2Vz
c2liaWxpdHlNZW51TGlzdE9wdGlvbi5jcHAgIHwgICAgMyArCiBXZWJLaXQvd2luL0FjY2Vzc2li
bGVCYXNlLmNwcCAgICAgICAgICAgICAgICAgICAgICB8ICAgNTEgKysrKysrKystCiBXZWJLaXQv
d2luL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjIgKysrKwog
V2ViS2l0VG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDU0
ICsrKysrKysrKwogLi4uL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuY3Bw
ICAgICAgfCAgIDI5ICsrKysrCiAuLi4vRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxl
bWVudC5oICAgICAgICB8ICAgIDcgKy0KIC4uLi9ndGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEd0
ay5jcHAgICAgICAgICAgICAgIHwgICAyMCArKysKIC4uLi9tYWMvQWNjZXNzaWJpbGl0eVVJRWxl
bWVudE1hYy5tbSAgICAgICAgICAgICAgIHwgICAyMCArKysKIC4uLi93aW4vQWNjZXNzaWJpbGl0
eVVJRWxlbWVudFdpbi5jcHAgICAgICAgICAgICAgIHwgICAyMCArKysKIDEzIGZpbGVzIGNoYW5n
ZWQsIDQ1NyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0
IExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9hY2Nlc3NpYmlsaXR5L3NlbGVjdGlvbi1hbmQtZm9j
dXMtZXhwZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2luL2FjY2Vzc2liaWxpdHkvc2VsZWN0aW9uLWFuZC1mb2N1cy5odG1sCgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDc1Y2Fk
YmEuLjJiZGEwYTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMC0wMS0yMCAgSm9uIEhvbmV5
Y3V0dCAgPGpob25leWN1dHRAYXBwbGUuY29tPgorCisgICAgICAgIE1TQUE6IGFjY1NlbGVjdCgp
IGlzIG5vdCBpbXBsZW1lbnRlZAorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0zMzkxOAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzQzNjg2MT4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3Jt
L3dpbi9hY2Nlc3NpYmlsaXR5L3NlbGVjdGlvbi1hbmQtZm9jdXMtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vYWNjZXNzaWJpbGl0eS9zZWxlY3Rpb24tYW5kLWZv
Y3VzLmh0bWw6IEFkZGVkLgorCiAyMDEwLTAxLTE3ICBKb24gSG9uZXljdXR0ICA8amhvbmV5Y3V0
dEBhcHBsZS5jb20+CiAKICAgICAgICAgTVNBQTogVGhlIGNoaWxkIDxvcHRpb24+IGVsZW1lbnRz
IG9mIGEgbm9uLW11bHRpcGxlIDxzZWxlY3Q+IGFyZSBub3QKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL3dpbi9hY2Nlc3NpYmlsaXR5L3NlbGVjdGlvbi1hbmQtZm9jdXMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2FjY2Vzc2liaWxpdHkvc2VsZWN0aW9u
LWFuZC1mb2N1cy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uYzgzZDA4MgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9h
Y2Nlc3NpYmlsaXR5L3NlbGVjdGlvbi1hbmQtZm9jdXMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
ODQgQEAKKyAgCitUaGlzIHRlc3RzIHRoYXQgd2UgY2FuIGFkanVzdCBmb2N1cyBhbmQgc2VsZWN0
aW9uIHZpYSBhY2Nlc3NpYmlsaXR5IEFQSS4KKworCitQQVNTIGFjY2Vzc2liaWxpdHlDb250cm9s
bGVyLmZvY3VzZWRFbGVtZW50LnJvbGUgaXMgImRvY3VtZW50IgorUEFTUyBhY2Nlc3NpYmlsaXR5
Q29udHJvbGxlci5mb2N1c2VkRWxlbWVudC5yb2xlIGlzICJsaXN0IgorCitPcHRpb24gMCBpcyBz
ZWxlY3RlZC4KK09wdGlvbiAxIGlzIG5vdCBzZWxlY3RlZC4KK09wdGlvbiAyIGlzIG5vdCBzZWxl
Y3RlZC4KK09wdGlvbiAzIGlzIG5vdCBzZWxlY3RlZC4KKworT3B0aW9uIDAgaXMgbm90IHNlbGVj
dGVkLgorT3B0aW9uIDEgaXMgc2VsZWN0ZWQuCitPcHRpb24gMiBpcyBub3Qgc2VsZWN0ZWQuCitP
cHRpb24gMyBpcyBub3Qgc2VsZWN0ZWQuCisKK09wdGlvbiAwIGlzIG5vdCBzZWxlY3RlZC4KK09w
dGlvbiAxIGlzIHNlbGVjdGVkLgorT3B0aW9uIDIgaXMgc2VsZWN0ZWQuCitPcHRpb24gMyBpcyBu
b3Qgc2VsZWN0ZWQuCisKK09wdGlvbiAwIGlzIG5vdCBzZWxlY3RlZC4KK09wdGlvbiAxIGlzIG5v
dCBzZWxlY3RlZC4KK09wdGlvbiAyIGlzIHNlbGVjdGVkLgorT3B0aW9uIDMgaXMgbm90IHNlbGVj
dGVkLgorCitPcHRpb24gMCBpcyBub3Qgc2VsZWN0ZWQuCitPcHRpb24gMSBpcyBub3Qgc2VsZWN0
ZWQuCitPcHRpb24gMiBpcyBzZWxlY3RlZC4KK09wdGlvbiAzIGlzIG5vdCBzZWxlY3RlZC4KKwor
T3B0aW9uIDAgaXMgc2VsZWN0ZWQuCitPcHRpb24gMSBpcyBub3Qgc2VsZWN0ZWQuCitPcHRpb24g
MiBpcyBzZWxlY3RlZC4KK09wdGlvbiAzIGlzIG5vdCBzZWxlY3RlZC4KKworT3B0aW9uIDAgaXMg
c2VsZWN0ZWQuCitPcHRpb24gMSBpcyBub3Qgc2VsZWN0ZWQuCitPcHRpb24gMiBpcyBzZWxlY3Rl
ZC4KK09wdGlvbiAzIGlzIG5vdCBzZWxlY3RlZC4KKworT3B0aW9uIDAgaXMgbm90IHNlbGVjdGVk
LgorT3B0aW9uIDEgaXMgbm90IHNlbGVjdGVkLgorT3B0aW9uIDIgaXMgc2VsZWN0ZWQuCitPcHRp
b24gMyBpcyBub3Qgc2VsZWN0ZWQuCisKK09wdGlvbiAwIGlzIG5vdCBzZWxlY3RlZC4KK09wdGlv
biAxIGlzIG5vdCBzZWxlY3RlZC4KK09wdGlvbiAyIGlzIG5vdCBzZWxlY3RlZC4KK09wdGlvbiAz
IGlzIG5vdCBzZWxlY3RlZC4KKworT3B0aW9uIDAgaXMgbm90IHNlbGVjdGVkLgorT3B0aW9uIDEg
aXMgbm90IHNlbGVjdGVkLgorT3B0aW9uIDIgaXMgbm90IHNlbGVjdGVkLgorT3B0aW9uIDMgaXMg
bm90IHNlbGVjdGVkLgorCis9PSBzaW5nbGUgc2VsZWN0ID09CitPcHRpb24gMCBpcyBzZWxlY3Rl
ZC4KK09wdGlvbiAxIGlzIG5vdCBzZWxlY3RlZC4KK09wdGlvbiAyIGlzIG5vdCBzZWxlY3RlZC4K
K09wdGlvbiAzIGlzIG5vdCBzZWxlY3RlZC4KKworT3B0aW9uIDAgaXMgbm90IHNlbGVjdGVkLgor
T3B0aW9uIDEgaXMgc2VsZWN0ZWQuCitPcHRpb24gMiBpcyBub3Qgc2VsZWN0ZWQuCitPcHRpb24g
MyBpcyBub3Qgc2VsZWN0ZWQuCisKK09wdGlvbiAwIGlzIG5vdCBzZWxlY3RlZC4KK09wdGlvbiAx
IGlzIHNlbGVjdGVkLgorT3B0aW9uIDIgaXMgbm90IHNlbGVjdGVkLgorT3B0aW9uIDMgaXMgbm90
IHNlbGVjdGVkLgorCitPcHRpb24gMCBpcyBub3Qgc2VsZWN0ZWQuCitPcHRpb24gMSBpcyBzZWxl
Y3RlZC4KK09wdGlvbiAyIGlzIG5vdCBzZWxlY3RlZC4KK09wdGlvbiAzIGlzIG5vdCBzZWxlY3Rl
ZC4KKworT3B0aW9uIDAgaXMgbm90IHNlbGVjdGVkLgorT3B0aW9uIDEgaXMgc2VsZWN0ZWQuCitP
cHRpb24gMiBpcyBub3Qgc2VsZWN0ZWQuCitPcHRpb24gMyBpcyBub3Qgc2VsZWN0ZWQuCisKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2FjY2Vzc2liaWxpdHkvc2VsZWN0
aW9uLWFuZC1mb2N1cy5odG1sIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL2FjY2Vzc2liaWxp
dHkvc2VsZWN0aW9uLWFuZC1mb2N1cy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAuLjgwNmJmMDQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93
aW4vYWNjZXNzaWJpbGl0eS9zZWxlY3Rpb24tYW5kLWZvY3VzLmh0bWwKQEAgLTAsMCArMSwxMjMg
QEAKKzxodG1sPgorPGhlYWQ+CisgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8u
Li8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+CisgICAgPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
KzwvaGVhZD4KKworPGJvZHkgaWQ9ImJvZHkiPgorCis8c2VsZWN0IGlkPSJzZWxlY3RFbGVtZW50
IiBtdWx0aXBsZSB0aXRsZT0ic2VsZWN0RWxlbWVudCI+CisgICAgPG9wdGlvbiBTRUxFQ1RFRD5P
cHRpb24gMDwvb3B0aW9uPgorICAgIDxvcHRpb24+T3B0aW9uIDE8L29wdGlvbj4KKyAgICA8b3B0
aW9uPk9wdGlvbiAyPC9vcHRpb24+CisgICAgPG9wdGlvbiBESVNBQkxFRD5PcHRpb24gMzwvb3B0
aW9uPgorPC9zZWxlY3Q+CisKKzxzZWxlY3QgaWQ9InNlbGVjdEVsZW1lbnQyIiB0aXRsZT0ic2Vs
ZWN0RWxlbWVudCI+CisgICAgPG9wdGlvbiBTRUxFQ1RFRD5PcHRpb24gMDwvb3B0aW9uPgorICAg
IDxvcHRpb24+T3B0aW9uIDE8L29wdGlvbj4KKyAgICA8b3B0aW9uPk9wdGlvbiAyPC9vcHRpb24+
CisgICAgPG9wdGlvbiBESVNBQkxFRD5PcHRpb24gMzwvb3B0aW9uPgorPC9zZWxlY3Q+CisKKzxw
PlRoaXMgdGVzdHMgdGhhdCB3ZSBjYW4gYWRqdXN0IGZvY3VzIGFuZCBzZWxlY3Rpb24gdmlhIGFj
Y2Vzc2liaWxpdHkgQVBJLjwvcD4KKworPHAgaWQ9Im5vdERSVCI+VGhpcyB0ZXN0IHNob3VsZCBv
bmx5IGJlIHJ1biBpbnNpZGUgb2YgRHVtcFJlbmRlclRyZWUuPC9wPgorCis8cCBpZD0iY29uc29s
ZSI+PC9wPgorCis8c2NyaXB0PgorICAgIGZ1bmN0aW9uIGR1bXBTZWxlY3Rpb24oZWxlbWVudCkK
KyAgICB7CisgICAgICAgIHZhciBvcHRpb25zID0gZWxlbWVudC5vcHRpb25zOworICAgICAgICBm
b3IgKHZhciBpID0gMDsgaSA8IG9wdGlvbnMubGVuZ3RoOyArK2kpCisgICAgICAgICAgICBkZWJ1
ZygiT3B0aW9uICIgKyBpICsgIiBpcyAiICsgKG9wdGlvbnNbaV0uc2VsZWN0ZWQgPyAiIiA6ICJu
b3QgIikgKyAic2VsZWN0ZWQuIik7CisgICAgICAgIGRlYnVnKCIiKTsKKyAgICB9CisKKyAgICBp
ZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyICYmIHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29u
dHJvbGxlcikgeworICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibm90RFJUIikuc3R5
bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOworCisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVy
LmR1bXBBc1RleHQoKTsKKworICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYm9keSIp
LmZvY3VzKCk7CisgICAgICAgIHNob3VsZEJlKCdhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5mb2N1
c2VkRWxlbWVudC5yb2xlJywgJyJkb2N1bWVudCInKTsKKworICAgICAgICAvLyBGb2N1cyB0aGUg
c2VsZWN0IGVsZW1lbnQuCisgICAgICAgIGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmZvY3VzZWRF
bGVtZW50LmNoaWxkQXRJbmRleCgwKS50YWtlRm9jdXMoKTsKKyAgICAgICAgc2hvdWxkQmUoJ2Fj
Y2Vzc2liaWxpdHlDb250cm9sbGVyLmZvY3VzZWRFbGVtZW50LnJvbGUnLCAnImxpc3QiJyk7CisK
KyAgICAgICAgZGVidWcoIiIpOworCisgICAgICAgIHZhciBzZWxlY3RFbGVtZW50ID0gZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInNlbGVjdEVsZW1lbnQiKTsKKworICAgICAgICAvLyBPcHRpb24g
MCBzZWxlY3RlZAorICAgICAgICBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5mb2N1c2VkRWxlbWVu
dC5jaGlsZEF0SW5kZXgoMCkudGFrZVNlbGVjdGlvbigpOworICAgICAgICBkdW1wU2VsZWN0aW9u
KHNlbGVjdEVsZW1lbnQpOworCisgICAgICAgIC8vIE9wdGlvbiAxIHNlbGVjdGVkCisgICAgICAg
IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmZvY3VzZWRFbGVtZW50LmNoaWxkQXRJbmRleCgxKS50
YWtlU2VsZWN0aW9uKCk7CisgICAgICAgIGR1bXBTZWxlY3Rpb24oc2VsZWN0RWxlbWVudCk7CisK
KyAgICAgICAgLy8gT3B0aW9ucyAxLCAyIHNlbGVjdGVkCisgICAgICAgIGFjY2Vzc2liaWxpdHlD
b250cm9sbGVyLmZvY3VzZWRFbGVtZW50LmNoaWxkQXRJbmRleCgyKS5hZGRTZWxlY3Rpb24oKTsK
KyAgICAgICAgZHVtcFNlbGVjdGlvbihzZWxlY3RFbGVtZW50KTsKKworICAgICAgICAvLyBPcHRp
b24gMiBzZWxlY3RlZAorICAgICAgICBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5mb2N1c2VkRWxl
bWVudC5jaGlsZEF0SW5kZXgoMSkucmVtb3ZlU2VsZWN0aW9uKCk7CisgICAgICAgIGR1bXBTZWxl
Y3Rpb24oc2VsZWN0RWxlbWVudCk7CisKKyAgICAgICAgLy8gT3B0aW9uIDIgc2VsZWN0ZWQKKyAg
ICAgICAgYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuZm9jdXNlZEVsZW1lbnQuY2hpbGRBdEluZGV4
KDApLnJlbW92ZVNlbGVjdGlvbigpOworICAgICAgICBkdW1wU2VsZWN0aW9uKHNlbGVjdEVsZW1l
bnQpOworCisgICAgICAgIC8vIE9wdGlvbnMgMCwgMiBzZWxlY3RlZAorICAgICAgICBhY2Nlc3Np
YmlsaXR5Q29udHJvbGxlci5mb2N1c2VkRWxlbWVudC5jaGlsZEF0SW5kZXgoMCkuYWRkU2VsZWN0
aW9uKCk7CisgICAgICAgIGR1bXBTZWxlY3Rpb24oc2VsZWN0RWxlbWVudCk7CisKKyAgICAgICAg
Ly8gT3B0aW9ucyAwLCAyIHNlbGVjdGVkCisgICAgICAgIGFjY2Vzc2liaWxpdHlDb250cm9sbGVy
LmZvY3VzZWRFbGVtZW50LmNoaWxkQXRJbmRleCgwKS5hZGRTZWxlY3Rpb24oKTsKKyAgICAgICAg
ZHVtcFNlbGVjdGlvbihzZWxlY3RFbGVtZW50KTsKKworICAgICAgICAvLyBPcHRpb24gMiBzZWxl
Y3RlZAorICAgICAgICBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5mb2N1c2VkRWxlbWVudC5jaGls
ZEF0SW5kZXgoMCkucmVtb3ZlU2VsZWN0aW9uKCk7CisgICAgICAgIGR1bXBTZWxlY3Rpb24oc2Vs
ZWN0RWxlbWVudCk7CisKKyAgICAgICAgLy8gTm8gb3B0aW9ucyBzZWxlY3RlZAorICAgICAgICBh
Y2Nlc3NpYmlsaXR5Q29udHJvbGxlci5mb2N1c2VkRWxlbWVudC5jaGlsZEF0SW5kZXgoMikucmVt
b3ZlU2VsZWN0aW9uKCk7CisgICAgICAgIGR1bXBTZWxlY3Rpb24oc2VsZWN0RWxlbWVudCk7CisK
KyAgICAgICAgLy8gTm8gb3B0aW9ucyBzZWxlY3RlZCAob3B0aW9uIGF0IGluZGV4IDMgaXMgZGlz
YWJsZWQpCisgICAgICAgIGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmZvY3VzZWRFbGVtZW50LmNo
aWxkQXRJbmRleCgzKS5hZGRTZWxlY3Rpb24oKTsKKyAgICAgICAgZHVtcFNlbGVjdGlvbihzZWxl
Y3RFbGVtZW50KTsKKworICAgICAgICBkZWJ1ZygiPT0gc2luZ2xlIHNlbGVjdCA9PSIpOworCisg
ICAgICAgIHZhciBzZWxlY3RFbGVtZW50MiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZWxl
Y3RFbGVtZW50MiIpOworICAgICAgICBzZWxlY3RFbGVtZW50Mi5mb2N1cygpOworCisgICAgICAg
IHZhciBwb3B1cE1lbnUgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5mb2N1c2VkRWxlbWVudC5j
aGlsZEF0SW5kZXgoMCk7CisKKyAgICAgICAgLy8gT3B0aW9uIDAgaXMgc2VsZWN0ZWQKKyAgICAg
ICAgcG9wdXBNZW51LmNoaWxkQXRJbmRleCgwKS50YWtlU2VsZWN0aW9uKCk7CisgICAgICAgIGR1
bXBTZWxlY3Rpb24oc2VsZWN0RWxlbWVudDIpOworCisgICAgICAgIC8vIE9wdGlvbiAxIHNlbGVj
dGVkCisgICAgICAgIHBvcHVwTWVudS5jaGlsZEF0SW5kZXgoMSkudGFrZVNlbGVjdGlvbigpOwor
ICAgICAgICBkdW1wU2VsZWN0aW9uKHNlbGVjdEVsZW1lbnQyKTsKKworICAgICAgICAvLyBPcHRp
b25zIDEgc2VsZWN0ZWQgLSBhZGRTZWxlY3Rpb24oKSBpcyBub3QgdmFsaWQgZm9yIHNpbmdsZS1z
ZWxlY3QuCisgICAgICAgIHBvcHVwTWVudS5jaGlsZEF0SW5kZXgoMikuYWRkU2VsZWN0aW9uKCk7
CisgICAgICAgIGR1bXBTZWxlY3Rpb24oc2VsZWN0RWxlbWVudDIpOworCisgICAgICAgIC8vIE9w
dGlvbnMgMSBzZWxlY3RlZCAtIHJlbW92ZVNlbGVjdGlvbigpIGlzIG5vdCB2YWxpZCBmb3Igc2lu
Z2xlLXNlbGVjdC4KKyAgICAgICAgcG9wdXBNZW51LmNoaWxkQXRJbmRleCgxKS5yZW1vdmVTZWxl
Y3Rpb24oKTsKKyAgICAgICAgZHVtcFNlbGVjdGlvbihzZWxlY3RFbGVtZW50Mik7CisKKyAgICAg
ICAgLy8gT3B0aW9ucyAxIHNlbGVjdGVkIC0gb3B0aW9uIGF0IGluZGV4IDMgaXMgZGlzYWJsZWQK
KyAgICAgICAgcG9wdXBNZW51LmNoaWxkQXRJbmRleCgzKS50YWtlU2VsZWN0aW9uKCk7CisgICAg
ICAgIGR1bXBTZWxlY3Rpb24oc2VsZWN0RWxlbWVudDIpOworICAgIH0KKzwvc2NyaXB0PgorPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmN2U0MWYxLi41Y2ZiMDExIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5n
ZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEwLTAxLTIw
ICBKb24gSG9uZXljdXR0ICA8amhvbmV5Y3V0dEBhcHBsZS5jb20+CisKKyAgICAgICAgTVNBQTog
YWNjU2VsZWN0KCkgaXMgbm90IGltcGxlbWVudGVkCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMzOTE4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83
NDM2ODYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFRlc3Q6IHBsYXRmb3JtL3dpbi9hY2Nlc3NpYmlsaXR5L3NlbGVjdGlvbi1hbmQtZm9jdXMuaHRt
bAorCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5TWVudUxpc3RPcHRpb24u
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eU1lbnVMaXN0T3B0aW9uOjpzZXRT
ZWxlY3RlZCk6CisgICAgICAgIFJldHVybiBlYXJseSBpZiB0aGUgb2JqZWN0IGlzIG5vdCBzZWxl
Y3RhYmxlLgorCiAyMDEwLTAxLTE3ICBKb24gSG9uZXljdXR0ICA8amhvbmV5Y3V0dEBhcHBsZS5j
b20+CiAKICAgICAgICAgTVNBQTogVGhlIGNoaWxkIDxvcHRpb24+IGVsZW1lbnRzIG9mIGEgbm9u
LW11bHRpcGxlIDxzZWxlY3Q+IGFyZSBub3QKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYWNjZXNzaWJp
bGl0eS9BY2Nlc3NpYmlsaXR5TWVudUxpc3RPcHRpb24uY3BwIGIvV2ViQ29yZS9hY2Nlc3NpYmls
aXR5L0FjY2Vzc2liaWxpdHlNZW51TGlzdE9wdGlvbi5jcHAKaW5kZXggMmE3YmQ5MS4uZDc0NzNk
ZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlNZW51TGlz
dE9wdGlvbi5jcHAKKysrIGIvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlNZW51
TGlzdE9wdGlvbi5jcHAKQEAgLTgzLDYgKzgzLDkgQEAgYm9vbCBBY2Nlc3NpYmlsaXR5TWVudUxp
c3RPcHRpb246OmlzU2VsZWN0ZWQoKSBjb25zdAogCiB2b2lkIEFjY2Vzc2liaWxpdHlNZW51TGlz
dE9wdGlvbjo6c2V0U2VsZWN0ZWQoYm9vbCBiKQogeworICAgIGlmICghY2FuU2V0U2VsZWN0ZWRB
dHRyaWJ1dGUoKSkKKyAgICAgICAgcmV0dXJuOworCiAgICAgc3RhdGljX2Nhc3Q8SFRNTE9wdGlv
bkVsZW1lbnQqPihtX2VsZW1lbnQuZ2V0KCkpLT5zZXRTZWxlY3RlZChiKTsKIH0KIApkaWZmIC0t
Z2l0IGEvV2ViS2l0L3dpbi9BY2Nlc3NpYmxlQmFzZS5jcHAgYi9XZWJLaXQvd2luL0FjY2Vzc2li
bGVCYXNlLmNwcAppbmRleCA5MzBhYjlmLi45NzhhMzM5IDEwMDY0NAotLS0gYS9XZWJLaXQvd2lu
L0FjY2Vzc2libGVCYXNlLmNwcAorKysgYi9XZWJLaXQvd2luL0FjY2Vzc2libGVCYXNlLmNwcApA
QCAtMjksNiArMjksOCBAQAogCiAjaW5jbHVkZSAiQWNjZXNzaWJsZUltYWdlLmgiCiAjaW5jbHVk
ZSAiV2ViVmlldy5oIgorI2luY2x1ZGUgPFdlYkNvcmUvQWNjZXNzaWJpbGl0eUxpc3RCb3guaD4K
KyNpbmNsdWRlIDxXZWJDb3JlL0FjY2Vzc2liaWxpdHlNZW51TGlzdFBvcHVwLmg+CiAjaW5jbHVk
ZSA8V2ViQ29yZS9BY2Nlc3NpYmlsaXR5T2JqZWN0Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9BWE9i
amVjdENhY2hlLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9CU3RyaW5nLmg+CkBAIC0zNjIsOSArMzY0
LDU0IEBAIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgQWNjZXNzaWJsZUJhc2U6OmdldF9hY2NL
ZXlib2FyZFNob3J0Y3V0KFZBUklBTlQgdkNoaWxkCiAgICAgcmV0dXJuIFNfT0s7CiB9CiAKLUhS
RVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgQWNjZXNzaWJsZUJhc2U6OmFjY1NlbGVjdChsb25nLCBW
QVJJQU5UKQorSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBBY2Nlc3NpYmxlQmFzZTo6YWNjU2Vs
ZWN0KGxvbmcgc2VsZWN0aW9uRmxhZ3MsIFZBUklBTlQgdkNoaWxkKQogewotICAgIHJldHVybiBF
X05PVElNUEw7CisgICAgLy8gQWNjb3JkaW5nIHRvIE1TRE4sIHRoZXNlIGNvbWJpbmF0aW9ucyBh
cmUgaW52YWxpZC4KKyAgICBpZiAoKChzZWxlY3Rpb25GbGFncyAmIChTRUxGTEFHX0FERFNFTEVD
VElPTiB8IFNFTEZMQUdfUkVNT1ZFU0VMRUNUSU9OKSkgPT0gKFNFTEZMQUdfQUREU0VMRUNUSU9O
IHwgU0VMRkxBR19SRU1PVkVTRUxFQ1RJT04pKSB8fAorICAgICAgICAoKHNlbGVjdGlvbkZsYWdz
ICYgKFNFTEZMQUdfQUREU0VMRUNUSU9OIHwgU0VMRkxBR19UQUtFU0VMRUNUSU9OKSkgPT0gKFNF
TEZMQUdfQUREU0VMRUNUSU9OIHwgU0VMRkxBR19UQUtFU0VMRUNUSU9OKSkgfHwKKyAgICAgICAg
KChzZWxlY3Rpb25GbGFncyAmIChTRUxGTEFHX1JFTU9WRVNFTEVDVElPTiB8IFNFTEZMQUdfVEFL
RVNFTEVDVElPTikpID09IChTRUxGTEFHX1JFTU9WRVNFTEVDVElPTiB8IFNFTEZMQUdfVEFLRVNF
TEVDVElPTikpIHx8CisgICAgICAgICgoc2VsZWN0aW9uRmxhZ3MgJiAoU0VMRkxBR19FWFRFTkRT
RUxFQ1RJT04gfCBTRUxGTEFHX1RBS0VTRUxFQ1RJT04pKSA9PSAoU0VMRkxBR19SRU1PVkVTRUxF
Q1RJT04gfCBTRUxGTEFHX1RBS0VTRUxFQ1RJT04pKSkKKyAgICAgICAgcmV0dXJuIEVfSU5WQUxJ
REFSRzsKKworICAgIEFjY2Vzc2liaWxpdHlPYmplY3QqIGNoaWxkT2JqZWN0OworICAgIEhSRVNV
TFQgaHIgPSBnZXRBY2Nlc3NpYmlsaXR5T2JqZWN0Rm9yQ2hpbGQodkNoaWxkLCBjaGlsZE9iamVj
dCk7CisKKyAgICBpZiAoRkFJTEVEKGhyKSkKKyAgICAgICAgcmV0dXJuIGhyOworCisgICAgaWYg
KHNlbGVjdGlvbkZsYWdzICYgU0VMRkxBR19UQUtFRk9DVVMpCisgICAgICAgIGNoaWxkT2JqZWN0
LT5zZXRGb2N1c2VkKHRydWUpOworCisgICAgQWNjZXNzaWJpbGl0eU9iamVjdCogcGFyZW50T2Jq
ZWN0ID0gY2hpbGRPYmplY3QtPnBhcmVudE9iamVjdCgpOworICAgIGlmICghcGFyZW50T2JqZWN0
KQorICAgICAgICByZXR1cm4gRV9JTlZBTElEQVJHOworCisgICAgaWYgKHNlbGVjdGlvbkZsYWdz
ICYgU0VMRkxBR19UQUtFU0VMRUNUSU9OKSB7CisgICAgICAgIGlmIChwYXJlbnRPYmplY3QtPmlz
TGlzdEJveCgpKSB7CisgICAgICAgICAgICBWZWN0b3I8UmVmUHRyPEFjY2Vzc2liaWxpdHlPYmpl
Y3Q+ID4gc2VsZWN0ZWRDaGlsZHJlbigxKTsKKyAgICAgICAgICAgIHNlbGVjdGVkQ2hpbGRyZW5b
MF0gPSBjaGlsZE9iamVjdDsKKyAgICAgICAgICAgIHN0YXRpY19jYXN0PEFjY2Vzc2liaWxpdHlM
aXN0Qm94Kj4ocGFyZW50T2JqZWN0KS0+c2V0U2VsZWN0ZWRDaGlsZHJlbihzZWxlY3RlZENoaWxk
cmVuKTsKKyAgICAgICAgfSBlbHNlIGlmIChwYXJlbnRPYmplY3QtPmlzTWVudUxpc3RQb3B1cCgp
KQorICAgICAgICAgICAgY2hpbGRPYmplY3QtPnNldFNlbGVjdGVkKHRydWUpOworICAgICAgICBl
bHNlCisgICAgICAgICAgICByZXR1cm4gRV9JTlZBTElEQVJHOworICAgIH0KKworICAgIC8vIE1T
RE4gc2F5cyB0aGF0IEFERCwgUkVNT1ZFLCBhbmQgRVhURU5EU0VMRUNUSU9OIGFyZSBpbnZhbGlk
IGZvcgorICAgIC8vIHNpbmdsZS1zZWxlY3QuCisgICAgaWYgKCFwYXJlbnRPYmplY3QtPmlzTXVs
dGlTZWxlY3RhYmxlKCkpCisgICAgICAgIHJldHVybiBFX0lOVkFMSURBUkc7CisKKyAgICBpZiAo
c2VsZWN0aW9uRmxhZ3MgJiBTRUxGTEFHX0FERFNFTEVDVElPTikKKyAgICAgICAgY2hpbGRPYmpl
Y3QtPnNldFNlbGVjdGVkKHRydWUpOworCisgICAgaWYgKHNlbGVjdGlvbkZsYWdzICYgU0VMRkxB
R19SRU1PVkVTRUxFQ1RJT04pCisgICAgICAgIGNoaWxkT2JqZWN0LT5zZXRTZWxlY3RlZChmYWxz
ZSk7CisKKyAgICAvLyBGSVhNRTogU2hvdWxkIGltcGxlbWVudCBTRUxGTEFHX0VYVEVORFNFTEVD
VElPTi4gRm9yIG5vdywgd2UganVzdCByZXR1cm4KKyAgICAvLyBTX09LLCBtYXRjaGluZyBGaXJl
Zm94LgorCisgICAgcmV0dXJuIFNfT0s7CiB9CiAKIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUg
QWNjZXNzaWJsZUJhc2U6OmdldF9hY2NTZWxlY3Rpb24oVkFSSUFOVCopCmRpZmYgLS1naXQgYS9X
ZWJLaXQvd2luL0NoYW5nZUxvZyBiL1dlYktpdC93aW4vQ2hhbmdlTG9nCmluZGV4IDU3MmNjMTku
LmU5YTZlNDUgMTAwNjQ0Ci0tLSBhL1dlYktpdC93aW4vQ2hhbmdlTG9nCisrKyBiL1dlYktpdC93
aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTAtMDEtMjAgIEpvbiBIb25leWN1dHQg
IDxqaG9uZXljdXR0QGFwcGxlLmNvbT4KKworICAgICAgICBNU0FBOiBhY2NTZWxlY3QoKSBpcyBu
b3QgaW1wbGVtZW50ZWQKKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MzM5MTgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzc0MzY4NjE+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBBY2Nlc3NpYmxlQmFz
ZS5jcHA6CisgICAgICAgIChBY2Nlc3NpYmxlQmFzZTo6YWNjU2VsZWN0KToKKyAgICAgICAgSWYg
dGhlcmUgaXMgYW4gaW52YWxpZCBjb21iaW5hdGlvbiBvZiBzdGF0ZSBmbGFncywgcmV0dXJuIGVh
cmx5LiBJZiB0aGUKKyAgICAgICAgY2FsbGVyIHBhc3NlZCB0aGUgInRha2UgZm9jdXMiIGZsYWcs
IGZvY3VzIHRoZSBvYmplY3QuIElmIHRoZSAidGFrZQorICAgICAgICBzZWxlY3Rpb24iIGZsYWcg
d2FzIHBhc3NlZCwgY2hlY2sgd2hldGhlciB0aGUgcGFyZW50IG9iamVjdCBpcyBhbgorICAgICAg
ICBBY2Nlc3NpYmlsaXR5TGlzdEJveDsgaWYgc28sIGNhbGwgdGhlIG9iamVjdCdzIHNldFNlbGVj
dGVkQ2hpbGRyZW4oKQorICAgICAgICBmdW5jdGlvbi4gSWYgdGhlIHBhcmVudCBpcyBhbiBBY2Nl
c3NpYmlsaXR5TWVudUxpc3RQb3B1cCwgY2FsbCB0aGUKKyAgICAgICAgY2hpbGQgb2JqZWN0J3Mg
c2V0U2VsZWN0ZWQoKSBmdW5jdGlvbi4gT3RoZXJ3aXNlLCBpZiB0aGUgcGFyZW50IGlzIHNvbWUK
KyAgICAgICAgb3RoZXIsIHVuc3VwcG9ydGVkIG9iamVjdCwgcmV0dXJuIGVhcmx5LgorICAgICAg
ICBJZiB0aGUgc2VsZWN0aW9uIGZsYWdzIGluY2x1ZGUgImFkZCIsICJyZW1vdmUiLCBvciAiZXh0
ZW5kIiBzZWxlY3Rpb24sCisgICAgICAgIGFuZCB0aGUgcGFyZW50IG9iamVjdCBpcyBub3QgbXVs
dGktc2VsZWN0YWJsZSwgcmV0dXJuIGVhcmx5LiBPdGhlcndpc2UsCisgICAgICAgIHNldCBvciB1
bnNldCB0aGUgY2hpbGQncyBzZWxlY3RlZCBmbGFnIGJhc2VkIG9uIHRoZSBwYXNzZWQgZmxhZy4K
KwogMjAxMC0wMS0xNyAgSm9uIEhvbmV5Y3V0dCAgPGpob25leWN1dHRAYXBwbGUuY29tPgogCiAg
ICAgICAgIE1TQUE6IFRoZSBjaGlsZCA8b3B0aW9uPiBlbGVtZW50cyBvZiBhIG5vbi1tdWx0aXBs
ZSA8c2VsZWN0PiBhcmUgbm90CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cgYi9X
ZWJLaXRUb29scy9DaGFuZ2VMb2cKaW5kZXggMjRjODliMy4uYTk0YTQ2ZCAxMDA2NDQKLS0tIGEv
V2ViS2l0VG9vbHMvQ2hhbmdlTG9nCisrKyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDU3IEBACisyMDEwLTAxLTIwICBKb24gSG9uZXljdXR0ICA8amhvbmV5Y3V0dEBhcHBsZS5j
b20+CisKKyAgICAgICAgTVNBQTogYWNjU2VsZWN0KCkgaXMgbm90IGltcGxlbWVudGVkCisKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMzOTE4CisgICAg
ICAgIDxyZGFyOi8vcHJvYmxlbS83NDM2ODYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxl
bWVudC5jcHA6CisgICAgICAgICh0YWtlRm9jdXNDYWxsYmFjayk6CisgICAgICAgIENhbGwgdGhl
IG9iamVjdCdzIHRha2VGb2N1cygpIGZ1bmN0aW9uLgorICAgICAgICAodGFrZVNlbGVjdGlvbkNh
bGxiYWNrKToKKyAgICAgICAgQ2FsbCBpdHMgdGFrZVNlbGVjdGlvbigpIGZ1bmN0aW9uLgorICAg
ICAgICAoYWRkU2VsZWN0aW9uQ2FsbGJhY2spOgorICAgICAgICBDYWxsIGl0cyBhZGRTZWxlY3Rp
b24oKSBmdW5jdGlvbi4KKyAgICAgICAgKHJlbW92ZVNlbGVjdGlvbkNhbGxiYWNrKToKKyAgICAg
ICAgQ2FsbCBpdHMgcmVtb3ZlU2VsZWN0aW9uKCkgZnVuY3Rpb24uCisgICAgICAgIChBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50OjpnZXRKU0NsYXNzKToKKyAgICAgICAgQWRkIG5ldyBmdW5jdGlvbnMg
dG8gdGhlIEpTIGNsYXNzIGRlZmluaXRpb24uCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9B
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50Lmg6CisgICAgICAgIERlY2xhcmUgbmV3IGZ1bmN0aW9ucy4K
KworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2d0ay9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50R3Rr
LmNwcDoKKyAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnRha2VGb2N1cyk6CisgICAg
ICAgIFN0dWJiZWQuCisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojp0YWtlU2VsZWN0
aW9uKToKKyAgICAgICAgU3R1YmJlZC4KKyAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6
OmFkZFNlbGVjdGlvbik6CisgICAgICAgIFN0dWJiZWQuCisgICAgICAgIChBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50OjpyZW1vdmVTZWxlY3Rpb24pOgorICAgICAgICBTdHViYmVkLgorCisgICAgICAg
ICogRHVtcFJlbmRlclRyZWUvbWFjL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRNYWMubW06CisgICAg
ICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojp0YWtlRm9jdXMpOgorICAgICAgICBTdHViYmVk
LgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dGFrZVNlbGVjdGlvbik6CisgICAg
ICAgIFN0dWJiZWQuCisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjphZGRTZWxlY3Rp
b24pOgorICAgICAgICBTdHViYmVkLgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6
cmVtb3ZlU2VsZWN0aW9uKToKKyAgICAgICAgU3R1YmJlZC4KKworICAgICAgICAqIER1bXBSZW5k
ZXJUcmVlL3dpbi9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50V2luLmNwcDoKKyAgICAgICAgKEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ6OnRha2VGb2N1cyk6CisgICAgICAgIENhbGwgdGhlIG9iamVjdCdz
IGFjY1NlbGVjdCgpIGZ1bmN0aW9uLCBwYXNzaW5nIHRoZSBhcHByb3ByaWF0ZSBmbGFnLgorICAg
ICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dGFrZVNlbGVjdGlvbik6CisgICAgICAgIERp
dHRvLgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6YWRkU2VsZWN0aW9uKToKKyAg
ICAgICAgRGl0dG8uCisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpyZW1vdmVTZWxl
Y3Rpb24pOgorICAgICAgICBEaXR0by4KKwogMjAxMC0wMS0xNyAgSm9uIEhvbmV5Y3V0dCAgPGpo
b25leWN1dHRAYXBwbGUuY29tPgogCiAgICAgICAgIE1TQUE6IFRoZSBjaGlsZCA8b3B0aW9uPiBl
bGVtZW50cyBvZiBhIG5vbi1tdWx0aXBsZSA8c2VsZWN0PiBhcmUgbm90CmRpZmYgLS1naXQgYS9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmNwcCBiL1dl
YktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuY3BwCmluZGV4
IDk1OGQyMDYuLjg3ZmUwNWMgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuY3BwCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJU
cmVlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuY3BwCkBAIC0zNDQsNiArMzQ0LDMxIEBAIHN0YXRp
YyBKU1ZhbHVlUmVmIHNob3dNZW51Q2FsbGJhY2soSlNDb250ZXh0UmVmIGNvbnRleHQsIEpTT2Jq
ZWN0UmVmIGZ1bmN0aW9uLCBKCiAgICAgcmV0dXJuIEpTVmFsdWVNYWtlVW5kZWZpbmVkKGNvbnRl
eHQpOwogfQogCitzdGF0aWMgSlNWYWx1ZVJlZiB0YWtlRm9jdXNDYWxsYmFjayhKU0NvbnRleHRS
ZWYgY29udGV4dCwgSlNPYmplY3RSZWYgZnVuY3Rpb24sIEpTT2JqZWN0UmVmIHRoaXNPYmplY3Qs
IHNpemVfdCBhcmd1bWVudENvdW50LCBjb25zdCBKU1ZhbHVlUmVmIGFyZ3VtZW50c1tdLCBKU1Zh
bHVlUmVmKiBleGNlcHRpb24pCit7CisgICAgdG9BWEVsZW1lbnQodGhpc09iamVjdCktPnRha2VG
b2N1cygpOworICAgIHJldHVybiBKU1ZhbHVlTWFrZVVuZGVmaW5lZChjb250ZXh0KTsKK30KKwor
c3RhdGljIEpTVmFsdWVSZWYgdGFrZVNlbGVjdGlvbkNhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250
ZXh0LCBKU09iamVjdFJlZiBmdW5jdGlvbiwgSlNPYmplY3RSZWYgdGhpc09iamVjdCwgc2l6ZV90
IGFyZ3VtZW50Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYq
IGV4Y2VwdGlvbikKK3sKKyAgICB0b0FYRWxlbWVudCh0aGlzT2JqZWN0KS0+dGFrZVNlbGVjdGlv
bigpOworICAgIHJldHVybiBKU1ZhbHVlTWFrZVVuZGVmaW5lZChjb250ZXh0KTsKK30KKworc3Rh
dGljIEpTVmFsdWVSZWYgYWRkU2VsZWN0aW9uQ2FsbGJhY2soSlNDb250ZXh0UmVmIGNvbnRleHQs
IEpTT2JqZWN0UmVmIGZ1bmN0aW9uLCBKU09iamVjdFJlZiB0aGlzT2JqZWN0LCBzaXplX3QgYXJn
dW1lbnRDb3VudCwgY29uc3QgSlNWYWx1ZVJlZiBhcmd1bWVudHNbXSwgSlNWYWx1ZVJlZiogZXhj
ZXB0aW9uKQoreworICAgIHRvQVhFbGVtZW50KHRoaXNPYmplY3QpLT5hZGRTZWxlY3Rpb24oKTsK
KyAgICByZXR1cm4gSlNWYWx1ZU1ha2VVbmRlZmluZWQoY29udGV4dCk7Cit9CisKK3N0YXRpYyBK
U1ZhbHVlUmVmIHJlbW92ZVNlbGVjdGlvbkNhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250ZXh0LCBK
U09iamVjdFJlZiBmdW5jdGlvbiwgSlNPYmplY3RSZWYgdGhpc09iamVjdCwgc2l6ZV90IGFyZ3Vt
ZW50Q291bnQsIGNvbnN0IEpTVmFsdWVSZWYgYXJndW1lbnRzW10sIEpTVmFsdWVSZWYqIGV4Y2Vw
dGlvbikKK3sKKyAgICB0b0FYRWxlbWVudCh0aGlzT2JqZWN0KS0+cmVtb3ZlU2VsZWN0aW9uKCk7
CisgICAgcmV0dXJuIEpTVmFsdWVNYWtlVW5kZWZpbmVkKGNvbnRleHQpOworfQorCisKIC8vIFN0
YXRpYyBWYWx1ZSBHZXR0ZXJzCiAKIHN0YXRpYyBKU1ZhbHVlUmVmIGdldEFSSUFEcm9wRWZmZWN0
c0NhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU09iamVjdFJlZiB0aGlzT2JqZWN0LCBK
U1N0cmluZ1JlZiBwcm9wZXJ0eU5hbWUsIEpTVmFsdWVSZWYqIGV4Y2VwdGlvbikKQEAgLTY3Nyw2
ICs3MDIsMTAgQEAgSlNDbGFzc1JlZiBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpnZXRKU0NsYXNz
KCkKICAgICAgICAgeyAic2VsZWN0ZWRSb3dBdEluZGV4Iiwgc2VsZWN0ZWRSb3dBdEluZGV4Q2Fs
bGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0
ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAiaXNFcXVhbCIsIGlzRXF1YWxDYWxsYmFjaywga0pT
UHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0cmlidXRlRG9udERlbGV0
ZSB9LAogICAgICAgICB7ICJhZGROb3RpZmljYXRpb25MaXN0ZW5lciIsIGFkZE5vdGlmaWNhdGlv
bkxpc3RlbmVyQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9w
ZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKKyAgICAgICAgeyAidGFrZUZvY3VzIiwgdGFrZUZv
Y3VzQ2FsbGJhY2ssIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQcm9wZXJ0eUF0
dHJpYnV0ZURvbnREZWxldGUgfSwKKyAgICAgICAgeyAidGFrZVNlbGVjdGlvbiIsIHRha2VTZWxl
Y3Rpb25DYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5
QXR0cmlidXRlRG9udERlbGV0ZSB9LAorICAgICAgICB7ICJhZGRTZWxlY3Rpb24iLCBhZGRTZWxl
Y3Rpb25DYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5
QXR0cmlidXRlRG9udERlbGV0ZSB9LAorICAgICAgICB7ICJyZW1vdmVTZWxlY3Rpb24iLCByZW1v
dmVTZWxlY3Rpb25DYWxsYmFjaywga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1By
b3BlcnR5QXR0cmlidXRlRG9udERlbGV0ZSB9LAogICAgICAgICB7IDAsIDAsIDAgfQogICAgIH07
CiAKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlV
SUVsZW1lbnQuaCBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL0FjY2Vzc2liaWxpdHlVSUVs
ZW1lbnQuaAppbmRleCBmNWNjMjU1Li5lN2QzYmM3IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9E
dW1wUmVuZGVyVHJlZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmgKKysrIGIvV2ViS2l0VG9vbHMv
RHVtcFJlbmRlclRyZWUvQWNjZXNzaWJpbGl0eVVJRWxlbWVudC5oCkBAIC03NCw3ICs3NCwxMiBA
QCBwdWJsaWM6CiAgICAgaW50IGNoaWxkcmVuQ291bnQoKTsKICAgICBBY2Nlc3NpYmlsaXR5VUlF
bGVtZW50IHRpdGxlVUlFbGVtZW50KCk7CiAgICAgQWNjZXNzaWJpbGl0eVVJRWxlbWVudCBwYXJl
bnRFbGVtZW50KCk7Ci0gICAgCisKKyAgICB2b2lkIHRha2VGb2N1cygpOworICAgIHZvaWQgdGFr
ZVNlbGVjdGlvbigpOworICAgIHZvaWQgYWRkU2VsZWN0aW9uKCk7CisgICAgdm9pZCByZW1vdmVT
ZWxlY3Rpb24oKTsKKwogICAgIC8vIE1ldGhvZHMgLSBwbGF0Zm9ybS1pbmRlcGVuZGVudCBpbXBs
ZW1lbnRhdGlvbnMKICAgICBKU1N0cmluZ1JlZiBhbGxBdHRyaWJ1dGVzKCk7CiAgICAgSlNTdHJp
bmdSZWYgYXR0cmlidXRlc09mTGlua2VkVUlFbGVtZW50cygpOwpkaWZmIC0tZ2l0IGEvV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRHdGsuY3BwIGIv
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvZ3RrL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRHdGsu
Y3BwCmluZGV4IDQzMDdjNmQuLmFiZmUxMTUgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBS
ZW5kZXJUcmVlL2d0ay9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50R3RrLmNwcAorKysgYi9XZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9ndGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEd0ay5jcHAKQEAg
LTU5MywzICs1OTMsMjMgQEAgYm9vbCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpoYXNQb3B1cCgp
IGNvbnN0CiAgICAgLy8gRklYTUU6IGltcGxlbWVudAogICAgIHJldHVybiBmYWxzZTsKIH0KKwor
dm9pZCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojp0YWtlRm9jdXMoKQoreworICAgIC8vIEZJWE1F
OiBpbXBsZW1lbnQKK30KKwordm9pZCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojp0YWtlU2VsZWN0
aW9uKCkKK3sKKyAgICAvLyBGSVhNRTogaW1wbGVtZW50Cit9CisKK3ZvaWQgQWNjZXNzaWJpbGl0
eVVJRWxlbWVudDo6YWRkU2VsZWN0aW9uKCkKK3sKKyAgICAvLyBGSVhNRTogaW1wbGVtZW50Cit9
CisKK3ZvaWQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6cmVtb3ZlU2VsZWN0aW9uKCkKK3sKKyAg
ICAvLyBGSVhNRTogaW1wbGVtZW50Cit9CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVu
ZGVyVHJlZS9tYWMvQWNjZXNzaWJpbGl0eVVJRWxlbWVudE1hYy5tbSBiL1dlYktpdFRvb2xzL0R1
bXBSZW5kZXJUcmVlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCmluZGV4IDllYjU5
NDUuLmU5MzYxZjIgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9B
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJU
cmVlL21hYy9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50TWFjLm1tCkBAIC04MTUsMyArODE1LDIzIEBA
IGJvb2wgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6aGFzUG9wdXAoKSBjb25zdAogICAgIC8vIEZJ
WE1FOiBpbXBsZW1lbnQKICAgICByZXR1cm4gZmFsc2U7CiB9CisKK3ZvaWQgQWNjZXNzaWJpbGl0
eVVJRWxlbWVudDo6dGFrZUZvY3VzKCkKK3sKKyAgICAvLyBGSVhNRTogaW1wbGVtZW50Cit9CisK
K3ZvaWQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6dGFrZVNlbGVjdGlvbigpCit7CisgICAgLy8g
RklYTUU6IGltcGxlbWVudAorfQorCit2b2lkIEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmFkZFNl
bGVjdGlvbigpCit7CisgICAgLy8gRklYTUU6IGltcGxlbWVudAorfQorCit2b2lkIEFjY2Vzc2li
aWxpdHlVSUVsZW1lbnQ6OnJlbW92ZVNlbGVjdGlvbigpCit7CisgICAgLy8gRklYTUU6IGltcGxl
bWVudAorfQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvd2luL0FjY2Vz
c2liaWxpdHlVSUVsZW1lbnRXaW4uY3BwIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvd2lu
L0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRXaW4uY3BwCmluZGV4IGEyY2YyMWMuLjlhZmY1ZTYgMTAw
NjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9BY2Nlc3NpYmlsaXR5VUlF
bGVtZW50V2luLmNwcAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS93aW4vQWNjZXNz
aWJpbGl0eVVJRWxlbWVudFdpbi5jcHAKQEAgLTU3MCwzICs1NzAsMjMgQEAgYm9vbCBBY2Nlc3Np
YmlsaXR5VUlFbGVtZW50OjpoYXNQb3B1cCgpIGNvbnN0CiAgICAgRFdPUkQgc3RhdGUgPSBhY2Nl
c3NpYmlsaXR5U3RhdGUobV9lbGVtZW50KTsKICAgICByZXR1cm4gKHN0YXRlICYgU1RBVEVfU1lT
VEVNX0hBU1BPUFVQKSA9PSBTVEFURV9TWVNURU1fSEFTUE9QVVA7CiB9CisKK3ZvaWQgQWNjZXNz
aWJpbGl0eVVJRWxlbWVudDo6dGFrZUZvY3VzKCkKK3sKKyAgICBtX2VsZW1lbnQtPmFjY1NlbGVj
dChTRUxGTEFHX1RBS0VGT0NVUywgc2VsZigpKTsKK30KKwordm9pZCBBY2Nlc3NpYmlsaXR5VUlF
bGVtZW50Ojp0YWtlU2VsZWN0aW9uKCkKK3sKKyAgICBtX2VsZW1lbnQtPmFjY1NlbGVjdChTRUxG
TEFHX1RBS0VTRUxFQ1RJT04sIHNlbGYoKSk7Cit9CisKK3ZvaWQgQWNjZXNzaWJpbGl0eVVJRWxl
bWVudDo6YWRkU2VsZWN0aW9uKCkKK3sKKyAgICBtX2VsZW1lbnQtPmFjY1NlbGVjdChTRUxGTEFH
X0FERFNFTEVDVElPTiwgc2VsZigpKTsKK30KKwordm9pZCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50
OjpyZW1vdmVTZWxlY3Rpb24oKQoreworICAgIG1fZWxlbWVudC0+YWNjU2VsZWN0KFNFTEZMQUdf
UkVNT1ZFU0VMRUNUSU9OLCBzZWxmKCkpOworfQotLSAKMS42LjUuMi4xNDMuZzhjYzYyCgo=
</data>
<flag name="review"
          id="29417"
          type_id="1"
          status="+"
          setter="darin"
    />
    <flag name="commit-queue"
          id="29418"
          type_id="3"
          status="-"
          setter="jhoneycutt"
    />
          </attachment>
      

    </bug>

</bugzilla>