<?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>41463</bug_id>
          
          <creation_ts>2010-07-01 07:17:17 -0700</creation_ts>
          <short_desc>[GTK] Stop using GdkRegion in 3.x mode</short_desc>
          <delta_ts>2010-07-01 16:58:50 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Xan Lopez">xan.lopez</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>245328</commentid>
    <comment_count>0</comment_count>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2010-07-01 07:17:17 -0700</bug_when>
    <thetext>GdkRegion was completely removed in GTK+ 3.x, and GdkRectangle just made an alias for a cairo rectangle. This patch moves us unconditionally to cairo_region_t when possible, and when that&apos;s not possible (because there&apos;s interaction with GTK+), creates a branch using the cairo API.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245331</commentid>
    <comment_count>1</comment_count>
      <attachid>60245</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2010-07-01 07:19:36 -0700</bug_when>
    <thetext>Created attachment 60245
gdkregion.diff</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245333</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-07-01 07:20:32 -0700</bug_when>
    <thetext>Attachment 60245 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--no-squash&apos;]&quot; exit_code: 1
WebCore/platform/graphics/IntRect.h:54:  cairo_rectangle_int_t is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
WebCore/platform/gtk/RenderThemeGtk.h:40:  cairo_rectangle_int_t is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
WebCore/platform/graphics/gtk/FontGtk.cpp:187:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
WebCore/platform/graphics/gtk/FontGtk.cpp:187:  n_rects is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
WebCore/platform/graphics/gtk/FontGtk.cpp:188:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
WebCore/platform/graphics/gtk/FontGtk.cpp:189:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
WebCore/platform/graphics/gtk/FontGtk.cpp:191:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
WebCore/platform/graphics/gtk/FontGtk.cpp:221:  Use 0 instead of NULL.  [readability/null] [5]
Total errors found: 8 in 10 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245529</commentid>
    <comment_count>3</comment_count>
      <attachid>60282</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2010-07-01 13:53:11 -0700</bug_when>
    <thetext>Created attachment 60282
gdkregion.diff

This version does not unify some code paths, so that we don&apos;t have to depend on a pretty new cairo version.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245533</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-07-01 13:55:36 -0700</bug_when>
    <thetext>Attachment 60282 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--no-squash&apos;]&quot; exit_code: 1
WebCore/platform/graphics/IntRect.h:54:  cairo_rectangle_int_t is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
WebCore/platform/gtk/RenderThemeGtk.h:40:  cairo_rectangle_int_t is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
WebCore/platform/graphics/gtk/FontGtk.cpp:188:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
WebCore/platform/graphics/gtk/FontGtk.cpp:188:  n_rects is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
WebCore/platform/graphics/gtk/FontGtk.cpp:189:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
WebCore/platform/graphics/gtk/FontGtk.cpp:190:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
WebCore/platform/graphics/gtk/FontGtk.cpp:192:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
WebCore/platform/graphics/gtk/FontGtk.cpp:226:  Use 0 instead of NULL.  [readability/null] [5]
Total errors found: 8 in 10 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245544</commentid>
    <comment_count>5</comment_count>
      <attachid>60286</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2010-07-01 14:23:38 -0700</bug_when>
    <thetext>Created attachment 60286
gdkregion.diff

Third time is the charm.

I&apos;m not friends with EWS anymore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245548</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-07-01 14:25:41 -0700</bug_when>
    <thetext>Attachment 60286 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--no-squash&apos;]&quot; exit_code: 1
WebCore/platform/graphics/IntRect.h:54:  cairo_rectangle_int_t is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
WebCore/platform/gtk/RenderThemeGtk.h:40:  cairo_rectangle_int_t is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
WebCore/platform/graphics/gtk/FontGtk.cpp:185:  cairo_region_shrink is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Total errors found: 3 in 10 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245639</commentid>
    <comment_count>7</comment_count>
      <attachid>60286</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2010-07-01 16:33:45 -0700</bug_when>
    <thetext>Comment on attachment 60286
gdkregion.diff

WebCore/platform/graphics/gtk/FontGtk.cpp:188
 +      /* clear region */
Fix this to be a real WebKit comment ;D

You are on your way to destruction, make your time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245660</commentid>
    <comment_count>8</comment_count>
      <attachid>60286</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2010-07-01 16:58:39 -0700</bug_when>
    <thetext>Comment on attachment 60286
gdkregion.diff

Landed in r62329.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>245661</commentid>
    <comment_count>9</comment_count>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2010-07-01 16:58:50 -0700</bug_when>
    <thetext>Kabloom.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60245</attachid>
            <date>2010-07-01 07:19:36 -0700</date>
            <delta_ts>2010-07-01 13:53:31 -0700</delta_ts>
            <desc>gdkregion.diff</desc>
            <filename>gdkregion.diff</filename>
            <type>text/plain</type>
            <size>12624</size>
            <attacher name="Xan Lopez">xan.lopez</attacher>
            
              <data encoding="base64">RnJvbSA0ZGUzNTE2YjRhNTFlODMxMWJmODQyNjM1NWY5M2VlMjA0MzI4ZmM1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBYYW4gTG9wZXogPHhsb3BlekBpZ2FsaWEuY29tPgpEYXRlOiBU
