<?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>104650</bug_id>
          
          <creation_ts>2012-12-11 01:27:31 -0800</creation_ts>
          <short_desc>INPUT_MULTIPLE_FIELDS_UI: Support focus navigation by left/right keys in RTL locales</short_desc>
          <delta_ts>2013-03-21 20:36:05 -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>Forms</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>LATER</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>61412</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kent Tamura">tkent</reporter>
          <assigned_to name="Kent Tamura">tkent</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>forms-bugs</cc>
    
    <cc>hayato</cc>
    
    <cc>morrita</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>788168</commentid>
    <comment_count>0</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-12-11 01:27:31 -0800</bug_when>
    <thetext>We disables it in Bug 104644.
We need to make FocusController::advanceFocus(FocusDirectionLeft/Right,...) workable for shadow nodes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790356</commentid>
    <comment_count>1</comment_count>
      <attachid>179218</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-12-13 00:19:38 -0800</bug_when>
    <thetext>Created attachment 179218
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790417</commentid>
    <comment_count>2</comment_count>
      <attachid>179218</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-13 01:57:52 -0800</bug_when>
    <thetext>Comment on attachment 179218
WIP

Attachment 179218 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/15312195

New failing tests:
fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791267</commentid>
    <comment_count>3</comment_count>
      <attachid>179405</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-12-13 20:08:34 -0800</bug_when>
    <thetext>Created attachment 179405
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791516</commentid>
    <comment_count>4</comment_count>
      <attachid>179405</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-12-14 03:34:04 -0800</bug_when>
    <thetext>Comment on attachment 179405
Patch

Attachment 179405 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/15309647

New failing tests:
fast/spatial-navigation/snav-media-elements.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792450</commentid>
    <comment_count>5</comment_count>
      <attachid>179684</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-12-16 20:12:12 -0800</bug_when>
    <thetext>Created attachment 179684
Patch 2

Fix media elements failure</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792468</commentid>
    <comment_count>6</comment_count>
      <attachid>179684</attachid>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2012-12-16 21:54:48 -0800</bug_when>
    <thetext>Comment on attachment 179684
Patch 2

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

