<?xml version="1.0" encoding="UTF-8"?>
<Export generator="Cache" version="25" zv="Cache for Windows (x86-64) 2011.1.2 (Build 701U)" ts="2011-12-12 16:19:19">
<Project name="Agris">
  <Items>
    <ProjectItem name="Alliance.Agris.Logic.Generator" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Logic.InvoiceGenerator" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Logic.Qry" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Setup.CommunicationParamsSetupPage" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Setup.Initializer" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Setup.SetupService" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Setup.Version" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.WS.WSServiceReceiveNewOrder" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.WS.WSServiceReturnDespatchAdvice" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.WS.WSServiceReturnFinalOrder" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.WS.WSServiceReturnInvoice" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Web.AjaxHelper" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Web.ArticleActivator" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Web.ArticleSearch" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Web.BasePage" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Web.ExranetPortalApp" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Web.JSON.Adaptor" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Web.JSON.Array" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Web.JSON.Object" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Web.JSON.Parser" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Web.JSON.PropClass" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Web.PDFDownload" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Web.SecurePage" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.KAL.Code.MessageSenderType" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.KAL.Code.MessageSeverity" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.KAL.Code.MessageSubType" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.KAL.Code.MessageType" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.KAL.Code.SystemType" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.KAL.CommunicationParams" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.KAL.KeepAliveTask" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.KAL.Message" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.KAL.MessagesUnprocessed" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.KAL.WSClientMessageSender" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Core.ObjectHeader" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.DespatchAdvice.DespatchAdvice" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.DespatchAdvice.EDIHeader" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.DespatchAdvice.ItemDetails" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.DespatchAdvice.PackageInfo" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.DespatchAdvice.PackageUnit" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.DespatchAdvice.PartyInfo" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.DespatchAdvice.TransportDetails" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Invoice.AllowanceOrCharge" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Invoice.EDIHeader" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Invoice.Invoice" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Invoice.InvoiceLine" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Invoice.ItemDescription" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Invoice.MonetaryDetail" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Invoice.PartyInformation" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Invoice.PaymentTerms" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Invoice.PriceInfo" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Invoice.ProductId" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Invoice.QuantityInfo" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Invoice.ReferenceInfo" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Invoice.TaxDetail" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.Buyer" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.CurrencyDetails" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.DeliveryParty" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.DeliveryTerms" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.EDIDTM" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.EDIFTX" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.EDIInfo" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.ItemDescription" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.Order" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.OrderLine" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.PartyInformation" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.PaymentTerms" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.PriceInformation" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.Common.Model.Order.Supplier" type="CLS"></ProjectItem>
    <ProjectItem name="Alliance.INC" type="MAC"></ProjectItem>
    <ProjectItem name="csp/cbt/AgrisMLogin.csp" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/AgrisMLoginCheck.csp" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/Angebot.csp" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/AngebotSave.csp" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/AngebotsCopy.csp" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/Angebotsplan.csp" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/AngebotsplanSave.csp" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/DlgCopyAngebot.csp" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/Lieferbestaetigung.csp" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/LieferbestaetigungSave.csp" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/UebersichtOffeneLieferungen.CSP" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/alliance.css" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/background_lighter_style.css" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/elements_green_style.css" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/general.css" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/header_green_style.css" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/menu.css" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-bg_flat_0_aaaaaa_40x100.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-bg_flat_0_eeeeee_40x100.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-bg_flat_55_c0402a_40x100.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-bg_flat_55_eeeeee_40x100.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-bg_glass_100_f8f8f8_1x400.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-bg_glass_35_dddddd_1x400.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-bg_glass_60_eeeeee_1x400.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-bg_inset-hard_75_999999_1x100.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-bg_inset-soft_50_c9c9c9_1x100.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-icons_3383bb_256x240.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-icons_454545_256x240.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-icons_70b2e1_256x240.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-icons_999999_256x240.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/images/ui-icons_fbc856_256x240.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/overcast/jquery-ui-1.8.6.custom.css" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/system.css" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/css/template.css" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/default.html" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/index.html" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/basicfunctions.js" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/blank.gif" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_close.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_loading.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_nav_left.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_nav_right.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_shadow_e.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_shadow_n.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_shadow_ne.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_shadow_nw.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_shadow_s.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_shadow_se.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_shadow_sw.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_shadow_w.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_title_left.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_title_main.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_title_over.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancy_title_right.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancybox-x.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancybox-y.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/fancybox.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/jquery.easing-1.3.pack.js" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/jquery.fancybox-1.3.4.css" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/jquery.fancybox-1.3.4.js" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/jquery.fancybox-1.3.4.pack.js" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/fancybox/jquery.mousewheel-3.0.4.pack.js" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/guiFunctions.js" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/jquery-1.4.3.min.js" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/jquery-ui-1.8.6.custom.min.js" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/prototype-1.6.0.3.js" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/scw.js" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/js/sha512.js" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/logout.csp" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/arrow.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/arrows.bmp" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/bullet.gif" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/bullet3.gif" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/c-bg1.gif" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/c-bg2.gif" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/cw-bg1.gif" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/cw-bg2.gif" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/grad1.gif" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/grad3.gif" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/hdot.gif" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/hdot2.gif" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/header-mask.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/header1.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/header2.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/header3.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/logo.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/navigate_left.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/navigate_right.png" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/pics/vdot.gif" type="CSP"></ProjectItem>
    <ProjectItem name="csp/cbt/scwblank.html" type="CSP"></ProjectItem>
    <ProjectItem name="Alliance.Agris.Web.BaseSessionEvents" type="CLS"></ProjectItem>
  </Items>
</Project>


<Class name="Alliance.Agris.Logic.Generator">
<Description><![CDATA[

Generator:
	Letzte Änderung 06.07.2010 rz
06.07.2010 * Stacktrace nicht mehr in KAL schreiben bei Speicherfehler
09.06.2010 + Aktionspreise und Individualpreise je VZ
19.05.2010 * Fehler in GenerateAuftrag korrigiert -> KAL Parameter ausserhalb definiert
03.05.2010 + Kommentarheader hinzugefügt]]></Description>
<Super>%RegisteredObject</Super>
<TimeChanged>62375,36104.615168</TimeChanged>
<TimeCreated>61829,43330.328416</TimeCreated>

<Parameter name="GEBINDEKENNUNG1">
<Description>
Wenn ZCO, ist die AnzahlGebinde (OrderedQty) direkt die Anzahl Gebinde,
ansonsten muss diese Menge noch durch AnzahlJeGebinde vom spez. Artikel geteilt werden</Description>
<Default>ZCO</Default>
</Parameter>

<Parameter name="GEBINDEKENNUNG2">
<Description>
Wenn ZIF, ist die AnzahlGebinde (OrderedQty) direkt die Anzahl Gebinde,
ansonsten muss diese Menge noch durch AnzahlJeGebinde vom spez. Artikel geteilt werden</Description>
<Default>ZIF</Default>
</Parameter>

<Method name="GenerateAuftragByOid">
<ClassMethod>1</ClassMethod>
<FormalSpec>OrderOid:%String</FormalSpec>
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[
	set order = ##class(Alliance.Common.Model.Order.Order).%OpenId(OrderOid)
	quit ..GenerateAuftrag(.order, 1)
]]></Implementation>
</Method>

<Method name="GenerateAuftrag">
<ClassMethod>1</ClassMethod>
<FormalSpec><![CDATA[&Order:Alliance.Common.Model.Order.Order,TriggeredFromDotNet:%Boolean=0]]></FormalSpec>
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[

	set retval = 0
	
	//Plattformmandant auslesen
	set mandOid = ##class(DBCore.AppEinstellung).GetStringEinst(##class(DBCore.Konst).PLATTFORMMANDANT())
	set updatePreise = ##class(DBCore.MandantEinstellung).GetBoolEinst(mandOid, ##class(DBCore.Konst).AGROFRESHEDIPREISUEBERNEHMEN())
	
	//Abnehmer auslesen
	set abnehmerOid = ##class(DBDebiKredi.Debitor).GetIdByWebEdiId(mandOid, Order.DeliveryParty.PartyId)
	
	
	set kopfState = $$$OK
	set detailState = $$$OK
	set errorOccured = 0
	
	//KAL Messagetypen initialisieren
	set typ = ##class(Alliance.Common.KAL.Code.MessageType).Lieferung()
	set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).Information()
	set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisM()
	set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Error()
	set msgStatus = $$$OK
	set addText = ""
	
	if (abnehmerOid '= "") {
		
		TSTART
		
		set kopf = ##class(DBPlattform.AuftragsKopf).%New()
		set kopf.Mandant = mandOid
		set kopf.Abnehmer = ##class(DBDebiKredi.Debitor).%OpenId(abnehmerOid)
		set kopf.Auftragsdatum = Order.DocumentDateTime.Date
		set kopf.Lieferdatum = Order.ReqDeliveryDate.Date
		set kopf.BestellNr = Order.OrderNo
		set kopf.MasterID = Order.MasterID
		set kopf.ItemID = Order.ItemID
		set kopfState = kopf.%Save()
		w kopfState
			
		// Wenn OK -> Details anlegen
		if ($$$ISOK(kopfState)) {
			
			set key = ""
			do {
				set line = Order.OrderLines.GetNext(.key)
				if (line '= "") {
    				
    				//Detailposition anlegen
    				set spezArtikel = ##class(DBAgrofresh.Preis).GetPreisForWebEdi(abnehmerOid, line.BuyerArticleNo)
    				if (spezArtikel '= $$$NULLOREF) {
	    				
	    				set det = ##class(DBPlattform.AuftragsPos).%New()
	    				if (TriggeredFromDotNet = 1) {
		    				set det.OrderManuellEingelesen = 1
	    				}
	    				set det.PositionsNr = line.LineNo
	    				set det.Auftrag = kopf
	    				set det.Artikel = spezArtikel.Artikel
	    				
	    				//Gebindehandling
	    				if (spezArtikel.Gebinde '= $$$NULLOREF) {
		    				set det.Gebinde = spezArtikel.Gebinde
	    				} elseif (spezArtikel.Artikel.Gebinde '= $$$NULLOREF) {
		    				set det.Gebinde = spezArtikel.Artikel.Gebinde
	    				} else {
		    				//Fehler an KAL, dass Gebinde nicht eingestellt ist auf Artikel	
		    				set todayH = ##class(Base.DateTime).today().toHorolog()
		    				do ##class(Alliance.Common.KAL.Message).new(.msgStatus, typ, subTyp, senderTyp, severity, todayH, abnehmerOid,,, "Gebinde ist auf Artikel "_spezArtikel.Artikel.ArtikelNr_" "_spezArtikel.Artikel.Kurztext_" nicht eingestellt!")
	    				}
	    				
	    				//AnzahlJeGebinde
	    				if ((spezArtikel.AnzahlJeGebinde '= "") && (spezArtikel.AnzahlJeGebinde '= 0)) {
		    				set det.AnzahlJeGebinde = spezArtikel.AnzahlJeGebinde
	    				} elseif ((spezArtikel.Artikel.AnzahlJeGebinde '= "") && (spezArtikel.Artikel.AnzahlJeGebinde '= 0)) {
		    				set det.AnzahlJeGebinde = spezArtikel.Artikel.AnzahlJeGebinde
	    				} else {
		    				//Fehler an KAL, dass AnzahlJeGebinde nicht eingestellt
		    				set todayH = ##class(Base.DateTime).today().toHorolog()
		    				do ##class(Alliance.Common.KAL.Message).new(.msgStatus, typ, subTyp, senderTyp, severity, todayH, abnehmerOid,,, "Anzahl je Gebinde ist auf Artikel "_spezArtikel.Artikel.ArtikelNr_" "_spezArtikel.Artikel.Kurztext_" nicht eingestellt!")
	    				}
	    				
	    				//Mengeneinheit
	    				if (spezArtikel.Menge '= $$$NULLOREF) {
		    				set det.Mengeneinheit = spezArtikel.Menge
	    				} elseif (spezArtikel.Artikel.Mengeneinheit '= $$$NULLOREF) {
		    				set det.Mengeneinheit = spezArtikel.Artikel.Mengeneinheit
	    				} else {
		    				//Fehler an KAL, dass Mengeineinheit nicht eingestellt ist auf Artikel	
		    				set todayH = ##class(Base.DateTime).today().toHorolog()
		    				do ##class(Alliance.Common.KAL.Message).new(.msgStatus, typ, subTyp, senderTyp, severity, todayH, abnehmerOid,,, "Mengeneinheit ist auf Artikel "_spezArtikel.Artikel.ArtikelNr_" "_spezArtikel.Artikel.Kurztext_" nicht eingestellt!")
	    				}
	    				
	    				set det.KundenSpezArtNr = line.BuyerArticleNo
	    				
	    				set gebk = line.OrderedQtyUoM
	    				if ((gebk = ..#GEBINDEKENNUNG1) || (gebk = ..#GEBINDEKENNUNG2)) {
		    				set det.AnzahlGebinde = line.OrderedQty
	    				} else {
		    				if ((det.AnzahlJeGebinde '= "") && (det.AnzahlJeGebinde '= 0)) {
			    				set det.AnzahlGebinde = line.OrderedQty / det.AnzahlJeGebinde
		    				} else {
			    				set det.AnzahlGebinde = line.OrderedQty
		    				}
	    				}		
	    				
	    				set det.Menge = det.AnzahlGebinde * det.AnzahlJeGebinde
	    				
	    				// Preis holen
	    				set stueckPreis = 0
	    				if (line.PriceNet '= $$$NULLOREF) {
		    				set price = line.PriceNet.Price
		    				set unit = line.PriceNet.UnitPriceBase
		    				set unitMeasure = line.PriceNet.UnitOfMeasure
	    				
		    				if ((unitMeasure = ..#GEBINDEKENNUNG1) || (unitMeasure = ..#GEBINDEKENNUNG2)) {
		    					if ((det.AnzahlJeGebinde '= $$$NULLOREF) || (det.AnzahlJeGebinde > 0)) {
		    						set stueckPreis = ((price / unit) / det.AnzahlJeGebinde)
		    					} else {
			    					set stueckPreis = price / unit
		    					}
	    					} else {
		    					set stueckPreis = price / unit
	    					}
	    				}
    				
	    				//*******************************************
	    				// Preis abgleichen
	    				//*******************************************
	    				if (updatePreise = $$$YES) {
		    				set promotionStart = ""
		    				set promotionEnd = ""
		    				if (line.PromotionStart '= $$$NULLOREF) {
			    				set promotionStart = line.PromotionStart.Date
		    				}
	    				
		    				if (line.PromotionEnd '= $$$NULLOREF) {
			    				set promotionEnd = line.PromotionEnd.Date
		    				}
	    				
		    				if (line.PriceNet '= $$$NULLOREF) {
   						    				
			    				//set spezArtPreis = spezArtikel.EngrosPreis
			    				set spezArtPreis = 0
			    				set isAbDatum = 0
			    				set isAktion = 0
			    				set idAktionsP = ""
			    				set isKundenspez = 0
			    				set kundenspezP = ""
		    				
			    				if ((promotionStart '= "") && (promotionStart '= 0) && (promotionEnd '= "") && (promotionEnd '= 0)) {
				    				set isAktion = 1
			    				
				    				set idAktionsP = ##class(DBAgrofresh.AktionspreisDet).GetIdByIdentDatum(mandOid, kopf.Abnehmer.%Id(), det.Artikel.%Id(), promotionStart, promotionEnd)
				    				if (idAktionsP '= "") {
					    				set detAktionsPreis = ##class(DBAgrofresh.AktionspreisDet).%OpenId(idAktionsP)
					    				if (detAktionsPreis '= $$$NULLOREF) {
						    				set spezArtPreis = detAktionsPreis.Preis
					    				}
				    				}
			    				
			    				} else {
			    				
				    				//neu ist es möglich, dass Coop Preise unter den VZs unterschiedlich sein können
				    				//es ist die Aufgabe des Disponenten, dazu vorgängig verkaufsseitig einen Kundenspezifischen Preis zu erfassen
				    				//existiert für einen Artikel ein Kundenspez. Preis, wird auf diesen abgeglichen.
				    				set kundenspezP = ##class(DBAgrofresh.Preis).GetPreis(mandOid, mandOid, kopf.Abnehmer.Adresse.%Id(), det.Artikel.%Id(),0,1)
				    				if (kundenspezP '= $$$NULLOREF) {
					    				set isKundenspez = 1
					    				if ((kundenspezP.DatumPreisaenderung <= kopf.Lieferdatum) && (kundenspezP.DatumPreisaenderung '= $$$NULLOREF)) {
						    				set spezArtPreis = kundenspezP.EngrosPreisAbDatum
						    				set isAbDatum = 1
					    				} else {
						    				set spezArtPreis = kundenspezP.EngrosPreis
					    				}
				    				
				    				} else {
					    				if ((spezArtikel.DatumPreisaenderung <= kopf.Lieferdatum) && (spezArtikel.DatumPreisaenderung '= $$$NULLOREF)) {
						    				set spezArtPreis = spezArtikel.EngrosPreisAbDatum
						    				set isAbDatum = 1
					    				} else {
						    				set spezArtPreis = spezArtikel.EngrosPreis
					    				}
				    				}
			    				}
		    				    				
			    				//akt. oder neuer Preis updaten + Warnmeldung ausgeben, wenns nicht übereinstimmt
			    				if (stueckPreis '= spezArtPreis) {
			    				
				    				if (isAktion = 1) {
				    				
					    					//Aktionsdatensatz existiert
					    				if (idAktionsP '= "") {
					    					set aktionsDet = ##class(DBAgrofresh.AktionspreisDet).%OpenId(idAktionsP)
					    					set aktionsDet.Preis = stueckPreis
					    					do aktionsDet.%Save()
				    					
					    					//Meldung an KAL, dass Preise nicht übereinstimmen	
					    					set preisSeverity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Warning()
					    					set todayH = ##class(Base.DateTime).today().toHorolog()
				    						do ##class(Alliance.Common.KAL.Message).new(.msgStatus, typ, subTyp, senderTyp, preisSeverity, todayH, abnehmerOid,,, "Aktionspreis stimmt auf Artikel "_spezArtikel.Artikel.ArtikelNr_" "_spezArtikel.Artikel.Kurztext_" nicht überein. Coop Preis: "_stueckPreis_" eingestellt: "_spezArtPreis)
				    					
					    					//Aktionsdatensatz anlegen
					    				} else {
					    				
						    				set aktionsKopfId = ##class(DBAgrofresh.AktionspreisKopf).GetIdByIdent(mandOid, kopf.Abnehmer.%Id(), det.Artikel.%Id())
						    				//Kopf anlegen
						    				if (aktionsKopfId = "") {
							    				set aktionsKopf = ##class(DBAgrofresh.AktionspreisKopf).%New()
							    				set aktionsKopf.Mandant = mandOid
							    				set aktionsKopf.Kunde = kopf.Abnehmer
							    				set aktionsKopf.Artikel = det.Artikel
							    				do aktionsKopf.%Save()
							    				set aktionsKopfId = aktionsKopf.%Id()
						    				}
					    				
						    				//konnte der Kopf richtig angelegt werden, oder existierte bereits
						    				// -> Detail anlegen
						    				if (aktionsKopfId '= "") {
							    				set aktionsDet = ##class(DBAgrofresh.AktionspreisDet).%New()
							    				set aktionsDet.Kopf = ##class(DBAgrofresh.AktionspreisKopf).%OpenId(aktionsKopfId)
							    				set aktionsDet.AktionVon = promotionStart
							    				set aktionsDet.AktionBis = promotionEnd
							    				set aktionsDet.Preis = stueckPreis
							    				do aktionsDet.%Save()
						    				
							    				//Meldung an KAL, dass Preise nicht übereinstimmen	
					    						set preisSeverity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
					    						set todayH = ##class(Base.DateTime).today().toHorolog()
				    							do ##class(Alliance.Common.KAL.Message).new(.msgStatus, typ, subTyp, senderTyp, preisSeverity, todayH, abnehmerOid,,, "Aktionspreis für Artikel "_spezArtikel.Artikel.ArtikelNr_" "_spezArtikel.Artikel.Kurztext_" und VZ "_kopf.Abnehmer.Adresse.Name_" angelegt.")
						    				}
					    				}
				    				
				    				} else {
				    				
					    				if ((isKundenspez = 1) && (kundenspezP '= "")) {
					    				
						    				if (isAbDatum = 1) {
							    				set kundenspezP.EngrosPreisAbDatum = stueckPreis	
						    				} else {
							    				set kundenspezP.EngrosPreis = stueckPreis
						    				}
						    				do kundenspezP.%Save()
				    				
					    				} else {
					    			
						    				if (isAbDatum = 1) {
							    				set spezArtikel.EngrosPreisAbDatum = stueckPreis	
						    				} else {
							    				set spezArtikel.EngrosPreis = stueckPreis
						    				}
						    				do spezArtikel.%Save()
					    				}
				    				
					    				//Meldung an KAL, dass Preise nicht übereinstimmen	
					    				set preisSeverity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Warning()
					    				set todayH = ##class(Base.DateTime).today().toHorolog()
				    					do ##class(Alliance.Common.KAL.Message).new(.msgStatus, typ, subTyp, senderTyp, preisSeverity, todayH, abnehmerOid,,, "Preise stimmen auf Artikel "_spezArtikel.Artikel.ArtikelNr_" "_spezArtikel.Artikel.Kurztext_" nicht überein. Coop Preis: "_stueckPreis_" eingestellt: "_spezArtPreis)
				    				}
			    				}
		    				}
	    				}
	    				
	    				// Preis setzen
	    				set det.Preis = stueckPreis
	    				
	    				//*******************************************
	    				// LieferantenPreis abgleichen/anlegen
	    				//*******************************************
	    				do ##class(DBAgrofresh.Preis).UpdateLieferantenPreise(mandOid, abnehmerOid, kopf.Lieferdatum, spezArtikel.%Id(), TriggeredFromDotNet)		
	    				
	    				set detailState = det.%Save()
	    				if ($$$ISOK(detailState) = 0) {
		    				//do-while verlassen -> Rollback + Fehler an KAL
		    				set addText = "Detailposition für Artikel "_spezArtikel.Artikel.ArtikelNr_" "_spezArtikel.Artikel.Kurztext_" und Bestellung "_Order.OrderNo_" konnte nicht gespeichert werden."
		    				Quit	
	    				}
	    				
    				} else {
	    				set errorOccured = 1
	    				w "Meldung an KAL, SpezPreis nicht gefunden für VZ und Artikel",!
	    				w "AbnehmerOid: "_abnehmerOid,"BuyerArtNo"_line.BuyerArticleNo
	    				set artikeltext = ""
	    				set keyDesc = ""
	    				do {
		    				set description = line.ItemDescriptions.GetNext(.keyDesc)
		    				if (description '= $$$NULLOREF) {
			    				if (description.Ident = "CU") {
				    				set artikeltext = description.Textline1	
			    				}	
		    				}
		    				
	    				} while (keyDesc '= "")
	    				
		    			set addText = "SpezPreis für Coop Artikel "_line.BuyerArticleNo_" "_artikeltext_" und Bestellung "_Order.OrderNo_" konnte nicht gefunden werden."

	    				Quit	
    				}
    				
    			}
			} while (key '= "")
				
		} else {
			set errorOccured = 1
			w "Nur Meldung an KAL, dass Auftrag nicht angelegt werden konnte",!	
			
		   	set addText = "Auftragskopf für Bestellung "_Order.OrderNo_" konnte nicht angelegt werden."
		}
		
		if (($$$ISOK(kopfState)) && ($$$ISOK(detailState)) && (errorOccured = 0)) {
			TCOMMIT
			set retval = 1
			
			set typ = ##class(Alliance.Common.KAL.Code.MessageType).Lieferung()
			set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).BestellungGesplittet()
			set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisM()
			set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
			set todayH = ##class(Base.DateTime).today().toHorolog()
	   		do ##class(Alliance.Common.KAL.Message).new(.msgStatus, typ, subTyp, senderTyp, severity, todayH, abnehmerOid,,, "Bestellung "_Order.OrderNo_" eingelesen und aufgeteilt.")
			
		} else {
			w "ROLLBACK"," KopfState: "_kopfState,"DetailState: "_detailState,"ErrorOccured: "_errorOccured,!
			TROLLBACK
			set todayH = ##class(Base.DateTime).today().toHorolog()
		    do ##class(Alliance.Common.KAL.Message).new(.msgStatus, typ, subTyp, senderTyp, severity, todayH, abnehmerOid,,, addText)
			
			set retval = 0
			
		}
		
	} else {
		//Fehlermeldung an KAL, dass Abnehmer nicht aufgelöst werden konnte
		set todayH = ##class(Base.DateTime).today().toHorolog()
	   	do ##class(Alliance.Common.KAL.Message).new(.msgStatus, typ, subTyp, senderTyp, severity, todayH, abnehmerOid,,, "Verteilzentrum für Bestellung "_Order.OrderNo_" konnte nicht zugewiesen werden und somit auch keine Bestellung erfasst werden.")
	   	set retval = 0
	}
	Quit retval
]]></Implementation>
</Method>

<Method name="GenerateDesAdv">
<ClassMethod>1</ClassMethod>
<FormalSpec>PlattformAkOid:%String,HeaderSenderId:%String,HeaderRecipientId:%String,Test:%Boolean</FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	// DespatchAdvice
	set desAdv = ##class(Alliance.Common.Model.DespatchAdvice.DespatchAdvice).%New()
	
	//set desAdv.CreatedOnSystem = "AgrisM"
	
	set plattformAK = ##class(DBPlattform.AuftragsKopf).%OpenId(PlattformAkOid)
	
	// Lieferdatum / Zeit von Gesamtlieferschein (Agrofresh.Auftragskopf)
	set daDeliveryDate = ##class(Alliance.Common.Model.Order.EDIDTM).%New()
	set daDeliveryDate.DTType = "191"
	set daDeliveryDate.Format = "204"
	set daDeliveryDate.Data = $ZDATE(plattformAK.DefinitiverAuftrag.Lieferdatum,8)_"000000"
	
	
	set strSQL = "SELECT ID FROM Alliance_Common_Model_Order.Order WHERE OrderNo='"_plattformAK.DefinitiverAuftrag.BestellNr_"' AND ReqDeliveryDate_data %STARTSWITH '"_$EXTRACT(daDeliveryDate.Data,1,8)_"'"
	Set rs = ##class(%Library.ResultSet).%New("%DynamicQuery:SQL")
	
	Do rs.Prepare(strSQL)
	Set sc=rs.Execute()
	set orderId = ""
	
	IF $$$ISOK(sc) {
		if (rs.Next(.sc)) {
			set orderId = rs.Data("ID")
		}
	}
	
	set order = ##class(Alliance.Common.Model.Order.Order).%OpenId(orderId)
	
	set testIndicator = "0"
	if (Test) {
		set testIndicator = "1"
	}
	
	w "--------------------------",!
	w " Selektierte Informationen:",!,!
	w " plattformAK:    "_plattformAK,!
	w " daDeliveryDate: "_daDeliveryDate.Data,!
	w " BestellNr:      "_plattformAK.DefinitiverAuftrag.BestellNr,!
	w " orderId:        "_orderId,!
	w " order:          "_order,!
	w " testIndicator:  "_testIndicator,!
	
	set applicationRef = "DESADV96A006R1"
	set communicationAgrmt = "EANCOM"_order.Buyer.PartyId_order.Supplier.PartyId_"502"
	
	w " applicationRef: "_applicationRef,!
	w " commAgrmt:      "_communicationAgrmt,!
	w "--------------------------",!
	
	set desAdv.EDIHeader = ##class(Alliance.Agris.Logic.Generator).GetDesAdvEDIHeader(HeaderSenderId, HeaderRecipientId, order.Supplier.PartyId, testIndicator, applicationRef, communicationAgrmt)
	
	// Aktueller Timestamp
	set daMsgTimestamp = ##class(Alliance.Common.Model.Order.EDIDTM).%New()
	set daMsgTimestamp.DTType = "137"
	set daMsgTimestamp.Format = "204"
	set daMsgTimestamp.Data = $ZDATE($H,8)_$replace($ztime($piece($h,",",2),1),":","")
	set desAdv.MsgTimestamp = daMsgTimestamp
	
	//set desAdv.ShpDocName = "351"
	//set desAdv.ShpCodeListAgy = "9"
	
	// Lieferschein-Nr von Gesamtlieferschein (Agrofresh.Auftragskopf)
	set desAdv.ShpNo = plattformAK.DefinitiverAuftrag.LieferscheinNr
	
	//set desAdv.ShpMsgFnct = "9"
	
	set desAdv.DeliveryTime = daDeliveryDate
	
	// Bestellnummer Coop
	set desAdv.OrderNo = plattformAK.DefinitiverAuftrag.BestellNr
	
	set desAdv.OrderNoType = "ON"
	
	set desAdv.SAPBusCase = "G"
	
	set desAdv.BuyerInfo = ##class(Alliance.Agris.Logic.Generator).GetDesAdvBuyerInfo(order.Buyer.PartyId, order.Buyer.ReferenceQual,order.Buyer.ReferenceNo)
	
	set desAdv.SupplierInfo = ##class(Alliance.Agris.Logic.Generator).GetDesAdvSupplierInfo(order.Supplier.PartyId, order.Supplier.ReferenceQual, order.Supplier.ReferenceNo)
	
	set desAdv.DeliveryPartyInfo = ##class(Alliance.Agris.Logic.Generator).GetDesAdvDeliveryInfo(order.DeliveryParty.PartyId)
	
	set desAdv.StoreNumberInfo = ""
	
	set desAdv.TransportDetails = ##class(Alliance.Agris.Logic.Generator).GetDesAdvTransportDetails(PlattformAkOid)
	
	set desAdv.PackageInfos = ##class(Alliance.Agris.Logic.Generator).GetDesAdvPackageInfos(PlattformAkOid, orderId)
	
	set statusDesAdv = desAdv.%Save()
	
	if ($$$ISOK(statusDesAdv)) {
		set plattformAK.DesAdvId = desAdv.%Id()
		do plattformAK.%Save()
	}
	
	set typ = ##class(Alliance.Common.KAL.Code.MessageType).DespatchAdvice()
	set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).DespatchAdviceErstellt()
	set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisM()
	set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
	set msgStatus = $$$OK
	set todayH = ##class(Base.DateTime).today().toHorolog()
	do ##class(Alliance.Common.KAL.Message).new(.msgStatus, typ, subTyp, senderTyp, severity, todayH, plattformAK.Abnehmer.%Id(),,, desAdv.%Id())
	
	
	quit statusDesAdv
]]></Implementation>
</Method>

<Method name="GetDesAdvEDIHeader">
<ClassMethod>1</ClassMethod>
<FormalSpec>SenderId:%String,RecipientId:%String,RoutingAdr:%String,TestIndicator:%String,ApplicationRef:%String,CommunicationAgrmt:%String</FormalSpec>
<ReturnType>Alliance.Common.Model.DespatchAdvice.EDIHeader</ReturnType>
<Implementation><![CDATA[
	w " |",!
	w " +-- GetDesAdvEDIHeader",!
	
	set header = ##class(Alliance.Common.Model.DespatchAdvice.EDIHeader).%New()
	
	//set header.SyntaxId = "UNOC"
	//set header.SyntaxVer = "3"
	
	// GLN techn. Sender (muss unterschiedlich sein zu SupplierPartyInfo->PartyID)
	set header.SenderId = SenderId  // "7640146110015"
	
	//set header.SenderIdCodeQual = "14"
	
	// GLN techn. Empfänger (muss unterschiedlich sein zu BuyerPartyInfo->PartyID)
	set header.RecipientId = RecipientId  // "7110808000046"
	
	//set header.RecipientIdCodeQual = "14"
	
	// SupplierPartyInfo->PartyId
	set header.RoutingAdr = RoutingAdr
	
	// Erstelldatum Header (Format "YYMMDD")
	set header.InterchangeDate = $EXTRACT($ZDATE($H,8),3,*)
	
	// Erstellzeit Header (Format "HHMM")
	set header.InterchangeTime = $extract($replace($ztime($piece($h,",",2),1),":",""),1,4)
	
	// Fortlaufende, lückenlose Nummer dieses Interchanges pro Empfänger (VZ?)
	set header.InterchangeCtrlRef = $INCREMENT(^AllianceInterchangeCtrlRef)
	
	//  0- 6 = "DesAdv"
	//  7- 9 = "96A"
	// 10-12 = EANCOM Versionsnr der Msg = "006"
	//    13 = Coop Variante = "R"
	//    14 = Coop Version = "1"   
	set header.ApplicationRef = ApplicationRef
	
	//  0- 6 = "EANCOM"
	//  7-19 = GLN Coop
	// 20-32 = GLN Vetragspartner aus EHB = Alliance GLN
	// 33-35 = Version DIA = "502"
	set header.CommunicationAgrmt = CommunicationAgrmt
	
	set header.TestIndicator = TestIndicator
	
	set header.MsgRefNo = "1"
	
	//set header.MsgTypeId = "DESADV"
	
	//set header.MsgTypeVerNo = "D"
	
	//set header.MsgTypeReleaseNo = "96A"
	
	//set header.CntrlAcy = "UN"
	
	//set header.AssocAssCode = "EAN006"
	
	quit header
]]></Implementation>
</Method>

<Method name="GetDesAdvBuyerInfo">
<ClassMethod>1</ClassMethod>
<FormalSpec>GLN:%String,RefQual:%String,RefNo:%String</FormalSpec>
<ReturnType>Alliance.Common.Model.DespatchAdvice.PartyInfo</ReturnType>
<Implementation><![CDATA[
	w " |",!
	w " +-- GetDesAdvBuyerInfo",!
	
	set buyer = ##class(Alliance.Common.Model.DespatchAdvice.PartyInfo).%New()
	
	set buyer.Type = "BY"
	set buyer.PartyID = GLN
	//set buyer.CodeListRespAgy = "9"
	set buyer.RefQual = RefQual
	set buyer.RefNo = RefNo
	
	w " |   GLN: "_GLN,!
	
	quit buyer
]]></Implementation>
</Method>

<Method name="GetDesAdvSupplierInfo">
<ClassMethod>1</ClassMethod>
<FormalSpec>GLN:%String,RefQual:%String,RefNo:%String</FormalSpec>
<ReturnType>Alliance.Common.Model.DespatchAdvice.PartyInfo</ReturnType>
<Implementation><![CDATA[
	w " |",!
	w " +-- GetDesAdvSupplierInfo",!
	
	set supplier = ##class(Alliance.Common.Model.DespatchAdvice.PartyInfo).%New()
	
	set supplier.Type = "SU"
	set supplier.PartyID = GLN
	//set supplier.CodeListRespAgy = "9"
	set supplier.RefQual = RefQual
	set supplier.RefNo = RefNo
	
	w " |   GLN: "_GLN,!
	
	quit supplier
]]></Implementation>
</Method>

<Method name="GetDesAdvDeliveryInfo">
<ClassMethod>1</ClassMethod>
<FormalSpec>GLN:%String</FormalSpec>
<ReturnType>Alliance.Common.Model.DespatchAdvice.PartyInfo</ReturnType>
<Implementation><![CDATA[
	w " |",!
	w " +-- GetDesAdvDeliveryInfo",!
	
	set delivery = ##class(Alliance.Common.Model.DespatchAdvice.PartyInfo).%New()
	
	set delivery.Type = "DP"
	set delivery.PartyID = GLN
	//set delivery.CodeListRespAgy = "9"
	set delivery.RefQual = "PS"
	set delivery.RefNo = ""
	
	w " |   GLN: "_GLN,!
	
	quit delivery
]]></Implementation>
</Method>

<Method name="GetDesAdvTransportDetails">
<ClassMethod>1</ClassMethod>
<FormalSpec>PlattformAkOid:%String</FormalSpec>
<ReturnType>Alliance.Common.Model.DespatchAdvice.TransportDetails</ReturnType>
<Implementation><![CDATA[
	w " |",!
	w " +-- GetDesAdvTransportDetails",!
	
	set transport = ##class(Alliance.Common.Model.DespatchAdvice.TransportDetails).%New()
	
	//set transport.TransportStage = "20"
	set transport.Mode = "30"
	//set transport.TypeOfTransport = ""
	//set transport.IdentOfTransport = ""
	
	
	quit transport
]]></Implementation>
</Method>

<Method name="GetDesAdvPackageInfos">
<ClassMethod>1</ClassMethod>
<FormalSpec>PlattformAkOid:%String,OrderOid:%String</FormalSpec>
<ReturnType>%Library.ListOfObjects</ReturnType>
<Implementation><![CDATA[
	w " |",!
	w " +-- GetDesAdvPackageInfos("_PlattformAkOid_","_OrderOid_")",!
	
	set plattformAK = ##class(DBPlattform.AuftragsKopf).%OpenId(PlattformAkOid)
	
	set strSQL = "SELECT COUNT(ID) As Anzahl FROM DBAgrofresh.Auftragspos WHERE Auftragskopf->BestellNr='"_plattformAK.DefinitiverAuftrag.BestellNr_"' AND AnzahlGebinde = 0"
	Set rsCnt = ##class(%Library.ResultSet).%New("%DynamicQuery:SQL")
	
	Do rsCnt.Prepare(strSQL)
	Set scCnt =rsCnt.Execute()
	set anzNuller = 0
	IF $$$ISOK(scCnt) {
		if (rsCnt.Next(.scCnt)) {
			set anzNuller = rsCnt.Data("Anzahl")
		}		
	}

	//set strSQL = "SELECT ID FROM DBAgrofreshEK.Bestellungspos WHERE Bestellungskopf->BestellNrAbnehmer='"_plattformAK.DefinitiverAuftrag.BestellNr_"'"
	set strSQL = "SELECT ID, Artikel FROM DBAgrofresh.Auftragspos WHERE Auftragskopf->BestellNr='"_plattformAK.DefinitiverAuftrag.BestellNr_"' AND AnzahlGebinde <> 0 ORDER BY PositionsNr"
	Set rs = ##class(%Library.ResultSet).%New("%DynamicQuery:SQL")
	
	Do rs.Prepare(strSQL)
	Set sc=rs.Execute()
	set orderId = ""
	Set list=##class(%Library.ListOfObjects).%New()
	set count = 2
	set countSSCCs = 0
	set cntLins = (1 + anzNuller)
	
	IF $$$ISOK(sc) {
		while(rs.Next(.sc)) {
			set auftPosOid = rs.Data("ID")
			set auftPosArtikelOid = rs.Data("Artikel")
			
			//set strSQLBest = "SELECT ID, SSCCInfo_SSCC, SSCCInfo_AnzahlGebinde FROM DBAgrofreshEK.Bestellungspos_SSCCInfo WHERE Bestellungspos->Artikel='"_auftPosArtikelOid_"' AND Bestellungspos->Bestellungskopf->BestellNrAbnehmer='"_plattformAK.DefinitiverAuftrag.BestellNr_"' AND Bestellungspos->AnzahlGebinde <> 0 ORDER BY Bestellungspos->AnzahlGebinde DESC"
			set strSQLBest = "SELECT ID, SSCCInfo_SSCC, SSCCInfo_AnzahlGebinde FROM DBAgrofreshEK.Bestellungspos_SSCCInfo WHERE Bestellungspos IN (SELECT ID FROM DBAgrofreshEK.Bestellungspos WHERE Artikel= ? AND Bestellungskopf->BestellNrAbnehmer=? AND AnzahlGebinde <> 0) ORDER BY Bestellungspos->AnzahlGebinde DESC"
			Set rsBest = ##class(%Library.ResultSet).%New("%DynamicQuery:SQL")
	
			Do rsBest.Prepare(strSQLBest)
			Set scBest=rsBest.Execute(auftPosArtikelOid, plattformAK.DefinitiverAuftrag.BestellNr)
			IF $$$ISOK(scBest) {
				while(rsBest.Next(.scBest)) {
					set bestPosOid = rsBest.Data("ID")
					set ssccNo = rsBest.Data("SSCCInfo_SSCC")
					set ssccAnzGebinde = rsBest.Data("SSCCInfo_AnzahlGebinde")
			
					set package = ##class(Alliance.Common.Model.DespatchAdvice.PackageInfo).%New()
	
					set package.HierarchyNo = count
					set package.ParentHryNo = "1"
	
					set package.PackageUnits = ##class(Alliance.Agris.Logic.Generator).GetDesAdvPackageUnits(ssccNo)
					set countSSCCs = countSSCCs + package.PackageUnits.Count()
					set package.Items = ##class(Alliance.Agris.Logic.Generator).GetDesAdvItemDetails(auftPosOid, OrderOid, cntLins, ssccAnzGebinde)
					set cntLins = cntLins + 1
	
					do list.Insert(package)
					set count = count + 1
				}
			}
		}
		
		set packageHeader = ##class(Alliance.Common.Model.DespatchAdvice.PackageInfo).%New()
		set packageHeader.HierarchyNo = "1"
		set packageHeader.ParentHryNo = ""
		set listUnits = ##class(%Library.ListOfObjects).%New()
		set unit = ##class(Alliance.Common.Model.DespatchAdvice.PackageUnit).%New()
		set unit.Count = countSSCCs
		set unit.Level = ""
		set unit.Type = ""
		set unit.SSCCNo = ""
		do listUnits.Insert(unit)
		set packageHeader.PackageUnits = listUnits
		
		//LINS mit QTY 0 hinzufügen
		set strSQL = "SELECT ID FROM DBAgrofresh.Auftragspos WHERE Auftragskopf->BestellNr='"_plattformAK.DefinitiverAuftrag.BestellNr_"' AND AnzahlGebinde = 0 ORDER BY PositionsNr"
		Set rs = ##class(%Library.ResultSet).%New("%DynamicQuery:SQL")
	
		Do rs.Prepare(strSQL)
		Set sc=rs.Execute()
		Set listNullLins = ##class(%Library.ListOfObjects).%New()
		set countNullLins = 1
		
		IF $$$ISOK(sc) {
			while(rs.Next(.sc)) {
				set auftPosOidNuller = rs.Data("ID")
				
				set tmpList = ##class(Alliance.Agris.Logic.Generator).GetDesAdvItemDetails(auftPosOidNuller, OrderOid, countNullLins, 0)
				do listNullLins.Insert(tmpList.GetAt(1))
				
				
				set countNullLins = countNullLins + 1
			
			}
		}
		set packageHeader.Items = listNullLins
		
		do list.InsertAt(packageHeader,1)
		
		
	}
	w " |   List: "_list,!
	
	quit list
]]></Implementation>
</Method>

<Method name="GetDesAdvPackageUnits">
<ClassMethod>1</ClassMethod>
<FormalSpec>SSCCNo:%String</FormalSpec>
<ReturnType>%Library.ListOfObjects</ReturnType>
<Implementation><![CDATA[
	w " |",!
	w " +-- GetDesAdvPackageUnits",!
	
	set listUnits = ##class(%Library.ListOfObjects).%New()
	
	set unit = ##class(Alliance.Common.Model.DespatchAdvice.PackageUnit).%New()

	set unit.Count = "1"
	set unit.Level = "3"
	set unit.Type = "08"
	set unit.SSCCNo = SSCCNo
	//bestellpos.SSCCInfo.GetAt(countSSCC).SSCC

	do listUnits.Insert(unit)
	
	w " |   Anzahl Units: "_listUnits.Count(),!
	
	quit listUnits
]]></Implementation>
</Method>

<Method name="GetDesAdvItemDetails">
<ClassMethod>1</ClassMethod>
<FormalSpec>AuftPosOid:%String,OrderOid:%String,CntLins:%Integer,AnzahlGebinde:%Integer</FormalSpec>
<ReturnType>%Library.ListOfObjects</ReturnType>
<Implementation><![CDATA[
	w " |",!
	w " +-- GetDesAdvItemDetails",!
	
	set itemDetails = ##class(%Library.ListOfObjects).%New()
	set count = 0

	set auftPos = ##class(DBAgrofresh.Auftragspos).%OpenId(AuftPosOid)
	w " |       Order-Oid: "_OrderOid,!
	w " |       Barcode: "_auftPos.SpezPreis.Barcode,!
	set orderLineOid = ##class(Alliance.Agris.Logic.Generator).GetLineOidFromOrderLine(OrderOid,auftPos.SpezPreis.KundenSpezArtNr)
	set orderLine = ##class(Alliance.Common.Model.Order.OrderLine).%OpenId(orderLineOid)
	
	w " |       Order-Line-Oid: "_orderLineOid,!
	
	set item = ##class(Alliance.Common.Model.DespatchAdvice.ItemDetails).%New()
	set item.LineNo = CntLins
	set item.ItemNo = auftPos.SpezPreis.Barcode
	//set item.ItemNoType = "EN"
	set item.Subline = ""
	set item.LineNoRef = ""
	//set item.Configuration = ""
	set item.SAPItemNo = auftPos.SpezPreis.KundenSpezArtNr
	// immer in Gebinde zurückgeben, da alles Gebinde EANs in Agris eingestellt werden
	set item.Quantity = AnzahlGebinde
	if (orderLine.OrderedQtyUoM = "PCE") {
		
		set gebindeEinheit = ""
	   	set keyDesc = ""
	    do {
			set description = orderLine.ItemDescriptions.GetNext(.keyDesc)
		    if (description '= $$$NULLOREF) {
				if (description.Type = "F") {
					set gebindeEinheit = description.Textline2	
			   	}	
		    }
		} while (keyDesc '= "")
	    				
		set item.QuantityUoM = gebindeEinheit
		w " |       Einheit Stück, Menge: "_item.Quantity,!
	} else {
		set item.QuantityUoM = orderLine.OrderedQtyUoM
		w " |       Einheit Gebinde, Menge: "_item.Quantity,!
	}
	set item.QuantityQual = "12"
	
	//set item.BestBefore = ""
	set item.OrderItemNo = orderLine.LineNo
	//set item.MarkingInstruction = ""
	//set item.BatchNo = ""
	
	
	do itemDetails.Insert(item)
	
	w " |   Anzahl Items: "_itemDetails.Count(),!
	
	quit itemDetails
]]></Implementation>
</Method>

<Method name="GetLineOidFromOrderLine">
<ClassMethod>1</ClassMethod>
<FormalSpec>OrderOid:%String,BuyerArticleNo:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set strSQL = "SELECT ID FROM Alliance_Common_Model_Order.OrderLine l WHERE l.Order='"_OrderOid_"' AND l.BuyerArticleNo='"_BuyerArticleNo_"'"
	Set rs = ##class(%Library.ResultSet).%New("%DynamicQuery:SQL")

	Do rs.Prepare(strSQL)
	Set sc=rs.Execute()
	set orderId = ""

	IF $$$ISOK(sc) {
		if (rs.Next(.sc)) {
			set orderId = rs.Data("ID")
		}
	}

	quit orderId
]]></Implementation>
</Method>

<Method name="DeleteDesAdv">
<ClassMethod>1</ClassMethod>
<FormalSpec>DesAdvOid:%String</FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[	Quit ##class(Alliance.Common.Model.DespatchAdvice.DespatchAdvice).%DeleteId(DesAdvOid)
]]></Implementation>
</Method>

<Method name="test">
<ClassMethod>1</ClassMethod>
<Implementation><![CDATA[
	set typ = ##class(Alliance.Common.KAL.Code.MessageType).DespatchAdvice()
	set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).DespatchAdviceErstellt()
	set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisM()
	set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
	set msgStatus = $$$OK
	set todayH = ##class(Base.DateTime).today().toHorolog()
	do ##class(Alliance.Common.KAL.Message).new(.msgStatus, typ, subTyp, senderTyp, severity, todayH, "",,, "AgrisM||1")
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.Logic.InvoiceGenerator">
<Description><![CDATA[

InvoiceGenerator
	Letzte Änderung 22.06.2011 rz
22.06.2011 * Für Kumulation bei Importartikeln ist nun die Coop SAPNr massgebend
29.03.2011 * Korrektur Fehler bei Retouren (Absolutwert wurde genommen)
15.12.2010 * Gutschriften nicht anlegen -> Referenz ist RETANN und nicht ORDER
13.12.2010 * Anpassung wegen Importartikel
16.11.2010 * Div. Korrekturen rz
02.11.2010 + Generate Invoice rz]]></Description>
<Super>%RegisteredObject</Super>
<TimeChanged>62264,32820.83134</TimeChanged>
<TimeCreated>62032,27529.809542</TimeCreated>

<Parameter name="DocumentTypeInvoice">
<Description>
Rechnung</Description>
<Default>380</Default>
</Parameter>

<Parameter name="DocumentTypeCreditNote">
<Description>
Gutschrift</Description>
<Default>381</Default>
</Parameter>

<Parameter name="DocumentTypeDebitNote">
<Description>
Nachbelastung</Description>
<Default>383</Default>
</Parameter>

<Parameter name="MsgTypeCancellation">
<Default>1</Default>
</Parameter>

<Parameter name="MsgTypeOriginal">
<Default>9</Default>
</Parameter>

<Parameter name="MsgTypeNotificationOnly">
<Default>55</Default>
</Parameter>

<Method name="Generate">
<ClassMethod>1</ClassMethod>
<FormalSpec>DefAuftragsOid:%String,IsGutschrift:%Boolean,HeaderSenderId:%String,HeaderRecipientId:%String,ESR:%String,Test:%Boolean</FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	
	set status = $$$OK
	
	//Mandant
	set mandOid = ##class(DBCore.AppEinstellung).GetStringEinst(##class(DBCore.Konst).PLATTFORMMANDANT())
	set mand = ##class(DBCore.Mandant).%OpenId(mandOid)
	
	// Invoice
	set invoice = ##class(Alliance.Common.Model.Invoice.Invoice).%New()
	
	// definitiver Auftrag
	set defAK = ##class(DBAgrofresh.Auftragskopf).%OpenId(DefAuftragsOid)

	// Lieferdatum / Zeit von Gesamtlieferschein (Agrofresh.Auftragskopf)
	set daDeliveryDate = ##class(Alliance.Common.Model.Order.EDIDTM).%New()
	set daDeliveryDate.DTType = "35"
	set daDeliveryDate.Format = "204"
	set daDeliveryDate.Data = $ZDATE(defAK.Lieferdatum,8)_"000000"
	
	set strSQL = "SELECT ID FROM Alliance_Common_Model_Order.Order WHERE OrderNo='"_defAK.BestellNr_"' AND ReqDeliveryDate_data %STARTSWITH '"_$EXTRACT(daDeliveryDate.Data,1,8)_"'"
	
	Set rs = ##class(%Library.ResultSet).%New("%DynamicQuery:SQL")
	
	Do rs.Prepare(strSQL)
	Set sc=rs.Execute()
	set orderId = ""
	
	IF $$$ISOK(sc) {
		if (rs.Next(.sc)) {
			set orderId = rs.Data("ID")
		}
	}
	
	set order = ##class(Alliance.Common.Model.Order.Order).%OpenId(orderId)
	
	//DESADV
	set strSQLDesAdv = "SELECT ID FROM Alliance_Common_Model_DespatchAdvice.DespatchAdvice WHERE OrderNo='"_defAK.BestellNr_"' AND DeliveryTime_data %STARTSWITH '"_$EXTRACT(daDeliveryDate.Data,1,8)_"'"
	w "DESADV: "_strSQLDesAdv,!
	Set rsDesAdv = ##class(%Library.ResultSet).%New("%DynamicQuery:SQL")
	
	Do rsDesAdv.Prepare(strSQLDesAdv)
	Set scDesAdv=rsDesAdv.Execute()
	set desadvId = ""
	
	IF $$$ISOK(scDesAdv) {
		if (rsDesAdv.Next(.scDesAdv)) {
			set desadvId = rsDesAdv.Data("ID")
		}
	}
	
	set desadv = ##class(Alliance.Common.Model.DespatchAdvice.DespatchAdvice).%OpenId(desadvId)
	
	if (order '= $$$NULLOREF) {

		set testIndicator = "0"
		if (Test) {
			set testIndicator = "1"
		}
	
		set applicationRef = "INVOIC01BRG"
		set communicationAgrmt = "EANCOM"_order.Buyer.PartyId_order.Supplier.PartyId_"502"

		//EDIHeader
		set invoice.EDIHeader = ..GetInvoiceEDIHeader(HeaderSenderId,HeaderRecipientId,order.Supplier.PartyId,testIndicator,applicationRef,communicationAgrmt)

		//DocumentType
		if (IsGutschrift = $$$NO) {
			set invoice.DocumentType = ..#DocumentTypeInvoice
		} else {
			set invoice.DocumentType = ..#DocumentTypeCreditNote
		}
				
		//InvoiceNo
		set invoice.InvoiceNo = defAK.RechnungsNr		
		
		set invoice.MsgType = ..#MsgTypeOriginal
		
		set invoice.RespType = ""
		
		// Aktueller Timestamp
		set daMsgTimestamp = ##class(Alliance.Common.Model.Order.EDIDTM).%New()
		set daMsgTimestamp.DTType = "137"
		set daMsgTimestamp.Format = "204"
		set daMsgTimestamp.Data = $ZDATE($H,8)_$replace($ztime($piece($h,",",2),1),":","")
		set invoice.MsgTimestamp = daMsgTimestamp
		
		set invoice.DeliveryDate = daDeliveryDate
		
		//leer
		//set invoice.InvoicingPeriod = ""
		
		// Rechnungsdatum / Zeit von Rechnung (Agrofresh.Auftragskopf)
		set daInvoiceDate = ##class(Alliance.Common.Model.Order.EDIDTM).%New()
		set daInvoiceDate.DTType = "454"
		set daInvoiceDate.Format = "204"
		set daInvoiceDate.Data = $ZDATE(defAK.Rechnungsdatum,8)_"000000"
		set invoice.InvDateApplication = daInvoiceDate
		
		//Lieferschein 0 wenn kein desadv
		//set invoice.InvMessage = ""
		set lsNr = 0
		if (desadv '= $$$NULLOREF) {
			set lsNr = desadv.ShpNo	
		}
		
		set invoice.RefInfos = ..GetInvoiceReferenceInfos(order.OrderNo, lsNr)
		
		set invoice.PartyInfos = ..GetInvoicePartyInfos(mand, order)
		
		set currency = "CHF"
		if (defAK.ZahlAdresse '= $$$NULLOREF) {
			set currency = defAK.ZahlAdresse.Fremdwaehrung.ISOSWIFTCode
		}
		
		set invoice.Currency = currency
		
		set invoice.PaymentTerms = ..GetInvoicePaymentTerms(defAK.Zahlungskondition.TageNetto)
		
		set invoice.InvoiceLines = ..GetInvoiceLines(DefAuftragsOid, order.%Id(), mandOid, IsGutschrift)
		
		Set rs = ##class(%Library.ResultSet).%New("DBAgrofresh.AF.AuftragsKopfAF:ListeMwstByCodesNew")
    	Set sc=rs.%Execute(DefAuftragsOid, mandOid, "de", 0)
	    set gesamtSteuerbetrag = 0
	    
	    set taxdetails = ##class(%Library.ListOfObjects).%New()
	    
	    while rs.Next(.sc) {
			set satz = rs.Data("MwstSatz")
			set betragexkl = rs.Data("MwstBetragExkl")
			set steuerbetrag = rs.Data("MwstBetrag")
			set gesamtSteuerbetrag = gesamtSteuerbetrag + steuerbetrag
			set tDet = ..GetInvoiceTaxDetail(satz,steuerbetrag,betragexkl, IsGutschrift)
			do taxdetails.Insert(tDet)
	    }
		set invoice.TAXDetails = taxdetails
		
		set invoice.MonetaryDetails = ..GetInvoiceMonetaryDetails(defAK.TotalMitGebinde,gesamtSteuerbetrag, ESR, IsGutschrift)
		
		
		set status = invoice.%Save()
		w "SAVE INVOICE "_status,!
	
		if ($$$ISOK(status)) {
			do ##class(DBAgrofresh.Auftragskopf).SetFlagAutoMutiert(defAK.%Id(), $$$YES)
			set defAK.InvoiceId = invoice.%Id()
			do defAK.%Save()
			do ##class(DBAgrofresh.Auftragskopf).SetFlagAutoMutiert(defAK.%Id(), $$$NO)
		}
	
		set typ = ##class(Alliance.Common.KAL.Code.MessageType).Invoice()
		set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).InvoiceErstellt()
		set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisM()
		set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
		set msgStatus = $$$OK
		set todayH = ##class(Base.DateTime).today().toHorolog()
		do ##class(Alliance.Common.KAL.Message).new(.msgStatus, typ, subTyp, senderTyp, severity, todayH, defAK.Adresse.%Id(),,, invoice.%Id())
	

	
	} else {
		set status = $$$ERROR($$$GeneralError,"- Coop-Bestellung zu Auftrag "_defAK.AuftragsNr_" nicht gefunden. RG nicht an Coop gesendet!")	
	}
	
	Quit status
]]></Implementation>
</Method>

<Method name="GetInvoiceEDIHeader">
<ClassMethod>1</ClassMethod>
<FormalSpec>SenderId:%String,RecipientId:%String,RoutingAdr:%String,TestIndicator:%String,ApplicationRef:%String,CommunicationAgrmt:%String</FormalSpec>
<ReturnType>Alliance.Common.Model.Invoice.EDIHeader</ReturnType>
<Implementation><![CDATA[
	set header = ##class(Alliance.Common.Model.Invoice.EDIHeader).%New()
	
	// GLN techn. Sender (muss unterschiedlich sein zu SupplierPartyInfo->PartyID)
	set header.SenderId = SenderId
	
	// GLN techn. Empfänger (muss unterschiedlich sein zu BuyerPartyInfo->PartyID)
	set header.RecipientId = RecipientId 
		
	// SupplierPartyInfo->PartyId
	set header.RoutingAdr = RoutingAdr
	
	// Erstelldatum Header (Format "YYYYMMDD")
	set header.InterchangeDate = $EXTRACT($ZDATE($H,8),1,*)
	
	// Erstellzeit Header (Format "HHMM")
	set header.InterchangeTime = $extract($replace($ztime($piece($h,",",2),1),":",""),1,4)
	
	// Fortlaufende, lückenlose Nummer dieses Interchanges pro Empfänger (VZ?)
	set header.InterchangeCtrlRef = $INCREMENT(^AllianceInvoiceInterchangeCtrlRef)
	
	//  0- 6 = "DesAdv"
	//  7- 9 = "96A"
	// 10-12 = EANCOM Versionsnr der Msg = "006"
	//    13 = Coop Variante = "R"
	//    14 = Coop Version = "1"   
	set header.ApplicationRef = ApplicationRef
	
	//  0- 6 = "EANCOM"
	//  7-19 = GLN Coop
	// 20-32 = GLN Vetragspartner aus EHB = Alliance GLN
	// 33-35 = Version DIA = "502"
	set header.CommunicationAgrmt = CommunicationAgrmt
	
	set header.TestIndicator = TestIndicator
	
	set header.MsgRefNo = "1"
	
	set header.MsgTypeId = "INVOIC"
	
	set header.MsgTypeVerNo = "D"
	
	set header.MsgTypeReleaseNo = "01B"
	
	set header.CntrlAcy = "UN"
	
	set header.AssocAssCode = "EAN010"
	
	
	Quit header
]]></Implementation>
</Method>

<Method name="GetInvoiceReferenceInfos">
<ClassMethod>1</ClassMethod>
<FormalSpec>OrderNr:%String,LSNr:%String</FormalSpec>
<ReturnType>%Library.ListOfObjects</ReturnType>
<Implementation><![CDATA[
	
	set refInfos = ##class(%Library.ListOfObjects).%New()
	
	//ON
	set rInfoON = ##class(Alliance.Common.Model.Invoice.ReferenceInfo).%New()
	
	set rInfoON.ReferenceType = "ON"
	set rInfoON.ReferenceNo = OrderNr
	
	do refInfos.Insert(rInfoON)
	
	//DQ
	set rInfoDQ = ##class(Alliance.Common.Model.Invoice.ReferenceInfo).%New()
	
	set rInfoDQ.ReferenceType = "DQ"
	set rInfoDQ.ReferenceNo = LSNr
	
	do refInfos.Insert(rInfoDQ)
		
	Quit refInfos
]]></Implementation>
</Method>

<Method name="GetInvoicePartyInfos">
<ClassMethod>1</ClassMethod>
<FormalSpec>Mandant:DBCore.Mandant,Order:Alliance.Common.Model.Order.Order</FormalSpec>
<ReturnType>%Library.ListOfObjects</ReturnType>
<Implementation><![CDATA[
	
	set partyInfos = ##class(%Library.ListOfObjects).%New()
	
	//BY
	set pInfoBY = ##class(Alliance.Common.Model.Invoice.PartyInformation).%New()
	set pInfoBY.Type = "BY"
	set pInfoBY.PartyID = Order.Buyer.PartyId
	set pInfoBY.CodeListRespAgy = "9"
	
	set buyerOid = ##class(DBCore.MandantEinstellung).GetStringEinst(Mandant.%Id(), ##class(DBCore.Konst).INVOICEBUYER())
	set buyer = ##class(DBAdressen.Adresse).%OpenId(buyerOid)
	if (buyer '= $$$NULLOREF) {
		set pInfoBY.Name = buyer.Name
		set pInfoBY.Name2 = buyer.VornameZusatz1
		set pInfoBY.Street = buyer.Strasse
		set pInfoBY.Street2 = ""
		set pInfoBY.City = buyer.Ort
		set pInfoBY.ZIPCode = buyer.Plz
		set pInfoBY.Country = "CH"
	}
	do partyInfos.Insert(pInfoBY)
	
	//IV
	set pInfoIV = ##class(Alliance.Common.Model.Invoice.PartyInformation).%New()
	set pInfoIV.Type = "IV"
	set pInfoIV.PartyID = Order.Invoicee.PartyId
	set pInfoIV.CodeListRespAgy = "9"

	set ivOid = ##class(DBCore.MandantEinstellung).GetStringEinst(Mandant.%Id(), ##class(DBCore.Konst).INVOICERECHNUNGSPRUEFUNG())
	set iv = ##class(DBAdressen.Adresse).%OpenId(ivOid)
	if (iv '= $$$NULLOREF) {
		set pInfoIV.Name = iv.Name
		set pInfoIV.Name2 = iv.VornameZusatz1
		set pInfoIV.Street = iv.Strasse
		set pInfoIV.Street2 = ""
		set pInfoIV.City = iv.Ort
		set pInfoIV.ZIPCode = iv.Plz
		set pInfoIV.Country = "CH"
	}
	do partyInfos.Insert(pInfoIV)
	
	//SU
	set pInfoSU = ##class(Alliance.Common.Model.Invoice.PartyInformation).%New()
	set pInfoSU.Type = "SU"
	set pInfoSU.PartyID = Order.Supplier.PartyId
	set pInfoSU.CodeListRespAgy = "9"
	set pInfoSU.Name = Mandant.Name
	set pInfoSU.Name2 = Mandant.Bezeichnung
	set pInfoSU.Street = Mandant.Strasse
	set pInfoSU.Street2 = ""
	set pInfoSU.City = Mandant.Ort
	set pInfoSU.ZIPCode = Mandant.Plz
	set pInfoSU.Country = "CH"
	set pInfoSU.VATRegNo = $Replace(Mandant.MwstNummer, " ","")
	do partyInfos.Insert(pInfoSU)
	
	//II
	set pInfoII = ##class(Alliance.Common.Model.Invoice.PartyInformation).%New()
	set pInfoII.Type = "II"
	set pInfoII.PartyID = Order.Supplier.PartyId
	set pInfoII.CodeListRespAgy = "9"
	set pInfoII.Name = Mandant.Name
	set pInfoII.Name2 = Mandant.Bezeichnung
	set pInfoII.Street = Mandant.Strasse
	set pInfoII.Street2 = ""
	set pInfoII.City = Mandant.Ort
	set pInfoII.ZIPCode = Mandant.Plz
	set pInfoII.Country = "CH"
	set pInfoII.VATRegNo = $Replace(Mandant.MwstNummer, " ","")
	do partyInfos.Insert(pInfoII)
	
	//DP
	set pInfoDP = ##class(Alliance.Common.Model.Invoice.PartyInformation).%New()
	set pInfoDP.Type = "DP"
	set pInfoDP.PartyID = Order.DeliveryParty.PartyId
	set pInfoDP.CodeListRespAgy = Order.DeliveryParty.CodeListResp
	set pInfoDP.Name = Order.DeliveryParty.Name1
	set pInfoDP.Name2 = Order.DeliveryParty.Name2
	set pInfoDP.Street = Order.DeliveryParty.Street
	set pInfoDP.Street2 = ""
	set pInfoDP.City = Order.DeliveryParty.City
	set pInfoDP.ZIPCode = Order.DeliveryParty.ZIPCode
	set pInfoDP.Country = Order.DeliveryParty.CountryCode
	do partyInfos.Insert(pInfoDP)
	
	Quit partyInfos
]]></Implementation>
</Method>

<Method name="GetInvoicePaymentTerms">
<ClassMethod>1</ClassMethod>
<FormalSpec>AnzTage:%String</FormalSpec>
<ReturnType>%Library.ListOfObjects</ReturnType>
<Implementation><![CDATA[
	
	set pTerms = ##class(%Library.ListOfObjects).%New()
	
	//terms
	set pterm = ##class(Alliance.Common.Model.Invoice.PaymentTerms).%New()	
	set pterm.Type = "1"
	set pterm.TimeRef = "5"
	set pterm.TimeRelation = "3"
	set pterm.PeriodType = "D"
	set pterm.PeriodCount = AnzTage
	//set pterm.DiscountDue = 
	//set pterm.NetDue = 
	do pTerms.Insert(pterm)
	
	Quit pTerms
]]></Implementation>
</Method>

<Method name="GetInvoiceLines">
<ClassMethod>1</ClassMethod>
<FormalSpec>DefAKOid:%String,OrderOid:%String,MandantOid:%String,IsGutschrift:%Boolean</FormalSpec>
<ReturnType>%Library.ListOfObjects</ReturnType>
<Implementation><![CDATA[
	
	set lines = ##class(%Library.ListOfObjects).%New()
	
	set linesUnsorted = ""
	
	set auftrag = ##class(DBAgrofresh.Auftragskopf).%OpenId(DefAKOid)

	
	set key = ""
 	do {
    	set pos = auftrag.Auftragspos.GetNext(.key)
    	if ((pos '= "") && (pos.Artikelcode < ##class(DBAgrofresh.Konst).AcLastArtikel())
    			&& (pos.AnzahlGebinde '= 0)) {
	    	
	    	set invLine = ##class(Alliance.Common.Model.Invoice.InvoiceLine).%New()
	    	
	    	//get Coop Art Nr
	    	set spezArt = ##class(DBAgrofresh.Preis).GetPreis(auftrag.Mandant, auftrag.Mandant, auftrag.Adresse.Adresse.%Id(),pos.Artikel.%Id(),$$$YES,$$$NO,"","",$$$NO)
	    	set coopnr = spezArt.KundenSpezArtNr
	    	
	    	//get orderline
	    	set orderLineOid = ##class(Alliance.Agris.Logic.Generator).GetLineOidFromOrderLine(OrderOid,coopnr)
			set orderLine = ##class(Alliance.Common.Model.Order.OrderLine).%OpenId(orderLineOid)
			
			//take line when found in order
			if (orderLine '= $$$NULLOREF) {
				w "coopnr: "_coopnr_" barcode: "_spezArt.Barcode,!
				set invLine.ItemNo = spezArt.Barcode
				set invLine.ItemTypeId = "SRV"
				set invLine.ProductIds = ..GetInvoiceProductIds(coopnr, pos.Artikel.ArtikelNr)
				set invLine.ItemDescriptions = ..GetInvoiceItemDescriptions(pos.Artikel.GetArtikeltext(MandantOid, "de"),
					pos.Artikel.GetArtikeltext2(MandantOid, "de"))
				set invLine.Quantities = ..GetInvoiceQuantities(pos.AnzahlGebinde, IsGutschrift)
				
				//in Coop Spec nicht vorhanden
				//set invLine.DeliveryDate = 
				set nbetrag = 0
				set taxdueamount = 0
				set taxableamount = 0
				if (IsGutschrift = $$$NO) {
					set nbetrag = pos.Nettobetrag2ExklMwstEW
					set taxdueamount = pos.Nettobetrag2MwstbetragEW
					set taxableamount = pos.Nettobetrag2ExklMwstEW
				} else {
					set nbetrag = $ZABS(pos.Nettobetrag2ExklMwstEW)
					set taxdueamount = $ZABS(pos.Nettobetrag2MwstbetragEW)
					set taxableamount = $ZABS(pos.Nettobetrag2ExklMwstEW)
				}
				set invLine.MonetaryAmount = nbetrag
				
				//in Coop Spec nicht vorhanden
				//set invLine.LinePaymentTerms = 
				
				set invLine.PriceDetails = ..GetInvoicePriceDetails(pos.Preis)
				set invLine.OrderRefs = ..GetInvoiceOrderRefs(orderLine.Order.OrderNo,orderLine.LineNo)
				set invLine.VATPercent = pos.MwstSatz
				set invLine.TaxDueAmount = taxdueamount
				set invLine.TaxableAmount = taxableamount
				
				set linesUnsorted(orderLine.LineNo,invLine) = invLine
			
			}
	    }
 	} while (key '= "")

 	//sum the quantities of lines with same order position code
    //happens for example if a part of a article is import
   	set entryAdded = $$$NO   
 	
 	//bring the lines in the order like the coop order is
 	set cntLines = 1
 	set ln = ""
    for {
        set ln = $order(linesUnsorted(ln))
        quit:(ln = "")
        
	    set line = ""
        for {
            set line = $order(linesUnsorted(ln, line) )
            quit:(line = "")
			set entry = linesUnsorted(ln,line)
			set entry.ItemID = cntLines
			
			
			//check lines if there is already a line with the same sap no
			if (lines.Count() > 0) {
				set tmpKey = ""
				do {
					set e = lines.GetNext(.tmpKey)	
					if (e '= "") {
						set sapE = ..GetProductNoSAPByOrderLine(e)
						set sapEntry = ..GetProductNoSAPByOrderLine(entry)
						if (sapE = sapEntry) {
							//add the quantity
							set qtyKey = ""
							set qtys = e.Quantities
							do {
								set q = qtys.GetNext(.qtyKey)
								//quantity object of existing line
								if ((q '= "") && (q.Type = "47")) {
									
									//get quantity object of temp line entry
									set tmpqtyKey = ""
									set tmpqtys = entry.Quantities
									do {
										set tmpQ = tmpqtys.GetNext(.tmpqtyKey)
										if ((tmpQ '= "") && (tmpQ.Type = "47")) {
											set q.Quantity = q.Quantity + tmpQ.Quantity
											Quit
										}
										
									} while(tmpqtyKey '= "")

								}
								
							} while(qtyKey '= "")
							
							//add amount and vat
							set e.MonetaryAmount = e.MonetaryAmount + entry.MonetaryAmount
							set e.TaxDueAmount = e.TaxDueAmount + entry.TaxDueAmount
							set e.TaxableAmount = e.TaxableAmount + entry.TaxableAmount
							set entryAdded = $$$YES
							Quit
						}	
					}
				} while(tmpKey '= "")
				
			}
			
			if (entryAdded = $$$NO) {
				set cntLines = cntLines + 1
				do lines.Insert(entry)
			} else {
				set entryAdded = $$$NO
			}
        }
    }
        
	
	Quit lines
]]></Implementation>
</Method>

<Method name="GetInvoiceProductIds">
<ClassMethod>1</ClassMethod>
<FormalSpec>SAPNr:%String,AllianceArtNr:%String</FormalSpec>
<ReturnType>%Library.ListOfObjects</ReturnType>
<Implementation><![CDATA[
	
	set pIds = ##class(%Library.ListOfObjects).%New()
	
	set pIdIN = ##class(Alliance.Common.Model.Invoice.ProductId).%New()
	//1 if GTIN is in LIN, 5 if not (GTIN should be always in LIN)
	set pIdIN.NumberType = "1"
	set pIdIN.ProductNo = SAPNr
	set pIdIN.NumberOwner = "IN"
	do pIds.Insert(pIdIN)
	
	set pIdSA = ##class(Alliance.Common.Model.Invoice.ProductId).%New()
	set pIdSA.NumberType = "1"
	set pIdSA.ProductNo = AllianceArtNr
	set pIdSA.NumberOwner = "SA"
	do pIds.Insert(pIdSA)

	Quit pIds
]]></Implementation>
</Method>

<Method name="GetInvoiceItemDescriptions">
<ClassMethod>1</ClassMethod>
<FormalSpec>ArtText1:%String,ArtText2:%String</FormalSpec>
<ReturnType>%Library.ListOfObjects</ReturnType>
<Implementation><![CDATA[
	set descs = ##class(%Library.ListOfObjects).%New()
	
	set desc = ##class(Alliance.Common.Model.Invoice.ItemDescription).%New()
	set desc.Type = "F"
	set desc.Ident = "CU"
	set desc.RespAgcy = "9"
	set desc.Textline1 = ArtText1
	set desc.Textline2 = ArtText2
	set desc.LanguageCode = "DE"
	do descs.Insert(desc)
	
	Quit descs
]]></Implementation>
</Method>

<Method name="GetInvoiceQuantities">
<ClassMethod>1</ClassMethod>
<FormalSpec>Quantity:%String,IsGutschrift:%Boolean</FormalSpec>
<ReturnType>%Library.ListOfObjects</ReturnType>
<Implementation><![CDATA[
	set qs = ##class(%Library.ListOfObjects).%New()
	
	set q = ##class(Alliance.Common.Model.Invoice.QuantityInfo).%New()
	set q.Type = "47"
	if (IsGutschrift = $$$NO) {
		set q.Quantity = Quantity
	} else {
		set q.Quantity = $ZABS(Quantity)
	}
	do qs.Insert(q)
	
	Quit qs
]]></Implementation>
</Method>

<Method name="GetInvoicePriceDetails">
<ClassMethod>1</ClassMethod>
<FormalSpec>PreisNettoExklMwst:%String</FormalSpec>
<ReturnType>%Library.ListOfObjects</ReturnType>
<Implementation><![CDATA[
	set details = ##class(%Library.ListOfObjects).%New()
	
	set pAAA = ##class(Alliance.Common.Model.Invoice.PriceInfo).%New()
	set pAAA.PriceCode = "AAA"
	set pAAA.PriceAmount = PreisNettoExklMwst
	set pAAA.PriceSpec = "NTP"
	do details.Insert(pAAA)
	
	Quit details
]]></Implementation>
</Method>

<Method name="GetInvoiceOrderRefs">
<ClassMethod>1</ClassMethod>
<FormalSpec>OrderNo:%String,OrderPosNo:%String</FormalSpec>
<ReturnType>%Library.ListOfObjects</ReturnType>
<Implementation><![CDATA[
	set refs = ##class(%Library.ListOfObjects).%New()
	
	set refON = ##class(Alliance.Common.Model.Invoice.ReferenceInfo).%New()
	set refON.ReferenceType = "ON"
	set refON.ReferenceNo = OrderNo
	set refON.LineNo = OrderPosNo
	do refs.Insert(refON)
	
	Quit refs
]]></Implementation>
</Method>

<Method name="GetInvoiceMonetaryDetails">
<ClassMethod>1</ClassMethod>
<FormalSpec>TotalAmount:%String,TotalVAT:%String,ESR:%String,IsGutschrift:%Boolean</FormalSpec>
<ReturnType>%Library.ListOfObjects</ReturnType>
<Implementation><![CDATA[
	set details = ##class(%Library.ListOfObjects).%New()
	
	set detTOTAmount = ##class(Alliance.Common.Model.Invoice.MonetaryDetail).%New()
	set detTOTAmount.Type = "77"
	if (IsGutschrift = $$$NO) {
		set detTOTAmount.Amount = TotalAmount	
	} else {
		set detTOTAmount.Amount = $ZABS(TotalAmount)
	}
	set detTOTAmount.Referencetype = "PQ"
	set detTOTAmount.ReferenceNo = $Replace(ESR, " ","")
	do details.Insert(detTOTAmount)
	
	set detTOTVAT = ##class(Alliance.Common.Model.Invoice.MonetaryDetail).%New()
	set detTOTVAT.Type = "176"
	if (IsGutschrift = $$$NO) {
		set detTOTVAT.Amount = TotalVAT
	} else {
		set detTOTVAT.Amount = $ZABS(TotalVAT)
	}
	
	do details.Insert(detTOTVAT)
	
	Quit details
]]></Implementation>
</Method>

<Method name="GetInvoiceTaxDetail">
<ClassMethod>1</ClassMethod>
<FormalSpec>MwstSatz:%String,TaxAmount:%String,TaxableAmount:%String,IsGutschrift:%Boolean</FormalSpec>
<ReturnType>Alliance.Common.Model.Invoice.TaxDetail</ReturnType>
<Implementation><![CDATA[
	
	set det = ##class(Alliance.Common.Model.Invoice.TaxDetail).%New()
	set det.FnType = "7"
	set det.TaxType = "VAT"
	set det.Percent = MwstSatz
	if (IsGutschrift = $$$NO) {
		set det.TaxAmount = TaxAmount
		set det.TaxableAmount = TaxableAmount
	} else {
		set det.TaxAmount = $ZABS(TaxAmount)
		set det.TaxableAmount = $ZABS(TaxableAmount)
	}
	Quit det
]]></Implementation>
</Method>

<Method name="GetLineOidFromOrderLine">
<ClassMethod>1</ClassMethod>
<FormalSpec>OrderOid:%String,BuyerArticleNo:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set strSQL = "SELECT ID FROM Alliance_Common_Model_Order.OrderLine l WHERE l.Order='"_OrderOid_"' AND l.BuyerArticleNo='"_BuyerArticleNo_"'"
	Set rs = ##class(%Library.ResultSet).%New("%DynamicQuery:SQL")

	Do rs.Prepare(strSQL)
	Set sc=rs.Execute()
	set orderId = ""

	IF $$$ISOK(sc) {
		if (rs.Next(.sc)) {
			set orderId = rs.Data("ID")
		}
	}

	quit orderId
]]></Implementation>
</Method>

<Method name="GetProductNoSAPByOrderLine">
<ClassMethod>1</ClassMethod>
<FormalSpec>line:Alliance.Common.Model.Invoice.InvoiceLine</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set retval = ""
	set key = ""
	if (line.ProductIds '= $$$NULLOREF) {
		set productIds = line.ProductIds
		do {
			set productId = productIds.GetNext(.key)
			if ((productId '= $$$NULLOREF) && (productId.NumberOwner = "IN")) {
				set retval = productId.ProductNo		
			}
		} while(key '= "")
	}
	Quit retval
]]></Implementation>
</Method>

<Method name="WriteKALMessageByInvoiceId">
<ClassMethod>1</ClassMethod>
<FormalSpec>InvoiceId:%String,AbnehmerDebiId:%String</FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	
	set typ = ##class(Alliance.Common.KAL.Code.MessageType).Invoice()
	set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).InvoiceErstellt()
	set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisM()
	set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
	set msgStatus = $$$OK
	set todayH = ##class(Base.DateTime).today().toHorolog()
	do ##class(Alliance.Common.KAL.Message).new(.msgStatus, typ, subTyp, senderTyp, severity, todayH, AbnehmerDebiId,,, InvoiceId)
	
	Quit msgStatus
]]></Implementation>
</Method>

<Method name="WriteKALMessageByKALMsgId">
<ClassMethod>1</ClassMethod>
<FormalSpec>fromId:%Integer,toId:%Integer</FormalSpec>
<Implementation><![CDATA[
	
	set count = 0
	set invoiceId = ""
	set verteilzentrumId = ""
	&sql(DECLARE curKALMsg CURSOR FOR
			SELECt additionalText, vzId 
			INTO :invoiceId, :verteilzentrumId
			FROM Alliance_Common_KAL.Message 
			where subtypvalue like 'Invoice in Agris erstellt' and 
				id>=:fromId and 
				id<=:toId 
			order by id desc)
	
	&sql(OPEN curKALMsg)
	
	FOR { &sql(FETCH curKALMsg)
        QUIT:SQLCODE  
        
        w "InvoiceId: ", invoiceId
        set status = ##class(Alliance.Agris.Logic.InvoiceGenerator).WriteKALMessageByInvoiceId(invoiceId,verteilzentrumId)
        w "  -  ", status,!
        set count = count + 1
	}
	
	w count, " Meldungen generiert.",!
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.Logic.Qry">
<Super>%RegisteredObject</Super>
<TimeChanged>62427,30003.277924</TimeChanged>
<TimeCreated>61831,63922.107383</TimeCreated>

<Query name="OrdersByDate">
<Type>%SQLQuery</Type>
<SqlProc>1</SqlProc>
<SqlQuery><![CDATA[	SELECT TOP 100 ID, 
			OrderNo,
			DocumentDateTime_Data AS DocumentDateTime,
			ReqDeliveryDate_Data AS ReqDeliveryDate,
			DeliveryParty->Name1,
			DeliveryParty->Name2,
			DeliveryParty->ZIPCode,
			DeliveryParty->City,
			(SELECT Count(ID) FROM Alliance_Common_Model_Order.OrderLine ol WHERE ol."Order" = o.ID) As AnzLines,
			(SELECT ID FROM DBPlattform.Auftragskopf ak WHERE ak.BestellNr=o.OrderNo) As AuftragskopfOid
	FROM Alliance_Common_Model_Order."Order" o
	ORDER BY ReqDeliveryDate DESC, OrderNo]]></SqlQuery>
</Query>
</Class>


<Class name="Alliance.Agris.Setup.CommunicationParamsSetupPage">
<Super>%CSP.Page</Super>
<TimeChanged>61828,56473.468</TimeChanged>
<TimeCreated>61751,44994.940174</TimeCreated>

<Method name="OnPage">
<ClassMethod>1</ClassMethod>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	Write "<html>"

	if (%request.Get("ACTION")="SAVE")
	{
		do ##class(Alliance.Common.KAL.CommunicationParams).setAllParameters(%request.Get("id"), %request.Get("type"), %request.Get("name"), %request.Get("url"))
	}


	Do ..OnPageHEAD()
	Do ..OnPageBODY()

	Write "</html>"
	quit $$$OK
]]></Implementation>
</Method>

<Method name="OnPageHEAD">
<ClassMethod>1</ClassMethod>
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[
	Write "<head>"
	Write !,"		<title>Alliance Keep-Alive Service Setup</title>",!
	Write "	",!
	Write "		"
	Write "<style>"
	Write !,"			HTML {",!
	Write "				font-family: Arial, Helvetica, Sans Serif;",!
	Write "			}",!
	Write "			",!
	Write "			INPUT {",!
	Write "				border: 1px solid black;",!
	Write "			}",!
	Write "			",!
	Write "			.header {",!
	Write "				font-weight: bold;",!
	Write "				width: 10em;",!
	Write "			}",!
	Write "			",!
	Write "			.input {",!
	Write "				width: 80em;",!
	Write "			}",!
	Write "		"
	Write "</style>"
	Write !,"	"
	Write "</head>"
]]></Implementation>
</Method>

<Method name="OnPageBODY">
<ClassMethod>1</ClassMethod>
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[
	Write "<body>"
	Write !,"		<h1>Alliance Keep-Alive Service setup</h1>",!
	Write "		",!
	Write "		"
	Write "<form name=""KAL"" method=""POST"" action="""_..%ClassName(1)_".cls"">"
	Write !,..InsertHiddenFields(..%ClassName(1)_".cls"),!
	Write !,"		",!
	Write "			"
	Write "<input type=""hidden"" name=""ACTION"" value=""SAVE""/>"
	Write !,"			",!
	Write "			<table>",!
	Write !,"				<tr>",!
	Write "					<td class=""header"">Client-ID:</td>",!
	Write "					<td class=""input"">",!
	Write "						"
	Write "<input type=""text"" name=""id"" size=""20"" value="""_(..EscapeHTML(##class(Alliance.Common.KAL.CommunicationParams).getClientId()))_""">"
	Write "</input>",!
	Write "					</td>",!
	Write "				</tr>",!

	Write "				<tr>",!
	Write "					<td class=""header"">Client-Type:</td>",!
	Write "					<td class=""input"">",!
	Write "						"
	Write "<input type=""text"" name=""type"" size=""30"" value="""_(..EscapeHTML(##class(Alliance.Common.KAL.CommunicationParams).getClientType()))_""">"
	Write "</input>",!
	Write "					</td>",!
	Write "				</tr>",!

	Write "				<tr>",!
	Write "					<td class=""header"">Client-Name:</td>",!
	Write "					<td class=""input"">",!
	Write "						"
	Write "<input type=""text"" name=""name"" size=""100"" value="""_(..EscapeHTML(##class(Alliance.Common.KAL.CommunicationParams).getClientName()))_""">"
	Write "</input>",!
	Write "					</td>",!
	Write "				</tr>",!

	Write "			",!
	Write "				<tr>",!
	Write "					<td class=""header"">Server-URL:</td>",!
	Write "					<td class=""input"">",!
	Write "						"
	Write "<input type=""text"" name=""url"" size=""100"" value="""_(..EscapeHTML(##class(Alliance.Common.KAL.CommunicationParams).getServerURL()))_""">"
	Write "</input>",!
	Write "					</td>",!
	Write "				</tr>",!

	Write "				<tr>",!
	Write "					<td>",!
	Write "						"
	Write "<input type=""submit"" value=""Save""/>"
	Write !,"					</td>",!
	Write "				</tr>",!
	Write "			</table>",!
	Write "		"
	Write "</form>"
	Write !,"	"
	Write "</body>"
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.Setup.Initializer">
<Super>Base.InitializerAbstract</Super>
<TimeChanged>61828,56472.89</TimeChanged>
<TimeCreated>61808,32945.39</TimeCreated>

<UDLText name="T">
<Content><![CDATA[
// 	write ##class(Alliance.Agris.Setup.Initializer).initialize()

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
// 	write ##class(Alliance.Agris.Setup.Initializer).initialize(1)		//	initialize forced

]]></Content>
</UDLText>

<Method name="runInitialization">
<Description>
	Initialize codes and vital system parts</Description>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set status = $$$OK

	set status = ##class(Alliance.Common.KAL.Code.SystemType).initialize()
	quit:($$$ISERR(status)) status

	set status = ##class(Alliance.Common.KAL.Code.MessageSenderType).initialize()
	quit:($$$ISERR(status)) status

	set status = ##class(Alliance.Common.KAL.Code.MessageType).initialize()
	quit:($$$ISERR(status)) status

	set status = ##class(Alliance.Common.KAL.Code.MessageSubType).initialize()
	quit:($$$ISERR(status)) status

	set status = ##class(Alliance.Common.KAL.Code.MessageSeverity).initialize()
	quit:($$$ISERR(status)) status

	//	Initialize the Communication Parameters with initial values.
	//	They will be set to the correct values remotely from Alliance via SetupService.
	set status = ##class(Alliance.Common.KAL.CommunicationParams).setAllParameters("ClientID:undef", "ClientType:undef", "ClientName:undef", "ServerURL:undef")
	quit:($$$ISERR(status)) status

	quit $$$OK
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="Alliance.Agris.Setup.SetupService">
<Description>

	Ensemble calls this WebService remotely to initialize and set up this Agris instance.
	This defines the SystemId (= name) and the Alliance WebService URL (for KAL-Messages)
</Description>
<ProcedureBlock>1</ProcedureBlock>
<Super>%SOAP.WebService</Super>
<TimeChanged>61832,45541.312</TimeChanged>
<TimeCreated>61754,55839.427362</TimeCreated>

<Parameter name="SERVICENAME">
<Description>
Name des WebService.</Description>
<Default>SetupService</Default>
</Parameter>

<Parameter name="NAMESPACE">
<Description>
TODO: change this to actual SOAP namespace.
SOAP Namespace für den WebService</Description>
<Default>http://www.alliance.ch/setup/1.0</Default>
</Parameter>

<Parameter name="USECLASSNAMESPACES">
<Description>
Namespaces von referenzierten Klassen werden in der WSDL verwendet.</Description>
<Default>1</Default>
</Parameter>

<Method name="SetupClient">
<ClassMethod>1</ClassMethod>
<FormalSpec>id:%String,type:%String,name:%String,allianceURL:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<WebMethod>1</WebMethod>
<Implementation><![CDATA[
	//	Initialize codes and vital system parts:
	do ##class(Alliance.Agris.Setup.Initializer).initialize()

	//	Setup the communication parameters:
	set status = ##class(Alliance.Common.KAL.CommunicationParams).setAllParameters(id, type, name, allianceURL)
	if ($$$ISERR(status))		quit status

	//	Define and start KAL Task (requires the communication parameters to be set up correctly):
	set taskName = $ZUtil(5)_"-KAL"
	&sql(SELECT %ID INTO :TID FROM %SYS.Task WHERE Name = :taskName)	
	if (SQLCODE=100)
	{
		do ..ScheduleTask(taskName, "Alliance.Common.KAL.KeepAliveTask", "Send Keep-Alive-Messages to server")
	}

	Quit "SetupClient"
]]></Implementation>
</Method>

<Method name="ScheduleTask">
<ClassMethod>1</ClassMethod>
<FormalSpec>taskName:%String,taskClass:%String,description:%String</FormalSpec>
<Implementation><![CDATA[
	set task = ##class(%SYS.Task).%New()

	set task.DailyEndTime = 0
	set task.Description = description
	set task.DailyFrequency = 1
	set task.DailyFrequencyTime = 0
	set task.DailyIncrement = 1
	set task.DailyStartTime = 0
	set task.Name = taskName
	set task.NameSpace = $ZUtil(5)
	set task.RescheduleOnStart = 1
	set task.RunAsUser = "_SYSTEM"
	set task.Settings = $lb("Iterations","4","WaitTime","15")
	set task.TaskClass = taskClass
	set task.TimePeriodEvery = 1
	set task.Type = 0 //	0 = System; Before: 2 = User
	do task.%Save()
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.Setup.Version">
<Description>
	
	Project Change History:

---	Date	---	By	---------	What	-------------------------

	30.03.2010	Lem		Added code class 'Alliance.Common.KAL.Code.MessageSeverity'
						Removed all codes 'Test' from all code classes
						Extended class 'Alliance.Common.KAL.Message' with new code 'MessageSeverity'
									and with new property 'additionalText'.

	30.03.2010	Lem		Adaption in classes using Alliance.Common.KAL.Message to the new Message structure.

	01.04.2010	Lem		Cleanup of package 'Common.KAL':
						remove all redundant classes and get rid of the 'Notification' stuff

	04.04.2010	Lem		Added class Setup.Version
						Adapted class Setup.Initializer to use Setup.Version

	06.04.2010	Lem		Big Cleanup:
						Removed all redundant classes, moved some classes to different packages

	07.04.2010	Lem		Added Class 'Alliance.Common.KAL.Code.SystemType'

Version 1.3.0:

	08.04.2010	Lem		Correction: ##class(Alliance.Common.KAL.Code.MessageSenderType).Extranet()
						was still used someplace instead of .AgrisMExtranet()

Version 1.3.1:

	09.04.2010	Lem		Cleanup: Removed redundant WebService classes

Version 1.3.2:

	11.04.2010	Lem		Cleanup: Streamlined KAL Codes and gave them better names
						Moved class CommunicationParams from Package Alliance.Agris.Setup to Alliance.Common.KAL

	13.04.2010	Lem		Changed Common.KAL.Message to handle vzId, lieferantId, and bestellId optionally NOT as IDs
						but as names.

	15.04.2010	Lem		Despatch Advice processing implemented

Version 1.3.3:

	20.04.2010	Lem		Changed some codes (keys as well as values)

Version 1.3.4:

	26.04.2010	Lem		Screen "UebersichtOffeneLieferungen.csp":
						Now the screen shows the correct contents even when AJAX does not work.

	29.04.2010	Lem		Small adjustments in GUI

	30.04.2010	Lem		Adapted to Roger's corrections concerning "definitiv"-status of orders
</Description>
<Super>Base.VersionAbstract</Super>
<TimeChanged>61846,61906.984</TimeChanged>
<TimeCreated>61820,35384.421</TimeCreated>

<UDLText name="T">
<Content><![CDATA[
//	=====	Parameters			===============================================

]]></Content>
</UDLText>

<Parameter name="Project">
<Default>Alliance</Default>
</Parameter>

<Parameter name="SubProject">
<Default>AgrisM</Default>
</Parameter>

<Parameter name="Version">
<Default>1.3.4</Default>
</Parameter>

<Parameter name="LastProjectChange">
<Default>30.04.2010</Default>
</Parameter>
</Class>


<Class name="Alliance.Agris.WS.WSServiceReceiveNewOrder">
<ProcedureBlock>1</ProcedureBlock>
<Super>%SOAP.WebService</Super>
<TimeChanged>62045,54995.101023</TimeChanged>
<TimeCreated>61824,56779.734</TimeCreated>

<Parameter name="SERVICENAME">
<Description>
Name of the WebService.</Description>
<Default>ReceiveNewOrder</Default>
</Parameter>

<Parameter name="NAMESPACE">
<Description>
SOAP Namespace für den WebService</Description>
<Default>http://www.alliance.ch/agris/1.0</Default>
</Parameter>

<Parameter name="USECLASSNAMESPACES">
<Description>
Namespaces of referenced classes will be used in the WSDL.</Description>
<Default>1</Default>
</Parameter>

<Parameter name="SOAPVERSION">
<Description>
This is the SOAP version supported by the service.</Description>
<Default>1.1</Default>
</Parameter>

<Method name="newOrder">
<ClassMethod>1</ClassMethod>
<FormalSpec>order:Alliance.Common.Model.Order.Order</FormalSpec>
<ReturnType>%String</ReturnType>
<WebMethod>1</WebMethod>
<Implementation><![CDATA[
	if (order '= $$$NULLOREF)
	{
		set status = order.%Save()
	
		set typ = ##class(Alliance.Common.KAL.Code.MessageType).Lieferung()
		set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).BestellungInAgrisAngekommen()
		set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisM()
		set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
		set todayH = ##class(Base.DateTime).today().toHorolog()

		set vzName = order.DeliveryParty.Name1 _ " " _ order.DeliveryParty.Name2
		set orderNr = "'" _ order.OrderNo _ "'"

		do ##class(Alliance.Common.KAL.Message).new(.status, typ, subTyp, senderTyp, severity, todayH, vzName,, orderNr)

		do ##class(Alliance.Agris.Logic.Generator).GenerateAuftrag(.order)
	}

	quit "OK"
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.WS.WSServiceReturnDespatchAdvice">
<ProcedureBlock>1</ProcedureBlock>
<Super>%SOAP.WebService</Super>
<TimeChanged>61831,33647.125</TimeChanged>
<TimeCreated>61824,57248.39</TimeCreated>

<Parameter name="SERVICENAME">
<Description>
Name of the WebService.</Description>
<Default>ReturnDespatchAdvice</Default>
</Parameter>

<Parameter name="NAMESPACE">
<Description>
SOAP Namespace für den WebService</Description>
<Default>http://www.alliance.ch/agris/1.0</Default>
</Parameter>

<Parameter name="USECLASSNAMESPACES">
<Description>
Namespaces of referenced classes will be used in the WSDL.</Description>
<Default>1</Default>
</Parameter>

<Parameter name="SOAPVERSION">
<Description>
This is the SOAP version supported by the service.</Description>
<Default>1.1</Default>
</Parameter>

<Method name="id">
<ClassMethod>1</ClassMethod>
<FormalSpec>id:%String</FormalSpec>
<ReturnType>Alliance.Common.Model.DespatchAdvice.DespatchAdvice</ReturnType>
<WebMethod>1</WebMethod>
<Implementation><![CDATA[	quit ##class(Alliance.Common.Model.DespatchAdvice.DespatchAdvice).%OpenId(id)
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.WS.WSServiceReturnFinalOrder">
<ProcedureBlock>1</ProcedureBlock>
<Super>%SOAP.WebService</Super>
<TimeChanged>61824,57040.203</TimeChanged>
<TimeCreated>61824,56718.656</TimeCreated>

<Parameter name="SERVICENAME">
<Description>
Name of the WebService.</Description>
<Default>ReturnFinalOrder</Default>
</Parameter>

<Parameter name="NAMESPACE">
<Description>
SOAP Namespace für den WebService</Description>
<Default>http://www.alliance.ch/agris/1.0</Default>
</Parameter>

<Parameter name="USECLASSNAMESPACES">
<Description>
Namespaces of referenced classes will be used in the WSDL.</Description>
<Default>1</Default>
</Parameter>

<Parameter name="SOAPVERSION">
<Description>
This is the SOAP version supported by the service.</Description>
<Default>1.1</Default>
</Parameter>

<Method name="id">
<ClassMethod>1</ClassMethod>
<FormalSpec>id:%String</FormalSpec>
<ReturnType>Alliance.Common.Model.Order.Order</ReturnType>
<WebMethod>1</WebMethod>
<Implementation><![CDATA[	quit ##class(Alliance.Common.Model.Order.Order).%OpenId(id)
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.WS.WSServiceReturnInvoice">
<ProcedureBlock>1</ProcedureBlock>
<Super>%SOAP.WebService</Super>
<TimeChanged>62033,57875.486861</TimeChanged>
<TimeCreated>61824,57163.64</TimeCreated>

<Parameter name="SERVICENAME">
<Description>
Name of the WebService.</Description>
<Default>ReturnInvoice</Default>
</Parameter>

<Parameter name="NAMESPACE">
<Description>
SOAP Namespace für den WebService</Description>
<Default>http://www.alliance.ch/agris/1.0</Default>
</Parameter>

<Parameter name="USECLASSNAMESPACES">
<Description>
Namespaces of referenced classes will be used in the WSDL.</Description>
<Default>1</Default>
</Parameter>

<Parameter name="SOAPVERSION">
<Description>
This is the SOAP version supported by the service.</Description>
<Default>1.1</Default>
</Parameter>

<Method name="id">
<ClassMethod>1</ClassMethod>
<FormalSpec>id:%String</FormalSpec>
<ReturnType>Alliance.Common.Model.Invoice.Invoice</ReturnType>
<WebMethod>1</WebMethod>
<Implementation><![CDATA[	quit ##class(Alliance.Common.Model.Invoice.Invoice).%OpenId(id)
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.Web.AjaxHelper">
<Super>Alliance.Agris.Web.SecurePage</Super>
<TimeChanged>61846,57222.812</TimeChanged>
<TimeCreated>61788,51301.453</TimeCreated>

<Method name="OnPage">
<ClassMethod>1</ClassMethod>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set action = $get(%request.Data("action",1),"")

	///	Update for page "UebersichtOffeneLieferungen:"
	if (action = "offeneBestellungen")
	{
		set jsonArr = ##class(Alliance.Agris.Web.JSON.Array).%New()
		set userId = $get(%request.Data("userId",1),"")

		set resultSet = ##class(%ResultSet).%New("DBPlattform.AF.BestKopfAF:ListeOffeneBestellungenXNetGui")
		set status = resultSet.Execute(userId)
		while (resultSet.Next())
		{
			set jsonObj = ##class(Alliance.Agris.Web.JSON.Object).%New()

			set bestellKopfId = $get(resultSet.Data("ID"))
			set bestellNr = $get(resultSet.Data("BestellNr"))
			set lieferDatum = $get(resultSet.Data("Lieferdatum"))
			set lieferDatumKlartext = $replace($zdate(lieferDatum, 4), "/", ".")
			set liefermengeErfasst = $case($get(resultSet.Data("LiefermengeErfasst")),0:"nein",:"ja")
			set abnehmerId = $get(resultSet.Data("AbnehmerAdressId"))
			set abnehmerAnzeige = $get(resultSet.Data("AbnehmerName")) _ " (" _ $get(resultSet.Data("AbnehmerOrt")) _ ")"

			set definitiveBestellung = $get(resultSet.Data("DefinitiveBestellung"))
			set isAuftragDefinitiv = $get(resultSet.Data("IsAuftragDefinitiv"))
			set isDefinitiveBestellung = ((definitiveBestellung '= "") || (isAuftragDefinitiv = 1))
			set definitiveBestellungDisabled = $case(isDefinitiveBestellung,"0":"disabled",:"")
			set definitiveBestellungString = $case(isDefinitiveBestellung,"0":"provisorisch",:"definitiv")
			//set definitiveBestellungDisabled = $case($get(resultSet.Data("DefinitiveBestellung")),"":"disabled",:"")
			//set definitiveBestellungString = $case($get(resultSet.Data("DefinitiveBestellung")),"":"provisorisch",:"definitiv")

			do jsonObj.SetAt(bestellKopfId,"bestellKopfId")
			do jsonObj.SetAt(bestellNr,"bestellNr")
			do jsonObj.SetAt(lieferDatum,"lieferDatum")
			do jsonObj.SetAt(lieferDatumKlartext,"lieferDatumKlartext")
			do jsonObj.SetAt(liefermengeErfasst,"liefermengeErfasst")
			do jsonObj.SetAt(abnehmerId,"abnehmerId")
			do jsonObj.SetAt(abnehmerAnzeige,"abnehmerAnzeige")
			do jsonObj.SetAt(definitiveBestellungDisabled,"definitiveBestellungDisabled")
			do jsonObj.SetAt(definitiveBestellungString,"definitiveBestellungString")

			do jsonArr.Insert(jsonObj)
		}

		do jsonArr.JSONExportToString(.str)
		do jsonArr.JSONExport()
	}

	quit $$$OK
]]></Implementation>
</Method>

<Method name="testMakeBestellungDefinitiv">
<Description>
		Just for testing:
	write ##class(Alliance.Agris.Web.AjaxHelper).testMakeBestellungDefinitiv(23)</Description>
<ClassMethod>1</ClassMethod>
<FormalSpec>id:%Integer</FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	//	Define an instance of DBAgrofreshEK.BestellungsKopf.
	set definitiveBestellung = ##class(DBAgrofreshEK.BestellungsKopf).%New()

	//	Get the instance of DBPlattform.BestKopf with the ID id
	set provisorischeBestellung = ##class(DBPlattform.BestKopf).%OpenId(id)

	//	and make it's relationship 'DefinitiveBestellung' be the new instance of DBAgrofreshEK.BEstellungsKopf.
	set provisorischeBestellung.DefinitiveBestellung = definitiveBestellung

	quit provisorischeBestellung.%Save()
]]></Implementation>
</Method>

<Method name="testUnMakeBestellungDefinitiv">
<Description>
		Just for testing:
	write ##class(Alliance.Agris.Web.AjaxHelper).testUnMakeBestellungDefinitiv(23)</Description>
<ClassMethod>1</ClassMethod>
<FormalSpec>id:%Integer</FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	//	Get the instance of DBPlattform.BestKopf with the ID id
	set provisorischeBestellung = ##class(DBPlattform.BestKopf).%OpenId(id)

	//	Get it's definitiveBestellung
	set definitiveBestellungId = provisorischeBestellung.DefinitiveBestellung.%Id()

	//	Null-out the reference and save
	set provisorischeBestellung.DefinitiveBestellung = $$$NULLOREF
	set status = provisorischeBestellung.%Save()

	//	And delete the definitiveBestellung
	quit ##class(DBAgrofreshEK.BestellungsKopf).%DeleteId(definitiveBestellungId)
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.Web.ArticleActivator">
<Super>Alliance.Agris.Web.SecurePage</Super>
<TimeChanged>62268,56848.581345</TimeChanged>
<TimeCreated>62054,42534.389547</TimeCreated>

<Method name="OnPage">
<ClassMethod>1</ClassMethod>
<ReturnType>%Status</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[
	
	set artId = $get(%request.Data("articleId",1),"")
	set active = $get(%request.Data("active",1),$$$YES)
	
	if (artId '= "") {
		if (active = "true") {
			// delete from inactive table
			do ##class(DBPlattform.InactiveArticlesWeb).DeleteInactiveArticle($$$UID,artId)
			
		} else {
			// add to inactive table
			set i = ##class(DBPlattform.InactiveArticlesWeb).%New($$$UID, artId)
			do i.%Save()
		}
	}
	Quit $$$OK
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.Web.ArticleSearch">
<Super>Alliance.Agris.Web.SecurePage</Super>
<TimeChanged>62054,55080.458381</TimeChanged>
<TimeCreated>62054,42534.389547</TimeCreated>

<Method name="OnPage">
<ClassMethod>1</ClassMethod>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	
	set term = $get(%request.Data("term",1),"")
	if (term '= "") {
		set jsonArr = ##class(Alliance.Agris.Web.JSON.Array).%New()
	
		set resultSet = ##class(%ResultSet).%New("DBAgrofresh.AF.ArtikelAF:GetEntryByArtikelNr")
		set status = resultSet.Execute($$$MANDANTID, "de", term_"%")
		
		while (resultSet.Next()) {
			set jsonObj = ##class(Alliance.Agris.Web.JSON.Object).%New()
			do jsonObj.SetAt($get(resultSet.Data("ID")),"id")
			do jsonObj.SetAt($get(resultSet.Data("ArtikelNr"))_" - "_$get(resultSet.Data("Artikeltext")),"label")
			do jsonObj.SetAt($get(resultSet.Data("ArtikelNr")),"value")
			do jsonObj.SetAt($get(resultSet.Data("Artikeltext")),"valueText")
			do jsonArr.Insert(jsonObj)
		}

		do jsonArr.JSONExportToString(.str)
		do jsonArr.JSONExport()
	}
	Quit $$$OK
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.Web.BasePage">
<IncludeCode>Alliance,DBLogger</IncludeCode>
<Super>%CSP.Page</Super>
<TimeChanged>61849,31757.858304</TimeChanged>
<TimeCreated>61765,44290.062</TimeCreated>

<Method name="OnPreHTTP">
<Description><![CDATA[
Event handler for <b>PreHTTP</b> event: this is invoked before
the HTTP headers for a CSP page have been sent.  All changes to the
<class>%CSP.Response</class> class, such as adding cookies, HTTP headers,
setting the content type etc. must be made from within the OnPreHTTP() method.
Also changes to the state of the CSP application such as changing
%session.EndSession or %session.AppTimeout must be made within the OnPreHTTP() method.
It is prefered that changes to %session.Preserve are also made in the OnPreHTTP() method
as this is more efficient, although it is supported in any section of the page.
Return <b>0</b> to prevent <method>OnPage</method> from being called.]]></Description>
<ClassMethod>1</ClassMethod>
<ReturnType>%Boolean</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[
	set canAccess = ..CanAccess()
	if ('canAccess) {
		// Redirect auf Login Seite		
		set %response.Redirect = $$$APPURI_"/AgrisMLogin.csp?requestedPage="_%request.URL
		quit $$$OK
	}
	set sc = ..OnPreHTTPPage()
	quit sc
]]></Implementation>
</Method>

<Method name="CanAccess">
<Description>

Checks if user can access this page</Description>
<ClassMethod>1</ClassMethod>
<ReturnType>%Boolean</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[
	// No access restritions for subclassed pages
	quit $$$OK
]]></Implementation>
</Method>

<Method name="OnPreHTTPPage">
<Description>

template for page specific on OnPreHTTP handling </Description>
<ClassMethod>1</ClassMethod>
<ReturnType>%Boolean</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[	quit $$$OK
]]></Implementation>
</Method>

<Method name="SetErrorMessage">
<Description>

set error message to session</Description>
<ClassMethod>1</ClassMethod>
<FormalSpec>msg:%String</FormalSpec>
<Implementation><![CDATA[	set $$$ERR = msg
]]></Implementation>
</Method>

<Method name="GetErrorMessage">
<Description>

get error message from session</Description>
<ClassMethod>1</ClassMethod>
<FormalSpec>doKill:%Boolean=$$$YES</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set msg = $GET($$$ERR,"")
	k:(doKill) $$$ERR
	quit msg
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.Web.BaseSessionEvents">
<Super>%CSP.SessionEvents</Super>
<TimeChanged>62427,30241.735964</TimeChanged>
<TimeCreated>62427,30147.01731</TimeCreated>

<Method name="OnStartSession">
<Description><![CDATA[
Called when a new session is created and its values are initialised.
<p>This is called before the license for this session is allocated, and if
you wish to abort this session and return the standard out of licenses error
page then:
<example>
Set %session.EndSession=1
</example>]]></Description>
<ClassMethod>1</ClassMethod>
<Implementation><![CDATA[
	// declare web app as public to avoid that caché consumes a license
	// when webaddon is included in the license
	do $SYSTEM.License.PublicWebAppUser()
	Quit $$$OK
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.Web.ExranetPortalApp">
<Description>
Alliance.Agris.Web.ExranetPortalApp</Description>
<Super>%ZEN.application</Super>
<TimeChanged>61841,58376.015</TimeChanged>
<TimeCreated>61841,58376.015</TimeCreated>

<Parameter name="APPLICATIONNAME">
<Description>
This is the name of this application.</Description>
<Default>Extranet</Default>
</Parameter>

<Parameter name="HOMEPAGE">
<Description>
This is the URL of the main starting page of this application.</Description>
</Parameter>

<XData name="Style">
<Description>
This Style block contains application-wide CSS style definitions.</Description>
<Data><![CDATA[
<style type="text/css">
</style>
]]></Data>
</XData>
</Class>


<Class name="Alliance.Agris.Web.JSON.Adaptor">
<Description>
Copyright (c) 2010 :
f
SYNERVA Gesellschaft für Softwareentwicklung und Beratung mbH
Mergenthaler Allee 55
D-65760 Eschborn

http://www.synerva.de
mailto:info@synerva.de
	
--------------------------------------------------

Subclasses of this class can be projected to a JSON object. Object links will be exported as JSON subobjects
only if they also subclass this adaptor. Lists are projected to JSON array, (Cache) arrays to JSON objects.</Description>
<Abstract>1</Abstract>
<ClassType/>
<IncludeCode>%occInclude</IncludeCode>
<ProcedureBlock>1</ProcedureBlock>
<PropertyClass>Alliance.Agris.Web.JSON.PropClass</PropertyClass>
<TimeChanged>62427,55120.716362</TimeChanged>
<TimeCreated>61214,66295.706871</TimeCreated>

<Method name="JSONExport">
<Description><![CDATA[
Exports this instance as JSON to the passed in stream.
The stream is created if no valid stream is given. Loops through all properties and exports them using
<method>ExportValue</method>. Private, internal and multidimensional properties are ignored. If
a property has JSONENABLED=0 it is also ignored. Relationships are supported, only the "many" or "children"
cardinality is traversed to avoid loops. You may define a JSONNAME to be used instead of the property's name.
<br>
ATTENTION: this mechanism does not check circular links so this will end in a infinite loop!]]></Description>
<FormalSpec><![CDATA[&stream:%GlobalCharacterStream=$$$NULLOREF]]></FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set sc = $$$OK
	
	set:('$IsObject(stream)) stream = ##class(%GlobalCharacterStream).%New()
	set clName = ..%ClassName(1)
	set cdef = ##class(%Dictionary.CompiledClass).%OpenId(clName,,.sc)
	q:($$$ISERR(sc)) sc
	do stream.Write("{")
	set first = 1
	for i=1:1:cdef.Properties.Count() {
		set prop = cdef.Properties.GetAt(i)
		set propName = prop.Name	
		if ($System.Version.GetMajor() = "5") {
			continue:(prop.Private || prop.MultiDimensional) 
		} else {
			continue:(prop.Private || prop.Internal ||  prop.MultiDimensional)
			continue:('$$$comMemberArrayGet(clName,$$$cCLASSproperty,propName,$$$cPROPparameter,"JSONENABLED"))
		}
		if (prop.Relationship) {
			set card = $$$comMemberArrayGet(clName,$$$cCLASSproperty,propName,$$$cPROPparameter,"Cardinality")
			continue:((card = "parent") || (card = "one"))
		}
		if (first) {
			set first = 0
		} else {
			do stream.Write(",")
		}
		set jsonName = $$$comMemberArrayGet(clName,$$$cCLASSproperty,propName,$$$cPROPparameter,"JSONNAME")
		set:(jsonName = "") jsonName = propName
		do stream.Write(""""_jsonName_""""_":")
		set sc = ..ExportValue($PROPERTY(##this, propName), prop.Type,.stream)
	}
	do stream.Write("}")
	
	quit sc
]]></Implementation>
</Method>

<Method name="JSONExportToString">
<Description><![CDATA[
See <method>JSONExport</method>, fills the passed in string instead of a stream.]]></Description>
<FormalSpec><![CDATA[&string:%String]]></FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set sc = ..JSONExport(.stream)
	set len = 32000
	set string = stream.Read(.len)
	quit sc
]]></Implementation>
</Method>

<Method name="JSONExportToStream">
<Description><![CDATA[
See <method>JSONExport</method>]]></Description>
<FormalSpec><![CDATA[&stream:%GlobalCharacterStream]]></FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[	quit ..JSONExport(.stream)
]]></Implementation>
</Method>

<Method name="ExportValue">
<Description><![CDATA[
Exports the given value of the given type to the passed in stream.
The stream is created if no valid stream is given. Values can be objects or simple values. Supported objects are
lists, arrays, or ones inheriting Alliance.Agris.Web.JSON.Adaptor (processed by using its <method>JSONExport</method> method).
Supported types: %Boolean, %Numeric, %Integer, %Double, %Float, %Currency, %SmallInt, %BigInt
<br>
If the type is "%" values may be passed in as a listbuild so that even list or array
items can have a specified type (when traversing lists and arrays the method calls itself recursivly with type="%").
The listbuild is expected to have the following syntax: $lb(value, type).
Example: $lb(1, "%Boolean") will be interpreted as "true" (without quotes).]]></Description>
<FormalSpec><![CDATA[value:%String,type:%String="",&stream:%GlobalCharacterStream=$$$NULLOREF]]></FormalSpec>
<Private>1</Private>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set sc = $$$OK
	
	set:('$IsObject(stream)) stream = ##class(%GlobalCharacterStream).%New()
	if ($IsObject(value)) {
		if (value.%Extends("%Library.AbstractList") ||
				value.%Extends("%Collection.AbstractList")) {
			set sc = stream.Write("[")
			set type = $s(value.%Extends("%Library.ListOfObjects") || value.%Extends("%Collection.AbstractListOfObj"):"", 1:"%")
			for i = 1:1:value.Count() {
				set:($$$ISOK(sc) && (i > 1)) sc = stream.Write(",")
				set:($$$ISOK(sc)) sc = ..ExportValue(value.GetAt(i), type, .stream)
			}
			set:($$$ISOK(sc)) sc = stream.Write("]")
		} elseif (value.%Extends("%Library.AbstractArray") ||
				value.%Extends("%Collection.AbstractArray")) {
			set:($$$ISOK(sc)) sc = stream.Write("{")
			set type = $s(value.%Extends("%Library.ArrayOfObjects") || value.%Extends("%Collection.AbstractArrayOfObj"):"", 1:"%")
			set key = ""
			set first = 1
			for {
				set key = value.Next(key)
				q:(key = "")
				if (first) {
					set first = 0
				} else {
					set:($$$ISOK(sc)) sc = stream.Write(",")
				}
				set:($$$ISOK(sc)) sc = stream.Write(""""_key_""":")
				set:($$$ISOK(sc)) sc = ..ExportValue(value.GetAt(key), type, .stream)
			}
			set:($$$ISOK(sc)) sc = stream.Write("}")
		} elseif (value.%Extends("Alliance.Agris.Web.JSON.Adaptor")) {
			set sc = value.JSONExport(.stream)
		} else {
			set sc = stream.Write(""""_value_"""")
		}
	} elseif ($e(type) = "%") {
		set:(type = "%") type = ..GetValueType(.value)
		if (type = "%Boolean") {
			set sc = stream.Write($s(value:"true", 1:"false"))
		} elseif ((type = "%Numeric") || (type = "%Integer") ||
				(type = "%Double") || (type = "%Float") ||
				(type = "%Currency") || (type = "%SmallInt") || (type = "%BigInt") ||
				(type = "%Library.Numeric") || (type = "%Library.Integer") ||
				(type = "%Library.Double") || (type = "%Library.Float") ||
				(type = "%Library.Currency") || (type = "%Library.SmallInt") || (type = "%Library.BigInt")) {
			set sc = stream.Write(value)
		} else {
			//set sc = stream.Write(""""_..EscapeString(value)_"""")
			set sc = stream.Write(""""_value_"""")
		}
	} else {
		set sc = stream.Write("null")
	}
	
	quit sc
]]></Implementation>
</Method>

<Method name="WriteValue">
<Description>
Convenience method to write out the given stream (32K block-wise)</Description>
<FormalSpec><![CDATA[&stream:%GlobalCharacterStream]]></FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	while (1) {
		set len = 32000
		write stream.Read(.len)
		quit:(len = -1)
	}
	quit $$$OK
]]></Implementation>
</Method>

<Method name="EscapeString">
<Description>
Escapes all tabs, line breaks, slashes and quotes</Description>
<ClassMethod>1</ClassMethod>
<FormalSpec>str:%String</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set subst = $lb(
			"\",          "\\",
			"""",         "\""",
			"/",          "\/",
			$char(8),     "\b",
			$char(9),     "\t",
			$char(10,13), "\n",
			$char(13,10), "\n",
			$char(10),    "\f",
			$char(13),    "\r")
	for i = 1:2:$ll(subst) {
		set str = ##class(KBA.Portal.utils.String).Replace(str, $lg(subst, i), $lg(subst, i + 1))
	}
	quit str
]]></Implementation>
</Method>

<Method name="GetValueType">
<Description>
If a value is given as a Cache-list the first item is expected to be the value,
the second one the value's type. Otherwise "%" is returned.</Description>
<ClassMethod>1</ClassMethod>
<FormalSpec><![CDATA[&value:%String]]></FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set $ztrap = "noList"
	if ($ll(value) = 2) {
		set type = $lg(value, 2)
		set value = $lg(value)
		quit type
	}
noList
	quit "%"
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.Web.JSON.Array">
<Description><![CDATA[
Copyright (c) 2010 :

SYNERVA Gesellschaft für Softwareentwicklung und Beratung mbH
Mergenthaler Allee 55
D-65760 Eschborn

http://www.synerva.de
mailto:info@synerva.de
	
--------------------------------------------------

Represents a JSON array. May be used for projection to JSON. Also used by
<class>Alliance.Agris.Web.JSON.Parser</class> for JSON-to-Cache projection.<br>
Example:
<example>
set l = ##class(Alliance.Agris.Web.JSON.Array).%New()
set o = ##class(Alliance.Agris.Web.JSON.Object).%New()
do l.Insert("test")
do l.Insert("test2")
do l.Insert("test3")
do o.SetAt(l, "list")
do o.SetAt(1, "test1")
do o.SetAt(2, "test2")
w o.JSONExport()
</example>
Output:
<example>
{list:["test","test2","test3"],test1:"1",test2:"2"}
</example>]]></Description>
<ProcedureBlock>1</ProcedureBlock>
<Super>%ListOfDataTypes,Alliance.Agris.Web.JSON.Adaptor</Super>
<TimeChanged>61822,42357.984</TimeChanged>
<TimeCreated>61219,59236.533779</TimeCreated>
<Inheritance>right</Inheritance>

<Method name="JSONExport">
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set sc = ..ExportValue(##this,,.stream)
	quit ..WriteValue(.stream)
]]></Implementation>
</Method>

<Method name="JSONExportToString">
<FormalSpec><![CDATA[&string:%String]]></FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set sc = ..ExportValue(##this,,.stream)
	set len = 32000
	set string = stream.Read(.len)
	quit $$$OK
]]></Implementation>
</Method>

<Method name="JSONExportToStream">
<FormalSpec><![CDATA[&stream:%GlobalCharacterStream]]></FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[	quit ..ExportValue(##this,,.stream)
]]></Implementation>
</Method>

<Storage name="Custom">
<Type>%Library.CompleteCustomStorage</Type>
</Storage>
</Class>


<Class name="Alliance.Agris.Web.JSON.Object">
<Description><![CDATA[
Copyright (c) 2010 :

SYNERVA Gesellschaft für Softwareentwicklung und Beratung mbH
Mergenthaler Allee 55
D-65760 Eschborn

http://www.synerva.de
mailto:info@synerva.de
	
--------------------------------------------------

Represents a JSON object. May be used for projection to JSON. Also used by
<class>Alliance.Agris.Web.JSON.Parser</class> for JSON-to-Cache projection.<br>
Example:
<example>
set list = ##class(Alliance.Agris.Web.JSON.Array).%New()
do list.Insert("test")
do list.Insert("test2")
do list.Insert("test3")
set o = ##class(Alliance.Agris.Web.JSON.Object).%New()
do o.SetAt(list, "list")
do o.SetAt(1, "test1")
do o.SetAt(2, "test2")
w o.JSONExport()
</example>
Output:
<example>
{list:["test","test2","test3"],test1:"1",test2:"2"}
</example>]]></Description>
<Final>1</Final>
<ProcedureBlock>1</ProcedureBlock>
<Super>%ArrayOfDataTypes,Alliance.Agris.Web.JSON.Adaptor</Super>
<TimeChanged>61822,42365.953</TimeChanged>
<TimeCreated>61219,62672.706511</TimeCreated>
<Inheritance>right</Inheritance>

<Method name="JSONExport">
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set sc = ..ExportValue(##this,,.stream)
	quit ..WriteValue(.stream)
]]></Implementation>
</Method>

<Method name="JSONExportToString">
<FormalSpec><![CDATA[&string:%String]]></FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set sc = ..ExportValue(##this,,.stream)
	set len = 32000
	set string = stream.Read(.len)
	quit $$$OK
]]></Implementation>
</Method>

<Method name="JSONExportToStream">
<FormalSpec><![CDATA[&stream:%GlobalCharacterStream]]></FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[	quit ..ExportValue(##this,,.stream)
]]></Implementation>
</Method>

<Storage name="Custom">
<Type>%Library.CompleteCustomStorage</Type>
</Storage>
</Class>


<Class name="Alliance.Agris.Web.JSON.Parser">
<Description><![CDATA[
Copyright (c) 2010 :

SYNERVA Gesellschaft für Softwareentwicklung und Beratung mbH
Mergenthaler Allee 55
D-65760 Eschborn

http://www.synerva.de
mailto:info@synerva.de
	
--------------------------------------------------

Parses JSON strings and projects them to Cache, especially to
<class>Alliance.Agris.Web.JSON.Array</class> and <class>Alliance.Agris.Web.JSON.Object</class>.<br>
You may simply use the convenience methods <method>ToObject</method> and <method>ToArray</method>.]]></Description>
<Super>%RegisteredObject</Super>
<TimeChanged>61822,42374.343</TimeChanged>
<TimeCreated>61228,40744.968603</TimeCreated>

<Property name="String">
<Description>
Property Stream As %CharacterStream;</Description>
<Type>%String</Type>
</Property>

<Property name="StringPos">
<Type>%Integer</Type>
</Property>

<Property name="CurrChar">
<Type>%String</Type>
</Property>

<Property name="EscapeChars">
<Type>%String</Type>
<MultiDimensional>1</MultiDimensional>
<Private>1</Private>
</Property>

<Method name="%OnNew">
<FormalSpec>initvalue:%CacheString</FormalSpec>
<Private>1</Private>
<ProcedureBlock>1</ProcedureBlock>
<ReturnType>%Status</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[
	set:($g(initvalue) '= "") ..String = initvalue
	set ..EscapeChars("""") = """"
	set ..EscapeChars("\") = "\"
	set ..EscapeChars("/") = "/"
	set ..EscapeChars("b") = $char(8)
	set ..EscapeChars("f") = $char(10)
	set ..EscapeChars("n") = $char(10,13)
	set ..EscapeChars("r") = $char(13)
	set ..EscapeChars("t") = $char(9)
	Quit $$$OK
]]></Implementation>
</Method>

<Method name="StringSet">
<FormalSpec>str:%String</FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set i%String = str
	set ..StringPos = 0
	set ..CurrChar = ..Next()
]]></Implementation>
</Method>

<Method name="Next">
<FormalSpec>char:%String=""</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	//if ($IsObject(..Stream)) {}
	if (char '= "") {
		ztrap:(char '= ..CurrChar) "syntax"
	}
	set ..StringPos = ..StringPos + 1
	q:(..StringPos > $l(..String)) ""
	set ..CurrChar = $e(..String, ..StringPos)
	//w "next: ",..CurrChar, !
	q ..CurrChar
]]></Implementation>
</Method>

<Method name="ParseValue">
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	do ..ParseWhite()
	quit $case(..CurrChar,
		"{":..ParseObject(),
		"[":..ParseArray(),
		"""":..ParseString(),
		"-":..ParseNumber(),
		:$select((..CurrChar?1N):..ParseNumber(), 1:..ParseWord()))
]]></Implementation>
</Method>

<Method name="ParseWhite">
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	while ((..CurrChar = " ") || (..CurrChar = $char(10)) || (..CurrChar = $char(13))) {
		do ..Next()
	}
]]></Implementation>
</Method>

<Method name="ParseObject">
<ReturnType>Alliance.Agris.Web.JSON.Object</ReturnType>
<Implementation><![CDATA[
	set object = ##class(Alliance.Agris.Web.JSON.Object).%New()
	do ..ParseWhite()
	if (..CurrChar = "{") {
		do ..Next("{")
		do ..ParseWhite()
		if (..CurrChar = "}") {
			do ..Next("}")
			goto done
		}
		while (..CurrChar '= "") {
			if (..CurrChar = """") {
				set key = ..ParseString()
				do ..ParseWhite()
				do ..Next(":")
			} else {
				set key = ..ParseString(":")
			}
			do object.SetAt(..ParseValue(), key)
			do ..ParseWhite()
			if (..CurrChar = "}") {
				do ..Next("}")
				goto done
			}
			do ..Next(",")
			do ..ParseWhite()
		}
	}
	ztrap "syntax"
done
	q object
]]></Implementation>
</Method>

<Method name="ParseArray">
<ReturnType>Alliance.Agris.Web.JSON.Array</ReturnType>
<Implementation><![CDATA[
	set array = ##class(Alliance.Agris.Web.JSON.Array).%New()
	do ..ParseWhite()
	if (..CurrChar = "[") {
		do ..Next("[")
		do ..ParseWhite()
		if (..CurrChar = "]") {
			do ..Next("]")
			goto done
		}
		while (..CurrChar '= "") {
			do array.Insert(..ParseValue())
			do ..ParseWhite()
			if (..CurrChar = "]") {
				do ..Next("]")
				goto done
			}
			do ..Next(",")
			do ..ParseWhite()
		}
	}
	ztrap "syntax"
done
	q array
]]></Implementation>
</Method>

<Method name="ParseString">
<FormalSpec>delim:%String=""""</FormalSpec>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set str = ""
	do ..ParseWhite()
	if (delim = """") {
		ztrap:(..CurrChar '= """") "syntax"
		do ..Next()
	}
	while (..CurrChar '= "") {
		if (..CurrChar = delim) {
			do ..Next()
			goto done
		} elseif (..CurrChar = "\") {
			do ..Next()
			if (..CurrChar = "u") {
				set uffff = 0
				for i = 1:1:4 {
					set hex = $zhex(..Next())
					set uffff = uffff * 16 + hex
				}
				set str = str _ $char(uffff)
			} elseif ($d(..EscapeChars(..CurrChar))) {
				set str = str _ ..EscapeChars(..CurrChar)
			} else {
				q
			}
		} else {
			set str = str _ ..CurrChar
		}
		do ..Next()
	}
	ztrap "syntax"
done
	ztrap:((delim '= """") && (str = "")) "syntax"
	q str
]]></Implementation>
</Method>

<Method name="ParseNumber">
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set string = ""
	do ..ParseWhite()
	if (..CurrChar = "-") {
		set string = "-"
		do ..Next("-")
	}
	while (..CurrChar?1N) {
		set string = string _ ..CurrChar
		do ..Next()
	}
	if (..CurrChar = ".") {
		set string = string _ "."
		while ((..Next() '= "") && (..CurrChar?1N)) {
			set string = string _ ..CurrChar
		}
	}
	if ((..CurrChar = "e") || (..CurrChar = "E")) {
		set string = string _ ..CurrChar
		do ..Next()
		if ((..CurrChar = "-") || (..CurrChar = "+")) {
			set string = string _ ..CurrChar
			do ..Next()
		}
		while (..CurrChar?1N) {
			set string = string _ ..CurrChar
			do ..Next()
		}
	}
	set number = $number(string)
	if (number = "") {
		ztrap "syntax"
	}
	q number
]]></Implementation>
</Method>

<Method name="ParseWord">
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	do ..ParseWhite()
	if (..CurrChar = "t") {
		do ..Next("t")
		do ..Next("r")
		do ..Next("u")
		do ..Next("e")
		q 1
	}
	if (..CurrChar = "f") {
		do ..Next("f")
		do ..Next("a")
		do ..Next("l")
		do ..Next("s")
		do ..Next("e")
		q 0
	}
	if (..CurrChar = "n") {
		do ..Next("n")
		do ..Next("u")
		do ..Next("l")
		do ..Next("l")
		q ""
	}
	ztrap "syntax"
]]></Implementation>
</Method>

<Method name="ToObject">
<ClassMethod>1</ClassMethod>
<FormalSpec>str:%String</FormalSpec>
<ReturnType>Alliance.Agris.Web.JSON.Object</ReturnType>
<Implementation><![CDATA[	q ..%New(str).ParseObject()
]]></Implementation>
</Method>

<Method name="ToArray">
<ClassMethod>1</ClassMethod>
<FormalSpec>str:%String</FormalSpec>
<ReturnType>Alliance.Agris.Web.JSON.Array</ReturnType>
<Implementation><![CDATA[	q ..%New(str).ParseArray()
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.Web.JSON.PropClass">
<Description><![CDATA[
Copyright (c) 2010 :

SYNERVA Gesellschaft für Softwareentwicklung und Beratung mbH
Mergenthaler Allee 55
D-65760 Eschborn

http://www.synerva.de
mailto:info@synerva.de
	
--------------------------------------------------

Property class defining the constants used by <class>Alliance.Agris.Web.JSON.Adaptor</class>.]]></Description>
<ProcedureBlock>1</ProcedureBlock>
<TimeChanged>61822,42384.796</TimeChanged>
<TimeCreated>61214,66384.15478</TimeCreated>

<Parameter name="JSONENABLED">
<Default>1</Default>
</Parameter>

<Parameter name="JSONNAME">
</Parameter>
</Class>


<Class name="Alliance.Agris.Web.PDFDownload">
<Super>Alliance.Agris.Web.SecurePage</Super>
<TimeChanged>62430,33956.036803</TimeChanged>
<TimeCreated>61787,73389.25</TimeCreated>

<Method name="OnPreHTTP">
<ClassMethod>1</ClassMethod>
<ReturnType>%Boolean</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[
	set isCSV = 0
	
	set orderId = $get(%request.Data("orderId",1),"")
	set orderNr = $get(%request.Data("orderNr",1),"")
	set docType = $get(%request.Data("docType",1),"")

	if (docType = "CSVProv") {
		set bestellKopf = ##class(DBPlattform.BestKopf).%OpenId(orderId)	//	Die Bestellung
	} else {
		set bestellKopf = ##class(DBAgrofreshEK.BestellungsKopf).%OpenId(orderId)	//	Die Bestellung
	}
	if (bestellKopf = $$$NULLOREF)		quit $$$OK

	if (docType = "SSCC")
	{
		set fileStreamId = bestellKopf.EtikettenPDF.%Id()
	}
	elseif (docType = "LS")
	{
		set fileStreamId = bestellKopf.AnnahmescheinPDF.%Id()
	}
	elseif (docType = "CSV") 
	{
		set isCSV = 1
		set fileStreamId = $$$NULLOREF
		if (bestellKopf.WebEdiCsv '= $$$NULLOREF) {
			set fileStreamId = bestellKopf.WebEdiCsv.%Id()
		} else {
			set %response.Redirect = "Lieferbestaetigung.csp"
		}
	} elseif (docType = "CSVProv") {
		set isCSV = 1
		set fileStreamId = $$$NULLOREF
		if (bestellKopf.ProvWebEdiCsv '= $$$NULLOREF) {
			set fileStreamId = bestellKopf.ProvWebEdiCsv.%Id()
		} else {
			set %response.Redirect = "Lieferbestaetigung.csp"
		}	
	}

	if (fileStreamId = $$$NULLOREF) {
		do ..SetErrorMessage("Keine Datei gefunden.")
		quit $$$OK
	}

	if ('isCSV) {
		set filename = $zdate($horolog, 3) _ "_" _ orderNr _ "_" _ docType _ ".pdf"
		set %response.ContentType = "application/pdf"
	} else {
		set filename = "download.csv"
		set %response.ContentType = "text/csv"
		set %response.NoCharSetConvert=1
		set %response.CharSet="IBM437"
	}

	// Write the HTTP headers
	do %response.SetHeader("Cache-control", "private")
	do %response.SetHeader("Content-Disposition", "attachment; filename=" _ filename)

	quit $$$OK
]]></Implementation>
</Method>

<Method name="OnPage">
<Description><![CDATA[
Event handler for <b>PAGE</b> event: this is invoked in order to  
generate the content of a csp page.]]></Description>
<ClassMethod>1</ClassMethod>
<ReturnType>%Status</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[
	set isCSV = 0
	set orderId = $get(%request.Data("orderId",1),"")
	set docType = $get(%request.Data("docType",1),"")

	if (docType = "CSVProv") {
		set bestellKopf = ##class(DBPlattform.BestKopf).%OpenId(orderId)	//	Die Bestellung
	} else {
		set bestellKopf = ##class(DBAgrofreshEK.BestellungsKopf).%OpenId(orderId)	//	Die Bestellung
	}
	if (bestellKopf = $$$NULLOREF)		quit $$$OK

	if (docType = "SSCC")
	{
		set fileStreamId = bestellKopf.EtikettenPDF.%Id()
	}
	elseif (docType = "LS")
	{
		set fileStreamId = bestellKopf.AnnahmescheinPDF.%Id()
	}
	elseif (docType = "CSV")
	{
		set isCSV = 1
		set fileStreamId = $$$NULLOREF
		if (bestellKopf.WebEdiCsv '= $$$NULLOREF) {
			set fileStreamId = bestellKopf.WebEdiCsv.%Id()
		} else {
			set %response.Redirect = "Lieferbestaetigung.csp"
		}
	}
	elseif (docType = "CSVProv") {
		set isCSV = 1
		set fileStreamId = $$$NULLOREF
		if (bestellKopf.ProvWebEdiCsv '= $$$NULLOREF) {
			set fileStreamId = bestellKopf.ProvWebEdiCsv.%Id()
		} else {
			set %response.Redirect = "Lieferbestaetigung.csp"
		}	
	}

	if ('isCSV) {
		set fileStream = ##class(DBAgrofreshEK.PDFStream).%OpenId(fileStreamId)
	} else {
		if (docType = "CSV") {
			set fileStream = ##class(DBAgrofreshEK.CSVStream).%OpenId(fileStreamId)	
		} else {
			set fileStream = ##class(DBPlattform.CSVStream).%OpenId(fileStreamId)	
		}
	}
	if (fileStream = $$$NULLOREF) {
		do ..SetErrorMessage("Keine Datei gefunden.")
		quit $$$OK
	}

	do fileStream.DataStream.OutputToDevice()


	set status = $$$OK

	if ('isCSV) {
		set dateH = $zdateh($$$SELECTEDDATE, 15)
		set abnehmerId = ##class(DBDebiKredi.Debitor).GetIdByAdrOid($$$MANDANTID, $$$SELECTEDVZID)
		set bestellNr = $$$SELECTEDORDER

		set typ = ##class(Alliance.Common.KAL.Code.MessageType).Lieferung()
		set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).DefinLiefermengenBestätigt()
		set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisMExtranet()
		set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
		do ##class(Alliance.Common.KAL.Message).new(.status, typ, subTyp, senderTyp, severity, dateH, abnehmerId, $$$UID, bestellNr)
	}
	
	if ($$$ISERR(status))
	{
		do ..SetErrorMessage(status)
	}
	else
	{
		do ..SetErrorMessage("OK")
	}

	quit $$$OK
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Agris.Web.SecurePage">
<Super>Alliance.Agris.Web.BasePage</Super>
<TimeChanged>61766,60665.125</TimeChanged>
<TimeCreated>61766,60665.125</TimeCreated>

<Method name="CanAccess">
<Description>

Checks if user can access this page</Description>
<ClassMethod>1</ClassMethod>
<ReturnType>%Boolean</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[
	set uid = $get($$$UID)
	quit (uid '= "")
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Common.KAL.Code.MessageSenderType">
<Super>Base.CodeAbstract</Super>
<TimeChanged>61836,29400.968</TimeChanged>
<TimeCreated>61802,59061.765</TimeCreated>

<UDLText name="T">
<Content><![CDATA[
//	=====	Parameters			===============================================

]]></Content>
</UDLText>

<Parameter name="Alliance">
<Default>100</Default>
</Parameter>

<Parameter name="AgrisM">
<Default>200</Default>
</Parameter>

<Parameter name="AgrisMExtranet">
<Default>250</Default>
</Parameter>

<Parameter name="AgrisL">
<Default>300</Default>
</Parameter>

<Parameter name="AgrisLExtranet">
<Default>350</Default>
</Parameter>

<UDLText name="T">
<Content><![CDATA[
//	=====	Class Methods		===============================================

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----			Instance Creation	---------------------------------------

]]></Content>
</UDLText>

<Method name="initialize">
<Description>
write ##class(Alliance.Common.KAL.Code.MessageSenderType).initialize()</Description>
<ClassMethod>1</ClassMethod>
<Implementation><![CDATA[
	set status = ..%DeleteExtent()
	quit:($$$ISERR(status)) status

	do ..new(..#Alliance, "Alliance",,, .status)
	quit:($$$ISERR(status)) status

	do ..new(..#AgrisM, "AgrisM",,, .status)
	quit:($$$ISERR(status)) status

	do ..new(..#AgrisMExtranet, "AgrisM Extranet",,, .status)
	quit:($$$ISERR(status)) status

	do ..new(..#AgrisL, "AgrisL",,, .status)
	quit:($$$ISERR(status)) status

	do ..new(..#AgrisLExtranet, "AgrisL Extranet",,, .status)
	quit:($$$ISERR(status)) status

	quit $$$OK
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----			Accessing		-------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	Such methods are recommended to free the users from knowing what the different keys actually mean

]]></Content>
</UDLText>

<Method name="Alliance">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSenderType</ReturnType>
<Implementation><![CDATA[	quit ..get(..#Alliance)
]]></Implementation>
</Method>

<Method name="AgrisM">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSenderType</ReturnType>
<Implementation><![CDATA[	quit ..get(..#AgrisM)
]]></Implementation>
</Method>

<Method name="AgrisMExtranet">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSenderType</ReturnType>
<Implementation><![CDATA[	quit ..get(..#AgrisMExtranet)
]]></Implementation>
</Method>

<Method name="AgrisL">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSenderType</ReturnType>
<Implementation><![CDATA[	quit ..get(..#AgrisL)
]]></Implementation>
</Method>

<Method name="AgrisLExtranet">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSenderType</ReturnType>
<Implementation><![CDATA[	quit ..get(..#AgrisLExtranet)
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	=====	Instance Methods	===============================================

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----			Inquiring		-------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	Such methods are recommended to free the users from knowing what the different keys actually mean

]]></Content>
</UDLText>

<Method name="isAlliance">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = ..#Alliance)
]]></Implementation>
</Method>

<Method name="isAgrisM">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = ..#AgrisM)
]]></Implementation>
</Method>

<Method name="isAgrisMExtranet">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = ..#AgrisMExtranet)
]]></Implementation>
</Method>

<Method name="isAgrisL">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = ..#AgrisL)
]]></Implementation>
</Method>

<Method name="isAgrisLExtranet">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = ..#AgrisLExtranet)
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="Alliance.Common.KAL.Code.MessageSeverity">
<Super>Base.CodeAbstract</Super>
<TimeChanged>61817,39207</TimeChanged>
<TimeCreated>61815,55392.828</TimeCreated>

<UDLText name="T">
<Content><![CDATA[
//	-----	Instance Creation	-----------------------------------------------

]]></Content>
</UDLText>

<Method name="initialize">
<Description>
write ##class(Alliance.Common.KAL.Code.MessageSeverity).initialize()</Description>
<ClassMethod>1</ClassMethod>
<Implementation><![CDATA[
	set status = ..%DeleteExtent()
	quit:($$$ISERR(status)) status

	set type = ..new("100", "Info",,, .status)
	quit:($$$ISERR(status)) status

	set type = ..new("200", "Warning",,, .status)
	quit:($$$ISERR(status)) status

	set type = ..new("300", "Error",,, .status)
	quit:($$$ISERR(status)) status

	set type = ..new("400", "Fatal",,, .status)
	quit:($$$ISERR(status)) status

	quit $$$OK
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----	Accessing			-----------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	Such methods are recommended to free the users from knowing what the different keys actually mean

]]></Content>
</UDLText>

<Method name="Info">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSeverity</ReturnType>
<Implementation><![CDATA[	quit ..get("100")
]]></Implementation>
</Method>

<Method name="Warning">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSeverity</ReturnType>
<Implementation><![CDATA[	quit ..get("200")
]]></Implementation>
</Method>

<Method name="Error">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSeverity</ReturnType>
<Implementation><![CDATA[	quit ..get("300")
]]></Implementation>
</Method>

<Method name="Fatal">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSeverity</ReturnType>
<Implementation><![CDATA[	quit ..get("400")
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----	Instance Methods	-----------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----			Testing		-----------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	Such methods are recommended to free the users from knowing what the different keys actually mean

]]></Content>
</UDLText>

<Method name="isInfo">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "100")
]]></Implementation>
</Method>

<Method name="isWarning">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "200")
]]></Implementation>
</Method>

<Method name="isError">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "300")
]]></Implementation>
</Method>

<Method name="isFatal">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "400")
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="Alliance.Common.KAL.Code.MessageSubType">
<Super>Base.CodeAbstract</Super>
<TimeChanged>61844,66607.812</TimeChanged>
<TimeCreated>61802,59244.406</TimeCreated>

<UDLText name="T">
<Content><![CDATA[
//	-----	Instance Creation	-----------------------------------------------

]]></Content>
</UDLText>

<Method name="initialize">
<Description>
write ##class(Alliance.Common.KAL.Code.MessageSubType).initialize()</Description>
<ClassMethod>1</ClassMethod>
<Implementation><![CDATA[
	set status = ..%DeleteExtent()
	quit:($$$ISERR(status)) status

	//	Lieferung

	do ..new("100", "Lieferant hat Angebot erfasst","Ein Lieferant hat ein Angebot abgegeben",, .status)
	quit:($$$ISERR(status)) status

	do ..new("200", "Bestellung von COOP in Alliance angekommen","Eine Bestellung von Coop ist in Alliance eingetroffen",, .status)
	quit:($$$ISERR(status)) status

	do ..new("250", "Bestellung von COOP in AgrisM angekommen","Eine Bestellung von Coop ist in AgrisM eingetroffen",, .status)
	quit:($$$ISERR(status)) status

	do ..new("300", "Bestellung in AgrisM gesplittet","Die Bestellung wurde in AgrisM in Teilbestellungen aufgeteilt",, .status)
	quit:($$$ISERR(status)) status

	do ..new("350", "Prov. Teilbestellung für Lieferanten erstellt","Der Split hat für diesen Lieferanten eine Teilbestellung generiert",, .status)
	quit:($$$ISERR(status)) status

	do ..new("400", "Lieferant hat prov. Teilbestellung erhalten","Lieferant hat eine provisorische Teilbestellung erhalten",, .status)
	quit:($$$ISERR(status)) status

	do ..new("500", "Lieferant hat prov. Liefermengen erfasst","Lieferant hat die provisorische Liefermenge erfasst",, .status)
	quit:($$$ISERR(status)) status

	do ..new("600", "Definitive Teilbestellung in Agris erfasst","In AgrisM wurden die definitiven Teilbestellungen berechnet",, .status)
	quit:($$$ISERR(status)) status

	do ..new("650", "Definitive Teilbestellung für Lieferanten erstellt","In AgrisM wurde für diesen Lieferanten eine definitive Teilbestellung generiert",, .status)
	quit:($$$ISERR(status)) status

	do ..new("700", "Lieferant hat def. Teilbestellung erhalten","Lieferant hat eine definitive Teilbestellung erhalten",, .status)
	quit:($$$ISERR(status)) status

	do ..new("800", "Lieferant hat def. Liefermengen bestätigt","Ein Lieferant hat eine definitive Teilbestellung bestätigt",, .status)
	quit:($$$ISERR(status)) status

	//	Despatch Advice

	do ..new("900", "Despatch Advice in AgrisM erstellt","In AgrisM ist der Despatch Advice erstellt worden",, .status)
	quit:($$$ISERR(status)) status

	do ..new("930", "Despatch Advice in Alliance angekommen","Der Despatch Advice ist in Alliance angekommen",, .status)
	quit:($$$ISERR(status)) status

	do ..new("960", "Despatch Advice an COOP gesendet","Der Despatch Advice wurde durch Alliance an COOP gesendet",, .status)
	quit:($$$ISERR(status)) status

	//	Invoice

	do ..new("1000", "Invoice in Agris erstellt","In AgrisM ist die Invoice erstellt worden",, .status)
	quit:($$$ISERR(status)) status

	do ..new("1030", "Invoice in Alliance angekommen","Die Invoice ist in Alliance angekommen",, .status)
	quit:($$$ISERR(status)) status

	do ..new("1060", "Invoice an COOP gesendet","Die Invoice wurde durch Alliance an COOP gesendet",, .status)
	quit:($$$ISERR(status)) status

	do ..new("9999", "Information","Information",, .status)
	quit:($$$ISERR(status)) status

	quit $$$OK
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----	Accessing			-----------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	Such methods are recommended to free the users from knowing what the different keys actually mean

]]></Content>
</UDLText>

<Method name="AngebotErfasst">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("100")
]]></Implementation>
</Method>

<Method name="BestellungInAllianceAngekommen">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("200")
]]></Implementation>
</Method>

<Method name="BestellungInAgrisAngekommen">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("250")
]]></Implementation>
</Method>

<Method name="BestellungGesplittet">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("300")
]]></Implementation>
</Method>

<Method name="ProvTeilbestellungErstellt">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("350")
]]></Implementation>
</Method>

<Method name="ProvTeilbestellungErhalten">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("400")
]]></Implementation>
</Method>

<Method name="ProvLiefermengenErfasst">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("500")
]]></Implementation>
</Method>

<Method name="DefinTeilbestellungErfasst">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("600")
]]></Implementation>
</Method>

<Method name="DefTeilbestellungErstellt">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("650")
]]></Implementation>
</Method>

<Method name="DefinTeilbestellungErhalten">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("700")
]]></Implementation>
</Method>

<Method name="DefinLiefermengenBestätigt">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("800")
]]></Implementation>
</Method>

<Method name="DespatchAdviceErstellt">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("900")
]]></Implementation>
</Method>

<Method name="DespatchAdviceInAllianceAngek">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("930")
]]></Implementation>
</Method>

<Method name="DespatchAdviceAnCoopGesendet">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("960")
]]></Implementation>
</Method>

<Method name="InvoiceErstellt">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("1000")
]]></Implementation>
</Method>

<Method name="InvoiceInAllianceAngekommen">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("1030")
]]></Implementation>
</Method>

<Method name="InvoiceAnCoopGesendet">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("1060")
]]></Implementation>
</Method>

<Method name="Information">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ..get("9999")
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----	Instance Methods	-----------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----			Testing		-----------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	Such methods are recommended to free the users from knowing what the different keys actually mean

]]></Content>
</UDLText>

<Method name="isAngebotErfasst">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "100")
]]></Implementation>
</Method>

<Method name="isBestellungInAllianceAngek">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "200")
]]></Implementation>
</Method>

<Method name="isBestellungInAgrisAngekommen">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "250")
]]></Implementation>
</Method>

<Method name="isBestellungGesplittet">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "300")
]]></Implementation>
</Method>

<Method name="isProvTeilbestellungErstellt">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "350")
]]></Implementation>
</Method>

<Method name="isProvTeilbestellungErhalten">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "400")
]]></Implementation>
</Method>

<Method name="isProvLiefermengenErfasst">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "500")
]]></Implementation>
</Method>

<Method name="isDefinTeilbestellungErfasst">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "600")
]]></Implementation>
</Method>

<Method name="isDefinTeilbestellungErstellt">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "650")
]]></Implementation>
</Method>

<Method name="isDefinTeilbestellungErhalten">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "700")
]]></Implementation>
</Method>

<Method name="isDefinLiefermengenBestätigt">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "800")
]]></Implementation>
</Method>

<Method name="isDespatchAdviceErstellt">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "900")
]]></Implementation>
</Method>

<Method name="isDespatchAdviceInAllianceAngek">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "930")
]]></Implementation>
</Method>

<Method name="isDespatchAdviceAnCoopGesendet">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "960")
]]></Implementation>
</Method>

<Method name="isInvoiceErstellt">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "1000")
]]></Implementation>
</Method>

<Method name="isInvoiceInAllianceAngekommen">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "1030")
]]></Implementation>
</Method>

<Method name="isInvoiceAnCoopGesendet">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "1060")
]]></Implementation>
</Method>

<Method name="isInformation">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "9999")
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="Alliance.Common.KAL.Code.MessageType">
<Super>Base.CodeAbstract</Super>
<TimeChanged>61828,44543.468</TimeChanged>
<TimeCreated>61802,59140.156</TimeCreated>

<UDLText name="T">
<Content><![CDATA[
//	-----	Instance Creation	-----------------------------------------------

]]></Content>
</UDLText>

<Method name="initialize">
<Description>
write ##class(Alliance.Common.KAL.Code.MessageType).initialize()</Description>
<ClassMethod>1</ClassMethod>
<Implementation><![CDATA[
	set status = ..%DeleteExtent()
	quit:($$$ISERR(status)) status

	set type = ..new("100", "Lieferung",,, .status)
	quit:($$$ISERR(status)) status

	set type = ..new("200", "Despatch Advice",,, .status)
	quit:($$$ISERR(status)) status

	set type = ..new("300", "Invoice",,, .status)
	quit:($$$ISERR(status)) status

	quit $$$OK
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----	Accessing			-----------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	Such methods are recommended to free the users from knowing what the different keys actually mean

]]></Content>
</UDLText>

<Method name="Lieferung">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageType</ReturnType>
<Implementation><![CDATA[	quit ..get("100")
]]></Implementation>
</Method>

<Method name="DespatchAdvice">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageType</ReturnType>
<Implementation><![CDATA[	quit ..get("200")
]]></Implementation>
</Method>

<Method name="Invoice">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.MessageType</ReturnType>
<Implementation><![CDATA[	quit ..get("300")
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----	Instance Methods	-----------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----			Testing		-----------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	Such methods are recommended to free the users from knowing what the different keys actually mean

]]></Content>
</UDLText>

<Method name="isLieferung">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "100")
]]></Implementation>
</Method>

<Method name="isDespatchAdvice">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "200")
]]></Implementation>
</Method>

<Method name="isInvoice">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = "300")
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="Alliance.Common.KAL.Code.SystemType">
<Super>Base.CodeAbstract</Super>
<TimeChanged>61836,29261.25</TimeChanged>
<TimeCreated>61823,30845.515</TimeCreated>

<UDLText name="T">
<Content><![CDATA[
//	=====	Parameters			===============================================

]]></Content>
</UDLText>

<Parameter name="Alliance">
<Default>100</Default>
</Parameter>

<Parameter name="AgrisM">
<Default>200</Default>
</Parameter>

<Parameter name="AgrisL">
<Default>300</Default>
</Parameter>

<UDLText name="T">
<Content><![CDATA[
//	=====	Class Methods		===============================================

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----			Instance Creation	---------------------------------------

]]></Content>
</UDLText>

<Method name="initialize">
<Description>
write ##class(Alliance.Common.KAL.Code.SystemType).initialize()</Description>
<ClassMethod>1</ClassMethod>
<Implementation><![CDATA[
	set status = ..%DeleteExtent()
	quit:($$$ISERR(status)) status

	do ..new(..#Alliance, "Alliance",,, .status)
	quit:($$$ISERR(status)) status

	do ..new(..#AgrisM, "AgrisM",,, .status)
	quit:($$$ISERR(status)) status

	do ..new(..#AgrisL, "AgrisL",,, .status)
	quit:($$$ISERR(status)) status

	quit $$$OK
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----			Accessing		-------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	Such methods are recommended to free the users from knowing what the different keys actually mean

]]></Content>
</UDLText>

<Method name="Alliance">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.SystemType</ReturnType>
<Implementation><![CDATA[	quit ..get(..#Alliance)
]]></Implementation>
</Method>

<Method name="AgrisM">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.SystemType</ReturnType>
<Implementation><![CDATA[	quit ..get(..#AgrisM)
]]></Implementation>
</Method>

<Method name="AgrisL">
<ClassMethod>1</ClassMethod>
<ReturnType>Alliance.Common.KAL.Code.SystemType</ReturnType>
<Implementation><![CDATA[	quit ..get(..#AgrisL)
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	=====	Instance Methods	===============================================

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----			Inquiring		-------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	Such methods are recommended to free the users from knowing what the different keys actually mean

]]></Content>
</UDLText>

<Method name="isAlliance">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = ..#Alliance)
]]></Implementation>
</Method>

<Method name="isAgrisM">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = ..#AgrisM)
]]></Implementation>
</Method>

<Method name="isAgrisL">
<ReturnType>%Boolean</ReturnType>
<Implementation><![CDATA[	quit (..key = ..#AgrisL)
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="Alliance.Common.KAL.CommunicationParams">
<Super>Base.CodeAbstract</Super>
<TimeChanged>61828,56233.765</TimeChanged>
<TimeCreated>61817,50901.359</TimeCreated>

<UDLText name="T">
<Content><![CDATA[
//	=====	Parameters			===============================================

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	=====	Properties			===============================================

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	=====	Queries				===============================================

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	=====	Class Methods		===============================================

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----			Instance Creation	---------------------------------------

]]></Content>
</UDLText>

<Method name="setAllParameters">
<ClassMethod>1</ClassMethod>
<FormalSpec>id:%String,type:%String,name:%String,serverURL:%String</FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set status = ..setClientId(id)
	quit:($$$ISERR(status)) status

	set status = ..setClientType(type)
	quit:($$$ISERR(status)) status

	set status = ..setClientName(name)
	quit:($$$ISERR(status)) status

	set status = ..setServerURL(serverURL)
	quit:($$$ISERR(status)) status
	
	quit status
]]></Implementation>
</Method>

<Method name="setClientId">
<ClassMethod>1</ClassMethod>
<FormalSpec>value</FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set status = $$$OK
	do ..new("ClientId", value, "The unique ID of this client instance",, .status)
	quit status
]]></Implementation>
</Method>

<Method name="setClientType">
<ClassMethod>1</ClassMethod>
<FormalSpec>value</FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set status = $$$OK
	do ..new("ClientType", value, "The client type",, .status)
	quit status
]]></Implementation>
</Method>

<Method name="setClientName">
<ClassMethod>1</ClassMethod>
<FormalSpec>value</FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set status = $$$OK
	do ..new("ClientName", value, "The name of this client instance",, .status)
	quit status
]]></Implementation>
</Method>

<Method name="setServerURL">
<ClassMethod>1</ClassMethod>
<FormalSpec>value</FormalSpec>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set status = $$$OK
	do ..new("ServerURL", value, "The URL of the server, used for sending KAL messages to",, .status)
	quit status
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----			Accessing		-------------------------------------------

]]></Content>
</UDLText>

<Method name="getClientId">
<ClassMethod>1</ClassMethod>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	quit ..get("ClientId").value
]]></Implementation>
</Method>

<Method name="getClientType">
<ClassMethod>1</ClassMethod>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	quit ..get("ClientType").value
]]></Implementation>
</Method>

<Method name="getClientName">
<ClassMethod>1</ClassMethod>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	quit ..get("ClientName").value
]]></Implementation>
</Method>

<Method name="getServerURL">
<ClassMethod>1</ClassMethod>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	quit ..get("ServerURL").value
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	=====	Instance Methods	===============================================

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----			Accessing		-------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----			Inquiring		-------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----			Business Logic	-------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----			Support			-------------------------------------------

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	===========================================================================

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	=====	Private Methods		===============================================

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----			Testing		-----------------------------------------------

]]></Content>
</UDLText>

<Method name="test">
<Description>
write ##class(Alliance.Common.KAL.CommunicationParams).test()</Description>
<ClassMethod>1</ClassMethod>
<Implementation><![CDATA[	quit ..setAllParameters("42", "Human", "Lemberger", "www.apple.com")
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="Alliance.Common.KAL.KeepAliveTask">
<Description>
This Task is used by the Keep-Alive framework and is supposed to
trigger the system to send notifications to the central Alliance
server.
</Description>
<Super>%SYS.Task.Definition</Super>
<TimeChanged>61817,48165.359</TimeChanged>
<TimeCreated>61751,40709.299918</TimeCreated>

<Property name="WaitTime">
<Type>%Integer</Type>
</Property>

<Property name="Iterations">
<Description>
How many transmissions should be triggered upon calling this task?</Description>
<Type>%Integer</Type>
</Property>

<Method name="OnTask">
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set status = $$$OK
	
	for i=1:1:..Iterations
	{
		set status = ##class(Alliance.Common.KAL.WSClientMessageSender).sendUnprocessedMessages()

		//	Avoid hang on last iteration:
		quit:(i = ..Iterations)

		// Wait as requested:
		hang ..WaitTime
	}

	//	Always return OK, otherwise the taks breaks and stops when an error occurs.
	quit $$$OK
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
</Storage>
</Class>


<Class name="Alliance.Common.KAL.Message">
<Description>
	Instances of this class are used to announce activities of different external systems to the central alliance system.

		Last change: 13.04.2010 by Lem
</Description>
<Super>%Persistent,%XML.Adaptor,Base.Support</Super>
<TimeChanged>62427,29801.646418</TimeChanged>
<TimeCreated>61790,63990.89</TimeCreated>
<Inheritance>right</Inheritance>

<UDLText name="T">
<Content><![CDATA[
//	-----	Parameters			-----------------------------------------------

]]></Content>
</UDLText>

<Parameter name="ToStringDelimiter">
<Default>:</Default>
</Parameter>

<UDLText name="T">
<Content><![CDATA[
//	-----	Properties			-----------------------------------------------

]]></Content>
</UDLText>

<Property name="typKey">
<Description>
	Message Type: key and value of KAL.Code.MessageType</Description>
<Type>%String</Type>
<Required>1</Required>
<Parameter name="MAXLEN" value="20"/>
</Property>

<Property name="typValue">
<Type>%String</Type>
<Required>1</Required>
<Parameter name="MAXLEN" value="50"/>
</Property>

<Property name="subTypKey">
<Description>
	Message SubType: key and value of KAL.Code.MessageSubType</Description>
<Type>%String</Type>
<Required>1</Required>
<Parameter name="MAXLEN" value="20"/>
</Property>

<Property name="subTypValue">
<Type>%String</Type>
<Required>1</Required>
<Parameter name="MAXLEN" value="50"/>
</Property>

<Property name="senderTypKey">
<Description>
	Sender Type: key and value of KAL.Code.MessageSenderType</Description>
<Type>%String</Type>
<Required>1</Required>
<Parameter name="MAXLEN" value="20"/>
</Property>

<Property name="senderTypValue">
<Type>%String</Type>
<Required>1</Required>
<Parameter name="MAXLEN" value="50"/>
</Property>

<Property name="severityKey">
<Description>
	Message Severity: key and value of KAL.Code.MessageSeverity</Description>
<Type>%String</Type>
<Required>1</Required>
<Parameter name="MAXLEN" value="20"/>
</Property>

<Property name="severityValue">
<Type>%String</Type>
<Required>1</Required>
<Parameter name="MAXLEN" value="50"/>
</Property>

<Property name="datum">
<Type>%Date</Type>
<Required>1</Required>
</Property>

<Property name="clientId">
<Description>
	Id of sending system (taken from Alliance.Common.KAL.CommunicationParams (clientId))</Description>
<Type>%String</Type>
<Required>1</Required>
<Parameter name="MAXLEN" value="20"/>
</Property>

<Property name="clientName">
<Description>
	Name of sending system (taken from Alliance.Common.KAL.CommunicationParams (clientName))</Description>
<Type>%String</Type>
<Required>1</Required>
<Parameter name="MAXLEN" value="30"/>
</Property>

<Property name="vzId">
<Type>%Integer</Type>
</Property>

<Property name="vzName">
<Type>%String</Type>
<Parameter name="MAXLEN" value="255"/>
</Property>

<Property name="vzOrt">
<Type>%String</Type>
<Parameter name="MAXLEN" value="255"/>
</Property>

<Property name="lieferantId">
<Type>%Integer</Type>
</Property>

<Property name="lieferantName">
<Type>%String</Type>
<Parameter name="MAXLEN" value="255"/>
</Property>

<Property name="lieferantOrt">
<Type>%String</Type>
<Parameter name="MAXLEN" value="255"/>
</Property>

<Property name="bestellId">
<Type>%Integer</Type>
</Property>

<Property name="bestellNr">
<Type>%String</Type>
<Parameter name="MAXLEN" value="50"/>
</Property>

<Property name="additionalText">
<Type>%String</Type>
<Parameter name="MAXLEN" value="255"/>
</Property>

<Property name="isProcessed">
<Type>%Boolean</Type>
<InitialExpression>$$$NO</InitialExpression>
<Required>1</Required>
</Property>

<Property name="timeStampCreated">
<Type>%TimeStamp</Type>
<InitialExpression>$zdatetime($zutil(188),3, 1, 6)</InitialExpression>
<Required>1</Required>
</Property>

<Property name="timeStampTransmitted">
<Type>%TimeStamp</Type>
</Property>

<UDLText name="T">
<Content><![CDATA[
//	-----	SQL Queries			-----------------------------------------------

]]></Content>
</UDLText>

<Query name="unprocessedMessages">
<Type>%SQLQuery</Type>
<SqlQuery>	select	ID
	from	Alliance_Common_KAL.Message
	where	isProcessed = 0
	order by timeStampCreated</SqlQuery>
</Query>

<Query name="processedMessagesDesc">
<Type>%SQLQuery</Type>
<SqlQuery>	select	ID
	from	Alliance_Common_KAL.Message
	where	isProcessed = 1
	order by timeStampCreated desc</SqlQuery>
</Query>

<UDLText name="T">
<Content><![CDATA[
//

]]></Content>
</UDLText>

<UDLText name="T">
<Content><![CDATA[
//	-----	Instance Creation	-----------------------------------------------

]]></Content>
</UDLText>

<Method name="new">
<Description>
Create a new message and make it available for KAL-processing</Description>
<ClassMethod>1</ClassMethod>
<FormalSpec><![CDATA[&status:%Status,typ:Alliance.Common.KAL.Code.MessageType,subTyp:Alliance.Common.KAL.Code.MessageSubType,senderTyp:Alliance.Common.KAL.Code.MessageSenderType,severity:Alliance.Common.KAL.Code.MessageSeverity,datum:%Date,vzId:%String="",lieferantId:%String="",bestellId:%String="",additionalText:%String=""]]></FormalSpec>
<ReturnType>Alliance.Common.KAL.Message</ReturnType>
<Implementation><![CDATA[
	set status = $$$OK

	set message = ..%New()

	if (typ = $$$NULLOREF)
	{
		set status = $$$ERROR("Ungültiger Typ")
		quit $$$NULLOREF
	}
	set message.typKey = typ.key
	set message.typValue = typ.value

	if (subTyp = $$$NULLOREF)
	{
		set status = $$$ERROR("Ungültiger SubTyp")
		quit $$$NULLOREF
	}
	set message.subTypKey = subTyp.key
	set message.subTypValue = subTyp.value

	if (senderTyp = $$$NULLOREF)
	{
		set status = $$$ERROR("Ungültiger SenderTyp")
		quit $$$NULLOREF
	}
	set message.senderTypKey = senderTyp.key
	set message.senderTypValue = senderTyp.value

	if (severity = $$$NULLOREF)
	{
		set status = $$$ERROR("Ungültige Severity")
		quit $$$NULLOREF
	}
	set message.severityKey = severity.key
	set message.severityValue = severity.value

	set message.clientId = ##class(Alliance.Common.KAL.CommunicationParams).getClientId()
	set message.clientName = ##class(Alliance.Common.KAL.CommunicationParams).getClientName()

	set message.datum = datum
	set message.additionalText = additionalText

	//
	//	vzId is optional: if it is a number, interpret it as a VZ-Nr. Otherwise treat it as the vzName:
	if ($inumber(vzId, "", "") = "")
	{
		set message.vzName = vzId
	}
	else
	{
		set vz = ##class(DBDebiKredi.Debitor).%OpenId(vzId)
		if (vz = $$$NULLOREF)
			{
				set status = $$$ERROR("Ungültiges VZ mit Nr. " _ vzId)
				quit $$$NULLOREF
			}
		set message.vzId = vzId
		set message.vzName = vz.Adresse.Name
		set message.vzOrt = vz.Adresse.Ort
	}

	//	lieferantId is optional: if it is a number, interpret it as a lieferant-Nr. Otherwise treat it as the lieferantName:
	if ($inumber(lieferantId, "", "") = "")
	{
		set message.lieferantName = lieferantId
	}
	else
	{
		set lieferant = ##class(DBDebiKredi.Kreditor).%OpenId(lieferantId)
		if (lieferant = $$$NULLOREF)
		{
			set status = $$$ERROR("Ungültiger Lieferant mit Nr. " _ lieferantId)
			quit $$$NULLOREF
		}
		set message.lieferantId = lieferantId
		set message.lieferantName = lieferant.Adresse.Name
		set message.lieferantOrt = lieferant.Adresse.Ort
	}

	//	bestellId is optional: if it is a number, interpret it as a bestell-Id. Otherwise treat it as the bestellNr:
	//	(I expect bestellNr to be numerical. So to treat bestellId as a bestellNr, enclose it in single or double quotes)
	if ($inumber(bestellId, "", "") = "")
	{
		set message.bestellNr = $translate(bestellId, """'", "")
	}
	else
	{
		set bestellung = ##class(DBPlattform.BestKopf).%OpenId(bestellId)
		if (bestellung = $$$NULLOREF)
		{
			set status = $$$ERROR("Ungültige Bestellung mit Nr. " _ bestellId)
			quit $$$NULLOREF
		}
		set message.bestellId = bestellId
		set message.bestellNr = bestellung.BestellNr
	}

	//
	set status = message.%Save()
	if ($$$ISERR(status))		quit $$$NULLOREF

	quit message
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----	Accessing			-----------------------------------------------

]]></Content>
</UDLText>

<Method name="getTyp">
<ReturnType>Alliance.Common.KAL.Code.MessageType</ReturnType>
<Implementation><![CDATA[	quit ##class(Alliance.Common.KAL.Code.MessageType).get(..typKey)
]]></Implementation>
</Method>

<Method name="getSubTyp">
<ReturnType>Alliance.Common.KAL.Code.MessageSubType</ReturnType>
<Implementation><![CDATA[	quit ##class(Alliance.Common.KAL.Code.MessageSubType).get(..subTypKey)
]]></Implementation>
</Method>

<Method name="getSenderTyp">
<ReturnType>Alliance.Common.KAL.Code.MessageSenderType</ReturnType>
<Implementation><![CDATA[	quit ##class(Alliance.Common.KAL.Code.MessageSenderType).get(..senderTypKey)
]]></Implementation>
</Method>

<Method name="getSeverity">
<ReturnType>Alliance.Common.KAL.Code.MessageSeverity</ReturnType>
<Implementation><![CDATA[	quit ##class(Alliance.Common.KAL.Code.MessageSeverity).get(..severityKey)
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----	Support				-----------------------------------------------

]]></Content>
</UDLText>

<Method name="toString">
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	quit "[KALMessage" _ ..#ToStringDelimiter _
			..isProcessed _ ..#ToStringDelimiter _
			..typValue _ ..#ToStringDelimiter _
			..subTypValue _ ..#ToStringDelimiter _
			..senderTypValue _ ..#ToStringDelimiter _
			..severityValue _ ..#ToStringDelimiter _
			..datum _ ..#ToStringDelimiter _
			..clientName _ ..#ToStringDelimiter _
			..vzName _ ..#ToStringDelimiter _
			..lieferantName _ ..#ToStringDelimiter _
			..bestellNr _ ..#ToStringDelimiter _
			..additionalText _ ..#ToStringDelimiter _
			..timeStampCreated _
		"]"
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----	Test				-----------------------------------------------

]]></Content>
</UDLText>

<Method name="test">
<Description>
	do ##class(Alliance.Common.KAL.Message).test()</Description>
<ClassMethod>1</ClassMethod>
<Implementation><![CDATA[
	do ..%DeleteExtent()

	set status = $$$OK

	set typ = ##class(Alliance.Common.KAL.Code.MessageType).Lieferung()
	set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).AngebotErfasst()
	set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisMExtranet()
	set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
	set todayH = ##class(Base.DateTime).today().toHorolog()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH, 5, 3, 50, "Zusätzlicher Text")
	do message.write()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH, 5, 3, 50)
	do message.write()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH, 5, 3)
	do message.write()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH, 5,, 50)
	do message.write()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH, 5)
	do message.write()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH)
	do message.write()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH, "VZName", "LieferantName", "BestellNr", "Zusätzlicher Text")
	do message.write()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH, "VZName", "LieferantName", "BestellNr")
	do message.write()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH, "VZName", "LieferantName")
	do message.write()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH, "VZName",, "BestellNr")
	do message.write()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH, "VZName")
	do message.write()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH)
	do message.write()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH,,, "'1234567890'")
	do message.write()

	write !, "Done"
]]></Implementation>
</Method>

<Method name="DefinTeilbestellungErfasst">
<Description>
	do ##class(Alliance.Common.KAL.Message).DefinTeilbestellungErfasst()</Description>
<ClassMethod>1</ClassMethod>
<Implementation><![CDATA[
	set status = $$$OK

	set typ = ##class(Alliance.Common.KAL.Code.MessageType).Lieferung()
	set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).DefinTeilbestellungErfasst()
	set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisM()
	set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
	set todayH = ##class(Base.DateTime).today().toHorolog()
	set bestellId = "Alliance||40"

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH, 5, 3, 50, bestellId)
	do message.write()

	write !, "Done"
]]></Implementation>
</Method>

<Method name="BestellungInAllianceAngekommen">
<Description>
	do ##class(Alliance.Common.KAL.Message).BestellungInAllianceAngekommen()</Description>
<ClassMethod>1</ClassMethod>
<Implementation><![CDATA[
	set status = $$$OK

	set typ = ##class(Alliance.Common.KAL.Code.MessageType).Lieferung()
	set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).BestellungInAllianceAngekommen()
	set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).Alliance()
	set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
	set todayH = ##class(Base.DateTime).today().toHorolog()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH,,,, "Additional Text")
	do message.write()

	write !, "Done"
]]></Implementation>
</Method>

<Method name="DespatchAdviceErstellt">
<Description>
	do ##class(Alliance.Common.KAL.Message).DespatchAdviceErstellt()</Description>
<ClassMethod>1</ClassMethod>
<Implementation><![CDATA[
	set status = $$$OK

	set typ = ##class(Alliance.Common.KAL.Code.MessageType).DespatchAdvice()
	set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).DespatchAdviceErstellt()
	set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisM()
	set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
	set todayH = ##class(Base.DateTime).today().toHorolog()

	set message = ..new(.status, typ, subTyp, senderTyp, severity, todayH,,,, "AgrisM||12")
	do message.write()

	write !, "Done"
]]></Implementation>
</Method>

<Method name="Information">
<Description>
	do ##class(Alliance.Common.KAL.Message).Information("Test")</Description>
<ClassMethod>1</ClassMethod>
<FormalSpec>id:%String</FormalSpec>
<Implementation><![CDATA[
	set typ = ##class(Alliance.Common.KAL.Code.MessageType).DespatchAdvice()
	set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).Information()
	set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisM()
	set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Warning()
	set todayH = ##class(Base.DateTime).today().toHorolog()
	set message = ##class(Alliance.Common.KAL.Message).new(.status, typ, subTyp, senderTyp, severity, todayH,,,, id)

	write status
	do message.write()
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheSerialState</Type>
<DataLocation>^Alliance.Common.KAL.MessageD</DataLocation>
<DefaultData>MessageDefaultData</DefaultData>
<IdLocation>^Alliance.Common.KAL.MessageD</IdLocation>
<IndexLocation>^Alliance.Common.KAL.MessageI</IndexLocation>
<State>MessageState</State>
<StreamLocation>^Alliance.Common.KAL.MessageS</StreamLocation>
<Data name="MessageDefaultData">
<Structure>listnode</Structure>
<Subscript>"1"</Subscript>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>subTyp</Value>
</Value>
<Value name="3">
<Value>processed</Value>
</Value>
<Value name="4">
<Value>isProcessed</Value>
</Value>
<Value name="5">
<Value>timeStamp</Value>
</Value>
<Value name="6">
<Value>senderId</Value>
</Value>
<Value name="7">
<Value>senderName</Value>
</Value>
<Value name="8">
<Value>typKey</Value>
</Value>
<Value name="9">
<Value>subTypKey</Value>
</Value>
<Value name="10">
<Value>senderKey</Value>
</Value>
<Value name="11">
<Value>senderTypKey</Value>
</Value>
<Value name="12">
<Value>timeStampCreated</Value>
</Value>
<Value name="13">
<Value>timeStampReceived</Value>
</Value>
<Value name="14">
<Value>timeStampTransmitted</Value>
</Value>
<Value name="15">
<Value>datum</Value>
</Value>
<Value name="16">
<Value>typValue</Value>
</Value>
<Value name="17">
<Value>subTypValue</Value>
</Value>
<Value name="18">
<Value>senderTypValue</Value>
</Value>
<Value name="19">
<Value>severityKey</Value>
</Value>
<Value name="20">
<Value>severityValue</Value>
</Value>
<Value name="21">
<Value>textMessage</Value>
</Value>
<Value name="22">
<Value>additionalText</Value>
</Value>
<Value name="23">
<Value>clientId</Value>
</Value>
<Value name="24">
<Value>clientName</Value>
</Value>
</Data>
<Data name="MessageState">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>typ</Value>
</Value>
<Value name="2">
<Value>sender</Value>
</Value>
<Value name="3">
<Value>bestellId</Value>
</Value>
<Value name="4">
<Value>bestellNr</Value>
</Value>
<Value name="5">
<Value>lieferantId</Value>
</Value>
<Value name="6">
<Value>lieferantName</Value>
</Value>
<Value name="7">
<Value>lieferantOrt</Value>
</Value>
<Value name="8">
<Value>vzId</Value>
</Value>
<Value name="9">
<Value>vzName</Value>
</Value>
<Value name="10">
<Value>vzOrt</Value>
</Value>
<Value name="11">
<Value>bestellDatum</Value>
</Value>
<Value name="12">
<Value>timestamp</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.KAL.MessagesUnprocessed">
<Description>
	Instances of this class are used to collect the unprocessed messages and send them to the central alliance system.

		Last change: 17.03.2010 by Lem
</Description>
<Super>%RegisteredObject,%XML.Adaptor</Super>
<TimeChanged>61828,56647.375</TimeChanged>
<TimeCreated>61796,44578.859</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="senderId">
<Type>%String</Type>
<Parameter name="MAXLEN" value="10"/>
</Property>

<Property name="messages">
<Type>Alliance.Common.KAL.Message</Type>
<Collection>list</Collection>
</Property>

<UDLText name="T">
<Content><![CDATA[
//

]]></Content>
</UDLText>

<Method name="new">
<Description>
Create a new messagesUnprocessed object and make it available for KAL-processing</Description>
<ClassMethod>1</ClassMethod>
<FormalSpec><![CDATA[&status:%Status]]></FormalSpec>
<ReturnType>Alliance.Common.KAL.MessagesUnprocessed</ReturnType>
<Implementation><![CDATA[
	set messages = ..%New()
	set messages.senderId = ##class(Alliance.Common.KAL.CommunicationParams).getClientId()

	set resultSet = ##class(%ResultSet).%New("Alliance.Common.KAL.Message:unprocessedMessages")
	set status = resultSet.Execute()
	while (resultSet.Next())
	{
		set messageId = $get(resultSet.Data("ID"))
		set message = ##class(Alliance.Common.KAL.Message).%OpenId(messageId)
		if (message = $$$NULLOREF)
		{
			set status = $$$ERROR("Could not load message with ID=" _ messageId)
			quit
		}

		do messages.messages.Insert(message)
	}

	quit messages
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----	Processing			-----------------------------------------------

]]></Content>
</UDLText>

<Method name="markAsProcessed">
<Description>
Mark all my messages as being processed</Description>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set status = $$$OK

	set hasTX = $$$NO
	set doRollback = $$$NO

	try
	{
		&sql(
			START TRANSACTION
				%COMMITMODE EXPLICIT
				ISOLATION LEVEL READ COMMITTED
		)
		set hasTX = $$$YES

		for i=1:1:..messages.Count()
		{
			set message = ..messages.GetAt(i)
			set message.timeStampTransmitted = $zdatetime($zutil(188),3, 1, 6)
			set message.isProcessed = $$$YES
			set status = message.%Save()
		}
	}
	catch (error)
	{
		set doRollback = $$$YES
	}

	if ($$$ISERR(status))		set doRollback = $$$YES

	if ((hasTX = $$$YES) && ($TLevel > 0))
	{
		if (doRollback = $$$YES)
		{
			&sql(ROLLBACK)
		}
		else
		{
			&sql(COMMIT)
		}
	}

	quit status
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----	Support				-----------------------------------------------

]]></Content>
</UDLText>

<Method name="toString">
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[
	set string = "[KALUnprocessedMessages:" _ ..senderId

	for i=1:1:..messages.Count()
	{
		set string = string _ ##class(Base.String).crLf() _ ##class(Base.String).space(4) _ ..messages.GetAt(i).toString()
	}

	set string = string _ ##class(Base.String).crLf() _ "]"

	quit string
]]></Implementation>
</Method>

<Method name="write">
<Implementation><![CDATA[	write !, ..toString()
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----	Test				-----------------------------------------------

]]></Content>
</UDLText>

<Method name="test">
<Description>
	do ##class(Alliance.Common.KAL.MessagesUnprocessed).test()</Description>
<ClassMethod>1</ClassMethod>
<Implementation><![CDATA[
	set status = $$$OK

	do ##class(Alliance.Common.KAL.Message).test()

	set messages = ..new(.status)
	do messages.write()
	do messages.markAsProcessed()
	do messages.write()
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CoF67.MessagesUnp1E00D</DataLocation>
<DefaultData>MessagesUnprocessedDefaultData</DefaultData>
<IdLocation>^Alliance.CoF67.MessagesUnp1E00D</IdLocation>
<IndexLocation>^Alliance.CoF67.MessagesUnp1E00I</IndexLocation>
<StreamLocation>^Alliance.CoF67.MessagesUnp1E00S</StreamLocation>
<Data name="MessagesUnprocessedDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>ClientID</Value>
</Value>
<Value name="3">
<Value>Messages</Value>
</Value>
<Value name="4">
<Value>clientID</Value>
</Value>
<Value name="5">
<Value>messages</Value>
</Value>
<Value name="6">
<Value>isProcessed</Value>
</Value>
<Value name="7">
<Value>timeStamp</Value>
</Value>
<Value name="8">
<Value>senderId</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.KAL.WSClientMessageSender">
<ProcedureBlock>1</ProcedureBlock>
<Super>%SOAP.WebClient</Super>
<TimeChanged>61909,84464.835473</TimeChanged>
<TimeCreated>61748,52243.308916</TimeCreated>

<Parameter name="LOCATION">
<Description>
This is the URL used to access the web service.</Description>
<Default>http://localhost:1980/Alliance.Ens.Service.KALPickupService.cls</Default>
</Parameter>

<Parameter name="NAMESPACE">
<Description>
This is the namespace used by the Service</Description>
<Default>http://www.alliance.ch/kal/1.0</Default>
</Parameter>

<Parameter name="OUTPUTTYPEATTRIBUTE">
<Description>
Use xsi:type attribute for literal types.</Description>
<Default>1</Default>
</Parameter>

<Parameter name="SERVICENAME">
<Description>
This is the name of the Service</Description>
<Default>KALPickupService</Default>
</Parameter>

<Parameter name="SOAPVERSION">
<Description>
This is the SOAP version supported by the service.</Description>
<Default>1.1</Default>
</Parameter>

<UDLText name="T">
<Content><![CDATA[
//	Send the unprocessed messages to the WebServer

]]></Content>
</UDLText>

<Method name="sendMessages">
<Final>1</Final>
<FormalSpec>messages:Alliance.Common.KAL.MessagesUnprocessed</FormalSpec>
<ProcedureBlock>1</ProcedureBlock>
<ReturnType>%xsd.base64Binary</ReturnType>
<WebMethod>1</WebMethod>
<SoapBindingStyle>document</SoapBindingStyle>
<SoapBodyUse>literal</SoapBodyUse>
<Implementation><![CDATA[	quit ..WebMethod("sendMessages").Invoke(##this, ..#NAMESPACE _ "/Alliance.Ens.Service.KALPickupService.receiveMessages", .messages)
]]></Implementation>
</Method>

<UDLText name="T">
<Content><![CDATA[
//	-----	Processing			-----------------------------------------------

]]></Content>
</UDLText>

<Method name="sendUnprocessedMessages">
<Description>
	Send all unprocessed messages. On success, mark all of these messages as "processed"
		write ##class(Alliance.Common.KAL.ServerClient).sendUnprocessedMessages()</Description>
<ClassMethod>1</ClassMethod>
<ReturnType>%Status</ReturnType>
<Implementation><![CDATA[
	set status = $$$OK

	set messages = ##class(Alliance.Common.KAL.MessagesUnprocessed).new(.status)
	if ($$$ISERR(status))		quit status

	try
	{	set webClient = ..%New()
		set webClient.Location = ##class(Alliance.Common.KAL.CommunicationParams).getServerURL()
		set status = webClient.sendMessages(messages)
	}
	catch ex
	{
		set status = $$$ERROR("Exception caught in KAL.KeepAliveTask: " _ ex.Name)
	}

	//	If an error occurred, don't mark messages as processed!
	if ($$$ISERR(status))		quit status

	quit messages.markAsProcessed()
]]></Implementation>
</Method>
</Class>


<Class name="Alliance.Common.Model.Core.ObjectHeader">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.674277</TimeChanged>
<TimeCreated>61748,62192.699876</TimeCreated>
<Inheritance>right</Inheritance>

<Index name="Ident">
<IdKey>1</IdKey>
<Properties>CreatedOnSystem,ItemID</Properties>
<Unique>1</Unique>
</Index>

<Property name="MasterID">
<Type>%String</Type>
</Property>

<Property name="Status">
<Description>
1000 New Order
1050 Order passed to AGRIS/M
1100 Order Splitted
1200 Order Dispatched
9000 Invalid Order: No Order lines
9001 Invalid Order: ???</Description>
<Type>%Integer</Type>
</Property>

<Property name="ObjectType">
<Description>
100 Order
110 Supplier Order</Description>
<Type>%Integer</Type>
<InitialExpression>100</InitialExpression>
</Property>

<Property name="StatusChanged">
<Type>%TimeStamp</Type>
</Property>

<Property name="Created">
<Type>%TimeStamp</Type>
<InitialExpression>$ZDT($ZUTIL(188),3)</InitialExpression>
</Property>

<Property name="CreatedOnSystem">
<Type>%String</Type>
</Property>

<Property name="ItemID">
<Type>%String</Type>
</Property>

<Property name="ParentID">
<Type>%String</Type>
</Property>

<Method name="GenerateMasterID">
<ClassMethod>1</ClassMethod>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	quit $I(^Alliance.MasterID("ID"))
]]></Implementation>
</Method>

<Method name="GenerateItemID">
<ClassMethod>1</ClassMethod>
<ReturnType>%String</ReturnType>
<Implementation><![CDATA[	quit $I(^Alliance.ItemID("ID"))
]]></Implementation>
</Method>

<Method name="%OnAddToSaveSet">
<Description><![CDATA[
This callback method is invoked when the current object is added to the SaveSet,
either because %Save() was invoked on this object or on an object that references this object.
%OnAddToSaveSet can modify the current object. It can also add other objects to the current
SaveSet by invoking %AddToSaveSet or remove objects by calling %RemoveFromSaveSet.

<P>If this method returns an error status then %Save() will fail and the transaction
will be rolled back.]]></Description>
<FormalSpec>depth:%Integer=3,insert:%Integer=0,callcount:%Integer=0</FormalSpec>
<Private>1</Private>
<ProcedureBlock>1</ProcedureBlock>
<ReturnType>%Status</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[
	if (insert) {
		if (..MasterID = "") {
			set ..MasterID = ..GenerateMasterID()
			set ..ItemID = ..MasterID
		}
		if (..CreatedOnSystem = "") {
			set ..CreatedOnSystem = ##class(Alliance.Common.KAL.CommunicationParams).getClientId()
		}
		if (..ItemID = "") {
			set ..ItemID = ..GenerateItemID()
		}
	}
	Quit $$$OK
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.Comm4735.ObjectHeaderD</DataLocation>
<DefaultData>ObjectHeaderDefaultData</DefaultData>
<IdLocation>^Alliance.Comm4735.ObjectHeaderD</IdLocation>
<IndexLocation>^Alliance.Comm4735.ObjectHeaderI</IndexLocation>
<StreamLocation>^Alliance.Comm4735.ObjectHeaderS</StreamLocation>
<Data name="ObjectHeaderDefaultData">
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>MasterID</Value>
</Value>
<Value name="3">
<Value>ParentObj</Value>
</Value>
<Value name="4">
<Value>Status</Value>
</Value>
<Value name="5">
<Value>StatusChanged</Value>
</Value>
<Value name="6">
<Value>Created</Value>
</Value>
<Value name="7">
<Value>ObjectType</Value>
</Value>
<Value name="8">
<Value>CreatedSystem</Value>
</Value>
<Value name="9">
<Value>ItemID</Value>
</Value>
<Value name="10">
<Value>ParentID</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.DespatchAdvice.DespatchAdvice">
<Super>Alliance.Common.Model.Core.ObjectHeader</Super>
<TimeChanged>61822,42874</TimeChanged>
<TimeCreated>61759,42514.503437</TimeCreated>

<Property name="EDIHeader">
<Type>Alliance.Common.Model.DespatchAdvice.EDIHeader</Type>
</Property>

<Property name="MsgTimestamp">
<Description>
DTM.C507.2005 = 137</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="ShpDocName">
<Description>
///// Shipping Data
BGM C002.1001
351 = Shipping Data</Description>
<Type>%String</Type>
<InitialExpression>"351"</InitialExpression>
</Property>

<Property name="ShpCodeListAgy">
<Description>
BGM C002.3055
Code List Agency
9 = EAN</Description>
<Type>%String</Type>
<InitialExpression>"9"</InitialExpression>
</Property>

<Property name="ShpNo">
<Description>
BGM C002.1004
ShippingNo</Description>
<Type>%String</Type>
</Property>

<Property name="ShpMsgFnct">
<Description>
BGM C002.1004
Message Function
9 = Original</Description>
<Type>%String</Type>
<InitialExpression>"9"</InitialExpression>
</Property>

<Property name="DeliveryTime">
<Description>
DTM.C507.2005 = 191</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="OrderNo">
<Description>
SG1(1).RFF(1).1153 = ON
Order No Buyer</Description>
<Type>%String</Type>
</Property>

<Property name="OrderNoType">
<Description>
SG1(1).RFF(2).1153 = VN
VN = Order No Supplier
ON = Order No Buyer</Description>
<Type>%String</Type>
</Property>

<Property name="SAPBusCase">
<Description>
SG1(2).RFF(1).1153 = ABO
SAP Business Case
G = Global
X = Crossdocking
D = Direct delivery
J = Rackjobbing</Description>
<Type>%String</Type>
</Property>

<Property name="BuyerInfo">
<Description>
SG2-Info where SG2(x).NAD.3025 = "BY"</Description>
<Type>Alliance.Common.Model.DespatchAdvice.PartyInfo</Type>
</Property>

<Property name="SupplierInfo">
<Description>
SG2-Info where SG2(x).NAD.3025 = "SU"</Description>
<Type>Alliance.Common.Model.DespatchAdvice.PartyInfo</Type>
</Property>

<Property name="DeliveryPartyInfo">
<Description>
SG2-Info where SG2(x).NAD.3025 = "DP"</Description>
<Type>Alliance.Common.Model.DespatchAdvice.PartyInfo</Type>
</Property>

<Property name="StoreNumberInfo">
<Description>
SG2-Info where SG2(x).NAD.3025 = "SN"</Description>
<Type>Alliance.Common.Model.DespatchAdvice.PartyInfo</Type>
</Property>

<Property name="TransportDetails">
<Description>
SG6(1).TDT Information</Description>
<Type>Alliance.Common.Model.DespatchAdvice.TransportDetails</Type>
</Property>

<Property name="PackageInfos">
<Description>
SG10.SG11</Description>
<Type>PackageInfo</Type>
<Collection>list</Collection>
</Property>

<Method name="%OnNew">
<Description><![CDATA[
This callback method is invoked by the <METHOD>%New</METHOD> method to 
provide notification that a new instance of an object is being created.

<P>If this method returns an error then the object will not be created.
<p>It is passed the arguments provided in the %New call.
When customizing this method, override the arguments with whatever variables and types you expect to receive from %New().
For example, if you're going to call %New, passing 2 arguments, %OnNew's signature could be:
<p>Method %OnNew(dob as %Date = "", name as %Name = "") as %Status]]></Description>
<FormalSpec>initvalue:%CacheString</FormalSpec>
<Private>1</Private>
<ProcedureBlock>1</ProcedureBlock>
<ReturnType>%Status</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[
	set ..ObjectType = 200
	set ..Status = 1000
	set ..StatusChanged = $ZDT($ZUTIL(188),3)
	Quit $$$OK
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DefaultData>DespatchAdviceDefaultData</DefaultData>
<Data name="DespatchAdviceDefaultData">
<Structure>listnode</Structure>
<Subscript>"DespatchAdvice"</Subscript>
<Value name="1">
<Value>EDIHeader</Value>
</Value>
<Value name="2">
<Value>MsgTimestamp</Value>
</Value>
<Value name="3">
<Value>ShpDocName</Value>
</Value>
<Value name="4">
<Value>ShpCodeListAgy</Value>
</Value>
<Value name="5">
<Value>ShpNo</Value>
</Value>
<Value name="6">
<Value>ShpMsgFnct</Value>
</Value>
<Value name="7">
<Value>DeliveryTime</Value>
</Value>
<Value name="8">
<Value>OrderNo</Value>
</Value>
<Value name="9">
<Value>OrderNoType</Value>
</Value>
<Value name="10">
<Value>SAPBusCase</Value>
</Value>
<Value name="11">
<Value>BuyerInfo</Value>
</Value>
<Value name="12">
<Value>SupplierInfo</Value>
</Value>
<Value name="13">
<Value>DeliveryPartyInfo</Value>
</Value>
<Value name="14">
<Value>StoreNumberInfo</Value>
</Value>
<Value name="15">
<Value>TransportDetails</Value>
</Value>
<Value name="16">
<Value>PackageInfos</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.DespatchAdvice.EDIHeader">
<Description>
Collects data for UNB and UNH Segments</Description>
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.668653</TimeChanged>
<TimeCreated>61759,42683.720523</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="SyntaxId">
<Description>
/////////////////// UNB
UNB 0001</Description>
<Type>%String</Type>
<InitialExpression>"UNOC"</InitialExpression>
</Property>

<Property name="SyntaxVer">
<Description>
UNB 0002</Description>
<Type>%String</Type>
<InitialExpression>"3"</InitialExpression>
</Property>

<Property name="SenderId">
<Description>
UNB S002.0004
Global Location Number (GLN) of technical sender</Description>
<Type>%String</Type>
</Property>

<Property name="SenderIdCodeQual">
<Description>
UNB S002.0007</Description>
<Type>%String</Type>
<InitialExpression>"14"</InitialExpression>
</Property>

<Property name="RecipientId">
<Description>
UNB S003.0010
Global Location Number (GLN) of technical recipient</Description>
<Type>%String</Type>
</Property>

<Property name="RecipientIdCodeQual">
<Description>
UNB S003.0007</Description>
<Type>%String</Type>
<InitialExpression>"14"</InitialExpression>
</Property>

<Property name="RoutingAdr">
<Description>
UNB S003.0014
Routing Adress. GLN of supplier</Description>
<Type>%String</Type>
</Property>

<Property name="InterchangeDate">
<Description>
UNB S004.0017
Date of interchange prep (Format YYMMDD)</Description>
<Type>%String</Type>
</Property>

<Property name="InterchangeTime">
<Description>
UNB S004.0019
Time of interchange prep (Format HHMM)</Description>
<Type>%String</Type>
</Property>

<Property name="InterchangeCtrlRef">
<Description>
UNB S004.0020
Continuous Number of the interchange given by the sender</Description>
<Type>%String</Type>
</Property>

<Property name="ApplicationRef">
<Description>
UNB S005.0026
Application Reference</Description>
<Type>%String</Type>
</Property>

<Property name="CommunicationAgrmt">
<Description>
UNB S005.0032</Description>
<Type>%String</Type>
</Property>

<Property name="TestIndicator">
<Description>
UNB S005.0035
"1" means Test submission</Description>
<Type>%String</Type>
</Property>

<Property name="MsgRefNo">
<Description>
/////////////////// UNH
UNH 0062</Description>
<Type>%String</Type>
</Property>

<Property name="MsgTypeId">
<Description>
UNH S009.0065</Description>
<Type>%String</Type>
<InitialExpression>"DESADV"</InitialExpression>
</Property>

<Property name="MsgTypeVerNo">
<Description>
UNH S009.0052
Message TYpe Version Number. 
D = Draft</Description>
<Type>%String</Type>
<InitialExpression>"D"</InitialExpression>
</Property>

<Property name="MsgTypeReleaseNo">
<Description>
UNH S009.0054
Message TYpe Release Number. </Description>
<Type>%String</Type>
<InitialExpression>"96A"</InitialExpression>
</Property>

<Property name="CntrlAcy">
<Description>
UNH S009.0051
Controlling Agency </Description>
<Type>%String</Type>
<InitialExpression>"UN"</InitialExpression>
</Property>

<Property name="AssocAssCode">
<Description>
UNH S009.0057
Association assigned code
EAN006 = EAN Version Control  Number </Description>
<Type>%String</Type>
<InitialExpression>"EAN006"</InitialExpression>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CommonCA57.EDIHeaderD</DataLocation>
<DefaultData>EDIHeaderDefaultData</DefaultData>
<IdLocation>^Alliance.CommonCA57.EDIHeaderD</IdLocation>
<IndexLocation>^Alliance.CommonCA57.EDIHeaderI</IndexLocation>
<StreamLocation>^Alliance.CommonCA57.EDIHeaderS</StreamLocation>
<Data name="EDIHeaderDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>SyntaxId</Value>
</Value>
<Value name="3">
<Value>SyntaxVer</Value>
</Value>
<Value name="4">
<Value>SenderId</Value>
</Value>
<Value name="5">
<Value>SenderIdCodeQual</Value>
</Value>
<Value name="6">
<Value>RecipientId</Value>
</Value>
<Value name="7">
<Value>RecipientIdCodeQual</Value>
</Value>
<Value name="8">
<Value>RoutingAdr</Value>
</Value>
<Value name="9">
<Value>InterchangeDate</Value>
</Value>
<Value name="10">
<Value>InterchangeTime</Value>
</Value>
<Value name="11">
<Value>InterchangeCtrlRef</Value>
</Value>
<Value name="12">
<Value>ApplicationRef</Value>
</Value>
<Value name="13">
<Value>CommunicationAgrmt</Value>
</Value>
<Value name="14">
<Value>TestIndicator</Value>
</Value>
<Value name="15">
<Value>MsgRefNo</Value>
</Value>
<Value name="16">
<Value>MsgTypeId</Value>
</Value>
<Value name="17">
<Value>MsgTypeVerNo</Value>
</Value>
<Value name="18">
<Value>MsgTypeReleaseNo</Value>
</Value>
<Value name="19">
<Value>CntrlAcy</Value>
</Value>
<Value name="20">
<Value>AssocAssCode</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.DespatchAdvice.ItemDetails">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29802.298222</TimeChanged>
<TimeCreated>61759,42716.537318</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="LineNo">
<Description>
SG10.SG16.LIN.1082</Description>
<Type>%String</Type>
</Property>

<Property name="ItemNo">
<Description>
SG10.SG16.LIN.7140</Description>
<Type>%String</Type>
</Property>

<Property name="ItemNoType">
<Description>
SG10.SG16.LIN.7143
"EN" = EAN</Description>
<Type>%String</Type>
<InitialExpression>"EN"</InitialExpression>
</Property>

<Property name="Subline">
<Description>
SG10.SG16.LIN.C829.5495
1 = Is subline</Description>
<Type>%String</Type>
</Property>

<Property name="LineNoRef">
<Description>
SG10.SG16.LIN.C829.1082
Reference to lead Line No of sub line no (only wehen subline)</Description>
<Type>%String</Type>
</Property>

<Property name="Configuration">
<Description>
SG10.SG15.LIN.C829.7083
Configuration Code
I = Included in the configuration</Description>
<Type>%String</Type>
</Property>

<Property name="SAPItemNo">
<Description>
SG10.SG15.PIA Structure
Additional Article Identification</Description>
<Type>%String</Type>
</Property>

<Property name="Quantity">
<Description>
SG10.SG15.QTY.6060
Quantity</Description>
<Type>%String</Type>
</Property>

<Property name="QuantityQual">
<Description>
SG10.SG15.QTY.6063
Quantity Qualifier
11 = delivery quantity
12 = partial delivery quantity</Description>
<Type>%String</Type>
</Property>

<Property name="QuantityUoM">
<Description>
SG10.SG15.QTY.6411
Quantity Unit Of Measure
PCE = Piece</Description>
<Type>%String</Type>
</Property>

<Property name="BestBefore">
<Description>
SG10.SG15.DTM</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="OrderItemNo">
<Description>
SG10.SG15.SG16.RFF
Itemnumber in Order</Description>
<Type>%String</Type>
</Property>

<Property name="MarkingInstruction">
<Description>
SG10.SG15.SG20.PCI
Itemnumber in Order</Description>
<Type>%String</Type>
<InitialExpression>"10"</InitialExpression>
</Property>

<Property name="BatchNo">
<Description>
SG10.SG15.SG20.SG21.GIN
Itemnumber in Order</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CommoCA57.ItemDetailsD</DataLocation>
<DefaultData>ItemDetailsDefaultData</DefaultData>
<IdLocation>^Alliance.CommoCA57.ItemDetailsD</IdLocation>
<IndexLocation>^Alliance.CommoCA57.ItemDetailsI</IndexLocation>
<StreamLocation>^Alliance.CommoCA57.ItemDetailsS</StreamLocation>
<Data name="ItemDetailsDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>LineNo</Value>
</Value>
<Value name="3">
<Value>ItemNo</Value>
</Value>
<Value name="4">
<Value>ItemNoType</Value>
</Value>
<Value name="5">
<Value>Subline</Value>
</Value>
<Value name="6">
<Value>LineNoRef</Value>
</Value>
<Value name="7">
<Value>Configuration</Value>
</Value>
<Value name="8">
<Value>SAPItemNo</Value>
</Value>
<Value name="9">
<Value>Quantity</Value>
</Value>
<Value name="10">
<Value>QuantityQual</Value>
</Value>
<Value name="11">
<Value>QuantityUoM</Value>
</Value>
<Value name="12">
<Value>BestBefore</Value>
</Value>
<Value name="13">
<Value>OrderItemNo</Value>
</Value>
<Value name="14">
<Value>MarkingInstruction</Value>
</Value>
<Value name="15">
<Value>BatchNo</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.DespatchAdvice.PackageInfo">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.755347</TimeChanged>
<TimeCreated>61759,42764.25361</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="HierarchyNo">
<Description>
SG10.CPS.7164</Description>
<Type>%String</Type>
</Property>

<Property name="ParentHryNo">
<Description>
SG10.CPS.7166</Description>
<Type>%String</Type>
</Property>

<Property name="PackageUnits">
<Description>
SG10.SG11s</Description>
<Type>PackageUnit</Type>
<Collection>list</Collection>
</Property>

<Property name="Items">
<Description>
SG10.SG15</Description>
<Type>ItemDetails</Type>
<Collection>list</Collection>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CommoCA57.PackageInfoD</DataLocation>
<DefaultData>PackageInfoDefaultData</DefaultData>
<IdLocation>^Alliance.CommoCA57.PackageInfoD</IdLocation>
<IndexLocation>^Alliance.CommoCA57.PackageInfoI</IndexLocation>
<StreamLocation>^Alliance.CommoCA57.PackageInfoS</StreamLocation>
<Data name="PackageInfoDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>HierarchyNo</Value>
</Value>
<Value name="3">
<Value>ParentHryNo</Value>
</Value>
<Value name="4">
<Value>PackageUnits</Value>
</Value>
<Value name="5">
<Value>Items</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.DespatchAdvice.PackageUnit">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.773207</TimeChanged>
<TimeCreated>61759,42800.582993</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Count">
<Description>
SG10.SG11.PAC.7224
Number of packages</Description>
<Type>%String</Type>
</Property>

<Property name="Level">
<Description>
SG10.SG11.PAC.7075
Packaging level code
1 = inner packaging level
3 = outer packaging level</Description>
<Type>%String</Type>
</Property>

<Property name="Type">
<Description>
SG10.SG11.PAC.7065
Package type
08 = Palette</Description>
<Type>%String</Type>
</Property>

<Property name="HeightValue">
<Description>
Value of SG10.SG11.MEA.6314 where 6311 = "PD" and 6313 = "HT"</Description>
<Type>%String</Type>
</Property>

<Property name="HeightUnit">
<Description>
Value of SG10.SG11.MEA.6411 where 6311 = "PD" and 6313 = "HT"</Description>
<Type>%String</Type>
</Property>

<Property name="LengthValue">
<Description>
Value of SG10.SG11.MEA.6314 where 6311 = "PD" and 6313 = "LN"</Description>
<Type>%String</Type>
</Property>

<Property name="LengthUnit">
<Description>
Value of SG10.SG11.MEA.6411 where 6311 = "PD" and 6313 = "LN"</Description>
<Type>%String</Type>
</Property>

<Property name="WidthValue">
<Description>
Value of SG10.SG11.MEA.6314 where 6311 = "PD" and 6313 = "WD"</Description>
<Type>%String</Type>
</Property>

<Property name="WidthUnit">
<Description>
Value of SG10.SG11.MEA.6411 where 6311 = "PD" and 6313 = "WD"</Description>
<Type>%String</Type>
</Property>

<Property name="VolumeValue">
<Description>
Value of SG10.SG11.MEA.6314 where 6311 = "PD" and 6313 = "AAW"</Description>
<Type>%String</Type>
</Property>

<Property name="VolumeUnit">
<Description>
Value of SG10.SG11.MEA.6411 where 6311 = "PD" and 6313 = "AAW"</Description>
<Type>%String</Type>
</Property>

<Property name="GrossWeightValue">
<Description>
Value of SG10.SG11.MEA.6314 where 6311 = "PD" and 6313 = "AAW"</Description>
<Type>%String</Type>
</Property>

<Property name="GrossWeightUnit">
<Description>
Value of SG10.SG11.MEA.6411 where 6311 = "PD" and 6313 = "AAW"</Description>
<Type>%String</Type>
</Property>

<Property name="SSCCNo">
<Description>
Value of SG10.SG11.SG13(1) Structure</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CommoCA57.PackageUnitD</DataLocation>
<DefaultData>PackageUnitDefaultData</DefaultData>
<IdLocation>^Alliance.CommoCA57.PackageUnitD</IdLocation>
<IndexLocation>^Alliance.CommoCA57.PackageUnitI</IndexLocation>
<StreamLocation>^Alliance.CommoCA57.PackageUnitS</StreamLocation>
<Data name="PackageUnitDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Count</Value>
</Value>
<Value name="3">
<Value>Level</Value>
</Value>
<Value name="4">
<Value>Type</Value>
</Value>
<Value name="5">
<Value>HeightValue</Value>
</Value>
<Value name="6">
<Value>HeightUnit</Value>
</Value>
<Value name="7">
<Value>LengthValue</Value>
</Value>
<Value name="8">
<Value>LengthUnit</Value>
</Value>
<Value name="9">
<Value>WidthValue</Value>
</Value>
<Value name="10">
<Value>WidthUnit</Value>
</Value>
<Value name="11">
<Value>VolumeValue</Value>
</Value>
<Value name="12">
<Value>VolumeUnit</Value>
</Value>
<Value name="13">
<Value>GrossWeightValue</Value>
</Value>
<Value name="14">
<Value>GrossWeightUnit</Value>
</Value>
<Value name="15">
<Value>SSCCNo</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.DespatchAdvice.PartyInfo">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.762854</TimeChanged>
<TimeCreated>61759,42837.93414</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Type">
<Description>
Party Type
BY = Buyer
SU = Suplier
DP = Delivery Party
SN = Store Number</Description>
<Type>%String</Type>
</Property>

<Property name="PartyID">
<Description>
SG2.NAD.3039
GLN of BY, SU, DP or Store</Description>
<Type>%String</Type>
</Property>

<Property name="CodeListRespAgy">
<Description>
SG2.NAD.3055
CodeListResponsibleAgency
9 = EAN</Description>
<Type>%String</Type>
<InitialExpression>"9"</InitialExpression>
</Property>

<Property name="RefQual">
<Description>
SG2.SG3(1).RFF.1153
ReferenceQualifier</Description>
<Type>%String</Type>
</Property>

<Property name="RefNo">
<Description>
SG2.SG3(1).RFF.1153
ReferenceNumber</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CommonCA57.PartyInfoD</DataLocation>
<DefaultData>PartyInfoDefaultData</DefaultData>
<IdLocation>^Alliance.CommonCA57.PartyInfoD</IdLocation>
<IndexLocation>^Alliance.CommonCA57.PartyInfoI</IndexLocation>
<StreamLocation>^Alliance.CommonCA57.PartyInfoS</StreamLocation>
<Data name="PartyInfoDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Type</Value>
</Value>
<Value name="3">
<Value>PartyID</Value>
</Value>
<Value name="4">
<Value>CodeListRespAgy</Value>
</Value>
<Value name="5">
<Value>RefQual</Value>
</Value>
<Value name="6">
<Value>RefNo</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.DespatchAdvice.TransportDetails">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.774912</TimeChanged>
<TimeCreated>61759,43146.387017</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="TransportStage">
<Description>
SG6(1).TDT.8051
20 = Main mode of Transport</Description>
<Type>%String</Type>
<InitialExpression>"20"</InitialExpression>
</Property>

<Property name="Mode">
<Description>
SG6(1).TDT.8067
Mode of Transport
10 = Sea
20 = Train
30 = Road
40 = Air
50 = Post
60 = Combined MoT
100 = Courier</Description>
<Type>%String</Type>
</Property>

<Property name="TypeOfTransport">
<Description>
SG6(1).TDT.8179
Code for Details of Mode, i.e. 12 = Ship Tanker</Description>
<Type>%String</Type>
</Property>

<Property name="IdentOfTransport">
<Description>
SG6(1).TDT.8212
Identification of Transport, i.e. Identification Number of vehicle</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CCA57.TransportDeEB83D</DataLocation>
<DefaultData>TransportDetailsDefaultData</DefaultData>
<IdLocation>^Alliance.CCA57.TransportDeEB83D</IdLocation>
<IndexLocation>^Alliance.CCA57.TransportDeEB83I</IndexLocation>
<StreamLocation>^Alliance.CCA57.TransportDeEB83S</StreamLocation>
<Data name="TransportDetailsDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>TransportStage</Value>
</Value>
<Value name="3">
<Value>Mode</Value>
</Value>
<Value name="4">
<Value>TypeOfTransport</Value>
</Value>
<Value name="5">
<Value>IdentOfTransport</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Invoice.AllowanceOrCharge">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.818848</TimeChanged>
<TimeCreated>61759,44336.474497</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="AllowOrCharge">
<Description>
SG26.SG39.ALC.5463
A Allowance
C Charge</Description>
<Type>%String</Type>
</Property>

<Property name="Number">
<Description>
SG26.SG39.ALC.C552.1230
Allowance or Charge number/identifier</Description>
<Type>%String</Type>
</Property>

<Property name="SpecialService">
<Description>
SG26.SG39.ALC.C214.7161
Special Service Description</Description>
<Type>%String</Type>
</Property>

<Property name="PercentType">
<Description>
SG26.SG39.SG41.PCD.5245
Percentage type
1 Allowance
2 Charge
3 Allowance or charge</Description>
<Type>%String</Type>
</Property>

<Property name="PercentValue">
<Description>
SG26.SG39.SG41.PCD.5482
Percent value</Description>
<Type>%String</Type>
</Property>

<Property name="AmountType">
<Description>
SG26.SG39.SG42.MOA.5245
Monetary Amount type
23 Charge amount
204 Allowance amount</Description>
<Type>%String</Type>
</Property>

<Property name="AmountValue">
<Description>
SG26.SG39.SG42.MOA.5482
Monetary Amount value</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CF042.AllowanceOrA405D</DataLocation>
<DefaultData>AllowanceOrChargeDefaultData</DefaultData>
<IdLocation>^Alliance.CF042.AllowanceOrA405D</IdLocation>
<IndexLocation>^Alliance.CF042.AllowanceOrA405I</IndexLocation>
<StreamLocation>^Alliance.CF042.AllowanceOrA405S</StreamLocation>
<Data name="AllowanceOrChargeDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>AllowOrCharge</Value>
</Value>
<Value name="3">
<Value>Number</Value>
</Value>
<Value name="4">
<Value>SpecialService</Value>
</Value>
<Value name="5">
<Value>PercentType</Value>
</Value>
<Value name="6">
<Value>PercentValue</Value>
</Value>
<Value name="7">
<Value>AmountType</Value>
</Value>
<Value name="8">
<Value>AmountValue</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Invoice.EDIHeader">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.864667</TimeChanged>
<TimeCreated>61759,44364.45292</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="SyntaxId">
<Description>
/////////////////// UNB
UNB 0001</Description>
<Type>%String</Type>
<InitialExpression>"UNOC"</InitialExpression>
</Property>

<Property name="SyntaxVer">
<Description>
UNB 0002</Description>
<Type>%String</Type>
<InitialExpression>"4"</InitialExpression>
</Property>

<Property name="SenderId">
<Description>
UNB S002.0004
Global Location Number (GLN) of technical sender</Description>
<Type>%String</Type>
</Property>

<Property name="SenderIdCodeQual">
<Description>
UNB S002.0007</Description>
<Type>%String</Type>
<InitialExpression>"14"</InitialExpression>
</Property>

<Property name="RecipientId">
<Description>
UNB S003.0010
Global Location Number (GLN) of technical recipient</Description>
<Type>%String</Type>
</Property>

<Property name="RecipientIdCodeQual">
<Description>
UNB S003.0007</Description>
<Type>%String</Type>
<InitialExpression>"14"</InitialExpression>
</Property>

<Property name="RoutingAdr">
<Description>
UNB S003.0014
Routing Adress. GLN of supplier</Description>
<Type>%String</Type>
</Property>

<Property name="InterchangeDate">
<Description>
UNB S004.0017
Date of interchange prep (Format YYMMDD)</Description>
<Type>%String</Type>
</Property>

<Property name="InterchangeTime">
<Description>
UNB S004.0019
Time of interchange prep (Format HHMM)</Description>
<Type>%String</Type>
</Property>

<Property name="InterchangeCtrlRef">
<Description>
UNB S004.0020
Continuous Number of the interchange given by the sender</Description>
<Type>%String</Type>
</Property>

<Property name="ApplicationRef">
<Description>
UNB S005.0026
Application Reference</Description>
<Type>%String</Type>
</Property>

<Property name="CommunicationAgrmt">
<Description>
UNB S005.0032</Description>
<Type>%String</Type>
</Property>

<Property name="TestIndicator">
<Description>
UNB S005.0035
"1" means Test submission</Description>
<Type>%String</Type>
</Property>

<Property name="MsgRefNo">
<Description>
///////////////////////////UNH
UNH 0062</Description>
<Type>%String</Type>
</Property>

<Property name="MsgTypeId">
<Description>
UNH S009.0065</Description>
<Type>%String</Type>
<InitialExpression>"INVOIC"</InitialExpression>
</Property>

<Property name="MsgTypeVerNo">
<Description>
UNH S009.0052
Message TYpe Version Number. 
D = Draft</Description>
<Type>%String</Type>
<InitialExpression>"D"</InitialExpression>
</Property>

<Property name="MsgTypeReleaseNo">
<Description>
UNH S009.0054
Message TYpe Release Number. </Description>
<Type>%String</Type>
<InitialExpression>"01B"</InitialExpression>
</Property>

<Property name="CntrlAcy">
<Description>
UNH S009.0051
Controlling Agency </Description>
<Type>%String</Type>
<InitialExpression>"UN"</InitialExpression>
</Property>

<Property name="AssocAssCode">
<Description>
UNH S009.0057
Association assigned code
EAN010 = Indicating EANCOM version 010 of UNSM Invoice </Description>
<Type>%String</Type>
<InitialExpression>"EAN010"</InitialExpression>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CommonF042.EDIHeaderD</DataLocation>
<DefaultData>EDIHeaderDefaultData</DefaultData>
<IdLocation>^Alliance.CommonF042.EDIHeaderD</IdLocation>
<IndexLocation>^Alliance.CommonF042.EDIHeaderI</IndexLocation>
<StreamLocation>^Alliance.CommonF042.EDIHeaderS</StreamLocation>
<Data name="EDIHeaderDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>MsgRefNo</Value>
</Value>
<Value name="3">
<Value>MsgTypeId</Value>
</Value>
<Value name="4">
<Value>MsgTypeVerNo</Value>
</Value>
<Value name="5">
<Value>MsgTypeReleaseNo</Value>
</Value>
<Value name="6">
<Value>CntrlAcy</Value>
</Value>
<Value name="7">
<Value>AssocAssCode</Value>
</Value>
<Value name="8">
<Value>SyntaxId</Value>
</Value>
<Value name="9">
<Value>SyntaxVer</Value>
</Value>
<Value name="10">
<Value>SenderId</Value>
</Value>
<Value name="11">
<Value>SenderIdCodeQual</Value>
</Value>
<Value name="12">
<Value>RecipientId</Value>
</Value>
<Value name="13">
<Value>RecipientIdCodeQual</Value>
</Value>
<Value name="14">
<Value>RoutingAdr</Value>
</Value>
<Value name="15">
<Value>InterchangeDate</Value>
</Value>
<Value name="16">
<Value>InterchangeTime</Value>
</Value>
<Value name="17">
<Value>InterchangeCtrlRef</Value>
</Value>
<Value name="18">
<Value>ApplicationRef</Value>
</Value>
<Value name="19">
<Value>CommunicationAgrmt</Value>
</Value>
<Value name="20">
<Value>TestIndicator</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Invoice.Invoice">
<Super>Alliance.Common.Model.Core.ObjectHeader</Super>
<TimeChanged>61822,42896</TimeChanged>
<TimeCreated>61759,44393.070112</TimeCreated>

<Property name="EDIHeader">
<Type>Alliance.Common.Model.Invoice.EDIHeader</Type>
</Property>

<Property name="DocumentType">
<Description>
BGM.C002.1001
380 = Commercial Invoice
381 = Credit Note (Gutschrift)
383 = Debit note (Nachbelastung)</Description>
<Type>%String</Type>
<InitialExpression>"380"</InitialExpression>
</Property>

<Property name="InvoiceNo">
<Description>
BGM.C106.104</Description>
<Type>%String</Type>
</Property>

<Property name="MsgType">
<Description>
BGM.1225
1 = Cancellation
9 = Original
55 = Notification only</Description>
<Type>%String</Type>
<InitialExpression>"9"</InitialExpression>
</Property>

<Property name="RespType">
<Description>
BGM.4343
AC = Acknowledge
'' = No Ack</Description>
<Type>%String</Type>
</Property>

<Property name="MsgTimestamp">
<Description>
DTM.C507.2005 = 137</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="DeliveryDate">
<Description>
DTM.C507.2005 = 35</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="InvoicingPeriod">
<Description>
DTM.C507.2005 = 263</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="InvDateApplication">
<Description>
DTM.C507.2005 = 454</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="InvMessage">
<Description>
FTX.4451 = 'ZZZ'
Free text, i.e. Reason for creadit advice (Gutschrift)</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="512"/>
</Property>

<Property name="RefInfos">
<Description>
 SG1 Items. Info about referenced documents</Description>
<Type>ReferenceInfo</Type>
<Collection>list</Collection>
</Property>

<Property name="PartyInfos">
<Description>
 SG2 Items. Info about parties</Description>
<Type>PartyInformation</Type>
<Collection>list</Collection>
</Property>

<Property name="Currency">
<Description>
 SG7.CUX
Invoice currency in ISO 4217 (3-alpha)</Description>
<Type>%String</Type>
</Property>

<Property name="PaymentTerms">
<Description>
 SG8 Items. Info about Payment Terms</Description>
<Type>PaymentTerms</Type>
<Collection>list</Collection>
</Property>

<Property name="InvoiceLines">
<Description>
 SG26 Items. Info about InvoiceLines</Description>
<Type>InvoiceLine</Type>
<Collection>list</Collection>
</Property>

<Property name="UNSSeperator">
<Description>
UNS</Description>
<Type>%String</Type>
<InitialExpression>"S"</InitialExpression>
</Property>

<Property name="LineCount">
<Description>
CNT</Description>
<Type>%Integer</Type>
<Calculated>1</Calculated>
</Property>

<Method name="LineCountGet">
<ReturnType>%Integer</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[
	if (..InvoiceLines = "") {
		quit 0
	}
	quit ..InvoiceLines.Count()
]]></Implementation>
</Method>

<Property name="MonetaryDetails">
<Description>
SG50
Monetary Details</Description>
<Type>MonetaryDetail</Type>
<Collection>list</Collection>
</Property>

<Property name="TAXDetails">
<Description>
SG52</Description>
<Type>TaxDetail</Type>
<Collection>list</Collection>
</Property>

<Method name="%OnNew">
<Description><![CDATA[
This callback method is invoked by the <METHOD>%New</METHOD> method to 
provide notification that a new instance of an object is being created.

<P>If this method returns an error then the object will not be created.
<p>It is passed the arguments provided in the %New call.
When customizing this method, override the arguments with whatever variables and types you expect to receive from %New().
For example, if you're going to call %New, passing 2 arguments, %OnNew's signature could be:
<p>Method %OnNew(dob as %Date = "", name as %Name = "") as %Status]]></Description>
<FormalSpec>initvalue:%CacheString</FormalSpec>
<Private>1</Private>
<ProcedureBlock>1</ProcedureBlock>
<ReturnType>%Status</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[
	set ..ObjectType = 300
	set ..Status = 1000
	set ..StatusChanged = $ZDT($ZUTIL(188),3)
	Quit $$$OK
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DefaultData>InvoiceDefaultData</DefaultData>
<Data name="InvoiceDefaultData">
<Subscript>"Invoice"</Subscript>
<Value name="1">
<Value>EDIHeader</Value>
</Value>
<Value name="2">
<Value>DocumentType</Value>
</Value>
<Value name="3">
<Value>InvoiceNo</Value>
</Value>
<Value name="4">
<Value>MsgType</Value>
</Value>
<Value name="5">
<Value>RespType</Value>
</Value>
<Value name="6">
<Value>MsgTimestamp</Value>
</Value>
<Value name="7">
<Value>DeliveryDate</Value>
</Value>
<Value name="8">
<Value>InvoicingPeriod</Value>
</Value>
<Value name="9">
<Value>InvDateApplication</Value>
</Value>
<Value name="10">
<Value>InvMessage</Value>
</Value>
<Value name="11">
<Value>RefInfos</Value>
</Value>
<Value name="12">
<Value>PartyInfos</Value>
</Value>
<Value name="13">
<Value>Currency</Value>
</Value>
<Value name="14">
<Value>PaymentTerms</Value>
</Value>
<Value name="15">
<Value>InvoiceLines</Value>
</Value>
<Value name="16">
<Value>UNSSeperator</Value>
</Value>
<Value name="17">
<Value>MonetaryDetails</Value>
</Value>
<Value name="18">
<Value>TAXDetails</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Invoice.InvoiceLine">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29802.291313</TimeChanged>
<TimeCreated>61759,44427.418524</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="ItemID">
<Type>%String</Type>
</Property>

<Property name="ItemNo">
<Type>%String</Type>
</Property>

<Property name="ItemTypeId">
<Type>%String</Type>
</Property>

<Property name="SublineIndicator">
<Type>%String</Type>
</Property>

<Property name="LineNoRef">
<Description>
Reference to lead Line No of sub line no (only wehen subline)</Description>
<Type>%String</Type>
</Property>

<Property name="ProductIds">
<Description>
SG26.PIA</Description>
<Type>ProductId</Type>
<Collection>list</Collection>
</Property>

<Property name="ItemDescriptions">
<Description>
 SG26.IMD. Info about Payment Terms</Description>
<Type>ItemDescription</Type>
<Collection>list</Collection>
</Property>

<Property name="Quantities">
<Description>
Quantity information. Must contain one element with QuantityInfo.Type = 46 </Description>
<Type>QuantityInfo</Type>
<Collection>list</Collection>
</Property>

<Property name="DeliveryDate">
<Description>
SG26.DTM
type = 35
TODO: Are the other date types 1, 263 also required?</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="MonetaryAmount">
<Description>
SG26.SG27.MOA</Description>
<Type>%String</Type>
</Property>

<Property name="LinePaymentTerms">
<Description>
SG26.SG28.PAT
5 Discount not applicable</Description>
<Type>%String</Type>
</Property>

<Property name="PriceDetails">
<Description>
SG26.SG29.PRI</Description>
<Type>PriceInfo</Type>
<Collection>list</Collection>
</Property>

<UDLText name="T">
<Content><![CDATA[
//Property OrderNoBuyer As %String;

]]></Content>
</UDLText>

<Property name="OrderRefs">
<Description>
SG26.SG30.RFF.1154, SG26.SG30.RFF.1153="ON"</Description>
<Type>ReferenceInfo</Type>
<Collection>list</Collection>
</Property>

<UDLText name="T">
<Content><![CDATA[
//Property OrderNoSupplier As %String;

]]></Content>
</UDLText>

<Property name="VATPercent">
<Description>
SG26.SG34.TAX.C243.5278, SG26.SG34.TAX.C241.5153 = "VAT"</Description>
<Type>%String</Type>
</Property>

<Property name="TaxDueAmount">
<Description>
SG26.SG34.MOA.C516.5004, SG26.SG34.MOA.C516.5025 = "124"</Description>
<Type>%String</Type>
</Property>

<Property name="TaxableAmount">
<Description>
SG26.SG34.MOA.C516.5004, SG26.SG34.MOA.C516.5025 = "125"</Description>
<Type>%String</Type>
</Property>

<Property name="AllowancesOrCharges">
<Description>
SG26.SG34</Description>
<Type>AllowanceOrCharge</Type>
<Collection>list</Collection>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CommoF042.InvoiceLineD</DataLocation>
<DefaultData>InvoiceLineDefaultData</DefaultData>
<IdLocation>^Alliance.CommoF042.InvoiceLineD</IdLocation>
<IndexLocation>^Alliance.CommoF042.InvoiceLineI</IndexLocation>
<StreamLocation>^Alliance.CommoF042.InvoiceLineS</StreamLocation>
<Data name="InvoiceLineDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>ItemID</Value>
</Value>
<Value name="3">
<Value>ItemNo</Value>
</Value>
<Value name="4">
<Value>ItemTypeId</Value>
</Value>
<Value name="5">
<Value>SublineIndicator</Value>
</Value>
<Value name="6">
<Value>LineNoRef</Value>
</Value>
<Value name="7">
<Value>ProductIds</Value>
</Value>
<Value name="8">
<Value>ItemDescriptions</Value>
</Value>
<Value name="9">
<Value>Quantities</Value>
</Value>
<Value name="10">
<Value>DeliveryDate</Value>
</Value>
<Value name="11">
<Value>MonetaryAmount</Value>
</Value>
<Value name="12">
<Value>LinePaymentTerms</Value>
</Value>
<Value name="13">
<Value>PriceDetails</Value>
</Value>
<Value name="14">
<Value>OrderNoBuyer</Value>
</Value>
<Value name="15">
<Value>OrderNoSupplier</Value>
</Value>
<Value name="16">
<Value>VATPercent</Value>
</Value>
<Value name="17">
<Value>TaxDueAmount</Value>
</Value>
<Value name="18">
<Value>TaxableAmount</Value>
</Value>
<Value name="19">
<Value>AllowancesOrCharges</Value>
</Value>
<Value name="20">
<Value>OrderRefs</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Invoice.ItemDescription">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.842792</TimeChanged>
<TimeCreated>61759,44451.820137</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Type">
<Description>
IMD.7077
E = Free-form short description
F = Free-form
C = Code</Description>
<Type>%String</Type>
</Property>

<Property name="Ident">
<Description>
IMD.7009
CU = Customer unit
STM1 = Alternative Unit of Measure
PAC = Price Display required</Description>
<Type>%String</Type>
</Property>

<Property name="RespAgcy">
<Description>
IMD.3055
9 EAN</Description>
<Type>%String</Type>
</Property>

<Property name="Textline1">
<Description>
IMD.7008</Description>
<Type>%String</Type>
</Property>

<Property name="Textline2">
<Description>
IMD.70082</Description>
<Type>%String</Type>
</Property>

<Property name="LanguageCode">
<Description>
IMD.3453</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CF042.ItemDescripE104D</DataLocation>
<DefaultData>ItemDescriptionDefaultData</DefaultData>
<IdLocation>^Alliance.CF042.ItemDescripE104D</IdLocation>
<IndexLocation>^Alliance.CF042.ItemDescripE104I</IndexLocation>
<StreamLocation>^Alliance.CF042.ItemDescripE104S</StreamLocation>
<Data name="ItemDescriptionDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Type</Value>
</Value>
<Value name="3">
<Value>Ident</Value>
</Value>
<Value name="4">
<Value>RespAgcy</Value>
</Value>
<Value name="5">
<Value>Textline1</Value>
</Value>
<Value name="6">
<Value>Textline2</Value>
</Value>
<Value name="7">
<Value>LanguageCode</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Invoice.MonetaryDetail">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.846921</TimeChanged>
<TimeCreated>61759,44473.883853</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Type">
<Description>
SG50.MOA.C516.5025
77 Invoice amount
79 Total line items amount
86 Message total monetary amount
129 Total amount subject to payment discount
131 Total charges/allowances
176 Message total duty/tax/fee amount</Description>
<Type>%String</Type>
</Property>

<Property name="Amount">
<Description>
SG50.MOA.C516.5004</Description>
<Type>%String</Type>
</Property>

<Property name="Referencetype">
<Description>
SG50.SG51.RFF.C506.1153
PQ Payment reference</Description>
<Type>%String</Type>
</Property>

<Property name="ReferenceNo">
<Description>
SG50.SG51.RFF.C506.1154</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CoF042.MonetaryDetailD</DataLocation>
<DefaultData>MonetaryDetailDefaultData</DefaultData>
<IdLocation>^Alliance.CoF042.MonetaryDetailD</IdLocation>
<IndexLocation>^Alliance.CoF042.MonetaryDetailI</IndexLocation>
<StreamLocation>^Alliance.CoF042.MonetaryDetailS</StreamLocation>
<Data name="MonetaryDetailDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Type</Value>
</Value>
<Value name="3">
<Value>Amount</Value>
</Value>
<Value name="4">
<Value>Referencetype</Value>
</Value>
<Value name="5">
<Value>ReferenceNo</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Invoice.PartyInformation">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.918595</TimeChanged>
<TimeCreated>61759,44504.430067</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Type">
<Description>
Party Type
BY Buyer
DP Delivery party
II Issuer of invoice
IV Invoicee
PE Payee
SU Supplier
UC Ultimate consignee (Endempfänger)</Description>
<Type>%String</Type>
</Property>

<Property name="PartyID">
<Description>
SG2.NAD.3039
GLN of BY, SU, DP, etc.</Description>
<Type>%String</Type>
</Property>

<Property name="CodeListRespAgy">
<Description>
SG2.NAD.3055
CodeListResponsibleAgency
9 = EAN</Description>
<Type>%String</Type>
<InitialExpression>"9"</InitialExpression>
</Property>

<Property name="Name">
<Description>
SG2.NAD.C080.3036(1)
Name </Description>
<Type>%String</Type>
</Property>

<Property name="Name2">
<Description>
SG2.NAD.C080.3036(2)
Name Line 2</Description>
<Type>%String</Type>
</Property>

<Property name="Street">
<Description>
SG2.NAD.C059.3042(1)
Street and No </Description>
<Type>%String</Type>
</Property>

<Property name="Street2">
<Description>
SG2.NAD.C059.3042(2)
Street and No Line 2</Description>
<Type>%String</Type>
</Property>

<Property name="City">
<Description>
SG2.NAD.3164
Street and No Line 2</Description>
<Type>%String</Type>
</Property>

<Property name="ZIPCode">
<Description>
SG2.NAD.3251
ZIPCode</Description>
<Type>%String</Type>
</Property>

<Property name="Country">
<Description>
SG2.NAD.3207
Country</Description>
<Type>%String</Type>
</Property>

<Property name="VATRegNo">
<Description>
SG2.SG3.RFF.1154
VAT Registration Number</Description>
<Type>%String</Type>
</Property>

<Property name="ContactName">
<Description>
SG2.SG5.CTA.3412
Name of Contact Person</Description>
<Type>%String</Type>
</Property>

<Property name="ContactDep">
<Description>
SG2.SG5.CTA.3413
Contact Department</Description>
<Type>%String</Type>
</Property>

<Property name="ContactPhone">
<Description>
SG2.SG5.COM.3148, SG2.SG5.COM.3155 = 'TE'
Contact Phone Number</Description>
<Type>%String</Type>
</Property>

<Property name="ContactFax">
<Description>
SG2.SG5.COM.3148, SG2.SG5.COM.3155 = 'FX'
Contact Fax Number</Description>
<Type>%String</Type>
</Property>

<Property name="ContactEMail">
<Description>
SG2.SG5.COM.3148, SG2.SG5.COM.3155 = 'EM'
Contact E-Mail Address</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CF042.PartyInformEF5FD</DataLocation>
<DefaultData>PartyInformationDefaultData</DefaultData>
<IdLocation>^Alliance.CF042.PartyInformEF5FD</IdLocation>
<IndexLocation>^Alliance.CF042.PartyInformEF5FI</IndexLocation>
<StreamLocation>^Alliance.CF042.PartyInformEF5FS</StreamLocation>
<Data name="PartyInformationDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Type</Value>
</Value>
<Value name="3">
<Value>PartyID</Value>
</Value>
<Value name="4">
<Value>CodeListRespAgy</Value>
</Value>
<Value name="5">
<Value>Name</Value>
</Value>
<Value name="6">
<Value>Name2</Value>
</Value>
<Value name="7">
<Value>Street</Value>
</Value>
<Value name="8">
<Value>Street2</Value>
</Value>
<Value name="9">
<Value>City</Value>
</Value>
<Value name="10">
<Value>ZIPCode</Value>
</Value>
<Value name="11">
<Value>Country</Value>
</Value>
<Value name="12">
<Value>VATRegNo</Value>
</Value>
<Value name="13">
<Value>ContactName</Value>
</Value>
<Value name="14">
<Value>ContactDep</Value>
</Value>
<Value name="15">
<Value>ContactPhone</Value>
</Value>
<Value name="16">
<Value>ContactFax</Value>
</Value>
<Value name="17">
<Value>ContactEMail</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Invoice.PaymentTerms">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29802.362688</TimeChanged>
<TimeCreated>61759,44525.436766</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Type">
<Description>
SG8.PAT.4279
1 Basic
3 Fixed date
22 Discount</Description>
<Type>%String</Type>
</Property>

<Property name="TimeRef">
<Description>
SG8.PAT.C112.2475
5 Date of Invoice</Description>
<Type>%String</Type>
</Property>

<Property name="TimeRelation">
<Description>
SG8.PAT.C112.2009
3 After reference</Description>
<Type>%String</Type>
</Property>

<Property name="PeriodType">
<Description>
SG8.PAT.C112.2151
D Day</Description>
<Type>%String</Type>
</Property>

<Property name="PeriodCount">
<Description>
SG8.PAT.C112.2152</Description>
<Type>%String</Type>
</Property>

<Property name="DiscountDue">
<Description>
SG8.DTM.C507.2380</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="NetDue">
<Description>
SG8.DTM.C507.2380</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="Percent">
<Description>
SG8.PCD.C501.5482</Description>
<Type>%String</Type>
</Property>

<Property name="PercentType">
<Description>
SG8.PCD.C501.5245
7 Percent of Invoice
12 Discount (Skonto)</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CommF042.PaymentTermsD</DataLocation>
<DefaultData>PaymentTermsDefaultData</DefaultData>
<IdLocation>^Alliance.CommF042.PaymentTermsD</IdLocation>
<IndexLocation>^Alliance.CommF042.PaymentTermsI</IndexLocation>
<StreamLocation>^Alliance.CommF042.PaymentTermsS</StreamLocation>
<Data name="PaymentTermsDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Type</Value>
</Value>
<Value name="3">
<Value>TimeRef</Value>
</Value>
<Value name="4">
<Value>TimeRelation</Value>
</Value>
<Value name="5">
<Value>PeriodType</Value>
</Value>
<Value name="6">
<Value>PeriodCount</Value>
</Value>
<Value name="7">
<Value>DiscountDue</Value>
</Value>
<Value name="8">
<Value>NetDue</Value>
</Value>
<Value name="9">
<Value>Percent</Value>
</Value>
<Value name="10">
<Value>PercentType</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Invoice.PriceInfo">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.888859</TimeChanged>
<TimeCreated>61759,44544.589399</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="PriceCode">
<Description>
Field: SG26().SG29().PRI.5125
AAA = Calculation Net (Netto-Einstandspreis exkl. MWST)
INF = Information (Detail-Preis inkl. MWST)</Description>
<Type>%String</Type>
</Property>

<Property name="PriceAmount">
<Description>
Field: SG26().SG29().PRI.5118</Description>
<Type>%String</Type>
</Property>

<Property name="PriceType">
<Description>
Field: SG26().SG29().PRI.5375</Description>
<Type>%String</Type>
</Property>

<Property name="PriceSpec">
<Description>
Field:SG26().SG29().PRI.5387</Description>
<Type>%String</Type>
</Property>

<Property name="UnitPriceBase">
<Description>
Field: SG26().SG29().PRI.5284</Description>
<Type>%String</Type>
</Property>

<Property name="UnitOfMeasure">
<Description>
Field: SG26().SG29().PRI.6411</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CommonF042.PriceInfoD</DataLocation>
<DefaultData>PriceInfoDefaultData</DefaultData>
<IdLocation>^Alliance.CommonF042.PriceInfoD</IdLocation>
<IndexLocation>^Alliance.CommonF042.PriceInfoI</IndexLocation>
<StreamLocation>^Alliance.CommonF042.PriceInfoS</StreamLocation>
<Data name="PriceInfoDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Type</Value>
</Value>
<Value name="3">
<Value>TimeRef</Value>
</Value>
<Value name="4">
<Value>TimeRelation</Value>
</Value>
<Value name="5">
<Value>PeriodType</Value>
</Value>
<Value name="6">
<Value>PeriodCount</Value>
</Value>
<Value name="7">
<Value>DiscountDue</Value>
</Value>
<Value name="8">
<Value>NetDue</Value>
</Value>
<Value name="9">
<Value>Percent</Value>
</Value>
<Value name="10">
<Value>PercentType</Value>
</Value>
<Value name="11">
<Value>Qualifier</Value>
</Value>
<Value name="12">
<Value>Price</Value>
</Value>
<Value name="13">
<Value>UnitPriceBase</Value>
</Value>
<Value name="14">
<Value>UnitOfMeasure</Value>
</Value>
<Value name="15">
<Value>PriceCode</Value>
</Value>
<Value name="16">
<Value>PriceAmount</Value>
</Value>
<Value name="17">
<Value>PriceType</Value>
</Value>
<Value name="18">
<Value>PriceSpec</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Invoice.ProductId">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.887951</TimeChanged>
<TimeCreated>61759,44604.069358</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="NumberType">
<Description>
1 Additional Identification
5 Product Identification</Description>
<Type>%String</Type>
</Property>

<Property name="ProductNo">
<Description>
The Product Number</Description>
<Type>%String</Type>
</Property>

<Property name="NumberOwner">
<Description>
SA Supplier's article Number 
IN Buyer's article Number </Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CommonF042.ProductIdD</DataLocation>
<DefaultData>ProductIdDefaultData</DefaultData>
<IdLocation>^Alliance.CommonF042.ProductIdD</IdLocation>
<IndexLocation>^Alliance.CommonF042.ProductIdI</IndexLocation>
<StreamLocation>^Alliance.CommonF042.ProductIdS</StreamLocation>
<Data name="ProductIdDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>NumberType</Value>
</Value>
<Value name="3">
<Value>ProductNo</Value>
</Value>
<Value name="4">
<Value>NumberOwner</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Invoice.QuantityInfo">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.915963</TimeChanged>
<TimeCreated>61759,44633.820706</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Type">
<Description>
SG26.QTY.C186.6063
46 Delivered quantity
47 Invoiced quantity /Fakturierte Menge
59 Number of consumer units in the tradedunit </Description>
<Type>%String</Type>
</Property>

<Property name="Quantity">
<Description>
SG26.QTY.C186.6060</Description>
<Type>%String</Type>
</Property>

<Property name="UnitOfMeasure">
<Description>
SG26.QTY.C186.6411</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CommF042.QuantityInfoD</DataLocation>
<DefaultData>QuantityInfoDefaultData</DefaultData>
<IdLocation>^Alliance.CommF042.QuantityInfoD</IdLocation>
<IndexLocation>^Alliance.CommF042.QuantityInfoI</IndexLocation>
<StreamLocation>^Alliance.CommF042.QuantityInfoS</StreamLocation>
<Data name="QuantityInfoDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Type</Value>
</Value>
<Value name="3">
<Value>Quantity</Value>
</Value>
<Value name="4">
<Value>UnitOfMeasure</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Invoice.ReferenceInfo">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29802.286409</TimeChanged>
<TimeCreated>61759,44672.961503</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="ReferenceType">
<Description>
SG1().RFF.C506.1153
AAK Despatch advice number
ACE Related document number
AIZ Consolidated invoice number
ALO Receiving advice number
CD Credit note number
DL Debit note number
DQ Delivery note number
IV Invoice number
ON Order number (buyer)
VN Order number (supplier)</Description>
<Type>%String</Type>
</Property>

<Property name="ReferenceNo">
<Description>
SG1().RFF.C506.1154
The number of the reference, i.e. Order Number if type = "ON"</Description>
<Type>%String</Type>
</Property>

<Property name="ReferenceDate">
<Description>
SG1().DTM
SG1().DTM.C507.2005 must be '171'</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="LineNo">
<Description>
SG26().SG30().RFF.C506.1156, i.e. LineNo of Order = "100"</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.ComF042.ReferenceInfoD</DataLocation>
<DefaultData>ReferenceInfoDefaultData</DefaultData>
<IdLocation>^Alliance.ComF042.ReferenceInfoD</IdLocation>
<IndexLocation>^Alliance.ComF042.ReferenceInfoI</IndexLocation>
<StreamLocation>^Alliance.ComF042.ReferenceInfoS</StreamLocation>
<Data name="ReferenceInfoDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>ReferenceType</Value>
</Value>
<Value name="3">
<Value>ReferenceNo</Value>
</Value>
<Value name="4">
<Value>ReferenceDate</Value>
</Value>
<Value name="5">
<Value>LineNo</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Invoice.TaxDetail">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.951503</TimeChanged>
<TimeCreated>61759,44695.478034</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="FnType">
<Description>
SG52.TAX.5283
7 Tax</Description>
<Type>%String</Type>
</Property>

<Property name="TaxType">
<Description>
SG52.TAX.C241.5153
VAT Value added tax</Description>
<Type>%String</Type>
</Property>

<Property name="Percent">
<Description>
SG52.TAX.C243.5278</Description>
<Type>%String</Type>
</Property>

<Property name="PartyTaxIdent">
<Description>
SG52.TAX.3446</Description>
<Type>%String</Type>
</Property>

<Property name="TaxAmount">
<Description>
SG52.MOA</Description>
<Type>%String</Type>
</Property>

<Property name="TaxableAmount">
<Description>
SG52.MOA</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.CommonF042.TaxDetailD</DataLocation>
<DefaultData>TaxDetailDefaultData</DefaultData>
<IdLocation>^Alliance.CommonF042.TaxDetailD</IdLocation>
<IndexLocation>^Alliance.CommonF042.TaxDetailI</IndexLocation>
<StreamLocation>^Alliance.CommonF042.TaxDetailS</StreamLocation>
<Data name="TaxDetailDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>FnType</Value>
</Value>
<Value name="3">
<Value>TaxType</Value>
</Value>
<Value name="4">
<Value>Percent</Value>
</Value>
<Value name="5">
<Value>PartyTaxIdent</Value>
</Value>
<Value name="6">
<Value>TaxAmount</Value>
</Value>
<Value name="7">
<Value>TaxableAmount</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.Buyer">
<Super>Alliance.Common.Model.Order.PartyInformation</Super>
<TimeChanged>61828,49884.90904</TimeChanged>
<TimeCreated>61747,62932.831085</TimeCreated>

<Property name="ContactName">
<Description>
SG2.SG5.NTA.3412</Description>
<Type>%String</Type>
</Property>

<Property name="ContactTel">
<Description>
if (SG2.SG5.COM.3155 = "TE") then value of SG2.SG5.COM.3148</Description>
<Type>%String</Type>
</Property>

<Property name="ContactFax">
<Description>
if (SG2.SG5.COM.3155 = "FX") then value of SG2.SG5.COM.3148</Description>
<Type>%String</Type>
</Property>

<Property name="ContactEMail">
<Description>
if (SG2.SG5.COM.3155 = "EM") then value of SG2.SG5.COM.3148</Description>
<Type>%String</Type>
</Property>

<Property name="ReferenceQual">
<Description>
SG2.SG3.RFF.1153
Reference Qualifier. YA1 Additional party identification (EAN Code)</Description>
<Type>%String</Type>
</Property>

<Property name="ReferenceNo">
<Description>
SG2.SG3.RFF.1154
Reference Number/COOP Supplier No</Description>
<Type>%String</Type>
</Property>

<Property name="ReferenceTradingEmpty">
<Description>
SG2.SG3.RFF.1156
Reference not specified - is empty</Description>
<Type>%String</Type>
</Property>

<Property name="ReferenceTradingGood">
<Description>
SG2.SG3.RFF.4000
Reference not specified - contains trading goods</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DefaultData>BuyerDefaultData</DefaultData>
<Data name="BuyerDefaultData">
<Structure>listnode</Structure>
<Subscript>"Buyer"</Subscript>
<Value name="1">
<Value>ContactName</Value>
</Value>
<Value name="2">
<Value>ContactTel</Value>
</Value>
<Value name="3">
<Value>ContactFax</Value>
</Value>
<Value name="4">
<Value>ContactEMail</Value>
</Value>
<Value name="5">
<Value>ReferenceQual</Value>
</Value>
<Value name="6">
<Value>ReferenceNo</Value>
</Value>
<Value name="7">
<Value>ReferenceTradingGood</Value>
</Value>
<Value name="8">
<Value>ReferenceTradingEmpty</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.CurrencyDetails">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.959018</TimeChanged>
<TimeCreated>61747,62992.820159</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="DetailsQualifier">
<Description>
SG7(1).CUX(1).6347
2 = Reference Currency</Description>
<Type>%String</Type>
</Property>

<Property name="CurrencyCoded">
<Description>
SG7(1).CUX(1).6345
Currency Code in ISO 4217 (Three alpha)
CHF = Schweizer Franken, EUR = Euro</Description>
<Type>%String</Type>
</Property>

<Property name="CurrencyQualifier">
<Description>
SG7(1).CUX(1).6343
Meaning of currency
9 = Order currency</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.C9BF0.CurrencyDet8B9FD</DataLocation>
<DefaultData>CurrencyDetailsDefaultData</DefaultData>
<IdLocation>^Alliance.C9BF0.CurrencyDet8B9FD</IdLocation>
<IndexLocation>^Alliance.C9BF0.CurrencyDet8B9FI</IndexLocation>
<StreamLocation>^Alliance.C9BF0.CurrencyDet8B9FS</StreamLocation>
<Data name="CurrencyDetailsDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>DetailsQualifier</Value>
</Value>
<Value name="3">
<Value>CurrencyCoded</Value>
</Value>
<Value name="4">
<Value>CurrencyQualifier</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.DeliveryParty">
<Super>Alliance.Common.Model.Order.PartyInformation</Super>
<TimeChanged>61747,63450</TimeChanged>
<TimeCreated>61747,63029.013138</TimeCreated>

<Property name="Name1">
<Description>
SG2.NAD1.3036</Description>
<Type>%String</Type>
</Property>

<Property name="Name2">
<Description>
SG2.NAD1.3036</Description>
<Type>%String</Type>
</Property>

<Property name="Telephone">
<Description>
SG2.NAD1.3036</Description>
<Type>%String</Type>
</Property>

<Property name="Street">
<Description>
SG2.NAD1.3042</Description>
<Type>%String</Type>
</Property>

<Property name="POBox">
<Description>
SG2.NAD1.3042</Description>
<Type>%String</Type>
</Property>

<Property name="Station">
<Description>
SG2.NAD1.3042
"Bahnstation"</Description>
<Type>%String</Type>
</Property>

<Property name="City">
<Description>
SG2.NAD1.3164</Description>
<Type>%String</Type>
</Property>

<Property name="ZIPCode">
<Description>
SG2.NAD1.3251</Description>
<Type>%String</Type>
</Property>

<Property name="CountryCode">
<Description>
SG2.NAD1.3207</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DefaultData>DeliveryPartyDefaultData</DefaultData>
<Data name="DeliveryPartyDefaultData">
<Structure>listnode</Structure>
<Subscript>"DeliveryParty"</Subscript>
<Value name="1">
<Value>Name1</Value>
</Value>
<Value name="2">
<Value>Name2</Value>
</Value>
<Value name="3">
<Value>Telephone</Value>
</Value>
<Value name="4">
<Value>Street</Value>
</Value>
<Value name="5">
<Value>POBox</Value>
</Value>
<Value name="6">
<Value>Station</Value>
</Value>
<Value name="7">
<Value>City</Value>
</Value>
<Value name="8">
<Value>ZIPCode</Value>
</Value>
<Value name="9">
<Value>CountryCode</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.DeliveryTerms">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29801.980943</TimeChanged>
<TimeCreated>61747,63079.297784</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="TermsOfDel">
<Description>
SG11(1).TOD(1).4055
4 = Pick-up by Customer
6 = Terms of Delivery</Description>
<Type>%String</Type>
</Property>

<Property name="TermsOfDelCode">
<Description>
SG11(1).TOD(1).C100.4053
INCOTERMS 2000 Coded	</Description>
<Type>%String</Type>
</Property>

<Property name="TermsOfDelPlace">
<Description>
SG11(1).TOD(1).C100.4052
Terms of Delivery: Location	</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.Com9BF0.DeliveryTermsD</DataLocation>
<DefaultData>DeliveryTermsDefaultData</DefaultData>
<IdLocation>^Alliance.Com9BF0.DeliveryTermsD</IdLocation>
<IndexLocation>^Alliance.Com9BF0.DeliveryTermsI</IndexLocation>
<StreamLocation>^Alliance.Com9BF0.DeliveryTermsS</StreamLocation>
<Data name="DeliveryTermsDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>TermsOfDel</Value>
</Value>
<Value name="3">
<Value>TermsOfDelCode</Value>
</Value>
<Value name="4">
<Value>TermsOfDelPlace</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.EDIDTM">
<Super>%SerialObject,%XML.Adaptor</Super>
<TimeChanged>61831,51261.093</TimeChanged>
<TimeCreated>61747,63128.005759</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="DTType">
<Description>
DTM 2005
137 = Document/Message Date and Time 
282 = Latest Confirmation Date for Order Response (ORDRSP) 
2 = Delivery Date/Time (Data = 000000 means unknown)
200 = Pick-Up Date
15 = Promotion Startdate
16 = Promotion Enddate
191 = Delivery Date and Time
361 = Best before date
35 = Delivery date/time
263 = Invoicing Period
454 = Invoice date from application
171 = Reference (document) date/time
12 = Terms discount due date/time (Skonto Verfalldatum)
13 = Terms net due date (Faelligkeit)</Description>
<Type>%String</Type>
</Property>

<Property name="Data">
<Description>
DTM 2380
Stored Date/Time as-is </Description>
<Type>%String</Type>
</Property>

<Property name="Format">
<Description>
DTM 2379
The date/time format pattern of date stored in data
204 = YYYYMMDDHHMMSS 
102 = YYYYMMDD
718 = YYYYMMDD-YYYYMMDD</Description>
<Type>%String</Type>
</Property>

<Property name="Date">
<Type>%Library.Date</Type>
<Calculated>1</Calculated>
<ReadOnly>1</ReadOnly>
</Property>

<Method name="DateGet">
<ReturnType>%Library.Date</ReturnType>
<Implementation><![CDATA[
	try {
		set result = $ZDateH($Extract(..Data,1,8), 8)
	}
	catch ex {
		set result = 0
	}

	quit result
]]></Implementation>
</Method>

<Property name="Time">
<Type>%Library.Time</Type>
<Calculated>1</Calculated>
<ReadOnly>1</ReadOnly>
</Property>

<Method name="TimeGet">
<ReturnType>%Library.Time</ReturnType>
<Implementation><![CDATA[
	try {
		set result = $ZTIMEH($Extract(..Data,1,2)_":"_$Extract(..Data,3,4)_":"_$Extract(..Data,5,6),1)
	}
	catch ex {
		set result = 0
	}

	quit result
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheSerialState</Type>
<State>EDIDTMState</State>
<StreamLocation>^Alliance.Common.Mod9BF0.EDIDTMS</StreamLocation>
<Data name="EDIDTMState">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>DTType</Value>
</Value>
<Value name="2">
<Value>Data</Value>
</Value>
<Value name="3">
<Value>Format</Value>
</Value>
<Value name="4">
<Value>Date</Value>
</Value>
<Value name="5">
<Value>Time</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.EDIFTX">
<Super>%SerialObject,%XML.Adaptor</Super>
<TimeChanged>62045,35813.457101</TimeChanged>
<TimeCreated>61747,63163.923066</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Subject">
<Description>
FTX 4451
"DIN" = Delivery Instructions
"ADK" = Promotion Information Text</Description>
<Type>%String</Type>
</Property>

<Property name="Line1">
<Description>
FTX 4440</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="70"/>
</Property>

<Property name="Line2">
<Description>
FTX 44402</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="70"/>
</Property>

<Property name="Line3">
<Description>
FTX 44403</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="70"/>
</Property>

<Property name="Line4">
<Description>
FTX 44404</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="70"/>
</Property>

<Property name="Line5">
<Description>
FTX 44405</Description>
<Type>%String</Type>
<Parameter name="MAXLEN" value="70"/>
</Property>

<Storage name="Default">
<Type>%Library.CacheSerialState</Type>
<State>EDIFTXState</State>
<StreamLocation>^Alliance.Common.Mod9BF0.EDIFTXS</StreamLocation>
<Data name="EDIFTXState">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>Subject</Value>
</Value>
<Value name="2">
<Value>Line1</Value>
</Value>
<Value name="3">
<Value>Line2</Value>
</Value>
<Value name="4">
<Value>Line3</Value>
</Value>
<Value name="5">
<Value>Line4</Value>
</Value>
<Value name="6">
<Value>Line5</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.EDIInfo">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29802.045907</TimeChanged>
<TimeCreated>61747,63188.393681</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="MsgRefNo">
<Description>
UNH 0062</Description>
<Type>%String</Type>
</Property>

<Property name="MsgTypeIdent">
<Description>
UNH 0065</Description>
<Type>%String</Type>
</Property>

<Property name="MsgTypeVerNo">
<Description>
UNH 0052</Description>
<Type>%String</Type>
</Property>

<Property name="MsgRefRelNo">
<Description>
UNH 0054</Description>
<Type>%String</Type>
</Property>

<Property name="CntrlAcy">
<Description>
UNH 0051</Description>
<Type>%String</Type>
</Property>

<Property name="AssocCode">
<Description>
UNH 0057</Description>
<Type>%String</Type>
</Property>

<Property name="LineCountCheck">
<Description>
CNT: Value of 6066 where 6069 = "2"
Number of LIN Elements in EDIFACT for control</Description>
<Type>%String</Type>
</Property>

<Property name="SegementCountCheck">
<Description>
UNT 0074</Description>
<Type>%String</Type>
</Property>

<Property name="MsgRefNoCheck">
<Description>
UNT 0062</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.Common.Mo9BF0.EDIInfoD</DataLocation>
<DefaultData>EDIInfoDefaultData</DefaultData>
<IdLocation>^Alliance.Common.Mo9BF0.EDIInfoD</IdLocation>
<IndexLocation>^Alliance.Common.Mo9BF0.EDIInfoI</IndexLocation>
<StreamLocation>^Alliance.Common.Mo9BF0.EDIInfoS</StreamLocation>
<Data name="EDIInfoDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>MsgRefNo</Value>
</Value>
<Value name="3">
<Value>MsgTypeIdent</Value>
</Value>
<Value name="4">
<Value>MsgTypeVerNo</Value>
</Value>
<Value name="5">
<Value>MsgRefRelNo</Value>
</Value>
<Value name="6">
<Value>CntrlAcy</Value>
</Value>
<Value name="7">
<Value>AssocCode</Value>
</Value>
<Value name="8">
<Value>LineCountCheck</Value>
</Value>
<Value name="9">
<Value>SegementCountCheck</Value>
</Value>
<Value name="10">
<Value>MsgRefNoCheck</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.ItemDescription">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29802.044827</TimeChanged>
<TimeCreated>61747,63219.246866</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Type">
<Description>
IMD.7077
E = Free-form short description
F = Free-form
C = Code</Description>
<Type>%String</Type>
</Property>

<Property name="Ident">
<Description>
IMD.7009
CU = Customer unit
STM1 = Alternative Unit of Measure
PAC = Price Display required</Description>
<Type>%String</Type>
</Property>

<Property name="Textline1">
<Description>
IMD.7008</Description>
<Type>%String</Type>
</Property>

<Property name="Textline2">
<Description>
IMD.70082</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.C9BF0.ItemDescripE104D</DataLocation>
<DefaultData>ItemDescriptionDefaultData</DefaultData>
<IdLocation>^Alliance.C9BF0.ItemDescripE104D</IdLocation>
<IndexLocation>^Alliance.C9BF0.ItemDescripE104I</IndexLocation>
<StreamLocation>^Alliance.C9BF0.ItemDescripE104S</StreamLocation>
<Data name="ItemDescriptionDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Type</Value>
</Value>
<Value name="3">
<Value>Ident</Value>
</Value>
<Value name="4">
<Value>Textline1</Value>
</Value>
<Value name="5">
<Value>Textline2</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.Order">
<Super>Alliance.Common.Model.Core.ObjectHeader</Super>
<TimeChanged>61832,64744.14</TimeChanged>
<TimeCreated>61747,62019.170908</TimeCreated>

<Property name="EDIInfo">
<Type>Alliance.Common.Model.Order.EDIInfo</Type>
</Property>

<Property name="OrderNo">
<Description>
BGM 1004. Alphanumeric 10 chars</Description>
<Type>%String</Type>
</Property>

<Property name="Type">
<Description>
BGM 1001. Value should always be 220 for Order</Description>
<Type>%String</Type>
</Property>

<Property name="CodeListAgcy">
<Description>
BGM 3055. Should be 9 for EAN</Description>
<Type>%String</Type>
</Property>

<Property name="MsgFunction">
<Description>
BGM 1225. 9 original, 31 copy</Description>
<Type>%String</Type>
</Property>

<Property name="RespType">
<Description>
BGM 4343. </Description>
<Type>%String</Type>
</Property>

<Property name="DocumentDateTime">
<Description>
DTM 2005 = 137</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="LatestConfirmDate">
<Description>
DTM 2005 = 282</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="ReqDeliveryDate">
<Description>
DTM 2005 = 2</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="PickUpDate">
<Description>
DTM 2005 = 200</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="PromotionStart">
<Description>
DTM 2005 = 15</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="PromotionEnd">
<Description>
DTM 2005 = 16</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="DeliveryInstr">
<Description>
FTX 4551 = "DIN"</Description>
<Type>Alliance.Common.Model.Order.EDIFTX</Type>
</Property>

<Property name="PromotionInfo">
<Description>
FTX 4551 = "ADK"</Description>
<Type>Alliance.Common.Model.Order.EDIFTX</Type>
</Property>

<Property name="OriginatorRefCode">
<Description>
if SegmentGroup1 1153 = "ABO", then value of 1154
Originator's (Auftraggeber) Reference Code</Description>
<Type>%String</Type>
</Property>

<Property name="PromotionalDealNo">
<Description>
if SegmentGroup1 1153 = "PD", then value of 1154</Description>
<Type>%String</Type>
</Property>

<Property name="Buyer">
<Description>
The Buyer Information from SegmentGroup2</Description>
<Type>Alliance.Common.Model.Order.Buyer</Type>
</Property>

<Property name="Supplier">
<Description>
The Supplier Information from SegmentGroup2</Description>
<Type>Alliance.Common.Model.Order.Supplier</Type>
</Property>

<Property name="DeliveryParty">
<Description>
The DeliveryParty Information from SegmentGroup2</Description>
<Type>Alliance.Common.Model.Order.DeliveryParty</Type>
</Property>

<Property name="Invoicee">
<Description>
The Invoicee Information from SegmentGroup2</Description>
<Type>Alliance.Common.Model.Order.PartyInformation</Type>
</Property>

<Property name="StoreNumber">
<Description>
The StoreNumber Information from SegmentGroup2</Description>
<Type>Alliance.Common.Model.Order.PartyInformation</Type>
</Property>

<Property name="CurrencyInfo">
<Description>
The Currency Information SG7</Description>
<Type>Alliance.Common.Model.Order.CurrencyDetails</Type>
</Property>

<Property name="PaymentTerms">
<Description>
The Currency Information SG8.PAT</Description>
<Type>Alliance.Common.Model.Order.PaymentTerms</Type>
</Property>

<Property name="ModeOfTransport">
<Description>
Mode of Transport
Value of SG9.TDT.8067 where (SG9.TDT.8051 = "20" Main-carrier transport)
10 = See, 20 = Bahn, 30 = Strasse, 40 = Luft, 50 = Post, 60 = Kombiniert, 100 = Kurrier</Description>
<Type>%String</Type>
</Property>

<Property name="DeliveryTerms">
<Description>
SG11(1).TOD(1)</Description>
<Type>Alliance.Common.Model.Order.DeliveryTerms</Type>
</Property>

<Property name="OrderLines">
<Description>
Reference to the order lines</Description>
<Type>Alliance.Common.Model.Order.OrderLine</Type>
<Cardinality>children</Cardinality>
<Collection>list</Collection>
<Inverse>Order</Inverse>
<Relationship>1</Relationship>
</Property>

<Method name="%OnNew">
<Description><![CDATA[
This callback method is invoked by the <METHOD>%New</METHOD> method to 
provide notification that a new instance of an object is being created.

<P>If this method returns an error then the object will not be created.
<p>It is passed the arguments provided in the %New call.
When customizing this method, override the arguments with whatever variables and types you expect to receive from %New().
For example, if you're going to call %New, passing 2 arguments, %OnNew's signature could be:
<p>Method %OnNew(dob as %Date = "", name as %Name = "") as %Status]]></Description>
<FormalSpec>initvalue:%CacheString</FormalSpec>
<Private>1</Private>
<ProcedureBlock>1</ProcedureBlock>
<ReturnType>%Status</ReturnType>
<ServerOnly>1</ServerOnly>
<Implementation><![CDATA[
	set ..Status = 1000
	set ..StatusChanged = $ZDT($ZUTIL(188),3)
	Quit $$$OK
]]></Implementation>
</Method>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DefaultData>OrderDefaultData</DefaultData>
<Data name="OrderDefaultData">
<Subscript>"Order"</Subscript>
<Value name="1">
<Value>EDIInfo</Value>
</Value>
<Value name="2">
<Value>OrderNo</Value>
</Value>
<Value name="3">
<Value>Type</Value>
</Value>
<Value name="4">
<Value>CodeListAgcy</Value>
</Value>
<Value name="5">
<Value>MsgFunction</Value>
</Value>
<Value name="6">
<Value>RespType</Value>
</Value>
<Value name="7">
<Value>DocumentDateTime</Value>
</Value>
<Value name="8">
<Value>LatestConfirmDate</Value>
</Value>
<Value name="9">
<Value>ReqDeliveryDate</Value>
</Value>
<Value name="10">
<Value>PickUpDate</Value>
</Value>
<Value name="11">
<Value>PromotionStart</Value>
</Value>
<Value name="12">
<Value>PromotionEnd</Value>
</Value>
<Value name="13">
<Value>DeliveryInstr</Value>
</Value>
<Value name="14">
<Value>PromotionInfo</Value>
</Value>
<Value name="15">
<Value>OriginatorRefCode</Value>
</Value>
<Value name="16">
<Value>PromotionalDealNo</Value>
</Value>
<Value name="17">
<Value>Buyer</Value>
</Value>
<Value name="18">
<Value>Supplier</Value>
</Value>
<Value name="19">
<Value>DeliveryParty</Value>
</Value>
<Value name="20">
<Value>Invoicee</Value>
</Value>
<Value name="21">
<Value>StoreNumber</Value>
</Value>
<Value name="22">
<Value>CurrencyInfo</Value>
</Value>
<Value name="23">
<Value>PaymentTerms</Value>
</Value>
<Value name="24">
<Value>ModeOfTransport</Value>
</Value>
<Value name="25">
<Value>DeliveryTerms</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.OrderLine">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29802.741109</TimeChanged>
<TimeCreated>61747,63290.600743</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="LineNo">
<Description>
SG25().LIN.1082</Description>
<Type>%String</Type>
</Property>

<Property name="ItemNo">
<Description>
SG25().LIN.C212.7140</Description>
<Type>%String</Type>
</Property>

<Property name="ItemNoType">
<Description>
SG25().LIN.C212.7143</Description>
<Type>%String</Type>
</Property>

<Property name="SubLineIndicator">
<Description>
SG25().LIN.C829.5495</Description>
<Type>%String</Type>
</Property>

<Property name="LineNoRef">
<Description>
SG25().LIN.C829.1082
Reference to lead Line No of sub line no (only wehen subline)</Description>
<Type>%String</Type>
</Property>

<Property name="Configuration">
<Description>
SG25().LIN.C829.1082
I=Included in the configuration (only wehen subline)</Description>
<Type>%String</Type>
</Property>

<Property name="GTINNo">
<Description>
Additional article identification number GTIN CU
PIA: Value of 7140 when 7143 = "EN"</Description>
<Type>%String</Type>
</Property>

<Property name="GTINNoType">
<Description>
PIA: Value of 3055 when 7143 = "EN"
9 = EAN</Description>
<Type>%String</Type>
</Property>

<Property name="BuyerArticleNo">
<Description>
Additional article identification number of Buyer
PIA: Value of 7140 when 7143 = "IN"</Description>
<Type>%String</Type>
</Property>

<Property name="SupplierArticleNo">
<Description>
Additional article identification number of Supplier
PIA: Value of 7140 when 7143 = "SA"</Description>
<Type>%String</Type>
</Property>

<Property name="ProductCategory">
<Description>
Additional article information for product category
PIA: Value of 7140 when 7143 = "GU"</Description>
<Type>%String</Type>
</Property>

<Property name="Order">
<Type>Alliance.Common.Model.Order.Order</Type>
<Cardinality>parent</Cardinality>
<Inverse>OrderLines</Inverse>
<Relationship>1</Relationship>
</Property>

<Property name="ItemDescriptions">
<Description>
Reference to the parent order
Item Descriptions. Key is ItemDescription Type</Description>
<Type>ItemDescription</Type>
<Collection>array</Collection>
</Property>

<Property name="OrderedQty">
<Description>
SG25().QTY(). Value of 6060 where 6063 = "21"
Ordered Quantity</Description>
<Type>%String</Type>
</Property>

<Property name="OrderedQtyUoM">
<Description>
SG25().QTY(): Value of 6411 where 6063 = "21"
Unit of Measure of Ordered Quantity</Description>
<Type>%String</Type>
</Property>

<Property name="BatchNo">
<Description>
SG25().GIN(): Value of 7402 where 7405 = "BX"
Batch Number</Description>
<Type>%String</Type>
</Property>

<Property name="MKSTextLines">
<Description>
SG25().FTX(): Value of 4400-44005 where 4451 = "MKS"
Additional Marks/numbers Information</Description>
<Type>%String</Type>
<Collection>list</Collection>
</Property>

<Property name="ADKText">
<Description>
SG25().FTX(): Value of 4400 where 4451 = "ADK"
Additional Marks/numbers Information</Description>
<Type>%String</Type>
</Property>

<Property name="PriceNet">
<Description>
SG25().SG28() Element where PRI.5125 = "AAA"
Calculation Net Price with currency information</Description>
<Type>Alliance.Common.Model.Order.PriceInformation</Type>
</Property>

<Property name="PriceGross">
<Description>
SG25().SG28() Element where PRI.5125 = "INF"
Detail Gross Price inkl VAT with currency information</Description>
<Type>Alliance.Common.Model.Order.PriceInformation</Type>
</Property>

<Property name="DocumentRefNo">
<Description>
SG25().SG29(): Value of RFF.1154, where RFF.1153 = "CT"
Document Reference Number (Beleg Nr)</Description>
<Type>%String</Type>
</Property>

<Property name="DocumentRefPos">
<Description>
SG25().SG29(): Value of RFF.1156, where RFF.1153 = "CT"
Position in Reference Document (Positions Nr)</Description>
<Type>%String</Type>
</Property>

<Property name="PromotionNo">
<Description>
SG25().SG29(): Value of RFF.1156, where RFF.1153 = "PD"
Promotion Number (Aktions-Nr)</Description>
<Type>%String</Type>
</Property>

<Property name="PromotionStart">
<Description>
SG25().SG29(): Value of DTM, where DTM.2005 = "15"
Promotion Start Date</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Property name="PromotionEnd">
<Description>
SG25().SG29(): Value of DTM, where DTM.2005 = "16"
Promotion End Date</Description>
<Type>Alliance.Common.Model.Order.EDIDTM</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>{%%PARENT}("OrderLines")</DataLocation>
<DefaultData>OrderLineDefaultData</DefaultData>
<IdLocation>^Alliance.Common.Mode9BF0.OrderC("OrderLines")</IdLocation>
<IndexLocation>^Alliance.Common9BF0.OrderLineI</IndexLocation>
<StreamLocation>^Alliance.Common9BF0.OrderLineS</StreamLocation>
<Data name="ItemDescriptions">
<Attribute>ItemDescriptions</Attribute>
<Structure>subnode</Structure>
<Subscript>"ItemDescriptions"</Subscript>
</Data>
<Data name="OrderLineDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>LineNo</Value>
</Value>
<Value name="3">
<Value>ItemNo</Value>
</Value>
<Value name="4">
<Value>ItemNoType</Value>
</Value>
<Value name="5">
<Value>SubLineIndicator</Value>
</Value>
<Value name="6">
<Value>LineNoRef</Value>
</Value>
<Value name="7">
<Value>Configuration</Value>
</Value>
<Value name="8">
<Value>GTINNo</Value>
</Value>
<Value name="9">
<Value>GTINNoType</Value>
</Value>
<Value name="10">
<Value>BuyerArticleNo</Value>
</Value>
<Value name="11">
<Value>SupplierArticleNo</Value>
</Value>
<Value name="12">
<Value>ProductCategory</Value>
</Value>
<Value name="13">
<Value>OrderedQty</Value>
</Value>
<Value name="14">
<Value>OrderedQtyUoM</Value>
</Value>
<Value name="15">
<Value>BatchNo</Value>
</Value>
<Value name="16">
<Value>MKSTextLines</Value>
</Value>
<Value name="17">
<Value>ADKText</Value>
</Value>
<Value name="18">
<Value>PriceNet</Value>
</Value>
<Value name="19">
<Value>PriceGross</Value>
</Value>
<Value name="20">
<Value>DocumentRefNo</Value>
</Value>
<Value name="21">
<Value>DocumentRefPos</Value>
</Value>
<Value name="22">
<Value>PromotionNo</Value>
</Value>
<Value name="23">
<Value>PromotionStart</Value>
</Value>
<Value name="24">
<Value>PromotionEnd</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.PartyInformation">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29802.050809</TimeChanged>
<TimeCreated>61747,63352.352308</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Type">
<Description>
SG2.NAD.3035
"BY" = Buyer</Description>
<Type>%String</Type>
</Property>

<Property name="PartyId">
<Description>
SG2.NAD.3039
Party identifying number</Description>
<Type>%String</Type>
</Property>

<Property name="CodeListResp">
<Description>
SG2.NAD.3055
9 = EAN</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.C9BF0.PartyInformEF5FD</DataLocation>
<DefaultData>PartyInformationDefaultData</DefaultData>
<IdLocation>^Alliance.C9BF0.PartyInformEF5FD</IdLocation>
<IndexLocation>^Alliance.C9BF0.PartyInformEF5FI</IndexLocation>
<StreamLocation>^Alliance.C9BF0.PartyInformEF5FS</StreamLocation>
<Data name="PartyInformationDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Type</Value>
</Value>
<Value name="3">
<Value>PartyId</Value>
</Value>
<Value name="4">
<Value>CodeListResp</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.PaymentTerms">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29802.053071</TimeChanged>
<TimeCreated>61747,63376.650965</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="TermsType">
<Description>
SG8(1).PAT.4279
1 = Basic</Description>
<Type>%String</Type>
</Property>

<Property name="PaymentTime">
<Description>
SG8(1).PAT.C112.2475
8= Date of confirmation of order received (Gegen Versandbestaetigung)
21= ??? (Nach Wareneingang)
ZZZ= ??? (Bei Sicht)</Description>
<Type>%String</Type>
</Property>

<Property name="TimeRelation">
<Description>
SG8(1).PAT.C112.2009
3 = After reference</Description>
<Type>%String</Type>
</Property>

<Property name="PeriodType">
<Description>
SG8(1).PAT.C112.2151
D = Day</Description>
<Type>%String</Type>
</Property>

<Property name="PeriodNr">
<Description>
SG8(1).PAT.4279
Numer of PeriodType (i.e. days) until Payment</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.Comm9BF0.PaymentTermsD</DataLocation>
<DefaultData>PaymentTermsDefaultData</DefaultData>
<IdLocation>^Alliance.Comm9BF0.PaymentTermsD</IdLocation>
<IndexLocation>^Alliance.Comm9BF0.PaymentTermsI</IndexLocation>
<StreamLocation>^Alliance.Comm9BF0.PaymentTermsS</StreamLocation>
<Data name="PaymentTermsDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>TermsType</Value>
</Value>
<Value name="3">
<Value>PaymentTime</Value>
</Value>
<Value name="4">
<Value>TimeRelation</Value>
</Value>
<Value name="5">
<Value>PeriodType</Value>
</Value>
<Value name="6">
<Value>PeriodNr</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.PriceInformation">
<Super>%Persistent,%XML.Adaptor</Super>
<TimeChanged>62427,29802.060148</TimeChanged>
<TimeCreated>61747,63421.554822</TimeCreated>
<Inheritance>right</Inheritance>

<Property name="Qualifier">
<Description>
Field: SG25().SG28().PRI.5125
AAA = Calculation Net (Netto-Einstandspreis exkl. MWST)
INF = Information (Detail-Preis inkl. MWST)</Description>
<Type>%String</Type>
</Property>

<Property name="Price">
<Description>
Field: SG25().SG28().PRI.5118</Description>
<Type>%String</Type>
</Property>

<Property name="Type">
<Description>
Field: SG25().SG28().PRI.5387</Description>
<Type>%String</Type>
</Property>

<Property name="UnitPriceBase">
<Description>
Field: SG25().SG28().PRI.5284</Description>
<Type>%String</Type>
</Property>

<Property name="UnitOfMeasure">
<Description>
Field: SG25().SG28().PRI.6411</Description>
<Type>%String</Type>
</Property>

<Property name="CurrencyDetails">
<Description>
Field: SG25().SG28().CUX.6347
2 = Reference Currency</Description>
<Type>%String</Type>
</Property>

<Property name="CurrencyCode">
<Description>
Field: SG25().SG28().CUX.6345
ISO 4217</Description>
<Type>%String</Type>
</Property>

<Property name="CurrencyQual">
<Description>
Field: SG25().SG28().CUX.6345
Currency Qualifier
9 = Order currency</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DataLocation>^Alliance.C9BF0.PriceInformC1F3D</DataLocation>
<DefaultData>PriceInformationDefaultData</DefaultData>
<IdLocation>^Alliance.C9BF0.PriceInformC1F3D</IdLocation>
<IndexLocation>^Alliance.C9BF0.PriceInformC1F3I</IndexLocation>
<StreamLocation>^Alliance.C9BF0.PriceInformC1F3S</StreamLocation>
<Data name="PriceInformationDefaultData">
<Structure>listnode</Structure>
<Subscript/>
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Qualifier</Value>
</Value>
<Value name="3">
<Value>Price</Value>
</Value>
<Value name="4">
<Value>Type</Value>
</Value>
<Value name="5">
<Value>UnitPriceBase</Value>
</Value>
<Value name="6">
<Value>UnitOfMeasure</Value>
</Value>
<Value name="7">
<Value>CurrencyDetails</Value>
</Value>
<Value name="8">
<Value>CurrencyCode</Value>
</Value>
<Value name="9">
<Value>CurrencyQual</Value>
</Value>
</Data>
</Storage>
</Class>


<Class name="Alliance.Common.Model.Order.Supplier">
<Super>Alliance.Common.Model.Order.PartyInformation</Super>
<TimeChanged>61747,63445</TimeChanged>
<TimeCreated>61747,63445.627017</TimeCreated>

<Property name="ReferenceQual">
<Description>
SG2.SG3.RFF.1153
Reference Qualifier. YC1 Additional party identification (EAN Code)</Description>
<Type>%String</Type>
</Property>

<Property name="ReferenceNo">
<Description>
SG2.SG3.RFF.1153
Reference Number/Coop Supplier No</Description>
<Type>%String</Type>
</Property>

<Storage name="Default">
<Type>%Library.CacheStorage</Type>
<DefaultData>SupplierDefaultData</DefaultData>
<Data name="SupplierDefaultData">
<Structure>listnode</Structure>
<Subscript>"Supplier"</Subscript>
<Value name="1">
<Value>ReferenceQual</Value>
</Value>
<Value name="2">
<Value>ReferenceNo</Value>
</Value>
</Data>
</Storage>
</Class>


<Routine name="Alliance" type="INC" timestamp="62257,56918"><![CDATA[

#include %occStatus
#include %occInclude


#define APPURI 			"/csp/"_$ZCONVERT($ZNSPACE,"l")
#;#define APPURI 			"/extranet"
#define APPDATA			"agris"

#define UID				%session.Data("agris","UID")
#define UNAME			%session.Data("agris","UNAME")
#define UORT			%session.Data("agris","UORT")
#define ULOGIN			%session.Data("agris","ULOGIN")
#define MANDANTID		%session.Data("agris","MANDANTID")

#define SELECTEDVZID	%session.Data("agris","SELECTEDVZID")
#define SELECTEDDATE	%session.Data("agris","SELECTEDDATE")
#define SELECTEDORDER	%session.Data("agris","SELECTEDORDER")
#define ACTIVEARTICLES  %session.Data("agris","ACTIVEARTICLES")

#define ERR				%session.Data("agris","err")

#define LOG(%msg)		set ^CacheTemp("cle",$I(^CacheTemp("cle"))) = %msg

]]></Routine>


<CSP name="AgrisMLogin.csp" application="/csp/cbt/" default="1"><![CDATA[
<csp:class super="Alliance.Agris.Web.BasePage">

<script language="CACHE" runat="SERVER">
	set requestedPage = $get(%request.Data("requestedPage",1),"UebersichtOffeneLieferungen.csp")

	$$$DBLogDebug("Requested Page after Login:" _ requestedPage)
</script>

	<script type="text/javascript">

	function encodePwAndSubmit()
	{
		var input = document.getElementById("pw").value;
		var shaObj = new jsSHA(input, "ASCII");
		var output = shaObj.getHash("SHA-512", "HEX").toUpperCase();
		document.getElementById("pwEncoded").value = output;

		//	Empty the inputField "pw" so that the un-encoded pw is not sent to the server:
		document.getElementById("pw").value = "";

		document.loginForm.submit();
		
	}

	</script>

<html>
<head>
	<title>	AgrisM Login</title>
	<script type='Text/JavaScript' src="js/sha512.js"></script>
	<link rel="stylesheet" href="css/system.css" type="text/css" />
	<link rel="stylesheet" href="css/general.css" type="text/css" />
	<link rel="stylesheet" href="css/template.css" type="text/css" />
	<link rel="stylesheet" href="css/menu.css" type="text/css" />
	<link rel="stylesheet" href="css/header_green_style.css" type="text/css" />
	<link rel="stylesheet" href="css/background_lighter_style.css" type="text/css" />
	<link rel="stylesheet" href="css/elements_green_style.css" type="text/css" />
</head>
<body id="bd" class="fs3 FF" style="padding:10px;">
	<!-- path way
	<div id="ja-pathway">
		<span class="breadcrumbs pathway">
		<a href="default.html?path=Home" class="pathway">Home</a> <img src="pics/arrow.png" alt=""/>
		Login
		</span>
	</div>
	-->
	<form name="loginForm" action="AgrisMLoginCheck.csp" method="POST">
		<input type="hidden" name="requestedPage" value="#(requestedPage)#"/>
		<div style="padding:50px 0 0 150">
			<p><b>AgrisM Login</b></p>
			<table>
				<tr>
					<th>Login</th>
					<td><input type="text" name="login" id="login"></td>
				</tr>
				<tr>
					<th>Password</th>
					<td><input type="password" name="pw" id="pw"></td>
						<input type="hidden" name="pwEncoded" id="pwEncoded">
				</tr>
				<tr height="30px">
					<th></th>
					<td><input type="button" value="Anmelden" onclick="encodePwAndSubmit();"></td>
				</tr>
			</table>
			<br />
			<small class="err">
				<script language="CACHE" runat="SERVER">
					set err = ..GetErrorMessage($$$YES)
					if (err'="") {
						&html<#(err)#>
					}
				</script>
			</small>
		</div>
	</form>
	
</body>
</html>
]]></CSP>


<CSP name="AgrisMLoginCheck.csp" application="/csp/cbt/" default="1"><![CDATA[
<csp:class super="Alliance.Agris.Web.BasePage">

<script language="Cache" method="OnPreHTTPPage" arguments="" returntype="%Boolean">

	set %response.Redirect = $get(%request.Data("requestedPage",1),"default.html")

	set login = $get(%request.Data("login",1),"")
	set pwEncoded = $get(%request.Data("pwEncoded",1),"")

	$$$DBLogDebug("Login:" _ login)
	$$$DBLogDebug("PWD:" _ pwEncoded)

	set status = ##class(DBDebiKredi.Kreditor).AllianceLogin(login,pwEncoded)
	if ($$$ISERR(status))
	{
		do ..SetErrorMessage("Benutzername oder Passwort falsch.")
		$$$DBLogWarning("Benutzername oder Passwort falsch.")
		quit $$$OK
	}

	$$$DBLogDebug("Login OK")

	//	Since the login succeeded, I know that the creditor exists:
	set mandOid = ##class(DBCore.AppEinstellung).GetStringEinst(##class(DBCore.Konst).PLATTFORMMANDANT())
	set kredId = ##class(DBDebiKredi.Kreditor).GetIdByAdrNr(mandOid, login)
	set kreditor = ##class(DBDebiKredi.Kreditor).%OpenId(kredId)
	
	set $$$UID = kreditor.%Id()
	set $$$UNAME = kreditor.Adresse.Name
	set $$$UORT = kreditor.Adresse.Ort
	set $$$ULOGIN = login
	set $$$MANDANTID = mandOid
	set $$$SELECTEDVZID = ""
	set $$$SELECTEDDATE = ""
	set $$$SELECTEDORDER = ""
	set $$$ACTIVEARTICLES = $$$YES

	set ^Agris("UID") = $$$UID
	set ^Agris("UNAME") = $$$UNAME
	set ^Agris("UORT") = $$$UORT
	set ^Agris("ULOGIN") = $$$ULOGIN
	set ^Agris("MANDANTID") = $$$MANDANTID

	kill kreditor

	quit $$$OK

</script>

]]></CSP>


<CSP name="Angebot.csp" application="/csp/cbt/" default="1"><![CDATA[
<csp:class super="Alliance.Agris.Web.SecurePage">

<script language="Cache" method="OnPreHTTPPage" arguments="" returntype="%Boolean">	

	set status = ##class(DBDebiKredi.Kreditor).%ExistsId($$$UID)
	if ($$$ISERR(status))
	{
		set %response.Redirect = "logout.csp"
		do ..SetErrorMessage("Lieferantendaten nicht gefunden!!!")
	}
	quit $$$OK

</script>

<html>
<head>
	<title>AgrisM - Angebotsmengen erfassen</title>
	<script type="text/javascript" src="js/guiFunctions.js"></script>
	<script type='Text/JavaScript' src="js/scw.js"></script>
	<link rel="stylesheet" href="css/system.css" type="text/css" />
	<link rel="stylesheet" href="css/general.css" type="text/css" />
	<link rel="stylesheet" href="css/template.css" type="text/css" />
	<link rel="stylesheet" href="css/menu.css" type="text/css" />
	<link rel="stylesheet" href="css/header_green_style.css" type="text/css" />
	<link rel="stylesheet" href="css/background_lighter_style.css" type="text/css" />
	<link rel="stylesheet" href="css/elements_green_style.css" type="text/css" />
	
	<script type="text/javascript">

		// Called on OK-Button klick:
		function checkAndSubmitForm()
		{
			// check all fields
			var check = true
			
			var posIDs = document.getElementsByName("posID");

			for (i = 0; i < posIDs.length; i++)
			{
				var posID = posIDs[i].value;

				if (document.getElementById("inputField_" + posID).value == "")
				{
					document.getElementById("inputField_" + posID).value = 0;
				}

				// check field
				if (validateField(posID) == false)
				{
					check = false;
					break;	// Break the for-loop on the first invalid field
				}
			}
			
			if (check == false)
			{
				alert("Bitte prüfen Sie ihre Eingaben und geben Sie gültige Werte ein!\nGültige Werte sind ganze, positive Zahlen.");
				return;
			}

			document.MainForm.action.value = "save";
			document.MainForm.submit();
		}


		// Called on change for each input field:
		function checkField(posId)
		{
			if (validateField(posId) == false)
			{
				alert("Reihe " + posId + ": Bitte geben Sie einen gültigen Wert ein!\nGültige Werte sind ganze, positive Zahlen.");
				window.setTimeout("document.getElementById('inputField_"+posId+"').focus();document.getElementById('inputField_"+posId+"').select();",1);
			}
		}


		// Validate the content of an input field:
		function validateField(posId)
		{
			var value = document.getElementById("inputField_" + posId).value;
			
			//	empty? That's fine:
			if (value == "")
			{
				return true;
			}
			
			// valid number? If not: NOK!
			if (syn_isInt(value) == false)
			{
				return false;
			}
			
			// Value is negative? NOK!
			if (value < 0)
			{
				return false;
			}

			//	Set Mengeneinheit:
			var anzahlJeGebinde = document.getElementById("anzahlJeGebinde_" + posId).value;
			var anzahlTotal = (anzahlJeGebinde == "")? value: value * anzahlJeGebinde;

			document.getElementById("meTotalField_" + posId).value = anzahlTotal;

			return true;
		}


		// Called on change of the date field:
		function dateChanged()
		{
			document.MainForm.action.value = "reload";
			document.MainForm.submit();
		}


		// Called on change of the VZ DropDown List:
		function vzChanged()
		{
			document.getElementById('VZSelection').value = document.getElementById('VZListe').value;
			document.MainForm.action.value = "reload";
			document.MainForm.submit();
		}


		function openCommentPrompt(posId)
		{
			var newString = prompt("Geben Sie bitte hier einen Kommentar ein",
									document.getElementById("commentField_" + posId).value);

			if (newString != null)	document.getElementById("commentField_" + posId).value = newString;
		}


		function printPage()
		{
			window.print();
		}

	</script>
</head>

<body id="bd" class="fs3 FF" style="padding:10px;">
	<!-- path way
	<div id="ja-pathway">
		<span class="breadcrumbs pathway">
			<a href="default.html?path=Home" class="pathway">Home</a> <img src="pics/arrow.png" alt=""/>
			Angebotsmengen erfassen
		</span>
	</div>
	<br/>
	-->
	
	<script language="CACHE" runat="SERVER">
		set userId = $$$UID
		set userLogin = $$$ULOGIN
		set userName = $$$UNAME
		set userOrt = $$$UORT
		set mandantId = $$$MANDANTID
		set date = $$$SELECTEDDATE
		set vzSelection = $$$SELECTEDVZID
	</script>

	<table style="width: 100%;" title="Auf dieser Seite können Sie Ihre Angebote für das gewählte Verteilzentrum und das gewählte Datum erfassen. Bei wiederholtem Speichern werden die vorher gespeicherten Angebote durch die neuen überschrieben.">
		<colgroup>
			<col width="60%"/>
			<col width="40%"/>
		</colgroup>
		<tbody>
			<tr>
				<td><h2 class="contentheading">Tagesangebot erfassen</h2></td>
				<td style="text-align: right;"><h3>#(userName)#&nbsp;(#(userOrt)#)</h3></td>
			</tr>
		</tbody>
	</table>

	<form name="MainForm" action="AngebotSave.csp" method="POST">

		<div class="article-content">

			<table cellspacing="10">
				<thead style="font-size:120%; font-weight:bold;">
					<tr>
						<td>Lieferdatum</td>
						<td>Verteilzentrum</td>
					</tr>
				</thead>
				<tbody>
					<tr>
						<td>
							<script language="CACHE" runat="SERVER">
								if (date = "")
								{
									//2008.2
									//set date = $replace($zdate($horolog + 1, 4), "/", ".")	//	tomorrow
									set date = $replace($zdate($horolog + 1, 15), "/", ".")	//	tomorrow
								
								}
							</script>
							<input type="text" id="inputDateField" name="inputDateField" size="10" maxlength="10" value=#(date)# readonly onClick="scwNextAction=dateChanged.runsAfterSCW(this);scwShow(this,event);"/>
						</td>
						<td>
							<select name="VZListe" id="VZListe" size="0" onchange="vzChanged()">
								<script language="CACHE" runat="SERVER">
									set first = ""
									set found = $$$NO
									
									set resultSet = ##class(%ResultSet).%New("DBPlattform.AF.LieferanteilAF:ListeVZByLieferant")
									set status = resultSet.Execute(mandantId, userLogin, $zdateh(date, 15))
									while (resultSet.Next())
									{
										set adressOidVZ = $get(resultSet.Data("AdressOidVZ"))
										set vz = ##class(DBAdressen.Adresse).%OpenId(adressOidVZ)

										if (first = "")		set first = adressOidVZ

										//	If vzSelection is undefined, set it to the 1st element of the select list
										//	And let the 1st element of the list be selected.
										//	If vzSelection is defined, select the corresponding element of the select list
										if (vzSelection = "") {
											set selected = "selected"
											set vzSelection = adressOidVZ
											set found = $$$YES
										}
										else {
											if (vzSelection = adressOidVZ) {
												set selected = "selected"
												set found = $$$YES
											}
											else {
												set selected = ""
											}
										}

										&html<
											<option #(selected)# value="#(adressOidVZ)#">#(vz.Name)#&nbsp;(#(vz.Ort)#)</option>
										>

										kill vz
									}

									do resultSet.Close()

									if (found = $$$NO)		set vzSelection = first
								</script>
							</select>
							<input type="hidden" name="VZSelection" id="VZSelection" value="#(vzSelection)#"/>
						</td>
						<script language="CACHE" runat="SERVER">
							
							set frist = ##class(DBPlattform.SD.Zeitraster).GetEingabefristDateTime($zdateh(date, 15), ##class(DBDebiKredi.Debitor).GetIdByAdrOid(mandantId, vzSelection))
							
							if (##class(DBPlattform.SD.Zeitraster).AllowEdit(##class(DBPlattform.SD.Zeitraster).GetParamAngebotErfasst(), $zdateh(date, 15), ##class(DBDebiKredi.Debitor).GetIdByAdrOid(mandantId, vzSelection)))
							{	
								set allowed = $$$YES					
								set gesperrtString = "Eingabefrist: " _ $replace(frist.toDateTime(15,2), "/", ".")
								
								&html<<td style="font-weight:bold;">#(gesperrtString)#</td>>
								
							} else {
								set allowed = $$$NO
								set gesperrtString = "Gesperrt - Eingabefrist: " _$replace(frist.toDateTime(15,2), "/", ".")_ " abgelaufen"
								
								&html<<td style="font-weight:bold;color:Red;">#(gesperrtString)#</td>>
							}
						</script>					
					</tr>
				</tbody>
			</table>
			<p/>

			<table style="text-align: left; width: 100%;" border="1" cellspacing="0">
				<thead>
					<tr>
						<td style="text-align: center;"><strong>Pos</strong></td>
						<td style="text-align: right; padding-right:5px;"><strong>Art.Nr</strong></td>
						<td style="text-align: left;"><strong>Artikel</strong></td>
						<td style="text-align: left;"><strong>Einheit</strong></td>
						<td style="text-align: left;"><strong>Gebinde<br/>Typ</strong></td>
						<td style="text-align: right; padding-right:5px;"><strong>ME pro<br/>Gebinde</strong></td>
						<td style="text-align: left;"><strong>Angebots-<br/>Menge<br />[Gebinde]</strong></td>
						<td style="text-align: left;"><strong>Angebots-<br/>Menge<br />[ME]</strong></td>
						<td style="text-align: left;"><strong>Bemerkung</strong></td>
						</td>
					</tr>
				</thead>
				<tbody>

					<script language="CACHE" runat="SERVER">

						&html<<tr><td colspan="9" bgcolor="darkgray">&nbsp;Gelistete Artikel:</td></tr>>

						set cnt = 1
						set tabCount = 0
						set standardArticleNrs = "#"

						if (##class(DBPlattform.SD.Zeitraster).AllowEdit(##class(DBPlattform.SD.Zeitraster).GetParamAngebotErfasst(), $zdateh(date, 15), ##class(DBDebiKredi.Debitor).GetIdByAdrOid(mandantId, vzSelection)))
						{
							set mutationsDisabled = ""
							set bgColorDisabled = ""
						}
						else
						{
							set mutationsDisabled = "disabled"
							set bgColorDisabled = "style='background-color:lightgray;'"
						}

						set resultSet = ##class(%ResultSet).%New("DBPlattform.AF.LieferanteilAF:ListeVZArtikelByLieferant")
						set status = resultSet.Execute(mandantId, userLogin, vzSelection, $zdateh(date, 15))
						while (resultSet.Next())
						{
							set standardArticleNrs = standardArticleNrs _ $get(resultSet.Data("ArtikelNr")) _ "#"

							set anzahlJeGebinde = $get(resultSet.Data("AnzahlJeGebinde"))
							set angebotsMenge = $get(resultSet.Data("Angebotsmenge"))
							if (anzahlJeGebinde = "") {
								set meTotal = angebotsMenge
							}
							else {
								set meTotal = angebotsMenge * anzahlJeGebinde
							}

							&html<
								<tr style="text-align: left; padding-left: 60px;">
									<td style="text-align: center;">#(cnt)#</td>
									<td style="text-align: right; padding-right:5px;">&nbsp;#($get(resultSet.Data("ArtikelNr")))#</td>
									<td style="text-align: left;">&nbsp;#($get(resultSet.Data("Artikeltext")))#</td>
									<td style="text-align: left;">&nbsp;#($get(resultSet.Data("Einheit")))#</td>
									<td style="text-align: left;">&nbsp;#($get(resultSet.Data("Gebinde")))#</td>
									<td style="text-align: right; padding-right:5px;">&nbsp;#(anzahlJeGebinde)#
										<input type="hidden" id="anzahlJeGebinde_#(cnt)#" value="#(anzahlJeGebinde)#"/>
									</td>
									<td style="text-align: left;">&nbsp;
										<input type="text" class="smallNum"
												#(mutationsDisabled)# #(bgColorDisabled)#
												id="inputField_#(cnt)#"
												name="inputField_#(cnt)#"
												value="#(angebotsMenge)#"
												onchange="checkField('#(cnt)#')"
												tabindex="#($increment(tabCount))#"
										/>
										<input type="hidden" name="artikelId_#(cnt)#" value="#($get(resultSet.Data("ArtikelId")))#"/>
										<input type="hidden" name="posID" value="#(cnt)#"/>
										<input type="hidden" name="isZusatzangebot_#(cnt)#" value="#(0)#"/>
									</td>
									<td style="text-align: left;">&nbsp;
										<input type="text" class="smallNum" disabled
												style="background-color:lightgray;"
												id="meTotalField_#(cnt)#"
												name="meTotalField_#(cnt)#"
												value="#(meTotal)#"
										/>
									</td>
									<td style="text-align: left; vertical-align:top;">&nbsp;
										<input type="text"
												#(mutationsDisabled)# #(bgColorDisabled)#
												id="commentField_#(cnt)#"
												name="commentField_#(cnt)#"
												value="#($get(resultSet.Data("Bemerkung")))#"
												tabindex="#($increment(tabCount))#"
										/>&nbsp;
										<button type="button"
												#(mutationsDisabled)#
												value=""
												id="commentButton_#(cnt)#"
												name="commentButton_#(cnt)#"
												onclick="openCommentPrompt(#(cnt)#);"
												tabindex="#($increment(tabCount))#"
										/>
									</td>
								</tr>
							>
							set cnt = cnt + 1
						}

						do resultSet.Close()

						&html<<tr><td colspan="9" bgcolor="darkgray">&nbsp;Zusätzliche Artikel:</td></tr>>

						set resultSet = ##class(%ResultSet).%New("DBAgrofreshEK.AF.PreisAF:ListeSpezArtByLiefAdressNr")
						set status = resultSet.Execute(mandantId, userLogin, vzSelection, $zdateh(date, 15))
						while (resultSet.Next())
						{
							if ($find(standardArticleNrs, "#" _ $get(resultSet.Data("ArtikelNr")) _ "#") '= 0)	continue

							set anzahlJeGebinde = $get(resultSet.Data("AnzahlJeGebinde"))
							set angebotsMenge = $get(resultSet.Data("Angebotsmenge"))
							if (anzahlJeGebinde = "") {
								set meTotal = angebotsMenge
							}
							else {
								set meTotal = angebotsMenge * anzahlJeGebinde
							}

							&html<
								<tr style="text-align: left; padding-left: 60px;">
									<td style="text-align: center;">#(cnt)#</td>
									<td style="text-align: right; padding-right:5px;">&nbsp;#($get(resultSet.Data("ArtikelNr")))#</td>
									<td style="text-align: left;">&nbsp;#($get(resultSet.Data("Artikeltext")))#</td>
									<td style="text-align: left;">&nbsp;#($get(resultSet.Data("Einheit")))#</td>
									<td style="text-align: left;">&nbsp;#($get(resultSet.Data("Gebinde")))#</td>
									<td style="text-align: right; padding-right:5px;">&nbsp;#(anzahlJeGebinde)#
										<input type="hidden" id="anzahlJeGebinde_#(cnt)#" value="#(anzahlJeGebinde)#"/>
									</td>
									<td style="text-align: left;">&nbsp;
										<input type="text" class="smallNum"
												#(mutationsDisabled)# #(bgColorDisabled)#
												id="inputField_#(cnt)#"
												name="inputField_#(cnt)#"
												value="#(angebotsMenge)#"
												onchange="checkField('#(cnt)#')"
												tabindex="#($increment(tabCount))#"
										/>
										<input type="hidden" name="artikelId_#(cnt)#" value="#($get(resultSet.Data("ArtikelId")))#"/>
										<input type="hidden" name="posID" value="#(cnt)#"/>
										<input type="hidden" name="isZusatzangebot_#(cnt)#" value="#(1)#"/>
									</td>
									<td style="text-align: left;">&nbsp;
										<input type="text" class="smallNum" disabled
												style="background-color:lightgray;"
												id="meTotalField_#(cnt)#"
												name="meTotalField_#(cnt)#"
												value="#(meTotal)#"
										/>
									</td>
									<td style="text-align: left; vertical-align:top;">&nbsp;
										<input type="text"
												#(mutationsDisabled)# #(bgColorDisabled)#
												id="commentField_#(cnt)#"
												name="commentField_#(cnt)#"
												value="#($get(resultSet.Data("Bemerkung")))#"
												tabindex="#($increment(tabCount))#"
										/>&nbsp;
										<button type="button"
												#(mutationsDisabled)#
												id="commentButton_#(cnt)#"
												name="commentButton_#(cnt)#"
												value=""
												onclick="openCommentPrompt(#(cnt)#);"
												tabindex="#($increment(tabCount))#"
										/>
									</td>
								</tr>
							>
							set cnt = cnt + 1
						}

						do resultSet.Close()

						&html<<input type="hidden" name="fieldCount" value="#(cnt - 1)#"/>>

					</script>
				</tbody>
			</table>
		</div>

		<p/>
		<table width="100%">
			<tr>
				<td align="left">
					<input tabindex="#($increment(tabCount))#" type="button" value="Speichern" onclick="checkAndSubmitForm();" #(mutationsDisabled)#/>
					<input tabindex="#($increment(tabCount))#" type="button" value="Abbrechen" onclick="document.location='Angebot.csp'" #(mutationsDisabled)#/>
				</td>
				<td align="right">
					<input tabindex="#($increment(tabCount))#" type="button" value="Seite Drucken" onclick="printPage()"/>
				</td>
			</tr>
		</table>

		<big class="err">
			<script language="CACHE" runat="SERVER">
				set err = ..GetErrorMessage($$$YES)
				if (err '= "")
				{
					&html<#(err)#>
				}
			</script>
			&nbsp;
		</big>

		<input type="hidden" name="action" value=""/>
	
	</form>

</body>
</html>
]]></CSP>


<CSP name="AngebotSave.csp" application="/csp/cbt/" default="1"><![CDATA[
<csp:class super="Alliance.Agris.Web.SecurePage">

<script language="Cache" method="OnPreHTTPPage" arguments="" returntype="%Boolean">

	set %response.Redirect = "Angebot.csp"

	set action = $get(%request.Data("action",1),"")
	if (action = "")
	{
		do ..SetErrorMessage("Aktion undefiniert")
		quit $$$OK
	}

	if (action = "reload")
	{
		set $$$SELECTEDVZID = $get(%request.Data("VZSelection",1),"")
		set $$$SELECTEDDATE = $get(%request.Data("inputDateField",1),"")

		quit $$$OK
	}

	if (action = "save")
	{
		set status = $$$OK

		set fieldCount = $get(%request.Data("fieldCount", 1),"")
		set date = $get(%request.Data("inputDateField", 1),"")
		set dateH = $zdateh(date, 15)
		set vzId = $get(%request.Data("VZListe", 1),"")

		set lieferant = ##class(DBDebiKredi.Kreditor).%OpenId($$$UID,, .status)
		if ($$$ISERR(status) || '$IsObject(lieferant))
		{
			do ..SetErrorMessage("Lieferant " _ $$$UID _ " konnte nicht geöffnet werden!!!")
			quit $$$OK
		}

		set abnehmerId = ##class(DBDebiKredi.Debitor).GetIdByAdrOid($$$MANDANTID, vzId)
		set abnehmer = ##class(DBDebiKredi.Debitor).%OpenId(abnehmerId,, .status)
		if ($$$ISERR(status) || '$IsObject(abnehmer))
		{
			do ..SetErrorMessage("Abnehmer " _ abnehmerId _ " konnte nicht geöffnet werden!!!")
			quit $$$OK
		}

		set angebotsKopfId = ##class(DBPlattform.AngebotsKopf).GetId($$$UID, abnehmerId, $$$MANDANTID, dateH)
		if (angebotsKopfId = "")
		{
			//	Create a new AngebotsKopf:
			set angebotsKopf = ##class(DBPlattform.AngebotsKopf).%New()
			set angebotsKopf.Lieferant = lieferant
			set angebotsKopf.Abnehmer = abnehmer
			set angebotsKopf.Mandant = $$$MANDANTID
			set angebotsKopf.Datum = dateH

			set status = angebotsKopf.%Save()
			if ($$$ISERR(status))
			{
				do ..SetErrorMessage("Angebotskopf " _ angebotsKopfId _ " konnte nicht erzeugt werden!!!")
				quit $$$OK
			}
		}
		else
		{
			set angebotsKopf = ##class(DBPlattform.AngebotsKopf).%OpenId(angebotsKopfId,, .status)
			if ($$$ISERR(status) || '$IsObject(angebotsKopf))
			{
				do ..SetErrorMessage("Angebotskopf " _ angebotsKopfId _ " konnte nicht geöffnet werden!!!")
				quit $$$OK
			}
		}

		//	Loop through all inputFields:
		for i=1:1:fieldCount
		{
			set value = $get(%request.Data("inputField_" _ i, 1), 0)
			set comment = $get(%request.Data("commentField_" _ i, 1),"")

			set artikelId = %request.Data("artikelId_" _ i, 1)
			set artikel = ##class(DBAgrofresh.Artikel).%OpenId(artikelId)
			if ($$$ISERR(status) || '$IsObject(artikel))
			{
				do ..SetErrorMessage("Artikel " _ artikelId _ " konnte nicht geöffnet werden!!!")
				quit
			}
			
			set isZusatzangebot = %request.Data("isZusatzangebot_" _ i, 1)

			set angebotsPos = ##class(DBPlattform.AngebotsPos).GetAngebotObj($zdateh(date, 15), abnehmerId, $$$UID, artikelId, $$$MANDANTID)
			if (angebotsPos = $$$NULLOREF)
			{
			//	Create a new AngebotsPos:
				set angebotsPos = ##class(DBPlattform.AngebotsPos).%New()
				set angebotsPos.AngebotsKopf = angebotsKopf
			}
			
			if (isZusatzangebot = 0) {
				set angebotsPos.IsZusatzangebot = 0
			} else {
				set angebotsPos.IsZusatzangebot = 1
			}
			
			set angebotsPos.Menge = value
			set angebotsPos.Artikel = artikel
			set angebotsPos.Bemerkung = comment

			set status = angebotsPos.%Save()
			if ($$$ISERR(status))
			{
				continue // better: quit???
			}
		}

		if ($$$ISERR(status))
		{
			do ..SetErrorMessage("Fehler beim Speichern des Angebotes: " _ $SYSTEM.Status.GetErrorText(status))
		}
		else
		{
			set status = $$$OK

			set typ = ##class(Alliance.Common.KAL.Code.MessageType).Lieferung()
			set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).AngebotErfasst()
			set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisMExtranet()
			set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
			do ##class(Alliance.Common.KAL.Message).new(.status, typ, subTyp, senderTyp, severity, dateH, abnehmerId, $$$UID)

			if ($$$ISERR(status))
			{
				do ..SetErrorMessage(status)
			}
			else
			{
				do ..SetErrorMessage("Gespeichert")
			}
		}

		quit $$$OK
	}

	do ..SetErrorMessage("Ungültige Aktion: '" _ action _ "'")
	quit $$$OK

</script>

]]></CSP>


<CSP name="AngebotsCopy.csp" application="/csp/cbt/" default="1"><![CDATA[
<csp:class super="Alliance.Agris.Web.SecurePage">

<script language="Cache" method="OnPreHTTPPage" arguments="" returntype="%Boolean">

	//get all parameters
	set fromWeek = $get(%request.Data("fromWeek",1),"")
	set toWeek = $get(%request.Data("toWeek",1),"")
	
	set rdo = $get(%request.Data("rdo",1),"")
	
	set yearsFromWeek = $get(%request.Data("yearsFromWeek",1),"")
	set yearsToWeek = $get(%request.Data("yearsToWeek",1),"")
	
	set toArt = $get(%request.Data("toArt",1),"")
	set fromArt = $get(%request.Data("fromArt",1),"")
	
	set lieferant = ##class(DBDebiKredi.Kreditor).%OpenId($$$UID,, .status)
	if ($$$ISERR(status) || '$IsObject(lieferant))
	{
		do ..SetErrorMessage("Lieferant " _ $$$UID _ " konnte nicht geöffnet werden!!!")
		quit $$$OK
	}
	
	set overwrite = $get(%request.Data("overwrite",1),"")
	set overwriteBool = $$$YES
	if (overwrite = "") {
		set overwriteBool = $$$NO
	}
	
	set %response.Redirect = "DlgCopyAngebot.csp?fromWeek="_fromWeek_"&toWeek="_toWeek_"&fromArt="_fromArt_"&toArt="_toArt

	set action = $get(%request.Data("action",1),"")
	if (action = "")
	{
		do ..SetErrorMessage("Aktion undefiniert")
		quit $$$OK
	}
	
	
	if (action = "save")
	{
		
		//check if the weeks are valid
		set chkWeekFrom = ##class(DBUtils.DateUtils).CheckValidWeek(yearsFromWeek, fromWeek)
		set chkWeekTo = ##class(DBUtils.DateUtils).CheckValidWeek(yearsToWeek, toWeek)
		
		if ((chkWeekFrom = $$$NO) || (chkWeekTo = $$$NO)) {
			do ..SetErrorMessage("Wochennummern für das angegebene Jahr ungültig.")
			quit $$$OK
		}
		
		//article numbers can also be alphanumeric
		//check if the articles are numbers with patternmatching
		//N = numeric . = indefinite
		/*set matchFromArt = fromArt?.N
		set matchToArt = toArt?.N
		if ((matchFromArt = $$$NO) || (matchToArt = $$$NO)) {
			do ..SetErrorMessage("Artikelnummern inkorrekt")
			quit $$$OK
		}*/
		
		
		
		set status = $$$OK

		set status = ##class(DBPlattform.AngebotsKopf).CopyAngebote(lieferant.%Id(),
										fromWeek, yearsFromWeek,toWeek,yearsToWeek,
										rdo,fromArt,toArt,overwriteBool)
		
		
		if (status = $$$OK) {
			do ..SetErrorMessage("Gültige Angebote erfolgreich kopiert.")
		} else {
			do ..SetErrorMessage("Fehler beim Kopieren der Angebote.") 
			/*"_status_
			"#"_lieferant.%Id()_"#"_fromWeek_"#"_yearsFromWeek_"#"_toWeek_"#"_yearsToWeek_
			"#"_rdo_"#"_fromArt_"#"_toArt_"#"_overwriteBool_"end")*/
		}
		
		
		//debug
		//do ..SetErrorMessage("Werte: "_fromWeek_" "_toWeek_" "_rdo_" "_yearsFromWeek_" "_yearsToWeek_" "_toArt_" "_fromArt_" "_lieferant.Adresse.Name_" "_overwriteBool)

		quit $$$OK
	}

	do ..SetErrorMessage("Ungültige Aktion: '" _ action _ "'")
	quit $$$OK

</script>

]]></CSP>


<CSP name="Angebotsplan.csp" application="/csp/cbt/" default="1"><![CDATA[
<csp:class super="Alliance.Agris.Web.SecurePage">

<script language="Cache" method="OnPreHTTPPage" arguments="" returntype="%Boolean">	
	
	set status = ##class(DBDebiKredi.Kreditor).%ExistsId($$$UID)
	if ($$$ISERR(status))
	{
		set %response.Redirect = "logout.csp"
		do ..SetErrorMessage("Lieferantendaten nicht gefunden!!!")
	}
	quit $$$OK

</script>

<html>
<head>
	<title>AgrisM - Angebote erfassen</title>
	<script type="text/javascript" src="js/guiFunctions.js"></script>
	<script type='Text/JavaScript' src="js/scw.js"></script>
	<script type='Text/JavaScript' src="js/basicfunctions.js"></script>
	<script type="text/javascript" src="js/jquery-1.4.3.min.js"></script>
	<script type="text/javascript" src="js/fancybox/jquery.mousewheel-3.0.4.pack.js"></script>
	<script type="text/javascript" src="js/fancybox/jquery.fancybox-1.3.4.pack.js"></script>
	<link rel="stylesheet" type="text/css" href="js/fancybox/jquery.fancybox-1.3.4.css" media="screen" />
	<link rel="stylesheet" href="css/system.css" type="text/css" />
	<link rel="stylesheet" href="css/general.css" type="text/css" />
	<link rel="stylesheet" href="css/template.css" type="text/css" />
	<link rel="stylesheet" href="css/menu.css" type="text/css" />
	<link rel="stylesheet" href="css/header_green_style.css" type="text/css" />
	<link rel="stylesheet" href="css/background_lighter_style.css" type="text/css" />
	<link rel="stylesheet" href="css/elements_green_style.css" type="text/css" />
	<script type="text/javascript">
		
		 $(function() {
			
     		 $('#buttonCopy').click(function() {
	     		var week = document.getElementById("actWeek").value;
	     		var nextWeek = document.getElementById("nextWeek").value;
	     		var fromArt = document.getElementById("firstArticle").value;
	     		var toArt = document.getElementById("lastArticle").value;
		     	
         		window.parent.showDialog(week,nextWeek,fromArt,toArt);
         		return false;
 	     	});
 		});

		
		// Called on OK-Button klick:
		function checkAndSubmitForm()
		{
			// check all fields
			var check = true
			
			var posIDs = document.getElementsByName("posID");

			for (i = 0; i < posIDs.length; i++)
			{
				var posID = posIDs[i].value;

				if (document.getElementById("inputField_" + posID).value == "")
				{
					document.getElementById("inputField_" + posID).value = 0;
				}

				// check field
				if (validateField(posID) == false)
				{
					check = false;
					break;	// Break the for-loop on the first invalid field
				}
			}
			
			if (check == false)
			{
				alert("Bitte prüfen Sie ihre Eingaben und geben Sie gültige Werte ein!\nGültige Werte sind ganze, positive Zahlen.");
				return;
			}

			document.MainForm.action.value = "save";
			document.MainForm.submit();
		}


		// Called on change for each input field:
		function checkField(posId)
		{
			if (validateField(posId) == false)
			{
				alert("Reihe " + posId + ": Bitte geben Sie einen gültigen Wert ein!\nGültige Werte sind ganze, positive Zahlen.");
				window.setTimeout("document.getElementById('inputField_"+posId+"').focus();document.getElementById('inputField_"+posId+"').select();",1);
			}
		}


		// Validate the content of an input field:
		function validateField(posId)
		{
			var value = document.getElementById("inputField_" + posId).value;
			
			//	empty? That's fine:
			if (value == "")
			{
				return true;
			}
			
			// valid number? If not: NOK!
			if (syn_isInt(value) == false)
			{
				return false;
			}
			
			// Value is negative? NOK!
			if (value < 0)
			{
				return false;
			}


			return true;
		}


		// Called on change of the date field:
		function dateChanged()
		{
			document.MainForm.action.value = "reload";
			document.MainForm.submit();
		}


		// Called on change of the VZ DropDown List:
		function vzChanged()
		{
			document.getElementById('VZSelection').value = document.getElementById('VZListe').value;
			document.MainForm.action.value = "reload";
			document.MainForm.submit();
		}
		
		// Called on week
		function addDaysToDate(days)
		{
			var date = document.getElementById('inputDateField').value;
			var splitDate = date.split(".");
			var jsDate = new Date(splitDate[2], splitDate[1] -1, splitDate[0]);
			var nextWeekDate = new Date(jsDate.setDate(jsDate.getDate()+days));
			
			document.getElementById('inputDateField').value = 
				padleft(nextWeekDate.getDate(),"0",2) + 
				"." + padleft((nextWeekDate.getMonth()+1).toString(),"0",2) + 
				"." + nextWeekDate.getFullYear();		
			document.MainForm.action.value = "reload";
			document.MainForm.submit();
		}
		
		function openCommentPrompt(posId)
		{
			var newString = prompt("Geben Sie bitte hier einen Kommentar ein",
									document.getElementById("commentField_" + posId).value);

			if (newString != null)	document.getElementById("commentField_" + posId).value = newString;
		}

		// Called on change of the Radiobuttons to show all or just active articles
		function activeChanged()
		{
			
			for (i=0; i<document.MainForm.rdo.length; i++) {

  				if (document.MainForm.rdo[i].checked == true) {
  					document.getElementById('activeArticles').value = document.MainForm.rdo[i].value;
  				}
			}

			document.MainForm.action.value = "reload";
			document.MainForm.submit();
		}
		
		function articleActiveChange(elementName, articleId) 
		{
			var c = document.getElementById(elementName).checked
			$.get("Alliance.Agris.Web.ArticleActivator.cls", { articleId: articleId, active: c } );
		}

		function printPage()
		{
			window.print();
		}

	</script>
</head>

<body id="bd" class="fs3 FF" style="padding:10px;">
	<!-- path way
	<div id="ja-pathway">
		<span class="breadcrumbs pathway">
			<a href="default.html?path=Home" class="pathway">Home</a> <img src="pics/arrow.png" alt=""/>
			Angebotsmengen erfassen
		</span>
	</div>
	<br/>
	-->
	
	<script language="CACHE" runat="SERVER">
		set userId = $$$UID
		set userLogin = $$$ULOGIN
		set userName = $$$UNAME
		set userOrt = $$$UORT
		set mandantId = $$$MANDANTID
		set date = $$$SELECTEDDATE
		set vzSelection = $$$SELECTEDVZID
		set activeArt = $$$ACTIVEARTICLES
		set activeChecked = "checked"
		set allChecked = ""
		
		set kWGemUSA = (##class(DBCore.AppEinstellung).GetShortEinst(##class(DBCore.Konst).KALENDERWOCHENART()) = ##class(DBCore.Konst).KALENDERWOCHEGEMUSA())
		set woBeginnSO = (##class(DBCore.AppEinstellung).GetShortEinst(##class(DBCore.Konst).WOCHENBEGINN()) = ##class(DBCore.Konst).WOCHENBEGINNSONNTAG()) 
								
	</script>

	<table style="width: 100%;" title="Auf dieser Seite können Sie Ihre Angebote für das gewählte Verteilzentrum und das gewählte Datum erfassen. Bei wiederholtem Speichern werden die vorher gespeicherten Angebote durch die neuen überschrieben.">
		<colgroup>
			<col width="60%"/>
			<col width="40%"/>
		</colgroup>
		<tbody>
			<tr>
				<td><h2 class="contentheading">Angebote erfassen</h2></td>
				<td style="text-align: right;"><h3>#(userName)#&nbsp;(#(userOrt)#)</h3></td>
			</tr>
		</tbody>
	</table>

	<form name="MainForm" action="AngebotsplanSave.csp" method="POST">

		<div class="article-content">

			<table cellspacing="10">
				<thead style="font-size:120%; font-weight:bold;">
					<tr>
						<td>Lieferdatum</td>
						<td>Verteilzentrum</td>
					</tr>
				</thead>
				<tbody>
					<tr>
						<td>
							<script language="CACHE" runat="SERVER">
								if (date = "")
								{
									set date = $replace($zdate($horolog + 1, 15), "/", ".")	//	tomorrow
								}
							</script>
							<input type="text" id="inputDateField" name="inputDateField" size="10" maxlength="10" value=#(date)# readonly onClick="scwNextAction=dateChanged.runsAfterSCW(this);scwShow(this,event);"/>
						</td>
						<td>
							<select name="VZListe" id="VZListe" size="0" onchange="vzChanged()">
								<script language="CACHE" runat="SERVER">
									set first = ""
									
									set found = $$$NO

									set resultSet = ##class(%ResultSet).%New("DBPlattform.AF.LieferanteilAF:ListeVZByLieferant")
									set status = resultSet.Execute(mandantId, userLogin, $zdateh(date, 15))
									set cnt = resultSet.%RowCount
									
									while (resultSet.Next())
									{
										set adressOidVZ = $get(resultSet.Data("AdressOidVZ"))
										set vz = ##class(DBAdressen.Adresse).%OpenId(adressOidVZ)

										if (first = "")		set first = adressOidVZ

										//	If vzSelection is undefined, set it to the 1st element of the select list
										//	And let the 1st element of the list be selected.
										//	If vzSelection is defined, select the corresponding element of the select list
										if (vzSelection = "") {
											set selected = "selected"
											set vzSelection = adressOidVZ
											set found = $$$YES
										}
										else {
											if (vzSelection = adressOidVZ) {
												set selected = "selected"
												set found = $$$YES
											}
											else {
												set selected = ""
											}
										}

										&html<
											<option #(selected)# value="#(adressOidVZ)#">#(vz.Name)#&nbsp;(#(vz.Ort)#)</option>
										>

										kill vz
									}

									do resultSet.Close()
									
									if (cnt '= 0) {
										if (vzSelection = "-1") {
											set selected = "selected"
											set found = $$$YES
										} else {
											set selected = ""
										}
										&html<
											<option #(selected)# value="-1">Alle Verteilzentren</option>
										>
									}

									if (found = $$$NO)		set vzSelection = first
								</script>
							</select>
							<input type="hidden" name="VZSelection" id="VZSelection" value="#(vzSelection)#"/>
						</td>
						<td>
							<button id="buttonNavLeft" name="btnNavLeft" type="button" onClick="addDaysToDate(-7)"></button>
							Woche
							<button id="buttonNavRight" name="btnNavRight" type="button" onClick="addDaysToDate(7)"></button>
						</td>
						<td>
							<button id="buttonCopy" name="btnCopy" type="button">Wochenweise kopieren</button>
						</td>
					</tr>
				</tbody>
			</table>
			<p/>
			<p>
				<script language="CACHE" runat="SERVER">
				if (activeArt = $$$YES) {
					set activeChecked = "checked"
					set allChecked = ""
				} else {
					set activeChecked = ""
					set allChecked = "checked"
				}
			   </script>
				<input type="radio" name="rdo" id="rdo" value="1" onchange="activeChanged()" #(activeChecked)#>Aktive Artikel</input>
				<input type="radio" name="rdo" id="rdo" value="0" onchange="activeChanged()" #(allChecked)#>Alle Artikel</input>
				<input type="hidden" name="activeArticles" id="activeArticles" value="#(activeArt)#"/>
			</p>
			<table style="font-size:12px;text-align: left; width: 100%;" border="1" cellspacing="0">
				<thead>
					<tr>
						<script language="CACHE" runat="SERVER">
							if (activeArt = $$$NO) {
								&html<
									<td colspan="1" style="text-align: center;"><strong>Aktiv</strong></td>
								>	
							}
				   	   </script>
						<td colspan="2" style="text-align: left;"><strong>Kalenderwoche</strong></td>
							<!--actual week (calendar) and the next full week and one cumulated-->
							<script language="CACHE" runat="SERVER">
								set wo = ##class(DBUtils.DateUtils).GetWeekByAgrisEinst($zdateh(date, 15))
								set internalD = ##class(DBUtils.DateTime).newFromHorolog($zdh(date,15))
								set d1 = internalD.addDays(7)
								set cumWO1 = ##class(DBUtils.DateUtils).GetWeekByAgrisEinst(d1.toHorolog())
								set d2 = internalD.addDays(7)
								set cumWO2 = ##class(DBUtils.DateUtils).GetWeekByAgrisEinst(d2.toHorolog())
								set d3 = internalD.addDays(7)
								set cumWO3 = ##class(DBUtils.DateUtils).GetWeekByAgrisEinst(d3.toHorolog())
								
							</script>				
						<td colspan="7" style="text-align: center"><strong>KW-#(wo)#</strong><input type="hidden" id="actWeek" value="#(wo)#"/></td>
						<td style="text-align: center"><strong>KW-#(cumWO1)#</strong><input type="hidden" id="nextWeek" value="#(cumWO1)#"/></td>
						<td style="text-align: center"><strong>KW-#(cumWO2)#</strong></td>
						<td style="text-align: center"><strong>KW-#(cumWO3)#</strong></td>
					</tr>
					<tr>
						<script language="CACHE" runat="SERVER">
							if (activeArt = $$$NO) {
								&html<
									<td>&nbsp;</td>
								>	
							}
				   	   </script>
						<td style="text-align: right; padding-right:5px;"><strong>Art.Nr</strong></td>
						<td style="text-align: left;width: 180px;"><strong>Artikel</strong></td>
						<script language="CACHE" runat="SERVER">
							//0 = Sunday, 1 = Monday etc
							set dayNr = $zd($zdh(date,15),10)
							if (woBeginnSO = $$$NO) {
								set dayNr = dayNr-1
							}
							
							//calc first day of week
							set internalD = ##class(DBUtils.DateTime).newFromHorolog($zdh(date,15))
							set d = internalD.addDays((-1)*dayNr)
							d ##class(%SYS.NLS.Format).SetFormatItem("WeekdayAbbr"," So Mo Di Mi Do Fr Sa")
							for index=1:1:7 {
								
								set strStyle = "text-align: center;"
								if (index = (dayNr+1)) {
									set strStyle = strStyle_"background: #FF8C00"
								}
								&html<
									<td style="#(strStyle)#"><strong>#($zd(d.toHorolog(),11))#<br>#($replace($piece(d.toDate(15),"/",1,2),"/","."))#</strong></td>
								>
								//inc one day
								set d = d.addDays(1)
							}
											
						</script>				
						<td style="text-align: center;"><strong>Woche</strong></td>
						<td style="text-align: center;"><strong>Woche</strong></td>
						<td style="text-align: center;"><strong>Woche</strong></td>
					</tr>
				</thead>
				<tbody>

					<script language="CACHE" runat="SERVER">

						&html<<tr><td colspan="13" bgcolor="darkgray">&nbsp;Gelistete Artikel:</td></tr>>
						
						set cnt = 1
						set tabCount = 0
						set standardArticleNrs = "#"
						set disableButtons = "disabled"
						set abnehmerOid = ##class(DBDebiKredi.Debitor).GetIdByAdrOid(mandantId, vzSelection)
						set lieferantOid = ##class(DBDebiKredi.Kreditor).GetIdByAdrNr(mandantId, userLogin)
						set adrOidLieferant = ##class(DBDebiKredi.Kreditor).GetAdrOidById(lieferantOid)
						
						//calc first day of week
						set internalD = ##class(DBUtils.DateTime).newFromHorolog($zdh(date,15))
						set d = internalD.addDays((-1)*dayNr)
						
						//actual: select all articles for 7 days (there is 1 editable week on the form)
						//old: select all articles for 31 days (there are 4 weeks on the form)
						//and it is necessary to check for every day, if the supplier is listed
						
						//set resultSet = ##class(DBPlattform.Lieferanteil).SelectArtikelByDays(mandantId, adrOidLieferant, vzSelection, d.toHorolog(), 31)
						set resultSet = ##class(DBPlattform.Lieferanteil).SelectArtikelByDays(mandantId, adrOidLieferant, vzSelection, d.toHorolog(), 7)
						
						//element: ArtikelId#Anfragedatum
						set listArticleOidDate = ##class(%ListOfDataTypes).%New()
						
						//element: artikelid
						set listArticles = ##class(%ListOfDataTypes).%New()
						
						while (resultSet.Next())
						{
							do listArticleOidDate.Insert($get(resultSet.Data("ArtikelId"))_
								"#"_$get(resultSet.Data("Anfragedatum")))
						}
						
						set resultSet.CurrRow = 0
						
						set first = $$$NO
						set firstArticle = ""
						set lastArticle = ""
						
						while (resultSet.Next()) {
							
							if (first = $$$NO) {
								set firstArticle = $get(resultSet.Data("ArtikelNr"))
								set first = $$$YES
							}
							set lastArticle = $get(resultSet.Data("ArtikelNr"))
							
							set artId = $get(resultSet.Data("ArtikelId"))
							set requestDate = $get(resultSet.Data("Anfragedatum"))
							set artIsActive = (##class(DBPlattform.InactiveArticlesWeb).IsArticleInactive($$$UID, artId) = $$$NO)
							
							//skip to next resultset entry when article already added
							if ((listArticles.Find(artId) '= "") || ((activeArt = $$$YES) && (artIsActive = $$$NO))) {
								continue
							}
							
							//add articlesid to list
							do listArticles.Insert(artId)
							
							//calc first day of week
							set internalD = ##class(DBUtils.DateTime).newFromHorolog($zdh(date,15))
							set d = internalD.addDays((-1)*dayNr)
							
							set standardArticleNrs = standardArticleNrs _ $get(resultSet.Data("ArtikelNr")) _ "#"
							
							&html<
								<tr style="text-align: left; padding-left: 60px;">
							>
							
							// add checkboxes, that the user can change the visibility of an article
							if (activeArt = $$$NO) {
								set isChecked = ""
								if (artIsActive = $$$YES) {
									set isChecked = "checked"	
								}
								set n = "aktiv"_artId
								&html<
									<td style="text-align: center;">
										<input type="checkbox" id=#(n)# name=#(n)# #(isChecked)# onchange="articleActiveChange('#(n)#','#(artId)#')" />
									</td>
								>	
							}
						   	   
						   	&html<
								<td style="text-align: right; padding-right:5px;width: 50px;">&nbsp;#($get(resultSet.Data("ArtikelNr")))#</td>
								<td style="text-align: left;width: 180px;">&nbsp;#($get(resultSet.Data("Artikeltext")))#</td>
							>
													
							//1-7= one full week, 8-10 = cumulated weeks
							for index=1:1:10 {
								
								set strStyle = "text-align: center;"
								if (index = (dayNr+1)) {
									set strStyle = strStyle_"background: #FF8C00;"
								}
								
							
								//*******************************************
								// Get Angebotsmenge +
								// Check if allowed (date not expired) 
								// AND
								// Check if supplier is listed in DBPlattform.Lieferanteil
								//*******************************************
								set angebotsMenge = 0
								
								if ((index >=1) && (index <= 7)) {
									
									if ((##class(DBPlattform.SD.Zeitraster).AllowEdit(##class(DBPlattform.SD.Zeitraster).GetParamAngebotErfasst(), 
										$zdateh(d.toDate(),15), 
										abnehmerOid) = $$$YES) 
									&& (listArticleOidDate.Find(artId_"#"_+d.toHorolog()) '= "")
									&& (vzSelection '= -1)) {
									
										set mutationsDisabled = ""
										set bgColorDisabled = ""
										if (disableButtons = "disabled") {
											set disableButtons = ""	
										}
									} else {
										set mutationsDisabled = "disabled"
										set bgColorDisabled = "style='background-color:lightgray;'"
									}
								
									set resultSetMenge = ##class(%ResultSet).%New("DBPlattform.AF.AngebotAF:GetAngebotsmengeXNetGui")
									set tmpAbnehmerOid = ""
									if (vzSelection '= -1) {
										set tmpAbnehmerOid = abnehmerOid
									}
									set statusMenge = resultSetMenge.Execute(mandantId, tmpAbnehmerOid, lieferantOid, +d.toHorolog(), $get(resultSet.Data("ArtikelId")))
		
									if (resultSetMenge.Next(.statusMenge)) {
										
										set angebotsMenge = $get(resultSetMenge.Data("Menge"))
									}
								
								} else {
									
									set hStart = +d.toHorolog()
									do d.addDays(6)
									set hEnd = +d.toHorolog()
									
									//full weeks are disabled
									set mutationsDisabled = "disabled"
									set bgColorDisabled = "style='background-color:lightgray;'"
										
									set resultSetMenge = ##class(%ResultSet).%New("DBPlattform.AF.AngebotAF:GetSumAngMengeXNetGui")
									set tmpAbnehmerOid = ""
									if (vzSelection '= -1) {
										set tmpAbnehmerOid = abnehmerOid
									}
									set statusMenge = resultSetMenge.Execute(mandantId, tmpAbnehmerOid, lieferantOid, hStart, hEnd, $get(resultSet.Data("ArtikelId")))
									
									if (resultSetMenge.Next(.statusMenge)) {
										set angebotsMenge = $get(resultSetMenge.Data("SumMenge"))
									}
										
									/* commented 23.11.2010
									 * -> to slow, weeks are now just for info and not editable
									 * see  ##class(DBPlattform.Lieferanteil).SelectArtikelByDays(...)
									 * for further infos
									 */
									/*set enableField = $$$NO
									
									for tmpI=0:1:6 {
										//start of week
										if (tmpI = 0) {
											set hStart = +d.toHorolog()
										}
										
										if ((tmpI > 0) && (tmpI <= 6)) {
											//inc one day
											do d.addDays(1)
										
											if ((##class(DBPlattform.SD.Zeitraster).AllowEdit(##class(DBPlattform.SD.Zeitraster).GetParamAngebotErfasst(), 
											$zdateh(d.toDate(),4), 
											abnehmerOid) = $$$YES) 
												&& (listArticleOidDate.Find(artId_"#"_+d.toHorolog()) '= "")
												&& (vzSelection '= -1)) {
											
												if (enableField = $$$NO) {
													set enableField = $$$YES
												}	
											}	
										
											//end of week
											if (tmpI = 6) {
												set hEnd = +d.toHorolog()
											}
										}
									}
									
									if (enableField = $$$YES) {
										set mutationsDisabled = ""
										set bgColorDisabled = ""
										if (disableButtons = "disabled") {
											set disableButtons = ""	
										}
									} else {
										set mutationsDisabled = "disabled"
										set bgColorDisabled = "style='background-color:lightgray;'"
									}
																	
									set resultSetMenge = ##class(%ResultSet).%New("DBPlattform.AF.AngebotAF:GetSumAngMengeXNetGui")
									set tmpAbnehmerOid = ""
									if (vzSelection '= -1) {
										set tmpAbnehmerOid = abnehmerOid
									}
									set statusMenge = resultSetMenge.Execute(mandantId, tmpAbnehmerOid, lieferantOid, hStart, hEnd, $get(resultSet.Data("ArtikelId")))
									
									if (resultSetMenge.Next(.statusMenge)) {
										set angebotsMenge = $get(resultSetMenge.Data("SumMenge"))
									}*/						
								}	
								if (angebotsMenge = "") {
									set angebotsMenge = 0	
								}
								set horologDate = 0
								if (index <=7) {
									set horologDate = +d.toHorolog()
								} else {
									set horologDate = hStart
								}				
								
								&html<
									<td style="#(strStyle)#">
										<input type="text" class="smallNum"
												#(mutationsDisabled)# #(bgColorDisabled)#
												id="inputField_#(cnt)#"
												name="inputField_#(cnt)#"
												value="#(angebotsMenge)#"
												onchange="checkField('#(cnt)#')"
												tabindex="#($increment(tabCount))#"
										/>
										<input type="hidden" name="artikelId_#(cnt)#" value="#($get(resultSet.Data("ArtikelId")))#"/>
										<input type="hidden" name="posID" value="#(cnt)#"/>
										<input type="hidden" name="isZusatzangebot_#(cnt)#" value="#(0)#"/>
										<input type="hidden" name="isDisabled_#(cnt)#" value="#(mutationsDisabled = "disabled")#"/>
										<input type="hidden" name="date_#(cnt)#" value="#(horologDate)#"/>
										
								>
								set weekIdx = 0
								if (index = 8) {
									set weekIdx = 1
								} elseif (index = 9) {
									set weekIdx = 2
								} elseif (index = 10) {
									set weekIdx = 3
								}
								&html<
										<input type="hidden" name="week_#(cnt)#" value="#(weekIdx)#"/>
									</td>
								>
								
								//inc one day
								set d = d.addDays(1)
								set cnt = cnt + 1
							}
																		
							&html<</tr>>
							
						}

						do resultSet.Close()

						&html<<tr><td colspan="13" bgcolor="darkgray">&nbsp;Zusätzliche Artikel:</td></tr>>

						set resultSet = ##class(%ResultSet).%New("DBAgrofreshEK.AF.PreisAF:ListeSpezArtByLiefAdressNr")
						set status = resultSet.Execute(mandantId, userLogin, vzSelection, $zdateh(date, 15))
						
						set first = $$$NO
						set tmpLastArticle = ""
						while (resultSet.Next())
						{
							if (first = $$$NO) {
								set tmpArt = $get(resultSet.Data("ArtikelNr"))
								if (tmpArt < firstArticle) {
									set firstArticle = tmpArt	
								}
								set first = $$$YES	
							}
							set tmpLastArticle = $get(resultSet.Data("ArtikelNr"))
							set artId = $get(resultSet.Data("ArtikelId"))
							set artIsActive = (##class(DBPlattform.InactiveArticlesWeb).IsArticleInactive($$$UID, artId) = $$$NO)
							
							if (($find(standardArticleNrs, "#" _ $get(resultSet.Data("ArtikelNr")) _ "#") '= 0) || ((activeArt = $$$YES) && (artIsActive = $$$NO)))	continue

							//set angebotsMenge = $get(resultSet.Data("Angebotsmenge"))

							&html<
								<tr style="text-align: left; padding-left: 60px;">
								
							>
							
							// add checkboxes, that the user can change the visibility of an article
							if (activeArt = $$$NO) {
								set isChecked = ""
								if (artIsActive = $$$YES) {
									set isChecked = "checked"	
								}
								set n = "aktiv"_artId
								&html<
									<td style="text-align: center;">
										<input type="checkbox" id=#(n)# name=#(n)# #(isChecked)# onchange="articleActiveChange('#(n)#','#(artId)#')" />
									</td>
								>	
							}
							
						   	&html<   
									<td style="text-align: right; padding-right:5px;width: 50px">&nbsp;#($get(resultSet.Data("ArtikelNr")))#</td>
									<td style="text-align: left;width: 180px;">&nbsp;#($get(resultSet.Data("Artikeltext")))#</td>
							>
						
							//calc first day of week
							set internalD = ##class(DBUtils.DateTime).newFromHorolog($zdh(date,15))
							set d = internalD.addDays((-1)*dayNr)
							
							for index=1:1:10 {
								
								set strStyle = "text-align: center;"
								if (index = (dayNr+1)) {
									set strStyle = strStyle_"background: #FF8C00;"
								}
													
								set angebotsMenge = 0
								
								if ((index >=1) && (index <= 7)) {
							
									if ((##class(DBPlattform.SD.Zeitraster).AllowEdit(##class(DBPlattform.SD.Zeitraster).GetParamAngebotErfasst(), $zdateh(d.toDate(),15),abnehmerOid))
									&& (vzSelection '= -1)) {
										set mutationsDisabled = ""
										set bgColorDisabled = ""
										if (disableButtons = "disabled") {
											set disableButtons = ""	
										}
									} else {
										set mutationsDisabled = "disabled"
										set bgColorDisabled = "style='background-color:lightgray;'"
									}
									set resultSetMenge = ##class(%ResultSet).%New("DBPlattform.AF.AngebotAF:GetAngebotsmengeXNetGui")
									set tmpAbnehmerOid = ""
									if (vzSelection '= -1) {
										set tmpAbnehmerOid = abnehmerOid
									}
									set statusMenge = resultSetMenge.Execute(mandantId, tmpAbnehmerOid, lieferantOid, +d.toHorolog(), $get(resultSet.Data("ArtikelId")))
		
									if (resultSetMenge.Next(.statusMenge)) {
										
										set angebotsMenge = $get(resultSetMenge.Data("Menge"))
									}
									
									//HACK: copy - TODO: write own function for that
								} else {
									
									set hStart = +d.toHorolog()
									do d.addDays(6)
									set hEnd = +d.toHorolog()
									
									//full weeks are disabled
									set mutationsDisabled = "disabled"
									set bgColorDisabled = "style='background-color:lightgray;'"
										
									set resultSetMenge = ##class(%ResultSet).%New("DBPlattform.AF.AngebotAF:GetSumAngMengeXNetGui")
									set tmpAbnehmerOid = ""
									if (vzSelection '= -1) {
										set tmpAbnehmerOid = abnehmerOid
									}
									set statusMenge = resultSetMenge.Execute(mandantId, tmpAbnehmerOid, lieferantOid, hStart, hEnd, $get(resultSet.Data("ArtikelId")))
									
									if (resultSetMenge.Next(.statusMenge)) {
										set angebotsMenge = $get(resultSetMenge.Data("SumMenge"))
									}
									
									/*set enableField = $$$NO
									
									for tmpI=0:1:6 {
										//start of week
										if (tmpI = 0) {
											set hStart = +d.toHorolog()
										}
										
										if ((tmpI > 0) && (tmpI <= 6)) {
											//inc one day
											do d.addDays(1)
										
											if ((##class(DBPlattform.SD.Zeitraster).AllowEdit(##class(DBPlattform.SD.Zeitraster).GetParamAngebotErfasst(), 
											$zdateh(d.toDate(),4), 
											abnehmerOid) = $$$YES) 
												&& (listArticleOidDate.Find(artId_"#"_+d.toHorolog()) '= "")
												&& (vzSelection '= -1)) {
											
												if (enableField = $$$NO) {
													set enableField = $$$YES
												}	
											}	
										
											//end of week
											if (tmpI = 6) {
												set hEnd = +d.toHorolog()
											}
										}
									}
									
									if (enableField = $$$YES) {
										set mutationsDisabled = ""
										set bgColorDisabled = ""
										if (disableButtons = "disabled") {
											set disableButtons = ""	
										}
									} else {
										set mutationsDisabled = "disabled"
										set bgColorDisabled = "style='background-color:lightgray;'"
									}
																	
									set resultSetMenge = ##class(%ResultSet).%New("DBPlattform.AF.AngebotAF:GetSumAngMengeXNetGui")
									set tmpAbnehmerOid = ""
									if (vzSelection '= -1) {
										set tmpAbnehmerOid = abnehmerOid
									}
									set statusMenge = resultSetMenge.Execute(mandantId, tmpAbnehmerOid, lieferantOid, hStart, hEnd, $get(resultSet.Data("ArtikelId")))
									
									if (resultSetMenge.Next(.statusMenge)) {
										set angebotsMenge = $get(resultSetMenge.Data("SumMenge"))
									}*/
								
								}
								
								if (angebotsMenge = "") {
									set angebotsMenge = 0	
								}
								set horologDate = 0
								if (index <=7) {
									set horologDate = +d.toHorolog()
								} else {
									set horologDate = hStart
								}	
								
								&html<
									<td style="#(strStyle)#">
										<input type="text" class="smallNum"
												#(mutationsDisabled)# #(bgColorDisabled)#
												id="inputField_#(cnt)#"
												name="inputField_#(cnt)#"
												value="#(angebotsMenge)#"
												onchange="checkField('#(cnt)#')"
												tabindex="#($increment(tabCount))#"
										/>
										<input type="hidden" name="artikelId_#(cnt)#" value="#($get(resultSet.Data("ArtikelId")))#"/>
										<input type="hidden" name="posID" value="#(cnt)#"/>
										<input type="hidden" name="isZusatzangebot_#(cnt)#" value="#(1)#"/>
										<input type="hidden" name="isDisabled_#(cnt)#" value="#(mutationsDisabled = "disabled")#"/>
										<input type="hidden" name="date_#(cnt)#" value="#(horologDate)#"/>
								>
								
								set weekIdx = 0
								if (index = 8) {
									set weekIdx = 1
								} elseif (index = 9) {
									set weekIdx = 2
								} elseif (index = 10) {
									set weekIdx = 3
								}
								&html<
										<input type="hidden" name="week_#(cnt)#" value="#(weekIdx)#"/>
									</td>
								>
								
								//inc one day
								set d = d.addDays(1)
								set cnt = cnt + 1
							}
							
							//add cumulated KW cell
												
							&html<</tr>>
							
						}
						if (tmpLastArticle > lastArticle) {
							set lastArticle = tmpLastArticle	
						}
						do resultSet.Close()

						&html<<input type="hidden" name="fieldCount" value="#(cnt - 1)#"/>>
						&html<<input type="hidden" id="firstArticle" value="#(firstArticle)#"/>>
						&html<<input type="hidden" id="lastArticle" value="#(lastArticle)#"/>>

					</script>
				</tbody>
			</table>
		</div>

		<p/>
		<table width="100%">
			<tr>
				<td align="left">
					<input tabindex="#($increment(tabCount))#" type="button" value="Speichern" onclick="checkAndSubmitForm();" #(disableButtons)#/>
					<input tabindex="#($increment(tabCount))#" type="button" value="Abbrechen" onclick="document.location='Angebotsplan.csp'" #(disableButtons)#/>
				</td>
				<td align="right">
					<input tabindex="#($increment(tabCount))#" type="button" value="Seite Drucken" onclick="printPage()"/>
				</td>
			</tr>
		</table>

		<big class="err">
			<script language="CACHE" runat="SERVER">
				set err = ..GetErrorMessage($$$YES)
				if (err '= "")
				{
					&html<#(err)#>
				}
			</script>
			&nbsp;
		</big>

		<input type="hidden" name="action" value=""/>
	
	</form>

</body>
</html>
]]></CSP>


<CSP name="AngebotsplanSave.csp" application="/csp/cbt/" default="1"><![CDATA[
<csp:class super="Alliance.Agris.Web.SecurePage">

<script language="Cache" method="OnPreHTTPPage" arguments="" returntype="%Boolean">

	set %response.Redirect = "Angebotsplan.csp"

	set action = $get(%request.Data("action",1),"")
	if (action = "")
	{
		do ..SetErrorMessage("Aktion undefiniert")
		quit $$$OK
	}

	if (action = "reload")
	{
		set $$$SELECTEDVZID = $get(%request.Data("VZSelection",1),"")
		set $$$SELECTEDDATE = $get(%request.Data("inputDateField",1),"")
		set $$$ACTIVEARTICLES = $get(%request.Data("activeArticles",1),"")
	
		quit $$$OK
	}

	if (action = "save")
	{
		set status = $$$OK

		set fieldCount = $get(%request.Data("fieldCount", 1),"")
		set date = $get(%request.Data("inputDateField", 1),"")
		set dateHSel = $zdateh(date, 15)
		set vzId = $get(%request.Data("VZListe", 1),"")

		set lieferant = ##class(DBDebiKredi.Kreditor).%OpenId($$$UID,, .status)
		if ($$$ISERR(status) || '$IsObject(lieferant))
		{
			do ..SetErrorMessage("Lieferant " _ $$$UID _ " konnte nicht geöffnet werden!!!")
			quit $$$OK
		}

		set abnehmerId = ##class(DBDebiKredi.Debitor).GetIdByAdrOid($$$MANDANTID, vzId)
		set abnehmer = ##class(DBDebiKredi.Debitor).%OpenId(abnehmerId,, .status)
		if ($$$ISERR(status) || '$IsObject(abnehmer))
		{
			do ..SetErrorMessage("Abnehmer " _ abnehmerId _ " konnte nicht geöffnet werden!!!")
			quit $$$OK
		}
		
		set hasErrors = $$$NO
		//	Loop through all inputFields:
		for i=1:1:fieldCount {
			
			set value = $get(%request.Data("inputField_" _ i, 1), 0)
			set artId = %request.Data("artikelId_" _ i, 1)
			set week = %request.Data("week_" _ i, 1)
			set isZusatz = %request.Data("isZusatzangebot_" _ i, 1)
			set isDisabled = %request.Data("isDisabled_" _ i, 1)
			set dateH = %request.Data("date_" _ i, 1)
			
			//save anything just when the field is active
			if (isDisabled = $$$NO) {
				
				set angebotsKopfId = ##class(DBPlattform.AngebotsKopf).GetId($$$UID, abnehmerId, $$$MANDANTID, dateH)
				if (angebotsKopfId = "") {
					//	Create a new AngebotsKopf:
					set angebotsKopf = ##class(DBPlattform.AngebotsKopf).%New()
					set angebotsKopf.Lieferant = lieferant
					set angebotsKopf.Abnehmer = abnehmer
					set angebotsKopf.Mandant = $$$MANDANTID
					set angebotsKopf.Datum = dateH

					set status = angebotsKopf.%Save()
					if ($$$ISERR(status)) {
						do ..SetErrorMessage("Angebotskopf " _ angebotsKopfId _ " konnte nicht erzeugt werden!!!")
						set hasErrors = $$$YES
						continue
					}
				} else {
					set angebotsKopf = ##class(DBPlattform.AngebotsKopf).%OpenId(angebotsKopfId,, .status)
					if ($$$ISERR(status) || '$IsObject(angebotsKopf)) {
						do ..SetErrorMessage("Angebotskopf " _ angebotsKopfId _ " konnte nicht geöffnet werden!!!")
						set hasErrors = $$$YES
						continue
					}
				}
				
				//save for the first full week
				if (week = 0) {
					set artikel = ##class(DBAgrofresh.Artikel).%OpenId(artId)
					if ($$$ISERR(status) || '$IsObject(artikel))
					{
						do ..SetErrorMessage("Artikel " _ artId _ " konnte nicht geöffnet werden!!!")
						set hasErrors = $$$YES
						continue // better: quit???
					}
			
					set angebotsPos = ##class(DBPlattform.AngebotsPos).GetAngebotObj(dateH, abnehmerId, $$$UID, artId, $$$MANDANTID)
					if (angebotsPos = $$$NULLOREF) {
						//	Create a new AngebotsPos:
						set angebotsPos = ##class(DBPlattform.AngebotsPos).%New()
						set angebotsPos.AngebotsKopf = angebotsKopf
					}
			
					if (isZusatz = $$$NO) {
						set angebotsPos.IsZusatzangebot = $$$NO
					} else {
						set angebotsPos.IsZusatzangebot = $$$YES
					}
			
					set angebotsPos.Menge = value
					set angebotsPos.Artikel = artikel

					set status = angebotsPos.%Save()
					if ($$$ISERR(status))
					{
						set hasErrors = $$$YES
						continue // better: quit???
					}
				
				//save the value to every day of the week, if the supplier is authorized to deliver
				} else {
					
					//weeks aren't editable anymore
					
					/*set tmpDate = dateH
					
					set listDates = ##class(%ListOfDataTypes).%New()

					//select all allowed dates, to know on how many dates we have to split the value
					for ind=0:1:5 {
						if (ind > 0) {
							set tmpDate = tmpDate + 1 //horolog	
						}
						
						//check allowed OR (check allowed AND is authorized to deliver)
						if (isZusatz = $$$NO) {
							if ((##class(DBPlattform.SD.Zeitraster).AllowEdit(##class(DBPlattform.SD.Zeitraster).GetParamAngebotErfasst(), 
									+tmpDate, abnehmerId) = $$$YES) 
									&& (##class(DBPlattform.Lieferanteil).IsLieferantGelistetWeb($$$MANDANTID, artId, vzId, +tmpDate,$$$ULOGIN) = $$$YES)) {
										do listDates.Insert(+tmpDate)
									} 
						} else {
							if (##class(DBPlattform.SD.Zeitraster).AllowEdit(##class(DBPlattform.SD.Zeitraster).GetParamAngebotErfasst(), 
									+tmpDate, abnehmerId) = $$$YES) {
								
								do listDates.Insert(+tmpDate)			
							}
						}	
					}
					set lastVal = 0
					if (listDates.Count() > 0) {
						//truncate
						set valuePerDay = $NORMALIZE((value / listDates.Count()),-1)
						set lastVal = valuePerDay + (value - (valuePerDay*listDates.Count()))
					} else {
						set valuePerDay = 0	
					}
										
					for d=1:1:listDates.Count() { 
						set tmpDateH = listDates.GetAt(d)
						
						//get head
						set angebotsKopfId = ##class(DBPlattform.AngebotsKopf).GetId($$$UID, abnehmerId, $$$MANDANTID, tmpDateH)
						if (angebotsKopfId = "") {
							//	Create a new AngebotsKopf:
							set angebotsKopf = ##class(DBPlattform.AngebotsKopf).%New()
							set angebotsKopf.Lieferant = lieferant
							set angebotsKopf.Abnehmer = abnehmer
							set angebotsKopf.Mandant = $$$MANDANTID
							set angebotsKopf.Datum = tmpDateH

							set status = angebotsKopf.%Save()
							if ($$$ISERR(status)) {
								do ..SetErrorMessage("Angebotskopf " _ angebotsKopfId _ " konnte nicht erzeugt werden!!!")
								set hasErrors = $$$YES
								continue
							}
						} else {
							set angebotsKopf = ##class(DBPlattform.AngebotsKopf).%OpenId(angebotsKopfId,, .status)
							if ($$$ISERR(status) || '$IsObject(angebotsKopf)) {
								do ..SetErrorMessage("Angebotskopf " _ angebotsKopfId _ " konnte nicht geöffnet werden!!!")
								set hasErrors = $$$YES
								continue
							}
						}
						
						set artikel = ##class(DBAgrofresh.Artikel).%OpenId(artId)
						if ($$$ISERR(status) || '$IsObject(artikel)) {
							do ..SetErrorMessage("Artikel " _ artId _ " konnte nicht geöffnet werden!!!")
							set hasErrors = $$$YES
							continue // better: quit???
						}
						
						set angebotsPos = ##class(DBPlattform.AngebotsPos).GetAngebotObj(tmpDateH, abnehmerId, $$$UID, artId, $$$MANDANTID)
						
						if (angebotsPos = $$$NULLOREF) {
							//	Create a new AngebotsPos:
							set angebotsPos = ##class(DBPlattform.AngebotsPos).%New()
							set angebotsPos.AngebotsKopf = angebotsKopf
						}
			
						if (isZusatz = $$$NO) {
							set angebotsPos.IsZusatzangebot = $$$NO
						} else {
							set angebotsPos.IsZusatzangebot = $$$YES
						}
											
						if (d '= listDates.Count()) {
							set angebotsPos.Menge = valuePerDay
						} else {
							set angebotsPos.Menge = lastVal
						}
						set angebotsPos.Artikel = artikel
						set status = angebotsPos.%Save()
						if ($$$ISERR(status)) {
							set hasErrors = $$$YES
							continue // better: quit???
						}
						
					}*/
	
				}
			
			}
		
		}
	
		if (hasErrors = $$$YES)
		{
			do ..SetErrorMessage("Fehler beim Speichern der Angebote: " _ $SYSTEM.Status.GetErrorText(status))
		}
		else
		{
			set status = $$$OK

			set typ = ##class(Alliance.Common.KAL.Code.MessageType).Lieferung()
			set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).AngebotErfasst()
			set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisMExtranet()
			set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
			do ##class(Alliance.Common.KAL.Message).new(.status, typ, subTyp, senderTyp, severity, dateHSel, abnehmerId, $$$UID)

			if ($$$ISERR(status))
			{
				do ..SetErrorMessage(status)
			}
			else
			{
				do ..SetErrorMessage("Gespeichert")
			}
		}

		quit $$$OK
	}

	do ..SetErrorMessage("Ungültige Aktion: '" _ action _ "'")
	quit $$$OK

</script>

]]></CSP>


<CSP name="DlgCopyAngebot.csp" application="/csp/cbt/" default="1"><![CDATA[
<csp:class super="Alliance.Agris.Web.SecurePage">

<script language="Cache" method="OnPreHTTPPage" arguments="" returntype="%Boolean">	

	set fromWeek = %request.Get("fromWeek")
	set toWeek = %request.Get("toWeek")
	set fromArticle = %request.Get("fromArt")
	set toArticle = %request.Get("toArt")
	
	set idFrom = ##class(DBAgrofresh.Artikel).GetIdByArtikelNr($$$MANDANTID, fromArticle)
	set bezFrom = ##class(DBAgrofresh.Artikel).GetArtikeltextClass(idFrom, $$$MANDANTID, "de")
	
	set idTo = ##class(DBAgrofresh.Artikel).GetIdByArtikelNr($$$MANDANTID, toArticle)
	set bezTo = ##class(DBAgrofresh.Artikel).GetArtikeltextClass(idTo, $$$MANDANTID, "de")
	
	set status = ##class(DBDebiKredi.Kreditor).%ExistsId($$$UID)
	if ($$$ISERR(status))
	{
		set %response.Redirect = "logout.csp"
		do ..SetErrorMessage("Lieferantendaten nicht gefunden!!!")
	}
	quit $$$OK

</script>

<html>
<head>
	<title>AgrisM - Angebote kopieren</title>
	<link rel="stylesheet" href="css/template.css" type="text/css" />
	<link rel="stylesheet" href="css/overcast/jquery-ui-1.8.6.custom.css" type="text/css" />
	<script type="text/javascript" src="js/jquery-1.4.3.min.js"></script>
	<script type="text/javascript" src="js/jquery-ui-1.8.6.custom.min.js"></script>
	<script type="text/javascript">
	
		$(function() {
			
			function log(label,message) {
				$(label).text(message);
			}

			$( "#fromArt" ).autocomplete({
				source: "#($$$APPURI)#/Alliance.Agris.Web.ArticleSearch.cls",
				minLength: 1,
				select: function( event, ui ) {
					log( "#lblFromArt", ui.item ?
						ui.item.valueText :
						"" );
				}
			});
			$( "#toArt" ).autocomplete({
				source: "#($$$APPURI)#/Alliance.Agris.Web.ArticleSearch.cls",
				minLength: 1,
				select: function( event, ui ) {
					log( "#lblToArt", ui.item ?
						ui.item.valueText :
						"" );
				}
			});
			
		});
		
		// Called on OK-Button klick:
		function checkAndSubmitForm()
		{
			// check all fields
			var check = true
			
		
			
			if (check == false)
			{
				alert("Bitte prüfen Sie ihre Eingaben und geben Sie gültige Werte ein!\nGültige Werte sind ganze, positive Zahlen.");
				return;
			}

			document.MainForm.action.value = "save";
			document.MainForm.submit();
		}



	
	</script>
</head>

<body id="bd" class="fs3 FF" style="padding:10px;">
	<table style="width: 100%;" title="Auf dieser Seite können Sie Ihre Angebote für das gewählte Verteilzentrum und das gewählte Datum erfassen. Bei wiederholtem Speichern werden die vorher gespeicherten Angebote durch die neuen überschrieben.">
		<colgroup>
			<col width="100%"/>
		</colgroup>
		<tbody>
			<tr>
				<td><h3 class="contentheading">Angebote aller VZs kopieren</h3></td>
			</tr>
		</tbody>
	</table>
	<form name="MainForm" action="AngebotsCopy.csp" method="POST">
	<br>
	<div class="article-content">
		<table cellspacing="10" border="0">
			<tbody>
				<tr>
					<td>
						<label for="fromWeek">Von Woche:</label>
					</td>
					<td>
						<input type="text" name="fromWeek" id="fromWeek" value="#(fromWeek)#"/>
						<select name="yearsFromWeek" id="yearsFromWeek" size="0">
							<script language="CACHE" runat="SERVER">
								
								set date = ##class(DBUtils.DateTime).now()
								set now = date.getYear()
								set vorj = now-1
								set nextj = now+1
							
								&html<
									<option value="#(vorj)#">#(vorj)#</option>
									<option selected value="#(now)#">#(now)#</option>
									<option value="#(nextj)#">#(nextj)#</option>
								>
								
							</script>
						</select>
					</td>
				</tr>
				<tr>
					<td>
						 <label for="toWeek">Nach Woche:</label>
					</td>
					<td>
						<input type="text" name="toWeek" id="toWeek" value="#(toWeek)#"/>
						<select name="yearsToWeek" id="yearsToWeek" size="0">
							<script language="CACHE" runat="SERVER">
														
								&html<
									<option value="#(vorj)#">#(vorj)#</option>
									<option selected value="#(now)#">#(now)#</option>
									<option value="#(nextj)#">#(nextj)#</option>
								>
								
							</script>
						</select>
					</td>
				</tr>
				<tr>
					<td>
						<input type="radio" name="rdo" value="alle" checked>Alle Artikel</input>
					</td>
					<td />
				</tr>
				<tr>
					<td>
						<input type="radio" name="rdo" value="gelistet">Gelistete Artikel</input>
					</td>
					<td />
				</tr>
				<tr>
					<td>
						<input type="radio" name="rdo" value="zusatz">Zus&auml;tzliche Artikel</input>
					</td>
					<td />
				</tr>
				<tr>
					<td>
						<input type="radio" name="rdo" value="vonbis">Von/bis Artikel</input>
					</td>
					<td>
						<table>
							<tr>
								<td>
									<label for="fromArt">Von Artikel:</label>
								</td>
								<td>
									<input style="width: 90px" type="text" name="fromArt"id="fromArt" value="#(fromArticle)#"/>
								</td>
								<td>
									<label id="lblFromArt">#(bezFrom)#</label>
								</td>
							</tr>
						</table>
					</td>
				</tr>
				<tr>
					<td />
					<td>
					<table>
						<tr>
							<td />
							<td>
								<label for="toArt">Bis Artikel:</label>
							</td>
							<td>
								<input style="width: 90px" type="text" name="toArt" id="toArt" value="#(toArticle)#"/><br>
							</td>
							<td>
								<label id="lblToArt">#(bezTo)#</label>
							</td>
						</tr>
					</table>
					</td>
				</tr>
				
			</tbody>
		</table>	
		
		<p/>
		<table width="100%">
			<tr>
				<td>
					<input checked type="checkbox" name="overwrite" value="1">Existierende Angebote &uuml;berschreiben</input>
				</td>
			</tr>
			<tr>
				<td>
					<input type="button" value="Kopieren" onclick="checkAndSubmitForm();"/>
				</td>
			</tr>
		</table>
		
		<big class="err" style="color:green">
			<script language="CACHE" runat="SERVER">
				set err = ..GetErrorMessage($$$YES)
				if (err '= "")
				{
					&html<#(err)#>
				}
			</script>
			&nbsp;
		</big>
		
		<input type="hidden" name="action" value=""/>
	</div>
	</form>
</body>
</html>]]></CSP>


<CSP name="Lieferbestaetigung.csp" application="/csp/cbt/" default="1"><![CDATA[
<csp:class super="Alliance.Agris.Web.SecurePage">

<script language="Cache" method="OnPreHTTPPage" arguments="" returntype="%Boolean">	

	set status = ##class(DBDebiKredi.Kreditor).%ExistsId($$$UID)
	if ($$$ISERR(status))
	{
		set %response.Redirect = "logout.csp"
		do ..SetErrorMessage("Lieferantendaten nicht gefunden!!!")
	}

	quit $$$OK

</script>

<html>
<head>
	<title>AgrisM - Liefermengen erfassen</title>
	<script type="text/javascript" src="js/guiFunctions.js"></script>
	<script type='Text/JavaScript' src='js/scw.js'></script>
	<link rel="stylesheet" href="css/system.css" type="text/css" />
	<link rel="stylesheet" href="css/general.css" type="text/css" />
	<link rel="stylesheet" href="css/template.css" type="text/css" />
	<link rel="stylesheet" href="css/menu.css" type="text/css" />
	<link rel="stylesheet" href="css/header_green_style.css" type="text/css" />
	<link rel="stylesheet" href="css/background_lighter_style.css" type="text/css" />
	<link rel="stylesheet" href="css/elements_green_style.css" type="text/css" />
	
	<script type="text/javascript">

		// Called on OK-Button klick:
		function checkAndSubmitForm()
		{
			// check all fields
			var check = true
			
			var posIDs = document.getElementsByName("posID");

			for (i = 0; i < posIDs.length; i++)
			{
				var posID = posIDs[i].value;

				if (document.getElementById("inputField_" + posID).value == "")
				{
					document.getElementById("inputField_" + posID).value = 0;
				}

				// check field
				if (validateField(posID) == false)
				{
					check = false;
					break;	// Break the for-loop on the first invalid field
				}
			}
			
			if (check == false)
			{
				alert("Bitte prüfen Sie ihre Eingaben und geben Sie gültige Werte ein!\nGültige Werte sind ganze, positive Zahlen. Zudem darf die Differenz nicht positiv sein.");
				return;
			}

			document.MainForm.action.value = "save";
			document.MainForm.submit();
		}


		// Called on change for each input field:
		function checkField(posId)
		{
			if (validateField(posId) == false)
			{
				alert("Reihe " + posId + ": Bitte geben Sie einen gültigen Wert ein!\nGültige Werte sind ganze, positive Zahlen. Zudem darf die Differenz nicht positiv sein.");
				window.setTimeout("document.getElementById('inputField_" + posId + "').focus();document.getElementById('inputField_" + posId + "').select();",1);
			}
		}


		// Validate the content of an input field:
		function validateField(posId)
		{
			var value = document.getElementById("inputField_" + posId).value;
			
			//	Empty? Convert to zero:
			if (value == "")
			{
				value = 0;
				document.getElementById("inputField_" + posId).value = value;
			}
			
			// Valid number? If no, NOK!
			if (syn_isInt(value) == false)
			{
				return false;
			}
			
			// Negative? If yes, NOK!
			if (value < 0)
			{
				return false;
			}

			//	Set difference. If difference > 0, NOK!
			var ordered = document.getElementById("orderField_" + posId).value;
			var diff = value - ordered;
			document.getElementById("diffField_" + posId).value = diff;
			if (diff > 0)
			{
				return false
			}

			//	Appears to be OK:
			return true;
		}


		// Called on change of the date field:
		function dateChanged()
		{
			document.MainForm.action.value = "reload";
			document.MainForm.submit();
		}


		// Called on change of the VZ DropDown List:
		function vzChanged()
		{
			document.getElementById('selectedVZId').value = document.getElementById('vzListe').value;
			document.MainForm.action.value = "reload";
			document.MainForm.submit();
		}


		// Called on change of the Order DropDown List:
		function orderChanged()
		{
			document.getElementById('selectedOrderId').value = document.getElementById('orderListe').value;
			document.MainForm.action.value = "reload";
			document.MainForm.submit();
		}


		// copy all values
		function copyAll()
		{
			var posIDs = document.getElementsByName("posID");
			for (i = 0; i < posIDs.length; i++)
			{
				var posId = posIDs[i].value;

				//	Skip if already set (= if not empty):
				if (document.getElementById("inputField_" + posId).value != "")		continue;

				copyValue(posId);
			}
		}


		/// copy value from orderField to inputField for row Nr. posId
		function copyValue(posId)
		{
			document.getElementById("inputField_" + posId).value = document.getElementById("orderField_" + posId).value
			validateField(posId);
		}


		function printPage()
		{
			window.print();
		}

</script>
</head>

<body id="bd" class="fs3 FF"  style="padding:10px;">
	<!-- path way
	<div id="ja-pathway">
		<span class="breadcrumbs pathway">
			<a href="default.html?path=Home" class="pathway">Home</a> <img src="pics/arrow.png" alt=""/>
			Liefermengen erfassen
		</span>
	</div>
	<br/>
	-->

	<script language="CACHE" runat="SERVER">
		set userId = $$$UID
		set userLogin = $$$ULOGIN
		set userName = $$$UNAME
		set userOrt = $$$UORT
		set mandantId = $$$MANDANTID

		if ($get(%request.Data("selectedDate",1),"") '= "")
		{
			//	Coming from the UebersichtOffeneLieferungen screen, where sessionParams can not be set >:-(
			set date = $replace($zdate($get(%request.Data("selectedDate",1),""), 15), "/", ".")
			set selectedVZId = $get(%request.Data("selectedVZId",1),"")
			set selectedOrderId = $get(%request.Data("selectedOrder",1),"")

			set $$$SELECTEDDATE = date
			set $$$SELECTEDVZID = selectedVZId
			set $$$SELECTEDORDER = selectedOrderId
		}
		else
		{
			set date = $$$SELECTEDDATE
			set selectedVZId = $$$SELECTEDVZID
			set selectedOrderId = $$$SELECTEDORDER
		}
	</script>

	<table style="width: 100%;" title="Auf dieser Seite können Sie Ihre provisorischen Liefermengen für das gewählte Verteilzentrum, das gewählte Datum und die gewählte Bestellung erfassen.">
		<colgroup>
			<col width="60%"/>
			<col width="40%"/>
		</colgroup>
		<tbody>
			<tr>
				<td><h2 class="contentheading">Liefermengen erfassen</h2></td>
				<td style="text-align: right;"><h3>#($$$UNAME)#&nbsp;(#($$$UORT)#)</h3></td>
			</tr>
		</tbody>
	</table>

	<form name="MainForm" action="LieferbestaetigungSave.csp" method="POST">

		<div class="article-content">

			<table cellspacing="10">
				<thead style="font-size:120%; font-weight:bold;">
					<tr>
						<td>Lieferdatum</td>
						<td>Verteilzentrum</td>
						<td>Bestellung</td>
						<td>Status</td>
					</tr>
				</thead>
				<tbody>
					<tr>
						<td>
							<script language="CACHE" runat="SERVER">
								if (date = "")
								{
									set date = $replace($zdate($horolog, 15), "/", ".")	//	today
								}
							</script>
							<input type="text" id="inputDateField" name="inputDateField" size="10" maxlength="10" value=#(date)# readonly onClick="scwNextAction=dateChanged.runsAfterSCW(this);scwShow(this,event);"/>
						</td>
						<td>
							<select name="vzListe" id="vzListe" size="0" onchange="vzChanged();">
								<script language="CACHE" runat="SERVER">
									set first = ""
									set found = $$$NO

									set resultSet = ##class(%ResultSet).%New("DBPlattform.AF.BestKopfAF:ListeVZAdrIdByDatum")
									set status = resultSet.Execute(mandantId, userId, $zdateh(date, 15))
									while (resultSet.Next())
									{
										set vzAdressOid = $get(resultSet.Data("AbnehmerAdresse"))
										set vz = ##class(DBAdressen.Adresse).%OpenId(vzAdressOid)

										if (first = "")		set first = vzAdressOid

										//	If selectedVZId is undefined, set it to the 1st element of the select list
										//	And let the 1st element of the list be selected.
										//	If selectedVZId is defined, select the corresponding element of the select list
										if (selectedVZId = "") {
											set selected = "selected"
											set selectedVZId = vzAdressOid
											set found = $$$YES
										}
										else {
											if (selectedVZId = vzAdressOid) {
												set selected = "selected"
												set found = $$$YES
											}
											else {
												set selected = ""
											}
										}

										&html<
											<option #(selected)# value="#(vzAdressOid)#">#(vz.Name)#&nbsp;(#(vz.Ort)#)</option>
										>

										kill vz
									}

									do resultSet.Close()

									if (found = $$$NO)		set selectedVZId = first
								</script>
							</select>
							<input type="hidden" name="selectedVZId" id="selectedVZId" value="#(selectedVZId)#"/>
						</td>
						<td>
							<select name="orderListe" id="orderListe" size="0" onchange="orderChanged();">
								<script language="CACHE" runat="SERVER">

									set first = ""
									set found = $$$NO

									set resultSet = ##class(%ResultSet).%New("DBPlattform.AF.BestKopfAF:ListeBestellungenXNetGui")
									set status = resultSet.Execute(mandantId, selectedVZId, userId, $zdateh(date, 15))
									while (resultSet.Next())
									{
										set bestellId = $get(resultSet.Data("ID"))
										set bestellNr = $get(resultSet.Data("BestellNr"))

										if (first = "")		set first = bestellId

										//	If selectedOrderId is undefined, set it to the 1st element of the select list
										//	And let the 1st element of the list be selected.
										//	If selectedOrderId is defined, select the corresponding element of the select list
										if (selectedOrderId = "") {
											set selected = "selected"
											set selectedOrderId = bestellId
											set found = $$$YES
										}
										else {
											if (selectedOrderId = bestellId) {
												set selected = "selected"
												set found = $$$YES
											}
											else {
												set selected = ""
											}
										}

										&html<
											<option #(selected)# value="#(bestellId)#">#(bestellNr)#</option>
										>
									}

									do resultSet.Close()

									if (found = $$$NO)		set selectedOrderId = first

									set provBestId = ""
									set selectedOrder = ##class(DBPlattform.BestKopf).%OpenId(selectedOrderId)
									if (selectedOrder '= $$$NULLOREF)
									{
										set provBestId = selectedOrder.%Id()
										if (selectedOrder.DefinitiveBestellung '= "")
										{
											//	Order exists and is definitive:
											set selectedOrderNr = selectedOrder.BestellNr
											set istBestellungDefinitiv = $$$YES
											set definitiveBestellungId = selectedOrder.DefinitiveBestellung.%Id()
											set downloadButtonsDisabled = ""
											set downloadButtonProvDisabled = ""
											set definitiveBestellungString = "definitiv"
											set mutationsDisabled = "disabled"
											set bgColorDisabled = "style='background-color:lightgray;'"
										}
										else
										{
											if (selectedOrder.IsAuftragDefinitiv)
											{
												//	Order exists and is definitive:
												set selectedOrderNr = selectedOrder.BestellNr
												set istBestellungDefinitiv = $$$YES
												set definitiveBestellungId = ""
												set downloadButtonsDisabled = "disabled"
												set downloadButtonProvDisabled = "disabled"
												set definitiveBestellungString = "definitiv (leer)"
												set mutationsDisabled = "disabled"
												set bgColorDisabled = "style='background-color:lightgray;'"
											}
											else
											{
												//	Order exists and is NOT definitive:
												if (##class(DBPlattform.SD.Zeitraster).AllowEdit(##class(DBPlattform.SD.Zeitraster).GetParamLiefermengeErfasst(), $zdateh(date, 15), ##class(DBDebiKredi.Debitor).GetIdByAdrOid($$$MANDANTID, selectedVZId), selectedOrder.IsNachbestellung))
												{
													//	Editing is allowed:
													set selectedOrderNr = selectedOrder.BestellNr
													set istBestellungDefinitiv = $$$NO
													set definitiveBestellungId = ""
													set downloadButtonsDisabled = "disabled"
													set downloadButtonProvDisabled = ""
													set definitiveBestellungString = "provisorisch"
													set mutationsDisabled = ""
													set bgColorDisabled = ""
												}
												else
												{
													//	Editing is NOT allowed:
													set selectedOrderNr = selectedOrder.BestellNr
													set istBestellungDefinitiv = $$$NO
													set definitiveBestellungId = ""
													set downloadButtonsDisabled = "disabled"
													set downloadButtonProvDisabled = ""
													set definitiveBestellungString = "provisorisch"
													set mutationsDisabled = "disabled"
													set bgColorDisabled = "style='background-color:lightgray;'"
												}
											}
										}
									}
									else
									{
										//	Order does not exist:
										set selectedOrderNr = ""
										set istBestellungDefinitiv = $$$NO
										set definitiveBestellungId = ""
										set downloadButtonsDisabled = "disabled"
										set downloadButtonProvDisabled = "disabled"
										set definitiveBestellungString = ""
										set mutationsDisabled = "disabled"
										set bgColorDisabled = "style='background-color:lightgray;'"
									}

								</script>
							</select>
							<input type="hidden" name="selectedOrderId" id="selectedOrderId" value="#(selectedOrderId)#"/>
						</td>
						<td style="font-weight:bold;">
							#(definitiveBestellungString)#
						</td>
					</tr>
				</tbody>
			</table>
			<p/>

			<table style="text-align: left; width: 100%;" border="1" cellspacing="0">
				<thead>
					<tr style="text-align: left;">
						<td style="text-align: center;"><strong>Pos</strong></td>
						<td style="text-align: left;"><strong>Artikel</strong></td>
						<td style="text-align: left;"><strong>Einheit</strong></td>
						<td style="text-align: right;"><strong>Preis Prod.</strong></td>
						<td style="text-align: right;"><strong>Preis Coop</strong></td>
						<td style="text-align: left;"><strong>Gebinde<br/>Typ</strong></td>
						<td style="text-align: right;"><strong>ME pro<br/>Gebinde</strong></td>
						<td style="text-align: right;"><strong>Angebot<br/>[Gebinde]</strong></td>
						<td style="text-align: left;"><strong>Provisor.<br/>Bestellung<br/>[Gebinde]</strong></td>
						<td style="text-align: left;"><strong>Liefer-<br/>Menge<br/>[Gebinde]</strong></td>
						<td style="text-align: left;"><strong>Definitive<br/>Bestellung<br/>[Gebinde]</strong></td>
						<td style="text-align: left;"><strong>Differenz</strong></td>
						</td>
					</tr>
				</thead>
				<tbody style="text-align: left;">
					<tr>
						<td colspan="9" style="text-align: right; vertical-align: middle;">
							<img style="float:right;" src="pics/arrows.bmp" onclick="copyAll();" #(mutationsDisabled)#/>
							Alle leeren Felder übertragen:&nbsp;
						</td>
						<td colspan="3">&nbsp;</td>
					</tr>

					<script language="CACHE" runat="SERVER">

						set cnt = 1

						set resultSet = ##class(%ResultSet).%New("DBPlattform.AF.BestPosAF:ListePositionen")
						set status = resultSet.Execute(selectedOrderId)
						while (resultSet.Next())
						{
							set bestellMenge = $get(resultSet.Data("MengeBestellung"))
							set moeglicheLiefermenge = $get(resultSet.Data("MoeglicheLiefermenge"))
							set mengeGeliefert = $get(resultSet.Data("MengeGeliefert"))
							
							&html<
								<tr style="text-align: left; padding-left: 60px;">
									<td style="text-align: center;">#(cnt)#</td>
									<td style="text-align: left;">&nbsp;#($get(resultSet.Data("Artikeltext")))#</td>
									<td style="text-align: left;">&nbsp;#($get(resultSet.Data("Einheit")))#</td>
									<td style="text-align: right; padding-right:5px;">&nbsp;#($get(resultSet.Data("PreisProd")))#</td>
									<td style="text-align: right; padding-right:5px;">&nbsp;#($get(resultSet.Data("PreisAbnehmer")))#</td>
									<td style="text-align: left;">&nbsp;#($get(resultSet.Data("Gebinde")))#</td>
									<td style="text-align: right; padding-right:5px;">&nbsp;#($get(resultSet.Data("AnzahlJeGebinde")))#</td>
									<td style="text-align: right; padding-right:5px;">&nbsp;#($get(resultSet.Data("Angebotsmenge")))#</td>
									<td style="text-align: right; vertical-align:middle;">
										<img style="float:right;" src="pics/arrows.bmp" onclick="copyValue('#(cnt)#');" #(mutationsDisabled)#/>
										&nbsp;#(bestellMenge)#&nbsp;
										<input type="hidden"
												id="orderField_#(cnt)#"
												name="orderField_#(cnt)#"
												value=#(bestellMenge)#
										/>
									</td>
									<td style="text-align: left;">&nbsp;
										<input type="text" class="smallNum"
												#(mutationsDisabled)# #(bgColorDisabled)#
												id="inputField_#(cnt)#"
												name="inputField_#(cnt)#"
												value='#(moeglicheLiefermenge)#'
												onchange="checkField('#(cnt)#')"
												tabindex="#(cnt)#"
										/>
									</td>
								>
								
								if (istBestellungDefinitiv = $$$YES)
								{
								&html<
									<td style="text-align: left;">&nbsp;
										<input type="text" class="smallNum"
												#(mutationsDisabled)# #(bgColorDisabled)#
												id="definitivField_#(cnt)#"
												name="definitivField_#(cnt)#"
												value='#(mengeGeliefert)#'
												tabindex="#(cnt)#"
										/>
									</td>
									<td style="text-align: left;">&nbsp;
										<input type="text" class="smallNum"
												disabled style="background-color:lightgray;"
												id="diffField_#(cnt)#"
												name="diffField_#(cnt)#"
												value="#(mengeGeliefert - moeglicheLiefermenge)#"
										/>
									</td>
								>
								}
								else
								{
								&html<
									<td style="text-align: left;">&nbsp;
									</td>
									<td style="text-align: left;">&nbsp;
										<input type="text" class="smallNum"
												disabled style="background-color:lightgray;"
												id="diffField_#(cnt)#"
												name="diffField_#(cnt)#"
												value="#(moeglicheLiefermenge - bestellMenge)#"
										/>
									</td>
								>
								}
								&html<
									<input type="hidden" name="posID" value="#(cnt)#"/>
									<input type="hidden" name="bestellPosId_#(cnt)#" value="#($get(resultSet.Data("ID")))#"/>
								</tr>
							>
							set cnt = cnt + 1
						}

						do resultSet.Close()

						&html<<input type="hidden" name="fieldCount" value="#(cnt - 1)#"/>>

					</script>
				</tbody>
			</table>
		</div>

		<p/>
		<table width="100%">
			<tr>
				<td align="left">
					<input tabindex="#($increment(cnt))#" type="button" value="Speichern" onclick="checkAndSubmitForm();" #(mutationsDisabled)#/>
					<input tabindex="#($increment(cnt))#" type="button" value="Abbrechen" onclick="document.location='Lieferbestaetigung.csp'" #(mutationsDisabled)#/>
				</td>
				<td align="right">
					<input tabindex="#($increment(cnt))#" type="button" value="Download prov. Bestellung" onclick="document.location='Alliance.Agris.Web.PDFDownload.cls?orderId=#(provBestId)#&orderNr=#(selectedOrderNr)#&docType=CSVProv'" #(downloadButtonProvDisabled)#/>
					<input tabindex="#($increment(cnt))#" type="button" value="Download Bestellung" onclick="document.location='Alliance.Agris.Web.PDFDownload.cls?orderId=#(definitiveBestellungId)#&orderNr=#(selectedOrderNr)#&docType=CSV'" #(downloadButtonsDisabled)#/>
					<input tabindex="#($increment(cnt))#" type="button" value="SSCC" onclick="document.location='Alliance.Agris.Web.PDFDownload.cls?orderId=#(definitiveBestellungId)#&orderNr=#(selectedOrderNr)#&docType=SSCC'" #(downloadButtonsDisabled)#/>
					<input tabindex="#($increment(cnt))#" type="button" value="Lieferschein" onclick="document.location='Alliance.Agris.Web.PDFDownload.cls?orderId=#(definitiveBestellungId)#&orderNr=#(selectedOrderNr)#&docType=LS'" #(downloadButtonsDisabled)#/>
					<input tabindex="#($increment(cnt))#" type="button" value="Seite Drucken" onclick="printPage()"/>
				</td>
			</tr>
		</table>

		<big class="err">
			<script language="CACHE" runat="SERVER">
				set err = ..GetErrorMessage($$$YES)
				if (err '= "")
				{
					&html<#(err)#>
				}
			</script>
			&nbsp;
		</big>

		<input type="hidden" name="action" value=""/>

	</form>

</body>
</html>
]]></CSP>


<CSP name="LieferbestaetigungSave.csp" application="/csp/cbt/" default="1"><![CDATA[
<csp:class super="Alliance.Agris.Web.SecurePage">

<script language="Cache" method="OnPreHTTPPage" arguments="" returntype="%Boolean">

	set %response.Redirect = "Lieferbestaetigung.csp"

	set action = $get(%request.Data("action",1),"")
	if (action = "")
	{
		do ..SetErrorMessage("Aktion undefiniert")
		quit $$$OK
	}

	if (action = "reload")
	{
		set $$$SELECTEDVZID = $get(%request.Data("selectedVZId",1),"")
		set $$$SELECTEDDATE = $get(%request.Data("inputDateField",1),"")
		set $$$SELECTEDORDER = $get(%request.Data("selectedOrderId",1),"")

		quit $$$OK
	}

	if (action = "save")
	{
		set status = $$$OK

		set fieldCount = $get(%request.Data("fieldCount", 1),"")

		//	Loop through all inputFields:
		for i=1:1:fieldCount
		{
			set value = $get(%request.Data("inputField_" _ i, 1), 0)
			if (value = "")		set value = 0

			set bestellPosId = %request.Data("bestellPosId_" _ i, 1)
			set bestellPos = ##class(DBPlattform.BestPos).%OpenId(bestellPosId)
			if (bestellPos = $$$NULLOREF)
			{
				do ..SetErrorMessage("Bestellung " _ bestellPosId _ " konnte nicht geöffnet werden!!!")
				quit
			}

			set bestellPos.MoeglicheLiefermenge = value

			set status = bestellPos.%Save()
			if ($$$ISERR(status))
			{
				continue // better: quit???
			}
		}

		if ($$$ISERR(status))
		{
			do ..SetErrorMessage("Fehler beim Speichern der Bestellung: " _ $SYSTEM.Status.GetErrorText(status))
		}
		else
		{
			set status = $$$OK

			set dateH = $zdateh($get(%request.Data("inputDateField",1),""), 15)
			set abnehmerId = ##class(DBDebiKredi.Debitor).GetIdByAdrOid($$$MANDANTID, $get(%request.Data("selectedVZId",1),""))
			set bestellNr = $get(%request.Data("selectedOrderId",1),"")

			set typ = ##class(Alliance.Common.KAL.Code.MessageType).Lieferung()
			set subTyp = ##class(Alliance.Common.KAL.Code.MessageSubType).ProvLiefermengenErfasst()
			set senderTyp = ##class(Alliance.Common.KAL.Code.MessageSenderType).AgrisMExtranet()
			set severity = ##class(Alliance.Common.KAL.Code.MessageSeverity).Info()
			do ##class(Alliance.Common.KAL.Message).new(.status, typ, subTyp, senderTyp, severity, dateH, abnehmerId, $$$UID, bestellNr)

			if ($$$ISERR(status))
			{
				do ..SetErrorMessage(status)
			}
			else
			{
				do ..SetErrorMessage("Gespeichert")
			}
		}

		quit $$$OK
	}

	do ..SetErrorMessage("Ungültige Aktion: " _ action)
	quit $$$OK

</script>

]]></CSP>


<CSP name="UebersichtOffeneLieferungen.CSP" application="/csp/cbt/" default="1"><![CDATA[
<csp:class super="Alliance.Agris.Web.SecurePage">

<script language="Cache" method="OnPreHTTPPage" arguments="" returntype="%Boolean">

	set status = ##class(DBDebiKredi.Kreditor).%ExistsId($$$UID)
	if ($$$ISERR(status))
	{
		set %response.Redirect = "logout.csp"
		do ..SetErrorMessage("Lieferantendaten nicht gefunden!!!")
	}
	quit $$$OK

</script>

<script type="text/javascript">

	function openLieferbestaetigungScreen(datum, abnehmerId, kopfId)
	{
		document.MainForm.selectedDate.value = datum;
		document.MainForm.selectedVZId.value = abnehmerId;
		document.MainForm.selectedOrder.value = kopfId;

		document.MainForm.submit();
	}

</script>

<html>
<head>
	<title>AgrisM - Offene Bestellungen</title>
	<script type="text/javascript" src="js/guiFunctions.js"></script>
	<script type="text/javascript" src="js/scw.js"></script>
	<script type="text/javascript" src="js/prototype-1.6.0.3.js"></script>
	<link rel="stylesheet" href="css/system.css" type="text/css" />
	<link rel="stylesheet" href="css/general.css" type="text/css" />
	<link rel="stylesheet" href="css/template.css" type="text/css" />
	<link rel="stylesheet" href="css/menu.css" type="text/css" />
	<link rel="stylesheet" href="css/header_green_style.css" type="text/css" />
	<link rel="stylesheet" href="css/background_lighter_style.css" type="text/css" />
	<link rel="stylesheet" href="css/elements_green_style.css" type="text/css" />

	<script language="JavaScript">

		var pu = new Ajax.PeriodicalUpdater(
			"",
			"#($$$APPURI)#/Alliance.Agris.Web.AjaxHelper.cls",
			{
				method : 'get',
				frequency : 10,
				parameters : {action:'offeneBestellungen', userId:'#($$$UID)#'},
				onSuccess : function(t) {
					updateListeOffeneBestellungen(t.responseText);
				},
				onFailure : function() {
					alert("Fehler im AJAX Updater!");
				}
			}
		);
		//pu.stop();

		var updates = 0;

		function updateListeOffeneBestellungenNop(data){}
		function updateListeOffeneBestellungen(data)
		{
			//alert("AJAX Update");

			var list = data.evalJSON(true);
			updates++;

			for (i=0, cnt=1; i<list.length; i++, cnt++)
			{
				if ($('tdBestellNr_' + cnt) == null)
				{	// insert new row:
					var row = '';
					row += '	<tr style="text-align: left; padding-left: 60px;"';
					row += '		onClick="javascript:openLieferbestaetigungScreen(#{lieferDatum}, #{abnehmerId}, #{bestellKopfId})"';
					row += '		onmouseover="rowOver(this)" onmouseout="rowOut(this)">';
					row += '		<td style="text-align: center;">';
					row += '			#{cnt}';
					row += '		</td>';
					row += '		<td style="text-align: left;">';
					row += '			&nbsp;#{lieferDatumKlartext}';
					row += '		</td>';
					row += '		<td style="text-align: left;">';
					row += '			&nbsp;#{abnehmerAnzeige}';
					row += '		</td>';
					row += '		<td style="text-align: left;"';
					row += '			id = "tdBestellNr_#{cnt}">';
					row += '			&nbsp;#{bestellNr}';
					row += '		</td>';
					row += '		<td style="text-align: left;">';
					row += '			&nbsp;#{liefermengeErfasst}';
					row += '		</td>';
					row += '		<td style="text-align: left;"';
					row += '			id = "tdDefinitiveBestellung_#{cnt}">';
					row += '			&nbsp;#{definitiveBestellungString}';
					row += '		</td>';
					row += '	</tr>';

					row = row.interpolate({cnt: cnt, lieferDatum: list[i].lieferDatum, abnehmerId: list[i].abnehmerId, bestellKopfId: list[i].bestellKopfId, lieferDatumKlartext: list[i].lieferDatumKlartext, abnehmerAnzeige: list[i].abnehmerAnzeige, bestellNr: list[i].bestellNr, liefermengeErfasst: list[i].liefermengeErfasst, definitiveBestellungString: list[i].definitiveBestellungString});
					$('listeOffeneLieferungen').insert(row);
				}
				else
				{	// update exitsting row:
					$("tdDefinitiveBestellung_" + cnt).innerHTML = "&nbsp;" + list[i].definitiveBestellungString;
				}
			}
		}

	</script>
</head>

<body id="bd" class="fs3 FF"  style="padding:10px;">
	<!-- path way
	<div id="ja-pathway">
		<span class="breadcrumbs pathway">
			<a href="default.html?path=Home" class="pathway">Home</a> <img src="pics/arrow.png" alt=""/>
			Übersicht Offene Lieferungen
		</span>
	</div>
	<br/>
	-->

	<script language="CACHE" runat="SERVER">
		set userId = $$$UID
		set userLogin = $$$ULOGIN
		set userName = $$$UNAME
		set userOrt = $$$UORT
		set mandantId = $$$MANDANTID
	</script>

	<table style="width: 100%;" title="Auf dieser Seite werden alle offenen Lieferungen angezeigt. Durch Anwählen einer Lieferung werden deren Details angezeigt.">
		<colgroup>
			<col width="60%"/>
			<col width="40%"/>
		</colgroup>
		<tbody>
			<tr>
				<td><h2 class="contentheading">Offene Bestellungen</h2></td>
				<td style="text-align: right;"><h3>#(userName)#&nbsp;(#(userOrt)#)</h3></td>
			</tr>
		</tbody>
	</table>

	<form name="MainForm" action="Lieferbestaetigung.csp" method="POST">

		<div class="article-content">
			<big class="err">
				<script language="CACHE" runat="SERVER">
					set err = ..GetErrorMessage($$$YES)
					if (err '= "")
					{
						&html<#(err)#>
					}
				</script>
				&nbsp;
			</big>
			<p/>

			<table id="listeOffeneLieferungen" style="text-align: left; width: 100%;" border="1" cellspacing="0">
				<thead>
					<tr style="text-align: left;">
						<td style="text-align: center;"><strong>Pos</strong></td>
						<td style="text-align: left;"><strong>Lieferdatum</strong></td>
						<td style="text-align: left;"><strong>Coop Bestellung</strong></td>
						<td style="text-align: left;"><strong>Liefermenge<br/>erfasst</strong></td>
						<td style="text-align: left;"><strong>Bestellungs-<br/>Status</strong></td>
						<td style="text-align: left;"><strong>Kunde / VZ</strong></td>
						</td>
					</tr>
				</thead>
				<tbody style="text-align: left;">
					<!--	Empty table body will be filled dynamically using AJAX		-->

					<script language="CACHE" runat="SERVER">

					set cnt = 1

					set userId = $$$UID

					set resultSet = ##class(%ResultSet).%New("DBPlattform.AF.BestKopfAF:ListeOffeneBestellungenXNetGui")
					set status = resultSet.Execute(userId)
					while (resultSet.Next())
					{
						set bestellKopfId = $get(resultSet.Data("ID"))
						set bestellNr = $get(resultSet.Data("BestellNr"))
						set lieferDatum = $get(resultSet.Data("Lieferdatum"))
						set lieferDatumKlartext = $replace($zdate(lieferDatum, 15), "/", ".")
						set liefermengeErfasst = $case($get(resultSet.Data("LiefermengeErfasst")),0:"nein",:"ja")
						set abnehmerId = $get(resultSet.Data("AbnehmerAdressId"))
						set abnehmerAnzeige = $get(resultSet.Data("AbnehmerName")) _ " (" _ $get(resultSet.Data("AbnehmerOrt")) _ ")"

						set definitiveBestellung = $get(resultSet.Data("DefinitiveBestellung"))
						set isAuftragDefinitiv = $get(resultSet.Data("IsAuftragDefinitiv"))
						set isDefinitiveBestellung = ((definitiveBestellung '= "") || (isAuftragDefinitiv = $$$YES))
						set definitiveBestellungDisabled = $case(isDefinitiveBestellung,"0":"disabled",:"")
						set definitiveBestellungString = $case(isDefinitiveBestellung,"0":"provisorisch",:"definitiv")
						//set definitiveBestellungDisabled = $case($get(resultSet.Data("DefinitiveBestellung")),"":"disabled",:"")
						//set definitiveBestellungString = $case($get(resultSet.Data("DefinitiveBestellung")),"":"provisorisch",:"definitiv")

						&html<
							<tr style="text-align: left; padding-left: 60px;"
								onClick="javascript:openLieferbestaetigungScreen(#(lieferDatum)#, #(abnehmerId)#, #(bestellKopfId)#)"
								onmouseover="rowOver(this)" onmouseout="rowOut(this)">
								<td style="text-align: center;">
									#(cnt)#
								</td>
								<td style="text-align: left;">
									&nbsp;#(lieferDatumKlartext)#
								</td>
								<td style="text-align: left;"
									id = "tdBestellNr_#(cnt)#">
									&nbsp;#(bestellNr)#
								</td>
								<td style="text-align: left;">
									&nbsp;#(liefermengeErfasst)#
								</td>
								<td style="text-align: left;"
									id = "tdDefinitiveBestellung_#(cnt)#">
									&nbsp;#(definitiveBestellungString)#
								<td style="text-align: left;">
									&nbsp;#(abnehmerAnzeige)#
								</td>
								</td>
							</tr>
						>

						set cnt = cnt + 1
					}

					do resultSet.Close()

					</script>

				</tbody>
			</table>
		</div>

		<input type="hidden" name="action" value=""/>

		<input type="hidden" name="selectedDate" value=""/>
		<input type="hidden" name="selectedVZId" value=""/>
		<input type="hidden" name="selectedOrder" value=""/>

	</form>

	<span class="article_separator">&nbsp;</span>

</body>
</html>
]]></CSP>


<CSP name="css/alliance.css" application="/csp/cbt/" default="1"><![CDATA[
body {
	padding: 0px;
	margin: 0px;
	font-family: verdana, helvetica;
	font-size: 12pt;
}

div.headerBar {
	height: 50px;
	padding: 10px 0 0 10;
	background-color: 000050;
	color: white;
	font-size: 14pt;
	font-weight: bold;
}

th {
	vertical-align:top;
	text-align: left;
}

tr.b0 {
	background-color: #DDDDDD;
}

tr.b1 {
}

th.data {
	vertical-align:top;
	text-align: left;
	background-color: #000050;
	color: white;
	padding: 5px 2 5 10;
}

th.dataNB {
	vertical-align:top;
	text-align: left;
	color: #606060;
	padding: 5px 2 5 10;
}

td.data {
	vertical-align:top;
	text-align: left;
	padding: 5px 2 5 10;
}

th.dataN {
	vertical-align:top;
	text-align: right;
	background-color: #000050;
	color: white;
	padding: 5px 10 5 2;
}

td.dataN {
	vertical-align:top;
	text-align: right;
	padding: 5px 10 5 2;
}

.pflicht {
	background: #6699FF;
}
]]></CSP>


<CSP name="css/background_lighter_style.css" application="/csp/cbt/" default="1"><![CDATA[
/* BONUS TYPOGRAPHY STYLES
--------------------------------------------------------- */
pre, .code {
	border-left: 5px solid #999999;
	background: #F6F6F6;
}

blockquote span.open {
	background: url(pics/so-q.gif) no-repeat left top;
}

blockquote span.close {
	background: url(pics/sc-q.gif) no-repeat bottom right;
}

/* Quote hilight */
.quote-hilite {
	border: 1px solid #CACACC;
	background: #FFFFFF;
}

/* Small quote */
.small-quote span.open-quote {
	background: url(pics/so-q.gif) no-repeat center left;
}

.small-quote span.close-quote {
	background: url(pics/sc-q.gif) no-repeat center right;
}

.small-quote span.author {
	border-top: 1px solid #DCDDE0;
}

/* Rropcap */
.dropcap {
	color: #999999;
}

/* Tips, Error, Message, Hightlight*/
.error {
	color: #666666;
}

.message {
	color: #999999;
}

.tips {
	color: #666666;
}

.highlight {
	background: #FFFFCC;
}

/* Note Style */
p.stickynote {
	border: 1px solid #CACACC;
	background: url(pics/sticky-bg.gif) no-repeat 5px center #FFFFFF;
}

p.download {
	border: 1px solid #CACACC;
	background: url(pics/download-bg.gif) no-repeat 5px center #FFFFFF;
}

/* Check list */
ul.checklist li {
	background: url(pics/checklist-bg.gif) no-repeat 0 3px;
}

/* Small checklist */
ul.small-checklist li {
	background: url(pics/icon_list.gif) no-repeat 0 3px;
}

/* Check list */
ul.stars li {
	background: url(pics/star-bg.gif) no-repeat 0 3px;
}

/* Bignumber */
.bignumber {
	background: url(pics/ol-bg.gif) no-repeat top left;
	color: #7BA566;
}

/* Talking box. Thinking box. */
div.bubble1 span.author,
div.bubble2 span.author,
div.bubble3 span.author,
div.bubble4 span.author {
}

div.bubble1 div {
	background: url(pics/bub1-br.gif) no-repeat bottom right;
}

div.bubble1 div div {
	background: url(pics/bub1-bl.gif) no-repeat bottom left;
}

div.bubble1 div div div {
	background: url(pics/bub1-tr.gif) no-repeat top right;
}

div.bubble1 div div div div {
	background: url(pics/bub1-tl.gif) no-repeat top left;
}

div.bubble2 div {
	background: url(pics/bub2-br.gif) no-repeat bottom right;
}

div.bubble2 div div {
	background: url(pics/bub2-bl.gif) no-repeat bottom left;
}

div.bubble2 div div div {
	background: url(pics/bub2-tr.gif) no-repeat top right;
}

div.bubble2 div div div div {
	background: url(pics/bub2-tl.gif) no-repeat top left;
}

div.bubble3 div {
	background: url(pics/bub3-br.gif) no-repeat bottom right;
}

div.bubble3 div div {
	background: url(pics/bub3-bl.gif) no-repeat bottom left;
}

div.bubble3 div div div {
	background: url(pics/bub3-tr.gif) no-repeat top right;
}

div.bubble3 div div div div {
	background: url(pics/bub3-tl.gif) no-repeat top left;
}

div.bubble4 div {
	background: url(pics/bub4-br.gif) no-repeat bottom right;
}

div.bubble4 div div {
	background: url(pics/bub4-bl.gif) no-repeat bottom left;
}

div.bubble4 div div div {
	background: url(pics/bub4-tr.gif) no-repeat top right;
}

div.bubble4 div div div div {
	background: url(pics/bub4-tl.gif) no-repeat top left;
}

/* Legend */
.legend-title {
	background: #FFFFFF;
}

.legend {
	border: 1px solid #CACACC;
	background: #FFFFFF;
}

/* MAIN LAYOUT DIVS
--------------------------------------------------------- */
#ja-wrapper {
	background: #F2F2F2;
}

#ja-containerwrap {
	background: url(pics/cw-bg1.gif) repeat-y 50% 0;
}

#ja-containerwrap2 {
	background: url(pics/cw-bg2.gif) no-repeat 50% 0;
}

#ja-container {
	background: url(pics/c-bg1.gif) repeat-y 18% 0;
}

#ja-container2 {
	padding: 20px 0;
	background: url(pics/c-bg2.gif) no-repeat 18% 0;
}

/* Full */
#ja-containerwrap-f {
	background: url(pics/cwf-bg.gif) repeat-x top left #FFFFFF;
}

/* Full left */
#ja-containerwrap-fl {
	background: url(pics/cwf-bg.gif) repeat-x top left #FFFFFF;
}

/* Full right */
#ja-containerwrap-fr {
	background: url(pics/cw-bg1.gif) repeat-y 50% 0;
}

#ja-containerwrap-fr #ja-containerwrap2 {
	background: url(pics/cw-bg2.gif) no-repeat 50% 0;
}

/* Module rounded */
div.module h3 {
	border-bottom: 1px solid #E9E9E9;
	color: #7BA566;
}

div.module_black,
div.module_green,
div.module_blue,
div.module_red,
div.module {
	background: url(pics/b-br.gif) no-repeat bottom right #FFFFFF;
}

div.module div {
	background: url(pics/b-bl.gif) no-repeat bottom left;
}

div.module div div {
	background: url(pics/b-tr.gif) no-repeat top right;
}

div.module div div div {
	background: url(pics/b-tl.gif) no-repeat top left;
}

div.module_text span {
	background: #FFFFFF;
}

div.module_text {
	background: url(pics/bt-br.gif) no-repeat bottom right #F6F6F6;
}

div.module_text div {
	background: url(pics/bt-bl.gif) no-repeat bottom left;
}

div.module_text div div {
	background: url(pics/bt-tr.gif) no-repeat top right;
}

div.module_text div div div {
	background: url(pics/bt-tl.gif) no-repeat top left;
}

/* red */
div.module_black h3,
div.module_green h3,
div.module_blue h3,
div.module_red h3 {
	border-bottom: 1px solid #F6F6F6;
	color: #FFFFFF;
}

div.module_red {
	background: url(pics/br-br.gif) no-repeat bottom right #BF0000;
	color: #FFFFFF;
}

div.module_red div {
	background: url(pics/br-bl.gif) no-repeat bottom left;
}

div.module_red div div {
	background: url(pics/br-tr.gif) no-repeat top right;
}

div.module_red div div div {
	padding: 0 15px 10px;
	background: url(pics/br-tl.gif) no-repeat top left;
}

/* blue */
div.module_blue {
	background: url(pics/bb-br.gif) no-repeat bottom right #025291;
	color: #FFFFFF;
}

div.module_blue div {
	background: url(pics/bb-bl.gif) no-repeat bottom left;
}

div.module_blue div div {
	background: url(pics/bb-tr.gif) no-repeat top right;
}

div.module_blue div div div {
	background: url(pics/bb-tl.gif) no-repeat top left;
}

/* green */
div.module_green {
	background: url(pics/bg-br.gif) no-repeat bottom right #7BA566;
	color: #FFFFFF;
}

div.module_green div {
	background: url(pics/bg-bl.gif) no-repeat bottom left;
}

div.module_green div div {
	background: url(pics/bg-tr.gif) no-repeat top right;
}

div.module_green div div div {
	padding: 0 15px 10px;
	background: url(pics/bg-tl.gif) no-repeat top left;
}

/* black */
div.module_black {
	background: url(pics/bl-br.gif) no-repeat bottom right #333333;
	color: #FFFFFF;
}

div.module_black div {
	background: url(pics/bl-bl.gif) no-repeat bottom left;
}

div.module_black div div {
	background: url(pics/bl-tr.gif) no-repeat top right;
}

div.module_black div div div {
	background: url(pics/bl-tl.gif) no-repeat top left;
}

/* JOOMLA STYLE
--------------------------------------------------------- */
a.readon {
	border: 1px solid #ECECEC;
	background: url(pics/arrow.png) no-repeat 5px 48%;
	color: #006699;
}

a.readon:hover, a.readon:active, a.readon:focus {
	border: 1px solid #DDDDDD;
	background: url(pics/arrow.png) no-repeat 5px 48% #F6F6F6;
}

ul.menu li.active a {
	background-color: #ECECEC;
}

ul.menu li a:hover,
ul.menu li a:active,
ul.menu li a:focus {
	background-color: #F6F6F6;
}
]]></CSP>


<CSP name="css/elements_green_style.css" application="/csp/cbt/" default="1"><![CDATA[
a {
	color: #7BA566;
	text-decoration: underline;
}

a.readon {
	color: #7BA566;
}

#ja-container2 ul.menu li li a:hover,
#ja-container2 ul.menu li li a:active,
#ja-container2 ul.menu li li a:focus {
	color: #7BA566;
}

.bignumber {
	color: #7BA566;
}

#ja-container2 ul.menu li.active a {
	color: #7BA566;
}

div.moduletable h3,
div.moduletable_menu h3,
div.moduletable_text h3 {
	color: #7BA566;
}

div.module h3 {
	color: #7BA566;
}
]]></CSP>


<CSP name="css/general.css" application="/csp/cbt/" default="1"><![CDATA[
.err {
	color:red;
}

input.small {
	width:50px;
}

input.smallNum {
	width:50px;
	text-align:right;
}

/* Form validation */
.invalid { border-color: #ff0000; }
label.invalid { color: #ff0000; }

/* Buttons */
#editor-xtd-buttons {
	padding: 5px;
}

.button2-left,
.button2-right,
.button2-left div,
.button2-right div {
	float: left;
}

.button2-left a,
.button2-right a,
.button2-left span,
.button2-right span {
	display: block;
	height: 22px;
	float: left;
	line-height: 22px;
	font-size: 11px;
	color: #666;
	cursor: pointer;
}

.button2-left span,
.button2-right span {
	cursor: default;
	color: #999;
}

.button2-left .page a,
.button2-right .page a,
.button2-left .page span,
.button2-right .page span {
	padding: 0 6px;
}

.page span {
	color: #000;
	font-weight: bold;
}

.button2-left a:hover,
.button2-right a:hover {
	text-decoration: none;
	color: #0B55C4;
}

.button2-left a,
.button2-left span {
	padding: 0 24px 0 6px;
}

.button2-right a,
.button2-right span {
	padding: 0 6px 0 24px;
}

.button2-left {
	background: url(../pics/j_button2_left.png) no-repeat;
	float: left;
	margin-left: 5px;
}

.button2-right {
	background: url(../pics/j_button2_right.png) 100% 0 no-repeat;
	float: left;
	margin-left: 5px;
}

.button2-left .image {
	background: url(../pics/j_button2_image.png) 100% 0 no-repeat;
}

.button2-left .readmore {
	background: url(../pics/j_button2_readmore.png) 100% 0 no-repeat;
}

.button2-left .pagebreak {
	background: url(../pics/j_button2_pagebreak.png) 100% 0 no-repeat;
}

.button2-left .blank {
	background: url(../pics/j_button2_blank.png) 100% 0 no-repeat;
}

/* Tooltips */
div.tooltip {
	float: left;
	background: #ffc;
	border: 1px solid #D4D5AA;
	padding: 5px;
	max-width: 200px;
	z-index:13000;
}

div.tooltip h4 {
	padding: 0;
	margin: 0;
	font-size: 95%;
	font-weight: bold;
	margin-top: -15px;
	padding-top: 15px;
	padding-bottom: 5px;
	background: url(../pics/selector-arrow.png) no-repeat;
}

div.tooltip p {
	font-size: 90%;
	margin: 0;
}

/* Caption fixes */
.img_caption.left {
	float: left;
	margin-right: 1em;
}

.img_caption.right {
	float: right;
	margin-left: 1em;
}

.img_caption.left p {
	clear: left;
	text-align: center;
}

.img_caption.right p {
	clear: right;
	text-align: center;
}

.img_caption  {
text-align: center!important;
}

/* Calendar */
a img.calendar {
	width: 16px;
	height: 16px;
	margin-left: 3px;
	background: url(../pics/calendar.png) no-repeat;
	cursor: pointer;
	vertical-align: middle;
}
]]></CSP>


<CSP name="css/header_green_style.css" application="/csp/cbt/" default="1"><![CDATA[
#ja-headerwrap {
	background: #7BA566;
	color: #E4EFDF;
}

.ja-headermask {
	background: url(pics/header-mask.png) no-repeat top right;
}

#ja-header a {
	color: #E4EFDF;
}

h1.logo-text a {
	color: #E4EFDF !important;
}

p.site-slogan {
	background: #9DBF8C;
}

#ja-search {
	background: url(pics/icon-search.gif) no-repeat center left;
}

#ja-search .inputbox {
	border: 1px solid #658854;
	color: #E4EFDF;
	background: #9DBF8C;
}

.sectiontableheader {
	background: #88B074;
}

#ja-botslwrap {
	background: #7BA566;
	color: #E4EFDF;
}

.ja-box-right div.moduletable {
	background: url(pics/vdot2.gif) repeat-y left;
}

.ja-box-center div.moduletable {
	background: url(pics/vdot2.gif) repeat-y left;
}

#ja-botsl a {
	color: #E4EFDF;
}

/*--------------------------- VISUAL ----------------------------*/
/* -------- All levels -------- */
#ja-mainnavwrap {
	border-top: 1px solid #A4C594;
	background: #88B074;
}
#ja-mainnav ul, #ja-mainnav li {
	background-image: none;
	list-style: none;
}

#ja-mainnav span.separator {
	display:none;
}

/* -------- Top level -------- */
#ja-mainnav > ul {
	background-color: #88B074;
	padding-left: 20px;
}

#ja-mainnav > ul > li {
	background-color: #88B074;
	border-left: 1px solid #A4C594;
	border-right: 1px solid #658854;
	margin-right: 1px;
}

#ja-mainnav > ul > li.active {
	background: url(../../../pics/arrow2.png) no-repeat bottom center #88B074;
	color: #E4EFDF;
}

#ja-mainnav > ul > li:hover,
#ja-mainnav > ul > li:active,
#ja-mainnav > ul > li:focus {
	background: url(../../../pics/arrow2.png) no-repeat bottom center #9DBF8C;
	color: #E4EFDF;
}

/* -------- sub-levels -------- */
#ja-mainnav ul ul li {
	border-left: 1px solid #A4C594;
	border-right: 1px solid #658854;
	border-top: 1px solid #A4C594;
	border-bottom: 1px solid #658854;
	margin-bottom: 1px;
}

#ja-mainnav li ul { /* second-level lists */
	background-color: #9DBF8C;
}

#ja-mainnav li a {
	color: #E4EFDF;
	font-weight: bold;
	text-decoration: none;
}

#ja-mainnav ul ul  li:hover,
#ja-mainnav ul ul  li:active,
#ja-mainnav ul ul  li:focus {
	background: #88B074;
	color: #E4EFDF;
}
]]></CSP>


<CSP name="css/menu.css" application="/csp/cbt/" default="1"><![CDATA[
/* Default Joomla! Menu */
#ja-container2 ul.menu {
	margin: 0;
	padding: 1px 0 0;
	list-style: none;
	background: url(../pics/hdot2.gif) repeat-x top;
}

#ja-container2 ul.menu li {
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
}

#ja-container2 ul.menu li a {
	padding: 2px 0;
	display: block;
	color: #333333;
	background: url(../pics/hdot2.gif) repeat-x bottom;
	text-decoration: none;
	outline: none;
}

#ja-container2 ul.menu li a span {
	padding-left: 16px;
	background: url(../pics/bullet.gif) no-repeat 5px 5px;
}

#ja-container2 ul.menu li a:hover,
#ja-container2 ul.menu li a:active,
#ja-container2 ul.menu li a:focus {
	color: #333333;
	background: url(../pics/hdot2.gif) repeat-x bottom #DDDDDD;
	text-decoration: none;
}

#ja-container2 ul.menu li.active a {
	background: url(../pics/hdot2.gif) repeat-x bottom #FFFFFF;
	color: #7BA566;
	font-weight: bold;
	text-decoration: none;
}

#ja-container2 ul.menu li.active a span {
	background: url(../pics/bullet3.gif) no-repeat 5px 5px;
}

#ja-container2 ul.menu li li a span {
	background: none;
}

#ja-container2 ul.menu li ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#ja-container2 ul.menu li li {
	padding: 0 0 0 15px !important;
	list-style: none;
}

#ja-container2 ul.menu li li a {
	color: #333333;
	background: none !important;
	font-size: 92%;
	font-weight: normal;
}

#ja-container2 ul.menu li li a:hover,
#ja-container2 ul.menu li li a:active,
#ja-container2 ul.menu li li a:focus {
	color: #006699;
}

#ja-container2 ul.menu li li a span {
	background: url(../pics/bullet.gif) no-repeat 5px;
	font-weight: normal;
}]]></CSP>


<CSPBase64 name="css/overcast/images/ui-bg_flat_0_aaaaaa_40x100.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAACgAAABkCAYAAAD0ZHJ6AAAAe0lEQVRoge3OMQHAIBAAMcC/kjdZ
JHTI0A4XBdkz86wfO18H3hRUBVVBVVAVVAVVQVVQFVQFVUFVUBVUBVVBVVAVVAVVQVVQFVQFVUFV
UBVUBVVBVVAVVAVVQVVQFVQFVUFVUBVUBVVBVVAVVAVVQVVQFVQFVUFVUBVUF8O8A8WdY6opAAAA
AElFTkSuQmCC
</CSPBase64>


<CSPBase64 name="css/overcast/images/ui-bg_flat_0_eeeeee_40x100.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAACgAAABkCAYAAAD0ZHJ6AAAAe0lEQVRoge3OMQHAIBAAMcC/1rdQ
JHTI0A4XBdkz86wfO18H3hRUBVVBVVAVVAVVQVVQFVQFVUFVUBVUBVVBVVAVVAVVQVVQFVQFVUFV
UBVUBVVBVVAVVAVVQVVQFVQFVUFVUBVUBVVBVVAVVAVVQVVQFVQFVUFVUBVUF+LCBJG13Yr3AAAA
AElFTkSuQmCC
</CSPBase64>


<CSPBase64 name="css/overcast/images/ui-bg_flat_55_c0402a_40x100.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAACgAAABkCAYAAAGDY0LsAAAAnElEQVRoge3XsQ2DQBTA0JBxmILR
2SypgyiQ/FMgnsvTx/gOCcSyb+vndeB9XHjQ4uJAfjk9kMtXG7zToGdt0OCDBy+/AMbvTEhISEhI
SPh3oQ89ISEhISEhISEhISEhIeEdheN/9NOM73gagRWBFYEVgRWBFYEVgRWBFYEVgRWBFYEVgRWB
FYEVgRWBFYEVgRWBFYEVgRWBFYGVL/CLEJFcQFBRAAAAAElFTkSuQmCC
</CSPBase64>


<CSPBase64 name="css/overcast/images/ui-bg_flat_55_eeeeee_40x100.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAACgAAABkCAYAAAD0ZHJ6AAAAe0lEQVRoge3OMQHAIBAAMcC/1rdQ
JHTI0A4XBdkz86wfO18H3hRUBVVBVVAVVAVVQVVQFVQFVUFVUBVUBVVBVVAVVAVVQVVQFVQFVUFV
UBVUBVVBVVAVVAVVQVVQFVQFVUFVUBVUBVVBVVAVVAVVQVVQFVQFVUFVUBVUF+LCBJG13Yr3AAAA
AElFTkSuQmCC
</CSPBase64>


<CSPBase64 name="css/overcast/images/ui-bg_glass_100_f8f8f8_1x400.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAAEAAAGQCAYAAABvWArbAAAAMElEQVQ4jWP49evXfyYGBgaGUWKU
GCWGLfHv3z9kLiMjI4YSNDEilIwSo8QoMZgIAKFIChIb0oV5AAAAAElFTkSuQmCC
</CSPBase64>


<CSPBase64 name="css/overcast/images/ui-bg_glass_35_dddddd_1x400.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAAEAAAGQCAYAAABvWArbAAAANElEQVQ4jWN4+PDhfyYGBgaGUWKU
GCWGLfHnzx8MMUZGRmQCIcHExISsBI01SowSo8TgJABiKQnKbW5lAgAAAABJRU5ErkJggg==
</CSPBase64>


<CSPBase64 name="css/overcast/images/ui-bg_glass_60_eeeeee_1x400.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAAEAAAGQCAYAAABvWArbAAAANUlEQVQ4jWP49OnTfyYGBgaGUWKU
GCWGLfHnzx9kLiMjI3YuExMThl6ELJq2UWKUGCUGEwEA5OoJ+sqBVz4AAAAASUVORK5CYII=
</CSPBase64>


<CSPBase64 name="css/overcast/images/ui-bg_inset-hard_75_999999_1x100.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAYAAABHLFpgAAAAOUlEQVQYld3PsQkAMQwEwdOe1H+s
au1EYBdgePhkYMNVdy8k6YdEhLAtAJGZk1U1ebB9JzB8//GYDa+XBBj7lOKtAAAAAElFTkSuQmCC
</CSPBase64>


<CSPBase64 name="css/overcast/images/ui-bg_inset-soft_50_c9c9c9_1x100.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAYAAABHLFpgAAAAJ0lEQVQYlWM4efLkfyYGBgaG4UUw
MjIis4jgYiOwKcFm/MD7lxQCAHIWBFFvLVt/AAAAAElFTkSuQmCC
</CSPBase64>


<CSPBase64 name="css/overcast/images/ui-icons_3383bb_256x240.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAQAAAADwCAMAAADYSUr5AAAA7VBMVEU0grw0grw0grw0grw0grw0
grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0
grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0
grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0
grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grw0grwUWic/AAAA
TnRSTlMAGBAyBAhQv4OZLiJUcEBmYBoSzQwgPBZCSEoeWiYwUiyFNIeBw2rJz8c4RBy9uXyrtaWN
qa2zKP2fJO8KBgKPo2KVoa9s351GPm5+kWho0kj9AAAPhUlEQVR4nO1djWLbthEGyUiq5YSSLXtp
7FpLOmfzkmxr126tmi2p03RJ1/Xe/3EGgARxPyAgRbIk2/hkSz4CJO4+HsE7AJSVysjI2AMUUOxa
hZ2iANhzBtZWr4BoIRSYAVN5u4QwDwQDRbcwfUi5KS3wFuDmFnQLa4Dtb//cqktwD5QEFFwfUs7P
oCCA7y4bEJVFizcIob8KmhAplwwqVjt+9FBl3uINQniwEiryEyw9JHqGpQdEFNi+B4QQ7QOiHhys
IPoAxUqxvdvvA9K42bsAv4S2fxfYOe57IJSRkZGRkZGxx7jxSHDHcRBXQMTyIjInBgHwBJ/bEx8P
EANC+uhbpSSggCBAVODVabpI1S/k4WLZpTn6NpMhoX9Y40hxYERFpMcqUs4AloCtDQdID1YhnyXZ
2hLjAYWiO9Dy1PDB7tPhIqLx+uMB8grZaR+Qxl2/C2RkZGRkZGRk7A7rBf7J0DR5/LUTjzUPIPSP
GvQJiVJiB7kcQCiUOJrcFNtDZIf2xarQ3aGvLNxAVIFAabz90BFiBIlycTBhgWwOWCH0FLYHlPqw
HaCvcIn2ZbosCevfPTRiFFcgvHukCjWwrc3GrGh1fsAof8EaUReKXkCB4/MzFNo97qLpFiKFYv/k
NR5YQxQbQEofkZ2OuEOHqqT6gFTpru8CN7x/+jaZkZGRkZGRcV+x/rLUNcMMqUAscgnFocmpqkTz
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
</CSPBase64>


<CSPBase64 name="css/overcast/images/ui-icons_454545_256x240.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAQAAAADwCAMAAADYSUr5AAAA7VBMVEVERkRERkRERkRERkRERkRE
RkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRE
RkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRE
RkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRE
RkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkQfbf86AAAA
TnRSTlMAGBAyBAhQv4OZLiJUcEBmYBoSzQwgPBZCSEoeWiYwUiyFNIeBw2rJz8c4RBy9uXyrtaWN
qa2zKP2fJO8KBgKPo2KVoa9s351GPm5+kWho0kj9AAAPhUlEQVR4nO1djWLbthEGyUiq5YSSLXtp
7FpLOmfzkmxr126tmi2p03RJ1/Xe/3EGgARxPyAgRbIk2/hkSz4CJO4+HsE7AJSVysjI2AMUUOxa
hZ2iANhzBtZWr4BoIRSYAVN5u4QwDwQDRbcwfUi5KS3wFuDmFnQLa4Dtb//cqktwD5QEFFwfUs7P
oCCA7y4bEJVFizcIob8KmhAplwwqVjt+9FBl3uINQniwEiryEyw9JHqGpQdEFNi+B4QQ7QOiHhys
IPoAxUqxvdvvA9K42bsAv4S2fxfYOe57IJSRkZGRkZGxx7jxSHDHcRBXQMTyIjInBgHwBJ/bEx8P
EANC+uhbpSSggCBAVODVabpI1S/k4WLZpTn6NpMhoX9Y40hxYERFpMcqUs4AloCtDQdID1YhnyXZ
2hLjAYWiO9Dy1PDB7tPhIqLx+uMB8grZaR+Qxl2/C2RkZGRkZGRk7A7rBf7J0DR5/LUTjzUPIPSP
GvQJiVJiB7kcQCiUOJrcFNtDZIf2xarQ3aGvLNxAVIFAabz90BFiBIlycTBhgWwOWCH0FLYHlPqw
HaCvcIn2ZbosCevfPTRiFFcgvHukCjWwrc3GrGh1fsAof8EaUReKXkCB4/MzFNo97qLpFiKFYv/k
NR5YQxQbQEofkZ2OuEOHqqT6gFTpru8CN7x/+jaZkZGRkZGRcV+x/rLUNcMMqUAscgnFocmpqkTz
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
</CSPBase64>


<CSPBase64 name="css/overcast/images/ui-icons_70b2e1_256x240.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAQAAAADwCAMAAADYSUr5AAAA7VBMVEV0suR0suR0suR0suR0suR0
suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0
suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0
suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0
suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suR0suQhucn1AAAA
TnRSTlMAGBAyBAhQv4OZLiJUcEBmYBoSzQwgPBZCSEoeWiYwUiyFNIeBw2rJz8c4RBy9uXyrtaWN
qa2zKP2fJO8KBgKPo2KVoa9s351GPm5+kWho0kj9AAAPhUlEQVR4nO1djWLbthEGyUiq5YSSLXtp
7FpLOmfzkmxr126tmi2p03RJ1/Xe/3EGgARxPyAgRbIk2/hkSz4CJO4+HsE7AJSVysjI2AMUUOxa
hZ2iANhzBtZWr4BoIRSYAVN5u4QwDwQDRbcwfUi5KS3wFuDmFnQLa4Dtb//cqktwD5QEFFwfUs7P
oCCA7y4bEJVFizcIob8KmhAplwwqVjt+9FBl3uINQniwEiryEyw9JHqGpQdEFNi+B4QQ7QOiHhys
IPoAxUqxvdvvA9K42bsAv4S2fxfYOe57IJSRkZGRkZGxx7jxSHDHcRBXQMTyIjInBgHwBJ/bEx8P
EANC+uhbpSSggCBAVODVabpI1S/k4WLZpTn6NpMhoX9Y40hxYERFpMcqUs4AloCtDQdID1YhnyXZ
2hLjAYWiO9Dy1PDB7tPhIqLx+uMB8grZaR+Qxl2/C2RkZGRkZGRk7A7rBf7J0DR5/LUTjzUPIPSP
GvQJiVJiB7kcQCiUOJrcFNtDZIf2xarQ3aGvLNxAVIFAabz90BFiBIlycTBhgWwOWCH0FLYHlPqw
HaCvcIn2ZbosCevfPTRiFFcgvHukCjWwrc3GrGh1fsAof8EaUReKXkCB4/MzFNo97qLpFiKFYv/k
NR5YQxQbQEofkZ2OuEOHqqT6gFTpru8CN7x/+jaZkZGRkZGRcV+x/rLUNcMMqUAscgnFocmpqkTz
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
</CSPBase64>


<CSPBase64 name="css/overcast/images/ui-icons_999999_256x240.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAQAAAADwCAMAAADYSUr5AAAA7VBMVEWcmpycmpycmpycmpycmpyc
mpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpyc
mpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpyc
mpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpyc
mpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpycmpxfpQiSAAAA
TnRSTlMAGBAyBAhQv4OZLiJUcEBmYBoSzQwgPBZCSEoeWiYwUiyFNIeBw2rJz8c4RBy9uXyrtaWN
qa2zKP2fJO8KBgKPo2KVoa9s351GPm5+kWho0kj9AAAPhUlEQVR4nO1djWLbthEGyUiq5YSSLXtp
7FpLOmfzkmxr126tmi2p03RJ1/Xe/3EGgARxPyAgRbIk2/hkSz4CJO4+HsE7AJSVysjI2AMUUOxa
hZ2iANhzBtZWr4BoIRSYAVN5u4QwDwQDRbcwfUi5KS3wFuDmFnQLa4Dtb//cqktwD5QEFFwfUs7P
oCCA7y4bEJVFizcIob8KmhAplwwqVjt+9FBl3uINQniwEiryEyw9JHqGpQdEFNi+B4QQ7QOiHhys
IPoAxUqxvdvvA9K42bsAv4S2fxfYOe57IJSRkZGRkZGxx7jxSHDHcRBXQMTyIjInBgHwBJ/bEx8P
EANC+uhbpSSggCBAVODVabpI1S/k4WLZpTn6NpMhoX9Y40hxYERFpMcqUs4AloCtDQdID1YhnyXZ
2hLjAYWiO9Dy1PDB7tPhIqLx+uMB8grZaR+Qxl2/C2RkZGRkZGRk7A7rBf7J0DR5/LUTjzUPIPSP
GvQJiVJiB7kcQCiUOJrcFNtDZIf2xarQ3aGvLNxAVIFAabz90BFiBIlycTBhgWwOWCH0FLYHlPqw
HaCvcIn2ZbosCevfPTRiFFcgvHukCjWwrc3GrGh1fsAof8EaUReKXkCB4/MzFNo97qLpFiKFYv/k
NR5YQxQbQEofkZ2OuEOHqqT6gFTpru8CN7x/+jaZkZGRkZGRcV+x/rLUNcMMqUAscgnFocmpqkTz
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
</CSPBase64>


<CSPBase64 name="css/overcast/images/ui-icons_fbc856_256x240.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAQAAAADwCAMAAADYSUr5AAAA7VBMVEX8ylT8ylT8ylT8ylT8ylT8
ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8
ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8
ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8
ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylT8ylQ+MLsaAAAA
TnRSTlMAGBAyBAhQv4OZLiJUcEBmYBoSzQwgPBZCSEoeWiYwUiyFNIeBw2rJz8c4RBy9uXyrtaWN
qa2zKP2fJO8KBgKPo2KVoa9s351GPm5+kWho0kj9AAAPhUlEQVR4nO1djWLbthEGyUiq5YSSLXtp
7FpLOmfzkmxr126tmi2p03RJ1/Xe/3EGgARxPyAgRbIk2/hkSz4CJO4+HsE7AJSVysjI2AMUUOxa
hZ2iANhzBtZWr4BoIRSYAVN5u4QwDwQDRbcwfUi5KS3wFuDmFnQLa4Dtb//cqktwD5QEFFwfUs7P
oCCA7y4bEJVFizcIob8KmhAplwwqVjt+9FBl3uINQniwEiryEyw9JHqGpQdEFNi+B4QQ7QOiHhys
IPoAxUqxvdvvA9K42bsAv4S2fxfYOe57IJSRkZGRkZGxx7jxSHDHcRBXQMTyIjInBgHwBJ/bEx8P
EANC+uhbpSSggCBAVODVabpI1S/k4WLZpTn6NpMhoX9Y40hxYERFpMcqUs4AloCtDQdID1YhnyXZ
2hLjAYWiO9Dy1PDB7tPhIqLx+uMB8grZaR+Qxl2/C2RkZGRkZGRk7A7rBf7J0DR5/LUTjzUPIPSP
GvQJiVJiB7kcQCiUOJrcFNtDZIf2xarQ3aGvLNxAVIFAabz90BFiBIlycTBhgWwOWCH0FLYHlPqw
HaCvcIn2ZbosCevfPTRiFFcgvHukCjWwrc3GrGh1fsAof8EaUReKXkCB4/MzFNo97qLpFiKFYv/k
NR5YQxQbQEofkZ2OuEOHqqT6gFTpru8CN7x/+jaZkZGRkZGRcV+x/rLUNcMMqUAscgnFocmpqkTz
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
</CSPBase64>


<CSP name="css/overcast/jquery-ui-1.8.6.custom.css" application="/csp/cbt/" default="1"><![CDATA[
/*
 * jQuery UI CSS Framework 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Theming/API
 */

/* Layout helpers
----------------------------------*/
.ui-helper-hidden { display: none; }
.ui-helper-hidden-accessible { position: absolute; left: -99999999px; }
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.ui-helper-clearfix { display: inline-block; }
/* required comment for clearfix to work in Opera \*/
* html .ui-helper-clearfix { height:1%; }
.ui-helper-clearfix { display:block; }
/* end clearfix */
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }


/* Interaction Cues
----------------------------------*/
.ui-state-disabled { cursor: default !important; }


/* Icons
----------------------------------*/

/* states and images */
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }


/* Misc visuals
----------------------------------*/

/* Overlays */
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


/*
 * jQuery UI CSS Framework 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Theming/API
 *
 * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Trebuchet%20MS,%20Helvetica,%20Arial,%20sans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=6px&bgColorHeader=dddddd&bgTextureHeader=02_glass.png&bgImgOpacityHeader=35&borderColorHeader=bbbbbb&fcHeader=444444&iconColorHeader=999999&bgColorContent=c9c9c9&bgTextureContent=05_inset_soft.png&bgImgOpacityContent=50&borderColorContent=aaaaaa&fcContent=333333&iconColorContent=999999&bgColorDefault=eeeeee&bgTextureDefault=02_glass.png&bgImgOpacityDefault=60&borderColorDefault=cccccc&fcDefault=3383bb&iconColorDefault=70b2e1&bgColorHover=f8f8f8&bgTextureHover=02_glass.png&bgImgOpacityHover=100&borderColorHover=bbbbbb&fcHover=599fcf&iconColorHover=3383bb&bgColorActive=999999&bgTextureActive=06_inset_hard.png&bgImgOpacityActive=75&borderColorActive=999999&fcActive=ffffff&iconColorActive=454545&bgColorHighlight=eeeeee&bgTextureHighlight=01_flat.png&bgImgOpacityHighlight=55&borderColorHighlight=ffffff&fcHighlight=444444&iconColorHighlight=3383bb&bgColorError=c0402a&bgTextureError=01_flat.png&bgImgOpacityError=55&borderColorError=c0402a&fcError=ffffff&iconColorError=fbc856&bgColorOverlay=eeeeee&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=80&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=60&thicknessShadow=4px&offsetTopShadow=-4px&offsetLeftShadow=-4px&cornerRadiusShadow=0pxdow=0px
 */


/* Component containers
----------------------------------*/
.ui-widget { font-family: Trebuchet MS, Helvetica, Arial, sans-serif; font-size: 1.1em; }
.ui-widget .ui-widget { font-size: 1em; }
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Trebuchet MS, Helvetica, Arial, sans-serif; font-size: 1em; }
.ui-widget-content { border: 1px solid #aaaaaa; background: #c9c9c9 url(images/ui-bg_inset-soft_50_c9c9c9_1x100.png) 50% bottom repeat-x; color: #333333; }
.ui-widget-content a { color: #333333; }
.ui-widget-header { border: 1px solid #bbbbbb; background: #dddddd url(images/ui-bg_glass_35_dddddd_1x400.png) 50% 50% repeat-x; color: #444444; font-weight: bold; }
.ui-widget-header a { color: #444444; }

/* Interaction states
----------------------------------*/
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #cccccc; background: #eeeeee url(images/ui-bg_glass_60_eeeeee_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #3383bb; }
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #3383bb; text-decoration: none; }
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #bbbbbb; background: #f8f8f8 url(images/ui-bg_glass_100_f8f8f8_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #599fcf; }
.ui-state-hover a, .ui-state-hover a:hover { color: #599fcf; text-decoration: none; }
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #999999; background: #999999 url(images/ui-bg_inset-hard_75_999999_1x100.png) 50% 50% repeat-x; font-weight: bold; color: #ffffff; }
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #ffffff; text-decoration: none; }
.ui-widget :active { outline: none; }

/* Interaction Cues
----------------------------------*/
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight  {border: 1px solid #ffffff; background: #eeeeee url(images/ui-bg_flat_55_eeeeee_40x100.png) 50% 50% repeat-x; color: #444444; }
.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #444444; }
.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #c0402a; background: #c0402a url(images/ui-bg_flat_55_c0402a_40x100.png) 50% 50% repeat-x; color: #ffffff; }
.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #ffffff; }
.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #ffffff; }
.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary,  .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }

/* Icons
----------------------------------*/

/* states and images */
.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_999999_256x240.png); }
.ui-widget-content .ui-icon {background-image: url(images/ui-icons_999999_256x240.png); }
.ui-widget-header .ui-icon {background-image: url(images/ui-icons_999999_256x240.png); }
.ui-state-default .ui-icon { background-image: url(images/ui-icons_70b2e1_256x240.png); }
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_3383bb_256x240.png); }
.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_3383bb_256x240.png); }
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_fbc856_256x240.png); }

/* positioning */
.ui-icon-carat-1-n { background-position: 0 0; }
.ui-icon-carat-1-ne { background-position: -16px 0; }
.ui-icon-carat-1-e { background-position: -32px 0; }
.ui-icon-carat-1-se { background-position: -48px 0; }
.ui-icon-carat-1-s { background-position: -64px 0; }
.ui-icon-carat-1-sw { background-position: -80px 0; }
.ui-icon-carat-1-w { background-position: -96px 0; }
.ui-icon-carat-1-nw { background-position: -112px 0; }
.ui-icon-carat-2-n-s { background-position: -128px 0; }
.ui-icon-carat-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -64px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -64px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-off { background-position: -96px -144px; }
.ui-icon-radio-on { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-start { background-position: -80px -160px; }
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }


/* Misc visuals
----------------------------------*/

/* Corner radius */
.ui-corner-tl { -moz-border-radius-topleft: 6px; -webkit-border-top-left-radius: 6px; border-top-left-radius: 6px; }
.ui-corner-tr { -moz-border-radius-topright: 6px; -webkit-border-top-right-radius: 6px; border-top-right-radius: 6px; }
.ui-corner-bl { -moz-border-radius-bottomleft: 6px; -webkit-border-bottom-left-radius: 6px; border-bottom-left-radius: 6px; }
.ui-corner-br { -moz-border-radius-bottomright: 6px; -webkit-border-bottom-right-radius: 6px; border-bottom-right-radius: 6px; }
.ui-corner-top { -moz-border-radius-topleft: 6px; -webkit-border-top-left-radius: 6px; border-top-left-radius: 6px; -moz-border-radius-topright: 6px; -webkit-border-top-right-radius: 6px; border-top-right-radius: 6px; }
.ui-corner-bottom { -moz-border-radius-bottomleft: 6px; -webkit-border-bottom-left-radius: 6px; border-bottom-left-radius: 6px; -moz-border-radius-bottomright: 6px; -webkit-border-bottom-right-radius: 6px; border-bottom-right-radius: 6px; }
.ui-corner-right {  -moz-border-radius-topright: 6px; -webkit-border-top-right-radius: 6px; border-top-right-radius: 6px; -moz-border-radius-bottomright: 6px; -webkit-border-bottom-right-radius: 6px; border-bottom-right-radius: 6px; }
.ui-corner-left { -moz-border-radius-topleft: 6px; -webkit-border-top-left-radius: 6px; border-top-left-radius: 6px; -moz-border-radius-bottomleft: 6px; -webkit-border-bottom-left-radius: 6px; border-bottom-left-radius: 6px; }
.ui-corner-all { -moz-border-radius: 6px; -webkit-border-radius: 6px; border-radius: 6px; }

/* Overlays */
.ui-widget-overlay { background: #eeeeee url(images/ui-bg_flat_0_eeeeee_40x100.png) 50% 50% repeat-x; opacity: .80;filter:Alpha(Opacity=80); }
.ui-widget-shadow { margin: -4px 0 0 -4px; padding: 4px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .60;filter:Alpha(Opacity=60); -moz-border-radius: 0pxdow=0px; -webkit-border-radius: 0pxdow=0px; border-radius: 0pxdow=0px; }/*
 * jQuery UI Resizable 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Resizable#theming
 */
.ui-resizable { position: relative;}
.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;}
.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }
.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; }
.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; }
.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; }
.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; }
.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }
.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/*
 * jQuery UI Selectable 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Selectable#theming
 */
.ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; }
/*
 * jQuery UI Accordion 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Accordion#theming
 */
/* IE/Win - Fix animation bug - #4615 */
.ui-accordion { width: 100%; }
.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; }
.ui-accordion .ui-accordion-li-fix { display: inline; }
.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; }
.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; }
.ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; }
.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }
.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; }
.ui-accordion .ui-accordion-content-active { display: block; }/*
 * jQuery UI Autocomplete 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Autocomplete#theming
 */

.ui-autocomplete { position: absolute; cursor: default;}	

/* workarounds */
* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */

ul li {
	background: none !important;
}
/*
 * jQuery UI Menu 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Menu#theming
 */
.ui-menu {
	list-style:none;
	padding: 2px;
	margin: 0;
	display:block;
	float: left;
}
.ui-menu .ui-menu {
	margin-top: -3px;
}
.ui-menu .ui-menu-item {
	margin:0;
	padding: 0;
	zoom: 1;
	float: left;
	clear: left;
	width: 100%;
}
.ui-menu .ui-menu-item a {
	text-decoration:none;
	display:block;
	padding:.2em .4em;
	line-height:1.5;
	zoom:1;
}
.ui-menu .ui-menu-item a.ui-state-hover,
.ui-menu .ui-menu-item a.ui-state-active {
	font-weight: normal;
	margin: -1px;
}
/*
 * jQuery UI Button 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Button#theming
 */
.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */
.ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */
button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */
.ui-button-icons-only { width: 3.4em; } 
button.ui-button-icons-only { width: 3.7em; } 

/*button text element */
.ui-button .ui-button-text { display: block; line-height: 1.4;  }
.ui-button-text-only .ui-button-text { padding: .4em 1em; }
.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; }
.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; }
.ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; }
.ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; }
/* no icon support for input elements, provide padding by default */
input.ui-button { padding: .4em 1em; }

/*button icon element(s) */
.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; }
.ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; }
.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .5em; }
.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }
.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }

/*button sets*/
.ui-buttonset { margin-right: 7px; }
.ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; }

/* workarounds */
button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */
/*
 * jQuery UI Dialog 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Dialog#theming
 */
.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; }
.ui-dialog .ui-dialog-titlebar { padding: .5em 1em .3em; position: relative;  }
.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .2em 0; } 
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; }
.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; }
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
.ui-draggable .ui-dialog-titlebar { cursor: move; }
/*
 * jQuery UI Slider 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Slider#theming
 */
.ui-slider { position: relative; text-align: left; }
.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }
.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; }

.ui-slider-horizontal { height: .8em; }
.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }
.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }
.ui-slider-horizontal .ui-slider-range-min { left: 0; }
.ui-slider-horizontal .ui-slider-range-max { right: 0; }

.ui-slider-vertical { width: .8em; height: 100px; }
.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; }
.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }
.ui-slider-vertical .ui-slider-range-min { bottom: 0; }
.ui-slider-vertical .ui-slider-range-max { top: 0; }/*
 * jQuery UI Tabs 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Tabs#theming
 */
.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; }
.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; }
.ui-tabs .ui-tabs-hide { display: none !important; }
/*
 * jQuery UI Datepicker 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Datepicker#theming
 */
.ui-datepicker { width: 17em; padding: .2em .2em 0; }
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
.ui-datepicker .ui-datepicker-prev { left:2px; }
.ui-datepicker .ui-datepicker-next { right:2px; }
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
.ui-datepicker .ui-datepicker-next-hover { right:1px; }
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
.ui-datepicker select.ui-datepicker-month, 
.ui-datepicker select.ui-datepicker-year { width: 49%;}
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0;  }
.ui-datepicker td { border: 0; padding: 1px; }
.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi { width:auto; }
.ui-datepicker-multi .ui-datepicker-group { float:left; }
.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
.ui-datepicker-row-break { clear:both; width:100%; }

/* RTL support */
.ui-datepicker-rtl { direction: rtl; }
.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
.ui-datepicker-rtl .ui-datepicker-group { float:right; }
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }

/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
.ui-datepicker-cover {
    display: none; /*sorry for IE5*/
    display/**/: block; /*sorry for IE5*/
    position: absolute; /*must have*/
    z-index: -1; /*must have*/
    filter: mask(); /*must have*/
    top: -4px; /*must have*/
    left: -4px; /*must have*/
    width: 200px; /*must have*/
    height: 200px; /*must have*/
}/*
 * jQuery UI Progressbar 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Progressbar#theming
 */
.ui-progressbar { height:2em; text-align: left; }
.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }]]></CSP>


<CSP name="css/system.css" application="/csp/cbt/" default="1"><![CDATA[
/* OpenID icon style */
input.system-openid, input.com-system-openid {
   background: url(pics/login-bg.gif) no-repeat;
   background-color: #fff;
   background-position: 0 50%;
   color: #000;
   padding-left: 18px;
}


/* Unpublished */
.system-unpublished {
background: #e8edf1;
border-top: 4px solid #c4d3df;
border-bottom: 4px solid #c4d3df;
}

/* System Messages */
#system-message    { margin-bottom: 10px; padding: 0;}
#system-message dt { font-weight: bold; }
#system-message dd { margin: 0; font-weight: bold; text-indent: 30px; }
#system-message dd ul { color: #0055BB; margin-bottom: 10px; list-style: none; padding: 10px; border-top: 3px solid #84A7DB; border-bottom: 3px solid #84A7DB;}

/* System Standard Messages */
#system-message dt.message { display: none; }
#system-message dd.message {  }

/* System Error Messages */
#system-message dt.error { display: none; }
#system-message dd.error ul { color: #c00; background-color: #E6C0C0; border-top: 3px solid #DE7A7B; border-bottom: 3px solid #DE7A7B;}

/* System Notice Messages */
#system-message dt.notice { display: none; }
#system-message dd.notice ul { color: #c00; background: #EFE7B8; border-top: 3px solid #F0DC7E; border-bottom: 3px solid #F0DC7E;}

/* Debug */
#system-debug     { color: #ccc; background-color: #fff; padding: 10px; margin: 10px; }
#system-debug div { font-size: 11px;}
]]></CSP>


<CSP name="css/template.css" application="/csp/cbt/" default="1"><![CDATA[
/* COMMON STYLE
--------------------------------------------------------- */
html, body, form, fieldset {
	margin: 0;
	padding: 0;
}

body {
	color: #000000;
	background: #FFFFFF;
	font-family: Arial, Helvetica, sans-serif;
	line-height: 150%;
}

body#bd {
	color: #333333;
	background: #F2F2F2;
}

body.contentpane {
	width: auto; /* Printable Page */
	margin: 1em 2em;
	line-height: 1.3em;
	margin: 0px 0px 0px 0px;
	font-size: 12px;
	color: #333;
}

body.fs1 {
	font-size: 10px;
}

body.fs2{
	font-size: 11px;
}

body.fs3{
	font-size: 12px;
}

body.fs4{
	font-size: 13px;
}

body.fs5{
	font-size: 14px;
}

body.fs6{
	font-size: 15px;
}

/* Normal link */
a {
	color: #006699;
	text-decoration: underline;
}

a:hover, a:active, a:focus {
	color: #333333;
	text-decoration: underline;
}

/* Title text */
.contentheading, .componentheading, .blog_more strong, h1, h2, h3, h4 {
	font-family: "Segoe UI", Arial, Helvetica, sans-serif;
}

/* Small text */
small, .small, .smalldark, .mosimage_caption, .createby, .createdate, .modifydate, a.readon, .img_caption {
	color: #666666;
	font-size: 92%;
}

/* Heading */
h1 {
	font-size: 180%;
}

h2 {
	font-size: 150%;
}

h3 {
	font-size: 125%;
}

h4 {
	font-size: 100%;
	text-transform: uppercase;
}

p, pre, blockquote, ul, ol, h1, h2, h3, h4, h5, h6 {
	margin: 1em 0;
	padding: 0;
}

ul {
	list-style: none;
}

ul li {
	padding-left: 30px;
	background: url(../pics/bullet.gif) no-repeat 18px 8px;
	line-height: 180%;
}

ol li {
	margin-left: 35px;
	line-height: 180%;
}

th {
	padding: 5px;
	font-weight: bold;
	text-align: left;
}

fieldset {
	border: none;
	padding: 10px 5px;
	background: url(../pics/hdot2.gif) repeat-x top;
}

fieldset a {
	font-weight: bold;
}

hr {
	border-top: 1px solid #CCCCCC;
	border-right: 0;
	border-left: 0;
	border-bottom: 0;
	height: 1px;
}

td, div {
	font-size: 100%;
}

img {
	border: none;
}
/* FORM
--------------------------------------------------------- */
form {
	margin: 0;
	padding: 0;
}

form label {
	cursor: pointer;
}

input, select, textarea, .inputbox {
	padding: 3px 5px;
	font-family: Tahoma, Arial, Helvetica, sans-serif;
	font-size: 100%;
}

.button {
	padding: 3px 5px;
	border: 1px solid #333333;
	background: url(../pics/grad1.gif) repeat-x top #333333;
	color: #CCCCCC;
	font-size: 85%;
	text-transform: uppercase;
}

.button:hover, .button:focus {
	border: 1px solid #999999;
	background: #333333;
	color: #FFFFFF;
}

* html .button {
	padding: 2px 0 !important; /*IE 6*/
}

*+html .button {
	padding: 2px 0 !important; /*IE 7*/
}

.inputbox {
	border: 1px solid #CCCCCC;
	background: #FFFFFF;
}

.inputbox:hover, .inputbox:focus {
	background: #FFFFCC;
}

/* BONUS TYPOGRAPHY STYLES
--------------------------------------------------------- */
pre, .code {
	padding: 10px 15px;
	margin: 5px 0 15px;
	border-left: 5px solid #999999;
	background: #FFFFFF;
	font: 1em/1.5 "Courier News", monospace;
}

blockquote {
	padding: 1em 40px 1em 15px;
}

blockquote span.open {
	padding: 0 0 0 20px;
	background: url(../pics/so-q.gif) no-repeat left top;
}

blockquote span.close {
	padding: 0 20px 0 0;
	background: url(../pics/sc-q.gif) no-repeat bottom right;
}

/* Quote hilight */
.quote-hilite {
	padding: 10px 15px;
	margin: 0;
	border: 1px solid #CACACC;
	background: #FFFFFF;
}

/* Small quote */
.small-quote {
	margin: 0;
	padding: 0;
	background: none;
}

.small-quote span.open-quote {
	margin: 0;
	padding-left: 20px;
	background: url(../pics/so-q.gif) no-repeat center left;
}

.small-quote span.close-quote {
	margin: 0;
	padding-right: 20px;
	background: url(../pics/sc-q.gif) no-repeat center right;
}

.small-quote span.author {
	padding: 2px 5px 2px 20px;
	border-top: 1px solid #DCDDE0;
	margin: 0.5em 0 0;
	display: block;
	background: url(../pics/author.gif) no-repeat 5px 4px #EAEBEE;
	font-size: 90%;
	text-transform: uppercase;
}

/* Rropcap */
.dropcap {
	float: left;
	padding: 4px 8px 0 0;
	display: block;
	color: #999999;
	font: 50px/40px Georgia, Times, serif;
}

/* Tips, Error, Message, Hightlight*/
p.error {
	padding-left: 25px;
	color: #BF0000;
	background: url(../pics/icon-error.gif) no-repeat top left;
}

p.message {
	padding-left: 25px;
	color: #006699;
	background: url(../pics/icon-info.gif) no-repeat top left;
}

p.tips {
	padding-left: 25px;
	color: #EE9600;
	background: url(../pics/icon-tips.gif) no-repeat top left;
}

.highlight {
	padding: 1px 5px;
	background: #FFFFCC;
	font-weight: bold;
}

/* Note Style */
p.stickynote {
	padding: 10px 0px 10px 40px;
	border: 1px solid #CACACC;
	background: url(../pics/sticky-bg.gif) no-repeat 5px center #FFFFFF;
}

p.download {
	padding: 10px 0px 10px 40px;
	border: 1px solid #CACACC;
	background: url(../pics/download-bg.gif) no-repeat 5px center #FFFFFF;
}

.blocknumber {
	clear: both;
	padding: 5px 15px 10px;
	position: relative;
}

/* Check list */
ul.checklist {
	list-style: none;
}

ul.checklist li {
	margin-left: 15px;
	padding: 0 0 5px 20px;
	background: url(../pics/checklist-bg.gif) no-repeat 0 3px;
}

/* Small checklist */
ul.small-checklist {
	list-style: none;
}

ul.small-checklist li {
	margin-left: 15px;
	padding: 0 0 5px 20px;
	background: url(../pics/icon_list.gif) no-repeat 0 3px;
}

/* Check list */
ul.stars {
	list-style: none;
}

ul.stars li {
	margin-left: 15px;
	padding: 0px 0 5px 20px;
	background: url(../pics/star-bg.gif) no-repeat 0 3px;
}

/* Bignumber */
.bignumber {
	float: left;
	margin-right: 8px;
	padding: 6px 7px;
	display: block;
	background: url(../pics/ol-bg.gif) no-repeat top left;
	color: #7BA566;
	font: bold 20px/normal Arial, sans-serif;
}

/* Talking box. Thinking box. */
div.bubble1, div.bubble2, div.bubble3, div.bubble4 {
	margin: 15px 0;
}

div.bubble1 span.author,
div.bubble2 span.author,
div.bubble3 span.author,
div.bubble4 span.author {
	padding-left: 15px;
	margin-left: 15px;
	background: url(../pics/author.gif) no-repeat center left;
	font-weight: bold;
}

div.bubble1 div {
	margin: 0;
	width: 100%;
	background: url(../pics/bub1-br.gif) no-repeat bottom right;
}

div.bubble1 div div {
	background: url(../pics/bub1-bl.gif) no-repeat bottom left;
}

div.bubble1 div div div {
	background: url(../pics/bub1-tr.gif) no-repeat top right;
}

div.bubble1 div div div div {
	background: url(../pics/bub1-tl.gif) no-repeat top left;
}

div.bubble1 div div div div div {
	margin: 0;
	padding: 15px 15px 30px 15px;
	width: auto;
}

div.bubble2 div {
	margin: 0;
	width: 100%;
	background: url(../pics/bub2-br.gif) no-repeat bottom right;
}

div.bubble2 div div {
	background: url(../pics/bub2-bl.gif) no-repeat bottom left;
}

div.bubble2 div div div {
	background: url(../pics/bub2-tr.gif) no-repeat top right;
}

div.bubble2 div div div div {
	background: url(../pics/bub2-tl.gif) no-repeat top left;
}

div.bubble2 div div div div div {
	margin: 0;
	padding: 15px 15px 35px 15px;
	width: auto;
}

div.bubble3 div {
	margin: 0;
	width: 100%;
	background: url(../pics/bub3-br.gif) no-repeat bottom right;
}

div.bubble3 div div {
	background: url(../pics/bub3-bl.gif) no-repeat bottom left;
}

div.bubble3 div div div {
	background: url(../pics/bub3-tr.gif) no-repeat top right;
}

div.bubble3 div div div div {
	background: url(../pics/bub3-tl.gif) no-repeat top left;
}

div.bubble3 div div div div div {
	margin: 0;
	padding: 15px 15px 50px 15px;
	width: auto;
}

div.bubble4 div {
	margin: 0;
	width: 100%;
	background: url(../pics/bub4-br.gif) no-repeat bottom right;
}

div.bubble4 div div {
	background: url(../pics/bub4-bl.gif) no-repeat bottom left;
}

div.bubble4 div div div {
	background: url(../pics/bub4-tr.gif) no-repeat top right;
}

div.bubble4 div div div div {
	background: url(../pics/bub4-tl.gif) no-repeat top left;
}

div.bubble4 div div div div div {
	margin: 0;
	padding: 15px 15px 55px 15px;
	width: auto;
}

/* Legend */
.legend-title {
	margin: 0;
	padding: 0 3px;
	float: left;
	display: block;
	background: #F6F6F6;
	font-weight: bold;
	position: absolute;
	top: -10px;
	left: 7px;
}

.legend {
	margin: 20px 0;
	padding: 0 10px;
	border: 1px solid #CACACC;
	background: #FFFFFF;
	position: relative;
}

/* JOOMLA STYLE
--------------------------------------------------------- */
table.blog {
}

.article_separator {
	clear: both;
	display: block;
	height: 20px;
}

.article_column {
}

.column_separator {
	padding: 0 25px;
}

/* content tables */
td.sectiontableheader {
  padding: 4px;
  border-right: 1px solid #fff;
}

tr.sectiontableentry0 td,
tr.sectiontableentry1 td,
tr.sectiontableentry2 td {
  padding: 4px;
}

td.sectiontableentry0,
td.sectiontableentry1,
td.sectiontableentry2 {
  padding: 3px;
}

table.contentpane {
	border: none;
	width: 100%;
}

table.contentpaneopen {
	border: none;
	border-collapse: collapse;
	border-spacing: 0;
}

table.contenttoc {
	margin: 0 0 10px 10px;
	padding: 0;
	width: 35%;
	float: right;
}

table.contenttoc a {
	text-decoration: none;
}

table.contenttoc td {
	padding: 1px 5px 1px 25px;
	background: url(../pics/bullet-list.gif) no-repeat 5% 50%;
}

table.contenttoc th {
	padding: 0 0 3PX;
	border-bottom: 1px solid #CCCCCC;
	text-indent: 5px;
}

table.poll {
	padding: 0;
	width: 100%;
	border-collapse: collapse;
}

table.pollstableborder {
	padding: 0;
	width: 100%;
	border: none;
	text-align: left;
}

table.pollstableborder img {
	vertical-align: baseline;
}

table.pollstableborder td {
	padding: 4px!important;
	border-collapse: collapse;
	border-spacing: 0;
}

table.pollstableborder tr.sectiontableentry1 td {
	background: #ECECEC;
}

table.searchintro {
	padding: 10px 0;
	width: 100%;
}

table.searchintro td {
	padding: 5px!important;
}

table.adminform {
}

.adminform .inputbox {
}

.blog_more {
	padding: 10px 0;
	background: url(../pics/hdot.gif) repeat-x top;
}

.blog_more strong {
	margin: 0 0 5px;
	display: block;
	font-size: 125%;
}

.blog_more ul {
	margin: 0;
	padding: 0;
}

.blog_more ul li {
	margin: 0;
	padding: 0 0 0 17px;
	background: url(../pics/bullet.gif) no-repeat 6px 8px;
}

.category {
	font-weight: bold;
}

h1.componentheading, .componentheading {
	padding: 5px 0 15px;
	margin: 0 0 10px;
	background: url(../pics/hdot.gif) repeat-x bottom;
}

.componentheading {
	font-size: 200%;
	font-weight: bold;
}

.contentdescription {
	padding-bottom: 30px;
}

h2.contentheading, .contentheading {
	padding: 5px 0 8px;
	margin: 0;
	font-weight: normal;
}

table.blog .contentheading {
	font-size: 150%;
}

.contentheading {
	font-size: 200%;
}

a.contentpagetitle,
a.contentpagetitle:hover,
a.contentpagetitle:active,
a.contentpagetitle:focus {
	text-decoration: none !important;
}

a.readon {
	float: left;
	margin-top: 10px;
	padding: 1px 5px 1px 14px;
	border: 1px solid #F6F6F6;
	display: block;
	background: url(../pics/arrow.png) no-repeat 5px 48%;
	color: #006699;
	font-weight: bold;
	text-decoration: none;
	text-transform: uppercase;
}

a.readon:hover, a.readon:active, a.readon:focus {
	border: 1px solid #ECECEC;
	background: url(../pics/arrow.png) no-repeat 5px 48% #FFFFFF;
}

table.contentpaneopen td, table.contentpane td {
}

table.contentpaneopen, table.contentpane, table.blog {
	width: 100%;
}

.moduletable {
	padding: 0;
}

ul.pagination {
	margin: 15px auto;
	padding: 10px 0;
	background: url(../pics/hdot.gif) repeat-x top;
}

ul.pagination li {
	margin: 0;
	padding: 0;
	display: inline;
	background: none;
}

ul.pagination li span{
	padding: 2px 5px;
}

ul.pagination a {
	padding: 2px 5px;
	border: 1px solid #F6F6F6;
}

ul.pagination a:hover, ul.pagination a:active, ul.pagination a:focus {
	border: 1px solid #ECECEC;
	background: #FFFFFF;
}

.pagenavbar {
	padding-left: 14px;
}

.pagenavcounter {
	padding: 8px 14px 0 14px;
}

.sectiontableheader {
	padding: 8px 5px;
	background: #444444;
	color: #FFFFFF;
}

.sectiontableheader a {
	color: #FFFFFF;
}

tr.sectiontableentry1 td {
	padding: 8px 5px;
	background: url(../pics/hdot2.gif) repeat-x bottom;
}

tr.sectiontableentry2 td {
	padding: 8px 5px;
	background: url(../pics/hdot2.gif) repeat-x bottom #ECECEC;
}

tr.sectiontableentry1:hover td,
tr.sectiontableentry2:hover td {
	background: url(../pics/hdot2.gif) repeat-x bottom #FFFFCC;
}

.smalldark {
	text-align: left;
}

div.syndicate div {
	text-align: center;
}

.pollstableborder tr.sectiontableentry1 td,
.pollstableborder tr.sectiontableentry2 td {
	background: none;
}

/* META
--------------------------------------------------------- */
.article-tools {
	border-top: 1px solid #DDDDDD;
	width: 100%;
	float: left;
	clear: both;
	margin-bottom: 15px;
	display: block;
	background: #ECECEC;
}

.article-meta {
	padding: 5px;
	width: 80%;
	float: left;
}

.createby {
	padding: 3px 3px 3px 20px;
	background: url(../pics/icon-user.gif) no-repeat 0 2px;
}

.createdate {
	padding: 3px 3px 3px 20px;
	background: url(../pics/icon-date.gif) no-repeat 0 2px;
}

.modifydate {
	width: 100%;
	float: left;
}

div.buttonheading {
	float: right;
	width: 15%;
}

.buttonheading img {
	margin: 7px 5px 0 0;
	border: 0;
	float: right;
}

/* MAIN LAYOUT DIVS
--------------------------------------------------------- */
#ja-wrapper {
	width: 100%;
	margin: 0;
	background: #F2F2F2;
}

#ja-containerwrap {
	background: url(../pics/cw-bg1.gif) repeat-y 50% 0;
}

#ja-containerwrap2 {
	background: url(../pics/cw-bg2.gif) no-repeat 50% 0;
}

#ja-container {
	background: url(../pics/c-bg1.gif) repeat-y 18% 0;
}

#ja-container2 {
	padding: 20px 0;
	background: url(../pics/c-bg2.gif) no-repeat 18% 0;
}

#ja-mainbody-fr #ja-col1 {
	width: 20%;
}

#ja-mainbody-fr #ja-contentwrap {
	width: 80%;
}

#ja-mainbody, #ja-mainbody-fl {
	float: left;
	width: 80%;
}

#ja-mainbody #ja-contentwrap {
	float: right;
	width: 75%;
}

#ja-mainbody-fl #ja-contentwrap {
	float: left;
	width: 100%;
}

#ja-mainbody-f, #ja-mainbody-fr {
	float: none;
	width: 100%;
}

#ja-mainbody-fr #ja-contentwrap {
	width: 74.8%;
	float: right;
}

#ja-mainbody-fr #ja-col1 {
	width: 10%;
	float: left;
}

#ja-mainbody-fr #ja-contentwrap {
	width: 90%;
}

#ja-content {
	padding: 0 20px 0 40px;
}
#ja-contentwrap {
	min-height: 300px;
	height: 5000px;
}
* html #ja-contentwrap {
	height: 300px;
}
#ja-mainbody-fl #ja-content {
	padding-left: 0;
}

#ja-mainbody-f #ja-content {
	padding: 0;
}

/* Full */
#ja-containerwrap-f {
	background: url(../pics/cwf-bg.gif) repeat-x top left #F6F6F6;
}

#ja-containerwrap-f #ja-containerwrap2 {
	background: none;
}

#ja-containerwrap-f #ja-container,
#ja-containerwrap-f #ja-container2 {
	background: none;
}

/* Full left */
#ja-containerwrap-fl {
	background: url(../pics/cwf-bg.gif) repeat-x top left #F6F6F6;
}

#ja-containerwrap-fl #ja-containerwrap2,
#ja-containerwrap-fl #ja-container,
#ja-containerwrap-fl #ja-container2 {
	background: none;
}

/* Full right */
#ja-containerwrap-fr {
	background: url(../pics/cw-bg1.gif) repeat-y 50% 0;
}

#ja-containerwrap-fr #ja-containerwrap2 {
	background: url(../pics/cw-bg2.gif) no-repeat 50% 0;
}

/* HEADER
--------------------------------------------------------- */
#ja-headerwrap {
	background: #333333;
	color: #CCCCCC;
	line-height: normal;
	height: 80px;
}

#ja-header {
	position: relative;
	height: 80px;
}

.ja-headermask {
	width: 602px;
	display: block;
	background: url(../pics/header-mask.png) no-repeat top right;
	height: 80px;
	position: absolute;
	top: 0;
	right: -1px;
}

#ja-header a {
	color: #CCCCCC;
}

h1.logo, h1.logo-text {
	margin: 0 0 0 5px;
	padding: 0;
	font-size: 180%;
	text-transform: uppercase;
}

h1.logo a {
	width: 208px;
	display: block;
	background: url(../pics/logo.png) no-repeat;
	height: 80px;
	position: relative;
	z-index: 100;
}

h1.logo a span {
	position: absolute;
	top: -1000px;
}

h1.logo-text a {
	color: #CCCCCC !important;
	text-decoration: none;
	outline: none;
	position: absolute;
	bottom: 40px;
	left: 5px;
}

p.site-slogan {
	margin: 0;
	padding: 0;
	padding: 2px 5px;
	color: #FFFFFF;
	background: #444444;
	font-size: 92%;
	position: absolute;
	bottom: 20px;
	left: 0;
}

/* Search */
#ja-search {
	padding-left: 20px;
	background: url(../pics/icon-search.gif) no-repeat center left;
	position: absolute;
	bottom: 15px;
	right: 0;
}

#ja-search .inputbox {
	width: 120px;
	border: 1px solid #333333;
	padding: 3px 5px;
	color: #999999;
	background: #444444;
	font-size: 92%;
}

/* MAIN NAVIGATION
--------------------------------------------------------- */

#ja-pathway {
	font-size: 92%;
}

#ja-pathway strong {
	margin-right: 5px;
	font-weight: normal;
}

#ja-pathway a {
	text-decoration: none;
}

#ja-pathway img {
	margin: 1px 5px;
}

/* MODULE
--------------------------------------------------------- */
div.moduletable,
div.moduletable_menu,
div.moduletable_text {
	padding: 0 0 20px;
	margin-bottom: 15px;
	background: url(../pics/hdot.gif) repeat-x bottom;
}

div.moduletable h3,
div.moduletable_menu h3,
div.moduletable_text h3 {
	padding: 0 0 8px;
	margin: 0;
	color: #7BA566;
	font-size: 125%;
	font-weight: bold;
	text-transform: uppercase;
}

/* Module rounded */
div.module h3 {
	margin: 0 -15px 10px;
	padding: 8px 15px 5px;
	border-bottom: 2px solid #F6F6F6;
	color: #7BA566;
	font-size: 125%;
	font-weight: bold;
	text-transform: uppercase;
}

div.module_black,
div.module_green,
div.module_blue,
div.module_red,
div.module {
	margin-bottom: 20px;
	float: left;
	clear: both;
	width: 100%;
	background: url(../pics/b-br.gif) no-repeat bottom right #FFFFFF;
}

div.module div {
	background: url(../pics/b-bl.gif) no-repeat bottom left;
}

div.module div div {
	background: url(../pics/b-tr.gif) no-repeat top right;
}

div.module div div div {
	padding: 0 15px 10px;
	background: url(../pics/b-tl.gif) no-repeat top left;
}

div.module_black div div div div,
div.module_green div div div div,
div.module_blue div div div div,
div.module_red div div div div,
div.module_text div div div div,
div.module div div div div {
	margin: 0;
	padding: 0;
	float: none;
	width: 99%;
	background: none;
}

div.module_text h3 {
	margin: 0 0 10px;
	width: 100%;
	clear: both;
	display: block;
	overflow: hidden;
}

div.module_text span {
	padding: 0 3px 0 0;
	float: left;
	clear: both;
	display: block;
	background: #F6F6F6;
	font-weight: bold;
}

div.module_text {
	margin-bottom: 20px;
	padding: 0;
	float: left;
	clear: both;
	width: 100%;
	background: url(../pics/bt-br.gif) no-repeat bottom right #F6F6F6;
}

div.module_text div {
	background: url(../pics/bt-bl.gif) no-repeat bottom left;
}

div.module_text div div {
	background: url(../pics/bt-tr.gif) no-repeat top right;
}

div.module_text div div div {
	padding: 0 15px 10px;
	display: block;
	background: url(../pics/bt-tl.gif) no-repeat top left;
}

div.banneritem_text {
	padding: 5px 0 !important;
}

/* red */
div.module_black h3,
div.module_green h3,
div.module_blue h3,
div.module_red h3 {
	margin: 0 -15px 10px;
	padding: 8px 15px 5px;
	border-bottom: 1px solid #F6F6F6;
	color: #FFFFFF;
	font-size: 125%;
	font-weight: bold;
	text-transform: uppercase;
}

div.module_red {
	background: url(../pics/br-br.gif) no-repeat bottom right #BF0000;
	color: #FFFFFF;
}

div.module_red div {
	background: url(../pics/br-bl.gif) no-repeat bottom left;
}

div.module_red div div {
	background: url(../pics/br-tr.gif) no-repeat top right;
}

div.module_red div div div {
	padding: 0 15px 10px;
	background: url(../pics/br-tl.gif) no-repeat top left;
}

/* blue */
div.module_blue {
	background: url(../pics/bb-br.gif) no-repeat bottom right #006699;
	color: #FFFFFF;
}

div.module_blue div {
	background: url(../pics/bb-bl.gif) no-repeat bottom left;
}

div.module_blue div div {
	background: url(../pics/bb-tr.gif) no-repeat top right;
}

div.module_blue div div div {
	padding: 0 15px 10px;
	background: url(../pics/bb-tl.gif) no-repeat top left;
}

/* green */
div.module_green {
	background: url(../pics/bg-br.gif) no-repeat bottom right #7BA566;
	color: #FFFFFF;
}

div.module_green div {
	background: url(../pics/bg-bl.gif) no-repeat bottom left;
}

div.module_green div div {
	background: url(../pics/bg-tr.gif) no-repeat top right;
}

div.module_green div div div {
	padding: 0 15px 10px;
	background: url(../pics/bg-tl.gif) no-repeat top left;
}

/* black */
div.module_black {
	background: url(../pics/bl-br.gif) no-repeat bottom right #333333;
	color: #FFFFFF;
}

div.module_black div {
	background: url(../pics/bl-bl.gif) no-repeat bottom left;
}

div.module_black div div {
	background: url(../pics/bl-tr.gif) no-repeat top right;
}

div.module_black div div div {
	padding: 0 15px 10px;
	background: url(../pics/bl-tl.gif) no-repeat top left;
}

div.module_blue ul,
div.module_blue ol,
div.module_red ul,
div.module_red ol,
div.module_black ul,
div.module_black ol,
div.module_green ul,
div.module_green ol {
	margin: 0;
	padding: 0;
}

div.module_blue li,
div.module_red li,
div.module_black li,
div.module_green li {
	margin-left: 20px;
	padding: 0;
	line-height: 150%;
}

div.module_blue a,
div.module_red a,
div.module_black a,
div.module_green a {
	color: #FFFFFF;
}

div.advs {
	float: left;
	width: 100%;
	clear: both;
	display: block;
}

/* LEFT COLUMN + RIGHT COLUMN
--------------------------------------------------------- */
#ja-col1 {
	float: left;
	width: 24.99%;
	padding-top: 10px;
	overflow: hidden;
}

#ja-col2 {
	float: right;
	width: 20%;
	overflow: hidden;
}

#ja-col1 table,
#ja-col2 table {
	border-collapse: collapse;
	border-spacing: 0;
}

#ja-col1 ul li,
#ja-col2 ul li {
	padding-left: 15px;
	margin: 0;
	background: url(../pics/bullet.gif) no-repeat 5px 50%;
}

#ja-col1 ul, #ja-col2 ul {
	margin: 0;
}

#ja-col1 ol, #ja-col2 ol {
	margin-left: 5px;
}

#ja-col1 .article_separator,
#ja-col2 .article_separator {
	display: none;
}

/* SPOTLIGHT
--------------------------------------------------------- */
/* Spotlight Box Style */
.ja-box-full, .ja-box-left, .ja-box-center, .ja-box-right {
	float: left;
	overflow: hidden;
}

.ja-box-left div.moduletable,
.ja-box-full div.moduletable {
	padding-right: 30px;
	background: none;
}

.ja-box-right div.moduletable {
	padding-left: 30px;
	background: url(../pics/vdot2.gif) repeat-y left;
}

.ja-box-center div.moduletable {
	padding: 0 30px;
	background: url(../pics/vdot2.gif) repeat-y left;
}

#ja-botsl h3 {
	background: none;
}

#ja-botslwrap {
	border-top: 5px solid #CCCCCC;
	background: #444444;
	color: #CCCCCC;
}

#ja-botsl {
	padding: 15px 0;
}

#ja-botsl div.moduletable {
	padding-top: 0;
	padding-bottom: 0;
	margin: 0;
}

#ja-botsl h3 {
	margin: 0 0 12px;
	padding: 0;
	color: #FFFFFF;
}

#ja-botsl a {
	color: #CCCCCC;
}

#ja-botsl a:hover, #ja-botsl a:active, #ja-botsl a:focus {
	color: #FFFFFF;
}

#ja-botsl ul, #ja-botsl p, #ja-botsl ol {
	padding: 0;
	margin: 0 !important;
}

#ja-botsl ul li {
	padding: 0 0 0 15px;
	margin: 0;
	background: url(../pics/bullet2.gif) no-repeat 3px 8px;
}

#ja-botsl ol li {
	margin-left: 25px;
	padding: 0 !important;
}

#ja-botsl td {
	padding: 0;
}

#ja-botsl .article_separator {
	display: none;
}

#ja-botsl table {
	border-spacing: 0;
	border-collapse: collapse;
}

/* FOOTER
--------------------------------------------------------- */
#ja-footerwrap {
	border-top: 5px solid #CCCCCC;
	padding: 20px 0 30px;
	clear: both;
	background: url(../pics/grad3.gif) repeat-x bottom #F6F6F6;
}

#ja-footer {
	padding: 0;
	color: #666666;
	background: url(../pics/vdot.gif) repeat-y 22% 0;
	position: relative;
}

#ja-footer .copyright {
	clear: both;
	display: block;
	padding-left: 25%;
	color: #666666;
	font-style: normal;
	font-size: 92%;
}

#ja-footnav {
	padding-left: 25%;
}

#ja-footer ul {
	margin: 0 0 5px;
	padding: 0;
}

#ja-footer li {
	margin: 0;
	padding: 0;
	display: inline;
	background: none;
}

#ja-footer li a {
	padding: 0 15px 0 0;
	display: inline;
	color: #666666;
	font-weight: bold;
	font-size: 92%;
	line-height: normal;
	text-decoration: none;
	text-transform: uppercase;
}

#ja-footer li a:hover, #ja-footer li a:active, #ja-footer li a:focus {
	color: #333333;
	text-decoration: none;
}

.ja-cert {
	font-size: 92%;
	position: absolute;
	right: 0;
	top: 18px;
}

.ja-cert a {
	margin: 0 0 0 5px;
	padding: 0;
	border: none;
	border: none;
	text-decoration: none;
}

.ja-cert a span {
	display: none;
}

.ja-cert a img {
	border: none;
}

.banneritem {
	display: block;
	margin-top: 15px;
}

/* MISCELLANOUS
----------------------------------------------------------- */
ul.accessibility {
	position: absolute;
	top: -100%;
}

/*usertool*/
ul.ja-usertools-font {
	font-size: 11px;
	position: absolute;
	top: 8px;
	right: 70px;
}

ul.ja-usertools-font li {
	padding: 0;
	margin: 0;
	display: inline;
	background: none;
}

/*collapsible h3*/
h3.show {
	background: url(../pics/arrow2.png) no-repeat 90% 60%;
	cursor: pointer;
}

h3.hide {
	background: url(../pics/arrow3.png) no-repeat 90% 60%;
	cursor: pointer;
}

/*others*/
#ja-banner {
	margin: 15px 0;
	text-align: center;
}

div.back_button a,
div.back_button a:hover,
div.back_button a:active {
	margin: 10px 0;
	display: block;
	background: none!important;
	text-decoration: none!important;
}

#form-login p {
	margin: 0 0 5px;
}

#form-login ul {
	margin: 10px 0 0;
}

#form-login .inputbox {
	width: 90%;
}

.clr {
	clear: both;
}

.hasTip img {
	margin: 10px 5px 0 0;
	border: none;
}

/* Tooltips */
.tool-tip {
	float: left;
	border: 1px solid #D4D5AA;
	padding: 5px;
	background: #FFFFCC;
	max-width: 200px;
}

.tool-title {
	padding: 0;
	margin: 0;
	margin-top: -15px;
	padding-top: 15px;
	padding-bottom: 5px;
	background: url(../../system/pics/selector-arrow.png) no-repeat;
	font-size: 100%;
	font-weight: bold;
}

.tool-text {
	margin: 0;
	font-size: 100%;
}

#system-message dd.message ul,
#system-message dd.error ul,
#system-message dd.notice ul {
	padding: 0;
	margin: 0;
}

#system-message dd.message ul li,
#system-message dd.error ul li,
#system-message dd.notice ul li {
	background: none;
	padding: 5px;
	margin: 0;
	color: #FFFFFF;
}

/* System Standard Messages */
#system-message dd.message ul {
	background: #006699;
	border: none;
}

/* System Error Messages */
#system-message dd.error ul {
	background: #BF0000;
	border: none;
}

/* System Notice Messages */
#system-message dd.notice ul {
	background: #EE9600;
	border: none;
}

/* Clearfix */
.clearfix:after {
	clear: both;
	display: block;
	content: ".";
	height: 0;
	visibility: hidden;
}

* html > body .clearfix {
	width: 100%;
	display: block;
}

* html .clearfix {
	height: 1%;
}

/* Firefox Scrollbar Hack - Do not remove */
html {
	margin-bottom: 1px;
	height: 100%!important;
	height: auto;
}

#buttonNavLeft {
	background: url(../pics/navigate_left.png) no-repeat 0 0;
	width: 24px;
	height: 24px;
	
}

#buttonNavRight {
	background: url(../pics/navigate_right.png) no-repeat 0 0;
	width: 24px;
	height: 24px;
}
]]></CSP>


<CSP name="default.html" application="/csp/cbt/" default="1"><![CDATA[
<html>
<head>
	<title>AgrisM Extranet-Portal</title>
	<link rel="stylesheet" href="css/system.css" type="text/css" />
	<link rel="stylesheet" href="css/general.css" type="text/css" />
	<link rel="stylesheet" href="css/template.css" type="text/css" />
	<link rel="stylesheet" href="css/menu.css" type="text/css" />
	<link rel="stylesheet" href="css/header_green_style.css" type="text/css" />
	<link rel="stylesheet" href="css/background_lighter_style.css" type="text/css" />
	<link rel="stylesheet" href="css/elements_green_style.css" type="text/css" />


</head>
<body id="bd" class="fs3 FF" style="padding:10px;">
<!-- path way
<div id="ja-pathway">
<span class="breadcrumbs pathway">
<a href="default.html?path=Home" class="pathway">Home</a> <img src="pics/arrow.png" alt=""  />
</span>
</div>
-->

<script type="text/javascript">
		var query = window.location.search.substring(1);
		var pairs = query.split("&");
		var path = "Unbekannt";
		for (var i=0;i<pairs.length;i++) {
			var pos = pairs[i].indexOf('=');
			if (pos >= 0) {
				var argname = pairs[i].substring(0,pos);
				var value = pairs[i].substring(pos+1);

				if (argname=="path") path = value
			}
		}
		document.write(path);
	</script>

<!-- article content -->
<div class="article-content"></div>
<span class="article_separator">&nbsp;</span>

</body>
</html>]]></CSP>


<CSP name="index.html" application="/csp/cbt/" default="1"><![CDATA[
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de-de" lang="de-de">
<head>
	<title>AgrisM Extranet-Portal</title>
	<script type="text/javascript" src="js/jquery-1.4.3.min.js"></script>
	<script type="text/javascript" src="js/fancybox/jquery.mousewheel-3.0.4.pack.js"></script>
	<script type="text/javascript" src="js/fancybox/jquery.fancybox-1.3.4.pack.js"></script>
	<link rel="stylesheet" type="text/css" href="js/fancybox/jquery.fancybox-1.3.4.css" media="screen" />
	<link rel="stylesheet" href="css/system.css" type="text/css" />
	<link rel="stylesheet" href="css/general.css" type="text/css" />
	<link rel="stylesheet" href="css/template.css" type="text/css" />
	<link rel="stylesheet" href="css/menu.css" type="text/css" />
	<link rel="stylesheet" href="css/header_green_style.css" type="text/css" />
	<link rel="stylesheet" href="css/background_lighter_style.css" type="text/css" />
	<link rel="stylesheet" href="css/elements_green_style.css" type="text/css" />
	<script type="text/javascript">
	
	
		function loadFrame(url)
		{
			document.getElementById("cspframe").src = url;
		}
		
		function showDialog(fromWeek, toWeek, fromArticle, toArticle) {
			$.fancybox({
				'width'				: '60%',
				'height'			: '90%',
				'autoScale'			: false,
				'transitionIn'		: 'none',
				'transitionOut'		: 'none',
				'type'				: 'iframe',
				onStart: function(){
        			this.href = "DlgCopyAngebot.csp?fromWeek="+fromWeek+"&toWeek="+toWeek+"&fromArt="+fromArticle+"&toArt="+toArticle;
      			}
			});	
		}
			
	</script>
</head>
<body id="bd" class="fs3 FF" >
	<a name="Top" id="Top"></a>

	<!-- ja-wrapper -->
	<div id="ja-wrapper">

		<!-- BEGIN: HEADER -->
		<div id="ja-headerwrap">
			<div id="ja-header" class="clearfix" style="background: url(pics/header3.png) no-repeat top right;">
				<div class="ja-headermask">&nbsp;</div>
				<h1 class="logo">
					<a href="index.html" title="AgrisM-Extranet"><span>AgrisM-Extranet</span></a>
				</h1>
			</div>
		</div>
		<!-- END: HEADER -->

		<!--ja-containerwrap-fr-->
		<div id="ja-containerwrap-fr">
			<div id="ja-containerwrap2">
				<div id="ja-container">
					<div id="ja-container2" class="clearfix">

						<!-- ja-mainbody-fr -->
						<div id="ja-mainbody-fr" class="clearfix">

							<!-- ja-contentwrap -->
							<div id="ja-contentwrap">
								<!-- ja-content-->
								<div id="ja-content">
									
									
									<iframe src="default.html?path=Home" id="cspframe" name="cspframe" border="0" width="100%" height="5000px" scrolling="auto" allowtransparency="true">
										<p>Ihr Browser kann leider keine eingebetteten Frames anzeigen</p>
									</iframe>
								</div>
								<!-- ja-content -->
							</div>
							<!-- ja-contentwrap -->

							<!-- BEGIN: LEFT COLUMN ja-col1-->
							<div id="ja-col1">

								<div class="moduletable_menu" style="padding-left:9px;">
									<h3>Extranet</h3>
									<ul class="menu">
										<li><a href="javascript:loadFrame('AgrisMLogin.csp')"><span>Login</span></a></li>
										<li><a href="javascript:loadFrame('UebersichtOffeneLieferungen.csp')"><span>Offene&nbsp;Bestellungen</span></a></li>
										<li><a href="javascript:loadFrame('Angebot.csp')"><span>Tagesangebot&nbsp;erf.</span></a></li>
										<li><a href="javascript:loadFrame('Angebotsplan.csp')"><span>Angebotsplan</span></a></li>
										<li><a href="javascript:loadFrame('Lieferbestaetigung.csp')"><span>Liefermengen&nbsp;erf.</span></a></li>
										<li><a href="javascript:loadFrame('logout.csp')"><span>Logout</span></a></li>
									</ul>
								</div>
	<!--
								<div class="moduletable_menu" style="padding-left:9px;">
									<h3>Über Uns</h3>
									<ul class="menu">
										<li><a href="javascript:loadFrame('default.html?path=Home')"><span>Home</span></a></li>
										<li><a href="javascript:loadFrame('default.html?path=Unternehmen')"><span>Unternehmen</span></a></li>
										<li><a href="javascript:loadFrame('default.html?path=Impressum')"><span>Impressum</span></a></li>
										<li><a href="javascript:loadFrame('default.html?path=Kontakt')"><span>Kontakt</span></a></li>
									</ul>
								</div>
	-->
							</div><br />
							<!-- END: LEFT COLUMN ja-col1 -->

						</div>
						<!-- ja-mainbody-fr -->
					</div>
				</div>
			</div>
		</div>
		<!--ja-containerwrap-fr-->

	</div>
	<!-- ja-wrapper -->

</body>

	<script type="text/javascript">

		loadFrame('UebersichtOffeneLieferungen.csp');

	</script>

</html>
]]></CSP>


<CSP name="js/basicfunctions.js" application="/csp/cbt/" default="1"><![CDATA[


function padleft(val, ch, num) {
	var re = new RegExp(".{" + num + "}$");
    var pad = "";
    if (!ch) ch = " ";
    do  {
    	pad += ch;
    } while(pad.length < num);
    return re.exec(pad + val)[0];
}

function padright(val, ch, num){
	var re = new RegExp("^.{" + num + "}");
    var pad = "";
    if (!ch) ch = " ";
    do {
    	pad += ch;
    } while (pad.length < num);
    return re.exec(val + pad)[0];
    }
]]></CSP>


<CSPBase64 name="js/fancybox/blank.gif" application="/csp/cbt/" default="1">
R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_close.png" application="/csp/cbt/" default="1">
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
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_loading.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAACgAAAHgCAYAAADXMi8AAAAnmklEQVR42u3dB3RlZdU38LH33nvH
3nvvBRt2RcVeEVREUWyABcGuCBYUFVlWQF9FrEsFBCa5SWaSaZmSTMn0xjCDiC98a337d9bz5Dtz
CXNPknPv5FueWeusJGducvbZz95P+f93mTdv738HxHVUXL+I6/y4zuvRdX565lFJhin/vSKui+Ia
i2tRXMM9vhalZ1+UZNnr3yFxTcS1JK5WXAP76WolGcjyxizcg0tvsD+FKwtJloVxPYiAR8e1ao4I
VxaSTB8j4Nlxjcwh4fJFpl/NS140XMMf7I+rr2YB/zovufhsBWzd7W53G370ox+95FrXulZdAg4n
2WakwVbJZn3t/+53v7t5fHz88kc+8pGLa7Ln4STbtARs3fCGNxw69thj18c1cb3rXa8Y2hvd6EZD
Z5999vYNGzZc8aIXvWh5FvDmN7/50D3ucY/hm9zkJkO9ErD/jne840LCtFqtS5///OcTZv5Nb3rT
oR/96EdbRkZGLnvuc5876nPXuc51Bu91r3sNP+hBD1p0m9vcZkG3BSwPad9b3vKWsfPOO++S733v
e5tDe4PXv/71Bwk4PDy8Jwt4u9vdbsEDHvCARfe85z2H/X9XBYxhHbzVrW41lLy0FUO34OSTT958
/vnn73rd615nvur71a9+VQzxgQceuDwcpXXf+9535P73v/+iW9ziFpPai/uDYRaDtQv4gQ98YE0I
tJF9pQfMf9rTnrbsggsu2HXWWWdtjyEc+uhHPzpB4BjSxWzP0N75znee/LvskD0ecMABi2i9TgFb
RxxxxJozzzxz209+8pMtn/rUpyYe+tCHLjKdfPjDH15z4oknbgjtLuAoBAjbG2Bz9773vYdvfOMb
D133utcdDLtdENocechDHrLogQ984KKKTlNdg/EHB1/wgheMHn/88evPOOOMrT/96U+3vf71r191
gxvcYJAQae5rpcl6IIQaIOjNbnazodBYIVjY40jMlQt9vu4hzg5SGD6b+/73v7+ZVkuCTfl7t771
rRfQGEchbOnv1SZgK2vk2te+9uTPd73rXYc9vNNDaNFwlr3YS1VcbToK2DLnveMd7xg/7LDDVr/t
bW8bf+tb3zp26KGHrn7mM5+5zP/z1k4PuuUtb7ngPve5z0jYZHHxbo5SYW7sKGC/eeyrX/3qxrg2
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
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_nav_left.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAFbUlEQVRIx61Xa0ibVxjWxJjGS+Nt
scZr1szaNTgvc5W2SlHQNrA5HSLtaqtVxAlOGKgDwQlObL20irTFMav7N4RN7PbHHzp0c2Jb1tat
IKKooENWFWrMxZjYPW94P9GYmLTbgYfknPOe9znnvZ3zeXgc3jwBEeH8+fNeycnJklOnTnmr1Wpp
a2ur7507d/yoT6A5khHkee1rN1okBiTAkRMnTviXl5crbt++HdPc3KyurKw8fuvWrfe7u7tPp6Sk
RBYXF0c2NDRE4PctND9aw2vFr7MBEqSdS0lJVlaWorOzUzMyMqJ98eLFTbPZPPHKrm1vbz9ZX1//
Znh4+MO8vLzoiIiIIN6AlHW5JBexoCwmJiYgPz8/qqen55xOp/vBnmxlZcW6sLBgtR9/+fLl97CQ
KjExURkYGCgnXaxT5OqkPrTjK1euqAcHBz+yWq0LpBAn3YFpzbCAATK6vYC59e3t7Waj0bjDsk9x
+kvwe5RcLg8knc5OLpDKjh49GpSdna3u7+/PhY4tUjQ0NGSJjo7etCe0R1xcnP7x48cW4fRY9ynG
Yphc5ohczP6Qx8fHq1paWi5YLJZFWtzb22sWi8U6V6QCSLapqWlLIL93716uUqmMJN3MsRtwnhyB
fiEhIcqKiopzCJSfhZO6IoUfHVri7t27ZtKB+Pgd/XeBY8TBXCIhoI6QidPT00/29fUV0wK9Xm+F
rzddkU5NTVkbGxu37Oe8vb11y8vL26RrdHT0K+h6B+NBnGpigdjXx8dHiSg+Nz8//x0Jd3V1mQ8j
TUpK0i8uLtqCiX4dyZSVlZlofnV19Rf044EwPrWX4F/4X/62Vqu9YDAYnpJwamqq4TBSpM0Op88O
9R3JBQcHbyJWbL4OCAhIx5gKCAC8PZg9ODQ0VJOTk3OZhDY2NqzukJKZnflYwLNnz2yBVltbW+nv
7x+HsRA2t4fEz89PgXqbUlpa+jkJzczMWP4PUsKDBw+2OLpv+vr6voexUE4tDwn8G6bRaM6g1taQ
0PPnzx0SCz6llpGRYXAnvQYGBmzEuFA60E8ClBRTHhzeSoVCcSYtLa2ShNbW1iz/xbd7MTk5aST5
6urqRplM9gHGwvcRSySS0yqVqgTl7h8SdJZKQgq5Q041ADK2lEJh+gwcB4jDMJgCP1+bm5sbI8Gq
qiqTq/x1RU51nS+UP9G/BCTbm1oB4oTY2NgC3LPfsvA2fK9zh9xZHo+Njelp/ic09POAfcFlSyfg
pFQq1cLENag4T2gBXhlb7lSukpKSA9YpKioycsn8G/lci7ELxLE3ncRcwFVeXl5pQUFBJUirbiF6
SYG7F4SAs2fPGvA4sHI0D2CsGEizLyAitjmVswQERC6KyZco8ruXf319/Za7pIWFhUaTyWQjHR8f
f4ixGiCHdNuXTBEfnQq4GkgH+TWY8WvU60GBfHp62lRQUGB05ncKpImJCYMgD9I/MN4IXCWdrHvf
JbF7LfLVpQGyQV6G+n0Dj7zBpaWlGUEhnYbKIJ5EJsKjR49MQspwDVhua2ujS+EGUEa6WOeBa3Hf
QwCgSzsR0BI5Tki7vt/R0fHb7Ozs9CsnDZE9h0fDQ2RHL5+USLWsy+FDYN/TB6BnShT7JJtNVYOq
00YbgBV+zMzM/LWuru4vAm608fDw8EGaA9rYp1d5bQLrcvr02ffYY8FINhFF48fAdeALoB7R3wy0
4n8r/ReJRPU8d51l03htJOvycfXMFe05uZz9cpx3TsouAp8Al4FCxmUeu8gyCbzmGOtw+by1/4qQ
cpoFspJoIJZPksA3TRL/1/BcNMsG8lrpm3xNeO6xgISVyNhsvnbw4Tkpy3rt+X56o28oR5txBbfa
vx4m6rAPnooRAAAAAElFTkSuQmCC
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_nav_right.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAFdUlEQVRIx6VXbUibVxS2iTGN0cZE
F2v8zJqpncH5MVepVUoLagObq6NInba1LeIEJ0zUQcEVXLH1u4iKo53u3xA2sduf/tBRNyf9YK1u
goiiQh0yq1A1H8ak3XPCeUXTxKTtCw/Jve+5z3Pvueece18fn72ffYCIcPz4cd/U1FRJQkKCn06n
kzY1Nck7OzsDqE2gd2Qj2PPY135okBiQAPvj4uICy8rK1G1tbTENDQ26ioqKQ62trR/29PQcSUtL
iywpKYm8evVqBH7fwRNAY3is+HUmQIY0cymRZGdnq2/evKkfHh42LC8v37BarWMvnZ6tra3Hq6ur
3w0NDX2cn58fHRERoeIJSJnLo7iIDWUxMTFBZ86cibp9+/ax9fX1n5zFlpaW7PPz83bn/ufPn/8I
D2mTk5M1SqVSQVzMKfK0Un+acVFRkW5wcPATu90+T4RY6Qu41goPmGCzvhNwt7GlpcVqNptfsO0T
rP4s9j1KoVAoidPdygVR2YEDB1Q5OTm6/v7+0+DYJKK7d+/aoqOjN5wFnREfH2989OiRTVg9xn2O
vhgWl7kSF/N+KBITE7WNjY25NpttgQb39vZaxWLxuidRAWR77dq1TUG8u7v7tEajiSRu1tgOuH0c
gQEhISGa8vLyYwiUX4WVuhLF3m0Q9ppAV1eXlTgQH3+i/T5wkDRYSyQE1H5ycVZW1uG+vr4SGmA0
Gu3Ya5fk9fX1mxMTE/a9xP38/NYXFxe3iOvevXvfgOs99Ks41cSCsNzf31+DKD42Nzf3Axl3dHRY
3ZEich1B5Em8tLTUQnbPnj37De1EIIxX7SvsL/Zf8a7BYMg1mUxPyDg9Pd3kjjAlJcUoiNMvtV3Z
BQcHbyBWHHsdFBSUhT4tEAT4+bB6cGhoqD4vL6+QjNbW1uyegshb8fHxcUeg1dbWVgQGBsajL4Td
7SMJCAhQo96mXb58+Usymp6etnkTwVqt1kju3kv8zp07mxzdN+Ry+QfoC+XU8pFgf8P0ev1R1Noa
MpqcnLR5mz4nTpwwCamzsLDwwvn9wMCAQxgHSjvaKYCGYsqHw1ujVquPZmZmVpDRysqKV8I73U0r
Jw8429y/f99M76urq+tlMtlH6AvfJSyRSI5g4CWUu//I0F0quRN1Fd1UA2DjSCkUpi+g8YpwGDrT
sM/nZ2dnR8iwsrLS8jaiBKrrfKD8jfZZINXZ1WoIJ8XGxhbgnL3FxlvY+7fK45GRESPZ/YIH7Xxg
V3A50gk4LJVKDXBxDSrOYxqAW8amK8KqqioLuLb2Er1w4YKZS+a/yOda9OWSxs50EnMB1/r6+maq
VKpLSKseIVKJwNsIF5CRkWHC5cDO0TyAvhIg07mAiNjnVM6SEBCnUUy+RpHfPvzr6uo2vRUtLi42
WywWh+jo6OgD9NUAecTtXDJFvHQq4DogC+Ln4cZvUa8HBfGpqSlLQUGB2d2+UyCNjY1t5zRE/0J/
PXCOOJl71yGxfSzy0aUHciBeivp9HZe8wadPn04LhLQaKoO4ElkIDx8+tAgpwzVgsbm5mQ6F60Ap
cTHnK8firosAQId2MmAgcayQZv19e3v7HzMzM1Mv3TyoWrO4NDxAdvTySknUwFwuLwK7rj4AXVOi
eE9y2FU1qDrNNAF44eeTJ0/+fuXKlX8IONFGw8PDB+kd0Mx7eo7HJjGX26vPrsseG0ayiygaPwUu
Al8BdYj+BqAJ/5vov0gkquN3F9k2k8dGMpe/p2uuaMfKFbwvh3jmRHYK+AwoBIoZhdx3im2SeMxB
5vB4vXX+ipBymimZJBqI5ZUk8UmTwv/1/C6abZU8VvomXxP7dnhAwiQydpvcCf78Tsq2vju+n97o
G8rVZDzBq+d/BnPq5aM0EKUAAAAASUVORK5CYII=
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_shadow_e.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAABQAAAABCAYAAADeko4lAAAAMklEQVQI12MUFxW1YGBg+APE/4D4
NxD/heLfSPg/EP+AqvkH5f+D6gOx/7949QrEZwAA7SMU/wl/9ugAAAAASUVORK5CYII=
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_shadow_n.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAAEAAAAUCAYAAABMDlehAAAAMUlEQVQI11XLwQkAIBTD0GdRNxD3
n/R7U7wUElJVxV6rBRX0oAWC/K4H8+L858XvMQ6htwScSSgzAAAAAABJRU5ErkJggg==
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_shadow_ne.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAABIklEQVQ4y62Ua47DMAiEB5wcoer9
b7fqGYLZP6b6FrlVK20kK37gYWDAlpn6z8/ut5tLmrszSV95+3k8VGAmyde+A8y+ZehgMwFWZwmb
zn77HWvQKBZIpWHCQc3zHUNv+RprPdZwgPgnIRuA1PKZG8dqf9sxHACiUHQaYEnBcgfYWTBsQbBX
ghhFMUnnupQYJVABz1ZiCaZJwBMXGUYZXS3M8cL+CThwcCFfFWaxH+siw49dHQ54PRo7pmCu80pN
tOaYLOxAzbFUGNqEyix+dlhWDh0soq2FeTZR1Lrpieyb7hiw6bmOjSBGlecShGUQAL3QTdFKxbj2
1i1VlwcAEvsV9mgsRcBiebaH9YCzAjlbzwec/MmPwMxafxvAd08a21e/OepnxlCGJoQAAAAASUVO
RK5CYII=
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_shadow_nw.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAABC0lEQVQ4y62UAQqDMAxFmzT1CLL7
31O7Kf3yCHXIWKHUlubn/US13nv557BD8LWuP8V+Zh+r9vtTQQVzn8/O8yeCCvSDYKx9zDruaH9r
2XDRcH6IbRC1dL88JbR01pFApKeTLGgpQKMOuyR1NYKk3whpS7WjeAXdNlZ/YjlGgBwEHASSnfWl
oN10tqdaVtgUpZJ4FmSwOhqwHUhE61eSmWXHRYoykaGex2iKpWB+t3rqaEVjHOIOwYuQNStYeRag
IlkFxLSG2VYBXcWzyJyi2XKZiKoRDfSB1Uiam1LT96lXIpCkTcQE0+4sGwJYN80F1gMgPiPcYbdN
ukmhwH65+9tE+tdFsh1pNgAsb+/rdlTpwE+hAAAAAElFTkSuQmCC
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_shadow_s.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAAEAAAAUCAYAAABMDlehAAAANklEQVQI10XKwQ2AMBDEwGGpIaIT
+m8LFHL8Lj/bsmuMO6jgC2bT1jd4uq1uW4+eZ3AGS1X5AXa8E2Tq43WHAAAAAElFTkSuQmCC
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_shadow_se.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAABJ0lEQVQ4y41UUW5DMQgzvF6h2jl6
/wtNvcHaBPYDnefypEaKoiTYsQHFvq7XG4Bd8wEgAfzUftXs+wTwrDUBBACrO3zf7/AiedahEZAB
CcDxN7ym0R4AcBGCRfsQYtCjep99roS7AjepW0TG5DqyFbayJDCTJ1kOUgNZowkXEaFyGoPNTY+Z
xBjncFH1OlBtLlHXq5GDF+GDwKA87YFALacm8kIEcVK5ILDemTyKS1kFAZcELyqIk5Ox2k14SGAr
PUil2jQ6CyY0Sb5JhXcR99lBpDEp5H7joCgwpPldFP8bLj0YZMWpB0MsmlT7TSEre5Jap1xuwtnU
Mk0IUmmULxMSl7YaSX1IrIKmcarQh4AYfhWTfZ489PoocwAx8JTgTXrmx7EfjV9rMblEHBbT2AAA
AABJRU5ErkJggg==
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_shadow_sw.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAABG0lEQVQ4y62TUW4DIQxEn2E3uUHU
+99zcX/saDolaSs1EvKKwGOYMZGZfDweAAOIGlSdVY8aAdxrfgCnfE9gRgEHsAR01CIEpHVWvdW6
Xn80MICsyYYPgbTSs+pN1p4CjLArNyj7CgJE5nScongosDdcBgiBzo2veuhW4ayqXq66ZlogvAql
FXYQaSpTuqBhQ9Q9O8RD0fbp70sCyqpYYM/DVWF7tcw/TJ2rntodDmyVWNqtbEkd5uEA2AGHgdM2
q1K1B21s7MkhSeth7aM+gi9P1VMO2ZwverNVh9jR/8UOiIQzJSS1Q9Wpn9+A2BWHbVii5tqkzjug
B7IskLS59Q64a6PY+OzhvQX+dIi2V/xG4V8PGUBGZvKfv08j7HxbBtCVPwAAAABJRU5ErkJggg==
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_shadow_w.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAABQAAAABCAYAAADeko4lAAAALklEQVQI12P8//8/AwhIiIkxAilm
IAbRTAwQwAJlM0MxO5QGiXNA5UCYFaqPDQAGHwN8eWM6AwAAAABJRU5ErkJggg==
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_title_left.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAA8AAAAgCAQAAABnJeoiAAABvklEQVQoz42TTSjDcRjHv/ZmTGYb
U8K8HEYS5a28ZE5eDxzcKLIdnMRpNVJKccHNcSflJEqhXHbQ4mg5jFgrVsS0qclLHs/f/+9l+/9X
fr/b//N7nv/zfJ/vA8hPBl8V1NBAK0cq/qyDHgbkIi8VqRllw7hsD7lj28+BZKhFFsdY7zdIOskw
G+b9/rif6J32npyR1vBfaIDF7xRiLl86wgh+3a8jwvwjlwDXo4ZzCQbFWA3/0zzX8hYjmr/7QRJW
IRNGFN/uE+3Ek2BQjDXA6nYQvX7YLuVYx7G2oyWirdTYoJBajwLYw4dEzogcqzl1Eeri10S1ITnW
sE6laH5NEJkulHAeKtCWDmthQiU6HiPKySV85lcuTUq+6VVuTCqtd1KQpfoqTWMYODlWElWSBV3t
MwmufvZOUVQ0YWjBKxhh5SHzPHUkhaiCA6O+E7kdxIGWoB49mHB5T2+EHLvxMclMoh0sKEcj+jAB
z0Eg2YqimQq4/wZ0YwTTNWurPl/oIvptRcHfOfygjFvsxCDGMQUPFn+NLDxgr6KYi2zkMgcwjFH5
GhhhZRXtnKUZ7Ur7xUuEfFbSxqP6/woqLPAnWuESyIO/rbkAAAAASUVORK5CYII=
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_title_main.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAAEAAAAgCAQAAAB57NqRAAAAJ0lEQVQI12NgYGdgEGX4/x+EGG6S
j6AmTGVgyGJgcGdg0AYZy8AOAFcCGpZWWVPyAAAAAElFTkSuQmCC
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_title_over.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVQI12NgYGBYDAAAqACkxaGY
IAAAAABJRU5ErkJggg==
</CSPBase64>


<CSPBase64 name="js/fancybox/fancy_title_right.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAA8AAAAgCAQAAABnJeoiAAABwUlEQVQoz31TSyiEURg9ZsZjjLyH
EsZjgSTKqzwyVp4LFnYUGQsrsVJIKcUGO8tZKStRCmUzC00syWKIaYop8siokUeuc80/+mf+f9xv
ec733XvOPR8QDxOMMCCOpXPSkQoLkpBAmkFDeTt72fZOL5chDcmkGKMoQjkPG8jhHDMvUxOafA7/
3usXCQH3fg8yOSOC4JHV6rt6lzPcDmTxJSqCJ1SWi/UnSTgaQ7ZCUMOy5u+F+HyZa+QVZuqIi4Lh
2QkIcbePfOpIDPVHwLarj28hpu1UYQn1eyJri/1HS7CxP0EHdviF8B2iDFY6adDAVV46cINq5HG8
UQNnXArxEUQDCumhKRbcjBJ+lkl3+LMfrShFBs3Re9q5OyYshW06YwyvuJa2dI3HeJo09eQYvbrC
ZvklwWDLFNo1tiRerDzKUCw40Y/6KFPDcXCdYAh2lCNX+ZIm37B/NyD7Tm/HnBhFJ2pQ8Peh4Sge
nGGGYDfqUMxAheNw+eTyrroq1zCJQXSglnqt6jAtsmsCI+hDG+UUEUz5zbsSxSEMUKedQ8sZIplT
FQi00KFq6ixkgNI0a0DrbXQoW1kizZ79v4L/L/APa0QSyMrM1Z0AAAAASUVORK5CYII=
</CSPBase64>


<CSPBase64 name="js/fancybox/fancybox-x.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAAEAAABICAYAAAA3Qp8tAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ
bWFnZVJlYWR5ccllPAAAAG1JREFUeNq0jzEOgDAMA90WChMDUsXKp3kcTwFRQp0hUR9AhpPtJo0C
EQG2UkIEIMRAqAUR+0xVNpt7eLNPjES171U9ptzexGXZa5nbYM2KpA/QE1pNtAutLtI67Y5/0G87
UsNOrMRMgKifAAMA8xojdBZ1K0cAAAAASUVORK5CYII=
</CSPBase64>


<CSPBase64 name="js/fancybox/fancybox-y.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAACgAAAABCAYAAACsXeyTAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ
bWFnZVJlYWR5ccllPAAAAFJJREFUeNpMjF0OgCAMg4eAegLC/U9HOIEJutnGPtjkS/fTLUWEUb21
BMuAvtmnojqLQ875qR2putsBH97AwQKPWD+YuZRx9a471jHmZG+vAAMAMUgY/0A1OZkAAAAASUVO
RK5CYII=
</CSPBase64>


<CSPBase64 name="js/fancybox/fancybox.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAEYAAAHgCAYAAAAYHBvDAAA7fklEQVR42u2dCXhcZfX/p0napk33
0kKBtkDZQVlkUaGKK7uIylZksy6AICJYdmRTQEFAFgWUXZRdEEEUUZAlmWnSJumaPU3TJV3ovrDU
3/nc/3nn/+b2zsy9k5nmzvTO87xPkpuZSe53znve5XzOeWOx7o/dpU2R9pS0t6S9uYXaW/o3p+j/
4PfRR1oJ7Ygjjij71Kc+1Xefffbpt+uuu/b/1a9+VXHvvfcO4mcav+M55vn6Wl+Pb0h7V1qztHpp
tVu41evfflf/l0yClErrK618jz32GHzuueeOvuOOO3a6+eabd73wwgsn/PrXvz7o/vvvP/Tggw8e
e84554y97rrrdpSvo+QxiNfoa0szCXSGtA5pM6UlpE3tpZbQ/4H/5dtpROGT789NfvWrXx191113
7fvGG28cs2TJkls/+OCD9/7nenz44YfTli9f/sC//vWv47/xjW+M33HHHUeoQP31vTzF2cf6xHpT
FFsc/pfp0vZ2/a8leiMDdtppp2EnnXTSuD/84Q+Hr169+jm3GIsWLfq4ra3tY/f1lStX/lksbOcD
Djhg++HDhw/lvfQ9S9zCXCGtKSSi2OLwP13uYSkD+cS//e1v7/riiy9+7eOPP27jhsVSNknX+UAs
aJ08Z7XdpDutvf322z9Yv379Jn3udLGe08TvjBs6dOhw3tPLcp6XVhciUUzjf3rGJcqAIUOGjDjy
yCN3ffrpp0+Ue9zIjb722msfjR8/fo1bEHfbc889106dOvUjYz3yutPl2k4qzgC3OG9qV+rpjcSl
VeVYmNf1fyxVfzD0k5/85M6//OUvj/roo4/aubmHH374g9LS0tWZRDGN5/785z/faMT57W9/e+L2
228/lvfWv5F0yG/lQJjE2LFja8U0Z/bp0ydXwtTq/9ZHR5BB22yzzfbnn3/+4eJIXzaWEkQUu913
330f8B7in95VX7Ydf0P/Vkm2FpOwfBJf49K/F7W0tKwTpzYjR/6qVv83/slyutDnPve5vR555JFz
uKG1a9d+LL6mW/c58MAD1x522GGb+ZjRo0evmTx58oaBAwcmr/Xr1291Z2fnh7zXm2+++TN5r93k
+ggdykuDCpPo379/jcwJ5kvr6Nu3r9OFBgwYUPP8888vlT+04dhjj51rhJGbqZG+X1tRUVHTQ2Eq
5Ka2l1Ho8NbW1ke5mbvvvvsD++b33XfftaZ7XH/99RvN9V122WWt/F+O08U526/5/ve/v4HrS5cu
/bf8/ElpY9RqyoIKEx8zZsx0REgkEivFCSJC5aBBg2rkk1xcV1e35stf/vIcnldSUlK988471+69
9971I0aMmNYDYfj0xD8O3eWYY445at26ddO5mU9/+tPdLAPnK7/7ny3ObrvtlhSFh8yGN9qvGTly
5BrxVc7vhg0b9jm5trO0YdL6+RXG7jpVZ599drOY3/sPPPDAIrGWajHLaoSpra1dbYSRCdQ08fj1
Mt+o5fc9EIZPb+S222677wknnDCJm1i1atXHXn5DrHWdLY48LymKfJgfevkj+Z8dR3zZZZddOHjw
4D3l2jbanTILI92nWiZDNTrqJKSLTJN1yKK33nprxamnnsp8o+qZZ55xutLRRx89VxxwQtYrdTKR
qpdPOmktcr1aul91QGH6ikWOlvXOwd/97nd/xE00NDR8lMqpIs6GDRu6TepSiUJ76aWXNurodKt0
+f3k2rY6dGcW5sc//nGbCLEA/6E3VimOcPbbb7+94rnnnlsqJlkjincglHSdGfgWupAMg8n3xc/g
b8S867GyIMKIfxkjPuSzstaZwk3MnDnzo3RzFfEZm2xhbrjhho2pnv/CCy84wsj93Sk/Hyhte3ya
H2ESF198cZsIsOTxxx9ffM0113R84hOfqGdYvvTSS9tuvfXWTrGmaThgblw+man4FHF6tXJDNWVl
ZdXSDaaJ9dTJzdXvtdde9T6dcVIY/lkZWT47ceLEC7mJZcuWfZRKFFkKJEUx/sPtkO1WVVW1nt//
9Kc/vVHu4RC5toNfYfi0q4866qg5v/jFL+aLOF1PPvnkkkmTJjXRxbh5nbskdJI3VcSYikBYzu67
7+4IIv90ncx1pvP8oF0JYcRSDxVnPlmm813ciHuoli67xhaF7nP88cd38zkXXHDBBvdkT9ZOzpAt
E8fz5G8EEsY4Xseh4lN+//vfL8KKLEE8X4flYCE4YESy3i+oMGPknz5Y/MxZzc3Nb3EjF110Ubeb
ZJTy8im2Q5ZlxIf2a1hX6YKTRetp0j7ltyslbAswP8unVetnCOY1dBt7VEJMn7NjW5jRIsz+Yn2n
yD7L7/VmPrQnbGZeglW4HS2LSLqS28rEJzpzn7/KQ/eAfDnfBHMWGQlafvjDH7Z+5zvfaRHn1yxT
8tYvfOELs/k9o0+mG5T5wbQJEybUic9xGqMVDtiHsN2Ga2l7Sdc9Rm5uiox+07zmJUGaTDnW65Jg
gQwel8m1o/gbfobrOPMQ+YQWyM5Ypyy85t90003zZVNoAaMUztZPt9hhhx2myzJhpjjsGdKPncaa
Cn8TZILH5Essd6IIOlk+rPtNt+EGg4rCskE2rz7W0egFuXaOtIm+J3gMzdKvZxx66KEz5WZmyFpk
Jo5UfM10vxM13oOZsTjHGkYvLIWG4w6yJNDp+v7STU6UUe5yWQQmN6euvfZa35ZzxhlnrJd5jiPK
O++8E9d95hN476BLgoQ14sRxol/84hfn7LfffjMy+QoEYVSSoXaal+PN8Ppui0hd4O0q7XMizlki
8k2yXnrRiDNnzpwNp5xyynq337Ed7XvvvZd00CIKFn+jtDN5T33vwIvIBJMy8fyz8DnSrTrEhJtc
S4XNuqJM8KbLzvzsww8/fBajE/4mi1Epue2gWwP7SjtSxPm+WOEtsgn+4vz58xvMDWMNTPNly3MD
TdZ0G8yQrHOgzttuu41F4y3Svs976XsG33ZgFnvmmWc2XX755W0/+clP2r7+9a83cNP4Dxyq27ro
NjLZc+YsOHC64Wc+85mZhxxyyEwmfj6XBUaYbhtV0thUOkDaMYgjf4NP/aE777zz7aampjn/S/Fo
b29vlk2tuPzth9VSEOUYfS/Pjaq0wjDksmiU4a4DcXCeDN/MaGVO08g11kN0FwRkaMYPfe1rX5vL
sI5QDNkIgjCylJilc5pEAGGSW5vS2IYcpz7hSO0KU8Sib0Mg+V+e/9KXvvTfq666agZNVuTvyAf4
Ir+Tdpv6lDP1tfvrewXf2sQPsARgbSQ7aMbpxqVbzfzBD37QwowYMbCIk08+uVGeMw0rkS2JOZ/9
7Gdn6boogcAi3nR2+nw4Xrcw3TbD9UbGahdgNPm6tO9I+4m0a+VDu1nar+T7X/G9bIFcq7/7jj53
or52rL6X52Z4WmHYV3F9ugkZFaaffvrpjeLhm+hOXMOPYCWIggh0H8Rh3uIldhbCdAufqOnjFybo
J8/NHi3tm9ImaazsDP3+m/q7ifrcCfratOGTQFubfNpYCU4YKzLWYIQRoZzuw/Lh85///CycL1bU
g/2YVFHI/jqMD9ebHK/h3X315g/Utr9e212fs52+psLtU3oiDHsxNbKAbJS4TpPOXpPCyEZSUhjj
tGV/Zg5rpRwKY8TpY1lQX73JAdotKlxtoP6uvz63zIpfpwzRBrIYugE3as1cHWHEMmbJnmyDvQcj
I0Y1XcunTwkiTDqxMjXfj55GCRyx8CVM9QNsK+RCmLzSDj0OuLFlidUYp5qj2FKmrpR32iEXAbd8
NBNw6zXa4T8hFYZh/o3epB1eKICgfq/QDleFGAO5ojdph3300wkbOFSr/1uv0Q48zpI2L2So2RmW
tWRNO4gfWZMt7eCGExuk1fSCKDX6t91wom/awUsUiad/fOONN262w+eHdrAfxFQukcau+bQtKMo0
/ZuX6P/gHoky0g7uBhIiezCbdC9mk9dzMtEOXsK8uIWtpkb/ppcwvmgHtygyLG/S4XkTP3s9LxPt
EPau5Jt2cItCN0rlY/zQDmHnfH3TDkFFyUQ7hJ3z9U07GJ/CQyIZ6/wM3+loh7Bzvr5pB7++xS/t
EHbO1xft4B6i/YjTU9qhtzlfX7RDNuJkoh1ywvmyU0d8Og+cr2/aIZU4qeYx2dIOgThfAv7//ve/
VxDrdv0ukaX/6jHtYMSB8c0l7ZCK860GC5FdsjaCbojCNRnuFko8eAVRARWiCmZPIJ5lslE+Owtx
wks7ePkRQiEyHV8Ak6c3XEVQDRbv5ZdfXiYjxyzgRZlJVvOzfCIfyifWYjC0bAHoMNIOm3Ud2R5s
fOKJJxbL4mx+eXm5g3oYYQj8y3Pew6o6OjrWP/vss0vxPz2wmPDSDnQVjTfHTWwJZF4gxS5F5Kuw
IroScWvxA3WgrfLPrtPfx02YRbtfcdAOZ511VrMIMQ//ofkDlcBECHPPPfcsBI4+77zzWh577LEu
rONnP/tZh/Thj4RAWKA4mpNvQNxasLPagJxvOGkHI8xvfvObhaJ0J10EGIhhWZxg85QpU9rBPrAq
YtoIwXNef/319yEjEAXOFw4PdA3e12fsKdy0g4ko4lQFeG5HHNpxxx03FzGwBAtrTejzaxQnc/AP
oCHEBACwnl/YtIM9V+Fm8RkQVRCcGTjfuIxMNVgJxDh+KeDkL/S0Q8LN+UJT0X0y3RyO1ovzLXTa
IcGcRbYTGyGnZIhu+OY3v9lw2mmnNUFG6U1mHILJVJHgGLg8IEAt1iOLwTrl8QqSdojjMGVnq12W
5O0/+tGP2mhXXHHFPPAyQ0plEgaHDA5Cl+Ir/oY1lc5tCpN2kC7gUAyMLtwUcxR+NlyMny5BN5Id
OGcehJXA6/HVR3JX6GkHeyHocL7MbknS8tGNnFHJIqqy4Xx7jXbwzfmSIfutb32rQbpUqyCtjZk4
X3Az/BGvo1v6pDX9ON8tQjtktBicJRgZEzqZ7DVBhkNg0hRZ3YwIh6xiHsNz6IaII12yHgecBefb
K7RDRpz1xBNPbJDZbAvwIRM1w/nKrHIugiEEfgerwHfwleUDjhdhmfAhiGD29VBXVu5SVhO8LUU7
ZBQGf8INkSRhugm5BDB3zIixAH6Wf2oOzyEJA+53//33n6H8XcKkBDIa+cyq9VwShKa2g8fs1pnf
MANmWaAJFAlEwErwK4jAsAzJ6UVsZrEk6BXaIdDWJkM4N4wTxooQBUgaH0KCFz7FpP3heGUVPquH
CemBaQe2NDMF23Jd24G8AMe34G9YCxlhIMHFKSf9Cs9nzkPugJeDzkdtB9OgGzJFInNd28HpBttt
t12tNXN1/Ic4uJkg8iqM81yGeCyoh5xvYNrBb5g2l7UdPP0D11gDMTPOA+fba7RDLjjfboxvjjnf
QLRDUHHS0Q5h53wD1Xawm0xM12aKSKajHcLO+Qaq7eBuUA/Wvu+mILRD2Dlf37RDJl4GCwpCO4Sd
8w1EOwSBiDLRDmHnfAPTDn7Jqky0Q9g538C0g995TCbaoSDgxCC0wyWXXLJB7vXDdKL4oR3Czvn2
Gu0Qds6312iHgkDme4N2CDvn22u0QyHU8+0V2qEQ6vn2Cu1QCPV8Q0s7+P2U47Hcc769RjvkhPNl
U9wARVsgvTh0tR1ShnApuENlRa3+kUiV1V+stR0SxIRkktRMiRSb84W7+9Of/tQFm2c4XyKW8L/W
taKt7eBQVYgApXnQQQfB2FUhDKjIgw8+uIhoAddkdKimwqIs5FbD2ORZGNuCSi0rMtZR6sdCsgrq
25wv0QA4POrhEWfCcowwWhq7kjIq4K0ydV+osaagDjoIBlKm65ty7TpDdM0zTL+v0N/1c3Wjngmj
jEuS8yW2JKhFK8UDJfpIYeMEVVvBW/ExhFf+/Oc/d0FuypxijulaxLw1zJvIgY8x1tFPfchQKaO7
x4oVKy7fuHHjX2SRWE/je67xOx2FBuprSjMJlDFESxUzEFViR+pXqoCJqKhItyJID4ImodNO4tZY
0uzZs9deeeWV81SESixJZp5dEtwyiRjxWPYYSIl2kwFqEaMlrPLH/2V48Byeq68ZYE3/sxuVoB1k
FjmP7oIApm4vxbpAQxAG5IPiXlzHMUvEsAvqgaAbAskCbpWsadZTV1y7WzbC2KLwyY+QHb1jxSoc
JmbTpk3/k2XB6qeeemqBRCPbaXzPNX7Hg+fyGl0wDkwnTkZhYHPF0c6i7BvFjQV6biNOnYrz5Ro5
BlQ+k12ylQsWLNhQX1+/GlIcRqYHnK8RBZ8xUt73u8Ya3n///Y1Sb7hdrs/1avyO55jn81rdAKtI
JY5v54t/gGgAUoTizHCDVbIN0CQh1XWk5kBG4GN64HxtUbaRBI7vmZuUFfRyKS3XkEoU03gOzzWv
4z10x67Cq3RBYM4XP6LOOG10EieN1Uice5px3AAAWViMvYgcIZTDoQIMreTm/vnPf3ZlEsTdeA2v
5T14L+1WvvkYx0Jkg2c2nzZQEKX14WKAhGL+qjknDBJCtTOoB8P6+qCqbGFKrG2HHYV0+Ds3Nnfu
3FVBRTGN1yo18Xfe09p2KMkoDJXLcK6SiMVMt5m5iRACzTJKzTWkVKZPHpCIxAqKG0Nm8RWoiMSL
AHxMmZr76FdfffUI/bQ3SfHl5myF4bW8B+/Fe+poVWFbTdp6vny63BjzE9BUftazBnzNZHkPsHks
hNeZFoDz7aPzDj7R8RIhuIWbkelA1tZiGu/Be/GeusAcqn/LF1HVjfPlJpnDgJBl8hUGSrSIqkTM
f+1wd4bbKGl7yDbl69wMw3BPheE9NODP9sYe+jfKgxBVTpIo2wr4GroU/kZzCdJWmccfgbOOGzeu
Ts8jCMr5lqqJEyHcT+Yh8zXW3NpTYXgPndvM12CbiUL6IqoSOE7mLTJEO/gqZLgpce2VE4AAkFWI
ySkXdEOgInwMz/eZ/mfzMUN0C/IQ8QvOTr+UqmzsqTC8h/orIKRD9G8M8UVUMUzD1pGBgjj4GYZc
bo4ipFyjy+A38D/GLzFM43iV860mlYdECxIsAp5kUaaLwV2kHZZHYQ7TvzHMlzBaW9P5xK0cpTgO
mVU2BdYRyeCrPAdLYtrPNaXAk5wvK22d6AU5l2C4bkdOlPDIglx3Jd5Ttz0n6N/q65fz3Wx+A41p
StJSUhIRwFdJHEUE1knszdhFSbPkfLsJIyDhe7l2vrxnYGG8hl/4XiZ+WJGZzSIMO3UmZYfUGz2H
oN5PNpzfrjRjxoyHcz1c856Bu5JHFkqNFDCejbWYbBIshENfLGGSXRCrscrvZytM0vlKNu95ZoIn
56+0ZCsKrzUTPN4zsPP1csasleyqzlyjrjg+xqbAGZX4mcmcrrWyxVmTw7W042RlXJWrJQHvxXtm
M1z74nwZ0pnnZAk7+57gSfuCVB75iezOrVNsPvAiktdoHtM63ov3zHaCl9GKLM4318J0WxJIO1ja
iZJW87DZnJK95WXiyzJuO/Acnms2rXgP3kvfc7MlQdg5X3sRCQYGpMyi74x58+bFs92o4rUaqTxC
33Nb9yIy7Jyve9thrEYXQcMmy6b7w11dXZ3GehobG1f98Y9/TG5t8j3XjJXwXF7Da/U99nfRDslt
h0Ko52tvVI1UJOwgxTi4watkH7c+02Y4z1F8d7K+9iB9r5FeG1WFUM/XvbU5Succn1KcA8hIRuCL
7xQf8qZ0k9bl+uB7rvE7nqPPPVJfu4u+l+fWZiHU87WD+f2UfOKGdtJh9vOKdwAZXqQf9s+1XaXX
ztHnfF5fs5O+xyArzrRZpCDMnG8shTgV2gV2VOd5kDpS5iQnWRjISXrtCH3OnvoaEyHolyn/Oqxw
YqaA21Ddlhync5H9dBZ7uLZD9Noe+pzRFhfT12+4Noycr5+Y9UC92W109jpeF4QT9Pvt9Xd2iNZ3
DDusnG+vBfULrSttMQwk7Jxvt4dMR/LSvB6h53y3HTUqm9bH+kor4ecgwoSe8w0ggv1ziSVKUhy/
ohQE5+tTlBLrq7lWqi0pkl9RCoLzTSGGu6v0URFscUq0GYFK/QiSU86XHT3JWazNB+frw2JKXM0W
ip/7SuvH13xRm5sd+WzCtwTJARbZ543ltp5vKkuxW6mH5RgxyvR75+d8CeNwvlLwooGiFxpRdK4B
K8LkKSLidCsilhQrJVLQE5w1haXY3SVmWUtfFaaffl9ufR2YN2EIhVB96Oqrr24XyLDOcL7gIlRU
ZFOca1Qy4yhoyU1cyvGJeRDGtDLXkNzPspAB0vrr1wrE8etfsuJ8iQbA4VEPD86XuJIRhvgSlCak
pwS0uqA6rfJwWXG+Hk62xOVDjIMtUyFMNxqgljJIhRnsd0QKwvkaUMiJLUE8UJkVaJFr4K50JfAQ
Ca/UyvcLhNxcrIWPnSOh2TQnUhmU8/WYq9gjUJnVffqrIOUqxAAVZSiiSBsSZB6TURggZo5YpZto
fMiJXVNVkaPkCbyBoyEU1gF99fe//3251PhtVVEqiVrCAct+6xKoqiA4q4dviVkO1nSffla3Gaht
sLYR2rYJMvPNKIywMLM5kJeRBwYPcgGBxHfMpYCXcr5OcI3rdCNEgHqA80UgqTG+FIT+lVdeWaah
3aDCuOcm7hGo3BJkkAqCpQyXNlrbtkHWS75KY4NvgLDC4yEQ4Viu09ycr7lOQS/xM0sqKytXigUt
kzRgfFBdUGrTNbst0e5TZoliHK3ddWjbIIa07bRtH2Qx6dv5MiJBNNBVvvKVr8zOEHatYkiXswre
lxp0nThsk1PQQx/Tx3K0ZZbDtUXBSkYaMaSNlTaOllNhEMAWgS7jh/MFGIKiUscd5xqjmFpMNl3J
7k5llqWUW/5kqIoyStoYFWa8tF2kTQiyBZESZ8VC+KQ5nplDvWlwMeo8/XC+cagI8gokwWKx5EEv
5uszzzyzFD+U4fVezte2lL76tdzlU7ZRf4IgO0jbSUWh7ZETYeDl8Cs02Du6Bs4W9Exx1IzCyESw
Qyp3bBQGZY1pixcv3oi/yWA1jjD8ox5dqcQahfpbI9AwtRYsZUftPgiym7Tdpe0ZZOMqZVdiyo84
jC5gqZDd/OyzVqbTyF2ibh4WwlKCwx74XmvjJQIIY6+JjOUMsEahISrKaPUtO6q1TFBh9qHlRBiv
bQWGX/wGQmV6DRNBoCGLIu/W/HC+LmFi1mhk5i4DVZQRKsy22oXGqyh7SttbhTkg18IkQMzYVsDP
MJeByszgZxzOlzkLPonS+1ojLxDnawlT4uFjytVqButINMLVjSaYLqTCfDKnwsDsMm+B0sS/UH4W
xo6Skoqsbsb56rkEzqRPEFjnsAbAInIIfNJVtjAlruVAX8u/VGhXGqbijLK6Ev5lV8tqcicM5o4o
4ifm8JUuZIZvIEUsh2EZv8OMGFRV/Md0JnemzC1dCnERBgsKwvmqMPYEr8z6Wm7NXwZb3WmMdqex
Ko6xmr1yKgwOFDzVmrskcMh0K27UdDNARC2aXmMKr5tkCoSkFD8+R89PyaYr2UsDM7EzC8YK9TXD
rRmvPYfJ3aiUKhmCGyTn2i5+jHAsG5j7IIKpvYmoPeF8PUYle5O7n0ucIZavGe2a9e6MQPkYlZJO
mKQJqfA8i65hbhQ/AterBzFw1BB5Ss55BEGGdx8WU+qay5Tr10GWOMPU14xyLQt2ypcwTila0oxZ
M2nXcjhfc36BfUIFJCfbmj0pdOyymBJXVypz7cGYnbphajWjrHnNGD+LyKyFwTrkRqdb9cMd/8H+
DD7Gvs6ohFB8zZbzdTnfmCsc0tfliPtb/maoNRM22w5j8iqM1zVmxOze5ZrzdS0JSlKsm+xNqgH2
VqZlPTjkEXkTJt3qG4Fs5jcPwnhFCcqsbU33BvgAa7mAQMOCCBNqztdDGHdM2h06Mf7G7OhV2N0r
iDCh53w9qIUSj2t9rK2IUmt2XG5PBINsO4Se801BMaSa25RaDtoOujniBBEm9JyvR4i2xCM0G3PF
m+wQbTKKEGRrM/Scr0/0o8RlOW7f44xgQcmqUHO+GTAQt8+xu5N9zZOP8RN4Cy2cGICi6mP5Fy8n
3SeoKKHmfLPg7tzDenJimI0ooeV8s4QTPec/QQUpaM43F+hqwXO+W/IRas7XtXBM53wztqCPUHO+
HivrElfwLW/ChJrz9ZjIlXoI5cuagj5Czfm6kI/SNGKU5NpicsL5gpARNsk152stBEtcC0WvGW5J
LoXJST1fTjaWsiNt7PN6cL5Zb1RZG1B9rV27vq7ZbYnLovp4ccH5FIYogVNoh4I6pjYesSNgxcsv
v7ydqIDpVtSQEf63jf3gbHFWi3/pZ62YS12Bt9IU66Y+W8piCIvUACrC5ElMmtfFEUaOR2yU4qOt
GlKpIjpJVWg57XMRlYl6IEyFtZ/S34oK9LVWze68Aa98g7wJk+weRAPg8MA6CMnC+SKMHO3TSuAN
YSjuJbU1O8FcTawpYNcywpjwa4VuVQ6whLLFKUmxmZW/rsTNWwd/OxXOgIgAFYklcW3SpEl0pTYq
DBFeEWBo3i233DJfupOZTcc1TFsTUJjhupk9yGpGpHJrI6rU2hx3J17kXhhGGQL3BPXpJobzJVSC
MJSxpduAlPEzcSXK3ApWtkjEMiWx43Q7OGADSfuwHCPMNhanO0TjRYMsaGiA1b28HHH+fAx0N4gZ
N0y1IYNyCJ83m7p4CIOfobIZtfEApqW8bTv0A9aFY5aqPguAn6V8tlcl+nTCbKvNCGRbkKG/7S3M
MpcoSavJuTDcNNYCCI04NAL4XPfifLlOI6hPDV85aXgJhdXxN5SL08KCfrvSDhpi3VajiaNUnGHq
ewZZ3aq/1a1K3Hsz+XC+zk3DtSAI/oVjm+1DM704X4b1Rx99dDFovR7oOzUo56sc3VgFgbZXgUZa
XWuwZTV9ra9lefUxJmhv5iyIwChD90k3y+V3OGz8CXV9Lc63Ogjnq/jGeBVnrIpjSIYhVgLFACsa
UGLNlpOjU66EceYsTNKgG/hqvucoeb35jPV88U9y1lonuQUySnXy/T333LOI4dwPtanAz65qOeOV
dRmj3Wq4tgorJOueAJbkuis5eY7cAI2ZLo4XZ8soZSoiZhJG6v+2vPvuu+QSLDctHo+vlPLarT6F
2VPFmaDNWM9odcjD1GoGunKV3PlMuetKcL6UgIS4hGaAo+PnTLi8DUBjdaTzQJQzWgE4IrR9/HMG
YfZV4nJPFWYny9+MdvmaQdbywQ005nXmSxKXw9uBkGVYSSeY/EkC6QJmyOpT3gvK+coN7a/C7AXy
rj5nnFqN7YiHuiZ97gVmfoSh60Bs4mfoUlbd8FStUtZTrXKe9IdSDmn9Aw88sJiRLItR6QAwVBVn
N/U3Y10WM9Sa17hHpdK8TfDwNXz63BiIGXMaugicnRdGxtyG/RleRxKXpOaskHyCDXLo3GpyCLT2
pt8JnrEW42t21q40Rn3MSO1KQyxh7PlMaV4meAzTMLuskBEH38A11k9M4LhG98LvMCPmOjNe/Iqu
r+LAjFJ6rUOOY14j9bQ2irizAgzXe2oX2l2x1HE66bO70SDLv/S3ZsB5Ga6T8xHEAE/V+YjjP9it
Y5XNGohuRulrhCI3Cc6XbFpITvUjVezjMGOW2W+b1un0azGm+5gRaUedCY9Si7HXTv09Vtx98raI
dIGFCayDGTDWYkrSajV6B11lG4LsEizFGn2y3Xaw5zA7WNYyQofqIRYx1d+Vy1Sa17WSewsCK8EJ
I4aK55TDJt/RlLJFPBaLxh/1YGvTDM87qiijtAsN01bhshib5twiw3XSscLuMiqZPRosBGHY1tQz
C5KJYGTz94TztQQZbfmVoVYXsid2Za6owhbb2pyqSeVO5omZhyAMcxutKz7NXpX7PJwhnTCG0R1p
OdvB1l7MQGuNVLpF92NScb726hqrwK94cb5ZhlSMMKbrDFcrGeLaqCp3hVj6pNre3OIBNywmX5yv
5UvMXGWga/+3zLVw7JMCKuqVgFveOF8rcaLCihi4S6DYvsWr4E5WXSnUnK9r87ufNSSXWd2nr0d0
sqSnPibUnK9rs9u9DurrykiJucIoPRIm1JyvRXjbG95ei8SSdDGlbIQJNefr0VX6eEQASj18S4+F
CTXn6zEEl3mI4YWB9LgrhRpOTJFg4ZVTUJJrcCjUnK8HUZWqnmbOUbNQc76urtQj5reoulJvPyLO
t9A4394UJvT1fHvrEfp6vr31yCXnm8ixMK/3pjA54XyJMbHxnY96voVmMbZ1JAj2AyxqVCAR81f1
LJuj48MpDFECKbAziyI7Nud7/PHHN1ChFWLKcHeEU8DMFBtJFLMwUFXVVCkTJq9RwycO50vNXqmo
2KTgoVPk65xzzmm+/vrr58HUFLMwye5BlBFEHpTMnJ4O3oF1aLWzOPVlIMW5ZmJN2QTcQi0MnIzs
/ifLMBEJEJBoDoUDTRVFKp1xSDg+htCKBPNbhBRv18LHSc43AFsTfmEIroGuUijdcL6ESsRqGuF/
4fHoLkKHOyVsKVBKNWhq/BpR6GLf+973Wq688sp2VyJGYQrD8AvtIF1lNjgr9KWp28v31OLEnxDY
xxrg8riGI4a+0uLrc6+55pp5VIVGMPVNhS0MAnBzcjPT4WOwBpAxRhyuI4gZnWIuzpfY9VVXXTXv
rrvuQpD5+BtECcL5FoTzpcvgU6jWihVlmMw5DhhaE0DRHOirXExRCGNzvk7Xwo/QfTKdIoqThqMx
R8bzWkYxiyQvSGEcC4Fx4dOGWqDxPTcbywwXOu+B4ya5gkZ+gWTBtYObWRWhC08YqAZT4Bj2jpGH
GwID0VMsMgpzyimnNElyRRfZKOQT8FUKHS+hvHahCuOYPSMQnIvgYdPJQ+JnrbLqa6bMSKWl4Gbi
cxAWoTkauphmvs7kjtktQmXifBm5ZN4yjwWmvj4w5xt6YYALsRx8Dt1Kk0JTjkhsarOeamhoWPv2
22+vkNOD5wMzFtOo5BBUHA3PjQEkslqmi7AHYxNUxlLESc8466yzmkgDZHb85JNPLqmqqlopB8Qs
kxyCNmvtVNgTPETB8eIrQFEBhXC+WA1rIboXQpGuI9cTzHDlvPqPSSCl+0gCaS0ZtXKKxfLq6upV
mkcZL3hhcLhAzQojOtfpVkDOzGR5DkO4SeljxOno6Fj/xhtvvM/r5FolQsqyYi6/83kwTPjXSi4n
mTAHMWAtZrUsDnm6SSaF/X3ooYcWL1y4cKNsPcxz+ZXi2XZwWxArZSZ6pOvELJyVrqb+o5JEjOnT
p6+pr69fM3HiRD+IfGELw+LQFDA2XQthGMLpSiqMc54SC0dyB2Sl3VL0wmhXmWbT3sZi6FrWKBXH
otgLZvuh6DfDUzXjoF2wc5DVdPEJow66OoWzLtjwSag5394U5j+xkNfz7a1H6Ov59tYj9PV8e+sR
+nq+vfkIdT3f3n5EcGKaRyjr+YZJmFDV8426UsT5RpxvxPnGIs434nwjzjcHwiTM2ZDFtO3QY86X
jSmgIsqguMTZujhf0A6CZoak4hq1NmHw9PBd5zr1Y8DMfBzIW/icLzElQiPgqxpMc4SBYkAEwrIx
Df5zSjFlJKk1E9saOF9q9sLiGTpcC5LOgtIkQskGOCgaYROu2SeSxoqM851qV/kgEkAsG3GUBJ9K
DSu4X3wMwX4BhhqEDG+SWFM3zjcAWxP+EC3BNcAf+FzjV4gVUeiPwn8E3ugu/Ix14IipjIjfMaIQ
YwILoaS2KxGjsIWhq1A3E8QDLITrsDKUZMKasCKGbMMF44ixHq5TjvLcc89tBaGnrrgJ7cYKnXaA
5cXRMhphDTQqDHHd4nyTfoiuB2hEdBILgQYXQdqMDwpySG9BOF8sg5sVpzsDK7IRV4/nO+X3L7nk
kja6kCIiQRxw+IVxVxHCj3C4dywznlZN0UCGeNuaCp7zxalCQ0GDM0QzYYOB0SHZ17wHPwQZToKF
ZMC1MIQzt9GK0IXJ+QIAaYHjmcx0GXkOPPBAwMQ6v5wvSV+gZzfffHMHgKK0Dgqrs3woVGGcLgRX
B3fHCMP3iOWnG9lWB8yIqMCNptnHP8eKhfOlKyFUJs6X7kdCF8Czvr7Sdr7FwvniSB3ODmRezz1J
J+J7Rx999Jx//OMfy8FZoTbJRYgVE+dL98EJw93hX8DKmMwxOpkipLH/DwnFEY+cSWbHUOG33357
51NPPdXFATFnnnlmExVci2KChyhYCV3DZLeBlwEjGoQVVBW4mZuWTJN5TU1N6ySzltS/SuY+Z599
dgtJFn/5y1+Wap5kYXO+plwk3cjN+WJBmlOQ4PgOwVc3sByQ7Nq5VJZ//PHHu5jHIA5dkbxKtiKC
VIAOtcW4OV9yr5nbYC2yFnJW3o899tjiWbNmrWGVXV5eniCzrbKyciWlsd2z3WJbEiSFwsewJDB7
Lwjz8MMPL54xY8YaPYihkr2av/3tb8s4h6DYE9KTezHGWkw9X74+8sgjjsWQsW+cMGe6kTsgezON
RS+MHh41DSdr1jxYzLPPPrsUH2PlJjmFjsnm1xrhxbsZ7kZVre8TMgy3yLkmCzxO/dt6Od8chEoi
zjcWcb4R5xtxvrGI8404X/OION80jwhOTPOION8MwkScb9SV0j8izjfFcB1xvh6PiPNN8Yg43y2w
7RBxvjGPUKwBimJbOedr7+Q51cvYCPcRky5ezpdoJIUvDI9H8A2sA2EsRCRB6RQwswDYSOFyvmx8
m7JvWszCCDMDEQx4yPPYCJ80aZKhqYo7ShDTwzI585qoI6LgV4wwWsYtTtyJ+DWwtFZOLErOt1qr
fBhczMFXgRQ1KjD1oIMOmgH3C0ODEMSXCMdauLxjWVZd4MLnfKkDTpxaus4041eIZyMM3Yqbpbvw
M4AzliSVWJsVJ3NARbodYgEqaiJG4ceuYe/oKtwwXIw5bxYxYOxAV7EiRDFcMI5Yq5xV0+1OPfXU
Rmr8Ulfc+KZYMXC+WAs3zLAMl8eIYwRxWxjXeQ3djPAsYCJcDKQ4PqjoOF/8DCC0KRJonyzq9XyG
9cmTJzfByZgDfWPFxPnaFYVMooQfJ4rVELfWBI3iqedrSHCKqIN+0Mg2sZxwRiuDwsLhklvA8M1X
mds04Ztihcr54mQZluUmZoCH4WO4IZwxztePMMxjrrjiCieXwDRyC5SjKVzOF+RDj3F2Co4CJHqd
UJxupsxcBmDRVJPmqwU1Fhfn62Ml7ayVWBJAk+u1qlixcb50HUBEuhGfuh7+Eteb9RKRspKzhLRa
JMh8Jyfp6JqpeDhffI3W0qynSzA/EQDRyYOUXAGTE2BuOMFQLmTVbGa4kJr4mDvvvLPzxhtv7JD0
wEY7G6WglwTmWHhGJ91vcVL/EonEKoBEStYyK+Z0HBA0Mkxef/315YiCRZHRRm1fam/ed999C8Xa
6otCGBwvQlhOt4ojOxYvXrzhiSeeWIL1yE07+CqOlRRBuF9BzzqVv6tihsxCk1MwiqICtEeJyCqc
KdZSV1e3WhIosIo4IpA3gCgIxfkDlNmXNVJTrPsRQoli5HyZ20x99NFHl1DhGcgZUZjh3nrrrZ0w
vXoQQ6WsqWY+8MADnEOwWEthF/VGFWnCtVIYfXVNTc1qHWWq2AhHpFdffXUZ6cbGEeNrnn/++SUk
c8W2Bs5XtizJtzY51c7i8p577lkogq2wju5I4F/YctAa4VsFzhqPdc8eSZClz7DscepftvGm4qjn
G8sPzhpxvrGI840434jzjUWcb8T5Rpyv9YjgxDSPiPPNIEzE+UZdKf0j4nxTDNcR5+vxiDjfFI+I
883XtkMs4nzTcr419ildsa2R8/U6XIqgP6iZhziJ2NbA+bLnSwCOEK0Rh2sE5KhFZdVxcGo7cDxr
lpWhC47zBQ2ptyqTOQeFi8XUURpFhWGDfCob4ccee+xchNwq9nwJucLhUYrJ1POlKyGMITJNzV8s
RmPVQbtW4XG+BNgQBXEMDk9XInSCj4Hz5dBMyHD9fcJYVgC2JvwhWjgXSAe6ieF86UYIQ7fiZkHQ
+JngG9YjlVjnIJYJtyj5MIuS2qYLFoUwhoTCX2AVXAcNwQnjT0BY8T/KBddyGjrUFNZFRTSikTB4
lK4tCgDadJ2RI0c69DcC0egiXKeb2TyeITO5znMoEgicSKF144OKLqiPnwEHAVI0xzmnCbg55ffJ
J6ALaUX64uJ8TYaJmbMwy3UdrZpSSCzEOFwzghW683VARMP2Ql5COmApgr375nx5Pt0Jp0thL74y
t/GRwxReYUBXGWFolHijgcEzjyHdz48wZKdIoeNmcglMo444y4dYoXO+oGZ8tRAxAyP64nwpK4nV
Mekje4WvPhac4RXGjZhJq6QLwNtJVkmTCJfuE0/gcBmNrPlMVcx/acmCGJWqxGqqzz///Nb//Oc/
Kz6SB+Ui1WoqU+zNVNKNIDUvu+yydjBWzUApGs43gbMUZGwp3N2cOXPWQk+Rt0QjD9I1DEOE14Kc
QVKx2MTHkD9AWVtyCLS0duEncv31r39dtmrVqg9eeOGFpUzWqL7KbPe5555bCpDIRA4HDVXFgpFs
NohwTf2rMgWPOfYDDFYtp/CXBDKVb5TS1u0W8l5JCf14PL7qtttu6wRfvfjii9uefvrpJTwHGPqu
u+5awJEeyt/FmQvhaxiNrNNzCt7H2CxdFTdIJeeXX355mSZQJPAjgq4uonuxbqL7UGYf5+t6fcJn
Sk9hbVQNHjx4KsVG33nnnRViERAScdZGl156qSMMPgXx6FqSO+CcQ8ASIlbsnK/MSWrFES/D7+jO
XBVzFUhwhLGKGsfxRzhq6zih4t7zZUuBnbmYxflee+21HSDy1tEdzp6N+JuZPpK2igZn3awGOKMO
U30tYRBxvipMdQ9DJRHnG4s434jzjTjfWMT5RpyveUScb5pHBCemeUScbwZhIs436krpHxHnm2K4
jjhfj0fE+aZ4RJxvvrYdYvk5SqgoOF8HIWP3f6uu5+t1MhfxaLYxPUIjWwfnS+iDSCPFdGxmBkaP
U46tQsdObQcqgWRZ/LjwTv0DBSG2RJWzmNKYBNooDQcZwTUwNGJMlHsDG9kq9nwJuVIbDwjRUFJ0
JYQBF4kpMHTYYYfNREAXwlo8nC/dBwuwf0YIbhq6imtYDDirqZNH4A0y3Eboi5Lz5cYt4tI5PR1h
oKy0CKAT2Od7oEQAaI11O8+XLgb54JTULpqzaHG23DQ0uDnSmev4jnHjxtUp1prkfBHJWI/xSRTi
AQGBFkekWDHQDjC7WAuWQByaGwUf4zrNBhVtzpduhOUAJFKliBEK51wsnG+3aCLsHDFrKM5MnC+W
gyAM41r1ubpYnK8TnKc7YAXgHSaXgJ8z3RxWwyiljtsp8+ZxTHTBCRPHeXJcswBBS+V08y5KtwkX
s0xqUc2zs1HSWRu0Fd0Jp0uiF40anD6oqtAKUwlHB3fX3t6+XooBrqmtrV3NCcUvvfTSMh1ZMiGt
CUYuihsDEJnGz0z+ClWYBDwdJSBPPvnkRnIC5KYa+NmiL31xvjhhQVudCtK8lq8+FpwF43wdzpeu
ccEFF7RBcmbgfKcy+YPqtPD4eCxNwmkhLgmqxIlWn3766c2PPfbYkrlz567B31iCeYlZRZKXlMJu
pYIiaYCagVI8nC9D7u9+97tFcHevvfba+zfccEMHSV00yUGa5R7WsSoqsTIi4WNAzjibQE63aGKZ
AOVZ8BM8huUHH3xwMY5XxFkomWpzuDE437vvvnshlkOXkbVTLVQVfolstptvvnk+i0osx6T9ySkW
zUKXt1h5koU985WZ61y6A4kSppvw6QsAvYShG6HIKpEqzwt4DrPjq6++uh0r0WSKuNmagAEmb7Io
hHF1FWd+c++99y6kLK0mUCSE621RdJW101S6D6KxH+N25EVZz1cWkNVTpkyZJxWeu7AIMwvmexFm
vgpVxboKRB5inJLaxb5RxXFA07AWnDFrId2tm8pJOPgVq6hxgmODyB0QRzwrtjVwviwKbQGwGHIL
QOQZos11ZsdsV/jMHSg+zpfvGXWoD+7Kqe5JTZnC53xj+antW/icbx4LHUecbyzifCPON+J8YxHn
G3G+EZzoekScbwZhIs436krpHxHnm2K4jjhfj0fE+aZ4RJzvFth2iDjfmAfnC1C0VXO+HvsxzinH
BOCy3MYsDs4XxIxwq7EOrgET6eG7SRiR2jHgada14uZ8zUnEhvNFGCyGQJu5RuSAGBNAoqngWozC
dCMVTFlJoo6GkALtQAhTEg4xQFoRMQDCWljCEGQjnhRTsgF0DFFMKVuuYTEE2xAGehOLIhxrI7CI
6KcUZaEIkyC4JmdArpo8eXIrXQSBJHjvxIwI12IRWBHF/0wZSurL2BFIDu9FOKyI72PFULYWYeSx
obm5eR08HjAQnz5nQkJvYgVKfTucr6lyBvlAMA7ropYVsSdK1/os0x9+iyGiyJHNcqTq8paWlnUw
eRJ67TB5BB6cr1Pjl6wTLARBxIIcfwMzU0ycr3MSOrFqalEJK7MG0sHGVGMpiE1OM95nn33qrBL8
RcP5OsUAlet1RGJu4gf+4TUm6SL2/+DnqVapt4L1MXFGGo5rpjLZLbfc0ik0QyeB+9NOO61JLSXj
p49TZi5DlyK/gK/8bFWELjhhqnCUb7/99goa/kUKAi6X0Wnl/fffv8iQUpmEYdQyyRU4bUAikDSt
jVe4FaAp7QZTx83B+OJIGYli/jhfZ95CYgWcHqMYXZDGcF8MzjdZzxcnKpBhkxmy090cz8XqFJg2
x0EXVz1fJmXHH398g5ST5Ij4ZVKntyOWuhK0AzDSjQRibOQ8AixPs+GKp8o8Q66wvfOFu1tC0sWF
F17YRuofTXMCuo1iCADKyojEc8hXMvkELBN8JmiEWxiG15tuumm+JFYsBXymbqaeXFF93XXXzQNI
pMvQXfA/oKokZ0CEs5bCopggMiKRi0CtX81dKnyclbQ9qRHeQPl9001IuhAAesF5553XgpM+8cQT
G6jyzF4NMDSwolhJo25cOQtIxGOpoBWgiwtnxQJY+4i1dFAPnGRRfkeGClbChhULTYhN2F+rWmvx
pRfbja7CDd9xxx2ddIuYVnfGOqRKdKupEo11MHrRtoaE9AT+BGu5/vrrO3SPJo6/gQRXv2JScCA5
Z9PVNKeg+DlfsvStqs5wvtXkFggi327lJiXMqET0ILaVcr5TWf+Q3KU51bk4O7Io6vlGnG8s4nwj
zjfifFM8Is43xSPifNM8Is43zSOCE9M8Is43gzAR5xt1pfSPiPNNMVxHnK/HI+J8Uzwizjdf2w6x
iPNNfyY2YdetnfN1n8hlSkqyjVkd2wo53wRRAkFBFklbaCKKFs7a7fBdtjl9Hshb8MJUEQqprKxc
1dXVtYHzZeVapSl+zEa4wVnZIKesLcUx9Fy3ouZ8nSikhEna5LFOjkRcTrAfgAiLQRiNCCQIrUBp
SgCuLgDCWlgYCCFYZeicY5mBDjm0F3E4OFMtifBrnanISnwJ1lcrQidDL3Zd4IK3GEgH6lERedRP
/z3qVmlFxdWEbBEPf0K9KjAyupAdgcSSsCisCMy1KISBdpADeVe++eab71PJjFJuDMsweQ899NBi
AyoazhdyChEI3uNrGLEQBOIBDKRoDunFjxCbRgQ5CPx9EWjFueee22pylNyhFC18XG3q4AEkwtHg
b3DOPiu0FgznG8cyCOi/8sorEFXzTY5AqteRZ4CFYD12Wf5YkXC+xgKSEztQD1NEPZYhzk23AQux
a/lmEDT81CZOFBIcPJ6DwBmB+J4Ydcwn58toRndihGLUghLnZ/xQoQpTxcjy5JNPdklbAiJP4xR0
RikdWTIKYxA0slFoUJz8rEdCFy7nS9YI3B3UJY2f9dP25SsY3nG4WI74nOm8FgbPR3JXwdTzdRIt
uMETTjhhLiRnJs7XjErWfCYR8w8DFMSSIM6qGTJcjot3TkIXn9MWS82/OELSjSA1QeRNtlusmBg8
buqiiy5qvf322xdIssV8ys9y0yZB1D2KIQDZboxIHOhAAXURZzb0J4irz7VT+E+ywDqo5cviEefJ
8GvKSFJklO0FaoLjf7hp6CqgRFPmFoEYkcDsjz766Lk+LSf8nC9IKokWVo5SnGwSuF7hfxtxpCRh
yOSvmeewBQEJDhFuVtsmJZD1FEuHgrcYDwcZZyUt1tJCWVqTECoizMZKEAVrYkhGHC1Wmg2BVVgM
HtahRYzbKZNtdvCwDqpAm4MYtttuu9rjjjtuDokZir0W99Ymmfj4Fkm0aDW+giUDJLgtDI3FI6i9
dZxQcXO+3CgVno1YdB0yS/AxtjD4F85mInqQac4TK0bOlzUTEznS+jw2vrdqzrc6FnG+W6xFnG8s
4nwjzjfifGMR5xtxvs3WJ7YlW73+7VByvrtLm6JO7786j9gS7b/6N6fo/9Drj/8DVPtb5/3mkvkA
AAAASUVORK5CYII=
</CSPBase64>


<CSP name="js/fancybox/jquery.easing-1.3.pack.js" application="/csp/cbt/" default="1"><![CDATA[
/*
 * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
 *
 * Uses the built in easing capabilities added In jQuery 1.1
 * to offer multiple easing options
 *
 * TERMS OF USE - jQuery Easing
 * 
 * Open source under the BSD License. 
 * 
 * Copyright Â© 2008 George McGinley Smith
 * All rights reserved.
 * 
 * Redistribution and use in source and binary forms, with or without modification, 
 * are permitted provided that the following conditions are met:
 * 
 * Redistributions of source code must retain the above copyright notice, this list of 
 * conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright notice, this list 
 * of conditions and the following disclaimer in the documentation and/or other materials 
 * provided with the distribution.
 * 
 * Neither the name of the author nor the names of contributors may be used to endorse 
 * or promote products derived from this software without specific prior written permission.
 * 
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 *  COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
 *  GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
 * OF THE POSSIBILITY OF SUCH DAMAGE. 
 *
*/

// t: current time, b: begInnIng value, c: change In value, d: duration
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('h.i[\'1a\']=h.i[\'z\'];h.O(h.i,{y:\'D\',z:9(x,t,b,c,d){6 h.i[h.i.y](x,t,b,c,d)},17:9(x,t,b,c,d){6 c*(t/=d)*t+b},D:9(x,t,b,c,d){6-c*(t/=d)*(t-2)+b},13:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t+b;6-c/2*((--t)*(t-2)-1)+b},X:9(x,t,b,c,d){6 c*(t/=d)*t*t+b},U:9(x,t,b,c,d){6 c*((t=t/d-1)*t*t+1)+b},R:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t+b;6 c/2*((t-=2)*t*t+2)+b},N:9(x,t,b,c,d){6 c*(t/=d)*t*t*t+b},M:9(x,t,b,c,d){6-c*((t=t/d-1)*t*t*t-1)+b},L:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t*t+b;6-c/2*((t-=2)*t*t*t-2)+b},K:9(x,t,b,c,d){6 c*(t/=d)*t*t*t*t+b},J:9(x,t,b,c,d){6 c*((t=t/d-1)*t*t*t*t+1)+b},I:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t*t*t+b;6 c/2*((t-=2)*t*t*t*t+2)+b},G:9(x,t,b,c,d){6-c*8.C(t/d*(8.g/2))+c+b},15:9(x,t,b,c,d){6 c*8.n(t/d*(8.g/2))+b},12:9(x,t,b,c,d){6-c/2*(8.C(8.g*t/d)-1)+b},Z:9(x,t,b,c,d){6(t==0)?b:c*8.j(2,10*(t/d-1))+b},Y:9(x,t,b,c,d){6(t==d)?b+c:c*(-8.j(2,-10*t/d)+1)+b},W:9(x,t,b,c,d){e(t==0)6 b;e(t==d)6 b+c;e((t/=d/2)<1)6 c/2*8.j(2,10*(t-1))+b;6 c/2*(-8.j(2,-10*--t)+2)+b},V:9(x,t,b,c,d){6-c*(8.o(1-(t/=d)*t)-1)+b},S:9(x,t,b,c,d){6 c*8.o(1-(t=t/d-1)*t)+b},Q:9(x,t,b,c,d){e((t/=d/2)<1)6-c/2*(8.o(1-t*t)-1)+b;6 c/2*(8.o(1-(t-=2)*t)+1)+b},P:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d)==1)6 b+c;e(!p)p=d*.3;e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);6-(a*8.j(2,10*(t-=1))*8.n((t*d-s)*(2*8.g)/p))+b},H:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d)==1)6 b+c;e(!p)p=d*.3;e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);6 a*8.j(2,-10*t)*8.n((t*d-s)*(2*8.g)/p)+c+b},T:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d/2)==2)6 b+c;e(!p)p=d*(.3*1.5);e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);e(t<1)6-.5*(a*8.j(2,10*(t-=1))*8.n((t*d-s)*(2*8.g)/p))+b;6 a*8.j(2,-10*(t-=1))*8.n((t*d-s)*(2*8.g)/p)*.5+c+b},F:9(x,t,b,c,d,s){e(s==u)s=1.l;6 c*(t/=d)*t*((s+1)*t-s)+b},E:9(x,t,b,c,d,s){e(s==u)s=1.l;6 c*((t=t/d-1)*t*((s+1)*t+s)+1)+b},16:9(x,t,b,c,d,s){e(s==u)s=1.l;e((t/=d/2)<1)6 c/2*(t*t*(((s*=(1.B))+1)*t-s))+b;6 c/2*((t-=2)*t*(((s*=(1.B))+1)*t+s)+2)+b},A:9(x,t,b,c,d){6 c-h.i.v(x,d-t,0,c,d)+b},v:9(x,t,b,c,d){e((t/=d)<(1/2.k)){6 c*(7.q*t*t)+b}m e(t<(2/2.k)){6 c*(7.q*(t-=(1.5/2.k))*t+.k)+b}m e(t<(2.5/2.k)){6 c*(7.q*(t-=(2.14/2.k))*t+.11)+b}m{6 c*(7.q*(t-=(2.18/2.k))*t+.19)+b}},1b:9(x,t,b,c,d){e(t<d/2)6 h.i.A(x,t*2,0,c,d)*.5+b;6 h.i.v(x,t*2-d,0,c,d)*.5+c*.5+b}});',62,74,'||||||return||Math|function|||||if|var|PI|jQuery|easing|pow|75|70158|else|sin|sqrt||5625|asin|||undefined|easeOutBounce|abs||def|swing|easeInBounce|525|cos|easeOutQuad|easeOutBack|easeInBack|easeInSine|easeOutElastic|easeInOutQuint|easeOutQuint|easeInQuint|easeInOutQuart|easeOutQuart|easeInQuart|extend|easeInElastic|easeInOutCirc|easeInOutCubic|easeOutCirc|easeInOutElastic|easeOutCubic|easeInCirc|easeInOutExpo|easeInCubic|easeOutExpo|easeInExpo||9375|easeInOutSine|easeInOutQuad|25|easeOutSine|easeInOutBack|easeInQuad|625|984375|jswing|easeInOutBounce'.split('|'),0,{}))

/*
 *
 * TERMS OF USE - EASING EQUATIONS
 * 
 * Open source under the BSD License. 
 * 
 * Copyright Â© 2001 Robert Penner
 * All rights reserved.
 * 
 * Redistribution and use in source and binary forms, with or without modification, 
 * are permitted provided that the following conditions are met:
 * 
 * Redistributions of source code must retain the above copyright notice, this list of 
 * conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright notice, this list 
 * of conditions and the following disclaimer in the documentation and/or other materials 
 * provided with the distribution.
 * 
 * Neither the name of the author nor the names of contributors may be used to endorse 
 * or promote products derived from this software without specific prior written permission.
 * 
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 *  COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
 *  GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
 * OF THE POSSIBILITY OF SUCH DAMAGE. 
 *
 */
]]></CSP>


<CSP name="js/fancybox/jquery.fancybox-1.3.4.css" application="/csp/cbt/" default="1"><![CDATA[
/*
 * FancyBox - jQuery Plugin
 * Simple and fancy lightbox alternative
 *
 * Examples and documentation at: http://fancybox.net
 * 
 * Copyright (c) 2008 - 2010 Janis Skarnelis
 * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated.
 * 
 * Version: 1.3.4 (11/11/2010)
 * Requires: jQuery v1.3+
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */

#fancybox-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	margin-left: -20px;
	cursor: pointer;
	overflow: hidden;
	z-index: 1104;
	display: none;
}

#fancybox-loading div {
	position: absolute;
	top: 0;
	left: 0;
	width: 40px;
	height: 480px;
	background-image: url('fancybox.png');
}

#fancybox-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1100;
	display: none;
}

#fancybox-tmp {
	padding: 0;
	margin: 0;
	border: 0;
	overflow: auto;
	display: none;
}

#fancybox-wrap {
	position: absolute;
	top: 0;
	left: 0;
	padding: 20px;
	z-index: 1101;
	outline: none;
	display: none;
}

#fancybox-outer {
	position: relative;
	width: 100%;
	height: 100%;
	background: #fff;
}

#fancybox-content {
	width: 0;
	height: 0;
	padding: 0;
	outline: none;
	position: relative;
	overflow: hidden;
	z-index: 1102;
	border: 0px solid #fff;
}

#fancybox-hide-sel-frame {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: transparent;
	z-index: 1101;
}

#fancybox-close {
	position: absolute;
	top: -15px;
	right: -15px;
	width: 30px;
	height: 30px;
	background: transparent url('fancybox.png') -40px 0px;
	cursor: pointer;
	z-index: 1103;
	display: none;
}

#fancybox-error {
	color: #444;
	font: normal 12px/20px Arial;
	padding: 14px;
	margin: 0;
}

#fancybox-img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	border: none;
	outline: none;
	line-height: 0;
	vertical-align: top;
}

#fancybox-frame {
	width: 100%;
	height: 100%;
	border: none;
	display: block;
}

#fancybox-left, #fancybox-right {
	position: absolute;
	bottom: 0px;
	height: 100%;
	width: 35%;
	cursor: pointer;
	outline: none;
	background: transparent url('blank.gif');
	z-index: 1102;
	display: none;
}

#fancybox-left {
	left: 0px;
}

#fancybox-right {
	right: 0px;
}

#fancybox-left-ico, #fancybox-right-ico {
	position: absolute;
	top: 50%;
	left: -9999px;
	width: 30px;
	height: 30px;
	margin-top: -15px;
	cursor: pointer;
	z-index: 1102;
	display: block;
}

#fancybox-left-ico {
	background-image: url('fancybox.png');
	background-position: -40px -30px;
}

#fancybox-right-ico {
	background-image: url('fancybox.png');
	background-position: -40px -60px;
}

#fancybox-left:hover, #fancybox-right:hover {
	visibility: visible; /* IE6 */
}

#fancybox-left:hover span {
	left: 20px;
}

#fancybox-right:hover span {
	left: auto;
	right: 20px;
}

.fancybox-bg {
	position: absolute;
	padding: 0;
	margin: 0;
	border: 0;
	width: 20px;
	height: 20px;
	z-index: 1001;
}

#fancybox-bg-n {
	top: -20px;
	left: 0;
	width: 100%;
	background-image: url('fancybox-x.png');
}

#fancybox-bg-ne {
	top: -20px;
	right: -20px;
	background-image: url('fancybox.png');
	background-position: -40px -162px;
}

#fancybox-bg-e {
	top: 0;
	right: -20px;
	height: 100%;
	background-image: url('fancybox-y.png');
	background-position: -20px 0px;
}

#fancybox-bg-se {
	bottom: -20px;
	right: -20px;
	background-image: url('fancybox.png');
	background-position: -40px -182px; 
}

#fancybox-bg-s {
	bottom: -20px;
	left: 0;
	width: 100%;
	background-image: url('fancybox-x.png');
	background-position: 0px -20px;
}

#fancybox-bg-sw {
	bottom: -20px;
	left: -20px;
	background-image: url('fancybox.png');
	background-position: -40px -142px;
}

#fancybox-bg-w {
	top: 0;
	left: -20px;
	height: 100%;
	background-image: url('fancybox-y.png');
}

#fancybox-bg-nw {
	top: -20px;
	left: -20px;
	background-image: url('fancybox.png');
	background-position: -40px -122px;
}

#fancybox-title {
	font-family: Helvetica;
	font-size: 12px;
	z-index: 1102;
}

.fancybox-title-inside {
	padding-bottom: 10px;
	text-align: center;
	color: #333;
	background: #fff;
	position: relative;
}

.fancybox-title-outside {
	padding-top: 10px;
	color: #fff;
}

.fancybox-title-over {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #FFF;
	text-align: left;
}

#fancybox-title-over {
	padding: 10px;
	background-image: url('fancy_title_over.png');
	display: block;
}

.fancybox-title-float {
	position: absolute;
	left: 0;
	bottom: -20px;
	height: 32px;
}

#fancybox-title-float-wrap {
	border: none;
	border-collapse: collapse;
	width: auto;
}

#fancybox-title-float-wrap td {
	border: none;
	white-space: nowrap;
}

#fancybox-title-float-left {
	padding: 0 0 0 15px;
	background: url('fancybox.png') -40px -90px no-repeat;
}

#fancybox-title-float-main {
	color: #FFF;
	line-height: 29px;
	font-weight: bold;
	padding: 0 0 3px 0;
	background: url('fancybox-x.png') 0px -40px;
}

#fancybox-title-float-right {
	padding: 0 0 0 15px;
	background: url('fancybox.png') -55px -90px no-repeat;
}

/* IE6 */

.fancybox-ie6 #fancybox-close { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_close.png', sizingMethod='scale'); }

.fancybox-ie6 #fancybox-left-ico { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_nav_left.png', sizingMethod='scale'); }
.fancybox-ie6 #fancybox-right-ico { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_nav_right.png', sizingMethod='scale'); }

.fancybox-ie6 #fancybox-title-over { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_over.png', sizingMethod='scale'); zoom: 1; }
.fancybox-ie6 #fancybox-title-float-left { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_left.png', sizingMethod='scale'); }
.fancybox-ie6 #fancybox-title-float-main { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_main.png', sizingMethod='scale'); }
.fancybox-ie6 #fancybox-title-float-right { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_right.png', sizingMethod='scale'); }

.fancybox-ie6 #fancybox-bg-w, .fancybox-ie6 #fancybox-bg-e, .fancybox-ie6 #fancybox-left, .fancybox-ie6 #fancybox-right, #fancybox-hide-sel-frame {
	height: expression(this.parentNode.clientHeight + "px");
}

#fancybox-loading.fancybox-ie6 {
	position: absolute; margin-top: 0;
	top: expression( (-20 + (document.documentElement.clientHeight ? document.documentElement.clientHeight/2 : document.body.clientHeight/2 ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop )) + 'px');
}

#fancybox-loading.fancybox-ie6 div	{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_loading.png', sizingMethod='scale'); }

/* IE6, IE7, IE8 */

.fancybox-ie .fancybox-bg { background: transparent !important; }

.fancybox-ie #fancybox-bg-n { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_n.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-bg-ne { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_ne.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-bg-e { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_e.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-bg-se { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_se.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-bg-s { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_s.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-bg-sw { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_sw.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-bg-w { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_w.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-bg-nw { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_nw.png', sizingMethod='scale'); }]]></CSP>


<CSP name="js/fancybox/jquery.fancybox-1.3.4.js" application="/csp/cbt/" default="1"><![CDATA[
/*
 * FancyBox - jQuery Plugin
 * Simple and fancy lightbox alternative
 *
 * Examples and documentation at: http://fancybox.net
 *
 * Copyright (c) 2008 - 2010 Janis Skarnelis
 * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated.
 *
 * Version: 1.3.4 (11/11/2010)
 * Requires: jQuery v1.3+
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */

;(function($) {
	var tmp, loading, overlay, wrap, outer, content, close, title, nav_left, nav_right,

		selectedIndex = 0, selectedOpts = {}, selectedArray = [], currentIndex = 0, currentOpts = {}, currentArray = [],

		ajaxLoader = null, imgPreloader = new Image(), imgRegExp = /\.(jpg|gif|png|bmp|jpeg)(.*)?$/i, swfRegExp = /[^\.]\.(swf)\s*$/i,

		loadingTimer, loadingFrame = 1,

		titleHeight = 0, titleStr = '', start_pos, final_pos, busy = false, fx = $.extend($('<div/>')[0], { prop: 0 }),

		isIE6 = $.browser.msie && $.browser.version < 7 && !window.XMLHttpRequest,

		/*
		 * Private methods 
		 */

		_abort = function() {
			loading.hide();

			imgPreloader.onerror = imgPreloader.onload = null;

			if (ajaxLoader) {
				ajaxLoader.abort();
			}

			tmp.empty();
		},

		_error = function() {
			if (false === selectedOpts.onError(selectedArray, selectedIndex, selectedOpts)) {
				loading.hide();
				busy = false;
				return;
			}

			selectedOpts.titleShow = false;

			selectedOpts.width = 'auto';
			selectedOpts.height = 'auto';

			tmp.html( '<p id="fancybox-error">The requested content cannot be loaded.<br />Please try again later.</p>' );

			_process_inline();
		},

		_start = function() {
			var obj = selectedArray[ selectedIndex ],
				href, 
				type, 
				title,
				str,
				emb,
				ret;

			_abort();

			selectedOpts = $.extend({}, $.fn.fancybox.defaults, (typeof $(obj).data('fancybox') == 'undefined' ? selectedOpts : $(obj).data('fancybox')));

			ret = selectedOpts.onStart(selectedArray, selectedIndex, selectedOpts);

			if (ret === false) {
				busy = false;
				return;
			} else if (typeof ret == 'object') {
				selectedOpts = $.extend(selectedOpts, ret);
			}

			title = selectedOpts.title || (obj.nodeName ? $(obj).attr('title') : obj.title) || '';

			if (obj.nodeName && !selectedOpts.orig) {
				selectedOpts.orig = $(obj).children("img:first").length ? $(obj).children("img:first") : $(obj);
			}

			if (title === '' && selectedOpts.orig && selectedOpts.titleFromAlt) {
				title = selectedOpts.orig.attr('alt');
			}

			href = selectedOpts.href || (obj.nodeName ? $(obj).attr('href') : obj.href) || null;

			if ((/^(?:javascript)/i).test(href) || href == '#') {
				href = null;
			}

			if (selectedOpts.type) {
				type = selectedOpts.type;

				if (!href) {
					href = selectedOpts.content;
				}

			} else if (selectedOpts.content) {
				type = 'html';

			} else if (href) {
				if (href.match(imgRegExp)) {
					type = 'image';

				} else if (href.match(swfRegExp)) {
					type = 'swf';

				} else if ($(obj).hasClass("iframe")) {
					type = 'iframe';

				} else if (href.indexOf("#") === 0) {
					type = 'inline';

				} else {
					type = 'ajax';
				}
			}

			if (!type) {
				_error();
				return;
			}

			if (type == 'inline') {
				obj	= href.substr(href.indexOf("#"));
				type = $(obj).length > 0 ? 'inline' : 'ajax';
			}

			selectedOpts.type = type;
			selectedOpts.href = href;
			selectedOpts.title = title;

			if (selectedOpts.autoDimensions) {
				if (selectedOpts.type == 'html' || selectedOpts.type == 'inline' || selectedOpts.type == 'ajax') {
					selectedOpts.width = 'auto';
					selectedOpts.height = 'auto';
				} else {
					selectedOpts.autoDimensions = false;	
				}
			}

			if (selectedOpts.modal) {
				selectedOpts.overlayShow = true;
				selectedOpts.hideOnOverlayClick = false;
				selectedOpts.hideOnContentClick = false;
				selectedOpts.enableEscapeButton = false;
				selectedOpts.showCloseButton = false;
			}

			selectedOpts.padding = parseInt(selectedOpts.padding, 10);
			selectedOpts.margin = parseInt(selectedOpts.margin, 10);

			tmp.css('padding', (selectedOpts.padding + selectedOpts.margin));

			$('.fancybox-inline-tmp').unbind('fancybox-cancel').bind('fancybox-change', function() {
				$(this).replaceWith(content.children());				
			});

			switch (type) {
				case 'html' :
					tmp.html( selectedOpts.content );
					_process_inline();
				break;

				case 'inline' :
					if ( $(obj).parent().is('#fancybox-content') === true) {
						busy = false;
						return;
					}

					$('<div class="fancybox-inline-tmp" />')
						.hide()
						.insertBefore( $(obj) )
						.bind('fancybox-cleanup', function() {
							$(this).replaceWith(content.children());
						}).bind('fancybox-cancel', function() {
							$(this).replaceWith(tmp.children());
						});

					$(obj).appendTo(tmp);

					_process_inline();
				break;

				case 'image':
					busy = false;

					$.fancybox.showActivity();

					imgPreloader = new Image();

					imgPreloader.onerror = function() {
						_error();
					};

					imgPreloader.onload = function() {
						busy = true;

						imgPreloader.onerror = imgPreloader.onload = null;

						_process_image();
					};

					imgPreloader.src = href;
				break;

				case 'swf':
					selectedOpts.scrolling = 'no';

					str = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="' + selectedOpts.width + '" height="' + selectedOpts.height + '"><param name="movie" value="' + href + '"></param>';
					emb = '';

					$.each(selectedOpts.swf, function(name, val) {
						str += '<param name="' + name + '" value="' + val + '"></param>';
						emb += ' ' + name + '="' + val + '"';
					});

					str += '<embed src="' + href + '" type="application/x-shockwave-flash" width="' + selectedOpts.width + '" height="' + selectedOpts.height + '"' + emb + '></embed></object>';

					tmp.html(str);

					_process_inline();
				break;

				case 'ajax':
					busy = false;

					$.fancybox.showActivity();

					selectedOpts.ajax.win = selectedOpts.ajax.success;

					ajaxLoader = $.ajax($.extend({}, selectedOpts.ajax, {
						url	: href,
						data : selectedOpts.ajax.data || {},
						error : function(XMLHttpRequest, textStatus, errorThrown) {
							if ( XMLHttpRequest.status > 0 ) {
								_error();
							}
						},
						success : function(data, textStatus, XMLHttpRequest) {
							var o = typeof XMLHttpRequest == 'object' ? XMLHttpRequest : ajaxLoader;
							if (o.status == 200) {
								if ( typeof selectedOpts.ajax.win == 'function' ) {
									ret = selectedOpts.ajax.win(href, data, textStatus, XMLHttpRequest);

									if (ret === false) {
										loading.hide();
										return;
									} else if (typeof ret == 'string' || typeof ret == 'object') {
										data = ret;
									}
								}

								tmp.html( data );
								_process_inline();
							}
						}
					}));

				break;

				case 'iframe':
					_show();
				break;
			}
		},

		_process_inline = function() {
			var
				w = selectedOpts.width,
				h = selectedOpts.height;

			if (w.toString().indexOf('%') > -1) {
				w = parseInt( ($(window).width() - (selectedOpts.margin * 2)) * parseFloat(w) / 100, 10) + 'px';

			} else {
				w = w == 'auto' ? 'auto' : w + 'px';	
			}

			if (h.toString().indexOf('%') > -1) {
				h = parseInt( ($(window).height() - (selectedOpts.margin * 2)) * parseFloat(h) / 100, 10) + 'px';

			} else {
				h = h == 'auto' ? 'auto' : h + 'px';	
			}

			tmp.wrapInner('<div style="width:' + w + ';height:' + h + ';overflow: ' + (selectedOpts.scrolling == 'auto' ? 'auto' : (selectedOpts.scrolling == 'yes' ? 'scroll' : 'hidden')) + ';position:relative;"></div>');

			selectedOpts.width = tmp.width();
			selectedOpts.height = tmp.height();

			_show();
		},

		_process_image = function() {
			selectedOpts.width = imgPreloader.width;
			selectedOpts.height = imgPreloader.height;

			$("<img />").attr({
				'id' : 'fancybox-img',
				'src' : imgPreloader.src,
				'alt' : selectedOpts.title
			}).appendTo( tmp );

			_show();
		},

		_show = function() {
			var pos, equal;

			loading.hide();

			if (wrap.is(":visible") && false === currentOpts.onCleanup(currentArray, currentIndex, currentOpts)) {
				$.event.trigger('fancybox-cancel');

				busy = false;
				return;
			}

			busy = true;

			$(content.add( overlay )).unbind();

			$(window).unbind("resize.fb scroll.fb");
			$(document).unbind('keydown.fb');

			if (wrap.is(":visible") && currentOpts.titlePosition !== 'outside') {
				wrap.css('height', wrap.height());
			}

			currentArray = selectedArray;
			currentIndex = selectedIndex;
			currentOpts = selectedOpts;

			if (currentOpts.overlayShow) {
				overlay.css({
					'background-color' : currentOpts.overlayColor,
					'opacity' : currentOpts.overlayOpacity,
					'cursor' : currentOpts.hideOnOverlayClick ? 'pointer' : 'auto',
					'height' : $(document).height()
				});

				if (!overlay.is(':visible')) {
					if (isIE6) {
						$('select:not(#fancybox-tmp select)').filter(function() {
							return this.style.visibility !== 'hidden';
						}).css({'visibility' : 'hidden'}).one('fancybox-cleanup', function() {
							this.style.visibility = 'inherit';
						});
					}

					overlay.show();
				}
			} else {
				overlay.hide();
			}

			final_pos = _get_zoom_to();

			_process_title();

			if (wrap.is(":visible")) {
				$( close.add( nav_left ).add( nav_right ) ).hide();

				pos = wrap.position(),

				start_pos = {
					top	 : pos.top,
					left : pos.left,
					width : wrap.width(),
					height : wrap.height()
				};

				equal = (start_pos.width == final_pos.width && start_pos.height == final_pos.height);

				content.fadeTo(currentOpts.changeFade, 0.3, function() {
					var finish_resizing = function() {
						content.html( tmp.contents() ).fadeTo(currentOpts.changeFade, 1, _finish);
					};

					$.event.trigger('fancybox-change');

					content
						.empty()
						.removeAttr('filter')
						.css({
							'border-width' : currentOpts.padding,
							'width'	: final_pos.width - currentOpts.padding * 2,
							'height' : selectedOpts.autoDimensions ? 'auto' : final_pos.height - titleHeight - currentOpts.padding * 2
						});

					if (equal) {
						finish_resizing();

					} else {
						fx.prop = 0;

						$(fx).animate({prop: 1}, {
							 duration : currentOpts.changeSpeed,
							 easing : currentOpts.easingChange,
							 step : _draw,
							 complete : finish_resizing
						});
					}
				});

				return;
			}

			wrap.removeAttr("style");

			content.css('border-width', currentOpts.padding);

			if (currentOpts.transitionIn == 'elastic') {
				start_pos = _get_zoom_from();

				content.html( tmp.contents() );

				wrap.show();

				if (currentOpts.opacity) {
					final_pos.opacity = 0;
				}

				fx.prop = 0;

				$(fx).animate({prop: 1}, {
					 duration : currentOpts.speedIn,
					 easing : currentOpts.easingIn,
					 step : _draw,
					 complete : _finish
				});

				return;
			}

			if (currentOpts.titlePosition == 'inside' && titleHeight > 0) {	
				title.show();	
			}

			content
				.css({
					'width' : final_pos.width - currentOpts.padding * 2,
					'height' : selectedOpts.autoDimensions ? 'auto' : final_pos.height - titleHeight - currentOpts.padding * 2
				})
				.html( tmp.contents() );

			wrap
				.css(final_pos)
				.fadeIn( currentOpts.transitionIn == 'none' ? 0 : currentOpts.speedIn, _finish );
		},

		_format_title = function(title) {
			if (title && title.length) {
				if (currentOpts.titlePosition == 'float') {
					return '<table id="fancybox-title-float-wrap" cellpadding="0" cellspacing="0"><tr><td id="fancybox-title-float-left"></td><td id="fancybox-title-float-main">' + title + '</td><td id="fancybox-title-float-right"></td></tr></table>';
				}

				return '<div id="fancybox-title-' + currentOpts.titlePosition + '">' + title + '</div>';
			}

			return false;
		},

		_process_title = function() {
			titleStr = currentOpts.title || '';
			titleHeight = 0;

			title
				.empty()
				.removeAttr('style')
				.removeClass();

			if (currentOpts.titleShow === false) {
				title.hide();
				return;
			}

			titleStr = $.isFunction(currentOpts.titleFormat) ? currentOpts.titleFormat(titleStr, currentArray, currentIndex, currentOpts) : _format_title(titleStr);

			if (!titleStr || titleStr === '') {
				title.hide();
				return;
			}

			title
				.addClass('fancybox-title-' + currentOpts.titlePosition)
				.html( titleStr )
				.appendTo( 'body' )
				.show();

			switch (currentOpts.titlePosition) {
				case 'inside':
					title
						.css({
							'width' : final_pos.width - (currentOpts.padding * 2),
							'marginLeft' : currentOpts.padding,
							'marginRight' : currentOpts.padding
						});

					titleHeight = title.outerHeight(true);

					title.appendTo( outer );

					final_pos.height += titleHeight;
				break;

				case 'over':
					title
						.css({
							'marginLeft' : currentOpts.padding,
							'width'	: final_pos.width - (currentOpts.padding * 2),
							'bottom' : currentOpts.padding
						})
						.appendTo( outer );
				break;

				case 'float':
					title
						.css('left', parseInt((title.width() - final_pos.width - 40)/ 2, 10) * -1)
						.appendTo( wrap );
				break;

				default:
					title
						.css({
							'width' : final_pos.width - (currentOpts.padding * 2),
							'paddingLeft' : currentOpts.padding,
							'paddingRight' : currentOpts.padding
						})
						.appendTo( wrap );
				break;
			}

			title.hide();
		},

		_set_navigation = function() {
			if (currentOpts.enableEscapeButton || currentOpts.enableKeyboardNav) {
				$(document).bind('keydown.fb', function(e) {
					if (e.keyCode == 27 && currentOpts.enableEscapeButton) {
						e.preventDefault();
						$.fancybox.close();

					} else if ((e.keyCode == 37 || e.keyCode == 39) && currentOpts.enableKeyboardNav && e.target.tagName !== 'INPUT' && e.target.tagName !== 'TEXTAREA' && e.target.tagName !== 'SELECT') {
						e.preventDefault();
						$.fancybox[ e.keyCode == 37 ? 'prev' : 'next']();
					}
				});
			}

			if (!currentOpts.showNavArrows) { 
				nav_left.hide();
				nav_right.hide();
				return;
			}

			if ((currentOpts.cyclic && currentArray.length > 1) || currentIndex !== 0) {
				nav_left.show();
			}

			if ((currentOpts.cyclic && currentArray.length > 1) || currentIndex != (currentArray.length -1)) {
				nav_right.show();
			}
		},

		_finish = function () {
			if (!$.support.opacity) {
				content.get(0).style.removeAttribute('filter');
				wrap.get(0).style.removeAttribute('filter');
			}

			if (selectedOpts.autoDimensions) {
				content.css('height', 'auto');
			}

			wrap.css('height', 'auto');

			if (titleStr && titleStr.length) {
				title.show();
			}

			if (currentOpts.showCloseButton) {
				close.show();
			}

			_set_navigation();
	
			if (currentOpts.hideOnContentClick)	{
				content.bind('click', $.fancybox.close);
			}

			if (currentOpts.hideOnOverlayClick)	{
				overlay.bind('click', $.fancybox.close);
			}

			$(window).bind("resize.fb", $.fancybox.resize);

			if (currentOpts.centerOnScroll) {
				$(window).bind("scroll.fb", $.fancybox.center);
			}

			if (currentOpts.type == 'iframe') {
				$('<iframe id="fancybox-frame" name="fancybox-frame' + new Date().getTime() + '" frameborder="0" hspace="0" ' + ($.browser.msie ? 'allowtransparency="true""' : '') + ' scrolling="' + selectedOpts.scrolling + '" src="' + currentOpts.href + '"></iframe>').appendTo(content);
			}

			wrap.show();

			busy = false;

			$.fancybox.center();

			currentOpts.onComplete(currentArray, currentIndex, currentOpts);

			_preload_images();
		},

		_preload_images = function() {
			var href, 
				objNext;

			if ((currentArray.length -1) > currentIndex) {
				href = currentArray[ currentIndex + 1 ].href;

				if (typeof href !== 'undefined' && href.match(imgRegExp)) {
					objNext = new Image();
					objNext.src = href;
				}
			}

			if (currentIndex > 0) {
				href = currentArray[ currentIndex - 1 ].href;

				if (typeof href !== 'undefined' && href.match(imgRegExp)) {
					objNext = new Image();
					objNext.src = href;
				}
			}
		},

		_draw = function(pos) {
			var dim = {
				width : parseInt(start_pos.width + (final_pos.width - start_pos.width) * pos, 10),
				height : parseInt(start_pos.height + (final_pos.height - start_pos.height) * pos, 10),

				top : parseInt(start_pos.top + (final_pos.top - start_pos.top) * pos, 10),
				left : parseInt(start_pos.left + (final_pos.left - start_pos.left) * pos, 10)
			};

			if (typeof final_pos.opacity !== 'undefined') {
				dim.opacity = pos < 0.5 ? 0.5 : pos;
			}

			wrap.css(dim);

			content.css({
				'width' : dim.width - currentOpts.padding * 2,
				'height' : dim.height - (titleHeight * pos) - currentOpts.padding * 2
			});
		},

		_get_viewport = function() {
			return [
				$(window).width() - (currentOpts.margin * 2),
				$(window).height() - (currentOpts.margin * 2),
				$(document).scrollLeft() + currentOpts.margin,
				$(document).scrollTop() + currentOpts.margin
			];
		},

		_get_zoom_to = function () {
			var view = _get_viewport(),
				to = {},
				resize = currentOpts.autoScale,
				double_padding = currentOpts.padding * 2,
				ratio;

			if (currentOpts.width.toString().indexOf('%') > -1) {
				to.width = parseInt((view[0] * parseFloat(currentOpts.width)) / 100, 10);
			} else {
				to.width = currentOpts.width + double_padding;
			}

			if (currentOpts.height.toString().indexOf('%') > -1) {
				to.height = parseInt((view[1] * parseFloat(currentOpts.height)) / 100, 10);
			} else {
				to.height = currentOpts.height + double_padding;
			}

			if (resize && (to.width > view[0] || to.height > view[1])) {
				if (selectedOpts.type == 'image' || selectedOpts.type == 'swf') {
					ratio = (currentOpts.width ) / (currentOpts.height );

					if ((to.width ) > view[0]) {
						to.width = view[0];
						to.height = parseInt(((to.width - double_padding) / ratio) + double_padding, 10);
					}

					if ((to.height) > view[1]) {
						to.height = view[1];
						to.width = parseInt(((to.height - double_padding) * ratio) + double_padding, 10);
					}

				} else {
					to.width = Math.min(to.width, view[0]);
					to.height = Math.min(to.height, view[1]);
				}
			}

			to.top = parseInt(Math.max(view[3] - 20, view[3] + ((view[1] - to.height - 40) * 0.5)), 10);
			to.left = parseInt(Math.max(view[2] - 20, view[2] + ((view[0] - to.width - 40) * 0.5)), 10);

			return to;
		},

		_get_obj_pos = function(obj) {
			var pos = obj.offset();

			pos.top += parseInt( obj.css('paddingTop'), 10 ) || 0;
			pos.left += parseInt( obj.css('paddingLeft'), 10 ) || 0;

			pos.top += parseInt( obj.css('border-top-width'), 10 ) || 0;
			pos.left += parseInt( obj.css('border-left-width'), 10 ) || 0;

			pos.width = obj.width();
			pos.height = obj.height();

			return pos;
		},

		_get_zoom_from = function() {
			var orig = selectedOpts.orig ? $(selectedOpts.orig) : false,
				from = {},
				pos,
				view;

			if (orig && orig.length) {
				pos = _get_obj_pos(orig);

				from = {
					width : pos.width + (currentOpts.padding * 2),
					height : pos.height + (currentOpts.padding * 2),
					top	: pos.top - currentOpts.padding - 20,
					left : pos.left - currentOpts.padding - 20
				};

			} else {
				view = _get_viewport();

				from = {
					width : currentOpts.padding * 2,
					height : currentOpts.padding * 2,
					top	: parseInt(view[3] + view[1] * 0.5, 10),
					left : parseInt(view[2] + view[0] * 0.5, 10)
				};
			}

			return from;
		},

		_animate_loading = function() {
			if (!loading.is(':visible')){
				clearInterval(loadingTimer);
				return;
			}

			$('div', loading).css('top', (loadingFrame * -40) + 'px');

			loadingFrame = (loadingFrame + 1) % 12;
		};

	/*
	 * Public methods 
	 */

	$.fn.fancybox = function(options) {
		if (!$(this).length) {
			return this;
		}

		$(this)
			.data('fancybox', $.extend({}, options, ($.metadata ? $(this).metadata() : {})))
			.unbind('click.fb')
			.bind('click.fb', function(e) {
				e.preventDefault();

				if (busy) {
					return;
				}

				busy = true;

				$(this).blur();

				selectedArray = [];
				selectedIndex = 0;

				var rel = $(this).attr('rel') || '';

				if (!rel || rel == '' || rel === 'nofollow') {
					selectedArray.push(this);

				} else {
					selectedArray = $("a[rel=" + rel + "], area[rel=" + rel + "]");
					selectedIndex = selectedArray.index( this );
				}

				_start();

				return;
			});

		return this;
	};

	$.fancybox = function(obj) {
		var opts;

		if (busy) {
			return;
		}

		busy = true;
		opts = typeof arguments[1] !== 'undefined' ? arguments[1] : {};

		selectedArray = [];
		selectedIndex = parseInt(opts.index, 10) || 0;

		if ($.isArray(obj)) {
			for (var i = 0, j = obj.length; i < j; i++) {
				if (typeof obj[i] == 'object') {
					$(obj[i]).data('fancybox', $.extend({}, opts, obj[i]));
				} else {
					obj[i] = $({}).data('fancybox', $.extend({content : obj[i]}, opts));
				}
			}

			selectedArray = jQuery.merge(selectedArray, obj);

		} else {
			if (typeof obj == 'object') {
				$(obj).data('fancybox', $.extend({}, opts, obj));
			} else {
				obj = $({}).data('fancybox', $.extend({content : obj}, opts));
			}

			selectedArray.push(obj);
		}

		if (selectedIndex > selectedArray.length || selectedIndex < 0) {
			selectedIndex = 0;
		}

		_start();
	};

	$.fancybox.showActivity = function() {
		clearInterval(loadingTimer);

		loading.show();
		loadingTimer = setInterval(_animate_loading, 66);
	};

	$.fancybox.hideActivity = function() {
		loading.hide();
	};

	$.fancybox.next = function() {
		return $.fancybox.pos( currentIndex + 1);
	};

	$.fancybox.prev = function() {
		return $.fancybox.pos( currentIndex - 1);
	};

	$.fancybox.pos = function(pos) {
		if (busy) {
			return;
		}

		pos = parseInt(pos);

		selectedArray = currentArray;

		if (pos > -1 && pos < currentArray.length) {
			selectedIndex = pos;
			_start();

		} else if (currentOpts.cyclic && currentArray.length > 1) {
			selectedIndex = pos >= currentArray.length ? 0 : currentArray.length - 1;
			_start();
		}

		return;
	};

	$.fancybox.cancel = function() {
		if (busy) {
			return;
		}

		busy = true;

		$.event.trigger('fancybox-cancel');

		_abort();

		selectedOpts.onCancel(selectedArray, selectedIndex, selectedOpts);

		busy = false;
	};

	// Note: within an iframe use - parent.$.fancybox.close();
	$.fancybox.close = function() {
		if (busy || wrap.is(':hidden')) {
			return;
		}

		busy = true;

		if (currentOpts && false === currentOpts.onCleanup(currentArray, currentIndex, currentOpts)) {
			busy = false;
			return;
		}

		_abort();

		$(close.add( nav_left ).add( nav_right )).hide();

		$(content.add( overlay )).unbind();

		$(window).unbind("resize.fb scroll.fb");
		$(document).unbind('keydown.fb');

		content.find('iframe').attr('src', isIE6 && /^https/i.test(window.location.href || '') ? 'javascript:void(false)' : 'about:blank');

		if (currentOpts.titlePosition !== 'inside') {
			title.empty();
		}

		wrap.stop();

		function _cleanup() {
			overlay.fadeOut('fast');

			title.empty().hide();
			wrap.hide();

			$.event.trigger('fancybox-cleanup');

			content.empty();

			currentOpts.onClosed(currentArray, currentIndex, currentOpts);

			currentArray = selectedOpts	= [];
			currentIndex = selectedIndex = 0;
			currentOpts = selectedOpts	= {};

			busy = false;
		}

		if (currentOpts.transitionOut == 'elastic') {
			start_pos = _get_zoom_from();

			var pos = wrap.position();

			final_pos = {
				top	 : pos.top ,
				left : pos.left,
				width :	wrap.width(),
				height : wrap.height()
			};

			if (currentOpts.opacity) {
				final_pos.opacity = 1;
			}

			title.empty().hide();

			fx.prop = 1;

			$(fx).animate({ prop: 0 }, {
				 duration : currentOpts.speedOut,
				 easing : currentOpts.easingOut,
				 step : _draw,
				 complete : _cleanup
			});

		} else {
			wrap.fadeOut( currentOpts.transitionOut == 'none' ? 0 : currentOpts.speedOut, _cleanup);
		}
	};

	$.fancybox.resize = function() {
		if (overlay.is(':visible')) {
			overlay.css('height', $(document).height());
		}

		$.fancybox.center(true);
	};

	$.fancybox.center = function() {
		var view, align;

		if (busy) {
			return;	
		}

		align = arguments[0] === true ? 1 : 0;
		view = _get_viewport();

		if (!align && (wrap.width() > view[0] || wrap.height() > view[1])) {
			return;	
		}

		wrap
			.stop()
			.animate({
				'top' : parseInt(Math.max(view[3] - 20, view[3] + ((view[1] - content.height() - 40) * 0.5) - currentOpts.padding)),
				'left' : parseInt(Math.max(view[2] - 20, view[2] + ((view[0] - content.width() - 40) * 0.5) - currentOpts.padding))
			}, typeof arguments[0] == 'number' ? arguments[0] : 200);
	};

	$.fancybox.init = function() {
		if ($("#fancybox-wrap").length) {
			return;
		}

		$('body').append(
			tmp	= $('<div id="fancybox-tmp"></div>'),
			loading	= $('<div id="fancybox-loading"><div></div></div>'),
			overlay	= $('<div id="fancybox-overlay"></div>'),
			wrap = $('<div id="fancybox-wrap"></div>')
		);

		outer = $('<div id="fancybox-outer"></div>')
			.append('<div class="fancybox-bg" id="fancybox-bg-n"></div><div class="fancybox-bg" id="fancybox-bg-ne"></div><div class="fancybox-bg" id="fancybox-bg-e"></div><div class="fancybox-bg" id="fancybox-bg-se"></div><div class="fancybox-bg" id="fancybox-bg-s"></div><div class="fancybox-bg" id="fancybox-bg-sw"></div><div class="fancybox-bg" id="fancybox-bg-w"></div><div class="fancybox-bg" id="fancybox-bg-nw"></div>')
			.appendTo( wrap );

		outer.append(
			content = $('<div id="fancybox-content"></div>'),
			close = $('<a id="fancybox-close"></a>'),
			title = $('<div id="fancybox-title"></div>'),

			nav_left = $('<a href="javascript:;" id="fancybox-left"><span class="fancy-ico" id="fancybox-left-ico"></span></a>'),
			nav_right = $('<a href="javascript:;" id="fancybox-right"><span class="fancy-ico" id="fancybox-right-ico"></span></a>')
		);

		close.click($.fancybox.close);
		loading.click($.fancybox.cancel);

		nav_left.click(function(e) {
			e.preventDefault();
			$.fancybox.prev();
		});

		nav_right.click(function(e) {
			e.preventDefault();
			$.fancybox.next();
		});

		if ($.fn.mousewheel) {
			wrap.bind('mousewheel.fb', function(e, delta) {
				if (busy) {
					e.preventDefault();

				} else if ($(e.target).get(0).clientHeight == 0 || $(e.target).get(0).scrollHeight === $(e.target).get(0).clientHeight) {
					e.preventDefault();
					$.fancybox[ delta > 0 ? 'prev' : 'next']();
				}
			});
		}

		if (!$.support.opacity) {
			wrap.addClass('fancybox-ie');
		}

		if (isIE6) {
			loading.addClass('fancybox-ie6');
			wrap.addClass('fancybox-ie6');

			$('<iframe id="fancybox-hide-sel-frame" src="' + (/^https/i.test(window.location.href || '') ? 'javascript:void(false)' : 'about:blank' ) + '" scrolling="no" border="0" frameborder="0" tabindex="-1"></iframe>').prependTo(outer);
		}
	};

	$.fn.fancybox.defaults = {
		padding : 10,
		margin : 40,
		opacity : false,
		modal : false,
		cyclic : false,
		scrolling : 'auto',	// 'auto', 'yes' or 'no'

		width : 560,
		height : 340,

		autoScale : true,
		autoDimensions : true,
		centerOnScroll : false,

		ajax : {},
		swf : { wmode: 'transparent' },

		hideOnOverlayClick : true,
		hideOnContentClick : false,

		overlayShow : true,
		overlayOpacity : 0.7,
		overlayColor : '#777',

		titleShow : true,
		titlePosition : 'float', // 'float', 'outside', 'inside' or 'over'
		titleFormat : null,
		titleFromAlt : false,

		transitionIn : 'fade', // 'elastic', 'fade' or 'none'
		transitionOut : 'fade', // 'elastic', 'fade' or 'none'

		speedIn : 300,
		speedOut : 300,

		changeSpeed : 300,
		changeFade : 'fast',

		easingIn : 'swing',
		easingOut : 'swing',

		showCloseButton	 : true,
		showNavArrows : true,
		enableEscapeButton : true,
		enableKeyboardNav : true,

		onStart : function(){},
		onCancel : function(){},
		onComplete : function(){},
		onCleanup : function(){},
		onClosed : function(){},
		onError : function(){}
	};

	$(document).ready(function() {
		$.fancybox.init();
	});

})(jQuery);]]></CSP>


<CSP name="js/fancybox/jquery.fancybox-1.3.4.pack.js" application="/csp/cbt/" default="1"><![CDATA[
/*
 * FancyBox - jQuery Plugin
 * Simple and fancy lightbox alternative
 *
 * Examples and documentation at: http://fancybox.net
 * 
 * Copyright (c) 2008 - 2010 Janis Skarnelis
 * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated.
 * 
 * Version: 1.3.4 (11/11/2010)
 * Requires: jQuery v1.3+
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */

;(function(b){var m,t,u,f,D,j,E,n,z,A,q=0,e={},o=[],p=0,d={},l=[],G=null,v=new Image,J=/\.(jpg|gif|png|bmp|jpeg)(.*)?$/i,W=/[^\.]\.(swf)\s*$/i,K,L=1,y=0,s="",r,i,h=false,B=b.extend(b("<div/>")[0],{prop:0}),M=b.browser.msie&&b.browser.version<7&&!window.XMLHttpRequest,N=function(){t.hide();v.onerror=v.onload=null;G&&G.abort();m.empty()},O=function(){if(false===e.onError(o,q,e)){t.hide();h=false}else{e.titleShow=false;e.width="auto";e.height="auto";m.html('<p id="fancybox-error">The requested content cannot be loaded.<br />Please try again later.</p>');
F()}},I=function(){var a=o[q],c,g,k,C,P,w;N();e=b.extend({},b.fn.fancybox.defaults,typeof b(a).data("fancybox")=="undefined"?e:b(a).data("fancybox"));w=e.onStart(o,q,e);if(w===false)h=false;else{if(typeof w=="object")e=b.extend(e,w);k=e.title||(a.nodeName?b(a).attr("title"):a.title)||"";if(a.nodeName&&!e.orig)e.orig=b(a).children("img:first").length?b(a).children("img:first"):b(a);if(k===""&&e.orig&&e.titleFromAlt)k=e.orig.attr("alt");c=e.href||(a.nodeName?b(a).attr("href"):a.href)||null;if(/^(?:javascript)/i.test(c)||
c=="#")c=null;if(e.type){g=e.type;if(!c)c=e.content}else if(e.content)g="html";else if(c)g=c.match(J)?"image":c.match(W)?"swf":b(a).hasClass("iframe")?"iframe":c.indexOf("#")===0?"inline":"ajax";if(g){if(g=="inline"){a=c.substr(c.indexOf("#"));g=b(a).length>0?"inline":"ajax"}e.type=g;e.href=c;e.title=k;if(e.autoDimensions)if(e.type=="html"||e.type=="inline"||e.type=="ajax"){e.width="auto";e.height="auto"}else e.autoDimensions=false;if(e.modal){e.overlayShow=true;e.hideOnOverlayClick=false;e.hideOnContentClick=
false;e.enableEscapeButton=false;e.showCloseButton=false}e.padding=parseInt(e.padding,10);e.margin=parseInt(e.margin,10);m.css("padding",e.padding+e.margin);b(".fancybox-inline-tmp").unbind("fancybox-cancel").bind("fancybox-change",function(){b(this).replaceWith(j.children())});switch(g){case "html":m.html(e.content);F();break;case "inline":if(b(a).parent().is("#fancybox-content")===true){h=false;break}b('<div class="fancybox-inline-tmp" />').hide().insertBefore(b(a)).bind("fancybox-cleanup",function(){b(this).replaceWith(j.children())}).bind("fancybox-cancel",
function(){b(this).replaceWith(m.children())});b(a).appendTo(m);F();break;case "image":h=false;b.fancybox.showActivity();v=new Image;v.onerror=function(){O()};v.onload=function(){h=true;v.onerror=v.onload=null;e.width=v.width;e.height=v.height;b("<img />").attr({id:"fancybox-img",src:v.src,alt:e.title}).appendTo(m);Q()};v.src=c;break;case "swf":e.scrolling="no";C='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+e.width+'" height="'+e.height+'"><param name="movie" value="'+c+
'"></param>';P="";b.each(e.swf,function(x,H){C+='<param name="'+x+'" value="'+H+'"></param>';P+=" "+x+'="'+H+'"'});C+='<embed src="'+c+'" type="application/x-shockwave-flash" width="'+e.width+'" height="'+e.height+'"'+P+"></embed></object>";m.html(C);F();break;case "ajax":h=false;b.fancybox.showActivity();e.ajax.win=e.ajax.success;G=b.ajax(b.extend({},e.ajax,{url:c,data:e.ajax.data||{},error:function(x){x.status>0&&O()},success:function(x,H,R){if((typeof R=="object"?R:G).status==200){if(typeof e.ajax.win==
"function"){w=e.ajax.win(c,x,H,R);if(w===false){t.hide();return}else if(typeof w=="string"||typeof w=="object")x=w}m.html(x);F()}}}));break;case "iframe":Q()}}else O()}},F=function(){var a=e.width,c=e.height;a=a.toString().indexOf("%")>-1?parseInt((b(window).width()-e.margin*2)*parseFloat(a)/100,10)+"px":a=="auto"?"auto":a+"px";c=c.toString().indexOf("%")>-1?parseInt((b(window).height()-e.margin*2)*parseFloat(c)/100,10)+"px":c=="auto"?"auto":c+"px";m.wrapInner('<div style="width:'+a+";height:"+c+
";overflow: "+(e.scrolling=="auto"?"auto":e.scrolling=="yes"?"scroll":"hidden")+';position:relative;"></div>');e.width=m.width();e.height=m.height();Q()},Q=function(){var a,c;t.hide();if(f.is(":visible")&&false===d.onCleanup(l,p,d)){b.event.trigger("fancybox-cancel");h=false}else{h=true;b(j.add(u)).unbind();b(window).unbind("resize.fb scroll.fb");b(document).unbind("keydown.fb");f.is(":visible")&&d.titlePosition!=="outside"&&f.css("height",f.height());l=o;p=q;d=e;if(d.overlayShow){u.css({"background-color":d.overlayColor,
opacity:d.overlayOpacity,cursor:d.hideOnOverlayClick?"pointer":"auto",height:b(document).height()});if(!u.is(":visible")){M&&b("select:not(#fancybox-tmp select)").filter(function(){return this.style.visibility!=="hidden"}).css({visibility:"hidden"}).one("fancybox-cleanup",function(){this.style.visibility="inherit"});u.show()}}else u.hide();i=X();s=d.title||"";y=0;n.empty().removeAttr("style").removeClass();if(d.titleShow!==false){if(b.isFunction(d.titleFormat))a=d.titleFormat(s,l,p,d);else a=s&&s.length?
d.titlePosition=="float"?'<table id="fancybox-title-float-wrap" cellpadding="0" cellspacing="0"><tr><td id="fancybox-title-float-left"></td><td id="fancybox-title-float-main">'+s+'</td><td id="fancybox-title-float-right"></td></tr></table>':'<div id="fancybox-title-'+d.titlePosition+'">'+s+"</div>":false;s=a;if(!(!s||s==="")){n.addClass("fancybox-title-"+d.titlePosition).html(s).appendTo("body").show();switch(d.titlePosition){case "inside":n.css({width:i.width-d.padding*2,marginLeft:d.padding,marginRight:d.padding});
y=n.outerHeight(true);n.appendTo(D);i.height+=y;break;case "over":n.css({marginLeft:d.padding,width:i.width-d.padding*2,bottom:d.padding}).appendTo(D);break;case "float":n.css("left",parseInt((n.width()-i.width-40)/2,10)*-1).appendTo(f);break;default:n.css({width:i.width-d.padding*2,paddingLeft:d.padding,paddingRight:d.padding}).appendTo(f)}}}n.hide();if(f.is(":visible")){b(E.add(z).add(A)).hide();a=f.position();r={top:a.top,left:a.left,width:f.width(),height:f.height()};c=r.width==i.width&&r.height==
i.height;j.fadeTo(d.changeFade,0.3,function(){var g=function(){j.html(m.contents()).fadeTo(d.changeFade,1,S)};b.event.trigger("fancybox-change");j.empty().removeAttr("filter").css({"border-width":d.padding,width:i.width-d.padding*2,height:e.autoDimensions?"auto":i.height-y-d.padding*2});if(c)g();else{B.prop=0;b(B).animate({prop:1},{duration:d.changeSpeed,easing:d.easingChange,step:T,complete:g})}})}else{f.removeAttr("style");j.css("border-width",d.padding);if(d.transitionIn=="elastic"){r=V();j.html(m.contents());
f.show();if(d.opacity)i.opacity=0;B.prop=0;b(B).animate({prop:1},{duration:d.speedIn,easing:d.easingIn,step:T,complete:S})}else{d.titlePosition=="inside"&&y>0&&n.show();j.css({width:i.width-d.padding*2,height:e.autoDimensions?"auto":i.height-y-d.padding*2}).html(m.contents());f.css(i).fadeIn(d.transitionIn=="none"?0:d.speedIn,S)}}}},Y=function(){if(d.enableEscapeButton||d.enableKeyboardNav)b(document).bind("keydown.fb",function(a){if(a.keyCode==27&&d.enableEscapeButton){a.preventDefault();b.fancybox.close()}else if((a.keyCode==
37||a.keyCode==39)&&d.enableKeyboardNav&&a.target.tagName!=="INPUT"&&a.target.tagName!=="TEXTAREA"&&a.target.tagName!=="SELECT"){a.preventDefault();b.fancybox[a.keyCode==37?"prev":"next"]()}});if(d.showNavArrows){if(d.cyclic&&l.length>1||p!==0)z.show();if(d.cyclic&&l.length>1||p!=l.length-1)A.show()}else{z.hide();A.hide()}},S=function(){if(!b.support.opacity){j.get(0).style.removeAttribute("filter");f.get(0).style.removeAttribute("filter")}e.autoDimensions&&j.css("height","auto");f.css("height","auto");
s&&s.length&&n.show();d.showCloseButton&&E.show();Y();d.hideOnContentClick&&j.bind("click",b.fancybox.close);d.hideOnOverlayClick&&u.bind("click",b.fancybox.close);b(window).bind("resize.fb",b.fancybox.resize);d.centerOnScroll&&b(window).bind("scroll.fb",b.fancybox.center);if(d.type=="iframe")b('<iframe id="fancybox-frame" name="fancybox-frame'+(new Date).getTime()+'" frameborder="0" hspace="0" '+(b.browser.msie?'allowtransparency="true""':"")+' scrolling="'+e.scrolling+'" src="'+d.href+'"></iframe>').appendTo(j);
f.show();h=false;b.fancybox.center();d.onComplete(l,p,d);var a,c;if(l.length-1>p){a=l[p+1].href;if(typeof a!=="undefined"&&a.match(J)){c=new Image;c.src=a}}if(p>0){a=l[p-1].href;if(typeof a!=="undefined"&&a.match(J)){c=new Image;c.src=a}}},T=function(a){var c={width:parseInt(r.width+(i.width-r.width)*a,10),height:parseInt(r.height+(i.height-r.height)*a,10),top:parseInt(r.top+(i.top-r.top)*a,10),left:parseInt(r.left+(i.left-r.left)*a,10)};if(typeof i.opacity!=="undefined")c.opacity=a<0.5?0.5:a;f.css(c);
j.css({width:c.width-d.padding*2,height:c.height-y*a-d.padding*2})},U=function(){return[b(window).width()-d.margin*2,b(window).height()-d.margin*2,b(document).scrollLeft()+d.margin,b(document).scrollTop()+d.margin]},X=function(){var a=U(),c={},g=d.autoScale,k=d.padding*2;c.width=d.width.toString().indexOf("%")>-1?parseInt(a[0]*parseFloat(d.width)/100,10):d.width+k;c.height=d.height.toString().indexOf("%")>-1?parseInt(a[1]*parseFloat(d.height)/100,10):d.height+k;if(g&&(c.width>a[0]||c.height>a[1]))if(e.type==
"image"||e.type=="swf"){g=d.width/d.height;if(c.width>a[0]){c.width=a[0];c.height=parseInt((c.width-k)/g+k,10)}if(c.height>a[1]){c.height=a[1];c.width=parseInt((c.height-k)*g+k,10)}}else{c.width=Math.min(c.width,a[0]);c.height=Math.min(c.height,a[1])}c.top=parseInt(Math.max(a[3]-20,a[3]+(a[1]-c.height-40)*0.5),10);c.left=parseInt(Math.max(a[2]-20,a[2]+(a[0]-c.width-40)*0.5),10);return c},V=function(){var a=e.orig?b(e.orig):false,c={};if(a&&a.length){c=a.offset();c.top+=parseInt(a.css("paddingTop"),
10)||0;c.left+=parseInt(a.css("paddingLeft"),10)||0;c.top+=parseInt(a.css("border-top-width"),10)||0;c.left+=parseInt(a.css("border-left-width"),10)||0;c.width=a.width();c.height=a.height();c={width:c.width+d.padding*2,height:c.height+d.padding*2,top:c.top-d.padding-20,left:c.left-d.padding-20}}else{a=U();c={width:d.padding*2,height:d.padding*2,top:parseInt(a[3]+a[1]*0.5,10),left:parseInt(a[2]+a[0]*0.5,10)}}return c},Z=function(){if(t.is(":visible")){b("div",t).css("top",L*-40+"px");L=(L+1)%12}else clearInterval(K)};
b.fn.fancybox=function(a){if(!b(this).length)return this;b(this).data("fancybox",b.extend({},a,b.metadata?b(this).metadata():{})).unbind("click.fb").bind("click.fb",function(c){c.preventDefault();if(!h){h=true;b(this).blur();o=[];q=0;c=b(this).attr("rel")||"";if(!c||c==""||c==="nofollow")o.push(this);else{o=b("a[rel="+c+"], area[rel="+c+"]");q=o.index(this)}I()}});return this};b.fancybox=function(a,c){var g;if(!h){h=true;g=typeof c!=="undefined"?c:{};o=[];q=parseInt(g.index,10)||0;if(b.isArray(a)){for(var k=
0,C=a.length;k<C;k++)if(typeof a[k]=="object")b(a[k]).data("fancybox",b.extend({},g,a[k]));else a[k]=b({}).data("fancybox",b.extend({content:a[k]},g));o=jQuery.merge(o,a)}else{if(typeof a=="object")b(a).data("fancybox",b.extend({},g,a));else a=b({}).data("fancybox",b.extend({content:a},g));o.push(a)}if(q>o.length||q<0)q=0;I()}};b.fancybox.showActivity=function(){clearInterval(K);t.show();K=setInterval(Z,66)};b.fancybox.hideActivity=function(){t.hide()};b.fancybox.next=function(){return b.fancybox.pos(p+
1)};b.fancybox.prev=function(){return b.fancybox.pos(p-1)};b.fancybox.pos=function(a){if(!h){a=parseInt(a);o=l;if(a>-1&&a<l.length){q=a;I()}else if(d.cyclic&&l.length>1){q=a>=l.length?0:l.length-1;I()}}};b.fancybox.cancel=function(){if(!h){h=true;b.event.trigger("fancybox-cancel");N();e.onCancel(o,q,e);h=false}};b.fancybox.close=function(){function a(){u.fadeOut("fast");n.empty().hide();f.hide();b.event.trigger("fancybox-cleanup");j.empty();d.onClosed(l,p,d);l=e=[];p=q=0;d=e={};h=false}if(!(h||f.is(":hidden"))){h=
true;if(d&&false===d.onCleanup(l,p,d))h=false;else{N();b(E.add(z).add(A)).hide();b(j.add(u)).unbind();b(window).unbind("resize.fb scroll.fb");b(document).unbind("keydown.fb");j.find("iframe").attr("src",M&&/^https/i.test(window.location.href||"")?"javascript:void(false)":"about:blank");d.titlePosition!=="inside"&&n.empty();f.stop();if(d.transitionOut=="elastic"){r=V();var c=f.position();i={top:c.top,left:c.left,width:f.width(),height:f.height()};if(d.opacity)i.opacity=1;n.empty().hide();B.prop=1;
b(B).animate({prop:0},{duration:d.speedOut,easing:d.easingOut,step:T,complete:a})}else f.fadeOut(d.transitionOut=="none"?0:d.speedOut,a)}}};b.fancybox.resize=function(){u.is(":visible")&&u.css("height",b(document).height());b.fancybox.center(true)};b.fancybox.center=function(a){var c,g;if(!h){g=a===true?1:0;c=U();!g&&(f.width()>c[0]||f.height()>c[1])||f.stop().animate({top:parseInt(Math.max(c[3]-20,c[3]+(c[1]-j.height()-40)*0.5-d.padding)),left:parseInt(Math.max(c[2]-20,c[2]+(c[0]-j.width()-40)*0.5-
d.padding))},typeof a=="number"?a:200)}};b.fancybox.init=function(){if(!b("#fancybox-wrap").length){b("body").append(m=b('<div id="fancybox-tmp"></div>'),t=b('<div id="fancybox-loading"><div></div></div>'),u=b('<div id="fancybox-overlay"></div>'),f=b('<div id="fancybox-wrap"></div>'));D=b('<div id="fancybox-outer"></div>').append('<div class="fancybox-bg" id="fancybox-bg-n"></div><div class="fancybox-bg" id="fancybox-bg-ne"></div><div class="fancybox-bg" id="fancybox-bg-e"></div><div class="fancybox-bg" id="fancybox-bg-se"></div><div class="fancybox-bg" id="fancybox-bg-s"></div><div class="fancybox-bg" id="fancybox-bg-sw"></div><div class="fancybox-bg" id="fancybox-bg-w"></div><div class="fancybox-bg" id="fancybox-bg-nw"></div>').appendTo(f);
D.append(j=b('<div id="fancybox-content"></div>'),E=b('<a id="fancybox-close"></a>'),n=b('<div id="fancybox-title"></div>'),z=b('<a href="javascript:;" id="fancybox-left"><span class="fancy-ico" id="fancybox-left-ico"></span></a>'),A=b('<a href="javascript:;" id="fancybox-right"><span class="fancy-ico" id="fancybox-right-ico"></span></a>'));E.click(b.fancybox.close);t.click(b.fancybox.cancel);z.click(function(a){a.preventDefault();b.fancybox.prev()});A.click(function(a){a.preventDefault();b.fancybox.next()});
b.fn.mousewheel&&f.bind("mousewheel.fb",function(a,c){if(h)a.preventDefault();else if(b(a.target).get(0).clientHeight==0||b(a.target).get(0).scrollHeight===b(a.target).get(0).clientHeight){a.preventDefault();b.fancybox[c>0?"prev":"next"]()}});b.support.opacity||f.addClass("fancybox-ie");if(M){t.addClass("fancybox-ie6");f.addClass("fancybox-ie6");b('<iframe id="fancybox-hide-sel-frame" src="'+(/^https/i.test(window.location.href||"")?"javascript:void(false)":"about:blank")+'" scrolling="no" border="0" frameborder="0" tabindex="-1"></iframe>').prependTo(D)}}};
b.fn.fancybox.defaults={padding:10,margin:40,opacity:false,modal:false,cyclic:false,scrolling:"auto",width:560,height:340,autoScale:true,autoDimensions:true,centerOnScroll:false,ajax:{},swf:{wmode:"transparent"},hideOnOverlayClick:true,hideOnContentClick:false,overlayShow:true,overlayOpacity:0.7,overlayColor:"#777",titleShow:true,titlePosition:"float",titleFormat:null,titleFromAlt:false,transitionIn:"fade",transitionOut:"fade",speedIn:300,speedOut:300,changeSpeed:300,changeFade:"fast",easingIn:"swing",
easingOut:"swing",showCloseButton:true,showNavArrows:true,enableEscapeButton:true,enableKeyboardNav:true,onStart:function(){},onCancel:function(){},onComplete:function(){},onCleanup:function(){},onClosed:function(){},onError:function(){}};b(document).ready(function(){b.fancybox.init()})})(jQuery);]]></CSP>


<CSP name="js/fancybox/jquery.mousewheel-3.0.4.pack.js" application="/csp/cbt/" default="1"><![CDATA[
/*! Copyright (c) 2010 Brandon Aaron (http://brandonaaron.net)
* Licensed under the MIT License (LICENSE.txt).
*
* Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers.
* Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix.
* Thanks to: Seamus Leahy for adding deltaX and deltaY
*
* Version: 3.0.4
*
* Requires: 1.2.2+
*/

(function(d){function g(a){var b=a||window.event,i=[].slice.call(arguments,1),c=0,h=0,e=0;a=d.event.fix(b);a.type="mousewheel";if(a.wheelDelta)c=a.wheelDelta/120;if(a.detail)c=-a.detail/3;e=c;if(b.axis!==undefined&&b.axis===b.HORIZONTAL_AXIS){e=0;h=-1*c}if(b.wheelDeltaY!==undefined)e=b.wheelDeltaY/120;if(b.wheelDeltaX!==undefined)h=-1*b.wheelDeltaX/120;i.unshift(a,c,h,e);return d.event.handle.apply(this,i)}var f=["DOMMouseScroll","mousewheel"];d.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var a=
f.length;a;)this.addEventListener(f[--a],g,false);else this.onmousewheel=g},teardown:function(){if(this.removeEventListener)for(var a=f.length;a;)this.removeEventListener(f[--a],g,false);else this.onmousewheel=null}};d.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})})(jQuery);]]></CSP>


<CSP name="js/guiFunctions.js" application="/csp/cbt/" default="1"><![CDATA[
/*******************************************************************
	Copyright (c) 2010 :

	SYNERVA Gesellschaft für Softwareentwicklung und Beratung mbH
	Mergenthaler Allee 55
	D-65760 Eschborn

	http://www.synerva.de
	mailto:info@synerva.de
 
*******************************************************************/

////////////////////////////////////////////////////////////
// isValidTime [hh:mm]
function syn_isValidTime(timeString) {
	if (timeString.search(":") == 0) {
		return false;
	}
	timeString = timeString.split(":");

	if (timeString.length != 2) {
		return false;
	}
	var hours = timeString[0];
	var minutes = timeString[1];

	if ((hours < 0) || (hours >= 24) || (syn_isInt(hours) == false)) {
		return false;
	}
	if ((minutes < 0) || (minutes > 59) || (syn_isInt(minutes) == false)) {
		return false;
	}
	return true;
}


////////////////////////////////////////////////////////////
// popups in der bildschirm mitte platzieren
function syn_getTopLeft(width, height) {

	var screenCenterX = screen.width/2;
	var screenCenterY = screen.height/2;

	var topLeft = new Object();
	topLeft.left = screenCenterX - (width/2);
	topLeft.top = screenCenterY - (height/2) - 45;

	return topLeft;
}

////////////////////////////////////////////////////////////
// Oeffnet ein PopUp Fenster zentriert auf dem Bildschirm
// und setzt den Fokus auf das Fenster
// Parameter:
//	winUrl = url der PopUp Datei
//	winName = name des Fensters
//	width, height
function syn_openPopUp(winUrl, winName, width, height) {
	// center berechnen ==> top, left als result
	var topLeft = syn_getTopLeft(width, height);

	var win = window.open(winUrl, winName,
		"width=" + width + ",height=" + height + ",top=" + topLeft.top + ",left=" + topLeft.left +
		",location=no, menubar=no, toolbar=no, status=no ,dependent=yes, scrollbars=yes, resizable=yes");
	win.focus();

	return win;
}

////////////////////////////////////////////////////////////////////
// globale Funktion fuer mouse over effekte bei tabellen
function rowOver(tableRow) {
	tableRow.style.background = "#BDC6CE";
	setPointerCursor(tableRow);
}

////////////////////////////////////////////////////////////////////
function rowOut(tableRow) {
	tableRow.style.background = "#F2F2F4";
	tableRow.style.cursor = "default";
}

////////////////////////////////////////////////////////////////////
function setPointerCursor(obj) {
	try {
		obj.style.cursor = "pointer";
	} catch (error) {
	}

	try {
		obj.style.cursor = "hand";
	} catch (error) {
	}
}

////////////////////////////////////////////////////////////
// isInt
// prueft auf gueltigen Int wert
// liefert false, wenn keine Zahl (auch bei "" und " ")
// sonst true
function syn_isInt(val) {

	if (val.toString().indexOf(".") != -1) {
		return false;
	}

	if (isNaN(val)) {
		return false;
	}

	var res = parseInt(val, 10);
	return !isNaN(res);
}

////////////////////////////////////////////////////////////
// isFloat
// prueft auf gueltigen float wert
// liefert false, wenn keine Zahl (auch bei "" und " ")
// sonst true
function syn_isFloat(val) {

	if (isNaN(val)) {
		return false;
	}

	var res = parseFloat(val);
	return !isNaN(res);
}
]]></CSP>


<CSP name="js/jquery-1.4.3.min.js" application="/csp/cbt/" default="1"><![CDATA[
/*!
 * jQuery JavaScript Library v1.4.3
 * http://jquery.com/
 *
 * Copyright 2010, John Resig
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * Includes Sizzle.js
 * http://sizzlejs.com/
 * Copyright 2010, The Dojo Foundation
 * Released under the MIT, BSD, and GPL Licenses.
 *
 * Date: Thu Oct 14 23:10:06 2010 -0400
 */
(function(E,A){function U(){return false}function ba(){return true}function ja(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function Ga(a){var b,d,e=[],f=[],h,k,l,n,s,v,B,D;k=c.data(this,this.nodeType?"events":"__events__");if(typeof k==="function")k=k.events;if(!(a.liveFired===this||!k||!k.live||a.button&&a.type==="click")){if(a.namespace)D=RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)");a.liveFired=this;var H=k.live.slice(0);for(n=0;n<H.length;n++){k=H[n];k.origType.replace(X,
"")===a.type?f.push(k.selector):H.splice(n--,1)}f=c(a.target).closest(f,a.currentTarget);s=0;for(v=f.length;s<v;s++){B=f[s];for(n=0;n<H.length;n++){k=H[n];if(B.selector===k.selector&&(!D||D.test(k.namespace))){l=B.elem;h=null;if(k.preType==="mouseenter"||k.preType==="mouseleave"){a.type=k.preType;h=c(a.relatedTarget).closest(k.selector)[0]}if(!h||h!==l)e.push({elem:l,handleObj:k,level:B.level})}}}s=0;for(v=e.length;s<v;s++){f=e[s];if(d&&f.level>d)break;a.currentTarget=f.elem;a.data=f.handleObj.data;
a.handleObj=f.handleObj;D=f.handleObj.origHandler.apply(f.elem,arguments);if(D===false||a.isPropagationStopped()){d=f.level;if(D===false)b=false}}return b}}function Y(a,b){return(a&&a!=="*"?a+".":"")+b.replace(Ha,"`").replace(Ia,"&")}function ka(a,b,d){if(c.isFunction(b))return c.grep(a,function(f,h){return!!b.call(f,h,f)===d});else if(b.nodeType)return c.grep(a,function(f){return f===b===d});else if(typeof b==="string"){var e=c.grep(a,function(f){return f.nodeType===1});if(Ja.test(b))return c.filter(b,
e,!d);else b=c.filter(b,e)}return c.grep(a,function(f){return c.inArray(f,b)>=0===d})}function la(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var e=c.data(a[d++]),f=c.data(this,e);if(e=e&&e.events){delete f.handle;f.events={};for(var h in e)for(var k in e[h])c.event.add(this,h,e[h][k],e[h][k].data)}}})}function Ka(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}
function ma(a,b,d){var e=b==="width"?a.offsetWidth:a.offsetHeight;if(d==="border")return e;c.each(b==="width"?La:Ma,function(){d||(e-=parseFloat(c.css(a,"padding"+this))||0);if(d==="margin")e+=parseFloat(c.css(a,"margin"+this))||0;else e-=parseFloat(c.css(a,"border"+this+"Width"))||0});return e}function ca(a,b,d,e){if(c.isArray(b)&&b.length)c.each(b,function(f,h){d||Na.test(a)?e(a,h):ca(a+"["+(typeof h==="object"||c.isArray(h)?f:"")+"]",h,d,e)});else if(!d&&b!=null&&typeof b==="object")c.isEmptyObject(b)?
e(a,""):c.each(b,function(f,h){ca(a+"["+f+"]",h,d,e)});else e(a,b)}function S(a,b){var d={};c.each(na.concat.apply([],na.slice(0,b)),function(){d[this]=a});return d}function oa(a){if(!da[a]){var b=c("<"+a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d==="")d="block";da[a]=d}return da[a]}function ea(a){return c.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var u=E.document,c=function(){function a(){if(!b.isReady){try{u.documentElement.doScroll("left")}catch(i){setTimeout(a,
1);return}b.ready()}}var b=function(i,r){return new b.fn.init(i,r)},d=E.jQuery,e=E.$,f,h=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,k=/\S/,l=/^\s+/,n=/\s+$/,s=/\W/,v=/\d/,B=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,D=/^[\],:{}\s]*$/,H=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,w=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,G=/(?:^|:|,)(?:\s*\[)+/g,M=/(webkit)[ \/]([\w.]+)/,g=/(opera)(?:.*version)?[ \/]([\w.]+)/,j=/(msie) ([\w.]+)/,o=/(mozilla)(?:.*? rv:([\w.]+))?/,m=navigator.userAgent,p=false,
q=[],t,x=Object.prototype.toString,C=Object.prototype.hasOwnProperty,P=Array.prototype.push,N=Array.prototype.slice,R=String.prototype.trim,Q=Array.prototype.indexOf,L={};b.fn=b.prototype={init:function(i,r){var y,z,F;if(!i)return this;if(i.nodeType){this.context=this[0]=i;this.length=1;return this}if(i==="body"&&!r&&u.body){this.context=u;this[0]=u.body;this.selector="body";this.length=1;return this}if(typeof i==="string")if((y=h.exec(i))&&(y[1]||!r))if(y[1]){F=r?r.ownerDocument||r:u;if(z=B.exec(i))if(b.isPlainObject(r)){i=
[u.createElement(z[1])];b.fn.attr.call(i,r,true)}else i=[F.createElement(z[1])];else{z=b.buildFragment([y[1]],[F]);i=(z.cacheable?z.fragment.cloneNode(true):z.fragment).childNodes}return b.merge(this,i)}else{if((z=u.getElementById(y[2]))&&z.parentNode){if(z.id!==y[2])return f.find(i);this.length=1;this[0]=z}this.context=u;this.selector=i;return this}else if(!r&&!s.test(i)){this.selector=i;this.context=u;i=u.getElementsByTagName(i);return b.merge(this,i)}else return!r||r.jquery?(r||f).find(i):b(r).find(i);
else if(b.isFunction(i))return f.ready(i);if(i.selector!==A){this.selector=i.selector;this.context=i.context}return b.makeArray(i,this)},selector:"",jquery:"1.4.3",length:0,size:function(){return this.length},toArray:function(){return N.call(this,0)},get:function(i){return i==null?this.toArray():i<0?this.slice(i)[0]:this[i]},pushStack:function(i,r,y){var z=b();b.isArray(i)?P.apply(z,i):b.merge(z,i);z.prevObject=this;z.context=this.context;if(r==="find")z.selector=this.selector+(this.selector?" ":
"")+y;else if(r)z.selector=this.selector+"."+r+"("+y+")";return z},each:function(i,r){return b.each(this,i,r)},ready:function(i){b.bindReady();if(b.isReady)i.call(u,b);else q&&q.push(i);return this},eq:function(i){return i===-1?this.slice(i):this.slice(i,+i+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(N.apply(this,arguments),"slice",N.call(arguments).join(","))},map:function(i){return this.pushStack(b.map(this,function(r,y){return i.call(r,
y,r)}))},end:function(){return this.prevObject||b(null)},push:P,sort:[].sort,splice:[].splice};b.fn.init.prototype=b.fn;b.extend=b.fn.extend=function(){var i=arguments[0]||{},r=1,y=arguments.length,z=false,F,I,K,J,fa;if(typeof i==="boolean"){z=i;i=arguments[1]||{};r=2}if(typeof i!=="object"&&!b.isFunction(i))i={};if(y===r){i=this;--r}for(;r<y;r++)if((F=arguments[r])!=null)for(I in F){K=i[I];J=F[I];if(i!==J)if(z&&J&&(b.isPlainObject(J)||(fa=b.isArray(J)))){if(fa){fa=false;clone=K&&b.isArray(K)?K:[]}else clone=
K&&b.isPlainObject(K)?K:{};i[I]=b.extend(z,clone,J)}else if(J!==A)i[I]=J}return i};b.extend({noConflict:function(i){E.$=e;if(i)E.jQuery=d;return b},isReady:false,readyWait:1,ready:function(i){i===true&&b.readyWait--;if(!b.readyWait||i!==true&&!b.isReady){if(!u.body)return setTimeout(b.ready,1);b.isReady=true;if(!(i!==true&&--b.readyWait>0)){if(q){for(var r=0;i=q[r++];)i.call(u,b);q=null}b.fn.triggerHandler&&b(u).triggerHandler("ready")}}},bindReady:function(){if(!p){p=true;if(u.readyState==="complete")return setTimeout(b.ready,
1);if(u.addEventListener){u.addEventListener("DOMContentLoaded",t,false);E.addEventListener("load",b.ready,false)}else if(u.attachEvent){u.attachEvent("onreadystatechange",t);E.attachEvent("onload",b.ready);var i=false;try{i=E.frameElement==null}catch(r){}u.documentElement.doScroll&&i&&a()}}},isFunction:function(i){return b.type(i)==="function"},isArray:Array.isArray||function(i){return b.type(i)==="array"},isWindow:function(i){return i&&typeof i==="object"&&"setInterval"in i},isNaN:function(i){return i==
null||!v.test(i)||isNaN(i)},type:function(i){return i==null?String(i):L[x.call(i)]||"object"},isPlainObject:function(i){if(!i||b.type(i)!=="object"||i.nodeType||b.isWindow(i))return false;if(i.constructor&&!C.call(i,"constructor")&&!C.call(i.constructor.prototype,"isPrototypeOf"))return false;for(var r in i);return r===A||C.call(i,r)},isEmptyObject:function(i){for(var r in i)return false;return true},error:function(i){throw i;},parseJSON:function(i){if(typeof i!=="string"||!i)return null;i=b.trim(i);
if(D.test(i.replace(H,"@").replace(w,"]").replace(G,"")))return E.JSON&&E.JSON.parse?E.JSON.parse(i):(new Function("return "+i))();else b.error("Invalid JSON: "+i)},noop:function(){},globalEval:function(i){if(i&&k.test(i)){var r=u.getElementsByTagName("head")[0]||u.documentElement,y=u.createElement("script");y.type="text/javascript";if(b.support.scriptEval)y.appendChild(u.createTextNode(i));else y.text=i;r.insertBefore(y,r.firstChild);r.removeChild(y)}},nodeName:function(i,r){return i.nodeName&&i.nodeName.toUpperCase()===
r.toUpperCase()},each:function(i,r,y){var z,F=0,I=i.length,K=I===A||b.isFunction(i);if(y)if(K)for(z in i){if(r.apply(i[z],y)===false)break}else for(;F<I;){if(r.apply(i[F++],y)===false)break}else if(K)for(z in i){if(r.call(i[z],z,i[z])===false)break}else for(y=i[0];F<I&&r.call(y,F,y)!==false;y=i[++F]);return i},trim:R?function(i){return i==null?"":R.call(i)}:function(i){return i==null?"":i.toString().replace(l,"").replace(n,"")},makeArray:function(i,r){var y=r||[];if(i!=null){var z=b.type(i);i.length==
null||z==="string"||z==="function"||z==="regexp"||b.isWindow(i)?P.call(y,i):b.merge(y,i)}return y},inArray:function(i,r){if(r.indexOf)return r.indexOf(i);for(var y=0,z=r.length;y<z;y++)if(r[y]===i)return y;return-1},merge:function(i,r){var y=i.length,z=0;if(typeof r.length==="number")for(var F=r.length;z<F;z++)i[y++]=r[z];else for(;r[z]!==A;)i[y++]=r[z++];i.length=y;return i},grep:function(i,r,y){var z=[],F;y=!!y;for(var I=0,K=i.length;I<K;I++){F=!!r(i[I],I);y!==F&&z.push(i[I])}return z},map:function(i,
r,y){for(var z=[],F,I=0,K=i.length;I<K;I++){F=r(i[I],I,y);if(F!=null)z[z.length]=F}return z.concat.apply([],z)},guid:1,proxy:function(i,r,y){if(arguments.length===2)if(typeof r==="string"){y=i;i=y[r];r=A}else if(r&&!b.isFunction(r)){y=r;r=A}if(!r&&i)r=function(){return i.apply(y||this,arguments)};if(i)r.guid=i.guid=i.guid||r.guid||b.guid++;return r},access:function(i,r,y,z,F,I){var K=i.length;if(typeof r==="object"){for(var J in r)b.access(i,J,r[J],z,F,y);return i}if(y!==A){z=!I&&z&&b.isFunction(y);
for(J=0;J<K;J++)F(i[J],r,z?y.call(i[J],J,F(i[J],r)):y,I);return i}return K?F(i[0],r):A},now:function(){return(new Date).getTime()},uaMatch:function(i){i=i.toLowerCase();i=M.exec(i)||g.exec(i)||j.exec(i)||i.indexOf("compatible")<0&&o.exec(i)||[];return{browser:i[1]||"",version:i[2]||"0"}},browser:{}});b.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(i,r){L["[object "+r+"]"]=r.toLowerCase()});m=b.uaMatch(m);if(m.browser){b.browser[m.browser]=true;b.browser.version=
m.version}if(b.browser.webkit)b.browser.safari=true;if(Q)b.inArray=function(i,r){return Q.call(r,i)};if(!/\s/.test("\u00a0")){l=/^[\s\xA0]+/;n=/[\s\xA0]+$/}f=b(u);if(u.addEventListener)t=function(){u.removeEventListener("DOMContentLoaded",t,false);b.ready()};else if(u.attachEvent)t=function(){if(u.readyState==="complete"){u.detachEvent("onreadystatechange",t);b.ready()}};return E.jQuery=E.$=b}();(function(){c.support={};var a=u.documentElement,b=u.createElement("script"),d=u.createElement("div"),
e="script"+c.now();d.style.display="none";d.innerHTML="   <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";var f=d.getElementsByTagName("*"),h=d.getElementsByTagName("a")[0],k=u.createElement("select"),l=k.appendChild(u.createElement("option"));if(!(!f||!f.length||!h)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(h.getAttribute("style")),
hrefNormalized:h.getAttribute("href")==="/a",opacity:/^0.55$/.test(h.style.opacity),cssFloat:!!h.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:l.selected,optDisabled:false,checkClone:false,scriptEval:false,noCloneEvent:true,boxModel:null,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableHiddenOffsets:true};k.disabled=true;c.support.optDisabled=!l.disabled;b.type="text/javascript";try{b.appendChild(u.createTextNode("window."+e+"=1;"))}catch(n){}a.insertBefore(b,
a.firstChild);if(E[e]){c.support.scriptEval=true;delete E[e]}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function s(){c.support.noCloneEvent=false;d.detachEvent("onclick",s)});d.cloneNode(true).fireEvent("onclick")}d=u.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=u.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var s=u.createElement("div");
s.style.width=s.style.paddingLeft="1px";u.body.appendChild(s);c.boxModel=c.support.boxModel=s.offsetWidth===2;if("zoom"in s.style){s.style.display="inline";s.style.zoom=1;c.support.inlineBlockNeedsLayout=s.offsetWidth===2;s.style.display="";s.innerHTML="<div style='width:4px;'></div>";c.support.shrinkWrapBlocks=s.offsetWidth!==2}s.innerHTML="<table><tr><td style='padding:0;display:none'></td><td>t</td></tr></table>";var v=s.getElementsByTagName("td");c.support.reliableHiddenOffsets=v[0].offsetHeight===
0;v[0].style.display="";v[1].style.display="none";c.support.reliableHiddenOffsets=c.support.reliableHiddenOffsets&&v[0].offsetHeight===0;s.innerHTML="";u.body.removeChild(s).style.display="none"});a=function(s){var v=u.createElement("div");s="on"+s;var B=s in v;if(!B){v.setAttribute(s,"return;");B=typeof v[s]==="function"}return B};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=f=h=null}})();c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",
cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var pa={},Oa=/^(?:\{.*\}|\[.*\])$/;c.extend({cache:{},uuid:0,expando:"jQuery"+c.now(),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},data:function(a,b,d){if(c.acceptData(a)){a=a==E?pa:a;var e=a.nodeType,f=e?a[c.expando]:null,h=c.cache;if(!(e&&!f&&typeof b==="string"&&d===A)){if(e)f||(a[c.expando]=f=++c.uuid);else h=a;if(typeof b==="object")if(e)h[f]=
c.extend(h[f],b);else c.extend(h,b);else if(e&&!h[f])h[f]={};a=e?h[f]:h;if(d!==A)a[b]=d;return typeof b==="string"?a[b]:a}}},removeData:function(a,b){if(c.acceptData(a)){a=a==E?pa:a;var d=a.nodeType,e=d?a[c.expando]:a,f=c.cache,h=d?f[e]:e;if(b){if(h){delete h[b];d&&c.isEmptyObject(h)&&c.removeData(a)}}else if(d&&c.support.deleteExpando)delete a[c.expando];else if(a.removeAttribute)a.removeAttribute(c.expando);else if(d)delete f[e];else for(var k in a)delete a[k]}},acceptData:function(a){if(a.nodeName){var b=
c.noData[a.nodeName.toLowerCase()];if(b)return!(b===true||a.getAttribute("classid")!==b)}return true}});c.fn.extend({data:function(a,b){if(typeof a==="undefined")return this.length?c.data(this[0]):null;else if(typeof a==="object")return this.each(function(){c.data(this,a)});var d=a.split(".");d[1]=d[1]?"."+d[1]:"";if(b===A){var e=this.triggerHandler("getData"+d[1]+"!",[d[0]]);if(e===A&&this.length){e=c.data(this[0],a);if(e===A&&this[0].nodeType===1){e=this[0].getAttribute("data-"+a);if(typeof e===
"string")try{e=e==="true"?true:e==="false"?false:e==="null"?null:!c.isNaN(e)?parseFloat(e):Oa.test(e)?c.parseJSON(e):e}catch(f){}else e=A}}return e===A&&d[1]?this.data(d[0]):e}else return this.each(function(){var h=c(this),k=[d[0],b];h.triggerHandler("setData"+d[1]+"!",k);c.data(this,a,b);h.triggerHandler("changeData"+d[1]+"!",k)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var e=c.data(a,b);if(!d)return e||
[];if(!e||c.isArray(d))e=c.data(a,b,c.makeArray(d));else e.push(d);return e}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),e=d.shift();if(e==="inprogress")e=d.shift();if(e){b==="fx"&&d.unshift("inprogress");e.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===A)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,
a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var qa=/[\n\t]/g,ga=/\s+/,Pa=/\r/g,Qa=/^(?:href|src|style)$/,Ra=/^(?:button|input)$/i,Sa=/^(?:button|input|object|select|textarea)$/i,Ta=/^a(?:rea)?$/i,ra=/^(?:radio|checkbox)$/i;c.fn.extend({attr:function(a,b){return c.access(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,
a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(s){var v=c(this);v.addClass(a.call(this,s,v.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ga),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===1)if(f.className){for(var h=" "+f.className+" ",k=f.className,l=0,n=b.length;l<n;l++)if(h.indexOf(" "+b[l]+" ")<0)k+=" "+b[l];f.className=c.trim(k)}else f.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(n){var s=
c(this);s.removeClass(a.call(this,n,s.attr("class")))});if(a&&typeof a==="string"||a===A)for(var b=(a||"").split(ga),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===1&&f.className)if(a){for(var h=(" "+f.className+" ").replace(qa," "),k=0,l=b.length;k<l;k++)h=h.replace(" "+b[k]+" "," ");f.className=c.trim(h)}else f.className=""}return this},toggleClass:function(a,b){var d=typeof a,e=typeof b==="boolean";if(c.isFunction(a))return this.each(function(f){var h=c(this);h.toggleClass(a.call(this,
f,h.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var f,h=0,k=c(this),l=b,n=a.split(ga);f=n[h++];){l=e?l:!k.hasClass(f);k[l?"addClass":"removeClass"](f)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,"__className__",this.className);this.className=this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(qa," ").indexOf(a)>-1)return true;return false},
val:function(a){if(!arguments.length){var b=this[0];if(b){if(c.nodeName(b,"option")){var d=b.attributes.value;return!d||d.specified?b.value:b.text}if(c.nodeName(b,"select")){var e=b.selectedIndex;d=[];var f=b.options;b=b.type==="select-one";if(e<0)return null;var h=b?e:0;for(e=b?e+1:f.length;h<e;h++){var k=f[h];if(k.selected&&(c.support.optDisabled?!k.disabled:k.getAttribute("disabled")===null)&&(!k.parentNode.disabled||!c.nodeName(k.parentNode,"optgroup"))){a=c(k).val();if(b)return a;d.push(a)}}return d}if(ra.test(b.type)&&
!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Pa,"")}return A}var l=c.isFunction(a);return this.each(function(n){var s=c(this),v=a;if(this.nodeType===1){if(l)v=a.call(this,n,s.val());if(v==null)v="";else if(typeof v==="number")v+="";else if(c.isArray(v))v=c.map(v,function(D){return D==null?"":D+""});if(c.isArray(v)&&ra.test(this.type))this.checked=c.inArray(s.val(),v)>=0;else if(c.nodeName(this,"select")){var B=c.makeArray(v);c("option",this).each(function(){this.selected=
c.inArray(c(this).val(),B)>=0});if(!B.length)this.selectedIndex=-1}else this.value=v}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(a,b,d,e){if(!a||a.nodeType===3||a.nodeType===8)return A;if(e&&b in c.attrFn)return c(a)[b](d);e=a.nodeType!==1||!c.isXMLDoc(a);var f=d!==A;b=e&&c.props[b]||b;if(a.nodeType===1){var h=Qa.test(b);if((b in a||a[b]!==A)&&e&&!h){if(f){b==="type"&&Ra.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");
if(d===null)a.nodeType===1&&a.removeAttribute(b);else a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&b.specified?b.value:Sa.test(a.nodeName)||Ta.test(a.nodeName)&&a.href?0:A;return a[b]}if(!c.support.style&&e&&b==="style"){if(f)a.style.cssText=""+d;return a.style.cssText}f&&a.setAttribute(b,""+d);if(!a.attributes[b]&&a.hasAttribute&&!a.hasAttribute(b))return A;a=!c.support.hrefNormalized&&e&&
h?a.getAttribute(b,2):a.getAttribute(b);return a===null?A:a}}});var X=/\.(.*)$/,ha=/^(?:textarea|input|select)$/i,Ha=/\./g,Ia=/ /g,Ua=/[^\w\s.|`]/g,Va=function(a){return a.replace(Ua,"\\$&")},sa={focusin:0,focusout:0};c.event={add:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(c.isWindow(a)&&a!==E&&!a.frameElement)a=E;if(d===false)d=U;var f,h;if(d.handler){f=d;d=f.handler}if(!d.guid)d.guid=c.guid++;if(h=c.data(a)){var k=a.nodeType?"events":"__events__",l=h[k],n=h.handle;if(typeof l===
"function"){n=l.handle;l=l.events}else if(!l){a.nodeType||(h[k]=h=function(){});h.events=l={}}if(!n)h.handle=n=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(n.elem,arguments):A};n.elem=a;b=b.split(" ");for(var s=0,v;k=b[s++];){h=f?c.extend({},f):{handler:d,data:e};if(k.indexOf(".")>-1){v=k.split(".");k=v.shift();h.namespace=v.slice(0).sort().join(".")}else{v=[];h.namespace=""}h.type=k;if(!h.guid)h.guid=d.guid;var B=l[k],D=c.event.special[k]||{};if(!B){B=l[k]=[];
if(!D.setup||D.setup.call(a,e,v,n)===false)if(a.addEventListener)a.addEventListener(k,n,false);else a.attachEvent&&a.attachEvent("on"+k,n)}if(D.add){D.add.call(a,h);if(!h.handler.guid)h.handler.guid=d.guid}B.push(h);c.event.global[k]=true}a=null}}},global:{},remove:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(d===false)d=U;var f,h,k=0,l,n,s,v,B,D,H=a.nodeType?"events":"__events__",w=c.data(a),G=w&&w[H];if(w&&G){if(typeof G==="function"){w=G;G=G.events}if(b&&b.type){d=b.handler;b=b.type}if(!b||
typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(f in G)c.event.remove(a,f+b)}else{for(b=b.split(" ");f=b[k++];){v=f;l=f.indexOf(".")<0;n=[];if(!l){n=f.split(".");f=n.shift();s=RegExp("(^|\\.)"+c.map(n.slice(0).sort(),Va).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(B=G[f])if(d){v=c.event.special[f]||{};for(h=e||0;h<B.length;h++){D=B[h];if(d.guid===D.guid){if(l||s.test(D.namespace)){e==null&&B.splice(h--,1);v.remove&&v.remove.call(a,D)}if(e!=null)break}}if(B.length===0||e!=null&&B.length===1){if(!v.teardown||
v.teardown.call(a,n)===false)c.removeEvent(a,f,w.handle);delete G[f]}}else for(h=0;h<B.length;h++){D=B[h];if(l||s.test(D.namespace)){c.event.remove(a,v,D.handler,h);B.splice(h--,1)}}}if(c.isEmptyObject(G)){if(b=w.handle)b.elem=null;delete w.events;delete w.handle;if(typeof w==="function")c.removeData(a,H);else c.isEmptyObject(w)&&c.removeData(a)}}}}},trigger:function(a,b,d,e){var f=a.type||a;if(!e){a=typeof a==="object"?a[c.expando]?a:c.extend(c.Event(f),a):c.Event(f);if(f.indexOf("!")>=0){a.type=
f=f.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[f]&&c.each(c.cache,function(){this.events&&this.events[f]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===8)return A;a.result=A;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(e=d.nodeType?c.data(d,"handle"):(c.data(d,"__events__")||{}).handle)&&e.apply(d,b);e=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+f]&&d["on"+f].apply(d,b)===
false){a.result=false;a.preventDefault()}}catch(h){}if(!a.isPropagationStopped()&&e)c.event.trigger(a,b,e,true);else if(!a.isDefaultPrevented()){e=a.target;var k,l=f.replace(X,""),n=c.nodeName(e,"a")&&l==="click",s=c.event.special[l]||{};if((!s._default||s._default.call(d,a)===false)&&!n&&!(e&&e.nodeName&&c.noData[e.nodeName.toLowerCase()])){try{if(e[l]){if(k=e["on"+l])e["on"+l]=null;c.event.triggered=true;e[l]()}}catch(v){}if(k)e["on"+l]=k;c.event.triggered=false}}},handle:function(a){var b,d,e;
d=[];var f,h=c.makeArray(arguments);a=h[0]=c.event.fix(a||E.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;if(!b){e=a.type.split(".");a.type=e.shift();d=e.slice(0).sort();e=RegExp("(^|\\.)"+d.join("\\.(?:.*\\.)?")+"(\\.|$)")}a.namespace=a.namespace||d.join(".");f=c.data(this,this.nodeType?"events":"__events__");if(typeof f==="function")f=f.events;d=(f||{})[a.type];if(f&&d){d=d.slice(0);f=0;for(var k=d.length;f<k;f++){var l=d[f];if(b||e.test(l.namespace)){a.handler=l.handler;a.data=
l.data;a.handleObj=l;l=l.handler.apply(this,h);if(l!==A){a.result=l;if(l===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
fix:function(a){if(a[c.expando])return a;var b=a;a=c.Event(b);for(var d=this.props.length,e;d;){e=this.props[--d];a[e]=b[e]}if(!a.target)a.target=a.srcElement||u;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=u.documentElement;d=u.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop||
d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(a.which==null&&(a.charCode!=null||a.keyCode!=null))a.which=a.charCode!=null?a.charCode:a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==A)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,Y(a.origType,a.selector),c.extend({},a,{handler:Ga,guid:a.handler.guid}))},remove:function(a){c.event.remove(this,
Y(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,d){if(c.isWindow(this))this.onbeforeunload=d},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};c.removeEvent=u.removeEventListener?function(a,b,d){a.removeEventListener&&a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent&&a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=a;this.type=a.type}else this.type=a;this.timeStamp=
c.now();this[c.expando]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=ba;var a=this.originalEvent;if(a)if(a.preventDefault)a.preventDefault();else a.returnValue=false},stopPropagation:function(){this.isPropagationStopped=ba;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=ba;this.stopPropagation()},isDefaultPrevented:U,isPropagationStopped:U,isImmediatePropagationStopped:U};
var ta=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},ua=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?ua:ta,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?ua:ta)}}});if(!c.support.submitBubbles)c.event.special.submit={setup:function(){if(this.nodeName.toLowerCase()!==
"form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length){a.liveFired=A;return ja("submit",this,arguments)}});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13){a.liveFired=A;return ja("submit",this,arguments)}})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};if(!c.support.changeBubbles){var V,
va=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(e){return e.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},Z=function(a,b){var d=a.target,e,f;if(!(!ha.test(d.nodeName)||d.readOnly)){e=c.data(d,"_change_data");f=va(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",f);if(!(e===A||f===e))if(e!=null||f){a.type="change";a.liveFired=
A;return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:Z,beforedeactivate:Z,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return Z.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return Z.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,"_change_data",va(a))}},setup:function(){if(this.type===
"file")return false;for(var a in V)c.event.add(this,a+".specialChange",V[a]);return ha.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return ha.test(this.nodeName)}};V=c.event.special.change.filters;V.focus=V.beforeactivate}u.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(e){e=c.event.fix(e);e.type=b;return c.event.trigger(e,null,e.target)}c.event.special[b]={setup:function(){sa[b]++===0&&u.addEventListener(a,d,true)},teardown:function(){--sa[b]===
0&&u.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,e,f){if(typeof d==="object"){for(var h in d)this[b](h,e,d[h],f);return this}if(c.isFunction(e)||e===false){f=e;e=A}var k=b==="one"?c.proxy(f,function(n){c(this).unbind(n,k);return f.apply(this,arguments)}):f;if(d==="unload"&&b!=="one")this.one(d,e,f);else{h=0;for(var l=this.length;h<l;h++)c.event.add(this[h],d,k,e)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&!a.preventDefault)for(var d in a)this.unbind(d,
a[d]);else{d=0;for(var e=this.length;d<e;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,e){return this.live(b,d,e,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){var d=c.Event(a);d.preventDefault();d.stopPropagation();c.event.trigger(d,b,this[0]);return d.result}},toggle:function(a){for(var b=arguments,d=
1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(e){var f=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,f+1);e.preventDefault();return b[f].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var wa={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,e,f,h){var k,l=0,n,s,v=h||this.selector;h=h?this:c(this.context);if(typeof d===
"object"&&!d.preventDefault){for(k in d)h[b](k,e,d[k],v);return this}if(c.isFunction(e)){f=e;e=A}for(d=(d||"").split(" ");(k=d[l++])!=null;){n=X.exec(k);s="";if(n){s=n[0];k=k.replace(X,"")}if(k==="hover")d.push("mouseenter"+s,"mouseleave"+s);else{n=k;if(k==="focus"||k==="blur"){d.push(wa[k]+s);k+=s}else k=(wa[k]||k)+s;if(b==="live"){s=0;for(var B=h.length;s<B;s++)c.event.add(h[s],"live."+Y(k,v),{data:e,selector:v,handler:f,origType:k,origHandler:f,preType:n})}else h.unbind("live."+Y(k,v),f)}}return this}});
c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){c.fn[b]=function(d,e){if(e==null){e=d;d=null}return arguments.length>0?this.bind(b,d,e):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});E.attachEvent&&!E.addEventListener&&c(E).bind("unload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});
(function(){function a(g,j,o,m,p,q){p=0;for(var t=m.length;p<t;p++){var x=m[p];if(x){x=x[g];for(var C=false;x;){if(x.sizcache===o){C=m[x.sizset];break}if(x.nodeType===1&&!q){x.sizcache=o;x.sizset=p}if(x.nodeName.toLowerCase()===j){C=x;break}x=x[g]}m[p]=C}}}function b(g,j,o,m,p,q){p=0;for(var t=m.length;p<t;p++){var x=m[p];if(x){x=x[g];for(var C=false;x;){if(x.sizcache===o){C=m[x.sizset];break}if(x.nodeType===1){if(!q){x.sizcache=o;x.sizset=p}if(typeof j!=="string"){if(x===j){C=true;break}}else if(l.filter(j,
[x]).length>0){C=x;break}}x=x[g]}m[p]=C}}}var d=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e=0,f=Object.prototype.toString,h=false,k=true;[0,0].sort(function(){k=false;return 0});var l=function(g,j,o,m){o=o||[];var p=j=j||u;if(j.nodeType!==1&&j.nodeType!==9)return[];if(!g||typeof g!=="string")return o;var q=[],t,x,C,P,N=true,R=l.isXML(j),Q=g,L;do{d.exec("");if(t=d.exec(Q)){Q=t[3];q.push(t[1]);if(t[2]){P=t[3];
break}}}while(t);if(q.length>1&&s.exec(g))if(q.length===2&&n.relative[q[0]])x=M(q[0]+q[1],j);else for(x=n.relative[q[0]]?[j]:l(q.shift(),j);q.length;){g=q.shift();if(n.relative[g])g+=q.shift();x=M(g,x)}else{if(!m&&q.length>1&&j.nodeType===9&&!R&&n.match.ID.test(q[0])&&!n.match.ID.test(q[q.length-1])){t=l.find(q.shift(),j,R);j=t.expr?l.filter(t.expr,t.set)[0]:t.set[0]}if(j){t=m?{expr:q.pop(),set:D(m)}:l.find(q.pop(),q.length===1&&(q[0]==="~"||q[0]==="+")&&j.parentNode?j.parentNode:j,R);x=t.expr?l.filter(t.expr,
t.set):t.set;if(q.length>0)C=D(x);else N=false;for(;q.length;){t=L=q.pop();if(n.relative[L])t=q.pop();else L="";if(t==null)t=j;n.relative[L](C,t,R)}}else C=[]}C||(C=x);C||l.error(L||g);if(f.call(C)==="[object Array]")if(N)if(j&&j.nodeType===1)for(g=0;C[g]!=null;g++){if(C[g]&&(C[g]===true||C[g].nodeType===1&&l.contains(j,C[g])))o.push(x[g])}else for(g=0;C[g]!=null;g++)C[g]&&C[g].nodeType===1&&o.push(x[g]);else o.push.apply(o,C);else D(C,o);if(P){l(P,p,o,m);l.uniqueSort(o)}return o};l.uniqueSort=function(g){if(w){h=
k;g.sort(w);if(h)for(var j=1;j<g.length;j++)g[j]===g[j-1]&&g.splice(j--,1)}return g};l.matches=function(g,j){return l(g,null,null,j)};l.matchesSelector=function(g,j){return l(j,null,null,[g]).length>0};l.find=function(g,j,o){var m;if(!g)return[];for(var p=0,q=n.order.length;p<q;p++){var t=n.order[p],x;if(x=n.leftMatch[t].exec(g)){var C=x[1];x.splice(1,1);if(C.substr(C.length-1)!=="\\"){x[1]=(x[1]||"").replace(/\\/g,"");m=n.find[t](x,j,o);if(m!=null){g=g.replace(n.match[t],"");break}}}}m||(m=j.getElementsByTagName("*"));
return{set:m,expr:g}};l.filter=function(g,j,o,m){for(var p=g,q=[],t=j,x,C,P=j&&j[0]&&l.isXML(j[0]);g&&j.length;){for(var N in n.filter)if((x=n.leftMatch[N].exec(g))!=null&&x[2]){var R=n.filter[N],Q,L;L=x[1];C=false;x.splice(1,1);if(L.substr(L.length-1)!=="\\"){if(t===q)q=[];if(n.preFilter[N])if(x=n.preFilter[N](x,t,o,q,m,P)){if(x===true)continue}else C=Q=true;if(x)for(var i=0;(L=t[i])!=null;i++)if(L){Q=R(L,x,i,t);var r=m^!!Q;if(o&&Q!=null)if(r)C=true;else t[i]=false;else if(r){q.push(L);C=true}}if(Q!==
A){o||(t=q);g=g.replace(n.match[N],"");if(!C)return[];break}}}if(g===p)if(C==null)l.error(g);else break;p=g}return t};l.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var n=l.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+\-]*)\))?/,
POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}},relative:{"+":function(g,j){var o=typeof j==="string",m=o&&!/\W/.test(j);o=o&&!m;if(m)j=j.toLowerCase();m=0;for(var p=g.length,q;m<p;m++)if(q=g[m]){for(;(q=q.previousSibling)&&q.nodeType!==1;);g[m]=o||q&&q.nodeName.toLowerCase()===
j?q||false:q===j}o&&l.filter(j,g,true)},">":function(g,j){var o=typeof j==="string",m,p=0,q=g.length;if(o&&!/\W/.test(j))for(j=j.toLowerCase();p<q;p++){if(m=g[p]){o=m.parentNode;g[p]=o.nodeName.toLowerCase()===j?o:false}}else{for(;p<q;p++)if(m=g[p])g[p]=o?m.parentNode:m.parentNode===j;o&&l.filter(j,g,true)}},"":function(g,j,o){var m=e++,p=b,q;if(typeof j==="string"&&!/\W/.test(j)){q=j=j.toLowerCase();p=a}p("parentNode",j,m,g,q,o)},"~":function(g,j,o){var m=e++,p=b,q;if(typeof j==="string"&&!/\W/.test(j)){q=
j=j.toLowerCase();p=a}p("previousSibling",j,m,g,q,o)}},find:{ID:function(g,j,o){if(typeof j.getElementById!=="undefined"&&!o)return(g=j.getElementById(g[1]))&&g.parentNode?[g]:[]},NAME:function(g,j){if(typeof j.getElementsByName!=="undefined"){for(var o=[],m=j.getElementsByName(g[1]),p=0,q=m.length;p<q;p++)m[p].getAttribute("name")===g[1]&&o.push(m[p]);return o.length===0?null:o}},TAG:function(g,j){return j.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,j,o,m,p,q){g=" "+g[1].replace(/\\/g,
"")+" ";if(q)return g;q=0;for(var t;(t=j[q])!=null;q++)if(t)if(p^(t.className&&(" "+t.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))o||m.push(t);else if(o)j[q]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},CHILD:function(g){if(g[1]==="nth"){var j=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=j[1]+(j[2]||1)-0;g[3]=j[3]-0}g[0]=e++;return g},ATTR:function(g,j,o,
m,p,q){j=g[1].replace(/\\/g,"");if(!q&&n.attrMap[j])g[1]=n.attrMap[j];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,j,o,m,p){if(g[1]==="not")if((d.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=l(g[3],null,null,j);else{g=l.filter(g[3],j,o,true^p);o||m.push.apply(m,g);return false}else if(n.match.POS.test(g[0])||n.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===
true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,j,o){return!!l(o[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===
g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},setFilters:{first:function(g,j){return j===0},last:function(g,j,o,m){return j===m.length-1},even:function(g,j){return j%2===0},odd:function(g,j){return j%2===1},lt:function(g,j,o){return j<o[3]-0},gt:function(g,j,o){return j>o[3]-0},nth:function(g,j,o){return o[3]-
0===j},eq:function(g,j,o){return o[3]-0===j}},filter:{PSEUDO:function(g,j,o,m){var p=j[1],q=n.filters[p];if(q)return q(g,o,j,m);else if(p==="contains")return(g.textContent||g.innerText||l.getText([g])||"").indexOf(j[3])>=0;else if(p==="not"){j=j[3];o=0;for(m=j.length;o<m;o++)if(j[o]===g)return false;return true}else l.error("Syntax error, unrecognized expression: "+p)},CHILD:function(g,j){var o=j[1],m=g;switch(o){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(o===
"first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":o=j[2];var p=j[3];if(o===1&&p===0)return true;var q=j[0],t=g.parentNode;if(t&&(t.sizcache!==q||!g.nodeIndex)){var x=0;for(m=t.firstChild;m;m=m.nextSibling)if(m.nodeType===1)m.nodeIndex=++x;t.sizcache=q}m=g.nodeIndex-p;return o===0?m===0:m%o===0&&m/o>=0}},ID:function(g,j){return g.nodeType===1&&g.getAttribute("id")===j},TAG:function(g,j){return j==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===
j},CLASS:function(g,j){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(j)>-1},ATTR:function(g,j){var o=j[1];o=n.attrHandle[o]?n.attrHandle[o](g):g[o]!=null?g[o]:g.getAttribute(o);var m=o+"",p=j[2],q=j[4];return o==null?p==="!=":p==="="?m===q:p==="*="?m.indexOf(q)>=0:p==="~="?(" "+m+" ").indexOf(q)>=0:!q?m&&o!==false:p==="!="?m!==q:p==="^="?m.indexOf(q)===0:p==="$="?m.substr(m.length-q.length)===q:p==="|="?m===q||m.substr(0,q.length+1)===q+"-":false},POS:function(g,j,o,m){var p=n.setFilters[j[2]];
if(p)return p(g,o,j,m)}}},s=n.match.POS,v=function(g,j){return"\\"+(j-0+1)},B;for(B in n.match){n.match[B]=RegExp(n.match[B].source+/(?![^\[]*\])(?![^\(]*\))/.source);n.leftMatch[B]=RegExp(/(^(?:.|\r|\n)*?)/.source+n.match[B].source.replace(/\\(\d+)/g,v))}var D=function(g,j){g=Array.prototype.slice.call(g,0);if(j){j.push.apply(j,g);return j}return g};try{Array.prototype.slice.call(u.documentElement.childNodes,0)}catch(H){D=function(g,j){var o=j||[],m=0;if(f.call(g)==="[object Array]")Array.prototype.push.apply(o,
g);else if(typeof g.length==="number")for(var p=g.length;m<p;m++)o.push(g[m]);else for(;g[m];m++)o.push(g[m]);return o}}var w,G;if(u.documentElement.compareDocumentPosition)w=function(g,j){if(g===j){h=true;return 0}if(!g.compareDocumentPosition||!j.compareDocumentPosition)return g.compareDocumentPosition?-1:1;return g.compareDocumentPosition(j)&4?-1:1};else{w=function(g,j){var o=[],m=[],p=g.parentNode,q=j.parentNode,t=p;if(g===j){h=true;return 0}else if(p===q)return G(g,j);else if(p){if(!q)return 1}else return-1;
for(;t;){o.unshift(t);t=t.parentNode}for(t=q;t;){m.unshift(t);t=t.parentNode}p=o.length;q=m.length;for(t=0;t<p&&t<q;t++)if(o[t]!==m[t])return G(o[t],m[t]);return t===p?G(g,m[t],-1):G(o[t],j,1)};G=function(g,j,o){if(g===j)return o;for(g=g.nextSibling;g;){if(g===j)return-1;g=g.nextSibling}return 1}}l.getText=function(g){for(var j="",o,m=0;g[m];m++){o=g[m];if(o.nodeType===3||o.nodeType===4)j+=o.nodeValue;else if(o.nodeType!==8)j+=l.getText(o.childNodes)}return j};(function(){var g=u.createElement("div"),
j="script"+(new Date).getTime();g.innerHTML="<a name='"+j+"'/>";var o=u.documentElement;o.insertBefore(g,o.firstChild);if(u.getElementById(j)){n.find.ID=function(m,p,q){if(typeof p.getElementById!=="undefined"&&!q)return(p=p.getElementById(m[1]))?p.id===m[1]||typeof p.getAttributeNode!=="undefined"&&p.getAttributeNode("id").nodeValue===m[1]?[p]:A:[]};n.filter.ID=function(m,p){var q=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&q&&q.nodeValue===p}}o.removeChild(g);
o=g=null})();(function(){var g=u.createElement("div");g.appendChild(u.createComment(""));if(g.getElementsByTagName("*").length>0)n.find.TAG=function(j,o){var m=o.getElementsByTagName(j[1]);if(j[1]==="*"){for(var p=[],q=0;m[q];q++)m[q].nodeType===1&&p.push(m[q]);m=p}return m};g.innerHTML="<a href='#'></a>";if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")n.attrHandle.href=function(j){return j.getAttribute("href",2)};g=null})();u.querySelectorAll&&
function(){var g=l,j=u.createElement("div");j.innerHTML="<p class='TEST'></p>";if(!(j.querySelectorAll&&j.querySelectorAll(".TEST").length===0)){l=function(m,p,q,t){p=p||u;if(!t&&!l.isXML(p))if(p.nodeType===9)try{return D(p.querySelectorAll(m),q)}catch(x){}else if(p.nodeType===1&&p.nodeName.toLowerCase()!=="object"){var C=p.id,P=p.id="__sizzle__";try{return D(p.querySelectorAll("#"+P+" "+m),q)}catch(N){}finally{if(C)p.id=C;else p.removeAttribute("id")}}return g(m,p,q,t)};for(var o in g)l[o]=g[o];
j=null}}();(function(){var g=u.documentElement,j=g.matchesSelector||g.mozMatchesSelector||g.webkitMatchesSelector||g.msMatchesSelector,o=false;try{j.call(u.documentElement,":sizzle")}catch(m){o=true}if(j)l.matchesSelector=function(p,q){try{if(o||!n.match.PSEUDO.test(q))return j.call(p,q)}catch(t){}return l(q,null,null,[p]).length>0}})();(function(){var g=u.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===
0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){n.order.splice(1,0,"CLASS");n.find.CLASS=function(j,o,m){if(typeof o.getElementsByClassName!=="undefined"&&!m)return o.getElementsByClassName(j[1])};g=null}}})();l.contains=u.documentElement.contains?function(g,j){return g!==j&&(g.contains?g.contains(j):true)}:function(g,j){return!!(g.compareDocumentPosition(j)&16)};l.isXML=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false};var M=function(g,
j){for(var o=[],m="",p,q=j.nodeType?[j]:j;p=n.match.PSEUDO.exec(g);){m+=p[0];g=g.replace(n.match.PSEUDO,"")}g=n.relative[g]?g+"*":g;p=0;for(var t=q.length;p<t;p++)l(g,q[p],o);return l.filter(m,o)};c.find=l;c.expr=l.selectors;c.expr[":"]=c.expr.filters;c.unique=l.uniqueSort;c.text=l.getText;c.isXMLDoc=l.isXML;c.contains=l.contains})();var Wa=/Until$/,Xa=/^(?:parents|prevUntil|prevAll)/,Ya=/,/,Ja=/^.[^:#\[\.,]*$/,Za=Array.prototype.slice,$a=c.expr.match.POS;c.fn.extend({find:function(a){for(var b=this.pushStack("",
"find",a),d=0,e=0,f=this.length;e<f;e++){d=b.length;c.find(a,this[e],b);if(e>0)for(var h=d;h<b.length;h++)for(var k=0;k<d;k++)if(b[k]===b[h]){b.splice(h--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,e=b.length;d<e;d++)if(c.contains(this,b[d]))return true})},not:function(a){return this.pushStack(ka(this,a,false),"not",a)},filter:function(a){return this.pushStack(ka(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,
b){var d=[],e,f,h=this[0];if(c.isArray(a)){var k={},l,n=1;if(h&&a.length){e=0;for(f=a.length;e<f;e++){l=a[e];k[l]||(k[l]=c.expr.match.POS.test(l)?c(l,b||this.context):l)}for(;h&&h.ownerDocument&&h!==b;){for(l in k){e=k[l];if(e.jquery?e.index(h)>-1:c(h).is(e))d.push({selector:l,elem:h,level:n})}h=h.parentNode;n++}}return d}k=$a.test(a)?c(a,b||this.context):null;e=0;for(f=this.length;e<f;e++)for(h=this[e];h;)if(k?k.index(h)>-1:c.find.matchesSelector(h,a)){d.push(h);break}else{h=h.parentNode;if(!h||
!h.ownerDocument||h===b)break}d=d.length>1?c.unique(d):d;return this.pushStack(d,"closest",a)},index:function(a){if(!a||typeof a==="string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var d=typeof a==="string"?c(a,b||this.context):c.makeArray(a),e=c.merge(this.get(),d);return this.pushStack(!d[0]||!d[0].parentNode||d[0].parentNode.nodeType===11||!e[0]||!e[0].parentNode||e[0].parentNode.nodeType===11?e:c.unique(e))},andSelf:function(){return this.add(this.prevObject)}});
c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",
d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,b){c.fn[a]=function(d,e){var f=c.map(this,b,d);Wa.test(a)||(e=d);if(e&&typeof e==="string")f=c.filter(e,f);f=this.length>1?c.unique(f):f;if((this.length>1||Ya.test(e))&&Xa.test(a))f=f.reverse();return this.pushStack(f,a,Za.call(arguments).join(","))}});
c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return b.length===1?c.find.matchesSelector(b[0],a)?[b[0]]:[]:c.find.matches(a,b)},dir:function(a,b,d){var e=[];for(a=a[b];a&&a.nodeType!==9&&(d===A||a.nodeType!==1||!c(a).is(d));){a.nodeType===1&&e.push(a);a=a[b]}return e},nth:function(a,b,d){b=b||1;for(var e=0;a;a=a[d])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var xa=/ jQuery\d+="(?:\d+|null)"/g,
$=/^\s+/,ya=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,za=/<([\w:]+)/,ab=/<tbody/i,bb=/<|&#?\w+;/,Aa=/<(?:script|object|embed|option|style)/i,Ba=/checked\s*(?:[^=]|=\s*.checked.)/i,cb=/\=([^="'>\s]+\/)>/g,O={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],
area:[1,"<map>","</map>"],_default:[0,"",""]};O.optgroup=O.option;O.tbody=O.tfoot=O.colgroup=O.caption=O.thead;O.th=O.td;if(!c.support.htmlSerialize)O._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==A)return this.empty().append((this[0]&&this[0].ownerDocument||u).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,
d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},
unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=
c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,e;(e=this[d])!=null;d++)if(!a||c.filter(a,[e]).length){if(!b&&e.nodeType===1){c.cleanData(e.getElementsByTagName("*"));
c.cleanData([e])}e.parentNode&&e.parentNode.removeChild(e)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,e=this.ownerDocument;if(!d){d=e.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(xa,"").replace(cb,'="$1">').replace($,
"")],e)[0]}else return this.cloneNode(true)});if(a===true){la(this,b);la(this.find("*"),b.find("*"))}return b},html:function(a){if(a===A)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(xa,""):null;else if(typeof a==="string"&&!Aa.test(a)&&(c.support.leadingWhitespace||!$.test(a))&&!O[(za.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(ya,"<$1></$2>");try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(e){this.empty().append(a)}}else c.isFunction(a)?
this.each(function(f){var h=c(this);h.html(a.call(this,f,h.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=c(this),e=d.html();d.replaceWith(a.call(this,b,e))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,
true)},domManip:function(a,b,d){var e,f,h=a[0],k=[],l;if(!c.support.checkClone&&arguments.length===3&&typeof h==="string"&&Ba.test(h))return this.each(function(){c(this).domManip(a,b,d,true)});if(c.isFunction(h))return this.each(function(s){var v=c(this);a[0]=h.call(this,s,b?v.html():A);v.domManip(a,b,d)});if(this[0]){e=h&&h.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:c.buildFragment(a,this,k);l=e.fragment;if(f=l.childNodes.length===1?l=l.firstChild:
l.firstChild){b=b&&c.nodeName(f,"tr");f=0;for(var n=this.length;f<n;f++)d.call(b?c.nodeName(this[f],"table")?this[f].getElementsByTagName("tbody")[0]||this[f].appendChild(this[f].ownerDocument.createElement("tbody")):this[f]:this[f],f>0||e.cacheable||this.length>1?l.cloneNode(true):l)}k.length&&c.each(k,Ka)}return this}});c.buildFragment=function(a,b,d){var e,f,h;b=b&&b[0]?b[0].ownerDocument||b[0]:u;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===u&&!Aa.test(a[0])&&(c.support.checkClone||
!Ba.test(a[0]))){f=true;if(h=c.fragments[a[0]])if(h!==1)e=h}if(!e){e=b.createDocumentFragment();c.clean(a,b,e,d)}if(f)c.fragments[a[0]]=h?e:1;return{fragment:e,cacheable:f}};c.fragments={};c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var e=[];d=c(d);var f=this.length===1&&this[0].parentNode;if(f&&f.nodeType===11&&f.childNodes.length===1&&d.length===1){d[b](this[0]);return this}else{f=0;for(var h=
d.length;f<h;f++){var k=(f>0?this.clone(true):this).get();c(d[f])[b](k);e=e.concat(k)}return this.pushStack(e,a,d.selector)}}});c.extend({clean:function(a,b,d,e){b=b||u;if(typeof b.createElement==="undefined")b=b.ownerDocument||b[0]&&b[0].ownerDocument||u;for(var f=[],h=0,k;(k=a[h])!=null;h++){if(typeof k==="number")k+="";if(k){if(typeof k==="string"&&!bb.test(k))k=b.createTextNode(k);else if(typeof k==="string"){k=k.replace(ya,"<$1></$2>");var l=(za.exec(k)||["",""])[1].toLowerCase(),n=O[l]||O._default,
s=n[0],v=b.createElement("div");for(v.innerHTML=n[1]+k+n[2];s--;)v=v.lastChild;if(!c.support.tbody){s=ab.test(k);l=l==="table"&&!s?v.firstChild&&v.firstChild.childNodes:n[1]==="<table>"&&!s?v.childNodes:[];for(n=l.length-1;n>=0;--n)c.nodeName(l[n],"tbody")&&!l[n].childNodes.length&&l[n].parentNode.removeChild(l[n])}!c.support.leadingWhitespace&&$.test(k)&&v.insertBefore(b.createTextNode($.exec(k)[0]),v.firstChild);k=v.childNodes}if(k.nodeType)f.push(k);else f=c.merge(f,k)}}if(d)for(h=0;f[h];h++)if(e&&
c.nodeName(f[h],"script")&&(!f[h].type||f[h].type.toLowerCase()==="text/javascript"))e.push(f[h].parentNode?f[h].parentNode.removeChild(f[h]):f[h]);else{f[h].nodeType===1&&f.splice.apply(f,[h+1,0].concat(c.makeArray(f[h].getElementsByTagName("script"))));d.appendChild(f[h])}return f},cleanData:function(a){for(var b,d,e=c.cache,f=c.event.special,h=c.support.deleteExpando,k=0,l;(l=a[k])!=null;k++)if(!(l.nodeName&&c.noData[l.nodeName.toLowerCase()]))if(d=l[c.expando]){if((b=e[d])&&b.events)for(var n in b.events)f[n]?
c.event.remove(l,n):c.removeEvent(l,n,b.handle);if(h)delete l[c.expando];else l.removeAttribute&&l.removeAttribute(c.expando);delete e[d]}}});var Ca=/alpha\([^)]*\)/i,db=/opacity=([^)]*)/,eb=/-([a-z])/ig,fb=/([A-Z])/g,Da=/^-?\d+(?:px)?$/i,gb=/^-?\d/,hb={position:"absolute",visibility:"hidden",display:"block"},La=["Left","Right"],Ma=["Top","Bottom"],W,ib=u.defaultView&&u.defaultView.getComputedStyle,jb=function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){if(arguments.length===2&&b===A)return this;
return c.access(this,a,b,true,function(d,e,f){return f!==A?c.style(d,e,f):c.css(d,e)})};c.extend({cssHooks:{opacity:{get:function(a,b){if(b){var d=W(a,"opacity","opacity");return d===""?"1":d}else return a.style.opacity}}},cssNumber:{zIndex:true,fontWeight:true,opacity:true,zoom:true,lineHeight:true},cssProps:{"float":c.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,d,e){if(!(!a||a.nodeType===3||a.nodeType===8||!a.style)){var f,h=c.camelCase(b),k=a.style,l=c.cssHooks[h];b=c.cssProps[h]||
h;if(d!==A){if(!(typeof d==="number"&&isNaN(d)||d==null)){if(typeof d==="number"&&!c.cssNumber[h])d+="px";if(!l||!("set"in l)||(d=l.set(a,d))!==A)try{k[b]=d}catch(n){}}}else{if(l&&"get"in l&&(f=l.get(a,false,e))!==A)return f;return k[b]}}},css:function(a,b,d){var e,f=c.camelCase(b),h=c.cssHooks[f];b=c.cssProps[f]||f;if(h&&"get"in h&&(e=h.get(a,true,d))!==A)return e;else if(W)return W(a,b,f)},swap:function(a,b,d){var e={},f;for(f in b){e[f]=a.style[f];a.style[f]=b[f]}d.call(a);for(f in b)a.style[f]=
e[f]},camelCase:function(a){return a.replace(eb,jb)}});c.curCSS=c.css;c.each(["height","width"],function(a,b){c.cssHooks[b]={get:function(d,e,f){var h;if(e){if(d.offsetWidth!==0)h=ma(d,b,f);else c.swap(d,hb,function(){h=ma(d,b,f)});return h+"px"}},set:function(d,e){if(Da.test(e)){e=parseFloat(e);if(e>=0)return e+"px"}else return e}}});if(!c.support.opacity)c.cssHooks.opacity={get:function(a,b){return db.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":
b?"1":""},set:function(a,b){var d=a.style;d.zoom=1;var e=c.isNaN(b)?"":"alpha(opacity="+b*100+")",f=d.filter||"";d.filter=Ca.test(f)?f.replace(Ca,e):d.filter+" "+e}};if(ib)W=function(a,b,d){var e;d=d.replace(fb,"-$1").toLowerCase();if(!(b=a.ownerDocument.defaultView))return A;if(b=b.getComputedStyle(a,null)){e=b.getPropertyValue(d);if(e===""&&!c.contains(a.ownerDocument.documentElement,a))e=c.style(a,d)}return e};else if(u.documentElement.currentStyle)W=function(a,b){var d,e,f=a.currentStyle&&a.currentStyle[b],
h=a.style;if(!Da.test(f)&&gb.test(f)){d=h.left;e=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;h.left=b==="fontSize"?"1em":f||0;f=h.pixelLeft+"px";h.left=d;a.runtimeStyle.left=e}return f};if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=a.offsetHeight;return a.offsetWidth===0&&b===0||!c.support.reliableHiddenOffsets&&(a.style.display||c.css(a,"display"))==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var kb=c.now(),lb=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
mb=/^(?:select|textarea)/i,nb=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,ob=/^(?:GET|HEAD|DELETE)$/,Na=/\[\]$/,T=/\=\?(&|$)/,ia=/\?/,pb=/([?&])_=[^&]*/,qb=/^(\w+:)?\/\/([^\/?#]+)/,rb=/%20/g,sb=/#.*$/,Ea=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!=="string"&&Ea)return Ea.apply(this,arguments);else if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var f=a.slice(e,a.length);a=a.slice(0,e)}e="GET";if(b)if(c.isFunction(b)){d=
b;b=null}else if(typeof b==="object"){b=c.param(b,c.ajaxSettings.traditional);e="POST"}var h=this;c.ajax({url:a,type:e,dataType:"html",data:b,complete:function(k,l){if(l==="success"||l==="notmodified")h.html(f?c("<div>").append(k.responseText.replace(lb,"")).find(f):k.responseText);d&&h.each(d,[k.responseText,l,k])}});return this},serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&
!this.disabled&&(this.checked||mb.test(this.nodeName)||nb.test(this.type))}).map(function(a,b){var d=c(this).val();return d==null?null:c.isArray(d)?c.map(d,function(e){return{name:b.name,value:e}}):{name:b.name,value:d}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:e})},
getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:e})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return new E.XMLHttpRequest},accepts:{xml:"application/xml, text/xml",html:"text/html",
script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},ajax:function(a){var b=c.extend(true,{},c.ajaxSettings,a),d,e,f,h=b.type.toUpperCase(),k=ob.test(h);b.url=b.url.replace(sb,"");b.context=a&&a.context!=null?a.context:b;if(b.data&&b.processData&&typeof b.data!=="string")b.data=c.param(b.data,b.traditional);if(b.dataType==="jsonp"){if(h==="GET")T.test(b.url)||(b.url+=(ia.test(b.url)?"&":"?")+(b.jsonp||"callback")+"=?");else if(!b.data||
!T.test(b.data))b.data=(b.data?b.data+"&":"")+(b.jsonp||"callback")+"=?";b.dataType="json"}if(b.dataType==="json"&&(b.data&&T.test(b.data)||T.test(b.url))){d=b.jsonpCallback||"jsonp"+kb++;if(b.data)b.data=(b.data+"").replace(T,"="+d+"$1");b.url=b.url.replace(T,"="+d+"$1");b.dataType="script";var l=E[d];E[d]=function(m){f=m;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);if(c.isFunction(l))l(m);else{E[d]=A;try{delete E[d]}catch(p){}}v&&v.removeChild(B)}}if(b.dataType==="script"&&b.cache===null)b.cache=
false;if(b.cache===false&&h==="GET"){var n=c.now(),s=b.url.replace(pb,"$1_="+n);b.url=s+(s===b.url?(ia.test(b.url)?"&":"?")+"_="+n:"")}if(b.data&&h==="GET")b.url+=(ia.test(b.url)?"&":"?")+b.data;b.global&&c.active++===0&&c.event.trigger("ajaxStart");n=(n=qb.exec(b.url))&&(n[1]&&n[1]!==location.protocol||n[2]!==location.host);if(b.dataType==="script"&&h==="GET"&&n){var v=u.getElementsByTagName("head")[0]||u.documentElement,B=u.createElement("script");if(b.scriptCharset)B.charset=b.scriptCharset;B.src=
b.url;if(!d){var D=false;B.onload=B.onreadystatechange=function(){if(!D&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){D=true;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);B.onload=B.onreadystatechange=null;v&&B.parentNode&&v.removeChild(B)}}}v.insertBefore(B,v.firstChild);return A}var H=false,w=b.xhr();if(w){b.username?w.open(h,b.url,b.async,b.username,b.password):w.open(h,b.url,b.async);try{if(b.data!=null&&!k||a&&a.contentType)w.setRequestHeader("Content-Type",
b.contentType);if(b.ifModified){c.lastModified[b.url]&&w.setRequestHeader("If-Modified-Since",c.lastModified[b.url]);c.etag[b.url]&&w.setRequestHeader("If-None-Match",c.etag[b.url])}n||w.setRequestHeader("X-Requested-With","XMLHttpRequest");w.setRequestHeader("Accept",b.dataType&&b.accepts[b.dataType]?b.accepts[b.dataType]+", */*; q=0.01":b.accepts._default)}catch(G){}if(b.beforeSend&&b.beforeSend.call(b.context,w,b)===false){b.global&&c.active--===1&&c.event.trigger("ajaxStop");w.abort();return false}b.global&&
c.triggerGlobal(b,"ajaxSend",[w,b]);var M=w.onreadystatechange=function(m){if(!w||w.readyState===0||m==="abort"){H||c.handleComplete(b,w,e,f);H=true;if(w)w.onreadystatechange=c.noop}else if(!H&&w&&(w.readyState===4||m==="timeout")){H=true;w.onreadystatechange=c.noop;e=m==="timeout"?"timeout":!c.httpSuccess(w)?"error":b.ifModified&&c.httpNotModified(w,b.url)?"notmodified":"success";var p;if(e==="success")try{f=c.httpData(w,b.dataType,b)}catch(q){e="parsererror";p=q}if(e==="success"||e==="notmodified")d||
c.handleSuccess(b,w,e,f);else c.handleError(b,w,e,p);d||c.handleComplete(b,w,e,f);m==="timeout"&&w.abort();if(b.async)w=null}};try{var g=w.abort;w.abort=function(){w&&g.call&&g.call(w);M("abort")}}catch(j){}b.async&&b.timeout>0&&setTimeout(function(){w&&!H&&M("timeout")},b.timeout);try{w.send(k||b.data==null?null:b.data)}catch(o){c.handleError(b,w,null,o);c.handleComplete(b,w,e,f)}b.async||M();return w}},param:function(a,b){var d=[],e=function(h,k){k=c.isFunction(k)?k():k;d[d.length]=encodeURIComponent(h)+
"="+encodeURIComponent(k)};if(b===A)b=c.ajaxSettings.traditional;if(c.isArray(a)||a.jquery)c.each(a,function(){e(this.name,this.value)});else for(var f in a)ca(f,a[f],b,e);return d.join("&").replace(rb,"+")}});c.extend({active:0,lastModified:{},etag:{},handleError:function(a,b,d,e){a.error&&a.error.call(a.context,b,d,e);a.global&&c.triggerGlobal(a,"ajaxError",[b,a,e])},handleSuccess:function(a,b,d,e){a.success&&a.success.call(a.context,e,d,b);a.global&&c.triggerGlobal(a,"ajaxSuccess",[b,a])},handleComplete:function(a,
b,d){a.complete&&a.complete.call(a.context,b,d);a.global&&c.triggerGlobal(a,"ajaxComplete",[b,a]);a.global&&c.active--===1&&c.event.trigger("ajaxStop")},triggerGlobal:function(a,b,d){(a.context&&a.context.url==null?c(a.context):c.event).trigger(b,d)},httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===1223}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),e=a.getResponseHeader("Etag");
if(d)c.lastModified[b]=d;if(e)c.etag[b]=e;return a.status===304},httpData:function(a,b,d){var e=a.getResponseHeader("content-type")||"",f=b==="xml"||!b&&e.indexOf("xml")>=0;a=f?a.responseXML:a.responseText;f&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b==="json"||!b&&e.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&e.indexOf("javascript")>=0)c.globalEval(a);return a}});if(E.ActiveXObject)c.ajaxSettings.xhr=
function(){if(E.location.protocol!=="file:")try{return new E.XMLHttpRequest}catch(a){}try{return new E.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}};c.support.ajax=!!c.ajaxSettings.xhr();var da={},tb=/^(?:toggle|show|hide)$/,ub=/^([+\-]=)?([\d+.\-]+)(.*)$/,aa,na=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b,d){if(a||a===0)return this.animate(S("show",3),a,b,d);else{a=
0;for(b=this.length;a<b;a++){if(!c.data(this[a],"olddisplay")&&this[a].style.display==="none")this[a].style.display="";this[a].style.display===""&&c.css(this[a],"display")==="none"&&c.data(this[a],"olddisplay",oa(this[a].nodeName))}for(a=0;a<b;a++)this[a].style.display=c.data(this[a],"olddisplay")||"";return this}},hide:function(a,b,d){if(a||a===0)return this.animate(S("hide",3),a,b,d);else{a=0;for(b=this.length;a<b;a++){d=c.css(this[a],"display");d!=="none"&&c.data(this[a],"olddisplay",d)}for(a=
0;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b,d){var e=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||e?this.each(function(){var f=e?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(S("toggle",3),a,b,d);return this},fadeTo:function(a,b,d,e){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d,e)},animate:function(a,b,d,e){var f=c.speed(b,d,e);if(c.isEmptyObject(a))return this.each(f.complete);
return this[f.queue===false?"each":"queue"](function(){var h=c.extend({},f),k,l=this.nodeType===1,n=l&&c(this).is(":hidden"),s=this;for(k in a){var v=c.camelCase(k);if(k!==v){a[v]=a[k];delete a[k];k=v}if(a[k]==="hide"&&n||a[k]==="show"&&!n)return h.complete.call(this);if(l&&(k==="height"||k==="width")){h.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(c.css(this,"display")==="inline"&&c.css(this,"float")==="none")if(c.support.inlineBlockNeedsLayout)if(oa(this.nodeName)===
"inline")this.style.display="inline-block";else{this.style.display="inline";this.style.zoom=1}else this.style.display="inline-block"}if(c.isArray(a[k])){(h.specialEasing=h.specialEasing||{})[k]=a[k][1];a[k]=a[k][0]}}if(h.overflow!=null)this.style.overflow="hidden";h.curAnim=c.extend({},a);c.each(a,function(B,D){var H=new c.fx(s,h,B);if(tb.test(D))H[D==="toggle"?n?"show":"hide":D](a);else{var w=ub.exec(D),G=H.cur(true)||0;if(w){var M=parseFloat(w[2]),g=w[3]||"px";if(g!=="px"){c.style(s,B,(M||1)+g);
G=(M||1)/H.cur(true)*G;c.style(s,B,G+g)}if(w[1])M=(w[1]==="-="?-1:1)*M+G;H.custom(G,M,g)}else H.custom(G,D,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);this.each(function(){for(var e=d.length-1;e>=0;e--)if(d[e].elem===this){b&&d[e](true);d.splice(e,1)}});b||this.dequeue();return this}});c.each({slideDown:S("show",1),slideUp:S("hide",1),slideToggle:S("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(a,b){c.fn[a]=function(d,e,f){return this.animate(b,
d,e,f)}});c.extend({speed:function(a,b,d){var e=a&&typeof a==="object"?c.extend({},a):{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};e.duration=c.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in c.fx.speeds?c.fx.speeds[e.duration]:c.fx.speeds._default;e.old=e.complete;e.complete=function(){e.queue!==false&&c(this).dequeue();c.isFunction(e.old)&&e.old.call(this)};return e},easing:{linear:function(a,b,d,e){return d+e*a},swing:function(a,b,d,e){return(-Math.cos(a*
Math.PI)/2+0.5)*e+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||c.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a=parseFloat(c.css(this.elem,this.prop));return a&&a>-1E4?a:0},custom:function(a,b,d){function e(h){return f.step(h)}
this.startTime=c.now();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;this.pos=this.state=0;var f=this;a=c.fx;e.elem=this.elem;if(e()&&c.timers.push(e)&&!aa)aa=setInterval(a.tick,a.interval)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;
this.custom(this.cur(),0)},step:function(a){var b=c.now(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var e in this.options.curAnim)if(this.options.curAnim[e]!==true)d=false;if(d){if(this.options.overflow!=null&&!c.support.shrinkWrapBlocks){var f=this.elem,h=this.options;c.each(["","X","Y"],function(l,n){f.style["overflow"+n]=h.overflow[l]})}this.options.hide&&c(this.elem).hide();if(this.options.hide||
this.options.show)for(var k in this.options.curAnim)c.style(this.elem,k,this.options.orig[k]);this.options.complete.call(this.elem)}return false}else{a=b-this.startTime;this.state=a/this.options.duration;b=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||b](this.state,a,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=
c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||c.fx.stop()},interval:13,stop:function(){clearInterval(aa);aa=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===
b.elem}).length};var vb=/^t(?:able|d|h)$/i,Fa=/^(?:body|html)$/i;c.fn.offset="getBoundingClientRect"in u.documentElement?function(a){var b=this[0],d;if(a)return this.each(function(k){c.offset.setOffset(this,a,k)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);try{d=b.getBoundingClientRect()}catch(e){}var f=b.ownerDocument,h=f.documentElement;if(!d||!c.contains(h,b))return d||{top:0,left:0};b=f.body;f=ea(f);return{top:d.top+(f.pageYOffset||c.support.boxModel&&
h.scrollTop||b.scrollTop)-(h.clientTop||b.clientTop||0),left:d.left+(f.pageXOffset||c.support.boxModel&&h.scrollLeft||b.scrollLeft)-(h.clientLeft||b.clientLeft||0)}}:function(a){var b=this[0];if(a)return this.each(function(s){c.offset.setOffset(this,a,s)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d=b.offsetParent,e=b.ownerDocument,f,h=e.documentElement,k=e.body;f=(e=e.defaultView)?e.getComputedStyle(b,null):b.currentStyle;
for(var l=b.offsetTop,n=b.offsetLeft;(b=b.parentNode)&&b!==k&&b!==h;){if(c.offset.supportsFixedPosition&&f.position==="fixed")break;f=e?e.getComputedStyle(b,null):b.currentStyle;l-=b.scrollTop;n-=b.scrollLeft;if(b===d){l+=b.offsetTop;n+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&vb.test(b.nodeName))){l+=parseFloat(f.borderTopWidth)||0;n+=parseFloat(f.borderLeftWidth)||0}d=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&f.overflow!=="visible"){l+=
parseFloat(f.borderTopWidth)||0;n+=parseFloat(f.borderLeftWidth)||0}f=f}if(f.position==="relative"||f.position==="static"){l+=k.offsetTop;n+=k.offsetLeft}if(c.offset.supportsFixedPosition&&f.position==="fixed"){l+=Math.max(h.scrollTop,k.scrollTop);n+=Math.max(h.scrollLeft,k.scrollLeft)}return{top:l,left:n}};c.offset={initialize:function(){var a=u.body,b=u.createElement("div"),d,e,f,h=parseFloat(c.css(a,"marginTop"))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",
height:"1px",visibility:"hidden"});b.innerHTML="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";a.insertBefore(b,a.firstChild);d=b.firstChild;e=d.firstChild;f=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=e.offsetTop!==5;this.doesAddBorderForTableAndCells=
f.offsetTop===5;e.style.position="fixed";e.style.top="20px";this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15;e.style.position=e.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==h;a.removeChild(b);c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.css(a,
"marginTop"))||0;d+=parseFloat(c.css(a,"marginLeft"))||0}return{top:b,left:d}},setOffset:function(a,b,d){var e=c.css(a,"position");if(e==="static")a.style.position="relative";var f=c(a),h=f.offset(),k=c.css(a,"top"),l=c.css(a,"left"),n=e==="absolute"&&c.inArray("auto",[k,l])>-1;e={};var s={};if(n)s=f.position();k=n?s.top:parseInt(k,10)||0;l=n?s.left:parseInt(l,10)||0;if(c.isFunction(b))b=b.call(a,d,h);if(b.top!=null)e.top=b.top-h.top+k;if(b.left!=null)e.left=b.left-h.left+l;"using"in b?b.using.call(a,
e):f.css(e)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),e=Fa.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.css(a,"marginTop"))||0;d.left-=parseFloat(c.css(a,"marginLeft"))||0;e.top+=parseFloat(c.css(b[0],"borderTopWidth"))||0;e.left+=parseFloat(c.css(b[0],"borderLeftWidth"))||0;return{top:d.top-e.top,left:d.left-e.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||u.body;a&&!Fa.test(a.nodeName)&&
c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(e){var f=this[0],h;if(!f)return null;if(e!==A)return this.each(function(){if(h=ea(this))h.scrollTo(!a?e:c(h).scrollLeft(),a?e:c(h).scrollTop());else this[d]=e});else return(h=ea(f))?"pageXOffset"in h?h[a?"pageYOffset":"pageXOffset"]:c.support.boxModel&&h.document.documentElement[d]||h.document.body[d]:f[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();
c.fn["inner"+b]=function(){return this[0]?parseFloat(c.css(this[0],d,"padding")):null};c.fn["outer"+b]=function(e){return this[0]?parseFloat(c.css(this[0],d,e?"margin":"border")):null};c.fn[d]=function(e){var f=this[0];if(!f)return e==null?null:this;if(c.isFunction(e))return this.each(function(h){var k=c(this);k[d](e.call(this,h,k[d]()))});return c.isWindow(f)?f.document.compatMode==="CSS1Compat"&&f.document.documentElement["client"+b]||f.document.body["client"+b]:f.nodeType===9?Math.max(f.documentElement["client"+
b],f.body["scroll"+b],f.documentElement["scroll"+b],f.body["offset"+b],f.documentElement["offset"+b]):e===A?parseFloat(c.css(f,d)):this.css(d,typeof e==="string"?e:e+"px")}})})(window);
]]></CSP>


<CSP name="js/jquery-ui-1.8.6.custom.min.js" application="/csp/cbt/" default="1"><![CDATA[
/*!
 * jQuery UI 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI
 */
(function(c,j){function k(a){return!c(a).parents().andSelf().filter(function(){return c.curCSS(this,"visibility")==="hidden"||c.expr.filters.hidden(this)}).length}c.ui=c.ui||{};if(!c.ui.version){c.extend(c.ui,{version:"1.8.6",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,
NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});c.fn.extend({_focus:c.fn.focus,focus:function(a,b){return typeof a==="number"?this.each(function(){var d=this;setTimeout(function(){c(d).focus();b&&b.call(d)},a)}):this._focus.apply(this,arguments)},scrollParent:function(){var a;a=c.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(c.curCSS(this,
"position",1))&&/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!a.length?c(document):a},zIndex:function(a){if(a!==j)return this.css("zIndex",a);if(this.length){a=c(this[0]);for(var b;a.length&&a[0]!==document;){b=a.css("position");
if(b==="absolute"||b==="relative"||b==="fixed"){b=parseInt(a.css("zIndex"),10);if(!isNaN(b)&&b!==0)return b}a=a.parent()}}return 0},disableSelection:function(){return this.bind((c.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});c.each(["Width","Height"],function(a,b){function d(f,g,l,m){c.each(e,function(){g-=parseFloat(c.curCSS(f,"padding"+this,true))||0;if(l)g-=parseFloat(c.curCSS(f,
"border"+this+"Width",true))||0;if(m)g-=parseFloat(c.curCSS(f,"margin"+this,true))||0});return g}var e=b==="Width"?["Left","Right"]:["Top","Bottom"],h=b.toLowerCase(),i={innerWidth:c.fn.innerWidth,innerHeight:c.fn.innerHeight,outerWidth:c.fn.outerWidth,outerHeight:c.fn.outerHeight};c.fn["inner"+b]=function(f){if(f===j)return i["inner"+b].call(this);return this.each(function(){c(this).css(h,d(this,f)+"px")})};c.fn["outer"+b]=function(f,g){if(typeof f!=="number")return i["outer"+b].call(this,f);return this.each(function(){c(this).css(h,
d(this,f,true,g)+"px")})}});c.extend(c.expr[":"],{data:function(a,b,d){return!!c.data(a,d[3])},focusable:function(a){var b=a.nodeName.toLowerCase(),d=c.attr(a,"tabindex");if("area"===b){b=a.parentNode;d=b.name;if(!a.href||!d||b.nodeName.toLowerCase()!=="map")return false;a=c("img[usemap=#"+d+"]")[0];return!!a&&k(a)}return(/input|select|textarea|button|object/.test(b)?!a.disabled:"a"==b?a.href||!isNaN(d):!isNaN(d))&&k(a)},tabbable:function(a){var b=c.attr(a,"tabindex");return(isNaN(b)||b>=0)&&c(a).is(":focusable")}});
c(function(){var a=document.body,b=a.appendChild(b=document.createElement("div"));c.extend(b.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});c.support.minHeight=b.offsetHeight===100;c.support.selectstart="onselectstart"in b;a.removeChild(b).style.display="none"});c.extend(c.ui,{plugin:{add:function(a,b,d){a=c.ui[a].prototype;for(var e in d){a.plugins[e]=a.plugins[e]||[];a.plugins[e].push([b,d[e]])}},call:function(a,b,d){if((b=a.plugins[b])&&a.element[0].parentNode)for(var e=0;e<b.length;e++)a.options[b[e][0]]&&
b[e][1].apply(a.element,d)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(a,b){if(c(a).css("overflow")==="hidden")return false;b=b&&b==="left"?"scrollLeft":"scrollTop";var d=false;if(a[b]>0)return true;a[b]=1;d=a[b]>0;a[b]=0;return d},isOverAxis:function(a,b,d){return a>b&&a<b+d},isOver:function(a,b,d,e,h,i){return c.ui.isOverAxis(a,d,h)&&c.ui.isOverAxis(b,e,i)}})}})(jQuery);
;/*!
 * jQuery UI Widget 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Widget
 */
(function(b,j){if(b.cleanData){var k=b.cleanData;b.cleanData=function(a){for(var c=0,d;(d=a[c])!=null;c++)b(d).triggerHandler("remove");k(a)}}else{var l=b.fn.remove;b.fn.remove=function(a,c){return this.each(function(){if(!c)if(!a||b.filter(a,[this]).length)b("*",this).add([this]).each(function(){b(this).triggerHandler("remove")});return l.call(b(this),a,c)})}}b.widget=function(a,c,d){var e=a.split(".")[0],f;a=a.split(".")[1];f=e+"-"+a;if(!d){d=c;c=b.Widget}b.expr[":"][f]=function(h){return!!b.data(h,
a)};b[e]=b[e]||{};b[e][a]=function(h,g){arguments.length&&this._createWidget(h,g)};c=new c;c.options=b.extend(true,{},c.options);b[e][a].prototype=b.extend(true,c,{namespace:e,widgetName:a,widgetEventPrefix:b[e][a].prototype.widgetEventPrefix||a,widgetBaseClass:f},d);b.widget.bridge(a,b[e][a])};b.widget.bridge=function(a,c){b.fn[a]=function(d){var e=typeof d==="string",f=Array.prototype.slice.call(arguments,1),h=this;d=!e&&f.length?b.extend.apply(null,[true,d].concat(f)):d;if(e&&d.charAt(0)==="_")return h;
e?this.each(function(){var g=b.data(this,a),i=g&&b.isFunction(g[d])?g[d].apply(g,f):g;if(i!==g&&i!==j){h=i;return false}}):this.each(function(){var g=b.data(this,a);g?g.option(d||{})._init():b.data(this,a,new c(d,this))});return h}};b.Widget=function(a,c){arguments.length&&this._createWidget(a,c)};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(a,c){b.data(c,this.widgetName,this);this.element=b(c);this.options=b.extend(true,{},this.options,
this._getCreateOptions(),a);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},
widget:function(){return this.element},option:function(a,c){var d=a;if(arguments.length===0)return b.extend({},this.options);if(typeof a==="string"){if(c===j)return this.options[a];d={};d[a]=c}this._setOptions(d);return this},_setOptions:function(a){var c=this;b.each(a,function(d,e){c._setOption(d,e)});return this},_setOption:function(a,c){this.options[a]=c;if(a==="disabled")this.widget()[c?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",c);return this},
enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(a,c,d){var e=this.options[a];c=b.Event(c);c.type=(a===this.widgetEventPrefix?a:this.widgetEventPrefix+a).toLowerCase();d=d||{};if(c.originalEvent){a=b.event.props.length;for(var f;a;){f=b.event.props[--a];c[f]=c.originalEvent[f]}}this.element.trigger(c,d);return!(b.isFunction(e)&&e.call(this.element[0],c,d)===false||c.isDefaultPrevented())}}})(jQuery);
;/*!
 * jQuery UI Mouse 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Mouse
 *
 * Depends:
 *	jquery.ui.widget.js
 */
(function(c){c.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var a=this;this.element.bind("mousedown."+this.widgetName,function(b){return a._mouseDown(b)}).bind("click."+this.widgetName,function(b){if(a._preventClickEvent){a._preventClickEvent=false;b.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(a){a.originalEvent=a.originalEvent||{};if(!a.originalEvent.mouseHandled){this._mouseStarted&&
this._mouseUp(a);this._mouseDownEvent=a;var b=this,e=a.which==1,f=typeof this.options.cancel=="string"?c(a.target).parents().add(a.target).filter(this.options.cancel).length:false;if(!e||f||!this._mouseCapture(a))return true;this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet)this._mouseDelayTimer=setTimeout(function(){b.mouseDelayMet=true},this.options.delay);if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a)){this._mouseStarted=this._mouseStart(a)!==false;if(!this._mouseStarted){a.preventDefault();
return true}}this._mouseMoveDelegate=function(d){return b._mouseMove(d)};this._mouseUpDelegate=function(d){return b._mouseUp(d)};c(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);a.preventDefault();return a.originalEvent.mouseHandled=true}},_mouseMove:function(a){if(c.browser.msie&&!(document.documentMode>=9)&&!a.button)return this._mouseUp(a);if(this._mouseStarted){this._mouseDrag(a);return a.preventDefault()}if(this._mouseDistanceMet(a)&&
this._mouseDelayMet(a))(this._mouseStarted=this._mouseStart(this._mouseDownEvent,a)!==false)?this._mouseDrag(a):this._mouseUp(a);return!this._mouseStarted},_mouseUp:function(a){c(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._preventClickEvent=a.target==this._mouseDownEvent.target;this._mouseStop(a)}return false},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-
a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}})})(jQuery);
;/*
 * jQuery UI Position 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Position
 */
(function(c){c.ui=c.ui||{};var n=/left|center|right/,o=/top|center|bottom/,t=c.fn.position,u=c.fn.offset;c.fn.position=function(b){if(!b||!b.of)return t.apply(this,arguments);b=c.extend({},b);var a=c(b.of),d=a[0],g=(b.collision||"flip").split(" "),e=b.offset?b.offset.split(" "):[0,0],h,k,j;if(d.nodeType===9){h=a.width();k=a.height();j={top:0,left:0}}else if(d.setTimeout){h=a.width();k=a.height();j={top:a.scrollTop(),left:a.scrollLeft()}}else if(d.preventDefault){b.at="left top";h=k=0;j={top:b.of.pageY,
left:b.of.pageX}}else{h=a.outerWidth();k=a.outerHeight();j=a.offset()}c.each(["my","at"],function(){var f=(b[this]||"").split(" ");if(f.length===1)f=n.test(f[0])?f.concat(["center"]):o.test(f[0])?["center"].concat(f):["center","center"];f[0]=n.test(f[0])?f[0]:"center";f[1]=o.test(f[1])?f[1]:"center";b[this]=f});if(g.length===1)g[1]=g[0];e[0]=parseInt(e[0],10)||0;if(e.length===1)e[1]=e[0];e[1]=parseInt(e[1],10)||0;if(b.at[0]==="right")j.left+=h;else if(b.at[0]==="center")j.left+=h/2;if(b.at[1]==="bottom")j.top+=
k;else if(b.at[1]==="center")j.top+=k/2;j.left+=e[0];j.top+=e[1];return this.each(function(){var f=c(this),l=f.outerWidth(),m=f.outerHeight(),p=parseInt(c.curCSS(this,"marginLeft",true))||0,q=parseInt(c.curCSS(this,"marginTop",true))||0,v=l+p+parseInt(c.curCSS(this,"marginRight",true))||0,w=m+q+parseInt(c.curCSS(this,"marginBottom",true))||0,i=c.extend({},j),r;if(b.my[0]==="right")i.left-=l;else if(b.my[0]==="center")i.left-=l/2;if(b.my[1]==="bottom")i.top-=m;else if(b.my[1]==="center")i.top-=m/2;
i.left=parseInt(i.left);i.top=parseInt(i.top);r={left:i.left-p,top:i.top-q};c.each(["left","top"],function(s,x){c.ui.position[g[s]]&&c.ui.position[g[s]][x](i,{targetWidth:h,targetHeight:k,elemWidth:l,elemHeight:m,collisionPosition:r,collisionWidth:v,collisionHeight:w,offset:e,my:b.my,at:b.at})});c.fn.bgiframe&&f.bgiframe();f.offset(c.extend(i,{using:b.using}))})};c.ui.position={fit:{left:function(b,a){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();b.left=d>0?
b.left-d:Math.max(b.left-a.collisionPosition.left,b.left)},top:function(b,a){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();b.top=d>0?b.top-d:Math.max(b.top-a.collisionPosition.top,b.top)}},flip:{left:function(b,a){if(a.at[0]!=="center"){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();var g=a.my[0]==="left"?-a.elemWidth:a.my[0]==="right"?a.elemWidth:0,e=a.at[0]==="left"?a.targetWidth:-a.targetWidth,h=-2*a.offset[0];b.left+=
a.collisionPosition.left<0?g+e+h:d>0?g+e+h:0}},top:function(b,a){if(a.at[1]!=="center"){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();var g=a.my[1]==="top"?-a.elemHeight:a.my[1]==="bottom"?a.elemHeight:0,e=a.at[1]==="top"?a.targetHeight:-a.targetHeight,h=-2*a.offset[1];b.top+=a.collisionPosition.top<0?g+e+h:d>0?g+e+h:0}}}};if(!c.offset.setOffset){c.offset.setOffset=function(b,a){if(/static/.test(c.curCSS(b,"position")))b.style.position="relative";var d=c(b),
g=d.offset(),e=parseInt(c.curCSS(b,"top",true),10)||0,h=parseInt(c.curCSS(b,"left",true),10)||0;g={top:a.top-g.top+e,left:a.left-g.left+h};"using"in a?a.using.call(b,g):d.css(g)};c.fn.offset=function(b){var a=this[0];if(!a||!a.ownerDocument)return null;if(b)return this.each(function(){c.offset.setOffset(this,b)});return u.call(this)}}})(jQuery);
;/*
 * jQuery UI Draggable 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Draggables
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.mouse.js
 *	jquery.ui.widget.js
 */
(function(d){d.widget("ui.draggable",d.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:true,appendTo:"parent",axis:false,connectToSortable:false,containment:false,cursor:"auto",cursorAt:false,grid:false,handle:false,helper:"original",iframeFix:false,opacity:false,refreshPositions:false,revert:false,revertDuration:500,scope:"default",scroll:true,scrollSensitivity:20,scrollSpeed:20,snap:false,snapMode:"both",snapTolerance:20,stack:false,zIndex:false},_create:function(){if(this.options.helper==
"original"&&!/^(?:r|a|f)/.test(this.element.css("position")))this.element[0].style.position="relative";this.options.addClasses&&this.element.addClass("ui-draggable");this.options.disabled&&this.element.addClass("ui-draggable-disabled");this._mouseInit()},destroy:function(){if(this.element.data("draggable")){this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._mouseDestroy();return this}},_mouseCapture:function(a){var b=
this.options;if(this.helper||b.disabled||d(a.target).is(".ui-resizable-handle"))return false;this.handle=this._getHandle(a);if(!this.handle)return false;return true},_mouseStart:function(a){var b=this.options;this.helper=this._createHelper(a);this._cacheHelperProportions();if(d.ui.ddmanager)d.ui.ddmanager.current=this;this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.positionAbs=this.element.offset();this.offset={top:this.offset.top-
this.margins.top,left:this.offset.left-this.margins.left};d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this.position=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);b.containment&&this._setContainment();if(this._trigger("start",a)===false){this._clear();return false}this._cacheHelperProportions();
d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(a,true);return true},_mouseDrag:function(a,b){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!b){b=this._uiHash();if(this._trigger("drag",a,b)===false){this._mouseUp({});return false}this.position=b.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||
this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);return false},_mouseStop:function(a){var b=false;if(d.ui.ddmanager&&!this.options.dropBehaviour)b=d.ui.ddmanager.drop(this,a);if(this.dropped){b=this.dropped;this.dropped=false}if(!this.element[0]||!this.element[0].parentNode)return false;if(this.options.revert=="invalid"&&!b||this.options.revert=="valid"&&b||this.options.revert===true||d.isFunction(this.options.revert)&&this.options.revert.call(this.element,
b)){var c=this;d(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){c._trigger("stop",a)!==false&&c._clear()})}else this._trigger("stop",a)!==false&&this._clear();return false},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(a){var b=!this.options.handle||!d(this.options.handle,this.element).length?true:false;d(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==
a.target)b=true});return b},_createHelper:function(a){var b=this.options;a=d.isFunction(b.helper)?d(b.helper.apply(this.element[0],[a])):b.helper=="clone"?this.element.clone():this.element;a.parents("body").length||a.appendTo(b.appendTo=="parent"?this.element[0].parentNode:b.appendTo);a[0]!=this.element[0]&&!/(fixed|absolute)/.test(a.css("position"))&&a.css("position","absolute");return a},_adjustOffsetFromHelper:function(a){if(typeof a=="string")a=a.split(" ");if(d.isArray(a))a={left:+a[0],top:+a[1]||
0};if("left"in a)this.offset.click.left=a.left+this.margins.left;if("right"in a)this.offset.click.left=this.helperProportions.width-a.right+this.margins.left;if("top"in a)this.offset.click.top=a.top+this.margins.top;if("bottom"in a)this.offset.click.top=this.helperProportions.height-a.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var a=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],
this.offsetParent[0])){a.left+=this.scrollParent.scrollLeft();a.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&d.browser.msie)a={top:0,left:0};return{top:a.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:a.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.element.position();return{top:a.top-
(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var a=this.options;if(a.containment==
"parent")a.containment=this.helper[0].parentNode;if(a.containment=="document"||a.containment=="window")this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,d(a.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(d(a.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(a.containment)&&
a.containment.constructor!=Array){var b=d(a.containment)[0];if(b){a=d(a.containment).offset();var c=d(b).css("overflow")!="hidden";this.containment=[a.left+(parseInt(d(b).css("borderLeftWidth"),10)||0)+(parseInt(d(b).css("paddingLeft"),10)||0)-this.margins.left,a.top+(parseInt(d(b).css("borderTopWidth"),10)||0)+(parseInt(d(b).css("paddingTop"),10)||0)-this.margins.top,a.left+(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(d(b).css("borderLeftWidth"),10)||0)-(parseInt(d(b).css("paddingRight"),
10)||0)-this.helperProportions.width-this.margins.left,a.top+(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(d(b).css("borderTopWidth"),10)||0)-(parseInt(d(b).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}}else if(a.containment.constructor==Array)this.containment=a.containment},_convertPositionTo:function(a,b){if(!b)b=this.position;a=a=="absolute"?1:-1;var c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],
this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName);return{top:b.top+this.offset.relative.top*a+this.offset.parent.top*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop())*a),left:b.left+this.offset.relative.left*a+this.offset.parent.left*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():
f?0:c.scrollLeft())*a)}},_generatePosition:function(a){var b=this.options,c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName),e=a.pageX,g=a.pageY;if(this.originalPosition){if(this.containment){if(a.pageX-this.offset.click.left<this.containment[0])e=this.containment[0]+this.offset.click.left;if(a.pageY-this.offset.click.top<this.containment[1])g=this.containment[1]+
this.offset.click.top;if(a.pageX-this.offset.click.left>this.containment[2])e=this.containment[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>this.containment[3])g=this.containment[3]+this.offset.click.top}if(b.grid){g=this.originalPageY+Math.round((g-this.originalPageY)/b.grid[1])*b.grid[1];g=this.containment?!(g-this.offset.click.top<this.containment[1]||g-this.offset.click.top>this.containment[3])?g:!(g-this.offset.click.top<this.containment[1])?g-b.grid[1]:g+b.grid[1]:g;e=this.originalPageX+
Math.round((e-this.originalPageX)/b.grid[0])*b.grid[0];e=this.containment?!(e-this.offset.click.left<this.containment[0]||e-this.offset.click.left>this.containment[2])?e:!(e-this.offset.click.left<this.containment[0])?e-b.grid[0]:e+b.grid[0]:e}}return{top:g-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop()),left:e-this.offset.click.left-
this.offset.relative.left-this.offset.parent.left+(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())}},_clear:function(){this.helper.removeClass("ui-draggable-dragging");this.helper[0]!=this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove();this.helper=null;this.cancelHelperRemoval=false},_trigger:function(a,b,c){c=c||this._uiHash();d.ui.plugin.call(this,a,[b,c]);if(a=="drag")this.positionAbs=
this._convertPositionTo("absolute");return d.Widget.prototype._trigger.call(this,a,b,c)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}});d.extend(d.ui.draggable,{version:"1.8.6"});d.ui.plugin.add("draggable","connectToSortable",{start:function(a,b){var c=d(this).data("draggable"),f=c.options,e=d.extend({},b,{item:c.element});c.sortables=[];d(f.connectToSortable).each(function(){var g=d.data(this,"sortable");
if(g&&!g.options.disabled){c.sortables.push({instance:g,shouldRevert:g.options.revert});g._refreshItems();g._trigger("activate",a,e)}})},stop:function(a,b){var c=d(this).data("draggable"),f=d.extend({},b,{item:c.element});d.each(c.sortables,function(){if(this.instance.isOver){this.instance.isOver=0;c.cancelHelperRemoval=true;this.instance.cancelHelperRemoval=false;if(this.shouldRevert)this.instance.options.revert=true;this.instance._mouseStop(a);this.instance.options.helper=this.instance.options._helper;
c.options.helper=="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})}else{this.instance.cancelHelperRemoval=false;this.instance._trigger("deactivate",a,f)}})},drag:function(a,b){var c=d(this).data("draggable"),f=this;d.each(c.sortables,function(){this.instance.positionAbs=c.positionAbs;this.instance.helperProportions=c.helperProportions;this.instance.offset.click=c.offset.click;if(this.instance._intersectsWith(this.instance.containerCache)){if(!this.instance.isOver){this.instance.isOver=
1;this.instance.currentItem=d(f).clone().appendTo(this.instance.element).data("sortable-item",true);this.instance.options._helper=this.instance.options.helper;this.instance.options.helper=function(){return b.helper[0]};a.target=this.instance.currentItem[0];this.instance._mouseCapture(a,true);this.instance._mouseStart(a,true,true);this.instance.offset.click.top=c.offset.click.top;this.instance.offset.click.left=c.offset.click.left;this.instance.offset.parent.left-=c.offset.parent.left-this.instance.offset.parent.left;
this.instance.offset.parent.top-=c.offset.parent.top-this.instance.offset.parent.top;c._trigger("toSortable",a);c.dropped=this.instance.element;c.currentItem=c.element;this.instance.fromOutside=c}this.instance.currentItem&&this.instance._mouseDrag(a)}else if(this.instance.isOver){this.instance.isOver=0;this.instance.cancelHelperRemoval=true;this.instance.options.revert=false;this.instance._trigger("out",a,this.instance._uiHash(this.instance));this.instance._mouseStop(a,true);this.instance.options.helper=
this.instance.options._helper;this.instance.currentItem.remove();this.instance.placeholder&&this.instance.placeholder.remove();c._trigger("fromSortable",a);c.dropped=false}})}});d.ui.plugin.add("draggable","cursor",{start:function(){var a=d("body"),b=d(this).data("draggable").options;if(a.css("cursor"))b._cursor=a.css("cursor");a.css("cursor",b.cursor)},stop:function(){var a=d(this).data("draggable").options;a._cursor&&d("body").css("cursor",a._cursor)}});d.ui.plugin.add("draggable","iframeFix",{start:function(){var a=
d(this).data("draggable").options;d(a.iframeFix===true?"iframe":a.iframeFix).each(function(){d('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1E3}).css(d(this).offset()).appendTo("body")})},stop:function(){d("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)})}});d.ui.plugin.add("draggable","opacity",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;
if(a.css("opacity"))b._opacity=a.css("opacity");a.css("opacity",b.opacity)},stop:function(a,b){a=d(this).data("draggable").options;a._opacity&&d(b.helper).css("opacity",a._opacity)}});d.ui.plugin.add("draggable","scroll",{start:function(){var a=d(this).data("draggable");if(a.scrollParent[0]!=document&&a.scrollParent[0].tagName!="HTML")a.overflowOffset=a.scrollParent.offset()},drag:function(a){var b=d(this).data("draggable"),c=b.options,f=false;if(b.scrollParent[0]!=document&&b.scrollParent[0].tagName!=
"HTML"){if(!c.axis||c.axis!="x")if(b.overflowOffset.top+b.scrollParent[0].offsetHeight-a.pageY<c.scrollSensitivity)b.scrollParent[0].scrollTop=f=b.scrollParent[0].scrollTop+c.scrollSpeed;else if(a.pageY-b.overflowOffset.top<c.scrollSensitivity)b.scrollParent[0].scrollTop=f=b.scrollParent[0].scrollTop-c.scrollSpeed;if(!c.axis||c.axis!="y")if(b.overflowOffset.left+b.scrollParent[0].offsetWidth-a.pageX<c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft+c.scrollSpeed;else if(a.pageX-
b.overflowOffset.left<c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft-c.scrollSpeed}else{if(!c.axis||c.axis!="x")if(a.pageY-d(document).scrollTop()<c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()-c.scrollSpeed);else if(d(window).height()-(a.pageY-d(document).scrollTop())<c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()+c.scrollSpeed);if(!c.axis||c.axis!="y")if(a.pageX-d(document).scrollLeft()<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()-
c.scrollSpeed);else if(d(window).width()-(a.pageX-d(document).scrollLeft())<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()+c.scrollSpeed)}f!==false&&d.ui.ddmanager&&!c.dropBehaviour&&d.ui.ddmanager.prepareOffsets(b,a)}});d.ui.plugin.add("draggable","snap",{start:function(){var a=d(this).data("draggable"),b=a.options;a.snapElements=[];d(b.snap.constructor!=String?b.snap.items||":data(draggable)":b.snap).each(function(){var c=d(this),f=c.offset();this!=a.element[0]&&a.snapElements.push({item:this,
width:c.outerWidth(),height:c.outerHeight(),top:f.top,left:f.left})})},drag:function(a,b){for(var c=d(this).data("draggable"),f=c.options,e=f.snapTolerance,g=b.offset.left,n=g+c.helperProportions.width,m=b.offset.top,o=m+c.helperProportions.height,h=c.snapElements.length-1;h>=0;h--){var i=c.snapElements[h].left,k=i+c.snapElements[h].width,j=c.snapElements[h].top,l=j+c.snapElements[h].height;if(i-e<g&&g<k+e&&j-e<m&&m<l+e||i-e<g&&g<k+e&&j-e<o&&o<l+e||i-e<n&&n<k+e&&j-e<m&&m<l+e||i-e<n&&n<k+e&&j-e<o&&
o<l+e){if(f.snapMode!="inner"){var p=Math.abs(j-o)<=e,q=Math.abs(l-m)<=e,r=Math.abs(i-n)<=e,s=Math.abs(k-g)<=e;if(p)b.position.top=c._convertPositionTo("relative",{top:j-c.helperProportions.height,left:0}).top-c.margins.top;if(q)b.position.top=c._convertPositionTo("relative",{top:l,left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:i-c.helperProportions.width}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:k}).left-c.margins.left}var t=
p||q||r||s;if(f.snapMode!="outer"){p=Math.abs(j-m)<=e;q=Math.abs(l-o)<=e;r=Math.abs(i-g)<=e;s=Math.abs(k-n)<=e;if(p)b.position.top=c._convertPositionTo("relative",{top:j,left:0}).top-c.margins.top;if(q)b.position.top=c._convertPositionTo("relative",{top:l-c.helperProportions.height,left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:i}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:k-c.helperProportions.width}).left-c.margins.left}if(!c.snapElements[h].snapping&&
(p||q||r||s||t))c.options.snap.snap&&c.options.snap.snap.call(c.element,a,d.extend(c._uiHash(),{snapItem:c.snapElements[h].item}));c.snapElements[h].snapping=p||q||r||s||t}else{c.snapElements[h].snapping&&c.options.snap.release&&c.options.snap.release.call(c.element,a,d.extend(c._uiHash(),{snapItem:c.snapElements[h].item}));c.snapElements[h].snapping=false}}}});d.ui.plugin.add("draggable","stack",{start:function(){var a=d(this).data("draggable").options;a=d.makeArray(d(a.stack)).sort(function(c,f){return(parseInt(d(c).css("zIndex"),
10)||0)-(parseInt(d(f).css("zIndex"),10)||0)});if(a.length){var b=parseInt(a[0].style.zIndex)||0;d(a).each(function(c){this.style.zIndex=b+c});this[0].style.zIndex=b+a.length}}});d.ui.plugin.add("draggable","zIndex",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("zIndex"))b._zIndex=a.css("zIndex");a.css("zIndex",b.zIndex)},stop:function(a,b){a=d(this).data("draggable").options;a._zIndex&&d(b.helper).css("zIndex",a._zIndex)}})})(jQuery);
;/*
 * jQuery UI Droppable 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Droppables
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.widget.js
 *	jquery.ui.mouse.js
 *	jquery.ui.draggable.js
 */
(function(d){d.widget("ui.droppable",{widgetEventPrefix:"drop",options:{accept:"*",activeClass:false,addClasses:true,greedy:false,hoverClass:false,scope:"default",tolerance:"intersect"},_create:function(){var a=this.options,b=a.accept;this.isover=0;this.isout=1;this.accept=d.isFunction(b)?b:function(c){return c.is(b)};this.proportions={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight};d.ui.ddmanager.droppables[a.scope]=d.ui.ddmanager.droppables[a.scope]||[];d.ui.ddmanager.droppables[a.scope].push(this);
a.addClasses&&this.element.addClass("ui-droppable")},destroy:function(){for(var a=d.ui.ddmanager.droppables[this.options.scope],b=0;b<a.length;b++)a[b]==this&&a.splice(b,1);this.element.removeClass("ui-droppable ui-droppable-disabled").removeData("droppable").unbind(".droppable");return this},_setOption:function(a,b){if(a=="accept")this.accept=d.isFunction(b)?b:function(c){return c.is(b)};d.Widget.prototype._setOption.apply(this,arguments)},_activate:function(a){var b=d.ui.ddmanager.current;this.options.activeClass&&
this.element.addClass(this.options.activeClass);b&&this._trigger("activate",a,this.ui(b))},_deactivate:function(a){var b=d.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass);b&&this._trigger("deactivate",a,this.ui(b))},_over:function(a){var b=d.ui.ddmanager.current;if(!(!b||(b.currentItem||b.element)[0]==this.element[0]))if(this.accept.call(this.element[0],b.currentItem||b.element)){this.options.hoverClass&&this.element.addClass(this.options.hoverClass);
this._trigger("over",a,this.ui(b))}},_out:function(a){var b=d.ui.ddmanager.current;if(!(!b||(b.currentItem||b.element)[0]==this.element[0]))if(this.accept.call(this.element[0],b.currentItem||b.element)){this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("out",a,this.ui(b))}},_drop:function(a,b){var c=b||d.ui.ddmanager.current;if(!c||(c.currentItem||c.element)[0]==this.element[0])return false;var e=false;this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function(){var g=
d.data(this,"droppable");if(g.options.greedy&&!g.options.disabled&&g.options.scope==c.options.scope&&g.accept.call(g.element[0],c.currentItem||c.element)&&d.ui.intersect(c,d.extend(g,{offset:g.element.offset()}),g.options.tolerance)){e=true;return false}});if(e)return false;if(this.accept.call(this.element[0],c.currentItem||c.element)){this.options.activeClass&&this.element.removeClass(this.options.activeClass);this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("drop",
a,this.ui(c));return this.element}return false},ui:function(a){return{draggable:a.currentItem||a.element,helper:a.helper,position:a.position,offset:a.positionAbs}}});d.extend(d.ui.droppable,{version:"1.8.6"});d.ui.intersect=function(a,b,c){if(!b.offset)return false;var e=(a.positionAbs||a.position.absolute).left,g=e+a.helperProportions.width,f=(a.positionAbs||a.position.absolute).top,h=f+a.helperProportions.height,i=b.offset.left,k=i+b.proportions.width,j=b.offset.top,l=j+b.proportions.height;
switch(c){case "fit":return i<=e&&g<=k&&j<=f&&h<=l;case "intersect":return i<e+a.helperProportions.width/2&&g-a.helperProportions.width/2<k&&j<f+a.helperProportions.height/2&&h-a.helperProportions.height/2<l;case "pointer":return d.ui.isOver((a.positionAbs||a.position.absolute).top+(a.clickOffset||a.offset.click).top,(a.positionAbs||a.position.absolute).left+(a.clickOffset||a.offset.click).left,j,i,b.proportions.height,b.proportions.width);case "touch":return(f>=j&&f<=l||h>=j&&h<=l||f<j&&h>l)&&(e>=
i&&e<=k||g>=i&&g<=k||e<i&&g>k);default:return false}};d.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(a,b){var c=d.ui.ddmanager.droppables[a.options.scope]||[],e=b?b.type:null,g=(a.currentItem||a.element).find(":data(droppable)").andSelf(),f=0;a:for(;f<c.length;f++)if(!(c[f].options.disabled||a&&!c[f].accept.call(c[f].element[0],a.currentItem||a.element))){for(var h=0;h<g.length;h++)if(g[h]==c[f].element[0]){c[f].proportions.height=0;continue a}c[f].visible=c[f].element.css("display")!=
"none";if(c[f].visible){c[f].offset=c[f].element.offset();c[f].proportions={width:c[f].element[0].offsetWidth,height:c[f].element[0].offsetHeight};e=="mousedown"&&c[f]._activate.call(c[f],b)}}},drop:function(a,b){var c=false;d.each(d.ui.ddmanager.droppables[a.options.scope]||[],function(){if(this.options){if(!this.options.disabled&&this.visible&&d.ui.intersect(a,this,this.options.tolerance))c=c||this._drop.call(this,b);if(!this.options.disabled&&this.visible&&this.accept.call(this.element[0],a.currentItem||
a.element)){this.isout=1;this.isover=0;this._deactivate.call(this,b)}}});return c},drag:function(a,b){a.options.refreshPositions&&d.ui.ddmanager.prepareOffsets(a,b);d.each(d.ui.ddmanager.droppables[a.options.scope]||[],function(){if(!(this.options.disabled||this.greedyChild||!this.visible)){var c=d.ui.intersect(a,this,this.options.tolerance);if(c=!c&&this.isover==1?"isout":c&&this.isover==0?"isover":null){var e;if(this.options.greedy){var g=this.element.parents(":data(droppable):eq(0)");if(g.length){e=
d.data(g[0],"droppable");e.greedyChild=c=="isover"?1:0}}if(e&&c=="isover"){e.isover=0;e.isout=1;e._out.call(e,b)}this[c]=1;this[c=="isout"?"isover":"isout"]=0;this[c=="isover"?"_over":"_out"].call(this,b);if(e&&c=="isout"){e.isout=0;e.isover=1;e._over.call(e,b)}}}})}}})(jQuery);
;/*
 * jQuery UI Resizable 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Resizables
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.mouse.js
 *	jquery.ui.widget.js
 */
(function(e){e.widget("ui.resizable",e.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1E3},_create:function(){var b=this,a=this.options;this.element.addClass("ui-resizable");e.extend(this,{_aspectRatio:!!a.aspectRatio,aspectRatio:a.aspectRatio,originalElement:this.element,
_proportionallyResizeElements:[],_helper:a.helper||a.ghost||a.animate?a.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){/relative/.test(this.element.css("position"))&&e.browser.opera&&this.element.css({position:"relative",top:"auto",left:"auto"});this.element.wrap(e('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),
top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=
this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=a.handles||(!e(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",
nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all")this.handles="n,e,s,w,se,sw,ne,nw";var c=this.handles.split(",");this.handles={};for(var d=0;d<c.length;d++){var f=e.trim(c[d]),g=e('<div class="ui-resizable-handle '+("ui-resizable-"+f)+'"></div>');/sw|se|ne|nw/.test(f)&&g.css({zIndex:++a.zIndex});"se"==f&&g.addClass("ui-icon ui-icon-gripsmall-diagonal-se");this.handles[f]=".ui-resizable-"+f;this.element.append(g)}}this._renderAxis=function(h){h=h||this.element;for(var i in this.handles){if(this.handles[i].constructor==
String)this.handles[i]=e(this.handles[i],this.element).show();if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var j=e(this.handles[i],this.element),k=0;k=/sw|ne|nw|se|n|s/.test(i)?j.outerHeight():j.outerWidth();j=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join("");h.css(j,k);this._proportionallyResize()}e(this.handles[i])}};this._renderAxis(this.element);this._handles=e(".ui-resizable-handle",this.element).disableSelection();
this._handles.mouseover(function(){if(!b.resizing){if(this.className)var h=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=h&&h[1]?h[1]:"se"}});if(a.autoHide){this._handles.hide();e(this.element).addClass("ui-resizable-autohide").hover(function(){e(this).removeClass("ui-resizable-autohide");b._handles.show()},function(){if(!b.resizing){e(this).addClass("ui-resizable-autohide");b._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(c){e(c).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};
if(this.elementIsWrapper){b(this.element);var a=this.element;a.after(this.originalElement.css({position:a.css("position"),width:a.outerWidth(),height:a.outerHeight(),top:a.css("top"),left:a.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);b(this.originalElement);return this},_mouseCapture:function(b){var a=false;for(var c in this.handles)if(e(this.handles[c])[0]==b.target)a=true;return!this.options.disabled&&a},_mouseStart:function(b){var a=this.options,c=this.element.position(),
d=this.element;this.resizing=true;this.documentScroll={top:e(document).scrollTop(),left:e(document).scrollLeft()};if(d.is(".ui-draggable")||/absolute/.test(d.css("position")))d.css({position:"absolute",top:c.top,left:c.left});e.browser.opera&&/relative/.test(d.css("position"))&&d.css({position:"relative",top:"auto",left:"auto"});this._renderProxy();c=m(this.helper.css("left"));var f=m(this.helper.css("top"));if(a.containment){c+=e(a.containment).scrollLeft()||0;f+=e(a.containment).scrollTop()||0}this.offset=
this.helper.offset();this.position={left:c,top:f};this.size=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalSize=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalPosition={left:c,top:f};this.sizeDiff={width:d.outerWidth()-d.width(),height:d.outerHeight()-d.height()};this.originalMousePosition={left:b.pageX,top:b.pageY};this.aspectRatio=typeof a.aspectRatio=="number"?a.aspectRatio:
this.originalSize.width/this.originalSize.height||1;a=e(".ui-resizable-"+this.axis).css("cursor");e("body").css("cursor",a=="auto"?this.axis+"-resize":a);d.addClass("ui-resizable-resizing");this._propagate("start",b);return true},_mouseDrag:function(b){var a=this.helper,c=this.originalMousePosition,d=this._change[this.axis];if(!d)return false;c=d.apply(this,[b,b.pageX-c.left||0,b.pageY-c.top||0]);if(this._aspectRatio||b.shiftKey)c=this._updateRatio(c,b);c=this._respectSize(c,b);this._propagate("resize",
b);a.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize();this._updateCache(c);this._trigger("resize",b,this.ui());return false},_mouseStop:function(b){this.resizing=false;var a=this.options,c=this;if(this._helper){var d=this._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName);d=f&&e.ui.hasScroll(d[0],"left")?0:c.sizeDiff.height;
f={width:c.size.width-(f?0:c.sizeDiff.width),height:c.size.height-d};d=parseInt(c.element.css("left"),10)+(c.position.left-c.originalPosition.left)||null;var g=parseInt(c.element.css("top"),10)+(c.position.top-c.originalPosition.top)||null;a.animate||this.element.css(e.extend(f,{top:g,left:d}));c.helper.height(c.size.height);c.helper.width(c.size.width);this._helper&&!a.animate&&this._proportionallyResize()}e("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",
b);this._helper&&this.helper.remove();return false},_updateCache:function(b){this.offset=this.helper.offset();if(l(b.left))this.position.left=b.left;if(l(b.top))this.position.top=b.top;if(l(b.height))this.size.height=b.height;if(l(b.width))this.size.width=b.width},_updateRatio:function(b){var a=this.position,c=this.size,d=this.axis;if(b.height)b.width=c.height*this.aspectRatio;else if(b.width)b.height=c.width/this.aspectRatio;if(d=="sw"){b.left=a.left+(c.width-b.width);b.top=null}if(d=="nw"){b.top=
a.top+(c.height-b.height);b.left=a.left+(c.width-b.width)}return b},_respectSize:function(b){var a=this.options,c=this.axis,d=l(b.width)&&a.maxWidth&&a.maxWidth<b.width,f=l(b.height)&&a.maxHeight&&a.maxHeight<b.height,g=l(b.width)&&a.minWidth&&a.minWidth>b.width,h=l(b.height)&&a.minHeight&&a.minHeight>b.height;if(g)b.width=a.minWidth;if(h)b.height=a.minHeight;if(d)b.width=a.maxWidth;if(f)b.height=a.maxHeight;var i=this.originalPosition.left+this.originalSize.width,j=this.position.top+this.size.height,
k=/sw|nw|w/.test(c);c=/nw|ne|n/.test(c);if(g&&k)b.left=i-a.minWidth;if(d&&k)b.left=i-a.maxWidth;if(h&&c)b.top=j-a.minHeight;if(f&&c)b.top=j-a.maxHeight;if((a=!b.width&&!b.height)&&!b.left&&b.top)b.top=null;else if(a&&!b.top&&b.left)b.left=null;return b},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var b=this.helper||this.element,a=0;a<this._proportionallyResizeElements.length;a++){var c=this._proportionallyResizeElements[a];if(!this.borderDif){var d=[c.css("borderTopWidth"),
c.css("borderRightWidth"),c.css("borderBottomWidth"),c.css("borderLeftWidth")],f=[c.css("paddingTop"),c.css("paddingRight"),c.css("paddingBottom"),c.css("paddingLeft")];this.borderDif=e.map(d,function(g,h){g=parseInt(g,10)||0;h=parseInt(f[h],10)||0;return g+h})}e.browser.msie&&(e(b).is(":hidden")||e(b).parents(":hidden").length)||c.css({height:b.height()-this.borderDif[0]-this.borderDif[2]||0,width:b.width()-this.borderDif[1]-this.borderDif[3]||0})}},_renderProxy:function(){var b=this.options;this.elementOffset=
this.element.offset();if(this._helper){this.helper=this.helper||e('<div style="overflow:hidden;"></div>');var a=e.browser.msie&&e.browser.version<7,c=a?1:0;a=a?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+a,height:this.element.outerHeight()+a,position:"absolute",left:this.elementOffset.left-c+"px",top:this.elementOffset.top-c+"px",zIndex:++b.zIndex});this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(b,a){return{width:this.originalSize.width+
a}},w:function(b,a){return{left:this.originalPosition.left+a,width:this.originalSize.width-a}},n:function(b,a,c){return{top:this.originalPosition.top+c,height:this.originalSize.height-c}},s:function(b,a,c){return{height:this.originalSize.height+c}},se:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,a,c]))},sw:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,a,c]))},ne:function(b,a,c){return e.extend(this._change.n.apply(this,
arguments),this._change.e.apply(this,[b,a,c]))},nw:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,a,c]))}},_propagate:function(b,a){e.ui.plugin.call(this,b,[a,this.ui()]);b!="resize"&&this._trigger(b,a,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});e.extend(e.ui.resizable,
{version:"1.8.6"});e.ui.plugin.add("resizable","alsoResize",{start:function(){var b=e(this).data("resizable").options,a=function(c){e(c).each(function(){var d=e(this);d.data("resizable-alsoresize",{width:parseInt(d.width(),10),height:parseInt(d.height(),10),left:parseInt(d.css("left"),10),top:parseInt(d.css("top"),10),position:d.css("position")})})};if(typeof b.alsoResize=="object"&&!b.alsoResize.parentNode)if(b.alsoResize.length){b.alsoResize=b.alsoResize[0];a(b.alsoResize)}else e.each(b.alsoResize,
function(c){a(c)});else a(b.alsoResize)},resize:function(b,a){var c=e(this).data("resizable");b=c.options;var d=c.originalSize,f=c.originalPosition,g={height:c.size.height-d.height||0,width:c.size.width-d.width||0,top:c.position.top-f.top||0,left:c.position.left-f.left||0},h=function(i,j){e(i).each(function(){var k=e(this),q=e(this).data("resizable-alsoresize"),p={},r=j&&j.length?j:k.parents(a.originalElement[0]).length?["width","height"]:["width","height","top","left"];e.each(r,function(n,o){if((n=
(q[o]||0)+(g[o]||0))&&n>=0)p[o]=n||null});if(e.browser.opera&&/relative/.test(k.css("position"))){c._revertToRelativePosition=true;k.css({position:"absolute",top:"auto",left:"auto"})}k.css(p)})};typeof b.alsoResize=="object"&&!b.alsoResize.nodeType?e.each(b.alsoResize,function(i,j){h(i,j)}):h(b.alsoResize)},stop:function(){var b=e(this).data("resizable"),a=b.options,c=function(d){e(d).each(function(){var f=e(this);f.css({position:f.data("resizable-alsoresize").position})})};if(b._revertToRelativePosition){b._revertToRelativePosition=
false;typeof a.alsoResize=="object"&&!a.alsoResize.nodeType?e.each(a.alsoResize,function(d){c(d)}):c(a.alsoResize)}e(this).removeData("resizable-alsoresize")}});e.ui.plugin.add("resizable","animate",{stop:function(b){var a=e(this).data("resizable"),c=a.options,d=a._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName),g=f&&e.ui.hasScroll(d[0],"left")?0:a.sizeDiff.height;f={width:a.size.width-(f?0:a.sizeDiff.width),height:a.size.height-g};g=parseInt(a.element.css("left"),10)+(a.position.left-
a.originalPosition.left)||null;var h=parseInt(a.element.css("top"),10)+(a.position.top-a.originalPosition.top)||null;a.element.animate(e.extend(f,h&&g?{top:h,left:g}:{}),{duration:c.animateDuration,easing:c.animateEasing,step:function(){var i={width:parseInt(a.element.css("width"),10),height:parseInt(a.element.css("height"),10),top:parseInt(a.element.css("top"),10),left:parseInt(a.element.css("left"),10)};d&&d.length&&e(d[0]).css({width:i.width,height:i.height});a._updateCache(i);a._propagate("resize",
b)}})}});e.ui.plugin.add("resizable","containment",{start:function(){var b=e(this).data("resizable"),a=b.element,c=b.options.containment;if(a=c instanceof e?c.get(0):/parent/.test(c)?a.parent().get(0):c){b.containerElement=e(a);if(/document/.test(c)||c==document){b.containerOffset={left:0,top:0};b.containerPosition={left:0,top:0};b.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight}}else{var d=e(a),f=[];e(["Top",
"Right","Left","Bottom"]).each(function(i,j){f[i]=m(d.css("padding"+j))});b.containerOffset=d.offset();b.containerPosition=d.position();b.containerSize={height:d.innerHeight()-f[3],width:d.innerWidth()-f[1]};c=b.containerOffset;var g=b.containerSize.height,h=b.containerSize.width;h=e.ui.hasScroll(a,"left")?a.scrollWidth:h;g=e.ui.hasScroll(a)?a.scrollHeight:g;b.parentData={element:a,left:c.left,top:c.top,width:h,height:g}}}},resize:function(b){var a=e(this).data("resizable"),c=a.options,d=a.containerOffset,
f=a.position;b=a._aspectRatio||b.shiftKey;var g={top:0,left:0},h=a.containerElement;if(h[0]!=document&&/static/.test(h.css("position")))g=d;if(f.left<(a._helper?d.left:0)){a.size.width+=a._helper?a.position.left-d.left:a.position.left-g.left;if(b)a.size.height=a.size.width/c.aspectRatio;a.position.left=c.helper?d.left:0}if(f.top<(a._helper?d.top:0)){a.size.height+=a._helper?a.position.top-d.top:a.position.top;if(b)a.size.width=a.size.height*c.aspectRatio;a.position.top=a._helper?d.top:0}a.offset.left=
a.parentData.left+a.position.left;a.offset.top=a.parentData.top+a.position.top;c=Math.abs((a._helper?a.offset.left-g.left:a.offset.left-g.left)+a.sizeDiff.width);d=Math.abs((a._helper?a.offset.top-g.top:a.offset.top-d.top)+a.sizeDiff.height);f=a.containerElement.get(0)==a.element.parent().get(0);g=/relative|absolute/.test(a.containerElement.css("position"));if(f&&g)c-=a.parentData.left;if(c+a.size.width>=a.parentData.width){a.size.width=a.parentData.width-c;if(b)a.size.height=a.size.width/a.aspectRatio}if(d+
a.size.height>=a.parentData.height){a.size.height=a.parentData.height-d;if(b)a.size.width=a.size.height*a.aspectRatio}},stop:function(){var b=e(this).data("resizable"),a=b.options,c=b.containerOffset,d=b.containerPosition,f=b.containerElement,g=e(b.helper),h=g.offset(),i=g.outerWidth()-b.sizeDiff.width;g=g.outerHeight()-b.sizeDiff.height;b._helper&&!a.animate&&/relative/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g});b._helper&&!a.animate&&/static/.test(f.css("position"))&&
e(this).css({left:h.left-d.left-c.left,width:i,height:g})}});e.ui.plugin.add("resizable","ghost",{start:function(){var b=e(this).data("resizable"),a=b.options,c=b.size;b.ghost=b.originalElement.clone();b.ghost.css({opacity:0.25,display:"block",position:"relative",height:c.height,width:c.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof a.ghost=="string"?a.ghost:"");b.ghost.appendTo(b.helper)},resize:function(){var b=e(this).data("resizable");b.ghost&&b.ghost.css({position:"relative",
height:b.size.height,width:b.size.width})},stop:function(){var b=e(this).data("resizable");b.ghost&&b.helper&&b.helper.get(0).removeChild(b.ghost.get(0))}});e.ui.plugin.add("resizable","grid",{resize:function(){var b=e(this).data("resizable"),a=b.options,c=b.size,d=b.originalSize,f=b.originalPosition,g=b.axis;a.grid=typeof a.grid=="number"?[a.grid,a.grid]:a.grid;var h=Math.round((c.width-d.width)/(a.grid[0]||1))*(a.grid[0]||1);a=Math.round((c.height-d.height)/(a.grid[1]||1))*(a.grid[1]||1);if(/^(se|s|e)$/.test(g)){b.size.width=
d.width+h;b.size.height=d.height+a}else if(/^(ne)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}else{if(/^(sw)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a}else{b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}b.position.left=f.left-h}}});var m=function(b){return parseInt(b,10)||0},l=function(b){return!isNaN(parseInt(b,10))}})(jQuery);
;/*
 * jQuery UI Selectable 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Selectables
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.mouse.js
 *	jquery.ui.widget.js
 */
(function(e){e.widget("ui.selectable",e.ui.mouse,{options:{appendTo:"body",autoRefresh:true,distance:0,filter:"*",tolerance:"touch"},_create:function(){var c=this;this.element.addClass("ui-selectable");this.dragged=false;var f;this.refresh=function(){f=e(c.options.filter,c.element[0]);f.each(function(){var d=e(this),b=d.offset();e.data(this,"selectable-item",{element:this,$element:d,left:b.left,top:b.top,right:b.left+d.outerWidth(),bottom:b.top+d.outerHeight(),startselected:false,selected:d.hasClass("ui-selected"),
selecting:d.hasClass("ui-selecting"),unselecting:d.hasClass("ui-unselecting")})})};this.refresh();this.selectees=f.addClass("ui-selectee");this._mouseInit();this.helper=e("<div class='ui-selectable-helper'></div>")},destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item");this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable");this._mouseDestroy();return this},_mouseStart:function(c){var f=this;this.opos=[c.pageX,
c.pageY];if(!this.options.disabled){var d=this.options;this.selectees=e(d.filter,this.element[0]);this._trigger("start",c);e(d.appendTo).append(this.helper);this.helper.css({left:c.clientX,top:c.clientY,width:0,height:0});d.autoRefresh&&this.refresh();this.selectees.filter(".ui-selected").each(function(){var b=e.data(this,"selectable-item");b.startselected=true;if(!c.metaKey){b.$element.removeClass("ui-selected");b.selected=false;b.$element.addClass("ui-unselecting");b.unselecting=true;f._trigger("unselecting",
c,{unselecting:b.element})}});e(c.target).parents().andSelf().each(function(){var b=e.data(this,"selectable-item");if(b){var g=!c.metaKey||!b.$element.hasClass("ui-selected");b.$element.removeClass(g?"ui-unselecting":"ui-selected").addClass(g?"ui-selecting":"ui-unselecting");b.unselecting=!g;b.selecting=g;(b.selected=g)?f._trigger("selecting",c,{selecting:b.element}):f._trigger("unselecting",c,{unselecting:b.element});return false}})}},_mouseDrag:function(c){var f=this;this.dragged=true;if(!this.options.disabled){var d=
this.options,b=this.opos[0],g=this.opos[1],h=c.pageX,i=c.pageY;if(b>h){var j=h;h=b;b=j}if(g>i){j=i;i=g;g=j}this.helper.css({left:b,top:g,width:h-b,height:i-g});this.selectees.each(function(){var a=e.data(this,"selectable-item");if(!(!a||a.element==f.element[0])){var k=false;if(d.tolerance=="touch")k=!(a.left>h||a.right<b||a.top>i||a.bottom<g);else if(d.tolerance=="fit")k=a.left>b&&a.right<h&&a.top>g&&a.bottom<i;if(k){if(a.selected){a.$element.removeClass("ui-selected");a.selected=false}if(a.unselecting){a.$element.removeClass("ui-unselecting");
a.unselecting=false}if(!a.selecting){a.$element.addClass("ui-selecting");a.selecting=true;f._trigger("selecting",c,{selecting:a.element})}}else{if(a.selecting)if(c.metaKey&&a.startselected){a.$element.removeClass("ui-selecting");a.selecting=false;a.$element.addClass("ui-selected");a.selected=true}else{a.$element.removeClass("ui-selecting");a.selecting=false;if(a.startselected){a.$element.addClass("ui-unselecting");a.unselecting=true}f._trigger("unselecting",c,{unselecting:a.element})}if(a.selected)if(!c.metaKey&&
!a.startselected){a.$element.removeClass("ui-selected");a.selected=false;a.$element.addClass("ui-unselecting");a.unselecting=true;f._trigger("unselecting",c,{unselecting:a.element})}}}});return false}},_mouseStop:function(c){var f=this;this.dragged=false;e(".ui-unselecting",this.element[0]).each(function(){var d=e.data(this,"selectable-item");d.$element.removeClass("ui-unselecting");d.unselecting=false;d.startselected=false;f._trigger("unselected",c,{unselected:d.element})});e(".ui-selecting",this.element[0]).each(function(){var d=
e.data(this,"selectable-item");d.$element.removeClass("ui-selecting").addClass("ui-selected");d.selecting=false;d.selected=true;d.startselected=true;f._trigger("selected",c,{selected:d.element})});this._trigger("stop",c);this.helper.remove();return false}});e.extend(e.ui.selectable,{version:"1.8.6"})})(jQuery);
;/*
 * jQuery UI Sortable 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Sortables
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.mouse.js
 *	jquery.ui.widget.js
 */
(function(d){d.widget("ui.sortable",d.ui.mouse,{widgetEventPrefix:"sort",options:{appendTo:"parent",axis:false,connectWith:false,containment:false,cursor:"auto",cursorAt:false,dropOnEmpty:true,forcePlaceholderSize:false,forceHelperSize:false,grid:false,handle:false,helper:"original",items:"> *",opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1E3},_create:function(){this.containerCache={};this.element.addClass("ui-sortable");
this.refresh();this.floating=this.items.length?/left|right/.test(this.items[0].item.css("float")):false;this.offset=this.element.offset();this._mouseInit()},destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").removeData("sortable").unbind(".sortable");this._mouseDestroy();for(var a=this.items.length-1;a>=0;a--)this.items[a].item.removeData("sortable-item");return this},_setOption:function(a,b){if(a==="disabled"){this.options[a]=b;this.widget()[b?"addClass":"removeClass"]("ui-sortable-disabled")}else d.Widget.prototype._setOption.apply(this,
arguments)},_mouseCapture:function(a,b){if(this.reverting)return false;if(this.options.disabled||this.options.type=="static")return false;this._refreshItems(a);var c=null,e=this;d(a.target).parents().each(function(){if(d.data(this,"sortable-item")==e){c=d(this);return false}});if(d.data(a.target,"sortable-item")==e)c=d(a.target);if(!c)return false;if(this.options.handle&&!b){var f=false;d(this.options.handle,c).find("*").andSelf().each(function(){if(this==a.target)f=true});if(!f)return false}this.currentItem=
c;this._removeCurrentsFromItems();return true},_mouseStart:function(a,b,c){b=this.options;var e=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(a);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");d.extend(this.offset,
{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};this.helper[0]!=this.currentItem[0]&&this.currentItem.hide();this._createPlaceholder();b.containment&&this._setContainment();
if(b.cursor){if(d("body").css("cursor"))this._storedCursor=d("body").css("cursor");d("body").css("cursor",b.cursor)}if(b.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");this.helper.css("opacity",b.opacity)}if(b.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");this.helper.css("zIndex",b.zIndex)}if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML")this.overflowOffset=this.scrollParent.offset();this._trigger("start",
a,this._uiHash());this._preserveHelperProportions||this._cacheHelperProportions();if(!c)for(c=this.containers.length-1;c>=0;c--)this.containers[c]._trigger("activate",a,e._uiHash(this));if(d.ui.ddmanager)d.ui.ddmanager.current=this;d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(a);return true},_mouseDrag:function(a){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");
if(!this.lastPositionAbs)this.lastPositionAbs=this.positionAbs;if(this.options.scroll){var b=this.options,c=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){if(this.overflowOffset.top+this.scrollParent[0].offsetHeight-a.pageY<b.scrollSensitivity)this.scrollParent[0].scrollTop=c=this.scrollParent[0].scrollTop+b.scrollSpeed;else if(a.pageY-this.overflowOffset.top<b.scrollSensitivity)this.scrollParent[0].scrollTop=c=this.scrollParent[0].scrollTop-b.scrollSpeed;if(this.overflowOffset.left+
this.scrollParent[0].offsetWidth-a.pageX<b.scrollSensitivity)this.scrollParent[0].scrollLeft=c=this.scrollParent[0].scrollLeft+b.scrollSpeed;else if(a.pageX-this.overflowOffset.left<b.scrollSensitivity)this.scrollParent[0].scrollLeft=c=this.scrollParent[0].scrollLeft-b.scrollSpeed}else{if(a.pageY-d(document).scrollTop()<b.scrollSensitivity)c=d(document).scrollTop(d(document).scrollTop()-b.scrollSpeed);else if(d(window).height()-(a.pageY-d(document).scrollTop())<b.scrollSensitivity)c=d(document).scrollTop(d(document).scrollTop()+
b.scrollSpeed);if(a.pageX-d(document).scrollLeft()<b.scrollSensitivity)c=d(document).scrollLeft(d(document).scrollLeft()-b.scrollSpeed);else if(d(window).width()-(a.pageX-d(document).scrollLeft())<b.scrollSensitivity)c=d(document).scrollLeft(d(document).scrollLeft()+b.scrollSpeed)}c!==false&&d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a)}this.positionAbs=this._convertPositionTo("absolute");if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+
"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";for(b=this.items.length-1;b>=0;b--){c=this.items[b];var e=c.item[0],f=this._intersectsWithPointer(c);if(f)if(e!=this.currentItem[0]&&this.placeholder[f==1?"next":"prev"]()[0]!=e&&!d.ui.contains(this.placeholder[0],e)&&(this.options.type=="semi-dynamic"?!d.ui.contains(this.element[0],e):true)){this.direction=f==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(c))this._rearrange(a,
c);else break;this._trigger("change",a,this._uiHash());break}}this._contactContainers(a);d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);this._trigger("sort",a,this._uiHash());this.lastPositionAbs=this.positionAbs;return false},_mouseStop:function(a,b){if(a){d.ui.ddmanager&&!this.options.dropBehaviour&&d.ui.ddmanager.drop(this,a);if(this.options.revert){var c=this;b=c.placeholder.offset();c.reverting=true;d(this.helper).animate({left:b.left-this.offset.parent.left-c.margins.left+(this.offsetParent[0]==
document.body?0:this.offsetParent[0].scrollLeft),top:b.top-this.offset.parent.top-c.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){c._clear(a)})}else this._clear(a,b);return false}},cancel:function(){var a=this;if(this.dragging){this._mouseUp();this.options.helper=="original"?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var b=this.containers.length-1;b>=0;b--){this.containers[b]._trigger("deactivate",
null,a._uiHash(this));if(this.containers[b].containerCache.over){this.containers[b]._trigger("out",null,a._uiHash(this));this.containers[b].containerCache.over=0}}}this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]);this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove();d.extend(this,{helper:null,dragging:false,reverting:false,_noFinalSort:null});this.domPosition.prev?d(this.domPosition.prev).after(this.currentItem):
d(this.domPosition.parent).prepend(this.currentItem);return this},serialize:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};d(b).each(function(){var e=(d(a.item||this).attr(a.attribute||"id")||"").match(a.expression||/(.+)[-=_](.+)/);if(e)c.push((a.key||e[1]+"[]")+"="+(a.key&&a.expression?e[1]:e[2]))});!c.length&&a.key&&c.push(a.key+"=");return c.join("&")},toArray:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};b.each(function(){c.push(d(a.item||this).attr(a.attribute||
"id")||"")});return c},_intersectsWith:function(a){var b=this.positionAbs.left,c=b+this.helperProportions.width,e=this.positionAbs.top,f=e+this.helperProportions.height,g=a.left,h=g+a.width,i=a.top,k=i+a.height,j=this.offset.click.top,l=this.offset.click.left;j=e+j>i&&e+j<k&&b+l>g&&b+l<h;return this.options.tolerance=="pointer"||this.options.forcePointerForContainers||this.options.tolerance!="pointer"&&this.helperProportions[this.floating?"width":"height"]>a[this.floating?"width":"height"]?j:g<b+
this.helperProportions.width/2&&c-this.helperProportions.width/2<h&&i<e+this.helperProportions.height/2&&f-this.helperProportions.height/2<k},_intersectsWithPointer:function(a){var b=d.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,a.top,a.height);a=d.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,a.left,a.width);b=b&&a;a=this._getDragVerticalDirection();var c=this._getDragHorizontalDirection();if(!b)return false;return this.floating?c&&c=="right"||a=="down"?2:1:a&&(a=="down"?
2:1)},_intersectsWithSides:function(a){var b=d.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,a.top+a.height/2,a.height);a=d.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,a.left+a.width/2,a.width);var c=this._getDragVerticalDirection(),e=this._getDragHorizontalDirection();return this.floating&&e?e=="right"&&a||e=="left"&&!a:c&&(c=="down"&&b||c=="up"&&!b)},_getDragVerticalDirection:function(){var a=this.positionAbs.top-this.lastPositionAbs.top;return a!=0&&(a>0?"down":"up")},
_getDragHorizontalDirection:function(){var a=this.positionAbs.left-this.lastPositionAbs.left;return a!=0&&(a>0?"right":"left")},refresh:function(a){this._refreshItems(a);this.refreshPositions();return this},_connectWith:function(){var a=this.options;return a.connectWith.constructor==String?[a.connectWith]:a.connectWith},_getItemsAsjQuery:function(a){var b=[],c=[],e=this._connectWith();if(e&&a)for(a=e.length-1;a>=0;a--)for(var f=d(e[a]),g=f.length-1;g>=0;g--){var h=d.data(f[g],"sortable");if(h&&h!=
this&&!h.options.disabled)c.push([d.isFunction(h.options.items)?h.options.items.call(h.element):d(h.options.items,h.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),h])}c.push([d.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):d(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]);for(a=c.length-1;a>=0;a--)c[a][0].each(function(){b.push(this)});return d(b)},_removeCurrentsFromItems:function(){for(var a=
this.currentItem.find(":data(sortable-item)"),b=0;b<this.items.length;b++)for(var c=0;c<a.length;c++)a[c]==this.items[b].item[0]&&this.items.splice(b,1)},_refreshItems:function(a){this.items=[];this.containers=[this];var b=this.items,c=[[d.isFunction(this.options.items)?this.options.items.call(this.element[0],a,{item:this.currentItem}):d(this.options.items,this.element),this]],e=this._connectWith();if(e)for(var f=e.length-1;f>=0;f--)for(var g=d(e[f]),h=g.length-1;h>=0;h--){var i=d.data(g[h],"sortable");
if(i&&i!=this&&!i.options.disabled){c.push([d.isFunction(i.options.items)?i.options.items.call(i.element[0],a,{item:this.currentItem}):d(i.options.items,i.element),i]);this.containers.push(i)}}for(f=c.length-1;f>=0;f--){a=c[f][1];e=c[f][0];h=0;for(g=e.length;h<g;h++){i=d(e[h]);i.data("sortable-item",a);b.push({item:i,instance:a,width:0,height:0,left:0,top:0})}}},refreshPositions:function(a){if(this.offsetParent&&this.helper)this.offset.parent=this._getParentOffset();for(var b=this.items.length-1;b>=
0;b--){var c=this.items[b],e=this.options.toleranceElement?d(this.options.toleranceElement,c.item):c.item;if(!a){c.width=e.outerWidth();c.height=e.outerHeight()}e=e.offset();c.left=e.left;c.top=e.top}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(b=this.containers.length-1;b>=0;b--){e=this.containers[b].element.offset();this.containers[b].containerCache.left=e.left;this.containers[b].containerCache.top=e.top;this.containers[b].containerCache.width=
this.containers[b].element.outerWidth();this.containers[b].containerCache.height=this.containers[b].element.outerHeight()}return this},_createPlaceholder:function(a){var b=a||this,c=b.options;if(!c.placeholder||c.placeholder.constructor==String){var e=c.placeholder;c.placeholder={element:function(){var f=d(document.createElement(b.currentItem[0].nodeName)).addClass(e||b.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];if(!e)f.style.visibility="hidden";return f},
update:function(f,g){if(!(e&&!c.forcePlaceholderSize)){g.height()||g.height(b.currentItem.innerHeight()-parseInt(b.currentItem.css("paddingTop")||0,10)-parseInt(b.currentItem.css("paddingBottom")||0,10));g.width()||g.width(b.currentItem.innerWidth()-parseInt(b.currentItem.css("paddingLeft")||0,10)-parseInt(b.currentItem.css("paddingRight")||0,10))}}}}b.placeholder=d(c.placeholder.element.call(b.element,b.currentItem));b.currentItem.after(b.placeholder);c.placeholder.update(b,b.placeholder)},_contactContainers:function(a){for(var b=
null,c=null,e=this.containers.length-1;e>=0;e--)if(!d.ui.contains(this.currentItem[0],this.containers[e].element[0]))if(this._intersectsWith(this.containers[e].containerCache)){if(!(b&&d.ui.contains(this.containers[e].element[0],b.element[0]))){b=this.containers[e];c=e}}else if(this.containers[e].containerCache.over){this.containers[e]._trigger("out",a,this._uiHash(this));this.containers[e].containerCache.over=0}if(b)if(this.containers.length===1){this.containers[c]._trigger("over",a,this._uiHash(this));
this.containers[c].containerCache.over=1}else if(this.currentContainer!=this.containers[c]){b=1E4;e=null;for(var f=this.positionAbs[this.containers[c].floating?"left":"top"],g=this.items.length-1;g>=0;g--)if(d.ui.contains(this.containers[c].element[0],this.items[g].item[0])){var h=this.items[g][this.containers[c].floating?"left":"top"];if(Math.abs(h-f)<b){b=Math.abs(h-f);e=this.items[g]}}if(e||this.options.dropOnEmpty){this.currentContainer=this.containers[c];e?this._rearrange(a,e,null,true):this._rearrange(a,
null,this.containers[c].element,true);this._trigger("change",a,this._uiHash());this.containers[c]._trigger("change",a,this._uiHash(this));this.options.placeholder.update(this.currentContainer,this.placeholder);this.containers[c]._trigger("over",a,this._uiHash(this));this.containers[c].containerCache.over=1}}},_createHelper:function(a){var b=this.options;a=d.isFunction(b.helper)?d(b.helper.apply(this.element[0],[a,this.currentItem])):b.helper=="clone"?this.currentItem.clone():this.currentItem;a.parents("body").length||
d(b.appendTo!="parent"?b.appendTo:this.currentItem[0].parentNode)[0].appendChild(a[0]);if(a[0]==this.currentItem[0])this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")};if(a[0].style.width==""||b.forceHelperSize)a.width(this.currentItem.width());if(a[0].style.height==""||b.forceHelperSize)a.height(this.currentItem.height());return a},_adjustOffsetFromHelper:function(a){if(typeof a==
"string")a=a.split(" ");if(d.isArray(a))a={left:+a[0],top:+a[1]||0};if("left"in a)this.offset.click.left=a.left+this.margins.left;if("right"in a)this.offset.click.left=this.helperProportions.width-a.right+this.margins.left;if("top"in a)this.offset.click.top=a.top+this.margins.top;if("bottom"in a)this.offset.click.top=this.helperProportions.height-a.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var a=this.offsetParent.offset();if(this.cssPosition==
"absolute"&&this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0])){a.left+=this.scrollParent.scrollLeft();a.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&d.browser.msie)a={top:0,left:0};return{top:a.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:a.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition==
"relative"){var a=this.currentItem.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},
_setContainment:function(){var a=this.options;if(a.containment=="parent")a.containment=this.helper[0].parentNode;if(a.containment=="document"||a.containment=="window")this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,d(a.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(d(a.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-
this.margins.top];if(!/^(document|window|parent)$/.test(a.containment)){var b=d(a.containment)[0];a=d(a.containment).offset();var c=d(b).css("overflow")!="hidden";this.containment=[a.left+(parseInt(d(b).css("borderLeftWidth"),10)||0)+(parseInt(d(b).css("paddingLeft"),10)||0)-this.margins.left,a.top+(parseInt(d(b).css("borderTopWidth"),10)||0)+(parseInt(d(b).css("paddingTop"),10)||0)-this.margins.top,a.left+(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(d(b).css("borderLeftWidth"),
10)||0)-(parseInt(d(b).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,a.top+(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(d(b).css("borderTopWidth"),10)||0)-(parseInt(d(b).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}},_convertPositionTo:function(a,b){if(!b)b=this.position;a=a=="absolute"?1:-1;var c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?
this.offsetParent:this.scrollParent,e=/(html|body)/i.test(c[0].tagName);return{top:b.top+this.offset.relative.top*a+this.offset.parent.top*a-(d.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:c.scrollTop())*a),left:b.left+this.offset.relative.left*a+this.offset.parent.left*a-(d.browser.safari&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:c.scrollLeft())*a)}},_generatePosition:function(a){var b=
this.options,c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,e=/(html|body)/i.test(c[0].tagName);if(this.cssPosition=="relative"&&!(this.scrollParent[0]!=document&&this.scrollParent[0]!=this.offsetParent[0]))this.offset.relative=this._getRelativeOffset();var f=a.pageX,g=a.pageY;if(this.originalPosition){if(this.containment){if(a.pageX-this.offset.click.left<this.containment[0])f=this.containment[0]+
this.offset.click.left;if(a.pageY-this.offset.click.top<this.containment[1])g=this.containment[1]+this.offset.click.top;if(a.pageX-this.offset.click.left>this.containment[2])f=this.containment[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>this.containment[3])g=this.containment[3]+this.offset.click.top}if(b.grid){g=this.originalPageY+Math.round((g-this.originalPageY)/b.grid[1])*b.grid[1];g=this.containment?!(g-this.offset.click.top<this.containment[1]||g-this.offset.click.top>this.containment[3])?
g:!(g-this.offset.click.top<this.containment[1])?g-b.grid[1]:g+b.grid[1]:g;f=this.originalPageX+Math.round((f-this.originalPageX)/b.grid[0])*b.grid[0];f=this.containment?!(f-this.offset.click.left<this.containment[0]||f-this.offset.click.left>this.containment[2])?f:!(f-this.offset.click.left<this.containment[0])?f-b.grid[0]:f+b.grid[0]:f}}return{top:g-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(d.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():
e?0:c.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(d.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:c.scrollLeft())}},_rearrange:function(a,b,c,e){c?c[0].appendChild(this.placeholder[0]):b.item[0].parentNode.insertBefore(this.placeholder[0],this.direction=="down"?b.item[0]:b.item[0].nextSibling);this.counter=this.counter?++this.counter:1;var f=this,g=this.counter;window.setTimeout(function(){g==
f.counter&&f.refreshPositions(!e)},0)},_clear:function(a,b){this.reverting=false;var c=[];!this._noFinalSort&&this.currentItem[0].parentNode&&this.placeholder.before(this.currentItem);this._noFinalSort=null;if(this.helper[0]==this.currentItem[0]){for(var e in this._storedCSS)if(this._storedCSS[e]=="auto"||this._storedCSS[e]=="static")this._storedCSS[e]="";this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();this.fromOutside&&!b&&c.push(function(f){this._trigger("receive",
f,this._uiHash(this.fromOutside))});if((this.fromOutside||this.domPosition.prev!=this.currentItem.prev().not(".ui-sortable-helper")[0]||this.domPosition.parent!=this.currentItem.parent()[0])&&!b)c.push(function(f){this._trigger("update",f,this._uiHash())});if(!d.ui.contains(this.element[0],this.currentItem[0])){b||c.push(function(f){this._trigger("remove",f,this._uiHash())});for(e=this.containers.length-1;e>=0;e--)if(d.ui.contains(this.containers[e].element[0],this.currentItem[0])&&!b){c.push(function(f){return function(g){f._trigger("receive",
g,this._uiHash(this))}}.call(this,this.containers[e]));c.push(function(f){return function(g){f._trigger("update",g,this._uiHash(this))}}.call(this,this.containers[e]))}}for(e=this.containers.length-1;e>=0;e--){b||c.push(function(f){return function(g){f._trigger("deactivate",g,this._uiHash(this))}}.call(this,this.containers[e]));if(this.containers[e].containerCache.over){c.push(function(f){return function(g){f._trigger("out",g,this._uiHash(this))}}.call(this,this.containers[e]));this.containers[e].containerCache.over=
0}}this._storedCursor&&d("body").css("cursor",this._storedCursor);this._storedOpacity&&this.helper.css("opacity",this._storedOpacity);if(this._storedZIndex)this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex);this.dragging=false;if(this.cancelHelperRemoval){if(!b){this._trigger("beforeStop",a,this._uiHash());for(e=0;e<c.length;e++)c[e].call(this,a);this._trigger("stop",a,this._uiHash())}return false}b||this._trigger("beforeStop",a,this._uiHash());this.placeholder[0].parentNode.removeChild(this.placeholder[0]);
this.helper[0]!=this.currentItem[0]&&this.helper.remove();this.helper=null;if(!b){for(e=0;e<c.length;e++)c[e].call(this,a);this._trigger("stop",a,this._uiHash())}this.fromOutside=false;return true},_trigger:function(){d.Widget.prototype._trigger.apply(this,arguments)===false&&this.cancel()},_uiHash:function(a){var b=a||this;return{helper:b.helper,placeholder:b.placeholder||d([]),position:b.position,originalPosition:b.originalPosition,offset:b.positionAbs,item:b.currentItem,sender:a?a.element:null}}});
d.extend(d.ui.sortable,{version:"1.8.6"})})(jQuery);
;/*
 * jQuery UI Accordion 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Accordion
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.widget.js
 */
(function(c){c.widget("ui.accordion",{options:{active:0,animated:"slide",autoHeight:true,clearStyle:false,collapsible:false,event:"click",fillSpace:false,header:"> li > :first-child,> :not(li):even",icons:{header:"ui-icon-triangle-1-e",headerSelected:"ui-icon-triangle-1-s"},navigation:false,navigationFilter:function(){return this.href.toLowerCase()===location.href.toLowerCase()}},_create:function(){var a=this,b=a.options;a.running=0;a.element.addClass("ui-accordion ui-widget ui-helper-reset").children("li").addClass("ui-accordion-li-fix");
a.headers=a.element.find(b.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all").bind("mouseenter.accordion",function(){b.disabled||c(this).addClass("ui-state-hover")}).bind("mouseleave.accordion",function(){b.disabled||c(this).removeClass("ui-state-hover")}).bind("focus.accordion",function(){b.disabled||c(this).addClass("ui-state-focus")}).bind("blur.accordion",function(){b.disabled||c(this).removeClass("ui-state-focus")});a.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");
if(b.navigation){var d=a.element.find("a").filter(b.navigationFilter).eq(0);if(d.length){var f=d.closest(".ui-accordion-header");a.active=f.length?f:d.closest(".ui-accordion-content").prev()}}a.active=a._findActive(a.active||b.active).addClass("ui-state-default ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top");a.active.next().addClass("ui-accordion-content-active");a._createIcons();a.resize();a.element.attr("role","tablist");a.headers.attr("role","tab").bind("keydown.accordion",
function(g){return a._keydown(g)}).next().attr("role","tabpanel");a.headers.not(a.active||"").attr({"aria-expanded":"false",tabIndex:-1}).next().hide();a.active.length?a.active.attr({"aria-expanded":"true",tabIndex:0}):a.headers.eq(0).attr("tabIndex",0);c.browser.safari||a.headers.find("a").attr("tabIndex",-1);b.event&&a.headers.bind(b.event.split(" ").join(".accordion ")+".accordion",function(g){a._clickHandler.call(a,g,this);g.preventDefault()})},_createIcons:function(){var a=this.options;if(a.icons){c("<span></span>").addClass("ui-icon "+
a.icons.header).prependTo(this.headers);this.active.children(".ui-icon").toggleClass(a.icons.header).toggleClass(a.icons.headerSelected);this.element.addClass("ui-accordion-icons")}},_destroyIcons:function(){this.headers.children(".ui-icon").remove();this.element.removeClass("ui-accordion-icons")},destroy:function(){var a=this.options;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role");this.headers.unbind(".accordion").removeClass("ui-accordion-header ui-accordion-disabled ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("tabIndex");
this.headers.find("a").removeAttr("tabIndex");this._destroyIcons();var b=this.headers.next().css("display","").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-accordion-disabled ui-state-disabled");if(a.autoHeight||a.fillHeight)b.css("height","");return c.Widget.prototype.destroy.call(this)},_setOption:function(a,b){c.Widget.prototype._setOption.apply(this,arguments);a=="active"&&this.activate(b);if(a=="icons"){this._destroyIcons();
b&&this._createIcons()}if(a=="disabled")this.headers.add(this.headers.next())[b?"addClass":"removeClass"]("ui-accordion-disabled ui-state-disabled")},_keydown:function(a){if(!(this.options.disabled||a.altKey||a.ctrlKey)){var b=c.ui.keyCode,d=this.headers.length,f=this.headers.index(a.target),g=false;switch(a.keyCode){case b.RIGHT:case b.DOWN:g=this.headers[(f+1)%d];break;case b.LEFT:case b.UP:g=this.headers[(f-1+d)%d];break;case b.SPACE:case b.ENTER:this._clickHandler({target:a.target},a.target);
a.preventDefault()}if(g){c(a.target).attr("tabIndex",-1);c(g).attr("tabIndex",0);g.focus();return false}return true}},resize:function(){var a=this.options,b;if(a.fillSpace){if(c.browser.msie){var d=this.element.parent().css("overflow");this.element.parent().css("overflow","hidden")}b=this.element.parent().height();c.browser.msie&&this.element.parent().css("overflow",d);this.headers.each(function(){b-=c(this).outerHeight(true)});this.headers.next().each(function(){c(this).height(Math.max(0,b-c(this).innerHeight()+
c(this).height()))}).css("overflow","auto")}else if(a.autoHeight){b=0;this.headers.next().each(function(){b=Math.max(b,c(this).height("").height())}).height(b)}return this},activate:function(a){this.options.active=a;a=this._findActive(a)[0];this._clickHandler({target:a},a);return this},_findActive:function(a){return a?typeof a==="number"?this.headers.filter(":eq("+a+")"):this.headers.not(this.headers.not(a)):a===false?c([]):this.headers.filter(":eq(0)")},_clickHandler:function(a,b){var d=this.options;
if(!d.disabled)if(a.target){a=c(a.currentTarget||b);b=a[0]===this.active[0];d.active=d.collapsible&&b?false:this.headers.index(a);if(!(this.running||!d.collapsible&&b)){this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);if(!b){a.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top").children(".ui-icon").removeClass(d.icons.header).addClass(d.icons.headerSelected);
a.next().addClass("ui-accordion-content-active")}h=a.next();f=this.active.next();g={options:d,newHeader:b&&d.collapsible?c([]):a,oldHeader:this.active,newContent:b&&d.collapsible?c([]):h,oldContent:f};d=this.headers.index(this.active[0])>this.headers.index(a[0]);this.active=b?c([]):a;this._toggle(h,f,g,b,d)}}else if(d.collapsible){this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);
this.active.next().addClass("ui-accordion-content-active");var f=this.active.next(),g={options:d,newHeader:c([]),oldHeader:d.active,newContent:c([]),oldContent:f},h=this.active=c([]);this._toggle(h,f,g)}},_toggle:function(a,b,d,f,g){var h=this,e=h.options;h.toShow=a;h.toHide=b;h.data=d;var j=function(){if(h)return h._completed.apply(h,arguments)};h._trigger("changestart",null,h.data);h.running=b.size()===0?a.size():b.size();if(e.animated){d={};d=e.collapsible&&f?{toShow:c([]),toHide:b,complete:j,
down:g,autoHeight:e.autoHeight||e.fillSpace}:{toShow:a,toHide:b,complete:j,down:g,autoHeight:e.autoHeight||e.fillSpace};if(!e.proxied)e.proxied=e.animated;if(!e.proxiedDuration)e.proxiedDuration=e.duration;e.animated=c.isFunction(e.proxied)?e.proxied(d):e.proxied;e.duration=c.isFunction(e.proxiedDuration)?e.proxiedDuration(d):e.proxiedDuration;f=c.ui.accordion.animations;var i=e.duration,k=e.animated;if(k&&!f[k]&&!c.easing[k])k="slide";f[k]||(f[k]=function(l){this.slide(l,{easing:k,duration:i||700})});
f[k](d)}else{if(e.collapsible&&f)a.toggle();else{b.hide();a.show()}j(true)}b.prev().attr({"aria-expanded":"false",tabIndex:-1}).blur();a.prev().attr({"aria-expanded":"true",tabIndex:0}).focus()},_completed:function(a){this.running=a?0:--this.running;if(!this.running){this.options.clearStyle&&this.toShow.add(this.toHide).css({height:"",overflow:""});this.toHide.removeClass("ui-accordion-content-active");this._trigger("change",null,this.data)}}});c.extend(c.ui.accordion,{version:"1.8.6",animations:{slide:function(a,
b){a=c.extend({easing:"swing",duration:300},a,b);if(a.toHide.size())if(a.toShow.size()){var d=a.toShow.css("overflow"),f=0,g={},h={},e;b=a.toShow;e=b[0].style.width;b.width(parseInt(b.parent().width(),10)-parseInt(b.css("paddingLeft"),10)-parseInt(b.css("paddingRight"),10)-(parseInt(b.css("borderLeftWidth"),10)||0)-(parseInt(b.css("borderRightWidth"),10)||0));c.each(["height","paddingTop","paddingBottom"],function(j,i){h[i]="hide";j=(""+c.css(a.toShow[0],i)).match(/^([\d+-.]+)(.*)$/);g[i]={value:j[1],
unit:j[2]||"px"}});a.toShow.css({height:0,overflow:"hidden"}).show();a.toHide.filter(":hidden").each(a.complete).end().filter(":visible").animate(h,{step:function(j,i){if(i.prop=="height")f=i.end-i.start===0?0:(i.now-i.start)/(i.end-i.start);a.toShow[0].style[i.prop]=f*g[i.prop].value+g[i.prop].unit},duration:a.duration,easing:a.easing,complete:function(){a.autoHeight||a.toShow.css("height","");a.toShow.css({width:e,overflow:d});a.complete()}})}else a.toHide.animate({height:"hide",paddingTop:"hide",
paddingBottom:"hide"},a);else a.toShow.animate({height:"show",paddingTop:"show",paddingBottom:"show"},a)},bounceslide:function(a){this.slide(a,{easing:a.down?"easeOutBounce":"swing",duration:a.down?1E3:200})}}})})(jQuery);
;/*
 * jQuery UI Autocomplete 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Autocomplete
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.widget.js
 *	jquery.ui.position.js
 */
(function(e){e.widget("ui.autocomplete",{options:{appendTo:"body",delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null},_create:function(){var a=this,b=this.element[0].ownerDocument,f;this.element.addClass("ui-autocomplete-input").attr("autocomplete","off").attr({role:"textbox","aria-autocomplete":"list","aria-haspopup":"true"}).bind("keydown.autocomplete",function(c){if(!(a.options.disabled||a.element.attr("readonly"))){f=false;var d=e.ui.keyCode;switch(c.keyCode){case d.PAGE_UP:a._move("previousPage",
c);break;case d.PAGE_DOWN:a._move("nextPage",c);break;case d.UP:a._move("previous",c);c.preventDefault();break;case d.DOWN:a._move("next",c);c.preventDefault();break;case d.ENTER:case d.NUMPAD_ENTER:if(a.menu.active){f=true;c.preventDefault()}case d.TAB:if(!a.menu.active)return;a.menu.select(c);break;case d.ESCAPE:a.element.val(a.term);a.close(c);break;default:clearTimeout(a.searching);a.searching=setTimeout(function(){if(a.term!=a.element.val()){a.selectedItem=null;a.search(null,c)}},a.options.delay);
break}}}).bind("keypress.autocomplete",function(c){if(f){f=false;c.preventDefault()}}).bind("focus.autocomplete",function(){if(!a.options.disabled){a.selectedItem=null;a.previous=a.element.val()}}).bind("blur.autocomplete",function(c){if(!a.options.disabled){clearTimeout(a.searching);a.closing=setTimeout(function(){a.close(c);a._change(c)},150)}});this._initSource();this.response=function(){return a._response.apply(a,arguments)};this.menu=e("<ul></ul>").addClass("ui-autocomplete").appendTo(e(this.options.appendTo||
"body",b)[0]).mousedown(function(c){var d=a.menu.element[0];e(c.target).closest(".ui-menu-item").length||setTimeout(function(){e(document).one("mousedown",function(g){g.target!==a.element[0]&&g.target!==d&&!e.ui.contains(d,g.target)&&a.close()})},1);setTimeout(function(){clearTimeout(a.closing)},13)}).menu({focus:function(c,d){d=d.item.data("item.autocomplete");false!==a._trigger("focus",c,{item:d})&&/^key/.test(c.originalEvent.type)&&a.element.val(d.value)},selected:function(c,d){d=d.item.data("item.autocomplete");
var g=a.previous;if(a.element[0]!==b.activeElement){a.element.focus();a.previous=g;setTimeout(function(){a.previous=g},1)}false!==a._trigger("select",c,{item:d})&&a.element.val(d.value);a.term=a.element.val();a.close(c);a.selectedItem=d},blur:function(){a.menu.element.is(":visible")&&a.element.val()!==a.term&&a.element.val(a.term)}}).zIndex(this.element.zIndex()+1).css({top:0,left:0}).hide().data("menu");e.fn.bgiframe&&this.menu.element.bgiframe()},destroy:function(){this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete").removeAttr("role").removeAttr("aria-autocomplete").removeAttr("aria-haspopup");
this.menu.element.remove();e.Widget.prototype.destroy.call(this)},_setOption:function(a,b){e.Widget.prototype._setOption.apply(this,arguments);a==="source"&&this._initSource();if(a==="appendTo")this.menu.element.appendTo(e(b||"body",this.element[0].ownerDocument)[0])},_initSource:function(){var a=this,b,f;if(e.isArray(this.options.source)){b=this.options.source;this.source=function(c,d){d(e.ui.autocomplete.filter(b,c.term))}}else if(typeof this.options.source==="string"){f=this.options.source;this.source=
function(c,d){a.xhr&&a.xhr.abort();a.xhr=e.getJSON(f,c,function(g,i,h){h===a.xhr&&d(g);a.xhr=null})}}else this.source=this.options.source},search:function(a,b){a=a!=null?a:this.element.val();this.term=this.element.val();if(a.length<this.options.minLength)return this.close(b);clearTimeout(this.closing);if(this._trigger("search",b)!==false)return this._search(a)},_search:function(a){this.element.addClass("ui-autocomplete-loading");this.source({term:a},this.response)},_response:function(a){if(a&&a.length){a=
this._normalize(a);this._suggest(a);this._trigger("open")}else this.close();this.element.removeClass("ui-autocomplete-loading")},close:function(a){clearTimeout(this.closing);if(this.menu.element.is(":visible")){this._trigger("close",a);this.menu.element.hide();this.menu.deactivate()}},_change:function(a){this.previous!==this.element.val()&&this._trigger("change",a,{item:this.selectedItem})},_normalize:function(a){if(a.length&&a[0].label&&a[0].value)return a;return e.map(a,function(b){if(typeof b===
"string")return{label:b,value:b};return e.extend({label:b.label||b.value,value:b.value||b.label},b)})},_suggest:function(a){this._renderMenu(this.menu.element.empty().zIndex(this.element.zIndex()+1),a);this.menu.deactivate();this.menu.refresh();this.menu.element.show().position(e.extend({of:this.element},this.options.position));this._resizeMenu()},_resizeMenu:function(){var a=this.menu.element;a.outerWidth(Math.max(a.width("").outerWidth(),this.element.outerWidth()))},_renderMenu:function(a,b){var f=
this;e.each(b,function(c,d){f._renderItem(a,d)})},_renderItem:function(a,b){return e("<li></li>").data("item.autocomplete",b).append(e("<a></a>").text(b.label)).appendTo(a)},_move:function(a,b){if(this.menu.element.is(":visible"))if(this.menu.first()&&/^previous/.test(a)||this.menu.last()&&/^next/.test(a)){this.element.val(this.term);this.menu.deactivate()}else this.menu[a](b);else this.search(null,b)},widget:function(){return this.menu.element}});e.extend(e.ui.autocomplete,{escapeRegex:function(a){return a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,
"\\$&")},filter:function(a,b){var f=new RegExp(e.ui.autocomplete.escapeRegex(b),"i");return e.grep(a,function(c){return f.test(c.label||c.value||c)})}})})(jQuery);
(function(e){e.widget("ui.menu",{_create:function(){var a=this;this.element.addClass("ui-menu ui-widget ui-widget-content ui-corner-all").attr({role:"listbox","aria-activedescendant":"ui-active-menuitem"}).click(function(b){if(e(b.target).closest(".ui-menu-item a").length){b.preventDefault();a.select(b)}});this.refresh()},refresh:function(){var a=this;this.element.children("li:not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","menuitem").children("a").addClass("ui-corner-all").attr("tabindex",
-1).mouseenter(function(b){a.activate(b,e(this).parent())}).mouseleave(function(){a.deactivate()})},activate:function(a,b){this.deactivate();if(this.hasScroll()){var f=b.offset().top-this.element.offset().top,c=this.element.attr("scrollTop"),d=this.element.height();if(f<0)this.element.attr("scrollTop",c+f);else f>=d&&this.element.attr("scrollTop",c+f-d+b.height())}this.active=b.eq(0).children("a").addClass("ui-state-hover").attr("id","ui-active-menuitem").end();this._trigger("focus",a,{item:b})},
deactivate:function(){if(this.active){this.active.children("a").removeClass("ui-state-hover").removeAttr("id");this._trigger("blur");this.active=null}},next:function(a){this.move("next",".ui-menu-item:first",a)},previous:function(a){this.move("prev",".ui-menu-item:last",a)},first:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},last:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},move:function(a,b,f){if(this.active){a=this.active[a+"All"](".ui-menu-item").eq(0);
a.length?this.activate(f,a):this.activate(f,this.element.children(b))}else this.activate(f,this.element.children(b))},nextPage:function(a){if(this.hasScroll())if(!this.active||this.last())this.activate(a,this.element.children(".ui-menu-item:first"));else{var b=this.active.offset().top,f=this.element.height(),c=this.element.children(".ui-menu-item").filter(function(){var d=e(this).offset().top-b-f+e(this).height();return d<10&&d>-10});c.length||(c=this.element.children(".ui-menu-item:last"));this.activate(a,
c)}else this.activate(a,this.element.children(".ui-menu-item").filter(!this.active||this.last()?":first":":last"))},previousPage:function(a){if(this.hasScroll())if(!this.active||this.first())this.activate(a,this.element.children(".ui-menu-item:last"));else{var b=this.active.offset().top,f=this.element.height();result=this.element.children(".ui-menu-item").filter(function(){var c=e(this).offset().top-b+f-e(this).height();return c<10&&c>-10});result.length||(result=this.element.children(".ui-menu-item:first"));
this.activate(a,result)}else this.activate(a,this.element.children(".ui-menu-item").filter(!this.active||this.first()?":last":":first"))},hasScroll:function(){return this.element.height()<this.element.attr("scrollHeight")},select:function(a){this._trigger("selected",a,{item:this.active})}})})(jQuery);
;/*
 * jQuery UI Button 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Button
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.widget.js
 */
(function(a){var g,i=function(b){a(":ui-button",b.target.form).each(function(){var c=a(this).data("button");setTimeout(function(){c.refresh()},1)})},h=function(b){var c=b.name,d=b.form,e=a([]);if(c)e=d?a(d).find("[name='"+c+"']"):a("[name='"+c+"']",b.ownerDocument).filter(function(){return!this.form});return e};a.widget("ui.button",{options:{disabled:null,text:true,label:null,icons:{primary:null,secondary:null}},_create:function(){this.element.closest("form").unbind("reset.button").bind("reset.button",
i);if(typeof this.options.disabled!=="boolean")this.options.disabled=this.element.attr("disabled");this._determineButtonType();this.hasTitle=!!this.buttonElement.attr("title");var b=this,c=this.options,d=this.type==="checkbox"||this.type==="radio",e="ui-state-hover"+(!d?" ui-state-active":"");if(c.label===null)c.label=this.buttonElement.html();if(this.element.is(":disabled"))c.disabled=true;this.buttonElement.addClass("ui-button ui-widget ui-state-default ui-corner-all").attr("role","button").bind("mouseenter.button",
function(){if(!c.disabled){a(this).addClass("ui-state-hover");this===g&&a(this).addClass("ui-state-active")}}).bind("mouseleave.button",function(){c.disabled||a(this).removeClass(e)}).bind("focus.button",function(){a(this).addClass("ui-state-focus")}).bind("blur.button",function(){a(this).removeClass("ui-state-focus")});d&&this.element.bind("change.button",function(){b.refresh()});if(this.type==="checkbox")this.buttonElement.bind("click.button",function(){if(c.disabled)return false;a(this).toggleClass("ui-state-active");
b.buttonElement.attr("aria-pressed",b.element[0].checked)});else if(this.type==="radio")this.buttonElement.bind("click.button",function(){if(c.disabled)return false;a(this).addClass("ui-state-active");b.buttonElement.attr("aria-pressed",true);var f=b.element[0];h(f).not(f).map(function(){return a(this).button("widget")[0]}).removeClass("ui-state-active").attr("aria-pressed",false)});else{this.buttonElement.bind("mousedown.button",function(){if(c.disabled)return false;a(this).addClass("ui-state-active");
g=this;a(document).one("mouseup",function(){g=null})}).bind("mouseup.button",function(){if(c.disabled)return false;a(this).removeClass("ui-state-active")}).bind("keydown.button",function(f){if(c.disabled)return false;if(f.keyCode==a.ui.keyCode.SPACE||f.keyCode==a.ui.keyCode.ENTER)a(this).addClass("ui-state-active")}).bind("keyup.button",function(){a(this).removeClass("ui-state-active")});this.buttonElement.is("a")&&this.buttonElement.keyup(function(f){f.keyCode===a.ui.keyCode.SPACE&&a(this).click()})}this._setOption("disabled",
c.disabled)},_determineButtonType:function(){this.type=this.element.is(":checkbox")?"checkbox":this.element.is(":radio")?"radio":this.element.is("input")?"input":"button";if(this.type==="checkbox"||this.type==="radio"){this.buttonElement=this.element.parents().last().find("label[for="+this.element.attr("id")+"]");this.element.addClass("ui-helper-hidden-accessible");var b=this.element.is(":checked");b&&this.buttonElement.addClass("ui-state-active");this.buttonElement.attr("aria-pressed",b)}else this.buttonElement=
this.element},widget:function(){return this.buttonElement},destroy:function(){this.element.removeClass("ui-helper-hidden-accessible");this.buttonElement.removeClass("ui-button ui-widget ui-state-default ui-corner-all ui-state-hover ui-state-active  ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only").removeAttr("role").removeAttr("aria-pressed").html(this.buttonElement.find(".ui-button-text").html());this.hasTitle||
this.buttonElement.removeAttr("title");a.Widget.prototype.destroy.call(this)},_setOption:function(b,c){a.Widget.prototype._setOption.apply(this,arguments);if(b==="disabled")c?this.element.attr("disabled",true):this.element.removeAttr("disabled");this._resetButton()},refresh:function(){var b=this.element.is(":disabled");b!==this.options.disabled&&this._setOption("disabled",b);if(this.type==="radio")h(this.element[0]).each(function(){a(this).is(":checked")?a(this).button("widget").addClass("ui-state-active").attr("aria-pressed",
true):a(this).button("widget").removeClass("ui-state-active").attr("aria-pressed",false)});else if(this.type==="checkbox")this.element.is(":checked")?this.buttonElement.addClass("ui-state-active").attr("aria-pressed",true):this.buttonElement.removeClass("ui-state-active").attr("aria-pressed",false)},_resetButton:function(){if(this.type==="input")this.options.label&&this.element.val(this.options.label);else{var b=this.buttonElement.removeClass("ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only"),
c=a("<span></span>").addClass("ui-button-text").html(this.options.label).appendTo(b.empty()).text(),d=this.options.icons,e=d.primary&&d.secondary;if(d.primary||d.secondary){b.addClass("ui-button-text-icon"+(e?"s":d.primary?"-primary":"-secondary"));d.primary&&b.prepend("<span class='ui-button-icon-primary ui-icon "+d.primary+"'></span>");d.secondary&&b.append("<span class='ui-button-icon-secondary ui-icon "+d.secondary+"'></span>");if(!this.options.text){b.addClass(e?"ui-button-icons-only":"ui-button-icon-only").removeClass("ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary");
this.hasTitle||b.attr("title",c)}}else b.addClass("ui-button-text-only")}}});a.widget("ui.buttonset",{_create:function(){this.element.addClass("ui-buttonset")},_init:function(){this.refresh()},_setOption:function(b,c){b==="disabled"&&this.buttons.button("option",b,c);a.Widget.prototype._setOption.apply(this,arguments)},refresh:function(){this.buttons=this.element.find(":button, :submit, :reset, :checkbox, :radio, a, :data(button)").filter(":ui-button").button("refresh").end().not(":ui-button").button().end().map(function(){return a(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":visible").filter(":first").addClass("ui-corner-left").end().filter(":last").addClass("ui-corner-right").end().end().end()},
destroy:function(){this.element.removeClass("ui-buttonset");this.buttons.map(function(){return a(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy");a.Widget.prototype.destroy.call(this)}})})(jQuery);
;/*
 * jQuery UI Dialog 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Dialog
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.widget.js
 *  jquery.ui.button.js
 *	jquery.ui.draggable.js
 *	jquery.ui.mouse.js
 *	jquery.ui.position.js
 *	jquery.ui.resizable.js
 */
(function(c,j){var k={buttons:true,height:true,maxHeight:true,maxWidth:true,minHeight:true,minWidth:true,width:true},l={maxHeight:true,maxWidth:true,minHeight:true,minWidth:true};c.widget("ui.dialog",{options:{autoOpen:true,buttons:{},closeOnEscape:true,closeText:"close",dialogClass:"",draggable:true,hide:null,height:"auto",maxHeight:false,maxWidth:false,minHeight:150,minWidth:150,modal:false,position:{my:"center",at:"center",of:window,collision:"fit",using:function(a){var b=c(this).css(a).offset().top;
b<0&&c(this).css("top",a.top-b)}},resizable:true,show:null,stack:true,title:"",width:300,zIndex:1E3},_create:function(){this.originalTitle=this.element.attr("title");if(typeof this.originalTitle!=="string")this.originalTitle="";this.options.title=this.options.title||this.originalTitle;var a=this,b=a.options,d=b.title||"&#160;",e=c.ui.dialog.getTitleId(a.element),g=(a.uiDialog=c("<div></div>")).appendTo(document.body).hide().addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+b.dialogClass).css({zIndex:b.zIndex}).attr("tabIndex",
-1).css("outline",0).keydown(function(i){if(b.closeOnEscape&&i.keyCode&&i.keyCode===c.ui.keyCode.ESCAPE){a.close(i);i.preventDefault()}}).attr({role:"dialog","aria-labelledby":e}).mousedown(function(i){a.moveToTop(false,i)});a.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(g);var f=(a.uiDialogTitlebar=c("<div></div>")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(g),h=c('<a href="#"></a>').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role",
"button").hover(function(){h.addClass("ui-state-hover")},function(){h.removeClass("ui-state-hover")}).focus(function(){h.addClass("ui-state-focus")}).blur(function(){h.removeClass("ui-state-focus")}).click(function(i){a.close(i);return false}).appendTo(f);(a.uiDialogTitlebarCloseText=c("<span></span>")).addClass("ui-icon ui-icon-closethick").text(b.closeText).appendTo(h);c("<span></span>").addClass("ui-dialog-title").attr("id",e).html(d).prependTo(f);if(c.isFunction(b.beforeclose)&&!c.isFunction(b.beforeClose))b.beforeClose=
b.beforeclose;f.find("*").add(f).disableSelection();b.draggable&&c.fn.draggable&&a._makeDraggable();b.resizable&&c.fn.resizable&&a._makeResizable();a._createButtons(b.buttons);a._isOpen=false;c.fn.bgiframe&&g.bgiframe()},_init:function(){this.options.autoOpen&&this.open()},destroy:function(){var a=this;a.overlay&&a.overlay.destroy();a.uiDialog.hide();a.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body");a.uiDialog.remove();a.originalTitle&&
a.element.attr("title",a.originalTitle);return a},widget:function(){return this.uiDialog},close:function(a){var b=this,d;if(false!==b._trigger("beforeClose",a)){b.overlay&&b.overlay.destroy();b.uiDialog.unbind("keypress.ui-dialog");b._isOpen=false;if(b.options.hide)b.uiDialog.hide(b.options.hide,function(){b._trigger("close",a)});else{b.uiDialog.hide();b._trigger("close",a)}c.ui.dialog.overlay.resize();if(b.options.modal){d=0;c(".ui-dialog").each(function(){if(this!==b.uiDialog[0])d=Math.max(d,c(this).css("z-index"))});
c.ui.dialog.maxZ=d}return b}},isOpen:function(){return this._isOpen},moveToTop:function(a,b){var d=this,e=d.options;if(e.modal&&!a||!e.stack&&!e.modal)return d._trigger("focus",b);if(e.zIndex>c.ui.dialog.maxZ)c.ui.dialog.maxZ=e.zIndex;if(d.overlay){c.ui.dialog.maxZ+=1;d.overlay.$el.css("z-index",c.ui.dialog.overlay.maxZ=c.ui.dialog.maxZ)}a={scrollTop:d.element.attr("scrollTop"),scrollLeft:d.element.attr("scrollLeft")};c.ui.dialog.maxZ+=1;d.uiDialog.css("z-index",c.ui.dialog.maxZ);d.element.attr(a);
d._trigger("focus",b);return d},open:function(){if(!this._isOpen){var a=this,b=a.options,d=a.uiDialog;a.overlay=b.modal?new c.ui.dialog.overlay(a):null;a._size();a._position(b.position);d.show(b.show);a.moveToTop(true);b.modal&&d.bind("keypress.ui-dialog",function(e){if(e.keyCode===c.ui.keyCode.TAB){var g=c(":tabbable",this),f=g.filter(":first");g=g.filter(":last");if(e.target===g[0]&&!e.shiftKey){f.focus(1);return false}else if(e.target===f[0]&&e.shiftKey){g.focus(1);return false}}});c(a.element.find(":tabbable").get().concat(d.find(".ui-dialog-buttonpane :tabbable").get().concat(d.get()))).eq(0).focus();
a._isOpen=true;a._trigger("open");return a}},_createButtons:function(a){var b=this,d=false,e=c("<div></div>").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),g=c("<div></div>").addClass("ui-dialog-buttonset").appendTo(e);b.uiDialog.find(".ui-dialog-buttonpane").remove();typeof a==="object"&&a!==null&&c.each(a,function(){return!(d=true)});if(d){c.each(a,function(f,h){h=c.isFunction(h)?{click:h,text:f}:h;f=c('<button type="button"></button>').attr(h,true).unbind("click").click(function(){h.click.apply(b.element[0],
arguments)}).appendTo(g);c.fn.button&&f.button()});e.appendTo(b.uiDialog)}},_makeDraggable:function(){function a(f){return{position:f.position,offset:f.offset}}var b=this,d=b.options,e=c(document),g;b.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(f,h){g=d.height==="auto"?"auto":c(this).height();c(this).height(c(this).height()).addClass("ui-dialog-dragging");b._trigger("dragStart",f,a(h))},drag:function(f,
h){b._trigger("drag",f,a(h))},stop:function(f,h){d.position=[h.position.left-e.scrollLeft(),h.position.top-e.scrollTop()];c(this).removeClass("ui-dialog-dragging").height(g);b._trigger("dragStop",f,a(h));c.ui.dialog.overlay.resize()}})},_makeResizable:function(a){function b(f){return{originalPosition:f.originalPosition,originalSize:f.originalSize,position:f.position,size:f.size}}a=a===j?this.options.resizable:a;var d=this,e=d.options,g=d.uiDialog.css("position");a=typeof a==="string"?a:"n,e,s,w,se,sw,ne,nw";
d.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:d.element,maxWidth:e.maxWidth,maxHeight:e.maxHeight,minWidth:e.minWidth,minHeight:d._minHeight(),handles:a,start:function(f,h){c(this).addClass("ui-dialog-resizing");d._trigger("resizeStart",f,b(h))},resize:function(f,h){d._trigger("resize",f,b(h))},stop:function(f,h){c(this).removeClass("ui-dialog-resizing");e.height=c(this).height();e.width=c(this).width();d._trigger("resizeStop",f,b(h));c.ui.dialog.overlay.resize()}}).css("position",
g).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")},_minHeight:function(){var a=this.options;return a.height==="auto"?a.minHeight:Math.min(a.minHeight,a.height)},_position:function(a){var b=[],d=[0,0],e;if(a){if(typeof a==="string"||typeof a==="object"&&"0"in a){b=a.split?a.split(" "):[a[0],a[1]];if(b.length===1)b[1]=b[0];c.each(["left","top"],function(g,f){if(+b[g]===b[g]){d[g]=b[g];b[g]=f}});a={my:b.join(" "),at:b.join(" "),offset:d.join(" ")}}a=c.extend({},c.ui.dialog.prototype.options.position,
a)}else a=c.ui.dialog.prototype.options.position;(e=this.uiDialog.is(":visible"))||this.uiDialog.show();this.uiDialog.css({top:0,left:0}).position(a);e||this.uiDialog.hide()},_setOptions:function(a){var b=this,d={},e=false;c.each(a,function(g,f){b._setOption(g,f);if(g in k)e=true;if(g in l)d[g]=f});e&&this._size();this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option",d)},_setOption:function(a,b){var d=this,e=d.uiDialog;switch(a){case "beforeclose":a="beforeClose";break;case "buttons":d._createButtons(b);
break;case "closeText":d.uiDialogTitlebarCloseText.text(""+b);break;case "dialogClass":e.removeClass(d.options.dialogClass).addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+b);break;case "disabled":b?e.addClass("ui-dialog-disabled"):e.removeClass("ui-dialog-disabled");break;case "draggable":var g=e.is(":data(draggable)");g&&!b&&e.draggable("destroy");!g&&b&&d._makeDraggable();break;case "position":d._position(b);break;case "resizable":(g=e.is(":data(resizable)"))&&!b&&e.resizable("destroy");
g&&typeof b==="string"&&e.resizable("option","handles",b);!g&&b!==false&&d._makeResizable(b);break;case "title":c(".ui-dialog-title",d.uiDialogTitlebar).html(""+(b||"&#160;"));break}c.Widget.prototype._setOption.apply(d,arguments)},_size:function(){var a=this.options,b,d;this.element.show().css({width:"auto",minHeight:0,height:0});if(a.minWidth>a.width)a.width=a.minWidth;b=this.uiDialog.css({height:"auto",width:a.width}).height();d=Math.max(0,a.minHeight-b);if(a.height==="auto")if(c.support.minHeight)this.element.css({minHeight:d,
height:"auto"});else{this.uiDialog.show();a=this.element.css("height","auto").height();this.uiDialog.hide();this.element.height(Math.max(a,d))}else this.element.height(Math.max(a.height-b,0));this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())}});c.extend(c.ui.dialog,{version:"1.8.6",uuid:0,maxZ:0,getTitleId:function(a){a=a.attr("id");if(!a){this.uuid+=1;a=this.uuid}return"ui-dialog-title-"+a},overlay:function(a){this.$el=c.ui.dialog.overlay.create(a)}});
c.extend(c.ui.dialog.overlay,{instances:[],oldInstances:[],maxZ:0,events:c.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(a){return a+".dialog-overlay"}).join(" "),create:function(a){if(this.instances.length===0){setTimeout(function(){c.ui.dialog.overlay.instances.length&&c(document).bind(c.ui.dialog.overlay.events,function(d){if(c(d.target).zIndex()<c.ui.dialog.overlay.maxZ)return false})},1);c(document).bind("keydown.dialog-overlay",function(d){if(a.options.closeOnEscape&&
d.keyCode&&d.keyCode===c.ui.keyCode.ESCAPE){a.close(d);d.preventDefault()}});c(window).bind("resize.dialog-overlay",c.ui.dialog.overlay.resize)}var b=(this.oldInstances.pop()||c("<div></div>").addClass("ui-widget-overlay")).appendTo(document.body).css({width:this.width(),height:this.height()});c.fn.bgiframe&&b.bgiframe();this.instances.push(b);return b},destroy:function(a){this.oldInstances.push(this.instances.splice(c.inArray(a,this.instances),1)[0]);this.instances.length===0&&c([document,window]).unbind(".dialog-overlay");
a.remove();var b=0;c.each(this.instances,function(){b=Math.max(b,this.css("z-index"))});this.maxZ=b},height:function(){var a,b;if(c.browser.msie&&c.browser.version<7){a=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);b=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight);return a<b?c(window).height()+"px":a+"px"}else return c(document).height()+"px"},width:function(){var a,b;if(c.browser.msie&&c.browser.version<7){a=Math.max(document.documentElement.scrollWidth,
document.body.scrollWidth);b=Math.max(document.documentElement.offsetWidth,document.body.offsetWidth);return a<b?c(window).width()+"px":a+"px"}else return c(document).width()+"px"},resize:function(){var a=c([]);c.each(c.ui.dialog.overlay.instances,function(){a=a.add(this)});a.css({width:0,height:0}).css({width:c.ui.dialog.overlay.width(),height:c.ui.dialog.overlay.height()})}});c.extend(c.ui.dialog.overlay.prototype,{destroy:function(){c.ui.dialog.overlay.destroy(this.$el)}})})(jQuery);
;/*
 * jQuery UI Slider 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Slider
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.mouse.js
 *	jquery.ui.widget.js
 */
(function(d){d.widget("ui.slider",d.ui.mouse,{widgetEventPrefix:"slide",options:{animate:false,distance:0,max:100,min:0,orientation:"horizontal",range:false,step:1,value:0,values:null},_create:function(){var a=this,b=this.options;this._mouseSliding=this._keySliding=false;this._animateOff=true;this._handleIndex=null;this._detectOrientation();this._mouseInit();this.element.addClass("ui-slider ui-slider-"+this.orientation+" ui-widget ui-widget-content ui-corner-all");b.disabled&&this.element.addClass("ui-slider-disabled ui-disabled");
this.range=d([]);if(b.range){if(b.range===true){this.range=d("<div></div>");if(!b.values)b.values=[this._valueMin(),this._valueMin()];if(b.values.length&&b.values.length!==2)b.values=[b.values[0],b.values[0]]}else this.range=d("<div></div>");this.range.appendTo(this.element).addClass("ui-slider-range");if(b.range==="min"||b.range==="max")this.range.addClass("ui-slider-range-"+b.range);this.range.addClass("ui-widget-header")}d(".ui-slider-handle",this.element).length===0&&d("<a href='#'></a>").appendTo(this.element).addClass("ui-slider-handle");
if(b.values&&b.values.length)for(;d(".ui-slider-handle",this.element).length<b.values.length;)d("<a href='#'></a>").appendTo(this.element).addClass("ui-slider-handle");this.handles=d(".ui-slider-handle",this.element).addClass("ui-state-default ui-corner-all");this.handle=this.handles.eq(0);this.handles.add(this.range).filter("a").click(function(c){c.preventDefault()}).hover(function(){b.disabled||d(this).addClass("ui-state-hover")},function(){d(this).removeClass("ui-state-hover")}).focus(function(){if(b.disabled)d(this).blur();
else{d(".ui-slider .ui-state-focus").removeClass("ui-state-focus");d(this).addClass("ui-state-focus")}}).blur(function(){d(this).removeClass("ui-state-focus")});this.handles.each(function(c){d(this).data("index.ui-slider-handle",c)});this.handles.keydown(function(c){var e=true,f=d(this).data("index.ui-slider-handle"),h,g,i;if(!a.options.disabled){switch(c.keyCode){case d.ui.keyCode.HOME:case d.ui.keyCode.END:case d.ui.keyCode.PAGE_UP:case d.ui.keyCode.PAGE_DOWN:case d.ui.keyCode.UP:case d.ui.keyCode.RIGHT:case d.ui.keyCode.DOWN:case d.ui.keyCode.LEFT:e=
false;if(!a._keySliding){a._keySliding=true;d(this).addClass("ui-state-active");h=a._start(c,f);if(h===false)return}break}i=a.options.step;h=a.options.values&&a.options.values.length?(g=a.values(f)):(g=a.value());switch(c.keyCode){case d.ui.keyCode.HOME:g=a._valueMin();break;case d.ui.keyCode.END:g=a._valueMax();break;case d.ui.keyCode.PAGE_UP:g=a._trimAlignValue(h+(a._valueMax()-a._valueMin())/5);break;case d.ui.keyCode.PAGE_DOWN:g=a._trimAlignValue(h-(a._valueMax()-a._valueMin())/5);break;case d.ui.keyCode.UP:case d.ui.keyCode.RIGHT:if(h===
a._valueMax())return;g=a._trimAlignValue(h+i);break;case d.ui.keyCode.DOWN:case d.ui.keyCode.LEFT:if(h===a._valueMin())return;g=a._trimAlignValue(h-i);break}a._slide(c,f,g);return e}}).keyup(function(c){var e=d(this).data("index.ui-slider-handle");if(a._keySliding){a._keySliding=false;a._stop(c,e);a._change(c,e);d(this).removeClass("ui-state-active")}});this._refreshValue();this._animateOff=false},destroy:function(){this.handles.remove();this.range.remove();this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider");
this._mouseDestroy();return this},_mouseCapture:function(a){var b=this.options,c,e,f,h,g;if(b.disabled)return false;this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()};this.elementOffset=this.element.offset();c=this._normValueFromMouse({x:a.pageX,y:a.pageY});e=this._valueMax()-this._valueMin()+1;h=this;this.handles.each(function(i){var j=Math.abs(c-h.values(i));if(e>j){e=j;f=d(this);g=i}});if(b.range===true&&this.values(1)===b.min){g+=1;f=d(this.handles[g])}if(this._start(a,
g)===false)return false;this._mouseSliding=true;h._handleIndex=g;f.addClass("ui-state-active").focus();b=f.offset();this._clickOffset=!d(a.target).parents().andSelf().is(".ui-slider-handle")?{left:0,top:0}:{left:a.pageX-b.left-f.width()/2,top:a.pageY-b.top-f.height()/2-(parseInt(f.css("borderTopWidth"),10)||0)-(parseInt(f.css("borderBottomWidth"),10)||0)+(parseInt(f.css("marginTop"),10)||0)};this._slide(a,g,c);return this._animateOff=true},_mouseStart:function(){return true},_mouseDrag:function(a){var b=
this._normValueFromMouse({x:a.pageX,y:a.pageY});this._slide(a,this._handleIndex,b);return false},_mouseStop:function(a){this.handles.removeClass("ui-state-active");this._mouseSliding=false;this._stop(a,this._handleIndex);this._change(a,this._handleIndex);this._clickOffset=this._handleIndex=null;return this._animateOff=false},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(a){var b;if(this.orientation==="horizontal"){b=
this.elementSize.width;a=a.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)}else{b=this.elementSize.height;a=a.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)}b=a/b;if(b>1)b=1;if(b<0)b=0;if(this.orientation==="vertical")b=1-b;a=this._valueMax()-this._valueMin();return this._trimAlignValue(this._valueMin()+b*a)},_start:function(a,b){var c={handle:this.handles[b],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(b);
c.values=this.values()}return this._trigger("start",a,c)},_slide:function(a,b,c){var e;if(this.options.values&&this.options.values.length){e=this.values(b?0:1);if(this.options.values.length===2&&this.options.range===true&&(b===0&&c>e||b===1&&c<e))c=e;if(c!==this.values(b)){e=this.values();e[b]=c;a=this._trigger("slide",a,{handle:this.handles[b],value:c,values:e});this.values(b?0:1);a!==false&&this.values(b,c,true)}}else if(c!==this.value()){a=this._trigger("slide",a,{handle:this.handles[b],value:c});
a!==false&&this.value(c)}},_stop:function(a,b){var c={handle:this.handles[b],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(b);c.values=this.values()}this._trigger("stop",a,c)},_change:function(a,b){if(!this._keySliding&&!this._mouseSliding){var c={handle:this.handles[b],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(b);c.values=this.values()}this._trigger("change",a,c)}},value:function(a){if(arguments.length){this.options.value=
this._trimAlignValue(a);this._refreshValue();this._change(null,0)}return this._value()},values:function(a,b){var c,e,f;if(arguments.length>1){this.options.values[a]=this._trimAlignValue(b);this._refreshValue();this._change(null,a)}if(arguments.length)if(d.isArray(arguments[0])){c=this.options.values;e=arguments[0];for(f=0;f<c.length;f+=1){c[f]=this._trimAlignValue(e[f]);this._change(null,f)}this._refreshValue()}else return this.options.values&&this.options.values.length?this._values(a):this.value();
else return this._values()},_setOption:function(a,b){var c,e=0;if(d.isArray(this.options.values))e=this.options.values.length;d.Widget.prototype._setOption.apply(this,arguments);switch(a){case "disabled":if(b){this.handles.filter(".ui-state-focus").blur();this.handles.removeClass("ui-state-hover");this.handles.attr("disabled","disabled");this.element.addClass("ui-disabled")}else{this.handles.removeAttr("disabled");this.element.removeClass("ui-disabled")}break;case "orientation":this._detectOrientation();
this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation);this._refreshValue();break;case "value":this._animateOff=true;this._refreshValue();this._change(null,0);this._animateOff=false;break;case "values":this._animateOff=true;this._refreshValue();for(c=0;c<e;c+=1)this._change(null,c);this._animateOff=false;break}},_value:function(){var a=this.options.value;return a=this._trimAlignValue(a)},_values:function(a){var b,c;if(arguments.length){b=this.options.values[a];
return b=this._trimAlignValue(b)}else{b=this.options.values.slice();for(c=0;c<b.length;c+=1)b[c]=this._trimAlignValue(b[c]);return b}},_trimAlignValue:function(a){if(a<this._valueMin())return this._valueMin();if(a>this._valueMax())return this._valueMax();var b=this.options.step>0?this.options.step:1,c=a%b;a=a-c;if(Math.abs(c)*2>=b)a+=c>0?b:-b;return parseFloat(a.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var a=
this.options.range,b=this.options,c=this,e=!this._animateOff?b.animate:false,f,h={},g,i,j,l;if(this.options.values&&this.options.values.length)this.handles.each(function(k){f=(c.values(k)-c._valueMin())/(c._valueMax()-c._valueMin())*100;h[c.orientation==="horizontal"?"left":"bottom"]=f+"%";d(this).stop(1,1)[e?"animate":"css"](h,b.animate);if(c.options.range===true)if(c.orientation==="horizontal"){if(k===0)c.range.stop(1,1)[e?"animate":"css"]({left:f+"%"},b.animate);if(k===1)c.range[e?"animate":"css"]({width:f-
g+"%"},{queue:false,duration:b.animate})}else{if(k===0)c.range.stop(1,1)[e?"animate":"css"]({bottom:f+"%"},b.animate);if(k===1)c.range[e?"animate":"css"]({height:f-g+"%"},{queue:false,duration:b.animate})}g=f});else{i=this.value();j=this._valueMin();l=this._valueMax();f=l!==j?(i-j)/(l-j)*100:0;h[c.orientation==="horizontal"?"left":"bottom"]=f+"%";this.handle.stop(1,1)[e?"animate":"css"](h,b.animate);if(a==="min"&&this.orientation==="horizontal")this.range.stop(1,1)[e?"animate":"css"]({width:f+"%"},
b.animate);if(a==="max"&&this.orientation==="horizontal")this.range[e?"animate":"css"]({width:100-f+"%"},{queue:false,duration:b.animate});if(a==="min"&&this.orientation==="vertical")this.range.stop(1,1)[e?"animate":"css"]({height:f+"%"},b.animate);if(a==="max"&&this.orientation==="vertical")this.range[e?"animate":"css"]({height:100-f+"%"},{queue:false,duration:b.animate})}}});d.extend(d.ui.slider,{version:"1.8.6"})})(jQuery);
;/*
 * jQuery UI Tabs 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Tabs
 *
 * Depends:
 *	jquery.ui.core.js
 *	jquery.ui.widget.js
 */
(function(d,p){function u(){return++v}function w(){return++x}var v=0,x=0;d.widget("ui.tabs",{options:{add:null,ajaxOptions:null,cache:false,cookie:null,collapsible:false,disable:null,disabled:[],enable:null,event:"click",fx:null,idPrefix:"ui-tabs-",load:null,panelTemplate:"<div></div>",remove:null,select:null,show:null,spinner:"<em>Loading&#8230;</em>",tabTemplate:"<li><a href='#{href}'><span>#{label}</span></a></li>"},_create:function(){this._tabify(true)},_setOption:function(b,e){if(b=="selected")this.options.collapsible&&
e==this.options.selected||this.select(e);else{this.options[b]=e;this._tabify()}},_tabId:function(b){return b.title&&b.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||this.options.idPrefix+u()},_sanitizeSelector:function(b){return b.replace(/:/g,"\\:")},_cookie:function(){var b=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+w());return d.cookie.apply(null,[b].concat(d.makeArray(arguments)))},_ui:function(b,e){return{tab:b,panel:e,index:this.anchors.index(b)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var b=
d(this);b.html(b.data("label.tabs")).removeData("label.tabs")})},_tabify:function(b){function e(g,f){g.css("display","");!d.support.opacity&&f.opacity&&g[0].style.removeAttribute("filter")}var a=this,c=this.options,h=/^#.+/;this.list=this.element.find("ol,ul").eq(0);this.lis=d(" > li:has(a[href])",this.list);this.anchors=this.lis.map(function(){return d("a",this)[0]});this.panels=d([]);this.anchors.each(function(g,f){var i=d(f).attr("href"),l=i.split("#")[0],q;if(l&&(l===location.toString().split("#")[0]||
(q=d("base")[0])&&l===q.href)){i=f.hash;f.href=i}if(h.test(i))a.panels=a.panels.add(a._sanitizeSelector(i));else if(i&&i!=="#"){d.data(f,"href.tabs",i);d.data(f,"load.tabs",i.replace(/#.*$/,""));i=a._tabId(f);f.href="#"+i;f=d("#"+i);if(!f.length){f=d(c.panelTemplate).attr("id",i).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(a.panels[g-1]||a.list);f.data("destroy.tabs",true)}a.panels=a.panels.add(f)}else c.disabled.push(g)});if(b){this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all");
this.list.addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");this.lis.addClass("ui-state-default ui-corner-top");this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom");if(c.selected===p){location.hash&&this.anchors.each(function(g,f){if(f.hash==location.hash){c.selected=g;return false}});if(typeof c.selected!=="number"&&c.cookie)c.selected=parseInt(a._cookie(),10);if(typeof c.selected!=="number"&&this.lis.filter(".ui-tabs-selected").length)c.selected=
this.lis.index(this.lis.filter(".ui-tabs-selected"));c.selected=c.selected||(this.lis.length?0:-1)}else if(c.selected===null)c.selected=-1;c.selected=c.selected>=0&&this.anchors[c.selected]||c.selected<0?c.selected:0;c.disabled=d.unique(c.disabled.concat(d.map(this.lis.filter(".ui-state-disabled"),function(g){return a.lis.index(g)}))).sort();d.inArray(c.selected,c.disabled)!=-1&&c.disabled.splice(d.inArray(c.selected,c.disabled),1);this.panels.addClass("ui-tabs-hide");this.lis.removeClass("ui-tabs-selected ui-state-active");
if(c.selected>=0&&this.anchors.length){d(a._sanitizeSelector(a.anchors[c.selected].hash)).removeClass("ui-tabs-hide");this.lis.eq(c.selected).addClass("ui-tabs-selected ui-state-active");a.element.queue("tabs",function(){a._trigger("show",null,a._ui(a.anchors[c.selected],d(a._sanitizeSelector(a.anchors[c.selected].hash))))});this.load(c.selected)}d(window).bind("unload",function(){a.lis.add(a.anchors).unbind(".tabs");a.lis=a.anchors=a.panels=null})}else c.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"));
this.element[c.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible");c.cookie&&this._cookie(c.selected,c.cookie);b=0;for(var j;j=this.lis[b];b++)d(j)[d.inArray(b,c.disabled)!=-1&&!d(j).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled");c.cache===false&&this.anchors.removeData("cache.tabs");this.lis.add(this.anchors).unbind(".tabs");if(c.event!=="mouseover"){var k=function(g,f){f.is(":not(.ui-state-disabled)")&&f.addClass("ui-state-"+g)},n=function(g,f){f.removeClass("ui-state-"+
g)};this.lis.bind("mouseover.tabs",function(){k("hover",d(this))});this.lis.bind("mouseout.tabs",function(){n("hover",d(this))});this.anchors.bind("focus.tabs",function(){k("focus",d(this).closest("li"))});this.anchors.bind("blur.tabs",function(){n("focus",d(this).closest("li"))})}var m,o;if(c.fx)if(d.isArray(c.fx)){m=c.fx[0];o=c.fx[1]}else m=o=c.fx;var r=o?function(g,f){d(g).closest("li").addClass("ui-tabs-selected ui-state-active");f.hide().removeClass("ui-tabs-hide").animate(o,o.duration||"normal",
function(){e(f,o);a._trigger("show",null,a._ui(g,f[0]))})}:function(g,f){d(g).closest("li").addClass("ui-tabs-selected ui-state-active");f.removeClass("ui-tabs-hide");a._trigger("show",null,a._ui(g,f[0]))},s=m?function(g,f){f.animate(m,m.duration||"normal",function(){a.lis.removeClass("ui-tabs-selected ui-state-active");f.addClass("ui-tabs-hide");e(f,m);a.element.dequeue("tabs")})}:function(g,f){a.lis.removeClass("ui-tabs-selected ui-state-active");f.addClass("ui-tabs-hide");a.element.dequeue("tabs")};
this.anchors.bind(c.event+".tabs",function(){var g=this,f=d(g).closest("li"),i=a.panels.filter(":not(.ui-tabs-hide)"),l=d(a._sanitizeSelector(g.hash));if(f.hasClass("ui-tabs-selected")&&!c.collapsible||f.hasClass("ui-state-disabled")||f.hasClass("ui-state-processing")||a.panels.filter(":animated").length||a._trigger("select",null,a._ui(this,l[0]))===false){this.blur();return false}c.selected=a.anchors.index(this);a.abort();if(c.collapsible)if(f.hasClass("ui-tabs-selected")){c.selected=-1;c.cookie&&
a._cookie(c.selected,c.cookie);a.element.queue("tabs",function(){s(g,i)}).dequeue("tabs");this.blur();return false}else if(!i.length){c.cookie&&a._cookie(c.selected,c.cookie);a.element.queue("tabs",function(){r(g,l)});a.load(a.anchors.index(this));this.blur();return false}c.cookie&&a._cookie(c.selected,c.cookie);if(l.length){i.length&&a.element.queue("tabs",function(){s(g,i)});a.element.queue("tabs",function(){r(g,l)});a.load(a.anchors.index(this))}else throw"jQuery UI Tabs: Mismatching fragment identifier.";
d.browser.msie&&this.blur()});this.anchors.bind("click.tabs",function(){return false})},_getIndex:function(b){if(typeof b=="string")b=this.anchors.index(this.anchors.filter("[href$="+b+"]"));return b},destroy:function(){var b=this.options;this.abort();this.element.unbind(".tabs").removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible").removeData("tabs");this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");this.anchors.each(function(){var e=
d.data(this,"href.tabs");if(e)this.href=e;var a=d(this).unbind(".tabs");d.each(["href","load","cache"],function(c,h){a.removeData(h+".tabs")})});this.lis.unbind(".tabs").add(this.panels).each(function(){d.data(this,"destroy.tabs")?d(this).remove():d(this).removeClass("ui-state-default ui-corner-top ui-tabs-selected ui-state-active ui-state-hover ui-state-focus ui-state-disabled ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide")});b.cookie&&this._cookie(null,b.cookie);return this},add:function(b,
e,a){if(a===p)a=this.anchors.length;var c=this,h=this.options;e=d(h.tabTemplate.replace(/#\{href\}/g,b).replace(/#\{label\}/g,e));b=!b.indexOf("#")?b.replace("#",""):this._tabId(d("a",e)[0]);e.addClass("ui-state-default ui-corner-top").data("destroy.tabs",true);var j=d("#"+b);j.length||(j=d(h.panelTemplate).attr("id",b).data("destroy.tabs",true));j.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide");if(a>=this.lis.length){e.appendTo(this.list);j.appendTo(this.list[0].parentNode)}else{e.insertBefore(this.lis[a]);
j.insertBefore(this.panels[a])}h.disabled=d.map(h.disabled,function(k){return k>=a?++k:k});this._tabify();if(this.anchors.length==1){h.selected=0;e.addClass("ui-tabs-selected ui-state-active");j.removeClass("ui-tabs-hide");this.element.queue("tabs",function(){c._trigger("show",null,c._ui(c.anchors[0],c.panels[0]))});this.load(0)}this._trigger("add",null,this._ui(this.anchors[a],this.panels[a]));return this},remove:function(b){b=this._getIndex(b);var e=this.options,a=this.lis.eq(b).remove(),c=this.panels.eq(b).remove();
if(a.hasClass("ui-tabs-selected")&&this.anchors.length>1)this.select(b+(b+1<this.anchors.length?1:-1));e.disabled=d.map(d.grep(e.disabled,function(h){return h!=b}),function(h){return h>=b?--h:h});this._tabify();this._trigger("remove",null,this._ui(a.find("a")[0],c[0]));return this},enable:function(b){b=this._getIndex(b);var e=this.options;if(d.inArray(b,e.disabled)!=-1){this.lis.eq(b).removeClass("ui-state-disabled");e.disabled=d.grep(e.disabled,function(a){return a!=b});this._trigger("enable",null,
this._ui(this.anchors[b],this.panels[b]));return this}},disable:function(b){b=this._getIndex(b);var e=this.options;if(b!=e.selected){this.lis.eq(b).addClass("ui-state-disabled");e.disabled.push(b);e.disabled.sort();this._trigger("disable",null,this._ui(this.anchors[b],this.panels[b]))}return this},select:function(b){b=this._getIndex(b);if(b==-1)if(this.options.collapsible&&this.options.selected!=-1)b=this.options.selected;else return this;this.anchors.eq(b).trigger(this.options.event+".tabs");return this},
load:function(b){b=this._getIndex(b);var e=this,a=this.options,c=this.anchors.eq(b)[0],h=d.data(c,"load.tabs");this.abort();if(!h||this.element.queue("tabs").length!==0&&d.data(c,"cache.tabs"))this.element.dequeue("tabs");else{this.lis.eq(b).addClass("ui-state-processing");if(a.spinner){var j=d("span",c);j.data("label.tabs",j.html()).html(a.spinner)}this.xhr=d.ajax(d.extend({},a.ajaxOptions,{url:h,success:function(k,n){d(e._sanitizeSelector(c.hash)).html(k);e._cleanup();a.cache&&d.data(c,"cache.tabs",
true);e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.success(k,n)}catch(m){}},error:function(k,n){e._cleanup();e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.error(k,n,b,c)}catch(m){}}}));e.element.dequeue("tabs");return this}},abort:function(){this.element.queue([]);this.panels.stop(false,true);this.element.queue("tabs",this.element.queue("tabs").splice(-2,2));if(this.xhr){this.xhr.abort();delete this.xhr}this._cleanup();return this},url:function(b,
e){this.anchors.eq(b).removeData("cache.tabs").data("load.tabs",e);return this},length:function(){return this.anchors.length}});d.extend(d.ui.tabs,{version:"1.8.6"});d.extend(d.ui.tabs.prototype,{rotation:null,rotate:function(b,e){var a=this,c=this.options,h=a._rotate||(a._rotate=function(j){clearTimeout(a.rotation);a.rotation=setTimeout(function(){var k=c.selected;a.select(++k<a.anchors.length?k:0)},b);j&&j.stopPropagation()});e=a._unrotate||(a._unrotate=!e?function(j){j.clientX&&a.rotate(null)}:
function(){t=c.selected;h()});if(b){this.element.bind("tabsshow",h);this.anchors.bind(c.event+".tabs",e);h()}else{clearTimeout(a.rotation);this.element.unbind("tabsshow",h);this.anchors.unbind(c.event+".tabs",e);delete this._rotate;delete this._unrotate}return this}})})(jQuery);
;/*
 * jQuery UI Datepicker 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Datepicker
 *
 * Depends:
 *	jquery.ui.core.js
 */
(function(d,G){function K(){this.debug=false;this._curInst=null;this._keyEvent=false;this._disabledInputs=[];this._inDialog=this._datepickerShowing=false;this._mainDivId="ui-datepicker-div";this._inlineClass="ui-datepicker-inline";this._appendClass="ui-datepicker-append";this._triggerClass="ui-datepicker-trigger";this._dialogClass="ui-datepicker-dialog";this._disableClass="ui-datepicker-disabled";this._unselectableClass="ui-datepicker-unselectable";this._currentClass="ui-datepicker-current-day";this._dayOverClass=
"ui-datepicker-days-cell-over";this.regional=[];this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su",
"Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:false,showMonthAfterYear:false,yearSuffix:""};this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:false,hideIfNoPrevNext:false,navigationAsDateFormat:false,gotoCurrent:false,changeMonth:false,changeYear:false,yearRange:"c-10:c+10",showOtherMonths:false,selectOtherMonths:false,showWeek:false,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",
minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:true,showButtonPanel:false,autoSize:false};d.extend(this._defaults,this.regional[""]);this.dpDiv=d('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all ui-helper-hidden-accessible"></div>')}function E(a,b){d.extend(a,
b);for(var c in b)if(b[c]==null||b[c]==G)a[c]=b[c];return a}d.extend(d.ui,{datepicker:{version:"1.8.6"}});var y=(new Date).getTime();d.extend(K.prototype,{markerClassName:"hasDatepicker",log:function(){this.debug&&console.log.apply("",arguments)},_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(a){E(this._defaults,a||{});return this},_attachDatepicker:function(a,b){var c=null;for(var e in this._defaults){var f=a.getAttribute("date:"+e);if(f){c=c||{};try{c[e]=eval(f)}catch(h){c[e]=
f}}}e=a.nodeName.toLowerCase();f=e=="div"||e=="span";if(!a.id){this.uuid+=1;a.id="dp"+this.uuid}var i=this._newInst(d(a),f);i.settings=d.extend({},b||{},c||{});if(e=="input")this._connectDatepicker(a,i);else f&&this._inlineDatepicker(a,i)},_newInst:function(a,b){return{id:a[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1"),input:a,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:b,dpDiv:!b?this.dpDiv:d('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')}},
_connectDatepicker:function(a,b){var c=d(a);b.append=d([]);b.trigger=d([]);if(!c.hasClass(this.markerClassName)){this._attachments(c,b);c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});this._autoSize(b);d.data(a,"datepicker",b)}},_attachments:function(a,b){var c=this._get(b,"appendText"),e=this._get(b,"isRTL");b.append&&
b.append.remove();if(c){b.append=d('<span class="'+this._appendClass+'">'+c+"</span>");a[e?"before":"after"](b.append)}a.unbind("focus",this._showDatepicker);b.trigger&&b.trigger.remove();c=this._get(b,"showOn");if(c=="focus"||c=="both")a.focus(this._showDatepicker);if(c=="button"||c=="both"){c=this._get(b,"buttonText");var f=this._get(b,"buttonImage");b.trigger=d(this._get(b,"buttonImageOnly")?d("<img/>").addClass(this._triggerClass).attr({src:f,alt:c,title:c}):d('<button type="button"></button>').addClass(this._triggerClass).html(f==
""?c:d("<img/>").attr({src:f,alt:c,title:c})));a[e?"before":"after"](b.trigger);b.trigger.click(function(){d.datepicker._datepickerShowing&&d.datepicker._lastInput==a[0]?d.datepicker._hideDatepicker():d.datepicker._showDatepicker(a[0]);return false})}},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b=new Date(2009,11,20),c=this._get(a,"dateFormat");if(c.match(/[DM]/)){var e=function(f){for(var h=0,i=0,g=0;g<f.length;g++)if(f[g].length>h){h=f[g].length;i=g}return i};b.setMonth(e(this._get(a,
c.match(/MM/)?"monthNames":"monthNamesShort")));b.setDate(e(this._get(a,c.match(/DD/)?"dayNames":"dayNamesShort"))+20-b.getDay())}a.input.attr("size",this._formatDate(a,b).length)}},_inlineDatepicker:function(a,b){var c=d(a);if(!c.hasClass(this.markerClassName)){c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker",function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});d.data(a,"datepicker",b);this._setDate(b,this._getDefaultDate(b),
true);this._updateDatepicker(b);this._updateAlternate(b)}},_dialogDatepicker:function(a,b,c,e,f){a=this._dialogInst;if(!a){this.uuid+=1;this._dialogInput=d('<input type="text" id="'+("dp"+this.uuid)+'" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>');this._dialogInput.keydown(this._doKeyDown);d("body").append(this._dialogInput);a=this._dialogInst=this._newInst(this._dialogInput,false);a.settings={};d.data(this._dialogInput[0],"datepicker",a)}E(a.settings,e||{});b=b&&b.constructor==
Date?this._formatDate(a,b):b;this._dialogInput.val(b);this._pos=f?f.length?f:[f.pageX,f.pageY]:null;if(!this._pos)this._pos=[document.documentElement.clientWidth/2-100+(document.documentElement.scrollLeft||document.body.scrollLeft),document.documentElement.clientHeight/2-150+(document.documentElement.scrollTop||document.body.scrollTop)];this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px");a.settings.onSelect=c;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);
d.blockUI&&d.blockUI(this.dpDiv);d.data(this._dialogInput[0],"datepicker",a);return this},_destroyDatepicker:function(a){var b=d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();d.removeData(a,"datepicker");if(e=="input"){c.append.remove();c.trigger.remove();b.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)}else if(e=="div"||e=="span")b.removeClass(this.markerClassName).empty()}},
_enableDatepicker:function(a){var b=d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();if(e=="input"){a.disabled=false;c.trigger.filter("button").each(function(){this.disabled=false}).end().filter("img").css({opacity:"1.0",cursor:""})}else if(e=="div"||e=="span")b.children("."+this._inlineClass).children().removeClass("ui-state-disabled");this._disabledInputs=d.map(this._disabledInputs,function(f){return f==a?null:f})}},_disableDatepicker:function(a){var b=
d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();if(e=="input"){a.disabled=true;c.trigger.filter("button").each(function(){this.disabled=true}).end().filter("img").css({opacity:"0.5",cursor:"default"})}else if(e=="div"||e=="span")b.children("."+this._inlineClass).children().addClass("ui-state-disabled");this._disabledInputs=d.map(this._disabledInputs,function(f){return f==a?null:f});this._disabledInputs[this._disabledInputs.length]=a}},_isDisabledDatepicker:function(a){if(!a)return false;
for(var b=0;b<this._disabledInputs.length;b++)if(this._disabledInputs[b]==a)return true;return false},_getInst:function(a){try{return d.data(a,"datepicker")}catch(b){throw"Missing instance data for this datepicker";}},_optionDatepicker:function(a,b,c){var e=this._getInst(a);if(arguments.length==2&&typeof b=="string")return b=="defaults"?d.extend({},d.datepicker._defaults):e?b=="all"?d.extend({},e.settings):this._get(e,b):null;var f=b||{};if(typeof b=="string"){f={};f[b]=c}if(e){this._curInst==e&&
this._hideDatepicker();var h=this._getDateDatepicker(a,true);E(e.settings,f);this._attachments(d(a),e);this._autoSize(e);this._setDateDatepicker(a,h);this._updateDatepicker(e)}},_changeDatepicker:function(a,b,c){this._optionDatepicker(a,b,c)},_refreshDatepicker:function(a){(a=this._getInst(a))&&this._updateDatepicker(a)},_setDateDatepicker:function(a,b){if(a=this._getInst(a)){this._setDate(a,b);this._updateDatepicker(a);this._updateAlternate(a)}},_getDateDatepicker:function(a,b){(a=this._getInst(a))&&
!a.inline&&this._setDateFromField(a,b);return a?this._getDate(a):null},_doKeyDown:function(a){var b=d.datepicker._getInst(a.target),c=true,e=b.dpDiv.is(".ui-datepicker-rtl");b._keyEvent=true;if(d.datepicker._datepickerShowing)switch(a.keyCode){case 9:d.datepicker._hideDatepicker();c=false;break;case 13:c=d("td."+d.datepicker._dayOverClass,b.dpDiv).add(d("td."+d.datepicker._currentClass,b.dpDiv));c[0]?d.datepicker._selectDay(a.target,b.selectedMonth,b.selectedYear,c[0]):d.datepicker._hideDatepicker();
return false;case 27:d.datepicker._hideDatepicker();break;case 33:d.datepicker._adjustDate(a.target,a.ctrlKey?-d.datepicker._get(b,"stepBigMonths"):-d.datepicker._get(b,"stepMonths"),"M");break;case 34:d.datepicker._adjustDate(a.target,a.ctrlKey?+d.datepicker._get(b,"stepBigMonths"):+d.datepicker._get(b,"stepMonths"),"M");break;case 35:if(a.ctrlKey||a.metaKey)d.datepicker._clearDate(a.target);c=a.ctrlKey||a.metaKey;break;case 36:if(a.ctrlKey||a.metaKey)d.datepicker._gotoToday(a.target);c=a.ctrlKey||
a.metaKey;break;case 37:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,e?+1:-1,"D");c=a.ctrlKey||a.metaKey;if(a.originalEvent.altKey)d.datepicker._adjustDate(a.target,a.ctrlKey?-d.datepicker._get(b,"stepBigMonths"):-d.datepicker._get(b,"stepMonths"),"M");break;case 38:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,-7,"D");c=a.ctrlKey||a.metaKey;break;case 39:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,e?-1:+1,"D");c=a.ctrlKey||a.metaKey;if(a.originalEvent.altKey)d.datepicker._adjustDate(a.target,
a.ctrlKey?+d.datepicker._get(b,"stepBigMonths"):+d.datepicker._get(b,"stepMonths"),"M");break;case 40:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,+7,"D");c=a.ctrlKey||a.metaKey;break;default:c=false}else if(a.keyCode==36&&a.ctrlKey)d.datepicker._showDatepicker(this);else c=false;if(c){a.preventDefault();a.stopPropagation()}},_doKeyPress:function(a){var b=d.datepicker._getInst(a.target);if(d.datepicker._get(b,"constrainInput")){b=d.datepicker._possibleChars(d.datepicker._get(b,"dateFormat"));
var c=String.fromCharCode(a.charCode==G?a.keyCode:a.charCode);return a.ctrlKey||c<" "||!b||b.indexOf(c)>-1}},_doKeyUp:function(a){a=d.datepicker._getInst(a.target);if(a.input.val()!=a.lastVal)try{if(d.datepicker.parseDate(d.datepicker._get(a,"dateFormat"),a.input?a.input.val():null,d.datepicker._getFormatConfig(a))){d.datepicker._setDateFromField(a);d.datepicker._updateAlternate(a);d.datepicker._updateDatepicker(a)}}catch(b){d.datepicker.log(b)}return true},_showDatepicker:function(a){a=a.target||
a;if(a.nodeName.toLowerCase()!="input")a=d("input",a.parentNode)[0];if(!(d.datepicker._isDisabledDatepicker(a)||d.datepicker._lastInput==a)){var b=d.datepicker._getInst(a);d.datepicker._curInst&&d.datepicker._curInst!=b&&d.datepicker._curInst.dpDiv.stop(true,true);var c=d.datepicker._get(b,"beforeShow");E(b.settings,c?c.apply(a,[a,b]):{});b.lastVal=null;d.datepicker._lastInput=a;d.datepicker._setDateFromField(b);if(d.datepicker._inDialog)a.value="";if(!d.datepicker._pos){d.datepicker._pos=d.datepicker._findPos(a);
d.datepicker._pos[1]+=a.offsetHeight}var e=false;d(a).parents().each(function(){e|=d(this).css("position")=="fixed";return!e});if(e&&d.browser.opera){d.datepicker._pos[0]-=document.documentElement.scrollLeft;d.datepicker._pos[1]-=document.documentElement.scrollTop}c={left:d.datepicker._pos[0],top:d.datepicker._pos[1]};d.datepicker._pos=null;b.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});d.datepicker._updateDatepicker(b);c=d.datepicker._checkOffset(b,c,e);b.dpDiv.css({position:d.datepicker._inDialog&&
d.blockUI?"static":e?"fixed":"absolute",display:"none",left:c.left+"px",top:c.top+"px"});if(!b.inline){c=d.datepicker._get(b,"showAnim");var f=d.datepicker._get(b,"duration"),h=function(){d.datepicker._datepickerShowing=true;var i=d.datepicker._getBorders(b.dpDiv);b.dpDiv.find("iframe.ui-datepicker-cover").css({left:-i[0],top:-i[1],width:b.dpDiv.outerWidth(),height:b.dpDiv.outerHeight()})};b.dpDiv.zIndex(d(a).zIndex()+1);d.effects&&d.effects[c]?b.dpDiv.show(c,d.datepicker._get(b,"showOptions"),f,
h):b.dpDiv[c||"show"](c?f:null,h);if(!c||!f)h();b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus();d.datepicker._curInst=b}}},_updateDatepicker:function(a){var b=this,c=d.datepicker._getBorders(a.dpDiv);a.dpDiv.empty().append(this._generateHTML(a)).find("iframe.ui-datepicker-cover").css({left:-c[0],top:-c[1],width:a.dpDiv.outerWidth(),height:a.dpDiv.outerHeight()}).end().find("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a").bind("mouseout",function(){d(this).removeClass("ui-state-hover");
this.className.indexOf("ui-datepicker-prev")!=-1&&d(this).removeClass("ui-datepicker-prev-hover");this.className.indexOf("ui-datepicker-next")!=-1&&d(this).removeClass("ui-datepicker-next-hover")}).bind("mouseover",function(){if(!b._isDisabledDatepicker(a.inline?a.dpDiv.parent()[0]:a.input[0])){d(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover");d(this).addClass("ui-state-hover");this.className.indexOf("ui-datepicker-prev")!=-1&&d(this).addClass("ui-datepicker-prev-hover");
this.className.indexOf("ui-datepicker-next")!=-1&&d(this).addClass("ui-datepicker-next-hover")}}).end().find("."+this._dayOverClass+" a").trigger("mouseover").end();c=this._getNumberOfMonths(a);var e=c[1];e>1?a.dpDiv.addClass("ui-datepicker-multi-"+e).css("width",17*e+"em"):a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("");a.dpDiv[(c[0]!=1||c[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi");a.dpDiv[(this._get(a,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");
a==d.datepicker._curInst&&d.datepicker._datepickerShowing&&a.input&&a.input.is(":visible")&&!a.input.is(":disabled")&&a.input.focus()},_getBorders:function(a){var b=function(c){return{thin:1,medium:2,thick:3}[c]||c};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},_checkOffset:function(a,b,c){var e=a.dpDiv.outerWidth(),f=a.dpDiv.outerHeight(),h=a.input?a.input.outerWidth():0,i=a.input?a.input.outerHeight():0,g=document.documentElement.clientWidth+d(document).scrollLeft(),
k=document.documentElement.clientHeight+d(document).scrollTop();b.left-=this._get(a,"isRTL")?e-h:0;b.left-=c&&b.left==a.input.offset().left?d(document).scrollLeft():0;b.top-=c&&b.top==a.input.offset().top+i?d(document).scrollTop():0;b.left-=Math.min(b.left,b.left+e>g&&g>e?Math.abs(b.left+e-g):0);b.top-=Math.min(b.top,b.top+f>k&&k>f?Math.abs(f+i):0);return b},_findPos:function(a){for(var b=this._get(this._getInst(a),"isRTL");a&&(a.type=="hidden"||a.nodeType!=1);)a=a[b?"previousSibling":"nextSibling"];
a=d(a).offset();return[a.left,a.top]},_hideDatepicker:function(a){var b=this._curInst;if(!(!b||a&&b!=d.data(a,"datepicker")))if(this._datepickerShowing){a=this._get(b,"showAnim");var c=this._get(b,"duration"),e=function(){d.datepicker._tidyDialog(b);this._curInst=null};d.effects&&d.effects[a]?b.dpDiv.hide(a,d.datepicker._get(b,"showOptions"),c,e):b.dpDiv[a=="slideDown"?"slideUp":a=="fadeIn"?"fadeOut":"hide"](a?c:null,e);a||e();if(a=this._get(b,"onClose"))a.apply(b.input?b.input[0]:null,[b.input?b.input.val():
"",b]);this._datepickerShowing=false;this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if(d.blockUI){d.unblockUI();d("body").append(this.dpDiv)}}this._inDialog=false}},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(a){if(d.datepicker._curInst){a=d(a.target);a[0].id!=d.datepicker._mainDivId&&a.parents("#"+d.datepicker._mainDivId).length==0&&!a.hasClass(d.datepicker.markerClassName)&&
!a.hasClass(d.datepicker._triggerClass)&&d.datepicker._datepickerShowing&&!(d.datepicker._inDialog&&d.blockUI)&&d.datepicker._hideDatepicker()}},_adjustDate:function(a,b,c){a=d(a);var e=this._getInst(a[0]);if(!this._isDisabledDatepicker(a[0])){this._adjustInstDate(e,b+(c=="M"?this._get(e,"showCurrentAtPos"):0),c);this._updateDatepicker(e)}},_gotoToday:function(a){a=d(a);var b=this._getInst(a[0]);if(this._get(b,"gotoCurrent")&&b.currentDay){b.selectedDay=b.currentDay;b.drawMonth=b.selectedMonth=b.currentMonth;
b.drawYear=b.selectedYear=b.currentYear}else{var c=new Date;b.selectedDay=c.getDate();b.drawMonth=b.selectedMonth=c.getMonth();b.drawYear=b.selectedYear=c.getFullYear()}this._notifyChange(b);this._adjustDate(a)},_selectMonthYear:function(a,b,c){a=d(a);var e=this._getInst(a[0]);e._selectingMonthYear=false;e["selected"+(c=="M"?"Month":"Year")]=e["draw"+(c=="M"?"Month":"Year")]=parseInt(b.options[b.selectedIndex].value,10);this._notifyChange(e);this._adjustDate(a)},_clickMonthYear:function(a){var b=
this._getInst(d(a)[0]);b.input&&b._selectingMonthYear&&setTimeout(function(){b.input.focus()},0);b._selectingMonthYear=!b._selectingMonthYear},_selectDay:function(a,b,c,e){var f=d(a);if(!(d(e).hasClass(this._unselectableClass)||this._isDisabledDatepicker(f[0]))){f=this._getInst(f[0]);f.selectedDay=f.currentDay=d("a",e).html();f.selectedMonth=f.currentMonth=b;f.selectedYear=f.currentYear=c;this._selectDate(a,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear))}},_clearDate:function(a){a=
d(a);this._getInst(a[0]);this._selectDate(a,"")},_selectDate:function(a,b){a=this._getInst(d(a)[0]);b=b!=null?b:this._formatDate(a);a.input&&a.input.val(b);this._updateAlternate(a);var c=this._get(a,"onSelect");if(c)c.apply(a.input?a.input[0]:null,[b,a]);else a.input&&a.input.trigger("change");if(a.inline)this._updateDatepicker(a);else{this._hideDatepicker();this._lastInput=a.input[0];typeof a.input[0]!="object"&&a.input.focus();this._lastInput=null}},_updateAlternate:function(a){var b=this._get(a,
"altField");if(b){var c=this._get(a,"altFormat")||this._get(a,"dateFormat"),e=this._getDate(a),f=this.formatDate(c,e,this._getFormatConfig(a));d(b).each(function(){d(this).val(f)})}},noWeekends:function(a){a=a.getDay();return[a>0&&a<6,""]},iso8601Week:function(a){a=new Date(a.getTime());a.setDate(a.getDate()+4-(a.getDay()||7));var b=a.getTime();a.setMonth(0);a.setDate(1);return Math.floor(Math.round((b-a)/864E5)/7)+1},parseDate:function(a,b,c){if(a==null||b==null)throw"Invalid arguments";b=typeof b==
"object"?b.toString():b+"";if(b=="")return null;for(var e=(c?c.shortYearCutoff:null)||this._defaults.shortYearCutoff,f=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,h=(c?c.dayNames:null)||this._defaults.dayNames,i=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,g=(c?c.monthNames:null)||this._defaults.monthNames,k=c=-1,l=-1,u=-1,j=false,o=function(p){(p=z+1<a.length&&a.charAt(z+1)==p)&&z++;return p},m=function(p){o(p);p=new RegExp("^\\d{1,"+(p=="@"?14:p=="!"?20:p=="y"?4:p=="o"?
3:2)+"}");p=b.substring(s).match(p);if(!p)throw"Missing number at position "+s;s+=p[0].length;return parseInt(p[0],10)},n=function(p,w,H){p=o(p)?H:w;for(w=0;w<p.length;w++)if(b.substr(s,p[w].length).toLowerCase()==p[w].toLowerCase()){s+=p[w].length;return w+1}throw"Unknown name at position "+s;},r=function(){if(b.charAt(s)!=a.charAt(z))throw"Unexpected literal at position "+s;s++},s=0,z=0;z<a.length;z++)if(j)if(a.charAt(z)=="'"&&!o("'"))j=false;else r();else switch(a.charAt(z)){case "d":l=m("d");
break;case "D":n("D",f,h);break;case "o":u=m("o");break;case "m":k=m("m");break;case "M":k=n("M",i,g);break;case "y":c=m("y");break;case "@":var v=new Date(m("@"));c=v.getFullYear();k=v.getMonth()+1;l=v.getDate();break;case "!":v=new Date((m("!")-this._ticksTo1970)/1E4);c=v.getFullYear();k=v.getMonth()+1;l=v.getDate();break;case "'":if(o("'"))r();else j=true;break;default:r()}if(c==-1)c=(new Date).getFullYear();else if(c<100)c+=(new Date).getFullYear()-(new Date).getFullYear()%100+(c<=e?0:-100);if(u>
-1){k=1;l=u;do{e=this._getDaysInMonth(c,k-1);if(l<=e)break;k++;l-=e}while(1)}v=this._daylightSavingAdjust(new Date(c,k-1,l));if(v.getFullYear()!=c||v.getMonth()+1!=k||v.getDate()!=l)throw"Invalid date";return v},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*24*
60*60*1E7,formatDate:function(a,b,c){if(!b)return"";var e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames,h=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort;c=(c?c.monthNames:null)||this._defaults.monthNames;var i=function(o){(o=j+1<a.length&&a.charAt(j+1)==o)&&j++;return o},g=function(o,m,n){m=""+m;if(i(o))for(;m.length<n;)m="0"+m;return m},k=function(o,m,n,r){return i(o)?r[m]:n[m]},l="",u=false;if(b)for(var j=0;j<a.length;j++)if(u)if(a.charAt(j)==
"'"&&!i("'"))u=false;else l+=a.charAt(j);else switch(a.charAt(j)){case "d":l+=g("d",b.getDate(),2);break;case "D":l+=k("D",b.getDay(),e,f);break;case "o":l+=g("o",(b.getTime()-(new Date(b.getFullYear(),0,0)).getTime())/864E5,3);break;case "m":l+=g("m",b.getMonth()+1,2);break;case "M":l+=k("M",b.getMonth(),h,c);break;case "y":l+=i("y")?b.getFullYear():(b.getYear()%100<10?"0":"")+b.getYear()%100;break;case "@":l+=b.getTime();break;case "!":l+=b.getTime()*1E4+this._ticksTo1970;break;case "'":if(i("'"))l+=
"'";else u=true;break;default:l+=a.charAt(j)}return l},_possibleChars:function(a){for(var b="",c=false,e=function(h){(h=f+1<a.length&&a.charAt(f+1)==h)&&f++;return h},f=0;f<a.length;f++)if(c)if(a.charAt(f)=="'"&&!e("'"))c=false;else b+=a.charAt(f);else switch(a.charAt(f)){case "d":case "m":case "y":case "@":b+="0123456789";break;case "D":case "M":return null;case "'":if(e("'"))b+="'";else c=true;break;default:b+=a.charAt(f)}return b},_get:function(a,b){return a.settings[b]!==G?a.settings[b]:this._defaults[b]},
_setDateFromField:function(a,b){if(a.input.val()!=a.lastVal){var c=this._get(a,"dateFormat"),e=a.lastVal=a.input?a.input.val():null,f,h;f=h=this._getDefaultDate(a);var i=this._getFormatConfig(a);try{f=this.parseDate(c,e,i)||h}catch(g){this.log(g);e=b?"":e}a.selectedDay=f.getDate();a.drawMonth=a.selectedMonth=f.getMonth();a.drawYear=a.selectedYear=f.getFullYear();a.currentDay=e?f.getDate():0;a.currentMonth=e?f.getMonth():0;a.currentYear=e?f.getFullYear():0;this._adjustInstDate(a)}},_getDefaultDate:function(a){return this._restrictMinMax(a,
this._determineDate(a,this._get(a,"defaultDate"),new Date))},_determineDate:function(a,b,c){var e=function(h){var i=new Date;i.setDate(i.getDate()+h);return i},f=function(h){try{return d.datepicker.parseDate(d.datepicker._get(a,"dateFormat"),h,d.datepicker._getFormatConfig(a))}catch(i){}var g=(h.toLowerCase().match(/^c/)?d.datepicker._getDate(a):null)||new Date,k=g.getFullYear(),l=g.getMonth();g=g.getDate();for(var u=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,j=u.exec(h);j;){switch(j[2]||"d"){case "d":case "D":g+=
parseInt(j[1],10);break;case "w":case "W":g+=parseInt(j[1],10)*7;break;case "m":case "M":l+=parseInt(j[1],10);g=Math.min(g,d.datepicker._getDaysInMonth(k,l));break;case "y":case "Y":k+=parseInt(j[1],10);g=Math.min(g,d.datepicker._getDaysInMonth(k,l));break}j=u.exec(h)}return new Date(k,l,g)};if(b=(b=b==null?c:typeof b=="string"?f(b):typeof b=="number"?isNaN(b)?c:e(b):b)&&b.toString()=="Invalid Date"?c:b){b.setHours(0);b.setMinutes(0);b.setSeconds(0);b.setMilliseconds(0)}return this._daylightSavingAdjust(b)},
_daylightSavingAdjust:function(a){if(!a)return null;a.setHours(a.getHours()>12?a.getHours()+2:0);return a},_setDate:function(a,b,c){var e=!b,f=a.selectedMonth,h=a.selectedYear;b=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=b.getDate();a.drawMonth=a.selectedMonth=a.currentMonth=b.getMonth();a.drawYear=a.selectedYear=a.currentYear=b.getFullYear();if((f!=a.selectedMonth||h!=a.selectedYear)&&!c)this._notifyChange(a);this._adjustInstDate(a);if(a.input)a.input.val(e?
"":this._formatDate(a))},_getDate:function(a){return!a.currentYear||a.input&&a.input.val()==""?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay))},_generateHTML:function(a){var b=new Date;b=this._daylightSavingAdjust(new Date(b.getFullYear(),b.getMonth(),b.getDate()));var c=this._get(a,"isRTL"),e=this._get(a,"showButtonPanel"),f=this._get(a,"hideIfNoPrevNext"),h=this._get(a,"navigationAsDateFormat"),i=this._getNumberOfMonths(a),g=this._get(a,"showCurrentAtPos"),k=
this._get(a,"stepMonths"),l=i[0]!=1||i[1]!=1,u=this._daylightSavingAdjust(!a.currentDay?new Date(9999,9,9):new Date(a.currentYear,a.currentMonth,a.currentDay)),j=this._getMinMaxDate(a,"min"),o=this._getMinMaxDate(a,"max");g=a.drawMonth-g;var m=a.drawYear;if(g<0){g+=12;m--}if(o){var n=this._daylightSavingAdjust(new Date(o.getFullYear(),o.getMonth()-i[0]*i[1]+1,o.getDate()));for(n=j&&n<j?j:n;this._daylightSavingAdjust(new Date(m,g,1))>n;){g--;if(g<0){g=11;m--}}}a.drawMonth=g;a.drawYear=m;n=this._get(a,
"prevText");n=!h?n:this.formatDate(n,this._daylightSavingAdjust(new Date(m,g-k,1)),this._getFormatConfig(a));n=this._canAdjustMonth(a,-1,m,g)?'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_'+y+".datepicker._adjustDate('#"+a.id+"', -"+k+", 'M');\" title=\""+n+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+n+"</span></a>":f?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+n+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+
n+"</span></a>";var r=this._get(a,"nextText");r=!h?r:this.formatDate(r,this._daylightSavingAdjust(new Date(m,g+k,1)),this._getFormatConfig(a));f=this._canAdjustMonth(a,+1,m,g)?'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_'+y+".datepicker._adjustDate('#"+a.id+"', +"+k+", 'M');\" title=\""+r+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+r+"</span></a>":f?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+r+'"><span class="ui-icon ui-icon-circle-triangle-'+
(c?"w":"e")+'">'+r+"</span></a>";k=this._get(a,"currentText");r=this._get(a,"gotoCurrent")&&a.currentDay?u:b;k=!h?k:this.formatDate(k,r,this._getFormatConfig(a));h=!a.inline?'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_'+y+'.datepicker._hideDatepicker();">'+this._get(a,"closeText")+"</button>":"";e=e?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(c?h:"")+(this._isInRange(a,r)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_'+
y+".datepicker._gotoToday('#"+a.id+"');\">"+k+"</button>":"")+(c?"":h)+"</div>":"";h=parseInt(this._get(a,"firstDay"),10);h=isNaN(h)?0:h;k=this._get(a,"showWeek");r=this._get(a,"dayNames");this._get(a,"dayNamesShort");var s=this._get(a,"dayNamesMin"),z=this._get(a,"monthNames"),v=this._get(a,"monthNamesShort"),p=this._get(a,"beforeShowDay"),w=this._get(a,"showOtherMonths"),H=this._get(a,"selectOtherMonths");this._get(a,"calculateWeek");for(var L=this._getDefaultDate(a),I="",C=0;C<i[0];C++){for(var M=
"",D=0;D<i[1];D++){var N=this._daylightSavingAdjust(new Date(m,g,a.selectedDay)),t=" ui-corner-all",x="";if(l){x+='<div class="ui-datepicker-group';if(i[1]>1)switch(D){case 0:x+=" ui-datepicker-group-first";t=" ui-corner-"+(c?"right":"left");break;case i[1]-1:x+=" ui-datepicker-group-last";t=" ui-corner-"+(c?"left":"right");break;default:x+=" ui-datepicker-group-middle";t="";break}x+='">'}x+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+t+'">'+(/all|left/.test(t)&&C==0?c?
f:n:"")+(/all|right/.test(t)&&C==0?c?n:f:"")+this._generateMonthYearHeader(a,g,m,j,o,C>0||D>0,z,v)+'</div><table class="ui-datepicker-calendar"><thead><tr>';var A=k?'<th class="ui-datepicker-week-col">'+this._get(a,"weekHeader")+"</th>":"";for(t=0;t<7;t++){var q=(t+h)%7;A+="<th"+((t+h+6)%7>=5?' class="ui-datepicker-week-end"':"")+'><span title="'+r[q]+'">'+s[q]+"</span></th>"}x+=A+"</tr></thead><tbody>";A=this._getDaysInMonth(m,g);if(m==a.selectedYear&&g==a.selectedMonth)a.selectedDay=Math.min(a.selectedDay,
A);t=(this._getFirstDayOfMonth(m,g)-h+7)%7;A=l?6:Math.ceil((t+A)/7);q=this._daylightSavingAdjust(new Date(m,g,1-t));for(var O=0;O<A;O++){x+="<tr>";var P=!k?"":'<td class="ui-datepicker-week-col">'+this._get(a,"calculateWeek")(q)+"</td>";for(t=0;t<7;t++){var F=p?p.apply(a.input?a.input[0]:null,[q]):[true,""],B=q.getMonth()!=g,J=B&&!H||!F[0]||j&&q<j||o&&q>o;P+='<td class="'+((t+h+6)%7>=5?" ui-datepicker-week-end":"")+(B?" ui-datepicker-other-month":"")+(q.getTime()==N.getTime()&&g==a.selectedMonth&&
a._keyEvent||L.getTime()==q.getTime()&&L.getTime()==N.getTime()?" "+this._dayOverClass:"")+(J?" "+this._unselectableClass+" ui-state-disabled":"")+(B&&!w?"":" "+F[1]+(q.getTime()==u.getTime()?" "+this._currentClass:"")+(q.getTime()==b.getTime()?" ui-datepicker-today":""))+'"'+((!B||w)&&F[2]?' title="'+F[2]+'"':"")+(J?"":' onclick="DP_jQuery_'+y+".datepicker._selectDay('#"+a.id+"',"+q.getMonth()+","+q.getFullYear()+', this);return false;"')+">"+(B&&!w?"&#xa0;":J?'<span class="ui-state-default">'+q.getDate()+
"</span>":'<a class="ui-state-default'+(q.getTime()==b.getTime()?" ui-state-highlight":"")+(q.getTime()==u.getTime()?" ui-state-active":"")+(B?" ui-priority-secondary":"")+'" href="#">'+q.getDate()+"</a>")+"</td>";q.setDate(q.getDate()+1);q=this._daylightSavingAdjust(q)}x+=P+"</tr>"}g++;if(g>11){g=0;m++}x+="</tbody></table>"+(l?"</div>"+(i[0]>0&&D==i[1]-1?'<div class="ui-datepicker-row-break"></div>':""):"");M+=x}I+=M}I+=e+(d.browser.msie&&parseInt(d.browser.version,10)<7&&!a.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':
"");a._keyEvent=false;return I},_generateMonthYearHeader:function(a,b,c,e,f,h,i,g){var k=this._get(a,"changeMonth"),l=this._get(a,"changeYear"),u=this._get(a,"showMonthAfterYear"),j='<div class="ui-datepicker-title">',o="";if(h||!k)o+='<span class="ui-datepicker-month">'+i[b]+"</span>";else{i=e&&e.getFullYear()==c;var m=f&&f.getFullYear()==c;o+='<select class="ui-datepicker-month" onchange="DP_jQuery_'+y+".datepicker._selectMonthYear('#"+a.id+"', this, 'M');\" onclick=\"DP_jQuery_"+y+".datepicker._clickMonthYear('#"+
a.id+"');\">";for(var n=0;n<12;n++)if((!i||n>=e.getMonth())&&(!m||n<=f.getMonth()))o+='<option value="'+n+'"'+(n==b?' selected="selected"':"")+">"+g[n]+"</option>";o+="</select>"}u||(j+=o+(h||!(k&&l)?"&#xa0;":""));if(h||!l)j+='<span class="ui-datepicker-year">'+c+"</span>";else{g=this._get(a,"yearRange").split(":");var r=(new Date).getFullYear();i=function(s){s=s.match(/c[+-].*/)?c+parseInt(s.substring(1),10):s.match(/[+-].*/)?r+parseInt(s,10):parseInt(s,10);return isNaN(s)?r:s};b=i(g[0]);g=Math.max(b,
i(g[1]||""));b=e?Math.max(b,e.getFullYear()):b;g=f?Math.min(g,f.getFullYear()):g;for(j+='<select class="ui-datepicker-year" onchange="DP_jQuery_'+y+".datepicker._selectMonthYear('#"+a.id+"', this, 'Y');\" onclick=\"DP_jQuery_"+y+".datepicker._clickMonthYear('#"+a.id+"');\">";b<=g;b++)j+='<option value="'+b+'"'+(b==c?' selected="selected"':"")+">"+b+"</option>";j+="</select>"}j+=this._get(a,"yearSuffix");if(u)j+=(h||!(k&&l)?"&#xa0;":"")+o;j+="</div>";return j},_adjustInstDate:function(a,b,c){var e=
a.drawYear+(c=="Y"?b:0),f=a.drawMonth+(c=="M"?b:0);b=Math.min(a.selectedDay,this._getDaysInMonth(e,f))+(c=="D"?b:0);e=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(e,f,b)));a.selectedDay=e.getDate();a.drawMonth=a.selectedMonth=e.getMonth();a.drawYear=a.selectedYear=e.getFullYear();if(c=="M"||c=="Y")this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");b=c&&b<c?c:b;return b=a&&b>a?a:b},_notifyChange:function(a){var b=this._get(a,
"onChangeMonthYear");if(b)b.apply(a.input?a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){a=this._get(a,"numberOfMonths");return a==null?[1,1]:typeof a=="number"?[1,a]:a},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,e){var f=this._getNumberOfMonths(a);
c=this._daylightSavingAdjust(new Date(c,e+(b<0?b:f[0]*f[1]),1));b<0&&c.setDate(this._getDaysInMonth(c.getFullYear(),c.getMonth()));return this._isInRange(a,c)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!a||b.getTime()<=a.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");b=typeof b!="string"?b:(new Date).getFullYear()%100+parseInt(b,10);return{shortYearCutoff:b,dayNamesShort:this._get(a,
"dayNamesShort"),dayNames:this._get(a,"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,e){if(!b){a.currentDay=a.selectedDay;a.currentMonth=a.selectedMonth;a.currentYear=a.selectedYear}b=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(e,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),b,this._getFormatConfig(a))}});d.fn.datepicker=
function(a){if(!d.datepicker.initialized){d(document).mousedown(d.datepicker._checkExternalClick).find("body").append(d.datepicker.dpDiv);d.datepicker.initialized=true}var b=Array.prototype.slice.call(arguments,1);if(typeof a=="string"&&(a=="isDisabled"||a=="getDate"||a=="widget"))return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));if(a=="option"&&arguments.length==2&&typeof arguments[1]=="string")return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));
return this.each(function(){typeof a=="string"?d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this].concat(b)):d.datepicker._attachDatepicker(this,a)})};d.datepicker=new K;d.datepicker.initialized=false;d.datepicker.uuid=(new Date).getTime();d.datepicker.version="1.8.6";window["DP_jQuery_"+y]=d})(jQuery);
;/*
 * jQuery UI Progressbar 1.8.6
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Progressbar
 *
 * Depends:
 *   jquery.ui.core.js
 *   jquery.ui.widget.js
 */
(function(b,c){b.widget("ui.progressbar",{options:{value:0},min:0,max:100,_create:function(){this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this.min,"aria-valuemax":this.max,"aria-valuenow":this._value()});this.valueDiv=b("<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>").appendTo(this.element);this._refreshValue()},destroy:function(){this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow");
this.valueDiv.remove();b.Widget.prototype.destroy.apply(this,arguments)},value:function(a){if(a===c)return this._value();this._setOption("value",a);return this},_setOption:function(a,d){if(a==="value"){this.options.value=d;this._refreshValue();this._trigger("change");this._value()===this.max&&this._trigger("complete")}b.Widget.prototype._setOption.apply(this,arguments)},_value:function(){var a=this.options.value;if(typeof a!=="number")a=0;return Math.min(this.max,Math.max(this.min,a))},_refreshValue:function(){var a=
this.value();this.valueDiv.toggleClass("ui-corner-right",a===this.max).width(a+"%");this.element.attr("aria-valuenow",a)}});b.extend(b.ui.progressbar,{version:"1.8.6"})})(jQuery);
;]]></CSP>


<CSP name="js/prototype-1.6.0.3.js" application="/csp/cbt/" default="1"><![CDATA[
/*  Prototype JavaScript framework, version 1.6.0.3
 *  (c) 2005-2008 Sam Stephenson
 *
 *  Prototype is freely distributable under the terms of an MIT-style license.
 *  For details, see the Prototype web site: http://www.prototypejs.org/
 *
 *--------------------------------------------------------------------------*/

var Prototype = {
  Version: '1.6.0.3',

  Browser: {
    IE:     !!(window.attachEvent &&
      navigator.userAgent.indexOf('Opera') === -1),
    Opera:  navigator.userAgent.indexOf('Opera') > -1,
    WebKit: navigator.userAgent.indexOf('AppleWebKit/') > -1,
    Gecko:  navigator.userAgent.indexOf('Gecko') > -1 &&
      navigator.userAgent.indexOf('KHTML') === -1,
    MobileSafari: !!navigator.userAgent.match(/Apple.*Mobile.*Safari/)
  },

  BrowserFeatures: {
    XPath: !!document.evaluate,
    SelectorsAPI: !!document.querySelector,
    ElementExtensions: !!window.HTMLElement,
    SpecificElementExtensions:
      document.createElement('div')['__proto__'] &&
      document.createElement('div')['__proto__'] !==
        document.createElement('form')['__proto__']
  },

  ScriptFragment: '<script[^>]*>([\\S\\s]*?)<\/script>',
  JSONFilter: /^\/\*-secure-([\s\S]*)\*\/\s*$/,

  emptyFunction: function() { },
  K: function(x) { return x }
};

if (Prototype.Browser.MobileSafari)
  Prototype.BrowserFeatures.SpecificElementExtensions = false;


/* Based on Alex Arnell's inheritance implementation. */
var Class = {
  create: function() {
    var parent = null, properties = $A(arguments);
    if (Object.isFunction(properties[0]))
      parent = properties.shift();

    function klass() {
      this.initialize.apply(this, arguments);
    }

    Object.extend(klass, Class.Methods);
    klass.superclass = parent;
    klass.subclasses = [];

    if (parent) {
      var subclass = function() { };
      subclass.prototype = parent.prototype;
      klass.prototype = new subclass;
      parent.subclasses.push(klass);
    }

    for (var i = 0; i < properties.length; i++)
      klass.addMethods(properties[i]);

    if (!klass.prototype.initialize)
      klass.prototype.initialize = Prototype.emptyFunction;

    klass.prototype.constructor = klass;

    return klass;
  }
};

Class.Methods = {
  addMethods: function(source) {
    var ancestor   = this.superclass && this.superclass.prototype;
    var properties = Object.keys(source);

    if (!Object.keys({ toString: true }).length)
      properties.push("toString", "valueOf");

    for (var i = 0, length = properties.length; i < length; i++) {
      var property = properties[i], value = source[property];
      if (ancestor && Object.isFunction(value) &&
          value.argumentNames().first() == "$super") {
        var method = value;
        value = (function(m) {
          return function() { return ancestor[m].apply(this, arguments) };
        })(property).wrap(method);

        value.valueOf = method.valueOf.bind(method);
        value.toString = method.toString.bind(method);
      }
      this.prototype[property] = value;
    }

    return this;
  }
};

var Abstract = { };

Object.extend = function(destination, source) {
  for (var property in source)
    destination[property] = source[property];
  return destination;
};

Object.extend(Object, {
  inspect: function(object) {
    try {
      if (Object.isUndefined(object)) return 'undefined';
      if (object === null) return 'null';
      return object.inspect ? object.inspect() : String(object);
    } catch (e) {
      if (e instanceof RangeError) return '...';
      throw e;
    }
  },

  toJSON: function(object) {
    var type = typeof object;
    switch (type) {
      case 'undefined':
      case 'function':
      case 'unknown': return;
      case 'boolean': return object.toString();
    }

    if (object === null) return 'null';
    if (object.toJSON) return object.toJSON();
    if (Object.isElement(object)) return;

    var results = [];
    for (var property in object) {
      var value = Object.toJSON(object[property]);
      if (!Object.isUndefined(value))
        results.push(property.toJSON() + ': ' + value);
    }

    return '{' + results.join(', ') + '}';
  },

  toQueryString: function(object) {
    return $H(object).toQueryString();
  },

  toHTML: function(object) {
    return object && object.toHTML ? object.toHTML() : String.interpret(object);
  },

  keys: function(object) {
    var keys = [];
    for (var property in object)
      keys.push(property);
    return keys;
  },

  values: function(object) {
    var values = [];
    for (var property in object)
      values.push(object[property]);
    return values;
  },

  clone: function(object) {
    return Object.extend({ }, object);
  },

  isElement: function(object) {
    return !!(object && object.nodeType == 1);
  },

  isArray: function(object) {
    return object != null && typeof object == "object" &&
      'splice' in object && 'join' in object;
  },

  isHash: function(object) {
    return object instanceof Hash;
  },

  isFunction: function(object) {
    return typeof object == "function";
  },

  isString: function(object) {
    return typeof object == "string";
  },

  isNumber: function(object) {
    return typeof object == "number";
  },

  isUndefined: function(object) {
    return typeof object == "undefined";
  }
});

Object.extend(Function.prototype, {
  argumentNames: function() {
    var names = this.toString().match(/^[\s\(]*function[^(]*\(([^\)]*)\)/)[1]
      .replace(/\s+/g, '').split(',');
    return names.length == 1 && !names[0] ? [] : names;
  },

  bind: function() {
    if (arguments.length < 2 && Object.isUndefined(arguments[0])) return this;
    var __method = this, args = $A(arguments), object = args.shift();
    return function() {
      return __method.apply(object, args.concat($A(arguments)));
    }
  },

  bindAsEventListener: function() {
    var __method = this, args = $A(arguments), object = args.shift();
    return function(event) {
      return __method.apply(object, [event || window.event].concat(args));
    }
  },

  curry: function() {
    if (!arguments.length) return this;
    var __method = this, args = $A(arguments);
    return function() {
      return __method.apply(this, args.concat($A(arguments)));
    }
  },

  delay: function() {
    var __method = this, args = $A(arguments), timeout = args.shift() * 1000;
    return window.setTimeout(function() {
      return __method.apply(__method, args);
    }, timeout);
  },

  defer: function() {
    var args = [0.01].concat($A(arguments));
    return this.delay.apply(this, args);
  },

  wrap: function(wrapper) {
    var __method = this;
    return function() {
      return wrapper.apply(this, [__method.bind(this)].concat($A(arguments)));
    }
  },

  methodize: function() {
    if (this._methodized) return this._methodized;
    var __method = this;
    return this._methodized = function() {
      return __method.apply(null, [this].concat($A(arguments)));
    };
  }
});

Date.prototype.toJSON = function() {
  return '"' + this.getUTCFullYear() + '-' +
    (this.getUTCMonth() + 1).toPaddedString(2) + '-' +
    this.getUTCDate().toPaddedString(2) + 'T' +
    this.getUTCHours().toPaddedString(2) + ':' +
    this.getUTCMinutes().toPaddedString(2) + ':' +
    this.getUTCSeconds().toPaddedString(2) + 'Z"';
};

var Try = {
  these: function() {
    var returnValue;

    for (var i = 0, length = arguments.length; i < length; i++) {
      var lambda = arguments[i];
      try {
        returnValue = lambda();
        break;
      } catch (e) { }
    }

    return returnValue;
  }
};

RegExp.prototype.match = RegExp.prototype.test;

RegExp.escape = function(str) {
  return String(str).replace(/([.*+?^=!:${}()|[\]\/\\])/g, '\\$1');
};

/*--------------------------------------------------------------------------*/

var PeriodicalExecuter = Class.create({
  initialize: function(callback, frequency) {
    this.callback = callback;
    this.frequency = frequency;
    this.currentlyExecuting = false;

    this.registerCallback();
  },

  registerCallback: function() {
    this.timer = setInterval(this.onTimerEvent.bind(this), this.frequency * 1000);
  },

  execute: function() {
    this.callback(this);
  },

  stop: function() {
    if (!this.timer) return;
    clearInterval(this.timer);
    this.timer = null;
  },

  onTimerEvent: function() {
    if (!this.currentlyExecuting) {
      try {
        this.currentlyExecuting = true;
        this.execute();
      } finally {
        this.currentlyExecuting = false;
      }
    }
  }
});
Object.extend(String, {
  interpret: function(value) {
    return value == null ? '' : String(value);
  },
  specialChar: {
    '\b': '\\b',
    '\t': '\\t',
    '\n': '\\n',
    '\f': '\\f',
    '\r': '\\r',
    '\\': '\\\\'
  }
});

Object.extend(String.prototype, {
  gsub: function(pattern, replacement) {
    var result = '', source = this, match;
    replacement = arguments.callee.prepareReplacement(replacement);

    while (source.length > 0) {
      if (match = source.match(pattern)) {
        result += source.slice(0, match.index);
        result += String.interpret(replacement(match));
        source  = source.slice(match.index + match[0].length);
      } else {
        result += source, source = '';
      }
    }
    return result;
  },

  sub: function(pattern, replacement, count) {
    replacement = this.gsub.prepareReplacement(replacement);
    count = Object.isUndefined(count) ? 1 : count;

    return this.gsub(pattern, function(match) {
      if (--count < 0) return match[0];
      return replacement(match);
    });
  },

  scan: function(pattern, iterator) {
    this.gsub(pattern, iterator);
    return String(this);
  },

  truncate: function(length, truncation) {
    length = length || 30;
    truncation = Object.isUndefined(truncation) ? '...' : truncation;
    return this.length > length ?
      this.slice(0, length - truncation.length) + truncation : String(this);
  },

  strip: function() {
    return this.replace(/^\s+/, '').replace(/\s+$/, '');
  },

  stripTags: function() {
    return this.replace(/<\/?[^>]+>/gi, '');
  },

  stripScripts: function() {
    return this.replace(new RegExp(Prototype.ScriptFragment, 'img'), '');
  },

  extractScripts: function() {
    var matchAll = new RegExp(Prototype.ScriptFragment, 'img');
    var matchOne = new RegExp(Prototype.ScriptFragment, 'im');
    return (this.match(matchAll) || []).map(function(scriptTag) {
      return (scriptTag.match(matchOne) || ['', ''])[1];
    });
  },

  evalScripts: function() {
    return this.extractScripts().map(function(script) { return eval(script) });
  },

  escapeHTML: function() {
    var self = arguments.callee;
    self.text.data = this;
    return self.div.innerHTML;
  },

  unescapeHTML: function() {
    var div = new Element('div');
    div.innerHTML = this.stripTags();
    return div.childNodes[0] ? (div.childNodes.length > 1 ?
      $A(div.childNodes).inject('', function(memo, node) { return memo+node.nodeValue }) :
      div.childNodes[0].nodeValue) : '';
  },

  toQueryParams: function(separator) {
    var match = this.strip().match(/([^?#]*)(#.*)?$/);
    if (!match) return { };

    return match[1].split(separator || '&').inject({ }, function(hash, pair) {
      if ((pair = pair.split('='))[0]) {
        var key = decodeURIComponent(pair.shift());
        var value = pair.length > 1 ? pair.join('=') : pair[0];
        if (value != undefined) value = decodeURIComponent(value);

        if (key in hash) {
          if (!Object.isArray(hash[key])) hash[key] = [hash[key]];
          hash[key].push(value);
        }
        else hash[key] = value;
      }
      return hash;
    });
  },

  toArray: function() {
    return this.split('');
  },

  succ: function() {
    return this.slice(0, this.length - 1) +
      String.fromCharCode(this.charCodeAt(this.length - 1) + 1);
  },

  times: function(count) {
    return count < 1 ? '' : new Array(count + 1).join(this);
  },

  camelize: function() {
    var parts = this.split('-'), len = parts.length;
    if (len == 1) return parts[0];

    var camelized = this.charAt(0) == '-'
      ? parts[0].charAt(0).toUpperCase() + parts[0].substring(1)
      : parts[0];

    for (var i = 1; i < len; i++)
      camelized += parts[i].charAt(0).toUpperCase() + parts[i].substring(1);

    return camelized;
  },

  capitalize: function() {
    return this.charAt(0).toUpperCase() + this.substring(1).toLowerCase();
  },

  underscore: function() {
    return this.gsub(/::/, '/').gsub(/([A-Z]+)([A-Z][a-z])/,'#{1}_#{2}').gsub(/([a-z\d])([A-Z])/,'#{1}_#{2}').gsub(/-/,'_').toLowerCase();
  },

  dasherize: function() {
    return this.gsub(/_/,'-');
  },

  inspect: function(useDoubleQuotes) {
    var escapedString = this.gsub(/[\x00-\x1f\\]/, function(match) {
      var character = String.specialChar[match[0]];
      return character ? character : '\\u00' + match[0].charCodeAt().toPaddedString(2, 16);
    });
    if (useDoubleQuotes) return '"' + escapedString.replace(/"/g, '\\"') + '"';
    return "'" + escapedString.replace(/'/g, '\\\'') + "'";
  },

  toJSON: function() {
    return this.inspect(true);
  },

  unfilterJSON: function(filter) {
    return this.sub(filter || Prototype.JSONFilter, '#{1}');
  },

  isJSON: function() {
    var str = this;
    if (str.blank()) return false;
    str = this.replace(/\\./g, '@').replace(/"[^"\\\n\r]*"/g, '');
    return (/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test(str);
  },

  evalJSON: function(sanitize) {
    var json = this.unfilterJSON();
    try {
      if (!sanitize || json.isJSON()) return eval('(' + json + ')');
    } catch (e) { }
    throw new SyntaxError('Badly formed JSON string: ' + this.inspect());
  },

  include: function(pattern) {
    return this.indexOf(pattern) > -1;
  },

  startsWith: function(pattern) {
    return this.indexOf(pattern) === 0;
  },

  endsWith: function(pattern) {
    var d = this.length - pattern.length;
    return d >= 0 && this.lastIndexOf(pattern) === d;
  },

  empty: function() {
    return this == '';
  },

  blank: function() {
    return /^\s*$/.test(this);
  },

  interpolate: function(object, pattern) {
    return new Template(this, pattern).evaluate(object);
  }
});

if (Prototype.Browser.WebKit || Prototype.Browser.IE) Object.extend(String.prototype, {
  escapeHTML: function() {
    return this.replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;');
  },
  unescapeHTML: function() {
    return this.stripTags().replace(/&amp;/g,'&').replace(/&lt;/g,'<').replace(/&gt;/g,'>');
  }
});

String.prototype.gsub.prepareReplacement = function(replacement) {
  if (Object.isFunction(replacement)) return replacement;
  var template = new Template(replacement);
  return function(match) { return template.evaluate(match) };
};

String.prototype.parseQuery = String.prototype.toQueryParams;

Object.extend(String.prototype.escapeHTML, {
  div:  document.createElement('div'),
  text: document.createTextNode('')
});

String.prototype.escapeHTML.div.appendChild(String.prototype.escapeHTML.text);

var Template = Class.create({
  initialize: function(template, pattern) {
    this.template = template.toString();
    this.pattern = pattern || Template.Pattern;
  },

  evaluate: function(object) {
    if (Object.isFunction(object.toTemplateReplacements))
      object = object.toTemplateReplacements();

    return this.template.gsub(this.pattern, function(match) {
      if (object == null) return '';

      var before = match[1] || '';
      if (before == '\\') return match[2];

      var ctx = object, expr = match[3];
      var pattern = /^([^.[]+|\[((?:.*?[^\\])?)\])(\.|\[|$)/;
      match = pattern.exec(expr);
      if (match == null) return before;

      while (match != null) {
        var comp = match[1].startsWith('[') ? match[2].gsub('\\\\]', ']') : match[1];
        ctx = ctx[comp];
        if (null == ctx || '' == match[3]) break;
        expr = expr.substring('[' == match[3] ? match[1].length : match[0].length);
        match = pattern.exec(expr);
      }

      return before + String.interpret(ctx);
    });
  }
});
Template.Pattern = /(^|.|\r|\n)(#\{(.*?)\})/;

var $break = { };

var Enumerable = {
  each: function(iterator, context) {
    var index = 0;
    try {
      this._each(function(value) {
        iterator.call(context, value, index++);
      });
    } catch (e) {
      if (e != $break) throw e;
    }
    return this;
  },

  eachSlice: function(number, iterator, context) {
    var index = -number, slices = [], array = this.toArray();
    if (number < 1) return array;
    while ((index += number) < array.length)
      slices.push(array.slice(index, index+number));
    return slices.collect(iterator, context);
  },

  all: function(iterator, context) {
    iterator = iterator || Prototype.K;
    var result = true;
    this.each(function(value, index) {
      result = result && !!iterator.call(context, value, index);
      if (!result) throw $break;
    });
    return result;
  },

  any: function(iterator, context) {
    iterator = iterator || Prototype.K;
    var result = false;
    this.each(function(value, index) {
      if (result = !!iterator.call(context, value, index))
        throw $break;
    });
    return result;
  },

  collect: function(iterator, context) {
    iterator = iterator || Prototype.K;
    var results = [];
    this.each(function(value, index) {
      results.push(iterator.call(context, value, index));
    });
    return results;
  },

  detect: function(iterator, context) {
    var result;
    this.each(function(value, index) {
      if (iterator.call(context, value, index)) {
        result = value;
        throw $break;
      }
    });
    return result;
  },

  findAll: function(iterator, context) {
    var results = [];
    this.each(function(value, index) {
      if (iterator.call(context, value, index))
        results.push(value);
    });
    return results;
  },

  grep: function(filter, iterator, context) {
    iterator = iterator || Prototype.K;
    var results = [];

    if (Object.isString(filter))
      filter = new RegExp(filter);

    this.each(function(value, index) {
      if (filter.match(value))
        results.push(iterator.call(context, value, index));
    });
    return results;
  },

  include: function(object) {
    if (Object.isFunction(this.indexOf))
      if (this.indexOf(object) != -1) return true;

    var found = false;
    this.each(function(value) {
      if (value == object) {
        found = true;
        throw $break;
      }
    });
    return found;
  },

  inGroupsOf: function(number, fillWith) {
    fillWith = Object.isUndefined(fillWith) ? null : fillWith;
    return this.eachSlice(number, function(slice) {
      while(slice.length < number) slice.push(fillWith);
      return slice;
    });
  },

  inject: function(memo, iterator, context) {
    this.each(function(value, index) {
      memo = iterator.call(context, memo, value, index);
    });
    return memo;
  },

  invoke: function(method) {
    var args = $A(arguments).slice(1);
    return this.map(function(value) {
      return value[method].apply(value, args);
    });
  },

  max: function(iterator, context) {
    iterator = iterator || Prototype.K;
    var result;
    this.each(function(value, index) {
      value = iterator.call(context, value, index);
      if (result == null || value >= result)
        result = value;
    });
    return result;
  },

  min: function(iterator, context) {
    iterator = iterator || Prototype.K;
    var result;
    this.each(function(value, index) {
      value = iterator.call(context, value, index);
      if (result == null || value < result)
        result = value;
    });
    return result;
  },

  partition: function(iterator, context) {
    iterator = iterator || Prototype.K;
    var trues = [], falses = [];
    this.each(function(value, index) {
      (iterator.call(context, value, index) ?
        trues : falses).push(value);
    });
    return [trues, falses];
  },

  pluck: function(property) {
    var results = [];
    this.each(function(value) {
      results.push(value[property]);
    });
    return results;
  },

  reject: function(iterator, context) {
    var results = [];
    this.each(function(value, index) {
      if (!iterator.call(context, value, index))
        results.push(value);
    });
    return results;
  },

  sortBy: function(iterator, context) {
    return this.map(function(value, index) {
      return {
        value: value,
        criteria: iterator.call(context, value, index)
      };
    }).sort(function(left, right) {
      var a = left.criteria, b = right.criteria;
      return a < b ? -1 : a > b ? 1 : 0;
    }).pluck('value');
  },

  toArray: function() {
    return this.map();
  },

  zip: function() {
    var iterator = Prototype.K, args = $A(arguments);
    if (Object.isFunction(args.last()))
      iterator = args.pop();

    var collections = [this].concat(args).map($A);
    return this.map(function(value, index) {
      return iterator(collections.pluck(index));
    });
  },

  size: function() {
    return this.toArray().length;
  },

  inspect: function() {
    return '#<Enumerable:' + this.toArray().inspect() + '>';
  }
};

Object.extend(Enumerable, {
  map:     Enumerable.collect,
  find:    Enumerable.detect,
  select:  Enumerable.findAll,
  filter:  Enumerable.findAll,
  member:  Enumerable.include,
  entries: Enumerable.toArray,
  every:   Enumerable.all,
  some:    Enumerable.any
});
function $A(iterable) {
  if (!iterable) return [];
  if (iterable.toArray) return iterable.toArray();
  var length = iterable.length || 0, results = new Array(length);
  while (length--) results[length] = iterable[length];
  return results;
}

if (Prototype.Browser.WebKit) {
  $A = function(iterable) {
    if (!iterable) return [];
    // In Safari, only use the `toArray` method if it's not a NodeList.
    // A NodeList is a function, has an function `item` property, and a numeric
    // `length` property. Adapted from Google Doctype.
    if (!(typeof iterable === 'function' && typeof iterable.length ===
        'number' && typeof iterable.item === 'function') && iterable.toArray)
      return iterable.toArray();
    var length = iterable.length || 0, results = new Array(length);
    while (length--) results[length] = iterable[length];
    return results;
  };
}

Array.from = $A;

Object.extend(Array.prototype, Enumerable);

if (!Array.prototype._reverse) Array.prototype._reverse = Array.prototype.reverse;

Object.extend(Array.prototype, {
  _each: function(iterator) {
    for (var i = 0, length = this.length; i < length; i++)
      iterator(this[i]);
  },

  clear: function() {
    this.length = 0;
    return this;
  },

  first: function() {
    return this[0];
  },

  last: function() {
    return this[this.length - 1];
  },

  compact: function() {
    return this.select(function(value) {
      return value != null;
    });
  },

  flatten: function() {
    return this.inject([], function(array, value) {
      return array.concat(Object.isArray(value) ?
        value.flatten() : [value]);
    });
  },

  without: function() {
    var values = $A(arguments);
    return this.select(function(value) {
      return !values.include(value);
    });
  },

  reverse: function(inline) {
    return (inline !== false ? this : this.toArray())._reverse();
  },

  reduce: function() {
    return this.length > 1 ? this : this[0];
  },

  uniq: function(sorted) {
    return this.inject([], function(array, value, index) {
      if (0 == index || (sorted ? array.last() != value : !array.include(value)))
        array.push(value);
      return array;
    });
  },

  intersect: function(array) {
    return this.uniq().findAll(function(item) {
      return array.detect(function(value) { return item === value });
    });
  },

  clone: function() {
    return [].concat(this);
  },

  size: function() {
    return this.length;
  },

  inspect: function() {
    return '[' + this.map(Object.inspect).join(', ') + ']';
  },

  toJSON: function() {
    var results = [];
    this.each(function(object) {
      var value = Object.toJSON(object);
      if (!Object.isUndefined(value)) results.push(value);
    });
    return '[' + results.join(', ') + ']';
  }
});

// use native browser JS 1.6 implementation if available
if (Object.isFunction(Array.prototype.forEach))
  Array.prototype._each = Array.prototype.forEach;

if (!Array.prototype.indexOf) Array.prototype.indexOf = function(item, i) {
  i || (i = 0);
  var length = this.length;
  if (i < 0) i = length + i;
  for (; i < length; i++)
    if (this[i] === item) return i;
  return -1;
};

if (!Array.prototype.lastIndexOf) Array.prototype.lastIndexOf = function(item, i) {
  i = isNaN(i) ? this.length : (i < 0 ? this.length + i : i) + 1;
  var n = this.slice(0, i).reverse().indexOf(item);
  return (n < 0) ? n : i - n - 1;
};

Array.prototype.toArray = Array.prototype.clone;

function $w(string) {
  if (!Object.isString(string)) return [];
  string = string.strip();
  return string ? string.split(/\s+/) : [];
}

if (Prototype.Browser.Opera){
  Array.prototype.concat = function() {
    var array = [];
    for (var i = 0, length = this.length; i < length; i++) array.push(this[i]);
    for (var i = 0, length = arguments.length; i < length; i++) {
      if (Object.isArray(arguments[i])) {
        for (var j = 0, arrayLength = arguments[i].length; j < arrayLength; j++)
          array.push(arguments[i][j]);
      } else {
        array.push(arguments[i]);
      }
    }
    return array;
  };
}
Object.extend(Number.prototype, {
  toColorPart: function() {
    return this.toPaddedString(2, 16);
  },

  succ: function() {
    return this + 1;
  },

  times: function(iterator, context) {
    $R(0, this, true).each(iterator, context);
    return this;
  },

  toPaddedString: function(length, radix) {
    var string = this.toString(radix || 10);
    return '0'.times(length - string.length) + string;
  },

  toJSON: function() {
    return isFinite(this) ? this.toString() : 'null';
  }
});

$w('abs round ceil floor').each(function(method){
  Number.prototype[method] = Math[method].methodize();
});
function $H(object) {
  return new Hash(object);
};

var Hash = Class.create(Enumerable, (function() {

  function toQueryPair(key, value) {
    if (Object.isUndefined(value)) return key;
    return key + '=' + encodeURIComponent(String.interpret(value));
  }

  return {
    initialize: function(object) {
      this._object = Object.isHash(object) ? object.toObject() : Object.clone(object);
    },

    _each: function(iterator) {
      for (var key in this._object) {
        var value = this._object[key], pair = [key, value];
        pair.key = key;
        pair.value = value;
        iterator(pair);
      }
    },

    set: function(key, value) {
      return this._object[key] = value;
    },

    get: function(key) {
      // simulating poorly supported hasOwnProperty
      if (this._object[key] !== Object.prototype[key])
        return this._object[key];
    },

    unset: function(key) {
      var value = this._object[key];
      delete this._object[key];
      return value;
    },

    toObject: function() {
      return Object.clone(this._object);
    },

    keys: function() {
      return this.pluck('key');
    },

    values: function() {
      return this.pluck('value');
    },

    index: function(value) {
      var match = this.detect(function(pair) {
        return pair.value === value;
      });
      return match && match.key;
    },

    merge: function(object) {
      return this.clone().update(object);
    },

    update: function(object) {
      return new Hash(object).inject(this, function(result, pair) {
        result.set(pair.key, pair.value);
        return result;
      });
    },

    toQueryString: function() {
      return this.inject([], function(results, pair) {
        var key = encodeURIComponent(pair.key), values = pair.value;

        if (values && typeof values == 'object') {
          if (Object.isArray(values))
            return results.concat(values.map(toQueryPair.curry(key)));
        } else results.push(toQueryPair(key, values));
        return results;
      }).join('&');
    },

    inspect: function() {
      return '#<Hash:{' + this.map(function(pair) {
        return pair.map(Object.inspect).join(': ');
      }).join(', ') + '}>';
    },

    toJSON: function() {
      return Object.toJSON(this.toObject());
    },

    clone: function() {
      return new Hash(this);
    }
  }
})());

Hash.prototype.toTemplateReplacements = Hash.prototype.toObject;
Hash.from = $H;
var ObjectRange = Class.create(Enumerable, {
  initialize: function(start, end, exclusive) {
    this.start = start;
    this.end = end;
    this.exclusive = exclusive;
  },

  _each: function(iterator) {
    var value = this.start;
    while (this.include(value)) {
      iterator(value);
      value = value.succ();
    }
  },

  include: function(value) {
    if (value < this.start)
      return false;
    if (this.exclusive)
      return value < this.end;
    return value <= this.end;
  }
});

var $R = function(start, end, exclusive) {
  return new ObjectRange(start, end, exclusive);
};

var Ajax = {
  getTransport: function() {
    return Try.these(
      function() {return new XMLHttpRequest()},
      function() {return new ActiveXObject('Msxml2.XMLHTTP')},
      function() {return new ActiveXObject('Microsoft.XMLHTTP')}
    ) || false;
  },

  activeRequestCount: 0
};

Ajax.Responders = {
  responders: [],

  _each: function(iterator) {
    this.responders._each(iterator);
  },

  register: function(responder) {
    if (!this.include(responder))
      this.responders.push(responder);
  },

  unregister: function(responder) {
    this.responders = this.responders.without(responder);
  },

  dispatch: function(callback, request, transport, json) {
    this.each(function(responder) {
      if (Object.isFunction(responder[callback])) {
        try {
          responder[callback].apply(responder, [request, transport, json]);
        } catch (e) { }
      }
    });
  }
};

Object.extend(Ajax.Responders, Enumerable);

Ajax.Responders.register({
  onCreate:   function() { Ajax.activeRequestCount++ },
  onComplete: function() { Ajax.activeRequestCount-- }
});

Ajax.Base = Class.create({
  initialize: function(options) {
    this.options = {
      method:       'post',
      asynchronous: true,
      contentType:  'application/x-www-form-urlencoded',
      encoding:     'UTF-8',
      parameters:   '',
      evalJSON:     true,
      evalJS:       true
    };
    Object.extend(this.options, options || { });

    this.options.method = this.options.method.toLowerCase();

    if (Object.isString(this.options.parameters))
      this.options.parameters = this.options.parameters.toQueryParams();
    else if (Object.isHash(this.options.parameters))
      this.options.parameters = this.options.parameters.toObject();
  }
});

Ajax.Request = Class.create(Ajax.Base, {
  _complete: false,

  initialize: function($super, url, options) {
    $super(options);
    this.transport = Ajax.getTransport();
    this.request(url);
  },

  request: function(url) {
    this.url = url;
    this.method = this.options.method;
    var params = Object.clone(this.options.parameters);

    if (!['get', 'post'].include(this.method)) {
      // simulate other verbs over post
      params['_method'] = this.method;
      this.method = 'post';
    }

    this.parameters = params;

    if (params = Object.toQueryString(params)) {
      // when GET, append parameters to URL
      if (this.method == 'get')
        this.url += (this.url.include('?') ? '&' : '?') + params;
      else if (/Konqueror|Safari|KHTML/.test(navigator.userAgent))
        params += '&_=';
    }

    try {
      var response = new Ajax.Response(this);
      if (this.options.onCreate) this.options.onCreate(response);
      Ajax.Responders.dispatch('onCreate', this, response);

      this.transport.open(this.method.toUpperCase(), this.url,
        this.options.asynchronous);

      if (this.options.asynchronous) this.respondToReadyState.bind(this).defer(1);

      this.transport.onreadystatechange = this.onStateChange.bind(this);
      this.setRequestHeaders();

      this.body = this.method == 'post' ? (this.options.postBody || params) : null;
      this.transport.send(this.body);

      /* Force Firefox to handle ready state 4 for synchronous requests */
      if (!this.options.asynchronous && this.transport.overrideMimeType)
        this.onStateChange();

    }
    catch (e) {
      this.dispatchException(e);
    }
  },

  onStateChange: function() {
    var readyState = this.transport.readyState;
    if (readyState > 1 && !((readyState == 4) && this._complete))
      this.respondToReadyState(this.transport.readyState);
  },

  setRequestHeaders: function() {
    var headers = {
      'X-Requested-With': 'XMLHttpRequest',
      'X-Prototype-Version': Prototype.Version,
      'Accept': 'text/javascript, text/html, application/xml, text/xml, */*'
    };

    if (this.method == 'post') {
      headers['Content-type'] = this.options.contentType +
        (this.options.encoding ? '; charset=' + this.options.encoding : '');

      /* Force "Connection: close" for older Mozilla browsers to work
       * around a bug where XMLHttpRequest sends an incorrect
       * Content-length header. See Mozilla Bugzilla #246651.
       */
      if (this.transport.overrideMimeType &&
          (navigator.userAgent.match(/Gecko\/(\d{4})/) || [0,2005])[1] < 2005)
            headers['Connection'] = 'close';
    }

    // user-defined headers
    if (typeof this.options.requestHeaders == 'object') {
      var extras = this.options.requestHeaders;

      if (Object.isFunction(extras.push))
        for (var i = 0, length = extras.length; i < length; i += 2)
          headers[extras[i]] = extras[i+1];
      else
        $H(extras).each(function(pair) { headers[pair.key] = pair.value });
    }

    for (var name in headers)
      this.transport.setRequestHeader(name, headers[name]);
  },

  success: function() {
    var status = this.getStatus();
    return !status || (status >= 200 && status < 300);
  },

  getStatus: function() {
    try {
      return this.transport.status || 0;
    } catch (e) { return 0 }
  },

  respondToReadyState: function(readyState) {
    var state = Ajax.Request.Events[readyState], response = new Ajax.Response(this);

    if (state == 'Complete') {
      try {
        this._complete = true;
        (this.options['on' + response.status]
         || this.options['on' + (this.success() ? 'Success' : 'Failure')]
         || Prototype.emptyFunction)(response, response.headerJSON);
      } catch (e) {
        this.dispatchException(e);
      }

      var contentType = response.getHeader('Content-type');
      if (this.options.evalJS == 'force'
          || (this.options.evalJS && this.isSameOrigin() && contentType
          && contentType.match(/^\s*(text|application)\/(x-)?(java|ecma)script(;.*)?\s*$/i)))
        this.evalResponse();
    }

    try {
      (this.options['on' + state] || Prototype.emptyFunction)(response, response.headerJSON);
      Ajax.Responders.dispatch('on' + state, this, response, response.headerJSON);
    } catch (e) {
      this.dispatchException(e);
    }

    if (state == 'Complete') {
      // avoid memory leak in MSIE: clean up
      this.transport.onreadystatechange = Prototype.emptyFunction;
    }
  },

  isSameOrigin: function() {
    var m = this.url.match(/^\s*https?:\/\/[^\/]*/);
    return !m || (m[0] == '#{protocol}//#{domain}#{port}'.interpolate({
      protocol: location.protocol,
      domain: document.domain,
      port: location.port ? ':' + location.port : ''
    }));
  },

  getHeader: function(name) {
    try {
      return this.transport.getResponseHeader(name) || null;
    } catch (e) { return null }
  },

  evalResponse: function() {
    try {
      return eval((this.transport.responseText || '').unfilterJSON());
    } catch (e) {
      this.dispatchException(e);
    }
  },

  dispatchException: function(exception) {
    (this.options.onException || Prototype.emptyFunction)(this, exception);
    Ajax.Responders.dispatch('onException', this, exception);
  }
});

Ajax.Request.Events =
  ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete'];

Ajax.Response = Class.create({
  initialize: function(request){
    this.request = request;
    var transport  = this.transport  = request.transport,
        readyState = this.readyState = transport.readyState;

    if((readyState > 2 && !Prototype.Browser.IE) || readyState == 4) {
      this.status       = this.getStatus();
      this.statusText   = this.getStatusText();
      this.responseText = String.interpret(transport.responseText);
      this.headerJSON   = this._getHeaderJSON();
    }

    if(readyState == 4) {
      var xml = transport.responseXML;
      this.responseXML  = Object.isUndefined(xml) ? null : xml;
      this.responseJSON = this._getResponseJSON();
    }
  },

  status:      0,
  statusText: '',

  getStatus: Ajax.Request.prototype.getStatus,

  getStatusText: function() {
    try {
      return this.transport.statusText || '';
    } catch (e) { return '' }
  },

  getHeader: Ajax.Request.prototype.getHeader,

  getAllHeaders: function() {
    try {
      return this.getAllResponseHeaders();
    } catch (e) { return null }
  },

  getResponseHeader: function(name) {
    return this.transport.getResponseHeader(name);
  },

  getAllResponseHeaders: function() {
    return this.transport.getAllResponseHeaders();
  },

  _getHeaderJSON: function() {
    var json = this.getHeader('X-JSON');
    if (!json) return null;
    json = decodeURIComponent(escape(json));
    try {
      return json.evalJSON(this.request.options.sanitizeJSON ||
        !this.request.isSameOrigin());
    } catch (e) {
      this.request.dispatchException(e);
    }
  },

  _getResponseJSON: function() {
    var options = this.request.options;
    if (!options.evalJSON || (options.evalJSON != 'force' &&
      !(this.getHeader('Content-type') || '').include('application/json')) ||
        this.responseText.blank())
          return null;
    try {
      return this.responseText.evalJSON(options.sanitizeJSON ||
        !this.request.isSameOrigin());
    } catch (e) {
      this.request.dispatchException(e);
    }
  }
});

Ajax.Updater = Class.create(Ajax.Request, {
  initialize: function($super, container, url, options) {
    this.container = {
      success: (container.success || container),
      failure: (container.failure || (container.success ? null : container))
    };

    options = Object.clone(options);
    var onComplete = options.onComplete;
    options.onComplete = (function(response, json) {
      this.updateContent(response.responseText);
      if (Object.isFunction(onComplete)) onComplete(response, json);
    }).bind(this);

    $super(url, options);
  },

  updateContent: function(responseText) {
    var receiver = this.container[this.success() ? 'success' : 'failure'],
        options = this.options;

    if (!options.evalScripts) responseText = responseText.stripScripts();

    if (receiver = $(receiver)) {
      if (options.insertion) {
        if (Object.isString(options.insertion)) {
          var insertion = { }; insertion[options.insertion] = responseText;
          receiver.insert(insertion);
        }
        else options.insertion(receiver, responseText);
      }
      else receiver.update(responseText);
    }
  }
});

Ajax.PeriodicalUpdater = Class.create(Ajax.Base, {
  initialize: function($super, container, url, options) {
    $super(options);
    this.onComplete = this.options.onComplete;

    this.frequency = (this.options.frequency || 2);
    this.decay = (this.options.decay || 1);

    this.updater = { };
    this.container = container;
    this.url = url;

    this.start();
  },

  start: function() {
    this.options.onComplete = this.updateComplete.bind(this);
    this.onTimerEvent();
  },

  stop: function() {
    this.updater.options.onComplete = undefined;
    clearTimeout(this.timer);
    (this.onComplete || Prototype.emptyFunction).apply(this, arguments);
  },

  updateComplete: function(response) {
    if (this.options.decay) {
      this.decay = (response.responseText == this.lastText ?
        this.decay * this.options.decay : 1);

      this.lastText = response.responseText;
    }
    this.timer = this.onTimerEvent.bind(this).delay(this.decay * this.frequency);
  },

  onTimerEvent: function() {
    this.updater = new Ajax.Updater(this.container, this.url, this.options);
  }
});
function $(element) {
  if (arguments.length > 1) {
    for (var i = 0, elements = [], length = arguments.length; i < length; i++)
      elements.push($(arguments[i]));
    return elements;
  }
  if (Object.isString(element))
    element = document.getElementById(element);
  return Element.extend(element);
}

if (Prototype.BrowserFeatures.XPath) {
  document._getElementsByXPath = function(expression, parentElement) {
    var results = [];
    var query = document.evaluate(expression, $(parentElement) || document,
      null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
    for (var i = 0, length = query.snapshotLength; i < length; i++)
      results.push(Element.extend(query.snapshotItem(i)));
    return results;
  };
}

/*--------------------------------------------------------------------------*/

if (!window.Node) var Node = { };

if (!Node.ELEMENT_NODE) {
  // DOM level 2 ECMAScript Language Binding
  Object.extend(Node, {
    ELEMENT_NODE: 1,
    ATTRIBUTE_NODE: 2,
    TEXT_NODE: 3,
    CDATA_SECTION_NODE: 4,
    ENTITY_REFERENCE_NODE: 5,
    ENTITY_NODE: 6,
    PROCESSING_INSTRUCTION_NODE: 7,
    COMMENT_NODE: 8,
    DOCUMENT_NODE: 9,
    DOCUMENT_TYPE_NODE: 10,
    DOCUMENT_FRAGMENT_NODE: 11,
    NOTATION_NODE: 12
  });
}

(function() {
  var element = this.Element;
  this.Element = function(tagName, attributes) {
    attributes = attributes || { };
    tagName = tagName.toLowerCase();
    var cache = Element.cache;
    if (Prototype.Browser.IE && attributes.name) {
      tagName = '<' + tagName + ' name="' + attributes.name + '">';
      delete attributes.name;
      return Element.writeAttribute(document.createElement(tagName), attributes);
    }
    if (!cache[tagName]) cache[tagName] = Element.extend(document.createElement(tagName));
    return Element.writeAttribute(cache[tagName].cloneNode(false), attributes);
  };
  Object.extend(this.Element, element || { });
  if (element) this.Element.prototype = element.prototype;
}).call(window);

Element.cache = { };

Element.Methods = {
  visible: function(element) {
    return $(element).style.display != 'none';
  },

  toggle: function(element) {
    element = $(element);
    Element[Element.visible(element) ? 'hide' : 'show'](element);
    return element;
  },

  hide: function(element) {
    element = $(element);
    element.style.display = 'none';
    return element;
  },

  show: function(element) {
    element = $(element);
    element.style.display = '';
    return element;
  },

  remove: function(element) {
    element = $(element);
    element.parentNode.removeChild(element);
    return element;
  },

  update: function(element, content) {
    element = $(element);
    if (content && content.toElement) content = content.toElement();
    if (Object.isElement(content)) return element.update().insert(content);
    content = Object.toHTML(content);
    element.innerHTML = content.stripScripts();
    content.evalScripts.bind(content).defer();
    return element;
  },

  replace: function(element, content) {
    element = $(element);
    if (content && content.toElement) content = content.toElement();
    else if (!Object.isElement(content)) {
      content = Object.toHTML(content);
      var range = element.ownerDocument.createRange();
      range.selectNode(element);
      content.evalScripts.bind(content).defer();
      content = range.createContextualFragment(content.stripScripts());
    }
    element.parentNode.replaceChild(content, element);
    return element;
  },

  insert: function(element, insertions) {
    element = $(element);

    if (Object.isString(insertions) || Object.isNumber(insertions) ||
        Object.isElement(insertions) || (insertions && (insertions.toElement || insertions.toHTML)))
          insertions = {bottom:insertions};

    var content, insert, tagName, childNodes;

    for (var position in insertions) {
      content  = insertions[position];
      position = position.toLowerCase();
      insert = Element._insertionTranslations[position];

      if (content && content.toElement) content = content.toElement();
      if (Object.isElement(content)) {
        insert(element, content);
        continue;
      }

      content = Object.toHTML(content);

      tagName = ((position == 'before' || position == 'after')
        ? element.parentNode : element).tagName.toUpperCase();

      childNodes = Element._getContentFromAnonymousElement(tagName, content.stripScripts());

      if (position == 'top' || position == 'after') childNodes.reverse();
      childNodes.each(insert.curry(element));

      content.evalScripts.bind(content).defer();
    }

    return element;
  },

  wrap: function(element, wrapper, attributes) {
    element = $(element);
    if (Object.isElement(wrapper))
      $(wrapper).writeAttribute(attributes || { });
    else if (Object.isString(wrapper)) wrapper = new Element(wrapper, attributes);
    else wrapper = new Element('div', wrapper);
    if (element.parentNode)
      element.parentNode.replaceChild(wrapper, element);
    wrapper.appendChild(element);
    return wrapper;
  },

  inspect: function(element) {
    element = $(element);
    var result = '<' + element.tagName.toLowerCase();
    $H({'id': 'id', 'className': 'class'}).each(function(pair) {
      var property = pair.first(), attribute = pair.last();
      var value = (element[property] || '').toString();
      if (value) result += ' ' + attribute + '=' + value.inspect(true);
    });
    return result + '>';
  },

  recursivelyCollect: function(element, property) {
    element = $(element);
    var elements = [];
    while (element = element[property])
      if (element.nodeType == 1)
        elements.push(Element.extend(element));
    return elements;
  },

  ancestors: function(element) {
    return $(element).recursivelyCollect('parentNode');
  },

  descendants: function(element) {
    return $(element).select("*");
  },

  firstDescendant: function(element) {
    element = $(element).firstChild;
    while (element && element.nodeType != 1) element = element.nextSibling;
    return $(element);
  },

  immediateDescendants: function(element) {
    if (!(element = $(element).firstChild)) return [];
    while (element && element.nodeType != 1) element = element.nextSibling;
    if (element) return [element].concat($(element).nextSiblings());
    return [];
  },

  previousSiblings: function(element) {
    return $(element).recursivelyCollect('previousSibling');
  },

  nextSiblings: function(element) {
    return $(element).recursivelyCollect('nextSibling');
  },

  siblings: function(element) {
    element = $(element);
    return element.previousSiblings().reverse().concat(element.nextSiblings());
  },

  match: function(element, selector) {
    if (Object.isString(selector))
      selector = new Selector(selector);
    return selector.match($(element));
  },

  up: function(element, expression, index) {
    element = $(element);
    if (arguments.length == 1) return $(element.parentNode);
    var ancestors = element.ancestors();
    return Object.isNumber(expression) ? ancestors[expression] :
      Selector.findElement(ancestors, expression, index);
  },

  down: function(element, expression, index) {
    element = $(element);
    if (arguments.length == 1) return element.firstDescendant();
    return Object.isNumber(expression) ? element.descendants()[expression] :
      Element.select(element, expression)[index || 0];
  },

  previous: function(element, expression, index) {
    element = $(element);
    if (arguments.length == 1) return $(Selector.handlers.previousElementSibling(element));
    var previousSiblings = element.previousSiblings();
    return Object.isNumber(expression) ? previousSiblings[expression] :
      Selector.findElement(previousSiblings, expression, index);
  },

  next: function(element, expression, index) {
    element = $(element);
    if (arguments.length == 1) return $(Selector.handlers.nextElementSibling(element));
    var nextSiblings = element.nextSiblings();
    return Object.isNumber(expression) ? nextSiblings[expression] :
      Selector.findElement(nextSiblings, expression, index);
  },

  select: function() {
    var args = $A(arguments), element = $(args.shift());
    return Selector.findChildElements(element, args);
  },

  adjacent: function() {
    var args = $A(arguments), element = $(args.shift());
    return Selector.findChildElements(element.parentNode, args).without(element);
  },

  identify: function(element) {
    element = $(element);
    var id = element.readAttribute('id'), self = arguments.callee;
    if (id) return id;
    do { id = 'anonymous_element_' + self.counter++ } while ($(id));
    element.writeAttribute('id', id);
    return id;
  },

  readAttribute: function(element, name) {
    element = $(element);
    if (Prototype.Browser.IE) {
      var t = Element._attributeTranslations.read;
      if (t.values[name]) return t.values[name](element, name);
      if (t.names[name]) name = t.names[name];
      if (name.include(':')) {
        return (!element.attributes || !element.attributes[name]) ? null :
         element.attributes[name].value;
      }
    }
    return element.getAttribute(name);
  },

  writeAttribute: function(element, name, value) {
    element = $(element);
    var attributes = { }, t = Element._attributeTranslations.write;

    if (typeof name == 'object') attributes = name;
    else attributes[name] = Object.isUndefined(value) ? true : value;

    for (var attr in attributes) {
      name = t.names[attr] || attr;
      value = attributes[attr];
      if (t.values[attr]) name = t.values[attr](element, value);
      if (value === false || value === null)
        element.removeAttribute(name);
      else if (value === true)
        element.setAttribute(name, name);
      else element.setAttribute(name, value);
    }
    return element;
  },

  getHeight: function(element) {
    return $(element).getDimensions().height;
  },

  getWidth: function(element) {
    return $(element).getDimensions().width;
  },

  classNames: function(element) {
    return new Element.ClassNames(element);
  },

  hasClassName: function(element, className) {
    if (!(element = $(element))) return;
    var elementClassName = element.className;
    return (elementClassName.length > 0 && (elementClassName == className ||
      new RegExp("(^|\\s)" + className + "(\\s|$)").test(elementClassName)));
  },

  addClassName: function(element, className) {
    if (!(element = $(element))) return;
    if (!element.hasClassName(className))
      element.className += (element.className ? ' ' : '') + className;
    return element;
  },

  removeClassName: function(element, className) {
    if (!(element = $(element))) return;
    element.className = element.className.replace(
      new RegExp("(^|\\s+)" + className + "(\\s+|$)"), ' ').strip();
    return element;
  },

  toggleClassName: function(element, className) {
    if (!(element = $(element))) return;
    return element[element.hasClassName(className) ?
      'removeClassName' : 'addClassName'](className);
  },

  // removes whitespace-only text node children
  cleanWhitespace: function(element) {
    element = $(element);
    var node = element.firstChild;
    while (node) {
      var nextNode = node.nextSibling;
      if (node.nodeType == 3 && !/\S/.test(node.nodeValue))
        element.removeChild(node);
      node = nextNode;
    }
    return element;
  },

  empty: function(element) {
    return $(element).innerHTML.blank();
  },

  descendantOf: function(element, ancestor) {
    element = $(element), ancestor = $(ancestor);

    if (element.compareDocumentPosition)
      return (element.compareDocumentPosition(ancestor) & 8) === 8;

    if (ancestor.contains)
      return ancestor.contains(element) && ancestor !== element;

    while (element = element.parentNode)
      if (element == ancestor) return true;

    return false;
  },

  scrollTo: function(element) {
    element = $(element);
    var pos = element.cumulativeOffset();
    window.scrollTo(pos[0], pos[1]);
    return element;
  },

  getStyle: function(element, style) {
    element = $(element);
    style = style == 'float' ? 'cssFloat' : style.camelize();
    var value = element.style[style];
    if (!value || value == 'auto') {
      var css = document.defaultView.getComputedStyle(element, null);
      value = css ? css[style] : null;
    }
    if (style == 'opacity') return value ? parseFloat(value) : 1.0;
    return value == 'auto' ? null : value;
  },

  getOpacity: function(element) {
    return $(element).getStyle('opacity');
  },

  setStyle: function(element, styles) {
    element = $(element);
    var elementStyle = element.style, match;
    if (Object.isString(styles)) {
      element.style.cssText += ';' + styles;
      return styles.include('opacity') ?
        element.setOpacity(styles.match(/opacity:\s*(\d?\.?\d*)/)[1]) : element;
    }
    for (var property in styles)
      if (property == 'opacity') element.setOpacity(styles[property]);
      else
        elementStyle[(property == 'float' || property == 'cssFloat') ?
          (Object.isUndefined(elementStyle.styleFloat) ? 'cssFloat' : 'styleFloat') :
            property] = styles[property];

    return element;
  },

  setOpacity: function(element, value) {
    element = $(element);
    element.style.opacity = (value == 1 || value === '') ? '' :
      (value < 0.00001) ? 0 : value;
    return element;
  },

  getDimensions: function(element) {
    element = $(element);
    var display = element.getStyle('display');
    if (display != 'none' && display != null) // Safari bug
      return {width: element.offsetWidth, height: element.offsetHeight};

    // All *Width and *Height properties give 0 on elements with display none,
    // so enable the element temporarily
    var els = element.style;
    var originalVisibility = els.visibility;
    var originalPosition = els.position;
    var originalDisplay = els.display;
    els.visibility = 'hidden';
    els.position = 'absolute';
    els.display = 'block';
    var originalWidth = element.clientWidth;
    var originalHeight = element.clientHeight;
    els.display = originalDisplay;
    els.position = originalPosition;
    els.visibility = originalVisibility;
    return {width: originalWidth, height: originalHeight};
  },

  makePositioned: function(element) {
    element = $(element);
    var pos = Element.getStyle(element, 'position');
    if (pos == 'static' || !pos) {
      element._madePositioned = true;
      element.style.position = 'relative';
      // Opera returns the offset relative to the positioning context, when an
      // element is position relative but top and left have not been defined
      if (Prototype.Browser.Opera) {
        element.style.top = 0;
        element.style.left = 0;
      }
    }
    return element;
  },

  undoPositioned: function(element) {
    element = $(element);
    if (element._madePositioned) {
      element._madePositioned = undefined;
      element.style.position =
        element.style.top =
        element.style.left =
        element.style.bottom =
        element.style.right = '';
    }
    return element;
  },

  makeClipping: function(element) {
    element = $(element);
    if (element._overflow) return element;
    element._overflow = Element.getStyle(element, 'overflow') || 'auto';
    if (element._overflow !== 'hidden')
      element.style.overflow = 'hidden';
    return element;
  },

  undoClipping: function(element) {
    element = $(element);
    if (!element._overflow) return element;
    element.style.overflow = element._overflow == 'auto' ? '' : element._overflow;
    element._overflow = null;
    return element;
  },

  cumulativeOffset: function(element) {
    var valueT = 0, valueL = 0;
    do {
      valueT += element.offsetTop  || 0;
      valueL += element.offsetLeft || 0;
      element = element.offsetParent;
    } while (element);
    return Element._returnOffset(valueL, valueT);
  },

  positionedOffset: function(element) {
    var valueT = 0, valueL = 0;
    do {
      valueT += element.offsetTop  || 0;
      valueL += element.offsetLeft || 0;
      element = element.offsetParent;
      if (element) {
        if (element.tagName.toUpperCase() == 'BODY') break;
        var p = Element.getStyle(element, 'position');
        if (p !== 'static') break;
      }
    } while (element);
    return Element._returnOffset(valueL, valueT);
  },

  absolutize: function(element) {
    element = $(element);
    if (element.getStyle('position') == 'absolute') return element;
    // Position.prepare(); // To be done manually by Scripty when it needs it.

    var offsets = element.positionedOffset();
    var top     = offsets[1];
    var left    = offsets[0];
    var width   = element.clientWidth;
    var height  = element.clientHeight;

    element._originalLeft   = left - parseFloat(element.style.left  || 0);
    element._originalTop    = top  - parseFloat(element.style.top || 0);
    element._originalWidth  = element.style.width;
    element._originalHeight = element.style.height;

    element.style.position = 'absolute';
    element.style.top    = top + 'px';
    element.style.left   = left + 'px';
    element.style.width  = width + 'px';
    element.style.height = height + 'px';
    return element;
  },

  relativize: function(element) {
    element = $(element);
    if (element.getStyle('position') == 'relative') return element;
    // Position.prepare(); // To be done manually by Scripty when it needs it.

    element.style.position = 'relative';
    var top  = parseFloat(element.style.top  || 0) - (element._originalTop || 0);
    var left = parseFloat(element.style.left || 0) - (element._originalLeft || 0);

    element.style.top    = top + 'px';
    element.style.left   = left + 'px';
    element.style.height = element._originalHeight;
    element.style.width  = element._originalWidth;
    return element;
  },

  cumulativeScrollOffset: function(element) {
    var valueT = 0, valueL = 0;
    do {
      valueT += element.scrollTop  || 0;
      valueL += element.scrollLeft || 0;
      element = element.parentNode;
    } while (element);
    return Element._returnOffset(valueL, valueT);
  },

  getOffsetParent: function(element) {
    if (element.offsetParent) return $(element.offsetParent);
    if (element == document.body) return $(element);

    while ((element = element.parentNode) && element != document.body)
      if (Element.getStyle(element, 'position') != 'static')
        return $(element);

    return $(document.body);
  },

  viewportOffset: function(forElement) {
    var valueT = 0, valueL = 0;

    var element = forElement;
    do {
      valueT += element.offsetTop  || 0;
      valueL += element.offsetLeft || 0;

      // Safari fix
      if (element.offsetParent == document.body &&
        Element.getStyle(element, 'position') == 'absolute') break;

    } while (element = element.offsetParent);

    element = forElement;
    do {
      if (!Prototype.Browser.Opera || (element.tagName && (element.tagName.toUpperCase() == 'BODY'))) {
        valueT -= element.scrollTop  || 0;
        valueL -= element.scrollLeft || 0;
      }
    } while (element = element.parentNode);

    return Element._returnOffset(valueL, valueT);
  },

  clonePosition: function(element, source) {
    var options = Object.extend({
      setLeft:    true,
      setTop:     true,
      setWidth:   true,
      setHeight:  true,
      offsetTop:  0,
      offsetLeft: 0
    }, arguments[2] || { });

    // find page position of source
    source = $(source);
    var p = source.viewportOffset();

    // find coordinate system to use
    element = $(element);
    var delta = [0, 0];
    var parent = null;
    // delta [0,0] will do fine with position: fixed elements,
    // position:absolute needs offsetParent deltas
    if (Element.getStyle(element, 'position') == 'absolute') {
      parent = element.getOffsetParent();
      delta = parent.viewportOffset();
    }

    // correct by body offsets (fixes Safari)
    if (parent == document.body) {
      delta[0] -= document.body.offsetLeft;
      delta[1] -= document.body.offsetTop;
    }

    // set position
    if (options.setLeft)   element.style.left  = (p[0] - delta[0] + options.offsetLeft) + 'px';
    if (options.setTop)    element.style.top   = (p[1] - delta[1] + options.offsetTop) + 'px';
    if (options.setWidth)  element.style.width = source.offsetWidth + 'px';
    if (options.setHeight) element.style.height = source.offsetHeight + 'px';
    return element;
  }
};

Element.Methods.identify.counter = 1;

Object.extend(Element.Methods, {
  getElementsBySelector: Element.Methods.select,
  childElements: Element.Methods.immediateDescendants
});

Element._attributeTranslations = {
  write: {
    names: {
      className: 'class',
      htmlFor:   'for'
    },
    values: { }
  }
};

if (Prototype.Browser.Opera) {
  Element.Methods.getStyle = Element.Methods.getStyle.wrap(
    function(proceed, element, style) {
      switch (style) {
        case 'left': case 'top': case 'right': case 'bottom':
          if (proceed(element, 'position') === 'static') return null;
        case 'height': case 'width':
          // returns '0px' for hidden elements; we want it to return null
          if (!Element.visible(element)) return null;

          // returns the border-box dimensions rather than the content-box
          // dimensions, so we subtract padding and borders from the value
          var dim = parseInt(proceed(element, style), 10);

          if (dim !== element['offset' + style.capitalize()])
            return dim + 'px';

          var properties;
          if (style === 'height') {
            properties = ['border-top-width', 'padding-top',
             'padding-bottom', 'border-bottom-width'];
          }
          else {
            properties = ['border-left-width', 'padding-left',
             'padding-right', 'border-right-width'];
          }
          return properties.inject(dim, function(memo, property) {
            var val = proceed(element, property);
            return val === null ? memo : memo - parseInt(val, 10);
          }) + 'px';
        default: return proceed(element, style);
      }
    }
  );

  Element.Methods.readAttribute = Element.Methods.readAttribute.wrap(
    function(proceed, element, attribute) {
      if (attribute === 'title') return element.title;
      return proceed(element, attribute);
    }
  );
}

else if (Prototype.Browser.IE) {
  // IE doesn't report offsets correctly for static elements, so we change them
  // to "relative" to get the values, then change them back.
  Element.Methods.getOffsetParent = Element.Methods.getOffsetParent.wrap(
    function(proceed, element) {
      element = $(element);
      // IE throws an error if element is not in document
      try { element.offsetParent }
      catch(e) { return $(document.body) }
      var position = element.getStyle('position');
      if (position !== 'static') return proceed(element);
      element.setStyle({ position: 'relative' });
      var value = proceed(element);
      element.setStyle({ position: position });
      return value;
    }
  );

  $w('positionedOffset viewportOffset').each(function(method) {
    Element.Methods[method] = Element.Methods[method].wrap(
      function(proceed, element) {
        element = $(element);
        try { element.offsetParent }
        catch(e) { return Element._returnOffset(0,0) }
        var position = element.getStyle('position');
        if (position !== 'static') return proceed(element);
        // Trigger hasLayout on the offset parent so that IE6 reports
        // accurate offsetTop and offsetLeft values for position: fixed.
        var offsetParent = element.getOffsetParent();
        if (offsetParent && offsetParent.getStyle('position') === 'fixed')
          offsetParent.setStyle({ zoom: 1 });
        element.setStyle({ position: 'relative' });
        var value = proceed(element);
        element.setStyle({ position: position });
        return value;
      }
    );
  });

  Element.Methods.cumulativeOffset = Element.Methods.cumulativeOffset.wrap(
    function(proceed, element) {
      try { element.offsetParent }
      catch(e) { return Element._returnOffset(0,0) }
      return proceed(element);
    }
  );

  Element.Methods.getStyle = function(element, style) {
    element = $(element);
    style = (style == 'float' || style == 'cssFloat') ? 'styleFloat' : style.camelize();
    var value = element.style[style];
    if (!value && element.currentStyle) value = element.currentStyle[style];

    if (style == 'opacity') {
      if (value = (element.getStyle('filter') || '').match(/alpha\(opacity=(.*)\)/))
        if (value[1]) return parseFloat(value[1]) / 100;
      return 1.0;
    }

    if (value == 'auto') {
      if ((style == 'width' || style == 'height') && (element.getStyle('display') != 'none'))
        return element['offset' + style.capitalize()] + 'px';
      return null;
    }
    return value;
  };

  Element.Methods.setOpacity = function(element, value) {
    function stripAlpha(filter){
      return filter.replace(/alpha\([^\)]*\)/gi,'');
    }
    element = $(element);
    var currentStyle = element.currentStyle;
    if ((currentStyle && !currentStyle.hasLayout) ||
      (!currentStyle && element.style.zoom == 'normal'))
        element.style.zoom = 1;

    var filter = element.getStyle('filter'), style = element.style;
    if (value == 1 || value === '') {
      (filter = stripAlpha(filter)) ?
        style.filter = filter : style.removeAttribute('filter');
      return element;
    } else if (value < 0.00001) value = 0;
    style.filter = stripAlpha(filter) +
      'alpha(opacity=' + (value * 100) + ')';
    return element;
  };

  Element._attributeTranslations = {
    read: {
      names: {
        'class': 'className',
        'for':   'htmlFor'
      },
      values: {
        _getAttr: function(element, attribute) {
          return element.getAttribute(attribute, 2);
        },
        _getAttrNode: function(element, attribute) {
          var node = element.getAttributeNode(attribute);
          return node ? node.value : "";
        },
        _getEv: function(element, attribute) {
          attribute = element.getAttribute(attribute);
          return attribute ? attribute.toString().slice(23, -2) : null;
        },
        _flag: function(element, attribute) {
          return $(element).hasAttribute(attribute) ? attribute : null;
        },
        style: function(element) {
          return element.style.cssText.toLowerCase();
        },
        title: function(element) {
          return element.title;
        }
      }
    }
  };

  Element._attributeTranslations.write = {
    names: Object.extend({
      cellpadding: 'cellPadding',
      cellspacing: 'cellSpacing'
    }, Element._attributeTranslations.read.names),
    values: {
      checked: function(element, value) {
        element.checked = !!value;
      },

      style: function(element, value) {
        element.style.cssText = value ? value : '';
      }
    }
  };

  Element._attributeTranslations.has = {};

  $w('colSpan rowSpan vAlign dateTime accessKey tabIndex ' +
      'encType maxLength readOnly longDesc frameBorder').each(function(attr) {
    Element._attributeTranslations.write.names[attr.toLowerCase()] = attr;
    Element._attributeTranslations.has[attr.toLowerCase()] = attr;
  });

  (function(v) {
    Object.extend(v, {
      href:        v._getAttr,
      src:         v._getAttr,
      type:        v._getAttr,
      action:      v._getAttrNode,
      disabled:    v._flag,
      checked:     v._flag,
      readonly:    v._flag,
      multiple:    v._flag,
      onload:      v._getEv,
      onunload:    v._getEv,
      onclick:     v._getEv,
      ondblclick:  v._getEv,
      onmousedown: v._getEv,
      onmouseup:   v._getEv,
      onmouseover: v._getEv,
      onmousemove: v._getEv,
      onmouseout:  v._getEv,
      onfocus:     v._getEv,
      onblur:      v._getEv,
      onkeypress:  v._getEv,
      onkeydown:   v._getEv,
      onkeyup:     v._getEv,
      onsubmit:    v._getEv,
      onreset:     v._getEv,
      onselect:    v._getEv,
      onchange:    v._getEv
    });
  })(Element._attributeTranslations.read.values);
}

else if (Prototype.Browser.Gecko && /rv:1\.8\.0/.test(navigator.userAgent)) {
  Element.Methods.setOpacity = function(element, value) {
    element = $(element);
    element.style.opacity = (value == 1) ? 0.999999 :
      (value === '') ? '' : (value < 0.00001) ? 0 : value;
    return element;
  };
}

else if (Prototype.Browser.WebKit) {
  Element.Methods.setOpacity = function(element, value) {
    element = $(element);
    element.style.opacity = (value == 1 || value === '') ? '' :
      (value < 0.00001) ? 0 : value;

    if (value == 1)
      if(element.tagName.toUpperCase() == 'IMG' && element.width) {
        element.width++; element.width--;
      } else try {
        var n = document.createTextNode(' ');
        element.appendChild(n);
        element.removeChild(n);
      } catch (e) { }

    return element;
  };

  // Safari returns margins on body which is incorrect if the child is absolutely
  // positioned.  For performance reasons, redefine Element#cumulativeOffset for
  // KHTML/WebKit only.
  Element.Methods.cumulativeOffset = function(element) {
    var valueT = 0, valueL = 0;
    do {
      valueT += element.offsetTop  || 0;
      valueL += element.offsetLeft || 0;
      if (element.offsetParent == document.body)
        if (Element.getStyle(element, 'position') == 'absolute') break;

      element = element.offsetParent;
    } while (element);

    return Element._returnOffset(valueL, valueT);
  };
}

if (Prototype.Browser.IE || Prototype.Browser.Opera) {
  // IE and Opera are missing .innerHTML support for TABLE-related and SELECT elements
  Element.Methods.update = function(element, content) {
    element = $(element);

    if (content && content.toElement) content = content.toElement();
    if (Object.isElement(content)) return element.update().insert(content);

    content = Object.toHTML(content);
    var tagName = element.tagName.toUpperCase();

    if (tagName in Element._insertionTranslations.tags) {
      $A(element.childNodes).each(function(node) { element.removeChild(node) });
      Element._getContentFromAnonymousElement(tagName, content.stripScripts())
        .each(function(node) { element.appendChild(node) });
    }
    else element.innerHTML = content.stripScripts();

    content.evalScripts.bind(content).defer();
    return element;
  };
}

if ('outerHTML' in document.createElement('div')) {
  Element.Methods.replace = function(element, content) {
    element = $(element);

    if (content && content.toElement) content = content.toElement();
    if (Object.isElement(content)) {
      element.parentNode.replaceChild(content, element);
      return element;
    }

    content = Object.toHTML(content);
    var parent = element.parentNode, tagName = parent.tagName.toUpperCase();

    if (Element._insertionTranslations.tags[tagName]) {
      var nextSibling = element.next();
      var fragments = Element._getContentFromAnonymousElement(tagName, content.stripScripts());
      parent.removeChild(element);
      if (nextSibling)
        fragments.each(function(node) { parent.insertBefore(node, nextSibling) });
      else
        fragments.each(function(node) { parent.appendChild(node) });
    }
    else element.outerHTML = content.stripScripts();

    content.evalScripts.bind(content).defer();
    return element;
  };
}

Element._returnOffset = function(l, t) {
  var result = [l, t];
  result.left = l;
  result.top = t;
  return result;
};

Element._getContentFromAnonymousElement = function(tagName, html) {
  var div = new Element('div'), t = Element._insertionTranslations.tags[tagName];
  if (t) {
    div.innerHTML = t[0] + html + t[1];
    t[2].times(function() { div = div.firstChild });
  } else div.innerHTML = html;
  return $A(div.childNodes);
};

Element._insertionTranslations = {
  before: function(element, node) {
    element.parentNode.insertBefore(node, element);
  },
  top: function(element, node) {
    element.insertBefore(node, element.firstChild);
  },
  bottom: function(element, node) {
    element.appendChild(node);
  },
  after: function(element, node) {
    element.parentNode.insertBefore(node, element.nextSibling);
  },
  tags: {
    TABLE:  ['<table>',                '</table>',                   1],
    TBODY:  ['<table><tbody>',         '</tbody></table>',           2],
    TR:     ['<table><tbody><tr>',     '</tr></tbody></table>',      3],
    TD:     ['<table><tbody><tr><td>', '</td></tr></tbody></table>', 4],
    SELECT: ['<select>',               '</select>',                  1]
  }
};

(function() {
  Object.extend(this.tags, {
    THEAD: this.tags.TBODY,
    TFOOT: this.tags.TBODY,
    TH:    this.tags.TD
  });
}).call(Element._insertionTranslations);

Element.Methods.Simulated = {
  hasAttribute: function(element, attribute) {
    attribute = Element._attributeTranslations.has[attribute] || attribute;
    var node = $(element).getAttributeNode(attribute);
    return !!(node && node.specified);
  }
};

Element.Methods.ByTag = { };

Object.extend(Element, Element.Methods);

if (!Prototype.BrowserFeatures.ElementExtensions &&
    document.createElement('div')['__proto__']) {
  window.HTMLElement = { };
  window.HTMLElement.prototype = document.createElement('div')['__proto__'];
  Prototype.BrowserFeatures.ElementExtensions = true;
}

Element.extend = (function() {
  if (Prototype.BrowserFeatures.SpecificElementExtensions)
    return Prototype.K;

  var Methods = { }, ByTag = Element.Methods.ByTag;

  var extend = Object.extend(function(element) {
    if (!element || element._extendedByPrototype ||
        element.nodeType != 1 || element == window) return element;

    var methods = Object.clone(Methods),
      tagName = element.tagName.toUpperCase(), property, value;

    // extend methods for specific tags
    if (ByTag[tagName]) Object.extend(methods, ByTag[tagName]);

    for (property in methods) {
      value = methods[property];
      if (Object.isFunction(value) && !(property in element))
        element[property] = value.methodize();
    }

    element._extendedByPrototype = Prototype.emptyFunction;
    return element;

  }, {
    refresh: function() {
      // extend methods for all tags (Safari doesn't need this)
      if (!Prototype.BrowserFeatures.ElementExtensions) {
        Object.extend(Methods, Element.Methods);
        Object.extend(Methods, Element.Methods.Simulated);
      }
    }
  });

  extend.refresh();
  return extend;
})();

Element.hasAttribute = function(element, attribute) {
  if (element.hasAttribute) return element.hasAttribute(attribute);
  return Element.Methods.Simulated.hasAttribute(element, attribute);
};

Element.addMethods = function(methods) {
  var F = Prototype.BrowserFeatures, T = Element.Methods.ByTag;

  if (!methods) {
    Object.extend(Form, Form.Methods);
    Object.extend(Form.Element, Form.Element.Methods);
    Object.extend(Element.Methods.ByTag, {
      "FORM":     Object.clone(Form.Methods),
      "INPUT":    Object.clone(Form.Element.Methods),
      "SELECT":   Object.clone(Form.Element.Methods),
      "TEXTAREA": Object.clone(Form.Element.Methods)
    });
  }

  if (arguments.length == 2) {
    var tagName = methods;
    methods = arguments[1];
  }

  if (!tagName) Object.extend(Element.Methods, methods || { });
  else {
    if (Object.isArray(tagName)) tagName.each(extend);
    else extend(tagName);
  }

  function extend(tagName) {
    tagName = tagName.toUpperCase();
    if (!Element.Methods.ByTag[tagName])
      Element.Methods.ByTag[tagName] = { };
    Object.extend(Element.Methods.ByTag[tagName], methods);
  }

  function copy(methods, destination, onlyIfAbsent) {
    onlyIfAbsent = onlyIfAbsent || false;
    for (var property in methods) {
      var value = methods[property];
      if (!Object.isFunction(value)) continue;
      if (!onlyIfAbsent || !(property in destination))
        destination[property] = value.methodize();
    }
  }

  function findDOMClass(tagName) {
    var klass;
    var trans = {
      "OPTGROUP": "OptGroup", "TEXTAREA": "TextArea", "P": "Paragraph",
      "FIELDSET": "FieldSet", "UL": "UList", "OL": "OList", "DL": "DList",
      "DIR": "Directory", "H1": "Heading", "H2": "Heading", "H3": "Heading",
      "H4": "Heading", "H5": "Heading", "H6": "Heading", "Q": "Quote",
      "INS": "Mod", "DEL": "Mod", "A": "Anchor", "IMG": "Image", "CAPTION":
      "TableCaption", "COL": "TableCol", "COLGROUP": "TableCol", "THEAD":
      "TableSection", "TFOOT": "TableSection", "TBODY": "TableSection", "TR":
      "TableRow", "TH": "TableCell", "TD": "TableCell", "FRAMESET":
      "FrameSet", "IFRAME": "IFrame"
    };
    if (trans[tagName]) klass = 'HTML' + trans[tagName] + 'Element';
    if (window[klass]) return window[klass];
    klass = 'HTML' + tagName + 'Element';
    if (window[klass]) return window[klass];
    klass = 'HTML' + tagName.capitalize() + 'Element';
    if (window[klass]) return window[klass];

    window[klass] = { };
    window[klass].prototype = document.createElement(tagName)['__proto__'];
    return window[klass];
  }

  if (F.ElementExtensions) {
    copy(Element.Methods, HTMLElement.prototype);
    copy(Element.Methods.Simulated, HTMLElement.prototype, true);
  }

  if (F.SpecificElementExtensions) {
    for (var tag in Element.Methods.ByTag) {
      var klass = findDOMClass(tag);
      if (Object.isUndefined(klass)) continue;
      copy(T[tag], klass.prototype);
    }
  }

  Object.extend(Element, Element.Methods);
  delete Element.ByTag;

  if (Element.extend.refresh) Element.extend.refresh();
  Element.cache = { };
};

document.viewport = {
  getDimensions: function() {
    var dimensions = { }, B = Prototype.Browser;
    $w('width height').each(function(d) {
      var D = d.capitalize();
      if (B.WebKit && !document.evaluate) {
        // Safari <3.0 needs self.innerWidth/Height
        dimensions[d] = self['inner' + D];
      } else if (B.Opera && parseFloat(window.opera.version()) < 9.5) {
        // Opera <9.5 needs document.body.clientWidth/Height
        dimensions[d] = document.body['client' + D]
      } else {
        dimensions[d] = document.documentElement['client' + D];
      }
    });
    return dimensions;
  },

  getWidth: function() {
    return this.getDimensions().width;
  },

  getHeight: function() {
    return this.getDimensions().height;
  },

  getScrollOffsets: function() {
    return Element._returnOffset(
      window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft,
      window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop);
  }
};
/* Portions of the Selector class are derived from Jack Slocum's DomQuery,
 * part of YUI-Ext version 0.40, distributed under the terms of an MIT-style
 * license.  Please see http://www.yui-ext.com/ for more information. */

var Selector = Class.create({
  initialize: function(expression) {
    this.expression = expression.strip();

    if (this.shouldUseSelectorsAPI()) {
      this.mode = 'selectorsAPI';
    } else if (this.shouldUseXPath()) {
      this.mode = 'xpath';
      this.compileXPathMatcher();
    } else {
      this.mode = "normal";
      this.compileMatcher();
    }

  },

  shouldUseXPath: function() {
    if (!Prototype.BrowserFeatures.XPath) return false;

    var e = this.expression;

    // Safari 3 chokes on :*-of-type and :empty
    if (Prototype.Browser.WebKit &&
     (e.include("-of-type") || e.include(":empty")))
      return false;

    // XPath can't do namespaced attributes, nor can it read
    // the "checked" property from DOM nodes
    if ((/(\[[\w-]*?:|:checked)/).test(e))
      return false;

    return true;
  },

  shouldUseSelectorsAPI: function() {
    if (!Prototype.BrowserFeatures.SelectorsAPI) return false;

    if (!Selector._div) Selector._div = new Element('div');

    // Make sure the browser treats the selector as valid. Test on an
    // isolated element to minimize cost of this check.
    try {
      Selector._div.querySelector(this.expression);
    } catch(e) {
      return false;
    }

    return true;
  },

  compileMatcher: function() {
    var e = this.expression, ps = Selector.patterns, h = Selector.handlers,
        c = Selector.criteria, le, p, m;

    if (Selector._cache[e]) {
      this.matcher = Selector._cache[e];
      return;
    }

    this.matcher = ["this.matcher = function(root) {",
                    "var r = root, h = Selector.handlers, c = false, n;"];

    while (e && le != e && (/\S/).test(e)) {
      le = e;
      for (var i in ps) {
        p = ps[i];
        if (m = e.match(p)) {
          this.matcher.push(Object.isFunction(c[i]) ? c[i](m) :
            new Template(c[i]).evaluate(m));
          e = e.replace(m[0], '');
          break;
        }
      }
    }

    this.matcher.push("return h.unique(n);\n}");
    eval(this.matcher.join('\n'));
    Selector._cache[this.expression] = this.matcher;
  },

  compileXPathMatcher: function() {
    var e = this.expression, ps = Selector.patterns,
        x = Selector.xpath, le, m;

    if (Selector._cache[e]) {
      this.xpath = Selector._cache[e]; return;
    }

    this.matcher = ['.//*'];
    while (e && le != e && (/\S/).test(e)) {
      le = e;
      for (var i in ps) {
        if (m = e.match(ps[i])) {
          this.matcher.push(Object.isFunction(x[i]) ? x[i](m) :
            new Template(x[i]).evaluate(m));
          e = e.replace(m[0], '');
          break;
        }
      }
    }

    this.xpath = this.matcher.join('');
    Selector._cache[this.expression] = this.xpath;
  },

  findElements: function(root) {
    root = root || document;
    var e = this.expression, results;

    switch (this.mode) {
      case 'selectorsAPI':
        // querySelectorAll queries document-wide, then filters to descendants
        // of the context element. That's not what we want.
        // Add an explicit context to the selector if necessary.
        if (root !== document) {
          var oldId = root.id, id = $(root).identify();
          e = "#" + id + " " + e;
        }

        results = $A(root.querySelectorAll(e)).map(Element.extend);
        root.id = oldId;

        return results;
      case 'xpath':
        return document._getElementsByXPath(this.xpath, root);
      default:
       return this.matcher(root);
    }
  },

  match: function(element) {
    this.tokens = [];

    var e = this.expression, ps = Selector.patterns, as = Selector.assertions;
    var le, p, m;

    while (e && le !== e && (/\S/).test(e)) {
      le = e;
      for (var i in ps) {
        p = ps[i];
        if (m = e.match(p)) {
          // use the Selector.assertions methods unless the selector
          // is too complex.
          if (as[i]) {
            this.tokens.push([i, Object.clone(m)]);
            e = e.replace(m[0], '');
          } else {
            // reluctantly do a document-wide search
            // and look for a match in the array
            return this.findElements(document).include(element);
          }
        }
      }
    }

    var match = true, name, matches;
    for (var i = 0, token; token = this.tokens[i]; i++) {
      name = token[0], matches = token[1];
      if (!Selector.assertions[name](element, matches)) {
        match = false; break;
      }
    }

    return match;
  },

  toString: function() {
    return this.expression;
  },

  inspect: function() {
    return "#<Selector:" + this.expression.inspect() + ">";
  }
});

Object.extend(Selector, {
  _cache: { },

  xpath: {
    descendant:   "//*",
    child:        "/*",
    adjacent:     "/following-sibling::*[1]",
    laterSibling: '/following-sibling::*',
    tagName:      function(m) {
      if (m[1] == '*') return '';
      return "[local-name()='" + m[1].toLowerCase() +
             "' or local-name()='" + m[1].toUpperCase() + "']";
    },
    className:    "[contains(concat(' ', @class, ' '), ' #{1} ')]",
    id:           "[@id='#{1}']",
    attrPresence: function(m) {
      m[1] = m[1].toLowerCase();
      return new Template("[@#{1}]").evaluate(m);
    },
    attr: function(m) {
      m[1] = m[1].toLowerCase();
      m[3] = m[5] || m[6];
      return new Template(Selector.xpath.operators[m[2]]).evaluate(m);
    },
    pseudo: function(m) {
      var h = Selector.xpath.pseudos[m[1]];
      if (!h) return '';
      if (Object.isFunction(h)) return h(m);
      return new Template(Selector.xpath.pseudos[m[1]]).evaluate(m);
    },
    operators: {
      '=':  "[@#{1}='#{3}']",
      '!=': "[@#{1}!='#{3}']",
      '^=': "[starts-with(@#{1}, '#{3}')]",
      '$=': "[substring(@#{1}, (string-length(@#{1}) - string-length('#{3}') + 1))='#{3}']",
      '*=': "[contains(@#{1}, '#{3}')]",
      '~=': "[contains(concat(' ', @#{1}, ' '), ' #{3} ')]",
      '|=': "[contains(concat('-', @#{1}, '-'), '-#{3}-')]"
    },
    pseudos: {
      'first-child': '[not(preceding-sibling::*)]',
      'last-child':  '[not(following-sibling::*)]',
      'only-child':  '[not(preceding-sibling::* or following-sibling::*)]',
      'empty':       "[count(*) = 0 and (count(text()) = 0)]",
      'checked':     "[@checked]",
      'disabled':    "[(@disabled) and (@type!='hidden')]",
      'enabled':     "[not(@disabled) and (@type!='hidden')]",
      'not': function(m) {
        var e = m[6], p = Selector.patterns,
            x = Selector.xpath, le, v;

        var exclusion = [];
        while (e && le != e && (/\S/).test(e)) {
          le = e;
          for (var i in p) {
            if (m = e.match(p[i])) {
              v = Object.isFunction(x[i]) ? x[i](m) : new Template(x[i]).evaluate(m);
              exclusion.push("(" + v.substring(1, v.length - 1) + ")");
              e = e.replace(m[0], '');
              break;
            }
          }
        }
        return "[not(" + exclusion.join(" and ") + ")]";
      },
      'nth-child':      function(m) {
        return Selector.xpath.pseudos.nth("(count(./preceding-sibling::*) + 1) ", m);
      },
      'nth-last-child': function(m) {
        return Selector.xpath.pseudos.nth("(count(./following-sibling::*) + 1) ", m);
      },
      'nth-of-type':    function(m) {
        return Selector.xpath.pseudos.nth("position() ", m);
      },
      'nth-last-of-type': function(m) {
        return Selector.xpath.pseudos.nth("(last() + 1 - position()) ", m);
      },
      'first-of-type':  function(m) {
        m[6] = "1"; return Selector.xpath.pseudos['nth-of-type'](m);
      },
      'last-of-type':   function(m) {
        m[6] = "1"; return Selector.xpath.pseudos['nth-last-of-type'](m);
      },
      'only-of-type':   function(m) {
        var p = Selector.xpath.pseudos; return p['first-of-type'](m) + p['last-of-type'](m);
      },
      nth: function(fragment, m) {
        var mm, formula = m[6], predicate;
        if (formula == 'even') formula = '2n+0';
        if (formula == 'odd')  formula = '2n+1';
        if (mm = formula.match(/^(\d+)$/)) // digit only
          return '[' + fragment + "= " + mm[1] + ']';
        if (mm = formula.match(/^(-?\d*)?n(([+-])(\d+))?/)) { // an+b
          if (mm[1] == "-") mm[1] = -1;
          var a = mm[1] ? Number(mm[1]) : 1;
          var b = mm[2] ? Number(mm[2]) : 0;
          predicate = "[((#{fragment} - #{b}) mod #{a} = 0) and " +
          "((#{fragment} - #{b}) div #{a} >= 0)]";
          return new Template(predicate).evaluate({
            fragment: fragment, a: a, b: b });
        }
      }
    }
  },

  criteria: {
    tagName:      'n = h.tagName(n, r, "#{1}", c);      c = false;',
    className:    'n = h.className(n, r, "#{1}", c);    c = false;',
    id:           'n = h.id(n, r, "#{1}", c);           c = false;',
    attrPresence: 'n = h.attrPresence(n, r, "#{1}", c); c = false;',
    attr: function(m) {
      m[3] = (m[5] || m[6]);
      return new Template('n = h.attr(n, r, "#{1}", "#{3}", "#{2}", c); c = false;').evaluate(m);
    },
    pseudo: function(m) {
      if (m[6]) m[6] = m[6].replace(/"/g, '\\"');
      return new Template('n = h.pseudo(n, "#{1}", "#{6}", r, c); c = false;').evaluate(m);
    },
    descendant:   'c = "descendant";',
    child:        'c = "child";',
    adjacent:     'c = "adjacent";',
    laterSibling: 'c = "laterSibling";'
  },

  patterns: {
    // combinators must be listed first
    // (and descendant needs to be last combinator)
    laterSibling: /^\s*~\s*/,
    child:        /^\s*>\s*/,
    adjacent:     /^\s*\+\s*/,
    descendant:   /^\s/,

    // selectors follow
    tagName:      /^\s*(\*|[\w\-]+)(\b|$)?/,
    id:           /^#([\w\-\*]+)(\b|$)/,
    className:    /^\.([\w\-\*]+)(\b|$)/,
    pseudo:
/^:((first|last|nth|nth-last|only)(-child|-of-type)|empty|checked|(en|dis)abled|not)(\((.*?)\))?(\b|$|(?=\s|[:+~>]))/,
    attrPresence: /^\[((?:[\w]+:)?[\w]+)\]/,
    attr:         /\[((?:[\w-]*:)?[\w-]+)\s*(?:([!^$*~|]?=)\s*((['"])([^\4]*?)\4|([^'"][^\]]*?)))?\]/
  },

  // for Selector.match and Element#match
  assertions: {
    tagName: function(element, matches) {
      return matches[1].toUpperCase() == element.tagName.toUpperCase();
    },

    className: function(element, matches) {
      return Element.hasClassName(element, matches[1]);
    },

    id: function(element, matches) {
      return element.id === matches[1];
    },

    attrPresence: function(element, matches) {
      return Element.hasAttribute(element, matches[1]);
    },

    attr: function(element, matches) {
      var nodeValue = Element.readAttribute(element, matches[1]);
      return nodeValue && Selector.operators[matches[2]](nodeValue, matches[5] || matches[6]);
    }
  },

  handlers: {
    // UTILITY FUNCTIONS
    // joins two collections
    concat: function(a, b) {
      for (var i = 0, node; node = b[i]; i++)
        a.push(node);
      return a;
    },

    // marks an array of nodes for counting
    mark: function(nodes) {
      var _true = Prototype.emptyFunction;
      for (var i = 0, node; node = nodes[i]; i++)
        node._countedByPrototype = _true;
      return nodes;
    },

    unmark: function(nodes) {
      for (var i = 0, node; node = nodes[i]; i++)
        node._countedByPrototype = undefined;
      return nodes;
    },

    // mark each child node with its position (for nth calls)
    // "ofType" flag indicates whether we're indexing for nth-of-type
    // rather than nth-child
    index: function(parentNode, reverse, ofType) {
      parentNode._countedByPrototype = Prototype.emptyFunction;
      if (reverse) {
        for (var nodes = parentNode.childNodes, i = nodes.length - 1, j = 1; i >= 0; i--) {
          var node = nodes[i];
          if (node.nodeType == 1 && (!ofType || node._countedByPrototype)) node.nodeIndex = j++;
        }
      } else {
        for (var i = 0, j = 1, nodes = parentNode.childNodes; node = nodes[i]; i++)
          if (node.nodeType == 1 && (!ofType || node._countedByPrototype)) node.nodeIndex = j++;
      }
    },

    // filters out duplicates and extends all nodes
    unique: function(nodes) {
      if (nodes.length == 0) return nodes;
      var results = [], n;
      for (var i = 0, l = nodes.length; i < l; i++)
        if (!(n = nodes[i])._countedByPrototype) {
          n._countedByPrototype = Prototype.emptyFunction;
          results.push(Element.extend(n));
        }
      return Selector.handlers.unmark(results);
    },

    // COMBINATOR FUNCTIONS
    descendant: function(nodes) {
      var h = Selector.handlers;
      for (var i = 0, results = [], node; node = nodes[i]; i++)
        h.concat(results, node.getElementsByTagName('*'));
      return results;
    },

    child: function(nodes) {
      var h = Selector.handlers;
      for (var i = 0, results = [], node; node = nodes[i]; i++) {
        for (var j = 0, child; child = node.childNodes[j]; j++)
          if (child.nodeType == 1 && child.tagName != '!') results.push(child);
      }
      return results;
    },

    adjacent: function(nodes) {
      for (var i = 0, results = [], node; node = nodes[i]; i++) {
        var next = this.nextElementSibling(node);
        if (next) results.push(next);
      }
      return results;
    },

    laterSibling: function(nodes) {
      var h = Selector.handlers;
      for (var i = 0, results = [], node; node = nodes[i]; i++)
        h.concat(results, Element.nextSiblings(node));
      return results;
    },

    nextElementSibling: function(node) {
      while (node = node.nextSibling)
        if (node.nodeType == 1) return node;
      return null;
    },

    previousElementSibling: function(node) {
      while (node = node.previousSibling)
        if (node.nodeType == 1) return node;
      return null;
    },

    // TOKEN FUNCTIONS
    tagName: function(nodes, root, tagName, combinator) {
      var uTagName = tagName.toUpperCase();
      var results = [], h = Selector.handlers;
      if (nodes) {
        if (combinator) {
          // fastlane for ordinary descendant combinators
          if (combinator == "descendant") {
            for (var i = 0, node; node = nodes[i]; i++)
              h.concat(results, node.getElementsByTagName(tagName));
            return results;
          } else nodes = this[combinator](nodes);
          if (tagName == "*") return nodes;
        }
        for (var i = 0, node; node = nodes[i]; i++)
          if (node.tagName.toUpperCase() === uTagName) results.push(node);
        return results;
      } else return root.getElementsByTagName(tagName);
    },

    id: function(nodes, root, id, combinator) {
      var targetNode = $(id), h = Selector.handlers;
      if (!targetNode) return [];
      if (!nodes && root == document) return [targetNode];
      if (nodes) {
        if (combinator) {
          if (combinator == 'child') {
            for (var i = 0, node; node = nodes[i]; i++)
              if (targetNode.parentNode == node) return [targetNode];
          } else if (combinator == 'descendant') {
            for (var i = 0, node; node = nodes[i]; i++)
              if (Element.descendantOf(targetNode, node)) return [targetNode];
          } else if (combinator == 'adjacent') {
            for (var i = 0, node; node = nodes[i]; i++)
              if (Selector.handlers.previousElementSibling(targetNode) == node)
                return [targetNode];
          } else nodes = h[combinator](nodes);
        }
        for (var i = 0, node; node = nodes[i]; i++)
          if (node == targetNode) return [targetNode];
        return [];
      }
      return (targetNode && Element.descendantOf(targetNode, root)) ? [targetNode] : [];
    },

    className: function(nodes, root, className, combinator) {
      if (nodes && combinator) nodes = this[combinator](nodes);
      return Selector.handlers.byClassName(nodes, root, className);
    },

    byClassName: function(nodes, root, className) {
      if (!nodes) nodes = Selector.handlers.descendant([root]);
      var needle = ' ' + className + ' ';
      for (var i = 0, results = [], node, nodeClassName; node = nodes[i]; i++) {
        nodeClassName = node.className;
        if (nodeClassName.length == 0) continue;
        if (nodeClassName == className || (' ' + nodeClassName + ' ').include(needle))
          results.push(node);
      }
      return results;
    },

    attrPresence: function(nodes, root, attr, combinator) {
      if (!nodes) nodes = root.getElementsByTagName("*");
      if (nodes && combinator) nodes = this[combinator](nodes);
      var results = [];
      for (var i = 0, node; node = nodes[i]; i++)
        if (Element.hasAttribute(node, attr)) results.push(node);
      return results;
    },

    attr: function(nodes, root, attr, value, operator, combinator) {
      if (!nodes) nodes = root.getElementsByTagName("*");
      if (nodes && combinator) nodes = this[combinator](nodes);
      var handler = Selector.operators[operator], results = [];
      for (var i = 0, node; node = nodes[i]; i++) {
        var nodeValue = Element.readAttribute(node, attr);
        if (nodeValue === null) continue;
        if (handler(nodeValue, value)) results.push(node);
      }
      return results;
    },

    pseudo: function(nodes, name, value, root, combinator) {
      if (nodes && combinator) nodes = this[combinator](nodes);
      if (!nodes) nodes = root.getElementsByTagName("*");
      return Selector.pseudos[name](nodes, value, root);
    }
  },

  pseudos: {
    'first-child': function(nodes, value, root) {
      for (var i = 0, results = [], node; node = nodes[i]; i++) {
        if (Selector.handlers.previousElementSibling(node)) continue;
          results.push(node);
      }
      return results;
    },
    'last-child': function(nodes, value, root) {
      for (var i = 0, results = [], node; node = nodes[i]; i++) {
        if (Selector.handlers.nextElementSibling(node)) continue;
          results.push(node);
      }
      return results;
    },
    'only-child': function(nodes, value, root) {
      var h = Selector.handlers;
      for (var i = 0, results = [], node; node = nodes[i]; i++)
        if (!h.previousElementSibling(node) && !h.nextElementSibling(node))
          results.push(node);
      return results;
    },
    'nth-child':        function(nodes, formula, root) {
      return Selector.pseudos.nth(nodes, formula, root);
    },
    'nth-last-child':   function(nodes, formula, root) {
      return Selector.pseudos.nth(nodes, formula, root, true);
    },
    'nth-of-type':      function(nodes, formula, root) {
      return Selector.pseudos.nth(nodes, formula, root, false, true);
    },
    'nth-last-of-type': function(nodes, formula, root) {
      return Selector.pseudos.nth(nodes, formula, root, true, true);
    },
    'first-of-type':    function(nodes, formula, root) {
      return Selector.pseudos.nth(nodes, "1", root, false, true);
    },
    'last-of-type':     function(nodes, formula, root) {
      return Selector.pseudos.nth(nodes, "1", root, true, true);
    },
    'only-of-type':     function(nodes, formula, root) {
      var p = Selector.pseudos;
      return p['last-of-type'](p['first-of-type'](nodes, formula, root), formula, root);
    },

    // handles the an+b logic
    getIndices: function(a, b, total) {
      if (a == 0) return b > 0 ? [b] : [];
      return $R(1, total).inject([], function(memo, i) {
        if (0 == (i - b) % a && (i - b) / a >= 0) memo.push(i);
        return memo;
      });
    },

    // handles nth(-last)-child, nth(-last)-of-type, and (first|last)-of-type
    nth: function(nodes, formula, root, reverse, ofType) {
      if (nodes.length == 0) return [];
      if (formula == 'even') formula = '2n+0';
      if (formula == 'odd')  formula = '2n+1';
      var h = Selector.handlers, results = [], indexed = [], m;
      h.mark(nodes);
      for (var i = 0, node; node = nodes[i]; i++) {
        if (!node.parentNode._countedByPrototype) {
          h.index(node.parentNode, reverse, ofType);
          indexed.push(node.parentNode);
        }
      }
      if (formula.match(/^\d+$/)) { // just a number
        formula = Number(formula);
        for (var i = 0, node; node = nodes[i]; i++)
          if (node.nodeIndex == formula) results.push(node);
      } else if (m = formula.match(/^(-?\d*)?n(([+-])(\d+))?/)) { // an+b
        if (m[1] == "-") m[1] = -1;
        var a = m[1] ? Number(m[1]) : 1;
        var b = m[2] ? Number(m[2]) : 0;
        var indices = Selector.pseudos.getIndices(a, b, nodes.length);
        for (var i = 0, node, l = indices.length; node = nodes[i]; i++) {
          for (var j = 0; j < l; j++)
            if (node.nodeIndex == indices[j]) results.push(node);
        }
      }
      h.unmark(nodes);
      h.unmark(indexed);
      return results;
    },

    'empty': function(nodes, value, root) {
      for (var i = 0, results = [], node; node = nodes[i]; i++) {
        // IE treats comments as element nodes
        if (node.tagName == '!' || node.firstChild) continue;
        results.push(node);
      }
      return results;
    },

    'not': function(nodes, selector, root) {
      var h = Selector.handlers, selectorType, m;
      var exclusions = new Selector(selector).findElements(root);
      h.mark(exclusions);
      for (var i = 0, results = [], node; node = nodes[i]; i++)
        if (!node._countedByPrototype) results.push(node);
      h.unmark(exclusions);
      return results;
    },

    'enabled': function(nodes, value, root) {
      for (var i = 0, results = [], node; node = nodes[i]; i++)
        if (!node.disabled && (!node.type || node.type !== 'hidden'))
          results.push(node);
      return results;
    },

    'disabled': function(nodes, value, root) {
      for (var i = 0, results = [], node; node = nodes[i]; i++)
        if (node.disabled) results.push(node);
      return results;
    },

    'checked': function(nodes, value, root) {
      for (var i = 0, results = [], node; node = nodes[i]; i++)
        if (node.checked) results.push(node);
      return results;
    }
  },

  operators: {
    '=':  function(nv, v) { return nv == v; },
    '!=': function(nv, v) { return nv != v; },
    '^=': function(nv, v) { return nv == v || nv && nv.startsWith(v); },
    '$=': function(nv, v) { return nv == v || nv && nv.endsWith(v); },
    '*=': function(nv, v) { return nv == v || nv && nv.include(v); },
    '$=': function(nv, v) { return nv.endsWith(v); },
    '*=': function(nv, v) { return nv.include(v); },
    '~=': function(nv, v) { return (' ' + nv + ' ').include(' ' + v + ' '); },
    '|=': function(nv, v) { return ('-' + (nv || "").toUpperCase() +
     '-').include('-' + (v || "").toUpperCase() + '-'); }
  },

  split: function(expression) {
    var expressions = [];
    expression.scan(/(([\w#:.~>+()\s-]+|\*|\[.*?\])+)\s*(,|$)/, function(m) {
      expressions.push(m[1].strip());
    });
    return expressions;
  },

  matchElements: function(elements, expression) {
    var matches = $$(expression), h = Selector.handlers;
    h.mark(matches);
    for (var i = 0, results = [], element; element = elements[i]; i++)
      if (element._countedByPrototype) results.push(element);
    h.unmark(matches);
    return results;
  },

  findElement: function(elements, expression, index) {
    if (Object.isNumber(expression)) {
      index = expression; expression = false;
    }
    return Selector.matchElements(elements, expression || '*')[index || 0];
  },

  findChildElements: function(element, expressions) {
    expressions = Selector.split(expressions.join(','));
    var results = [], h = Selector.handlers;
    for (var i = 0, l = expressions.length, selector; i < l; i++) {
      selector = new Selector(expressions[i].strip());
      h.concat(results, selector.findElements(element));
    }
    return (l > 1) ? h.unique(results) : results;
  }
});

if (Prototype.Browser.IE) {
  Object.extend(Selector.handlers, {
    // IE returns comment nodes on getElementsByTagName("*").
    // Filter them out.
    concat: function(a, b) {
      for (var i = 0, node; node = b[i]; i++)
        if (node.tagName !== "!") a.push(node);
      return a;
    },

    // IE improperly serializes _countedByPrototype in (inner|outer)HTML.
    unmark: function(nodes) {
      for (var i = 0, node; node = nodes[i]; i++)
        node.removeAttribute('_countedByPrototype');
      return nodes;
    }
  });
}

function $$() {
  return Selector.findChildElements(document, $A(arguments));
}
var Form = {
  reset: function(form) {
    $(form).reset();
    return form;
  },

  serializeElements: function(elements, options) {
    if (typeof options != 'object') options = { hash: !!options };
    else if (Object.isUndefined(options.hash)) options.hash = true;
    var key, value, submitted = false, submit = options.submit;

    var data = elements.inject({ }, function(result, element) {
      if (!element.disabled && element.name) {
        key = element.name; value = $(element).getValue();
        if (value != null && element.type != 'file' && (element.type != 'submit' || (!submitted &&
            submit !== false && (!submit || key == submit) && (submitted = true)))) {
          if (key in result) {
            // a key is already present; construct an array of values
            if (!Object.isArray(result[key])) result[key] = [result[key]];
            result[key].push(value);
          }
          else result[key] = value;
        }
      }
      return result;
    });

    return options.hash ? data : Object.toQueryString(data);
  }
};

Form.Methods = {
  serialize: function(form, options) {
    return Form.serializeElements(Form.getElements(form), options);
  },

  getElements: function(form) {
    return $A($(form).getElementsByTagName('*')).inject([],
      function(elements, child) {
        if (Form.Element.Serializers[child.tagName.toLowerCase()])
          elements.push(Element.extend(child));
        return elements;
      }
    );
  },

  getInputs: function(form, typeName, name) {
    form = $(form);
    var inputs = form.getElementsByTagName('input');

    if (!typeName && !name) return $A(inputs).map(Element.extend);

    for (var i = 0, matchingInputs = [], length = inputs.length; i < length; i++) {
      var input = inputs[i];
      if ((typeName && input.type != typeName) || (name && input.name != name))
        continue;
      matchingInputs.push(Element.extend(input));
    }

    return matchingInputs;
  },

  disable: function(form) {
    form = $(form);
    Form.getElements(form).invoke('disable');
    return form;
  },

  enable: function(form) {
    form = $(form);
    Form.getElements(form).invoke('enable');
    return form;
  },

  findFirstElement: function(form) {
    var elements = $(form).getElements().findAll(function(element) {
      return 'hidden' != element.type && !element.disabled;
    });
    var firstByIndex = elements.findAll(function(element) {
      return element.hasAttribute('tabIndex') && element.tabIndex >= 0;
    }).sortBy(function(element) { return element.tabIndex }).first();

    return firstByIndex ? firstByIndex : elements.find(function(element) {
      return ['input', 'select', 'textarea'].include(element.tagName.toLowerCase());
    });
  },

  focusFirstElement: function(form) {
    form = $(form);
    form.findFirstElement().activate();
    return form;
  },

  request: function(form, options) {
    form = $(form), options = Object.clone(options || { });

    var params = options.parameters, action = form.readAttribute('action') || '';
    if (action.blank()) action = window.location.href;
    options.parameters = form.serialize(true);

    if (params) {
      if (Object.isString(params)) params = params.toQueryParams();
      Object.extend(options.parameters, params);
    }

    if (form.hasAttribute('method') && !options.method)
      options.method = form.method;

    return new Ajax.Request(action, options);
  }
};

/*--------------------------------------------------------------------------*/

Form.Element = {
  focus: function(element) {
    $(element).focus();
    return element;
  },

  select: function(element) {
    $(element).select();
    return element;
  }
};

Form.Element.Methods = {
  serialize: function(element) {
    element = $(element);
    if (!element.disabled && element.name) {
      var value = element.getValue();
      if (value != undefined) {
        var pair = { };
        pair[element.name] = value;
        return Object.toQueryString(pair);
      }
    }
    return '';
  },

  getValue: function(element) {
    element = $(element);
    var method = element.tagName.toLowerCase();
    return Form.Element.Serializers[method](element);
  },

  setValue: function(element, value) {
    element = $(element);
    var method = element.tagName.toLowerCase();
    Form.Element.Serializers[method](element, value);
    return element;
  },

  clear: function(element) {
    $(element).value = '';
    return element;
  },

  present: function(element) {
    return $(element).value != '';
  },

  activate: function(element) {
    element = $(element);
    try {
      element.focus();
      if (element.select && (element.tagName.toLowerCase() != 'input' ||
          !['button', 'reset', 'submit'].include(element.type)))
        element.select();
    } catch (e) { }
    return element;
  },

  disable: function(element) {
    element = $(element);
    element.disabled = true;
    return element;
  },

  enable: function(element) {
    element = $(element);
    element.disabled = false;
    return element;
  }
};

/*--------------------------------------------------------------------------*/

var Field = Form.Element;
var $F = Form.Element.Methods.getValue;

/*--------------------------------------------------------------------------*/

Form.Element.Serializers = {
  input: function(element, value) {
    switch (element.type.toLowerCase()) {
      case 'checkbox':
      case 'radio':
        return Form.Element.Serializers.inputSelector(element, value);
      default:
        return Form.Element.Serializers.textarea(element, value);
    }
  },

  inputSelector: function(element, value) {
    if (Object.isUndefined(value)) return element.checked ? element.value : null;
    else element.checked = !!value;
  },

  textarea: function(element, value) {
    if (Object.isUndefined(value)) return element.value;
    else element.value = value;
  },

  select: function(element, value) {
    if (Object.isUndefined(value))
      return this[element.type == 'select-one' ?
        'selectOne' : 'selectMany'](element);
    else {
      var opt, currentValue, single = !Object.isArray(value);
      for (var i = 0, length = element.length; i < length; i++) {
        opt = element.options[i];
        currentValue = this.optionValue(opt);
        if (single) {
          if (currentValue == value) {
            opt.selected = true;
            return;
          }
        }
        else opt.selected = value.include(currentValue);
      }
    }
  },

  selectOne: function(element) {
    var index = element.selectedIndex;
    return index >= 0 ? this.optionValue(element.options[index]) : null;
  },

  selectMany: function(element) {
    var values, length = element.length;
    if (!length) return null;

    for (var i = 0, values = []; i < length; i++) {
      var opt = element.options[i];
      if (opt.selected) values.push(this.optionValue(opt));
    }
    return values;
  },

  optionValue: function(opt) {
    // extend element because hasAttribute may not be native
    return Element.extend(opt).hasAttribute('value') ? opt.value : opt.text;
  }
};

/*--------------------------------------------------------------------------*/

Abstract.TimedObserver = Class.create(PeriodicalExecuter, {
  initialize: function($super, element, frequency, callback) {
    $super(callback, frequency);
    this.element   = $(element);
    this.lastValue = this.getValue();
  },

  execute: function() {
    var value = this.getValue();
    if (Object.isString(this.lastValue) && Object.isString(value) ?
        this.lastValue != value : String(this.lastValue) != String(value)) {
      this.callback(this.element, value);
      this.lastValue = value;
    }
  }
});

Form.Element.Observer = Class.create(Abstract.TimedObserver, {
  getValue: function() {
    return Form.Element.getValue(this.element);
  }
});

Form.Observer = Class.create(Abstract.TimedObserver, {
  getValue: function() {
    return Form.serialize(this.element);
  }
});

/*--------------------------------------------------------------------------*/

Abstract.EventObserver = Class.create({
  initialize: function(element, callback) {
    this.element  = $(element);
    this.callback = callback;

    this.lastValue = this.getValue();
    if (this.element.tagName.toLowerCase() == 'form')
      this.registerFormCallbacks();
    else
      this.registerCallback(this.element);
  },

  onElementEvent: function() {
    var value = this.getValue();
    if (this.lastValue != value) {
      this.callback(this.element, value);
      this.lastValue = value;
    }
  },

  registerFormCallbacks: function() {
    Form.getElements(this.element).each(this.registerCallback, this);
  },

  registerCallback: function(element) {
    if (element.type) {
      switch (element.type.toLowerCase()) {
        case 'checkbox':
        case 'radio':
          Event.observe(element, 'click', this.onElementEvent.bind(this));
          break;
        default:
          Event.observe(element, 'change', this.onElementEvent.bind(this));
          break;
      }
    }
  }
});

Form.Element.EventObserver = Class.create(Abstract.EventObserver, {
  getValue: function() {
    return Form.Element.getValue(this.element);
  }
});

Form.EventObserver = Class.create(Abstract.EventObserver, {
  getValue: function() {
    return Form.serialize(this.element);
  }
});
if (!window.Event) var Event = { };

Object.extend(Event, {
  KEY_BACKSPACE: 8,
  KEY_TAB:       9,
  KEY_RETURN:   13,
  KEY_ESC:      27,
  KEY_LEFT:     37,
  KEY_UP:       38,
  KEY_RIGHT:    39,
  KEY_DOWN:     40,
  KEY_DELETE:   46,
  KEY_HOME:     36,
  KEY_END:      35,
  KEY_PAGEUP:   33,
  KEY_PAGEDOWN: 34,
  KEY_INSERT:   45,

  cache: { },

  relatedTarget: function(event) {
    var element;
    switch(event.type) {
      case 'mouseover': element = event.fromElement; break;
      case 'mouseout':  element = event.toElement;   break;
      default: return null;
    }
    return Element.extend(element);
  }
});

Event.Methods = (function() {
  var isButton;

  if (Prototype.Browser.IE) {
    var buttonMap = { 0: 1, 1: 4, 2: 2 };
    isButton = function(event, code) {
      return event.button == buttonMap[code];
    };

  } else if (Prototype.Browser.WebKit) {
    isButton = function(event, code) {
      switch (code) {
        case 0: return event.which == 1 && !event.metaKey;
        case 1: return event.which == 1 && event.metaKey;
        default: return false;
      }
    };

  } else {
    isButton = function(event, code) {
      return event.which ? (event.which === code + 1) : (event.button === code);
    };
  }

  return {
    isLeftClick:   function(event) { return isButton(event, 0) },
    isMiddleClick: function(event) { return isButton(event, 1) },
    isRightClick:  function(event) { return isButton(event, 2) },

    element: function(event) {
      event = Event.extend(event);

      var node          = event.target,
          type          = event.type,
          currentTarget = event.currentTarget;

      if (currentTarget && currentTarget.tagName) {
        // Firefox screws up the "click" event when moving between radio buttons
        // via arrow keys. It also screws up the "load" and "error" events on images,
        // reporting the document as the target instead of the original image.
        if (type === 'load' || type === 'error' ||
          (type === 'click' && currentTarget.tagName.toLowerCase() === 'input'
            && currentTarget.type === 'radio'))
              node = currentTarget;
      }
      if (node.nodeType == Node.TEXT_NODE) node = node.parentNode;
      return Element.extend(node);
    },

    findElement: function(event, expression) {
      var element = Event.element(event);
      if (!expression) return element;
      var elements = [element].concat(element.ancestors());
      return Selector.findElement(elements, expression, 0);
    },

    pointer: function(event) {
      var docElement = document.documentElement,
      body = document.body || { scrollLeft: 0, scrollTop: 0 };
      return {
        x: event.pageX || (event.clientX +
          (docElement.scrollLeft || body.scrollLeft) -
          (docElement.clientLeft || 0)),
        y: event.pageY || (event.clientY +
          (docElement.scrollTop || body.scrollTop) -
          (docElement.clientTop || 0))
      };
    },

    pointerX: function(event) { return Event.pointer(event).x },
    pointerY: function(event) { return Event.pointer(event).y },

    stop: function(event) {
      Event.extend(event);
      event.preventDefault();
      event.stopPropagation();
      event.stopped = true;
    }
  };
})();

Event.extend = (function() {
  var methods = Object.keys(Event.Methods).inject({ }, function(m, name) {
    m[name] = Event.Methods[name].methodize();
    return m;
  });

  if (Prototype.Browser.IE) {
    Object.extend(methods, {
      stopPropagation: function() { this.cancelBubble = true },
      preventDefault:  function() { this.returnValue = false },
      inspect: function() { return "[object Event]" }
    });

    return function(event) {
      if (!event) return false;
      if (event._extendedByPrototype) return event;

      event._extendedByPrototype = Prototype.emptyFunction;
      var pointer = Event.pointer(event);
      Object.extend(event, {
        target: event.srcElement,
        relatedTarget: Event.relatedTarget(event),
        pageX:  pointer.x,
        pageY:  pointer.y
      });
      return Object.extend(event, methods);
    };

  } else {
    Event.prototype = Event.prototype || document.createEvent("HTMLEvents")['__proto__'];
    Object.extend(Event.prototype, methods);
    return Prototype.K;
  }
})();

Object.extend(Event, (function() {
  var cache = Event.cache;

  function getEventID(element) {
    if (element._prototypeEventID) return element._prototypeEventID[0];
    arguments.callee.id = arguments.callee.id || 1;
    return element._prototypeEventID = [++arguments.callee.id];
  }

  function getDOMEventName(eventName) {
    if (eventName && eventName.include(':')) return "dataavailable";
    return eventName;
  }

  function getCacheForID(id) {
    return cache[id] = cache[id] || { };
  }

  function getWrappersForEventName(id, eventName) {
    var c = getCacheForID(id);
    return c[eventName] = c[eventName] || [];
  }

  function createWrapper(element, eventName, handler) {
    var id = getEventID(element);
    var c = getWrappersForEventName(id, eventName);
    if (c.pluck("handler").include(handler)) return false;

    var wrapper = function(event) {
      if (!Event || !Event.extend ||
        (event.eventName && event.eventName != eventName))
          return false;

      Event.extend(event);
      handler.call(element, event);
    };

    wrapper.handler = handler;
    c.push(wrapper);
    return wrapper;
  }

  function findWrapper(id, eventName, handler) {
    var c = getWrappersForEventName(id, eventName);
    return c.find(function(wrapper) { return wrapper.handler == handler });
  }

  function destroyWrapper(id, eventName, handler) {
    var c = getCacheForID(id);
    if (!c[eventName]) return false;
    c[eventName] = c[eventName].without(findWrapper(id, eventName, handler));
  }

  function destroyCache() {
    for (var id in cache)
      for (var eventName in cache[id])
        cache[id][eventName] = null;
  }


  // Internet Explorer needs to remove event handlers on page unload
  // in order to avoid memory leaks.
  if (window.attachEvent) {
    window.attachEvent("onunload", destroyCache);
  }

  // Safari has a dummy event handler on page unload so that it won't
  // use its bfcache. Safari <= 3.1 has an issue with restoring the "document"
  // object when page is returned to via the back button using its bfcache.
  if (Prototype.Browser.WebKit) {
    window.addEventListener('unload', Prototype.emptyFunction, false);
  }

  return {
    observe: function(element, eventName, handler) {
      element = $(element);
      var name = getDOMEventName(eventName);

      var wrapper = createWrapper(element, eventName, handler);
      if (!wrapper) return element;

      if (element.addEventListener) {
        element.addEventListener(name, wrapper, false);
      } else {
        element.attachEvent("on" + name, wrapper);
      }

      return element;
    },

    stopObserving: function(element, eventName, handler) {
      element = $(element);
      var id = getEventID(element), name = getDOMEventName(eventName);

      if (!handler && eventName) {
        getWrappersForEventName(id, eventName).each(function(wrapper) {
          element.stopObserving(eventName, wrapper.handler);
        });
        return element;

      } else if (!eventName) {
        Object.keys(getCacheForID(id)).each(function(eventName) {
          element.stopObserving(eventName);
        });
        return element;
      }

      var wrapper = findWrapper(id, eventName, handler);
      if (!wrapper) return element;

      if (element.removeEventListener) {
        element.removeEventListener(name, wrapper, false);
      } else {
        element.detachEvent("on" + name, wrapper);
      }

      destroyWrapper(id, eventName, handler);

      return element;
    },

    fire: function(element, eventName, memo) {
      element = $(element);
      if (element == document && document.createEvent && !element.dispatchEvent)
        element = document.documentElement;

      var event;
      if (document.createEvent) {
        event = document.createEvent("HTMLEvents");
        event.initEvent("dataavailable", true, true);
      } else {
        event = document.createEventObject();
        event.eventType = "ondataavailable";
      }

      event.eventName = eventName;
      event.memo = memo || { };

      if (document.createEvent) {
        element.dispatchEvent(event);
      } else {
        element.fireEvent(event.eventType, event);
      }

      return Event.extend(event);
    }
  };
})());

Object.extend(Event, Event.Methods);

Element.addMethods({
  fire:          Event.fire,
  observe:       Event.observe,
  stopObserving: Event.stopObserving
});

Object.extend(document, {
  fire:          Element.Methods.fire.methodize(),
  observe:       Element.Methods.observe.methodize(),
  stopObserving: Element.Methods.stopObserving.methodize(),
  loaded:        false
});

(function() {
  /* Support for the DOMContentLoaded event is based on work by Dan Webb,
     Matthias Miller, Dean Edwards and John Resig. */

  var timer;

  function fireContentLoadedEvent() {
    if (document.loaded) return;
    if (timer) window.clearInterval(timer);
    document.fire("dom:loaded");
    document.loaded = true;
  }

  if (document.addEventListener) {
    if (Prototype.Browser.WebKit) {
      timer = window.setInterval(function() {
        if (/loaded|complete/.test(document.readyState))
          fireContentLoadedEvent();
      }, 0);

      Event.observe(window, "load", fireContentLoadedEvent);

    } else {
      document.addEventListener("DOMContentLoaded",
        fireContentLoadedEvent, false);
    }

  } else {
    document.write("<script id=__onDOMContentLoaded defer src=//:><\/script>");
    $("__onDOMContentLoaded").onreadystatechange = function() {
      if (this.readyState == "complete") {
        this.onreadystatechange = null;
        fireContentLoadedEvent();
      }
    };
  }
})();
/*------------------------------- DEPRECATED -------------------------------*/

Hash.toQueryString = Object.toQueryString;

var Toggle = { display: Element.toggle };

Element.Methods.childOf = Element.Methods.descendantOf;

var Insertion = {
  Before: function(element, content) {
    return Element.insert(element, {before:content});
  },

  Top: function(element, content) {
    return Element.insert(element, {top:content});
  },

  Bottom: function(element, content) {
    return Element.insert(element, {bottom:content});
  },

  After: function(element, content) {
    return Element.insert(element, {after:content});
  }
};

var $continue = new Error('"throw $continue" is deprecated, use "return" instead');

// This should be moved to script.aculo.us; notice the deprecated methods
// further below, that map to the newer Element methods.
var Position = {
  // set to true if needed, warning: firefox performance problems
  // NOT neeeded for page scrolling, only if draggable contained in
  // scrollable elements
  includeScrollOffsets: false,

  // must be called before calling withinIncludingScrolloffset, every time the
  // page is scrolled
  prepare: function() {
    this.deltaX =  window.pageXOffset
                || document.documentElement.scrollLeft
                || document.body.scrollLeft
                || 0;
    this.deltaY =  window.pageYOffset
                || document.documentElement.scrollTop
                || document.body.scrollTop
                || 0;
  },

  // caches x/y coordinate pair to use with overlap
  within: function(element, x, y) {
    if (this.includeScrollOffsets)
      return this.withinIncludingScrolloffsets(element, x, y);
    this.xcomp = x;
    this.ycomp = y;
    this.offset = Element.cumulativeOffset(element);

    return (y >= this.offset[1] &&
            y <  this.offset[1] + element.offsetHeight &&
            x >= this.offset[0] &&
            x <  this.offset[0] + element.offsetWidth);
  },

  withinIncludingScrolloffsets: function(element, x, y) {
    var offsetcache = Element.cumulativeScrollOffset(element);

    this.xcomp = x + offsetcache[0] - this.deltaX;
    this.ycomp = y + offsetcache[1] - this.deltaY;
    this.offset = Element.cumulativeOffset(element);

    return (this.ycomp >= this.offset[1] &&
            this.ycomp <  this.offset[1] + element.offsetHeight &&
            this.xcomp >= this.offset[0] &&
            this.xcomp <  this.offset[0] + element.offsetWidth);
  },

  // within must be called directly before
  overlap: function(mode, element) {
    if (!mode) return 0;
    if (mode == 'vertical')
      return ((this.offset[1] + element.offsetHeight) - this.ycomp) /
        element.offsetHeight;
    if (mode == 'horizontal')
      return ((this.offset[0] + element.offsetWidth) - this.xcomp) /
        element.offsetWidth;
  },

  // Deprecation layer -- use newer Element methods now (1.5.2).

  cumulativeOffset: Element.Methods.cumulativeOffset,

  positionedOffset: Element.Methods.positionedOffset,

  absolutize: function(element) {
    Position.prepare();
    return Element.absolutize(element);
  },

  relativize: function(element) {
    Position.prepare();
    return Element.relativize(element);
  },

  realOffset: Element.Methods.cumulativeScrollOffset,

  offsetParent: Element.Methods.getOffsetParent,

  page: Element.Methods.viewportOffset,

  clone: function(source, target, options) {
    options = options || { };
    return Element.clonePosition(target, source, options);
  }
};

/*--------------------------------------------------------------------------*/

if (!document.getElementsByClassName) document.getElementsByClassName = function(instanceMethods){
  function iter(name) {
    return name.blank() ? null : "[contains(concat(' ', @class, ' '), ' " + name + " ')]";
  }

  instanceMethods.getElementsByClassName = Prototype.BrowserFeatures.XPath ?
  function(element, className) {
    className = className.toString().strip();
    var cond = /\s/.test(className) ? $w(className).map(iter).join('') : iter(className);
    return cond ? document._getElementsByXPath('.//*' + cond, element) : [];
  } : function(element, className) {
    className = className.toString().strip();
    var elements = [], classNames = (/\s/.test(className) ? $w(className) : null);
    if (!classNames && !className) return elements;

    var nodes = $(element).getElementsByTagName('*');
    className = ' ' + className + ' ';

    for (var i = 0, child, cn; child = nodes[i]; i++) {
      if (child.className && (cn = ' ' + child.className + ' ') && (cn.include(className) ||
          (classNames && classNames.all(function(name) {
            return !name.toString().blank() && cn.include(' ' + name + ' ');
          }))))
        elements.push(Element.extend(child));
    }
    return elements;
  };

  return function(className, parentElement) {
    return $(parentElement || document.body).getElementsByClassName(className);
  };
}(Element.Methods);

/*--------------------------------------------------------------------------*/

Element.ClassNames = Class.create();
Element.ClassNames.prototype = {
  initialize: function(element) {
    this.element = $(element);
  },

  _each: function(iterator) {
    this.element.className.split(/\s+/).select(function(name) {
      return name.length > 0;
    })._each(iterator);
  },

  set: function(className) {
    this.element.className = className;
  },

  add: function(classNameToAdd) {
    if (this.include(classNameToAdd)) return;
    this.set($A(this).concat(classNameToAdd).join(' '));
  },

  remove: function(classNameToRemove) {
    if (!this.include(classNameToRemove)) return;
    this.set($A(this).without(classNameToRemove).join(' '));
  },

  toString: function() {
    return $A(this).join(' ');
  }
};

Object.extend(Element.ClassNames.prototype, Enumerable);

/*--------------------------------------------------------------------------*/

Element.addMethods();]]></CSP>


<CSP name="js/scw.js" application="/csp/cbt/" default="1"><![CDATA[
// *****************************************************************************
//      Simple Calendar Widget - Cross-Browser Javascript pop-up calendar.
//
//   Copyright (C) 2005-2007  Anthony Garrett
//
//   This library is free software; you can redistribute it and/or
//   modify it under the terms of the GNU Lesser General Public
//   License as published by the Free Software Foundation; either
//   version 2.1 of the License, or (at your option) any later version.
//
//   This library is distributed in the hope that it will be useful,
//   but WITHOUT ANY WARRANTY; without even the implied warranty of
//   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
//   Lesser General Public License for more details.
//
//   You should have received a copy of the GNU Lesser General Public
//   License along with this library; if not, it is available at
//   the GNU web site (http://www.gnu.org/) or by writing to the
//   Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
//   Boston, MA  02110-1301  USA
//
// *****************************************************************************
//
// Contact:   Sorry, I can't offer support for this but if you find a problem
//            (or just want to tell me how useful you find it), please send
//            me an email at scwfeedback@tarrget.info (Note the two Rs in
//            tarrget).  I will try to fix problems quickly but this is a
//            spare time thing for me.
//
// Credits:   I wrote this from scratch myself but I couldn't have done it
//            without the superb "JavaScript The Definitive Guide" by David
//            Flanagan (Pub. O'Reilly ISBN 0-596-00048-0).  I also recognise
//            a contribution from my experience with PopCalendar 4.1 by
//            Liming(Victor) Weng.
//
// Link back: Please give me credit and link back to my page.  To ensure that
//            search engines give my page a higher ranking you can add the
//            following HTML to any indexed page on your web site:
//
//            <A HREF="http://www.tarrget.info/calendar/scw.htm">
//              Simple Calendar Widget by Anthony Garrett
//            </A>
//
// Features:  Easily customised
//                  (output date format, colours, language, year range and
//                   week start day)
//            Accepts a date as input
//                  (see comments below for formats).
//            Cross-browser code tested against;
//                  Internet Explorer 6.0.28     Mozilla  1.7.1
//                  Opera             7.52+      Firefox  0.9.1+
//                  Konqueror         3.4.0      Flock    0.4.9
//
// How to add the Calendar to your page:
//            This script needs to be defined for your page so, immediately
//            after the BODY tag add the following line;
//
//                  <script type='Text/JavaScript' src='scw.js'></script>
//
//            Your root directory of the web site should also contain an empty
//            file called "scwblank.html". See
//                  http://www.tarrget.info/calendar/IEnightmare.html
//            for a full explanation.
//
// How to use the Calendar once it is defined for your page:
//
//            Simply choose an event to trigger the calendar (like an onClick
//            or an onMouseOver) and an element to work on (for the calendar
//            to take its initial date from and write its output date to) then
//            write it like this;
//
//                  <<event>>="scwShow(<<element>>,event);"
//
//            e.g. onClick="scwShow(scwID('myElement'),event);"
//            or   onMouseOver="scwShow(this,event);"
//
//            NOTE: If you wish to use the calendar with an Anchor tag, do
//                  not use the syntax:   href="javascript:scwShow(...)"
//                  Instead you should use the following;
//
//                  <a href="#" onclick="scwShow(<<element>>,event);return false;">
//                      <<your text>>
//                  </a>
//
//            If you are using a text node then specify the text's parent node
//            in the function call. The date should be the only text under that
//            node;
//
//            e.g.  <p onclick="scwShow(this,event);"><<date>></p>
//
//            You can also disable days of the week by adding arguments to the
//            call to scwShow.  The values should be Sunday = 0 through to
//            Saturday = 6.  A call to scwShow with Friday and Monday disabled
//            would look something like this;
//
//                  scwShow(<<element>>,event,5,1);
//
//            Finally you can use the following technique to run a function
//            when the calendar closes:
//
//                  scwNextAction=<<function>>.runsAfterSCW(this,<<arguments>>);
//                  scwShow(<<element>>,event <<,optional arguments above>>);
//
//            Where <<function>> is a function defined on the calling page
//            and <<arguments>> is the list of arguments being passed to that
//            function.
//
//      No event? No problem!
//
//            Normally the calendar will be triggered by an event but if you wish to
//            control it in code and the event is not available to you, simply pass
//            an element as the second parameter;
//
//            E.G.  scwShow(<<target element>>,<<source element>>);
//                  as in: scwShow(this,this);
//
//            ------------------------------------------------------------------
//            Here's an extremely trivial but fully functioning example page
//            showing two of the ways to trigger the calendar;
//
//            <html>
//                <head><title>Basic Example</title></head>
//                <body>
//                    <script type='text/JavaScript' src='scw.js'></script>
//                    <p onclick='scwShow(this,event);'>06-Dec-2006</p>
//                    <input onclick='scwShow(this,event);' value='07-Dec-2006' />
//                    <br/><br/>
//                    <a href='#' onclick='scwShow(this,event);return false;'>
//                        08-Dec-2006
//                    </a>
//                </body>
//            </html>
//
// *****************************************************************************
//
// See http://www.tarrget.info/calendar/scw.htm for a complete version history
//
// Version   Date        By               Description
// =======   ====        ===============  ===========
//   3.58    2007-04-04  Anthony Garrett  Resolved an error caused when the date
//                                         range does not include the current year.
//                                         Thanks to Steve Davis for letting me know.
//
//                                        Fixed "Today" selector display which
//                                         was incorrectly visible when year range
//                                         ended last year. (Also the result of
//                                         investigations based on Steve Davis'
//                                         feedback).
//
//   3.59    2007-06-13  Anthony Garrett  Added Verdana to font list of
//                                         calendar's CSS.  Resolves rendering
//                                         bug in Safari Beta 3 for Windows.
//
//   3.60    2007-07-31  Anthony Garrett  Fixed javascript error that occurred
//                                         when the target element had no value
//                                         attribute.  The error had no impact
//                                         on the behaviour of the script.  Thanks
//                                         to John Phelps for reporting this bug.
//
//   3.70    2007-09-21  Anthony Garrett  Updated the event trapping to make it
//                                         less intrusive on the page body.
//                                         NOTE: This requires that a calendar's
//                                         second parameter should be the calling
//                                         event (not the calling object as in
//                                         previous versions).
//                                         Thanks to Steve Davis for the bug report
//                                         that led to this change.
//
//                                        Fixed a bug that caused undelimited
//                                         dates to be handled incorrectly. They
//                                         are now parsed against the full date
//                                         output format then checked for validity.
//                                         Thanks to Dan Wood for raising this bug.
//
//                                        Replaced the date input sequence user
//                                         configuration setting with parsing the
//                                         sequence from the full format. New users
//                                         are often confused by the sequence and
//                                         in practice (to allow the calendar's date
//                                         output to be used for input) the sequence
//                                         must always match the full format element
//                                         order.
//
//                                        Extended IFRAME backing to all calendar objects
//                                         in order to improve calendar display over
//                                         some embedded applets and objects.  Thanks to
//                                         Stanko Kupcevic for his feedback on this.
//                                         NOTE: It is not possible to protect any
//                                         JavaScript object displayed over an
//                                         embedded DYNAMIC (and, therefore refreshed)
//                                         object because browsers usually do not
//                                         directly control the screen handling within
//                                         the object.  The best advice therefore remains
//                                         to design pages in such a way that the calendar
//                                         does not overlap embedded objects.
//
//  3.71     2008-12-14  Anthony Garrett  Restored the ability to use an element
//                                         as the second parameter when opening a
//                                         calendar while retaining the option
//                                         of passing an event. Thanks to Thierry Blind
//                                         and Sergey Snovsky for the feedback.
//
//  3.72     2008-02-24  Anthony Garrett  Trapped calls to script with only a
//                                         NAME attribute is set for the target
//                                         element when the script really requires
//                                         an ID attribute.  This is the most
//                                         frequent mistake reported to me.
//
//  3.73     2008-04-11  Anthony Garrett  Corrected the input month name parsing
//                                         so that it set the calendar to the
//                                         right month when long month names used.
//                                         Thanks to Ben Diamand for this bug report.
//
//  3.80     2008-04-29  Anthony Garrett  Added optional auto-positioning of the
//                                         calendar when its normal position would
//                                         go off the visible area.
//                                         Thanks to Chandramouli Iyer for this
//                                         suggestion.
//
//  3.90     2008-05-05  Anthony Garrett  Added an optional "Clear" button for
//                                         use when handling a read-only text
//                                         input element. Thanks to Sanjay Gangwal
//                                         for his suggestion.
// *****************************************************************************

// ************************************
// Start of Simple Calendar Widget Code
// ************************************

// This date is used throughout to determine today's date.

    var scwDateNow = new Date(Date.parse(new Date().toDateString()));

//******************************************************************************
//------------------------------------------------------------------------------
// Customisation section
//------------------------------------------------------------------------------
//******************************************************************************

    // Set the bounds for the calendar here...
    // If you want the year to roll forward you can use something like this...
    //      var scwBaseYear = scwDateNow.getFullYear()-5;
    // alternatively, hard code a date like this...
    //      var scwBaseYear = 1990;

    var scwBaseYear        = scwDateNow.getFullYear();

    // How many years do want to be valid and to show in the drop-down list?

    var scwDropDownYears   = 2;

    // All language-dependent changes can be made here...

    // If you wish to work in a single language (other than English) then
    // just replace the English (in the function scwSetLanguage below) with
    // your own text.

    // Using multiple languages:
    // In order to keep this script to a resonable size I have not included
    // languages here.  You can set language fields in a function that you
    // should call  scwSetLanguage  the script will use your languages.
    // I have included all the translations that have been sent to me in
    // such a function on the demonstration page.

    var scwLanguage;

    function scwSetDefaultLanguage()
        {try
            {scwSetLanguage();}
         catch (exception)
            {// German only
                scwToday               = 'Heute:';
                scwClear               = 'Clear';
                scwDrag                = 'zum Ziehen hier klicken';
                scwArrMonthNames       = ['Jan','Feb','M\u00E4r','Apr','Mai','Jun',
                                          'Jul','Aug','Sep','Okt','Nov','Dez'];
                scwArrWeekInits        = ['S','M','D','M','D','F','S'];
                scwInvalidDateMsg      = 'Das eingegebene Datum ist ung\u00FCltig.\n';
                scwOutOfRangeMsg       = 'Das eingegebene Datum liegt au\u00DFerhalb der gesetzten Grenzen.';
                scwDoesNotExistMsg     = 'Das eingegebene Datum gibt es nicht.';
                scwInvalidAlert        = ['Ung\u00FCltiges Datum (',') ignoriert.'];
                scwDateDisablingError  = ['Fehler ',' ist kein Datumsobjekt.'];
                scwRangeDisablingError = ['Fehler ',' muss aus zwei Elementen bestehen.'];
            }
        };

    // Note:  Always start the scwArrWeekInits array with your string for
    //        Sunday whatever scwWeekStart (below) is set to.

    // scwWeekStart determines the start of the week in the display
    // Set it to: 0 (Zero) for Sunday, 1 (One) for Monday etc..

    var scwWeekStart       =    1;

    // The week start day for the display is taken as the week start
    // for week numbering.  This ensures that only one week number
    // applies to one line of the calendar table.
    // [ISO 8601 begins the week with Day 1 = Monday.]

    // If you want to see week numbering on the calendar, set
    // this to true.  If not, false.

    var scwWeekNumberDisplay    = false;

    // Week numbering rules are generally based on a day in the week
    // that determines the first week of the year.  ISO 8601 uses
    // Thursday (day four when Sunday is day zero).  You can alter
    // the base day here.

    // See http://www.cl.cam.ac.uk/~mgk25/iso-time.html for more information

    var scwWeekNumberBaseDay    = 4;

    // Each of the calendar's alert message types can be disabled
    // independently here.

    var scwShowInvalidDateMsg       = true,
        scwShowOutOfRangeMsg        = true,
        scwShowDoesNotExistMsg      = true,
        scwShowInvalidAlert         = true,
        scwShowDateDisablingError   = true,
        scwShowRangeDisablingError  = true;

    // Set the allowed input date delimiters here...
    // E.g. To set the rising slash, hyphen, full-stop (aka stop or point),
    //      comma and space as delimiters use
    //              var scwArrDelimiters   = ['/','-','.',',',' '];

    var scwArrDelimiters   = ['/','-','.',',',' '];

    // Set the format for the displayed 'Today' date and for the output
    // date here.
    //
    // The format is described using delimiters of your choice (as set
    // in scwArrDelimiters above) and case insensitive letters D, M and Y.
    //
    // NOTE: If no delimiters are input then the date output format is used
    //       to parse the value.  This allows less flexiblility in the input
    //       value than using delimiters but an accurately entered date
    //       remains parsable.
    //
    // Definition               Returns
    // ----------               -------
    // D            date in the month without zero filling
    // DD           date in the month left zero filled
    // M            month number without zero filling
    // MM           month number left zero filled
    // MMM          month string from scwArrMonthNames
    // YY           year number in two digits
    // YYYY         year number in four digits

    // Displayed "Today" date format

    var scwDateDisplayFormat = 'DD.MM.YY';     // e.g. 'MMM-DD-YYYY' for the US

    // Output date format

    var scwDateOutputFormat  = 'DD.MM.YYYY'; // e.g. 'MMM-DD-YYYY' for the US

    // Note: The delimiters used should be in scwArrDelimiters.

    // scwZindex controls how the pop-up calendar interacts with the rest
    // of the page.  It is usually adequate to leave it as 1 (One) but I
    // have made it available here to help anyone who needs to alter the
    // level in order to ensure that the calendar displays correctly in
    // relation to all other elements on the page.

    var scwZindex          = 1;

    // Personally I like the fact that entering 31-Sep-2005 displays
    // 1-Oct-2005, however you may want that to be an error.  If so,
    // set scwBlnStrict = true.  That will cause an error message to
    // display and the selected month is displayed without a selected
    // day. Thanks to Brad Allan for his feedback prompting this feature.

    var scwBlnStrict       = false;

    // If you are using ReadOnly or Disabled fields to return the date
    // value into, it can be useful to show a button on the calendar
    // that allows the value to be cleared.  If you want to do that,
    // set scwClearButton = true;

    var scwClearButton     = false;

    // The calendar will position itself aligned with the bottom left
    // corner of the target element.  If automatic positioning is turned
    // on  with  scwAutoPosition = true  then if that would cause the
    // calendar to display off the visible screen, it is shifted to
    // a position that is visible.

    var scwAutoPosition    = true;

    // If you wish to disable any displayed day, e.g. Every Monday,
    // you can do it by setting the following array.  The array elements
    // match the displayed cells.
    //
    // You could put something like the following in your calling page
    // to disable all weekend days;
    //
    //  for (var i=0;i<scwEnabledDay.length;i++)
    //      {if (i%7%6==0) scwEnabledDay[i] = false;}
    //
    // The above approach will allow you to disable days of the week
    // for the whole of your page easily.  If you need to set different
    // disabled days for a number of date input fields on your page
    // there is an easier way: You can pass additional arguments to
    // scwShow. The syntax is described at the top of this script in
    // the section:
    //    "How to use the Calendar once it is defined for your page:"
    //
    // It is possible to use these two approaches in combination.

    var scwEnabledDay      = [true, true, true, true, true, true, true,
                              true, true, true, true, true, true, true,
                              true, true, true, true, true, true, true,
                              true, true, true, true, true, true, true,
                              true, true, true, true, true, true, true,
                              true, true, true, true, true, true, true];

    // You can disable any specific date (e.g. 24-Jan-2006 or Today) by
    // creating an element of the array scwDisabledDates as a date object
    // with the value you want to disable.  Date ranges can be disabled
    // by placing an array of two values (Start and End) into an element
    // of this array.

    var scwDisabledDates   = new Array();

    // e.g. To disable 10-Dec-2005:
    //          scwDisabledDates[0] = new Date(2005,11,10);
    //
    //      or a range from 2004-Dec-25 to 2005-Jan-01:
    //          scwDisabledDates[1] = [new Date(2004,11,25),new Date(2005,0,1)];
    //
    // Remember that Javascript months are Zero-based.

    // The disabling by date and date range does prevent the current day
    // from being selected.  Disabling days of the week does not so you can set
    // the scwActiveToday value to false to prevent selection.

    var scwActiveToday = true;

    // Dates that are out of the displayed month are shown at the start
    // (unless the month starts on the first day of the week) and end of each
    // month.
    //
    // Set scwOutOfMonthDisable to  true  to disable these dates (or  false
    // to allow their selection).
    //
    // Set scwOutOfMonthHide    to  true  to hide    these dates (or  false
    // to make them visible).

    var scwOutOfMonthDisable = false;
    var scwOutOfMonthHide    = false;

    // Dates that are out of the specified range can be displayed at the start
    // of the very first month and end of the very last.  Set
    // scwOutOfRangeDisable to  true  to disable these dates (or  false  to
    // allow their selection).

    var scwOutOfRangeDisable = true;

    // If you want a special format for the cell that contains the current day
    // set this to true.  This sets a thin border around the cell in the colour
    // set by scwTodayCellBorderColour.

    var scwFormatTodayCell = true;
    var scwTodayCellBorderColour = 'red';

    // You can allow the calendar to be dragged around the screen by
    // using the setting scwAllowDrag to true.
    // I can't say I recommend it because of the danger of the user
    // forgetting which date field the calendar will update when there
    // are multiple date fields on a page.

    var scwAllowDrag = false;

    // Closing the calendar by clicking on it (rather than elsewhere on the
    // main page) can be inconvenient.  The scwClickToHide boolean value
    // controls this feature.

    var scwClickToHide = false;

    // I have made every effort to isolate the pop-up script from any
    // CSS defined on the main page but if you have anything set that
    // affects the pop-up (or you may want to change the way it looks)
    // then you can address it in the following style sheets.

    document.writeln(
        '<style type="text/css">'                                       +
            '.scw           {padding:1px;vertical-align:middle;}'       +
            'iframe.scw     {position:absolute;z-index:' + scwZindex    +
                            ';top:0px;left:0px;visibility:hidden;'      +
                            'width:1px;height:1px;}'                    +
            'table.scw      {padding:0px;visibility:hidden;'            +
                            'position:absolute;cursor:default;'         +
                            'width:200px;top:0px;left:0px;'             +
                            'z-index:' + (scwZindex+1)                  +
                            ';text-align:center;}'                      +
        '</style>'  );

    // This style sheet can be extracted from the script and edited into regular
    // CSS (by removing all occurrences of + and '). That can be used as the
    // basis for themes. Classes are described in comments within the style
    // sheet.

    document.writeln(
        '<style type="text/css">'                                       +
            '/* IMPORTANT:  The SCW calendar script requires all '      +
            '               the classes defined here.'                  +
            '*/'                                                        +
            'table.scw      {padding:       1px;'                       +
                            'vertical-align:middle;'                    +
                            'border:        ridge 2px;'                 +
                            'font-size:     10pt;'                      +
                            'font-family:   ' +
                                   'Verdana,Arial,Helvetica,Sans-Serif;'+
                            'font-weight:   bold;}'                     +
            'td.scwDrag,'                                               +
            'td.scwHead                 {padding:       0px 0px;'       +
                                        'text-align:    center;}'       +
            'td.scwDrag                 {font-size:     8pt;}'          +
            'select.scwHead             {margin:        3px 1px;'       +
                                        'text-align:    center;}'       +
            'input.scwHead              {height:        22px;'          +
                                        'width:         22px;'          +
                                        'vertical-align:middle;'        +
                                        'text-align:    center;'        +
                                        'margin:        2px 1px;'       +
                                        'font-weight:   bold;'          +
                                        'font-size:     10pt;'          +
                                        'font-family:   fixedSys;}'     +
            'td.scwWeekNumberHead,'                                     +
            'td.scwWeek                 {padding:       0px;'           +
                                        'text-align:    center;'        +
                                        'font-weight:   bold;}'         +
            'td.scwNow,'                                                +
            'td.scwNowHover,'                                           +
            'td.scwNow:hover,'                                          +
            'td.scwNowDisabled          {padding:       0px;'           +
                                        'text-align:    center;'        +
                                        'vertical-align:middle;'        +
                                        'font-weight:   normal;}'       +
            'table.scwCells             {text-align:    right;'         +
                                        'font-size:     8pt;'           +
                                        'width:         96%;}'          +
            'td.scwCells,'                  +
            'td.scwCellsHover,'             +
            'td.scwCells:hover,'            +
            'td.scwCellsDisabled,'          +
            'td.scwCellsExMonth,'           +
            'td.scwCellsExMonthHover,'      +
            'td.scwCellsExMonth:hover,'     +
            'td.scwCellsExMonthDisabled,'   +
            'td.scwCellsWeekend,'           +
            'td.scwCellsWeekendHover,'      +
            'td.scwCellsWeekend:hover,'     +
            'td.scwCellsWeekendDisabled,'   +
            'td.scwInputDate,'              +
            'td.scwInputDateHover,'         +
            'td.scwInputDate:hover,'        +
            'td.scwInputDateDisabled,'      +
            'td.scwWeekNo,'                 +
            'td.scwWeeks                {padding:           3px;'       +
                                        'width:             16px;'      +
                                        'height:            16px;'      +
                                        'border-width:      1px;'       +
                                        'border-style:      solid;'     +
                                        'font-weight:       bold;'      +
                                        'vertical-align:    middle;}'   +
            '/* Blend the colours into your page here...    */'         +
            '/* Calendar background */'                                 +
            'table.scw                  {background-color:  #999999;}'  +
            '/* Drag Handle */'                                         +
            'td.scwDrag                 {background-color:  #9999CC;'   +
                                        'color:             #CCCCFF;}'  +
            '/* Week number heading */'                                 +
            'td.scwWeekNumberHead       {color:             #6666CC;}'  +
            '/* Week day headings */'                                   +
            'td.scwWeek                 {color:             #CCCCCC;}'  +
            '/* Week numbers */'                                        +
            'td.scwWeekNo               {background-color:  #776677;'   +
                                        'color:             #CCCCCC;}'  +
            '/* Enabled Days */'                                        +
            '/* Week Day */'                                            +
            'td.scwCells                {background-color:  #CCCCCC;'   +
                                        'color:             #000000;}'  +
            '/* Day matching the input date */'                         +
            'td.scwInputDate            {background-color:  #CC9999;'   +
                                        'color:             #FF0000;}'  +
            '/* Weekend Day */'                                         +
            'td.scwCellsWeekend         {background-color:  #CCCCCC;'   +
                                        'color:             #CC6666;}'  +
            '/* Day outside the current month */'                       +
            'td.scwCellsExMonth         {background-color:  #CCCCCC;'   +
                                        'color:             #666666;}'  +
            '/* Today selector */'                                      +
            'td.scwNow                  {background-color:  #999999;'   +
                                        'color:             #FFFFFF;}'  +
            '/* Clear Button */'                                        +
            'td.scwClear                {padding:           0px;}'      +
            'input.scwClear             {padding:           0px;'       +
                                        'text-align:        center;'    +
                                        'font-size:         8pt;}'      +
            '/* MouseOver/Hover formatting '                            +
            '       If you want to "turn off" any of the formatting '   +
            '       then just set to the same as the standard format'   +
            '       above.'                                             +
            ' '                                                         +
            '       Note: The reason that the following are'            +
            '       implemented using both a class and a :hover'        +
            '       pseudoclass is because Opera handles the rendering' +
            '       involved in the class swap very poorly and IE6 '    +
            '       (and below) only implements pseudoclasses on the'   +
            '       anchor tag.'                                        +
            '*/'                                                        +
            '/* Active cells */'                                        +
            'td.scwCells:hover,'                                        +
            'td.scwCellsHover           {background-color:  #FFFF00;'   +
                                        'cursor:            pointer;'   +
                                        'color:             #000000;}'  +
            '/* Day matching the input date */'                         +
            'td.scwInputDate:hover,'                                    +
            'td.scwInputDateHover       {background-color:  #FFFF00;'   +
                                        'cursor:            pointer;'   +
                                        'color:             #000000;}'  +
            '/* Weekend cells */'                                       +
            'td.scwCellsWeekend:hover,'                                 +
            'td.scwCellsWeekendHover    {background-color:  #FFFF00;'   +
                                        'cursor:            pointer;'   +
                                        'color:             #000000;}'  +
            '/* Day outside the current month */'                       +
            'td.scwCellsExMonth:hover,'                                 +
            'td.scwCellsExMonthHover    {background-color:  #FFFF00;'   +
                                        'cursor:            pointer;'   +
                                        'color:             #000000;}'  +
            '/* Today selector */'                                      +
            'td.scwNow:hover,'                                          +
            'td.scwNowHover             {color:             #FFFF00;'   +
                                        'cursor:            pointer;'   +
                                        'font-weight:       bold;}'     +
            '/* Disabled cells */'                                      +
            '/* Week Day */'                                            +
            '/* Day matching the input date */'                         +
            'td.scwInputDateDisabled    {background-color:  #999999;'   +
                                        'color:             #000000;}'  +
            'td.scwCellsDisabled        {background-color:  #999999;'   +
                                        'color:             #000000;}'  +
            '/* Weekend Day */'                                         +
            'td.scwCellsWeekendDisabled {background-color:  #999999;'   +
                                        'color:             #CC6666;}'  +
            '/* Day outside the current month */'                       +
            'td.scwCellsExMonthDisabled {background-color:  #999999;'   +
                                        'color:             #666666;}'  +
            'td.scwNowDisabled          {background-color:  #6666CC;'   +
                                        'color:             #FFFFFF;}'  +
        '</style>'
                    );

//******************************************************************************
//------------------------------------------------------------------------------
// End of customisation section
//------------------------------------------------------------------------------
//******************************************************************************

//  Variables required by both scwShow and scwShowMonth

    var scwTargetEle,
        scwTriggerEle,
        scwMonthSum            = 0,
        scwBlnFullInputDate    = false,
        scwPassEnabledDay      = new Array(),
        scwSeedDate            = new Date(),
        scwParmActiveToday     = true,
        scwWeekStart           = scwWeekStart%7,
        scwToday,
        scwClear,
        scwDrag,
        scwArrMonthNames,
        scwArrWeekInits,
        scwInvalidDateMsg,
        scwOutOfRangeMsg,
        scwDoesNotExistMsg,
        scwInvalidAlert,
        scwDateDisablingError,
        scwRangeDisablingError;

    // Add a method to format a date into the required pattern

    Date.prototype.scwFormat =
        function(scwFormat)
            {var charCount = 0,
                 codeChar  = '',
                 result    = '';

             for (var i=0;i<=scwFormat.length;i++)
                {if (i<scwFormat.length && scwFormat.charAt(i)==codeChar)
                        {// If we haven't hit the end of the string and
                         // the format string character is the same as
                         // the previous one, just clock up one to the
                         // length of the current element definition
                         charCount++;
                        }
                 else   {switch (codeChar)
                            {case 'y': case 'Y':
                                result += (this.getFullYear()%Math.
                                            pow(10,charCount)).toString().
                                            scwPadLeft(charCount);
                                break;
                             case 'm': case 'M':
                                // If we find an M, check the number of them to
                                // determine whether to get the month number or
                                // the month name.
                                result += (charCount<3)
                                            ?(this.getMonth()+1).
                                                toString().scwPadLeft(charCount)
                                            :scwArrMonthNames[this.getMonth()];
                                break;
                             case 'd': case 'D':
                                // If we find a D, get the date and format it
                                result += this.getDate().toString().
                                            scwPadLeft(charCount);
                                break;
                             default:
                                // Copy any unrecognised characters across
                                while (charCount-- > 0) {result += codeChar;}
                            }

                         if (i<scwFormat.length)
                            {// Store the character we have just worked on
                             codeChar  = scwFormat.charAt(i);
                             charCount = 1;
                            }
                        }
                }
             return result;
            };

    // Add a method to left pad zeroes

    String.prototype.scwPadLeft =
        function(padToLength)
            {var result = '';
             for (var i=0;i<(padToLength - this.length);i++) {result += '0';}
             return (result + this);
            };

    // Set up a closure so that any next function can be triggered
    // after the calendar has been closed AND that function can take
    // arguments.

    Function.prototype.runsAfterSCW =
        function()  {var func = this,
                         args = new Array(arguments.length);

                     for (var i=0;i<args.length;++i) {args[i] = arguments[i];}

                     return function()
                        {// concat/join the two argument arrays
                         for (var i=0;i<arguments.length;++i) {args[args.length] = arguments[i];}
                         return (args.shift()==scwTriggerEle)?func.apply(this, args):null;
                        };
                    };

    // Set up some shortcuts

    function scwID(id)
        {if (document.getElementById(id) || (!document.getElementById(id) && document.getElementsByName(id).length==0))
                                    // IF   An ID attribute is assigned
                                    // OR   No ID attribute is assigned but using IE and Opera
                                    //          (which will find the NAME attribute value using getElementById)
                                    // OR   No element has this ID or NAME attribute value
                                    //          (used internally by the script)
                                    // THEN Return the required element.
                {return document.getElementById(id);}
         else   {if (document.getElementsByName(id).length==1)
                                // IF   No ID attribute is assigned
                                // AND  Using a standards-based browser
                                // AND  Only one element has the NAME attribute set to the value
                                // THEN Return the required element (using the NAME attribute value).
                        {return document.getElementsByName(id)[0];}
                 else   {if (document.getElementsByName(id).length>1)
                            {   // IF   No ID attribute is assigned
                                // AND  using a standards-based browser
                                // AND  more than one element has the NAME attribute set to the value
                                // THEN alert developer to fix the fault.
                             alert( 'SCW' +
                                    ' \nCannot uniquely identify element named: ' + id +
                                    '.\nMore than one identical NAME attribute defined' +
                                    '.\nSolution: Assign the required element a unique ID attribute value.');
                            }
                        }
                }
        };

    // Use a global variable for the return value from the next action
    // IE fails to pass the function through if the target element is in
    // a form and scwNextAction is not defined.

    var scwNextActionReturn, scwNextAction;

// ****************************************************************************
// Start of Function Library
//
//  Exposed functions:
//
//      scwShow             Entry point for display of calendar,
//                              called in main page.
//      showCal             Legacy name of scwShow:
//                              Passes only legacy arguments,
//                              not the optional day disabling arguments.
//
//      scwShowMonth        Displays a month on the calendar,
//                              Called when a month is set or changed.
//
//      scwBeginDrag        Controls calendar dragging.
//
//      scwCancel           Called when the calendar background is clicked:
//                              Calls scwStopPropagation and may call scwHide.
//      scwHide             Hides the calendar, called on various events.
//      scwStopPropagation  Stops the propagation of an event.
//
// ****************************************************************************

    function showCal(scwEle,scwSource) {scwShow(scwEle,scwSource);};
    function scwShow(scwEle,scwSource)
        {if (!scwSource) {scwSource = window.event;}

         if (scwSource.tagName) // Second parameter isn't an event it's an element
            {var scwSourceEle = scwSource;

             if (scwID('scwIE'))  {window.event.cancelBubble = true;}
             else {scwSourceEle.parentNode.addEventListener('click',scwStopPropagation,false);}
            }
         else   // Second parameter is an event
            {var scwSourceEle = (scwSource.target)
                                    ?scwSource.target
                                    :scwSource.srcElement;

             // Stop the click event that opens the calendar from bubbling up to
             // the document-level event handler that hides it!
             if (scwSource.stopPropagation) {scwSource.stopPropagation();}
             else                           {scwSource.cancelBubble = true;}
            }

         scwTriggerEle = scwSourceEle;

         // Take any parameters that there might be from the third onwards as
         // day numbers to be disabled 0 = Sunday through to 6 = Saturday.

         scwParmActiveToday = true;

         for (var i=0;i<7;i++)
            {scwPassEnabledDay[(i+7-scwWeekStart)%7] = true;
             for (var j=2;j<arguments.length;j++)
                {if (arguments[j]==i)
                    {scwPassEnabledDay[(i+7-scwWeekStart)%7] = false;
                     if (scwDateNow.getDay()==i) {scwParmActiveToday = false;}
                    }
                }
            }

         //   If no value is preset then the seed date is
         //      Today (when today is in range) OR
         //      The middle of the date range.

         scwSeedDate = scwDateNow;

         // Find the date and Strip space characters from start and
         // end of date input.

         var scwDateValue = '';

         if (scwEle.value) {scwDateValue = scwEle.value.replace(/^\s+/,'').replace(/\s+$/,'');}
         else   {if (typeof scwEle.value == 'undefined')
                    {var scwChildNodes = scwEle.childNodes;
                     for (var i=0;i<scwChildNodes.length;i++)
                        {if (scwChildNodes[i].nodeType == 3)
                            {scwDateValue = scwChildNodes[i].nodeValue.replace(/^\s+/,'').replace(/\s+$/,'');
                             if (scwDateValue.length > 0)
                                {scwTriggerEle.scwTextNode = scwChildNodes[i];
                                 scwTriggerEle.scwLength   = scwChildNodes[i].nodeValue.length;
                                 break;
                                }
                            }
                        }
                    }
                }

         // Set the language-dependent elements

         scwSetDefaultLanguage();

         scwID('scwDragText').innerHTML = scwDrag;

         scwID('scwMonths').options.length = 0;
         for (var i=0;i<scwArrMonthNames.length;i++)
            {scwID('scwMonths').options[i] = new Option(scwArrMonthNames[i],scwArrMonthNames[i]);}

         scwID('scwYears').options.length = 0;
         for (var i=0;i<scwDropDownYears;i++)
            {scwID('scwYears').options[i] =  new Option((scwBaseYear+i),(scwBaseYear+i));}

         for (var i=0;i<scwArrWeekInits.length;i++)
            {scwID('scwWeekInit' + i).innerHTML = scwArrWeekInits[(i+scwWeekStart)%scwArrWeekInits.length];}

         if (((new Date(scwBaseYear + scwDropDownYears, 0, 0)) > scwDateNow &&
              (new Date(scwBaseYear, 0, 0))                    < scwDateNow) ||
             (scwClearButton && (scwEle.readOnly || scwEle.disabled))
            )   {scwID('scwFoot').style.display = '';
                 scwID('scwNow').innerHTML = scwToday + ' ' + scwDateNow.scwFormat(scwDateDisplayFormat);
                 scwID('scwClearButton').value = scwClear;
                 if ((new Date(scwBaseYear + scwDropDownYears, 0, 0)) > scwDateNow &&
                     (new Date(scwBaseYear, 0, 0))                    < scwDateNow
                    )   {scwID('scwNow').style.display = '';
                         if (scwClearButton && (scwEle.readOnly || scwEle.disabled))
                                {scwID('scwClear').style.display   = '';
                                 scwID('scwClear').style.textAlign = 'left';
                                 scwID('scwNow').style.textAlign   = 'right';
                                }
                         else   {scwID('scwClear').style.display = 'none';
                                 scwID('scwNow').style.textAlign = 'center';
                                }
                        }
                 else   {scwID('scwClear').style.textAlign = 'center';
                         scwID('scwClear').style.display = '';
                         scwID('scwNow').style.display = 'none';
                        }
                }
         else   {scwID('scwFoot').style.display = 'none';}

         if (scwDateValue.length==0)
            {// If no value is entered and today is within the range,
             // use today's date, otherwise use the middle of the valid range.

             scwBlnFullInputDate=false;

             if ((new Date(scwBaseYear+scwDropDownYears,0,0))<scwSeedDate ||
                 (new Date(scwBaseYear,0,1))                 >scwSeedDate
                )
                {scwSeedDate = new Date(scwBaseYear + Math.floor(scwDropDownYears / 2), 5, 1);}
            }
         else
            {function scwInputFormat()
                {var scwArrSeed = new Array(),
                     scwArrInput = scwDateValue.split(new RegExp('[\\'+scwArrDelimiters.join('\\')+']+','g'));

                 // "Escape" all the user defined date delimiters above -
                 // several delimiters will need it and it does no harm for
                 // the others.

                 // Strip any empty array elements (caused by delimiters)
                 // from the beginning or end of the array. They will
                 // still appear in the output string if in the output
                 // format.

                 if (scwArrInput[0]!=null)
                    {if (scwArrInput[0].length==0)                      {scwArrInput.splice(0,1);}
                     if (scwArrInput[scwArrInput.length-1].length==0)   {scwArrInput.splice(scwArrInput.length-1,1);}
                    }

                 scwBlnFullInputDate = false;

                 scwDateOutputFormat = scwDateOutputFormat.toUpperCase();

                 // List all the allowed letters in the date format
                 var template = ['D','M','Y'];

                 // Prepare the sequence of date input elements
                 var result = new Array();

                 for (var i=0;i<template.length;i++)
                    {if (scwDateOutputFormat.search(template[i])>-1)
                        {result[scwDateOutputFormat.search(template[i])] = template[i];}
                    }

                 var scwDateSequence = result.join('');

                 // Separate the elements of the date input
                 switch (scwArrInput.length)
                    {case 1:
                        {if (scwDateOutputFormat.indexOf('Y')>-1 &&
                             scwArrInput[0].length>scwDateOutputFormat.lastIndexOf('Y'))
                            {scwArrSeed[0] = parseInt(scwArrInput[0].substring(scwDateOutputFormat.indexOf('Y'),
                                                                               scwDateOutputFormat.lastIndexOf('Y')+1),10);
                            }
                         else   {scwArrSeed[0] = 0;}

                         if (scwDateOutputFormat.indexOf('M')>-1 &&
                             scwArrInput[0].length>scwDateOutputFormat.lastIndexOf('M'))
                            {scwArrSeed[1] = scwArrInput[0].substring(scwDateOutputFormat.indexOf('M'),
                                                                      scwDateOutputFormat.lastIndexOf('M')+1);
                            }
                         else   {scwArrSeed[1] = '6';}

                         if (scwDateOutputFormat.indexOf('D')>-1 &&
                             scwArrInput[0].length>scwDateOutputFormat.lastIndexOf('D'))
                            {scwArrSeed[2] = parseInt(scwArrInput[0].substring(scwDateOutputFormat.indexOf('D'),
                                                                               scwDateOutputFormat.lastIndexOf('D')+1),10);
                            }
                         else   {scwArrSeed[2] = 1;}

                         if (scwArrInput[0].length==scwDateOutputFormat.length) {scwBlnFullInputDate = true;}
                         break;
                        }
                     case 2:
                        {// Year and Month entry
                         scwArrSeed[0] =
                             parseInt(scwArrInput[scwDateSequence.
                                                    replace(/D/i,'').
                                                    search(/Y/i)],10);  // Year
                         scwArrSeed[1] = scwArrInput[scwDateSequence.
                                                    replace(/D/i,'').
                                                    search(/M/i)];      // Month
                         scwArrSeed[2] = 1;                             // Day
                         break;
                        }
                     case 3:
                        {// Day Month and Year entry

                         scwArrSeed[0] =
                             parseInt(scwArrInput[scwDateSequence.
                                                    search(/Y/i)],10);  // Year
                         scwArrSeed[1] = scwArrInput[scwDateSequence.
                                                    search(/M/i)];      // Month
                         scwArrSeed[2] =
                             parseInt(scwArrInput[scwDateSequence.
                                                    search(/D/i)],10);  // Day

                         scwBlnFullInputDate = true;
                         break;
                        }
                     default:
                        {// A stuff-up has led to more than three elements in
                         // the date.
                         scwArrSeed[0] = 0;     // Year
                         scwArrSeed[1] = 0;     // Month
                         scwArrSeed[2] = 0;     // Day
                        }
                    }

                 // These regular expressions validate the input date format
                 // to the following rules;
                 //         Day   1-31 (optional zero on single digits)
                 //         Month 1-12 (optional zero on single digits)
                 //                     or case insensitive name
                 //         Year  One, Two or four digits

                 // Months names are as set in the language-dependent
                 // definitions and delimiters are set just below there

                 var scwExpValDay    = new RegExp('^(0?[1-9]|[1-2][0-9]|3[0-1])$'),
                     scwExpValMonth  = new RegExp('^(0?[1-9]|1[0-2]|'        +
                                                  scwArrMonthNames.join('|') +
                                                  ')$','i'),
                     scwExpValYear   = new RegExp('^([0-9]{1,2}|[0-9]{4})$');

                 // Apply validation and report failures

                 if (scwExpValYear.exec(scwArrSeed[0])  == null ||
                     scwExpValMonth.exec(scwArrSeed[1]) == null ||
                     scwExpValDay.exec(scwArrSeed[2])   == null
                    )
                    {if (scwShowInvalidDateMsg)
                        {alert(scwInvalidDateMsg  +
                               scwInvalidAlert[0] + scwDateValue +
                               scwInvalidAlert[1]);}
                     scwBlnFullInputDate = false;
                     scwArrSeed[0] = scwBaseYear +
                                     Math.floor(scwDropDownYears/2); // Year
                     scwArrSeed[1] = '6';                            // Month
                     scwArrSeed[2] = 1;                              // Day
                    }

                 // Return the  Year    in scwArrSeed[0]
                 //             Month   in scwArrSeed[1]
                 //             Day     in scwArrSeed[2]

                 return scwArrSeed;
                };

             // Parse the string into an array using the allowed delimiters

             scwArrSeedDate = scwInputFormat();

             // So now we have the Year, Month and Day in an array.

             //   If the year is one or two digits then the routine assumes a
             //   year belongs in the 21st Century unless it is less than 50
             //   in which case it assumes the 20th Century is intended.

             if (scwArrSeedDate[0]<100) {scwArrSeedDate[0] += (scwArrSeedDate[0]>50)?1900:2000;}

             // Check whether the month is in digits or an abbreviation

             if (scwArrSeedDate[1].search(/\d+/)<0)
                {for (i=0;i<scwArrMonthNames.length;i++)
                    {if (scwArrSeedDate[1].toUpperCase()==scwArrMonthNames[i].toUpperCase())
                        {scwArrSeedDate[1]=i+1;
                         break;
                        }
                    }
                }

             scwSeedDate = new Date(scwArrSeedDate[0],scwArrSeedDate[1]-1,scwArrSeedDate[2]);
            }

         // Test that we have arrived at a valid date

         if (isNaN(scwSeedDate))
            {if (scwShowInvalidDateMsg) {alert(scwInvalidDateMsg + scwInvalidAlert[0] + scwDateValue + scwInvalidAlert[1]);}
             scwSeedDate = new Date(scwBaseYear + Math.floor(scwDropDownYears/2),5,1);
             scwBlnFullInputDate=false;
            }
         else
            {// Test that the date is within range,
             // if not then set date to a sensible date in range.

             if ((new Date(scwBaseYear,0,1)) > scwSeedDate)
                {if (scwBlnStrict && scwShowOutOfRangeMsg) {alert(scwOutOfRangeMsg);}
                 scwSeedDate = new Date(scwBaseYear,0,1);
                 scwBlnFullInputDate=false;
                }
             else
                {if ((new Date(scwBaseYear+scwDropDownYears,0,0))<scwSeedDate)
                    {if (scwBlnStrict && scwShowOutOfRangeMsg) {alert(scwOutOfRangeMsg);}
                     scwSeedDate = new Date(scwBaseYear + Math.floor(scwDropDownYears)-1,11,1);
                     scwBlnFullInputDate=false;
                    }
                 else
                    {if (scwBlnStrict && scwBlnFullInputDate &&
                          (scwSeedDate.getDate()      != scwArrSeedDate[2] ||
                           (scwSeedDate.getMonth()+1) != scwArrSeedDate[1] ||
                           scwSeedDate.getFullYear()  != scwArrSeedDate[0]
                          )
                        )
                        {if (scwShowDoesNotExistMsg) alert(scwDoesNotExistMsg);
                         scwSeedDate = new Date(scwSeedDate.getFullYear(),scwSeedDate.getMonth()-1,1);
                         scwBlnFullInputDate=false;
                        }
                    }
                }
            }

         // Test the disabled dates for validity
         // Give error message if not valid.

         for (var i=0;i<scwDisabledDates.length;i++)
            {if (!((typeof scwDisabledDates[i] == 'object') && (scwDisabledDates[i].constructor == Date)))
                {if ((typeof scwDisabledDates[i] == 'object') && (scwDisabledDates[i].constructor == Array))
                    {var scwPass = true;

                     if (scwDisabledDates[i].length !=2)
                        {if (scwShowRangeDisablingError)
                            {alert(scwRangeDisablingError[0] + scwDisabledDates[i] + scwRangeDisablingError[1]);}
                         scwPass = false;
                        }
                     else
                        {for (var j=0;j<scwDisabledDates[i].length;j++)
                            {if (!((typeof scwDisabledDates[i][j] == 'object') && (scwDisabledDates[i][j].constructor == Date)))
                                {if (scwShowRangeDisablingError)
                                    {alert(  scwDateDisablingError[0] + scwDisabledDates[i][j] + scwDateDisablingError[1]);}
                                 scwPass = false;
                                }
                            }
                        }

                     if (scwPass && (scwDisabledDates[i][0] > scwDisabledDates[i][1])) {scwDisabledDates[i].reverse();}
                    }
                 else
                    {if (scwShowRangeDisablingError) {alert(scwDateDisablingError[0] + scwDisabledDates[i] + scwDateDisablingError[1]);}}
                }
            }

         // Calculate the number of months that the entered (or
         // defaulted) month is after the start of the allowed
         // date range.

         scwMonthSum =  12*(scwSeedDate.getFullYear()-scwBaseYear)+scwSeedDate.getMonth();

         scwID('scwYears' ).options.selectedIndex = Math.floor(scwMonthSum/12);
         scwID('scwMonths').options.selectedIndex = (scwMonthSum%12);

         // Check whether or not dragging is allowed and display drag handle if necessary

         scwID('scwDrag').style.display=(scwAllowDrag)?'':'none';

         // Display the month

         scwShowMonth(0);

         // Position the calendar box

         // The object sniffing for Opera allows for the fact that Opera
         // is the only major browser that correctly reports the position
         // of an element in a scrollable DIV.  This is because IE and
         // Firefox omit the DIV from the offsetParent tree.

         scwTargetEle=scwEle;

         var offsetTop =parseInt(scwEle.offsetTop ,10) + parseInt(scwEle.offsetHeight,10),
             offsetLeft=parseInt(scwEle.offsetLeft,10);

         if (!window.opera)
             {while (scwEle.tagName!='BODY' && scwEle.tagName!='HTML')
                 {offsetTop -=parseInt(scwEle.scrollTop, 10);
                  offsetLeft-=parseInt(scwEle.scrollLeft,10);
                  scwEle=scwEle.parentNode;
                 }
              scwEle=scwTargetEle;
             }

         do {scwEle=scwEle.offsetParent;
             offsetTop +=parseInt(scwEle.offsetTop, 10);
             offsetLeft+=parseInt(scwEle.offsetLeft,10);
            }
         while (scwEle.tagName!='BODY' && scwEle.tagName!='HTML');

         if (scwAutoPosition)
             {var scwWidth      = parseInt(scwID('scw').offsetWidth, 10),
                  scwHeight     = parseInt(scwID('scw').offsetHeight,10),
                  scwWindowLeft =
                     (document.body && document.body.scrollLeft)
                          ?document.body.scrollLeft                  //DOM compliant
                          :(document.documentElement && document.documentElement.scrollLeft)
                              ?document.documentElement.scrollLeft   //IE6+ standards compliant
                              :0,                                    //Failed
                  scwWindowWidth =
                      (typeof(innerWidth) == 'number')
                          ?innerWidth                                //DOM compliant
                          :(document.documentElement && document.documentElement.clientWidth)
                              ?document.documentElement.clientWidth  //IE6+ standards compliant
                              :(document.body && document.body.clientWidth)
                                  ?document.body.clientWidth         //IE non-compliant
                                  :0,                                //Failed
                  scwWindowTop =
                      (document.body && document.body.scrollTop)
                          ?document.body.scrollTop                   //DOM compliant
                          :(document.documentElement && document.documentElement.scrollTop)
                              ?document.documentElement.scrollTop    //IE6+ standards compliant
                              :0,                                    //Failed
                  scwWindowHeight =
                      (typeof(innerHeight) == 'number')
                          ?innerHeight                               //DOM compliant
                          :(document.documentElement && document.documentElement.clientHeight)
                              ?document.documentElement.clientHeight //IE6+ standards compliant
                              :(document.body && document.body.clientHeight)
                                  ?document.body.clientHeight        //IE non-compliant
                                  :0;                                //Failed

              offsetLeft -= (offsetLeft - scwWidth + parseInt(scwTargetEle.offsetWidth,10) >= scwWindowLeft &&
                             offsetLeft + scwWidth > scwWindowLeft + scwWindowWidth
                            )?(scwWidth - parseInt(scwTargetEle.offsetWidth,10)):0;

              offsetTop -= (offsetTop - scwHeight - parseInt(scwTargetEle.offsetHeight,10) >= scwWindowTop &&
                            offsetTop + scwHeight > scwWindowTop + scwWindowHeight
                           )?(scwHeight + parseInt(scwTargetEle.offsetHeight,10)):0;
             }

         scwID('scw').style.top         = offsetTop+'px';
         scwID('scw').style.left        = offsetLeft+'px';
         scwID('scwIframe').style.top   = offsetTop+'px';
         scwID('scwIframe').style.left  = offsetLeft+'px';

         scwID('scwIframe').style.width =(scwID('scw').offsetWidth-(scwID('scwIE')?2:4))+'px';
         scwID('scwIframe').style.height=(scwID('scw').offsetHeight-(scwID('scwIE')?2:4))+'px';
         scwID('scwIframe').style.visibility='inherit';

         // Show it on the page
         scwID('scw').style.visibility='inherit';
        };

    function scwHide()
        {scwID('scw').style.visibility='hidden';
         scwID('scwIframe').style.visibility='hidden';
         if (typeof scwNextAction!='undefined' && scwNextAction!=null)
             {scwNextActionReturn = scwNextAction();
              // Explicit null set to prevent closure causing memory leak
              scwNextAction = null;
             }
        };

    function scwCancel(scwEvt)
        {if (scwClickToHide) {scwHide();}
         scwStopPropagation(scwEvt);
        };

    function scwStopPropagation(scwEvt)
        {if (scwEvt.stopPropagation)
                {scwEvt.stopPropagation();}     // Capture phase
         else   {scwEvt.cancelBubble = true;}   // Bubbling phase
        };

    function scwBeginDrag(event)
        {var elementToDrag = scwID('scw');

         var deltaX    = event.clientX,
             deltaY    = event.clientY,
             offsetEle = elementToDrag;

         do {deltaX   -= parseInt(offsetEle.offsetLeft,10);
             deltaY   -= parseInt(offsetEle.offsetTop ,10);
             offsetEle = offsetEle.offsetParent;
            }
         while (offsetEle.tagName!='BODY' &&
                offsetEle.tagName!='HTML');

         if (document.addEventListener)
                {document.addEventListener('mousemove',moveHandler,true);        // Capture phase
                 document.addEventListener('mouseup',  upHandler,  true);        // Capture phase
                }
         else   {elementToDrag.attachEvent('onmousemove',moveHandler); // Bubbling phase
                 elementToDrag.attachEvent('onmouseup',  upHandler);   // Bubbling phase
                 elementToDrag.setCapture();
                }

         scwStopPropagation(event);

         function moveHandler(scwEvt)
            {if (!scwEvt) scwEvt = window.event;

             elementToDrag.style.left = (scwEvt.clientX - deltaX) + 'px';
             elementToDrag.style.top  = (scwEvt.clientY - deltaY) + 'px';

             scwID('scwIframe').style.left = (scwEvt.clientX - deltaX) + 'px';
             scwID('scwIframe').style.top  = (scwEvt.clientY - deltaY) + 'px';

             scwStopPropagation(scwEvt);
            };

         function upHandler(scwEvt)
            {if (!scwEvt) scwEvt = window.event;

             if (document.removeEventListener)
                    {document.removeEventListener('mousemove',moveHandler,true);     // Capture phase
                     document.removeEventListener('mouseup',  upHandler,  true);     // Capture phase
                    }
             else   {elementToDrag.detachEvent('onmouseup',  upHandler);   // Bubbling phase
                     elementToDrag.detachEvent('onmousemove',moveHandler); // Bubbling phase
                     elementToDrag.releaseCapture();
                    }

             scwStopPropagation(scwEvt);
            };
        };

    function scwShowMonth(scwBias)
        {// Set the selectable Month and Year
         // May be called: from the left and right arrows
         //                  (shift month -1 and +1 respectively)
         //                from the month selection list
         //                from the year selection list
         //                from the showCal routine
         //                  (which initiates the display).

         var scwShowDate  = new Date(Date.parse(new Date().toDateString())),
             scwStartDate = new Date();

         // Set the time to the middle of the day so that the handful of
         // regions that have daylight saving shifts that change the day
         // of the month (i.e. turn the clock back at midnight or forward
         // at 23:00) do not mess up the date display in the calendar.

         scwShowDate.setHours(12);

         scwSelYears  = scwID('scwYears');
         scwSelMonths = scwID('scwMonths');

         if (scwSelYears.options.selectedIndex>-1)
            {scwMonthSum=12*(scwSelYears.options.selectedIndex)+scwBias;
             if (scwSelMonths.options.selectedIndex>-1) {scwMonthSum+=scwSelMonths.options.selectedIndex;}
            }
         else
            {if (scwSelMonths.options.selectedIndex>-1) {scwMonthSum+=scwSelMonths.options.selectedIndex;}}

         scwShowDate.setFullYear(scwBaseYear + Math.floor(scwMonthSum/12),(scwMonthSum%12),1);

         // If the Week numbers are displayed, shift the week day names to the right.
         scwID('scwWeek_').style.display=(scwWeekNumberDisplay)?'':'none';

         // Opera has a bug with setting the selected index.
         // It requires the following work-around to force SELECTs to display correctly.
         if (window.opera)
            {scwID('scwMonths').style.display = 'inherit';
             scwID('scwYears' ).style.display = 'inherit';
           }

         // Set the drop down boxes.
         scwTemp = (12*parseInt((scwShowDate.getFullYear()-scwBaseYear),10)) + parseInt(scwShowDate.getMonth(),10);

         if (scwTemp > -1 && scwTemp < (12*scwDropDownYears))
            {scwSelYears.options.selectedIndex=Math.floor(scwMonthSum/12);
             scwSelMonths.options.selectedIndex=(scwMonthSum%12);

             scwCurMonth = scwShowDate.getMonth();

             scwShowDate.setDate((((scwShowDate.
                                    getDay()-scwWeekStart)<0)?-6:1)+
                                 scwWeekStart-scwShowDate.getDay());

             // This statement moved by Michael Cerveny to make version 3.55
             var scwCompareDateValue = new Date(scwShowDate.getFullYear(),
                                                scwShowDate.getMonth(),
                                                scwShowDate.getDate()).valueOf();

             scwStartDate = new Date(scwShowDate);

             if ((new Date(scwBaseYear + scwDropDownYears, 0, 0)) > scwDateNow &&
                 (new Date(scwBaseYear, 0, 0))                    < scwDateNow)
                {var scwNow = scwID('scwNow');

                 function scwNowOutput() {scwSetOutput(scwDateNow);};

                 if (scwDisabledDates.length==0)
                    {if (scwActiveToday && scwParmActiveToday)
                        {scwNow.onclick     = scwNowOutput;
                         scwNow.className   = 'scwNow';

                         if (scwID('scwIE'))
                            {scwNow.onmouseover  = scwChangeClass;
                             scwNow.onmouseout   = scwChangeClass;
                            }

                        }
                     else
                        {scwNow.onclick     = null;
                         scwNow.className   = 'scwNowDisabled';

                         if (scwID('scwIE'))
                            {scwNow.onmouseover  = null;
                             scwNow.onmouseout   = null;
                            }

                         if (document.addEventListener)
                                {scwNow.addEventListener('click',scwStopPropagation,false);}
                         else   {scwNow.attachEvent('onclick',scwStopPropagation);}
                        }
                    }
                 else
                    {for (var k=0;k<scwDisabledDates.length;k++)
                        {if (!scwActiveToday || !scwParmActiveToday ||
                             ((typeof scwDisabledDates[k] == 'object')                   &&
                                 (((scwDisabledDates[k].constructor == Date)             &&
                                   scwDateNow.valueOf() == scwDisabledDates[k].valueOf()
                                  ) ||
                                  ((scwDisabledDates[k].constructor == Array)               &&
                                   scwDateNow.valueOf() >= scwDisabledDates[k][0].valueOf() &&
                                   scwDateNow.valueOf() <= scwDisabledDates[k][1].valueOf()
                                  )
                                 )
                             )
                            )
                            {scwNow.onclick     = null;
                             scwNow.className   = 'scwNowDisabled';

                             if (scwID('scwIE'))
                                {scwNow.onmouseover  = null;
                                 scwNow.onmouseout   = null;
                                }

                             if (document.addEventListener)
                                    {scwNow.addEventListener('click',scwStopPropagation,false);}
                             else   {scwNow.attachEvent('onclick',scwStopPropagation);}
                             break;
                            }
                         else
                            {scwNow.onclick=scwNowOutput;
                             scwNow.className='scwNow';

                             if (scwID('scwIE'))
                                {scwNow.onmouseover  = scwChangeClass;
                                 scwNow.onmouseout   = scwChangeClass;
                                }
                            }
                        }
                    }
                }

             function scwSetOutput(scwOutputDate)
                {if (typeof scwTargetEle.value == 'undefined')
                      {scwTriggerEle.scwTextNode.replaceData(0,scwTriggerEle.scwLength,scwOutputDate.scwFormat(scwDateOutputFormat));}
                 else {scwTargetEle.value = scwOutputDate.scwFormat(scwDateOutputFormat);}
                 scwHide();
                };

             function scwCellOutput(scwEvt)
                {var scwEle = scwEventTrigger(scwEvt),
                     scwOutputDate = new Date(scwStartDate);

                 if (scwEle.nodeType==3) scwEle=scwEle.parentNode;

                 scwOutputDate.setDate(scwStartDate.getDate() + parseInt(scwEle.id.substr(8),10));

                 scwSetOutput(scwOutputDate);
                };

             function scwChangeClass(scwEvt)
                {var scwEle = scwEventTrigger(scwEvt);

                 if (scwEle.nodeType==3) {scwEle=scwEle.parentNode;}

                 switch (scwEle.className)
                    {case 'scwCells':
                        scwEle.className = 'scwCellsHover';
                        break;
                     case 'scwCellsHover':
                        scwEle.className = 'scwCells';
                        break;
                     case 'scwCellsExMonth':
                        scwEle.className = 'scwCellsExMonthHover';
                        break;
                     case 'scwCellsExMonthHover':
                        scwEle.className = 'scwCellsExMonth';
                        break;
                     case 'scwCellsWeekend':
                        scwEle.className = 'scwCellsWeekendHover';
                        break;
                     case 'scwCellsWeekendHover':
                        scwEle.className = 'scwCellsWeekend';
                        break;
                     case 'scwNow':
                        scwEle.className = 'scwNowHover';
                        break;
                     case 'scwNowHover':
                        scwEle.className = 'scwNow';
                        break;
                     case 'scwInputDate':
                        scwEle.className = 'scwInputDateHover';
                        break;
                     case 'scwInputDateHover':
                        scwEle.className = 'scwInputDate';
                    }

                 return true;
                }

             function scwEventTrigger(scwEvt)
                {if (!scwEvt) {scwEvt = event;}
                 return scwEvt.target||scwEvt.srcElement;
                };

             function scwWeekNumber(scwInDate)
                {// The base day in the week of the input date
                 var scwInDateWeekBase = new Date(scwInDate);

                 scwInDateWeekBase.setDate(scwInDateWeekBase.getDate()
                                            - scwInDateWeekBase.getDay()
                                            + scwWeekNumberBaseDay
                                            + ((scwInDate.getDay()>
                                                scwWeekNumberBaseDay)?7:0));

                 // The first Base Day in the year
                 var scwFirstBaseDay = new Date(scwInDateWeekBase.getFullYear(),0,1);

                 scwFirstBaseDay.setDate(scwFirstBaseDay.getDate()
                                            - scwFirstBaseDay.getDay()
                                            + scwWeekNumberBaseDay
                                        );

                 if (scwFirstBaseDay < new Date(scwInDateWeekBase.getFullYear(),0,1))
                    {scwFirstBaseDay.setDate(scwFirstBaseDay.getDate()+7);}

                 // Start of Week 01
                 var scwStartWeekOne = new Date(scwFirstBaseDay
                                                - scwWeekNumberBaseDay
                                                + scwInDate.getDay());

                 if (scwStartWeekOne > scwFirstBaseDay)
                    {scwStartWeekOne.setDate(scwStartWeekOne.getDate()-7);}

                 // Subtract the date of the current week from the date of the
                 // first week of the year to get the number of weeks in
                 // milliseconds.  Divide by the number of milliseconds
                 // in a week then round to no decimals in order to remove
                 // the effect of daylight saving.  Add one to make the first
                 // week, week 1.  Place a string zero on the front so that
                 // week numbers are zero filled.

                 var scwWeekNo = '0' + (Math.round((scwInDateWeekBase - scwFirstBaseDay)/604800000,0) + 1);

                 // Return the last two characters in the week number string

                 return scwWeekNo.substring(scwWeekNo.length-2, scwWeekNo.length);
                };

             // Treewalk to display the dates.
             // I tried to use getElementsByName but IE refused to cooperate
             // so I resorted to this method which works for all tested
             // browsers.

             var scwCells = scwID('scwCells');

             for (i=0;i<scwCells.childNodes.length;i++)
                {var scwRows = scwCells.childNodes[i];
                 if (scwRows.nodeType==1 && scwRows.tagName=='TR')
                    {if (scwWeekNumberDisplay)
                        {//Calculate the week number using scwShowDate
                         scwTmpEl = scwRows.childNodes[0];
                         scwTmpEl.innerHTML = scwWeekNumber(scwShowDate);
                         scwTmpEl.style.borderColor =
                             (scwTmpEl.currentStyle)
                                ?scwTmpEl.currentStyle['backgroundColor']
                                :(window.getComputedStyle)
                                    ?document.defaultView.getComputedStyle(scwTmpEl,null).getPropertyValue('background-color')
                                    :'';
                         scwTmpEl.style.display='';
                        }
                     else
                        {scwRows.childNodes[0].style.display='none';}

                     for (j=1;j<scwRows.childNodes.length;j++)
                        {var scwCols = scwRows.childNodes[j];
                         if (scwCols.nodeType==1 && scwCols.tagName=='TD')
                            {scwRows.childNodes[j].innerHTML=
                                scwShowDate.getDate();
                             var scwCell=scwRows.childNodes[j],
                                 scwDisabled =
                                    ((scwOutOfRangeDisable &&
                                        (scwShowDate <
                                            (new Date(scwBaseYear,0,1,
                                                      scwShowDate.getHours()))
                                         ||
                                         scwShowDate >
                                            (new Date(scwBaseYear+
                                                      scwDropDownYears,0,0,
                                                      scwShowDate.getHours()))
                                        )
                                     ) ||
                                     (scwOutOfMonthDisable &&
                                        (scwShowDate <
                                            (new Date(scwShowDate.getFullYear(),
                                                      scwCurMonth,1,
                                                      scwShowDate.getHours()))
                                         ||
                                         scwShowDate >
                                            (new Date(scwShowDate.getFullYear(),
                                                      scwCurMonth+1,0,
                                                      scwShowDate.getHours()))
                                        )
                                     )
                                    )?true:false;

                             scwCell.style.visibility =
                                (scwOutOfMonthHide &&
                                    (scwShowDate <
                                        (new Date(scwShowDate.getFullYear(),
                                                  scwCurMonth,1,
                                                  scwShowDate.getHours()))
                                     ||
                                     scwShowDate >
                                        (new Date(scwShowDate.getFullYear(),
                                                  scwCurMonth+1,0,
                                                  scwShowDate.getHours()))
                                    )
                                )?'hidden':'inherit';

                             for (var k=0;k<scwDisabledDates.length;k++)
                                {if ((typeof scwDisabledDates[k]=='object') &&
                                     (scwDisabledDates[k].constructor == Date) &&
                                     scwCompareDateValue == scwDisabledDates[k].valueOf()
                                    )
                                    {scwDisabled = true;}
                                 else
                                    {if ((typeof scwDisabledDates[k]=='object') &&
                                         (scwDisabledDates[k].constructor == Array) &&
                                         scwCompareDateValue >= scwDisabledDates[k][0].valueOf() &&
                                         scwCompareDateValue <= scwDisabledDates[k][1].valueOf()
                                        )
                                        {scwDisabled = true;}
                                    }
                                }

                             if (scwDisabled ||
                                 !scwEnabledDay[j-1+(7*((i*scwCells.childNodes.length)/6))] ||
                                 !scwPassEnabledDay[(j-1+(7*(i*scwCells.childNodes.length/6)))%7]
                                )
                                {scwRows.childNodes[j].onclick = null;

                                 if (scwID('scwIE'))
                                    {scwRows.childNodes[j].onmouseover  = null;
                                     scwRows.childNodes[j].onmouseout   = null;
                                    }

                                 scwCell.className=
                                    (scwShowDate.getMonth()!=scwCurMonth)
                                        ?'scwCellsExMonthDisabled'
                                        :(scwBlnFullInputDate &&
                                          scwShowDate.toDateString()==
                                          scwSeedDate.toDateString())
                                            ?'scwInputDateDisabled'
                                            :(scwShowDate.getDay()%6==0)
                                                ?'scwCellsWeekendDisabled'
                                                :'scwCellsDisabled';

                                 scwCell.style.borderColor =
                                     (scwFormatTodayCell && scwShowDate.toDateString()==scwDateNow.toDateString())
                                        ?scwTodayCellBorderColour
                                        :(scwCell.currentStyle)
                                            ?scwCell.currentStyle['backgroundColor']
                                            :(window.getComputedStyle)
                                                ?document.defaultView.getComputedStyle(scwCell,null).getPropertyValue('background-color')
                                                :'';
                                }
                             else
                                {scwRows.childNodes[j].onclick=scwCellOutput;

                                 if (scwID('scwIE'))
                                    {scwRows.childNodes[j].onmouseover  = scwChangeClass;
                                     scwRows.childNodes[j].onmouseout   = scwChangeClass;
                                    }

                                 scwCell.className=
                                     (scwShowDate.getMonth()!=scwCurMonth)
                                        ?'scwCellsExMonth'
                                        :(scwBlnFullInputDate &&
                                          scwShowDate.toDateString()==
                                          scwSeedDate.toDateString())
                                            ?'scwInputDate'
                                            :(scwShowDate.getDay()%6==0)
                                                ?'scwCellsWeekend'
                                                :'scwCells';

                                 scwCell.style.borderColor =
                                     (scwFormatTodayCell && scwShowDate.toDateString() == scwDateNow.toDateString())
                                        ?scwTodayCellBorderColour
                                        :(scwCell.currentStyle)
                                            ?scwCell.currentStyle['backgroundColor']
                                            :(window.getComputedStyle)
                                                ?document.defaultView.getComputedStyle(scwCell,null).getPropertyValue('background-color')
                                                :'';
                               }

                             scwShowDate.setDate(scwShowDate.getDate()+1);
                             scwCompareDateValue = new Date(scwShowDate.getFullYear(),scwShowDate.getMonth(),scwShowDate.getDate()).valueOf();
                            }
                        }
                    }
                }
            }

         // Opera has a bug with setting the selected index.
         // It requires the following work-around to force SELECTs to display correctly.
         // Also Opera's poor dynamic rendering prior to 9.5 requires
         // the visibility to be reset to prevent garbage in the calendar
         // when the displayed month is changed.

         if (window.opera)
            {scwID('scwMonths').style.display = 'inline';
             scwID('scwYears' ).style.display = 'inline';
             scwID('scw').style.visibility='hidden';
             scwID('scw').style.visibility='inherit';
           }
        };

// *************************
//  End of Function Library
// *************************
// ***************************
// Start of Calendar structure
// ***************************

    document.writeln("<!--[if IE]><div id='scwIE'></div><![endif]-->");
    document.writeln("<!--[if lt IE 7]><div id='scwIElt7'></div><![endif]-->");
    document.write(
     "<iframe class='scw' " + (scwID('scwIElt7')?"src='/scwblank.html '":'') +
             "id='scwIframe' name='scwIframe' frameborder='0'>" +
     "</iframe>" +
     "<table id='scw' class='scw'>" +
       "<tr class='scw'>" +
         "<td class='scw'>" +
           "<table class='scwHead' id='scwHead' width='100%' " +
                    "cellspacing='0' cellpadding='0'>" +
            "<tr id='scwDrag' style='display:none;'>" +
                "<td colspan='4' class='scwDrag' " +
                    "onmousedown='scwBeginDrag(event);'>" +
                    "<span id='scwDragText'></span>" +
                "</td>" +
            "</tr>" +
            "<tr class='scwHead' >" +
                 "<td class='scwHead'>" +
                    "<input class='scwHead' id='scwHeadLeft' type='button' value='<' " +
                            "onclick='scwShowMonth(-1);'  /></td>" +
                 "<td class='scwHead'>" +
                    "<select id='scwMonths' class='scwHead' " +
                            "onchange='scwShowMonth(0);'>" +
                    "</select>" +
                 "</td>" +
                 "<td class='scwHead'>" +
                    "<select id='scwYears' class='scwHead' " +
                            "onchange='scwShowMonth(0);'>" +
                    "</select>" +
                 "</td>" +
                 "<td class='scwHead'>" +
                    "<input class='scwHead' id='scwHeadRight' type='button' value='>' " +
                            "onclick='scwShowMonth(1);' /></td>" +
                "</tr>" +
              "</table>" +
            "</td>" +
          "</tr>" +
          "<tr class='scw'>" +
            "<td class='scw'>" +
              "<table class='scwCells' align='center'>" +
                "<thead>" +
                  "<tr><td class='scwWeekNumberHead' id='scwWeek_' ></td>");

    for (i=0;i<7;i++)
        {document.write(
                      "<td class='scwWeek' id='scwWeekInit" + i + "'></td>");
        }

    document.write("</tr>" +
                "</thead>" +
                "<tbody id='scwCells' onClick='scwStopPropagation(event);'>");

    for (i=0;i<6;i++)
        {document.write(
                    "<tr>" +
                      "<td class='scwWeekNo' id='scwWeek_" + i + "'></td>");
         for (j=0;j<7;j++)
            {document.write(
                        "<td class='scwCells' id='scwCell_" + (j+(i*7)) +
                        "'></td>");
            }

         document.write(
                    "</tr>");
        }

    document.write(
                "</tbody>" +
                "<tfoot>" +
                  "<tr id='scwFoot'>" +
                    "<td colspan='8' style='padding:0px;'>" +
                      "<table width='100%'>" +
                        "<tr>" +
                          "<td id='scwClear' class='scwClear'>" +
                            "<input type='button' id='scwClearButton' class='scwClear' " +
                                   "onclick='scwTargetEle.value = \"\";scwHide();' />" +
                          "</td>" +
                          "<td class='scwNow' id='scwNow'></td>" +
                        "</tr>" +
                      "</table>" +
                    "</td>" +
                  "</tr>" +
                "</tfoot>" +
              "</table>" +
            "</td>" +
          "</tr>" +
        "</table>");

    if (document.addEventListener)
            {scwID('scw'         ).addEventListener('click',scwCancel,false);
             scwID('scwHeadLeft' ).addEventListener('click',scwStopPropagation,false);
             scwID('scwMonths'   ).addEventListener('click',scwStopPropagation,false);
             scwID('scwMonths'   ).addEventListener('change',scwStopPropagation,false);
             scwID('scwYears'    ).addEventListener('click',scwStopPropagation,false);
             scwID('scwYears'    ).addEventListener('change',scwStopPropagation,false);
             scwID('scwHeadRight').addEventListener('click',scwStopPropagation,false);
            }
    else    {scwID('scw'         ).attachEvent('onclick',scwCancel);
             scwID('scwHeadLeft' ).attachEvent('onclick',scwStopPropagation);
             scwID('scwMonths'   ).attachEvent('onclick',scwStopPropagation);
             scwID('scwMonths'   ).attachEvent('onchange',scwStopPropagation);
             scwID('scwYears'    ).attachEvent('onclick',scwStopPropagation);
             scwID('scwYears'    ).attachEvent('onchange',scwStopPropagation);
             scwID('scwHeadRight').attachEvent('onclick',scwStopPropagation);
            }

// ***************************
//  End of Calendar structure
// ***************************
// ****************************************
// Start of document level event definition
// ****************************************

    if (document.addEventListener)
            {document.addEventListener('click',scwHide, false);}
    else    {document.attachEvent('onclick',scwHide);}

// ****************************************
//  End of document level event definition
// ****************************************
// ************************************
//  End of Simple Calendar Widget Code
// ************************************]]></CSP>


<CSP name="js/sha512.js" application="/csp/cbt/" default="1"><![CDATA[
/* A JavaScript implementation of the SHA family of hashes, as defined in FIPS PUB 180-2
 * as well as the corresponding HMAC implementation as defined in FIPS PUB 198a
 * Version 1.2 Copyright Brian Turek 2009
 * Distributed under the BSD License
 * See http://jssha.sourceforge.net/ for more information
 *
 * Several functions taken from Paul Johnson
 */

function Int_64(a,b){this.highOrder=a;this.lowOrder=b}function jsSHA(o,p){jsSHA.charSize=8;jsSHA.b64pad="";jsSHA.hexCase=0;var q=null;var r=null;var s=function(a){var b=[];var c=(1<<jsSHA.charSize)-1;var d=a.length*jsSHA.charSize;for(var i=0;i<d;i+=jsSHA.charSize){b[i>>5]|=(a.charCodeAt(i/jsSHA.charSize)&c)<<(32-jsSHA.charSize-i%32)}return b};var u=function(a){var b=[];var c=a.length;for(var i=0;i<c;i+=2){var d=parseInt(a.substr(i,2),16);if(!isNaN(d)){b[i>>3]|=d<<(24-(4*(i%8)))}else{return"INVALID HEX STRING"}}return b};var v=null;var w=null;if("HEX"===p){if(0!==(o.length%2)){return"TEXT MUST BE IN BYTE INCREMENTS"}v=o.length*4;w=u(o)}else if(("ASCII"===p)||('undefined'===typeof(p))){v=o.length*jsSHA.charSize;w=s(o)}else{return"UNKNOWN TEXT INPUT TYPE"}var A=function(a){var b=jsSHA.hexCase?"0123456789ABCDEF":"0123456789abcdef";var c="";var d=a.length*4;for(var i=0;i<d;i++){c+=b.charAt((a[i>>2]>>((3-i%4)*8+4))&0xF)+b.charAt((a[i>>2]>>((3-i%4)*8))&0xF)}return c};var B=function(a){var b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var c="";var d=a.length*4;for(var i=0;i<d;i+=3){var e=(((a[i>>2]>>8*(3-i%4))&0xFF)<<16)|(((a[i+1>>2]>>8*(3-(i+1)%4))&0xFF)<<8)|((a[i+2>>2]>>8*(3-(i+2)%4))&0xFF);for(var j=0;j<4;j++){if(i*8+j*6>a.length*32){c+=jsSHA.b64pad}else{c+=b.charAt((e>>6*(3-j))&0x3F)}}}return c};var C=function(x,n){if(n<32){return new Int_64((x.highOrder>>>n)|(x.lowOrder<<(32-n)),(x.lowOrder>>>n)|(x.highOrder<<(32-n)))}else if(n===32){return new Int_64(x.lowOrder,x.highOrder)}else{return C(C(x,32),n-32)}};var D=function(x,n){if(n<32){return new Int_64(x.highOrder>>>n,x.lowOrder>>>n|(x.highOrder<<(32-n)))}else if(n===32){return new Int_64(0,x.highOrder)}else{return D(D(x,32),n-32)}};var E=function(x,y,z){return new Int_64((x.highOrder&y.highOrder)^(~x.highOrder&z.highOrder),(x.lowOrder&y.lowOrder)^(~x.lowOrder&z.lowOrder))};var F=function(x,y,z){return new Int_64((x.highOrder&y.highOrder)^(x.highOrder&z.highOrder)^(y.highOrder&z.highOrder),(x.lowOrder&y.lowOrder)^(x.lowOrder&z.lowOrder)^(y.lowOrder&z.lowOrder))};var G=function(x){var a=C(x,28);var b=C(x,34);var c=C(x,39);return new Int_64(a.highOrder^b.highOrder^c.highOrder,a.lowOrder^b.lowOrder^c.lowOrder)};var I=function(x){var a=C(x,14);var b=C(x,18);var c=C(x,41);return new Int_64(a.highOrder^b.highOrder^c.highOrder,a.lowOrder^b.lowOrder^c.lowOrder)};var J=function(x){var a=C(x,1);var b=C(x,8);var c=D(x,7);return new Int_64(a.highOrder^b.highOrder^c.highOrder,a.lowOrder^b.lowOrder^c.lowOrder)};var L=function(x){var a=C(x,19);var b=C(x,61);var c=D(x,6);return new Int_64(a.highOrder^b.highOrder^c.highOrder,a.lowOrder^b.lowOrder^c.lowOrder)};var M=function(x,y){var a=(x.lowOrder&0xFFFF)+(y.lowOrder&0xFFFF);var b=(x.lowOrder>>>16)+(y.lowOrder>>>16)+(a>>>16);var c=((b&0xFFFF)<<16)|(a&0xFFFF);a=(x.highOrder&0xFFFF)+(y.highOrder&0xFFFF)+(b>>>16);b=(x.highOrder>>>16)+(y.highOrder>>>16)+(a>>>16);var d=((b&0xFFFF)<<16)|(a&0xFFFF);return new Int_64(d,c)};var N=function(a,b,c,d){var e=(a.lowOrder&0xFFFF)+(b.lowOrder&0xFFFF)+(c.lowOrder&0xFFFF)+(d.lowOrder&0xFFFF);var f=(a.lowOrder>>>16)+(b.lowOrder>>>16)+(c.lowOrder>>>16)+(d.lowOrder>>>16)+(e>>>16);var g=((f&0xFFFF)<<16)|(e&0xFFFF);e=(a.highOrder&0xFFFF)+(b.highOrder&0xFFFF)+(c.highOrder&0xFFFF)+(d.highOrder&0xFFFF)+(f>>>16);f=(a.highOrder>>>16)+(b.highOrder>>>16)+(c.highOrder>>>16)+(d.highOrder>>>16)+(e>>>16);var h=((f&0xFFFF)<<16)|(e&0xFFFF);return new Int_64(h,g)};var O=function(a,b,c,d,e){var f=(a.lowOrder&0xFFFF)+(b.lowOrder&0xFFFF)+(c.lowOrder&0xFFFF)+(d.lowOrder&0xFFFF)+(e.lowOrder&0xFFFF);var g=(a.lowOrder>>>16)+(b.lowOrder>>>16)+(c.lowOrder>>>16)+(d.lowOrder>>>16)+(e.lowOrder>>>16)+(f>>>16);var h=((g&0xFFFF)<<16)|(f&0xFFFF);f=(a.highOrder&0xFFFF)+(b.highOrder&0xFFFF)+(c.highOrder&0xFFFF)+(d.highOrder&0xFFFF)+(e.highOrder&0xFFFF)+(g>>>16);g=(a.highOrder>>>16)+(b.highOrder>>>16)+(c.highOrder>>>16)+(d.highOrder>>>16)+(e.highOrder>>>16)+(f>>>16);var i=((g&0xFFFF)<<16)|(f&0xFFFF);return new Int_64(i,h)};var P=function(j,k,l){var W=[];var a,b,c,d,e,f,g,h;var m,T2;var H;var K=[new Int_64(0x428a2f98,0xd728ae22),new Int_64(0x71374491,0x23ef65cd),new Int_64(0xb5c0fbcf,0xec4d3b2f),new Int_64(0xe9b5dba5,0x8189dbbc),new Int_64(0x3956c25b,0xf348b538),new Int_64(0x59f111f1,0xb605d019),new Int_64(0x923f82a4,0xaf194f9b),new Int_64(0xab1c5ed5,0xda6d8118),new Int_64(0xd807aa98,0xa3030242),new Int_64(0x12835b01,0x45706fbe),new Int_64(0x243185be,0x4ee4b28c),new Int_64(0x550c7dc3,0xd5ffb4e2),new Int_64(0x72be5d74,0xf27b896f),new Int_64(0x80deb1fe,0x3b1696b1),new Int_64(0x9bdc06a7,0x25c71235),new Int_64(0xc19bf174,0xcf692694),new Int_64(0xe49b69c1,0x9ef14ad2),new Int_64(0xefbe4786,0x384f25e3),new Int_64(0x0fc19dc6,0x8b8cd5b5),new Int_64(0x240ca1cc,0x77ac9c65),new Int_64(0x2de92c6f,0x592b0275),new Int_64(0x4a7484aa,0x6ea6e483),new Int_64(0x5cb0a9dc,0xbd41fbd4),new Int_64(0x76f988da,0x831153b5),new Int_64(0x983e5152,0xee66dfab),new Int_64(0xa831c66d,0x2db43210),new Int_64(0xb00327c8,0x98fb213f),new Int_64(0xbf597fc7,0xbeef0ee4),new Int_64(0xc6e00bf3,0x3da88fc2),new Int_64(0xd5a79147,0x930aa725),new Int_64(0x06ca6351,0xe003826f),new Int_64(0x14292967,0x0a0e6e70),new Int_64(0x27b70a85,0x46d22ffc),new Int_64(0x2e1b2138,0x5c26c926),new Int_64(0x4d2c6dfc,0x5ac42aed),new Int_64(0x53380d13,0x9d95b3df),new Int_64(0x650a7354,0x8baf63de),new Int_64(0x766a0abb,0x3c77b2a8),new Int_64(0x81c2c92e,0x47edaee6),new Int_64(0x92722c85,0x1482353b),new Int_64(0xa2bfe8a1,0x4cf10364),new Int_64(0xa81a664b,0xbc423001),new Int_64(0xc24b8b70,0xd0f89791),new Int_64(0xc76c51a3,0x0654be30),new Int_64(0xd192e819,0xd6ef5218),new Int_64(0xd6990624,0x5565a910),new Int_64(0xf40e3585,0x5771202a),new Int_64(0x106aa070,0x32bbd1b8),new Int_64(0x19a4c116,0xb8d2d0c8),new Int_64(0x1e376c08,0x5141ab53),new Int_64(0x2748774c,0xdf8eeb99),new Int_64(0x34b0bcb5,0xe19b48a8),new Int_64(0x391c0cb3,0xc5c95a63),new Int_64(0x4ed8aa4a,0xe3418acb),new Int_64(0x5b9cca4f,0x7763e373),new Int_64(0x682e6ff3,0xd6b2b8a3),new Int_64(0x748f82ee,0x5defb2fc),new Int_64(0x78a5636f,0x43172f60),new Int_64(0x84c87814,0xa1f0ab72),new Int_64(0x8cc70208,0x1a6439ec),new Int_64(0x90befffa,0x23631e28),new Int_64(0xa4506ceb,0xde82bde9),new Int_64(0xbef9a3f7,0xb2c67915),new Int_64(0xc67178f2,0xe372532b),new Int_64(0xca273ece,0xea26619c),new Int_64(0xd186b8c7,0x21c0c207),new Int_64(0xeada7dd6,0xcde0eb1e),new Int_64(0xf57d4f7f,0xee6ed178),new Int_64(0x06f067aa,0x72176fba),new Int_64(0x0a637dc5,0xa2c898a6),new Int_64(0x113f9804,0xbef90dae),new Int_64(0x1b710b35,0x131c471b),new Int_64(0x28db77f5,0x23047d84),new Int_64(0x32caab7b,0x40c72493),new Int_64(0x3c9ebe0a,0x15c9bebc),new Int_64(0x431d67c4,0x9c100d4c),new Int_64(0x4cc5d4be,0xcb3e42b6),new Int_64(0x597f299c,0xfc657e2a),new Int_64(0x5fcb6fab,0x3ad6faec),new Int_64(0x6c44198c,0x4a475817)];if(l==="SHA-384"){H=[new Int_64(0xcbbb9d5d,0xc1059ed8),new Int_64(0x0629a292a,0x367cd507),new Int_64(0x9159015a,0x3070dd17),new Int_64(0x152fecd8,0xf70e5939),new Int_64(0x67332667,0xffc00b31),new Int_64(0x98eb44a87,0x68581511),new Int_64(0xdb0c2e0d,0x64f98fa7),new Int_64(0x47b5481d,0xbefa4fa4)]}else{H=[new Int_64(0x6a09e667,0xf3bcc908),new Int_64(0xbb67ae85,0x84caa73b),new Int_64(0x3c6ef372,0xfe94f82b),new Int_64(0xa54ff53a,0x5f1d36f1),new Int_64(0x510e527f,0xade682d1),new Int_64(0x9b05688c,0x2b3e6c1f),new Int_64(0x1f83d9ab,0xfb41bd6b),new Int_64(0x5be0cd19,0x137e2179)]}j[k>>5]|=0x80<<(24-k%32);j[((k+1+128>>10)<<5)+31]=k;var n=j.length;for(var i=0;i<n;i+=32){a=H[0];b=H[1];c=H[2];d=H[3];e=H[4];f=H[5];g=H[6];h=H[7];for(var t=0;t<80;t++){if(t<16){W[t]=new Int_64(j[t*2+i],j[t*2+i+1])}else{W[t]=N(L(W[t-2]),W[t-7],J(W[t-15]),W[t-16])}m=O(h,I(e),E(e,f,g),K[t],W[t]);T2=M(G(a),F(a,b,c));h=g;g=f;f=e;e=M(d,m);d=c;c=b;b=a;a=M(m,T2)}H[0]=M(a,H[0]);H[1]=M(b,H[1]);H[2]=M(c,H[2]);H[3]=M(d,H[3]);H[4]=M(e,H[4]);H[5]=M(f,H[5]);H[6]=M(g,H[6]);H[7]=M(h,H[7])}switch(l){case"SHA-384":return[H[0].highOrder,H[0].lowOrder,H[1].highOrder,H[1].lowOrder,H[2].highOrder,H[2].lowOrder,H[3].highOrder,H[3].lowOrder,H[4].highOrder,H[4].lowOrder,H[5].highOrder,H[5].lowOrder];case"SHA-512":return[H[0].highOrder,H[0].lowOrder,H[1].highOrder,H[1].lowOrder,H[2].highOrder,H[2].lowOrder,H[3].highOrder,H[3].lowOrder,
H[4].highOrder,H[4].lowOrder,H[5].highOrder,H[5].lowOrder,H[6].highOrder,H[6].lowOrder,H[7].highOrder,H[7].lowOrder];default:return[]}};this.getHash=function(a,b){var c=null;var d=w.slice();switch(b){case"HEX":c=A;break;case"B64":c=B;break;default:return"FORMAT NOT RECOGNIZED"}switch(a){case"SHA-384":if(q===null){q=P(d,v,a)}return c(q);case"SHA-512":if(r===null){r=P(d,v,a)}return c(r);default:return"HASH NOT RECOGNIZED"}};this.getHMAC=function(a,b,c,d){var e=null;var f=null;var g=[];var h=[];var j=null;var k=null;var l=null;switch(d){case"HEX":e=A;break;case"B64":e=B;break;default:return"FORMAT NOT RECOGNIZED"}switch(c){case"SHA-384":l=384;break;case"SHA-512":l=512;break;default:return"HASH NOT RECOGNIZED"}if("HEX"===b){if(0!==(a.length%2)){return"KEY MUST BE IN BYTE INCREMENTS"}f=u(a);k=a.length*4}else if("ASCII"===b){f=s(a);k=a.length*jsSHA.charSize}else{return"UNKNOWN KEY INPUT TYPE"}if(1024<k){f=P(f,k,c);f[31]&=0xFFFFFF00}else if(1024>k){f[31]&=0xFFFFFF00}for(var i=0;i<=31;i++){g[i]=f[i]^0x36363636;h[i]=f[i]^0x5C5C5C5C}j=P(g.concat(w),1024+v,c);j=P(h.concat(j),1024+l,c);return(e(j))}}
]]></CSP>


<CSP name="logout.csp" application="/csp/cbt/" default="1"><![CDATA[
<csp:class super="Alliance.Agris.Web.BasePage">

<script language="Cache" method="OnPreHTTPPage" arguments="" returntype="%Boolean">

	; lösche globals und springe zum login
	kill %session.Data($$$APPDATA)
	set %response.Redirect = "UebersichtOffeneLieferungen.csp"
	quit $$$OK

</script>
]]></CSP>


<CSPBase64 name="pics/arrow.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAMAAAC3r6aQAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ
bWFnZVJlYWR5ccllPAAAAAZQTFRFZmZm////c0tZqAAAAAJ0Uk5T/wDltzBKAAAAF0lEQVR42mJg
YGRkYGAAYQYIzcgIEGAAAEwAB25XbCQAAAAASUVORK5CYII=
</CSPBase64>


<CSPBase64 name="pics/arrows.bmp" application="/csp/cbt/" default="1">
Qk32CQAAAAAAADYAAAAoAAAAIgAAABgAAAABABgAAAAAAMAJAAAAAAAAAAAAAAAAAAAAAAAAubm5
dHR0WVlZV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dX
V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXWFhYb29vubm5AABqamqDg4Ourq6urq6u
rq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6u
rq6urq6urq6urq6urq6urq6urq6urq6urq6Dg4Nra2sAAFlZWbS0tNjY2Lq6urq6urq6urq6urq6
urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6urq6
urq6urq6urq6urq6utjY2LS0tFlZWQAAV1dXtLS04eHhv7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/
v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/
v7+/4eHhtLS0V1dXAABXV1e3t7fi4uLExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTE
xMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTi4uK3t7dX
V1cAAFdXV7m5ueTk5MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzM
zMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzOTk5Lm5uVdXVwAAV1dXvLy8
5ubm0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR
0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR5ubmvLy8V1dXAABXV1e/v7/p6enX19fX19fX
19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX
19fX19fX19fX19fX19fX19fX19fp6em/v79XV1cAAFdXV8PDw+rq6t3d3d3d3d3d3d3d3WBgYGBg
YGBgYGBgYN3d3d3d3d3d3d3d3d3d3d3d3WBgYGBgYGBgYN3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d
3d3d3d3d3d3d3erq6sPDw1dXVwAAV1dXw8PD6urq3d3d3d3d3d3d3d3dYGBgYGBgYGBgYGBgYGBg
YGBg3d3d3d3d3d3d3d3dYGBgYGBgYGBgYGBgYGBgYGBg3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d
6urqw8PDV1dXAABXV1fGxsbt7e3r6+vr6+vr6+vr6+vr6+vr6+vr6+tgYGBgYGBgYGBgYGBgYGBg
YGDr6+vr6+vr6+vr6+tgYGBgYGBgYGBgYGBgYGBgYGDr6+vr6+vr6+vr6+vr6+vt7e3GxsZXV1cA
AFdXV8zMzPLy8u/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v72BgYGBgYGBgYGBgYGBgYO/v
7+/v7+/v7+/v7+/v72BgYGBgYGBgYGBgYGBgYO/v7+/v7+/v7/Ly8szMzFdXVwAAV1dXzMzM8vLy
7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/vYGBgYGBgYGBg7+/v7+/v7+/v
7+/v7+/v7+/v7+/vYGBgYGBgYGBg7+/v7+/v8vLyzMzMV1dXAABXV1fS0tL29vby8vLy8vLy8vLy
8vLy8vLy8vLy8vLy8vLy8vLy8vJgYGBgYGBgYGBgYGBgYGDy8vLy8vLy8vLy8vLy8vJgYGBgYGBg
YGBgYGBgYGDy8vLy8vLy8vL29vbS0tJXV1cAAFdXV9XV1ff39/X19fX19fX19fX19fX19fX19fX1
9WBgYGBgYGBgYGBgYGBgYGBgYPX19fX19fX19fX19WBgYGBgYGBgYGBgYGBgYGBgYPX19fX19fX1
9fX19fX19ff399XV1VdXVwAAV1dX1dXV9/f39fX19fX19fX19fX1YGBgYGBgYGBgYGBgYGBgYGBg
9fX19fX19fX19fX1YGBgYGBgYGBgYGBgYGBgYGBg9fX19fX19fX19fX19fX19fX19fX19fX19/f3
1dXVV1dXAABXV1fX19f4+Pj39/f39/f39/f39/dgYGBgYGBgYGD39/f39/f39/f39/f39/f39/f3
9/dgYGBgYGBgYGD39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f4+PjX19dXV1cAAFdX
V9vb2/n5+fr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6
+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vn5+dvb21dXVwAAV1dX3t7e+/v7/Pz8
/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8+/v73t7eV1dXAABXV1fh4eH8/Pz9/f39/f39/f39/f39
/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39
/f39/f39/f39/f39/f38/Pzh4eFXV1cAAFdXV+Tk5P39/fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5
+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5
+fn5+f39/eTk5FdXVwAAWVlZ6urq+/v7/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8
/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8+/v76urq
WVlZAABwcHCXl5fh4eHg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg
4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODh4eGXl5dwcHAAALm5uXV1
dVhYWFZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZW
VlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlhYWG5ubrm5uQAA
</CSPBase64>


<CSPBase64 name="pics/bullet.gif" application="/csp/cbt/" default="1">
R0lGODlhBQAFALMAAIiIiYSEhNrb3o2NjtfY22xsbGlpaYWFhtna3IqKi2ZmZgAAAAAAAAAAAAAA
AAAAACH5BAAAAAAALAAAAAAFAAUAAAQPEAEVSFL4FKzMzcKgJEgEADs=
</CSPBase64>


<CSPBase64 name="pics/bullet3.gif" application="/csp/cbt/" default="1">
R0lGODlhBQAFAKIAAJe4hn6napq6ipm5iOzy6XulZgAAAAAAACH5BAAAAAAALAAAAAAFAAUAAAMN
SFNDUlAEWAKgQjGSAAA7
</CSPBase64>


<CSPBase64 name="pics/c-bg1.gif" application="/csp/cbt/" default="1">
R0lGODlh0AcBAIAAAPb29v///yH5BAAAAAAALAAAAADQBwEAAAJAhI+py+0Po5y02ouz3rz7rwXi
SJbmiabqyrbuC8fyTNf2jef6zvf+DwwKh8Si8YhMKpfMpvMJjUqn1Kr1iiUVAAA7
</CSPBase64>


<CSPBase64 name="pics/c-bg2.gif" application="/csp/cbt/" default="1">
R0lGODlh0AdIANUAAPX19fHx8ebm5vT09Pj4+Pf39+/v7/z8/Pn5+erq6u7u7tzc3PPz8+np6fLy
8uDg4Ovr69HR0c7OztPT0+3t7djY2OPj48zMzM/Pz+fn5/v7++zs7Ojo6Pr6+v39/f7+/vb29v//
/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAADQB0gAAAb/QJBw
SCwaj8ikcslsOp/QqHRKrVqv2Kx2a+14v+CweEwum8/otHrNbrvf8Lh8Tq/b7/i8fs/v+/+AgYKD
hIWGh4iJiouMjY6PkJGSk5RgC5eYmZqbnJ2en6ChoqOkpaanqKmqq6ytrq+wqxuztLW2t7i5uru8
vb6/wMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbX2Nna29zd3t/g4eLj5OXm5+jptRHs7e7v8PHy8/T1
9vf4+fr7/P3+/wADChxIsCDADBwQcljIsKFChg8XZojYEKJFhxgrSryYUKPHjRk/ggxJkePEkRpL
eiypsuJJlyE5ipQ5s+PHlwhb2oyokCXM/5Q3d66sebHnS5sxKU70GZMoSpM/nSZtKlNpwqNBRVqd
mfOpxK4psQI92vWhyp5Ui44Em5Hn2JtkhyJ1qdNr1qdn1QINWtetUbt7pbINXLSl2bAdD3PFuPWr
Q7dRB2udW5Xy3Lp3nWJFK7hvZsKLLV9uipkm47tsDZuGSpcqU5icRRNVDDgyXtM6YzuWrVpqa9mI
r2pOjFR37cmrgSv3zXyv2M9wiQs9DlGyYMu0m8sNeqG79+/gw4sfT768+fPo06tfz769+/fw48uf
T7++/fgC8uvfz7+///8ABijggAQWaOCBCCao4IIMNujggxBGKOGEFFZo4YUYZqjhhhx26P/hhyCG
KOKIJJZo4okopqjiiiy26OKL+0kg44w01mjjjTjmqOOOPPbo449ABinkkEQWaeSRSCap5JJGaufk
k1BGKeWUVFZp5ZVYZqnlllx26eWXYIYp5phklmnmmWimqeaabLbp5ptwxinnnHTWWSYGeOap5558
9unnn4AGKuighBZq6KGIJqrooow26uijkEbKaAMJJEBpA5RaammmnGaqaaWVetopqJhiCmqol2pa
Kqmsbrqpp5+6aqqor76a6qikzrpqqaLCaqqsu+Yaqq26BhurqsMSe+upyM56qq6qwiosq87u+iuq
vi7baarNcgrss8P+ei2vqAKrba3lFhv/7qXsMlstuuuSyy2v5KYbLrzftgputLLWOi+z03K776q5
Xovuv7caK2661jLcLcGx9vqps64ODDC78+KKra3gjkowxRs/K3DEE9M6McAnr2vuwt4WvCy17jIs
7rnwSmyxwdMKa3LGx7baq7ctn5xxsNACTfLMMesbc7vJNt0vyu1i3DTC/ob8s872Iuuy09gmzHS+
RU9tbdTaBg2tv75Ore/O0nrMb8XZhq312xWLrPLMQBcrNcxnZxvwsdJuPDLSL3vNL72Dqx14ztsa
XG3CB7MsOK0mY8013HkLXG/be/dbdsndKi42zpTHG7TnElMMscqXY245z6xPIPvstNdu//vtuOeu
++689+7778AHL/zwxBdv/PHIJ6/88sar4/zz0Ecv/fTUV2/99dhnr/323Hfv/ffghy/++NVUYP75
6Kev/vrst+/++/DHL//89Ndv//3456///vz37///+jOAAAdIwAIa8IAITKACF8jABjrwgRCMoAQn
SMEKWvCCGMygBjfIwQ568IMgDKEIR0jCEprwhChMoQpXyMIWuvCFMIyhDGdIwxra8IY4JGAsdsjD
Hvrwh0AMohCHSMQhOiAASEyiEpfIxAAcsYlQXOITo+hEKlrxilhM4hSVuMUsctGLYAyjGJHYRSmC
sYxjTKMasYjGNV6xjV90IxujCEc52v/xjneEYx2tuEcvHrGOfcSjIAdJSDEGspBpPCQiF8nIRSqS
io9sYiQbWUVKWjKSU9SjJSEpyU1q0YyX9KQoR5nFPk5yjJokpSqV+IBWuvKVsIylLGdJy1ra8pa4
zKUud8nLXvryl8AMpjCHScxiGjOYA0imMpfJzGY685nQjKY0p0nNalrzmtjMpja3yc1uevOb4Ayn
OMdJznKa85zoTKc618nOdrrznfCMpzznSc962vOe+MynPvfJz37685/LtIBAB0rQghr0oAhNqEIX
ytCGOvShEI2oRCdK0Ypa9KIYzahGN2pRAHj0oyANqUhHStKSmvSkKE2pSlfK0pa69KX/MI2pTGdK
05ra9KY4zalOd8rTnvr0p0ANqlCHStSiGvWoSE2qUpfK1KY69alQjapUp0pVkMLoqljNqla3KqIC
ePWrYA2rWMdK1rKa9axoTata18rWtrr1rXCNq1znSte62vWueM2rXvfK17769a+ADaxgB0vYwhr2
sIhNrGIXy9jGOvaxkI2sZCdLWbDa6bKYzaxmN6slAnj2s6ANrWhHS9rSmva0qE2talfL2ta69rWw
ja1sZ0vb2tr2trjNrW53y9ve+va3wA2ucIdL3OIa97jITa5yl8vc5jr3udCNrnSnS13Qouy62M2u
drfL3e5697vgDa94x0ve8pr3vOhN/6961+tdBLj3vfCNr3znS9/62ve++M2vfvfL3/76978ADrCA
B0zgAhv4wAhOsIIXzOAGO/jBEI6whCdM4Qpb+MIYzrCGN8zhDnv4wyAOsYhHTGL4QuDEKE6xilfM
4ha7+MUwjrGMZ0zjGtv4xjjOsY53zOMe+/jHQN5xJYZM5CIb+chITrKSl8zkJjv5yVCOspSnTOUq
W/nKWAYEBbbM5S57+ctgDrOYx0zmMpv5zGhOs5rXzOY2u/nNcI6znOdM5zdn+c54zrOe98znPvv5
z4AOtKAHTehCG/rQY1CAohfN6EY7+tGQjrSkJ03pSlv60pjOtKY3zelOe/rToA61qP9H7WkNmPrU
qE61qlfN6la7+tWwjrWsZ03rWtv61rjOta53zete+/rXwA62sIdN7GIb+9jITrayl83sZjv72dCO
trSnTe1qW/va2M62trfNbVST+tvgDre4x03ucpv73Og+d7fXze52u/vd8I63vOdN73rb+974zre+
983vfvv73wBH9ioHTvCCG/zgCE94Gg/A8IY7/OEQj7jEJ07xilv84hjPuMY3zvGOe/zjIA+5yEdO
8pKb/OQoT7nKV87ylrv85TCPucxnTvOa2/zmOM+5znfO8577/OdAD7rQHe6Aohv96EhPutKXzvSm
O/3pUI+61KdO9apb/epYz7rWt87/9a57PeseCLvYx072spv97GhPu9rXzva2u/3tcI+73OdO97rb
/e54z7ve9873vvv974APvOAHT/jCG/7wiE+84hfP+MY7/vGQj7zkJ0/5ylv+8mNXuOY3z/nOe/7z
XsS86EdP+tKb/vSoT73qV8/61rv+9bCPvexnT/va2/72g2eA7nfP+977/vfAD77wh0/84hv/+MhP
vvKXz/zmO//50I++9KfvfNxb//rYz772t8/97nv/++APv/jHT/7ym9/s1E+/+tfP/va7//3wj7/8
43/++tv//vjPv/73z//++///ABiAAoh3AFWABniACJiA8vQBDNiADviAEBiBEjiB/xRYgRZ4gRiY
gRq4gRzYgR74gSAYgiI4giRYgiZ4giiYgiq4gizYgi74gjAYgzI4gzRYgzZ4gziYgzq4gzzYgz74
g0AYhELogFVVhEZ4hEiYhEc1hEzYhE74hFAYhVI4hVRYhVZ4hViYhVq4hVzYhV74hWAYhi6ohGRY
hmZ4hmg4UmK4hmzYhm74hnAYh3I4h3RYh3Z4h3iYh3q4hxHIBX74h4AYiII4iIRYiIZ4iIbIh4q4
iIzYiI74iJAYiZI4iZRYiZZ4iSOIiJq4iZzYiZ74iaAYik2AiaRYiqZ4iqiYiqq4iqzYiq74ij8o
irI4i7RYi7Z4i50YArq4i7zYi/+++IvAGIzCOIzEWIzGeIzImIzKuIzM2IzO+IzQGI3SOI3UWI3W
eI3YmI3auI3c2I3e+I3gGI7iOI7kWI7meI7omI7quI7s2I7u+I7wyIu4OI/0WI/2eI+4GI/6uI/8
2I/++I8AGZACOZAEWZAGeZAImZAKuZAM2ZAO+ZDciI8SOZEUWZEWOQUQmZEauZEc2ZEe+ZEgGZIi
OZIkWZImeZIomZK/eJEs2ZIu+ZL5qJIyOZM0WZM2eZM4mZM6uZM82ZM++ZPQCJNCOZREWZR/CJRI
mZRKuZRM2ZRO+ZRQGZVSOZXtaJRWeZVYmZVFQJVc2ZVe+ZVgGZZiOZZkWZZm6Yz/WpmWarmWFnmW
bvmWcBmXcjmXdFmXdnmX08iWermXfDmLePmXgBmYgjmYhFmYhnmYAdmXirmYjDmIiPmYkBmZkjmZ
lFmZlimWjZmZmrmZUnCZnvmZoBmaojmapFma7MiZqJmaqikEptmarvmasBmbsjmbhbmatnmbikmb
urmbvNmbvvmbwEmSuDmcxKmVwXmcyJmcyrmczNmc1Fic0BmdQumc1Fmd1nmd2JmdoSmd3NmdFKmd
4Bme4jme5FmeUemd6JmeMWme7Nme7vme8BmfCKme9FmfoCif+Jmf+rmf/Nmf0WifABqghuifBFqg
BnqgCCqeArqgDMoFCfqgEBqh/xI6oaTZoBZ6oRhJoRq6oRzaoR56lhgaoiKqBB9aoiZ6oiiaojY5
oizaoiCgojAaozI6ozQ6kC56oxhaozq6ozzaoz56jTgapAz6o0RapEZ6pD8qpEoKoEjapE76pFA6
oUs6peoZpVZ6pViapeZJpVzanVr6pWAapmLqm11aptA5pmiapmq6ppRppm6Km2wap3I6p3T6lm96
p6pZp3q6p3zap0mJp4C6mX46qIRaqIYqkoGaqIx5qIzaqI76qImpqJK6l5BaqZZ6qZgKjpO6qWuZ
qZ76qaAaqsfIqaSalaJ6qqiaqphaqqxqlKr6qrAaq3zaqrQ6nbJ6q7iaq19aq1S82pK6+qvAGqxE
2qvEWpHCeqzImqwnWqzMio/K+qzQGq0I2qzUSo/Seq3Ymq3uWa3caova+q3gGq7U2a3kKovieq7o
mq66Wa7s+onq+q7wGq+fGQQAOw==
</CSPBase64>


<CSPBase64 name="pics/cw-bg1.gif" application="/csp/cbt/" default="1">
R0lGODlh0AcBAIAAAP////b29iH5BAAAAAAALAAAAADQBwEAAAJEjI+py+0Po5y02ouz3rz7D4bi
SJbmiabqyrbuCzvATNf2jef6zvf+DwwKh8Si8YhMKpfMpvMJjUqn1Kr1is1qt9zurgAAOw==
</CSPBase64>


<CSPBase64 name="pics/cw-bg2.gif" application="/csp/cbt/" default="1">
R0lGODlh0AdIANUAAOjo6Pv7+/Pz8+zs7O7u7ubm5vT09Nzc3Orq6vLy8tHR0ePj4/f39+3t7djY
2Ovr6/n5+c7Ozvj4+ODg4NPT08/Pz8zMzPz8/O/v7+np6efn5/Hx8fX19fr6+v39/f7+/v////b2
9gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAADQB0gAAAb/wJBw
SCwaj8ikcslsOp/QqHRKrVqv2Kx2y+16v+CweEwum8/otHrNVnbe8Lh8Tq/b7/i8fs/v+/+AgYKD
hIWGh4iJiouMjY6PkJGSk5SVlpeYmXcHnJ2en6ChoqOkpaanqKmqq6ytrq+wsbKztLW2t7i5uru8
vb6/wMHCw8TFxqQDycrLzM3Oz9DR0tPU1dbX2Nna29zd3t/g4eLj5OXm5+jp6uvs7e7v8PHy89EK
9vf4+fr7/P3+/wADChxIsKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyD9AQCgYeTIkiZP
kkyZUoNLkyhZoowpkyZLlTdz0rRpE+fK/58yc6rs2bLozJlCgya9WZKoT5gnncbs+bIp1KU7gT59
CTOr0pVOgxLNSrXoUp1na5oNy5StVKxpcY41+1QrXKFW0Q69ypRv37okvdL1CxUp4LhTBydNbJex
4rVq7RKeHDfwYZ1HEYMFavhxWsFf9VYeTTrzZ8RWDTvGmpf05q9sXbsFYKG27du4c+vezbu379/A
gwsfTry48ePIkytfzry58+fQo0ufTr269evYs2vfzr279++9C4gfT768+fPo06tfz769+/fw48uf
T7++/fv48+vfz7+///8ABijggAQWaOCBCCao4IIMqhfBgxBGKOGEFFZo4YUYZqjhhhx26P/hhyCG
KOKIJJZo4okopqjiiiy26OKLMMYo44w01mjjjTjmeKFrPPbo449ABinkkEQWaeSRSCap5JJMNunk
k1BGKeWUVFZp5ZVYZilUBVx26eWXYIYp5phklmnmmWimqeaabLbp5ptwxinnnHTWaeedeOap5558
9unnn4AGKuighBZqKJkZIJDBoooioGiijzrq6KKJUgrppI1GSumklUr66KWcZoopppAyOmqpnkqK
KqmVtrppo6tyyminqop6qquldkrrq6KaWiusoKoa7Ky/7kprqrG+umuxsMpK7KzLHttqqJ6CGmyt
046qraapYqurqZdG+2mmygobrrHk2mr/6bbOAputprly2+um9E77rbbQyhops/j+Su6wod67r7X1
phvuvggLy+rA4I67Lq/N5qvuuaRW263DEwfcbMTP4kosvxtf7GuuEHcM7LgoG/uutMiy3DK1rs7b
cLUxa6yrvM8OjC2+EPdqcLkKr2yvvhaPLHK8Gm9stKkUNO3001BHLfXUVFdt9dVYZ6311lx37fXX
YIct9thkl2322WinrfbabLft9ttwxy333HTXbffdVdOj99589+3334AHLvjghBdu+OGIJ644Ow40
7vjjkEcu+eSUV2755ZhnrvnmnHfu+eeghy766KSXbvrpqKeu+uqst+7667DHLvvstNdu//vtlWOg
++689+7778AHL/zwxBdv/PHIJ6/88sw37/zz0Ecv/fTUV2/99dhnr/323Hfv/ffghy/++OQLf8z5
6Kev/vrst+/++/DHL//89Ndv//2/bLBBAvr37///AAygAAdIwAIa8IAITKACB8i/BTrwgQyEoAQn
SMEKWrCADaRgBiG4wQtq0IMgfGAHDZjBEfbPhCHEYABRmMIT/o+FIYRhC2dIQxDKcH81dKEAb5jD
HgZwAkAMohCHSMQiGvGISEyiEpfIxCY68YlQjKIUp0jFKlrxiljMoha3yMUuevGLYAyjGMdIxjKa
8YxoTKMakWiANrrxjXCMoxznSMc62v/xjnjMox73yMc++vGPgAykIAdJyEIa8pCITKQiF8nIRjry
kZCMpCQnSclKWvKSdVyAJjfJyU568pOgDKUoR0nKUprylKhMpSpXycpWuvKVsIylLGdJy1ra8pa4
zKUud8nLXvryl8AMpjCHSUxRcuCYyEymMpfJzGY685nQjKY0p0nNalrzmtjMpja3yc1uevOb4Ayn
OMdJznKa85zoTKc618nOdrrznfCM5zMbRM962vOe+MynPvfJz376858ADahAB0rQAjHgoAhNqEIX
ytCGOvShEI2oRCdK0Ypa9KIYzahGN8rRjnr0oyANqUhHStKSmvSkKE2pSlfK0pa69KX/MI3pQ7VE
05ra9KY4zalOd8rTnvr0p0ANqlCHqiUJGPWoSE2qUpfK1KY69alQjapUp0rVqlr1qljNqla3ytWu
evWrYA2rWMdK1rKa9axoTata18rWtrr1rXB16sXmSte62vWueM2rXvfK17769a+ADaxgB0vYwhr2
sIhNrGIXy9jGOvaxkI2sZCdL2cpa9rKKhYBmN8vZznr2s6ANrWhHS9rSmva0qE2talfL2ta69rWw
ja1sZ0vb2tr2trjNrW53y9ve+va3wA2ucIdLXNE+4LjITa5yl8vc5jr3udCNrnSnS93qWve62M2u
drfL3e5697vgDa94x0ve8pr3vOhN/69618ve9rr3vfCN73M1Qd/62ve++M2vfvfL3/76978ADrCA
B0xgSTTgwAhOsIIXzOAGO/jBEI6whCdM4Qpb+MIYzrCGN8zhDnv4wyAOsYhHTOISm/jEKE6xilfM
4ha7+MUwjvGDC0zjGtv4xjjOsY53zOMe+/jHQEYEAYZM5CIb+chITrKSl8zkJjv5yVCOspSnTOUq
W/nKWM6ylrfM5S57+ctgDrOYx0zmMpv5zGhOs5rXzOY2LzkAcI6znOdM5zrb+c54zrOe98znPvv5
z4AOtKAHTehCG/rQiE60ohfN6EY7+tGQjrSkJ03pSlv60pjOtKbx7OZOe/rToA61qP9HTepSm/rU
qE61qlfN6labedOwjrWsZ03rWtv61rjOta53zete+/rXwJ60D4dN7GIb+9jITrayl83sZjv72dCO
trSnTe1qW/uAF8i2trfN7W57+9vgDre4x03ucpv73OhOt7rXze52u/vd8I63vOdN73rb+974zre+
983vfvv73wAPuMAHHu4EGPzgCE+4whfO8IY7/OEQj7jEJ07xilv84hjPuMY3zvGOe/zjIA+5yEdO
8pKb/OQoT7nKV87ylrv85TB3uAdmTvOa2/zmOM+5znfO8577/OdAD7rQh070ohv96EhPutKXzvSm
O/3pUI+61KdO9apb/epYz7rWt87/9a7v/NpgD7vYx072spv97GhPu9rXzva2W9DrcI+73OdO97rb
/e54z7ve9873vvv974C3ugAGT/jCG/7wiE+84hfP+MY7/vGQj7zkJ0/5ylv+8pjPvOY3z/nOe/7z
oA+96EdP+tKb/vSoT73qV8/61i8+8LCPvexnT/va2/72uM+97nfPe6a7/vfAD77wh0/84hv/+MhP
vvKXz/zmO//5pu+99KdP/epb//rYz772t8/9nWPy++APv/jHT/7ym//86E+/+tfP/va7//2Q/ID8
50//+tv//vjPv/73z//++///ABiAAjiABFiABniACJiACriADNiADviAEBiBEjiB/xRYgRZ4gRiY
gRq4gRyof/L0gSAYgiI4giRYgiZ4giiYgiq4gizYgi74gurUgTI4gzRYgzZ4gziYgzq4gzzYgz74
g0AYhEJYgTBYhEZ4hEiYhEq4hEzYhE74hFAYheA0hFRYhVZ4hViYhVq4hVzYhV74hWC4gG0whmRY
hmZ4hmiYhmq4hmzYhm74hnAYh3I4h2UQhnZ4h3iYh3q4h3zYh374h4Cof3Q4iIRYiIZ4iIiYiIq4
iIzYiI74iFsQiJI4iZRYiZZ4iZiYiZpYhZDYiZ74iaAYiqI4iqRYiqZ4ikoAAqq4iqzYiq74irAY
i7I4i7RYi7Z4i7iYi7q4i7zYi/+++IvAGIzCOIzEWIzGeIzImIzKuIzM2IzO+IzQGI3SOI3UKIuo
eI3YmI3auI3c2I3e+I2EWI3iOI7kWI7meI7omI7quI7s2I7u+I7wGI/y2IzgWI/2eI/4mI/6uI/8
yIjz+I8AGZACOZAEWZAGeZAImZAKuZDD2I8O+ZAQGZESOZEU2Y8MeZEYmZEauZEc2ZEe+ZEgGZLW
WJEkWZImeZIomZIquQYi2ZIu+ZIwGZMyOZM0WZMAuZI4mZM6uZM82ZMQaZNAGZRCOZREWZRGeZQI
6ZNKuZRM2ZRO+ZRziJRSOZVUWZVWeZVYiZRQuZVc2ZVe+ZVg2QRZOZZkWZZmeZb/aJmW1BiWbNmW
bvmWcEmRajmXdFmXdnmXeEmVcbmXfNmXfvmXnpiXgjmYhFmYhnmY8giYirmYjNmYjsmSiBmZkjmZ
lFmZlkmLj5mZmrmZnNmZR3CZoBmaojmapImVnnmaqJmaqhmWpdmarvmasBmbGLmatFmbtnmbJymb
urmbvNmbvjmNuBmcwjmcxMmNv3mcyJmcyrmcr1iczvmc0Bmdicic1Fmd1nmdlymd2rmd3NmdbYCd
4Bme4jmeZumd5nme6JmeVECe7Nme7vmeMqme8jmf9Jme8Hmf+Jmf+lmQ9dmf/vmfw7mfAjqgBFqg
1QigCJqgCrqZBtqgDvqgEMqL/ws6oRRaoXAZoRiaoRoKoRbaoR76oUy5oSI6oiTqniB6oiiaoiVZ
oizaoi6anCoaozI6o/f4ojZ6ozhKmjS6ozzao6WYo0AapEJKmD5apEZ6pNM5pEq6pEw6lkj6pFAa
pWvYpFRapVYqlFKapVq6pWZwpV76pWD6kVw6pmRaplYQpmiapmrKn2bapm76pkWwpnI6p3SqjnB6
p3g6pnW6p3zap86Yp4AaqEjqp4RaqIbqi4KaqIo6o4faqI76qK64qJI6qR4KqZZ6qYRKqZq6qQiK
qZ76qWvKqaI6quoJqqZ6qlZKqqq6qtqJqq76qkHKqrI6q8IJq7Z6qyxKq7q6qzmpiau++qsRyqvC
OqyPCazGeqwCSqzKuqx9iazO+qztyazSOq2sCa3Weq3VSa3auq1Oia3e+q2/GQQAOw==
</CSPBase64>


<CSPBase64 name="pics/grad1.gif" application="/csp/cbt/" default="1">
R0lGODlhAQAUAMQAAEtLSkZGRjk5OTY2Nj0+PkNDQzo7O0BAQDQzNEFBQTU0NUtLS0VFRUhHRzg3
N0xMTDw8PElJSTMzMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAA
AAAALAAAAAABABQAAAUR4LMAURMwRXIQkCE4g4JIUggAOw==
</CSPBase64>


<CSPBase64 name="pics/grad3.gif" application="/csp/cbt/" default="1">
R0lGODlhAQAUAMQAAPT09Ofn5+Tk5PHx8e7u7uvr6+jo6PX19fLy8t/f3+zs7Pb29ubm5vPz8/Dw
8Orq6uLi4uDg4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAA
AAAALAAAAAABABQAAAUR4HIADTI4hFI8RsAIEBRFSQgAOw==
</CSPBase64>


<CSPBase64 name="pics/hdot.gif" application="/csp/cbt/" default="1">
R0lGODlhAgACAIAAAP///8DAwCH5BAAAAAAALAAAAAACAAIAAAIDTAAFADs=
</CSPBase64>


<CSPBase64 name="pics/hdot2.gif" application="/csp/cbt/" default="1">
R0lGODlhAwABAIABAJmZmf///yH5BAEAAAEALAAAAAADAAEAAAICRFIAOw==
</CSPBase64>


<CSPBase64 name="pics/header-mask.png" application="/csp/cbt/" default="1">
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
</CSPBase64>


<CSPBase64 name="pics/header1.png" application="/csp/cbt/" default="1">
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
</CSPBase64>


<CSPBase64 name="pics/header2.png" application="/csp/cbt/" default="1">
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
</CSPBase64>


<CSPBase64 name="pics/header3.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAAlcAAABQCAYAAAA0oVAVAAAC7mlDQ1BJQ0MgUHJvZmlsZQAAeAGF
VM9rE0EU/jZuqdAiCFprDrJ4kCJJWatoRdQ2/RFiawzbH7ZFkGQzSdZuNuvuJrWliOTi0SreRe2h
B/+AHnrwZC9KhVpFKN6rKGKhFy3xzW5MtqXqwM5+8943731vdt8ADXLSNPWABOQNx1KiEWlsfEJq
/IgAjqIJQTQlVdvsTiQGQYNz+Xvn2HoPgVtWw3v7d7J3rZrStpoHhP1A4Eea2Sqw7xdxClkSAog8
36Epx3QI3+PY8uyPOU55eMG1Dys9xFkifEA1Lc5/TbhTzSXTQINIOJT1cVI+nNeLlNcdB2luZsbI
EL1PkKa7zO6rYqGcTvYOkL2d9H5Os94+wiHCCxmtP0a4jZ71jNU/4mHhpObEhj0cGDX0+GAVtxqp
+DXCFF8QTSeiVHHZLg3xmK79VvJKgnCQOMpkYYBzWkhP10xu+LqHBX0m1xOv4ndWUeF5jxNn3tTd
70XaAq8wDh0MGgyaDUhQEEUEYZiwUECGPBoxNLJyPyOrBhuTezJ1JGq7dGJEsUF7Ntw9t1Gk3Tz+
KCJxlEO1CJL8Qf4qr8lP5Xn5y1yw2Fb3lK2bmrry4DvF5Zm5Gh7X08jjc01efJXUdpNXR5aseXq8
muwaP+xXlzHmgjWPxHOw+/EtX5XMlymMFMXjVfPqS4R1WjE3359sfzs94i7PLrXWc62JizdWm5dn
/WpI++6qvJPmVflPXvXx/GfNxGPiKTEmdornIYmXxS7xkthLqwviYG3HCJ2VhinSbZH6JNVgYJq8
9S9dP1t4vUZ/DPVRlBnM0lSJ93/CKmQ0nbkOb/qP28f8F+T3iuefKAIvbODImbptU3HvEKFlpW5z
rgIXv9F98LZua6N+OPwEWDyrFq1SNZ8gvAEcdod6HugpmNOWls05Uocsn5O66cpiUsxQ20NSUtcl
12VLFrOZVWLpdtiZ0x1uHKE5QvfEp0plk/qv8RGw/bBS+fmsUtl+ThrWgZf6b8C8/UXAeIuJAAAA
CXBIWXMAAAsTAAALEwEAmpwYAAAgAElEQVR4AZy9ebBl2VWnt+5873v3zUPmy6kysyqz5kE1SCWp
BFJpAAkEqAEJM9ogINxhbONuTDscHeAw3Q47wu62w4H/gAjTdtPRttSABQKJViNrKEk1z1WZlfP0
Xr55fne+19+3Tz5RKqsjOvpknnfOPcMe1l57rd9ea+19cr//+z86aC6vR/e5i1G5uhSHV3sxtxNR
3ogoRsQE+yT7MHuOPU5FLOQj1oYi9k5END96NC5Xi9EbnYil+d249OJGVHYr8T//9/9LbD13Nooj
9Rg0mzHU6ERum4RfOxPbTz8br752JW7w88N3kmYhYqwSkSfNQaUUUerEoFCJQa4VvWKV+8Xoc95q
F6JFWoViLaZGJyM3MR7NXD4284OoDfKRK3Yi+tznXz46US324vlXr0e5FXH/3TOxdHE5vvMK5Sbf
zzxZ5P3p6EyORWed8tWHY+fMG/Glr1InivTEgYjbPnQycg88GINnno24cD2CdLpXOfCA9NjfBpz0
2NvsDXaqE9QC+s3FM7x0nrOnSPWl2Iur0Y12OWJq+kCMTY/EoYPlyNVIuFqLRn8Q7WYjWq1uFAuF
GKlVo7HXiH6nF40uNOFfrliOwWAQxS459vKxu9OL8tAQz7VidWUtRsYrcfc9J+L4yUMxfWA4zl+4
FOfOnI1mey+mJkdJoQtduzF3cDK6nUE88PBDsbsb8U//8RdT+06Mj1NyaN4vR6fb50jtoHG2JQ64
dc61QS8qlLOQ73ItF7mclMhFnls52iTPSa/nPa7TPpEjPahj+XmaZ3LR73vt32czr3z0ez3+Qm3S
ItmUp/mZR4GydaHTgDxyeVvFcpC31enzp9CPbht60HqW5e2b77vlctYrK2eB+qRcPWYnke+3yHMQ
pVI5iul6jjytU5aPj/WhwQBaBfSpDBWiRn+xOJSY9obPe5Xo9jqJVr0eZTVf0ioUzCdLi0v/v63f
l4bkQ11ydFbpn88X6R/kah3lytQ+0MP24MrAe9FPtOn1aT/6V2onsimYFuUqFvPs9CHqnS9laeVo
u7z/eJ/cOEKTQTcq5XKUa7noUWfTsd5F7lmOYolnpC0Er9RKUavQyaU/FZRmQ/Dt3sYul7qRG83H
3mA3jh0cjdp6Lh7tHI6Z8534N3/0pRja3o3TUY8h+lIZ/s1aQfqZm329EjXOoCTX+vS2Hv/yqT8G
cqDMMwWu0O24+719FU5PfRnJkfquR58xbXplkn+er7JT+lhhf53d7Ud+4LE4v7wRL7x5Ln7q/Y/H
xvkr8dziQhzm3rvp++uxHQuxE6P8VjaYrrtUMk135YTHf9tma7m77b/rUdns7vs1dsvW5exNajED
rQ4fnIiv3bxG+UvkX7HXJTr4TJ+zLeixoSzifIf+/jpX1nimOzsczXop8V0JZpC6OfpQoVSMUrkI
v1Sij6zZ2d6KrSVkPe8cI5chjnWeHeONYWo0TPol0kdyJ7rnyMnWkRJFzmxD2wQu59karQSf8GzG
nfYMe6VSVfrQv9hzPOtmvVPfIa0Sb8JZUHqPa0O00zb1iZim1lWu9GlF6/i/Ur9HEW2/+ns/hDKY
js2NS9EcL8XURDX6yzs8SQ704UG+Th+oR7GKMlL3DKBAvoQ4pA936OuN3Wg3NpGdO/A59ShS8zI6
rs9zfai6txvNnQ3U0GbUYfRioRedFpzUoZWQgfkc+eWGY29vgB7qRGO3x5G0kcGXb27GzZUmcmQk
tlqleObs1biwuhOzUzPRQGa3i9S8AveQVGkY/VWFinn6RLkTw/weHh6mXO3YaaFDBtClXOJeIbY7
ezE+MRT1iXrUR3wZHdduJZ3Rag+iOahEo9GNicmRJBdq1H3x5mrcvLESp+86EYeOzMX5M5eTfKoO
D8X25l6sLq1FDf106PBcXDt/I8bHRqBzLva2O7HXaEa+PBQHD86ig6ajtZcnnVNxeG469rZ2ocde
FGCF5mYjFlduIPuaceX8JfJbjQo8Nz06k5h9e2c3yeqpmem4ubwc29ubMTwyFEdmJ6KMbl+hfIsL
S9HdAq/AOKjGED4gepJ4T/2NfBDx0RQa8MzEZCUOTs1Fqsd2Nza396JaKUSpno8LFy/Fp3/uvfFf
/85n4/K1c7FN+xw/doT00LNbcNjOSrQ7DdqU/JR10K1bakezuB47g1aiwaXLC7G6sBxbi5tRXPrm
+di+sRbd80sxTSFPwM8jFEYmp71Vs3S6rGPXYc4c97tICuRnFLcjrrx2LdYO1mPi3onIV0vRq+Zi
Y50bmzdjdIhadmF1iBTzWzG4cCXWnvpOvPbqQupw7z9EZadsbEtL9x/inKOSQgFcyPcQ0Cp6mZMu
OAr16Nwqqej0o728GNUH74+qhd3cjD3ybeXaCYhUYK7q1HjUSe7O09MRjz8asxMX496dswGdaIFB
NC7fjJXr7ICldz1wIurvfjR+IP9cLC8BrA6SzYnZiEt0wnPX48I5eNp686qCkjsIE0V3JqwtgttI
doDNFNZrPFdFJAB+ECOIoyTA++V8HDgwFBMnZmK4DkuqdKpVnuwDlsgBtJOD6Tv9DopSsQgdCnZ8
hZL/EBpkYOeZpxPUEQCrKxuxvt6I2YMjKK0a5KCDD/bisUfvpTH34grgsF6nLAiE1bXVWF3dQki0
46677o5d6FEYfFG9lxq+TeeoVBBlKG2FXMYNsqqbNWP3nrdIbx+I7N9N78DJPYCBSrYPYOgBgnoJ
SAEeeL2YQADgiIq8/X3T+HfbSIT0VdxJaKfCcCmBkSwFgVv6bXGhpeXu28N6FpwtlasPnVAegjMu
CRAsz/7RxxLIsDNR8NytfHw61XNA4re2Lnn3UET9W2UA5iTSZb9RbvD2EIKrigToIFCaKKl2W5Ek
OIFegB0LkdQI2WW4k5xs7O+zWRW7jiCsL/gRINI3bKmcN0kjT3m9MuA3TeallL51FMb1OVoX20QQ
yd90HAiG6X9Wt5DQqEAOnmBP9EA6FvolQCLcCA1yCgZTfFsansurtlGJvcg7/rbvFYoIfkBmDqE8
VR+JRrUdKzvLpD8SzSbCm07aW2kgiC1zhR6Agktl96hitqTWJbuKCkO9Aha5QpHZaAf+Cj6A+OlZ
f2dPc8Im2HKz5HKH/TpLkxM20/EZrzloGmOfI4c1FPaD46Mx/os/H49+5u/Eo3tArqX1mPhv/kk8
+/k/j0s8NxJLsUnKDtSQasCMrCzKD9vA8ntuvu5v37xnOd+57b/n0Xd9xrL52zTqtUqMNhoAwJ1Y
uLmT7gt7dpDkFaQLrcl78Dp3yuzKqnX2nQRAuumOzdfnT4/2L8Hzsl6vBTBF4KO3kRMAqNHhGAKI
dMhrb7uRpBqSivflJFO3bDnS5/1b/yylAzvBmkfbxOetR5fSC67kDdsiq78pZK3LpXQ3qzcDIn57
LhV2aJkGgGqfrvttaNod8r5OC7zMfoKnP/UfPhTxYx+O3rXXYmWTt+FBdVyxUwGYQI0yQ2ZAZJ+B
Zep8LajK4MKfeQa9u3vA0fYO/RRuGFD3NrVubUeltUs/BHxS8QJyRsDIcD32GDDVMAjEYBjDQAv6
UefeHqVqAMB6sYZi393Kx3T5WFSHRugfg3jzykJcXLoZOYuQr8XIGMOGIfqQwKwMTcrQCTBQ5Fgu
Qy/aao/8++pF+5cAuF6LemU0Aake72xe2EU3U8fxMfRNmTLYR0iDTKqjDPSQ/3sAl9ygGDevLUcF
XZRn9FdkxDbGO9sMgEqVYmyvNmN1+WaS6zV0zBA0azaQYdSzi/zqIkel6cREOYGrMuBLUN6GZq3W
Vsxfx1CAHDp04ABqfhBX17ahSTdefuNNeAmQ0mHQf2g2HKuvrW0ycCtCp1Zs5Vfi1GHg8vixWFpd
iwuvn4+lxUbCIjUY4cMPHYw6vHrgyGycODEdR4/NxNTRUfBHnYFfOTY2tmJzpxkvYtD5y79+Op5/
6TJljbjr+Gg8dt8dcQUgtLCyGDXw9Mk77OHqWmQTZSzXRoEf8CsgNleqqe44h0sh96ALvUtwbYUh
X2sTtY1JZ2sz8rsA2z4Di3PPXuZCM06CgY7AByfh0hkqJ/p35KZwUcjYefN7XLfzcaFO+mUkx+Ib
CB5MQVPHYCoEaAVk3Si0Y2PlZowPT8b2t9+KkV1GLRfmY+mN1+IiwEqBd/oQFrH7DnMGkoUpihAB
U1MGPRXmcGrSgSocGCFXq8FUjJogeH6vHT3A1NX11Zh75SzKikZEgg1VVV6ME1WkAjLAxNFpRmoi
+adfidLuXsxKwEOjyerV2r4aM9TnwDAieRPL2nA3Zu+/L2YZke1eux67n/tOzCBRryM7qUISro5C
pYe7JVOQ7HdoO7j0cpNe2NroaC1GUYW4jzst4NhYFRF3eCJqMEDh0FCsMALM0TGrI9AO5Vuq05HW
2wDFRnSpZy41MkIUpJ4yhTZiy6LKEmacmZkCWO0wktwNsen09FTMzGKN6+3GC8++FI+991S8+/EH
YnxyOLZ3AXc7DZ4b4X4rrl5pxtYmzD57Z0zP1hkZtJLVRctLpcb4UiaysVMtIVRWAI5s+z9hohzP
9VWw/OtTuBwSOVmx1OZ0uGw8uk81X4R2XFcfZwBoP7F069/9jwAgiVlbwfS/d0sWGUCdm2BiH8T9
7bngiw4CQLA1FfUJENBRkxVGZHFrS6UWiAiy0oboT7cFDKQNnRKw4NoAxhWAaBmTfFqpqnTACgJO
4dOBp1tNFG9LMKZVi2fVYhDEc9PVyPe2rG7l+Y5DAnHwA/3HBjFL4Te9nl9Zq1lEz7/vxo2co2/+
qQQHeRWa4NIyc66wJtHMIuYdaUl+WKQKjOayOkuPrO4Z7bintQxl7NGWsVwCP62IpjWAvwpkUtxj
4NB18FBEabXZc1HOVVDe9GcE0PLScrS6lq6S+piWiC7So0jvykptzXiPXPaVq/lZxqz26Ueqv3Rw
y0qrWrbU2VPWar8P229Nw+fclYHKKwGS1wUiixy/icD+4O/9D1H9ztNYeNux/syL8dobF9IzB7iP
hIqD9HtaOKVtfpZ2vz08ZpzJCVtW7uzcvz7rZhncvC/o2C+35/vltHym1W9oXcwGeNbD61JXvlad
ZrY92xrFyZNallr82uAOqiO6KBP7sJaqAQyoNca269KHynngGMy8hdm+SH+pA67GtXLv5mIdfrY9
hEIOBJO85rf/LIMlzY6ZfISDaEEsm+mO94RXvpfVLqNFKokvp3T3629O2tOkq0eHJotcQ6xjAdNK
OQSog5+4dxN4+xLXEd/xD3/l7hj5pY9FXH0tmm+dj349o+faEvJ5FE0JCOhhlUmddRfeh0cF7AUH
LVieW9vrKOgNCtOMGp4VOTHP6KcP3/YBGH2sSgN43HYt8U473etHE11aY4DcajG43sQTg2zoIRf1
NKwzwM13x+PQiTvihdcux1OvzMeZa3ggIAWG3Jg9MBmzWGpWGWxokinQP7vsRXRIWasHwGkI69Vd
J++KNfixwaC408s4uYNXQjAk4e978C7AHnwIoljFS9PGi6E1B2mN84M23WgD4rA30tbDo0MAxQoW
dugBGDzz2rlE8VEGQS28KIs3bsYkOuck3pEeoOryhWs8j0xDFinLy0OVOHx8Dt4pR6MFYNoFSO41
Af41nu9jAFiOPsaWBjp5/tpNACogCaPMOB6uQn8z8dg6wKqNrj40dSgwemHdb8b8lWtx5qXtWF7d
DV4NsogPv//OePdDD8SP/MZvwGLLtJ29hop1gcy7oGcsjNEhb0DWkZkTce+Tj8Snf+wD8bWvPB9f
/sqz8dwrC/HFL74QDz46R1l24q4Ha/Gu+09CKzJA5tRHRjHE9KIG6FbmlGj7AWC7WGwn/dDDXNZD
jhVohwbGo73N3djB+jY8qMUYlrtiC7MNfBZHEf5HSHAYs16XAlFEukZmnRHdyzSOXJrsdtxxLvQo
+yHA/g14rrwLyqNuNawpS4x0rmLqGa8cjJ1LVyMwd66DTq+fW08m8tPHaPMTIzDjVnRo/D6ouEAD
5dIw3FwR5Ajd5CLBcqWLr4+lqgcCFnI6ktrsbIPFCrGF2aXT3I3xEh2d93urG4x8GfUCrhq4FQ6c
Oh7bFy/H5dcBH0gkrKtRI98cTLZ109EenWyyHusvX4/rX70eRw7DYJOOrxiMUp+Zyem4owIFhiG4
iNMNCx8t8N1Nekgf9/3Na9LQTl+kk+cQz/dxPlkfitzMSOxO1KI9VoS5MPfSYL1cgxEAtM3RcTFR
VrpYBYYRHjt0XpURAq6v1YCC5WBSBdwuw/rb7zwZK2uvQ0usgJj08xWYYaQY995+T5TIfHFxKeaO
zsZ97zoVZ988HyvQ7yAjz03oVKrsxB//wf8TDz/4IVw249Gj3duYh4cRMlVAQAN3pNAINUnJZVy2
TPKln96xQIqhJFjTI/zOTC7IKYQ2lcpcSrYx6VBQn+0jkJsADK0uOYT4d9NPmfw7/kHQKPATELJo
5JsADufJMqOAu1WWfUC1f/Q57wl2dINpqTGdDCDsn5MmtN5vV5/3fTefc5yd8gPwDrAe6vrLlJh0
oVyad2nTMgMCTfYlBHiDDqSrt4WrQOCi5WiAMkt2cgBWsj6ZSrKCkYYAh3Ldyjblvf8n5S2oTcx3
K0/yRQpbQvVFln4qMmmlMkIj+CiVX9qYsOTnPMd9wWMChiTnrZztIyAyDZ4r0k95hGd4zrKRh+5S
EshkW0rM7EmA5C27tyENPM4f2qsDoCwj/PfMH/fHcn8jtvGLtLDmtce7cey241Fd34qXtICjiLAJ
kJQOpn3lK+0BwilX8qAzCiu0GGh/UVl7b3/LSrf/S8pku9cpUerOiUS3fu+fex/Rlp5H/abNa3ew
C7D+9DIujT/8F0l5r/L7TvbHkaaIVSxCG/zrpf7vgGu/PB7Nc3+DAt8DvrzuffN5ezn87bte8539
+6atKjjLPkVNbMoZpOxqqhU/eFoQkjWyx32nnH3bvARXXax+KG7a1obu0C4t+melKE9gkeB3CSsG
kAErCRZG+LVTrjHSH47h6Vws4SLao0TS3h6g0nZTzY9wblkFqdJQ+xSp8jfrKdbI8mc1EzBl1qvM
Pmk9BWLwbkozK/8+Jcwrj0WOgArOTCFPzYf4Wwr8KUEESNJVn/3MsRj5qcejs3M1Nt58LXbGJmJm
mlFzF3fpFBRBfxB/Aqnoz2lEz4t9FKhpYp3o4B7axDLRQ6/kCq0EovK4CXsokwLWq8GeA0zc0LgP
Szm8N4CxHAOF7g7yArndwXW+t4V1Dh1ZwFpUxguBSSe6AKNOcyJeOrsS/+rrZ+KFxZU0OD95aCJy
uMy7yKUVLdw16KnJpAI8RslWh7E4YbIp42ovALLayMECrnmG5tFGNzqgK/FsGV1cHcNDcnAKHbEJ
uGMQTnhOFxnhvzYATz05O3coRsfqhI9cot796NDu1dpE3HbqWDzzzZdibGwMl2if9q7H1OwBvA4F
Bj5rkAtQTD8eG8NKhoVtF11VrpZjtD7KdYgHTcZHxzlsxMm77lAkRu/lViwAlFYXF7GINXDYFOLO
++/G21mMC43zlHEraoBT3XZQEothM3b1tKxhqoBRjhyI+OGP3xU/+6mPxYkffBSLRz36f/XH0cAt
Z6hBvo97mHzaWBbl4S5yqoUMVw9NjE/E9PsejY/+J78cH/3k++MP/8n/Hn/yr8/EpQsLgL2ID7z3
dDz4wKOx3gKOk8b48AwDC3nQoAOGH1hwispb5F5fj43yCzk9gAYVdHS+xXEdlyeVHwByi6O5Whxg
FDLSoXGadDQUrCLM7uHRDi2dZGs3gZaggfJGA5DxwLGp2O4hWkDmfTIdBoFWBotx9cw5rEIrMYFZ
b/Pq9TgPsNK9CG2idGQ6ckeIoNhkzIFpsedoHvNaOSFPVS95Io1Fw/XyKKP87WisM2ZsNwFwgA86
whBCv0y567OzgKSldD+3vBfPXW2gsCMhW1y70bpyOdXhnmnqgAsRxIA0bcZNRgpY8mNWPsf0OY57
7S1+vwqRq4u9ODoDcKTj7WG2GoKJJcLFJX35GeC0jPtd3VGtNJJWChE3f/uMwFWhY2QD3Tl2V+hk
y5huJ6vRgmnnhquxVAFgYWpuALQUJAUYrTSej+HKUGwsARTpMHk7P/TIFB8iiMQ7dNwx0jFuwMHN
EJ1OodCFwY7eNhsf+cSj8Ud/+C9jsjEaB2fnYuXmBuDJURQulO013puKr/3Nefzdba6RBxY0lWh9
eCzRWouOrrzM1UaGMGqqpRVly8PFORgYjk7KOrmSKH8CIFpguN9lVK9bSJeQ4TtaR2Rc/3RE67mh
hCu88v03qWi++8e3PUU66vB9wOMd3Y9v3/YBkWDC5xIgedsDgrsEcmg972VgwPzIFSEiPVLMFr8T
IOGZfcCmtUlZLCACHnPfigl86Tvws+1Y8YiQtJxtOngb5dQmAKBPvFyR0ajkAwJCx1tEJSXPtGAJ
7LK6S1NO37YJWBSilkUTt5LLvl6kDU1AemuV8iH/7VuhREAqIZtSd59tY+KpbpwKhFUUxnLRgNlv
25k0U7wVFtQccRHWWRdhDkFsOTLXoAX0WdQ5aRQ02dHeGUAkAdLr4q63xpiukgypj+AOJ25Fa95g
gAVoCeGIOXl+aTVeeusK8TxGw2TRM5QsWSoEW6ZBcW8pYy0Zql/7meeUK/0VbukccrD0vXzBq2mT
wtLboyVz88n9px0cjbALFARaXr8DYXv31EicWV1KEOZDOP91R1oCnEX820lK0nSVEfTK9J5y03zc
Lbvbfj7e83mbUrnrcX/3GdNx8919uezzpgMETWVT1oxx15Ioa6USUpJ3BZsMXtM/bVkOV4nj5Ixg
Dd7HwsKzXfglp9yFoVpolSbAtkr/kGdaKAyGebRf1qe78MQssUml4RpWDmAToKKLeR91jY4gHY7y
tW1R5be5WnZbEniSSmPraHXM4JSls8bSwZJn9LA1jdbKhruAiVvPeNf2LkH5KaRsE6qX068ywHYv
bqSSAHZ/cCZO//5vEzf7pbj06rno4Aa79/QcjQ1HAIYK0xPRPnsJYsNBWEu0OitctU1J6SIyudUl
hgjdk9NKT0Po+s/Dy/sgqow8zaF0uvBvHotNF7pp7RPo6ApsrWHVaEO7ljFr8DuxOu1mHk9CP+YX
d+KL3/xqrBN3NVIrECt3IAqjtVjEG9SmrwyMsQUoDSDJEIPm0jCqnpi4Gh6ioTHAFGV55fXXYpI4
pBoenFLZtmCAPTQah47NchyKZ555DVmDq462M8ymiqWoiEGjW6dugKZRrFXK8h7nysg2dTXud0zZ
0Cdy+MhM7KAzpwizOTA3GwtYry7RN4ex7Bxm4D4CEJrAY7K0uJHkQAF9qcyp0P/nDh+IZYBUBwvV
5MgYxhe8T8j9Glb8saNwrMISQ8IE8cCzxAFvMfCaI1a4hxVo8eYCMZlwJwD2kx84Eb/28x+PUx97
HEMHGvfyxWg981SsbyzHqINSrOlFFIxhNHmAZrk6iWuUNsQDQ5xQbBLrtYl3p/H0S5GfuREVYrY/
+xs/G5/9L8rxgQ/9g3jgjogf/9H30eYAw8ZFBsLCfwAlseTdBnKrZy9WvyJP6BOGQahraOookv4Q
QrDOD4yC0aC92611LIxdfczgjd0WwKoN82buL492YoWKuyGRpSEQ7N5aAlib9OgrXL+7MhVtBOHC
9d1Yr9P4uO60XuUWmzFc7cSFb70SfWK6TMuRHfFtFBDfKx28etsMBYQpqUgFszPSGIWC8Ibxgc9R
6CLutBzAeHBjDIP268NYqFR6WzvR2VxCv92Mt67sxonDdFwaKN+lEUHzc8ePYg9eI9h0N+ZoQz2O
sUcA4Xorqk0gEEQ4ShudZXjzwNWLmCYj3nOSoiFlruzw/mQtcnccijf/7EKcPkw5aCcMj9igMLNa
BXYeC0qTRMG+IFTQSS/vKxR9xqPZK6jparF0djFK+MlH+kdi9m4CSBkBbZH+KJ2qRaM1aJAcYLcN
UKphbuvDMG06vSAnh0BQZxmMPsIIaG2dWLnDw7xD3fHDHzo+QYO341vfeSqmj43GHffcBuOO0xFG
YubQkVjEDP78U8/HpbPrdBaQOAXb28I/DMm1BgjOjLW4SZsOYWWroKxTzBDCRBoYGG4HNFZK0U1X
RNEiIqlkP7kRuCZDuRGTo6VKBa6FyUgLXuY/irSHMFW5QykusVkA3tME985jomZK0D/fswkK3g6u
3vlb8OGerGa33kzuKssoaEiVytTOfjqp/KTbpaObXmY5UiVRvFtp+IyxKWkEzsVkN1FA3Xoq1Q0S
DeOaNvVdTONNQJWxVbp6Hf0l2lC3fbBCclldOGrRcve5ZDnU6vO2LaMZNLV/6MKjfYp0boVaUbqi
EEs0bh++MRbMYg3SdbsZJWK3MraA72RtCp24bnvrtPERLVSCRvcCmkXgpaWvAHgTXFo6RzMdBHNG
Z95E0GU0M48s7YFaiTIwtk8WPEfVlaEqA88xXAC9GCHOQ1/F0rmbsUbA6dlzl+PSzl4cT8MTIRKj
UMskvRKV7VEpyXTNX7aGtdnftbUox+x13tHSYftRqlu7pUcB8tvrUljO3X/Gc9PVFqLE8r792zif
WG2keCXGYABA3+0AcLQBZWDsUHJOlbiCUKfP7+fp/bfnw8+Uv9fMS+uOz1huIYZlkO/evlk+77k7
2EWUxcPsQwz9FrGjEW6d0hpLwznBDTKDFHWp6i4TOBDVmXYiiHifoGb2BGHof20tEoCBJqPvEgO8
UqkUm7h38hxLxNF0nGCDrlilXkOYx6sTY4APwAN9ot3I0rMN5KHEH+RlfZT5thGSNdXLegqUvS74
9Z7PZ0fbyLdsT4ecGRWSjOK69LaWKkBho9OYOpTHiKdFqH6VNx97aCw+/NlPRG/xDH1vK0q3TcXc
CIqbAU5BD4KKngD18hguT0anKbCcTlhGH+WIix2g9Dt5HZgoWazQVWLakvsaj0EDRZEssU3kcB+a
oFs6DmRKxudQe33mcxEAACAASURBVKwYOQaWA0DUBoaBfp+8BgClQRXFW43zV7bjxbM34/J8I5YB
rhXKVWeCFv7W2C4QKjBEjbF4F/Be1MZpOwLjiyixCmEjFcvGoKaJi7aBvK5PE4RPQLtCfAgQVQLc
5JG9y0xU63RXccVtx9TBmRgaNa4LQOnACy9PvWZMUp44qvVYWV7BgjVL27ZibWkrBa2vLROUDbgr
6+KiXgNo06btDfCfQZFPzx6MQ0cPEheJbmZCWJF61mrDce+9d+IZacSly9cIV9mJJqDm7Otn4wBu
5IX56+gs4hMxwozj8lzGQn0nAO3EsdtiEoD+0iJlBuSeY5LI5YudeOyecnz5//zvMC60ojhLUM7Z
M7GOsWZ7cw1rWzUO4jrVCiigtGcZlyxPSJ/kZqOt89R1DJPXmEFVWBlbuBZ3icEaJvYrjs3FP/it
j8cI2OXeh++I3s6rxHttYO07HMvELR6uzhJWRHpYOQdtrOWkpWVUnILARe4yoNM1vILt9wb6Ynkr
psFUxcIEzbGl0IIxKJj/7LB28P0OLThQMGAE5i8BZvz1mhuDb1zujCuHQLYgUX3EdZzB5clGHDFI
cG0vXri0hoAkQJz92DR/5gBRWi8aa9EZP0CMkUbrrGulXJNko1tBrFKpAupHnKFARsrMZDCoCDNg
stWt4/5jeNZFROjam5pGzB2Ziwe2QEv02v7OTqyvAbomMmD10lu8ev4MhMMiBQ9Di2hREQHP2Q2A
n2V79P7IE0zYe32ZIMBGbL55gaA4SnXnaYhQi3uGXo7OFd5DtrptseMVTTSTXlqtbGKFdSaUM6Bl
ldzNi9LT9Dx3eSc2czdi6NDxmDhMY9BhUqgjHdig0+113CR03DKjmZIxLiTagbmTCwaFl9eCB9Nv
4nLVN1wDrbc6uwT9MZLEInL12rX49je+FY889iBWqwNYtlAOR3Nx/dJGbOHr31qg/AuNuO32Gawr
ADwCNrt2LGLAnL2x3djDvVhg5gniGwWZp5115Sn2C3QuR0ADRnIlALHCtogPyk4rICmo1DWnIGQK
DrlQzFJAsCCB/CUVnBFpsHZyO8ll6cbfHjkjz/SXMwWt+UvpfZWDGL7FqIKD74KjW+cCIxW+m8cM
eFkdBQRdRGTJlkBrOvOccvoO7/Ij1SW7RUaAvu8CRy6anm6TlEWyyFEBXtPiVUBAlxxFcd4F4DRx
B7YE9dCjTB+x3N4z5sr6qFIyCyGCkzTJKB0HWnSoutdUOtIynZs3vxXkkteRp4kK6ryWCmLZoFlW
Tq4JlBLtsholwEk6lkVLmf0wuR94JrlDsS4JZgrmRfrJmkUKKT1+V5zNCs/1cO+WFfgoZkdzTUZy
RQSPgfvSWcBmDI/QSOycrF7QvkT92yiWdXhuCEWSY6S+u7GZhPVMvZ4kjlYLqaN6tS4CJC0oqm0o
lMpHinT5jDe8Yvi716SYvc57Kl7fURFTO35nKt005ZCsFaBDRpp0lOPs41s84TmiPVmxBDTKQH8T
CQrIoq+ya0U5zBUkHMCjCczBjcS5MsLNfJSvls7NvCAHMoGh68gUs6lXU0rmZRre932f9+j1d76r
KLIcM3MPoFCo27UVytsmzxHSqKa6C2iVSYlfSMX5esbgYGcAiOlUBVCpjODhAgM9wzHk9WxAhAsX
q7mz0OQBaejsKeN3drHo9OGpOiClw/kAntcybjmVhdLNNhojf7WMJdDC5yDLdhAiKSmFvgIle6P0
MAXf0xKlqqykZ3UD2/bZVuCuQxlUPnm1qV+HOYtFaL6eZnOqw+780QcxXR2Ks3/5ZzFy/9E4cfpk
9AEay1dX4gBgpusgbmE5yuPwyB6AETCpG4/YiqjqyZFq8GQPRVei7niwCQWmtHTIPkaBNhYVLWBF
RubWzvp1AFMD+zyWny4KuUnM4C7Aq1Sq446rEYNE0DjeiBfOLsdz55ihSYUeumsulgB5m4SGaPkb
Ha3HQaw8O1jCOsVu1GdqyBNoTxyU/Ujrd3OPcBgsY8ZMzRLsvYOHyLCR2gj6mHc75L9JoPYWQfMH
mNE3OjECKMNbhIzf3c7c6N1x4uYKIwSgz8SN60sxygBonfjdjbUdBtaUl745O4dnCnCkpX1zAxhO
eeuElUzcdjgmJ6cYtFdjR4sD5RpiwDQ1Ox4Hp2cRI2txBXC0An2LAJJ5gNZK6Wbsrq5i4cRmSn/f
oizz1xbQdQw/Ti9GD9/c6s3FaK6uUMZuPHF/Nf6n3/n1KE9XY/7Fs3HzJSZlYbG7A6PMxLHjgA/s
rju4myZn4AJ6DHHaOUCoPSeHm5BMOKfv69LGmgRyQpbCwcitMrqnB4grvPpa/Mivf4pRE+kAht88
+xbeNGSPOgwrlXR0eBIFYsM0NPDLkCXlm+5zvMN46phUcANAem4VgNkkhvlgDCPjCx+Kyu9OwEa3
wcIy5zCMKoO7ZUIis84QERSXEaRLXDfI+8GPPRy3/92fjFEUyBFmpLWOjMfYoQOxchXiAajGLqzH
M185k0Z1j/COne06gGZmGvF47CAVH2BqXIUR6hiUuEbkX8uo8aSE6GpYZoowy+bNFRAqfltMgW3i
hLoEI+auLEaOaZzoyBSYd2wWcYqvtnuV2YM8t7HejRsEax8FRNXuPo4bEtSK4Noi/wOHAFfgsIOn
x2INhhyikpdAjHvcO/ihE5G76zgovxBXX1mNFzBVKSimRmF56jb8+PujBih8juA3BQEkRxhmAkHh
55YJsQygCkeBhElQCEqlq4JmmCtu5wkk7OASPHIvs0Vo8MvXbqQRcongP4HMwYPTkAmBp8kTv70m
VWeROOOvwIyRKv5tTbJdZhYaW7W6SqcjiO/oyQNx+p7bifMpx9985WmCAPHlMwI9ctuRePLJD8YD
gMiba2/G1etb0Dgf1wgszMMsw4zgNha3ow1w+8Qn35MmZl69tgjAw+TJTM0GAGyPHS8ugrybZh2W
KMsaplsB4MgoSz1gkTK2qI8VJa+lIylmBaPnMD2dUCGvISOz7niSgYLsWc9V4FJIi5fPCSi8jrq5
ZUGj/3CD/gA4EQzt7wIPFbzHt1ue9q1PmvKlrcDGGS8pH/iszKhcsOG7mvR9v0gHsxhmtf9XF2La
oVsCDvzWTaDL2vcEtiMI7mHSdjS3AVjYhD4JVZCaCj/N1kFAlxk8WEaFmPnJzwaJZxlCMYhkfFIb
i45LHVhHjVDuzh7S1Wfsna7NLIDca3Isz6Ig213jEIA01E/hp1L0tqZzXZa665xEYexiERd7kXOX
YHBPFYfeKliVrXyolcwZRBXcClUGU1MIgrVVgk8R9idvP8ZMn6lUFoWx9ZmaGWcK+Ghyf1oE21Cl
mepHZffodOZlei1UfAd3dgEXy7tO3BY/+aGPxStfejbO7GzFXfQ0A8lxJLPTNikVlbTWDtUrZeMv
tU/3/SudBU513tWe4eBRoObMXSHOAr+0mdDtU5+1jbN25oRtXwaqpB0QCYpUoBlEyAZPygCoxfvE
1PDEHneNPlqjLkat1si7wnVLIywxfd1a8pStpNVGaHeSOI9Dv/lfRvXcpXh5nYBh7s3i7OoiDeAi
ntt36iXqpXdNTzA8yl8iSehCPAV47zA7jbBgyqQLFYVHGYR7gimtVkAl9ioQZMBMur24zJPb8EUP
ZWf58GIlcGCQsksxGO8pL8kvPfjFGNE+/K753MFSD+XTBGQ4wFLSKbNVOLYI0YXkKrh0YQZraktl
dZcOcCO7U35sPXOn3/PP8wzOZq2N5ENumgZAJdWszK+69kPeJXQkpTNgJudwfBVAe4Prv/X3H4rp
//gnonHupRg+eRAeBNZttBgMFokPmmQ5CZdMgAoMCkrMtOsjQ3XNN1CwTWZBduiTVa0U9Lk1Jk81
iTHRQuOAsaZlC5rht2Nggc7Gaqvs6AJCjSNdJ3B9fREXN5OFdhtcw9CwB+haXO3H65dX4quvXIxX
r20T/J1DH+HSHGVwSgT7ATwNMyitXgUXLEsPHeT8NlyYGxurMXWI0JVxNQegCXmyDUDpY4DIowOm
j04QkF6NkWm8F8gsJ8vsENOpl6GCPtRyw9wn+qlAEZmhqxGZ0dzE+ojVyuD6GdyKe8RMdXlwAkvk
LH15hPz21MkAaeV6h3sCtZOAVOXW1lYLo8YES/yMkReDGqxWzd1mPPfsi3Hu9XMJxLXp4xffvBhL
C7jQ8YYcODARp04cohwMqogDcwml1154I3bwMm3N34idpfVoE/f9xH2z8Xu/+Utx6In746U//wKF
b8YELt0pjAdF6p1L8dfMD9ZizsSvFkAJcxSeNXgOLKGqSDqHdmnBm10BMed95JfyrMGAt0NcXJOY
s4XnnovdpRWWxViPQ1jvxjHU9LD8TWL8yRGcPlSB7sjPAVbCAQ2e62OJBIg3MeB0qV9nfiHOv/BK
LJ9rxfHxOpMRSlgC16JAKPPv4o1NBuQaDUf0A902Ey4ej946h8SMdLLrdwBWau97OOJjPxjn/+Ir
8flvvRh//OXn4k/+1cvxnS+z3MKZzZjEMiM4I8opxSnZETrItalZTmg0hkOYOGkUmEOlWaYjl2R0
RQ7Kz8CxPsww5BRThHXn/OV4/ZXduH4lvYry4ggYGAKp7hHRDwCGsRGERqwryNnz/K48eIJKHGR0
wtpYB0CsgLBXSWN2MhdzP3R/TCLMDhFU8RwWrfzTN2Ly/70QSy+sBrF28eRnj8V0fjfeOtuMt74+
H4PvvBFtTJ93Ay7HTx2N0s0thGcmlBXG0ktBLOjSfWCdFRs+M0rNYAPAaT91foU1ycQVfNF5TLPT
BNsZz7AGo+SHsG7gMtlhmrO9Is8oSTGTlCtKzlimpDqQVIVcHV99HR854hNT9dTsSLIYLLEuiDLw
z/6vb8bLz73JUhLnYbJmvOddD8dDh98bRx6Yix/40ENx5dLluH5+nXvt+IGP3B0n7pyMn/z0B+IX
fuVT8eabr6Z1Qd7/oXfH40/cxywQRD5roUxMMT0112SUQ3wMZvMRXF97MPUuS0iUQOx20CR46ZBi
BRsjgRjaJDVO4vxMmKbfCMeMiumB7BkbEb5USe+72BL37SfEURCWvQdgE629bdsHU1XcTe66NryW
ANOtNOQ7wZuWLDtcWgqBNBSUGcAjD94xl/39bVkQb4VLIoEbVQbvIXBdBmOItlNp+NYewkYwlXy5
HAY66amv6Vu3DLhQR/LJMuEh6WO5+OdmcVPcVvrhby4ASF1CwiUXkjrida2aqbzcFjilPoA1w0BP
E8mC071nXtznoIVRxagFrUu/c62rMoBnmFFHHTd1mZEi8hrwJZhEIbL3cNe3MIXv4eq0hK6PMzMz
wbTtUQCl9R8B2APACHpuovAFnsZfGdhfgzY1ZgbrFixXWN8IV6lxJDvEVXaYyTqCPCizBtCDR++L
pW+9GZfml+MUQxTrmEIToJ1OLvdbkJ2jlPJfEqeQTupTX/7qPNKCM8HcvW1gx3KCHFpVelyt8ISg
I9tsRdsZsqTNuvnbAZMgwese3b2XXQcgk4PQz2suBuGe5W3/zwBRBv18M0vTvCzXNVJZWmSdoC9/
Mf56fT7JjZNJCitvdSeaqzYUS6JNJ4Nn1lQbnTKmCfQcaqHcURa7XGfuMfRx7S/tar5r2ZTyTFLh
7xJpLZL2DUrqVJs2sSntxB9QGb4xJ1lMtkm0kNe4tk+DdJPfboL5Ilbt9Bz9QV7HoJ1o4dtZP/B9
UzACDB5gt1xGg3kUZO63qL8FpLau9bUjbFNDwZY2BNMQagqqCImmPrqOp6HVXvwNditEfvzKj83F
+C/8MLr2KrPbrkeNgG7LVVeXUAzXDdTy39NaJ4gsMyi4lZtBlMqDMsrU+ShpLSt4XSjfZYq9SwZo
be2iwAUd0mRrjeUvWPtpaRnrE0HsfRYybPewEjW06NEGxZF4/o2b8fSb1+ICSrfPIHn8wGgcOHgw
RudGY+I4likmMRmU3mPQqiWuy4zfQRXeQb9p9d5Gti6uLQNYsB5RsCFcKsMApzIxuwiHtOyD4Mml
DRyIDbCY9QCLiBhAFX2HwfnwyHhMTgDECDJ3c82pbYLcm8wyVH7aN205AXXXmFBbheUHFF+Hbzua
1oIUZB8gLuz47bfFmCE6PN8AZHRwt61j8doVcMCHHZaeEGjtoC9XFgkxYeB2BAvb9MRkLGBEOPvq
W9CzCdgai1EG41tLy8T+buO27cV/+xs/Hb/2j/9ejAz14sJffSnuufcoM4gJCcLLVSKgv4DbtIdV
aQAQdkZjDndfDtlSoo4FJ8e5xAuAEmF1i5GhLacleDUbbPIboWY8bJW8HVgXkUGC0AbWNF1+Sps+
LtwKMmpnS6uXM0eb5EFvJ+ym39iBdkiRjbVYvnKDuKsOLsThmMXdLP1WiWkufDCqv2tUiIpeSwts
QbKycMbaklvAgAGQZzoIpYhXcFm98u3X460/+LP409cXaPTdeOCBo/G+O2bjQR7+QRDme6jY/Zj2
MBKlGQ2b4KkeIGZyjk6DEAb+k5mme+oPjxvoPMAU64KCwGIWVcPWRSdI09RhctcPKcL04KmYBlhh
uYXzYUbcXZ56fRzgVjhyKCrTGMWHuH6EYMXnL8Rg5SKgCOM3RN+jsZ99kzTIZxiAt4IlY2y2GhvX
QdL0lMoRJjcisdYo0/ETjLqPHo7Zahffcp0YJubj4I/eXBEsuSYV/m4ItEGRFbQcEGsZ3VKZOJeO
0k9h5zOKCcWGz7m9gelLRjx8AFMiTL8Ac8IFMT41zcgHixCxaK4VotXBNTX0suVRfskKwXNFGKBc
rDNCIiAemjmDpALAadPAm5vr8ejjd+MyGI/rWKcustaVgZ/jxxgPEwT/8H0PMFqaifXdyzE6lY+P
f+qJ+Olf/KFY3ViIv/jLP48SnXuYthzHLNtj/bBrV2/EBtbGWaaI3vPgcVyKrBPy6LviySc/yLIO
N2IF2oxitWkggEos9DoM6BM8JBAAjyVJlBqbVrfX2/gZB9w6euHtu4/ReXj1e6/vP4M7QV5J6WT9
yCcFUQIQrVCjWNMEVo5EXVPKa4InF7CcmWFxvjRK1a5qXlg2vgtQ4MVkKQK42Um/z6bQUQDb+gKt
KqNjZ86MEN8mqGwAPvYADMn1J9JBhKtkU9XRQK4No2WIkmfXOM2WYuA3V91FSF5LsVooOeMeknXL
WwIrimbx0hpo3MtTN4PFXY9IAJ5+M9pGZ7LDQ1Yl1RElyvMKFtffMmzBIE7Bp0DOoyBPIaT7VsuT
dLWsFoySU3YmRiCgt3AXbLK+y/KS+zKxHmsIWlwe7Fs7rD3HKLoLIBN0O8Ghg6WjjcJoALx2AeUG
1G5sbzCIwMWBSyO/1Y5H3/dh+u6leIY1bW5D9qiegaRSinMjb1TKUpSOCmNlV61xRrnMgJ/BLeOK
HPELLLCPIefqWIe0ablmlTYn6sbu5tEUbK39zXP7ttfNLctx/zxbg0sOcgDqLhDSyqJ1KUvJdhfy
ZSXWfuZQS+B1AOCIgyWu8osFUuIhzg8ibVHhlJB1jtiZzP7dumf1M7A7+5eV2wB2UwNEojxdiHkH
RUtINOXIaGPNCHNOYOoqZ1rubvKOwecd5IlBuq6ZlIF8KI1iNt5OBD6wD8NrxlTZGeV7Gdbfqc+g
mB2YuByL9ZRvtHJaY8GH4E76CZlsw6ztspaUPl6VXrar7WgdrZdHs8rolqXtelo6EDNAZntjbaIW
57DFvcqzj96BV+U3f5pFjIgv2l2OIRZTHSLUokzMUwpRoCA5ptTnsAx16YOCqmJ5krozyMeSXEM+
9JQVxmXBrzmUah+LRRokAAZcrypHfFmKgaWO1rOxy2xLlPw26wa0moRSbOMBIIh2mTWsbm70Wbtq
I169vh6XWBqhQ4b1qaGYPDwWQ1OA+0m4YQqqoa/qE6xTRqxvvqLlESUOkCihs3TlNbEcaOl16r/r
UA2xGOgQMUtlBkFObErxlNKMwRtqM7VXkg1cQ+wh/yjnFjoCINWlP2ptH1APOjfWp1F2pgWMEEMD
PW3fPrMkc1h5XBxZa/yxk0exSmL1JPGDc4Cr48fSczdvolfoo2XkxMEDs3Ec78gUuqtNv168shRL
N5bivR94mEU+C7GBlezq2QuxeH0Bug5ilGDziiASK+I2k9HuP1GLv/+rPxHv+8h7o7NwKdoM/Mcm
geME9KfJNISpuAyMra7cL8J3hl8YspIWQHY0AH+mUSVPKR1AyehIOIjBXcFBAEQxfEWLf5IpvN8l
Tlt+28XQ4SQ627SEe6ZSwlDBuoSbWyxWgtGmxl4sAg5Yq2x3ay22scTtLa/GQWZR3skaW3ffdU9M
YpWbIExH16lzf2BgO78o3K5gZ8gEiec32QUKMzCw20F2hREeszTKOs3xFItOPPkLv0hDDeL8578Q
115kyv+8YwgsRIAqBlVpWQDi4TkBYald3HAx0atREjyQNASlgVHgJq7LEQCNvs/TIyjEtJlrx0eS
0T8I+u6i8EkS9AIoJg1WyiUIts96JFjtCBrfi0sLHKnEAu6uqXHGrvATk+TiwEMEAb4f4HHH3RH/
+umY+NZLIGhCwu6fikOnV+PydyLm/+pajB+niahD9d5HKEM9hhl9kCSIageRz0Yw4e511zjOXITS
xuvW3jWCMT4nweIY0+ZmbVmEpnMHnTXTwm3ajhvEdy29diNOfRhX63Q3rrjSL8onxygkxxpcRS0Z
tFEH4VUShMIoNnYB5u9gti0zuklLGsAhPQBqB8Ao43URkA/hAtzdpt7EGpx5/XL8yb/8Ypx941zc
99Cd8ZEnn4wH330qfjn/GUYXy0yJPcrijdfj+ZefjYuXrsb7P/AYlq0b0O4ao7Xg2kUECcKBReLu
PnpbzOIKfuKhH2SBtwfjqW98G789a5gBmDus09VlqQw7conZMY6KILtSzf+e3No5JPCQ9QnvvHNL
QOSdF/2d+pGJpZRhKQW9bJQBKx/xXOEvsFI4qeQFFCVAaQU36dTUFCZ3xrzEtmVB+5l53xgjO6lC
Sxegabi/c9OiZnyacRouiukMmCFM47q6dpm+7eJ1Ak3BnP1Lq4+rqVt4rYqZe9KspMf32chyP28f
SUCT94UMFkdLpt1FpeQ/Tf3GgPFAAlvSPXNjUj8SECDxWLZ7Ig8x6nUx2gKTI7yfg44iMRcE7GFF
VbCWcEErfVRpOfjPQE7z9P8wVoEiSqlDIGJPWiDIdFeXK8R4ANKM57SclkPX5a3MOSLsjOkipnCb
mVFa07SUDQhud4HZWNhgthDmZDYVs8pX5exAkOql36pgVbjUVcmqxDPIhfLj3Ks61bQFLLEjxvkb
ABlDvo0DHbcKSeppZTddNznK8/17mVTMrme52Ya+p6r3SQW1KWYC27Lsp2VbmY4AISslP9iydDJb
zB6lUvoeRMrWqOVbSJgl5MYUv8YRfEbCWtPsaK3lAeKb2FmRiL8MGlMaWIOwHA6jeOYZmBlIr/VB
mSOkcdU9LXfLpM0KYshvpqijrLRWmaJIPQF3BkCJ7ymngwb5O/EonVeoZmyPSt5ySJsOcl8zlzOH
E+34ncUlARKwXuuSdEFRLY2Wx9JoRxNqGvum+1K5qf6RWj6nPVF6aQN0BXejkXxOWrqopwHndSyk
W/DoF3YWAanB1z6q8eFf/RjBVix1wxp/W6iOuXfdhbJCaDF6GCAH1CVpsGKRWY8xp1eA9f0KDLZ6
zHp0xmq9Cyxl0L6xR9gEda7A/8pZQabt2sGq46ARbxob5wwky7rKGSytUJ61tU7M44J0ZfIdwlve
vH6deKmhJC8niJ8qA64qWHZ7JaxS1MzFnHNYDyv0G+OqKsRmlVFg9u0GgrfJgKTAAMiFQV2ou8oA
Oi3DgGW4z2SWHUCTX0CwbHbiIvq0DRg2BMJrhmkkty6AyQH4+ipWYg0X1EGL8hgTnhwIFVhNtEcM
WVromHURx4hvLiC/d4htyjFr0H6pS9FZz67orp7pITsLgK4WMbo3zl+LG/CScbI7uOkMWSkCbsvo
qSKWwgYDsV32WVaLP0TIyyaxVmdeuRojNOoPP34kfu1nPhmzLObdffHVePWFlzAwjMbJ99wRXQKl
C0PwZlfOgSgOuJOcpx8iuwyvSr1VIekuY4kskTda8AYufZGAF/yDbE4jX7swso/mSwBSN19Rixs6
y5n5rTKzT6vETHbR7K6ZiXwa4AobEIPcXCdenMVMiSvCbIlRhsVl6xh0YojYNEIxGqyZyaobgis7
qf55WTkLGCR7q5AYWauL5RBa2XHcwCZ0+mw7w6GP9Wr9D/6E6aMb8fKzC3SFbEbdCVEZVqY15I4j
Y5Z2IlFyMTgSkNRqs3IwQthAVjvNAOsIWgDupTLCbwsx2E6Z69vucgpdYfTs9gg0s0zUlRvEUrHy
YA7fpX1IDOa0SAZyMXsbYAocR1iTExVZ7ItiDCOWL1+JrT/6OutgAR4PY1W7bZLFrVbjyptkybsr
lP2NNzI6vOfK83Rm6nIzs0TRK1Ibhp8gIK/MQMrJre08x6M8tM5x/77kkMLGr0lPzfePVGZYQ2U5
5qHh6Xvx2Z44wLRcFlvbYEkMAs3TyuyYQZF6Kb8BTK4STQs+Qqth1pqpsf5GhQ7kjDFBAuRl67Bw
6Hj80f/2eeL9ML0SJHn85GEABnEWFy4nUDA3NwnoGMQSzHvqrsOQfDu+8qWvYHbuxQ9/6n1pTabF
paVUjlEsClP44VusLJxnNOCIRQH67eeeiW9+5aV47bWzjKygFR2pThydMwcrzCQS2GSWltTC1APu
wmeebVLGsSwc9n3AS6I8j/jmv33jru++7SH7l5cEnAIqlbtbWbMxQCct5EkA7s2b86l82QrkKAet
Pu/cTIzt+wEgR0tNBKNTnEd1h8EgxjNpIdslnm8XgZwCzgUL8jX1dJYeOoj0BGyWyzxVxm+rAFfc
vGLZzdt0MhL5LF0DpWV6Brz3BSmAGmNjeig2FZXv6D4WYCZQB4mzsnBPwYRQtSzp8z+8V0aol3FX
GHcFI8FH4dV7lAAAIABJREFUqrpMALuWjaTRClYCDDnqM0iVwrH8B1YlYgxaACmBjoulCta832Pm
mJY83YAtR8xYU9Nq+CpfylDh2QYocxUQVWfdoRFcHA36311TfG7j6Zfja6/z+SzqIoTJwIWWJ7lF
kJXBGZ1FpEbOWT80tiqDIhlFjdVKKy7z3jzOo9P1IzHE0itfuv46aW3EPckeb1h3Rm8OKc80szWd
WavUEtwxZ8fNWXslt0kqm29ZEq1H8rMQxKcR3OnMX9ku5DM1YaDPMkmfcmhBMf5qkNxbXnGAJnCS
QwQclifLW7FoCtpuzImYEp7K7tPygAVGVVwVZmZ5sD53Snubp24ie1agqDFXeygXvxYhdpYn3dLA
gqJaSrC3f3FtQWGVpnwD3xWwOgzkK57vM7DrqsSR6yTDkbJ6z1E+PElWWEhMXJpZcmue0Wafngx7
AFuWV97NWlIQbYuqk6yFIq2Ai7qHDN9Em+4Qn1dCCS4WNnGfAaw+eV+c/NmPMH19MjorfFUD/muC
TnYu3Iz6OLGrDNjNe8DMILAn/YZU7ZeAid3uHi7DzApiEG6hCcTF5bPJSHKABWtA7GrPQHUD26mb
AwhdbXsMBBpYtjrItAoWHj9ftkK/f4uFH68xmG0zu6wjYMWCP8WMuHG+ytHjUzV+qqdboo0JKB/F
tbeLtUuX3i4gqYN7qUWeeyA3Le5dytd2ZvgUsTzM9tN70cVi3KLvdVgsM8ens2yfIsLBwZ7GCmea
9aGRg7cm7ssNrCuTUxO47wE6tLfcU8O95aSkYfTCCPJ6/sYyC4xuo6eJGcXqkgcw7gA6S4C3CQLX
tU6DOnDNKdsBafTnMnpnmgHqFkHoe9R7lbjfLV1olEELUxVd4DrUL37jBd5pxwRg657bTmFB7BPU
vxxLN5eTrnrsoZH4mY8/ErOnD8TWM0/zGZybrMt4grAfBlsL1wlcFk3D7Q7ssMB1kBnOZnW4UbDu
WJe03FFoGZgjNBBQpXdkQOkCUyOjYM6sg/s8NHNCVQk3mNxRzBNP7HOCKcBir0jvVI8hD5UyLdae
6rHSfJvZjh2MOGV0WwU5mSdwvrXOgqpbK5lFDT2TB4Rq/E/EJqvUef0N76VrMvRFdjGRgIri0t0z
qwyYjS4RcZz9EvvTX2MJe47eP81+gj29SIJ4RtKnY6AFWAlk00YIsCI5UYIwAg9QGd2B6ppkcoY+
tCnEJA07OrSCx6IMUKIPg/i5TlsTmpG2VQq8ukx5OA6PgucYscAzyYV5GTA0S5DU8D2gJwR9HrPk
Jg27+sxeXL96JYgpj4cOUr8ff4KXxmPw5b+I10n7kdsAZI8BmRY2GBkAtij2i5ezOCmB1DPsM+wn
UGwKwtoMyAu/O/0CAenoOKPh8elyrKy0GUVmoEzaSjuSRGhguRrM4RZYjnPLjbjIp4SGZk6D11hr
GLPqMAhf33ueqZ1J0qnAlEwQR+Wob3eMlXNruAWHsHA5rTYLRrZTwYSgrLWVLYId+TzR1CRKr4Lr
bpXPEPDFM9w1Bqffxwq3J+49kawsV+avxukHb4/ltfV4/htv4C5k1ueJo1Fj9oRBpeNM5/UTQ5sE
Ds7PMzMCQXr3yYfim089zYiIDz7AKNt0Lv3aAHjWXYFjaFRdQlpIkjRWCNioMKyNm42Us3MueCfx
3v6J4tVzr79zS9/UowMj7eEh3qM8binGKZ0BZQE6AiqBVRZ3Bd3oQLrsVohLq+JT95tpKZ/UA8yL
jqtCMT07YErLP98tXbriLCLzLbNcxigrHNcRwrq9tuCDPdyNgrgUL8ZnJQQyWmcyQGVZBXkCJ6+p
kEnoHVsGqriXquWzPnBLOdMRpKOxbS7LoUzRWZQeoR6CrYRjvcDuu9laVKhLfiQlR5s4w9SAz7RA
HuVTKRsb5ei+yCjZT2voxkt1kc5cd1OVDhDy28QFagHQqlbFhZGBOayygM5dBFDPZToQ8i2muie3
UgKLKlBGwHxTMw/v9qBPCVeHAhONxzTvA/H1f/FCvEGw/ClqpXvNWguy7PrSwBgi54tlUsjf0kOb
h/LL9JWhBcQEipN/fG8B1xn9/Ed+OKq/8evx0R//TPzN6kX6IeEBXFe1q8gV2NjOuGIKpuNRegl+
TF3KuaukDKnPXF1e8Z7vKQd9V/AD990qp/dN65b1hzctNZA8WacSz3FNLuCLbLyJVYld4GW7uvlG
Bi1pW357nQgXasi35fjnJ0pcGLJN/EuVOuhSNGrLUARDy1fYVykR9gl+UzYASFX+M1dkSuLCfTak
f9pFlVeeOBiw9Ikq/uadPEBLXdUxwBg+dOVxPxkiZaRnO72j9ZS6kJCuIFtTW5yWK61SAidbTmDq
e6Zsu2kR9Ex6dZn0YyzNMB+gbeEi2tbVTPyoXxMcOVKLX/nEQ3HoJ5Hfdx+L1nPPxsrqfBy+81hM
wZ8LzJ6sD2Eh7DjbK6OhK6kLQFkDhwUmUZpYLfKsGl6TN4l5En25fpvuvyZgxz5tow7UVbSX5UXc
YYlx+SKkuHyLVWOTJYNuMHt7iXCRPQYsHS3DxAPdc+dRPjODAmcl73VicbZwKw0z9b9CuIXApkb4
zAqz4neYcdUgmNs1xrSMKS9qWCW0ipWJfUqhIQxcnMWVxVVBO+qkC0tPjbyqNTVvvBUldUajsY0P
P3qCPmgwO2CeJYxsb3mnjrWhDmBrI5+NI+tAiyID5wH9sYulf5M+XAZ5TyP3d3GxVrHKO0nKCThb
zPCtlPiSJO3irOAS7d8BRBaR900AkK7VFlY8Coq7cDyWF9ZxHdIjkEvnz19m3cutOHaoFD/3yQfi
t37lo3wRhQVEX36ZcIG9OHECXcVAq6elCJlSIOYHVkL00D/gtwLtkJYLoZ22wRDThP8kqwu1Sn0Q
UGXvV26kUSH1zgkoqHNaqSAJQ/sqm3KSflCkDZ1YIzBNS9egd9sAKRci9VvGDh787JEGIRdZLwBa
S/Jzvhq3s/xAA524qq7B2DIEYFbXJHClYVkAlY0WUpapceAfOoGdWKakHOwKDrs6UCLtnp9iFywc
YPc++AYzEjuWJnp4dEAbNREF5zmvsf6V095YxR+aUFjqzUAguUqwXNJo5MuROuM2gJd4HM+DXj/+
0MnoANQhlUODwN48z5O27j4ANQic59wY0RAbHoPrGMjPErpJevYTQpH4+CP3qdwTHkE+zb/4Zrgw
6+iD3DsewZIVMfTcRoz+V78UIwuMrL/wxbhxtR8PPAESww+5/NXzcY1XT2DKlXZp2iFWISbsJauU
Qujke47E+H/6yzHxf3w+vvXlN5Kgup3rsAKmf0HYIDbbW1i4JuIKY8lX3rgcx4+zDOAp18hgKYvq
CCMYRCGdPn2ZksZ0sTRRuEhdsdRhxeAi1r0OVr8ipuEJPmMzASjbIfjS2X0Pvf9evpd0hLrrfmF5
BVDnJDMidAO+8dK5qNZH49RD9zDxBXcqHeRdD78rXn39zfiLa19PYP/2J+8CWOK2XKABYcSmIz1i
DFxZ9+EnHoljxw7EM995GYGHy5jP+XQwF49g5doCXRnL44yMDPSgunhfsKVFRZM0VeA3+9s21dj+
piKx0zgadksxILduaqGT4fcFslYZy68bzRmJPJ0EkEGOvpcW/uOYp0xpxiJJOmPQ2CJpup+r1p/0
mRbSc0HONPMQOpPZrZz/tsCOIF2CYhhBMMEsEePMlog98ruO1nuUCRvGBhjvoLWIopEPCoWO7vpT
8rI0yegjMd65CchUMjS5UuW7G3xwqzgKYRVaopUSKF2HNjwumMpirig+wiKLp/EZHmIX7PjpKGO0
VGttNGAfASJwESgVcXPWKGuyWDFiFjAIgJyC7nObuD0PH5lL7tUtGSAJIMpGRV0TyADZHZSWH4FN
8VzQYP9zO64R5FpADAWZMTyMFWsoFi5ejQMsKHpw5kD86cWFNEgh3Jd+k4VjZ0BHC5HqLQMY+9BG
Ze/1TFL5y98UCelFuC0p+A/L8+VLMfeVr8UKFoQxfru9nbKmZxrylV/g8zyLkMpU/S37B2JbQruM
gHsaQ6dcPLe8MraldAFNWiNds8SqPUFMZr9BIQF2VHTWbQvJ4dPO8HMtLSOmmBrAtX03WQY8stp7
Teud7tIaYREzCQBv8MWNFSwaOOb5Z4uZV/ahZmcxCq600/WQB/J9F0YqK0Rv9TEeTxSwL+lKTkyb
NX3iucQ6pCt9PNfb0lQ+caJhwJq79EZbtC9A55rKv+GyAfCqcyuFTsPsGZWkiK1pJv4VdKGwKZ9u
MwPK68RrNLGmF1nzaUCcrHJjHKvJqWNMOHoPS8n8xMnoTQA4rr0ae1iEiqcOJ4XRYZ2qublD0V5Z
j5y+J6xTKQQFF1UXRdNDjuriw7sGkGBNfYDpFOk7mapITFaJwWqbMjdZdbvDp0R2nS2IAsnxrUAX
IPVansD1ah75zSy3+cW12CCco+Bn1wAUeZSU4GMcALhDHMtmgxCE/CarpuPSBFjtMetsiwDfEh91
dlmgUh53ISBsACDZYaJH3oEjMmWK2KwNBio7LKFj/ylhXdPlZRxmB2A0Mo4bFCuT34TVUuVMvHIF
jwZKU7ffADC2Daja0cpBu05gZBjByj5MrJD1O/PWvM0eY8wSnJtjVjxWeK1nipM8FjkD3m0eg+L1
RKzzMWkt804pWJ1fjBPTuBWbq7jgiA1j0NpiXShb0zW3ihC3jnwcTAO2mJj2ymtM2mANrMNzpfg7
H/9Q/Nyn3stoAq44g5WItP1ItB8LHqCfeni0ygT+D5wgRT11kxaIJ84B8IZds4qJbCUmVKVFKilN
QjMqefgnyTSsVzl4T10jszmodqFzpYR8Jt4awAtJrzCgRApFDWDbhP5NLH+7TYL98T70R+ij8Lgx
3x6TvAU427NKWkQpVxf34C6hEQOsq9uCbXLBeEVcTGJ0Rw8a1RMd+ZsBJXCHGIUumYrMs6mciXg2
iNhEPJ86FUexE00Yow4AqP9+h2OJiRTARUhQAHhjwAeLk76gFfzgJVnzAkXivmicRWwFkalDW1ZB
yygIrsxiZsxuDfgZJIwr76GTMaGbEfMkq2rG4Pwl3Fx0Ju7h+Ys7aSvTfesSAA9wBq8zY4LOeQhm
msQwBcoh+D8IyUofgB575LF48NBKLL1yicXUyPPmpei+ejVePcOUXJLKPfFwxE/+dDz0D/9RfONL
5wmEZKQCmhxljRItXOA8pgQntz+GMsp07F4y/jo0fIOr5D/Kas4wyNTKVeIqcD0i7pjDARatYr3i
MyBn5kH6Y9HHirZJQ1M0Fr9HCeoO5FgQWDGikXlKtN4OH7gtMMqqYXKt49cvDwyDRdAy86TDlFwc
VXH2BafLb6ePUt5xklE8ZtdhLAU35m/Gi8+8zkiJNUU++HAcP3E8Lly/EiMTw/FTn/1RFn47H1/8
86/HMACix9oeQwTNjbCqfL00Go+/5/H4xA99NJ76wrdjkUqzegRLkGEiBtV3O37ugS+Fb1/H7M3C
s5QhMRbcrIXDDu4aUx2EgKNUVzRW4bhmi0jbgUfqCNxXIYGj6GgyiQytHkh/E5hyZKagN/jcpR+0
8ClwdHP4nUPT9TypN+jZB2QoJGoof2MROggE1ZMKQEugXwbQ7K1FLS18aaekV2v9InG6DMxE+e2Q
ecpUccVkhH+ZEYEiRWuhcRIFRn81zOvOpGkDILTc+T1F9ZCVyCEcrTXy0crxx/0dG+XXImBtde3t
b9JGy1KiAoBF5d0HTXUMQlX4CozoANbfafNeSysXwz8KPYXmAP5xbSxjNRwh9xwNI4SMGWhi+TBW
wcVhLbBt4OeXEiDiGeuYlrQwQB23a4dRWws+FJSmwREds8KoRiHtd/dsN2eRDiNojXezPKkOJL9L
WznTRwUQm704edtcDK2VYmu5mVztOLxTH7AdeQIxIeTJLDFSREu5LSiV/KfiVnBqH5IvXLDSRQFI
lbMm7sZ/E6+z20/v5xrqjKuuUZVZxuRHaZTVGrrzT3BlXgIq/2UWJCWhTUld+Od9n6RleFo+dQqL
V91t68xt5jNe8691sj4CNvupH1fOchMuFRis0p/JlZWAuKMUzlIyRUuTQUb6Ht9AKY4wuuTtFsG5
frJZCOORxS6oPcHV3F1gX2VXLbZwD+lC1voncHcChGV35WkBm/3EMmYf/qaWCUlRcjKXrqle8CBJ
oXTsg9m9Ijw2gKmTnkDWaj9IM1e5bl1dEV76+T5DQsAjQdzFMdZ2dIUnNj71YmheHmBVBVBVKefo
JLGMWK908V7BmrCDYL8LwX74g4/QiBPIucVY5/MZLox64t67UEoT0Xyaz9xgBZkGLOwi57RKDFDW
GBSwstC68H+3Bb8Q1F6Bb1spWJ21BwGc4wzAyngLRivILr5/uZY8LMyCJlyDBRqgD32ZQaYxVVrS
enVirDASLNHP8dIBUioxeZBoOQYXbfrQDspvh0D4PWZzVwFeY9MjKSB9dR09s0BcV4ePB2GZGifm
cIzgchcFLgJSGgClPutbueyD8U1byBJjzSawlNteTdrKWMkei5jmkGVNXFN6TsqEYzgg79G/hwFr
S1jL0hc4GCA54WicVcd1rV1bWGDVcma5AUCdXXdgZprZ5kymAOQsAm4axMa4MHGPGDQHmrb7DiBt
k69eNwBKbeq0ii7J4z7dYcmZVRbndAKPn/epoJvwk8Yeyy30lFF4p3ZcSolB/3vuGo+f+dSH4vFH
HqTf8yHmv36JtSf9ViUKGtdbH/2RI2TFle8HeEJ6gMSmZniYr8aANMe3cfuAvhyB/xUGrvJt3zhQ
mTOZ8BWyNAQgP+Eq5KV83QcQi8wF1XJxisODU7lC2vCHdSyqk0Aw0AciUW56A8aEMgNNJ68pN/f4
Go3WPelRQs/Kzi7PwRQFwiPQP7SB33jM/Y/csqsAA5JFReMQZLHPJGZXeHnf4oh/Wrd+e92R3yF2
QQf96LvPYdvhw8TEQlF++AMTGlXFKuS7ilotXEUGF0rPHAF++FCSm89AxWSdAqzkREIQrM9CpCzW
nhJvkF4LJVdLKIkPTaIUFllMdJS4jwnQbG6YEcdhnHUu9XBpPlqAA4P7advYQJpOgHNuvGbmlP0o
dSTwqQHCmb1F61RBrGxMLIk8ZUgE4P2LlwFeXPs6AOyTFLf+ud8GTU3Fs7/9uzFdQwiBbieQWufO
ZzS4h1epbhJm0lWlYBUoVRI60kFhd5ldGnq/hz/zHG64N1jj5J4nH4u5j78r/tKRGDTqkacuRIPU
08wHrTEo0HKlEttX1+KuEydA2IX44ue+yRTXJVA9U+Onj5AXApvR01Nff4YcIv7eP/p0vPsD98bn
PvcnMMsgblybj4VFSgrfPvjISQLaTyKQGswEPBV33Hkq1uhgP/PkP2WmJGvxvf8Rphyzzkl9DpMx
4JGPhf7zf/b5eOuN64BIOixWmk6a7SljMWIvsK41HbbAeiHbWOf8UK+xWq3GNgysVacGk+K0gNh7
MMkI6KypYsfXPTo6hseYb93zCYRRFvhzpkcLoNVld/SSlCh8oNWpRifuA+g6CM4qAalasLZQ9gKZ
umuO4K7bYBVgF0H0A542dU0zNsJsmfo50ppkpoxuQ915rmAsaHVpCQGJLkY/3uo6Y7r0eoAFR1R+
VsIlC2aw1g1PaFEgdmJ7QBzXMvlRR67MHT5IbAIzdPh2WQFBl5Z6UADYUwA/gjp6LzvXEmC0ld6x
+fitLa2qzjnsnP46gleAug6Wa2xR9WQxSp+UIc7JgHHdcS7+OcTigmUEsC+rWJx4MMZMSmf5rSIs
DaadmgI4Y9LWCrULWKoR66D7VBfMOHSs4Xr2S/UueFthlDJC/MUWrgynXGul8jMo0lFpIWhtIJzS
Wju8IxC13PJBqhLl7QPqg1H5JoJoht7x4MSJ+MiJh+Ppf/ZU/OE//xyTPSYARYIGl4gRdugi0w2v
a6mVAIjOPBW4oMo+JvCSsl7zOQGIUsdrjOO5bykESD0UPe6ldN8lCzLgJJjKzvxregpfr5m6IMkc
BSCZeOATuOSB0k5P+4YkTjAlPan9CNiaYJP3kFL8y0CYqeq6sHRCDhgh3c2AopBOAGX6yg4jx6yl
9cz+DWq491BaDkpG4O0W8RHXkpPQ5Req1C8PiNyNi+zOiUyrsQMGOrSf349zhqmBynnWxvJzLn1+
W3bP3Rzocum7wL4PQBIUS0EX4KRJCdoFEub4Fh7t2sMKYFxMZhmmff3NdWspOBNMSkF+JpYX0Nex
0J8amo4RlNM0Mo2ouxhg4SljfZsBEI0gp1zWo8cg5szOcixgpb/3sXvikc98AEUygi6mbxMHkiN0
wS94DPhGZQ++KzqQgwcHKP4eMVUruLHaLGcwROD4NFabNPMaENFOrivqw4CoDYiST90GWNq0eOzg
6rt8eY0+7+ALhyaj/nk+0XSeuKodFuPcYUb1hjPT+YafHz+uMYhwANZkoLaHm2iAjDjAwpq7TlBC
7pWpIwKG/9ADxdREvlxxsMsinyPosTKDEq3r8prtsYX8WN9YZ32pAwSdrzMYwwWspYpv6grrR0cO
xY1ze3htZuPm/DWWQxmK03zL5cblqyyDsBnHT83Fy0+/wTJEU3F49lCME3/b2OgQLgKNUWrTk4fi
9Kn7kVks8SCgQDbIz9JjD33kMioLV28wYFPO0odvWWrkcifwlPFgXFwgvAbDwM4yOgrwc5AYtzEA
0fYSi4mwVMHxI6PxwvMYItAbn3hyLH7nN/+DKN53ewSLdL/5+ssxN02cLrqhiKdmoC/N9cOIu3a4
0SF911vLIa81BSVA5AcVAX2uO5WYiRntedva2CF0RfocCxaaHAvDagGso0+08ugMdWah9E+75wjR
AXTFBJbS68Kze6TbJlxCQ0AXC/0uQPIYi2NWoXtQz0tnL/NZOsJt0AHHWTh9/o2LlNVnsSRT7j4D
9dS+Pxe533WhS0LCUqcRNJElHTkbFSpE7GqKqP2j546jZIHFW9eHOBqD5NEqMxiJ4aMVQqt6AeaJ
KkBmmLazYwK0k9vP9NoXQfZYtTCyZLQzYbYWzLhJ1P0wsxaKdJwigKEKoKkTXJdncUbdcEWsDy54
VcXV1QVcdWDoAcoij7IYrK0SUNsmrgpQRaFagKZUN+g6eT/5v+8uOgQmZ81XdOhL11l/imdmj1BP
ESPlYcWJqL7veEw9cRzl38Zy04izFHrtz5+K4TMv0PDFuOP0oRiD8W7Ms/7VPaymM16NN/n0j9js
KPs0u1Wyy0q3/V26KjS9vsfeplEcae7gH64ACgZTfC8QIdhjlkSP0VQaiyLtVKh5FBPFg9ltKz6O
yXeknvv2m/E3XzgbTdaF0KqxzdIT89f4EATxCcN8GqFEfMu5s5eoQ4WpsY/E2bNnAQ8IPjq54HME
Groo3ZWLNwAZm4CGyTh56o742I/fEy8//yYjDIIuYdZpLGp1Rj//9x//WVw4w6q+TKMfwjqlJHYB
u7wjADhDIKJSEbrbXR3d6yYcJ0YsQPd7zBAbYaSmq1JLVEWhwzMan5wJqRvLWLFJFqgbIQB5Biae
nZllYTfWU9KsTazANLMVFP76wGVmGdQYK7/ofuJ2pgQjSN7z/scAEgXWEloiT3o3ysGZfQIzg0gF
U543iDHwdwXA6n2/pWaauu+kZzYbE3qpJLiu9bFq8CtfRsf6zbUinRDTPwv8YYxJIMfg7i6j2YEg
AqGV4stEQBaUdAQeCVxRB9O9ded7jgpQaam6TkfPedDAcO+lKdW8YRxJCsw3ae7Y0bS46d4rC7RQ
es4ANH5EoWExyDK1peuA6UrwtQJCTuBVRhgN07Y9gzkAgMN1nDUIoOR+lflIo8eoroyAqgGoVKIJ
5BG8nCdOYxxBNMkCg0ePHmIRXgZKgMAmKzC3EHYwBt/NLPOtMUbwtK+8XWLBxYN8RbfDt6ee/8oL
fMdzkUgp1gNCoghm9u1RcpfyiUKlXbChJBKoeNS6JHTxujRzVCpn2U8kiraiTH0Anvmt6hfcCP32
W8CUPBeIZXBHWGBKGQTSjSUoSn2QJ+zLtpA5WKrs/Sw3mP1W3qaRldW0TF+4aL7Zu4pny6Nc2JcW
Wb4GtltO3Y1EoaSj1qUB1p3aaJU1+yZpfxYuZCbYPODjJpARUUagAS4KjjuUwDqqrjrwqzpIQKZU
kQYFrDSJfrRRitXjHdvLWgqUkqWJIz/TtUQdwZX8wgi+mCN6ykECVhpnm5puOofBlC0leF/+t33k
U2cbGhDvZ1oEIFe3Flk/bwJZgrMQQDXG4PgAExzylNXA6HVcap9/+Royvh0/+x99JI59+v2kz6w3
4oD2CHruEKOqC9NBUAEgr0wzHtD12FK/IVawiOUH9mUmHLydrMzUAt4uAKDSJ17gZ2IrUvimXxzY
YnmhVWYZbmxg1QJUrDL7b351j1mYTWKqWByDylew4o8AnEp+RozP1rhEDoRIVqA81iW/0FDh+tQM
C8Ii04yZsq39p67yk1jO3hsm2Nw+anyTgFdQpVvOZR+E5kNaTWZG+GzMZiwu3ORZ0kTZO9jaxj1X
yrGIBwNUPwivQByQtl/c0DI/wtpW9rlRXH4j6FFDF4xzlv419OhIdTKOHLkj6YtNVinfQRn7RQlj
d5VvdeR9k8EqzYp1T+DKiWwMbVfm19IK69anwSr0VaxJIxgJ2rimlynnMHkcnanHV79xLljHNf6z
n384/u5//mkMAxEXvvJVviJyNW4nXqqLT9TwCntKEuiGS9CefnO4zExEY1v7DAIQYvAcz8D3yq5c
wag9/vnNOuWXPKgCURfQH+RdFw8t0N5d5P5APmU2qJ8hcmar/CtT9wBz1s+wCeVqxxAK5V6ahsgg
AR4tUt8itNnDQteizXICTfsQtNJnkVyw0MxZmdJfWVz4+TKLiFIw0k7b248KCQWIR8uxfy5YEETR
TMny8v8x9R5Akqbnfd/TaXLOYWdnZnO8u70M4HDIOAIHIhwBEiQogiIlEjBNMcgqukjZhkTL5bIs
WWVjNRKIAAAgAElEQVRWQSVLZQZbJEQSJEgWCYAEwCPi5bh3m3dnZyfnHLpnpv37vd+t6L7r7Z7u
r7/wfu/7PP/n/yRtSwVYBzCiBhfJAbEb9E+OJic1E1oQIOIiLChtSMV9Uit5zw6s2o7rOiEfqvMb
ihXUXUsCgF1EYzfVdJlMVeJ4qgT/IbWZyPS7QsEX8Ss3EmRXC5NVi5Ik/xTfPmqcjLbkEkOhzMwA
CKCPiGck6p/Dg7By1OiI7r7Yo5LugdkvXR0kJCzTfTwRUjS0bGZKl6P5cA81shZpPng2csePRsd7
3x4jD9A3yayCEydiYKCfG0KgJAupDQU/RxG0raWduMOxbnHujgm3PT0dP4aC/aahSOPpuDo0YDjG
1oaj1ZjiTiypqLBAGobIzmOCVBBaWuTOhgITyMrdunwUzvtc67HDx2BhNuLyq7ecU4AOsmOgjc0k
tNpwHcXNGmEZLBa6Rm/Ih952D9XV57F0yNYAxLpYRk8cjoffdgHFiLU7PhuTk1PxIk0uu/v7Kdnw
DlrpvMIEhKVD8f7eF79J5mEnjCE9x/CFJrbHADmsRRW41WyZdWkBlBkXXRVyBQ0oggYss9SxHGbK
mCXrLJW4MZs7WV1pBczq+lyKDzg80ptA13YZBwIWlC4r5i4LnwFj5LbxiTcBbOuol9KCoKsDRK5S
L0kWZvTYKAOuoN8n+J76XICeVir9twPUcgAChZG1wcx0ahSg15HWzPiyBgnwtNI19x9h76JU0aSY
PxUENy2Hu6IejthWQ/UEDnrcPJbS4gL1naijZpxDI8BRy1RXWZ51ICh2P7ridJMYLG+PvoSUvByA
bpogbnf3yTZmC/qf4CstRCdNmj2ZSlYo8MsElgRbyTXHelaw6AaxjYWZTBbdM7BcKSJgVHgqFOuJ
XdBlUgYAqgxS2jZCzL3WwE7J4FmnSzeqoDKBS1lDLU2Da3VFuq6ZRHcr8qdXwLYKguHliSJBMJty
bkVvg/h1s9biPrAe1i7KqgGjYunaXPze73wlfjA2Gyfhakbx/SO/vKq0ljT4POuMwRL8KFodLj/L
hs1ryt67PhwyRyV79TvXm+DI0ZN/El4II+SOEsDgvZDGR7b39Patv+8CMP9U7aEEeRrfpAObK+Nz
QZCzLnt1BvqZr0KY7G9fM0CYQFLaxuv0XD0bfyGY81//E34KCz13wY4rn7Ok8KSNfd37Kgp0ETfO
HEcnOgFAZSipRUJtpOxq4eplRLiHBpizNNJ8z/bPdb2FtrMXzoH55pQzPtKHf7/1jr9c3/6VzWMz
DB1N57noJGeJA+a4c1CWNIFy7nmJz8ywLbG9cVlC4Rr+luHegim4NTcNw7SCkq7DqOrA5VaIG/SQ
u7axGIPHGuNDT709Wp98CD1A3N/qVGwBXNoBLsZRWfdQd7Nmp0HVexR89M7UwNC5zHK67JAhnlMN
56RCll21QOcObp81aqutUVBzkzIyO7inKzTrzZl4xb4np9djFrZnAsU6zxgvI9N2GMdiV4kEJJSG
cxkZZAJPHWsmrSGuKa1xxrwWw8QgcEETYhnLnnvH+JU5F/FEHQyxoNSwhJTtzXqTLa7ogmctb1g4
lG0NlB4aHYbFghEnlnFynDHArdfVOUBcLGUAkL3KFEMBKngFalAG3s8GAtfriFGz2KvZ3uustxJ/
HxoYjqPHTsTw0MnkNkwxl4yaLW00apsAuXUkQU1N3CHGinp2GN2yW3XWu0KWrK3gCkU/Wih05NAh
gFoLbsIF+jTSHQW9XQE0vXZxLMU3/+NPPxYf/8yHuHiY2DsTyehrBFAu4TaU/dI4TU2nXeSMud49
26zZUsmQD2s95pQ3uO7wzbHYnYP8D/gm7oJZz9ohdMUQh7SNO5CMYMCdayZbKGtT4WiUSCo5w5xM
kkCDkP1ptuQxPnWJK9RkQPNcpy5N9dg2GaTpXjC2eiKc7nncOAewmzl+Y+KWTN+moRIA48JPtxa+
YCuTouCH60p6i1ffC6b821cuJT1kf5hOiQXyPYA0besCbvMSh3qjhmrL46AKr7OZrsmWXshjSgmy
LM4J25hYKmV95yCABsxkhh9xggl07eMyqgEYlHyt40uQmANrjYo8zMI+CrkKEqsyaaqgsSoTIDXD
1Q8N1bxN4GGRDKhaPu+CLssR6b46RdYTY4ZOiPk3V2PlmTtx7fmVWL0NS1NcjgKFTcsEh1PzjUVk
d3eA44mTkcdn7+/3p2A+bk9FzfEj0fXh90fTyfMUf0NRXzjGliBZbtyXv7EQp6GsTv+rz8bwjTdj
jIsVTCnsHce7Y+i+fTiPfG+TCy1Yqfsl/l7k3A9gmA5RBZ7kXDIW2IofJ6sbd5LHUs+rRpppEDnQ
e5jCbGsxSU2qpgYCykD5y2SfNBAk7LhY+E03ToX6WTNQ2o3ELFy4/564de1WAkOySFok7XQ9t9v6
dhJCuu6aYubWXHINve3xh+K151+Pr/7OtTQh6lsK8dv/+d/Gn375GzFPRqLNTneYXGUZICbiHizQ
DpkVqVYKg95ozysyZFYpQrqHVVAPIFkkQHOXzJkWiqE1IigVjm3U65Dx6KRJZw+xZ4KALSjwmakJ
YsUWAcvEVuA22MXVJmBYXKSbGLQ5OIZ9cf8IJm+lc/epcyOsQZi4W2MUUJ1GKFRhv7AQmWhlQFUZ
cFVk8cp0aVkeIpAyVULWx48g1MoUnDLYrFUCtLEe08JlESFLAYk1XBtuAMBiifZAu9TFmZmjsBzB
/zJBgr3UFxCh6e98L1ElW5Uy6vTZixIBdBk4UBgLEN56ZeG7nUpNC0nAkiylTKd58xECTBb2KVDR
alY4OyaySogRDpaVRhAU6TZkV2yLhci1KfjNEnLcVHPGwMn4qd4rCJsEpBFoKgV+lixr74WZoF6/
rsYSymSPbCrTx824lAH0XHTfrqKolgjyXUYhbeJuLWNhe7lat7Vso5G5g7W7kVKac3G4pS/eder+
2LiN9YyAPtZINCcWpVBC1kn1LRDIXnX9ed6Ol1cq8+RV+Il/63DNwID/+mn2rwLU/4RG/psxVozY
W7/xe/Wd27iXbG9pLN/ai5/7rTLR9YcDBeNJuOMSzcBRdgz35Ip3P9lZ+Orv3J/7YRh5CJ38dXZe
2WzIju8v3V4Z4uesfN4Zy4WSkeWQ+UHZTc9RBRv3lm2jgfbIDGLW2B7uHuZKkIcbkNcDWJvU3QHF
4wyxtYtnYb285LZjvmSgivPjUM5H//a6POO7o+ia0P3j1emykXNQIOXwUqTYPv50rqY6ZkwwQaX7
17BId4nj55n/stM1hAMYIjBDocYtwHcelmEHo+Da/EQ8c/NSXMed97a3H42PfeZd0fjkAygPQvIX
cH7ihqsiQzaQ97Uk5RzwWkAhKnFN+/eqS6wFR7dKcchd3IMVqmpXAVU5jSfYmHVc2luUGFiYxXUP
uNpG7q+T6WdvzDLFGQ/oGUjSdVwdm49l1u+m4Ec5RQHPApmLrbBJjdQ5LHMPjHN0bWUZuoInxCTX
6avJRzvIJu+DrJq14wx0F4QZ62QhXcspGAe1w7Oc4hQZcX5f0NVJ0PYCTFoHbPDJ80eRqzsY0teI
c9qK7vZu7iDniRwrIbvrmRPK+4ryhslTwSBup2+lJXzKAMZ16u9ZxqW9tSdOnDgeR0ZPM1bINv4V
eDcguzppytyK/DKUQvk6NTWFDmcl4io0Q9z7LTtTNqxDnQrYKgBsLPzFN+yNMUcHrC9SppY1/Mf/
8Zfi1Ajs2uJEXHzmOdyqc/QfREZy742PLSGna4jHTOVd7FnLMVKIFfvNYYDJ+Ct3GDCW1FvziOmY
mCjGsEKoSdXjOy8FW9TmgvZkW+4+hqRslqA2x07FWPzL/GdO8qExVQWuQzIAAcorf8NuldFL1kWD
A4SBQ/MyX7YBk/voN+M465Hp1tncA5xvMY8EZBWudQvsYVPoFE/c3sYiMZWbDL6DZS6C/bugfbrk
OdW0rFxICgMu77+CK0GWFtLdz3hLfyuoKH6ss60fwAQvGfl1f0kQHP8KHhRmFcwrXackrqW2OLWA
kpomUpAJwCsggKFDkvIxpuSA2gspW4og2xJBhdHIeYpMRLaiUyZhQmswSK0o9SWEvV3a/X6STKVG
gNHliSy4vUCtp7kXJwOsFacHmQ+8St7UcgOaYXxyMGH9CozG7sAvBvKpxM0XXo9XyDgx+PhT51m4
zd1R+aNv0H/wlRhsXIkSGXoFYpI+K3L9zvXYnlyK+s/8ZAz/778dYwyQTJ9Ppge4PRtX3zvGlhS1
0IEgy5Bb+2RNcw3r89RJoaJvkb5TxgEcEIvl/MphzaQWAEygMgGVHbQTeP47b8Rf/vE34s6NDUAJ
tHcSXhwTS6JCAVFjGyw0193RH5NYh899+2K8812PcnlH4/bEHQIlt2MctuCVFy7HsbOHYnBgANaC
MSGTbHKC2h0Iqycff0/M3ZkgpusrsTgXcfaRrnjn/T8drZ3/NJYoDGdGzy4DtA+rUxZQMKcs3rZH
FuIG9c8O6NG0zz3dpVjZqXMn4v0ffIhYtvH49tMvMA/2op8FrduO9R1DMIu1bLuIcraqck0dmTfU
+prBtYcRm2qqCEvraxk73MG2KbC31g6BocgG+nW1x7FTA6knWA0BoWWE9dLsWmKjdgFm2xbkYsx1
/8lyNcKCNsBSubAUzo0yo7j9tmHXjJGoq21O63ofkLuF5edCkLmpQVnVc3wt5B2stG2sBtkhXYj2
bNzmXqmcpLy1mP1O1sZVVU0gxWXu4ucjVxtzHYnBK0+lAYvarw4QCkkh81vdKrpNCXDht8xxjAvE
Tdo8HYex132oZaOVpsBOGgLhYR9Bq60XGRPLN8gqrVFssrHJkh4wf2RHmd1XRkB4luUSbhMUhrWt
dOmqDDgSx1cU62IEoIKYivyOs+JzZ7RnrJAj1ABL278EYgUoYxWvezDBx3gr3QwnsXiLsFnb46tx
li4PDe94Vyy/Pkvc3DpudVhq/gOm8yvFtpyQClqVKZuTrSVXkueFak5GH6OY3gtNhA/cab7BvcP7
DIBl55nGlt9lnylwfXhlXo/vsqO5v79/oLjS59n6df9ubwC5Z+jDte2D4U17yu5idt7CJt+5jfLQ
8fAaVb263wQFnodgyqML3txrpv6yPoHVOoQ9YGYX4e6YlqjUPYVLx4rrBozrBoRjSE/ljU1yLTYp
wyR4t2WSDpU9FG7mHmS6API9anb/3Ja3PPwkcXu88deCg1Sc1jWunGE76xS6PVOOB+fE+tB9bEKI
7mJZF3/tXH9rt/zJdfFxBdmyQ2ZtI27+wRHKpmJ8XB67FHcIZ1DEv++BtnjiFz/KQLF+1+8A0pdi
gyrmvYd6Yo64jTVYk5Y2Ro9YmV2UokkZdRoN7NwwhwLnVkXmHJDJvYuCRGNyhtxrAJZtTSpbgKJd
XJBI3zxrycDxFWTlklm/WwvE3yBvmLvWzKoDSDV0kinIfN9GzuVlnBqYP+iQFFOJgtVYMqlDZONa
F3CmPoSsa5e1y3/PeDCYEl1WppBpNLAi0niWHFBkjxm6RQB0HkBRT6wXtSIAEXvx5kvXCHWZSSUV
egd6cMB0xY3X5tGHJOlwA2yJs09cnfX9anCD1QFgcihLwz4ayHI3c7mGgOLBoQHiiI5jjHcTvE7/
3haSoJqQ17gTZYOMOVpaWonbtydYyzB0APAaZFoZ5m53DW8EzIwFq2291knIzuuvXyGLn3AMmipb
w+rG2Eo8cLYh/tdffG/0ffDBmPj9P4gbt64GzguKeTfHKrFLhTYaQ4/0xfL0bDp/hIwDxxxhsgG+
nTPOQI1B3ZhighzlM1JSFPcpj1swsbHMM0uCSDio9s3oS+PvHJDN47+sFRDjDl6w1EKeemfKSXWA
haAVvZk8xVQCGFpUFAuc3ZTRKdwndplisDAcZVsLyN8KhTR3Cdq3kr4uadc56gJ5yEUCpIqdVNsu
ElR8AL1YZnLmFlzcbwl9Toq2jmmxu+BlqgRSAgW9el6+f6OWsodgijL/t3nxc3YT1avTkQNIAe5S
porDRYRO9IG+aOkUY3wOQxlDAKsDilRaaypbsZwsc9U+TOqHvTR6IHsGo8TJWwCtRooQK8ICcVUm
sS6tPLFFBQ9GKq1o5NCJoTTqp/MT0dXDWb39vhianIzmVRL5HjoWiy9cj2tjgETOu4lzau3PxTAC
P1FpN8dimwDG52cXo6mXXnwXzkTugXcw6Ln41rNX4stfvxSf/bHBOH4Ht9Mz16gRdU988SLB3xf/
It72jd+K3q8/E3eIhVIJcG/SmDgujiWXloCW3xiqmikKYsDYykTsDfpVzVybiSJ0uLEVtkox0LGG
7AQLi5YoMGoNrHe///3xZ7/7TVgCYS6XzH82mizAAJlS3FhDsD9uzo1dgpYBZC2Awblp+nB97ftx
5EwvvzB+iP0xeQ1iZKe4uhoS+3T11m2+IzCbzI2/+e7X44FH7ok/+9t3xZ//l7+Oj338o5zzC3H0
RB8lGHoJoO9G2AOsUJT2t/J8mwkkvHTxEgyr7BsCmHk2eKQrnvjoI/HxT36IhbAR73zynvitf/f/
xuLGDI2l+2PmzmK88urLCRAePjzEaOjya4jjJx4kmJSA8fHJmJiYwVrgPiN8anPkWXGfzSYUGLge
G1gM9XxnFuXRU0NklVTjWu5WAhM7WFdmoRrhklyFxBXVoDDmpunYjvCtRzh1cS1av1PTBH3WADrY
l0JRy6fIHMsxMcX/TQRSmn2zukbgJL8tc/2pNRHz0riFKs8i45eUULK+XKCcIPtJgoJ7JXt2wPkp
UrJQ7HQbs3/SpigChIdZohphSAv+ZxmjzYwpyXmd0P0JuMEe7qf9K5DUcAABhKD1bgqk5BYItikm
ren1oOgYT63kugQCmZdaYiw2f2sLHOO5ZKQULv5tc25NP925alLdD7oL62EkN4mn8nOtThmtZhR+
nfEdKlktfqxg+wjKkBrfpauwlabOC9RLG391HENiK/71K3Mxf5M2IVvLMYwJZ40n75NrRk5I4ZXB
jwQRmBkZM+y3QhuhlPBL1orIsgQglFIqU9eZa0yZ5TYCLoczCfK0It3C3/qaHcvf+Uv3z+3nFwJp
/8v2IVjwOO7Xu+eaZoTSb7K9+xshif8JDV35bqNj0/34XQY43ELnhud2V91mW3gGHl8Q5lXyvfOH
+6e8bmZ953BR28uMtrcAKpkra1/BlnA1eRgS2Wv3apkSMz5TvTO+L6FR2A2y08/dpf9kV8yNTGeq
C9H3af4jIwQR6W/mgx+6lcAsMayeFvPCsUoMJ+chyEpgg2tIaeBvjY5bOX7O1yLXU4d72hGYWJqK
WYAVpYPic595b7z7Zz6IS4RuB1fHogyD3ETCUgPyb5Z2KQ31xIUe6YeBmmaacX9Z25ZSMV5SI6+B
deOiT21eAFN6UPZgZSv7GEGAiG1ckOWtluhivqIi03la6HaJjLYbC/SxnaOrIbs4ce4I3Qqo4wfb
0tDREnuUazgwzoT1ZVZeyoZM18OM4Xp1MVUEA4JZPC0l1kdxRz4H2agc8B0ycZNwCV1arYS8eI+d
CfYNdEwRDGlt2zvPOE7jT2X8r1y+DiO0EX3DPWRntyIvzerbRM7DlGOIagzZeHkD1qAEuGrvhDBA
d/b2HSKOjTALDNL6YgdqlgB6jNYyYTRWo2+hPEQ9um6ZMI9dxmqTsZmjUPQsBnVPD94bZF6RWLQt
2K81jGkTXZxPDSQsLS7NxhAhF1XYuTuk5a8Aek+PRvyTn3hvPPLzH421//KlaCHo/8QwYS7IyW68
Mo29kBeCH4Le6wBlORk6QKwgKoccTULaqYhB6nVVHQ9XNnp9l/tsm5omstUgF51szHrWJHPTMh7K
absKmIwk2PZLK+3rCqwA2pJZauChq439672o4fq4NawB5g6xVvmkC5knyEdZVmPSzdQ8YLz28Jps
4wq0LdEuHpBGeiyWmeR6SuxI0kBDbh/EhHujjY4nKl4zhwenxEmiuLgYQtWYDJ6Gn3Nwnl6PT8GW
F+XnaXfrEdd5LwtzDG8e8zVm+MDd+pkPf9PfBdDo50tinVqksBCyllLI2duIrKPUdBEQxdkl5SMV
qYJx8knrHfBey+0AIW2QeyCYcZQnIaLSssaKuEsLYPHO5ejsJ76Kv7dmCJAnlRcwTzYD348ejg4A
hDU0WodbomZ0hP2w+HA5lnCRvTk9HmcunI4nRo9ywqTKjgxyAax6zvGJpz4ZV9+4Eu/4jf8u4vt/
E3/2r/4qjt1bjE++ry+6UNTx4NtAkH/Mrb7Ek0vh6Rg5rgpXcldSLIRuv78fQ+viSPvnY4UFPnVz
Kob7jiaWM7ViYRLlDwATZAQ0kVlx9NyhmLq+EHfGpqjG3gH7ACwm5XIvxbUUqLsyHT2dfYm9sHWC
tYmsncJcjtdfvkRvwC5cNqQHU/2zlpijTWjx65fvxBEmZRMB9TWwD824xl5+6Y1o5dU4rHsvXIgH
SAbY3FuO//jn/z76ib1qICiyEZZMhstJp3tNcGVfJsxC7tshmLE7TN7d+OFPvDPO3D8U3/jWX+G+
a4iHHn8gGn6HcalpoQN8V1x85Qr7yObV3OIi8UIwYlgWtkIYHRmOM0dHYKSogEx7nmUsz1tXKY2I
ACpz7GUWPVgFOp44KyjoBbrJG8Qp0K6h6ecai34Vt90+wfltMFUtLYQso1imF6aSi8rF0kGx1QOs
GnviZTQ1ixR3QwIWgNkqqbq624osoEZirhpg91aJG9LFpYaSGfL+2kXeeD5raWnRpyBelSJr3bIJ
GqgqJAPIXVNIkOzV9zxcU/6TwBrWFjvnsAgjlR4xCYnG1pqUTXI9AHRSHJMMkcdDkOwj7BSAAijB
mZpUoKglWgtgUj/mAU8NuGV2YKv2cd15ElbYr0cpLxBPYYG9+lqy6XT7IPgFXF5D0sZ8hi5C6XE6
RgtzrPQV1qJZnxYQtXp7jr+N1VDQ2XYDwx0lcxBdGE6X37gO8zoVPazJaWoNKR9sAtNGliDqj9UB
q0nWoMBJECMHlY2GcU6AyLR6PKXsvWahTiGXt6/+QrCFyExjCrfBZ1jgfKaYdZCFNDI5QqpMxWUK
7v9/R/yVe/A4ykJfuWreqypRsPznp9wl3t0FTnyUHs6INCvufvDWpx7fvXjWnolX517cu//6nYrD
PToSXi1AmjHNYzjUEWi0RzDgAlluM3w/m37H+keKUDoJZQOAQhDqXkKHsGOukJ0KSlPsH3OzyES0
eKRuYpkW54vgKQ8IE1ymLF/mdLLyFVT8XsyS5jVnZ+yn523tH6dmirVinjM1+ZZjs3EDMtl4xr9/
MGb+jpMiTYlMMcEARvnU7VjfXY6HTrfFT3z80Tj/k48jQ3Hdv0G5mHbYExJ9Glo6cKMhX9aY57Au
JQLbS8RkGu9SwTioInsMNmaKJ6PLiWBld1P2N3HblPyOc9pkDe3v8CVTfhcWd5XQiBkK4k7A5M7C
QG+j0Gvpu9qKsWWP2hoyjvfxjGwjWyyquwODk9Yw2YJ6O0weyREoLrBi1JBnDAZryzHZwJW0yxqw
rpxLtwpIRAtTAoI7i2FVA3tuKIvyc89K8O6f7Suwu6kvKczTJpR9ARBYovBjA7JMMGrG3yQeh0OH
jwGOCFz3nGCT6jCu9VR4ni1DbdFJiZz2dvJu8SKVCP7v6qL/HYlB23hllrmuRpKwjBVbIWTk5tjN
VFbByvurdO7YwmiyzIJgcMfiyIzRNp6OfbIpjeEyJrQMe9gHm7hMmYYKmXWP3dMZv/yzT1A/cSh2
n/l23FmfjTMkPRmjukkz5gYLiyFjkkjCDCiy7xS/yZjkAGtV9EQaK+aH11MEoGbyhdXBPd5Bv2nY
bTURq0k5jRIxo5sY9DJUKd7XNe5Y89sdgHYD+loDb485aHu9ZFzoGXC1KdfweNirxkKoaBKMUEE6
QeyCJ85tk/vXhHGKKGS60PicsV0zcYnvzChFzHJarCHWRh2ejFayPg2OJ/aP+CLcH3pKcG+zoO4C
AcUZExexA+/gaaSnLBWwKDFXbmvANiRQVjiUV91+QJCoHeIfLCqbjnJM53h6+H6XP8wgqQKOOo8f
pUgXIpWMNygTJh8L1pRLmh8WDMRiUPJYKnmESKJXEQQG6m448VhIJW5aHsVW1UfOzZCZZV4gWFzp
LDgPDIBk3sezdyLe87ffiWcu47pnQB7d/FaAYbxfBPC1xT6xN7uXCapcoqovE/o6KP4MwYNtD12g
toKWCpNCv1NzT8RHB+Pc88/E//j+X4kzx/jzyfsi/9THY4hipF9/eSbe8+AT8fT1xf9a2Z7Ds+Qc
Q904SrrsoYqQHNaWVjTrJrDGTQ2Td4VqvyNcm+4ci91JGKg2mgFStTkWGbD9lz//zym+SIoxN0YL
Q4XAsgQMtRKWgfBFsS6ySLp76QGnVcC6rmF8ZVZaiSUzBqiJST9AduD0nSVaDyxzbwpx+GCQSvYU
ibyAhUQ8mqh/ZmI2ntt5LtrJ5CmRGj01P0VA+zJIX12LNcFAlglSMDh6b5uJiuCrwYVbD5pdXoG2
5j4/8Pg5akNV4+XXX47+Qx0pKNdg8Xe85z4KUg7G3339BZqEEnMF2L7xxhTDnfncL1+6EnPUqzkE
wBo51E17hOMsoHwcH6X6DcM5Ryub1olbAIcDmDQAMFa9QfCXpycQDvjBKfK2iKuVcI30yGN9drQh
nDm2nea3iMmo4d7WE0tVwdCwTVAtcVZF2R/jNFj0Ti70BE8ACfyvAfpNuAwjR3lGFzzjoCvVAEqF
vSoyY0YUuqq0TIGZkZUUWVJfzIs0Vz0ttgYAufiZ5fyGV6cKwjgpYJkCwIkigH/YB597Q5nqNlhV
8wkRPG/XwraZefzt8WSkclhd24xPESZUQZ1njjfg8qvldYvkgG0se5vcKowc9xLC0qD2WsYksVIK
LC4ypeMjSbhEarCxvl2zILo6GUSUskVG18ic3GGRyfbY1FWAU885Guzve8HDCm6H+0aPR834PqcA
2CMAACAASURBVE3FZxMDfk/naNTBDFcoiojTgzgiGEGu17Wj7PDqNdYEHBmgyfYlULr7eQZRXEsO
k2BIAJT95UrLGs34XbZXgY9HEFIJjvxPCKfM82/dja7LdE94TTKM77Izcmv3w01ITz9Pt+etV2eB
d8x93139GYzyrmZS1WvwvXPEvaaZwvbyKV6l55wd3/IRthWqw83e1tccE8QTvTQ7k1yCZgRaTbqo
OxYU5dSQCdAsNZgazZMAOrtC6Xt12RUkUJQmGufB7/xbTeHvRRC6Q9yfkp/dpctUebiZ/3D70xu/
8mgFGM4CAKvoMfm9bvK3tnbDDKhxkH3mQi0aqwfvw/omwdnl5Rjpa4x/9Jn3xNFPPhy7469Tl+x6
jNx/krkDg4+LA/sJJT2YGs/vU4BzEQOyA2Zri9INghLdjLboEdTr8pC1zbNerb1UT5PYMoyVTZdL
O4QD5BpjHRB1kxICS8zVm8Q7zFEtvQIYa0cenjg+EvXEfd4hc5WiV7ieWNMyIrA2svSosLRGa0mH
l3E0nu1AdxZu96pGFtetw2URdiZrWcZ9Z13pcTHIP0fFdpuZW/okuQD53DpRBqtvYeSbjCRzfATv
wJsvX6H4KK2k0KmWe+C2I2NZDcglyzQ4dyokkJhQJCjzewPBBXpdpMCn47PtLue/PA8RATAi4ILz
wEhU7yLbdnZo+YNBu7JK7AXyfof1jzBPMaor1KjaXkLGW66Ci0pxv1xbHRZaE0bqtStjrHv064Pd
8auf+3AcfvRUxK03Y2Lsapx99HTMPf8a92YvBo8PM2gwVLdmIwd7FvccjyouxVS3inNKrlTumavG
Va5OZCIxz1TkzEFBOvvxOuwBKDFURPkVUfoFrt1uDwg75JHbsT2hHNUyOhtAXYKdSusb5J/netWB
Xp+uv33ubQ4d6/scgi2ryo8LUEAGUyWdpMt2F/lWZQx2adwsoKrF1brEuNkijJOL1gMCe5L1wdn/
Sm/+C6JQ+/ABIlHsXlK6DICRlLx0psXeUN4skWHeqfyZxjHPZ/BGSaiBVZiQETdgr2BOA+9cFGAx
CAPSOAiqFET7OdBrHfVvGKf6fmqjwFwdUAqhDGNVgr4EUkehrx/TFaXX2Jdql6wxgDUNNFhtbSdr
0DoYCA40XBHkXk+aad7oeBa+SHMTP/nO9irdq8v4f4UZtL4AOFCRMBnaPTCRxPMF3qcgETBoVh4n
hrh3ECzLAJnc9Fw09QEmiAmqP3I4ek+M4rrkPKUrCbbMgUiDUgVX/uSvogtf6+h//5vRvH05zh8e
jL5PfxLQxTWgwJugk7/8+kSMcN18ksZU+bPBk3r0gFEWDu9lBs2RY8/8pcg3EJW5wfjmCeC/Q12X
1nYSAsimwyYjdGYPBoeUZQIU/+6rz8S/+fU/JVOjEqfvO8QiZyIyWVqoXWSNIgvBmSVowUepYvQe
1g5ZY4yJtO7I0d741X/6s7GGUtW3vq+zmsm5RrqvoNfgb3sDbrGv2zcmYnpmiawWlC5BpN3ENFng
TlfY+C2KyHH6dg6fBHwhLpJwZfABTz0Ism3KVEwS/FkfDz12H3N5J8ZuXwM7y5bQumCwk3tNYCp+
/A88+R7OnVpfF69zH8uwSF0UVO1C4RPnwBhNE3P15utX4+rVmyiNSgwdPhQnjpyJQbqx1yCoztx7
Ok6fP0x6Op3eCfibX5ynLdMNjrkdx88firNnh6lOT3xbhawf3N+LJAEMjbTT0/EIAEJQoUAkqBMm
pxu/dQNxZLYxKCgsNUIwUQwyb4Fx6xvsiOHhAUBWY9yiYem1KxyHhdrGPG1gnjKEABMYHwZHC1Lh
JahthElrAmwq8GXcHC9EAu4FXhEYKjcztxS+dQg92bSUVYn1pstFoWMQpuNbrGV1ImhVXp3OU4T7
KnXfarEM9zneLopEt509/Iw9MDjd4Fkpfalw2S4Vp4VTBYSp3AJASHAkOLTulU/7Vtos1iJ/PYD0
dmrycPiYp32QLXIsfGhNupIB8bBbyU2iAEOQ2JZJV+QWANZ9FpmjVQB4HdfTjQH1+Y/8WBzaa4uv
Pv8iBhqFR3EdT8JicGaIM4AdnyWLNK0L46aURo6CgEOnof9lLJa/UcBp9CnBBDWGODOC/JcBFiGT
eNW/BF0yQvJObu0cYxXw9D/Xod8LuqxFpSFp8VJLkd59yIC5rt27R86e3hx/mcEaz8HVK1Dz6R0X
WnqeWbahpqv12JW3bqM0kKNKLg7ey7odRfp6fn8dN+IqVfR09TQ3tsc3p67HSzHN9pSswA1kgeUN
jE/wKTti7qFgkvtYpQRgyiAk1wj4dlSYcsxRzlvLgP+dB563DGw9oRdCR6tyi8W8BrdNAJntUjwh
99YQDeeg7Hc9xkUdcqNOgA6DYtkDawvZKUF3s3GBdbI2zl3mZj9yoBGWZ3L2JvMrHz/zqQfj1Mfv
BwRNU3ByJlpGBqLp0ACKkAuiDUdjPTIf99UBGX4aGvU1jN4+5QmqJJIA2GqY99AVsQdbsA1ooWR6
5JAlhUOHkV0NsX57KS5eHqO21CpJPztxY3YrnrlFMD3X24Q7beDYUAolaepuiXXiPCcWFmJsFk2H
gpdhasIaa8Dl3UKNI9keywRYvHSDMdoiJqrCGswB7LZQwuvophVZMMJWZFBspmz8mxnSxsvNE3c0
T3xuBf3bg6zs7FZbWNYAGco+TKIpMpYWCrWwb+9wH0ABVxyG8y6s0+DgIPeDO8rYzE4sEgtEkH0b
cosksOGhwbjv7MMYoiOJhKgCWI6OHgcg1MRz3302Xn/xzSSTGjmXicmrcQeZPD89wf0D/OH+Wp5f
iInbGKYkHXWhl8uAvp0VjE7CMXKACtk/3ch53I/zM5PEykV84j2j8S9/7dPRdnooDl5/iXNdjk7A
094rr0IINBOSUg/jyCqipE9ej4LsEQb8JvvbgFHcgyVTtqXepYb+IFuLupkA6rKvCDwmoN6dNLWx
ddFBjGsjpEgeNGlijfNaMzMZnsiaHDJug3tQQCBbUMCCxbKqeZgKW/yUMaopRAP7RPFdsMMaeqzM
NVXRU00cqwG9UstaqyBLD7hPzrFNCI9lWDzrIfZ1gYqKeEEoMdSKPEuxbXiCjEss/Fz9/hd0H/Nb
QR7TRKGSASIFRxYN5GL3vdS7qt9Ig0xYGHsleFrgaWPoGkiDfkDWAkBtjR0VeFUYDQBo4vSxhAxn
8em20YiyymBXunuiAkVYBBTkbBfCgO4yAfYATzlOuq6xA7TPAMOn6hZJKZROKCyeAyZ3lZiSHJM3
D0jYY4BLoMwcyrRAQJ5MQ45aKABNqFmui1di9liAXA/nhh7ABYLywXXWfOJY1PYM8iG3rhskSF2l
dRbAc3fuxABKvmgsGNbE93/wSnzzlYsonFIM1GzGwNtPw3By0+kxVaXbeBWGpImGnm23Z7HAYQK4
bKZQuuGCVh/+rRBVxDLsjCmLLY20cFDhTdaBsQP8oJFq6RML01Glv1LXIP5zJv8d45KefQ1f/F6M
nICR4kLmCErc4wIVhgq91EcQcGHbEUv8VxiTHaq0WyNk6FgXRUHPx2MfeCjGJsZjfYW+SATsK/xG
EC47XOck53+cXl3MTdJPNxLIO3riEKUZaM2DwmxDELVzD0/gXB8YIhVY9hOw1USsVyP3sgIQWYBy
7iU2wPo1Ut6yMrUGgSK0lqHfbxKr1oK7790ffAdKuwcX30T87n/4Q+KqKnF4tD/eeOV6jOMa3YKh
rGexjRJfMUpCgkDxyuWb8ZU/eTZee+3F6OhpjnMPnKcnIrEXuO3e/YG3x9LKfHzvuy/E/Y8OxVOf
fl987r/5B/H5T/xifPbTn4h733M+urpLMXqiPZ79/hsEiN6JQ0P0s2JOzSNUfMpX9FDp2TpREksN
AFNLFuhGTM2SWcSa9pdevx4zgHIzNM0aEhQ6/q2UfLAPV9ZyBqHLXNphfhosbpwJugghRuAq12LB
Q116Nk22fINgxArrArlEXaEYdePoBpflUmFZj6s+AUKi9NiZVmoDAr8FAOTYb5DIYMB5A1ad7JP7
tcBnPeyc21nR39i9JrKeGmQHmYvW+dKla/V13UOCvPlFy0u8VXCwqy26e2BNmYP29lpbX8W12xat
jP+21hzXqLK2enQ9a9jyH8b97a2y2ADvtbisrTneiLKt5Xw6UJSV8TJe9efjNmX+Owi0bWbNG/Ph
Q1AiYMrWRwapGGjkj3JKvkhORomVvfffxJykb/xLqeWW/iuAkj3yF37ib12JSrJsD7Ird8GUR/n7
Z8ZMAB/TtoIcgZdshWcqFPO47sW9uR/Xt8fzaBlP5Tr3jP3Wp+cgI8Y94T+392rvPoV6jF4yxviK
bNbhJPsWYWP7ydFurGuPMQyhK5hnRDdGmbljLOGBcXHM44SGeNFNlcaEjxN3yvwR+GlcW4snMVBO
Rj0JbHP3jJ3btmHxerADmCuyPwB+wLfhArWADWWgzb5TORXmbyowK0uJzCkxfwVqgqh642Zx9Whg
1HN+iRl1/mI0linweXX8DYzJtfjsj74z7vnIvbE3eYl4yMk4QCHnmK91zGE5vCpMUx72LW/s3haB
FSitXGWKc15KMX0FFO3eOkYDStCEGuAchgzgBDACysECJCEFpTa3VI6xO8RUgZlQT9F9bBQdgFFE
zaoDmNxlZNkk8/76xERKijkMwHMpOqOchbq2t1grshW6xPcYjzLjLADTuyJ5ovtvT3c+DLmg0+Kg
tnlqNgOeEjYMKONLAhOy8d6HTlL+BjBDZrYArAklXcRtX2Xnyb3PflJWLfF1GqGrXMvW8i7G6yC/
p/wByTrKz462TmoCUnh3YChGRoHjXX3oTtyquMca8QzVAILNUDZ72F6hJuPkaE/y3HeeJssZg5MG
zHfGMKTvZAVILbFjPbpbl25FL6CtlfMXpNQyD9qQITm8ItPEv65NHcSv/uT5+NwvfJr7RdmCsTcZ
ClZvGa/C+O0oJfmfze8cMbI5jL+8QAnPCidGPC4rBKBi7Kxt2mRbdePl04TmBgGENNTsweq4Oc6W
8zAGVwaxqZPrwHOQWmylue2qY/WxnxLb1jPmvABUiLdFl1U3oDSQMfyK+wLjx99FjlHDfDc2SwBF
sZ4EzPLI9DKMYHInAlAh9NBzzDFIi1r6ohpCoSwAaXLerG8MBRvX25+1SMZrirViGiTRAT5iUXPd
HJhLYnHjI02fsbDcCbsSEChmRJC+F4RBAqXI9oGHQVYsutqd2wlVkY2fgBtBFMRV4Rud3oklxqeP
7JAqrEwNRaiquP8K7QTE8VmRmya0LHgD8A/LGOwTwGawLRQAAoFBTxQ11qF+Mi0yFQHKzo7WpoC6
+AoM1AFuKRkE3nKjYIq4SFy+spJJplIYNtW6SnZpJ3+QoTRJun8XP6gd6ia7rjV6pf6IU6k6mVi8
PUyw4zAmPVgGpFuQAgzrw0QvbSHkcB0eEAhZgBkQkLw1JGn8OA3GNBs3BSlHY3wzkKVlmj0U91wD
fxgD0sDi8ykN2k99rwYyPmap/j0/i6W1no+T+LbHcD0yLMpCJhONQWmpUGDS9lPKoIxvnrXB4sYC
4KbX0pursZUFTRLD9PRE/Jt/+8X4z//p23Hv2/riQ0++l4kq+7cWS5SmWIdynhybomknhVuxhJq4
R23EI1VgUqZv4TptWEpCw8bHnf0ttBI5Hm24CwsUaFuj5oqLVStkCbbJBtE7WA9aFWaqtUP91/I7
K+tbPbgfy2gDS3SOxIF7H7gv3vvPHotTp++Ln/vxX44dLCYtmTXAgoPWg8DtOdxJe4mmeOSddfG1
P30mvvhbXyLm7EsEY1Jp/kHAJhbwq4AuEHb86q//4zjUcSReufJyPPODZ/GVl7E6O+OjT7073n3m
Q/EHT/1e/OGXvkoz0XGEQZX72oIgI97t9nS8+docx2GuDgwyDli1uF1VJI6B9UwWAKR5JtYx6M/K
cMTF129i7dEUnErZ8hKs/5R5WI+Aq8UaLAKmSggsq0NLPu1h1eT5vAAQScyB8xpXp6yGisnZYeXz
Oua1TKQPWUiZJOu+pP6MrAGFiHWkZCbsF2YGYDPztAeqdhvjQ/eCbYJ8yEC4Z11ElpywNkyJGj2C
LwOjVag7b7kT7XxvDbA9AOEV2MQffOfFNDvbCK7tx23SS6ZSgfGYISh9G6vTXmcC9AYEZdkLBFRV
7UuGO7KLWMVuGNdmgNzq7HJMXJuK26uTcXXjSky/Sb01z411bwyXzjOumtstgFEGyVZhLbONwEbR
KUSQRXKduLJcT66cu99lTJX7EibLPQmNsm11M7oHZZzAx4dQyq0ywJVGKG2jK8+njwxUqWAzdiwz
NWEk+M4tsj15ztlxPSdH2+/cx93V7VHd2m+4exhTxiX6EOQCENIMgFnlCol64TPiIiduxi1cghqq
p3CNV2FQ3rh2HaMWS90EFBlPvksu2nT6XNlbYiWHcVVgXqUyDG7HGDta+0xQCYEaATBoIM085Sms
y13uzWmoW1eDoYa5K7BSYamcSyiUA77Lyy5gDKrAUrkctk392phTlnmoJ6OuttyE4gTwsP6tZbeL
MtxBMc4sjVOhfy1+6uP3xj0fPAXNz7n2NcAc9yO4qDoPU7JHFfg8IRloBM6T+nTEzW7T9SEHK95S
JRAFMIRw4ZXzZq6Wyej1Ehtx2SS6gh6WY7gpFswAXKVYNGUXaGgRhKFG0xCMFl6KO8QvzRMXs0k4
QAGg2txVG4ePn0rXuQBLITja53wNSN8lePlAA59j7ghCYW0PYDdSaZWULW0YB3X4UMw2gK/H+LaV
lGBqF3ZLhstK68539dqz377E5ySWwOQVkZHzc4s0lafLA+PXgaHfTrua8RszMb46kYza8/eeS0lL
stzXb04gW8h2pnhnGyUp7NHZVEN/2abe5KnYYSyOHIYRg9WsRy90I8PPDhyJK/OXY/r2FHJng3pX
/YA4GCXk/2qFWYe3YgsUWofMaIBs6MIdeZu+n7oEuxqbCf4+iAXYqjk8NFZd//yP9cdTH3uQFPLu
qL54A1bwZgzAbjfirbANm2Vw9NIZL7bHPuFEuTusDuaTayCFKCDjU9wfn2jUFZiTKTkAsLXHeDFt
AFiYMhiIicGSJAHgJsaEOC+WAQ/mOPJQOe6+rLt2gOwFhTPdWZXcL1dvwgxcq+VmcpZhID70AE+I
QEHXogSSpWv8296LAnp1bOLHCYQ3S9HKBilpg7W3A9tlTLTGw8Ym6wC9U4e+Lfy3+/EFT+uuendd
utAVEECKZJk5FE2cuPS8FpWCUMGhsJvi6d9u3z/IP++7kOqP1E9PR52sy03Fh2wWe+FHF8eX8WlH
jJ4bYqcEjncfSoxVDoFdhR0yOLBAemcOQFDFaqlAOVkKf48YjkqFqi1M2qrMFIsgRT6z85S5Qc2P
AzsyEydlOYg8isv2BwVYGMcV+SJpQ5NSro/fMJdsZE7RONwb0GxNc1MxT1HNV6i0vsxvh3B/GGjf
ruXjSsUNZnZVB0Dg1Mlj0Xr0GJoeV8y3n6bI2nhSQmnsDKqGCToYX4xu7og/dTx9OMZ3x+ru50Iw
40FwlDDWpmRngFULSX6QsmW0dyjEox98MObou/T008/FJVrOLF61xtM2RfQi7ntkBKvhU/H+D70b
arScMkVE+jbqrKMuixluBSwoS4bVNyMBoe2WVwiEHx83Tp8FDGgyKBwqVJFfZyCSxyYAvAQ9bZ8k
LVCjxZdpFbCOInV2rOKTX4A2b6Dg6eGhHlg2gDGDuwhAM3agncwFsyfqYVOsd7Wvy0ilyzyQ5bHG
yY0rt5XLcfbeM8RPHYcJaY/H3/14/N23no2/+YvvpmBFxf7S8nJilObmFrgVO9GJK2qAIqMfeO/D
8eAjZ2A4S6RQzwAaqbZ/+3Wo7Lb43K/8OEJsLy5eucixdrkGmBrmnAJ6GivtO889TTDoQPzwp94Z
Fy6c5dSh8gmWb+e+H8Z33NrBwuYcWd+pLYwWtyDVoG6VwzaLkr+ij3lw4sQI7AIMKPRwMwJIV+Iq
IGcHJlXHkIZaIyxpI/EJtdwP4zHMvDJQOIdwttgd8iB7cB6pkjUL1liqguwjc09mq1arCKvWAOEt
AlgNTm/HMFkn0HRzk6Bb1sc6LjgrpPeTyLHGvdg00JXjpWBlwRvHlJ3agRaXPlfZ2WMwWdWANmR6
Auv26jIGzafunCZcOG2UbDDLr5V73QD9rQDchbUtAhDrqK3SQgxaE25RmuGkNYZIh14nKJiCjLX0
sdqjhdL09dm48uZkXL80T1wfoJkFglqJtmpLYr4MY4dPZiw4Z9aBbJPrxWdaY/4gjbxb+PRTxXQG
vJwv2W/9XOZGKOWdyt5nICnbh0A225fSzG2SzcuWSj/LQNxdtxkQMgpVWWccFuKD9eo69RLcT+Za
FHy51pEYaVsBn1JQyC0EErr4ne81XqnAxDfZ+Qso3Y9jQMUvzqIGpqojKJjCczXair0w2APxGskG
39u6CdwCuBB3WkGRmPxgLIyASGWWWCvur2ynI5NdaTYylgJQaTgHVeK85bCcdRo6YaBwk238PYDe
Pdi2KrEDyAfrlcn0mg1rfJ7p+1kskcwVAdca2LIkJdYPqKsFGdZM3BKbsv5wgFJHqAKzUUtT3A88
MRzv+dCDMLPruFxwa58YppYh8gIQxGJBnsH+cPMt5rhPfMsBbuNqZQWygFp+yvotgAjsjMJz3S4J
xE9V8Yta0mcDtP7SFWQ7a3URoLENwCli1Nnyqn/wcOxjrN2SzaC8RQ2KuAU2vgOXYBNZxI3ItRwW
uUanDDM2Ahmarma8CqyhMuNawVLf5XULObEN67ttzCmnUsJ4bENGaeyMYaiVOY8NzmvLTDdkrTHE
MvptxLNab8kil7ab2aLOltRXa1MbzNQA66qW5KOr8fA7Ho4nn/pwvOOxtxODdQywVxM3ua7psdl4
8hNPwu5h8PQN4cbvJSaWVi3o0Twxuck9xbHM6N0GPK7tLsLwj8dzzzwbL7z0XJJ3Hci1LfTmivFW
dDcpS2YAXPYwsg4IEbAo+OI05R6QLS0k8ixSa3B6phwnhxvjcz/+aPz8L34yChR+rly6GAuL1IKU
eSfQXyNQHbqH/CHNHeAPHaM8EyDxSpAmSw7Zo65HBmWyDsDlvIHdthyFTOAeGMCQGD1UBcZOI9J1
vc/5pQxtAJX1/XJsI8tUwSVs/FmKl2JuV7lu579CzXAbp3oOg1NPy+oKpZQAQyZ7GcBuxX4BWg6v
UxVm0nHQPWs/wl3uIbcYw5pT4Pys7G+Go5mOBeapcW0V7mUZgLzHOiyOtpJNBuKf3qEnGgeVifLp
6fuAUFUXIuq0ZYxeyL5TsLgOPVEMgCAMBVqI70Qvph0yYDmy2qYRHSehw3IUiuROMZAQPrhgoAGi
YECeljsDq5uvygrSslacmq2SUhsJQtMy36cYaGGdCyc4zOq6NrdUOOVxNeQZqCqLrICVvEefM5zd
7ATY4j44HdzyWNA8Oa10wgQ20WcZ9EGYFMFkt29EXGObntGIcwM0mKXFDuliUZ2RmdBCXofaVEEi
/Em7zLeB9GGn8uO4rAhsa0RJFQ2iw01CihoBXMQ8ceNk9hwvH3fH7e6rgs4x1tolEoV/Fb6ZVawF
qWhvZCLcnJ2nzEEHzEx9LI6TGju9iQJH0Z3PU4+qn1IIvfG2d9wXH/7ok/Hid1+LmZVpQMYSfePa
ooe4IxmLCpR8jvHKscjARwg33gu2AK/HBvrime/ciG8vjcXjP3Q4Hn/Xw7AYhQQwlnE7TE1O83vi
dwAUW8Zlcb8GRzujC0p6foF60IsKC/pfIRQ3mYh5LJVmKvuuksFpQbplsnAMwGwxeJysnjLbSu96
n/cIsGygTMTz334JAV6KRx5+MNqgxK0K/iX6FkrWbGNB+RTbqQAWiTGzkOgb9FCsKb0MCC7FgxfO
xelTvQD2J+Lb3/ouHoDN+MBH3hGPnn8wXr3xCoIRxYJ0NIC7sZboFCxpYwxXailGSg2cWzcW03ef
/dmPwsIs0az6b4n7uhEjR2hthAVmUTgDHMexEo1lEgWpMMwIUuhOzqD6NlF8xFudPAubeRxByZzw
Bt+AXViCxcuB5Feg81dWWXQswlrZQFyd4NZMQMAEsFuu0VnNK4pOpmGDmACFgvfRuJV6AE2KaWKs
c2TKqBAFW620AZknPd12GsIBs3hu3bqTiqqyUfpb9iGrt4UqZ/HLauVQykX85AqlLRTQfy18CqBr
p0jqNmC9CqvYASvZ1nYoBbxboLCMcWPLJost6hvZ4x4ZM1ahY4Esim6helot1MNk7pKROgXbuUax
WTMStygc6va9xE+20Uy0JPBCBhijtonbw9gmWRtBESIWeGbkVeakS6xeWi2uqYyNUjZpiDhyiDjW
kzDGFeYt4B699ds0rrxXkrnyXIvcDTfjNd0ufuX2/sKj+6oy9Vu3l8USEKURTse/C5jknvydkElw
JxxRQpHTxm+yB2olnZlH8wzkqfy9klQ2DUcu1+nf7kuHoY5BMtQATXt7uMVZQwOjR+Mqa+0H8+Nw
Wowf60VgVaQWYALqKDaNwOS+5jjOnXRl3CZljVeibjpgAeq+Sn/zj+4Qj+qcSzwgCM3rURbIbjnn
rKNk1W8D1fXO6MZJ2Vm4gFKSBuC/yL1PAe2cueeQV04jw61HVGZubFPwUXlk5tjwcAc9TI/E8U/e
g5U+DsFAG5H2Xk6KJCqYmzVATSvnabzPZg7XDXPCcgR1ZHcd0ENQWLuP0Rtr3C2Eu7hEcKOc32AM
9qiJtI5OuEadw6HDQwAQlCQKsoQXQuC1RN/aRWR2I8qrzLq2n6A1kPbUnrBdy4SaKDNKhARsaSgz
Jjtck10b0j1lLDQYrevXiIGjvENxoX7ISl4BDANINjG2jYPsH6HRNCVrujDEnGPrfL8wtYyRxvgw
tkuLFLYm0FxG//ixXmr19cXc/BKlEBbiqR/9WPyDn/oJ9Elr/MGf/GF842tPs44FIAWM+JgqAgAA
IABJREFUw8N00PhwXLx4CcOxOZVeqGX8rLvXBOj2mieujuE5qBKXBUvI9e6z/iZnIATIVOzoKsS3
/upvU/zr0gJMFHLeXq66gC2rs4FHZp1swSPD3YAVjOEbNHuGLHzobDF+41d/PM499YGIl7+bwjCW
0Ds9hAjoPixjVG6hh+vR8RYINR9XxqqKDEvJFOp75pBu8BJGWw2sYJqNb8lXBG22IDmPCnNoD91j
eAhSK5ponJwqtiPj8GyiJwBdzGkTFQx0t6YZX0Ut54tTlInK3AYkppAi5J6KxSryhGYzw4ml5W+i
pJB9yknMJZlJS9hwXy29gCBkX8h0+Rzmk1KnyDUxuSlBU4nh0QHEMMCLObLO/V4Dg/AV83VVhY4V
y60j4iItNsWNi99X7Tmf8lV+5sNFyiE97RTQbrB7DgaF3UTh5m1uHnFPUHMEbCQmZogQJnxR/LMV
R3Ah1Q/2cAAsU2JDzJZIC4abaj2kKvTpPnEzuTKCik20mA4Q/gX+VhNVYKck0ktE0OWhQTEHCG5E
SYCOK9CZByiw4iYAh3ulAveciDMOisZj3QgSeXBqOSTkxiSn9RB9rEqbKUYM1230PXRfBAvBwlxV
wMwOC6ZEHZIipRq8mDxZE8qr6hpnRvxQIxZQI+5EZiLfMetW5jiYC9/eXtkY3h0rreBsLHnDg914
ejwzxaCgc2wVawrVPCfu5OngOHsAyob2Omppdccp6m0d7jga9547FV//2legs2lV8+Kz8Sd/9g3Y
gCkEMdgWdq8OhW27GkWBhSftZ2VKcCcLYLAFVxf9qX7vi9/SOIwf+ocPkh0zHFcv3mS8aB59aoSg
yEOQgxuxQoCfBeNsbJzH2tgq05YEN4IWKnMOAUY1NO5BCXq6f2CQWIpGMguXSbO/Bt19gMXaGptd
jI8CnRm9DZu4xQQcuz4W9907kuIwrr5yk4q9LQSYH4+Xnn8lJsZmCPJsjYfffm80d8Mk4eKqa4Yt
216Ihek50n6pSwbiukx9sa9+7WVcF2Qcvm8Eaw/3E7E7p84djpduvRSzFJG11ISuLYGIwrKOBW7f
vx5YyJm5cRY/ljao/yWKy+bJSHr/Dz1CmYqB+PpXvoeblRoyBLAe6P8HnCQFCrAyRsosiYM8bSim
J2L9DVhBBFn/IONKE1WbGjc21sXDj53Fml6NaTIdJ25PYtkZC4ViraVpMFR+CXerlo8L3/kq8PIo
qjrnwxYrGj3BuHPOCPkGzjtVMGYxN+PvtyK8db/cNhX0RNh3uF+ucRYQahVlYwBSULKBNj5QgNkD
xYCFtr6eZSYFr9b50UXYhtVe24+RwWRfBxzZpmJ5eYnxk6nA6sa13NvTRfp3AQDHYgOMbQME97jf
7l6Le6RrOG5fvhGvP3c1tefYYm02wHIZXtBZao5e4kW2EZor0PZ5YtZAuumq3cLoJJzZrA1TMBR+
2cowJcNrlT3IXjX5GJ+04gQG2fj5t4BLI0XXocBI4JJduSvPdZbxObJI2Wj7iXv1IUiScdL4EWK5
R4PjvTeCLKWZx/DY7i87H1e1eb9GP/q561uA6OeyXJ4dSzq9w8zAHq3BOKWcB0rDNBecWpwvtYr4
twXlKBLaRXANkz4/MDyCQVCMN166GeNAvMYmkgt6OmN6aS65skoczLjGdFD2nZ2V58U89aZo1Pgh
p2OJBcdCQM/XnBDfYYzamcDm8E4VyzRoXJplLFDSFWhBRwv8mpxhrN+BmaxkoDqCqYAia8nPXR4J
AAAcqmQSWyfJYo2lmp1ohbk9dawz7j07GrnhhqjMTqAYCUwePhL7sju08mo4dSLqcPctXbzIfMMx
St2lPWJGnREaNLWw1xt8v7GDu3iTOYBu2EJG7QKQvCe7WGK2okLURN/IIVyAzfQipFwFylEQVUKw
bqLQV1HAVfRGenD9zi5iqzln7q0GDHGJLSQOoEMpqst9Z5Hu85mxSsoC0/udw6nUCDrAhvFl9u92
tcidFqz3sxdOM4YMO+4k+/zZbmfB9UQIyTrhDlvUmeqF5W87igcBAqKMTlzm+x0SwppwyVns+ff/
4I+pL/g0MmQKGdsfn/j0h2AHITBgh0wCsqaTLXusEm75BrN1N1YqhDR0xX1n7o2vf/er8YPvfZ/x
oqcrYQDbkBG7uFan79yhryBASKMGQ1jEbZkZmxBXvBcQF+2cQyO/uX11PG7foVTkuYh/8WufjRMX
RmPua38MG72AcVeKo8RQGNsrqHKtWKDWFlj2vi06oRw3zreKUWr2qsbeHkCmhnnptHxrIjIXuQvO
SQWfTBXjrCGge1o5ppFvcdj6t+p6lXDFHqAfdeVZ81LD0vChMi68HONZRE4lwgWssAEp4j5zeBYs
IG286RbGs+vD7D9DNUow7KIzwdWe502s1S7juslkWiOe2pClNoCsOG23Qk1KAtzzluRAt+zXYFwC
P2xfRHTNFgubG8qy9uHC9+m1cYgEBnyvkFFEcKi0KBUaDgh2Rspwa2FClmfZnswpjsGbjhi7tpUq
tcNOAjqoe3OwkDI2UjPceapvw67YMBcKguB0RC5+7T0sfPEmJCpoFstA0GKAKwHKs2NjsTA3wcCW
4xSWdG6YwSwjOlkNeRBnHsS6i9Kltlg6R9jsxFCoV/kqXQvglFL9nDs4yGuiWRRBuhHHARisYS6c
G+XkmJrmpnQaj8jCxYoE1K0xAXepKteN8iqj9IrEhG2Pcb3TU1FLVhWzG/0NQKXaPSwsAiArTeFi
d7wUZj6dLo6t77NxFj/fHV0/Uylol+9FN9SxhSBffPGNqDlUF2cfOEbQasQVShNcfJa4ItIye4fJ
HmGMNqE/68Gw+t61Ak3pLXGxjRS7VCFvcdeLlQZo4744TFD79Mx8/It/9wvx+Sd+jTMZipn4y/jN
3/w/YuzqbViaO0lANIPaFdNS3krMbeIcxuk9mEe41hHYbmZiHqneamYdk1wMYkf4XZS2gqeIIvba
10mtF2y0kBywA8szPT0Rs7iIv067k6PHS3H7WgVl3REPPfoItbbG410ffhQ35wfi/KlTBIyy/7aa
aDNbM6mgJVgy3AK876tpjy//zp/FK9Tt2if+aRUL8J6HTyS32ArX34JrWmtwC8akQnkI3Xm2KDgg
42gH9+2ZB05gZS7GtctjCHHiysjK2IU5a0Xx/8b//Evx53/6TZitcQLByQBEAbhwrdekorFtUH9v
XbSTvn07v8yYK4zWEYwUIlykVhnM38nzo3GYmIf27mEyGftjmnijWWKUjKvw97kKLjdAoi6dLGAe
pgN629IJZnC2dsI+Moa6Way27LEFMbsAYOtXtWD1rS1u4uITROGSoUabNW/WiC9R4KZsR5Ug563A
ygLVVYDWryL1e5uxxEfezSJoALwar2B2mcrzgHVlDJW9xnST2OIoFeVz5bPvWtwJczObVFguw0bT
oJmijrsUI7YH1x6JHbv0mJsDZM+SaVqitlhTpS76cF80MYFzKMXqkoBFaIOhAwtmXrIMXQ0xNntc
ZxXrPB2K1eFaVQQrtO++F7z4t251v3P5ygAJYARfd1kggZNryu8yYJMZNG7nSlRJuh6z1eg+/cZz
A5TyLyqTf1EIHMVt3UJgpDPPVeo3mXT0HC3imeAMv9aVeNd4yraQrUI8cTyP4jnLW/uXxD/3DolJ
vhaGFGdAHEM7rqXBQ11xZWkxrq7MxEu4bl4zUYV1uQr42cMVbBxgAUVgUK2slOsiFZpN+2e+cplZ
yY5sHPiY7bxmrgQNoZJgV28pNNkqzo/7rkK01pvZfX5pzSyrUdfi3qlh/rAEKHXDD3GrFPBYMJ2S
0VEDK5RYXb6y7ZY1jLZgQNBoKSNu5FAnRlQfljmtY6qEUGBo1dGqI7nHYDF3MTgaCHxeR5YXUNat
HKNaIRN5k3nENeoS28PYNr51G2bEQqoCiS0vFF1TIsNuh/mpe3wLRWri1CTGzQJKdJ05jWhSU5NJ
nhkhO6zHjt7G9HeO8ALv6xKhD2sY0jsE3B/sNcU2+kUZyu3lvjBGzGFde3YO2UUWrS8sI39RrOy8
GZfcYVjvs/ecBAh109zYWoRjcePSHcrBzDGuADY8ET3JNdmDoUgvPsajDb2yAaO7AMNbxiU1ONSb
Ar1/+4t/SLTLBrX95jEg3xY//dmfjA/f95F4buoHBOcTv0g4S2NdG2NeT7yU9a2A6ejVTWr1TU1N
xNenxuP7xJsuL5HVB6hcZF5ZRHgHUsDA+M66Q3gXYGKYCFuAv21T6qXUcY/ZFqsNQ/Hi69eogxjx
2APEWP3EBzHEu2L89ZfiledfjveTHFWHbLSZdurXSMiB80k3XwJVrGPXsoVA9XwYEqEb2bgzOwzg
OuNY2VqWoUrolnsg6VIEJAvsGxlrk7RSv0WUObc3zVeZ0aIlHYil3QZ4WdRVb6OsnoB+n/tRXGfV
IR9zMEugL5hTVjKKyppoBxoTGKT2ms2KXyMlJHn4D0mUQDE3g/uq7oA94/wM6Hfyy7Q3oONWSKJo
ZG40WB+TMJgirnDDXuCI+AdhoHBxgSughFkCAJXiME/GKT15SQ8Blt/5cHuFRfMdXDZcY900sSXg
jBqaijqHCfPJNobF2mHwCbeL6rwuO3z6TO5GFMQ+1nUBBFgFuJQAVwUEscUuqwoNrQoWWGVxLtaw
cKanp9hHNRaxkDrLvUT+4z4wzRuhXtzkAnFFFPDdy1Ipb4qAKjBP1HLIFIfgyXtx3E/wVOyNsc2F
+hikIBlrI6qAw2gkrgfEXge4KmFZzC7Nc5G8MuFboOH1gdbNgs6WKIL45a9FK0zV6OFD3LcdXHdL
sce1kukPaM3cqncP6Vj5cDwdMx8KbJ0B2aeZ5c4Zc4WqHYARAYpT9Amc/N6V6L7/UHSSMbeCVbLO
mKnIH7pnBCq2DffT5XjtlcuAT06fdjKNZO0dPzYMELqNdUsV4kPNxFAtpXpe7cQZPP+3N+N737wW
f9lxOf6vf/0XgEICzkH6Fx4+F+fO3gMlvUCNV/pB7dMJHDfvLpOyFuG1y4TcARQ1YjUNHTuENQbL
gOvH2J9dBMM4ps0ScTRVQN2xM4fj5mVcp4C+AxpHDkCLHzk0CFgYZsG2WV80biJwBg4PxQvfvRnP
wXD85M/hNgb4bWwOxUvPfgdg8xrKAzofllNlIzuT4+ZucO17LhjiKEoEk37sJ54ga2Ylfvd3/zx6
+gbjaN2ZWGhCuE7hvjLQGquxHgbQtjYKf4utFkfJspyH9WFhHx09xjGxJPHBFwkIJWwqbtx8M0ZP
9sWRYwOpV97s1AIxIQSzMzf2CKyw6fM9F+7FBTbKYn6NjEsYWxb3nrFrLMBGEgrGrt9AgC3G2XNH
4vTZU/Hux6ibMzYXV8nAefPKOG5XYrIMqmRyWAfGJsv1MFQ5XIamCpcwOlpwTVpSwdINKwDCLbYX
5JhifIhg3Dp83BOTE2lNyU7opl0hU1MB2wgg1YVZ0KpD4mktQkTwwN3GPtkFViqghpirdlop2VzX
oq0CsxRDgiCrY60pJEuAPEJnMlctc34WF+r3vv46PS3X4xzF3lpIry7oTpkjcBiQ++zeC1HPOHfU
ERPE/KnTxQSjpeygDSqznPIUZDDVIZS2YBUUaMllwLlSsIU5Z5c8Vw9uWL7jLPiN4MnhEmRZgc9P
ZZDkk3SlCXWMYMzME/923emcE4Rlf7Hm0/YCKGOLZDuUgUIdj5c93ZbyiZwJWZeciTDK4zM6HBc3
AJ8Lkeyw4Gf+ShkqBJP1Usy4D88n+1Sg5iMDf+ktR/bK25CLJiEUuA+CbWOAlnF/VQAzpvJ/d/pO
vDk3H5O25qAkwfnRkZghUWSNEIS8/hWVEBfqkfYVdNxTlWUFOWr3hVSZPR05A45urBwyrs5xFDR6
fYIX2cmSfg3mi4kVKcaP3aVYGsCWxpT1kSy7UWCdGxuTh0XQNVnL5/W1xEgBxFJz71qUWw3b076r
Beb90HB39JEsFIQ2VNHW7jPuvxB7AIotUv0bBw6lObHwDO59sqSPjrItWqoJNmcdwyhpbc6pyvt1
3FvbO2gu1vQqzMMODFoB5VbA5bHMHF6FDV1Adk2k0AY1LpwgBqFV19HDTGQyp0nMuO/B04AQknRw
6azjGhOEgyKj8+hIYkwmAEc1GBLe01TEl9Mw9oqFk9aOiSr1hIw0NfFLzlPXqmUYrl66Sgb0GPGF
VxObJaMli99M3KLxm7KHVtu3ofn4rVUy54vRdxjmH4Px9vgkvwWIcR4PPHx/nDxzGoOxPY4fP54C
y5+ZfpZ45hkYr87EpHVQ0shiqRskE1nAtwAQ2d5ehDFnP7ev0SatLo4P38fxduLmdfoSUvjYZBxm
TYoNtZzDDiDngPOHBOI6YIa4N02EeYxdZnuU2UNnc/Hrv/SZOHuGotAX32RebsZHP/i2xFqUJyaJ
59pJwe9m0G0jl82oLBqTxBy0TIjg2hgwJgxHxahSx2MNbEAMlKjyvWcgNLLaJsjchGRgIbVYl7ij
VdaEEdQoq/jNtnMBGaUxU0VG5pJcV2cCijiWho3FjTTZKovszCKhfN4EgYOlx33D2ILFNMOZIebc
CMrReAZEGXfluNQmFxVyHmZ9CwZuFblvD8diMxobdo8+O3jp6MGLvO7GGK8h4ax1m0xsDNM1jPnC
5yK+gCc8sU+CIQUCl88FZa/omPRe9e/Txet3Lsy7r228v80T/U3wbBDAB6PVTJA4VsTLy4wliLcD
qVzTMQSmQsCBelSUIsn9tBhAmJx8dWuR/obzsUVxyur8JLTaDMwSxcYWF2Ib984OFrFM0iDB5j3H
h6OKsqr+4PXIwXQs3IBpwX3RUEthzCJnNLMVt69j+bG9/egAtgwS54d0IxM3XUvjYMQbYLdubhRZ
vsk9lkYa+lKfcwGXGLMMHy90IufQinusld5W+euX42B6DMZqPPoAFu1Q9ptM9Bosj+WFjXjz5lY8
eL43vj1nMDPrlGcSerz6t2PM1ECkyfoZrIYvmpsJ3uWJ5cBTa1mFUSZVtBlA10Tk+hqZM2McZ4Kx
YObH4MnBuPeew6Sv5+LVl69DaR7E/Q8ewT3VBDOyRLYKMQssqoHRNrJMELQA0aNHjsTS7Y34/X//
Gq48AOAUMUws7NmxLXoH4uJi39NTZEBikZ2+5wyTikwz6lD1IYSMXVpZomzDJAXlGOtaFOWh4b4k
XCE7mHDcYyavT9XODpaHDJjgTDdZC3XJJgAUZi69750PkwL8fFx+bjXe/yMPxfFzzXHxJeqqVKZh
j1h0BKtaj2pyYgxwjCCArTTj0IV2eHAwjo1mwZtV+gqusZBffeMWvSE74mt/8hL0/2r8w0/8Stya
ovAo1mcHbl1jQsxCqxAjlKh5gKBNTG0NgmnAd4RQY3HWARCsRm58l2UKtrHuGkgKaMYN1tbVHI8T
QP/AQ9ThgW62QfH2ym48//TrMXN7PU4ePcr40gAaF/UO1qgd1p1Hkzen4/nv34o3YNd2yaBbJ6v0
x3/0U/HBd76PhYwljiW8TIDynZtjMEFzCUi2ccw+aoAtw9hucP0WR52cJuYOCt6x7Oym5QKCZg1A
Vyabxoc1hgw+tm6ZINiaK1pl6lnBnoHNqY4R16b6P8ByrOWeSYlPEuA/iXtR90wLbgBLX2jhrRIQ
39PXjRzL0WdsBmFPXSsK2fX1d1PNeSJeevpabMFczU7OkpwwHlbiX6c2ToqFkTXA0lNu1HFesmVl
QBa2YwoUNkB/G8tzmxMsoLRTkWDZMhQONeJ5AjY4U11mQgIZHjPr2onTkoHLRGCRNcS94HtLmPh0
Xd19FfIIx1j2vDp7BFOZhNOB58i53oDgONp0oHvEWv6m1RL/TrB3eKS4cOIcY94aU9ynWaKjXNG6
K32gWjke9XT4jQ6R7FMBoeecgS47L8DnpGsApvKfof7Ed2L9Hhrsg70dirHNhfjL+VfiEs3Ny4Qj
bAJ+n564FX9EQsYKTEkRpdzZZaVtChdiBBygAGuY1zuMsy539BJHQxnw/oDtPQ+N1DpkrOtZEJax
cgA/5r3V+Z3oWxivqRQI96eERa7b11cDdgvc70ZjlFj7BYK7rSie2jUBmA5w92nsNFEqQUXZzPxr
xRXWDaBvwE1SJMZqc2eWYy3RlaEzTj52OJoGamOpQhgBpXLq+nojNzQY5bV8zBMwZdPmWoym3dmx
NDcHqMqeo2conZ0jTz2kObwMy5SfIZwVI4dX5v0Wcb3l9i4yz7tYAM1xm+SkF8em4xoFkRdhGvZw
8+dJSmrv64Pxx4UGo9/Uah9D4il5XWWsJvBWvEZ8U4UxbzkyBNPVGPO0tNrGPVUwGwyfYJ59qxF3
ACEbMBULK+vIliWACQYAykMPjMal834PmamsWuJ741atobeNQdRJvNXIiSMpLGGWGlcafYVSC2se
9g4mvZ44zCJFF1cAmcrTU2fPx3s++P44cfIkaqmWFl2L8fxzL8OkRRw7fowaS+3EoK7EmeNHYK9u
ApouAyRvUapnjLp7r8fli68CGu9ED8zOAcBpkvU6fmMyxckWAZ6NBQA95VBcG7vsdA1XpPPxPKxb
LSC7gis2IC425vbjn//MI/E//ZOfiR7A/tYkWeSd7SlpiJONvSlcVhptAKdNGOnKFuwmMddNzWQs
EqNM/x9wFdGQGOB2eUDgJUPPThWujl3kD7chAXrjJ3UTlnDx1iIXisgoiQ4ZVKsEWIOxgnvuAJBj
o3rLYlh1X3dODfe6vtTGOkOZ5wWvmES4cvaJvTPbNJcnQQE5iBBLa6EEa1aCSdPjgDCHkMFNz7Eb
cbWlyggALdlPsxdvwg7OrBCKQjyxfWub22pjGo/H1AxdUAhnaQPcgv5xsy5Qe3KTYtxk7f+j2P+C
AkaF78MFKQBQIHIaKVjd74QAvqqKBAo+/d4H058L4kll7YaeAjFM7IUdXLmUbc9ho0Xnt/EjWBs5
rC94XtApFwSoMjg8B4q0DL1B6VWyP+rYPgdi3Jmci10sti0s4RxWdBOLvl3rjoHPceF5isDB1UUR
9LSxTGIyGXS52YVYmTZWA1DHuHmeXpMsmuevaE3XhIxkWiSkvgzjg+6IFlxCJYIlgdNIaH4MS1Rh
AdUSj1ID5VoAkRo5mdPk19dNU+o8heqWx6eI+dqmttNi9DIYnY+9M+4b7I05mTAed8fT94LY7HG3
vpXOgmzsFdJaygKrLSb4vkgbZGz9GjvAb4HaS1gTPUfITDMTgxu6T2DzKhbXAZbBsXNnYIIGGBIs
fyyCfI0ggKKho70EaPdgIS3Fc9+jjgxovh8F3U1A3MipQzFEUN70wmyi/rV4jd1YmJ3FkupNA7hJ
Rk2qo4WL1ArgvRRb7SZmKVXmkXFBsOZZALv48rWAVCx9fQMo6saYQtjZYHWAOl1NALV1FPYabOAO
97P/VEt8/NNPsjWLqgnXIGUaXnnhIgJsNX7oY4/jWp5gIjfHj3zqY/GRJz9E0PsDMGADqf3Am69d
AVCQ7ovgmcfFOTM9Q2YN8wUQ/DM/9wGCO9voQWZhU6ArC98g3gQuWCzGORVRMCq6KgA5BaNgvRww
J2WkzKbbw9IssvgsA7FCV/oVhM/cNEGb1JT5yJNPUC7iTJwcHY7zJ04gaDoIpF8FgEwhJGmvwyK8
BGtXDwjuJZ26jCEhs9OGhfM1ek6+9Nxr8clP/HB86KmPxPmjI3GM+l1Hj49gKZZw107DAAKkKGNx
8tRotFMS5DaC0T5WPZQ/6CE+w1hFWTSDPBVSda2sUJTjJnN2h3UjmGoB7GsZ2iTZNZCe3Fvnfkn0
CENUw5g0IWwasOrrDNB13RET0sq5vuMhMriY7qC4OHXmOIJONz3B7c0d3Lu9eO25G3QRAOzgkmin
EHBzE9lPHNO6RrU8DYwVjHkupv0TupACgJ3L1gHyb0MpfRqDIZcCBkiyRXpfUyMHgG8AQJdqYa24
J6bUmKa9zirxoYUq62QkU8bFyBVlgErBLfuLE4H/tJV1yQmkBEaySP7CGWAZQVqQ8NksMOk2gGqB
b+FbkRntMTx4mHVYpDkyyQ+4qnB6sr1cmrNWmIQrIB0/m0+Z6SkcVN4IqXR4ylZR9AWQuQ9or4eN
bO1vI5iarDgYhwkKGF4nC04nYVcvPeAo4rtA/M4m7EFzR1fUULamwFw3q8q4lVrAb4kgJ7N5S8xj
0+ZTJXwUhi6RAr8zPspkoANSpT0XQyJk6dKD+24RSBMadElrBNQgW3X7WXJBsMvtQ6nxOaBnXwUI
GK7lb7PAamDWapnbGie1KK1WAHmHLniWUplq6XsFXN7En/T01xJzNCi65n5nx6qlnmF9Tw+Neym/
A3OJXktuGY2RKkbULnO4Qhp3DgbGBsxmqZWncS8vm0TBPQfANcIAtTMueebbtdnNmCMedIxCmndw
k+m6KTEXOyidUiJDcQH53NjRBnvfE72HlZvUVwMkrRE2MIfuGYc122G+bbP2lzAeV9ErsshllPYu
871EUOo8rsMZCmPtAqJauBf9dIkYHOijBEITLLGZi9511hpsR4LozHGrjWtAdHVTG4411tndDSOO
zAYUbKBPiszrJupH9Q6OAGBxUcKsWO+pnmz5wyMj8eCDF+Le+wlwYvsbY7diGl3Y3tFOc+RRDGi0
Lsf0HixQof/WjdspVOTKpeswyTco5UDPQVybsvuXL17jHAmeJ3zBunNIvuT2ryF+x0bOF2lBZdZi
ngmyheyUSa/hPmwSdF+BUf5ffvnDcR8ArrWdecwc3aY/WcGK+Ks2q18lFpa1pwHnauCaLbpdAOiw
5FElrMcaSrz4hy5AjCkTLlJiEDe+wrxaweh3AOu4ToaN+DXGDt2lm24bGayLLc/cTOU9nJPOWy7e
Om1FQT/GA4OKS5LfAogMKTAwn03BFBg86OoCQJkLA28wgWDYdnFHV3BHV/AylIjzThYo31XZSYnf
aKnsABSteL8KiN9Efrfjxj12ZJhkjFbK/pDjy7n1Ifd1XW7SBeU2DOk47uellaUEbAZvAAAgAElE
QVS09op3Fb2gw2XnCd19CEbugigBmNv4UEgzBml7X4EiKdOwgQuQsqZhIJOe+hjJ6su2hehIPk42
JRCcBcIH1Tr6Gg0xwA2kQwIUqhvQh0npMSmgmI3d2p8kiJGB7rAOC9a76aVoFQAVN4SmldVbmDEA
haW5FXzkbM/kZwtEmoLXoFPGiacPX32qL3yQNBgneco4+t7Pq4AsOErYgo1gLqbq7cx3bgDfKZx4
upBqsdSsiIsK46AUW5ziJhVx1/EbbZzUzPDoOcbpe2nc7o6v4+V7z8Nl6EN3hJa3ICApGN6rDHJM
HCeiGTubCJhlLIlNGmBaFbsfBevs/cbXnk8Bh2UsuQoLoptSAp20bBg60h2HSwjo6WlYrDF87pvx
wIOn6JV4Mq5BN+/uMW4kBZQZ29uwS434wYYG+znuHg2LccGuM1luUHG8Bw6hRet4K7VJaIIJK+Pz
vAOIuEaA4+AIvav6W8P6q22401JhTCZ6fSeCGEv34cfuIdbgZgrOPHPhMEq8iIV1MxbWZ6jT1RMX
CcD/D//n/x2XXhvHqmuMdz3xEcAh7l4W2vM/eDP+2W/8YpwpfohRordhPBNf/spf4Od/E5p9G3q9
Pl564XJqa2MJBd1fGJqSnXFpjvTlnke5J9RcQiKb/qsPHm3AK1Y7E12A5ZqzcbOWfsqmY2xhkJOi
2sZiGh4aBVQtJLfgJLVyvvT//Hn8b//DH3Hu3TBYZ+ORC2fj0XvPxtsevxDPv/hifPkP/xKhUCGG
o4vvq/EqhVB7sNCbyXa9em0hvvAvfy3O3XdP/Pzn/1N87cSPxC98/t3xcz/16fjhT34UtmsxXn3p
tcQYzeCW/eu//XbcujPJVFfIwEKiIDp5thJv00ztm9Pnz8b3n3sVhbAZ7QT/b8JYraH8DWI3YN8E
FSvES1NbyTmvQcK1GfPoHHaFNGLVNSYlTKYegmYF/n8TV9NGhYbfDzTGjedvUXBxMh4+91Cce9e9
AJuIkaOH4jvffy5+f+xvOBZzhBITxrg4fjJcCsGcfyNIDW6u8DdvUZKCXMCbLCILIWUumkLPbREg
7jHfjQXKm8Bi8J7CmqtowGhQkOqGYM/pP12KwpoqQtdK885bL8m15epx7bua5GoEYIjV9F32LYCU
rXT16SjU1adisLCGkXyWRGlnvrUXW5jbncxlenDCEk3CYMArciSlpGHyrlkEL7BJiMaZM+ImB9mb
1bMwPxDgQkKEcWutMF+1KM4d5EuZeJY1zrsZ0NhJXJ0lZo7to/w5zj6ASBfLNDJti/XeIfPA9QtY
BUuydsaAeIQiCqBBZoWxTQG4Ki4mdaqbxpirmLZRUrYHkTTwV8qgJG0Y4hr2ZzFQblN6L5tlgVBL
dxjMbkKMBoZFbQVfJQJaTAAxmaVGIAe4a8Ql1ogBWNMA+KVcTrlgvzo8AiTOdFGCp4U2Pc6PEjqh
oBFQ38nUw2Dc4jpgzXZQarWg+Fbc6PjtANP7GKlFMo0BRZRraFkpBuRoFGCU6gGU+5zfNDFWa4SM
zOAGu0qWXUnGmQurpbZMyVIljNe6rgqUZCNM6y5GRoE1ZDHfZZKVlgFQZg7ah1Y3UzNGoIkcBwB4
LjwB1D2YrwrnxmbIRyA0xUBLgFv1wOT4fMzBTjjzTt9zEnaFtQZQSJXvCU0xsH2P3zo+xkKtch8W
YN5WFmH0CYAuE1bQQoxpF5nnjZYgYqd2hqiFZbNwp8Hw9gKcx5Pw/b97JiUAHervj3e957HoJMD+
6uQ1YmNvYWRuIF+voC+JOQIsCIKLsES5NAcycDhxZxaDCCOUqHALCnMXuE5YZH6TBygfP3o4/baB
930YThNjhCuM0RXgcMRnnno03k3/V+OeiMEgz4sIbe5ZC8Z0Tlm5Q5AOcxe7DkAKgGYdG+eZFyW5
GJl0lvBAGBDfpNYDkLt8GFNnoa1mdpnrdESDuUQTs611sdxA42ofEmYLHZWzvhSC2Xi1dC6guRx6
xuB9y8CYUJD7/zh7DyBZs6vO82T5qlfee/O87dfudbe6JXXLdEtqGYxAMAoELIgdllhmYBZiYZnd
0UQMOzEEsxEDMwLBCAInISFGFplWS2q19+55X/Veee9tZuX+fjc7RcOysxH7vc7OrMzP3O9+9577
P+f8zzmAKi1+2rS9V+eB7r4slKNEH+A8VqPI70Ijcs6yv6kcuG2AAvKDHFU+XPOv5ZFjyyiaNmVJ
ri5NL4N3akRmufw0+q4WUNAB13oZOsosHivLrdVjpXQtaeP7dLs0gVtmQNEoAUZBQBXe+ZNfCi8/
v3nze4EJyzRCB3cd5UR0bu0yuAP3XEcXut8Ec4nfiiDOPs1gMTJZuJykwYopTK8IFwZyBnIuo5p2
2LlYoJy4olrRjQcyIPMsHrssepM84DqsKDPU1asCQUEBYZgXdrNdGAYTyAHTpfb7t5v35rN1X39z
8x6ASOl7k4zGjULbvK9K3JoKal8CNvvHpihidX6RRSj97XcS2D0/txz9z76Cue98unevp0Dz3eHl
5rui315n6KT2uDyoTfNoOadikOWBwWoIsBaKTYRkJZnaS/A9d6L5vfTK6XjlO9MkvqTMAFqwOZle
YXHWnVWFxauNgqO9R3Dn1WzEq09Pkffqxfj1XzsVD2MROvPSX2EZoeYgZV4kMI+OTULObmdiFvId
3fmW2+KHf/zdcfrSq5iSLzMx8IuzQO8xiSduWfTWqHQBGJlLES9aZshmljLvS4IU8S+iPWmpaTVC
FMHUCxArY3Ve36qj6PU4eWfW4qM/+0EAxATnewQOV0eydnQQGXjHqZMsbpS/4d9j45+Pv/z0FxEm
FPhtbsOSVU848EpcvXAVzhLjh45tgojeO9Aet9xRTXmHczHGOafbJ9LENmO4GqX77RKt6OJvIkSR
suHkhaeju5rPaDcuiuVYszJ1tBUi6TLk7AZI4kcfvjUBk9//j58FBM0wvifj8W88ibUrG+94z924
8Ug3gS+8hTJIdwFiu3rflQIRJtB4rXWmS++/fPLPuX4mjhwkTQUa9X/5g8fiM3/+WLz//YfjJ3/i
A5j798GpW0kWgA++/52J+3aT3F7z3O86+X7MszaA5roK8dTyFBtEH8qRyUqmhTMCOx1zP1oy5v56
zOJZrMQlzBtBRAlKgFuGxKFWjTdyMo9vWMtSE5p+Ddw163WuoL1OkDPssb95KsYuT8UI8/ozf/hl
NDZSbLDgHTtBRmksheuA7EqK7mYBP45a1VdEXBq7TroSTVP87Wg2m7KIzr+UM7zR37z4n8/C3x3/
ZbwnAIDgM52DLgEXsHoWDOeMjkLrhhr+LiwqzZYnMKPNqAB1PFp54++W0LEFWHjS0Vq5ZEAV+gEo
l4AR4QEcrYqjFb6MIJ0mAE1z9GCdzbJYzeL62MANoZvH0B9nrWewT71vOVNAc9oh1JLbRbs4E7Ym
CM2tREh3JOUohwVoC1eaOXAyWH/bcO9uYq2/Mj3B4o9CB19tBd7JGgu8War3QPiuVylg4FbQx0aA
CjczWIY34UektAJekX0lx7OaAB5YkgDRuo5sZQF0oUwwJxm8STn0qTgGNV6mtAqJAYyMY9VLCUO9
HuBJGCbxuJzIKsFKOcqS4MJ8cSl3Hs/Y8ksGWuzksVhjLc8STVRZn4vWvsboP9TCZwLScZGXY2kr
rUKBxr2WR56jB5KPishu2t4IsFmZWMQ9JpDW9YOswUrXBucVvxWaO1GmRKHeGF2NselxqjtglUfB
thbmBu0yalyrrpbTUsBJFYs+Qaks2rQX9/r+PgJJlrA+4+FYYj1ZwoOSRSY0Y4FyTFuGy5RAlcxR
LfYbWDpWDGpiPmTgJZk7y5xdJgZdXOA5acVnzgtytZpPY9Vy9JZisakCnOreVn6U0A5HyTLpalL+
KviHDdAL2pBvNZUNWNZaoxUqQwPpJ1IeOdy9yiOLxBvdvEigyirz0PnT0tYSPf290I5KY2xpMs69
dimuXbrEc8wncGRU3xyW9blZ6sPOTMT85GLKDWg76+mfpFyp/AA+XPfMEcUASpbtGqzlJW9EOs7D
j92CZrG/P+J/+fn3xYf+1cdj9Tvf4TmT95CAimV4cuV8Tm4+XMR5LF+F0efcVUFlHHIPAl01WBUu
XXjpO0AsH+hXQJJaGuPHedeI9dIo6VT/0vMJ5GhTjQAfQL6E8cT2a3+3fJZ8UwN0sljuN+AdGgjk
2qeFPdXBBIhtE80J9Y98aa7vmi54Aaw1QJSi2OzyMtGxkb1Z5GopnbKjF4Bz5wiS22VyrGNSN4Lw
+uQEBovOaKEWbzmu1JSWn7VDiszYxEzU0zarejiWuuE/2wV1glmXRO7RoZHEghPPISEgAv/ym8Iw
yUL+/w83hZ2AQ6sP52PQ4XqbgR8hksEVhW09nadwLr5j81riF61dHrN7lVf9SpSyeGDr5IQgalpT
wYOyDlMOgVaKL1yNBn8PxSM3glRPqSBz9R46d6ZwTgGS13FzubQJvvuMi8DI9vIIUpu9vu2All6w
NPEumPL34jGMr3RvnsdzF7/nY7oP/y7ur+tTS5/9OcXryshY+mzf2Ufu62/FrdDntsElQSHtu72t
uPZZ0C9e2IUHbV9ehfyZWszhW0DiNvztl89cAW3TxoUMFiYmNYNylYiYHAOrggmVqbRsTEXc9QCh
wDVbcfbZxfj8578S9z9wf7z/J++Mv/iDF1k85+Mt7z4OSTmHK4qouFIy63LsEv7lV158PY6fOkge
uAoIlqMMXAakaJ4BbhRQDSbuNZLPrS7wTKjvtQP67+ihhhSLgqNmkd9uXrsK1wA3IibxxdUJiJFw
DQBqlU1ZslYwcsq34tCRfUSr/TjE0oPRU9YOrIargQh4+pUX4//4F78HiOJ5MgQOnGiLgf6GlBpg
agzXIoDi6C17cT3ARcFc3jvQgUWvPS3IWtZGBm6mxUAt3FVFq6O+eZ+FBT5LsYRaAkYtJY0GFuwK
BKDh5fLXynYbEW6macwmIJrntw995P1E9vTFlz7/Lc5NUVXqaF29eD0e/c5zmOwpLcOiWUnY8gwc
ve6uTqL5ADgImHc8dG/ced/JuH55DPflQvzQTz4Yt588Eh3wPl55/vn4wpe+Hb/6678bb3/H4fiF
X/zJeMtbbonnX3gteliYTXT69OMvxflXSdLHsX1tPeSHqoivPPYSFT1YyOA/reIS2cJMX80g6+T5
tWIeLkdhWZrDJQTRUAsKN8092QeMR4RTCVqdCRKFROsIyhyLaDWWrA2FCqzWF54+DchoiP2NpRTR
HiPgg3xmSOfzr950JWbR534BCCjo4CbGLlanAnjy/whA+tMFn4GZ+j9lYEZoOQ+1WilDnR+O+l0F
PwsZBhY24AvSObkI2cliqTmi0WqJElMmbaAhapHxRryi6pj34Hl8eXUfdcEi7A37XYHgzh/8VbAT
2w5HAyXiGW2FmVzLFRoJz66jIWtLs9AoSEOBq1tBDvGAOU7WfPYHIvB/ye221jOpJnn9TeY7AJdX
Gy6pSgDN5DiRx2jlRqKlcilI3xxACp8TnCG4OUQiZ+0MrDn1ZPOuA4Qw2Un6SyJI2icnxEg9F15d
EFn5OVhldnX5stDtEpWZ5AenKCOMnG5kAUOq+De3b8JPPqZnoTKfsvHrOmTcy5/aZSdlR1rYtUZx
LbkobroM9SD4m1YOEwyX8xJcVfCMXDxXt5Gi5XgMkDHN7TXIACpbUEGhsgV3ENbhKnhFZVhidrFs
6wvOYrnZ5foNuLZKGKMrKAlyutrh8YQ0CCLJL40N4+qaJHpuA5fYOAs3GAslZ4NFcQfklMUqr8u7
nPWihvm/DojYoc8EjLu0vwQLVx2KziYy6/SFMSpswO9jzG97z1i3dKftAFbpYFx71ZwbDwmWfLmG
i1MrMXFjmnPD4aGNM1ABjMTVglcCaJLzZt1P9zXrvMmWBVXlgE6DZUp0qzLmfSbyg5YZO+W4yRqb
2+Pg0cOxb/8h5Fk9Czgjhga3ExW4Bp+WnRlRAnU4h42UXCO9QWlPPo4dOUwKlynaMR3f+uIlAADz
AeVV3qNJmdfxaBhAMnZzPLRSLSAHJNU34n410W+qboLwk4lD5yHbBNmuOoAfZMIuVJcazrmwNJfW
8LuOUXz54z8aJyi4HOdfItErUYOM1TLWkz3VtA9ayjZBY9sUcjaTeysK7y5cJceTJXPSfExuZTqX
MZJFbpj1PnEBcDvbM2ljfzlYjVBFDGQxF9U2lijHFR0Gzw2hD/iux4tEtzLWdP1h1GDuaynUs7CF
stdKsJQpGHQ1mlFdrpb3leSRMh1+t0lATdFtxRdL3+ikl/Bexbg3QXkWC/A2FqqsgBoQhjrANVAA
aMviSiZuOwl1ZmA/4zcbY8NjMQqneQZX4ChA9u4DQ4mGU5tDgWD4MiUSNYZbU0QpcOx5BZKgqvCu
iHKKvdEVfPqHm7/5Ejx08BJcbAGoMrwqaqgwzikb+M7zvXlTFAk0gFKmk4Jj9cY+levBfSShWkYE
FJU3QOEsFtxqAy9dfKO8fPeaRL+n83vdIvhR5PpS6Nk278d93bxPN78TfAkKB3lZRzAw7UnCtm3+
7vl8FfqmcA7P62Lgu+e2x9Ct0jH2EdXaiPqR40E/8PJY7919PW+xHwVUTiL1W6/mME/jPl3fXwRY
tEIhbH+kgcKgQfOtZtAtYE1pqm2OZYiQTXurY+jgEQREKRnbx1josFQwEqsRUoZnjw1PIvCq48Mf
eS+D7rF45AtjWAqejV/4+E8xb87E89/ZjI/97EfjwoXL8Ue/fx7BAEEV8/QF8l2de/18PLR6D+3A
CkWCuHqsZvIPLNdSiXXSNbMNPtEmGugK2twGdQBXlvdEC6ViGgBYqdI6E2AfJNFGIhanp8m7xESp
wEffv68dkNJNss4L0UmaguMAq3oCES5OX43Xz5yGJH42vvSZ1wmxpmZlF+ROIlT2HTpADe4V2oXG
hvZ78vajhDv3sxjQTwiHlG6C63UjrK5eGY5bbj+MIMRsC+o3227K7o+2mcNH5STLE6FShoAugeuQ
boY+z2BBYN1nUUDDQSDMAU56e7vQjHMpUd8KgqyluSUOHh+MR//uKYpBD8beQx1Jq+0d6I4VtMeL
568mgvjLgKGPfeyHY5y6eZcx4d//znvi7Q/eA3dDIuR0vMp9ruKf7yGP18/+D++PZ+Bhff/JC/Hi
S5+A0/W2+PjHP0q/EmxCJOzb772TLMkLce7ccLz85LNYGbsRAjlSknQRPNKCdjWMtxzNjkW1HuGw
SymhZZ5JBsCbKJCAH5WMAvzhdvmnbYKqj4w2x70CB/DOiyecxp8pWuoZg/W4x9axuDCQ2FPRaKFV
s/kDaiCvbmgFS4sJ52W8CqLSqEd4OuoVMmqjJtpzM3M4xvx0fdtUmv62TQwopoTzxMzhghbL69QC
hPOSt/2Na60SHl+HxaQDTt06Fg9EMu1moWN/78r5K8DSnuY/Z5+/OQ+htKbrupeADJZoekFDTXMy
tQepukY+IEvPeI9k/KJ3SHrKGbSBFZKa2ntaqTxPultt7bz8nj7jvQML4RoF4QnA5xqUJsG1VIJG
zg0zfiXnL0R1W1Xs6+iKeZI+lgIIaiCtl+MGXEeIj8NNlBfV1UKKC8lGCANdGZV8xzBOfb0N6qBn
UqcZ9SnYqkiotHDvLt4GX7nYyqmhyYASzsMzyvDbDoA6TyoFo7iAJAAIngv8LdY0msloYd8Uvcik
0KVkNv9yHqguf/l0hq1v55exJhOAgQu1e5Bks+20h2hAc9nlsOzU9fXhiOCECGXTymgNsL6ozzsj
CMLNnUMp3CTZ7vqNjTh7aThegyc0NQG4BUgjMlK29NrqBqJaa1DekUO69pGFysclLA5V5GWrxipm
/kPlqvwpLRMrtME8al093bjgcNWgqFeR86oCIDQDKX2JjJjmTttCaajBAlcFgC/nGZmtXWuVtTS7
+zoBNnC5sJaZ7LgBDqSWlnWUFhf7jnbkA/fl+F6DjyvnMYslbQMQqcvq0ImjWKFWASYovFggeUzI
6zr6EL4ZGvTOKiORuVwN4KoFXMt5y2FhqdINzD2ehW6wASdvmoTSlhRrh3JgQIv5pMZvjBAlfoZj
ylBysaiBns2Fp+LbjaJpbdFXX3kdgIs1DwtSXgXLZ898NcqzDuWyEv7R2bNz3FPE+9+2P/6nn/tA
DL3lJKTpC/HU80/GySO9yMsdjIhGxiEhRLpG32ERt5/SdGeOamHFBMf67fjheQO4Cj/yUf8aY1B3
mi5rc6Np9dLdJ1ldd60W9mTSJGWLZidGHK5CkhEDgrOAsh3oERnmhbmx8iiFHs+DS0qKqZjkyVZw
HTltKiG6+6sc/1yvit8tUZPdhSumlYt+ymOu2t2E0gBfr4wMBaZj2M6bThSKAnSFba5jrdXbjhyB
MjNA2+iS01fj5atXaAdytqUmhvD29OORaW7W/UsFDgC46SXYlfnEQLQRLu4KFoEIt+YPXKIAEPz8
jzd/K2661BSjbgIWLUADIAxum7MXNi/mPoIMv/daAjJBlp/93kg+fysKKzhzCeBoZXI/vxeQCViK
xwiSigDGa7h5HX93E+T42fZ6j56neF8CMMwCzFzOQJXpLaKyBFSez3t4cx9gV0vHeS77yPMIoqDx
cl6Tr+ocgHdEC9FHk2WOP9M5vK73Vbx33U4FgKVR0kf5hqWKb0k9lgT5LoAhywRmCPLiztUIEHRm
IJ4hBL4aDkcjBLuKelIFdGOZqjI+CpfOSp4kfURakchzE42kHkFw8/I0tZ664mM//xGiAn8vzrxO
Dbwbr8XRWzvifQ+fire9+1T8p9/9QwYZ7SccuAoB5m99fUThkD7DbMOFRYpnBKfN0jabDERGcbTB
79qDMCpfQPuHB7VG9Bz1BnA9UYC0hfxSmPArBok8w9WUQXVqhKi7zkKyBwDXWNcY+/efikPlJyAo
L8cf/sWfxGc/9XWsM4DW9gKoeu+HuDfA4sToEmbwqxC+6+FxnUDodTGYzf1kmgbahHZYihXMSJt9
+/vi6SdeS8Wsj58gTxaLsWN8k0XH0jfYApnzuNKc8GjueKLTYqXKrwtJkqVmwwwCyTIzAque3r40
aRYghkryPXr0YFw4fwHXxixuWEYB1r1xuElzuEL3HpQbcSpefel0/Pov/FZ84vf+1/hvf/3d6L/a
FpcuXWTxqoi33n0nmeYJ8aaW2twqJGn4NdY7/MjHHoyv/92TcfrcxfiLv/pvpDjYR6T6SRatt0UX
eaT+8E/+Oi6bL2eERYGFbZBIpYZFQrDnKRa9hiCi6ZUQBLYJrihnqUeEAzwKwIo7YhQiELlHdmPU
CWDUrwtzy78KM1aZ4GiuiSlct8IRQUSWCglWtl8gXKuM9AlGmM1BOt5EOCLCePF/XQF0qAu3HZuU
Ay6m2w9xnhSndHFOj+JOxxvIAh9GcIaUNjeahsbEe2MVMo1AnnFl1v0GnrcFqp1vh/cPxIP3nYpn
v/5CXB+7EsTv0IKC1m+kj8DKNhnJ55xlyeMOnJ8ExAApEdv0jnfpbCSJY7I1eW6pEQbjS2anTzkK
WJSAk7Zl79TzOVLS/aR3EzDL4hCu+au9SD/jfmrm+07O7Zmt/7hG5KxnoMpimqNbNGqJJMblKDBG
sd7AglKyiHWItAzyd8ztIx+HlTEFW4AZsOpzbfpLC5JllsAAWL4AuGj0Lty6SuWbyHNTvrjIZbT0
8Z3uDgQJ5/DxMNaJ+tvBAqkFyudpUV/zN5mSQ4TlIqkilfKjscBV6xZEAJoh28zrFXVb0cMiU9tS
CbewGX4mwQH8lgNYwiZPQG0X4ZldQmJyygpAUDlpXFLewps3CRbi+pS5uXh1OC5evhnTZANfQRnK
wK1t7WiMgxCGHRO6PteZh/NYsrZROOR21qLo7dKmJYB3Ey4505ZssO+qhHgW66xtB6jeeect0Ubi
aj1hC/Rv90AXVu7BpACdfvk10sWcTyl2tknNsMkzk0dYi9XHoIF6rFSS1newsOkmtJyWctVC1lkG
t+lrlhcg4UMez2HxtR9NoFtB7q0aHoyWr6MHiLruxqODN4YHR21NIgjhDjU1kfUcsGIQgy56uVQt
re2UD5uOK8z/LQK7fCYT46O0BbqGFjM4PaZGmRwbj+sXb8QkMqcEd1hFTQmWukqsnFUxhyV0eoFK
HQR2VZDKZwurTh5LaQnyzhEqyHD0Ot82Kf47PTEZZOKJ++9til/7+I9E+5GuCIov50pX4q4798PZ
nU7e2Txjopz+tXqEScJLBILIgR1y3eFTTedzjVKB0/KUVkzGWIXmU01PzBD8cmnO7fAwdLPaFsvG
OFcrGIdaehmsTDDGM5nYReT+vkU+JROk4i8lQz8qDtfZw/M1JYimc12NUou0yElzcfhqnefP1F5T
wZh535qwgiu5XvrtUgQtCnwWiyrYjN5BRqFo5AGLKuzbcD+PDO3F7bcQsyMjWKxmCKgjX19bTXRC
j9FS1UB+wBY8SSBtTsRLBYr0Gty2xFd6lo12JGBlN/hy8/a4JbsrbcXPxXeP8bOCi9MmwCGY8Dge
kd2ZfueN6xT+9rMiqPgq/u2753M/fxNISQ73/IIkN4Gc57bFxev4LnhJspp3fy8CLs/nsbZPMGQb
3bd4f7OjN7hOVYzzEMEW6Xvv1XOO8/Ie/Nvj3LyGmqJ0O9tgik2Jd17D9qrZen2P9xg/23433wtM
LR4cZypYrAoLmW1SoBesZwxUj0QICs4FX5L5tKRsEW2pNace8NSHZvLtL5yO6RtLsQ/tooaQ6YYO
zJf7m7D0DNKuzejpaY7XWeRHry3Fjzzw4fjXvxXx6//y9+Iz//XL5Mfqik/8qz+I3/7D34qLr94g
mqY2Dh4ZJKx+NgnVrUTS5PoMYvOgpASaaFjyMarx0zUTISSx3BHcQARO+SalTnChmI9pDaSscFpe
n4+mGxNMIkzPhK82EnFy/fJIrEKS7+7uJ1N3R7w49np89k//Jp743gvKnunnURYAACAASURBVDh+
eysCTe5EGbwi804VBIt9aGmFLrhNrQDLFQSlylINlrAqzPz1uNhyaEZyKUpLXyG1wAT5pQ4jANDa
AKXMcx4AHapFhQmULA9OQCwnpiPgA5ONp8TPaqYSFPftH8TkvgwoOs1kBUBiGdtGu+2mhNOPfPhd
8clP/jEZssk0f+dRntVWWmQOHOuMqzeuxX/6nSfjs395Kg04mhB/9+2XcDUxphnETz/zAlavg3H4
QA/RdtheuY+x+YmoWq2II0e7eW5tyKuS+Ma3HovHSVnx1ltPoUnBw2HhAnfD/ZjBtYROQDLS3Bpp
SuBzVbF/A6HcJQg/lY66EjR9tDaZRtqJfDmv3ARM/kO8MeYU71p+CmDeCLvCP+ehAA23C98QgwuY
XAEIb0XbdnOqW1nCoiJpXT6eC4uAQ1mq0qobm6bQrYwf/lYTVNt0fRfNlrMT3hwidxS4KBO8allk
fEaCg1rOmWdBXULpkdsIvkibc7cXjuEd994d888Mx8zYhejnDnSq6FJxzgmpvLsWZiW9QJupY8cd
tvMLMavso5UJkjrWI/J4A4DgpfDPc0hQ14qzl3NopdKW7Jmdlf7jDriCYthv7EXlFkCcfy5bzmE5
mbq3BbSdXN/jhHEy+ixzI7tyF617BM7iHC6jg0SFtnQR5Yt2v4aFIIMVJc/CoQUmK/karsUOhH6P
2VAo0GdlRAGSjRXQRS4yXJmlaPlJ+vBzBrKJKU+MtssCwo3qc9EooV+9t1JdUjwX61amckoMDPmW
ZVhWSniAFn/nInyJrRJt3KhCjBy888BQSPzOem57WFj2H24lMpCVhMV2ncXTkjMlpjVAsTPj+/go
bjUWnA5c96j4nIR23xwF1IzGc0+fieeeHYPAzWnRbOUUthExnMP9lojojKkbENab2wE7Lbi721pY
IBlUjCFdlqyB8NGwEAL6VgFlcgLN0l7DHG1oJZceVqo17n+dSLthrPjWFG2Gr7r3AHxF5vLlc5dj
nLJWrUThertbKGlG0KnQVVblkmvyMjnp+rBKt0Mob4DvqYtpHaVji+jFUuaklrcmeJbWaDVCWYpC
c1tHuheGGBHL0yiD3VhgKKq+spCyr9tGy0BZBmsQq8g4ybFVNjZ4luMjN+IikdCLK+Qa5HxHTh7F
oEPZIGSv9f8uX7jBvQzHHHn31rG+zY1MpvQpcidNmmoATx76g0qgI7SCz7sc67MsR/aBGZiHzHAU
zVlkB8M0Pvqe9vilf/7jtLMiTj/xOMdtxVHSypSSz8l6qFpkQC/IPxR4FGajeVu3cA+T4ofsNtTt
ZV6wPhntmHey+2B4PhqrdnVBedE0N+EIAnI24Ewna6zox422p0huLKKO7aQlOOFxy1tn0ALw6PmA
KJSxXYA0c0wLUalFJ7l2BgU70QBASDrTk2UKhUUFQ2uvaUtSCRwETgkAKDXHNmOhymQZ2ADjHEDK
moEGTOAl5B5V0bAgYzG8MDGegty6uuHeHqG2MK5vrAkYDyj4PTuDJ6EZ0IbCBnm+Bl7WCsA48y2S
yCuMzPjiqSR+KrwUzn7vS+FRfOea6TNv3Ewa4wnIMIYQTAVAoezk0glsaAEqHmv3+pvv7u9np7Cb
3yVLEu9ewy73OxcD9/Hdl98JWjzWTYBT3IrX8fi0jvIu4BE0eb3iOfiYruH3ts9zaq3zngVJynCv
6d9untfN/dx89/q6SDoQyi5a5IbnOvpqLWBROL/ttC3Fd9tgcQtdB3p8tTXJzrCspE4JUzBoIbNN
WwCLDRq1rCmitiJmXbg7G+McWjoKVnzjmT+KB+76HxlwhGSXwusBmaO8oTVR3qarKe54yxH8+3sx
Oa9F/9BAnHn1ZSbmfPzMz7w3Xubz5//s67gT2+KvPz0dh+/GHUe+qUN3dKcGlyHpzAyNUQjeFgMO
V1lVPT58yOyV+Me3MZUukQF8YXoVkh8LFSN4RzKhGgc3nMK2WVXXEXTtcKS6+gBCaJyHT/QDcEqI
8DsX977j9vjorR+LL7/+aHz6d/82rly8GXe89Ujcc9dtmLkvk0BvNG6580AsEWFjNEkDJn0FTSMA
qgKAYUmXKgT2PKkvJIC2ENElj2ILXp7Fiq2zdvnCNYo634JG3ZKEgmCvAk6ZdeysLVbOQi6PilVM
HMtG41n5zf+kud88VoI3zcoroKJtrHVyPIx+WQfYnbznePzvv/mJePqxibjjviqiAI8iQKto+/X4
2ucmKK7NOOrAWsJ6Ao51LiZAdMfd7QhgciYh8Fubmkh7UJ3cF3JrUoZi+DQlLI6SmHXRWIR2D6TP
vq4BnnUFdRVHWJsQ2JDs27b2xNpNokjJyVbLbw6XxVn4V6iiPczCeo5fQmBrWTV3lGKJeMD0D8oo
Iw6wXrjzNEcco849N+eW88ex7rh03BfnqJ+VCyoszhnnSnHO8THNNdh7/EYUGO+tZBaeow/tZhIQ
pHcM6bECMbsGQrPfmzn/QGcXwmwa0u50HKhtT7y9GdxqXcwzS1bMUrDX9t1yeCB+8Wc+EhNfPE95
nadjP3c7z0zSBqwyIpncqCgyMPG3wEa5BiDhL9vpXQKT+b+gU4c+riR6QO6V1iutcOjlqV3CNZYR
XipE2qAAK7x7jKqV/7yKwEoNXHuYY0nY2kZLjEq8TsiPLkgyW8UkvV/oFyw9dx2Ilg/dGaUnDwfk
GrQmpJSCSj4Qzw3fFK9WvrDVPB3G9gYWnwtXrsIDnIvRC6/FyPkzWJBJ1wAgMnmnY1mw63jYROOf
RzlIGwtIFSq9QMxxWq77idUvyzMo4XpVWn8c8JwgPWuzSbIA10BKr4aSkCGtyxrRpEaL1bDgtpJG
oq+PqgZ7cWMusPiRW6hE1x2pOUTTEvwr4HyWGEpM78XWRFz85qPxpa9+H9f5OK4zKB/d9XHr8WPJ
LWfetg0XfbrPvEumxrAQrokoMRC5hgIyUQVo3CbyRb7NOu790mZcj0Sbm5LCGoFV3JsR1UskylzG
3aj1Z3JshpQWteQUY5xgHRu5Oo71nILzg53IDWQvMi3PQmvqBEP7lXHzpGjQct3Z2YM84eIAhm0s
LgIjVnhuEf4VwVhHDx2Oob17Uz4qoyjnSAm0TN3CCgBmLcmSVVlWTcTMim0y5IV5KmcC4jpQjgcG
9yKPGmOexNNmVs8BlhcAUFqmrOBQhst2Fc8BOBj5Cqjl/jfg0kxNT5HDikxscJVLUWRVWJLRh3tN
YxEQZZb3CtrczsK/TLCLFpsydrLA8SZzbZr7WyF10S9/eCj++U+8IxqOHIhLTz/F9zNx+HAP/Z5L
9IWjh3pSf1g3MqMS5SinPzLIJTmblaRhMdUGA4QHw3PBs1EgrSNjkdVowhETpMTh2ZQQGQvCj20s
QOu43/P8Xkmfy6FUIZKcjrbMeGEVxaK5RT60MkLAV7CQ5whqyLEOmpqlSu7YEv4I6Al7GlFOd0iQ
omWLNaiQFR4QiTy18LQ0hRyKcg7QbMCH7nOjDC3cvIvpuHGjDmDOfAXgYWYLktYD6KdjjbWhyjyA
zJl6ItN7SFtkzsNSgqK08O7BPd3A76WYcjewANJEnoNCHu4d5V7wniomFD4KC8VDAUw4ubgU4qOw
+bm4cQtpP4WcwtZ9tSjJffKzoGWGl8KZ5TptHuPLY3x53uLLa3qcMkVB7eZvXtPfPM7fFfzF9ngO
QYvvb24Pf/7gO793H8/r5rmKx/i33xfPo+tREeR9tPByXxcU/3bz+m4Fjd/z2GvlLEz2gPmqZH7o
Gihcw/vw+rbXa7BcsgdCAoHN4+ZvxbBLnv3vvlLs3M9nwe8cmGMgawJgbU8+/XUiEggUikoesKUW
8LSRQJRoEBLtrcOtWSXSA8UCfsBEXHhlgkz5300lC0TLEt/dXvr++bjn3oPxljtPEm34Wjx76ffJ
f9WDq4nCofB/1KQa5B44yAEZgpfurmbyU5WnCZ9lUPbvxTrW381AH6O19ANa7S4arSRaffqSY72p
mroyFnoSSjIR2rpbAErr0dTdFL/xq/8ysNnEb3/9d+Jrn3kybjl2e3zgI+9K6R0unrsBKDwQdxIt
ePb0ZSYneZiIONwDMROZyab7j6fDhNG3LrG00mLhCAxrgandSZY2akRQ1QonTC6Fi1Mp7bIG1daW
Wj3HM8CMVtKCnZ4Vpq2CAOPJYkLLYGlxrdlEYEjgN2rKW8uguZdlqrE6XImP/dz7qH34NSxs8snW
AFJAGIi073xfTfzit38EEnYTucVmmZDVaPCjcAjJk4WW3E25mU5cpJfPUQYIkNXOeVfhUGwCQpOW
CR+sksVijQVkG4FhiLy8KAss5wgIKIFYKlVsByvAepn8IBYCAGMtZrE6uCdZopqG4ZPsxfXQSl1P
C0lb7kZ3TjVCMQOvQetNSSMWBgSj/JJa+riqErI0/WUGabMXD/T2wW0iYz4RVeb8cdxNLUDmnFtI
WaincaPMYgFYhY+yyQJiCSmjM3cYiIv0h/NtGYlwDWDlfOsFXhhyjYzEZoQzmHPW5aopwVFDZpWF
uLZ8mfGfi0FAyDbu0tuxxL7txHvi4EMPROZXfi7i838Vf/Yf/j1BFploeuCtMf+EmakYt8AY4Bfz
jWfLdbQt6wo2GajWI624LC9OBe4btxjfCo5waKc9BFnW+ZOI7mfPIQwTUDlTYQNxPNY0vkPt4BuI
ykg4QZujS/npIiqwUjYoHZQJZlkT7Gmrsi3KEa2ElUDOBsK151GGtKb0UA6lGWm8zdgxRUqOyGkM
wclFVZYHCDDOy7HClOFKrz52a9x2DIsorU0SeOlsXP3u4/H4Y09TLHiSsUluLPI/bTJOayBvDw3p
3qeFzJdtuEFZuDdaYQ33B7+n+/JuU9085o7JguX9WHLENAJ1pE+oIFa+nPMxRJE1JViWK6JzkKzg
5LuaIiVOA0k8K4lQtZ7bCmO2rrEpqroHaF8mZl/+bjz15AvxzUeeJLqKeclafAJwfHBoCO87qVlG
pliccVFhadtF5um41xLIG+1mYWQS2qdScsyXloUPWWK+PfqoDJpANRxPJ6bpaFZXsK4wxw2Tr6N/
d1EuZicXoFA0MSaxFA4XQNUddx8nAlhiumW8aLNWL4rNrzK+UwkZrVdcVyWsDvkzDZBdxUqkzGkE
yEluPnDoABYraBc3RuOl516Or3/lkeQS7EM+Hj1+C8BtABC7J556+mmCGqYAoLiJkaX9A4OAqpZo
w4qnfDuLW7KCPGrAV/pLnwYrhDIJIKSreCmlV9mB8kEwkM+PuWhakg0sXznAQiMVQ3y2OU1fzD8+
Ig9RDjh3DiA4DZDZ29MV585eTIDCIszrJFvd4l7vPFwbP/XDb8P9Rea3qZu4FpGBpUR1cu0K5ung
oMAYeSFIciHC5JNDcMrR0+2WgC/PpszvFI7smwIKAPlpcNEGTHQsWqgongPQt4vMrZB/yLpg7sYy
ra40PEX8QeuooJ8yuHsFs6YFySPTy7RWsrZUIpOrGKNWnDAtSakmcoEXVlSj/tzHqgECTCZPOnYC
MF2FlasSZTrNUlKAyPvb3Qb8MXvnFuFs8pwqmA9G6i6uUcoID4jjvovk2Xt7SXbLZQx4KEP22g0+
B62J8wxKecd5+n6b4JRt7sl1U1MVS7MskzSO+VQAAwpBhZDvbn7/jzd/E0D4zm3Q6L//XNSzFDoC
Irvc87m5b3F//xaa+Lf7KYgVPu5f3Dyv39kGv+ce0+bffu8xbrbD3z2PW/E8ntvvvUe/83puxfPZ
LowLCLuCxUhA6LlIh8f+W0lwum/xPiRLam9SQCsCFKBCKro8gUnb474CJdvu+SXvJmHBX0ADflMD
1vCqIFfwF1wJCmAFu24IhbMRRIaCl+MCrCujfA2IGcCcJuQsWdJxv7PYZWPfQBVZy43YAL4RvTU6
iln5DPoxY5qvmOCA3P09DDqqr8/OxgtP3YhTp/ZGd8deSrwMk1eKrLbctBEY8pW28XVbbLiDUOgt
og22QXTr5NLJoHHUwPWS9EkDkwVpC+IvKhGDm0kAwDEUNwFQJpMAbWYCtxXWrzo4VpJfa7D9M+zi
T1740/jUv3uEUhgV8B9IxIYgG7k6GqPDswiL5jh88ABgj/wkLNC6B138KzGlmeSQj8ntoc9+D1Yf
CbYO+F00M115mpdNxGfywwrCzF1YfApGtDgeLK9gkIBRNNAjeF5yHng599FekN/pCTkSMoC0ctpf
SoTSLudhPvM7SyqgRv7FOnXFjt86GG995208h36uuycWTh2OG5dI4pdtjNefuYLFEIsKfS8wNe3A
xDA5vhHUy+utcZaQ6nHcFUYspuSrCMWUQ6iSBRhyaCPRoWpza4CVBciY9eT66SYZbNeBXtwJ5Mhh
dVycngUI5pMAPbJviGgbFnIimIyuqUZIqhGXAs4625mZ5kcDKBPWyIvFmRqgBbXI0ermbPGzI9gZ
rqpk/6lmqFG6oItynVHODGeM+6C25VBP4KOoce6YgZrI3lUCAuZJRTHOAjo8Mh4vv3Y+ro5MsD9n
xI2dZSHeJC+L4FG2oaWt9lW0xcN33BWNAIo8i9sahOmxRx6NnrFr8dLLT1EdYCnuPn5bBIENuQtX
ADzalWQykUKAly5NM9usMNvlS7Wwh84w3QY67PzUwD3UV8LTIrJzJ40fAbMWUe5LxYKFw1IgGS02
PJP1Gf4moWIZri+jyEzMugtPE5hBryjKAQG8/KR0yGNVtUDtJgNzx+SNlnuRi8HgzQlecKvnEeYB
MDAxZC15y8wCXg5ozstlwRpQqetNRZ+V1uSIGywiW6IbxugWi4UaeROLWBXJOPf98I/Gvvvvj+uv
vkbh8xfIVTeFFYhFmvG/jpuxDpeU3EgtCvKKdC1rOYT8AzcIvwULmNHAKRyeMVqDNcHFxGoFliFa
JDlnjkWrHX7VLYcGUChQpQvCjRJheyDk56MFDb5y7z7GK+rp+OV44gufj6effTaee+Fiki/ohPCf
umOgvZdrV8Xla4tYCag52lSTogAtLYMHJ428bZ6JnCC6HksVTw0FzlHo3NyFh4a4oH8qCazIMp5u
IpfIxI61VzCixWKOObeG+0p+UC+Lo8XXV5En84xL+WDmpDLdgsk313F1+7v8pFKs8BLlBai7ZH8X
TM0B+pVb3UdN6Au/kvxTTM00hydvolQBUvpRNt/+zreRWLSPqdWA234ZPtQk19iiJEw7Fo6GpPh0
d3cB6KgHiuV7hnm7TET1LgBpF0vSAvNmGc6H5bMMLGghbcMyY25jDMCHArMOyNrg/lLaAsaDCY9z
zHutg0ZqCza0ypTCSdpBNmm9L0MhtLzU8LUbCWAMsA4sYCW7dBnL+8GK+De/9tPcV2MsXb1Cn03B
EYOjiVUym9x1nMv5wLwopeSYbn9lg1GBDPE3FnJGPNfdZR/L6exg0UrKLy42lgJ2Z1/D7pgzPHT+
ZkyySO5C6C+j7ZUogGU8X4FVCQWsV7DAG7FXBjJRSTRwQktsjdY2jivjvhRPBieVALS445Q+RpCZ
gyunWlPCtd3HBKGmyanCwmiKlV0seTmOse7uFlHRmxsMIpq3yudVLLyrWARXyXKwinWxjkjf43h2
9h7o4/Y5GWtKAgPIU8l7lloyyWwe+TuPd0jDpnPKRMxuGfqIae5C73LukidqLvSZOwgU3DX1Ee9F
YMPHtHE5hFQBlGjl8XeTpULIiUZvkJuZJtTD56Codn/P59/Fc3luwYjX8t19fLm/m/sp4ovHOMGK
x/LxB5+5/TT5FPnu4+Z3Hus1faXJybtGHOWCy4TXwUnDokO+kYnRGGGx0NVB5pT0u23xPL4Km3BU
aORGpAH/V2v1PMVXsS3+XeBq6JAQWHmegn3QRIWF9imU5Vq9Aaj4K6c6yYXNzeQs1hqklmVNvV1M
tcsw/UcJFd67D04BhX8ffOhutKlmJt4m/PzeuHh9GPPlkwzQUgDUIDX6XiF6bozMwujLonOiWMaw
lvTtbYmbwyNx6t6jAK5X48p5rA+4IrRelWHlWFtfxh0HQR/Tq9l+WwFbeyCsLiEAtvnb8OkG8ktt
MyDXINKnGn7clGZ4yeZqQSUsHmuYTIcvXuN+MnGSqMCRycvxf/4GebYuRbzrYciCU5PxzBMvk6YB
FxIm3jXOf+7cJUAB2cAhpJrbpRQhKcgwc3QpE1GUmQfwVLF4GPmSZXKZMVcugECtGnNtUzWEf10f
fsdxednV9isDPwOB0SSXAscyapex4rHwCLDcgQfFAzafiuO5jImcRxgbiWNSOyOetrgnie51zXvi
zr23IPjIMfbiRYj3UxxDAVaigz7351/ERA547yRfEm66JhbQenKQXbp4OV1DmfN2ko9+6CMPoXyt
IUiwEijcCMFvIfGhNRXbiVYyg7xCq6Oil+Z307gisOnkMwQ83GaOtMIsgTE0fzMyC2jcADTL+Zi7
yyK4wyyQ49cAcxBdZ1kwLLJ6ZnQsxiHAVgMgdwECLiZbaPia0cHCgEGuxktZWwXhtBmtvQOANjRI
TjMW9b19vXFwsJccL4C2siYEAkK0gXwwfceYc2SkxgnYQfuOpFlVHT+/eDN2Xr8azz3zUnzhW4/E
i99Da6cgbyX314Vl5hgBGl0QoRu5qGkwvn3mxbi0OQF8I2ry0QIM/M2H3hv9P/SRyD7zPHnubuJu
a0AOmFKBiDH6psB61EqE24IZqpuvgXkkv8jnmqx3LKQZ+jiPpM8Sfaul2MLjooBSAJddnKNKwy6f
K3EfNTUAMog8q3RVZyzpEmkmoascyB2S7AnMnKtlABnDnFO9MwjIFYDiHP1cRioSBjDjj5xiWl7N
34SSonttl1D2KsaG1zbPTh4yt/wolZR0TjTuHONU2KYU14XieNhm4czQpi6usQMILCWwYuidH4qh
t70tZl47F68+/1KMThD8IChDlmzzqgPhVJMIEW9aCjJxrtbihtmBs8JSx5wgQhMLlbdZCus9i4kx
w2LT1suTpAxNHTJkD6BxGwvrErSAqkao+SfvZFQqUZkXl27GE89+hQS4T8VTL9xIFph3vL0nWYdb
sG5VY0nbIDpudHYpJpkjm5y/sZZ5CBk5j/tvVw3HueZCjvzSUiVdopTxYCoE538lioryV4pBdRVB
MgzSDM+W1gJouQetElggKrG82F919QR9MG7rWZckwlszr4zFcpXcVzlATRsWZNNPmFdRGWqU4xZW
WBNZm7NPWoDRyYIq52MjY91IwIXpGzyeivixj/0IwMz7B8RcvxZnX30+WfytEdiMVePI0SMAHFzy
KDSmj7kCkJlhDloI3uSygwd70lxU7i0sjtPmEqzbnQTvkL29qzPe/e63wbt8Ip5//DmoBCOAY9ZU
2pWeEc/JHF8mld1lniMmGSsof4wR1w09XVqsN1mHD+7tQAfajldHloKyr/Gbv/yRuPXtJ2LxlccB
cZwTGWB7agBrmwDzTRneAJCSOsYWPa58kNel642L+QR4BgZESCbiGSFD5dgJxnh0AAzHK89Rsw+W
SUFJ3ghmQbsWWiLaq4k21uNgFKBP0BmbW9YKR5b4Wo6BqF8O9025K0/QoA3TLNh3DJJkwRKRJ4I9
64IJik0U6orrGLfAd6kKBfIrC/jKQwGp2jFpL2OOeTvPGnOaWrk+PkQC61ldHKTcVyvu6nY+Z+rg
h1GU2xJlkgNUsOVwVTGHBcnOzynmQSnvlVpBtdix2XeZr0QDl8N8DDQgvoz3AvAo7FIAJXRNEt2+
F7q0sA9tV/dJoIG3pNdyubQV9xvjL4EN3ZRe/ug1lHKCFIFMcRNgubm2uVQUNyeS5/PlEPa9+J3v
xc1jvI7vfu+79+F3tkFw4/V4LOlv2yE4GhBGUX4guz4RN/lb/RzWQFq2PM7Ntr25fbbRzfN5fs/t
78V3+0bohyigZ+1hLVWFdGaGbOsmtH1avCzFwRoM6COiiN82FV4AiS1uNofwnWVhLsUMD8OXhKDl
MTY3GQ8+fF+cJeTfDL0nbz3M0RWp8PDxWw/BYYE4iWXkBN8f6D8WX/vqt+Mv/vhvqfM3ilChnVwY
zBJ3v3UQvsVu/M//+ufi2e+fid/9t19Ic6G/vzV6BnpJSjdD1B4kUvhXzV1mHSZD9ewkWhnuL0BQ
d39LtJCoVBC2MIFWOEtNO0qnCNerWTiqEQA1ECKHb9zgG0AJHfQROF+33X1b/Pov/nu0a8DVB09Q
V28J0/0mJPHuGOwbQjBS3gTTsHyRHnK51AA4jEDbA2CqQMilZ86E3VYrwaQsIXeLBcRkgLvMKPlY
zaQ3aGkhqSASyDmeZfVU6Ei2FCiYOdmFzqgitVVN2C66krNpbHpeOc9Fh3ntHFajbRI+blL7bANr
2pbIiAk2A5F8gX5anMH3D3eoo6WL/dH8Kylh0dtFJBGLO9dYwpVm9uVazOEXT1/kWoBDLnVg/2By
EZq7Rq0x1WZ0EXnDMmFo9xochjx8Bhe3CiwQSyQfXSAlxRJC1txahkZPj82l3GTLuDYsfSGfYA/1
vSYnyC5PfTOjv6z1qMtRa6kWCWQEsgGhUA4YAIAKR3SnbiFYd+HQgakxbuFeoC6XJUH4L/FklJVa
Q0npldIStRrcQGLEboRSO2kqmnB5dgPE61jEB4f6oxLgn1ODhTc2AQ+mGvBRyYI+MTEZL3zq0bj8
pedjkYzXQ2SHvrejP322hMvU5HwQkB/Heg7FXScOpESbTQBQ68StX78Sn/rml9KceytLuzNNblct
5HABf62SEleLFQjkyVSxaOR5lo7DTQCkd7sHnpEsq2XGr4u4+ckaAFIlWD0zLMySwdMGKEnRj2jd
hn6rDbvQlHHfkppXcfVaYy9lf2a8mTCzhHFpDrAVgLhZoDsG91IDrwkeHVcGIJDcJzL4xzJYIhng
sduP64H25lggsxxfRTu2C74hBDudrdDSioAQp+n8Sdg/pxGDqGyYlqOSiZ2jHdYFLJH7wQK2Onoz
nnz0+4Bl2onbXytHM+0ypcs2ST93SbQpAdfSNj7TcjRyTsgLwEaYrmQZXgAAIABJREFUXwULbhs5
q4BzDHeADnwrrRotKAyV+/tp1BFe0/ESLrE//dzXSS8ymtbe/v4qEuL2Uh6kjjEE0Z1+0zU9N29/
syhCFjafXpa5t7Q1l1xGpinIm0KG+y24lpA5tMX+M3+SAT27KpiMYxM+WolAF1OW35bXKGGDBQED
OveGEklKi06UAHPRzUxNMU55Jox5+TgpszzfW3dRHp/u0A3A4vLiekpObKh/Df3fhju8Bq6gwEWr
/i4WoSrmVCscplbGeC1KlDJkXV4omcvnoT3MosBohe7tHYxbTp6IvUMHAKRw0iA+W+d0cWEyKWm1
LMzt3aQ2qSSf3DNPA2r2xCy8sAmSInPKlIy5DGUGZJ4EtjJ0dPgm/DmsxMgKLe0KQi3rNQDFLMYM
lUFTCEha06LlfqagqaaPG7GGLi7OUkSa4KfeiD/6nV+JA/ffFSPf+zb9QYVbxqt5upTdOwIJXffI
gW34n84J2yGeMlowjUUVf604AK1NACtdhnzFesyY1I5Mw1D8GasAc0ymjFmAFbyvjYVpngUDTe4V
FqE87th1ZBmYmESeBB4RvLJE9v0csj/FNfPMGgG1O9xDGTJbi5XT0PI4OTwsmirKUKzNqp7Fu8Iv
vPiO5lnZQovsBjVks7irK7BEGlFqDs0pki9fQubcnN2OceTaPobyHSf6KErdFeUd3K/jbmWOTP5w
uQB6RqbWV3JzKN8ZlPAc8tk0MZyQtmJtVlRw6cTN8yNzxdtDQPl/OoNfWXoSIOG5pU1wQjv/yc3v
CyCCtvDZvwUXXsd3b9Xji+fiUSQw5vc06webvzOE0n4eZ/cUjyle+83fFX9jt3+w+b3XfvMmePJa
XrP4W/Ge/M0X1LUoxXLAsE2b+9sOOVgCLY+z7bbB89im4t98/EH/+F1xK7SxAKzsHYYG+6E9AoK8
V8GW50WvfeOfliuvxT/Zm5JXEByWEzHB3TqZt8vXSqKP6DJdTJcxZ6/BczGBpguyQtZlc2Z+jArz
RD4uoRXmpjDLPxEnTpyIX/nffjq+8NmvxuvPEV04U2jl8OgwtQMbkzbUS1Thbfd0xQj8oDUW7dGb
NwFVjSn1wt6WHrSr7rjw+tm4MQxnAetVd9/e6ADdN3TjtiJqxLIHVjVfLkGTJ8PvDsJIzoslEaop
a3EK8vfojSmsaC+n0jwf/qkH4/Tr1+PQsR4W4SOAkC14CatobrMp30sL513G+qLWmEWrNkxXLpqm
bnxIdA2DFzBkbhOFipwLLWnM4WQgAF8VtEm60fIopZQckb+ROGEaEBA+ug8Nd09jC40kGa1MweCT
SAMPoCEhkoVGcvsqi/A6ZvwNSnyYM6YOoLcBR6CePFMHj3RSaPVQtEPCvjIygXajL57s+HvZBy13
jrxWFbh8OhvJPk9+rtZ6BHTs4/mTfZ2R5lWNOZUGvU7E5SrjcQ3B00YelWYCFGbMlwTRe3HuWhoP
a/O4mnCTPvXEpbiIVXAFFxzeHvEL5n/GAoOR9YYQYSondHcCOEkrgFYlwVQraD18AtFdRRZRiLBJ
SSfpAF1NRvykLMwI0h0ERxZB5+iSDGrKC4tCr2It0U08yTMdmViPq9dvEmhxU5maFjjbUuRRDx6I
eOjhB+ODP/xe+ugYigu13ejjWqx+H/7o++MaxVa//rffjFu7BuOOniMxVnopGli4cvtJoEgx90N7
90X5of0kOzscGcZk/tHvxKVXL8Wh6Iu37j2EexGrkLMKsIQvtQBAnIAsxBVYQyw8nmaxZBSAbiUk
2V0WZoMWBA9dgLGkVThotC5h6UB9Z1EgGS5ANT8+hhuD7zRvITE5S+LW5ADDFvuupEQUpgIiG3Fr
qC4DsCS55gXLjCf44gAd+UG0A0vXwux0ZFfLo515myPVQN6oNtwkGa6f3yVDtpFZLCQmD5ZqUsp5
87g2ytLCyTihDbrDVvhdS5dAspkF3KjLNZL/bpAupJ77aiCjdO3e4/Heh8vj8vWRGLl2mTHFoOA5
l6GsVVILEI8fhGitA1qBWM4sUQGpOi+XjxstIwFjCVnXF7HutRGZ0X7Hcb4c5IawmGL1/NpXfzt+
51OERYkzePYnDnfE/n1dpBmoRQmBc4bCNXtxmtsxCpF5iyu6utmHA3GYBVL2aS0KnOuI1hHMTYwf
9/WlzCRDPekitGlsY7GwpIxWM4HaDtZz81Mtuaiy4lprsZEgD8FcFfdnkWktwZk2+J5YqQz/xwiM
osVzIGFkE5bHGqzEo+PTab67MFagFJbwW45rzQOUzJPV2NCKIgFHjnbWY62VZ5S4UItUvSBH0gwy
00CAFiIE3/3QB0idcnu01rTG3M5MUjiH6fttwO0az74Wy24n/NM8cuv6yNk4/er5+Pajj+EVQJ0H
CFgP1uhOearWyFsFMI4jc+uJUqwFhMv3Mv+VKQdULk0voGIgz9QxbIoIN1ccPQVlzPta1os5gpnO
vr5ECoGIT/zqT8YBKkpk4WAtU3LrBKBCgC9YWgMALuHKbESJMR2FPMsCPkC2GFUNSFY+6m9JQoYp
Yy6uLJZVye7KWDV4sYS7pHkFADHL/jbgdRXLWZYxVc8YRtCwF3hDYQXY9nzmL6tn3m6iTGqd2sXa
tAZituQSeRqS602X/DaAKaVa4Job5AGUI2YZJc/hZRHsKFWsqfRpJRHU1YypPClKtrGa3pyZi+uk
Mxq5kYthDnnXXcGYpUbsyYHINKJwbcxj6WIe4iEqqyVQg7FWTmLuXSpeCFZ3NvU6ASSxRpqvq7yv
B7DA/SH0LG3kWqTSjyHcpcWbtMv4gZt1XXH4K0R8Fwz8U5uACoda+t3J4XFFMIO44awCl8J5eEvn
cp/i43cIFODKP7ye+/hyYy6kz4VW8iD52+NtG48jtZi3H2y2w3083nevUAR6fleY1oU2F+9PUOUD
cV/PqdvQze+0KHmc+6aH9sbfvKWNYZOO81rF8xWuAwp/44610RW4Wp5L+4C8K4enR7nM+G2h33U4
qo0JJHaxgKxhIbGQcDVmArNF65qwpMGcJRfoiAX4JztXL2G2b4M0LkGSp1WySZoEWrEHi9D1SSp6
b8RQz4F4/4/fEQ+99zDABL89OaGch4aGW9izicX+nQ/dg/YFYXl8Lc6dv4IwIAINbsU8C8zZVwlZ
X14kfUIrCUA7eG+BTL1FxBJ1CrGsSeyVYFqLCoMTMWkWRtzIi2iAN9TeQeTYJpmQmWQuLjOTuId2
gBWkFGhAELd21FOfiQENsLD0SDvABPFLp9I7SXholqV3WGQknaupqeluQSqU86U5Wo1d4rkkVS0/
aqkFOw1TQdBgf9On5vdxIZOUWYHmiorFOTGzE+Wh0LLO3Q4LsXmEVqz6jm0xg/DeML+XVis0ftYJ
thx9Tqj0LUeYvHVY3xZjfJGC1BAmBwZwd45Col5logI0LTFRhY9xhbw+VSxij7/yAuU4Ho/zVy6R
fZkitQhBi8KqfZlfZXOHyDo4YlOj8N0chAxcPJEsKi4OhTHnWCYKHLO/2nrA+2iI7l5CxuGssS7R
v7toqjdSstkKgIc8jw2eqa4Oox6XyQrdVoeVqbFDmQSuQGCgUdcBnnUHS1qW/2Vl+Qascl0ECFi0
1mzUO/SHRaLrACDVLJyLjMM1xuYKuZy0ps5MLyCkN7CWTrKwj8Ujn/t+PP93L8V9956M44cOpjpz
/biwu7p6YouC3U299WRBPkQsfk/UXB/GwkeOLbLc72FRKUfL3WS8VBGKn58ZhyB9hpsrjYdP3p72
zzNHMmrX8sh4pgwOBjadhQtCTpGpA9JnJZWLkNZJrE4V9HcCU9zzLgDSbNd5IrPyABRzPblPquXH
gp8K2mLNq2IRrQAIWdOQtYbFmmWMVCBgkZQ2wmK85VgCy+HwCNLKnaQct43V0pQBm5CST49cY+EH
CPT0YsEjz5GRVrg/cihUSywyO0SZCcy2WTByLEZgKGqvITd4hiWgZ7OnNwECzMFlhr1lMkxfxfpL
K1K27NaOARaBubjy+usJPPbvH4whLB2NTdXUYJ0CdMMRIUlzGYPYhJOlAMqU1gHZUVaBtKQb8ygq
DWrkvJfUMJ77WUDa+xlxgMwbr8cj33wivvLIS3FuGPAJDh3a3xWDWoqYdyuAuyncXuVwfSpLcSe2
kPASF/oqC/D6ggAH6UZYax6rRDn3rbsfkcSYwsWE/JA35JJuzqQt+swgjiwDdIe+MOLMHEWlPEed
gzWU1aqDB6ZpoI3x2dlDKRmeyyrjXMBlnU/EKXJDUAwvVpc38kpX1BrW7vxYxE14Uyl/lJZlXNNN
cMBKIGNmseo5hwTQNfRRayvuW8Y7t5EimHMgUyMJP/7PfimR5su5j54OEiaXEp3HKnLlggWVLxAo
R+JmrEHrJBLcplZiGfe/ur4Y50+fhUYwTTLKRhTP+QSaqgHhWfhrztVtFmrn39BAH+COhRy5pxV2
Cc/BLkLA1SORuvng6m0qABcFq0sYVOLLtWcVhejKNVzzByrit37pJ+L+d98ZG7jll6hAcIRza4kt
kRrBMPS+KxAmeaoAbEud4Aym0THhcgmJTTUBWHKnXP8jCqmARRfrNi5BPIT0Oftp0fFkTgo3gGJ+
aTnm6W/z1pWi2K5iOUpWLtzUlQBGzOXsyGrEOSxCbqTvNlyoDfbfZk0od5Bh0lM+W0xat2U5Y0VX
8SrlipzXRnwaBZg2xlKO4zdVSLBs1jJ3VtAWro9MxXnqEXPLcaKnNd7SURtvfc8xIhrZj/m3OHsj
ZpenGPPbgGUUUTwMG6WQ7JH1iVYADUeZkjWPG/edrK0A9wzrUTnyvYTIfh4C/UbbqtMyzwcO1ihY
wGT0R6GJ7FbYEBF0699vfi9oyTAQy0CkrCcJiPhdJy+5KqzopM8f+8E5XAzsdjc1dD97nuJ5/ex1
7B4/F7c0iPiDx5l+t21+53HF/Xx/o1t/cM7id35fBF3eusfSNUAAZBovr2lzPS/iFksC/cZLgOi6
5r5e2+3N7x7nudy32Cavo5VKk6Yv95DQXjhOTcxvhFAe5VAtMN7UDoRZ3lPB1M0HhN8yQsLSGU2U
htgkS/oqq6uTZxOTZy2ku4GhbrgUuK9YQMyxMY37qRxJ1Uw9v03SEhy7fS+LNxl4z5+BWEm4tqGj
DLZqtDtX1Oa2hphcvECoM1GHZFXv6u2Ie9+Nyf+ru/G9bzwVdZ3VJNsjJ8zIevTu7UwWqMYuwv+p
l7UMaXMZYaEZmynFBOCuWJCrWby2qc+URQtrxvWxTnHV5545TyTOXNxx963RzHUunLlA2Y+Ia1fJ
g9V4KQ4eO0L+KhKiokHUVNQlXsYmk9GEeTW4pSoZyJVcqAofuh4mQZdcq22sCVwWMEWfsoAAu1Kv
lqD55AERkid9DvrzrY+W3IScQIuFW57wcUgFPEDAFAAtWcI4hzmCJMMv4qbZhLSvpWwHgWZ4s/ws
s1dTeTz6O7vhsXWmEkC760Ti4YppJHqzk7I1i7hmXQx8dQJK5T6Mjd+MV14Ziy9hqXnuKcw7DCJu
L1ncWD9pJX9zf6xRLAgCsYL1qbs3oq8TsizgphwBtoFGtzCzjHepBnccWbHr2gDUJqtkbCBk1iBn
rmNdOn5ybyL9yxEaJzP8NKAnwVQG2k6z+2ViDGG9Q8h6FoFVyHRvyD4LN+6Xwf5OgGIXba+Ixa4t
2gA5F65SOZqZIe/LWNSWmDWtWD7NCF1COgCTDVaai4a+KK9TGhBIcfM60YT0BWPumWdOk46DhWVy
Nva9Q74R9Re46bMzk1F5biSefuk5rGy1MU5KiRoEyeGxSYRjVdyN63j0+tV47NxLnBOwizY+H9/l
+qskYmiBO0nqCVmnPNtVFmRy1Ec7ZVIMRZ8gQEMlphogUwc4qgWAW/i1DO5ThnDsEoDg6jIh+hBs
5xHWGkjN63aAAA9JyvkJ7diMG5EsiVvzLOolrrKSw9FqdSu53tTg0jN1ivug9vJAeZDw1yqwdHI4
3jaAAeOoHmtuJUl6A8vzLjlxNliZ9Blkscrq+rN2W2laJFEKGNcbzKU87uAdsmkn/hRq8S5WSN3F
FfRRK1Fr4D5yIwHwma/lu6RJAWjnAJljly4SRk7+qOZujHElcf3GNSzENDZDugCUjmYqLxg4o7st
m2NSstDV8TxqIG+X9NLGxoPcO9e/8HL83h/9bXz5m1f4G1oBhdg//lPvSXyv8ZkplDDTCXCfWJtL
UYK0KOUoJFsNwVtj0S6gUyXFhEUl9HtzB9Y6ptESudqsDAHtigUS4MCETsBS/p+LJKfUaiqwsBP3
4J6pws3VZGQsqVk2jNzidkyUuTSNssn4XyRbeZ55V6Hvmp7VssPQ46Nwg6WS6y6SxqCaOXPP/Xen
3FM7jBnTsqRkoCxOzgVzUw31D1GoeSzOn72crF8NRN/uP7I/7nnnfRD8mfvz8xDqsQQCSiwFNLs+
DuVhjGjiG8zTJegTDeRimyJq+FJcvngukbZrCCoxN19PP4lDOwgcAjjKsdTqpjWqcYWFmjaao2+F
9bXGBKJYX0xLMwcwWUKZ2USZ8Z50l9FN3BcyERcW3H/GLrAIpLKOIjgxsQL/NOI3funH4sGfe19M
PP4kNIapOHKkm0CJLeQ7yUYZtzWsJ2a5bwE8yLFdRylM1jzGgm0B2lLtgYfEH4LWMixlRjIzCJFZ
eC6wSJUDvEzQ7Fh3v7zWKcb7GmPKQtEmoZUPtsbYEGs0IugqKOyN+Qn5qvwRFHI8/1VgYd0FQK0z
x6Q+mEsrCUgEZVKC0xrKuomck2Sva3yX9cHcfrslgGCzknP8NMTXWRaCWdJjXLhBCgoW+EMDEe95
332R+aH7KdP3MqcFIJHzawsSfDlz3AjMaixQJs3O5OHkYa0k6RdywRvjI2uogWZoD4m/Kt9KrmwZ
QJxfsdBgyfsWzRVEQEFNUACsn4CAoIPnwe0XNvo23Qpdmd79VuBBNG5ketkTobBzdSnOYkho5/vu
Hv7X3xdx+mbSvKf403NilUygjMsncMXykoAPb+m6jn83r+NtOJ3+8eYC5Oa7oMh39/XY4rvtfXPb
/ex3bz6f+wqmPM72+M4zTefgLZ1XAOZvtsfNYzyX33ku78lWgM05Xo3LmCctJgw2Pnuc0YE4ndJx
6F3sK+Dy913EP6ZSvtFaZj2jbR7WOhrUptYBCOHDAKpNBIPcBCRh0vRqEd5m67UIZU0PyJ+/92A1
cmJqfZBH4NnThGAyVENIrCHa0CKsu+QKkZytf70abV/LjNq3mt82kykVruT3WrTuLjgBl84MM5EX
47ZTx1noK0kf0BYvktV4U1M8k0QhUQ1BcYViw4sIAS0ZjbgoZuH5nH3tIusEiSEx17+dTPAzLJIv
4BY8eLgPkzxCBOvDThbuCQCnBWuLLrAtBuUN3GolWJEOH9+L9oEJmKgfVpQkNFWGYMPA5zK6B9AE
l8YQ9zXKQ6xuou0xQSuxvEg8bYMMWgI5WJtVBYuhLrGKZPVCYAM8Jepvcv1d0iRUIxAq6ONyTNF5
LH+W6SnhYqNkJ7YWohwMMz/PL9BfaL+G6XbAB6sjsm2VvqgD5Fg4doGwXwmhzSRVvX5zOAlt82o1
NgIQ6asJtGRzr9z7ljtRQh7gqQvAEepp9PnOBErwHh4Q/8a2CbKAK3ft8ihWhyVcja1x4vgA/JNa
0mdcZdFBaCEIr1y8HteGx7AYkTGNCYGMZIw0k4cHFyC5dtYANvK0ujtIbggJeYbw9BpAu4XgJ6dZ
3CkSu4uwrgXpyUnY4p4meIbb9EcVfWdwwSpCrhtgvH+oN9r62sif1huDB4hCqxME4tRRsAAMsgIK
+jOr1QvL5RKhziU8q074aCZO7O8bpF2H4z9/8t9GxdRmHCSS6unvPgNQYT6hbXYjxJYnuFfyzLxn
3y2xgBXk0QuE8cck5PiqGIpmxoAjVhI749ixy99mVtcS6wxVTRRqOyudc9hGUh8XFJhCwhP3t/gN
y1s6Vm3Z+e9R2FBxfEmlVh76z/I39Ymijw0lzd06rtzYPQh3qsvQsYLwYI4IkjO4HrdIAlkK76wM
UjMDAUUAAIeobO4DcJJ5f3dvW+T3DUVm6CAlXJh7Wtjo/x3AlPLBBYslL1kGSwB6QHqEOvfBQrEj
+sZNsoE2PsvCVIPwxziCVQ1LEIuh0V2eZW19hjGyymIBICRUfAH+kdHEm1QtqDXoAytDPYuSUbYm
WdRKXoH1pKGXNvYdpjeoEfrVv41/98dfiCdeIo0IAvzUyQMkyGwmiAV+DGNvCdPalpYUFvlSiPVy
HnWL0mR6zcQCJE6Vo8jvjczLFuZ5KeNF194Glk7f87TXfsPGByCBLM88m8VdpxHywK1DKXJ2DI6M
lulO5vUyCtutt52I43fcEp/59JcIGulAmdxEgaP+LHLMRMYGp8h/qgdASVqfoVD9GsC5pQELqK4r
+reO3yYnsL7Dq+qEL+j41WrUhdLU0w1nkkCVGdqxRvFpAUsPC9vhIwfgVO1N8kS6gHy7FZ5BTx8p
ahr6YuTm6fjyV74VZ0h1o1vu4OEDcfaV1zl3jqjuHmQsiSnHJriU7duNpx4/E29711EoHh3kx8JS
jsWygZQbrO0Mm4VUIHh53iLOsHaxjvmblnkTmW6skqqmvD2BJF2+Jtmsx91s0MEcBcGnprJx19E9
8Vv/4sfj+IO3x9qVK8zj2eiAC6flcA5gWIksSQW7uQ/Hl+Nul7UlrQUAok0eQgMWpgwKlQhYcrw1
H0t5YI7DStK9lOGeU+Fkr2QJ0zKYByQK8OSSbkBxWOQeRINaHc3fV4pM0VppoIz3ZqLQWvq/wetg
6dxmziQeHHKonvWoEVd9ORZb180lgPYK80kX7vhLI3EUJb4MBWwOq+wOa4WRn7Bm4PfBT2UsXBon
4hj9aIhh/d633xr9tzC2uc/c4miUNCNzywBRarnIajogrW2Cc8f0zMJKih6UCzyzxH6sIU3wwIzi
XWbda8O7I0Vni/utJNmv9RzLsDBnvossESC0I6QUPw5uQYPgQbHvd0XA8Wbg4meBkfv19PM/eBzY
YvE/F0CHUYRiuBgE/gwzefzM5nF+FtS4KQq9nu9uxfciuGJ+pmOK4CbtxP88h+fy+r7cz83v3nyM
f3tO78Njiu3w3f18eW5/dyte38/eN9j3B8f7nfvZXq1uvqcIAt4Vfbr5dAUKbXT9+Xvh3kD6/C6J
3WsV2oN2xlHYF3B+UW2d7/HuUo6CBHaApFXAlXlqRhE+O0wCX3IIDBWvJru5IfmWvKjrxd5IVEUd
boiaOrRdBHMGUODETSG7CD5N0mVot2UIFLVClFW+QxgDelKUCZqkCwpjLfmuFUg5tEY1hoOH9yVe
gJXfa+tr4n0ffpDxR6V3OBgKuNPPvIrSwaShQ3e4Vj1+ekvc6OueB5Rp+rbWXxeL8VH4VaYJePS7
T6LhrMfgPoTUwGHcjHBqGIzPPv5ivPDka3RqHh7AsTi+f4hJW0sNLciqLNAW59wDYbmKQa3wXMcd
Mg9AygNa6iCEmvCtpJKpB1g0tH0PrP2qCvgc3IsJQD0mac482CpM80Y0bpWw8JWwaOIaqjFgwCSk
81NoexPJyrT3cH/U4tK0BNAyAmWNXCpVAId6BFxLC4sy2vLmGiCTvjF0fgVrXg0m6CYm3Cra5dmz
l7DItcAt24/bE82IfhOImSZiA3P3MpFycq0yCDZLYljOp4rj1SRtn88MejOjCe2UPZeyaK20ZR3t
3LIxBI8j5Bh/CKMlnsO10XE07CtxmqLeWP3hYwHVZgBb3HN7R8RbH9gXHQjDC+eH4yYu43IW/0qt
jYDZWixyFfL9GPS6ErboN3kqctvUhpcJWTeRoFnwp3jkKh7tTHJiH0hwSuQgNSQ7WH3bWjti6MAA
ZN79kEP5EUsWrF4ECub/4ZtYduCXYBW58Gefi7/848/i6luNQRJNzkEMv35zKk6xcL1z320x1Hcs
IBfGd77/Pa61mGaXpWSakUxAbmZOob6hIEtDvHLAT34ubgIhoZCWVe3Jzt+CHdNZyjimV03gi5OQ
vvQ4QZpOKanuWajyTYDgFvabZ39VJrR63mFYcJz67nqylnXRqlFm8ggA0CxWTTDqLkGKENbtbemI
l+eup/7qob/3A06OAZAzWF92jp+M5vvfQ4QUZ2LebTJX88wFc5aVMdat/1aO+9sIJe9Bk9quYeDc
rPUXTXy4w7OTP+jipntvG+sFZBUmJCkGSAFRgVvvxvmz8HiWmYtwJFP+Obh+uLDLGdNllEpawIw8
0E105z330wf0+8oT8egn/zr+HKL6a5fkpGTiwNAQ1smWFE1nnjM5a3kW+5wKFkpVOYodBiYWOIq5
s1Caw6iGedm/f4C1kjQsyiiUkgxa/zLXHAO0aGntHmiHbzmJPAHMA/AtRG2qBBMjWxNvkLxRdE3M
TqG4YK1qg0x+c3iUvq1ChgyQf28O8IU7DYC3xZyw/p7ro1ZqlY9l+KeNjLcFyOAqkE0sxLrJtUYb
dKCMzjPO6yCvN7U2cC8AUeaiFrVlOFV9WAD3Du2LQwcPo5DCJSOqb5HI5gw3W4by0AWw2yJPVGM9
7k8shS8++WI8+dTjSS5msAJNXyOPGdG1tYCMiYmpGBshTQ6+fiMX9wBaeva1EshDvCXKySR9sjLP
iERJXGUhNyGyhbdN+JrBmi4HUqtSFgVvBxBWgltuawV5RI6xKqyflsxZgbeagy4hTtDj9n994hei
nUSwTT0kK8VFuQ61oZnSZPIqVzlXLUqYypP8Vje5lH4yqlLvgHLKerJljLt1ZLCVKFz5alGe8vCO
ygBncgAFI+afMhpbtkU5xxrlrct3Hbm6Dj/VUmWlWLVVZE3Qqru3uaYR2SJXF/MCnMUqUHkJ8i27
QAoK3PUtWAQ3ALcqzgJ/S78R6RA3F8k9NrMV3VjyqWRDWS7mpclaGQNrcMOW4K2iT8brI7gAD1He
5+4TMXDLIFgFxIMFNY8829hejspGVDLApKu6FjG3NNO1TjBBMEpFAAAgAElEQVRGZlE8a1DYS3GZ
rgP8K3lvlZDPM9nlftbh4gq4LJmjFMpkVP9ZfxUnChymL5NXZ11aJ1PnKqwK3c2Hf2ITYMzxqpjG
IpXBjsXBpOZgUhWsWkv81r0DGkRMeR6BhYDNd//2VQQ4fPz/3GxrcSu2y+/e/NnzFb/zXSDju997
bwImN9vg98W2vLkdfu/m/h7v+X13cz//9rfiZ835Bece/U1PIh7S/gIqHYBqoXin3ziXjisdM57D
QYwg5Rt7iMfNCRChLGZZBugKlhInlLwHBan5mgRGGSwD8pAkHwuE/n7DLGxUBuBELVCTrtFfWU0Z
CBzmItdNUpn9aBNgqAJB7jUd6G5yj9JCxTnUyAxLXphdxaSNMONS1ncyqso7yDEQGeogdYAgpFsn
BimLYq18I4EEyYNHjx6Lu0nY98W/+VZMkBX54R+6Dw2EHN1VbTFPTaoJahzqNrj7nlMxQcK6S+eG
bTiuNVwJaus8MDkYC4AW+UJN5bVJ82yskeAJoGdRkqtSj3XOOlVrCB21pR2icMp2SRNBdBM3mpKQ
GlJcCTgtRfPfhXPCieGDsVjAJ5ianIjlK7MQjfHv0y97WICOHD6c6gyaBHSURIkrTNZqTMEd+OqN
stM6owuKuYYmjv1EYVLJU6WjckTK7GyXxwnIrbd0HY+LM+fiTz/51QS+jh0eJDI1G1cuj0THXujd
3TwD7tGag6bAqMYXWIb2Wc7fG7hZqrFK9uCaq4L3sQCPaAnrWAULWi3utD0s7ZVwLfKEK5fXE+U5
OBQfePf9tGdPNFW2x+j8tbh6nlw+BBlsUadiDiDzzHOvxQQLB4GM0d9QAt0A953nAKCtc/4qBGkD
C7ru202EFGtmtCL4SxCgrUTSmXR0mkzd67gUuhsgZuMGbdXVBjF9bXQ9Rp49F1+efCyuEA66v3Mg
7ti/L9pwpbQBLNaxbvb1A6YPHY3OJ0biA/O4GCmeOvwCKQPgCd1KCMmHOvfj4MvEN7/4lzEyN86o
VGXJ8l0J8MVknrjgEgRC2AKJJD0X3MEFWVacEYV35x2uAs7HHTI7nXlatrBm8p3WKWxKQKFClnYd
9So9bgTdE26wEteJWOzns7IL51T6TWim/GOZTt9ej+EE0H60/L6In/5gUNE1Tn3/G/HE9dOxQ6mM
B/qOx8lTJyJuv5XQpF4EJsdpfZpAnb5ww1mJ9QlwBKDeYTwnYjDCW01fl71pWZzzO4wxS9FARcKi
zVQpg1BPZGoeDkgGbgi7JywrwGBE8Nx1dyKbmeNaLAUUc/DXhnFZbaK0ZHGH9jGPjj78EBpHX8TZ
p+Iv/uTfxDeefS3AMtHRVhI/+qP70rypYuwvk29pDheryl4nyXCrASNjWIwka6/B1zRDumPYaL0u
gEiee9xkAVKm+ZLrWImVrQxr5x7ckUbSbut6oc91i5U3MN4IZqhtNDLPQBkkJ7LKFA71LC7NWLhV
auZIgqnCN4aCIOxcJXojq9sQ2WG6BpVQOVtluKmbW+FlYXn2WutaWjivQR1aGiTRHzp4BFedlpVF
5geWCOZ1Jft1UGJrCO+Lmdw3WIgvkA2/raWddjRgscfVjbsth7Woj+d5+sXrcQPX4djYTaKBr5CS
YQSgQa4maDOmcFhNrsqFZPm2EPQQ+aaMODUdyrtwL05hIb9w5mqcf/Vy4izWwPezGkMetxb4kP5C
xYImssvivg1dYgP5IY3B/H+rALolwEsepbyCsWIgjBa/d79jX/zCz3wg9pP+JlbHidbTqk2KoT24
VXFJ5pX/zHUj6PLw0ARNBg2U8bIQtGVgtEgZ7KLSuoH1W9ed64C8P9127JA8AJV879ogEd8cT65N
cmDZCTmLDGOhdYxnAR5yD119Tfsi8PLHDH1RYYQqz0Qgtgug01xRVQqQg36R4T3lslJso7ibV7F0
BSDGNecEhmgbqTIIa9Eiivgwij80RBTEiA+/n+fY0xMdtwwxqQFFRH7nUfwzFG6uaUBZcp0BGKV1
k3a75qZ8jVgqs7SrQaUAPqfpe2gMfcZ98WwYsLTfNRnsBJBXkRKf7gLuNnFv0jUFwOFiKe4qggye
Daf5f9/8zWPdoALEzkjhPP5N8xFFb2xjC0kcseYmcKGVzGuwHgEoCp9548r//eu5z39v8/g3b7b/
zecURPl3QWwW9vQeivv5jX+/+Rifu98Vv/fY4nX8XDi20GcCJvekq1kG3EtRrqAuXFNB5/7SMAvf
a83ys0sHD4XekPWWYVKLfoVnZl3PoX6Y3I+ZwATgob9htkztQGtNkpSzJCDFpGCXpHlYZLQITjTv
7nCOEvOEMFk4Y9p/C6FXweLIl5zf5UJNhQbxu9Ey1Zg3NbMfOjaIC6iHKvXU5qLu4BraXCNV2bso
1NrR257cA1W4kTiCz9gJMB2Xw6moJ7OxNbnue8e9KY/Vk49dZsE+G+0cU4OF5vKF4bgB4GpoPA2x
uSNd4/4HTkGonwYAFbKT9/X0E/FTRe08shIjNGYgyxqtVtbBoo5w7wJ4bDNZNuC/aEFbwzVYWY9Z
vI0JZZvHsLCxIKjx4/xnYqL1Qaj0GeTIz7U0N8r9U6gFV1hvW0/s6cMKBrDRtFuNFSHLoiaP7VoN
RGC03jYisAY6WWot0eAih+ZYjoUhxf4yg2ABp2eF/ZoF1KcLcKJfL3/+xfj6f36hoNHdgRsH4nIF
C+DYjcW4RIRl4imgMZrDSJ6J6RAwtEkZoEYbziuyTZeiwbUSSHDk+EGsxWT3nl5GIFIXTytdEpKI
Ixa3ObU3UO6FteHo6+6FjHwQIj01F1ksDPG/94G74/vPvBbf/toTscPiXs1E1L1WA2hSCz3QNYAh
mmdH9FNK9IeQacMysIV1owmhrNBcQfNWk+zpotAM5ORlOC7lAM7SmpbYW94Wr5MBvoykiNcvjcTL
vHgCCYY4p5QPQ7wIV0jf+VmYeCABpVx87clvAmcIXef7Fl77ccbV8HtDmkOEy2NHcvaZPFTLh1as
orXK4etMtM8NGWG5TrAJeOLTSQJeWac8cBRgb+F3LMGMXWYCs9AyOcqnihhs6oaPNgmMg2+IRHN2
z3BthWg/sKrMCEI0aTokdgH+G0TLXsvNxflP/wdcmOtxhiM/+J6H4qFP/UduFMHcdSSdIzP6SsRn
vxOvPvYYUYgtcfs972Rcspiw4FfDZ6tWuXJhJehEHlImCX4t3yxGcAsduzuMS+e6matNfKv8MddW
Gd97by5ugplNAQcWpv7BTpDhYly+cpGam5f5bScODnZE52HAnk/jtW/FX33xU/HdZ18kkICC78iF
uyjg295B3UAWDwvX3pybSNYqgZplYuawqlvfb4f6gjNypbBONXU2YamC1E1U3TZgZgGFZMNEscy7
BTgtc5uLuOiJ/OW+yqETlOJCN/nvHvh58iBLSrRs8XQZ/0u42jaJ+Nojl8Xpxg/bWmhJ52CqEMnE
66yeW1g9zIxtTT3zVRlE43hwoZOz1EpdwioqAJgcVAvdHiLjqoha3Na6QYCNSStbW9uxFsGxRL5Y
RLkWLtfhg/uwmg0SFHIh8QtVdmpIK6B7d/j6cJx54fWYJHP7V7/1SJx96TyuTDiQcCKbIajvI7ra
yZtcaHyv+68GpXSI8x0/epDklANwp5biwrkz8ek/+hy0DhIh4bIsB0C1QJw3JUyWezWnnqMbwZb6
aQ1LzjYgxxxScp4w8FExiYxyyMF53FdXsABiTIyH7z8Qv/bLPxZt990SM997DDlB0Ad8PYNUaqnx
qncgixzVhauSqfwpxfJlJg5NAc6vHLJoFwuPz9io6jxgSkVrB3nguDNvWn6LSOeCBhyluOM4WVLU
VWWSdYjIugRWVL6RldY91aoFOoeCwS6MmTncfhlAX4axus75QIdRzvMtVArA7Td5g/qruAV5Llu6
jOGcbfCsVJR0FS6iZSxjTZ+AQ3cDSxasEsYnVvrbauIdbz0V5URnx/IM1ljOTTUErdI7BDExfBKd
AZ3E5VWBkMaNAVMCLQeQ0fwtLc3syM6Arj1LzD53Bpii8dCHrtRYh/EMWU7NCM9tFOJtnrfd8obA
+XtgRf+mjTGeuvmNP/8fbwoxBSUegsQU4fKIqAKDxHfkoSAxbYIpjYkKV4WXAsC//ex5itfk4/+v
rXj8G32UzuF53XyWfu/mfn4u/l18d59iO5JwemMfv3fzuOKreIzvasVapdSFdfsJnhR0aXLz7rk8
DmzNvbtfoU8Ly7vfuY99b+8hUNG2PI81tja0QvFZf53WENuHEsdEUHsFKDGzRNjslDa+5kf+QH3N
MThKnHwCMHbQylTCYJBv5d1bqFhNznIxAjMZoSnyBKAlWc+iu2Usoia264XU3HigIdXD25RvhEZq
7cEmuFU5zLvrmHMtvSC6NxeWk7UcQXJ4YF888ziAAv///83Zm8BJel71uae6u6q6u3rv6el9menZ
ZzTaRrssS7ItJMvYGC/YBjvECWAwJBDIz2ZJDJcAMZdLwGBz4zgsMcbYxnhfhCVLGu3LaKTRaPbu
6eme6X3f987zfKVydPODe29So1LX8tW3vN/7nvM//7NdSzubeehoa9hU5GroxE6ndeKSDhyuQvEv
xNHvPUPbmx2wNrhKELaTsB5t5A2PXh5nskIlc/0bLLgr1G3qme6PgdrhxBV6/U17scKgxrEgl4m7
WgcAmfK9ZiwHpjedCAGJuEKI69IVmuV8HWPZqfVV6jC138Z4VFJ48xQMzwWye87B1FGvC0t8C0vO
3lfeH1OcWwGAzd0dsR3LfGWYVsAElI9QEmCDmgMbUPjGR6yTySJTYONODFeCHMsR3LVxCffgEdCE
BepuWWqn5tAC32VjjPEaKFrAeuR+IoyXuBfGnIzjkl1kB5OM2RqFWPpxO5gUs3PXQhzJUZQQ4dJ7
dig+/e1HqBA8h+uiAUaoKfbuaourDu6JvXu7KRpIQDIs5+T4GDWRNuJsDwrh9PnEtdJ9YCfNahvj
4T/9WvQ9eT5x5dUBqBpgQa4FVK3iFiwiXfkiSmRmfDJ24O5No+jWiN2pRzEtkqYs87qYbmadZ2KC
e1iF0rTx7vaDHfHGQwfiDQizFEJxa2AoTp04RZwbjWdR0icu9gCQVuIqpIXxUjqlgWqso1UC03Ev
8swlgQppANYc8oW4L9aHq8d1Vg/MUr7oLNVo002XXx3ObOVZfp0VDEZXlmtAU0ZFpVkjRHFNytPa
Nge+iFcaQ7gjeGXsyBqMSmttY7QWA0zIfIvBKfbNvQWC9QZMJwFrF2iV0c9vDZEQLBqH2rqnK37x
Ax+Mn/n13+MdRz/5eGygQI9/8WtxZWQIqMg1du+IHQCQTBtnVHo81plTJbifzBBOocBLmPOYyAAn
gCzxUUxqzhuDybUOCFFyMCtZ56xjXDUlxmFhwdtAOSkxgnwAoZAsAmhEMaxMXaZcRg9rhL5xuzvo
jIDCgP2Ngb743Oc+Hc8cOxWvXJigcGJJvP4u+nFSzX8cJucKa2gNWWHzY1P+TVhJE8/iOAuu5nCh
F63xHpDZjDHTTiutepJvdFFfuHCB8hwb0Y1r3XprJlqssD7WcFt5N5JsQIyyGdZbGWyWbb0qiIHK
Mb+KjVlJZJdKnruHYlsj82vWTE5mzyIuIJtLJ1E+gACLuxpXqfGovCkHTGVZ7whJGFmyCjH2Krbx
GfGVEoINDQB24jYHYUvnMQI6OnZR/6sFpniBTgYUH8awyiHP5shyM8U+JyMyMhZHT7wcL71wilim
YZJQABsA7LLqOkQevTtxtdVw7TaxL0L+KgfqiDH75Y/+PO5AtmebOYzVWeLJHn3sCeSFVeRpoTJq
UWZgPWiZTZhjMt/MP+LpNogpAhMmMnbW0AbG08xnGSskNcqFBspVlLtJM7aLFLtEod//ul3x27/+
gciSMHDlW9/GhWwUMCwNbJihE+t4GGwVBN1DVhyrBdeY7VuyHKiU5wZMU9KHD1Bugk+5AyaYQ8FY
pgVHCuDWcj/5Vl1mF/tZCXNUU1LUb/V4S2bIoJUTBgEiS1ieIkHJBluxbxkou1YsUG6lGKRVhMtr
k44gRcxbC9emATdp3AJrcxTOXgYYccqpDdhMPAJ4vzlndCV/h4nTfZKOGAPD3Fem9R2vQ68wxzs6
Wbe099oY60O2YohyLZvl6BLmR5oTXiOkZILEsBxxUhYXVXcmY6o65Ho1KmQ2WZScMzOepy3pSlTC
slcqXI0mGz+jH/Dhvwq8IEm4/xJ3/hyxwiTm7Dl/lm0iEpLPGYr/14dCTnXtfnztX8QCFh7WKMBK
8EQkCU+LEWCV897Ha4+T/+R///95uJD/vbLHc84Dn/y5eSyGIDlPP3eb137v7x0Dt/Ph9699+rnv
3YclMp38imV/pz2cZ6AESEImwVUezSryBVtg8uRzX+eZLL93X2RCsIV/kwwWzkIUvMCkWgMMrTq5
PCo3USs8uQKqBitkBVgYtHkLFQHiQ7dfMXS9YM80XCuT6wYwfgqPInMDq4GFoqDSaWDNp2VcjwDu
5MyN2dh0e3bka6siy1wNUc19DDeSbQ6qzaIgHsjJp/89Q/r2Itsj73FF0U0cC1ZruZJeaQ1kIg7i
Trt4/ttx5703xE23HCaYl+KSxIadeOV0EiTeUE3vvfNDFCE9m1zD7t1dSU8zG7Pa3sYCmLbc2UN2
zu5u4itopTJOULipr9YS8RjMaZQQ7A/0sTWxrKfSO30++s9g8eTo40dhyv3GdrV3MkHbkuME3IIz
8+R3H6ADfS9uvytxgVilIc53CVbG+WCQp5aqRQeNf6pAGT2WfZxihcvRR2zT5cv5fnnVbCsz4xwB
aiQCxjWg4TH56nuq48DAkN25QIDkicsxNj9BgDSAhRIEzciaDKxRBQp8C4W6QgzYEspyBSFYQkE7
LhWLdDD6CZpun6WI4QVcLwNkJT3fSxLJXJJpOIzgnzg2FuczL8fRiu/jOqXKPnNgJ4HJ+w7ujHvu
vzsOHr496icQ1ACnvTUdMbQyHu033BrLFfRIk5midY1tTqpm1sgo4/oIfm4kpmIntbtqkBQZAqjr
MPeKsRKnyUZcYY7KTBUTb9YOUKskFoYLiS2sfyYBbA4Bp7CX5mh3wLhV1DXwOhX7zrZwnNnoImEi
jdtlcWIyvk2hy7NkCyo55HgNMwc2sHaoXM/sh8MB1OgGdFxxy/CpUVfOfCLr+H/h4V1IeBz+5uGS
DZn91HeuDle7azq/Ym1bZUKJ61hwlI85nebd0lIRHSZgbGCryNPkOIJBpVyWcIjFOM+5nuQdEXTx
Ox/66Uj9yocDJMEnrz4unIznfumj8Xff/FaQs8mvvC6BCdZ8D8qjmWxSPlugttQCgboyBNZCWyco
vYRYHZBScrauZ+NgXL8Wvkx6TyrUmSObgO4UMSw+UlaYRzFapwqHPsyAKTIrGAFjxOC9yLpfjOsO
dUdpa3esD5+Ov/3zv4ivfeNoXOylEfah6rj77n24y6pY1ysALVpNU1LDzgZtgKZ62JFVlNM4GbD2
ZSvmfLcRS4Z3mpgrzh0BoGTsB3ScOt+LwoStoraTMqPnQn/CKnkdUiPFzCGTRVZRwFXM053d7bDO
xNywf+WKdymFzErcRvw+kybpBblnlfp55mbS1sX5yJw1HtCEHUuFZAyEVuGxj2J8MknxVeSZdQEb
KdFgluhEPSVO2OdeWKkNGOKBvjFcn1xfM8AKIDU+hQzj+udYC6dPDyH3KBKMcTKHK36YNThFALhN
6nMYRg1kyJaVVRNvBLu6e2eiIJZxZ7m9xmsVjFszgNksudOnzxEYT4IDp6iONGt3ZBAtyRras2sX
JUxg34grmoZx1rjaggVKWhIhWw1BMBbNLEizKstg5tIod6uSZzCaSrjfjz4+SihFxL/96bvjgz/1
Do6wGFdefInA70kMWM4NsGJA/RbB6BPEuxmkrlFaiS5YwmjiEK8+kP2iOcZQl10Jchg1wXvWFPd9
A/2iW49Q06SkgokQrkVjlYp0mwFQHJ91AI+NmYNQBOpIJwwMP3f5cy5IR5jGTUpNbMDYrlNENulL
yjlZ20pGn+Hj/rMy1yvRRVwNcgsPNudD+RfiY5nsGDfLMTx8Jf7+Zbx9UNw0u4g7X3dT1N3EC1zO
1LmIdRK2pinwmq1kHljx3VMhFtFWbGaQ2lLNZCn3l/cX5UGVeEpXpWt1nHtfzb1Uiy9AJfuTNMlA
TKzEHUgUTMLm2V18XeOIeGd707KckznhtE/EigImDxrygMPP/6mH3ynsFFeKHJWMn2m9FQCJn9kk
xvdad+7bS0Rd8VfYkf8Nf/6XH/7Wpw//eu7/82eF7zyvwrXkBWv+vedTeF/Y1uvx6fbcV/5qKZoF
6P4t9S/UyX8j8+S2fuNrb4cVSPyNQMoMQsEX04LfARj43GMqaPxrrJWef/dv9cdFbooxW8tMViej
qa1u59N6IgIJbzy7SVbpOovA3QusC58L8fSnG2DIUvDQKGqsW9kuhQ2CWxZIObRMQKOCTGtIeldh
mkoQOvvAzbEd118atmkBK7WJVPtF6BNTmOewymyMvM4KXEBJY8JRFsD6P9rUuBsJ2LZz+C13XR1P
Eqh+5uz52LHVHOvUU1lcIf6Bxb7IZJxDyWoRZWF4bDRagzJuITV5cGgqzpINt50+eru7OqO7vSu2
l7Vz0ZgAywSGE89VgkCfnuuPYar+FgFMMpSkyGaJb0BQTw7Sr46Kyp/5sy9R1ZiGwfjaGzi/agRT
EdStWUoZFsLzr5ANyATopNJ5GwGphyj+V0lphS0WuoUBe1EW0/aO8r4UzUGLIywQ7F2M63b2dx2u
o5bSSurUXIkZylIQ/p7MbBkX829LyJqaIY5ABe6/yTm63edvHfMBluoyTUK5u+a8CRXy0J0bxg2G
P+R3E+xJvmWOGCBi88YG4nsvcc78ZoD/7yJeqnlHfRIjUo2iMS5hlnphE+cnYgAZtg4AGKh4OU78
+cOxt6sr+qlVdgfRnXU3viXqbnlbTHz7Y/EPTz0RHfv2RwfAaI4EgrYamuqmKqjf1BJFO3ewsJFc
EyMRvRdZZBRwxHo2kWAV62wN1q6I4OYMgHN9nAKwsAVzMH4jKIh5GTipeITNjpZmsv+4z1ibG92A
sYNEKzUARbHsc5nOeNeRnQlC3bo8GQ//t6/FM4s9cVfl1bF3jrnHyNCQgvVHhwDGQ+PFKxPskHPK
2ChPXBTCJU0a/7qNMiFvCuXXp5+4cKDx2QZIwCtXvyvOz70PGUZVFmotBglOd2+lHInZwr3AFYa7
8iISDsiYHOEXPvyh6P7TP+MdD9fBH/5+LHztAVrP0H5mGbaCj+9jD0eSPEO6LQDULvGkMEWkh2gN
VEUO4mIGJnA+NsdI52dOmwVbirujBMAg08yQET8I6EqYHM4UmeD63QQ0lDKXMzATCVCEBU1Tpyq1
SZo+ddJsYDvO2ug/14OxtRS7d3ZEKZl2A88+EX/5ua/STPkMtaFy8fM/fxMNxe25R5NfYu6UKUUE
/TYYK0Q81QAMVg4QJLONfyxxq+Uohmkvtwpc6BWtzWS/DScp/WOwnGvc9zJYn1qCfq1LN477K0sh
VwGBfUCtF5QhVixFMVGD9WWJ1Film6xhXIXGROnyk4VaQt5YQHcLQ2OFZBINPtv11MKQKr/sF7iC
68xg8po6tA2yax53omUbDDz2WKb+y1xXwIhNE4hj6r6FOOu3NSFLUmT4orFS44CrqTh96ixjQekP
2Bb7mg5cugKgm0UGel5lsfcAhYJxM3oPzNId4tx6T48AQNcBaZQDadgGfYIsxX9WSXziGHn/777n
FxKiAw9odOwho7ClUUzFPiyzMEfT51cAfmRoYmhuqyBJJksdLILwtwBq1v2SZ83CGOnSK0L+2JFC
sOMM1P0/wTl0YNfcf/fO+OBP3E2gHGVTnjmGXJuCweaLjTmUMBoaoLaILNpCrlXDDJrByxtKDjin
0E2JF8PVIUCgawtjZuDQCsaY3S0MFbFdVEr2irloFrjpNkxYEoFYlQCtNVyZ64A15ZDgbJNYrmVk
NcKCYwEErTrPbJUd0wjfIEEno4GwMsX6cZ6zOxgwXYhcWowS5gGeM3kQYAX8IXljBlfcDK2pxogF
7pvGG4BaePv9B6PtvjuTMdk6cRJWdTa2dTRHyfU48GHri6mn5gktAY7sCSjzVU5cbRXzbomA+OSq
WUtJWBVAXuYJlZjoiBULwDKHZFqtf6h2z8oWq1cBvDKoEiJb6DPshahEX+pzdK+JkOCw3ERVV/6R
F0351woIHxwrefjX7/3LKSdI3L++d1t3qqhjmkUPT8KOk+0Qs8k2Ai6t08J+efuDR2Ef/v2nHoXf
eQ6ec+F94bf+ztdOPwWl51LYhpc/OHe3KVxH4bXf+/B6/M4nnmjeC4oc1rw4li7UPlb45sW7wEoW
SvzrdrodfJ0/D8fVbbWhC2MsqMLjzzky2VCMSVsMJq3Ays8EPFLx+oB/8PC1b5EsWgG+9QxUKP6z
jYm/82lz4uSX/M9GpK7ovAoCpDFRV+WgOUEVkRPHhsRiNcsnKNyWmdE2RvaARbAgFWT+TFHB98mH
T0B5R9z9FpgtXkwOT0ZxEwuSiVdNUKUCd2cXGTYIcwV6ClfiIBbGUN8oLFEPQIpzRkhUIewqUObV
lHcuA6hsQzgaSGrdlzSxFyePnYnLfYNkrbDYCIScrgDcoKDR7dSWQQkgVIurWND4nm1zYrBsHbEL
tQROt1c1YLUUxW/83E/E6vgGbNck1cTHofZpQAslbtZhDjT6i/fciVVSgxWI4EZhpREKDAyFQLl2
XDWV9NaaBlTNI1y0xEpxX3QT1HrNjt1x6NrrqX80guus37qtCNJRCnJSlZ2bMjeC4ONO72ptS1jj
GQRPE6ZlhnFdICvKStM9A5cBTCnYrhzQSUjqDGEcGXGVvRah4IDOVYgwKkST/bgCjd27MoJjZCle
B58yiyU32Mv++O0kn2FP4TYrid2sujdBK1hjaxEhdvLIdLIAACAASURBVHVZa9SuV8fJF07En7xA
K42jZ+LuAwcAVifj5ckr0TQJ9MOdMYzbbon0mrNj9BwESnQ9VJ2AGFQb50hQOUqtFSZj9+6uqD68
h6OVUD+rN85eHogHL54lsBi2wgvgnm0R47aNYNCrOnfFAUDaGgDiMqxjAiBrcE8Q9FtCtmQvYLj/
5bNx+L57o+7f/VLcRWbXI5/48zgOEN3Nde9o2hGpPQejArdBPS4Z4DQzMhWdtTuTBtV9uOhwCHF2
mjTOcNe97zRs8uvQz/xWOGUB1S3cIcUo8RUSIlKLMkU4BnGpFaEoNnHDTaJQcZYwAmQscWccV9lI
YmQ5o4h/8db7o+3P/oSMnR0RLx6N/l/+1fj495/kNxF8EjdyZ3+crDu7HubNTSUs8W0cn6YokdmO
0iM7L2pI9V+cxCihyCEKYRGglV2F38Lart2C2STYqJi5Y8JJhvLiq7pymF827PaeGANjX8i8pMNU
o76VfSzTgKtlWIGthXFieIsoE9AFU7Y3Ni6di0//ly/F94/2UFKhhVIG++IU/Rk1xtAt3E7cagCo
DY6xjCKu3F5JNm87ba9o70KW6ibMalUj9cQICZiAFZhjLa1hbOkGXCHMICcoZJ7q5laulKCkdlCL
bwk3uwknSa9CGBd7tJWmSCJAeevWtC6WjaKt2URgKaCJTOCJUeYM23Je68RNqvyzGDKNtD/a1tSS
V/hLA5QYYfw4X5sd6zajaw8A0aw1ABAMqu637dSZk5HqvdCX1G+qJxDfshMXe/vi8YeOxf6rDxDu
UErR+SuwWX0AqBoyAwHvXG81LndjMNXItp859ixJCsTV1BGXVVmLm/+26+h00RRdXRQJofiumdQv
Hj8R3/v6Q8Spjscd91ydnEuOsbUZfW9PP9jIcjf0ryNz0UxFbJUkW3YNWWnMjvGxVWRgVsGQWKC3
mjixDOeSZKUhq0xYmIfZmRzCwc6k/PTv3h53vv9dsfDiyTj/xCOxgwzEHd3bSQSaJueHbEnAsK7T
JUCOMt26WQlwgv1B8rNOWB/s1wzEDGimXOTKmmDAWaP4V5CvysA0OiSLW81YuWLAV8aabrrMKffh
eC9z7tjkidchjVWQRg5s4s70Jlp9ndoJvEavIWfNBpXBorw0hjYzmK/EQBmM1yzFOhdxK2LXJnKw
goSaZcDgNMzlAHFuQ9xjMHzSIu4j/+ln2CdgdAbGcAz5Qq/KbcTjIsRj/NkXmBdSIshTShuV0UKs
zBRK7r3R7muwofBPzHdkJSEjqkkBOeoOncc8YhxcDzmA9QouzE2A6CJACrQFEMSQhZXcRg9Ja+Lp
wUnKf8A4W34n9Rxjyv4SS4w/iCSVdf6pQBEYKR4EBOwy+esaFLS4XY5n4Xs/9zO386/v/Z3fF/br
d772ryDMY/i68Cwcp7C9v/WR3Pz8y2Rbj+9DHOxvC8fzM49beLhd4fvCPl/73u1878O/buOjcO7G
QhH2xzW8OgGxYBFD3CohjeDKQFPZmjy4EjIKjKS2nbaCMP96hjJY/sbjqBwgr6M3EddATeJVbHtB
vhptIRDEaKgVBNAqE7aIyVHKzSpBIdiouAS3QRUZWsXEAaSrAEw5a4lQogCal/XDoQBbWH3SnjJd
VfQxs3aJMQCWXnBbM1GmYDEMOteYSHzMXiWnarbHFpNoGYvlMMGA58/gfoLeef0bb47BwZH45H/8
HCm9ET/9y2+KnjOAJZgJ+3DN0mdtFSFYQ2ZYI87vRkDS2XN9xGZRDoHFVAk7ZCzWqbOnE1pVirxo
noVGAb0c29x+1w0YF5wnq/PGa47E8WMvx5e++A+xE4DyU//y/WQHXUnqbl13Df0ICeaenZqgIvql
mIQhqHXyowzOvdybWD0H2rrpWbUU13QeosQALSMWi+kftZ+VSm2hiz2x2j+UKLg1BM8JhOn42Ais
SnE04/pLsUg24b3rqdZ8ESu2lEW9ZwdABlfHiZ7zSW2Y9pptcetb3hYPfOvv4y+ee5hBJytlx9Xx
rh9+l9Ihel96Lp67SPV1FPWb776dcgzbcV+wmrp3xdaxFyhed39c/su/jqGvPhmHU7VxHpfDeUAD
ndgSYTLGvJCZca7JUsmHcVa8Nu1BVgtLn/tlTo3zSHDhepIv9Reqclcp0NNT4zPBhkUCABS8HgTW
YysC7HDfckS3xBGZ7JuIF7Z0ZVHHhSMM89yVaYsjd78OAbIYX+05GV3EM9z4z98ZaVyO1HFwkrE9
MxuwErB4A2f7Yo35dZJYngsnz/GaYrO4oFtpytzOnKvE7JshcLVSdgNl3DsxFjfv6orWD7yPDJnp
eOZTf028U1tkhmkuffI4MJL0feAjFdG4Tty//H/PjptQzjhfz/cAghYIgp+MfQHbtqsDFgyTFnZy
iABqlVBjp8VKUQbU9+HGEg8yFY+dORsncWved811sedHfhhhB2Ny0/Wx8Oj34+wzT8Z1731nIqSu
PHc8+kZG48Fjx8nMXI6PfuGzEVe/IVa/+en42w/+ajyPcueIAR8YNxMrto27IFSGp2FEtmCqhGWw
lNwFOTLUEFtVkyhyMGZqNmI4Oxnt+7timPmbIV6t/Z47Y2xgMEpaqaPW3Jwwl0vUAVpD+Vk9u4p4
ogwMs0kcULi0bsMwILZkrq8/Xnj5OIBinvVXRSmSbDRyTRX7jnD8ZgD15+Mj/+HTrOHFuOpAe3Sy
75lNXMGURdFizyAjrByfQaFbSDFNvT1d8+jUqKGYqHFXlk+w16Xy0e/meD1vuxSPBzti3SebqJtY
YTjCdtz2Le20hGJdOpfrG0geIWZrDkbT4p+LGDEzk/SvIzO1EmPLJJyWlhYMFRI9Tl5EhlBDiTAE
FXQrDHYTbu6JoWnikkdwBcH01NbF2NAI2cK5pDo7p4XSXYU1U4FGnDt/IWGHDgKeZJcvAmx24sK7
/sbDAMaJeBGwPgdgsjis7XSWAGDKkS3iA02MkUk3AOTcmUu4ANMk6NDXElbpyuVhQhLqKCa6Jxrb
W2LvoauQr3Px0nMvxDEC3XvPDbC/tbgDmfmFP3kk/vaRj8PgP0vWNZ8LNNDehlWsI1MygEnbyqyi
vMUbaeSpn5VyLxDhXB/uROTyGnOvCNlk0oIB7X10hFB/nnr0X8XUpSH6Z+aSMZYV0gVoNuIy+2wm
9mqN10W4jzW6Le+RtAFjteODw9ijQwT6RjABqYMS9J6jQ1CGFrxV2yl9BEqCkkQX6tqDJRRQlQHA
QFyAAQAo10RqZMI4ppkDFmPWvWmMk0HsW4Bdm9TrdjVsJUWm48L4UFJ3l0pD1LkiQQZgtboMEMV9
uU4m9xrvx5Afrwzj6pxE54Plrru6Le5+x/0Rt+yKeOjrrHekmUiGNZ7fGefKvJyCFXM+eBVMTRhL
smYBzdbfS5pMmzFC3bXETcR2m8xJkyY0dO2luQEgtCxGirVgTKkycRldaBZ34uI0rg/2s4iTKofZ
3YItTlHdftOAecGV+lia24djy2kxnHngxPWyu/znvma+Jo8CCEFUKVJ/8Ci8LgAZt/cz4YVi3r+F
9/51cvjwtc/Cfgt/PbYPf/va3xW+55Ym5+R+C4/Csd2euZo8/L5w7oVzKOzDa/az1773tV3iBU3M
QL4TQOmYdq8KzzyYstyCQsMppyAVzAmsZB4UpO45T9oLrmSt3E416e9TKC5iDxK6ncw8FpVVj6hz
DFXJPrAg1p2gWNoZHNdZMrWsGp6munMFjECxFHodiwbLtRS2KEvcjuwTqwjiAOqdRSSXlsUCKQGZ
L0LxbwIgzMzJkt2gb98MnBSxNA6AVLWMmKfjQ0DVRAD2NFa8gY1NxNV4jSeOnyaWagRrjgwuarfU
wxaVYllNkBk6QdCvtWl27eiKXXs7kqJ4ZcTkDA6PJhZUKUGrGditSvqaXegZiBNPvhw/8c/vpVrw
3ujp78d6rGHBUtyRoPc3HrktvvHg9+Pjv/kZLOJsfOjn3086fy5OnexFJmCFoDhKclwTz3KQ2uL4
HHFQsEfUq2mpbo5zL/VHxTLsGAG3WZqCtueaYzd9AHNax2R3UW+BvmIDMYKSaszAeLGwpaVnsXQH
UZiWAdiJArJg6xRxWFNLs3EZEGaR0/6tMZR5RBfAZF9LZ3QQf7KDFkLWdekfo9bU0GA8M38lOjjG
z6KkO26/NlYGLyOkL8RzFBfsJGj2+RdOx86pdLxzx/XcM+JVei4G0VgoZyxizBYaDgGx5oE/tjop
Y+Sxjphh/pXhyv811JuMK/6Zc2pco5/Lryb3nu3MAiYSjt8iFPi9c5V8KY5AwUquQX5HRsVoICG/
a2GB/cim5edzmozD9mjY0RFnUcQj0CU33nYkyt78uljfRsAocR/4UfIxLsT0Samj+dkJYwwDGYxn
PP5UvPjUsbh84SK4B3YFoDWLWbqvtSWuIgjamlEWh8zwfvTs+Tj+7Etx9a5D3Jc6wNM494u6Uuf6
WB95gCLgI3ovuVbHpAEJ5qrq4NPM7lYEGve4o4UrQQnoX7B6IPNlDcs5bdr5/HicJ35vmHiKwwcO
RcOePZwypTaYh2ePPxMXL5yPe9/zHn7XzPJHSlF3Kwl+mDgGdVUTEw8/HD/+7p+Nk2C4e/lGOQh0
h5UiDofzcUxxICXjPMS51rAFXCmMGcH/WMhlMAk5lHJ0U9x3J0KbWMZJmM8R1m/jNQdihvVcx5hn
UJhrKLU1WOhSgiwzGlSsz3w1fVzycwPEho1EPYHrS47pHAHfTGI7L+Q6OhM64NiDj8Gk9MR3v/c0
7hTjq3YBrvYkrMYVWJGS7VaAR+LBPK2jZG2abMHdFHJjAzm0gkLPYfHrhkzeo4E3Oc9N3DdzFG2c
HJiOao6nDErzmcrXbCtbyiyRKdd3eQAgQswdykmFlu/pucXxx7h/FCZua0vcYDPUQRoEtFTDXOYo
z2IV9oMA0EmKTzo2Vv8303CWNPrxkUmOUhJtALcjNx3GJbNBM+X6pB/gGMyGbrwVAJmssokmTbji
BB0zzD1dljWUMbFv3wKMWwb3lk2VN1CuFhW1z58u0En2M0/8ptc1jWypos3OtsZtbAdrxG+319cT
sF6NzJkko7c6qQ4v87VAxwMrw3fv7CLBoypOmEmIEbeCi1PZWkZhX8MmdJMZp5OY4IxzEkQLI1UM
0lXOppHVWd2oPK9cGqTGGIZJY008//zLcf5KxF03Vcev/tyPxIFmABIxnPPIaJm6CuLmWgjZkHla
JHPY7hUCD+P1XNxmQxr3lgQz4e5aXJlOjG8B2wbeDMMmvL9p3G8yjFnBU0JrcvIE/NvXbxYm0jqI
Cxjg+7q7ACHcDcgBQamM5yaGjUY6wjzKa6hVOIa5SL0o3cK1hIB4DNnORVjPpcnRaIWlKU1vi5lZ
3H2AZ200C1/rLXnyLC5nLUGU/S03tcXNb78vEMwg54G4dPZ59ttP/B+/x1tRwbp37LcgH1KiMNzb
qxRg3pBO53ysp1iiVU/CAMiNjFQ6k7B2sFsAgqxaZZd63nFnE1AYhoAti4g1Zu7i8cQl7zpBvzqs
xKSW437W2Evz+wXYzSJ2tgG4/X8wVwKZwlOAJU5TuPpavethOYfkUQAiMluvfbid5+QjD1D+x3t/
70OBzukn++N2JQ+/81nYb+Hv/xe48twKj8JvCsf389eCK7/3O6/B4/re8/W9n7/2+vJAyhwi1Y3s
lWwUioPtBEmCI9XYCqNDb/ZkK0GVDjrjqNyjY6e/PB/3kT9eXpn5a9wifE+971iGC13F3TTHxU5B
Nc5wg5a5UQo6XSslZPtUWKgPwVqcMwgPIUZRuCJuYE0TSB+roARh4uQ2g1BzJ6MFiptsC1PI8g7F
UJUrCF/rW1nwsgzrcZUYDeMRNlGOiRuRY3qBqlhpTi1Pi1omRUWB/W6jAKsl1bi/73I8SCr/DQcO
UuSN5qeAmgUWSrYYAYQ1WQ9lvoxVdtedt5BZMxZ//cXvJO7G7W1kzmH9TsFOEKuO1RTxV5//ydi1
Z3d864FH4u7X3841wm69fIlKuq+HsemIoy99O977jt+LwR70ZVfAmlC4r6EpfuqD74zX3Xc9IGQS
huQ0GYdPRM8r/ZQYaoy9AJ7lsY04+dR53IPUKkGxbWeBtFCLqR5h0UB8UQsxDvPcqnXAaxlCzrTq
UWjlOcoKLGDBXpkcjzbcN4sIvEvjI4xhEUCgPW7avQemjlR8xmkCd0mGRWtW4qXL/fHgqWNxHHjM
sg6z3uaYHc0AqTtuuT5euXQB+ns9bu7eSbDwZDz6xLGoxfq7HoVcz7baV32AK9M/qGHPHmQ9RpPj
bGckZJxU2zRs4R+JD8w0YDavtSvzkXvCaS1tHWCaBNaEEiLlHdsCLR3yutCcl4Iqur2zF40cg+7d
QjcYUS4425a5rtrYc9VeaJkduK4pyDc1Gs0HO6P5x94RcagjlsZpJo1PI0PWlOUcNASK6DmZFOND
AFPSn8VOWxz2lZcu8PywMpeff4kK3FfisS99A6ZrJO4k5msIAK4SacNNfF0L9YWw3ldQhlkEmFWk
iURlF5wEymEU5rGPHmB02wRYmV0IgGesrKmO2QFPUx4duLyYjAhAACOMUMpWLpQNoJAX58K5sU5W
cBcvUjajFiCzxvpJc529R58gseFS3PZzP6kmjLVnno4UxgzNDcgMnYiaO24FmHcD+p4F9LGKKffx
xT/9TJx8mpptlClpYO/evQbO40bORLbwNCVFrZvVGJ2xUElxYCzcCuIJK1oBfFVr0XCQ/VHDCfom
AXTruOaLAAC2FVtDwQlIrMKuLFCSrMAQLKLAllf6YQkuwhThtoVt3dXZHFW7rmGbjTj1xJPxmc98
Nb7/yBAueowgon6bcZc00QPQ+nYTJB6MkICyQpFRWxYVAeBsvWWNKCut6yLMoaircV1duTJC6YBZ
XJdU58YlIiNeSxyjhodZc4odZUlSBwlXnr0yc8wJM79MT29E2evuGqPavq4Ys4KXYCY2cQHVtTbF
YD/9/Rjr1rbmeMM991BvbSUe+M4jSXzX9u1N0dt7MRHQ1qXT9bfIeZcBehLXGfethP1VAgBHkTWX
ScZg9Bgf2oENEwfIfhFoCTtlcLjxloIsSzdYnqGSti9rgAJbMyWxRQAChp0YH6Ya862OMiiyH8ZF
yfqvAdoEFqWwFsV4E/qZs8almvk2QebjFMHqVZxLB2y3vRYvnLmUyGJDMQym1y3useZh+Y3tzBF/
Zia3GdGGS6SQRRbqTQGWNvne4P9t7G9xbhIDlPg1lN49r++ID/2zH41dh9tj+szjZEeaAOXMwN2a
xdiFdbcSPHWWiYNUKuRlhrGGvhYAyzxZpR3+ETCJFmQqG0rC/7h6DDUCvbeIY7VHq3ovQQK4qE1b
HiWwf4ayFsY/HYAJ9FilzM0STsLm08YEYkGhbzg+AGl5DNlqvBsGvmeifLCeVYpQi11lVNxHGawQ
glGKq7GYcR2ngOhL5yfj1BDrCFL8qgONccfrjyBz2lm3aF6LL1vvi3U8ev4kJXJw3RHjZhsn3b1m
LpbVMTdZQ4Z8EDDL9XpDAVYASzOXF5EncwBui3OLemW1ytCZaUD8JmOW3A8MjWkskizMnGBrCf1p
YdotxiTLIihineSKcDEzOinm+iJM8Cr7XYQtT7AJu0b85kWfTJAPh9dn4b2f/WMPB93f/2MPd+5B
Cw+39akgLzy4Ba/euMIn/2t/C8cvHMf3hX16Xj79TnHq5/71WTiXwu/5KLlet/Ghq0UIJcRUVckJ
yF75ueDK0dJSFkjl+QKhlWDKT/NxWHl3ofv1n2xXftG6RX7b/P4MltaXa00lCwbaVwujBesBEcHi
5D7jaaJ+C67BYixKG//qR/Z3ovBiCrwlgY7sV3RuMKKBn8lvURybWEgbCDw/c/FK5a4g4IrYn0pY
P75nJHhKsnWY+Fbr1fKwaar1XfzO4PclBEILAd/b6NfWvaszRqmOvJBZiBoA1h6KtLU3UatapUAc
zTwW3F/9179PLOosqa45Fll/7yiMDZYulsaP/NhN8eQjzyQ0+mNHX4pjx17B8sWSbamNgZ7x+NLc
N+PIDdfFHVf/WnzqM7PxKx/+ZNx0pDN+7N33I4Tboh5X4l9//lvRPzhE/NUqQo32ELj1FqBpeynh
kFlB+NJ6ZGRxOl4ivsdeU7XEWpn5VMmzjWKAo6QT5wBbHVVQw8ZaYaXkhQ4LiTteSqZSB1Zpd2tr
dEIf725FSbNwe/vOx7m+XtgmuSbNKlwRQBUhN47I+MmGQ1H99b+P8T/6nbjy+CMwZu0QMK9QTZrs
pKbdCNyRhHpvBvYNAA4vsY+rqKZE22VcwxOwYvMwWAIWBAT/cO6wWAnYZ24hilmXhsDTs4tztFWL
QMlZ58NtnHUGd1MhiF9qJuXrQsmC6eQW5Buzk9/KXDzc0bwzZ879UYs9eb8Td1q84ZbY2r0rYvhi
lPSSzbP/AEJuN6nisACkMZc1t4N7mBsqDISLgZ3G/q3hby4nwNk66BVoqixBwuvUwSpp3w/jsJOr
LY1r3vb2GPjLz8eTDz5JzAetb+pbqBoOc4sbrG47bFQZOYFY0xnqMs1RbNDYwXKq42+vo13IVCtB
UHMAHQAJQnus13EEBHD+rq+9L9MFwPpOgKnGdVyuI0hp3JCbAJhimOBNmN5BjJdNhGmWLKpsewcB
9sQLwa4uUfxxDcYj3dkWa10dLCtcswCNVZhcj7lw+ntJ/JoFUVvuuz/e/Zb3xrs5JtU5Y+u//FV8
8W/+Ph7ueykeivNxG3fqTXEtXy7FY3ECS3grjmyj3EFje6yULcTw0pUowXqvJbg/yKRdmxjBnUG9
LUuL4I6w598ma3cBkIgfj/tKYgPskSVKtpgtgtkUlva1gPZUc2dsjVyML37xwfjuQ89TW2oxjtza
lJRWqAfkG7R+uv9KTAM8WrcDsoiZuUxsUxXN5+yLaK+9DOvBgqVW5bau0oXnKUILoNBdWEEdrkwZ
9wcFqwtPhZuFjVugxpLB5bYBMWYlR7mWNPfMBuAtxPLJcE3A/ozDQiF++I6SHk1tsO/MRZR4NRX8
reZeStmUTWrAreJ2KuH4GViecjLyctlqRK4sAzEzxPusbvIZ8VeLFDR9/NGjBOZT3BMGfYJ7NkxW
noBK96UtYlo6Goj5Im6Oz0pQoqscz7g13f2yVisYgavMXeOgzFCUeTUjrxw2XnmbtApLQimQ4Yxf
EsvKfmwYbOjBMIVMzd7WTVnN2KWoIi+4ovEF57dAp4ld3DFkKvsWYC5Q3X0ecGidpw3cXiYqWSpH
Ix7NjXzm/AQ4/C0BSGSJw92AMboIsOJy480/XBd/8Hv/GsOhIi4cfYCkBmJRmSeyPOqEBco3zCPX
ssSeVsOQrhBXZbV65f6a++SZFOFkrabwEpiZag1FxYYlPRJsxfnyk2Qdr1OsM40hnwATwIj+w1q9
HwCNSvTDOrFRtrSx4KvhJylZLvabAjCaGThxaZZ2V5Tq4N4tkC09Q2V1Xdx1GE0VyPCBc8P8vowY
vvkYJJYW21tRzL2J2NEV8c/eeQ+sMycDo7hFbFeKdWFP20XWbnnpWuygphhqkmMxsQjcYoYRAM91
UB6miJjAMhKxElaWkBgZX1tJbRK/CNxOXH9rZrViFKbQUZZaKMaDZDIFF4GM5jxQwJbkcU2oG8wi
FKwXYRjY73FdkIr+lhWrgt2awrVoK6nU844fu9EecneK4deCIi0wwYjbsEvEb/5RADNunz+NV7/g
D6fwjz78/WsfblfYj9/5LLwv/HXfPlQGfu9vXrsdb3/w8DvP87XHl7kqfObvfBT27evX7rdwjbJW
BrG7J0sK5gGV9Xi8fh0uOvbybj5/L2iSxXJsXERgYd7lAUueveILHop8bhvfC790F/IbFvcCgtO2
FzNMTkuuzmOprLF47X8lvW2cVY7GoPlmnywOAlRLiF0iSChpomsAukCqGD9vYiow0S1ToNVUyu+S
hqxUsE3miz5wVo/2k60ZDCBd53gFYKVVKMDysU6rBSlxTjOxFm0YLSNmg0pTjS2u9vk/+SqTeBG3
dSMTHdcVzMwMvVEEVrxMJuNOXCsLTLhhrJ15GKFKqNt73n5nvOPH74s/+Pcfp3DfCBXSEUQYRS1t
LE741o7O7gTYve0d98W77voJdlQSpy8/E1/+7DfiYt+VOLx/Xzz68HNhR/XyyjoUFkH1ygcWj0Gn
G1jX0tUXTtFWg/Op0spksc/jopqaokoxCP/GXW0IOuJcGLZmFLaN4YvwwZeTgWfM1TBphjI53jVU
R8IC5b3xeQPBGXIYSFXHNiq8eqCQwIcwSVirymh76w9H75MPRwlKpePdb4mxY8/EUz0vxlv33cD4
TNJWp4OxRUG8fDJxd7UVo7hxCcjEaVsaA6V7jsgUZoVzzxnqX93QbkFcGMcx7802LAIkwZ38qhFU
nkfeLJBRlRfTUU2ZDFZ5DZALtZV8b1kBwVnu1XlPFSFgAIG5ZNMcITal6d3voBfevlg6f5rs5r7Y
ducdUfW6u2Nm4FyUrMCEbiNYGCvS+Zo4yJlXuoyKYT1XAV2LZPwsYOmvYaWWc4xylHE5LqMSmJis
8wvwkQT9fPeJeOx3/zCukGl3YyfcHaxBDoWV7mrGtTgWQ7jwxmE8W7FQ67bvgHFEWVLjy96YCrz1
IRhRg8I5pn3H6oiJWeVcLtIHaM2gVFzR1bTpyQC4M1jZyyjrTZITMmQyWmep7dqrYI8q49T3H44p
lMa11xyOcubIzATp+MT3ZQgwdsRqUJ4LfcOxTL+y+s5WXJC1sF5AWoVVK4xmaqe3iab1T8bXP/p7
8cDXv4nrsDHeROX57I7d+J3RkEMjsVSNW39PRUw3bsQlag1tA7hVUJ5iiEzaNOzyzuv3kzFYifK+
SPwTzDOW8RrM9loRESEoUTkHy59sozZVbUcbk5I4w54X4tf/45/HE88Nxv69DfGGN93OtZbGSyfP
E36wTnFPGGXW8SQZgLJMq7DWKyjLatjoeoBT4fHeDgAAIABJREFUucVxEaBmCcqOzVF/aRSfjDFU
1okza3AVBTtPKY6SEqL/MOeXiZ9JAToMgpfdzRAuUMa9L2PMQSoJwLDgrexADeNbDstkUoGtbHQd
WoF9G3WnzJx76pFjADcYeYpxHrr26ngza2iE+Crjpebos6o0l5mYZVvZoyXQxtily4QsUP2Ma5jE
vWf5hApYM0stLACqLICcxJSiHHUDruDWsYdevj0YDAou7GkyXlXObW2NVNPoTqpyGwg/RLmENZiI
DPO0BIW8xjikiB0SDC2RTbiMIVDMPZkidMIOCsrWFVzYgsBclrYwgKhSqstbvVzEIJtvxplyOunF
BzOyyXcJHhHVMI7GQyVZ3VxnGeNUBLg+dXaETggRH3zvVfGOt90BiMEYGhlFxmMcMp4sRMaXlmgC
AOZoCZ6J2jpABfdijVInRYSBJGU6OMYmMlKtb0FPtVIx1eYN1tYjVsw6kr1znK3UbpJS8iCOTrBH
wBEKj9+bDMX2sjiLAIkMAMN+h8oedZwR+rrPZOgGMHS31QA4GR9BCRMwMcTK8KZIw83TkH0KGfnK
5RGKRINBUG07djfFkatxtO/sZE0iHyiOugBTvZamDEY9oRC2wEFPmXxShAFgXUJrQ+pNsLdrUcJW
IhMMPKdbwBZAeI56Wctcg71ksxAGSZN5gRJjsIVylETIIMOKmBte9RY3ZQO2sZixSilrWHOoRIgJ
WUKQAdtbsHae7hcORhVgPA0zPosrfAymTuYzeRT++oZLdn05dsnT1//YI38b89v+Y9/7e4Y52Yff
K0Zf+/D3rwU6r/3u/8/rf+q8/K2D47HdvzLPyy+85+UPrq/wOj+dfOd3clWCJQNS3ZdqzOtQefyP
65GZUvHqMsx/r5vQ36v+vGWCqDyl6rYCMM85v0/BFzePxaB/e90n79dkmTiO9Uw20falBIkCkJNg
whKpeywIffBZWmSUGMPAijCOocSJzdOjbL4KljaYfAoQr8N9J6UWmETzWDZWbbfkggF3SfA732t9
+RBo6RaU0cpAlSYLn32VAuhWWGQ2OnVSdXW1xaFruuPEs2eJI0JZID+RvVC0RfS0IjUaytRu75fH
xqN3gOBlhMOhG3ZH9962aCbo+OGjT8cNt14dVfT5ywFurjlyKC5eHoqnnzkeB8lkm4ZFMn7hhUuP
x3Wdh2N/29Vx991TuDq+APv1Mq9vJJgUdxILcxAX0wZUrBbUWvTHImV3a4lpuXvvwaSisa6iauK4
slgYly/2xYsvvRzfO305DsMWtNKOZ4AFYUuacsakjCyrRaw1PP+MHcQIYAS1l4CnfFgyWVrcI12B
dbxqYQuWP9tTIJDZYGHMi7x65uufYNwtGUA24Be/zCdmnQG+plMU9gYwZGBSUNBWUCrnfq+jVHXM
1TaisBmszQvEEhBnobvh4tgAR9B9R8wJ0MfZ1Z5rjCksuXEUs8q3nkzFNpRMphGTCKvcmzH0wjHi
WMhKLNpOjRtcNLCPBXBmjTVjgYgAATousm9gF+0gFnFTBMxNORlWuf0dsD1MQDJwqBuAdbw/yps4
PwR+CTFqRokuA2SsLG8hRf4kgaPO0yItdT4rQrlsh+ksNdaBKxTIzaHcrfjfijtuGwzMwsh45O5/
S7zu2ptj6nd/Nx78zgOxMTQZu1MLsZtK5bIhzTAQzewHfwICmkY4fbh/EHzVxIJt4AYpoaZZQ9VO
xpXjjI8h4Fn9FI9sXadoK8AiRxuULDF0mN2JUDCjbBVX2SJzbx1L298tUpJgjoDWhpYWch+gV3Gl
T8K6FAE60oxnohCY+4Ocf8/Lr0Q9BsMe2NXqHTsYTdbGhTMImh7qGzVEqn4z3vq1z8ZbiU/8zn3v
id+ktUzz8BME3dfGgYpm2LvDnDdKcvxcbAEC5wGP5TBIei1XYO4mzp2Pxu428gVwH8EAZFW+lFQw
8JlUV9Y6LmL74XXtRUCUxlPf/HJ86r9+BQC6GG984yHW5lVJ2YwzPX3ME1y8BHlXMj+2AE7rWOuL
FM8shr2uZOxsp7RFuME6gHOF6zfjbRojpdAhQDBlILYFMHUhymwncV8wEIKrHLIoR6kAyxVo9ZuZ
Nzk6CUPAOgFolMB02IWhs6sTkEb7JO7PnP3iUIyVtN8RmNThJt2iSGQRDILlIMr5XPeSRUUtv7AE
gF+Y5b4Daowt04jaBATXgjoMdbBg7zKupsw0hiUaupw6WBYuHbg0CJPGdwBFCxanMWarcBlxiokx
mKO4aG1dKx5kzCPYbEtB2I1BZkrAXEbxzVWE4CoxqlaC14CUGVlCRhQBttoacTczNhsYb0wzgpuR
BijgeZINNnTf4nrbgLGyDIDnKyVkyIZtgFTQsxxLfSMjtqFcxssAzcV3FMkFDPb1TZJ8EPH+d95I
KMTbAUxLcfbZJ2Fg1qKLNksTZFbOTXLg7CJj3BKltYAqmKg5fILLBO1v45osGF3MuHKWHB+NxnxQ
sG+gK5h8iU1uuQ8/E3SppxIGCh2Q+CHV3pxnolk57jKy0rprKYBYlkVfxDp0WqI0CMaXjWSVE88k
gFceziNfZ6ln5bxJA3DmuZfzMHguZXbDvjCsSYB6/a0dUXYVoMraEhxyi+D31OnTACyKy26rY+w3
CIiXJR2HDcNgRu7BIDBm6Clamsk5FAHsTSoyG1CDtAS5mtRN5Fo3tnDtwgAXMe4yTwJqe8Hq3bEC
vYBNLZhknUpEIMdWaS1Vrp5l3athWaqcBxuxodsJSo0zkzGrYc6Ww3IVMREk+/iIC+SpgiB3B2FL
kCqf6Pgy/sLvfRYeCarjjb9xPH14Qq/dhtNOvlec+vD7wvb+LWz7P/912/+dh+fkw3378G/hte8L
xy985nELx/Z7H26TvzavXFAighU4yUb4fR7Ryho4PiJ02Sd/4zjm9y3bpYJ3G39T2Nbtk6mdbC/k
AhMTLMpnTDbTlFl2ACP2491KEDQ4HMDkHCh2BvIQYXucYtxaBrcyJ1iU7AuJnAQUsi8VDqYNO8L/
jfBbgVI2wyoN2BGxKyjMZLECO2shOS+39/pSOpb5awr1hjOeU0laaSAQtGgEXQn1C3X6yis98Z6f
e3vc9bbR+N5XH4tTVCuf6APaDG/GpTXcQQgm2PTYjQX9llt201ttX5RD7Z7vuRjDMyMcB5BIAGZt
GS4JhK9WsHFlPo3TGh4ai56zgzAf84Cr29h+k0ri1XHfD90Vf/fFr8afwJqVVTzGYiG/jeDFzh21
ZO10YvVkog9LdxwlkqXmyyRg6ZkzuLS4mLe+9c74yL/9bRbbWPxfv/OJmDw9GjOXqT00TANP2JYd
BNRnqPG0lsLdhPLRrUZobTIHPD5nmgAcIt1YKwS6AnVkjXSw2kiYJQvYqk6C0ulAiJNPbqmEYpN9
vEJAcM0vDZ9LtjvfdwlwRqo7rYFlJXRDwh1EwwjcKRWJS1HOcc0+4hhol3OC9zAx9YCDNQROmnsY
N98aDTTj3TN2GQHI7FWg4FbaFGTDFm2QEdd8fXc0v+5qJgyACddOMKbWkloijqAMxZfCAiwhdz2L
sN1GDBoIlBR5AqMJsN5GxfxSAsHXmlRWzBlAWzYtiCHba3CC49GzrRmwA2AtQ+lYfHYFpaB723ur
29lCgcuAk1Ese9BvYs0Vo1SqsCwPdnQxMtQeArCvYhmmRy7AIhHT96d/GO/C3dX7S78czzz0dIxf
PBcVnPqtbR0IWc4xkWzUX6LcwAS1aw4VExnGOVvKZNPaBElcFt0AcDkxvMx7ugnU1EaK2J4NmJMt
WTbYozTCuQR3yjKK2DxKopzJBCPaDIaltaUJoQ2rBFtiU9ptuNSsmD81PxmtZMMqmJUBTTtoFXTg
YAwRhM/IJ33vsoCwxZlJGpE/TjxRb1xzywfivpPfiFs/9p/iYx//VJyips8cin9x8Hyksay7jzSR
jZSKSwC22eGxKEeR6GY49dxlWIuZaOhs4ZoYAFLJNxHwC6xLC0SsYnw1EA+0RcmRz3/5a/F3X/l+
orRuv/sWpsYNdDOgXRUM6XYSBqDemGNLcWrgMsVhRzEelmldtQ03H0wUa1A3kazKIsaYMSMGG9sP
bw7jxjZHFUl8lcwWeaRlDCoSbpJ6asZxVrXxnuloEU9dh8q8ZA4wD23dUw8bp8uxylgA5BaOdwL1
caER66VfoITaRZvr9PvL1cYNN3VGV/euOH/qfBx95EnY6ScTtmuQbNpp4t0WUayWjTBGSAZ0HXpg
jXNQ4iYZishRu0Rs4FpUlEGuJXNxHQBvRW5r49lXz+QfWZcNQHsjQLoS1qEGZnIWJvTCGco7EB9k
XI4MXB0yZ8pK9Sjr5NoEEsyJDPJVeThMPJpxrytUVDezu5r6YAKNNQBWFtC3DMgwcQidi7zmhAB3
Stl1FPIq5y5zZpkEhXF+6Qi0JDjJqoOZ62Aq/usP/mi88x234uIbjPELvfQ9BIRjeM8ANosI/N5A
rlfiBiwlyB56EW8Crke8Bbb0ScFipcjyVZeplMw/0fDeYj5riG8xnyzBkHyJAkoMb94lzcK5r0li
iigzAV98z/LWJbxImIWNmkth0YqZI0vIJJdfCneuc8Zmy8uM8Qrxc3afkMmS4QYb81uwz6IMKSKJ
5/X7i+Pw9RgJ7bD3VGnfOHuSDfDxwO6uYKynYOYyhA0IzMurcdkS6yWz6Bxt392BnVoedbTcSnlv
OM4G87eQgZlmbjm2pVbpR2ZlGDebK3u+G4x9EfKsiH0zJBiIzCTmbL43InKP9TCN2zPFfLFYmXUg
S4o4LwEk42bnlIxJKnNE1zLvMkmcGoYHky91lEsRVPBT7ClkV2K/mjeUf1zBSUFEQ/JwOx+KTuaO
60lwmfxl3vzgUfitt8vX/vXhtm5X+OvvxcKF7wvbCwrdv7/1mP4VeBQeheMXjuPnflZ472sfhf17
be7P/fvaz93W4/hwez/z7Mz+E/YYhJ4HV5Ze0EWDJcCWQiQRqotM9x5imu/x8fJeRsBjGMTukeQI
IMB5XXAhum3huDptyBYlIHKB9SaElSeZY6LiwcP64X/c2EoWp93IM8zapMAgQjhLMHsVqdelBPFt
wFOaPl2pkhTNIHS0KC3D4JVpGUnvpwFf9TUNxB0QOD8L9yHVjaUpsFsFoaUBUyVYNlsEAhiXhSkA
+gZgSkXw3SbHMebK2aJr0L/TBG8aG7Zrf1PcetMtUYvAfOL7T8ejDz5FkHdZXHOYWlBXH4w3HfkR
zoW6VTMPxUMPHiVYEYGxty0GLl5Msun2NLUQqEntJgRCjuy6Vc53nWzASVKEn3jsKd5vxCc++Wvo
8rL4vd/+JADp3ji0rzUOdP8G+2WYGD+IlORRhyCqqEHxMdHdlwUZG0lpVzA+++SFoP5oHLytPN73
gftxp1TGjTsOxrmnXo4vEKMycGE46qm71YqVXLaKJQ5tPYcCWSTw1hkg0GIEYXuoycM9tiAkvei5
dygjVIb96YS+REYk860dkIV4AWghuPnmTR1XxUT/ZFBSNfYS6MwdYw9WIYel4Dem7hNJRgzXHKtu
KW6u3hP1B66KwVOvxHMz5/hue+w/uJtWNroLYL/eeC+/JgNp6ArYCTWlr1PWCqYAREPhHNwoTO5N
3DmmsqcvU7ri1DmqGmP1cW01WKwNrTBjsKCbUvu4x4K07WX6Fa4AEKoBZqmW9linTYsNcBVaJTWN
3I8iiveNkz3YidCksOcEaeC4TVwVNh7WKjRb1bpjBnkqiLQOXTMKMNdbEYLTlHByIFBQgDSAzczi
CHU4h4npg3XA5RxlHbH2+DfiOx/5zbh46kKUUGeps6Q6duPW24NC5AYnQbHFBCRneb2FokohPJ0Q
m8ZRtHXF+fNn45VTp+Laqw5E57X7I0XdNWvsbDFhSpobYplsojGuKwdoqzt8KIbOnYsBLOVrbrgh
YT+GAVNbAIbmTnrBLUzFFAEh3dtbY2loHHcd2aDXXBNpQNtQ/2WK3JIaAMuxxnmOUnwoB0tUxvVv
MI/Lic2K6EJhXIpH3/sz8edfeSCRq3cdbIt3/8i1ZKLOxbePnUxKsBy+8QC96XYkUqShk3FAG25x
P1L1rDsF4gb31vVNSnmUNcYD3z0dv/+HfwUhshI/9mNvJXOvPl44cTJmkQMdsHqb3OuzfX0o22WM
kTyrY+HNNeNiYKuVeGbHlWF8ab1bW8qG7SrHFPfRTMANjLRF3CoWVKzIwYBR3sW2V8sEepfBCrm+
GFTkC8wAhk4KoK97a4n9QNrAXNbCam7h3aW4L8Hfnd2Ugujeybwgdml8IclgnmXczp2+kAC9GRjE
Je5LOzFvo4y5zYonmXOLAMAMAchZ7onun6SlDIHVBszXADSncQuOkK+fIyW/xHnPeVdTkythh1Cc
JgT4W3vqWavKQOX2rtawZ+oMcnGL63B+rsK4z00acG5tN2p6jU4jHyEecKt6XI3SMuaa8V8rxteA
OAZ6Rhg3imICgJcBHluMYzUB/4uAq4QFYr/Gvdo3VU2wjLG6xTUS7sc+NXRxE6MuUnw2Mz9NwPgi
wegRf/rbPxGHr2qOGvqJjp98iUonl4g3xbgGrQlyOmEox4am2FZWJgfApkQL+67kPlUQL7rFtaRg
m7ZY11jV6Aey35j/6zyVk4K0pPcsizOFnDd2CrKNeYYOADwNDtH/lZjaHECUK2AOowegnHS5ruOW
U/+B3AHIazA8xJBxHRuAn9VZGGpcpLMwsrXW+GPMZ+g9O4phI/i0qn4tsqXtrbcHBfZQhmhWQGoK
cCoFJe80D+hbJLO7GtZVZlQ2apq5YX9HvTuV6LMZ3Iw2xxYIixTsNTmPDlEdlmloIn82OCcbXxch
JwhGQz7KRK7CSs9F0zaSbnB1b8EsejUaBBqMxv+mGZtB3Mw1xFvaKYQiWowLhg2gbpH76/hU0Wjc
TPdNwHsdzLo23RBrPvUQYWnYbwArO8OjPBRqTVwcvuJL7LSPmvO7OeUmTECIZFSFdXYcYuqseCIK
TP69FtgIGnRcCJy8HYIzYtQSMHGYv4gEokrwNrz61/vo022FBD4FIf4Vmvhwn75PZAt/C7/xuIXf
FD5z28L2fuejsI2v3c6HvyUHj//bnEcCUdbJmCitUjJfeE24JtcikKLoJlswJ1CF7o0+V/w1wRrb
jutDiPAbHAdkz9UkpRRmSHE1DkbhJZPlcXU4Cr62iJNaYiAnqVm1xATAjY/1gLXBIrCXVxF3qIiY
qhwMgoXsKlAClXSK19Iu1foi6Nbmq+1Ynwbb2pXebB1OgZsDB4WwNJ3aiuqCRVtB5OOyfM0ZISgW
iRWoonyA/etWoHxrOIbBqaswXehuatJUJWe9wOSeg8XR9WPdki3iglZlsbDeUqT5jkxy9QjeRpTz
/v07qWuFu0uKHP50Cmt8ieDZFV1HLOwUlDTJLGCz9bhM3ModV99GZe+SOEu67fQozTeHlihXMECx
ySuMEgsYC8cY8zveXBUf+a33xdFHX45nn34lvvulL3DX2uJ9P//mJFB1767d8eB3H45H/gHGgklC
GBBF+bhX/N7Qg124HKqIz0pBtQ8NDyVWd3U9tXFoP9PaUR8/9S/eH1/93Dfj63/zWFSzqJpLiUHh
7pqlZ3+LedgtRpm57GjKMlIQk3vLbQMIsV55djcJcHGdIjnWaZ3SRywav07muXN9N/sjB47/c1+Z
B+RhMYcCMIXbiX1uB26VoZTWKfRXy1b1ZVxEx65AM8aleBEAtsQ6bI0m0pCHaDqdgRlqwCUVxKZQ
QCemT7wYpfu7o+ym6xnTMWqIcfEIPwFwcX1TzJ06E9/5xrdiP0HlV9375phHAQ8R/DwvuEI57NtN
k5bd3cQ1YEjAkuR24WJo6yQcChYAIUkDPALMuVICwldRuNOaqa4YvnftaMWrYJ3lKwha3R9LKBtn
fj1xSWZXbREXuIoQSmFRl+HuWV8k2Hm5CkWkUOMYAARXSBVxU2W4VUp2dvMZEuR734qPve+nyNoc
ivsZqRsZwQ7ipQLQw4Fji2zOC2Qbuga6iPEro2r4AvFXORiXKTKeXpkcjoO3XkNl+sNJIHsRwfGJ
z4fOAlHDfnBroR2ip/d8kka9+9prsfgJsu2nRheWfzXBwosovfouAB9GwOPffyJayVjdc8s1rAsk
AEoph0GwRL/BfuSmZRGaW7sI2IUNoW1RBXV4qljnm117uD5mw/FvxXve9X5KCkzFx3/hCIACeYA7
6cabKXHR3fGq4GOeASjSxJ2lKEuwOTwYj/3DszBXG/Gm198c6f274kuf+VL80Wcfihtv3ENWFgYX
MUwGbtvzbgO5MU1q+zgMiC1YxjiWcSkZWoFguCcAYXtTNWxOWfScu5IwRGZZ2XLKrDrjMsvYn61j
TlDQd5ZgdI29NoqC2ibH+CorkPedH4aVsh+gSTc2RYaF5He22iqHDTLYeoQg81KurwlmMgMIkOWs
oSffMjLh2HPPMU6wCjAeZu9MA5bmUbQtBKnrznr+qRfp90fGKTLNWk8Cn3WUoTFgSUgFgeuluDWL
UN6GQdhE12KOxn6Z6GKVdUsoZEiwWGbuzeI2VZNU4/q2Nc4kLJU6TBdPBgWcw0jJci1pi7by+8Vx
mGnu3TpATa+AstOaT+WAqDUY/wnko1JBAJMCQBaznfGdJqHpvDUT0BIHyk+bWesj2GSNGW+YXi8F
EBJHx3GKATf1AAgDvkfHFuLuG6ri3/2rt0f7gQbY2zMoiHky2sjg5H6lAIhkXuRv4jYAHoo+Q6ad
Bk6R4EAtzWe2SrLFGRiZsUGjoSu2WJvG7m1xzJSxQyuAVGgkwbaB3SW6iB1nGM0V7s8sgLUOdtdS
A1s20yZ5YYUit3aT2aLUSp+Zk7DD1cyH1AKrfY7giBkMdgCA86ESffhcz2A8fQESjFM7ciQXb7zv
FoRyFyCBtTIywFxisJB93rdNXJpbKKBiSkd4KTPIX3VWOa7jEuUP98I1vwSjZNmDIjCKscncpPx3
eFUER3p0DJzPAnDVVUvooBLchxYzTdq8cf1zgLUywikkUpS9JVxnIhcQZUnvQ7T3AsfZ2uBzwEgZ
DLtuY+fFNDrRhIly9l3BnMmxZhYx3NaYn+r41N9F+RbiheUO9c2OOitIXWwjQwkabhgkP9JP495E
DaRQAvi42RYxxHFkecSWeX3OJXN6TibFLcCW5wxP9GLcjpUC9UKbgPOJMiH0hj3mwRdiLdne37kv
xGuyD8GRYMR9+vBzRbmf+cyLdcaT1x7P9+7D3/ko/PU79+tvfF04R14mn2EzJ58KqoSIHkeV6b64
dbwSbFluIV/Dyu8dOD+fBFB1bmuNV8YHeLUeh1p34zdupH4OxS5HR5negrXC2blfJg77WQZgmK0y
myW2AapyFjPB2JRlfMNrMEbWiMnSL0u3BuubhZQCBBlMivJFyFZAi1ZDZaYRDE0tVSxwmBUEu/0I
zdBw4pQBEFzAaSaFtpiMiu4OM090n8i9FCGcpnCdzcNIrbCQjPmBq0YQM5kETyzEbhSV42LLG7Nq
NlYBZgowM6xITV6YR2CzfZHZJiwMF1MWoWZgo/7wUUo0sClBwLQPwT1nnIDXluXa+y+Oxlve8NY4
8fjF+OM//C6p+ehtJqNNoCvxJ9bWEbt0ZSa69xfFe95/YyxBYVvYcIrF9M6ffGfcVv0zAJxvxv/x
7z6eFBy8/Y4jWF5F8cSjr1CLJR8wagbPrp27iZuoihGYnHksQgPVh8jam+Xcm3fhmKvNxt133xyn
XzpPj92TNCaujapULmaJE+ssp/0PxU0mh2kuSvzHAlkqAqJ29P31B1rive9/ezRfuxcLwhnD7IAl
iF27eN8S0TcU8w+diE/+8V/Ec6fPBZ8mafqyX7fDXTkXz+NYxI5jTclymi4hA0ocAO90L1YxY9yi
CbhFhEZMMl0z7dQCQ4DU3HIzh2SmD00QUEsD4anR2LdvX2RhK0idZDDZuMokA+4ra3ketGlvxjOw
V8U0jr7ntjuiZC/bzrEtc45+ILGJEiqWmWRMttpbI0WG5DogcRY34AwAvgj3SbalMYpkA8lWUoFr
gijIjeVwhSnAN1Ge63zWQEB2jswwg+kXQMlzWIrOsywMQiWJCFtkfa1J9+uWhkU1Bjqt6Sd7yqhs
Tp3gGlkvjYDIM0fjuV/8rfjKA48mq7abLRqZafX8H5HJyLl+cRcxTk1YxGWsrRSZQqvEWAwuEWBK
naLVKtbEdtLk93ZRgiBiBPeR2Y7b2tqwmIl/IXA2xTVV7tlDvB8BthTNbQDAZSjjsUwcVCUsq9lt
J4llq25ojJ37uwjCHeTIMBKAwHXKEuhSmgdg18KGKYitSl5OtlMNxlKJVITzZGwwzj1NUclTz8Th
tuLYfni/Cx2hVBxXRnHdQmG0wfYYuF68DWNlHEP35GksbVpSYWlPsB7/4dHj1FMbjTWYylqCfmu4
12ncwrp8bFG0yb7WOdcpAsSb25ti/1V7WE/D8fwzz3GvZIcxGjCqqmBjzC7znhkTY7++KoOAuaVL
yIYcsqaW8ioVACvBjq2v/NzviwBjxkglwIprzcGmWealHKbD2Ksc51Rb25D0GLVnnTX31mEapkbZ
h+nqzJlV4iP1NRVz/50zk7j/ZlHgskqGMYxyD1Kc00rClOhHADihT6pgpzQgk2bxrBljltZQbpsY
J0WsjyzCBJHEWMF8wIwaBrEOsFiAtTco3qQfAds8a8MAcjzaMFq4iDmubiFlpIBqkeLIfJ2w+Fu4
+pSxAku7NRCOA+vI+nL9qOg5/2KUeobfWzeJlZHMS8HkmkYX90WXqYHSGthZBPzGrP39mFt4K6Ym
RwAza9Swqo1f/fC9xKfSBHvoAi5F1haJDM6zkpTeDJhMKXuMua3tuAdhUhK7hkQcfaEZ9l8K2DRw
f4NaV8blauKbxWdA+wZr0HEr5rUgCKXB/9CUgJLkyX2G7mZzjOfRK1HNuRXLNstEkzG+boAtu8MT
CpjHwGcOZAnMXyBLfJ2SHVZpLyeEwCDSXkeEAAAgAElEQVT4B5+fjVrEYSWuzCpkR+u+ziinpA3o
lEBzss2XRpLhM8Y3OQvGTk2pLJVBmyN2U/dcMWBWaWNZEkGYNI8xtOtjGAPeIOUW95Obw6WwB+bW
Cu7IUubcMsyaoRdl3DddtGaNKrPMcGbSJmWvzE51vPy5cxoePDHUZ3Ghp6wRxhxLw1ZmOU89K4vq
TJ4pjDj7zyp3ltFREoTL9vck5A7RDmrjrxzHEj8sh+VIgarrQejRRCAw36aI6GcKsY0gAUaaixe0
+Cw8FIfJ4PDX1z5vzwKlfug+eeHY+eUvx+jLp7A78w/GjSPmgZB/fe9vCsCIlw5xso2X5sP3hd/5
vvC6cB7up7CN3/vepw/Pzdf+9eF2eRI4H1sldyWQyLNWhV+5nVsWjuUkzf+Wqc1ChZVBcVhn50B7
J7RxdbzYcxaWgcJ1CYR030ZhyU1gueDi2+DurXETk8DQ5Kaxhf5fZK6F+oqgRHWB6bbL5JgIKJsc
rsAymKVSgJaZVlmswxQzzxYermDuaSIAigFVxhUktUkQJoKg5LoQCgYg2tDZVh/lCECtlMpi1Dfn
ssqinJwmGwMFuoUbwvFeIrtrlYltvygMGIAJkxWaX6GaxSyrBrgNDlEGFSuohOtYYdtipI0p9wor
Kx2Xcn6J8KYOz4rWmUIH4WVrmTp86aNk8l1AoY0McUAGtqlzO4CNZYMOGpqaoBVOxI9+4I7YcV1b
fPfbDxC/QbE+YrD+4jP/OQbvvxDX77su/s2/+en4vz/x2fjalx6Nt7zlh+I3f+tX4uHvPxvHAEpb
dGCfRSnOU7HbeiUK/GbcOlXEVo1SJqCIIMhlhGs/LUAWuXbkZpJIUFHDLIFdOXGhN0jOxNpHH0K3
trRF/NoH3xD33n8LMRET8ckvfycmXv5aUj/IwnrGGORQLDU5ylVUbov33fHG+MhzX46h//zZ+Nhv
/59kvG3RFKU0/gZYRdI7zkHcb8x6wQHRCKhdrDQGQnh/kTkkryrLxZ2JgRiNF+Zo4XMqv+46LxzD
ddgdDVzjRdItiaqJ2mkywk5RIgLKrg0qvea66yIFIxXLA1FJWmTlvbfG7tpn4+vf+psYPI9bFtce
PSEYe2YzALkI98cGVuPcPBQ+bt/th1AQAFPb2ixgzZbi7s0xR9PMpU2UZGazBkWGS45ZphvBh0yV
q9g5sIDLZ3Ydyxc2sxbGrJYMMQXSPGzDCgxJbTVCyHgEgLt0+zpjuESNGxVvmkSHFRi6MliMXPXF
oFprXPMvr450jvY3bNP7cn88PU66f1wOwqRhBev5R+kCxmF6epBipYCEAfoewpZ0wdDwQ4S5LC3H
Q+hO9lKSAGHb1NaMWwweHuC3iBuw3MI6uMcXOT9bWlivaRVf/abmPy5M5Xg55UjqytAYuCmjmHg4
2Bit+E3iMdI54lBYzCnWYQVFVsup0bW0Psl8G4jNK6Oxjbldivt+R1dZ7Om6EZoV2aKQVhYwd1ob
QH2UFdA1X3yqByt1mDGjkjvGSDFs0FJmOV548WIcfepsrCEb9mAArWNYoQdZp4Ae1rNKfJL4sTRK
uAZwZrbb7r17kCdZ4hjPJnJlmqDwFQyHPXu7GRPaKA1ifACcqgHEWdybhgGsozA3kB26cIthBixv
MEuxTzsxWKyxgSDkFkB40giXe5D0QmR7e67NEYdSs15L650OlBFrYwbwxHkYqlBUgRJbQkYQ8zJL
YPoqriZnjczZIsaTv08BTjZhC10NKnndTWZ56tITBEm9qaJysBmrsAuLAKdlwJXuR4uZptdR3gC6
hNDA3WSXiy1AgnFhxmxlSQIQPE2NTiRgX9AmGCth3Svlkx6LyGXZMBkr63kZcG5TZWW5vgrPYQ0W
zbmeYk4ZL6suMtxC95JZ39Z0wt7gc+6LAJLXAjldrQZ804yTbOtqxhZQyXhcfTAbv/pL747uu3bF
6isvJDGU7gf0n1xXivjJFOeOouB6YGGcN+htszid1yqSNCVnNrkOMxJBzJwmnwOmPQvZYXv+6Zux
6PQsBloFYyNQxnJA8HNyuNWS3/GLukV2b7wm90Stv8ygryBzlnAzI9ZjW3E18pv5TVyfGZIV5Vb+
X4pn+6apIh9x0/UV0dTeEtu6iafCRYv/jnMgcxmwPIfXpDrLemMskxpbvEpKODAb1mWw+GcCglHP
6xhhypZNQTeGiAaa41+UnkYheX08RUbecIBrCg9LMbLMuGWTa2wivYLyEt8wodmOcjYlMFopmXf+
AUgFZU4C63+V8bmBctv4TG+Eza4tjrrOnDIRwH6MVtNfYJ2YQLHIvd0EVDEs6HjckobieurgVyaL
cUVmTHEiTjSQfTW0epqT3GRiZSYsqqmzTEaKxcxfxAC/5HxefSpe/d4naj++S+zBvV/5ClqpOaYB
Vi/yWRvPXTyneMqaKesKD/fpvny42DwTJ6sP3/v04ec+Xvt9Mqn5zHN47W8Lr93W88rvTxjnoPo+
/6kASFbKzxwVbAGegiM/YdB5CpTcC9M12ebC0mUUYEl0t22PubXxOHP6YvQgDFnm/NarE7Dl/59Q
zwoEFrp0tlapFpIuQ1tJKCDNrslw00tFyEz4JvZr08kyXDBFxKKkuKmJXNHCYN+LVp/2frGQFTiJ
wY8QMi2+hAmiL12Xj5coKLKOh/7/VYTWCpPFQoD6vpO6VoCqjUra1yDYDSqfwZ1QVZG3+KSX50Hw
S9M4xBCwiZXIuXbv2Y77eh63IC2Gp8xamYXhoCUG5Q60oMcHyYCqps0O1sE6CyrNZ8sIkBXKMYyP
zcZV+7Kx7+p9sa3lxSRDXUGlFWfgLHOVcwyYqOfoJ9WDACbjBPejwJNLjM999kux66MdcW3tO+MP
PrYjPrPrv9H362K8dOxE7KTe1nNbL8XQZWpgce5ZAojnEOArPE21XQAYDFwepNYOxkMDroiZaYQv
So+1v1aC0ABvLJDuvePaWnz8UzEOuXP9m6rirW+7KbK08fmtL306HjxKJ/oW5vKB7pitIVOlhaKX
C0Xx5PMnCSY/Ex/6mQ/E80v9ceEvHowsQZ13/uht8ezRE/HoBXqFcfdamOgZmEKzBeUSdU37z4xA
m+AABzFE6D9GxNZ34lhc4TfNWH/1gO8qTvSl84PxxMLxuDN2MscADcCzi0O9UTxENhbvr/Rxb8/0
4q5siDEA6TRxJUdeD9hobY2rMzuib7Q3Zv96DEUKcwK7kAO8r+k6xR1TuRuXoJYx1pwukFqAfo54
g/pGLtiMO+La1g2ah/ks3oLBAljpOlGGM7sTxWJ9mE1Ym2Xu6Qz1h1LFBNFrHMAM1RB8G6Vkhy31
xtyVnsTNo2t7GeW+YtDrJrFuWpoUlJ0YpoHy0YdgwDuiGtbumj/6WST69riWsZz9zLfj8eMDpJvP
x9npYWJGXbkWdSWQmvVXq0sRkJYEhLMWLKpbhDxTGDcD5GuYGwbJythOD16JHljnrqL2qFrdDjiC
BVNxkfazhaHgSt5gvcF9UU4AeYiRAvKgGTjSk/NMIVhlNvRarNM0vBh3a0WGLFT+TY5fiNmxfoQd
QALlVorA1sVSXcE2syh7QAxaPUZx1Z442x9NtIPZ2dGK8TKeZMDt3omLEbfaOeLmnjw9HBf6xwgT
gGElq6oUcDzLvsYofrtBgH81LFYWhlcXv4HbOVizEVzhDz92lH3BHONWKiOBxD5wJcXExABUdePq
ijMIewMDydIJC6xpmyH7nGbfI1fs1JA3mCqpQVZDFpqP/gvE5PC6kppKdcgT4xx9LC/Vsk0N4Kop
rgwQSA/DNzSMm1i5RMyLWX9J8DGuqSVcS8YjmTXoDMrXGVJZcavQQ7ZnSWMsyiqlAUdbGDFWzl4G
9BucvKIMZPJZz8kfJUwGAiRhz3SRAjZt6L6OLDSrz5jUeeuD8Zt6DGJ7ExZx3Qls4l6vsk0CGAFq
CiJuM3+ZR/yXV/kYtn7EYcsQumoGdYIyvgRWw3UsqOJ2JHIwBRufUnkj/5KyIQAd3V8ez159tvKa
xli76VBD/MYv/HB0H2qMyePPcF+J61QW8tNyAni2ZKpwP4Hmk+vVJrKnIx8koNPaiAJEMVZGNx7A
aZN7zMmxTkFCWvDMAWMOEz8NAG+ZHnzlulKRIAmoojwNCoL9I2QBKxnXAL9ZpiWNeiSnr47rWSaD
dU31gy5pxNioLK5N2kQdvzCUYIP2ltJ447UN0XnfzezLOcHoTBGpyrNkSeZNvcen/DUuil1zfdxn
mjab+QLhnDCDWcCsSToZPmdZcX0en61hKGXZzLgvAkhuwu7pstW9nwAz5owAOTH8vY2CH8/Bbcx0
0C3EuJV4kwChG9yPTWREiozVtGOsMgVcKT8M3N8EoMl8WjYmaWLOvbPv7QKAnp0lc2gdokGDxC4j
5JtYx1l2w1RCs0Sw1FBAJfjv17lQK9gaZVdUw0mukWZokGOytUQ/VB9PtmDX2qqcz6tPP+P04t7O
Hcw+XrlQ+WQfWwm6/M5lNM6T+578jj/Jd7734b58MBT5gecv9yI5lp/5cFp5XN/7nQ9/5/kUzqXw
WeK+YEtuHx+JwUG2CGHdMGJil4cLxM995R60QwQ/2k8CrfyW+SOpRIRne9ubiQmoiRcv9hDbcYU9
UjMH0a5YFbhiP2DBcDwGRavSissWJMODReFYbyrHdjFzDIOBS3imETJJvQ1uaoqJpMXEjGHysWy5
yZsIJ6th66oxfimNv70E61pXvIouEUZYeLaU0CI2hkAKvFhFkVwxgX9Yy7NYtzmAjgM5Q+zABqBj
ifT0CizLFZqInnqhh+Ono2E7fbzqSHWvJ526lSq6WE02Mm4GIcyhCJcAVVucd3YTkMC8KcPl2NW1
E2D0fEwgNOapT3QKRT98aZRu5mNJf6dZfv/i8XNMZOM0oO8BML1YO2Sbx/bmsmjkmaaI5CQurLi0
QCxNPcGfVOQmdVxrXCv3q1R+Hzg8Hj90wxvjQz/+0Th+89Px+//hU/Hc46TJNwASYEqm+f0qxxqf
nqQyPLFTjHUpAG1qFrqf8drWQhoHi62BgNFNhN4EJ7KWRpkgUD7w4dfTuqMqHn4QVwqrxcKQZx6m
nhI+785bk3WMkTCRZD9FDgUFH77MolhHUQ4XASi4jw+efyGWcav9+L13x6+997b44l9+J77yrRP0
RcT9yvwRTJk2oWsZmxwui8EAsiO+YgiBNxLD8QSf3L6zJt7/id+IuOUw5uTeuPcX/31844//CkhF
HS1+pXUH0c0eMpAh1rpC4S4Q99eziGMRhhCTaOrRL8d9NYeifjXDvmFD+JdZqIxxAnDTl1HyuHqr
d+AOxaWSre9CWWMgINRyKQL8UVxbWGqbGRhI5kQGxaM7uwTNk/QmY39FAnkFI69LoN0N0i3Hmk2j
UBNGlEW5zBxbgyWSP58cPwPDcgUXC2wtCi+NQMshe9Lcny3YTe/P3r1tyVpYJBBWBVmBkl6bREBn
cWl96sPxZtic+LMvxLe/+WS88LTJAMol3PSMwODGRKz34Y5daordsHxFrZTjAFDHdgQiaeybF+mx
CPCoY86OsX8Fc9pYMixVA2g3uZZVAu2XELx8BKDUYgUEZKjzlBqNTZjC1cXzKLI6joprEqVfYTkD
FGsxgZRjZycSt2EFIKoFIV1azv5N6V+dDnbPuliMp57oYa3Rn3M7zcYZvkZanDQASkqwsGeZu/0A
k3pY0AXWdQ/s0nHiVxbQMjUA3Sy1naxtlCUOzuKUcwQPmyrT3pGLvfvbeVUS48NIdqyUpx97ITFM
rDRu+xiZXLOU+y+OADg4Z4LT65Fj1QSrb+CaqsWlbrHgVfr/WaTYWnsVtI/ys2paACWxJ8ihOQKX
bRlTA9irJHQBIcV9ogwtNZjmSAZ54JvfI/5xguKeNNZFjpXjOrQwp2yPrsgNBpbDI2c4Dho1kdBc
EzgBuWbcFzqKbcDDzGr+wa5YzHMdV4/9CRfIps0QglDC/DSOyRIzkg66j3RV247L+lbz6CCz89ZR
xHa+sGBoLss44fb12tc4oNlsvvY+mxG4BUopU6jq7kMppwBOKnT1iyy83jqNQKZ3knm4qiznHAWo
bsNhXgVz6BJVCv/TuLVkAxsyY1jlMFb/vag3AY/8Pus836qSqlQq3UdLraNbfXfbbafjtI/Ednwk
scm1k4HMhskQQoAwS5JnYRiGY5l5EthnltklMAfsE2DDkQ1LSBgCyWZzEAyOcZz47PbRt/ru1i21
7pKqSqr9fH4Vz8iurlKp6n/8fu/5fa/Fhc04sL85fvGnH4/bHjkYV55/GhRxPo7ecSAlcBes9iUK
kScUqZxN6SLstDZGGcurgLwtIN+bcJQQ7A1jk7Uxv7GOg5NLRqLOhflDGJWuIagwYYcogEI2oZNg
1mREGbZ3RmSLFloyMlhM+BhfoWHQwAttKP/KGuFJilty5KdOXp+L85M3g56q9JMjDfTOfbH7rW+C
x3DEGH2TrEzaMSxgjdlCqETaASgCA8rJ/TU3VOMJeW5RbMZzci86dk4eyWm8GNbEFrEUwIpAQZBV
6ZIv+K78llpZYACLVIEFsU0NACSLY91MSLWCEVt3740HIL/SvfFbyqfje8nw4mi2ikhV8ehqdS4f
4PSkvkgPwFI16MDwIUfgb2wiFmIFAkjXBbqPCOBY6H7Vv1gUeAnPlBojzEtWZNDduinPRyAkUxtN
GCvAXMa47QlRocTBWUwOjzXgJa34o1Hlw3CGz2705NXL2sTJcNKgMsmXe0/eO+IsfReSTT/unzTo
z+vH8j1/uNX0vUS0vPZzrxtUvvYaPO7rr33298ZnvEoDLj7Lvh6NWDcPDSD90sbnZQrRJE0QESp/
PKNXqGHS+PEIIg37ugYZWzbAglJVQWI3ZBIH8cp72nriVYS2q6MCVWRo8G+xCfBfstY9pMpJurek
U6IqqGSAUBQMedZ8weZ2wMZW+RSoLGyiWlAoMssGZ5taCXeBrzWTlAjxFVJOAUFeMGc9NgdnrhPP
y9koVAQCBrGHigMz7btiFaGVIXYsFskSVk5dhCGilXk6HIN2HL39dlAkOlNrcBP2MB/KWV/Ly1RL
Tc/Ea6dRMnTJbSZGLeomgZXwBHspu15dPBcjDCx+4IE3EV0+mBZuNa7H2WvjcYEcpFPnzqekScOG
73jPHXHz4jx0RUgKz2k3LQBWCbl2dpGrMkCTVQRoMwy3SAVNlbr8RcJeP/LP3h0v/MNrDLmdj9d6
TsfwziW6VD8WP/8/b8SPP/uv47nvzZD7wQNbRcXoWIg8DeT4h5wuk6gxrECC9h3YBWMCk3P/RRCZ
ZuBj80AOvaEtPv9f/4YGhV3x6A/dG/fef5Sw7npcvHwpLl27GP00Xfyrz7/EfKxFKnlaYpZ2Dqt4
4KPkSbS19cfF6WvJsBy5ayDmOrbiu1dficP37IlP/Nmvx9jv/V/xr37h60nIlTB9NOClTisSNYsw
RdJ7BgpvYl5Jfe96//0R7yT3KDvAb63k9k2CUJH/BW0ZVuziPZ2lRrjRnECpG5rivWH+theTw7zJ
p9kXJibGfnKVLMgwIMOVg5OBStIaYOEyobLuiWgeHCFXC2nZhGmGZ71MyKMVz6zbhSOMkSV05sxK
cEC8Sr1EpAm0nYXA6xgSqRQdC8LE8OSicnV1vr9Bw9dZep9du3GDHkU5KsLGcAgwPHAQOhG4WUJS
SfDR62tm6lwSviMI6dV1Onf30IgRfpm/Mk0vtZ5ovXSOa5xkavbxeNeH3xvvujof8a0X46V/eCWu
jl+JGUrf15F2L4Mmfx/EsDZBywFC2qMX8KgPDfJ6IEpDh0DnacbIjDH7TPUxD46SP5QqAhevdmll
AkGCKMV5WaE1QuoPB7+Q2EeS90RML17DEejhfYS6yBUIcsqrwWK4hYKsE+JsJwG8l3D++vICFYwM
/56YZEoAPA9PjetwYPQPY0gdAJ07vP8ASEk2rlPiPwGCNAsK/NqVqTjL58Yn5wEByK+y4Sd8JmKj
EukllKnBsLYKMkYILU9e5oEje3jNemanYsfIcHSTVK6PbVhujpxQm7h29ZKUzVyftTXCZiA8LYQl
re7MF3B4UILbJACXqQzbuWswRkdHaIUykEKMNcJEjqApIHd6QL5baSzcSfK+KKCycJOc3VaKdWY5
z0vPnqRXFbmhyBzl5jZ0ovJax7nZRPlb5ef75m2ZlF7D0DfxO8lAZKF9plZp57EESlWlO74VzEm+
qYx1VvlsFr4uiWhjYNnsWLTekFsN60PjzCaieeRrEYO1AIouqpqcTf7uGBTllkN7q6DumyD0DufV
cLJy2hYP7nnSI6D75oYluc66+242WYZoKxS3mX/UNiRDikOimw0DIv25X/WI3xW5UpY5bmWTHNDr
GFZvORTxKz///rjrkWOxefU0DV3bYoximzXWqJW9rlfNa2tFb4CaIAxEsmrQJOKbMyKzkPdO67AB
czLZDO+Zf+UHRKqQW1UuLGvxBXLOPA95zn4I1Lc2KgoNqYG6WK1oe4Yy/RCLPBLDoaQAqvjaFmEw
jVSQLJHmSiH+8aWXY9oULFjkzce6483/5FFayOyGSedj48WTVDezXljGttrRqXWkEh4XoQH0Dbmi
Va67ScAAflDrJ2QK3Zc8K8N7BXhNQwcdZl9HNpdrdM+4PZC3LfSgneWVmbYUsdu8lcr+h+3H+rvX
pNHAH2lUHGuYBKobCv9sons3WVNlFy5R2icnmqD0OC3GGr2rVNo1k6lwcCAlaLihR9WpbGhqQK0V
JKIqrQjPNOGDpgMqzgUGzfmoKCD4ndVIBC7UWGZhtj07gsmKBaE8cxfcWC11vW6+wREa160R1U5Z
aJlESRnaJo6QOMLdzff3RsK7yJd/98e/eL+NT7BZvNYQ87iv//h3f9wGLUcT5v2cP37OB1uRnj2O
n/Oq8F94yMLemVeph+H7eGzptWzivaQlSt9qKDiPRfyXv8hKHs/fvUrXal8XVSh4hebbdNFvZLO2
gszdjnkqO1SWeibpOrCm6xB6zc3AcNKyNoejCoNaTut62i09B8PZUkGY1MoD86c09+wt1Tg5iouX
bDnKDOLU4/Dval+IJIu5LNRt0rm800qZtD/es7OthL9zEGgzuRc5Qn8dEHsNgwAXAUOEcAJnM0KR
OlaPDlPZPwRKsxRnXrwY4+dvxDSJR3M8FkhInZ6o4B0X4sHH3xBvPn4XiIaYHQbL8E6IrBbfffol
jpaJgV1nOM/3MHAMSRRSX5L/8fEfjtzjO0FdnoslcnJmp8ocE0LHkLxxCU9uEWVPj57L1y6QMMi9
kKDukM2lWbxKEqxvrUzHg3ctx8MPPhzf+fb3GGZ6MprvzUX32Pm4940/G+dO//P42Z95f/zlF5/B
+8ewQr/3U3HksOkVhLcKYBbFtfdYL52g91GxdCJ1bje00VcjhIkR0Ec+SQdGxPlTN+MPPvOtOPkq
SelHhkHbXmHkznI88q4jjPvpTh2GizgjBSpmbK7aBwLRTyXZPFVAFy9djef+7iqFBOQe3D0Yv/OF
z8ePrk3Hez7xszENevGFX38mxkGDqbWCMnOYO8x8Y7cIikE/GMy89ypr+ta7GEkMvD7xa/8hzrxw
Ifa09sWXvvp8omQdlNMYTTo0fke/jtZ7vC6AS9FTCSPLNhFO4BvglSOc5VdUIK8I//J36l7gtRYe
IJEIvTU80bZr9O8hcbhGGMs+OFkqVOslwnwY3XX2pKIhRIjP/AP0CjJGBcmNihjw+SYR1PZBfsfL
nLoU4xiDGypkUAuTvY/cSairtz9aQDxqIItFjHzRC6Wmic1NtMPoajmIgDTMrNpqoeABBW54qGuC
XJFyvLIwS4uEuThIN/k+0Kx2ck2aPnBf3PUxFJWCYHA3zgko2ZNPkkM+Ea9euxJzOIajtw3HAZoV
rq2TlJzpj/bdhDXgXb1phdPs3E0UAi4nCr9C0q1OpWEFlioKCOQ6imp1hbVbuAb/XKXRPqgTa+dU
gyxhUvOD1kCGsG5wPOhSfW4SJJSwNEUds+RdLZGfskLIrqsnyzzA4Th65CBoHaOQqL67+I0TMX5l
EsMuGwfHRuLAnVQ/4rBdef5S3KRyrX/3AI4uoXzSBfIksOdwriwGUDCUOjroMt4TB/ftg8/JvySk
tpsCh5X1DFWxY7FMzuTk1A2+Q/ECX1kgcdwwie1OLMOfppu2IZFOqsZFhkW0RnbRBgAUq41ryMLj
2EOE7sFFaaLZxn7sHB1iLdZSNeICDqaDk6cwHn1viXD7LQpJNjuVSyg3vt9KGK8Eema4b4nE/DLG
I+IO4xr5zDVZlKCMTYqYz4kgaUyZaG+I3xYPaeYee2X+VZGGxeZipSpElJ7GrPmeFQwBHdGizI8Q
th1ICUOwC9ozud0xMzaNvX72JgYnISdQrXWcC9tUqDPsJdiMQq9gXIqaiGiobMRKdEpVshkNL0JJ
tmoRrzV/dQsjW3dawy6FolC4yuwcehVrgHXF4MN4yIIQSVDvPd4Un/jJx+PYj9wfzIKJeRrqDpFf
qL69efliHLx9AIwC3jIUiIe+TT6PK2SKThVDQaSaZeG8JPawhxnWi7byKfkcizEVEhXh0cSP7GeO
9SlTiVvHyDKXCoCYnEe0MEaJC5UFnctxwG0+u8FMvplZDDzWfhtLpbJEjhw0s7iCMw6SMM2avbZA
c+g7WuLh+98UA0f3kS/IHoxfigV6hq0SKSnCm0XDuRqvFFDAsChuNIXnRBZ30OqiDAJkHlxWCJBr
FilMqJDKE1QOiwXCYFKF+4sksPK9gMEGNSFq0M4oO2WHhXa2EjMm5f51sNawK6gin+SQieg9nj8Y
QavsSQ4nwpw4AYo04gY95ZxN+zpaXdpGvzsYnv3nKxqm0h8E6/nUlb5vFby0IRK7LeKHsUegQ4MK
hf3fyAPC4fuKekMlFftY8Fmzj+xymod4skDlJiW3IGira3gqbDW3jnhuGFaqc4vNW2CMbxFfNTK/
F4/BhF0MXvM38XyHo3MGj50OxQGlE8sAACAASURBVBUurIpARw5xnoZx5Jr60I83WMJy8jcH1f53
48nP+nj9x89zqel7vla2SjciVuJvjc9yfxxLM8u/ajL52ucGwtQwugQJ/b7PWrN+RnTLM2jYNJ79
FyQHj3ONhNNdNGHcnmeuHRjANsRr92t9GVgr5awJmngc6cYj1fE8zMewqkH0EX5HGPIJGM+rEMrv
Z5yGuRt6w9kWzoznVIdR3NwqVCPDZfIKH9ALPmPCq96jxpQN0doIi2mob+Kd1vRmvGJgTpM6Szxb
/VHWa+AbDmstgO50YOW3gjY4sPdzv/+FeOXkxZi6NpWEqWXOneTl9FJZNjSai5efv87oistx3133
0DCS9gpUiszScO/ZZ1+Or375lSBKStdvpoLswtjGYenu6YoDB8cwynbjkRbjgbdSNQdKVN8uMe7g
MCGVsdh6cD1OMYj5+s1JyrGpJkMYXGQ24OLqMmXfk7RpoEIRg+mpb/9x/NGffSAO3b6Pxn834uWX
z2P7F5kxbIimIz7zh9+l2vGn47f/4x/FLZDpa1evUvGkh6+DgLlBnkxehwGDVIOkCboe3kOWE+jI
dZCRCoLAPjojY73MRZuPv/7Ly/STucznoGHuZ3HmTOwZIRyLUJu4fj120JOnAI/cvDoJsgdds9wH
GXK8QHXizXFQOHpKdWLUfpYcxK9977n4zV/4JGGjcnz5D0/ETs7dizLbJGlTqoO1oR7KtJEIp2Cs
Dyu0dg7FL//p38ZzU/QPjctxGxTG0CHSuTWVNglEA7dDj/iWHMPu6/bXauczPVAk4SWwrGFe7+Yd
uvow5W4KBMumD7bQbCa3yzIVqsv49NkrV2jDshx3IjCL+wdpcgnLloYiR9UYkAYyAcELelghj6OY
8uOgWIx3TTbDyBJdFqFavnk1bs5O0tuMztoovCIJ2J1U8g3Qq6pIwr0m5CLtCzJVWp6g4FkGci4Q
n8p5ZEWZadH4KtFDF/2Bkd30XlrFaF1gtM1eOtEPUjSyJ+a38JzZr++evUrzwFtxaAh5wzJuTK9G
7twrqXSdJLzof89b41ETgVkv+YAW21GcYXG7RiAXpNaqShguX5whjEXH+E7ogxlxlqXryqkyN00C
5Bqt/trmutcrlPHrzKB4Hf/iYUUnGhKXqj3C2FdBsK9fvAmvUbVHyG+onz0ABeqmks6EcGXw5AxJ
/kjqnbvHYuD4rtg9uYihQbORgQG2vZdYS0t86R9ewqC8SUiGHea8eRTNgZ0jKBNm+2EwLhNecezK
Efhh7/695BTOprBZlnu+fu1G7N2zLykHlWPq2QO0sgxP7RrbjVxhv5AddtbuRtkdv++NaZ8WiX/b
l2mR70xgFGapss2DbuUxqs3TnJtexPl4CiOCnCbSClaQhWV6rJVB1DcxmL2e+x9+czLIHWq8MMfk
TBLIRa3WEwIiOgAPwYevT5DQUHTaRBuhzhbk1CLojjmYraCgm60gJiJYyCz1cA4DtZN5kfKL81fL
tAxZZx1rwJtVGtjKrC30B9vA0FFm1uhlVCY/z/YE84RQ129hyi2RCyq6D7xdJmlb6MkeWbajEBkT
zTe1wpE3kCLiAmDBV/6CfMgQdhPhMnncqrltkBIJQSPAn7oJWyjsOjTD4TBeQI04je1vBrm2z/75
JzkoNDZxPpbnpgmZtVOlP8OxKTbYtwdicz04NjaBV2ACuwhJmkHIfec4nx38XZP61jr8wzPtR5ot
rtCY4/qyOgTIUUehmUuWF50SQdNCZG00HqTrhoaC7rkfW+7oEK+z3pShQjuMTWLfrs4TOcCgop9r
bMA2v/arj9P/DvRomO7/GIxlclRvgfJ09dNOpq+fdiIADeio1Unk5Ox0FCkxHIXGDClkmPogPzbR
JsNWFIb7chisrq3PNQwu23rYh49tIc9LrUzkQeMU4xwjg1YM3B/XZnUmcANrxRpBU6KTKEboEEGs
AYaBbt8rntgP/yEvmLy7PCkuacfYHAGgCs9Wk5qXtkUuZjLs/L5GPnSujMxiZNlaw9YbmG9EhNh/
aEFnWMElPWQ+GYN12nshomiGxcmy+Mz439E+2omn30YPD5iLzeyE+Voh1CY3A4/RPiNNCNMpcmF2
UE1kM7SJ8gynzaOc8R7xKipYm+fLVARxul48n15i7SlmDRRZnllLYQv3U8MMcZxIEXuUIxio0yxx
eCxChguWeTQAJFc/L137QxAg/Z7Wi9f+3WP694TWoDjwLfgd+Jv3PKrbo/3rT6NnVePz4nX+hW1K
z57H79oMlOXi/Yb5peoTTwK8TuEWR57QDxZFgfDlfY+vwWqz0WRY8dorr+AJb5MbQL4cpZo8IJyb
EGMFAbEE3N2P4bGD/J8NvNsBeo3N0x+nl35CeRJSbcHQ1KIhhvpCAeiRakzlgd4zGF+FPIQKj+hp
wlmEEEnmxUubukEFByXp7ZRWm0sgHJ+HWCt4aDOEHbrYu0ESVvUIpykBHxkaif/hfe+OE8x3++iP
/Tr7BeIzQP4NCtVeWXXcXWREEmz9lO2/SPL40WOj8Z53vwNiQ5Fcuw49k6RLI87j9+yKn/jgZ5k1
WIvBMfYYvSaoQa4t10ELpzE6jiNc+jGgjhw4ynDZAZK1h5iJdjuhuNtZRRnPXZuI8Qtn4/Sp03F+
fDxOj5/jPFfi77+xHr/8Gw/H+37k8fj5j/1qPPudiHe8a2f87f/3Vb5DPs3GFRjwQXJKvhHvfOcH
mc/FwGh4emh4BKWzFTcmJ+PR9+2PB949Rq5FmVAV4ZMBqqso8b5w6VoSroZn7PG1gdC2MtTmisir
hApKQcgwRs4EIcQxUASKQtjPZsd5kJNiLl07oa0lEm8vEQLdYH36NUwx8DSmr5+ejT/65G/F7/7C
H8RvfuapeAA0YixLKIDcGemF1GDuXA7YiK8/82cxf+NMfPTD/z5aQE/Ae1gdRn4kLsE75FrsckMx
Me+S58TDbMIG16AsfvA3uUXq1phyzLT0jmnAsQxzS79yju+0xinOff9D74juQ7vi2688H296/P4Y
fOeDMT95jVx0WiyAqlRAaMsIqE28exNC22l22UYLiC2E6xII45Wr5EchM0aGd0PbfSCm5I5wzg3y
m+ao0tzOkbvTabkcNAXpyp05K/NAclEn0CVetrA7jkAziEeRZP5mzrMNLYs0bBaYBNBtBZC8izxY
YYw2htEG4cw82tcEaRtJboO01PF8zRVrwoHoAdFts9lqGw/4aZVy82tTs4Sy55MCKmE8FEHq7Pnk
EPIdyC+NSBXMOrRQhc9KIDkLa7OELic5DNg8gr6dPdQTttquBE/mIfo2nIhW3ktWOedS0ZrrIgRU
XWcoEr3A5jAEFtfz8MBoDB9/gC04wHXRCuLsBVDQnvi/P/+5+A+f/jzjQQ4lxPnM+MXYBaLUh0I7
efYirRMoDDm6Nw6R61IlFWOJ+x/dt5cGmDtiZrLRdX4GpbdMEnkb9J3Bs56jOnhy8hahJzF8EBCc
q75+Ki7JqSrBvwX4vYwhtwz0K+JrLigeG2ifPYboYM6t3MJovnjmGo4eCeZ04TdPtB25Y6i/Dbnj
/D/zrTTGDMtpPTvUO4Xt0BmtfGZn304Mrln0DLTL71saQCj0JiAVES57oIkiOJJmE6RD5jN1oh1a
yhZBtMnfW8MoMsylzmhBVlqEoZFW4bpMWTARXgW+wf0v0UdrhQpiZWUzKE0BI0KhbQGO6D6XwW3i
bPIwHGwbgDQPkGuwnYIJ8UljsIXNGIU98P20FY/AtwXpDehkg3VqIYznfMW5aYaJ490Nkks4NtJF
F36ajVJh9v5H74yPfOgh5l1iWNOHrZmSZKv8bLKa4CT1BY4G6jQZqhUEr1WQdWBw9ewG97ZNzlIJ
dFmDwTAmXj2KnmtEx25B703QWJbQ9jaOdY17r1DttsWzLX/s8dWCs7CJ4dwJ4u5dMeRW5QXCtEl+
KhV9rH0dJHacqQ6nruBQYgMODUU8eg/D1x97kJmj+0mcvs55WUAS40WdzfHaANZawdivYfR102cq
h05z/mDKvTIrPTksfBaDfhZ6yoGAdkJ/NiEG3uRCWGtor0z0xpw398NYqOBaTvTO1BjOlaNivYoD
lmdqQDPrJaCgMbWBYdbK9wrKERw5RiukyRZVDDGRwwx7bYNY6aYEcr5Arp25oDnWtGBUh9WogzQ7
P7IH5GqOEKd5ozso2DD8uryIs8h5OuHrHGGoFWTEKhWr5kY73WCJ39mPBhKjX6YAZos8bPIgiyTQ
DXX3IRyBDo1jaZWy2CpXITHhtl6qRHLEPCtY3rmyGBWBNW7S3bY0347vNYTvJLlDPhTniteSMfIm
KgYgHBcimBSv9y1mA2lwFbKJaJMqg/NBTO66eWF8OqkAacm/+eCS0jNP6XXj2TCf/iZEykM1go3p
n/jxd48DVaZn35HH/LtGkb95LFfo9fN4bQ1l5Lm9VtdLJaXhpSrz+thyfveMfr4WOwjhkA8cZwlh
rEJUOzroJYS3e+nqhaiTLJ2F6Uv0sdpkjPrsAvk1rN8cTdhW1lfxnkGmJEYY27ENhg5JuYAIMXas
HsQ7MYHPH8uFZUafq+TNLfJsmMb4+HxlDmIkMRlvsESTwTaUlCXMJRTWIqGIaR7H77s77r/nePzn
T38u/vQzX4/u/gKMgZHAPmKUgyywM1juepNW7PUjiAXDOru74ziNK/+CkTSf/6On4pF3Hojf+fRH
4sz4mfiffu5NiVdEvJYovd3mGJOc6xZw/Oi+QYzIvpTPZW7J5AwVhxOv4dk9AYr1RlChsXjoHT/E
nY3E/gOdPO5ihZdj/OLFeOX02Xjw0VNsQpVZhK9hTKYliG9/fZKhz3fHT/742+JT/+sf8+Y87Qbe
HqfOTsZ/+o//Kj75678fZ0C5RAmRg6Bp7FsdF4zjdNJzoZXEY/KvSealZxHCeRMjtEDoJcMeabrk
wYA1EPMqepL+10jWpxE8OQ2GeK28wRCr0VSQKjWRyToz4IStHbVi1a2SexFEKEcn+HYM56+feDIe
+LEH4uFXX6Xf1y3CXc2MvsM0qkLvGMH25Vp3exFWs1euxTSG1X7O31Wn0g4KswhF2tOQt2UD7guv
pD5D0v7gqfGOn/WTjSACQojXPlI+JZ81PCi+a0sWkV3pepDfaoQGV4D2+xD4JRJD5YTeHaBX5IGs
4b6WrVZl3cz52MFeQqAgHDeoDptDLmzF4M5hjBg+j4NmFY21287GbEaYm7+zQh6V1aP2BjKdoqZm
4wqEdze17BG+yEdoWp4Ehic/higYewDSgbJvokJpi0a5K/xuflQTrmIPjXe3e1AK25R541S00G6k
KlpACKSKYVQjJ2kNmq5gOM9fmgB5nkwK1I7aeaowc+yjZdabnKuvfQczzZzHCTqI0mknt6h/sAPk
13lzW7G3tA80D7mnsQQNsIQJwdJ+QnoTMsRjR+ja6qDCqCLzgFLSNAaQydgdOiIYCKv0oroFEraB
DMhcIiwEyrk8vYIBext0cJC//zFNcKkrZTTODMidEmbHAO1fjozFEBWDFWSzazRNl3DnTHahULro
HI07jINGF0NDfyinbdohGD5aBbG6hZGR5uOBkLXQV850hBVym1ZRiq2gCiUqhTUo7TW1Rmh1HQO6
TE7SEkhPmfklNlJExCSZYuWXzpaTJETG7Tdl9afFNf2DNGnEwLUBKC49MgsqRC4VNTjZ8yXmFWpU
WU1XBaFwb1sJz/udZa5xiRE8bfzuDx/hffYOBWYTSfOAe/voRcfvKmNDWTnCV5sILKdX2FTW0WHE
WLgWKmpRmFXuwykWKWQHbTUSL5DXrF+a7adiY4XVOokVPHFCd9Ae0KdynY+me/HzMyjudVCNJtYx
5WdAR4aPfK8s7AqdvPvBe6mknoiTpy/GCLr+3338HfH4D78XggJFu/IsTjKyAvIxomQSt9eW2gfw
Xsr5Irqh7DXpO5+8aOCHOoYcfwfPC1Qs5/ZcECn7kgPB0tBK1UGsYxZkKo/gUm47vLKOc7KBAeAJ
O2kVcv7yFGgi+Zs4u339u5JB6izF09cr8fK5BRriRtx930AcBhUt7R0j3N6bEOxteCfIP62hS1L0
BN7O8CgSUSma2Q5dooC4N0KXOLCigA4KazKWhkNk64oeq1YAY1KFp3lXieFlfYxVDHJba6QKe56r
RG7cGz+CqCEti39oQlyDMOxxqN3rQPEO9tx+kWmU3ByZ5NIuckLjuMDmmSuVim/gozIhVEcBGXYs
g9z6uQKGlA5BC/dS4f1WDFoLIFZxGHPwqK1OvBfb/KR5kRh15vQKpuUwvpxQkbs/2j5lEu1ObhlS
h2xMgqVUmAREx4PgD/BXhLEXAyeY+Kd1CismRW8Kbk5LmwuuCblx0GYhCl47w27PyFCq/HF8Ro4z
l1CyekFFmCU1qmPDm6WqDYRvEvWaJigxXlMzhNKw+5Y/etbWwSB0+Q025TW0wUM690eWeP3HLVR1
yB2qFI2qBvJlGLOBQGlAaUy9fgy3rfG7CsrveGzP6++Ns3gMrja9L1PKanr7olvU7aXvC02qoCDz
GKTB2hJe/ARQeYYwVCuhgFWUwArEbwPG0aO74tLkdRJMGXXQmol9+4YQht0sZxUPoTdGqWhqQYCY
lFmgl0ahSDUZHlA74Ypukh6XESp1BJm7oy4yCp2qZRRi/F4A3dpCqSmQigjJDnpQWTq7jpCsQ5BT
wM9ZiPKH3vN2RhH0xC//3G/GV770HB40M7U6OtEXIH8cx26+JtF30WS2Te+ce7MU5sWT0yTdT2Oc
TcWZ0+cJzzGmgrlqdSqFrPhS4JaJrV9j4rml653M6RreNRDveu+DcfvRQxhIj0GIbXHpwkKcI6fr
2X88Hc8+Mx4nTpyNbz7xFF4yFW5LJA3PkGCNErLj846enVSQjcajb3k0Tp0/nZTgvcfvY9SOjQVX
GKGxyUyyyzw+Hwf2aGBfpZKJUNqbfyY++IE3xstnn4lLlwhJQ0Q791At9AYEA8zYhfdfBCXUQVeg
2QPH+VN1aR96Tv258JY7CCE5UsOZYznglhLzr0pdVjRh1LIXUkWBvkeGaNuxvHRSrOQRat9WAJA/
ZqNDk3yvXJmIA2/aHXceORxPPfE8aMJG7BodiXkEWw6j7vzqDMZJa3zot/8tOTcn4i/+9iXQKvQt
3GFelbSHyIDepNEGXQJe83uDN3wtTfsJM0OkyQaNO2EBwcFDM6zB3X5fLod9eWZyXAwP03HfxqQY
Reb3FfGIZ6imzCPUFgj5O3qpE4W/CBIlCmA35/PjV0A0lgin7sbQ3ZtQVCQva0r+Ehdm+H+7xmw0
vHTzPqqgEcpaFYAVhNugO4bdHM/BhSCEQa45tzmGiDRkEZzL7zmUSQYDVkM0RzZtK/TcSli4Fcu5
SW+AvVuiFcgcyJKKZINOzxWcRM9v0msZvjC/NI813UNy/E5C3Tv7qPPtoS0F7xW4vjYckSIdppuQ
aRpepW4aPHQO4GlDUDiV9Xwvcm0XFwl6j4dvic8GHa/XGEGySo5gMrIIMZmTptzZ4L7WeHMVOlki
AsD2EaqwYINkfbp1b9OXql4gFSDfGevwsM5rZFbjS3/xl6zredaE5pcUZDzy0BtidBijBaH+5nve
BM1adYZzRvh6A5SuNY2gwUiHBovNOnCuP9fAuU31WEOTmpBeUXEhAD2O40A0bkS3NRqqOGVV0FaT
hG3+ukghi81ql8mjWsNBcLbcFgZESkNA2KhQnL0mLWnUVDlehj1qBX2yj5+5XVYL5jCudCCLKKMm
XpdRup0gvCpMw5KpEos128IAWqTCbF0jCqYs4eBwEPgSB5ZnjaEW9Ek3FZO2ldCISXQjfWFo1VCo
FZ41/O2ardLcQDmK4Ju3lccIFFRQriHKMBThIR6GeCE4aItnqwP52eLzykHXMP3Zj6S/I/+hU9Vi
VqWKrFBe1LmWFgyhEaooHzp+e1y+SC4VORJ37e+Kj/+Ld8TbHrsbOGo+Nq+PR56iAgudgNkxTESu
cOZsFaD1wFPiB/gvC/1zWvQt3Alao5zXAMvCkwlC1/oHIcJ65xl5zWtRrLnJKfLaMI6p6K7AA/Ic
9RsEoNjnZYAUkMJmPLguHO829NUMaObTZ2bi3FX0Lbf/0Q+/hbl/+2PogTdE/vYD5EQQUeAYNaoA
F2iTYvg8B++qSTPCzxKUa+M92fEcmtfIMS+pxqOM0bSFMakl4rioDPuQGhdbDopOTAsMt6TcYTje
tbd9Rx3aMSpi37EcRpg0ZCCvif5fYvPumUqvAPplA+ucCjBtDPIWg9eCCtEq389DlzmO2Ywto/GW
2mZAV+b3JfpCHxTgnQ6ci3lQScPUIq46zz6nSn72wrmDhqDVD6Lktj/xOkRByTYhL4Ab4XRcnsXf
FnNvRQ/EoWs/S0zduXT2uihiRbZwc0oKUaYCsd5xmLmN/jd5bxqhJvRrlYetNeEvFlhipWyY/IsS
RGO55DpeoCGSJPbx5puArzKtbADwoKLdB7fCtShK/dEgglm4Sg2r1x9sIaIMgufhD0vJd/1dv46S
VZ5VJB5RX15jq/Hs5zwLC8uzx4FM0xE0pjynn2s8s1b87qNxHsm78aMHw9ImhaWh5ncaOILnbxxj
G0G4BjOvQ4xZytpbCAFWUB4qxd6d7fREOoWHR5hnGCELAjK3Ohc9zV3MRlpBCVNxs4zRiTLZ5PsS
VK7IlS8JXS9gpZPZBmEnLwBBZElpyluw2lDG5IoNF9bwGB1To3cobGpCehnBmJoj4lF/gC7j9a1i
/OLP/Wp85xvkdMA7HQyn3TG0A6QXJqJCT+PR3ji9O0kG5Trmpubj1VcvoIjYHaz6c2evxhjz/j72
rw8QfhuPv/v6P6K8VuKuY7cTrqdhKIZ6D8nhFTz0HsIcb3/gobiCcn766ZPxnSdOxulXzsHwmKQI
0dF9GDD27iE08Eu/+Bnuidylwz3xFloQ3PvQnSRC7yFsCGpG5cvHP/wxKlVmMcZejDuYY/jRj3TH
Syeej//3b56I73/vXPzuH3w27r3nGH1sZ+PwoSLJvY/G33/zlbhw5Svxtrd/GCYBmZnlhhEOTRi/
myCEbaCIdojXSVghmVnkTgpBQrCpoHcYSRWeM0DMADAwOf8glIk8wKQIDT+OgGlDuKYwOgqnm2Gq
LezXFhVmKzI8RFzqa41XLr0Wf/KlL8UnP0ZLgQ8ejz/93RdigaaUN7ZJKoNfyjSdHaTZahR2RpOQ
NIduBWZvpXHfLIYYXAZtNmi4QetStQgtyoPP+vmGZ95AshrOQIMjhL51Ahq0jnDgtaFEeUFO9DmD
p8/0XrqO006DhqurHRRaYEi2rfWQcwfqCMUvgjrW8dBXtxh1xOftDdU9NBB7RvdxD+Rt0rF8i6oz
fOWGgmL9mvIoPtpBSKU2kXAMh1zmdau8tpAnGlBKI9s6WCaPDEZR8jn+F18rg0xkMUoyZf6As7KJ
+96MgNYFWwfxWy0TIqSScwPl5zy8VgxdE8FzFJ5YeZSUOrmfQ30gbioDQxI0u5QhC/BXc5bqVfLK
UkiI4dB6sSpAcy224cd1KqlsGlulwbIK1WNUSf5nk7lu7oZnYpwYjqwk1+/dwYjIUUL4oNA5DUxC
C1UMvtTXjXj5FsaV1dhLhNg8ZpnQ6dT0TXJdZqOPHLUB+OjI0ZH4yE/9U65tI/74c1+Jr/7Xb6Xv
rBHaQGOA8oBYcZ4hQpnNhfaYAOnaRiFvYNmaM7YK3a7C/+sgeSosw9eLhFJVKm3EzfvhLRFvc6im
yJOpIaszIOYiE83wp8UI2Wx3Cs05IsXxMRpky6BemRXvVeXH/emQoKCcPyhTYOPwg/PH3+2AvcXx
RA9s42GvJW47KTrzXMx/qvI9Cwnsrm6I0eTyqnl5pkPw3ZJ5WPDppiX5loVBB4aA5UWBCJFSdoxw
lEY9Gg6DpAl9lPoi8X7qZcR1O1PO2XOpei7tnBfK+xhWuuSpzFui42+CCxpVOqYad6I0dkw3WT/P
vXpdNl5GzMPz6Dy68j/3/DNx/uJc3H0kH7/xSx+MHW+/hzDGCYZ9n0XQ0m+NHlHMWELREzviHg2V
KUI4MPYVekoETsMBHnLObBYZZQt0DYuUowAyZJ82CJ3feeZ1HdrQQWxiHZsxbtYxCmxjk8tQuLKB
cw5q6GzEPEi5Ar86eTpeu3SLQcgUWnAI28M98PZ9seuhN1L5x4PwbyMBnVDfAvpLGkW3tWIEmpaC
QISHcWgwyLFjOA963zgl9EisHHlHHmhTCWONvVJ2ItSr6jOco5yelUasjM9xklAwj8wX8hz8JqLn
6DKNa/V6ymlSbkCXeK7sP04Tn0tqT4UB7bGooNW8RxhcWZjf4vxeF6E/DT6FkTvcjFxuwqiTvloI
W9uDjSXHKdYBQPpATE1EKjQWq9CrMyG7yUnmCLA6ehFHmlvhXtALhPdrXKx0kIwrxbNhBQJAnMzw
AWsB0XE7KSSYJZPOxmUiU5YtrmAR18g94TLjWnken812mbnoY2xIiTwFv7pNJYljLZZoLLlA/N81
CASzyX9z8yt0F1jH/LH0mhATDKRALqGkmygftXaJCCkEpqnXmPMn1qTnJ4l7fT64/0SEKgFfscQ8
I2x5Nk/L6/e9RqCjgVypOjSbDIr42caP33MzPWJiJ/5t/Ghq+fr13xtH886lAQQWx2Hp078e0WPr
X2u0+U0biraBcAwhBG7SJv8aQn8LhIpq/7hEZY6G1dvffyh+87d+Kb7yV9+KL/zplxFKbB75IDKE
OS0F1rSdvKjuIfo7UX6tF3yLaen2qilh/Rdoz8AGIUjZPYUg1+GsMvOossD0WuDmODjSJlV9cZu9
COquroF47P0Px3effCH+5Pe/FJfOg6IcQdXhgS0tkiBLFVsXM+GE8c1xUBhVEaZOWteFM4HzzmO7
mHXH4CSIr727hbyPsdh1cDS+/93vxV9/+XuEO1vijjceTuiV9/PIow/EfYfuJVg3F5/9wy/EN776
HHkuFTxtqnhITB0e3RkjZ4R1UgAAHPBJREFU/f3peKdOno/jVMk5E2p+fja++MUn48tffpJaiELc
cWxPGgb7vn+yDJLVF3uGRymHH0je3aOP3M+g3sOsz0x88QtfidNnXkvo0iL5OD2Mczk4ekccGLs7
Tpz68/jil7+AN07HJ5Tl5DVK1YGIe8l32zGyI+WeLBEWzELDGuYbJFglOBhm09NxpELe/A6Y2TBE
ESZvxfPMoCyLOBolnJMmhY5eEn+rkvRo/kYrQsLmdptU03SzZuMXrsRzp07EYx96JJ5gXM7Jm4yb
AJncat+i8SfeEUhnxJlYoSElNnBUSHLfsOQahbIFI6Pf+WkYSgoL6VCnw6C6D0196ViO1qDSiZLa
FTjI0fRZP6HvaYmHNJ7Ks/nUVUJ8vYT8Z6H0HTSO3MUar2TXYh20solymHk8UYVkO0hJAeHSAdo5
AEyYReBkyCUqg2KqxA1jmxhtWxBOA/14Pox/1tF0UpPBG5WvXj/XirJykkENIV4jEVenzTBgUm54
8BWUhuM7Nllfy8MtxXZ8hge3fDpvQ0+M8zHyh/qHdiaBn4FXtnE27Ku0yvcwGZIQXt+k8o74tk6z
JeEebx0BS7oFeTOafpW4ceMGhU0oJtoN9O/oS+Eom/CavN+hROf/DIqvDq/UyAFQWsmThiLtsWZb
FRsPbnOSbfbfcT+6swUSavKgNfkm+kQxNQAXKJ27skgFBnRTJDTfjlG7u68Ud++/P46Q21eE33VY
e8ZGQRpK8eTXniU0xlRTFOWAye946NehKR2jobExCKGYim5Wuf7F9UVQctIAMLgW1xY4LykC8J6S
1QkO9oGy910OtHUT9FQUwNE5VdFvDJQq67ZOSLBsjglIkLlN7aBrol4aAuZepU7zbEWjmSgOKLpA
xzDj/iP30vYjjyq8r7Ru4VyLNBR2hEgTyszKr1UaGHtuq0OTwlRxIXsq5jyy7iayt4J6WIAzw8xE
2y947VY8ijxxK6A7Kmz0PQ6dhpsNJs0fFrHSyc9gHIuAJbQJmebcVHWX7GRo0usUPTG8ZEuFbWNw
XDcv2Sd0C7ycnvmcVZDt0Je2QB0j0xCwvaTmZ6sxfmUxPvLDB+Kn/sXjFL0wKubF74ICYiwPMiaM
ZrEI1oR02AyVi2GNJET+Z4/rGEjqlyx8YiPLtIBYL9uEdrMaLIZaRa405IVJRX7Z/23WQucbOzON
SuvECFpj/elbIFlB4w3kNgONrFKw9NzpW1Rtkzt6W2c89IYj0TmGw0FzZCerxAsnQFNxRjQs3UCi
J3n4eEjPUmdyforzatTxv5+BD0mbBE3WecJEYn+TAcTaNYtOmx4hesXeVDFmcoTDXVH3wvdMGrcF
VKpuh6asevXgmD/J6dJxcI/lNZFr/kn0q4OcDDKNJ9cAvqqyLk3kpSUEi9OYxG9424kI0gCHR34h
C3EGbDRtXrHvO5PSgowlrkV6EayoY8+YFC9N6DhkMQDNySsRibMNyrK5ghSWbHLzRUCQ3Juj/VOS
Uw83Z3djTSt8ylQGO0CZuXkPNmhrpieK5ObgT6sc7Ai8SXmv0LeGjB5wiaZ5WZhVaLeMBUu6aQzT
qqBM/k8d5iwgVBSGi3hPHqsPYbJsHBZllAN/tNQ2q7JgKfXI7XGuwWNAQx9WFacP5MPPaDmqIBDR
HE3/FuLhOnzWsPGaNKZ8T2RJI0tmYEWkg/Rj/WHakHQeDSs3ih3mp3GVjfMo8P2m1+EPy8oRDQlK
Fopfw5UahoZaGt+pKFBpilfFe8la1cdcsxVi0BN4hK4xQF38yv/xw/G/ffqX4mDXO0ncvRwvvvRK
gq93kI9zgHJxZDClxq0kf+8kcfxI3HX3nbHn0O7oQ6A1gbCUIPRWemA1hloSPoTgDQXYV8VuzA4r
3cQYqAiJw3zNGE5dwOg9hAD37R+NE98/E7/3259nNt9sHDg8SpLsKHsIMcHoE4TyIMckJFs4rrlc
5mOsYNgp2HoQDEfvPYK3S5iXHK4N0IOJmxN8pSFMXzlhwuyV2H+YyihyXxYRjKO7dzKq5Ub8u3/z
O/HX/8+ptFKH3zASx950mBJy0rQh8iXQhgunrzID7xoKnSoxWih0gfx0dWGsoDjN+Th/Zg4D7gaD
iP8uXnjpJMTNzoEIjl9gfiWG4W6qLPcf2p8qFO3JdeP6NRJfQVag29fOniSJ8izjivYzt5DQ1fAQ
Ar6FGWYL5BEhqBDeG0C95ss4XLgIXK4yc7hojjUAfyWBGoqjl5NjRbbcZzwhO0yrIBJlIFDaSZaW
UTVrsnhxhrkUPLiSII+UOOPx99DtvYsmrldo5Lj78L6k7J58+jLIXDuVZd1x4gId1Kmo/amPPkxx
yVT8+V+8EOduVWOCfknmueQpM1fsaBCn5oTQn3whlUqz0rAP3ZQGn0rf8k+6KugQr53XSXDxjIpN
31fcaWw59qEOcl0B7u/AsOjeN4bAImGakJL82Ebo1/3XeqmCPliJZL+1ZoTwNiiWMLocphdowmkL
z+gg7hNlgUAyHmMIHLOVQ3B2cgj9PUNeQyo551yum2Xk27RKMEm3Tu5MleaoNZ0PYXniuyJu5nIV
oMNWlLJDgluoLuugSKQJxMqmt/YJMiSwjUHUmITATm63MruMkBzGsciFiepbfKaF67cnUhsFCHXQ
qLMXL8bFq1eT7OvA8O0ljKXiKOK9d4D2OMvOQeupJBsaAVJLYQjvu51QgUiO3rHbn/YGejJnS2eo
HRrLwLPNIAgFnLCq/ErCuCNyyow7WrhxKQ7sZmQ3lVWzc5NU5K3Q84nqz/HrcRL+LQM1dFIsJAK3
c2df6rV2lcq+S1enWDNynnbugL6u03NriZ5ZK4Rzb1G8ARpJZa89otpBFsy5KpLIq0N2izCIzVpF
we2NNEnVoYnp5m4adrMtQhZZbaikCaVjBCuPwddOc18HPTu4OQsK4N/UlhXkjoalOVXoNhYAmY4A
N+yuTOU0aewOh4WnzLGx9x5IMkaHo75E1CoYKk5ukJ50FFVwtorY5tiL5GpCJimMuY2e8T8bL7vQ
nmOTFAhtD/Pi7EVmr79tjTFQhnVotMi91wijKd/UECprr1HXPOXtuGf87sMwmYlOiYu4p0YbC+Qq
8rGEAaLtUUPBZrneAk7R8I58/C+feHd8+CfeG+2HBuPW6Zfj8tTNVAHazEizJXRpMwOsK9y8Crtq
Ggdr7NnrKHU7ydvaAdZIjlQz95OjyIOToAgBOHBgUl4V1ekaWXX0qUnYDmKus4ZbHH+FnDaboZqu
ZKuQeSIRkwyivzExFZdvzMQ15GX/aH+86933xL4fe1+03HOUY4KG35iMW9cYC4ZxuQr9enM2FncU
j1WEC/If4eE6skg0yjYEWm4CMQVQMce4ZaADmI9H2mkAJRKKGEOlGyeCuE04Mu+iiaBiMBklqEIn
FrAknkWO2vvMzvt19lujSp5Rlql33RMTmpKx7A2i9zbxNpUZNrk2B28TY3cL2mEhAfXMG8S2QG6Y
U7kBwlcFLNK5sreaUR6rgw2Jb2C3rJAn3AY9G5pMfcLYGel+k2sUwaqjJ9KMSmjCdiYOedZAL+EI
5u6Njk9Bygm16uEy8Q/4Oh4FBNdPYzqr2pz8XYHwDA05Z0rLvcBi95JF31Ym1IVRxW7gc6HUGexr
3onmkMvZDRy/TrWUOFQJ9KMJa2/JBhl8vguv4xZhEglJhdTonkoSIN8V2teUavSt9lUDa4KH0o9G
jXyqD85WNN7kFdvI+w3i14Bjq9PfYCv+qiGk8tH8aigdFYiegdfQUEt+3OtR+ej1ewy/9/pxPIL/
Nc7TwNcgWj6hMmscjzWCCMv0I2khX2bZygk642awZpdA7FbZcMcbfPQT74uPf+Jfxq2N+Xji+39F
bHwa4VGOy+evsoabsWf/cMo3SH1F6AdjgugyTFNG+K5AGOw3+0GXcYjfLDUVSidVPiahFhF+RUIg
ZYhDr7IGodj4rA9lYSuFGXr+nDo5Hv/nv/8SqFEHzE65PmXUPYxBaW/pjAXCwaMYWkKljr7R8k/5
GBBuHgFgBZR9SXYQGsq2u+4YzxgJ2M+xkva0Gm9+dH+cO3UjNd3cNUYTABJrz796Kb7+1afj6qWZ
eMtDB3CMWmLfrm6qFGkZAfGXEMhLeM5XLl5PK6y34CyzLQhXQeZU8g6UwSBx/317SWRFMl9GiXzn
iVfjW998kvDkeZwWYuQova3NhYTq3Xf3odRO4fL1KzDLMkbqHrzxznj6mafJxe6Og7sfiP522mgg
jHaRlN0zsJNwDN2gEB5FkAEZeou/4RkkZKwF46i7UCd0SS4Vid1isCopky4NZ1VRBobDOvhbRlQR
oqw2b8bSFo13oYkc4YJlELJr01wPlVSjdMS/MUfoBoYcO3CA9hYnUl5IL4hnoWOZPLVc3HY/MwQP
98bEtdPRx+y6NkKRGyiJOs6M+Yz2VVIg6k1JqexY+pGCG/Sr09IwrKTTBvX6nq4Lhk76VON9qDd9
whxH87l6qPyqY0QuQ8Ot9FaqE3orsgdt5FrlMO7LCPBFyto1lKzyW0MRr6y5BzqsKEYcCnOFUjic
UHGqMEQxiEhuiUKBzFTwuOt1PH4Tz3nUMNS3USLJ0CIxvQLqu0nl8toS7QUWaKTJ+jUj4M1zM+SY
Yz1U0iKKFfYrpXuQXyjwv7pIF28UrENlV/HUKygaDUDzkrLk+5lP2iy0j/HDcrLnCHzQ5VwbUoJ7
TRWMrIiNH/GTQQxQani0yjs7BS6B3m9s0gkfo6/sPcDvZYzADfIs/WkhvJwDQsg6vQCjCowTeQba
uWmhBMqDXERUIwfmM/BPDR6vYDz2wU8LV8bj4qmX455Du+Lk8y+CbD6TBLojgk6+Nh6vnbxOS4YC
TXv7YtcIQ3ExpEz+tkqtQ0OHfVrm3i9dv0FLECucSDRHwWhUOKnAJHbD/I7KMpyn3HEoM7dKtIiq
VxSk+UkahypOE8JTB3P2T0PHxHBpSVS7AHJuErIwkQnCKqOGA8CiYtBqtKRKQcgshdy4X6VsDYSs
BQfe6kQFq0nbLTijOlpWq3m+ZNTxN3OvWrgvgCxkG7lj5BBp7JhHqnLUCFHRJuGI4tN+b+K8KbSP
Ak+jj+QDmKJmfhky0WkS5pxZwGIieRpTw2dEfdI4FU4m0pzG1aRr5x4xGAwPWpGYAb2xaKWC3qsZ
3oSud/YVGKSwN/7ZD90db/nQYxG0cFk8d46IDYPo9w5HjibJeEaEkzCo0ItV7sHzAW5zO/A1iIgN
XLehmRwhsy2rWgz7cW9ZUStorUIIr07eVo77Quik81bLVJ9yDc5kdPTUFtdSYf0Mv7LMOI8VjGcc
FopI8oQzO3sG45H3Pxpj9x2LpjsPYrBxX+NXY/56o5ClAA+1cZ0pf5lF0zg2CSELcmjH/i474pcJ
oSP4s8iCrI6E3hP6bxMEtwItbIE0ZbfZM5mL3pe8gIdAoldYR9DDHDSWZFeCBOExHA2TwjPIXtAD
DGL1OQ9oSG1fhU6Tsa7W8XqwSTgSsoc9YinWMKTWcD4y6C3Ru014njPC76w3+8ZRmaggqYEcQ/tF
EWc+p7NmiwuOysH4OxvikOsieba2OZEOrf7lIPARhjl8IormFAIn2SSDD+8pDz3lydVMCe36q5Zi
d2MBGkZQqBZQ0j0osFtskmWl6xC5cWu9hS4E2SCVAEUs7q6mjqT4NvmcSI7sYh6SRwGLihmExCRB
BT3T4oZeSCamSJWlvoIcADYYQWN4TSZTLWg8KdobnjU3we8aLnaQUAlw2/wuO7s4GldCj4blGgaW
RKAS8VnFYmZXA7Xy2e82kts9hoKX5eETHovV5F8/Yw6KvzX+TUvNa/0hCUsTzDOn7f7B8TyCJNf4
vojZBoJoG0t6GY+4mRwVXPc4NzNNnlEthvY1x0f/zfvjYz/+X+Krz34uTpx8NVW+HLnzQKoGOn/h
Ikh+BoQJ4ifHYpM4uqNbZoDzrc5qtvUCCnoA5GiaXlAmbor6tZEA3U6X6R6+ZwO+HSRdT16fIOfB
vI5qmlQ/PDKIgGqKl0kY//M/eAZEDM9cScXV91G5OE2SomXDwwjqkdEB9giUjeq3NWMkEKA9ZTpJ
pIcc6BNzKy5dvoyhBeGiCKp8RhRjkZyuRWD9t73t/vjMv/2duLB0IU68QNdhwik5Ehz7h/sJH+6m
dUE+Boc7Y2RPX2pUuoA3PdhFWAMYf+7afHQR+B/u6KXVB2E6nnspfW+TcEFRS2jSAsZkG3MQe8nJ
GKUkfYRQnhVQTzwxHt/81vOg2S+zTsWYJ4yxRo7Jsbtui7sfPEbl4MX42tf+HiUI1shw134aL3aD
DnahlI4ffwNJ8HtS2wVh4g3GQa0t4OVgnFo5uI3L3YJSKKEM7HTdhmHk3svAer4Kb+PwhrAs9fe5
zuftB2XjRcfH+PkFvMdZ2hpfegnSoOdUF6HQJXq9DRKCsR/QayfmQQIy8dM/+wFy1nJUEi/GPXiU
P/pPPxA/+pO/Fo/ddxt7eIpigrXEkwoKnCkdwKSIRKSsJGzQs2iqXNWgck0E+eZ1mpWWdVD8V7dD
g0ve0AXqa+6Ju8m5GBoYbChKBZ6eKMbuDONMlufnQDPJx8Ag2D04HCX6MjXB8/OzM6nZZkkjF/qp
ESap0ZbF+ZCVDTqlg3zVeZ24G5li01YsJZQhghCh2IQUz2N4FV1rha4hRhCXGgaWRnAzhrhVVeY2
tLjWCHubrqQBvnql5kRhfLXSmLPUTjURZ1IuEPxLhk4d7zdLRZwTBzZA09kSjCwVEmuFkrbn1iao
fFUlhEDtGtsTu8gjq6C47Jwu6qOBm8X4WvP+lBAoWo2jlJCNU1IwARtDbp1j2PzQcyXl7WdQzPaz
Ayxiw0y2ZuYeJfwaNVY/bkKzA6DDVRq2Xp+gISdJ5P/wvROcvxp7xnaBCIOy0tBRg68d5XyQ/mzD
Y3SbZ6JBEdosgppmceY2ceRsMXFzaiFV69r01QTiOvLJ9i564Vs4dOZiWcJu9/MWkIIShTdFK8B+
YOBwayjvH0hB9kZqsmdQGhKNHFcqamBsgAZpyNoCAb0KWkkBDnxrCNcqTZPcU4d17t+qY9GEDSqu
eqk4bsa4sru/sw87KJyRHje5X8gC8Ul1OUqum7L5Dhx2jZ51HKAKfFdAadu/yjwtKz79mwahMs8f
pzHYj0gniS3AkOTIyjw3S0OG+62wHin1h7Mmyc+1exznv24nx+UHegEe16hSlcpPJkR3gxpW2a8N
eHRtaRoxWY7b9/XGT3zoHXGExPWZp59KSG2JghkT920hskVOXU7Ij6RVc3LrGBOex/3nBFwfWg0+
y3svFMHUyUDPYECZsJ4TzSVdpIYRb6Wa1w1hkB/J2qJAK/CPLWRqRIRqVDAO7BiDVwjdwvfLhrsx
VroH+uO2o0dj8K5DlAgOYUSQ6oOjl11ZiAxOU+sIMxwwzC12yrB+hvZs/lugLLsE8GIPzGbb/6B3
0lqaqOsAeGTmNsbRKjbDKryyStJ8jr3L1XFS+bvOhPKGzcFJoCIe+iwCQMiCFdbVJAF7jCXDCrq2
jxUMynHR5+4fQq4m8sxGikCLBJuRnWERbC2BgIDfcGJxviwEaIandRqcZZrhAQzFsXDEoDWLxJxI
IL1vJxmNMQtdZAlD5nG88hiJaSg2x78FWmwEqIgDoUG+RL89I0OOhboF8FHieC38zbxzx/vo3OTe
GM2fkky4HdgDgcLtwRKMamDGFIRwCwHlZHEnUWe4aXvMVIlnrWD9lhEwm1zoOmMwLO/voAS6iCVr
Q7g2YMEB5mMtU/pMEIolY+FZBlPLOvmNbUKlLNKNaIDXptK6ROJmKgVgSD7ts8J+g7+bcK/HR8ol
VyqsaOG5D26W37DNXWL+3giB+F3IjUfD6DFcZw8qS87NtYBEkyFn+BE+4rueS5OswTgaUQ2F0zCq
FCb+3WP6eQ0sgxHStaYkYCDXbJq/hqF2CJ4aAn+bRxYP+OLyVNwAwb37cXrWfPu34uGj98Vvf+2T
rC0bCKGaI1Wix1IHhtEMA2gnp66SVMg6jjKod7gUt909Gsce3Bt76NxrXtsWzLWyTr4bIatb5CNd
Hr8IMdOoUs+BHJlFFNH09E1aHfQgdMqE5drizjsOxUn6V/3iT/9VvPgNKqjQiakJZLu5JCRvw1gL
7KnIwwId0OcWL8XlKzT8g1BLPQU66ZoHVuO45I2hnI4cPYxyW8SzvhSbVBENYyCsz6lIt+Kxtz0c
j77tEXo1kdC+oxxf+/JTodH47h95NHYyTuapZ56mrQdwbTeGFJ3KazDZEN8/NrY/nvybZ2Ll+mqM
odhbsa7bCT934MG1sUaGvszDUTDqLVvibqn7/MxKXGf0ycoqoTqUAjI7zlwoxz8+cyG+9vVTcebK
tehFiNhlfIX7Waks03GdQeIvvBQvPf8CCvMShhgKl13PkhC3b/Bg3HXoGD2p+mlHMpByW1aptlkn
iTyDweC+XmHsTm8/8xYxCFUQVRCSOh5oJ402+wjRbCEYiyQXZ1EiGyTdNmMsNuGM2Outgoe4a3SU
cvt5nFqQKJSJPHRw1yj7OU8fL5qYso+rIAXPfZ++XuMT8TMf/hCd6rNx/LaH43//9NfwqLboC0br
ARDgPIy9yj6bMNoF4myH7TJufB1DuhklnQVW3yamkYww6FYHgB7OcFAH3NWW+F7/jqAav4tht8Aj
UDd0PA30P0X1n6NuttmLJmB1Obqb/elFLnQixHLc+yLoyNrlKwhD6M2cA3KyNLzWSIivbLDH5Pts
bczxuMV9ML+RRxkDZsNuz6BfnSiTHsJ4xVaS/8mBaZ5jvW8uRIVk6+WpuZi5PgvEv05IjvAkI1O2
MI5XocUKU7XLJlXjZCDXMRoQ/igAldfCNmEwclM2EXrEsjE4eBhKRW4B/qJbQV3weDUrzblJFipt
MppIem+hcSKeEfSPkYSH7TDYbmTaKIqng5YME/OTKU2ibwdIJ0bBNqjUtsNl8cpTjqPKmUcFw8Wx
OOsowzUQrRqDzlkkJCCyB9Qrh0LuEUnD++/AYOkmXcIq21z/DpBgnF4ajVpc9DfffBbkszluP3CY
6lnmtGGgH7tjlB5coNf5DRqH9iN72EXyHNe5r7//7stx6sJNUCoMHhR6BlQ4g3G1jpG/wVo5w7Eo
agKkoUmRqqgwzKzuE8lZJYS4QsjIUK+otUn3Gl02rTTf0hD/MOhxBTqzl54oxSp5bhugXyadd3Wj
uDCuNqhoLmHI2QOsBN8oMR1sa8gmg1GUoQt4nTyVHAnnVpBmiIRUmFdYI0m5vl6PWzQlXiHvcXZq
KeZv0pphks7foNmAncg2ZD/GqzrAHJ0Ulmcf8AMTqq1CnqcoAC2Y5IX9F10HthKeAC3isciBbBC6
gQHGdoGKUBAEWlPAQbWx8gb7p0FlIn5qvpzCVNADCeLNGDVjPdAT8wGnyIG1OO5f/vO741f+08cZ
6k4xwYsvUBhE3qpGBfyTwYjKwrM52h9oeGcdO8TrgvKMa20mT8nE9Qz3nuW80koLIfQ8Y5nyg3S1
I6/OVgY6N1nyHVvQH1pkW5fQGcjeJgovOtsGkZFMYtgiG5qZlxVeL9YASqhGzXT2x967jsbAW99C
w6oBzgWcRdh7gzD0IvK4Rmi7BSeb0lkKqjYoaFiNjt1jsUjhSMfB/ZHbORQZnM2MOZWdQ/AFlCMi
0kJlU9LxFDthCFZA8QegpQ7aZLS0DSNf0FMUg+BxkFiOo4UhqnFUGuqKK8i5JRwNehRAx05gsOgE
flWIc00ipsHUiwypIWV6Di6xZllmLTaDOtustgiavkY1+fItqpibQO3qRMqIBm2xN0XON8HAeoGS
JmUK0GCF0HFZxIm92MQBAo/CuUfHtPYDHMBDNewc5FoJuT3PWKpewJEOHNwiIIKywmbTJdDTIgUo
RnF2Ieutjl1gIsMi1+P4qU3O9f8Drcslo/xafg0AAAAASUVORK5CYII=
</CSPBase64>


<CSPBase64 name="pics/logo.png" application="/csp/cbt/" default="1">
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
/h9Eu3mACUrmKQAAAABJRU5ErkJggg==
</CSPBase64>


<CSPBase64 name="pics/navigate_left.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAK3RFWHRDcmVhdGlvbiBUaW1lAERp
IDE4IEZlYiAyMDAzIDIzOjE1OjEwICswMTAw263T5gAAAAd0SU1FB9MCGhYtCCtALaUAAAAJcEhZ
cwAACvAAAArwAUKsNJgAAAAEZ0FNQQAAsY8L/GEFAAABp0lEQVR42mNgoAsIOR7AELLrAkPsOTV0
KSaCmv3ORsqJ/1sVGaSnz8b1/yhDzj0b4g1wP5GkKPllsZmeBOvFh18YWEQERRi+vOpFVsKCU7PD
/mw1qc+TNJTFmc7e+cTw6Asjw98v3y4wCCj5ICtjxKrZcnuppsq/TjkFIcarr38zPPkKVPbr9ykG
PjlPhtkq7/AbYLyhQUeTpU5Egofx6oufDK9/AJX8/neEgVXZm2GN6id05aheMF7RYWjMXcbJx8F4
/ulXho+f/zAw/Py5l4GNxZ9ho+pXbI5FNYCJgefdLwbGN6//MXz9A5TiAIbx9++fGCS4f+MKKkwv
mG3oZRBjK2SQEmNkYAQ5H+iKV292MEjbBDHM5P9O2AAQsNreyCDNXssgJ83IwAR0xR+gIU+eHGRg
NfBlWCb6mbABIOC8t4xBgr2DQUMVYcideycZ2IQ9GeZqvEf4GhfY69zF8P5fHsO9R/8YeHkZGERF
GRjMTc0Z/rxdgxps+MA2uykMH5lTGK7f/sPAw8zAcPXaKwZe6XIGkkHwoQiGkN03GOLOqpGumQAA
AG7rhNQjhgefAAAAAElFTkSuQmCC
</CSPBase64>


<CSPBase64 name="pics/navigate_right.png" application="/csp/cbt/" default="1">
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAK3RFWHRDcmVhdGlvbiBUaW1lAERp
IDE4IEZlYiAyMDAzIDIzOjE1OjEwICswMTAw263T5gAAAAd0SU1FB9MCGhYrOFvDuo8AAAAJcEhZ
cwAACvAAAArwAUKsNJgAAAAEZ0FNQQAAsY8L/GEFAAABtklEQVR42mNgoDoIv6DEELL7AkPwyUBi
lDOh8DJuG4gI/zpS6SGhLyPwfSVD4PkY0gz48WZSpA6b5McffxmstQVYRbnfLmTwOpZOvAGsoiGT
T3y98PDjP4a33/8zKKiKMfHyfZnO4HSgCJcBjBgi0c8EGH7e2qanwmP5g4mN4d1fFoa3957////0
ayPDMb9G/C4AgaVSHxiEOd0uXXm97/3Xnwyf/zIx/FdSYGRQFKpnMFnbja6cGau7zs75xSATtOrb
q7cG/7i41Bi4eRkYpCUZGfjYrRj+24oxPFu7DbcL4OAfEP9nZGRlZWBgZwNidgYGFmaQp1EsZcSq
1+8eN8P/6xvF9VWcP3EJMHxn5WBguHPvP8Op+xMZzgeBAvQ/TCkLhuaU+/wMH+9tMbDQsvnBxQdU
ycHw8/yN//8uPm4Faq7FHwtpZ4UZvvzc4e2sYPKXk5PhPSM7w40j1/9/vPymiuGQewc2x6K64Nuv
bTmR6iYMQCe/A0pd3Hbl38eb3wqAmifjCinUQOQTqV5z4NEHIQE2hpN7r/19fv9fKsMeW5yasYPY
G9oMIbtuMgQcjyBNI5kAAPlBmDQuIDK8AAAAAElFTkSuQmCC
</CSPBase64>


<CSPBase64 name="pics/vdot.gif" application="/csp/cbt/" default="1">
R0lGODlhAQACAIABAJmZmf///yH5BAEAAAEALAAAAAABAAIAAAICDAoAOw==
</CSPBase64>


<CSP name="scwblank.html" application="/csp/cbt/" default="1"><![CDATA[
<!-- scw javascript calender (js/scw.js) needs this empty page for MS IE -->]]></CSP>
</Export>