aHUsIDEgSnVsIDIwMTAgMTY6MTg6MjYgKzAyMDAKU3ViamVjdDogW1BBVENIXSBXZWJDb3JlOgoK
MjAxMC0wNy0wMSAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKICAgICAgICBbR1RLXSBTdG9wIHVzaW5nIEdka1JlZ2lv
biBpbiAzLnggbW9kZQogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00MTQ2MwoKICAgICAgICBNYWtlIHVzIGNvbXBpbGUgd2l0aG91dCB1c2luZyBHZGtSZWdp
b24sIHNpbmNlIGl0J3MgZ29uZSBmcm9tIEdUSysKICAgICAgICAzLnguCgogICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvSW50UmVjdC5oOgogICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2Fp
cm8vR3JhcGhpY3NDb250ZXh0Q2Fpcm8uY3BwOgogICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHQ6OmRyYXdGb2N1c1JpbmcpOgogICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL0Zv
bnRHdGsuY3BwOgogICAgICAgIChXZWJDb3JlOjpjYWlyb19yZWdpb25fc2hyaW5rKToKICAgICAg
ICAoV2ViQ29yZTo6Rm9udDo6ZHJhd0NvbXBsZXhUZXh0KToKICAgICAgICAqIHBsYXRmb3JtL2d0
ay9HdGtQbHVnaW5XaWRnZXQuY3BwOgogICAgICAgIChXZWJDb3JlOjpHdGtQbHVnaW5XaWRnZXQ6
OnBhaW50KToKICAgICAgICAqIHBsYXRmb3JtL2d0ay9SZW5kZXJUaGVtZUd0ay5oOgogICAgICAg
ICogcGxhdGZvcm0vZ3RrL1Njcm9sbGJhckd0ay5jcHA6CiAgICAgICAgKFNjcm9sbGJhckd0azo6
cGFpbnQpOgoKV2ViS2l0L2d0azoKCjIwMTAtMDctMDEgIFhhbiBMb3BleiAgPHhsb3BlekBpZ2Fs
aWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiAgICAgICAgW0dU
S10gU3RvcCB1c2luZyBHZGtSZWdpb24gaW4gMy54IG1vZGUKICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDE0NjMKCiAgICAgICAgTWFrZSB1cyBjb21waWxl
IHdpdGhvdXQgdXNpbmcgR2RrUmVnaW9uLCBzaW5jZSBpdCdzIGdvbmUgZnJvbSBHVEsrCiAgICAg
ICAgMy54LgoKICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEd0ay5jcHA6CiAg
ICAgICAgKFdlYktpdDo6Q2hyb21lQ2xpZW50OjpzY3JvbGwpOgogICAgICAgICogd2Via2l0L3dl
YmtpdHdlYnZpZXcuY3BwOgogICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfZXhwb3NlX2V2ZW50KToK
LS0tCiBXZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgMjIgKysrKysrKysrKysrKysrCiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ludFJlY3Qu
aCAgICAgICAgICAgICAgICB8ICAgIDUgKysrCiAuLi4vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3ND
b250ZXh0Q2Fpcm8uY3BwICAgICAgICB8ICAgIDkgKysrLS0tCiBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2d0ay9Gb250R3RrLmNwcCAgICAgICAgICB8ICAgMjggKysrKysrKysrKysrKysrKyst
LQogV2ViQ29yZS9wbGF0Zm9ybS9ndGsvR3RrUGx1Z2luV2lkZ2V0LmNwcCAgICAgICAgICAgfCAg
ICA4ICsrKysrCiBXZWJDb3JlL3BsYXRmb3JtL2d0ay9SZW5kZXJUaGVtZUd0ay5oICAgICAgICAg
ICAgICB8ICAgIDUgKysrCiBXZWJDb3JlL3BsYXRmb3JtL2d0ay9TY3JvbGxiYXJHdGsuY3BwICAg
ICAgICAgICAgICB8ICAgIDggKysrKysKIFdlYktpdC9ndGsvQ2hhbmdlTG9nICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgICAxNSArKysrKysrKysrCiBXZWJLaXQvZ3RrL1dlYkNvcmVT
dXBwb3J0L0Nocm9tZUNsaWVudEd0ay5jcHAgICAgICB8ICAgMTYgKysrKysrKysrKysKIFdlYktp
dC9ndGsvd2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwICAgICAgICAgICAgICAgIHwgICAgNiArKyst
CiAxMCBmaWxlcyBjaGFuZ2VkLCAxMTMgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGM2
YTk4OTkuLjdiNmM2Y2QgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNv
cmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTAtMDctMDEgIFhhbiBMb3BleiAgPHhs
b3BlekBpZ2FsaWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFtHVEtdIFN0b3AgdXNpbmcgR2RrUmVnaW9uIGluIDMueCBtb2RlCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MTQ2MworCisgICAgICAg
IE1ha2UgdXMgY29tcGlsZSB3aXRob3V0IHVzaW5nIEdka1JlZ2lvbiwgc2luY2UgaXQncyBnb25l
IGZyb20gR1RLKworICAgICAgICAzLnguCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9J
bnRSZWN0Lmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250
ZXh0Q2Fpcm8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0OjpkcmF3Rm9j
dXNSaW5nKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9ndGsvRm9udEd0ay5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpjYWlyb19yZWdpb25fc2hyaW5rKToKKyAgICAgICAgKFdlYkNvcmU6
OkZvbnQ6OmRyYXdDb21wbGV4VGV4dCk6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL0d0a1BsdWdp
bldpZGdldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHdGtQbHVnaW5XaWRnZXQ6OnBhaW50KToK
KyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvUmVuZGVyVGhlbWVHdGsuaDoKKyAgICAgICAgKiBwbGF0
Zm9ybS9ndGsvU2Nyb2xsYmFyR3RrLmNwcDoKKyAgICAgICAgKFNjcm9sbGJhckd0azo6cGFpbnQp
OgorCiAyMDEwLTA3LTAxICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCmRpZmYgLS1naXQgYS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0ludFJlY3QuaCBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW50
UmVjdC5oCmluZGV4IGFkOTBkZDkuLmM1OTkwZWYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvSW50UmVjdC5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW50
UmVjdC5oCkBAIC00OCw3ICs0OCwxMiBAQCBRVF9CRUdJTl9OQU1FU1BBQ0UKIGNsYXNzIFFSZWN0
OwogUVRfRU5EX05BTUVTUEFDRQogI2VsaWYgUExBVEZPUk0oR1RLKQorI2lmZGVmIEdUS19BUElf
VkVSU0lPTl8yCiB0eXBlZGVmIHN0cnVjdCBfR2RrUmVjdGFuZ2xlIEdka1JlY3RhbmdsZTsKKyNl
bHNlCit0eXBlZGVmIHN0cnVjdCBfY2Fpcm9fcmVjdGFuZ2xlX2ludCBjYWlyb19yZWN0YW5nbGVf
aW50X3Q7Cit0eXBlZGVmIGNhaXJvX3JlY3RhbmdsZV9pbnRfdCBHZGtSZWN0YW5nbGU7CisjZW5k
aWYKICNlbGlmIFBMQVRGT1JNKEhBSUtVKQogY2xhc3MgQlJlY3Q7CiAjZW5kaWYKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250ZXh0Q2Fpcm8u
Y3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRDYWly
by5jcHAKaW5kZXggZGMzMjMxNy4uYmFkNzAwMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRDYWlyby5jcHAKKysrIGIvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRDYWlyby5jcHAKQEAgLTY0Mywx
MyArNjQzLDE0IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3Rm9jdXNSaW5nKGNvbnN0IFZl
Y3RvcjxJbnRSZWN0PiYgcmVjdHMsIGludCB3aWR0aCwgaW50CiAgICAgY2Fpcm9fbmV3X3BhdGgo
Y3IpOwogCiAjaWYgUExBVEZPUk0oR1RLKQotICAgIEdka1JlZ2lvbiogcmVnID0gZ2RrX3JlZ2lv
bl9uZXcoKTsKKyAgICBjYWlyb19yZWdpb25fdCogcmVnID0gY2Fpcm9fcmVnaW9uX2NyZWF0ZSgp
OworCiAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHJlY3RDb3VudDsgaSsrKSB7Ci0gICAg
ICAgIEdka1JlY3RhbmdsZSByZWN0ID0gcmVjdHNbaV07Ci0gICAgICAgIGdka19yZWdpb25fdW5p
b25fd2l0aF9yZWN0KHJlZywgJnJlY3QpOworICAgICAgICBjYWlyb19yZWN0YW5nbGVfaW50X3Qg
cmVjdCA9IHJlY3RzW2ldOworICAgICAgICBjYWlyb19yZWdpb25fdW5pb25fcmVjdGFuZ2xlKHJl
ZywgJnJlY3QpOwogICAgIH0KICAgICBnZGtfY2Fpcm9fcmVnaW9uKGNyLCByZWcpOwotICAgIGdk
a19yZWdpb25fZGVzdHJveShyZWcpOworICAgIGNhaXJvX3JlZ2lvbl9kZXN0cm95KHJlZyk7CiAK
ICAgICBzZXRDb2xvcihjciwgY29sb3IpOwogICAgIGNhaXJvX3NldF9saW5lX3dpZHRoKGNyLCAy
LjBmKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL0ZvbnRHdGsu
Y3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvRm9udEd0ay5jcHAKaW5kZXggZmFl
ODRjYi4uZTVmM2YxNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsv
Rm9udEd0ay5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvRm9udEd0ay5j
cHAKQEAgLTE4MSw2ICsxODEsMjggQEAgYm9vbCBGb250OjpjYW5SZXR1cm5GYWxsYmFja0ZvbnRz
Rm9yQ29tcGxleFRleHQoKQogICAgIHJldHVybiBmYWxzZTsKIH0KIAorc3RhdGljIHZvaWQKK2Nh
aXJvX3JlZ2lvbl9zaHJpbmsoY2Fpcm9fcmVnaW9uX3QgKnJlZ2lvbiwgaW50IGR4LCBpbnQgZHkp
Cit7CisgIGludCBuX3JlY3RzID0gY2Fpcm9fcmVnaW9uX251bV9yZWN0YW5nbGVzKHJlZ2lvbik7
CisgIC8qIGNsZWFyIHJlZ2lvbiAqLworICBjYWlyb19yZWdpb25fc3VidHJhY3QocmVnaW9uLCBy
ZWdpb24pOworCisgIGZvciAoaW50IGkgPSAwOyBpIDwgbl9yZWN0czsgaSsrKSB7CisgICAgICBj
YWlyb19yZWN0YW5nbGVfaW50X3QgcmVjdDsKKyAgICAgIGNhaXJvX3JlZ2lvbl9nZXRfcmVjdGFu
Z2xlKHJlZ2lvbiwgaSwgJnJlY3QpOworCisgICAgICBpZiAocmVjdC53aWR0aCA8PSAyICogZHgg
fHwgcmVjdC5oZWlnaHQgPD0gMiAqIGR5KQorICAgICAgICBjb250aW51ZTsKKworICAgICAgcmVj
dC54ICs9IGR4OworICAgICAgcmVjdC55ICs9IGR5OworICAgICAgcmVjdC53aWR0aCAtPSAyICog
ZHg7CisgICAgICByZWN0LmhlaWdodCAtPSAyICogZHk7CisgICAgICBjYWlyb19yZWdpb25fdW5p
b25fcmVjdGFuZ2xlKHJlZ2lvbiwgJnJlY3QpOworICAgIH0KK30KKwogdm9pZCBGb250OjpkcmF3
Q29tcGxleFRleHQoR3JhcGhpY3NDb250ZXh0KiBjb250ZXh0LCBjb25zdCBUZXh0UnVuJiBydW4s
IGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50LCBpbnQgZnJvbSwgaW50IHRvKSBjb25zdAogewogICAg
IGNhaXJvX3QqIGNyID0gY29udGV4dC0+cGxhdGZvcm1Db250ZXh0KCk7CkBAIC0xOTYsMTQgKzIx
OCwxNCBAQCB2b2lkIEZvbnQ6OmRyYXdDb21wbGV4VGV4dChHcmFwaGljc0NvbnRleHQqIGNvbnRl
eHQsIGNvbnN0IFRleHRSdW4mIHJ1biwgY29uc3QgRgogICAgIC8vIE91ciBsYXlvdXRzIGFyZSBz
aW5nbGUgbGluZQogICAgIFBhbmdvTGF5b3V0TGluZSogbGF5b3V0TGluZSA9IHBhbmdvX2xheW91
dF9nZXRfbGluZV9yZWFkb25seShsYXlvdXQsIDApOwogCi0gICAgR2RrUmVnaW9uKiBwYXJ0aWFs
UmVnaW9uID0gTlVMTDsKKyAgICBjYWlyb19yZWdpb25fdCogcGFydGlhbFJlZ2lvbiA9IE5VTEw7
CiAgICAgaWYgKHRvIC0gZnJvbSAhPSBydW4ubGVuZ3RoKCkpIHsKICAgICAgICAgLy8gQ2xpcCB0
aGUgcmVnaW9uIG9mIHRoZSBydW4gdG8gYmUgcmVuZGVyZWQKICAgICAgICAgY2hhciogc3RhcnQg
PSBnX3V0Zjhfb2Zmc2V0X3RvX3BvaW50ZXIodXRmOCwgZnJvbSk7CiAgICAgICAgIGNoYXIqIGVu
ZCA9IGdfdXRmOF9vZmZzZXRfdG9fcG9pbnRlcihzdGFydCwgdG8gLSBmcm9tKTsKICAgICAgICAg
aW50IHJhbmdlc1tdID0ge3N0YXJ0IC0gdXRmOCwgZW5kIC0gdXRmOH07CiAgICAgICAgIHBhcnRp
YWxSZWdpb24gPSBnZGtfcGFuZ29fbGF5b3V0X2xpbmVfZ2V0X2NsaXBfcmVnaW9uKGxheW91dExp
bmUsIDAsIDAsIHJhbmdlcywgMSk7Ci0gICAgICAgIGdka19yZWdpb25fc2hyaW5rKHBhcnRpYWxS
ZWdpb24sIDAsIC1waXhlbFNpemUoKSk7CisgICAgICAgIGNhaXJvX3JlZ2lvbl9zaHJpbmsocGFy
dGlhbFJlZ2lvbiwgMCwgLXBpeGVsU2l6ZSgpKTsKICAgICB9CiAKICAgICBDb2xvciBmaWxsQ29s
b3IgPSBjb250ZXh0LT5maWxsQ29sb3IoKTsKQEAgLTI2NSw3ICsyODcsNyBAQCB2b2lkIEZvbnQ6
OmRyYXdDb21wbGV4VGV4dChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IFRleHRSdW4m
IHJ1biwgY29uc3QgRgogICAgIGNhaXJvX25ld19wYXRoKGNyKTsKIAogICAgIGlmIChwYXJ0aWFs
UmVnaW9uKQotICAgICAgICBnZGtfcmVnaW9uX2Rlc3Ryb3kocGFydGlhbFJlZ2lvbik7CisgICAg
ICAgIGNhaXJvX3JlZ2lvbl9kZXN0cm95KHBhcnRpYWxSZWdpb24pOwogCiAgICAgZ19mcmVlKHV0
ZjgpOwogICAgIGdfb2JqZWN0X3VucmVmKGxheW91dCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9HdGtQbHVnaW5XaWRnZXQuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvR3Rr
UGx1Z2luV2lkZ2V0LmNwcAppbmRleCA5NDM4MmYxLi4zMzFmNjBmIDEwMDY0NAotLS0gYS9XZWJD
b3JlL3BsYXRmb3JtL2d0ay9HdGtQbHVnaW5XaWRnZXQuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL0d0a1BsdWdpbldpZGdldC5jcHAKQEAgLTg3LDcgKzg3LDExIEBAIHZvaWQgR3RrUGx1
Z2luV2lkZ2V0OjpwYWludChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEludFJlY3Qm
IHJlY3QpCiAgICAgZXZlbnQtPmV4cG9zZS5hcmVhLnggPSBsb2MueCgpOwogICAgIGV2ZW50LT5l
eHBvc2UuYXJlYS55ID0gbG9jLnkoKTsKIAorI2lmZGVmIEdUS19BUElfVkVSU0lPTl8yCiAgICAg
ZXZlbnQtPmV4cG9zZS5yZWdpb24gPSBnZGtfcmVnaW9uX3JlY3RhbmdsZSgmZXZlbnQtPmV4cG9z
ZS5hcmVhKTsKKyNlbHNlCisgICAgZXZlbnQtPmV4cG9zZS5yZWdpb24gPSBjYWlyb19yZWdpb25f
Y3JlYXRlX3JlY3RhbmdsZSgmZXZlbnQtPmV4cG9zZS5hcmVhKTsKKyNlbmRpZgogCiAgICAgLyoK
ICAgICAgKiBUaGlzIHdpbGwgYmUgdW5yZWYnZWQgYnkgZ2RrX2V2ZW50X2ZyZWUuCkBAIC05Nyw3
ICsxMDEsMTEgQEAgdm9pZCBHdGtQbHVnaW5XaWRnZXQ6OnBhaW50KEdyYXBoaWNzQ29udGV4dCog
Y29udGV4dCwgY29uc3QgSW50UmVjdCYgcmVjdCkKICAgICAvKgogICAgICAqIElmIHdlIGFyZSBn
b2luZyB0byBwYWludCBkbyB0aGUgdHJhbnNsYXRpb24gYW5kIEd0a0FsbG9jYXRpb24gbWFuaXB1
bGF0aW9uLgogICAgICAqLworI2lmZGVmIEdUS19BUElfVkVSU0lPTl8yCiAgICAgaWYgKCFnZGtf
cmVnaW9uX2VtcHR5KGV2ZW50LT5leHBvc2UucmVnaW9uKSkKKyNlbHNlCisgICAgaWYgKCFjYWly
b19yZWdpb25faXNfZW1wdHkoZXZlbnQtPmV4cG9zZS5yZWdpb24pKQorI2VuZGlmCiAgICAgICAg
IGd0a193aWRnZXRfc2VuZF9leHBvc2Uod2lkZ2V0LCBldmVudCk7CiAKICAgICBnZGtfZXZlbnRf
ZnJlZShldmVudCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9SZW5kZXJUaGVt
ZUd0ay5oIGIvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvUmVuZGVyVGhlbWVHdGsuaAppbmRleCAzZjAy
ZjBlLi43MTMzOGQ0IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9SZW5kZXJUaGVt
ZUd0ay5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrLmgKQEAgLTM0
LDcgKzM0LDEyIEBACiB0eXBlZGVmIHN0cnVjdCBfR3RrV2lkZ2V0IEd0a1dpZGdldDsKIHR5cGVk
ZWYgc3RydWN0IF9HdGtTdHlsZSBHdGtTdHlsZTsKIHR5cGVkZWYgc3RydWN0IF9HdGtDb250YWlu
ZXIgR3RrQ29udGFpbmVyOworI2lmZGVmIEdUS19BUElfVkVSU0lPTl8yCiB0eXBlZGVmIHN0cnVj
dCBfR2RrUmVjdGFuZ2xlIEdka1JlY3RhbmdsZTsKKyNlbHNlCit0eXBlZGVmIHN0cnVjdCBfY2Fp
cm9fcmVjdGFuZ2xlX2ludCBjYWlyb19yZWN0YW5nbGVfaW50X3Q7Cit0eXBlZGVmIGNhaXJvX3Jl
Y3RhbmdsZV9pbnRfdCBHZGtSZWN0YW5nbGU7CisjZW5kaWYKIHR5cGVkZWYgc3RydWN0IF9HZGtE
cmF3YWJsZSBHZGtEcmF3YWJsZTsKIHR5cGVkZWYgc3RydWN0IF9HdGtCb3JkZXIgR3RrQm9yZGVy
OwogdHlwZWRlZiBzdHJ1Y3QgX0d0a1RoZW1lUGFydHMgR3RrVGhlbWVQYXJ0czsKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1Njcm9sbGJhckd0ay5jcHAgYi9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9TY3JvbGxiYXJHdGsuY3BwCmluZGV4IDVkYzRkZDYuLjAxMjU1YjcgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1Njcm9sbGJhckd0ay5jcHAKKysrIGIvV2ViQ29yZS9w
bGF0Zm9ybS9ndGsvU2Nyb2xsYmFyR3RrLmNwcApAQCAtMjM4LDcgKzIzOCwxMSBAQCB2b2lkIFNj
cm9sbGJhckd0azo6cGFpbnQoR3JhcGhpY3NDb250ZXh0KiBjb250ZXh0LCBjb25zdCBJbnRSZWN0
JiByZWN0KQogICAgIGV2ZW50LT5leHBvc2UuYXJlYS54ID0gbG9jLngoKTsKICAgICBldmVudC0+
ZXhwb3NlLmFyZWEueSA9IGxvYy55KCk7CiAKKyNpZmRlZiBHVEtfVkVSU0lPTl9BUElfMgogICAg
IGV2ZW50LT5leHBvc2UucmVnaW9uID0gZ2RrX3JlZ2lvbl9yZWN0YW5nbGUoJmV2ZW50LT5leHBv
c2UuYXJlYSk7CisjZWxzZQorICAgIGV2ZW50LT5leHBvc2UucmVnaW9uID0gY2Fpcm9fcmVnaW9u
X2NyZWF0ZV9yZWN0YW5nbGUoJmV2ZW50LT5leHBvc2UuYXJlYSk7CisjZW5kaWYKIAogICAgIC8q
CiAgICAgICogVGhpcyB3aWxsIGJlIHVucmVmJ2VkIGJ5IGdka19ldmVudF9mcmVlLgpAQCAtMjQ4
LDcgKzI1MiwxMSBAQCB2b2lkIFNjcm9sbGJhckd0azo6cGFpbnQoR3JhcGhpY3NDb250ZXh0KiBj
b250ZXh0LCBjb25zdCBJbnRSZWN0JiByZWN0KQogICAgIC8qCiAgICAgICogSWYgd2UgYXJlIGdv
aW5nIHRvIHBhaW50IGRvIHRoZSB0cmFuc2xhdGlvbiBhbmQgR3RrQWxsb2NhdGlvbiBtYW5pcHVs
YXRpb24uCiAgICAgICovCisjaWZkZWYgR1RLX1ZFUlNJT05fQVBJXzIKICAgICBpZiAoIWdka19y
ZWdpb25fZW1wdHkoZXZlbnQtPmV4cG9zZS5yZWdpb24pKQorI2Vsc2UKKyAgICBpZiAoIWNhaXJv
X3JlZ2lvbl9pc19lbXB0eShldmVudC0+ZXhwb3NlLnJlZ2lvbikpCisjZW5kaWYKICAgICAgICAg
Z3RrX3dpZGdldF9zZW5kX2V4cG9zZSh3aWRnZXQsIGV2ZW50KTsKIAogICAgIGdka19ldmVudF9m
cmVlKGV2ZW50KTsKZGlmZiAtLWdpdCBhL1dlYktpdC9ndGsvQ2hhbmdlTG9nIGIvV2ViS2l0L2d0
ay9DaGFuZ2VMb2cKaW5kZXggN2Q4Zjk0Ni4uN2Y5NmM4NyAxMDA2NDQKLS0tIGEvV2ViS2l0L2d0
ay9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAor
MjAxMC0wNy0wMSAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW0dUS10gU3RvcCB1c2luZyBHZGtS
ZWdpb24gaW4gMy54IG1vZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTQxNDYzCisKKyAgICAgICAgTWFrZSB1cyBjb21waWxlIHdpdGhvdXQgdXNpbmcg
R2RrUmVnaW9uLCBzaW5jZSBpdCdzIGdvbmUgZnJvbSBHVEsrCisgICAgICAgIDMueC4KKworICAg
ICAgICAqIFdlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEd0ay5jcHA6CisgICAgICAgIChXZWJL
aXQ6OkNocm9tZUNsaWVudDo6c2Nyb2xsKToKKyAgICAgICAgKiB3ZWJraXQvd2Via2l0d2Vidmll
dy5jcHA6CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfZXhwb3NlX2V2ZW50KToKKwogMjAxMC0w
Ni0zMCAgTWFydGluIFJvYmluc29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+CiAKICAgICAgICAg
VW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjYyMjI2LgpkaWZmIC0tZ2l0IGEvV2ViS2l0L2d0ay9X
ZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRHdGsuY3BwIGIvV2ViS2l0L2d0ay9XZWJDb3JlU3Vw
cG9ydC9DaHJvbWVDbGllbnRHdGsuY3BwCmluZGV4IGZlNWQ5ZWIuLmJiMGRiYzQgMTAwNjQ0Ci0t
LSBhL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50R3RrLmNwcAorKysgYi9X
ZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEd0ay5jcHAKQEAgLTM3Miw2ICsz
NzIsNyBAQCB2b2lkIENocm9tZUNsaWVudDo6c2Nyb2xsKGNvbnN0IEludFNpemUmIGRlbHRhLCBj
b25zdCBJbnRSZWN0JiByZWN0VG9TY3JvbGwsIGNvbgogICAgIHNvdXJjZVJlY3QueCAtPSBkZWx0
YS53aWR0aCgpOwogICAgIHNvdXJjZVJlY3QueSAtPSBkZWx0YS5oZWlnaHQoKTsKIAorI2lmZGVm
IEdUS19WRVJTSU9OX0FQSV8yCiAgICAgR2RrUmVnaW9uKiBpbnZhbGlkUmVnaW9uID0gZ2RrX3Jl
Z2lvbl9yZWN0YW5nbGUoJmFyZWEpOwogCiAgICAgaWYgKGdka19yZWN0YW5nbGVfaW50ZXJzZWN0
KCZhcmVhLCAmc291cmNlUmVjdCwgJm1vdmVSZWN0KSkgewpAQCAtMzg0LDYgKzM4NSwyMSBAQCB2
b2lkIENocm9tZUNsaWVudDo6c2Nyb2xsKGNvbnN0IEludFNpemUmIGRlbHRhLCBjb25zdCBJbnRS
ZWN0JiByZWN0VG9TY3JvbGwsIGNvbgogCiAgICAgZ2RrX3dpbmRvd19pbnZhbGlkYXRlX3JlZ2lv
bih3aW5kb3csIGludmFsaWRSZWdpb24sIEZBTFNFKTsKICAgICBnZGtfcmVnaW9uX2Rlc3Ryb3ko
aW52YWxpZFJlZ2lvbik7CisjZWxzZQorICAgIGNhaXJvX3JlZ2lvbl90KiBpbnZhbGlkUmVnaW9u
ID0gY2Fpcm9fcmVnaW9uX2NyZWF0ZV9yZWN0YW5nbGUoJmFyZWEpOworCisgICAgaWYgKGdka19y
ZWN0YW5nbGVfaW50ZXJzZWN0KCZhcmVhLCAmc291cmNlUmVjdCwgJm1vdmVSZWN0KSkgeworICAg
ICAgICBjYWlyb19yZWdpb25fdCogbW92ZVJlZ2lvbiA9IGNhaXJvX3JlZ2lvbl9jcmVhdGVfcmVj
dGFuZ2xlKCZtb3ZlUmVjdCk7CisgICAgICAgIGdka193aW5kb3dfbW92ZV9yZWdpb24od2luZG93
LCBtb3ZlUmVnaW9uLCBkZWx0YS53aWR0aCgpLCBkZWx0YS5oZWlnaHQoKSk7CisgICAgICAgIGNh
aXJvX3JlZ2lvbl90cmFuc2xhdGUobW92ZVJlZ2lvbiwgZGVsdGEud2lkdGgoKSwgZGVsdGEuaGVp
Z2h0KCkpOworICAgICAgICBjYWlyb19yZWdpb25fc3VidHJhY3QoaW52YWxpZFJlZ2lvbiwgbW92
ZVJlZ2lvbik7CisgICAgICAgIGNhaXJvX3JlZ2lvbl9kZXN0cm95KG1vdmVSZWdpb24pOworICAg
IH0KKworICAgIGdka193aW5kb3dfaW52YWxpZGF0ZV9yZWdpb24od2luZG93LCBpbnZhbGlkUmVn
aW9uLCBGQUxTRSk7CisgICAgY2Fpcm9fcmVnaW9uX2Rlc3Ryb3koaW52YWxpZFJlZ2lvbik7Cisj
ZW5kaWYKKwogfQogCiAvLyBGSVhNRTogdGhpcyBkb2VzIG5vdCB0YWtlIGludG8gYWNjb3VudCB0
aGUgV00gZGVjb3JhdGlvbnMKZGlmZiAtLWdpdCBhL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdl
YnZpZXcuY3BwIGIvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vidmlldy5jcHAKaW5kZXggY2Uy
YmJjNi4uYTlmMTg5MCAxMDA2NDQKLS0tIGEvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vidmll
dy5jcHAKKysrIGIvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vidmlldy5jcHAKQEAgLTUxNyw5
ICs1MTcsMTEgQEAgc3RhdGljIGdib29sZWFuIHdlYmtpdF93ZWJfdmlld19leHBvc2VfZXZlbnQo
R3RrV2lkZ2V0KiB3aWRnZXQsIEdka0V2ZW50RXhwb3NlKgogICAgICAgICBjYWlyb19kZXN0cm95
KGNyKTsKICAgICAgICAgY3R4LnNldEdka0V4cG9zZUV2ZW50KGV2ZW50KTsKIAotICAgICAgICBH
T3duUHRyPEdka1JlY3RhbmdsZT4gcmVjdHM7CiAgICAgICAgIGludCByZWN0Q291bnQ7Ci0gICAg
ICAgIGdka19yZWdpb25fZ2V0X3JlY3RhbmdsZXMoZXZlbnQtPnJlZ2lvbiwgJnJlY3RzLm91dFB0
cigpLCAmcmVjdENvdW50KTsKKyAgICAgICAgcmVjdENvdW50ID0gY2Fpcm9fcmVnaW9uX251bV9y
ZWN0YW5nbGVzKGV2ZW50LT5yZWdpb24pOworICAgICAgICBHT3duUHRyPEdka1JlY3RhbmdsZT4g
cmVjdHMoZ19uZXcoR2RrUmVjdGFuZ2xlLCByZWN0Q291bnQpKTsKKyAgICAgICAgZm9yIChpbnQg
aSA9IDA7IGkgPCByZWN0Q291bnQ7IGkrKykKKyAgICAgICAgICAgIGNhaXJvX3JlZ2lvbl9nZXRf
cmVjdGFuZ2xlKGV2ZW50LT5yZWdpb24sIGksIHJlY3RzLmdldCgpK2kpOwogCiAgICAgICAgIC8v
IEF2b2lkIHJlY3Vyc2luZyBpbnRvIHRoZSByZW5kZXIgdHJlZSBleGNlc3NpdmVseQogICAgICAg
ICBib29sIGNvYWxlc2NlID0gc2hvdWxkQ29hbGVzY2UoZXZlbnQtPmFyZWEsIHJlY3RzLmdldCgp
LCByZWN0Q291bnQpOwotLSAKMS42LjYuMQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60282</attachid>
            <date>2010-07-01 13:53:11 -0700</date>
            <delta_ts>2010-07-01 14:23:38 -0700</delta_ts>
            <desc>gdkregion.diff</desc>
            <filename>gdkregion.diff</filename>
            <type>text/plain</type>
            <size>12972</size>
            <attacher name="Xan Lopez">xan.lopez</attacher>
            
              <data encoding="base64">RnJvbSBjYzc4NGE4ZTIzMTAzZDI5MGIxODhlYWY1NWFiNjEyNTY1YmM1NjE0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBYYW4gTG9wZXogPHhsb3BlekBpZ2FsaWEuY29tPgpEYXRlOiBU
