<?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>113265</bug_id>
          
          <creation_ts>2013-03-25 19:36:46 -0700</creation_ts>
          <short_desc>When a primary plugin is restarted, also start similar plugins</short_desc>
          <delta_ts>2013-03-26 17:16:06 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Plug-ins</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dean Jackson">dino</reporter>
          <assigned_to name="Dean Jackson">dino</assigned_to>
          <cc>esprehn+autocc</cc>
    
    <cc>jonlee</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>863285</commentid>
    <comment_count>0</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2013-03-25 19:36:46 -0700</bug_when>
    <thetext>We have the ability to detect if a page has a primary plugin, and restart such a plugin if it has been snapshotted. In this case, we should also restart similar plugins in the page (from the same origins and with the same types).

&lt;rdar://problem/13486852&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863295</commentid>
    <comment_count>1</comment_count>
      <attachid>194986</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2013-03-25 19:46:52 -0700</bug_when>
    <thetext>Created attachment 194986
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863296</commentid>
    <comment_count>2</comment_count>
      <attachid>194987</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2013-03-25 19:48:55 -0700</bug_when>
    <thetext>Created attachment 194987
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863993</commentid>
    <comment_count>3</comment_count>
      <attachid>195159</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2013-03-26 14:15:28 -0700</bug_when>
    <thetext>Created attachment 195159
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>863995</commentid>
    <comment_count>4</comment_count>
      <attachid>195159</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2013-03-26 14:20:40 -0700</bug_when>
    <thetext>Comment on attachment 195159
Patch

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

&gt; Source/WebKit2/WebProcess/WebProcess.h:288
&gt; +    String m_primaryPlugInPageOrigin;
&gt; +    String m_primaryPlugInOrigin;
&gt; +    String m_primaryPlugInMimeType;

Why is this per-process?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>864094</commentid>
    <comment_count>5</comment_count>
      <attachid>195185</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2013-03-26 16:33:00 -0700</bug_when>
    <thetext>Created attachment 195185
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>864095</commentid>
    <comment_count>6</comment_count>
      <attachid>195185</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2013-03-26 16:34:27 -0700</bug_when>
    <thetext>Comment on attachment 195185
Patch

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

&gt; Source/WebCore/ChangeLog:23
&gt; +        (WebCore):

I will remove this line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>864131</commentid>
    <comment_count>7</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2013-03-26 17:16:06 -0700</bug_when>
    <thetext>Committed r146946: &lt;http://trac.webkit.org/changeset/146946&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>194986</attachid>
            <date>2013-03-25 19:46:52 -0700</date>
            <delta_ts>2013-03-25 19:48:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-113265-20130326134234.patch</filename>
            <type>text/plain</type>
            <size>8710</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ2ODMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTFkMDQ1YjhlODhhYmMw
Yjk4ZjYwZjE3MmZhODVhMzEwNWUwYzYwZi4uOGY5YjRkYzhjMzFkZTQwYmI5NjViZjRhNTc5MDNh
MDE5YWEyODRlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI3IEBACiAyMDEzLTAzLTI1ICBEZWFu
IEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KIAorICAgICAgICBXaGVuIGEgcHJpbWFyeSBwbHVn
aW4gaXMgcmVzdGFydGVkLCBhbHNvIHN0YXJ0IHNpbWlsYXIgcGx1Z2lucworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEzMjY1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSWYgd2UgZGV0ZWN0IGEgcHJpbWFy
eSBwbHVnaW4gdGhhdCBpcyBzbmFwc2hvdHRlZCwgd2UgcmVzdGFydCBpdC4KKyAgICAgICAgV2hl
biB3ZSBkbyB0aGlzLCB3ZSBzaG91bGQgYWxzbyByZXN0YXJ0IGFueSBvdGhlciBwbHVnaW5zIHRo
YXQKKyAgICAgICAgbWF0Y2ggdGhlIHNhbWUgb3JpZ2luIGFuZCB0eXBlLiBUaGlzIGFsbG93cyBz
aXRlcyB3aXRoIGEgbG90IG9mCisgICAgICAgIChnZW9tZXRyaWNhbGx5KSBuZWFyYnkgcGx1Z2lu
cyB0byBoYXZlIHRoZW0gYWxsIHdvcmsuCisKKyAgICAgICAgVGVzdDogcGx1Z2lucy9zbmFwc2hv
dHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1kb21pbmFudC5odG1sCisKKyAgICAgICAgKiBodG1s
L0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJ
bkltYWdlRWxlbWVudDo6cmVzdGFydFNpbWlsYXJQbHVnSW5zKTogTmV3IG1ldGhvZCwgd2hpY2gg
Y29waWVkIHRoZQorICAgICAgICAgICAgZXhpc3RpbmcgY29kZSBmcm9tIHVzZXJEaWRDbGlja1Nu
YXBzaG90LgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkltYWdlRWxlbWVudDo6dXNlckRp
ZENsaWNrU25hcHNob3QpOiBNb3ZlIHRoZSBzaW1pbGFyIHBsdWdpbiBkZXRlY3Rpb24KKyAgICAg
ICAgICAgIG91dCBpbnRvIGFub3RoZXIgZnVuY3Rpb24gYW5kIGNhbGwgaXQuCisgICAgICAgIChX
ZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpzZXRJc1ByaW1hcnlTbmFwc2hvdHRlZFBs
dWdJbik6IENhbGwgcmVzdGFydFNpbWlsYXJQbHVnSW5zLgorICAgICAgICAqIGh0bWwvSFRNTFBs
dWdJbkltYWdlRWxlbWVudC5oOiBEZWNsYXJhdGlvbiBvZiByZXN0YXJ0U2ltaWxhclBsdWdJbnMu
CisKKzIwMTMtMDMtMjUgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCiAgICAgICAg
IFJlbW92ZSBhdXRvc3RhcnQgaGFzaGluZyBjb2RlIGZyb20gV2ViQ29yZQogICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEzMjQyCiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCmluZGV4IDU5MjA1YjEzNDhj
ZDlhNzg2M2Y0OGM5MTljMzE1ZjgzZDA1OTUwZjQuLjMzMTA0NTdkYzUyNTc1NDcxYmM4NWYyODI5
Y2IxMjM4NTlkMTg0MjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJ
bkltYWdlRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1h
Z2VFbGVtZW50LmNwcApAQCAtMzIzLDEyICszMjMsNiBAQCBzdGF0aWMgQXRvbWljU3RyaW5nIGNs
YXNzTmFtZUZvclNoYWRvd1Jvb3QoY29uc3QgTm9kZSogbm9kZSkKICAgICByZXR1cm4gcGx1Z0lu
TGFyZ2VTaXplQ2xhc3NOYW1lOwogfQogCi12b2lkIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnNl
dElzUHJpbWFyeVNuYXBzaG90dGVkUGx1Z0luKGJvb2wgaXNQcmltYXJ5U25hcHNob3R0ZWRQbHVn
SW4pCi17Ci0gICAgaWYgKGlzUHJpbWFyeVNuYXBzaG90dGVkUGx1Z0luKQotICAgICAgICByZXN0
YXJ0U25hcHNob3R0ZWRQbHVnSW4oKTsKLX0KLQogdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50
Ojp1cGRhdGVTbmFwc2hvdEluZm8oKQogewogICAgIFNoYWRvd1Jvb3QqIHJvb3QgPSB1c2VyQWdl
bnRTaGFkb3dSb290KCk7CkBAIC00MjEsMjAgKzQxNSwxNSBAQCBzdGF0aWMgdm9pZCBhZGRQbHVn
SW5zRnJvbU5vZGVMaXN0TWF0Y2hpbmdQbHVnSW5PcmlnaW4oSFRNTFBsdWdJbkltYWdlRWxlbWVu
dExpcwogICAgIH0KIH0KIAotdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojp1c2VyRGlkQ2xp
Y2tTbmFwc2hvdChQYXNzUmVmUHRyPE1vdXNlRXZlbnQ+IGV2ZW50KQordm9pZCBIVE1MUGx1Z0lu
SW1hZ2VFbGVtZW50OjpyZXN0YXJ0U2ltaWxhclBsdWdJbnMoKQogewotICAgIG1fcGVuZGluZ0Ns
aWNrRXZlbnRGcm9tU25hcHNob3QgPSBldmVudDsKKyAgICAvLyBSZXN0YXJ0IGFueSBvdGhlciBz
bmFwc2hvdHRlZCBwbHVnaW5zIGluIHRoZSBwYWdlIHdpdGggdGhlIHNhbWUgb3JpZ2luLiBOb3Rl
IHRoYXQgdGhleQorICAgIC8vIG1heSBiZSBpbiBkaWZmZXJlbnQgZnJhbWVzLCBzbyB0cmF2ZXJz
ZSBmcm9tIHRoZSB0b3Agb2YgdGhlIGRvY3VtZW50LgorCiAgICAgU3RyaW5nIHBsdWdJbk9yaWdp
biA9IG1fbG9hZGVkVXJsLmhvc3QoKTsKICAgICBTdHJpbmcgbWltZVR5cGUgPSBzZXJ2aWNlVHlw
ZSgpOwogICAgIGlmIChtaW1lVHlwZS5pc0VtcHR5KCkpCiAgICAgICAgIG1pbWVUeXBlID0gbWlt
ZVR5cGVGcm9tVVJMKG1fbG9hZGVkVXJsKTsKLSAgICBpZiAoZG9jdW1lbnQoKS0+cGFnZSgpICYm
ICFTY2hlbWVSZWdpc3RyeTo6c2hvdWxkVHJlYXRVUkxTY2hlbWVBc0xvY2FsKGRvY3VtZW50KCkt
PnBhZ2UoKS0+bWFpbkZyYW1lKCktPmRvY3VtZW50KCktPmJhc2VVUkwoKS5wcm90b2NvbCgpKSkK
LSAgICAgICAgZG9jdW1lbnQoKS0+cGFnZSgpLT5wbHVnSW5DbGllbnQoKS0+ZGlkU3RhcnRGcm9t
T3JpZ2luKGRvY3VtZW50KCktPnBhZ2UoKS0+bWFpbkZyYW1lKCktPmRvY3VtZW50KCktPmJhc2VV
UkwoKS5ob3N0KCksIHBsdWdJbk9yaWdpbiwgbWltZVR5cGUpOwotCi0gICAgcmVzdGFydFNuYXBz
aG90dGVkUGx1Z0luKCk7Ci0KLSAgICAvLyBSZXN0YXJ0IGFueSBvdGhlciBzbmFwc2hvdHRlZCBw
bHVnaW5zIGluIHRoZSBwYWdlIHdpdGggdGhlIHNhbWUgb3JpZ2luLiBOb3RlIHRoYXQgdGhleQot
ICAgIC8vIG1heSBiZSBpbiBkaWZmZXJlbnQgZnJhbWVzLCBzbyB0cmF2ZXJzZSBmcm9tIHRoZSB0
b3Agb2YgdGhlIGRvY3VtZW50LgogCiAgICAgSFRNTFBsdWdJbkltYWdlRWxlbWVudExpc3QgcGx1
Z2luc05lZWRpbmdSZXN0YXJ0OwogCkBAIC00NjIsNiArNDUxLDI4IEBAIHZvaWQgSFRNTFBsdWdJ
bkltYWdlRWxlbWVudDo6dXNlckRpZENsaWNrU25hcHNob3QoUGFzc1JlZlB0cjxNb3VzZUV2ZW50
PiBldmVudCkKICAgICB9CiB9CiAKK3ZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6dXNlckRp
ZENsaWNrU25hcHNob3QoUGFzc1JlZlB0cjxNb3VzZUV2ZW50PiBldmVudCkKK3sKKyAgICBtX3Bl
bmRpbmdDbGlja0V2ZW50RnJvbVNuYXBzaG90ID0gZXZlbnQ7CisgICAgU3RyaW5nIHBsdWdJbk9y
aWdpbiA9IG1fbG9hZGVkVXJsLmhvc3QoKTsKKyAgICBTdHJpbmcgbWltZVR5cGUgPSBzZXJ2aWNl
VHlwZSgpOworICAgIGlmIChtaW1lVHlwZS5pc0VtcHR5KCkpCisgICAgICAgIG1pbWVUeXBlID0g
bWltZVR5cGVGcm9tVVJMKG1fbG9hZGVkVXJsKTsKKyAgICBpZiAoZG9jdW1lbnQoKS0+cGFnZSgp
ICYmICFTY2hlbWVSZWdpc3RyeTo6c2hvdWxkVHJlYXRVUkxTY2hlbWVBc0xvY2FsKGRvY3VtZW50
KCktPnBhZ2UoKS0+bWFpbkZyYW1lKCktPmRvY3VtZW50KCktPmJhc2VVUkwoKS5wcm90b2NvbCgp
KSkKKyAgICAgICAgZG9jdW1lbnQoKS0+cGFnZSgpLT5wbHVnSW5DbGllbnQoKS0+ZGlkU3RhcnRG
cm9tT3JpZ2luKGRvY3VtZW50KCktPnBhZ2UoKS0+bWFpbkZyYW1lKCktPmRvY3VtZW50KCktPmJh
c2VVUkwoKS5ob3N0KCksIHBsdWdJbk9yaWdpbiwgbWltZVR5cGUpOworCisgICAgcmVzdGFydFNu
YXBzaG90dGVkUGx1Z0luKCk7CisgICAgcmVzdGFydFNpbWlsYXJQbHVnSW5zKCk7Cit9CisKK3Zv
aWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c2V0SXNQcmltYXJ5U25hcHNob3R0ZWRQbHVnSW4o
Ym9vbCBpc1ByaW1hcnlTbmFwc2hvdHRlZFBsdWdJbikKK3sKKyAgICBpZiAoaXNQcmltYXJ5U25h
cHNob3R0ZWRQbHVnSW4pIHsKKyAgICAgICAgcmVzdGFydFNuYXBzaG90dGVkUGx1Z0luKCk7Cisg
ICAgICAgIHJlc3RhcnRTaW1pbGFyUGx1Z0lucygpOworICAgIH0KK30KKwogdm9pZCBIVE1MUGx1
Z0luSW1hZ2VFbGVtZW50OjpyZXN0YXJ0U25hcHNob3R0ZWRQbHVnSW4oKQogewogICAgIGlmIChk
aXNwbGF5U3RhdGUoKSAhPSBSZXN0YXJ0aW5nV2l0aFBlbmRpbmdNb3VzZUNsaWNrKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaAppbmRleCBmMTVlODA0Nzg3
Nzk4YzRhOWVjOGYyMDdmZWQ5MTNiNjg5NzU3YjFkLi5iZWE1NDA4MWIyOTcyYjYyODQxY2Y2NTg2
ODNkMWM3NWFjYzNkY2Y4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVn
SW5JbWFnZUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFn
ZUVsZW1lbnQuaApAQCAtMTE4LDYgKzExOCw4IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIHN3YXBS
ZW5kZXJlclRpbWVyRmlyZWQoVGltZXI8SFRNTFBsdWdJbkltYWdlRWxlbWVudD4qKTsKIAorICAg
IHZvaWQgcmVzdGFydFNpbWlsYXJQbHVnSW5zKCk7CisKICAgICB2aXJ0dWFsIGJvb2wgaXNQbHVn
SW5JbWFnZUVsZW1lbnQoKSBjb25zdCBPVkVSUklERSB7IHJldHVybiB0cnVlOyB9CiAKICAgICBi
b29sIG1fbmVlZHNXaWRnZXRVcGRhdGU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTg5MzlkZjcyY2Q5NjQ5ZDNlMTViYmVh
ZWIxNjg1ODQzZWM2ODNhMy4uYzdlNTUxODYxYzhjMDA4ZmUzOWE4NzkwOTA4NjQyZGVhMDY0MjUz
NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEzLTAzLTI1ICBEZWFuIEphY2tzb24gIDxkaW5v
QGFwcGxlLmNvbT4KKworICAgICAgICBXaGVuIGEgcHJpbWFyeSBwbHVnaW4gaXMgcmVzdGFydGVk
LCBhbHNvIHN0YXJ0IHNpbWlsYXIgcGx1Z2lucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEzMjY1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVGVzdCB0aGF0IGhhcyBvbmUgYmlnIHBsdWdpbiAodGhhdCBz
aG91bGQgYmUgZGV0ZWN0ZWQgYXMgdGhlIHByaW1hcnkpCisgICAgICAgIGFuZCB0aGVuIGEgZmV3
IHNtYWxsZXIgdmVyc2lvbnMgKHdoaWNoIHNob3VsZCBhdXRvc3RhcnQgYWxvbmcgd2l0aCB0aGUg
cHJpbWFyeSkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvc25hcHNob3R0
aW5nL2F1dG9wbGF5LXNpbWlsYXItdG8tZG9taW5hbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBwbHVnaW5zL3NuYXBzaG90dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50
Lmh0bWw6IEFkZGVkLgorCiAyMDEzLTAzLTI1ICBQZXRlciBLYXN0aW5nICA8cGthc3RpbmdAZ29v
Z2xlLmNvbT4KIAogICAgICAgICBbY2hyb21pdW1dIFJlYmFzZWxpbmluZywgZXRjLgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3NuYXBzaG90dGluZy9h
dXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy13azIvcGx1Z2lucy9zbmFwc2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1k
b21pbmFudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzJmNjI0YWIzM2IzZWMwY2UyYjM3ODVj
Y2ViODAxZGVmOGE2YWRlZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy13azIvcGx1Z2lucy9zbmFwc2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1kb21pbmFu
dC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyNCBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA3ODV4
MTA1NgorICBSZW5kZXJWaWV3IGF0ICgwLDApIHNpemUgNzg1eDYwMAorbGF5ZXIgYXQgKDAsMCkg
c2l6ZSA3ODV4MTA1NgorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA3ODV4MTA1
NgorICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDgpIHNpemUgNzY5eDEwMzIKKyAgICAgIFJl
bmRlckJsb2NrIHtQfSBhdCAoMCwwKSBzaXplIDc2OXgxOAorICAgICAgICBSZW5kZXJUZXh0IHsj
dGV4dH0gYXQgKDAsMCkgc2l6ZSA3NTB4MTgKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3
aWR0aCA3NTA6ICJUaGUgZG9taW5hbnQgcGx1Z2luIHNob3VsZCBwbGF5IGF1dG9tYXRpY2FsbHks
IGFuZCB0cmlnZ2VyIGFsbCB0aGUgb3RoZXJzIHRvIHBsYXkgYXMgd2VsbCwgc2luY2UgdGhleSBh
cmUgdGhlIHNhbWUgb3JpZ2luLiIKKyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwzNCkgc2l6
ZSA3Njl4NjAwCisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAor
ICAgICAgUmVuZGVyQmxvY2sge1B9IGF0ICgwLDY1MCkgc2l6ZSA3Njl4MjAwCisgICAgICAgIFJl
bmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAorICAgICAgUmVuZGVyQmxvY2sge1B9
IGF0ICgwLDg2Nikgc2l6ZSA3Njl4MTAwCisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAo
MCwwKSBzaXplIDB4MAorICAgICAgUmVuZGVyQmxvY2sge1B9IGF0ICgwLDk4Mikgc2l6ZSA3Njl4
NTAKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMHgwCitsYXllciBh
dCAoOCw0Mikgc2l6ZSA2MDB4NjAwCisgIFJlbmRlckVtYmVkZGVkT2JqZWN0IHtFTUJFRH0gYXQg
KDAsMCkgc2l6ZSA2MDB4NjAwCitsYXllciBhdCAoOCw2NTgpIHNpemUgMjAweDIwMAorICBSZW5k
ZXJFbWJlZGRlZE9iamVjdCB7RU1CRUR9IGF0ICgwLDApIHNpemUgMjAweDIwMAorbGF5ZXIgYXQg
KDgsODc0KSBzaXplIDEwMHgxMDAKKyAgUmVuZGVyRW1iZWRkZWRPYmplY3Qge0VNQkVEfSBhdCAo
MCwwKSBzaXplIDEwMHgxMDAKK2xheWVyIGF0ICg4LDk5MCkgc2l6ZSA1MHg1MAorICBSZW5kZXJF
bWJlZGRlZE9iamVjdCB7RU1CRUR9IGF0ICgwLDApIHNpemUgNTB4NTAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsdWdpbnMvc25hcHNob3R0aW5nL2F1dG9wbGF5LXNpbWlsYXItdG8tZG9taW5h
bnQuaHRtbCBiL0xheW91dFRlc3RzL3BsdWdpbnMvc25hcHNob3R0aW5nL2F1dG9wbGF5LXNpbWls
YXItdG8tZG9taW5hbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43YzRlMTMzY2UxMDk4YTA2N2NlMTI4ZWRl
MmMxOGI5MjBjMmRjMGNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGx1Z2lucy9z
bmFwc2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1kb21pbmFudC5odG1sCkBAIC0wLDAgKzEs
MjMgQEAKKzxwPlRoZSBkb21pbmFudCBwbHVnaW4gc2hvdWxkIHBsYXkgYXV0b21hdGljYWxseSwg
YW5kIHRyaWdnZXIgYWxsIHRoZSBvdGhlcnMgdG8gcGxheSBhcyB3ZWxsLCBzaW5jZSB0aGV5IGFy
ZSB0aGUgc2FtZSBvcmlnaW4uPC9wPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikg
eworICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0UGx1Z0luU25hcHNob3R0aW5nRW5h
YmxlZCh0cnVlKTsKKyAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldE1heGltdW1QbHVn
SW5TbmFwc2hvdEF0dGVtcHRzKDApOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwor
ICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgeworICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURv
bmUoKTsKKyAgICB9LCA1MDApOworfQorPC9zY3JpcHQ+Cis8cD4KKzxlbWJlZCBzcmM9Ii4uL3Jl
c291cmNlcy9zaW1wbGVfYmxhbmsuc3dmIiB3aWR0aD0iNjAwIiBoZWlnaHQ9IjYwMCI+PC9lbWJl
ZD4KKzwvcD4KKzxwPgorPGVtYmVkIHNyYz0iLi4vcmVzb3VyY2VzL3NpbXBsZV9ibGFuay5zd2Yi
IHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIj48L2VtYmVkPgorPC9wPgorPHA+Cis8ZW1iZWQgc3Jj
PSIuLi9yZXNvdXJjZXMvc2ltcGxlX2JsYW5rLnN3ZiIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMDAi
PjwvZW1iZWQ+Cis8L3A+Cis8cD4KKzxlbWJlZCBzcmM9Ii4uL3Jlc291cmNlcy9zaW1wbGVfYmxh
bmsuc3dmIiB3aWR0aD0iNTAiIGhlaWdodD0iNTAiPjwvZW1iZWQ+Cis8L3A+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>194987</attachid>
            <date>2013-03-25 19:48:55 -0700</date>
            <delta_ts>2013-03-26 14:15:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-113265-20130326134437.patch</filename>
            <type>text/plain</type>
            <size>8747</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ2ODMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTFkMDQ1YjhlODhhYmMw
