<?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>106651</bug_id>
          
          <creation_ts>2013-01-11 03:18:44 -0800</creation_ts>
          <short_desc>[Qt][WK1] Web Audio support</short_desc>
          <delta_ts>2013-02-19 05:11:27 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Audio</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>110211</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Allan Sandfeld Jensen">allan.jensen</reporter>
          <assigned_to name="Allan Sandfeld Jensen">allan.jensen</assigned_to>
          <cc>abecsi</cc>
    
    <cc>crogers</cc>
    
    <cc>jturcotte</cc>
    
    <cc>s.choi</cc>
    
    <cc>vestbo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>805129</commentid>
    <comment_count>0</comment_count>
    <who name="Allan Sandfeld Jensen">allan.jensen</who>
    <bug_when>2013-01-11 03:18:44 -0800</bug_when>
    <thetext>If WebAudio is compiled in, it can currently only be used by the WebKit2 API. For WebKit1 support, we need to be able to enable it at runtime, and support audio-testing in DumpRenderTree.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>805132</commentid>
    <comment_count>1</comment_count>
      <attachid>182315</attachid>
    <who name="Allan Sandfeld Jensen">allan.jensen</who>
    <bug_when>2013-01-11 03:25:16 -0800</bug_when>
    <thetext>Created attachment 182315
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>805174</commentid>
    <comment_count>2</comment_count>
      <attachid>182321</attachid>
    <who name="Allan Sandfeld Jensen">allan.jensen</who>
    <bug_when>2013-01-11 04:40:27 -0800</bug_when>
    <thetext>Created attachment 182321
Patch

Make WebAudio configurable from QtTestBrowser, and enable LEGACY_WEB_AUDIO which is needed for the majority of Web Audio tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>805190</commentid>
    <comment_count>3</comment_count>
      <attachid>182321</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2013-01-11 05:09:15 -0800</bug_when>
    <thetext>Comment on attachment 182321
Patch

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

