[Gtk-sharp-list] Propose of new Gnome Glade sample

Jaime Anguiano Olarra jaime@gnome.org
25 Nov 2002 00:50:22 +0100


--=-xibT7JCBEXywCWHgz1Zc
Content-Type: multipart/mixed; boundary="=-dtSDc/az9rIwPcDWZcXc"


--=-dtSDc/az9rIwPcDWZcXc
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Hi!

I have develop this little Gnome Glade based sample and since there
isn't one in the sample directory I would like to know if you would like
me to add it to the CVS. I may add it to the makefiles too, etc at you
desire.

Enjoy!,

Jaime.
--=20
// http://sourceforge.net/projects/monoevo/ Mono Evolutionary. Bringing
AI to GNOME.
// http://www.go-mono.com -- The Mono Project. .NET + freedom.


--=-dtSDc/az9rIwPcDWZcXc
Content-Disposition: attachment; filename=GnomeGlade.cs
Content-Type: text/plain; name=GnomeGlade.cs; charset=ANSI_X3.4-1968
Content-Transfer-Encoding: quoted-printable

/// <summary>
/// A simple GNOME sample that uses LibGlade and it's written in C#.
///=20
/// (c) 2002, Jaime Anguiano Olarra <jaime@gnome.org>
///
/// Thanks to Vladimir for his help :-)
/// </remarks>

namespace GladeSamples {

using System;
using Gtk;
using Gnome;
using Glade;
using GtkSharp;
using System.IO;
using System.Reflection;

public class GladeProgram : Program {
	public static void Main (string[] args) {
		new GladeProgram (args).Run ();
	}
=09
	// Constructor
	public GladeProgram (string[] args, params object[] props)=20
		: base ("GladeTest", "0.1", Modules.UI, args, props) {
	=09
		gxml =3D new Glade.XML (null, "gnome.glade", "test", null);
		gxml.Autoconnect (this);
      	}
	=09
	// Member variables
	// Sometimes we will want to refer the instance of the XML.
	Glade.XML gxml;

	/**********************************************************
	 *  The set of callbacks                                  *
	 **********************************************************/
	public void delete_callback (object o, DeleteEventArgs args) {
		Quit ();
		args.RetVal =3D true;
	}
=09
	public void on_new1_activate (object o, EventArgs e) {
		Console.WriteLine ("implement me");
	}
=09
	public void on_open1_activate (object o, EventArgs e) {
		Console.WriteLine ("implement me");
	}
=09
	public void on_save1_activate (object o, EventArgs e) {
		Console.WriteLine ("implement me");
	}
=09
	public void on_save_as1_activate (object o, EventArgs e) {
		Console.WriteLine ("implement me");
	}
=09
	public void on_quit1_activate (object o, EventArgs e) {
		Quit ();
	}
=09
	public void on_cut1_activate (object o, EventArgs e) {
		Console.WriteLine ("implement me");
	}
=09
	public void on_copy1_activate (object o, EventArgs e) {
		Console.WriteLine ("implement me");
	}
	=09
	public void on_paste1_activate (object o, EventArgs e) {
		Console.WriteLine ("implement me");
	}
=09
	public void on_clear1_activate (object o, EventArgs e) {
		Console.WriteLine ("implement me");
	}
=09
	public void on_properties1_activate (object o, EventArgs e) {
		Console.WriteLine ("implement me");
	}
=09
	public void on_preferences1_activate (object o, EventArgs e) {
		Console.WriteLine ("implement me");
	}
	=09
	public void on_about1_activate (object o, EventArgs e) {
		Console.WriteLine ("implement me");
	}
	=09
	public void on_set_clicked (object o, EventArgs e) {
		Gtk.Entry entry =3D (Gtk.Entry) gxml["entry1"];=20
		Gnome.App app =3D (Gnome.App) gxml["test"];
		if (entry.Text =3D=3D "author") {
			entry.Text =3D "You found the easter egg!";
			app.Title =3D "Mono Jaime";
		} else=20
		app.Title =3D entry.Text;
	}
}
}

--=-dtSDc/az9rIwPcDWZcXc
Content-Disposition: attachment; filename=gnome.glade
Content-Type: application/x-glade; name=gnome.glade
Content-Transfer-Encoding: base64

PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PiA8IS0tKi0gbW9kZTogeG1sIC0q
LS0+CjwhRE9DVFlQRSBnbGFkZS1pbnRlcmZhY2UgU1lTVEVNICJodHRwOi8vZ2xhZGUuZ25vbWUu
b3JnL2dsYWRlLTIuMC5kdGQiPgoKPGdsYWRlLWludGVyZmFjZT4KPHJlcXVpcmVzIGxpYj0iZ25v
bWUiLz4KPHJlcXVpcmVzIGxpYj0iYm9ub2JvIi8+Cgo8d2lkZ2V0IGNsYXNzPSJHbm9tZUFwcCIg
aWQ9InRlc3QiPgogIDxwcm9wZXJ0eSBuYW1lPSJ3aWR0aF9yZXF1ZXN0Ij40MDA8L3Byb3BlcnR5
PgogIDxwcm9wZXJ0eSBuYW1lPSJoZWlnaHRfcmVxdWVzdCI+NDAwPC9wcm9wZXJ0eT4KICA8cHJv
cGVydHkgbmFtZT0idmlzaWJsZSI+VHJ1ZTwvcHJvcGVydHk+CiAgPHByb3BlcnR5IG5hbWU9InRp
dGxlIiB0cmFuc2xhdGFibGU9InllcyI+R25vbWUgR2xhZGUgVGVzdDwvcHJvcGVydHk+CiAgPHBy
b3BlcnR5IG5hbWU9InR5cGUiPkdUS19XSU5ET1dfVE9QTEVWRUw8L3Byb3BlcnR5PgogIDxwcm9w
ZXJ0eSBuYW1lPSJ3aW5kb3dfcG9zaXRpb24iPkdUS19XSU5fUE9TX05PTkU8L3Byb3BlcnR5Pgog
IDxwcm9wZXJ0eSBuYW1lPSJtb2RhbCI+RmFsc2U8L3Byb3BlcnR5PgogIDxwcm9wZXJ0eSBuYW1l
PSJyZXNpemFibGUiPlRydWU8L3Byb3BlcnR5PgogIDxwcm9wZXJ0eSBuYW1lPSJkZXN0cm95X3dp
dGhfcGFyZW50Ij5GYWxzZTwvcHJvcGVydHk+CiAgPHByb3BlcnR5IG5hbWU9ImVuYWJsZV9sYXlv
dXRfY29uZmlnIj5UcnVlPC9wcm9wZXJ0eT4KICA8c2lnbmFsIG5hbWU9ImRlbGV0ZV9ldmVudCIg
aGFuZGxlcj0iZGVsZXRlX2NhbGxiYWNrIiBsYXN0X21vZGlmaWNhdGlvbl90aW1lPSJTdW4sIDI0
IE5vdiAyMDAyIDEyOjU2OjA3IEdNVCIvPgoKICA8Y2hpbGQgaW50ZXJuYWwtY2hpbGQ9ImRvY2si
PgogICAgPHdpZGdldCBjbGFzcz0iQm9ub2JvRG9jayIgaWQ9ImJvbm9ib2RvY2sxIj4KICAgICAg
PHByb3BlcnR5IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgogICAgICA8cHJvcGVydHkg
bmFtZT0iYWxsb3dfZmxvYXRpbmciPlRydWU8L3Byb3BlcnR5PgoKICAgICAgPGNoaWxkPgoJPHdp
ZGdldCBjbGFzcz0iQm9ub2JvRG9ja0l0ZW0iIGlkPSJib25vYm9kb2NraXRlbTEiPgoJICA8cHJv
cGVydHkgbmFtZT0idmlzaWJsZSI+VHJ1ZTwvcHJvcGVydHk+CgkgIDxwcm9wZXJ0eSBuYW1lPSJz
aGFkb3dfdHlwZSI+R1RLX1NIQURPV19OT05FPC9wcm9wZXJ0eT4KCgkgIDxjaGlsZD4KCSAgICA8
d2lkZ2V0IGNsYXNzPSJHdGtNZW51QmFyIiBpZD0ibWVudWJhcjEiPgoJICAgICAgPHByb3BlcnR5
IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgoKCSAgICAgIDxjaGlsZD4KCQk8d2lkZ2V0
IGNsYXNzPSJHdGtJbWFnZU1lbnVJdGVtIiBpZD0iZmlsZTEiPgoJCSAgPHByb3BlcnR5IG5hbWU9
InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgoJCSAgPHByb3BlcnR5IG5hbWU9InN0b2NrX2l0ZW0i
PkdOT01FVUlJTkZPX01FTlVfRklMRV9UUkVFPC9wcm9wZXJ0eT4KCgkJICA8Y2hpbGQ+CgkJICAg
IDx3aWRnZXQgY2xhc3M9Ikd0a01lbnUiIGlkPSJmaWxlMV9tZW51Ij4KCgkJICAgICAgPGNoaWxk
PgoJCQk8d2lkZ2V0IGNsYXNzPSJHdGtJbWFnZU1lbnVJdGVtIiBpZD0ibmV3MSI+CgkJCSAgPHBy
b3BlcnR5IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgoJCQkgIDxwcm9wZXJ0eSBuYW1l
PSJzdG9ja19pdGVtIj5HTk9NRVVJSU5GT19NRU5VX05FV19JVEVNPC9wcm9wZXJ0eT4KCQkJICA8
cHJvcGVydHkgbmFtZT0ibGFiZWwiIHRyYW5zbGF0YWJsZT0ieWVzIj5fTmV3PC9wcm9wZXJ0eT4K
CQkJICA8cHJvcGVydHkgbmFtZT0idXNlX3VuZGVybGluZSI+VHJ1ZTwvcHJvcGVydHk+CgkJCSAg
PHNpZ25hbCBuYW1lPSJhY3RpdmF0ZSIgaGFuZGxlcj0ib25fbmV3MV9hY3RpdmF0ZSIgbGFzdF9t
b2RpZmljYXRpb25fdGltZT0iU3VuLCAyNCBOb3YgMjAwMiAxMjo1NDoxMiBHTVQiLz4KCQkJPC93
aWRnZXQ+CgkJICAgICAgPC9jaGlsZD4KCgkJICAgICAgPGNoaWxkPgoJCQk8d2lkZ2V0IGNsYXNz
PSJHdGtJbWFnZU1lbnVJdGVtIiBpZD0ib3BlbjEiPgoJCQkgIDxwcm9wZXJ0eSBuYW1lPSJ2aXNp
YmxlIj5UcnVlPC9wcm9wZXJ0eT4KCQkJICA8cHJvcGVydHkgbmFtZT0ic3RvY2tfaXRlbSI+R05P
TUVVSUlORk9fTUVOVV9PUEVOX0lURU08L3Byb3BlcnR5PgoJCQkgIDxzaWduYWwgbmFtZT0iYWN0
aXZhdGUiIGhhbmRsZXI9Im9uX29wZW4xX2FjdGl2YXRlIiBsYXN0X21vZGlmaWNhdGlvbl90aW1l
PSJTdW4sIDI0IE5vdiAyMDAyIDEyOjU0OjEyIEdNVCIvPgoJCQk8L3dpZGdldD4KCQkgICAgICA8
L2NoaWxkPgoKCQkgICAgICA8Y2hpbGQ+CgkJCTx3aWRnZXQgY2xhc3M9Ikd0a0ltYWdlTWVudUl0
ZW0iIGlkPSJzYXZlMSI+CgkJCSAgPHByb3BlcnR5IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3Bl
cnR5PgoJCQkgIDxwcm9wZXJ0eSBuYW1lPSJzdG9ja19pdGVtIj5HTk9NRVVJSU5GT19NRU5VX1NB
VkVfSVRFTTwvcHJvcGVydHk+CgkJCSAgPHNpZ25hbCBuYW1lPSJhY3RpdmF0ZSIgaGFuZGxlcj0i
b25fc2F2ZTFfYWN0aXZhdGUiIGxhc3RfbW9kaWZpY2F0aW9uX3RpbWU9IlN1biwgMjQgTm92IDIw
MDIgMTI6NTQ6MTIgR01UIi8+CgkJCTwvd2lkZ2V0PgoJCSAgICAgIDwvY2hpbGQ+CgoJCSAgICAg
IDxjaGlsZD4KCQkJPHdpZGdldCBjbGFzcz0iR3RrSW1hZ2VNZW51SXRlbSIgaWQ9InNhdmVfYXMx
Ij4KCQkJICA8cHJvcGVydHkgbmFtZT0idmlzaWJsZSI+VHJ1ZTwvcHJvcGVydHk+CgkJCSAgPHBy
b3BlcnR5IG5hbWU9InN0b2NrX2l0ZW0iPkdOT01FVUlJTkZPX01FTlVfU0FWRV9BU19JVEVNPC9w
cm9wZXJ0eT4KCQkJICA8c2lnbmFsIG5hbWU9ImFjdGl2YXRlIiBoYW5kbGVyPSJvbl9zYXZlX2Fz
MV9hY3RpdmF0ZSIgbGFzdF9tb2RpZmljYXRpb25fdGltZT0iU3VuLCAyNCBOb3YgMjAwMiAxMjo1
NDoxMiBHTVQiLz4KCQkJPC93aWRnZXQ+CgkJICAgICAgPC9jaGlsZD4KCgkJICAgICAgPGNoaWxk
PgoJCQk8d2lkZ2V0IGNsYXNzPSJHdGtTZXBhcmF0b3JNZW51SXRlbSIgaWQ9InNlcGFyYXRvcjEi
PgoJCQkgIDxwcm9wZXJ0eSBuYW1lPSJ2aXNpYmxlIj5UcnVlPC9wcm9wZXJ0eT4KCQkJPC93aWRn
ZXQ+CgkJICAgICAgPC9jaGlsZD4KCgkJICAgICAgPGNoaWxkPgoJCQk8d2lkZ2V0IGNsYXNzPSJH
dGtJbWFnZU1lbnVJdGVtIiBpZD0icXVpdDEiPgoJCQkgIDxwcm9wZXJ0eSBuYW1lPSJ2aXNpYmxl
Ij5UcnVlPC9wcm9wZXJ0eT4KCQkJICA8cHJvcGVydHkgbmFtZT0ic3RvY2tfaXRlbSI+R05PTUVV
SUlORk9fTUVOVV9FWElUX0lURU08L3Byb3BlcnR5PgoJCQkgIDxzaWduYWwgbmFtZT0iYWN0aXZh
dGUiIGhhbmRsZXI9Im9uX3F1aXQxX2FjdGl2YXRlIiBsYXN0X21vZGlmaWNhdGlvbl90aW1lPSJT
dW4sIDI0IE5vdiAyMDAyIDEyOjU0OjEyIEdNVCIvPgoJCQk8L3dpZGdldD4KCQkgICAgICA8L2No
aWxkPgoJCSAgICA8L3dpZGdldD4KCQkgIDwvY2hpbGQ+CgkJPC93aWRnZXQ+CgkgICAgICA8L2No
aWxkPgoKCSAgICAgIDxjaGlsZD4KCQk8d2lkZ2V0IGNsYXNzPSJHdGtJbWFnZU1lbnVJdGVtIiBp
ZD0iZWRpdDEiPgoJCSAgPHByb3BlcnR5IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgoJ
CSAgPHByb3BlcnR5IG5hbWU9InN0b2NrX2l0ZW0iPkdOT01FVUlJTkZPX01FTlVfRURJVF9UUkVF
PC9wcm9wZXJ0eT4KCgkJICA8Y2hpbGQ+CgkJICAgIDx3aWRnZXQgY2xhc3M9Ikd0a01lbnUiIGlk
PSJlZGl0MV9tZW51Ij4KCgkJICAgICAgPGNoaWxkPgoJCQk8d2lkZ2V0IGNsYXNzPSJHdGtJbWFn
ZU1lbnVJdGVtIiBpZD0iY3V0MSI+CgkJCSAgPHByb3BlcnR5IG5hbWU9InZpc2libGUiPlRydWU8
L3Byb3BlcnR5PgoJCQkgIDxwcm9wZXJ0eSBuYW1lPSJzdG9ja19pdGVtIj5HTk9NRVVJSU5GT19N
RU5VX0NVVF9JVEVNPC9wcm9wZXJ0eT4KCQkJICA8c2lnbmFsIG5hbWU9ImFjdGl2YXRlIiBoYW5k
bGVyPSJvbl9jdXQxX2FjdGl2YXRlIiBsYXN0X21vZGlmaWNhdGlvbl90aW1lPSJTdW4sIDI0IE5v
diAyMDAyIDEyOjU0OjEyIEdNVCIvPgoJCQk8L3dpZGdldD4KCQkgICAgICA8L2NoaWxkPgoKCQkg
ICAgICA8Y2hpbGQ+CgkJCTx3aWRnZXQgY2xhc3M9Ikd0a0ltYWdlTWVudUl0ZW0iIGlkPSJjb3B5
MSI+CgkJCSAgPHByb3BlcnR5IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgoJCQkgIDxw
cm9wZXJ0eSBuYW1lPSJzdG9ja19pdGVtIj5HTk9NRVVJSU5GT19NRU5VX0NPUFlfSVRFTTwvcHJv
cGVydHk+CgkJCSAgPHNpZ25hbCBuYW1lPSJhY3RpdmF0ZSIgaGFuZGxlcj0ib25fY29weTFfYWN0
aXZhdGUiIGxhc3RfbW9kaWZpY2F0aW9uX3RpbWU9IlN1biwgMjQgTm92IDIwMDIgMTI6NTQ6MTIg
R01UIi8+CgkJCTwvd2lkZ2V0PgoJCSAgICAgIDwvY2hpbGQ+CgoJCSAgICAgIDxjaGlsZD4KCQkJ
PHdpZGdldCBjbGFzcz0iR3RrSW1hZ2VNZW51SXRlbSIgaWQ9InBhc3RlMSI+CgkJCSAgPHByb3Bl
cnR5IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgoJCQkgIDxwcm9wZXJ0eSBuYW1lPSJz
dG9ja19pdGVtIj5HTk9NRVVJSU5GT19NRU5VX1BBU1RFX0lURU08L3Byb3BlcnR5PgoJCQkgIDxz
aWduYWwgbmFtZT0iYWN0aXZhdGUiIGhhbmRsZXI9Im9uX3Bhc3RlMV9hY3RpdmF0ZSIgbGFzdF9t
b2RpZmljYXRpb25fdGltZT0iU3VuLCAyNCBOb3YgMjAwMiAxMjo1NDoxMiBHTVQiLz4KCQkJPC93
aWRnZXQ+CgkJICAgICAgPC9jaGlsZD4KCgkJICAgICAgPGNoaWxkPgoJCQk8d2lkZ2V0IGNsYXNz
PSJHdGtJbWFnZU1lbnVJdGVtIiBpZD0iY2xlYXIxIj4KCQkJICA8cHJvcGVydHkgbmFtZT0idmlz
aWJsZSI+VHJ1ZTwvcHJvcGVydHk+CgkJCSAgPHByb3BlcnR5IG5hbWU9InN0b2NrX2l0ZW0iPkdO
T01FVUlJTkZPX01FTlVfQ0xFQVJfSVRFTTwvcHJvcGVydHk+CgkJCSAgPHNpZ25hbCBuYW1lPSJh
Y3RpdmF0ZSIgaGFuZGxlcj0ib25fY2xlYXIxX2FjdGl2YXRlIiBsYXN0X21vZGlmaWNhdGlvbl90
aW1lPSJTdW4sIDI0IE5vdiAyMDAyIDEyOjU0OjEyIEdNVCIvPgoJCQk8L3dpZGdldD4KCQkgICAg
ICA8L2NoaWxkPgoKCQkgICAgICA8Y2hpbGQ+CgkJCTx3aWRnZXQgY2xhc3M9Ikd0a1NlcGFyYXRv
ck1lbnVJdGVtIiBpZD0ic2VwYXJhdG9yMiI+CgkJCSAgPHByb3BlcnR5IG5hbWU9InZpc2libGUi
PlRydWU8L3Byb3BlcnR5PgoJCQk8L3dpZGdldD4KCQkgICAgICA8L2NoaWxkPgoKCQkgICAgICA8
Y2hpbGQ+CgkJCTx3aWRnZXQgY2xhc3M9Ikd0a0ltYWdlTWVudUl0ZW0iIGlkPSJwcm9wZXJ0aWVz
MSI+CgkJCSAgPHByb3BlcnR5IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgoJCQkgIDxw
cm9wZXJ0eSBuYW1lPSJzdG9ja19pdGVtIj5HTk9NRVVJSU5GT19NRU5VX1BST1BFUlRJRVNfSVRF
TTwvcHJvcGVydHk+CgkJCSAgPHNpZ25hbCBuYW1lPSJhY3RpdmF0ZSIgaGFuZGxlcj0ib25fcHJv
cGVydGllczFfYWN0aXZhdGUiIGxhc3RfbW9kaWZpY2F0aW9uX3RpbWU9IlN1biwgMjQgTm92IDIw
MDIgMTI6NTQ6MTIgR01UIi8+CgkJCTwvd2lkZ2V0PgoJCSAgICAgIDwvY2hpbGQ+CgoJCSAgICAg
IDxjaGlsZD4KCQkJPHdpZGdldCBjbGFzcz0iR3RrU2VwYXJhdG9yTWVudUl0ZW0iIGlkPSJzZXBh
cmF0b3IzIj4KCQkJICA8cHJvcGVydHkgbmFtZT0idmlzaWJsZSI+VHJ1ZTwvcHJvcGVydHk+CgkJ
CTwvd2lkZ2V0PgoJCSAgICAgIDwvY2hpbGQ+CgoJCSAgICAgIDxjaGlsZD4KCQkJPHdpZGdldCBj
bGFzcz0iR3RrSW1hZ2VNZW51SXRlbSIgaWQ9InByZWZlcmVuY2VzMSI+CgkJCSAgPHByb3BlcnR5
IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgoJCQkgIDxwcm9wZXJ0eSBuYW1lPSJzdG9j
a19pdGVtIj5HTk9NRVVJSU5GT19NRU5VX1BSRUZFUkVOQ0VTX0lURU08L3Byb3BlcnR5PgoJCQkg
IDxzaWduYWwgbmFtZT0iYWN0aXZhdGUiIGhhbmRsZXI9Im9uX3ByZWZlcmVuY2VzMV9hY3RpdmF0
ZSIgbGFzdF9tb2RpZmljYXRpb25fdGltZT0iU3VuLCAyNCBOb3YgMjAwMiAxMjo1NDoxMiBHTVQi
Lz4KCQkJPC93aWRnZXQ+CgkJICAgICAgPC9jaGlsZD4KCQkgICAgPC93aWRnZXQ+CgkJICA8L2No
aWxkPgoJCTwvd2lkZ2V0PgoJICAgICAgPC9jaGlsZD4KCgkgICAgICA8Y2hpbGQ+CgkJPHdpZGdl
dCBjbGFzcz0iR3RrSW1hZ2VNZW51SXRlbSIgaWQ9InZpZXcxIj4KCQkgIDxwcm9wZXJ0eSBuYW1l
PSJ2aXNpYmxlIj5UcnVlPC9wcm9wZXJ0eT4KCQkgIDxwcm9wZXJ0eSBuYW1lPSJzdG9ja19pdGVt
Ij5HTk9NRVVJSU5GT19NRU5VX1ZJRVdfVFJFRTwvcHJvcGVydHk+CgoJCSAgPGNoaWxkPgoJCSAg
ICA8d2lkZ2V0IGNsYXNzPSJHdGtNZW51IiBpZD0idmlldzFfbWVudSI+CgkJICAgIDwvd2lkZ2V0
PgoJCSAgPC9jaGlsZD4KCQk8L3dpZGdldD4KCSAgICAgIDwvY2hpbGQ+CgoJICAgICAgPGNoaWxk
PgoJCTx3aWRnZXQgY2xhc3M9Ikd0a0ltYWdlTWVudUl0ZW0iIGlkPSJoZWxwMSI+CgkJICA8cHJv
cGVydHkgbmFtZT0idmlzaWJsZSI+VHJ1ZTwvcHJvcGVydHk+CgkJICA8cHJvcGVydHkgbmFtZT0i
c3RvY2tfaXRlbSI+R05PTUVVSUlORk9fTUVOVV9IRUxQX1RSRUU8L3Byb3BlcnR5PgoKCQkgIDxj
aGlsZD4KCQkgICAgPHdpZGdldCBjbGFzcz0iR3RrTWVudSIgaWQ9ImhlbHAxX21lbnUiPgoKCQkg
ICAgICA8Y2hpbGQ+CgkJCTx3aWRnZXQgY2xhc3M9Ikd0a0ltYWdlTWVudUl0ZW0iIGlkPSJhYm91
dDEiPgoJCQkgIDxwcm9wZXJ0eSBuYW1lPSJ2aXNpYmxlIj5UcnVlPC9wcm9wZXJ0eT4KCQkJICA8
cHJvcGVydHkgbmFtZT0ic3RvY2tfaXRlbSI+R05PTUVVSUlORk9fTUVOVV9BQk9VVF9JVEVNPC9w
cm9wZXJ0eT4KCQkJICA8c2lnbmFsIG5hbWU9ImFjdGl2YXRlIiBoYW5kbGVyPSJvbl9hYm91dDFf
YWN0aXZhdGUiIGxhc3RfbW9kaWZpY2F0aW9uX3RpbWU9IlN1biwgMjQgTm92IDIwMDIgMTI6NTQ6
MTIgR01UIi8+CgkJCTwvd2lkZ2V0PgoJCSAgICAgIDwvY2hpbGQ+CgkJICAgIDwvd2lkZ2V0PgoJ
CSAgPC9jaGlsZD4KCQk8L3dpZGdldD4KCSAgICAgIDwvY2hpbGQ+CgkgICAgPC93aWRnZXQ+Cgkg
IDwvY2hpbGQ+Cgk8L3dpZGdldD4KCTxwYWNraW5nPgoJICA8cHJvcGVydHkgbmFtZT0icGxhY2Vt
ZW50Ij5CT05PQk9fRE9DS19UT1A8L3Byb3BlcnR5PgoJICA8cHJvcGVydHkgbmFtZT0iYmFuZCI+
MDwvcHJvcGVydHk+CgkgIDxwcm9wZXJ0eSBuYW1lPSJwb3NpdGlvbiI+MDwvcHJvcGVydHk+Cgkg
IDxwcm9wZXJ0eSBuYW1lPSJvZmZzZXQiPjA8L3Byb3BlcnR5PgoJICA8cHJvcGVydHkgbmFtZT0i
YmVoYXZpb3IiPkJPTk9CT19ET0NLX0lURU1fQkVIX0VYQ0xVU0lWRXxCT05PQk9fRE9DS19JVEVN
X0JFSF9ORVZFUl9WRVJUSUNBTHxCT05PQk9fRE9DS19JVEVNX0JFSF9MT0NLRUQ8L3Byb3BlcnR5
PgoJPC9wYWNraW5nPgogICAgICA8L2NoaWxkPgoKICAgICAgPGNoaWxkPgoJPHdpZGdldCBjbGFz
cz0iQm9ub2JvRG9ja0l0ZW0iIGlkPSJib25vYm9kb2NraXRlbTIiPgoJICA8cHJvcGVydHkgbmFt
ZT0idmlzaWJsZSI+VHJ1ZTwvcHJvcGVydHk+CgkgIDxwcm9wZXJ0eSBuYW1lPSJzaGFkb3dfdHlw
ZSI+R1RLX1NIQURPV19PVVQ8L3Byb3BlcnR5PgoKCSAgPGNoaWxkPgoJICAgIDx3aWRnZXQgY2xh
c3M9Ikd0a1Rvb2xiYXIiIGlkPSJ0b29sYmFyMSI+CgkgICAgICA8cHJvcGVydHkgbmFtZT0iYm9y
ZGVyX3dpZHRoIj4xPC9wcm9wZXJ0eT4KCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ2aXNpYmxlIj5U
cnVlPC9wcm9wZXJ0eT4KCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJvcmllbnRhdGlvbiI+R1RLX09S
SUVOVEFUSU9OX0hPUklaT05UQUw8L3Byb3BlcnR5PgoJICAgICAgPHByb3BlcnR5IG5hbWU9InRv
b2xiYXJfc3R5bGUiPkdUS19UT09MQkFSX0JPVEg8L3Byb3BlcnR5PgoJICAgICAgPHByb3BlcnR5
IG5hbWU9InRvb2x0aXBzIj5UcnVlPC9wcm9wZXJ0eT4KCgkgICAgICA8Y2hpbGQ+CgkJPHdpZGdl
dCBjbGFzcz0iYnV0dG9uIiBpZD0iYnV0dG9uMSI+CgkJICA8cHJvcGVydHkgbmFtZT0idmlzaWJs
ZSI+VHJ1ZTwvcHJvcGVydHk+CgkJICA8cHJvcGVydHkgbmFtZT0idG9vbHRpcCIgdHJhbnNsYXRh
YmxlPSJ5ZXMiPk5ldyBGaWxlPC9wcm9wZXJ0eT4KCQkgIDxwcm9wZXJ0eSBuYW1lPSJsYWJlbCI+
Z3RrLW5ldzwvcHJvcGVydHk+CgkJICA8cHJvcGVydHkgbmFtZT0idXNlX3N0b2NrIj5UcnVlPC9w
cm9wZXJ0eT4KCQk8L3dpZGdldD4KCSAgICAgIDwvY2hpbGQ+CgoJICAgICAgPGNoaWxkPgoJCTx3
aWRnZXQgY2xhc3M9ImJ1dHRvbiIgaWQ9ImJ1dHRvbjIiPgoJCSAgPHByb3BlcnR5IG5hbWU9InZp
c2libGUiPlRydWU8L3Byb3BlcnR5PgoJCSAgPHByb3BlcnR5IG5hbWU9InRvb2x0aXAiIHRyYW5z
bGF0YWJsZT0ieWVzIj5PcGVuIEZpbGU8L3Byb3BlcnR5PgoJCSAgPHByb3BlcnR5IG5hbWU9Imxh
YmVsIj5ndGstb3BlbjwvcHJvcGVydHk+CgkJICA8cHJvcGVydHkgbmFtZT0idXNlX3N0b2NrIj5U
cnVlPC9wcm9wZXJ0eT4KCQk8L3dpZGdldD4KCSAgICAgIDwvY2hpbGQ+CgoJICAgICAgPGNoaWxk
PgoJCTx3aWRnZXQgY2xhc3M9ImJ1dHRvbiIgaWQ9ImJ1dHRvbjMiPgoJCSAgPHByb3BlcnR5IG5h
bWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgoJCSAgPHByb3BlcnR5IG5hbWU9InRvb2x0aXAi
IHRyYW5zbGF0YWJsZT0ieWVzIj5TYXZlIEZpbGU8L3Byb3BlcnR5PgoJCSAgPHByb3BlcnR5IG5h
bWU9ImxhYmVsIj5ndGstc2F2ZTwvcHJvcGVydHk+CgkJICA8cHJvcGVydHkgbmFtZT0idXNlX3N0
b2NrIj5UcnVlPC9wcm9wZXJ0eT4KCQk8L3dpZGdldD4KCSAgICAgIDwvY2hpbGQ+CgkgICAgPC93
aWRnZXQ+CgkgIDwvY2hpbGQ+Cgk8L3dpZGdldD4KCTxwYWNraW5nPgoJICA8cHJvcGVydHkgbmFt
ZT0icGxhY2VtZW50Ij5CT05PQk9fRE9DS19UT1A8L3Byb3BlcnR5PgoJICA8cHJvcGVydHkgbmFt
ZT0iYmFuZCI+MTwvcHJvcGVydHk+CgkgIDxwcm9wZXJ0eSBuYW1lPSJwb3NpdGlvbiI+MDwvcHJv
cGVydHk+CgkgIDxwcm9wZXJ0eSBuYW1lPSJvZmZzZXQiPjA8L3Byb3BlcnR5PgoJICA8cHJvcGVy
dHkgbmFtZT0iYmVoYXZpb3IiPkJPTk9CT19ET0NLX0lURU1fQkVIX0VYQ0xVU0lWRTwvcHJvcGVy
dHk+Cgk8L3BhY2tpbmc+CiAgICAgIDwvY2hpbGQ+CgogICAgICA8Y2hpbGQ+Cgk8d2lkZ2V0IGNs
YXNzPSJHdGtWQm94IiBpZD0idmJveDEiPgoJICA8cHJvcGVydHkgbmFtZT0idmlzaWJsZSI+VHJ1
ZTwvcHJvcGVydHk+CgkgIDxwcm9wZXJ0eSBuYW1lPSJob21vZ2VuZW91cyI+RmFsc2U8L3Byb3Bl
cnR5PgoJICA8cHJvcGVydHkgbmFtZT0ic3BhY2luZyI+MDwvcHJvcGVydHk+CgoJICA8Y2hpbGQ+
CgkgICAgPHdpZGdldCBjbGFzcz0iR3RrRW50cnkiIGlkPSJlbnRyeTEiPgoJICAgICAgPHByb3Bl
cnR5IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgoJICAgICAgPHByb3BlcnR5IG5hbWU9
ImNhbl9mb2N1cyI+VHJ1ZTwvcHJvcGVydHk+CgkgICAgICA8cHJvcGVydHkgbmFtZT0iZWRpdGFi
bGUiPlRydWU8L3Byb3BlcnR5PgoJICAgICAgPHByb3BlcnR5IG5hbWU9InZpc2liaWxpdHkiPlRy
dWU8L3Byb3BlcnR5PgoJICAgICAgPHByb3BlcnR5IG5hbWU9Im1heF9sZW5ndGgiPjA8L3Byb3Bl
cnR5PgoJICAgICAgPHByb3BlcnR5IG5hbWU9InRleHQiIHRyYW5zbGF0YWJsZT0ieWVzIj5FbnRl
ciB0aGUgbmV3IHRpdGxlIGZvciB0aGlzIHdpbmRvdzwvcHJvcGVydHk+CgkgICAgICA8cHJvcGVy
dHkgbmFtZT0iaGFzX2ZyYW1lIj5UcnVlPC9wcm9wZXJ0eT4KCSAgICAgIDxwcm9wZXJ0eSBuYW1l
PSJpbnZpc2libGVfY2hhciIgdHJhbnNsYXRhYmxlPSJ5ZXMiPio8L3Byb3BlcnR5PgoJICAgICAg
PHByb3BlcnR5IG5hbWU9ImFjdGl2YXRlc19kZWZhdWx0Ij5GYWxzZTwvcHJvcGVydHk+CgkgICAg
PC93aWRnZXQ+CgkgICAgPHBhY2tpbmc+CgkgICAgICA8cHJvcGVydHkgbmFtZT0icGFkZGluZyI+
MDwvcHJvcGVydHk+CgkgICAgICA8cHJvcGVydHkgbmFtZT0iZXhwYW5kIj5GYWxzZTwvcHJvcGVy
dHk+CgkgICAgICA8cHJvcGVydHkgbmFtZT0iZmlsbCI+RmFsc2U8L3Byb3BlcnR5PgoJICAgIDwv
cGFja2luZz4KCSAgPC9jaGlsZD4KCgkgIDxjaGlsZD4KCSAgICA8d2lkZ2V0IGNsYXNzPSJHdGtC
dXR0b24iIGlkPSJidXR0b240Ij4KCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ2aXNpYmxlIj5UcnVl
PC9wcm9wZXJ0eT4KCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJjYW5fZGVmYXVsdCI+VHJ1ZTwvcHJv
cGVydHk+CgkgICAgICA8cHJvcGVydHkgbmFtZT0iY2FuX2ZvY3VzIj5UcnVlPC9wcm9wZXJ0eT4K
CSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJsYWJlbCIgdHJhbnNsYXRhYmxlPSJ5ZXMiPlNldCBuZXcg
dGl0bGU8L3Byb3BlcnR5PgoJICAgICAgPHByb3BlcnR5IG5hbWU9InVzZV91bmRlcmxpbmUiPlRy
dWU8L3Byb3BlcnR5PgoJICAgICAgPHByb3BlcnR5IG5hbWU9InJlbGllZiI+R1RLX1JFTElFRl9O
T1JNQUw8L3Byb3BlcnR5PgoJICAgICAgPHNpZ25hbCBuYW1lPSJjbGlja2VkIiBoYW5kbGVyPSJv
bl9zZXRfY2xpY2tlZCIgbGFzdF9tb2RpZmljYXRpb25fdGltZT0iU3VuLCAyNCBOb3YgMjAwMiAx
Mzo1NjoyNSBHTVQiLz4KCSAgICA8L3dpZGdldD4KCSAgICA8cGFja2luZz4KCSAgICAgIDxwcm9w
ZXJ0eSBuYW1lPSJwYWRkaW5nIj4wPC9wcm9wZXJ0eT4KCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJl
eHBhbmQiPkZhbHNlPC9wcm9wZXJ0eT4KCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJmaWxsIj5GYWxz
ZTwvcHJvcGVydHk+CgkgICAgPC9wYWNraW5nPgoJICA8L2NoaWxkPgoJPC93aWRnZXQ+CiAgICAg
IDwvY2hpbGQ+CiAgICA8L3dpZGdldD4KICAgIDxwYWNraW5nPgogICAgICA8cHJvcGVydHkgbmFt
ZT0icGFkZGluZyI+MDwvcHJvcGVydHk+CiAgICAgIDxwcm9wZXJ0eSBuYW1lPSJleHBhbmQiPlRy
dWU8L3Byb3BlcnR5PgogICAgICA8cHJvcGVydHkgbmFtZT0iZmlsbCI+VHJ1ZTwvcHJvcGVydHk+
CiAgICA8L3BhY2tpbmc+CiAgPC9jaGlsZD4KCiAgPGNoaWxkIGludGVybmFsLWNoaWxkPSJhcHBi
YXIiPgogICAgPHdpZGdldCBjbGFzcz0iR25vbWVBcHBCYXIiIGlkPSJhcHBiYXIxIj4KICAgICAg
PHByb3BlcnR5IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgogICAgICA8cHJvcGVydHkg
bmFtZT0iaGFzX3Byb2dyZXNzIj5UcnVlPC9wcm9wZXJ0eT4KICAgICAgPHByb3BlcnR5IG5hbWU9
Imhhc19zdGF0dXMiPlRydWU8L3Byb3BlcnR5PgogICAgPC93aWRnZXQ+CiAgICA8cGFja2luZz4K
ICAgICAgPHByb3BlcnR5IG5hbWU9InBhZGRpbmciPjA8L3Byb3BlcnR5PgogICAgICA8cHJvcGVy
dHkgbmFtZT0iZXhwYW5kIj5UcnVlPC9wcm9wZXJ0eT4KICAgICAgPHByb3BlcnR5IG5hbWU9ImZp
bGwiPlRydWU8L3Byb3BlcnR5PgogICAgPC9wYWNraW5nPgogIDwvY2hpbGQ+Cjwvd2lkZ2V0PgoK
PHdpZGdldCBjbGFzcz0iR25vbWVBYm91dCIgaWQ9ImFib3V0MiI+CiAgPHByb3BlcnR5IG5hbWU9
InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgogIDxwcm9wZXJ0eSBuYW1lPSJkZXN0cm95X3dpdGhf
cGFyZW50Ij5GYWxzZTwvcHJvcGVydHk+CiAgPHByb3BlcnR5IG5hbWU9ImNvcHlyaWdodCIgdHJh
bnNsYXRhYmxlPSJ5ZXMiPihjKSAyMDAyLCBKYWltZSBBbmd1aWFubyBPbGFycmE8L3Byb3BlcnR5
PgogIDxwcm9wZXJ0eSBuYW1lPSJjb21tZW50cyIgdHJhbnNsYXRhYmxlPSJ5ZXMiPlVuYSBwcnVl
YmEgZGUgR05PTUUgY29uIGxpYmdsYWRlLjwvcHJvcGVydHk+CiAgPHByb3BlcnR5IG5hbWU9ImF1
dGhvcnMiPkphaW1lIEFuZ3VpYW5vIE9sYXJyYTwvcHJvcGVydHk+CiAgPHByb3BlcnR5IG5hbWU9
InRyYW5zbGF0b3JfY3JlZGl0cyIgdHJhbnNsYXRhYmxlPSJ5ZXMiPnRyYW5zbGF0b3JfY3JlZGl0
czwvcHJvcGVydHk+Cjwvd2lkZ2V0PgoKPC9nbGFkZS1pbnRlcmZhY2U+Cn==

--=-dtSDc/az9rIwPcDWZcXc--

--=-xibT7JCBEXywCWHgz1Zc
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: This is a digitally signed message part

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQA94WW+0ZuGtECkr6cRArmSAJ9vKddVmHy2h8k168TdfV9EDeOmAgCfU6FR
oGZtm18lWuu0Fn9gFjbR9LM=
=pbLL
-----END PGP SIGNATURE-----

--=-xibT7JCBEXywCWHgz1Zc--