Yjk4ZjYwZjE3MmZhODVhMzEwNWUwYzYwZi4uMWMzMTU1ODNiMzdjNDZhMTA3ZTMyMmY3ZWM4NGFi
ZDc3NGVkMjdlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI3IEBACiAyMDEzLTAzLTI1ICBEZWFu
IEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KIAorICAgICAgICBXaGVuIGEgcHJpbWFyeSBwbHVn
aW4gaXMgcmVzdGFydGVkLCBhbHNvIHN0YXJ0IHNpbWlsYXIgcGx1Z2lucworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEzMjY1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSWYgd2UgZGV0ZWN0IGEgcHJpbWFy
eSBwbHVnaW4gdGhhdCBpcyBzbmFwc2hvdHRlZCwgd2UgaW1tZWRpYXRlbHkgcmVzdGFydCBpdC4K
KyAgICAgICAgV2hlbiB0aGlzIGhhcHBlbnMsIHdlIHNob3VsZCBhbHNvIHJlc3RhcnQgYW55IG90
aGVyIHBsdWdpbnMgdGhhdAorICAgICAgICBtYXRjaCB0aGUgc2FtZSBvcmlnaW4gYW5kIHR5cGUu
IFRoaXMgYWxsb3dzIHNpdGVzIHdpdGggYSBsb3Qgb2YKKyAgICAgICAgKGdlb21ldHJpY2FsbHkp
IG5lYXJieSBwbHVnaW5zIHRvIGJlaGF2ZSBhcyBpZiB0aGV5IGFyZSBhIHNpbmdsZSBiaWcgcGx1
Z2luLgorCisgICAgICAgIFRlc3Q6IHBsdWdpbnMvc25hcHNob3R0aW5nL2F1dG9wbGF5LXNpbWls
YXItdG8tZG9taW5hbnQuaHRtbAorCisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnJlc3Rh
cnRTaW1pbGFyUGx1Z0lucyk6IE5ldyBtZXRob2QsIHdoaWNoIGNvcGllZCB0aGUKKyAgICAgICAg
ICAgIGV4aXN0aW5nIGNvZGUgZnJvbSB1c2VyRGlkQ2xpY2tTbmFwc2hvdC4KKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnVzZXJEaWRDbGlja1NuYXBzaG90KTogTW92
ZSB0aGUgc2ltaWxhciBwbHVnaW4gZGV0ZWN0aW9uCisgICAgICAgICAgICBvdXQgaW50byBhbm90
aGVyIGZ1bmN0aW9uIGFuZCBjYWxsIGl0LgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbklt
YWdlRWxlbWVudDo6c2V0SXNQcmltYXJ5U25hcHNob3R0ZWRQbHVnSW4pOiBDYWxsIHJlc3RhcnRT
aW1pbGFyUGx1Z0lucy4KKyAgICAgICAgKiBodG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaDog
RGVjbGFyYXRpb24gb2YgcmVzdGFydFNpbWlsYXJQbHVnSW5zLgorCisyMDEzLTAzLTI1ICBEZWFu
IEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKwogICAgICAgICBSZW1vdmUgYXV0b3N0YXJ0IGhh
c2hpbmcgY29kZSBmcm9tIFdlYkNvcmUKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTExMzI0MgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1
Z0luSW1hZ2VFbGVtZW50LmNwcAppbmRleCA1OTIwNWIxMzQ4Y2Q5YTc4NjNmNDhjOTE5YzMxNWY4
M2QwNTk1MGY0Li4zMzEwNDU3ZGM1MjU3NTQ3MWJjODVmMjgyOWNiMTIzODU5ZDE4NDI2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAKQEAgLTMy
MywxMiArMzIzLDYgQEAgc3RhdGljIEF0b21pY1N0cmluZyBjbGFzc05hbWVGb3JTaGFkb3dSb290
KGNvbnN0IE5vZGUqIG5vZGUpCiAgICAgcmV0dXJuIHBsdWdJbkxhcmdlU2l6ZUNsYXNzTmFtZTsK
IH0KIAotdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpzZXRJc1ByaW1hcnlTbmFwc2hvdHRl
ZFBsdWdJbihib29sIGlzUHJpbWFyeVNuYXBzaG90dGVkUGx1Z0luKQotewotICAgIGlmIChpc1By
aW1hcnlTbmFwc2hvdHRlZFBsdWdJbikKLSAgICAgICAgcmVzdGFydFNuYXBzaG90dGVkUGx1Z0lu
KCk7Ci19Ci0KIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6dXBkYXRlU25hcHNob3RJbmZv
KCkKIHsKICAgICBTaGFkb3dSb290KiByb290ID0gdXNlckFnZW50U2hhZG93Um9vdCgpOwpAQCAt
NDIxLDIwICs0MTUsMTUgQEAgc3RhdGljIHZvaWQgYWRkUGx1Z0luc0Zyb21Ob2RlTGlzdE1hdGNo
aW5nUGx1Z0luT3JpZ2luKEhUTUxQbHVnSW5JbWFnZUVsZW1lbnRMaXMKICAgICB9CiB9CiAKLXZv
aWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6dXNlckRpZENsaWNrU25hcHNob3QoUGFzc1JlZlB0
cjxNb3VzZUV2ZW50PiBldmVudCkKK3ZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVzdGFy
dFNpbWlsYXJQbHVnSW5zKCkKIHsKLSAgICBtX3BlbmRpbmdDbGlja0V2ZW50RnJvbVNuYXBzaG90
ID0gZXZlbnQ7CisgICAgLy8gUmVzdGFydCBhbnkgb3RoZXIgc25hcHNob3R0ZWQgcGx1Z2lucyBp
biB0aGUgcGFnZSB3aXRoIHRoZSBzYW1lIG9yaWdpbi4gTm90ZSB0aGF0IHRoZXkKKyAgICAvLyBt
YXkgYmUgaW4gZGlmZmVyZW50IGZyYW1lcywgc28gdHJhdmVyc2UgZnJvbSB0aGUgdG9wIG9mIHRo
ZSBkb2N1bWVudC4KKwogICAgIFN0cmluZyBwbHVnSW5PcmlnaW4gPSBtX2xvYWRlZFVybC5ob3N0
KCk7CiAgICAgU3RyaW5nIG1pbWVUeXBlID0gc2VydmljZVR5cGUoKTsKICAgICBpZiAobWltZVR5
cGUuaXNFbXB0eSgpKQogICAgICAgICBtaW1lVHlwZSA9IG1pbWVUeXBlRnJvbVVSTChtX2xvYWRl
ZFVybCk7Ci0gICAgaWYgKGRvY3VtZW50KCktPnBhZ2UoKSAmJiAhU2NoZW1lUmVnaXN0cnk6OnNo
b3VsZFRyZWF0VVJMU2NoZW1lQXNMb2NhbChkb2N1bWVudCgpLT5wYWdlKCktPm1haW5GcmFtZSgp
LT5kb2N1bWVudCgpLT5iYXNlVVJMKCkucHJvdG9jb2woKSkpCi0gICAgICAgIGRvY3VtZW50KCkt
PnBhZ2UoKS0+cGx1Z0luQ2xpZW50KCktPmRpZFN0YXJ0RnJvbU9yaWdpbihkb2N1bWVudCgpLT5w
YWdlKCktPm1haW5GcmFtZSgpLT5kb2N1bWVudCgpLT5iYXNlVVJMKCkuaG9zdCgpLCBwbHVnSW5P
cmlnaW4sIG1pbWVUeXBlKTsKLQotICAgIHJlc3RhcnRTbmFwc2hvdHRlZFBsdWdJbigpOwotCi0g
ICAgLy8gUmVzdGFydCBhbnkgb3RoZXIgc25hcHNob3R0ZWQgcGx1Z2lucyBpbiB0aGUgcGFnZSB3
aXRoIHRoZSBzYW1lIG9yaWdpbi4gTm90ZSB0aGF0IHRoZXkKLSAgICAvLyBtYXkgYmUgaW4gZGlm
ZmVyZW50IGZyYW1lcywgc28gdHJhdmVyc2UgZnJvbSB0aGUgdG9wIG9mIHRoZSBkb2N1bWVudC4K
IAogICAgIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnRMaXN0IHBsdWdpbnNOZWVkaW5nUmVzdGFydDsK
IApAQCAtNDYyLDYgKzQ1MSwyOCBAQCB2b2lkIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnVzZXJE
aWRDbGlja1NuYXBzaG90KFBhc3NSZWZQdHI8TW91c2VFdmVudD4gZXZlbnQpCiAgICAgfQogfQog
Cit2b2lkIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnVzZXJEaWRDbGlja1NuYXBzaG90KFBhc3NS
ZWZQdHI8TW91c2VFdmVudD4gZXZlbnQpCit7CisgICAgbV9wZW5kaW5nQ2xpY2tFdmVudEZyb21T
bmFwc2hvdCA9IGV2ZW50OworICAgIFN0cmluZyBwbHVnSW5PcmlnaW4gPSBtX2xvYWRlZFVybC5o
b3N0KCk7CisgICAgU3RyaW5nIG1pbWVUeXBlID0gc2VydmljZVR5cGUoKTsKKyAgICBpZiAobWlt
ZVR5cGUuaXNFbXB0eSgpKQorICAgICAgICBtaW1lVHlwZSA9IG1pbWVUeXBlRnJvbVVSTChtX2xv
YWRlZFVybCk7CisgICAgaWYgKGRvY3VtZW50KCktPnBhZ2UoKSAmJiAhU2NoZW1lUmVnaXN0cnk6
OnNob3VsZFRyZWF0VVJMU2NoZW1lQXNMb2NhbChkb2N1bWVudCgpLT5wYWdlKCktPm1haW5GcmFt
ZSgpLT5kb2N1bWVudCgpLT5iYXNlVVJMKCkucHJvdG9jb2woKSkpCisgICAgICAgIGRvY3VtZW50
KCktPnBhZ2UoKS0+cGx1Z0luQ2xpZW50KCktPmRpZFN0YXJ0RnJvbU9yaWdpbihkb2N1bWVudCgp
LT5wYWdlKCktPm1haW5GcmFtZSgpLT5kb2N1bWVudCgpLT5iYXNlVVJMKCkuaG9zdCgpLCBwbHVn
SW5PcmlnaW4sIG1pbWVUeXBlKTsKKworICAgIHJlc3RhcnRTbmFwc2hvdHRlZFBsdWdJbigpOwor
ICAgIHJlc3RhcnRTaW1pbGFyUGx1Z0lucygpOworfQorCit2b2lkIEhUTUxQbHVnSW5JbWFnZUVs
ZW1lbnQ6OnNldElzUHJpbWFyeVNuYXBzaG90dGVkUGx1Z0luKGJvb2wgaXNQcmltYXJ5U25hcHNo
b3R0ZWRQbHVnSW4pCit7CisgICAgaWYgKGlzUHJpbWFyeVNuYXBzaG90dGVkUGx1Z0luKSB7Cisg
ICAgICAgIHJlc3RhcnRTbmFwc2hvdHRlZFBsdWdJbigpOworICAgICAgICByZXN0YXJ0U2ltaWxh
clBsdWdJbnMoKTsKKyAgICB9Cit9CisKIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVz
dGFydFNuYXBzaG90dGVkUGx1Z0luKCkKIHsKICAgICBpZiAoZGlzcGxheVN0YXRlKCkgIT0gUmVz
dGFydGluZ1dpdGhQZW5kaW5nTW91c2VDbGljaykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
UGx1Z0luSW1hZ2VFbGVtZW50LmgKaW5kZXggZjE1ZTgwNDc4Nzc5OGM0YTllYzhmMjA3ZmVkOTEz
YjY4OTc1N2IxZC4uYmVhNTQwODFiMjk3MmI2Mjg0MWNmNjU4NjgzZDFjNzVhY2MzZGNmOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmgKQEAgLTExOCw2
ICsxMTgsOCBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBzd2FwUmVuZGVyZXJUaW1lckZpcmVkKFRp
bWVyPEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ+Kik7CiAKKyAgICB2b2lkIHJlc3RhcnRTaW1pbGFy
UGx1Z0lucygpOworCiAgICAgdmlydHVhbCBib29sIGlzUGx1Z0luSW1hZ2VFbGVtZW50KCkgY29u
c3QgT1ZFUlJJREUgeyByZXR1cm4gdHJ1ZTsgfQogCiAgICAgYm9vbCBtX25lZWRzV2lkZ2V0VXBk
YXRlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCmluZGV4IDk4OTM5ZGY3MmNkOTY0OWQzZTE1YmJlYWViMTY4NTg0M2VjNjgzYTMuLmM3
ZTU1MTg2MWM4YzAwOGZlMzlhODc5MDkwODY0MmRlYTA2NDI1MzQgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
NiBAQAorMjAxMy0wMy0yNSAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAg
ICAgV2hlbiBhIHByaW1hcnkgcGx1Z2luIGlzIHJlc3RhcnRlZCwgYWxzbyBzdGFydCBzaW1pbGFy
IHBsdWdpbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTExMzI2NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFRlc3QgdGhhdCBoYXMgb25lIGJpZyBwbHVnaW4gKHRoYXQgc2hvdWxkIGJlIGRldGVjdGVkIGFz
IHRoZSBwcmltYXJ5KQorICAgICAgICBhbmQgdGhlbiBhIGZldyBzbWFsbGVyIHZlcnNpb25zICh3
aGljaCBzaG91bGQgYXV0b3N0YXJ0IGFsb25nIHdpdGggdGhlIHByaW1hcnkpLgorCisgICAgICAg
ICogcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3NuYXBzaG90dGluZy9hdXRvcGxheS1zaW1pbGFy
LXRvLWRvbWluYW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGx1Z2lucy9zbmFw
c2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1kb21pbmFudC5odG1sOiBBZGRlZC4KKwogMjAx
My0wMy0yNSAgUGV0ZXIgS2FzdGluZyAgPHBrYXN0aW5nQGdvb2dsZS5jb20+CiAKICAgICAgICAg
W2Nocm9taXVtXSBSZWJhc2VsaW5pbmcsIGV0Yy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy13azIvcGx1Z2lucy9zbmFwc2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1k
b21pbmFudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL3BsdWdp
bnMvc25hcHNob3R0aW5nL2F1dG9wbGF5LXNpbWlsYXItdG8tZG9taW5hbnQtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjcyZjYyNGFiMzNiM2VjMGNlMmIzNzg1Y2NlYjgwMWRlZjhhNmFkZWQKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvc25h
cHNob3R0aW5nL2F1dG9wbGF5LXNpbWlsYXItdG8tZG9taW5hbnQtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMjQgQEAKK2xheWVyIGF0ICgwLDApIHNpemUgNzg1eDEwNTYKKyAgUmVuZGVyVmlldyBh
dCAoMCwwKSBzaXplIDc4NXg2MDAKK2xheWVyIGF0ICgwLDApIHNpemUgNzg1eDEwNTYKKyAgUmVu
ZGVyQmxvY2sge0hUTUx9IGF0ICgwLDApIHNpemUgNzg1eDEwNTYKKyAgICBSZW5kZXJCb2R5IHtC
T0RZfSBhdCAoOCw4KSBzaXplIDc2OXgxMDMyCisgICAgICBSZW5kZXJCbG9jayB7UH0gYXQgKDAs
MCkgc2l6ZSA3Njl4MTgKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUg
NzUweDE4CisgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNzUwOiAiVGhlIGRvbWlu
YW50IHBsdWdpbiBzaG91bGQgcGxheSBhdXRvbWF0aWNhbGx5LCBhbmQgdHJpZ2dlciBhbGwgdGhl
IG90aGVycyB0byBwbGF5IGFzIHdlbGwsIHNpbmNlIHRoZXkgYXJlIHRoZSBzYW1lIG9yaWdpbi4i
CisgICAgICBSZW5kZXJCbG9jayB7UH0gYXQgKDAsMzQpIHNpemUgNzY5eDYwMAorICAgICAgICBS
ZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAweDAKKyAgICAgIFJlbmRlckJsb2NrIHtQ
fSBhdCAoMCw2NTApIHNpemUgNzY5eDIwMAorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQg
KDAsMCkgc2l6ZSAweDAKKyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCw4NjYpIHNpemUgNzY5
eDEwMAorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAweDAKKyAgICAg
IFJlbmRlckJsb2NrIHtQfSBhdCAoMCw5ODIpIHNpemUgNzY5eDUwCisgICAgICAgIFJlbmRlclRl
eHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAorbGF5ZXIgYXQgKDgsNDIpIHNpemUgNjAweDYw
MAorICBSZW5kZXJFbWJlZGRlZE9iamVjdCB7RU1CRUR9IGF0ICgwLDApIHNpemUgNjAweDYwMAor
bGF5ZXIgYXQgKDgsNjU4KSBzaXplIDIwMHgyMDAKKyAgUmVuZGVyRW1iZWRkZWRPYmplY3Qge0VN
QkVEfSBhdCAoMCwwKSBzaXplIDIwMHgyMDAKK2xheWVyIGF0ICg4LDg3NCkgc2l6ZSAxMDB4MTAw
CisgIFJlbmRlckVtYmVkZGVkT2JqZWN0IHtFTUJFRH0gYXQgKDAsMCkgc2l6ZSAxMDB4MTAwCits
YXllciBhdCAoOCw5OTApIHNpemUgNTB4NTAKKyAgUmVuZGVyRW1iZWRkZWRPYmplY3Qge0VNQkVE
fSBhdCAoMCwwKSBzaXplIDUweDUwCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbHVnaW5zL3Nu
YXBzaG90dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50Lmh0bWwgYi9MYXlvdXRUZXN0
cy9wbHVnaW5zL3NuYXBzaG90dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50Lmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uN2M0ZTEzM2NlMTA5OGEwNjdjZTEyOGVkZTJjMThiOTIwYzJkYzBjYwotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsdWdpbnMvc25hcHNob3R0aW5nL2F1dG9wbGF5
LXNpbWlsYXItdG8tZG9taW5hbnQuaHRtbApAQCAtMCwwICsxLDIzIEBACis8cD5UaGUgZG9taW5h
bnQgcGx1Z2luIHNob3VsZCBwbGF5IGF1dG9tYXRpY2FsbHksIGFuZCB0cmlnZ2VyIGFsbCB0aGUg
b3RoZXJzIHRvIHBsYXkgYXMgd2VsbCwgc2luY2UgdGhleSBhcmUgdGhlIHNhbWUgb3JpZ2luLjwv
cD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB3aW5kb3cuaW50ZXJu
YWxzLnNldHRpbmdzLnNldFBsdWdJblNuYXBzaG90dGluZ0VuYWJsZWQodHJ1ZSk7CisgICAgd2lu
ZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRNYXhpbXVtUGx1Z0luU25hcHNob3RBdHRlbXB0cygw
KTsKKyAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICBzZXRUaW1lb3V0KGZ1bmN0
aW9uICgpIHsKKyAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgfSwgNTAwKTsK
K30KKzwvc2NyaXB0PgorPHA+Cis8ZW1iZWQgc3JjPSIuLi9yZXNvdXJjZXMvc2ltcGxlX2JsYW5r
LnN3ZiIgd2lkdGg9IjYwMCIgaGVpZ2h0PSI2MDAiPjwvZW1iZWQ+Cis8L3A+Cis8cD4KKzxlbWJl
ZCBzcmM9Ii4uL3Jlc291cmNlcy9zaW1wbGVfYmxhbmsuc3dmIiB3aWR0aD0iMjAwIiBoZWlnaHQ9
IjIwMCI+PC9lbWJlZD4KKzwvcD4KKzxwPgorPGVtYmVkIHNyYz0iLi4vcmVzb3VyY2VzL3NpbXBs
ZV9ibGFuay5zd2YiIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIj48L2VtYmVkPgorPC9wPgorPHA+
Cis8ZW1iZWQgc3JjPSIuLi9yZXNvdXJjZXMvc2ltcGxlX2JsYW5rLnN3ZiIgd2lkdGg9IjUwIiBo
ZWlnaHQ9IjUwIj48L2VtYmVkPgorPC9wPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>195159</attachid>
            <date>2013-03-26 14:15:28 -0700</date>
            <delta_ts>2013-03-26 16:32:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-113265-20130327081109.patch</filename>
            <type>text/plain</type>
            <size>19711</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ2ODMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTFkMDQ1YjhlODhhYmMw
