<?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>123295</bug_id>
          
          <creation_ts>2013-10-24 15:32:09 -0700</creation_ts>
          <short_desc>[CSS Shapes] Image valued shape size and position should conform to the spec</short_desc>
          <delta_ts>2014-01-23 16:02:34 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>116348</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Hans Muller">giles_joplin</reporter>
          <assigned_to name="Hans Muller">giles_joplin</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kling</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>lmcliste</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>943330</commentid>
    <comment_count>0</comment_count>
    <who name="Hans Muller">giles_joplin</who>
    <bug_when>2013-10-24 15:32:09 -0700</bug_when>
    <thetext>The CSS Shapes spec (http://dev.w3.org/csswg/css-shapes/#shapes-from-image) implies that an image&apos;s shape may be scaled and translated relative to the original image and the origin:

&quot;The image is sized and positioned as if it were a replaced element with a specified width and height of the element&apos;s used content-box size.&quot;

The current implementation defines the shape in terms of the image&apos;s native resolution and the origin of the content box.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970813</commentid>
    <comment_count>1</comment_count>
      <attachid>221886</attachid>
    <who name="Hans Muller">giles_joplin</who>
    <bug_when>2014-01-22 12:02:08 -0800</bug_when>
    <thetext>Created attachment 221886
Patch

Implement image valued shape-outside scaling and translation per the spec, http://dev.w3.org/csswg/css-shapes/#shapes-from-image:

&quot;The image is sized and positioned as if it were a replaced element whose specified width and height are the same as the elements used content box size.&quot;

This change doesn&apos;t completely fulfill the spec, it&apos;s limited to image elements and shape-outside.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970931</commentid>
    <comment_count>2</comment_count>
      <attachid>221921</attachid>
    <who name="Hans Muller">giles_joplin</who>
    <bug_when>2014-01-22 16:29:11 -0800</bug_when>
    <thetext>Created attachment 221921
Patch

Just a cosmetic change - removed the createRasterShape() local image variable definition, since it&apos;s only used once.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970990</commentid>
    <comment_count>3</comment_count>
      <attachid>221936</attachid>
    <who name="Hans Muller">giles_joplin</who>
    <bug_when>2014-01-22 19:05:30 -0800</bug_when>
    <thetext>Created attachment 221936
Patch

Use RenderImage instead of RenderReplaced in getImageRect() (ShapeInfo.cpp).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971342</commentid>
    <comment_count>4</comment_count>
      <attachid>221936</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-01-23 14:34:33 -0800</bug_when>
    <thetext>Comment on attachment 221936
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971378</commentid>
    <comment_count>5</comment_count>
      <attachid>221936</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-23 16:02:22 -0800</bug_when>
    <thetext>Comment on attachment 221936
Patch

Clearing flags on attachment: 221936

Committed r162659: &lt;http://trac.webkit.org/changeset/162659&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>971379</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-23 16:02:34 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221886</attachid>
            <date>2014-01-22 12:02:08 -0800</date>
            <delta_ts>2014-01-22 16:29:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>tmp.patch</filename>
            <type>text/plain</type>
            <size>17721</size>
            <attacher name="Hans Muller">giles_joplin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhOTFlMGMyLi40OTU3YTY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTQtMDEt
MjIgIEhhbnMgTXVsbGVyICA8aG11bGxlckBhZG9iZS5jb20+CisKKyAgICAgICAgW0NTUyBTaGFw
ZXNdIEltYWdlIHZhbHVlZCBzaGFwZSBzaXplIGFuZCBwb3NpdGlvbiBzaG91bGQgY29uZm9ybSB0
byB0aGUgc3BlYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTIzMjk1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdl
LWZpdC0wMDEtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9zaGFwZXMvc2hh
cGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1pbWFnZS1maXQtMDAxLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNp
ZGUtaW1hZ2UtZml0LTAwMi1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3No
YXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDIuaHRt
bDogQWRkZWQuCisgICAgICAgICogZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hh
cGUtb3V0c2lkZS1pbWFnZS1maXQtMDAzLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0
LTAwMy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZs
b2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDQtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1p
bWFnZS1maXQtMDA0Lmh0bWw6IEFkZGVkLgorCiAyMDE0LTAxLTIyICBNaWNoYcWCIFBha3XFgmEg
dmVsIFJ1dGthICA8bS5wYWt1bGFAc2Ftc3VuZy5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBF
RkwgZ2FyZGVuaW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1v
dXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDEtZXhwZWN0ZWQuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNp
ZGUtaW1hZ2UtZml0LTAwMS1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjg0MmI5ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3No
YXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDEtZXhw
ZWN0ZWQuaHRtbApAQCAtMCwwICsxLDI0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhl
YWQ+Cis8c3R5bGU+CisjaW1hZ2Utc2hhcGUgeworICAgIGZsb2F0OiBsZWZ0OworICAgIHdpZHRo
OiAxMDBweDsKKyAgICBoZWlnaHQ6IDIwMHB4OworfQorCisjY29udGVudCB7CisgICAgZm9udDog
NTBweC8xIEFoZW0sIHNhbnMtc2VyaWY7CisgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50
aWFsaWFzZWQ7CisgICAgY29sb3I6IGdyZWVuOworfQorPC9zdHlsZT4KKzxkaXYgaWQ9ImNvbnRl
bnQiPgorICA8aW1nIGlkPSJpbWFnZS1zaGFwZSIgCisgICAgc3JjPSJkYXRhOmltYWdlL3N2Zyt4
bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHJlY3Qgd2lk
dGg9JzEwMCUnIGhlaWdodD0nMTAwJScgZmlsbD0nYmx1ZScvPjwvc3ZnPiIvPgorICBYPGJyPlg8
YnI+WDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRl
LWltYWdlLWZpdC0wMDEuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNp
ZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwMS5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYyMWUzZjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdl
LWZpdC0wMDEuaHRtbApAQCAtMCwwICsxLDI2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgor
PGhlYWQ+Cis8c3R5bGU+CisjaW1hZ2Utc2hhcGUgeworICAgIGZsb2F0OiBsZWZ0OworICAgIC13
ZWJraXQtc2hhcGUtb3V0c2lkZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHht
bG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHJlY3Qgd2lkdGg9JzEwMCUnIGhlaWdo
dD0nMTAwJScgZmlsbD0nYmx1ZScvPjwvc3ZnPiIpOworICAgIHdpZHRoOiAxMDBweDsKKyAgICBo
ZWlnaHQ6IDIwMHB4OworICAgIG1hcmdpbi1yaWdodDogNTBweDsgLyogZXhwb3NlIHNoYXBlLW91
dHNpZGUgcHJvcGVydHkgZmFpbHVyZXMgKi8KK30KKworI2NvbnRlbnQgeworICAgIGZvbnQ6IDUw
cHgvMSBBaGVtLCBzYW5zLXNlcmlmOworICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlh
bGlhc2VkOworICAgIGNvbG9yOiBncmVlbjsKK30KKzwvc3R5bGU+Cis8ZGl2IGlkPSJjb250ZW50
Ij4KKyAgPGltZyBpZD0iaW1hZ2Utc2hhcGUiIAorICAgIHNyYz0iZGF0YTppbWFnZS9zdmcreG1s
O3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxyZWN0IHdpZHRo
PScxMDAlJyBoZWlnaHQ9JzEwMCUnIGZpbGw9J2JsdWUnLz48L3N2Zz4iLz4KKyAgWDxicj5YPGJy
Plg8YnI+WDxicj5YCis8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1p
bWFnZS1maXQtMDAyLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFw
ZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDItZXhwZWN0ZWQuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOWMxZDM4ZAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3No
YXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwMi1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMjMgQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyNpbWFnZS1zaGFwZSB7
CisgICAgZmxvYXQ6IGxlZnQ7CisgICAgd2lkdGg6IDEwMHB4OworICAgIGhlaWdodDogMjAwcHg7
Cit9CisKKyNjb250ZW50IHsKKyAgICBmb250OiA1MHB4LzEgQWhlbSwgc2Fucy1zZXJpZjsKKyAg
ICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsKKyAgICBjb2xvcjogZ3JlZW47
Cit9Cis8L3N0eWxlPgorPGRpdiBpZD0iY29udGVudCI+CisgIDxpbWcgaWQ9ImltYWdlLXNoYXBl
Ii8+CisgIFg8YnI+WDxicj5YPGJyPlg8YnI+WAorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRz
L3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwMi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFw
ZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1pbWFnZS1maXQtMDAyLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzMzMTY1ZgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBl
LW91dHNpZGUtaW1hZ2UtZml0LTAwMi5odG1sCkBAIC0wLDAgKzEsMjQgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyNpbWFnZS1zaGFwZSB7CisgICAgZmxvYXQ6
IGxlZnQ7CisgICAgLXdlYmtpdC1zaGFwZS1vdXRzaWRlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3ht
bDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cmVjdCB3aWR0
aD0nMTAwJScgaGVpZ2h0PScxMDAlJyBmaWxsPSdibHVlJy8+PC9zdmc+Iik7CisgICAgd2lkdGg6
IDEwMHB4OworICAgIGhlaWdodDogMjAwcHg7CisgICAgbWFyZ2luLXJpZ2h0OiA1MHB4OyAvKiBl
eHBvc2Ugc2hhcGUtb3V0c2lkZSBwcm9wZXJ0eSBmYWlsdXJlcyAqLworfQorCisjY29udGVudCB7
CisgICAgZm9udDogNTBweC8xIEFoZW0sIHNhbnMtc2VyaWY7CisgICAgLXdlYmtpdC1mb250LXNt
b290aGluZzogYW50aWFsaWFzZWQ7CisgICAgY29sb3I6IGdyZWVuOworfQorPC9zdHlsZT4KKzxk
aXYgaWQ9ImNvbnRlbnQiPgorICA8aW1nIGlkPSJpbWFnZS1zaGFwZSIvPgorICBYPGJyPlg8YnI+
WDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1pbWFn
ZS1maXQtMDAzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1v
dXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDMtZXhwZWN0ZWQuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MWVhMmFmCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUt
b3V0c2lkZS1pbWFnZS1maXQtMDAzLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwyNiBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorI2ltYWdlLXNoYXBlIHsKKyAg
ICBmbG9hdDogbGVmdDsKKyAgICB3aWR0aDogMTAwcHg7CisgICAgaGVpZ2h0OiAxMDBweDsKKyAg
ICBvYmplY3QtZml0OiBjb250YWluOworfQorCisjY29udGVudCB7CisgICAgZm9udDogNTBweC8x
IEFoZW0sIHNhbnMtc2VyaWY7CisgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFz
ZWQ7CisgICAgY29sb3I6IGdyZWVuOworfQorPC9zdHlsZT4KKzxkaXYgaWQ9ImNvbnRlbnQiPgor
ICBYPGJyPgorICA8aW1nIGlkPSJpbWFnZS1zaGFwZSIKKyAgICBzcmM9ImRhdGE6aW1hZ2Uvc3Zn
K3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0n
MTBweCcgaGVpZ2h0PScxMHB4Jz48cmVjdCB3aWR0aD0nMTAnIGhlaWdodD0nMTAnIGZpbGw9J2Js
dWUnLz48L3N2Zz4iLz4KKyAgWDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0
cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2hh
cGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwMy5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFjMzE2MTMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFw
ZS1vdXRzaWRlLWltYWdlLWZpdC0wMDMuaHRtbApAQCAtMCwwICsxLDMwIEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+CisvKgorVGhlIG9iamVjdC1maXQ6IGNvbnRh
aW4gcHJvcGVydHkgY2F1c2VzIHRoZSAxMHgxMCBTVkcgaW1hZ2UgdG8gYmUgc2NhbGVkIHRvIDEw
MHgxMDAgYW5kIGNlbnRlcmVkIHdpdGhpbiB0aGUgaW1hZ2Utc2hhcGUncworMTAweDIwMCBib3Vu
ZHMuCisqLworI2ltYWdlLXNoYXBlIHsKKyAgICBmbG9hdDogbGVmdDsKKyAgICAtd2Via2l0LXNo
YXBlLW91dHNpZGU6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0
cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMHB4JyBoZWlnaHQ9JzEwcHgnPjxyZWN0
IHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgZmlsbD0nYmx1ZScvPjwvc3ZnPiIpOworICAgIHdpZHRo
OiAxMDBweDsKKyAgICBoZWlnaHQ6IDIwMHB4OworICAgIG9iamVjdC1maXQ6IGNvbnRhaW47Cit9
CisKKyNjb250ZW50IHsKKyAgICBmb250OiA1MHB4LzEgQWhlbSwgc2Fucy1zZXJpZjsKKyAgICAt
d2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsKKyAgICBjb2xvcjogZ3JlZW47Cit9
Cis8L3N0eWxlPgorPGRpdiBpZD0iY29udGVudCI+CisgIDxpbWcgaWQ9ImltYWdlLXNoYXBlIgor
ICAgIHNyYz0iZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53
My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMHB4JyBoZWlnaHQ9JzEwcHgnPjxyZWN0IHdpZHRoPScx
MCcgaGVpZ2h0PScxMCcgZmlsbD0nYmx1ZScvPjwvc3ZnPiIvPgorICBYPGJyPlg8YnI+WDxicj5Y
Cis8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1pbWFnZS1maXQtMDA0
LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZs
b2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDQtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MDA3Mjk2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1p
bWFnZS1maXQtMDA0LWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwyNiBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorI2ltYWdlLXNoYXBlIHsKKyAgICBmbG9hdDog
bGVmdDsKKyAgICB3aWR0aDogMTAwcHg7CisgICAgaGVpZ2h0OiAyMDBweDsKKyAgICBvYmplY3Qt
Zml0OiBjb3ZlcjsKKyAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7Cit9CisKKyNjb250ZW50IHsKKyAg
ICBmb250OiA1MHB4LzEgQWhlbSwgc2Fucy1zZXJpZjsKKyAgICAtd2Via2l0LWZvbnQtc21vb3Ro
aW5nOiBhbnRpYWxpYXNlZDsKKyAgICBjb2xvcjogZ3JlZW47Cit9Cis8L3N0eWxlPgorPGRpdiBp
ZD0iY29udGVudCI+CisgIDxpbWcgaWQ9ImltYWdlLXNoYXBlIgorICAgIHNyYz0iZGF0YTppbWFn
ZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdp
ZHRoPScxMHB4JyBoZWlnaHQ9JzEwcHgnPjxyZWN0IHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgZmls
bD0nYmx1ZScvPjwvc3ZnPiIvPgorICBYPGJyPlg8YnI+WDxicj5YPGJyPlgKKzwvZGl2PgorPC9i
b2R5PgorPC9odG1sPgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFw
ZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDQuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1h
Z2UtZml0LTAwNC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0Y2Yw
ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRz
aWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDQuaHRtbApAQCAtMCwwICsxLDMy
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+CisvKiAKK1RoZSBv
YmplY3QtZml0OmNvdmVyIHByb3BlcnR5IGNhdXNlcyB0aGUgaW1hZ2UgdG8gYmUgc2NhbGVkIHRv
IDIwMHgyMDAgYW5kIHRoZW4gY2VudGVyZWQuIFRoZSBzaGFwZS1vdXRzaWRlCitpcyBjbGlwcGVk
IHRvIHRoZSBpbWFnZS1zaGFwZSdzIG1hcmdpbi1ib3gsIHdoaWNoIG1lYW5zIHRoYXQgdGhlIEFo
ZW0gdGV4dCB3aWxsIGFwcGVhciA1MCBwaXhlbHMgdG8gdGhlIHJpZ2h0CitvZiB0aGUgSU1HIGVs
ZW1lbnQuCisqLworI2ltYWdlLXNoYXBlIHsKKyAgICBmbG9hdDogbGVmdDsKKyAgICAtd2Via2l0
LXNoYXBlLW91dHNpZGU6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0n
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMHB4JyBoZWlnaHQ9JzEwcHgnPjxy
ZWN0IHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgZmlsbD0nYmx1ZScvPjwvc3ZnPiIpOworICAgIHdp
ZHRoOiAxMDBweDsKKyAgICBoZWlnaHQ6IDIwMHB4OworICAgIG9iamVjdC1maXQ6IGNvdmVyOwor
ICAgIG1hcmdpbi1yaWdodDogMzAwcHg7Cit9CisKKyNjb250ZW50IHsKKyAgICBmb250OiA1MHB4
LzEgQWhlbSwgc2Fucy1zZXJpZjsKKyAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxp
YXNlZDsKKyAgICBjb2xvcjogZ3JlZW47Cit9Cis8L3N0eWxlPgorPGRpdiBpZD0iY29udGVudCI+
CisgIDxpbWcgaWQ9ImltYWdlLXNoYXBlIgorICAgIHNyYz0iZGF0YTppbWFnZS9zdmcreG1sO3V0
ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMHB4JyBo
ZWlnaHQ9JzEwcHgnPjxyZWN0IHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgZmlsbD0nYmx1ZScvPjwv
c3ZnPiIvPgorICBYPGJyPlg8YnI+WDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1s
PgorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKaW5kZXggMmY3MjdiMy4uZGExMGQ2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDM4IEBACisyMDE0LTAxLTIyICBIYW5zIE11bGxlciAgPGhtdWxsZXJAYWRvYmUuY29tPgorCisg
ICAgICAgIFtDU1MgU2hhcGVzXSBJbWFnZSB2YWx1ZWQgc2hhcGUgc2l6ZSBhbmQgcG9zaXRpb24g
c2hvdWxkIGNvbmZvcm0gdG8gdGhlIHNwZWMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyMzI5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBpbWFnZSB2YWx1ZWQgc2hhcGUtb3V0c2lkZSBz
Y2FsaW5nIGFuZCB0cmFuc2xhdGlvbiBwZXIgdGhlIHNwZWMsCisgICAgICAgIGh0dHA6Ly9kZXYu
dzMub3JnL2Nzc3dnL2Nzcy1zaGFwZXMvI3NoYXBlcy1mcm9tLWltYWdlOgorCisgICAgICAgICJU
aGUgaW1hZ2UgaXMgc2l6ZWQgYW5kIHBvc2l0aW9uZWQgYXMgaWYgaXQgd2VyZSBhIHJlcGxhY2Vk
IGVsZW1lbnQgd2hvc2UKKyAgICAgICAgc3BlY2lmaWVkIHdpZHRoIGFuZCBoZWlnaHQgYXJlIHRo
ZSBzYW1lIGFzIHRoZSBlbGVtZW504oCZcyB1c2VkIGNvbnRlbnQgYm94IHNpemUuIgorCisgICAg
ICAgIFRoaXMgY2hhbmdlIGRvZXNuJ3QgY29tcGxldGVseSBmdWxmaWxsIHRoZSBzcGVjLCBpdCdz
IGxpbWl0ZWQgdG8gaW1hZ2UgZWxlbWVudHMKKyAgICAgICAgYW5kIHNoYXBlLW91dHNpZGUuCisK
KyAgICAgICAgVGVzdHM6IGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91
dHNpZGUtaW1hZ2UtZml0LTAwMS5odG1sCisgICAgICAgICAgICAgICBmYXN0L3NoYXBlcy9zaGFw
ZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDIuaHRtbAorICAgICAg
ICAgICAgICAgZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1p
bWFnZS1maXQtMDAzLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNp
ZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwNC5odG1sCisKKyAgICAgICAgKiBy
ZW5kZXJpbmcvc2hhcGVzL1NoYXBlLmg6CisgICAgICAgICogcmVuZGVyaW5nL3NoYXBlcy9TaGFw
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTaGFwZTo6Y3JlYXRlUmFzdGVyU2hhcGUpOgorICAg
ICAgICBBZGRlZCBhbiBpbWFnZVJlY3QgcGFyYW1ldGVyIHdoaWNoIHNwZWNpZmllcyB3aGVyZSB0
aGUgc2hhcGUgaW1hZ2UgaXMgdG8KKyAgICAgICAgYXBwZWFyIHJlbGF0aXZlIHRvIHRoZSBjb250
ZW50IGJveC4gVGhlIGltYWdlUmVjdCBpbXBsaWVzIGJvdGggc2NhbGluZyBhbmQKKyAgICAgICAg
dHJhbnNsYXRpb24gb2YgdGhlIHNoYXBlIGltYWdlLgorCisgICAgICAgICogcmVuZGVyaW5nL3No
YXBlcy9TaGFwZUluZm8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2hhcGVJbmZvPFJlbmRlclR5
cGU+Ojpjb21wdXRlZFNoYXBlKToKKyAgICAgICAgKFdlYkNvcmU6OmdldFNoYXBlSW1hZ2VSZWN0
KToKKyAgICAgICAgRm9yIHJlcGxhY2VkIGVsZW1lbnRzLCBjb21wdXRlIHRoZSBzaGFwZSdzIGlt
YWdlUmVjdCB3aXRoCisgICAgICAgIFJlbmRlclJlcGxhY2VkOjpyZXBsYWNlZENvbnRlbnRSZWN0
KCkuCisKKwogMjAxNC0wMS0yMiAgUGV0ZXIgTW9sbmFyICA8cG1vbG5hci51LXN6ZWdlZEBwYXJ0
bmVyLnNhbXN1bmcuY29tPgogCiAgICAgICAgIFJlZmFjdG9yIGNhbGN1bGF0aW9uIG9mIGhhc1J4
IGFuZCBoYXNSeSB2YWx1ZXMgaW4gU1ZHUGF0aERhdGEKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zaGFwZXMvU2hhcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3NoYXBlcy9TaGFwZS5jcHAKaW5kZXggMDc5MzU0My4uNTc4MDI1NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZS5jcHAKQEAgLTI1MSwzNiArMjUxLDM4IEBAIFBhc3NP
d25QdHI8U2hhcGU+IFNoYXBlOjpjcmVhdGVTaGFwZShjb25zdCBCYXNpY1NoYXBlKiBiYXNpY1No
YXBlLCBjb25zdCBMYXlvdXRTCiAgICAgcmV0dXJuIHNoYXBlLnJlbGVhc2UoKTsKIH0KIAotUGFz
c093blB0cjxTaGFwZT4gU2hhcGU6OmNyZWF0ZVJhc3RlclNoYXBlKGNvbnN0IFN0eWxlSW1hZ2Um
IHN0eWxlSW1hZ2UsIGZsb2F0IHRocmVzaG9sZCwgY29uc3QgTGF5b3V0U2l6ZSYsIFdyaXRpbmdN
b2RlIHdyaXRpbmdNb2RlLCBMZW5ndGggbWFyZ2luLCBMZW5ndGggcGFkZGluZykKK1Bhc3NPd25Q
dHI8U2hhcGU+IFNoYXBlOjpjcmVhdGVSYXN0ZXJTaGFwZShjb25zdCBTdHlsZUltYWdlJiBzdHls
ZUltYWdlLCBmbG9hdCB0aHJlc2hvbGQsIGNvbnN0IExheW91dFJlY3QmIGltYWdlUmVjdCwgY29u
c3QgTGF5b3V0U2l6ZSYsIFdyaXRpbmdNb2RlIHdyaXRpbmdNb2RlLCBMZW5ndGggbWFyZ2luLCBM
ZW5ndGggcGFkZGluZykKIHsKICAgICBBU1NFUlQoc3R5bGVJbWFnZS5jYWNoZWRJbWFnZSgpKTsK
ICAgICBBU1NFUlQoc3R5bGVJbWFnZS5jYWNoZWRJbWFnZSgpLT5oYXNJbWFnZSgpKTsKIAogICAg
IEltYWdlKiBpbWFnZSA9IHN0eWxlSW1hZ2UuY2FjaGVkSW1hZ2UoKS0+aW1hZ2UoKTsKLSAgICBj
b25zdCBJbnRTaXplJiBpbWFnZVNpemUgPSBpbWFnZS0+c2l6ZSgpOworICAgIEludFJlY3QgdG9S
ZWN0ID0gcGl4ZWxTbmFwcGVkSW50UmVjdChpbWFnZVJlY3QpOworICAgIEludFNpemUgYnVmZmVy
U2l6ZSA9IHRvUmVjdC5zaXplKCk7CisgICAgSW50U2l6ZSByYXN0ZXJTaXplID0gSW50U2l6ZSh0
b1JlY3QubWF4WCgpLCB0b1JlY3QubWF4WSgpKTsKIAotICAgIE93blB0cjxSYXN0ZXJTaGFwZUlu
dGVydmFscz4gaW50ZXJ2YWxzID0gYWRvcHRQdHIobmV3IFJhc3RlclNoYXBlSW50ZXJ2YWxzKGlt
YWdlU2l6ZS5oZWlnaHQoKSkpOworICAgIE93blB0cjxSYXN0ZXJTaGFwZUludGVydmFscz4gaW50
ZXJ2YWxzID0gYWRvcHRQdHIobmV3IFJhc3RlclNoYXBlSW50ZXJ2YWxzKHJhc3RlclNpemUuaGVp
Z2h0KCkpKTsKIAotICAgIHN0ZDo6dW5pcXVlX3B0cjxJbWFnZUJ1ZmZlcj4gaW1hZ2VCdWZmZXIg
PSBJbWFnZUJ1ZmZlcjo6Y3JlYXRlKGltYWdlU2l6ZSk7CisgICAgc3RkOjp1bmlxdWVfcHRyPElt
YWdlQnVmZmVyPiBpbWFnZUJ1ZmZlciA9IEltYWdlQnVmZmVyOjpjcmVhdGUoYnVmZmVyU2l6ZSk7
CiAgICAgaWYgKGltYWdlQnVmZmVyKSB7CiAgICAgICAgIEdyYXBoaWNzQ29udGV4dCogZ3JhcGhp
Y3NDb250ZXh0ID0gaW1hZ2VCdWZmZXItPmNvbnRleHQoKTsKLSAgICAgICAgZ3JhcGhpY3NDb250
ZXh0LT5kcmF3SW1hZ2UoaW1hZ2UsIENvbG9yU3BhY2VEZXZpY2VSR0IsIEludFBvaW50KCkpOwor
ICAgICAgICBncmFwaGljc0NvbnRleHQtPmRyYXdJbWFnZShpbWFnZSwgQ29sb3JTcGFjZURldmlj
ZVJHQiwgSW50UmVjdChJbnRQb2ludCgpLCBidWZmZXJTaXplKSk7CiAKLSAgICAgICAgUmVmUHRy
PFVpbnQ4Q2xhbXBlZEFycmF5PiBwaXhlbEFycmF5ID0gaW1hZ2VCdWZmZXItPmdldFVubXVsdGlw
bGllZEltYWdlRGF0YShJbnRSZWN0KEludFBvaW50KCksIGltYWdlU2l6ZSkpOworICAgICAgICBS
ZWZQdHI8VWludDhDbGFtcGVkQXJyYXk+IHBpeGVsQXJyYXkgPSBpbWFnZUJ1ZmZlci0+Z2V0VW5t
dWx0aXBsaWVkSW1hZ2VEYXRhKEludFJlY3QoSW50UG9pbnQoKSwgYnVmZmVyU2l6ZSkpOwogICAg
ICAgICB1bnNpZ25lZCBwaXhlbEFycmF5TGVuZ3RoID0gcGl4ZWxBcnJheS0+bGVuZ3RoKCk7CiAg
ICAgICAgIHVuc2lnbmVkIHBpeGVsQXJyYXlPZmZzZXQgPSAzOyAvLyBFYWNoIHBpeGVsIGlzIGZv
dXIgYnl0ZXM6IFJHQkEuCiAgICAgICAgIHVpbnQ4X3QgYWxwaGFQaXhlbFRocmVzaG9sZCA9IHRo
cmVzaG9sZCAqIDI1NTsKIAotICAgICAgICBpZiAoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KGltYWdl
U2l6ZS53aWR0aCgpICogaW1hZ2VTaXplLmhlaWdodCgpICogNCkgPT0gcGl4ZWxBcnJheUxlbmd0
aCkgeyAvLyBzYW5pdHkgY2hlY2sKLSAgICAgICAgICAgIGZvciAoaW50IHkgPSAwOyB5IDwgaW1h
Z2VTaXplLmhlaWdodCgpOyArK3kpIHsKKyAgICAgICAgaWYgKHN0YXRpY19jYXN0PHVuc2lnbmVk
PihidWZmZXJTaXplLndpZHRoKCkgKiBidWZmZXJTaXplLmhlaWdodCgpICogNCkgPT0gcGl4ZWxB
cnJheUxlbmd0aCkgeyAvLyBzYW5pdHkgY2hlY2sKKyAgICAgICAgICAgIGZvciAoaW50IHkgPSAw
OyB5IDwgYnVmZmVyU2l6ZS5oZWlnaHQoKTsgKyt5KSB7CiAgICAgICAgICAgICAgICAgaW50IHN0
YXJ0WCA9IC0xOwotICAgICAgICAgICAgICAgIGZvciAoaW50IHggPSAwOyB4IDwgaW1hZ2VTaXpl
LndpZHRoKCk7ICsreCwgcGl4ZWxBcnJheU9mZnNldCArPSA0KSB7CisgICAgICAgICAgICAgICAg
Zm9yIChpbnQgeCA9IDA7IHggPCBidWZmZXJTaXplLndpZHRoKCk7ICsreCwgcGl4ZWxBcnJheU9m
ZnNldCArPSA0KSB7CiAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgYWxwaGEgPSBwaXhlbEFy
cmF5LT5pdGVtKHBpeGVsQXJyYXlPZmZzZXQpOwogICAgICAgICAgICAgICAgICAgICBib29sIGFs
cGhhQWJvdmVUaHJlc2hvbGQgPSBhbHBoYSA+IGFscGhhUGl4ZWxUaHJlc2hvbGQ7CiAgICAgICAg
ICAgICAgICAgICAgIGlmIChzdGFydFggPT0gLTEgJiYgYWxwaGFBYm92ZVRocmVzaG9sZCkgewog
ICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRYID0geDsKLSAgICAgICAgICAgICAgICAgICAg
fSBlbHNlIGlmIChzdGFydFggIT0gLTEgJiYgKCFhbHBoYUFib3ZlVGhyZXNob2xkIHx8IHggPT0g
aW1hZ2VTaXplLndpZHRoKCkgLSAxKSkgewotICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJ2
YWxzLT5hcHBlbmRJbnRlcnZhbCh5LCBzdGFydFgsIHgpOworICAgICAgICAgICAgICAgICAgICB9
IGVsc2UgaWYgKHN0YXJ0WCAhPSAtMSAmJiAoIWFscGhhQWJvdmVUaHJlc2hvbGQgfHwgeCA9PSBi
dWZmZXJTaXplLndpZHRoKCkgLSAxKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJ2
YWxzLT5hcHBlbmRJbnRlcnZhbCh5ICsgdG9SZWN0LnkoKSwgc3RhcnRYICsgdG9SZWN0LngoKSwg
eCArIHRvUmVjdC54KCkpOwogICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRYID0gLTE7CiAg
ICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB9CkBAIC0yODgsNyArMjkwLDcg
QEAgUGFzc093blB0cjxTaGFwZT4gU2hhcGU6OmNyZWF0ZVJhc3RlclNoYXBlKGNvbnN0IFN0eWxl
SW1hZ2UmIHN0eWxlSW1hZ2UsIGZsb2F0IHQKICAgICAgICAgfQogICAgIH0KIAotICAgIE93blB0
cjxSYXN0ZXJTaGFwZT4gcmFzdGVyU2hhcGUgPSBhZG9wdFB0cihuZXcgUmFzdGVyU2hhcGUoaW50
ZXJ2YWxzLnJlbGVhc2UoKSwgaW1hZ2VTaXplKSk7CisgICAgT3duUHRyPFJhc3RlclNoYXBlPiBy
YXN0ZXJTaGFwZSA9IGFkb3B0UHRyKG5ldyBSYXN0ZXJTaGFwZShpbnRlcnZhbHMucmVsZWFzZSgp
LCByYXN0ZXJTaXplKSk7CiAgICAgcmFzdGVyU2hhcGUtPm1fd3JpdGluZ01vZGUgPSB3cml0aW5n
TW9kZTsKICAgICByYXN0ZXJTaGFwZS0+bV9tYXJnaW4gPSBmbG9hdFZhbHVlRm9yTGVuZ3RoKG1h
cmdpbiwgMCk7CiAgICAgcmFzdGVyU2hhcGUtPm1fcGFkZGluZyA9IGZsb2F0VmFsdWVGb3JMZW5n
dGgocGFkZGluZywgMCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hh
cGVzL1NoYXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVzL1NoYXBlLmgKaW5k
ZXggNDRhZTYyNC4uYWI3MWQ1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3NoYXBlcy9TaGFwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zaGFwZXMvU2hh
cGUuaApAQCAtNjgsNyArNjgsNyBAQCBwdWJsaWM6CiAgICAgfTsKIAogICAgIHN0YXRpYyBQYXNz
T3duUHRyPFNoYXBlPiBjcmVhdGVTaGFwZShjb25zdCBCYXNpY1NoYXBlKiwgY29uc3QgTGF5b3V0
U2l6ZSYgbG9naWNhbEJveFNpemUsIFdyaXRpbmdNb2RlLCBMZW5ndGggbWFyZ2luLCBMZW5ndGgg
cGFkZGluZyk7Ci0gICAgc3RhdGljIFBhc3NPd25QdHI8U2hhcGU+IGNyZWF0ZVJhc3RlclNoYXBl
KGNvbnN0IFN0eWxlSW1hZ2UmLCBmbG9hdCB0aHJlc2hvbGQsIGNvbnN0IExheW91dFNpemUmIGxv
Z2ljYWxCb3hTaXplLCBXcml0aW5nTW9kZSwgTGVuZ3RoIG1hcmdpbiwgTGVuZ3RoIHBhZGRpbmcp
OworICAgIHN0YXRpYyBQYXNzT3duUHRyPFNoYXBlPiBjcmVhdGVSYXN0ZXJTaGFwZShjb25zdCBT
dHlsZUltYWdlJiwgZmxvYXQgdGhyZXNob2xkLCBjb25zdCBMYXlvdXRSZWN0JiBpbWFnZVJlY3Qs
IGNvbnN0IExheW91dFNpemUmIGxvZ2ljYWxCb3hTaXplLCBXcml0aW5nTW9kZSwgTGVuZ3RoIG1h
cmdpbiwgTGVuZ3RoIHBhZGRpbmcpOwogICAgIHN0YXRpYyBQYXNzT3duUHRyPFNoYXBlPiBjcmVh
dGVMYXlvdXRCb3hTaGFwZShjb25zdCBSb3VuZGVkUmVjdCYsIFdyaXRpbmdNb2RlLCBMZW5ndGgg
bWFyZ2luLCBMZW5ndGggcGFkZGluZyk7CiAKICAgICB2aXJ0dWFsIH5TaGFwZSgpIHsgfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZUluZm8uY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZUluZm8uY3BwCmluZGV4IGU3NmRm
NmEuLjFjNWIyYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zaGFwZXMv
U2hhcGVJbmZvLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVzL1NoYXBl
SW5mby5jcHAKQEAgLTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlICJSZW5kZXJCbG9jay5oIgogI2lu
Y2x1ZGUgIlJlbmRlckJveC5oIgogI2luY2x1ZGUgIlJlbmRlclJlZ2lvbi5oIgorI2luY2x1ZGUg
IlJlbmRlclJlcGxhY2VkLmgiCiAjaW5jbHVkZSAiUmVuZGVyU3R5bGUuaCIKICNpbmNsdWRlICJT
aGFwZS5oIgogCkBAIC01NCw2ICs1NSwxOCBAQCBib29sIGNoZWNrU2hhcGVJbWFnZU9yaWdpbihE
b2N1bWVudCYgZG9jdW1lbnQsIENhY2hlZEltYWdlJiBjYWNoZWRJbWFnZSkKICAgICByZXR1cm4g
ZmFsc2U7CiB9CiAKK3N0YXRpYyBMYXlvdXRSZWN0IGdldFNoYXBlSW1hZ2VSZWN0KGNvbnN0IFN0
eWxlSW1hZ2UmIHN0eWxlSW1hZ2UsIGNvbnN0IFJlbmRlckJveCYgcmVuZGVyQm94KQoreworICAg
IGlmIChyZW5kZXJCb3guaXNSZW5kZXJSZXBsYWNlZCgpKSB7CisgICAgICAgIGNvbnN0IFJlbmRl
clJlcGxhY2VkJiByZW5kZXJSZXBsYWNlZCA9ICp0b1JlbmRlclJlcGxhY2VkKCZyZW5kZXJCb3gp
OworICAgICAgICByZXR1cm4gcmVuZGVyUmVwbGFjZWQucmVwbGFjZWRDb250ZW50UmVjdChyZW5k
ZXJCb3guaW50cmluc2ljU2l6ZSgpKTsKKyAgICB9CisKKyAgICBBU1NFUlQoc3R5bGVJbWFnZS5j
YWNoZWRJbWFnZSgpKTsKKyAgICBBU1NFUlQoc3R5bGVJbWFnZS5jYWNoZWRJbWFnZSgpLT5oYXNJ
bWFnZSgpKTsKKyAgICByZXR1cm4gTGF5b3V0UmVjdChMYXlvdXRQb2ludCgpLCBzdHlsZUltYWdl
LmNhY2hlZEltYWdlKCktPmltYWdlKCktPnNpemUoKSk7Cit9CisKIHRlbXBsYXRlPGNsYXNzIFJl
bmRlclR5cGU+CiBjb25zdCBTaGFwZSYgU2hhcGVJbmZvPFJlbmRlclR5cGU+Ojpjb21wdXRlZFNo
YXBlKCkgY29uc3QKIHsKQEAgLTcyLDEwICs4NSwxMiBAQCBjb25zdCBTaGFwZSYgU2hhcGVJbmZv
PFJlbmRlclR5cGU+Ojpjb21wdXRlZFNoYXBlKCkgY29uc3QKICAgICAgICAgQVNTRVJUKHNoYXBl
VmFsdWUtPnNoYXBlKCkpOwogICAgICAgICBtX3NoYXBlID0gU2hhcGU6OmNyZWF0ZVNoYXBlKHNo
YXBlVmFsdWUtPnNoYXBlKCksIG1fc2hhcGVMb2dpY2FsU2l6ZSwgd3JpdGluZ01vZGUsIG1hcmdp
biwgcGFkZGluZyk7CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgU2hhcGVWYWx1ZTo6SW1hZ2U6
CisgICAgY2FzZSBTaGFwZVZhbHVlOjpJbWFnZTogewogICAgICAgICBBU1NFUlQoc2hhcGVWYWx1
ZS0+aW1hZ2UoKSk7Ci0gICAgICAgIG1fc2hhcGUgPSBTaGFwZTo6Y3JlYXRlUmFzdGVyU2hhcGUo
KihzaGFwZVZhbHVlLT5pbWFnZSgpKSwgc2hhcGVJbWFnZVRocmVzaG9sZCwgbV9zaGFwZUxvZ2lj
YWxTaXplLCB3cml0aW5nTW9kZSwgbWFyZ2luLCBwYWRkaW5nKTsKKyAgICAgICAgY29uc3QgU3R5
bGVJbWFnZSYgc3R5bGVJbWFnZSA9ICooc2hhcGVWYWx1ZS0+aW1hZ2UoKSk7CisgICAgICAgIG1f
c2hhcGUgPSBTaGFwZTo6Y3JlYXRlUmFzdGVyU2hhcGUoc3R5bGVJbWFnZSwgc2hhcGVJbWFnZVRo
cmVzaG9sZCwgZ2V0U2hhcGVJbWFnZVJlY3Qoc3R5bGVJbWFnZSwgbV9yZW5kZXJlciksIG1fc2hh
cGVMb2dpY2FsU2l6ZSwgd3JpdGluZ01vZGUsIG1hcmdpbiwgcGFkZGluZyk7CiAgICAgICAgIGJy
ZWFrOworICAgIH0KICAgICBjYXNlIFNoYXBlVmFsdWU6OkJveDogewogICAgICAgICBjb25zdCBS
b3VuZGVkUmVjdCYgc2hhcGVSZWN0ID0gbV9yZW5kZXJlci5zdHlsZSgpLmdldFJvdW5kZWRCb3Jk
ZXJGb3IoTGF5b3V0UmVjdChMYXlvdXRQb2ludCgpLCBtX3NoYXBlTG9naWNhbFNpemUpLCAmKG1f
cmVuZGVyZXIudmlldygpKSk7CiAgICAgICAgIG1fc2hhcGUgPSBTaGFwZTo6Y3JlYXRlTGF5b3V0
Qm94U2hhcGUoc2hhcGVSZWN0LCB3cml0aW5nTW9kZSwgbWFyZ2luLCBwYWRkaW5nKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221921</attachid>
            <date>2014-01-22 16:29:11 -0800</date>
            <delta_ts>2014-01-22 19:05:30 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>tmp.patch</filename>
            <type>text/plain</type>
            <size>17749</size>
            <attacher name="Hans Muller">giles_joplin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhOTFlMGMyLi40OTU3YTY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTQtMDEt
MjIgIEhhbnMgTXVsbGVyICA8aG11bGxlckBhZG9iZS5jb20+CisKKyAgICAgICAgW0NTUyBTaGFw
ZXNdIEltYWdlIHZhbHVlZCBzaGFwZSBzaXplIGFuZCBwb3NpdGlvbiBzaG91bGQgY29uZm9ybSB0
byB0aGUgc3BlYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTIzMjk1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdl
LWZpdC0wMDEtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9zaGFwZXMvc2hh
cGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1pbWFnZS1maXQtMDAxLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNp
ZGUtaW1hZ2UtZml0LTAwMi1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3No
YXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDIuaHRt
bDogQWRkZWQuCisgICAgICAgICogZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hh
cGUtb3V0c2lkZS1pbWFnZS1maXQtMDAzLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0
LTAwMy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZs
b2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDQtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1p
bWFnZS1maXQtMDA0Lmh0bWw6IEFkZGVkLgorCiAyMDE0LTAxLTIyICBNaWNoYcWCIFBha3XFgmEg
dmVsIFJ1dGthICA8bS5wYWt1bGFAc2Ftc3VuZy5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBF
RkwgZ2FyZGVuaW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1v
dXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDEtZXhwZWN0ZWQuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNp
ZGUtaW1hZ2UtZml0LTAwMS1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjg0MmI5ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3No
YXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDEtZXhw
ZWN0ZWQuaHRtbApAQCAtMCwwICsxLDI0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhl
YWQ+Cis8c3R5bGU+CisjaW1hZ2Utc2hhcGUgeworICAgIGZsb2F0OiBsZWZ0OworICAgIHdpZHRo
OiAxMDBweDsKKyAgICBoZWlnaHQ6IDIwMHB4OworfQorCisjY29udGVudCB7CisgICAgZm9udDog
NTBweC8xIEFoZW0sIHNhbnMtc2VyaWY7CisgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50
aWFsaWFzZWQ7CisgICAgY29sb3I6IGdyZWVuOworfQorPC9zdHlsZT4KKzxkaXYgaWQ9ImNvbnRl
bnQiPgorICA8aW1nIGlkPSJpbWFnZS1zaGFwZSIgCisgICAgc3JjPSJkYXRhOmltYWdlL3N2Zyt4
bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHJlY3Qgd2lk
dGg9JzEwMCUnIGhlaWdodD0nMTAwJScgZmlsbD0nYmx1ZScvPjwvc3ZnPiIvPgorICBYPGJyPlg8
YnI+WDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRl
LWltYWdlLWZpdC0wMDEuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNp
ZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwMS5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYyMWUzZjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdl
LWZpdC0wMDEuaHRtbApAQCAtMCwwICsxLDI2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgor
PGhlYWQ+Cis8c3R5bGU+CisjaW1hZ2Utc2hhcGUgeworICAgIGZsb2F0OiBsZWZ0OworICAgIC13
ZWJraXQtc2hhcGUtb3V0c2lkZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHht
bG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHJlY3Qgd2lkdGg9JzEwMCUnIGhlaWdo
dD0nMTAwJScgZmlsbD0nYmx1ZScvPjwvc3ZnPiIpOworICAgIHdpZHRoOiAxMDBweDsKKyAgICBo
ZWlnaHQ6IDIwMHB4OworICAgIG1hcmdpbi1yaWdodDogNTBweDsgLyogZXhwb3NlIHNoYXBlLW91
dHNpZGUgcHJvcGVydHkgZmFpbHVyZXMgKi8KK30KKworI2NvbnRlbnQgeworICAgIGZvbnQ6IDUw
cHgvMSBBaGVtLCBzYW5zLXNlcmlmOworICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlh
bGlhc2VkOworICAgIGNvbG9yOiBncmVlbjsKK30KKzwvc3R5bGU+Cis8ZGl2IGlkPSJjb250ZW50
Ij4KKyAgPGltZyBpZD0iaW1hZ2Utc2hhcGUiIAorICAgIHNyYz0iZGF0YTppbWFnZS9zdmcreG1s
O3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxyZWN0IHdpZHRo
PScxMDAlJyBoZWlnaHQ9JzEwMCUnIGZpbGw9J2JsdWUnLz48L3N2Zz4iLz4KKyAgWDxicj5YPGJy
Plg8YnI+WDxicj5YCis8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1p
bWFnZS1maXQtMDAyLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFw
ZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDItZXhwZWN0ZWQuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOWMxZDM4ZAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3No
YXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwMi1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMjMgQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyNpbWFnZS1zaGFwZSB7
CisgICAgZmxvYXQ6IGxlZnQ7CisgICAgd2lkdGg6IDEwMHB4OworICAgIGhlaWdodDogMjAwcHg7
Cit9CisKKyNjb250ZW50IHsKKyAgICBmb250OiA1MHB4LzEgQWhlbSwgc2Fucy1zZXJpZjsKKyAg
ICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsKKyAgICBjb2xvcjogZ3JlZW47
Cit9Cis8L3N0eWxlPgorPGRpdiBpZD0iY29udGVudCI+CisgIDxpbWcgaWQ9ImltYWdlLXNoYXBl
Ii8+CisgIFg8YnI+WDxicj5YPGJyPlg8YnI+WAorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRz
L3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwMi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFw
ZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1pbWFnZS1maXQtMDAyLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzMzMTY1ZgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBl
LW91dHNpZGUtaW1hZ2UtZml0LTAwMi5odG1sCkBAIC0wLDAgKzEsMjQgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyNpbWFnZS1zaGFwZSB7CisgICAgZmxvYXQ6
IGxlZnQ7CisgICAgLXdlYmtpdC1zaGFwZS1vdXRzaWRlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3ht
bDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cmVjdCB3aWR0
aD0nMTAwJScgaGVpZ2h0PScxMDAlJyBmaWxsPSdibHVlJy8+PC9zdmc+Iik7CisgICAgd2lkdGg6
IDEwMHB4OworICAgIGhlaWdodDogMjAwcHg7CisgICAgbWFyZ2luLXJpZ2h0OiA1MHB4OyAvKiBl
eHBvc2Ugc2hhcGUtb3V0c2lkZSBwcm9wZXJ0eSBmYWlsdXJlcyAqLworfQorCisjY29udGVudCB7
CisgICAgZm9udDogNTBweC8xIEFoZW0sIHNhbnMtc2VyaWY7CisgICAgLXdlYmtpdC1mb250LXNt
b290aGluZzogYW50aWFsaWFzZWQ7CisgICAgY29sb3I6IGdyZWVuOworfQorPC9zdHlsZT4KKzxk
aXYgaWQ9ImNvbnRlbnQiPgorICA8aW1nIGlkPSJpbWFnZS1zaGFwZSIvPgorICBYPGJyPlg8YnI+
WDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1pbWFn
ZS1maXQtMDAzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1v
dXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDMtZXhwZWN0ZWQuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MWVhMmFmCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUt
b3V0c2lkZS1pbWFnZS1maXQtMDAzLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwyNiBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorI2ltYWdlLXNoYXBlIHsKKyAg
ICBmbG9hdDogbGVmdDsKKyAgICB3aWR0aDogMTAwcHg7CisgICAgaGVpZ2h0OiAxMDBweDsKKyAg
ICBvYmplY3QtZml0OiBjb250YWluOworfQorCisjY29udGVudCB7CisgICAgZm9udDogNTBweC8x
IEFoZW0sIHNhbnMtc2VyaWY7CisgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFz
ZWQ7CisgICAgY29sb3I6IGdyZWVuOworfQorPC9zdHlsZT4KKzxkaXYgaWQ9ImNvbnRlbnQiPgor
ICBYPGJyPgorICA8aW1nIGlkPSJpbWFnZS1zaGFwZSIKKyAgICBzcmM9ImRhdGE6aW1hZ2Uvc3Zn
K3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0n
MTBweCcgaGVpZ2h0PScxMHB4Jz48cmVjdCB3aWR0aD0nMTAnIGhlaWdodD0nMTAnIGZpbGw9J2Js
dWUnLz48L3N2Zz4iLz4KKyAgWDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0
cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2hh
cGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwMy5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFjMzE2MTMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFw
ZS1vdXRzaWRlLWltYWdlLWZpdC0wMDMuaHRtbApAQCAtMCwwICsxLDMwIEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+CisvKgorVGhlIG9iamVjdC1maXQ6IGNvbnRh
aW4gcHJvcGVydHkgY2F1c2VzIHRoZSAxMHgxMCBTVkcgaW1hZ2UgdG8gYmUgc2NhbGVkIHRvIDEw
MHgxMDAgYW5kIGNlbnRlcmVkIHdpdGhpbiB0aGUgaW1hZ2Utc2hhcGUncworMTAweDIwMCBib3Vu
ZHMuCisqLworI2ltYWdlLXNoYXBlIHsKKyAgICBmbG9hdDogbGVmdDsKKyAgICAtd2Via2l0LXNo
YXBlLW91dHNpZGU6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0
cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMHB4JyBoZWlnaHQ9JzEwcHgnPjxyZWN0
IHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgZmlsbD0nYmx1ZScvPjwvc3ZnPiIpOworICAgIHdpZHRo
OiAxMDBweDsKKyAgICBoZWlnaHQ6IDIwMHB4OworICAgIG9iamVjdC1maXQ6IGNvbnRhaW47Cit9
CisKKyNjb250ZW50IHsKKyAgICBmb250OiA1MHB4LzEgQWhlbSwgc2Fucy1zZXJpZjsKKyAgICAt
d2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsKKyAgICBjb2xvcjogZ3JlZW47Cit9
Cis8L3N0eWxlPgorPGRpdiBpZD0iY29udGVudCI+CisgIDxpbWcgaWQ9ImltYWdlLXNoYXBlIgor
ICAgIHNyYz0iZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53
My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMHB4JyBoZWlnaHQ9JzEwcHgnPjxyZWN0IHdpZHRoPScx
MCcgaGVpZ2h0PScxMCcgZmlsbD0nYmx1ZScvPjwvc3ZnPiIvPgorICBYPGJyPlg8YnI+WDxicj5Y
Cis8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1pbWFnZS1maXQtMDA0
LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZs
b2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDQtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MDA3Mjk2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1p
bWFnZS1maXQtMDA0LWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwyNiBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorI2ltYWdlLXNoYXBlIHsKKyAgICBmbG9hdDog
bGVmdDsKKyAgICB3aWR0aDogMTAwcHg7CisgICAgaGVpZ2h0OiAyMDBweDsKKyAgICBvYmplY3Qt
Zml0OiBjb3ZlcjsKKyAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7Cit9CisKKyNjb250ZW50IHsKKyAg
ICBmb250OiA1MHB4LzEgQWhlbSwgc2Fucy1zZXJpZjsKKyAgICAtd2Via2l0LWZvbnQtc21vb3Ro
aW5nOiBhbnRpYWxpYXNlZDsKKyAgICBjb2xvcjogZ3JlZW47Cit9Cis8L3N0eWxlPgorPGRpdiBp
ZD0iY29udGVudCI+CisgIDxpbWcgaWQ9ImltYWdlLXNoYXBlIgorICAgIHNyYz0iZGF0YTppbWFn
ZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdp
ZHRoPScxMHB4JyBoZWlnaHQ9JzEwcHgnPjxyZWN0IHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgZmls
bD0nYmx1ZScvPjwvc3ZnPiIvPgorICBYPGJyPlg8YnI+WDxicj5YPGJyPlgKKzwvZGl2PgorPC9i
b2R5PgorPC9odG1sPgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFw
ZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDQuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1h
Z2UtZml0LTAwNC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0Y2Yw
ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRz
aWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDQuaHRtbApAQCAtMCwwICsxLDMy
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+CisvKiAKK1RoZSBv
YmplY3QtZml0OmNvdmVyIHByb3BlcnR5IGNhdXNlcyB0aGUgaW1hZ2UgdG8gYmUgc2NhbGVkIHRv
IDIwMHgyMDAgYW5kIHRoZW4gY2VudGVyZWQuIFRoZSBzaGFwZS1vdXRzaWRlCitpcyBjbGlwcGVk
IHRvIHRoZSBpbWFnZS1zaGFwZSdzIG1hcmdpbi1ib3gsIHdoaWNoIG1lYW5zIHRoYXQgdGhlIEFo
ZW0gdGV4dCB3aWxsIGFwcGVhciA1MCBwaXhlbHMgdG8gdGhlIHJpZ2h0CitvZiB0aGUgSU1HIGVs
ZW1lbnQuCisqLworI2ltYWdlLXNoYXBlIHsKKyAgICBmbG9hdDogbGVmdDsKKyAgICAtd2Via2l0
LXNoYXBlLW91dHNpZGU6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0n
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMHB4JyBoZWlnaHQ9JzEwcHgnPjxy
ZWN0IHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgZmlsbD0nYmx1ZScvPjwvc3ZnPiIpOworICAgIHdp
ZHRoOiAxMDBweDsKKyAgICBoZWlnaHQ6IDIwMHB4OworICAgIG9iamVjdC1maXQ6IGNvdmVyOwor
ICAgIG1hcmdpbi1yaWdodDogMzAwcHg7Cit9CisKKyNjb250ZW50IHsKKyAgICBmb250OiA1MHB4
LzEgQWhlbSwgc2Fucy1zZXJpZjsKKyAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxp
YXNlZDsKKyAgICBjb2xvcjogZ3JlZW47Cit9Cis8L3N0eWxlPgorPGRpdiBpZD0iY29udGVudCI+
CisgIDxpbWcgaWQ9ImltYWdlLXNoYXBlIgorICAgIHNyYz0iZGF0YTppbWFnZS9zdmcreG1sO3V0
ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMHB4JyBo
ZWlnaHQ9JzEwcHgnPjxyZWN0IHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgZmlsbD0nYmx1ZScvPjwv
c3ZnPiIvPgorICBYPGJyPlg8YnI+WDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1s
PgorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKaW5kZXggMmY3MjdiMy4uZGExMGQ2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDM4IEBACisyMDE0LTAxLTIyICBIYW5zIE11bGxlciAgPGhtdWxsZXJAYWRvYmUuY29tPgorCisg
ICAgICAgIFtDU1MgU2hhcGVzXSBJbWFnZSB2YWx1ZWQgc2hhcGUgc2l6ZSBhbmQgcG9zaXRpb24g
c2hvdWxkIGNvbmZvcm0gdG8gdGhlIHNwZWMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyMzI5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBpbWFnZSB2YWx1ZWQgc2hhcGUtb3V0c2lkZSBz
Y2FsaW5nIGFuZCB0cmFuc2xhdGlvbiBwZXIgdGhlIHNwZWMsCisgICAgICAgIGh0dHA6Ly9kZXYu
dzMub3JnL2Nzc3dnL2Nzcy1zaGFwZXMvI3NoYXBlcy1mcm9tLWltYWdlOgorCisgICAgICAgICJU
aGUgaW1hZ2UgaXMgc2l6ZWQgYW5kIHBvc2l0aW9uZWQgYXMgaWYgaXQgd2VyZSBhIHJlcGxhY2Vk
IGVsZW1lbnQgd2hvc2UKKyAgICAgICAgc3BlY2lmaWVkIHdpZHRoIGFuZCBoZWlnaHQgYXJlIHRo
ZSBzYW1lIGFzIHRoZSBlbGVtZW504oCZcyB1c2VkIGNvbnRlbnQgYm94IHNpemUuIgorCisgICAg
ICAgIFRoaXMgY2hhbmdlIGRvZXNuJ3QgY29tcGxldGVseSBmdWxmaWxsIHRoZSBzcGVjLCBpdCdz
IGxpbWl0ZWQgdG8gaW1hZ2UgZWxlbWVudHMKKyAgICAgICAgYW5kIHNoYXBlLW91dHNpZGUuCisK
KyAgICAgICAgVGVzdHM6IGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91
dHNpZGUtaW1hZ2UtZml0LTAwMS5odG1sCisgICAgICAgICAgICAgICBmYXN0L3NoYXBlcy9zaGFw
ZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDIuaHRtbAorICAgICAg
ICAgICAgICAgZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1p
bWFnZS1maXQtMDAzLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNp
ZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwNC5odG1sCisKKyAgICAgICAgKiBy
ZW5kZXJpbmcvc2hhcGVzL1NoYXBlLmg6CisgICAgICAgICogcmVuZGVyaW5nL3NoYXBlcy9TaGFw
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTaGFwZTo6Y3JlYXRlUmFzdGVyU2hhcGUpOgorICAg
ICAgICBBZGRlZCBhbiBpbWFnZVJlY3QgcGFyYW1ldGVyIHdoaWNoIHNwZWNpZmllcyB3aGVyZSB0
aGUgc2hhcGUgaW1hZ2UgaXMgdG8KKyAgICAgICAgYXBwZWFyIHJlbGF0aXZlIHRvIHRoZSBjb250
ZW50IGJveC4gVGhlIGltYWdlUmVjdCBpbXBsaWVzIGJvdGggc2NhbGluZyBhbmQKKyAgICAgICAg
dHJhbnNsYXRpb24gb2YgdGhlIHNoYXBlIGltYWdlLgorCisgICAgICAgICogcmVuZGVyaW5nL3No
YXBlcy9TaGFwZUluZm8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2hhcGVJbmZvPFJlbmRlclR5
cGU+Ojpjb21wdXRlZFNoYXBlKToKKyAgICAgICAgKFdlYkNvcmU6OmdldFNoYXBlSW1hZ2VSZWN0
KToKKyAgICAgICAgRm9yIHJlcGxhY2VkIGVsZW1lbnRzLCBjb21wdXRlIHRoZSBzaGFwZSdzIGlt
YWdlUmVjdCB3aXRoCisgICAgICAgIFJlbmRlclJlcGxhY2VkOjpyZXBsYWNlZENvbnRlbnRSZWN0
KCkuCisKKwogMjAxNC0wMS0yMiAgUGV0ZXIgTW9sbmFyICA8cG1vbG5hci51LXN6ZWdlZEBwYXJ0
bmVyLnNhbXN1bmcuY29tPgogCiAgICAgICAgIFJlZmFjdG9yIGNhbGN1bGF0aW9uIG9mIGhhc1J4
IGFuZCBoYXNSeSB2YWx1ZXMgaW4gU1ZHUGF0aERhdGEKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zaGFwZXMvU2hhcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3NoYXBlcy9TaGFwZS5jcHAKaW5kZXggMDc5MzU0My4uMDEyMzI0OSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZS5jcHAKQEAgLTI1MSwzNiArMjUxLDM2IEBAIFBhc3NP
d25QdHI8U2hhcGU+IFNoYXBlOjpjcmVhdGVTaGFwZShjb25zdCBCYXNpY1NoYXBlKiBiYXNpY1No
YXBlLCBjb25zdCBMYXlvdXRTCiAgICAgcmV0dXJuIHNoYXBlLnJlbGVhc2UoKTsKIH0KIAotUGFz
c093blB0cjxTaGFwZT4gU2hhcGU6OmNyZWF0ZVJhc3RlclNoYXBlKGNvbnN0IFN0eWxlSW1hZ2Um
IHN0eWxlSW1hZ2UsIGZsb2F0IHRocmVzaG9sZCwgY29uc3QgTGF5b3V0U2l6ZSYsIFdyaXRpbmdN
b2RlIHdyaXRpbmdNb2RlLCBMZW5ndGggbWFyZ2luLCBMZW5ndGggcGFkZGluZykKK1Bhc3NPd25Q
dHI8U2hhcGU+IFNoYXBlOjpjcmVhdGVSYXN0ZXJTaGFwZShjb25zdCBTdHlsZUltYWdlJiBzdHls
ZUltYWdlLCBmbG9hdCB0aHJlc2hvbGQsIGNvbnN0IExheW91dFJlY3QmIGltYWdlUmVjdCwgY29u
c3QgTGF5b3V0U2l6ZSYsIFdyaXRpbmdNb2RlIHdyaXRpbmdNb2RlLCBMZW5ndGggbWFyZ2luLCBM
ZW5ndGggcGFkZGluZykKIHsKICAgICBBU1NFUlQoc3R5bGVJbWFnZS5jYWNoZWRJbWFnZSgpKTsK
ICAgICBBU1NFUlQoc3R5bGVJbWFnZS5jYWNoZWRJbWFnZSgpLT5oYXNJbWFnZSgpKTsKIAotICAg
IEltYWdlKiBpbWFnZSA9IHN0eWxlSW1hZ2UuY2FjaGVkSW1hZ2UoKS0+aW1hZ2UoKTsKLSAgICBj
b25zdCBJbnRTaXplJiBpbWFnZVNpemUgPSBpbWFnZS0+c2l6ZSgpOworICAgIEludFJlY3QgdG9S
ZWN0ID0gcGl4ZWxTbmFwcGVkSW50UmVjdChpbWFnZVJlY3QpOworICAgIEludFNpemUgYnVmZmVy
U2l6ZSA9IHRvUmVjdC5zaXplKCk7CisgICAgSW50U2l6ZSByYXN0ZXJTaXplID0gSW50U2l6ZSh0
b1JlY3QubWF4WCgpLCB0b1JlY3QubWF4WSgpKTsKKyAgICBPd25QdHI8UmFzdGVyU2hhcGVJbnRl
cnZhbHM+IGludGVydmFscyA9IGFkb3B0UHRyKG5ldyBSYXN0ZXJTaGFwZUludGVydmFscyhyYXN0
ZXJTaXplLmhlaWdodCgpKSk7CisgICAgc3RkOjp1bmlxdWVfcHRyPEltYWdlQnVmZmVyPiBpbWFn
ZUJ1ZmZlciA9IEltYWdlQnVmZmVyOjpjcmVhdGUoYnVmZmVyU2l6ZSk7CiAKLSAgICBPd25QdHI8
UmFzdGVyU2hhcGVJbnRlcnZhbHM+IGludGVydmFscyA9IGFkb3B0UHRyKG5ldyBSYXN0ZXJTaGFw
ZUludGVydmFscyhpbWFnZVNpemUuaGVpZ2h0KCkpKTsKLQotICAgIHN0ZDo6dW5pcXVlX3B0cjxJ
bWFnZUJ1ZmZlcj4gaW1hZ2VCdWZmZXIgPSBJbWFnZUJ1ZmZlcjo6Y3JlYXRlKGltYWdlU2l6ZSk7
CiAgICAgaWYgKGltYWdlQnVmZmVyKSB7CiAgICAgICAgIEdyYXBoaWNzQ29udGV4dCogZ3JhcGhp
Y3NDb250ZXh0ID0gaW1hZ2VCdWZmZXItPmNvbnRleHQoKTsKLSAgICAgICAgZ3JhcGhpY3NDb250
ZXh0LT5kcmF3SW1hZ2UoaW1hZ2UsIENvbG9yU3BhY2VEZXZpY2VSR0IsIEludFBvaW50KCkpOwor
ICAgICAgICBncmFwaGljc0NvbnRleHQtPmRyYXdJbWFnZShzdHlsZUltYWdlLmNhY2hlZEltYWdl
KCktPmltYWdlKCksIENvbG9yU3BhY2VEZXZpY2VSR0IsIEludFJlY3QoSW50UG9pbnQoKSwgYnVm
ZmVyU2l6ZSkpOwogCi0gICAgICAgIFJlZlB0cjxVaW50OENsYW1wZWRBcnJheT4gcGl4ZWxBcnJh
eSA9IGltYWdlQnVmZmVyLT5nZXRVbm11bHRpcGxpZWRJbWFnZURhdGEoSW50UmVjdChJbnRQb2lu
dCgpLCBpbWFnZVNpemUpKTsKKyAgICAgICAgUmVmUHRyPFVpbnQ4Q2xhbXBlZEFycmF5PiBwaXhl
bEFycmF5ID0gaW1hZ2VCdWZmZXItPmdldFVubXVsdGlwbGllZEltYWdlRGF0YShJbnRSZWN0KElu
dFBvaW50KCksIGJ1ZmZlclNpemUpKTsKICAgICAgICAgdW5zaWduZWQgcGl4ZWxBcnJheUxlbmd0
aCA9IHBpeGVsQXJyYXktPmxlbmd0aCgpOwogICAgICAgICB1bnNpZ25lZCBwaXhlbEFycmF5T2Zm
c2V0ID0gMzsgLy8gRWFjaCBwaXhlbCBpcyBmb3VyIGJ5dGVzOiBSR0JBLgogICAgICAgICB1aW50
OF90IGFscGhhUGl4ZWxUaHJlc2hvbGQgPSB0aHJlc2hvbGQgKiAyNTU7CiAKLSAgICAgICAgaWYg
KHN0YXRpY19jYXN0PHVuc2lnbmVkPihpbWFnZVNpemUud2lkdGgoKSAqIGltYWdlU2l6ZS5oZWln
aHQoKSAqIDQpID09IHBpeGVsQXJyYXlMZW5ndGgpIHsgLy8gc2FuaXR5IGNoZWNrCi0gICAgICAg
ICAgICBmb3IgKGludCB5ID0gMDsgeSA8IGltYWdlU2l6ZS5oZWlnaHQoKTsgKyt5KSB7CisgICAg
ICAgIGlmIChzdGF0aWNfY2FzdDx1bnNpZ25lZD4oYnVmZmVyU2l6ZS53aWR0aCgpICogYnVmZmVy
U2l6ZS5oZWlnaHQoKSAqIDQpID09IHBpeGVsQXJyYXlMZW5ndGgpIHsgLy8gc2FuaXR5IGNoZWNr
CisgICAgICAgICAgICBmb3IgKGludCB5ID0gMDsgeSA8IGJ1ZmZlclNpemUuaGVpZ2h0KCk7ICsr
eSkgewogICAgICAgICAgICAgICAgIGludCBzdGFydFggPSAtMTsKLSAgICAgICAgICAgICAgICBm
b3IgKGludCB4ID0gMDsgeCA8IGltYWdlU2l6ZS53aWR0aCgpOyArK3gsIHBpeGVsQXJyYXlPZmZz
ZXQgKz0gNCkgeworICAgICAgICAgICAgICAgIGZvciAoaW50IHggPSAwOyB4IDwgYnVmZmVyU2l6
ZS53aWR0aCgpOyArK3gsIHBpeGVsQXJyYXlPZmZzZXQgKz0gNCkgewogICAgICAgICAgICAgICAg
ICAgICB1aW50OF90IGFscGhhID0gcGl4ZWxBcnJheS0+aXRlbShwaXhlbEFycmF5T2Zmc2V0KTsK
ICAgICAgICAgICAgICAgICAgICAgYm9vbCBhbHBoYUFib3ZlVGhyZXNob2xkID0gYWxwaGEgPiBh
bHBoYVBpeGVsVGhyZXNob2xkOwogICAgICAgICAgICAgICAgICAgICBpZiAoc3RhcnRYID09IC0x
ICYmIGFscGhhQWJvdmVUaHJlc2hvbGQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0
WCA9IHg7Ci0gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoc3RhcnRYICE9IC0xICYmICgh
YWxwaGFBYm92ZVRocmVzaG9sZCB8fCB4ID09IGltYWdlU2l6ZS53aWR0aCgpIC0gMSkpIHsKLSAg
ICAgICAgICAgICAgICAgICAgICAgIGludGVydmFscy0+YXBwZW5kSW50ZXJ2YWwoeSwgc3RhcnRY
LCB4KTsKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChzdGFydFggIT0gLTEgJiYgKCFh
bHBoYUFib3ZlVGhyZXNob2xkIHx8IHggPT0gYnVmZmVyU2l6ZS53aWR0aCgpIC0gMSkpIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIGludGVydmFscy0+YXBwZW5kSW50ZXJ2YWwoeSArIHRvUmVj
dC55KCksIHN0YXJ0WCArIHRvUmVjdC54KCksIHggKyB0b1JlY3QueCgpKTsKICAgICAgICAgICAg
ICAgICAgICAgICAgIHN0YXJ0WCA9IC0xOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICAgICAgfQpAQCAtMjg4LDcgKzI4OCw3IEBAIFBhc3NPd25QdHI8U2hhcGU+IFNoYXBlOjpj
cmVhdGVSYXN0ZXJTaGFwZShjb25zdCBTdHlsZUltYWdlJiBzdHlsZUltYWdlLCBmbG9hdCB0CiAg
ICAgICAgIH0KICAgICB9CiAKLSAgICBPd25QdHI8UmFzdGVyU2hhcGU+IHJhc3RlclNoYXBlID0g
YWRvcHRQdHIobmV3IFJhc3RlclNoYXBlKGludGVydmFscy5yZWxlYXNlKCksIGltYWdlU2l6ZSkp
OworICAgIE93blB0cjxSYXN0ZXJTaGFwZT4gcmFzdGVyU2hhcGUgPSBhZG9wdFB0cihuZXcgUmFz
dGVyU2hhcGUoaW50ZXJ2YWxzLnJlbGVhc2UoKSwgcmFzdGVyU2l6ZSkpOwogICAgIHJhc3RlclNo
YXBlLT5tX3dyaXRpbmdNb2RlID0gd3JpdGluZ01vZGU7CiAgICAgcmFzdGVyU2hhcGUtPm1fbWFy
Z2luID0gZmxvYXRWYWx1ZUZvckxlbmd0aChtYXJnaW4sIDApOwogICAgIHJhc3RlclNoYXBlLT5t
X3BhZGRpbmcgPSBmbG9hdFZhbHVlRm9yTGVuZ3RoKHBhZGRpbmcsIDApOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZS5oIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3NoYXBlcy9TaGFwZS5oCmluZGV4IDQ0YWU2MjQuLmFiNzFkNTUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zaGFwZXMvU2hhcGUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVzL1NoYXBlLmgKQEAgLTY4LDcgKzY4LDcgQEAgcHVibGlj
OgogICAgIH07CiAKICAgICBzdGF0aWMgUGFzc093blB0cjxTaGFwZT4gY3JlYXRlU2hhcGUoY29u
c3QgQmFzaWNTaGFwZSosIGNvbnN0IExheW91dFNpemUmIGxvZ2ljYWxCb3hTaXplLCBXcml0aW5n
TW9kZSwgTGVuZ3RoIG1hcmdpbiwgTGVuZ3RoIHBhZGRpbmcpOwotICAgIHN0YXRpYyBQYXNzT3du
UHRyPFNoYXBlPiBjcmVhdGVSYXN0ZXJTaGFwZShjb25zdCBTdHlsZUltYWdlJiwgZmxvYXQgdGhy
ZXNob2xkLCBjb25zdCBMYXlvdXRTaXplJiBsb2dpY2FsQm94U2l6ZSwgV3JpdGluZ01vZGUsIExl
bmd0aCBtYXJnaW4sIExlbmd0aCBwYWRkaW5nKTsKKyAgICBzdGF0aWMgUGFzc093blB0cjxTaGFw
ZT4gY3JlYXRlUmFzdGVyU2hhcGUoY29uc3QgU3R5bGVJbWFnZSYsIGZsb2F0IHRocmVzaG9sZCwg
Y29uc3QgTGF5b3V0UmVjdCYgaW1hZ2VSZWN0LCBjb25zdCBMYXlvdXRTaXplJiBsb2dpY2FsQm94
U2l6ZSwgV3JpdGluZ01vZGUsIExlbmd0aCBtYXJnaW4sIExlbmd0aCBwYWRkaW5nKTsKICAgICBz
dGF0aWMgUGFzc093blB0cjxTaGFwZT4gY3JlYXRlTGF5b3V0Qm94U2hhcGUoY29uc3QgUm91bmRl
ZFJlY3QmLCBXcml0aW5nTW9kZSwgTGVuZ3RoIG1hcmdpbiwgTGVuZ3RoIHBhZGRpbmcpOwogCiAg
ICAgdmlydHVhbCB+U2hhcGUoKSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zaGFwZXMvU2hhcGVJbmZvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zaGFw
ZXMvU2hhcGVJbmZvLmNwcAppbmRleCBlNzZkZjZhLi4xYzViMmExIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVzL1NoYXBlSW5mby5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZUluZm8uY3BwCkBAIC0zNiw2ICszNiw3IEBACiAj
aW5jbHVkZSAiUmVuZGVyQmxvY2suaCIKICNpbmNsdWRlICJSZW5kZXJCb3guaCIKICNpbmNsdWRl
ICJSZW5kZXJSZWdpb24uaCIKKyNpbmNsdWRlICJSZW5kZXJSZXBsYWNlZC5oIgogI2luY2x1ZGUg
IlJlbmRlclN0eWxlLmgiCiAjaW5jbHVkZSAiU2hhcGUuaCIKIApAQCAtNTQsNiArNTUsMTggQEAg
Ym9vbCBjaGVja1NoYXBlSW1hZ2VPcmlnaW4oRG9jdW1lbnQmIGRvY3VtZW50LCBDYWNoZWRJbWFn
ZSYgY2FjaGVkSW1hZ2UpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCitzdGF0aWMgTGF5b3V0UmVj
dCBnZXRTaGFwZUltYWdlUmVjdChjb25zdCBTdHlsZUltYWdlJiBzdHlsZUltYWdlLCBjb25zdCBS
ZW5kZXJCb3gmIHJlbmRlckJveCkKK3sKKyAgICBpZiAocmVuZGVyQm94LmlzUmVuZGVyUmVwbGFj
ZWQoKSkgeworICAgICAgICBjb25zdCBSZW5kZXJSZXBsYWNlZCYgcmVuZGVyUmVwbGFjZWQgPSAq
dG9SZW5kZXJSZXBsYWNlZCgmcmVuZGVyQm94KTsKKyAgICAgICAgcmV0dXJuIHJlbmRlclJlcGxh
Y2VkLnJlcGxhY2VkQ29udGVudFJlY3QocmVuZGVyQm94LmludHJpbnNpY1NpemUoKSk7CisgICAg
fQorCisgICAgQVNTRVJUKHN0eWxlSW1hZ2UuY2FjaGVkSW1hZ2UoKSk7CisgICAgQVNTRVJUKHN0
eWxlSW1hZ2UuY2FjaGVkSW1hZ2UoKS0+aGFzSW1hZ2UoKSk7CisgICAgcmV0dXJuIExheW91dFJl
Y3QoTGF5b3V0UG9pbnQoKSwgc3R5bGVJbWFnZS5jYWNoZWRJbWFnZSgpLT5pbWFnZSgpLT5zaXpl
KCkpOworfQorCiB0ZW1wbGF0ZTxjbGFzcyBSZW5kZXJUeXBlPgogY29uc3QgU2hhcGUmIFNoYXBl
SW5mbzxSZW5kZXJUeXBlPjo6Y29tcHV0ZWRTaGFwZSgpIGNvbnN0CiB7CkBAIC03MiwxMCArODUs
MTIgQEAgY29uc3QgU2hhcGUmIFNoYXBlSW5mbzxSZW5kZXJUeXBlPjo6Y29tcHV0ZWRTaGFwZSgp
IGNvbnN0CiAgICAgICAgIEFTU0VSVChzaGFwZVZhbHVlLT5zaGFwZSgpKTsKICAgICAgICAgbV9z
aGFwZSA9IFNoYXBlOjpjcmVhdGVTaGFwZShzaGFwZVZhbHVlLT5zaGFwZSgpLCBtX3NoYXBlTG9n
aWNhbFNpemUsIHdyaXRpbmdNb2RlLCBtYXJnaW4sIHBhZGRpbmcpOwogICAgICAgICBicmVhazsK
LSAgICBjYXNlIFNoYXBlVmFsdWU6OkltYWdlOgorICAgIGNhc2UgU2hhcGVWYWx1ZTo6SW1hZ2U6
IHsKICAgICAgICAgQVNTRVJUKHNoYXBlVmFsdWUtPmltYWdlKCkpOwotICAgICAgICBtX3NoYXBl
ID0gU2hhcGU6OmNyZWF0ZVJhc3RlclNoYXBlKCooc2hhcGVWYWx1ZS0+aW1hZ2UoKSksIHNoYXBl
SW1hZ2VUaHJlc2hvbGQsIG1fc2hhcGVMb2dpY2FsU2l6ZSwgd3JpdGluZ01vZGUsIG1hcmdpbiwg
cGFkZGluZyk7CisgICAgICAgIGNvbnN0IFN0eWxlSW1hZ2UmIHN0eWxlSW1hZ2UgPSAqKHNoYXBl
VmFsdWUtPmltYWdlKCkpOworICAgICAgICBtX3NoYXBlID0gU2hhcGU6OmNyZWF0ZVJhc3RlclNo
YXBlKHN0eWxlSW1hZ2UsIHNoYXBlSW1hZ2VUaHJlc2hvbGQsIGdldFNoYXBlSW1hZ2VSZWN0KHN0
eWxlSW1hZ2UsIG1fcmVuZGVyZXIpLCBtX3NoYXBlTG9naWNhbFNpemUsIHdyaXRpbmdNb2RlLCBt
YXJnaW4sIHBhZGRpbmcpOwogICAgICAgICBicmVhazsKKyAgICB9CiAgICAgY2FzZSBTaGFwZVZh
bHVlOjpCb3g6IHsKICAgICAgICAgY29uc3QgUm91bmRlZFJlY3QmIHNoYXBlUmVjdCA9IG1fcmVu
ZGVyZXIuc3R5bGUoKS5nZXRSb3VuZGVkQm9yZGVyRm9yKExheW91dFJlY3QoTGF5b3V0UG9pbnQo
KSwgbV9zaGFwZUxvZ2ljYWxTaXplKSwgJihtX3JlbmRlcmVyLnZpZXcoKSkpOwogICAgICAgICBt
X3NoYXBlID0gU2hhcGU6OmNyZWF0ZUxheW91dEJveFNoYXBlKHNoYXBlUmVjdCwgd3JpdGluZ01v
ZGUsIG1hcmdpbiwgcGFkZGluZyk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221936</attachid>
            <date>2014-01-22 19:05:30 -0800</date>
            <delta_ts>2014-01-23 16:02:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>tmp.patch</filename>
            <type>text/plain</type>
            <size>17759</size>
            <attacher name="Hans Muller">giles_joplin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhOTFlMGMyLi40OTU3YTY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTQtMDEt
MjIgIEhhbnMgTXVsbGVyICA8aG11bGxlckBhZG9iZS5jb20+CisKKyAgICAgICAgW0NTUyBTaGFw
ZXNdIEltYWdlIHZhbHVlZCBzaGFwZSBzaXplIGFuZCBwb3NpdGlvbiBzaG91bGQgY29uZm9ybSB0
byB0aGUgc3BlYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTIzMjk1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdl
LWZpdC0wMDEtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9zaGFwZXMvc2hh
cGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1pbWFnZS1maXQtMDAxLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNp
ZGUtaW1hZ2UtZml0LTAwMi1leHBlY3RlZC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3No
YXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDIuaHRt
bDogQWRkZWQuCisgICAgICAgICogZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hh
cGUtb3V0c2lkZS1pbWFnZS1maXQtMDAzLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0
LTAwMy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZs
b2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDQtZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1p
bWFnZS1maXQtMDA0Lmh0bWw6IEFkZGVkLgorCiAyMDE0LTAxLTIyICBNaWNoYcWCIFBha3XFgmEg
dmVsIFJ1dGthICA8bS5wYWt1bGFAc2Ftc3VuZy5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBF
RkwgZ2FyZGVuaW5nCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1v
dXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDEtZXhwZWN0ZWQuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNp
ZGUtaW1hZ2UtZml0LTAwMS1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjg0MmI5ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3No
YXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDEtZXhw
ZWN0ZWQuaHRtbApAQCAtMCwwICsxLDI0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhl
YWQ+Cis8c3R5bGU+CisjaW1hZ2Utc2hhcGUgeworICAgIGZsb2F0OiBsZWZ0OworICAgIHdpZHRo
OiAxMDBweDsKKyAgICBoZWlnaHQ6IDIwMHB4OworfQorCisjY29udGVudCB7CisgICAgZm9udDog
NTBweC8xIEFoZW0sIHNhbnMtc2VyaWY7CisgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50
aWFsaWFzZWQ7CisgICAgY29sb3I6IGdyZWVuOworfQorPC9zdHlsZT4KKzxkaXYgaWQ9ImNvbnRl
bnQiPgorICA8aW1nIGlkPSJpbWFnZS1zaGFwZSIgCisgICAgc3JjPSJkYXRhOmltYWdlL3N2Zyt4
bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHJlY3Qgd2lk
dGg9JzEwMCUnIGhlaWdodD0nMTAwJScgZmlsbD0nYmx1ZScvPjwvc3ZnPiIvPgorICBYPGJyPlg8
YnI+WDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRl
LWltYWdlLWZpdC0wMDEuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNp
ZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwMS5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYyMWUzZjEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdl
LWZpdC0wMDEuaHRtbApAQCAtMCwwICsxLDI2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgor
PGhlYWQ+Cis8c3R5bGU+CisjaW1hZ2Utc2hhcGUgeworICAgIGZsb2F0OiBsZWZ0OworICAgIC13
ZWJraXQtc2hhcGUtb3V0c2lkZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHht
bG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHJlY3Qgd2lkdGg9JzEwMCUnIGhlaWdo
dD0nMTAwJScgZmlsbD0nYmx1ZScvPjwvc3ZnPiIpOworICAgIHdpZHRoOiAxMDBweDsKKyAgICBo
ZWlnaHQ6IDIwMHB4OworICAgIG1hcmdpbi1yaWdodDogNTBweDsgLyogZXhwb3NlIHNoYXBlLW91
dHNpZGUgcHJvcGVydHkgZmFpbHVyZXMgKi8KK30KKworI2NvbnRlbnQgeworICAgIGZvbnQ6IDUw
cHgvMSBBaGVtLCBzYW5zLXNlcmlmOworICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlh
bGlhc2VkOworICAgIGNvbG9yOiBncmVlbjsKK30KKzwvc3R5bGU+Cis8ZGl2IGlkPSJjb250ZW50
Ij4KKyAgPGltZyBpZD0iaW1hZ2Utc2hhcGUiIAorICAgIHNyYz0iZGF0YTppbWFnZS9zdmcreG1s
O3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxyZWN0IHdpZHRo
PScxMDAlJyBoZWlnaHQ9JzEwMCUnIGZpbGw9J2JsdWUnLz48L3N2Zz4iLz4KKyAgWDxicj5YPGJy
Plg8YnI+WDxicj5YCis8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1p
bWFnZS1maXQtMDAyLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFw
ZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDItZXhwZWN0ZWQuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOWMxZDM4ZAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3No
YXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwMi1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMjMgQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyNpbWFnZS1zaGFwZSB7
CisgICAgZmxvYXQ6IGxlZnQ7CisgICAgd2lkdGg6IDEwMHB4OworICAgIGhlaWdodDogMjAwcHg7
Cit9CisKKyNjb250ZW50IHsKKyAgICBmb250OiA1MHB4LzEgQWhlbSwgc2Fucy1zZXJpZjsKKyAg
ICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsKKyAgICBjb2xvcjogZ3JlZW47
Cit9Cis8L3N0eWxlPgorPGRpdiBpZD0iY29udGVudCI+CisgIDxpbWcgaWQ9ImltYWdlLXNoYXBl
Ii8+CisgIFg8YnI+WDxicj5YPGJyPlg8YnI+WAorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRz
L3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwMi5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFw
ZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1pbWFnZS1maXQtMDAyLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzMzMTY1ZgotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBl
LW91dHNpZGUtaW1hZ2UtZml0LTAwMi5odG1sCkBAIC0wLDAgKzEsMjQgQEAKKzwhRE9DVFlQRSBo
dG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyNpbWFnZS1zaGFwZSB7CisgICAgZmxvYXQ6
IGxlZnQ7CisgICAgLXdlYmtpdC1zaGFwZS1vdXRzaWRlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3ht
bDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cmVjdCB3aWR0
aD0nMTAwJScgaGVpZ2h0PScxMDAlJyBmaWxsPSdibHVlJy8+PC9zdmc+Iik7CisgICAgd2lkdGg6
IDEwMHB4OworICAgIGhlaWdodDogMjAwcHg7CisgICAgbWFyZ2luLXJpZ2h0OiA1MHB4OyAvKiBl
eHBvc2Ugc2hhcGUtb3V0c2lkZSBwcm9wZXJ0eSBmYWlsdXJlcyAqLworfQorCisjY29udGVudCB7
CisgICAgZm9udDogNTBweC8xIEFoZW0sIHNhbnMtc2VyaWY7CisgICAgLXdlYmtpdC1mb250LXNt
b290aGluZzogYW50aWFsaWFzZWQ7CisgICAgY29sb3I6IGdyZWVuOworfQorPC9zdHlsZT4KKzxk
aXYgaWQ9ImNvbnRlbnQiPgorICA8aW1nIGlkPSJpbWFnZS1zaGFwZSIvPgorICBYPGJyPlg8YnI+
WDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1pbWFn
ZS1maXQtMDAzLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1v
dXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDMtZXhwZWN0ZWQuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MWVhMmFmCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUt
b3V0c2lkZS1pbWFnZS1maXQtMDAzLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwyNiBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorI2ltYWdlLXNoYXBlIHsKKyAg
ICBmbG9hdDogbGVmdDsKKyAgICB3aWR0aDogMTAwcHg7CisgICAgaGVpZ2h0OiAxMDBweDsKKyAg
ICBvYmplY3QtZml0OiBjb250YWluOworfQorCisjY29udGVudCB7CisgICAgZm9udDogNTBweC8x
IEFoZW0sIHNhbnMtc2VyaWY7CisgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFz
ZWQ7CisgICAgY29sb3I6IGdyZWVuOworfQorPC9zdHlsZT4KKzxkaXYgaWQ9ImNvbnRlbnQiPgor
ICBYPGJyPgorICA8aW1nIGlkPSJpbWFnZS1zaGFwZSIKKyAgICBzcmM9ImRhdGE6aW1hZ2Uvc3Zn
K3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0n
MTBweCcgaGVpZ2h0PScxMHB4Jz48cmVjdCB3aWR0aD0nMTAnIGhlaWdodD0nMTAnIGZpbGw9J2Js
dWUnLz48L3N2Zz4iLz4KKyAgWDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0
cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qvc2hh
cGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwMy5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFjMzE2MTMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFw
ZS1vdXRzaWRlLWltYWdlLWZpdC0wMDMuaHRtbApAQCAtMCwwICsxLDMwIEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+CisvKgorVGhlIG9iamVjdC1maXQ6IGNvbnRh
aW4gcHJvcGVydHkgY2F1c2VzIHRoZSAxMHgxMCBTVkcgaW1hZ2UgdG8gYmUgc2NhbGVkIHRvIDEw
MHgxMDAgYW5kIGNlbnRlcmVkIHdpdGhpbiB0aGUgaW1hZ2Utc2hhcGUncworMTAweDIwMCBib3Vu
ZHMuCisqLworI2ltYWdlLXNoYXBlIHsKKyAgICBmbG9hdDogbGVmdDsKKyAgICAtd2Via2l0LXNo
YXBlLW91dHNpZGU6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0
cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMHB4JyBoZWlnaHQ9JzEwcHgnPjxyZWN0
IHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgZmlsbD0nYmx1ZScvPjwvc3ZnPiIpOworICAgIHdpZHRo
OiAxMDBweDsKKyAgICBoZWlnaHQ6IDIwMHB4OworICAgIG9iamVjdC1maXQ6IGNvbnRhaW47Cit9
CisKKyNjb250ZW50IHsKKyAgICBmb250OiA1MHB4LzEgQWhlbSwgc2Fucy1zZXJpZjsKKyAgICAt
d2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsKKyAgICBjb2xvcjogZ3JlZW47Cit9
Cis8L3N0eWxlPgorPGRpdiBpZD0iY29udGVudCI+CisgIDxpbWcgaWQ9ImltYWdlLXNoYXBlIgor
ICAgIHNyYz0iZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53
My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMHB4JyBoZWlnaHQ9JzEwcHgnPjxyZWN0IHdpZHRoPScx
MCcgaGVpZ2h0PScxMCcgZmlsbD0nYmx1ZScvPjwvc3ZnPiIvPgorICBYPGJyPlg8YnI+WDxicj5Y
Cis8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1pbWFnZS1maXQtMDA0
LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZs
b2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDQtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MDA3Mjk2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1p
bWFnZS1maXQtMDA0LWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwyNiBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorI2ltYWdlLXNoYXBlIHsKKyAgICBmbG9hdDog
bGVmdDsKKyAgICB3aWR0aDogMTAwcHg7CisgICAgaGVpZ2h0OiAyMDBweDsKKyAgICBvYmplY3Qt
Zml0OiBjb3ZlcjsKKyAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7Cit9CisKKyNjb250ZW50IHsKKyAg
ICBmb250OiA1MHB4LzEgQWhlbSwgc2Fucy1zZXJpZjsKKyAgICAtd2Via2l0LWZvbnQtc21vb3Ro
aW5nOiBhbnRpYWxpYXNlZDsKKyAgICBjb2xvcjogZ3JlZW47Cit9Cis8L3N0eWxlPgorPGRpdiBp
ZD0iY29udGVudCI+CisgIDxpbWcgaWQ9ImltYWdlLXNoYXBlIgorICAgIHNyYz0iZGF0YTppbWFn
ZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdp
ZHRoPScxMHB4JyBoZWlnaHQ9JzEwcHgnPjxyZWN0IHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgZmls
bD0nYmx1ZScvPjwvc3ZnPiIvPgorICBYPGJyPlg8YnI+WDxicj5YPGJyPlgKKzwvZGl2PgorPC9i
b2R5PgorPC9odG1sPgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFw
ZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDQuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1h
Z2UtZml0LTAwNC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0Y2Yw
ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRz
aWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDQuaHRtbApAQCAtMCwwICsxLDMy
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+CisvKiAKK1RoZSBv
YmplY3QtZml0OmNvdmVyIHByb3BlcnR5IGNhdXNlcyB0aGUgaW1hZ2UgdG8gYmUgc2NhbGVkIHRv
IDIwMHgyMDAgYW5kIHRoZW4gY2VudGVyZWQuIFRoZSBzaGFwZS1vdXRzaWRlCitpcyBjbGlwcGVk
IHRvIHRoZSBpbWFnZS1zaGFwZSdzIG1hcmdpbi1ib3gsIHdoaWNoIG1lYW5zIHRoYXQgdGhlIEFo
ZW0gdGV4dCB3aWxsIGFwcGVhciA1MCBwaXhlbHMgdG8gdGhlIHJpZ2h0CitvZiB0aGUgSU1HIGVs
ZW1lbnQuCisqLworI2ltYWdlLXNoYXBlIHsKKyAgICBmbG9hdDogbGVmdDsKKyAgICAtd2Via2l0
LXNoYXBlLW91dHNpZGU6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0n
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMHB4JyBoZWlnaHQ9JzEwcHgnPjxy
ZWN0IHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgZmlsbD0nYmx1ZScvPjwvc3ZnPiIpOworICAgIHdp
ZHRoOiAxMDBweDsKKyAgICBoZWlnaHQ6IDIwMHB4OworICAgIG9iamVjdC1maXQ6IGNvdmVyOwor
ICAgIG1hcmdpbi1yaWdodDogMzAwcHg7Cit9CisKKyNjb250ZW50IHsKKyAgICBmb250OiA1MHB4
LzEgQWhlbSwgc2Fucy1zZXJpZjsKKyAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxp
YXNlZDsKKyAgICBjb2xvcjogZ3JlZW47Cit9Cis8L3N0eWxlPgorPGRpdiBpZD0iY29udGVudCI+
CisgIDxpbWcgaWQ9ImltYWdlLXNoYXBlIgorICAgIHNyYz0iZGF0YTppbWFnZS9zdmcreG1sO3V0
ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMHB4JyBo
ZWlnaHQ9JzEwcHgnPjxyZWN0IHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgZmlsbD0nYmx1ZScvPjwv
c3ZnPiIvPgorICBYPGJyPlg8YnI+WDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1s
PgorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKaW5kZXggMmY3MjdiMy4uZGExMGQ2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDM4IEBACisyMDE0LTAxLTIyICBIYW5zIE11bGxlciAgPGhtdWxsZXJAYWRvYmUuY29tPgorCisg
ICAgICAgIFtDU1MgU2hhcGVzXSBJbWFnZSB2YWx1ZWQgc2hhcGUgc2l6ZSBhbmQgcG9zaXRpb24g
c2hvdWxkIGNvbmZvcm0gdG8gdGhlIHNwZWMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyMzI5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBpbWFnZSB2YWx1ZWQgc2hhcGUtb3V0c2lkZSBz
Y2FsaW5nIGFuZCB0cmFuc2xhdGlvbiBwZXIgdGhlIHNwZWMsCisgICAgICAgIGh0dHA6Ly9kZXYu
dzMub3JnL2Nzc3dnL2Nzcy1zaGFwZXMvI3NoYXBlcy1mcm9tLWltYWdlOgorCisgICAgICAgICJU
aGUgaW1hZ2UgaXMgc2l6ZWQgYW5kIHBvc2l0aW9uZWQgYXMgaWYgaXQgd2VyZSBhIHJlcGxhY2Vk
IGVsZW1lbnQgd2hvc2UKKyAgICAgICAgc3BlY2lmaWVkIHdpZHRoIGFuZCBoZWlnaHQgYXJlIHRo
ZSBzYW1lIGFzIHRoZSBlbGVtZW504oCZcyB1c2VkIGNvbnRlbnQgYm94IHNpemUuIgorCisgICAg
ICAgIFRoaXMgY2hhbmdlIGRvZXNuJ3QgY29tcGxldGVseSBmdWxmaWxsIHRoZSBzcGVjLCBpdCdz
IGxpbWl0ZWQgdG8gaW1hZ2UgZWxlbWVudHMKKyAgICAgICAgYW5kIHNoYXBlLW91dHNpZGUuCisK
KyAgICAgICAgVGVzdHM6IGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91
dHNpZGUtaW1hZ2UtZml0LTAwMS5odG1sCisgICAgICAgICAgICAgICBmYXN0L3NoYXBlcy9zaGFw
ZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWltYWdlLWZpdC0wMDIuaHRtbAorICAgICAg
ICAgICAgICAgZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1p
bWFnZS1maXQtMDAzLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNp
ZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtaW1hZ2UtZml0LTAwNC5odG1sCisKKyAgICAgICAgKiBy
ZW5kZXJpbmcvc2hhcGVzL1NoYXBlLmg6CisgICAgICAgICogcmVuZGVyaW5nL3NoYXBlcy9TaGFw
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTaGFwZTo6Y3JlYXRlUmFzdGVyU2hhcGUpOgorICAg
ICAgICBBZGRlZCBhbiBpbWFnZVJlY3QgcGFyYW1ldGVyIHdoaWNoIHNwZWNpZmllcyB3aGVyZSB0
aGUgc2hhcGUgaW1hZ2UgaXMgdG8KKyAgICAgICAgYXBwZWFyIHJlbGF0aXZlIHRvIHRoZSBjb250
ZW50IGJveC4gVGhlIGltYWdlUmVjdCBpbXBsaWVzIGJvdGggc2NhbGluZyBhbmQKKyAgICAgICAg
dHJhbnNsYXRpb24gb2YgdGhlIHNoYXBlIGltYWdlLgorCisgICAgICAgICogcmVuZGVyaW5nL3No
YXBlcy9TaGFwZUluZm8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2hhcGVJbmZvPFJlbmRlclR5
cGU+Ojpjb21wdXRlZFNoYXBlKToKKyAgICAgICAgKFdlYkNvcmU6OmdldFNoYXBlSW1hZ2VSZWN0
KToKKyAgICAgICAgRm9yIHJlcGxhY2VkIGVsZW1lbnRzLCBjb21wdXRlIHRoZSBzaGFwZSdzIGlt
YWdlUmVjdCB3aXRoCisgICAgICAgIFJlbmRlclJlcGxhY2VkOjpyZXBsYWNlZENvbnRlbnRSZWN0
KCkuCisKKwogMjAxNC0wMS0yMiAgUGV0ZXIgTW9sbmFyICA8cG1vbG5hci51LXN6ZWdlZEBwYXJ0
bmVyLnNhbXN1bmcuY29tPgogCiAgICAgICAgIFJlZmFjdG9yIGNhbGN1bGF0aW9uIG9mIGhhc1J4
IGFuZCBoYXNSeSB2YWx1ZXMgaW4gU1ZHUGF0aERhdGEKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zaGFwZXMvU2hhcGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3NoYXBlcy9TaGFwZS5jcHAKaW5kZXggMDc5MzU0My4uMDEyMzI0OSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZS5jcHAKQEAgLTI1MSwzNiArMjUxLDM2IEBAIFBhc3NP
d25QdHI8U2hhcGU+IFNoYXBlOjpjcmVhdGVTaGFwZShjb25zdCBCYXNpY1NoYXBlKiBiYXNpY1No
YXBlLCBjb25zdCBMYXlvdXRTCiAgICAgcmV0dXJuIHNoYXBlLnJlbGVhc2UoKTsKIH0KIAotUGFz
c093blB0cjxTaGFwZT4gU2hhcGU6OmNyZWF0ZVJhc3RlclNoYXBlKGNvbnN0IFN0eWxlSW1hZ2Um
IHN0eWxlSW1hZ2UsIGZsb2F0IHRocmVzaG9sZCwgY29uc3QgTGF5b3V0U2l6ZSYsIFdyaXRpbmdN
b2RlIHdyaXRpbmdNb2RlLCBMZW5ndGggbWFyZ2luLCBMZW5ndGggcGFkZGluZykKK1Bhc3NPd25Q
dHI8U2hhcGU+IFNoYXBlOjpjcmVhdGVSYXN0ZXJTaGFwZShjb25zdCBTdHlsZUltYWdlJiBzdHls
ZUltYWdlLCBmbG9hdCB0aHJlc2hvbGQsIGNvbnN0IExheW91dFJlY3QmIGltYWdlUmVjdCwgY29u
c3QgTGF5b3V0U2l6ZSYsIFdyaXRpbmdNb2RlIHdyaXRpbmdNb2RlLCBMZW5ndGggbWFyZ2luLCBM
ZW5ndGggcGFkZGluZykKIHsKICAgICBBU1NFUlQoc3R5bGVJbWFnZS5jYWNoZWRJbWFnZSgpKTsK
ICAgICBBU1NFUlQoc3R5bGVJbWFnZS5jYWNoZWRJbWFnZSgpLT5oYXNJbWFnZSgpKTsKIAotICAg
IEltYWdlKiBpbWFnZSA9IHN0eWxlSW1hZ2UuY2FjaGVkSW1hZ2UoKS0+aW1hZ2UoKTsKLSAgICBj
b25zdCBJbnRTaXplJiBpbWFnZVNpemUgPSBpbWFnZS0+c2l6ZSgpOworICAgIEludFJlY3QgdG9S
ZWN0ID0gcGl4ZWxTbmFwcGVkSW50UmVjdChpbWFnZVJlY3QpOworICAgIEludFNpemUgYnVmZmVy
U2l6ZSA9IHRvUmVjdC5zaXplKCk7CisgICAgSW50U2l6ZSByYXN0ZXJTaXplID0gSW50U2l6ZSh0
b1JlY3QubWF4WCgpLCB0b1JlY3QubWF4WSgpKTsKKyAgICBPd25QdHI8UmFzdGVyU2hhcGVJbnRl
cnZhbHM+IGludGVydmFscyA9IGFkb3B0UHRyKG5ldyBSYXN0ZXJTaGFwZUludGVydmFscyhyYXN0
ZXJTaXplLmhlaWdodCgpKSk7CisgICAgc3RkOjp1bmlxdWVfcHRyPEltYWdlQnVmZmVyPiBpbWFn
ZUJ1ZmZlciA9IEltYWdlQnVmZmVyOjpjcmVhdGUoYnVmZmVyU2l6ZSk7CiAKLSAgICBPd25QdHI8
UmFzdGVyU2hhcGVJbnRlcnZhbHM+IGludGVydmFscyA9IGFkb3B0UHRyKG5ldyBSYXN0ZXJTaGFw
ZUludGVydmFscyhpbWFnZVNpemUuaGVpZ2h0KCkpKTsKLQotICAgIHN0ZDo6dW5pcXVlX3B0cjxJ
bWFnZUJ1ZmZlcj4gaW1hZ2VCdWZmZXIgPSBJbWFnZUJ1ZmZlcjo6Y3JlYXRlKGltYWdlU2l6ZSk7
CiAgICAgaWYgKGltYWdlQnVmZmVyKSB7CiAgICAgICAgIEdyYXBoaWNzQ29udGV4dCogZ3JhcGhp
Y3NDb250ZXh0ID0gaW1hZ2VCdWZmZXItPmNvbnRleHQoKTsKLSAgICAgICAgZ3JhcGhpY3NDb250
ZXh0LT5kcmF3SW1hZ2UoaW1hZ2UsIENvbG9yU3BhY2VEZXZpY2VSR0IsIEludFBvaW50KCkpOwor
ICAgICAgICBncmFwaGljc0NvbnRleHQtPmRyYXdJbWFnZShzdHlsZUltYWdlLmNhY2hlZEltYWdl
KCktPmltYWdlKCksIENvbG9yU3BhY2VEZXZpY2VSR0IsIEludFJlY3QoSW50UG9pbnQoKSwgYnVm
ZmVyU2l6ZSkpOwogCi0gICAgICAgIFJlZlB0cjxVaW50OENsYW1wZWRBcnJheT4gcGl4ZWxBcnJh
eSA9IGltYWdlQnVmZmVyLT5nZXRVbm11bHRpcGxpZWRJbWFnZURhdGEoSW50UmVjdChJbnRQb2lu
dCgpLCBpbWFnZVNpemUpKTsKKyAgICAgICAgUmVmUHRyPFVpbnQ4Q2xhbXBlZEFycmF5PiBwaXhl
bEFycmF5ID0gaW1hZ2VCdWZmZXItPmdldFVubXVsdGlwbGllZEltYWdlRGF0YShJbnRSZWN0KElu
dFBvaW50KCksIGJ1ZmZlclNpemUpKTsKICAgICAgICAgdW5zaWduZWQgcGl4ZWxBcnJheUxlbmd0
aCA9IHBpeGVsQXJyYXktPmxlbmd0aCgpOwogICAgICAgICB1bnNpZ25lZCBwaXhlbEFycmF5T2Zm
c2V0ID0gMzsgLy8gRWFjaCBwaXhlbCBpcyBmb3VyIGJ5dGVzOiBSR0JBLgogICAgICAgICB1aW50
OF90IGFscGhhUGl4ZWxUaHJlc2hvbGQgPSB0aHJlc2hvbGQgKiAyNTU7CiAKLSAgICAgICAgaWYg
KHN0YXRpY19jYXN0PHVuc2lnbmVkPihpbWFnZVNpemUud2lkdGgoKSAqIGltYWdlU2l6ZS5oZWln
aHQoKSAqIDQpID09IHBpeGVsQXJyYXlMZW5ndGgpIHsgLy8gc2FuaXR5IGNoZWNrCi0gICAgICAg
ICAgICBmb3IgKGludCB5ID0gMDsgeSA8IGltYWdlU2l6ZS5oZWlnaHQoKTsgKyt5KSB7CisgICAg
ICAgIGlmIChzdGF0aWNfY2FzdDx1bnNpZ25lZD4oYnVmZmVyU2l6ZS53aWR0aCgpICogYnVmZmVy
U2l6ZS5oZWlnaHQoKSAqIDQpID09IHBpeGVsQXJyYXlMZW5ndGgpIHsgLy8gc2FuaXR5IGNoZWNr
CisgICAgICAgICAgICBmb3IgKGludCB5ID0gMDsgeSA8IGJ1ZmZlclNpemUuaGVpZ2h0KCk7ICsr
eSkgewogICAgICAgICAgICAgICAgIGludCBzdGFydFggPSAtMTsKLSAgICAgICAgICAgICAgICBm
b3IgKGludCB4ID0gMDsgeCA8IGltYWdlU2l6ZS53aWR0aCgpOyArK3gsIHBpeGVsQXJyYXlPZmZz
ZXQgKz0gNCkgeworICAgICAgICAgICAgICAgIGZvciAoaW50IHggPSAwOyB4IDwgYnVmZmVyU2l6
ZS53aWR0aCgpOyArK3gsIHBpeGVsQXJyYXlPZmZzZXQgKz0gNCkgewogICAgICAgICAgICAgICAg
ICAgICB1aW50OF90IGFscGhhID0gcGl4ZWxBcnJheS0+aXRlbShwaXhlbEFycmF5T2Zmc2V0KTsK
ICAgICAgICAgICAgICAgICAgICAgYm9vbCBhbHBoYUFib3ZlVGhyZXNob2xkID0gYWxwaGEgPiBh
bHBoYVBpeGVsVGhyZXNob2xkOwogICAgICAgICAgICAgICAgICAgICBpZiAoc3RhcnRYID09IC0x
ICYmIGFscGhhQWJvdmVUaHJlc2hvbGQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0
WCA9IHg7Ci0gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoc3RhcnRYICE9IC0xICYmICgh
YWxwaGFBYm92ZVRocmVzaG9sZCB8fCB4ID09IGltYWdlU2l6ZS53aWR0aCgpIC0gMSkpIHsKLSAg
ICAgICAgICAgICAgICAgICAgICAgIGludGVydmFscy0+YXBwZW5kSW50ZXJ2YWwoeSwgc3RhcnRY
LCB4KTsKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChzdGFydFggIT0gLTEgJiYgKCFh
bHBoYUFib3ZlVGhyZXNob2xkIHx8IHggPT0gYnVmZmVyU2l6ZS53aWR0aCgpIC0gMSkpIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIGludGVydmFscy0+YXBwZW5kSW50ZXJ2YWwoeSArIHRvUmVj
dC55KCksIHN0YXJ0WCArIHRvUmVjdC54KCksIHggKyB0b1JlY3QueCgpKTsKICAgICAgICAgICAg
ICAgICAgICAgICAgIHN0YXJ0WCA9IC0xOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICAgICAgfQpAQCAtMjg4LDcgKzI4OCw3IEBAIFBhc3NPd25QdHI8U2hhcGU+IFNoYXBlOjpj
cmVhdGVSYXN0ZXJTaGFwZShjb25zdCBTdHlsZUltYWdlJiBzdHlsZUltYWdlLCBmbG9hdCB0CiAg
ICAgICAgIH0KICAgICB9CiAKLSAgICBPd25QdHI8UmFzdGVyU2hhcGU+IHJhc3RlclNoYXBlID0g
YWRvcHRQdHIobmV3IFJhc3RlclNoYXBlKGludGVydmFscy5yZWxlYXNlKCksIGltYWdlU2l6ZSkp
OworICAgIE93blB0cjxSYXN0ZXJTaGFwZT4gcmFzdGVyU2hhcGUgPSBhZG9wdFB0cihuZXcgUmFz
dGVyU2hhcGUoaW50ZXJ2YWxzLnJlbGVhc2UoKSwgcmFzdGVyU2l6ZSkpOwogICAgIHJhc3RlclNo
YXBlLT5tX3dyaXRpbmdNb2RlID0gd3JpdGluZ01vZGU7CiAgICAgcmFzdGVyU2hhcGUtPm1fbWFy
Z2luID0gZmxvYXRWYWx1ZUZvckxlbmd0aChtYXJnaW4sIDApOwogICAgIHJhc3RlclNoYXBlLT5t
X3BhZGRpbmcgPSBmbG9hdFZhbHVlRm9yTGVuZ3RoKHBhZGRpbmcsIDApOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZS5oIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3NoYXBlcy9TaGFwZS5oCmluZGV4IDQ0YWU2MjQuLmFiNzFkNTUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zaGFwZXMvU2hhcGUuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVzL1NoYXBlLmgKQEAgLTY4LDcgKzY4LDcgQEAgcHVibGlj
OgogICAgIH07CiAKICAgICBzdGF0aWMgUGFzc093blB0cjxTaGFwZT4gY3JlYXRlU2hhcGUoY29u
c3QgQmFzaWNTaGFwZSosIGNvbnN0IExheW91dFNpemUmIGxvZ2ljYWxCb3hTaXplLCBXcml0aW5n
TW9kZSwgTGVuZ3RoIG1hcmdpbiwgTGVuZ3RoIHBhZGRpbmcpOwotICAgIHN0YXRpYyBQYXNzT3du
UHRyPFNoYXBlPiBjcmVhdGVSYXN0ZXJTaGFwZShjb25zdCBTdHlsZUltYWdlJiwgZmxvYXQgdGhy
ZXNob2xkLCBjb25zdCBMYXlvdXRTaXplJiBsb2dpY2FsQm94U2l6ZSwgV3JpdGluZ01vZGUsIExl
bmd0aCBtYXJnaW4sIExlbmd0aCBwYWRkaW5nKTsKKyAgICBzdGF0aWMgUGFzc093blB0cjxTaGFw
ZT4gY3JlYXRlUmFzdGVyU2hhcGUoY29uc3QgU3R5bGVJbWFnZSYsIGZsb2F0IHRocmVzaG9sZCwg
Y29uc3QgTGF5b3V0UmVjdCYgaW1hZ2VSZWN0LCBjb25zdCBMYXlvdXRTaXplJiBsb2dpY2FsQm94
U2l6ZSwgV3JpdGluZ01vZGUsIExlbmd0aCBtYXJnaW4sIExlbmd0aCBwYWRkaW5nKTsKICAgICBz
dGF0aWMgUGFzc093blB0cjxTaGFwZT4gY3JlYXRlTGF5b3V0Qm94U2hhcGUoY29uc3QgUm91bmRl
ZFJlY3QmLCBXcml0aW5nTW9kZSwgTGVuZ3RoIG1hcmdpbiwgTGVuZ3RoIHBhZGRpbmcpOwogCiAg
ICAgdmlydHVhbCB+U2hhcGUoKSB7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9zaGFwZXMvU2hhcGVJbmZvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zaGFw
ZXMvU2hhcGVJbmZvLmNwcAppbmRleCBlNzZkZjZhLi41ZTJhZjkyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVzL1NoYXBlSW5mby5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZUluZm8uY3BwCkBAIC0zNSw2ICszNSw3IEBACiAj
aW5jbHVkZSAiTGVuZ3RoRnVuY3Rpb25zLmgiCiAjaW5jbHVkZSAiUmVuZGVyQmxvY2suaCIKICNp
bmNsdWRlICJSZW5kZXJCb3guaCIKKyNpbmNsdWRlICJSZW5kZXJJbWFnZS5oIgogI2luY2x1ZGUg
IlJlbmRlclJlZ2lvbi5oIgogI2luY2x1ZGUgIlJlbmRlclN0eWxlLmgiCiAjaW5jbHVkZSAiU2hh
cGUuaCIKQEAgLTU0LDYgKzU1LDE4IEBAIGJvb2wgY2hlY2tTaGFwZUltYWdlT3JpZ2luKERvY3Vt
ZW50JiBkb2N1bWVudCwgQ2FjaGVkSW1hZ2UmIGNhY2hlZEltYWdlKQogICAgIHJldHVybiBmYWxz
ZTsKIH0KIAorc3RhdGljIExheW91dFJlY3QgZ2V0U2hhcGVJbWFnZVJlY3QoY29uc3QgU3R5bGVJ
bWFnZSYgc3R5bGVJbWFnZSwgY29uc3QgUmVuZGVyQm94JiByZW5kZXJCb3gpCit7CisgICAgaWYg
KHJlbmRlckJveC5pc1JlbmRlckltYWdlKCkpIHsKKyAgICAgICAgY29uc3QgUmVuZGVySW1hZ2Um
IHJlbmRlckltYWdlID0gKnRvUmVuZGVySW1hZ2UoJnJlbmRlckJveCk7CisgICAgICAgIHJldHVy
biByZW5kZXJJbWFnZS5yZXBsYWNlZENvbnRlbnRSZWN0KHJlbmRlckJveC5pbnRyaW5zaWNTaXpl
KCkpOworICAgIH0KKworICAgIEFTU0VSVChzdHlsZUltYWdlLmNhY2hlZEltYWdlKCkpOworICAg
IEFTU0VSVChzdHlsZUltYWdlLmNhY2hlZEltYWdlKCktPmhhc0ltYWdlKCkpOworICAgIHJldHVy
biBMYXlvdXRSZWN0KExheW91dFBvaW50KCksIHN0eWxlSW1hZ2UuY2FjaGVkSW1hZ2UoKS0+aW1h
Z2UoKS0+c2l6ZSgpKTsKK30KKwogdGVtcGxhdGU8Y2xhc3MgUmVuZGVyVHlwZT4KIGNvbnN0IFNo
YXBlJiBTaGFwZUluZm88UmVuZGVyVHlwZT46OmNvbXB1dGVkU2hhcGUoKSBjb25zdAogewpAQCAt
NzIsMTAgKzg1LDEyIEBAIGNvbnN0IFNoYXBlJiBTaGFwZUluZm88UmVuZGVyVHlwZT46OmNvbXB1
dGVkU2hhcGUoKSBjb25zdAogICAgICAgICBBU1NFUlQoc2hhcGVWYWx1ZS0+c2hhcGUoKSk7CiAg
ICAgICAgIG1fc2hhcGUgPSBTaGFwZTo6Y3JlYXRlU2hhcGUoc2hhcGVWYWx1ZS0+c2hhcGUoKSwg
bV9zaGFwZUxvZ2ljYWxTaXplLCB3cml0aW5nTW9kZSwgbWFyZ2luLCBwYWRkaW5nKTsKICAgICAg
ICAgYnJlYWs7Ci0gICAgY2FzZSBTaGFwZVZhbHVlOjpJbWFnZToKKyAgICBjYXNlIFNoYXBlVmFs
dWU6OkltYWdlOiB7CiAgICAgICAgIEFTU0VSVChzaGFwZVZhbHVlLT5pbWFnZSgpKTsKLSAgICAg
ICAgbV9zaGFwZSA9IFNoYXBlOjpjcmVhdGVSYXN0ZXJTaGFwZSgqKHNoYXBlVmFsdWUtPmltYWdl
KCkpLCBzaGFwZUltYWdlVGhyZXNob2xkLCBtX3NoYXBlTG9naWNhbFNpemUsIHdyaXRpbmdNb2Rl
LCBtYXJnaW4sIHBhZGRpbmcpOworICAgICAgICBjb25zdCBTdHlsZUltYWdlJiBzdHlsZUltYWdl
ID0gKihzaGFwZVZhbHVlLT5pbWFnZSgpKTsKKyAgICAgICAgbV9zaGFwZSA9IFNoYXBlOjpjcmVh
dGVSYXN0ZXJTaGFwZShzdHlsZUltYWdlLCBzaGFwZUltYWdlVGhyZXNob2xkLCBnZXRTaGFwZUlt
YWdlUmVjdChzdHlsZUltYWdlLCBtX3JlbmRlcmVyKSwgbV9zaGFwZUxvZ2ljYWxTaXplLCB3cml0
aW5nTW9kZSwgbWFyZ2luLCBwYWRkaW5nKTsKICAgICAgICAgYnJlYWs7CisgICAgfQogICAgIGNh
c2UgU2hhcGVWYWx1ZTo6Qm94OiB7CiAgICAgICAgIGNvbnN0IFJvdW5kZWRSZWN0JiBzaGFwZVJl
Y3QgPSBtX3JlbmRlcmVyLnN0eWxlKCkuZ2V0Um91bmRlZEJvcmRlckZvcihMYXlvdXRSZWN0KExh
eW91dFBvaW50KCksIG1fc2hhcGVMb2dpY2FsU2l6ZSksICYobV9yZW5kZXJlci52aWV3KCkpKTsK
ICAgICAgICAgbV9zaGFwZSA9IFNoYXBlOjpjcmVhdGVMYXlvdXRCb3hTaGFwZShzaGFwZVJlY3Qs
IHdyaXRpbmdNb2RlLCBtYXJnaW4sIHBhZGRpbmcpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>