aHUsIDEgSnVsIDIwMTAgMTY6MTg6MjYgKzAyMDAKU3ViamVjdDogW1BBVENIXSBXZWJDb3JlOgoK
MjAxMC0wNy0wMSAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKICAgICAgICBbR1RLXSBTdG9wIHVzaW5nIEdka1JlZ2lv
biBpbiAzLnggbW9kZQogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00MTQ2MwoKICAgICAgICBNYWtlIHVzIGNvbXBpbGUgd2l0aG91dCB1c2luZyBHZGtSZWdp
b24sIHNpbmNlIGl0J3MgZ29uZSBmcm9tIEdUSysKICAgICAgICAzLnguCgogICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvSW50UmVjdC5oOgogICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2Fp
cm8vR3JhcGhpY3NDb250ZXh0Q2Fpcm8uY3BwOgogICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHQ6OmRyYXdGb2N1c1JpbmcpOgogICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL0Zv
bnRHdGsuY3BwOgogICAgICAgIChXZWJDb3JlOjpjYWlyb19yZWdpb25fc2hyaW5rKToKICAgICAg
ICAoV2ViQ29yZTo6Rm9udDo6ZHJhd0NvbXBsZXhUZXh0KToKICAgICAgICAqIHBsYXRmb3JtL2d0
ay9HdGtQbHVnaW5XaWRnZXQuY3BwOgogICAgICAgIChXZWJDb3JlOjpHdGtQbHVnaW5XaWRnZXQ6
OnBhaW50KToKICAgICAgICAqIHBsYXRmb3JtL2d0ay9SZW5kZXJUaGVtZUd0ay5oOgogICAgICAg
ICogcGxhdGZvcm0vZ3RrL1Njcm9sbGJhckd0ay5jcHA6CiAgICAgICAgKFNjcm9sbGJhckd0azo6
cGFpbnQpOgoKV2ViS2l0L2d0azoKCjIwMTAtMDctMDEgIFhhbiBMb3BleiAgPHhsb3BlekBpZ2Fs
aWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiAgICAgICAgW0dU
S10gU3RvcCB1c2luZyBHZGtSZWdpb24gaW4gMy54IG1vZGUKICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDE0NjMKCiAgICAgICAgTWFrZSB1cyBjb21waWxl
IHdpdGhvdXQgdXNpbmcgR2RrUmVnaW9uLCBzaW5jZSBpdCdzIGdvbmUgZnJvbSBHVEsrCiAgICAg
ICAgMy54LgoKICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEd0ay5jcHA6CiAg
ICAgICAgKFdlYktpdDo6Q2hyb21lQ2xpZW50OjpzY3JvbGwpOgogICAgICAgICogd2Via2l0L3dl
YmtpdHdlYnZpZXcuY3BwOgogICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfZXhwb3NlX2V2ZW50KToK
LS0tCiBXZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgMjIgKysrKysrKysrKysrCiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ludFJlY3QuaCAg
ICAgICAgICAgICAgICB8ICAgIDUgKysrCiAuLi4vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250
ZXh0Q2Fpcm8uY3BwICAgICAgICB8ICAgMTQgKysrKysrKysKIFdlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZ3RrL0ZvbnRHdGsuY3BwICAgICAgICAgIHwgICAzNiArKysrKysrKysrKysrKysrKysr
KwogV2ViQ29yZS9wbGF0Zm9ybS9ndGsvR3RrUGx1Z2luV2lkZ2V0LmNwcCAgICAgICAgICAgfCAg
ICA4ICsrKysKIFdlYkNvcmUvcGxhdGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrLmggICAgICAgICAg
ICAgIHwgICAgNSArKysKIFdlYkNvcmUvcGxhdGZvcm0vZ3RrL1Njcm9sbGJhckd0ay5jcHAgICAg
ICAgICAgICAgIHwgICAgOCArKysrCiBXZWJLaXQvZ3RrL0NoYW5nZUxvZyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8ICAgMTUgKysrKysrKysKIFdlYktpdC9ndGsvV2ViQ29yZVN1cHBv
cnQvQ2hyb21lQ2xpZW50R3RrLmNwcCAgICAgIHwgICAxNiArKysrKysrKysKIFdlYktpdC9ndGsv
d2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwICAgICAgICAgICAgICAgIHwgICAxMCArKysrLQogMTAg
ZmlsZXMgY2hhbmdlZCwgMTM3IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmN2IyNzc2
Li5jNjI0Zjc3IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0No
YW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEwLTA3LTAxICBYYW4gTG9wZXogIDx4bG9wZXpA
aWdhbGlhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBbR1RLXSBTdG9wIHVzaW5nIEdka1JlZ2lvbiBpbiAzLnggbW9kZQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDE0NjMKKworICAgICAgICBNYWtl
IHVzIGNvbXBpbGUgd2l0aG91dCB1c2luZyBHZGtSZWdpb24sIHNpbmNlIGl0J3MgZ29uZSBmcm9t
IEdUSysKKyAgICAgICAgMy54LgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvSW50UmVj
dC5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dENh
aXJvLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dDo6ZHJhd0ZvY3VzUmlu
Zyk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL0ZvbnRHdGsuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Y2Fpcm9fcmVnaW9uX3Nocmluayk6CisgICAgICAgIChXZWJDb3JlOjpGb250
OjpkcmF3Q29tcGxleFRleHQpOgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9HdGtQbHVnaW5XaWRn
ZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3RrUGx1Z2luV2lkZ2V0OjpwYWludCk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrLmg6CisgICAgICAgICogcGxhdGZvcm0v
Z3RrL1Njcm9sbGJhckd0ay5jcHA6CisgICAgICAgIChTY3JvbGxiYXJHdGs6OnBhaW50KToKKwog
MjAxMC0wNy0wMSAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgU3RldmUgRmFsa2VuYnVyZy4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvSW50UmVjdC5oIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbnRSZWN0LmgK
aW5kZXggYWQ5MGRkOS4uYzU5OTBlZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9JbnRSZWN0LmgKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9JbnRSZWN0LmgK
QEAgLTQ4LDcgKzQ4LDEyIEBAIFFUX0JFR0lOX05BTUVTUEFDRQogY2xhc3MgUVJlY3Q7CiBRVF9F
TkRfTkFNRVNQQUNFCiAjZWxpZiBQTEFURk9STShHVEspCisjaWZkZWYgR1RLX0FQSV9WRVJTSU9O
XzIKIHR5cGVkZWYgc3RydWN0IF9HZGtSZWN0YW5nbGUgR2RrUmVjdGFuZ2xlOworI2Vsc2UKK3R5
cGVkZWYgc3RydWN0IF9jYWlyb19yZWN0YW5nbGVfaW50IGNhaXJvX3JlY3RhbmdsZV9pbnRfdDsK
K3R5cGVkZWYgY2Fpcm9fcmVjdGFuZ2xlX2ludF90IEdka1JlY3RhbmdsZTsKKyNlbmRpZgogI2Vs
aWYgUExBVEZPUk0oSEFJS1UpCiBjbGFzcyBCUmVjdDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRDYWlyby5jcHAgYi9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dENhaXJvLmNwcApp
bmRleCBkYzMyMzE3Li41NTIxYTZmIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dENhaXJvLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dENhaXJvLmNwcApAQCAtNjQzLDEzICs2NDMs
MjcgQEAgdm9pZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdGb2N1c1JpbmcoY29uc3QgVmVjdG9yPElu
dFJlY3Q+JiByZWN0cywgaW50IHdpZHRoLCBpbnQKICAgICBjYWlyb19uZXdfcGF0aChjcik7CiAK
ICNpZiBQTEFURk9STShHVEspCisjaWZkZWYgR1RLX0FQSV9WRVJTSU9OXzIKICAgICBHZGtSZWdp
b24qIHJlZyA9IGdka19yZWdpb25fbmV3KCk7CisjZWxzZQorICAgIGNhaXJvX3JlZ2lvbl90KiBy
ZWcgPSBjYWlyb19yZWdpb25fY3JlYXRlKCk7CisjZW5kaWYKKwogICAgIGZvciAodW5zaWduZWQg
aSA9IDA7IGkgPCByZWN0Q291bnQ7IGkrKykgeworI2lmZGVmIEdUS19BUElfVkVSU0lPTl8yCiAg
ICAgICAgIEdka1JlY3RhbmdsZSByZWN0ID0gcmVjdHNbaV07CiAgICAgICAgIGdka19yZWdpb25f
dW5pb25fd2l0aF9yZWN0KHJlZywgJnJlY3QpOworI2Vsc2UKKyAgICAgICAgY2Fpcm9fcmVjdGFu
Z2xlX2ludF90IHJlY3QgPSByZWN0c1tpXTsKKyAgICAgICAgY2Fpcm9fcmVnaW9uX3VuaW9uX3Jl
Y3RhbmdsZShyZWcsICZyZWN0KTsKKyNlbmRpZgogICAgIH0KICAgICBnZGtfY2Fpcm9fcmVnaW9u
KGNyLCByZWcpOworI2lmZGVmIEdUS19BUElfVkVSU0lPTl8yCiAgICAgZ2RrX3JlZ2lvbl9kZXN0
cm95KHJlZyk7CisjZWxzZQorICAgIGNhaXJvX3JlZ2lvbl9kZXN0cm95KHJlZyk7CisjZW5kaWYK
IAogICAgIHNldENvbG9yKGNyLCBjb2xvcik7CiAgICAgY2Fpcm9fc2V0X2xpbmVfd2lkdGgoY3Is
IDIuMGYpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvRm9udEd0
ay5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9Gb250R3RrLmNwcAppbmRleCBm
YWU4NGNiLi5lNjA3NDlmIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0
ay9Gb250R3RrLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9Gb250R3Rr
LmNwcApAQCAtMTgxLDYgKzE4MSwzMCBAQCBib29sIEZvbnQ6OmNhblJldHVybkZhbGxiYWNrRm9u
dHNGb3JDb21wbGV4VGV4dCgpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCisjaWZuZGVmIEdUS19B
UElfVkVSU0lPTl8yCitzdGF0aWMgdm9pZAorY2Fpcm9fcmVnaW9uX3NocmluayhjYWlyb19yZWdp
b25fdCAqcmVnaW9uLCBpbnQgZHgsIGludCBkeSkKK3sKKyAgaW50IG5fcmVjdHMgPSBjYWlyb19y
ZWdpb25fbnVtX3JlY3RhbmdsZXMocmVnaW9uKTsKKyAgLyogY2xlYXIgcmVnaW9uICovCisgIGNh
aXJvX3JlZ2lvbl9zdWJ0cmFjdChyZWdpb24sIHJlZ2lvbik7CisKKyAgZm9yIChpbnQgaSA9IDA7
IGkgPCBuX3JlY3RzOyBpKyspIHsKKyAgICAgIGNhaXJvX3JlY3RhbmdsZV9pbnRfdCByZWN0Owor
ICAgICAgY2Fpcm9fcmVnaW9uX2dldF9yZWN0YW5nbGUocmVnaW9uLCBpLCAmcmVjdCk7CisKKyAg
ICAgIGlmIChyZWN0LndpZHRoIDw9IDIgKiBkeCB8fCByZWN0LmhlaWdodCA8PSAyICogZHkpCisg
ICAgICAgIGNvbnRpbnVlOworCisgICAgICByZWN0LnggKz0gZHg7CisgICAgICByZWN0LnkgKz0g
ZHk7CisgICAgICByZWN0LndpZHRoIC09IDIgKiBkeDsKKyAgICAgIHJlY3QuaGVpZ2h0IC09IDIg
KiBkeTsKKyAgICAgIGNhaXJvX3JlZ2lvbl91bmlvbl9yZWN0YW5nbGUocmVnaW9uLCAmcmVjdCk7
CisgICAgfQorfQorI2VuZGlmCisKIHZvaWQgRm9udDo6ZHJhd0NvbXBsZXhUZXh0KEdyYXBoaWNz
Q29udGV4dCogY29udGV4dCwgY29uc3QgVGV4dFJ1biYgcnVuLCBjb25zdCBGbG9hdFBvaW50JiBw
b2ludCwgaW50IGZyb20sIGludCB0bykgY29uc3QKIHsKICAgICBjYWlyb190KiBjciA9IGNvbnRl
eHQtPnBsYXRmb3JtQ29udGV4dCgpOwpAQCAtMTk2LDE0ICsyMjAsMjIgQEAgdm9pZCBGb250Ojpk
cmF3Q29tcGxleFRleHQoR3JhcGhpY3NDb250ZXh0KiBjb250ZXh0LCBjb25zdCBUZXh0UnVuJiBy
dW4sIGNvbnN0IEYKICAgICAvLyBPdXIgbGF5b3V0cyBhcmUgc2luZ2xlIGxpbmUKICAgICBQYW5n
b0xheW91dExpbmUqIGxheW91dExpbmUgPSBwYW5nb19sYXlvdXRfZ2V0X2xpbmVfcmVhZG9ubHko
bGF5b3V0LCAwKTsKIAorI2lmZGVmIEdUS19BUElfVkVSU0lPTl8yCiAgICAgR2RrUmVnaW9uKiBw
YXJ0aWFsUmVnaW9uID0gTlVMTDsKKyNlbHNlCisgICAgY2Fpcm9fcmVnaW9uX3QqIHBhcnRpYWxS
ZWdpb24gPSBOVUxMOworI2VuZGlmCiAgICAgaWYgKHRvIC0gZnJvbSAhPSBydW4ubGVuZ3RoKCkp
IHsKICAgICAgICAgLy8gQ2xpcCB0aGUgcmVnaW9uIG9mIHRoZSBydW4gdG8gYmUgcmVuZGVyZWQK
ICAgICAgICAgY2hhciogc3RhcnQgPSBnX3V0Zjhfb2Zmc2V0X3RvX3BvaW50ZXIodXRmOCwgZnJv
bSk7CiAgICAgICAgIGNoYXIqIGVuZCA9IGdfdXRmOF9vZmZzZXRfdG9fcG9pbnRlcihzdGFydCwg
dG8gLSBmcm9tKTsKICAgICAgICAgaW50IHJhbmdlc1tdID0ge3N0YXJ0IC0gdXRmOCwgZW5kIC0g
dXRmOH07CiAgICAgICAgIHBhcnRpYWxSZWdpb24gPSBnZGtfcGFuZ29fbGF5b3V0X2xpbmVfZ2V0
X2NsaXBfcmVnaW9uKGxheW91dExpbmUsIDAsIDAsIHJhbmdlcywgMSk7CisjaWZkZWYgR1RLX0FQ
SV9WRVJTSU9OXzIKICAgICAgICAgZ2RrX3JlZ2lvbl9zaHJpbmsocGFydGlhbFJlZ2lvbiwgMCwg
LXBpeGVsU2l6ZSgpKTsKKyNlbHNlCisgICAgICAgIGNhaXJvX3JlZ2lvbl9zaHJpbmsocGFydGlh
bFJlZ2lvbiwgMCwgLXBpeGVsU2l6ZSgpKTsKKyNlbmRpZgogICAgIH0KIAogICAgIENvbG9yIGZp
bGxDb2xvciA9IGNvbnRleHQtPmZpbGxDb2xvcigpOwpAQCAtMjY1LDcgKzI5NywxMSBAQCB2b2lk
IEZvbnQ6OmRyYXdDb21wbGV4VGV4dChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IFRl
eHRSdW4mIHJ1biwgY29uc3QgRgogICAgIGNhaXJvX25ld19wYXRoKGNyKTsKIAogICAgIGlmIChw
YXJ0aWFsUmVnaW9uKQorI2lmZGVmIEdUS19WRVJTSU9OX0FQSV8yCiAgICAgICAgIGdka19yZWdp
b25fZGVzdHJveShwYXJ0aWFsUmVnaW9uKTsKKyNlbHNlCisgICAgICAgIGNhaXJvX3JlZ2lvbl9k
ZXN0cm95KHBhcnRpYWxSZWdpb24pOworI2VuZGlmCiAKICAgICBnX2ZyZWUodXRmOCk7CiAgICAg
Z19vYmplY3RfdW5yZWYobGF5b3V0KTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L0d0a1BsdWdpbldpZGdldC5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2d0ay9HdGtQbHVnaW5XaWRn
ZXQuY3BwCmluZGV4IDk0MzgyZjEuLjMzMWY2MGYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL0d0a1BsdWdpbldpZGdldC5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvR3Rr
UGx1Z2luV2lkZ2V0LmNwcApAQCAtODcsNyArODcsMTEgQEAgdm9pZCBHdGtQbHVnaW5XaWRnZXQ6
OnBhaW50KEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwgY29uc3QgSW50UmVjdCYgcmVjdCkKICAg
ICBldmVudC0+ZXhwb3NlLmFyZWEueCA9IGxvYy54KCk7CiAgICAgZXZlbnQtPmV4cG9zZS5hcmVh
LnkgPSBsb2MueSgpOwogCisjaWZkZWYgR1RLX0FQSV9WRVJTSU9OXzIKICAgICBldmVudC0+ZXhw
b3NlLnJlZ2lvbiA9IGdka19yZWdpb25fcmVjdGFuZ2xlKCZldmVudC0+ZXhwb3NlLmFyZWEpOwor
I2Vsc2UKKyAgICBldmVudC0+ZXhwb3NlLnJlZ2lvbiA9IGNhaXJvX3JlZ2lvbl9jcmVhdGVfcmVj
dGFuZ2xlKCZldmVudC0+ZXhwb3NlLmFyZWEpOworI2VuZGlmCiAKICAgICAvKgogICAgICAqIFRo
aXMgd2lsbCBiZSB1bnJlZidlZCBieSBnZGtfZXZlbnRfZnJlZS4KQEAgLTk3LDcgKzEwMSwxMSBA
QCB2b2lkIEd0a1BsdWdpbldpZGdldDo6cGFpbnQoR3JhcGhpY3NDb250ZXh0KiBjb250ZXh0LCBj
b25zdCBJbnRSZWN0JiByZWN0KQogICAgIC8qCiAgICAgICogSWYgd2UgYXJlIGdvaW5nIHRvIHBh
aW50IGRvIHRoZSB0cmFuc2xhdGlvbiBhbmQgR3RrQWxsb2NhdGlvbiBtYW5pcHVsYXRpb24uCiAg
ICAgICovCisjaWZkZWYgR1RLX0FQSV9WRVJTSU9OXzIKICAgICBpZiAoIWdka19yZWdpb25fZW1w
dHkoZXZlbnQtPmV4cG9zZS5yZWdpb24pKQorI2Vsc2UKKyAgICBpZiAoIWNhaXJvX3JlZ2lvbl9p
c19lbXB0eShldmVudC0+ZXhwb3NlLnJlZ2lvbikpCisjZW5kaWYKICAgICAgICAgZ3RrX3dpZGdl
dF9zZW5kX2V4cG9zZSh3aWRnZXQsIGV2ZW50KTsKIAogICAgIGdka19ldmVudF9mcmVlKGV2ZW50
KTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrLmggYi9X
ZWJDb3JlL3BsYXRmb3JtL2d0ay9SZW5kZXJUaGVtZUd0ay5oCmluZGV4IDNmMDJmMGUuLjcxMzM4
ZDQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrLmgKKysr
IGIvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvUmVuZGVyVGhlbWVHdGsuaApAQCAtMzQsNyArMzQsMTIg
QEAKIHR5cGVkZWYgc3RydWN0IF9HdGtXaWRnZXQgR3RrV2lkZ2V0OwogdHlwZWRlZiBzdHJ1Y3Qg
X0d0a1N0eWxlIEd0a1N0eWxlOwogdHlwZWRlZiBzdHJ1Y3QgX0d0a0NvbnRhaW5lciBHdGtDb250
YWluZXI7CisjaWZkZWYgR1RLX0FQSV9WRVJTSU9OXzIKIHR5cGVkZWYgc3RydWN0IF9HZGtSZWN0
YW5nbGUgR2RrUmVjdGFuZ2xlOworI2Vsc2UKK3R5cGVkZWYgc3RydWN0IF9jYWlyb19yZWN0YW5n
bGVfaW50IGNhaXJvX3JlY3RhbmdsZV9pbnRfdDsKK3R5cGVkZWYgY2Fpcm9fcmVjdGFuZ2xlX2lu
dF90IEdka1JlY3RhbmdsZTsKKyNlbmRpZgogdHlwZWRlZiBzdHJ1Y3QgX0dka0RyYXdhYmxlIEdk
a0RyYXdhYmxlOwogdHlwZWRlZiBzdHJ1Y3QgX0d0a0JvcmRlciBHdGtCb3JkZXI7CiB0eXBlZGVm
IHN0cnVjdCBfR3RrVGhlbWVQYXJ0cyBHdGtUaGVtZVBhcnRzOwpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvU2Nyb2xsYmFyR3RrLmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1Nj
cm9sbGJhckd0ay5jcHAKaW5kZXggNWRjNGRkNi4uMDEyNTViNyAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9wbGF0Zm9ybS9ndGsvU2Nyb2xsYmFyR3RrLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9TY3JvbGxiYXJHdGsuY3BwCkBAIC0yMzgsNyArMjM4LDExIEBAIHZvaWQgU2Nyb2xsYmFyR3Rr
OjpwYWludChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEludFJlY3QmIHJlY3QpCiAg
ICAgZXZlbnQtPmV4cG9zZS5hcmVhLnggPSBsb2MueCgpOwogICAgIGV2ZW50LT5leHBvc2UuYXJl
YS55ID0gbG9jLnkoKTsKIAorI2lmZGVmIEdUS19WRVJTSU9OX0FQSV8yCiAgICAgZXZlbnQtPmV4
cG9zZS5yZWdpb24gPSBnZGtfcmVnaW9uX3JlY3RhbmdsZSgmZXZlbnQtPmV4cG9zZS5hcmVhKTsK
KyNlbHNlCisgICAgZXZlbnQtPmV4cG9zZS5yZWdpb24gPSBjYWlyb19yZWdpb25fY3JlYXRlX3Jl
Y3RhbmdsZSgmZXZlbnQtPmV4cG9zZS5hcmVhKTsKKyNlbmRpZgogCiAgICAgLyoKICAgICAgKiBU
aGlzIHdpbGwgYmUgdW5yZWYnZWQgYnkgZ2RrX2V2ZW50X2ZyZWUuCkBAIC0yNDgsNyArMjUyLDEx
IEBAIHZvaWQgU2Nyb2xsYmFyR3RrOjpwYWludChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNv
bnN0IEludFJlY3QmIHJlY3QpCiAgICAgLyoKICAgICAgKiBJZiB3ZSBhcmUgZ29pbmcgdG8gcGFp
bnQgZG8gdGhlIHRyYW5zbGF0aW9uIGFuZCBHdGtBbGxvY2F0aW9uIG1hbmlwdWxhdGlvbi4KICAg
ICAgKi8KKyNpZmRlZiBHVEtfVkVSU0lPTl9BUElfMgogICAgIGlmICghZ2RrX3JlZ2lvbl9lbXB0
eShldmVudC0+ZXhwb3NlLnJlZ2lvbikpCisjZWxzZQorICAgIGlmICghY2Fpcm9fcmVnaW9uX2lz
X2VtcHR5KGV2ZW50LT5leHBvc2UucmVnaW9uKSkKKyNlbmRpZgogICAgICAgICBndGtfd2lkZ2V0
X3NlbmRfZXhwb3NlKHdpZGdldCwgZXZlbnQpOwogCiAgICAgZ2RrX2V2ZW50X2ZyZWUoZXZlbnQp
OwpkaWZmIC0tZ2l0IGEvV2ViS2l0L2d0ay9DaGFuZ2VMb2cgYi9XZWJLaXQvZ3RrL0NoYW5nZUxv
ZwppbmRleCAwOGU3ZDE2Li45MDgzMDU3IDEwMDY0NAotLS0gYS9XZWJLaXQvZ3RrL0NoYW5nZUxv
ZworKysgYi9XZWJLaXQvZ3RrL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEwLTA3LTAx
ICBYYW4gTG9wZXogIDx4bG9wZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbR1RLXSBTdG9wIHVzaW5nIEdka1JlZ2lvbiBpbiAz
LnggbW9kZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NDE0NjMKKworICAgICAgICBNYWtlIHVzIGNvbXBpbGUgd2l0aG91dCB1c2luZyBHZGtSZWdpb24s
IHNpbmNlIGl0J3MgZ29uZSBmcm9tIEdUSysKKyAgICAgICAgMy54LgorCisgICAgICAgICogV2Vi
Q29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50R3RrLmNwcDoKKyAgICAgICAgKFdlYktpdDo6Q2hyb21l
Q2xpZW50OjpzY3JvbGwpOgorICAgICAgICAqIHdlYmtpdC93ZWJraXR3ZWJ2aWV3LmNwcDoKKyAg
ICAgICAgKHdlYmtpdF93ZWJfdmlld19leHBvc2VfZXZlbnQpOgorCiAyMDEwLTA3LTAxICBNYXJ0
aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBYYW4gTG9wZXouCmRpZmYgLS1naXQgYS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0Nocm9t
ZUNsaWVudEd0ay5jcHAgYi9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEd0
ay5jcHAKaW5kZXggZmU1ZDllYi4uYmIwZGJjNCAxMDA2NDQKLS0tIGEvV2ViS2l0L2d0ay9XZWJD
b3JlU3VwcG9ydC9DaHJvbWVDbGllbnRHdGsuY3BwCisrKyBiL1dlYktpdC9ndGsvV2ViQ29yZVN1
cHBvcnQvQ2hyb21lQ2xpZW50R3RrLmNwcApAQCAtMzcyLDYgKzM3Miw3IEBAIHZvaWQgQ2hyb21l
Q2xpZW50OjpzY3JvbGwoY29uc3QgSW50U2l6ZSYgZGVsdGEsIGNvbnN0IEludFJlY3QmIHJlY3RU
b1Njcm9sbCwgY29uCiAgICAgc291cmNlUmVjdC54IC09IGRlbHRhLndpZHRoKCk7CiAgICAgc291
cmNlUmVjdC55IC09IGRlbHRhLmhlaWdodCgpOwogCisjaWZkZWYgR1RLX1ZFUlNJT05fQVBJXzIK
ICAgICBHZGtSZWdpb24qIGludmFsaWRSZWdpb24gPSBnZGtfcmVnaW9uX3JlY3RhbmdsZSgmYXJl
YSk7CiAKICAgICBpZiAoZ2RrX3JlY3RhbmdsZV9pbnRlcnNlY3QoJmFyZWEsICZzb3VyY2VSZWN0
LCAmbW92ZVJlY3QpKSB7CkBAIC0zODQsNiArMzg1LDIxIEBAIHZvaWQgQ2hyb21lQ2xpZW50Ojpz
Y3JvbGwoY29uc3QgSW50U2l6ZSYgZGVsdGEsIGNvbnN0IEludFJlY3QmIHJlY3RUb1Njcm9sbCwg
Y29uCiAKICAgICBnZGtfd2luZG93X2ludmFsaWRhdGVfcmVnaW9uKHdpbmRvdywgaW52YWxpZFJl
Z2lvbiwgRkFMU0UpOwogICAgIGdka19yZWdpb25fZGVzdHJveShpbnZhbGlkUmVnaW9uKTsKKyNl
bHNlCisgICAgY2Fpcm9fcmVnaW9uX3QqIGludmFsaWRSZWdpb24gPSBjYWlyb19yZWdpb25fY3Jl
YXRlX3JlY3RhbmdsZSgmYXJlYSk7CisKKyAgICBpZiAoZ2RrX3JlY3RhbmdsZV9pbnRlcnNlY3Qo
JmFyZWEsICZzb3VyY2VSZWN0LCAmbW92ZVJlY3QpKSB7CisgICAgICAgIGNhaXJvX3JlZ2lvbl90
KiBtb3ZlUmVnaW9uID0gY2Fpcm9fcmVnaW9uX2NyZWF0ZV9yZWN0YW5nbGUoJm1vdmVSZWN0KTsK
KyAgICAgICAgZ2RrX3dpbmRvd19tb3ZlX3JlZ2lvbih3aW5kb3csIG1vdmVSZWdpb24sIGRlbHRh
LndpZHRoKCksIGRlbHRhLmhlaWdodCgpKTsKKyAgICAgICAgY2Fpcm9fcmVnaW9uX3RyYW5zbGF0
ZShtb3ZlUmVnaW9uLCBkZWx0YS53aWR0aCgpLCBkZWx0YS5oZWlnaHQoKSk7CisgICAgICAgIGNh
aXJvX3JlZ2lvbl9zdWJ0cmFjdChpbnZhbGlkUmVnaW9uLCBtb3ZlUmVnaW9uKTsKKyAgICAgICAg
Y2Fpcm9fcmVnaW9uX2Rlc3Ryb3kobW92ZVJlZ2lvbik7CisgICAgfQorCisgICAgZ2RrX3dpbmRv
d19pbnZhbGlkYXRlX3JlZ2lvbih3aW5kb3csIGludmFsaWRSZWdpb24sIEZBTFNFKTsKKyAgICBj
YWlyb19yZWdpb25fZGVzdHJveShpbnZhbGlkUmVnaW9uKTsKKyNlbmRpZgorCiB9CiAKIC8vIEZJ
WE1FOiB0aGlzIGRvZXMgbm90IHRha2UgaW50byBhY2NvdW50IHRoZSBXTSBkZWNvcmF0aW9ucwpk
aWZmIC0tZ2l0IGEvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vidmlldy5jcHAgYi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJ2aWV3LmNwcAppbmRleCBmZjRhYThhLi42Mjk5N2M1IDEwMDY0
NAotLS0gYS9XZWJLaXQvZ3RrL3dlYmtpdC93ZWJraXR3ZWJ2aWV3LmNwcAorKysgYi9XZWJLaXQv
Z3RrL3dlYmtpdC93ZWJraXR3ZWJ2aWV3LmNwcApAQCAtNTE3LDEwICs1MTcsMTYgQEAgc3RhdGlj
IGdib29sZWFuIHdlYmtpdF93ZWJfdmlld19leHBvc2VfZXZlbnQoR3RrV2lkZ2V0KiB3aWRnZXQs
IEdka0V2ZW50RXhwb3NlKgogICAgICAgICBjYWlyb19kZXN0cm95KGNyKTsKICAgICAgICAgY3R4
LnNldEdka0V4cG9zZUV2ZW50KGV2ZW50KTsKIAotICAgICAgICBHT3duUHRyPEdka1JlY3Rhbmds
ZT4gcmVjdHM7CiAgICAgICAgIGludCByZWN0Q291bnQ7CisjaWZkZWYgR1RLX0FQSV9WRVJTSU9O
XzIKKyAgICAgICAgR093blB0cjxHZGtSZWN0YW5nbGU+IHJlY3RzOwogICAgICAgICBnZGtfcmVn
aW9uX2dldF9yZWN0YW5nbGVzKGV2ZW50LT5yZWdpb24sICZyZWN0cy5vdXRQdHIoKSwgJnJlY3RD
b3VudCk7Ci0KKyNlbHNlCisgICAgICAgIHJlY3RDb3VudCA9IGNhaXJvX3JlZ2lvbl9udW1fcmVj
dGFuZ2xlcyhldmVudC0+cmVnaW9uKTsKKyAgICAgICAgR093blB0cjxHZGtSZWN0YW5nbGU+IHJl
Y3RzKGdfbmV3KEdka1JlY3RhbmdsZSwgcmVjdENvdW50KSk7CisgICAgICAgIGZvciAoaW50IGkg
PSAwOyBpIDwgcmVjdENvdW50OyBpKyspCisgICAgICAgICAgICBjYWlyb19yZWdpb25fZ2V0X3Jl
Y3RhbmdsZShldmVudC0+cmVnaW9uLCBpLCByZWN0cy5nZXQoKStpKTsKKyNlbmRpZgogICAgICAg
ICAvLyBBdm9pZCByZWN1cnNpbmcgaW50byB0aGUgcmVuZGVyIHRyZWUgZXhjZXNzaXZlbHkKICAg
ICAgICAgYm9vbCBjb2FsZXNjZSA9IHNob3VsZENvYWxlc2NlKGV2ZW50LT5hcmVhLCByZWN0cy5n
ZXQoKSwgcmVjdENvdW50KTsKIAotLSAKMS42LjYuMQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60286</attachid>
            <date>2010-07-01 14:23:38 -0700</date>
            <delta_ts>2010-07-01 16:58:39 -0700</delta_ts>
            <desc>gdkregion.diff</desc>
            <filename>gdkregion.diff</filename>
            <type>text/plain</type>
            <size>13027</size>
            <attacher name="Xan Lopez">xan.lopez</attacher>
            
              <data encoding="base64">RnJvbSAxZGVhYmMyMmE3OTIzNjAwMTk1NWY2ZjYwODJjYWMyMjQ5Nzc2YWMyIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBYYW4gTG9wZXogPHhsb3BlekBpZ2FsaWEuY29tPgpEYXRlOiBU