&gt; Source/WebCore/dom/NodeTraversal.cpp:132
&gt; +namespace ElementTraversalWithShadow {

Can we use ComposedShadowTreeWalker to traverse nodes in shadow trees?
It seems a kind of duplications for me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792472</commentid>
    <comment_count>7</comment_count>
      <attachid>179684</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2012-12-16 22:38:10 -0800</bug_when>
    <thetext>Comment on attachment 179684
Patch 2

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

&gt;&gt; Source/WebCore/dom/NodeTraversal.cpp:132
&gt;&gt; +namespace ElementTraversalWithShadow {
&gt; 
&gt; Can we use ComposedShadowTreeWalker to traverse nodes in shadow trees?
&gt; It seems a kind of duplications for me.

I don&apos;t know because I don&apos;t understand ComposedShadowTreeWalker well.

- What is &quot;composed&quot; shadow tree?
- Will it be wrapped with ENABLE_SHADOW_DOM?
- Does it work for non-shadow nodes?
- Is the traversal order same as NodeTraversal/ElementTraversal?
- Does it have a function like NodeTraversal::nextSkippingChildren?
- What is UpperBoundary?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>801118</commentid>
    <comment_count>8</comment_count>
      <attachid>179684</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2013-01-06 17:19:14 -0800</bug_when>
    <thetext>Comment on attachment 179684
Patch 2

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

&gt;&gt;&gt; Source/WebCore/dom/NodeTraversal.cpp:132
&gt;&gt;&gt; +namespace ElementTraversalWithShadow {
&gt;&gt; 
&gt;&gt; Can we use ComposedShadowTreeWalker to traverse nodes in shadow trees?
&gt;&gt; It seems a kind of duplications for me.
&gt; 
&gt; I don&apos;t know because I don&apos;t understand ComposedShadowTreeWalker well.
&gt; 
&gt; - What is &quot;composed&quot; shadow tree?
&gt; - Will it be wrapped with ENABLE_SHADOW_DOM?
&gt; - Does it work for non-shadow nodes?
&gt; - Is the traversal order same as NodeTraversal/ElementTraversal?
&gt; - Does it have a function like NodeTraversal::nextSkippingChildren?
&gt; - What is UpperBoundary?

I added NodeRenderingTraversal.h (http://trac.webkit.org/browser/trunk/Source/WebCore/dom/NodeRenderingTraversal.h)
That is basically SHADOW_DOM flag agnostic version of shadow tree traversal routines.
It would be great if we can make these to fit there.

I&apos;m thinking about hiding ComposedShadowTreeWalker behind the flag. But it&apos;s long way to go.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>810300</commentid>
    <comment_count>9</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2013-01-18 00:07:40 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; - Does it have a function like NodeTraversal::nextSkippingChildren?

I found CSTW didn&apos;t have this feature. Also, CSTW doesn&apos;t have the stayWithin feature.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>810334</commentid>
    <comment_count>10</comment_count>
      <attachid>183397</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2013-01-18 00:45:40 -0800</bug_when>
    <thetext>Created attachment 183397
Patch 3

Use CSTW</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>861048</commentid>
    <comment_count>11</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2013-03-21 20:35:46 -0700</bug_when>
    <thetext>We already shipped this behavior for LTR locales a few months ago, and we haven&apos;t seen any requests to support RTL locales.  IMO we don&apos;t need to do this change yet.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179218</attachid>
            <date>2012-12-13 00:19:38 -0800</date>
            <delta_ts>2012-12-13 20:08:30 -0800</delta_ts>
            <desc>WIP</desc>
            <filename>bug-104650-20121213171658.patch</filename>
            <type>text/plain</type>
            <size>10668</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NTY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTFhNDliZTI0OGNmYWI4
YjEzNmIyMzQyZTU5ZTUzOTgxYjE5ZGFjNy4uNGY5MWY0YWQ1ZWI2ZTJlYjNhMzhjMDBlOGE5OWQz
OGY1NTY0ZjdkNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDEyLTEyLTEzICBLZW50
IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KKworICAgICAgICBJTlBVVF9NVUxUSVBMRV9G
SUVMRFNfVUk6IFN1cHBvcnQgZm9jdXMgbmF2aWdhdGlvbiBieSBsZWZ0L3JpZ2h0IGtleXMgaW4g
UlRMIGxvY2FsZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwNDY1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEFkZGl0aW9uYWwgaW5mb3JtYXRpb24gb2YgdGhlIGNoYW5nZSBzdWNoIGFzIGFwcHJvYWNo
LCByYXRpb25hbGUuIFBsZWFzZSBhZGQgcGVyLWZ1bmN0aW9uIGRlc2NyaXB0aW9ucyBiZWxvdyAo
T09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyAoT09QUyEpLgorCisgICAgICAgICogZG9t
L05vZGVUcmF2ZXJzYWwuY3BwOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChFbGVtZW50
VHJhdmVyc2FsV2l0aFNoYWRvdyk6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50VHJhdmVyc2Fs
V2l0aFNoYWRvdzo6Zmlyc3RFbGVtZW50SW5TaGFkb3cpOgorICAgICAgICAoV2ViQ29yZTo6RWxl
bWVudFRyYXZlcnNhbFdpdGhTaGFkb3c6OmZpcnN0V2l0aGluKToKKyAgICAgICAgKFdlYkNvcmU6
OkVsZW1lbnRUcmF2ZXJzYWxXaXRoU2hhZG93OjpuZXh0U2libGluZ0VsZW1lbnQpOgorICAgICAg
ICAoV2ViQ29yZTo6RWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3c6Om5leHRBbmNlc3RvclNpYmxp
bmcpOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3c6Om5leHQp
OgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3c6Om5leHRTa2lw
cGluZ0NoaWxkcmVuKToKKyAgICAgICAgKiBkb20vTm9kZVRyYXZlcnNhbC5oOgorICAgICAgICAo
RWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3cpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAg
ICogaHRtbC9zaGFkb3cvRGF0ZVRpbWVGaWVsZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6RGF0ZVRpbWVGaWVsZEVsZW1lbnQ6OmRlZmF1bHRLZXlib2FyZEV2ZW50SGFuZGxlcik6Cisg
ICAgICAgICogcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9j
dXNDb250cm9sbGVyOjpmaW5kRm9jdXNDYW5kaWRhdGVJbkNvbnRhaW5lcik6CisgICAgICAgICog
cGFnZS9TcGF0aWFsTmF2aWdhdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpzY3JvbGxhYmxl
RW5jbG9zaW5nQm94T3JQYXJlbnRGcmFtZUZvck5vZGVJbkRpcmVjdGlvbik6CisgICAgICAgIChX
ZWJDb3JlOjpub2RlUmVjdEluQWJzb2x1dGVDb29yZGluYXRlcyk6CisKIDIwMTItMTItMTIgIFNo
aW55YSBLYXdhbmFrYSAgPHNoaW55YWtAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIENvbnRhaW5l
ck5vZGVBbGdvcml0aG06Om5vdGlmeUluc2VydGVkSW50b0RvY3VtZW50IGlzIG5vdCB1c2VkCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZVRyYXZlcnNhbC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9kb20vTm9kZVRyYXZlcnNhbC5jcHAKaW5kZXggNDgyYTNiYWMxMmFjZTI3ZGQxYmU4
NDFjNGVjMWI3N2Q2ZmM4YjZlOS4uNzVlYWUzMjk3MDg1NWMwNzI3ZDIxZjUyZGM0NmI4NDI3MTZi
YjIyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGVUcmF2ZXJzYWwuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlVHJhdmVyc2FsLmNwcApAQCAtMjYsNiArMjYsOCBA
QAogI2luY2x1ZGUgIk5vZGVUcmF2ZXJzYWwuaCIKIAogI2luY2x1ZGUgIkNvbnRhaW5lck5vZGUu
aCIKKyNpbmNsdWRlICJFbGVtZW50U2hhZG93LmgiCisjaW5jbHVkZSAiU2hhZG93Um9vdC5oIgog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBuYW1lc3BhY2UgTm9kZVRyYXZlcnNhbCB7CkBAIC0xMjYs
NCArMTI4LDkxIEBAIE5vZGUqIHByZXZpb3VzU2tpcHBpbmdDaGlsZHJlblBvc3RPcmRlcihjb25z
dCBOb2RlKiBjdXJyZW50LCBjb25zdCBOb2RlKiBzdGF5V2l0CiB9CiAKIH0KKworbmFtZXNwYWNl
IEVsZW1lbnRUcmF2ZXJzYWxXaXRoU2hhZG93IHsKKworc3RhdGljIEVsZW1lbnQqIGZpcnN0RWxl
bWVudEluU2hhZG93KGNvbnN0IEVsZW1lbnQqIGhvc3QpCit7CisgICAgQVNTRVJUKGhvc3QpOwor
ICAgIEVsZW1lbnRTaGFkb3cqIHNoYWRvdyA9IGhvc3QtPnNoYWRvdygpOworICAgIGlmICghc2hh
ZG93KQorICAgICAgICByZXR1cm4gMDsKKyAgICBmb3IgKFNoYWRvd1Jvb3QqIHNoYWRvd1Jvb3Qg
PSBzaGFkb3ctPm9sZGVzdFNoYWRvd1Jvb3QoKTsgc2hhZG93Um9vdDsgc2hhZG93Um9vdCA9IHNo
YWRvd1Jvb3QtPnlvdW5nZXJTaGFkb3dSb290KCkpIHsKKyAgICAgICAgaWYgKEVsZW1lbnQqIGZp
cnN0ID0gRWxlbWVudFRyYXZlcnNhbDo6Zmlyc3RFbGVtZW50V2l0aGluVGVtcGxhdGUoc2hhZG93
Um9vdCkpCisgICAgICAgICAgICByZXR1cm4gZmlyc3Q7CisgICAgfQorICAgIHJldHVybiAwOwor
fQorCitFbGVtZW50KiBmaXJzdFdpdGhpbihjb25zdCBOb2RlKiBjdXJyZW50KQoreworICAgIEFT
U0VSVChjdXJyZW50KTsKKyAgICBpZiAoRWxlbWVudCogZmlyc3QgPSBFbGVtZW50VHJhdmVyc2Fs
OjpmaXJzdEVsZW1lbnRXaXRoaW5UZW1wbGF0ZShjdXJyZW50KSkKKyAgICAgICAgcmV0dXJuIGZp
cnN0OworICAgIGlmICghY3VycmVudC0+aXNFbGVtZW50Tm9kZSgpKQorICAgICAgICByZXR1cm4g
MDsKKyAgICByZXR1cm4gZmlyc3RFbGVtZW50SW5TaGFkb3codG9FbGVtZW50KGN1cnJlbnQpKTsK
K30KKworc3RhdGljIEVsZW1lbnQqIG5leHRTaWJsaW5nRWxlbWVudChjb25zdCBDb250YWluZXJO
b2RlKiBjdXJyZW50KQoreworICAgIEFTU0VSVChjdXJyZW50KTsKKyAgICBmb3IgKE5vZGUqIG5l
eHQgPSBjdXJyZW50LT5uZXh0U2libGluZygpOyBuZXh0OyBuZXh0ID0gbmV4dC0+bmV4dFNpYmxp
bmcoKSkgeworICAgICAgICBpZiAobmV4dC0+aXNFbGVtZW50Tm9kZSgpKQorICAgICAgICAgICAg
cmV0dXJuIHRvRWxlbWVudChuZXh0KTsKKyAgICB9CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRp
YyBFbGVtZW50KiBuZXh0QW5jZXN0b3JTaWJsaW5nKGNvbnN0IENvbnRhaW5lck5vZGUqIGN1cnJl
bnQsIGNvbnN0IE5vZGUqIHN0YXlXaXRoaW4pCit7CisgICAgQVNTRVJUKGN1cnJlbnQpOworICAg
IEFTU0VSVCghY3VycmVudC0+bmV4dFNpYmxpbmcoKSk7CisgICAgQVNTRVJUKGN1cnJlbnQgIT0g
c3RheVdpdGhpbik7CisgICAgZm9yIChDb250YWluZXJOb2RlKiBwYXJlbnQgPSBjdXJyZW50LT5w
YXJlbnROb2RlKCk7IHBhcmVudDsgcGFyZW50ID0gcGFyZW50LT5wYXJlbnROb2RlKCkpIHsKKyAg
ICAgICAgY3VycmVudCA9IHBhcmVudDsKKyAgICAgICAgaWYgKGN1cnJlbnQgPT0gc3RheVdpdGhp
bikKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICBpZiAoRWxlbWVudCogbmV4dCA9IG5l
eHRTaWJsaW5nRWxlbWVudChjdXJyZW50KSkKKyAgICAgICAgICAgIHJldHVybiBuZXh0OworICAg
ICAgICBpZiAoIWN1cnJlbnQtPmlzRWxlbWVudE5vZGUoKSkKKyAgICAgICAgICAgIGNvbnRpbnVl
OworICAgICAgICBpZiAoRWxlbWVudCogbmV4dEluU2hhZG93ID0gZmlyc3RFbGVtZW50SW5TaGFk
b3codG9FbGVtZW50KGN1cnJlbnQpKSkKKyAgICAgICAgICAgIHJldHVybiBuZXh0SW5TaGFkb3c7
CisgICAgfQorICAgIGlmICghY3VycmVudC0+aXNTaGFkb3dSb290KCkpCisgICAgICAgIHJldHVy
biAwOworICAgIGNvbnN0IFNoYWRvd1Jvb3QqIHNoYWRvd1Jvb3QgPSB0b1NoYWRvd1Jvb3QoY3Vy
cmVudCk7CisgICAgZm9yIChzaGFkb3dSb290ID0gc2hhZG93Um9vdC0+eW91bmdlclNoYWRvd1Jv
b3QoKTsgc2hhZG93Um9vdDsgc2hhZG93Um9vdCA9IHNoYWRvd1Jvb3QtPnlvdW5nZXJTaGFkb3dS
b290KCkpIHsKKyAgICAgICAgaWYgKEVsZW1lbnQqIGZpcnN0ID0gZmlyc3RXaXRoaW4oc2hhZG93
Um9vdCkpCisgICAgICAgICAgICByZXR1cm4gZmlyc3Q7CisgICAgfQorICAgIEVsZW1lbnQqIGhv
c3QgPSB0b1NoYWRvd1Jvb3QoY3VycmVudCktPmhvc3QoKTsKKyAgICBpZiAoaG9zdCA9PSBzdGF5
V2l0aGluKQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1cm4gbmV4dFNraXBwaW5nQ2hpbGRy
ZW4oaG9zdCwgc3RheVdpdGhpbik7Cit9CisKK0VsZW1lbnQqIG5leHQoY29uc3QgRWxlbWVudCog
Y3VycmVudCwgY29uc3QgTm9kZSogc3RheVdpdGhpbikKK3sKKyAgICBBU1NFUlQoY3VycmVudCk7
CisgICAgaWYgKEVsZW1lbnQqIGZpcnN0ID0gZmlyc3RXaXRoaW4oY3VycmVudCkpCisgICAgICAg
IHJldHVybiBmaXJzdDsKKyAgICBpZiAoY3VycmVudCA9PSBzdGF5V2l0aGluKQorICAgICAgICBy
ZXR1cm4gMDsKKyAgICBpZiAoRWxlbWVudCogbmV4dCA9IG5leHRTaWJsaW5nRWxlbWVudChjdXJy
ZW50KSkKKyAgICAgICAgcmV0dXJuIG5leHQ7CisgICAgcmV0dXJuIG5leHRBbmNlc3RvclNpYmxp
bmcoY3VycmVudCwgc3RheVdpdGhpbik7Cit9CisKK0VsZW1lbnQqIG5leHRTa2lwcGluZ0NoaWxk
cmVuKGNvbnN0IEVsZW1lbnQqIGN1cnJlbnQsIGNvbnN0IE5vZGUqIHN0YXlXaXRoaW4pCit7Cisg
ICAgQVNTRVJUKGN1cnJlbnQpOworICAgIGlmIChFbGVtZW50KiBuZXh0ID0gbmV4dFNpYmxpbmdF
bGVtZW50KGN1cnJlbnQpKQorICAgICAgICByZXR1cm4gbmV4dDsKKyAgICByZXR1cm4gbmV4dEFu
Y2VzdG9yU2libGluZyhjdXJyZW50LCBzdGF5V2l0aGluKTsKK30KKworfQorCiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZVRyYXZlcnNhbC5oIGIvU291cmNlL1dlYkNvcmUv
ZG9tL05vZGVUcmF2ZXJzYWwuaAppbmRleCA3YTNjYTBlNmYzM2UwZTFmZDUyMzdhMzE0MzFmZDVj
ZTk3MjA5YzFkLi4wOGIzYTQ3YjIyMTA0NDVkYjY3ZTJhZmUwNGQ0YTNmZDdhYzBhOTU0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZVRyYXZlcnNhbC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Ob2RlVHJhdmVyc2FsLmgKQEAgLTQ3LDYgKzQ3LDE3IEBAIEVsZW1lbnQqIG5l
eHRTa2lwcGluZ0NoaWxkcmVuKGNvbnN0IENvbnRhaW5lck5vZGUqLCBjb25zdCBOb2RlKiBzdGF5
V2l0aGluKTsKIAogfQogCituYW1lc3BhY2UgRWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3cgewor
Ly8gVGhlIGZvbGxvd2luZyBmdW5jdGlvbnMgdHJhdmVyc2UgZWxlbWVudHMgaW4gc2hhZG93IGlu
IGFkZGl0aW9uIHRvIG5vcm1hbAorLy8gY2hpbGQgZWxlbWVudHMuIFRoZSB0cmF2ZXJzaW5nIG9y
ZGVyIGlzOiBub3JtYWwgY2hpbGRyZW4gLT4gb2xkZXN0IFNoYWRvd1Jvb3QKKy8vIC0+IHlvdW5n
ZXN0IFNoYWRvd1Jvb3QuCisKK0VsZW1lbnQqIGZpcnN0V2l0aGluKGNvbnN0IE5vZGUqKTsKK0Vs
ZW1lbnQqIG5leHQoY29uc3QgRWxlbWVudCogY3VycmVudCwgY29uc3QgTm9kZSogc3RheVdpdGhp
bik7CitFbGVtZW50KiBuZXh0U2tpcHBpbmdDaGlsZHJlbihjb25zdCBFbGVtZW50KiwgY29uc3Qg
Tm9kZSogc3RheVdpdGhpbik7CisKK30KKwogbmFtZXNwYWNlIE5vZGVUcmF2ZXJzYWwgewogCiAv
LyBEb2VzIGEgcHJlLW9yZGVyIHRyYXZlcnNhbCBvZiB0aGUgdHJlZSB0byBmaW5kIHRoZSBuZXh0
IG5vZGUgYWZ0ZXIgdGhpcyBvbmUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3No
YWRvdy9EYXRlVGltZUZpZWxkRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRv
dy9EYXRlVGltZUZpZWxkRWxlbWVudC5jcHAKaW5kZXggNDQzNGM5NzY5NGRmZGQxYjQ0YjQ2OTVk
YzRmMWYzMTc2OGIxNDhjYS4uM2I2YzlhOTY3OTdkOGI4ZjBkYmViOGVjNDkxYTQxOTdkM2UwNjJm
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGF0ZVRpbWVGaWVsZEVs
ZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lRmllbGRF
bGVtZW50LmNwcApAQCAtMjgsOSArMjgsMTEgQEAKICNpbmNsdWRlICJEYXRlVGltZUZpZWxkRWxl
bWVudC5oIgogCiAjaW5jbHVkZSAiRGF0ZUNvbXBvbmVudHMuaCIKKyNpbmNsdWRlICJGb2N1c0Nv
bnRyb2xsZXIuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJLZXlib2FyZEV2
ZW50LmgiCiAjaW5jbHVkZSAiTG9jYWxpemVkU3RyaW5ncy5oIgorI2luY2x1ZGUgIlBhZ2UuaCIK
ICNpbmNsdWRlICJQbGF0Zm9ybUxvY2FsZS5oIgogI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgog
I2luY2x1ZGUgIlRleHQuaCIKQEAgLTkxLDIwICs5MywyNiBAQCB2b2lkIERhdGVUaW1lRmllbGRF
bGVtZW50OjpkZWZhdWx0S2V5Ym9hcmRFdmVudEhhbmRsZXIoS2V5Ym9hcmRFdmVudCoga2V5Ym9h
cmRFdgogICAgIGlmIChrZXlJZGVudGlmaWVyID09ICJMZWZ0IikgewogICAgICAgICBpZiAoIW1f
ZmllbGRPd25lcikKICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgLy8gRklYTUU6IFdlJ2Qg
bGlrZSB0byB1c2UgRm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXMoRm9jdXNEaXJlY3Rpb25M
ZWZ0LCAuLi4pCi0gICAgICAgIC8vIGJ1dCBpdCBkb2Vzbid0IHdvcmsgZm9yIHNoYWRvdyBub2Rl
cy4gd2Via2l0Lm9yZy9iLzEwNDY1MAotICAgICAgICBpZiAoIWxvY2FsZUZvck93bmVyKCkuaXNS
VEwoKSAmJiBtX2ZpZWxkT3duZXItPmZvY3VzT25QcmV2aW91c0ZpZWxkKCp0aGlzKSkKLSAgICAg
ICAgICAgIGtleWJvYXJkRXZlbnQtPnNldERlZmF1bHRIYW5kbGVkKCk7CisgICAgICAgIGlmICgh
bG9jYWxlRm9yT3duZXIoKS5pc1JUTCgpKSB7CisgICAgICAgICAgICBpZiAobV9maWVsZE93bmVy
LT5mb2N1c09uUHJldmlvdXNGaWVsZCgqdGhpcykpCisgICAgICAgICAgICAgICAga2V5Ym9hcmRF
dmVudC0+c2V0RGVmYXVsdEhhbmRsZWQoKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAg
IGlmIChkb2N1bWVudCgpLT5wYWdlKCktPmZvY3VzQ29udHJvbGxlcigpLT5hZHZhbmNlRm9jdXMo
Rm9jdXNEaXJlY3Rpb25MZWZ0LCBrZXlib2FyZEV2ZW50KSkKKyAgICAgICAgICAgICAgICBrZXli
b2FyZEV2ZW50LT5zZXREZWZhdWx0SGFuZGxlZCgpOworICAgICAgICB9CiAgICAgICAgIHJldHVy
bjsKICAgICB9CiAKICAgICBpZiAoa2V5SWRlbnRpZmllciA9PSAiUmlnaHQiKSB7CiAgICAgICAg
IGlmICghbV9maWVsZE93bmVyKQogICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAvLyBGSVhN
RTogV2UnZCBsaWtlIHRvIHVzZSBGb2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1cyhGb2N1c0Rp
cmVjdGlvblJpZ2h0LCAuLi4pCi0gICAgICAgIC8vIGJ1dCBpdCBkb2Vzbid0IHdvcmsgZm9yIHNo
YWRvdyBub2Rlcy4gd2Via2l0Lm9yZy9iLzEwNDY1MAotICAgICAgICBpZiAoIWxvY2FsZUZvck93
bmVyKCkuaXNSVEwoKSAmJiBtX2ZpZWxkT3duZXItPmZvY3VzT25OZXh0RmllbGQoKnRoaXMpKQot
ICAgICAgICAgICAga2V5Ym9hcmRFdmVudC0+c2V0RGVmYXVsdEhhbmRsZWQoKTsKKyAgICAgICAg
aWYgKCFsb2NhbGVGb3JPd25lcigpLmlzUlRMKCkpIHsKKyAgICAgICAgICAgIGlmIChtX2ZpZWxk
T3duZXItPmZvY3VzT25OZXh0RmllbGQoKnRoaXMpKQorICAgICAgICAgICAgICAgIGtleWJvYXJk
RXZlbnQtPnNldERlZmF1bHRIYW5kbGVkKCk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAg
ICBpZiAoZG9jdW1lbnQoKS0+cGFnZSgpLT5mb2N1c0NvbnRyb2xsZXIoKS0+YWR2YW5jZUZvY3Vz
KEZvY3VzRGlyZWN0aW9uUmlnaHQsIGtleWJvYXJkRXZlbnQpKQorICAgICAgICAgICAgICAgIGtl
eWJvYXJkRXZlbnQtPnNldERlZmF1bHRIYW5kbGVkKCk7CisgICAgICAgIH0KICAgICAgICAgcmV0
dXJuOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRy
b2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCmluZGV4
IGFlZjRlNTQ4YTMxZjBkMDA3ZjJiNjFjYjAwODVmOWQ2NDZhZTkxMmEuLjI0NWQ1NjVmMWYxZGI3
YzI2Mjg3MTkwY2E2YWFkNjk0NjM0ZjE5NzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRm9jdXNDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29u
dHJvbGxlci5jcHAKQEAgLTc3MCwxNSArNzcwLDE1IEBAIHZvaWQgRm9jdXNDb250cm9sbGVyOjpm
aW5kRm9jdXNDYW5kaWRhdGVJbkNvbnRhaW5lcihOb2RlKiBjb250YWluZXIsIGNvbnN0IExheW91
CiAgICAgQVNTRVJUKGNvbnRhaW5lcik7CiAgICAgTm9kZSogZm9jdXNlZE5vZGUgPSAoZm9jdXNl
ZEZyYW1lKCkgJiYgZm9jdXNlZEZyYW1lKCktPmRvY3VtZW50KCkpID8gZm9jdXNlZEZyYW1lKCkt
PmRvY3VtZW50KCktPmZvY3VzZWROb2RlKCkgOiAwOwogCi0gICAgRWxlbWVudCogZWxlbWVudCA9
IEVsZW1lbnRUcmF2ZXJzYWw6OmZpcnN0V2l0aGluKGNvbnRhaW5lcik7CisgICAgRWxlbWVudCog
ZWxlbWVudCA9IEVsZW1lbnRUcmF2ZXJzYWxXaXRoU2hhZG93OjpmaXJzdFdpdGhpbihjb250YWlu
ZXIpOwogICAgIEZvY3VzQ2FuZGlkYXRlIGN1cnJlbnQ7CiAgICAgY3VycmVudC5yZWN0ID0gc3Rh
cnRpbmdSZWN0OwogICAgIGN1cnJlbnQuZm9jdXNhYmxlTm9kZSA9IGZvY3VzZWROb2RlOwogICAg
IGN1cnJlbnQudmlzaWJsZU5vZGUgPSBmb2N1c2VkTm9kZTsKIAogICAgIGZvciAoOyBlbGVtZW50
OyBlbGVtZW50ID0gKGVsZW1lbnQtPmlzRnJhbWVPd25lckVsZW1lbnQoKSB8fCBjYW5TY3JvbGxJ
bkRpcmVjdGlvbihlbGVtZW50LCBkaXJlY3Rpb24pKQotICAgICAgICA/IEVsZW1lbnRUcmF2ZXJz
YWw6Om5leHRTa2lwcGluZ0NoaWxkcmVuKGVsZW1lbnQsIGNvbnRhaW5lcikKLSAgICAgICAgOiBF
bGVtZW50VHJhdmVyc2FsOjpuZXh0KGVsZW1lbnQsIGNvbnRhaW5lcikpIHsKKyAgICAgICAgPyBF
bGVtZW50VHJhdmVyc2FsV2l0aFNoYWRvdzo6bmV4dFNraXBwaW5nQ2hpbGRyZW4oZWxlbWVudCwg
Y29udGFpbmVyKQorICAgICAgICA6IEVsZW1lbnRUcmF2ZXJzYWxXaXRoU2hhZG93OjpuZXh0KGVs
ZW1lbnQsIGNvbnRhaW5lcikpIHsKICAgICAgICAgaWYgKGVsZW1lbnQgPT0gZm9jdXNlZE5vZGUp
CiAgICAgICAgICAgICBjb250aW51ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9TcGF0aWFsTmF2aWdhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NwYXRpYWxOYXZp
Z2F0aW9uLmNwcAppbmRleCA2MmEzOTg2NmU0YWEyZTgyNDE1MzU1MjhlMWFhOWU3MWJhYzYyMDYz
Li41YTJmN2FiYWMyYTYyYjEzZjgxNTA0NTdkNDI0YTEwNjkxMTgwNzkxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1NwYXRpYWxOYXZpZ2F0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1NwYXRpYWxOYXZpZ2F0aW9uLmNwcApAQCAtNDQyLDcgKzQ0Miw3IEBAIE5vZGUq
IHNjcm9sbGFibGVFbmNsb3NpbmdCb3hPclBhcmVudEZyYW1lRm9yTm9kZUluRGlyZWN0aW9uKEZv
Y3VzRGlyZWN0aW9uIGRpcmVjCiAgICAgICAgIGlmIChwYXJlbnQtPmlzRG9jdW1lbnROb2RlKCkp
CiAgICAgICAgICAgICBwYXJlbnQgPSBzdGF0aWNfY2FzdDxEb2N1bWVudCo+KHBhcmVudCktPmRv
Y3VtZW50KCktPmZyYW1lKCktPm93bmVyRWxlbWVudCgpOwogICAgICAgICBlbHNlCi0gICAgICAg
ICAgICBwYXJlbnQgPSBwYXJlbnQtPnBhcmVudE5vZGUoKTsKKyAgICAgICAgICAgIHBhcmVudCA9
IHBhcmVudC0+cGFyZW50T3JIb3N0Tm9kZSgpOwogICAgIH0gd2hpbGUgKHBhcmVudCAmJiAhY2Fu
U2Nyb2xsSW5EaXJlY3Rpb24ocGFyZW50LCBkaXJlY3Rpb24pICYmICFwYXJlbnQtPmlzRG9jdW1l
bnROb2RlKCkpOwogCiAgICAgcmV0dXJuIHBhcmVudDsKQEAgLTUxOCw3ICs1MTgsOSBAQCBzdGF0
aWMgTGF5b3V0UmVjdCByZWN0VG9BYnNvbHV0ZUNvb3JkaW5hdGVzKEZyYW1lKiBpbml0aWFsRnJh
bWUsIGNvbnN0IExheW91dFJlYwogCiBMYXlvdXRSZWN0IG5vZGVSZWN0SW5BYnNvbHV0ZUNvb3Jk
aW5hdGVzKE5vZGUqIG5vZGUsIGJvb2wgaWdub3JlQm9yZGVyKQogewotICAgIEFTU0VSVChub2Rl
ICYmIG5vZGUtPnJlbmRlcmVyKCkgJiYgIW5vZGUtPmRvY3VtZW50KCktPnZpZXcoKS0+bmVlZHNM
YXlvdXQoKSk7CisgICAgQVNTRVJUKG5vZGUpOworICAgIEFTU0VSVChub2RlLT5yZW5kZXJlcigp
KTsKKyAgICBBU1NFUlQoIW5vZGUtPmRvY3VtZW50KCktPnZpZXcoKS0+bmVlZHNMYXlvdXQoKSk7
CiAKICAgICBpZiAobm9kZS0+aXNEb2N1bWVudE5vZGUoKSkKICAgICAgICAgcmV0dXJuIGZyYW1l
UmVjdEluQWJzb2x1dGVDb29yZGluYXRlcyhzdGF0aWNfY2FzdDxEb2N1bWVudCo+KG5vZGUpLT5m
cmFtZSgpKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179405</attachid>
            <date>2012-12-13 20:08:34 -0800</date>
            <delta_ts>2012-12-16 20:12:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104650-20121214130553.patch</filename>
            <type>text/plain</type>
            <size>15476</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NTY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTFhNDliZTI0OGNmYWI4
YjEzNmIyMzQyZTU5ZTUzOTgxYjE5ZGFjNy4uYjhmYzk3OTY1ZDhjMjMwMTk0ZWJiMWY5ZTgzMTI3
YzFjMDA0NmFiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDEyLTEyLTEzICBLZW50
IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KKworICAgICAgICBJTlBVVF9NVUxUSVBMRV9G
SUVMRFNfVUk6IFN1cHBvcnQgZm9jdXMgbmF2aWdhdGlvbiBieSBsZWZ0L3JpZ2h0IGtleXMgaW4g
UlRMIGxvY2FsZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwNDY1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEFkZCBzaGFkb3cgZWxlbWVudHMgc3VwcG9ydCB0byBzcGFjaWFsIGZvY3VzIG5hdmlnYXRp
b24uCisgICAgICAgIFdlIGFkZCBFbGVlbW50VHJhdmVyc2FsV2l0aFNoYWRvdyBmdW5jdGlvbnMg
Zm9yIGl0LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gVXBkYXRlcyBkYXRlLW11bHRpcGxlLWZp
ZWxkcy1rZXlib2FyZC1ldmVudHMuaHRtbCBhbmQKKyAgICAgICAgZGF0ZXRpbWVsb2NhbC1tdWx0
aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZlbnRzLmh0bWwKKworICAgICAgICAqIGRvbS9Ob2RlVHJh
dmVyc2FsLmg6CisgICAgICAgIChFbGVtZW50VHJhdmVyc2FsV2l0aFNoYWRvdyk6IEFkZGVkLgor
ICAgICAgICAqIGRvbS9Ob2RlVHJhdmVyc2FsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1l
bnRUcmF2ZXJzYWxXaXRoU2hhZG93OjpmaXJzdEVsZW1lbnRJblNoYWRvdyk6CisgICAgICAgIEFk
ZGVkLiBBIGhlbHBlciBmb3Igb3RoZXIgZnVuY3Rpbm9ucy4gSXQgcmV0dXJucyB0aGUgZmlyc3Qg
ZWxlbWVudCBpbgorICAgICAgICBTaGFkb3dSb290cyBvZiB0aGUgc3BlY2lmaWVkIGhvc3QuCisg
ICAgICAgIChXZWJDb3JlOjpFbGVtZW50VHJhdmVyc2FsV2l0aFNoYWRvdzo6Zmlyc3RXaXRoaW4p
OgorICAgICAgICBBZGRlZC4gSXQncyBzaW1pbGFyIHRvIEVsZW1lbnRUcmF2ZXJzYWw6OmZpcnN0
V2l0aGluLCBidXQgdGhpcyByZXR1cm5zCisgICAgICAgIGFuIGVsZW1lbnQgaW4gc2hhZG93IHJv
b3RzIHdoZW4gdGhlIHNwZWNpZmllZCBub2RlIGhhcyBubyBlbGVtZW50CisgICAgICAgIGNoaWxk
cmVuLgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3c6Om5leHRT
aWJsaW5nRWxlbWVudCk6CisgICAgICAgIEFkZGVkLiBBIGhlbHBlciBmb3Igb3RoZXIgZnVuY3Rp
b25zLgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3c6Om5leHRB
bmNlc3RvclNpYmxpbmcpOgorICAgICAgICBBZGRlZC4gQSBoZWxwZXIgZm9yIG90aGVyIGZ1bmN0
aW9ucy4gVGhpcyBpcyBzaW1pbGFyIHRvCisgICAgICAgIE5vZGVUcmF2ZXJzYWw6Om5leHRBbmNl
c3RvclNpYmxpbmcsIGJ1dCBpdCBzdXBwb3J0cyBzaGFkb3cgbm9kZXMuCisgICAgICAgIChXZWJD
b3JlOjpFbGVtZW50VHJhdmVyc2FsV2l0aFNoYWRvdzo6bmV4dCk6IEFkZGVkLgorICAgICAgICAo
V2ViQ29yZTo6RWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3c6Om5leHRTa2lwcGluZ0NoaWxkcmVu
KTogQWRkZWQuCisKKyAgICAgICAgKiBwYWdlL0ZvY3VzQ29udHJvbGxlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpGb2N1c0NvbnRyb2xsZXI6OmZpbmRGb2N1c0NhbmRpZGF0ZUluQ29udGFpbmVy
KToKKyAgICAgICAgVXNlIEVsZW1lbnRUcmF2ZXJzYWxXaXRoU2hhZG93IGZ1bmN0aW9ucyBpbnN0
ZWFkIG9mIEVsZW1lbnRUcmF2ZXJzYWwgdG8KKyAgICAgICAgZmluZCBmb2N1c2FibGUgZWxlbWVu
dHMgaW4gc2hhZG93LgorICAgICAgICAqIHBhZ2UvU3BhdGlhbE5hdmlnYXRpb24uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6c2Nyb2xsYWJsZUVuY2xvc2luZ0JveE9yUGFyZW50RnJhbWVGb3JOb2Rl
SW5EaXJlY3Rpb24pOgorICAgICAgICBVc2UgcGFyZW50T3JIb3N0Tm9kZSBzbyB0aGF0IHdlIHN0
YXJ0IGZyb20gYSBmb2N1c2VkIG5vZGUgaW4gc2hhZG93LgorCisgICAgICAgICogaHRtbC9zaGFk
b3cvRGF0ZVRpbWVGaWVsZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGF0ZVRpbWVG
aWVsZEVsZW1lbnQ6OmRlZmF1bHRLZXlib2FyZEV2ZW50SGFuZGxlcik6CisgICAgICAgIFVzZSBG
b2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1cyhGb2N1c0RpcmVjdGlvbiosLi4uKS4KKyAgICAg
ICAgV2UgZG9uJ3QgdXNlIGl0IGluIG5vbi1SVEwgbG9jYWxlcyBiZWNhdXNlIGl0IGlzIGEgaGVh
dnkgb3BlcmF0aW9uLgorCiAyMDEyLTEyLTEyICBTaGlueWEgS2F3YW5ha2EgIDxzaGlueWFrQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBDb250YWluZXJOb2RlQWxnb3JpdGhtOjpub3RpZnlJbnNl
cnRlZEludG9Eb2N1bWVudCBpcyBub3QgdXNlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL05vZGVUcmF2ZXJzYWwuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGVUcmF2ZXJzYWwu
Y3BwCmluZGV4IDQ4MmEzYmFjMTJhY2UyN2RkMWJlODQxYzRlYzFiNzdkNmZjOGI2ZTkuLjgxNjAz
ZDgzNzNmODNhODQzMWM1YjRlMTRiMTMwMGEzNzk4YTQ0MzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Ob2RlVHJhdmVyc2FsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9k
ZVRyYXZlcnNhbC5jcHAKQEAgLTI2LDYgKzI2LDggQEAKICNpbmNsdWRlICJOb2RlVHJhdmVyc2Fs
LmgiCiAKICNpbmNsdWRlICJDb250YWluZXJOb2RlLmgiCisjaW5jbHVkZSAiRWxlbWVudFNoYWRv
dy5oIgorI2luY2x1ZGUgIlNoYWRvd1Jvb3QuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogbmFt
ZXNwYWNlIE5vZGVUcmF2ZXJzYWwgewpAQCAtMTI2LDQgKzEyOCw5MCBAQCBOb2RlKiBwcmV2aW91
c1NraXBwaW5nQ2hpbGRyZW5Qb3N0T3JkZXIoY29uc3QgTm9kZSogY3VycmVudCwgY29uc3QgTm9k
ZSogc3RheVdpdAogfQogCiB9CisKK25hbWVzcGFjZSBFbGVtZW50VHJhdmVyc2FsV2l0aFNoYWRv
dyB7CisKK3N0YXRpYyBFbGVtZW50KiBmaXJzdEVsZW1lbnRJblNoYWRvdyhjb25zdCBFbGVtZW50
KiBob3N0KQoreworICAgIEFTU0VSVChob3N0KTsKKyAgICBFbGVtZW50U2hhZG93KiBzaGFkb3cg
PSBob3N0LT5zaGFkb3coKTsKKyAgICBpZiAoIXNoYWRvdykKKyAgICAgICAgcmV0dXJuIDA7Cisg
ICAgZm9yIChTaGFkb3dSb290KiBzaGFkb3dSb290ID0gc2hhZG93LT5vbGRlc3RTaGFkb3dSb290
KCk7IHNoYWRvd1Jvb3Q7IHNoYWRvd1Jvb3QgPSBzaGFkb3dSb290LT55b3VuZ2VyU2hhZG93Um9v
dCgpKSB7CisgICAgICAgIGlmIChFbGVtZW50KiBmaXJzdCA9IEVsZW1lbnRUcmF2ZXJzYWw6OmZp
cnN0RWxlbWVudFdpdGhpblRlbXBsYXRlKHNoYWRvd1Jvb3QpKQorICAgICAgICAgICAgcmV0dXJu
IGZpcnN0OworICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworRWxlbWVudCogZmlyc3RXaXRoaW4o
Y29uc3QgTm9kZSogY3VycmVudCkKK3sKKyAgICBBU1NFUlQoY3VycmVudCk7CisgICAgaWYgKEVs
ZW1lbnQqIGZpcnN0ID0gRWxlbWVudFRyYXZlcnNhbDo6Zmlyc3RFbGVtZW50V2l0aGluVGVtcGxh
dGUoY3VycmVudCkpCisgICAgICAgIHJldHVybiBmaXJzdDsKKyAgICBpZiAoIWN1cnJlbnQtPmlz
RWxlbWVudE5vZGUoKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIGZpcnN0RWxlbWVu
dEluU2hhZG93KHRvRWxlbWVudChjdXJyZW50KSk7Cit9CisKK3N0YXRpYyBFbGVtZW50KiBuZXh0
U2libGluZ0VsZW1lbnQoY29uc3QgQ29udGFpbmVyTm9kZSogY3VycmVudCkKK3sKKyAgICBBU1NF
UlQoY3VycmVudCk7CisgICAgZm9yIChOb2RlKiBuZXh0ID0gY3VycmVudC0+bmV4dFNpYmxpbmco
KTsgbmV4dDsgbmV4dCA9IG5leHQtPm5leHRTaWJsaW5nKCkpIHsKKyAgICAgICAgaWYgKG5leHQt
PmlzRWxlbWVudE5vZGUoKSkKKyAgICAgICAgICAgIHJldHVybiB0b0VsZW1lbnQobmV4dCk7Cisg
ICAgfQorICAgIHJldHVybiAwOworfQorCitzdGF0aWMgRWxlbWVudCogbmV4dEFuY2VzdG9yU2li
bGluZyhjb25zdCBDb250YWluZXJOb2RlKiBjdXJyZW50LCBjb25zdCBOb2RlKiBzdGF5V2l0aGlu
KQoreworICAgIEFTU0VSVChjdXJyZW50KTsKKyAgICBBU1NFUlQoIW5leHRTaWJsaW5nRWxlbWVu
dChjdXJyZW50KSk7CisgICAgQVNTRVJUKGN1cnJlbnQgIT0gc3RheVdpdGhpbik7CisgICAgZm9y
IChDb250YWluZXJOb2RlKiBwYXJlbnQgPSBjdXJyZW50LT5wYXJlbnROb2RlKCk7IHBhcmVudDsg
cGFyZW50ID0gcGFyZW50LT5wYXJlbnROb2RlKCkpIHsKKyAgICAgICAgY3VycmVudCA9IHBhcmVu
dDsKKyAgICAgICAgaWYgKGN1cnJlbnQgPT0gc3RheVdpdGhpbikKKyAgICAgICAgICAgIHJldHVy
biAwOworICAgICAgICBpZiAoRWxlbWVudCogbmV4dCA9IG5leHRTaWJsaW5nRWxlbWVudChjdXJy
ZW50KSkKKyAgICAgICAgICAgIHJldHVybiBuZXh0OworICAgICAgICBpZiAoIWN1cnJlbnQtPmlz
RWxlbWVudE5vZGUoKSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICBpZiAoRWxlbWVu
dCogbmV4dEluU2hhZG93ID0gZmlyc3RFbGVtZW50SW5TaGFkb3codG9FbGVtZW50KGN1cnJlbnQp
KSkKKyAgICAgICAgICAgIHJldHVybiBuZXh0SW5TaGFkb3c7CisgICAgfQorICAgIGlmICghY3Vy
cmVudC0+aXNTaGFkb3dSb290KCkpCisgICAgICAgIHJldHVybiAwOworICAgIGZvciAoY29uc3Qg
U2hhZG93Um9vdCogc2hhZG93Um9vdCA9IHRvU2hhZG93Um9vdChjdXJyZW50KS0+eW91bmdlclNo
YWRvd1Jvb3QoKTsgc2hhZG93Um9vdDsgc2hhZG93Um9vdCA9IHNoYWRvd1Jvb3QtPnlvdW5nZXJT
aGFkb3dSb290KCkpIHsKKyAgICAgICAgaWYgKEVsZW1lbnQqIGZpcnN0ID0gZmlyc3RXaXRoaW4o
c2hhZG93Um9vdCkpCisgICAgICAgICAgICByZXR1cm4gZmlyc3Q7CisgICAgfQorICAgIEVsZW1l
bnQqIGhvc3QgPSB0b1NoYWRvd1Jvb3QoY3VycmVudCktPmhvc3QoKTsKKyAgICBpZiAoaG9zdCA9
PSBzdGF5V2l0aGluKQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1cm4gbmV4dFNraXBwaW5n
Q2hpbGRyZW4oaG9zdCwgc3RheVdpdGhpbik7Cit9CisKK0VsZW1lbnQqIG5leHQoY29uc3QgRWxl
bWVudCogY3VycmVudCwgY29uc3QgTm9kZSogc3RheVdpdGhpbikKK3sKKyAgICBBU1NFUlQoY3Vy
cmVudCk7CisgICAgaWYgKEVsZW1lbnQqIGZpcnN0ID0gZmlyc3RXaXRoaW4oY3VycmVudCkpCisg
ICAgICAgIHJldHVybiBmaXJzdDsKKyAgICBpZiAoY3VycmVudCA9PSBzdGF5V2l0aGluKQorICAg
ICAgICByZXR1cm4gMDsKKyAgICBpZiAoRWxlbWVudCogbmV4dCA9IG5leHRTaWJsaW5nRWxlbWVu
dChjdXJyZW50KSkKKyAgICAgICAgcmV0dXJuIG5leHQ7CisgICAgcmV0dXJuIG5leHRBbmNlc3Rv
clNpYmxpbmcoY3VycmVudCwgc3RheVdpdGhpbik7Cit9CisKK0VsZW1lbnQqIG5leHRTa2lwcGlu
Z0NoaWxkcmVuKGNvbnN0IEVsZW1lbnQqIGN1cnJlbnQsIGNvbnN0IE5vZGUqIHN0YXlXaXRoaW4p
Cit7CisgICAgQVNTRVJUKGN1cnJlbnQpOworICAgIGlmIChFbGVtZW50KiBuZXh0ID0gbmV4dFNp
YmxpbmdFbGVtZW50KGN1cnJlbnQpKQorICAgICAgICByZXR1cm4gbmV4dDsKKyAgICByZXR1cm4g
bmV4dEFuY2VzdG9yU2libGluZyhjdXJyZW50LCBzdGF5V2l0aGluKTsKK30KKworfQorCiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZVRyYXZlcnNhbC5oIGIvU291cmNlL1dl
YkNvcmUvZG9tL05vZGVUcmF2ZXJzYWwuaAppbmRleCA3YTNjYTBlNmYzM2UwZTFmZDUyMzdhMzE0
MzFmZDVjZTk3MjA5YzFkLi44YjY5OTQxZDNiMDE5NTNmYWE3ZGRkY2IzNzZmNWE3ZWU4NDhmN2Y5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZVRyYXZlcnNhbC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Ob2RlVHJhdmVyc2FsLmgKQEAgLTQ3LDYgKzQ3LDE3IEBAIEVsZW1l
bnQqIG5leHRTa2lwcGluZ0NoaWxkcmVuKGNvbnN0IENvbnRhaW5lck5vZGUqLCBjb25zdCBOb2Rl
KiBzdGF5V2l0aGluKTsKIAogfQogCituYW1lc3BhY2UgRWxlbWVudFRyYXZlcnNhbFdpdGhTaGFk
b3cgeworLy8gVGhlIGZvbGxvd2luZyBmdW5jdGlvbnMgdHJhdmVyc2UgZWxlbWVudHMgaW4gc2hh
ZG93IGluIGFkZGl0aW9uIHRvIG5vcm1hbAorLy8gY2hpbGQgZWxlbWVudHMuIFRoZSB0cmF2ZXJz
aW5nIG9yZGVyIGlzOiBub3JtYWwgY2hpbGRyZW4gLT4gb2xkZXN0IFNoYWRvd1Jvb3QKKy8vIC0+
IHlvdW5nZXIgU2hhZG93Um9vdHMuCisKK0VsZW1lbnQqIGZpcnN0V2l0aGluKGNvbnN0IE5vZGUq
KTsKK0VsZW1lbnQqIG5leHQoY29uc3QgRWxlbWVudCogY3VycmVudCwgY29uc3QgTm9kZSogc3Rh
eVdpdGhpbik7CitFbGVtZW50KiBuZXh0U2tpcHBpbmdDaGlsZHJlbihjb25zdCBFbGVtZW50KiBj
dXJyZW50LCBjb25zdCBOb2RlKiBzdGF5V2l0aGluKTsKKworfQorCiBuYW1lc3BhY2UgTm9kZVRy
YXZlcnNhbCB7CiAKIC8vIERvZXMgYSBwcmUtb3JkZXIgdHJhdmVyc2FsIG9mIHRoZSB0cmVlIHRv
IGZpbmQgdGhlIG5leHQgbm9kZSBhZnRlciB0aGlzIG9uZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lRmllbGRFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lRmllbGRFbGVtZW50LmNwcAppbmRleCA0NDM0Yzk3Njk0
ZGZkZDFiNDRiNDY5NWRjNGYxZjMxNzY4YjE0OGNhLi40MjAwZmM0ZmI4ZjJhOGM3MDZmNzEwMGIy
ODAwZDQxOTMyZmVjYTE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9E
YXRlVGltZUZpZWxkRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
RGF0ZVRpbWVGaWVsZEVsZW1lbnQuY3BwCkBAIC0yOCw5ICsyOCwxMSBAQAogI2luY2x1ZGUgIkRh
dGVUaW1lRmllbGRFbGVtZW50LmgiCiAKICNpbmNsdWRlICJEYXRlQ29tcG9uZW50cy5oIgorI2lu
Y2x1ZGUgIkZvY3VzQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2luY2x1
ZGUgIktleWJvYXJkRXZlbnQuaCIKICNpbmNsdWRlICJMb2NhbGl6ZWRTdHJpbmdzLmgiCisjaW5j
bHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBsYXRmb3JtTG9jYWxlLmgiCiAjaW5jbHVkZSAiUmVu
ZGVyT2JqZWN0LmgiCiAjaW5jbHVkZSAiVGV4dC5oIgpAQCAtOTEsMjAgKzkzLDI2IEBAIHZvaWQg
RGF0ZVRpbWVGaWVsZEVsZW1lbnQ6OmRlZmF1bHRLZXlib2FyZEV2ZW50SGFuZGxlcihLZXlib2Fy
ZEV2ZW50KiBrZXlib2FyZEV2CiAgICAgaWYgKGtleUlkZW50aWZpZXIgPT0gIkxlZnQiKSB7CiAg
ICAgICAgIGlmICghbV9maWVsZE93bmVyKQogICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAv
LyBGSVhNRTogV2UnZCBsaWtlIHRvIHVzZSBGb2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1cyhG
b2N1c0RpcmVjdGlvbkxlZnQsIC4uLikKLSAgICAgICAgLy8gYnV0IGl0IGRvZXNuJ3Qgd29yayBm
b3Igc2hhZG93IG5vZGVzLiB3ZWJraXQub3JnL2IvMTA0NjUwCi0gICAgICAgIGlmICghbG9jYWxl
Rm9yT3duZXIoKS5pc1JUTCgpICYmIG1fZmllbGRPd25lci0+Zm9jdXNPblByZXZpb3VzRmllbGQo
KnRoaXMpKQotICAgICAgICAgICAga2V5Ym9hcmRFdmVudC0+c2V0RGVmYXVsdEhhbmRsZWQoKTsK
KyAgICAgICAgaWYgKCFsb2NhbGVGb3JPd25lcigpLmlzUlRMKCkpIHsKKyAgICAgICAgICAgIGlm
IChtX2ZpZWxkT3duZXItPmZvY3VzT25QcmV2aW91c0ZpZWxkKCp0aGlzKSkKKyAgICAgICAgICAg
ICAgICBrZXlib2FyZEV2ZW50LT5zZXREZWZhdWx0SGFuZGxlZCgpOworICAgICAgICB9IGVsc2Ug
eworICAgICAgICAgICAgaWYgKGRvY3VtZW50KCktPnBhZ2UoKSAmJiBkb2N1bWVudCgpLT5wYWdl
KCktPmZvY3VzQ29udHJvbGxlcigpLT5hZHZhbmNlRm9jdXMoRm9jdXNEaXJlY3Rpb25MZWZ0LCBr
ZXlib2FyZEV2ZW50KSkKKyAgICAgICAgICAgICAgICBrZXlib2FyZEV2ZW50LT5zZXREZWZhdWx0
SGFuZGxlZCgpOworICAgICAgICB9CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBpZiAo
a2V5SWRlbnRpZmllciA9PSAiUmlnaHQiKSB7CiAgICAgICAgIGlmICghbV9maWVsZE93bmVyKQog
ICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAvLyBGSVhNRTogV2UnZCBsaWtlIHRvIHVzZSBG
b2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1cyhGb2N1c0RpcmVjdGlvblJpZ2h0LCAuLi4pCi0g
ICAgICAgIC8vIGJ1dCBpdCBkb2Vzbid0IHdvcmsgZm9yIHNoYWRvdyBub2Rlcy4gd2Via2l0Lm9y
Zy9iLzEwNDY1MAotICAgICAgICBpZiAoIWxvY2FsZUZvck93bmVyKCkuaXNSVEwoKSAmJiBtX2Zp
ZWxkT3duZXItPmZvY3VzT25OZXh0RmllbGQoKnRoaXMpKQotICAgICAgICAgICAga2V5Ym9hcmRF
dmVudC0+c2V0RGVmYXVsdEhhbmRsZWQoKTsKKyAgICAgICAgaWYgKCFsb2NhbGVGb3JPd25lcigp
LmlzUlRMKCkpIHsKKyAgICAgICAgICAgIGlmIChtX2ZpZWxkT3duZXItPmZvY3VzT25OZXh0Rmll
bGQoKnRoaXMpKQorICAgICAgICAgICAgICAgIGtleWJvYXJkRXZlbnQtPnNldERlZmF1bHRIYW5k
bGVkKCk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBpZiAoZG9jdW1lbnQoKS0+cGFn
ZSgpICYmIGRvY3VtZW50KCktPnBhZ2UoKS0+Zm9jdXNDb250cm9sbGVyKCktPmFkdmFuY2VGb2N1
cyhGb2N1c0RpcmVjdGlvblJpZ2h0LCBrZXlib2FyZEV2ZW50KSkKKyAgICAgICAgICAgICAgICBr
ZXlib2FyZEV2ZW50LT5zZXREZWZhdWx0SGFuZGxlZCgpOworICAgICAgICB9CiAgICAgICAgIHJl
dHVybjsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250
cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcAppbmRl
eCBhZWY0ZTU0OGEzMWYwZDAwN2YyYjYxY2IwMDg1ZjlkNjQ2YWU5MTJhLi4yNDVkNTY1ZjFmMWRi
N2MyNjI4NzE5MGNhNmFhZDY5NDYzNGYxOTc2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0Nv
bnRyb2xsZXIuY3BwCkBAIC03NzAsMTUgKzc3MCwxNSBAQCB2b2lkIEZvY3VzQ29udHJvbGxlcjo6
ZmluZEZvY3VzQ2FuZGlkYXRlSW5Db250YWluZXIoTm9kZSogY29udGFpbmVyLCBjb25zdCBMYXlv
dQogICAgIEFTU0VSVChjb250YWluZXIpOwogICAgIE5vZGUqIGZvY3VzZWROb2RlID0gKGZvY3Vz
ZWRGcmFtZSgpICYmIGZvY3VzZWRGcmFtZSgpLT5kb2N1bWVudCgpKSA/IGZvY3VzZWRGcmFtZSgp
LT5kb2N1bWVudCgpLT5mb2N1c2VkTm9kZSgpIDogMDsKIAotICAgIEVsZW1lbnQqIGVsZW1lbnQg
PSBFbGVtZW50VHJhdmVyc2FsOjpmaXJzdFdpdGhpbihjb250YWluZXIpOworICAgIEVsZW1lbnQq
IGVsZW1lbnQgPSBFbGVtZW50VHJhdmVyc2FsV2l0aFNoYWRvdzo6Zmlyc3RXaXRoaW4oY29udGFp
bmVyKTsKICAgICBGb2N1c0NhbmRpZGF0ZSBjdXJyZW50OwogICAgIGN1cnJlbnQucmVjdCA9IHN0
YXJ0aW5nUmVjdDsKICAgICBjdXJyZW50LmZvY3VzYWJsZU5vZGUgPSBmb2N1c2VkTm9kZTsKICAg
ICBjdXJyZW50LnZpc2libGVOb2RlID0gZm9jdXNlZE5vZGU7CiAKICAgICBmb3IgKDsgZWxlbWVu
dDsgZWxlbWVudCA9IChlbGVtZW50LT5pc0ZyYW1lT3duZXJFbGVtZW50KCkgfHwgY2FuU2Nyb2xs
SW5EaXJlY3Rpb24oZWxlbWVudCwgZGlyZWN0aW9uKSkKLSAgICAgICAgPyBFbGVtZW50VHJhdmVy
c2FsOjpuZXh0U2tpcHBpbmdDaGlsZHJlbihlbGVtZW50LCBjb250YWluZXIpCi0gICAgICAgIDog
RWxlbWVudFRyYXZlcnNhbDo6bmV4dChlbGVtZW50LCBjb250YWluZXIpKSB7CisgICAgICAgID8g
RWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3c6Om5leHRTa2lwcGluZ0NoaWxkcmVuKGVsZW1lbnQs
IGNvbnRhaW5lcikKKyAgICAgICAgOiBFbGVtZW50VHJhdmVyc2FsV2l0aFNoYWRvdzo6bmV4dChl
bGVtZW50LCBjb250YWluZXIpKSB7CiAgICAgICAgIGlmIChlbGVtZW50ID09IGZvY3VzZWROb2Rl
KQogICAgICAgICAgICAgY29udGludWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvU3BhdGlhbE5hdmlnYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TcGF0aWFsTmF2
aWdhdGlvbi5jcHAKaW5kZXggNjJhMzk4NjZlNGFhMmU4MjQxNTM1NTI4ZTFhYTllNzFiYWM2MjA2
My4uMjUyNGIzOTE5NjlmYjcyMjg0NjA1N2Y2MjQwNjZmNzJkY2QxMjJiYSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGFnZS9TcGF0aWFsTmF2aWdhdGlvbi5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcGFnZS9TcGF0aWFsTmF2aWdhdGlvbi5jcHAKQEAgLTQ0Miw3ICs0NDIsNyBAQCBOb2Rl
KiBzY3JvbGxhYmxlRW5jbG9zaW5nQm94T3JQYXJlbnRGcmFtZUZvck5vZGVJbkRpcmVjdGlvbihG
b2N1c0RpcmVjdGlvbiBkaXJlYwogICAgICAgICBpZiAocGFyZW50LT5pc0RvY3VtZW50Tm9kZSgp
KQogICAgICAgICAgICAgcGFyZW50ID0gc3RhdGljX2Nhc3Q8RG9jdW1lbnQqPihwYXJlbnQpLT5k
b2N1bWVudCgpLT5mcmFtZSgpLT5vd25lckVsZW1lbnQoKTsKICAgICAgICAgZWxzZQotICAgICAg
ICAgICAgcGFyZW50ID0gcGFyZW50LT5wYXJlbnROb2RlKCk7CisgICAgICAgICAgICBwYXJlbnQg
PSBwYXJlbnQtPnBhcmVudE9ySG9zdE5vZGUoKTsKICAgICB9IHdoaWxlIChwYXJlbnQgJiYgIWNh
blNjcm9sbEluRGlyZWN0aW9uKHBhcmVudCwgZGlyZWN0aW9uKSAmJiAhcGFyZW50LT5pc0RvY3Vt
ZW50Tm9kZSgpKTsKIAogICAgIHJldHVybiBwYXJlbnQ7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMGM3M2VmOWU3NmJkM2E5
YWQxNmEzNWUxZjk4MTc0NWY5MzMyNDc2NC4uZmFkYWI2NGY2ZTg5YjE1OTM0MjRiMTY1NTZlY2M3
ZjNhNDMyMjIzMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEyLTEyLTEzICBLZW50IFRhbXVy
YSAgPHRrZW50QGNocm9taXVtLm9yZz4KKworICAgICAgICBJTlBVVF9NVUxUSVBMRV9GSUVMRFNf
VUk6IFN1cHBvcnQgZm9jdXMgbmF2aWdhdGlvbiBieSBsZWZ0L3JpZ2h0IGtleXMgaW4gUlRMIGxv
Y2FsZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEw
NDY1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVw
ZGF0ZXMgZXhpc3RpbmcgdGVzdHMgZm9yIG5ldyBiZWhhdmlvci4KKworICAgICAgICAqIGZhc3Qv
Zm9ybXMvZGF0ZS1tdWx0aXBsZS1maWVsZHMvZGF0ZS1tdWx0aXBsZS1maWVsZHMta2V5Ym9hcmQt
ZXZlbnRzLmh0bWw6CisgICAgICAgICogZmFzdC9mb3Jtcy9kYXRldGltZWxvY2FsLW11bHRpcGxl
LWZpZWxkcy9kYXRldGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy1rZXlib2FyZC1ldmVudHMtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZm9ybXMvZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1m
aWVsZHMvZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZlbnRzLmh0bWw6
CisKIDIwMTItMTItMTIgIEt1bmloaWtvIFNha2Ftb3RvICA8a3Nha2Ftb3RvQGNocm9taXVtLm9y
Zz4KIAogICAgICAgICBNaWxsaXNlY29uZHMgZmllbGQgb2YgZGF0ZS90aW1lIGlucHV0IFVJIHNo
b3VsZCByZXNwZWN0IHN0ZXAgYXR0cmlidXRlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2Zvcm1zL2RhdGUtbXVsdGlwbGUtZmllbGRzL2RhdGUtbXVsdGlwbGUtZmllbGRzLWtleWJvYXJk
LWV2ZW50cy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9kYXRlLW11bHRpcGxlLWZpZWxk
cy9kYXRlLW11bHRpcGxlLWZpZWxkcy1rZXlib2FyZC1ldmVudHMuaHRtbAppbmRleCBlOTRkNWVi
MjBmMWExNmZlN2RlNGVjYWY5N2YyNWI5NGMzNzkwZGZjLi5hYTU1ODNjNzA4ODBiMzliN2QzNTBi
YmFhNjBkNzYxZGJhY2ExYTdhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2Rh
dGUtbXVsdGlwbGUtZmllbGRzL2RhdGUtbXVsdGlwbGUtZmllbGRzLWtleWJvYXJkLWV2ZW50cy5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZGF0ZS1tdWx0aXBsZS1maWVsZHMvZGF0
ZS1tdWx0aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZlbnRzLmh0bWwKQEAgLTE5NSw3ICsxOTUsNiBA
QCBkZWJ1ZygnVGhlIHRlc3RzIGluIHRoaXMgYmxvY2sgZmFpbCBvbiBwbGF0Zm9ybXMgd2l0aG91
dCB0aGUgbGFuZy1hdHRyaWJ1dGUtYXdhcgogLy8gQm90aCBvZiB0aGUgbG9naWNhbCBvcmRlciBh
bmQgdmlzdWFsIG9yZGVyIGFyZTogZGQvTU0veXl5eQogLy8gSW5pdGlhbCBzdGF0ZTogICAgICAg
ICAgICBbMjhdLzA5LzIwMTIKIGtleURvd24oJ3VwQXJyb3cnKTsgLy8gICAgLT4gWzI5XS8wOS8y
MDEyCi1rZXlEb3duKCdyaWdodEFycm93Jyk7IC8vIC0+IFswMV0vMDkvMjAxMgoga2V5RG93bign
MScpOyAvLyAgICAgICAgICAtPiBbMDFdLzA5LzIwMTIKIHNob3VsZEJlRXF1YWxUb1N0cmluZygn
aW5wdXQudmFsdWUnLCAnMjAxMi0wOS0wMScpOwoga2V5RG93bignXHQnKTsgLy8gICAgICAgICAt
PiAwMS9bMDldLzIwMTIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZGF0ZXRp
bWVsb2NhbC1tdWx0aXBsZS1maWVsZHMvZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1maWVsZHMta2V5
Ym9hcmQtZXZlbnRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZGF0ZXRp
bWVsb2NhbC1tdWx0aXBsZS1maWVsZHMvZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1maWVsZHMta2V5
Ym9hcmQtZXZlbnRzLWV4cGVjdGVkLnR4dAppbmRleCAyZWRiOTQwOTFjMTlhOGU2ZmU1NTk4NDlh
NjYwZjA0ZTNmZjJiM2MzLi5iNjc4YWMyYzYyN2FjMTE2MGU4Mjk0NzNiN2MyYTU3ZWRkZjc1M2Nh
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2RhdGV0aW1lbG9jYWwtbXVsdGlw
bGUtZmllbGRzL2RhdGV0aW1lbG9jYWwtbXVsdGlwbGUtZmllbGRzLWtleWJvYXJkLWV2ZW50cy1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9kYXRldGltZWxvY2FsLW11
bHRpcGxlLWZpZWxkcy9kYXRldGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy1rZXlib2FyZC1ldmVu
dHMtZXhwZWN0ZWQudHh0CkBAIC01Myw2ICs1Myw3IEBAIFRoZSB0ZXN0cyBpbiB0aGlzIGJsb2Nr
IGZhaWwgb24gcGxhdGZvcm1zIHdpdGhvdXQgdGhlIGxhbmctYXR0cmlidXRlLWF3YXJlLWZvcm0t
CiBQQVNTIGlucHV0LnZhbHVlIGlzICIyMDEyLTA5LTAxVDIzOjAwIgogUEFTUyBpbnB1dC52YWx1
ZSBpcyAiMjAxMi0wMi0wMVQwMTowMCIKIFBBU1MgaW5wdXQudmFsdWUgaXMgIjAwMDgtMDMtMDFU
MDE6MDAiCitQQVNTIGlucHV0LnZhbHVlIGlzICIwMDA5LTA0LTAyVDAwOjU5IgogPT0gRGlzYWJs
ZWQvcmVhZG9ubHkgPT0KIFBBU1MgaW5wdXQudmFsdWUgaXMgIjIwMTItMTAtMDhUMDA6MDAiCiBQ
QVNTIGlucHV0LnZhbHVlIGlzICIyMDEyLTExLTA4VDAwOjAwIgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9mb3Jtcy9kYXRldGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy9kYXRldGltZWxv
Y2FsLW11bHRpcGxlLWZpZWxkcy1rZXlib2FyZC1ldmVudHMuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvZm9ybXMvZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1maWVsZHMvZGF0ZXRpbWVsb2NhbC1tdWx0
aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZlbnRzLmh0bWwKaW5kZXggMmYxNGNlZGJlODAwMTg4MDZh
YmM1MTkxNmIwNThkMDRiMWE0YjY0Ni4uNjIxOTMzMWQ3MDBkZWUzZGU1OWFlNTM5NGM0NWE3MzBm
M2ZhMTU5NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9kYXRldGltZWxvY2Fs
LW11bHRpcGxlLWZpZWxkcy9kYXRldGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy1rZXlib2FyZC1l
dmVudHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2RhdGV0aW1lbG9jYWwtbXVs
dGlwbGUtZmllbGRzL2RhdGV0aW1lbG9jYWwtbXVsdGlwbGUtZmllbGRzLWtleWJvYXJkLWV2ZW50
cy5odG1sCkBAIC0yMTYsNiArMjE2LDIwIEBAIGtleURvd24oJzgnKTsgLy8gICAgICAgICAgICAg
ICAgLT4gMDE6MDAgMDEvMDkvWzAwMDhdCiBrZXlEb3duKCdcdCcsIFsnc2hpZnRLZXknXSk7IC8v
IC0+IDAxOjAwIDAxL1swOV0vMDAwOAoga2V5RG93bignMycpOyAvLyAgICAgICAgICAgICAgICAt
PiAwMTowMCAwMS8wMy9bMDAwOF0KIHNob3VsZEJlRXF1YWxUb1N0cmluZygnaW5wdXQudmFsdWUn
LCAnMDAwOC0wMy0wMVQwMTowMCcpOwora2V5RG93bignbGVmdEFycm93Jyk7IC8vICAgICAgICAt
PiAwMTowMCAwMS9bMDNdLzAwMDgKK2tleURvd24oJ2xlZnRBcnJvdycpOyAvLyAgICAgICAgLT4g
MDE6MDAgWzAxXS8wMy8wMDA4CitrZXlEb3duKCdsZWZ0QXJyb3cnKTsgLy8gICAgICAgIC0+IDAx
OlswMF0gMDEvMDMvMDAwOAora2V5RG93bignbGVmdEFycm93Jyk7IC8vICAgICAgICAtPiBbMDFd
OjAwIDAxLzAzLzAwMDgKK2tleURvd24oJ2Rvd25BcnJvdycpOyAvLyAgICAgICAgLT4gWzAwXTow
MCAwMS8wMy8wMDA4CitrZXlEb3duKCdyaWdodEFycm93Jyk7IC8vICAgICAgIC0+IDAwOlswMF0g
MDEvMDMvMDAwOAora2V5RG93bignZG93bkFycm93Jyk7IC8vICAgICAgICAtPiAwMDpbNTldIDAx
LzAzLzAwMDgKK2tleURvd24oJ3JpZ2h0QXJyb3cnKTsgLy8gICAgICAgLT4gMDA6NTkgWzAxXS8w
My8wMDA4CitrZXlEb3duKCd1cEFycm93Jyk7IC8vICAgICAgICAgIC0+IDAwOjU5IFswMl0vMDMv
MDAwOAora2V5RG93bigncmlnaHRBcnJvdycpOyAvLyAgICAgICAtPiAwMDo1OSAwMi9bMDNdLzAw
MDgKK2tleURvd24oJ3VwQXJyb3cnKTsgLy8gICAgICAgICAgLT4gMDA6NTkgMDIvWzA0XS8wMDA4
CitrZXlEb3duKCdyaWdodEFycm93Jyk7IC8vICAgICAgIC0+IDAwOjU5IDAyLzA0L1swMDA4XQor
a2V5RG93bigndXBBcnJvdycpOyAvLyAgICAgICAgICAtPiAwMDo1OSAwMi8wNC9bMDAwOV0KK3No
b3VsZEJlRXF1YWxUb1N0cmluZygnaW5wdXQudmFsdWUnLCAnMDAwOS0wNC0wMlQwMDo1OScpOwog
aW5wdXQucmVtb3ZlQXR0cmlidXRlKCdsYW5nJyk7CiAKIGJlZ2luVGVzdCgnRGlzYWJsZWQvcmVh
ZG9ubHknLCAnMjAxMi0xMC0wOFQwMDowMCcpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179684</attachid>
            <date>2012-12-16 20:12:12 -0800</date>
            <delta_ts>2013-01-18 00:45:34 -0800</delta_ts>
            <desc>Patch 2</desc>
            <filename>bug-104650-20121217130930.patch</filename>
            <type>text/plain</type>
            <size>15691</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3ODY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2ExMDMwNjk1YWRmMDkw
ZTc0Y2Q4YmZjODk5MjViOTFhMjUzOTA5OS4uNmQzM2QwMmZhM2I0YTcwNWE5MmM1NTA1OWJkODJh
NzAwMjEwNTI5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDEyLTEyLTEzICBLZW50
IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KKworICAgICAgICBJTlBVVF9NVUxUSVBMRV9G
SUVMRFNfVUk6IFN1cHBvcnQgZm9jdXMgbmF2aWdhdGlvbiBieSBsZWZ0L3JpZ2h0IGtleXMgaW4g
UlRMIGxvY2FsZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwNDY1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEFkZCBzaGFkb3cgZWxlbWVudHMgc3VwcG9ydCB0byBzcGFjaWFsIGZvY3VzIG5hdmlnYXRp
b24uCisgICAgICAgIFdlIGFkZCBFbGVlbW50VHJhdmVyc2FsV2l0aFNoYWRvdyBmdW5jdGlvbnMg
Zm9yIGl0LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gVXBkYXRlcyBkYXRlLW11bHRpcGxlLWZp
ZWxkcy1rZXlib2FyZC1ldmVudHMuaHRtbCBhbmQKKyAgICAgICAgZGF0ZXRpbWVsb2NhbC1tdWx0
aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZlbnRzLmh0bWwKKworICAgICAgICAqIGRvbS9Ob2RlVHJh
dmVyc2FsLmg6CisgICAgICAgIChFbGVtZW50VHJhdmVyc2FsV2l0aFNoYWRvdyk6IEFkZGVkLgor
ICAgICAgICAqIGRvbS9Ob2RlVHJhdmVyc2FsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVsZW1l
bnRUcmF2ZXJzYWxXaXRoU2hhZG93OjpmaXJzdEVsZW1lbnRJblNoYWRvdyk6CisgICAgICAgIEFk
ZGVkLiBBIGhlbHBlciBmb3Igb3RoZXIgZnVuY3Rpbm9ucy4gSXQgcmV0dXJucyB0aGUgZmlyc3Qg
ZWxlbWVudCBpbgorICAgICAgICBTaGFkb3dSb290cyBvZiB0aGUgc3BlY2lmaWVkIGhvc3QuCisg
ICAgICAgIChXZWJDb3JlOjpFbGVtZW50VHJhdmVyc2FsV2l0aFNoYWRvdzo6Zmlyc3RXaXRoaW4p
OgorICAgICAgICBBZGRlZC4gSXQncyBzaW1pbGFyIHRvIEVsZW1lbnRUcmF2ZXJzYWw6OmZpcnN0
V2l0aGluLCBidXQgdGhpcyByZXR1cm5zCisgICAgICAgIGFuIGVsZW1lbnQgaW4gc2hhZG93IHJv
b3RzIHdoZW4gdGhlIHNwZWNpZmllZCBub2RlIGhhcyBubyBlbGVtZW50CisgICAgICAgIGNoaWxk
cmVuLgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3c6Om5leHRT
aWJsaW5nRWxlbWVudCk6CisgICAgICAgIEFkZGVkLiBBIGhlbHBlciBmb3Igb3RoZXIgZnVuY3Rp
b25zLgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3c6Om5leHRB
bmNlc3RvclNpYmxpbmcpOgorICAgICAgICBBZGRlZC4gQSBoZWxwZXIgZm9yIG90aGVyIGZ1bmN0
aW9ucy4gVGhpcyBpcyBzaW1pbGFyIHRvCisgICAgICAgIE5vZGVUcmF2ZXJzYWw6Om5leHRBbmNl
c3RvclNpYmxpbmcsIGJ1dCBpdCBzdXBwb3J0cyBzaGFkb3cgbm9kZXMuCisgICAgICAgIChXZWJD
b3JlOjpFbGVtZW50VHJhdmVyc2FsV2l0aFNoYWRvdzo6bmV4dCk6IEFkZGVkLgorICAgICAgICAo
V2ViQ29yZTo6RWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3c6Om5leHRTa2lwcGluZ0NoaWxkcmVu
KTogQWRkZWQuCisKKyAgICAgICAgKiBwYWdlL0ZvY3VzQ29udHJvbGxlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpGb2N1c0NvbnRyb2xsZXI6OmZpbmRGb2N1c0NhbmRpZGF0ZUluQ29udGFpbmVy
KToKKyAgICAgICAgVXNlIEVsZW1lbnRUcmF2ZXJzYWxXaXRoU2hhZG93IGZ1bmN0aW9ucyBpbnN0
ZWFkIG9mIEVsZW1lbnRUcmF2ZXJzYWwgdG8KKyAgICAgICAgZmluZCBmb2N1c2FibGUgZWxlbWVu
dHMgaW4gc2hhZG93LiBBbHNvLCBkb24ndCBjaGVjayBzaGFkb3cgbm9kZXMgb2YKKyAgICAgICAg
ZWxlbWVudHMgd2l0aCBoYXNDdXN0b21Gb2N1c0xvZ2ljLgorICAgICAgICAqIHBhZ2UvU3BhdGlh
bE5hdmlnYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6c2Nyb2xsYWJsZUVuY2xvc2luZ0Jv
eE9yUGFyZW50RnJhbWVGb3JOb2RlSW5EaXJlY3Rpb24pOgorICAgICAgICBVc2UgcGFyZW50T3JI
b3N0Tm9kZSBzbyB0aGF0IHdlIHN0YXJ0IGZyb20gYSBmb2N1c2VkIG5vZGUgaW4gc2hhZG93Lgor
CisgICAgICAgICogaHRtbC9zaGFkb3cvRGF0ZVRpbWVGaWVsZEVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RGF0ZVRpbWVGaWVsZEVsZW1lbnQ6OmRlZmF1bHRLZXlib2FyZEV2ZW50SGFu
ZGxlcik6CisgICAgICAgIFVzZSBGb2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1cyhGb2N1c0Rp
cmVjdGlvbiosLi4uKS4KKyAgICAgICAgV2UgZG9uJ3QgdXNlIGl0IGluIG5vbi1SVEwgbG9jYWxl
cyBiZWNhdXNlIGl0IGlzIGEgaGVhdnkgb3BlcmF0aW9uLgorCiAyMDEyLTEyLTE2ICBMZXZpIFdl
aW50cmF1YiAgPGxldml3QGNocm9taXVtLm9yZz4KIAogICAgICAgICBQdXNoIHBpeGVsIHNuYXBw
aW5nIGxvZ2ljIGludG8gVHJhbnNmb3JtU3RhdGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Ob2RlVHJhdmVyc2FsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlVHJhdmVyc2Fs
LmNwcAppbmRleCA0ODJhM2JhYzEyYWNlMjdkZDFiZTg0MWM0ZWMxYjc3ZDZmYzhiNmU5Li44MTYw
M2Q4MzczZjgzYTg0MzFjNWI0ZTE0YjEzMDBhMzc5OGE0NDMxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vTm9kZVRyYXZlcnNhbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05v
ZGVUcmF2ZXJzYWwuY3BwCkBAIC0yNiw2ICsyNiw4IEBACiAjaW5jbHVkZSAiTm9kZVRyYXZlcnNh
bC5oIgogCiAjaW5jbHVkZSAiQ29udGFpbmVyTm9kZS5oIgorI2luY2x1ZGUgIkVsZW1lbnRTaGFk
b3cuaCIKKyNpbmNsdWRlICJTaGFkb3dSb290LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIG5h
bWVzcGFjZSBOb2RlVHJhdmVyc2FsIHsKQEAgLTEyNiw0ICsxMjgsOTAgQEAgTm9kZSogcHJldmlv
dXNTa2lwcGluZ0NoaWxkcmVuUG9zdE9yZGVyKGNvbnN0IE5vZGUqIGN1cnJlbnQsIGNvbnN0IE5v
ZGUqIHN0YXlXaXQKIH0KIAogfQorCituYW1lc3BhY2UgRWxlbWVudFRyYXZlcnNhbFdpdGhTaGFk
b3cgeworCitzdGF0aWMgRWxlbWVudCogZmlyc3RFbGVtZW50SW5TaGFkb3coY29uc3QgRWxlbWVu
dCogaG9zdCkKK3sKKyAgICBBU1NFUlQoaG9zdCk7CisgICAgRWxlbWVudFNoYWRvdyogc2hhZG93
ID0gaG9zdC0+c2hhZG93KCk7CisgICAgaWYgKCFzaGFkb3cpCisgICAgICAgIHJldHVybiAwOwor
ICAgIGZvciAoU2hhZG93Um9vdCogc2hhZG93Um9vdCA9IHNoYWRvdy0+b2xkZXN0U2hhZG93Um9v
dCgpOyBzaGFkb3dSb290OyBzaGFkb3dSb290ID0gc2hhZG93Um9vdC0+eW91bmdlclNoYWRvd1Jv
b3QoKSkgeworICAgICAgICBpZiAoRWxlbWVudCogZmlyc3QgPSBFbGVtZW50VHJhdmVyc2FsOjpm
aXJzdEVsZW1lbnRXaXRoaW5UZW1wbGF0ZShzaGFkb3dSb290KSkKKyAgICAgICAgICAgIHJldHVy
biBmaXJzdDsKKyAgICB9CisgICAgcmV0dXJuIDA7Cit9CisKK0VsZW1lbnQqIGZpcnN0V2l0aGlu
KGNvbnN0IE5vZGUqIGN1cnJlbnQpCit7CisgICAgQVNTRVJUKGN1cnJlbnQpOworICAgIGlmIChF
bGVtZW50KiBmaXJzdCA9IEVsZW1lbnRUcmF2ZXJzYWw6OmZpcnN0RWxlbWVudFdpdGhpblRlbXBs
YXRlKGN1cnJlbnQpKQorICAgICAgICByZXR1cm4gZmlyc3Q7CisgICAgaWYgKCFjdXJyZW50LT5p
c0VsZW1lbnROb2RlKCkpCisgICAgICAgIHJldHVybiAwOworICAgIHJldHVybiBmaXJzdEVsZW1l
bnRJblNoYWRvdyh0b0VsZW1lbnQoY3VycmVudCkpOworfQorCitzdGF0aWMgRWxlbWVudCogbmV4
dFNpYmxpbmdFbGVtZW50KGNvbnN0IENvbnRhaW5lck5vZGUqIGN1cnJlbnQpCit7CisgICAgQVNT
RVJUKGN1cnJlbnQpOworICAgIGZvciAoTm9kZSogbmV4dCA9IGN1cnJlbnQtPm5leHRTaWJsaW5n
KCk7IG5leHQ7IG5leHQgPSBuZXh0LT5uZXh0U2libGluZygpKSB7CisgICAgICAgIGlmIChuZXh0
LT5pc0VsZW1lbnROb2RlKCkpCisgICAgICAgICAgICByZXR1cm4gdG9FbGVtZW50KG5leHQpOwor
ICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIEVsZW1lbnQqIG5leHRBbmNlc3RvclNp
YmxpbmcoY29uc3QgQ29udGFpbmVyTm9kZSogY3VycmVudCwgY29uc3QgTm9kZSogc3RheVdpdGhp
bikKK3sKKyAgICBBU1NFUlQoY3VycmVudCk7CisgICAgQVNTRVJUKCFuZXh0U2libGluZ0VsZW1l
bnQoY3VycmVudCkpOworICAgIEFTU0VSVChjdXJyZW50ICE9IHN0YXlXaXRoaW4pOworICAgIGZv
ciAoQ29udGFpbmVyTm9kZSogcGFyZW50ID0gY3VycmVudC0+cGFyZW50Tm9kZSgpOyBwYXJlbnQ7
IHBhcmVudCA9IHBhcmVudC0+cGFyZW50Tm9kZSgpKSB7CisgICAgICAgIGN1cnJlbnQgPSBwYXJl
bnQ7CisgICAgICAgIGlmIChjdXJyZW50ID09IHN0YXlXaXRoaW4pCisgICAgICAgICAgICByZXR1
cm4gMDsKKyAgICAgICAgaWYgKEVsZW1lbnQqIG5leHQgPSBuZXh0U2libGluZ0VsZW1lbnQoY3Vy
cmVudCkpCisgICAgICAgICAgICByZXR1cm4gbmV4dDsKKyAgICAgICAgaWYgKCFjdXJyZW50LT5p
c0VsZW1lbnROb2RlKCkpCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgaWYgKEVsZW1l
bnQqIG5leHRJblNoYWRvdyA9IGZpcnN0RWxlbWVudEluU2hhZG93KHRvRWxlbWVudChjdXJyZW50
KSkpCisgICAgICAgICAgICByZXR1cm4gbmV4dEluU2hhZG93OworICAgIH0KKyAgICBpZiAoIWN1
cnJlbnQtPmlzU2hhZG93Um9vdCgpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBmb3IgKGNvbnN0
IFNoYWRvd1Jvb3QqIHNoYWRvd1Jvb3QgPSB0b1NoYWRvd1Jvb3QoY3VycmVudCktPnlvdW5nZXJT
aGFkb3dSb290KCk7IHNoYWRvd1Jvb3Q7IHNoYWRvd1Jvb3QgPSBzaGFkb3dSb290LT55b3VuZ2Vy
U2hhZG93Um9vdCgpKSB7CisgICAgICAgIGlmIChFbGVtZW50KiBmaXJzdCA9IGZpcnN0V2l0aGlu
KHNoYWRvd1Jvb3QpKQorICAgICAgICAgICAgcmV0dXJuIGZpcnN0OworICAgIH0KKyAgICBFbGVt
ZW50KiBob3N0ID0gdG9TaGFkb3dSb290KGN1cnJlbnQpLT5ob3N0KCk7CisgICAgaWYgKGhvc3Qg
PT0gc3RheVdpdGhpbikKKyAgICAgICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIG5leHRTa2lwcGlu
Z0NoaWxkcmVuKGhvc3QsIHN0YXlXaXRoaW4pOworfQorCitFbGVtZW50KiBuZXh0KGNvbnN0IEVs
ZW1lbnQqIGN1cnJlbnQsIGNvbnN0IE5vZGUqIHN0YXlXaXRoaW4pCit7CisgICAgQVNTRVJUKGN1
cnJlbnQpOworICAgIGlmIChFbGVtZW50KiBmaXJzdCA9IGZpcnN0V2l0aGluKGN1cnJlbnQpKQor
ICAgICAgICByZXR1cm4gZmlyc3Q7CisgICAgaWYgKGN1cnJlbnQgPT0gc3RheVdpdGhpbikKKyAg
ICAgICAgcmV0dXJuIDA7CisgICAgaWYgKEVsZW1lbnQqIG5leHQgPSBuZXh0U2libGluZ0VsZW1l
bnQoY3VycmVudCkpCisgICAgICAgIHJldHVybiBuZXh0OworICAgIHJldHVybiBuZXh0QW5jZXN0
b3JTaWJsaW5nKGN1cnJlbnQsIHN0YXlXaXRoaW4pOworfQorCitFbGVtZW50KiBuZXh0U2tpcHBp
bmdDaGlsZHJlbihjb25zdCBFbGVtZW50KiBjdXJyZW50LCBjb25zdCBOb2RlKiBzdGF5V2l0aGlu
KQoreworICAgIEFTU0VSVChjdXJyZW50KTsKKyAgICBpZiAoRWxlbWVudCogbmV4dCA9IG5leHRT
aWJsaW5nRWxlbWVudChjdXJyZW50KSkKKyAgICAgICAgcmV0dXJuIG5leHQ7CisgICAgcmV0dXJu
IG5leHRBbmNlc3RvclNpYmxpbmcoY3VycmVudCwgc3RheVdpdGhpbik7Cit9CisKK30KKwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGVUcmF2ZXJzYWwuaCBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Ob2RlVHJhdmVyc2FsLmgKaW5kZXggN2EzY2EwZTZmMzNlMGUxZmQ1MjM3YTMx
NDMxZmQ1Y2U5NzIwOWMxZC4uOGI2OTk0MWQzYjAxOTUzZmFhN2RkZGNiMzc2ZjVhN2VlODQ4Zjdm
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGVUcmF2ZXJzYWwuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9kb20vTm9kZVRyYXZlcnNhbC5oCkBAIC00Nyw2ICs0NywxNyBAQCBFbGVt
ZW50KiBuZXh0U2tpcHBpbmdDaGlsZHJlbihjb25zdCBDb250YWluZXJOb2RlKiwgY29uc3QgTm9k
ZSogc3RheVdpdGhpbik7CiAKIH0KIAorbmFtZXNwYWNlIEVsZW1lbnRUcmF2ZXJzYWxXaXRoU2hh
ZG93IHsKKy8vIFRoZSBmb2xsb3dpbmcgZnVuY3Rpb25zIHRyYXZlcnNlIGVsZW1lbnRzIGluIHNo
YWRvdyBpbiBhZGRpdGlvbiB0byBub3JtYWwKKy8vIGNoaWxkIGVsZW1lbnRzLiBUaGUgdHJhdmVy
c2luZyBvcmRlciBpczogbm9ybWFsIGNoaWxkcmVuIC0+IG9sZGVzdCBTaGFkb3dSb290CisvLyAt
PiB5b3VuZ2VyIFNoYWRvd1Jvb3RzLgorCitFbGVtZW50KiBmaXJzdFdpdGhpbihjb25zdCBOb2Rl
Kik7CitFbGVtZW50KiBuZXh0KGNvbnN0IEVsZW1lbnQqIGN1cnJlbnQsIGNvbnN0IE5vZGUqIHN0
YXlXaXRoaW4pOworRWxlbWVudCogbmV4dFNraXBwaW5nQ2hpbGRyZW4oY29uc3QgRWxlbWVudCog
Y3VycmVudCwgY29uc3QgTm9kZSogc3RheVdpdGhpbik7CisKK30KKwogbmFtZXNwYWNlIE5vZGVU
cmF2ZXJzYWwgewogCiAvLyBEb2VzIGEgcHJlLW9yZGVyIHRyYXZlcnNhbCBvZiB0aGUgdHJlZSB0
byBmaW5kIHRoZSBuZXh0IG5vZGUgYWZ0ZXIgdGhpcyBvbmUuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3NoYWRvdy9EYXRlVGltZUZpZWxkRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3NoYWRvdy9EYXRlVGltZUZpZWxkRWxlbWVudC5jcHAKaW5kZXggNDQzNGM5NzY5
NGRmZGQxYjQ0YjQ2OTVkYzRmMWYzMTc2OGIxNDhjYS4uNDIwMGZjNGZiOGYyYThjNzA2ZjcxMDBi
MjgwMGQ0MTkzMmZlY2ExOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
RGF0ZVRpbWVGaWVsZEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93
L0RhdGVUaW1lRmllbGRFbGVtZW50LmNwcApAQCAtMjgsOSArMjgsMTEgQEAKICNpbmNsdWRlICJE
YXRlVGltZUZpZWxkRWxlbWVudC5oIgogCiAjaW5jbHVkZSAiRGF0ZUNvbXBvbmVudHMuaCIKKyNp
bmNsdWRlICJGb2N1c0NvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNs
dWRlICJLZXlib2FyZEV2ZW50LmgiCiAjaW5jbHVkZSAiTG9jYWxpemVkU3RyaW5ncy5oIgorI2lu
Y2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJQbGF0Zm9ybUxvY2FsZS5oIgogI2luY2x1ZGUgIlJl
bmRlck9iamVjdC5oIgogI2luY2x1ZGUgIlRleHQuaCIKQEAgLTkxLDIwICs5MywyNiBAQCB2b2lk
IERhdGVUaW1lRmllbGRFbGVtZW50OjpkZWZhdWx0S2V5Ym9hcmRFdmVudEhhbmRsZXIoS2V5Ym9h
cmRFdmVudCoga2V5Ym9hcmRFdgogICAgIGlmIChrZXlJZGVudGlmaWVyID09ICJMZWZ0Iikgewog
ICAgICAgICBpZiAoIW1fZmllbGRPd25lcikKICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAg
Ly8gRklYTUU6IFdlJ2QgbGlrZSB0byB1c2UgRm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXMo
Rm9jdXNEaXJlY3Rpb25MZWZ0LCAuLi4pCi0gICAgICAgIC8vIGJ1dCBpdCBkb2Vzbid0IHdvcmsg
Zm9yIHNoYWRvdyBub2Rlcy4gd2Via2l0Lm9yZy9iLzEwNDY1MAotICAgICAgICBpZiAoIWxvY2Fs
ZUZvck93bmVyKCkuaXNSVEwoKSAmJiBtX2ZpZWxkT3duZXItPmZvY3VzT25QcmV2aW91c0ZpZWxk
KCp0aGlzKSkKLSAgICAgICAgICAgIGtleWJvYXJkRXZlbnQtPnNldERlZmF1bHRIYW5kbGVkKCk7
CisgICAgICAgIGlmICghbG9jYWxlRm9yT3duZXIoKS5pc1JUTCgpKSB7CisgICAgICAgICAgICBp
ZiAobV9maWVsZE93bmVyLT5mb2N1c09uUHJldmlvdXNGaWVsZCgqdGhpcykpCisgICAgICAgICAg
ICAgICAga2V5Ym9hcmRFdmVudC0+c2V0RGVmYXVsdEhhbmRsZWQoKTsKKyAgICAgICAgfSBlbHNl
IHsKKyAgICAgICAgICAgIGlmIChkb2N1bWVudCgpLT5wYWdlKCkgJiYgZG9jdW1lbnQoKS0+cGFn
ZSgpLT5mb2N1c0NvbnRyb2xsZXIoKS0+YWR2YW5jZUZvY3VzKEZvY3VzRGlyZWN0aW9uTGVmdCwg
a2V5Ym9hcmRFdmVudCkpCisgICAgICAgICAgICAgICAga2V5Ym9hcmRFdmVudC0+c2V0RGVmYXVs
dEhhbmRsZWQoKTsKKyAgICAgICAgfQogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAgaWYg
KGtleUlkZW50aWZpZXIgPT0gIlJpZ2h0IikgewogICAgICAgICBpZiAoIW1fZmllbGRPd25lcikK
ICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgLy8gRklYTUU6IFdlJ2QgbGlrZSB0byB1c2Ug
Rm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXMoRm9jdXNEaXJlY3Rpb25SaWdodCwgLi4uKQot
ICAgICAgICAvLyBidXQgaXQgZG9lc24ndCB3b3JrIGZvciBzaGFkb3cgbm9kZXMuIHdlYmtpdC5v
cmcvYi8xMDQ2NTAKLSAgICAgICAgaWYgKCFsb2NhbGVGb3JPd25lcigpLmlzUlRMKCkgJiYgbV9m
aWVsZE93bmVyLT5mb2N1c09uTmV4dEZpZWxkKCp0aGlzKSkKLSAgICAgICAgICAgIGtleWJvYXJk
RXZlbnQtPnNldERlZmF1bHRIYW5kbGVkKCk7CisgICAgICAgIGlmICghbG9jYWxlRm9yT3duZXIo
KS5pc1JUTCgpKSB7CisgICAgICAgICAgICBpZiAobV9maWVsZE93bmVyLT5mb2N1c09uTmV4dEZp
ZWxkKCp0aGlzKSkKKyAgICAgICAgICAgICAgICBrZXlib2FyZEV2ZW50LT5zZXREZWZhdWx0SGFu
ZGxlZCgpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaWYgKGRvY3VtZW50KCktPnBh
Z2UoKSAmJiBkb2N1bWVudCgpLT5wYWdlKCktPmZvY3VzQ29udHJvbGxlcigpLT5hZHZhbmNlRm9j
dXMoRm9jdXNEaXJlY3Rpb25SaWdodCwga2V5Ym9hcmRFdmVudCkpCisgICAgICAgICAgICAgICAg
a2V5Ym9hcmRFdmVudC0+c2V0RGVmYXVsdEhhbmRsZWQoKTsKKyAgICAgICAgfQogICAgICAgICBy
ZXR1cm47CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29u
dHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKaW5k
ZXggYWVmNGU1NDhhMzFmMGQwMDdmMmI2MWNiMDA4NWY5ZDY0NmFlOTEyYS4uZmFhNjI5OWU2NzAy
MTc3M2I5MjJhZTJkYTU5NjVhY2UxNjc2YzExNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXND
b250cm9sbGVyLmNwcApAQCAtNzcwLDE1ICs3NzAsMTUgQEAgdm9pZCBGb2N1c0NvbnRyb2xsZXI6
OmZpbmRGb2N1c0NhbmRpZGF0ZUluQ29udGFpbmVyKE5vZGUqIGNvbnRhaW5lciwgY29uc3QgTGF5
b3UKICAgICBBU1NFUlQoY29udGFpbmVyKTsKICAgICBOb2RlKiBmb2N1c2VkTm9kZSA9IChmb2N1
c2VkRnJhbWUoKSAmJiBmb2N1c2VkRnJhbWUoKS0+ZG9jdW1lbnQoKSkgPyBmb2N1c2VkRnJhbWUo
KS0+ZG9jdW1lbnQoKS0+Zm9jdXNlZE5vZGUoKSA6IDA7CiAKLSAgICBFbGVtZW50KiBlbGVtZW50
ID0gRWxlbWVudFRyYXZlcnNhbDo6Zmlyc3RXaXRoaW4oY29udGFpbmVyKTsKKyAgICBFbGVtZW50
KiBlbGVtZW50ID0gRWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3c6OmZpcnN0V2l0aGluKGNvbnRh
aW5lcik7CiAgICAgRm9jdXNDYW5kaWRhdGUgY3VycmVudDsKICAgICBjdXJyZW50LnJlY3QgPSBz
dGFydGluZ1JlY3Q7CiAgICAgY3VycmVudC5mb2N1c2FibGVOb2RlID0gZm9jdXNlZE5vZGU7CiAg
ICAgY3VycmVudC52aXNpYmxlTm9kZSA9IGZvY3VzZWROb2RlOwogCi0gICAgZm9yICg7IGVsZW1l
bnQ7IGVsZW1lbnQgPSAoZWxlbWVudC0+aXNGcmFtZU93bmVyRWxlbWVudCgpIHx8IGNhblNjcm9s
bEluRGlyZWN0aW9uKGVsZW1lbnQsIGRpcmVjdGlvbikpCi0gICAgICAgID8gRWxlbWVudFRyYXZl
cnNhbDo6bmV4dFNraXBwaW5nQ2hpbGRyZW4oZWxlbWVudCwgY29udGFpbmVyKQotICAgICAgICA6
IEVsZW1lbnRUcmF2ZXJzYWw6Om5leHQoZWxlbWVudCwgY29udGFpbmVyKSkgeworICAgIGZvciAo
OyBlbGVtZW50OyBlbGVtZW50ID0gKGVsZW1lbnQtPmlzRnJhbWVPd25lckVsZW1lbnQoKSB8fCBj
YW5TY3JvbGxJbkRpcmVjdGlvbihlbGVtZW50LCBkaXJlY3Rpb24pIHx8IGhhc0N1c3RvbUZvY3Vz
TG9naWMoZWxlbWVudCkpCisgICAgICAgID8gRWxlbWVudFRyYXZlcnNhbFdpdGhTaGFkb3c6Om5l
eHRTa2lwcGluZ0NoaWxkcmVuKGVsZW1lbnQsIGNvbnRhaW5lcikKKyAgICAgICAgOiBFbGVtZW50
VHJhdmVyc2FsV2l0aFNoYWRvdzo6bmV4dChlbGVtZW50LCBjb250YWluZXIpKSB7CiAgICAgICAg
IGlmIChlbGVtZW50ID09IGZvY3VzZWROb2RlKQogICAgICAgICAgICAgY29udGludWU7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU3BhdGlhbE5hdmlnYXRpb24uY3BwIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9TcGF0aWFsTmF2aWdhdGlvbi5jcHAKaW5kZXggNjJhMzk4NjZlNGFh
MmU4MjQxNTM1NTI4ZTFhYTllNzFiYWM2MjA2My4uMjUyNGIzOTE5NjlmYjcyMjg0NjA1N2Y2MjQw
NjZmNzJkY2QxMjJiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9TcGF0aWFsTmF2
aWdhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TcGF0aWFsTmF2aWdhdGlvbi5j
cHAKQEAgLTQ0Miw3ICs0NDIsNyBAQCBOb2RlKiBzY3JvbGxhYmxlRW5jbG9zaW5nQm94T3JQYXJl
bnRGcmFtZUZvck5vZGVJbkRpcmVjdGlvbihGb2N1c0RpcmVjdGlvbiBkaXJlYwogICAgICAgICBp
ZiAocGFyZW50LT5pc0RvY3VtZW50Tm9kZSgpKQogICAgICAgICAgICAgcGFyZW50ID0gc3RhdGlj
X2Nhc3Q8RG9jdW1lbnQqPihwYXJlbnQpLT5kb2N1bWVudCgpLT5mcmFtZSgpLT5vd25lckVsZW1l
bnQoKTsKICAgICAgICAgZWxzZQotICAgICAgICAgICAgcGFyZW50ID0gcGFyZW50LT5wYXJlbnRO
b2RlKCk7CisgICAgICAgICAgICBwYXJlbnQgPSBwYXJlbnQtPnBhcmVudE9ySG9zdE5vZGUoKTsK
ICAgICB9IHdoaWxlIChwYXJlbnQgJiYgIWNhblNjcm9sbEluRGlyZWN0aW9uKHBhcmVudCwgZGly
ZWN0aW9uKSAmJiAhcGFyZW50LT5pc0RvY3VtZW50Tm9kZSgpKTsKIAogICAgIHJldHVybiBwYXJl
bnQ7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKaW5kZXggMjcxNzFjZjE5NWRiNDk3ZThmNWE4ZjFlZTg2OTgwNjQyOWNmYjJiOC4uNjI3
ZThiMzhmODlkNDE3OGVhMjcxYjdmYWI4NjQ1Y2RjMjVlN2RjZSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDEyLTEyLTEzICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KKworICAg
ICAgICBJTlBVVF9NVUxUSVBMRV9GSUVMRFNfVUk6IFN1cHBvcnQgZm9jdXMgbmF2aWdhdGlvbiBi
eSBsZWZ0L3JpZ2h0IGtleXMgaW4gUlRMIGxvY2FsZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDY1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZXMgZXhpc3RpbmcgdGVzdHMgZm9yIG5ldyBi
ZWhhdmlvci4KKworICAgICAgICAqIGZhc3QvZm9ybXMvZGF0ZS1tdWx0aXBsZS1maWVsZHMvZGF0
ZS1tdWx0aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZlbnRzLmh0bWw6CisgICAgICAgICogZmFzdC9m
b3Jtcy9kYXRldGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy9kYXRldGltZWxvY2FsLW11bHRpcGxl
LWZpZWxkcy1rZXlib2FyZC1ldmVudHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZm9y
bXMvZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1maWVsZHMvZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1m
aWVsZHMta2V5Ym9hcmQtZXZlbnRzLmh0bWw6CisKIDIwMTItMTItMTYgIEtlbnRhcm8gSGFyYSAg
PGhhcmFrZW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQuIFJlYmFzZWxpbmVk
IHZpcnR1YWwvZ3B1L2NvbXBvc2l0ZWRzY3JvbGxpbmcvc2Nyb2xsYmFycy9zY3JvbGxiYXItb3Jp
ZW50YXRpb24uaHRtbC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZGF0ZS1t
dWx0aXBsZS1maWVsZHMvZGF0ZS1tdWx0aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZlbnRzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2RhdGUtbXVsdGlwbGUtZmllbGRzL2RhdGUtbXVsdGlw
bGUtZmllbGRzLWtleWJvYXJkLWV2ZW50cy5odG1sCmluZGV4IGU5NGQ1ZWIyMGYxYTE2ZmU3ZGU0
ZWNhZjk3ZjI1Yjk0YzM3OTBkZmMuLmFhNTU4M2M3MDg4MGIzOWI3ZDM1MGJiYWE2MGQ3NjFkYmFj
YTFhN2EgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZGF0ZS1tdWx0aXBsZS1m
aWVsZHMvZGF0ZS1tdWx0aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZlbnRzLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9mb3Jtcy9kYXRlLW11bHRpcGxlLWZpZWxkcy9kYXRlLW11bHRpcGxlLWZp
ZWxkcy1rZXlib2FyZC1ldmVudHMuaHRtbApAQCAtMTk1LDcgKzE5NSw2IEBAIGRlYnVnKCdUaGUg
dGVzdHMgaW4gdGhpcyBibG9jayBmYWlsIG9uIHBsYXRmb3JtcyB3aXRob3V0IHRoZSBsYW5nLWF0
dHJpYnV0ZS1hd2FyCiAvLyBCb3RoIG9mIHRoZSBsb2dpY2FsIG9yZGVyIGFuZCB2aXN1YWwgb3Jk
ZXIgYXJlOiBkZC9NTS95eXl5CiAvLyBJbml0aWFsIHN0YXRlOiAgICAgICAgICAgIFsyOF0vMDkv
MjAxMgoga2V5RG93bigndXBBcnJvdycpOyAvLyAgICAtPiBbMjldLzA5LzIwMTIKLWtleURvd24o
J3JpZ2h0QXJyb3cnKTsgLy8gLT4gWzAxXS8wOS8yMDEyCiBrZXlEb3duKCcxJyk7IC8vICAgICAg
ICAgIC0+IFswMV0vMDkvMjAxMgogc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCdpbnB1dC52YWx1ZScs
ICcyMDEyLTA5LTAxJyk7CiBrZXlEb3duKCdcdCcpOyAvLyAgICAgICAgIC0+IDAxL1swOV0vMjAx
MgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9kYXRldGltZWxvY2FsLW11bHRp
cGxlLWZpZWxkcy9kYXRldGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy1rZXlib2FyZC1ldmVudHMt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9kYXRldGltZWxvY2FsLW11bHRp
cGxlLWZpZWxkcy9kYXRldGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy1rZXlib2FyZC1ldmVudHMt
ZXhwZWN0ZWQudHh0CmluZGV4IDJlZGI5NDA5MWMxOWE4ZTZmZTU1OTg0OWE2NjBmMDRlM2ZmMmIz
YzMuLmI2NzhhYzJjNjI3YWMxMTYwZTgyOTQ3M2I3YzJhNTdlZGRmNzUzY2EgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1maWVsZHMvZGF0
ZXRpbWVsb2NhbC1tdWx0aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZlbnRzLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2RhdGV0aW1lbG9jYWwtbXVsdGlwbGUtZmllbGRz
L2RhdGV0aW1lbG9jYWwtbXVsdGlwbGUtZmllbGRzLWtleWJvYXJkLWV2ZW50cy1leHBlY3RlZC50
eHQKQEAgLTUzLDYgKzUzLDcgQEAgVGhlIHRlc3RzIGluIHRoaXMgYmxvY2sgZmFpbCBvbiBwbGF0
Zm9ybXMgd2l0aG91dCB0aGUgbGFuZy1hdHRyaWJ1dGUtYXdhcmUtZm9ybS0KIFBBU1MgaW5wdXQu
dmFsdWUgaXMgIjIwMTItMDktMDFUMjM6MDAiCiBQQVNTIGlucHV0LnZhbHVlIGlzICIyMDEyLTAy
LTAxVDAxOjAwIgogUEFTUyBpbnB1dC52YWx1ZSBpcyAiMDAwOC0wMy0wMVQwMTowMCIKK1BBU1Mg
aW5wdXQudmFsdWUgaXMgIjAwMDktMDQtMDJUMDA6NTkiCiA9PSBEaXNhYmxlZC9yZWFkb25seSA9
PQogUEFTUyBpbnB1dC52YWx1ZSBpcyAiMjAxMi0xMC0wOFQwMDowMCIKIFBBU1MgaW5wdXQudmFs
dWUgaXMgIjIwMTItMTEtMDhUMDA6MDAiCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Zv
cm1zL2RhdGV0aW1lbG9jYWwtbXVsdGlwbGUtZmllbGRzL2RhdGV0aW1lbG9jYWwtbXVsdGlwbGUt
ZmllbGRzLWtleWJvYXJkLWV2ZW50cy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9kYXRl
dGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy9kYXRldGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy1r
ZXlib2FyZC1ldmVudHMuaHRtbAppbmRleCAyZjE0Y2VkYmU4MDAxODgwNmFiYzUxOTE2YjA1OGQw
NGIxYTRiNjQ2Li42MjE5MzMxZDcwMGRlZTNkZTU5YWU1Mzk0YzQ1YTczMGYzZmExNTk3IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2RhdGV0aW1lbG9jYWwtbXVsdGlwbGUtZmll
bGRzL2RhdGV0aW1lbG9jYWwtbXVsdGlwbGUtZmllbGRzLWtleWJvYXJkLWV2ZW50cy5odG1sCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1maWVsZHMv
ZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZlbnRzLmh0bWwKQEAgLTIx
Niw2ICsyMTYsMjAgQEAga2V5RG93bignOCcpOyAvLyAgICAgICAgICAgICAgICAtPiAwMTowMCAw
MS8wOS9bMDAwOF0KIGtleURvd24oJ1x0JywgWydzaGlmdEtleSddKTsgLy8gLT4gMDE6MDAgMDEv
WzA5XS8wMDA4CiBrZXlEb3duKCczJyk7IC8vICAgICAgICAgICAgICAgIC0+IDAxOjAwIDAxLzAz
L1swMDA4XQogc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCdpbnB1dC52YWx1ZScsICcwMDA4LTAzLTAx
VDAxOjAwJyk7CitrZXlEb3duKCdsZWZ0QXJyb3cnKTsgLy8gICAgICAgIC0+IDAxOjAwIDAxL1sw
M10vMDAwOAora2V5RG93bignbGVmdEFycm93Jyk7IC8vICAgICAgICAtPiAwMTowMCBbMDFdLzAz
LzAwMDgKK2tleURvd24oJ2xlZnRBcnJvdycpOyAvLyAgICAgICAgLT4gMDE6WzAwXSAwMS8wMy8w
MDA4CitrZXlEb3duKCdsZWZ0QXJyb3cnKTsgLy8gICAgICAgIC0+IFswMV06MDAgMDEvMDMvMDAw
OAora2V5RG93bignZG93bkFycm93Jyk7IC8vICAgICAgICAtPiBbMDBdOjAwIDAxLzAzLzAwMDgK
K2tleURvd24oJ3JpZ2h0QXJyb3cnKTsgLy8gICAgICAgLT4gMDA6WzAwXSAwMS8wMy8wMDA4Citr
ZXlEb3duKCdkb3duQXJyb3cnKTsgLy8gICAgICAgIC0+IDAwOls1OV0gMDEvMDMvMDAwOAora2V5
RG93bigncmlnaHRBcnJvdycpOyAvLyAgICAgICAtPiAwMDo1OSBbMDFdLzAzLzAwMDgKK2tleURv
d24oJ3VwQXJyb3cnKTsgLy8gICAgICAgICAgLT4gMDA6NTkgWzAyXS8wMy8wMDA4CitrZXlEb3du
KCdyaWdodEFycm93Jyk7IC8vICAgICAgIC0+IDAwOjU5IDAyL1swM10vMDAwOAora2V5RG93bign
dXBBcnJvdycpOyAvLyAgICAgICAgICAtPiAwMDo1OSAwMi9bMDRdLzAwMDgKK2tleURvd24oJ3Jp
Z2h0QXJyb3cnKTsgLy8gICAgICAgLT4gMDA6NTkgMDIvMDQvWzAwMDhdCitrZXlEb3duKCd1cEFy
cm93Jyk7IC8vICAgICAgICAgIC0+IDAwOjU5IDAyLzA0L1swMDA5XQorc2hvdWxkQmVFcXVhbFRv
U3RyaW5nKCdpbnB1dC52YWx1ZScsICcwMDA5LTA0LTAyVDAwOjU5Jyk7CiBpbnB1dC5yZW1vdmVB
dHRyaWJ1dGUoJ2xhbmcnKTsKIAogYmVnaW5UZXN0KCdEaXNhYmxlZC9yZWFkb25seScsICcyMDEy
LTEwLTA4VDAwOjAwJyk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>183397</attachid>
            <date>2013-01-18 00:45:40 -0800</date>
            <delta_ts>2013-03-21 20:35:56 -0700</delta_ts>
            <desc>Patch 3</desc>
            <filename>bug-104650-20130118174239.patch</filename>
            <type>text/plain</type>
            <size>14566</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5OTU4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTRlNjVjNWI1OWI1MjA0
NTdiMzIyOGI2MTE2YzFlYmEyNWNjMTAzNS4uOGEzOWNjOTkzYzE4NzQ1MzY1MjI2N2VmY2E5OGY3
OTliNmNjYWViZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDEzLTAxLTE4ICBLZW50
IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KKworICAgICAgICBJTlBVVF9NVUxUSVBMRV9G
SUVMRFNfVUk6IFN1cHBvcnQgZm9jdXMgbmF2aWdhdGlvbiBieSBsZWZ0L3JpZ2h0IGtleXMgaW4g
UlRMIGxvY2FsZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwNDY1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEFkZCBzaGFkb3cgZWxlbWVudHMgc3VwcG9ydCB0byB0aGUgc3BhY2lhbCBmb2N1cyBuYXZp
Z2F0aW9uLiBXZSBhZGQKKyAgICAgICAgc29tZSBmZWF0dXJlcyB0byBDb21wb3NlZFNoYWRvd1Ry
ZWVXYWxrZXIgZm9yIGl0LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gVXBkYXRlcyBkYXRlLW11
bHRpcGxlLWZpZWxkcy1rZXlib2FyZC1ldmVudHMuaHRtbCBhbmQKKyAgICAgICAgZGF0ZXRpbWVs
b2NhbC1tdWx0aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZlbnRzLmh0bWwKKworICAgICAgICAqIGRv
bS9Db21wb3NlZFNoYWRvd1RyZWVXYWxrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9z
ZWRTaGFkb3dUcmVlV2Fsa2VyOjpuZXh0KTogVXNlIG5leHRTa2lwcGluZ0NoaWxkcmVuLgorICAg
ICAgICAoV2ViQ29yZTo6Q29tcG9zZWRTaGFkb3dUcmVlV2Fsa2VyOjpuZXh0U2tpcHBpbmdDaGls
ZHJlbik6CisgICAgICAgIE1vdmUgc29tZSBwYXJ0IG9mIG5leHQoKSB0byB0aGlzLiBBbHNvLCBh
ZGQgU3RheVdpdGhJblN0YXJ0Tm9kZSBzdXBwb3J0LgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9z
ZWRTaGFkb3dUcmVlV2Fsa2VyOjpwcmV2aW91cyk6CisgICAgICAgIEFkZCBTdGF5V2l0aEluU3Rh
cnROb2RlIHN1cHBvcnQuCisgICAgICAgICogZG9tL0NvbXBvc2VkU2hhZG93VHJlZVdhbGtlci5o
OgorICAgICAgICAoQ29tcG9zZWRTaGFkb3dUcmVlV2Fsa2VyKTogQWRkIFN0YXlXaXRoSW5TdGFy
dE5vZGUgcG9saWN5LgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9zZWRTaGFkb3dUcmVlV2Fsa2Vy
OjpjYW5Dcm9zc1VwcGVyQm91bmRhcnkpOgorICAgICAgICBTdGF5V2l0aEluU3RhcnROb2RlIGlt
cGxpZXMgQ3Jvc3NVcHBlckJvdW5kYXJ5LgorICAgICAgICAoV2ViQ29yZTo6Q29tcG9zZWRTaGFk
b3dUcmVlV2Fsa2VyOjpDb21wb3NlZFNoYWRvd1RyZWVXYWxrZXIpOgorICAgICAgICBJbml0aWFs
aXplIG1fc3RhcnROb2RlLgorCisgICAgICAgICogcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjpmaW5kRm9jdXNDYW5kaWRhdGVJbkNv
bnRhaW5lcik6CisgICAgICAgIFVzZSBDb21wb3NlZFNoYWRvd1RyZWVXYWxrZXIgaW5zdGVhZCBv
ZiBFbGVtZW50VHJhdmVyc2FsIHRvCisgICAgICAgIGZpbmQgZm9jdXNhYmxlIGVsZW1lbnRzIGlu
IHNoYWRvdy4gQWxzbywgZG9uJ3QgY2hlY2sgc2hhZG93IG5vZGVzIG9mCisgICAgICAgIGVsZW1l
bnRzIHdpdGggaGFzQ3VzdG9tRm9jdXNMb2dpYy4KKyAgICAgICAgKiBwYWdlL1NwYXRpYWxOYXZp
Z2F0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnNjcm9sbGFibGVFbmNsb3NpbmdCb3hPclBh
cmVudEZyYW1lRm9yTm9kZUluRGlyZWN0aW9uKToKKyAgICAgICAgVXNlIHBhcmVudE9ySG9zdE5v
ZGUgc28gdGhhdCB3ZSBzdGFydCBmcm9tIGEgZm9jdXNlZCBub2RlIGluIHNoYWRvdy4KKworICAg
ICAgICAqIGh0bWwvc2hhZG93L0RhdGVUaW1lRmllbGRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkRhdGVUaW1lRmllbGRFbGVtZW50OjpkZWZhdWx0S2V5Ym9hcmRFdmVudEhhbmRsZXIp
OgorICAgICAgICBVc2UgRm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXMoRm9jdXNEaXJlY3Rp
b24qLC4uLikuCisgICAgICAgIFdlIGRvbid0IHVzZSBpdCBpbiBub24tUlRMIGxvY2FsZXMgYmVj
YXVzZSBpdCBpcyBhIGhlYXZ5IG9wZXJhdGlvbi4KKwogMjAxMy0wMS0xNiAgTU9SSVRBIEhhamlt
ZSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KIAogICAgICAgICBBdHRyLm93bmVyRG9jdW1lbnQgc2hv
dWxkIGNoYW5nZSBpZiBpdHMgcGFyZW50J3Mgb3duZXIgZGlkCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vQ29tcG9zZWRTaGFkb3dUcmVlV2Fsa2VyLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9Db21wb3NlZFNoYWRvd1RyZWVXYWxrZXIuY3BwCmluZGV4IGFiNThkNjE1MmJjNjBkOTA1
MTdhZTRhYjhjZWVhMDdiNDhmY2IxOGMuLjIwMzZmMGRjMDk5YmU2NjE2OGIzNjIwYTZkMjU5OTE4
YzFhMGQ3MGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Db21wb3NlZFNoYWRvd1Ry
ZWVXYWxrZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Db21wb3NlZFNoYWRvd1RyZWVX
YWxrZXIuY3BwCkBAIC0yODksMTIgKzI4OSwyMyBAQCB2b2lkIENvbXBvc2VkU2hhZG93VHJlZVdh
bGtlcjo6bmV4dCgpCiAgICAgYXNzZXJ0UHJlY29uZGl0aW9uKCk7CiAgICAgaWYgKE5vZGUqIG5l
eHQgPSB0cmF2ZXJzZUZpcnN0Q2hpbGQobV9ub2RlKSkKICAgICAgICAgbV9ub2RlID0gbmV4dDsK
LSAgICBlbHNlIGlmIChOb2RlKiBuZXh0ID0gdHJhdmVyc2VOZXh0U2libGluZyhtX25vZGUpKQor
ICAgIGVsc2UKKyAgICAgICAgbmV4dFNraXBwaW5nQ2hpbGRyZW4oKTsKKyAgICBhc3NlcnRQb3N0
Y29uZGl0aW9uKCk7Cit9CisKK3ZvaWQgQ29tcG9zZWRTaGFkb3dUcmVlV2Fsa2VyOjpuZXh0U2tp
cHBpbmdDaGlsZHJlbigpCit7CisgICAgYXNzZXJ0UHJlY29uZGl0aW9uKCk7CisgICAgaWYgKE5v
ZGUqIG5leHQgPSB0cmF2ZXJzZU5leHRTaWJsaW5nKG1fbm9kZSkpCiAgICAgICAgIG1fbm9kZSA9
IG5leHQ7CiAgICAgZWxzZSB7CiAgICAgICAgIGNvbnN0IE5vZGUqIG4gPSBtX25vZGU7Ci0gICAg
ICAgIHdoaWxlIChuICYmICF0cmF2ZXJzZU5leHRTaWJsaW5nKG4pKQorICAgICAgICB3aGlsZSAo
biAmJiAhdHJhdmVyc2VOZXh0U2libGluZyhuKSkgewogICAgICAgICAgICAgbiA9IHRyYXZlcnNl
UGFyZW50KG4pOworICAgICAgICAgICAgaWYgKG1fcG9saWN5ID09IFN0YXlXaXRoSW5TdGFydE5v
ZGUgJiYgbiA9PSBtX3N0YXJ0Tm9kZSkKKyAgICAgICAgICAgICAgICBuID0gMDsKKyAgICAgICAg
fQogICAgICAgICBtX25vZGUgPSBuID8gdHJhdmVyc2VOZXh0U2libGluZyhuKSA6IDA7CiAgICAg
fQogICAgIGFzc2VydFBvc3Rjb25kaXRpb24oKTsKQEAgLTMwMyw3ICszMTQsOSBAQCB2b2lkIENv
bXBvc2VkU2hhZG93VHJlZVdhbGtlcjo6bmV4dCgpCiB2b2lkIENvbXBvc2VkU2hhZG93VHJlZVdh
bGtlcjo6cHJldmlvdXMoKQogewogICAgIGFzc2VydFByZWNvbmRpdGlvbigpOwotICAgIGlmIChO
b2RlKiBuID0gdHJhdmVyc2VQcmV2aW91c1NpYmxpbmcobV9ub2RlKSkgeworICAgIGlmIChtX3Bv
bGljeSA9PSBTdGF5V2l0aEluU3RhcnROb2RlICYmIG1fbm9kZSA9PSBtX3N0YXJ0Tm9kZSkKKyAg
ICAgICAgbV9ub2RlID0gMDsKKyAgICBlbHNlIGlmIChOb2RlKiBuID0gdHJhdmVyc2VQcmV2aW91
c1NpYmxpbmcobV9ub2RlKSkgewogICAgICAgICB3aGlsZSAoTm9kZSogY2hpbGQgPSB0cmF2ZXJz
ZUxhc3RDaGlsZChuKSkKICAgICAgICAgICAgIG4gPSBjaGlsZDsKICAgICAgICAgbV9ub2RlID0g
bjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Db21wb3NlZFNoYWRvd1RyZWVXYWxr
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Db21wb3NlZFNoYWRvd1RyZWVXYWxrZXIuaAppbmRl
eCA4MzQ5ZTIxYWE5ODNmMGE4NGExMTNjMTY3ODBlNDllYzY3NjY0ZjNlLi4wYjgwYmM3MTNmMzI3
NzdiYWU4MDU1Yzc1YjVkMDJlMDYxZDljN2E2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9k
b20vQ29tcG9zZWRTaGFkb3dUcmVlV2Fsa2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0Nv
bXBvc2VkU2hhZG93VHJlZVdhbGtlci5oCkBAIC00NSw2ICs0NSw3IEBAIHB1YmxpYzoKICAgICBl
bnVtIFBvbGljeSB7CiAgICAgICAgIENyb3NzVXBwZXJCb3VuZGFyeSwKICAgICAgICAgRG9Ob3RD
cm9zc1VwcGVyQm91bmRhcnksCisgICAgICAgIFN0YXlXaXRoSW5TdGFydE5vZGUsCiAgICAgfTsK
IAogICAgIGVudW0gU3RhcnRQb2xpY3kgewpAQCAtNjksNiArNzAsNyBAQCBwdWJsaWM6CiAgICAg
dm9pZCBwYXJlbnQoKTsKIAogICAgIHZvaWQgbmV4dCgpOworICAgIHZvaWQgbmV4dFNraXBwaW5n
Q2hpbGRyZW4oKTsKICAgICB2b2lkIHByZXZpb3VzKCk7CiAKICAgICBOb2RlKiB0cmF2ZXJzZVBh
cmVudChjb25zdCBOb2RlKiwgUGFyZW50VHJhdmVyc2FsRGV0YWlscyogPSAwKSBjb25zdDsKQEAg
LTgxLDcgKzgzLDcgQEAgcHJpdmF0ZToKICAgICAgICAgVHJhdmVyc2FsRGlyZWN0aW9uQmFja3dh
cmQKICAgICB9OwogCi0gICAgYm9vbCBjYW5Dcm9zc1VwcGVyQm91bmRhcnkoKSBjb25zdCB7IHJl
dHVybiBtX3BvbGljeSA9PSBDcm9zc1VwcGVyQm91bmRhcnk7IH0KKyAgICBib29sIGNhbkNyb3Nz
VXBwZXJCb3VuZGFyeSgpIGNvbnN0IHsgcmV0dXJuIG1fcG9saWN5ID09IENyb3NzVXBwZXJCb3Vu
ZGFyeSB8fCBtX3BvbGljeSA9PSBTdGF5V2l0aEluU3RhcnROb2RlOyB9CiAKICAgICB2b2lkIGFz
c2VydFByZWNvbmRpdGlvbigpIGNvbnN0CiAgICAgewpAQCAtMTI3LDExICsxMjksMTMgQEAgcHJp
dmF0ZToKICAgICBOb2RlKiB0cmF2ZXJzZVBhcmVudEJhY2tUb1lvdW5nZXJTaGFkb3dSb290T3JI
b3N0KGNvbnN0IFNoYWRvd1Jvb3QqLCBQYXJlbnRUcmF2ZXJzYWxEZXRhaWxzKiA9IDApIGNvbnN0
OwogCiAgICAgY29uc3QgTm9kZSogbV9ub2RlOworICAgIGNvbnN0IE5vZGUqIG1fc3RhcnROb2Rl
OwogICAgIFBvbGljeSBtX3BvbGljeTsKIH07CiAKIGlubGluZSBDb21wb3NlZFNoYWRvd1RyZWVX
YWxrZXI6OkNvbXBvc2VkU2hhZG93VHJlZVdhbGtlcihjb25zdCBOb2RlKiBub2RlLCBQb2xpY3kg
cG9saWN5LCBTdGFydFBvbGljeSBzdGFydFBvbGljeSkKICAgICA6IG1fbm9kZShub2RlKQorICAg
ICwgbV9zdGFydE5vZGUobm9kZSkKICAgICAsIG1fcG9saWN5KHBvbGljeSkKIHsKICAgICBVTlVT
RURfUEFSQU0oc3RhcnRQb2xpY3kpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvRGF0ZVRpbWVGaWVsZEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFk
b3cvRGF0ZVRpbWVGaWVsZEVsZW1lbnQuY3BwCmluZGV4IDQ0MzRjOTc2OTRkZmRkMWI0NGI0Njk1
ZGM0ZjFmMzE3NjhiMTQ4Y2EuLjQyMDBmYzRmYjhmMmE4YzcwNmY3MTAwYjI4MDBkNDE5MzJmZWNh
MTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RhdGVUaW1lRmllbGRF
bGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EYXRlVGltZUZpZWxk
RWxlbWVudC5jcHAKQEAgLTI4LDkgKzI4LDExIEBACiAjaW5jbHVkZSAiRGF0ZVRpbWVGaWVsZEVs
ZW1lbnQuaCIKIAogI2luY2x1ZGUgIkRhdGVDb21wb25lbnRzLmgiCisjaW5jbHVkZSAiRm9jdXND
b250cm9sbGVyLmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAiS2V5Ym9hcmRF
dmVudC5oIgogI2luY2x1ZGUgIkxvY2FsaXplZFN0cmluZ3MuaCIKKyNpbmNsdWRlICJQYWdlLmgi
CiAjaW5jbHVkZSAiUGxhdGZvcm1Mb2NhbGUuaCIKICNpbmNsdWRlICJSZW5kZXJPYmplY3QuaCIK
ICNpbmNsdWRlICJUZXh0LmgiCkBAIC05MSwyMCArOTMsMjYgQEAgdm9pZCBEYXRlVGltZUZpZWxk
RWxlbWVudDo6ZGVmYXVsdEtleWJvYXJkRXZlbnRIYW5kbGVyKEtleWJvYXJkRXZlbnQqIGtleWJv
YXJkRXYKICAgICBpZiAoa2V5SWRlbnRpZmllciA9PSAiTGVmdCIpIHsKICAgICAgICAgaWYgKCFt
X2ZpZWxkT3duZXIpCiAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIC8vIEZJWE1FOiBXZSdk
IGxpa2UgdG8gdXNlIEZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzKEZvY3VzRGlyZWN0aW9u
TGVmdCwgLi4uKQotICAgICAgICAvLyBidXQgaXQgZG9lc24ndCB3b3JrIGZvciBzaGFkb3cgbm9k
ZXMuIHdlYmtpdC5vcmcvYi8xMDQ2NTAKLSAgICAgICAgaWYgKCFsb2NhbGVGb3JPd25lcigpLmlz
UlRMKCkgJiYgbV9maWVsZE93bmVyLT5mb2N1c09uUHJldmlvdXNGaWVsZCgqdGhpcykpCi0gICAg
ICAgICAgICBrZXlib2FyZEV2ZW50LT5zZXREZWZhdWx0SGFuZGxlZCgpOworICAgICAgICBpZiAo
IWxvY2FsZUZvck93bmVyKCkuaXNSVEwoKSkgeworICAgICAgICAgICAgaWYgKG1fZmllbGRPd25l
ci0+Zm9jdXNPblByZXZpb3VzRmllbGQoKnRoaXMpKQorICAgICAgICAgICAgICAgIGtleWJvYXJk
RXZlbnQtPnNldERlZmF1bHRIYW5kbGVkKCk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAg
ICBpZiAoZG9jdW1lbnQoKS0+cGFnZSgpICYmIGRvY3VtZW50KCktPnBhZ2UoKS0+Zm9jdXNDb250
cm9sbGVyKCktPmFkdmFuY2VGb2N1cyhGb2N1c0RpcmVjdGlvbkxlZnQsIGtleWJvYXJkRXZlbnQp
KQorICAgICAgICAgICAgICAgIGtleWJvYXJkRXZlbnQtPnNldERlZmF1bHRIYW5kbGVkKCk7Cisg
ICAgICAgIH0KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAogICAgIGlmIChrZXlJZGVudGlmaWVy
ID09ICJSaWdodCIpIHsKICAgICAgICAgaWYgKCFtX2ZpZWxkT3duZXIpCiAgICAgICAgICAgICBy
ZXR1cm47Ci0gICAgICAgIC8vIEZJWE1FOiBXZSdkIGxpa2UgdG8gdXNlIEZvY3VzQ29udHJvbGxl
cjo6YWR2YW5jZUZvY3VzKEZvY3VzRGlyZWN0aW9uUmlnaHQsIC4uLikKLSAgICAgICAgLy8gYnV0
IGl0IGRvZXNuJ3Qgd29yayBmb3Igc2hhZG93IG5vZGVzLiB3ZWJraXQub3JnL2IvMTA0NjUwCi0g
ICAgICAgIGlmICghbG9jYWxlRm9yT3duZXIoKS5pc1JUTCgpICYmIG1fZmllbGRPd25lci0+Zm9j
dXNPbk5leHRGaWVsZCgqdGhpcykpCi0gICAgICAgICAgICBrZXlib2FyZEV2ZW50LT5zZXREZWZh
dWx0SGFuZGxlZCgpOworICAgICAgICBpZiAoIWxvY2FsZUZvck93bmVyKCkuaXNSVEwoKSkgewor
ICAgICAgICAgICAgaWYgKG1fZmllbGRPd25lci0+Zm9jdXNPbk5leHRGaWVsZCgqdGhpcykpCisg
ICAgICAgICAgICAgICAga2V5Ym9hcmRFdmVudC0+c2V0RGVmYXVsdEhhbmRsZWQoKTsKKyAgICAg
ICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGlmIChkb2N1bWVudCgpLT5wYWdlKCkgJiYgZG9jdW1l
bnQoKS0+cGFnZSgpLT5mb2N1c0NvbnRyb2xsZXIoKS0+YWR2YW5jZUZvY3VzKEZvY3VzRGlyZWN0
aW9uUmlnaHQsIGtleWJvYXJkRXZlbnQpKQorICAgICAgICAgICAgICAgIGtleWJvYXJkRXZlbnQt
PnNldERlZmF1bHRIYW5kbGVkKCk7CisgICAgICAgIH0KICAgICAgICAgcmV0dXJuOwogICAgIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIuY3BwCmluZGV4IDE2NTNkZjZkZWU1
ODhkZTNkMjVmMTg2ZTJlODg0NzY3MjdhYTdiMWUuLjM4NWZhNmM1NjQ5NDQ2MDRkYjE0ZTU2N2Fm
NmZhNjNlNTQyYjlhOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250
cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAK
QEAgLTI5LDYgKzI5LDcgQEAKIAogI2luY2x1ZGUgIkFYT2JqZWN0Q2FjaGUuaCIKICNpbmNsdWRl
ICJDaHJvbWUuaCIKKyNpbmNsdWRlICJDb21wb3NlZFNoYWRvd1RyZWVXYWxrZXIuaCIKICNpbmNs
dWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkVkaXRvci5oIgogI2luY2x1ZGUgIkVkaXRvckNs
aWVudC5oIgpAQCAtNzQxLDE1ICs3NDIsMTkgQEAgdm9pZCBGb2N1c0NvbnRyb2xsZXI6OmZpbmRG
b2N1c0NhbmRpZGF0ZUluQ29udGFpbmVyKE5vZGUqIGNvbnRhaW5lciwgY29uc3QgTGF5b3UKICAg
ICBBU1NFUlQoY29udGFpbmVyKTsKICAgICBOb2RlKiBmb2N1c2VkTm9kZSA9IChmb2N1c2VkRnJh
bWUoKSAmJiBmb2N1c2VkRnJhbWUoKS0+ZG9jdW1lbnQoKSkgPyBmb2N1c2VkRnJhbWUoKS0+ZG9j
dW1lbnQoKS0+Zm9jdXNlZE5vZGUoKSA6IDA7CiAKLSAgICBFbGVtZW50KiBlbGVtZW50ID0gRWxl
bWVudFRyYXZlcnNhbDo6Zmlyc3RXaXRoaW4oY29udGFpbmVyKTsKICAgICBGb2N1c0NhbmRpZGF0
ZSBjdXJyZW50OwogICAgIGN1cnJlbnQucmVjdCA9IHN0YXJ0aW5nUmVjdDsKICAgICBjdXJyZW50
LmZvY3VzYWJsZU5vZGUgPSBmb2N1c2VkTm9kZTsKICAgICBjdXJyZW50LnZpc2libGVOb2RlID0g
Zm9jdXNlZE5vZGU7CiAKLSAgICBmb3IgKDsgZWxlbWVudDsgZWxlbWVudCA9IChlbGVtZW50LT5p
c0ZyYW1lT3duZXJFbGVtZW50KCkgfHwgY2FuU2Nyb2xsSW5EaXJlY3Rpb24oZWxlbWVudCwgZGly
ZWN0aW9uKSkKLSAgICAgICAgPyBFbGVtZW50VHJhdmVyc2FsOjpuZXh0U2tpcHBpbmdDaGlsZHJl
bihlbGVtZW50LCBjb250YWluZXIpCi0gICAgICAgIDogRWxlbWVudFRyYXZlcnNhbDo6bmV4dChl
bGVtZW50LCBjb250YWluZXIpKSB7CisgICAgLy8gRklYTUU6IFdlIHNob3VsZCBhZGQgc29tZSB3
cmFwcGVycyBvZiBDb21wb3NlZFNoYWRvd1RyZWVXYWxrZXIgdG8KKyAgICAvLyBOb2RlUmVuZGVy
aW5nVHJhdmVyc2FsLCBhbmQgdXNlIHRoZW0uCisgICAgQ29tcG9zZWRTaGFkb3dUcmVlV2Fsa2Vy
IHdhbGtlcihjb250YWluZXIsIENvbXBvc2VkU2hhZG93VHJlZVdhbGtlcjo6U3RheVdpdGhJblN0
YXJ0Tm9kZSk7CisgICAgd2Fsa2VyLm5leHQoKTsKKyAgICBmb3IgKE5vZGUqIG5vZGU7IChub2Rl
ID0gd2Fsa2VyLmdldCgpKTsgbm9kZS0+aXNGcmFtZU93bmVyRWxlbWVudCgpIHx8IGNhblNjcm9s
bEluRGlyZWN0aW9uKG5vZGUsIGRpcmVjdGlvbikgfHwgaGFzQ3VzdG9tRm9jdXNMb2dpYyhub2Rl
KSA/IHdhbGtlci5uZXh0U2tpcHBpbmdDaGlsZHJlbigpIDogd2Fsa2VyLm5leHQoKSkgeworICAg
ICAgICBpZiAoIW5vZGUtPmlzRWxlbWVudE5vZGUoKSkKKyAgICAgICAgICAgIGNvbnRpbnVlOwor
ICAgICAgICBFbGVtZW50KiBlbGVtZW50ID0gdG9FbGVtZW50KG5vZGUpOwogICAgICAgICBpZiAo
ZWxlbWVudCA9PSBmb2N1c2VkTm9kZSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NwYXRpYWxOYXZpZ2F0aW9uLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvU3BhdGlhbE5hdmlnYXRpb24uY3BwCmluZGV4IDYyYTM5ODY2ZTRhYTJlODI0
MTUzNTUyOGUxYWE5ZTcxYmFjNjIwNjMuLjI1MjRiMzkxOTY5ZmI3MjI4NDYwNTdmNjI0MDY2Zjcy
ZGNkMTIyYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU3BhdGlhbE5hdmlnYXRp
b24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU3BhdGlhbE5hdmlnYXRpb24uY3BwCkBA
IC00NDIsNyArNDQyLDcgQEAgTm9kZSogc2Nyb2xsYWJsZUVuY2xvc2luZ0JveE9yUGFyZW50RnJh
bWVGb3JOb2RlSW5EaXJlY3Rpb24oRm9jdXNEaXJlY3Rpb24gZGlyZWMKICAgICAgICAgaWYgKHBh
cmVudC0+aXNEb2N1bWVudE5vZGUoKSkKICAgICAgICAgICAgIHBhcmVudCA9IHN0YXRpY19jYXN0
PERvY3VtZW50Kj4ocGFyZW50KS0+ZG9jdW1lbnQoKS0+ZnJhbWUoKS0+b3duZXJFbGVtZW50KCk7
CiAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIHBhcmVudCA9IHBhcmVudC0+cGFyZW50Tm9kZSgp
OworICAgICAgICAgICAgcGFyZW50ID0gcGFyZW50LT5wYXJlbnRPckhvc3ROb2RlKCk7CiAgICAg
fSB3aGlsZSAocGFyZW50ICYmICFjYW5TY3JvbGxJbkRpcmVjdGlvbihwYXJlbnQsIGRpcmVjdGlv
bikgJiYgIXBhcmVudC0+aXNEb2N1bWVudE5vZGUoKSk7CiAKICAgICByZXR1cm4gcGFyZW50Owpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CmluZGV4IDlmZjRjMWNkYmFlNTNjYTk2ODJhMDljYzM0ZTRhYWI4MDJmNzY4M2UuLjlkOTljMzhh
OTk0OWY4N2Q0MzgxN2Q0OGRmY2Q3ODRkYmJjODA2NzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAor
MjAxMy0wMS0xOCAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAg
SU5QVVRfTVVMVElQTEVfRklFTERTX1VJOiBTdXBwb3J0IGZvY3VzIG5hdmlnYXRpb24gYnkgbGVm
dC9yaWdodCBrZXlzIGluIFJUTCBsb2NhbGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ2NTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBVcGRhdGVzIGV4aXN0aW5nIHRlc3RzIGZvciBuZXcgYmVoYXZp
b3IuCisKKyAgICAgICAgKiBmYXN0L2Zvcm1zL2RhdGUtbXVsdGlwbGUtZmllbGRzL2RhdGUtbXVs
dGlwbGUtZmllbGRzLWtleWJvYXJkLWV2ZW50cy5odG1sOgorICAgICAgICAqIGZhc3QvZm9ybXMv
ZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1maWVsZHMvZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1maWVs
ZHMta2V5Ym9hcmQtZXZlbnRzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2Zvcm1zL2Rh
dGV0aW1lbG9jYWwtbXVsdGlwbGUtZmllbGRzL2RhdGV0aW1lbG9jYWwtbXVsdGlwbGUtZmllbGRz
LWtleWJvYXJkLWV2ZW50cy5odG1sOgorCiAyMDEzLTAxLTE2ICBNT1JJVEEgSGFqaW1lICA8bW9y
cml0YUBnb29nbGUuY29tPgogCiAgICAgICAgIEF0dHIub3duZXJEb2N1bWVudCBzaG91bGQgY2hh
bmdlIGlmIGl0cyBwYXJlbnQncyBvd25lciBkaWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvZm9ybXMvZGF0ZS1tdWx0aXBsZS1maWVsZHMvZGF0ZS1tdWx0aXBsZS1maWVsZHMta2V5Ym9h
cmQtZXZlbnRzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2RhdGUtbXVsdGlwbGUtZmll
bGRzL2RhdGUtbXVsdGlwbGUtZmllbGRzLWtleWJvYXJkLWV2ZW50cy5odG1sCmluZGV4IDI5Y2Vi
NTIyZGMzZDYyZDMyZTdjMjdhYmFiNWFhZmMwYmFmN2UxYWYuLjNiNGU0ZWQyYWM2YzE1ZTE1NjVm
YzA0Zjk5MzFiMGM3ZDEzNzc2NjUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMv
ZGF0ZS1tdWx0aXBsZS1maWVsZHMvZGF0ZS1tdWx0aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZlbnRz
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9kYXRlLW11bHRpcGxlLWZpZWxkcy9k
YXRlLW11bHRpcGxlLWZpZWxkcy1rZXlib2FyZC1ldmVudHMuaHRtbApAQCAtMjE4LDcgKzIxOCw2
IEBAIGRlYnVnKCdUaGUgdGVzdHMgaW4gdGhpcyBibG9jayBmYWlsIG9uIHBsYXRmb3JtcyB3aXRo
b3V0IHRoZSBsYW5nLWF0dHJpYnV0ZS1hd2FyCiAvLyBCb3RoIG9mIHRoZSBsb2dpY2FsIG9yZGVy
IGFuZCB2aXN1YWwgb3JkZXIgYXJlOiBkZC9NTS95eXl5CiAvLyBJbml0aWFsIHN0YXRlOiAgICAg
ICAgICAgIFsyOF0vMDkvMjAxMgoga2V5RG93bigndXBBcnJvdycpOyAvLyAgICAtPiBbMjldLzA5
LzIwMTIKLWtleURvd24oJ3JpZ2h0QXJyb3cnKTsgLy8gLT4gWzAxXS8wOS8yMDEyCiBrZXlEb3du
KCcxJyk7IC8vICAgICAgICAgIC0+IFswMV0vMDkvMjAxMgogc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCdpbnB1dC52YWx1ZScsICcyMDEyLTA5LTAxJyk7CiBrZXlEb3duKCdcdCcpOyAvLyAgICAgICAg
IC0+IDAxL1swOV0vMjAxMgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9kYXRl
dGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy9kYXRldGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy1r
ZXlib2FyZC1ldmVudHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9kYXRl
dGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy9kYXRldGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy1r
ZXlib2FyZC1ldmVudHMtZXhwZWN0ZWQudHh0CmluZGV4IGNlMDYzOTdiNGYzN2VjNzBlODI3MDIx
OTJlMGNmYjhjYWJiYTYwMjkuLmRkZGEwYjliNDA2OGRmNDE2MDA3NDE0MDgyMzJiMWNjNTZjZTkx
NTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZGF0ZXRpbWVsb2NhbC1tdWx0
aXBsZS1maWVsZHMvZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZlbnRz
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2RhdGV0aW1lbG9jYWwt
bXVsdGlwbGUtZmllbGRzL2RhdGV0aW1lbG9jYWwtbXVsdGlwbGUtZmllbGRzLWtleWJvYXJkLWV2
ZW50cy1leHBlY3RlZC50eHQKQEAgLTU3LDYgKzU3LDcgQEAgVGhlIHRlc3RzIGluIHRoaXMgYmxv
Y2sgZmFpbCBvbiBwbGF0Zm9ybXMgd2l0aG91dCB0aGUgbGFuZy1hdHRyaWJ1dGUtYXdhcmUtZm9y
bS0KIFBBU1MgaW5wdXQudmFsdWUgaXMgIjIwMTItMDktMDFUMjM6MDAiCiBQQVNTIGlucHV0LnZh
bHVlIGlzICIyMDEyLTAyLTAxVDAxOjAwIgogUEFTUyBpbnB1dC52YWx1ZSBpcyAiMDAwOC0wMy0w
MVQwMTowMCIKK1BBU1MgaW5wdXQudmFsdWUgaXMgIjAwMDktMDQtMDJUMDA6NTkiCiA9PSBEaXNh
YmxlZC9yZWFkb25seSA9PQogUEFTUyBpbnB1dC52YWx1ZSBpcyAiMjAxMi0xMC0wOFQwMDowMCIK
IFBBU1MgaW5wdXQudmFsdWUgaXMgIjIwMTItMTEtMDhUMDA6MDAiCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2Zvcm1zL2RhdGV0aW1lbG9jYWwtbXVsdGlwbGUtZmllbGRzL2RhdGV0aW1l
bG9jYWwtbXVsdGlwbGUtZmllbGRzLWtleWJvYXJkLWV2ZW50cy5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9mb3Jtcy9kYXRldGltZWxvY2FsLW11bHRpcGxlLWZpZWxkcy9kYXRldGltZWxvY2FsLW11
bHRpcGxlLWZpZWxkcy1rZXlib2FyZC1ldmVudHMuaHRtbAppbmRleCAxYzE1YTE3OWNiYzM0Mjlm
OGU1Yzg4Y2FjYTA2MDM3NDNmMTNiYTRkLi5hNzQ0ZTc4MTU2Y2Q2M2M5NmYwMzExZjM5ODIwNWM5
YWFhZGFhMGIzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL2RhdGV0aW1lbG9j
YWwtbXVsdGlwbGUtZmllbGRzL2RhdGV0aW1lbG9jYWwtbXVsdGlwbGUtZmllbGRzLWtleWJvYXJk
LWV2ZW50cy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvZGF0ZXRpbWVsb2NhbC1t
dWx0aXBsZS1maWVsZHMvZGF0ZXRpbWVsb2NhbC1tdWx0aXBsZS1maWVsZHMta2V5Ym9hcmQtZXZl
bnRzLmh0bWwKQEAgLTI0OCw2ICsyNDgsMjAgQEAga2V5RG93bignOCcpOyAvLyAgICAgICAgICAg
ICAgICAtPiAwMTowMCAwMS8wOS9bMDAwOF0KIGtleURvd24oJ1x0JywgWydzaGlmdEtleSddKTsg
Ly8gLT4gMDE6MDAgMDEvWzA5XS8wMDA4CiBrZXlEb3duKCczJyk7IC8vICAgICAgICAgICAgICAg
IC0+IDAxOjAwIDAxLzAzL1swMDA4XQogc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCdpbnB1dC52YWx1
ZScsICcwMDA4LTAzLTAxVDAxOjAwJyk7CitrZXlEb3duKCdsZWZ0QXJyb3cnKTsgLy8gICAgICAg
IC0+IDAxOjAwIDAxL1swM10vMDAwOAora2V5RG93bignbGVmdEFycm93Jyk7IC8vICAgICAgICAt
PiAwMTowMCBbMDFdLzAzLzAwMDgKK2tleURvd24oJ2xlZnRBcnJvdycpOyAvLyAgICAgICAgLT4g
MDE6WzAwXSAwMS8wMy8wMDA4CitrZXlEb3duKCdsZWZ0QXJyb3cnKTsgLy8gICAgICAgIC0+IFsw
MV06MDAgMDEvMDMvMDAwOAora2V5RG93bignZG93bkFycm93Jyk7IC8vICAgICAgICAtPiBbMDBd
OjAwIDAxLzAzLzAwMDgKK2tleURvd24oJ3JpZ2h0QXJyb3cnKTsgLy8gICAgICAgLT4gMDA6WzAw
XSAwMS8wMy8wMDA4CitrZXlEb3duKCdkb3duQXJyb3cnKTsgLy8gICAgICAgIC0+IDAwOls1OV0g
MDEvMDMvMDAwOAora2V5RG93bigncmlnaHRBcnJvdycpOyAvLyAgICAgICAtPiAwMDo1OSBbMDFd
LzAzLzAwMDgKK2tleURvd24oJ3VwQXJyb3cnKTsgLy8gICAgICAgICAgLT4gMDA6NTkgWzAyXS8w
My8wMDA4CitrZXlEb3duKCdyaWdodEFycm93Jyk7IC8vICAgICAgIC0+IDAwOjU5IDAyL1swM10v
MDAwOAora2V5RG93bigndXBBcnJvdycpOyAvLyAgICAgICAgICAtPiAwMDo1OSAwMi9bMDRdLzAw
MDgKK2tleURvd24oJ3JpZ2h0QXJyb3cnKTsgLy8gICAgICAgLT4gMDA6NTkgMDIvMDQvWzAwMDhd
CitrZXlEb3duKCd1cEFycm93Jyk7IC8vICAgICAgICAgIC0+IDAwOjU5IDAyLzA0L1swMDA5XQor
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCdpbnB1dC52YWx1ZScsICcwMDA5LTA0LTAyVDAwOjU5Jyk7
CiBpbnB1dC5yZW1vdmVBdHRyaWJ1dGUoJ2xhbmcnKTsKIAogYmVnaW5UZXN0KCdEaXNhYmxlZC9y
ZWFkb25seScsICcyMDEyLTEwLTA4VDAwOjAwJyk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>