Yjk4ZjYwZjE3MmZhODVhMzEwNWUwYzYwZi4uNzc3NThkNjU3MzVkYWQxNzJhZmIwNWNhYzUzZTg4
YjI3NDBjYTY0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEzLTAzLTI2ICBEZWFu
IEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKworICAgICAgICBXaGVuIGEgcHJpbWFyeSBwbHVn
aW4gaXMgcmVzdGFydGVkLCBhbHNvIHN0YXJ0IHNpbWlsYXIgcGx1Z2lucworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEzMjY1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSWYgd2UgZGV0ZWN0IGEgcHJpbWFy
eSBwbHVnaW4gdGhhdCBpcyBzbmFwc2hvdHRlZCwgd2UgaW1tZWRpYXRlbHkgcmVzdGFydCBpdC4K
KyAgICAgICAgV2hlbiB0aGlzIGhhcHBlbnMsIHdlIHNob3VsZCBhbHNvIHJlc3RhcnQgYW55IG90
aGVyIHBsdWdpbnMgdGhhdAorICAgICAgICBtYXRjaCB0aGUgc2FtZSBvcmlnaW4gYW5kIHR5cGUu
IFRoaXMgYWxsb3dzIHNpdGVzIHdpdGggYSBsb3Qgb2YKKyAgICAgICAgKGdlb21ldHJpY2FsbHkp
IG5lYXJieSBwbHVnaW5zIHRvIGJlaGF2ZSBhcyBpZiB0aGV5IGFyZSBhIHNpbmdsZSBiaWcgcGx1
Z2luLgorCisgICAgICAgIFRlc3RzOiBwbHVnaW5zL3NuYXBzaG90dGluZy9hdXRvcGxheS1zaW1p
bGFyLXRvLWRvbWluYW50LWFmdGVyLWRlbGF5Lmh0bWwKKyAgICAgICAgICAgICAgIHBsdWdpbnMv
c25hcHNob3R0aW5nL2F1dG9wbGF5LXNpbWlsYXItdG8tZG9taW5hbnQuaHRtbAorCisgICAgICAg
ICogV2ViQ29yZS5leHAuaW46IEV4cG9ydCBtaW1lVHlwZUZyb21VUkwuCisgICAgICAgICogaHRt
bC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmFkZFBsdWdJ
bnNGcm9tTm9kZUxpc3RNYXRjaGluZ1BsdWdJbk9yaWdpbik6IFVzZSBsb2FkZWRNaW1lVHlwZSBo
ZWxwZXIuCisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpyZXN0YXJ0
U2ltaWxhclBsdWdJbnMpOiBOZXcgbWV0aG9kLCB3aGljaCBjb3BpZWQgdGhlCisgICAgICAgICAg
ICBleGlzdGluZyBjb2RlIGZyb20gdXNlckRpZENsaWNrU25hcHNob3QuCisgICAgICAgIChXZWJD
b3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojp1c2VyRGlkQ2xpY2tTbmFwc2hvdCk6IE1vdmUg
dGhlIHNpbWlsYXIgcGx1Z2luIGRldGVjdGlvbgorICAgICAgICAgICAgb3V0IGludG8gYW5vdGhl
ciBmdW5jdGlvbiBhbmQgY2FsbCBpdC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c2V0SXNQcmltYXJ5U25hcHNob3R0ZWRQbHVn
SW4pOiBDYWxsIHJlc3RhcnRTaW1pbGFyUGx1Z0lucy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQ
bHVnSW5JbWFnZUVsZW1lbnQ6OnN1YmZyYW1lTG9hZGVyV2lsbENyZWF0ZVBsdWdJbik6IFVzZSBs
b2FkZWRNaW1lVHlwZSBoZWxwZXIuCisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVt
ZW50Lmg6IERlY2xhcmF0aW9uIG9mIHJlc3RhcnRTaW1pbGFyUGx1Z0lucy4KKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmxvYWRlZE1pbWVUeXBlKTogTmV3IGhlbHBl
ciBtZXRob2Qgc2luY2UgdGhpcworICAgICAgICAgICAgY29kZSB3YXMgYmVpbmcgb2Z0ZW4gZHVw
bGljYXRlZC4KKwogMjAxMy0wMy0yNSAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CiAK
ICAgICAgICAgUmVtb3ZlIGF1dG9zdGFydCBoYXNoaW5nIGNvZGUgZnJvbSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VM
b2cKaW5kZXggYWNiMzljNTBiMjJiOWI3ZWUzMTViZTc0NzVlZjJjM2E4ZWVjZDhiMy4uYzBhZmRj
NDFjMDcyMjdjZTYwMDg4NDc4YWM1MTg4YmUxMWJmM2JhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDIyIEBACisyMDEzLTAzLTI2ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKworICAg
ICAgICBXaGVuIGEgcHJpbWFyeSBwbHVnaW4gaXMgcmVzdGFydGVkLCBhbHNvIHN0YXJ0IHNpbWls
YXIgcGx1Z2lucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTEzMjY1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgUmVtZW1iZXIgdGhlIG9yaWdpbiBvZiB0aGUgcHJpbWFyeSBwbHVnaW4sIHNvIHRoYXQgd2Ug
Y2FuCisgICAgICAgIGF1dG9zdGFydCBhbnl0aGluZyB0aGF0IGlzIHNpbWlsYXIuCisKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OmRldGVybWluZVByaW1hcnlTbmFwc2hvdHRlZFBsdWdJbik6IFRlbGwgdGhlIFdlYlBy
b2Nlc3Mgd2hhdCB0aGUgcHJpbWFyeSBwbHVnaW4gd2FzLgorICAgICAgICAoV2ViS2l0OjpXZWJQ
YWdlOjpyZXNldFByaW1hcnlTbmFwc2hvdHRlZFBsdWdJbik6IFRlbGwgdGhlIFdlYlByb2Nlc3Mg
dG8gZm9yZ2V0LgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYlByb2Nlc3M6OnNob3VsZFBsdWdJbkF1dG9TdGFydEZyb21PcmlnaW4pOiBD
aGVjayBmb3Igc2ltaWxhcml0eSB0byBwcmltYXJ5IHBsdWdpbi4KKyAgICAgICAgKFdlYktpdDo6
V2ViUHJvY2Vzczo6ZGlkRGV0ZWN0UHJpbWFyeVBsdWdJbkZyb21PcmlnaW4pOiBSZW1lbWJlciB0
aGUgcHJpbWFyeSBwbHVnaW4uCisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3M6OnJlc2V0UHJp
bWFyeVBsdWdJbk9yaWdpbik6IEZvcmdldCBpdC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBy
b2Nlc3MuaDogTmV3IG1ldGhvZHMuCisKIDIwMTMtMDMtMjUgIERlYW4gSmFja3NvbiAgPGRpbm9A
YXBwbGUuY29tPgogCiAgICAgICAgIENsZWFudXAgcGx1Z2luIHNuYXBzaG90dGluZyBhdXRvc3Rh
cnQgZGVjaXNpb24gbWFraW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4
cC5pbiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCmluZGV4IGE3MmNhN2E0NGU5OTBk
OTIyY2U3MGI5MWEzZDJiOGJjZTBlYWZkNjUuLjJkNjc1YjIxMjJhNGQzYWZjOTdhMjIyYmZlNzUz
MTgzNjYxYThmODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCkBAIC00NzQsNiArNDc0LDcgQEAgX19a
TjdXZWJDb3JlMTVTdHJpbmdUcnVuY2F0b3I1d2lkdGhFUktOM1dURjZTdHJpbmdFUktOU180Rm9u
dEVOUzBfMjRFbmFibGVSb3VuZGkKIF9fWk43V2ViQ29yZTE1VmlzaWJsZVBvc2l0aW9uQzFFUktO
U184UG9zaXRpb25FTlNfOUVBZmZpbml0eUUKIF9fWk43V2ViQ29yZTE1ZGVmYXVsdExhbmd1YWdl
RXYKIF9fWk43V2ViQ29yZTE1bG9jYWxpemVkU3RyaW5nRVBLYworX19aTjdXZWJDb3JlMTVtaW1l
VHlwZUZyb21VUkxFUktOU180S1VSTEUKIF9fWk43V2ViQ29yZTE1b3JpZ2luYWxVUkxEYXRhRVA1
TlNVUkwKIF9fWk43V2ViQ29yZTE1cGF0aEdldEZpbGVOYW1lRVJLTjNXVEY2U3RyaW5nRQogX19a
TjdXZWJDb3JlMTVyZXBvcnRFeGNlcHRpb25FUE4zSlNDOUV4ZWNTdGF0ZUVOUzBfN0pTVmFsdWVF
UE5TXzEyQ2FjaGVkU2NyaXB0RQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
UGx1Z0luSW1hZ2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbklt
YWdlRWxlbWVudC5jcHAKaW5kZXggNTkyMDViMTM0OGNkOWE3ODYzZjQ4YzkxOWMzMTVmODNkMDU5
NTBmNC4uMjY5YzJiMzJmOTViNGE3MDFjMDk3MGU2ZjUyNWRlY2U3ODZkZmU1NSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCkBAIC0zMjMsMTIg
KzMyMyw2IEBAIHN0YXRpYyBBdG9taWNTdHJpbmcgY2xhc3NOYW1lRm9yU2hhZG93Um9vdChjb25z
dCBOb2RlKiBub2RlKQogICAgIHJldHVybiBwbHVnSW5MYXJnZVNpemVDbGFzc05hbWU7CiB9CiAK
LXZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c2V0SXNQcmltYXJ5U25hcHNob3R0ZWRQbHVn
SW4oYm9vbCBpc1ByaW1hcnlTbmFwc2hvdHRlZFBsdWdJbikKLXsKLSAgICBpZiAoaXNQcmltYXJ5
U25hcHNob3R0ZWRQbHVnSW4pCi0gICAgICAgIHJlc3RhcnRTbmFwc2hvdHRlZFBsdWdJbigpOwot
fQotCiB2b2lkIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnVwZGF0ZVNuYXBzaG90SW5mbygpCiB7
CiAgICAgU2hhZG93Um9vdCogcm9vdCA9IHVzZXJBZ2VudFNoYWRvd1Jvb3QoKTsKQEAgLTQxMSw5
ICs0MDUsNyBAQCBzdGF0aWMgdm9pZCBhZGRQbHVnSW5zRnJvbU5vZGVMaXN0TWF0Y2hpbmdQbHVn
SW5PcmlnaW4oSFRNTFBsdWdJbkltYWdlRWxlbWVudExpcwogICAgICAgICAgICAgaWYgKHBsdWdJ
bkVsZW1lbnQtPmlzUGx1Z0luSW1hZ2VFbGVtZW50KCkgJiYgcGx1Z0luRWxlbWVudC0+ZGlzcGxh
eVN0YXRlKCkgPD0gSFRNTFBsdWdJbkVsZW1lbnQ6OkRpc3BsYXlpbmdTbmFwc2hvdCkgewogICAg
ICAgICAgICAgICAgIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQqIHBsdWdJbkltYWdlRWxlbWVudCA9
IHRvSFRNTFBsdWdJbkltYWdlRWxlbWVudChub2RlKTsKICAgICAgICAgICAgICAgICBjb25zdCBL
VVJMJiBsb2FkZWRVUkwgPSBwbHVnSW5JbWFnZUVsZW1lbnQtPmxvYWRlZFVybCgpOwotICAgICAg
ICAgICAgICAgIFN0cmluZyBvdGhlck1pbWVUeXBlID0gcGx1Z0luSW1hZ2VFbGVtZW50LT5zZXJ2
aWNlVHlwZSgpOwotICAgICAgICAgICAgICAgIGlmIChvdGhlck1pbWVUeXBlLmlzRW1wdHkoKSkK
LSAgICAgICAgICAgICAgICAgICAgb3RoZXJNaW1lVHlwZSA9IG1pbWVUeXBlRnJvbVVSTChsb2Fk
ZWRVUkwpOworICAgICAgICAgICAgICAgIFN0cmluZyBvdGhlck1pbWVUeXBlID0gcGx1Z0luSW1h
Z2VFbGVtZW50LT5sb2FkZWRNaW1lVHlwZSgpOwogICAgICAgICAgICAgICAgIGlmIChwbHVnSW5P
cmlnaW4gPT0gbG9hZGVkVVJMLmhvc3QoKSAmJiBtaW1lVHlwZSA9PSBvdGhlck1pbWVUeXBlKQog
ICAgICAgICAgICAgICAgICAgICBwbHVnSW5MaXN0LmFwcGVuZChwbHVnSW5JbWFnZUVsZW1lbnQp
OwogICAgICAgICAgICAgfQpAQCAtNDIxLDIxICs0MTMsMTMgQEAgc3RhdGljIHZvaWQgYWRkUGx1
Z0luc0Zyb21Ob2RlTGlzdE1hdGNoaW5nUGx1Z0luT3JpZ2luKEhUTUxQbHVnSW5JbWFnZUVsZW1l
bnRMaXMKICAgICB9CiB9CiAKLXZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6dXNlckRpZENs
aWNrU25hcHNob3QoUGFzc1JlZlB0cjxNb3VzZUV2ZW50PiBldmVudCkKK3ZvaWQgSFRNTFBsdWdJ
bkltYWdlRWxlbWVudDo6cmVzdGFydFNpbWlsYXJQbHVnSW5zKCkKIHsKLSAgICBtX3BlbmRpbmdD
bGlja0V2ZW50RnJvbVNuYXBzaG90ID0gZXZlbnQ7Ci0gICAgU3RyaW5nIHBsdWdJbk9yaWdpbiA9
IG1fbG9hZGVkVXJsLmhvc3QoKTsKLSAgICBTdHJpbmcgbWltZVR5cGUgPSBzZXJ2aWNlVHlwZSgp
OwotICAgIGlmIChtaW1lVHlwZS5pc0VtcHR5KCkpCi0gICAgICAgIG1pbWVUeXBlID0gbWltZVR5
cGVGcm9tVVJMKG1fbG9hZGVkVXJsKTsKLSAgICBpZiAoZG9jdW1lbnQoKS0+cGFnZSgpICYmICFT
Y2hlbWVSZWdpc3RyeTo6c2hvdWxkVHJlYXRVUkxTY2hlbWVBc0xvY2FsKGRvY3VtZW50KCktPnBh
Z2UoKS0+bWFpbkZyYW1lKCktPmRvY3VtZW50KCktPmJhc2VVUkwoKS5wcm90b2NvbCgpKSkKLSAg
ICAgICAgZG9jdW1lbnQoKS0+cGFnZSgpLT5wbHVnSW5DbGllbnQoKS0+ZGlkU3RhcnRGcm9tT3Jp
Z2luKGRvY3VtZW50KCktPnBhZ2UoKS0+bWFpbkZyYW1lKCktPmRvY3VtZW50KCktPmJhc2VVUkwo
KS5ob3N0KCksIHBsdWdJbk9yaWdpbiwgbWltZVR5cGUpOwotCi0gICAgcmVzdGFydFNuYXBzaG90
dGVkUGx1Z0luKCk7Ci0KICAgICAvLyBSZXN0YXJ0IGFueSBvdGhlciBzbmFwc2hvdHRlZCBwbHVn
aW5zIGluIHRoZSBwYWdlIHdpdGggdGhlIHNhbWUgb3JpZ2luLiBOb3RlIHRoYXQgdGhleQogICAg
IC8vIG1heSBiZSBpbiBkaWZmZXJlbnQgZnJhbWVzLCBzbyB0cmF2ZXJzZSBmcm9tIHRoZSB0b3Ag
b2YgdGhlIGRvY3VtZW50LgogCisgICAgU3RyaW5nIHBsdWdJbk9yaWdpbiA9IG1fbG9hZGVkVXJs
Lmhvc3QoKTsKKyAgICBTdHJpbmcgbWltZVR5cGUgPSBsb2FkZWRNaW1lVHlwZSgpOwogICAgIEhU
TUxQbHVnSW5JbWFnZUVsZW1lbnRMaXN0IHBsdWdpbnNOZWVkaW5nUmVzdGFydDsKIAogICAgIGlm
ICghZG9jdW1lbnQoKS0+cGFnZSgpKQpAQCAtNDYyLDYgKzQ0NiwyNSBAQCB2b2lkIEhUTUxQbHVn
SW5JbWFnZUVsZW1lbnQ6OnVzZXJEaWRDbGlja1NuYXBzaG90KFBhc3NSZWZQdHI8TW91c2VFdmVu
dD4gZXZlbnQpCiAgICAgfQogfQogCit2b2lkIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnVzZXJE
aWRDbGlja1NuYXBzaG90KFBhc3NSZWZQdHI8TW91c2VFdmVudD4gZXZlbnQpCit7CisgICAgbV9w
ZW5kaW5nQ2xpY2tFdmVudEZyb21TbmFwc2hvdCA9IGV2ZW50OworICAgIFN0cmluZyBwbHVnSW5P
cmlnaW4gPSBtX2xvYWRlZFVybC5ob3N0KCk7CisgICAgaWYgKGRvY3VtZW50KCktPnBhZ2UoKSAm
JiAhU2NoZW1lUmVnaXN0cnk6OnNob3VsZFRyZWF0VVJMU2NoZW1lQXNMb2NhbChkb2N1bWVudCgp
LT5wYWdlKCktPm1haW5GcmFtZSgpLT5kb2N1bWVudCgpLT5iYXNlVVJMKCkucHJvdG9jb2woKSkp
CisgICAgICAgIGRvY3VtZW50KCktPnBhZ2UoKS0+cGx1Z0luQ2xpZW50KCktPmRpZFN0YXJ0RnJv
bU9yaWdpbihkb2N1bWVudCgpLT5wYWdlKCktPm1haW5GcmFtZSgpLT5kb2N1bWVudCgpLT5iYXNl
VVJMKCkuaG9zdCgpLCBwbHVnSW5PcmlnaW4sIGxvYWRlZE1pbWVUeXBlKCkpOworCisgICAgcmVz
dGFydFNuYXBzaG90dGVkUGx1Z0luKCk7CisgICAgcmVzdGFydFNpbWlsYXJQbHVnSW5zKCk7Cit9
CisKK3ZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c2V0SXNQcmltYXJ5U25hcHNob3R0ZWRQ
bHVnSW4oYm9vbCBpc1ByaW1hcnlTbmFwc2hvdHRlZFBsdWdJbikKK3sKKyAgICBpZiAoaXNQcmlt
YXJ5U25hcHNob3R0ZWRQbHVnSW4pIHsKKyAgICAgICAgcmVzdGFydFNuYXBzaG90dGVkUGx1Z0lu
KCk7CisgICAgICAgIHJlc3RhcnRTaW1pbGFyUGx1Z0lucygpOworICAgIH0KK30KKwogdm9pZCBI
VE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpyZXN0YXJ0U25hcHNob3R0ZWRQbHVnSW4oKQogewogICAg
IGlmIChkaXNwbGF5U3RhdGUoKSAhPSBSZXN0YXJ0aW5nV2l0aFBlbmRpbmdNb3VzZUNsaWNrKQpA
QCAtNTYxLDExICs1NjQsNyBAQCB2b2lkIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnN1YmZyYW1l
TG9hZGVyV2lsbENyZWF0ZVBsdWdJbihjb25zdCBLVVJMJiB1cmwpCiAgICAgICAgIHJldHVybjsK
ICAgICB9CiAKLSAgICBTdHJpbmcgbWltZVR5cGUgPSBzZXJ2aWNlVHlwZSgpOwotICAgIGlmICht
aW1lVHlwZS5pc0VtcHR5KCkpCi0gICAgICAgIG1pbWVUeXBlID0gbWltZVR5cGVGcm9tVVJMKHVy
bCk7Ci0KLSAgICBpZiAoZG9jdW1lbnQoKS0+cGFnZSgpLT5wbHVnSW5DbGllbnQoKS0+c2hvdWxk
QXV0b1N0YXJ0RnJvbU9yaWdpbihkb2N1bWVudCgpLT5wYWdlKCktPm1haW5GcmFtZSgpLT5kb2N1
bWVudCgpLT5iYXNlVVJMKCkuaG9zdCgpLCB1cmwuaG9zdCgpLCBtaW1lVHlwZSkpIHsKKyAgICBp
ZiAoZG9jdW1lbnQoKS0+cGFnZSgpLT5wbHVnSW5DbGllbnQoKS0+c2hvdWxkQXV0b1N0YXJ0RnJv
bU9yaWdpbihkb2N1bWVudCgpLT5wYWdlKCktPm1haW5GcmFtZSgpLT5kb2N1bWVudCgpLT5iYXNl
VVJMKCkuaG9zdCgpLCB1cmwuaG9zdCgpLCBsb2FkZWRNaW1lVHlwZSgpKSkgewogICAgICAgICBM
T0coUGx1Z2lucywgIiVwIFBsdWctaW4gZnJvbSAoJXMsICVzKSBpcyBtYXJrZWQgdG8gYXV0by1z
dGFydCwgc2V0IHRvIHBsYXkiLCB0aGlzLCBkb2N1bWVudCgpLT5wYWdlKCktPm1haW5GcmFtZSgp
LT5kb2N1bWVudCgpLT5iYXNlVVJMKCkuaG9zdCgpLnV0ZjgoKS5kYXRhKCksIHVybC5ob3N0KCku
dXRmOCgpLmRhdGEoKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5oCmluZGV4IGYxNWU4MDQ3ODc3OThjNGE5ZWM4
ZjIwN2ZlZDkxM2I2ODk3NTdiMWQuLmYxY2RiYTRhNDhlYmY4ZWVjMWI2YWQ2NmExODgwYmJhODI2
OTgzYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxl
bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5o
CkBAIC01OSw2ICs1OSwxNSBAQCBwdWJsaWM6CiAgICAgY29uc3QgU3RyaW5nJiBzZXJ2aWNlVHlw
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fc2VydmljZVR5cGU7IH0KICAgICBjb25zdCBTdHJpbmcmIHVy
bCgpIGNvbnN0IHsgcmV0dXJuIG1fdXJsOyB9CiAgICAgY29uc3QgS1VSTCYgbG9hZGVkVXJsKCkg
Y29uc3QgeyByZXR1cm4gbV9sb2FkZWRVcmw7IH0KKworICAgIGNvbnN0IFN0cmluZyBsb2FkZWRN
aW1lVHlwZSgpIGNvbnN0CisgICAgeworICAgICAgICBTdHJpbmcgbWltZVR5cGUgPSBzZXJ2aWNl
VHlwZSgpOworICAgICAgICBpZiAobWltZVR5cGUuaXNFbXB0eSgpKQorICAgICAgICAgICAgbWlt
ZVR5cGUgPSBtaW1lVHlwZUZyb21VUkwobV9sb2FkZWRVcmwpOworICAgICAgICByZXR1cm4gbWlt
ZVR5cGU7CisgICAgfQorCiAgICAgYm9vbCBzaG91bGRQcmVmZXJQbHVnSW5zRm9ySW1hZ2VzKCkg
Y29uc3QgeyByZXR1cm4gbV9zaG91bGRQcmVmZXJQbHVnSW5zRm9ySW1hZ2VzOyB9CiAKICAgICAv
LyBQdWJsaWMgZm9yIEZyYW1lVmlldzo6YWRkV2lkZ2V0VG9VcGRhdGUoKQpAQCAtMTE4LDYgKzEy
Nyw4IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIHN3YXBSZW5kZXJlclRpbWVyRmlyZWQoVGltZXI8
SFRNTFBsdWdJbkltYWdlRWxlbWVudD4qKTsKIAorICAgIHZvaWQgcmVzdGFydFNpbWlsYXJQbHVn
SW5zKCk7CisKICAgICB2aXJ0dWFsIGJvb2wgaXNQbHVnSW5JbWFnZUVsZW1lbnQoKSBjb25zdCBP
VkVSUklERSB7IHJldHVybiB0cnVlOyB9CiAKICAgICBib29sIG1fbmVlZHNXaWRnZXRVcGRhdGU7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXgg
NGMwNmYyMDg1ZGVhMWU0ZjlmNGQ2ZmU4MTg5M2I5NDgyYTIwYWY0MS4uM2RmMjQxYmYyNzUyMThi
MjA0M2Q1YjFjN2Y5NmY5ZWE3OGRmNTE0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMzk1MCw2ICszOTUwLDcgQEAgdm9pZCBXZWJQYWdl
OjpkZXRlcm1pbmVQcmltYXJ5U25hcHNob3R0ZWRQbHVnSW4oKQogCiAgICAgbV9kaWRGaW5kUHJp
bWFyeVNuYXBzaG90dGVkUGx1Z2luID0gdHJ1ZTsKIAorICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgp
LmRpZERldGVjdFByaW1hcnlQbHVnSW5Gcm9tT3JpZ2luKG1fcGFnZS0+bWFpbkZyYW1lKCktPmRv
Y3VtZW50KCktPmJhc2VVUkwoKS5ob3N0KCksIGNhbmRpZGF0ZVBsdWdJbi0+bG9hZGVkVXJsKCku
aG9zdCgpLCBjYW5kaWRhdGVQbHVnSW4tPmxvYWRlZE1pbWVUeXBlKCkpOwogICAgIGNhbmRpZGF0
ZVBsdWdJbi0+c2V0SXNQcmltYXJ5U25hcHNob3R0ZWRQbHVnSW4odHJ1ZSk7CiB9CiAKQEAgLTM5
NTcsNiArMzk1OCw3IEBAIHZvaWQgV2ViUGFnZTo6cmVzZXRQcmltYXJ5U25hcHNob3R0ZWRQbHVn
SW4oKQogewogICAgIG1fcmVhZHlUb0ZpbmRQcmltYXJ5U25hcHNob3R0ZWRQbHVnaW4gPSBmYWxz
ZTsKICAgICBtX2RpZEZpbmRQcmltYXJ5U25hcHNob3R0ZWRQbHVnaW4gPSBmYWxzZTsKKyAgICBX
ZWJQcm9jZXNzOjpzaGFyZWQoKS5yZXNldFByaW1hcnlQbHVnSW5PcmlnaW4oKTsKIH0KICNlbmRp
ZiAvLyBFTkFCTEUoUFJJTUFSWV9TTkFQU0hPVFRFRF9QTFVHSU5fSEVVUklTVElDKQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAppbmRleCBkOTA1Y2RkMDFhZWVmYmI4
MmY1YzJkMDAyZTkxMjhiYzliZGFkNmNhLi43ODMxMjBiNTBjZjc0Mjg4NWMxYjA3ZDAxNDAyYWEw
YTkxMWFlMmYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nl
c3MuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAKQEAg
LTc5NCw3ICs3OTQsMTEgQEAgYm9vbCBXZWJQcm9jZXNzOjpzaG91bGRQbHVnSW5BdXRvU3RhcnRG
cm9tT3JpZ2luKGNvbnN0IFN0cmluZyYgcGFnZU9yaWdpbiwgY29uc3QKICAgICBpZiAobV9wbHVn
SW5BdXRvU3RhcnRPcmlnaW5zLmNvbnRhaW5zKHBsdWdpbk9yaWdpbikpCiAgICAgICAgIHJldHVy
biB0cnVlOwogCi0gICAgLy8gVGhlIHBsdWdpbiB3YXNuJ3QgaW4gdGhlIGdlbmVyYWwgd2hpdGVs
aXN0LCBzbyBjaGVjayBhZ2FpbnN0IHRoZSBtb3JlIGV4cGxpY2l0IGhhc2ggbGlzdC4KKyAgICAv
LyBUaGUgcGx1Z2luIHdhc24ndCBpbiB0aGUgZ2VuZXJhbCB3aGl0ZWxpc3QsIHNvIGNoZWNrIGlm
IGl0IHNpbWlsYXIgdG8gdGhlIHByaW1hcnkgcGx1Z2luIGZvciB0aGUgcGFnZSAoaWYgd2UndmUg
Zm91bmQgb25lKS4KKyAgICBpZiAocGFnZU9yaWdpbiA9PSBtX3ByaW1hcnlQbHVnSW5QYWdlT3Jp
Z2luICYmIHBsdWdpbk9yaWdpbiA9PSBtX3ByaW1hcnlQbHVnSW5PcmlnaW4gJiYgbWltZVR5cGUg
PT0gbV9wcmltYXJ5UGx1Z0luTWltZVR5cGUpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAg
Ly8gTGFzdGx5IGNoZWNrIGFnYWluc3QgdGhlIG1vcmUgZXhwbGljaXQgaGFzaCBsaXN0LgogICAg
IHJldHVybiBpc1BsdWdJbkF1dG9TdGFydE9yaWdpbkhhc2goaGFzaEZvclBsdWdJbk9yaWdpbihw
YWdlT3JpZ2luLCBwbHVnaW5PcmlnaW4sIG1pbWVUeXBlKSk7CiB9CiAKQEAgLTgzMyw2ICs4Mzcs
MjAgQEAgdm9pZCBXZWJQcm9jZXNzOjpyZXNldFBsdWdJbkF1dG9TdGFydE9yaWdpbkhhc2hlcyhj
b25zdCBIYXNoTWFwPHVuc2lnbmVkLCBkb3VibGUKICAgICBtX3BsdWdJbkF1dG9TdGFydE9yaWdp
bkhhc2hlcy5zd2FwKGNvbnN0X2Nhc3Q8SGFzaE1hcDx1bnNpZ25lZCwgZG91YmxlPiY+KGhhc2hl
cykpOwogfQogCit2b2lkIFdlYlByb2Nlc3M6OmRpZERldGVjdFByaW1hcnlQbHVnSW5Gcm9tT3Jp
Z2luKGNvbnN0IFN0cmluZyYgcGFnZU9yaWdpbiwgY29uc3QgU3RyaW5nJiBwbHVnaW5PcmlnaW4s
IGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCit7CisgICAgbV9wcmltYXJ5UGx1Z0luUGFnZU9yaWdp
biA9IHBhZ2VPcmlnaW47CisgICAgbV9wcmltYXJ5UGx1Z0luT3JpZ2luID0gcGx1Z2luT3JpZ2lu
OworICAgIG1fcHJpbWFyeVBsdWdJbk1pbWVUeXBlID0gbWltZVR5cGU7Cit9CisKK3ZvaWQgV2Vi
UHJvY2Vzczo6cmVzZXRQcmltYXJ5UGx1Z0luT3JpZ2luKCkKK3sKKyAgICBtX3ByaW1hcnlQbHVn
SW5QYWdlT3JpZ2luID0gU3RyaW5nKCk7CisgICAgbV9wcmltYXJ5UGx1Z0luT3JpZ2luID0gU3Ry
aW5nKCk7CisgICAgbV9wcmltYXJ5UGx1Z0luTWltZVR5cGUgPSBTdHJpbmcoKTsKK30KKwogdm9p
ZCBXZWJQcm9jZXNzOjpwbHVnSW5EaWRSZWNlaXZlVXNlckludGVyYWN0aW9uKHVuc2lnbmVkIHBs
dWdJbk9yaWdpbkhhc2gpCiB7CiAgICAgaWYgKCFwbHVnSW5PcmlnaW5IYXNoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmggYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAppbmRleCAxMmI0MTdjZGIzZGUwMWJlZTM4YmFjMWI3
NjM2NWQyNTQzMTg5ZjM5Li5jNWU4MDgyZGZkMGM5N2ZkNTU5NDE1ZWEwZjhjYjY1YzliYWVkYmVj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaApAQCAtMTI4LDYgKzEyOCw4
IEBAIHB1YmxpYzoKICAgICBib29sIHNob3VsZFBsdWdJbkF1dG9TdGFydEZyb21PcmlnaW4oY29u
c3QgU3RyaW5nJiBwYWdlT3JpZ2luLCBjb25zdCBTdHJpbmcmIHBsdWdpbk9yaWdpbiwgY29uc3Qg
U3RyaW5nJiBtaW1lVHlwZSk7CiAgICAgdm9pZCBwbHVnSW5EaWRTdGFydEZyb21PcmlnaW4oY29u
c3QgU3RyaW5nJiBwYWdlT3JpZ2luLCBjb25zdCBTdHJpbmcmIHBsdWdpbk9yaWdpbiwgY29uc3Qg
U3RyaW5nJiBtaW1lVHlwZSk7CiAgICAgdm9pZCBwbHVnSW5EaWRSZWNlaXZlVXNlckludGVyYWN0
aW9uKHVuc2lnbmVkIHBsdWdJbk9yaWdpbkhhc2gpOworICAgIHZvaWQgZGlkRGV0ZWN0UHJpbWFy
eVBsdWdJbkZyb21PcmlnaW4oY29uc3QgU3RyaW5nJiBwYWdlT3JpZ2luLCBjb25zdCBTdHJpbmcm
IHBsdWdpbk9yaWdpbiwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSk7CisgICAgdm9pZCByZXNldFBy
aW1hcnlQbHVnSW5PcmlnaW4oKTsKIAogICAgIGJvb2wgZnVsbEtleWJvYXJkQWNjZXNzRW5hYmxl
ZCgpIGNvbnN0IHsgcmV0dXJuIG1fZnVsbEtleWJvYXJkQWNjZXNzRW5hYmxlZDsgfQogCkBAIC0y
ODEsNiArMjgzLDkgQEAgcHJpdmF0ZToKIAogICAgIEhhc2hNYXA8dW5zaWduZWQsIGRvdWJsZT4g
bV9wbHVnSW5BdXRvU3RhcnRPcmlnaW5IYXNoZXM7CiAgICAgSGFzaFNldDxTdHJpbmc+IG1fcGx1
Z0luQXV0b1N0YXJ0T3JpZ2luczsKKyAgICBTdHJpbmcgbV9wcmltYXJ5UGx1Z0luUGFnZU9yaWdp
bjsKKyAgICBTdHJpbmcgbV9wcmltYXJ5UGx1Z0luT3JpZ2luOworICAgIFN0cmluZyBtX3ByaW1h
cnlQbHVnSW5NaW1lVHlwZTsKIAogICAgIGJvb2wgbV9oYXNTZXRDYWNoZU1vZGVsOwogICAgIENh
Y2hlTW9kZWwgbV9jYWNoZU1vZGVsOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDk4OTM5ZGY3MmNkOTY0OWQzZTE1YmJlYWVi
MTY4NTg0M2VjNjgzYTMuLjQ0YzNmZjU5YWM5ZDZhY2NmNWJiMmQ4YmVkZmE3YWRiOTRhMzE0YWQg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxMy0wMy0yNiAgRGVhbiBKYWNrc29uICA8ZGlub0Bh
cHBsZS5jb20+CisKKyAgICAgICAgV2hlbiBhIHByaW1hcnkgcGx1Z2luIGlzIHJlc3RhcnRlZCwg
YWxzbyBzdGFydCBzaW1pbGFyIHBsdWdpbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTExMzI2NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFR3byBuZXcgdGVzdHMuIFRoZSBmaXJzdCBoYXMgb25lIGJpZyBw
bHVnaW4gKHRoYXQgc2hvdWxkIGJlIGRldGVjdGVkIGFzIHRoZSBwcmltYXJ5KQorICAgICAgICBh
bmQgdGhlbiBhIGZldyBzbWFsbGVyIHZlcnNpb25zICh3aGljaCBzaG91bGQgYXV0b3N0YXJ0IGFs
b25nIHdpdGggdGhlIHByaW1hcnkpLgorICAgICAgICBUaGUgc2Vjb25kIGhhcyBvbmUgYmlnIHBs
dWdpbiwgYW5kIHRoZW4gYWRkcyBhIHNpbWlsYXIgb25lIGFmdGVyIGEgc2hvcnQgZGVsYXkuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvc25hcHNob3R0aW5nL2F1dG9wbGF5
LXNpbWlsYXItdG8tZG9taW5hbnQtYWZ0ZXItZGVsYXktZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvc25hcHNob3R0aW5nL2F1dG9wbGF5LXNp
bWlsYXItdG8tZG9taW5hbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbHVnaW5z
L3NuYXBzaG90dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50LWFmdGVyLWRlbGF5Lmh0
bWw6IEFkZGVkLgorICAgICAgICAqIHBsdWdpbnMvc25hcHNob3R0aW5nL2F1dG9wbGF5LXNpbWls
YXItdG8tZG9taW5hbnQuaHRtbDogQWRkZWQuCisKIDIwMTMtMDMtMjUgIFBldGVyIEthc3Rpbmcg
IDxwa2FzdGluZ0Bnb29nbGUuY29tPgogCiAgICAgICAgIFtjaHJvbWl1bV0gUmViYXNlbGluaW5n
LCBldGMuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMv
c25hcHNob3R0aW5nL2F1dG9wbGF5LXNpbWlsYXItdG8tZG9taW5hbnQtYWZ0ZXItZGVsYXktZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3NuYXBzaG90
dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50LWFmdGVyLWRlbGF5LWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5hMmYzNDMzMTI1YWM2MmI1NWNiMjc3NjBkOWFmY2RiZGJiM2U0N2ExCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3Nu
YXBzaG90dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50LWFmdGVyLWRlbGF5LWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitsYXllciBhdCAoMCwwKSBzaXplIDc4NXg4NTAKKyAg
UmVuZGVyVmlldyBhdCAoMCwwKSBzaXplIDc4NXg2MDAKK2xheWVyIGF0ICgwLDApIHNpemUgNzg1
eDg1MAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA3ODV4ODUwCisgICAgUmVu
ZGVyQm9keSB7Qk9EWX0gYXQgKDgsOCkgc2l6ZSA3Njl4ODM0CisgICAgICBSZW5kZXJCbG9jayB7
UH0gYXQgKDAsMCkgc2l6ZSA3Njl4MTgKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgw
LDApIHNpemUgNjk2eDE4CisgICAgICAgICAgdGV4dCBydW4gYXQgKDAsMCkgd2lkdGggNjk2OiAi
VGhlIGRvbWluYW50IHBsdWdpbiBzaG91bGQgcGxheSBhdXRvbWF0aWNhbGx5LCBhbmQgdGhlbiBz
byBzaG91bGQgdGhlIGlkZW50aWNhbCBwbHVnaW4gdGhhdCBpcyBhZGRlZCBhIGJpdCBsYXRlci4i
CisgICAgICBSZW5kZXJCbG9jayB7RElWfSBhdCAoMCwzNCkgc2l6ZSA3Njl4NjAwCisgICAgICAg
IFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAorICAgICAgUmVuZGVyQmxvY2sg
e0RJVn0gYXQgKDAsNjM0KSBzaXplIDc2OXgyMDAKK2xheWVyIGF0ICg4LDQyKSBzaXplIDYwMHg2
MDAKKyAgUmVuZGVyRW1iZWRkZWRPYmplY3Qge0VNQkVEfSBhdCAoMCwwKSBzaXplIDYwMHg2MDAK
K2xheWVyIGF0ICg4LDY0Mikgc2l6ZSAyMDB4MjAwCisgIFJlbmRlckVtYmVkZGVkT2JqZWN0IHtF
TUJFRH0gYXQgKDAsMCkgc2l6ZSAyMDB4MjAwCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMtd2syL3BsdWdpbnMvc25hcHNob3R0aW5nL2F1dG9wbGF5LXNpbWlsYXItdG8tZG9t
aW5hbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5z
L3NuYXBzaG90dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50LWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi43MmY2MjRhYjMzYjNlYzBjZTJiMzc4NWNjZWI4MDFkZWY4YTZhZGVkCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3NuYXBz
aG90dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50LWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDI0IEBACitsYXllciBhdCAoMCwwKSBzaXplIDc4NXgxMDU2CisgIFJlbmRlclZpZXcgYXQg
KDAsMCkgc2l6ZSA3ODV4NjAwCitsYXllciBhdCAoMCwwKSBzaXplIDc4NXgxMDU2CisgIFJlbmRl
ckJsb2NrIHtIVE1MfSBhdCAoMCwwKSBzaXplIDc4NXgxMDU2CisgICAgUmVuZGVyQm9keSB7Qk9E
WX0gYXQgKDgsOCkgc2l6ZSA3Njl4MTAzMgorICAgICAgUmVuZGVyQmxvY2sge1B9IGF0ICgwLDAp
IHNpemUgNzY5eDE4CisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDc1
MHgxOAorICAgICAgICAgIHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDc1MDogIlRoZSBkb21pbmFu
dCBwbHVnaW4gc2hvdWxkIHBsYXkgYXV0b21hdGljYWxseSwgYW5kIHRyaWdnZXIgYWxsIHRoZSBv
dGhlcnMgdG8gcGxheSBhcyB3ZWxsLCBzaW5jZSB0aGV5IGFyZSB0aGUgc2FtZSBvcmlnaW4uIgor
ICAgICAgUmVuZGVyQmxvY2sge1B9IGF0ICgwLDM0KSBzaXplIDc2OXg2MDAKKyAgICAgICAgUmVu
ZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMHgwCisgICAgICBSZW5kZXJCbG9jayB7UH0g
YXQgKDAsNjUwKSBzaXplIDc2OXgyMDAKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgw
LDApIHNpemUgMHgwCisgICAgICBSZW5kZXJCbG9jayB7UH0gYXQgKDAsODY2KSBzaXplIDc2OXgx
MDAKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMHgwCisgICAgICBS
ZW5kZXJCbG9jayB7UH0gYXQgKDAsOTgyKSBzaXplIDc2OXg1MAorICAgICAgICBSZW5kZXJUZXh0
IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAweDAKK2xheWVyIGF0ICg4LDQyKSBzaXplIDYwMHg2MDAK
KyAgUmVuZGVyRW1iZWRkZWRPYmplY3Qge0VNQkVEfSBhdCAoMCwwKSBzaXplIDYwMHg2MDAKK2xh
eWVyIGF0ICg4LDY1OCkgc2l6ZSAyMDB4MjAwCisgIFJlbmRlckVtYmVkZGVkT2JqZWN0IHtFTUJF
RH0gYXQgKDAsMCkgc2l6ZSAyMDB4MjAwCitsYXllciBhdCAoOCw4NzQpIHNpemUgMTAweDEwMAor
ICBSZW5kZXJFbWJlZGRlZE9iamVjdCB7RU1CRUR9IGF0ICgwLDApIHNpemUgMTAweDEwMAorbGF5
ZXIgYXQgKDgsOTkwKSBzaXplIDUweDUwCisgIFJlbmRlckVtYmVkZGVkT2JqZWN0IHtFTUJFRH0g
YXQgKDAsMCkgc2l6ZSA1MHg1MApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGx1Z2lucy9zbmFw
c2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1kb21pbmFudC1hZnRlci1kZWxheS5odG1sIGIv
TGF5b3V0VGVzdHMvcGx1Z2lucy9zbmFwc2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1kb21p
bmFudC1hZnRlci1kZWxheS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdhZTdjNGFhYzA2NDhiOTJjNjY0MWVm
NjllNzJmNDdlNGM4ZjU1MmYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbHVnaW5z
L3NuYXBzaG90dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50LWFmdGVyLWRlbGF5Lmh0
bWwKQEAgLTAsMCArMSwxOSBAQAorPHA+VGhlIGRvbWluYW50IHBsdWdpbiBzaG91bGQgcGxheSBh
dXRvbWF0aWNhbGx5LCBhbmQgdGhlbiBzbyBzaG91bGQgdGhlIGlkZW50aWNhbCBwbHVnaW4gdGhh
dCBpcyBhZGRlZCBhIGJpdCBsYXRlci48L3A+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy50ZXN0UnVu
bmVyKSB7CisgICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRQbHVnSW5TbmFwc2hvdHRp
bmdFbmFibGVkKHRydWUpOworICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0TWF4aW11
bVBsdWdJblNuYXBzaG90QXR0ZW1wdHMoMCk7CisgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25l
KCk7CisgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7CisgICAgICAgIHZhciBkaXYgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICAgICAgZGl2LmlubmVySFRNTCA9ICc8ZW1i
ZWQgc3JjPSIuLi9yZXNvdXJjZXMvc2ltcGxlX2JsYW5rLnN3ZiIgd2lkdGg9IjIwMCIgaGVpZ2h0
PSIyMDAiPjwvZW1iZWQ+JzsKKyAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkaXYp
OworICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKKyAgICAgICAgICAgIHRlc3RSdW5u
ZXIubm90aWZ5RG9uZSgpOworICAgICAgICB9LCA1MDApOworICAgIH0sIDUwMCk7Cit9Cis8L3Nj
cmlwdD4KKzxkaXY+Cis8ZW1iZWQgc3JjPSIuLi9yZXNvdXJjZXMvc2ltcGxlX2JsYW5rLnN3ZiIg
d2lkdGg9IjYwMCIgaGVpZ2h0PSI2MDAiPjwvZW1iZWQ+Cis8L2Rpdj4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsdWdpbnMvc25hcHNob3R0aW5nL2F1dG9wbGF5LXNpbWlsYXItdG8tZG9taW5h
bnQuaHRtbCBiL0xheW91dFRlc3RzL3BsdWdpbnMvc25hcHNob3R0aW5nL2F1dG9wbGF5LXNpbWls
YXItdG8tZG9taW5hbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43YzRlMTMzY2UxMDk4YTA2N2NlMTI4ZWRl
MmMxOGI5MjBjMmRjMGNjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGx1Z2lucy9z
bmFwc2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1kb21pbmFudC5odG1sCkBAIC0wLDAgKzEs
MjMgQEAKKzxwPlRoZSBkb21pbmFudCBwbHVnaW4gc2hvdWxkIHBsYXkgYXV0b21hdGljYWxseSwg
YW5kIHRyaWdnZXIgYWxsIHRoZSBvdGhlcnMgdG8gcGxheSBhcyB3ZWxsLCBzaW5jZSB0aGV5IGFy
ZSB0aGUgc2FtZSBvcmlnaW4uPC9wPgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikg
eworICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0UGx1Z0luU25hcHNob3R0aW5nRW5h
YmxlZCh0cnVlKTsKKyAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldE1heGltdW1QbHVn
SW5TbmFwc2hvdEF0dGVtcHRzKDApOworICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwor
ICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgeworICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURv
bmUoKTsKKyAgICB9LCA1MDApOworfQorPC9zY3JpcHQ+Cis8cD4KKzxlbWJlZCBzcmM9Ii4uL3Jl
c291cmNlcy9zaW1wbGVfYmxhbmsuc3dmIiB3aWR0aD0iNjAwIiBoZWlnaHQ9IjYwMCI+PC9lbWJl
ZD4KKzwvcD4KKzxwPgorPGVtYmVkIHNyYz0iLi4vcmVzb3VyY2VzL3NpbXBsZV9ibGFuay5zd2Yi
IHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIj48L2VtYmVkPgorPC9wPgorPHA+Cis8ZW1iZWQgc3Jj
PSIuLi9yZXNvdXJjZXMvc2ltcGxlX2JsYW5rLnN3ZiIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMDAi
PjwvZW1iZWQ+Cis8L3A+Cis8cD4KKzxlbWJlZCBzcmM9Ii4uL3Jlc291cmNlcy9zaW1wbGVfYmxh
bmsuc3dmIiB3aWR0aD0iNTAiIGhlaWdodD0iNTAiPjwvZW1iZWQ+Cis8L3A+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>195185</attachid>
            <date>2013-03-26 16:33:00 -0700</date>
            <delta_ts>2013-03-26 16:42:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-113265-20130327102841.patch</filename>
            <type>text/plain</type>
            <size>22469</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ2ODMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTFkMDQ1YjhlODhhYmMw