aHUsIDEgSnVsIDIwMTAgMTY6MTg6MjYgKzAyMDAKU3ViamVjdDogW1BBVENIXSBXZWJDb3JlOgoK
MjAxMC0wNy0wMSAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CgogICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKICAgICAgICBbR1RLXSBTdG9wIHVzaW5nIEdka1JlZ2lv
biBpbiAzLnggbW9kZQogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00MTQ2MwoKICAgICAgICBNYWtlIHVzIGNvbXBpbGUgd2l0aG91dCB1c2luZyBHZGtSZWdp
b24sIHNpbmNlIGl0J3MgZ29uZSBmcm9tIEdUSysKICAgICAgICAzLnguCgogICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvSW50UmVjdC5oOgogICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2Fp
cm8vR3JhcGhpY3NDb250ZXh0Q2Fpcm8uY3BwOgogICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0Nv
bnRleHQ6OmRyYXdGb2N1c1JpbmcpOgogICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL0Zv
bnRHdGsuY3BwOgogICAgICAgIChXZWJDb3JlOjpjYWlyb19yZWdpb25fc2hyaW5rKToKICAgICAg
ICAoV2ViQ29yZTo6Rm9udDo6ZHJhd0NvbXBsZXhUZXh0KToKICAgICAgICAqIHBsYXRmb3JtL2d0
ay9HdGtQbHVnaW5XaWRnZXQuY3BwOgogICAgICAgIChXZWJDb3JlOjpHdGtQbHVnaW5XaWRnZXQ6
OnBhaW50KToKICAgICAgICAqIHBsYXRmb3JtL2d0ay9SZW5kZXJUaGVtZUd0ay5oOgogICAgICAg
ICogcGxhdGZvcm0vZ3RrL1Njcm9sbGJhckd0ay5jcHA6CiAgICAgICAgKFNjcm9sbGJhckd0azo6
cGFpbnQpOgoKV2ViS2l0L2d0azoKCjIwMTAtMDctMDEgIFhhbiBMb3BleiAgPHhsb3BlekBpZ2Fs
aWEuY29tPgoKICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiAgICAgICAgW0dU
S10gU3RvcCB1c2luZyBHZGtSZWdpb24gaW4gMy54IG1vZGUKICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDE0NjMKCiAgICAgICAgTWFrZSB1cyBjb21waWxl
IHdpdGhvdXQgdXNpbmcgR2RrUmVnaW9uLCBzaW5jZSBpdCdzIGdvbmUgZnJvbSBHVEsrCiAgICAg
ICAgMy54LgoKICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0Nocm9tZUNsaWVudEd0ay5jcHA6CiAg
ICAgICAgKFdlYktpdDo6Q2hyb21lQ2xpZW50OjpzY3JvbGwpOgogICAgICAgICogd2Via2l0L3dl
YmtpdHdlYnZpZXcuY3BwOgogICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfZXhwb3NlX2V2ZW50KToK
LS0tCiBXZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgMjIgKysrKysrKysrKysrCiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ludFJlY3QuaCAg
ICAgICAgICAgICAgICB8ICAgIDUgKysrCiAuLi4vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250
ZXh0Q2Fpcm8uY3BwICAgICAgICB8ICAgMTQgKysrKysrKwogV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9ndGsvRm9udEd0ay5jcHAgICAgICAgICAgfCAgIDM3ICsrKysrKysrKysrKysrKysrKyst
CiBXZWJDb3JlL3BsYXRmb3JtL2d0ay9HdGtQbHVnaW5XaWRnZXQuY3BwICAgICAgICAgICB8ICAg
IDggKysrKwogV2ViQ29yZS9wbGF0Zm9ybS9ndGsvUmVuZGVyVGhlbWVHdGsuaCAgICAgICAgICAg
ICAgfCAgICA1ICsrKwogV2ViQ29yZS9wbGF0Zm9ybS9ndGsvU2Nyb2xsYmFyR3RrLmNwcCAgICAg
ICAgICAgICAgfCAgICA4ICsrKysKIFdlYktpdC9ndGsvQ2hhbmdlTG9nICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwgICAxNSArKysrKysrKwogV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9y
dC9DaHJvbWVDbGllbnRHdGsuY3BwICAgICAgfCAgIDE2ICsrKysrKysrCiBXZWJLaXQvZ3RrL3dl
YmtpdC93ZWJraXR3ZWJ2aWV3LmNwcCAgICAgICAgICAgICAgICB8ICAgMTAgKysrKy0KIDEwIGZp
bGVzIGNoYW5nZWQsIDEzNyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjdiMjc3Ni4u
YzYyNGY3NyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyNSBAQAorMjAxMC0wNy0wMSAgWGFuIExvcGV6ICA8eGxvcGV6QGln
YWxpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgW0dUS10gU3RvcCB1c2luZyBHZGtSZWdpb24gaW4gMy54IG1vZGUKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxNDYzCisKKyAgICAgICAgTWFrZSB1
cyBjb21waWxlIHdpdGhvdXQgdXNpbmcgR2RrUmVnaW9uLCBzaW5jZSBpdCdzIGdvbmUgZnJvbSBH
VEsrCisgICAgICAgIDMueC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ludFJlY3Qu
aDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRDYWly
by5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OmRyYXdGb2N1c1Jpbmcp
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2d0ay9Gb250R3RrLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OmNhaXJvX3JlZ2lvbl9zaHJpbmspOgorICAgICAgICAoV2ViQ29yZTo6Rm9udDo6
ZHJhd0NvbXBsZXhUZXh0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvR3RrUGx1Z2luV2lkZ2V0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okd0a1BsdWdpbldpZGdldDo6cGFpbnQpOgorICAgICAg
ICAqIHBsYXRmb3JtL2d0ay9SZW5kZXJUaGVtZUd0ay5oOgorICAgICAgICAqIHBsYXRmb3JtL2d0
ay9TY3JvbGxiYXJHdGsuY3BwOgorICAgICAgICAoU2Nyb2xsYmFyR3RrOjpwYWludCk6CisKIDIw
MTAtMDctMDEgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IFN0ZXZlIEZhbGtlbmJ1cmcuCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0ludFJlY3QuaCBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW50UmVjdC5oCmlu
ZGV4IGFkOTBkZDkuLmM1OTkwZWYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvSW50UmVjdC5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvSW50UmVjdC5oCkBA
IC00OCw3ICs0OCwxMiBAQCBRVF9CRUdJTl9OQU1FU1BBQ0UKIGNsYXNzIFFSZWN0OwogUVRfRU5E
X05BTUVTUEFDRQogI2VsaWYgUExBVEZPUk0oR1RLKQorI2lmZGVmIEdUS19BUElfVkVSU0lPTl8y
CiB0eXBlZGVmIHN0cnVjdCBfR2RrUmVjdGFuZ2xlIEdka1JlY3RhbmdsZTsKKyNlbHNlCit0eXBl
ZGVmIHN0cnVjdCBfY2Fpcm9fcmVjdGFuZ2xlX2ludCBjYWlyb19yZWN0YW5nbGVfaW50X3Q7Cit0
eXBlZGVmIGNhaXJvX3JlY3RhbmdsZV9pbnRfdCBHZGtSZWN0YW5nbGU7CisjZW5kaWYKICNlbGlm
IFBMQVRGT1JNKEhBSUtVKQogY2xhc3MgQlJlY3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250ZXh0Q2Fpcm8uY3BwIGIvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRDYWlyby5jcHAKaW5k
ZXggZGMzMjMxNy4uNTUyMWE2ZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jYWlyby9HcmFwaGljc0NvbnRleHRDYWlyby5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRDYWlyby5jcHAKQEAgLTY0MywxMyArNjQzLDI3
IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3Rm9jdXNSaW5nKGNvbnN0IFZlY3RvcjxJbnRS
ZWN0PiYgcmVjdHMsIGludCB3aWR0aCwgaW50CiAgICAgY2Fpcm9fbmV3X3BhdGgoY3IpOwogCiAj
aWYgUExBVEZPUk0oR1RLKQorI2lmZGVmIEdUS19BUElfVkVSU0lPTl8yCiAgICAgR2RrUmVnaW9u
KiByZWcgPSBnZGtfcmVnaW9uX25ldygpOworI2Vsc2UKKyAgICBjYWlyb19yZWdpb25fdCogcmVn
ID0gY2Fpcm9fcmVnaW9uX2NyZWF0ZSgpOworI2VuZGlmCisKICAgICBmb3IgKHVuc2lnbmVkIGkg
PSAwOyBpIDwgcmVjdENvdW50OyBpKyspIHsKKyNpZmRlZiBHVEtfQVBJX1ZFUlNJT05fMgogICAg
ICAgICBHZGtSZWN0YW5nbGUgcmVjdCA9IHJlY3RzW2ldOwogICAgICAgICBnZGtfcmVnaW9uX3Vu
aW9uX3dpdGhfcmVjdChyZWcsICZyZWN0KTsKKyNlbHNlCisgICAgICAgIGNhaXJvX3JlY3Rhbmds
ZV9pbnRfdCByZWN0ID0gcmVjdHNbaV07CisgICAgICAgIGNhaXJvX3JlZ2lvbl91bmlvbl9yZWN0
YW5nbGUocmVnLCAmcmVjdCk7CisjZW5kaWYKICAgICB9CiAgICAgZ2RrX2NhaXJvX3JlZ2lvbihj
ciwgcmVnKTsKKyNpZmRlZiBHVEtfQVBJX1ZFUlNJT05fMgogICAgIGdka19yZWdpb25fZGVzdHJv
eShyZWcpOworI2Vsc2UKKyAgICBjYWlyb19yZWdpb25fZGVzdHJveShyZWcpOworI2VuZGlmCiAK
ICAgICBzZXRDb2xvcihjciwgY29sb3IpOwogICAgIGNhaXJvX3NldF9saW5lX3dpZHRoKGNyLCAy
LjBmKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL0ZvbnRHdGsu
Y3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvRm9udEd0ay5jcHAKaW5kZXggZmFl
ODRjYi4uZTQ1MWI3NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsv
Rm9udEd0ay5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvRm9udEd0ay5j
cHAKQEAgLTE4MSw2ICsxODEsMjkgQEAgYm9vbCBGb250OjpjYW5SZXR1cm5GYWxsYmFja0ZvbnRz
Rm9yQ29tcGxleFRleHQoKQogICAgIHJldHVybiBmYWxzZTsKIH0KIAorI2lmbmRlZiBHVEtfQVBJ
X1ZFUlNJT05fMgorc3RhdGljIHZvaWQgY2Fpcm9fcmVnaW9uX3NocmluayhjYWlyb19yZWdpb25f
dCogcmVnaW9uLCBpbnQgZHgsIGludCBkeSkKK3sKKyAgICBpbnQgblJlY3RzID0gY2Fpcm9fcmVn
aW9uX251bV9yZWN0YW5nbGVzKHJlZ2lvbik7CisgICAgLyogY2xlYXIgcmVnaW9uICovCisgICAg
Y2Fpcm9fcmVnaW9uX3N1YnRyYWN0KHJlZ2lvbiwgcmVnaW9uKTsKKworICAgIGZvciAoaW50IGkg
PSAwOyBpIDwgblJlY3RzOyBpKyspIHsKKyAgICAgICAgY2Fpcm9fcmVjdGFuZ2xlX2ludF90IHJl
Y3Q7CisgICAgICAgIGNhaXJvX3JlZ2lvbl9nZXRfcmVjdGFuZ2xlKHJlZ2lvbiwgaSwgJnJlY3Qp
OworCisgICAgICAgIGlmIChyZWN0LndpZHRoIDw9IDIgKiBkeCB8fCByZWN0LmhlaWdodCA8PSAy
ICogZHkpCisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICByZWN0LnggKz0gZHg7Cisg
ICAgICAgIHJlY3QueSArPSBkeTsKKyAgICAgICAgcmVjdC53aWR0aCAtPSAyICogZHg7CisgICAg
ICAgIHJlY3QuaGVpZ2h0IC09IDIgKiBkeTsKKyAgICAgICAgY2Fpcm9fcmVnaW9uX3VuaW9uX3Jl
Y3RhbmdsZShyZWdpb24sICZyZWN0KTsKKyAgICB9Cit9CisjZW5kaWYKKwogdm9pZCBGb250Ojpk
cmF3Q29tcGxleFRleHQoR3JhcGhpY3NDb250ZXh0KiBjb250ZXh0LCBjb25zdCBUZXh0UnVuJiBy
dW4sIGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50LCBpbnQgZnJvbSwgaW50IHRvKSBjb25zdAogewog
ICAgIGNhaXJvX3QqIGNyID0gY29udGV4dC0+cGxhdGZvcm1Db250ZXh0KCk7CkBAIC0xOTYsMTQg
KzIxOSwyMiBAQCB2b2lkIEZvbnQ6OmRyYXdDb21wbGV4VGV4dChHcmFwaGljc0NvbnRleHQqIGNv
bnRleHQsIGNvbnN0IFRleHRSdW4mIHJ1biwgY29uc3QgRgogICAgIC8vIE91ciBsYXlvdXRzIGFy
ZSBzaW5nbGUgbGluZQogICAgIFBhbmdvTGF5b3V0TGluZSogbGF5b3V0TGluZSA9IHBhbmdvX2xh
eW91dF9nZXRfbGluZV9yZWFkb25seShsYXlvdXQsIDApOwogCi0gICAgR2RrUmVnaW9uKiBwYXJ0
aWFsUmVnaW9uID0gTlVMTDsKKyNpZmRlZiBHVEtfQVBJX1ZFUlNJT05fMgorICAgIEdka1JlZ2lv
biogcGFydGlhbFJlZ2lvbiA9IDA7CisjZWxzZQorICAgIGNhaXJvX3JlZ2lvbl90KiBwYXJ0aWFs
UmVnaW9uID0gMDsKKyNlbmRpZgogICAgIGlmICh0byAtIGZyb20gIT0gcnVuLmxlbmd0aCgpKSB7
CiAgICAgICAgIC8vIENsaXAgdGhlIHJlZ2lvbiBvZiB0aGUgcnVuIHRvIGJlIHJlbmRlcmVkCiAg
ICAgICAgIGNoYXIqIHN0YXJ0ID0gZ191dGY4X29mZnNldF90b19wb2ludGVyKHV0ZjgsIGZyb20p
OwogICAgICAgICBjaGFyKiBlbmQgPSBnX3V0Zjhfb2Zmc2V0X3RvX3BvaW50ZXIoc3RhcnQsIHRv
IC0gZnJvbSk7CiAgICAgICAgIGludCByYW5nZXNbXSA9IHtzdGFydCAtIHV0ZjgsIGVuZCAtIHV0
Zjh9OwogICAgICAgICBwYXJ0aWFsUmVnaW9uID0gZ2RrX3BhbmdvX2xheW91dF9saW5lX2dldF9j
bGlwX3JlZ2lvbihsYXlvdXRMaW5lLCAwLCAwLCByYW5nZXMsIDEpOworI2lmZGVmIEdUS19BUElf
VkVSU0lPTl8yCiAgICAgICAgIGdka19yZWdpb25fc2hyaW5rKHBhcnRpYWxSZWdpb24sIDAsIC1w
aXhlbFNpemUoKSk7CisjZWxzZQorICAgICAgICBjYWlyb19yZWdpb25fc2hyaW5rKHBhcnRpYWxS
ZWdpb24sIDAsIC1waXhlbFNpemUoKSk7CisjZW5kaWYKICAgICB9CiAKICAgICBDb2xvciBmaWxs
Q29sb3IgPSBjb250ZXh0LT5maWxsQ29sb3IoKTsKQEAgLTI2NSw3ICsyOTYsMTEgQEAgdm9pZCBG
b250OjpkcmF3Q29tcGxleFRleHQoR3JhcGhpY3NDb250ZXh0KiBjb250ZXh0LCBjb25zdCBUZXh0
UnVuJiBydW4sIGNvbnN0IEYKICAgICBjYWlyb19uZXdfcGF0aChjcik7CiAKICAgICBpZiAocGFy
dGlhbFJlZ2lvbikKKyNpZmRlZiBHVEtfQVBJX1ZFUlNJT05fMgogICAgICAgICBnZGtfcmVnaW9u
X2Rlc3Ryb3kocGFydGlhbFJlZ2lvbik7CisjZWxzZQorICAgICAgICBjYWlyb19yZWdpb25fZGVz
dHJveShwYXJ0aWFsUmVnaW9uKTsKKyNlbmRpZgogCiAgICAgZ19mcmVlKHV0ZjgpOwogICAgIGdf
b2JqZWN0X3VucmVmKGxheW91dCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9H
dGtQbHVnaW5XaWRnZXQuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvR3RrUGx1Z2luV2lkZ2V0
LmNwcAppbmRleCA5NDM4MmYxLi4zMzFmNjBmIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3Jt
L2d0ay9HdGtQbHVnaW5XaWRnZXQuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0d0a1Bs
dWdpbldpZGdldC5jcHAKQEAgLTg3LDcgKzg3LDExIEBAIHZvaWQgR3RrUGx1Z2luV2lkZ2V0Ojpw
YWludChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEludFJlY3QmIHJlY3QpCiAgICAg
ZXZlbnQtPmV4cG9zZS5hcmVhLnggPSBsb2MueCgpOwogICAgIGV2ZW50LT5leHBvc2UuYXJlYS55
ID0gbG9jLnkoKTsKIAorI2lmZGVmIEdUS19BUElfVkVSU0lPTl8yCiAgICAgZXZlbnQtPmV4cG9z
ZS5yZWdpb24gPSBnZGtfcmVnaW9uX3JlY3RhbmdsZSgmZXZlbnQtPmV4cG9zZS5hcmVhKTsKKyNl
bHNlCisgICAgZXZlbnQtPmV4cG9zZS5yZWdpb24gPSBjYWlyb19yZWdpb25fY3JlYXRlX3JlY3Rh
bmdsZSgmZXZlbnQtPmV4cG9zZS5hcmVhKTsKKyNlbmRpZgogCiAgICAgLyoKICAgICAgKiBUaGlz
IHdpbGwgYmUgdW5yZWYnZWQgYnkgZ2RrX2V2ZW50X2ZyZWUuCkBAIC05Nyw3ICsxMDEsMTEgQEAg
dm9pZCBHdGtQbHVnaW5XaWRnZXQ6OnBhaW50KEdyYXBoaWNzQ29udGV4dCogY29udGV4dCwgY29u
c3QgSW50UmVjdCYgcmVjdCkKICAgICAvKgogICAgICAqIElmIHdlIGFyZSBnb2luZyB0byBwYWlu
dCBkbyB0aGUgdHJhbnNsYXRpb24gYW5kIEd0a0FsbG9jYXRpb24gbWFuaXB1bGF0aW9uLgogICAg
ICAqLworI2lmZGVmIEdUS19BUElfVkVSU0lPTl8yCiAgICAgaWYgKCFnZGtfcmVnaW9uX2VtcHR5
KGV2ZW50LT5leHBvc2UucmVnaW9uKSkKKyNlbHNlCisgICAgaWYgKCFjYWlyb19yZWdpb25faXNf
ZW1wdHkoZXZlbnQtPmV4cG9zZS5yZWdpb24pKQorI2VuZGlmCiAgICAgICAgIGd0a193aWRnZXRf
c2VuZF9leHBvc2Uod2lkZ2V0LCBldmVudCk7CiAKICAgICBnZGtfZXZlbnRfZnJlZShldmVudCk7
CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9SZW5kZXJUaGVtZUd0ay5oIGIvV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvUmVuZGVyVGhlbWVHdGsuaAppbmRleCAzZjAyZjBlLi43MTMzOGQ0
IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9SZW5kZXJUaGVtZUd0ay5oCisrKyBi
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1JlbmRlclRoZW1lR3RrLmgKQEAgLTM0LDcgKzM0LDEyIEBA
CiB0eXBlZGVmIHN0cnVjdCBfR3RrV2lkZ2V0IEd0a1dpZGdldDsKIHR5cGVkZWYgc3RydWN0IF9H
dGtTdHlsZSBHdGtTdHlsZTsKIHR5cGVkZWYgc3RydWN0IF9HdGtDb250YWluZXIgR3RrQ29udGFp
bmVyOworI2lmZGVmIEdUS19BUElfVkVSU0lPTl8yCiB0eXBlZGVmIHN0cnVjdCBfR2RrUmVjdGFu
Z2xlIEdka1JlY3RhbmdsZTsKKyNlbHNlCit0eXBlZGVmIHN0cnVjdCBfY2Fpcm9fcmVjdGFuZ2xl
X2ludCBjYWlyb19yZWN0YW5nbGVfaW50X3Q7Cit0eXBlZGVmIGNhaXJvX3JlY3RhbmdsZV9pbnRf
dCBHZGtSZWN0YW5nbGU7CisjZW5kaWYKIHR5cGVkZWYgc3RydWN0IF9HZGtEcmF3YWJsZSBHZGtE
cmF3YWJsZTsKIHR5cGVkZWYgc3RydWN0IF9HdGtCb3JkZXIgR3RrQm9yZGVyOwogdHlwZWRlZiBz
dHJ1Y3QgX0d0a1RoZW1lUGFydHMgR3RrVGhlbWVQYXJ0czsKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL1Njcm9sbGJhckd0ay5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2d0ay9TY3Jv
bGxiYXJHdGsuY3BwCmluZGV4IDVkYzRkZDYuLjgwODFmYjggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL1Njcm9sbGJhckd0ay5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
U2Nyb2xsYmFyR3RrLmNwcApAQCAtMjM4LDcgKzIzOCwxMSBAQCB2b2lkIFNjcm9sbGJhckd0azo6
cGFpbnQoR3JhcGhpY3NDb250ZXh0KiBjb250ZXh0LCBjb25zdCBJbnRSZWN0JiByZWN0KQogICAg
IGV2ZW50LT5leHBvc2UuYXJlYS54ID0gbG9jLngoKTsKICAgICBldmVudC0+ZXhwb3NlLmFyZWEu
eSA9IGxvYy55KCk7CiAKKyNpZmRlZiBHVEtfQVBJX1ZFUlNJT05fMgogICAgIGV2ZW50LT5leHBv
c2UucmVnaW9uID0gZ2RrX3JlZ2lvbl9yZWN0YW5nbGUoJmV2ZW50LT5leHBvc2UuYXJlYSk7Cisj
ZWxzZQorICAgIGV2ZW50LT5leHBvc2UucmVnaW9uID0gY2Fpcm9fcmVnaW9uX2NyZWF0ZV9yZWN0
YW5nbGUoJmV2ZW50LT5leHBvc2UuYXJlYSk7CisjZW5kaWYKIAogICAgIC8qCiAgICAgICogVGhp
cyB3aWxsIGJlIHVucmVmJ2VkIGJ5IGdka19ldmVudF9mcmVlLgpAQCAtMjQ4LDcgKzI1MiwxMSBA
QCB2b2lkIFNjcm9sbGJhckd0azo6cGFpbnQoR3JhcGhpY3NDb250ZXh0KiBjb250ZXh0LCBjb25z
dCBJbnRSZWN0JiByZWN0KQogICAgIC8qCiAgICAgICogSWYgd2UgYXJlIGdvaW5nIHRvIHBhaW50
IGRvIHRoZSB0cmFuc2xhdGlvbiBhbmQgR3RrQWxsb2NhdGlvbiBtYW5pcHVsYXRpb24uCiAgICAg
ICovCisjaWZkZWYgR1RLX0FQSV9WRVJTSU9OXzIKICAgICBpZiAoIWdka19yZWdpb25fZW1wdHko
ZXZlbnQtPmV4cG9zZS5yZWdpb24pKQorI2Vsc2UKKyAgICBpZiAoIWNhaXJvX3JlZ2lvbl9pc19l
bXB0eShldmVudC0+ZXhwb3NlLnJlZ2lvbikpCisjZW5kaWYKICAgICAgICAgZ3RrX3dpZGdldF9z
ZW5kX2V4cG9zZSh3aWRnZXQsIGV2ZW50KTsKIAogICAgIGdka19ldmVudF9mcmVlKGV2ZW50KTsK
ZGlmZiAtLWdpdCBhL1dlYktpdC9ndGsvQ2hhbmdlTG9nIGIvV2ViS2l0L2d0ay9DaGFuZ2VMb2cK
aW5kZXggMDhlN2QxNi4uOTA4MzA1NyAxMDA2NDQKLS0tIGEvV2ViS2l0L2d0ay9DaGFuZ2VMb2cK
KysrIGIvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMC0wNy0wMSAg
WGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgW0dUS10gU3RvcCB1c2luZyBHZGtSZWdpb24gaW4gMy54
IG1vZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQx
NDYzCisKKyAgICAgICAgTWFrZSB1cyBjb21waWxlIHdpdGhvdXQgdXNpbmcgR2RrUmVnaW9uLCBz
aW5jZSBpdCdzIGdvbmUgZnJvbSBHVEsrCisgICAgICAgIDMueC4KKworICAgICAgICAqIFdlYkNv
cmVTdXBwb3J0L0Nocm9tZUNsaWVudEd0ay5jcHA6CisgICAgICAgIChXZWJLaXQ6OkNocm9tZUNs
aWVudDo6c2Nyb2xsKToKKyAgICAgICAgKiB3ZWJraXQvd2Via2l0d2Vidmlldy5jcHA6CisgICAg
ICAgICh3ZWJraXRfd2ViX3ZpZXdfZXhwb3NlX2V2ZW50KToKKwogMjAxMC0wNy0wMSAgTWFydGlu
IFJvYmluc29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
WGFuIExvcGV6LgpkaWZmIC0tZ2l0IGEvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9DaHJvbWVD
bGllbnRHdGsuY3BwIGIvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGllbnRHdGsu
Y3BwCmluZGV4IGZlNWQ5ZWIuLmJiNDY5YzUgMTAwNjQ0Ci0tLSBhL1dlYktpdC9ndGsvV2ViQ29y
ZVN1cHBvcnQvQ2hyb21lQ2xpZW50R3RrLmNwcAorKysgYi9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBw
b3J0L0Nocm9tZUNsaWVudEd0ay5jcHAKQEAgLTM3Miw2ICszNzIsNyBAQCB2b2lkIENocm9tZUNs
aWVudDo6c2Nyb2xsKGNvbnN0IEludFNpemUmIGRlbHRhLCBjb25zdCBJbnRSZWN0JiByZWN0VG9T
Y3JvbGwsIGNvbgogICAgIHNvdXJjZVJlY3QueCAtPSBkZWx0YS53aWR0aCgpOwogICAgIHNvdXJj
ZVJlY3QueSAtPSBkZWx0YS5oZWlnaHQoKTsKIAorI2lmZGVmIEdUS19BUElfVkVSU0lPTl8yCiAg
ICAgR2RrUmVnaW9uKiBpbnZhbGlkUmVnaW9uID0gZ2RrX3JlZ2lvbl9yZWN0YW5nbGUoJmFyZWEp
OwogCiAgICAgaWYgKGdka19yZWN0YW5nbGVfaW50ZXJzZWN0KCZhcmVhLCAmc291cmNlUmVjdCwg
Jm1vdmVSZWN0KSkgewpAQCAtMzg0LDYgKzM4NSwyMSBAQCB2b2lkIENocm9tZUNsaWVudDo6c2Ny
b2xsKGNvbnN0IEludFNpemUmIGRlbHRhLCBjb25zdCBJbnRSZWN0JiByZWN0VG9TY3JvbGwsIGNv
bgogCiAgICAgZ2RrX3dpbmRvd19pbnZhbGlkYXRlX3JlZ2lvbih3aW5kb3csIGludmFsaWRSZWdp
b24sIEZBTFNFKTsKICAgICBnZGtfcmVnaW9uX2Rlc3Ryb3koaW52YWxpZFJlZ2lvbik7CisjZWxz
ZQorICAgIGNhaXJvX3JlZ2lvbl90KiBpbnZhbGlkUmVnaW9uID0gY2Fpcm9fcmVnaW9uX2NyZWF0
ZV9yZWN0YW5nbGUoJmFyZWEpOworCisgICAgaWYgKGdka19yZWN0YW5nbGVfaW50ZXJzZWN0KCZh
cmVhLCAmc291cmNlUmVjdCwgJm1vdmVSZWN0KSkgeworICAgICAgICBjYWlyb19yZWdpb25fdCog
bW92ZVJlZ2lvbiA9IGNhaXJvX3JlZ2lvbl9jcmVhdGVfcmVjdGFuZ2xlKCZtb3ZlUmVjdCk7Cisg
ICAgICAgIGdka193aW5kb3dfbW92ZV9yZWdpb24od2luZG93LCBtb3ZlUmVnaW9uLCBkZWx0YS53
aWR0aCgpLCBkZWx0YS5oZWlnaHQoKSk7CisgICAgICAgIGNhaXJvX3JlZ2lvbl90cmFuc2xhdGUo
bW92ZVJlZ2lvbiwgZGVsdGEud2lkdGgoKSwgZGVsdGEuaGVpZ2h0KCkpOworICAgICAgICBjYWly
b19yZWdpb25fc3VidHJhY3QoaW52YWxpZFJlZ2lvbiwgbW92ZVJlZ2lvbik7CisgICAgICAgIGNh
aXJvX3JlZ2lvbl9kZXN0cm95KG1vdmVSZWdpb24pOworICAgIH0KKworICAgIGdka193aW5kb3df
aW52YWxpZGF0ZV9yZWdpb24od2luZG93LCBpbnZhbGlkUmVnaW9uLCBGQUxTRSk7CisgICAgY2Fp
cm9fcmVnaW9uX2Rlc3Ryb3koaW52YWxpZFJlZ2lvbik7CisjZW5kaWYKKwogfQogCiAvLyBGSVhN
RTogdGhpcyBkb2VzIG5vdCB0YWtlIGludG8gYWNjb3VudCB0aGUgV00gZGVjb3JhdGlvbnMKZGlm
ZiAtLWdpdCBhL1dlYktpdC9ndGsvd2Via2l0L3dlYmtpdHdlYnZpZXcuY3BwIGIvV2ViS2l0L2d0
ay93ZWJraXQvd2Via2l0d2Vidmlldy5jcHAKaW5kZXggZmY0YWE4YS4uNjI5OTdjNSAxMDA2NDQK
LS0tIGEvV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0d2Vidmlldy5jcHAKKysrIGIvV2ViS2l0L2d0
ay93ZWJraXQvd2Via2l0d2Vidmlldy5jcHAKQEAgLTUxNywxMCArNTE3LDE2IEBAIHN0YXRpYyBn
Ym9vbGVhbiB3ZWJraXRfd2ViX3ZpZXdfZXhwb3NlX2V2ZW50KEd0a1dpZGdldCogd2lkZ2V0LCBH
ZGtFdmVudEV4cG9zZSoKICAgICAgICAgY2Fpcm9fZGVzdHJveShjcik7CiAgICAgICAgIGN0eC5z
ZXRHZGtFeHBvc2VFdmVudChldmVudCk7CiAKLSAgICAgICAgR093blB0cjxHZGtSZWN0YW5nbGU+
IHJlY3RzOwogICAgICAgICBpbnQgcmVjdENvdW50OworI2lmZGVmIEdUS19BUElfVkVSU0lPTl8y
CisgICAgICAgIEdPd25QdHI8R2RrUmVjdGFuZ2xlPiByZWN0czsKICAgICAgICAgZ2RrX3JlZ2lv
bl9nZXRfcmVjdGFuZ2xlcyhldmVudC0+cmVnaW9uLCAmcmVjdHMub3V0UHRyKCksICZyZWN0Q291
bnQpOwotCisjZWxzZQorICAgICAgICByZWN0Q291bnQgPSBjYWlyb19yZWdpb25fbnVtX3JlY3Rh
bmdsZXMoZXZlbnQtPnJlZ2lvbik7CisgICAgICAgIEdPd25QdHI8R2RrUmVjdGFuZ2xlPiByZWN0
cyhnX25ldyhHZGtSZWN0YW5nbGUsIHJlY3RDb3VudCkpOworICAgICAgICBmb3IgKGludCBpID0g
MDsgaSA8IHJlY3RDb3VudDsgaSsrKQorICAgICAgICAgICAgY2Fpcm9fcmVnaW9uX2dldF9yZWN0
YW5nbGUoZXZlbnQtPnJlZ2lvbiwgaSwgcmVjdHMuZ2V0KCkraSk7CisjZW5kaWYKICAgICAgICAg
Ly8gQXZvaWQgcmVjdXJzaW5nIGludG8gdGhlIHJlbmRlciB0cmVlIGV4Y2Vzc2l2ZWx5CiAgICAg
ICAgIGJvb2wgY29hbGVzY2UgPSBzaG91bGRDb2FsZXNjZShldmVudC0+YXJlYSwgcmVjdHMuZ2V0
KCksIHJlY3RDb3VudCk7CiAKLS0gCjEuNi42LjEKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>