&gt; Source/WebCore/bridge/qt/qt_runtime.cpp:509
&gt; +            } else if (type == RTUint8Array) {
&gt; +                WTF::Uint8Array* arr = toUint8Array(toJS(toJS(context), value));
&gt; +                ret = QVariant(QByteArray(reinterpret_cast&lt;const char*&gt;(arr-&gt;data()), arr-&gt;length()));
&gt; +                dist = 0;

Uint8ClampedArray is a child class of Uint8Array, could you merge the two cases?

&gt; Source/WebKit/qt/Api/qwebsettings.cpp:541
&gt; +    d-&gt;attributes.insert(QWebSettings::WebAudioEnabled, false);

Should this be enabled by default like other HTML5 features?
On one side I&apos;m not sure if it&apos;s good to change the default value afterward.
On the other side we can&apos;t enable it by default if we only have it working on Linux.

&gt; Tools/DumpRenderTree/qt/DumpRenderTreeQt.cpp:931
&gt; +        fprintf(stdout, &quot;Content-Type: %s\n&quot;, resultContentType.toUtf8().constData());

This could be a good use of qPrintable.

&gt; Tools/DumpRenderTree/qt/DumpRenderTreeQt.cpp:942
&gt; +        fprintf(stdout, &quot;Content-Type: %s\n&quot;, resultContentType.toUtf8().constData());

ditto

&gt; Tools/QtTestBrowser/launcherwindow.cpp:219
&gt; -    settings-&gt;setAttribute(QWebSettings::WebGLEnabled, m_windowOptions.useWebGL);
&gt; +    m_windowOptions.useWebGL = settings-&gt;testAttribute(QWebSettings::WebGLEnabled);

I think that this will break the -webgl command line option.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>805202</commentid>
    <comment_count>4</comment_count>
    <who name="Allan Sandfeld Jensen">allan.jensen</who>
    <bug_when>2013-01-11 05:34:19 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 182321 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=182321&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/bridge/qt/qt_runtime.cpp:509
&gt; &gt; +            } else if (type == RTUint8Array) {
&gt; &gt; +                WTF::Uint8Array* arr = toUint8Array(toJS(toJS(context), value));
&gt; &gt; +                ret = QVariant(QByteArray(reinterpret_cast&lt;const char*&gt;(arr-&gt;data()), arr-&gt;length()));
&gt; &gt; +                dist = 0;
&gt; 
&gt; Uint8ClampedArray is a child class of Uint8Array, could you merge the two cases?
&gt; 
It is possible, at least from JS -&gt; Qt it should be safe. The other way we still want to get the clampedarray.

&gt; &gt; Source/WebKit/qt/Api/qwebsettings.cpp:541
&gt; &gt; +    d-&gt;attributes.insert(QWebSettings::WebAudioEnabled, false);
&gt; 
&gt; Should this be enabled by default like other HTML5 features?
&gt; On one side I&apos;m not sure if it&apos;s good to change the default value afterward.
&gt; On the other side we can&apos;t enable it by default if we only have it working on Linux.
&gt; 
True. I want to start by having it off by default until we know if it works on more than linux. Note that this patch still doesn&apos;t enable the feature at compile time.

&gt; &gt; Tools/QtTestBrowser/launcherwindow.cpp:219
&gt; &gt; -    settings-&gt;setAttribute(QWebSettings::WebGLEnabled, m_windowOptions.useWebGL);
&gt; &gt; +    m_windowOptions.useWebGL = settings-&gt;testAttribute(QWebSettings::WebGLEnabled);
&gt; 
&gt; I think that this will break the -webgl command line option.

I hadn&apos;t thought of that, but I guess it still works. WebGL is enabled by default these days.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>805206</commentid>
    <comment_count>5</comment_count>
      <attachid>182327</attachid>
    <who name="Allan Sandfeld Jensen">allan.jensen</who>
    <bug_when>2013-01-11 05:46:43 -0800</bug_when>
    <thetext>Created attachment 182327
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>805231</commentid>
    <comment_count>6</comment_count>
    <who name="Allan Sandfeld Jensen">allan.jensen</who>
    <bug_when>2013-01-11 06:39:08 -0800</bug_when>
    <thetext>Committed r139437: &lt;http://trac.webkit.org/changeset/139437&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>182315</attachid>
            <date>2013-01-11 03:25:16 -0800</date>
            <delta_ts>2013-01-11 04:40:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-106651-20130111122143.patch</filename>
            <type>text/plain</type>
            <size>11901</size>
            <attacher name="Allan Sandfeld Jensen">allan.jensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5MzAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTZlNWUyMTI1ODc3M2Y5
NmFiMjA4Y2E4OGI2NDhkZjk3NGFjNjA1ZS4uMTIxNmZkMDRlNzY4YWYxOWI0M2ZhNDM1NmY4NmY3
OWUxOWM5MDg5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEzLTAxLTExICBBbGxh
biBTYW5kZmVsZCBKZW5zZW4gIDxhbGxhbi5qZW5zZW5AZGlnaWEuY29tPgorCisgICAgICAgIFtR
dF1bV0sxXSBXZWIgQXVkaW8gc3VwcG9ydAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTA2NjUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQ29udmVydCBKYXZhU2NyaXB0IFVpbnQ4QXJyYXkgdG8gUUJ5dGVB
cnJheS4gVGhpcyBjb252ZXJzaW9uIGlzIG5lY2Vzc2FyeSB0byBzdXBwb3J0IHRlc3RSdW5uZXIu
c2V0QXVkaW9EYXRhKCkuCisKKyAgICAgICAgKiBicmlkZ2UvcXQvcXRfcnVudGltZS5jcHA6Cisg
ICAgICAgIChKU0M6OkJpbmRpbmdzOjppc0pTVWludDhBcnJheSk6CisgICAgICAgIChCaW5kaW5n
cyk6CisgICAgICAgIChKU0M6OkJpbmRpbmdzOjp2YWx1ZVJlYWxUeXBlKToKKyAgICAgICAgKEpT
Qzo6QmluZGluZ3M6OmNvbnZlcnRWYWx1ZVRvUVZhcmlhbnQpOgorCiAyMDEzLTAxLTAzICBBbGxh
biBTYW5kZmVsZCBKZW5zZW4gIDxhbGxhbi5qZW5zZW5AZGlnaWEuY29tPgogCiAgICAgICAgIFtR
dF0gU3VwcG9ydCAtd2Via2l0LWZvbnQtc21vb3RoaW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L3F0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IGMwNjFk
NWU2OTM5M2U0N2ZhNjVhOWRjZmI0MjIwM2JlMTZkNDk4MTQuLjZiMDZkNzBlMzQ2NWQ5ZTY3MWNj
MWNmNWFjYjVhOTY0NDU4YWU5ZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIw
MTMtMDEtMTEgIEFsbGFuIFNhbmRmZWxkIEplbnNlbiAgPGFsbGFuLmplbnNlbkBkaWdpYS5jb20+
CisKKyAgICAgICAgW1F0XVtXSzFdIFdlYiBBdWRpbyBzdXBwb3J0CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDY2NTEKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFeHBvc2Ugc2V0dGluZyB0byBlbmFibGUg
V2ViQXVkaW8gYXQgcnVudGltZS4KKworICAgICAgICAqIEFwaS9xd2Vic2V0dGluZ3MuY3BwOgor
ICAgICAgICAoUVdlYlNldHRpbmdzUHJpdmF0ZTo6YXBwbHkpOgorICAgICAgICAoUVdlYlNldHRp
bmdzOjpRV2ViU2V0dGluZ3MpOgorICAgICAgICAqIEFwaS9xd2Vic2V0dGluZ3MuaDoKKwogMjAx
My0wMS0wOCAgTWFyayBMYW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3Zl
ZCB0aGUgbmVlZCBmb3IgdGhlIFByb3Bvc2VkRGF0YWJhc2UgbWVjaGFuaXNtLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3F0L3F0X3J1bnRpbWUuY3BwIGIvU291cmNlL1dlYkNv
cmUvYnJpZGdlL3F0L3F0X3J1bnRpbWUuY3BwCmluZGV4IDEzMTIzOTUzMzNlZTQwM2MyMDljN2Yw
ZjFkNWFjYjc2MjlmNjllMzIuLjUyMTczY2UzNzVkOWM0ZmQ0Mzk0OTAzY2UyMTc5Njg5NzgwYjcy
YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9ydW50aW1lLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGltZS5jcHAKQEAgLTEwMyw2ICsx
MDMsNyBAQCB0eXBlZGVmIGVudW0gewogICAgIFFPYmosCiAgICAgT2JqZWN0LAogICAgIE51bGws
CisgICAgUlRVaW50OEFycmF5LAogICAgIFJUVWludDhDbGFtcGVkQXJyYXkKIH0gSlNSZWFsVHlw
ZTsKIApAQCAtMTUwLDYgKzE1MSwxMSBAQCBzdGF0aWMgYm9vbCBpc0pTVWludDhDbGFtcGVkQXJy
YXkoSlNPYmplY3RSZWYgb2JqZWN0KQogICAgIHJldHVybiB0b0pTKG9iamVjdCktPmluaGVyaXRz
KCZKU1VpbnQ4Q2xhbXBlZEFycmF5OjpzX2luZm8pOwogfQogCitzdGF0aWMgYm9vbCBpc0pTVWlu
dDhBcnJheShKU09iamVjdFJlZiBvYmplY3QpCit7CisgICAgcmV0dXJuIHRvSlMob2JqZWN0KS0+
aW5oZXJpdHMoJkpTVWludDhBcnJheTo6c19pbmZvKTsKK30KKwogc3RhdGljIGJvb2wgaXNKU0Fy
cmF5KEpTT2JqZWN0UmVmIG9iamVjdCkKIHsKICAgICByZXR1cm4gdG9KUyhvYmplY3QpLT5pbmhl
cml0cygmSlNBcnJheTo6c19pbmZvKTsKQEAgLTE4Miw2ICsxODgsOCBAQCBzdGF0aWMgSlNSZWFs
VHlwZSB2YWx1ZVJlYWxUeXBlKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU1ZhbHVlUmVmIHZhbHVl
LCBKU1ZhbHVlUgogCiAgICAgaWYgKGlzSlNVaW50OENsYW1wZWRBcnJheShvYmplY3QpKQogICAg
ICAgICByZXR1cm4gUlRVaW50OENsYW1wZWRBcnJheTsKKyAgICBpZiAoaXNKU1VpbnQ4QXJyYXko
b2JqZWN0KSkKKyAgICAgICAgcmV0dXJuIFJUVWludDhBcnJheTsKICAgICBpZiAoaXNKU0FycmF5
KG9iamVjdCkpCiAgICAgICAgICAgICByZXR1cm4gQXJyYXk7CiAgICAgaWYgKGlzSlNEYXRlKG9i
amVjdCkpCkBAIC0zNTYsNiArMzY0LDcgQEAgUVZhcmlhbnQgY29udmVydFZhbHVlVG9RVmFyaWFu
dChKU0NvbnRleHRSZWYgY29udGV4dCwgSlNWYWx1ZVJlZiB2YWx1ZSwgUU1ldGFUeXAKICAgICAg
ICAgICAgIGNhc2UgUU9iajoKICAgICAgICAgICAgICAgICBoaW50ID0gUU1ldGFUeXBlOjpRT2Jq
ZWN0U3RhcjsKICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgUlRVaW50
OEFycmF5OgogICAgICAgICAgICAgY2FzZSBSVFVpbnQ4Q2xhbXBlZEFycmF5OgogICAgICAgICAg
ICAgICAgIGhpbnQgPSBRTWV0YVR5cGU6OlFCeXRlQXJyYXk7CiAgICAgICAgICAgICAgICAgYnJl
YWs7CkBAIC00OTQsNiArNTAzLDEwIEBAIFFWYXJpYW50IGNvbnZlcnRWYWx1ZVRvUVZhcmlhbnQo
SlNDb250ZXh0UmVmIGNvbnRleHQsIEpTVmFsdWVSZWYgdmFsdWUsIFFNZXRhVHlwCiAgICAgICAg
ICAgICAgICAgV1RGOjpVaW50OENsYW1wZWRBcnJheSogYXJyID0gdG9VaW50OENsYW1wZWRBcnJh
eSh0b0pTKHRvSlMoY29udGV4dCksIHZhbHVlKSk7CiAgICAgICAgICAgICAgICAgcmV0ID0gUVZh
cmlhbnQoUUJ5dGVBcnJheShyZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPihhcnItPmRhdGEo
KSksIGFyci0+bGVuZ3RoKCkpKTsKICAgICAgICAgICAgICAgICBkaXN0ID0gMDsKKyAgICAgICAg
ICAgIH0gZWxzZSBpZiAodHlwZSA9PSBSVFVpbnQ4QXJyYXkpIHsKKyAgICAgICAgICAgICAgICBX
VEY6OlVpbnQ4QXJyYXkqIGFyciA9IHRvVWludDhBcnJheSh0b0pTKHRvSlMoY29udGV4dCksIHZh
bHVlKSk7CisgICAgICAgICAgICAgICAgcmV0ID0gUVZhcmlhbnQoUUJ5dGVBcnJheShyZWludGVy
cHJldF9jYXN0PGNvbnN0IGNoYXIqPihhcnItPmRhdGEoKSksIGFyci0+bGVuZ3RoKCkpKTsKKyAg
ICAgICAgICAgICAgICBkaXN0ID0gMDsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAg
ICAgICAgcmV0ID0gUVZhcmlhbnQodG9RU3RyaW5nKGNvbnRleHQsIHZhbHVlKS50b0xhdGluMSgp
KTsKICAgICAgICAgICAgICAgICBpZiAodHlwZSA9PSBSVFN0cmluZykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJzZXR0aW5ncy5jcHAgYi9Tb3VyY2UvV2ViS2l0L3F0L0Fw
aS9xd2Vic2V0dGluZ3MuY3BwCmluZGV4IDlkYjAxYjExZThkNDQ4ZGY1MWQ5MjQyYzcxYzdlMDU5
Y2VlYTYyZDUuLmY4ZTQ5OTgzNThhZmJlY2I3OGE1YjAzMDYwYWRjYjY1NGRkMGUxNGUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJzZXR0aW5ncy5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9xdC9BcGkvcXdlYnNldHRpbmdzLmNwcApAQCAtMTY0LDYgKzE2NCwxMCBAQCB2b2lk
IFFXZWJTZXR0aW5nc1ByaXZhdGU6OmFwcGx5KCkKICAgICAgICAgc2V0dGluZ3MtPnNldEFjY2Vs
ZXJhdGVkQ29tcG9zaXRpbmdGb3JDYW52YXNFbmFibGVkKHZhbHVlKTsKICNlbmRpZgogI2VuZGlm
CisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyAgICAgICAgdmFsdWUgPSBhdHRyaWJ1dGVzLnZhbHVl
KFFXZWJTZXR0aW5nczo6V2ViQXVkaW9FbmFibGVkLCBnbG9iYWwtPmF0dHJpYnV0ZXMudmFsdWUo
UVdlYlNldHRpbmdzOjpXZWJBdWRpb0VuYWJsZWQpKTsKKyAgICAgICAgc2V0dGluZ3MtPnNldFdl
YkF1ZGlvRW5hYmxlZCh2YWx1ZSk7CisjZW5kaWYKIAogICAgICAgICB2YWx1ZSA9IGF0dHJpYnV0
ZXMudmFsdWUoUVdlYlNldHRpbmdzOjpDU1NSZWdpb25zRW5hYmxlZCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGdsb2JhbC0+YXR0cmlidXRlcy52YWx1ZShRV2ViU2V0dGluZ3M6
OkNTU1JlZ2lvbnNFbmFibGVkKSk7CkBAIC01MzQsNiArNTM4LDcgQEAgUVdlYlNldHRpbmdzOjpR
V2ViU2V0dGluZ3MoKQogICAgIGQtPmF0dHJpYnV0ZXMuaW5zZXJ0KFFXZWJTZXR0aW5nczo6TG9j
YWxDb250ZW50Q2FuQWNjZXNzRmlsZVVybHMsIHRydWUpOwogICAgIGQtPmF0dHJpYnV0ZXMuaW5z
ZXJ0KFFXZWJTZXR0aW5nczo6QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWQsIHRydWUpOwog
ICAgIGQtPmF0dHJpYnV0ZXMuaW5zZXJ0KFFXZWJTZXR0aW5nczo6V2ViR0xFbmFibGVkLCB0cnVl
KTsKKyAgICBkLT5hdHRyaWJ1dGVzLmluc2VydChRV2ViU2V0dGluZ3M6OldlYkF1ZGlvRW5hYmxl
ZCwgZmFsc2UpOwogICAgIGQtPmF0dHJpYnV0ZXMuaW5zZXJ0KFFXZWJTZXR0aW5nczo6Q1NTUmVn
aW9uc0VuYWJsZWQsIHRydWUpOwogICAgIGQtPmF0dHJpYnV0ZXMuaW5zZXJ0KFFXZWJTZXR0aW5n
czo6Q1NTR3JpZExheW91dEVuYWJsZWQsIGZhbHNlKTsKICAgICBkLT5hdHRyaWJ1dGVzLmluc2Vy
dChRV2ViU2V0dGluZ3M6Okh5cGVybGlua0F1ZGl0aW5nRW5hYmxlZCwgZmFsc2UpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9xdC9BcGkvcXdlYnNldHRpbmdzLmggYi9Tb3VyY2UvV2ViS2l0
L3F0L0FwaS9xd2Vic2V0dGluZ3MuaAppbmRleCBjNDQwNWE0NmIwNmQ1OWY0ZDhjMzdlOTQ5NzM5
N2YyNzUxY2E5ZWMwLi45NmE2MzZhMGQwOThjZmI5MDJmYjIwYWMzNjE4OTU2ODZmOGVjNWI3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9xd2Vic2V0dGluZ3MuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L3F0L0FwaS9xd2Vic2V0dGluZ3MuaApAQCAtODQsNyArODQsOCBAQCBwdWJsaWM6
CiAgICAgICAgIENTU0dyaWRMYXlvdXRFbmFibGVkLAogICAgICAgICBTY3JvbGxBbmltYXRvckVu
YWJsZWQsCiAgICAgICAgIENhcmV0QnJvd3NpbmdFbmFibGVkLAotICAgICAgICBOb3RpZmljYXRp
b25zRW5hYmxlZAorICAgICAgICBOb3RpZmljYXRpb25zRW5hYmxlZCwKKyAgICAgICAgV2ViQXVk
aW9FbmFibGVkCiAgICAgfTsKICAgICBlbnVtIFdlYkdyYXBoaWMgewogICAgICAgICBNaXNzaW5n
SW1hZ2VHcmFwaGljLApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdl
TG9nCmluZGV4IDlhOGVmODg3NTgzYzE4MjhlODQ2ZTY1MGFlODM3ODFmODE2MGU0YmEuLjkyM2Fj
Zjg2MmYwZGQ4NTQ4OGQ4NjNlZjgyY2JiNjYzNGU1ZjQxZjkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0No
YW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxMy0wMS0x
MSAgQWxsYW4gU2FuZGZlbGQgSmVuc2VuICA8YWxsYW4uamVuc2VuQGRpZ2lhLmNvbT4KKworICAg
ICAgICBbUXRdW1dLMV0gV2ViIEF1ZGlvIHN1cHBvcnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNjY1MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBzdXBwb3J0IGZvciBkdW1waW5nIGF1
ZGlvIGRhdGEuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpkdW1wKToKKyAgICAgICAg
KiBEdW1wUmVuZGVyVHJlZS9xdC9UZXN0UnVubmVyUXQuY3BwOgorICAgICAgICAoVGVzdFJ1bm5l
cjo6cmVzZXQpOgorICAgICAgICAoVGVzdFJ1bm5lcjo6b3ZlcnJpZGVQcmVmZXJlbmNlKToKKyAg
ICAgICAgKFRlc3RSdW5uZXI6OnNldEF1ZGlvRGF0YSk6CisgICAgICAgICogRHVtcFJlbmRlclRy
ZWUvcXQvVGVzdFJ1bm5lclF0Lmg6CisgICAgICAgIChUZXN0UnVubmVyOjpzaG91bGREdW1wQXNB
dWRpbyk6CisgICAgICAgIChUZXN0UnVubmVyOjphdWRpb0RhdGEpOgorICAgICAgICAoVGVzdFJ1
bm5lcik6CisKIDIwMTMtMDEtMTAgIEFsbGFuIFNhbmRmZWxkIEplbnNlbiAgPGFsbGFuLmplbnNl
bkBkaWdpYS5jb20+CiAKICAgICAgICAgW1F0XSBNYWtlIEltYWdlRGlmZiBtb3JlIHVzZWZ1bApk
aWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5jcHAg
Yi9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcAppbmRleCBjMGQ3
MDEyMjg2NDdjMTMzMzVmZDk1Yzg0YTQ1ZDEwNjVhZDRkNzMwLi4yNDA5YjZhYjc4YjExZWYwNmZl
OTQwZTUxOGE0NWNlNTMzMWRmOTM1IDEwMDc1NQotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9x
dC9EdW1wUmVuZGVyVHJlZVF0LmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1w
UmVuZGVyVHJlZVF0LmNwcApAQCAtOTE2LDE0ICs5MTYsMTkgQEAgdm9pZCBEdW1wUmVuZGVyVHJl
ZTo6ZHVtcCgpCiAKICAgICAvLyBEdW1wIHJlbmRlciB0ZXh0Li4uCiAgICAgUVN0cmluZyByZXN1
bHRTdHJpbmc7Ci0gICAgaWYgKG1fY29udHJvbGxlci0+c2hvdWxkRHVtcEFzVGV4dCgpKQorICAg
IFFTdHJpbmcgcmVzdWx0Q29udGVudFR5cGUgPSAidGV4dC9wbGFpbiI7CisgICAgUUJ5dGVBcnJh
eSByZXN1bHREYXRhOworICAgIGlmIChtX2NvbnRyb2xsZXItPnNob3VsZER1bXBBc0F1ZGlvKCkp
IHsKKyAgICAgICAgcmVzdWx0Q29udGVudFR5cGUgPSAiYXVkaW8vd2F2IjsKKyAgICAgICAgcmVz
dWx0RGF0YSA9IG1fY29udHJvbGxlci0+YXVkaW9EYXRhKCk7CisgICAgfSBlbHNlIGlmIChtX2Nv
bnRyb2xsZXItPnNob3VsZER1bXBBc1RleHQoKSkKICAgICAgICAgcmVzdWx0U3RyaW5nID0gZHVt
cEZyYW1lc0FzVGV4dChtYWluRnJhbWUpOwogICAgIGVsc2UgewogICAgICAgICByZXN1bHRTdHJp
bmcgPSBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6ZnJhbWVSZW5kZXJUcmVlRHVtcChtYWluRnJh
bWUtPmhhbmRsZSgpKTsKICAgICAgICAgcmVzdWx0U3RyaW5nICs9IGR1bXBGcmFtZVNjcm9sbFBv
c2l0aW9uKG1haW5GcmFtZSk7CiAgICAgfQogICAgIGlmICghcmVzdWx0U3RyaW5nLmlzRW1wdHko
KSkgewotICAgICAgICBmcHJpbnRmKHN0ZG91dCwgIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpblxu
Iik7CisgICAgICAgIGZwcmludGYoc3Rkb3V0LCAiQ29udGVudC1UeXBlOiAlc1xuIiwgcmVzdWx0
Q29udGVudFR5cGUudG9VdGY4KCkuY29uc3REYXRhKCkpOwogICAgICAgICBmcHJpbnRmKHN0ZG91
dCwgIiVzIiwgcmVzdWx0U3RyaW5nLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKIAogICAgICAgICBp
ZiAobV9jb250cm9sbGVyLT5zaG91bGREdW1wQmFja0ZvcndhcmRMaXN0KCkpIHsKQEAgLTkzMyw3
ICs5MzgsMTAgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZTo6ZHVtcCgpCiAgICAgICAgICAgICAgICAg
ZnByaW50ZihzdGRvdXQsICIlcyIsIGR1bXBCYWNrRm9yd2FyZExpc3QocGFnZSkudG9VdGY4KCku
Y29uc3REYXRhKCkpOwogICAgICAgICAgICAgfQogICAgICAgICB9Ci0KKyAgICB9IGVsc2UgaWYg
KCFyZXN1bHREYXRhLmlzRW1wdHkoKSkgeworICAgICAgICBmcHJpbnRmKHN0ZG91dCwgIkNvbnRl
bnQtVHlwZTogJXNcbiIsIHJlc3VsdENvbnRlbnRUeXBlLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsK
KyAgICAgICAgZnByaW50ZihzdGRvdXQsICJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBiYXNl
NjRcbiIpOworICAgICAgICBmcHJpbnRmKHN0ZG91dCwgIiVzIiwgcmVzdWx0RGF0YS50b0Jhc2U2
NCgpLmNvbnN0RGF0YSgpKTsKICAgICB9IGVsc2UKICAgICAgICAgcHJpbnRmKCJFUlJPUjogbmls
IHJlc3VsdCBmcm9tICVzIiwgbWV0aG9kTmFtZVN0cmluZ0ZvckZhaWxlZFRlc3QobV9jb250cm9s
bGVyKSk7CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L1Rlc3RSdW5uZXJR
dC5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9UZXN0UnVubmVyUXQuY3BwCmluZGV4IDY1
YTMxY2I4ZGM2YWUxZDNiMjFkMzY2YjkzZmFkZDE4Y2U2MTEwYWIuLjRhYTQzMDQwY2VlOThkODRj
OWIzYmQ0OGIzZDZlYWE3ODZhOTJlY2UgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L3F0L1Rlc3RSdW5uZXJRdC5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvVGVzdFJ1
bm5lclF0LmNwcApAQCAtNTMsNiArNTMsNyBAQCB2b2lkIFRlc3RSdW5uZXI6OnJlc2V0KCkKICAg
ICBtX2hhc0R1bXBlZCA9IGZhbHNlOwogICAgIG1fbG9hZEZpbmlzaGVkID0gZmFsc2U7CiAgICAg
bV90ZXh0RHVtcCA9IGZhbHNlOworICAgIG1fYXVkaW9EdW1wID0gZmFsc2U7CiAgICAgbV9zaG91
bGREdW1wUGl4ZWxzID0gdHJ1ZTsKICAgICBtX2R1bXBCYWNrRm9yd2FyZExpc3QgPSBmYWxzZTsK
ICAgICBtX2R1bXBDaGlsZHJlbkFzVGV4dCA9IGZhbHNlOwpAQCAtNzYsNiArNzcsNyBAQCB2b2lk
IFRlc3RSdW5uZXI6OnJlc2V0KCkKICAgICBtX2lzR2VvbG9jYXRpb25QZXJtaXNzaW9uU2V0ID0g
ZmFsc2U7CiAgICAgbV9pc1ByaW50aW5nID0gZmFsc2U7CiAgICAgbV9nZW9sb2NhdGlvblBlcm1p
c3Npb24gPSBmYWxzZTsKKyAgICBtX2F1ZGlvRGF0YS5jbGVhcigpOwogCiAgICAgRHVtcFJlbmRl
clRyZWVTdXBwb3J0UXQ6OmR1bXBFZGl0aW5nQ2FsbGJhY2tzKGZhbHNlKTsKICAgICBEdW1wUmVu
ZGVyVHJlZVN1cHBvcnRRdDo6ZHVtcEZyYW1lTG9hZGVyKGZhbHNlKTsKQEAgLTY3Nyw2ICs2Nzks
OCBAQCB2b2lkIFRlc3RSdW5uZXI6Om92ZXJyaWRlUHJlZmVyZW5jZShjb25zdCBRU3RyaW5nJiBu
YW1lLCBjb25zdCBRVmFyaWFudCYgdmFsdWUpCiAgICAgICAgIHNldHRpbmdzLT5zZXRBdHRyaWJ1
dGUoUVdlYlNldHRpbmdzOjpBY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCwgdmFsdWUudG9C
b29sKCkpOwogICAgIGVsc2UgaWYgKG5hbWUgPT0gIldlYktpdERpc3BsYXlJbWFnZXNLZXkiKQog
ICAgICAgICBzZXR0aW5ncy0+c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5nczo6QXV0b0xvYWRJbWFn
ZXMsIHZhbHVlLnRvQm9vbCgpKTsKKyAgICBlbHNlIGlmIChuYW1lID09ICJXZWJLaXRXZWJBdWRp
b0VuYWJsZWQiKQorICAgICAgICBzZXR0aW5ncy0+c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5nczo6
V2ViQXVkaW9FbmFibGVkLCB2YWx1ZS50b0Jvb2woKSk7CiAgICAgZWxzZQogICAgICAgICBwcmlu
dGYoIkVSUk9SOiBUZXN0UnVubmVyOjpvdmVycmlkZVByZWZlcmVuY2UoKSBkb2VzIG5vdCBzdXBw
b3J0IHRoZSAnJXMnIHByZWZlcmVuY2VcbiIsCiAgICAgICAgICAgICBuYW1lLnRvTGF0aW4xKCku
ZGF0YSgpKTsKQEAgLTk2OCw1ICs5NzIsMTEgQEAgdm9pZCBUZXN0UnVubmVyOjpzZXRBbHdheXNC
bG9ja0Nvb2tpZXMoYm9vbCBibG9jaykKICAgICAgICAgZ2xvYmFsU2V0dGluZ3MtPnNldFRoaXJk
UGFydHlDb29raWVQb2xpY3koUVdlYlNldHRpbmdzOjpBbHdheXNBbGxvd1RoaXJkUGFydHlDb29r
aWVzKTsKIH0KIAordm9pZCBUZXN0UnVubmVyOjpzZXRBdWRpb0RhdGEoY29uc3QgUUJ5dGVBcnJh
eSYgYXVkaW9EYXRhKQoreworICAgIG1fYXVkaW9EYXRhID0gYXVkaW9EYXRhOworICAgIG1fYXVk
aW9EdW1wID0gdHJ1ZTsKK30KKwogY29uc3QgdW5zaWduZWQgVGVzdFJ1bm5lcjo6bWF4Vmlld1dp
ZHRoID0gODAwOwogY29uc3QgdW5zaWduZWQgVGVzdFJ1bm5lcjo6bWF4Vmlld0hlaWdodCA9IDYw
MDsKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L1Rlc3RSdW5uZXJRdC5oIGIv
VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvVGVzdFJ1bm5lclF0LmgKaW5kZXggYTFlZDQxNTVjZTI4
ZDAzNTVjNWQ4NjViYzQzZTcyMzcyOTViMzE3YS4uMjcxOTQxODhlYWY4MTg1YTk0MTVhN2VkNTYy
ZDY0NGY2NGYwY2Y1MyAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvVGVzdFJ1
bm5lclF0LmgKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvVGVzdFJ1bm5lclF0LmgKQEAg
LTYzLDYgKzYzLDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBzaG91bGREaXNhbGxvd0luY3JlYXNl
Rm9yQXBwbGljYXRpb25DYWNoZVF1b3RhKCkgY29uc3QgeyByZXR1cm4gbV9kaXNhbGxvd0luY3Jl
YXNlRm9yQXBwbGljYXRpb25DYWNoZVF1b3RhOyB9CiAgICAgYm9vbCBzaG91bGREdW1wQXNUZXh0
KCkgY29uc3QgeyByZXR1cm4gbV90ZXh0RHVtcDsgfQorICAgIGJvb2wgc2hvdWxkRHVtcEFzQXVk
aW8oKSBjb25zdCB7IHJldHVybiBtX2F1ZGlvRHVtcDsgfQogICAgIGJvb2wgc2hvdWxkRHVtcFBp
eGVscygpIGNvbnN0IHsgcmV0dXJuIG1fc2hvdWxkRHVtcFBpeGVsczsgfQogICAgIGJvb2wgc2hv
dWxkRHVtcEJhY2tGb3J3YXJkTGlzdCgpIGNvbnN0IHsgcmV0dXJuIG1fZHVtcEJhY2tGb3J3YXJk
TGlzdDsgfQogICAgIGJvb2wgc2hvdWxkRHVtcENoaWxkcmVuQXNUZXh0KCkgY29uc3QgeyByZXR1
cm4gbV9kdW1wQ2hpbGRyZW5Bc1RleHQ7IH0KQEAgLTc4LDYgKzc5LDggQEAgcHVibGljOgogICAg
IGJvb2wgaWdub3JlUmVxZXN0Rm9yUGVybWlzc2lvbigpIGNvbnN0IHsgcmV0dXJuIG1faWdub3Jl
RGVza3RvcE5vdGlmaWNhdGlvbjsgfQogICAgIGJvb2wgaXNQcmludGluZygpIHsgcmV0dXJuIG1f
aXNQcmludGluZzsgfQogCisgICAgY29uc3QgUUJ5dGVBcnJheSYgYXVkaW9EYXRhKCkgY29uc3Qg
eyByZXR1cm4gbV9hdWRpb0RhdGE7IH0KKwogICAgIHZvaWQgcmVzZXQoKTsKIAogICAgIHN0YXRp
YyBjb25zdCB1bnNpZ25lZCBpbnQgbWF4Vmlld1dpZHRoOwpAQCAtMjc1LDYgKzI3OCw4IEBAIHB1
YmxpYyBRX1NMT1RTOgogICAgIHZvaWQgc2V0QWx3YXlzQWNjZXB0Q29va2llcyhib29sKTsKICAg
ICB2b2lkIHNldEFsd2F5c0Jsb2NrQ29va2llcyhib29sKTsKIAorICAgIHZvaWQgc2V0QXVkaW9E
YXRhKGNvbnN0IFFCeXRlQXJyYXkmKTsKKwogcHJpdmF0ZSBRX1NMT1RTOgogICAgIHZvaWQgcHJv
Y2Vzc1dvcmsoKTsKIApAQCAtMjg0LDYgKzI4OSw3IEBAIHByaXZhdGU6CiBwcml2YXRlOgogICAg
IGJvb2wgbV9oYXNEdW1wZWQ7CiAgICAgYm9vbCBtX3RleHREdW1wOworICAgIGJvb2wgbV9hdWRp
b0R1bXA7CiAgICAgYm9vbCBtX3Nob3VsZER1bXBQaXhlbHM7CiAgICAgYm9vbCBtX2Rpc2FsbG93
SW5jcmVhc2VGb3JBcHBsaWNhdGlvbkNhY2hlUXVvdGE7CiAgICAgYm9vbCBtX2R1bXBCYWNrRm9y
d2FyZExpc3Q7CkBAIC0zMTIsNiArMzE4LDggQEAgcHJpdmF0ZToKICAgICBRU3RyaW5nTGlzdCBt
X2Rlc2t0b3BOb3RpZmljYXRpb25BbGxvd2VkT3JpZ2luczsKICAgICBib29sIG1faWdub3JlRGVz
a3RvcE5vdGlmaWNhdGlvbjsKIAorICAgIFFCeXRlQXJyYXkgbV9hdWRpb0RhdGE7CisKICAgICBi
b29sIG1fc2hvdWxkVGltZW91dDsKICAgICBpbnQgbV90aW1lb3V0OwogfTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>182321</attachid>
            <date>2013-01-11 04:40:27 -0800</date>
            <delta_ts>2013-01-11 05:46:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-106651-20130111133653.patch</filename>
            <type>text/plain</type>
            <size>17123</size>
            <attacher name="Allan Sandfeld Jensen">allan.jensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5MzAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTZlNWUyMTI1ODc3M2Y5
NmFiMjA4Y2E4OGI2NDhkZjk3NGFjNjA1ZS4uMTIxNmZkMDRlNzY4YWYxOWI0M2ZhNDM1NmY4NmY3
OWUxOWM5MDg5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEzLTAxLTExICBBbGxh
biBTYW5kZmVsZCBKZW5zZW4gIDxhbGxhbi5qZW5zZW5AZGlnaWEuY29tPgorCisgICAgICAgIFtR
dF1bV0sxXSBXZWIgQXVkaW8gc3VwcG9ydAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTA2NjUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQ29udmVydCBKYXZhU2NyaXB0IFVpbnQ4QXJyYXkgdG8gUUJ5dGVB
cnJheS4gVGhpcyBjb252ZXJzaW9uIGlzIG5lY2Vzc2FyeSB0byBzdXBwb3J0IHRlc3RSdW5uZXIu
c2V0QXVkaW9EYXRhKCkuCisKKyAgICAgICAgKiBicmlkZ2UvcXQvcXRfcnVudGltZS5jcHA6Cisg
ICAgICAgIChKU0M6OkJpbmRpbmdzOjppc0pTVWludDhBcnJheSk6CisgICAgICAgIChCaW5kaW5n
cyk6CisgICAgICAgIChKU0M6OkJpbmRpbmdzOjp2YWx1ZVJlYWxUeXBlKToKKyAgICAgICAgKEpT
Qzo6QmluZGluZ3M6OmNvbnZlcnRWYWx1ZVRvUVZhcmlhbnQpOgorCiAyMDEzLTAxLTAzICBBbGxh
biBTYW5kZmVsZCBKZW5zZW4gIDxhbGxhbi5qZW5zZW5AZGlnaWEuY29tPgogCiAgICAgICAgIFtR
dF0gU3VwcG9ydCAtd2Via2l0LWZvbnQtc21vb3RoaW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L3F0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IGMwNjFk
NWU2OTM5M2U0N2ZhNjVhOWRjZmI0MjIwM2JlMTZkNDk4MTQuLjZiMDZkNzBlMzQ2NWQ5ZTY3MWNj
MWNmNWFjYjVhOTY0NDU4YWU5ZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIw
MTMtMDEtMTEgIEFsbGFuIFNhbmRmZWxkIEplbnNlbiAgPGFsbGFuLmplbnNlbkBkaWdpYS5jb20+
CisKKyAgICAgICAgW1F0XVtXSzFdIFdlYiBBdWRpbyBzdXBwb3J0CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDY2NTEKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFeHBvc2Ugc2V0dGluZyB0byBlbmFibGUg
V2ViQXVkaW8gYXQgcnVudGltZS4KKworICAgICAgICAqIEFwaS9xd2Vic2V0dGluZ3MuY3BwOgor
ICAgICAgICAoUVdlYlNldHRpbmdzUHJpdmF0ZTo6YXBwbHkpOgorICAgICAgICAoUVdlYlNldHRp
bmdzOjpRV2ViU2V0dGluZ3MpOgorICAgICAgICAqIEFwaS9xd2Vic2V0dGluZ3MuaDoKKwogMjAx
My0wMS0wOCAgTWFyayBMYW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3Zl
ZCB0aGUgbmVlZCBmb3IgdGhlIFByb3Bvc2VkRGF0YWJhc2UgbWVjaGFuaXNtLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3F0L3F0X3J1bnRpbWUuY3BwIGIvU291cmNlL1dlYkNv
cmUvYnJpZGdlL3F0L3F0X3J1bnRpbWUuY3BwCmluZGV4IDEzMTIzOTUzMzNlZTQwM2MyMDljN2Yw
ZjFkNWFjYjc2MjlmNjllMzIuLjUyMTczY2UzNzVkOWM0ZmQ0Mzk0OTAzY2UyMTc5Njg5NzgwYjcy
YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9ydW50aW1lLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGltZS5jcHAKQEAgLTEwMyw2ICsx
MDMsNyBAQCB0eXBlZGVmIGVudW0gewogICAgIFFPYmosCiAgICAgT2JqZWN0LAogICAgIE51bGws
CisgICAgUlRVaW50OEFycmF5LAogICAgIFJUVWludDhDbGFtcGVkQXJyYXkKIH0gSlNSZWFsVHlw
ZTsKIApAQCAtMTUwLDYgKzE1MSwxMSBAQCBzdGF0aWMgYm9vbCBpc0pTVWludDhDbGFtcGVkQXJy
YXkoSlNPYmplY3RSZWYgb2JqZWN0KQogICAgIHJldHVybiB0b0pTKG9iamVjdCktPmluaGVyaXRz
KCZKU1VpbnQ4Q2xhbXBlZEFycmF5OjpzX2luZm8pOwogfQogCitzdGF0aWMgYm9vbCBpc0pTVWlu
dDhBcnJheShKU09iamVjdFJlZiBvYmplY3QpCit7CisgICAgcmV0dXJuIHRvSlMob2JqZWN0KS0+
aW5oZXJpdHMoJkpTVWludDhBcnJheTo6c19pbmZvKTsKK30KKwogc3RhdGljIGJvb2wgaXNKU0Fy
cmF5KEpTT2JqZWN0UmVmIG9iamVjdCkKIHsKICAgICByZXR1cm4gdG9KUyhvYmplY3QpLT5pbmhl
cml0cygmSlNBcnJheTo6c19pbmZvKTsKQEAgLTE4Miw2ICsxODgsOCBAQCBzdGF0aWMgSlNSZWFs
VHlwZSB2YWx1ZVJlYWxUeXBlKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU1ZhbHVlUmVmIHZhbHVl
LCBKU1ZhbHVlUgogCiAgICAgaWYgKGlzSlNVaW50OENsYW1wZWRBcnJheShvYmplY3QpKQogICAg
ICAgICByZXR1cm4gUlRVaW50OENsYW1wZWRBcnJheTsKKyAgICBpZiAoaXNKU1VpbnQ4QXJyYXko
b2JqZWN0KSkKKyAgICAgICAgcmV0dXJuIFJUVWludDhBcnJheTsKICAgICBpZiAoaXNKU0FycmF5
KG9iamVjdCkpCiAgICAgICAgICAgICByZXR1cm4gQXJyYXk7CiAgICAgaWYgKGlzSlNEYXRlKG9i
amVjdCkpCkBAIC0zNTYsNiArMzY0LDcgQEAgUVZhcmlhbnQgY29udmVydFZhbHVlVG9RVmFyaWFu
dChKU0NvbnRleHRSZWYgY29udGV4dCwgSlNWYWx1ZVJlZiB2YWx1ZSwgUU1ldGFUeXAKICAgICAg
ICAgICAgIGNhc2UgUU9iajoKICAgICAgICAgICAgICAgICBoaW50ID0gUU1ldGFUeXBlOjpRT2Jq
ZWN0U3RhcjsKICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgUlRVaW50
OEFycmF5OgogICAgICAgICAgICAgY2FzZSBSVFVpbnQ4Q2xhbXBlZEFycmF5OgogICAgICAgICAg
ICAgICAgIGhpbnQgPSBRTWV0YVR5cGU6OlFCeXRlQXJyYXk7CiAgICAgICAgICAgICAgICAgYnJl
YWs7CkBAIC00OTQsNiArNTAzLDEwIEBAIFFWYXJpYW50IGNvbnZlcnRWYWx1ZVRvUVZhcmlhbnQo
SlNDb250ZXh0UmVmIGNvbnRleHQsIEpTVmFsdWVSZWYgdmFsdWUsIFFNZXRhVHlwCiAgICAgICAg
ICAgICAgICAgV1RGOjpVaW50OENsYW1wZWRBcnJheSogYXJyID0gdG9VaW50OENsYW1wZWRBcnJh
eSh0b0pTKHRvSlMoY29udGV4dCksIHZhbHVlKSk7CiAgICAgICAgICAgICAgICAgcmV0ID0gUVZh
cmlhbnQoUUJ5dGVBcnJheShyZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPihhcnItPmRhdGEo
KSksIGFyci0+bGVuZ3RoKCkpKTsKICAgICAgICAgICAgICAgICBkaXN0ID0gMDsKKyAgICAgICAg
ICAgIH0gZWxzZSBpZiAodHlwZSA9PSBSVFVpbnQ4QXJyYXkpIHsKKyAgICAgICAgICAgICAgICBX
VEY6OlVpbnQ4QXJyYXkqIGFyciA9IHRvVWludDhBcnJheSh0b0pTKHRvSlMoY29udGV4dCksIHZh
bHVlKSk7CisgICAgICAgICAgICAgICAgcmV0ID0gUVZhcmlhbnQoUUJ5dGVBcnJheShyZWludGVy
cHJldF9jYXN0PGNvbnN0IGNoYXIqPihhcnItPmRhdGEoKSksIGFyci0+bGVuZ3RoKCkpKTsKKyAg
ICAgICAgICAgICAgICBkaXN0ID0gMDsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAg
ICAgICAgcmV0ID0gUVZhcmlhbnQodG9RU3RyaW5nKGNvbnRleHQsIHZhbHVlKS50b0xhdGluMSgp
KTsKICAgICAgICAgICAgICAgICBpZiAodHlwZSA9PSBSVFN0cmluZykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJzZXR0aW5ncy5jcHAgYi9Tb3VyY2UvV2ViS2l0L3F0L0Fw
aS9xd2Vic2V0dGluZ3MuY3BwCmluZGV4IDlkYjAxYjExZThkNDQ4ZGY1MWQ5MjQyYzcxYzdlMDU5
Y2VlYTYyZDUuLmY4ZTQ5OTgzNThhZmJlY2I3OGE1YjAzMDYwYWRjYjY1NGRkMGUxNGUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJzZXR0aW5ncy5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9xdC9BcGkvcXdlYnNldHRpbmdzLmNwcApAQCAtMTY0LDYgKzE2NCwxMCBAQCB2b2lk
IFFXZWJTZXR0aW5nc1ByaXZhdGU6OmFwcGx5KCkKICAgICAgICAgc2V0dGluZ3MtPnNldEFjY2Vs
ZXJhdGVkQ29tcG9zaXRpbmdGb3JDYW52YXNFbmFibGVkKHZhbHVlKTsKICNlbmRpZgogI2VuZGlm
CisjaWYgRU5BQkxFKFdFQl9BVURJTykKKyAgICAgICAgdmFsdWUgPSBhdHRyaWJ1dGVzLnZhbHVl
KFFXZWJTZXR0aW5nczo6V2ViQXVkaW9FbmFibGVkLCBnbG9iYWwtPmF0dHJpYnV0ZXMudmFsdWUo
UVdlYlNldHRpbmdzOjpXZWJBdWRpb0VuYWJsZWQpKTsKKyAgICAgICAgc2V0dGluZ3MtPnNldFdl
YkF1ZGlvRW5hYmxlZCh2YWx1ZSk7CisjZW5kaWYKIAogICAgICAgICB2YWx1ZSA9IGF0dHJpYnV0
ZXMudmFsdWUoUVdlYlNldHRpbmdzOjpDU1NSZWdpb25zRW5hYmxlZCwKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGdsb2JhbC0+YXR0cmlidXRlcy52YWx1ZShRV2ViU2V0dGluZ3M6
OkNTU1JlZ2lvbnNFbmFibGVkKSk7CkBAIC01MzQsNiArNTM4LDcgQEAgUVdlYlNldHRpbmdzOjpR
V2ViU2V0dGluZ3MoKQogICAgIGQtPmF0dHJpYnV0ZXMuaW5zZXJ0KFFXZWJTZXR0aW5nczo6TG9j
YWxDb250ZW50Q2FuQWNjZXNzRmlsZVVybHMsIHRydWUpOwogICAgIGQtPmF0dHJpYnV0ZXMuaW5z
ZXJ0KFFXZWJTZXR0aW5nczo6QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWQsIHRydWUpOwog
ICAgIGQtPmF0dHJpYnV0ZXMuaW5zZXJ0KFFXZWJTZXR0aW5nczo6V2ViR0xFbmFibGVkLCB0cnVl
KTsKKyAgICBkLT5hdHRyaWJ1dGVzLmluc2VydChRV2ViU2V0dGluZ3M6OldlYkF1ZGlvRW5hYmxl
ZCwgZmFsc2UpOwogICAgIGQtPmF0dHJpYnV0ZXMuaW5zZXJ0KFFXZWJTZXR0aW5nczo6Q1NTUmVn
aW9uc0VuYWJsZWQsIHRydWUpOwogICAgIGQtPmF0dHJpYnV0ZXMuaW5zZXJ0KFFXZWJTZXR0aW5n
czo6Q1NTR3JpZExheW91dEVuYWJsZWQsIGZhbHNlKTsKICAgICBkLT5hdHRyaWJ1dGVzLmluc2Vy
dChRV2ViU2V0dGluZ3M6Okh5cGVybGlua0F1ZGl0aW5nRW5hYmxlZCwgZmFsc2UpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9xdC9BcGkvcXdlYnNldHRpbmdzLmggYi9Tb3VyY2UvV2ViS2l0
L3F0L0FwaS9xd2Vic2V0dGluZ3MuaAppbmRleCBjNDQwNWE0NmIwNmQ1OWY0ZDhjMzdlOTQ5NzM5
N2YyNzUxY2E5ZWMwLi45NmE2MzZhMGQwOThjZmI5MDJmYjIwYWMzNjE4OTU2ODZmOGVjNWI3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9xd2Vic2V0dGluZ3MuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L3F0L0FwaS9xd2Vic2V0dGluZ3MuaApAQCAtODQsNyArODQsOCBAQCBwdWJsaWM6
CiAgICAgICAgIENTU0dyaWRMYXlvdXRFbmFibGVkLAogICAgICAgICBTY3JvbGxBbmltYXRvckVu
YWJsZWQsCiAgICAgICAgIENhcmV0QnJvd3NpbmdFbmFibGVkLAotICAgICAgICBOb3RpZmljYXRp
b25zRW5hYmxlZAorICAgICAgICBOb3RpZmljYXRpb25zRW5hYmxlZCwKKyAgICAgICAgV2ViQXVk
aW9FbmFibGVkCiAgICAgfTsKICAgICBlbnVtIFdlYkdyYXBoaWMgewogICAgICAgICBNaXNzaW5n
SW1hZ2VHcmFwaGljLApkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdl
TG9nCmluZGV4IDlhOGVmODg3NTgzYzE4MjhlODQ2ZTY1MGFlODM3ODFmODE2MGU0YmEuLjk5Zjgw
NDc4YTVhNzUwNWVmNThjNTc2YzVkNzAzYjIzOGI1NDFhNmMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0No
YW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzOCBAQAorMjAxMy0wMS0x
MSAgQWxsYW4gU2FuZGZlbGQgSmVuc2VuICA8YWxsYW4uamVuc2VuQGRpZ2lhLmNvbT4KKworICAg
ICAgICBbUXRdW1dLMV0gV2ViIEF1ZGlvIHN1cHBvcnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNjY1MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudHMgc3VwcG9ydCBmb3IgZHVtcGluZyBh
dWRpbyBkYXRhIGluIER1bXBSZW5kZXJUcmVlLgorCisgICAgICAgIEFkZHMgV2ViQXVkaW8gdG8g
dG9nZ2xlYWJsZSBmZWF0dXJlcyBpbiBRdFRlc3RCcm93c2VyLgorCisgICAgICAgIEVuYWJsZXMg
TEVHQUNZX1dFQl9BVURJTy4gVGhpcyBmZWF0dXJlIGlzIHJlcXVpcmVkIGZvciAyLzMgb2YgdGhl
IHdlYiBhdWRpbyByZWdyZXNzaW9uIHRlc3RzLiBJdCBpcyBlbmFibGVkIGJ5IGRlZmF1bHQKKyAg
ICAgICAgYmVjYXVzZSBpdCBoYXMgbm8gZWZmZWN0IHdoZW4gV0VCX0FVRElPIGlzIG5vdCBlbmFi
bGVkLiBUaGlzIGNvbWJpbmF0aW9uIG1hdGNoZXMgdGhlIHNldHRpbmdzIGluIEZlYXR1cmVMaXN0
LnBtLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpEdW1wUmVuZGVyVHJlZTo6ZHVtcCk6CisgICAgICAgICogRHVt
cFJlbmRlclRyZWUvcXQvVGVzdFJ1bm5lclF0LmNwcDoKKyAgICAgICAgKFRlc3RSdW5uZXI6OnJl
c2V0KToKKyAgICAgICAgKFRlc3RSdW5uZXI6Om92ZXJyaWRlUHJlZmVyZW5jZSk6CisgICAgICAg
IChUZXN0UnVubmVyOjpzZXRBdWRpb0RhdGEpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0
L1Rlc3RSdW5uZXJRdC5oOgorICAgICAgICAoVGVzdFJ1bm5lcjo6c2hvdWxkRHVtcEFzQXVkaW8p
OgorICAgICAgICAoVGVzdFJ1bm5lcjo6YXVkaW9EYXRhKToKKyAgICAgICAgKFRlc3RSdW5uZXIp
OgorICAgICAgICAqIFF0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuY3BwOgorICAgICAgICAo
TGF1bmNoZXJXaW5kb3c6OmFwcGx5UHJlZnMpOgorICAgICAgICAoTGF1bmNoZXJXaW5kb3c6OmNy
ZWF0ZUNocm9tZSk6CisgICAgICAgIChMYXVuY2hlcldpbmRvdzo6dG9nZ2xlV2ViQXVkaW8pOgor
ICAgICAgICAqIFF0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuaDoKKyAgICAgICAgKFdpbmRv
d09wdGlvbnM6OldpbmRvd09wdGlvbnMpOgorICAgICAgICAoV2luZG93T3B0aW9ucyk6CisgICAg
ICAgIChMYXVuY2hlcldpbmRvdyk6CisgICAgICAgICogcW1ha2UvbWtzcGVjcy9mZWF0dXJlcy9m
ZWF0dXJlcy5wcmY6CisgICAgICAgICogcW1ha2UvbWtzcGVjcy9mZWF0dXJlcy9mZWF0dXJlcy5w
cmk6CisKIDIwMTMtMDEtMTAgIEFsbGFuIFNhbmRmZWxkIEplbnNlbiAgPGFsbGFuLmplbnNlbkBk
aWdpYS5jb20+CiAKICAgICAgICAgW1F0XSBNYWtlIEltYWdlRGlmZiBtb3JlIHVzZWZ1bApkaWZm
IC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5jcHAgYi9U
b29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcAppbmRleCBjMGQ3MDEy
Mjg2NDdjMTMzMzVmZDk1Yzg0YTQ1ZDEwNjVhZDRkNzMwLi4yNDA5YjZhYjc4YjExZWYwNmZlOTQw
ZTUxOGE0NWNlNTMzMWRmOTM1IDEwMDc1NQotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9E
dW1wUmVuZGVyVHJlZVF0LmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVu
ZGVyVHJlZVF0LmNwcApAQCAtOTE2LDE0ICs5MTYsMTkgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZTo6
ZHVtcCgpCiAKICAgICAvLyBEdW1wIHJlbmRlciB0ZXh0Li4uCiAgICAgUVN0cmluZyByZXN1bHRT
dHJpbmc7Ci0gICAgaWYgKG1fY29udHJvbGxlci0+c2hvdWxkRHVtcEFzVGV4dCgpKQorICAgIFFT
dHJpbmcgcmVzdWx0Q29udGVudFR5cGUgPSAidGV4dC9wbGFpbiI7CisgICAgUUJ5dGVBcnJheSBy
ZXN1bHREYXRhOworICAgIGlmIChtX2NvbnRyb2xsZXItPnNob3VsZER1bXBBc0F1ZGlvKCkpIHsK
KyAgICAgICAgcmVzdWx0Q29udGVudFR5cGUgPSAiYXVkaW8vd2F2IjsKKyAgICAgICAgcmVzdWx0
RGF0YSA9IG1fY29udHJvbGxlci0+YXVkaW9EYXRhKCk7CisgICAgfSBlbHNlIGlmIChtX2NvbnRy
b2xsZXItPnNob3VsZER1bXBBc1RleHQoKSkKICAgICAgICAgcmVzdWx0U3RyaW5nID0gZHVtcEZy
YW1lc0FzVGV4dChtYWluRnJhbWUpOwogICAgIGVsc2UgewogICAgICAgICByZXN1bHRTdHJpbmcg
PSBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6ZnJhbWVSZW5kZXJUcmVlRHVtcChtYWluRnJhbWUt
PmhhbmRsZSgpKTsKICAgICAgICAgcmVzdWx0U3RyaW5nICs9IGR1bXBGcmFtZVNjcm9sbFBvc2l0
aW9uKG1haW5GcmFtZSk7CiAgICAgfQogICAgIGlmICghcmVzdWx0U3RyaW5nLmlzRW1wdHkoKSkg
ewotICAgICAgICBmcHJpbnRmKHN0ZG91dCwgIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpblxuIik7
CisgICAgICAgIGZwcmludGYoc3Rkb3V0LCAiQ29udGVudC1UeXBlOiAlc1xuIiwgcmVzdWx0Q29u
dGVudFR5cGUudG9VdGY4KCkuY29uc3REYXRhKCkpOwogICAgICAgICBmcHJpbnRmKHN0ZG91dCwg
IiVzIiwgcmVzdWx0U3RyaW5nLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKIAogICAgICAgICBpZiAo
bV9jb250cm9sbGVyLT5zaG91bGREdW1wQmFja0ZvcndhcmRMaXN0KCkpIHsKQEAgLTkzMyw3ICs5
MzgsMTAgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZTo6ZHVtcCgpCiAgICAgICAgICAgICAgICAgZnBy
aW50ZihzdGRvdXQsICIlcyIsIGR1bXBCYWNrRm9yd2FyZExpc3QocGFnZSkudG9VdGY4KCkuY29u
c3REYXRhKCkpOwogICAgICAgICAgICAgfQogICAgICAgICB9Ci0KKyAgICB9IGVsc2UgaWYgKCFy
ZXN1bHREYXRhLmlzRW1wdHkoKSkgeworICAgICAgICBmcHJpbnRmKHN0ZG91dCwgIkNvbnRlbnQt
VHlwZTogJXNcbiIsIHJlc3VsdENvbnRlbnRUeXBlLnRvVXRmOCgpLmNvbnN0RGF0YSgpKTsKKyAg
ICAgICAgZnByaW50ZihzdGRvdXQsICJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBiYXNlNjRc
biIpOworICAgICAgICBmcHJpbnRmKHN0ZG91dCwgIiVzIiwgcmVzdWx0RGF0YS50b0Jhc2U2NCgp
LmNvbnN0RGF0YSgpKTsKICAgICB9IGVsc2UKICAgICAgICAgcHJpbnRmKCJFUlJPUjogbmlsIHJl
c3VsdCBmcm9tICVzIiwgbWV0aG9kTmFtZVN0cmluZ0ZvckZhaWxlZFRlc3QobV9jb250cm9sbGVy
KSk7CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L1Rlc3RSdW5uZXJRdC5j
cHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9UZXN0UnVubmVyUXQuY3BwCmluZGV4IDY1YTMx
Y2I4ZGM2YWUxZDNiMjFkMzY2YjkzZmFkZDE4Y2U2MTEwYWIuLjRhYTQzMDQwY2VlOThkODRjOWIz
YmQ0OGIzZDZlYWE3ODZhOTJlY2UgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0
L1Rlc3RSdW5uZXJRdC5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvVGVzdFJ1bm5l
clF0LmNwcApAQCAtNTMsNiArNTMsNyBAQCB2b2lkIFRlc3RSdW5uZXI6OnJlc2V0KCkKICAgICBt
X2hhc0R1bXBlZCA9IGZhbHNlOwogICAgIG1fbG9hZEZpbmlzaGVkID0gZmFsc2U7CiAgICAgbV90
ZXh0RHVtcCA9IGZhbHNlOworICAgIG1fYXVkaW9EdW1wID0gZmFsc2U7CiAgICAgbV9zaG91bGRE
dW1wUGl4ZWxzID0gdHJ1ZTsKICAgICBtX2R1bXBCYWNrRm9yd2FyZExpc3QgPSBmYWxzZTsKICAg
ICBtX2R1bXBDaGlsZHJlbkFzVGV4dCA9IGZhbHNlOwpAQCAtNzYsNiArNzcsNyBAQCB2b2lkIFRl
c3RSdW5uZXI6OnJlc2V0KCkKICAgICBtX2lzR2VvbG9jYXRpb25QZXJtaXNzaW9uU2V0ID0gZmFs
c2U7CiAgICAgbV9pc1ByaW50aW5nID0gZmFsc2U7CiAgICAgbV9nZW9sb2NhdGlvblBlcm1pc3Np
b24gPSBmYWxzZTsKKyAgICBtX2F1ZGlvRGF0YS5jbGVhcigpOwogCiAgICAgRHVtcFJlbmRlclRy
ZWVTdXBwb3J0UXQ6OmR1bXBFZGl0aW5nQ2FsbGJhY2tzKGZhbHNlKTsKICAgICBEdW1wUmVuZGVy
VHJlZVN1cHBvcnRRdDo6ZHVtcEZyYW1lTG9hZGVyKGZhbHNlKTsKQEAgLTY3Nyw2ICs2NzksOCBA
QCB2b2lkIFRlc3RSdW5uZXI6Om92ZXJyaWRlUHJlZmVyZW5jZShjb25zdCBRU3RyaW5nJiBuYW1l
LCBjb25zdCBRVmFyaWFudCYgdmFsdWUpCiAgICAgICAgIHNldHRpbmdzLT5zZXRBdHRyaWJ1dGUo
UVdlYlNldHRpbmdzOjpBY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCwgdmFsdWUudG9Cb29s
KCkpOwogICAgIGVsc2UgaWYgKG5hbWUgPT0gIldlYktpdERpc3BsYXlJbWFnZXNLZXkiKQogICAg
ICAgICBzZXR0aW5ncy0+c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5nczo6QXV0b0xvYWRJbWFnZXMs
IHZhbHVlLnRvQm9vbCgpKTsKKyAgICBlbHNlIGlmIChuYW1lID09ICJXZWJLaXRXZWJBdWRpb0Vu
YWJsZWQiKQorICAgICAgICBzZXR0aW5ncy0+c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5nczo6V2Vi
QXVkaW9FbmFibGVkLCB2YWx1ZS50b0Jvb2woKSk7CiAgICAgZWxzZQogICAgICAgICBwcmludGYo
IkVSUk9SOiBUZXN0UnVubmVyOjpvdmVycmlkZVByZWZlcmVuY2UoKSBkb2VzIG5vdCBzdXBwb3J0
IHRoZSAnJXMnIHByZWZlcmVuY2VcbiIsCiAgICAgICAgICAgICBuYW1lLnRvTGF0aW4xKCkuZGF0
YSgpKTsKQEAgLTk2OCw1ICs5NzIsMTEgQEAgdm9pZCBUZXN0UnVubmVyOjpzZXRBbHdheXNCbG9j
a0Nvb2tpZXMoYm9vbCBibG9jaykKICAgICAgICAgZ2xvYmFsU2V0dGluZ3MtPnNldFRoaXJkUGFy
dHlDb29raWVQb2xpY3koUVdlYlNldHRpbmdzOjpBbHdheXNBbGxvd1RoaXJkUGFydHlDb29raWVz
KTsKIH0KIAordm9pZCBUZXN0UnVubmVyOjpzZXRBdWRpb0RhdGEoY29uc3QgUUJ5dGVBcnJheSYg
YXVkaW9EYXRhKQoreworICAgIG1fYXVkaW9EYXRhID0gYXVkaW9EYXRhOworICAgIG1fYXVkaW9E
dW1wID0gdHJ1ZTsKK30KKwogY29uc3QgdW5zaWduZWQgVGVzdFJ1bm5lcjo6bWF4Vmlld1dpZHRo
ID0gODAwOwogY29uc3QgdW5zaWduZWQgVGVzdFJ1bm5lcjo6bWF4Vmlld0hlaWdodCA9IDYwMDsK
ZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L1Rlc3RSdW5uZXJRdC5oIGIvVG9v
bHMvRHVtcFJlbmRlclRyZWUvcXQvVGVzdFJ1bm5lclF0LmgKaW5kZXggYTFlZDQxNTVjZTI4ZDAz
NTVjNWQ4NjViYzQzZTcyMzcyOTViMzE3YS4uMjcxOTQxODhlYWY4MTg1YTk0MTVhN2VkNTYyZDY0
NGY2NGYwY2Y1MyAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvVGVzdFJ1bm5l
clF0LmgKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvVGVzdFJ1bm5lclF0LmgKQEAgLTYz
LDYgKzYzLDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBzaG91bGREaXNhbGxvd0luY3JlYXNlRm9y
QXBwbGljYXRpb25DYWNoZVF1b3RhKCkgY29uc3QgeyByZXR1cm4gbV9kaXNhbGxvd0luY3JlYXNl
Rm9yQXBwbGljYXRpb25DYWNoZVF1b3RhOyB9CiAgICAgYm9vbCBzaG91bGREdW1wQXNUZXh0KCkg
Y29uc3QgeyByZXR1cm4gbV90ZXh0RHVtcDsgfQorICAgIGJvb2wgc2hvdWxkRHVtcEFzQXVkaW8o
KSBjb25zdCB7IHJldHVybiBtX2F1ZGlvRHVtcDsgfQogICAgIGJvb2wgc2hvdWxkRHVtcFBpeGVs
cygpIGNvbnN0IHsgcmV0dXJuIG1fc2hvdWxkRHVtcFBpeGVsczsgfQogICAgIGJvb2wgc2hvdWxk
RHVtcEJhY2tGb3J3YXJkTGlzdCgpIGNvbnN0IHsgcmV0dXJuIG1fZHVtcEJhY2tGb3J3YXJkTGlz
dDsgfQogICAgIGJvb2wgc2hvdWxkRHVtcENoaWxkcmVuQXNUZXh0KCkgY29uc3QgeyByZXR1cm4g
bV9kdW1wQ2hpbGRyZW5Bc1RleHQ7IH0KQEAgLTc4LDYgKzc5LDggQEAgcHVibGljOgogICAgIGJv
b2wgaWdub3JlUmVxZXN0Rm9yUGVybWlzc2lvbigpIGNvbnN0IHsgcmV0dXJuIG1faWdub3JlRGVz
a3RvcE5vdGlmaWNhdGlvbjsgfQogICAgIGJvb2wgaXNQcmludGluZygpIHsgcmV0dXJuIG1faXNQ
cmludGluZzsgfQogCisgICAgY29uc3QgUUJ5dGVBcnJheSYgYXVkaW9EYXRhKCkgY29uc3QgeyBy
ZXR1cm4gbV9hdWRpb0RhdGE7IH0KKwogICAgIHZvaWQgcmVzZXQoKTsKIAogICAgIHN0YXRpYyBj
b25zdCB1bnNpZ25lZCBpbnQgbWF4Vmlld1dpZHRoOwpAQCAtMjc1LDYgKzI3OCw4IEBAIHB1Ymxp
YyBRX1NMT1RTOgogICAgIHZvaWQgc2V0QWx3YXlzQWNjZXB0Q29va2llcyhib29sKTsKICAgICB2
b2lkIHNldEFsd2F5c0Jsb2NrQ29va2llcyhib29sKTsKIAorICAgIHZvaWQgc2V0QXVkaW9EYXRh
KGNvbnN0IFFCeXRlQXJyYXkmKTsKKwogcHJpdmF0ZSBRX1NMT1RTOgogICAgIHZvaWQgcHJvY2Vz
c1dvcmsoKTsKIApAQCAtMjg0LDYgKzI4OSw3IEBAIHByaXZhdGU6CiBwcml2YXRlOgogICAgIGJv
b2wgbV9oYXNEdW1wZWQ7CiAgICAgYm9vbCBtX3RleHREdW1wOworICAgIGJvb2wgbV9hdWRpb0R1
bXA7CiAgICAgYm9vbCBtX3Nob3VsZER1bXBQaXhlbHM7CiAgICAgYm9vbCBtX2Rpc2FsbG93SW5j
cmVhc2VGb3JBcHBsaWNhdGlvbkNhY2hlUXVvdGE7CiAgICAgYm9vbCBtX2R1bXBCYWNrRm9yd2Fy
ZExpc3Q7CkBAIC0zMTIsNiArMzE4LDggQEAgcHJpdmF0ZToKICAgICBRU3RyaW5nTGlzdCBtX2Rl
c2t0b3BOb3RpZmljYXRpb25BbGxvd2VkT3JpZ2luczsKICAgICBib29sIG1faWdub3JlRGVza3Rv
cE5vdGlmaWNhdGlvbjsKIAorICAgIFFCeXRlQXJyYXkgbV9hdWRpb0RhdGE7CisKICAgICBib29s
IG1fc2hvdWxkVGltZW91dDsKICAgICBpbnQgbV90aW1lb3V0OwogfTsKZGlmZiAtLWdpdCBhL1Rv
b2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuY3BwIGIvVG9vbHMvUXRUZXN0QnJvd3Nl
ci9sYXVuY2hlcndpbmRvdy5jcHAKaW5kZXggZDlkZDBmOTNmYWY4ZmE1MGJkNWNjMTg3NDcwYTg4
YTNmMTc5NzQ1Ny4uNzY3YWVlZjE3Nzk4NmY3YjJjNzc0NmQxYWQ3ZTczNGQ0N2I1MGUyMCAxMDA2
NDQKLS0tIGEvVG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHAKKysrIGIvVG9v
bHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHAKQEAgLTIxNiw3ICsyMTYsOCBAQCB2
b2lkIExhdW5jaGVyV2luZG93OjphcHBseVByZWZzKCkKICAgICBzZXR0aW5ncy0+c2V0QXR0cmli
dXRlKFFXZWJTZXR0aW5nczo6QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0VuYWJsZWQsIG1fd2luZG93
T3B0aW9ucy51c2VDb21wb3NpdGluZyk7CiAgICAgc2V0dGluZ3MtPnNldEF0dHJpYnV0ZShRV2Vi
U2V0dGluZ3M6OlRpbGVkQmFja2luZ1N0b3JlRW5hYmxlZCwgbV93aW5kb3dPcHRpb25zLnVzZVRp
bGVkQmFja2luZ1N0b3JlKTsKICAgICBzZXR0aW5ncy0+c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5n
czo6RnJhbWVGbGF0dGVuaW5nRW5hYmxlZCwgbV93aW5kb3dPcHRpb25zLnVzZUZyYW1lRmxhdHRl
bmluZyk7Ci0gICAgc2V0dGluZ3MtPnNldEF0dHJpYnV0ZShRV2ViU2V0dGluZ3M6OldlYkdMRW5h
YmxlZCwgbV93aW5kb3dPcHRpb25zLnVzZVdlYkdMKTsKKyAgICBtX3dpbmRvd09wdGlvbnMudXNl
V2ViR0wgPSBzZXR0aW5ncy0+dGVzdEF0dHJpYnV0ZShRV2ViU2V0dGluZ3M6OldlYkdMRW5hYmxl
ZCk7CisgICAgbV93aW5kb3dPcHRpb25zLnVzZVdlYkF1ZGlvID0gc2V0dGluZ3MtPnRlc3RBdHRy
aWJ1dGUoUVdlYlNldHRpbmdzOjpXZWJBdWRpb0VuYWJsZWQpOwogCiAgICAgaWYgKCFpc0dyYXBo
aWNzQmFzZWQoKSkKICAgICAgICAgcmV0dXJuOwpAQCAtMzExLDcgKzMxMiwxOSBAQCB2b2lkIExh
dW5jaGVyV2luZG93OjpjcmVhdGVDaHJvbWUoKQogCiAgICAgUUFjdGlvbiogdG9nZ2xlV2ViR0wg
PSB0b29sc01lbnUtPmFkZEFjdGlvbigiVG9nZ2xlIFdlYkdMIiwgdGhpcywgU0xPVCh0b2dnbGVX
ZWJHTChib29sKSkpOwogICAgIHRvZ2dsZVdlYkdMLT5zZXRDaGVja2FibGUodHJ1ZSk7Ci0gICAg
dG9nZ2xlV2ViR0wtPnNldENoZWNrZWQoc2V0dGluZ3MtPnRlc3RBdHRyaWJ1dGUoUVdlYlNldHRp
bmdzOjpXZWJHTEVuYWJsZWQpKTsKKyNpZiBFTkFCTEUoV0VCR0wpCisgICAgdG9nZ2xlV2ViR0wt
PnNldENoZWNrZWQobV93aW5kb3dPcHRpb25zLnVzZVdlYkdMKTsKKyNlbHNlCisgICAgdG9nZ2xl
V2ViR0wtPnNldEVuYWJsZWQoZmFsc2UpOworI2VuZGlmCisKKyAgICBRQWN0aW9uKiB0b2dnbGVX
ZWJBdWRpbyA9IHRvb2xzTWVudS0+YWRkQWN0aW9uKCJUb2dnbGUgV2ViQXVkaW8iLCB0aGlzLCBT
TE9UKHRvZ2dsZVdlYkF1ZGlvKGJvb2wpKSk7CisgICAgdG9nZ2xlV2ViQXVkaW8tPnNldENoZWNr
YWJsZSh0cnVlKTsKKyNpZiBFTkFCTEUoV0VCX0FVRElPKQorICAgIHRvZ2dsZVdlYkF1ZGlvLT5z
ZXRDaGVja2VkKG1fd2luZG93T3B0aW9ucy51c2VXZWJBdWRpbyk7CisjZWxzZQorICAgIHRvZ2ds
ZVdlYkF1ZGlvLT5zZXRFbmFibGVkKGZhbHNlKTsKKyNlbmRpZgogCiAgICAgUUFjdGlvbiogc3Bh
dGlhbE5hdmlnYXRpb25BY3Rpb24gPSB0b29sc01lbnUtPmFkZEFjdGlvbigiVG9nZ2xlIFNwYXRp
YWwgTmF2aWdhdGlvbiIsIHRoaXMsIFNMT1QodG9nZ2xlU3BhdGlhbE5hdmlnYXRpb24oYm9vbCkp
KTsKICAgICBzcGF0aWFsTmF2aWdhdGlvbkFjdGlvbi0+c2V0Q2hlY2thYmxlKHRydWUpOwpAQCAt
ODYwLDYgKzg3MywxMiBAQCB2b2lkIExhdW5jaGVyV2luZG93Ojp0b2dnbGVXZWJHTChib29sIHRv
Z2dsZSkKICAgICBwYWdlKCktPnNldHRpbmdzKCktPnNldEF0dHJpYnV0ZShRV2ViU2V0dGluZ3M6
OldlYkdMRW5hYmxlZCwgdG9nZ2xlKTsKIH0KIAordm9pZCBMYXVuY2hlcldpbmRvdzo6dG9nZ2xl
V2ViQXVkaW8oYm9vbCB0b2dnbGUpCit7CisgICAgbV93aW5kb3dPcHRpb25zLnVzZVdlYkF1ZGlv
ID0gdG9nZ2xlOworICAgIHBhZ2UoKS0+c2V0dGluZ3MoKS0+c2V0QXR0cmlidXRlKFFXZWJTZXR0
aW5nczo6V2ViQXVkaW9FbmFibGVkLCB0b2dnbGUpOworfQorCiB2b2lkIExhdW5jaGVyV2luZG93
OjphbmltYXRlZEZsaXAoKQogewogICAgIHFvYmplY3RfY2FzdDxXZWJWaWV3R3JhcGhpY3NCYXNl
ZCo+KG1fdmlldyktPmFuaW1hdGVkRmxpcCgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvUXRUZXN0QnJv
d3Nlci9sYXVuY2hlcndpbmRvdy5oIGIvVG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRv
dy5oCmluZGV4IDNkZTg2NjdmYTk2MzNhYTNlZTcyMWNjYjRlYjM0ZDVlNDM1ZWQ0ZmMuLmI0ZDQ0
ZmUzYjc2NTZiNjYzNTk5OWMwYzhmNjhmYjQ0NDgzZTY2YmEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1F0
VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuaAorKysgYi9Ub29scy9RdFRlc3RCcm93c2VyL2xh
dW5jaGVyd2luZG93LmgKQEAgLTY4LDYgKzY4LDcgQEAgcHVibGljOgogICAgICAgICAsIHVzZUNv
bXBvc2l0aW5nKHRydWUpCiAgICAgICAgICwgdXNlVGlsZWRCYWNraW5nU3RvcmUoZmFsc2UpCiAg
ICAgICAgICwgdXNlV2ViR0woZmFsc2UpCisgICAgICAgICwgdXNlV2ViQXVkaW8oZmFsc2UpCiAg
ICAgICAgICwgdXNlRnJhbWVGbGF0dGVuaW5nKGZhbHNlKQogICAgICAgICAsIGNhY2hlV2ViVmll
dyhmYWxzZSkKICAgICAgICAgLCBzaG93RnJhbWVSYXRlKGZhbHNlKQpAQCAtOTIsNiArOTMsNyBA
QCBwdWJsaWM6CiAgICAgYm9vbCB1c2VDb21wb3NpdGluZzsKICAgICBib29sIHVzZVRpbGVkQmFj
a2luZ1N0b3JlOwogICAgIGJvb2wgdXNlV2ViR0w7CisgICAgYm9vbCB1c2VXZWJBdWRpbzsKICAg
ICBib29sIHVzZUZyYW1lRmxhdHRlbmluZzsKICAgICBib29sIGNhY2hlV2ViVmlldzsKICAgICBi
b29sIHNob3dGcmFtZVJhdGU7CkBAIC0xNTIsNiArMTU0LDcgQEAgcHJvdGVjdGVkIFFfU0xPVFM6
CiAgICAgdm9pZCB0b2dnbGVUaWxlZEJhY2tpbmdTdG9yZShib29sIHRvZ2dsZSk7CiAgICAgdm9p
ZCB0b2dnbGVSZXNpemVzVG9Db250ZW50cyhib29sIHRvZ2dsZSk7CiAgICAgdm9pZCB0b2dnbGVX
ZWJHTChib29sIHRvZ2dsZSk7CisgICAgdm9pZCB0b2dnbGVXZWJBdWRpbyhib29sIHRvZ2dsZSk7
CiAgICAgdm9pZCB0b2dnbGVTcGF0aWFsTmF2aWdhdGlvbihib29sIGIpOwogICAgIHZvaWQgdG9n
Z2xlRnVsbFNjcmVlbk1vZGUoYm9vbCBlbmFibGUpOwogICAgIHZvaWQgdG9nZ2xlRnJhbWVGbGF0
dGVuaW5nKGJvb2wgdG9nZ2xlKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL3FtYWtlL21rc3BlY3MvZmVh
dHVyZXMvZmVhdHVyZXMucHJmIGIvVG9vbHMvcW1ha2UvbWtzcGVjcy9mZWF0dXJlcy9mZWF0dXJl
cy5wcmYKaW5kZXggMmEwZWI0MDUxMjE2YTVjYmM4ZjU4YWJiZWJiNmY5MzFhODcwNTk3MS4uZGY5
M2ZlYTFkMTllMDQ5Y2Y5YzRiNmI4NzRjMWZkMzA5NWVjMDUxMCAxMDA2NDQKLS0tIGEvVG9vbHMv
cW1ha2UvbWtzcGVjcy9mZWF0dXJlcy9mZWF0dXJlcy5wcmYKKysrIGIvVG9vbHMvcW1ha2UvbWtz
cGVjcy9mZWF0dXJlcy9mZWF0dXJlcy5wcmYKQEAgLTE2OCw1ICsxNjgsOCBAQCBkZWZpbmVUZXN0
KHNhbnRpemVGZWF0dXJlcykgewogICAgICMgV0syJ3MgcGx1Z2luIHByb2Nlc3MgY29kZSByZXF1
aXJlcyBOUEFQSQogICAgICFlbmFibGU/KG5ldHNjYXBlX3BsdWdpbl9hcGkpOiBXRUJLSVRfQ09O
RklHIC09IHBsdWdpbl9wcm9jZXNzCiAKKyAgICAjIFdlYiBBdWRpbyByZXF1aXJlcyBHU3RyZWFt
ZXIuCisgICAgIXVzZT8oZ3N0cmVhbWVyKTogV0VCS0lUX0NPTkZJRyAtPSB3ZWJfYXVkaW8KKwog
ICAgIGV4cG9ydChXRUJLSVRfQ09ORklHKQogfQpkaWZmIC0tZ2l0IGEvVG9vbHMvcW1ha2UvbWtz
cGVjcy9mZWF0dXJlcy9mZWF0dXJlcy5wcmkgYi9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVz
L2ZlYXR1cmVzLnByaQppbmRleCBhNTAyNWZkODE5ZTM4YzA3ZjQwYTQ5YjdiYWFkMmI1YzQwZWUx
MzlmLi40ZjU4NTE3MWZmZDdlZTliODNmZDkzMmJmMTE2MWIyYjEzODk4OTgzIDEwMDY0NAotLS0g
YS9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL2ZlYXR1cmVzLnByaQorKysgYi9Ub29scy9x
bWFrZS9ta3NwZWNzL2ZlYXR1cmVzL2ZlYXR1cmVzLnByaQpAQCAtNzIsNiArNzIsNyBAQCBGRUFU
VVJFX0RFRkFVTFRTID0gXAogICAgIEVOQUJMRV9MRUdBQ1lfTk9USUZJQ0FUSU9OUz0xIFwKICAg
ICBFTkFCTEVfTEVHQUNZX1ZJRVdQT1JUX0FEQVBUSU9OPTEgXAogICAgIEVOQUJMRV9MRUdBQ1lf
VkVORE9SX1BSRUZJWEVTPTEgXAorICAgIEVOQUJMRV9MRUdBQ1lfV0VCX0FVRElPPTEgXAogICAg
IEVOQUJMRV9MSU5LX1BSRUZFVENIPTAgXAogICAgIEVOQUJMRV9MSU5LX1BSRVJFTkRFUj0wIFwK
ICAgICBFTkFCTEVfTUFUSE1MPTAgXAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>182327</attachid>
            <date>2013-01-11 05:46:43 -0800</date>
            <delta_ts>2013-01-11 06:30:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-106651-20130111144309.patch</filename>
            <type>text/plain</type>
            <size>16987</size>
            <attacher name="Allan Sandfeld Jensen">allan.jensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5MzAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTZlNWUyMTI1ODc3M2Y5
NmFiMjA4Y2E4OGI2NDhkZjk3NGFjNjA1ZS4uMTIxNmZkMDRlNzY4YWYxOWI0M2ZhNDM1NmY4NmY3
OWUxOWM5MDg5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEzLTAxLTExICBBbGxh
biBTYW5kZmVsZCBKZW5zZW4gIDxhbGxhbi5qZW5zZW5AZGlnaWEuY29tPgorCisgICAgICAgIFtR
dF1bV0sxXSBXZWIgQXVkaW8gc3VwcG9ydAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTA2NjUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQ29udmVydCBKYXZhU2NyaXB0IFVpbnQ4QXJyYXkgdG8gUUJ5dGVB
cnJheS4gVGhpcyBjb252ZXJzaW9uIGlzIG5lY2Vzc2FyeSB0byBzdXBwb3J0IHRlc3RSdW5uZXIu
c2V0QXVkaW9EYXRhKCkuCisKKyAgICAgICAgKiBicmlkZ2UvcXQvcXRfcnVudGltZS5jcHA6Cisg
ICAgICAgIChKU0M6OkJpbmRpbmdzOjppc0pTVWludDhBcnJheSk6CisgICAgICAgIChCaW5kaW5n
cyk6CisgICAgICAgIChKU0M6OkJpbmRpbmdzOjp2YWx1ZVJlYWxUeXBlKToKKyAgICAgICAgKEpT
Qzo6QmluZGluZ3M6OmNvbnZlcnRWYWx1ZVRvUVZhcmlhbnQpOgorCiAyMDEzLTAxLTAzICBBbGxh
biBTYW5kZmVsZCBKZW5zZW4gIDxhbGxhbi5qZW5zZW5AZGlnaWEuY29tPgogCiAgICAgICAgIFtR
dF0gU3VwcG9ydCAtd2Via2l0LWZvbnQtc21vb3RoaW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L3F0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IGMwNjFk
NWU2OTM5M2U0N2ZhNjVhOWRjZmI0MjIwM2JlMTZkNDk4MTQuLjZiMDZkNzBlMzQ2NWQ5ZTY3MWNj
MWNmNWFjYjVhOTY0NDU4YWU5ZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIw
MTMtMDEtMTEgIEFsbGFuIFNhbmRmZWxkIEplbnNlbiAgPGFsbGFuLmplbnNlbkBkaWdpYS5jb20+
CisKKyAgICAgICAgW1F0XVtXSzFdIFdlYiBBdWRpbyBzdXBwb3J0CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDY2NTEKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFeHBvc2Ugc2V0dGluZyB0byBlbmFibGUg
V2ViQXVkaW8gYXQgcnVudGltZS4KKworICAgICAgICAqIEFwaS9xd2Vic2V0dGluZ3MuY3BwOgor
ICAgICAgICAoUVdlYlNldHRpbmdzUHJpdmF0ZTo6YXBwbHkpOgorICAgICAgICAoUVdlYlNldHRp
bmdzOjpRV2ViU2V0dGluZ3MpOgorICAgICAgICAqIEFwaS9xd2Vic2V0dGluZ3MuaDoKKwogMjAx
My0wMS0wOCAgTWFyayBMYW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3Zl
ZCB0aGUgbmVlZCBmb3IgdGhlIFByb3Bvc2VkRGF0YWJhc2UgbWVjaGFuaXNtLgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3F0L3F0X3J1bnRpbWUuY3BwIGIvU291cmNlL1dlYkNv
cmUvYnJpZGdlL3F0L3F0X3J1bnRpbWUuY3BwCmluZGV4IDEzMTIzOTUzMzNlZTQwM2MyMDljN2Yw
ZjFkNWFjYjc2MjlmNjllMzIuLmUyY2E0NjVkZWQ2YjlkNjNlMzhjMWUxMmMwMzU1ZjgzZGZjYzg0
ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9ydW50aW1lLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGltZS5jcHAKQEAgLTEwMyw3ICsx
MDMsNyBAQCB0eXBlZGVmIGVudW0gewogICAgIFFPYmosCiAgICAgT2JqZWN0LAogICAgIE51bGws
Ci0gICAgUlRVaW50OENsYW1wZWRBcnJheQorICAgIFJUVWludDhBcnJheQogfSBKU1JlYWxUeXBl
OwogCiAjaWYgZGVmaW5lZChRVFdLX1JVTlRJTUVfQ09OVkVSU0lPTl9ERUJVRykgfHwgZGVmaW5l
ZChRVFdLX1JVTlRJTUVfTUFUQ0hfREVCVUcpCkBAIC0xNDUsOSArMTQ1LDkgQEAgdm9pZCByZWdp
c3RlckN1c3RvbVR5cGUoaW50IHF0TWV0YVR5cGVJZCwgQ29udmVydFRvVmFyaWFudEZ1bmN0aW9u
IHRvVmFyaWFudEZ1bmMKICAgICBjdXN0b21SdW50aW1lQ29udmVyc2lvbnMoKS0+aW5zZXJ0KHF0
TWV0YVR5cGVJZCwgY29udmVyc2lvbik7CiB9CiAKLXN0YXRpYyBib29sIGlzSlNVaW50OENsYW1w
ZWRBcnJheShKU09iamVjdFJlZiBvYmplY3QpCitzdGF0aWMgYm9vbCBpc0pTVWludDhBcnJheShK
U09iamVjdFJlZiBvYmplY3QpCiB7Ci0gICAgcmV0dXJuIHRvSlMob2JqZWN0KS0+aW5oZXJpdHMo
JkpTVWludDhDbGFtcGVkQXJyYXk6OnNfaW5mbyk7CisgICAgcmV0dXJuIHRvSlMob2JqZWN0KS0+
aW5oZXJpdHMoJkpTVWludDhBcnJheTo6c19pbmZvKTsKIH0KIAogc3RhdGljIGJvb2wgaXNKU0Fy
cmF5KEpTT2JqZWN0UmVmIG9iamVjdCkKQEAgLTE4MCw4ICsxODAsOCBAQCBzdGF0aWMgSlNSZWFs
VHlwZSB2YWx1ZVJlYWxUeXBlKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU1ZhbHVlUmVmIHZhbHVl
LCBKU1ZhbHVlUgogCiAgICAgSlNPYmplY3RSZWYgb2JqZWN0ID0gSlNWYWx1ZVRvT2JqZWN0KGNv
bnRleHQsIHZhbHVlLCBleGNlcHRpb24pOwogCi0gICAgaWYgKGlzSlNVaW50OENsYW1wZWRBcnJh
eShvYmplY3QpKQotICAgICAgICByZXR1cm4gUlRVaW50OENsYW1wZWRBcnJheTsKKyAgICBpZiAo
aXNKU1VpbnQ4QXJyYXkob2JqZWN0KSkKKyAgICAgICAgcmV0dXJuIFJUVWludDhBcnJheTsKICAg
ICBpZiAoaXNKU0FycmF5KG9iamVjdCkpCiAgICAgICAgICAgICByZXR1cm4gQXJyYXk7CiAgICAg
aWYgKGlzSlNEYXRlKG9iamVjdCkpCkBAIC0zNTYsNyArMzU2LDcgQEAgUVZhcmlhbnQgY29udmVy
dFZhbHVlVG9RVmFyaWFudChKU0NvbnRleHRSZWYgY29udGV4dCwgSlNWYWx1ZVJlZiB2YWx1ZSwg
UU1ldGFUeXAKICAgICAgICAgICAgIGNhc2UgUU9iajoKICAgICAgICAgICAgICAgICBoaW50ID0g
UU1ldGFUeXBlOjpRT2JqZWN0U3RhcjsKICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAg
ICAgIGNhc2UgUlRVaW50OENsYW1wZWRBcnJheToKKyAgICAgICAgICAgIGNhc2UgUlRVaW50OEFy
cmF5OgogICAgICAgICAgICAgICAgIGhpbnQgPSBRTWV0YVR5cGU6OlFCeXRlQXJyYXk7CiAgICAg
ICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlIEFycmF5OgpAQCAtNDkwLDggKzQ5
MCw4IEBAIFFWYXJpYW50IGNvbnZlcnRWYWx1ZVRvUVZhcmlhbnQoSlNDb250ZXh0UmVmIGNvbnRl
eHQsIEpTVmFsdWVSZWYgdmFsdWUsIFFNZXRhVHlwCiAgICAgICAgIH0KIAogICAgICAgICBjYXNl
IFFNZXRhVHlwZTo6UUJ5dGVBcnJheTogewotICAgICAgICAgICAgaWYgKHR5cGUgPT0gUlRVaW50
OENsYW1wZWRBcnJheSkgewotICAgICAgICAgICAgICAgIFdURjo6VWludDhDbGFtcGVkQXJyYXkq
IGFyciA9IHRvVWludDhDbGFtcGVkQXJyYXkodG9KUyh0b0pTKGNvbnRleHQpLCB2YWx1ZSkpOwor
ICAgICAgICAgICAgaWYgKHR5cGUgPT0gUlRVaW50OEFycmF5KSB7CisgICAgICAgICAgICAgICAg
V1RGOjpVaW50OEFycmF5KiBhcnIgPSB0b1VpbnQ4QXJyYXkodG9KUyh0b0pTKGNvbnRleHQpLCB2
YWx1ZSkpOwogICAgICAgICAgICAgICAgIHJldCA9IFFWYXJpYW50KFFCeXRlQXJyYXkocmVpbnRl
cnByZXRfY2FzdDxjb25zdCBjaGFyKj4oYXJyLT5kYXRhKCkpLCBhcnItPmxlbmd0aCgpKSk7CiAg
ICAgICAgICAgICAgICAgZGlzdCA9IDA7CiAgICAgICAgICAgICB9IGVsc2UgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9xdC9BcGkvcXdlYnNldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJLaXQv
cXQvQXBpL3F3ZWJzZXR0aW5ncy5jcHAKaW5kZXggOWRiMDFiMTFlOGQ0NDhkZjUxZDkyNDJjNzFj
N2UwNTljZWVhNjJkNS4uZjhlNDk5ODM1OGFmYmVjYjc4YTViMDMwNjBhZGNiNjU0ZGQwZTE0ZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9BcGkvcXdlYnNldHRpbmdzLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L3F0L0FwaS9xd2Vic2V0dGluZ3MuY3BwCkBAIC0xNjQsNiArMTY0LDEwIEBA
IHZvaWQgUVdlYlNldHRpbmdzUHJpdmF0ZTo6YXBwbHkoKQogICAgICAgICBzZXR0aW5ncy0+c2V0
QWNjZWxlcmF0ZWRDb21wb3NpdGluZ0ZvckNhbnZhc0VuYWJsZWQodmFsdWUpOwogI2VuZGlmCiAj
ZW5kaWYKKyNpZiBFTkFCTEUoV0VCX0FVRElPKQorICAgICAgICB2YWx1ZSA9IGF0dHJpYnV0ZXMu
dmFsdWUoUVdlYlNldHRpbmdzOjpXZWJBdWRpb0VuYWJsZWQsIGdsb2JhbC0+YXR0cmlidXRlcy52
YWx1ZShRV2ViU2V0dGluZ3M6OldlYkF1ZGlvRW5hYmxlZCkpOworICAgICAgICBzZXR0aW5ncy0+
c2V0V2ViQXVkaW9FbmFibGVkKHZhbHVlKTsKKyNlbmRpZgogCiAgICAgICAgIHZhbHVlID0gYXR0
cmlidXRlcy52YWx1ZShRV2ViU2V0dGluZ3M6OkNTU1JlZ2lvbnNFbmFibGVkLAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgZ2xvYmFsLT5hdHRyaWJ1dGVzLnZhbHVlKFFXZWJTZXR0
aW5nczo6Q1NTUmVnaW9uc0VuYWJsZWQpKTsKQEAgLTUzNCw2ICs1MzgsNyBAQCBRV2ViU2V0dGlu
Z3M6OlFXZWJTZXR0aW5ncygpCiAgICAgZC0+YXR0cmlidXRlcy5pbnNlcnQoUVdlYlNldHRpbmdz
OjpMb2NhbENvbnRlbnRDYW5BY2Nlc3NGaWxlVXJscywgdHJ1ZSk7CiAgICAgZC0+YXR0cmlidXRl
cy5pbnNlcnQoUVdlYlNldHRpbmdzOjpBY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCwgdHJ1
ZSk7CiAgICAgZC0+YXR0cmlidXRlcy5pbnNlcnQoUVdlYlNldHRpbmdzOjpXZWJHTEVuYWJsZWQs
IHRydWUpOworICAgIGQtPmF0dHJpYnV0ZXMuaW5zZXJ0KFFXZWJTZXR0aW5nczo6V2ViQXVkaW9F
bmFibGVkLCBmYWxzZSk7CiAgICAgZC0+YXR0cmlidXRlcy5pbnNlcnQoUVdlYlNldHRpbmdzOjpD
U1NSZWdpb25zRW5hYmxlZCwgdHJ1ZSk7CiAgICAgZC0+YXR0cmlidXRlcy5pbnNlcnQoUVdlYlNl
dHRpbmdzOjpDU1NHcmlkTGF5b3V0RW5hYmxlZCwgZmFsc2UpOwogICAgIGQtPmF0dHJpYnV0ZXMu
aW5zZXJ0KFFXZWJTZXR0aW5nczo6SHlwZXJsaW5rQXVkaXRpbmdFbmFibGVkLCBmYWxzZSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9xd2Vic2V0dGluZ3MuaCBiL1NvdXJjZS9X
ZWJLaXQvcXQvQXBpL3F3ZWJzZXR0aW5ncy5oCmluZGV4IGM0NDA1YTQ2YjA2ZDU5ZjRkOGMzN2U5
NDk3Mzk3ZjI3NTFjYTllYzAuLjk2YTYzNmEwZDA5OGNmYjkwMmZiMjBhYzM2MTg5NTY4NmY4ZWM1
YjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJzZXR0aW5ncy5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJzZXR0aW5ncy5oCkBAIC04NCw3ICs4NCw4IEBAIHB1
YmxpYzoKICAgICAgICAgQ1NTR3JpZExheW91dEVuYWJsZWQsCiAgICAgICAgIFNjcm9sbEFuaW1h
dG9yRW5hYmxlZCwKICAgICAgICAgQ2FyZXRCcm93c2luZ0VuYWJsZWQsCi0gICAgICAgIE5vdGlm
aWNhdGlvbnNFbmFibGVkCisgICAgICAgIE5vdGlmaWNhdGlvbnNFbmFibGVkLAorICAgICAgICBX
ZWJBdWRpb0VuYWJsZWQKICAgICB9OwogICAgIGVudW0gV2ViR3JhcGhpYyB7CiAgICAgICAgIE1p
c3NpbmdJbWFnZUdyYXBoaWMsCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9D
aGFuZ2VMb2cKaW5kZXggOWE4ZWY4ODc1ODNjMTgyOGU4NDZlNjUwYWU4Mzc4MWY4MTYwZTRiYS4u
OTlmODA0NzhhNWE3NTA1ZWY1OGM1NzZjNWQ3MDNiMjM4YjU0MWE2YyAxMDA2NDQKLS0tIGEvVG9v
bHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDEz
LTAxLTExICBBbGxhbiBTYW5kZmVsZCBKZW5zZW4gIDxhbGxhbi5qZW5zZW5AZGlnaWEuY29tPgor
CisgICAgICAgIFtRdF1bV0sxXSBXZWIgQXVkaW8gc3VwcG9ydAorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA2NjUxCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50cyBzdXBwb3J0IGZvciBkdW1w
aW5nIGF1ZGlvIGRhdGEgaW4gRHVtcFJlbmRlclRyZWUuCisKKyAgICAgICAgQWRkcyBXZWJBdWRp
byB0byB0b2dnbGVhYmxlIGZlYXR1cmVzIGluIFF0VGVzdEJyb3dzZXIuCisKKyAgICAgICAgRW5h
YmxlcyBMRUdBQ1lfV0VCX0FVRElPLiBUaGlzIGZlYXR1cmUgaXMgcmVxdWlyZWQgZm9yIDIvMyBv
ZiB0aGUgd2ViIGF1ZGlvIHJlZ3Jlc3Npb24gdGVzdHMuIEl0IGlzIGVuYWJsZWQgYnkgZGVmYXVs
dAorICAgICAgICBiZWNhdXNlIGl0IGhhcyBubyBlZmZlY3Qgd2hlbiBXRUJfQVVESU8gaXMgbm90
IGVuYWJsZWQuIFRoaXMgY29tYmluYXRpb24gbWF0Y2hlcyB0aGUgc2V0dGluZ3MgaW4gRmVhdHVy
ZUxpc3QucG0uCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpkdW1wKToKKyAgICAgICAg
KiBEdW1wUmVuZGVyVHJlZS9xdC9UZXN0UnVubmVyUXQuY3BwOgorICAgICAgICAoVGVzdFJ1bm5l
cjo6cmVzZXQpOgorICAgICAgICAoVGVzdFJ1bm5lcjo6b3ZlcnJpZGVQcmVmZXJlbmNlKToKKyAg
ICAgICAgKFRlc3RSdW5uZXI6OnNldEF1ZGlvRGF0YSk6CisgICAgICAgICogRHVtcFJlbmRlclRy
ZWUvcXQvVGVzdFJ1bm5lclF0Lmg6CisgICAgICAgIChUZXN0UnVubmVyOjpzaG91bGREdW1wQXNB
dWRpbyk6CisgICAgICAgIChUZXN0UnVubmVyOjphdWRpb0RhdGEpOgorICAgICAgICAoVGVzdFJ1
bm5lcik6CisgICAgICAgICogUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHA6CisgICAg
ICAgIChMYXVuY2hlcldpbmRvdzo6YXBwbHlQcmVmcyk6CisgICAgICAgIChMYXVuY2hlcldpbmRv
dzo6Y3JlYXRlQ2hyb21lKToKKyAgICAgICAgKExhdW5jaGVyV2luZG93Ojp0b2dnbGVXZWJBdWRp
byk6CisgICAgICAgICogUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5oOgorICAgICAgICAo
V2luZG93T3B0aW9uczo6V2luZG93T3B0aW9ucyk6CisgICAgICAgIChXaW5kb3dPcHRpb25zKToK
KyAgICAgICAgKExhdW5jaGVyV2luZG93KToKKyAgICAgICAgKiBxbWFrZS9ta3NwZWNzL2ZlYXR1
cmVzL2ZlYXR1cmVzLnByZjoKKyAgICAgICAgKiBxbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL2ZlYXR1
cmVzLnByaToKKwogMjAxMy0wMS0xMCAgQWxsYW4gU2FuZGZlbGQgSmVuc2VuICA8YWxsYW4uamVu
c2VuQGRpZ2lhLmNvbT4KIAogICAgICAgICBbUXRdIE1ha2UgSW1hZ2VEaWZmIG1vcmUgdXNlZnVs
CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNw
cCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCmluZGV4IGMw
ZDcwMTIyODY0N2MxMzMzNWZkOTVjODRhNDVkMTA2NWFkNGQ3MzAuLjI0MDliNmFiNzhiMTFlZjA2
ZmU5NDBlNTE4YTQ1Y2U1MzMxZGY5MzUgMTAwNzU1Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1
bXBSZW5kZXJUcmVlUXQuY3BwCkBAIC05MTYsMTQgKzkxNiwxOSBAQCB2b2lkIER1bXBSZW5kZXJU
cmVlOjpkdW1wKCkKIAogICAgIC8vIER1bXAgcmVuZGVyIHRleHQuLi4KICAgICBRU3RyaW5nIHJl
c3VsdFN0cmluZzsKLSAgICBpZiAobV9jb250cm9sbGVyLT5zaG91bGREdW1wQXNUZXh0KCkpCisg
ICAgUVN0cmluZyByZXN1bHRDb250ZW50VHlwZSA9ICJ0ZXh0L3BsYWluIjsKKyAgICBRQnl0ZUFy
cmF5IHJlc3VsdERhdGE7CisgICAgaWYgKG1fY29udHJvbGxlci0+c2hvdWxkRHVtcEFzQXVkaW8o
KSkgeworICAgICAgICByZXN1bHRDb250ZW50VHlwZSA9ICJhdWRpby93YXYiOworICAgICAgICBy
ZXN1bHREYXRhID0gbV9jb250cm9sbGVyLT5hdWRpb0RhdGEoKTsKKyAgICB9IGVsc2UgaWYgKG1f
Y29udHJvbGxlci0+c2hvdWxkRHVtcEFzVGV4dCgpKQogICAgICAgICByZXN1bHRTdHJpbmcgPSBk
dW1wRnJhbWVzQXNUZXh0KG1haW5GcmFtZSk7CiAgICAgZWxzZSB7CiAgICAgICAgIHJlc3VsdFN0
cmluZyA9IER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpmcmFtZVJlbmRlclRyZWVEdW1wKG1haW5G
cmFtZS0+aGFuZGxlKCkpOwogICAgICAgICByZXN1bHRTdHJpbmcgKz0gZHVtcEZyYW1lU2Nyb2xs
UG9zaXRpb24obWFpbkZyYW1lKTsKICAgICB9CiAgICAgaWYgKCFyZXN1bHRTdHJpbmcuaXNFbXB0
eSgpKSB7Ci0gICAgICAgIGZwcmludGYoc3Rkb3V0LCAiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWlu
XG4iKTsKKyAgICAgICAgZnByaW50ZihzdGRvdXQsICJDb250ZW50LVR5cGU6ICVzXG4iLCByZXN1
bHRDb250ZW50VHlwZS50b1V0ZjgoKS5jb25zdERhdGEoKSk7CiAgICAgICAgIGZwcmludGYoc3Rk
b3V0LCAiJXMiLCByZXN1bHRTdHJpbmcudG9VdGY4KCkuY29uc3REYXRhKCkpOwogCiAgICAgICAg
IGlmIChtX2NvbnRyb2xsZXItPnNob3VsZER1bXBCYWNrRm9yd2FyZExpc3QoKSkgewpAQCAtOTMz
LDcgKzkzOCwxMCBAQCB2b2lkIER1bXBSZW5kZXJUcmVlOjpkdW1wKCkKICAgICAgICAgICAgICAg
ICBmcHJpbnRmKHN0ZG91dCwgIiVzIiwgZHVtcEJhY2tGb3J3YXJkTGlzdChwYWdlKS50b1V0Zjgo
KS5jb25zdERhdGEoKSk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KLQorICAgIH0gZWxzZSBp
ZiAoIXJlc3VsdERhdGEuaXNFbXB0eSgpKSB7CisgICAgICAgIGZwcmludGYoc3Rkb3V0LCAiQ29u
dGVudC1UeXBlOiAlc1xuIiwgcmVzdWx0Q29udGVudFR5cGUudG9VdGY4KCkuY29uc3REYXRhKCkp
OworICAgICAgICBmcHJpbnRmKHN0ZG91dCwgIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IGJh
c2U2NFxuIik7CisgICAgICAgIGZwcmludGYoc3Rkb3V0LCAiJXMiLCByZXN1bHREYXRhLnRvQmFz
ZTY0KCkuY29uc3REYXRhKCkpOwogICAgIH0gZWxzZQogICAgICAgICBwcmludGYoIkVSUk9SOiBu
aWwgcmVzdWx0IGZyb20gJXMiLCBtZXRob2ROYW1lU3RyaW5nRm9yRmFpbGVkVGVzdChtX2NvbnRy
b2xsZXIpKTsKIApkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvVGVzdFJ1bm5l
clF0LmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L1Rlc3RSdW5uZXJRdC5jcHAKaW5kZXgg
NjVhMzFjYjhkYzZhZTFkM2IyMWQzNjZiOTNmYWRkMThjZTYxMTBhYi4uNGFhNDMwNDBjZWU5OGQ4
NGM5YjNiZDQ4YjNkNmVhYTc4NmE5MmVjZSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvcXQvVGVzdFJ1bm5lclF0LmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9UZXN0
UnVubmVyUXQuY3BwCkBAIC01Myw2ICs1Myw3IEBAIHZvaWQgVGVzdFJ1bm5lcjo6cmVzZXQoKQog
ICAgIG1faGFzRHVtcGVkID0gZmFsc2U7CiAgICAgbV9sb2FkRmluaXNoZWQgPSBmYWxzZTsKICAg
ICBtX3RleHREdW1wID0gZmFsc2U7CisgICAgbV9hdWRpb0R1bXAgPSBmYWxzZTsKICAgICBtX3No
b3VsZER1bXBQaXhlbHMgPSB0cnVlOwogICAgIG1fZHVtcEJhY2tGb3J3YXJkTGlzdCA9IGZhbHNl
OwogICAgIG1fZHVtcENoaWxkcmVuQXNUZXh0ID0gZmFsc2U7CkBAIC03Niw2ICs3Nyw3IEBAIHZv
aWQgVGVzdFJ1bm5lcjo6cmVzZXQoKQogICAgIG1faXNHZW9sb2NhdGlvblBlcm1pc3Npb25TZXQg
PSBmYWxzZTsKICAgICBtX2lzUHJpbnRpbmcgPSBmYWxzZTsKICAgICBtX2dlb2xvY2F0aW9uUGVy
bWlzc2lvbiA9IGZhbHNlOworICAgIG1fYXVkaW9EYXRhLmNsZWFyKCk7CiAKICAgICBEdW1wUmVu
ZGVyVHJlZVN1cHBvcnRRdDo6ZHVtcEVkaXRpbmdDYWxsYmFja3MoZmFsc2UpOwogICAgIER1bXBS
ZW5kZXJUcmVlU3VwcG9ydFF0OjpkdW1wRnJhbWVMb2FkZXIoZmFsc2UpOwpAQCAtNjc3LDYgKzY3
OSw4IEBAIHZvaWQgVGVzdFJ1bm5lcjo6b3ZlcnJpZGVQcmVmZXJlbmNlKGNvbnN0IFFTdHJpbmcm
IG5hbWUsIGNvbnN0IFFWYXJpYW50JiB2YWx1ZSkKICAgICAgICAgc2V0dGluZ3MtPnNldEF0dHJp
YnV0ZShRV2ViU2V0dGluZ3M6OkFjY2VsZXJhdGVkQ29tcG9zaXRpbmdFbmFibGVkLCB2YWx1ZS50
b0Jvb2woKSk7CiAgICAgZWxzZSBpZiAobmFtZSA9PSAiV2ViS2l0RGlzcGxheUltYWdlc0tleSIp
CiAgICAgICAgIHNldHRpbmdzLT5zZXRBdHRyaWJ1dGUoUVdlYlNldHRpbmdzOjpBdXRvTG9hZElt
YWdlcywgdmFsdWUudG9Cb29sKCkpOworICAgIGVsc2UgaWYgKG5hbWUgPT0gIldlYktpdFdlYkF1
ZGlvRW5hYmxlZCIpCisgICAgICAgIHNldHRpbmdzLT5zZXRBdHRyaWJ1dGUoUVdlYlNldHRpbmdz
OjpXZWJBdWRpb0VuYWJsZWQsIHZhbHVlLnRvQm9vbCgpKTsKICAgICBlbHNlCiAgICAgICAgIHBy
aW50ZigiRVJST1I6IFRlc3RSdW5uZXI6Om92ZXJyaWRlUHJlZmVyZW5jZSgpIGRvZXMgbm90IHN1
cHBvcnQgdGhlICclcycgcHJlZmVyZW5jZVxuIiwKICAgICAgICAgICAgIG5hbWUudG9MYXRpbjEo
KS5kYXRhKCkpOwpAQCAtOTY4LDUgKzk3MiwxMSBAQCB2b2lkIFRlc3RSdW5uZXI6OnNldEFsd2F5
c0Jsb2NrQ29va2llcyhib29sIGJsb2NrKQogICAgICAgICBnbG9iYWxTZXR0aW5ncy0+c2V0VGhp
cmRQYXJ0eUNvb2tpZVBvbGljeShRV2ViU2V0dGluZ3M6OkFsd2F5c0FsbG93VGhpcmRQYXJ0eUNv
b2tpZXMpOwogfQogCit2b2lkIFRlc3RSdW5uZXI6OnNldEF1ZGlvRGF0YShjb25zdCBRQnl0ZUFy
cmF5JiBhdWRpb0RhdGEpCit7CisgICAgbV9hdWRpb0RhdGEgPSBhdWRpb0RhdGE7CisgICAgbV9h
dWRpb0R1bXAgPSB0cnVlOworfQorCiBjb25zdCB1bnNpZ25lZCBUZXN0UnVubmVyOjptYXhWaWV3
V2lkdGggPSA4MDA7CiBjb25zdCB1bnNpZ25lZCBUZXN0UnVubmVyOjptYXhWaWV3SGVpZ2h0ID0g
NjAwOwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvVGVzdFJ1bm5lclF0Lmgg
Yi9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9UZXN0UnVubmVyUXQuaAppbmRleCBhMWVkNDE1NWNl
MjhkMDM1NWM1ZDg2NWJjNDNlNzIzNzI5NWIzMTdhLi4yNzE5NDE4OGVhZjgxODVhOTQxNWE3ZWQ1
NjJkNjQ0ZjY0ZjBjZjUzIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9UZXN0
UnVubmVyUXQuaAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9xdC9UZXN0UnVubmVyUXQuaApA
QCAtNjMsNiArNjMsNyBAQCBwdWJsaWM6CiAKICAgICBib29sIHNob3VsZERpc2FsbG93SW5jcmVh
c2VGb3JBcHBsaWNhdGlvbkNhY2hlUXVvdGEoKSBjb25zdCB7IHJldHVybiBtX2Rpc2FsbG93SW5j
cmVhc2VGb3JBcHBsaWNhdGlvbkNhY2hlUXVvdGE7IH0KICAgICBib29sIHNob3VsZER1bXBBc1Rl
eHQoKSBjb25zdCB7IHJldHVybiBtX3RleHREdW1wOyB9CisgICAgYm9vbCBzaG91bGREdW1wQXNB
dWRpbygpIGNvbnN0IHsgcmV0dXJuIG1fYXVkaW9EdW1wOyB9CiAgICAgYm9vbCBzaG91bGREdW1w
UGl4ZWxzKCkgY29uc3QgeyByZXR1cm4gbV9zaG91bGREdW1wUGl4ZWxzOyB9CiAgICAgYm9vbCBz
aG91bGREdW1wQmFja0ZvcndhcmRMaXN0KCkgY29uc3QgeyByZXR1cm4gbV9kdW1wQmFja0Zvcndh
cmRMaXN0OyB9CiAgICAgYm9vbCBzaG91bGREdW1wQ2hpbGRyZW5Bc1RleHQoKSBjb25zdCB7IHJl
dHVybiBtX2R1bXBDaGlsZHJlbkFzVGV4dDsgfQpAQCAtNzgsNiArNzksOCBAQCBwdWJsaWM6CiAg
ICAgYm9vbCBpZ25vcmVSZXFlc3RGb3JQZXJtaXNzaW9uKCkgY29uc3QgeyByZXR1cm4gbV9pZ25v
cmVEZXNrdG9wTm90aWZpY2F0aW9uOyB9CiAgICAgYm9vbCBpc1ByaW50aW5nKCkgeyByZXR1cm4g
bV9pc1ByaW50aW5nOyB9CiAKKyAgICBjb25zdCBRQnl0ZUFycmF5JiBhdWRpb0RhdGEoKSBjb25z
dCB7IHJldHVybiBtX2F1ZGlvRGF0YTsgfQorCiAgICAgdm9pZCByZXNldCgpOwogCiAgICAgc3Rh
dGljIGNvbnN0IHVuc2lnbmVkIGludCBtYXhWaWV3V2lkdGg7CkBAIC0yNzUsNiArMjc4LDggQEAg
cHVibGljIFFfU0xPVFM6CiAgICAgdm9pZCBzZXRBbHdheXNBY2NlcHRDb29raWVzKGJvb2wpOwog
ICAgIHZvaWQgc2V0QWx3YXlzQmxvY2tDb29raWVzKGJvb2wpOwogCisgICAgdm9pZCBzZXRBdWRp
b0RhdGEoY29uc3QgUUJ5dGVBcnJheSYpOworCiBwcml2YXRlIFFfU0xPVFM6CiAgICAgdm9pZCBw
cm9jZXNzV29yaygpOwogCkBAIC0yODQsNiArMjg5LDcgQEAgcHJpdmF0ZToKIHByaXZhdGU6CiAg
ICAgYm9vbCBtX2hhc0R1bXBlZDsKICAgICBib29sIG1fdGV4dER1bXA7CisgICAgYm9vbCBtX2F1
ZGlvRHVtcDsKICAgICBib29sIG1fc2hvdWxkRHVtcFBpeGVsczsKICAgICBib29sIG1fZGlzYWxs
b3dJbmNyZWFzZUZvckFwcGxpY2F0aW9uQ2FjaGVRdW90YTsKICAgICBib29sIG1fZHVtcEJhY2tG
b3J3YXJkTGlzdDsKQEAgLTMxMiw2ICszMTgsOCBAQCBwcml2YXRlOgogICAgIFFTdHJpbmdMaXN0
IG1fZGVza3RvcE5vdGlmaWNhdGlvbkFsbG93ZWRPcmlnaW5zOwogICAgIGJvb2wgbV9pZ25vcmVE
ZXNrdG9wTm90aWZpY2F0aW9uOwogCisgICAgUUJ5dGVBcnJheSBtX2F1ZGlvRGF0YTsKKwogICAg
IGJvb2wgbV9zaG91bGRUaW1lb3V0OwogICAgIGludCBtX3RpbWVvdXQ7CiB9OwpkaWZmIC0tZ2l0
IGEvVG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndpbmRvdy5jcHAgYi9Ub29scy9RdFRlc3RC
cm93c2VyL2xhdW5jaGVyd2luZG93LmNwcAppbmRleCBkOWRkMGY5M2ZhZjhmYTUwYmQ1Y2MxODc0
NzBhODhhM2YxNzk3NDU3Li5jYTAwODkyNjJkMzQ5MDAxNGY4ODkwYzU1NGZkZmQ5MzYyZTBhOThh
IDEwMDY0NAotLS0gYS9Ub29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmNwcAorKysg
Yi9Ub29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmNwcApAQCAtMjE3LDYgKzIxNyw3
IEBAIHZvaWQgTGF1bmNoZXJXaW5kb3c6OmFwcGx5UHJlZnMoKQogICAgIHNldHRpbmdzLT5zZXRB
dHRyaWJ1dGUoUVdlYlNldHRpbmdzOjpUaWxlZEJhY2tpbmdTdG9yZUVuYWJsZWQsIG1fd2luZG93
T3B0aW9ucy51c2VUaWxlZEJhY2tpbmdTdG9yZSk7CiAgICAgc2V0dGluZ3MtPnNldEF0dHJpYnV0
ZShRV2ViU2V0dGluZ3M6OkZyYW1lRmxhdHRlbmluZ0VuYWJsZWQsIG1fd2luZG93T3B0aW9ucy51
c2VGcmFtZUZsYXR0ZW5pbmcpOwogICAgIHNldHRpbmdzLT5zZXRBdHRyaWJ1dGUoUVdlYlNldHRp
bmdzOjpXZWJHTEVuYWJsZWQsIG1fd2luZG93T3B0aW9ucy51c2VXZWJHTCk7CisgICAgbV93aW5k
b3dPcHRpb25zLnVzZVdlYkF1ZGlvID0gc2V0dGluZ3MtPnRlc3RBdHRyaWJ1dGUoUVdlYlNldHRp
bmdzOjpXZWJBdWRpb0VuYWJsZWQpOwogCiAgICAgaWYgKCFpc0dyYXBoaWNzQmFzZWQoKSkKICAg
ICAgICAgcmV0dXJuOwpAQCAtMzEyLDYgKzMxMywxNyBAQCB2b2lkIExhdW5jaGVyV2luZG93Ojpj
cmVhdGVDaHJvbWUoKQogICAgIFFBY3Rpb24qIHRvZ2dsZVdlYkdMID0gdG9vbHNNZW51LT5hZGRB
Y3Rpb24oIlRvZ2dsZSBXZWJHTCIsIHRoaXMsIFNMT1QodG9nZ2xlV2ViR0woYm9vbCkpKTsKICAg
ICB0b2dnbGVXZWJHTC0+c2V0Q2hlY2thYmxlKHRydWUpOwogICAgIHRvZ2dsZVdlYkdMLT5zZXRD
aGVja2VkKHNldHRpbmdzLT50ZXN0QXR0cmlidXRlKFFXZWJTZXR0aW5nczo6V2ViR0xFbmFibGVk
KSk7CisjaWYgIUVOQUJMRShXRUJHTCkKKyAgICB0b2dnbGVXZWJHTC0+c2V0RW5hYmxlZChmYWxz
ZSk7CisjZW5kaWYKKworICAgIFFBY3Rpb24qIHRvZ2dsZVdlYkF1ZGlvID0gdG9vbHNNZW51LT5h
ZGRBY3Rpb24oIlRvZ2dsZSBXZWJBdWRpbyIsIHRoaXMsIFNMT1QodG9nZ2xlV2ViQXVkaW8oYm9v
bCkpKTsKKyAgICB0b2dnbGVXZWJBdWRpby0+c2V0Q2hlY2thYmxlKHRydWUpOworI2lmIEVOQUJM
RShXRUJfQVVESU8pCisgICAgdG9nZ2xlV2ViQXVkaW8tPnNldENoZWNrZWQobV93aW5kb3dPcHRp
b25zLnVzZVdlYkF1ZGlvKTsKKyNlbHNlCisgICAgdG9nZ2xlV2ViQXVkaW8tPnNldEVuYWJsZWQo
ZmFsc2UpOworI2VuZGlmCiAKICAgICBRQWN0aW9uKiBzcGF0aWFsTmF2aWdhdGlvbkFjdGlvbiA9
IHRvb2xzTWVudS0+YWRkQWN0aW9uKCJUb2dnbGUgU3BhdGlhbCBOYXZpZ2F0aW9uIiwgdGhpcywg
U0xPVCh0b2dnbGVTcGF0aWFsTmF2aWdhdGlvbihib29sKSkpOwogICAgIHNwYXRpYWxOYXZpZ2F0
aW9uQWN0aW9uLT5zZXRDaGVja2FibGUodHJ1ZSk7CkBAIC04NjAsNiArODcyLDEyIEBAIHZvaWQg
TGF1bmNoZXJXaW5kb3c6OnRvZ2dsZVdlYkdMKGJvb2wgdG9nZ2xlKQogICAgIHBhZ2UoKS0+c2V0
dGluZ3MoKS0+c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5nczo6V2ViR0xFbmFibGVkLCB0b2dnbGUp
OwogfQogCit2b2lkIExhdW5jaGVyV2luZG93Ojp0b2dnbGVXZWJBdWRpbyhib29sIHRvZ2dsZSkK
K3sKKyAgICBtX3dpbmRvd09wdGlvbnMudXNlV2ViQXVkaW8gPSB0b2dnbGU7CisgICAgcGFnZSgp
LT5zZXR0aW5ncygpLT5zZXRBdHRyaWJ1dGUoUVdlYlNldHRpbmdzOjpXZWJBdWRpb0VuYWJsZWQs
IHRvZ2dsZSk7Cit9CisKIHZvaWQgTGF1bmNoZXJXaW5kb3c6OmFuaW1hdGVkRmxpcCgpCiB7CiAg
ICAgcW9iamVjdF9jYXN0PFdlYlZpZXdHcmFwaGljc0Jhc2VkKj4obV92aWV3KS0+YW5pbWF0ZWRG
bGlwKCk7CmRpZmYgLS1naXQgYS9Ub29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93Lmgg
Yi9Ub29scy9RdFRlc3RCcm93c2VyL2xhdW5jaGVyd2luZG93LmgKaW5kZXggM2RlODY2N2ZhOTYz
M2FhM2VlNzIxY2NiNGViMzRkNWU0MzVlZDRmYy4uYjRkNDRmZTNiNzY1NmI2NjM1OTk5YzBjOGY2
OGZiNDQ0ODNlNjZiYSAxMDA2NDQKLS0tIGEvVG9vbHMvUXRUZXN0QnJvd3Nlci9sYXVuY2hlcndp
bmRvdy5oCisrKyBiL1Rvb2xzL1F0VGVzdEJyb3dzZXIvbGF1bmNoZXJ3aW5kb3cuaApAQCAtNjgs
NiArNjgsNyBAQCBwdWJsaWM6CiAgICAgICAgICwgdXNlQ29tcG9zaXRpbmcodHJ1ZSkKICAgICAg
ICAgLCB1c2VUaWxlZEJhY2tpbmdTdG9yZShmYWxzZSkKICAgICAgICAgLCB1c2VXZWJHTChmYWxz
ZSkKKyAgICAgICAgLCB1c2VXZWJBdWRpbyhmYWxzZSkKICAgICAgICAgLCB1c2VGcmFtZUZsYXR0
ZW5pbmcoZmFsc2UpCiAgICAgICAgICwgY2FjaGVXZWJWaWV3KGZhbHNlKQogICAgICAgICAsIHNo
b3dGcmFtZVJhdGUoZmFsc2UpCkBAIC05Miw2ICs5Myw3IEBAIHB1YmxpYzoKICAgICBib29sIHVz
ZUNvbXBvc2l0aW5nOwogICAgIGJvb2wgdXNlVGlsZWRCYWNraW5nU3RvcmU7CiAgICAgYm9vbCB1
c2VXZWJHTDsKKyAgICBib29sIHVzZVdlYkF1ZGlvOwogICAgIGJvb2wgdXNlRnJhbWVGbGF0dGVu
aW5nOwogICAgIGJvb2wgY2FjaGVXZWJWaWV3OwogICAgIGJvb2wgc2hvd0ZyYW1lUmF0ZTsKQEAg
LTE1Miw2ICsxNTQsNyBAQCBwcm90ZWN0ZWQgUV9TTE9UUzoKICAgICB2b2lkIHRvZ2dsZVRpbGVk
QmFja2luZ1N0b3JlKGJvb2wgdG9nZ2xlKTsKICAgICB2b2lkIHRvZ2dsZVJlc2l6ZXNUb0NvbnRl
bnRzKGJvb2wgdG9nZ2xlKTsKICAgICB2b2lkIHRvZ2dsZVdlYkdMKGJvb2wgdG9nZ2xlKTsKKyAg
ICB2b2lkIHRvZ2dsZVdlYkF1ZGlvKGJvb2wgdG9nZ2xlKTsKICAgICB2b2lkIHRvZ2dsZVNwYXRp
YWxOYXZpZ2F0aW9uKGJvb2wgYik7CiAgICAgdm9pZCB0b2dnbGVGdWxsU2NyZWVuTW9kZShib29s
IGVuYWJsZSk7CiAgICAgdm9pZCB0b2dnbGVGcmFtZUZsYXR0ZW5pbmcoYm9vbCB0b2dnbGUpOwpk
aWZmIC0tZ2l0IGEvVG9vbHMvcW1ha2UvbWtzcGVjcy9mZWF0dXJlcy9mZWF0dXJlcy5wcmYgYi9U
b29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL2ZlYXR1cmVzLnByZgppbmRleCAyYTBlYjQwNTEy
MTZhNWNiYzhmNThhYmJlYmI2ZjkzMWE4NzA1OTcxLi5kZjkzZmVhMWQxOWUwNDljZjljNGI2Yjg3
NGMxZmQzMDk1ZWMwNTEwIDEwMDY0NAotLS0gYS9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVz
L2ZlYXR1cmVzLnByZgorKysgYi9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL2ZlYXR1cmVz
LnByZgpAQCAtMTY4LDUgKzE2OCw4IEBAIGRlZmluZVRlc3Qoc2FudGl6ZUZlYXR1cmVzKSB7CiAg
ICAgIyBXSzIncyBwbHVnaW4gcHJvY2VzcyBjb2RlIHJlcXVpcmVzIE5QQVBJCiAgICAgIWVuYWJs
ZT8obmV0c2NhcGVfcGx1Z2luX2FwaSk6IFdFQktJVF9DT05GSUcgLT0gcGx1Z2luX3Byb2Nlc3MK
IAorICAgICMgV2ViIEF1ZGlvIHJlcXVpcmVzIEdTdHJlYW1lci4KKyAgICAhdXNlPyhnc3RyZWFt
ZXIpOiBXRUJLSVRfQ09ORklHIC09IHdlYl9hdWRpbworCiAgICAgZXhwb3J0KFdFQktJVF9DT05G
SUcpCiB9CmRpZmYgLS1naXQgYS9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL2ZlYXR1cmVz
LnByaSBiL1Rvb2xzL3FtYWtlL21rc3BlY3MvZmVhdHVyZXMvZmVhdHVyZXMucHJpCmluZGV4IGE1
MDI1ZmQ4MTllMzhjMDdmNDBhNDliN2JhYWQyYjVjNDBlZTEzOWYuLjRmNTg1MTcxZmZkN2VlOWI4
M2ZkOTMyYmYxMTYxYjJiMTM4OTg5ODMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL3FtYWtlL21rc3BlY3Mv
ZmVhdHVyZXMvZmVhdHVyZXMucHJpCisrKyBiL1Rvb2xzL3FtYWtlL21rc3BlY3MvZmVhdHVyZXMv
ZmVhdHVyZXMucHJpCkBAIC03Miw2ICs3Miw3IEBAIEZFQVRVUkVfREVGQVVMVFMgPSBcCiAgICAg
RU5BQkxFX0xFR0FDWV9OT1RJRklDQVRJT05TPTEgXAogICAgIEVOQUJMRV9MRUdBQ1lfVklFV1BP
UlRfQURBUFRJT049MSBcCiAgICAgRU5BQkxFX0xFR0FDWV9WRU5ET1JfUFJFRklYRVM9MSBcCisg
ICAgRU5BQkxFX0xFR0FDWV9XRUJfQVVESU89MSBcCiAgICAgRU5BQkxFX0xJTktfUFJFRkVUQ0g9
MCBcCiAgICAgRU5BQkxFX0xJTktfUFJFUkVOREVSPTAgXAogICAgIEVOQUJMRV9NQVRITUw9MCBc
Cg==
</data>
<flag name="review"
          id="200291"
          type_id="1"
          status="+"
          setter="jturcotte"
    />
          </attachment>
      

    </bug>

</bugzilla>