Yjk4ZjYwZjE3MmZhODVhMzEwNWUwYzYwZi4uNzc3NThkNjU3MzVkYWQxNzJhZmIwNWNhYzUzZTg4
YjI3NDBjYTY0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEzLTAzLTI2ICBEZWFu
IEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKworICAgICAgICBXaGVuIGEgcHJpbWFyeSBwbHVn
aW4gaXMgcmVzdGFydGVkLCBhbHNvIHN0YXJ0IHNpbWlsYXIgcGx1Z2lucworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEzMjY1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSWYgd2UgZGV0ZWN0IGEgcHJpbWFy
eSBwbHVnaW4gdGhhdCBpcyBzbmFwc2hvdHRlZCwgd2UgaW1tZWRpYXRlbHkgcmVzdGFydCBpdC4K
KyAgICAgICAgV2hlbiB0aGlzIGhhcHBlbnMsIHdlIHNob3VsZCBhbHNvIHJlc3RhcnQgYW55IG90
aGVyIHBsdWdpbnMgdGhhdAorICAgICAgICBtYXRjaCB0aGUgc2FtZSBvcmlnaW4gYW5kIHR5cGUu
IFRoaXMgYWxsb3dzIHNpdGVzIHdpdGggYSBsb3Qgb2YKKyAgICAgICAgKGdlb21ldHJpY2FsbHkp
IG5lYXJieSBwbHVnaW5zIHRvIGJlaGF2ZSBhcyBpZiB0aGV5IGFyZSBhIHNpbmdsZSBiaWcgcGx1
Z2luLgorCisgICAgICAgIFRlc3RzOiBwbHVnaW5zL3NuYXBzaG90dGluZy9hdXRvcGxheS1zaW1p
bGFyLXRvLWRvbWluYW50LWFmdGVyLWRlbGF5Lmh0bWwKKyAgICAgICAgICAgICAgIHBsdWdpbnMv
c25hcHNob3R0aW5nL2F1dG9wbGF5LXNpbWlsYXItdG8tZG9taW5hbnQuaHRtbAorCisgICAgICAg
ICogV2ViQ29yZS5leHAuaW46IEV4cG9ydCBtaW1lVHlwZUZyb21VUkwuCisgICAgICAgICogaHRt
bC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmFkZFBsdWdJ
bnNGcm9tTm9kZUxpc3RNYXRjaGluZ1BsdWdJbk9yaWdpbik6IFVzZSBsb2FkZWRNaW1lVHlwZSBo
ZWxwZXIuCisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpyZXN0YXJ0
U2ltaWxhclBsdWdJbnMpOiBOZXcgbWV0aG9kLCB3aGljaCBjb3BpZWQgdGhlCisgICAgICAgICAg
ICBleGlzdGluZyBjb2RlIGZyb20gdXNlckRpZENsaWNrU25hcHNob3QuCisgICAgICAgIChXZWJD
b3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojp1c2VyRGlkQ2xpY2tTbmFwc2hvdCk6IE1vdmUg
dGhlIHNpbWlsYXIgcGx1Z2luIGRldGVjdGlvbgorICAgICAgICAgICAgb3V0IGludG8gYW5vdGhl
ciBmdW5jdGlvbiBhbmQgY2FsbCBpdC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c2V0SXNQcmltYXJ5U25hcHNob3R0ZWRQbHVn
SW4pOiBDYWxsIHJlc3RhcnRTaW1pbGFyUGx1Z0lucy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQ
bHVnSW5JbWFnZUVsZW1lbnQ6OnN1YmZyYW1lTG9hZGVyV2lsbENyZWF0ZVBsdWdJbik6IFVzZSBs
b2FkZWRNaW1lVHlwZSBoZWxwZXIuCisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVt
ZW50Lmg6IERlY2xhcmF0aW9uIG9mIHJlc3RhcnRTaW1pbGFyUGx1Z0lucy4KKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmxvYWRlZE1pbWVUeXBlKTogTmV3IGhlbHBl
ciBtZXRob2Qgc2luY2UgdGhpcworICAgICAgICAgICAgY29kZSB3YXMgYmVpbmcgb2Z0ZW4gZHVw
bGljYXRlZC4KKwogMjAxMy0wMy0yNSAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CiAK
ICAgICAgICAgUmVtb3ZlIGF1dG9zdGFydCBoYXNoaW5nIGNvZGUgZnJvbSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VM
b2cKaW5kZXggYWNiMzljNTBiMjJiOWI3ZWUzMTViZTc0NzVlZjJjM2E4ZWVjZDhiMy4uNDQ1Y2Fl
Y2QxODYzMTdjNGI0ZDM3OGQ3M2ZmM2M1MDk1NDA2ODlmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDI5IEBACisyMDEzLTAzLTI2ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKworICAg
ICAgICBXaGVuIGEgcHJpbWFyeSBwbHVnaW4gaXMgcmVzdGFydGVkLCBhbHNvIHN0YXJ0IHNpbWls
YXIgcGx1Z2lucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTEzMjY1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgUmVtZW1iZXIgdGhlIG9yaWdpbiBvZiB0aGUgcHJpbWFyeSBwbHVnaW4sIHNvIHRoYXQgd2Ug
Y2FuCisgICAgICAgIGF1dG9zdGFydCBhbnl0aGluZyB0aGF0IGlzIHNpbWlsYXIuCisKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsdWdJbkNsaWVudC5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYlBsdWdJbkNsaWVudDo6V2ViUGx1Z0luQ2xpZW50KTogS2VlcCBhIHBv
aW50ZXIgdG8gdGhlIFdlYlBhZ2UuCisgICAgICAgIChXZWJLaXQ6OldlYlBsdWdJbkNsaWVudDo6
c2hvdWxkQXV0b1N0YXJ0RnJvbU9yaWdpbik6IFBhc3MgdGhlIHBhZ2Ugb250byB0aGUgcHJvY2Vz
cy4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsdWdJbkNsaWVudC5o
OgorICAgICAgICAoV2ViUGx1Z0luQ2xpZW50KTogTmV3IG1lbWJlciB2YXJpYWJsZSBmb3IgdGhl
IFdlYlBhZ2Ugd2Ugd2VyZSBjcmVhdGVkIHdpdGguCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpkZXRlcm1pbmVQcmlt
YXJ5U25hcHNob3R0ZWRQbHVnSW4pOiBSZW1lbWJlciB0aGUgb3JpZ2luIGluZm9ybWF0aW9uCisg
ICAgICAgICAgICBmb3IgdGhlIHByaW1hcnkgcGx1Z2luLgorICAgICAgICAoV2ViS2l0OjpXZWJQ
YWdlOjptYXRjaGVzUHJpbWFyeVBsdWdJbik6IFJldHVybnMgdHJ1ZSBpZiB3ZSdyZSBzZWVpbmcg
c29tZXRoaW5nIHRoYXQKKyAgICAgICAgICAgIGxvb2tzIGxpa2UgdGhlIHByaW1hcnkgcGx1Z2lu
LgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6IE5ldyBtZXRob2QgbWF0
Y2hlc1ByaW1hcnlQbHVnSW4uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6c2hvdWxkUGx1Z0luQXV0b1N0YXJ0RnJvbU9y
aWdpbik6IENoZWNrIGlmIHRoZSBwYWdlIHRoaW5rcyB0aGlzIGlzCisgICAgICAgICAgICB0aGUg
cHJpbWFyeSBwbHVnaW4uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmg6IEFjY2Vw
dCBhIHJlZmVyZW5jZSB0byB0aGUgcGFnZSBpbiBzaG91bGRQbHVnSW5BdXRvU3RhcnRGcm9tT3Jp
Z2luLgorCiAyMDEzLTAzLTI1ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KIAogICAg
ICAgICBDbGVhbnVwIHBsdWdpbiBzbmFwc2hvdHRpbmcgYXV0b3N0YXJ0IGRlY2lzaW9uIG1ha2lu
ZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCBhNzJjYTdhNDRlOTkwZDkyMmNlNzBiOTFhM2QyYjhi
Y2UwZWFmZDY1Li4yZDY3NWIyMTIyYTRkM2FmYzk3YTIyMmJmZTc1MzE4MzY2MWE4Zjg3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLmV4cC5pbgpAQCAtNDc0LDYgKzQ3NCw3IEBAIF9fWk43V2ViQ29yZTE1U3RyaW5n
VHJ1bmNhdG9yNXdpZHRoRVJLTjNXVEY2U3RyaW5nRVJLTlNfNEZvbnRFTlMwXzI0RW5hYmxlUm91
bmRpCiBfX1pON1dlYkNvcmUxNVZpc2libGVQb3NpdGlvbkMxRVJLTlNfOFBvc2l0aW9uRU5TXzlF
QWZmaW5pdHlFCiBfX1pON1dlYkNvcmUxNWRlZmF1bHRMYW5ndWFnZUV2CiBfX1pON1dlYkNvcmUx
NWxvY2FsaXplZFN0cmluZ0VQS2MKK19fWk43V2ViQ29yZTE1bWltZVR5cGVGcm9tVVJMRVJLTlNf
NEtVUkxFCiBfX1pON1dlYkNvcmUxNW9yaWdpbmFsVVJMRGF0YUVQNU5TVVJMCiBfX1pON1dlYkNv
cmUxNXBhdGhHZXRGaWxlTmFtZUVSS04zV1RGNlN0cmluZ0UKIF9fWk43V2ViQ29yZTE1cmVwb3J0
RXhjZXB0aW9uRVBOM0pTQzlFeGVjU3RhdGVFTlMwXzdKU1ZhbHVlRVBOU18xMkNhY2hlZFNjcmlw
dEUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCmlu
ZGV4IDU5MjA1YjEzNDhjZDlhNzg2M2Y0OGM5MTljMzE1ZjgzZDA1OTUwZjQuLjI2OWMyYjMyZjk1
YjRhNzAxYzA5NzBlNmY1MjVkZWNlNzg2ZGZlNTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcApAQCAtMzIzLDEyICszMjMsNiBAQCBzdGF0aWMg
QXRvbWljU3RyaW5nIGNsYXNzTmFtZUZvclNoYWRvd1Jvb3QoY29uc3QgTm9kZSogbm9kZSkKICAg
ICByZXR1cm4gcGx1Z0luTGFyZ2VTaXplQ2xhc3NOYW1lOwogfQogCi12b2lkIEhUTUxQbHVnSW5J
bWFnZUVsZW1lbnQ6OnNldElzUHJpbWFyeVNuYXBzaG90dGVkUGx1Z0luKGJvb2wgaXNQcmltYXJ5
U25hcHNob3R0ZWRQbHVnSW4pCi17Ci0gICAgaWYgKGlzUHJpbWFyeVNuYXBzaG90dGVkUGx1Z0lu
KQotICAgICAgICByZXN0YXJ0U25hcHNob3R0ZWRQbHVnSW4oKTsKLX0KLQogdm9pZCBIVE1MUGx1
Z0luSW1hZ2VFbGVtZW50Ojp1cGRhdGVTbmFwc2hvdEluZm8oKQogewogICAgIFNoYWRvd1Jvb3Qq
IHJvb3QgPSB1c2VyQWdlbnRTaGFkb3dSb290KCk7CkBAIC00MTEsOSArNDA1LDcgQEAgc3RhdGlj
IHZvaWQgYWRkUGx1Z0luc0Zyb21Ob2RlTGlzdE1hdGNoaW5nUGx1Z0luT3JpZ2luKEhUTUxQbHVn
SW5JbWFnZUVsZW1lbnRMaXMKICAgICAgICAgICAgIGlmIChwbHVnSW5FbGVtZW50LT5pc1BsdWdJ
bkltYWdlRWxlbWVudCgpICYmIHBsdWdJbkVsZW1lbnQtPmRpc3BsYXlTdGF0ZSgpIDw9IEhUTUxQ
bHVnSW5FbGVtZW50OjpEaXNwbGF5aW5nU25hcHNob3QpIHsKICAgICAgICAgICAgICAgICBIVE1M
UGx1Z0luSW1hZ2VFbGVtZW50KiBwbHVnSW5JbWFnZUVsZW1lbnQgPSB0b0hUTUxQbHVnSW5JbWFn
ZUVsZW1lbnQobm9kZSk7CiAgICAgICAgICAgICAgICAgY29uc3QgS1VSTCYgbG9hZGVkVVJMID0g
cGx1Z0luSW1hZ2VFbGVtZW50LT5sb2FkZWRVcmwoKTsKLSAgICAgICAgICAgICAgICBTdHJpbmcg
b3RoZXJNaW1lVHlwZSA9IHBsdWdJbkltYWdlRWxlbWVudC0+c2VydmljZVR5cGUoKTsKLSAgICAg
ICAgICAgICAgICBpZiAob3RoZXJNaW1lVHlwZS5pc0VtcHR5KCkpCi0gICAgICAgICAgICAgICAg
ICAgIG90aGVyTWltZVR5cGUgPSBtaW1lVHlwZUZyb21VUkwobG9hZGVkVVJMKTsKKyAgICAgICAg
ICAgICAgICBTdHJpbmcgb3RoZXJNaW1lVHlwZSA9IHBsdWdJbkltYWdlRWxlbWVudC0+bG9hZGVk
TWltZVR5cGUoKTsKICAgICAgICAgICAgICAgICBpZiAocGx1Z0luT3JpZ2luID09IGxvYWRlZFVS
TC5ob3N0KCkgJiYgbWltZVR5cGUgPT0gb3RoZXJNaW1lVHlwZSkKICAgICAgICAgICAgICAgICAg
ICAgcGx1Z0luTGlzdC5hcHBlbmQocGx1Z0luSW1hZ2VFbGVtZW50KTsKICAgICAgICAgICAgIH0K
QEAgLTQyMSwyMSArNDEzLDEzIEBAIHN0YXRpYyB2b2lkIGFkZFBsdWdJbnNGcm9tTm9kZUxpc3RN
YXRjaGluZ1BsdWdJbk9yaWdpbihIVE1MUGx1Z0luSW1hZ2VFbGVtZW50TGlzCiAgICAgfQogfQog
Ci12b2lkIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnVzZXJEaWRDbGlja1NuYXBzaG90KFBhc3NS
ZWZQdHI8TW91c2VFdmVudD4gZXZlbnQpCit2b2lkIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnJl
c3RhcnRTaW1pbGFyUGx1Z0lucygpCiB7Ci0gICAgbV9wZW5kaW5nQ2xpY2tFdmVudEZyb21TbmFw
c2hvdCA9IGV2ZW50OwotICAgIFN0cmluZyBwbHVnSW5PcmlnaW4gPSBtX2xvYWRlZFVybC5ob3N0
KCk7Ci0gICAgU3RyaW5nIG1pbWVUeXBlID0gc2VydmljZVR5cGUoKTsKLSAgICBpZiAobWltZVR5
cGUuaXNFbXB0eSgpKQotICAgICAgICBtaW1lVHlwZSA9IG1pbWVUeXBlRnJvbVVSTChtX2xvYWRl
ZFVybCk7Ci0gICAgaWYgKGRvY3VtZW50KCktPnBhZ2UoKSAmJiAhU2NoZW1lUmVnaXN0cnk6OnNo
b3VsZFRyZWF0VVJMU2NoZW1lQXNMb2NhbChkb2N1bWVudCgpLT5wYWdlKCktPm1haW5GcmFtZSgp
LT5kb2N1bWVudCgpLT5iYXNlVVJMKCkucHJvdG9jb2woKSkpCi0gICAgICAgIGRvY3VtZW50KCkt
PnBhZ2UoKS0+cGx1Z0luQ2xpZW50KCktPmRpZFN0YXJ0RnJvbU9yaWdpbihkb2N1bWVudCgpLT5w
YWdlKCktPm1haW5GcmFtZSgpLT5kb2N1bWVudCgpLT5iYXNlVVJMKCkuaG9zdCgpLCBwbHVnSW5P
cmlnaW4sIG1pbWVUeXBlKTsKLQotICAgIHJlc3RhcnRTbmFwc2hvdHRlZFBsdWdJbigpOwotCiAg
ICAgLy8gUmVzdGFydCBhbnkgb3RoZXIgc25hcHNob3R0ZWQgcGx1Z2lucyBpbiB0aGUgcGFnZSB3
aXRoIHRoZSBzYW1lIG9yaWdpbi4gTm90ZSB0aGF0IHRoZXkKICAgICAvLyBtYXkgYmUgaW4gZGlm
ZmVyZW50IGZyYW1lcywgc28gdHJhdmVyc2UgZnJvbSB0aGUgdG9wIG9mIHRoZSBkb2N1bWVudC4K
IAorICAgIFN0cmluZyBwbHVnSW5PcmlnaW4gPSBtX2xvYWRlZFVybC5ob3N0KCk7CisgICAgU3Ry
aW5nIG1pbWVUeXBlID0gbG9hZGVkTWltZVR5cGUoKTsKICAgICBIVE1MUGx1Z0luSW1hZ2VFbGVt
ZW50TGlzdCBwbHVnaW5zTmVlZGluZ1Jlc3RhcnQ7CiAKICAgICBpZiAoIWRvY3VtZW50KCktPnBh
Z2UoKSkKQEAgLTQ2Miw2ICs0NDYsMjUgQEAgdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojp1
c2VyRGlkQ2xpY2tTbmFwc2hvdChQYXNzUmVmUHRyPE1vdXNlRXZlbnQ+IGV2ZW50KQogICAgIH0K
IH0KIAordm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojp1c2VyRGlkQ2xpY2tTbmFwc2hvdChQ
YXNzUmVmUHRyPE1vdXNlRXZlbnQ+IGV2ZW50KQoreworICAgIG1fcGVuZGluZ0NsaWNrRXZlbnRG
cm9tU25hcHNob3QgPSBldmVudDsKKyAgICBTdHJpbmcgcGx1Z0luT3JpZ2luID0gbV9sb2FkZWRV
cmwuaG9zdCgpOworICAgIGlmIChkb2N1bWVudCgpLT5wYWdlKCkgJiYgIVNjaGVtZVJlZ2lzdHJ5
OjpzaG91bGRUcmVhdFVSTFNjaGVtZUFzTG9jYWwoZG9jdW1lbnQoKS0+cGFnZSgpLT5tYWluRnJh
bWUoKS0+ZG9jdW1lbnQoKS0+YmFzZVVSTCgpLnByb3RvY29sKCkpKQorICAgICAgICBkb2N1bWVu
dCgpLT5wYWdlKCktPnBsdWdJbkNsaWVudCgpLT5kaWRTdGFydEZyb21PcmlnaW4oZG9jdW1lbnQo
KS0+cGFnZSgpLT5tYWluRnJhbWUoKS0+ZG9jdW1lbnQoKS0+YmFzZVVSTCgpLmhvc3QoKSwgcGx1
Z0luT3JpZ2luLCBsb2FkZWRNaW1lVHlwZSgpKTsKKworICAgIHJlc3RhcnRTbmFwc2hvdHRlZFBs
dWdJbigpOworICAgIHJlc3RhcnRTaW1pbGFyUGx1Z0lucygpOworfQorCit2b2lkIEhUTUxQbHVn
SW5JbWFnZUVsZW1lbnQ6OnNldElzUHJpbWFyeVNuYXBzaG90dGVkUGx1Z0luKGJvb2wgaXNQcmlt
YXJ5U25hcHNob3R0ZWRQbHVnSW4pCit7CisgICAgaWYgKGlzUHJpbWFyeVNuYXBzaG90dGVkUGx1
Z0luKSB7CisgICAgICAgIHJlc3RhcnRTbmFwc2hvdHRlZFBsdWdJbigpOworICAgICAgICByZXN0
YXJ0U2ltaWxhclBsdWdJbnMoKTsKKyAgICB9Cit9CisKIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxl
bWVudDo6cmVzdGFydFNuYXBzaG90dGVkUGx1Z0luKCkKIHsKICAgICBpZiAoZGlzcGxheVN0YXRl
KCkgIT0gUmVzdGFydGluZ1dpdGhQZW5kaW5nTW91c2VDbGljaykKQEAgLTU2MSwxMSArNTY0LDcg
QEAgdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpzdWJmcmFtZUxvYWRlcldpbGxDcmVhdGVQ
bHVnSW4oY29uc3QgS1VSTCYgdXJsKQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgU3Ry
aW5nIG1pbWVUeXBlID0gc2VydmljZVR5cGUoKTsKLSAgICBpZiAobWltZVR5cGUuaXNFbXB0eSgp
KQotICAgICAgICBtaW1lVHlwZSA9IG1pbWVUeXBlRnJvbVVSTCh1cmwpOwotCi0gICAgaWYgKGRv
Y3VtZW50KCktPnBhZ2UoKS0+cGx1Z0luQ2xpZW50KCktPnNob3VsZEF1dG9TdGFydEZyb21Pcmln
aW4oZG9jdW1lbnQoKS0+cGFnZSgpLT5tYWluRnJhbWUoKS0+ZG9jdW1lbnQoKS0+YmFzZVVSTCgp
Lmhvc3QoKSwgdXJsLmhvc3QoKSwgbWltZVR5cGUpKSB7CisgICAgaWYgKGRvY3VtZW50KCktPnBh
Z2UoKS0+cGx1Z0luQ2xpZW50KCktPnNob3VsZEF1dG9TdGFydEZyb21PcmlnaW4oZG9jdW1lbnQo
KS0+cGFnZSgpLT5tYWluRnJhbWUoKS0+ZG9jdW1lbnQoKS0+YmFzZVVSTCgpLmhvc3QoKSwgdXJs
Lmhvc3QoKSwgbG9hZGVkTWltZVR5cGUoKSkpIHsKICAgICAgICAgTE9HKFBsdWdpbnMsICIlcCBQ
bHVnLWluIGZyb20gKCVzLCAlcykgaXMgbWFya2VkIHRvIGF1dG8tc3RhcnQsIHNldCB0byBwbGF5
IiwgdGhpcywgZG9jdW1lbnQoKS0+cGFnZSgpLT5tYWluRnJhbWUoKS0+ZG9jdW1lbnQoKS0+YmFz
ZVVSTCgpLmhvc3QoKS51dGY4KCkuZGF0YSgpLCB1cmwuaG9zdCgpLnV0ZjgoKS5kYXRhKCkpOwog
ICAgICAgICByZXR1cm47CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MUGx1Z0luSW1hZ2VFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5J
bWFnZUVsZW1lbnQuaAppbmRleCBmMTVlODA0Nzg3Nzk4YzRhOWVjOGYyMDdmZWQ5MTNiNjg5NzU3
YjFkLi5mMWNkYmE0YTQ4ZWJmOGVlYzFiNmFkNjZhMTg4MGJiYTgyNjk4M2M0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaApAQCAtNTksNiArNTksMTUg
QEAgcHVibGljOgogICAgIGNvbnN0IFN0cmluZyYgc2VydmljZVR5cGUoKSBjb25zdCB7IHJldHVy
biBtX3NlcnZpY2VUeXBlOyB9CiAgICAgY29uc3QgU3RyaW5nJiB1cmwoKSBjb25zdCB7IHJldHVy
biBtX3VybDsgfQogICAgIGNvbnN0IEtVUkwmIGxvYWRlZFVybCgpIGNvbnN0IHsgcmV0dXJuIG1f
bG9hZGVkVXJsOyB9CisKKyAgICBjb25zdCBTdHJpbmcgbG9hZGVkTWltZVR5cGUoKSBjb25zdAor
ICAgIHsKKyAgICAgICAgU3RyaW5nIG1pbWVUeXBlID0gc2VydmljZVR5cGUoKTsKKyAgICAgICAg
aWYgKG1pbWVUeXBlLmlzRW1wdHkoKSkKKyAgICAgICAgICAgIG1pbWVUeXBlID0gbWltZVR5cGVG
cm9tVVJMKG1fbG9hZGVkVXJsKTsKKyAgICAgICAgcmV0dXJuIG1pbWVUeXBlOworICAgIH0KKwog
ICAgIGJvb2wgc2hvdWxkUHJlZmVyUGx1Z0luc0ZvckltYWdlcygpIGNvbnN0IHsgcmV0dXJuIG1f
c2hvdWxkUHJlZmVyUGx1Z0luc0ZvckltYWdlczsgfQogCiAgICAgLy8gUHVibGljIGZvciBGcmFt
ZVZpZXc6OmFkZFdpZGdldFRvVXBkYXRlKCkKQEAgLTExOCw2ICsxMjcsOCBAQCBwcml2YXRlOgog
CiAgICAgdm9pZCBzd2FwUmVuZGVyZXJUaW1lckZpcmVkKFRpbWVyPEhUTUxQbHVnSW5JbWFnZUVs
ZW1lbnQ+Kik7CiAKKyAgICB2b2lkIHJlc3RhcnRTaW1pbGFyUGx1Z0lucygpOworCiAgICAgdmly
dHVhbCBib29sIGlzUGx1Z0luSW1hZ2VFbGVtZW50KCkgY29uc3QgT1ZFUlJJREUgeyByZXR1cm4g
dHJ1ZTsgfQogCiAgICAgYm9vbCBtX25lZWRzV2lkZ2V0VXBkYXRlOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQbHVnSW5DbGllbnQuY3Bw
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQbHVnSW5DbGll
bnQuY3BwCmluZGV4IDZkNjIyZDZkNzY4MjRiOWM2OGU3Y2Y2MTdmZGUzNGM4OWRiMTQwZjQuLjg1
NGQ3NzM5ZjMwZjE0ZTM2ZTYxYjM2ODYwMWEwYmQ2ZmQ2Y2Q1YmMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGx1Z0luQ2xpZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsdWdJbkNs
aWVudC5jcHAKQEAgLTMzLDcgKzMzLDggQEAKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKLVdlYlBs
dWdJbkNsaWVudDo6V2ViUGx1Z0luQ2xpZW50KFdlYlBhZ2UqKQorV2ViUGx1Z0luQ2xpZW50OjpX
ZWJQbHVnSW5DbGllbnQoV2ViUGFnZSogcGFnZSkKKyAgICA6IG1fcGFnZShwYWdlKQogewogfQog
CkBAIC00OCw3ICs0OSw3IEBAIHZvaWQgV2ViUGx1Z0luQ2xpZW50OjpwYWdlRGVzdHJveWVkKCkK
IAogYm9vbCBXZWJQbHVnSW5DbGllbnQ6OnNob3VsZEF1dG9TdGFydEZyb21PcmlnaW4oY29uc3Qg
U3RyaW5nJiBwYWdlT3JpZ2luLCBjb25zdCBTdHJpbmcmIHBsdWdpbk9yaWdpbiwgY29uc3QgU3Ry
aW5nJiBtaW1lVHlwZSkKIHsKLSAgICByZXR1cm4gV2ViUHJvY2Vzczo6c2hhcmVkKCkuc2hvdWxk
UGx1Z0luQXV0b1N0YXJ0RnJvbU9yaWdpbihwYWdlT3JpZ2luLCBwbHVnaW5PcmlnaW4sIG1pbWVU
eXBlKTsKKyAgICByZXR1cm4gV2ViUHJvY2Vzczo6c2hhcmVkKCkuc2hvdWxkUGx1Z0luQXV0b1N0
YXJ0RnJvbU9yaWdpbihtX3BhZ2UsIHBhZ2VPcmlnaW4sIHBsdWdpbk9yaWdpbiwgbWltZVR5cGUp
OwogfQogCiB2b2lkIFdlYlBsdWdJbkNsaWVudDo6ZGlkU3RhcnRGcm9tT3JpZ2luKGNvbnN0IFN0
cmluZyYgcGFnZU9yaWdpbiwgY29uc3QgU3RyaW5nJiBwbHVnaW5PcmlnaW4sIGNvbnN0IFN0cmlu
ZyYgbWltZVR5cGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYlBsdWdJbkNsaWVudC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJQbHVnSW5DbGllbnQuaAppbmRleCAxMmU5ZGNjOTkxNjA0OThmMWQy
NDZmMWE3ZWQxZTY5OWM2YzIwNTllLi41MzEwMjhhMThjZjBiMzgyMDc1N2YzNDc3YTQ2ZmE5NzFm
ODk3NzYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYlBsdWdJbkNsaWVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViUGx1Z0luQ2xpZW50LmgKQEAgLTQwLDYgKzQwLDggQEAgcHJpdmF0ZToK
ICAgICB2aXJ0dWFsIHZvaWQgcGFnZURlc3Ryb3llZCgpOwogICAgIHZpcnR1YWwgYm9vbCBzaG91
bGRBdXRvU3RhcnRGcm9tT3JpZ2luKGNvbnN0IFN0cmluZyYgcGFnZU9yaWdpbiwgY29uc3QgU3Ry
aW5nJiBwbHVnaW5PcmlnaW4sIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpOwogICAgIHZpcnR1YWwg
dm9pZCBkaWRTdGFydEZyb21PcmlnaW4oY29uc3QgU3RyaW5nJiBwYWdlT3JpZ2luLCBjb25zdCBT
dHJpbmcmIHBsdWdpbk9yaWdpbiwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSk7CisKKyAgICBXZWJQ
YWdlKiBtX3BhZ2U7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAppbmRleCA0YzA2ZjIwODVkZWExZTRm
OWY0ZDZmZTgxODkzYjk0ODJhMjBhZjQxLi40YzA4YzRjYjkyNmM0YjkxODAyY2RhODA2NGM0ZjRh
Njk1ZjlhYTU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuY3BwCkBAIC0zOTQ5LDYgKzM5NDksOSBAQCB2b2lkIFdlYlBhZ2U6OmRldGVybWluZVByaW1h
cnlTbmFwc2hvdHRlZFBsdWdJbigpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1fZGlkRmluZFBy
aW1hcnlTbmFwc2hvdHRlZFBsdWdpbiA9IHRydWU7CisgICAgbV9wcmltYXJ5UGx1Z0luUGFnZU9y
aWdpbiA9IG1fcGFnZS0+bWFpbkZyYW1lKCktPmRvY3VtZW50KCktPmJhc2VVUkwoKS5ob3N0KCk7
CisgICAgbV9wcmltYXJ5UGx1Z0luT3JpZ2luID0gY2FuZGlkYXRlUGx1Z0luLT5sb2FkZWRVcmwo
KS5ob3N0KCk7CisgICAgbV9wcmltYXJ5UGx1Z0luTWltZVR5cGUgPSBjYW5kaWRhdGVQbHVnSW4t
PmxvYWRlZE1pbWVUeXBlKCk7CiAKICAgICBjYW5kaWRhdGVQbHVnSW4tPnNldElzUHJpbWFyeVNu
YXBzaG90dGVkUGx1Z0luKHRydWUpOwogfQpAQCAtMzk1OCw2ICszOTYxLDE0IEBAIHZvaWQgV2Vi
UGFnZTo6cmVzZXRQcmltYXJ5U25hcHNob3R0ZWRQbHVnSW4oKQogICAgIG1fcmVhZHlUb0ZpbmRQ
cmltYXJ5U25hcHNob3R0ZWRQbHVnaW4gPSBmYWxzZTsKICAgICBtX2RpZEZpbmRQcmltYXJ5U25h
cHNob3R0ZWRQbHVnaW4gPSBmYWxzZTsKIH0KKworYm9vbCBXZWJQYWdlOjptYXRjaGVzUHJpbWFy
eVBsdWdJbihjb25zdCBTdHJpbmcmIHBhZ2VPcmlnaW4sIGNvbnN0IFN0cmluZyYgcGx1Z2luT3Jp
Z2luLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25zdAoreworICAgIGlmICghbV9kaWRGaW5k
UHJpbWFyeVNuYXBzaG90dGVkUGx1Z2luKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBy
ZXR1cm4gKHBhZ2VPcmlnaW4gPT0gbV9wcmltYXJ5UGx1Z0luUGFnZU9yaWdpbiAmJiBwbHVnaW5P
cmlnaW4gPT0gbV9wcmltYXJ5UGx1Z0luT3JpZ2luICYmIG1pbWVUeXBlID09IG1fcHJpbWFyeVBs
dWdJbk1pbWVUeXBlKTsKK30KICNlbmRpZiAvLyBFTkFCTEUoUFJJTUFSWV9TTkFQU0hPVFRFRF9Q
TFVHSU5fSEVVUklTVElDKQogCiBQYXNzUmVmUHRyPFJhbmdlPiBXZWJQYWdlOjpjdXJyZW50U2Vs
ZWN0aW9uQXNSYW5nZSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaAppbmRleCBlY2E2NGM5NmYxN2JjZGY3YzIxYmVlYzM1ZDIyNjA0YjIwMGYwMjAxLi4zMWE5
NzY3MzJmODE1OTFmNTYwN2JlOTUxY2RhMjAzZjQ3ZjdjZDZkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKQEAgLTY0MCw2ICs2NDAsNyBAQCBwdWJsaWM6
CiAjaWYgRU5BQkxFKFBSSU1BUllfU05BUFNIT1RURURfUExVR0lOX0hFVVJJU1RJQykKICAgICB2
b2lkIGRldGVybWluZVByaW1hcnlTbmFwc2hvdHRlZFBsdWdJbigpOwogICAgIHZvaWQgcmVzZXRQ
cmltYXJ5U25hcHNob3R0ZWRQbHVnSW4oKTsKKyAgICBib29sIG1hdGNoZXNQcmltYXJ5UGx1Z0lu
KGNvbnN0IFN0cmluZyYgcGFnZU9yaWdpbiwgY29uc3QgU3RyaW5nJiBwbHVnaW5PcmlnaW4sIGNv
bnN0IFN0cmluZyYgbWltZVR5cGUpIGNvbnN0OwogI2VuZGlmCiAKIHByaXZhdGU6CkBAIC04NjAs
NiArODYxLDkgQEAgcHJpdmF0ZToKICNpZiBFTkFCTEUoUFJJTUFSWV9TTkFQU0hPVFRFRF9QTFVH
SU5fSEVVUklTVElDKQogICAgIGJvb2wgbV9yZWFkeVRvRmluZFByaW1hcnlTbmFwc2hvdHRlZFBs
dWdpbjsKICAgICBib29sIG1fZGlkRmluZFByaW1hcnlTbmFwc2hvdHRlZFBsdWdpbjsKKyAgICBT
dHJpbmcgbV9wcmltYXJ5UGx1Z0luUGFnZU9yaWdpbjsKKyAgICBTdHJpbmcgbV9wcmltYXJ5UGx1
Z0luT3JpZ2luOworICAgIFN0cmluZyBtX3ByaW1hcnlQbHVnSW5NaW1lVHlwZTsKICNlbmRpZgog
CiAjaWYgUExBVEZPUk0oTUFDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5j
cHAKaW5kZXggZDkwNWNkZDAxYWVlZmJiODJmNWMyZDAwMmU5MTI4YmM5YmRhZDZjYS4uMTAyOWRk
NzYwZTRlYzQ2YjEyMmQyYzdkNjMwNzM1NzA3YzU1YjZmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlByb2Nlc3MuY3BwCkBAIC03ODksMTIgKzc4OSwxOCBAQCBib29sIFdlYlByb2Nl
c3M6OmlzUGx1Z0luQXV0b1N0YXJ0T3JpZ2luSGFzaCh1bnNpZ25lZCBwbHVnSW5PcmlnaW5IYXNo
KQogICAgIHJldHVybiBjdXJyZW50VGltZSgpIDwgaXQtPnZhbHVlOwogfQogCi1ib29sIFdlYlBy
b2Nlc3M6OnNob3VsZFBsdWdJbkF1dG9TdGFydEZyb21PcmlnaW4oY29uc3QgU3RyaW5nJiBwYWdl
T3JpZ2luLCBjb25zdCBTdHJpbmcmIHBsdWdpbk9yaWdpbiwgY29uc3QgU3RyaW5nJiBtaW1lVHlw
ZSkKK2Jvb2wgV2ViUHJvY2Vzczo6c2hvdWxkUGx1Z0luQXV0b1N0YXJ0RnJvbU9yaWdpbihjb25z
dCBXZWJQYWdlKiBwYWdlLCBjb25zdCBTdHJpbmcmIHBhZ2VPcmlnaW4sIGNvbnN0IFN0cmluZyYg
cGx1Z2luT3JpZ2luLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKQogewogICAgIGlmIChtX3BsdWdJ
bkF1dG9TdGFydE9yaWdpbnMuY29udGFpbnMocGx1Z2luT3JpZ2luKSkKICAgICAgICAgcmV0dXJu
IHRydWU7CiAKLSAgICAvLyBUaGUgcGx1Z2luIHdhc24ndCBpbiB0aGUgZ2VuZXJhbCB3aGl0ZWxp
c3QsIHNvIGNoZWNrIGFnYWluc3QgdGhlIG1vcmUgZXhwbGljaXQgaGFzaCBsaXN0LgorI2lmZGVm
IEVOQUJMRV9QUklNQVJZX1NOQVBTSE9UVEVEX1BMVUdJTl9IRVVSSVNUSUMKKyAgICAvLyBUaGUg
cGx1Z2luIHdhc24ndCBpbiB0aGUgZ2VuZXJhbCB3aGl0ZWxpc3QsIHNvIGNoZWNrIGlmIGl0IHNp
bWlsYXIgdG8gdGhlIHByaW1hcnkgcGx1Z2luIGZvciB0aGUgcGFnZSAoaWYgd2UndmUgZm91bmQg
b25lKS4KKyAgICBpZiAocGFnZSAmJiBwYWdlLT5tYXRjaGVzUHJpbWFyeVBsdWdJbihwYWdlT3Jp
Z2luLCBwbHVnaW5PcmlnaW4sIG1pbWVUeXBlKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisjZW5k
aWYKKworICAgIC8vIExhc3RseSBjaGVjayBhZ2FpbnN0IHRoZSBtb3JlIGV4cGxpY2l0IGhhc2gg
bGlzdC4KICAgICByZXR1cm4gaXNQbHVnSW5BdXRvU3RhcnRPcmlnaW5IYXNoKGhhc2hGb3JQbHVn
SW5PcmlnaW4ocGFnZU9yaWdpbiwgcGx1Z2luT3JpZ2luLCBtaW1lVHlwZSkpOwogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaCBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCmluZGV4IDEyYjQxN2NkYjNkZTAxYmVlMzhi
YWMxYjc2MzY1ZDI1NDMxODlmMzkuLjE1OTc2ODYzMzJjNzdjODFkNTA2OTA3MGMxYjI1NzJkNWRi
YjNhZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oCkBAIC0xMjUsNyAr
MTI1LDcgQEAgcHVibGljOgogICAgIHZvaWQgYWRkVmlzaXRlZExpbmsoV2ViQ29yZTo6TGlua0hh
c2gpOwogICAgIGJvb2wgaXNMaW5rVmlzaXRlZChXZWJDb3JlOjpMaW5rSGFzaCkgY29uc3Q7CiAK
LSAgICBib29sIHNob3VsZFBsdWdJbkF1dG9TdGFydEZyb21PcmlnaW4oY29uc3QgU3RyaW5nJiBw
YWdlT3JpZ2luLCBjb25zdCBTdHJpbmcmIHBsdWdpbk9yaWdpbiwgY29uc3QgU3RyaW5nJiBtaW1l
VHlwZSk7CisgICAgYm9vbCBzaG91bGRQbHVnSW5BdXRvU3RhcnRGcm9tT3JpZ2luKGNvbnN0IFdl
YlBhZ2UqLCBjb25zdCBTdHJpbmcmIHBhZ2VPcmlnaW4sIGNvbnN0IFN0cmluZyYgcGx1Z2luT3Jp
Z2luLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKTsKICAgICB2b2lkIHBsdWdJbkRpZFN0YXJ0RnJv
bU9yaWdpbihjb25zdCBTdHJpbmcmIHBhZ2VPcmlnaW4sIGNvbnN0IFN0cmluZyYgcGx1Z2luT3Jp
Z2luLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKTsKICAgICB2b2lkIHBsdWdJbkRpZFJlY2VpdmVV
c2VySW50ZXJhY3Rpb24odW5zaWduZWQgcGx1Z0luT3JpZ2luSGFzaCk7CiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA5ODkz
OWRmNzJjZDk2NDlkM2UxNWJiZWFlYjE2ODU4NDNlYzY4M2EzLi40NGMzZmY1OWFjOWQ2YWNjZjVi
YjJkOGJlZGZhN2FkYjk0YTMxNGFkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
KysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTMtMDMtMjYg
IERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIFdoZW4gYSBwcmltYXJ5
IHBsdWdpbiBpcyByZXN0YXJ0ZWQsIGFsc28gc3RhcnQgc2ltaWxhciBwbHVnaW5zCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTMyNjUKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUd28gbmV3IHRlc3RzLiBU
aGUgZmlyc3QgaGFzIG9uZSBiaWcgcGx1Z2luICh0aGF0IHNob3VsZCBiZSBkZXRlY3RlZCBhcyB0
aGUgcHJpbWFyeSkKKyAgICAgICAgYW5kIHRoZW4gYSBmZXcgc21hbGxlciB2ZXJzaW9ucyAod2hp
Y2ggc2hvdWxkIGF1dG9zdGFydCBhbG9uZyB3aXRoIHRoZSBwcmltYXJ5KS4KKyAgICAgICAgVGhl
IHNlY29uZCBoYXMgb25lIGJpZyBwbHVnaW4sIGFuZCB0aGVuIGFkZHMgYSBzaW1pbGFyIG9uZSBh
ZnRlciBhIHNob3J0IGRlbGF5LgorCisgICAgICAgICogcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5z
L3NuYXBzaG90dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50LWFmdGVyLWRlbGF5LWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3Nu
YXBzaG90dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50LWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogcGx1Z2lucy9zbmFwc2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1k
b21pbmFudC1hZnRlci1kZWxheS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbHVnaW5zL3NuYXBz
aG90dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50Lmh0bWw6IEFkZGVkLgorCiAyMDEz
LTAzLTI1ICBQZXRlciBLYXN0aW5nICA8cGthc3RpbmdAZ29vZ2xlLmNvbT4KIAogICAgICAgICBb
Y2hyb21pdW1dIFJlYmFzZWxpbmluZywgZXRjLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjLXdrMi9wbHVnaW5zL3NuYXBzaG90dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRv
bWluYW50LWFmdGVyLWRlbGF5LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy13azIvcGx1Z2lucy9zbmFwc2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1kb21pbmFudC1h
ZnRlci1kZWxheS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTJmMzQzMzEyNWFjNjJiNTVjYjI3
NzYwZDlhZmNkYmRiYjNlNDdhMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRm
b3JtL21hYy13azIvcGx1Z2lucy9zbmFwc2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1kb21p
bmFudC1hZnRlci1kZWxheS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNSBAQAorbGF5ZXIgYXQg
KDAsMCkgc2l6ZSA3ODV4ODUwCisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA3ODV4NjAwCits
YXllciBhdCAoMCwwKSBzaXplIDc4NXg4NTAKKyAgUmVuZGVyQmxvY2sge0hUTUx9IGF0ICgwLDAp
IHNpemUgNzg1eDg1MAorICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDgpIHNpemUgNzY5eDgz
NAorICAgICAgUmVuZGVyQmxvY2sge1B9IGF0ICgwLDApIHNpemUgNzY5eDE4CisgICAgICAgIFJl
bmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDY5NngxOAorICAgICAgICAgIHRleHQgcnVu
IGF0ICgwLDApIHdpZHRoIDY5NjogIlRoZSBkb21pbmFudCBwbHVnaW4gc2hvdWxkIHBsYXkgYXV0
b21hdGljYWxseSwgYW5kIHRoZW4gc28gc2hvdWxkIHRoZSBpZGVudGljYWwgcGx1Z2luIHRoYXQg
aXMgYWRkZWQgYSBiaXQgbGF0ZXIuIgorICAgICAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMzQp
IHNpemUgNzY5eDYwMAorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAw
eDAKKyAgICAgIFJlbmRlckJsb2NrIHtESVZ9IGF0ICgwLDYzNCkgc2l6ZSA3Njl4MjAwCitsYXll
ciBhdCAoOCw0Mikgc2l6ZSA2MDB4NjAwCisgIFJlbmRlckVtYmVkZGVkT2JqZWN0IHtFTUJFRH0g
YXQgKDAsMCkgc2l6ZSA2MDB4NjAwCitsYXllciBhdCAoOCw2NDIpIHNpemUgMjAweDIwMAorICBS
ZW5kZXJFbWJlZGRlZE9iamVjdCB7RU1CRUR9IGF0ICgwLDApIHNpemUgMjAweDIwMApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3NuYXBzaG90dGluZy9h
dXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL21hYy13azIvcGx1Z2lucy9zbmFwc2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1k
b21pbmFudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzJmNjI0YWIzM2IzZWMwY2UyYjM3ODVj
Y2ViODAxZGVmOGE2YWRlZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy13azIvcGx1Z2lucy9zbmFwc2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1kb21pbmFu
dC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyNCBAQAorbGF5ZXIgYXQgKDAsMCkgc2l6ZSA3ODV4
MTA1NgorICBSZW5kZXJWaWV3IGF0ICgwLDApIHNpemUgNzg1eDYwMAorbGF5ZXIgYXQgKDAsMCkg
c2l6ZSA3ODV4MTA1NgorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6ZSA3ODV4MTA1
NgorICAgIFJlbmRlckJvZHkge0JPRFl9IGF0ICg4LDgpIHNpemUgNzY5eDEwMzIKKyAgICAgIFJl
bmRlckJsb2NrIHtQfSBhdCAoMCwwKSBzaXplIDc2OXgxOAorICAgICAgICBSZW5kZXJUZXh0IHsj
dGV4dH0gYXQgKDAsMCkgc2l6ZSA3NTB4MTgKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoMCwwKSB3
aWR0aCA3NTA6ICJUaGUgZG9taW5hbnQgcGx1Z2luIHNob3VsZCBwbGF5IGF1dG9tYXRpY2FsbHks
IGFuZCB0cmlnZ2VyIGFsbCB0aGUgb3RoZXJzIHRvIHBsYXkgYXMgd2VsbCwgc2luY2UgdGhleSBh
cmUgdGhlIHNhbWUgb3JpZ2luLiIKKyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwzNCkgc2l6
ZSA3Njl4NjAwCisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAor
ICAgICAgUmVuZGVyQmxvY2sge1B9IGF0ICgwLDY1MCkgc2l6ZSA3Njl4MjAwCisgICAgICAgIFJl
bmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAorICAgICAgUmVuZGVyQmxvY2sge1B9
IGF0ICgwLDg2Nikgc2l6ZSA3Njl4MTAwCisgICAgICAgIFJlbmRlclRleHQgeyN0ZXh0fSBhdCAo
MCwwKSBzaXplIDB4MAorICAgICAgUmVuZGVyQmxvY2sge1B9IGF0ICgwLDk4Mikgc2l6ZSA3Njl4
NTAKKyAgICAgICAgUmVuZGVyVGV4dCB7I3RleHR9IGF0ICgwLDApIHNpemUgMHgwCitsYXllciBh
dCAoOCw0Mikgc2l6ZSA2MDB4NjAwCisgIFJlbmRlckVtYmVkZGVkT2JqZWN0IHtFTUJFRH0gYXQg
KDAsMCkgc2l6ZSA2MDB4NjAwCitsYXllciBhdCAoOCw2NTgpIHNpemUgMjAweDIwMAorICBSZW5k
ZXJFbWJlZGRlZE9iamVjdCB7RU1CRUR9IGF0ICgwLDApIHNpemUgMjAweDIwMAorbGF5ZXIgYXQg
KDgsODc0KSBzaXplIDEwMHgxMDAKKyAgUmVuZGVyRW1iZWRkZWRPYmplY3Qge0VNQkVEfSBhdCAo
MCwwKSBzaXplIDEwMHgxMDAKK2xheWVyIGF0ICg4LDk5MCkgc2l6ZSA1MHg1MAorICBSZW5kZXJF
bWJlZGRlZE9iamVjdCB7RU1CRUR9IGF0ICgwLDApIHNpemUgNTB4NTAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsdWdpbnMvc25hcHNob3R0aW5nL2F1dG9wbGF5LXNpbWlsYXItdG8tZG9taW5h
bnQtYWZ0ZXItZGVsYXkuaHRtbCBiL0xheW91dFRlc3RzL3BsdWdpbnMvc25hcHNob3R0aW5nL2F1
dG9wbGF5LXNpbWlsYXItdG8tZG9taW5hbnQtYWZ0ZXItZGVsYXkuaHRtbApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43
YWU3YzRhYWMwNjQ4YjkyYzY2NDFlZjY5ZTcyZjQ3ZTRjOGY1NTJmCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvcGx1Z2lucy9zbmFwc2hvdHRpbmcvYXV0b3BsYXktc2ltaWxhci10by1k
b21pbmFudC1hZnRlci1kZWxheS5odG1sCkBAIC0wLDAgKzEsMTkgQEAKKzxwPlRoZSBkb21pbmFu
dCBwbHVnaW4gc2hvdWxkIHBsYXkgYXV0b21hdGljYWxseSwgYW5kIHRoZW4gc28gc2hvdWxkIHRo
ZSBpZGVudGljYWwgcGx1Z2luIHRoYXQgaXMgYWRkZWQgYSBiaXQgbGF0ZXIuPC9wPgorPHNjcmlw
dD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGlu
Z3Muc2V0UGx1Z0luU25hcHNob3R0aW5nRW5hYmxlZCh0cnVlKTsKKyAgICB3aW5kb3cuaW50ZXJu
YWxzLnNldHRpbmdzLnNldE1heGltdW1QbHVnSW5TbmFwc2hvdEF0dGVtcHRzKDApOworICAgIHRl
c3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewor
ICAgICAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgICAg
IGRpdi5pbm5lckhUTUwgPSAnPGVtYmVkIHNyYz0iLi4vcmVzb3VyY2VzL3NpbXBsZV9ibGFuay5z
d2YiIHdpZHRoPSIyMDAiIGhlaWdodD0iMjAwIj48L2VtYmVkPic7CisgICAgICAgIGRvY3VtZW50
LmJvZHkuYXBwZW5kQ2hpbGQoZGl2KTsKKyAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7
CisgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgfSwgNTAwKTsK
KyAgICB9LCA1MDApOworfQorPC9zY3JpcHQ+Cis8ZGl2PgorPGVtYmVkIHNyYz0iLi4vcmVzb3Vy
Y2VzL3NpbXBsZV9ibGFuay5zd2YiIHdpZHRoPSI2MDAiIGhlaWdodD0iNjAwIj48L2VtYmVkPgor
PC9kaXY+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbHVnaW5zL3NuYXBzaG90dGluZy9hdXRv
cGxheS1zaW1pbGFyLXRvLWRvbWluYW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9wbHVnaW5zL3NuYXBz
aG90dGluZy9hdXRvcGxheS1zaW1pbGFyLXRvLWRvbWluYW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2M0
ZTEzM2NlMTA5OGEwNjdjZTEyOGVkZTJjMThiOTIwYzJkYzBjYwotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL3BsdWdpbnMvc25hcHNob3R0aW5nL2F1dG9wbGF5LXNpbWlsYXItdG8tZG9t
aW5hbnQuaHRtbApAQCAtMCwwICsxLDIzIEBACis8cD5UaGUgZG9taW5hbnQgcGx1Z2luIHNob3Vs
ZCBwbGF5IGF1dG9tYXRpY2FsbHksIGFuZCB0cmlnZ2VyIGFsbCB0aGUgb3RoZXJzIHRvIHBsYXkg
YXMgd2VsbCwgc2luY2UgdGhleSBhcmUgdGhlIHNhbWUgb3JpZ2luLjwvcD4KKzxzY3JpcHQ+Citp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNl
dFBsdWdJblNuYXBzaG90dGluZ0VuYWJsZWQodHJ1ZSk7CisgICAgd2luZG93LmludGVybmFscy5z
ZXR0aW5ncy5zZXRNYXhpbXVtUGx1Z0luU25hcHNob3RBdHRlbXB0cygwKTsKKyAgICB0ZXN0UnVu
bmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKKyAgICAg
ICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgfSwgNTAwKTsKK30KKzwvc2NyaXB0Pgor
PHA+Cis8ZW1iZWQgc3JjPSIuLi9yZXNvdXJjZXMvc2ltcGxlX2JsYW5rLnN3ZiIgd2lkdGg9IjYw
MCIgaGVpZ2h0PSI2MDAiPjwvZW1iZWQ+Cis8L3A+Cis8cD4KKzxlbWJlZCBzcmM9Ii4uL3Jlc291
cmNlcy9zaW1wbGVfYmxhbmsuc3dmIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PC9lbWJlZD4K
KzwvcD4KKzxwPgorPGVtYmVkIHNyYz0iLi4vcmVzb3VyY2VzL3NpbXBsZV9ibGFuay5zd2YiIHdp
ZHRoPSIxMDAiIGhlaWdodD0iMTAwIj48L2VtYmVkPgorPC9wPgorPHA+Cis8ZW1iZWQgc3JjPSIu
Li9yZXNvdXJjZXMvc2ltcGxlX2JsYW5rLnN3ZiIgd2lkdGg9IjUwIiBoZWlnaHQ9IjUwIj48L2Vt
YmVkPgorPC9wPgo=
</data>
<flag name="review"
          id="217030"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>