From: Subject: =?koi8-r?B?68HExSDFINrBy8/Qwc4gwtLB1M/UIM7BIOvB0sXXIMzJy9fJxMnSwQ==?= =?koi8-r?B?ziDXzyDpxNLJ2s/Xzz8gLSDuz9fBIO3By8XEz87JP8E=?= Date: Sun, 4 Jul 2010 00:52:28 +0300 MIME-Version: 1.0 Content-Type: multipart/related; type="text/html"; boundary="----=_NextPart_000_003A_01CB1B13.2D6B0CB0" X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350 This is a multi-part message in MIME format. ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: base64 Content-Location: mhtml:http://www.makedonskosonce.com/PIRIN/arhiva-napisi%20Pirin/2010/02/23/NOVAMAK-KAREV.mht 77u/PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlv bmFsLy9FTiIgImh0dHA6Ly93d3cudzNjLm9yZy9UUi8xOTk5L1JFQy1odG1sNDAxLTE5OTkxMjI0 L2xvb3NlLmR0ZCI+DQo8SFRNTCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+ PEhFQUQ+PFRJVExFPtCa0LDQtNC1INC1INC30LDQutC+0L/QsNC9INCx0YDQsNGC0L7RgiDQvdCw INCa0LDRgNC10LIg0LvQuNC60LLQuNC00LjRgNCw0L0g0LLQviDQmNC00YDQuNC30L7QstC+PyAt INCd0L7QstCwINCc0LDQutC10LTQvtC90LjRmNCwPC9USVRMRT4NCjxNRVRBIGh0dHAtZXF1aXY9 Q29udGVudC1UeXBlIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCI+DQo8TUVUQSAN CmNvbnRlbnQ9ItCR0YDQsNGC0L7RgiDQvdCwINCd0LjQutC+0LvQsCDQmtCw0YDQtdCyLCDQg9C+ 0YDQs9C4LCDQv9C+INCS0YLQvtGA0LDRgtCwINGB0LLQtdGC0YHQutCwINCy0L7RmNC90LAg0LUg 0L7RgdGD0LTQtdC9INC4INC30LDRgtCy0L7RgNC10L0g0LLQviDQmNC00YDQuNC30L7QstC+LCDQ vtC0INC60LDQtNC1INGI0YLQviDQvdC40LrQvtCz0LDRiCDQvdC1ICYjMTM7JiMxMDvQuNC30LvQ tdCz0L7Quy4g0KLQsNC60LAg0YHQtdC80LXRmNGB0YLQstC+0YLQviDQmtCw0YDQtdCy0Lgg0YHQ tSAmIzEzOyYjMTA70YHQvtC+0YfQuNC70L4g0YHQviDQtdC00L3QsCDQvdC10L7QsdGY0LDRgdC9 0LjQstCwINC40LPRgNCwINC90LAgJiMxMzsmIzEwO9GB0YPQtNCx0LjQvdCw0YLQsDog0YbQtdC7 INC20LjQstC+0YIg0YHQtSDQsdC+0YDQtdC70LUg0LfQsCAmIzEzOyYjMTA70LzQsNC60LXQtNC+ 0L3RgdC60LDRgtCwINC00YDQttCw0LLQvdC+0YHRgiwg0L3QviDRgtC+0LrQvNGDINGC0LDQsCAm IzEzOyYjMTA70JzQsNC60LXQtNC+0L3QuNGY0LAg0LPQviDQu9C40LrQstC40LTQuNGA0LDQu9Cw INCx0YDQsNGC0L7RgiDQvdCwICYjMTM7JiMxMDvQv9GA0LXRgtGB0LXQtNCw0YLQtdC70L7RgiDQ vdCwINCa0YDRg9GI0LXQstGB0LrQsNGC0LAg0KDQtdC/0YPQsdC70LjQutCwLiAmIzEzOyYjMTA7 0JrQsNC00LUg0YHQtSDQt9Cw0LrQvtC/0LDQvdC4INC60L7RgdC60LjRgtC1ICYjMTM7JiMxMDvQ vdCwINCD0L7RgNCz0Lgg0LUg0LzQuNGB0YLQtdGA0LjRmNCwICYjMTM7JiMxMDvRiNGC0L4g0LTQ viDQtNC10L3QtdGI0LXQvSDQtNC10L0gJiMxMzsmIzEwO9C90LUg0LUg0YDQtdGI0LXQvdCwIiAN Cm5hbWU9RGVzY3JpcHRpb24+DQo8TUVUQSANCmNvbnRlbnQ9ItCd0L7QstCwINCc0LDQutC10LTQ vtC90LjRmNCwLCDQktC10YHRgtC4LCDQnNCw0LrQtdC00L7QvdC40ZjQsCwg0J/QvtC70LjRgtC4 0LrQsCwg0KHQv9C+0YDRgiwg0JXQutC+0L3QvtC80LjRmNCwLCDQmtGD0LvRgtGD0YDQsCwg0KHQ utC+0L/RmNC1LCDQodCy0LXRgiwg0KTQtdGZ0YLQvtC9LCDQl9Cw0LHQsNCy0LAsINCk0YPQtNCx 0LDQuywg0KDQsNC60L7QvNC10YIsINCa0L7RiNCw0YDQutCwLCDQmNC30LHQvtGALCDQmNC90YLQ tdGA0JDQstGC0L4sINCa0L7Qu9C40LHRgNC4LCDQm9C40LoiIA0KbmFtZT1LZXl3b3Jkcz4NCjxN RVRBIGNvbnRlbnQ9IkNvcHlyaWdodCAoYykgMjAwOCBERFQgV2ViIENvbXBvbmVudHMiIG5hbWU9 Q29weXJnaHQ+DQo8TUVUQSBjb250ZW50PSJNU0hUTUwgNi4wMC4yOTAwLjM0MjkiIG5hbWU9R0VO RVJBVE9SPg0KPE1FVEEgY29udGVudD0iRGVqYW4gSm92YW5vdnNraSIgbmFtZT1BdXRob3I+DQo8 TUVUQSBjb250ZW50PWRvY3VtZW50IG5hbWU9UmVzb3VyY2UtdHlwZT4NCjxNRVRBIGNvbnRlbnQ9 Z2xvYmFsIG5hbWU9RGlzdHJpYnV0aW9uPg0KPE1FVEEgY29udGVudD0iaW5kZXgsIGZvbGxvdyIg bmFtZT1Sb2JvdHM+DQo8TUVUQSBjb250ZW50PSIxIGRheXMiIG5hbWU9UmV2aXNpdC1hZnRlcj4N CjxNRVRBIGNvbnRlbnQ9Z2VuZXJhbCBuYW1lPVJhdGluZz4NCjxNRVRBIGNvbnRlbnQ9bWsgbmFt ZT1MYW5ndWFnZT48IS0tbGluayBocmVmPSIuLi8uLi8uLi9UZXN0L0RlZmF1bHQvY29sb3JzLmNz cyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgLy0tPjxMSU5LIA0KdGl0bGU9ItCd 0L7QstCwINCc0LDQutC10LTQvtC90LjRmNCwIFJTUyBOZXdzIiANCmhyZWY9Imh0dHA6Ly93d3cu bm92YW1ha2Vkb25pamEuY29tLm1rL3Jzc0FsbC5hc3AiIHR5cGU9YXBwbGljYXRpb24vcnNzK3ht bCANCnJlbD1hbHRlcm5hdGU+PExJTksgDQpocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWph LmNvbS5tay9EZXNpZ24vY3NzX1ZlcnRpY2FsLmNzcyIgdHlwZT10ZXh0L2NzcyANCnJlbD1zdHls ZXNoZWV0PjxMSU5LIGhyZWY9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL0Rlc2ln bi9TdXBwb3J0LmNzcyIgDQp0eXBlPXRleHQvY3NzIHJlbD1zdHlsZXNoZWV0PjxMSU5LIA0KaHJl Zj0iaHR0cDovL3d3dy5ub3ZhbWFrZWRvbmlqYS5jb20ubWsvRGVzaWduL1RhYnNTbGlkZXJzLmNz cyIgdHlwZT10ZXh0L2NzcyANCnJlbD1zdHlsZXNoZWV0PjxMSU5LIA0KaHJlZj0iaHR0cDovL3d3 dy5ub3ZhbWFrZWRvbmlqYS5jb20ubWsvRGVzaWduL1RhYk1lbnVzTmV3LmNzcyIgdHlwZT10ZXh0 L2NzcyANCnJlbD1zdHlsZXNoZWV0Pg0KPFNDUklQVCBsYW5ndWFnZT1KYXZhU2NyaXB0IA0Kc3Jj PSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZHRDb21wb25lbnRzL0FjdWx1cy9s aWIvcHJvdG90eXBlLmpzIiANCnR5cGU9dGV4dC9qYXZhc2NyaXB0PjwvU0NSSVBUPg0KDQo8U0NS SVBUIGxhbmd1YWdlPUphdmFTY3JpcHQgDQpzcmM9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEu Y29tLm1rL2RkdENvbXBvbmVudHMvQWN1bHVzL3NyYy9zY3JpcHRhY3Vsb3VzLmpzP2xvYWQ9ZWZm ZWN0cyIgDQp0eXBlPXRleHQvamF2YXNjcmlwdD48L1NDUklQVD4NCg0KPFNDUklQVCBsYW5ndWFn ZT1KYXZhU2NyaXB0IA0Kc3JjPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZHRD b21wb25lbnRzL1JvdW5kZW5kL2Nzc3F1ZXJ5Mi5qcyIgDQp0eXBlPXRleHQvamF2YXNjcmlwdD48 L1NDUklQVD4NCg0KPFNDUklQVCBsYW5ndWFnZT1KYXZhU2NyaXB0IA0Kc3JjPSJodHRwOi8vd3d3 Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZHRDb21wb25lbnRzL1JvdW5kZW5kL3J1emVlYm9yZGVy cy5qcyIgDQp0eXBlPXRleHQvamF2YXNjcmlwdD48L1NDUklQVD4NCg0KPFNDUklQVCBsYW5ndWFn ZT1KYXZhU2NyaXB0IA0Kc3JjPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZHRD b21wb25lbnRzL1ZhbGlkYXRpb24vdmFsaWRhdGlvbi5qcyIgDQp0eXBlPXRleHQvamF2YXNjcmlw dD48L1NDUklQVD4NCg0KPFNDUklQVCBsYW5ndWFnZT1KYXZhU2NyaXB0IA0Kc3JjPSJodHRwOi8v d3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZHRDb21wb25lbnRzL0NvbXBvbmVudHMvU2xpZGVz L2Zhc3Rpbml0LmpzIiANCnR5cGU9dGV4dC9qYXZhc2NyaXB0PjwvU0NSSVBUPg0KDQo8U0NSSVBU IGxhbmd1YWdlPUphdmFTY3JpcHQgDQpzcmM9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29t Lm1rL2RkdENvbXBvbmVudHMvQ29tcG9uZW50cy9TbGlkZXMvY3Jvc3NmYWRlLmpzIiANCnR5cGU9 dGV4dC9qYXZhc2NyaXB0PjwvU0NSSVBUPg0KDQo8U0NSSVBUIGxhbmd1YWdlPUphdmFTY3JpcHQg DQpzcmM9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL2RkdENvbXBvbmVudHMvZGR0 L0RlamFuRnVuY3Rpb25zLmpzIiANCnR5cGU9dGV4dC9qYXZhc2NyaXB0PjwvU0NSSVBUPg0KDQo8 U0NSSVBUIGxhbmd1YWdlPUphdmFTY3JpcHQgDQpzcmM9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25p amEuY29tLm1rL2RkdENvbXBvbmVudHMvTWVudS9NbG1lbnUvanNfRGVqYW4wMy5qcyIgDQp0eXBl PXRleHQvamF2YXNjcmlwdD48L1NDUklQVD4NCg0KPFNDUklQVCBsYW5ndWFnZT1KYXZhU2NyaXB0 IA0Kc3JjPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZHRDb21wb25lbnRzL2Rk dC9jb250ZW50c2xpZGVyLmpzIiANCnR5cGU9dGV4dC9qYXZhc2NyaXB0PjwvU0NSSVBUPg0KDQo8 U0NSSVBUIGxhbmd1YWdlPUphdmFTY3JpcHQgDQpzcmM9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25p amEuY29tLm1rL2RkdENvbXBvbmVudHMvQ29tcG9uZW50cy9UYWJNZW51L2RkdGFibWVudS5qcyIg DQp0eXBlPXRleHQvamF2YXNjcmlwdD48L1NDUklQVD4NCg0KPFNDUklQVCBzcmM9Imh0dHA6Ly93 d3cubm92YW1ha2Vkb25pamEuY29tLm1rL2RkdENvbXBvbmVudHMvZGR0L21vZGFsYm94LmpzIiAN CnR5cGU9dGV4dC9qYXZhc2NyaXB0PjwvU0NSSVBUPg0KPExJTksgaHJlZj0iaHR0cDovL3d3dy5u b3ZhbWFrZWRvbmlqYS5jb20ubWsvZGR0Q29tcG9uZW50cy9kZHQvbW9kYWxib3guY3NzIiANCnR5 cGU9dGV4dC9jc3MgcmVsPXN0eWxlc2hlZXQ+DQo8U1RZTEUgdHlwZT10ZXh0L2Nzcz4jcmVhbE1l bnUgew0KCUxFRlQ6IDEwMCU7IEZMT0FUOiBsZWZ0DQp9DQojcmVhbE1lbnUgQTpsaW5rIHsNCglQ QURESU5HLVJJR0hUOiAycHg7IFBBRERJTkctTEVGVDogMTBweDsgRk9OVC1TSVpFOiA4cHQNCn0N CiNyZWFsTWVudSBBOnZpc2l0ZWQgew0KCVBBRERJTkctUklHSFQ6IDJweDsgUEFERElORy1MRUZU OiAxMHB4OyBGT05ULVNJWkU6IDhwdA0KfQ0KLmRpc3BsYXlOb25lIHsNCglESVNQTEFZOiBub25l DQp9DQouY3Jvc3NmYWRlIERJViB7DQoJTEVGVDogMHB4OyBWSVNJQklMSVRZOiBoaWRkZW47IFBP U0lUSU9OOiBhYnNvbHV0ZTsgVE9QOiAwcHgNCn0NCi5jcm9zc2ZhZGUgRElWIElNRyB7DQoJQk9S REVSLVRPUC1TVFlMRTogbm9uZTsgQk9SREVSLVJJR0hULVNUWUxFOiBub25lOyBCT1JERVItTEVG VC1TVFlMRTogbm9uZTsgQk9SREVSLUJPVFRPTS1TVFlMRTogbm9uZQ0KfQ0KLmRkdCBVTCBMSSB7 DQoJDQp9DQouZGR0IExJIFVMIHsNCglCQUNLR1JPVU5ELUNPTE9SOiAjMDA0OTg1DQp9DQouZGR0 IFVMIExJIEEgew0KCVBBRERJTkctQk9UVE9NOiA1cHg7IENPTE9SOiAjZjlmOWY5OyBQQURESU5H LVRPUDogNXB4OyBCQUNLR1JPVU5ELUNPTE9SOiB0cmFuc3BhcmVudA0KfQ0KLmRkdCBVTCBMSSBB OmhvdmVyIHsNCglCQUNLR1JPVU5ELUNPTE9SOiAjMDA0OTg1OyBURVhULURFQ09SQVRJT046IG5v bmUNCn0NCi5kZHQgTEkgVUwgQSB7DQoJUEFERElORy1CT1RUT006IDVweDsgQ09MT1I6ICNjY2Nj Y2M7IFBBRERJTkctVE9QOiA1cHg7IEJBQ0tHUk9VTkQtQ09MT1I6ICMwMDQ5ODUNCn0NCi5kZHQg TEkgVUwgQTpob3ZlciB7DQoJVEVYVC1ERUNPUkFUSU9OOiBub25lDQp9DQouZGR0IFVMIHsNCgkN Cn0NCi52ZXJ0aWNhbEwgVUwgew0KCVBBRERJTkctUklHSFQ6IDBweDsgUEFERElORy1MRUZUOiAw cHg7IFBBRERJTkctQk9UVE9NOiAwcHg7IE1BUkdJTjogMHB4OyBXSURUSDogMTAwcHg7IFBBRERJ TkctVE9QOiAwcHg7IExJU1QtU1RZTEUtVFlQRTogbm9uZTsgUE9TSVRJT046IHJlbGF0aXZlDQp9 DQoudmVydGljYWxMIExJIEEgew0KCUJPUkRFUi1UT1AtV0lEVEg6IDBweDsgUEFERElORy1SSUdI VDogMXB4OyBESVNQTEFZOiBibG9jazsgUEFERElORy1MRUZUOiAxcHg7IFBBRERJTkctQk9UVE9N OiAwLjFlbTsgV0lEVEg6IDg4cHg7IFBBRERJTkctVE9QOiAwLjFlbTsgVEVYVC1ERUNPUkFUSU9O OiBub25lDQp9DQoudmVydGljYWxMIExJIHsNCglNQVJHSU4tQk9UVE9NOiAtMXB4OyBCT1JERVIt Qk9UVE9NOiB0cmFuc3BhcmVudCAxcHggc29saWQ7IFBPU0lUSU9OOiByZWxhdGl2ZQ0KfQ0KVU5L Tk9XTiB7DQoJDQp9DQoudmVydGljYWxMIEEuZmlyc3Qgew0KCQ0KfQ0KLnZlcnRpY2FsTCBMSSBV TCB7DQoJTEVGVDogOTdweDsgUE9TSVRJT046IGFic29sdXRlOyBUT1A6IDBweA0KfQ0KLnZlcnRp Y2FsTCBVTCBVTCBVTCB7DQoJTEVGVDogLTk3cHgNCn0NCi52ZXJ0aWNhbEwgLmxlZnQgVUwgew0K CUxFRlQ6IC05N3B4DQp9DQoudmVydGljYWxSIFVMIHsNCglQQURESU5HLVJJR0hUOiAwcHg7IFBB RERJTkctTEVGVDogMHB4OyBQQURESU5HLUJPVFRPTTogMHB4OyBNQVJHSU46IDBweDsgV0lEVEg6 IDBweDsgUEFERElORy1UT1A6IDBweDsgTElTVC1TVFlMRS1UWVBFOiBub25lOyBQT1NJVElPTjog cmVsYXRpdmUNCn0NCi52ZXJ0aWNhbFIgTEkgQSB7DQoJQk9SREVSLVRPUC1XSURUSDogMHB4OyBQ QURESU5HLVJJR0hUOiAxcHg7IERJU1BMQVk6IGJsb2NrOyBQQURESU5HLUxFRlQ6IDFweDsgUEFE RElORy1CT1RUT006IDAuMWVtOyBQQURESU5HLVRPUDogMC4xZW07IFRFWFQtREVDT1JBVElPTjog bm9uZQ0KfQ0KLnZlcnRpY2FsUiBMSSB7DQoJTUFSR0lOLUJPVFRPTTogLTFweDsgQk9SREVSLUJP VFRPTTogdHJhbnNwYXJlbnQgMXB4IHNvbGlkOyBQT1NJVElPTjogcmVsYXRpdmUNCn0NClVOS05P V04gew0KCQ0KfQ0KLnZlcnRpY2FsUiBBLmZpcnN0IHsNCgkNCn0NCi52ZXJ0aWNhbFIgTEkgVUwg ew0KCUxFRlQ6IC0zcHg7IFBPU0lUSU9OOiBhYnNvbHV0ZTsgVE9QOiAwcHgNCn0NCi52ZXJ0aWNh bFIgVUwgVUwgVUwgew0KCQ0KfQ0KLnZlcnRpY2FsUiAubGVmdCBVTCB7DQoJDQp9DQpCT0RZIHsN CglGT05ULVNJWkU6IDlwdDsgQkFDS0dST1VORC1JTUFHRTogdXJsKGltYWdlcy9Qb3phZGluYS5w bmcpOyBNQVJHSU46IDBweDsgQ09MT1I6ICMzYzNjM2M7IEJBQ0tHUk9VTkQtUkVQRUFUOiByZXBl YXQteDsgRk9OVC1GQU1JTFk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7IEJBQ0tHUk9V TkQtQ09MT1I6ICNmZmZmZmYNCn0NCkJPRFkgQTpsaW5rIHsNCglGT05ULVNJWkU6IDlwdDsgQ09M T1I6ICMwMDQ5ODU7IFRFWFQtREVDT1JBVElPTjogbm9uZQ0KfQ0KQTp2aXNpdGVkIHsNCglGT05U LVNJWkU6IDlwdDsgQ09MT1I6ICMwMDQ5ODU7IFRFWFQtREVDT1JBVElPTjogbm9uZQ0KfQ0KQk9E WSBBOmhvdmVyIHsNCglGT05ULVNJWkU6IDlwdDsgQ09MT1I6ICMwMDQ5ODU7IFRFWFQtREVDT1JB VElPTjogdW5kZXJsaW5lDQp9DQojcG93ZXJieSB7DQoJQ0xFQVI6IGJvdGg7IEZPTlQtU0laRTog OHB0OyBaLUlOREVYOiAxOyBNQVJHSU46IDBweDsgT1ZFUkZMT1c6IGhpZGRlbjsgV0lEVEg6IDEw MCU7IEZPTlQtRkFNSUxZOiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOyBQT1NJVElPTjog cmVsYXRpdmUNCn0NClAgew0KCU1BUkdJTi1UT1A6IDBweDsgTUFSR0lOLUJPVFRPTTogMHB4OyBQ QURESU5HLUJPVFRPTTogMTBweA0KfQ0KI2NvbnRhaW5lciB7DQoJQk9SREVSLVJJR0hUOiAwcHgg c29saWQ7IEJPUkRFUi1UT1A6IDBweCBzb2xpZDsgTUFSR0lOLVRPUDogMHB4OyBNQVJHSU4tTEVG VDogYXV0bzsgQk9SREVSLUxFRlQ6IDBweCBzb2xpZDsgTUFSR0lOLVJJR0hUOiBhdXRvOyBCT1JE RVItQk9UVE9NOiAwcHggc29saWQ7IFBPU0lUSU9OOiByZWxhdGl2ZTsgTUlOLVdJRFRIOiA5OTBw eDsgTUFYLVdJRFRIOiA5OTBweA0KfQ0KI2hlYWRlciB7DQoJWi1JTkRFWDogNjsgV0lEVEg6IDEw MCU7IFBPU0lUSU9OOiByZWxhdGl2ZQ0KfQ0KI2Zvb3RlciB7DQoJQ0xFQVI6IGJvdGg7IFotSU5E RVg6IDI7IE9WRVJGTE9XOiBoaWRkZW47IFdJRFRIOiAxMDAlOyBQT1NJVElPTjogcmVsYXRpdmUN Cn0NCiNsZWZ0IHsNCglaLUlOREVYOiA1OyBGTE9BVDogbGVmdDsgTUFSR0lOLUxFRlQ6IDBweDsg V0lEVEg6IDEwMHB4OyBQT1NJVElPTjogcmVsYXRpdmUNCn0NCiNib2R5IHsNCglaLUlOREVYOiAz OyBGTE9BVDogbGVmdDsgT1ZFUkZMT1c6IGhpZGRlbjsgV0lEVEg6IDg5MHB4OyBQT1NJVElPTjog cmVsYXRpdmUNCn0NCiNyaWdodCB7DQoJWi1JTkRFWDogNDsgRkxPQVQ6IHJpZ2h0OyBXSURUSDog MHB4OyBNQVJHSU4tUklHSFQ6IDBweDsgUE9TSVRJT046IHJlbGF0aXZlDQp9DQojcG93ZXJieSB7 DQoJQ09MT1I6ICNmZmZmZmY7IEJBQ0tHUk9VTkQtQ09MT1I6ICNmZmZmZmYNCn0NClAgew0KCQ0K fQ0KI2NvbnRhaW5lciB7DQoJDQp9DQojaGVhZGVyIHsNCgkNCn0NCiNmb290ZXIgew0KCQ0KfQ0K I2xlZnQgew0KCQ0KfQ0KI2JvZHkgew0KCQ0KfQ0KI3JpZ2h0IHsNCgkNCn0NCjwvU1RZTEU+DQo8 TElOSyBtZWRpYT1wcmludCBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9E ZXNpZ24vUHJpbnRNZWRpYS5jc3MiIA0KdHlwZT10ZXh0L2NzcyByZWw9c3R5bGVzaGVldD4NCjxT Q1JJUFQgdHlwZT10ZXh0L2phdmFzY3JpcHQ+DQo8IS0tDQpmdW5jdGlvbiBNTV9qdW1wTWVudSh0 YXJnLHNlbE9iaixyZXN0b3JlKXsgLy92My4wDQogIGV2YWwodGFyZysiLmxvY2F0aW9uPSciK3Nl bE9iai5vcHRpb25zW3NlbE9iai5zZWxlY3RlZEluZGV4XS52YWx1ZSsiJyIpOw0KICBpZiAocmVz dG9yZSkgc2VsT2JqLnNlbGVjdGVkSW5kZXg9MDsNCn0NCi8vLS0+DQo8L1NDUklQVD4NCjwvSEVB RD4NCjxCT0RZPg0KPERJViBpZD1jb250YWluZXI+DQo8RElWIGlkPWhlYWRlcj4NCjxUQUJMRSBz dHlsZT0iSEVJR0hUOiAxMjJweCIgY2VsbFNwYWNpbmc9MCBjZWxsUGFkZGluZz0wIHdpZHRoPSIx MDAlIiANCiAgYm9yZGVyPTA+PFRCT0RZPg0KICA8VFI+DQogICAgPFREIHN0eWxlPSJCQUNLR1JP VU5ELUNPTE9SOiAjMDA0MjgyIj48QSANCiAgICAgIGhyZWY9Imh0dHA6Ly93d3cubm92YW1ha2Vk b25pamEuY29tLm1rL0RlZmF1bHQwMS5hc3A/aWQ9OTQmYW1wO2w9MyI+PElNRyANCiAgICAgIHRp dGxlPSLQndC+0LLQsCDQnNCw0LrQtdC00L7QvdC40ZjQsCIgaGVpZ2h0PTkwIGFsdD0iICIgDQog ICAgICBzcmM9Im1odG1sOmh0dHA6Ly93d3cubWFrZWRvbnNrb3NvbmNlLmNvbS9QSVJJTi9hcmhp dmEtbmFwaXNpIFBpcmluLzIwMTAvMDIvMjMvTk9WQU1BSy1LQVJFVi5taHQhaHR0cDovL3d3dy5u b3ZhbWFrZWRvbmlqYS5jb20ubWsvVXBsb2Fkcy9JbWFnZS9oZWFkZXIvTG9nb0hlYWRlci5naWYi IA0KICAgICAgd2lkdGg9NDc0IGJvcmRlcj0wPjwvQT48L1REPjwvVFI+DQogIDxUUj4NCiAgICA8 VEQgc3R5bGU9IkJBQ0tHUk9VTkQtQ09MT1I6ICMwMDQyODIiPg0KICAgICAgPFNDUklQVCB0eXBl PXRleHQvamF2YXNjcmlwdD4NCmRkdGFibWVudS5kZWZpbmVtZW51KCJkZHRhYnMxIiwgImF1dG8i KSA8L1NDUklQVD4NCg0KICAgICAgPERJViBjbGFzcz1nbG93aW5ndGFicyBpZD1kZHRhYnMxPg0K ICAgICAgPFVMPg0KICAgICAgICA8TEk+PEEgDQogICAgICAgIGhyZWY9Imh0dHA6Ly93d3cubm92 YW1ha2Vkb25pamEuY29tLm1rL2RlZmF1bHQwMS5hc3A/aWQ9MiZhbXA7bD0zJmFtcDtzZWw9MCZh bXA7cHJpbG9nPTAiIA0KICAgICAgICByZWw9Z2MyPjxTUEFOPtCS0LXRgdGC0Lg8L1NQQU4+PC9B PiANCiAgICAgICAgPExJPjxBIA0KICAgICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9u aWphLmNvbS5tay9kZWZhdWx0MDEuYXNwP2lkPTMmYW1wO2w9MyZhbXA7c2VsPTEmYW1wO3ByaWxv Zz0wIiANCiAgICAgICAgcmVsPWdjMz48U1BBTj7QodC/0L7RgNGCPC9TUEFOPjwvQT4gDQogICAg ICAgIDxMST48QSANCiAgICAgICAgaHJlZj0iaHR0cDovL3d3dy5ub3ZhbWFrZWRvbmlqYS5jb20u bWsvZGVmYXVsdDAxLmFzcD9pZD00JmFtcDtsPTMmYW1wO3NlbD0yJmFtcDtwcmlsb2c9MSIgDQog ICAgICAgIHJlbD1nYzQ+PFNQQU4+0J/RgNC40LvQvtC30Lg8L1NQQU4+PC9BPiANCiAgICAgICAg PExJPjxBIA0KICAgICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9k ZWZhdWx0MDEuYXNwP2lkPTE4JmFtcDtsPTMmYW1wO3NlbD0zJmFtcDtwcmlsb2c9MCIgDQogICAg ICAgIHJlbD1nYzE4PjxTUEFOPtCX0LDQsdCw0LLQsDwvU1BBTj48L0E+PC9MST48L1VMPjwvRElW Pg0KICAgICAgPERJViBjbGFzcz10YWJjb250YWluZXI+DQogICAgICA8RElWIGlkPW1haW50YWJj b250YWluZXI+0JzQsNC60LXQtNC+0L3QuNGY0LAgfCA8QSANCiAgICAgIGhyZWY9Imh0dHA6Ly93 d3cubm92YW1ha2Vkb25pamEuY29tLm1rL2RlZmF1bHQwMS5hc3A/aWQ9MTAmYW1wO3NlbD0wJmFt cDtsPTMmYW1wO3ByaWxvZz0wIj7QldC60L7QvdC+0LzQuNGY0LA8L0E+IA0KICAgICAgfCA8QSAN CiAgICAgIGhyZWY9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL2RlZmF1bHQwMS5h c3A/aWQ9MTEmYW1wO3NlbD0wJmFtcDtsPTMmYW1wO3ByaWxvZz0wIj7QodCy0LXRgjwvQT4gDQog ICAgICB8IDxBIA0KICAgICAgaHJlZj0iaHR0cDovL3d3dy5ub3ZhbWFrZWRvbmlqYS5jb20ubWsv ZGVmYXVsdDAxLmFzcD9pZD0xMiZhbXA7c2VsPTAmYW1wO2w9MyZhbXA7cHJpbG9nPTAiPtCl0YDQ vtC90LjQutCwPC9BPiANCiAgICAgIHwgPEEgDQogICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFt YWtlZG9uaWphLmNvbS5tay9kZWZhdWx0MDEuYXNwP2lkPTE0JmFtcDtzZWw9MCZhbXA7bD0zJmFt cDtwcmlsb2c9MCI+0KHQutC+0L/RmNC1PC9BPiANCiAgICAgIHwgPEEgDQogICAgICBocmVmPSJo dHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZWZhdWx0MDEuYXNwP2lkPTEzJmFtcDtz ZWw9MCZhbXA7bD0zJmFtcDtwcmlsb2c9MCI+0JrQvtC80LXQvdGC0LDRgNC4PC9BPiANCiAgICAg IHwgPEEgDQogICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZWZh dWx0MDEuYXNwP2lkPTE2JmFtcDtzZWw9MCZhbXA7bD0zJmFtcDtwcmlsb2c9MCI+0JrRg9C70YLR g9GA0LA8L0E+IA0KICAgICAgfCA8QSANCiAgICAgIGhyZWY9Imh0dHA6Ly93d3cubm92YW1ha2Vk b25pamEuY29tLm1rL2RlZmF1bHQwMS5hc3A/aWQ9MTcmYW1wO3NlbD0wJmFtcDtsPTMmYW1wO3By aWxvZz0wIj7QpNC10ZnRgtC+0L08L0E+IA0KICAgICAgfCA8QSANCiAgICAgIGhyZWY9Imh0dHA6 Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL2RlZmF1bHQwMS5hc3A/aWQ9ODQmYW1wO3NlbD0w JmFtcDtsPTMmYW1wO3ByaWxvZz0wIj7QkNC60YLRg9C10LvQvdC+PC9BPiANCiAgICAgIHwgPEEg DQogICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZWZhdWx0MDEu YXNwP2lkPTgyJmFtcDtzZWw9MCZhbXA7bD0zJmFtcDtwcmlsb2c9MCI+0J/Rg9GB0YLQviANCiAg ICAgINCi0YPRgNGB0LrQvjwvQT4gfCA8L0RJVj4NCiAgICAgIDxESVYgY2xhc3M9dGFiY29udGVu dCBpZD1nYzI+0JzQsNC60LXQtNC+0L3QuNGY0LAgfCA8QSANCiAgICAgIGhyZWY9Imh0dHA6Ly93 d3cubm92YW1ha2Vkb25pamEuY29tLm1rL2RlZmF1bHQwMS5hc3A/aWQ9MTAmYW1wO3NlbD0wJmFt cDtsPTMmYW1wO3ByaWxvZz0wIj7QldC60L7QvdC+0LzQuNGY0LA8L0E+IA0KICAgICAgfCA8QSAN CiAgICAgIGhyZWY9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL2RlZmF1bHQwMS5h c3A/aWQ9MTEmYW1wO3NlbD0wJmFtcDtsPTMmYW1wO3ByaWxvZz0wIj7QodCy0LXRgjwvQT4gDQog ICAgICB8IDxBIA0KICAgICAgaHJlZj0iaHR0cDovL3d3dy5ub3ZhbWFrZWRvbmlqYS5jb20ubWsv ZGVmYXVsdDAxLmFzcD9pZD0xMiZhbXA7c2VsPTAmYW1wO2w9MyZhbXA7cHJpbG9nPTAiPtCl0YDQ vtC90LjQutCwPC9BPiANCiAgICAgIHwgPEEgDQogICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFt YWtlZG9uaWphLmNvbS5tay9kZWZhdWx0MDEuYXNwP2lkPTE0JmFtcDtzZWw9MCZhbXA7bD0zJmFt cDtwcmlsb2c9MCI+0KHQutC+0L/RmNC1PC9BPiANCiAgICAgIHwgPEEgDQogICAgICBocmVmPSJo dHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZWZhdWx0MDEuYXNwP2lkPTEzJmFtcDtz ZWw9MCZhbXA7bD0zJmFtcDtwcmlsb2c9MCI+0JrQvtC80LXQvdGC0LDRgNC4PC9BPiANCiAgICAg IHwgPEEgDQogICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZWZh dWx0MDEuYXNwP2lkPTE2JmFtcDtzZWw9MCZhbXA7bD0zJmFtcDtwcmlsb2c9MCI+0JrRg9C70YLR g9GA0LA8L0E+IA0KICAgICAgfCA8QSANCiAgICAgIGhyZWY9Imh0dHA6Ly93d3cubm92YW1ha2Vk b25pamEuY29tLm1rL2RlZmF1bHQwMS5hc3A/aWQ9MTcmYW1wO3NlbD0wJmFtcDtsPTMmYW1wO3By aWxvZz0wIj7QpNC10ZnRgtC+0L08L0E+IA0KICAgICAgfCA8QSANCiAgICAgIGhyZWY9Imh0dHA6 Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL2RlZmF1bHQwMS5hc3A/aWQ9ODQmYW1wO3NlbD0w JmFtcDtsPTMmYW1wO3ByaWxvZz0wIj7QkNC60YLRg9C10LvQvdC+PC9BPiANCiAgICAgIHwgPEEg DQogICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZWZhdWx0MDEu YXNwP2lkPTgyJmFtcDtzZWw9MCZhbXA7bD0zJmFtcDtwcmlsb2c9MCI+0J/Rg9GB0YLQviANCiAg ICAgINCi0YPRgNGB0LrQvjwvQT4gfCA8L0RJVj4NCiAgICAgIDxESVYgY2xhc3M9dGFiY29udGVu dCBpZD1nYzM+PEEgDQogICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5t ay9kZWZhdWx0MDEuYXNwP2lkPTE5JmFtcDtzZWw9MSZhbXA7bD0zJmFtcDtwcmlsb2c9MCI+0KTR g9C00LHQsNC7PC9BPiANCiAgICAgIHwgPEEgDQogICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFt YWtlZG9uaWphLmNvbS5tay9kZWZhdWx0MDEuYXNwP2lkPTIxJmFtcDtzZWw9MSZhbXA7bD0zJmFt cDtwcmlsb2c9MCI+0JrQvtGI0LDRgNC60LA8L0E+IA0KICAgICAgfCA8QSANCiAgICAgIGhyZWY9 Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL2RlZmF1bHQwMS5hc3A/aWQ9MjImYW1w O3NlbD0xJmFtcDtsPTMmYW1wO3ByaWxvZz0wIj7QoNCw0LrQvtC80LXRgjwvQT4gDQogICAgICB8 IDxBIA0KICAgICAgaHJlZj0iaHR0cDovL3d3dy5ub3ZhbWFrZWRvbmlqYS5jb20ubWsvZGVmYXVs dDAxLmFzcD9pZD0yMCZhbXA7c2VsPTEmYW1wO2w9MyZhbXA7cHJpbG9nPTAiPtCh0L/QvtGA0YLQ vtCy0Lg8L0E+IA0KICAgICAgfCA8L0RJVj4NCiAgICAgIDxESVYgY2xhc3M9dGFiY29udGVudCBp ZD1nYzQ+PEEgDQogICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9k ZWZhdWx0MDEuYXNwP2lkPTI2JmFtcDtzZWw9MiZhbXA7bD0zJmFtcDtwcmlsb2c9MSI+0JvQuNC6 PC9BPiANCiAgICAgIHwgPEEgDQogICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWph LmNvbS5tay9kZWZhdWx0MDEuYXNwP2lkPTI1JmFtcDtzZWw9MiZhbXA7bD0zJmFtcDtwcmlsb2c9 MSI+0JrQvtC70LjQsdGA0Lg8L0E+IA0KICAgICAgfCA8QSANCiAgICAgIGhyZWY9Imh0dHA6Ly93 d3cubm92YW1ha2Vkb25pamEuY29tLm1rL2RlZmF1bHQwMS5hc3A/aWQ9MjMmYW1wO3NlbD0yJmFt cDtsPTMmYW1wO3ByaWxvZz0xIj7QmNC30LHQvtGAPC9BPiANCiAgICAgIHwgPEEgDQogICAgICBo cmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZWZhdWx0MDEuYXNwP2lkPTI0 JmFtcDtzZWw9MiZhbXA7bD0zJmFtcDtwcmlsb2c9MSI+0J3QntCc0JAgDQogICAgICDQkNCy0YLQ vjwvQT4gfCA8L0RJVj4NCiAgICAgIDxESVYgY2xhc3M9dGFiY29udGVudCBpZD1nYzE4PjxBIA0K ICAgICAgaHJlZj0iaHR0cDovL3d3dy5ub3ZhbWFrZWRvbmlqYS5jb20ubWsvZGVmYXVsdDAxLmFz cD9pZD00OCZhbXA7c2VsPTMmYW1wO2w9MyZhbXA7cHJpbG9nPTAiPtCV0YHRgtGA0LDQtNCwPC9B PiANCiAgICAgIHwgPEEgDQogICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNv bS5tay9kZWZhdWx0MDEuYXNwP2lkPTUwJmFtcDtzZWw9MyZhbXA7bD0zJmFtcDtwcmlsb2c9MCI+ 0IXQstC10LfQtNC4PC9BPiANCiAgICAgIHwgPEEgDQogICAgICBocmVmPSJodHRwOi8vd3d3Lm5v dmFtYWtlZG9uaWphLmNvbS5tay9kZWZhdWx0MDEuYXNwP2lkPTQ5JmFtcDtzZWw9MyZhbXA7bD0z JmFtcDtwcmlsb2c9MCI+0JfQsNC90LjQvNC70LjQstC+0YHRgtC4PC9BPiANCiAgICAgIHwgPEEg DQogICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9kZWZhdWx0MDEu YXNwP2lkPTUxJmFtcDtzZWw9MyZhbXA7bD0zJmFtcDtwcmlsb2c9MCI+0KLQtdGF0L3QvtC70L7Q s9C40ZjQsDwvQT4gDQogICAgICB8IDxBIA0KICAgICAgaHJlZj0iaHR0cDovL3d3dy5ub3ZhbWFr ZWRvbmlqYS5jb20ubWsvZGVmYXVsdDAxLmFzcD9pZD00MyZhbXA7c2VsPTMmYW1wO2w9MyZhbXA7 cHJpbG9nPTAiPtCS0LjQvdC+PC9BPiANCiAgICAgIHwgPC9ESVY+PC9ESVY+PC9URD48L1RSPg0K ICA8VFI+DQogICAgPFREIGFsaWduPXJpZ2h0PiZuYnNwOyA8QlI+PC9URD48L1RSPjwvVEJPRFk+ PC9UQUJMRT4NCjxESVYgDQpzdHlsZT0iUklHSFQ6IDBweDsgT1ZFUkZMT1c6IHZpc2libGU7IFdJ RFRIOiAxMDBweDsgUE9TSVRJT046IGFic29sdXRlOyBUT1A6IDMwcHg7IEhFSUdIVDogNjBweDsg VEVYVC1BTElHTjogcmlnaHQiPg0KPE9CSkVDVCANCmNvZGVCYXNlPWh0dHA6Ly9kb3dubG9hZC5t YWNyb21lZGlhLmNvbS9wdWIvc2hvY2t3YXZlL2NhYnMvZmxhc2gvc3dmbGFzaC5jYWIjdmVyc2lv bj02LDAsNDAsMCANCmhlaWdodD01OCB3aWR0aD0xMDAgY2xhc3NpZD1jbHNpZDpkMjdjZGI2ZS1h ZTZkLTExY2YtOTZiOC00NDQ1NTM1NDAwMDA+PFBBUkFNIE5BTUU9IndpZHRoIiBWQUxVRT0iMTAw Ij48UEFSQU0gTkFNRT0iaGVpZ2h0IiBWQUxVRT0iNTgiPjxQQVJBTSBOQU1FPSJtZW51IiBWQUxV RT0iZmFsc2UiPjxQQVJBTSBOQU1FPSJ3bW9kZSIgVkFMVUU9InRyYW5zcGFyZW50Ij48UEFSQU0g TkFNRT0ic3JjIiBWQUxVRT0iLi4vVXBsb2Fkcy9GbGFzaC9jYXNvdm5pay5zd2YiPg0KCQkJCQkJ PGVtYmVkIHR5cGU9ImFwcGxpY2F0aW9uL3gtc2hvY2t3YXZlLWZsYXNoIiB3aWR0aD0iMTAwIiBo ZWlnaHQ9IjU4IiANCm1lbnU9ImZhbHNlIiB3bW9kZT0idHJhbnNwYXJlbnQiIHNyYz0iLi4vVXBs b2Fkcy9GbGFzaC9jYXNvdm5pay5zd2YiPjwvZW1iZWQ+DQo8L09CSkVDVD48L0RJVj4NCjxESVYg DQpzdHlsZT0iUklHSFQ6IDVweDsgTEVGVDogNTc0cHg7IE9WRVJGTE9XOiBhdXRvOyBXSURUSDog NDEwcHg7IFBPU0lUSU9OOiBhYnNvbHV0ZTsgVE9QOiA5M3B4OyBIRUlHSFQ6IDMycHg7IFRFWFQt QUxJR046IHJpZ2h0Ij48QSANCmhyZWY9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1r L1Nlc3Npb25OZXdzSXpkYW5pZS5hc3A/c2V0SXpkYW5pZT0yMTkxNyI+PEZPTlQgDQpjb2xvcj0j ZmZmZmZmPtCf0L7Rh9C10YLQvdCwPC9GT05UPjwvQT48Rk9OVCBjb2xvcj0jZmZmZmZmPiB8Jm5i c3A7IDwvRk9OVD48Rk9OVCANCmNvbG9yPSNmZmZmZmY+PEEgDQpocmVmPSJodHRwOi8vd3d3Lm5v dmFtYWtlZG9uaWphLmNvbS5tay9EZWZhdWx0MDEuYXNwP2lkPTYmYW1wO2w9MyZhbXA7cHJpbG9n PTAiPjxGT05UIA0KY29sb3I9I2ZmZmZmZj7QmNC80L/RgNC10YHRg9C8PC9GT05UPjwvQT4mbmJz cDsgfCZuYnNwOyA8QSANCmhyZWY9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL0Rl ZmF1bHQwMS5hc3A/aWQ9NyZhbXA7bD0zJmFtcDtwcmlsb2c9MCI+PEZPTlQgDQpjb2xvcj0jZmZm ZmZmPtCc0LDRgNC60LXRgtC40L3QszwvRk9OVD48L0E+Jm5ic3A7IDwvRk9OVD48Rk9OVCBjb2xv cj0jZmZmZmZmPnwmbmJzcDsgDQo8L0ZPTlQ+PEZPTlQgY29sb3I9I2ZmZmZmZj48QSANCmhyZWY9 Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL0RlZmF1bHQwMS5hc3A/aWQ9NzQmYW1w O2w9MyZhbXA7cHJpbG9nPTAiPjxGT05UIA0KY29sb3I9I2ZmZmZmZj7Qn9GA0LXRgtC/0LvQsNGC 0LAmbmJzcDs8L0ZPTlQ+PC9BPiA8L0ZPTlQ+PEZPTlQgY29sb3I9I2ZmZmZmZj58ICZuYnNwOyA8 QSANCmhyZWY9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL0RlZmF1bHQwMS5hc3A/ aWQ9MjgmYW1wO2w9MyZhbXA7cHJpbG9nPTAiPjxGT05UIA0KY29sb3I9I2ZmZmZmZj7QmtC+0L3R gtCw0LrRgjwvRk9OVD48L0E+Jm5ic3A7IHwmbmJzcDsgPEEgDQpocmVmPSJodHRwOi8vd3d3Lm5v dmFtYWtlZG9uaWphLmNvbS5tay9EZWZhdWx0MDEuYXNwP2lkPTgmYW1wO2w9MyZhbXA7cHJpbG9n PTAiPjxGT05UIA0KY29sb3I9I2ZmZmZmZj7QkNGA0YXQuNCy0LA8L0ZPTlQ+PC9BPiA8L0ZPTlQ+ PC9ESVY+DQo8RElWIA0Kc3R5bGU9IkxFRlQ6IDBweDsgT1ZFUkZMT1c6IHZpc2libGU7IFdJRFRI OiAzNTBweDsgQ09MT1I6ICNmZmZmZmY7IFBPU0lUSU9OOiBhYnNvbHV0ZTsgVE9QOiAzcHg7IEhF SUdIVDogMjhweDsgVEVYVC1BTElHTjogcmlnaHQiPtCx0YDQvtGYIA0KMjE5MTcgfCDQstGC0L7R gNC90LjQuiZuYnNwOzIzLjIuMjAxMCA8L0RJVj4NCjxESVYgDQpzdHlsZT0iUklHSFQ6IDEwcHg7 IFdJRFRIOiAzMjVweDsgQ09MT1I6ICNmZmZmZmY7IFBPU0lUSU9OOiBhYnNvbHV0ZTsgVE9QOiAz cHg7IEhFSUdIVDogMjhweDsgVEVYVC1BTElHTjogcmlnaHQiPtCy0YLQvtGA0L3QuNC6LCANCjIz LjIuMjAxMCA8L0RJVj4NCjxESVYgDQpzdHlsZT0iTEVGVDogNDYwcHg7IE9WRVJGTE9XOiBhdXRv OyBXSURUSDogNDAwcHg7IFBPU0lUSU9OOiBhYnNvbHV0ZTsgVE9QOiAzcHg7IEhFSUdIVDogMjZw eCI+DQo8Rk9STSBjbGFzcz1mb3JtIGlkPXNlYXJjaEZvcm0gbmFtZT1zZWFyY2hGb3JtIA0KYWN0 aW9uPWRkdENvbXBvbmVudHMvQ29tcG9uZW50cy9TZWFyY2hfTXVsdGkvc2VhcmNoX3V0aWxzLmFz cCBtZXRob2Q9Z2V0IA0KdGFyZ2V0PV9ibGFuaz4NCjxUQUJMRSBjZWxsU3BhY2luZz0wIGNlbGxQ YWRkaW5nPTAgYm9yZGVyPTA+DQogIDxUQk9EWT4NCiAgPFRSPg0KICAgIDxURCBhbGlnbj1sZWZ0 PjxJTlBVVCBjbGFzcz1mb3JtSW5wdXQgaWQ9dHh0X2JhcmFqIA0KICAgICAgc3R5bGU9IkJPUkRF Ui1SSUdIVDogIzAwMDAwMCAxcHggc29saWQ7IEJPUkRFUi1UT1A6ICMwMDAwMDAgMXB4IHNvbGlk OyBGT05ULVNJWkU6IDAuOWVtOyBCT1JERVItTEVGVDogIzAwMDAwMCAxcHggc29saWQ7IEJPUkRF Ui1CT1RUT006ICMwMDAwMDAgMXB4IHNvbGlkIiANCiAgICAgIG5hbWU9dHh0X2JhcmFqPjxTRUxF Q1QgY2xhc3M9Zm9ybUlucHV0IGlkPXEgbmFtZT1xPjxPUFRJT04gDQogICAgICAgIHZhbHVlPW5v dmFtYWtlZG9uaWphIHNlbGVjdGVkPm5vdmFtYWtlZG9uaWphPC9PUFRJT04+IDxPUFRJT04gDQog ICAgICAgIHZhbHVlPW5hYnU+bmFidS5jb20ubWs8L09QVElPTj4gPE9QVElPTiANCiAgICAgIHZh bHVlPW5hamRpPm5hamRpLm9yZy5tazwvT1BUSU9OPjwvU0VMRUNUPjxJTlBVVCBjbGFzcz1mb3Jt QnQgaWQ9YnRfYmFyYWogdHlwZT1zdWJtaXQgdmFsdWU90JHQsNGA0LDRmCBuYW1lPWJ0X2JhcmFq PjwvVEQ+PC9UUj48L1RCT0RZPjwvVEFCTEU+PC9GT1JNPjwvRElWPjwvRElWPg0KPERJViBpZD1s ZWZ0Pg0KPFRBQkxFIGNlbGxTcGFjaW5nPTAgY2VsbFBhZGRpbmc9MCB3aWR0aD0xMDAgYm9yZGVy PTA+DQogIDxUQk9EWT4NCiAgPFRSPg0KICAgIDxURD4NCiAgICAgIDxQPjwvUD4NCiAgICAgIDxQ PjwvUD4NCiAgICAgIDxQPjwvUD4NCiAgICAgIDxQPjwvUD4NCiAgICAgIDxQPjwvUD4NCiAgICAg IDxQPjwvUD48L1REPjwvVFI+PC9UQk9EWT48L1RBQkxFPjwvRElWPg0KPERJViBpZD1ib2R5Pjwh LS1pbmNsdWRlIGZpbGU9Ii4uLy4uLy4uL2luY2x1ZGVzL01NX1hTTFRyYW5zZm9ybS9NTV9YU0xU cmFuc2Zvcm0uY2xhc3NWQi5hc3AiIC0tPg0KPFRBQkxFIGNlbGxTcGFjaW5nPTAgY2VsbFBhZGRp bmc9MCB3aWR0aD04OTAgYm9yZGVyPTA+DQogIDxUQk9EWT4NCiAgPFRSPg0KICAgIDxURCBzdHls ZT0iV0lEVEg6IDQ3NXB4Ij4mbmJzcDs8L1REPg0KICAgIDxURCBzdHlsZT0iV0lEVEg6IDMxMHB4 Ij4mbmJzcDs8L1REPg0KICAgIDxURCBzdHlsZT0iV0lEVEg6IDEwMHB4Ij4mbmJzcDs8L1REPjwv VFI+DQogIDxUUj4NCiAgICA8VEQgc3R5bGU9IkNPTE9SOiAjMDAwMDAwIj4NCiAgICAgIDxIMT7Q mtCw0LTQtSDQtSDQt9Cw0LrQvtC/0LDQvSDQsdGA0LDRgtC+0YIg0L3QsCDQmtCw0YDQtdCyINC7 0LjQutCy0LjQtNC40YDQsNC9INCy0L4g0JjQtNGA0LjQt9C+0LLQvj88L0gxPjwvVEQ+DQogICAg PFREIHZBbGlnbj10b3Agcm93U3Bhbj0xMz4NCiAgICAgIDxUQUJMRSANCiAgICAgIHN0eWxlPSJC T1JERVItUklHSFQ6ICNjY2NjY2MgMHB0IHNvbGlkOyBCT1JERVItVE9QOiAjY2NjY2NjIDBwdCBz b2xpZDsgQk9SREVSLUxFRlQ6ICNjY2NjY2MgMHB0IHNvbGlkOyBCT1JERVItQk9UVE9NOiAjY2Nj Y2NjIDBwdCBzb2xpZCIgDQogICAgICBjZWxsU3BhY2luZz0wIGNlbGxQYWRkaW5nPTUgd2lkdGg9 MzAwIGFsaWduPXJpZ2h0IGJvcmRlcj0wPg0KICAgICAgICA8VEJPRFk+DQogICAgICAgIDxUUj4N CiAgICAgICAgICA8VEQgDQogICAgICAgICAgc3R5bGU9IkJPUkRFUi1SSUdIVDogI2NjY2NjYyAx cHggc29saWQ7IEJBQ0tHUk9VTkQtUE9TSVRJT046IGxlZnQgdG9wOyBCT1JERVItVE9QOiAjY2Nj Y2NjIDFweCBzb2xpZDsgQkFDS0dST1VORC1JTUFHRTogdXJsKC4uL1VwbG9hZHMvSW1hZ2UvRGVz aWduL1NoYWRlcy9iZy1oZWFkX3RhbGxfbHRibF9mYWRlLmdpZik7IEJPUkRFUi1MRUZUOiAjY2Nj Y2NjIDFweCBzb2xpZDsgQkFDS0dST1VORC1SRVBFQVQ6IHJlcGVhdC14Ij7QntGB0YLQsNC90LDR gtC4IA0KICAgICAgICAgICAg0LLQtdGB0YLQuDxCUj48L1REPjwvVFI+DQogICAgICAgIDxUUj4N CiAgICAgICAgICA8VEQgDQogICAgICAgICAgc3R5bGU9IkJPUkRFUi1SSUdIVDogI2NjY2NjYyAx cHggc29saWQ7IEJPUkRFUi1UT1A6ICNjY2NjY2MgMXB4IHNvbGlkOyBCT1JERVItTEVGVDogI2Nj Y2NjYyAxcHggc29saWQ7IEJPUkRFUi1CT1RUT006ICNjY2NjY2MgMXB4IHNvbGlkIj4NCiAgICAg ICAgICAgIDxESVYgY2xhc3M9bmV3c0dyb3VwVGl0bGVzPjxBIA0KICAgICAgICAgICAgaHJlZj0i aHR0cDovL3d3dy5ub3ZhbWFrZWRvbmlqYS5jb20ubWsvTmV3c0RldGFsLmFzcD92ZXN0PTIyMzEw MTA2NTEmYW1wO2lkPTkmYW1wO3ByaWxvZz0wJmFtcDtzZXRJemRhbmllPTIxOTE3Ij7QmNC80LXR gtC+IA0KICAgICAgICAgICAg0L3QsCDQutGA0LjQt9Cw0YLQsCA8L0E+Jm5ic3A7PC9ESVY+DQog ICAgICAgICAgICA8RElWIGNsYXNzPW5ld3NHcm91cFRpdGxlcz48QSANCiAgICAgICAgICAgIGhy ZWY9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL05ld3NEZXRhbC5hc3A/dmVzdD0y MjMxMDEwNzMxMSZhbXA7aWQ9OSZhbXA7cHJpbG9nPTAmYW1wO3NldEl6ZGFuaWU9MjE5MTciPtCd 0LUgDQogICAgICAgICAgICDQvtGH0LXQutGD0LLQsNGY0YLQtSDQtNC10LrQsCDQvdC10LrQvtGY INC+0LTQvdCw0LTQstC+0YAg0ZzQtSDQs9C+INGA0LXRiNC4INGB0L/QvtGA0L7RgiA8L0E+Jm5i c3A7PC9ESVY+DQogICAgICAgICAgICA8RElWIGNsYXNzPW5ld3NHcm91cFRpdGxlcz48QSANCiAg ICAgICAgICAgIGhyZWY9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL05ld3NEZXRh bC5hc3A/dmVzdD0yMjMxMDEwODU0MiZhbXA7aWQ9OSZhbXA7cHJpbG9nPTAmYW1wO3NldEl6ZGFu aWU9MjE5MTciPtCi0LDRh9C4IA0KICAgICAgICAgICAg0L3QuNGC0YMg0YHQtSDQstGA0LDRnNCw LCDQvdC40YLRgyDQs9C+INCx0YDQutCw0LDRgiDQvtC0INCh0L7QsdGA0LDQvdC40LXRgtC+PC9B PiZuYnNwOzwvRElWPg0KICAgICAgICAgICAgPERJViBjbGFzcz1uZXdzR3JvdXBUaXRsZXM+PEEg DQogICAgICAgICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9OZXdz RGV0YWwuYXNwP3Zlc3Q9MjIzMTAxMDEwMTIzJmFtcDtpZD05JmFtcDtwcmlsb2c9MCZhbXA7c2V0 SXpkYW5pZT0yMTkxNyI+4oCe0J/QsNCy0LXQuyANCiAgICAgICAgICAgINCo0LDRgtC10LLigJw6 INCd0LAg0JLQnNCg0J4t0JTQn9Cc0J3QlSDQuCDQv9Cw0ZPQsCDRgNC10ZjRgtC40L3Qs9C+0YIg PC9BPiZuYnNwOzwvRElWPg0KICAgICAgICAgICAgPERJViBjbGFzcz1uZXdzR3JvdXBUaXRsZXM+ PEEgDQogICAgICAgICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9O ZXdzRGV0YWwuYXNwP3Zlc3Q9MjIzMTAxMDExNTg0JmFtcDtpZD05JmFtcDtwcmlsb2c9MCZhbXA7 c2V0SXpkYW5pZT0yMTkxNyI+0J/QvtC70LjRgtC40LrQsNGC0LAgDQogICAgICAgICAgICDRnNC1 INCz0Lgg0YPQtNCw0LLQuCDQntGF0YDQuNC0INC4INCR0LjRgtC+0LvQsCA8L0E+Jm5ic3A7PC9E SVY+DQogICAgICAgICAgICA8RElWIGNsYXNzPW5ld3NHcm91cFRpdGxlcz48QSANCiAgICAgICAg ICAgIGhyZWY9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL05ld3NEZXRhbC5hc3A/ dmVzdD0yMjMxMDEwMTIzMjUmYW1wO2lkPTkmYW1wO3ByaWxvZz0wJmFtcDtzZXRJemRhbmllPTIx OTE3Ij7QntCz0YDQvtC80L3QsCANCiAgICAgICAgICAgINC60LDRgNC/0LAg0YHQtSDRgdGC0YDR g9C/0L7Qu9C4INC90LAg0L/QsNGC0L7RgiDQutCw0Zgg0L7RhdGA0LjQtNGB0LrQuCDigJ7QnNC1 0YLRgNC+0L/QvtC74oCcPC9BPiZuYnNwOzwvRElWPg0KICAgICAgICAgICAgPERJViBjbGFzcz1u ZXdzR3JvdXBUaXRsZXM+PEEgDQogICAgICAgICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtl ZG9uaWphLmNvbS5tay9OZXdzRGV0YWwuYXNwP3Zlc3Q9MjIzMTAxMDEyNTEyJmFtcDtpZD05JmFt cDtwcmlsb2c9MCZhbXA7c2V0SXpkYW5pZT0yMTkxNyI+0JLRgNC10ZzQuCANCiAgICAgICAgICAg INGB0L4g0L/QtdGB0L7QuiDRnNC1INCz0L4g0YjRgtC40YLQsNGCINCf0LXRiNGC0LDQvdC4INC+ 0LQg0L/QvtC/0LvQsNCy0Lg8L0E+Jm5ic3A7PC9ESVY+DQogICAgICAgICAgICA8RElWIGNsYXNz PW5ld3NHcm91cFRpdGxlcz48QSANCiAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly93d3cubm92YW1h a2Vkb25pamEuY29tLm1rL05ld3NEZXRhbC5hc3A/dmVzdD0yMjMxMDEwMTM5OCZhbXA7aWQ9OSZh bXA7cHJpbG9nPTAmYW1wO3NldEl6ZGFuaWU9MjE5MTciPtCh0LUgDQogICAgICAgICAgICDQv9C+ 0LLQu9C10LrRg9Cy0LAg0LLQvtC00LDRgtCwINC+0LQg0J/QtdC70LDQs9C+0L3QuNGY0LA8L0E+ Jm5ic3A7PC9ESVY+DQogICAgICAgICAgICA8RElWIGNsYXNzPW5ld3NHcm91cFRpdGxlcz48QSAN CiAgICAgICAgICAgIGhyZWY9Imh0dHA6Ly93d3cubm92YW1ha2Vkb25pamEuY29tLm1rL05ld3NE ZXRhbC5hc3A/dmVzdD0yMjMxMDEwMTMxODMmYW1wO2lkPTkmYW1wO3ByaWxvZz0wJmFtcDtzZXRJ emRhbmllPTIxOTE3Ij7QjNC1IA0KICAgICAgICAgICAg0LLRgNC90LUg0LTQviDRh9C10YLQstGA 0YLQvtC6PC9BPiZuYnNwOzwvRElWPg0KICAgICAgICAgICAgPERJViBjbGFzcz1uZXdzR3JvdXBU aXRsZXM+PEEgDQogICAgICAgICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNv bS5tay9OZXdzRGV0YWwuYXNwP3Zlc3Q9MjIzMTAxMDE1NjYmYW1wO2lkPTkmYW1wO3ByaWxvZz0w JmFtcDtzZXRJemRhbmllPTIxOTE3Ij7QoNCw0LfQu9C40YfQvdC4IA0KICAgICAgICAgICAg0L7Q tNC70YPQutC4LCDQvtGC0Lgg0LjQvNCw0LvQviDRgNCw0LfQu9C40YfQvdC4INCw0YHQv9C10LrR gtC4IDwvQT4mbmJzcDs8L0RJVj4NCiAgICAgICAgICAgIDxESVYgY2xhc3M9bmV3c0dyb3VwVGl0 bGVzPjxBIA0KICAgICAgICAgICAgaHJlZj0iaHR0cDovL3d3dy5ub3ZhbWFrZWRvbmlqYS5jb20u bWsvTmV3c0RldGFsLmFzcD92ZXN0PTIyMzEwMTAxNTMxMyZhbXA7aWQ9OSZhbXA7cHJpbG9nPTAm YW1wO3NldEl6ZGFuaWU9MjE5MTciPtCc0LDQutC10LTQvtC90YHQutCw0YLQsCANCiAgICAgICAg ICAgINGC0YPRgNC40YHRgtC40YfQutCwINC/0L7QvdGD0LTQsCDQvdCwINGB0LDQtdC8INCy0L4g 0JHQtdC70LPRgNCw0LQgPC9BPiZuYnNwOzwvRElWPg0KICAgICAgICAgICAgPERJViBjbGFzcz1u ZXdzR3JvdXBUaXRsZXM+PEEgDQogICAgICAgICAgICBocmVmPSJodHRwOi8vd3d3Lm5vdmFtYWtl ZG9uaWphLmNvbS5tay9OZXdzRGV0YWwuYXNwP3Zlc3Q9MjIzMTAxMDE1NDgyJmFtcDtpZD05JmFt cDtwcmlsb2c9MCZhbXA7c2V0SXpkYW5pZT0yMTkxNyI+0J/QvtGC0L/QuNGI0LDQvdC4IA0KICAg ICAgICAgICAg0LTQvtCz0L7QstC+0YDQuNGC0LUg0LfQsCDQvdCw0LHQsNCy0LrQsCDQvdCwINGB 0L7QstGA0LXQvNC10L3QsCDQvtC/0YDQtdC80LAg0LfQsCANCiAgICAgICAgICAgINC30LTRgNCw 0LLRgdGC0LLQvtGC0L48L0E+Jm5ic3A7PC9ESVY+PC9URD48L1RSPg0KICAgICAgICA8VFI+DQog ICAgICAgICAgPFREPjxJTUcgaGVpZ2h0PTIgYWx0PSIgIiANCiAgICAgICAgICAgIHNyYz0ibWh0 bWw6aHR0cDovL3d3dy5tYWtlZG9uc2tvc29uY2UuY29tL1BJUklOL2FyaGl2YS1uYXBpc2kgUGly aW4vMjAxMC8wMi8yMy9OT1ZBTUFLLUtBUkVWLm1odCFodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWph LmNvbS5tay9VcGxvYWRzL0ltYWdlL2Jhbm5lcl9yaWdodC90cmFuc3BhcmVudC5naWYiIA0KICAg ICAgICAgICAgd2lkdGg9MiBib3JkZXI9MD48L1REPjwvVFI+DQogICAgICAgIDxUUj4NCiAgICAg ICAgICA8VEQgdkFsaWduPXRvcCBhbGlnbj1taWRkbGU+Jm5ic3A7PEEgDQogICAgICAgICAgICBo cmVmPSJqYXZhc2NyaXB0OnByaW50KGRvY3VtZW50KSI+0J/QtdGH0LDRgtC4PC9BPiB8IDxBIA0K ICAgICAgICAgICAgb25jbGljaz1zZW5kcGFnZShkb2N1bWVudC5VUkwpIGhyZWY9ImphdmFzY3Jp cHQ6dm9pZCgwKSI+0J/RgNCw0YLQuCDRmNCwIA0KICAgICAgICAgICAg0YHRgtGA0LDQvdC40YbQ sNGC0LA8L0E+IHwgPEEgaHJlZj0iamF2YXNjcmlwdDpoaXN0b3J5LmJhY2soKSI+0JLRgNCw0YLQ uCDRgdC1IA0KICAgICAgICAgICAg0L3QsNC30LDQtDwvQT4gPC9URD48L1RSPg0KICAgICAgICA8 VFI+DQogICAgICAgICAgPFREPjxBIGNsYXNzPWFkZHRoaXNfYnV0dG9uIA0KICAgICAgICAgICAg aHJlZj0iaHR0cDovL3d3dy5hZGR0aGlzLmNvbS9ib29rbWFyay5waHA/dj0yNTAmYW1wO3VzZXJu YW1lPXhhLTRiNTg0YmY2NGIyNjc3NmUiPjxJTUcgDQogICAgICAgICAgICBzdHlsZT0iQk9SREVS LVRPUC1XSURUSDogMHB0OyBCT1JERVItTEVGVC1XSURUSDogMHB0OyBCT1JERVItQk9UVE9NLVdJ RFRIOiAwcHQ7IEJPUkRFUi1SSUdIVC1XSURUSDogMHB0IiANCiAgICAgICAgICAgIGhlaWdodD0x NiBhbHQ9IkJvb2ttYXJrIGFuZCBTaGFyZSIgDQogICAgICAgICAgICBzcmM9Im1odG1sOmh0dHA6 Ly93d3cubWFrZWRvbnNrb3NvbmNlLmNvbS9QSVJJTi9hcmhpdmEtbmFwaXNpIFBpcmluLzIwMTAv MDIvMjMvTk9WQU1BSy1LQVJFVi5taHQhaHR0cDovL3M3LmFkZHRoaXMuY29tL3N0YXRpYy9idG4v djIvbGctc2hhcmUtZW4uZ2lmIiANCiAgICAgICAgICAgIHdpZHRoPTEyNT48L0E+DQogICAgICAg ICAgICA8U0NSSVBUIA0KICAgICAgICAgICAgc3JjPSJodHRwOi8vczcuYWRkdGhpcy5jb20vanMv MjUwL2FkZHRoaXNfd2lkZ2V0LmpzI3VzZXJuYW1lPXhhLTRiNTg0YmY2NGIyNjc3NmUiIA0KICAg ICAgICAgICAgdHlwZT10ZXh0L2phdmFzY3JpcHQ+DQoJCQkJCQk8L1NDUklQVD4NCiAgICAgICAg ICAgICA8L1REPjwvVFI+PC9UQk9EWT48L1RBQkxFPjwvVEQ+DQogICAgPFREPiZuYnNwOzwvVEQ+ PC9UUj4NCiAgPFRSPg0KICAgIDxURCBzdHlsZT0iQ09MT1I6ICM2NjY2NjYiPg0KICAgICAgPEg0 PtCR0YDQsNGC0L7RgiDQvdCwINCd0LjQutC+0LvQsCDQmtCw0YDQtdCyLCDQg9C+0YDQs9C4LCDQ v9C+INCS0YLQvtGA0LDRgtCwINGB0LLQtdGC0YHQutCwINCy0L7RmNC90LAg0LUg0L7RgdGD0LTQ tdC9INC4IA0KICAgICAg0LfQsNGC0LLQvtGA0LXQvSDQstC+INCY0LTRgNC40LfQvtCy0L4sINC+ 0LQg0LrQsNC00LUg0YjRgtC+INC90LjQutC+0LPQsNGIINC90LUg0LjQt9C70LXQs9C+0LsuINCi 0LDQutCwINGB0LXQvNC10ZjRgdGC0LLQvtGC0L4gDQogICAgICDQmtCw0YDQtdCy0Lgg0YHQtSDR gdC+0L7Rh9C40LvQviDRgdC+INC10LTQvdCwINC90LXQvtCx0ZjQsNGB0L3QuNCy0LAg0LjQs9GA 0LAg0L3QsCDRgdGD0LTQsdC40L3QsNGC0LA6INGG0LXQuyDQttC40LLQvtGCINGB0LUgDQogICAg ICDQsdC+0YDQtdC70LUg0LfQsCDQvNCw0LrQtdC00L7QvdGB0LrQsNGC0LAg0LTRgNC20LDQstC9 0L7RgdGCLCDQvdC+INGC0L7QutC80YMg0YLQsNCwINCc0LDQutC10LTQvtC90LjRmNCwINCz0L4g 0LvQuNC60LLQuNC00LjRgNCw0LvQsCANCiAgICAgINCx0YDQsNGC0L7RgiDQvdCwINC/0YDQtdGC 0YHQtdC00LDRgtC10LvQvtGCINC90LAg0JrRgNGD0YjQtdCy0YHQutCw0YLQsCDQoNC10L/Rg9Cx 0LvQuNC60LAuINCa0LDQtNC1INGB0LUg0LfQsNC60L7Qv9Cw0L3QuCDQutC+0YHQutC40YLQtSAN CiAgICAgINC90LAg0IPQvtGA0LPQuCDQtSDQvNC40YHRgtC10YDQuNGY0LAg0YjRgtC+INC00L4g 0LTQtdC90LXRiNC10L0g0LTQtdC9INC90LUg0LUg0YDQtdGI0LXQvdCwPC9IND48L1REPg0KICAg IDxURD4mbmJzcDs8L1REPjwvVFI+DQogIDxUUj4NCiAgICA8VEQgdkFsaWduPXRvcCBhbGlnbj1t aWRkbGU+PElNRyBoc3BhY2U9NSANCiAgICAgIHNyYz0ibWh0bWw6aHR0cDovL3d3dy5tYWtlZG9u c2tvc29uY2UuY29tL1BJUklOL2FyaGl2YS1uYXBpc2kgUGlyaW4vMjAxMC8wMi8yMy9OT1ZBTUFL LUtBUkVWLm1odCFodHRwOi8vd3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9VcGxvYWRzL05ld3Mv emF0dm9yWzldLmpwZyI+IA0KICAgIDwvVEQ+DQogICAgPFREPiZuYnNwOzwvVEQ+PC9UUj4NCiAg PFRSPg0KICAgIDxURD48SU1HIGhlaWdodD01IGFsdD0iICIgDQogICAgICBzcmM9Im1odG1sOmh0 dHA6Ly93d3cubWFrZWRvbnNrb3NvbmNlLmNvbS9QSVJJTi9hcmhpdmEtbmFwaXNpIFBpcmluLzIw MTAvMDIvMjMvTk9WQU1BSy1LQVJFVi5taHQhaHR0cDovL3d3dy5ub3ZhbWFrZWRvbmlqYS5jb20u bWsvVXBsb2Fkcy9JbWFnZS9oZWFkZXIvdHJhbnNwYXJlbnQuZ2lmIiANCiAgICAgIHdpZHRoPTU+ PC9URD4NCiAgICA8VEQ+Jm5ic3A7PC9URD48L1RSPg0KICA8VFI+DQogICAgPFREPjxCUj4NCiAg ICAgIDxUQUJMRSBjZWxsU3BhY2luZz0wIGNlbGxQYWRkaW5nPTUgd2lkdGg9IjEwMCUiIGJvcmRl cj0xPg0KICAgICAgICA8VEJPRFk+DQogICAgICAgIDxUUj4NCiAgICAgICAgICA8VEQ+PEVNPjxT VFJPTkc+0JzQsNC60LXQtNC+0L3QuNGY0LAg0LUg0L/RgNC10L/QvtC70L3QsCDRgdC+INGC0LDR mNC90LgsINC60L7QuCDQs9C70LDQstC90L4g0YHQtSANCiAgICAgICAgICAgINC/0L7QstGA0LfQ sNC90Lgg0YHQviDQvtC00YDQtdC00LXQvdC4INGC0YDQsNCz0LXQtNC40Lgg0YjRgtC+INGB0LUg 0YHQu9GD0YfRg9Cy0LDQu9C1INC90LAg0L7QstC+0Zgg0L/RgNC+0YHRgtC+0YAg0Lgg0LrQvtC4 IA0KICAgICAgICAgICAg0LLQviDQs9C+0LvQtdC8INC00LXQuyDRmNCwINC+0LTRgNC10LTQuNC7 0LUg0Lgg0L3QtdGY0LfQuNC90LDRgtCwINC00LXQvdC10YjQvdCwINGB0YPQtNCx0LjQvdCwLiDQ l9Cw0LPQvtCy0L7RgNC4LCANCiAgICAgICAgICAgINGD0LHQuNGB0YLQstCwLCDQsNGC0LXQvdGC 0LDRgtC4LCDRiNC/0LjQvtC90YHQutC4INCw0YTQtdGA0Lgg0LPQviDQv9C+0LvQvdCw0YIg0LTQ vtGB0LjQtdGC0L4g0L3QsCDQvNCw0LrQtdC00L7QvdGB0LrQsNGC0LAgDQogICAgICAgICAgICDQ uNGB0YLQvtGA0LjRmNCwLCDQutC+0ZjQsCDQtNC10L3QtdGBINC80L7QttC10LvQsCDQtNCwINC4 0LfQs9C70LXQtNCwINC80L3QvtCz0YMsINC80L3QvtCz0YMg0L/QvtC40L3QsNC60YMuINCS0L4g DQogICAgICAgICAgICDQvdC10LrQvtC70LrRgyDQv9GA0L7QtNC+0LvQttC10L3QuNGY0LAg0ZzQ tSDQstC4INCz0L4g0L/RgNC10L3QtdGB0LXQvNC1INC90LDRiNC40L7RgiDQuNC30LHQvtGAINC9 0LAg0L3QsNGY0LPQvtC70LXQvNC40YLQtSANCiAgICAgICAgICAgINC80LDQutC10LTQvtC90YHQ utC4INC80LjRgdGC0LXRgNC40Lg8L1NUUk9ORz48L0VNPjwvVEQ+PC9UUj48L1RCT0RZPjwvVEFC TEU+DQogICAgICA8UD48QlI+PEJSPjxCUj48QlI+0JzQuNGI0LUg0JrQsNGA0LXQsiwg0LLQvdGD 0Log0L3QsCDQndC40LrQvtC70LAg0JrQsNGA0LXQsiDQvtC0INCx0YDQsNGC0L7RgiDQg9C+0YDQ s9C4LCDQstC+IA0KICAgICAg0YHQstC+0LXRgtC+INGB0LLQtdC00L7RiNGC0LLQviDQv9GA0LXQ tCDQvdC10LrQvtC70LrRgyDQs9C+0LTQuNC90Lgg0YLQstGA0LTQtdGI0LUg0LTQtdC60LAg0L/R gNC+0LHQu9C10LzQuNGC0LUg0L3QsCANCiAgICAgINGB0LXQvNC10ZjRgdGC0LLQvtGC0L4g0JrQ sNGA0LXQstC4INGB0L4g0LrQvtC80YPQvdC40YHRgtC40YfQutCw0YLQsCDQstC70LDRgdGCINC9 0LAg0JzQsNC60LXQtNC+0L3QuNGY0LAg0LfQsNC/0L7Rh9C90LDQu9C1INCy0LXQtNC90LDRiCAN CiAgICAgINC/0L4g0L7RgdC70L7QsdC+0LTRg9Cy0LDRmtC10YLQviwg0LrQvtCz0LAg0LHQtdC3 INC90LjQutCw0LrQstC4INC00L7QutCw0LfQuCwg0LLQviDQvNC+0L3RgtC40YDQsNC9INGB0YPQ tNGB0LrQuCDQv9GA0L7RhtC10YEsINCx0LjQuyANCiAgICAgINC+0YHRg9C00LXQvSDQuCDQt9Cw 0YLQstC+0YDQtdC9INC/0L7QvNCw0LvQuNC+0YIg0LHRgNCw0YIg0L3QsCDQndC40LrQvtC70LAg LSDQg9C+0YDRk9C4INCa0LDRgNC10LIuINCf0L7QtNC+0YbQvdCwLCDRgtC+0Zgg0LUgDQogICAg ICDQu9C40LrQstC40LTQuNGA0LDQvSDQstC+IOKAntCY0LTRgNC40LfQvtCy0L7igJwg0L3QsCDR gdCw0LzQviDQvdC10LrQvtC70LrRgyDQtNC10L3QsCDQv9GA0LXQtCDQuNC30LvQtdCz0YPQstCw 0ZrQtSwg0L7QtNC90L7RgdC90L4gDQogICAgICDQv9GA0LXQtCDQt9Cw0LLRgNGI0YPQstCw0ZrQ tSDQvdCwINC60LDQt9C90LDRgtCwLCDQsCDQs9GA0L7QsdC+0YIg0L3QtSDQvNGDINGB0LUg0LfQ vdCw0LUg0LTQviDQtNC10L0g0LTQtdC90LXRgS4gDQogICAgICA8QlI+PEJSPtCc0LjRiNC1LCDQ utCw0LrQviDRiNC10YHQvdCw0LXRgdC10YLQs9C+0LTQuNGI0L3QviDQvNC+0LzRh9C1LCDQv9GA 0LjRgdGD0YHRgtCy0YPQstCw0Lsg0L3QsCDRgdGD0LTQtdGa0LXRgtC+INC90LAgDQogICAgICDR gtCw0YLQutC+INC80YMg0IPQvtGA0LPQuCDQstC+IDE5NDUg0LPQvtC00LjQvdCwLiDQodC10LTQ tdC7INCy0L4g0L/RgNCy0LDRgtCwINC60LvRg9C/0LAsINCwINGB0YPQtNC40ZjQsCDQsdC40Lsg 0L3QtdC60L7RmCANCiAgICAgINCa0LDQu9Cw0ZjRn9C40YHQutC4INC+0LQg0JrQsNCy0LDQtNCw 0YDRhtC4LiDQndCwINCD0L7RgNCz0Lgg0LzRgyDRgdC1INGB0YPQtNC10LvQviDQt9CwINGB0L7R gNCw0LHQvtGC0LrQsCDRgdC+INCx0YPQs9Cw0YDRgdC60LjQvtGCIA0KICAgICAg0L7QutGD0L/Q sNGC0L7RgCDQt9CwINCy0YDQtdC80LUg0L3QsCDQktGC0L7RgNCw0YLQsCDRgdCy0LXRgtGB0LrQ sCDQstC+0ZjQvdCwLiA8QlI+PEJSPuKAntCi0LDRgtC60L4g0LzQuCDQvdC40LrQvtCz0LDRiCDQ vdC1IA0KICAgICAg0LHQuNC7INCy0L4g0YLQsNC60LLQsCDRgdC70YPQttCx0LAsINC90LjRgtGD INC/0LDQuiDQvdC10LrQvtGYINC+0LQg0L3QsNGBLCDQvdC10LPQvtCy0LjRgtC1INGB0LXQtNGD 0Lwg0LTQtdGG0LAsIA0KICAgICAg0YfQu9C10L3Rg9Cy0LDQstC80LUg0LLQviDQvdC10LrQvtGY 0LAg0L7QtCDRgtC+0LPQsNGI0L3QuNGC0LUg0LHRg9Cz0LDRgNGB0LrQuCDQutCy0LjRgdC70LjQ vdGI0LrQuCDQvtGA0LPQsNC90LjQt9Cw0YbQuNC4LiDQodC1IA0KICAgICAg0YHQtdGc0LDQstCw 0Lwg0L3QsCDQtdC00LXQvSDQtNC10YLQsNGZINC+0LQg0YHRg9C00LXRmtC10YLQviDRiNGC0L4g 0LzQuCDQvtGB0YLQsNC90LAg0LfQsNGB0LXQutC+0LPQsNGIINCy0L4g0LTRg9GI0LDRgtCwLiDQ mtCw0LrQviANCiAgICAgINGB0LLQtdC00L7Quiwg0L/RgNC+0YLQuNCyINGC0LDRgtC60L4g0LzQ uCwg0LHQtdGI0LUg0L/QvtCy0LjQutCw0L0g0LHRg9Cz0LDRgNGB0LrQuNC+0YIg0L/QvtC70LjR htC40YHQutC4INC90LDRh9Cw0LvQvdC40Log0JLQtdC90LXQsiwgDQogICAgICDQutC+0Zgg0LfQ sCDQstGA0LXQvNC1INC90LAg0L7QutGD0L/QsNGG0LjRmNCw0YLQsCDQsdC10YjQtSDQvdCwINGB 0LvRg9C20LHQsCDQstC+INCa0YDRg9GI0LXQstC+LiDQntC90LjQtSDRiNGC0L4g0LPQviANCiAg ICAgINC80L7QvdGC0LjRgNCw0LAg0YHQu9GD0YfQsNGY0L7RgiDQt9CwINC90LDQstC+0LTQvdCw INGB0L7RgNCw0LHQvtGC0LrQsCDQvdCwINGC0LDRgtC60L4g0LzQuCDRgdC+INCx0YPQs9Cw0YDR gdC60LjRgtC1IA0KICAgICAg0L7QutGD0L/QsNGC0L7RgNC4LCDRgdC80LXRgtCw0LAg0LTQtdC6 0LAg0YHQstC10LTQvtGH0LXRmtC10YLQviDQvdCwINCS0LXQvdC10LIg0YHQvtGB0LXQvNCwINGc 0LUg0LPQviDQt9Cw0LrQvtC/0LAuINCd0L4sINC30LAgDQogICAgICDQvdC40LLQvdCwINC90LXR gdGA0LXRnNCwLCDQktC10L3QtdCyINGB0LUg0LTRgNC20LXRiNC1INC00L7RgdGC0L7QuNC90YHR gtCy0LXQvdC+INC4INGB0LDQvNC+INGA0LXRh9C1OiDigJjQndC10LzQsNC8INGI0YLQviDQtNCw IA0KICAgICAg0LrQsNC20LDQvCDQt9CwINCD0L7RgNGT0LgsINC90L4g0ZzQtSDQutCw0LbQsNC8 INC30LAg0LrQvtC00L7RiNC40YLQtSHigJkg0JLQviDRgtC+0Zgg0LzQvtC80LXQvdGCINGB0LvR g9C20LHQtdC90LjQutC+0YIg0L3QsCANCiAgICAgINCe0JfQndCQINCT0L7Qs9CwINCP0LDRn9C+ INCz0L4g0YHQstC70LXRh9C60LAg0L3QsCDRgdGC0L7Qu9GH0LXRgtC+INC4INC90LUg0LzRgyDQ tNC+0LfQstC+0LvQuCDQtNCwINCz0Lgg0LrQsNC20LUg0LrQvtC00L7RiNC40YLQtSANCiAgICAg INCy0L4g0JrRgNGD0YjQtdCy0L4uINCd0LDQsdGA0LPRgyDQv9C+0YLQvtCwINCS0LXQvdC10LIg 0LPQviDQu9C40LrQstC40LTQuNGA0LDQsCwg0LfQsCDQtNCwINC90LUg0LPQuCDQvtGC0LrRgNC4 0LUgDQogICAgICDQstC40YHRgtC40L3RgdC60LjRgtC1INGB0L7RgNCw0LHQvtGC0L3QuNGG0Lgg 0L3QsCDQkdGD0LPQsNGA0LjRgtC1LCDQvtC0INC60L7QuCDQvdC10LrQvtC4INCy0LXRnNC1INC3 0LDQt9C10LzQsNCwINCy0LDQttC90Lgg0LzQtdGB0YLQsCANCiAgICAgINCy0L4g0L3QvtCy0LDR gtCwINCy0LvQsNGB0YIuINCf0L7QtCDQu9Cw0LbQvdC4INC+0LHQstC40L3QtdC90LjRmNCwINGC 0LDRgtC60L4g0LzQuCDQsdC10YjQtSDQvtGB0YPQtNC10L0g0L3QsCDRgdC80YDRgiwg0L3QviAN CiAgICAgINGB0LDQvNC+INC/0L4g0YHQtdC00YPQvC3QvtGB0YPQvCDQtNC10L3QsCDRgdC80YDR gtC90LDRgtCwINC60LDQt9C90LAg0LzRgyDQsdC10YjQtSDQt9Cw0LzQtdC90LXRgtCwINGB0L4g 0L/QtdGCINCz0L7QtNC40L3QuCANCiAgICAgINC30LDRgtCy0L7RgC4g0J/RgNC10LQg0LTQsCDQ uNC30LvQtdC30LUg0L7QtCDQt9Cw0YLQstC+0YAg0LPQviDQu9C40LrQstC40LTQuNGA0LDQsCDQ uNGB0YLQuNGC0LUg0L7QvdC40LUg0YjRgtC+INC80YMg0LPQviANCiAgICAgINC80L7QvdGC0LjR gNCw0LAg0Lgg0YHRg9C00YHQutC40L7RgiDQv9GA0L7RhtC10YHigJwsINC40Lwg0YDQsNGB0LrQ sNC20YPQstCw0YjQtSDQv9GA0LXQtCDQvdC10LrQvtC70LrRgyDQs9C+0LTQuNC90Lgg0JzQuNGI 0LUg0JrQsNGA0LXQsiANCiAgICAgINC/0YDQtdC0INCw0LLRgtC+0YDQvtGCINC90LAg0L7QstC4 0LUg0YDQtdC00L7QstC4INC4INC90LAg0LrQvtC70LXQs9Cw0YLQsCDQkdC70LDQttC1INCc0LjQ vdC10LLRgdC60LguIA0KICAgICAgPEJSPjxCUj48QlI+PFNUUk9ORz7Qn9C70LjRgtC+0Log0LPR gNC+0LE8L1NUUk9ORz4gPEJSPjxCUj48QlI+0JXQtNC10L0g0LfQsNGC0LLQvtGA0LXQvdC40Los IA0KICAgICAg0JDQu9Cx0LDQvdC10YYsINCV0LzQuNC9INCg0L7RiNC4LCDQvNC90L7Qs9GDINCz 0L7QtNC40L3QuCDQv9C+0LTQvtGG0L3QsCDQvNGDINC60LDQttGD0LLQsNC7INC00LXQutCwINCD 0L7RgNCz0Lgg0LHQuNC7IA0KICAgICAg0L/QvtCz0YDQtdCx0LXQvSDQvdCw0LHRgNC30LjQvdCw INCy0L4g0L3QtdC60LDQutCy0Lgg0YLQsNGY0L3QuCDQt9Cw0YLQstC+0YDRgdC60Lgg0LPRgNC+ 0LHQuNGI0YLQsCwg0L3QviDQs9GA0L7QsdC+0YIg0LHQuNC7IA0KICAgICAg0L/Qu9C40YLQvtC6 LCDQv9CwINC80YMg0YHQtSDQs9C70LXQtNCw0LvQtSDRgNCw0YbQtdGC0LUg0Lgg0L3QvtC30LXR gtC1INC90LDQtCDQt9C10LzRmNCw0YLQsC4g0J3QtdC60L7RmCDQvtC0IA0KICAgICAg0L3QsNC0 0LfQvtGA0L3QuNGG0LjRgtC1INC40Lwg0L3QsNGA0LXQtNC40Lsg0L3QsCDQtNCy0LDRmNGG0LAg 0LfQsNGC0LLQvtGA0LXQvdC40YbQuCDQtNCwINC80YMg0LPQuCDQuNGB0LrRgNGI0LDRgiDRgNCw 0YbQtdGC0LUg0LggDQogICAgICDQvdC+0LfQtdGC0LUg0LfQsCDQtNCwINC/0YDQvtC/0LDQtNC9 0LDRgiDQv9C+0LQg0LfQtdC80ZjQsNGC0LAsINC00LAg0YHQtSDQv9C+0LrRgNC40ZjQsNGCLiA8 QlI+PEJSPjxJTUcgDQogICAgICBoZWlnaHQ9MzEwIGFsdD0iICIgaHNwYWNlPTUgDQogICAgICBz cmM9Im1odG1sOmh0dHA6Ly93d3cubWFrZWRvbnNrb3NvbmNlLmNvbS9QSVJJTi9hcmhpdmEtbmFw aXNpIFBpcmluLzIwMTAvMDIvMjMvTk9WQU1BSy1LQVJFVi5taHQhaHR0cDovL3d3dy5ub3ZhbWFr ZWRvbmlqYS5jb20ubWsvVXBsb2Fkcy9JbWFnZS8yMDEwL0ZFVlJVQVJJL2thcmV2LmpwZyIgDQog ICAgICB3aWR0aD0yMjAgYWxpZ249cmlnaHQgdnNwYWNlPTU+0JjQvdCw0LrRgywg0IPQvtGA0LPQ uCwg0LrQsNC60L4g0YjQtdGB0L3QsNC10YHQtdGC0LPQvtC00LjRiNC90L4g0LzQvtC80YfQtSAN CiAgICAgINGD0YfQtdGB0YLQstGD0LLQsNC7INCy0L4g0JjQu9C40L3QtNC10L3RgdC60L7RgtC+ INCy0L7RgdGC0LDQvdC40LUg0LLQviDQsdC+0YDQsdCw0YLQsCDQutCw0Zgg0LzQtdGB0L3QvtGB 0YLQsCDQodC70LjQstCwLCDQsCANCiAgICAgINC/0L7RgdGC0LDRgNC40L7RgiDQsdGA0LDRgiDQ vdCwINCd0LjQutC+0LvQsCwg0J/QtdGC0YDRg9GILCDQsdC40Lsg0YfQu9C10L0g0L3QsCDQqNGC 0LDQsdC+0YIg0L3QsCDQutGA0YPRiNC10LLRgdC60LjRgtC1IA0KICAgICAg0LLQvtGB0YLQsNC9 0LjRhtC4LiDQodC+INGC0L7QsCwg0IPQvtGA0LPQuCDQsdC40Lsg0YPRh9C10YHQvdC40Log0Lgg 0YHQstC10LTQvtC6INC90LAg0LHQuNGC0LrQsNGC0LAg0YjRgtC+INC30LAg0LzQvdC+0LPRg9C8 0LjQvdCwIA0KICAgICAg0LUg0L/QvtC10L/RgdC60LAsINC90L4g0Lgg0L/QvtGB0YPRgNC+0LLQ sCDQuCDQvtC0INGC0LDQsCDQvdCwINCc0LXRh9C60LjQvSDQmtCw0LzQtdC9LCDQsCDQn9C10YLR gNGD0YgsINC80LXRk9GDINC00YDRg9Cz0L7RgtC+LCANCiAgICAgINCx0LjQuyDRgdCy0LXQtNC+ 0Log0Lgg0L3QsCDQv9C+0YHQu9C10LTQvdCw0YLQsCDRgNCw0YHQv9GA0LDQstCwINC/0L7QvNC1 0ZPRgyDQndC40LrQvtC70LAg0JrQsNGA0LXQsiDQuCDQn9C40YLRgyDQk9GD0LvQuCwg0L/RgNC1 0LQgDQogICAgICDQstGC0L7RgNC40L7RgiDQtNCwINGC0YDQs9C90LUg0LrQvtC9INGB0LLQvtGY 0LDRgtCwINC/0L7RgdC70LXQtNC90LAg0LHQuNGC0LrQsC4g0KHQtdC80LXRmNGB0YLQstC+0YLQ viDQmtCw0YDQtdCy0Lgg0LLQviDQsdC+0YDQsdC40YLQtSANCiAgICAgINC30LAg0L7RgdC70L7Q sdC+0LTRg9Cy0LDRmtC1INC90LAg0JzQsNC60LXQtNC+0L3QuNGY0LAg0LjQvNCwINC00LDQtNC1 0L3QviDRgdC10LTRg9C8INC20YDRgtCy0LgsINCy0L7RmNCy0L7QtNC4INC4INC+0LHQuNGH0L3Q uCANCiAgICAgINCx0L7RgNGG0LguINCYINC/0L7QutGA0LDRmCDRgtC+0LAsINGH0YPQtNC90LDR gtCwINC+0LzRgNCw0LfQsCDQutC+0L0g0JrQsNGA0LXQstC4LCDRgdC/0L7RgNC10LQg0JzQuNGI 0LUsINGC0YDQsNC10LvQsCDRgdC+IA0KICAgICAg0LPQvtC00LjQvdC4LCDQv9CwINC30LDRgtC+ 0LAg0LTRg9GA0Lgg0Lgg0LrQvtGB0LrQuNGC0LUg0L3QsCDQndC40LrQvtC70LAg0JrQsNGA0LXQ siDQt9Cw0LLRgNGI0LjRmNCwINC/0L7RgtGC0YPRgNC90LDRgtC4INC/0L7QtCANCiAgICAgINGB 0LrQsNC70LjRgtC1INC90LAg0YHQv9C+0LzQtdC90LjQutC+0YIg4oCe0JzQsNC60LXQtNC+0L3Q uNGD0LzigJwg0L3QsCDQk9GD0LzQtdGa0LAuIDxCUj48QlI+0JrQvtCz0LAg0L/QviDQstC+0ZjQ vdCw0YLQsCDQstC+IA0KICAgICAg0JrRgNGD0YjQtdCy0L4g0YHQtSDRgdC70LDQstC10LvQviDQ mNC70LjQvdC00LXQvdGB0LrQvtGC0L4g0LLQvtGB0YLQsNC90LjQtSDQuCDQmtGA0YPRiNC10LLR gdC60LDRgtCwINCg0LXQv9GD0LHQu9C40LrQsCwgDQogICAgICDRhtC10L3RgtGA0LDQu9C90LDR gtCwINCy0LvQsNGB0YIsINCwINC/0YDQtdC0INGBw6kg0LvQvtC60LDQu9C90LjRgtC1INC/0L7R gdC70YPRiNC90LjRhtC4LCDRgNC10YfQuNGB0Lgg0YDQtdC00L7QstC90L4g0YHQtSANCiAgICAg INC/0L7Qs9GA0LjQttGD0LLQsNC70LUg0YHQtdC80LXRmNGB0YLQstC+0YLQviDQmtCw0YDQtdCy 0Lgg0LTQsCDQsdC40LTQtSDQv9C+0L3QsNGB0YLRgNCw0L3QsCDQvtC0INC/0YDQvtGB0LvQsNCy 0LDRgtCwLCDQvtGB0L7QsdC10L3QviANCiAgICAgINC+0LQg0LPQu9Cw0LLQvdCw0YLQsCDQsdC4 0L3QsC4g0KHQv9C+0YDQtdC0INGB0LXRnNCw0LLQsNGa0LDRgtCwINC90LAg0JzQuNGI0LUsINC9 0LAg0L/RgNCy0LDRgtCwINC/0YDQvtGB0LvQsNCy0LAg0L3QsCDQmNC70LjQvdC00LXQvSANCiAg ICAgINC/0L4g0L7RgdC70L7QsdC+0LTRg9Cy0LDRmtC10YLQviwg0L/QvtGB0YLQsNGA0LjQvtGC INCx0YDQsNGCINC90LAg0J3QuNC60L7Qu9CwINCa0LDRgNC10LIsINCf0LXRgtGA0YPRiCwg0LHQ uNC7INC/0L7QutCw0L3QtdGCINC90LAgDQogICAgICDRgdCy0LXRh9C10L3QvtGB0YLQsC4gPEJS PjxCUj48QlI+PFNUUk9ORz7Qn9C10YHQvtGH0L3QviDQvtGB0YLRgNC+0LLRh9C1PC9TVFJPTkc+ IA0KICAgICAgPEJSPjxCUj48QlI+4oCe0JTQvtGY0LTQvtCwINC90LXQutC+0Lgg0LvRg9GT0LUg 0Lgg0LPQviDQv9C+0LrQsNC90LjRmNCwINC00LAg0L7RgtC40LTQtSDQvdCwINC/0YDQvtGB0LvQ sNCy0LDRgtCwLiDQk9C+IA0KICAgICAg0LLQuNC60L3QsNCwINC00YPRgNC4INC4INC00LAg0YHQ tSDQutCw0YfQuCDQvdCwINCx0LjQvdCw0YLQsC4g0KLQsNC80YMg0LHQtdCwINGB0LjRgtC1INGC 0L7Qs9Cw0YjQvdC4INCy0YDQstC90LggDQogICAgICDRgNCw0LrQvtCy0L7QtNC40YLQtdC70Lgu INCc0LXRk9GD0YLQvtCwLCDQutC+0LPQsCDQvdC10LrQvtGYINC+0LQg0L3QuNCyINC30LDQsdC1 0LvQtdC20LDQuyDQtNC10LrQsCDQvdCwINCx0LjQvdCw0YLQsCDQtSDQuCANCiAgICAgINCf0LXR gtGA0YPRiCwg0LHRgNCw0YLQvtGCINC90LAg0J3QuNC60L7Qu9CwINCa0LDRgNC10LIsINCy0LXQ tNC90LDRiCDQvdCw0YDQtdC00LjQuyDQtNCwINCz0L4g0YHQuNC80L3QsNGCINC00L7Qu9GDLiDQ mCDQs9C+IA0KICAgICAg0YHQuNC80L3QsNCwINGB0YDQtdC00LUg0L/RgNC+0YHQu9Cw0LLQsC4g 0JrQvtCz0LAg0LfQsNCy0YDRiNC4INC/0YDQvtGB0LvQsNCy0LDRgtCwLCDQv9C+0LLRgtC+0YDQ vdC+INC/0YDQtdC60YMg0L/QvtGB0YDQtdC00L3QuNGG0LggDQogICAgICDQsdC10YjQtSDQv9C+ 0LrQsNC90LXRgiDQtNCwINC+0LTQuCDQvdCwINGB0LLQtdGH0LXQvSDRgNGD0YfQtdC6LiDQnNC4 INC60LDQttCwINC00LXQutCwINCz0L4g0LrQsNC90LDRgiwg0LAg0ZjQsNGBINC80YMg0YDQtdC6 0L7QsiANCiAgICAgINC00LAg0L3QtSDQvtC00LgsINC+0YLQuCDQv9C+0LLRgtC+0YDQvdC+INGc 0LUg0YHQuCDQuNCz0YDQsNCw0YIg0YHQviDQvdC10LPQviwg0ZzQtSDQs9C+INC+0LzQsNC70L7Q stCw0LbRg9Cy0LDQsNGCINC4IA0KICAgICAg0L/QvtGC0YbQtdC90YPQstCw0LDRgi4g0KLQvtGY INGB0LUg0YHQvtCz0LvQsNGB0Lgg0YHQviDQvNC10L3QtSwg0L3QviDQv9C+INC40LfQstC10YHQ vdC+INCy0YDQtdC80LUg0L/QvtCy0YLQvtGA0L3QviDQtNC+0ZjQtNC+0LAgDQogICAgICDQs9C7 0LDRgdC90LjRhtC40YLQtSwg0Lgg0YfQuNGH0LrQviDQn9C10YLRgNGD0Ygg0LzQvtGA0LDRiNC1 INC00LAg0YLRgNCz0L3QtSDRgdC+INC90LjQsi4g0KHQsNC80L4g0YjRgtC+INGB0YLQuNCz0L3Q sNC7LCDRmNCwIA0KICAgICAg0LrRgNC10L3QsNC7INGH0LDRiNCw0YLQsCDQt9CwINC00LAg0L3Q sNC30LTRgNCw0LLQuCwg0L3QtdC60L7RmCDQvtC0INC/0L7Qu9C40YLQuNGH0LDRgNC40YLQtSDQ vdCw0YDQtdC00LjQuyDQtNCwINCz0L4gDQogICAgICDQvtGC0YHRgtGA0LDQvdCw0YIg0L7QtCDQ vNCw0YHQsNGC0LAuINCn0LjRh9C60L4g0LzQuCDRgdC4INC00L7RmNC00LUg0L/QvtGB0YDQsNC8 0LXQvSDQuCDRgdC+INGB0L7Qu9C30Lgg0LLQviDQvtGH0LjRgtC1LiDQmCANCiAgICAgINC90LjQ utC+0LPQsNGIINCy0LXRnNC1INC90LUg0L7RgtC40LTQtSDQvdCwINC/0YDQvtGB0LvQsNCy0LAg 0L3QsCDQmNC70LjQvdC00LXQvdGB0LrQvtGC0L4g0LLQvtGB0YLQsNC90LjQteKAnCwg0YHQstC1 0LTQvtGH0LXRiNC1IA0KICAgICAg0JzQuNGI0LUg0JrQsNGA0LXQsiwg0LrQvtGYLCDQutCw0LrQ viDRiNGC0L4g0YHRgtC+0Lgg0LLQviDQvdC10LPQvtCy0L7RgtC+INC/0L7Qu9C40YbQuNGB0LrQ viDQtNC+0YHQuNC1LCDRg9GI0YLQtSDQvtC0IDE5NTEgDQogICAgICDQs9C+0LTQuNC90LAg0LHQ uNC7INGB0LvQtdC00LXQvSDQvtC0INCe0JfQndCQINC+0LTQvdC+0YHQvdC+INCj0JTQkdCQLCDQ sCDQv9C+0LTQvtGG0L3QsCDQvtC00LvQtdC20LDQuyDQuCAxOCDQvNC10YHQtdGG0LggDQogICAg ICDQt9Cw0YLQstC+0YAg0LfQsCDQuNC00LXRmNCw0YLQsCDQt9CwINGB0LDQvNC+0YHRgtC+0ZjQ vdCwINC4INC90LXQt9Cw0LLQuNGB0L3QsCDQnNCw0LrQtdC00L7QvdC40ZjQsC4gPEJSPjxCUj7Q ndCw0ZjRgdGC0LDRgNC40L7RgiANCiAgICAgINCx0YDQsNGCINC90LAg0L/RgNC10YLRgdC10LTQ sNGC0LXQu9C+0YIg0L3QsCDQmtGA0YPRiNC10LLRgdC60LDRgtCwINCg0LXQv9GD0LHQu9C40LrQ sCwg0J/QtdGC0YDRg9GIINCa0LDRgNC10LIsINGD0YHQv9C10LDQuyDQtNCwINCz0LggDQogICAg ICDQvdCw0LTQttC40LLQtdC1INC00LLQsNGY0YbQsNGC0LAg0YHQstC+0Lgg0LHRgNCw0ZzQsCDQ uCDQv9C+0LrRgNCw0Zgg0YHQuNGC0LUg0LzQsNC70YLRgNC10YLQuNGA0LDRmtCwINC4INCz0L7Q u9Cz0L7RgtC4INGI0YLQviDQs9C4IA0KICAgICAg0L/QvtC80LjQvdCw0Lsg0LLQviDQttC40LLQ vtGC0L7Rgi4g0KPQvNGA0LXQuyDQstC+IDE5Njgg0LPQvtC00LjQvdCwLiDQodC/0L7RgNC10LQg 0LLQvdGD0LrQvtGCINCc0LjRiNC1INCa0LDRgNC10LIsIA0KICAgICAg0YHRgtCw0YDQtdGG0L7R giDRgdC4INC30LDQvNC40L3QsNC7INC+0LQg0L7QstC+0Zgg0YHQstC10YIg0YHQviDQs9C+0LvQ tdC80LAg0LHQvtC70LrQsCDQstC+INC00YPRiNCw0YLQsCDQv9C+0YDQsNC00LggDQogICAgICDQ vdC10LTQvtGB0YLQvtC40L3RgdGC0LLQtdC90LjQvtGCINC4INC/0L7QvdC40LbRg9Cy0LDRh9C6 0Lgg0L7QtNC90L7RgSDQvdCwINC80LDQutC10LTQvtC90YHQutCw0YLQsCDQstC70LDRgdGCINC6 0L7QvSDQsdGA0LDRgiDQvNGDIA0KICAgICAg0J3QuNC60L7Qu9CwLCDQvdC+INC4INC/0L7RgNCw 0LTQuCDRgdGD0LTQsdC40L3QsNGC0LAg0L3QsCDQg9C+0YDQs9C4LCDQutC+0Zgg0LHQtdGI0LUg 0YPQsdC40LXQvSDQvtC0INCy0LvQsNGB0YLQuNGC0LUg0L3QsCANCiAgICAgINC80LDQutC10LTQ vtC90YHQutCw0YLQsCDQtNGA0LbQsNCy0LAsINC30LAg0LrQvtGY0LAg0YbQtdC70L7RgtC+INGB 0LXQvNC10ZjRgdGC0LLQviDRgdC+INC00LXRhtC10L3QuNC4INGB0LUg0LHQvtGA0LXQu9C+LiAN CiAgICAgIDxCUj48QlI+0J3QtdC60L7QuCDRgtCy0YDQtNC10ZrQsCDRg9C/0LDRgtGD0LLQsNCw 0YIg0L3QsCDRgtC+0LAg0LTQtdC60LAg0LLQviDQstGA0LXQvNC10YLQviDQutC+0LPQsCDQg9C+ 0YDQs9C4INC1IA0KICAgICAg0LvQuNC60LLQuNC00LjRgNCw0L0sINC90LAg0YHRgNC10LTQuNC9 0LDRgtCwINC90LAg0YDQtdC60LDRgtCwINCS0LDRgNC00LDRgCDQutC+0ZjQsCDQvNC40L3Rg9Cy 0LAg0LHQu9C40LfRgyDQt9Cw0YLQstC+0YDQvtGCIA0KICAgICAg0JjQtNGA0LjQt9C+0LLQviwg 0YHQtSDQvdCw0L7Rk9Cw0Lsg0LzQsNC7INC/0LXRgdC+0YfQtdC9INC+0YHRgtGA0L7QsiDQuCDQ tNC10LrQsCDQtSDQvNC+0LbQvdC+INGC0LDQvNGDINC00LAg0LHQuNC70LUgDQogICAgICDQt9Cw 0LrQvtC/0LDQvdC4INGD0LHQuNC10L3QuNGC0LUg0LfQsNGC0LLQvtGA0LXQvdC40YbQuCDQt9Cw INC60L7QuCDQstC70LDRgdGC0LjRgtC1INGB0LDQutCw0LvQtSDQtNCwINC40Lwg0YHQtSDQuNC3 0LPRg9Cx0LggDQogICAgICDRgtGA0LDQs9C+0YIuINCf0L7QtNC+0YbQvdCwINGA0LXQutCw0YLQ sCDQs9C+INC+0LTQvdC10LvQsCDQvNCw0LvQvtGC0L4g0L7RgdGC0YDQvtCy0YfQtSDQuCDRgdC+ INGC0L7QsCDQvtC90LXQstC+0LfQvNC+0LbQuNC70LAg0LTQsCANCiAgICAgINGB0LUg0L7RgtC6 0YDQuNC1INC00LDQu9C4LCDQvNC10ZPRgyDQtNGA0YPQs9C40YLQtSwg0YLQsNC80YMg0YHQtSDQ uCDQutC+0YHQutC40YLQtSDQvdCwINCD0L7RgNCz0Lgg0JrQsNGA0LXQsi4gPC9QPg0KICAgICAg PFA+PFNUUk9ORz4o0KPRgtGA0LU6INCT0YDQvtCx0L3QuNGG0LAg0L3QsCDQkNC70LXQutGB0LDQ vdC00LDRgCANCiAgICAgINCc0LDQutC10LTQvtC90YHQutC4KTwvU1RST05HPjxCUj48QlI+PEJS PjwvUD48QlI+DQogICAgICA8VEFCTEUgc3R5bGU9IkJBQ0tHUk9VTkQtQ09MT1I6ICNmNWY0ZjQi IGNlbGxTcGFjaW5nPTAgY2VsbFBhZGRpbmc9NSANCiAgICAgIHdpZHRoPSIxMDAlIiBib3JkZXI9 MD4NCiAgICAgICAgPFRCT0RZPg0KICAgICAgICA8VFI+DQogICAgICAgICAgPFREPjxTVFJPTkc+ 0JPQviDQstC40LTQvtCyINCD0L7RgNCz0Lgg0LrQsNC60L4g0LPRgNCw0LTQuNC90LDRgCDQutCw 0ZggDQogICAgICAgICAgICDQmtC+0LvQuNGI0LXQstGB0LrQuDwvU1RST05HPjxCUj48QlI+PElN RyBoZWlnaHQ9MTk3IGFsdD0iICIgaHNwYWNlPTUgDQogICAgICAgICAgICBzcmM9Im1odG1sOmh0 dHA6Ly93d3cubWFrZWRvbnNrb3NvbmNlLmNvbS9QSVJJTi9hcmhpdmEtbmFwaXNpIFBpcmluLzIw MTAvMDIvMjMvTk9WQU1BSy1LQVJFVi5taHQhaHR0cDovL3d3dy5ub3ZhbWFrZWRvbmlqYS5jb20u bWsvVXBsb2Fkcy9JbWFnZS8yMDEwL0ZFVlJVQVJJL3BldGFyLmpwZyIgDQogICAgICAgICAgICB3 aWR0aD0xNTAgYWxpZ249bGVmdCB2c3BhY2U9NT7QntGB0YPQvNC00LXRgdC10YIg0Lgg0L7RgdGD 0LzQs9C+0LTQuNGI0L3QuNC+0YIg0J/QtdGC0LDRgCANCiAgICAgICAgICAgINCU0LDQvNGH0LXR gdC60Lgg0L7QtCDQn9GA0LjQu9C10L8sINC/0LXQvdC30LjQvtC90LjRgNCw0L0g0L/QvtC70LjR htC40YHQutC4INC60L7QvNCw0L3QtNC40YAsINGB0L4g0LrQvtCz0L4g0LvQsNC90LgsINC/0L4g DQogICAgICAgICAgICAxMDYg0LPQvtC00LjQvdC4INC+0LQg0LLQvtGB0YLQsNC90LjQtdGC0L4s INGB0LUg0L7QsdC40LTQvtCy0LzQtSDQtNCwINC+0YLQutGA0LjQtdC80LUg0LrQsNC00LUg0LvQ tdC20LDRgiDQvdC10LrQvtC4IA0KICAgICAgICAgICAg0L7QtCDQt9Cw0LPQuNC90LDRgtC40YLQ tSDQsdC+0YDRhtC4INC90LAg0JzQtdGH0LrQuNC9INCa0LDQvNC10L0sINCy0L4g0LPQvtC00LjQ vdC40YLQtSDQv9C+INCS0YLQvtGA0LDRgtCwINGB0LLQtdGC0YHQutCwIA0KICAgICAgICAgICAg 0LLQvtGY0L3QsCDQuNC30LLQtdGB0L3QviDQstGA0LXQvNC1INCx0LjQuyDQtNC10Lsg0L7QtCDQ vtCx0LXQt9Cx0LXQtNGD0LLQsNGa0LXRgtC+INC90LAg0LLQuNC70LDRgtCwINCy0L4g0LrQvtGY 0LAg0YHQtSANCiAgICAgICAgICAgINC90LDQvtGT0LDQuyDQm9Cw0LfQsNGAINCa0L7Qu9C40YjQ tdCy0YHQutC4LiDQotC+0Zgg0YLQstGA0LTQuCDQtNC10LrQsCDRgtCw0LzRgyDQs9C+INGB0YDQ tdGC0L3QsNC7INCx0YDQsNGC0L7RgiDQvdCwIA0KICAgICAgICAgICAg0J3QuNC60L7Qu9CwINCa 0LDRgNC10LIsINCD0L7RgNCz0LgsINC60L7RmCDQutCw0LrQviDQt9Cw0YLQstC+0YDQtdC90LjQ uiDQsdC40Lsg0LTQvtCy0LXQtNC10L0g0LTQsCDRgNCw0LHQvtGC0Lgg0LLQviANCiAgICAgICAg ICAgINCz0YDQsNC00LjQvdCw0YLQsC4gPEJSPjxCUj7QlNCw0LzRh9C10LLRgdC60LgsINGA0L7Q tNC10L0g0LrRgNGD0YjQtdCy0YfQsNC90LXRhiwg0LLQtdC00L3QsNGIINCz0L4g0L/RgNC10L/Q vtC30L3QsNC7IA0KICAgICAgICAgICAg0IPQvtGA0LPQuCwg0L3QviDQvdC1INGB0LzQtdC10Lsg 0LTQsCDQvNGDINGB0LUg0ZjQsNCy0LguINCf0L4g0L3QtdC60L7Qu9C60YMg0LTQtdC90LAg0LTQ vtC30L3QsNC7INC00LXQutCwINCD0L7RgNCz0LggDQogICAgICAgICAgICDQmtCw0YDQtdCyINC/ 0L7Rh9C40L3QsNC7INCy0L4g0LfQsNGC0LLQvtGA0L7RgiDQstC+INCY0LTRgNC40LfQvtCy0L4u IDxCUj48QlI+0KHQu9C40LrQsNGC0LAg0L3QsCDQsdGA0LDRgtC+0YIg0L3QsCANCiAgICAgICAg ICAgINCd0LjQutC+0LvQsCDQmtCw0YDQtdCyINC60LDQutC+INCy0L4g0LfQsNGC0LLQvtGA0LXQ vdC40YfQutCwINC+0LHQu9C10LrQsCDQs9C4INC/0L7Qu9C10LLQsCDRhtCy0LXRnNC40ZrQsNGC 0LAg0LLQviANCiAgICAgICAgICAgINC00LLQvtGA0L7RgiDQvdCwINCa0L7Qu9C40YjQtdCy0YHQ utC4INC30LDRgdC10LrQvtCz0LDRiCDQvNGDINGB0LUg0LLRgNC10LbQsNC70LAg0LLQviANCiAg ICAgICAg0YHQtdGc0LDQstCw0ZrQtdGC0L4uPC9URD48L1RSPjwvVEJPRFk+PC9UQUJMRT4NCiAg ICAgIDxQPjxTVFJPTkc+PEJSPjwvU1RST05HPjwvUD48L1REPg0KICAgIDxURD4mbmJzcDs8L1RE PjwvVFI+DQogIDxUUj4NCiAgICA8VEQ+Jm5ic3A7PC9URD4NCiAgICA8VEQ+Jm5ic3A7PC9URD48 L1RSPg0KICA8VFI+DQogICAgPFREPg0KICAgICAgPFRBQkxFIGNlbGxTcGFjaW5nPTAgY2VsbFBh ZGRpbmc9MCB3aWR0aD0iMTAwJSIgYWxpZ249Y2VudGVyIGJvcmRlcj0wPg0KICAgICAgICA8VEJP RFk+DQogICAgICAgIDxUUj4NCiAgICAgICAgICA8VEQgdkFsaWduPXRvcCBhbGlnbj1sZWZ0PtCQ 0LLRgtC+0YA6INCU0LDRgNC60L4g0IjQsNC90LXQstGB0LrQuCA8L1REPg0KICAgICAgICAgIDxU RCB2QWxpZ249dG9wIGFsaWduPXJpZ2h0PiZuYnNwOyA8L1REPjwvVFI+PC9UQk9EWT48L1RBQkxF PjwvVEQ+DQogICAgPFREPiZuYnNwOzwvVEQ+PC9UUj4NCiAgPFRSPg0KICAgIDxURD4mbmJzcDs8 L1REPg0KICAgIDxURD4mbmJzcDs8L1REPjwvVFI+DQogIDxUUj4NCiAgICA8VEQgDQogICAgICBz dHlsZT0iQk9SREVSLVRPUDogI2NjY2NjYyAxcHggc29saWQ7IEJPUkRFUi1CT1RUT006ICNjY2Nj Y2MgMXB4IHNvbGlkIj7QktC10YHRgtCwIA0KICAgICAg0LUg0L/RgNC+0YfQuNGC0LDQvdCwOiA8 U1BBTiBpZD1wcm9jaXRhbmk+DQogICAgICA8U0NSSVBUIHR5cGU9dGV4dC9qYXZhc2NyaXB0Pg0K ZGR0bmF2aWdhdGlvbjUoJ05ld3NEZXRhbF9jbWQuYXNwP3Zlc3Q9MjIyMTAxNTU1MzI4JywncHJv Y2l0YW5pJykNCjwvU0NSSVBUPg0KICAgICAgPC9TUEFOPiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsg0J7RhtC10L3QutCwOiA8U1BBTiBpZD1vY2VuZXRpPg0KICAgICAgPFNDUklQ VCB0eXBlPXRleHQvamF2YXNjcmlwdD4NCmRkdG5hdmlnYXRpb241KCdOZXdzT2NlbmthLmFzcD92 ZXN0PTIyMjEwMTU1NTMyOCcsJ29jZW5ldGknKQ0KPC9TQ1JJUFQ+DQogICAgICA8L1NQQU4+PFNQ QU4gaWQ9b2NlbmV0aTE+DQogICAgICA8Rk9STSBpZD1mb3JtUmF0ZSBuYW1lPWZvcm1SYXRlIGFj dGlvbj1OZXdzRGV0YWxfY21kX1JhdGUuYXNwIG1ldGhvZD1wb3N0Pg0KICAgICAgPFRBQkxFIGNl bGxTcGFjaW5nPTAgY2VsbFBhZGRpbmc9MCBib3JkZXI9MD4NCiAgICAgICAgPFRCT0RZPg0KICAg ICAgICA8VFI+DQogICAgICAgICAgPFREIGFsaWduPW1pZGRsZT48SU5QVVQgaWQ9cmF0ZU5ld3Mg DQogICAgICAgICAgICBvbmNsaWNrPSJkZHRmb3Jtc2NsYXNzaWNyZWRpcmVjdCgnTmV3c0RldGFs X2NtZF9SYXRlLmFzcCcsJ29jZW5ldGkxJywnZm9ybVJhdGUnLCdOZXdzT2NlbmthLmFzcD92ZXN0 PTIyMjEwMTU1NTMyOCcsJ29jZW5ldGknKSIgDQogICAgICAgICAgICB0eXBlPXJhZGlvIHZhbHVl PTEgbmFtZT1yYXRlTmV3cz48L1REPg0KICAgICAgICAgIDxURCBhbGlnbj1taWRkbGU+PElOUFVU IGlkPXJhdGVOZXdzIA0KICAgICAgICAgICAgb25jbGljaz0iZGR0Zm9ybXNjbGFzc2ljcmVkaXJl Y3QoJ05ld3NEZXRhbF9jbWRfUmF0ZS5hc3AnLCdvY2VuZXRpMScsJ2Zvcm1SYXRlJywnTmV3c09j ZW5rYS5hc3A/dmVzdD0yMjIxMDE1NTUzMjgnLCdvY2VuZXRpJykiIA0KICAgICAgICAgICAgdHlw ZT1yYWRpbyB2YWx1ZT0yIG5hbWU9cmF0ZU5ld3M+PC9URD4NCiAgICAgICAgICA8VEQgYWxpZ249 bWlkZGxlPjxJTlBVVCBpZD1yYXRlTmV3cyANCiAgICAgICAgICAgIG9uY2xpY2s9ImRkdGZvcm1z Y2xhc3NpY3JlZGlyZWN0KCdOZXdzRGV0YWxfY21kX1JhdGUuYXNwJywnb2NlbmV0aTEnLCdmb3Jt UmF0ZScsJ05ld3NPY2Vua2EuYXNwP3Zlc3Q9MjIyMTAxNTU1MzI4Jywnb2NlbmV0aScpIiANCiAg ICAgICAgICAgIHR5cGU9cmFkaW8gdmFsdWU9MyBuYW1lPXJhdGVOZXdzPjwvVEQ+DQogICAgICAg ICAgPFREIGFsaWduPW1pZGRsZT48SU5QVVQgaWQ9cmF0ZU5ld3MgDQogICAgICAgICAgICBvbmNs aWNrPSJkZHRmb3Jtc2NsYXNzaWNyZWRpcmVjdCgnTmV3c0RldGFsX2NtZF9SYXRlLmFzcCcsJ29j ZW5ldGkxJywnZm9ybVJhdGUnLCdOZXdzT2NlbmthLmFzcD92ZXN0PTIyMjEwMTU1NTMyOCcsJ29j ZW5ldGknKSIgDQogICAgICAgICAgICB0eXBlPXJhZGlvIHZhbHVlPTQgbmFtZT1yYXRlTmV3cz48 L1REPg0KICAgICAgICAgIDxURCBhbGlnbj1taWRkbGU+PElOUFVUIGlkPXJhdGVOZXdzIA0KICAg ICAgICAgICAgb25jbGljaz0iZGR0Zm9ybXNjbGFzc2ljcmVkaXJlY3QoJ05ld3NEZXRhbF9jbWRf UmF0ZS5hc3AnLCdvY2VuZXRpMScsJ2Zvcm1SYXRlJywnTmV3c09jZW5rYS5hc3A/dmVzdD0yMjIx MDE1NTUzMjgnLCdvY2VuZXRpJykiIA0KICAgICAgICAgICAgdHlwZT1yYWRpbyB2YWx1ZT01IG5h bWU9cmF0ZU5ld3M+PC9URD48L1RSPg0KICAgICAgICA8VFI+DQogICAgICAgICAgPFREIGFsaWdu PW1pZGRsZT4xPC9URD4NCiAgICAgICAgICA8VEQgYWxpZ249bWlkZGxlPjI8L1REPg0KICAgICAg ICAgIDxURCBhbGlnbj1taWRkbGU+MzwvVEQ+DQogICAgICAgICAgPFREIGFsaWduPW1pZGRsZT40 PC9URD4NCiAgICAgICAgICA8VEQgYWxpZ249bWlkZGxlPjU8L1REPjwvVFI+PC9UQk9EWT48L1RB QkxFPjxJTlBVVCBpZD12ZXN0IHR5cGU9aGlkZGVuIA0KICAgICAgdmFsdWU9MjIyMTAxNTU1MzI4 IG5hbWU9dmVzdD48L0ZPUk0+PC9TUEFOPjwvVEQ+DQogICAgPFREPiZuYnNwOzwvVEQ+PC9UUj4N CiAgPFRSPg0KICAgIDxURD4mbmJzcDs8L1REPg0KICAgIDxURD4mbmJzcDs8L1REPjwvVFI+DQog IDxUUj4NCiAgICA8VEQ+DQogICAgICA8VEFCTEUgY2VsbFNwYWNpbmc9MCBjZWxsUGFkZGluZz01 IHdpZHRoPTQwMCBib3JkZXI9MD4NCiAgICAgICAgPFRCT0RZPg0KICAgICAgICA8VFI+DQogICAg ICAgICAgPFREIA0KICAgICAgICAgIHN0eWxlPSJCQUNLR1JPVU5ELVBPU0lUSU9OOiBsZWZ0IHRv cDsgQkFDS0dST1VORC1JTUFHRTogdXJsKC4uLy4uLy4uL1VwbG9hZHMvSW1hZ2UvRGVzaWduL1No YWRlcy9ncmV5MTI4MHgzMC5wbmcpOyBCQUNLR1JPVU5ELVJFUEVBVDogcmVwZWF0LXgiPiZuYnNw OyZuYnNwOyZuYnNwOyANCiAgICAgICAgICAgINCe0YHRgtCw0LLQtdGC0LUg0LrQvtC80LXQvdGC 0LDRgDxCUj48L1REPjwvVFI+DQogICAgICAgIDxUUj4NCiAgICAgICAgICA8VEQgDQogICAgICAg ICAgc3R5bGU9IkJPUkRFUi1SSUdIVDogI2NjY2NjYyAxcHggc29saWQ7IEJPUkRFUi1UT1A6ICNj Y2NjY2MgMXB4IHNvbGlkOyBCQUNLR1JPVU5ELUlNQUdFOiB1cmwoLi4vLi4vLi4vVXBsb2Fkcy9J bWFnZS9EZXNpZ24vU2hhZGVzL0dyZXkxMHgyMDAwX1ZlcnQucG5nKTsgQk9SREVSLUxFRlQ6ICNj Y2NjY2MgMXB4IHNvbGlkOyBCT1JERVItQk9UVE9NOiAjY2NjY2NjIDFweCBzb2xpZCI+PFNQQU4g DQogICAgICAgICAgICBpZD1zZW5kRGJUb1hNTD48L1NQQU4+DQogICAgICAgICAgICA8RElWIGlk PWZvcm1Db21lbnRDb250YWluZXI+DQogICAgICAgICAgICA8U0NSSVBUIGxhbmd1YWdlPUphdmFT Y3JpcHQgdHlwZT10ZXh0L2phdmFzY3JpcHQ+DQpkZHRuYXZpZ2F0aW9uNSgnZGR0Q29tcG9uZW50 cy9Db21wb25lbnRzL05ld3MvRm9ybV9FbWFpbC5hc3A/dmVzdD0yMjIxMDE1NTUzMjgnLCdmb3Jt Q29tZW50Q29udGFpbmVyJykNCjwvU0NSSVBUPg0KICAgICAgICAgICAgPC9ESVY+PEJSPjxBIA0K ICAgICAgICAgICAgb25jbGljaz0id2luZG93Lm9wZW4oJ0RlZmF1bHQwMS5hc3A/aWQ9ODEmYW1w O2w9MyZhbXA7cHJpbG9nPTAnLCdQcmF2aWxuaWsnLCd3aWR0aD02MDAsaGVpZ2h0PTQ4MCxsZWZ0 PTEwMCx0b3A9MTAwJyk7cmV0dXJuIGZhbHNlOyIgDQogICAgICAgICAgICBocmVmPSJodHRwOi8v d3d3Lm5vdmFtYWtlZG9uaWphLmNvbS5tay9EZWZhdWx0MDEuYXNwP2lkPTgxJmFtcDtsPTMmYW1w O3ByaWxvZz0wIj7Qn9GA0LDQstC40LvQsCANCiAgICAgICAgICAgINC30LAg0L7QsdGY0LDQstGD 0LLQsNGa0LUg0L3QsCDQutC+0LzQtdC90YLQsNGA0LjRgtC1PC9BPiA8L1REPjwvVFI+PC9UQk9E WT48L1RBQkxFPjwvVEQ+DQogICAgPFREPiZuYnNwOzwvVEQ+PC9UUj4NCiAgPFRSPg0KICAgIDxU RD4mbmJzcDs8L1REPg0KICAgIDxURD4mbmJzcDs8L1REPjwvVFI+DQogIDxUUj4NCiAgICA8VEQ+ DQogICAgICA8U1RZTEUgdHlwZT10ZXh0L2Nzcz4uY29tbWVudHNIZWFkZXIgew0KCUJPUkRFUi1C T1RUT006ICNjY2NjY2MgMXB4IHNvbGlkDQp9DQo8L1NUWUxFPg0KDQogICAgICA8VEFCTEUgY2Vs bFNwYWNpbmc9MCBjZWxsUGFkZGluZz01IHdpZHRoPSIxMDAlIiBib3JkZXI9MD4NCiAgICAgICAg PFRCT0RZPg0KICAgICAgICA8VFI+DQogICAgICAgICAgPFREPjxTVFJPTkc+0KHQtdC90LrQsDwv U1RST05HPjwvVEQ+DQogICAgICAgICAgPFREPiZuYnNwOzwvVEQ+PC9UUj4NCiAgICAgICAgPFRS Pg0KICAgICAgICAgIDxURCBjbGFzcz1jb21tZW50c0hlYWRlciBjb2xTcGFuPTI+0J/RgNC+0LrQ u9C10YLQvdC40YbQuCwg0L/RgNCw0LLQtNCw0YLQsCDQtSDQsdCw0LLQvdCwINCw0LzQsCANCiAg ICAgICAgICAgINC90LUg0LfQsNCx0L7RgNCw0LLQsC7QlNCw0LvQuCDQv9C+INC90LjQsiDQtNCw 0LvQuCDQv9C+INC90LDRmNC80LjQu9C+0YLQviDRgdC10LrQvtCz0LDRiCDRnNC1INC00L7RmNC0 0LUg0L3QsCANCiAgICAgICAgICAgINC90LDQv9C70LDRgtCwLtCi0LDQutCy0Lgg0LfQu9C+0LTQ tdC70LAg0LTQsCDQstGA0YjQuNGIINC4INC80LjRgNC90L4g0LTQsCDRgdC/0LjQtdGILCDRgtCw 0LrQstC4INGG0YDQvdC40LvQsCDQtNCwIA0KICAgICAgICAgICAg0L/RgNCw0LLQuNGIINC/0L4g 0YHQstC+0ZjQvtGCINC90LDRgNC+0LQg0L3QtSDQv9Cw0LzQtdGC0Lgg0LjRgdGC0L7RgNC40ZjQ sNGC0LAsINC80L7QttC10LHQuCDRgdCw0LzQviDQn9C+0Lsg0J/QvtGCINC40LvQuCANCiAgICAg ICAgICAgINCh0YLQsNC70LjQvS7Qm9GD0YHRgtGA0LDRhtC40ZjQsNGC0LAg0ZzQtSDQtNC+0ZjQ tNC1INC00LDQu9C4INC+0LQg0YfQvtCy0LXRh9C60LAg0LTQsNC70Lgg0L7QtCDQsdC+0LbRmNCw INGA0LDQutCwLtCS0L4gDQogICAgICAgICAgICDRhtGA0L3QviDQs9C4INC30LDQstC40ZjQsCDQ uNC70ZjQsNC00L3QuNGG0Lgg0YHQtdC80LXRmNGB0YLQstCwINC/0L4g0JzQsNC60LXQtNC+0L3Q uNGY0LAg0LTQsNC70Lgg0LfQsNGA0LDQtNC4INC60LDRg9C30LDRgtCwIA0KICAgICAgICAgICAg 0LzQsNC60LXQtNC+0L3RgdC60LAg0LTQsNC70Lgg0LfQsNGA0LDQtNC4INC40L3RhNC+0YDQvNCx 0LjRgNC+LCDQv9CwINGD0YjRgtC1INC/0LDQuiDRgtGA0YfQsCDQutGA0YPQsyDQt9CwINC00LAg DQogICAgICAgICAgICDQstC70LDQtNC10LUg0YPRiNGC0LUu0JfQsCA0MCDRgdGA0LXQsdGA0LXQ vdC40YbQuCDRgdC1INC/0YDQvtC00LDQu9C1INC90LXQv9C40YHQvNC10L3QuNGC0LUsINC90LXQ tNGD0LPQsNCy0LjRgtC1LCANCiAgICAgICAgICAgINC80LXQtNC40L7QutGA0LjRgtC10YLQuNGC 0LUg0LrQvtC4INGB0LDQvNC+INGC0LDQutCwINC/0YDQtdC60YMg0LvQtdGI0L7QstC4INC80L7Q ttC1INC00LAg0LjQt9Cx0LjRmNCw0YIg0L3QsCANCiAgICAgICAgICAgINC/0L7QstGA0YjQuNC9 0LAuPC9URD48L1RSPg0KICAgICAgICA8VFI+DQogICAgICAgICAgPFREIGNvbFNwYW49Mj4mbmJz cDs8L1REPjwvVFI+DQogICAgICAgIDxUUj4NCiAgICAgICAgICA8VEQ+PFNUUk9ORz7Rh9C40YLQ sNGC0LXQuyDQtNC+IHZvanZvZGF0YTwvU1RST05HPjwvVEQ+DQogICAgICAgICAgPFREPiZuYnNw OzwvVEQ+PC9UUj4NCiAgICAgICAgPFRSPg0KICAgICAgICAgIDxURCBjbGFzcz1jb21tZW50c0hl YWRlciBjb2xTcGFuPTI+0KHQtdCz0LAg0LjQt9C00YDQttC4INC90LDQv9Cw0LQg0L7QtCANCiAg ICAgICAgICAgIOKAntCy0LjRgdGC0LjQvdGB0LrQuNGC0LXigJzQstC+0ZjQstC+0LTQuCEg0J3Q uNCyINC90LUg0LPQuCDQuNC90YLQtdGA0LXRgdC40YDQsCDQstC40YHRgtC40L3QsNGC0LAsINGC 0LjQtSDRgdC4INC40LzQsNCw0YIgDQogICAgICAgICAgICDQtdC00LXQvSDQstC10YDRgtGD0LXQ u9C10L0g0YHQstC10YIg0Lgg0LLQuNGA0YLRg9C10LvQvdCwINCy0LjRgdGC0LjQvdCwLCDQuCDQ vdC1INC00L7Qt9Cy0L7Qu9GD0LLQsNCw0YIg0L3QuNC60L7RmCDQtNCwIA0KICAgICAgICAgICAg 0LPQviDQvdCw0YDRg9GI0Lgg0L3QuNCy0L3QuNC+0YIg0YHQvtC9LiDQl9CwINC90LjQsiDRgdC4 0YLQtSDQktCc0KDQni3QstGG0Lgg0Lgg0L3QuNCy0L3QuCDRgdC40LzQv9Cw0YLQuNC30LXRgNC4 INGB0LUgDQogICAgICAgICAgICDQsdC+0YDRhtC4INC30LAg0L3QsNGG0LjQvtC90LDQu9C90LAg 0YHQu9C+0LHQvtC00LAg0L3QsCDQnNCw0LrQtdC00L7QvdGG0LjRgtC1LCDQsCDRgdC40YLQtSDQ tNGA0YPQs9C4INC/0YDQtdC00LDQstC90LjRhtC4LiANCiAgICAgICAgICAgINCU0L7QsdGA0L4g 0LUg0YjRgtC+INGB0LXQs9CwINC/0YDQtdC60YMg0LjQvdGC0LXRgNC90LXRgiDQuNC80LDQvNC1 INC/0YDQuNGB0YLQsNC/INC00L4g0L7RgNCz0LjQvdCw0LvQvdC4INC00L7QutGD0LzQtdC90YLQ uCANCiAgICAgICAgICAgINC4INC90LUg0LUg0L/QvtGC0YDQtdCx0L3QviDQvdC10LrQvtGYINC0 0LjQu9C10YLQsNC90YIg0LrQsNC60L4g0JTQsNGA0LrQviDQiNCw0L3QtdCy0YHQutC4INC00LAg 0L3QuCDRgtGD0LzQsNGH0LggDQogICAgICAgICAgICDQuNGB0YLQvtGA0LjRmNCwLjwvVEQ+PC9U Uj4NCiAgICAgICAgPFRSPg0KICAgICAgICAgIDxURCBjb2xTcGFuPTI+Jm5ic3A7PC9URD48L1RS Pg0KICAgICAgICA8VFI+DQogICAgICAgICAgPFREPjxTVFJPTkc+TU08L1NUUk9ORz48L1REPg0K ICAgICAgICAgIDxURD4mbmJzcDs8L1REPjwvVFI+DQogICAgICAgIDxUUj4NCiAgICAgICAgICA8 VEQgY2xhc3M9Y29tbWVudHNIZWFkZXIgY29sU3Bhbj0yPtCd0LjQstC90LjRgtC1INCy0L3Rg9GG 0Lgg0ZjQsCDQv9C+0L/RgNC10YfRg9Cy0LDQsNGCIA0KICAgICAgICAgICAg0LvRg9GB0YLRgNCw 0YbQuNGY0LDRgtCwLiDQndCw0YDQvtC00LUg0JzQsNC60LXQtNC+0L3RgdC60Lgg0YHQv9C4INC4 INC/0L7QvdCw0YLQsNC80YMg0Lgg0YLQsNC60LAg0YHQv9C40LXRmNC60Lgg0ZzQtSDRgtC1IA0K ICAgICAgICAgICAg0YHQvdC10L3QvNCwLjwvVEQ+PC9UUj4NCiAgICAgICAgPFRSPg0KICAgICAg ICAgIDxURCBjb2xTcGFuPTI+Jm5ic3A7PC9URD48L1RSPg0KICAgICAgICA8VFI+DQogICAgICAg ICAgPFREPjxTVFJPTkc+cGVybzwvU1RST05HPjwvVEQ+DQogICAgICAgICAgPFREPiZuYnNwOzwv VEQ+PC9UUj4NCiAgICAgICAgPFRSPg0KICAgICAgICAgIDxURCBjbGFzcz1jb21tZW50c0hlYWRl ciBjb2xTcGFuPTI+LSDQmNGB0YLRgNCw0LbRg9Cy0LDRmtC10YLQviDQvdCwINC90LDRmNC80LDQ u9C60YMg0LTQstC1IA0KICAgICAgICAgICAg0LvQvtC60LDRhtC40Lgg0L7QutC+0LvRgyDQt9Cw 0YLQstC+0YDQvtGCIOKAntCY0LTRgNC40LfQvtCy0L7igJwg0YHQuNCz0YPRgNC90L4g0ZzQtSDQ v9C+0LrQsNC20LUg0LTQtdC60LAg0YLQsNC80YMg0LjQvNCwIA0KICAgICAgICAgICAg0L7RgdGC 0LDRgtC+0YbQuCDQvtC0INC70LjQutCy0LjQtNC40YDQsNC90LjRgtC1LiDQotGA0LXQsdCwINC0 0LAg0YHQtSDQsdCw0YDQsCDQvdCwINC80LXRgdGC0L7RgtC+INC60LDQtNC1INGI0YLQviDRgdC1 IA0KICAgICAgICAgICAg0LrQvtC/0LDQu9CwINC30LXQvNGY0LDRgtCwINC30LAg0YLQvtCz0LDR iNC90LDRgtCwINGC0YPQu9Cw0L3QsCDQuCDQvdCwINC70LXQstC40L7RgiDQsdGA0LXQsyDQvdCw INCS0LDRgNC00LDRgCwg0L3QsCANCiAgICAgICAgICAgINC+0LrQvtC70YMgMzAwLTQwMCDQvNC1 0YLRgNC4INC+0LQg0LfQsNGC0LLQvtGA0L7Rgi4g0KHQsNC80L4g0L3QsCDRgtC+0Zgg0L3QsNGH 0LjQvSDRnNC1INGB0LUg0LTQvtGY0LTQtSDQtNC+IA0KICAgICAgICAgICAg0L/QvtCy0LXRnNC1 INGB0L7Qt9C90LDQvdC40ZjQsCDQt9CwINC70YPRk9C10YLQviDRiNGC0L4g0LLQviDRgtC10LzQ vdC40YbQsNGC0LAg0L3QsCDQvdC+0ZzRgtCwINC40YHRh9C10LfQvdGD0LLQsNCwINC+0LQgDQog ICAgICAgICAgICDRnNC10LvQuNC40YLQtSwg0LfQsCDRgdGD0LTQsdC40L3QsNGC0LAg0L3QsCDQ tdC00LXQvSDQg9C+0YDRk9C4INCa0LDRgNC10LIsINCx0YDQsNGC0L7RgiDQvdCwINCd0LjQutC+ 0LvQsCDQmtCw0YDQtdCyLCANCiAgICAgICAgICAgINCT0LvQuNCz0L7RgCDQp9GD0LvQtdCyLCDQ otGA0LDRmNC60L4g0J/QvtC/0L7QsiDQuCDQtNGA0YPQs9C4IC0g0LLQtdC70Lgg0IPQvtGA0ZPQ uCDQkdCw0L3QtdCyLiDQo9CU0JHQkCDRg9Cx0LjQstCw0LvQsCANCiAgICAgICAgICAgINCx0LXQ t9C80LjQu9C+0YHQvdC+IHd3dy5rb3RsZS5jYTwvVEQ+PC9UUj4NCiAgICAgICAgPFRSPg0KICAg ICAgICAgIDxURCBjb2xTcGFuPTI+Jm5ic3A7PC9URD48L1RSPg0KICAgICAgICA8VFI+DQogICAg ICAgICAgPFREPjxTVFJPTkc+Qm9iaTwvU1RST05HPjwvVEQ+DQogICAgICAgICAgPFREPiZuYnNw OzwvVEQ+PC9UUj4NCiAgICAgICAgPFRSPg0KICAgICAgICAgIDxURCBjbGFzcz1jb21tZW50c0hl YWRlciBjb2xTcGFuPTI+RSB0b2Egc2UgImRlbGF0YSIgbmEga29tdW5qYXJpdGUsIA0KICAgICAg ICAgICAgZGEgdW5pc3RhdCBzZSBzdG8gZSBtYWtlZG9uc2tvLCBkYSBnbyBpc3BsdWthYXQsIGRh IGdvIG9tYWxvdmF6YXQsIA0KICAgICAgICAgICAgZGEgZ28gZGlza3JlZGl0aXJhYXQgZGVrYSBz b3JhYm90dXZhbCBzbyAib2t1cGF0b3JvdCIgLiANCiAgICAgICAgICAgIEtvbXVuaXN0aWNraXRl IHBvdG9tY2ksIGRlY2EgbmEgdWRiYXNpdGUgdXN0ZSB1eml2YWF0IHZvIA0KICAgICAgICAgICAg cHJpdmlsZWdpaXRlLCBpIHByb2RhdmFhdCBkZW1hZ29naWphIGtha28gYmlsbyAidWJhdm8iIHZv IA0KICAgICAgICAgICAgc3Jib3NsYXZpamEsIGkga2FrbyBtb3JhbGUgZGEgZ2kgbGlrdmlkaXJh YXQgdmlzdGluc2tpdGUgcGF0cmlvdGkgDQogICAgICAgICAgICBNYWtlZG9uY2kgemEgIm5pdm5v IGRvYnJvIi4gRGEgbmUgc2UgY3VkaW1lIHpvc3RvIHNtZSB0YW11IGthZGUgc3RvIA0KICAgICAg ICAgICAgc21lLCBiZXogbmFjaW9uYWxuYSBzdmVzdCBrYWogZ29sZW0gZGVsIE1ha2Vkb25jaSwg aSBiZXogY3V2c3R2byB6YSANCiAgICAgICAgICAgIHZpc3RpbnNrYSBuYWNpb25hbG5hIHByaXBh ZG5vc3QgaSBnb3Jkb3N0LiBAdm9qdm9kYXRhLCBwbHVrYW5qZXRvIA0KICAgICAgICAgICAgcHJv dGl2IHBvdG9tY2l0ZSBuYSBsdWdldG8ga29pIGdpbmVsZSB6YSBNYWtlZG9uaWphLCBuZSB0ZSBw cmF2aSANCiAgICAgICAgICAgIHZvanZvZGEgdHVrdSBzYW1vIGVkbmEgc2l0bmEgaSByYXNpcGFu YSBkdXNhLjwvVEQ+PC9UUj4NCiAgICAgICAgPFRSPg0KICAgICAgICAgIDxURCBjb2xTcGFuPTI+ Jm5ic3A7PC9URD48L1RSPg0KICAgICAgICA8VFI+DQogICAgICAgICAgPFREPjxTVFJPTkc+dm9q dm9kYXRhPC9TVFJPTkc+PC9URD4NCiAgICAgICAgICA8VEQ+Jm5ic3A7PC9URD48L1RSPg0KICAg ICAgICA8VFI+DQogICAgICAgICAgPFREIGNsYXNzPWNvbW1lbnRzSGVhZGVyIGNvbFNwYW49Mj5T aXRlIHZvIEtydXNldm8gem5hYXQgZGVrYSBjZWxhdGEgDQogICAgICAgICAgICBmYW1pbGlqYSBu YSBLYXJldiBzb3JhYm90dXZhbGEgc28gb2t1cGF0b3JvdC4gTmUgZSBncmV2IGRhIHNlIGthemUg DQogICAgICAgICAgICB2aXN0aW5hdGEgYmV6IHJhemxpa2EgZGFsaSBwb3Rla251dmFhdCBvZCBz ZW1lanN0dm90byBuYSBOaWtvbGEgDQogICAgICAgICAgICBLYXJldi4gTGFnYSBlIGRla2EgbmVr b2ogb2Qgbml2IGUgbGlrdmlkaXJhbi4gQWtvIGUgdGFrYSBuYXJvZG90IA0KICAgICAgICAgICAg dmVkbmFzaCBramUgaW0gcHJlc3VkZXNlLiBWaXN0aW5za2F0YSB0ZW1hIGJpIGJpbGEsIHN0byBn aSBuYXZlbG8gDQogICAgICAgICAgICBzaXRlIG5pdiBkYSBzb3JhYm90dXZhYXQgc28gb2t1cGF0 b3JvdC4gRGEgbmUgemFib3JhdmltZSBkZWthIHZvIA0KICAgICAgICAgICAgS3J1c2V2byBzZXVz dGUgeml2ZWF0IGZhbWlsaWkgbmEgZHJ1Z2l0ZSB1Y2VzbmljaSB2byBJbGluZGVuc2tvdG8gDQog ICAgICAgICAgICBWb3N0YW5pZS4gWm9zdG8gbml2bml0ZSBwb3RvbWNpIG5lIHNvcmFib3R1dmFs ZSBzbyBCdWdhcnNraW90IA0KICAgICAgICAgICAgb2t1cGF0b3I/PC9URD48L1RSPg0KICAgICAg ICA8VFI+DQogICAgICAgICAgPFREIGNvbFNwYW49Mj4mbmJzcDs8L1REPjwvVFI+PC9UQk9EWT48 L1RBQkxFPjwvVEQ+DQogICAgPFREPiZuYnNwOzwvVEQ+PC9UUj48L1RCT0RZPjwvVEFCTEU+PC9E SVY+DQo8RElWIGlkPWZvb3Rlcj4NCjxUQUJMRSANCnN0eWxlPSJCQUNLR1JPVU5ELUlNQUdFOiB1 cmwoLi4vVXBsb2Fkcy9JbWFnZS9EZXNpZ24vU2hhZGVzL1doaXRlMTB4MjAwMF9WZXJ0LnBuZyk7 IEJBQ0tHUk9VTkQtQ09MT1I6ICMwMDMzOTkiIA0KY2VsbFNwYWNpbmc9MCBjZWxsUGFkZGluZz0w IHdpZHRoPSIxMDAlIiBib3JkZXI9MD4NCiAgPFRCT0RZPg0KICA8VFI+DQogICAgPFREIGFsaWdu PW1pZGRsZT4NCiAgICAgIDxQPjwvUD4NCiAgICAgIDxQPtCh0LjRgtC1INC/0YDQsNCy0LAg0LPQ uCDQt9Cw0LTRgNC20YPQstCwINCd0L7QstCwINCc0LDQutC10LTQvtC90LjRmNCwIDIwMDkmbmJz cDsgPC9QPjwvVEQ+PC9UUj4NCiAgPFRSPg0KICAgIDxURCBzdHlsZT0iQ09MT1I6ICNmZmZmZmYi IGFsaWduPW1pZGRsZT4NCiAgICAgIDxQPiZuYnNwOyDQnNC+0LzQtdC90YLQsNC70L3QsCDQv9C+ 0YHQtdGC0LXQvdC+0YHRgiA2MDMgPC9QPjwvVEQ+PC9UUj48L1RCT0RZPjwvVEFCTEU+PC9ESVY+ DQo8RElWIGlkPXBvd2VyYnk+DQo8VEFCTEUgY2VsbFNwYWNpbmc9MCBjZWxsUGFkZGluZz0yIHdp ZHRoPSIxMDAlIiBib3JkZXI9MD4NCiAgPFRCT0RZPg0KICA8VFI+DQogICAgPFREIGFsaWduPWxl ZnQ+Jm5ic3A7Jm5ic3A7UG93ZXJlZCBieSBEZWphbiBKb3Zhbm92c2tpJm5ic3A7Jm5ic3A7PC9U RD4NCiAgICA8VEQgYWxpZ249cmlnaHQ+PEEgaHJlZj0iaHR0cDovL3d3dy5lc29mdC5jb20ubWsv IiB0YXJnZXQ9X2JsYW5rPjxJTUcgDQogICAgICBoZWlnaHQ9MzUgDQogICAgICBzcmM9Im1odG1s Omh0dHA6Ly93d3cubWFrZWRvbnNrb3NvbmNlLmNvbS9QSVJJTi9hcmhpdmEtbmFwaXNpIFBpcmlu LzIwMTAvMDIvMjMvTk9WQU1BSy1LQVJFVi5taHQhaHR0cDovL3d3dy5ub3ZhbWFrZWRvbmlqYS5j b20ubWsvaW1hZ2VzL0Vzb2Z0X0xvZ28uZ2lmIiANCiAgICAgIHdpZHRoPTk5IGJvcmRlcj0wPjwv QT48L1REPjwvVFI+PC9UQk9EWT48L1RBQkxFPjwvRElWPjwvRElWPg0KPFNDUklQVCB0eXBlPXRl eHQvamF2YXNjcmlwdD4gDQp2YXIgZ2FKc0hvc3QgPSAoKCJodHRwczoiID09IGRvY3VtZW50Lmxv Y2F0aW9uLnByb3RvY29sKSA/ICJodHRwczovL3NzbC4iIDogImh0dHA6Ly93d3cuIik7DQpkb2N1 bWVudC53cml0ZSh1bmVzY2FwZSgiJTNDc2NyaXB0IHNyYz0nIiArIGdhSnNIb3N0ICsgImdvb2ds ZS1hbmFseXRpY3MuY29tL2dhLmpzJyB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnJTNFJTNDL3Njcmlw dCUzRSIpKTsNCjwvU0NSSVBUPg0KDQo8U0NSSVBUIHR5cGU9dGV4dC9qYXZhc2NyaXB0Pg0KdHJ5 IHsNCnZhciBwYWdlVHJhY2tlciA9IF9nYXQuX2dldFRyYWNrZXIoIlVBLTg3MzQzMjgtMSIpOw0K cGFnZVRyYWNrZXIuX3RyYWNrUGFnZXZpZXcoKTsNCn0gY2F0Y2goZXJyKSB7fTwvU0NSSVBUPg0K PC9CT0RZPjwvSFRNTD4NCg== ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.novamakedonija.com.mk/Uploads/Image/header/LogoHeader.gif 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 ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.novamakedonija.com.mk/Uploads/Image/banner_right/transparent.gif R0lGODlhAQABAPAAAAAAAP///yH5BAEAAAEALAAAAAABAAEAAAICTAEAOw== ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://s7.addthis.com/static/btn/v2/lg-share-en.gif R0lGODlhfQAQAMQfAI6OjmhoaF5eXh0g//X19ougxk1uqZ6enlRUVFVVVaamppGRkdvb28rKynh4 eIKCgtLS0uTk5ExMTExtqPz8/PPz8/9pOvb29vr6+u/v7+zs7Ojo6MDAwAAAAP///////yH5BAEA AB8ALAAAAAB9ABAAAAX/4PdxZGmeaKqubOu+cMyJI+PdeK7vfO//wKBwOGTMODaicslsOolGDs5C rVKf2CZhux14vT6AYwzQGSboNNoAJN2scEt2PuR2vwMdYLHwlG9/OBNnaQWGE21SHlZvVUAdkDgd kpKRN5CWHpiTTHYEeHk4EjgBATcNAYEeahMFNwWIP26LjrRXPpyal5S6u729uVp2oDmjHhACDQ0K zAI5rK6EiY07tz3BvsC8uZzYS57Eoh4MBwIVzArIz4OtOLCJFBTWUxbx9vfxmPabHfmb/pD2BcRH sCAFfifwCUAg4MCBDRsiPHhwT42rVxMM2iOBAQMjWxY6ihxJskNHkydT0ao0iVIlyZcwT2468RJB xwMRNjR4QBKaB0IxRZK4cOGjFaJIk17ogJTp0qZEnT6dKlWq0qtYl840ofRAgAMXcC7YqVSNgWho siIlUaFCHCtt48ptiyluB7t08Va4m3dv3bmAAyM0MfeAhwMVxO6c28qQIQ+HAsslkaHyWwuVM2ve zLmz58+gPQ8usRmB6QwJUqfeTIjVoMwdMsSOXZkEhNAacuvezbu379/AgwsfTrw4bwhHIEBczry5 8+fQo0ufTr269evIacjYzr279+8sRIQAADs= ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://www.novamakedonija.com.mk/Uploads/News/zatvor[9].jpg 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 ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.novamakedonija.com.mk/Uploads/Image/header/transparent.gif R0lGODlhAQABAPAAAAAAAP///yH5BAEAAAEALAAAAAABAAEAAAICTAEAOw== ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://www.novamakedonija.com.mk/Uploads/Image/2010/FEVRUARI/karev.jpg /9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAPQAA/+4ADkFkb2JlAGTAAAAAAf/b AIQABgQEBAUEBgUFBgkGBQYJCggGBggKDAoKCgoKDA8MDAwMDAwPDA4ODw4ODBISFBQSEhoaGhoa Hh4eHh4eHh4eHgEHBwcMCwwXDw8XGhQRFBoeHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4e Hh4eHh4eHh4eHh4eHh4eHh4e/8AAEQgBNgDcAwERAAIRAQMRAf/EAIMAAAEEAwEBAAAAAAAAAAAA AAAEBQYHAQMIAgkBAQAAAAAAAAAAAAAAAAAAAAAQAAIBAwMCBAQEBQIFAgMJAAECAxEEBQAhEjEG QSITB1FhMhRxgUIIkVIjMxWhscFigiQW0eGSQxfxcqJTY4MlNRgRAQAAAAAAAAAAAAAAAAAAAAD/ 2gAMAwEAAhEDEQA/AOqdAaA0BoDQGgNAaA0BoDQGgNAaA0BoDQGgNAaA0BoDQGgNAaA0Gjy9dvq0 G/QGgNAaA0BoDQGgNAaA0BUaDwJ4SARIpDbKQRuR8NBhbiB5HiWRWljpzjDAstelR1Ggbe5c5Lh8 Pc5CCza/ktgGe1jdY24nqeT7bDfQJ+2+8cRm8dbXSzR21xOgdrKSRfUQ1pQ9K/kNA/aA0BoDQGgN AaA0BoDQBpQ6BJQ8eppzpoFegNAaA0BoDQGgNAaA0EZ9wO/8F2RgWy2Wc8Wb0raBN3mlI2UD/c+G grPtrO9z98rc5nOXkmPxFjOqW1nasY4Z1enHmD55KE030FkxrI9lNicKFx0XKSO0vOFTHVeTOiMB U8zoEGP7AbEZG97givPWz15EqXExXgsvpii1APhWv46Br7yxk13bsl363poS83KXyr5a8uNRy81K aCj+2J7a37guppLiVqXMxt59zEIm2XkGPFOJ82gkdn7nd54buh7KG8MtpFbI8NtcSBluCXq7pz+C eCnQX3gu88LlhDEk6xX0q1+0k8r1AqQteugftAaA0BoDQGgNAaAOgS8vLWn6/htoFWgNAaA0BoDQ GgNAaA0HK/7y7vLR5ntuFFrjxb3EiMSQv3HIA79NkA0EO7Tyfed19oIVuJ5J4/Td6ExFgaqeIP1K BsaaC2oe5veTBWtikGLlzBiq1y/DkSC3TrWvHQP9374dvWlsIe5sVkcNOCKtNE5jqWp9a7UOga8l 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 y26dNB//2Q== ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://www.novamakedonija.com.mk/Uploads/Image/2010/FEVRUARI/petar.jpg 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 ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.novamakedonija.com.mk/images/Esoft_Logo.gif R0lGODlhYwAjAPcAACAaGO3x5rvAtYPBJFJQTqGfniwoJpmZmXNycd7e3v///6LEa8zMzIWEg0A7 OZ65d2NgXff394nANMHAv7jUjLGwr+Pk4pCNjNbZ0SUhHs7FxUhEQb3IrGpoZTMzM6yqqV1aWaXF c3t4dpLERL/PpobAK7O+opfCWNfmwLLPhU5KSSMeG4mGhdrizVhUUnBsa6alpYF+fWllY8XFxTs3 NEM/PJaVlComI5HBSqa6hqu7lIuKiDIuK4XDKXh1c9bW1orBN5nKTGBcWmxqab/als7ZvLW1taTN ZMHEvlBMSWViYZmWlbbEoFpYVXx7eZ/MWSgjIMDCu0VBP5fFTr28vKqopzk0MUtHRS8qKY3FOlNQ T7HFku/v76OhoD05N62srNLax4OBf5rEWYyLiZy8aODl16nQbazHgZSUjNLYyObm5u/3797W1oTD JMXOxYfBMHJwbqjFe8XKvZXBUcvNx4nDMLW1rbbCpJzCYb3DtbW9qrfVh97e1pS9Uo3AP8HcmqXO a9nnxKC/cwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAHAP8ALAAAAABjACMA AAj/ABUIHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDMajBBBY8OOHjNyjMClJJeRIQeONMkxJcUI Py5IWQGAh4gJak6C1BghQQeaNGR8OLmxZ0uXBHv6sEITgNMVWIQYUXMUY4QKDpxqhWCBqECOM4Z0 0Il0IAMvWtNqNVAh506LFqyoBSAigdcIEzpAAeCi69uUESCkrdGhyY20Kn54TYiSsZGmNeH4+GIX 5A8eWpv8cFuWARatDioYoWJD7QeqBzlySZCgK9mNH9J2qDCBgV8FEegcduqCQQLUE1fq3Il3r1Ms DYzMmBEGhIwXPqgATzpBBIEaDjaAuKC4qoIECK6k//Xiwsfmk1xYaMmglQcIIUsWOySJYs+RJ0co lCELE7PWFVaUB8MEE8zg23RfObGbWjRUwZlAE8zllBQMUBWBGjRICIASt30UABFBtCHiiCMU4RZJ Imi4ghdwGPFDZUmlmBZkABjwBWd4aUihhWrIJSEEMDIUAQohttHDCCWM2EYWaVjY0wsaOsWDDUHi ZkRaPMRwgRCDbdYRTENskBYN5XlJUhgEQIaFC03sUCVjgdQxwAAjMIGEADgouYBfJCXQhRYLqrXC aXdx6VQGLFCxnBZpHVAZSWockNYQVPg2nBpGGKBVEsr90KFCXDwhYgkmTBDFHXOI2IMfZzzKhRoJ MP9gRBgQSGGcVi4EqUZWTtFQwQw//MBCWiJ0hxsXkmrVwQRmHkvFgipU+iZCEfzRw7VA5CDICCJm QYYOVNCBQU6yVnFAogwwMMMBvPZKB2o9+QiAA9JaUJpWcHh5bAGyzVBlBM9qpQKwCDLGrarX9iDG FnkIoAMeU4CRkxKQIcBAsAwskZYVM3SFmxo1aGWFixaoMaxWTuiLG79aDWEbF0kF7JQW/srHmBlK lpCDAMvFUYeIIfzGRQNpYdEFxh2kpcXLAnExBLG+/SDmoUcDFwHLTrlswVt4aerUFcwWTG0LWcw5 QAkP6HHHAiOKQYddXFyWFhRNDCHefzZUCFIEM3j/DUAGSsQgRVpN1Lw31gBozbVnWmXQBAgV2Jwa Fyko2YYEb6gaAh3nkXQAjRLCAexdyLKnoxEvHz6p3klxMXVaPnxKLRcWhJCkklkswMHFfL7KLugA rEBDA8B2CGkXDoBuAAio/4v4ECoPxEUVfjtlxbSTW0DCAiecsMAWclzcGn+0/3CACEqAAAIECFxQ qafyQfrDEghA4FwMMBj4W1Uw2bADC2GgjM1IYgQf2E8JTqCS5LKHsYu9qGSvORasfpCuCorvQa2b oAUfGEEJJiBYQvsLRzSYrhB+BFIWaI0acjKcxqhGDRYwQgweeCJqoVBWKvSKBVjgJEitcDgFeSFr /0L4F4RwwQhTMUkLYeIiF5JkCQ4gYtMs9CrikAQBKqjQYjC1RNVMoAIJ8M7H1DCDDyhmgQaZwQvC UD8GRDACLACBCFywgzd2IQl8GsgBXsARFjjBO2ogAA+qEMEfyCCMxFEDHGTgAxfA4I0FUIETlOCC L3QQIV/YQAO+8IE3wcALnqIDDR5JnC6o4F8saEJJ4ACBN47hkA/imxXceJQIOIEArKmCF2ipEidI 4UUdyAAGqfWDCbAAAY58TQR2sIEUJsABLFCmKR/1lQYIAYZwUAIGIxCGIUBwbzOoAS33BoEXpJAB I1uMLWWQQicAQHapOcAQkCiFMMQyAS5ITgx6E7DLaaqzAhsoAAwcgIBtLuEKSdwbHcSpTCpc4QAV UEIH/hUDDiXAB+8UWxAjxYMp7W9vMGkCD4TQub1NoAHb5MISbgCBCyxhm2rQAgRi+QMnUPNYE9iA TUz4FRjYYIUFmCkaM2iBb7buVT9UJ0k6iMJvWpElT/WOD3/Iv6UqcagqseolVVMSMY5EhFr16leT 0pisKlGsXy2rQtJaRNyM9SFsTY0YF5JWxqi1LHjNq0ACAgA7 ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: text/css; charset="koi8-r" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.novamakedonija.com.mk/Design/css_Vertical.css .horizontal UL { BORDER-RIGHT: medium none; PADDING-RIGHT: 0px; BORDER-TOP: medium none; = PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; BORDER-LEFT: medium = none; PADDING-TOP: 0px; BORDER-BOTTOM: medium none; LIST-STYLE-TYPE: = none } .horizontal UL LI { FLOAT: left; POSITION: relative } .horizontal UL LI A { DISPLAY: block; OVERFLOW: hidden; BORDER-LEFT: medium none; = TEXT-DECORATION: none } .horizontal UL LI UL LI A { DISPLAY: block; OVERFLOW: hidden; BORDER-LEFT: medium none; WIDTH: = 125px; TEXT-DECORATION: none } .horizontal LI LI { FLOAT: none; MARGIN-BOTTOM: -1px; BORDER-BOTTOM: transparent 1px solid } .horizontal UL LI UL { MARGIN-TOP: 0px; LEFT: 0px; POSITION: absolute } .horizontal UL UL UL { MARGIN-TOP: 0px; LEFT: 128px; WIDTH: 130px; TOP: 0px } .horizontal UL UL UL { LEFT: -128px; TOP: -1px } .horizontal .left UL UL { LEFT: -128px; TOP: -1px } .horizontal UL LI LI A { BORDER-TOP: medium none } UNKNOWN { =09 } .horizontal UL LI A.first { =09 } .horizontal UL LI LI A.first { =09 } UNKNOWN { =09 } DIV.horizontal UL LI.pixelfix UL { LEFT: 0px } DIV.horizontal UL LI.pixelfix UL UL { LEFT: 128px } .mlmenu LI UL { DISPLAY: none } UNKNOWN { DISPLAY: block } .accessible LI UL { DISPLAY: block } .arrow A SPAN { PADDING-LEFT: 1em; FONT-SIZE: 85% } .arrow A:hover SPAN { =09 } .arrow A SPAN.noshow { VISIBILITY: hidden } .plus A SPAN { PADDING-LEFT: 0.5em } .noshow { VISIBILITY: hidden } .blackwhite LI A { BORDER-LEFT-COLOR: black; BORDER-BOTTOM-COLOR: black; COLOR: black; = BORDER-TOP-COLOR: black; BACKGROUND-COLOR: white; BORDER-RIGHT-COLOR: = black } .blackwhite LI A:hover { BORDER-LEFT-COLOR: black; BORDER-BOTTOM-COLOR: black; COLOR: white; = BORDER-TOP-COLOR: black; BACKGROUND-COLOR: black; BORDER-RIGHT-COLOR: = black } .blackwhite LI A.first:hover { BORDER-LEFT-COLOR: black; BORDER-BOTTOM-COLOR: black; COLOR: white; = BORDER-TOP-COLOR: black; BACKGROUND-COLOR: black; BORDER-RIGHT-COLOR: = black } .blackwhite .trail A.hover { BORDER-LEFT-COLOR: black; BORDER-BOTTOM-COLOR: black; COLOR: white; = BORDER-TOP-COLOR: black; BACKGROUND-COLOR: black; BORDER-RIGHT-COLOR: = black } UNKNOWN { BORDER-LEFT-COLOR: black; BORDER-BOTTOM-COLOR: black; COLOR: white; = BORDER-TOP-COLOR: black; BACKGROUND-COLOR: black; BORDER-RIGHT-COLOR: = black } .blackwhite UL { BORDER-LEFT-COLOR: black; BORDER-BOTTOM-COLOR: black; BORDER-TOP-COLOR: = black; BORDER-RIGHT-COLOR: black } .bluewhite LI A { BORDER-LEFT-COLOR: #000033; BORDER-BOTTOM-COLOR: #000033; COLOR: = #000033; BORDER-TOP-COLOR: #000033; BACKGROUND-COLOR: white; = BORDER-RIGHT-COLOR: #000033 } .bluewhite LI A:hover { BORDER-LEFT-COLOR: #000033; BORDER-BOTTOM-COLOR: #000033; COLOR: white; = BORDER-TOP-COLOR: #000033; BACKGROUND-COLOR: #000033; = BORDER-RIGHT-COLOR: #000033 } .bluewhite LI A.first:hover { BORDER-LEFT-COLOR: #000033; BORDER-BOTTOM-COLOR: #000033; COLOR: white; = BORDER-TOP-COLOR: #000033; BACKGROUND-COLOR: #000033; = BORDER-RIGHT-COLOR: #000033 } .bluewhite .trail A.hover { BORDER-LEFT-COLOR: #000033; BORDER-BOTTOM-COLOR: #000033; COLOR: white; = BORDER-TOP-COLOR: #000033; BACKGROUND-COLOR: #000033; = BORDER-RIGHT-COLOR: #000033 } UNKNOWN { BORDER-LEFT-COLOR: #000033; BORDER-BOTTOM-COLOR: #000033; COLOR: white; = BORDER-TOP-COLOR: #000033; BACKGROUND-COLOR: #000033; = BORDER-RIGHT-COLOR: #000033 } .bluewhite UL { BORDER-LEFT-COLOR: #000033; BORDER-BOTTOM-COLOR: #000033; = BORDER-TOP-COLOR: #000033; BORDER-RIGHT-COLOR: #000033 } ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: text/css; charset="koi8-r" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.novamakedonija.com.mk/Design/Support.css IMG { BEHAVIOR: url(../ddtComponents/PngFix/iepngfix.htc) } IMG { BEHAVIOR: url(../ddtComponents/PngFix/iepngfix.htc) } #container { BEHAVIOR: url(../ddtComponents/PngFix/iepngfix.htc) } .rounded_picture { PADDING-BOTTOM: 3px; PADDING-TOP: 0px } .rounded_border { BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; = PADDING-BOTTOM: 3px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 0px; = BORDER-BOTTOM: #cccccc 1px solid } .rounded_border_shadow { BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: = #cccccc 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 8px; BORDER-LEFT: = #cccccc 1px solid; PADDING-TOP: 2px; BORDER-BOTTOM: #cccccc 1px solid } .rounded_border_glow { BORDER-RIGHT: #999999 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: = #999999 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 8px; BORDER-LEFT: = #999999 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px solid } .rounded_corner { PADDING-BOTTOM: 3px; PADDING-TOP: 0px } .rounded_corner_TopAll { PADDING-BOTTOM: 0px; PADDING-TOP: 0px } .rounded_corner_BottomAll { PADDING-BOTTOM: 3px; PADDING-TOP: 0px } .rounded_corner_LeftAll { PADDING-RIGHT: 0px; PADDING-BOTTOM: 3px; PADDING-TOP: 0px } .rounded_corner_LeftTop { PADDING-RIGHT: 0px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px } .rounded_corner_LeftBottom { PADDING-RIGHT: 0px; PADDING-BOTTOM: 3px; PADDING-TOP: 0px } .rounded_corner_RightAll { PADDING-LEFT: 0px; PADDING-BOTTOM: 3px; PADDING-TOP: 0px } .rounded_corner_RightTop { PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px } .rounded_corner_RightBottom { PADDING-LEFT: 0px; PADDING-BOTTOM: 3px; PADDING-TOP: 0px } .rounded_corner_shadow { PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 8px; = PADDING-TOP: 2px } .rounded_corner_glow { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 8px; = PADDING-TOP: 5px } .required { BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; = FONT-SIZE: 8pt; BORDER-LEFT: #666666 1px solid; COLOR: #333333; = BORDER-BOTTOM: #666666 1px solid; FONT-FAMILY: Arial, Helvetica, = sans-serif } .validation-advice { FONT-WEIGHT: bold; MARGIN: 2px 0px 10px; COLOR: #ff0000 } .validate-selection { =09 } .validate-number { =09 } .validate-digits { =09 } .validate-alpha { =09 } .validate-alphanum { =09 } .validate-date { =09 } .validate-email { =09 } .validate-url { =09 } .validate-date-au { =09 } .validate-date-mk { =09 } .validate-currency-dollar { =09 } .validate-currency-mk { =09 } .validate-one-required { =09 } .formBt { BORDER-RIGHT: #999999 1px solid; BORDER-TOP: #999999 1px solid; = FONT-SIZE: 7pt; BORDER-LEFT: #999999 1px solid; COLOR: #333333; = BORDER-BOTTOM: #999999 1px solid; FONT-FAMILY: Verdana, Arial, = Helvetica, sans-serif } .formInput { BORDER-RIGHT: #999999 1px solid; BORDER-TOP: #999999 1px solid; = FONT-SIZE: 7pt; BORDER-LEFT: #999999 1px solid; COLOR: #333333; = BORDER-BOTTOM: #999999 1px solid; FONT-FAMILY: Verdana, Arial, = Helvetica, sans-serif } FORM { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } .transparency { FILTER: Alpha(Opacity=3D80); moz-opacity: 0.8 } H1 { FONT-SIZE: 1.8em } H2 { FONT-SIZE: 1.6em } H3 { FONT-SIZE: 1.4em } H4 { FONT-SIZE: 1.2em } H5 { FONT-SIZE: 1em } H6 { FONT-SIZE: 0.8em } .tabDefault { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND-IMAGE: = url(../images/Shades/White1600x30.png); PADDING-BOTTOM: 5px; CURSOR: = pointer; PADDING-TOP: 5px } .tabDefaultNew { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; CURSOR: = pointer; PADDING-TOP: 5px } #tabContainer { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; = PADDING-TOP: 5px } #tabContainer A:link { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; = PADDING-TOP: 5px } #tabContainer A:visited { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; = PADDING-TOP: 5px } .newsContainer { BACKGROUND-POSITION: right bottom; FLOAT: left; BACKGROUND-IMAGE: = url(../images/AgolDoleDesno.gif); MARGIN: 5px; WIDTH: 200px; = BACKGROUND-REPEAT: no-repeat; HEIGHT: 230px } .newsContainerSecond { FLOAT: left; MARGIN: 5px; WIDTH: 200px; HEIGHT: 230px } .newsContainerSoGrupi { FLOAT: left; MARGIN: 5px; WIDTH: 200px; HEIGHT: 170px } .newsGroupTitles { BACKGROUND-POSITION: left 0px; DISPLAY: block; PADDING-LEFT: 20px; = FONT-SIZE: 0.9em; BACKGROUND-IMAGE: url(../images/bulet.png); = PADDING-BOTTOM: 3px; BACKGROUND-REPEAT: no-repeat } .newsGroupTitles A:link { FONT-SIZE: 1em } .newsGroupTitles A:visited { FONT-SIZE: 1em } .newsGroupTitles A:hover { FONT-SIZE: 1em } .newsTbOne { FLOAT: left; MARGIN: 3px; WIDTH: 99% } .headerNewsTdOne { PADDING-RIGHT: 5px; BACKGROUND-POSITION: left top; PADDING-LEFT: 5px; = BACKGROUND-IMAGE: url(../images/Shades/White1600x25.png); = PADDING-BOTTOM: 5px; COLOR: #ffffff; PADDING-TOP: 5px; = BACKGROUND-REPEAT: repeat-x; BACKGROUND-COLOR: #333333 } .bodyNewsTdOne { PADDING-RIGHT: 3px; BACKGROUND-POSITION: left top; PADDING-LEFT: 3px; = BACKGROUND-IMAGE: url(../images/Shades/grey1280x30.png); PADDING-BOTTOM: = 3px; PADDING-TOP: 3px; BACKGROUND-REPEAT: repeat-x; BACKGROUND-COLOR: = #ffffff } .footerNewsTdOne { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; = PADDING-TOP: 3px; BACKGROUND-COLOR: #f1f1f1; TEXT-ALIGN: right } .newsTbOneSecond { FLOAT: left; MARGIN: 3px; WIDTH: 99% } .headerNewsTdOneSecond { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; FONT-SIZE: 1em; PADDING-BOTTOM: = 3px; PADDING-TOP: 3px } .headerNewsTdOneSecond A:link { FONT-WEIGHT: bold; FONT-SIZE: 1em } .headerNewsTdOneSecond A:visited { FONT-WEIGHT: bold; FONT-SIZE: 1em } .headerNewsTdOneSecond A:active { FONT-WEIGHT: bold; FONT-SIZE: 1em } .headerNewsTdOneSecond A:hover { FONT-WEIGHT: bold; FONT-SIZE: 1em } .bodyNewsTdOneSecond { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; = PADDING-TOP: 3px; BACKGROUND-COLOR: #ffffff } .footerNewsTdOneSecond { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; = PADDING-TOP: 3px; TEXT-ALIGN: right } .newsTb { =09 } .headerNewsTd { PADDING-RIGHT: 5px; BACKGROUND-POSITION: left top; PADDING-LEFT: 5px; = BACKGROUND-IMAGE: url(../images/Shades/White1600x25.png); = PADDING-BOTTOM: 5px; COLOR: #ffffff; PADDING-TOP: 5px; = BACKGROUND-REPEAT: repeat-x; BACKGROUND-COLOR: #333333 } .bodyNewsTd { PADDING-RIGHT: 3px; BACKGROUND-POSITION: left top; PADDING-LEFT: 3px; = BACKGROUND-IMAGE: url(../images/Shades/grey1280x30.png); PADDING-BOTTOM: = 3px; VERTICAL-ALIGN: top; PADDING-TOP: 3px; BACKGROUND-REPEAT: repeat-x } .footerNewsTd { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; = PADDING-TOP: 3px; BACKGROUND-COLOR: #f1f1f1; TEXT-ALIGN: right } .newsTbSecond { =09 } .headerNewsTdSecond { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; FONT-SIZE: 1em; PADDING-BOTTOM: = 3px; PADDING-TOP: 3px } .headerNewsTdSecond A:link { FONT-WEIGHT: bold; FONT-SIZE: 1em } .headerNewsTdSecond A:visited { FONT-WEIGHT: bold; FONT-SIZE: 1em } .headerNewsTdSecond A:active { FONT-WEIGHT: bold; FONT-SIZE: 1em } .headerNewsTdSecond A:hover { FONT-WEIGHT: bold; FONT-SIZE: 1em } .bodyNewsTdSecond { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; = VERTICAL-ALIGN: top; PADDING-TOP: 3px } .footerNewsTdSecond { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; = PADDING-TOP: 3px; TEXT-ALIGN: right } .newsTbSoGrupi { =09 } .headerNewsTdSoGrupi { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; FONT-SIZE: 1em; PADDING-BOTTOM: = 3px; PADDING-TOP: 3px } .headerNewsTdSoGrupi A:link { FONT-WEIGHT: bold; FONT-SIZE: 1em } .headerNewsTdSoGrupi A:visited { FONT-WEIGHT: bold; FONT-SIZE: 1em } .headerNewsTdSoGrupi A:active { FONT-WEIGHT: bold; FONT-SIZE: 1em } .headerNewsTdSoGrupi A:hover { FONT-WEIGHT: bold; FONT-SIZE: 1em } .bodyNewsTdSoGrupi { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; = VERTICAL-ALIGN: top; PADDING-TOP: 3px } .footerNewsTdSoGrupi { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; = PADDING-TOP: 3px; TEXT-ALIGN: right } .archiveRecords { FLOAT: left; WIDTH: 200px; HEIGHT: 220px } .groupSubGroup UL { =09 } .groupSubGroup LI { LIST-STYLE-IMAGE: url(../images/bulet.gif) } .groupSubGroup A:link { BACKGROUND-POSITION: left 0px; DISPLAY: block; PADDING-LEFT: 20px; = FONT-SIZE: 0.9em; BACKGROUND-IMAGE: url(../images/bulet.png); = PADDING-BOTTOM: 3px; BACKGROUND-REPEAT: no-repeat } .groupSubGroup A:visited { BACKGROUND-POSITION: left 0px; DISPLAY: block; PADDING-LEFT: 20px; = FONT-SIZE: 0.9em; BACKGROUND-IMAGE: url(../images/bulet.png); = PADDING-BOTTOM: 3px; BACKGROUND-REPEAT: no-repeat } .groupSubGroupTitles { PADDING-RIGHT: 5px; MARGIN-TOP: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: = bold; FONT-SIZE: 1.3em; MARGIN-BOTTOM: 10px; PADDING-BOTTOM: 5px; = PADDING-TOP: 5px; BACKGROUND-COLOR: #f5f5f5 } ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: text/css; charset="koi8-r" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.novamakedonija.com.mk/Design/TabsSliders.css .slidersNaslov { PADDING-RIGHT: 3px; BACKGROUND-POSITION: left top; PADDING-LEFT: 10px; = FONT-WEIGHT: bold; FONT-SIZE: 1em; BACKGROUND-IMAGE: = url(../images/shade-ana.png); PADDING-BOTTOM: 3px; PADDING-TOP: 3px; = BACKGROUND-REPEAT: repeat-x } .slidersNaslov A:link { DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 1em; COLOR: #0033cc; = BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: = none; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; = BORDER-BOTTOM-STYLE: none } .slidersNaslov A:visited { DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 1em; COLOR: #0033cc; = BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: = none; BACKGROUND-COLOR: transparent; TEXT-DECORATION: none; = BORDER-BOTTOM-STYLE: none } .slidersNaslov A:hover { PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: = 0px; MARGIN: 0px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; = BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: = transparent; TEXT-DECORATION: none; BORDER-BOTTOM-STYLE: none } .slidersNaslov A.selected { PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: = 0px; MARGIN: 0px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; = BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: = transparent; TEXT-DECORATION: none; BORDER-BOTTOM-STYLE: none } .sliderwrapper1 { BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; FLOAT: = left; OVERFLOW: hidden; BORDER-LEFT: #cccccc 1px solid; WIDTH: 380px; = BORDER-BOTTOM: #cccccc 1px solid; POSITION: relative; HEIGHT: 350px } .sliderwrapper1 .contentdiv { PADDING-RIGHT: 20px; PADDING-LEFT: 20px; FILTER: = progid:DXImageTransform.Microsoft.alpha(opacity=3D100); LEFT: 0px; = VISIBILITY: hidden; PADDING-BOTTOM: 20px; WIDTH: 90%; PADDING-TOP: 20px; = POSITION: absolute; TOP: 0px; HEIGHT: 100%; moz-opacity: 1; opacity: 1 } .pagination1 { BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; = BORDER-LEFT-WIDTH: 1px; BORDER-LEFT-COLOR: #cccccc; FLOAT: left; = MARGIN-LEFT: 0px; WIDTH: 290px; BORDER-BOTTOM: #cccccc 1px solid; = HEIGHT: 350px; BACKGROUND-COLOR: #f5f6f8 } .slidersLinks A:link { BORDER-RIGHT: #f5f6f8 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: = #f5f6f8 1px solid; DISPLAY: block; PADDING-LEFT: 2px; FONT-SIZE: 95%; = PADDING-BOTTOM: 2px; BORDER-LEFT: #f5f6f8 1px solid; WIDTH: 280px; = PADDING-TOP: 2px; BORDER-BOTTOM: #f5f6f8 1px solid; POSITION: relative; = BACKGROUND-COLOR: #f5f6f8; TEXT-DECORATION: none } .slidersLinks A:visited { BORDER-RIGHT: #f5f6f8 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: = #f5f6f8 1px solid; DISPLAY: block; PADDING-LEFT: 2px; FONT-SIZE: 95%; = PADDING-BOTTOM: 2px; BORDER-LEFT: #f5f6f8 1px solid; WIDTH: 280px; = PADDING-TOP: 2px; BORDER-BOTTOM: #f5f6f8 1px solid; POSITION: relative; = BACKGROUND-COLOR: #f5f6f8; TEXT-DECORATION: none } .slidersLinks A:hover { BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; = PADDING-LEFT: 5px; BORDER-LEFT-COLOR: #cccccc; MARGIN-LEFT: -1px; COLOR: = #000; BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT-STYLE: none; = POSITION: relative; BACKGROUND-COLOR: #ffffff } .slidersLinks A.selected { BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; = PADDING-LEFT: 5px; BORDER-LEFT-COLOR: #cccccc; MARGIN-LEFT: -1px; COLOR: = #000; BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT-STYLE: none; = POSITION: relative; BACKGROUND-COLOR: #ffffff } .sliderwrapper2 { BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; FLOAT: = left; OVERFLOW: hidden; BORDER-LEFT: #cccccc 1px solid; WIDTH: 380px; = BORDER-BOTTOM: #cccccc 1px solid; POSITION: relative; HEIGHT: 350px } .sliderwrapper2 .contentdiv { PADDING-RIGHT: 20px; PADDING-LEFT: 20px; FILTER: = progid:DXImageTransform.Microsoft.alpha(opacity=3D100); LEFT: 0px; = VISIBILITY: hidden; PADDING-BOTTOM: 20px; WIDTH: 90%; PADDING-TOP: 20px; = POSITION: absolute; TOP: 0px; HEIGHT: 100%; moz-opacity: 1; opacity: 1 } .pagination2 { BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; = BORDER-LEFT-WIDTH: 1px; BORDER-LEFT-COLOR: #cccccc; FLOAT: left; = MARGIN-LEFT: 0px; WIDTH: 290px; BORDER-BOTTOM: #cccccc 1px solid; = HEIGHT: 350px; BACKGROUND-COLOR: #f5f6f8 } ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: text/css; charset="koi8-r" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.novamakedonija.com.mk/Design/TabMenusNew.css .glowingtabs { FLOAT: left; WIDTH: 100%; LINE-HEIGHT: normal } .glowingtabs UL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px = 0px 0px 5px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none } .glowingtabs LI { PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: = 0px; MARGIN: 0px; PADDING-TOP: 0px } .glowingtabs A { PADDING-RIGHT: 0px; BACKGROUND-POSITION: left top; PADDING-LEFT: 9px; = FLOAT: left; BACKGROUND-IMAGE: url(../images/TabMenus/leftUp.gif); = PADDING-BOTTOM: 0px; MARGIN: 0px 5px 0px 0px; PADDING-TOP: 0px; = BACKGROUND-REPEAT: no-repeat; TEXT-DECORATION: none } .glowingtabs A SPAN { PADDING-RIGHT: 12px; BACKGROUND-POSITION: right top; DISPLAY: block; = PADDING-LEFT: 3px; FONT-WEIGHT: bold; FLOAT: left; BACKGROUND-IMAGE: = url(../images/TabMenus/rightUp.gif); PADDING-BOTTOM: 3px; COLOR: = #3b3b3b; PADDING-TOP: 5px; BACKGROUND-REPEAT: no-repeat } .glowingtabs A SPAN { FLOAT: none } .glowingtabs A:hover SPAN { COLOR: black } .glowingtabs A.current { BACKGROUND-POSITION: left top; BACKGROUND-IMAGE: = url(../images/TabMenus/leftDown.gif); BACKGROUND-REPEAT: no-repeat } .glowingtabs A.current SPAN { BACKGROUND-POSITION: right top; BACKGROUND-IMAGE: = url(../images/TabMenus/rightDown.gif); COLOR: white; BACKGROUND-REPEAT: = no-repeat } .glowingtabs A:hover { BACKGROUND-POSITION: left top; BACKGROUND-IMAGE: = url(../images/TabMenus/leftDown.gif); BACKGROUND-REPEAT: no-repeat; = TEXT-DECORATION: none } .glowingtabs A:hover SPAN { BACKGROUND-POSITION: right top; BACKGROUND-IMAGE: = url(../images/TabMenus/rightDown.gif); BACKGROUND-REPEAT: no-repeat } .tabcontainer { CLEAR: left; PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: = 5px; COLOR: #99ffff; PADDING-TOP: 5px; POSITION: relative; HEIGHT: 1em; = BACKGROUND-COLOR: #002e5b } #maintabcontainer { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; Z-INDEX: 1; LEFT: 0px; = PADDING-BOTTOM: 5px; PADDING-TOP: 5px; POSITION: absolute; TOP: 0px; = HEIGHT: 1em } .tabcontent { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; Z-INDEX: 2; LEFT: 0px; = PADDING-BOTTOM: 5px; WIDTH: 99%; PADDING-TOP: 5px; POSITION: absolute; = TOP: 0px; HEIGHT: 1em; BACKGROUND-COLOR: #002e5b } .tabcontainer A:link { COLOR: #ffffff } .tabcontainer A:visited { COLOR: #ffffff } .tabcontent { DISPLAY: none } ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: text/css; charset="koi8-r" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.novamakedonija.com.mk/ddtComponents/ddt/modalbox.css #MB_overlay { Z-INDEX: 9999; LEFT: 0px; MARGIN: auto; WIDTH: 100%; POSITION: = absolute; TOP: 0px; HEIGHT: 100%; BACKGROUND-COLOR: #000! important } UNKNOWN { POSITION: fixed } #MB_window { BORDER-RIGHT: 0px solid; BORDER-TOP: 0px solid; Z-INDEX: 10000; = BORDER-LEFT: 0px solid; BORDER-BOTTOM: 0px solid; POSITION: absolute; = TOP: 40px; TEXT-ALIGN: left } UNKNOWN { POSITION: fixed! important } #MB_frame { POSITION: relative; HEIGHT: 100%; BACKGROUND-COLOR: #efefef } #MB_header { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } #MB_content { PADDING-RIGHT: 0.75em; PADDING-LEFT: 0.75em; PADDING-BOTTOM: 6px; = OVERFLOW: auto; PADDING-TOP: 6px } #MB_caption { PADDING-RIGHT: 2em; PADDING-LEFT: 0.75em; PADDING-BOTTOM: 0.5em; = MARGIN: 0px; FONT: bold 100% "Lucida Grande", Arial, sans-serif; = PADDING-TOP: 0.5em; TEXT-ALIGN: left; text-shadow: #FFF 0 1px 0 } #MB_close { PADDING-RIGHT: 3px; DISPLAY: block; PADDING-LEFT: 3px; FONT-WEIGHT: = bold; FONT-SIZE: 13px; RIGHT: 5px; PADDING-BOTTOM: 2px; PADDING-TOP: = 2px; POSITION: absolute; TOP: 4px; TEXT-DECORATION: none } #MB_close:hover { BACKGROUND: none transparent scroll repeat 0% 0% } #MB_loading { PADDING-RIGHT: 1.5em; PADDING-LEFT: 1.5em; BACKGROUND: url(spinner.gif) = no-repeat 50% 0px; PADDING-BOTTOM: 1.5em; TEXT-INDENT: -10000px; = PADDING-TOP: 1.5em } #MB_frame { PADDING-BOTTOM: 7px; webkit-border-radius: 7px; moz-border-radius: 7px; = border-radius: 7px } #MB_window { COLOR: #000; BACKGROUND-COLOR: #efefef; webkit-border-radius: 7px; = moz-border-radius: 7px; border-radius: 7px; webkit-box-shadow: 0 8px = 64px #000; moz-box-shadow: 0 0 64px #000; box-shadow: 0 0 64px #000 } #MB_content { BORDER-TOP: #f9f9f9 1px solid } #MB_header { BORDER-BOTTOM: #ccc 1px solid; BACKGROUND-COLOR: #ddd } #MB_caption { COLOR: #000 } #MB_close { COLOR: #777 } #MB_close:hover { COLOR: #000 } .MB_alert { MARGIN: 10px 0px; TEXT-ALIGN: center } ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: text/css; charset="koi8-r" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.novamakedonija.com.mk/Design/PrintMedia.css BODY { FONT-SIZE: 12pt; COLOR: #000000; FONT-FAMILY: "Times New Roman", Times, = serif; BACKGROUND-COLOR: #ffffff; ORPHANS: 49; size: portrait } IMG { PAGE-BREAK-AFTER: auto } #container A:link { COLOR: #336600; TEXT-DECORATION: none } #container A:visited { COLOR: #336600; TEXT-DECORATION: none } #header { CLEAR: both; DISPLAY: none } #wrapper { WIDTH: 100% } #menu { CLEAR: both; DISPLAY: none } #realMenu { CLEAR: both; DISPLAY: none } #search { CLEAR: both; DISPLAY: none } #powerby { CLEAR: both; DISPLAY: none } #left { CLEAR: both; DISPLAY: none } #right { CLEAR: both; DISPLAY: none } #body { WIDTH: 100% } #banner { CLEAR: both; DISPLAY: none } #underfooter { CLEAR: both; DISPLAY: none } #footer { CLEAR: both; DISPLAY: none } #chLang { CLEAR: both; DISPLAY: none } ------=_NextPart_000_003A_01CB1B13.2D6B0CB0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.novamakedonija.com.mk/ddtComponents/Aculus/lib/prototype.js /* 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 =3D { Version: '1.6.0.3', Browser: { IE: !!(window.attachEvent && navigator.userAgent.indexOf('Opera') =3D=3D=3D -1), Opera: navigator.userAgent.indexOf('Opera') > -1, WebKit: navigator.userAgent.indexOf('AppleWebKit/') > -1, Gecko: navigator.userAgent.indexOf('Gecko') > -1 && navigator.userAgent.indexOf('KHTML') =3D=3D=3D -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__'] !=3D=3D document.createElement('form')['__proto__'] }, ScriptFragment: ']*>([\\S\\s]*?)<\/script>', JSONFilter: /^\/\*-secure-([\s\S]*)\*\/\s*$/, emptyFunction: function() { }, K: function(x) { return x } }; if (Prototype.Browser.MobileSafari) Prototype.BrowserFeatures.SpecificElementExtensions =3D false; /* Based on Alex Arnell's inheritance implementation. */ var Class =3D { create: function() { var parent =3D null, properties =3D $A(arguments); if (Object.isFunction(properties[0])) parent =3D properties.shift(); function klass() { this.initialize.apply(this, arguments); } Object.extend(klass, Class.Methods); klass.superclass =3D parent; klass.subclasses =3D []; if (parent) { var subclass =3D function() { }; subclass.prototype =3D parent.prototype; klass.prototype =3D new subclass; parent.subclasses.push(klass); } for (var i =3D 0; i < properties.length; i++) klass.addMethods(properties[i]); if (!klass.prototype.initialize) klass.prototype.initialize =3D Prototype.emptyFunction; klass.prototype.constructor =3D klass; return klass; } }; Class.Methods =3D { addMethods: function(source) { var ancestor =3D this.superclass && this.superclass.prototype; var properties =3D Object.keys(source); if (!Object.keys({ toString: true }).length) properties.push("toString", "valueOf"); for (var i =3D 0, length =3D properties.length; i < length; i++) { var property =3D properties[i], value =3D source[property]; if (ancestor && Object.isFunction(value) && value.argumentNames().first() =3D=3D "$super") { var method =3D value; value =3D (function(m) { return function() { return ancestor[m].apply(this, arguments) = }; })(property).wrap(method); value.valueOf =3D method.valueOf.bind(method); value.toString =3D method.toString.bind(method); } this.prototype[property] =3D value; } return this; } }; var Abstract =3D { }; Object.extend =3D function(destination, source) { for (var property in source) destination[property] =3D source[property]; return destination; }; Object.extend(Object, { inspect: function(object) { try { if (Object.isUndefined(object)) return 'undefined'; if (object =3D=3D=3D null) return 'null'; return object.inspect ? object.inspect() : String(object); } catch (e) { if (e instanceof RangeError) return '...'; throw e; } }, toJSON: function(object) { var type =3D typeof object; switch (type) { case 'undefined': case 'function': case 'unknown': return; case 'boolean': return object.toString(); } if (object =3D=3D=3D null) return 'null'; if (object.toJSON) return object.toJSON(); if (Object.isElement(object)) return; var results =3D []; for (var property in object) { var value =3D 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 =3D []; for (var property in object) keys.push(property); return keys; }, values: function(object) { var values =3D []; 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 =3D=3D 1); }, isArray: function(object) { return object !=3D null && typeof object =3D=3D "object" && 'splice' in object && 'join' in object; }, isHash: function(object) { return object instanceof Hash; }, isFunction: function(object) { return typeof object =3D=3D "function"; }, isString: function(object) { return typeof object =3D=3D "string"; }, isNumber: function(object) { return typeof object =3D=3D "number"; }, isUndefined: function(object) { return typeof object =3D=3D "undefined"; } }); Object.extend(Function.prototype, { argumentNames: function() { var names =3D = this.toString().match(/^[\s\(]*function[^(]*\(([^\)]*)\)/)[1] .replace(/\s+/g, '').split(','); return names.length =3D=3D 1 && !names[0] ? [] : names; }, bind: function() { if (arguments.length < 2 && Object.isUndefined(arguments[0])) return = this; var __method =3D this, args =3D $A(arguments), object =3D = args.shift(); return function() { return __method.apply(object, args.concat($A(arguments))); } }, bindAsEventListener: function() { var __method =3D this, args =3D $A(arguments), object =3D = args.shift(); return function(event) { return __method.apply(object, [event || = window.event].concat(args)); } }, curry: function() { if (!arguments.length) return this; var __method =3D this, args =3D $A(arguments); return function() { return __method.apply(this, args.concat($A(arguments))); } }, delay: function() { var __method =3D this, args =3D $A(arguments), timeout =3D = args.shift() * 1000; return window.setTimeout(function() { return __method.apply(__method, args); }, timeout); }, defer: function() { var args =3D [0.01].concat($A(arguments)); return this.delay.apply(this, args); }, wrap: function(wrapper) { var __method =3D this; return function() { return wrapper.apply(this, = [__method.bind(this)].concat($A(arguments))); } }, methodize: function() { if (this._methodized) return this._methodized; var __method =3D this; return this._methodized =3D function() { return __method.apply(null, [this].concat($A(arguments))); }; } }); Date.prototype.toJSON =3D 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 =3D { these: function() { var returnValue; for (var i =3D 0, length =3D arguments.length; i < length; i++) { var lambda =3D arguments[i]; try { returnValue =3D lambda(); break; } catch (e) { } } return returnValue; } }; RegExp.prototype.match =3D RegExp.prototype.test; RegExp.escape =3D function(str) { return String(str).replace(/([.*+?^=3D!:${}()|[\]\/\\])/g, '\\$1'); }; /*-----------------------------------------------------------------------= ---*/ var PeriodicalExecuter =3D Class.create({ initialize: function(callback, frequency) { this.callback =3D callback; this.frequency =3D frequency; this.currentlyExecuting =3D false; this.registerCallback(); }, registerCallback: function() { this.timer =3D setInterval(this.onTimerEvent.bind(this), = this.frequency * 1000); }, execute: function() { this.callback(this); }, stop: function() { if (!this.timer) return; clearInterval(this.timer); this.timer =3D null; }, onTimerEvent: function() { if (!this.currentlyExecuting) { try { this.currentlyExecuting =3D true; this.execute(); } finally { this.currentlyExecuting =3D false; } } } }); Object.extend(String, { interpret: function(value) { return value =3D=3D null ? '' : String(value); }, specialChar: { '\b': '\\b', '\t': '\\t', '\n': '\\n', '\f': '\\f', '\r': '\\r', '\\': '\\\\' } }); Object.extend(String.prototype, { gsub: function(pattern, replacement) { var result =3D '', source =3D this, match; replacement =3D arguments.callee.prepareReplacement(replacement); while (source.length > 0) { if (match =3D source.match(pattern)) { result +=3D source.slice(0, match.index); result +=3D String.interpret(replacement(match)); source =3D source.slice(match.index + match[0].length); } else { result +=3D source, source =3D ''; } } return result; }, sub: function(pattern, replacement, count) { replacement =3D this.gsub.prepareReplacement(replacement); count =3D 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 =3D length || 30; truncation =3D 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 =3D new RegExp(Prototype.ScriptFragment, 'img'); var matchOne =3D 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 =3D arguments.callee; self.text.data =3D this; return self.div.innerHTML; }, unescapeHTML: function() { var div =3D new Element('div'); div.innerHTML =3D 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 =3D this.strip().match(/([^?#]*)(#.*)?$/); if (!match) return { }; return match[1].split(separator || '&').inject({ }, function(hash, = pair) { if ((pair =3D pair.split('=3D'))[0]) { var key =3D decodeURIComponent(pair.shift()); var value =3D pair.length > 1 ? pair.join('=3D') : pair[0]; if (value !=3D undefined) value =3D decodeURIComponent(value); if (key in hash) { if (!Object.isArray(hash[key])) hash[key] =3D [hash[key]]; hash[key].push(value); } else hash[key] =3D 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 =3D this.split('-'), len =3D parts.length; if (len =3D=3D 1) return parts[0]; var camelized =3D this.charAt(0) =3D=3D '-' ? parts[0].charAt(0).toUpperCase() + parts[0].substring(1) : parts[0]; for (var i =3D 1; i < len; i++) camelized +=3D 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 =3D this.gsub(/[\x00-\x1f\\]/, function(match) { var character =3D 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 =3D this; if (str.blank()) return false; str =3D this.replace(/\\./g, '@').replace(/"[^"\\\n\r]*"/g, ''); return (/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test(str); }, evalJSON: function(sanitize) { var json =3D 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) =3D=3D=3D 0; }, endsWith: function(pattern) { var d =3D this.length - pattern.length; return d >=3D 0 && this.lastIndexOf(pattern) =3D=3D=3D d; }, empty: function() { return this =3D=3D ''; }, 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,'&').replace(//g,'>'); }, unescapeHTML: function() { return = this.stripTags().replace(/&/g,'&').replace(/</g,'<').replace(/>= /g,'>'); } }); String.prototype.gsub.prepareReplacement =3D function(replacement) { if (Object.isFunction(replacement)) return replacement; var template =3D new Template(replacement); return function(match) { return template.evaluate(match) }; }; String.prototype.parseQuery =3D String.prototype.toQueryParams; Object.extend(String.prototype.escapeHTML, { div: document.createElement('div'), text: document.createTextNode('') }); String.prototype.escapeHTML.div.appendChild(String.prototype.escapeHTML.t= ext); var Template =3D Class.create({ initialize: function(template, pattern) { this.template =3D template.toString(); this.pattern =3D pattern || Template.Pattern; }, evaluate: function(object) { if (Object.isFunction(object.toTemplateReplacements)) object =3D object.toTemplateReplacements(); return this.template.gsub(this.pattern, function(match) { if (object =3D=3D null) return ''; var before =3D match[1] || ''; if (before =3D=3D '\\') return match[2]; var ctx =3D object, expr =3D match[3]; var pattern =3D /^([^.[]+|\[((?:.*?[^\\])?)\])(\.|\[|$)/; match =3D pattern.exec(expr); if (match =3D=3D null) return before; while (match !=3D null) { var comp =3D match[1].startsWith('[') ? match[2].gsub('\\\\]', = ']') : match[1]; ctx =3D ctx[comp]; if (null =3D=3D ctx || '' =3D=3D match[3]) break; expr =3D expr.substring('[' =3D=3D match[3] ? match[1].length : = match[0].length); match =3D pattern.exec(expr); } return before + String.interpret(ctx); }); } }); Template.Pattern =3D /(^|.|\r|\n)(#\{(.*?)\})/; var $break =3D { }; var Enumerable =3D { each: function(iterator, context) { var index =3D 0; try { this._each(function(value) { iterator.call(context, value, index++); }); } catch (e) { if (e !=3D $break) throw e; } return this; }, eachSlice: function(number, iterator, context) { var index =3D -number, slices =3D [], array =3D this.toArray(); if (number < 1) return array; while ((index +=3D number) < array.length) slices.push(array.slice(index, index+number)); return slices.collect(iterator, context); }, all: function(iterator, context) { iterator =3D iterator || Prototype.K; var result =3D true; this.each(function(value, index) { result =3D result && !!iterator.call(context, value, index); if (!result) throw $break; }); return result; }, any: function(iterator, context) { iterator =3D iterator || Prototype.K; var result =3D false; this.each(function(value, index) { if (result =3D !!iterator.call(context, value, index)) throw $break; }); return result; }, collect: function(iterator, context) { iterator =3D iterator || Prototype.K; var results =3D []; 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 =3D value; throw $break; } }); return result; }, findAll: function(iterator, context) { var results =3D []; this.each(function(value, index) { if (iterator.call(context, value, index)) results.push(value); }); return results; }, grep: function(filter, iterator, context) { iterator =3D iterator || Prototype.K; var results =3D []; if (Object.isString(filter)) filter =3D 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) !=3D -1) return true; var found =3D false; this.each(function(value) { if (value =3D=3D object) { found =3D true; throw $break; } }); return found; }, inGroupsOf: function(number, fillWith) { fillWith =3D 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 =3D iterator.call(context, memo, value, index); }); return memo; }, invoke: function(method) { var args =3D $A(arguments).slice(1); return this.map(function(value) { return value[method].apply(value, args); }); }, max: function(iterator, context) { iterator =3D iterator || Prototype.K; var result; this.each(function(value, index) { value =3D iterator.call(context, value, index); if (result =3D=3D null || value >=3D result) result =3D value; }); return result; }, min: function(iterator, context) { iterator =3D iterator || Prototype.K; var result; this.each(function(value, index) { value =3D iterator.call(context, value, index); if (result =3D=3D null || value < result) result =3D value; }); return result; }, partition: function(iterator, context) { iterator =3D iterator || Prototype.K; var trues =3D [], falses =3D []; this.each(function(value, index) { (iterator.call(context, value, index) ? trues : falses).push(value); }); return [trues, falses]; }, pluck: function(property) { var results =3D []; this.each(function(value) { results.push(value[property]); }); return results; }, reject: function(iterator, context) { var results =3D []; 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 =3D left.criteria, b =3D right.criteria; return a < b ? -1 : a > b ? 1 : 0; }).pluck('value'); }, toArray: function() { return this.map(); }, zip: function() { var iterator =3D Prototype.K, args =3D $A(arguments); if (Object.isFunction(args.last())) iterator =3D args.pop(); var collections =3D [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 '#'; } }; 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 =3D iterable.length || 0, results =3D new Array(length); while (length--) results[length] =3D iterable[length]; return results; } if (Prototype.Browser.WebKit) { $A =3D 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 =3D=3D=3D 'function' && typeof iterable.length = =3D=3D=3D 'number' && typeof iterable.item =3D=3D=3D 'function') && = iterable.toArray) return iterable.toArray(); var length =3D iterable.length || 0, results =3D new Array(length); while (length--) results[length] =3D iterable[length]; return results; }; } Array.from =3D $A; Object.extend(Array.prototype, Enumerable); if (!Array.prototype._reverse) Array.prototype._reverse =3D = Array.prototype.reverse; Object.extend(Array.prototype, { _each: function(iterator) { for (var i =3D 0, length =3D this.length; i < length; i++) iterator(this[i]); }, clear: function() { this.length =3D 0; return this; }, first: function() { return this[0]; }, last: function() { return this[this.length - 1]; }, compact: function() { return this.select(function(value) { return value !=3D null; }); }, flatten: function() { return this.inject([], function(array, value) { return array.concat(Object.isArray(value) ? value.flatten() : [value]); }); }, without: function() { var values =3D $A(arguments); return this.select(function(value) { return !values.include(value); }); }, reverse: function(inline) { return (inline !=3D=3D 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 =3D=3D index || (sorted ? array.last() !=3D 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 =3D=3D=3D value = }); }); }, clone: function() { return [].concat(this); }, size: function() { return this.length; }, inspect: function() { return '[' + this.map(Object.inspect).join(', ') + ']'; }, toJSON: function() { var results =3D []; this.each(function(object) { var value =3D 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 =3D Array.prototype.forEach; if (!Array.prototype.indexOf) Array.prototype.indexOf =3D function(item, = i) { i || (i =3D 0); var length =3D this.length; if (i < 0) i =3D length + i; for (; i < length; i++) if (this[i] =3D=3D=3D item) return i; return -1; }; if (!Array.prototype.lastIndexOf) Array.prototype.lastIndexOf =3D = function(item, i) { i =3D isNaN(i) ? this.length : (i < 0 ? this.length + i : i) + 1; var n =3D this.slice(0, i).reverse().indexOf(item); return (n < 0) ? n : i - n - 1; }; Array.prototype.toArray =3D Array.prototype.clone; function $w(string) { if (!Object.isString(string)) return []; string =3D string.strip(); return string ? string.split(/\s+/) : []; } if (Prototype.Browser.Opera){ Array.prototype.concat =3D function() { var array =3D []; for (var i =3D 0, length =3D this.length; i < length; i++) = array.push(this[i]); for (var i =3D 0, length =3D arguments.length; i < length; i++) { if (Object.isArray(arguments[i])) { for (var j =3D 0, arrayLength =3D 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 =3D 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] =3D Math[method].methodize(); }); function $H(object) { return new Hash(object); }; var Hash =3D Class.create(Enumerable, (function() { function toQueryPair(key, value) { if (Object.isUndefined(value)) return key; return key + '=3D' + encodeURIComponent(String.interpret(value)); } return { initialize: function(object) { this._object =3D Object.isHash(object) ? object.toObject() : = Object.clone(object); }, _each: function(iterator) { for (var key in this._object) { var value =3D this._object[key], pair =3D [key, value]; pair.key =3D key; pair.value =3D value; iterator(pair); } }, set: function(key, value) { return this._object[key] =3D value; }, get: function(key) { // simulating poorly supported hasOwnProperty if (this._object[key] !=3D=3D Object.prototype[key]) return this._object[key]; }, unset: function(key) { var value =3D 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 =3D this.detect(function(pair) { return pair.value =3D=3D=3D 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 =3D encodeURIComponent(pair.key), values =3D pair.value; if (values && typeof values =3D=3D '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 '#'; }, toJSON: function() { return Object.toJSON(this.toObject()); }, clone: function() { return new Hash(this); } } })()); Hash.prototype.toTemplateReplacements =3D Hash.prototype.toObject; Hash.from =3D $H; var ObjectRange =3D Class.create(Enumerable, { initialize: function(start, end, exclusive) { this.start =3D start; this.end =3D end; this.exclusive =3D exclusive; }, _each: function(iterator) { var value =3D this.start; while (this.include(value)) { iterator(value); value =3D value.succ(); } }, include: function(value) { if (value < this.start) return false; if (this.exclusive) return value < this.end; return value <=3D this.end; } }); var $R =3D function(start, end, exclusive) { return new ObjectRange(start, end, exclusive); }; var Ajax =3D { 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 =3D { responders: [], _each: function(iterator) { this.responders._each(iterator); }, register: function(responder) { if (!this.include(responder)) this.responders.push(responder); }, unregister: function(responder) { this.responders =3D 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 =3D Class.create({ initialize: function(options) { this.options =3D { 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 =3D this.options.method.toLowerCase(); if (Object.isString(this.options.parameters)) this.options.parameters =3D = this.options.parameters.toQueryParams(); else if (Object.isHash(this.options.parameters)) this.options.parameters =3D this.options.parameters.toObject(); } }); Ajax.Request =3D Class.create(Ajax.Base, { _complete: false, initialize: function($super, url, options) { $super(options); this.transport =3D Ajax.getTransport(); this.request(url); }, request: function(url) { this.url =3D url; this.method =3D this.options.method; var params =3D Object.clone(this.options.parameters); if (!['get', 'post'].include(this.method)) { // simulate other verbs over post params['_method'] =3D this.method; this.method =3D 'post'; } this.parameters =3D params; if (params =3D Object.toQueryString(params)) { // when GET, append parameters to URL if (this.method =3D=3D 'get') this.url +=3D (this.url.include('?') ? '&' : '?') + params; else if (/Konqueror|Safari|KHTML/.test(navigator.userAgent)) params +=3D '&_=3D'; } try { var response =3D 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 =3D = this.onStateChange.bind(this); this.setRequestHeaders(); this.body =3D this.method =3D=3D '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 =3D this.transport.readyState; if (readyState > 1 && !((readyState =3D=3D 4) && this._complete)) this.respondToReadyState(this.transport.readyState); }, setRequestHeaders: function() { var headers =3D { 'X-Requested-With': 'XMLHttpRequest', 'X-Prototype-Version': Prototype.Version, 'Accept': 'text/javascript, text/html, application/xml, text/xml, = */*' }; if (this.method =3D=3D 'post') { headers['Content-type'] =3D this.options.contentType + (this.options.encoding ? '; charset=3D' + 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'] =3D 'close'; } // user-defined headers if (typeof this.options.requestHeaders =3D=3D 'object') { var extras =3D this.options.requestHeaders; if (Object.isFunction(extras.push)) for (var i =3D 0, length =3D extras.length; i < length; i +=3D = 2) headers[extras[i]] =3D extras[i+1]; else $H(extras).each(function(pair) { headers[pair.key] =3D = pair.value }); } for (var name in headers) this.transport.setRequestHeader(name, headers[name]); }, success: function() { var status =3D this.getStatus(); return !status || (status >=3D 200 && status < 300); }, getStatus: function() { try { return this.transport.status || 0; } catch (e) { return 0 } }, respondToReadyState: function(readyState) { var state =3D Ajax.Request.Events[readyState], response =3D new = Ajax.Response(this); if (state =3D=3D 'Complete') { try { this._complete =3D 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 =3D response.getHeader('Content-type'); if (this.options.evalJS =3D=3D '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 =3D=3D 'Complete') { // avoid memory leak in MSIE: clean up this.transport.onreadystatechange =3D Prototype.emptyFunction; } }, isSameOrigin: function() { var m =3D this.url.match(/^\s*https?:\/\/[^\/]*/); return !m || (m[0] =3D=3D = '#{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 =3D ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete']; Ajax.Response =3D Class.create({ initialize: function(request){ this.request =3D request; var transport =3D this.transport =3D request.transport, readyState =3D this.readyState =3D transport.readyState; if((readyState > 2 && !Prototype.Browser.IE) || readyState =3D=3D 4) = { this.status =3D this.getStatus(); this.statusText =3D this.getStatusText(); this.responseText =3D String.interpret(transport.responseText); this.headerJSON =3D this._getHeaderJSON(); } if(readyState =3D=3D 4) { var xml =3D transport.responseXML; this.responseXML =3D Object.isUndefined(xml) ? null : xml; this.responseJSON =3D 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 =3D this.getHeader('X-JSON'); if (!json) return null; json =3D decodeURIComponent(escape(json)); try { return json.evalJSON(this.request.options.sanitizeJSON || !this.request.isSameOrigin()); } catch (e) { this.request.dispatchException(e); } }, _getResponseJSON: function() { var options =3D this.request.options; if (!options.evalJSON || (options.evalJSON !=3D '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 =3D Class.create(Ajax.Request, { initialize: function($super, container, url, options) { this.container =3D { success: (container.success || container), failure: (container.failure || (container.success ? null : = container)) }; options =3D Object.clone(options); var onComplete =3D options.onComplete; options.onComplete =3D (function(response, json) { this.updateContent(response.responseText); if (Object.isFunction(onComplete)) onComplete(response, json); }).bind(this); $super(url, options); }, updateContent: function(responseText) { var receiver =3D this.container[this.success() ? 'success' : = 'failure'], options =3D this.options; if (!options.evalScripts) responseText =3D = responseText.stripScripts(); if (receiver =3D $(receiver)) { if (options.insertion) { if (Object.isString(options.insertion)) { var insertion =3D { }; insertion[options.insertion] =3D = responseText; receiver.insert(insertion); } else options.insertion(receiver, responseText); } else receiver.update(responseText); } } }); Ajax.PeriodicalUpdater =3D Class.create(Ajax.Base, { initialize: function($super, container, url, options) { $super(options); this.onComplete =3D this.options.onComplete; this.frequency =3D (this.options.frequency || 2); this.decay =3D (this.options.decay || 1); this.updater =3D { }; this.container =3D container; this.url =3D url; this.start(); }, start: function() { this.options.onComplete =3D this.updateComplete.bind(this); this.onTimerEvent(); }, stop: function() { this.updater.options.onComplete =3D undefined; clearTimeout(this.timer); (this.onComplete || Prototype.emptyFunction).apply(this, arguments); }, updateComplete: function(response) { if (this.options.decay) { this.decay =3D (response.responseText =3D=3D this.lastText ? this.decay * this.options.decay : 1); this.lastText =3D response.responseText; } this.timer =3D this.onTimerEvent.bind(this).delay(this.decay * = this.frequency); }, onTimerEvent: function() { this.updater =3D new Ajax.Updater(this.container, this.url, = this.options); } }); function $(element) { if (arguments.length > 1) { for (var i =3D 0, elements =3D [], length =3D arguments.length; i < = length; i++) elements.push($(arguments[i])); return elements; } if (Object.isString(element)) element =3D document.getElementById(element); return Element.extend(element); } if (Prototype.BrowserFeatures.XPath) { document._getElementsByXPath =3D function(expression, parentElement) { var results =3D []; var query =3D document.evaluate(expression, $(parentElement) || = document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); for (var i =3D 0, length =3D query.snapshotLength; i < length; i++) results.push(Element.extend(query.snapshotItem(i))); return results; }; } /*-----------------------------------------------------------------------= ---*/ if (!window.Node) var Node =3D { }; 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 =3D this.Element; this.Element =3D function(tagName, attributes) { attributes =3D attributes || { }; tagName =3D tagName.toLowerCase(); var cache =3D Element.cache; if (Prototype.Browser.IE && attributes.name) { tagName =3D '<' + tagName + ' name=3D"' + attributes.name + '">'; delete attributes.name; return Element.writeAttribute(document.createElement(tagName), = attributes); } if (!cache[tagName]) cache[tagName] =3D = Element.extend(document.createElement(tagName)); return Element.writeAttribute(cache[tagName].cloneNode(false), = attributes); }; Object.extend(this.Element, element || { }); if (element) this.Element.prototype =3D element.prototype; }).call(window); Element.cache =3D { }; Element.Methods =3D { visible: function(element) { return $(element).style.display !=3D 'none'; }, toggle: function(element) { element =3D $(element); Element[Element.visible(element) ? 'hide' : 'show'](element); return element; }, hide: function(element) { element =3D $(element); element.style.display =3D 'none'; return element; }, show: function(element) { element =3D $(element); element.style.display =3D ''; return element; }, remove: function(element) { element =3D $(element); element.parentNode.removeChild(element); return element; }, update: function(element, content) { element =3D $(element); if (content && content.toElement) content =3D content.toElement(); if (Object.isElement(content)) return = element.update().insert(content); content =3D Object.toHTML(content); element.innerHTML =3D content.stripScripts(); content.evalScripts.bind(content).defer(); return element; }, replace: function(element, content) { element =3D $(element); if (content && content.toElement) content =3D content.toElement(); else if (!Object.isElement(content)) { content =3D Object.toHTML(content); var range =3D element.ownerDocument.createRange(); range.selectNode(element); content.evalScripts.bind(content).defer(); content =3D = range.createContextualFragment(content.stripScripts()); } element.parentNode.replaceChild(content, element); return element; }, insert: function(element, insertions) { element =3D $(element); if (Object.isString(insertions) || Object.isNumber(insertions) || Object.isElement(insertions) || (insertions && = (insertions.toElement || insertions.toHTML))) insertions =3D {bottom:insertions}; var content, insert, tagName, childNodes; for (var position in insertions) { content =3D insertions[position]; position =3D position.toLowerCase(); insert =3D Element._insertionTranslations[position]; if (content && content.toElement) content =3D content.toElement(); if (Object.isElement(content)) { insert(element, content); continue; } content =3D Object.toHTML(content); tagName =3D ((position =3D=3D 'before' || position =3D=3D 'after') ? element.parentNode : element).tagName.toUpperCase(); childNodes =3D Element._getContentFromAnonymousElement(tagName, = content.stripScripts()); if (position =3D=3D 'top' || position =3D=3D 'after') = childNodes.reverse(); childNodes.each(insert.curry(element)); content.evalScripts.bind(content).defer(); } return element; }, wrap: function(element, wrapper, attributes) { element =3D $(element); if (Object.isElement(wrapper)) $(wrapper).writeAttribute(attributes || { }); else if (Object.isString(wrapper)) wrapper =3D new Element(wrapper, = attributes); else wrapper =3D new Element('div', wrapper); if (element.parentNode) element.parentNode.replaceChild(wrapper, element); wrapper.appendChild(element); return wrapper; }, inspect: function(element) { element =3D $(element); var result =3D '<' + element.tagName.toLowerCase(); $H({'id': 'id', 'className': 'class'}).each(function(pair) { var property =3D pair.first(), attribute =3D pair.last(); var value =3D (element[property] || '').toString(); if (value) result +=3D ' ' + attribute + '=3D' + = value.inspect(true); }); return result + '>'; }, recursivelyCollect: function(element, property) { element =3D $(element); var elements =3D []; while (element =3D element[property]) if (element.nodeType =3D=3D 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 =3D $(element).firstChild; while (element && element.nodeType !=3D 1) element =3D = element.nextSibling; return $(element); }, immediateDescendants: function(element) { if (!(element =3D $(element).firstChild)) return []; while (element && element.nodeType !=3D 1) element =3D = 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 =3D $(element); return = element.previousSiblings().reverse().concat(element.nextSiblings()); }, match: function(element, selector) { if (Object.isString(selector)) selector =3D new Selector(selector); return selector.match($(element)); }, up: function(element, expression, index) { element =3D $(element); if (arguments.length =3D=3D 1) return $(element.parentNode); var ancestors =3D element.ancestors(); return Object.isNumber(expression) ? ancestors[expression] : Selector.findElement(ancestors, expression, index); }, down: function(element, expression, index) { element =3D $(element); if (arguments.length =3D=3D 1) return element.firstDescendant(); return Object.isNumber(expression) ? = element.descendants()[expression] : Element.select(element, expression)[index || 0]; }, previous: function(element, expression, index) { element =3D $(element); if (arguments.length =3D=3D 1) return = $(Selector.handlers.previousElementSibling(element)); var previousSiblings =3D element.previousSiblings(); return Object.isNumber(expression) ? previousSiblings[expression] : Selector.findElement(previousSiblings, expression, index); }, next: function(element, expression, index) { element =3D $(element); if (arguments.length =3D=3D 1) return = $(Selector.handlers.nextElementSibling(element)); var nextSiblings =3D element.nextSiblings(); return Object.isNumber(expression) ? nextSiblings[expression] : Selector.findElement(nextSiblings, expression, index); }, select: function() { var args =3D $A(arguments), element =3D $(args.shift()); return Selector.findChildElements(element, args); }, adjacent: function() { var args =3D $A(arguments), element =3D $(args.shift()); return Selector.findChildElements(element.parentNode, = args).without(element); }, identify: function(element) { element =3D $(element); var id =3D element.readAttribute('id'), self =3D arguments.callee; if (id) return id; do { id =3D 'anonymous_element_' + self.counter++ } while ($(id)); element.writeAttribute('id', id); return id; }, readAttribute: function(element, name) { element =3D $(element); if (Prototype.Browser.IE) { var t =3D Element._attributeTranslations.read; if (t.values[name]) return t.values[name](element, name); if (t.names[name]) name =3D 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 =3D $(element); var attributes =3D { }, t =3D Element._attributeTranslations.write; if (typeof name =3D=3D 'object') attributes =3D name; else attributes[name] =3D Object.isUndefined(value) ? true : value; for (var attr in attributes) { name =3D t.names[attr] || attr; value =3D attributes[attr]; if (t.values[attr]) name =3D t.values[attr](element, value); if (value =3D=3D=3D false || value =3D=3D=3D null) element.removeAttribute(name); else if (value =3D=3D=3D 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 =3D $(element))) return; var elementClassName =3D element.className; return (elementClassName.length > 0 && (elementClassName =3D=3D = className || new RegExp("(^|\\s)" + className + = "(\\s|$)").test(elementClassName))); }, addClassName: function(element, className) { if (!(element =3D $(element))) return; if (!element.hasClassName(className)) element.className +=3D (element.className ? ' ' : '') + className; return element; }, removeClassName: function(element, className) { if (!(element =3D $(element))) return; element.className =3D element.className.replace( new RegExp("(^|\\s+)" + className + "(\\s+|$)"), ' ').strip(); return element; }, toggleClassName: function(element, className) { if (!(element =3D $(element))) return; return element[element.hasClassName(className) ? 'removeClassName' : 'addClassName'](className); }, // removes whitespace-only text node children cleanWhitespace: function(element) { element =3D $(element); var node =3D element.firstChild; while (node) { var nextNode =3D node.nextSibling; if (node.nodeType =3D=3D 3 && !/\S/.test(node.nodeValue)) element.removeChild(node); node =3D nextNode; } return element; }, empty: function(element) { return $(element).innerHTML.blank(); }, descendantOf: function(element, ancestor) { element =3D $(element), ancestor =3D $(ancestor); if (element.compareDocumentPosition) return (element.compareDocumentPosition(ancestor) & 8) =3D=3D=3D = 8; if (ancestor.contains) return ancestor.contains(element) && ancestor !=3D=3D element; while (element =3D element.parentNode) if (element =3D=3D ancestor) return true; return false; }, scrollTo: function(element) { element =3D $(element); var pos =3D element.cumulativeOffset(); window.scrollTo(pos[0], pos[1]); return element; }, getStyle: function(element, style) { element =3D $(element); style =3D style =3D=3D 'float' ? 'cssFloat' : style.camelize(); var value =3D element.style[style]; if (!value || value =3D=3D 'auto') { var css =3D document.defaultView.getComputedStyle(element, null); value =3D css ? css[style] : null; } if (style =3D=3D 'opacity') return value ? parseFloat(value) : 1.0; return value =3D=3D 'auto' ? null : value; }, getOpacity: function(element) { return $(element).getStyle('opacity'); }, setStyle: function(element, styles) { element =3D $(element); var elementStyle =3D element.style, match; if (Object.isString(styles)) { element.style.cssText +=3D ';' + styles; return styles.include('opacity') ? element.setOpacity(styles.match(/opacity:\s*(\d?\.?\d*)/)[1]) : = element; } for (var property in styles) if (property =3D=3D 'opacity') = element.setOpacity(styles[property]); else elementStyle[(property =3D=3D 'float' || property =3D=3D = 'cssFloat') ? (Object.isUndefined(elementStyle.styleFloat) ? 'cssFloat' : = 'styleFloat') : property] =3D styles[property]; return element; }, setOpacity: function(element, value) { element =3D $(element); element.style.opacity =3D (value =3D=3D 1 || value =3D=3D=3D '') ? = '' : (value < 0.00001) ? 0 : value; return element; }, getDimensions: function(element) { element =3D $(element); var display =3D element.getStyle('display'); if (display !=3D 'none' && display !=3D 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 =3D element.style; var originalVisibility =3D els.visibility; var originalPosition =3D els.position; var originalDisplay =3D els.display; els.visibility =3D 'hidden'; els.position =3D 'absolute'; els.display =3D 'block'; var originalWidth =3D element.clientWidth; var originalHeight =3D element.clientHeight; els.display =3D originalDisplay; els.position =3D originalPosition; els.visibility =3D originalVisibility; return {width: originalWidth, height: originalHeight}; }, makePositioned: function(element) { element =3D $(element); var pos =3D Element.getStyle(element, 'position'); if (pos =3D=3D 'static' || !pos) { element._madePositioned =3D true; element.style.position =3D '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 =3D 0; element.style.left =3D 0; } } return element; }, undoPositioned: function(element) { element =3D $(element); if (element._madePositioned) { element._madePositioned =3D undefined; element.style.position =3D element.style.top =3D element.style.left =3D element.style.bottom =3D element.style.right =3D ''; } return element; }, makeClipping: function(element) { element =3D $(element); if (element._overflow) return element; element._overflow =3D Element.getStyle(element, 'overflow') || = 'auto'; if (element._overflow !=3D=3D 'hidden') element.style.overflow =3D 'hidden'; return element; }, undoClipping: function(element) { element =3D $(element); if (!element._overflow) return element; element.style.overflow =3D element._overflow =3D=3D 'auto' ? '' : = element._overflow; element._overflow =3D null; return element; }, cumulativeOffset: function(element) { var valueT =3D 0, valueL =3D 0; do { valueT +=3D element.offsetTop || 0; valueL +=3D element.offsetLeft || 0; element =3D element.offsetParent; } while (element); return Element._returnOffset(valueL, valueT); }, positionedOffset: function(element) { var valueT =3D 0, valueL =3D 0; do { valueT +=3D element.offsetTop || 0; valueL +=3D element.offsetLeft || 0; element =3D element.offsetParent; if (element) { if (element.tagName.toUpperCase() =3D=3D 'BODY') break; var p =3D Element.getStyle(element, 'position'); if (p !=3D=3D 'static') break; } } while (element); return Element._returnOffset(valueL, valueT); }, absolutize: function(element) { element =3D $(element); if (element.getStyle('position') =3D=3D 'absolute') return element; // Position.prepare(); // To be done manually by Scripty when it = needs it. var offsets =3D element.positionedOffset(); var top =3D offsets[1]; var left =3D offsets[0]; var width =3D element.clientWidth; var height =3D element.clientHeight; element._originalLeft =3D left - parseFloat(element.style.left || = 0); element._originalTop =3D top - parseFloat(element.style.top || = 0); element._originalWidth =3D element.style.width; element._originalHeight =3D element.style.height; element.style.position =3D 'absolute'; element.style.top =3D top + 'px'; element.style.left =3D left + 'px'; element.style.width =3D width + 'px'; element.style.height =3D height + 'px'; return element; }, relativize: function(element) { element =3D $(element); if (element.getStyle('position') =3D=3D 'relative') return element; // Position.prepare(); // To be done manually by Scripty when it = needs it. element.style.position =3D 'relative'; var top =3D parseFloat(element.style.top || 0) - = (element._originalTop || 0); var left =3D parseFloat(element.style.left || 0) - = (element._originalLeft || 0); element.style.top =3D top + 'px'; element.style.left =3D left + 'px'; element.style.height =3D element._originalHeight; element.style.width =3D element._originalWidth; return element; }, cumulativeScrollOffset: function(element) { var valueT =3D 0, valueL =3D 0; do { valueT +=3D element.scrollTop || 0; valueL +=3D element.scrollLeft || 0; element =3D element.parentNode; } while (element); return Element._returnOffset(valueL, valueT); }, getOffsetParent: function(element) { if (element.offsetParent) return $(element.offsetParent); if (element =3D=3D document.body) return $(element); while ((element =3D element.parentNode) && element !=3D = document.body) if (Element.getStyle(element, 'position') !=3D 'static') return $(element); return $(document.body); }, viewportOffset: function(forElement) { var valueT =3D 0, valueL =3D 0; var element =3D forElement; do { valueT +=3D element.offsetTop || 0; valueL +=3D element.offsetLeft || 0; // Safari fix if (element.offsetParent =3D=3D document.body && Element.getStyle(element, 'position') =3D=3D 'absolute') break; } while (element =3D element.offsetParent); element =3D forElement; do { if (!Prototype.Browser.Opera || (element.tagName && = (element.tagName.toUpperCase() =3D=3D 'BODY'))) { valueT -=3D element.scrollTop || 0; valueL -=3D element.scrollLeft || 0; } } while (element =3D element.parentNode); return Element._returnOffset(valueL, valueT); }, clonePosition: function(element, source) { var options =3D Object.extend({ setLeft: true, setTop: true, setWidth: true, setHeight: true, offsetTop: 0, offsetLeft: 0 }, arguments[2] || { }); // find page position of source source =3D $(source); var p =3D source.viewportOffset(); // find coordinate system to use element =3D $(element); var delta =3D [0, 0]; var parent =3D null; // delta [0,0] will do fine with position: fixed elements, // position:absolute needs offsetParent deltas if (Element.getStyle(element, 'position') =3D=3D 'absolute') { parent =3D element.getOffsetParent(); delta =3D parent.viewportOffset(); } // correct by body offsets (fixes Safari) if (parent =3D=3D document.body) { delta[0] -=3D document.body.offsetLeft; delta[1] -=3D document.body.offsetTop; } // set position if (options.setLeft) element.style.left =3D (p[0] - delta[0] + = options.offsetLeft) + 'px'; if (options.setTop) element.style.top =3D (p[1] - delta[1] + = options.offsetTop) + 'px'; if (options.setWidth) element.style.width =3D source.offsetWidth + = 'px'; if (options.setHeight) element.style.height =3D source.offsetHeight = + 'px'; return element; } }; Element.Methods.identify.counter =3D 1; Object.extend(Element.Methods, { getElementsBySelector: Element.Methods.select, childElements: Element.Methods.immediateDescendants }); Element._attributeTranslations =3D { write: { names: { className: 'class', htmlFor: 'for' }, values: { } } }; if (Prototype.Browser.Opera) { Element.Methods.getStyle =3D Element.Methods.getStyle.wrap( function(proceed, element, style) { switch (style) { case 'left': case 'top': case 'right': case 'bottom': if (proceed(element, 'position') =3D=3D=3D '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 =3D parseInt(proceed(element, style), 10); if (dim !=3D=3D element['offset' + style.capitalize()]) return dim + 'px'; var properties; if (style =3D=3D=3D 'height') { properties =3D ['border-top-width', 'padding-top', 'padding-bottom', 'border-bottom-width']; } else { properties =3D ['border-left-width', 'padding-left', 'padding-right', 'border-right-width']; } return properties.inject(dim, function(memo, property) { var val =3D proceed(element, property); return val =3D=3D=3D null ? memo : memo - parseInt(val, 10); }) + 'px'; default: return proceed(element, style); } } ); Element.Methods.readAttribute =3D Element.Methods.readAttribute.wrap( function(proceed, element, attribute) { if (attribute =3D=3D=3D '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 =3D = Element.Methods.getOffsetParent.wrap( function(proceed, element) { element =3D $(element); // IE throws an error if element is not in document try { element.offsetParent } catch(e) { return $(document.body) } var position =3D element.getStyle('position'); if (position !=3D=3D 'static') return proceed(element); element.setStyle({ position: 'relative' }); var value =3D proceed(element); element.setStyle({ position: position }); return value; } ); $w('positionedOffset viewportOffset').each(function(method) { Element.Methods[method] =3D Element.Methods[method].wrap( function(proceed, element) { element =3D $(element); try { element.offsetParent } catch(e) { return Element._returnOffset(0,0) } var position =3D element.getStyle('position'); if (position !=3D=3D 'static') return proceed(element); // Trigger hasLayout on the offset parent so that IE6 reports // accurate offsetTop and offsetLeft values for position: fixed. var offsetParent =3D element.getOffsetParent(); if (offsetParent && offsetParent.getStyle('position') =3D=3D=3D = 'fixed') offsetParent.setStyle({ zoom: 1 }); element.setStyle({ position: 'relative' }); var value =3D proceed(element); element.setStyle({ position: position }); return value; } ); }); Element.Methods.cumulativeOffset =3D = Element.Methods.cumulativeOffset.wrap( function(proceed, element) { try { element.offsetParent } catch(e) { return Element._returnOffset(0,0) } return proceed(element); } ); Element.Methods.getStyle =3D function(element, style) { element =3D $(element); style =3D (style =3D=3D 'float' || style =3D=3D 'cssFloat') ? = 'styleFloat' : style.camelize(); var value =3D element.style[style]; if (!value && element.currentStyle) value =3D = element.currentStyle[style]; if (style =3D=3D 'opacity') { if (value =3D (element.getStyle('filter') || = '').match(/alpha\(opacity=3D(.*)\)/)) if (value[1]) return parseFloat(value[1]) / 100; return 1.0; } if (value =3D=3D 'auto') { if ((style =3D=3D 'width' || style =3D=3D 'height') && = (element.getStyle('display') !=3D 'none')) return element['offset' + style.capitalize()] + 'px'; return null; } return value; }; Element.Methods.setOpacity =3D function(element, value) { function stripAlpha(filter){ return filter.replace(/alpha\([^\)]*\)/gi,''); } element =3D $(element); var currentStyle =3D element.currentStyle; if ((currentStyle && !currentStyle.hasLayout) || (!currentStyle && element.style.zoom =3D=3D 'normal')) element.style.zoom =3D 1; var filter =3D element.getStyle('filter'), style =3D element.style; if (value =3D=3D 1 || value =3D=3D=3D '') { (filter =3D stripAlpha(filter)) ? style.filter =3D filter : style.removeAttribute('filter'); return element; } else if (value < 0.00001) value =3D 0; style.filter =3D stripAlpha(filter) + 'alpha(opacity=3D' + (value * 100) + ')'; return element; }; Element._attributeTranslations =3D { read: { names: { 'class': 'className', 'for': 'htmlFor' }, values: { _getAttr: function(element, attribute) { return element.getAttribute(attribute, 2); }, _getAttrNode: function(element, attribute) { var node =3D element.getAttributeNode(attribute); return node ? node.value : ""; }, _getEv: function(element, attribute) { attribute =3D 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 =3D { names: Object.extend({ cellpadding: 'cellPadding', cellspacing: 'cellSpacing' }, Element._attributeTranslations.read.names), values: { checked: function(element, value) { element.checked =3D !!value; }, style: function(element, value) { element.style.cssText =3D value ? value : ''; } } }; Element._attributeTranslations.has =3D {}; $w('colSpan rowSpan vAlign dateTime accessKey tabIndex ' + 'encType maxLength readOnly longDesc = frameBorder').each(function(attr) { Element._attributeTranslations.write.names[attr.toLowerCase()] =3D = attr; Element._attributeTranslations.has[attr.toLowerCase()] =3D 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 =3D function(element, value) { element =3D $(element); element.style.opacity =3D (value =3D=3D 1) ? 0.999999 : (value =3D=3D=3D '') ? '' : (value < 0.00001) ? 0 : value; return element; }; } else if (Prototype.Browser.WebKit) { Element.Methods.setOpacity =3D function(element, value) { element =3D $(element); element.style.opacity =3D (value =3D=3D 1 || value =3D=3D=3D '') ? = '' : (value < 0.00001) ? 0 : value; if (value =3D=3D 1) if(element.tagName.toUpperCase() =3D=3D 'IMG' && element.width) { element.width++; element.width--; } else try { var n =3D 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 =3D function(element) { var valueT =3D 0, valueL =3D 0; do { valueT +=3D element.offsetTop || 0; valueL +=3D element.offsetLeft || 0; if (element.offsetParent =3D=3D document.body) if (Element.getStyle(element, 'position') =3D=3D 'absolute') = break; element =3D 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 =3D function(element, content) { element =3D $(element); if (content && content.toElement) content =3D content.toElement(); if (Object.isElement(content)) return = element.update().insert(content); content =3D Object.toHTML(content); var tagName =3D 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 =3D content.stripScripts(); content.evalScripts.bind(content).defer(); return element; }; } if ('outerHTML' in document.createElement('div')) { Element.Methods.replace =3D function(element, content) { element =3D $(element); if (content && content.toElement) content =3D content.toElement(); if (Object.isElement(content)) { element.parentNode.replaceChild(content, element); return element; } content =3D Object.toHTML(content); var parent =3D element.parentNode, tagName =3D = parent.tagName.toUpperCase(); if (Element._insertionTranslations.tags[tagName]) { var nextSibling =3D element.next(); var fragments =3D 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 =3D content.stripScripts(); content.evalScripts.bind(content).defer(); return element; }; } Element._returnOffset =3D function(l, t) { var result =3D [l, t]; result.left =3D l; result.top =3D t; return result; }; Element._getContentFromAnonymousElement =3D function(tagName, html) { var div =3D new Element('div'), t =3D = Element._insertionTranslations.tags[tagName]; if (t) { div.innerHTML =3D t[0] + html + t[1]; t[2].times(function() { div =3D div.firstChild }); } else div.innerHTML =3D html; return $A(div.childNodes); }; Element._insertionTranslations =3D { 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: ['', '
', 1], TBODY: ['', '
', 2], TR: ['', '
', 3], TD: ['
', '
', 4], 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 =3D { hasAttribute: function(element, attribute) { attribute =3D Element._attributeTranslations.has[attribute] || = attribute; var node =3D $(element).getAttributeNode(attribute); return !!(node && node.specified); } }; Element.Methods.ByTag =3D { }; Object.extend(Element, Element.Methods); if (!Prototype.BrowserFeatures.ElementExtensions && document.createElement('div')['__proto__']) { window.HTMLElement =3D { }; window.HTMLElement.prototype =3D = document.createElement('div')['__proto__']; Prototype.BrowserFeatures.ElementExtensions =3D true; } Element.extend =3D (function() { if (Prototype.BrowserFeatures.SpecificElementExtensions) return Prototype.K; var Methods =3D { }, ByTag =3D Element.Methods.ByTag; var extend =3D Object.extend(function(element) { if (!element || element._extendedByPrototype || element.nodeType !=3D 1 || element =3D=3D window) return = element; var methods =3D Object.clone(Methods), tagName =3D element.tagName.toUpperCase(), property, value; // extend methods for specific tags if (ByTag[tagName]) Object.extend(methods, ByTag[tagName]); for (property in methods) { value =3D methods[property]; if (Object.isFunction(value) && !(property in element)) element[property] =3D value.methodize(); } element._extendedByPrototype =3D 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 =3D function(element, attribute) { if (element.hasAttribute) return element.hasAttribute(attribute); return Element.Methods.Simulated.hasAttribute(element, attribute); }; Element.addMethods =3D function(methods) { var F =3D Prototype.BrowserFeatures, T =3D 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 =3D=3D 2) { var tagName =3D methods; methods =3D arguments[1]; } if (!tagName) Object.extend(Element.Methods, methods || { }); else { if (Object.isArray(tagName)) tagName.each(extend); else extend(tagName); } function extend(tagName) { tagName =3D tagName.toUpperCase(); if (!Element.Methods.ByTag[tagName]) Element.Methods.ByTag[tagName] =3D { }; Object.extend(Element.Methods.ByTag[tagName], methods); } function copy(methods, destination, onlyIfAbsent) { onlyIfAbsent =3D onlyIfAbsent || false; for (var property in methods) { var value =3D methods[property]; if (!Object.isFunction(value)) continue; if (!onlyIfAbsent || !(property in destination)) destination[property] =3D value.methodize(); } } function findDOMClass(tagName) { var klass; var trans =3D { "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 =3D 'HTML' + trans[tagName] + 'Element'; if (window[klass]) return window[klass]; klass =3D 'HTML' + tagName + 'Element'; if (window[klass]) return window[klass]; klass =3D 'HTML' + tagName.capitalize() + 'Element'; if (window[klass]) return window[klass]; window[klass] =3D { }; window[klass].prototype =3D = 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 =3D 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 =3D { }; }; document.viewport =3D { getDimensions: function() { var dimensions =3D { }, B =3D Prototype.Browser; $w('width height').each(function(d) { var D =3D d.capitalize(); if (B.WebKit && !document.evaluate) { // Safari <3.0 needs self.innerWidth/Height dimensions[d] =3D self['inner' + D]; } else if (B.Opera && parseFloat(window.opera.version()) < 9.5) { // Opera <9.5 needs document.body.clientWidth/Height dimensions[d] =3D document.body['client' + D] } else { dimensions[d] =3D 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 =3D Class.create({ initialize: function(expression) { this.expression =3D expression.strip(); if (this.shouldUseSelectorsAPI()) { this.mode =3D 'selectorsAPI'; } else if (this.shouldUseXPath()) { this.mode =3D 'xpath'; this.compileXPathMatcher(); } else { this.mode =3D "normal"; this.compileMatcher(); } }, shouldUseXPath: function() { if (!Prototype.BrowserFeatures.XPath) return false; var e =3D 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 =3D 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 =3D this.expression, ps =3D Selector.patterns, h =3D = Selector.handlers, c =3D Selector.criteria, le, p, m; if (Selector._cache[e]) { this.matcher =3D Selector._cache[e]; return; } this.matcher =3D ["this.matcher =3D function(root) {", "var r =3D root, h =3D Selector.handlers, c =3D = false, n;"]; while (e && le !=3D e && (/\S/).test(e)) { le =3D e; for (var i in ps) { p =3D ps[i]; if (m =3D e.match(p)) { this.matcher.push(Object.isFunction(c[i]) ? c[i](m) : new Template(c[i]).evaluate(m)); e =3D e.replace(m[0], ''); break; } } } this.matcher.push("return h.unique(n);\n}"); eval(this.matcher.join('\n')); Selector._cache[this.expression] =3D this.matcher; }, compileXPathMatcher: function() { var e =3D this.expression, ps =3D Selector.patterns, x =3D Selector.xpath, le, m; if (Selector._cache[e]) { this.xpath =3D Selector._cache[e]; return; } this.matcher =3D ['.//*']; while (e && le !=3D e && (/\S/).test(e)) { le =3D e; for (var i in ps) { if (m =3D e.match(ps[i])) { this.matcher.push(Object.isFunction(x[i]) ? x[i](m) : new Template(x[i]).evaluate(m)); e =3D e.replace(m[0], ''); break; } } } this.xpath =3D this.matcher.join(''); Selector._cache[this.expression] =3D this.xpath; }, findElements: function(root) { root =3D root || document; var e =3D 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 !=3D=3D document) { var oldId =3D root.id, id =3D $(root).identify(); e =3D "#" + id + " " + e; } results =3D $A(root.querySelectorAll(e)).map(Element.extend); root.id =3D oldId; return results; case 'xpath': return document._getElementsByXPath(this.xpath, root); default: return this.matcher(root); } }, match: function(element) { this.tokens =3D []; var e =3D this.expression, ps =3D Selector.patterns, as =3D = Selector.assertions; var le, p, m; while (e && le !=3D=3D e && (/\S/).test(e)) { le =3D e; for (var i in ps) { p =3D ps[i]; if (m =3D 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 =3D 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 =3D true, name, matches; for (var i =3D 0, token; token =3D this.tokens[i]; i++) { name =3D token[0], matches =3D token[1]; if (!Selector.assertions[name](element, matches)) { match =3D false; break; } } return match; }, toString: function() { return this.expression; }, inspect: function() { return "#"; } }); Object.extend(Selector, { _cache: { }, xpath: { descendant: "//*", child: "/*", adjacent: "/following-sibling::*[1]", laterSibling: '/following-sibling::*', tagName: function(m) { if (m[1] =3D=3D '*') return ''; return "[local-name()=3D'" + m[1].toLowerCase() + "' or local-name()=3D'" + m[1].toUpperCase() + "']"; }, className: "[contains(concat(' ', @class, ' '), ' #{1} ')]", id: "[@id=3D'#{1}']", attrPresence: function(m) { m[1] =3D m[1].toLowerCase(); return new Template("[@#{1}]").evaluate(m); }, attr: function(m) { m[1] =3D m[1].toLowerCase(); m[3] =3D m[5] || m[6]; return new Template(Selector.xpath.operators[m[2]]).evaluate(m); }, pseudo: function(m) { var h =3D 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: { '=3D': "[@#{1}=3D'#{3}']", '!=3D': "[@#{1}!=3D'#{3}']", '^=3D': "[starts-with(@#{1}, '#{3}')]", '$=3D': "[substring(@#{1}, (string-length(@#{1}) - = string-length('#{3}') + 1))=3D'#{3}']", '*=3D': "[contains(@#{1}, '#{3}')]", '~=3D': "[contains(concat(' ', @#{1}, ' '), ' #{3} ')]", '|=3D': "[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(*) =3D 0 and (count(text()) =3D 0)]", 'checked': "[@checked]", 'disabled': "[(@disabled) and (@type!=3D'hidden')]", 'enabled': "[not(@disabled) and (@type!=3D'hidden')]", 'not': function(m) { var e =3D m[6], p =3D Selector.patterns, x =3D Selector.xpath, le, v; var exclusion =3D []; while (e && le !=3D e && (/\S/).test(e)) { le =3D e; for (var i in p) { if (m =3D e.match(p[i])) { v =3D Object.isFunction(x[i]) ? x[i](m) : new = Template(x[i]).evaluate(m); exclusion.push("(" + v.substring(1, v.length - 1) + ")"); e =3D 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] =3D "1"; return Selector.xpath.pseudos['nth-of-type'](m); }, 'last-of-type': function(m) { m[6] =3D "1"; return = Selector.xpath.pseudos['nth-last-of-type'](m); }, 'only-of-type': function(m) { var p =3D Selector.xpath.pseudos; return p['first-of-type'](m) + = p['last-of-type'](m); }, nth: function(fragment, m) { var mm, formula =3D m[6], predicate; if (formula =3D=3D 'even') formula =3D '2n+0'; if (formula =3D=3D 'odd') formula =3D '2n+1'; if (mm =3D formula.match(/^(\d+)$/)) // digit only return '[' + fragment + "=3D " + mm[1] + ']'; if (mm =3D formula.match(/^(-?\d*)?n(([+-])(\d+))?/)) { // an+b if (mm[1] =3D=3D "-") mm[1] =3D -1; var a =3D mm[1] ? Number(mm[1]) : 1; var b =3D mm[2] ? Number(mm[2]) : 0; predicate =3D "[((#{fragment} - #{b}) mod #{a} =3D 0) and " + "((#{fragment} - #{b}) div #{a} >=3D 0)]"; return new Template(predicate).evaluate({ fragment: fragment, a: a, b: b }); } } } }, criteria: { tagName: 'n =3D h.tagName(n, r, "#{1}", c); c =3D false;', className: 'n =3D h.className(n, r, "#{1}", c); c =3D false;', id: 'n =3D h.id(n, r, "#{1}", c); c =3D false;', attrPresence: 'n =3D h.attrPresence(n, r, "#{1}", c); c =3D false;', attr: function(m) { m[3] =3D (m[5] || m[6]); return new Template('n =3D h.attr(n, r, "#{1}", "#{3}", "#{2}", = c); c =3D false;').evaluate(m); }, pseudo: function(m) { if (m[6]) m[6] =3D m[6].replace(/"/g, '\\"'); return new Template('n =3D h.pseudo(n, "#{1}", "#{6}", r, c); c = =3D false;').evaluate(m); }, descendant: 'c =3D "descendant";', child: 'c =3D "child";', adjacent: 'c =3D "adjacent";', laterSibling: 'c =3D "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|$|(?=3D\s|[:+~>]))/, attrPresence: /^\[((?:[\w]+:)?[\w]+)\]/, attr: = /\[((?:[\w-]*:)?[\w-]+)\s*(?:([!^$*~|]?=3D)\s*((['"])([^\4]*?)\4|([^'"][^= \]]*?)))?\]/ }, // for Selector.match and Element#match assertions: { tagName: function(element, matches) { return matches[1].toUpperCase() =3D=3D = element.tagName.toUpperCase(); }, className: function(element, matches) { return Element.hasClassName(element, matches[1]); }, id: function(element, matches) { return element.id =3D=3D=3D matches[1]; }, attrPresence: function(element, matches) { return Element.hasAttribute(element, matches[1]); }, attr: function(element, matches) { var nodeValue =3D 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 =3D 0, node; node =3D b[i]; i++) a.push(node); return a; }, // marks an array of nodes for counting mark: function(nodes) { var _true =3D Prototype.emptyFunction; for (var i =3D 0, node; node =3D nodes[i]; i++) node._countedByPrototype =3D _true; return nodes; }, unmark: function(nodes) { for (var i =3D 0, node; node =3D nodes[i]; i++) node._countedByPrototype =3D 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 =3D Prototype.emptyFunction; if (reverse) { for (var nodes =3D parentNode.childNodes, i =3D nodes.length - = 1, j =3D 1; i >=3D 0; i--) { var node =3D nodes[i]; if (node.nodeType =3D=3D 1 && (!ofType || = node._countedByPrototype)) node.nodeIndex =3D j++; } } else { for (var i =3D 0, j =3D 1, nodes =3D parentNode.childNodes; node = =3D nodes[i]; i++) if (node.nodeType =3D=3D 1 && (!ofType || = node._countedByPrototype)) node.nodeIndex =3D j++; } }, // filters out duplicates and extends all nodes unique: function(nodes) { if (nodes.length =3D=3D 0) return nodes; var results =3D [], n; for (var i =3D 0, l =3D nodes.length; i < l; i++) if (!(n =3D nodes[i])._countedByPrototype) { n._countedByPrototype =3D Prototype.emptyFunction; results.push(Element.extend(n)); } return Selector.handlers.unmark(results); }, // COMBINATOR FUNCTIONS descendant: function(nodes) { var h =3D Selector.handlers; for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) h.concat(results, node.getElementsByTagName('*')); return results; }, child: function(nodes) { var h =3D Selector.handlers; for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) { for (var j =3D 0, child; child =3D node.childNodes[j]; j++) if (child.nodeType =3D=3D 1 && child.tagName !=3D '!') = results.push(child); } return results; }, adjacent: function(nodes) { for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) { var next =3D this.nextElementSibling(node); if (next) results.push(next); } return results; }, laterSibling: function(nodes) { var h =3D Selector.handlers; for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) h.concat(results, Element.nextSiblings(node)); return results; }, nextElementSibling: function(node) { while (node =3D node.nextSibling) if (node.nodeType =3D=3D 1) return node; return null; }, previousElementSibling: function(node) { while (node =3D node.previousSibling) if (node.nodeType =3D=3D 1) return node; return null; }, // TOKEN FUNCTIONS tagName: function(nodes, root, tagName, combinator) { var uTagName =3D tagName.toUpperCase(); var results =3D [], h =3D Selector.handlers; if (nodes) { if (combinator) { // fastlane for ordinary descendant combinators if (combinator =3D=3D "descendant") { for (var i =3D 0, node; node =3D nodes[i]; i++) h.concat(results, node.getElementsByTagName(tagName)); return results; } else nodes =3D this[combinator](nodes); if (tagName =3D=3D "*") return nodes; } for (var i =3D 0, node; node =3D nodes[i]; i++) if (node.tagName.toUpperCase() =3D=3D=3D uTagName) = results.push(node); return results; } else return root.getElementsByTagName(tagName); }, id: function(nodes, root, id, combinator) { var targetNode =3D $(id), h =3D Selector.handlers; if (!targetNode) return []; if (!nodes && root =3D=3D document) return [targetNode]; if (nodes) { if (combinator) { if (combinator =3D=3D 'child') { for (var i =3D 0, node; node =3D nodes[i]; i++) if (targetNode.parentNode =3D=3D node) return = [targetNode]; } else if (combinator =3D=3D 'descendant') { for (var i =3D 0, node; node =3D nodes[i]; i++) if (Element.descendantOf(targetNode, node)) return = [targetNode]; } else if (combinator =3D=3D 'adjacent') { for (var i =3D 0, node; node =3D nodes[i]; i++) if (Selector.handlers.previousElementSibling(targetNode) = =3D=3D node) return [targetNode]; } else nodes =3D h[combinator](nodes); } for (var i =3D 0, node; node =3D nodes[i]; i++) if (node =3D=3D targetNode) return [targetNode]; return []; } return (targetNode && Element.descendantOf(targetNode, root)) ? = [targetNode] : []; }, className: function(nodes, root, className, combinator) { if (nodes && combinator) nodes =3D this[combinator](nodes); return Selector.handlers.byClassName(nodes, root, className); }, byClassName: function(nodes, root, className) { if (!nodes) nodes =3D Selector.handlers.descendant([root]); var needle =3D ' ' + className + ' '; for (var i =3D 0, results =3D [], node, nodeClassName; node =3D = nodes[i]; i++) { nodeClassName =3D node.className; if (nodeClassName.length =3D=3D 0) continue; if (nodeClassName =3D=3D className || (' ' + nodeClassName + ' = ').include(needle)) results.push(node); } return results; }, attrPresence: function(nodes, root, attr, combinator) { if (!nodes) nodes =3D root.getElementsByTagName("*"); if (nodes && combinator) nodes =3D this[combinator](nodes); var results =3D []; for (var i =3D 0, node; node =3D nodes[i]; i++) if (Element.hasAttribute(node, attr)) results.push(node); return results; }, attr: function(nodes, root, attr, value, operator, combinator) { if (!nodes) nodes =3D root.getElementsByTagName("*"); if (nodes && combinator) nodes =3D this[combinator](nodes); var handler =3D Selector.operators[operator], results =3D []; for (var i =3D 0, node; node =3D nodes[i]; i++) { var nodeValue =3D Element.readAttribute(node, attr); if (nodeValue =3D=3D=3D null) continue; if (handler(nodeValue, value)) results.push(node); } return results; }, pseudo: function(nodes, name, value, root, combinator) { if (nodes && combinator) nodes =3D this[combinator](nodes); if (!nodes) nodes =3D root.getElementsByTagName("*"); return Selector.pseudos[name](nodes, value, root); } }, pseudos: { 'first-child': function(nodes, value, root) { for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) { if (Selector.handlers.previousElementSibling(node)) continue; results.push(node); } return results; }, 'last-child': function(nodes, value, root) { for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) { if (Selector.handlers.nextElementSibling(node)) continue; results.push(node); } return results; }, 'only-child': function(nodes, value, root) { var h =3D Selector.handlers; for (var i =3D 0, results =3D [], node; node =3D 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 =3D 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 =3D=3D 0) return b > 0 ? [b] : []; return $R(1, total).inject([], function(memo, i) { if (0 =3D=3D (i - b) % a && (i - b) / a >=3D 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 =3D=3D 0) return []; if (formula =3D=3D 'even') formula =3D '2n+0'; if (formula =3D=3D 'odd') formula =3D '2n+1'; var h =3D Selector.handlers, results =3D [], indexed =3D [], m; h.mark(nodes); for (var i =3D 0, node; node =3D 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 =3D Number(formula); for (var i =3D 0, node; node =3D nodes[i]; i++) if (node.nodeIndex =3D=3D formula) results.push(node); } else if (m =3D formula.match(/^(-?\d*)?n(([+-])(\d+))?/)) { // = an+b if (m[1] =3D=3D "-") m[1] =3D -1; var a =3D m[1] ? Number(m[1]) : 1; var b =3D m[2] ? Number(m[2]) : 0; var indices =3D Selector.pseudos.getIndices(a, b, nodes.length); for (var i =3D 0, node, l =3D indices.length; node =3D nodes[i]; = i++) { for (var j =3D 0; j < l; j++) if (node.nodeIndex =3D=3D indices[j]) results.push(node); } } h.unmark(nodes); h.unmark(indexed); return results; }, 'empty': function(nodes, value, root) { for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) { // IE treats comments as element nodes if (node.tagName =3D=3D '!' || node.firstChild) continue; results.push(node); } return results; }, 'not': function(nodes, selector, root) { var h =3D Selector.handlers, selectorType, m; var exclusions =3D new Selector(selector).findElements(root); h.mark(exclusions); for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) if (!node._countedByPrototype) results.push(node); h.unmark(exclusions); return results; }, 'enabled': function(nodes, value, root) { for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) if (!node.disabled && (!node.type || node.type !=3D=3D = 'hidden')) results.push(node); return results; }, 'disabled': function(nodes, value, root) { for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) if (node.disabled) results.push(node); return results; }, 'checked': function(nodes, value, root) { for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) if (node.checked) results.push(node); return results; } }, operators: { '=3D': function(nv, v) { return nv =3D=3D v; }, '!=3D': function(nv, v) { return nv !=3D v; }, '^=3D': function(nv, v) { return nv =3D=3D v || nv && = nv.startsWith(v); }, '$=3D': function(nv, v) { return nv =3D=3D v || nv && = nv.endsWith(v); }, '*=3D': function(nv, v) { return nv =3D=3D v || nv && nv.include(v); = }, '$=3D': function(nv, v) { return nv.endsWith(v); }, '*=3D': function(nv, v) { return nv.include(v); }, '~=3D': function(nv, v) { return (' ' + nv + ' ').include(' ' + v + = ' '); }, '|=3D': function(nv, v) { return ('-' + (nv || "").toUpperCase() + '-').include('-' + (v || "").toUpperCase() + '-'); } }, split: function(expression) { var expressions =3D []; expression.scan(/(([\w#:.~>+()\s-]+|\*|\[.*?\])+)\s*(,|$)/, = function(m) { expressions.push(m[1].strip()); }); return expressions; }, matchElements: function(elements, expression) { var matches =3D $$(expression), h =3D Selector.handlers; h.mark(matches); for (var i =3D 0, results =3D [], element; element =3D elements[i]; = i++) if (element._countedByPrototype) results.push(element); h.unmark(matches); return results; }, findElement: function(elements, expression, index) { if (Object.isNumber(expression)) { index =3D expression; expression =3D false; } return Selector.matchElements(elements, expression || '*')[index || = 0]; }, findChildElements: function(element, expressions) { expressions =3D Selector.split(expressions.join(',')); var results =3D [], h =3D Selector.handlers; for (var i =3D 0, l =3D expressions.length, selector; i < l; i++) { selector =3D 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 =3D 0, node; node =3D b[i]; i++) if (node.tagName !=3D=3D "!") a.push(node); return a; }, // IE improperly serializes _countedByPrototype in = (inner|outer)HTML. unmark: function(nodes) { for (var i =3D 0, node; node =3D nodes[i]; i++) node.removeAttribute('_countedByPrototype'); return nodes; } }); } function $$() { return Selector.findChildElements(document, $A(arguments)); } var Form =3D { reset: function(form) { $(form).reset(); return form; }, serializeElements: function(elements, options) { if (typeof options !=3D 'object') options =3D { hash: !!options }; else if (Object.isUndefined(options.hash)) options.hash =3D true; var key, value, submitted =3D false, submit =3D options.submit; var data =3D elements.inject({ }, function(result, element) { if (!element.disabled && element.name) { key =3D element.name; value =3D $(element).getValue(); if (value !=3D null && element.type !=3D 'file' && (element.type = !=3D 'submit' || (!submitted && submit !=3D=3D false && (!submit || key =3D=3D submit) && = (submitted =3D true)))) { if (key in result) { // a key is already present; construct an array of values if (!Object.isArray(result[key])) result[key] =3D = [result[key]]; result[key].push(value); } else result[key] =3D value; } } return result; }); return options.hash ? data : Object.toQueryString(data); } }; Form.Methods =3D { 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 =3D $(form); var inputs =3D form.getElementsByTagName('input'); if (!typeName && !name) return $A(inputs).map(Element.extend); for (var i =3D 0, matchingInputs =3D [], length =3D inputs.length; i = < length; i++) { var input =3D inputs[i]; if ((typeName && input.type !=3D typeName) || (name && input.name = !=3D name)) continue; matchingInputs.push(Element.extend(input)); } return matchingInputs; }, disable: function(form) { form =3D $(form); Form.getElements(form).invoke('disable'); return form; }, enable: function(form) { form =3D $(form); Form.getElements(form).invoke('enable'); return form; }, findFirstElement: function(form) { var elements =3D $(form).getElements().findAll(function(element) { return 'hidden' !=3D element.type && !element.disabled; }); var firstByIndex =3D elements.findAll(function(element) { return element.hasAttribute('tabIndex') && element.tabIndex >=3D = 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 =3D $(form); form.findFirstElement().activate(); return form; }, request: function(form, options) { form =3D $(form), options =3D Object.clone(options || { }); var params =3D options.parameters, action =3D = form.readAttribute('action') || ''; if (action.blank()) action =3D window.location.href; options.parameters =3D form.serialize(true); if (params) { if (Object.isString(params)) params =3D params.toQueryParams(); Object.extend(options.parameters, params); } if (form.hasAttribute('method') && !options.method) options.method =3D form.method; return new Ajax.Request(action, options); } }; /*-----------------------------------------------------------------------= ---*/ Form.Element =3D { focus: function(element) { $(element).focus(); return element; }, select: function(element) { $(element).select(); return element; } }; Form.Element.Methods =3D { serialize: function(element) { element =3D $(element); if (!element.disabled && element.name) { var value =3D element.getValue(); if (value !=3D undefined) { var pair =3D { }; pair[element.name] =3D value; return Object.toQueryString(pair); } } return ''; }, getValue: function(element) { element =3D $(element); var method =3D element.tagName.toLowerCase(); return Form.Element.Serializers[method](element); }, setValue: function(element, value) { element =3D $(element); var method =3D element.tagName.toLowerCase(); Form.Element.Serializers[method](element, value); return element; }, clear: function(element) { $(element).value =3D ''; return element; }, present: function(element) { return $(element).value !=3D ''; }, activate: function(element) { element =3D $(element); try { element.focus(); if (element.select && (element.tagName.toLowerCase() !=3D 'input' = || !['button', 'reset', 'submit'].include(element.type))) element.select(); } catch (e) { } return element; }, disable: function(element) { element =3D $(element); element.disabled =3D true; return element; }, enable: function(element) { element =3D $(element); element.disabled =3D false; return element; } }; /*-----------------------------------------------------------------------= ---*/ var Field =3D Form.Element; var $F =3D Form.Element.Methods.getValue; /*-----------------------------------------------------------------------= ---*/ Form.Element.Serializers =3D { 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 =3D !!value; }, textarea: function(element, value) { if (Object.isUndefined(value)) return element.value; else element.value =3D value; }, select: function(element, value) { if (Object.isUndefined(value)) return this[element.type =3D=3D 'select-one' ? 'selectOne' : 'selectMany'](element); else { var opt, currentValue, single =3D !Object.isArray(value); for (var i =3D 0, length =3D element.length; i < length; i++) { opt =3D element.options[i]; currentValue =3D this.optionValue(opt); if (single) { if (currentValue =3D=3D value) { opt.selected =3D true; return; } } else opt.selected =3D value.include(currentValue); } } }, selectOne: function(element) { var index =3D element.selectedIndex; return index >=3D 0 ? this.optionValue(element.options[index]) : = null; }, selectMany: function(element) { var values, length =3D element.length; if (!length) return null; for (var i =3D 0, values =3D []; i < length; i++) { var opt =3D 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 =3D Class.create(PeriodicalExecuter, { initialize: function($super, element, frequency, callback) { $super(callback, frequency); this.element =3D $(element); this.lastValue =3D this.getValue(); }, execute: function() { var value =3D this.getValue(); if (Object.isString(this.lastValue) && Object.isString(value) ? this.lastValue !=3D value : String(this.lastValue) !=3D = String(value)) { this.callback(this.element, value); this.lastValue =3D value; } } }); Form.Element.Observer =3D Class.create(Abstract.TimedObserver, { getValue: function() { return Form.Element.getValue(this.element); } }); Form.Observer =3D Class.create(Abstract.TimedObserver, { getValue: function() { return Form.serialize(this.element); } }); /*-----------------------------------------------------------------------= ---*/ Abstract.EventObserver =3D Class.create({ initialize: function(element, callback) { this.element =3D $(element); this.callback =3D callback; this.lastValue =3D this.getValue(); if (this.element.tagName.toLowerCase() =3D=3D 'form') this.registerFormCallbacks(); else this.registerCallback(this.element); }, onElementEvent: function() { var value =3D this.getValue(); if (this.lastValue !=3D value) { this.callback(this.element, value); this.lastValue =3D 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 =3D Class.create(Abstract.EventObserver, { getValue: function() { return Form.Element.getValue(this.element); } }); Form.EventObserver =3D Class.create(Abstract.EventObserver, { getValue: function() { return Form.serialize(this.element); } }); if (!window.Event) var Event =3D { }; 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 =3D event.fromElement; break; case 'mouseout': element =3D event.toElement; break; default: return null; } return Element.extend(element); } }); Event.Methods =3D (function() { var isButton; if (Prototype.Browser.IE) { var buttonMap =3D { 0: 1, 1: 4, 2: 2 }; isButton =3D function(event, code) { return event.button =3D=3D buttonMap[code]; }; } else if (Prototype.Browser.WebKit) { isButton =3D function(event, code) { switch (code) { case 0: return event.which =3D=3D 1 && !event.metaKey; case 1: return event.which =3D=3D 1 && event.metaKey; default: return false; } }; } else { isButton =3D function(event, code) { return event.which ? (event.which =3D=3D=3D code + 1) : = (event.button =3D=3D=3D 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 =3D Event.extend(event); var node =3D event.target, type =3D event.type, currentTarget =3D 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 =3D=3D=3D 'load' || type =3D=3D=3D 'error' || (type =3D=3D=3D 'click' && currentTarget.tagName.toLowerCase() = =3D=3D=3D 'input' && currentTarget.type =3D=3D=3D 'radio')) node =3D currentTarget; } if (node.nodeType =3D=3D Node.TEXT_NODE) node =3D node.parentNode; return Element.extend(node); }, findElement: function(event, expression) { var element =3D Event.element(event); if (!expression) return element; var elements =3D [element].concat(element.ancestors()); return Selector.findElement(elements, expression, 0); }, pointer: function(event) { var docElement =3D document.documentElement, body =3D 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 =3D true; } }; })(); Event.extend =3D (function() { var methods =3D Object.keys(Event.Methods).inject({ }, function(m, = name) { m[name] =3D Event.Methods[name].methodize(); return m; }); if (Prototype.Browser.IE) { Object.extend(methods, { stopPropagation: function() { this.cancelBubble =3D true }, preventDefault: function() { this.returnValue =3D false }, inspect: function() { return "[object Event]" } }); return function(event) { if (!event) return false; if (event._extendedByPrototype) return event; event._extendedByPrototype =3D Prototype.emptyFunction; var pointer =3D 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 =3D Event.prototype || = document.createEvent("HTMLEvents")['__proto__']; Object.extend(Event.prototype, methods); return Prototype.K; } })(); Object.extend(Event, (function() { var cache =3D Event.cache; function getEventID(element) { if (element._prototypeEventID) return element._prototypeEventID[0]; arguments.callee.id =3D arguments.callee.id || 1; return element._prototypeEventID =3D [++arguments.callee.id]; } function getDOMEventName(eventName) { if (eventName && eventName.include(':')) return "dataavailable"; return eventName; } function getCacheForID(id) { return cache[id] =3D cache[id] || { }; } function getWrappersForEventName(id, eventName) { var c =3D getCacheForID(id); return c[eventName] =3D c[eventName] || []; } function createWrapper(element, eventName, handler) { var id =3D getEventID(element); var c =3D getWrappersForEventName(id, eventName); if (c.pluck("handler").include(handler)) return false; var wrapper =3D function(event) { if (!Event || !Event.extend || (event.eventName && event.eventName !=3D eventName)) return false; Event.extend(event); handler.call(element, event); }; wrapper.handler =3D handler; c.push(wrapper); return wrapper; } function findWrapper(id, eventName, handler) { var c =3D getWrappersForEventName(id, eventName); return c.find(function(wrapper) { return wrapper.handler =3D=3D = handler }); } function destroyWrapper(id, eventName, handler) { var c =3D getCacheForID(id); if (!c[eventName]) return false; c[eventName] =3D c[eventName].without(findWrapper(id, eventName, = handler)); } function destroyCache() { for (var id in cache) for (var eventName in cache[id]) cache[id][eventName] =3D 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 <=3D 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 =3D $(element); var name =3D getDOMEventName(eventName); var wrapper =3D 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 =3D $(element); var id =3D getEventID(element), name =3D = 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 =3D 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 =3D $(element); if (element =3D=3D document && document.createEvent && = !element.dispatchEvent) element =3D document.documentElement; var event; if (document.createEvent) { event =3D document.createEvent("HTMLEvents"); event.initEvent("dataavailable", true, true); } else { event =3D document.createEventObject(); event.eventType =3D "ondataavailable"; } event.eventName =3D eventName; event.memo =3D 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 =3D true; } if (document.addEventListener) { if (Prototype.Browser.WebKit) { timer =3D 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("