Content-Type: multipart/related; start=; boundary=----------Bpqcrlh2CQN3A35MxW9xIs Content-Location: http://www.armada.mde.es/ArmadaPortal/page/Portal/armadaEspannola/conocenos_actividades/dia-fuerzas-armadas-2010 Subject: =?utf-8?Q?D=C3=ADa=20de=20las=20Fuerzas=20Armadas=202010=20-=20Actividades=20-=20Armada=20Espa=C3=B1ola?= MIME-Version: 1.0 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=dia-fuerzas-armadas-2010.htm Content-Type: text/html; charset=UTF-8; name=dia-fuerzas-armadas-2010.htm Content-ID: Content-Location: http://www.armada.mde.es/ArmadaPortal/page/Portal/armadaEspannola/conocenos_actividades/dia-fuerzas-armadas-2010 Content-Transfer-Encoding: Quoted-Printable = D=C3=ADa de las Fuerzas Armadas 2010 - Actividades - Armada Espa=C3= =B1ola= = =
=
= =
3D"Ir
| 3D"Ir
|

|
3D"Banner Actividades
=
|
3D"english"
|
3D"fran=C3=A7ais"
=
=
Buscador:
Buscador Armada =
=
=

Comienzo de la p&aac= ute;gina

=
= =

Inicio  >  Conócenos =  >  Actividades =  >  D=C3=ADa de las Fuerzas Armadas 2010= =

=

CONTENIDO PRIN= CIPAL DE LA PÁGINA

= =
=
= =
=
= =
=
= =

D=C3=ADa de las Fuerzas Armadas 2010

=
= =
= Ir al apartado de esta página:
=

INTRODUCCIÓN.

La celebración del Día de las Fuerzas Armadas se remont= a a 1978 cuando se estableció la conmemoración anual de u= na fiesta de carácter nacional que homenajeara a los Ejér= citos y fomentara el conocimiento y la integración entre los mis= mos y la sociedad.

Desde que en 1987 la celebración se extendió a todo el ter= ritorio nacional, las sedes del Día de las Fuerzas Armadas han s= ido Sevilla, Cartagena (Murcia), Barcelona, Talavera La Real (Badajoz= ), Colmenar Viejo (Madrid), Madrid, A Coruña, Cartagena, Barcelo= na, Alicante, Kosovo, Gando (Gran Canaria), Almería, Sevilla, Le= ón, Zaragoza, Santander… donde se sumaron otras actividade= s más populares que motivaron una mayor participación de = la población.

En esta ocasión Badajoz será la sede donde se desarrollara= n los actos centrales del Día de las Fuerzas Armada que comprend= en un acto de homenaje a La Bandera, una exhibición operativa co= njunta y un acto de Jura de Bandera.

La Armada participará  en la exhibición operativa = aportando dos aviones Harrier AV-8B, dos helicópteros de la terc= era y quinta escuadrilla, seis embarcaciones Supercat y una
Fuerza de Infantería de Marina en un ejerc= icio que simulará una operación de evacuación de pe= rsonal de Naciones Unidas aislado en un territorio hostil.

El sábado 29, la Armada organiza el acto de Jura de Bandera e= n para civiles en la ciudad de Badajoz en la que participarán un= a Compañía de Honores mixta, una Escuadra de Gastadores, = Cornetín y Banda de Cornetas y Tambores del Tercio Sur de Infante= ría de Marina y una Sección de Marinería de la F= lotilla de Aeronaves de la Armada.

En la exposición estática, la Armada exhibirá = vehículos todo terreno Hummer, vehículos blindados Pira&n= tilde;a, un vehiculo de Asalto Anfibio tipo AAV, una embarcación = Supercat así como diverso material representativo como elementos= de visión nocturna y comunicaciones.



LA ARMADA ORGANIZA VARIOS ACTOS PARA CONMEMORAR EL DÍ= A DE LAS FUERZAS ARMADAS EN EL RESTO DE TERRITORIO NACIONAL

=

Como en ocasiones anteriores, la celebración del Día d= e las Fuerzas Armadas no se limitará únicamente a un fin = de semana y una ciudad, sino que habrá hasta un total de 95 actos= diferentes que se desarrollarán por parte de los dos ejé= rcitos y la Armada en la práctica totalidad de las provincias es= pañolas.

En la Bahía de Cádiz, se han previsto jornadas de puer= tas abiertas para  visitar el Arsenal de La Carraca, Estaci&oacu= te;n Naval de Puntales, la Escuela de Suboficiales, Museo Naval= , Panteón de Marinos Ilustres y Real Observatorio de la Armad= a. Además se ofrecerán visitas escolares guiadas a la= base naval de Rota y diversas unidades con base allí.

Por su parte, la banda de música del Tercio Sur de Infanter&i= acute;a de Marina dará un concierto en San Fernando.

En Cartagena, el público tendrá la oportunidad de conocer= diversas unidades basadas en el Arsenal Militar de la ciudad: base de = submarinos, con visita al simulador de plataforma, un submarino y vario= s buques con base en él.

En Ferrol está prevista una jornada de puertas abiertas para = visitar el Arsenal, Museo Naval, Tercio Norte de Infanter&iacut= e;a de Marina, fragatas F-100 y las Escuelas de Especialidades “A= ntonio de Escaño” y “Esengra”. En esta ú= ltima se podrán practicar procedimientos de comunicaciones visua= les y nudos marineros. Las celebraciones incluirán además= bautismos de mar en los remolcadores del tren naval, con dos salidas d= iarias.

En Canarias se llevarán a cabo distintos actos en el parque d= e San Telmo (Las Palmas de Gran Canaria), donde podrá visitarse = una exposición estática de medios y material diverso de la= Armada y de los otros Ejércitos. Asimismo, a lo largo de esta s= emana se podrá visitar el Arsenal de la base naval.

El público también podrá visitar la Escuela Naval Militar = de Marín (Pontevedra), donde se exhiben fotografías sobre= la vida diaria de los alumnos, exposiciones estáticas de divers= o material de Infantería de Marina y de Instrucción Marin= era. El patrullero “Tabarca” permanecerá atracado, ab= ierto al público, en la dársena de esta Escuela a lo larg= o de la semana.

En Valencia, la Comandancia Naval ha programado una serie de confere= ncias con el titulo genérico de “Cuando España era = una isla”.

En Madrid la Agrupación de Infanterí­a de Marina o= rganizará una exposición estática de material y una= demostración canina. Además, el Museo Naval inau= gurará las nuevas salas del museo con la exposición itine= rante sobre la presencia de la Armada en la Antártida y nuevos f= ondos de reciente adquisición.



PRESENCIA NAVAL

Durantes estas dos semanas, varios buques de la Armada han atracado= en diferentes puertos españoles. El portaaviones `Príncip= e de Asturias´ atracó en el puerto de La Coruña d= el 22 al 26 de mayo donde recibió la visita de más de 14.= 000 personas, el patrullero ´Infanta Cristina´ efectuó= ; presencia naval en Alicante del 22 al 23 de mayo.

Por su parte, la fragata `Almirante Juan de Borbón´ rec= alará en Ceuta del 29 al 30 de mayo y el Transporte Ligero `Cami= no Español´ en Mahón del 29 al 30 mayo; ambos tambi&= eacute;n podrán ser visitados por el público en general e= n puerto.

Para más información sobre las actividades de la Armad= a con motivo del Día de las Fuerzas Armadas consulte la pá= ;gina www.armada.mde.es.



Participación de la Armada en los actos centrales del D&iacut= e;a de las Fuerzas Armadas. BADAJOZ

Descarga: Participación de la Armada en los actos centrales del D&iac= ute;a de las Fuerzas Armadas. BADAJOZ



ACTIVIDADES DE LA ARMADA

BAHÍA DE CÁDIZ.

  • Cádiz:
=
=
= =
| Imprimir Documento
= =
=
=
= =
------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=console.js Content-Type: application/x-javascript; charset=UTF-8; name=console.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/shared/js/console.js Content-Transfer-Encoding: Base64 LyoqDQogKiBAbGlicmFyeSBCZWFQb3J0YWxDb25zb2xlDQogKg0KICogVGhpcyBK YXZhU2NyaXB0IGxpYnJhcnkgaW1wbGVtZW50cyBhIHNpbXBsZSBwc2V1ZG8tY29u c29sZSB0aGF0IGNhbiBiZSB1c2VkIHRvIGR1bXAgZGVidWdnaW5nIG9yIG1vbml0 b3JpbmcNCiAqIGluZm9ybWF0aW9uIHdoZW4gd3JpdGluZyBuZXcgSmF2YVNjcmlw dCBsaWJyYXJpZXMgYW5kIGNvZGUuDQogKg0KICogQWxsIGNvbW1lbnRzIGluIHRo aXMgZmlsZSBtYXkgYmUgcmVtb3ZlZCB3aGVuIG9wdGltaXppbmcgZm9yIHByb2R1 Y3Rpb24gKHRob3VnaCB0aGlzIGxpYnJhcnkgZ2VuZXJhbGx5IG5lZWQgbm90DQog KiBiZSBpbmNsdWRlZCBpbiBhIHByb2R1Y3Rpb24gc3lzdGVtKS4NCiAqLw0KDQov KioNCiAqIFRoZSBwcmltYXJ5IGNvbnNvbGUgaW5zdGFuY2UuDQogKg0KICogQGFj Y2VzcyBwdWJsaWMNCiAqLw0KdmFyIGJlYVBvcnRhbENvbnNvbGUgPSBuZXcgQmVh UG9ydGFsQ29uc29sZSgpOw0KDQovKioNCiAqIENyZWF0ZXMgYSBuZXcgQmVhUG9y dGFsQ29uc29sZSBpbnN0YW5jZS4gIENvbnNvbGUgd2luZG93IGNyZWF0aW9uIHBy b3BlcnRpZXMgc2hvdWxkIGJlIHNldCBiZWZvcmUgY2FsbGluZyBtZXRob2RzDQog KiBvbiB0aGUgY29uc29sZSwgYXMgc2V0dGluZyB0aGVtIGFmdGVyIGFueSBjYWxs IHdpbGwgY2F1c2UgdGhlbSB0byBiZSBpZ25vcmVkLg0KICoNCiAqIEBjb25zdHJ1 Y3Rvcg0KICogQGFjY2VzcyBwdWJsaWMNCiAqDQogKiBAcHJvcGVydHkgdGFyZ2V0 DQogKiAgICAgIFRoZSBuYW1lIG9mIHRoZSB0YXJnZXQgd2luZG93IGluIHdoaWNo IHRvIG9wZW4gdGhlIGNvbnNvbGU7DQogKiAgICAgIGRlZmF1bHRzIHRvICJCZWFQ b3J0YWxDb25zb2xlIg0KICogQHByb3BlcnR5IHVybA0KICogICAgICBUaGUgaW5p dGlhbCB1cmwgZm9yIHRoZSBjb25zb2xlIGRvY3VtZW50Ow0KICogICAgICBkZWZh dWx0cyB0byAiYWJvdXQ6YmxhbmsiDQogKiBAcHJvcGVydHkgdG9vbGJhcg0KICog ICAgICBXaGV0aGVyIG9yIG5vdCBhIHRvb2xiYXIgc2hvdWxkIGJlIGRpc3BsYXll ZCBpbiB0aGUgY29uc29sZSB3aW5kb3c7IHZhbHVlcyBtYXkgYmUgInllcyIgb3Ig Im5vIjsNCiAqICAgICAgZGVmYXVsdHMgdG8gIm5vIg0KICogQHByb3BlcnR5IHdp ZHRoDQogKiAgICAgIFRoZSB3aWR0aCBvZiB0aGUgY29uc29sZSB3aW5kb3cgaW4g cGl4ZWxzOw0KICogICAgICBkZWZhdWx0cyB0byAiNjQwIg0KICogQHByb3BlcnR5 IGhlaWdodA0KICogICAgICBUaGUgaGVpZ2h0IG9mIHRoZSBjb25zb2xlIHdpbmRv dyBpbiBwaXhlbHM7DQogKiAgICAgIGRlZmF1bHRzIHRvICI0ODAiDQogKiBAcHJv cGVydHkgZGlyZWN0b3JpZXMNCiAqICAgICAgV2hldGhlciBvciBub3QgZGlyZWN0 b3JpZXMgc2hvdWxkIGJlIGRpc3BsYXllZCBpbiB0aGUgY29uc29sZSB3aW5kb3c7 IHZhbHVlcyBtYXkgYmUgInllcyIgb3IgIm5vIjsNCiAqICAgICAgZGVmYXVsdHMg dG8gIm5vIg0KICogQHByb3BlcnR5IHN0YXR1cw0KICogICAgICBXaGV0aGVyIG9y IG5vdCBhICBzdGF0dXNiYXIgc2hvdWxkIGJlIGRpc3BsYXllZCBpbiB0aGUgY29u c29sZSB3aW5kb3c7IHZhbHVlcyBtYXkgYmUgInllcyIgb3IgIm5vIjsNCiAqICAg ICAgZGVmYXVsdHMgdG8gIm5vIg0KICogQHByb3BlcnR5IHNjcm9sbGJhcnMNCiAq ICAgICAgV2hldGhlciBvciBub3Qgc2Nyb2xsYmFycyBzaG91bGQgYmUgZGlzcGxh eWVkIGluIHRoZSBjb25zb2xlIHdpbmRvdzsgdmFsdWVzIG1heSBiZSAieWVzIiBv ciAibm8iOw0KICogICAgICBkZWZhdWx0cyB0byAieWVzIg0KICogQHByb3BlcnR5 IHJlc2l6ZQ0KICogICAgICBXaGV0aGVyIG9yIG5vdCB0aGUgY29uc29sZSB3aW5k b3cgc2hvdWxkIGJlIHJlc2l6YWJsZTsgdmFsdWVzIG1heSBiZSAieWVzIiBvciAi bm8iOw0KICogICAgICBkZWZhdWx0cyB0byAieWVzIg0KICogQHByb3BlcnR5IG1l bnViYXINCiAqICAgICAgV2hldGhlciBvciBub3QgYSBtZW51YmFyIHNob3VsZCBi ZSBkaXNwbGF5ZWQgaW4gdGhlIGNvbnNvbGUgd2luZG93OyB2YWx1ZXMgbWF5IGJl ICJ5ZXMiIG9yICJubyI7DQogKiAgICAgIGRlZmF1bHRzIHRvICJubyINCiAqIEBw cm9wZXJ0eSB1c2VCYWNrZ3JvdW5kQ29sb3JzDQogKiAgICAgIFdoZXRoZXIgb3Ig bm90IGxpbmVzIHNob3VsZCB1c2UgYXNzb2NpYXRlZCBiYWNrZ3JvdW5kIGNvbG9y cyAoaWYgYW55KTsNCiAqICAgICAgZGVmYXVsdHMgdG8gdHJ1ZQ0KICovDQpmdW5j dGlvbiBCZWFQb3J0YWxDb25zb2xlKCkNCnsNCiAgICAvLyAiUHVibGljIiBtZXRo b2RzDQogICAgdGhpcy5wcmludGxuID0gYmVhUG9ydGFsQ29uc29sZVByaW50bG47 DQogICAgdGhpcy5tZXNzYWdlID0gYmVhUG9ydGFsQ29uc29sZU1lc3NhZ2U7DQog ICAgdGhpcy5hc3NlcnQgPSBiZWFQb3J0YWxDb25zb2xlQXNzZXJ0Ow0KICAgIHRo aXMuZXJyb3IgPSBiZWFQb3J0YWxDb25zb2xlRXJyb3I7DQogICAgdGhpcy5kZWJ1 ZyA9IGJlYVBvcnRhbENvbnNvbGVEZWJ1ZzsNCiAgICB0aGlzLnNob3cgPSBiZWFQ b3J0YWxDb25zb2xlU2hvdzsNCg0KICAgIC8vICJQcml2YXRlIiBtZXRob2RzDQog ICAgdGhpcy5jcmVhdGVEb2N1bWVudCA9IGJlYVBvcnRhbENvbnNvbGVDcmVhdGVE b2N1bWVudDsNCg0KICAgIC8vICJQcml2YXRlIiBtZW1iZXIgdmFyaWFibGVzDQog ICAgdGhpcy5kb2N1bWVudCA9IG51bGw7DQogICAgdGhpcy50YWJsZSA9IG51bGw7 DQoNCiAgICAvLyBQcm9wZXJ0aWVzDQogICAgdGhpcy50YXJnZXQgPSAiQmVhUG9y dGFsQ29uc29sZSI7DQogICAgdGhpcy51cmwgPSAiYWJvdXQ6YmxhbmsiOw0KICAg IHRoaXMudG9vbGJhciA9ICJubyI7DQogICAgdGhpcy53aWR0aCA9ICI2NDAiOw0K ICAgIHRoaXMuaGVpZ2h0PSAiNDgwIjsNCiAgICB0aGlzLmRpcmVjdG9yaWVzID0g Im5vIjsNCiAgICB0aGlzLnN0YXR1cyA9ICJubyI7DQogICAgdGhpcy5zY3JvbGxi YXJzID0gInllcyI7DQogICAgdGhpcy5yZXNpemUgPSAieWVzIjsNCiAgICB0aGlz Lm1lbnViYXIgPSAibm8iOw0KICAgIHRoaXMudXNlTGluZUJhY2tncm91bmRDb2xv cnMgPSB0cnVlOw0KfQ0KDQovKioNCiAqIFByaW50cyBhIG1lc3NhZ2UsIGZvbGxv d2VkIGJ5IGFuIEhUTUwgbGluZSBicmVhay4NCiAqDQogKiBAbWV0aG9kIEJlYVBv cnRhbENvbnNvbGUucHJpbnRsbg0KICogQGFjY2VzcyBwdWJsaWMNCiAqDQogKiBA cGFyYW0gb2JqZWN0DQogKiAgICAgIFRoZSBvYmplY3QgdG8gcHJpbnQgKGNvbnZl cnRlZCB0byBhIHN0cmluZykNCiAqIEBwYXJhbSAoYmdjb2xvcikNCiAqICAgICAg VGhlIGJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBsaW5lOyBkZWZhdWx0cyB0bw0K ICovDQpmdW5jdGlvbiBiZWFQb3J0YWxDb25zb2xlUHJpbnRsbihvYmplY3QsIGJn Y29sb3IpDQp7DQogICAgdGhpcy5jcmVhdGVEb2N1bWVudCgpOw0KICAgIGJnY29s b3IgPSAoYmdjb2xvciAmJiB0aGlzLnVzZUxpbmVCYWNrZ3JvdW5kQ29sb3JzID8g IiBiYWNrZ3JvdW5kLWNvbG9yOiAiICsgYmdjb2xvciArICI7IiA6ICIiKTsNCiAg ICB0aGlzLmRvY3VtZW50LndyaXRlKCI8ZGl2IHN0eWxlPSdmb250LWZhbWlseTog c2Fucy1zZXJpZjsgbWFyZ2luOiAwcHg7IHBhZGRpbmc6IDJweDsiICsgYmdjb2xv ciArICInPiIgKyBvYmplY3QgKyAiPC9kaXY+XG4iKTsNCn0NCg0KLyoqDQogKiBQ cmludHMgYSBtZXNzYWdlLCBmb3JtYXR0ZWQgd2l0aCBhIHR5cGUuDQogKg0KICog QG1ldGhvZCBCZWFQb3J0YWxDb25zb2xlLm1lc3NhZ2UNCiAqIEBhY2Nlc3MgcHVi bGljDQogKg0KICogQHBhcmFtIG1lc3NhZ2UNCiAqICAgICAgQW4gZXJyb3IgbWVz c2FnZSB0byBkaXNwbGF5DQogKiBAcGFyYW0gKHR5cGUpDQogKiAgICAgIFRoZSB0 eXBlIG9mIHRoZSBtZXNzYWdlIChlLmcuICJFUlJPUiIsICJERUJVRyIsIGV0Yyk7 IGRlZmF1bHRzIHRvICJNRVNTQUdFIg0KICogQHBhcmFtIChiZ2NvbG9yKQ0KICog ICAgICBUaGUgYmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIGxpbmU7IGRlZmF1bHRz IHRvDQogKg0KICogQHNlZSAjcHJpbnRsbiguLi4pDQogKi8NCmZ1bmN0aW9uIGJl YVBvcnRhbENvbnNvbGVNZXNzYWdlKG1lc3NhZ2UsIHR5cGUsIGJnY29sb3IpDQp7 DQogICAgbWVzc2FnZSA9IChtZXNzYWdlID8gbWVzc2FnZSA6ICIoTm8gZGV0YWls KSIpOw0KICAgIHR5cGUgPSAodHlwZSA/IHR5cGUgOiAiTUVTU0FHRSIpOw0KICAg IHRoaXMucHJpbnRsbigiPGI+WyIgKyB0eXBlICsgIl08L2I+ICIgKyBtZXNzYWdl LCBiZ2NvbG9yKTsNCn0NCg0KLyoqDQogKiBQcmludHMgYW4gZXJyb3IgbWVzc2Fn ZSBpZiB0aGUgYXNzZXJ0aW9uIHN0YXRlbWVudCAoYm9vbGVhbikgZmFpbHMuDQog Kg0KICogQG1ldGhvZCBCZWFQb3J0YWxDb25zb2xlLmFzc2VydA0KICogQGFjY2Vz cyBwdWJsaWMNCiAqDQogKiBAcGFyYW0gcGFzcw0KICogICAgICBBIGJvb2xlYW4g YXNzZXJ0aW9uIHN0YXRlbWVudA0KICogQHBhcmFtIG1lc3NhZ2UNCiAqICAgICAg QSBtZXNzYWdlIHRvIGRpc3BsYXkgaWYgdGhlIGFzc2VydGlvbiBmYWlscyAoaS5l LiBwYXNzID09IGZhbHNlKQ0KICoNCiAqIEBzZWUgI21lc3NhZ2UoLi4uKQ0KICov DQpmdW5jdGlvbiBiZWFQb3J0YWxDb25zb2xlQXNzZXJ0KHBhc3MsIG1lc3NhZ2Up DQp7DQogICAgaWYgKCFwYXNzKQ0KICAgIHsNCiAgICAgICAgbWVzc2FnZSA9ICht ZXNzYWdlID8gbWVzc2FnZSA6ICIoTm8gZGV0YWlsKSIpOw0KICAgICAgICB0aGlz LmVycm9yKCI8c3BhbiBzdHlsZT0nZm9udC13ZWlnaHQ6IGJvbGQ7Jz5Bc3NlcnRp b24gZmFpbGVkOiAiICsgbWVzc2FnZSArICI8L3NwYW4+Iik7DQogICAgfQ0KfQ0K DQovKioNCiAqIFByaW50cyBhbiBlcnJvciBtZXNzYWdlLg0KICoNCiAqIEBtZXRo b2QgQmVhUG9ydGFsQ29uc29sZS5lcnJvcg0KICogQGFjY2VzcyBwdWJsaWMNCiAq DQogKiBAcGFyYW0gbWVzc2FnZQ0KICogICAgICBBbiBlcnJvciBtZXNzYWdlIHRv IGRpc3BsYXkNCiAqDQogKiBAc2VlICNtZXNzYWdlKC4uLikNCiAqLw0KZnVuY3Rp b24gYmVhUG9ydGFsQ29uc29sZUVycm9yKG1lc3NhZ2UpDQp7DQogICAgdGhpcy5t ZXNzYWdlKG1lc3NhZ2UsICI8c3BhbiBzdHlsZT0nY29sb3I6ICNmZjAwMDA7Jz5F UlJPUjwvc3Bhbj4iLCAiI2ZmY2NjYyIpOw0KfQ0KDQovKioNCiAqIFByaW50cyBh IGRlYnVnIG1lc3NhZ2UuDQogKg0KICogQG1ldGhvZCBCZWFQb3J0YWxDb25zb2xl LmRlYnVnDQogKiBAYWNjZXNzIHB1YmxpYw0KICoNCiAqIEBwYXJhbSBtZXNzYWdl DQogKiAgICAgIEEgZGVidWcgbWVzc2FnZSB0byBkaXNwbGF5DQogKg0KICogQHNl ZSAjbWVzc2FnZSguLi4pDQogKi8NCmZ1bmN0aW9uIGJlYVBvcnRhbENvbnNvbGVE ZWJ1ZyhtZXNzYWdlKQ0Kew0KICAgIHRoaXMubWVzc2FnZShtZXNzYWdlLCAiPHNw YW4gc3R5bGU9J2NvbG9yOiAjMDAwMGZmOyc+REVCVUc8L3NwYW4+IiwgIiNjY2Nj ZmYiKTsNCn0NCg0KLyoqDQogKiBQcmludHMgYWxsIHByb3BlcnRpZXMgb2YgYW4g b2JqZWN0Lg0KICoNCiAqIEBtZXRob2QgQmVhUG9ydGFsQ29uc29sZS5zaG93DQog KiBAYWNjZXNzIHB1YmxpYw0KICoNCiAqIEBwYXJhbSBvYmplY3QNCiAqICAgICAg VGhlIG9iamVjdCBmb3Igd2hpY2ggcHJvcGVydGllcyBzaG91bGQgYmUgZGlzcGxh eWVkDQogKiBAcGFyYW0gKHNvcnQpDQogKiAgICAgIFRoZSBzb3J0IGZ1bmN0aW9u IHRvIHVzZSB3aGVuIHNvcnRpbmcgcHJvcGVydGllczsgZGVmYXVsdCBpcyBsZXhp Z3JhcGhpYyBvcmRlcg0KICoNCiAqIEBzZWUgI21lc3NhZ2UoLi4uKQ0KICovDQpm dW5jdGlvbiBiZWFQb3J0YWxDb25zb2xlU2hvdyhvYmplY3QsIHNvcnQpDQp7DQog ICAgaWYgKG9iamVjdCkNCiAgICB7DQogICAgICAgIHZhciBwcm9wZXJ0aWVzID0g bmV3IEFycmF5KCk7DQogICAgICAgIHZhciBpbmRleCA9IDA7DQoNCiAgICAgICAg Zm9yIChwcm9wZXJ0eSBpbiBvYmplY3QpDQogICAgICAgIHsNCiAgICAgICAgICAg IHZhciBrZXkgPSBuZXcgU3RyaW5nKHByb3BlcnR5KTsNCg0KICAgICAgICAgICAg Ly8gQHJldmlldyBXb3JrIGFyb3VuZCBhIEZpcmVmb3ggMC44IGJ1Zw0KICAgICAg ICAgICAgLyoNCiAgICAgICAgICAgIGlmIChrZXkgIT0gImRvbUNvbmZpZyIpDQog ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgdmFyIHZhbHVlID0gb2JqZWN0 W2tleV07DQogICAgICAgICAgICAgICAgcHJvcGVydGllc1tpbmRleCsrXSA9IG5l dyBBcnJheShwcm9wZXJ0eSwgdmFsdWUpOw0KICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgKi8NCiAgICAgICAgICAgIHRyeSB7DQogICAgICAgICAgICAgICAgdmFy IHZhbHVlID0gb2JqZWN0W2tleV07DQogICAgICAgICAgICB9DQogICAgICAgICAg ICBjYXRjaCAoZSkgew0KICAgICAgICAgICAgCXZhciB2YWx1ZSA9ICIhISEgQ2Fu J3QgYWNjZXNzIHByb3BlcnR5OiAiICsgZTsNCiAgICAgICAgICAgIH0NCiAgICAg ICAgICAgIHByb3BlcnRpZXNbaW5kZXgrK10gPSBuZXcgQXJyYXkocHJvcGVydHks IHZhbHVlKTsNCiAgICAgICAgfQ0KDQogICAgICAgIGlmIChzb3J0KQ0KICAgICAg ICB7DQogICAgICAgICAgICBwcm9wZXJ0aWVzLnNvcnQoc29ydCk7DQogICAgICAg IH0NCiAgICAgICAgZWxzZQ0KICAgICAgICB7DQogICAgICAgICAgICBwcm9wZXJ0 aWVzLnNvcnQoKTsNCiAgICAgICAgfQ0KDQogICAgICAgIHZhciBtZXNzYWdlID0g IjxzcGFuIHN0eWxlPSdmb250LXdlaWdodDogYm9sZDsnPiIgKyAob2JqZWN0Lm5v ZGVOYW1lID8gb2JqZWN0Lm5vZGVOYW1lIDogb2JqZWN0KSArICI8L3NwYW4+IjsN CiAgICAgICAgdGhpcy5tZXNzYWdlKG1lc3NhZ2UsICI8c3BhbiBzdHlsZT0nY29s b3I6ICMwMDY2MDA7Jz5TSE9XPC9zcGFuPiIsICIjY2NlNWNjIik7DQoNCiAgICAg ICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wZXJ0aWVzLmxlbmd0aDsgaSsrKQ0K ICAgICAgICB7DQogICAgICAgICAgICB2YXIgcHJvcGVydHkgPSBwcm9wZXJ0aWVz W2ldOw0KICAgICAgICAgICAgdmFyIGRpc3BsYXkgPSAiPGI+IiArIHByb3BlcnR5 WzBdICsgIjo8L2I+ICIgKyBwcm9wZXJ0eVsxXTsNCiAgICAgICAgICAgIHRoaXMu bWVzc2FnZShkaXNwbGF5LCAiPHNwYW4gc3R5bGU9J2NvbG9yOiAjMDA5OTY2Oyc+ UFJPUEVSVFk8L3NwYW4+IiwgIiNlNWZmZTUiKTsNCiAgICAgICAgfQ0KICAgIH0N Cn0NCg0KLyoqDQogKiBPcGVucyBhIG5ldyBjb25zb2xlIHdpbmRvdyAoaWYgaXQg ZG9lc24ndCBhbHJlYWR5IGV4aXN0KSBhbmQgaW5pdGlhbGl6ZXMgdGhpcyBjbGFz cydzICJkb2N1bWVudCIgbWVtYmVyIHZhcmlhYmxlLg0KICoNCiAqIEBtZXRob2Qg QmVhUG9ydGFsQ29uc29sZS5jcmVhdGVEb2N1bWVudA0KICogQGFjY2VzcyBwcml2 YXRlDQogKi8NCmZ1bmN0aW9uIGJlYVBvcnRhbENvbnNvbGVDcmVhdGVEb2N1bWVu dCgpDQp7DQogICAgaWYgKCF0aGlzLmRvY3VtZW50KQ0KICAgIHsNCiAgICAgICAg dmFyIHdpbmRvd1NwZWMgPSAidG9vbGJhcj0iICsgdGhpcy50b29sYmFyDQogICAg ICAgICAgICAgICAgICAgICAgICsgIiwgd2lkdGg9IiArIHRoaXMud2lkdGgNCiAg ICAgICAgICAgICAgICAgICAgICAgKyAiLCBoZWlnaHQ9IiArIHRoaXMuaGVpZ2h0 DQogICAgICAgICAgICAgICAgICAgICAgICsgIiwgZGlyZWN0b3JpZXM9IiArIHRo aXMuZGlyZWN0b3JpZXMNCiAgICAgICAgICAgICAgICAgICAgICAgKyAiLCBzdGF0 dXM9IiArIHRoaXMuc3RhdHVzDQogICAgICAgICAgICAgICAgICAgICAgICsgIiwg c2Nyb2xsYmFycz0iICsgdGhpcy5zY3JvbGxiYXJzDQogICAgICAgICAgICAgICAg ICAgICAgICsgIiwgcmVzaXplPSIgKyB0aGlzLnJlc2l6ZQ0KICAgICAgICAgICAg ICAgICAgICAgICArICIsIG1lbnViYXI9IiArIHRoaXMubWVudWJhcjsNCiAgICAg ICAgdmFyIGNvbnNvbGUgPSB3aW5kb3cub3Blbih0aGlzLnVybCwgdGhpcy50YXJn ZXQsIHdpbmRvd1NwZWMpOw0KDQogICAgICAgIGlmIChjb25zb2xlKQ0KICAgICAg ICB7DQogICAgICAgICAgICB0aGlzLmRvY3VtZW50ID0gY29uc29sZS5kb2N1bWVu dDsNCiAgICAgICAgfQ0KICAgICAgICBlbHNlDQogICAgICAgIHsNCiAgICAgICAg ICAgIHdpbmRvdy5hbGVydCgiQXR0ZW1wdCB0byBvcGVuIGNvbnNvbGUgd2luZG93 IGZhaWxlZCEiKTsNCiAgICAgICAgfQ0KICAgIH0NCn0NCg== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=cookies.js Content-Type: application/x-javascript; charset=UTF-8; name=cookies.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/shared/js/cookies.js Content-Transfer-Encoding: Base64 LyoqDQogKiBAbGlicmFyeSBCZWFQb3J0YWxDb29raWVNYW5hZ2VyDQogKg0KICog VGhpcyBKYXZhU2NyaXB0IGxpYnJhcnkgaW1wbGVtZW50cyBhIHNpbXBsZSBjb29r aWUgbWFuYWdlci4NCiAqDQogKiBBbGwgY29tbWVudHMgaW4gdGhpcyBmaWxlIG1h eSBiZSByZW1vdmVkIHdoZW4gb3B0aW1pemluZyBmb3IgcHJvZHVjdGlvbi4NCiAq Lw0KDQovKioNCiAqIENyZWF0ZXMgYSBuZXcgQmVhUG9ydGFsQ29va2llTWFuYWdl ciBpbnN0YW5jZS4NCiAqDQogKiBAY29uc3RydWN0b3INCiAqIEBhY2Nlc3MgcHVi bGljDQogKg0KICogQHBhcmFtICh1c2VJbnRlbGxpZ2VudENvb2tpZXMpDQogKiAg ICAgIFNldCB0aGlzIHRvIGZhbHNlIHRvIGF2b2lkIHRoZSBvdmVyaGVhZCBhc3Nv Y2lhdGVkIHdpdGggY2hlY2tpbmcgaWYgdGhlIGJyb3dzZXIgaGFzIGNvb2tpZXMg ZW5hYmxlZDsNCiAqICAgICAgZGVmYXVsdHMgdG8gdHJ1ZQ0KICogQHBhcmFtIChp bml0TWFzdGVyQ29va2llKQ0KICogICAgICBJbml0aWFsaXplcyB0aGUgbWFzdGVy IGNvb2tpZSB1cG9uIGNvbnN0cnVjdGlvbiBvZiB0aGlzIGluc3RhbmNlOw0KICog ICAgICBkZWZhdWx0cyB0byBmYWxzZQ0KICovDQpmdW5jdGlvbiBCZWFQb3J0YWxD b29raWVNYW5hZ2VyKHVzZUludGVsbGlnZW50Q29va2llcywgaW5pdE1hc3RlckNv b2tpZSkNCnsNCiAgICAvLyAiUHVibGljIiBtZXRob2RzDQogICAgdGhpcy5zZXRD b29raWUgPSBiZWFQb3J0YWxDb29raWVNYW5hZ2VyU2V0Q29va2llOw0KICAgIHRo aXMuZ2V0Q29va2llID0gYmVhUG9ydGFsQ29va2llTWFuYWdlckdldENvb2tpZTsN CiAgICB0aGlzLmRlbGV0ZUNvb2tpZSA9IGJlYVBvcnRhbENvb2tpZU1hbmFnZXJE ZWxldGVDb29raWU7DQogICAgdGhpcy5zZXRNYXN0ZXJDb29raWUgPSBiZWFQb3J0 YWxDb29raWVNYW5hZ2VyU2V0TWFzdGVyQ29va2llOw0KICAgIHRoaXMuZ2V0TWFz dGVyQ29va2llID0gYmVhUG9ydGFsQ29va2llTWFuYWdlckdldE1hc3RlckNvb2tp ZTsNCiAgICB0aGlzLmRlbGV0ZU1hc3RlckNvb2tpZSA9IGJlYVBvcnRhbENvb2tp ZU1hbmFnZXJEZWxldGVNYXN0ZXJDb29raWU7DQoNCiAgICAvLyAiUHJpdmF0ZSIg bWVtYmVyIHZhcmlhYmxlcw0KICAgIHRoaXMudXNlSW50ZWxsaWdlbnRDb29raWVz ID0gKHVzZUludGVsbGlnZW50Q29va2llcyA/IHVzZUludGVsbGlnZW50Q29va2ll cyA6IHRydWUpOw0KDQogICAgLy8gSW5pdGlhbGl6YXRpb24NCiAgICBpZiAoaW5p dE1hc3RlckNvb2tpZSkNCiAgICB7DQogICAgICAgIHRoaXMuc2V0TWFzdGVyQ29v a2llKCk7DQogICAgfQ0KfQ0KDQovKioNCiAqIFNldHMgYSBjb29raWUgKGlmIHBv c3NpYmxlKSBnaXZlbiB0aGUgc3BlY2lmaWVkIGNvbmZpZ3VyYXRpb24uICBCZWNh dXNlIGEgYnJvd3NlciBtYXkgaGF2ZSBjb29raWVzIGRpc2FibGVkLA0KICogaXQg bWF5IGJlIGEgZ29vZCBpZGVhIHRvIGRvdWJsZSBjaGVjayB0aGF0IHRoZSBjb29r aWUgd2FzIGluIGZhY3Qgc2V0IHVzaW5nIHtAbGluayAjZ2V0Q29va2llfS4NCiAq DQogKiBAbWV0aG9kIEJlYVBvcnRhbENvb2tpZU1hbmFnZXIuc2V0Q29va2llDQog KiBAYWNjZXNzIHB1YmxpYw0KICoNCiAqIEBwYXJhbSBuYW1lDQogKiAgICAgIFRo ZSBuYW1lIG9mIHRoZSBjb29raWUgYmVpbmcgc2V0DQogKiBAcGFyYW0gdmFsdWUN CiAqICAgICAgVGhlIGNvb2tpZSdzIHZhbHVlDQogKiBAcGFyYW0gKGV4cGlyZXMp DQogKiAgICAgIFRoZSBjb29raWUncyBleHBpcmF0aW9uIGRhdGU7DQogKiAgICAg IGRlZmF1bHRzIHRvIHRoZSBlbmQgb2YgdGhlIGN1cnJlbnQgYnJvd3NlciBzZXNz aW9uDQogKiBAcGFyYW0gKHBhdGgpDQogKiAgICAgIFRoZSByZXF1ZXN0IHBhdGgg Zm9yIHdoaWNoIHRoZSBjb29raWUgaXMgdmFsaWQ7DQogKiAgICAgIGRlZmF1bHRz IHRvIHRoZSBwYXRoIG9mIHRoZSBvcmlnaW5hdGluZyBkb2N1bWVudA0KICogQHBh cmFtIChkb21haW4pDQogKiAgICAgIFRoZSBkb21haW4gZm9yIHdoaWNoIHRoZSBj b29raWUgaXMgdmFsaWQ7DQogKiAgICAgIGRlZmF1bHRzIHRvIHRoZSBkb21haW4g b2YgdGhlIG9yaWdpbmF0aW5nIGRvY3VtZW50DQogKiBAcGFyYW0gKHNlY3VyZSkN CiAqICAgICAgQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciBvciBub3QgdGhl IGNvb2tpZSdzIHRyYW5zbWlzc2lvbiBtdXN0IGJlIHNlY3VyZTsNCiAqICAgICAg ZGVmYXVsdHMgdG8gZmFsc2UNCiAqLw0KZnVuY3Rpb24gYmVhUG9ydGFsQ29va2ll TWFuYWdlclNldENvb2tpZShuYW1lLCB2YWx1ZSwgZXhwaXJlcywgcGF0aCwgZG9t YWluLCBzZWN1cmUpDQp7DQogICAgLy8gSWYgaW50ZWxsaWdlbnQgY29va2llcyBh cmUgZGlzYWJsZWQgb3IgaWYgdGhlIG1hc3RlciBjb29raWUgZXhpc3RzLCB0aGVu IHdyaXRlIHRoZSBuZXcgY29va2llDQogICAgaWYgKCF0aGlzLnVzZUludGVsbGln ZW50Q29va2llcyB8fCB0aGlzLmdldE1hc3RlckNvb2tpZSgpID09ICJ0cnVlIikN CiAgICB7DQogICAgICAgIHZhciBjb29raWUgPSB0aGlzLmdldENvb2tpZShuYW1l KTsNCg0KICAgICAgICAvLyBJZiB0aGUgY29va2llIGRvZXNuJ3QgZXhpc3Qgb3Ig dGhlIHZhbHVlIGhhcyBjaGFuZ2VkLCB3cml0ZSBpdCBvdXQNCiAgICAgICAgaWYg KCFjb29raWUgfHwgY29va2llICE9IHZhbHVlKQ0KICAgICAgICB7DQogICAgICAg ICAgICB2YXIgY29va2llDQogICAgICAgICAgICAgICAgPSBuYW1lICsgIj0iICsg ZXNjYXBlKHZhbHVlKQ0KICAgICAgICAgICAgICAgICsgKGV4cGlyZXMgPyAiOyBl eHBpcmVzPSIgKyBleHBpcmVzLnRvR01UU3RyaW5nKCkgOiAiIikNCiAgICAgICAg ICAgICAgICArIChwYXRoID8gIjsgcGF0aD0iICsgcGF0aCA6ICIiKQ0KICAgICAg ICAgICAgICAgICsgKGRvbWFpbiA/ICI7IGRvbWFpbj0iICsgZG9tYWluIDogIiIp DQogICAgICAgICAgICAgICAgKyAoc2VjdXJlID8gIjsgc2VjdXJlIiA6ICIiKTsN CiAgICAgICAgICAgIGRvY3VtZW50LmNvb2tpZSA9IGNvb2tpZTsNCg0KICAgICAg ICAgICAgaWYgKHRoaXMudXNlSW50ZWxsaWdlbnRDb29raWVzKQ0KICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgIGNvb2tpZSA9IHRoaXMuZ2V0Q29va2llKG5h bWUpOw0KDQogICAgICAgICAgICAgICAgLy8gSWYgdGhlIGNvb2tpZSBkaWRuJ3Qg Z2V0IHdyaXR0ZW4gKGkuZS4gdGhlIGJvcndzZXIgaXMgbm90IGFjY2VwdGluZyB0 aGVtKSwgZGVsZXRlIHRoZSBtYXN0ZXIgY29va2llDQogICAgICAgICAgICAgICAg Ly8gdG8gcHJldmVudCBmdXR1cmUgd3JpdGUgYXR0ZW1wdHM7IHRoaXMgcmFyZSBj YXNlIGNvdWxkIG9jY3VyIGlmIHRoZSB1c2VyIGRpc2FibGVkIGNvb2tpZXMgbWlk LXNlc3Npb24NCiAgICAgICAgICAgICAgICBpZiAoIWNvb2tpZSB8fCBjb29raWUg IT0gdmFsdWUpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICB0aGlzLmRlbGV0ZU1hc3RlckNvb2tpZSgpOw0KICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgIH0NCn0NCg0KLyoqDQogKiBH ZXRzIGEgY29va2llJ3MgdmFsdWUgKGlmIHBvc3NpYmxlKSB3aXRoIHRoZSBnaXZl biBuYW1lLCBvciBudWxsIGlmIHRoZSBjb29raWUgZG9lcyBub3QgZXhpc3QuDQog Kg0KICogQG1ldGhvZCBCZWFQb3J0YWxDb29raWVNYW5hZ2VyLmdldENvb2tpZQ0K ICogQGFjY2VzcyBwdWJsaWMNCiAqDQogKiBAcGFyYW0gbmFtZQ0KICogICAgICBU aGUgbmFtZSBvZiB0aGUgY29va2llIGJlaW5nIGZldGNoZWQNCiAqLw0KZnVuY3Rp b24gYmVhUG9ydGFsQ29va2llTWFuYWdlckdldENvb2tpZShuYW1lKQ0Kew0KICAg IHZhciBjb29raWUgPSBkb2N1bWVudC5jb29raWU7DQogICAgbmFtZSA9IG5hbWUg KyAiPSI7DQogICAgdmFyIGxlbmd0aCA9IGNvb2tpZS5sZW5ndGg7DQogICAgdmFy IG5hbWVCZWdpbiA9IDA7DQoNCiAgICB3aGlsZSAobmFtZUJlZ2luIDwgbGVuZ3Ro KQ0KICAgIHsNCiAgICAgICAgdmFyIHZhbHVlQmVnaW4gPSBuYW1lQmVnaW4gKyBu YW1lLmxlbmd0aDsNCg0KICAgICAgICBpZiAoY29va2llLnN1YnN0cmluZyhuYW1l QmVnaW4sIHZhbHVlQmVnaW4pID09IG5hbWUpDQogICAgICAgIHsNCiAgICAgICAg ICAgIHZhciB2YWx1ZUVuZCA9IGNvb2tpZS5pbmRleE9mICgiOyIsIHZhbHVlQmVn aW4pOw0KDQogICAgICAgICAgICBpZiAodmFsdWVFbmQgPT0gLTEpDQogICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgdmFsdWVFbmQgPSBsZW5ndGg7DQogICAg ICAgICAgICB9DQoNCiAgICAgICAgICAgIHJldHVybiB1bmVzY2FwZShjb29raWUu c3Vic3RyaW5nKHZhbHVlQmVnaW4sIHZhbHVlRW5kKSk7DQogICAgICAgIH0NCg0K ICAgICAgICBuYW1lQmVnaW4gPSBjb29raWUuaW5kZXhPZigiICIsIG5hbWVCZWdp bikgKyAxOw0KDQogICAgICAgIGlmIChuYW1lQmVnaW4gPT0gMCkNCiAgICAgICAg ew0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBy ZXR1cm4gbnVsbDsNCn0NCg0KLyoqDQogKiBEZWxldGVzIGEgY29va2llIChpZiBw b3NzaWJsZSkgd2l0aCB0aGUgZ2l2ZW4gbmFtZS4NCiAqDQogKiBAbWV0aG9kIEJl YVBvcnRhbENvb2tpZU1hbmFnZXIuZGVsZXRlQ29va2llDQogKiBAYWNjZXNzIHB1 YmxpYw0KICoNCiAqIEBwYXJhbSBuYW1lDQogKiAgICAgIFRoZSBuYW1lIG9mIHRo ZSBjb29raWUgYmVpbmcgZGVsZXRlZA0KICogQHBhcmFtIChwYXRoKQ0KICogICAg ICBUaGUgcmVxdWVzdCBwYXRoIGZvciB3aGljaCB0aGUgY29va2llIGlzIHZhbGlk OyBtdXN0IGJlIHNhbWUgYXMgdGhlIHBhdGggdXNlZCB0byBjcmVhdGUgY29va2ll Ow0KICogICAgICBkZWZhdWx0cyB0byB0aGUgcGF0aCBvZiB0aGUgb3JpZ2luYXRp bmcgZG9jdW1lbnQNCiAqIEBwYXJhbSAoZG9tYWluKQ0KICogICAgICBUaGUgZG9t YWluIGZvciB3aGljaCB0aGUgY29va2llIGlzIHZhbGlkOyBtdXN0IGJlIHNhbWUg YXMgdGhlIGRvbWFpbiB1c2VkIHRvIGNyZWF0ZSBjb29raWU7DQogKiAgICAgIGRl ZmF1bHRzIHRvIHRoZSBkb21haW4gb2YgdGhlIG9yaWdpbmF0aW5nIGRvY3VtZW50 DQogKi8NCmZ1bmN0aW9uIGJlYVBvcnRhbENvb2tpZU1hbmFnZXJEZWxldGVDb29r aWUobmFtZSwgcGF0aCwgZG9tYWluKQ0Kew0KICAgIGlmICghdGhpcy51c2VJbnRl bGxpZ2VudENvb2tpZXMgfHwgdGhpcy5nZXRNYXN0ZXJDb29raWUoKSA9PSAidHJ1 ZSIpDQogICAgew0KICAgICAgICBpZiAodGhpcy5nZXRDb29raWUobmFtZSkpDQog ICAgICAgIHsNCiAgICAgICAgICAgIGRvY3VtZW50LmNvb2tpZSA9IG5hbWUgKyAi PSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICArIChwYXRoID8gIjsgcGF0 aD0iICsgcGF0aCA6ICIiKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICsg KGRvbWFpbiA/ICI7IGRvbWFpbj0iICsgZG9tYWluIDogIiIpDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgKyAiOyBleHBpcmVzPVRodSwgMDEtSmFuLTcwIDAw OjAwOjAxIEdNVCI7DQogICAgICAgIH0NCiAgICB9DQp9DQoNCi8qKg0KICogU2V0 cyB0aGUgbWFzdGVyIGNvb2tpZSAoaWYgcG9zc2libGUpLg0KICoNCiAqIEBtZXRo b2QgQmVhUG9ydGFsQ29va2llTWFuYWdlci5zZXRNYXN0ZXJDb29raWUNCiAqIEBh Y2Nlc3MgcHVibGljDQogKi8NCmZ1bmN0aW9uIGJlYVBvcnRhbENvb2tpZU1hbmFn ZXJTZXRNYXN0ZXJDb29raWUoKQ0Kew0KICAgIGlmICh0aGlzLnVzZUludGVsbGln ZW50Q29va2llcykNCiAgICB7DQogICAgICAgIGlmICh0aGlzLmdldE1hc3RlckNv b2tpZSgpICE9ICJ0cnVlIikNCiAgICAgICAgew0KICAgICAgICAgICAgZG9jdW1l bnQuY29va2llID0gImJlYVBvcnRhbE1hc3RlckNvb2tpZT10cnVlOyBwYXRoPS8i Ow0KICAgICAgICB9DQogICAgfQ0KfQ0KDQovKioNCiAqIEdldHMgdGhlIG1hc3Rl ciBjb29raWUgKGlmIHBvc3NpYmxlKS4NCiAqDQogKiBAbWV0aG9kIEJlYVBvcnRh bENvb2tpZU1hbmFnZXIuZ2V0TWFzdGVyQ29va2llDQogKiBAYWNjZXNzIHB1Ymxp Yw0KICovDQpmdW5jdGlvbiBiZWFQb3J0YWxDb29raWVNYW5hZ2VyR2V0TWFzdGVy Q29va2llKCkNCnsNCiAgICByZXR1cm4gdGhpcy5nZXRDb29raWUoImJlYVBvcnRh bE1hc3RlckNvb2tpZSIpOw0KfQ0KDQovKioNCiAqIERlbGV0ZXMgdGhlIG1hc3Rl ciBjb29raWUgKGlmIHBvc3NpYmxlKS4NCiAqDQogKiBAbWV0aG9kIEJlYVBvcnRh bENvb2tpZU1hbmFnZXIuZGVsZXRlTWFzdGVyQ29va2llDQogKiBAYWNjZXNzIHB1 YmxpYw0KICovDQpmdW5jdGlvbiBiZWFQb3J0YWxDb29raWVNYW5hZ2VyRGVsZXRl TWFzdGVyQ29va2llKCkNCnsNCiAgICBpZiAodGhpcy51c2VJbnRlbGxpZ2VudENv b2tpZXMpDQogICAgew0KICAgICAgICBkb2N1bWVudC5jb29raWUgPSAiYmVhUG9y dGFsTWFzdGVyQ29va2llPTsgcGF0aD0vOyBleHBpcmVzPVRodSwgMDEtSmFuLTcw IDAwOjAwOjAxIEdNVCI7DQogICAgfQ0KfQ0K ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=state.js Content-Type: application/x-javascript; charset=UTF-8; name=state.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/shared/js/state.js Content-Transfer-Encoding: Base64 LyoqDQogKiBAbGlicmFyeSBCZWFQb3J0YWxDbGllbnRTdGF0ZU1hbmFnZXINCiAq DQogKiBUaGlzIEphdmFTY3JpcHQgbGlicmFyeSBpbXBsZW1lbnRzIGEgc2ltcGxl IGNsaWVudC1zaWRlIHN0YXRlIG1hbmFnZXIuICBUaGUgc3RhdGUgcGVyc2lzdGVk IGJ5IHRoaXMgbGlicmFyeSBpcw0KICogaW50ZW5kZWQgdG8gc3Vydml2ZSwgd2hl biBwb3NzaWJsZSwgYnJvd3NlciByZWZyZXNoZXMgYW5kIHBvc3NpYmx5IGV2ZW4g YnJvd3NlciBzZXNzaW9ucywgZGVwZW5kaW5nIG9uIHRoZSBleHBpcmF0aW9uDQog KiBzZXR0aW5nIGZvciB0aGUgc3RhdGUgbWFuYWdlciBhbmQgdGhlIGJyb3dzZXIn cy91c2VyJ3Mgd2lsbGluZ25lc3MgdG8gYWNjZXB0IGNvb2tpZXMuDQogKg0KICog Tm90ZSB0aGF0IHN0YXRlIHBlcnNpc3RlbmNlIG1heSBub3QgYmUgcG9zc2libGUg aWYgdGhlIGJyb3dzZXIgaXMgaW4gYW55IHdheSBzZXQgdG8gZGVueSBjb29raWVz Lg0KICoNCiAqIEB0b2RvDQogKiAgICAgIFN1cHBvcnQgYSBzdGF0ZSBlbnRyeSBj b3VudCBsaW1pdCwgcHJ1bmluZyBzdGF0ZSBlbnRyaWVzIGFzIHRoZSBzdGF0ZSBl bnRyeSBjb3VudCBncm93cyBhYm92ZSBhIHRocmVzaG9sZA0KICogQHRvZG8NCiAq ICAgICAgU3VwcG9ydCBhIGN1bXVsYXRpdmUgc3RhdGUgZW50cnkgc2l6ZSBsaW1p dCwgcHJ1bmluZyBzdGF0ZSBlbnRyaWVzIGFzIHN0YXRlIGdyb3dzIGFib3ZlIGEg c2l6ZSB0aHJlc2hvbGQNCiAqIEB0b2RvDQogKiAgICAgIFN1cHBvcnQgc2l6ZS1i YXNlZCB0aHJlc2hvbGQgb3ZlcmZsb3cgaW50byBhZGRpdGlvbmFsIGNvb2tpZXMs IHVwIHRvIGEgbGltaXQgb2YgYWRkaXRpb25hbCBjb29raWVzDQogKg0KICogQWxs IGNvbW1lbnRzIGluIHRoaXMgZmlsZSBtYXkgYmUgcmVtb3ZlZCB3aGVuIG9wdGlt aXppbmcgZm9yIHByb2R1Y3Rpb24uDQogKi8NCg0KLyoqDQogKiBUaGlzIGdsb2Jh bCB2YXJpYWJsZSB0cmFja3MgdGhlIG51bWJlciBvZiBpbnN0YW5jZXMgb2YgdGhl IHN0YXRlIG1hbmFnZXIgY2xhc3MuICBUaGlzIHZhbHVlIHNob3VsZCBub3QgYmUg bW9kaWZpZWQNCiAqIGV4dGVybmFsbHkhDQogKg0KICogQGFjY2VzcyBwcml2YXRl DQogKi8NCnZhciBiZWFQb3J0YWxDbGllbnRTdGF0ZU1hbmFnZXJDb3VudCA9IDA7 DQoNCi8qKg0KICogQ3JlYXRlcyBhIG5ldyBCZWFQb3J0YWxDbGllbnRTdGF0ZU1h bmFnZXIgaW5zdGFuY2UuDQogKg0KICogQGNvbnN0cnVjdG9yDQogKiBAYWNjZXNz IHB1YmxpYw0KICoNCiAqIEBwYXJhbSAobmFtZXNwYWNlKQ0KICogICAgICBUaGUg bmFtZXNwYWNlIHRvIHdoaWNoIGFsbCBzdGF0ZSBzdG9yZWQgdmlhIHRoZSBjdXJy ZW50IGluc3RhbmNlIHNob3VsZCBiZSBzY29wZWQ7DQogKiAgICAgIHRoZSBuYW1l c3BhY2Ugc2hvdWxkIGJlIHVuaXF1ZSwgYXMgb3RoZXJ3aXNlIHR3byBtYW5hZ2Vy cyBjcmVhdGVkIHdpdGggdGhlIHNhbWUgbmFtZXNwYWNlIHdpbGwgc2hhcmUgYSBz dGF0ZQ0KICogICAgICBwb29sIChpLmUuIGEgc2luZ2xlIGNvb2tpZSk7DQogKiAg ICAgIGRlZmF1bHRzIHRvICJiZWFQb3J0YWxDbGllbnRTdGF0ZU1hbmFnZXJYIiwg d2hlcmUgIlgiIGlzIHRoZSBpbnN0YW5jZSBjb3VudCBmb3IgdGhpcyBjbGFzcw0K ICogQHBhcmFtIChleHBpcmVzKQ0KICogICAgICBUaGUgZXhwaXJhdGlvbiBkYXRl L3RpbWUgZm9yIGNvb2tpZSB1c2VkIHRvIHBlcnNpc3QgYWxsIHN0YXRlIHN0b3Jl ZCB2aWEgdGhpcyBtYW5hZ2VyIGluc3RhbmNlOw0KICogICAgICBkZWZhdWx0cyB0 byB0aGUgZW5kIG9mIHRoZSBjdXJyZW50IGJyb3dzZXIgc2Vzc2lvbg0KICovDQpm dW5jdGlvbiBCZWFQb3J0YWxDbGllbnRTdGF0ZU1hbmFnZXIobmFtZXNwYWNlLCBl eHBpcmVzKQ0Kew0KICAgIC8vICJQdWJsaWMiIG1ldGhvZHMNCiAgICB0aGlzLnNl dFN0YXRlID0gYmVhUG9ydGFsQ2xpZW50U3RhdGVNYW5hZ2VyU2V0U3RhdGU7DQog ICAgdGhpcy5nZXRTdGF0ZSA9IGJlYVBvcnRhbENsaWVudFN0YXRlTWFuYWdlckdl dFN0YXRlOw0KICAgIHRoaXMuY29udGFpbnNTdGF0ZSA9IGJlYVBvcnRhbENsaWVu dFN0YXRlTWFuYWdlckNvbnRhaW5zU3RhdGU7DQogICAgdGhpcy5kZWxldGVTdGF0 ZSA9IGJlYVBvcnRhbENsaWVudFN0YXRlTWFuYWdlckRlbGV0ZVN0YXRlOw0KICAg IHRoaXMubGlzdFN0YXRlcyA9IGJlYVBvcnRhbENsaWVudFN0YXRlTWFuYWdlckxp c3RTdGF0ZXM7DQogICAgdGhpcy5jbGVhciA9IGJlYVBvcnRhbENsaWVudFN0YXRl TWFuYWdlckNsZWFyOw0KDQogICAgLy8gIlByaXZhdGUiIG1ldGhvZHMNCiAgICB0 aGlzLmJ1bmRsZVN0YXRlID0gYmVhUG9ydGFsQ2xpZW50U3RhdGVNYW5hZ2VyQnVu ZGxlU3RhdGU7DQoNCiAgICAvLyAiUHJpdmF0ZSIgbWVtYmVyIHZhcmlhYmxlcw0K ICAgIHRoaXMuaW5zdGFuY2VJZCA9ICsrYmVhUG9ydGFsQ2xpZW50U3RhdGVNYW5h Z2VyQ291bnQ7DQogICAgdGhpcy5uYW1lc3BhY2UgPSAobmFtZXNwYWNlID8gbmFt ZXNwYWNlIDogImJlYVBvcnRhbENsaWVudFN0YXRlTWFuYWdlciIgKyB0aGlzLmlu c3RhbmNlSWQpOw0KICAgIHRoaXMuZXhwaXJlcyA9IGV4cGlyZXM7DQogICAgdGhp cy5lcXVhbHMgPSAiLT4iOw0KICAgIC8vIFN3aXRjaCB0aGUgc2Vjb25kIGN0b3Ig YXJnIHRvIGZhbHNlIGlmIHRoZSBtYXN0ZXIgY29va2llIGlzIGJlaW5nIGluaXRl ZCBlbHNld2hlcmUgaW4gdGhlIGFwcA0KICAgIC8vIChlLmcuIHRoZSBpbml0aWFs IGFwcCBwYWdlKQ0KICAgIHRoaXMuY29va2llcyA9IG5ldyBCZWFQb3J0YWxDb29r aWVNYW5hZ2VyKHRydWUsIHRydWUpOw0KfQ0KDQovKioNCiAqIFNldHMgYSBzdGF0 ZSB2YWx1ZSB3aXRoIHRoZSBnaXZlbiBuYW1lLiAgVGhlIG5hbWUgaXMgbmFtZXNw YWNlZCBiYXNlZCBvbiB0aGUgdmFsdWUgb2YgdGhlIGN1cnJlbnQgb2JqZWN0J3Mg bmFtZXNwYWNlDQogKiBwcm9wZXJ0eSB2YWx1ZS4NCiAqDQogKiBAbWV0aG9kIEJl YVBvcnRhbENsaWVudFN0YXRlTWFuYWdlci5zZXRTdGF0ZQ0KICogQGFjY2VzcyBw dWJsaWMNCiAqDQogKiBAcGFyYW0gc3RhdGUNCiAqICAgICAgVGhlIG5hbWUgb2Yg dGhlIHN0YXRlIHByb3BlcnR5IHRvIHNldDsgdGhlIHN0cmluZ3MgIl1bIiwgIjsi LCBvciAiLT4iIGFyZSBub3QgYWxsb3dlZCBpbiB0aGUgc3RhdGUgbmFtZQ0KICog QHBhcmFtICh2YWx1ZSkNCiAqICAgICAgVGhlIHZhbHVlIG9mIHRoZSBzdGF0ZSBw cm9wZXJ0eSB0byBzZXQ7IHRoZSBzdHJpbmdzICJdWyIgb3IgIjsiIGFyZSBub3Qg YWxsb3dlZCBpbiB0aGUgc3RhdGUgdmFsdWU7DQogKiAgICAgIGRlZmF1bHRzIHRv IG51bGwgKGluIHdoaWNoIGNhc2UgdGhlIHN0YXRlIG5hbWUgYWxvbmUgaXMgc3Rv cmVkKQ0KICoNCiAqIEBzZWUgI2dldENvb2tpZU5hbWUoLi4uKQ0KICovDQpmdW5j dGlvbiBiZWFQb3J0YWxDbGllbnRTdGF0ZU1hbmFnZXJTZXRTdGF0ZShzdGF0ZSwg dmFsdWUpDQp7DQogICAgdGhpcy5kZWxldGVTdGF0ZShzdGF0ZSk7DQogICAgdmFy IGNvb2tpZSA9IHRoaXMuY29va2llcy5nZXRDb29raWUodGhpcy5uYW1lc3BhY2Up Ow0KICAgIGNvb2tpZSA9IChjb29raWUgPyBjb29raWUgOiAiIikgKyB0aGlzLmJ1 bmRsZVN0YXRlKHN0YXRlLCB2YWx1ZSk7DQogICAgdGhpcy5jb29raWVzLnNldENv b2tpZSh0aGlzLm5hbWVzcGFjZSwgY29va2llLCB0aGlzLmV4cGlyZXMpOw0KfQ0K DQovKioNCiAqIEZldGNoZXMgYSBwZXJzaXN0ZW50IHN0YXRlIHZhbHVlLCBpZiBp dCBleGlzdHMgYW5kIGNhbiBiZSByZWFkIGZyb20gdGhlIHBlcnNpc3RlbnQgc3Rv cmUuICBUaGUgbmFtZSBpcyBuYW1lc3BhY2VkDQogKiBiYXNlZCBvbiB0aGUgdmFs dWUgb2YgdGhlIGN1cnJlbnQgb2JqZWN0J3MgbmFtZXNwYWNlIHByb3BlcnR5IHZh bHVlLg0KICoNCiAqIEBtZXRob2QgQmVhUG9ydGFsQ2xpZW50U3RhdGVNYW5hZ2Vy LmdldFN0YXRlDQogKiBAYWNjZXNzIHB1YmxpYw0KICoNCiAqIEBwYXJhbSBzdGF0 ZQ0KICogICAgICBUaGUgbmFtZSBvZiB0aGUgc3RhdGUgcHJvcGVydHkgdmFsdWUg dG8gcmV0dXJuDQogKg0KICogQHJldHVybiBUaGUgc3RhdGUncyB2YWx1ZSwgb3Ig bnVsbCBpZiB0aGUgc3RhdGUgZG9lcyBub3QgZXhpc3Qgb3IgZXhpc3RzIGJ1dCBo YXMgbm8gdmFsdWUNCiAqLw0KZnVuY3Rpb24gYmVhUG9ydGFsQ2xpZW50U3RhdGVN YW5hZ2VyR2V0U3RhdGUoc3RhdGUpDQp7DQogICAgdmFyIHZhbHVlID0gbnVsbDsN CiAgICB2YXIgc3RhdGVzID0gdGhpcy5saXN0U3RhdGVzKCk7DQoNCiAgICBmb3Ig KHZhciBpbmRleCA9IDA7IGluZGV4IDwgc3RhdGVzLmxlbmd0aDsgaW5kZXgrKykN CiAgICB7DQogICAgICAgIGlmIChzdGF0ZXNbaW5kZXhdWzBdID09IHN0YXRlKQ0K ICAgICAgICB7DQogICAgICAgICAgICB2YWx1ZSA9IHN0YXRlc1tpbmRleF1bMV07 DQogICAgICAgICAgICBicmVhazsNCiAgICAgICAgfQ0KICAgIH0NCg0KICAgIHJl dHVybiB2YWx1ZTsNCn0NCg0KLyoqDQogKiBDaGVja3MgdG8gc2VlIGlmIGEgZ2l2 ZW4gc3RhdGUgaGFzIGJlZW4gc2V0IGZvciB0aGlzIG1hbmFnZXIuDQogKg0KICog QG1ldGhvZCBCZWFQb3J0YWxDbGllbnRTdGF0ZU1hbmFnZXIuY29udGFpbnNTdGF0 ZQ0KICogQGFjY2VzcyBwdWJsaWMNCiAqDQogKiBAcGFyYW0gc3RhdGUNCiAqICAg ICAgVGhlIHN0YXRlIG5hbWUgc2V0dGluZyB0byBjaGVjayBmb3INCiAqDQogKiBA cmV0dXJuDQogKiAgICAgIHRydWUgaWYgdGhlIHN0YXRlIGlzIHNldCAod2l0aCBv ciB3aXRob3V0IGEgdmFsdWUpIGluIHRoZSBjb29raWU7IGZhbHNlIG90aGVyd2lz ZQ0KICoNCiAqIEBzZWUgI2dldFN0YXRlKC4uLikNCiAqLw0KZnVuY3Rpb24gYmVh UG9ydGFsQ2xpZW50U3RhdGVNYW5hZ2VyQ29udGFpbnNTdGF0ZShzdGF0ZSkNCnsN CiAgICB2YXIgcmVzdWx0ID0gZmFsc2U7DQogICAgdmFyIHN0YXRlcyA9IHRoaXMu bGlzdFN0YXRlcygpOw0KDQogICAgZm9yICh2YXIgaW5kZXggPSAwOyBpbmRleCA8 IHN0YXRlcy5sZW5ndGg7IGluZGV4KyspDQogICAgew0KICAgICAgICBpZiAoc3Rh dGVzW2luZGV4XVswXSA9PSBzdGF0ZSkNCiAgICAgICAgew0KICAgICAgICAgICAg cmVzdWx0ID0gdHJ1ZTsNCiAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICB9DQog ICAgfQ0KDQogICAgcmV0dXJuIHJlc3VsdDsNCn0NCg0KLyoqDQogKiBEZWxldGVz IGEgcGVyc2lzdGVudCBzdGF0ZSB2YWx1ZSBpZiBpdCBleGlzdHMuICBUaGUgbmFt ZSBpcyBuYW1lc3BhY2VkIGJhc2VkIG9uIHRoZSB2YWx1ZSBvZiB0aGUgY3VycmVu dCBvYmplY3Qncw0KICogbmFtZXNwYWNlIHByb3BlcnR5IHZhbHVlLg0KICoNCiAq IEBtZXRob2QgQmVhUG9ydGFsQ2xpZW50U3RhdGVNYW5hZ2VyLmRlbGV0ZVN0YXRl DQogKiBAYWNjZXNzIHB1YmxpYw0KICoNCiAqIEBwYXJhbSBuYW1lDQogKiAgICAg IFRoZSBuYW1lIG9mIHRoZSBzdGF0ZSBwcm9wZXJ0eSB0byBkZWxldGUNCiAqLw0K ZnVuY3Rpb24gYmVhUG9ydGFsQ2xpZW50U3RhdGVNYW5hZ2VyRGVsZXRlU3RhdGUo c3RhdGUpDQp7DQogICAgdmFyIGNvb2tpZSA9ICIiOw0KICAgIHZhciBzdGF0ZXMg PSB0aGlzLmxpc3RTdGF0ZXMoKTsNCg0KICAgIGZvciAodmFyIGluZGV4ID0gMDsg aW5kZXggPCBzdGF0ZXMubGVuZ3RoOyBpbmRleCsrKQ0KICAgIHsNCiAgICAgICAg aWYgKHN0YXRlc1tpbmRleF1bMF0gIT0gc3RhdGUpDQogICAgICAgIHsNCiAgICAg ICAgICAgIGNvb2tpZSArPSB0aGlzLmJ1bmRsZVN0YXRlKHN0YXRlc1tpbmRleF1b MF0sIHN0YXRlc1tpbmRleF1bMV0pOw0KICAgICAgICB9DQogICAgfQ0KDQogICAg aWYgKGNvb2tpZS5sZW5ndGggPiAwKQ0KICAgIHsNCiAgICAgICAgdGhpcy5jb29r aWVzLnNldENvb2tpZSh0aGlzLm5hbWVzcGFjZSwgY29va2llLCB0aGlzLmV4cGly ZXMpOw0KICAgIH0NCiAgICBlbHNlDQogICAgew0KICAgICAgICB0aGlzLmNvb2tp ZXMuZGVsZXRlQ29va2llKHRoaXMubmFtZXNwYWNlKTsNCiAgICB9DQp9DQoNCi8q Kg0KICogUmV0dXJucyBhIGxpc3Qgb2YgdGhlIGN1cnJlbnRseSBzZXQgc3RhdGVz IGZvciB0aGlzIG1hbmFnZXIgaW5zdGFuY2UuICBUaGUgcmV0dXJuZWQgbGlzdCBp cyBhIDItZGltZW5zaW9uYWwgYXJyYXkNCiAqIHdoZXJlIHRoZSBmaXJzdCBkaW1l bnNpb24gaXMgdGhlIGxpc3Qgb2Ygc3RhdGVzLCBhbmQgdGhlIHNlY29uZCByZXBy ZXNlbnRzIG5hbWUvdmFsdWVzIHBhaXJzIChzaXplLTIgaW4gYWxsIGNhc2VzKS4N CiAqDQogKiBAbWV0aG9kIEJlYVBvcnRhbENsaWVudFN0YXRlTWFuYWdlci5saXN0 U3RhdGVzDQogKiBAYWNjZXNzIHB1YmxpYw0KICoNCiAqIEByZXR1cm4NCiAqICAg ICAgQSBsaXN0IG9mIGFsbCBzdGF0ZXM7IHRoZSBmb3JtYXQgaXMgYSB0d28tZGlt ZW5zaW9uYWwgYXJyYXkgd2hlcmUgdGhlIGZpcnN0IGRpbWVuc2lvbiBpcyBsaXN0 cyBwYWlycyBvZiBzdGF0ZXMNCiAqICAgICAgYW5kIHZhbHVlcyBpbiB0aGUgc2Vj b25kIGRpbWVuc2lvbjsgc3RhdGVzIHdpdGhvdXQgYXNzb2NpYXRlZCB2YWx1ZXMg cHJvdmlkZSBudWxsIGluIHRoZSB2YWx1ZSBwb3NpdGlvbiBvZiB0aGUNCiAqICAg ICAgc2Vjb25kIGRpbWVuc2lvbg0KICovDQpmdW5jdGlvbiBiZWFQb3J0YWxDbGll bnRTdGF0ZU1hbmFnZXJMaXN0U3RhdGVzKCkNCnsNCiAgICB2YXIgc3RhdGVzID0g bmV3IEFycmF5KCk7DQogICAgdmFyIGNvb2tpZSA9IHRoaXMuY29va2llcy5nZXRD b29raWUodGhpcy5uYW1lc3BhY2UpOw0KDQogICAgaWYgKGNvb2tpZSkNCiAgICB7 DQogICAgICAgIGNvb2tpZSA9IGNvb2tpZS5zdWJzdHJpbmcoMSwgY29va2llLmxl bmd0aCAtIDEpOw0KICAgICAgICB2YXIgcHJvcGVydGllcyA9IGNvb2tpZS5zcGxp dCgiXVsiKTsNCg0KICAgICAgICBmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwg cHJvcGVydGllcy5sZW5ndGg7IGluZGV4KyspDQogICAgICAgIHsNCiAgICAgICAg ICAgIHZhciBwcm9wZXJ0eSA9IHByb3BlcnRpZXNbaW5kZXhdOw0KICAgICAgICAg ICAgdmFyIGVxdWFsc0luZGV4ID0gcHJvcGVydHkuaW5kZXhPZih0aGlzLmVxdWFs cyk7DQoNCiAgICAgICAgICAgIGlmIChlcXVhbHNJbmRleCA+PSAxICYmIHByb3Bl cnR5Lmxlbmd0aCA+IChlcXVhbHNJbmRleCArIHRoaXMuZXF1YWxzLmxlbmd0aCkp DQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgdmFyIGtleSA9IHByb3Bl cnR5LnN1YnN0cmluZygwLCBlcXVhbHNJbmRleCk7DQogICAgICAgICAgICAgICAg dmFyIHZhbHVlID0gcHJvcGVydHkuc3Vic3RyaW5nKGVxdWFsc0luZGV4ICsgdGhp cy5lcXVhbHMubGVuZ3RoKTsNCiAgICAgICAgICAgICAgICBzdGF0ZXNbaW5kZXhd ID0gbmV3IEFycmF5KGtleSwgdmFsdWUpOw0KICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgZWxzZQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIHN0YXRl c1tpbmRleF0gPSBuZXcgQXJyYXkocHJvcGVydHksIG51bGwpOw0KICAgICAgICAg ICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgcmV0dXJuIHN0YXRlczsNCn0N Cg0KLyoqDQogKiBDbGVhcnMgYWxsIHN0YXRlIGFzc29jaWF0ZWQgd2l0aCB0aGlz IHN0YXRlIG1hbmFnZXIuICBNb3JlIHByZWNpc2VseSwgdGhlIGNvb2tpZSB1c2Vk IHRvIHN0b3JlIHRoaXMgbWFuYWdlcnMgc3RhdGUgaXMNCiAqIHBlcm1lbmFudGx5 IGRlbGV0ZWQuICBPbmx5IHVzZSB0aGlzIG1ldGhvZCBpZiB5b3Ugd2lzaCB0byBk ZWxldGUgYWxsIHN0YXRlIGVudHJpZXMgYXNzb2NpYXRlZCB3aXRoIHRoaXMgbWFu YWdlcg0KICogaW5zdGFuY2UuDQogKg0KICogQG1ldGhvZCBCZWFQb3J0YWxDbGll bnRTdGF0ZU1hbmFnZXIuY2xlYXINCiAqIEBhY2Nlc3MgcHVibGljDQogKi8NCmZ1 bmN0aW9uIGJlYVBvcnRhbENsaWVudFN0YXRlTWFuYWdlckNsZWFyKCkNCnsNCiAg ICB0aGlzLmNvb2tpZXMuZGVsZXRlQ29va2llKHRoaXMubmFtZXNwYWNlKTsNCn0N Cg0KLyoqDQogKiBCdW5kbGVzIGEgbmFtZSBhbmQgc3RhdGUgaW50byBhIHdyaXRl YWJsZSBwYWNrZXQgcmVhZHkgZm9yIGluc2VydGlvbiBpbnRvIHRoZSBiYWNraW5n IHN0b3JhZ2UgY29va2llLg0KICoNCiAqIEBtZXRob2QgQmVhUG9ydGFsQ2xpZW50 U3RhdGVNYW5hZ2VyLmJ1bmRsZVN0YXRlDQogKiBAYWNjZXNzIHByaXZhdGUNCiAq DQogKiBAcGFyYW0gc3RhdGUNCiAqICAgICAgVGhlIG5hbWUgb2YgdGhlIHN0YXRl IHByb3BlcnR5IHRvIGJ1bmRsZQ0KICogQHBhcmFtICh2YWx1ZSkNCiAqICAgICAg VGhlIHZhbHVlIG9mIHRoZSBzdGF0ZSBwcm9wZXJ0eSB0byBzZXQ7IGRlZmF1bHRz IHRvIG51bCAobm90IGluY2x1ZGVkIGluIHRoZSBidW5kbGUpDQogKg0KICogQHJl dHVybg0KICogICAgICBBIHN0cmluZyBjb250YWluaW5nIHRoZSBzdGF0ZSBhbmQs IGlmIGl0IHdhcyBzcGVjaWZpZWQsIGl0J3MgdmFsdWUgZm9ybWF0dGVkIGFwcHJv cHJpYXRlbHkgZm9yIGluc2VydGlvbiBpbnRvDQogKiAgICAgIG92ZXJhbGwgc3Rh dGUgY29va2llDQogKi8NCmZ1bmN0aW9uIGJlYVBvcnRhbENsaWVudFN0YXRlTWFu YWdlckJ1bmRsZVN0YXRlKHN0YXRlLCB2YWx1ZSkNCnsNCiAgICByZXR1cm4gIlsi ICsgc3RhdGUgKyAodmFsdWUgPyB0aGlzLmVxdWFscyArIHZhbHVlIDogIiIpICsg Il0iOw0KfQ0K ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=util.js Content-Type: application/x-javascript; charset=UTF-8; name=util.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/js/util.js Content-Transfer-Encoding: Base64 DQpmdW5jdGlvbiBnZXRQYXJlbnRCeUNsYXNzTmFtZShlbGVtZW50LCBjbGFzc05h bWUpDQp7DQogICAgdmFyIHBhcmVudCA9IGVsZW1lbnQ7DQoNCiAgICBpZiAoY2xh c3NOYW1lKQ0KICAgIHsNCiAgICAgICAgd2hpbGUgKHBhcmVudCAmJiBwYXJlbnQu Y2xhc3NOYW1lICE9IGNsYXNzTmFtZSkNCiAgICAgICAgew0KICAgICAgICAgICAg cGFyZW50ID0gcGFyZW50LnBhcmVudE5vZGU7DQogICAgICAgIH0NCiAgICB9DQoN CiAgICByZXR1cm4gcGFyZW50Ow0KfQ0KDQpmdW5jdGlvbiBnZXRGaXJzdENoaWxk QnlDbGFzc1JlZ2V4KGVsZW1lbnQsIHRhZ05hbWUsIGNsYXNzUmVnZXgsIHN0b3BD bGFzc1JlZ2V4KQ0Kew0KICAgIHZhciBtYXRjaDsNCiAgICB2YXIgY2hpbGQgPSBl bGVtZW50LmZpcnN0Q2hpbGQ7DQoNCiAgICB3aGlsZSAoY2hpbGQgIT0gbnVsbCAm JiAoIWNoaWxkLmNsYXNzTmFtZSB8fCAhY2hpbGQuY2xhc3NOYW1lLm1hdGNoKHN0 b3BDbGFzc1JlZ2V4KSkpDQogICAgew0KICAgICAgICBpZiAoY2hpbGQudGFnTmFt ZSAmJiBjaGlsZC50YWdOYW1lID09IHRhZ05hbWUgJiYgY2hpbGQuY2xhc3NOYW1l ICYmIGNoaWxkLmNsYXNzTmFtZS5tYXRjaChjbGFzc1JlZ2V4KSkNCiAgICAgICAg ew0KICAgICAgICAgICAgbWF0Y2ggPSBjaGlsZDsNCiAgICAgICAgICAgIGJyZWFr Ow0KICAgICAgICB9DQogICAgICAgIGVsc2UNCiAgICAgICAgew0KICAgICAgICAg ICAgbWF0Y2ggPSBnZXRGaXJzdENoaWxkQnlDbGFzc1JlZ2V4KGNoaWxkLCB0YWdO YW1lLCBjbGFzc1JlZ2V4LCBzdG9wQ2xhc3NSZWdleCk7DQoNCiAgICAgICAgICAg IGlmIChtYXRjaCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBicmVh azsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIGNoaWxkID0g Y2hpbGQubmV4dFNpYmxpbmc7DQogICAgfQ0KDQogICAgcmV0dXJuIG1hdGNoOw0K fQ0KDQpmdW5jdGlvbiBnZXRDaGlsZHJlbkJ5Q2xhc3NSZWdleChyb290LCBjbGFz c1JlZ2V4ZXMsIHRhZ05hbWUsIG1hdGNoZXMpDQp7DQogICAgbWF0Y2hlcyA9ICht YXRjaGVzID8gbWF0Y2hlcyA6IG5ldyBBcnJheSgpKTsNCg0KICAgIGlmIChyb290 KQ0KICAgIHsNCiAgICAgICAgdmFyIGNoaWxkID0gcm9vdC5maXJzdENoaWxkOw0K DQogICAgICAgIHdoaWxlIChjaGlsZCkNCiAgICAgICAgew0KICAgICAgICAgICAg aWYgKCF0YWdOYW1lIHx8IGNoaWxkLnRhZ05hbWUgPT0gdGFnTmFtZSkNCiAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICBmb3IgKGluZGV4IGluIGNsYXNzUmVn ZXhlcykNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIGlm IChjaGlsZC5jbGFzc05hbWUgJiYgY2hpbGQuY2xhc3NOYW1lLm1hdGNoKGNsYXNz UmVnZXhlc1tpbmRleF0pKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICBtYXRjaGVzW21hdGNoZXMubGVuZ3RoXSA9IGNoaWxk Ow0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KICAg ICAgICAgICAgfQ0KDQogICAgICAgICAgICBnZXRDaGlsZHJlbkJ5Q2xhc3NSZWdl eChjaGlsZCwgY2xhc3NSZWdleGVzLCB0YWdOYW1lLCBtYXRjaGVzKTsNCiAgICAg ICAgICAgIGNoaWxkID0gY2hpbGQubmV4dFNpYmxpbmc7DQogICAgICAgIH0NCiAg ICB9DQoNCiAgICByZXR1cm4gbWF0Y2hlczsNCn0NCg0KZnVuY3Rpb24gYWRkRXZl bnRUb0VsZW1lbnQodGFyZ2V0LCBldmVudFR5cGUsIGZ1bmMsIHVzZUNhcHR1cmUp DQp7DQogICAgdmFyIHJlc3VsdCA9IGZhbHNlOw0KDQogICAgaWYgKHRhcmdldC5h ZGRFdmVudExpc3RlbmVyKQ0KICAgIHsNCiAgICAgICAgdGFyZ2V0LmFkZEV2ZW50 TGlzdGVuZXIoZXZlbnRUeXBlLCBmdW5jLCB1c2VDYXB0dXJlKTsNCiAgICAgICAg cmVzdWx0ID0gdHJ1ZTsNCiAgICB9DQogICAgZWxzZSBpZiAodGFyZ2V0LmF0dGFj aEV2ZW50KQ0KICAgIHsNCiAgICAgICAgcmVzdWx0ID0gdGFyZ2V0LmF0dGFjaEV2 ZW50KCJvbiIgKyBldmVudFR5cGUsIGZ1bmMpOw0KICAgIH0NCiAgICBlbHNlDQog ICAgew0KICAgICAgICBhbGVydCgiSGFuZGxlciBjb3VsZCBub3QgYmUgYXR0YWNo ZWQiKTsNCiAgICB9DQoNCiAgICByZXR1cm4gcmVzdWx0Ow0KfQ0KDQpmdW5jdGlv biBhZGRFdmVudFRvRWxlbWVudHModGFyZ2V0cywgZXZlbnRUeXBlLCBmdW5jLCB1 c2VDYXB0dXJlKQ0Kew0KICAgIHZhciByZXN1bHQgPSB0cnVlOw0KDQogICAgZm9y ICh2YXIgaSA9IDA7IGkgPCB0YXJnZXRzLmxlbmd0aDsgaSsrKQ0KICAgIHsNCiAg ICAgICAgcmVzdWx0ICY9IGFkZEV2ZW50VG9FbGVtZW50KHRhcmdldHNbaV0sIGV2 ZW50VHlwZSwgZnVuYywgdXNlQ2FwdHVyZSk7DQogICAgfQ0KDQogICAgcmV0dXJu IHJlc3VsdDsNCn0NCg0KZnVuY3Rpb24gcmVtb3ZlRXZlbnRGcm9tRWxlbWVudCh0 YXJnZXQsIGV2ZW50VHlwZSwgZnVuYywgdXNlQ2FwdHVyZSkNCnsNCiAgICB2YXIg cmVzdWx0ID0gZmFsc2U7DQoNCiAgICBpZiAodGFyZ2V0LnJlbW92ZUV2ZW50TGlz dGVuZXIpDQogICAgew0KICAgICAgICB0YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5l cihldmVudFR5cGUsIGZ1bmMsIHVzZUNhcHR1cmUpOw0KICAgICAgICByZXN1bHQg PSB0cnVlOw0KICAgIH0NCiAgICBlbHNlIGlmICh0YXJnZXQuZGV0YWNoRXZlbnQp DQogICAgew0KICAgICAgICByZXN1bHQgPSB0YXJnZXQuZGV0YWNoRXZlbnQoIm9u IiArIGV2ZW50VHlwZSwgZnVuYyk7DQogICAgfQ0KICAgIGVsc2UNCiAgICB7DQog ICAgICAgIHdpbmRvdy5hbGVydCgiSGFuZGxlciBjb3VsZCBub3QgYmUgcmVtb3Zl ZCIpOw0KICAgIH0NCg0KICAgIHJldHVybiByZXN1bHQ7DQp9DQoNCmZ1bmN0aW9u IHJlbW92ZUV2ZW50RnJvbUVsZW1lbnRzKHRhcmdldHMsIGV2ZW50VHlwZSwgZnVu YywgdXNlQ2FwdHVyZSkNCnsNCiAgICB2YXIgcmVzdWx0ID0gdHJ1ZTsNCg0KICAg IGZvciAodmFyIGkgPSAwOyBpIDwgdGFyZ2V0cy5sZW5ndGg7IGkrKykNCiAgICB7 DQogICAgICAgIHJlc3VsdCAmPSByZW1vdmVFdmVudEZyb21FbGVtZW50KHRhcmdl dHNbaV0sIGV2ZW50VHlwZSwgZnVuYywgdXNlQ2FwdHVyZSk7DQogICAgfQ0KDQog ICAgcmV0dXJuIHJlc3VsdDsNCn0NCg0KZnVuY3Rpb24gZ2V0RXZlbnQoZXZlbnQp DQp7DQogICAgdmFyIGV2dCA9IGV2ZW50Ow0KDQogICAgaWYgKCFldnQpDQogICAg ew0KICAgICAgICBldnQgPSB3aW5kb3cuZXZlbnQ7DQogICAgfQ0KDQogICAgcmV0 dXJuIGV2dDsNCn0NCg0KZnVuY3Rpb24gZ2V0RXZlbnRTb3VyY2UoZXZlbnQpDQp7 DQogICAgdmFyIHNvdXJjZTsNCg0KICAgIGlmIChldmVudCAmJiBldmVudC5zcmNF bGVtZW50KQ0KICAgIHsNCiAgICAgICAgc291cmNlID0gZXZlbnQuc3JjRWxlbWVu dDsNCiAgICB9DQogICAgZWxzZSBpZiAoZXZlbnQgJiYgZXZlbnQuY3VycmVudFRh cmdldCkNCiAgICB7DQogICAgICAgIHNvdXJjZSA9IGV2ZW50LmN1cnJlbnRUYXJn ZXQ7DQogICAgfQ0KICAgIGVsc2UNCiAgICB7DQogICAgICAgIHdpbmRvdy5hbGVy dCgiRXZlbnQgc291cmNlIG5vdCBmb3VuZCEiKTsNCiAgICB9DQoNCiAgICByZXR1 cm4gc291cmNlOw0KfQ0KDQpmdW5jdGlvbiBnZXRDbGlja2FibGVJbWFnZUV2ZW50 U291cmNlKHNvdXJjZSkNCnsNCiAgICAvLyBJZiBJRSwgdGhlIG9yaWdpbmFsIHNv dXJjZSB3aWxsIGJlIHRoZSBpbWFnZSBiZWluZyBjbGlja2VkIGluc3RlYWQgb2Yg dGhlIHBhcmVudCBlbGVtZW50IHRoYXQgZ2VuZXJhdGVkIHRoZSBldmVudA0KICAg IGlmIChzb3VyY2UgJiYgc291cmNlLnNyYykNCiAgICB7DQogICAgICAgIHNvdXJj ZSA9IHNvdXJjZS5wYXJlbnROb2RlOw0KICAgIH0NCg0KICAgIHJldHVybiBzb3Vy Y2U7DQp9DQoNCi8qKg0KICogQGRlcHJlY2F0ZWQNCiAqLw0KdmFyIGNvbnNvbGUg PSAoYmVhUG9ydGFsQ29uc29sZSA/IGJlYVBvcnRhbENvbnNvbGUgOiBuZXcgQ29u c29sZSgpKTsNCg0KLyoqDQogKiBAZGVwcmVjYXRlZA0KICovDQpmdW5jdGlvbiBD b25zb2xlKCkNCnsNCiAgICB0aGlzLmNhbnZhcyA9IG51bGw7DQogICAgdGhpcy5w cmludGxuID0gY29uc29sZVByaW50bG47DQogICAgdGhpcy5zaG93ID0gY29uc29s ZVNob3c7DQp9DQoNCi8qKg0KICogQGRlcHJlY2F0ZWQNCiAqLw0KZnVuY3Rpb24g Y29uc29sZVByaW50bG4ob2JqZWN0KQ0Kew0KICAgIGlmICghdGhpcy5jYW52YXMp DQogICAgew0KICAgICAgICB0aGlzLmNhbnZhcyA9IHdpbmRvdy5vcGVuKCJhYm91 dDpibGFuayIsICJDb25zb2xlIiwgInRvb2xiYXIgPSBubywgd2lkdGggPSA2NDAs IGhlaWdodCA9IDQ4MCwgZGlyZWN0b3JpZXMgPSBubywgc3RhdHVzID0gbm8sIHNj cm9sbGJhcnMgPSB5ZXMsIHJlc2l6ZSA9IG5vLCBtZW51YmFyID0gbm8iKTsNCiAg ICB9DQoNCiAgICB0aGlzLmNhbnZhcy5kb2N1bWVudC53cml0ZShvYmplY3QpOw0K ICAgIHRoaXMuY2FudmFzLmRvY3VtZW50LndyaXRlKCI8YnIvPiIpOw0KfQ0KDQov KioNCiAqIEBkZXByZWNhdGVkDQogKi8NCmZ1bmN0aW9uIGNvbnNvbGVTaG93KG9i amVjdCkNCnsNCiAgICB0aGlzLnByaW50bG4oIj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+ Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+ Pj4+Pj4+Pj4+Pj4+Iik7DQoNCiAgICBmb3IgKHByb3BlcnR5IGluIG9iamVjdCkN CiAgICB7DQogICAgICAgIHRoaXMucHJpbnRsbihwcm9wZXJ0eSArICIgPSAiICsg ZXZhbCgib2JqZWN0LiIgKyBwcm9wZXJ0eSkpOw0KICAgIH0NCg0KICAgIHRoaXMu cHJpbnRsbigiPDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8 PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDwiKTsNCn0N Cg0KZnVuY3Rpb24gbGltcGlhVHh0QnVzcXVlZGEoKSB7DQogIC8vaWYgKChkb2N1 bWVudC5nZXRFbGVtZW50QnlJZCgidGV4dG9CdXNxdWVkYSIpLnZhbHVlID09ICJJ bnRyb2R1emNhIHBhbGFicmEgbyBmcmFzZSIpIHx8DQogICAgLy8gKGRvY3VtZW50 LmdldEVsZW1lbnRCeUlkKCJ0ZXh0b0J1c3F1ZWRhIikudmFsdWUgPT0gIkludHJv ZHVjZSB3b3JkIG9yIHBocmFzZSIpIHx8DQogICAgLy8gKGRvY3VtZW50LmdldEVs ZW1lbnRCeUlkKCJ0ZXh0b0J1c3F1ZWRhIikudmFsdWUgPT0gIkludHJvZHVpc2V6 IHVuIG1vdCBvdSB1bmUgcGhyYXNlIikgfHwNCiAgICAgLy8oZG9jdW1lbnQuZ2V0 RWxlbWVudEJ5SWQoInRleHRvQnVzcXVlZGEiKS52YWx1ZSAhPSAiIikpDQogICAg ICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGV4dG9CdXNxdWVkYSIpLnZh bHVlID0gIiI7DQp9DQoNCmZ1bmN0aW9uIGxpbXBpYVR4dEJ1c3F1ZWRhUnYoKSB7 DQogIC8vaWYgKChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGV4dG9CdXNxdWVk YSIpLnZhbHVlID09ICJJbnRyb2R1emNhIHBhbGFicmEgbyBmcmFzZSIpIHx8DQog ICAgLy8gKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXh0b0J1c3F1ZWRhIiku dmFsdWUgPT0gIkludHJvZHVjZSB3b3JkIG9yIHBocmFzZSIpIHx8DQogICAgLy8g KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXh0b0J1c3F1ZWRhIikudmFsdWUg PT0gIkludHJvZHVpc2V6IHVuIG1vdCBvdSB1bmUgcGhyYXNlIikgfHwNCiAgICAg Ly8oZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRleHRvQnVzcXVlZGEiKS52YWx1 ZSAhPSAiIikpDQogICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGV4 dG9CdXNxdWVkYVJ2IikudmFsdWUgPSAiIjsNCn0NCg0KZnVuY3Rpb24gbGltcGlh QXV0b3JCdXNxdWVkYSgpIHsNCiAgLy9pZiAoKGRvY3VtZW50LmdldEVsZW1lbnRC eUlkKCJhdXRvckJ1c3F1ZWRhIikudmFsdWUgPT0gIkludHJvZHV6Y2EgYXV0b3Ii KSB8fA0KICAgLy8gIChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0b3JCdXNx dWVkYSIpLnZhbHVlID09ICJJbnRyb2R1Y2UgYXV0aG9yIikgfHwNCiAgIC8vICAo ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG9yQnVzcXVlZGEiKS52YWx1ZSA9 PSAiSW50cm9kdWlzZXogbCdhdXRldXIiKSB8fA0KICAgIC8vIChkb2N1bWVudC5n ZXRFbGVtZW50QnlJZCgiYXV0b3JCdXNxdWVkYSIpLnZhbHVlICE9ICIiKSkNCiAg ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvckJ1c3F1ZWRhIiku dmFsdWUgPSAiIjsNCn0NCg0KDQpmdW5jdGlvbiBsaW1waWFCdXNjYWRvcigpIHsN CiAgaWYgKChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgia2V5d29yZFNlYXJjaCIp LnZhbHVlID09ICJJbnRyb2R1emNhIHBhbGFicmEgbyBmcmFzZSIpIHx8DQogICAg IChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgia2V5d29yZFNlYXJjaCIpLnZhbHVl ID09ICJJbnRyb2R1Y2Ugd29yZCBvciBwaHJhc2UiKSB8fA0KICAgICAoZG9jdW1l bnQuZ2V0RWxlbWVudEJ5SWQoImtleXdvcmRTZWFyY2giKS52YWx1ZSA9PSAiSW50 cm9kdWlzZXogdW4gbW90IG91IHVuZSBwaHJhc2UiKSkNCiAgICAgICAgIGRvY3Vt ZW50LmdldEVsZW1lbnRCeUlkKCJrZXl3b3JkU2VhcmNoIikudmFsdWUgPSAiIjsN Cn0NCg0KZnVuY3Rpb24gbHBkYXRhKCl7DQoJICAvL2RvY3VtZW50LmZvcm1zWzBd LmVsZW1lbnRzWzJdLnZhbHVlID0gIiI7DQoJICB2YXIga2V5PXdpbmRvdy5ldmVu dC5rZXlDb2RlOy8vY29kaWdvIGRlIHRlY2xhLiANCgkgIAlpZiAoKGtleSA8IDEz IHx8IGtleSA+IDEzKSAmJiAoa2V5IDwgMzIgfHwga2V5ID4gMzIpICYmIChrZXkg PCA0NCB8fCBrZXkgPiA0NCkgJiYgKGtleSA8IDQ1IHx8IGtleSA+IDQ1KSAmJiAo a2V5IDwgNDYgfHwga2V5ID4gNDYpICYmIChrZXkgPCA0OCB8fCBrZXkgPiA1Nykg JiYgKGtleSA8PSA2NCB8fCBrZXkgPiA5MCkgJiYgKGtleSA8IDk3IHx8IGtleSA+ IDEyMikgJiYgKGtleSA8IDIwOSB8fCBrZXkgPiAyMDkpICYmIChrZXkgPCAyMjUg fHwga2V5ID4gMjI1KSAmJiAoa2V5IDwgMjMzIHx8IGtleSA+IDIzMykgJiYgKGtl eSA8IDIzNyB8fCBrZXkgPiAyMzcpICYmIChrZXkgPCAyNDEgfHwga2V5ID4gMjQx KSAmJiAoa2V5IDwgMjQzIHx8IGtleSA+IDI0MykgJiYgKGtleSA8IDI1MCB8fCBr ZXkgPiAyNTApKXsvL3NpIG5vIGVzIG51bWVybyAgDQogICAgICAgICAJIHdpbmRv dy5ldmVudC5rZXlDb2RlPTA7Ly9hbnVsYSBsYSBlbnRyYWRhIGRlIHRleHRvLiAN Cgl9DQp9IA0KCSANCg== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=skin.js Content-Type: application/x-javascript; charset=UTF-8; name=skin.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/js/skin.js Content-Transfer-Encoding: Base64 DQpmdW5jdGlvbiBpbml0U2tpbigpDQp7DQogICAgaW5pdER5bmFtaWNNZW51cygp Ow0KICAgIGluaXRSb2xsb3Zlck1lbnVzKCk7DQogICAgaW5pdFBvcnRsZXREZWxl dGVCdXR0b25zKCk7DQogICAgLy8gU2VlIHRoZSBjb21tZW50cyBpbiBmbG9hdC5q cyBhYm91dCB0aGlzIGZ1bmN0aW9uLi4uDQogICAgLy9pbml0UG9ydGxldEZsb2F0 QnV0dG9ucygpOw0KfQ0K ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=delete.js Content-Type: application/x-javascript; charset=UTF-8; name=delete.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/js/delete.js Content-Transfer-Encoding: Base64 ZnVuY3Rpb24gc2hvd0RpYWxvZ0JveE5TKGV2dCkNCnsNCiAgICB2YXIgbmFtZSA9 IGNvbmZpcm0oIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBw b3J0bGV0PyIpDQogICAgaWYobmFtZSA9PSB0cnVlKQ0KICAgIHsNCiAgICAgICAg dmFyIHNvdXJjZSA9IGdldEV2ZW50U291cmNlKGV2dCk7DQogICAgICAgIHZhciB1 cmwgPSBzb3VyY2UuaHJlZjsNCiAgICAgICAgc291cmNlLmhyZWYgPSB1cmwrIiZf X2RlbGV0ZVBlcm1hbmVudGx5PWZhbHNlIjsNCiAgICAgICAgcmV0dXJuIHRydWU7 DQogICAgfQ0KICAgIHJldHVybiBmYWxzZTsNCn0NCg0KZnVuY3Rpb24gc2hvd011 bHRpcGxlQ2hvaWNlRGlhbG9nQm94TlMoZXZ0KQ0Kew0KICAgIHZhciBuYW1lID0g Y29uZmlybSgiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIHBv cnRsZXQ/IikNCiAgICB2YXIgbmFtZTEgPSBmYWxzZTsNCiAgICBpZihuYW1lID09 IHRydWUpDQogICAgew0KICAgICAgICB2YXIgc291cmNlID0gZ2V0RXZlbnRTb3Vy Y2UoZXZ0KTsNCiAgICAgICAgdmFyIHVybCA9IHNvdXJjZS5ocmVmOw0KICAgICAg ICBuYW1lMSA9IGNvbmZpcm0oIlByZXNzIE9LIHRvIGRlbGV0ZSBwZXJtYW5lbnRs eSBcbm9yIENhbmNlbCB0byBvbmx5IGRlbGV0ZSBmcm9tIHRoaXMgc2Vzc2lvbi5c biIpOw0KICAgICAgICBpZihuYW1lMSA9PSB0cnVlKQ0KICAgICAgICB7DQogICAg ICAgICAgICBzb3VyY2UuaHJlZiA9IHVybCsiJl9fZGVsZXRlUGVybWFuZW50bHk9 dHJ1ZSI7DQogICAgICAgIH0NCiAgICAgICAgZWxzZQ0KICAgICAgICB7DQogICAg ICAgICAgICBzb3VyY2UuaHJlZiA9IHVybCsiJl9fZGVsZXRlUGVybWFuZW50bHk9 ZmFsc2UiOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiB0cnVlOw0KICAgIH0N CiAgICByZXR1cm4gZmFsc2U7DQp9DQoNCg0KZnVuY3Rpb24gc2hvd0RpYWxvZ0Jv eElFKCkNCnsNCiAgICB2YXIgbmFtZSA9IGNvbmZpcm0oIkFyZSB5b3Ugc3VyZSB5 b3Ugd2FudCB0byBkZWxldGUgdGhpcyBwb3J0bGV0PyIpDQogICAgaWYobmFtZSA9 PSB0cnVlKQ0KICAgIHsNCiAgICAgICAgdmFyIHNvdXJjZTsNCiAgICAgICAgdmFy IGV2ZW50ID0gd2luZG93LmV2ZW50Ow0KICAgICAgICBpZihldmVudCAhPSBudWxs KQ0KICAgICAgICB7DQogICAgICAgICAgICBzb3VyY2UgPSBldmVudC5zcmNFbGVt ZW50Ow0KICAgICAgICB9DQogICAgICAgIHZhciBwYXJlbnQgPSBzb3VyY2UucGFy ZW50Tm9kZTsNCiAgICAgICAgdmFyIHVybCA9IHBhcmVudC5ocmVmOw0KICAgICAg ICBwYXJlbnQuaHJlZiA9IHVybCsiJl9fZGVsZXRlUGVybWFuZW50bHk9ZmFsc2Ui Ow0KICAgIH0NCiAgICBlbHNlDQogICAgew0KICAgICAgICB2YXIgZXZlbnQgPSB3 aW5kb3cuZXZlbnQ7DQogICAgICAgIGlmKGV2ZW50ICE9IG51bGwpDQogICAgICAg IHsNCiAgICAgICAgICAgIGV2ZW50LnJldHVyblZhbHVlID0gZmFsc2U7DQogICAg ICAgIH0NCiAgICB9DQp9DQoNCmZ1bmN0aW9uIHNob3dNdWx0aXBsZUNob2ljZURp YWxvZ0JveElFKCkNCnsNCiAgICB2YXIgbmFtZSA9IGNvbmZpcm0oIkFyZSB5b3Ug c3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBwb3J0bGV0PyIpDQogICAgdmFy IG5hbWUxID0gZmFsc2U7DQogICAgaWYobmFtZSA9PSB0cnVlKQ0KICAgIHsNCiAg ICAgICAgdmFyIHNvdXJjZTsNCiAgICAgICAgdmFyIGV2ZW50ID0gd2luZG93LmV2 ZW50Ow0KICAgICAgICBpZihldmVudCAhPSBudWxsKQ0KICAgICAgICB7DQogICAg ICAgICAgICBzb3VyY2UgPSBldmVudC5zcmNFbGVtZW50Ow0KICAgICAgICB9DQog ICAgICAgIHZhciBwYXJlbnQgPSBzb3VyY2UucGFyZW50Tm9kZTsNCiAgICAgICAg dmFyIHVybCA9IHBhcmVudC5ocmVmOw0KICAgICAgICBuYW1lMSA9IGNvbmZpcm0o IlByZXNzIE9LIHRvIGRlbGV0ZSBwZXJtYW5lbnRseSBcbm9yIENhbmNlbCB0byBv bmx5IGRlbGV0ZSBmcm9tIHRoaXMgc2Vzc2lvbi5cbiIpOw0KICAgICAgICBpZihu YW1lMSA9PSB0cnVlKQ0KICAgICAgICB7DQogICAgICAgICAgICBwYXJlbnQuaHJl ZiA9IHVybCsiJl9fZGVsZXRlUGVybWFuZW50bHk9dHJ1ZSI7DQogICAgICAgIH0N CiAgICAgICAgZWxzZQ0KICAgICAgICB7DQogICAgICAgICAgICBwYXJlbnQuaHJl ZiA9IHVybCsiJl9fZGVsZXRlUGVybWFuZW50bHk9ZmFsc2UiOw0KICAgICAgICB9 DQogICAgfQ0KICAgIGVsc2UNCiAgICB7DQogICAgICAgIHZhciBldmVudCA9IHdp bmRvdy5ldmVudDsNCiAgICAgICAgaWYoZXZlbnQgIT0gbnVsbCkNCiAgICAgICAg ew0KICAgICAgICAgICAgZXZlbnQucmV0dXJuVmFsdWUgPSBmYWxzZTsNCiAgICAg ICAgfQ0KICAgIH0NCn0NCg0KZnVuY3Rpb24gZGV0ZWN0TmV0c2NhcGUoKQ0Kew0K ICAgIHZhciBuPW5hdmlnYXRvci5hcHBOYW1lDQogICAgaWYobiA9PSAiTmV0c2Nh cGUiKQ0KICAgIHsNCiAgICAgICAgcmV0dXJuIHRydWU7DQogICAgfQ0KICAgIGVs c2UNCiAgICB7DQogICAgICAgIHJldHVybiBmYWxzZTsNCiAgICB9DQp9DQoNCmZ1 bmN0aW9uIGluaXRQb3J0bGV0RGVsZXRlQnV0dG9ucygpDQp7DQogICAgdmFyIHBv cnRsZXREZWxldGVCdXR0b25zU3Bhbm5lZCA9IGdldFNwYW5uZWREZWxldGVCdXR0 b25zKCk7DQogICAgdmFyIHBvcnRsZXREZWxldGVCdXR0b25zTm9uU3Bhbm5lZCA9 IGdldE5vblNwYW5uZWREZWxldGVCdXR0b25zKCk7DQogICAgaWYoZGV0ZWN0TmV0 c2NhcGUoKSA9PSB0cnVlKQ0KICAgIHsNCiAgICAgICAgZm9yKHZhciBpID0gMDsg aSA8IHBvcnRsZXREZWxldGVCdXR0b25zU3Bhbm5lZC5sZW5ndGg7IGkrKykNCiAg ICAgICAgew0KICAgICAgICAgICAgcG9ydGxldERlbGV0ZUJ1dHRvbnNTcGFubmVk W2ldLm9uY2xpY2sgPSBzaG93TXVsdGlwbGVDaG9pY2VEaWFsb2dCb3hOUzsNCiAg ICAgICAgfQ0KICAgICAgICBmb3IodmFyIGkgPSAwOyBpIDwgcG9ydGxldERlbGV0 ZUJ1dHRvbnNOb25TcGFubmVkLmxlbmd0aDsgaSsrKQ0KICAgICAgICB7DQogICAg ICAgICAgICBwb3J0bGV0RGVsZXRlQnV0dG9uc05vblNwYW5uZWRbaV0ub25jbGlj ayA9IHNob3dEaWFsb2dCb3hOUzsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBlbHNl DQogICAgew0KICAgICAgICBmb3IodmFyIGkgPSAwOyBpIDwgcG9ydGxldERlbGV0 ZUJ1dHRvbnNTcGFubmVkLmxlbmd0aDsgaSsrKQ0KICAgICAgICB7DQogICAgICAg ICAgICBwb3J0bGV0RGVsZXRlQnV0dG9uc1NwYW5uZWRbaV0ub25jbGljayA9IHNo b3dNdWx0aXBsZUNob2ljZURpYWxvZ0JveElFOw0KICAgICAgICB9DQogICAgICAg IGZvcih2YXIgaSA9IDA7IGkgPCBwb3J0bGV0RGVsZXRlQnV0dG9uc05vblNwYW5u ZWQubGVuZ3RoOyBpKyspDQogICAgICAgIHsNCiAgICAgICAgICAgIHBvcnRsZXRE ZWxldGVCdXR0b25zTm9uU3Bhbm5lZFtpXS5vbmNsaWNrID0gc2hvd0RpYWxvZ0Jv eElFOw0KICAgICAgICB9DQogICAgfQ0KfQ0KDQpmdW5jdGlvbiBnZXRTcGFubmVk RGVsZXRlQnV0dG9ucygpDQp7DQogICAgdmFyIGFuY2hvcnMgPSBkb2N1bWVudC5n ZXRFbGVtZW50c0J5VGFnTmFtZSgiYSIpOw0KICAgIHZhciBzcGFubmVkRGVsZXRl cyA9IG5ldyBBcnJheSgwKTsNCiAgICB2YXIgaiA9IC0xOw0KICAgIGZvciAodmFy IGkgPSAwOyBpIDwgYW5jaG9ycy5sZW5ndGg7IGkrKykNCiAgICB7DQogICAgICAg IHZhciBfY2xhc3NOYW1lID0gYW5jaG9yc1tpXS5jbGFzc05hbWU7DQogICAgICAg IGlmKChfY2xhc3NOYW1lID09ICJiZWEtcG9ydGFsLWJ1dHRvbi1kZWxldGUiKSAm Jg0KICAgICAgICAgICAoYW5jaG9yc1tpXS5wYXJlbnROb2RlLnRhZ05hbWUgPT0g InNwYW4iIHx8IGFuY2hvcnNbaV0ucGFyZW50Tm9kZS50YWdOYW1lID09ICJTUEFO IikpDQogICAgICAgIHsNCiAgICAgICAgICAgIGorKzsNCiAgICAgICAgICAgIHNw YW5uZWREZWxldGVzW2pdID0gYW5jaG9yc1tpXTsNCiAgICAgICAgfQ0KICAgIH0N CiAgICByZXR1cm4gc3Bhbm5lZERlbGV0ZXM7DQp9DQoNCmZ1bmN0aW9uIGdldE5v blNwYW5uZWREZWxldGVCdXR0b25zKCkNCnsNCiAgICB2YXIgYW5jaG9ycyA9IGRv Y3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJhIik7DQogICAgdmFyIG5vblNw YW5uZWREZWxldGVzID0gbmV3IEFycmF5KDApOw0KICAgIHZhciBqID0gLTE7DQog ICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhbmNob3JzLmxlbmd0aDsgaSsrKQ0KICAg IHsNCiAgICAgICAgdmFyIF9jbGFzc05hbWUgPSBhbmNob3JzW2ldLmNsYXNzTmFt ZTsNCiAgICAgICAgaWYoKF9jbGFzc05hbWUgPT0gImJlYS1wb3J0YWwtYnV0dG9u LWRlbGV0ZSIpICYmDQogICAgICAgICAgIChhbmNob3JzW2ldLnBhcmVudE5vZGUu dGFnTmFtZSAhPSAic3BhbiIgJiYgYW5jaG9yc1tpXS5wYXJlbnROb2RlLnRhZ05h bWUgIT0gIlNQQU4iKSkNCiAgICAgICAgew0KICAgICAgICAgICAgaisrOw0KICAg ICAgICAgICAgbm9uU3Bhbm5lZERlbGV0ZXNbal0gPSBhbmNob3JzW2ldOw0KICAg ICAgICB9DQogICAgfQ0KICAgIHJldHVybiBub25TcGFubmVkRGVsZXRlczsNCn0N Cg== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=float.js Content-Type: application/x-javascript; charset=UTF-8; name=float.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/js/float.js Content-Transfer-Encoding: Base64 LyoNCiAqIFRoaXMgZmlsZSBpbGx1c3RyYXRlcyBvbmUgd2F5IHRvIGN1c3RvbWl6 ZSBmbG9hdGluZyBwb3B1cCBwb3J0bGV0cy4gIEhvd2V2ZXIsIGl0IGlzIG5vdCBl bmFibGVkIGJ5IGRlZmF1bHQuDQogKiBUbyBlbmFibGUgdGhpcyBqYXZhc2NyaXB0 IGZ1bmN0aW9uYWxpdHksIHVuY29tbWVudCB0aGUgY2FsbCB0byAiaW5pdFBvcnRs ZXRGbG9hdEJ1dHRvbnMoKSIgaW4gc2tpbi5qcy4NCiAqLw0KDQpmdW5jdGlvbiBp bml0UG9ydGxldEZsb2F0QnV0dG9ucygpDQp7DQogICAgdmFyIGxpbmtzID0gZG9j dW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImEiKTsNCg0KICAgIGZvciAodmFy IGkgPSAwOyBpIDwgbGlua3MubGVuZ3RoOyBpKyspDQogICAgew0KICAgICAgICBp ZiAobGlua3NbaV0uY2xhc3NOYW1lICYmIGxpbmtzW2ldLmNsYXNzTmFtZSA9PSAi YmVhLXBvcnRhbC1idXR0b24tZmxvYXQiKQ0KICAgICAgICB7DQogICAgICAgICAg ICBpbml0UG9ydGxldEZsb2F0QnV0dG9uKGxpbmtzW2ldKTsNCiAgICAgICAgfQ0K ICAgIH0NCn0NCg0KZnVuY3Rpb24gaW5pdFBvcnRsZXRGbG9hdEJ1dHRvbihsaW5r KQ0Kew0KICAgIGxpbmsub25jbGljayA9IGZsb2F0UG9ydGxldDsNCn0NCg0KZnVu Y3Rpb24gZmxvYXRQb3J0bGV0KGV2ZW50KQ0Kew0KICAgIHZhciBocmVmID0gZ2V0 RXZlbnRBbmNob3JIcmVmKGdldEV2ZW50KGV2ZW50KSk7DQogICAgdmFyIHRhcmdl dCA9IGdldEV2ZW50QW5jaG9yVGFyZ2V0KGdldEV2ZW50KGV2ZW50KSk7DQogICAg Ly8gVGhpcyBpcyB0aGUgaW50ZXJlc3RpbmcgbGluZSBmb3IgY3VzdG9taXphdGlv biBwdXJwb3NlczoNCiAgICB3aW5kb3cub3BlbihocmVmLCB0YXJnZXQsICJ0b29s YmFyID0gbm8sIHdpZHRoID0gMzIwLCBoZWlnaHQgPSAyNDAsIGRpcmVjdG9yaWVz ID0gbm8sIHN0YXR1cyA9IG5vLCBzY3JvbGxiYXJzID0geWVzLCByZXNpemUgPSB5 ZXMsIG1lbnViYXIgPSBubyIpOw0KICAgIC8vIFJldHVybmluZyBmYWxzZSBrZWVw cyB0aGUgYnJvd3NlciBmcm9tIHN1Ym1pdHRpbmcgdGhpcyBidXR0b24gY2xpY2sg dG8gdGhlIHNlcnZlci4NCiAgICByZXR1cm4gZmFsc2U7DQp9DQoNCmZ1bmN0aW9u IGdldEV2ZW50QW5jaG9ySHJlZihldmVudCkNCnsNCiAgICB2YXIgc291cmNlID0g Z2V0RXZlbnRTb3VyY2UoZXZlbnQpOw0KICAgIC8vIENvcnJlY3Qgc291cmNlIGZv ciBJRQ0KICAgIHNvdXJjZSA9IGdldENsaWNrYWJsZUltYWdlRXZlbnRTb3VyY2Uo c291cmNlKTsNCiAgICByZXR1cm4gKHNvdXJjZSAmJiBzb3VyY2UuaHJlZiA/IHNv dXJjZS5ocmVmIDogImFib3V0OmJsYW5rIik7DQp9DQoNCmZ1bmN0aW9uIGdldEV2 ZW50QW5jaG9yVGFyZ2V0KGV2ZW50KQ0Kew0KICAgIHZhciBzb3VyY2UgPSBnZXRF dmVudFNvdXJjZShldmVudCk7DQogICAgLy8gQ29ycmVjdCBzb3VyY2UgZm9yIElF DQogICAgc291cmNlID0gZ2V0Q2xpY2thYmxlSW1hZ2VFdmVudFNvdXJjZShzb3Vy Y2UpOw0KICAgIHJldHVybiAoc291cmNlICYmIHNvdXJjZS50YXJnZXQgPyBzb3Vy Y2UudGFyZ2V0IDogIl9ibGFuayIpOw0KfQ0K ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=menu.js Content-Type: application/x-javascript; charset=UTF-8; name=menu.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/js/menu.js Content-Transfer-Encoding: Base64 DQovLyB0cmFwcGluZyB0aGluZ3MNCnZhciBjbV9vRCA9IG5ldyBBcnJheSgpOw0K dmFyIGNtX2xPID0gbmV3IEFycmF5KCk7DQoNCi8vIGRlZmluZSBjb25zdGFudHMN CnZhciBDTV9FWFBBTkRfTEVGVCA9IDA7DQp2YXIgQ01fRVhQQU5EX0RPV04gPSAx Ow0KdmFyIENNX0VYUEFORF9SSUdIVCA9IDI7DQp2YXIgQ01fRVhQQU5EX1VQID0g NDsJLy8gbG9vaywgaWYgdGhleSB3YW50IHJpZ2h0LCB0aGV5J2xsIHdhbnQgdXAg YXMgd2VsbA0KDQp2YXIgQ01fUE9TSVRJT05fTk9ORSA9IDA7CS8vIGRvbid0IGFy cmFuZ2UNCnZhciBDTV9QT1NJVElPTl9IT1JJWiA9IDE7CS8vIGFycmFuZ2UgaG9y aXpvbnRhbGx5DQp2YXIgQ01fUE9TSVRJT05fVkVSVCA9IDI7CS8vIGFycmFuZ2Ug dmVydGlhbGx5DQoNCnZhciBDTV9MQVRFTkNZID0gMzAwOwkJLy8gbWVudSBsYXRl bmN5IGluIG1pbGxpc2Vjb25kcw0KDQovKioNCiAqIEluaXRpYWxpc2VzIHRoZSBk cm9wZG93biBtZW51cy4uLiBnZW5lcmFsbHkgY2FsbGVkIG9uIGRvY3VtZW50IGxv YWQuDQogKg0KICogQHBhcmFtCWVsaWQJdGhlIElEIG9mIHRoZSByb290IFVMIG9i amVjdC4uLg0KICovDQpmdW5jdGlvbiBtZW51aW5pY2lvdWwoKXsNCnRleHQxID0g Jzx1bCBpZD0ibWFpbk1lbnUiPic7DQoJCWRvY3VtZW50LndyaXRlKHRleHQxKTsN Cn0NCmZ1bmN0aW9uIG1lbnVmaW51bCgpew0KdGV4dDIgPSAiPC91bD4iOw0KCQlk b2N1bWVudC53cml0ZSh0ZXh0Mik7DQp9DQpmdW5jdGlvbiBjbV9pbml0IChlbGlk KQ0Kew0KIA0KCXZhciBlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGVsaWQp Ow0KCWlmIChudWxsID09IGVsKQ0KCQlyZXR1cm47CQkvLyBkcm9wIG91dA0KCV9j bV9wVShlbCwgZmFsc2UsIDApOw0KCWV4dGVybmFsTGlua3MoKTsNCgkvL2ZpeE9i amVjdCgpOw0KfQ0KDQovKioNCiAqIFBvc2l0aW9ucyBhbmQgZG9lcyBvdGhlciB2 YXJpb3VzIHN0dWZmIHRvIGEgVUwgb2JqZWN0Lg0KICoNCiAqIEBwYXJhbQllbAkJ dGhlIFVMIGVsZW1lbnQgdG8gcHJvY2Vzcw0KICogQHBhcmFtCWhpZGUJd2hldGhl ciBvciBub3Qgd2Ugd2FudCB0byBoaWRlIHRoZSBVTCBvbmNlIHdlJ3JlIGZpbmlz aGVkDQogKiBAcGFyYW0JbHYJCXRoZSBsZXZlbCBvZiB0aGUgVUwNCiAqLw0KZnVu Y3Rpb24gX2NtX3BVKGVsLCBoaWRlLCBsdikNCnsNCgkvLyBtYWtlIHRoZW0gdmlz aWJsZQ0KCWVsLnN0eWxlLmRpc3BsYXkgPSAiYmxvY2siOw0KCQ0KCS8vIGFycmF5 IHN0dWZmZXJ5DQoJY21fb0RbbHZdID0gbnVsbDsNCgljbV9sT1tsdl0gPSBudWxs Ow0KCQ0KCQ0KCS8vIGZpcnN0bHksIHdoaWNoIHdheSBhcmUgd2UgYnVpbGRpbmcg dGhpcyBtZW51Pw0KCXZhciBvciA9IENNX1BPU0lUSU9OX1ZFUlQ7DQoJaWYgKGVs LmNsYXNzTmFtZS5pbmRleE9mKCJjbV9wb3NIb3JpeiIpICE9IC0xKQ0KCQlvciA9 IENNX1BPU0lUSU9OX0hPUklaOw0KCWVsc2UgaWYgKGVsLmNsYXNzTmFtZS5pbmRl eE9mKCJjbV9wb3NOb25lIikgIT0gLTEpDQoJCW9yID0gQ01fUE9TSVRJT05fTk9O RTsNCgkNCgkvLyB3aGljaCB3YXkgYXJlIGNoaWxkcmVuIGRyb3BwaW5nIG9mZiBp dD8NCgl2YXIgZXggPSBDTV9FWFBBTkRfTEVGVDsNCglpZiAoZWwuY2xhc3NOYW1l LmluZGV4T2YoImNtX2V4cERvd24iKSAhPSAtMSkNCgkJZXggPSBDTV9FWFBBTkRf RE9XTjsNCgllbHNlIGlmIChlbC5jbGFzc05hbWUuaW5kZXhPZigiY21fZXhwUmln aHQiKSAhPSAtMSkNCgkJZXggPSBDTV9FWFBBTkRfUklHSFQ7DQoJZWxzZSBpZiAo ZWwuY2xhc3NOYW1lLmluZGV4T2YoImNtX2V4cFVwIikgIT0gLTEpDQoJCWV4ID0g Q01fRVhQQU5EX1VQOw0KCQ0KCS8vIG5vdywgd2UgdG9kZGxlIG9mZiB0aHJvdWdo IGNoaWxkIGVsZW1lbnRzIGJlY2F1c2Ugd2UncmUgY29vbCBsaWtlIHRoYXQNCgl2 YXIgY2hpbGRFbCA9IGVsLmZpcnN0Q2hpbGQ7DQoJd2hpbGUgKGNoaWxkRWwgIT0g bnVsbCkNCgl7DQoJCWlmIChjaGlsZEVsLm5vZGVOYW1lID09ICJMSSIpDQoJCQlf Y21fcEwoY2hpbGRFbCwgb3IsIGV4LCBsdik7CQkNCgkJY2hpbGRFbCA9IGNoaWxk RWwubmV4dFNpYmxpbmc7CQ0KCX0NCglpZiAoaGlkZSkNCgkJZWwuc3R5bGUudmlz aWJpbGl0eSA9ICJoaWRkZW4iOw0KfQ0KDQovKioNCiAqIFByb2Nlc3NlcyBhbiBM SSBub2RlLiBUaGlzIGRvZXMgYWxpZ25tZW50IGFuZCBldmVudCBoYW5kbGVyIHN0 dWZmLg0KICoNCiAqIEBwYXJhbQllbAl0aGUgTEkgZWxlbWVudA0KICogQHBhcmFt CW9yCXRoZSBvcmllbnRhdGlvbiB3ZSdyZSB1c2luZw0KICogQHBhcmFtCWV4CXdo aWNoIHdheSBjaGlsZHJlbiBhcmUgYmVpbmcgZXhwYW5kZWQuLi4NCiAqIEBwYXJh bQlsdglob3cgZmFyIGRvd24gdGhlIG1lbnUgc3RydWN0dXJlIHdlIGFyZQ0KICov DQpmdW5jdGlvbiBfY21fcEwgKGVsLCBvciwgZXgsIGx2KQ0Kew0KCS8vIGlmIHdl IGhhdmUgYW55IGNoaWxkIFVMcy4uLg0KCXZhciB1bHMgPSBlbC5nZXRFbGVtZW50 c0J5VGFnTmFtZSgidWwiKTsNCglpZiAodWxzLmxlbmd0aCA9PSAwKQ0KCQlyZXR1 cm47IC8vIG5vLCBzbyBkcm9wIG91dC4NCgkNCgkvLyB5ZXMsIHNvIGFkZCBvdXJz ZWx2ZXMgc29tZSBraW5kIG9mIGZ1bmtpbmVzcw0KCXZhciB0aGVVTCA9IHVsc1sw XTsNCgllbC5vbm1vdXNlb3ZlciA9IGZ1bmN0aW9uICgpIHsgX2NtX2RPTyh0aGVV TCwgbHYsIHRydWUpOyB9DQoJZWwub25tb3VzZW91dCAgPSBmdW5jdGlvbiAoKSB7 IF9jbV9kT08odGhlVUwsIGx2LCBmYWxzZSk7IH0NCgllbC5jbGFzc05hbWUgKz0g IiBjbV9oYXNTdWJNZW51IjsNCgkNCgkvLyBtb3ZlIHRoZSBVTC4uLg0KCS8vIHN0 ZXAgb25lLCB3aGVyZSBhcmUgd2U/DQoJdmFyIHhQb3MgPSAwOw0KCXZhciB5UG9z ID0gMDsNCgl2YXIgeERpbSA9IGVsLnNjcm9sbFdpZHRoOw0KCXZhciB5RGltID0g ZWwuc2Nyb2xsSGVpZ2h0Ow0KCQ0KCS8vIG1vdmFnZQ0KCXN3aXRjaCAoZXgpDQoJ ew0KCQljYXNlIENNX0VYUEFORF9MRUZUOg0KCQkJeFBvcyArPSB4RGltOw0KCQkJ YnJlYWs7DQoJCWNhc2UgQ01fRVhQQU5EX1JJR0hUOg0KCQkJeFBvcyAtPSAoeERp bSk7DQoJCQlicmVhazsNCgkJY2FzZSBDTV9FWFBBTkRfRE9XTjoNCgkJCXlQb3Mg Kz0geURpbTsNCgkJCWJyZWFrOw0KCQljYXNlIENNX0VYUEFORF9VUDoNCgkJCS8v IG5vdCBzdXBwb3J0ZWQgeWV0IDopDQoJCQlicmVhazsNCgl9DQoJdGhlVUwuc3R5 bGUubGVmdCA9IHhQb3MrInB4IjsNCgl0aGVVTC5zdHlsZS50b3AgPSB5UG9zKyJw eCI7DQoJCQ0KCS8vIHJlY3Vyc2UNCglfY21fcFUodGhlVUwsIHRydWUsIGx2KzEp Ow0KfQ0KDQovKioNCiAqIEV2ZW50LWhhbmRsaW5nIGNsYXNzIC0gZGVsZWdhdGVz IHRvIF9jbV9zSC4NCiAqDQogKiBAcGFyYW0JZWwJdGhlIFVMIGVsZW1lbnQgdG8g c2hvdy9oaWRlDQogKiBAcGFyYW0JbHYJdGhlIGRlcHRoIG9mIHRoZSBVTCBlbGVt ZW50DQogKiBAcGFyYW0Jc2gJd2hldGhlciB0byBzaG93IG9yIG5vdA0KICovDQpm dW5jdGlvbiBfY21fZE9PIChlbCwgbHYsIHNoKQ0Kew0KCWlmIChzaCkNCgl7DQoJ CWlmIChjbV9sT1tsdl0gIT0gbnVsbCkNCgkJCWlmIChfY21faURPKGVsLCBjbV9s T1tsdl0pKQ0KCQkJCWNsZWFyVGltZW91dChjbV9vRFtsdl0pOw0KCQkJZWxzZQ0K CQkJCV9jbV9zSChmYWxzZSwgbnVsbCwgbHYpOw0KCQkNCgkJX2NtX3NIKHRydWUs IGVsLCBsdik7DQoJfQ0KCWVsc2UNCgl7DQoJCWNtX2xPW2x2XSA9IGVsOw0KCQlj bGVhclRpbWVvdXQoY21fb0RbbHZdKTsNCgkJY21fb0RbbHZdID0gc2V0VGltZW91 dCgiX2NtX3NIKGZhbHNlLCBudWxsLCAiK2x2KyIpOyIsIENNX0xBVEVOQ1kpOw0K CX0NCn0NCg0KLyoqDQogKiBBY3R1YWxseSBzaG93cyBhbmQgaGlkZXMgc3R1ZmYu DQogKg0KICogQHBhcmFtCXNob3cJdHJ1ZSB0byBzaG93DQogKiBAcGFyYW0JZWwJ CXRoZSBMSSBlbGVtZW50IHRvIHNob3cgY2hpbGQgVUwgb2YuIElmIG51bGwsIHVz ZSBjbV9sTw0KICogQHBhcmFtCWx2CQl0aGUgJ2xldmVsJyBvZiB0aGUgZWxlbWVu dCBpbiB0aGUgbWVudSBzeXN0ZW0NCiAqLw0KZnVuY3Rpb24gX2NtX3NIIChzaG93 LCBlbCwgbHYpDQp7DQoJaWYgKGVsID09IG51bGwpDQoJew0KCQllbCA9IGNtX2xP W2x2XTsNCgkJY21fbE9bbHZdID0gbnVsbDsNCgl9DQoJaWYgKG51bGwgPT0gZWwp DQoJCXJldHVybjsNCgkNCgllbC5zdHlsZS52aXNpYmlsaXR5ID0gKHNob3cpID8g InZpc2libGUiIDogImhpZGRlbiI7DQoJDQoJaWYgKCFzaG93ICYmIF9jbV9hS0Uo Y21fb0QsIGx2KzEpICYmIChjbV9vRFtsdisxXSAhPSBudWxsKSkNCgkJX2NtX3NI IChmYWxzZSwgbnVsbCwgbHYrMSk7DQp9DQoNCi8qKg0KICogRmluZHMgb3V0IHdo ZXRoZXIgb25lIGVsZW1lbnQgaXMgYSBkZXNjZW5kYW50IG9mIGFub3RoZXINCiAq DQogKiBAcGFyYW0JZWwJdGhlIGVsZW1lbnQgaW4gcXVlc3Rpb24NCiAqIEBwYXJh bQlyZWYJdGhlIGVsZW1lbnQgdG8gcmVmZXJlbmNlIGFnYWluc3QNCiAqIEByZXR1 cm4JdHJ1ZSBpZiBlbCBhbmQgcmVmIGFyZSB0aGUgc2FtZSwgb3IgZWwgaXMgYSBk ZXNjZW5kYW50IG9mIHJlZg0KICovDQpmdW5jdGlvbiBfY21faURPIChlbCwgcmVm KQ0KewkNCgl2YXIgdGVzdCA9IGVsOw0KCXdoaWxlICh0ZXN0ICE9IG51bGwpDQoJ ew0KCQlpZiAodGVzdCA9PSByZWYpDQoJCQlyZXR1cm4gdHJ1ZTsNCgkJCQ0KCQl0 ZXN0ID0gdGVzdC5wYXJlbnROb2RlOw0KCX0NCgkNCglyZXR1cm4gZmFsc2U7DQp9 DQoNCi8qKg0KICogR2V0cyB0aGUgYWJzb2x1dGUgeCBjb29yZGluYXRlIG9mIGFu IGVsZW1lbnQgb24gYSBwYWdlLg0KICoNCiAqIEBwYXJhbQllbAl0aGUgZWxlbWVu dA0KICogQHJldHVybiAJdGhlIHgtY29vcmRpbmF0ZQ0KICovDQpmdW5jdGlvbiBf Y21fZ2V0WCAoZWwpDQp7DQoJdmFyIHggPSAwOw0KCWlmIChlbC5vZmZzZXRQYXJl bnQpDQoJew0KCQl3aGlsZSAoZWwub2Zmc2V0UGFyZW50KQ0KCQl7DQoJCQl4ICs9 IGVsLm9mZnNldExlZnQ7DQoJCQllbCA9IGVsLm9mZnNldFBhcmVudDsNCgkJfQ0K CX0NCgllbHNlIGlmIChlbC54KQ0KCQl4ICs9IGVsLng7DQoJDQoJcmV0dXJuIHg7 DQp9DQoNCi8qKg0KICogR2V0cyB0aGUgYWJzb2x1dGUgeSBjb29yZGluYXRlIG9m IGFuIGVsZW1lbnQgb24gYSBwYWdlLg0KICoNCiAqIEBwYXJhbQllbAl0aGUgZWxl bWVudA0KICogQHJldHVybiAJdGhlIHktY29vcmRpbmF0ZQ0KICovDQpmdW5jdGlv biBfY21fZ2V0WSAoZWwpDQp7DQoJdmFyIHkgPSAwOw0KCWlmIChlbC5vZmZzZXRQ YXJlbnQpDQoJew0KCQl3aGlsZSAoZWwub2Zmc2V0UGFyZW50KQ0KCQl7DQoJCQl5 ICs9IGVsLm9mZnNldFRvcDsNCgkJCWVsID0gZWwub2Zmc2V0UGFyZW50Ow0KCQl9 DQoJfQ0KCWVsc2UgaWYgKGVsLnkpDQoJCXkgKz0gZWwueTsNCgkNCglyZXR1cm4g eTsNCn0NCg0KLyoqDQogKiBSZXR1cm5zIHRydWUgaWYgYSBzcGVjaWZpYyBrZXkg ZXhpc3RzIHdpdGhpbiBhbiBhcnJheS4NCiAqDQogKiBAcGFyYW0JYXIJdGhlIGFy cmF5DQogKiBAcGFyYW0Ja2UJdGhlIGtleQ0KICogQHJldHVybgl0cnVlIGlmIGFy W2tlXSBleGlzdHMuDQogKi8NCmZ1bmN0aW9uIF9jbV9hS0UoYXIsIGtlKQ0Kew0K CXRyeQ0KCXsNCgkJdmFyIHQgPSBhcltrZV07DQoJfQ0KCWNhdGNoIChleCkNCgl7 DQoJCXJldHVybiBmYWxzZTsNCgl9DQoJDQoJcmV0dXJuICh0ICE9IG51bGwpOw0K fQ== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=menufx.js Content-Type: application/x-javascript; charset=UTF-8; name=menufx.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/js/menufx.js Content-Transfer-Encoding: Base64 dmFyIG1lbnVmeF9tZW51Q2xhc3NSZWdleCA9IG5ldyBSZWdFeHAoImJlYS1wb3J0 YWwtYm9vay1wcmltYXJ5LW1lbnUtc2luZ2xlLWl0ZW0oPzotYWN0aXZlKT8kIik7 DQoNCmZ1bmN0aW9uIGluaXRSb2xsb3Zlck1lbnVzKCkNCnsNCiAgICB2YXIgbGlz dEl0ZW1zID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2xpJyk7DQog ICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsaXN0SXRlbXMubGVuZ3RoOyBpKyspDQog ICAgew0KICAgICAgICBpZiAobGlzdEl0ZW1zW2ldLmNsYXNzTmFtZSAmJiBsaXN0 SXRlbXNbaV0uY2xhc3NOYW1lLm1hdGNoKG1lbnVmeF9tZW51Q2xhc3NSZWdleCkp DQogICAgICAgIHsNCiAgICAgICAgICAgIGluaXRSb2xsb3Zlck1lbnUobGlzdEl0 ZW1zW2ldKTsNCiAgICAgICAgfQ0KICAgIH0NCn0NCg0KZnVuY3Rpb24gaW5pdFJv bGxvdmVyTWVudShsaXN0SXRlbSkNCnsNCiAgICB2YXIgaW1hZ2UgPSBnZXRJbWFn ZShsaXN0SXRlbSk7DQoNCiAgICBpZiAoaW1hZ2UgJiYgaW1hZ2Uuc3JjICYmIGlt YWdlLmxvbmdEZXNjKQ0KICAgIHsNCiAgICAgICAgaW1hZ2Uucm9sbE9mZlNyYyA9 IGltYWdlLnNyYzsNCiAgICAgICAgaW1hZ2Uucm9sbE9uU3JjID0gaW1hZ2UubG9u Z0Rlc2M7DQoNCiAgICAgICAgaW1hZ2UuZnhFbmFibGVkID0gdHJ1ZTsNCiAgICAg ICAgYWRkRXZlbnRUb0VsZW1lbnQoaW1hZ2UsICJtb3VzZW92ZXIiLCBmeFJvbGxJ biwgdHJ1ZSk7DQogICAgICAgIGFkZEV2ZW50VG9FbGVtZW50KGltYWdlLCAibW91 c2VvdXQiLCBmeFJvbGxPdXQsIHRydWUpOw0KICAgIH0NCn0NCg0KZnVuY3Rpb24g Z2V0SW1hZ2UobGlzdEl0ZW0pDQp7DQogICAgdmFyIGltYWdlOw0KICAgIHZhciBp bWFnZXMgPSBsaXN0SXRlbS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaW1nIik7DQog ICAgaWYgKGltYWdlcyAmJiBpbWFnZXMubGVuZ3RoID09IDEpDQogICAgew0KICAg ICAgICBpbWFnZSA9IGltYWdlc1swXTsNCiAgICB9DQoNCiAgICByZXR1cm4gaW1h Z2U7DQp9DQoNCmZ1bmN0aW9uIGZ4Um9sbEluKGV2ZW50KQ0Kew0KICAgIHZhciBp bWFnZSA9IGdldEV2ZW50U291cmNlKGdldEV2ZW50KGV2ZW50KSk7DQogICAgaWYg KGltYWdlICYmIGltYWdlLnJvbGxPblNyYyAmJiBpbWFnZS5meEVuYWJsZWQpDQog ICAgew0KICAgICAgICBpbWFnZS5zcmMgPSBpbWFnZS5yb2xsT25TcmM7DQogICAg fQ0KfQ0KDQpmdW5jdGlvbiBmeFJvbGxPdXQoZXZlbnQpDQp7DQogICAgdmFyIGlt YWdlID0gZ2V0RXZlbnRTb3VyY2UoZ2V0RXZlbnQoZXZlbnQpKTsNCiAgICBpZiAo aW1hZ2UgJiYgaW1hZ2Uucm9sbE9mZlNyYyAmJiBpbWFnZS5meEVuYWJsZWQpDQog ICAgew0KICAgICAgICBpbWFnZS5zcmMgPSBpbWFnZS5yb2xsT2ZmU3JjOw0KICAg IH0NCn0NCg0K ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=external.js Content-Type: application/x-javascript; charset=UTF-8; name=external.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/js/external.js Content-Transfer-Encoding: Base64 ZnVuY3Rpb24gZXh0ZXJuYWxMaW5rcygpIHsgDQogaWYgKCFkb2N1bWVudC5nZXRF bGVtZW50c0J5VGFnTmFtZSkgcmV0dXJuOyANCg0KIHZhciBhbmNob3JzID0gZG9j dW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImEiKTsgDQogZm9yICh2YXIgaT0w OyBpPGFuY2hvcnMubGVuZ3RoOyBpKyspIHsgDQogICB2YXIgYW5jaG9yID0gYW5j aG9yc1tpXTsgDQogICBpZiAoYW5jaG9yLmdldEF0dHJpYnV0ZSgiaHJlZiIpICYm IA0KICAgICAgIGFuY2hvci5nZXRBdHRyaWJ1dGUoInJlbCIpID09ICJleHRlcm5h bCIpIA0KICAgICBhbmNob3IudGFyZ2V0ID0gIl9ibGFuayI7IA0KIH0gDQp9IA0K DQoNCg0KDQoNCg0K ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=linkcorreo.js Content-Type: application/x-javascript; charset=UTF-8; name=linkcorreo.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/js/linkcorreo.js Content-Transfer-Encoding: Base64 ZnVuY3Rpb24gbWFpbExpbmsgKHVzdWFyaW8sIGRvbWluaW8sIHRsZCkgeyAgIA0K IC8vY29kaWZpY2EgbG9zIGNhcmFjdGVyZXMgbWFzIHNpZ25pZmljYXRpdm9zICAg DQogdmFyIGFycm9iYSA9ICJAIjsgIA0KIHZhciBwdW50byA9ICIuIjsgIA0KICAN CiAvL3V0aWxpemEgdmFyaWFibGVzIHBhcmEgb2N1bHRhciBsYXMgcGFsYWJyYXMg Y2xhdmUgICANCiB2YXIgZXRpcXVldGEgPSAibWEiICsgIiIgKyAiaWwiOyAgDQog dmFyIGRvc3B1bnRvcyA9ICJ0bzoiOyAgDQogdmFyIGxvY2FsaXphZG9yID0gdXN1 YXJpbzsgICANCiBsb2NhbGl6YWRvciA9IGxvY2FsaXphZG9yICsgYXJyb2JhICsg ZG9taW5pbzsgICANCiBsb2NhbGl6YWRvciA9IGxvY2FsaXphZG9yICsgcHVudG8g KyB0bGQ7ICAgDQogZG9jdW1lbnQubG9jYXRpb24uaHJlZj1ldGlxdWV0YStkb3Nw dW50b3MrbG9jYWxpemFkb3I7ICAgDQp9ICAg ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=objectBorder.js Content-Type: application/x-javascript; charset=UTF-8; name=objectBorder.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/js/objectBorder.js Content-Transfer-Encoding: Base64 ZnVuY3Rpb24gZml4T2JqZWN0KCl7DQogdmFyIG9ianM9ZG9jdW1lbnQuZ2V0RWxl bWVudHNCeVRhZ05hbWUoJ29iamVjdCcpOw0KIGZvcihuPTA7bjxvYmpzLmxlbmd0 aDtuKyspew0KICB2YXIgb2JqPW9ianNbbl07DQogIGlmIChvYmogIT0gbnVsbCAm JiBvYmoudHlwZSAhPSBudWxsKSB7DQogICBmaXhPYmoob2JqKTsNCiAgfQ0KIH0N Cn0NCmZ1bmN0aW9uIGZpeE9iaihvYmopew0KIG9iai5ib2R5LnN0eWxlLmJvcmRl cj0nbm9uZSc7DQovLyBvYmouYm9keS5zdHlsZS5tYXJnaW49JzAnOw0KIC8vb2Jq LmJvZHkuc3R5bGUucGFkZGluZz0nMCc7DQogb2JqLmJvZHkuc3R5bGUub3ZlcmZs b3c9J2hpZGRlbic7DQp9DQoNCg0KDQoNCg0KDQoNCg0K ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=prototype.js Content-Type: application/x-javascript; charset=UTF-8; name=prototype.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/js/uniformidad/prototype.js Content-Transfer-Encoding: Base64 LyogIFByb3RvdHlwZSBKYXZhU2NyaXB0IGZyYW1ld29yaywgdmVyc2lvbiAxLjYu MC4yCiAqICAoYykgMjAwNS0yMDA4IFNhbSBTdGVwaGVuc29uCiAqCiAqICBQcm90 b3R5cGUgaXMgZnJlZWx5IGRpc3RyaWJ1dGFibGUgdW5kZXIgdGhlIHRlcm1zIG9m IGFuIE1JVC1zdHlsZSBsaWNlbnNlLgogKiAgRm9yIGRldGFpbHMsIHNlZSB0aGUg UHJvdG90eXBlIHdlYiBzaXRlOiBodHRwOi8vd3d3LnByb3RvdHlwZWpzLm9yZy8K ICoKICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCgp2YXIgUHJvdG90eXBl ID0gewogIFZlcnNpb246ICcxLjYuMC4yJywKCiAgQnJvd3NlcjogewogICAgSUU6 ICAgICAhISh3aW5kb3cuYXR0YWNoRXZlbnQgJiYgIXdpbmRvdy5vcGVyYSksCiAg ICBPcGVyYTogICEhd2luZG93Lm9wZXJhLAogICAgV2ViS2l0OiBuYXZpZ2F0b3Iu dXNlckFnZW50LmluZGV4T2YoJ0FwcGxlV2ViS2l0LycpID4gLTEsCiAgICBHZWNr bzogIG5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZignR2Vja28nKSA+IC0xICYm IG5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZignS0hUTUwnKSA9PSAtMSwKICAg IE1vYmlsZVNhZmFyaTogISFuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9BcHBs ZS4qTW9iaWxlLipTYWZhcmkvKQogIH0sCgogIEJyb3dzZXJGZWF0dXJlczogewog ICAgWFBhdGg6ICEhZG9jdW1lbnQuZXZhbHVhdGUsCiAgICBFbGVtZW50RXh0ZW5z aW9uczogISF3aW5kb3cuSFRNTEVsZW1lbnQsCiAgICBTcGVjaWZpY0VsZW1lbnRF eHRlbnNpb25zOgogICAgICBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKS5f X3Byb3RvX18gJiYKICAgICAgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyku X19wcm90b19fICE9PQogICAgICAgIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2Zv cm0nKS5fX3Byb3RvX18KICB9LAoKICBTY3JpcHRGcmFnbWVudDogJzxzY3JpcHRb Xj5dKj4oW1xcU1xcc10qPyk8XC9zY3JpcHQ+JywKICBKU09ORmlsdGVyOiAvXlwv XCotc2VjdXJlLShbXHNcU10qKVwqXC9ccyokLywKCiAgZW1wdHlGdW5jdGlvbjog ZnVuY3Rpb24oKSB7IH0sCiAgSzogZnVuY3Rpb24oeCkgeyByZXR1cm4geCB9Cn07 CgppZiAoUHJvdG90eXBlLkJyb3dzZXIuTW9iaWxlU2FmYXJpKQogIFByb3RvdHlw ZS5Ccm93c2VyRmVhdHVyZXMuU3BlY2lmaWNFbGVtZW50RXh0ZW5zaW9ucyA9IGZh bHNlOwoKCi8qIEJhc2VkIG9uIEFsZXggQXJuZWxsJ3MgaW5oZXJpdGFuY2UgaW1w bGVtZW50YXRpb24uICovCnZhciBDbGFzcyA9IHsKICBjcmVhdGU6IGZ1bmN0aW9u KCkgewogICAgdmFyIHBhcmVudCA9IG51bGwsIHByb3BlcnRpZXMgPSAkQShhcmd1 bWVudHMpOwogICAgaWYgKE9iamVjdC5pc0Z1bmN0aW9uKHByb3BlcnRpZXNbMF0p KQogICAgICBwYXJlbnQgPSBwcm9wZXJ0aWVzLnNoaWZ0KCk7CgogICAgZnVuY3Rp b24ga2xhc3MoKSB7CiAgICAgIHRoaXMuaW5pdGlhbGl6ZS5hcHBseSh0aGlzLCBh cmd1bWVudHMpOwogICAgfQoKICAgIE9iamVjdC5leHRlbmQoa2xhc3MsIENsYXNz Lk1ldGhvZHMpOwogICAga2xhc3Muc3VwZXJjbGFzcyA9IHBhcmVudDsKICAgIGts YXNzLnN1YmNsYXNzZXMgPSBbXTsKCiAgICBpZiAocGFyZW50KSB7CiAgICAgIHZh ciBzdWJjbGFzcyA9IGZ1bmN0aW9uKCkgeyB9OwogICAgICBzdWJjbGFzcy5wcm90 b3R5cGUgPSBwYXJlbnQucHJvdG90eXBlOwogICAgICBrbGFzcy5wcm90b3R5cGUg PSBuZXcgc3ViY2xhc3M7CiAgICAgIHBhcmVudC5zdWJjbGFzc2VzLnB1c2goa2xh c3MpOwogICAgfQoKICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcGVydGllcy5s ZW5ndGg7IGkrKykKICAgICAga2xhc3MuYWRkTWV0aG9kcyhwcm9wZXJ0aWVzW2ld KTsKCiAgICBpZiAoIWtsYXNzLnByb3RvdHlwZS5pbml0aWFsaXplKQogICAgICBr bGFzcy5wcm90b3R5cGUuaW5pdGlhbGl6ZSA9IFByb3RvdHlwZS5lbXB0eUZ1bmN0 aW9uOwoKICAgIGtsYXNzLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IGtsYXNzOwoK ICAgIHJldHVybiBrbGFzczsKICB9Cn07CgpDbGFzcy5NZXRob2RzID0gewogIGFk ZE1ldGhvZHM6IGZ1bmN0aW9uKHNvdXJjZSkgewogICAgdmFyIGFuY2VzdG9yICAg PSB0aGlzLnN1cGVyY2xhc3MgJiYgdGhpcy5zdXBlcmNsYXNzLnByb3RvdHlwZTsK ICAgIHZhciBwcm9wZXJ0aWVzID0gT2JqZWN0LmtleXMoc291cmNlKTsKCiAgICBp ZiAoIU9iamVjdC5rZXlzKHsgdG9TdHJpbmc6IHRydWUgfSkubGVuZ3RoKQogICAg ICBwcm9wZXJ0aWVzLnB1c2goInRvU3RyaW5nIiwgInZhbHVlT2YiKTsKCiAgICBm b3IgKHZhciBpID0gMCwgbGVuZ3RoID0gcHJvcGVydGllcy5sZW5ndGg7IGkgPCBs ZW5ndGg7IGkrKykgewogICAgICB2YXIgcHJvcGVydHkgPSBwcm9wZXJ0aWVzW2ld LCB2YWx1ZSA9IHNvdXJjZVtwcm9wZXJ0eV07CiAgICAgIGlmIChhbmNlc3RvciAm JiBPYmplY3QuaXNGdW5jdGlvbih2YWx1ZSkgJiYKICAgICAgICAgIHZhbHVlLmFy Z3VtZW50TmFtZXMoKS5maXJzdCgpID09ICIkc3VwZXIiKSB7CiAgICAgICAgdmFy IG1ldGhvZCA9IHZhbHVlLCB2YWx1ZSA9IE9iamVjdC5leHRlbmQoKGZ1bmN0aW9u KG0pIHsKICAgICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsgcmV0dXJuIGFuY2Vz dG9yW21dLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykgfTsKICAgICAgICB9KShwcm9w ZXJ0eSkud3JhcChtZXRob2QpLCB7CiAgICAgICAgICB2YWx1ZU9mOiAgZnVuY3Rp b24oKSB7IHJldHVybiBtZXRob2QgfSwKICAgICAgICAgIHRvU3RyaW5nOiBmdW5j dGlvbigpIHsgcmV0dXJuIG1ldGhvZC50b1N0cmluZygpIH0KICAgICAgICB9KTsK ICAgICAgfQogICAgICB0aGlzLnByb3RvdHlwZVtwcm9wZXJ0eV0gPSB2YWx1ZTsK ICAgIH0KCiAgICByZXR1cm4gdGhpczsKICB9Cn07Cgp2YXIgQWJzdHJhY3QgPSB7 IH07CgpPYmplY3QuZXh0ZW5kID0gZnVuY3Rpb24oZGVzdGluYXRpb24sIHNvdXJj ZSkgewogIGZvciAodmFyIHByb3BlcnR5IGluIHNvdXJjZSkKICAgIGRlc3RpbmF0 aW9uW3Byb3BlcnR5XSA9IHNvdXJjZVtwcm9wZXJ0eV07CiAgcmV0dXJuIGRlc3Rp bmF0aW9uOwp9OwoKT2JqZWN0LmV4dGVuZChPYmplY3QsIHsKICBpbnNwZWN0OiBm dW5jdGlvbihvYmplY3QpIHsKICAgIHRyeSB7CiAgICAgIGlmIChPYmplY3QuaXNV bmRlZmluZWQob2JqZWN0KSkgcmV0dXJuICd1bmRlZmluZWQnOwogICAgICBpZiAo b2JqZWN0ID09PSBudWxsKSByZXR1cm4gJ251bGwnOwogICAgICByZXR1cm4gb2Jq ZWN0Lmluc3BlY3QgPyBvYmplY3QuaW5zcGVjdCgpIDogU3RyaW5nKG9iamVjdCk7 CiAgICB9IGNhdGNoIChlKSB7CiAgICAgIGlmIChlIGluc3RhbmNlb2YgUmFuZ2VF cnJvcikgcmV0dXJuICcuLi4nOwogICAgICB0aHJvdyBlOwogICAgfQogIH0sCgog IHRvSlNPTjogZnVuY3Rpb24ob2JqZWN0KSB7CiAgICB2YXIgdHlwZSA9IHR5cGVv ZiBvYmplY3Q7CiAgICBzd2l0Y2ggKHR5cGUpIHsKICAgICAgY2FzZSAndW5kZWZp bmVkJzoKICAgICAgY2FzZSAnZnVuY3Rpb24nOgogICAgICBjYXNlICd1bmtub3du JzogcmV0dXJuOwogICAgICBjYXNlICdib29sZWFuJzogcmV0dXJuIG9iamVjdC50 b1N0cmluZygpOwogICAgfQoKICAgIGlmIChvYmplY3QgPT09IG51bGwpIHJldHVy biAnbnVsbCc7CiAgICBpZiAob2JqZWN0LnRvSlNPTikgcmV0dXJuIG9iamVjdC50 b0pTT04oKTsKICAgIGlmIChPYmplY3QuaXNFbGVtZW50KG9iamVjdCkpIHJldHVy bjsKCiAgICB2YXIgcmVzdWx0cyA9IFtdOwogICAgZm9yICh2YXIgcHJvcGVydHkg aW4gb2JqZWN0KSB7CiAgICAgIHZhciB2YWx1ZSA9IE9iamVjdC50b0pTT04ob2Jq ZWN0W3Byb3BlcnR5XSk7CiAgICAgIGlmICghT2JqZWN0LmlzVW5kZWZpbmVkKHZh bHVlKSkKICAgICAgICByZXN1bHRzLnB1c2gocHJvcGVydHkudG9KU09OKCkgKyAn OiAnICsgdmFsdWUpOwogICAgfQoKICAgIHJldHVybiAneycgKyByZXN1bHRzLmpv aW4oJywgJykgKyAnfSc7CiAgfSwKCiAgdG9RdWVyeVN0cmluZzogZnVuY3Rpb24o b2JqZWN0KSB7CiAgICByZXR1cm4gJEgob2JqZWN0KS50b1F1ZXJ5U3RyaW5nKCk7 CiAgfSwKCiAgdG9IVE1MOiBmdW5jdGlvbihvYmplY3QpIHsKICAgIHJldHVybiBv YmplY3QgJiYgb2JqZWN0LnRvSFRNTCA/IG9iamVjdC50b0hUTUwoKSA6IFN0cmlu Zy5pbnRlcnByZXQob2JqZWN0KTsKICB9LAoKICBrZXlzOiBmdW5jdGlvbihvYmpl Y3QpIHsKICAgIHZhciBrZXlzID0gW107CiAgICBmb3IgKHZhciBwcm9wZXJ0eSBp biBvYmplY3QpCiAgICAgIGtleXMucHVzaChwcm9wZXJ0eSk7CiAgICByZXR1cm4g a2V5czsKICB9LAoKICB2YWx1ZXM6IGZ1bmN0aW9uKG9iamVjdCkgewogICAgdmFy IHZhbHVlcyA9IFtdOwogICAgZm9yICh2YXIgcHJvcGVydHkgaW4gb2JqZWN0KQog ICAgICB2YWx1ZXMucHVzaChvYmplY3RbcHJvcGVydHldKTsKICAgIHJldHVybiB2 YWx1ZXM7CiAgfSwKCiAgY2xvbmU6IGZ1bmN0aW9uKG9iamVjdCkgewogICAgcmV0 dXJuIE9iamVjdC5leHRlbmQoeyB9LCBvYmplY3QpOwogIH0sCgogIGlzRWxlbWVu dDogZnVuY3Rpb24ob2JqZWN0KSB7CiAgICByZXR1cm4gb2JqZWN0ICYmIG9iamVj dC5ub2RlVHlwZSA9PSAxOwogIH0sCgogIGlzQXJyYXk6IGZ1bmN0aW9uKG9iamVj dCkgewogICAgcmV0dXJuIG9iamVjdCAhPSBudWxsICYmIHR5cGVvZiBvYmplY3Qg PT0gIm9iamVjdCIgJiYKICAgICAgJ3NwbGljZScgaW4gb2JqZWN0ICYmICdqb2lu JyBpbiBvYmplY3Q7CiAgfSwKCiAgaXNIYXNoOiBmdW5jdGlvbihvYmplY3QpIHsK ICAgIHJldHVybiBvYmplY3QgaW5zdGFuY2VvZiBIYXNoOwogIH0sCgogIGlzRnVu Y3Rpb246IGZ1bmN0aW9uKG9iamVjdCkgewogICAgcmV0dXJuIHR5cGVvZiBvYmpl Y3QgPT0gImZ1bmN0aW9uIjsKICB9LAoKICBpc1N0cmluZzogZnVuY3Rpb24ob2Jq ZWN0KSB7CiAgICByZXR1cm4gdHlwZW9mIG9iamVjdCA9PSAic3RyaW5nIjsKICB9 LAoKICBpc051bWJlcjogZnVuY3Rpb24ob2JqZWN0KSB7CiAgICByZXR1cm4gdHlw ZW9mIG9iamVjdCA9PSAibnVtYmVyIjsKICB9LAoKICBpc1VuZGVmaW5lZDogZnVu Y3Rpb24ob2JqZWN0KSB7CiAgICByZXR1cm4gdHlwZW9mIG9iamVjdCA9PSAidW5k ZWZpbmVkIjsKICB9Cn0pOwoKT2JqZWN0LmV4dGVuZChGdW5jdGlvbi5wcm90b3R5 cGUsIHsKICBhcmd1bWVudE5hbWVzOiBmdW5jdGlvbigpIHsKICAgIHZhciBuYW1l cyA9IHRoaXMudG9TdHJpbmcoKS5tYXRjaCgvXltcc1woXSpmdW5jdGlvblteKF0q XCgoLio/KVwpLylbMV0uc3BsaXQoIiwiKS5pbnZva2UoInN0cmlwIik7CiAgICBy ZXR1cm4gbmFtZXMubGVuZ3RoID09IDEgJiYgIW5hbWVzWzBdID8gW10gOiBuYW1l czsKICB9LAoKICBiaW5kOiBmdW5jdGlvbigpIHsKICAgIGlmIChhcmd1bWVudHMu bGVuZ3RoIDwgMiAmJiBPYmplY3QuaXNVbmRlZmluZWQoYXJndW1lbnRzWzBdKSkg cmV0dXJuIHRoaXM7CiAgICB2YXIgX19tZXRob2QgPSB0aGlzLCBhcmdzID0gJEEo YXJndW1lbnRzKSwgb2JqZWN0ID0gYXJncy5zaGlmdCgpOwogICAgcmV0dXJuIGZ1 bmN0aW9uKCkgewogICAgICByZXR1cm4gX19tZXRob2QuYXBwbHkob2JqZWN0LCBh cmdzLmNvbmNhdCgkQShhcmd1bWVudHMpKSk7CiAgICB9CiAgfSwKCiAgYmluZEFz RXZlbnRMaXN0ZW5lcjogZnVuY3Rpb24oKSB7CiAgICB2YXIgX19tZXRob2QgPSB0 aGlzLCBhcmdzID0gJEEoYXJndW1lbnRzKSwgb2JqZWN0ID0gYXJncy5zaGlmdCgp OwogICAgcmV0dXJuIGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgIHJldHVybiBfX21l dGhvZC5hcHBseShvYmplY3QsIFtldmVudCB8fCB3aW5kb3cuZXZlbnRdLmNvbmNh dChhcmdzKSk7CiAgICB9CiAgfSwKCiAgY3Vycnk6IGZ1bmN0aW9uKCkgewogICAg aWYgKCFhcmd1bWVudHMubGVuZ3RoKSByZXR1cm4gdGhpczsKICAgIHZhciBfX21l dGhvZCA9IHRoaXMsIGFyZ3MgPSAkQShhcmd1bWVudHMpOwogICAgcmV0dXJuIGZ1 bmN0aW9uKCkgewogICAgICByZXR1cm4gX19tZXRob2QuYXBwbHkodGhpcywgYXJn cy5jb25jYXQoJEEoYXJndW1lbnRzKSkpOwogICAgfQogIH0sCgogIGRlbGF5OiBm dW5jdGlvbigpIHsKICAgIHZhciBfX21ldGhvZCA9IHRoaXMsIGFyZ3MgPSAkQShh cmd1bWVudHMpLCB0aW1lb3V0ID0gYXJncy5zaGlmdCgpICogMTAwMDsKICAgIHJl dHVybiB3aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgcmV0dXJu IF9fbWV0aG9kLmFwcGx5KF9fbWV0aG9kLCBhcmdzKTsKICAgIH0sIHRpbWVvdXQp OwogIH0sCgogIHdyYXA6IGZ1bmN0aW9uKHdyYXBwZXIpIHsKICAgIHZhciBfX21l dGhvZCA9IHRoaXM7CiAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgIHJldHVy biB3cmFwcGVyLmFwcGx5KHRoaXMsIFtfX21ldGhvZC5iaW5kKHRoaXMpXS5jb25j YXQoJEEoYXJndW1lbnRzKSkpOwogICAgfQogIH0sCgogIG1ldGhvZGl6ZTogZnVu Y3Rpb24oKSB7CiAgICBpZiAodGhpcy5fbWV0aG9kaXplZCkgcmV0dXJuIHRoaXMu X21ldGhvZGl6ZWQ7CiAgICB2YXIgX19tZXRob2QgPSB0aGlzOwogICAgcmV0dXJu IHRoaXMuX21ldGhvZGl6ZWQgPSBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIF9f bWV0aG9kLmFwcGx5KG51bGwsIFt0aGlzXS5jb25jYXQoJEEoYXJndW1lbnRzKSkp OwogICAgfTsKICB9Cn0pOwoKRnVuY3Rpb24ucHJvdG90eXBlLmRlZmVyID0gRnVu Y3Rpb24ucHJvdG90eXBlLmRlbGF5LmN1cnJ5KDAuMDEpOwoKRGF0ZS5wcm90b3R5 cGUudG9KU09OID0gZnVuY3Rpb24oKSB7CiAgcmV0dXJuICciJyArIHRoaXMuZ2V0 VVRDRnVsbFllYXIoKSArICctJyArCiAgICAodGhpcy5nZXRVVENNb250aCgpICsg MSkudG9QYWRkZWRTdHJpbmcoMikgKyAnLScgKwogICAgdGhpcy5nZXRVVENEYXRl KCkudG9QYWRkZWRTdHJpbmcoMikgKyAnVCcgKwogICAgdGhpcy5nZXRVVENIb3Vy cygpLnRvUGFkZGVkU3RyaW5nKDIpICsgJzonICsKICAgIHRoaXMuZ2V0VVRDTWlu dXRlcygpLnRvUGFkZGVkU3RyaW5nKDIpICsgJzonICsKICAgIHRoaXMuZ2V0VVRD U2Vjb25kcygpLnRvUGFkZGVkU3RyaW5nKDIpICsgJ1oiJzsKfTsKCnZhciBUcnkg PSB7CiAgdGhlc2U6IGZ1bmN0aW9uKCkgewogICAgdmFyIHJldHVyblZhbHVlOwoK ICAgIGZvciAodmFyIGkgPSAwLCBsZW5ndGggPSBhcmd1bWVudHMubGVuZ3RoOyBp IDwgbGVuZ3RoOyBpKyspIHsKICAgICAgdmFyIGxhbWJkYSA9IGFyZ3VtZW50c1tp XTsKICAgICAgdHJ5IHsKICAgICAgICByZXR1cm5WYWx1ZSA9IGxhbWJkYSgpOwog ICAgICAgIGJyZWFrOwogICAgICB9IGNhdGNoIChlKSB7IH0KICAgIH0KCiAgICBy ZXR1cm4gcmV0dXJuVmFsdWU7CiAgfQp9OwoKUmVnRXhwLnByb3RvdHlwZS5tYXRj aCA9IFJlZ0V4cC5wcm90b3R5cGUudGVzdDsKClJlZ0V4cC5lc2NhcGUgPSBmdW5j dGlvbihzdHIpIHsKICByZXR1cm4gU3RyaW5nKHN0cikucmVwbGFjZSgvKFsuKis/ Xj0hOiR7fSgpfFtcXVwvXFxdKS9nLCAnXFwkMScpOwp9OwoKLyotLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSovCgp2YXIgUGVyaW9kaWNhbEV4ZWN1dGVyID0gQ2xh c3MuY3JlYXRlKHsKICBpbml0aWFsaXplOiBmdW5jdGlvbihjYWxsYmFjaywgZnJl cXVlbmN5KSB7CiAgICB0aGlzLmNhbGxiYWNrID0gY2FsbGJhY2s7CiAgICB0aGlz LmZyZXF1ZW5jeSA9IGZyZXF1ZW5jeTsKICAgIHRoaXMuY3VycmVudGx5RXhlY3V0 aW5nID0gZmFsc2U7CgogICAgdGhpcy5yZWdpc3RlckNhbGxiYWNrKCk7CiAgfSwK CiAgcmVnaXN0ZXJDYWxsYmFjazogZnVuY3Rpb24oKSB7CiAgICB0aGlzLnRpbWVy ID0gc2V0SW50ZXJ2YWwodGhpcy5vblRpbWVyRXZlbnQuYmluZCh0aGlzKSwgdGhp cy5mcmVxdWVuY3kgKiAxMDAwKTsKICB9LAoKICBleGVjdXRlOiBmdW5jdGlvbigp IHsKICAgIHRoaXMuY2FsbGJhY2sodGhpcyk7CiAgfSwKCiAgc3RvcDogZnVuY3Rp b24oKSB7CiAgICBpZiAoIXRoaXMudGltZXIpIHJldHVybjsKICAgIGNsZWFySW50 ZXJ2YWwodGhpcy50aW1lcik7CiAgICB0aGlzLnRpbWVyID0gbnVsbDsKICB9LAoK ICBvblRpbWVyRXZlbnQ6IGZ1bmN0aW9uKCkgewogICAgaWYgKCF0aGlzLmN1cnJl bnRseUV4ZWN1dGluZykgewogICAgICB0cnkgewogICAgICAgIHRoaXMuY3VycmVu dGx5RXhlY3V0aW5nID0gdHJ1ZTsKICAgICAgICB0aGlzLmV4ZWN1dGUoKTsKICAg ICAgfSBmaW5hbGx5IHsKICAgICAgICB0aGlzLmN1cnJlbnRseUV4ZWN1dGluZyA9 IGZhbHNlOwogICAgICB9CiAgICB9CiAgfQp9KTsKT2JqZWN0LmV4dGVuZChTdHJp bmcsIHsKICBpbnRlcnByZXQ6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICByZXR1cm4g dmFsdWUgPT0gbnVsbCA/ICcnIDogU3RyaW5nKHZhbHVlKTsKICB9LAogIHNwZWNp YWxDaGFyOiB7CiAgICAnXGInOiAnXFxiJywKICAgICdcdCc6ICdcXHQnLAogICAg J1xuJzogJ1xcbicsCiAgICAnXGYnOiAnXFxmJywKICAgICdccic6ICdcXHInLAog ICAgJ1xcJzogJ1xcXFwnCiAgfQp9KTsKCk9iamVjdC5leHRlbmQoU3RyaW5nLnBy b3RvdHlwZSwgewogIGdzdWI6IGZ1bmN0aW9uKHBhdHRlcm4sIHJlcGxhY2VtZW50 KSB7CiAgICB2YXIgcmVzdWx0ID0gJycsIHNvdXJjZSA9IHRoaXMsIG1hdGNoOwog ICAgcmVwbGFjZW1lbnQgPSBhcmd1bWVudHMuY2FsbGVlLnByZXBhcmVSZXBsYWNl bWVudChyZXBsYWNlbWVudCk7CgogICAgd2hpbGUgKHNvdXJjZS5sZW5ndGggPiAw KSB7CiAgICAgIGlmIChtYXRjaCA9IHNvdXJjZS5tYXRjaChwYXR0ZXJuKSkgewog ICAgICAgIHJlc3VsdCArPSBzb3VyY2Uuc2xpY2UoMCwgbWF0Y2guaW5kZXgpOwog ICAgICAgIHJlc3VsdCArPSBTdHJpbmcuaW50ZXJwcmV0KHJlcGxhY2VtZW50KG1h dGNoKSk7CiAgICAgICAgc291cmNlICA9IHNvdXJjZS5zbGljZShtYXRjaC5pbmRl eCArIG1hdGNoWzBdLmxlbmd0aCk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmVz dWx0ICs9IHNvdXJjZSwgc291cmNlID0gJyc7CiAgICAgIH0KICAgIH0KICAgIHJl dHVybiByZXN1bHQ7CiAgfSwKCiAgc3ViOiBmdW5jdGlvbihwYXR0ZXJuLCByZXBs YWNlbWVudCwgY291bnQpIHsKICAgIHJlcGxhY2VtZW50ID0gdGhpcy5nc3ViLnBy ZXBhcmVSZXBsYWNlbWVudChyZXBsYWNlbWVudCk7CiAgICBjb3VudCA9IE9iamVj dC5pc1VuZGVmaW5lZChjb3VudCkgPyAxIDogY291bnQ7CgogICAgcmV0dXJuIHRo aXMuZ3N1YihwYXR0ZXJuLCBmdW5jdGlvbihtYXRjaCkgewogICAgICBpZiAoLS1j b3VudCA8IDApIHJldHVybiBtYXRjaFswXTsKICAgICAgcmV0dXJuIHJlcGxhY2Vt ZW50KG1hdGNoKTsKICAgIH0pOwogIH0sCgogIHNjYW46IGZ1bmN0aW9uKHBhdHRl cm4sIGl0ZXJhdG9yKSB7CiAgICB0aGlzLmdzdWIocGF0dGVybiwgaXRlcmF0b3Ip OwogICAgcmV0dXJuIFN0cmluZyh0aGlzKTsKICB9LAoKICB0cnVuY2F0ZTogZnVu Y3Rpb24obGVuZ3RoLCB0cnVuY2F0aW9uKSB7CiAgICBsZW5ndGggPSBsZW5ndGgg fHwgMzA7CiAgICB0cnVuY2F0aW9uID0gT2JqZWN0LmlzVW5kZWZpbmVkKHRydW5j YXRpb24pID8gJy4uLicgOiB0cnVuY2F0aW9uOwogICAgcmV0dXJuIHRoaXMubGVu Z3RoID4gbGVuZ3RoID8KICAgICAgdGhpcy5zbGljZSgwLCBsZW5ndGggLSB0cnVu Y2F0aW9uLmxlbmd0aCkgKyB0cnVuY2F0aW9uIDogU3RyaW5nKHRoaXMpOwogIH0s CgogIHN0cmlwOiBmdW5jdGlvbigpIHsKICAgIHJldHVybiB0aGlzLnJlcGxhY2Uo L15ccysvLCAnJykucmVwbGFjZSgvXHMrJC8sICcnKTsKICB9LAoKICBzdHJpcFRh Z3M6IGZ1bmN0aW9uKCkgewogICAgcmV0dXJuIHRoaXMucmVwbGFjZSgvPFwvP1te Pl0rPi9naSwgJycpOwogIH0sCgogIHN0cmlwU2NyaXB0czogZnVuY3Rpb24oKSB7 CiAgICByZXR1cm4gdGhpcy5yZXBsYWNlKG5ldyBSZWdFeHAoUHJvdG90eXBlLlNj cmlwdEZyYWdtZW50LCAnaW1nJyksICcnKTsKICB9LAoKICBleHRyYWN0U2NyaXB0 czogZnVuY3Rpb24oKSB7CiAgICB2YXIgbWF0Y2hBbGwgPSBuZXcgUmVnRXhwKFBy b3RvdHlwZS5TY3JpcHRGcmFnbWVudCwgJ2ltZycpOwogICAgdmFyIG1hdGNoT25l ID0gbmV3IFJlZ0V4cChQcm90b3R5cGUuU2NyaXB0RnJhZ21lbnQsICdpbScpOwog ICAgcmV0dXJuICh0aGlzLm1hdGNoKG1hdGNoQWxsKSB8fCBbXSkubWFwKGZ1bmN0 aW9uKHNjcmlwdFRhZykgewogICAgICByZXR1cm4gKHNjcmlwdFRhZy5tYXRjaCht YXRjaE9uZSkgfHwgWycnLCAnJ10pWzFdOwogICAgfSk7CiAgfSwKCiAgZXZhbFNj cmlwdHM6IGZ1bmN0aW9uKCkgewogICAgcmV0dXJuIHRoaXMuZXh0cmFjdFNjcmlw dHMoKS5tYXAoZnVuY3Rpb24oc2NyaXB0KSB7IHJldHVybiBldmFsKHNjcmlwdCkg fSk7CiAgfSwKCiAgZXNjYXBlSFRNTDogZnVuY3Rpb24oKSB7CiAgICB2YXIgc2Vs ZiA9IGFyZ3VtZW50cy5jYWxsZWU7CiAgICBzZWxmLnRleHQuZGF0YSA9IHRoaXM7 CiAgICByZXR1cm4gc2VsZi5kaXYuaW5uZXJIVE1MOwogIH0sCgogIHVuZXNjYXBl SFRNTDogZnVuY3Rpb24oKSB7CiAgICB2YXIgZGl2ID0gbmV3IEVsZW1lbnQoJ2Rp dicpOwogICAgZGl2LmlubmVySFRNTCA9IHRoaXMuc3RyaXBUYWdzKCk7CiAgICBy ZXR1cm4gZGl2LmNoaWxkTm9kZXNbMF0gPyAoZGl2LmNoaWxkTm9kZXMubGVuZ3Ro ID4gMSA/CiAgICAgICRBKGRpdi5jaGlsZE5vZGVzKS5pbmplY3QoJycsIGZ1bmN0 aW9uKG1lbW8sIG5vZGUpIHsgcmV0dXJuIG1lbW8rbm9kZS5ub2RlVmFsdWUgfSkg OgogICAgICBkaXYuY2hpbGROb2Rlc1swXS5ub2RlVmFsdWUpIDogJyc7CiAgfSwK CiAgdG9RdWVyeVBhcmFtczogZnVuY3Rpb24oc2VwYXJhdG9yKSB7CiAgICB2YXIg bWF0Y2ggPSB0aGlzLnN0cmlwKCkubWF0Y2goLyhbXj8jXSopKCMuKik/JC8pOwog ICAgaWYgKCFtYXRjaCkgcmV0dXJuIHsgfTsKCiAgICByZXR1cm4gbWF0Y2hbMV0u c3BsaXQoc2VwYXJhdG9yIHx8ICcmJykuaW5qZWN0KHsgfSwgZnVuY3Rpb24oaGFz aCwgcGFpcikgewogICAgICBpZiAoKHBhaXIgPSBwYWlyLnNwbGl0KCc9JykpWzBd KSB7CiAgICAgICAgdmFyIGtleSA9IGRlY29kZVVSSUNvbXBvbmVudChwYWlyLnNo aWZ0KCkpOwogICAgICAgIHZhciB2YWx1ZSA9IHBhaXIubGVuZ3RoID4gMSA/IHBh aXIuam9pbignPScpIDogcGFpclswXTsKICAgICAgICBpZiAodmFsdWUgIT0gdW5k ZWZpbmVkKSB2YWx1ZSA9IGRlY29kZVVSSUNvbXBvbmVudCh2YWx1ZSk7CgogICAg ICAgIGlmIChrZXkgaW4gaGFzaCkgewogICAgICAgICAgaWYgKCFPYmplY3QuaXNB cnJheShoYXNoW2tleV0pKSBoYXNoW2tleV0gPSBbaGFzaFtrZXldXTsKICAgICAg ICAgIGhhc2hba2V5XS5wdXNoKHZhbHVlKTsKICAgICAgICB9CiAgICAgICAgZWxz ZSBoYXNoW2tleV0gPSB2YWx1ZTsKICAgICAgfQogICAgICByZXR1cm4gaGFzaDsK ICAgIH0pOwogIH0sCgogIHRvQXJyYXk6IGZ1bmN0aW9uKCkgewogICAgcmV0dXJu IHRoaXMuc3BsaXQoJycpOwogIH0sCgogIHN1Y2M6IGZ1bmN0aW9uKCkgewogICAg cmV0dXJuIHRoaXMuc2xpY2UoMCwgdGhpcy5sZW5ndGggLSAxKSArCiAgICAgIFN0 cmluZy5mcm9tQ2hhckNvZGUodGhpcy5jaGFyQ29kZUF0KHRoaXMubGVuZ3RoIC0g MSkgKyAxKTsKICB9LAoKICB0aW1lczogZnVuY3Rpb24oY291bnQpIHsKICAgIHJl dHVybiBjb3VudCA8IDEgPyAnJyA6IG5ldyBBcnJheShjb3VudCArIDEpLmpvaW4o dGhpcyk7CiAgfSwKCiAgY2FtZWxpemU6IGZ1bmN0aW9uKCkgewogICAgdmFyIHBh cnRzID0gdGhpcy5zcGxpdCgnLScpLCBsZW4gPSBwYXJ0cy5sZW5ndGg7CiAgICBp ZiAobGVuID09IDEpIHJldHVybiBwYXJ0c1swXTsKCiAgICB2YXIgY2FtZWxpemVk ID0gdGhpcy5jaGFyQXQoMCkgPT0gJy0nCiAgICAgID8gcGFydHNbMF0uY2hhckF0 KDApLnRvVXBwZXJDYXNlKCkgKyBwYXJ0c1swXS5zdWJzdHJpbmcoMSkKICAgICAg OiBwYXJ0c1swXTsKCiAgICBmb3IgKHZhciBpID0gMTsgaSA8IGxlbjsgaSsrKQog ICAgICBjYW1lbGl6ZWQgKz0gcGFydHNbaV0uY2hhckF0KDApLnRvVXBwZXJDYXNl KCkgKyBwYXJ0c1tpXS5zdWJzdHJpbmcoMSk7CgogICAgcmV0dXJuIGNhbWVsaXpl ZDsKICB9LAoKICBjYXBpdGFsaXplOiBmdW5jdGlvbigpIHsKICAgIHJldHVybiB0 aGlzLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgdGhpcy5zdWJzdHJpbmcoMSku dG9Mb3dlckNhc2UoKTsKICB9LAoKICB1bmRlcnNjb3JlOiBmdW5jdGlvbigpIHsK ICAgIHJldHVybiB0aGlzLmdzdWIoLzo6LywgJy8nKS5nc3ViKC8oW0EtWl0rKShb QS1aXVthLXpdKS8sJyN7MX1fI3syfScpLmdzdWIoLyhbYS16XGRdKShbQS1aXSkv LCcjezF9XyN7Mn0nKS5nc3ViKC8tLywnXycpLnRvTG93ZXJDYXNlKCk7CiAgfSwK CiAgZGFzaGVyaXplOiBmdW5jdGlvbigpIHsKICAgIHJldHVybiB0aGlzLmdzdWIo L18vLCctJyk7CiAgfSwKCiAgaW5zcGVjdDogZnVuY3Rpb24odXNlRG91YmxlUXVv dGVzKSB7CiAgICB2YXIgZXNjYXBlZFN0cmluZyA9IHRoaXMuZ3N1YigvW1x4MDAt XHgxZlxcXS8sIGZ1bmN0aW9uKG1hdGNoKSB7CiAgICAgIHZhciBjaGFyYWN0ZXIg PSBTdHJpbmcuc3BlY2lhbENoYXJbbWF0Y2hbMF1dOwogICAgICByZXR1cm4gY2hh cmFjdGVyID8gY2hhcmFjdGVyIDogJ1xcdTAwJyArIG1hdGNoWzBdLmNoYXJDb2Rl QXQoKS50b1BhZGRlZFN0cmluZygyLCAxNik7CiAgICB9KTsKICAgIGlmICh1c2VE b3VibGVRdW90ZXMpIHJldHVybiAnIicgKyBlc2NhcGVkU3RyaW5nLnJlcGxhY2Uo LyIvZywgJ1xcIicpICsgJyInOwogICAgcmV0dXJuICInIiArIGVzY2FwZWRTdHJp bmcucmVwbGFjZSgvJy9nLCAnXFxcJycpICsgIiciOwogIH0sCgogIHRvSlNPTjog ZnVuY3Rpb24oKSB7CiAgICByZXR1cm4gdGhpcy5pbnNwZWN0KHRydWUpOwogIH0s CgogIHVuZmlsdGVySlNPTjogZnVuY3Rpb24oZmlsdGVyKSB7CiAgICByZXR1cm4g dGhpcy5zdWIoZmlsdGVyIHx8IFByb3RvdHlwZS5KU09ORmlsdGVyLCAnI3sxfScp OwogIH0sCgogIGlzSlNPTjogZnVuY3Rpb24oKSB7CiAgICB2YXIgc3RyID0gdGhp czsKICAgIGlmIChzdHIuYmxhbmsoKSkgcmV0dXJuIGZhbHNlOwogICAgc3RyID0g dGhpcy5yZXBsYWNlKC9cXC4vZywgJ0AnKS5yZXBsYWNlKC8iW14iXFxcblxyXSoi L2csICcnKTsKICAgIHJldHVybiAoL15bLDp7fVxbXF0wLTkuXC0rRWFlZmxuci11 IFxuXHJcdF0qJC8pLnRlc3Qoc3RyKTsKICB9LAoKICBldmFsSlNPTjogZnVuY3Rp b24oc2FuaXRpemUpIHsKICAgIHZhciBqc29uID0gdGhpcy51bmZpbHRlckpTT04o KTsKICAgIHRyeSB7CiAgICAgIGlmICghc2FuaXRpemUgfHwganNvbi5pc0pTT04o KSkgcmV0dXJuIGV2YWwoJygnICsganNvbiArICcpJyk7CiAgICB9IGNhdGNoIChl KSB7IH0KICAgIHRocm93IG5ldyBTeW50YXhFcnJvcignQmFkbHkgZm9ybWVkIEpT T04gc3RyaW5nOiAnICsgdGhpcy5pbnNwZWN0KCkpOwogIH0sCgogIGluY2x1ZGU6 IGZ1bmN0aW9uKHBhdHRlcm4pIHsKICAgIHJldHVybiB0aGlzLmluZGV4T2YocGF0 dGVybikgPiAtMTsKICB9LAoKICBzdGFydHNXaXRoOiBmdW5jdGlvbihwYXR0ZXJu KSB7CiAgICByZXR1cm4gdGhpcy5pbmRleE9mKHBhdHRlcm4pID09PSAwOwogIH0s CgogIGVuZHNXaXRoOiBmdW5jdGlvbihwYXR0ZXJuKSB7CiAgICB2YXIgZCA9IHRo aXMubGVuZ3RoIC0gcGF0dGVybi5sZW5ndGg7CiAgICByZXR1cm4gZCA+PSAwICYm IHRoaXMubGFzdEluZGV4T2YocGF0dGVybikgPT09IGQ7CiAgfSwKCiAgZW1wdHk6 IGZ1bmN0aW9uKCkgewogICAgcmV0dXJuIHRoaXMgPT0gJyc7CiAgfSwKCiAgYmxh bms6IGZ1bmN0aW9uKCkgewogICAgcmV0dXJuIC9eXHMqJC8udGVzdCh0aGlzKTsK ICB9LAoKICBpbnRlcnBvbGF0ZTogZnVuY3Rpb24ob2JqZWN0LCBwYXR0ZXJuKSB7 CiAgICByZXR1cm4gbmV3IFRlbXBsYXRlKHRoaXMsIHBhdHRlcm4pLmV2YWx1YXRl KG9iamVjdCk7CiAgfQp9KTsKCmlmIChQcm90b3R5cGUuQnJvd3Nlci5XZWJLaXQg fHwgUHJvdG90eXBlLkJyb3dzZXIuSUUpIE9iamVjdC5leHRlbmQoU3RyaW5nLnBy b3RvdHlwZSwgewogIGVzY2FwZUhUTUw6IGZ1bmN0aW9uKCkgewogICAgcmV0dXJu IHRoaXMucmVwbGFjZSgvJi9nLCcmYW1wOycpLnJlcGxhY2UoLzwvZywnJmx0Oycp LnJlcGxhY2UoLz4vZywnJmd0OycpOwogIH0sCiAgdW5lc2NhcGVIVE1MOiBmdW5j dGlvbigpIHsKICAgIHJldHVybiB0aGlzLnJlcGxhY2UoLyZhbXA7L2csJyYnKS5y ZXBsYWNlKC8mbHQ7L2csJzwnKS5yZXBsYWNlKC8mZ3Q7L2csJz4nKTsKICB9Cn0p OwoKU3RyaW5nLnByb3RvdHlwZS5nc3ViLnByZXBhcmVSZXBsYWNlbWVudCA9IGZ1 bmN0aW9uKHJlcGxhY2VtZW50KSB7CiAgaWYgKE9iamVjdC5pc0Z1bmN0aW9uKHJl cGxhY2VtZW50KSkgcmV0dXJuIHJlcGxhY2VtZW50OwogIHZhciB0ZW1wbGF0ZSA9 IG5ldyBUZW1wbGF0ZShyZXBsYWNlbWVudCk7CiAgcmV0dXJuIGZ1bmN0aW9uKG1h dGNoKSB7IHJldHVybiB0ZW1wbGF0ZS5ldmFsdWF0ZShtYXRjaCkgfTsKfTsKClN0 cmluZy5wcm90b3R5cGUucGFyc2VRdWVyeSA9IFN0cmluZy5wcm90b3R5cGUudG9R dWVyeVBhcmFtczsKCk9iamVjdC5leHRlbmQoU3RyaW5nLnByb3RvdHlwZS5lc2Nh cGVIVE1MLCB7CiAgZGl2OiAgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyks CiAgdGV4dDogZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoJycpCn0pOwoKd2l0aCAo U3RyaW5nLnByb3RvdHlwZS5lc2NhcGVIVE1MKSBkaXYuYXBwZW5kQ2hpbGQodGV4 dCk7Cgp2YXIgVGVtcGxhdGUgPSBDbGFzcy5jcmVhdGUoewogIGluaXRpYWxpemU6 IGZ1bmN0aW9uKHRlbXBsYXRlLCBwYXR0ZXJuKSB7CiAgICB0aGlzLnRlbXBsYXRl ID0gdGVtcGxhdGUudG9TdHJpbmcoKTsKICAgIHRoaXMucGF0dGVybiA9IHBhdHRl cm4gfHwgVGVtcGxhdGUuUGF0dGVybjsKICB9LAoKICBldmFsdWF0ZTogZnVuY3Rp b24ob2JqZWN0KSB7CiAgICBpZiAoT2JqZWN0LmlzRnVuY3Rpb24ob2JqZWN0LnRv VGVtcGxhdGVSZXBsYWNlbWVudHMpKQogICAgICBvYmplY3QgPSBvYmplY3QudG9U ZW1wbGF0ZVJlcGxhY2VtZW50cygpOwoKICAgIHJldHVybiB0aGlzLnRlbXBsYXRl LmdzdWIodGhpcy5wYXR0ZXJuLCBmdW5jdGlvbihtYXRjaCkgewogICAgICBpZiAo b2JqZWN0ID09IG51bGwpIHJldHVybiAnJzsKCiAgICAgIHZhciBiZWZvcmUgPSBt YXRjaFsxXSB8fCAnJzsKICAgICAgaWYgKGJlZm9yZSA9PSAnXFwnKSByZXR1cm4g bWF0Y2hbMl07CgogICAgICB2YXIgY3R4ID0gb2JqZWN0LCBleHByID0gbWF0Y2hb M107CiAgICAgIHZhciBwYXR0ZXJuID0gL14oW14uW10rfFxbKCg/Oi4qP1teXFxd KT8pXF0pKFwufFxbfCQpLzsKICAgICAgbWF0Y2ggPSBwYXR0ZXJuLmV4ZWMoZXhw cik7CiAgICAgIGlmIChtYXRjaCA9PSBudWxsKSByZXR1cm4gYmVmb3JlOwoKICAg ICAgd2hpbGUgKG1hdGNoICE9IG51bGwpIHsKICAgICAgICB2YXIgY29tcCA9IG1h dGNoWzFdLnN0YXJ0c1dpdGgoJ1snKSA/IG1hdGNoWzJdLmdzdWIoJ1xcXFxdJywg J10nKSA6IG1hdGNoWzFdOwogICAgICAgIGN0eCA9IGN0eFtjb21wXTsKICAgICAg ICBpZiAobnVsbCA9PSBjdHggfHwgJycgPT0gbWF0Y2hbM10pIGJyZWFrOwogICAg ICAgIGV4cHIgPSBleHByLnN1YnN0cmluZygnWycgPT0gbWF0Y2hbM10gPyBtYXRj aFsxXS5sZW5ndGggOiBtYXRjaFswXS5sZW5ndGgpOwogICAgICAgIG1hdGNoID0g cGF0dGVybi5leGVjKGV4cHIpOwogICAgICB9CgogICAgICByZXR1cm4gYmVmb3Jl ICsgU3RyaW5nLmludGVycHJldChjdHgpOwogICAgfSk7CiAgfQp9KTsKVGVtcGxh dGUuUGF0dGVybiA9IC8oXnwufFxyfFxuKSgjXHsoLio/KVx9KS87Cgp2YXIgJGJy ZWFrID0geyB9OwoKdmFyIEVudW1lcmFibGUgPSB7CiAgZWFjaDogZnVuY3Rpb24o aXRlcmF0b3IsIGNvbnRleHQpIHsKICAgIHZhciBpbmRleCA9IDA7CiAgICBpdGVy YXRvciA9IGl0ZXJhdG9yLmJpbmQoY29udGV4dCk7CiAgICB0cnkgewogICAgICB0 aGlzLl9lYWNoKGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgaXRlcmF0b3IodmFs dWUsIGluZGV4KyspOwogICAgICB9KTsKICAgIH0gY2F0Y2ggKGUpIHsKICAgICAg aWYgKGUgIT0gJGJyZWFrKSB0aHJvdyBlOwogICAgfQogICAgcmV0dXJuIHRoaXM7 CiAgfSwKCiAgZWFjaFNsaWNlOiBmdW5jdGlvbihudW1iZXIsIGl0ZXJhdG9yLCBj b250ZXh0KSB7CiAgICBpdGVyYXRvciA9IGl0ZXJhdG9yID8gaXRlcmF0b3IuYmlu ZChjb250ZXh0KSA6IFByb3RvdHlwZS5LOwogICAgdmFyIGluZGV4ID0gLW51bWJl ciwgc2xpY2VzID0gW10sIGFycmF5ID0gdGhpcy50b0FycmF5KCk7CiAgICB3aGls ZSAoKGluZGV4ICs9IG51bWJlcikgPCBhcnJheS5sZW5ndGgpCiAgICAgIHNsaWNl cy5wdXNoKGFycmF5LnNsaWNlKGluZGV4LCBpbmRleCtudW1iZXIpKTsKICAgIHJl dHVybiBzbGljZXMuY29sbGVjdChpdGVyYXRvciwgY29udGV4dCk7CiAgfSwKCiAg YWxsOiBmdW5jdGlvbihpdGVyYXRvciwgY29udGV4dCkgewogICAgaXRlcmF0b3Ig PSBpdGVyYXRvciA/IGl0ZXJhdG9yLmJpbmQoY29udGV4dCkgOiBQcm90b3R5cGUu SzsKICAgIHZhciByZXN1bHQgPSB0cnVlOwogICAgdGhpcy5lYWNoKGZ1bmN0aW9u KHZhbHVlLCBpbmRleCkgewogICAgICByZXN1bHQgPSByZXN1bHQgJiYgISFpdGVy YXRvcih2YWx1ZSwgaW5kZXgpOwogICAgICBpZiAoIXJlc3VsdCkgdGhyb3cgJGJy ZWFrOwogICAgfSk7CiAgICByZXR1cm4gcmVzdWx0OwogIH0sCgogIGFueTogZnVu Y3Rpb24oaXRlcmF0b3IsIGNvbnRleHQpIHsKICAgIGl0ZXJhdG9yID0gaXRlcmF0 b3IgPyBpdGVyYXRvci5iaW5kKGNvbnRleHQpIDogUHJvdG90eXBlLks7CiAgICB2 YXIgcmVzdWx0ID0gZmFsc2U7CiAgICB0aGlzLmVhY2goZnVuY3Rpb24odmFsdWUs IGluZGV4KSB7CiAgICAgIGlmIChyZXN1bHQgPSAhIWl0ZXJhdG9yKHZhbHVlLCBp bmRleCkpCiAgICAgICAgdGhyb3cgJGJyZWFrOwogICAgfSk7CiAgICByZXR1cm4g cmVzdWx0OwogIH0sCgogIGNvbGxlY3Q6IGZ1bmN0aW9uKGl0ZXJhdG9yLCBjb250 ZXh0KSB7CiAgICBpdGVyYXRvciA9IGl0ZXJhdG9yID8gaXRlcmF0b3IuYmluZChj b250ZXh0KSA6IFByb3RvdHlwZS5LOwogICAgdmFyIHJlc3VsdHMgPSBbXTsKICAg IHRoaXMuZWFjaChmdW5jdGlvbih2YWx1ZSwgaW5kZXgpIHsKICAgICAgcmVzdWx0 cy5wdXNoKGl0ZXJhdG9yKHZhbHVlLCBpbmRleCkpOwogICAgfSk7CiAgICByZXR1 cm4gcmVzdWx0czsKICB9LAoKICBkZXRlY3Q6IGZ1bmN0aW9uKGl0ZXJhdG9yLCBj b250ZXh0KSB7CiAgICBpdGVyYXRvciA9IGl0ZXJhdG9yLmJpbmQoY29udGV4dCk7 CiAgICB2YXIgcmVzdWx0OwogICAgdGhpcy5lYWNoKGZ1bmN0aW9uKHZhbHVlLCBp bmRleCkgewogICAgICBpZiAoaXRlcmF0b3IodmFsdWUsIGluZGV4KSkgewogICAg ICAgIHJlc3VsdCA9IHZhbHVlOwogICAgICAgIHRocm93ICRicmVhazsKICAgICAg fQogICAgfSk7CiAgICByZXR1cm4gcmVzdWx0OwogIH0sCgogIGZpbmRBbGw6IGZ1 bmN0aW9uKGl0ZXJhdG9yLCBjb250ZXh0KSB7CiAgICBpdGVyYXRvciA9IGl0ZXJh dG9yLmJpbmQoY29udGV4dCk7CiAgICB2YXIgcmVzdWx0cyA9IFtdOwogICAgdGhp cy5lYWNoKGZ1bmN0aW9uKHZhbHVlLCBpbmRleCkgewogICAgICBpZiAoaXRlcmF0 b3IodmFsdWUsIGluZGV4KSkKICAgICAgICByZXN1bHRzLnB1c2godmFsdWUpOwog ICAgfSk7CiAgICByZXR1cm4gcmVzdWx0czsKICB9LAoKICBncmVwOiBmdW5jdGlv bihmaWx0ZXIsIGl0ZXJhdG9yLCBjb250ZXh0KSB7CiAgICBpdGVyYXRvciA9IGl0 ZXJhdG9yID8gaXRlcmF0b3IuYmluZChjb250ZXh0KSA6IFByb3RvdHlwZS5LOwog ICAgdmFyIHJlc3VsdHMgPSBbXTsKCiAgICBpZiAoT2JqZWN0LmlzU3RyaW5nKGZp bHRlcikpCiAgICAgIGZpbHRlciA9IG5ldyBSZWdFeHAoZmlsdGVyKTsKCiAgICB0 aGlzLmVhY2goZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgIGlmIChmaWx0 ZXIubWF0Y2godmFsdWUpKQogICAgICAgIHJlc3VsdHMucHVzaChpdGVyYXRvcih2 YWx1ZSwgaW5kZXgpKTsKICAgIH0pOwogICAgcmV0dXJuIHJlc3VsdHM7CiAgfSwK CiAgaW5jbHVkZTogZnVuY3Rpb24ob2JqZWN0KSB7CiAgICBpZiAoT2JqZWN0Lmlz RnVuY3Rpb24odGhpcy5pbmRleE9mKSkKICAgICAgaWYgKHRoaXMuaW5kZXhPZihv YmplY3QpICE9IC0xKSByZXR1cm4gdHJ1ZTsKCiAgICB2YXIgZm91bmQgPSBmYWxz ZTsKICAgIHRoaXMuZWFjaChmdW5jdGlvbih2YWx1ZSkgewogICAgICBpZiAodmFs dWUgPT0gb2JqZWN0KSB7CiAgICAgICAgZm91bmQgPSB0cnVlOwogICAgICAgIHRo cm93ICRicmVhazsKICAgICAgfQogICAgfSk7CiAgICByZXR1cm4gZm91bmQ7CiAg fSwKCiAgaW5Hcm91cHNPZjogZnVuY3Rpb24obnVtYmVyLCBmaWxsV2l0aCkgewog ICAgZmlsbFdpdGggPSBPYmplY3QuaXNVbmRlZmluZWQoZmlsbFdpdGgpID8gbnVs bCA6IGZpbGxXaXRoOwogICAgcmV0dXJuIHRoaXMuZWFjaFNsaWNlKG51bWJlciwg ZnVuY3Rpb24oc2xpY2UpIHsKICAgICAgd2hpbGUoc2xpY2UubGVuZ3RoIDwgbnVt YmVyKSBzbGljZS5wdXNoKGZpbGxXaXRoKTsKICAgICAgcmV0dXJuIHNsaWNlOwog ICAgfSk7CiAgfSwKCiAgaW5qZWN0OiBmdW5jdGlvbihtZW1vLCBpdGVyYXRvciwg Y29udGV4dCkgewogICAgaXRlcmF0b3IgPSBpdGVyYXRvci5iaW5kKGNvbnRleHQp OwogICAgdGhpcy5lYWNoKGZ1bmN0aW9uKHZhbHVlLCBpbmRleCkgewogICAgICBt ZW1vID0gaXRlcmF0b3IobWVtbywgdmFsdWUsIGluZGV4KTsKICAgIH0pOwogICAg cmV0dXJuIG1lbW87CiAgfSwKCiAgaW52b2tlOiBmdW5jdGlvbihtZXRob2QpIHsK ICAgIHZhciBhcmdzID0gJEEoYXJndW1lbnRzKS5zbGljZSgxKTsKICAgIHJldHVy biB0aGlzLm1hcChmdW5jdGlvbih2YWx1ZSkgewogICAgICByZXR1cm4gdmFsdWVb bWV0aG9kXS5hcHBseSh2YWx1ZSwgYXJncyk7CiAgICB9KTsKICB9LAoKICBtYXg6 IGZ1bmN0aW9uKGl0ZXJhdG9yLCBjb250ZXh0KSB7CiAgICBpdGVyYXRvciA9IGl0 ZXJhdG9yID8gaXRlcmF0b3IuYmluZChjb250ZXh0KSA6IFByb3RvdHlwZS5LOwog ICAgdmFyIHJlc3VsdDsKICAgIHRoaXMuZWFjaChmdW5jdGlvbih2YWx1ZSwgaW5k ZXgpIHsKICAgICAgdmFsdWUgPSBpdGVyYXRvcih2YWx1ZSwgaW5kZXgpOwogICAg ICBpZiAocmVzdWx0ID09IG51bGwgfHwgdmFsdWUgPj0gcmVzdWx0KQogICAgICAg IHJlc3VsdCA9IHZhbHVlOwogICAgfSk7CiAgICByZXR1cm4gcmVzdWx0OwogIH0s CgogIG1pbjogZnVuY3Rpb24oaXRlcmF0b3IsIGNvbnRleHQpIHsKICAgIGl0ZXJh dG9yID0gaXRlcmF0b3IgPyBpdGVyYXRvci5iaW5kKGNvbnRleHQpIDogUHJvdG90 eXBlLks7CiAgICB2YXIgcmVzdWx0OwogICAgdGhpcy5lYWNoKGZ1bmN0aW9uKHZh bHVlLCBpbmRleCkgewogICAgICB2YWx1ZSA9IGl0ZXJhdG9yKHZhbHVlLCBpbmRl eCk7CiAgICAgIGlmIChyZXN1bHQgPT0gbnVsbCB8fCB2YWx1ZSA8IHJlc3VsdCkK ICAgICAgICByZXN1bHQgPSB2YWx1ZTsKICAgIH0pOwogICAgcmV0dXJuIHJlc3Vs dDsKICB9LAoKICBwYXJ0aXRpb246IGZ1bmN0aW9uKGl0ZXJhdG9yLCBjb250ZXh0 KSB7CiAgICBpdGVyYXRvciA9IGl0ZXJhdG9yID8gaXRlcmF0b3IuYmluZChjb250 ZXh0KSA6IFByb3RvdHlwZS5LOwogICAgdmFyIHRydWVzID0gW10sIGZhbHNlcyA9 IFtdOwogICAgdGhpcy5lYWNoKGZ1bmN0aW9uKHZhbHVlLCBpbmRleCkgewogICAg ICAoaXRlcmF0b3IodmFsdWUsIGluZGV4KSA/CiAgICAgICAgdHJ1ZXMgOiBmYWxz ZXMpLnB1c2godmFsdWUpOwogICAgfSk7CiAgICByZXR1cm4gW3RydWVzLCBmYWxz ZXNdOwogIH0sCgogIHBsdWNrOiBmdW5jdGlvbihwcm9wZXJ0eSkgewogICAgdmFy IHJlc3VsdHMgPSBbXTsKICAgIHRoaXMuZWFjaChmdW5jdGlvbih2YWx1ZSkgewog ICAgICByZXN1bHRzLnB1c2godmFsdWVbcHJvcGVydHldKTsKICAgIH0pOwogICAg cmV0dXJuIHJlc3VsdHM7CiAgfSwKCiAgcmVqZWN0OiBmdW5jdGlvbihpdGVyYXRv ciwgY29udGV4dCkgewogICAgaXRlcmF0b3IgPSBpdGVyYXRvci5iaW5kKGNvbnRl eHQpOwogICAgdmFyIHJlc3VsdHMgPSBbXTsKICAgIHRoaXMuZWFjaChmdW5jdGlv bih2YWx1ZSwgaW5kZXgpIHsKICAgICAgaWYgKCFpdGVyYXRvcih2YWx1ZSwgaW5k ZXgpKQogICAgICAgIHJlc3VsdHMucHVzaCh2YWx1ZSk7CiAgICB9KTsKICAgIHJl dHVybiByZXN1bHRzOwogIH0sCgogIHNvcnRCeTogZnVuY3Rpb24oaXRlcmF0b3Is IGNvbnRleHQpIHsKICAgIGl0ZXJhdG9yID0gaXRlcmF0b3IuYmluZChjb250ZXh0 KTsKICAgIHJldHVybiB0aGlzLm1hcChmdW5jdGlvbih2YWx1ZSwgaW5kZXgpIHsK ICAgICAgcmV0dXJuIHt2YWx1ZTogdmFsdWUsIGNyaXRlcmlhOiBpdGVyYXRvcih2 YWx1ZSwgaW5kZXgpfTsKICAgIH0pLnNvcnQoZnVuY3Rpb24obGVmdCwgcmlnaHQp IHsKICAgICAgdmFyIGEgPSBsZWZ0LmNyaXRlcmlhLCBiID0gcmlnaHQuY3JpdGVy aWE7CiAgICAgIHJldHVybiBhIDwgYiA/IC0xIDogYSA+IGIgPyAxIDogMDsKICAg IH0pLnBsdWNrKCd2YWx1ZScpOwogIH0sCgogIHRvQXJyYXk6IGZ1bmN0aW9uKCkg ewogICAgcmV0dXJuIHRoaXMubWFwKCk7CiAgfSwKCiAgemlwOiBmdW5jdGlvbigp IHsKICAgIHZhciBpdGVyYXRvciA9IFByb3RvdHlwZS5LLCBhcmdzID0gJEEoYXJn dW1lbnRzKTsKICAgIGlmIChPYmplY3QuaXNGdW5jdGlvbihhcmdzLmxhc3QoKSkp CiAgICAgIGl0ZXJhdG9yID0gYXJncy5wb3AoKTsKCiAgICB2YXIgY29sbGVjdGlv bnMgPSBbdGhpc10uY29uY2F0KGFyZ3MpLm1hcCgkQSk7CiAgICByZXR1cm4gdGhp cy5tYXAoZnVuY3Rpb24odmFsdWUsIGluZGV4KSB7CiAgICAgIHJldHVybiBpdGVy YXRvcihjb2xsZWN0aW9ucy5wbHVjayhpbmRleCkpOwogICAgfSk7CiAgfSwKCiAg c2l6ZTogZnVuY3Rpb24oKSB7CiAgICByZXR1cm4gdGhpcy50b0FycmF5KCkubGVu Z3RoOwogIH0sCgogIGluc3BlY3Q6IGZ1bmN0aW9uKCkgewogICAgcmV0dXJuICcj PEVudW1lcmFibGU6JyArIHRoaXMudG9BcnJheSgpLmluc3BlY3QoKSArICc+JzsK ICB9Cn07CgpPYmplY3QuZXh0ZW5kKEVudW1lcmFibGUsIHsKICBtYXA6ICAgICBF bnVtZXJhYmxlLmNvbGxlY3QsCiAgZmluZDogICAgRW51bWVyYWJsZS5kZXRlY3Qs CiAgc2VsZWN0OiAgRW51bWVyYWJsZS5maW5kQWxsLAogIGZpbHRlcjogIEVudW1l cmFibGUuZmluZEFsbCwKICBtZW1iZXI6ICBFbnVtZXJhYmxlLmluY2x1ZGUsCiAg ZW50cmllczogRW51bWVyYWJsZS50b0FycmF5LAogIGV2ZXJ5OiAgIEVudW1lcmFi bGUuYWxsLAogIHNvbWU6ICAgIEVudW1lcmFibGUuYW55Cn0pOwpmdW5jdGlvbiAk QShpdGVyYWJsZSkgewogIGlmICghaXRlcmFibGUpIHJldHVybiBbXTsKICBpZiAo aXRlcmFibGUudG9BcnJheSkgcmV0dXJuIGl0ZXJhYmxlLnRvQXJyYXkoKTsKICB2 YXIgbGVuZ3RoID0gaXRlcmFibGUubGVuZ3RoIHx8IDAsIHJlc3VsdHMgPSBuZXcg QXJyYXkobGVuZ3RoKTsKICB3aGlsZSAobGVuZ3RoLS0pIHJlc3VsdHNbbGVuZ3Ro XSA9IGl0ZXJhYmxlW2xlbmd0aF07CiAgcmV0dXJuIHJlc3VsdHM7Cn0KCmlmIChQ cm90b3R5cGUuQnJvd3Nlci5XZWJLaXQpIHsKICAkQSA9IGZ1bmN0aW9uKGl0ZXJh YmxlKSB7CiAgICBpZiAoIWl0ZXJhYmxlKSByZXR1cm4gW107CiAgICBpZiAoIShP YmplY3QuaXNGdW5jdGlvbihpdGVyYWJsZSkgJiYgaXRlcmFibGUgPT0gJ1tvYmpl Y3QgTm9kZUxpc3RdJykgJiYKICAgICAgICBpdGVyYWJsZS50b0FycmF5KSByZXR1 cm4gaXRlcmFibGUudG9BcnJheSgpOwogICAgdmFyIGxlbmd0aCA9IGl0ZXJhYmxl Lmxlbmd0aCB8fCAwLCByZXN1bHRzID0gbmV3IEFycmF5KGxlbmd0aCk7CiAgICB3 aGlsZSAobGVuZ3RoLS0pIHJlc3VsdHNbbGVuZ3RoXSA9IGl0ZXJhYmxlW2xlbmd0 aF07CiAgICByZXR1cm4gcmVzdWx0czsKICB9Owp9CgpBcnJheS5mcm9tID0gJEE7 CgpPYmplY3QuZXh0ZW5kKEFycmF5LnByb3RvdHlwZSwgRW51bWVyYWJsZSk7Cgpp ZiAoIUFycmF5LnByb3RvdHlwZS5fcmV2ZXJzZSkgQXJyYXkucHJvdG90eXBlLl9y ZXZlcnNlID0gQXJyYXkucHJvdG90eXBlLnJldmVyc2U7CgpPYmplY3QuZXh0ZW5k KEFycmF5LnByb3RvdHlwZSwgewogIF9lYWNoOiBmdW5jdGlvbihpdGVyYXRvcikg ewogICAgZm9yICh2YXIgaSA9IDAsIGxlbmd0aCA9IHRoaXMubGVuZ3RoOyBpIDwg bGVuZ3RoOyBpKyspCiAgICAgIGl0ZXJhdG9yKHRoaXNbaV0pOwogIH0sCgogIGNs ZWFyOiBmdW5jdGlvbigpIHsKICAgIHRoaXMubGVuZ3RoID0gMDsKICAgIHJldHVy biB0aGlzOwogIH0sCgogIGZpcnN0OiBmdW5jdGlvbigpIHsKICAgIHJldHVybiB0 aGlzWzBdOwogIH0sCgogIGxhc3Q6IGZ1bmN0aW9uKCkgewogICAgcmV0dXJuIHRo aXNbdGhpcy5sZW5ndGggLSAxXTsKICB9LAoKICBjb21wYWN0OiBmdW5jdGlvbigp IHsKICAgIHJldHVybiB0aGlzLnNlbGVjdChmdW5jdGlvbih2YWx1ZSkgewogICAg ICByZXR1cm4gdmFsdWUgIT0gbnVsbDsKICAgIH0pOwogIH0sCgogIGZsYXR0ZW46 IGZ1bmN0aW9uKCkgewogICAgcmV0dXJuIHRoaXMuaW5qZWN0KFtdLCBmdW5jdGlv bihhcnJheSwgdmFsdWUpIHsKICAgICAgcmV0dXJuIGFycmF5LmNvbmNhdChPYmpl Y3QuaXNBcnJheSh2YWx1ZSkgPwogICAgICAgIHZhbHVlLmZsYXR0ZW4oKSA6IFt2 YWx1ZV0pOwogICAgfSk7CiAgfSwKCiAgd2l0aG91dDogZnVuY3Rpb24oKSB7CiAg ICB2YXIgdmFsdWVzID0gJEEoYXJndW1lbnRzKTsKICAgIHJldHVybiB0aGlzLnNl bGVjdChmdW5jdGlvbih2YWx1ZSkgewogICAgICByZXR1cm4gIXZhbHVlcy5pbmNs dWRlKHZhbHVlKTsKICAgIH0pOwogIH0sCgogIHJldmVyc2U6IGZ1bmN0aW9uKGlu bGluZSkgewogICAgcmV0dXJuIChpbmxpbmUgIT09IGZhbHNlID8gdGhpcyA6IHRo aXMudG9BcnJheSgpKS5fcmV2ZXJzZSgpOwogIH0sCgogIHJlZHVjZTogZnVuY3Rp b24oKSB7CiAgICByZXR1cm4gdGhpcy5sZW5ndGggPiAxID8gdGhpcyA6IHRoaXNb MF07CiAgfSwKCiAgdW5pcTogZnVuY3Rpb24oc29ydGVkKSB7CiAgICByZXR1cm4g dGhpcy5pbmplY3QoW10sIGZ1bmN0aW9uKGFycmF5LCB2YWx1ZSwgaW5kZXgpIHsK ICAgICAgaWYgKDAgPT0gaW5kZXggfHwgKHNvcnRlZCA/IGFycmF5Lmxhc3QoKSAh PSB2YWx1ZSA6ICFhcnJheS5pbmNsdWRlKHZhbHVlKSkpCiAgICAgICAgYXJyYXku cHVzaCh2YWx1ZSk7CiAgICAgIHJldHVybiBhcnJheTsKICAgIH0pOwogIH0sCgog IGludGVyc2VjdDogZnVuY3Rpb24oYXJyYXkpIHsKICAgIHJldHVybiB0aGlzLnVu aXEoKS5maW5kQWxsKGZ1bmN0aW9uKGl0ZW0pIHsKICAgICAgcmV0dXJuIGFycmF5 LmRldGVjdChmdW5jdGlvbih2YWx1ZSkgeyByZXR1cm4gaXRlbSA9PT0gdmFsdWUg fSk7CiAgICB9KTsKICB9LAoKICBjbG9uZTogZnVuY3Rpb24oKSB7CiAgICByZXR1 cm4gW10uY29uY2F0KHRoaXMpOwogIH0sCgogIHNpemU6IGZ1bmN0aW9uKCkgewog ICAgcmV0dXJuIHRoaXMubGVuZ3RoOwogIH0sCgogIGluc3BlY3Q6IGZ1bmN0aW9u KCkgewogICAgcmV0dXJuICdbJyArIHRoaXMubWFwKE9iamVjdC5pbnNwZWN0KS5q b2luKCcsICcpICsgJ10nOwogIH0sCgogIHRvSlNPTjogZnVuY3Rpb24oKSB7CiAg ICB2YXIgcmVzdWx0cyA9IFtdOwogICAgdGhpcy5lYWNoKGZ1bmN0aW9uKG9iamVj dCkgewogICAgICB2YXIgdmFsdWUgPSBPYmplY3QudG9KU09OKG9iamVjdCk7CiAg ICAgIGlmICghT2JqZWN0LmlzVW5kZWZpbmVkKHZhbHVlKSkgcmVzdWx0cy5wdXNo KHZhbHVlKTsKICAgIH0pOwogICAgcmV0dXJuICdbJyArIHJlc3VsdHMuam9pbign LCAnKSArICddJzsKICB9Cn0pOwoKLy8gdXNlIG5hdGl2ZSBicm93c2VyIEpTIDEu NiBpbXBsZW1lbnRhdGlvbiBpZiBhdmFpbGFibGUKaWYgKE9iamVjdC5pc0Z1bmN0 aW9uKEFycmF5LnByb3RvdHlwZS5mb3JFYWNoKSkKICBBcnJheS5wcm90b3R5cGUu X2VhY2ggPSBBcnJheS5wcm90b3R5cGUuZm9yRWFjaDsKCmlmICghQXJyYXkucHJv dG90eXBlLmluZGV4T2YpIEFycmF5LnByb3RvdHlwZS5pbmRleE9mID0gZnVuY3Rp b24oaXRlbSwgaSkgewogIGkgfHwgKGkgPSAwKTsKICB2YXIgbGVuZ3RoID0gdGhp cy5sZW5ndGg7CiAgaWYgKGkgPCAwKSBpID0gbGVuZ3RoICsgaTsKICBmb3IgKDsg aSA8IGxlbmd0aDsgaSsrKQogICAgaWYgKHRoaXNbaV0gPT09IGl0ZW0pIHJldHVy biBpOwogIHJldHVybiAtMTsKfTsKCmlmICghQXJyYXkucHJvdG90eXBlLmxhc3RJ bmRleE9mKSBBcnJheS5wcm90b3R5cGUubGFzdEluZGV4T2YgPSBmdW5jdGlvbihp dGVtLCBpKSB7CiAgaSA9IGlzTmFOKGkpID8gdGhpcy5sZW5ndGggOiAoaSA8IDAg PyB0aGlzLmxlbmd0aCArIGkgOiBpKSArIDE7CiAgdmFyIG4gPSB0aGlzLnNsaWNl KDAsIGkpLnJldmVyc2UoKS5pbmRleE9mKGl0ZW0pOwogIHJldHVybiAobiA8IDAp ID8gbiA6IGkgLSBuIC0gMTsKfTsKCkFycmF5LnByb3RvdHlwZS50b0FycmF5ID0g QXJyYXkucHJvdG90eXBlLmNsb25lOwoKZnVuY3Rpb24gJHcoc3RyaW5nKSB7CiAg aWYgKCFPYmplY3QuaXNTdHJpbmcoc3RyaW5nKSkgcmV0dXJuIFtdOwogIHN0cmlu ZyA9IHN0cmluZy5zdHJpcCgpOwogIHJldHVybiBzdHJpbmcgPyBzdHJpbmcuc3Bs aXQoL1xzKy8pIDogW107Cn0KCmlmIChQcm90b3R5cGUuQnJvd3Nlci5PcGVyYSl7 CiAgQXJyYXkucHJvdG90eXBlLmNvbmNhdCA9IGZ1bmN0aW9uKCkgewogICAgdmFy IGFycmF5ID0gW107CiAgICBmb3IgKHZhciBpID0gMCwgbGVuZ3RoID0gdGhpcy5s ZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykgYXJyYXkucHVzaCh0aGlzW2ldKTsKICAg IGZvciAodmFyIGkgPSAwLCBsZW5ndGggPSBhcmd1bWVudHMubGVuZ3RoOyBpIDwg bGVuZ3RoOyBpKyspIHsKICAgICAgaWYgKE9iamVjdC5pc0FycmF5KGFyZ3VtZW50 c1tpXSkpIHsKICAgICAgICBmb3IgKHZhciBqID0gMCwgYXJyYXlMZW5ndGggPSBh cmd1bWVudHNbaV0ubGVuZ3RoOyBqIDwgYXJyYXlMZW5ndGg7IGorKykKICAgICAg ICAgIGFycmF5LnB1c2goYXJndW1lbnRzW2ldW2pdKTsKICAgICAgfSBlbHNlIHsK ICAgICAgICBhcnJheS5wdXNoKGFyZ3VtZW50c1tpXSk7CiAgICAgIH0KICAgIH0K ICAgIHJldHVybiBhcnJheTsKICB9Owp9Ck9iamVjdC5leHRlbmQoTnVtYmVyLnBy b3RvdHlwZSwgewogIHRvQ29sb3JQYXJ0OiBmdW5jdGlvbigpIHsKICAgIHJldHVy biB0aGlzLnRvUGFkZGVkU3RyaW5nKDIsIDE2KTsKICB9LAoKICBzdWNjOiBmdW5j dGlvbigpIHsKICAgIHJldHVybiB0aGlzICsgMTsKICB9LAoKICB0aW1lczogZnVu Y3Rpb24oaXRlcmF0b3IpIHsKICAgICRSKDAsIHRoaXMsIHRydWUpLmVhY2goaXRl cmF0b3IpOwogICAgcmV0dXJuIHRoaXM7CiAgfSwKCiAgdG9QYWRkZWRTdHJpbmc6 IGZ1bmN0aW9uKGxlbmd0aCwgcmFkaXgpIHsKICAgIHZhciBzdHJpbmcgPSB0aGlz LnRvU3RyaW5nKHJhZGl4IHx8IDEwKTsKICAgIHJldHVybiAnMCcudGltZXMobGVu Z3RoIC0gc3RyaW5nLmxlbmd0aCkgKyBzdHJpbmc7CiAgfSwKCiAgdG9KU09OOiBm dW5jdGlvbigpIHsKICAgIHJldHVybiBpc0Zpbml0ZSh0aGlzKSA/IHRoaXMudG9T dHJpbmcoKSA6ICdudWxsJzsKICB9Cn0pOwoKJHcoJ2FicyByb3VuZCBjZWlsIGZs b29yJykuZWFjaChmdW5jdGlvbihtZXRob2QpewogIE51bWJlci5wcm90b3R5cGVb bWV0aG9kXSA9IE1hdGhbbWV0aG9kXS5tZXRob2RpemUoKTsKfSk7CmZ1bmN0aW9u ICRIKG9iamVjdCkgewogIHJldHVybiBuZXcgSGFzaChvYmplY3QpOwp9OwoKdmFy IEhhc2ggPSBDbGFzcy5jcmVhdGUoRW51bWVyYWJsZSwgKGZ1bmN0aW9uKCkgewoK ICBmdW5jdGlvbiB0b1F1ZXJ5UGFpcihrZXksIHZhbHVlKSB7CiAgICBpZiAoT2Jq ZWN0LmlzVW5kZWZpbmVkKHZhbHVlKSkgcmV0dXJuIGtleTsKICAgIHJldHVybiBr ZXkgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nLmludGVycHJldCh2 YWx1ZSkpOwogIH0KCiAgcmV0dXJuIHsKICAgIGluaXRpYWxpemU6IGZ1bmN0aW9u KG9iamVjdCkgewogICAgICB0aGlzLl9vYmplY3QgPSBPYmplY3QuaXNIYXNoKG9i amVjdCkgPyBvYmplY3QudG9PYmplY3QoKSA6IE9iamVjdC5jbG9uZShvYmplY3Qp OwogICAgfSwKCiAgICBfZWFjaDogZnVuY3Rpb24oaXRlcmF0b3IpIHsKICAgICAg Zm9yICh2YXIga2V5IGluIHRoaXMuX29iamVjdCkgewogICAgICAgIHZhciB2YWx1 ZSA9IHRoaXMuX29iamVjdFtrZXldLCBwYWlyID0gW2tleSwgdmFsdWVdOwogICAg ICAgIHBhaXIua2V5ID0ga2V5OwogICAgICAgIHBhaXIudmFsdWUgPSB2YWx1ZTsK ICAgICAgICBpdGVyYXRvcihwYWlyKTsKICAgICAgfQogICAgfSwKCiAgICBzZXQ6 IGZ1bmN0aW9uKGtleSwgdmFsdWUpIHsKICAgICAgcmV0dXJuIHRoaXMuX29iamVj dFtrZXldID0gdmFsdWU7CiAgICB9LAoKICAgIGdldDogZnVuY3Rpb24oa2V5KSB7 CiAgICAgIHJldHVybiB0aGlzLl9vYmplY3Rba2V5XTsKICAgIH0sCgogICAgdW5z ZXQ6IGZ1bmN0aW9uKGtleSkgewogICAgICB2YXIgdmFsdWUgPSB0aGlzLl9vYmpl Y3Rba2V5XTsKICAgICAgZGVsZXRlIHRoaXMuX29iamVjdFtrZXldOwogICAgICBy ZXR1cm4gdmFsdWU7CiAgICB9LAoKICAgIHRvT2JqZWN0OiBmdW5jdGlvbigpIHsK ICAgICAgcmV0dXJuIE9iamVjdC5jbG9uZSh0aGlzLl9vYmplY3QpOwogICAgfSwK CiAgICBrZXlzOiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIHRoaXMucGx1Y2so J2tleScpOwogICAgfSwKCiAgICB2YWx1ZXM6IGZ1bmN0aW9uKCkgewogICAgICBy ZXR1cm4gdGhpcy5wbHVjaygndmFsdWUnKTsKICAgIH0sCgogICAgaW5kZXg6IGZ1 bmN0aW9uKHZhbHVlKSB7CiAgICAgIHZhciBtYXRjaCA9IHRoaXMuZGV0ZWN0KGZ1 bmN0aW9uKHBhaXIpIHsKICAgICAgICByZXR1cm4gcGFpci52YWx1ZSA9PT0gdmFs dWU7CiAgICAgIH0pOwogICAgICByZXR1cm4gbWF0Y2ggJiYgbWF0Y2gua2V5Owog ICAgfSwKCiAgICBtZXJnZTogZnVuY3Rpb24ob2JqZWN0KSB7CiAgICAgIHJldHVy biB0aGlzLmNsb25lKCkudXBkYXRlKG9iamVjdCk7CiAgICB9LAoKICAgIHVwZGF0 ZTogZnVuY3Rpb24ob2JqZWN0KSB7CiAgICAgIHJldHVybiBuZXcgSGFzaChvYmpl Y3QpLmluamVjdCh0aGlzLCBmdW5jdGlvbihyZXN1bHQsIHBhaXIpIHsKICAgICAg ICByZXN1bHQuc2V0KHBhaXIua2V5LCBwYWlyLnZhbHVlKTsKICAgICAgICByZXR1 cm4gcmVzdWx0OwogICAgICB9KTsKICAgIH0sCgogICAgdG9RdWVyeVN0cmluZzog ZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aGlzLm1hcChmdW5jdGlvbihwYWly KSB7CiAgICAgICAgdmFyIGtleSA9IGVuY29kZVVSSUNvbXBvbmVudChwYWlyLmtl eSksIHZhbHVlcyA9IHBhaXIudmFsdWU7CgogICAgICAgIGlmICh2YWx1ZXMgJiYg dHlwZW9mIHZhbHVlcyA9PSAnb2JqZWN0JykgewogICAgICAgICAgaWYgKE9iamVj dC5pc0FycmF5KHZhbHVlcykpCiAgICAgICAgICAgIHJldHVybiB2YWx1ZXMubWFw KHRvUXVlcnlQYWlyLmN1cnJ5KGtleSkpLmpvaW4oJyYnKTsKICAgICAgICB9CiAg ICAgICAgcmV0dXJuIHRvUXVlcnlQYWlyKGtleSwgdmFsdWVzKTsKICAgICAgfSku am9pbignJicpOwogICAgfSwKCiAgICBpbnNwZWN0OiBmdW5jdGlvbigpIHsKICAg ICAgcmV0dXJuICcjPEhhc2g6eycgKyB0aGlzLm1hcChmdW5jdGlvbihwYWlyKSB7 CiAgICAgICAgcmV0dXJuIHBhaXIubWFwKE9iamVjdC5pbnNwZWN0KS5qb2luKCc6 ICcpOwogICAgICB9KS5qb2luKCcsICcpICsgJ30+JzsKICAgIH0sCgogICAgdG9K U09OOiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIE9iamVjdC50b0pTT04odGhp cy50b09iamVjdCgpKTsKICAgIH0sCgogICAgY2xvbmU6IGZ1bmN0aW9uKCkgewog ICAgICByZXR1cm4gbmV3IEhhc2godGhpcyk7CiAgICB9CiAgfQp9KSgpKTsKCkhh c2gucHJvdG90eXBlLnRvVGVtcGxhdGVSZXBsYWNlbWVudHMgPSBIYXNoLnByb3Rv dHlwZS50b09iamVjdDsKSGFzaC5mcm9tID0gJEg7CnZhciBPYmplY3RSYW5nZSA9 IENsYXNzLmNyZWF0ZShFbnVtZXJhYmxlLCB7CiAgaW5pdGlhbGl6ZTogZnVuY3Rp b24oc3RhcnQsIGVuZCwgZXhjbHVzaXZlKSB7CiAgICB0aGlzLnN0YXJ0ID0gc3Rh cnQ7CiAgICB0aGlzLmVuZCA9IGVuZDsKICAgIHRoaXMuZXhjbHVzaXZlID0gZXhj bHVzaXZlOwogIH0sCgogIF9lYWNoOiBmdW5jdGlvbihpdGVyYXRvcikgewogICAg dmFyIHZhbHVlID0gdGhpcy5zdGFydDsKICAgIHdoaWxlICh0aGlzLmluY2x1ZGUo dmFsdWUpKSB7CiAgICAgIGl0ZXJhdG9yKHZhbHVlKTsKICAgICAgdmFsdWUgPSB2 YWx1ZS5zdWNjKCk7CiAgICB9CiAgfSwKCiAgaW5jbHVkZTogZnVuY3Rpb24odmFs dWUpIHsKICAgIGlmICh2YWx1ZSA8IHRoaXMuc3RhcnQpCiAgICAgIHJldHVybiBm YWxzZTsKICAgIGlmICh0aGlzLmV4Y2x1c2l2ZSkKICAgICAgcmV0dXJuIHZhbHVl IDwgdGhpcy5lbmQ7CiAgICByZXR1cm4gdmFsdWUgPD0gdGhpcy5lbmQ7CiAgfQp9 KTsKCnZhciAkUiA9IGZ1bmN0aW9uKHN0YXJ0LCBlbmQsIGV4Y2x1c2l2ZSkgewog IHJldHVybiBuZXcgT2JqZWN0UmFuZ2Uoc3RhcnQsIGVuZCwgZXhjbHVzaXZlKTsK fTsKCnZhciBBamF4ID0gewogIGdldFRyYW5zcG9ydDogZnVuY3Rpb24oKSB7CiAg ICByZXR1cm4gVHJ5LnRoZXNlKAogICAgICBmdW5jdGlvbigpIHtyZXR1cm4gbmV3 IFhNTEh0dHBSZXF1ZXN0KCl9LAogICAgICBmdW5jdGlvbigpIHtyZXR1cm4gbmV3 IEFjdGl2ZVhPYmplY3QoJ01zeG1sMi5YTUxIVFRQJyl9LAogICAgICBmdW5jdGlv bigpIHtyZXR1cm4gbmV3IEFjdGl2ZVhPYmplY3QoJ01pY3Jvc29mdC5YTUxIVFRQ Jyl9CiAgICApIHx8IGZhbHNlOwogIH0sCgogIGFjdGl2ZVJlcXVlc3RDb3VudDog MAp9OwoKQWpheC5SZXNwb25kZXJzID0gewogIHJlc3BvbmRlcnM6IFtdLAoKICBf ZWFjaDogZnVuY3Rpb24oaXRlcmF0b3IpIHsKICAgIHRoaXMucmVzcG9uZGVycy5f ZWFjaChpdGVyYXRvcik7CiAgfSwKCiAgcmVnaXN0ZXI6IGZ1bmN0aW9uKHJlc3Bv bmRlcikgewogICAgaWYgKCF0aGlzLmluY2x1ZGUocmVzcG9uZGVyKSkKICAgICAg dGhpcy5yZXNwb25kZXJzLnB1c2gocmVzcG9uZGVyKTsKICB9LAoKICB1bnJlZ2lz dGVyOiBmdW5jdGlvbihyZXNwb25kZXIpIHsKICAgIHRoaXMucmVzcG9uZGVycyA9 IHRoaXMucmVzcG9uZGVycy53aXRob3V0KHJlc3BvbmRlcik7CiAgfSwKCiAgZGlz cGF0Y2g6IGZ1bmN0aW9uKGNhbGxiYWNrLCByZXF1ZXN0LCB0cmFuc3BvcnQsIGpz b24pIHsKICAgIHRoaXMuZWFjaChmdW5jdGlvbihyZXNwb25kZXIpIHsKICAgICAg aWYgKE9iamVjdC5pc0Z1bmN0aW9uKHJlc3BvbmRlcltjYWxsYmFja10pKSB7CiAg ICAgICAgdHJ5IHsKICAgICAgICAgIHJlc3BvbmRlcltjYWxsYmFja10uYXBwbHko cmVzcG9uZGVyLCBbcmVxdWVzdCwgdHJhbnNwb3J0LCBqc29uXSk7CiAgICAgICAg fSBjYXRjaCAoZSkgeyB9CiAgICAgIH0KICAgIH0pOwogIH0KfTsKCk9iamVjdC5l eHRlbmQoQWpheC5SZXNwb25kZXJzLCBFbnVtZXJhYmxlKTsKCkFqYXguUmVzcG9u ZGVycy5yZWdpc3Rlcih7CiAgb25DcmVhdGU6ICAgZnVuY3Rpb24oKSB7IEFqYXgu YWN0aXZlUmVxdWVzdENvdW50KysgfSwKICBvbkNvbXBsZXRlOiBmdW5jdGlvbigp IHsgQWpheC5hY3RpdmVSZXF1ZXN0Q291bnQtLSB9Cn0pOwoKQWpheC5CYXNlID0g Q2xhc3MuY3JlYXRlKHsKICBpbml0aWFsaXplOiBmdW5jdGlvbihvcHRpb25zKSB7 CiAgICB0aGlzLm9wdGlvbnMgPSB7CiAgICAgIG1ldGhvZDogICAgICAgJ3Bvc3Qn LAogICAgICBhc3luY2hyb25vdXM6IHRydWUsCiAgICAgIGNvbnRlbnRUeXBlOiAg J2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcsCiAgICAgIGVuY29k aW5nOiAgICAgJ1VURi04JywKICAgICAgcGFyYW1ldGVyczogICAnJywKICAgICAg ZXZhbEpTT046ICAgICB0cnVlLAogICAgICBldmFsSlM6ICAgICAgIHRydWUKICAg IH07CiAgICBPYmplY3QuZXh0ZW5kKHRoaXMub3B0aW9ucywgb3B0aW9ucyB8fCB7 IH0pOwoKICAgIHRoaXMub3B0aW9ucy5tZXRob2QgPSB0aGlzLm9wdGlvbnMubWV0 aG9kLnRvTG93ZXJDYXNlKCk7CgogICAgaWYgKE9iamVjdC5pc1N0cmluZyh0aGlz Lm9wdGlvbnMucGFyYW1ldGVycykpCiAgICAgIHRoaXMub3B0aW9ucy5wYXJhbWV0 ZXJzID0gdGhpcy5vcHRpb25zLnBhcmFtZXRlcnMudG9RdWVyeVBhcmFtcygpOwog ICAgZWxzZSBpZiAoT2JqZWN0LmlzSGFzaCh0aGlzLm9wdGlvbnMucGFyYW1ldGVy cykpCiAgICAgIHRoaXMub3B0aW9ucy5wYXJhbWV0ZXJzID0gdGhpcy5vcHRpb25z LnBhcmFtZXRlcnMudG9PYmplY3QoKTsKICB9Cn0pOwoKQWpheC5SZXF1ZXN0ID0g Q2xhc3MuY3JlYXRlKEFqYXguQmFzZSwgewogIF9jb21wbGV0ZTogZmFsc2UsCgog IGluaXRpYWxpemU6IGZ1bmN0aW9uKCRzdXBlciwgdXJsLCBvcHRpb25zKSB7CiAg ICAkc3VwZXIob3B0aW9ucyk7CiAgICB0aGlzLnRyYW5zcG9ydCA9IEFqYXguZ2V0 VHJhbnNwb3J0KCk7CiAgICB0aGlzLnJlcXVlc3QodXJsKTsKICB9LAoKICByZXF1 ZXN0OiBmdW5jdGlvbih1cmwpIHsKICAgIHRoaXMudXJsID0gdXJsOwogICAgdGhp cy5tZXRob2QgPSB0aGlzLm9wdGlvbnMubWV0aG9kOwogICAgdmFyIHBhcmFtcyA9 IE9iamVjdC5jbG9uZSh0aGlzLm9wdGlvbnMucGFyYW1ldGVycyk7CgogICAgaWYg KCFbJ2dldCcsICdwb3N0J10uaW5jbHVkZSh0aGlzLm1ldGhvZCkpIHsKICAgICAg Ly8gc2ltdWxhdGUgb3RoZXIgdmVyYnMgb3ZlciBwb3N0CiAgICAgIHBhcmFtc1sn X21ldGhvZCddID0gdGhpcy5tZXRob2Q7CiAgICAgIHRoaXMubWV0aG9kID0gJ3Bv c3QnOwogICAgfQoKICAgIHRoaXMucGFyYW1ldGVycyA9IHBhcmFtczsKCiAgICBp ZiAocGFyYW1zID0gT2JqZWN0LnRvUXVlcnlTdHJpbmcocGFyYW1zKSkgewogICAg ICAvLyB3aGVuIEdFVCwgYXBwZW5kIHBhcmFtZXRlcnMgdG8gVVJMCiAgICAgIGlm ICh0aGlzLm1ldGhvZCA9PSAnZ2V0JykKICAgICAgICB0aGlzLnVybCArPSAodGhp cy51cmwuaW5jbHVkZSgnPycpID8gJyYnIDogJz8nKSArIHBhcmFtczsKICAgICAg ZWxzZSBpZiAoL0tvbnF1ZXJvcnxTYWZhcml8S0hUTUwvLnRlc3QobmF2aWdhdG9y LnVzZXJBZ2VudCkpCiAgICAgICAgcGFyYW1zICs9ICcmXz0nOwogICAgfQoKICAg IHRyeSB7CiAgICAgIHZhciByZXNwb25zZSA9IG5ldyBBamF4LlJlc3BvbnNlKHRo aXMpOwogICAgICBpZiAodGhpcy5vcHRpb25zLm9uQ3JlYXRlKSB0aGlzLm9wdGlv bnMub25DcmVhdGUocmVzcG9uc2UpOwogICAgICBBamF4LlJlc3BvbmRlcnMuZGlz cGF0Y2goJ29uQ3JlYXRlJywgdGhpcywgcmVzcG9uc2UpOwoKICAgICAgdGhpcy50 cmFuc3BvcnQub3Blbih0aGlzLm1ldGhvZC50b1VwcGVyQ2FzZSgpLCB0aGlzLnVy bCwKICAgICAgICB0aGlzLm9wdGlvbnMuYXN5bmNocm9ub3VzKTsKCiAgICAgIGlm ICh0aGlzLm9wdGlvbnMuYXN5bmNocm9ub3VzKSB0aGlzLnJlc3BvbmRUb1JlYWR5 U3RhdGUuYmluZCh0aGlzKS5kZWZlcigxKTsKCiAgICAgIHRoaXMudHJhbnNwb3J0 Lm9ucmVhZHlzdGF0ZWNoYW5nZSA9IHRoaXMub25TdGF0ZUNoYW5nZS5iaW5kKHRo aXMpOwogICAgICB0aGlzLnNldFJlcXVlc3RIZWFkZXJzKCk7CgogICAgICB0aGlz LmJvZHkgPSB0aGlzLm1ldGhvZCA9PSAncG9zdCcgPyAodGhpcy5vcHRpb25zLnBv c3RCb2R5IHx8IHBhcmFtcykgOiBudWxsOwogICAgICB0aGlzLnRyYW5zcG9ydC5z ZW5kKHRoaXMuYm9keSk7CgogICAgICAvKiBGb3JjZSBGaXJlZm94IHRvIGhhbmRs ZSByZWFkeSBzdGF0ZSA0IGZvciBzeW5jaHJvbm91cyByZXF1ZXN0cyAqLwogICAg ICBpZiAoIXRoaXMub3B0aW9ucy5hc3luY2hyb25vdXMgJiYgdGhpcy50cmFuc3Bv cnQub3ZlcnJpZGVNaW1lVHlwZSkKICAgICAgICB0aGlzLm9uU3RhdGVDaGFuZ2Uo KTsKCiAgICB9CiAgICBjYXRjaCAoZSkgewogICAgICB0aGlzLmRpc3BhdGNoRXhj ZXB0aW9uKGUpOwogICAgfQogIH0sCgogIG9uU3RhdGVDaGFuZ2U6IGZ1bmN0aW9u KCkgewogICAgdmFyIHJlYWR5U3RhdGUgPSB0aGlzLnRyYW5zcG9ydC5yZWFkeVN0 YXRlOwogICAgaWYgKHJlYWR5U3RhdGUgPiAxICYmICEoKHJlYWR5U3RhdGUgPT0g NCkgJiYgdGhpcy5fY29tcGxldGUpKQogICAgICB0aGlzLnJlc3BvbmRUb1JlYWR5 U3RhdGUodGhpcy50cmFuc3BvcnQucmVhZHlTdGF0ZSk7CiAgfSwKCiAgc2V0UmVx dWVzdEhlYWRlcnM6IGZ1bmN0aW9uKCkgewogICAgdmFyIGhlYWRlcnMgPSB7CiAg ICAgICdYLVJlcXVlc3RlZC1XaXRoJzogJ1hNTEh0dHBSZXF1ZXN0JywKICAgICAg J1gtUHJvdG90eXBlLVZlcnNpb24nOiBQcm90b3R5cGUuVmVyc2lvbiwKICAgICAg J0FjY2VwdCc6ICd0ZXh0L2phdmFzY3JpcHQsIHRleHQvaHRtbCwgYXBwbGljYXRp b24veG1sLCB0ZXh0L3htbCwgKi8qJwogICAgfTsKCiAgICBpZiAodGhpcy5tZXRo b2QgPT0gJ3Bvc3QnKSB7CiAgICAgIGhlYWRlcnNbJ0NvbnRlbnQtdHlwZSddID0g dGhpcy5vcHRpb25zLmNvbnRlbnRUeXBlICsKICAgICAgICAodGhpcy5vcHRpb25z LmVuY29kaW5nID8gJzsgY2hhcnNldD0nICsgdGhpcy5vcHRpb25zLmVuY29kaW5n IDogJycpOwoKICAgICAgLyogRm9yY2UgIkNvbm5lY3Rpb246IGNsb3NlIiBmb3Ig b2xkZXIgTW96aWxsYSBicm93c2VycyB0byB3b3JrCiAgICAgICAqIGFyb3VuZCBh IGJ1ZyB3aGVyZSBYTUxIdHRwUmVxdWVzdCBzZW5kcyBhbiBpbmNvcnJlY3QKICAg ICAgICogQ29udGVudC1sZW5ndGggaGVhZGVyLiBTZWUgTW96aWxsYSBCdWd6aWxs YSAjMjQ2NjUxLgogICAgICAgKi8KICAgICAgaWYgKHRoaXMudHJhbnNwb3J0Lm92 ZXJyaWRlTWltZVR5cGUgJiYKICAgICAgICAgIChuYXZpZ2F0b3IudXNlckFnZW50 Lm1hdGNoKC9HZWNrb1wvKFxkezR9KS8pIHx8IFswLDIwMDVdKVsxXSA8IDIwMDUp CiAgICAgICAgICAgIGhlYWRlcnNbJ0Nvbm5lY3Rpb24nXSA9ICdjbG9zZSc7CiAg ICB9CgogICAgLy8gdXNlci1kZWZpbmVkIGhlYWRlcnMKICAgIGlmICh0eXBlb2Yg dGhpcy5vcHRpb25zLnJlcXVlc3RIZWFkZXJzID09ICdvYmplY3QnKSB7CiAgICAg IHZhciBleHRyYXMgPSB0aGlzLm9wdGlvbnMucmVxdWVzdEhlYWRlcnM7CgogICAg ICBpZiAoT2JqZWN0LmlzRnVuY3Rpb24oZXh0cmFzLnB1c2gpKQogICAgICAgIGZv ciAodmFyIGkgPSAwLCBsZW5ndGggPSBleHRyYXMubGVuZ3RoOyBpIDwgbGVuZ3Ro OyBpICs9IDIpCiAgICAgICAgICBoZWFkZXJzW2V4dHJhc1tpXV0gPSBleHRyYXNb aSsxXTsKICAgICAgZWxzZQogICAgICAgICRIKGV4dHJhcykuZWFjaChmdW5jdGlv bihwYWlyKSB7IGhlYWRlcnNbcGFpci5rZXldID0gcGFpci52YWx1ZSB9KTsKICAg IH0KCiAgICBmb3IgKHZhciBuYW1lIGluIGhlYWRlcnMpCiAgICAgIHRoaXMudHJh bnNwb3J0LnNldFJlcXVlc3RIZWFkZXIobmFtZSwgaGVhZGVyc1tuYW1lXSk7CiAg fSwKCiAgc3VjY2VzczogZnVuY3Rpb24oKSB7CiAgICB2YXIgc3RhdHVzID0gdGhp cy5nZXRTdGF0dXMoKTsKICAgIHJldHVybiAhc3RhdHVzIHx8IChzdGF0dXMgPj0g MjAwICYmIHN0YXR1cyA8IDMwMCk7CiAgfSwKCiAgZ2V0U3RhdHVzOiBmdW5jdGlv bigpIHsKICAgIHRyeSB7CiAgICAgIHJldHVybiB0aGlzLnRyYW5zcG9ydC5zdGF0 dXMgfHwgMDsKICAgIH0gY2F0Y2ggKGUpIHsgcmV0dXJuIDAgfQogIH0sCgogIHJl c3BvbmRUb1JlYWR5U3RhdGU6IGZ1bmN0aW9uKHJlYWR5U3RhdGUpIHsKICAgIHZh ciBzdGF0ZSA9IEFqYXguUmVxdWVzdC5FdmVudHNbcmVhZHlTdGF0ZV0sIHJlc3Bv bnNlID0gbmV3IEFqYXguUmVzcG9uc2UodGhpcyk7CgogICAgaWYgKHN0YXRlID09 ICdDb21wbGV0ZScpIHsKICAgICAgdHJ5IHsKICAgICAgICB0aGlzLl9jb21wbGV0 ZSA9IHRydWU7CiAgICAgICAgKHRoaXMub3B0aW9uc1snb24nICsgcmVzcG9uc2Uu c3RhdHVzXQogICAgICAgICB8fCB0aGlzLm9wdGlvbnNbJ29uJyArICh0aGlzLnN1 Y2Nlc3MoKSA/ICdTdWNjZXNzJyA6ICdGYWlsdXJlJyldCiAgICAgICAgIHx8IFBy b3RvdHlwZS5lbXB0eUZ1bmN0aW9uKShyZXNwb25zZSwgcmVzcG9uc2UuaGVhZGVy SlNPTik7CiAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICB0aGlzLmRpc3BhdGNo RXhjZXB0aW9uKGUpOwogICAgICB9CgogICAgICB2YXIgY29udGVudFR5cGUgPSBy ZXNwb25zZS5nZXRIZWFkZXIoJ0NvbnRlbnQtdHlwZScpOwogICAgICBpZiAodGhp cy5vcHRpb25zLmV2YWxKUyA9PSAnZm9yY2UnCiAgICAgICAgICB8fCAodGhpcy5v cHRpb25zLmV2YWxKUyAmJiB0aGlzLmlzU2FtZU9yaWdpbigpICYmIGNvbnRlbnRU eXBlCiAgICAgICAgICAmJiBjb250ZW50VHlwZS5tYXRjaCgvXlxzKih0ZXh0fGFw cGxpY2F0aW9uKVwvKHgtKT8oamF2YXxlY21hKXNjcmlwdCg7LiopP1xzKiQvaSkp KQogICAgICAgIHRoaXMuZXZhbFJlc3BvbnNlKCk7CiAgICB9CgogICAgdHJ5IHsK ICAgICAgKHRoaXMub3B0aW9uc1snb24nICsgc3RhdGVdIHx8IFByb3RvdHlwZS5l bXB0eUZ1bmN0aW9uKShyZXNwb25zZSwgcmVzcG9uc2UuaGVhZGVySlNPTik7CiAg ICAgIEFqYXguUmVzcG9uZGVycy5kaXNwYXRjaCgnb24nICsgc3RhdGUsIHRoaXMs IHJlc3BvbnNlLCByZXNwb25zZS5oZWFkZXJKU09OKTsKICAgIH0gY2F0Y2ggKGUp IHsKICAgICAgdGhpcy5kaXNwYXRjaEV4Y2VwdGlvbihlKTsKICAgIH0KCiAgICBp ZiAoc3RhdGUgPT0gJ0NvbXBsZXRlJykgewogICAgICAvLyBhdm9pZCBtZW1vcnkg bGVhayBpbiBNU0lFOiBjbGVhbiB1cAogICAgICB0aGlzLnRyYW5zcG9ydC5vbnJl YWR5c3RhdGVjaGFuZ2UgPSBQcm90b3R5cGUuZW1wdHlGdW5jdGlvbjsKICAgIH0K ICB9LAoKICBpc1NhbWVPcmlnaW46IGZ1bmN0aW9uKCkgewogICAgdmFyIG0gPSB0 aGlzLnVybC5tYXRjaCgvXlxzKmh0dHBzPzpcL1wvW15cL10qLyk7CiAgICByZXR1 cm4gIW0gfHwgKG1bMF0gPT0gJyN7cHJvdG9jb2x9Ly8je2RvbWFpbn0je3BvcnR9 Jy5pbnRlcnBvbGF0ZSh7CiAgICAgIHByb3RvY29sOiBsb2NhdGlvbi5wcm90b2Nv bCwKICAgICAgZG9tYWluOiBkb2N1bWVudC5kb21haW4sCiAgICAgIHBvcnQ6IGxv Y2F0aW9uLnBvcnQgPyAnOicgKyBsb2NhdGlvbi5wb3J0IDogJycKICAgIH0pKTsK ICB9LAoKICBnZXRIZWFkZXI6IGZ1bmN0aW9uKG5hbWUpIHsKICAgIHRyeSB7CiAg ICAgIHJldHVybiB0aGlzLnRyYW5zcG9ydC5nZXRSZXNwb25zZUhlYWRlcihuYW1l KSB8fCBudWxsOwogICAgfSBjYXRjaCAoZSkgeyByZXR1cm4gbnVsbCB9CiAgfSwK CiAgZXZhbFJlc3BvbnNlOiBmdW5jdGlvbigpIHsKICAgIHRyeSB7CiAgICAgIHJl dHVybiBldmFsKCh0aGlzLnRyYW5zcG9ydC5yZXNwb25zZVRleHQgfHwgJycpLnVu ZmlsdGVySlNPTigpKTsKICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgdGhpcy5kaXNw YXRjaEV4Y2VwdGlvbihlKTsKICAgIH0KICB9LAoKICBkaXNwYXRjaEV4Y2VwdGlv bjogZnVuY3Rpb24oZXhjZXB0aW9uKSB7CiAgICAodGhpcy5vcHRpb25zLm9uRXhj ZXB0aW9uIHx8IFByb3RvdHlwZS5lbXB0eUZ1bmN0aW9uKSh0aGlzLCBleGNlcHRp b24pOwogICAgQWpheC5SZXNwb25kZXJzLmRpc3BhdGNoKCdvbkV4Y2VwdGlvbics IHRoaXMsIGV4Y2VwdGlvbik7CiAgfQp9KTsKCkFqYXguUmVxdWVzdC5FdmVudHMg PQogIFsnVW5pbml0aWFsaXplZCcsICdMb2FkaW5nJywgJ0xvYWRlZCcsICdJbnRl cmFjdGl2ZScsICdDb21wbGV0ZSddOwoKQWpheC5SZXNwb25zZSA9IENsYXNzLmNy ZWF0ZSh7CiAgaW5pdGlhbGl6ZTogZnVuY3Rpb24ocmVxdWVzdCl7CiAgICB0aGlz LnJlcXVlc3QgPSByZXF1ZXN0OwogICAgdmFyIHRyYW5zcG9ydCAgPSB0aGlzLnRy YW5zcG9ydCAgPSByZXF1ZXN0LnRyYW5zcG9ydCwKICAgICAgICByZWFkeVN0YXRl ID0gdGhpcy5yZWFkeVN0YXRlID0gdHJhbnNwb3J0LnJlYWR5U3RhdGU7CgogICAg aWYoKHJlYWR5U3RhdGUgPiAyICYmICFQcm90b3R5cGUuQnJvd3Nlci5JRSkgfHwg cmVhZHlTdGF0ZSA9PSA0KSB7CiAgICAgIHRoaXMuc3RhdHVzICAgICAgID0gdGhp cy5nZXRTdGF0dXMoKTsKICAgICAgdGhpcy5zdGF0dXNUZXh0ICAgPSB0aGlzLmdl dFN0YXR1c1RleHQoKTsKICAgICAgdGhpcy5yZXNwb25zZVRleHQgPSBTdHJpbmcu aW50ZXJwcmV0KHRyYW5zcG9ydC5yZXNwb25zZVRleHQpOwogICAgICB0aGlzLmhl YWRlckpTT04gICA9IHRoaXMuX2dldEhlYWRlckpTT04oKTsKICAgIH0KCiAgICBp ZihyZWFkeVN0YXRlID09IDQpIHsKICAgICAgdmFyIHhtbCA9IHRyYW5zcG9ydC5y ZXNwb25zZVhNTDsKICAgICAgdGhpcy5yZXNwb25zZVhNTCAgPSBPYmplY3QuaXNV bmRlZmluZWQoeG1sKSA/IG51bGwgOiB4bWw7CiAgICAgIHRoaXMucmVzcG9uc2VK U09OID0gdGhpcy5fZ2V0UmVzcG9uc2VKU09OKCk7CiAgICB9CiAgfSwKCiAgc3Rh dHVzOiAgICAgIDAsCiAgc3RhdHVzVGV4dDogJycsCgogIGdldFN0YXR1czogQWph eC5SZXF1ZXN0LnByb3RvdHlwZS5nZXRTdGF0dXMsCgogIGdldFN0YXR1c1RleHQ6 IGZ1bmN0aW9uKCkgewogICAgdHJ5IHsKICAgICAgcmV0dXJuIHRoaXMudHJhbnNw b3J0LnN0YXR1c1RleHQgfHwgJyc7CiAgICB9IGNhdGNoIChlKSB7IHJldHVybiAn JyB9CiAgfSwKCiAgZ2V0SGVhZGVyOiBBamF4LlJlcXVlc3QucHJvdG90eXBlLmdl dEhlYWRlciwKCiAgZ2V0QWxsSGVhZGVyczogZnVuY3Rpb24oKSB7CiAgICB0cnkg ewogICAgICByZXR1cm4gdGhpcy5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKTsKICAg IH0gY2F0Y2ggKGUpIHsgcmV0dXJuIG51bGwgfQogIH0sCgogIGdldFJlc3BvbnNl SGVhZGVyOiBmdW5jdGlvbihuYW1lKSB7CiAgICByZXR1cm4gdGhpcy50cmFuc3Bv cnQuZ2V0UmVzcG9uc2VIZWFkZXIobmFtZSk7CiAgfSwKCiAgZ2V0QWxsUmVzcG9u c2VIZWFkZXJzOiBmdW5jdGlvbigpIHsKICAgIHJldHVybiB0aGlzLnRyYW5zcG9y dC5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKTsKICB9LAoKICBfZ2V0SGVhZGVySlNP TjogZnVuY3Rpb24oKSB7CiAgICB2YXIganNvbiA9IHRoaXMuZ2V0SGVhZGVyKCdY LUpTT04nKTsKICAgIGlmICghanNvbikgcmV0dXJuIG51bGw7CiAgICBqc29uID0g ZGVjb2RlVVJJQ29tcG9uZW50KGVzY2FwZShqc29uKSk7CiAgICB0cnkgewogICAg ICByZXR1cm4ganNvbi5ldmFsSlNPTih0aGlzLnJlcXVlc3Qub3B0aW9ucy5zYW5p dGl6ZUpTT04gfHwKICAgICAgICAhdGhpcy5yZXF1ZXN0LmlzU2FtZU9yaWdpbigp KTsKICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgdGhpcy5yZXF1ZXN0LmRpc3BhdGNo RXhjZXB0aW9uKGUpOwogICAgfQogIH0sCgogIF9nZXRSZXNwb25zZUpTT046IGZ1 bmN0aW9uKCkgewogICAgdmFyIG9wdGlvbnMgPSB0aGlzLnJlcXVlc3Qub3B0aW9u czsKICAgIGlmICghb3B0aW9ucy5ldmFsSlNPTiB8fCAob3B0aW9ucy5ldmFsSlNP TiAhPSAnZm9yY2UnICYmCiAgICAgICEodGhpcy5nZXRIZWFkZXIoJ0NvbnRlbnQt dHlwZScpIHx8ICcnKS5pbmNsdWRlKCdhcHBsaWNhdGlvbi9qc29uJykpIHx8CiAg ICAgICAgdGhpcy5yZXNwb25zZVRleHQuYmxhbmsoKSkKICAgICAgICAgIHJldHVy biBudWxsOwogICAgdHJ5IHsKICAgICAgcmV0dXJuIHRoaXMucmVzcG9uc2VUZXh0 LmV2YWxKU09OKG9wdGlvbnMuc2FuaXRpemVKU09OIHx8CiAgICAgICAgIXRoaXMu cmVxdWVzdC5pc1NhbWVPcmlnaW4oKSk7CiAgICB9IGNhdGNoIChlKSB7CiAgICAg IHRoaXMucmVxdWVzdC5kaXNwYXRjaEV4Y2VwdGlvbihlKTsKICAgIH0KICB9Cn0p OwoKQWpheC5VcGRhdGVyID0gQ2xhc3MuY3JlYXRlKEFqYXguUmVxdWVzdCwgewog IGluaXRpYWxpemU6IGZ1bmN0aW9uKCRzdXBlciwgY29udGFpbmVyLCB1cmwsIG9w dGlvbnMpIHsKICAgIHRoaXMuY29udGFpbmVyID0gewogICAgICBzdWNjZXNzOiAo Y29udGFpbmVyLnN1Y2Nlc3MgfHwgY29udGFpbmVyKSwKICAgICAgZmFpbHVyZTog KGNvbnRhaW5lci5mYWlsdXJlIHx8IChjb250YWluZXIuc3VjY2VzcyA/IG51bGwg OiBjb250YWluZXIpKQogICAgfTsKCiAgICBvcHRpb25zID0gT2JqZWN0LmNsb25l KG9wdGlvbnMpOwogICAgdmFyIG9uQ29tcGxldGUgPSBvcHRpb25zLm9uQ29tcGxl dGU7CiAgICBvcHRpb25zLm9uQ29tcGxldGUgPSAoZnVuY3Rpb24ocmVzcG9uc2Us IGpzb24pIHsKICAgICAgdGhpcy51cGRhdGVDb250ZW50KHJlc3BvbnNlLnJlc3Bv bnNlVGV4dCk7CiAgICAgIGlmIChPYmplY3QuaXNGdW5jdGlvbihvbkNvbXBsZXRl KSkgb25Db21wbGV0ZShyZXNwb25zZSwganNvbik7CiAgICB9KS5iaW5kKHRoaXMp OwoKICAgICRzdXBlcih1cmwsIG9wdGlvbnMpOwogIH0sCgogIHVwZGF0ZUNvbnRl bnQ6IGZ1bmN0aW9uKHJlc3BvbnNlVGV4dCkgewogICAgdmFyIHJlY2VpdmVyID0g dGhpcy5jb250YWluZXJbdGhpcy5zdWNjZXNzKCkgPyAnc3VjY2VzcycgOiAnZmFp bHVyZSddLAogICAgICAgIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgogICAgaWYg KCFvcHRpb25zLmV2YWxTY3JpcHRzKSByZXNwb25zZVRleHQgPSByZXNwb25zZVRl eHQuc3RyaXBTY3JpcHRzKCk7CgogICAgaWYgKHJlY2VpdmVyID0gJChyZWNlaXZl cikpIHsKICAgICAgaWYgKG9wdGlvbnMuaW5zZXJ0aW9uKSB7CiAgICAgICAgaWYg KE9iamVjdC5pc1N0cmluZyhvcHRpb25zLmluc2VydGlvbikpIHsKICAgICAgICAg IHZhciBpbnNlcnRpb24gPSB7IH07IGluc2VydGlvbltvcHRpb25zLmluc2VydGlv bl0gPSByZXNwb25zZVRleHQ7CiAgICAgICAgICByZWNlaXZlci5pbnNlcnQoaW5z ZXJ0aW9uKTsKICAgICAgICB9CiAgICAgICAgZWxzZSBvcHRpb25zLmluc2VydGlv bihyZWNlaXZlciwgcmVzcG9uc2VUZXh0KTsKICAgICAgfQogICAgICBlbHNlIHJl Y2VpdmVyLnVwZGF0ZShyZXNwb25zZVRleHQpOwogICAgfQogIH0KfSk7CgpBamF4 LlBlcmlvZGljYWxVcGRhdGVyID0gQ2xhc3MuY3JlYXRlKEFqYXguQmFzZSwgewog IGluaXRpYWxpemU6IGZ1bmN0aW9uKCRzdXBlciwgY29udGFpbmVyLCB1cmwsIG9w dGlvbnMpIHsKICAgICRzdXBlcihvcHRpb25zKTsKICAgIHRoaXMub25Db21wbGV0 ZSA9IHRoaXMub3B0aW9ucy5vbkNvbXBsZXRlOwoKICAgIHRoaXMuZnJlcXVlbmN5 ID0gKHRoaXMub3B0aW9ucy5mcmVxdWVuY3kgfHwgMik7CiAgICB0aGlzLmRlY2F5 ID0gKHRoaXMub3B0aW9ucy5kZWNheSB8fCAxKTsKCiAgICB0aGlzLnVwZGF0ZXIg PSB7IH07CiAgICB0aGlzLmNvbnRhaW5lciA9IGNvbnRhaW5lcjsKICAgIHRoaXMu dXJsID0gdXJsOwoKICAgIHRoaXMuc3RhcnQoKTsKICB9LAoKICBzdGFydDogZnVu Y3Rpb24oKSB7CiAgICB0aGlzLm9wdGlvbnMub25Db21wbGV0ZSA9IHRoaXMudXBk YXRlQ29tcGxldGUuYmluZCh0aGlzKTsKICAgIHRoaXMub25UaW1lckV2ZW50KCk7 CiAgfSwKCiAgc3RvcDogZnVuY3Rpb24oKSB7CiAgICB0aGlzLnVwZGF0ZXIub3B0 aW9ucy5vbkNvbXBsZXRlID0gdW5kZWZpbmVkOwogICAgY2xlYXJUaW1lb3V0KHRo aXMudGltZXIpOwogICAgKHRoaXMub25Db21wbGV0ZSB8fCBQcm90b3R5cGUuZW1w dHlGdW5jdGlvbikuYXBwbHkodGhpcywgYXJndW1lbnRzKTsKICB9LAoKICB1cGRh dGVDb21wbGV0ZTogZnVuY3Rpb24ocmVzcG9uc2UpIHsKICAgIGlmICh0aGlzLm9w dGlvbnMuZGVjYXkpIHsKICAgICAgdGhpcy5kZWNheSA9IChyZXNwb25zZS5yZXNw b25zZVRleHQgPT0gdGhpcy5sYXN0VGV4dCA/CiAgICAgICAgdGhpcy5kZWNheSAq IHRoaXMub3B0aW9ucy5kZWNheSA6IDEpOwoKICAgICAgdGhpcy5sYXN0VGV4dCA9 IHJlc3BvbnNlLnJlc3BvbnNlVGV4dDsKICAgIH0KICAgIHRoaXMudGltZXIgPSB0 aGlzLm9uVGltZXJFdmVudC5iaW5kKHRoaXMpLmRlbGF5KHRoaXMuZGVjYXkgKiB0 aGlzLmZyZXF1ZW5jeSk7CiAgfSwKCiAgb25UaW1lckV2ZW50OiBmdW5jdGlvbigp IHsKICAgIHRoaXMudXBkYXRlciA9IG5ldyBBamF4LlVwZGF0ZXIodGhpcy5jb250 YWluZXIsIHRoaXMudXJsLCB0aGlzLm9wdGlvbnMpOwogIH0KfSk7CmZ1bmN0aW9u ICQoZWxlbWVudCkgewogIGlmIChhcmd1bWVudHMubGVuZ3RoID4gMSkgewogICAg Zm9yICh2YXIgaSA9IDAsIGVsZW1lbnRzID0gW10sIGxlbmd0aCA9IGFyZ3VtZW50 cy5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykKICAgICAgZWxlbWVudHMucHVzaCgk KGFyZ3VtZW50c1tpXSkpOwogICAgcmV0dXJuIGVsZW1lbnRzOwogIH0KICBpZiAo T2JqZWN0LmlzU3RyaW5nKGVsZW1lbnQpKQogICAgZWxlbWVudCA9IGRvY3VtZW50 LmdldEVsZW1lbnRCeUlkKGVsZW1lbnQpOwogIHJldHVybiBFbGVtZW50LmV4dGVu ZChlbGVtZW50KTsKfQoKaWYgKFByb3RvdHlwZS5Ccm93c2VyRmVhdHVyZXMuWFBh dGgpIHsKICBkb2N1bWVudC5fZ2V0RWxlbWVudHNCeVhQYXRoID0gZnVuY3Rpb24o ZXhwcmVzc2lvbiwgcGFyZW50RWxlbWVudCkgewogICAgdmFyIHJlc3VsdHMgPSBb XTsKICAgIHZhciBxdWVyeSA9IGRvY3VtZW50LmV2YWx1YXRlKGV4cHJlc3Npb24s ICQocGFyZW50RWxlbWVudCkgfHwgZG9jdW1lbnQsCiAgICAgIG51bGwsIFhQYXRo UmVzdWx0Lk9SREVSRURfTk9ERV9TTkFQU0hPVF9UWVBFLCBudWxsKTsKICAgIGZv ciAodmFyIGkgPSAwLCBsZW5ndGggPSBxdWVyeS5zbmFwc2hvdExlbmd0aDsgaSA8 IGxlbmd0aDsgaSsrKQogICAgICByZXN1bHRzLnB1c2goRWxlbWVudC5leHRlbmQo cXVlcnkuc25hcHNob3RJdGVtKGkpKSk7CiAgICByZXR1cm4gcmVzdWx0czsKICB9 Owp9CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCmlmICghd2luZG93 Lk5vZGUpIHZhciBOb2RlID0geyB9OwoKaWYgKCFOb2RlLkVMRU1FTlRfTk9ERSkg ewogIC8vIERPTSBsZXZlbCAyIEVDTUFTY3JpcHQgTGFuZ3VhZ2UgQmluZGluZwog IE9iamVjdC5leHRlbmQoTm9kZSwgewogICAgRUxFTUVOVF9OT0RFOiAxLAogICAg QVRUUklCVVRFX05PREU6IDIsCiAgICBURVhUX05PREU6IDMsCiAgICBDREFUQV9T RUNUSU9OX05PREU6IDQsCiAgICBFTlRJVFlfUkVGRVJFTkNFX05PREU6IDUsCiAg ICBFTlRJVFlfTk9ERTogNiwKICAgIFBST0NFU1NJTkdfSU5TVFJVQ1RJT05fTk9E RTogNywKICAgIENPTU1FTlRfTk9ERTogOCwKICAgIERPQ1VNRU5UX05PREU6IDks CiAgICBET0NVTUVOVF9UWVBFX05PREU6IDEwLAogICAgRE9DVU1FTlRfRlJBR01F TlRfTk9ERTogMTEsCiAgICBOT1RBVElPTl9OT0RFOiAxMgogIH0pOwp9CgooZnVu Y3Rpb24oKSB7CiAgdmFyIGVsZW1lbnQgPSB0aGlzLkVsZW1lbnQ7CiAgdGhpcy5F bGVtZW50ID0gZnVuY3Rpb24odGFnTmFtZSwgYXR0cmlidXRlcykgewogICAgYXR0 cmlidXRlcyA9IGF0dHJpYnV0ZXMgfHwgeyB9OwogICAgdGFnTmFtZSA9IHRhZ05h bWUudG9Mb3dlckNhc2UoKTsKICAgIHZhciBjYWNoZSA9IEVsZW1lbnQuY2FjaGU7 CiAgICBpZiAoUHJvdG90eXBlLkJyb3dzZXIuSUUgJiYgYXR0cmlidXRlcy5uYW1l KSB7CiAgICAgIHRhZ05hbWUgPSAnPCcgKyB0YWdOYW1lICsgJyBuYW1lPSInICsg YXR0cmlidXRlcy5uYW1lICsgJyI+JzsKICAgICAgZGVsZXRlIGF0dHJpYnV0ZXMu bmFtZTsKICAgICAgcmV0dXJuIEVsZW1lbnQud3JpdGVBdHRyaWJ1dGUoZG9jdW1l bnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKSwgYXR0cmlidXRlcyk7CiAgICB9CiAg ICBpZiAoIWNhY2hlW3RhZ05hbWVdKSBjYWNoZVt0YWdOYW1lXSA9IEVsZW1lbnQu ZXh0ZW5kKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGFnTmFtZSkpOwogICAgcmV0 dXJuIEVsZW1lbnQud3JpdGVBdHRyaWJ1dGUoY2FjaGVbdGFnTmFtZV0uY2xvbmVO b2RlKGZhbHNlKSwgYXR0cmlidXRlcyk7CiAgfTsKICBPYmplY3QuZXh0ZW5kKHRo aXMuRWxlbWVudCwgZWxlbWVudCB8fCB7IH0pOwp9KS5jYWxsKHdpbmRvdyk7CgpF bGVtZW50LmNhY2hlID0geyB9OwoKRWxlbWVudC5NZXRob2RzID0gewogIHZpc2li bGU6IGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgIHJldHVybiAkKGVsZW1lbnQpLnN0 eWxlLmRpc3BsYXkgIT0gJ25vbmUnOwogIH0sCgogIHRvZ2dsZTogZnVuY3Rpb24o ZWxlbWVudCkgewogICAgZWxlbWVudCA9ICQoZWxlbWVudCk7CiAgICBFbGVtZW50 W0VsZW1lbnQudmlzaWJsZShlbGVtZW50KSA/ICdoaWRlJyA6ICdzaG93J10oZWxl bWVudCk7CiAgICByZXR1cm4gZWxlbWVudDsKICB9LAoKICBoaWRlOiBmdW5jdGlv bihlbGVtZW50KSB7CiAgICAkKGVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSAnbm9u ZSc7CiAgICByZXR1cm4gZWxlbWVudDsKICB9LAoKICBzaG93OiBmdW5jdGlvbihl bGVtZW50KSB7CiAgICAkKGVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSAnJzsKICAg IHJldHVybiBlbGVtZW50OwogIH0sCgogIHJlbW92ZTogZnVuY3Rpb24oZWxlbWVu dCkgewogICAgZWxlbWVudCA9ICQoZWxlbWVudCk7CiAgICBlbGVtZW50LnBhcmVu dE5vZGUucmVtb3ZlQ2hpbGQoZWxlbWVudCk7CiAgICByZXR1cm4gZWxlbWVudDsK ICB9LAoKICB1cGRhdGU6IGZ1bmN0aW9uKGVsZW1lbnQsIGNvbnRlbnQpIHsKICAg IGVsZW1lbnQgPSAkKGVsZW1lbnQpOwogICAgaWYgKGNvbnRlbnQgJiYgY29udGVu dC50b0VsZW1lbnQpIGNvbnRlbnQgPSBjb250ZW50LnRvRWxlbWVudCgpOwogICAg aWYgKE9iamVjdC5pc0VsZW1lbnQoY29udGVudCkpIHJldHVybiBlbGVtZW50LnVw ZGF0ZSgpLmluc2VydChjb250ZW50KTsKICAgIGNvbnRlbnQgPSBPYmplY3QudG9I VE1MKGNvbnRlbnQpOwogICAgZWxlbWVudC5pbm5lckhUTUwgPSBjb250ZW50LnN0 cmlwU2NyaXB0cygpOwogICAgY29udGVudC5ldmFsU2NyaXB0cy5iaW5kKGNvbnRl bnQpLmRlZmVyKCk7CiAgICByZXR1cm4gZWxlbWVudDsKICB9LAoKICByZXBsYWNl OiBmdW5jdGlvbihlbGVtZW50LCBjb250ZW50KSB7CiAgICBlbGVtZW50ID0gJChl bGVtZW50KTsKICAgIGlmIChjb250ZW50ICYmIGNvbnRlbnQudG9FbGVtZW50KSBj b250ZW50ID0gY29udGVudC50b0VsZW1lbnQoKTsKICAgIGVsc2UgaWYgKCFPYmpl Y3QuaXNFbGVtZW50KGNvbnRlbnQpKSB7CiAgICAgIGNvbnRlbnQgPSBPYmplY3Qu dG9IVE1MKGNvbnRlbnQpOwogICAgICB2YXIgcmFuZ2UgPSBlbGVtZW50Lm93bmVy RG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKICAgICAgcmFuZ2Uuc2VsZWN0Tm9kZShl bGVtZW50KTsKICAgICAgY29udGVudC5ldmFsU2NyaXB0cy5iaW5kKGNvbnRlbnQp LmRlZmVyKCk7CiAgICAgIGNvbnRlbnQgPSByYW5nZS5jcmVhdGVDb250ZXh0dWFs RnJhZ21lbnQoY29udGVudC5zdHJpcFNjcmlwdHMoKSk7CiAgICB9CiAgICBlbGVt ZW50LnBhcmVudE5vZGUucmVwbGFjZUNoaWxkKGNvbnRlbnQsIGVsZW1lbnQpOwog ICAgcmV0dXJuIGVsZW1lbnQ7CiAgfSwKCiAgaW5zZXJ0OiBmdW5jdGlvbihlbGVt ZW50LCBpbnNlcnRpb25zKSB7CiAgICBlbGVtZW50ID0gJChlbGVtZW50KTsKCiAg ICBpZiAoT2JqZWN0LmlzU3RyaW5nKGluc2VydGlvbnMpIHx8IE9iamVjdC5pc051 bWJlcihpbnNlcnRpb25zKSB8fAogICAgICAgIE9iamVjdC5pc0VsZW1lbnQoaW5z ZXJ0aW9ucykgfHwgKGluc2VydGlvbnMgJiYgKGluc2VydGlvbnMudG9FbGVtZW50 IHx8IGluc2VydGlvbnMudG9IVE1MKSkpCiAgICAgICAgICBpbnNlcnRpb25zID0g e2JvdHRvbTppbnNlcnRpb25zfTsKCiAgICB2YXIgY29udGVudCwgaW5zZXJ0LCB0 YWdOYW1lLCBjaGlsZE5vZGVzOwoKICAgIGZvciAodmFyIHBvc2l0aW9uIGluIGlu c2VydGlvbnMpIHsKICAgICAgY29udGVudCAgPSBpbnNlcnRpb25zW3Bvc2l0aW9u XTsKICAgICAgcG9zaXRpb24gPSBwb3NpdGlvbi50b0xvd2VyQ2FzZSgpOwogICAg ICBpbnNlcnQgPSBFbGVtZW50Ll9pbnNlcnRpb25UcmFuc2xhdGlvbnNbcG9zaXRp b25dOwoKICAgICAgaWYgKGNvbnRlbnQgJiYgY29udGVudC50b0VsZW1lbnQpIGNv bnRlbnQgPSBjb250ZW50LnRvRWxlbWVudCgpOwogICAgICBpZiAoT2JqZWN0Lmlz RWxlbWVudChjb250ZW50KSkgewogICAgICAgIGluc2VydChlbGVtZW50LCBjb250 ZW50KTsKICAgICAgICBjb250aW51ZTsKICAgICAgfQoKICAgICAgY29udGVudCA9 IE9iamVjdC50b0hUTUwoY29udGVudCk7CgogICAgICB0YWdOYW1lID0gKChwb3Np dGlvbiA9PSAnYmVmb3JlJyB8fCBwb3NpdGlvbiA9PSAnYWZ0ZXInKQogICAgICAg ID8gZWxlbWVudC5wYXJlbnROb2RlIDogZWxlbWVudCkudGFnTmFtZS50b1VwcGVy Q2FzZSgpOwoKICAgICAgY2hpbGROb2RlcyA9IEVsZW1lbnQuX2dldENvbnRlbnRG cm9tQW5vbnltb3VzRWxlbWVudCh0YWdOYW1lLCBjb250ZW50LnN0cmlwU2NyaXB0 cygpKTsKCiAgICAgIGlmIChwb3NpdGlvbiA9PSAndG9wJyB8fCBwb3NpdGlvbiA9 PSAnYWZ0ZXInKSBjaGlsZE5vZGVzLnJldmVyc2UoKTsKICAgICAgY2hpbGROb2Rl cy5lYWNoKGluc2VydC5jdXJyeShlbGVtZW50KSk7CgogICAgICBjb250ZW50LmV2 YWxTY3JpcHRzLmJpbmQoY29udGVudCkuZGVmZXIoKTsKICAgIH0KCiAgICByZXR1 cm4gZWxlbWVudDsKICB9LAoKICB3cmFwOiBmdW5jdGlvbihlbGVtZW50LCB3cmFw cGVyLCBhdHRyaWJ1dGVzKSB7CiAgICBlbGVtZW50ID0gJChlbGVtZW50KTsKICAg IGlmIChPYmplY3QuaXNFbGVtZW50KHdyYXBwZXIpKQogICAgICAkKHdyYXBwZXIp LndyaXRlQXR0cmlidXRlKGF0dHJpYnV0ZXMgfHwgeyB9KTsKICAgIGVsc2UgaWYg KE9iamVjdC5pc1N0cmluZyh3cmFwcGVyKSkgd3JhcHBlciA9IG5ldyBFbGVtZW50 KHdyYXBwZXIsIGF0dHJpYnV0ZXMpOwogICAgZWxzZSB3cmFwcGVyID0gbmV3IEVs ZW1lbnQoJ2RpdicsIHdyYXBwZXIpOwogICAgaWYgKGVsZW1lbnQucGFyZW50Tm9k ZSkKICAgICAgZWxlbWVudC5wYXJlbnROb2RlLnJlcGxhY2VDaGlsZCh3cmFwcGVy LCBlbGVtZW50KTsKICAgIHdyYXBwZXIuYXBwZW5kQ2hpbGQoZWxlbWVudCk7CiAg ICByZXR1cm4gd3JhcHBlcjsKICB9LAoKICBpbnNwZWN0OiBmdW5jdGlvbihlbGVt ZW50KSB7CiAgICBlbGVtZW50ID0gJChlbGVtZW50KTsKICAgIHZhciByZXN1bHQg PSAnPCcgKyBlbGVtZW50LnRhZ05hbWUudG9Mb3dlckNhc2UoKTsKICAgICRIKHsn aWQnOiAnaWQnLCAnY2xhc3NOYW1lJzogJ2NsYXNzJ30pLmVhY2goZnVuY3Rpb24o cGFpcikgewogICAgICB2YXIgcHJvcGVydHkgPSBwYWlyLmZpcnN0KCksIGF0dHJp YnV0ZSA9IHBhaXIubGFzdCgpOwogICAgICB2YXIgdmFsdWUgPSAoZWxlbWVudFtw cm9wZXJ0eV0gfHwgJycpLnRvU3RyaW5nKCk7CiAgICAgIGlmICh2YWx1ZSkgcmVz dWx0ICs9ICcgJyArIGF0dHJpYnV0ZSArICc9JyArIHZhbHVlLmluc3BlY3QodHJ1 ZSk7CiAgICB9KTsKICAgIHJldHVybiByZXN1bHQgKyAnPic7CiAgfSwKCiAgcmVj dXJzaXZlbHlDb2xsZWN0OiBmdW5jdGlvbihlbGVtZW50LCBwcm9wZXJ0eSkgewog ICAgZWxlbWVudCA9ICQoZWxlbWVudCk7CiAgICB2YXIgZWxlbWVudHMgPSBbXTsK ICAgIHdoaWxlIChlbGVtZW50ID0gZWxlbWVudFtwcm9wZXJ0eV0pCiAgICAgIGlm IChlbGVtZW50Lm5vZGVUeXBlID09IDEpCiAgICAgICAgZWxlbWVudHMucHVzaChF bGVtZW50LmV4dGVuZChlbGVtZW50KSk7CiAgICByZXR1cm4gZWxlbWVudHM7CiAg fSwKCiAgYW5jZXN0b3JzOiBmdW5jdGlvbihlbGVtZW50KSB7CiAgICByZXR1cm4g JChlbGVtZW50KS5yZWN1cnNpdmVseUNvbGxlY3QoJ3BhcmVudE5vZGUnKTsKICB9 LAoKICBkZXNjZW5kYW50czogZnVuY3Rpb24oZWxlbWVudCkgewogICAgcmV0dXJu ICQoZWxlbWVudCkuc2VsZWN0KCIqIik7CiAgfSwKCiAgZmlyc3REZXNjZW5kYW50 OiBmdW5jdGlvbihlbGVtZW50KSB7CiAgICBlbGVtZW50ID0gJChlbGVtZW50KS5m aXJzdENoaWxkOwogICAgd2hpbGUgKGVsZW1lbnQgJiYgZWxlbWVudC5ub2RlVHlw ZSAhPSAxKSBlbGVtZW50ID0gZWxlbWVudC5uZXh0U2libGluZzsKICAgIHJldHVy biAkKGVsZW1lbnQpOwogIH0sCgogIGltbWVkaWF0ZURlc2NlbmRhbnRzOiBmdW5j dGlvbihlbGVtZW50KSB7CiAgICBpZiAoIShlbGVtZW50ID0gJChlbGVtZW50KS5m aXJzdENoaWxkKSkgcmV0dXJuIFtdOwogICAgd2hpbGUgKGVsZW1lbnQgJiYgZWxl bWVudC5ub2RlVHlwZSAhPSAxKSBlbGVtZW50ID0gZWxlbWVudC5uZXh0U2libGlu ZzsKICAgIGlmIChlbGVtZW50KSByZXR1cm4gW2VsZW1lbnRdLmNvbmNhdCgkKGVs ZW1lbnQpLm5leHRTaWJsaW5ncygpKTsKICAgIHJldHVybiBbXTsKICB9LAoKICBw cmV2aW91c1NpYmxpbmdzOiBmdW5jdGlvbihlbGVtZW50KSB7CiAgICByZXR1cm4g JChlbGVtZW50KS5yZWN1cnNpdmVseUNvbGxlY3QoJ3ByZXZpb3VzU2libGluZycp OwogIH0sCgogIG5leHRTaWJsaW5nczogZnVuY3Rpb24oZWxlbWVudCkgewogICAg cmV0dXJuICQoZWxlbWVudCkucmVjdXJzaXZlbHlDb2xsZWN0KCduZXh0U2libGlu ZycpOwogIH0sCgogIHNpYmxpbmdzOiBmdW5jdGlvbihlbGVtZW50KSB7CiAgICBl bGVtZW50ID0gJChlbGVtZW50KTsKICAgIHJldHVybiBlbGVtZW50LnByZXZpb3Vz U2libGluZ3MoKS5yZXZlcnNlKCkuY29uY2F0KGVsZW1lbnQubmV4dFNpYmxpbmdz KCkpOwogIH0sCgogIG1hdGNoOiBmdW5jdGlvbihlbGVtZW50LCBzZWxlY3Rvcikg ewogICAgaWYgKE9iamVjdC5pc1N0cmluZyhzZWxlY3RvcikpCiAgICAgIHNlbGVj dG9yID0gbmV3IFNlbGVjdG9yKHNlbGVjdG9yKTsKICAgIHJldHVybiBzZWxlY3Rv ci5tYXRjaCgkKGVsZW1lbnQpKTsKICB9LAoKICB1cDogZnVuY3Rpb24oZWxlbWVu dCwgZXhwcmVzc2lvbiwgaW5kZXgpIHsKICAgIGVsZW1lbnQgPSAkKGVsZW1lbnQp OwogICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT0gMSkgcmV0dXJuICQoZWxlbWVu dC5wYXJlbnROb2RlKTsKICAgIHZhciBhbmNlc3RvcnMgPSBlbGVtZW50LmFuY2Vz dG9ycygpOwogICAgcmV0dXJuIE9iamVjdC5pc051bWJlcihleHByZXNzaW9uKSA/ IGFuY2VzdG9yc1tleHByZXNzaW9uXSA6CiAgICAgIFNlbGVjdG9yLmZpbmRFbGVt ZW50KGFuY2VzdG9ycywgZXhwcmVzc2lvbiwgaW5kZXgpOwogIH0sCgogIGRvd246 IGZ1bmN0aW9uKGVsZW1lbnQsIGV4cHJlc3Npb24sIGluZGV4KSB7CiAgICBlbGVt ZW50ID0gJChlbGVtZW50KTsKICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09IDEp IHJldHVybiBlbGVtZW50LmZpcnN0RGVzY2VuZGFudCgpOwogICAgcmV0dXJuIE9i amVjdC5pc051bWJlcihleHByZXNzaW9uKSA/IGVsZW1lbnQuZGVzY2VuZGFudHMo KVtleHByZXNzaW9uXSA6CiAgICAgIGVsZW1lbnQuc2VsZWN0KGV4cHJlc3Npb24p W2luZGV4IHx8IDBdOwogIH0sCgogIHByZXZpb3VzOiBmdW5jdGlvbihlbGVtZW50 LCBleHByZXNzaW9uLCBpbmRleCkgewogICAgZWxlbWVudCA9ICQoZWxlbWVudCk7 CiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PSAxKSByZXR1cm4gJChTZWxlY3Rv ci5oYW5kbGVycy5wcmV2aW91c0VsZW1lbnRTaWJsaW5nKGVsZW1lbnQpKTsKICAg IHZhciBwcmV2aW91c1NpYmxpbmdzID0gZWxlbWVudC5wcmV2aW91c1NpYmxpbmdz KCk7CiAgICByZXR1cm4gT2JqZWN0LmlzTnVtYmVyKGV4cHJlc3Npb24pID8gcHJl dmlvdXNTaWJsaW5nc1tleHByZXNzaW9uXSA6CiAgICAgIFNlbGVjdG9yLmZpbmRF bGVtZW50KHByZXZpb3VzU2libGluZ3MsIGV4cHJlc3Npb24sIGluZGV4KTsKICB9 LAoKICBuZXh0OiBmdW5jdGlvbihlbGVtZW50LCBleHByZXNzaW9uLCBpbmRleCkg ewogICAgZWxlbWVudCA9ICQoZWxlbWVudCk7CiAgICBpZiAoYXJndW1lbnRzLmxl bmd0aCA9PSAxKSByZXR1cm4gJChTZWxlY3Rvci5oYW5kbGVycy5uZXh0RWxlbWVu dFNpYmxpbmcoZWxlbWVudCkpOwogICAgdmFyIG5leHRTaWJsaW5ncyA9IGVsZW1l bnQubmV4dFNpYmxpbmdzKCk7CiAgICByZXR1cm4gT2JqZWN0LmlzTnVtYmVyKGV4 cHJlc3Npb24pID8gbmV4dFNpYmxpbmdzW2V4cHJlc3Npb25dIDoKICAgICAgU2Vs ZWN0b3IuZmluZEVsZW1lbnQobmV4dFNpYmxpbmdzLCBleHByZXNzaW9uLCBpbmRl eCk7CiAgfSwKCiAgc2VsZWN0OiBmdW5jdGlvbigpIHsKICAgIHZhciBhcmdzID0g JEEoYXJndW1lbnRzKSwgZWxlbWVudCA9ICQoYXJncy5zaGlmdCgpKTsKICAgIHJl dHVybiBTZWxlY3Rvci5maW5kQ2hpbGRFbGVtZW50cyhlbGVtZW50LCBhcmdzKTsK ICB9LAoKICBhZGphY2VudDogZnVuY3Rpb24oKSB7CiAgICB2YXIgYXJncyA9ICRB KGFyZ3VtZW50cyksIGVsZW1lbnQgPSAkKGFyZ3Muc2hpZnQoKSk7CiAgICByZXR1 cm4gU2VsZWN0b3IuZmluZENoaWxkRWxlbWVudHMoZWxlbWVudC5wYXJlbnROb2Rl LCBhcmdzKS53aXRob3V0KGVsZW1lbnQpOwogIH0sCgogIGlkZW50aWZ5OiBmdW5j dGlvbihlbGVtZW50KSB7CiAgICBlbGVtZW50ID0gJChlbGVtZW50KTsKICAgIHZh ciBpZCA9IGVsZW1lbnQucmVhZEF0dHJpYnV0ZSgnaWQnKSwgc2VsZiA9IGFyZ3Vt ZW50cy5jYWxsZWU7CiAgICBpZiAoaWQpIHJldHVybiBpZDsKICAgIGRvIHsgaWQg PSAnYW5vbnltb3VzX2VsZW1lbnRfJyArIHNlbGYuY291bnRlcisrIH0gd2hpbGUg KCQoaWQpKTsKICAgIGVsZW1lbnQud3JpdGVBdHRyaWJ1dGUoJ2lkJywgaWQpOwog ICAgcmV0dXJuIGlkOwogIH0sCgogIHJlYWRBdHRyaWJ1dGU6IGZ1bmN0aW9uKGVs ZW1lbnQsIG5hbWUpIHsKICAgIGVsZW1lbnQgPSAkKGVsZW1lbnQpOwogICAgaWYg KFByb3RvdHlwZS5Ccm93c2VyLklFKSB7CiAgICAgIHZhciB0ID0gRWxlbWVudC5f YXR0cmlidXRlVHJhbnNsYXRpb25zLnJlYWQ7CiAgICAgIGlmICh0LnZhbHVlc1tu YW1lXSkgcmV0dXJuIHQudmFsdWVzW25hbWVdKGVsZW1lbnQsIG5hbWUpOwogICAg ICBpZiAodC5uYW1lc1tuYW1lXSkgbmFtZSA9IHQubmFtZXNbbmFtZV07CiAgICAg IGlmIChuYW1lLmluY2x1ZGUoJzonKSkgewogICAgICAgIHJldHVybiAoIWVsZW1l bnQuYXR0cmlidXRlcyB8fCAhZWxlbWVudC5hdHRyaWJ1dGVzW25hbWVdKSA/IG51 bGwgOgogICAgICAgICBlbGVtZW50LmF0dHJpYnV0ZXNbbmFtZV0udmFsdWU7CiAg ICAgIH0KICAgIH0KICAgIHJldHVybiBlbGVtZW50LmdldEF0dHJpYnV0ZShuYW1l KTsKICB9LAoKICB3cml0ZUF0dHJpYnV0ZTogZnVuY3Rpb24oZWxlbWVudCwgbmFt ZSwgdmFsdWUpIHsKICAgIGVsZW1lbnQgPSAkKGVsZW1lbnQpOwogICAgdmFyIGF0 dHJpYnV0ZXMgPSB7IH0sIHQgPSBFbGVtZW50Ll9hdHRyaWJ1dGVUcmFuc2xhdGlv bnMud3JpdGU7CgogICAgaWYgKHR5cGVvZiBuYW1lID09ICdvYmplY3QnKSBhdHRy aWJ1dGVzID0gbmFtZTsKICAgIGVsc2UgYXR0cmlidXRlc1tuYW1lXSA9IE9iamVj dC5pc1VuZGVmaW5lZCh2YWx1ZSkgPyB0cnVlIDogdmFsdWU7CgogICAgZm9yICh2 YXIgYXR0ciBpbiBhdHRyaWJ1dGVzKSB7CiAgICAgIG5hbWUgPSB0Lm5hbWVzW2F0 dHJdIHx8IGF0dHI7CiAgICAgIHZhbHVlID0gYXR0cmlidXRlc1thdHRyXTsKICAg ICAgaWYgKHQudmFsdWVzW2F0dHJdKSBuYW1lID0gdC52YWx1ZXNbYXR0cl0oZWxl bWVudCwgdmFsdWUpOwogICAgICBpZiAodmFsdWUgPT09IGZhbHNlIHx8IHZhbHVl ID09PSBudWxsKQogICAgICAgIGVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKG5hbWUp OwogICAgICBlbHNlIGlmICh2YWx1ZSA9PT0gdHJ1ZSkKICAgICAgICBlbGVtZW50 LnNldEF0dHJpYnV0ZShuYW1lLCBuYW1lKTsKICAgICAgZWxzZSBlbGVtZW50LnNl dEF0dHJpYnV0ZShuYW1lLCB2YWx1ZSk7CiAgICB9CiAgICByZXR1cm4gZWxlbWVu dDsKICB9LAoKICBnZXRIZWlnaHQ6IGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgIHJl dHVybiAkKGVsZW1lbnQpLmdldERpbWVuc2lvbnMoKS5oZWlnaHQ7CiAgfSwKCiAg Z2V0V2lkdGg6IGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgIHJldHVybiAkKGVsZW1l bnQpLmdldERpbWVuc2lvbnMoKS53aWR0aDsKICB9LAoKICBjbGFzc05hbWVzOiBm dW5jdGlvbihlbGVtZW50KSB7CiAgICByZXR1cm4gbmV3IEVsZW1lbnQuQ2xhc3NO YW1lcyhlbGVtZW50KTsKICB9LAoKICBoYXNDbGFzc05hbWU6IGZ1bmN0aW9uKGVs ZW1lbnQsIGNsYXNzTmFtZSkgewogICAgaWYgKCEoZWxlbWVudCA9ICQoZWxlbWVu dCkpKSByZXR1cm47CiAgICB2YXIgZWxlbWVudENsYXNzTmFtZSA9IGVsZW1lbnQu Y2xhc3NOYW1lOwogICAgcmV0dXJuIChlbGVtZW50Q2xhc3NOYW1lLmxlbmd0aCA+ IDAgJiYgKGVsZW1lbnRDbGFzc05hbWUgPT0gY2xhc3NOYW1lIHx8CiAgICAgIG5l dyBSZWdFeHAoIihefFxccykiICsgY2xhc3NOYW1lICsgIihcXHN8JCkiKS50ZXN0 KGVsZW1lbnRDbGFzc05hbWUpKSk7CiAgfSwKCiAgYWRkQ2xhc3NOYW1lOiBmdW5j dGlvbihlbGVtZW50LCBjbGFzc05hbWUpIHsKICAgIGlmICghKGVsZW1lbnQgPSAk KGVsZW1lbnQpKSkgcmV0dXJuOwogICAgaWYgKCFlbGVtZW50Lmhhc0NsYXNzTmFt ZShjbGFzc05hbWUpKQogICAgICBlbGVtZW50LmNsYXNzTmFtZSArPSAoZWxlbWVu dC5jbGFzc05hbWUgPyAnICcgOiAnJykgKyBjbGFzc05hbWU7CiAgICByZXR1cm4g ZWxlbWVudDsKICB9LAoKICByZW1vdmVDbGFzc05hbWU6IGZ1bmN0aW9uKGVsZW1l bnQsIGNsYXNzTmFtZSkgewogICAgaWYgKCEoZWxlbWVudCA9ICQoZWxlbWVudCkp KSByZXR1cm47CiAgICBlbGVtZW50LmNsYXNzTmFtZSA9IGVsZW1lbnQuY2xhc3NO YW1lLnJlcGxhY2UoCiAgICAgIG5ldyBSZWdFeHAoIihefFxccyspIiArIGNsYXNz TmFtZSArICIoXFxzK3wkKSIpLCAnICcpLnN0cmlwKCk7CiAgICByZXR1cm4gZWxl bWVudDsKICB9LAoKICB0b2dnbGVDbGFzc05hbWU6IGZ1bmN0aW9uKGVsZW1lbnQs IGNsYXNzTmFtZSkgewogICAgaWYgKCEoZWxlbWVudCA9ICQoZWxlbWVudCkpKSBy ZXR1cm47CiAgICByZXR1cm4gZWxlbWVudFtlbGVtZW50Lmhhc0NsYXNzTmFtZShj bGFzc05hbWUpID8KICAgICAgJ3JlbW92ZUNsYXNzTmFtZScgOiAnYWRkQ2xhc3NO YW1lJ10oY2xhc3NOYW1lKTsKICB9LAoKICAvLyByZW1vdmVzIHdoaXRlc3BhY2Ut b25seSB0ZXh0IG5vZGUgY2hpbGRyZW4KICBjbGVhbldoaXRlc3BhY2U6IGZ1bmN0 aW9uKGVsZW1lbnQpIHsKICAgIGVsZW1lbnQgPSAkKGVsZW1lbnQpOwogICAgdmFy IG5vZGUgPSBlbGVtZW50LmZpcnN0Q2hpbGQ7CiAgICB3aGlsZSAobm9kZSkgewog ICAgICB2YXIgbmV4dE5vZGUgPSBub2RlLm5leHRTaWJsaW5nOwogICAgICBpZiAo bm9kZS5ub2RlVHlwZSA9PSAzICYmICEvXFMvLnRlc3Qobm9kZS5ub2RlVmFsdWUp KQogICAgICAgIGVsZW1lbnQucmVtb3ZlQ2hpbGQobm9kZSk7CiAgICAgIG5vZGUg PSBuZXh0Tm9kZTsKICAgIH0KICAgIHJldHVybiBlbGVtZW50OwogIH0sCgogIGVt cHR5OiBmdW5jdGlvbihlbGVtZW50KSB7CiAgICByZXR1cm4gJChlbGVtZW50KS5p bm5lckhUTUwuYmxhbmsoKTsKICB9LAoKICBkZXNjZW5kYW50T2Y6IGZ1bmN0aW9u KGVsZW1lbnQsIGFuY2VzdG9yKSB7CiAgICBlbGVtZW50ID0gJChlbGVtZW50KSwg YW5jZXN0b3IgPSAkKGFuY2VzdG9yKTsKICAgIHZhciBvcmlnaW5hbEFuY2VzdG9y ID0gYW5jZXN0b3I7CgogICAgaWYgKGVsZW1lbnQuY29tcGFyZURvY3VtZW50UG9z aXRpb24pCiAgICAgIHJldHVybiAoZWxlbWVudC5jb21wYXJlRG9jdW1lbnRQb3Np dGlvbihhbmNlc3RvcikgJiA4KSA9PT0gODsKCiAgICBpZiAoZWxlbWVudC5zb3Vy Y2VJbmRleCAmJiAhUHJvdG90eXBlLkJyb3dzZXIuT3BlcmEpIHsKICAgICAgdmFy IGUgPSBlbGVtZW50LnNvdXJjZUluZGV4LCBhID0gYW5jZXN0b3Iuc291cmNlSW5k ZXgsCiAgICAgICBuZXh0QW5jZXN0b3IgPSBhbmNlc3Rvci5uZXh0U2libGluZzsK ICAgICAgaWYgKCFuZXh0QW5jZXN0b3IpIHsKICAgICAgICBkbyB7IGFuY2VzdG9y ID0gYW5jZXN0b3IucGFyZW50Tm9kZTsgfQogICAgICAgIHdoaWxlICghKG5leHRB bmNlc3RvciA9IGFuY2VzdG9yLm5leHRTaWJsaW5nKSAmJiBhbmNlc3Rvci5wYXJl bnROb2RlKTsKICAgICAgfQogICAgICBpZiAobmV4dEFuY2VzdG9yICYmIG5leHRB bmNlc3Rvci5zb3VyY2VJbmRleCkKICAgICAgIHJldHVybiAoZSA+IGEgJiYgZSA8 IG5leHRBbmNlc3Rvci5zb3VyY2VJbmRleCk7CiAgICB9CgogICAgd2hpbGUgKGVs ZW1lbnQgPSBlbGVtZW50LnBhcmVudE5vZGUpCiAgICAgIGlmIChlbGVtZW50ID09 IG9yaWdpbmFsQW5jZXN0b3IpIHJldHVybiB0cnVlOwogICAgcmV0dXJuIGZhbHNl OwogIH0sCgogIHNjcm9sbFRvOiBmdW5jdGlvbihlbGVtZW50KSB7CiAgICBlbGVt ZW50ID0gJChlbGVtZW50KTsKICAgIHZhciBwb3MgPSBlbGVtZW50LmN1bXVsYXRp dmVPZmZzZXQoKTsKICAgIHdpbmRvdy5zY3JvbGxUbyhwb3NbMF0sIHBvc1sxXSk7 CiAgICByZXR1cm4gZWxlbWVudDsKICB9LAoKICBnZXRTdHlsZTogZnVuY3Rpb24o ZWxlbWVudCwgc3R5bGUpIHsKICAgIGVsZW1lbnQgPSAkKGVsZW1lbnQpOwogICAg c3R5bGUgPSBzdHlsZSA9PSAnZmxvYXQnID8gJ2Nzc0Zsb2F0JyA6IHN0eWxlLmNh bWVsaXplKCk7CiAgICB2YXIgdmFsdWUgPSBlbGVtZW50LnN0eWxlW3N0eWxlXTsK ICAgIGlmICghdmFsdWUpIHsKICAgICAgdmFyIGNzcyA9IGRvY3VtZW50LmRlZmF1 bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCwgbnVsbCk7CiAgICAgIHZh bHVlID0gY3NzID8gY3NzW3N0eWxlXSA6IG51bGw7CiAgICB9CiAgICBpZiAoc3R5 bGUgPT0gJ29wYWNpdHknKSByZXR1cm4gdmFsdWUgPyBwYXJzZUZsb2F0KHZhbHVl KSA6IDEuMDsKICAgIHJldHVybiB2YWx1ZSA9PSAnYXV0bycgPyBudWxsIDogdmFs dWU7CiAgfSwKCiAgZ2V0T3BhY2l0eTogZnVuY3Rpb24oZWxlbWVudCkgewogICAg cmV0dXJuICQoZWxlbWVudCkuZ2V0U3R5bGUoJ29wYWNpdHknKTsKICB9LAoKICBz ZXRTdHlsZTogZnVuY3Rpb24oZWxlbWVudCwgc3R5bGVzKSB7CiAgICBlbGVtZW50 ID0gJChlbGVtZW50KTsKICAgIHZhciBlbGVtZW50U3R5bGUgPSBlbGVtZW50LnN0 eWxlLCBtYXRjaDsKICAgIGlmIChPYmplY3QuaXNTdHJpbmcoc3R5bGVzKSkgewog ICAgICBlbGVtZW50LnN0eWxlLmNzc1RleHQgKz0gJzsnICsgc3R5bGVzOwogICAg ICByZXR1cm4gc3R5bGVzLmluY2x1ZGUoJ29wYWNpdHknKSA/CiAgICAgICAgZWxl bWVudC5zZXRPcGFjaXR5KHN0eWxlcy5tYXRjaCgvb3BhY2l0eTpccyooXGQ/XC4/ XGQqKS8pWzFdKSA6IGVsZW1lbnQ7CiAgICB9CiAgICBmb3IgKHZhciBwcm9wZXJ0 eSBpbiBzdHlsZXMpCiAgICAgIGlmIChwcm9wZXJ0eSA9PSAnb3BhY2l0eScpIGVs ZW1lbnQuc2V0T3BhY2l0eShzdHlsZXNbcHJvcGVydHldKTsKICAgICAgZWxzZQog ICAgICAgIGVsZW1lbnRTdHlsZVsocHJvcGVydHkgPT0gJ2Zsb2F0JyB8fCBwcm9w ZXJ0eSA9PSAnY3NzRmxvYXQnKSA/CiAgICAgICAgICAoT2JqZWN0LmlzVW5kZWZp bmVkKGVsZW1lbnRTdHlsZS5zdHlsZUZsb2F0KSA/ICdjc3NGbG9hdCcgOiAnc3R5 bGVGbG9hdCcpIDoKICAgICAgICAgICAgcHJvcGVydHldID0gc3R5bGVzW3Byb3Bl cnR5XTsKCiAgICByZXR1cm4gZWxlbWVudDsKICB9LAoKICBzZXRPcGFjaXR5OiBm dW5jdGlvbihlbGVtZW50LCB2YWx1ZSkgewogICAgZWxlbWVudCA9ICQoZWxlbWVu dCk7CiAgICBlbGVtZW50LnN0eWxlLm9wYWNpdHkgPSAodmFsdWUgPT0gMSB8fCB2 YWx1ZSA9PT0gJycpID8gJycgOgogICAgICAodmFsdWUgPCAwLjAwMDAxKSA/IDAg OiB2YWx1ZTsKICAgIHJldHVybiBlbGVtZW50OwogIH0sCgogIGdldERpbWVuc2lv bnM6IGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgIGVsZW1lbnQgPSAkKGVsZW1lbnQp OwogICAgdmFyIGRpc3BsYXkgPSAkKGVsZW1lbnQpLmdldFN0eWxlKCdkaXNwbGF5 Jyk7CiAgICBpZiAoZGlzcGxheSAhPSAnbm9uZScgJiYgZGlzcGxheSAhPSBudWxs KSAvLyBTYWZhcmkgYnVnCiAgICAgIHJldHVybiB7d2lkdGg6IGVsZW1lbnQub2Zm c2V0V2lkdGgsIGhlaWdodDogZWxlbWVudC5vZmZzZXRIZWlnaHR9OwoKICAgIC8v IEFsbCAqV2lkdGggYW5kICpIZWlnaHQgcHJvcGVydGllcyBnaXZlIDAgb24gZWxl bWVudHMgd2l0aCBkaXNwbGF5IG5vbmUsCiAgICAvLyBzbyBlbmFibGUgdGhlIGVs ZW1lbnQgdGVtcG9yYXJpbHkKICAgIHZhciBlbHMgPSBlbGVtZW50LnN0eWxlOwog ICAgdmFyIG9yaWdpbmFsVmlzaWJpbGl0eSA9IGVscy52aXNpYmlsaXR5OwogICAg dmFyIG9yaWdpbmFsUG9zaXRpb24gPSBlbHMucG9zaXRpb247CiAgICB2YXIgb3Jp Z2luYWxEaXNwbGF5ID0gZWxzLmRpc3BsYXk7CiAgICBlbHMudmlzaWJpbGl0eSA9 ICdoaWRkZW4nOwogICAgZWxzLnBvc2l0aW9uID0gJ2Fic29sdXRlJzsKICAgIGVs cy5kaXNwbGF5ID0gJ2Jsb2NrJzsKICAgIHZhciBvcmlnaW5hbFdpZHRoID0gZWxl bWVudC5jbGllbnRXaWR0aDsKICAgIHZhciBvcmlnaW5hbEhlaWdodCA9IGVsZW1l bnQuY2xpZW50SGVpZ2h0OwogICAgZWxzLmRpc3BsYXkgPSBvcmlnaW5hbERpc3Bs YXk7CiAgICBlbHMucG9zaXRpb24gPSBvcmlnaW5hbFBvc2l0aW9uOwogICAgZWxz LnZpc2liaWxpdHkgPSBvcmlnaW5hbFZpc2liaWxpdHk7CiAgICByZXR1cm4ge3dp ZHRoOiBvcmlnaW5hbFdpZHRoLCBoZWlnaHQ6IG9yaWdpbmFsSGVpZ2h0fTsKICB9 LAoKICBtYWtlUG9zaXRpb25lZDogZnVuY3Rpb24oZWxlbWVudCkgewogICAgZWxl bWVudCA9ICQoZWxlbWVudCk7CiAgICB2YXIgcG9zID0gRWxlbWVudC5nZXRTdHls ZShlbGVtZW50LCAncG9zaXRpb24nKTsKICAgIGlmIChwb3MgPT0gJ3N0YXRpYycg fHwgIXBvcykgewogICAgICBlbGVtZW50Ll9tYWRlUG9zaXRpb25lZCA9IHRydWU7 CiAgICAgIGVsZW1lbnQuc3R5bGUucG9zaXRpb24gPSAncmVsYXRpdmUnOwogICAg ICAvLyBPcGVyYSByZXR1cm5zIHRoZSBvZmZzZXQgcmVsYXRpdmUgdG8gdGhlIHBv c2l0aW9uaW5nIGNvbnRleHQsIHdoZW4gYW4KICAgICAgLy8gZWxlbWVudCBpcyBw b3NpdGlvbiByZWxhdGl2ZSBidXQgdG9wIGFuZCBsZWZ0IGhhdmUgbm90IGJlZW4g ZGVmaW5lZAogICAgICBpZiAod2luZG93Lm9wZXJhKSB7CiAgICAgICAgZWxlbWVu dC5zdHlsZS50b3AgPSAwOwogICAgICAgIGVsZW1lbnQuc3R5bGUubGVmdCA9IDA7 CiAgICAgIH0KICAgIH0KICAgIHJldHVybiBlbGVtZW50OwogIH0sCgogIHVuZG9Q b3NpdGlvbmVkOiBmdW5jdGlvbihlbGVtZW50KSB7CiAgICBlbGVtZW50ID0gJChl bGVtZW50KTsKICAgIGlmIChlbGVtZW50Ll9tYWRlUG9zaXRpb25lZCkgewogICAg ICBlbGVtZW50Ll9tYWRlUG9zaXRpb25lZCA9IHVuZGVmaW5lZDsKICAgICAgZWxl bWVudC5zdHlsZS5wb3NpdGlvbiA9CiAgICAgICAgZWxlbWVudC5zdHlsZS50b3Ag PQogICAgICAgIGVsZW1lbnQuc3R5bGUubGVmdCA9CiAgICAgICAgZWxlbWVudC5z dHlsZS5ib3R0b20gPQogICAgICAgIGVsZW1lbnQuc3R5bGUucmlnaHQgPSAnJzsK ICAgIH0KICAgIHJldHVybiBlbGVtZW50OwogIH0sCgogIG1ha2VDbGlwcGluZzog ZnVuY3Rpb24oZWxlbWVudCkgewogICAgZWxlbWVudCA9ICQoZWxlbWVudCk7CiAg ICBpZiAoZWxlbWVudC5fb3ZlcmZsb3cpIHJldHVybiBlbGVtZW50OwogICAgZWxl bWVudC5fb3ZlcmZsb3cgPSBFbGVtZW50LmdldFN0eWxlKGVsZW1lbnQsICdvdmVy ZmxvdycpIHx8ICdhdXRvJzsKICAgIGlmIChlbGVtZW50Ll9vdmVyZmxvdyAhPT0g J2hpZGRlbicpCiAgICAgIGVsZW1lbnQuc3R5bGUub3ZlcmZsb3cgPSAnaGlkZGVu JzsKICAgIHJldHVybiBlbGVtZW50OwogIH0sCgogIHVuZG9DbGlwcGluZzogZnVu Y3Rpb24oZWxlbWVudCkgewogICAgZWxlbWVudCA9ICQoZWxlbWVudCk7CiAgICBp ZiAoIWVsZW1lbnQuX292ZXJmbG93KSByZXR1cm4gZWxlbWVudDsKICAgIGVsZW1l bnQuc3R5bGUub3ZlcmZsb3cgPSBlbGVtZW50Ll9vdmVyZmxvdyA9PSAnYXV0bycg PyAnJyA6IGVsZW1lbnQuX292ZXJmbG93OwogICAgZWxlbWVudC5fb3ZlcmZsb3cg PSBudWxsOwogICAgcmV0dXJuIGVsZW1lbnQ7CiAgfSwKCiAgY3VtdWxhdGl2ZU9m ZnNldDogZnVuY3Rpb24oZWxlbWVudCkgewogICAgdmFyIHZhbHVlVCA9IDAsIHZh bHVlTCA9IDA7CiAgICBkbyB7CiAgICAgIHZhbHVlVCArPSBlbGVtZW50Lm9mZnNl dFRvcCAgfHwgMDsKICAgICAgdmFsdWVMICs9IGVsZW1lbnQub2Zmc2V0TGVmdCB8 fCAwOwogICAgICBlbGVtZW50ID0gZWxlbWVudC5vZmZzZXRQYXJlbnQ7CiAgICB9 IHdoaWxlIChlbGVtZW50KTsKICAgIHJldHVybiBFbGVtZW50Ll9yZXR1cm5PZmZz ZXQodmFsdWVMLCB2YWx1ZVQpOwogIH0sCgogIHBvc2l0aW9uZWRPZmZzZXQ6IGZ1 bmN0aW9uKGVsZW1lbnQpIHsKICAgIHZhciB2YWx1ZVQgPSAwLCB2YWx1ZUwgPSAw OwogICAgZG8gewogICAgICB2YWx1ZVQgKz0gZWxlbWVudC5vZmZzZXRUb3AgIHx8 IDA7CiAgICAgIHZhbHVlTCArPSBlbGVtZW50Lm9mZnNldExlZnQgfHwgMDsKICAg ICAgZWxlbWVudCA9IGVsZW1lbnQub2Zmc2V0UGFyZW50OwogICAgICBpZiAoZWxl bWVudCkgewogICAgICAgIGlmIChlbGVtZW50LnRhZ05hbWUgPT0gJ0JPRFknKSBi cmVhazsKICAgICAgICB2YXIgcCA9IEVsZW1lbnQuZ2V0U3R5bGUoZWxlbWVudCwg J3Bvc2l0aW9uJyk7CiAgICAgICAgaWYgKHAgIT09ICdzdGF0aWMnKSBicmVhazsK ICAgICAgfQogICAgfSB3aGlsZSAoZWxlbWVudCk7CiAgICByZXR1cm4gRWxlbWVu dC5fcmV0dXJuT2Zmc2V0KHZhbHVlTCwgdmFsdWVUKTsKICB9LAoKICBhYnNvbHV0 aXplOiBmdW5jdGlvbihlbGVtZW50KSB7CiAgICBlbGVtZW50ID0gJChlbGVtZW50 KTsKICAgIGlmIChlbGVtZW50LmdldFN0eWxlKCdwb3NpdGlvbicpID09ICdhYnNv bHV0ZScpIHJldHVybjsKICAgIC8vIFBvc2l0aW9uLnByZXBhcmUoKTsgLy8gVG8g YmUgZG9uZSBtYW51YWxseSBieSBTY3JpcHR5IHdoZW4gaXQgbmVlZHMgaXQuCgog ICAgdmFyIG9mZnNldHMgPSBlbGVtZW50LnBvc2l0aW9uZWRPZmZzZXQoKTsKICAg IHZhciB0b3AgICAgID0gb2Zmc2V0c1sxXTsKICAgIHZhciBsZWZ0ICAgID0gb2Zm c2V0c1swXTsKICAgIHZhciB3aWR0aCAgID0gZWxlbWVudC5jbGllbnRXaWR0aDsK ICAgIHZhciBoZWlnaHQgID0gZWxlbWVudC5jbGllbnRIZWlnaHQ7CgogICAgZWxl bWVudC5fb3JpZ2luYWxMZWZ0ICAgPSBsZWZ0IC0gcGFyc2VGbG9hdChlbGVtZW50 LnN0eWxlLmxlZnQgIHx8IDApOwogICAgZWxlbWVudC5fb3JpZ2luYWxUb3AgICAg PSB0b3AgIC0gcGFyc2VGbG9hdChlbGVtZW50LnN0eWxlLnRvcCB8fCAwKTsKICAg IGVsZW1lbnQuX29yaWdpbmFsV2lkdGggID0gZWxlbWVudC5zdHlsZS53aWR0aDsK ICAgIGVsZW1lbnQuX29yaWdpbmFsSGVpZ2h0ID0gZWxlbWVudC5zdHlsZS5oZWln aHQ7CgogICAgZWxlbWVudC5zdHlsZS5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7CiAg ICBlbGVtZW50LnN0eWxlLnRvcCAgICA9IHRvcCArICdweCc7CiAgICBlbGVtZW50 LnN0eWxlLmxlZnQgICA9IGxlZnQgKyAncHgnOwogICAgZWxlbWVudC5zdHlsZS53 aWR0aCAgPSB3aWR0aCArICdweCc7CiAgICBlbGVtZW50LnN0eWxlLmhlaWdodCA9 IGhlaWdodCArICdweCc7CiAgICByZXR1cm4gZWxlbWVudDsKICB9LAoKICByZWxh dGl2aXplOiBmdW5jdGlvbihlbGVtZW50KSB7CiAgICBlbGVtZW50ID0gJChlbGVt ZW50KTsKICAgIGlmIChlbGVtZW50LmdldFN0eWxlKCdwb3NpdGlvbicpID09ICdy ZWxhdGl2ZScpIHJldHVybjsKICAgIC8vIFBvc2l0aW9uLnByZXBhcmUoKTsgLy8g VG8gYmUgZG9uZSBtYW51YWxseSBieSBTY3JpcHR5IHdoZW4gaXQgbmVlZHMgaXQu CgogICAgZWxlbWVudC5zdHlsZS5wb3NpdGlvbiA9ICdyZWxhdGl2ZSc7CiAgICB2 YXIgdG9wICA9IHBhcnNlRmxvYXQoZWxlbWVudC5zdHlsZS50b3AgIHx8IDApIC0g KGVsZW1lbnQuX29yaWdpbmFsVG9wIHx8IDApOwogICAgdmFyIGxlZnQgPSBwYXJz ZUZsb2F0KGVsZW1lbnQuc3R5bGUubGVmdCB8fCAwKSAtIChlbGVtZW50Ll9vcmln aW5hbExlZnQgfHwgMCk7CgogICAgZWxlbWVudC5zdHlsZS50b3AgICAgPSB0b3Ag KyAncHgnOwogICAgZWxlbWVudC5zdHlsZS5sZWZ0ICAgPSBsZWZ0ICsgJ3B4JzsK ICAgIGVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gZWxlbWVudC5fb3JpZ2luYWxIZWln aHQ7CiAgICBlbGVtZW50LnN0eWxlLndpZHRoICA9IGVsZW1lbnQuX29yaWdpbmFs V2lkdGg7CiAgICByZXR1cm4gZWxlbWVudDsKICB9LAoKICBjdW11bGF0aXZlU2Ny b2xsT2Zmc2V0OiBmdW5jdGlvbihlbGVtZW50KSB7CiAgICB2YXIgdmFsdWVUID0g MCwgdmFsdWVMID0gMDsKICAgIGRvIHsKICAgICAgdmFsdWVUICs9IGVsZW1lbnQu c2Nyb2xsVG9wICB8fCAwOwogICAgICB2YWx1ZUwgKz0gZWxlbWVudC5zY3JvbGxM ZWZ0IHx8IDA7CiAgICAgIGVsZW1lbnQgPSBlbGVtZW50LnBhcmVudE5vZGU7CiAg ICB9IHdoaWxlIChlbGVtZW50KTsKICAgIHJldHVybiBFbGVtZW50Ll9yZXR1cm5P ZmZzZXQodmFsdWVMLCB2YWx1ZVQpOwogIH0sCgogIGdldE9mZnNldFBhcmVudDog ZnVuY3Rpb24oZWxlbWVudCkgewogICAgaWYgKGVsZW1lbnQub2Zmc2V0UGFyZW50 KSByZXR1cm4gJChlbGVtZW50Lm9mZnNldFBhcmVudCk7CiAgICBpZiAoZWxlbWVu dCA9PSBkb2N1bWVudC5ib2R5KSByZXR1cm4gJChlbGVtZW50KTsKCiAgICB3aGls ZSAoKGVsZW1lbnQgPSBlbGVtZW50LnBhcmVudE5vZGUpICYmIGVsZW1lbnQgIT0g ZG9jdW1lbnQuYm9keSkKICAgICAgaWYgKEVsZW1lbnQuZ2V0U3R5bGUoZWxlbWVu dCwgJ3Bvc2l0aW9uJykgIT0gJ3N0YXRpYycpCiAgICAgICAgcmV0dXJuICQoZWxl bWVudCk7CgogICAgcmV0dXJuICQoZG9jdW1lbnQuYm9keSk7CiAgfSwKCiAgdmll d3BvcnRPZmZzZXQ6IGZ1bmN0aW9uKGZvckVsZW1lbnQpIHsKICAgIHZhciB2YWx1 ZVQgPSAwLCB2YWx1ZUwgPSAwOwoKICAgIHZhciBlbGVtZW50ID0gZm9yRWxlbWVu dDsKICAgIGRvIHsKICAgICAgdmFsdWVUICs9IGVsZW1lbnQub2Zmc2V0VG9wICB8 fCAwOwogICAgICB2YWx1ZUwgKz0gZWxlbWVudC5vZmZzZXRMZWZ0IHx8IDA7Cgog ICAgICAvLyBTYWZhcmkgZml4CiAgICAgIGlmIChlbGVtZW50Lm9mZnNldFBhcmVu dCA9PSBkb2N1bWVudC5ib2R5ICYmCiAgICAgICAgRWxlbWVudC5nZXRTdHlsZShl bGVtZW50LCAncG9zaXRpb24nKSA9PSAnYWJzb2x1dGUnKSBicmVhazsKCiAgICB9 IHdoaWxlIChlbGVtZW50ID0gZWxlbWVudC5vZmZzZXRQYXJlbnQpOwoKICAgIGVs ZW1lbnQgPSBmb3JFbGVtZW50OwogICAgZG8gewogICAgICBpZiAoIVByb3RvdHlw ZS5Ccm93c2VyLk9wZXJhIHx8IGVsZW1lbnQudGFnTmFtZSA9PSAnQk9EWScpIHsK ICAgICAgICB2YWx1ZVQgLT0gZWxlbWVudC5zY3JvbGxUb3AgIHx8IDA7CiAgICAg ICAgdmFsdWVMIC09IGVsZW1lbnQuc2Nyb2xsTGVmdCB8fCAwOwogICAgICB9CiAg ICB9IHdoaWxlIChlbGVtZW50ID0gZWxlbWVudC5wYXJlbnROb2RlKTsKCiAgICBy ZXR1cm4gRWxlbWVudC5fcmV0dXJuT2Zmc2V0KHZhbHVlTCwgdmFsdWVUKTsKICB9 LAoKICBjbG9uZVBvc2l0aW9uOiBmdW5jdGlvbihlbGVtZW50LCBzb3VyY2UpIHsK ICAgIHZhciBvcHRpb25zID0gT2JqZWN0LmV4dGVuZCh7CiAgICAgIHNldExlZnQ6 ICAgIHRydWUsCiAgICAgIHNldFRvcDogICAgIHRydWUsCiAgICAgIHNldFdpZHRo OiAgIHRydWUsCiAgICAgIHNldEhlaWdodDogIHRydWUsCiAgICAgIG9mZnNldFRv cDogIDAsCiAgICAgIG9mZnNldExlZnQ6IDAKICAgIH0sIGFyZ3VtZW50c1syXSB8 fCB7IH0pOwoKICAgIC8vIGZpbmQgcGFnZSBwb3NpdGlvbiBvZiBzb3VyY2UKICAg IHNvdXJjZSA9ICQoc291cmNlKTsKICAgIHZhciBwID0gc291cmNlLnZpZXdwb3J0 T2Zmc2V0KCk7CgogICAgLy8gZmluZCBjb29yZGluYXRlIHN5c3RlbSB0byB1c2UK ICAgIGVsZW1lbnQgPSAkKGVsZW1lbnQpOwogICAgdmFyIGRlbHRhID0gWzAsIDBd OwogICAgdmFyIHBhcmVudCA9IG51bGw7CiAgICAvLyBkZWx0YSBbMCwwXSB3aWxs IGRvIGZpbmUgd2l0aCBwb3NpdGlvbjogZml4ZWQgZWxlbWVudHMsCiAgICAvLyBw b3NpdGlvbjphYnNvbHV0ZSBuZWVkcyBvZmZzZXRQYXJlbnQgZGVsdGFzCiAgICBp ZiAoRWxlbWVudC5nZXRTdHlsZShlbGVtZW50LCAncG9zaXRpb24nKSA9PSAnYWJz b2x1dGUnKSB7CiAgICAgIHBhcmVudCA9IGVsZW1lbnQuZ2V0T2Zmc2V0UGFyZW50 KCk7CiAgICAgIGRlbHRhID0gcGFyZW50LnZpZXdwb3J0T2Zmc2V0KCk7CiAgICB9 CgogICAgLy8gY29ycmVjdCBieSBib2R5IG9mZnNldHMgKGZpeGVzIFNhZmFyaSkK ICAgIGlmIChwYXJlbnQgPT0gZG9jdW1lbnQuYm9keSkgewogICAgICBkZWx0YVsw XSAtPSBkb2N1bWVudC5ib2R5Lm9mZnNldExlZnQ7CiAgICAgIGRlbHRhWzFdIC09 IGRvY3VtZW50LmJvZHkub2Zmc2V0VG9wOwogICAgfQoKICAgIC8vIHNldCBwb3Np dGlvbgogICAgaWYgKG9wdGlvbnMuc2V0TGVmdCkgICBlbGVtZW50LnN0eWxlLmxl ZnQgID0gKHBbMF0gLSBkZWx0YVswXSArIG9wdGlvbnMub2Zmc2V0TGVmdCkgKyAn cHgnOwogICAgaWYgKG9wdGlvbnMuc2V0VG9wKSAgICBlbGVtZW50LnN0eWxlLnRv cCAgID0gKHBbMV0gLSBkZWx0YVsxXSArIG9wdGlvbnMub2Zmc2V0VG9wKSArICdw eCc7CiAgICBpZiAob3B0aW9ucy5zZXRXaWR0aCkgIGVsZW1lbnQuc3R5bGUud2lk dGggPSBzb3VyY2Uub2Zmc2V0V2lkdGggKyAncHgnOwogICAgaWYgKG9wdGlvbnMu c2V0SGVpZ2h0KSBlbGVtZW50LnN0eWxlLmhlaWdodCA9IHNvdXJjZS5vZmZzZXRI ZWlnaHQgKyAncHgnOwogICAgcmV0dXJuIGVsZW1lbnQ7CiAgfQp9OwoKRWxlbWVu dC5NZXRob2RzLmlkZW50aWZ5LmNvdW50ZXIgPSAxOwoKT2JqZWN0LmV4dGVuZChF bGVtZW50Lk1ldGhvZHMsIHsKICBnZXRFbGVtZW50c0J5U2VsZWN0b3I6IEVsZW1l bnQuTWV0aG9kcy5zZWxlY3QsCiAgY2hpbGRFbGVtZW50czogRWxlbWVudC5NZXRo b2RzLmltbWVkaWF0ZURlc2NlbmRhbnRzCn0pOwoKRWxlbWVudC5fYXR0cmlidXRl VHJhbnNsYXRpb25zID0gewogIHdyaXRlOiB7CiAgICBuYW1lczogewogICAgICBj bGFzc05hbWU6ICdjbGFzcycsCiAgICAgIGh0bWxGb3I6ICAgJ2ZvcicKICAgIH0s CiAgICB2YWx1ZXM6IHsgfQogIH0KfTsKCmlmIChQcm90b3R5cGUuQnJvd3Nlci5P cGVyYSkgewogIEVsZW1lbnQuTWV0aG9kcy5nZXRTdHlsZSA9IEVsZW1lbnQuTWV0 aG9kcy5nZXRTdHlsZS53cmFwKAogICAgZnVuY3Rpb24ocHJvY2VlZCwgZWxlbWVu dCwgc3R5bGUpIHsKICAgICAgc3dpdGNoIChzdHlsZSkgewogICAgICAgIGNhc2Ug J2xlZnQnOiBjYXNlICd0b3AnOiBjYXNlICdyaWdodCc6IGNhc2UgJ2JvdHRvbSc6 CiAgICAgICAgICBpZiAocHJvY2VlZChlbGVtZW50LCAncG9zaXRpb24nKSA9PT0g J3N0YXRpYycpIHJldHVybiBudWxsOwogICAgICAgIGNhc2UgJ2hlaWdodCc6IGNh c2UgJ3dpZHRoJzoKICAgICAgICAgIC8vIHJldHVybnMgJzBweCcgZm9yIGhpZGRl biBlbGVtZW50czsgd2Ugd2FudCBpdCB0byByZXR1cm4gbnVsbAogICAgICAgICAg aWYgKCFFbGVtZW50LnZpc2libGUoZWxlbWVudCkpIHJldHVybiBudWxsOwoKICAg ICAgICAgIC8vIHJldHVybnMgdGhlIGJvcmRlci1ib3ggZGltZW5zaW9ucyByYXRo ZXIgdGhhbiB0aGUgY29udGVudC1ib3gKICAgICAgICAgIC8vIGRpbWVuc2lvbnMs IHNvIHdlIHN1YnRyYWN0IHBhZGRpbmcgYW5kIGJvcmRlcnMgZnJvbSB0aGUgdmFs dWUKICAgICAgICAgIHZhciBkaW0gPSBwYXJzZUludChwcm9jZWVkKGVsZW1lbnQs IHN0eWxlKSwgMTApOwoKICAgICAgICAgIGlmIChkaW0gIT09IGVsZW1lbnRbJ29m ZnNldCcgKyBzdHlsZS5jYXBpdGFsaXplKCldKQogICAgICAgICAgICByZXR1cm4g ZGltICsgJ3B4JzsKCiAgICAgICAgICB2YXIgcHJvcGVydGllczsKICAgICAgICAg IGlmIChzdHlsZSA9PT0gJ2hlaWdodCcpIHsKICAgICAgICAgICAgcHJvcGVydGll cyA9IFsnYm9yZGVyLXRvcC13aWR0aCcsICdwYWRkaW5nLXRvcCcsCiAgICAgICAg ICAgICAncGFkZGluZy1ib3R0b20nLCAnYm9yZGVyLWJvdHRvbS13aWR0aCddOwog ICAgICAgICAgfQogICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIHByb3BlcnRp ZXMgPSBbJ2JvcmRlci1sZWZ0LXdpZHRoJywgJ3BhZGRpbmctbGVmdCcsCiAgICAg ICAgICAgICAncGFkZGluZy1yaWdodCcsICdib3JkZXItcmlnaHQtd2lkdGgnXTsK ICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBwcm9wZXJ0aWVzLmluamVjdChk aW0sIGZ1bmN0aW9uKG1lbW8sIHByb3BlcnR5KSB7CiAgICAgICAgICAgIHZhciB2 YWwgPSBwcm9jZWVkKGVsZW1lbnQsIHByb3BlcnR5KTsKICAgICAgICAgICAgcmV0 dXJuIHZhbCA9PT0gbnVsbCA/IG1lbW8gOiBtZW1vIC0gcGFyc2VJbnQodmFsLCAx MCk7CiAgICAgICAgICB9KSArICdweCc7CiAgICAgICAgZGVmYXVsdDogcmV0dXJu IHByb2NlZWQoZWxlbWVudCwgc3R5bGUpOwogICAgICB9CiAgICB9CiAgKTsKCiAg RWxlbWVudC5NZXRob2RzLnJlYWRBdHRyaWJ1dGUgPSBFbGVtZW50Lk1ldGhvZHMu cmVhZEF0dHJpYnV0ZS53cmFwKAogICAgZnVuY3Rpb24ocHJvY2VlZCwgZWxlbWVu dCwgYXR0cmlidXRlKSB7CiAgICAgIGlmIChhdHRyaWJ1dGUgPT09ICd0aXRsZScp IHJldHVybiBlbGVtZW50LnRpdGxlOwogICAgICByZXR1cm4gcHJvY2VlZChlbGVt ZW50LCBhdHRyaWJ1dGUpOwogICAgfQogICk7Cn0KCmVsc2UgaWYgKFByb3RvdHlw ZS5Ccm93c2VyLklFKSB7CiAgLy8gSUUgZG9lc24ndCByZXBvcnQgb2Zmc2V0cyBj b3JyZWN0bHkgZm9yIHN0YXRpYyBlbGVtZW50cywgc28gd2UgY2hhbmdlIHRoZW0K ICAvLyB0byAicmVsYXRpdmUiIHRvIGdldCB0aGUgdmFsdWVzLCB0aGVuIGNoYW5n ZSB0aGVtIGJhY2suCiAgRWxlbWVudC5NZXRob2RzLmdldE9mZnNldFBhcmVudCA9 IEVsZW1lbnQuTWV0aG9kcy5nZXRPZmZzZXRQYXJlbnQud3JhcCgKICAgIGZ1bmN0 aW9uKHByb2NlZWQsIGVsZW1lbnQpIHsKICAgICAgZWxlbWVudCA9ICQoZWxlbWVu dCk7CiAgICAgIHZhciBwb3NpdGlvbiA9IGVsZW1lbnQuZ2V0U3R5bGUoJ3Bvc2l0 aW9uJyk7CiAgICAgIGlmIChwb3NpdGlvbiAhPT0gJ3N0YXRpYycpIHJldHVybiBw cm9jZWVkKGVsZW1lbnQpOwogICAgICBlbGVtZW50LnNldFN0eWxlKHsgcG9zaXRp b246ICdyZWxhdGl2ZScgfSk7CiAgICAgIHZhciB2YWx1ZSA9IHByb2NlZWQoZWxl bWVudCk7CiAgICAgIGVsZW1lbnQuc2V0U3R5bGUoeyBwb3NpdGlvbjogcG9zaXRp b24gfSk7CiAgICAgIHJldHVybiB2YWx1ZTsKICAgIH0KICApOwoKICAkdygncG9z aXRpb25lZE9mZnNldCB2aWV3cG9ydE9mZnNldCcpLmVhY2goZnVuY3Rpb24obWV0 aG9kKSB7CiAgICBFbGVtZW50Lk1ldGhvZHNbbWV0aG9kXSA9IEVsZW1lbnQuTWV0 aG9kc1ttZXRob2RdLndyYXAoCiAgICAgIGZ1bmN0aW9uKHByb2NlZWQsIGVsZW1l bnQpIHsKICAgICAgICBlbGVtZW50ID0gJChlbGVtZW50KTsKICAgICAgICB2YXIg cG9zaXRpb24gPSBlbGVtZW50LmdldFN0eWxlKCdwb3NpdGlvbicpOwogICAgICAg IGlmIChwb3NpdGlvbiAhPT0gJ3N0YXRpYycpIHJldHVybiBwcm9jZWVkKGVsZW1l bnQpOwogICAgICAgIC8vIFRyaWdnZXIgaGFzTGF5b3V0IG9uIHRoZSBvZmZzZXQg cGFyZW50IHNvIHRoYXQgSUU2IHJlcG9ydHMKICAgICAgICAvLyBhY2N1cmF0ZSBv ZmZzZXRUb3AgYW5kIG9mZnNldExlZnQgdmFsdWVzIGZvciBwb3NpdGlvbjogZml4 ZWQuCiAgICAgICAgdmFyIG9mZnNldFBhcmVudCA9IGVsZW1lbnQuZ2V0T2Zmc2V0 UGFyZW50KCk7CiAgICAgICAgaWYgKG9mZnNldFBhcmVudCAmJiBvZmZzZXRQYXJl bnQuZ2V0U3R5bGUoJ3Bvc2l0aW9uJykgPT09ICdmaXhlZCcpCiAgICAgICAgICBv ZmZzZXRQYXJlbnQuc2V0U3R5bGUoeyB6b29tOiAxIH0pOwogICAgICAgIGVsZW1l bnQuc2V0U3R5bGUoeyBwb3NpdGlvbjogJ3JlbGF0aXZlJyB9KTsKICAgICAgICB2 YXIgdmFsdWUgPSBwcm9jZWVkKGVsZW1lbnQpOwogICAgICAgIGVsZW1lbnQuc2V0 U3R5bGUoeyBwb3NpdGlvbjogcG9zaXRpb24gfSk7CiAgICAgICAgcmV0dXJuIHZh bHVlOwogICAgICB9CiAgICApOwogIH0pOwoKICBFbGVtZW50Lk1ldGhvZHMuZ2V0 U3R5bGUgPSBmdW5jdGlvbihlbGVtZW50LCBzdHlsZSkgewogICAgZWxlbWVudCA9 ICQoZWxlbWVudCk7CiAgICBzdHlsZSA9IChzdHlsZSA9PSAnZmxvYXQnIHx8IHN0 eWxlID09ICdjc3NGbG9hdCcpID8gJ3N0eWxlRmxvYXQnIDogc3R5bGUuY2FtZWxp emUoKTsKICAgIHZhciB2YWx1ZSA9IGVsZW1lbnQuc3R5bGVbc3R5bGVdOwogICAg aWYgKCF2YWx1ZSAmJiBlbGVtZW50LmN1cnJlbnRTdHlsZSkgdmFsdWUgPSBlbGVt ZW50LmN1cnJlbnRTdHlsZVtzdHlsZV07CgogICAgaWYgKHN0eWxlID09ICdvcGFj aXR5JykgewogICAgICBpZiAodmFsdWUgPSAoZWxlbWVudC5nZXRTdHlsZSgnZmls dGVyJykgfHwgJycpLm1hdGNoKC9hbHBoYVwob3BhY2l0eT0oLiopXCkvKSkKICAg ICAgICBpZiAodmFsdWVbMV0pIHJldHVybiBwYXJzZUZsb2F0KHZhbHVlWzFdKSAv IDEwMDsKICAgICAgcmV0dXJuIDEuMDsKICAgIH0KCiAgICBpZiAodmFsdWUgPT0g J2F1dG8nKSB7CiAgICAgIGlmICgoc3R5bGUgPT0gJ3dpZHRoJyB8fCBzdHlsZSA9 PSAnaGVpZ2h0JykgJiYgKGVsZW1lbnQuZ2V0U3R5bGUoJ2Rpc3BsYXknKSAhPSAn bm9uZScpKQogICAgICAgIHJldHVybiBlbGVtZW50WydvZmZzZXQnICsgc3R5bGUu Y2FwaXRhbGl6ZSgpXSArICdweCc7CiAgICAgIHJldHVybiBudWxsOwogICAgfQog ICAgcmV0dXJuIHZhbHVlOwogIH07CgogIEVsZW1lbnQuTWV0aG9kcy5zZXRPcGFj aXR5ID0gZnVuY3Rpb24oZWxlbWVudCwgdmFsdWUpIHsKICAgIGZ1bmN0aW9uIHN0 cmlwQWxwaGEoZmlsdGVyKXsKICAgICAgcmV0dXJuIGZpbHRlci5yZXBsYWNlKC9h bHBoYVwoW15cKV0qXCkvZ2ksJycpOwogICAgfQogICAgZWxlbWVudCA9ICQoZWxl bWVudCk7CiAgICB2YXIgY3VycmVudFN0eWxlID0gZWxlbWVudC5jdXJyZW50U3R5 bGU7CiAgICBpZiAoKGN1cnJlbnRTdHlsZSAmJiAhY3VycmVudFN0eWxlLmhhc0xh eW91dCkgfHwKICAgICAgKCFjdXJyZW50U3R5bGUgJiYgZWxlbWVudC5zdHlsZS56 b29tID09ICdub3JtYWwnKSkKICAgICAgICBlbGVtZW50LnN0eWxlLnpvb20gPSAx OwoKICAgIHZhciBmaWx0ZXIgPSBlbGVtZW50LmdldFN0eWxlKCdmaWx0ZXInKSwg c3R5bGUgPSBlbGVtZW50LnN0eWxlOwogICAgaWYgKHZhbHVlID09IDEgfHwgdmFs dWUgPT09ICcnKSB7CiAgICAgIChmaWx0ZXIgPSBzdHJpcEFscGhhKGZpbHRlcikp ID8KICAgICAgICBzdHlsZS5maWx0ZXIgPSBmaWx0ZXIgOiBzdHlsZS5yZW1vdmVB dHRyaWJ1dGUoJ2ZpbHRlcicpOwogICAgICByZXR1cm4gZWxlbWVudDsKICAgIH0g ZWxzZSBpZiAodmFsdWUgPCAwLjAwMDAxKSB2YWx1ZSA9IDA7CiAgICBzdHlsZS5m aWx0ZXIgPSBzdHJpcEFscGhhKGZpbHRlcikgKwogICAgICAnYWxwaGEob3BhY2l0 eT0nICsgKHZhbHVlICogMTAwKSArICcpJzsKICAgIHJldHVybiBlbGVtZW50Owog IH07CgogIEVsZW1lbnQuX2F0dHJpYnV0ZVRyYW5zbGF0aW9ucyA9IHsKICAgIHJl YWQ6IHsKICAgICAgbmFtZXM6IHsKICAgICAgICAnY2xhc3MnOiAnY2xhc3NOYW1l JywKICAgICAgICAnZm9yJzogICAnaHRtbEZvcicKICAgICAgfSwKICAgICAgdmFs dWVzOiB7CiAgICAgICAgX2dldEF0dHI6IGZ1bmN0aW9uKGVsZW1lbnQsIGF0dHJp YnV0ZSkgewogICAgICAgICAgcmV0dXJuIGVsZW1lbnQuZ2V0QXR0cmlidXRlKGF0 dHJpYnV0ZSwgMik7CiAgICAgICAgfSwKICAgICAgICBfZ2V0QXR0ck5vZGU6IGZ1 bmN0aW9uKGVsZW1lbnQsIGF0dHJpYnV0ZSkgewogICAgICAgICAgdmFyIG5vZGUg PSBlbGVtZW50LmdldEF0dHJpYnV0ZU5vZGUoYXR0cmlidXRlKTsKICAgICAgICAg IHJldHVybiBub2RlID8gbm9kZS52YWx1ZSA6ICIiOwogICAgICAgIH0sCiAgICAg ICAgX2dldEV2OiBmdW5jdGlvbihlbGVtZW50LCBhdHRyaWJ1dGUpIHsKICAgICAg ICAgIGF0dHJpYnV0ZSA9IGVsZW1lbnQuZ2V0QXR0cmlidXRlKGF0dHJpYnV0ZSk7 CiAgICAgICAgICByZXR1cm4gYXR0cmlidXRlID8gYXR0cmlidXRlLnRvU3RyaW5n KCkuc2xpY2UoMjMsIC0yKSA6IG51bGw7CiAgICAgICAgfSwKICAgICAgICBfZmxh ZzogZnVuY3Rpb24oZWxlbWVudCwgYXR0cmlidXRlKSB7CiAgICAgICAgICByZXR1 cm4gJChlbGVtZW50KS5oYXNBdHRyaWJ1dGUoYXR0cmlidXRlKSA/IGF0dHJpYnV0 ZSA6IG51bGw7CiAgICAgICAgfSwKICAgICAgICBzdHlsZTogZnVuY3Rpb24oZWxl bWVudCkgewogICAgICAgICAgcmV0dXJuIGVsZW1lbnQuc3R5bGUuY3NzVGV4dC50 b0xvd2VyQ2FzZSgpOwogICAgICAgIH0sCiAgICAgICAgdGl0bGU6IGZ1bmN0aW9u KGVsZW1lbnQpIHsKICAgICAgICAgIHJldHVybiBlbGVtZW50LnRpdGxlOwogICAg ICAgIH0KICAgICAgfQogICAgfQogIH07CgogIEVsZW1lbnQuX2F0dHJpYnV0ZVRy YW5zbGF0aW9ucy53cml0ZSA9IHsKICAgIG5hbWVzOiBPYmplY3QuZXh0ZW5kKHsK ICAgICAgY2VsbHBhZGRpbmc6ICdjZWxsUGFkZGluZycsCiAgICAgIGNlbGxzcGFj aW5nOiAnY2VsbFNwYWNpbmcnCiAgICB9LCBFbGVtZW50Ll9hdHRyaWJ1dGVUcmFu c2xhdGlvbnMucmVhZC5uYW1lcyksCiAgICB2YWx1ZXM6IHsKICAgICAgY2hlY2tl ZDogZnVuY3Rpb24oZWxlbWVudCwgdmFsdWUpIHsKICAgICAgICBlbGVtZW50LmNo ZWNrZWQgPSAhIXZhbHVlOwogICAgICB9LAoKICAgICAgc3R5bGU6IGZ1bmN0aW9u KGVsZW1lbnQsIHZhbHVlKSB7CiAgICAgICAgZWxlbWVudC5zdHlsZS5jc3NUZXh0 ID0gdmFsdWUgPyB2YWx1ZSA6ICcnOwogICAgICB9CiAgICB9CiAgfTsKCiAgRWxl bWVudC5fYXR0cmlidXRlVHJhbnNsYXRpb25zLmhhcyA9IHt9OwoKICAkdygnY29s U3BhbiByb3dTcGFuIHZBbGlnbiBkYXRlVGltZSBhY2Nlc3NLZXkgdGFiSW5kZXgg JyArCiAgICAgICdlbmNUeXBlIG1heExlbmd0aCByZWFkT25seSBsb25nRGVzYycp LmVhY2goZnVuY3Rpb24oYXR0cikgewogICAgRWxlbWVudC5fYXR0cmlidXRlVHJh bnNsYXRpb25zLndyaXRlLm5hbWVzW2F0dHIudG9Mb3dlckNhc2UoKV0gPSBhdHRy OwogICAgRWxlbWVudC5fYXR0cmlidXRlVHJhbnNsYXRpb25zLmhhc1thdHRyLnRv TG93ZXJDYXNlKCldID0gYXR0cjsKICB9KTsKCiAgKGZ1bmN0aW9uKHYpIHsKICAg IE9iamVjdC5leHRlbmQodiwgewogICAgICBocmVmOiAgICAgICAgdi5fZ2V0QXR0 ciwKICAgICAgc3JjOiAgICAgICAgIHYuX2dldEF0dHIsCiAgICAgIHR5cGU6ICAg ICAgICB2Ll9nZXRBdHRyLAogICAgICBhY3Rpb246ICAgICAgdi5fZ2V0QXR0ck5v ZGUsCiAgICAgIGRpc2FibGVkOiAgICB2Ll9mbGFnLAogICAgICBjaGVja2VkOiAg ICAgdi5fZmxhZywKICAgICAgcmVhZG9ubHk6ICAgIHYuX2ZsYWcsCiAgICAgIG11 bHRpcGxlOiAgICB2Ll9mbGFnLAogICAgICBvbmxvYWQ6ICAgICAgdi5fZ2V0RXYs CiAgICAgIG9udW5sb2FkOiAgICB2Ll9nZXRFdiwKICAgICAgb25jbGljazogICAg IHYuX2dldEV2LAogICAgICBvbmRibGNsaWNrOiAgdi5fZ2V0RXYsCiAgICAgIG9u bW91c2Vkb3duOiB2Ll9nZXRFdiwKICAgICAgb25tb3VzZXVwOiAgIHYuX2dldEV2 LAogICAgICBvbm1vdXNlb3Zlcjogdi5fZ2V0RXYsCiAgICAgIG9ubW91c2Vtb3Zl OiB2Ll9nZXRFdiwKICAgICAgb25tb3VzZW91dDogIHYuX2dldEV2LAogICAgICBv bmZvY3VzOiAgICAgdi5fZ2V0RXYsCiAgICAgIG9uYmx1cjogICAgICB2Ll9nZXRF diwKICAgICAgb25rZXlwcmVzczogIHYuX2dldEV2LAogICAgICBvbmtleWRvd246 ICAgdi5fZ2V0RXYsCiAgICAgIG9ua2V5dXA6ICAgICB2Ll9nZXRFdiwKICAgICAg b25zdWJtaXQ6ICAgIHYuX2dldEV2LAogICAgICBvbnJlc2V0OiAgICAgdi5fZ2V0 RXYsCiAgICAgIG9uc2VsZWN0OiAgICB2Ll9nZXRFdiwKICAgICAgb25jaGFuZ2U6 ICAgIHYuX2dldEV2CiAgICB9KTsKICB9KShFbGVtZW50Ll9hdHRyaWJ1dGVUcmFu c2xhdGlvbnMucmVhZC52YWx1ZXMpOwp9CgplbHNlIGlmIChQcm90b3R5cGUuQnJv d3Nlci5HZWNrbyAmJiAvcnY6MVwuOFwuMC8udGVzdChuYXZpZ2F0b3IudXNlckFn ZW50KSkgewogIEVsZW1lbnQuTWV0aG9kcy5zZXRPcGFjaXR5ID0gZnVuY3Rpb24o ZWxlbWVudCwgdmFsdWUpIHsKICAgIGVsZW1lbnQgPSAkKGVsZW1lbnQpOwogICAg ZWxlbWVudC5zdHlsZS5vcGFjaXR5ID0gKHZhbHVlID09IDEpID8gMC45OTk5OTkg OgogICAgICAodmFsdWUgPT09ICcnKSA/ICcnIDogKHZhbHVlIDwgMC4wMDAwMSkg PyAwIDogdmFsdWU7CiAgICByZXR1cm4gZWxlbWVudDsKICB9Owp9CgplbHNlIGlm IChQcm90b3R5cGUuQnJvd3Nlci5XZWJLaXQpIHsKICBFbGVtZW50Lk1ldGhvZHMu c2V0T3BhY2l0eSA9IGZ1bmN0aW9uKGVsZW1lbnQsIHZhbHVlKSB7CiAgICBlbGVt ZW50ID0gJChlbGVtZW50KTsKICAgIGVsZW1lbnQuc3R5bGUub3BhY2l0eSA9ICh2 YWx1ZSA9PSAxIHx8IHZhbHVlID09PSAnJykgPyAnJyA6CiAgICAgICh2YWx1ZSA8 IDAuMDAwMDEpID8gMCA6IHZhbHVlOwoKICAgIGlmICh2YWx1ZSA9PSAxKQogICAg ICBpZihlbGVtZW50LnRhZ05hbWUgPT0gJ0lNRycgJiYgZWxlbWVudC53aWR0aCkg ewogICAgICAgIGVsZW1lbnQud2lkdGgrKzsgZWxlbWVudC53aWR0aC0tOwogICAg ICB9IGVsc2UgdHJ5IHsKICAgICAgICB2YXIgbiA9IGRvY3VtZW50LmNyZWF0ZVRl eHROb2RlKCcgJyk7CiAgICAgICAgZWxlbWVudC5hcHBlbmRDaGlsZChuKTsKICAg ICAgICBlbGVtZW50LnJlbW92ZUNoaWxkKG4pOwogICAgICB9IGNhdGNoIChlKSB7 IH0KCiAgICByZXR1cm4gZWxlbWVudDsKICB9OwoKICAvLyBTYWZhcmkgcmV0dXJu cyBtYXJnaW5zIG9uIGJvZHkgd2hpY2ggaXMgaW5jb3JyZWN0IGlmIHRoZSBjaGls ZCBpcyBhYnNvbHV0ZWx5CiAgLy8gcG9zaXRpb25lZC4gIEZvciBwZXJmb3JtYW5j ZSByZWFzb25zLCByZWRlZmluZSBFbGVtZW50I2N1bXVsYXRpdmVPZmZzZXQgZm9y CiAgLy8gS0hUTUwvV2ViS2l0IG9ubHkuCiAgRWxlbWVudC5NZXRob2RzLmN1bXVs YXRpdmVPZmZzZXQgPSBmdW5jdGlvbihlbGVtZW50KSB7CiAgICB2YXIgdmFsdWVU ID0gMCwgdmFsdWVMID0gMDsKICAgIGRvIHsKICAgICAgdmFsdWVUICs9IGVsZW1l bnQub2Zmc2V0VG9wICB8fCAwOwogICAgICB2YWx1ZUwgKz0gZWxlbWVudC5vZmZz ZXRMZWZ0IHx8IDA7CiAgICAgIGlmIChlbGVtZW50Lm9mZnNldFBhcmVudCA9PSBk b2N1bWVudC5ib2R5KQogICAgICAgIGlmIChFbGVtZW50LmdldFN0eWxlKGVsZW1l bnQsICdwb3NpdGlvbicpID09ICdhYnNvbHV0ZScpIGJyZWFrOwoKICAgICAgZWxl bWVudCA9IGVsZW1lbnQub2Zmc2V0UGFyZW50OwogICAgfSB3aGlsZSAoZWxlbWVu dCk7CgogICAgcmV0dXJuIEVsZW1lbnQuX3JldHVybk9mZnNldCh2YWx1ZUwsIHZh bHVlVCk7CiAgfTsKfQoKaWYgKFByb3RvdHlwZS5Ccm93c2VyLklFIHx8IFByb3Rv dHlwZS5Ccm93c2VyLk9wZXJhKSB7CiAgLy8gSUUgYW5kIE9wZXJhIGFyZSBtaXNz aW5nIC5pbm5lckhUTUwgc3VwcG9ydCBmb3IgVEFCTEUtcmVsYXRlZCBhbmQgU0VM RUNUIGVsZW1lbnRzCiAgRWxlbWVudC5NZXRob2RzLnVwZGF0ZSA9IGZ1bmN0aW9u KGVsZW1lbnQsIGNvbnRlbnQpIHsKICAgIGVsZW1lbnQgPSAkKGVsZW1lbnQpOwoK ICAgIGlmIChjb250ZW50ICYmIGNvbnRlbnQudG9FbGVtZW50KSBjb250ZW50ID0g Y29udGVudC50b0VsZW1lbnQoKTsKICAgIGlmIChPYmplY3QuaXNFbGVtZW50KGNv bnRlbnQpKSByZXR1cm4gZWxlbWVudC51cGRhdGUoKS5pbnNlcnQoY29udGVudCk7 CgogICAgY29udGVudCA9IE9iamVjdC50b0hUTUwoY29udGVudCk7CiAgICB2YXIg dGFnTmFtZSA9IGVsZW1lbnQudGFnTmFtZS50b1VwcGVyQ2FzZSgpOwoKICAgIGlm ICh0YWdOYW1lIGluIEVsZW1lbnQuX2luc2VydGlvblRyYW5zbGF0aW9ucy50YWdz KSB7CiAgICAgICRBKGVsZW1lbnQuY2hpbGROb2RlcykuZWFjaChmdW5jdGlvbihu b2RlKSB7IGVsZW1lbnQucmVtb3ZlQ2hpbGQobm9kZSkgfSk7CiAgICAgIEVsZW1l bnQuX2dldENvbnRlbnRGcm9tQW5vbnltb3VzRWxlbWVudCh0YWdOYW1lLCBjb250 ZW50LnN0cmlwU2NyaXB0cygpKQogICAgICAgIC5lYWNoKGZ1bmN0aW9uKG5vZGUp IHsgZWxlbWVudC5hcHBlbmRDaGlsZChub2RlKSB9KTsKICAgIH0KICAgIGVsc2Ug ZWxlbWVudC5pbm5lckhUTUwgPSBjb250ZW50LnN0cmlwU2NyaXB0cygpOwoKICAg IGNvbnRlbnQuZXZhbFNjcmlwdHMuYmluZChjb250ZW50KS5kZWZlcigpOwogICAg cmV0dXJuIGVsZW1lbnQ7CiAgfTsKfQoKaWYgKCdvdXRlckhUTUwnIGluIGRvY3Vt ZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpKSB7CiAgRWxlbWVudC5NZXRob2RzLnJl cGxhY2UgPSBmdW5jdGlvbihlbGVtZW50LCBjb250ZW50KSB7CiAgICBlbGVtZW50 ID0gJChlbGVtZW50KTsKCiAgICBpZiAoY29udGVudCAmJiBjb250ZW50LnRvRWxl bWVudCkgY29udGVudCA9IGNvbnRlbnQudG9FbGVtZW50KCk7CiAgICBpZiAoT2Jq ZWN0LmlzRWxlbWVudChjb250ZW50KSkgewogICAgICBlbGVtZW50LnBhcmVudE5v ZGUucmVwbGFjZUNoaWxkKGNvbnRlbnQsIGVsZW1lbnQpOwogICAgICByZXR1cm4g ZWxlbWVudDsKICAgIH0KCiAgICBjb250ZW50ID0gT2JqZWN0LnRvSFRNTChjb250 ZW50KTsKICAgIHZhciBwYXJlbnQgPSBlbGVtZW50LnBhcmVudE5vZGUsIHRhZ05h bWUgPSBwYXJlbnQudGFnTmFtZS50b1VwcGVyQ2FzZSgpOwoKICAgIGlmIChFbGVt ZW50Ll9pbnNlcnRpb25UcmFuc2xhdGlvbnMudGFnc1t0YWdOYW1lXSkgewogICAg ICB2YXIgbmV4dFNpYmxpbmcgPSBlbGVtZW50Lm5leHQoKTsKICAgICAgdmFyIGZy YWdtZW50cyA9IEVsZW1lbnQuX2dldENvbnRlbnRGcm9tQW5vbnltb3VzRWxlbWVu dCh0YWdOYW1lLCBjb250ZW50LnN0cmlwU2NyaXB0cygpKTsKICAgICAgcGFyZW50 LnJlbW92ZUNoaWxkKGVsZW1lbnQpOwogICAgICBpZiAobmV4dFNpYmxpbmcpCiAg ICAgICAgZnJhZ21lbnRzLmVhY2goZnVuY3Rpb24obm9kZSkgeyBwYXJlbnQuaW5z ZXJ0QmVmb3JlKG5vZGUsIG5leHRTaWJsaW5nKSB9KTsKICAgICAgZWxzZQogICAg ICAgIGZyYWdtZW50cy5lYWNoKGZ1bmN0aW9uKG5vZGUpIHsgcGFyZW50LmFwcGVu ZENoaWxkKG5vZGUpIH0pOwogICAgfQogICAgZWxzZSBlbGVtZW50Lm91dGVySFRN TCA9IGNvbnRlbnQuc3RyaXBTY3JpcHRzKCk7CgogICAgY29udGVudC5ldmFsU2Ny aXB0cy5iaW5kKGNvbnRlbnQpLmRlZmVyKCk7CiAgICByZXR1cm4gZWxlbWVudDsK ICB9Owp9CgpFbGVtZW50Ll9yZXR1cm5PZmZzZXQgPSBmdW5jdGlvbihsLCB0KSB7 CiAgdmFyIHJlc3VsdCA9IFtsLCB0XTsKICByZXN1bHQubGVmdCA9IGw7CiAgcmVz dWx0LnRvcCA9IHQ7CiAgcmV0dXJuIHJlc3VsdDsKfTsKCkVsZW1lbnQuX2dldENv bnRlbnRGcm9tQW5vbnltb3VzRWxlbWVudCA9IGZ1bmN0aW9uKHRhZ05hbWUsIGh0 bWwpIHsKICB2YXIgZGl2ID0gbmV3IEVsZW1lbnQoJ2RpdicpLCB0ID0gRWxlbWVu dC5faW5zZXJ0aW9uVHJhbnNsYXRpb25zLnRhZ3NbdGFnTmFtZV07CiAgaWYgKHQp IHsKICAgIGRpdi5pbm5lckhUTUwgPSB0WzBdICsgaHRtbCArIHRbMV07CiAgICB0 WzJdLnRpbWVzKGZ1bmN0aW9uKCkgeyBkaXYgPSBkaXYuZmlyc3RDaGlsZCB9KTsK ICB9IGVsc2UgZGl2LmlubmVySFRNTCA9IGh0bWw7CiAgcmV0dXJuICRBKGRpdi5j aGlsZE5vZGVzKTsKfTsKCkVsZW1lbnQuX2luc2VydGlvblRyYW5zbGF0aW9ucyA9 IHsKICBiZWZvcmU6IGZ1bmN0aW9uKGVsZW1lbnQsIG5vZGUpIHsKICAgIGVsZW1l bnQucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobm9kZSwgZWxlbWVudCk7CiAgfSwK ICB0b3A6IGZ1bmN0aW9uKGVsZW1lbnQsIG5vZGUpIHsKICAgIGVsZW1lbnQuaW5z ZXJ0QmVmb3JlKG5vZGUsIGVsZW1lbnQuZmlyc3RDaGlsZCk7CiAgfSwKICBib3R0 b206IGZ1bmN0aW9uKGVsZW1lbnQsIG5vZGUpIHsKICAgIGVsZW1lbnQuYXBwZW5k Q2hpbGQobm9kZSk7CiAgfSwKICBhZnRlcjogZnVuY3Rpb24oZWxlbWVudCwgbm9k ZSkgewogICAgZWxlbWVudC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShub2RlLCBl bGVtZW50Lm5leHRTaWJsaW5nKTsKICB9LAogIHRhZ3M6IHsKICAgIFRBQkxFOiAg Wyc8dGFibGU+JywgICAgICAgICAgICAgICAgJzwvdGFibGU+JywgICAgICAgICAg ICAgICAgICAgMV0sCiAgICBUQk9EWTogIFsnPHRhYmxlPjx0Ym9keT4nLCAgICAg ICAgICc8L3Rib2R5PjwvdGFibGU+JywgICAgICAgICAgIDJdLAogICAgVFI6ICAg ICBbJzx0YWJsZT48dGJvZHk+PHRyPicsICAgICAnPC90cj48L3Rib2R5PjwvdGFi bGU+JywgICAgICAzXSwKICAgIFREOiAgICAgWyc8dGFibGU+PHRib2R5Pjx0cj48 dGQ+JywgJzwvdGQ+PC90cj48L3Rib2R5PjwvdGFibGU+JywgNF0sCiAgICBTRUxF Q1Q6IFsnPHNlbGVjdD4nLCAgICAgICAgICAgICAgICc8L3NlbGVjdD4nLCAgICAg ICAgICAgICAgICAgIDFdCiAgfQp9OwoKKGZ1bmN0aW9uKCkgewogIE9iamVjdC5l eHRlbmQodGhpcy50YWdzLCB7CiAgICBUSEVBRDogdGhpcy50YWdzLlRCT0RZLAog ICAgVEZPT1Q6IHRoaXMudGFncy5UQk9EWSwKICAgIFRIOiAgICB0aGlzLnRhZ3Mu VEQKICB9KTsKfSkuY2FsbChFbGVtZW50Ll9pbnNlcnRpb25UcmFuc2xhdGlvbnMp OwoKRWxlbWVudC5NZXRob2RzLlNpbXVsYXRlZCA9IHsKICBoYXNBdHRyaWJ1dGU6 IGZ1bmN0aW9uKGVsZW1lbnQsIGF0dHJpYnV0ZSkgewogICAgYXR0cmlidXRlID0g RWxlbWVudC5fYXR0cmlidXRlVHJhbnNsYXRpb25zLmhhc1thdHRyaWJ1dGVdIHx8 IGF0dHJpYnV0ZTsKICAgIHZhciBub2RlID0gJChlbGVtZW50KS5nZXRBdHRyaWJ1 dGVOb2RlKGF0dHJpYnV0ZSk7CiAgICByZXR1cm4gbm9kZSAmJiBub2RlLnNwZWNp ZmllZDsKICB9Cn07CgpFbGVtZW50Lk1ldGhvZHMuQnlUYWcgPSB7IH07CgpPYmpl Y3QuZXh0ZW5kKEVsZW1lbnQsIEVsZW1lbnQuTWV0aG9kcyk7CgppZiAoIVByb3Rv dHlwZS5Ccm93c2VyRmVhdHVyZXMuRWxlbWVudEV4dGVuc2lvbnMgJiYKICAgIGRv Y3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpLl9fcHJvdG9fXykgewogIHdpbmRv dy5IVE1MRWxlbWVudCA9IHsgfTsKICB3aW5kb3cuSFRNTEVsZW1lbnQucHJvdG90 eXBlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JykuX19wcm90b19fOwog IFByb3RvdHlwZS5Ccm93c2VyRmVhdHVyZXMuRWxlbWVudEV4dGVuc2lvbnMgPSB0 cnVlOwp9CgpFbGVtZW50LmV4dGVuZCA9IChmdW5jdGlvbigpIHsKICBpZiAoUHJv dG90eXBlLkJyb3dzZXJGZWF0dXJlcy5TcGVjaWZpY0VsZW1lbnRFeHRlbnNpb25z KQogICAgcmV0dXJuIFByb3RvdHlwZS5LOwoKICB2YXIgTWV0aG9kcyA9IHsgfSwg QnlUYWcgPSBFbGVtZW50Lk1ldGhvZHMuQnlUYWc7CgogIHZhciBleHRlbmQgPSBP YmplY3QuZXh0ZW5kKGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgIGlmICghZWxlbWVu dCB8fCBlbGVtZW50Ll9leHRlbmRlZEJ5UHJvdG90eXBlIHx8CiAgICAgICAgZWxl bWVudC5ub2RlVHlwZSAhPSAxIHx8IGVsZW1lbnQgPT0gd2luZG93KSByZXR1cm4g ZWxlbWVudDsKCiAgICB2YXIgbWV0aG9kcyA9IE9iamVjdC5jbG9uZShNZXRob2Rz KSwKICAgICAgdGFnTmFtZSA9IGVsZW1lbnQudGFnTmFtZSwgcHJvcGVydHksIHZh bHVlOwoKICAgIC8vIGV4dGVuZCBtZXRob2RzIGZvciBzcGVjaWZpYyB0YWdzCiAg ICBpZiAoQnlUYWdbdGFnTmFtZV0pIE9iamVjdC5leHRlbmQobWV0aG9kcywgQnlU YWdbdGFnTmFtZV0pOwoKICAgIGZvciAocHJvcGVydHkgaW4gbWV0aG9kcykgewog ICAgICB2YWx1ZSA9IG1ldGhvZHNbcHJvcGVydHldOwogICAgICBpZiAoT2JqZWN0 LmlzRnVuY3Rpb24odmFsdWUpICYmICEocHJvcGVydHkgaW4gZWxlbWVudCkpCiAg ICAgICAgZWxlbWVudFtwcm9wZXJ0eV0gPSB2YWx1ZS5tZXRob2RpemUoKTsKICAg IH0KCiAgICBlbGVtZW50Ll9leHRlbmRlZEJ5UHJvdG90eXBlID0gUHJvdG90eXBl LmVtcHR5RnVuY3Rpb247CiAgICByZXR1cm4gZWxlbWVudDsKCiAgfSwgewogICAg cmVmcmVzaDogZnVuY3Rpb24oKSB7CiAgICAgIC8vIGV4dGVuZCBtZXRob2RzIGZv ciBhbGwgdGFncyAoU2FmYXJpIGRvZXNuJ3QgbmVlZCB0aGlzKQogICAgICBpZiAo IVByb3RvdHlwZS5Ccm93c2VyRmVhdHVyZXMuRWxlbWVudEV4dGVuc2lvbnMpIHsK ICAgICAgICBPYmplY3QuZXh0ZW5kKE1ldGhvZHMsIEVsZW1lbnQuTWV0aG9kcyk7 CiAgICAgICAgT2JqZWN0LmV4dGVuZChNZXRob2RzLCBFbGVtZW50Lk1ldGhvZHMu U2ltdWxhdGVkKTsKICAgICAgfQogICAgfQogIH0pOwoKICBleHRlbmQucmVmcmVz aCgpOwogIHJldHVybiBleHRlbmQ7Cn0pKCk7CgpFbGVtZW50Lmhhc0F0dHJpYnV0 ZSA9IGZ1bmN0aW9uKGVsZW1lbnQsIGF0dHJpYnV0ZSkgewogIGlmIChlbGVtZW50 Lmhhc0F0dHJpYnV0ZSkgcmV0dXJuIGVsZW1lbnQuaGFzQXR0cmlidXRlKGF0dHJp YnV0ZSk7CiAgcmV0dXJuIEVsZW1lbnQuTWV0aG9kcy5TaW11bGF0ZWQuaGFzQXR0 cmlidXRlKGVsZW1lbnQsIGF0dHJpYnV0ZSk7Cn07CgpFbGVtZW50LmFkZE1ldGhv ZHMgPSBmdW5jdGlvbihtZXRob2RzKSB7CiAgdmFyIEYgPSBQcm90b3R5cGUuQnJv d3NlckZlYXR1cmVzLCBUID0gRWxlbWVudC5NZXRob2RzLkJ5VGFnOwoKICBpZiAo IW1ldGhvZHMpIHsKICAgIE9iamVjdC5leHRlbmQoRm9ybSwgRm9ybS5NZXRob2Rz KTsKICAgIE9iamVjdC5leHRlbmQoRm9ybS5FbGVtZW50LCBGb3JtLkVsZW1lbnQu TWV0aG9kcyk7CiAgICBPYmplY3QuZXh0ZW5kKEVsZW1lbnQuTWV0aG9kcy5CeVRh ZywgewogICAgICAiRk9STSI6ICAgICBPYmplY3QuY2xvbmUoRm9ybS5NZXRob2Rz KSwKICAgICAgIklOUFVUIjogICAgT2JqZWN0LmNsb25lKEZvcm0uRWxlbWVudC5N ZXRob2RzKSwKICAgICAgIlNFTEVDVCI6ICAgT2JqZWN0LmNsb25lKEZvcm0uRWxl bWVudC5NZXRob2RzKSwKICAgICAgIlRFWFRBUkVBIjogT2JqZWN0LmNsb25lKEZv cm0uRWxlbWVudC5NZXRob2RzKQogICAgfSk7CiAgfQoKICBpZiAoYXJndW1lbnRz Lmxlbmd0aCA9PSAyKSB7CiAgICB2YXIgdGFnTmFtZSA9IG1ldGhvZHM7CiAgICBt ZXRob2RzID0gYXJndW1lbnRzWzFdOwogIH0KCiAgaWYgKCF0YWdOYW1lKSBPYmpl Y3QuZXh0ZW5kKEVsZW1lbnQuTWV0aG9kcywgbWV0aG9kcyB8fCB7IH0pOwogIGVs c2UgewogICAgaWYgKE9iamVjdC5pc0FycmF5KHRhZ05hbWUpKSB0YWdOYW1lLmVh Y2goZXh0ZW5kKTsKICAgIGVsc2UgZXh0ZW5kKHRhZ05hbWUpOwogIH0KCiAgZnVu Y3Rpb24gZXh0ZW5kKHRhZ05hbWUpIHsKICAgIHRhZ05hbWUgPSB0YWdOYW1lLnRv VXBwZXJDYXNlKCk7CiAgICBpZiAoIUVsZW1lbnQuTWV0aG9kcy5CeVRhZ1t0YWdO YW1lXSkKICAgICAgRWxlbWVudC5NZXRob2RzLkJ5VGFnW3RhZ05hbWVdID0geyB9 OwogICAgT2JqZWN0LmV4dGVuZChFbGVtZW50Lk1ldGhvZHMuQnlUYWdbdGFnTmFt ZV0sIG1ldGhvZHMpOwogIH0KCiAgZnVuY3Rpb24gY29weShtZXRob2RzLCBkZXN0 aW5hdGlvbiwgb25seUlmQWJzZW50KSB7CiAgICBvbmx5SWZBYnNlbnQgPSBvbmx5 SWZBYnNlbnQgfHwgZmFsc2U7CiAgICBmb3IgKHZhciBwcm9wZXJ0eSBpbiBtZXRo b2RzKSB7CiAgICAgIHZhciB2YWx1ZSA9IG1ldGhvZHNbcHJvcGVydHldOwogICAg ICBpZiAoIU9iamVjdC5pc0Z1bmN0aW9uKHZhbHVlKSkgY29udGludWU7CiAgICAg IGlmICghb25seUlmQWJzZW50IHx8ICEocHJvcGVydHkgaW4gZGVzdGluYXRpb24p KQogICAgICAgIGRlc3RpbmF0aW9uW3Byb3BlcnR5XSA9IHZhbHVlLm1ldGhvZGl6 ZSgpOwogICAgfQogIH0KCiAgZnVuY3Rpb24gZmluZERPTUNsYXNzKHRhZ05hbWUp IHsKICAgIHZhciBrbGFzczsKICAgIHZhciB0cmFucyA9IHsKICAgICAgIk9QVEdS T1VQIjogIk9wdEdyb3VwIiwgIlRFWFRBUkVBIjogIlRleHRBcmVhIiwgIlAiOiAi UGFyYWdyYXBoIiwKICAgICAgIkZJRUxEU0VUIjogIkZpZWxkU2V0IiwgIlVMIjog IlVMaXN0IiwgIk9MIjogIk9MaXN0IiwgIkRMIjogIkRMaXN0IiwKICAgICAgIkRJ UiI6ICJEaXJlY3RvcnkiLCAiSDEiOiAiSGVhZGluZyIsICJIMiI6ICJIZWFkaW5n IiwgIkgzIjogIkhlYWRpbmciLAogICAgICAiSDQiOiAiSGVhZGluZyIsICJINSI6 ICJIZWFkaW5nIiwgIkg2IjogIkhlYWRpbmciLCAiUSI6ICJRdW90ZSIsCiAgICAg ICJJTlMiOiAiTW9kIiwgIkRFTCI6ICJNb2QiLCAiQSI6ICJBbmNob3IiLCAiSU1H IjogIkltYWdlIiwgIkNBUFRJT04iOgogICAgICAiVGFibGVDYXB0aW9uIiwgIkNP TCI6ICJUYWJsZUNvbCIsICJDT0xHUk9VUCI6ICJUYWJsZUNvbCIsICJUSEVBRCI6 CiAgICAgICJUYWJsZVNlY3Rpb24iLCAiVEZPT1QiOiAiVGFibGVTZWN0aW9uIiwg IlRCT0RZIjogIlRhYmxlU2VjdGlvbiIsICJUUiI6CiAgICAgICJUYWJsZVJvdyIs ICJUSCI6ICJUYWJsZUNlbGwiLCAiVEQiOiAiVGFibGVDZWxsIiwgIkZSQU1FU0VU IjoKICAgICAgIkZyYW1lU2V0IiwgIklGUkFNRSI6ICJJRnJhbWUiCiAgICB9Owog ICAgaWYgKHRyYW5zW3RhZ05hbWVdKSBrbGFzcyA9ICdIVE1MJyArIHRyYW5zW3Rh Z05hbWVdICsgJ0VsZW1lbnQnOwogICAgaWYgKHdpbmRvd1trbGFzc10pIHJldHVy biB3aW5kb3dba2xhc3NdOwogICAga2xhc3MgPSAnSFRNTCcgKyB0YWdOYW1lICsg J0VsZW1lbnQnOwogICAgaWYgKHdpbmRvd1trbGFzc10pIHJldHVybiB3aW5kb3db a2xhc3NdOwogICAga2xhc3MgPSAnSFRNTCcgKyB0YWdOYW1lLmNhcGl0YWxpemUo KSArICdFbGVtZW50JzsKICAgIGlmICh3aW5kb3dba2xhc3NdKSByZXR1cm4gd2lu ZG93W2tsYXNzXTsKCiAgICB3aW5kb3dba2xhc3NdID0geyB9OwogICAgd2luZG93 W2tsYXNzXS5wcm90b3R5cGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KHRhZ05h bWUpLl9fcHJvdG9fXzsKICAgIHJldHVybiB3aW5kb3dba2xhc3NdOwogIH0KCiAg aWYgKEYuRWxlbWVudEV4dGVuc2lvbnMpIHsKICAgIGNvcHkoRWxlbWVudC5NZXRo b2RzLCBIVE1MRWxlbWVudC5wcm90b3R5cGUpOwogICAgY29weShFbGVtZW50Lk1l dGhvZHMuU2ltdWxhdGVkLCBIVE1MRWxlbWVudC5wcm90b3R5cGUsIHRydWUpOwog IH0KCiAgaWYgKEYuU3BlY2lmaWNFbGVtZW50RXh0ZW5zaW9ucykgewogICAgZm9y ICh2YXIgdGFnIGluIEVsZW1lbnQuTWV0aG9kcy5CeVRhZykgewogICAgICB2YXIg a2xhc3MgPSBmaW5kRE9NQ2xhc3ModGFnKTsKICAgICAgaWYgKE9iamVjdC5pc1Vu ZGVmaW5lZChrbGFzcykpIGNvbnRpbnVlOwogICAgICBjb3B5KFRbdGFnXSwga2xh c3MucHJvdG90eXBlKTsKICAgIH0KICB9CgogIE9iamVjdC5leHRlbmQoRWxlbWVu dCwgRWxlbWVudC5NZXRob2RzKTsKICBkZWxldGUgRWxlbWVudC5CeVRhZzsKCiAg aWYgKEVsZW1lbnQuZXh0ZW5kLnJlZnJlc2gpIEVsZW1lbnQuZXh0ZW5kLnJlZnJl c2goKTsKICBFbGVtZW50LmNhY2hlID0geyB9Owp9OwoKZG9jdW1lbnQudmlld3Bv cnQgPSB7CiAgZ2V0RGltZW5zaW9uczogZnVuY3Rpb24oKSB7CiAgICB2YXIgZGlt ZW5zaW9ucyA9IHsgfTsKICAgIHZhciBCID0gUHJvdG90eXBlLkJyb3dzZXI7CiAg ICAkdygnd2lkdGggaGVpZ2h0JykuZWFjaChmdW5jdGlvbihkKSB7CiAgICAgIHZh ciBEID0gZC5jYXBpdGFsaXplKCk7CiAgICAgIGRpbWVuc2lvbnNbZF0gPSAoQi5X ZWJLaXQgJiYgIWRvY3VtZW50LmV2YWx1YXRlKSA/IHNlbGZbJ2lubmVyJyArIERd IDoKICAgICAgICAoQi5PcGVyYSkgPyBkb2N1bWVudC5ib2R5WydjbGllbnQnICsg RF0gOiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnRbJ2NsaWVudCcgKyBEXTsKICAg IH0pOwogICAgcmV0dXJuIGRpbWVuc2lvbnM7CiAgfSwKCiAgZ2V0V2lkdGg6IGZ1 bmN0aW9uKCkgewogICAgcmV0dXJuIHRoaXMuZ2V0RGltZW5zaW9ucygpLndpZHRo OwogIH0sCgogIGdldEhlaWdodDogZnVuY3Rpb24oKSB7CiAgICByZXR1cm4gdGhp cy5nZXREaW1lbnNpb25zKCkuaGVpZ2h0OwogIH0sCgogIGdldFNjcm9sbE9mZnNl dHM6IGZ1bmN0aW9uKCkgewogICAgcmV0dXJuIEVsZW1lbnQuX3JldHVybk9mZnNl dCgKICAgICAgd2luZG93LnBhZ2VYT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50 RWxlbWVudC5zY3JvbGxMZWZ0IHx8IGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCwK ICAgICAgd2luZG93LnBhZ2VZT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxl bWVudC5zY3JvbGxUb3AgfHwgZG9jdW1lbnQuYm9keS5zY3JvbGxUb3ApOwogIH0K fTsKLyogUG9ydGlvbnMgb2YgdGhlIFNlbGVjdG9yIGNsYXNzIGFyZSBkZXJpdmVk IGZyb20gSmFjayBTbG9jdW3DouKCrOKEonMgRG9tUXVlcnksCiAqIHBhcnQgb2Yg WVVJLUV4dCB2ZXJzaW9uIDAuNDAsIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSB0ZXJt cyBvZiBhbiBNSVQtc3R5bGUKICogbGljZW5zZS4gIFBsZWFzZSBzZWUgaHR0cDov L3d3dy55dWktZXh0LmNvbS8gZm9yIG1vcmUgaW5mb3JtYXRpb24uICovCgp2YXIg U2VsZWN0b3IgPSBDbGFzcy5jcmVhdGUoewogIGluaXRpYWxpemU6IGZ1bmN0aW9u KGV4cHJlc3Npb24pIHsKICAgIHRoaXMuZXhwcmVzc2lvbiA9IGV4cHJlc3Npb24u c3RyaXAoKTsKICAgIHRoaXMuY29tcGlsZU1hdGNoZXIoKTsKICB9LAoKICBzaG91 bGRVc2VYUGF0aDogZnVuY3Rpb24oKSB7CiAgICBpZiAoIVByb3RvdHlwZS5Ccm93 c2VyRmVhdHVyZXMuWFBhdGgpIHJldHVybiBmYWxzZTsKCiAgICB2YXIgZSA9IHRo aXMuZXhwcmVzc2lvbjsKCiAgICAvLyBTYWZhcmkgMyBjaG9rZXMgb24gOiotb2Yt dHlwZSBhbmQgOmVtcHR5CiAgICBpZiAoUHJvdG90eXBlLkJyb3dzZXIuV2ViS2l0 ICYmCiAgICAgKGUuaW5jbHVkZSgiLW9mLXR5cGUiKSB8fCBlLmluY2x1ZGUoIjpl bXB0eSIpKSkKICAgICAgcmV0dXJuIGZhbHNlOwoKICAgIC8vIFhQYXRoIGNhbid0 IGRvIG5hbWVzcGFjZWQgYXR0cmlidXRlcywgbm9yIGNhbiBpdCByZWFkCiAgICAv LyB0aGUgImNoZWNrZWQiIHByb3BlcnR5IGZyb20gRE9NIG5vZGVzCiAgICBpZiAo KC8oXFtbXHctXSo/Onw6Y2hlY2tlZCkvKS50ZXN0KHRoaXMuZXhwcmVzc2lvbikp CiAgICAgIHJldHVybiBmYWxzZTsKCiAgICByZXR1cm4gdHJ1ZTsKICB9LAoKICBj b21waWxlTWF0Y2hlcjogZnVuY3Rpb24oKSB7CiAgICBpZiAodGhpcy5zaG91bGRV c2VYUGF0aCgpKQogICAgICByZXR1cm4gdGhpcy5jb21waWxlWFBhdGhNYXRjaGVy KCk7CgogICAgdmFyIGUgPSB0aGlzLmV4cHJlc3Npb24sIHBzID0gU2VsZWN0b3Iu cGF0dGVybnMsIGggPSBTZWxlY3Rvci5oYW5kbGVycywKICAgICAgICBjID0gU2Vs ZWN0b3IuY3JpdGVyaWEsIGxlLCBwLCBtOwoKICAgIGlmIChTZWxlY3Rvci5fY2Fj aGVbZV0pIHsKICAgICAgdGhpcy5tYXRjaGVyID0gU2VsZWN0b3IuX2NhY2hlW2Vd OwogICAgICByZXR1cm47CiAgICB9CgogICAgdGhpcy5tYXRjaGVyID0gWyJ0aGlz Lm1hdGNoZXIgPSBmdW5jdGlvbihyb290KSB7IiwKICAgICAgICAgICAgICAgICAg ICAidmFyIHIgPSByb290LCBoID0gU2VsZWN0b3IuaGFuZGxlcnMsIGMgPSBmYWxz ZSwgbjsiXTsKCiAgICB3aGlsZSAoZSAmJiBsZSAhPSBlICYmICgvXFMvKS50ZXN0 KGUpKSB7CiAgICAgIGxlID0gZTsKICAgICAgZm9yICh2YXIgaSBpbiBwcykgewog ICAgICAgIHAgPSBwc1tpXTsKICAgICAgICBpZiAobSA9IGUubWF0Y2gocCkpIHsK ICAgICAgICAgIHRoaXMubWF0Y2hlci5wdXNoKE9iamVjdC5pc0Z1bmN0aW9uKGNb aV0pID8gY1tpXShtKSA6CiAgICAJICAgICAgbmV3IFRlbXBsYXRlKGNbaV0pLmV2 YWx1YXRlKG0pKTsKICAgICAgICAgIGUgPSBlLnJlcGxhY2UobVswXSwgJycpOwog ICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICB9CiAgICB9CgogICAgdGhp cy5tYXRjaGVyLnB1c2goInJldHVybiBoLnVuaXF1ZShuKTtcbn0iKTsKICAgIGV2 YWwodGhpcy5tYXRjaGVyLmpvaW4oJ1xuJykpOwogICAgU2VsZWN0b3IuX2NhY2hl W3RoaXMuZXhwcmVzc2lvbl0gPSB0aGlzLm1hdGNoZXI7CiAgfSwKCiAgY29tcGls ZVhQYXRoTWF0Y2hlcjogZnVuY3Rpb24oKSB7CiAgICB2YXIgZSA9IHRoaXMuZXhw cmVzc2lvbiwgcHMgPSBTZWxlY3Rvci5wYXR0ZXJucywKICAgICAgICB4ID0gU2Vs ZWN0b3IueHBhdGgsIGxlLCBtOwoKICAgIGlmIChTZWxlY3Rvci5fY2FjaGVbZV0p IHsKICAgICAgdGhpcy54cGF0aCA9IFNlbGVjdG9yLl9jYWNoZVtlXTsgcmV0dXJu OwogICAgfQoKICAgIHRoaXMubWF0Y2hlciA9IFsnLi8vKiddOwogICAgd2hpbGUg KGUgJiYgbGUgIT0gZSAmJiAoL1xTLykudGVzdChlKSkgewogICAgICBsZSA9IGU7 CiAgICAgIGZvciAodmFyIGkgaW4gcHMpIHsKICAgICAgICBpZiAobSA9IGUubWF0 Y2gocHNbaV0pKSB7CiAgICAgICAgICB0aGlzLm1hdGNoZXIucHVzaChPYmplY3Qu aXNGdW5jdGlvbih4W2ldKSA/IHhbaV0obSkgOgogICAgICAgICAgICBuZXcgVGVt cGxhdGUoeFtpXSkuZXZhbHVhdGUobSkpOwogICAgICAgICAgZSA9IGUucmVwbGFj ZShtWzBdLCAnJyk7CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgIH0K ICAgIH0KCiAgICB0aGlzLnhwYXRoID0gdGhpcy5tYXRjaGVyLmpvaW4oJycpOwog ICAgU2VsZWN0b3IuX2NhY2hlW3RoaXMuZXhwcmVzc2lvbl0gPSB0aGlzLnhwYXRo OwogIH0sCgogIGZpbmRFbGVtZW50czogZnVuY3Rpb24ocm9vdCkgewogICAgcm9v dCA9IHJvb3QgfHwgZG9jdW1lbnQ7CiAgICBpZiAodGhpcy54cGF0aCkgcmV0dXJu IGRvY3VtZW50Ll9nZXRFbGVtZW50c0J5WFBhdGgodGhpcy54cGF0aCwgcm9vdCk7 CiAgICByZXR1cm4gdGhpcy5tYXRjaGVyKHJvb3QpOwogIH0sCgogIG1hdGNoOiBm dW5jdGlvbihlbGVtZW50KSB7CiAgICB0aGlzLnRva2VucyA9IFtdOwoKICAgIHZh ciBlID0gdGhpcy5leHByZXNzaW9uLCBwcyA9IFNlbGVjdG9yLnBhdHRlcm5zLCBh cyA9IFNlbGVjdG9yLmFzc2VydGlvbnM7CiAgICB2YXIgbGUsIHAsIG07CgogICAg d2hpbGUgKGUgJiYgbGUgIT09IGUgJiYgKC9cUy8pLnRlc3QoZSkpIHsKICAgICAg bGUgPSBlOwogICAgICBmb3IgKHZhciBpIGluIHBzKSB7CiAgICAgICAgcCA9IHBz W2ldOwogICAgICAgIGlmIChtID0gZS5tYXRjaChwKSkgewogICAgICAgICAgLy8g dXNlIHRoZSBTZWxlY3Rvci5hc3NlcnRpb25zIG1ldGhvZHMgdW5sZXNzIHRoZSBz ZWxlY3RvcgogICAgICAgICAgLy8gaXMgdG9vIGNvbXBsZXguCiAgICAgICAgICBp ZiAoYXNbaV0pIHsKICAgICAgICAgICAgdGhpcy50b2tlbnMucHVzaChbaSwgT2Jq ZWN0LmNsb25lKG0pXSk7CiAgICAgICAgICAgIGUgPSBlLnJlcGxhY2UobVswXSwg JycpOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgLy8gcmVsdWN0YW50 bHkgZG8gYSBkb2N1bWVudC13aWRlIHNlYXJjaAogICAgICAgICAgICAvLyBhbmQg bG9vayBmb3IgYSBtYXRjaCBpbiB0aGUgYXJyYXkKICAgICAgICAgICAgcmV0dXJu IHRoaXMuZmluZEVsZW1lbnRzKGRvY3VtZW50KS5pbmNsdWRlKGVsZW1lbnQpOwog ICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgfQoKICAgIHZhciBtYXRj aCA9IHRydWUsIG5hbWUsIG1hdGNoZXM7CiAgICBmb3IgKHZhciBpID0gMCwgdG9r ZW47IHRva2VuID0gdGhpcy50b2tlbnNbaV07IGkrKykgewogICAgICBuYW1lID0g dG9rZW5bMF0sIG1hdGNoZXMgPSB0b2tlblsxXTsKICAgICAgaWYgKCFTZWxlY3Rv ci5hc3NlcnRpb25zW25hbWVdKGVsZW1lbnQsIG1hdGNoZXMpKSB7CiAgICAgICAg bWF0Y2ggPSBmYWxzZTsgYnJlYWs7CiAgICAgIH0KICAgIH0KCiAgICByZXR1cm4g bWF0Y2g7CiAgfSwKCiAgdG9TdHJpbmc6IGZ1bmN0aW9uKCkgewogICAgcmV0dXJu IHRoaXMuZXhwcmVzc2lvbjsKICB9LAoKICBpbnNwZWN0OiBmdW5jdGlvbigpIHsK ICAgIHJldHVybiAiIzxTZWxlY3RvcjoiICsgdGhpcy5leHByZXNzaW9uLmluc3Bl Y3QoKSArICI+IjsKICB9Cn0pOwoKT2JqZWN0LmV4dGVuZChTZWxlY3Rvciwgewog IF9jYWNoZTogeyB9LAoKICB4cGF0aDogewogICAgZGVzY2VuZGFudDogICAiLy8q IiwKICAgIGNoaWxkOiAgICAgICAgIi8qIiwKICAgIGFkamFjZW50OiAgICAgIi9m b2xsb3dpbmctc2libGluZzo6KlsxXSIsCiAgICBsYXRlclNpYmxpbmc6ICcvZm9s bG93aW5nLXNpYmxpbmc6OionLAogICAgdGFnTmFtZTogICAgICBmdW5jdGlvbiht KSB7CiAgICAgIGlmIChtWzFdID09ICcqJykgcmV0dXJuICcnOwogICAgICByZXR1 cm4gIltsb2NhbC1uYW1lKCk9JyIgKyBtWzFdLnRvTG93ZXJDYXNlKCkgKwogICAg ICAgICAgICAgIicgb3IgbG9jYWwtbmFtZSgpPSciICsgbVsxXS50b1VwcGVyQ2Fz ZSgpICsgIiddIjsKICAgIH0sCiAgICBjbGFzc05hbWU6ICAgICJbY29udGFpbnMo Y29uY2F0KCcgJywgQGNsYXNzLCAnICcpLCAnICN7MX0gJyldIiwKICAgIGlkOiAg ICAgICAgICAgIltAaWQ9JyN7MX0nXSIsCiAgICBhdHRyUHJlc2VuY2U6IGZ1bmN0 aW9uKG0pIHsKICAgICAgbVsxXSA9IG1bMV0udG9Mb3dlckNhc2UoKTsKICAgICAg cmV0dXJuIG5ldyBUZW1wbGF0ZSgiW0AjezF9XSIpLmV2YWx1YXRlKG0pOwogICAg fSwKICAgIGF0dHI6IGZ1bmN0aW9uKG0pIHsKICAgICAgbVsxXSA9IG1bMV0udG9M b3dlckNhc2UoKTsKICAgICAgbVszXSA9IG1bNV0gfHwgbVs2XTsKICAgICAgcmV0 dXJuIG5ldyBUZW1wbGF0ZShTZWxlY3Rvci54cGF0aC5vcGVyYXRvcnNbbVsyXV0p LmV2YWx1YXRlKG0pOwogICAgfSwKICAgIHBzZXVkbzogZnVuY3Rpb24obSkgewog ICAgICB2YXIgaCA9IFNlbGVjdG9yLnhwYXRoLnBzZXVkb3NbbVsxXV07CiAgICAg IGlmICghaCkgcmV0dXJuICcnOwogICAgICBpZiAoT2JqZWN0LmlzRnVuY3Rpb24o aCkpIHJldHVybiBoKG0pOwogICAgICByZXR1cm4gbmV3IFRlbXBsYXRlKFNlbGVj dG9yLnhwYXRoLnBzZXVkb3NbbVsxXV0pLmV2YWx1YXRlKG0pOwogICAgfSwKICAg IG9wZXJhdG9yczogewogICAgICAnPSc6ICAiW0AjezF9PScjezN9J10iLAogICAg ICAnIT0nOiAiW0AjezF9IT0nI3szfSddIiwKICAgICAgJ149JzogIltzdGFydHMt d2l0aChAI3sxfSwgJyN7M30nKV0iLAogICAgICAnJD0nOiAiW3N1YnN0cmluZyhA I3sxfSwgKHN0cmluZy1sZW5ndGgoQCN7MX0pIC0gc3RyaW5nLWxlbmd0aCgnI3sz fScpICsgMSkpPScjezN9J10iLAogICAgICAnKj0nOiAiW2NvbnRhaW5zKEAjezF9 LCAnI3szfScpXSIsCiAgICAgICd+PSc6ICJbY29udGFpbnMoY29uY2F0KCcgJywg QCN7MX0sICcgJyksICcgI3szfSAnKV0iLAogICAgICAnfD0nOiAiW2NvbnRhaW5z KGNvbmNhdCgnLScsIEAjezF9LCAnLScpLCAnLSN7M30tJyldIgogICAgfSwKICAg IHBzZXVkb3M6IHsKICAgICAgJ2ZpcnN0LWNoaWxkJzogJ1tub3QocHJlY2VkaW5n LXNpYmxpbmc6OiopXScsCiAgICAgICdsYXN0LWNoaWxkJzogICdbbm90KGZvbGxv d2luZy1zaWJsaW5nOjoqKV0nLAogICAgICAnb25seS1jaGlsZCc6ICAnW25vdChw cmVjZWRpbmctc2libGluZzo6KiBvciBmb2xsb3dpbmctc2libGluZzo6KildJywK ICAgICAgJ2VtcHR5JzogICAgICAgIltjb3VudCgqKSA9IDAgYW5kIChjb3VudCh0 ZXh0KCkpID0gMCBvciB0cmFuc2xhdGUodGV4dCgpLCAnIFx0XHJcbicsICcnKSA9 ICcnKV0iLAogICAgICAnY2hlY2tlZCc6ICAgICAiW0BjaGVja2VkXSIsCiAgICAg ICdkaXNhYmxlZCc6ICAgICJbQGRpc2FibGVkXSIsCiAgICAgICdlbmFibGVkJzog ICAgICJbbm90KEBkaXNhYmxlZCldIiwKICAgICAgJ25vdCc6IGZ1bmN0aW9uKG0p IHsKICAgICAgICB2YXIgZSA9IG1bNl0sIHAgPSBTZWxlY3Rvci5wYXR0ZXJucywK ICAgICAgICAgICAgeCA9IFNlbGVjdG9yLnhwYXRoLCBsZSwgdjsKCiAgICAgICAg dmFyIGV4Y2x1c2lvbiA9IFtdOwogICAgICAgIHdoaWxlIChlICYmIGxlICE9IGUg JiYgKC9cUy8pLnRlc3QoZSkpIHsKICAgICAgICAgIGxlID0gZTsKICAgICAgICAg IGZvciAodmFyIGkgaW4gcCkgewogICAgICAgICAgICBpZiAobSA9IGUubWF0Y2go cFtpXSkpIHsKICAgICAgICAgICAgICB2ID0gT2JqZWN0LmlzRnVuY3Rpb24oeFtp XSkgPyB4W2ldKG0pIDogbmV3IFRlbXBsYXRlKHhbaV0pLmV2YWx1YXRlKG0pOwog ICAgICAgICAgICAgIGV4Y2x1c2lvbi5wdXNoKCIoIiArIHYuc3Vic3RyaW5nKDEs IHYubGVuZ3RoIC0gMSkgKyAiKSIpOwogICAgICAgICAgICAgIGUgPSBlLnJlcGxh Y2UobVswXSwgJycpOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9 CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAiW25vdCgiICsg ZXhjbHVzaW9uLmpvaW4oIiBhbmQgIikgKyAiKV0iOwogICAgICB9LAogICAgICAn bnRoLWNoaWxkJzogICAgICBmdW5jdGlvbihtKSB7CiAgICAgICAgcmV0dXJuIFNl bGVjdG9yLnhwYXRoLnBzZXVkb3MubnRoKCIoY291bnQoLi9wcmVjZWRpbmctc2li bGluZzo6KikgKyAxKSAiLCBtKTsKICAgICAgfSwKICAgICAgJ250aC1sYXN0LWNo aWxkJzogZnVuY3Rpb24obSkgewogICAgICAgIHJldHVybiBTZWxlY3Rvci54cGF0 aC5wc2V1ZG9zLm50aCgiKGNvdW50KC4vZm9sbG93aW5nLXNpYmxpbmc6OiopICsg MSkgIiwgbSk7CiAgICAgIH0sCiAgICAgICdudGgtb2YtdHlwZSc6ICAgIGZ1bmN0 aW9uKG0pIHsKICAgICAgICByZXR1cm4gU2VsZWN0b3IueHBhdGgucHNldWRvcy5u dGgoInBvc2l0aW9uKCkgIiwgbSk7CiAgICAgIH0sCiAgICAgICdudGgtbGFzdC1v Zi10eXBlJzogZnVuY3Rpb24obSkgewogICAgICAgIHJldHVybiBTZWxlY3Rvci54 cGF0aC5wc2V1ZG9zLm50aCgiKGxhc3QoKSArIDEgLSBwb3NpdGlvbigpKSAiLCBt KTsKICAgICAgfSwKICAgICAgJ2ZpcnN0LW9mLXR5cGUnOiAgZnVuY3Rpb24obSkg ewogICAgICAgIG1bNl0gPSAiMSI7IHJldHVybiBTZWxlY3Rvci54cGF0aC5wc2V1 ZG9zWydudGgtb2YtdHlwZSddKG0pOwogICAgICB9LAogICAgICAnbGFzdC1vZi10 eXBlJzogICBmdW5jdGlvbihtKSB7CiAgICAgICAgbVs2XSA9ICIxIjsgcmV0dXJu IFNlbGVjdG9yLnhwYXRoLnBzZXVkb3NbJ250aC1sYXN0LW9mLXR5cGUnXShtKTsK ICAgICAgfSwKICAgICAgJ29ubHktb2YtdHlwZSc6ICAgZnVuY3Rpb24obSkgewog ICAgICAgIHZhciBwID0gU2VsZWN0b3IueHBhdGgucHNldWRvczsgcmV0dXJuIHBb J2ZpcnN0LW9mLXR5cGUnXShtKSArIHBbJ2xhc3Qtb2YtdHlwZSddKG0pOwogICAg ICB9LAogICAgICBudGg6IGZ1bmN0aW9uKGZyYWdtZW50LCBtKSB7CiAgICAgICAg dmFyIG1tLCBmb3JtdWxhID0gbVs2XSwgcHJlZGljYXRlOwogICAgICAgIGlmIChm b3JtdWxhID09ICdldmVuJykgZm9ybXVsYSA9ICcybiswJzsKICAgICAgICBpZiAo Zm9ybXVsYSA9PSAnb2RkJykgIGZvcm11bGEgPSAnMm4rMSc7CiAgICAgICAgaWYg KG1tID0gZm9ybXVsYS5tYXRjaCgvXihcZCspJC8pKSAvLyBkaWdpdCBvbmx5CiAg ICAgICAgICByZXR1cm4gJ1snICsgZnJhZ21lbnQgKyAiPSAiICsgbW1bMV0gKyAn XSc7CiAgICAgICAgaWYgKG1tID0gZm9ybXVsYS5tYXRjaCgvXigtP1xkKik/bigo WystXSkoXGQrKSk/LykpIHsgLy8gYW4rYgogICAgICAgICAgaWYgKG1tWzFdID09 ICItIikgbW1bMV0gPSAtMTsKICAgICAgICAgIHZhciBhID0gbW1bMV0gPyBOdW1i ZXIobW1bMV0pIDogMTsKICAgICAgICAgIHZhciBiID0gbW1bMl0gPyBOdW1iZXIo bW1bMl0pIDogMDsKICAgICAgICAgIHByZWRpY2F0ZSA9ICJbKCgje2ZyYWdtZW50 fSAtICN7Yn0pIG1vZCAje2F9ID0gMCkgYW5kICIgKwogICAgICAgICAgIigoI3tm cmFnbWVudH0gLSAje2J9KSBkaXYgI3thfSA+PSAwKV0iOwogICAgICAgICAgcmV0 dXJuIG5ldyBUZW1wbGF0ZShwcmVkaWNhdGUpLmV2YWx1YXRlKHsKICAgICAgICAg ICAgZnJhZ21lbnQ6IGZyYWdtZW50LCBhOiBhLCBiOiBiIH0pOwogICAgICAgIH0K ICAgICAgfQogICAgfQogIH0sCgogIGNyaXRlcmlhOiB7CiAgICB0YWdOYW1lOiAg ICAgICduID0gaC50YWdOYW1lKG4sIHIsICIjezF9IiwgYyk7ICAgICAgYyA9IGZh bHNlOycsCiAgICBjbGFzc05hbWU6ICAgICduID0gaC5jbGFzc05hbWUobiwgciwg IiN7MX0iLCBjKTsgICAgYyA9IGZhbHNlOycsCiAgICBpZDogICAgICAgICAgICdu ID0gaC5pZChuLCByLCAiI3sxfSIsIGMpOyAgICAgICAgICAgYyA9IGZhbHNlOycs CiAgICBhdHRyUHJlc2VuY2U6ICduID0gaC5hdHRyUHJlc2VuY2UobiwgciwgIiN7 MX0iLCBjKTsgYyA9IGZhbHNlOycsCiAgICBhdHRyOiBmdW5jdGlvbihtKSB7CiAg ICAgIG1bM10gPSAobVs1XSB8fCBtWzZdKTsKICAgICAgcmV0dXJuIG5ldyBUZW1w bGF0ZSgnbiA9IGguYXR0cihuLCByLCAiI3sxfSIsICIjezN9IiwgIiN7Mn0iLCBj KTsgYyA9IGZhbHNlOycpLmV2YWx1YXRlKG0pOwogICAgfSwKICAgIHBzZXVkbzog ZnVuY3Rpb24obSkgewogICAgICBpZiAobVs2XSkgbVs2XSA9IG1bNl0ucmVwbGFj ZSgvIi9nLCAnXFwiJyk7CiAgICAgIHJldHVybiBuZXcgVGVtcGxhdGUoJ24gPSBo LnBzZXVkbyhuLCAiI3sxfSIsICIjezZ9IiwgciwgYyk7IGMgPSBmYWxzZTsnKS5l dmFsdWF0ZShtKTsKICAgIH0sCiAgICBkZXNjZW5kYW50OiAgICdjID0gImRlc2Nl bmRhbnQiOycsCiAgICBjaGlsZDogICAgICAgICdjID0gImNoaWxkIjsnLAogICAg YWRqYWNlbnQ6ICAgICAnYyA9ICJhZGphY2VudCI7JywKICAgIGxhdGVyU2libGlu ZzogJ2MgPSAibGF0ZXJTaWJsaW5nIjsnCiAgfSwKCiAgcGF0dGVybnM6IHsKICAg IC8vIGNvbWJpbmF0b3JzIG11c3QgYmUgbGlzdGVkIGZpcnN0CiAgICAvLyAoYW5k IGRlc2NlbmRhbnQgbmVlZHMgdG8gYmUgbGFzdCBjb21iaW5hdG9yKQogICAgbGF0 ZXJTaWJsaW5nOiAvXlxzKn5ccyovLAogICAgY2hpbGQ6ICAgICAgICAvXlxzKj5c cyovLAogICAgYWRqYWNlbnQ6ICAgICAvXlxzKlwrXHMqLywKICAgIGRlc2NlbmRh bnQ6ICAgL15ccy8sCgogICAgLy8gc2VsZWN0b3JzIGZvbGxvdwogICAgdGFnTmFt ZTogICAgICAvXlxzKihcKnxbXHdcLV0rKShcYnwkKT8vLAogICAgaWQ6ICAgICAg ICAgICAvXiMoW1x3XC1cKl0rKShcYnwkKS8sCiAgICBjbGFzc05hbWU6ICAgIC9e XC4oW1x3XC1cKl0rKShcYnwkKS8sCiAgICBwc2V1ZG86Ci9eOigoZmlyc3R8bGFz dHxudGh8bnRoLWxhc3R8b25seSkoLWNoaWxkfC1vZi10eXBlKXxlbXB0eXxjaGVj a2VkfChlbnxkaXMpYWJsZWR8bm90KShcKCguKj8pXCkpPyhcYnwkfCg/PVxzfFs6 K34+XSkpLywKICAgIGF0dHJQcmVzZW5jZTogL15cWyhbXHddKylcXS8sCiAgICBh dHRyOiAgICAgICAgIC9cWygoPzpbXHctXSo6KT9bXHctXSspXHMqKD86KFshXiQq fnxdPz0pXHMqKChbJyJdKShbXlw0XSo/KVw0fChbXiciXVteXF1dKj8pKSk/XF0v CiAgfSwKCiAgLy8gZm9yIFNlbGVjdG9yLm1hdGNoIGFuZCBFbGVtZW50I21hdGNo CiAgYXNzZXJ0aW9uczogewogICAgdGFnTmFtZTogZnVuY3Rpb24oZWxlbWVudCwg bWF0Y2hlcykgewogICAgICByZXR1cm4gbWF0Y2hlc1sxXS50b1VwcGVyQ2FzZSgp ID09IGVsZW1lbnQudGFnTmFtZS50b1VwcGVyQ2FzZSgpOwogICAgfSwKCiAgICBj bGFzc05hbWU6IGZ1bmN0aW9uKGVsZW1lbnQsIG1hdGNoZXMpIHsKICAgICAgcmV0 dXJuIEVsZW1lbnQuaGFzQ2xhc3NOYW1lKGVsZW1lbnQsIG1hdGNoZXNbMV0pOwog ICAgfSwKCiAgICBpZDogZnVuY3Rpb24oZWxlbWVudCwgbWF0Y2hlcykgewogICAg ICByZXR1cm4gZWxlbWVudC5pZCA9PT0gbWF0Y2hlc1sxXTsKICAgIH0sCgogICAg YXR0clByZXNlbmNlOiBmdW5jdGlvbihlbGVtZW50LCBtYXRjaGVzKSB7CiAgICAg IHJldHVybiBFbGVtZW50Lmhhc0F0dHJpYnV0ZShlbGVtZW50LCBtYXRjaGVzWzFd KTsKICAgIH0sCgogICAgYXR0cjogZnVuY3Rpb24oZWxlbWVudCwgbWF0Y2hlcykg ewogICAgICB2YXIgbm9kZVZhbHVlID0gRWxlbWVudC5yZWFkQXR0cmlidXRlKGVs ZW1lbnQsIG1hdGNoZXNbMV0pOwogICAgICByZXR1cm4gbm9kZVZhbHVlICYmIFNl bGVjdG9yLm9wZXJhdG9yc1ttYXRjaGVzWzJdXShub2RlVmFsdWUsIG1hdGNoZXNb NV0gfHwgbWF0Y2hlc1s2XSk7CiAgICB9CiAgfSwKCiAgaGFuZGxlcnM6IHsKICAg IC8vIFVUSUxJVFkgRlVOQ1RJT05TCiAgICAvLyBqb2lucyB0d28gY29sbGVjdGlv bnMKICAgIGNvbmNhdDogZnVuY3Rpb24oYSwgYikgewogICAgICBmb3IgKHZhciBp ID0gMCwgbm9kZTsgbm9kZSA9IGJbaV07IGkrKykKICAgICAgICBhLnB1c2gobm9k ZSk7CiAgICAgIHJldHVybiBhOwogICAgfSwKCiAgICAvLyBtYXJrcyBhbiBhcnJh eSBvZiBub2RlcyBmb3IgY291bnRpbmcKICAgIG1hcms6IGZ1bmN0aW9uKG5vZGVz KSB7CiAgICAgIHZhciBfdHJ1ZSA9IFByb3RvdHlwZS5lbXB0eUZ1bmN0aW9uOwog ICAgICBmb3IgKHZhciBpID0gMCwgbm9kZTsgbm9kZSA9IG5vZGVzW2ldOyBpKysp CiAgICAgICAgbm9kZS5fY291bnRlZEJ5UHJvdG90eXBlID0gX3RydWU7CiAgICAg IHJldHVybiBub2RlczsKICAgIH0sCgogICAgdW5tYXJrOiBmdW5jdGlvbihub2Rl cykgewogICAgICBmb3IgKHZhciBpID0gMCwgbm9kZTsgbm9kZSA9IG5vZGVzW2ld OyBpKyspCiAgICAgICAgbm9kZS5fY291bnRlZEJ5UHJvdG90eXBlID0gdW5kZWZp bmVkOwogICAgICByZXR1cm4gbm9kZXM7CiAgICB9LAoKICAgIC8vIG1hcmsgZWFj aCBjaGlsZCBub2RlIHdpdGggaXRzIHBvc2l0aW9uIChmb3IgbnRoIGNhbGxzKQog ICAgLy8gIm9mVHlwZSIgZmxhZyBpbmRpY2F0ZXMgd2hldGhlciB3ZSdyZSBpbmRl eGluZyBmb3IgbnRoLW9mLXR5cGUKICAgIC8vIHJhdGhlciB0aGFuIG50aC1jaGls ZAogICAgaW5kZXg6IGZ1bmN0aW9uKHBhcmVudE5vZGUsIHJldmVyc2UsIG9mVHlw ZSkgewogICAgICBwYXJlbnROb2RlLl9jb3VudGVkQnlQcm90b3R5cGUgPSBQcm90 b3R5cGUuZW1wdHlGdW5jdGlvbjsKICAgICAgaWYgKHJldmVyc2UpIHsKICAgICAg ICBmb3IgKHZhciBub2RlcyA9IHBhcmVudE5vZGUuY2hpbGROb2RlcywgaSA9IG5v ZGVzLmxlbmd0aCAtIDEsIGogPSAxOyBpID49IDA7IGktLSkgewogICAgICAgICAg dmFyIG5vZGUgPSBub2Rlc1tpXTsKICAgICAgICAgIGlmIChub2RlLm5vZGVUeXBl ID09IDEgJiYgKCFvZlR5cGUgfHwgbm9kZS5fY291bnRlZEJ5UHJvdG90eXBlKSkg bm9kZS5ub2RlSW5kZXggPSBqKys7CiAgICAgICAgfQogICAgICB9IGVsc2Ugewog ICAgICAgIGZvciAodmFyIGkgPSAwLCBqID0gMSwgbm9kZXMgPSBwYXJlbnROb2Rl LmNoaWxkTm9kZXM7IG5vZGUgPSBub2Rlc1tpXTsgaSsrKQogICAgICAgICAgaWYg KG5vZGUubm9kZVR5cGUgPT0gMSAmJiAoIW9mVHlwZSB8fCBub2RlLl9jb3VudGVk QnlQcm90b3R5cGUpKSBub2RlLm5vZGVJbmRleCA9IGorKzsKICAgICAgfQogICAg fSwKCiAgICAvLyBmaWx0ZXJzIG91dCBkdXBsaWNhdGVzIGFuZCBleHRlbmRzIGFs bCBub2RlcwogICAgdW5pcXVlOiBmdW5jdGlvbihub2RlcykgewogICAgICBpZiAo bm9kZXMubGVuZ3RoID09IDApIHJldHVybiBub2RlczsKICAgICAgdmFyIHJlc3Vs dHMgPSBbXSwgbjsKICAgICAgZm9yICh2YXIgaSA9IDAsIGwgPSBub2Rlcy5sZW5n dGg7IGkgPCBsOyBpKyspCiAgICAgICAgaWYgKCEobiA9IG5vZGVzW2ldKS5fY291 bnRlZEJ5UHJvdG90eXBlKSB7CiAgICAgICAgICBuLl9jb3VudGVkQnlQcm90b3R5 cGUgPSBQcm90b3R5cGUuZW1wdHlGdW5jdGlvbjsKICAgICAgICAgIHJlc3VsdHMu cHVzaChFbGVtZW50LmV4dGVuZChuKSk7CiAgICAgICAgfQogICAgICByZXR1cm4g U2VsZWN0b3IuaGFuZGxlcnMudW5tYXJrKHJlc3VsdHMpOwogICAgfSwKCiAgICAv LyBDT01CSU5BVE9SIEZVTkNUSU9OUwogICAgZGVzY2VuZGFudDogZnVuY3Rpb24o bm9kZXMpIHsKICAgICAgdmFyIGggPSBTZWxlY3Rvci5oYW5kbGVyczsKICAgICAg Zm9yICh2YXIgaSA9IDAsIHJlc3VsdHMgPSBbXSwgbm9kZTsgbm9kZSA9IG5vZGVz W2ldOyBpKyspCiAgICAgICAgaC5jb25jYXQocmVzdWx0cywgbm9kZS5nZXRFbGVt ZW50c0J5VGFnTmFtZSgnKicpKTsKICAgICAgcmV0dXJuIHJlc3VsdHM7CiAgICB9 LAoKICAgIGNoaWxkOiBmdW5jdGlvbihub2RlcykgewogICAgICB2YXIgaCA9IFNl bGVjdG9yLmhhbmRsZXJzOwogICAgICBmb3IgKHZhciBpID0gMCwgcmVzdWx0cyA9 IFtdLCBub2RlOyBub2RlID0gbm9kZXNbaV07IGkrKykgewogICAgICAgIGZvciAo dmFyIGogPSAwLCBjaGlsZDsgY2hpbGQgPSBub2RlLmNoaWxkTm9kZXNbal07IGor KykKICAgICAgICAgIGlmIChjaGlsZC5ub2RlVHlwZSA9PSAxICYmIGNoaWxkLnRh Z05hbWUgIT0gJyEnKSByZXN1bHRzLnB1c2goY2hpbGQpOwogICAgICB9CiAgICAg IHJldHVybiByZXN1bHRzOwogICAgfSwKCiAgICBhZGphY2VudDogZnVuY3Rpb24o bm9kZXMpIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIHJlc3VsdHMgPSBbXSwgbm9k ZTsgbm9kZSA9IG5vZGVzW2ldOyBpKyspIHsKICAgICAgICB2YXIgbmV4dCA9IHRo aXMubmV4dEVsZW1lbnRTaWJsaW5nKG5vZGUpOwogICAgICAgIGlmIChuZXh0KSBy ZXN1bHRzLnB1c2gobmV4dCk7CiAgICAgIH0KICAgICAgcmV0dXJuIHJlc3VsdHM7 CiAgICB9LAoKICAgIGxhdGVyU2libGluZzogZnVuY3Rpb24obm9kZXMpIHsKICAg ICAgdmFyIGggPSBTZWxlY3Rvci5oYW5kbGVyczsKICAgICAgZm9yICh2YXIgaSA9 IDAsIHJlc3VsdHMgPSBbXSwgbm9kZTsgbm9kZSA9IG5vZGVzW2ldOyBpKyspCiAg ICAgICAgaC5jb25jYXQocmVzdWx0cywgRWxlbWVudC5uZXh0U2libGluZ3Mobm9k ZSkpOwogICAgICByZXR1cm4gcmVzdWx0czsKICAgIH0sCgogICAgbmV4dEVsZW1l bnRTaWJsaW5nOiBmdW5jdGlvbihub2RlKSB7CiAgICAgIHdoaWxlIChub2RlID0g bm9kZS5uZXh0U2libGluZykKCSAgICAgIGlmIChub2RlLm5vZGVUeXBlID09IDEp IHJldHVybiBub2RlOwogICAgICByZXR1cm4gbnVsbDsKICAgIH0sCgogICAgcHJl dmlvdXNFbGVtZW50U2libGluZzogZnVuY3Rpb24obm9kZSkgewogICAgICB3aGls ZSAobm9kZSA9IG5vZGUucHJldmlvdXNTaWJsaW5nKQogICAgICAgIGlmIChub2Rl Lm5vZGVUeXBlID09IDEpIHJldHVybiBub2RlOwogICAgICByZXR1cm4gbnVsbDsK ICAgIH0sCgogICAgLy8gVE9LRU4gRlVOQ1RJT05TCiAgICB0YWdOYW1lOiBmdW5j dGlvbihub2Rlcywgcm9vdCwgdGFnTmFtZSwgY29tYmluYXRvcikgewogICAgICB2 YXIgdVRhZ05hbWUgPSB0YWdOYW1lLnRvVXBwZXJDYXNlKCk7CiAgICAgIHZhciBy ZXN1bHRzID0gW10sIGggPSBTZWxlY3Rvci5oYW5kbGVyczsKICAgICAgaWYgKG5v ZGVzKSB7CiAgICAgICAgaWYgKGNvbWJpbmF0b3IpIHsKICAgICAgICAgIC8vIGZh c3RsYW5lIGZvciBvcmRpbmFyeSBkZXNjZW5kYW50IGNvbWJpbmF0b3JzCiAgICAg ICAgICBpZiAoY29tYmluYXRvciA9PSAiZGVzY2VuZGFudCIpIHsKICAgICAgICAg ICAgZm9yICh2YXIgaSA9IDAsIG5vZGU7IG5vZGUgPSBub2Rlc1tpXTsgaSsrKQog ICAgICAgICAgICAgIGguY29uY2F0KHJlc3VsdHMsIG5vZGUuZ2V0RWxlbWVudHNC eVRhZ05hbWUodGFnTmFtZSkpOwogICAgICAgICAgICByZXR1cm4gcmVzdWx0czsK ICAgICAgICAgIH0gZWxzZSBub2RlcyA9IHRoaXNbY29tYmluYXRvcl0obm9kZXMp OwogICAgICAgICAgaWYgKHRhZ05hbWUgPT0gIioiKSByZXR1cm4gbm9kZXM7CiAg ICAgICAgfQogICAgICAgIGZvciAodmFyIGkgPSAwLCBub2RlOyBub2RlID0gbm9k ZXNbaV07IGkrKykKICAgICAgICAgIGlmIChub2RlLnRhZ05hbWUudG9VcHBlckNh c2UoKSA9PT0gdVRhZ05hbWUpIHJlc3VsdHMucHVzaChub2RlKTsKICAgICAgICBy ZXR1cm4gcmVzdWx0czsKICAgICAgfSBlbHNlIHJldHVybiByb290LmdldEVsZW1l bnRzQnlUYWdOYW1lKHRhZ05hbWUpOwogICAgfSwKCiAgICBpZDogZnVuY3Rpb24o bm9kZXMsIHJvb3QsIGlkLCBjb21iaW5hdG9yKSB7CiAgICAgIHZhciB0YXJnZXRO b2RlID0gJChpZCksIGggPSBTZWxlY3Rvci5oYW5kbGVyczsKICAgICAgaWYgKCF0 YXJnZXROb2RlKSByZXR1cm4gW107CiAgICAgIGlmICghbm9kZXMgJiYgcm9vdCA9 PSBkb2N1bWVudCkgcmV0dXJuIFt0YXJnZXROb2RlXTsKICAgICAgaWYgKG5vZGVz KSB7CiAgICAgICAgaWYgKGNvbWJpbmF0b3IpIHsKICAgICAgICAgIGlmIChjb21i aW5hdG9yID09ICdjaGlsZCcpIHsKICAgICAgICAgICAgZm9yICh2YXIgaSA9IDAs IG5vZGU7IG5vZGUgPSBub2Rlc1tpXTsgaSsrKQogICAgICAgICAgICAgIGlmICh0 YXJnZXROb2RlLnBhcmVudE5vZGUgPT0gbm9kZSkgcmV0dXJuIFt0YXJnZXROb2Rl XTsKICAgICAgICAgIH0gZWxzZSBpZiAoY29tYmluYXRvciA9PSAnZGVzY2VuZGFu dCcpIHsKICAgICAgICAgICAgZm9yICh2YXIgaSA9IDAsIG5vZGU7IG5vZGUgPSBu b2Rlc1tpXTsgaSsrKQogICAgICAgICAgICAgIGlmIChFbGVtZW50LmRlc2NlbmRh bnRPZih0YXJnZXROb2RlLCBub2RlKSkgcmV0dXJuIFt0YXJnZXROb2RlXTsKICAg ICAgICAgIH0gZWxzZSBpZiAoY29tYmluYXRvciA9PSAnYWRqYWNlbnQnKSB7CiAg ICAgICAgICAgIGZvciAodmFyIGkgPSAwLCBub2RlOyBub2RlID0gbm9kZXNbaV07 IGkrKykKICAgICAgICAgICAgICBpZiAoU2VsZWN0b3IuaGFuZGxlcnMucHJldmlv dXNFbGVtZW50U2libGluZyh0YXJnZXROb2RlKSA9PSBub2RlKQogICAgICAgICAg ICAgICAgcmV0dXJuIFt0YXJnZXROb2RlXTsKICAgICAgICAgIH0gZWxzZSBub2Rl cyA9IGhbY29tYmluYXRvcl0obm9kZXMpOwogICAgICAgIH0KICAgICAgICBmb3Ig KHZhciBpID0gMCwgbm9kZTsgbm9kZSA9IG5vZGVzW2ldOyBpKyspCiAgICAgICAg ICBpZiAobm9kZSA9PSB0YXJnZXROb2RlKSByZXR1cm4gW3RhcmdldE5vZGVdOwog ICAgICAgIHJldHVybiBbXTsKICAgICAgfQogICAgICByZXR1cm4gKHRhcmdldE5v ZGUgJiYgRWxlbWVudC5kZXNjZW5kYW50T2YodGFyZ2V0Tm9kZSwgcm9vdCkpID8g W3RhcmdldE5vZGVdIDogW107CiAgICB9LAoKICAgIGNsYXNzTmFtZTogZnVuY3Rp b24obm9kZXMsIHJvb3QsIGNsYXNzTmFtZSwgY29tYmluYXRvcikgewogICAgICBp ZiAobm9kZXMgJiYgY29tYmluYXRvcikgbm9kZXMgPSB0aGlzW2NvbWJpbmF0b3Jd KG5vZGVzKTsKICAgICAgcmV0dXJuIFNlbGVjdG9yLmhhbmRsZXJzLmJ5Q2xhc3NO YW1lKG5vZGVzLCByb290LCBjbGFzc05hbWUpOwogICAgfSwKCiAgICBieUNsYXNz TmFtZTogZnVuY3Rpb24obm9kZXMsIHJvb3QsIGNsYXNzTmFtZSkgewogICAgICBp ZiAoIW5vZGVzKSBub2RlcyA9IFNlbGVjdG9yLmhhbmRsZXJzLmRlc2NlbmRhbnQo W3Jvb3RdKTsKICAgICAgdmFyIG5lZWRsZSA9ICcgJyArIGNsYXNzTmFtZSArICcg JzsKICAgICAgZm9yICh2YXIgaSA9IDAsIHJlc3VsdHMgPSBbXSwgbm9kZSwgbm9k ZUNsYXNzTmFtZTsgbm9kZSA9IG5vZGVzW2ldOyBpKyspIHsKICAgICAgICBub2Rl Q2xhc3NOYW1lID0gbm9kZS5jbGFzc05hbWU7CiAgICAgICAgaWYgKG5vZGVDbGFz c05hbWUubGVuZ3RoID09IDApIGNvbnRpbnVlOwogICAgICAgIGlmIChub2RlQ2xh c3NOYW1lID09IGNsYXNzTmFtZSB8fCAoJyAnICsgbm9kZUNsYXNzTmFtZSArICcg JykuaW5jbHVkZShuZWVkbGUpKQogICAgICAgICAgcmVzdWx0cy5wdXNoKG5vZGUp OwogICAgICB9CiAgICAgIHJldHVybiByZXN1bHRzOwogICAgfSwKCiAgICBhdHRy UHJlc2VuY2U6IGZ1bmN0aW9uKG5vZGVzLCByb290LCBhdHRyLCBjb21iaW5hdG9y KSB7CiAgICAgIGlmICghbm9kZXMpIG5vZGVzID0gcm9vdC5nZXRFbGVtZW50c0J5 VGFnTmFtZSgiKiIpOwogICAgICBpZiAobm9kZXMgJiYgY29tYmluYXRvcikgbm9k ZXMgPSB0aGlzW2NvbWJpbmF0b3JdKG5vZGVzKTsKICAgICAgdmFyIHJlc3VsdHMg PSBbXTsKICAgICAgZm9yICh2YXIgaSA9IDAsIG5vZGU7IG5vZGUgPSBub2Rlc1tp XTsgaSsrKQogICAgICAgIGlmIChFbGVtZW50Lmhhc0F0dHJpYnV0ZShub2RlLCBh dHRyKSkgcmVzdWx0cy5wdXNoKG5vZGUpOwogICAgICByZXR1cm4gcmVzdWx0czsK ICAgIH0sCgogICAgYXR0cjogZnVuY3Rpb24obm9kZXMsIHJvb3QsIGF0dHIsIHZh bHVlLCBvcGVyYXRvciwgY29tYmluYXRvcikgewogICAgICBpZiAoIW5vZGVzKSBu b2RlcyA9IHJvb3QuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKTsKICAgICAgaWYg KG5vZGVzICYmIGNvbWJpbmF0b3IpIG5vZGVzID0gdGhpc1tjb21iaW5hdG9yXShu b2Rlcyk7CiAgICAgIHZhciBoYW5kbGVyID0gU2VsZWN0b3Iub3BlcmF0b3JzW29w ZXJhdG9yXSwgcmVzdWx0cyA9IFtdOwogICAgICBmb3IgKHZhciBpID0gMCwgbm9k ZTsgbm9kZSA9IG5vZGVzW2ldOyBpKyspIHsKICAgICAgICB2YXIgbm9kZVZhbHVl ID0gRWxlbWVudC5yZWFkQXR0cmlidXRlKG5vZGUsIGF0dHIpOwogICAgICAgIGlm IChub2RlVmFsdWUgPT09IG51bGwpIGNvbnRpbnVlOwogICAgICAgIGlmIChoYW5k bGVyKG5vZGVWYWx1ZSwgdmFsdWUpKSByZXN1bHRzLnB1c2gobm9kZSk7CiAgICAg IH0KICAgICAgcmV0dXJuIHJlc3VsdHM7CiAgICB9LAoKICAgIHBzZXVkbzogZnVu Y3Rpb24obm9kZXMsIG5hbWUsIHZhbHVlLCByb290LCBjb21iaW5hdG9yKSB7CiAg ICAgIGlmIChub2RlcyAmJiBjb21iaW5hdG9yKSBub2RlcyA9IHRoaXNbY29tYmlu YXRvcl0obm9kZXMpOwogICAgICBpZiAoIW5vZGVzKSBub2RlcyA9IHJvb3QuZ2V0 RWxlbWVudHNCeVRhZ05hbWUoIioiKTsKICAgICAgcmV0dXJuIFNlbGVjdG9yLnBz ZXVkb3NbbmFtZV0obm9kZXMsIHZhbHVlLCByb290KTsKICAgIH0KICB9LAoKICBw c2V1ZG9zOiB7CiAgICAnZmlyc3QtY2hpbGQnOiBmdW5jdGlvbihub2RlcywgdmFs dWUsIHJvb3QpIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIHJlc3VsdHMgPSBbXSwg bm9kZTsgbm9kZSA9IG5vZGVzW2ldOyBpKyspIHsKICAgICAgICBpZiAoU2VsZWN0 b3IuaGFuZGxlcnMucHJldmlvdXNFbGVtZW50U2libGluZyhub2RlKSkgY29udGlu dWU7CiAgICAgICAgICByZXN1bHRzLnB1c2gobm9kZSk7CiAgICAgIH0KICAgICAg cmV0dXJuIHJlc3VsdHM7CiAgICB9LAogICAgJ2xhc3QtY2hpbGQnOiBmdW5jdGlv bihub2RlcywgdmFsdWUsIHJvb3QpIHsKICAgICAgZm9yICh2YXIgaSA9IDAsIHJl c3VsdHMgPSBbXSwgbm9kZTsgbm9kZSA9IG5vZGVzW2ldOyBpKyspIHsKICAgICAg ICBpZiAoU2VsZWN0b3IuaGFuZGxlcnMubmV4dEVsZW1lbnRTaWJsaW5nKG5vZGUp KSBjb250aW51ZTsKICAgICAgICAgIHJlc3VsdHMucHVzaChub2RlKTsKICAgICAg fQogICAgICByZXR1cm4gcmVzdWx0czsKICAgIH0sCiAgICAnb25seS1jaGlsZCc6 IGZ1bmN0aW9uKG5vZGVzLCB2YWx1ZSwgcm9vdCkgewogICAgICB2YXIgaCA9IFNl bGVjdG9yLmhhbmRsZXJzOwogICAgICBmb3IgKHZhciBpID0gMCwgcmVzdWx0cyA9 IFtdLCBub2RlOyBub2RlID0gbm9kZXNbaV07IGkrKykKICAgICAgICBpZiAoIWgu cHJldmlvdXNFbGVtZW50U2libGluZyhub2RlKSAmJiAhaC5uZXh0RWxlbWVudFNp Ymxpbmcobm9kZSkpCiAgICAgICAgICByZXN1bHRzLnB1c2gobm9kZSk7CiAgICAg IHJldHVybiByZXN1bHRzOwogICAgfSwKICAgICdudGgtY2hpbGQnOiAgICAgICAg ZnVuY3Rpb24obm9kZXMsIGZvcm11bGEsIHJvb3QpIHsKICAgICAgcmV0dXJuIFNl bGVjdG9yLnBzZXVkb3MubnRoKG5vZGVzLCBmb3JtdWxhLCByb290KTsKICAgIH0s CiAgICAnbnRoLWxhc3QtY2hpbGQnOiAgIGZ1bmN0aW9uKG5vZGVzLCBmb3JtdWxh LCByb290KSB7CiAgICAgIHJldHVybiBTZWxlY3Rvci5wc2V1ZG9zLm50aChub2Rl cywgZm9ybXVsYSwgcm9vdCwgdHJ1ZSk7CiAgICB9LAogICAgJ250aC1vZi10eXBl JzogICAgICBmdW5jdGlvbihub2RlcywgZm9ybXVsYSwgcm9vdCkgewogICAgICBy ZXR1cm4gU2VsZWN0b3IucHNldWRvcy5udGgobm9kZXMsIGZvcm11bGEsIHJvb3Qs IGZhbHNlLCB0cnVlKTsKICAgIH0sCiAgICAnbnRoLWxhc3Qtb2YtdHlwZSc6IGZ1 bmN0aW9uKG5vZGVzLCBmb3JtdWxhLCByb290KSB7CiAgICAgIHJldHVybiBTZWxl Y3Rvci5wc2V1ZG9zLm50aChub2RlcywgZm9ybXVsYSwgcm9vdCwgdHJ1ZSwgdHJ1 ZSk7CiAgICB9LAogICAgJ2ZpcnN0LW9mLXR5cGUnOiAgICBmdW5jdGlvbihub2Rl cywgZm9ybXVsYSwgcm9vdCkgewogICAgICByZXR1cm4gU2VsZWN0b3IucHNldWRv cy5udGgobm9kZXMsICIxIiwgcm9vdCwgZmFsc2UsIHRydWUpOwogICAgfSwKICAg ICdsYXN0LW9mLXR5cGUnOiAgICAgZnVuY3Rpb24obm9kZXMsIGZvcm11bGEsIHJv b3QpIHsKICAgICAgcmV0dXJuIFNlbGVjdG9yLnBzZXVkb3MubnRoKG5vZGVzLCAi MSIsIHJvb3QsIHRydWUsIHRydWUpOwogICAgfSwKICAgICdvbmx5LW9mLXR5cGUn OiAgICAgZnVuY3Rpb24obm9kZXMsIGZvcm11bGEsIHJvb3QpIHsKICAgICAgdmFy IHAgPSBTZWxlY3Rvci5wc2V1ZG9zOwogICAgICByZXR1cm4gcFsnbGFzdC1vZi10 eXBlJ10ocFsnZmlyc3Qtb2YtdHlwZSddKG5vZGVzLCBmb3JtdWxhLCByb290KSwg Zm9ybXVsYSwgcm9vdCk7CiAgICB9LAoKICAgIC8vIGhhbmRsZXMgdGhlIGFuK2Ig bG9naWMKICAgIGdldEluZGljZXM6IGZ1bmN0aW9uKGEsIGIsIHRvdGFsKSB7CiAg ICAgIGlmIChhID09IDApIHJldHVybiBiID4gMCA/IFtiXSA6IFtdOwogICAgICBy ZXR1cm4gJFIoMSwgdG90YWwpLmluamVjdChbXSwgZnVuY3Rpb24obWVtbywgaSkg ewogICAgICAgIGlmICgwID09IChpIC0gYikgJSBhICYmIChpIC0gYikgLyBhID49 IDApIG1lbW8ucHVzaChpKTsKICAgICAgICByZXR1cm4gbWVtbzsKICAgICAgfSk7 CiAgICB9LAoKICAgIC8vIGhhbmRsZXMgbnRoKC1sYXN0KS1jaGlsZCwgbnRoKC1s YXN0KS1vZi10eXBlLCBhbmQgKGZpcnN0fGxhc3QpLW9mLXR5cGUKICAgIG50aDog ZnVuY3Rpb24obm9kZXMsIGZvcm11bGEsIHJvb3QsIHJldmVyc2UsIG9mVHlwZSkg ewogICAgICBpZiAobm9kZXMubGVuZ3RoID09IDApIHJldHVybiBbXTsKICAgICAg aWYgKGZvcm11bGEgPT0gJ2V2ZW4nKSBmb3JtdWxhID0gJzJuKzAnOwogICAgICBp ZiAoZm9ybXVsYSA9PSAnb2RkJykgIGZvcm11bGEgPSAnMm4rMSc7CiAgICAgIHZh ciBoID0gU2VsZWN0b3IuaGFuZGxlcnMsIHJlc3VsdHMgPSBbXSwgaW5kZXhlZCA9 IFtdLCBtOwogICAgICBoLm1hcmsobm9kZXMpOwogICAgICBmb3IgKHZhciBpID0g MCwgbm9kZTsgbm9kZSA9IG5vZGVzW2ldOyBpKyspIHsKICAgICAgICBpZiAoIW5v ZGUucGFyZW50Tm9kZS5fY291bnRlZEJ5UHJvdG90eXBlKSB7CiAgICAgICAgICBo LmluZGV4KG5vZGUucGFyZW50Tm9kZSwgcmV2ZXJzZSwgb2ZUeXBlKTsKICAgICAg ICAgIGluZGV4ZWQucHVzaChub2RlLnBhcmVudE5vZGUpOwogICAgICAgIH0KICAg ICAgfQogICAgICBpZiAoZm9ybXVsYS5tYXRjaCgvXlxkKyQvKSkgeyAvLyBqdXN0 IGEgbnVtYmVyCiAgICAgICAgZm9ybXVsYSA9IE51bWJlcihmb3JtdWxhKTsKICAg ICAgICBmb3IgKHZhciBpID0gMCwgbm9kZTsgbm9kZSA9IG5vZGVzW2ldOyBpKysp CiAgICAgICAgICBpZiAobm9kZS5ub2RlSW5kZXggPT0gZm9ybXVsYSkgcmVzdWx0 cy5wdXNoKG5vZGUpOwogICAgICB9IGVsc2UgaWYgKG0gPSBmb3JtdWxhLm1hdGNo KC9eKC0/XGQqKT9uKChbKy1dKShcZCspKT8vKSkgeyAvLyBhbitiCiAgICAgICAg aWYgKG1bMV0gPT0gIi0iKSBtWzFdID0gLTE7CiAgICAgICAgdmFyIGEgPSBtWzFd ID8gTnVtYmVyKG1bMV0pIDogMTsKICAgICAgICB2YXIgYiA9IG1bMl0gPyBOdW1i ZXIobVsyXSkgOiAwOwogICAgICAgIHZhciBpbmRpY2VzID0gU2VsZWN0b3IucHNl dWRvcy5nZXRJbmRpY2VzKGEsIGIsIG5vZGVzLmxlbmd0aCk7CiAgICAgICAgZm9y ICh2YXIgaSA9IDAsIG5vZGUsIGwgPSBpbmRpY2VzLmxlbmd0aDsgbm9kZSA9IG5v ZGVzW2ldOyBpKyspIHsKICAgICAgICAgIGZvciAodmFyIGogPSAwOyBqIDwgbDsg aisrKQogICAgICAgICAgICBpZiAobm9kZS5ub2RlSW5kZXggPT0gaW5kaWNlc1tq XSkgcmVzdWx0cy5wdXNoKG5vZGUpOwogICAgICAgIH0KICAgICAgfQogICAgICBo LnVubWFyayhub2Rlcyk7CiAgICAgIGgudW5tYXJrKGluZGV4ZWQpOwogICAgICBy ZXR1cm4gcmVzdWx0czsKICAgIH0sCgogICAgJ2VtcHR5JzogZnVuY3Rpb24obm9k ZXMsIHZhbHVlLCByb290KSB7CiAgICAgIGZvciAodmFyIGkgPSAwLCByZXN1bHRz ID0gW10sIG5vZGU7IG5vZGUgPSBub2Rlc1tpXTsgaSsrKSB7CiAgICAgICAgLy8g SUUgdHJlYXRzIGNvbW1lbnRzIGFzIGVsZW1lbnQgbm9kZXMKICAgICAgICBpZiAo bm9kZS50YWdOYW1lID09ICchJyB8fCAobm9kZS5maXJzdENoaWxkICYmICFub2Rl LmlubmVySFRNTC5tYXRjaCgvXlxzKiQvKSkpIGNvbnRpbnVlOwogICAgICAgIHJl c3VsdHMucHVzaChub2RlKTsKICAgICAgfQogICAgICByZXR1cm4gcmVzdWx0czsK ICAgIH0sCgogICAgJ25vdCc6IGZ1bmN0aW9uKG5vZGVzLCBzZWxlY3Rvciwgcm9v dCkgewogICAgICB2YXIgaCA9IFNlbGVjdG9yLmhhbmRsZXJzLCBzZWxlY3RvclR5 cGUsIG07CiAgICAgIHZhciBleGNsdXNpb25zID0gbmV3IFNlbGVjdG9yKHNlbGVj dG9yKS5maW5kRWxlbWVudHMocm9vdCk7CiAgICAgIGgubWFyayhleGNsdXNpb25z KTsKICAgICAgZm9yICh2YXIgaSA9IDAsIHJlc3VsdHMgPSBbXSwgbm9kZTsgbm9k ZSA9IG5vZGVzW2ldOyBpKyspCiAgICAgICAgaWYgKCFub2RlLl9jb3VudGVkQnlQ cm90b3R5cGUpIHJlc3VsdHMucHVzaChub2RlKTsKICAgICAgaC51bm1hcmsoZXhj bHVzaW9ucyk7CiAgICAgIHJldHVybiByZXN1bHRzOwogICAgfSwKCiAgICAnZW5h YmxlZCc6IGZ1bmN0aW9uKG5vZGVzLCB2YWx1ZSwgcm9vdCkgewogICAgICBmb3Ig KHZhciBpID0gMCwgcmVzdWx0cyA9IFtdLCBub2RlOyBub2RlID0gbm9kZXNbaV07 IGkrKykKICAgICAgICBpZiAoIW5vZGUuZGlzYWJsZWQpIHJlc3VsdHMucHVzaChu b2RlKTsKICAgICAgcmV0dXJuIHJlc3VsdHM7CiAgICB9LAoKICAgICdkaXNhYmxl ZCc6IGZ1bmN0aW9uKG5vZGVzLCB2YWx1ZSwgcm9vdCkgewogICAgICBmb3IgKHZh ciBpID0gMCwgcmVzdWx0cyA9IFtdLCBub2RlOyBub2RlID0gbm9kZXNbaV07IGkr KykKICAgICAgICBpZiAobm9kZS5kaXNhYmxlZCkgcmVzdWx0cy5wdXNoKG5vZGUp OwogICAgICByZXR1cm4gcmVzdWx0czsKICAgIH0sCgogICAgJ2NoZWNrZWQnOiBm dW5jdGlvbihub2RlcywgdmFsdWUsIHJvb3QpIHsKICAgICAgZm9yICh2YXIgaSA9 IDAsIHJlc3VsdHMgPSBbXSwgbm9kZTsgbm9kZSA9IG5vZGVzW2ldOyBpKyspCiAg ICAgICAgaWYgKG5vZGUuY2hlY2tlZCkgcmVzdWx0cy5wdXNoKG5vZGUpOwogICAg ICByZXR1cm4gcmVzdWx0czsKICAgIH0KICB9LAoKICBvcGVyYXRvcnM6IHsKICAg ICc9JzogIGZ1bmN0aW9uKG52LCB2KSB7IHJldHVybiBudiA9PSB2OyB9LAogICAg JyE9JzogZnVuY3Rpb24obnYsIHYpIHsgcmV0dXJuIG52ICE9IHY7IH0sCiAgICAn Xj0nOiBmdW5jdGlvbihudiwgdikgeyByZXR1cm4gbnYuc3RhcnRzV2l0aCh2KTsg fSwKICAgICckPSc6IGZ1bmN0aW9uKG52LCB2KSB7IHJldHVybiBudi5lbmRzV2l0 aCh2KTsgfSwKICAgICcqPSc6IGZ1bmN0aW9uKG52LCB2KSB7IHJldHVybiBudi5p bmNsdWRlKHYpOyB9LAogICAgJ349JzogZnVuY3Rpb24obnYsIHYpIHsgcmV0dXJu ICgnICcgKyBudiArICcgJykuaW5jbHVkZSgnICcgKyB2ICsgJyAnKTsgfSwKICAg ICd8PSc6IGZ1bmN0aW9uKG52LCB2KSB7IHJldHVybiAoJy0nICsgbnYudG9VcHBl ckNhc2UoKSArICctJykuaW5jbHVkZSgnLScgKyB2LnRvVXBwZXJDYXNlKCkgKyAn LScpOyB9CiAgfSwKCiAgc3BsaXQ6IGZ1bmN0aW9uKGV4cHJlc3Npb24pIHsKICAg IHZhciBleHByZXNzaW9ucyA9IFtdOwogICAgZXhwcmVzc2lvbi5zY2FuKC8oKFtc dyM6Ln4+KygpXHMtXSt8XCp8XFsuKj9cXSkrKVxzKigsfCQpLywgZnVuY3Rpb24o bSkgewogICAgICBleHByZXNzaW9ucy5wdXNoKG1bMV0uc3RyaXAoKSk7CiAgICB9 KTsKICAgIHJldHVybiBleHByZXNzaW9uczsKICB9LAoKICBtYXRjaEVsZW1lbnRz OiBmdW5jdGlvbihlbGVtZW50cywgZXhwcmVzc2lvbikgewogICAgdmFyIG1hdGNo ZXMgPSAkJChleHByZXNzaW9uKSwgaCA9IFNlbGVjdG9yLmhhbmRsZXJzOwogICAg aC5tYXJrKG1hdGNoZXMpOwogICAgZm9yICh2YXIgaSA9IDAsIHJlc3VsdHMgPSBb XSwgZWxlbWVudDsgZWxlbWVudCA9IGVsZW1lbnRzW2ldOyBpKyspCiAgICAgIGlm IChlbGVtZW50Ll9jb3VudGVkQnlQcm90b3R5cGUpIHJlc3VsdHMucHVzaChlbGVt ZW50KTsKICAgIGgudW5tYXJrKG1hdGNoZXMpOwogICAgcmV0dXJuIHJlc3VsdHM7 CiAgfSwKCiAgZmluZEVsZW1lbnQ6IGZ1bmN0aW9uKGVsZW1lbnRzLCBleHByZXNz aW9uLCBpbmRleCkgewogICAgaWYgKE9iamVjdC5pc051bWJlcihleHByZXNzaW9u KSkgewogICAgICBpbmRleCA9IGV4cHJlc3Npb247IGV4cHJlc3Npb24gPSBmYWxz ZTsKICAgIH0KICAgIHJldHVybiBTZWxlY3Rvci5tYXRjaEVsZW1lbnRzKGVsZW1l bnRzLCBleHByZXNzaW9uIHx8ICcqJylbaW5kZXggfHwgMF07CiAgfSwKCiAgZmlu ZENoaWxkRWxlbWVudHM6IGZ1bmN0aW9uKGVsZW1lbnQsIGV4cHJlc3Npb25zKSB7 CiAgICBleHByZXNzaW9ucyA9IFNlbGVjdG9yLnNwbGl0KGV4cHJlc3Npb25zLmpv aW4oJywnKSk7CiAgICB2YXIgcmVzdWx0cyA9IFtdLCBoID0gU2VsZWN0b3IuaGFu ZGxlcnM7CiAgICBmb3IgKHZhciBpID0gMCwgbCA9IGV4cHJlc3Npb25zLmxlbmd0 aCwgc2VsZWN0b3I7IGkgPCBsOyBpKyspIHsKICAgICAgc2VsZWN0b3IgPSBuZXcg U2VsZWN0b3IoZXhwcmVzc2lvbnNbaV0uc3RyaXAoKSk7CiAgICAgIGguY29uY2F0 KHJlc3VsdHMsIHNlbGVjdG9yLmZpbmRFbGVtZW50cyhlbGVtZW50KSk7CiAgICB9 CiAgICByZXR1cm4gKGwgPiAxKSA/IGgudW5pcXVlKHJlc3VsdHMpIDogcmVzdWx0 czsKICB9Cn0pOwoKaWYgKFByb3RvdHlwZS5Ccm93c2VyLklFKSB7CiAgT2JqZWN0 LmV4dGVuZChTZWxlY3Rvci5oYW5kbGVycywgewogICAgLy8gSUUgcmV0dXJucyBj b21tZW50IG5vZGVzIG9uIGdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIikuCiAgICAv LyBGaWx0ZXIgdGhlbSBvdXQuCiAgICBjb25jYXQ6IGZ1bmN0aW9uKGEsIGIpIHsK ICAgICAgZm9yICh2YXIgaSA9IDAsIG5vZGU7IG5vZGUgPSBiW2ldOyBpKyspCiAg ICAgICAgaWYgKG5vZGUudGFnTmFtZSAhPT0gIiEiKSBhLnB1c2gobm9kZSk7CiAg ICAgIHJldHVybiBhOwogICAgfSwKCiAgICAvLyBJRSBpbXByb3Blcmx5IHNlcmlh bGl6ZXMgX2NvdW50ZWRCeVByb3RvdHlwZSBpbiAoaW5uZXJ8b3V0ZXIpSFRNTC4K ICAgIHVubWFyazogZnVuY3Rpb24obm9kZXMpIHsKICAgICAgZm9yICh2YXIgaSA9 IDAsIG5vZGU7IG5vZGUgPSBub2Rlc1tpXTsgaSsrKQogICAgICAgIG5vZGUucmVt b3ZlQXR0cmlidXRlKCdfY291bnRlZEJ5UHJvdG90eXBlJyk7CiAgICAgIHJldHVy biBub2RlczsKICAgIH0KICB9KTsKfQoKZnVuY3Rpb24gJCQoKSB7CiAgcmV0dXJu IFNlbGVjdG9yLmZpbmRDaGlsZEVsZW1lbnRzKGRvY3VtZW50LCAkQShhcmd1bWVu dHMpKTsKfQp2YXIgRm9ybSA9IHsKICByZXNldDogZnVuY3Rpb24oZm9ybSkgewog ICAgJChmb3JtKS5yZXNldCgpOwogICAgcmV0dXJuIGZvcm07CiAgfSwKCiAgc2Vy aWFsaXplRWxlbWVudHM6IGZ1bmN0aW9uKGVsZW1lbnRzLCBvcHRpb25zKSB7CiAg ICBpZiAodHlwZW9mIG9wdGlvbnMgIT0gJ29iamVjdCcpIG9wdGlvbnMgPSB7IGhh c2g6ICEhb3B0aW9ucyB9OwogICAgZWxzZSBpZiAoT2JqZWN0LmlzVW5kZWZpbmVk KG9wdGlvbnMuaGFzaCkpIG9wdGlvbnMuaGFzaCA9IHRydWU7CiAgICB2YXIga2V5 LCB2YWx1ZSwgc3VibWl0dGVkID0gZmFsc2UsIHN1Ym1pdCA9IG9wdGlvbnMuc3Vi bWl0OwoKICAgIHZhciBkYXRhID0gZWxlbWVudHMuaW5qZWN0KHsgfSwgZnVuY3Rp b24ocmVzdWx0LCBlbGVtZW50KSB7CiAgICAgIGlmICghZWxlbWVudC5kaXNhYmxl ZCAmJiBlbGVtZW50Lm5hbWUpIHsKICAgICAgICBrZXkgPSBlbGVtZW50Lm5hbWU7 IHZhbHVlID0gJChlbGVtZW50KS5nZXRWYWx1ZSgpOwogICAgICAgIGlmICh2YWx1 ZSAhPSBudWxsICYmIChlbGVtZW50LnR5cGUgIT0gJ3N1Ym1pdCcgfHwgKCFzdWJt aXR0ZWQgJiYKICAgICAgICAgICAgc3VibWl0ICE9PSBmYWxzZSAmJiAoIXN1Ym1p dCB8fCBrZXkgPT0gc3VibWl0KSAmJiAoc3VibWl0dGVkID0gdHJ1ZSkpKSkgewog ICAgICAgICAgaWYgKGtleSBpbiByZXN1bHQpIHsKICAgICAgICAgICAgLy8gYSBr ZXkgaXMgYWxyZWFkeSBwcmVzZW50OyBjb25zdHJ1Y3QgYW4gYXJyYXkgb2YgdmFs dWVzCiAgICAgICAgICAgIGlmICghT2JqZWN0LmlzQXJyYXkocmVzdWx0W2tleV0p KSByZXN1bHRba2V5XSA9IFtyZXN1bHRba2V5XV07CiAgICAgICAgICAgIHJlc3Vs dFtrZXldLnB1c2godmFsdWUpOwogICAgICAgICAgfQogICAgICAgICAgZWxzZSBy ZXN1bHRba2V5XSA9IHZhbHVlOwogICAgICAgIH0KICAgICAgfQogICAgICByZXR1 cm4gcmVzdWx0OwogICAgfSk7CgogICAgcmV0dXJuIG9wdGlvbnMuaGFzaCA/IGRh dGEgOiBPYmplY3QudG9RdWVyeVN0cmluZyhkYXRhKTsKICB9Cn07CgpGb3JtLk1l dGhvZHMgPSB7CiAgc2VyaWFsaXplOiBmdW5jdGlvbihmb3JtLCBvcHRpb25zKSB7 CiAgICByZXR1cm4gRm9ybS5zZXJpYWxpemVFbGVtZW50cyhGb3JtLmdldEVsZW1l bnRzKGZvcm0pLCBvcHRpb25zKTsKICB9LAoKICBnZXRFbGVtZW50czogZnVuY3Rp b24oZm9ybSkgewogICAgcmV0dXJuICRBKCQoZm9ybSkuZ2V0RWxlbWVudHNCeVRh Z05hbWUoJyonKSkuaW5qZWN0KFtdLAogICAgICBmdW5jdGlvbihlbGVtZW50cywg Y2hpbGQpIHsKICAgICAgICBpZiAoRm9ybS5FbGVtZW50LlNlcmlhbGl6ZXJzW2No aWxkLnRhZ05hbWUudG9Mb3dlckNhc2UoKV0pCiAgICAgICAgICBlbGVtZW50cy5w dXNoKEVsZW1lbnQuZXh0ZW5kKGNoaWxkKSk7CiAgICAgICAgcmV0dXJuIGVsZW1l bnRzOwogICAgICB9CiAgICApOwogIH0sCgogIGdldElucHV0czogZnVuY3Rpb24o Zm9ybSwgdHlwZU5hbWUsIG5hbWUpIHsKICAgIGZvcm0gPSAkKGZvcm0pOwogICAg dmFyIGlucHV0cyA9IGZvcm0uZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2lucHV0Jyk7 CgogICAgaWYgKCF0eXBlTmFtZSAmJiAhbmFtZSkgcmV0dXJuICRBKGlucHV0cyku bWFwKEVsZW1lbnQuZXh0ZW5kKTsKCiAgICBmb3IgKHZhciBpID0gMCwgbWF0Y2hp bmdJbnB1dHMgPSBbXSwgbGVuZ3RoID0gaW5wdXRzLmxlbmd0aDsgaSA8IGxlbmd0 aDsgaSsrKSB7CiAgICAgIHZhciBpbnB1dCA9IGlucHV0c1tpXTsKICAgICAgaWYg KCh0eXBlTmFtZSAmJiBpbnB1dC50eXBlICE9IHR5cGVOYW1lKSB8fCAobmFtZSAm JiBpbnB1dC5uYW1lICE9IG5hbWUpKQogICAgICAgIGNvbnRpbnVlOwogICAgICBt YXRjaGluZ0lucHV0cy5wdXNoKEVsZW1lbnQuZXh0ZW5kKGlucHV0KSk7CiAgICB9 CgogICAgcmV0dXJuIG1hdGNoaW5nSW5wdXRzOwogIH0sCgogIGRpc2FibGU6IGZ1 bmN0aW9uKGZvcm0pIHsKICAgIGZvcm0gPSAkKGZvcm0pOwogICAgRm9ybS5nZXRF bGVtZW50cyhmb3JtKS5pbnZva2UoJ2Rpc2FibGUnKTsKICAgIHJldHVybiBmb3Jt OwogIH0sCgogIGVuYWJsZTogZnVuY3Rpb24oZm9ybSkgewogICAgZm9ybSA9ICQo Zm9ybSk7CiAgICBGb3JtLmdldEVsZW1lbnRzKGZvcm0pLmludm9rZSgnZW5hYmxl Jyk7CiAgICByZXR1cm4gZm9ybTsKICB9LAoKICBmaW5kRmlyc3RFbGVtZW50OiBm dW5jdGlvbihmb3JtKSB7CiAgICB2YXIgZWxlbWVudHMgPSAkKGZvcm0pLmdldEVs ZW1lbnRzKCkuZmluZEFsbChmdW5jdGlvbihlbGVtZW50KSB7CiAgICAgIHJldHVy biAnaGlkZGVuJyAhPSBlbGVtZW50LnR5cGUgJiYgIWVsZW1lbnQuZGlzYWJsZWQ7 CiAgICB9KTsKICAgIHZhciBmaXJzdEJ5SW5kZXggPSBlbGVtZW50cy5maW5kQWxs KGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgICAgcmV0dXJuIGVsZW1lbnQuaGFzQXR0 cmlidXRlKCd0YWJJbmRleCcpICYmIGVsZW1lbnQudGFiSW5kZXggPj0gMDsKICAg IH0pLnNvcnRCeShmdW5jdGlvbihlbGVtZW50KSB7IHJldHVybiBlbGVtZW50LnRh YkluZGV4IH0pLmZpcnN0KCk7CgogICAgcmV0dXJuIGZpcnN0QnlJbmRleCA/IGZp cnN0QnlJbmRleCA6IGVsZW1lbnRzLmZpbmQoZnVuY3Rpb24oZWxlbWVudCkgewog ICAgICByZXR1cm4gWydpbnB1dCcsICdzZWxlY3QnLCAndGV4dGFyZWEnXS5pbmNs dWRlKGVsZW1lbnQudGFnTmFtZS50b0xvd2VyQ2FzZSgpKTsKICAgIH0pOwogIH0s CgogIGZvY3VzRmlyc3RFbGVtZW50OiBmdW5jdGlvbihmb3JtKSB7CiAgICBmb3Jt ID0gJChmb3JtKTsKICAgIGZvcm0uZmluZEZpcnN0RWxlbWVudCgpLmFjdGl2YXRl KCk7CiAgICByZXR1cm4gZm9ybTsKICB9LAoKICByZXF1ZXN0OiBmdW5jdGlvbihm b3JtLCBvcHRpb25zKSB7CiAgICBmb3JtID0gJChmb3JtKSwgb3B0aW9ucyA9IE9i amVjdC5jbG9uZShvcHRpb25zIHx8IHsgfSk7CgogICAgdmFyIHBhcmFtcyA9IG9w dGlvbnMucGFyYW1ldGVycywgYWN0aW9uID0gZm9ybS5yZWFkQXR0cmlidXRlKCdh Y3Rpb24nKSB8fCAnJzsKICAgIGlmIChhY3Rpb24uYmxhbmsoKSkgYWN0aW9uID0g d2luZG93LmxvY2F0aW9uLmhyZWY7CiAgICBvcHRpb25zLnBhcmFtZXRlcnMgPSBm b3JtLnNlcmlhbGl6ZSh0cnVlKTsKCiAgICBpZiAocGFyYW1zKSB7CiAgICAgIGlm IChPYmplY3QuaXNTdHJpbmcocGFyYW1zKSkgcGFyYW1zID0gcGFyYW1zLnRvUXVl cnlQYXJhbXMoKTsKICAgICAgT2JqZWN0LmV4dGVuZChvcHRpb25zLnBhcmFtZXRl cnMsIHBhcmFtcyk7CiAgICB9CgogICAgaWYgKGZvcm0uaGFzQXR0cmlidXRlKCdt ZXRob2QnKSAmJiAhb3B0aW9ucy5tZXRob2QpCiAgICAgIG9wdGlvbnMubWV0aG9k ID0gZm9ybS5tZXRob2Q7CgogICAgcmV0dXJuIG5ldyBBamF4LlJlcXVlc3QoYWN0 aW9uLCBvcHRpb25zKTsKICB9Cn07CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKi8KCkZvcm0uRWxlbWVudCA9IHsKICBmb2N1czogZnVuY3Rpb24oZWxlbWVu dCkgewogICAgJChlbGVtZW50KS5mb2N1cygpOwogICAgcmV0dXJuIGVsZW1lbnQ7 CiAgfSwKCiAgc2VsZWN0OiBmdW5jdGlvbihlbGVtZW50KSB7CiAgICAkKGVsZW1l bnQpLnNlbGVjdCgpOwogICAgcmV0dXJuIGVsZW1lbnQ7CiAgfQp9OwoKRm9ybS5F bGVtZW50Lk1ldGhvZHMgPSB7CiAgc2VyaWFsaXplOiBmdW5jdGlvbihlbGVtZW50 KSB7CiAgICBlbGVtZW50ID0gJChlbGVtZW50KTsKICAgIGlmICghZWxlbWVudC5k aXNhYmxlZCAmJiBlbGVtZW50Lm5hbWUpIHsKICAgICAgdmFyIHZhbHVlID0gZWxl bWVudC5nZXRWYWx1ZSgpOwogICAgICBpZiAodmFsdWUgIT0gdW5kZWZpbmVkKSB7 CiAgICAgICAgdmFyIHBhaXIgPSB7IH07CiAgICAgICAgcGFpcltlbGVtZW50Lm5h bWVdID0gdmFsdWU7CiAgICAgICAgcmV0dXJuIE9iamVjdC50b1F1ZXJ5U3RyaW5n KHBhaXIpOwogICAgICB9CiAgICB9CiAgICByZXR1cm4gJyc7CiAgfSwKCiAgZ2V0 VmFsdWU6IGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgIGVsZW1lbnQgPSAkKGVsZW1l bnQpOwogICAgdmFyIG1ldGhvZCA9IGVsZW1lbnQudGFnTmFtZS50b0xvd2VyQ2Fz ZSgpOwogICAgcmV0dXJuIEZvcm0uRWxlbWVudC5TZXJpYWxpemVyc1ttZXRob2Rd KGVsZW1lbnQpOwogIH0sCgogIHNldFZhbHVlOiBmdW5jdGlvbihlbGVtZW50LCB2 YWx1ZSkgewogICAgZWxlbWVudCA9ICQoZWxlbWVudCk7CiAgICB2YXIgbWV0aG9k ID0gZWxlbWVudC50YWdOYW1lLnRvTG93ZXJDYXNlKCk7CiAgICBGb3JtLkVsZW1l bnQuU2VyaWFsaXplcnNbbWV0aG9kXShlbGVtZW50LCB2YWx1ZSk7CiAgICByZXR1 cm4gZWxlbWVudDsKICB9LAoKICBjbGVhcjogZnVuY3Rpb24oZWxlbWVudCkgewog ICAgJChlbGVtZW50KS52YWx1ZSA9ICcnOwogICAgcmV0dXJuIGVsZW1lbnQ7CiAg fSwKCiAgcHJlc2VudDogZnVuY3Rpb24oZWxlbWVudCkgewogICAgcmV0dXJuICQo ZWxlbWVudCkudmFsdWUgIT0gJyc7CiAgfSwKCiAgYWN0aXZhdGU6IGZ1bmN0aW9u KGVsZW1lbnQpIHsKICAgIGVsZW1lbnQgPSAkKGVsZW1lbnQpOwogICAgdHJ5IHsK ICAgICAgZWxlbWVudC5mb2N1cygpOwogICAgICBpZiAoZWxlbWVudC5zZWxlY3Qg JiYgKGVsZW1lbnQudGFnTmFtZS50b0xvd2VyQ2FzZSgpICE9ICdpbnB1dCcgfHwK ICAgICAgICAgICFbJ2J1dHRvbicsICdyZXNldCcsICdzdWJtaXQnXS5pbmNsdWRl KGVsZW1lbnQudHlwZSkpKQogICAgICAgIGVsZW1lbnQuc2VsZWN0KCk7CiAgICB9 IGNhdGNoIChlKSB7IH0KICAgIHJldHVybiBlbGVtZW50OwogIH0sCgogIGRpc2Fi bGU6IGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgIGVsZW1lbnQgPSAkKGVsZW1lbnQp OwogICAgZWxlbWVudC5ibHVyKCk7CiAgICBlbGVtZW50LmRpc2FibGVkID0gdHJ1 ZTsKICAgIHJldHVybiBlbGVtZW50OwogIH0sCgogIGVuYWJsZTogZnVuY3Rpb24o ZWxlbWVudCkgewogICAgZWxlbWVudCA9ICQoZWxlbWVudCk7CiAgICBlbGVtZW50 LmRpc2FibGVkID0gZmFsc2U7CiAgICByZXR1cm4gZWxlbWVudDsKICB9Cn07Cgov Ki0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCnZhciBGaWVsZCA9IEZvcm0u RWxlbWVudDsKdmFyICRGID0gRm9ybS5FbGVtZW50Lk1ldGhvZHMuZ2V0VmFsdWU7 CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCkZvcm0uRWxlbWVudC5T ZXJpYWxpemVycyA9IHsKICBpbnB1dDogZnVuY3Rpb24oZWxlbWVudCwgdmFsdWUp IHsKICAgIHN3aXRjaCAoZWxlbWVudC50eXBlLnRvTG93ZXJDYXNlKCkpIHsKICAg ICAgY2FzZSAnY2hlY2tib3gnOgogICAgICBjYXNlICdyYWRpbyc6CiAgICAgICAg cmV0dXJuIEZvcm0uRWxlbWVudC5TZXJpYWxpemVycy5pbnB1dFNlbGVjdG9yKGVs ZW1lbnQsIHZhbHVlKTsKICAgICAgZGVmYXVsdDoKICAgICAgICByZXR1cm4gRm9y bS5FbGVtZW50LlNlcmlhbGl6ZXJzLnRleHRhcmVhKGVsZW1lbnQsIHZhbHVlKTsK ICAgIH0KICB9LAoKICBpbnB1dFNlbGVjdG9yOiBmdW5jdGlvbihlbGVtZW50LCB2 YWx1ZSkgewogICAgaWYgKE9iamVjdC5pc1VuZGVmaW5lZCh2YWx1ZSkpIHJldHVy biBlbGVtZW50LmNoZWNrZWQgPyBlbGVtZW50LnZhbHVlIDogbnVsbDsKICAgIGVs c2UgZWxlbWVudC5jaGVja2VkID0gISF2YWx1ZTsKICB9LAoKICB0ZXh0YXJlYTog ZnVuY3Rpb24oZWxlbWVudCwgdmFsdWUpIHsKICAgIGlmIChPYmplY3QuaXNVbmRl ZmluZWQodmFsdWUpKSByZXR1cm4gZWxlbWVudC52YWx1ZTsKICAgIGVsc2UgZWxl bWVudC52YWx1ZSA9IHZhbHVlOwogIH0sCgogIHNlbGVjdDogZnVuY3Rpb24oZWxl bWVudCwgaW5kZXgpIHsKICAgIGlmIChPYmplY3QuaXNVbmRlZmluZWQoaW5kZXgp KQogICAgICByZXR1cm4gdGhpc1tlbGVtZW50LnR5cGUgPT0gJ3NlbGVjdC1vbmUn ID8KICAgICAgICAnc2VsZWN0T25lJyA6ICdzZWxlY3RNYW55J10oZWxlbWVudCk7 CiAgICBlbHNlIHsKICAgICAgdmFyIG9wdCwgdmFsdWUsIHNpbmdsZSA9ICFPYmpl Y3QuaXNBcnJheShpbmRleCk7CiAgICAgIGZvciAodmFyIGkgPSAwLCBsZW5ndGgg PSBlbGVtZW50Lmxlbmd0aDsgaSA8IGxlbmd0aDsgaSsrKSB7CiAgICAgICAgb3B0 ID0gZWxlbWVudC5vcHRpb25zW2ldOwogICAgICAgIHZhbHVlID0gdGhpcy5vcHRp b25WYWx1ZShvcHQpOwogICAgICAgIGlmIChzaW5nbGUpIHsKICAgICAgICAgIGlm ICh2YWx1ZSA9PSBpbmRleCkgewogICAgICAgICAgICBvcHQuc2VsZWN0ZWQgPSB0 cnVlOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAgfQog ICAgICAgIGVsc2Ugb3B0LnNlbGVjdGVkID0gaW5kZXguaW5jbHVkZSh2YWx1ZSk7 CiAgICAgIH0KICAgIH0KICB9LAoKICBzZWxlY3RPbmU6IGZ1bmN0aW9uKGVsZW1l bnQpIHsKICAgIHZhciBpbmRleCA9IGVsZW1lbnQuc2VsZWN0ZWRJbmRleDsKICAg IHJldHVybiBpbmRleCA+PSAwID8gdGhpcy5vcHRpb25WYWx1ZShlbGVtZW50Lm9w dGlvbnNbaW5kZXhdKSA6IG51bGw7CiAgfSwKCiAgc2VsZWN0TWFueTogZnVuY3Rp b24oZWxlbWVudCkgewogICAgdmFyIHZhbHVlcywgbGVuZ3RoID0gZWxlbWVudC5s ZW5ndGg7CiAgICBpZiAoIWxlbmd0aCkgcmV0dXJuIG51bGw7CgogICAgZm9yICh2 YXIgaSA9IDAsIHZhbHVlcyA9IFtdOyBpIDwgbGVuZ3RoOyBpKyspIHsKICAgICAg dmFyIG9wdCA9IGVsZW1lbnQub3B0aW9uc1tpXTsKICAgICAgaWYgKG9wdC5zZWxl Y3RlZCkgdmFsdWVzLnB1c2godGhpcy5vcHRpb25WYWx1ZShvcHQpKTsKICAgIH0K ICAgIHJldHVybiB2YWx1ZXM7CiAgfSwKCiAgb3B0aW9uVmFsdWU6IGZ1bmN0aW9u KG9wdCkgewogICAgLy8gZXh0ZW5kIGVsZW1lbnQgYmVjYXVzZSBoYXNBdHRyaWJ1 dGUgbWF5IG5vdCBiZSBuYXRpdmUKICAgIHJldHVybiBFbGVtZW50LmV4dGVuZChv cHQpLmhhc0F0dHJpYnV0ZSgndmFsdWUnKSA/IG9wdC52YWx1ZSA6IG9wdC50ZXh0 OwogIH0KfTsKCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoKQWJzdHJh Y3QuVGltZWRPYnNlcnZlciA9IENsYXNzLmNyZWF0ZShQZXJpb2RpY2FsRXhlY3V0 ZXIsIHsKICBpbml0aWFsaXplOiBmdW5jdGlvbigkc3VwZXIsIGVsZW1lbnQsIGZy ZXF1ZW5jeSwgY2FsbGJhY2spIHsKICAgICRzdXBlcihjYWxsYmFjaywgZnJlcXVl bmN5KTsKICAgIHRoaXMuZWxlbWVudCAgID0gJChlbGVtZW50KTsKICAgIHRoaXMu bGFzdFZhbHVlID0gdGhpcy5nZXRWYWx1ZSgpOwogIH0sCgogIGV4ZWN1dGU6IGZ1 bmN0aW9uKCkgewogICAgdmFyIHZhbHVlID0gdGhpcy5nZXRWYWx1ZSgpOwogICAg aWYgKE9iamVjdC5pc1N0cmluZyh0aGlzLmxhc3RWYWx1ZSkgJiYgT2JqZWN0Lmlz U3RyaW5nKHZhbHVlKSA/CiAgICAgICAgdGhpcy5sYXN0VmFsdWUgIT0gdmFsdWUg OiBTdHJpbmcodGhpcy5sYXN0VmFsdWUpICE9IFN0cmluZyh2YWx1ZSkpIHsKICAg ICAgdGhpcy5jYWxsYmFjayh0aGlzLmVsZW1lbnQsIHZhbHVlKTsKICAgICAgdGhp cy5sYXN0VmFsdWUgPSB2YWx1ZTsKICAgIH0KICB9Cn0pOwoKRm9ybS5FbGVtZW50 Lk9ic2VydmVyID0gQ2xhc3MuY3JlYXRlKEFic3RyYWN0LlRpbWVkT2JzZXJ2ZXIs IHsKICBnZXRWYWx1ZTogZnVuY3Rpb24oKSB7CiAgICByZXR1cm4gRm9ybS5FbGVt ZW50LmdldFZhbHVlKHRoaXMuZWxlbWVudCk7CiAgfQp9KTsKCkZvcm0uT2JzZXJ2 ZXIgPSBDbGFzcy5jcmVhdGUoQWJzdHJhY3QuVGltZWRPYnNlcnZlciwgewogIGdl dFZhbHVlOiBmdW5jdGlvbigpIHsKICAgIHJldHVybiBGb3JtLnNlcmlhbGl6ZSh0 aGlzLmVsZW1lbnQpOwogIH0KfSk7CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKi8KCkFic3RyYWN0LkV2ZW50T2JzZXJ2ZXIgPSBDbGFzcy5jcmVhdGUoewog IGluaXRpYWxpemU6IGZ1bmN0aW9uKGVsZW1lbnQsIGNhbGxiYWNrKSB7CiAgICB0 aGlzLmVsZW1lbnQgID0gJChlbGVtZW50KTsKICAgIHRoaXMuY2FsbGJhY2sgPSBj YWxsYmFjazsKCiAgICB0aGlzLmxhc3RWYWx1ZSA9IHRoaXMuZ2V0VmFsdWUoKTsK ICAgIGlmICh0aGlzLmVsZW1lbnQudGFnTmFtZS50b0xvd2VyQ2FzZSgpID09ICdm b3JtJykKICAgICAgdGhpcy5yZWdpc3RlckZvcm1DYWxsYmFja3MoKTsKICAgIGVs c2UKICAgICAgdGhpcy5yZWdpc3RlckNhbGxiYWNrKHRoaXMuZWxlbWVudCk7CiAg fSwKCiAgb25FbGVtZW50RXZlbnQ6IGZ1bmN0aW9uKCkgewogICAgdmFyIHZhbHVl ID0gdGhpcy5nZXRWYWx1ZSgpOwogICAgaWYgKHRoaXMubGFzdFZhbHVlICE9IHZh bHVlKSB7CiAgICAgIHRoaXMuY2FsbGJhY2sodGhpcy5lbGVtZW50LCB2YWx1ZSk7 CiAgICAgIHRoaXMubGFzdFZhbHVlID0gdmFsdWU7CiAgICB9CiAgfSwKCiAgcmVn aXN0ZXJGb3JtQ2FsbGJhY2tzOiBmdW5jdGlvbigpIHsKICAgIEZvcm0uZ2V0RWxl bWVudHModGhpcy5lbGVtZW50KS5lYWNoKHRoaXMucmVnaXN0ZXJDYWxsYmFjaywg dGhpcyk7CiAgfSwKCiAgcmVnaXN0ZXJDYWxsYmFjazogZnVuY3Rpb24oZWxlbWVu dCkgewogICAgaWYgKGVsZW1lbnQudHlwZSkgewogICAgICBzd2l0Y2ggKGVsZW1l bnQudHlwZS50b0xvd2VyQ2FzZSgpKSB7CiAgICAgICAgY2FzZSAnY2hlY2tib3gn OgogICAgICAgIGNhc2UgJ3JhZGlvJzoKICAgICAgICAgIEV2ZW50Lm9ic2VydmUo ZWxlbWVudCwgJ2NsaWNrJywgdGhpcy5vbkVsZW1lbnRFdmVudC5iaW5kKHRoaXMp KTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICBF dmVudC5vYnNlcnZlKGVsZW1lbnQsICdjaGFuZ2UnLCB0aGlzLm9uRWxlbWVudEV2 ZW50LmJpbmQodGhpcykpOwogICAgICAgICAgYnJlYWs7CiAgICAgIH0KICAgIH0K ICB9Cn0pOwoKRm9ybS5FbGVtZW50LkV2ZW50T2JzZXJ2ZXIgPSBDbGFzcy5jcmVh dGUoQWJzdHJhY3QuRXZlbnRPYnNlcnZlciwgewogIGdldFZhbHVlOiBmdW5jdGlv bigpIHsKICAgIHJldHVybiBGb3JtLkVsZW1lbnQuZ2V0VmFsdWUodGhpcy5lbGVt ZW50KTsKICB9Cn0pOwoKRm9ybS5FdmVudE9ic2VydmVyID0gQ2xhc3MuY3JlYXRl KEFic3RyYWN0LkV2ZW50T2JzZXJ2ZXIsIHsKICBnZXRWYWx1ZTogZnVuY3Rpb24o KSB7CiAgICByZXR1cm4gRm9ybS5zZXJpYWxpemUodGhpcy5lbGVtZW50KTsKICB9 Cn0pOwppZiAoIXdpbmRvdy5FdmVudCkgdmFyIEV2ZW50ID0geyB9OwoKT2JqZWN0 LmV4dGVuZChFdmVudCwgewogIEtFWV9CQUNLU1BBQ0U6IDgsCiAgS0VZX1RBQjog ICAgICAgOSwKICBLRVlfUkVUVVJOOiAgIDEzLAogIEtFWV9FU0M6ICAgICAgMjcs CiAgS0VZX0xFRlQ6ICAgICAzNywKICBLRVlfVVA6ICAgICAgIDM4LAogIEtFWV9S SUdIVDogICAgMzksCiAgS0VZX0RPV046ICAgICA0MCwKICBLRVlfREVMRVRFOiAg IDQ2LAogIEtFWV9IT01FOiAgICAgMzYsCiAgS0VZX0VORDogICAgICAzNSwKICBL RVlfUEFHRVVQOiAgIDMzLAogIEtFWV9QQUdFRE9XTjogMzQsCiAgS0VZX0lOU0VS VDogICA0NSwKCiAgY2FjaGU6IHsgfSwKCiAgcmVsYXRlZFRhcmdldDogZnVuY3Rp b24oZXZlbnQpIHsKICAgIHZhciBlbGVtZW50OwogICAgc3dpdGNoKGV2ZW50LnR5 cGUpIHsKICAgICAgY2FzZSAnbW91c2VvdmVyJzogZWxlbWVudCA9IGV2ZW50LmZy b21FbGVtZW50OyBicmVhazsKICAgICAgY2FzZSAnbW91c2VvdXQnOiAgZWxlbWVu dCA9IGV2ZW50LnRvRWxlbWVudDsgICBicmVhazsKICAgICAgZGVmYXVsdDogcmV0 dXJuIG51bGw7CiAgICB9CiAgICByZXR1cm4gRWxlbWVudC5leHRlbmQoZWxlbWVu dCk7CiAgfQp9KTsKCkV2ZW50Lk1ldGhvZHMgPSAoZnVuY3Rpb24oKSB7CiAgdmFy IGlzQnV0dG9uOwoKICBpZiAoUHJvdG90eXBlLkJyb3dzZXIuSUUpIHsKICAgIHZh ciBidXR0b25NYXAgPSB7IDA6IDEsIDE6IDQsIDI6IDIgfTsKICAgIGlzQnV0dG9u ID0gZnVuY3Rpb24oZXZlbnQsIGNvZGUpIHsKICAgICAgcmV0dXJuIGV2ZW50LmJ1 dHRvbiA9PSBidXR0b25NYXBbY29kZV07CiAgICB9OwoKICB9IGVsc2UgaWYgKFBy b3RvdHlwZS5Ccm93c2VyLldlYktpdCkgewogICAgaXNCdXR0b24gPSBmdW5jdGlv bihldmVudCwgY29kZSkgewogICAgICBzd2l0Y2ggKGNvZGUpIHsKICAgICAgICBj YXNlIDA6IHJldHVybiBldmVudC53aGljaCA9PSAxICYmICFldmVudC5tZXRhS2V5 OwogICAgICAgIGNhc2UgMTogcmV0dXJuIGV2ZW50LndoaWNoID09IDEgJiYgZXZl bnQubWV0YUtleTsKICAgICAgICBkZWZhdWx0OiByZXR1cm4gZmFsc2U7CiAgICAg IH0KICAgIH07CgogIH0gZWxzZSB7CiAgICBpc0J1dHRvbiA9IGZ1bmN0aW9uKGV2 ZW50LCBjb2RlKSB7CiAgICAgIHJldHVybiBldmVudC53aGljaCA/IChldmVudC53 aGljaCA9PT0gY29kZSArIDEpIDogKGV2ZW50LmJ1dHRvbiA9PT0gY29kZSk7CiAg ICB9OwogIH0KCiAgcmV0dXJuIHsKICAgIGlzTGVmdENsaWNrOiAgIGZ1bmN0aW9u KGV2ZW50KSB7IHJldHVybiBpc0J1dHRvbihldmVudCwgMCkgfSwKICAgIGlzTWlk ZGxlQ2xpY2s6IGZ1bmN0aW9uKGV2ZW50KSB7IHJldHVybiBpc0J1dHRvbihldmVu dCwgMSkgfSwKICAgIGlzUmlnaHRDbGljazogIGZ1bmN0aW9uKGV2ZW50KSB7IHJl dHVybiBpc0J1dHRvbihldmVudCwgMikgfSwKCiAgICBlbGVtZW50OiBmdW5jdGlv bihldmVudCkgewogICAgICB2YXIgbm9kZSA9IEV2ZW50LmV4dGVuZChldmVudCku dGFyZ2V0OwogICAgICByZXR1cm4gRWxlbWVudC5leHRlbmQobm9kZS5ub2RlVHlw ZSA9PSBOb2RlLlRFWFRfTk9ERSA/IG5vZGUucGFyZW50Tm9kZSA6IG5vZGUpOwog ICAgfSwKCiAgICBmaW5kRWxlbWVudDogZnVuY3Rpb24oZXZlbnQsIGV4cHJlc3Np b24pIHsKICAgICAgdmFyIGVsZW1lbnQgPSBFdmVudC5lbGVtZW50KGV2ZW50KTsK ICAgICAgaWYgKCFleHByZXNzaW9uKSByZXR1cm4gZWxlbWVudDsKICAgICAgdmFy IGVsZW1lbnRzID0gW2VsZW1lbnRdLmNvbmNhdChlbGVtZW50LmFuY2VzdG9ycygp KTsKICAgICAgcmV0dXJuIFNlbGVjdG9yLmZpbmRFbGVtZW50KGVsZW1lbnRzLCBl eHByZXNzaW9uLCAwKTsKICAgIH0sCgogICAgcG9pbnRlcjogZnVuY3Rpb24oZXZl bnQpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICB4OiBldmVudC5wYWdlWCB8fCAo ZXZlbnQuY2xpZW50WCArCiAgICAgICAgICAoZG9jdW1lbnQuZG9jdW1lbnRFbGVt ZW50LnNjcm9sbExlZnQgfHwgZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0KSksCiAg ICAgICAgeTogZXZlbnQucGFnZVkgfHwgKGV2ZW50LmNsaWVudFkgKwogICAgICAg ICAgKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgfHwgZG9jdW1l bnQuYm9keS5zY3JvbGxUb3ApKQogICAgICB9OwogICAgfSwKCiAgICBwb2ludGVy WDogZnVuY3Rpb24oZXZlbnQpIHsgcmV0dXJuIEV2ZW50LnBvaW50ZXIoZXZlbnQp LnggfSwKICAgIHBvaW50ZXJZOiBmdW5jdGlvbihldmVudCkgeyByZXR1cm4gRXZl bnQucG9pbnRlcihldmVudCkueSB9LAoKICAgIHN0b3A6IGZ1bmN0aW9uKGV2ZW50 KSB7CiAgICAgIEV2ZW50LmV4dGVuZChldmVudCk7CiAgICAgIGV2ZW50LnByZXZl bnREZWZhdWx0KCk7CiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOwogICAg ICBldmVudC5zdG9wcGVkID0gdHJ1ZTsKICAgIH0KICB9Owp9KSgpOwoKRXZlbnQu ZXh0ZW5kID0gKGZ1bmN0aW9uKCkgewogIHZhciBtZXRob2RzID0gT2JqZWN0Lmtl eXMoRXZlbnQuTWV0aG9kcykuaW5qZWN0KHsgfSwgZnVuY3Rpb24obSwgbmFtZSkg ewogICAgbVtuYW1lXSA9IEV2ZW50Lk1ldGhvZHNbbmFtZV0ubWV0aG9kaXplKCk7 CiAgICByZXR1cm4gbTsKICB9KTsKCiAgaWYgKFByb3RvdHlwZS5Ccm93c2VyLklF KSB7CiAgICBPYmplY3QuZXh0ZW5kKG1ldGhvZHMsIHsKICAgICAgc3RvcFByb3Bh Z2F0aW9uOiBmdW5jdGlvbigpIHsgdGhpcy5jYW5jZWxCdWJibGUgPSB0cnVlIH0s CiAgICAgIHByZXZlbnREZWZhdWx0OiAgZnVuY3Rpb24oKSB7IHRoaXMucmV0dXJu VmFsdWUgPSBmYWxzZSB9LAogICAgICBpbnNwZWN0OiBmdW5jdGlvbigpIHsgcmV0 dXJuICJbb2JqZWN0IEV2ZW50XSIgfQogICAgfSk7CgogICAgcmV0dXJuIGZ1bmN0 aW9uKGV2ZW50KSB7CiAgICAgIGlmICghZXZlbnQpIHJldHVybiBmYWxzZTsKICAg ICAgaWYgKGV2ZW50Ll9leHRlbmRlZEJ5UHJvdG90eXBlKSByZXR1cm4gZXZlbnQ7 CgogICAgICBldmVudC5fZXh0ZW5kZWRCeVByb3RvdHlwZSA9IFByb3RvdHlwZS5l bXB0eUZ1bmN0aW9uOwogICAgICB2YXIgcG9pbnRlciA9IEV2ZW50LnBvaW50ZXIo ZXZlbnQpOwogICAgICBPYmplY3QuZXh0ZW5kKGV2ZW50LCB7CiAgICAgICAgdGFy Z2V0OiBldmVudC5zcmNFbGVtZW50LAogICAgICAgIHJlbGF0ZWRUYXJnZXQ6IEV2 ZW50LnJlbGF0ZWRUYXJnZXQoZXZlbnQpLAogICAgICAgIHBhZ2VYOiAgcG9pbnRl ci54LAogICAgICAgIHBhZ2VZOiAgcG9pbnRlci55CiAgICAgIH0pOwogICAgICBy ZXR1cm4gT2JqZWN0LmV4dGVuZChldmVudCwgbWV0aG9kcyk7CiAgICB9OwoKICB9 IGVsc2UgewogICAgRXZlbnQucHJvdG90eXBlID0gRXZlbnQucHJvdG90eXBlIHx8 IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCJIVE1MRXZlbnRzIikuX19wcm90b19fOwog ICAgT2JqZWN0LmV4dGVuZChFdmVudC5wcm90b3R5cGUsIG1ldGhvZHMpOwogICAg cmV0dXJuIFByb3RvdHlwZS5LOwogIH0KfSkoKTsKCk9iamVjdC5leHRlbmQoRXZl bnQsIChmdW5jdGlvbigpIHsKICB2YXIgY2FjaGUgPSBFdmVudC5jYWNoZTsKCiAg ZnVuY3Rpb24gZ2V0RXZlbnRJRChlbGVtZW50KSB7CiAgICBpZiAoZWxlbWVudC5f cHJvdG90eXBlRXZlbnRJRCkgcmV0dXJuIGVsZW1lbnQuX3Byb3RvdHlwZUV2ZW50 SURbMF07CiAgICBhcmd1bWVudHMuY2FsbGVlLmlkID0gYXJndW1lbnRzLmNhbGxl ZS5pZCB8fCAxOwogICAgcmV0dXJuIGVsZW1lbnQuX3Byb3RvdHlwZUV2ZW50SUQg PSBbKythcmd1bWVudHMuY2FsbGVlLmlkXTsKICB9CgogIGZ1bmN0aW9uIGdldERP TUV2ZW50TmFtZShldmVudE5hbWUpIHsKICAgIGlmIChldmVudE5hbWUgJiYgZXZl bnROYW1lLmluY2x1ZGUoJzonKSkgcmV0dXJuICJkYXRhYXZhaWxhYmxlIjsKICAg IHJldHVybiBldmVudE5hbWU7CiAgfQoKICBmdW5jdGlvbiBnZXRDYWNoZUZvcklE KGlkKSB7CiAgICByZXR1cm4gY2FjaGVbaWRdID0gY2FjaGVbaWRdIHx8IHsgfTsK ICB9CgogIGZ1bmN0aW9uIGdldFdyYXBwZXJzRm9yRXZlbnROYW1lKGlkLCBldmVu dE5hbWUpIHsKICAgIHZhciBjID0gZ2V0Q2FjaGVGb3JJRChpZCk7CiAgICByZXR1 cm4gY1tldmVudE5hbWVdID0gY1tldmVudE5hbWVdIHx8IFtdOwogIH0KCiAgZnVu Y3Rpb24gY3JlYXRlV3JhcHBlcihlbGVtZW50LCBldmVudE5hbWUsIGhhbmRsZXIp IHsKICAgIHZhciBpZCA9IGdldEV2ZW50SUQoZWxlbWVudCk7CiAgICB2YXIgYyA9 IGdldFdyYXBwZXJzRm9yRXZlbnROYW1lKGlkLCBldmVudE5hbWUpOwogICAgaWYg KGMucGx1Y2soImhhbmRsZXIiKS5pbmNsdWRlKGhhbmRsZXIpKSByZXR1cm4gZmFs c2U7CgogICAgdmFyIHdyYXBwZXIgPSBmdW5jdGlvbihldmVudCkgewogICAgICBp ZiAoIUV2ZW50IHx8ICFFdmVudC5leHRlbmQgfHwKICAgICAgICAoZXZlbnQuZXZl bnROYW1lICYmIGV2ZW50LmV2ZW50TmFtZSAhPSBldmVudE5hbWUpKQogICAgICAg ICAgcmV0dXJuIGZhbHNlOwoKICAgICAgRXZlbnQuZXh0ZW5kKGV2ZW50KTsKICAg ICAgaGFuZGxlci5jYWxsKGVsZW1lbnQsIGV2ZW50KTsKICAgIH07CgogICAgd3Jh cHBlci5oYW5kbGVyID0gaGFuZGxlcjsKICAgIGMucHVzaCh3cmFwcGVyKTsKICAg IHJldHVybiB3cmFwcGVyOwogIH0KCiAgZnVuY3Rpb24gZmluZFdyYXBwZXIoaWQs IGV2ZW50TmFtZSwgaGFuZGxlcikgewogICAgdmFyIGMgPSBnZXRXcmFwcGVyc0Zv ckV2ZW50TmFtZShpZCwgZXZlbnROYW1lKTsKICAgIHJldHVybiBjLmZpbmQoZnVu Y3Rpb24od3JhcHBlcikgeyByZXR1cm4gd3JhcHBlci5oYW5kbGVyID09IGhhbmRs ZXIgfSk7CiAgfQoKICBmdW5jdGlvbiBkZXN0cm95V3JhcHBlcihpZCwgZXZlbnRO YW1lLCBoYW5kbGVyKSB7CiAgICB2YXIgYyA9IGdldENhY2hlRm9ySUQoaWQpOwog ICAgaWYgKCFjW2V2ZW50TmFtZV0pIHJldHVybiBmYWxzZTsKICAgIGNbZXZlbnRO YW1lXSA9IGNbZXZlbnROYW1lXS53aXRob3V0KGZpbmRXcmFwcGVyKGlkLCBldmVu dE5hbWUsIGhhbmRsZXIpKTsKICB9CgogIGZ1bmN0aW9uIGRlc3Ryb3lDYWNoZSgp IHsKICAgIGZvciAodmFyIGlkIGluIGNhY2hlKQogICAgICBmb3IgKHZhciBldmVu dE5hbWUgaW4gY2FjaGVbaWRdKQogICAgICAgIGNhY2hlW2lkXVtldmVudE5hbWVd ID0gbnVsbDsKICB9CgogIGlmICh3aW5kb3cuYXR0YWNoRXZlbnQpIHsKICAgIHdp bmRvdy5hdHRhY2hFdmVudCgib251bmxvYWQiLCBkZXN0cm95Q2FjaGUpOwogIH0K CiAgcmV0dXJuIHsKICAgIG9ic2VydmU6IGZ1bmN0aW9uKGVsZW1lbnQsIGV2ZW50 TmFtZSwgaGFuZGxlcikgewogICAgICBlbGVtZW50ID0gJChlbGVtZW50KTsKICAg ICAgdmFyIG5hbWUgPSBnZXRET01FdmVudE5hbWUoZXZlbnROYW1lKTsKCiAgICAg IHZhciB3cmFwcGVyID0gY3JlYXRlV3JhcHBlcihlbGVtZW50LCBldmVudE5hbWUs IGhhbmRsZXIpOwogICAgICBpZiAoIXdyYXBwZXIpIHJldHVybiBlbGVtZW50OwoK ICAgICAgaWYgKGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcikgewogICAgICAgIGVs ZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihuYW1lLCB3cmFwcGVyLCBmYWxzZSk7CiAg ICAgIH0gZWxzZSB7CiAgICAgICAgZWxlbWVudC5hdHRhY2hFdmVudCgib24iICsg bmFtZSwgd3JhcHBlcik7CiAgICAgIH0KCiAgICAgIHJldHVybiBlbGVtZW50Owog ICAgfSwKCiAgICBzdG9wT2JzZXJ2aW5nOiBmdW5jdGlvbihlbGVtZW50LCBldmVu dE5hbWUsIGhhbmRsZXIpIHsKICAgICAgZWxlbWVudCA9ICQoZWxlbWVudCk7CiAg ICAgIHZhciBpZCA9IGdldEV2ZW50SUQoZWxlbWVudCksIG5hbWUgPSBnZXRET01F dmVudE5hbWUoZXZlbnROYW1lKTsKCiAgICAgIGlmICghaGFuZGxlciAmJiBldmVu dE5hbWUpIHsKICAgICAgICBnZXRXcmFwcGVyc0ZvckV2ZW50TmFtZShpZCwgZXZl bnROYW1lKS5lYWNoKGZ1bmN0aW9uKHdyYXBwZXIpIHsKICAgICAgICAgIGVsZW1l bnQuc3RvcE9ic2VydmluZyhldmVudE5hbWUsIHdyYXBwZXIuaGFuZGxlcik7CiAg ICAgICAgfSk7CiAgICAgICAgcmV0dXJuIGVsZW1lbnQ7CgogICAgICB9IGVsc2Ug aWYgKCFldmVudE5hbWUpIHsKICAgICAgICBPYmplY3Qua2V5cyhnZXRDYWNoZUZv cklEKGlkKSkuZWFjaChmdW5jdGlvbihldmVudE5hbWUpIHsKICAgICAgICAgIGVs ZW1lbnQuc3RvcE9ic2VydmluZyhldmVudE5hbWUpOwogICAgICAgIH0pOwogICAg ICAgIHJldHVybiBlbGVtZW50OwogICAgICB9CgogICAgICB2YXIgd3JhcHBlciA9 IGZpbmRXcmFwcGVyKGlkLCBldmVudE5hbWUsIGhhbmRsZXIpOwogICAgICBpZiAo IXdyYXBwZXIpIHJldHVybiBlbGVtZW50OwoKICAgICAgaWYgKGVsZW1lbnQucmVt b3ZlRXZlbnRMaXN0ZW5lcikgewogICAgICAgIGVsZW1lbnQucmVtb3ZlRXZlbnRM aXN0ZW5lcihuYW1lLCB3cmFwcGVyLCBmYWxzZSk7CiAgICAgIH0gZWxzZSB7CiAg ICAgICAgZWxlbWVudC5kZXRhY2hFdmVudCgib24iICsgbmFtZSwgd3JhcHBlcik7 CiAgICAgIH0KCiAgICAgIGRlc3Ryb3lXcmFwcGVyKGlkLCBldmVudE5hbWUsIGhh bmRsZXIpOwoKICAgICAgcmV0dXJuIGVsZW1lbnQ7CiAgICB9LAoKICAgIGZpcmU6 IGZ1bmN0aW9uKGVsZW1lbnQsIGV2ZW50TmFtZSwgbWVtbykgewogICAgICBlbGVt ZW50ID0gJChlbGVtZW50KTsKICAgICAgaWYgKGVsZW1lbnQgPT0gZG9jdW1lbnQg JiYgZG9jdW1lbnQuY3JlYXRlRXZlbnQgJiYgIWVsZW1lbnQuZGlzcGF0Y2hFdmVu dCkKICAgICAgICBlbGVtZW50ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50OwoK ICAgICAgdmFyIGV2ZW50OwogICAgICBpZiAoZG9jdW1lbnQuY3JlYXRlRXZlbnQp IHsKICAgICAgICBldmVudCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCJIVE1MRXZl bnRzIik7CiAgICAgICAgZXZlbnQuaW5pdEV2ZW50KCJkYXRhYXZhaWxhYmxlIiwg dHJ1ZSwgdHJ1ZSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgZXZlbnQgPSBkb2N1 bWVudC5jcmVhdGVFdmVudE9iamVjdCgpOwogICAgICAgIGV2ZW50LmV2ZW50VHlw ZSA9ICJvbmRhdGFhdmFpbGFibGUiOwogICAgICB9CgogICAgICBldmVudC5ldmVu dE5hbWUgPSBldmVudE5hbWU7CiAgICAgIGV2ZW50Lm1lbW8gPSBtZW1vIHx8IHsg fTsKCiAgICAgIGlmIChkb2N1bWVudC5jcmVhdGVFdmVudCkgewogICAgICAgIGVs ZW1lbnQuZGlzcGF0Y2hFdmVudChldmVudCk7CiAgICAgIH0gZWxzZSB7CiAgICAg ICAgZWxlbWVudC5maXJlRXZlbnQoZXZlbnQuZXZlbnRUeXBlLCBldmVudCk7CiAg ICAgIH0KCiAgICAgIHJldHVybiBFdmVudC5leHRlbmQoZXZlbnQpOwogICAgfQog IH07Cn0pKCkpOwoKT2JqZWN0LmV4dGVuZChFdmVudCwgRXZlbnQuTWV0aG9kcyk7 CgpFbGVtZW50LmFkZE1ldGhvZHMoewogIGZpcmU6ICAgICAgICAgIEV2ZW50LmZp cmUsCiAgb2JzZXJ2ZTogICAgICAgRXZlbnQub2JzZXJ2ZSwKICBzdG9wT2JzZXJ2 aW5nOiBFdmVudC5zdG9wT2JzZXJ2aW5nCn0pOwoKT2JqZWN0LmV4dGVuZChkb2N1 bWVudCwgewogIGZpcmU6ICAgICAgICAgIEVsZW1lbnQuTWV0aG9kcy5maXJlLm1l dGhvZGl6ZSgpLAogIG9ic2VydmU6ICAgICAgIEVsZW1lbnQuTWV0aG9kcy5vYnNl cnZlLm1ldGhvZGl6ZSgpLAogIHN0b3BPYnNlcnZpbmc6IEVsZW1lbnQuTWV0aG9k cy5zdG9wT2JzZXJ2aW5nLm1ldGhvZGl6ZSgpLAogIGxvYWRlZDogICAgICAgIGZh bHNlCn0pOwoKKGZ1bmN0aW9uKCkgewogIC8qIFN1cHBvcnQgZm9yIHRoZSBET01D b250ZW50TG9hZGVkIGV2ZW50IGlzIGJhc2VkIG9uIHdvcmsgYnkgRGFuIFdlYmIs CiAgICAgTWF0dGhpYXMgTWlsbGVyLCBEZWFuIEVkd2FyZHMgYW5kIEpvaG4gUmVz aWcuICovCgogIHZhciB0aW1lcjsKCiAgZnVuY3Rpb24gZmlyZUNvbnRlbnRMb2Fk ZWRFdmVudCgpIHsKICAgIGlmIChkb2N1bWVudC5sb2FkZWQpIHJldHVybjsKICAg IGlmICh0aW1lcikgd2luZG93LmNsZWFySW50ZXJ2YWwodGltZXIpOwogICAgZG9j dW1lbnQuZmlyZSgiZG9tOmxvYWRlZCIpOwogICAgZG9jdW1lbnQubG9hZGVkID0g dHJ1ZTsKICB9CgogIGlmIChkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKSB7CiAg ICBpZiAoUHJvdG90eXBlLkJyb3dzZXIuV2ViS2l0KSB7CiAgICAgIHRpbWVyID0g d2luZG93LnNldEludGVydmFsKGZ1bmN0aW9uKCkgewogICAgICAgIGlmICgvbG9h ZGVkfGNvbXBsZXRlLy50ZXN0KGRvY3VtZW50LnJlYWR5U3RhdGUpKQogICAgICAg ICAgZmlyZUNvbnRlbnRMb2FkZWRFdmVudCgpOwogICAgICB9LCAwKTsKCiAgICAg IEV2ZW50Lm9ic2VydmUod2luZG93LCAibG9hZCIsIGZpcmVDb250ZW50TG9hZGVk RXZlbnQpOwoKICAgIH0gZWxzZSB7CiAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlz dGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLAogICAgICAgIGZpcmVDb250ZW50TG9h ZGVkRXZlbnQsIGZhbHNlKTsKICAgIH0KCiAgfSBlbHNlIHsKICAgIGRvY3VtZW50 LndyaXRlKCI8c2NyaXB0IGlkPV9fb25ET01Db250ZW50TG9hZGVkIGRlZmVyIHNy Yz0vLzo+PFwvc2NyaXB0PiIpOwogICAgJCgiX19vbkRPTUNvbnRlbnRMb2FkZWQi KS5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHsKICAgICAgaWYgKHRo aXMucmVhZHlTdGF0ZSA9PSAiY29tcGxldGUiKSB7CiAgICAgICAgdGhpcy5vbnJl YWR5c3RhdGVjaGFuZ2UgPSBudWxsOwogICAgICAgIGZpcmVDb250ZW50TG9hZGVk RXZlbnQoKTsKICAgICAgfQogICAgfTsKICB9Cn0pKCk7Ci8qLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSBERVBSRUNBVEVEIC0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0qLwoKSGFzaC50b1F1ZXJ5U3RyaW5nID0gT2JqZWN0LnRv UXVlcnlTdHJpbmc7Cgp2YXIgVG9nZ2xlID0geyBkaXNwbGF5OiBFbGVtZW50LnRv Z2dsZSB9OwoKRWxlbWVudC5NZXRob2RzLmNoaWxkT2YgPSBFbGVtZW50Lk1ldGhv ZHMuZGVzY2VuZGFudE9mOwoKdmFyIEluc2VydGlvbiA9IHsKICBCZWZvcmU6IGZ1 bmN0aW9uKGVsZW1lbnQsIGNvbnRlbnQpIHsKICAgIHJldHVybiBFbGVtZW50Lmlu c2VydChlbGVtZW50LCB7YmVmb3JlOmNvbnRlbnR9KTsKICB9LAoKICBUb3A6IGZ1 bmN0aW9uKGVsZW1lbnQsIGNvbnRlbnQpIHsKICAgIHJldHVybiBFbGVtZW50Lmlu c2VydChlbGVtZW50LCB7dG9wOmNvbnRlbnR9KTsKICB9LAoKICBCb3R0b206IGZ1 bmN0aW9uKGVsZW1lbnQsIGNvbnRlbnQpIHsKICAgIHJldHVybiBFbGVtZW50Lmlu c2VydChlbGVtZW50LCB7Ym90dG9tOmNvbnRlbnR9KTsKICB9LAoKICBBZnRlcjog ZnVuY3Rpb24oZWxlbWVudCwgY29udGVudCkgewogICAgcmV0dXJuIEVsZW1lbnQu aW5zZXJ0KGVsZW1lbnQsIHthZnRlcjpjb250ZW50fSk7CiAgfQp9OwoKdmFyICRj b250aW51ZSA9IG5ldyBFcnJvcignInRocm93ICRjb250aW51ZSIgaXMgZGVwcmVj YXRlZCwgdXNlICJyZXR1cm4iIGluc3RlYWQnKTsKCi8vIFRoaXMgc2hvdWxkIGJl IG1vdmVkIHRvIHNjcmlwdC5hY3Vsby51czsgbm90aWNlIHRoZSBkZXByZWNhdGVk IG1ldGhvZHMKLy8gZnVydGhlciBiZWxvdywgdGhhdCBtYXAgdG8gdGhlIG5ld2Vy IEVsZW1lbnQgbWV0aG9kcy4KdmFyIFBvc2l0aW9uID0gewogIC8vIHNldCB0byB0 cnVlIGlmIG5lZWRlZCwgd2FybmluZzogZmlyZWZveCBwZXJmb3JtYW5jZSBwcm9i bGVtcwogIC8vIE5PVCBuZWVlZGVkIGZvciBwYWdlIHNjcm9sbGluZywgb25seSBp ZiBkcmFnZ2FibGUgY29udGFpbmVkIGluCiAgLy8gc2Nyb2xsYWJsZSBlbGVtZW50 cwogIGluY2x1ZGVTY3JvbGxPZmZzZXRzOiBmYWxzZSwKCiAgLy8gbXVzdCBiZSBj YWxsZWQgYmVmb3JlIGNhbGxpbmcgd2l0aGluSW5jbHVkaW5nU2Nyb2xsb2Zmc2V0 LCBldmVyeSB0aW1lIHRoZQogIC8vIHBhZ2UgaXMgc2Nyb2xsZWQKICBwcmVwYXJl OiBmdW5jdGlvbigpIHsKICAgIHRoaXMuZGVsdGFYID0gIHdpbmRvdy5wYWdlWE9m ZnNldAogICAgICAgICAgICAgICAgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50 LnNjcm9sbExlZnQKICAgICAgICAgICAgICAgIHx8IGRvY3VtZW50LmJvZHkuc2Ny b2xsTGVmdAogICAgICAgICAgICAgICAgfHwgMDsKICAgIHRoaXMuZGVsdGFZID0g IHdpbmRvdy5wYWdlWU9mZnNldAogICAgICAgICAgICAgICAgfHwgZG9jdW1lbnQu ZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcAogICAgICAgICAgICAgICAgfHwgZG9j dW1lbnQuYm9keS5zY3JvbGxUb3AKICAgICAgICAgICAgICAgIHx8IDA7CiAgfSwK CiAgLy8gY2FjaGVzIHgveSBjb29yZGluYXRlIHBhaXIgdG8gdXNlIHdpdGggb3Zl cmxhcAogIHdpdGhpbjogZnVuY3Rpb24oZWxlbWVudCwgeCwgeSkgewogICAgaWYg KHRoaXMuaW5jbHVkZVNjcm9sbE9mZnNldHMpCiAgICAgIHJldHVybiB0aGlzLndp dGhpbkluY2x1ZGluZ1Njcm9sbG9mZnNldHMoZWxlbWVudCwgeCwgeSk7CiAgICB0 aGlzLnhjb21wID0geDsKICAgIHRoaXMueWNvbXAgPSB5OwogICAgdGhpcy5vZmZz ZXQgPSBFbGVtZW50LmN1bXVsYXRpdmVPZmZzZXQoZWxlbWVudCk7CgogICAgcmV0 dXJuICh5ID49IHRoaXMub2Zmc2V0WzFdICYmCiAgICAgICAgICAgIHkgPCAgdGhp cy5vZmZzZXRbMV0gKyBlbGVtZW50Lm9mZnNldEhlaWdodCAmJgogICAgICAgICAg ICB4ID49IHRoaXMub2Zmc2V0WzBdICYmCiAgICAgICAgICAgIHggPCAgdGhpcy5v ZmZzZXRbMF0gKyBlbGVtZW50Lm9mZnNldFdpZHRoKTsKICB9LAoKICB3aXRoaW5J bmNsdWRpbmdTY3JvbGxvZmZzZXRzOiBmdW5jdGlvbihlbGVtZW50LCB4LCB5KSB7 CiAgICB2YXIgb2Zmc2V0Y2FjaGUgPSBFbGVtZW50LmN1bXVsYXRpdmVTY3JvbGxP ZmZzZXQoZWxlbWVudCk7CgogICAgdGhpcy54Y29tcCA9IHggKyBvZmZzZXRjYWNo ZVswXSAtIHRoaXMuZGVsdGFYOwogICAgdGhpcy55Y29tcCA9IHkgKyBvZmZzZXRj YWNoZVsxXSAtIHRoaXMuZGVsdGFZOwogICAgdGhpcy5vZmZzZXQgPSBFbGVtZW50 LmN1bXVsYXRpdmVPZmZzZXQoZWxlbWVudCk7CgogICAgcmV0dXJuICh0aGlzLnlj b21wID49IHRoaXMub2Zmc2V0WzFdICYmCiAgICAgICAgICAgIHRoaXMueWNvbXAg PCAgdGhpcy5vZmZzZXRbMV0gKyBlbGVtZW50Lm9mZnNldEhlaWdodCAmJgogICAg ICAgICAgICB0aGlzLnhjb21wID49IHRoaXMub2Zmc2V0WzBdICYmCiAgICAgICAg ICAgIHRoaXMueGNvbXAgPCAgdGhpcy5vZmZzZXRbMF0gKyBlbGVtZW50Lm9mZnNl dFdpZHRoKTsKICB9LAoKICAvLyB3aXRoaW4gbXVzdCBiZSBjYWxsZWQgZGlyZWN0 bHkgYmVmb3JlCiAgb3ZlcmxhcDogZnVuY3Rpb24obW9kZSwgZWxlbWVudCkgewog ICAgaWYgKCFtb2RlKSByZXR1cm4gMDsKICAgIGlmIChtb2RlID09ICd2ZXJ0aWNh bCcpCiAgICAgIHJldHVybiAoKHRoaXMub2Zmc2V0WzFdICsgZWxlbWVudC5vZmZz ZXRIZWlnaHQpIC0gdGhpcy55Y29tcCkgLwogICAgICAgIGVsZW1lbnQub2Zmc2V0 SGVpZ2h0OwogICAgaWYgKG1vZGUgPT0gJ2hvcml6b250YWwnKQogICAgICByZXR1 cm4gKCh0aGlzLm9mZnNldFswXSArIGVsZW1lbnQub2Zmc2V0V2lkdGgpIC0gdGhp cy54Y29tcCkgLwogICAgICAgIGVsZW1lbnQub2Zmc2V0V2lkdGg7CiAgfSwKCiAg Ly8gRGVwcmVjYXRpb24gbGF5ZXIgLS0gdXNlIG5ld2VyIEVsZW1lbnQgbWV0aG9k cyBub3cgKDEuNS4yKS4KCiAgY3VtdWxhdGl2ZU9mZnNldDogRWxlbWVudC5NZXRo b2RzLmN1bXVsYXRpdmVPZmZzZXQsCgogIHBvc2l0aW9uZWRPZmZzZXQ6IEVsZW1l bnQuTWV0aG9kcy5wb3NpdGlvbmVkT2Zmc2V0LAoKICBhYnNvbHV0aXplOiBmdW5j dGlvbihlbGVtZW50KSB7CiAgICBQb3NpdGlvbi5wcmVwYXJlKCk7CiAgICByZXR1 cm4gRWxlbWVudC5hYnNvbHV0aXplKGVsZW1lbnQpOwogIH0sCgogIHJlbGF0aXZp emU6IGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgIFBvc2l0aW9uLnByZXBhcmUoKTsK ICAgIHJldHVybiBFbGVtZW50LnJlbGF0aXZpemUoZWxlbWVudCk7CiAgfSwKCiAg cmVhbE9mZnNldDogRWxlbWVudC5NZXRob2RzLmN1bXVsYXRpdmVTY3JvbGxPZmZz ZXQsCgogIG9mZnNldFBhcmVudDogRWxlbWVudC5NZXRob2RzLmdldE9mZnNldFBh cmVudCwKCiAgcGFnZTogRWxlbWVudC5NZXRob2RzLnZpZXdwb3J0T2Zmc2V0LAoK ICBjbG9uZTogZnVuY3Rpb24oc291cmNlLCB0YXJnZXQsIG9wdGlvbnMpIHsKICAg IG9wdGlvbnMgPSBvcHRpb25zIHx8IHsgfTsKICAgIHJldHVybiBFbGVtZW50LmNs b25lUG9zaXRpb24odGFyZ2V0LCBzb3VyY2UsIG9wdGlvbnMpOwogIH0KfTsKCi8q LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoKaWYgKCFkb2N1bWVudC5nZXRF bGVtZW50c0J5Q2xhc3NOYW1lKSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NO YW1lID0gZnVuY3Rpb24oaW5zdGFuY2VNZXRob2RzKXsKICBmdW5jdGlvbiBpdGVy KG5hbWUpIHsKICAgIHJldHVybiBuYW1lLmJsYW5rKCkgPyBudWxsIDogIltjb250 YWlucyhjb25jYXQoJyAnLCBAY2xhc3MsICcgJyksICcgIiArIG5hbWUgKyAiICcp XSI7CiAgfQoKICBpbnN0YW5jZU1ldGhvZHMuZ2V0RWxlbWVudHNCeUNsYXNzTmFt ZSA9IFByb3RvdHlwZS5Ccm93c2VyRmVhdHVyZXMuWFBhdGggPwogIGZ1bmN0aW9u KGVsZW1lbnQsIGNsYXNzTmFtZSkgewogICAgY2xhc3NOYW1lID0gY2xhc3NOYW1l LnRvU3RyaW5nKCkuc3RyaXAoKTsKICAgIHZhciBjb25kID0gL1xzLy50ZXN0KGNs YXNzTmFtZSkgPyAkdyhjbGFzc05hbWUpLm1hcChpdGVyKS5qb2luKCcnKSA6IGl0 ZXIoY2xhc3NOYW1lKTsKICAgIHJldHVybiBjb25kID8gZG9jdW1lbnQuX2dldEVs ZW1lbnRzQnlYUGF0aCgnLi8vKicgKyBjb25kLCBlbGVtZW50KSA6IFtdOwogIH0g OiBmdW5jdGlvbihlbGVtZW50LCBjbGFzc05hbWUpIHsKICAgIGNsYXNzTmFtZSA9 IGNsYXNzTmFtZS50b1N0cmluZygpLnN0cmlwKCk7CiAgICB2YXIgZWxlbWVudHMg PSBbXSwgY2xhc3NOYW1lcyA9ICgvXHMvLnRlc3QoY2xhc3NOYW1lKSA/ICR3KGNs YXNzTmFtZSkgOiBudWxsKTsKICAgIGlmICghY2xhc3NOYW1lcyAmJiAhY2xhc3NO YW1lKSByZXR1cm4gZWxlbWVudHM7CgogICAgdmFyIG5vZGVzID0gJChlbGVtZW50 KS5nZXRFbGVtZW50c0J5VGFnTmFtZSgnKicpOwogICAgY2xhc3NOYW1lID0gJyAn ICsgY2xhc3NOYW1lICsgJyAnOwoKICAgIGZvciAodmFyIGkgPSAwLCBjaGlsZCwg Y247IGNoaWxkID0gbm9kZXNbaV07IGkrKykgewogICAgICBpZiAoY2hpbGQuY2xh c3NOYW1lICYmIChjbiA9ICcgJyArIGNoaWxkLmNsYXNzTmFtZSArICcgJykgJiYg KGNuLmluY2x1ZGUoY2xhc3NOYW1lKSB8fAogICAgICAgICAgKGNsYXNzTmFtZXMg JiYgY2xhc3NOYW1lcy5hbGwoZnVuY3Rpb24obmFtZSkgewogICAgICAgICAgICBy ZXR1cm4gIW5hbWUudG9TdHJpbmcoKS5ibGFuaygpICYmIGNuLmluY2x1ZGUoJyAn ICsgbmFtZSArICcgJyk7CiAgICAgICAgICB9KSkpKQogICAgICAgIGVsZW1lbnRz LnB1c2goRWxlbWVudC5leHRlbmQoY2hpbGQpKTsKICAgIH0KICAgIHJldHVybiBl bGVtZW50czsKICB9OwoKICByZXR1cm4gZnVuY3Rpb24oY2xhc3NOYW1lLCBwYXJl bnRFbGVtZW50KSB7CiAgICByZXR1cm4gJChwYXJlbnRFbGVtZW50IHx8IGRvY3Vt ZW50LmJvZHkpLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoY2xhc3NOYW1lKTsKICB9 Owp9KEVsZW1lbnQuTWV0aG9kcyk7CgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKi8KCkVsZW1lbnQuQ2xhc3NOYW1lcyA9IENsYXNzLmNyZWF0ZSgpOwpFbGVt ZW50LkNsYXNzTmFtZXMucHJvdG90eXBlID0gewogIGluaXRpYWxpemU6IGZ1bmN0 aW9uKGVsZW1lbnQpIHsKICAgIHRoaXMuZWxlbWVudCA9ICQoZWxlbWVudCk7CiAg fSwKCiAgX2VhY2g6IGZ1bmN0aW9uKGl0ZXJhdG9yKSB7CiAgICB0aGlzLmVsZW1l bnQuY2xhc3NOYW1lLnNwbGl0KC9ccysvKS5zZWxlY3QoZnVuY3Rpb24obmFtZSkg ewogICAgICByZXR1cm4gbmFtZS5sZW5ndGggPiAwOwogICAgfSkuX2VhY2goaXRl cmF0b3IpOwogIH0sCgogIHNldDogZnVuY3Rpb24oY2xhc3NOYW1lKSB7CiAgICB0 aGlzLmVsZW1lbnQuY2xhc3NOYW1lID0gY2xhc3NOYW1lOwogIH0sCgogIGFkZDog ZnVuY3Rpb24oY2xhc3NOYW1lVG9BZGQpIHsKICAgIGlmICh0aGlzLmluY2x1ZGUo Y2xhc3NOYW1lVG9BZGQpKSByZXR1cm47CiAgICB0aGlzLnNldCgkQSh0aGlzKS5j b25jYXQoY2xhc3NOYW1lVG9BZGQpLmpvaW4oJyAnKSk7CiAgfSwKCiAgcmVtb3Zl OiBmdW5jdGlvbihjbGFzc05hbWVUb1JlbW92ZSkgewogICAgaWYgKCF0aGlzLmlu Y2x1ZGUoY2xhc3NOYW1lVG9SZW1vdmUpKSByZXR1cm47CiAgICB0aGlzLnNldCgk QSh0aGlzKS53aXRob3V0KGNsYXNzTmFtZVRvUmVtb3ZlKS5qb2luKCcgJykpOwog IH0sCgogIHRvU3RyaW5nOiBmdW5jdGlvbigpIHsKICAgIHJldHVybiAkQSh0aGlz KS5qb2luKCcgJyk7CiAgfQp9OwoKT2JqZWN0LmV4dGVuZChFbGVtZW50LkNsYXNz TmFtZXMucHJvdG90eXBlLCBFbnVtZXJhYmxlKTsKCi8qLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0qLwoKRWxlbWVudC5hZGRNZXRob2RzKCk7 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=lightbox.js Content-Type: application/x-javascript; charset=UTF-8; name=lightbox.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/js/uniformidad/lightbox.js Content-Transfer-Encoding: Base64 Ly8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCi8vDQovLwlM aWdodGJveCB2Mi4wNA0KLy8JYnkgTG9rZXNoIERoYWthciAtIGh0dHA6Ly93d3cu bG9rZXNoZGhha2FyLmNvbQ0KLy8JTGFzdCBNb2RpZmljYXRpb246IDIvOS8wOA0K Ly8NCi8vCUZvciBtb3JlIGluZm9ybWF0aW9uLCB2aXNpdDoNCi8vCWh0dHA6Ly9s b2tlc2hkaGFrYXIuY29tL3Byb2plY3RzL2xpZ2h0Ym94Mi8NCi8vDQovLwlMaWNl bnNlZCB1bmRlciB0aGUgQ3JlYXRpdmUgQ29tbW9ucyBBdHRyaWJ1dGlvbiAyLjUg TGljZW5zZSAtIGh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5 LzIuNS8NCi8vICAJLSBGcmVlIGZvciB1c2UgaW4gYm90aCBwZXJzb25hbCBhbmQg Y29tbWVyY2lhbCBwcm9qZWN0cw0KLy8JCS0gQXR0cmlidXRpb24gcmVxdWlyZXMg bGVhdmluZyBhdXRob3IgbmFtZSwgYXV0aG9yIGxpbmssIGFuZCB0aGUgbGljZW5z ZSBpbmZvIGludGFjdC4NCi8vCQ0KLy8gIFRoYW5rczogU2NvdHQgVXB0b24odXB0 b25pYy5jb20pLCBQZXRlci1QYXVsIEtvY2gocXVpcmtzbW9kZS5jb20pLCBhbmQg VGhvbWFzIEZ1Y2hzKG1pci5hY3Vsby51cykgZm9yIGlkZWFzLCBsaWJzLCBhbmQg c25pcHBldHMuDQovLyAgCQlBcnRlbXkgVHJlZ3ViZW5rbyAoYXJ0eS5uYW1lKSBm b3IgY2xlYW51cCBhbmQgaGVscCBpbiB1cGRhdGluZyB0byBsYXRlc3QgdmVyIG9m IHByb3RvLWFjdWxvdXMuDQovLw0KLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0NCi8qDQoNCiAgICBUYWJsZSBvZiBDb250ZW50cw0KICAgIC0t LS0tLS0tLS0tLS0tLS0tDQogICAgQ29uZmlndXJhdGlvbg0KDQogICAgTGlnaHRi b3ggQ2xhc3MgRGVjbGFyYXRpb24NCiAgICAtIGluaXRpYWxpemUoKQ0KICAgIC0g dXBkYXRlSW1hZ2VMaXN0KCkNCiAgICAtIHN0YXJ0KCkNCiAgICAtIGNoYW5nZUlt YWdlKCkNCiAgICAtIHJlc2l6ZUltYWdlQ29udGFpbmVyKCkNCiAgICAtIHNob3dJ bWFnZSgpDQogICAgLSB1cGRhdGVEZXRhaWxzKCkNCiAgICAtIHVwZGF0ZU5hdigp DQogICAgLSBlbmFibGVLZXlib2FyZE5hdigpDQogICAgLSBkaXNhYmxlS2V5Ym9h cmROYXYoKQ0KICAgIC0ga2V5Ym9hcmRBY3Rpb24oKQ0KICAgIC0gcHJlbG9hZE5l aWdoYm9ySW1hZ2VzKCkNCiAgICAtIGVuZCgpDQogICAgDQogICAgRnVuY3Rpb24g Q2FsbHMNCiAgICAtIGRvY3VtZW50Lm9ic2VydmUoKQ0KICAgDQoqLw0KLy8gLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KLy8NCi8vICBDb25m aWd1cmF0aW9ubA0KLy8NCkxpZ2h0Ym94T3B0aW9ucyA9IE9iamVjdC5leHRlbmQo ew0KICAgIGZpbGVMb2FkaW5nSW1hZ2U6ICAgICAgICAnL0FybWFkYVBvcnRhbC9m cmFtZXdvcmsvc2tpbnMvYXJtYWRhL2ltYWdlcy91bmlmb3JtaWRhZC9sb2FkaW5n LmdpZicsICAgICANCiAgICBmaWxlQm90dG9tTmF2Q2xvc2VJbWFnZTogJy9Bcm1h ZGFQb3J0YWwvZnJhbWV3b3JrL3NraW5zL2FybWFkYS9pbWFnZXMvdW5pZm9ybWlk YWQvY2xvc2VsYWJlbC5naWYnLA0KDQogICAgb3ZlcmxheU9wYWNpdHk6IDAuOCwg ICAvLyBjb250cm9scyB0cmFuc3BhcmVuY3kgb2Ygc2hhZG93IG92ZXJsYXkNCg0K ICAgIGFuaW1hdGU6IHRydWUsICAgICAgICAgLy8gdG9nZ2xlcyByZXNpemluZyBh bmltYXRpb25zDQogICAgcmVzaXplU3BlZWQ6IDcsICAgICAgICAvLyBjb250cm9s cyB0aGUgc3BlZWQgb2YgdGhlIGltYWdlIHJlc2l6aW5nIGFuaW1hdGlvbnMgKDE9 c2xvd2VzdCBhbmQgMTA9ZmFzdGVzdCkNCg0KICAgIGJvcmRlclNpemU6IDEwLCAg ICAgICAgIC8vaWYgeW91IGFkanVzdCB0aGUgcGFkZGluZyBpbiB0aGUgQ1NTLCB5 b3Ugd2lsbCBuZWVkIHRvIHVwZGF0ZSB0aGlzIHZhcmlhYmxlDQoNCgkvLyBXaGVu IGdyb3VwaW5nIGltYWdlcyB0aGlzIGlzIHVzZWQgdG8gd3JpdGU6IEltYWdlICMg b2YgIy4NCgkvLyBDaGFuZ2UgaXQgZm9yIG5vbi1lbmdsaXNoIGxvY2FsaXphdGlv bg0KCWxhYmVsSW1hZ2U6ICJJbWFnZSIsDQoJbGFiZWxPZjogIm9mIg0KfSwgd2lu ZG93LkxpZ2h0Ym94T3B0aW9ucyB8fCB7fSk7DQoNCi8vIC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCnZhciBMaWdodGJveCA9IENsYXNzLmNy ZWF0ZSgpOw0KDQpMaWdodGJveC5wcm90b3R5cGUgPSB7DQogICAgaW1hZ2VBcnJh eTogW10sDQogICAgYWN0aXZlSW1hZ2U6IHVuZGVmaW5lZCwNCiAgICANCiAgICAv LyBpbml0aWFsaXplKCkNCiAgICAvLyBDb25zdHJ1Y3RvciBydW5zIG9uIGNvbXBs ZXRpb24gb2YgdGhlIERPTSBsb2FkaW5nLiBDYWxscyB1cGRhdGVJbWFnZUxpc3Qg YW5kIHRoZW4NCiAgICAvLyB0aGUgZnVuY3Rpb24gaW5zZXJ0cyBodG1sIGF0IHRo ZSBib3R0b20gb2YgdGhlIHBhZ2Ugd2hpY2ggaXMgdXNlZCB0byBkaXNwbGF5IHRo ZSBzaGFkb3cgDQogICAgLy8gb3ZlcmxheSBhbmQgdGhlIGltYWdlIGNvbnRhaW5l ci4NCiAgICAvLw0KICAgIGluaXRpYWxpemU6IGZ1bmN0aW9uKCkgeyAgICANCiAg ICAgICAgDQogICAgICAgIHRoaXMudXBkYXRlSW1hZ2VMaXN0KCk7DQogICAgICAg IA0KICAgICAgICB0aGlzLmtleWJvYXJkQWN0aW9uID0gdGhpcy5rZXlib2FyZEFj dGlvbi5iaW5kQXNFdmVudExpc3RlbmVyKHRoaXMpOw0KDQogICAgICAgIGlmIChM aWdodGJveE9wdGlvbnMucmVzaXplU3BlZWQgPiAxMCkgTGlnaHRib3hPcHRpb25z LnJlc2l6ZVNwZWVkID0gMTA7DQogICAgICAgIGlmIChMaWdodGJveE9wdGlvbnMu cmVzaXplU3BlZWQgPCAxKSAgTGlnaHRib3hPcHRpb25zLnJlc2l6ZVNwZWVkID0g MTsNCg0KCSAgICB0aGlzLnJlc2l6ZUR1cmF0aW9uID0gTGlnaHRib3hPcHRpb25z LmFuaW1hdGUgPyAoKDExIC0gTGlnaHRib3hPcHRpb25zLnJlc2l6ZVNwZWVkKSAq IDAuMTUpIDogMDsNCgkgICAgdGhpcy5vdmVybGF5RHVyYXRpb24gPSBMaWdodGJv eE9wdGlvbnMuYW5pbWF0ZSA/IDAuMiA6IDA7ICAvLyBzaGFkb3cgZmFkZSBpbi9v dXQgZHVyYXRpb24NCg0KICAgICAgICAvLyBXaGVuIExpZ2h0Ym94IHN0YXJ0cyBp dCB3aWxsIHJlc2l6ZSBpdHNlbGYgZnJvbSAyNTAgYnkgMjUwIHRvIHRoZSBjdXJy ZW50IGltYWdlIGRpbWVuc2lvbi4NCiAgICAgICAgLy8gSWYgYW5pbWF0aW9ucyBh cmUgdHVybmVkIG9mZiwgaXQgd2lsbCBiZSBoaWRkZW4gYXMgdG8gcHJldmVudCBh IGZsaWNrZXIgb2YgYQ0KICAgICAgICAvLyB3aGl0ZSAyNTAgYnkgMjUwIGJveC4N CiAgICAgICAgdmFyIHNpemUgPSAoTGlnaHRib3hPcHRpb25zLmFuaW1hdGUgPyAy NTAgOiAxKSArICdweCc7DQogICAgICAgIA0KDQogICAgICAgIC8vIENvZGUgaW5z ZXJ0cyBodG1sIGF0IHRoZSBib3R0b20gb2YgdGhlIHBhZ2UgdGhhdCBsb29rcyBz aW1pbGFyIHRvIHRoaXM6DQogICAgICAgIC8vDQogICAgICAgIC8vICA8ZGl2IGlk PSJvdmVybGF5Ij48L2Rpdj4NCiAgICAgICAgLy8gIDxkaXYgaWQ9ImxpZ2h0Ym94 Ij4NCiAgICAgICAgLy8gICAgICA8ZGl2IGlkPSJvdXRlckltYWdlQ29udGFpbmVy Ij4NCiAgICAgICAgLy8gICAgICAgICAgPGRpdiBpZD0iaW1hZ2VDb250YWluZXIi Pg0KICAgICAgICAvLyAgICAgICAgICAgICAgPGltZyBpZD0ibGlnaHRib3hJbWFn ZSI+DQogICAgICAgIC8vICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSIiIGlkPSJo b3Zlck5hdiI+DQogICAgICAgIC8vICAgICAgICAgICAgICAgICAgPGEgaHJlZj0i IyIgaWQ9InByZXZMaW5rIj48L2E+DQogICAgICAgIC8vICAgICAgICAgICAgICAg ICAgPGEgaHJlZj0iIyIgaWQ9Im5leHRMaW5rIj48L2E+DQogICAgICAgIC8vICAg ICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgLy8gICAgICAgICAgICAgIDxkaXYg aWQ9ImxvYWRpbmciPg0KICAgICAgICAvLyAgICAgICAgICAgICAgICAgIDxhIGhy ZWY9IiMiIGlkPSJsb2FkaW5nTGluayI+DQogICAgICAgIC8vICAgICAgICAgICAg ICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZXMvbG9hZGluZy5naWYiPg0KICAgICAg ICAvLyAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgLy8gICAgICAgICAg ICAgIDwvZGl2Pg0KICAgICAgICAvLyAgICAgICAgICA8L2Rpdj4NCiAgICAgICAg Ly8gICAgICA8L2Rpdj4NCiAgICAgICAgLy8gICAgICA8ZGl2IGlkPSJpbWFnZURh dGFDb250YWluZXIiPg0KICAgICAgICAvLyAgICAgICAgICA8ZGl2IGlkPSJpbWFn ZURhdGEiPg0KICAgICAgICAvLyAgICAgICAgICAgICAgPGRpdiBpZD0iaW1hZ2VE ZXRhaWxzIj4NCiAgICAgICAgLy8gICAgICAgICAgICAgICAgICA8c3BhbiBpZD0i Y2FwdGlvbiI+PC9zcGFuPg0KICAgICAgICAvLyAgICAgICAgICAgICAgICAgIDxz cGFuIGlkPSJudW1iZXJEaXNwbGF5Ij48L3NwYW4+DQogICAgICAgIC8vICAgICAg ICAgICAgICA8L2Rpdj4NCiAgICAgICAgLy8gICAgICAgICAgICAgIDxkaXYgaWQ9 ImJvdHRvbU5hdiI+DQogICAgICAgIC8vICAgICAgICAgICAgICAgICAgPGEgaHJl Zj0iIyIgaWQ9ImJvdHRvbU5hdkNsb3NlIj4NCiAgICAgICAgLy8gICAgICAgICAg ICAgICAgICAgICAgPGltZyBzcmM9ImltYWdlcy9jbG9zZS5naWYiPg0KICAgICAg ICAvLyAgICAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgLy8gICAgICAgICAg ICAgIDwvZGl2Pg0KICAgICAgICAvLyAgICAgICAgICA8L2Rpdj4NCiAgICAgICAg Ly8gICAgICA8L2Rpdj4NCiAgICAgICAgLy8gIDwvZGl2Pg0KDQoNCiAgICAgICAg dmFyIG9iakJvZHkgPSAkJCgnYm9keScpWzBdOw0KDQoJCW9iakJvZHkuYXBwZW5k Q2hpbGQoQnVpbGRlci5ub2RlKCdkaXYnLHtpZDonb3ZlcmxheSd9KSk7DQoJDQog ICAgICAgIG9iakJvZHkuYXBwZW5kQ2hpbGQoQnVpbGRlci5ub2RlKCdkaXYnLHtp ZDonbGlnaHRib3gnfSwgWw0KICAgICAgICAgICAgQnVpbGRlci5ub2RlKCdkaXYn LHtpZDonb3V0ZXJJbWFnZUNvbnRhaW5lcid9LCANCiAgICAgICAgICAgICAgICBC dWlsZGVyLm5vZGUoJ2Rpdicse2lkOidpbWFnZUNvbnRhaW5lcid9LCBbDQogICAg ICAgICAgICAgICAgICAgIEJ1aWxkZXIubm9kZSgnaW1nJyx7aWQ6J2xpZ2h0Ym94 SW1hZ2UnLHRpdGxlOiAnSW1hZ2VuIGFtcGxpYWRhJ30pLCANCiAgICAgICAgICAg ICAgICAgICAgQnVpbGRlci5ub2RlKCdkaXYnLHtpZDonaG92ZXJOYXYnfSwgWw0K ICAgICAgICAgICAgICAgICAgICAgICAgQnVpbGRlci5ub2RlKCdhJyx7aWQ6J3By ZXZMaW5rJywgaHJlZjogJyMnIH0pLA0KICAgICAgICAgICAgICAgICAgICAgICAg QnVpbGRlci5ub2RlKCdhJyx7aWQ6J25leHRMaW5rJywgaHJlZjogJyMnIH0pDQog ICAgICAgICAgICAgICAgICAgIF0pLA0KICAgICAgICAgICAgICAgICAgICBCdWls ZGVyLm5vZGUoJ2Rpdicse2lkOidsb2FkaW5nJ30sIA0KICAgICAgICAgICAgICAg ICAgICAgICAgQnVpbGRlci5ub2RlKCdhJyx7aWQ6J2xvYWRpbmdMaW5rJywgaHJl ZjogJyMnLCB0aXRsZTogJ0NhcmdhbmRvIGltYWdlbiBhbXBsaWFkYScgfSwgDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgQnVpbGRlci5ub2RlKCdpbWcnLCB7 c3JjOiBMaWdodGJveE9wdGlvbnMuZmlsZUxvYWRpbmdJbWFnZX0pDQogICAgICAg ICAgICAgICAgICAgICAgKQ0KICAgICAgICAgICAgICAgICAgICApDQogICAgICAg ICAgICAgICAgXSkNCiAgICAgICAgICAgICksDQogICAgICAgICAgICBCdWlsZGVy Lm5vZGUoJ2RpdicsIHtpZDonaW1hZ2VEYXRhQ29udGFpbmVyJ30sDQogICAgICAg ICAgICAgICAgQnVpbGRlci5ub2RlKCdkaXYnLHtpZDonaW1hZ2VEYXRhJ30sIFsN CiAgICAgICAgICAgICAgICAgICAgQnVpbGRlci5ub2RlKCdkaXYnLHtpZDonaW1h Z2VEZXRhaWxzJ30sIFsNCiAgICAgICAgICAgICAgICAgICAgICAgIEJ1aWxkZXIu bm9kZSgnc3Bhbicse2lkOidjYXB0aW9uJ30pLA0KICAgICAgICAgICAgICAgICAg ICAgICAgQnVpbGRlci5ub2RlKCdzcGFuJyx7aWQ6J251bWJlckRpc3BsYXknfSkN CiAgICAgICAgICAgICAgICAgICAgXSksDQogICAgICAgICAgICAgICAgICAgIEJ1 aWxkZXIubm9kZSgnZGl2Jyx7aWQ6J2JvdHRvbU5hdid9LA0KICAgICAgICAgICAg ICAgICAgICAgICAgQnVpbGRlci5ub2RlKCdhJyx7aWQ6J2JvdHRvbU5hdkNsb3Nl JywgaHJlZjogJyMnLCB0aXRsZTogJ0NlcnJhciBpbWFnZW4gYW1wbGlhZGEnIH0s DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQnVpbGRlci5ub2RlKCdpbWcn LCB7IHNyYzogTGlnaHRib3hPcHRpb25zLmZpbGVCb3R0b21OYXZDbG9zZUltYWdl IH0pDQogICAgICAgICAgICAgICAgICAgICAgICApDQogICAgICAgICAgICAgICAg ICAgICkNCiAgICAgICAgICAgICAgICBdKQ0KICAgICAgICAgICAgKQ0KICAgICAg ICBdKSk7DQoNCg0KCQkkKCdvdmVybGF5JykuaGlkZSgpLm9ic2VydmUoJ2NsaWNr JywgKGZ1bmN0aW9uKCkgeyB0aGlzLmVuZCgpOyB9KS5iaW5kKHRoaXMpKTsNCgkJ JCgnbGlnaHRib3gnKS5oaWRlKCkub2JzZXJ2ZSgnY2xpY2snLCAoZnVuY3Rpb24o ZXZlbnQpIHsgaWYgKGV2ZW50LmVsZW1lbnQoKS5pZCA9PSAnbGlnaHRib3gnKSB0 aGlzLmVuZCgpOyB9KS5iaW5kKHRoaXMpKTsNCgkJJCgnb3V0ZXJJbWFnZUNvbnRh aW5lcicpLnNldFN0eWxlKHsgd2lkdGg6IHNpemUsIGhlaWdodDogc2l6ZSB9KTsN CgkJJCgncHJldkxpbmsnKS5vYnNlcnZlKCdjbGljaycsIChmdW5jdGlvbihldmVu dCkgeyBldmVudC5zdG9wKCk7IHRoaXMuY2hhbmdlSW1hZ2UodGhpcy5hY3RpdmVJ bWFnZSAtIDEpOyB9KS5iaW5kQXNFdmVudExpc3RlbmVyKHRoaXMpKTsNCgkJJCgn bmV4dExpbmsnKS5vYnNlcnZlKCdjbGljaycsIChmdW5jdGlvbihldmVudCkgeyBl dmVudC5zdG9wKCk7IHRoaXMuY2hhbmdlSW1hZ2UodGhpcy5hY3RpdmVJbWFnZSAr IDEpOyB9KS5iaW5kQXNFdmVudExpc3RlbmVyKHRoaXMpKTsNCgkJJCgnbG9hZGlu Z0xpbmsnKS5vYnNlcnZlKCdjbGljaycsIChmdW5jdGlvbihldmVudCkgeyBldmVu dC5zdG9wKCk7IHRoaXMuZW5kKCk7IH0pLmJpbmQodGhpcykpOw0KCQkkKCdib3R0 b21OYXZDbG9zZScpLm9ic2VydmUoJ2NsaWNrJywgKGZ1bmN0aW9uKGV2ZW50KSB7 IGV2ZW50LnN0b3AoKTsgdGhpcy5lbmQoKTsgfSkuYmluZCh0aGlzKSk7DQoNCiAg ICAgICAgdmFyIHRoID0gdGhpczsNCiAgICAgICAgKGZ1bmN0aW9uKCl7DQogICAg ICAgICAgICB2YXIgaWRzID0gDQogICAgICAgICAgICAgICAgJ292ZXJsYXkgbGln aHRib3ggb3V0ZXJJbWFnZUNvbnRhaW5lciBpbWFnZUNvbnRhaW5lciBsaWdodGJv eEltYWdlIGhvdmVyTmF2IHByZXZMaW5rIG5leHRMaW5rIGxvYWRpbmcgbG9hZGlu Z0xpbmsgJyArIA0KICAgICAgICAgICAgICAgICdpbWFnZURhdGFDb250YWluZXIg aW1hZ2VEYXRhIGltYWdlRGV0YWlscyBjYXB0aW9uIG51bWJlckRpc3BsYXkgYm90 dG9tTmF2IGJvdHRvbU5hdkNsb3NlJzsgICANCiAgICAgICAgICAgICR3KGlkcyku ZWFjaChmdW5jdGlvbihpZCl7IHRoW2lkXSA9ICQoaWQpOyB9KTsNCiAgICAgICAg fSkuZGVmZXIoKTsNCiAgICB9LA0KDQogICAgLy8NCiAgICAvLyB1cGRhdGVJbWFn ZUxpc3QoKQ0KICAgIC8vIExvb3BzIHRocm91Z2ggYW5jaG9yIHRhZ3MgbG9va2lu ZyBmb3IgJ2xpZ2h0Ym94JyByZWZlcmVuY2VzIGFuZCBhcHBsaWVzIG9uY2xpY2sN CiAgICAvLyBldmVudHMgdG8gYXBwcm9wcmlhdGUgbGlua3MuIFlvdSBjYW4gcmVy dW4gYWZ0ZXIgZHluYW1pY2FsbHkgYWRkaW5nIGltYWdlcyB3L2FqYXguDQogICAg Ly8NCiAgICB1cGRhdGVJbWFnZUxpc3Q6IGZ1bmN0aW9uKCkgeyAgIA0KICAgICAg ICB0aGlzLnVwZGF0ZUltYWdlTGlzdCA9IFByb3RvdHlwZS5lbXB0eUZ1bmN0aW9u Ow0KDQogICAgICAgIGRvY3VtZW50Lm9ic2VydmUoJ2NsaWNrJywgKGZ1bmN0aW9u KGV2ZW50KXsNCiAgICAgICAgICAgIHZhciB0YXJnZXQgPSBldmVudC5maW5kRWxl bWVudCgnYVtyZWxePWxpZ2h0Ym94XScpIHx8IGV2ZW50LmZpbmRFbGVtZW50KCdh cmVhW3JlbF49bGlnaHRib3hdJyk7DQogICAgICAgICAgICBpZiAodGFyZ2V0KSB7 DQogICAgICAgICAgICAgICAgZXZlbnQuc3RvcCgpOw0KICAgICAgICAgICAgICAg IHRoaXMuc3RhcnQodGFyZ2V0KTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSku YmluZCh0aGlzKSk7DQogICAgfSwNCiAgICANCiAgICAvLw0KICAgIC8vICBzdGFy dCgpDQogICAgLy8gIERpc3BsYXkgb3ZlcmxheSBhbmQgbGlnaHRib3guIElmIGlt YWdlIGlzIHBhcnQgb2YgYSBzZXQsIGFkZCBzaWJsaW5ncyB0byBpbWFnZUFycmF5 Lg0KICAgIC8vDQogICAgc3RhcnQ6IGZ1bmN0aW9uKGltYWdlTGluaykgeyAgICAN Cg0KICAgICAgICAkJCgnc2VsZWN0JywgJ29iamVjdCcsICdlbWJlZCcpLmVhY2go ZnVuY3Rpb24obm9kZSl7IG5vZGUuc3R5bGUudmlzaWJpbGl0eSA9ICdoaWRkZW4n IH0pOw0KDQogICAgICAgIC8vIHN0cmV0Y2ggb3ZlcmxheSB0byBmaWxsIHBhZ2Ug YW5kIGZhZGUgaW4NCiAgICAgICAgdmFyIGFycmF5UGFnZVNpemUgPSB0aGlzLmdl dFBhZ2VTaXplKCk7DQogICAgICAgICQoJ292ZXJsYXknKS5zZXRTdHlsZSh7IHdp ZHRoOiBhcnJheVBhZ2VTaXplWzBdICsgJ3B4JywgaGVpZ2h0OiBhcnJheVBhZ2VT aXplWzFdICsgJ3B4JyB9KTsNCg0KICAgICAgICBuZXcgRWZmZWN0LkFwcGVhcih0 aGlzLm92ZXJsYXksIHsgZHVyYXRpb246IHRoaXMub3ZlcmxheUR1cmF0aW9uLCBm cm9tOiAwLjAsIHRvOiBMaWdodGJveE9wdGlvbnMub3ZlcmxheU9wYWNpdHkgfSk7 DQoNCiAgICAgICAgdGhpcy5pbWFnZUFycmF5ID0gW107DQogICAgICAgIHZhciBp bWFnZU51bSA9IDA7ICAgICAgIA0KDQogICAgICAgIGlmICgoaW1hZ2VMaW5rLnJl bCA9PSAnbGlnaHRib3gnKSl7DQogICAgICAgICAgICAvLyBpZiBpbWFnZSBpcyBO T1QgcGFydCBvZiBhIHNldCwgYWRkIHNpbmdsZSBpbWFnZSB0byBpbWFnZUFycmF5 DQogICAgICAgICAgICB0aGlzLmltYWdlQXJyYXkucHVzaChbaW1hZ2VMaW5rLmhy ZWZdKTsgICAgICAgICANCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIC8v IGlmIGltYWdlIGlzIHBhcnQgb2YgYSBzZXQuLg0KICAgICAgICAgICAgdGhpcy5p bWFnZUFycmF5ID0gDQogICAgICAgICAgICAgICAgJCQoaW1hZ2VMaW5rLnRhZ05h bWUgKyAnW2hyZWZdW3JlbD0iJyArIGltYWdlTGluay5yZWwgKyAnIl0nKS4NCiAg ICAgICAgICAgICAgICBjb2xsZWN0KGZ1bmN0aW9uKGFuY2hvcil7IHJldHVybiBb YW5jaG9yLmhyZWYsIGFuY2hvci50aXRsZV07IH0pLg0KICAgICAgICAgICAgICAg IHVuaXEoKTsNCiAgICAgICAgICAgIA0KICAgICAgICAgICAgd2hpbGUgKHRoaXMu aW1hZ2VBcnJheVtpbWFnZU51bV1bMF0gIT0gaW1hZ2VMaW5rLmhyZWYpIHsgaW1h Z2VOdW0rKzsgfQ0KICAgICAgICB9DQoNCiAgICAgICAgLy8gY2FsY3VsYXRlIHRv cCBhbmQgbGVmdCBvZmZzZXQgZm9yIHRoZSBsaWdodGJveCANCiAgICAgICAgdmFy IGFycmF5UGFnZVNjcm9sbCA9IGRvY3VtZW50LnZpZXdwb3J0LmdldFNjcm9sbE9m ZnNldHMoKTsNCiAgICAgICAgdmFyIGxpZ2h0Ym94VG9wID0gYXJyYXlQYWdlU2Ny b2xsWzFdICsgKGRvY3VtZW50LnZpZXdwb3J0LmdldEhlaWdodCgpIC8gMTApOw0K ICAgICAgICB2YXIgbGlnaHRib3hMZWZ0ID0gYXJyYXlQYWdlU2Nyb2xsWzBdOw0K ICAgICAgICB0aGlzLmxpZ2h0Ym94LnNldFN0eWxlKHsgdG9wOiBsaWdodGJveFRv cCArICdweCcsIGxlZnQ6IGxpZ2h0Ym94TGVmdCArICdweCcgfSkuc2hvdygpOw0K ICAgICAgICANCiAgICAgICAgdGhpcy5jaGFuZ2VJbWFnZShpbWFnZU51bSk7DQog ICAgfSwNCg0KICAgIC8vDQogICAgLy8gIGNoYW5nZUltYWdlKCkNCiAgICAvLyAg SGlkZSBtb3N0IGVsZW1lbnRzIGFuZCBwcmVsb2FkIGltYWdlIGluIHByZXBhcmF0 aW9uIGZvciByZXNpemluZyBpbWFnZSBjb250YWluZXIuDQogICAgLy8NCiAgICBj aGFuZ2VJbWFnZTogZnVuY3Rpb24oaW1hZ2VOdW0pIHsgICANCiAgICAgICAgDQog ICAgICAgIHRoaXMuYWN0aXZlSW1hZ2UgPSBpbWFnZU51bTsgLy8gdXBkYXRlIGds b2JhbCB2YXINCg0KICAgICAgICAvLyBoaWRlIGVsZW1lbnRzIGR1cmluZyB0cmFu c2l0aW9uDQogICAgICAgIGlmIChMaWdodGJveE9wdGlvbnMuYW5pbWF0ZSkgdGhp cy5sb2FkaW5nLnNob3coKTsNCiAgICAgICAgdGhpcy5saWdodGJveEltYWdlLmhp ZGUoKTsNCiAgICAgICAgdGhpcy5ob3Zlck5hdi5oaWRlKCk7DQogICAgICAgIHRo aXMucHJldkxpbmsuaGlkZSgpOw0KICAgICAgICB0aGlzLm5leHRMaW5rLmhpZGUo KTsNCgkJLy8gSEFDSzogT3BlcmE5IGRvZXMgbm90IGN1cnJlbnRseSBzdXBwb3J0 IHNjcmlwdGFjdWxvdXMgb3BhY2l0eSBhbmQgYXBwZWFyIGZ4DQogICAgICAgIHRo aXMuaW1hZ2VEYXRhQ29udGFpbmVyLnNldFN0eWxlKHtvcGFjaXR5OiAuMDAwMX0p Ow0KICAgICAgICB0aGlzLm51bWJlckRpc3BsYXkuaGlkZSgpOyAgICAgIA0KICAg ICAgICANCiAgICAgICAgdmFyIGltZ1ByZWxvYWRlciA9IG5ldyBJbWFnZSgpOw0K ICAgICAgICANCiAgICAgICAgLy8gb25jZSBpbWFnZSBpcyBwcmVsb2FkZWQsIHJl c2l6ZSBpbWFnZSBjb250YWluZXINCg0KDQogICAgICAgIGltZ1ByZWxvYWRlci5v bmxvYWQgPSAoZnVuY3Rpb24oKXsNCiAgICAgICAgICAgIHRoaXMubGlnaHRib3hJ bWFnZS5zcmMgPSB0aGlzLmltYWdlQXJyYXlbdGhpcy5hY3RpdmVJbWFnZV1bMF07 DQogICAgICAgICAgICB0aGlzLnJlc2l6ZUltYWdlQ29udGFpbmVyKGltZ1ByZWxv YWRlci53aWR0aCwgaW1nUHJlbG9hZGVyLmhlaWdodCk7DQogICAgICAgIH0pLmJp bmQodGhpcyk7DQogICAgICAgIGltZ1ByZWxvYWRlci5zcmMgPSB0aGlzLmltYWdl QXJyYXlbdGhpcy5hY3RpdmVJbWFnZV1bMF07DQogICAgfSwNCg0KICAgIC8vDQog ICAgLy8gIHJlc2l6ZUltYWdlQ29udGFpbmVyKCkNCiAgICAvLw0KICAgIHJlc2l6 ZUltYWdlQ29udGFpbmVyOiBmdW5jdGlvbihpbWdXaWR0aCwgaW1nSGVpZ2h0KSB7 DQoNCiAgICAgICAgLy8gZ2V0IGN1cnJlbnQgd2lkdGggYW5kIGhlaWdodA0KICAg ICAgICB2YXIgd2lkdGhDdXJyZW50ICA9IHRoaXMub3V0ZXJJbWFnZUNvbnRhaW5l ci5nZXRXaWR0aCgpOw0KICAgICAgICB2YXIgaGVpZ2h0Q3VycmVudCA9IHRoaXMu b3V0ZXJJbWFnZUNvbnRhaW5lci5nZXRIZWlnaHQoKTsNCg0KICAgICAgICAvLyBn ZXQgbmV3IHdpZHRoIGFuZCBoZWlnaHQNCiAgICAgICAgdmFyIHdpZHRoTmV3ICA9 IChpbWdXaWR0aCAgKyBMaWdodGJveE9wdGlvbnMuYm9yZGVyU2l6ZSAqIDIpOw0K ICAgICAgICB2YXIgaGVpZ2h0TmV3ID0gKGltZ0hlaWdodCArIExpZ2h0Ym94T3B0 aW9ucy5ib3JkZXJTaXplICogMik7DQoNCiAgICAgICAgLy8gc2NhbGFycyBiYXNl ZCBvbiBjaGFuZ2UgZnJvbSBvbGQgdG8gbmV3DQogICAgICAgIHZhciB4U2NhbGUg PSAod2lkdGhOZXcgIC8gd2lkdGhDdXJyZW50KSAgKiAxMDA7DQogICAgICAgIHZh ciB5U2NhbGUgPSAoaGVpZ2h0TmV3IC8gaGVpZ2h0Q3VycmVudCkgKiAxMDA7DQoN CiAgICAgICAgLy8gY2FsY3VsYXRlIHNpemUgZGlmZmVyZW5jZSBiZXR3ZWVuIG5l dyBhbmQgb2xkIGltYWdlLCBhbmQgcmVzaXplIGlmIG5lY2Vzc2FyeQ0KICAgICAg ICB2YXIgd0RpZmYgPSB3aWR0aEN1cnJlbnQgLSB3aWR0aE5ldzsNCiAgICAgICAg dmFyIGhEaWZmID0gaGVpZ2h0Q3VycmVudCAtIGhlaWdodE5ldzsNCg0KICAgICAg ICBpZiAoaERpZmYgIT0gMCkgbmV3IEVmZmVjdC5TY2FsZSh0aGlzLm91dGVySW1h Z2VDb250YWluZXIsIHlTY2FsZSwge3NjYWxlWDogZmFsc2UsIGR1cmF0aW9uOiB0 aGlzLnJlc2l6ZUR1cmF0aW9uLCBxdWV1ZTogJ2Zyb250J30pOyANCiAgICAgICAg aWYgKHdEaWZmICE9IDApIG5ldyBFZmZlY3QuU2NhbGUodGhpcy5vdXRlckltYWdl Q29udGFpbmVyLCB4U2NhbGUsIHtzY2FsZVk6IGZhbHNlLCBkdXJhdGlvbjogdGhp cy5yZXNpemVEdXJhdGlvbiwgZGVsYXk6IHRoaXMucmVzaXplRHVyYXRpb259KTsg DQoNCiAgICAgICAgLy8gaWYgbmV3IGFuZCBvbGQgaW1hZ2UgYXJlIHNhbWUgc2l6 ZSBhbmQgbm8gc2NhbGluZyB0cmFuc2l0aW9uIGlzIG5lY2Vzc2FyeSwgDQogICAg ICAgIC8vIGRvIGEgcXVpY2sgcGF1c2UgdG8gcHJldmVudCBpbWFnZSBmbGlja2Vy Lg0KICAgICAgICB2YXIgdGltZW91dCA9IDA7DQogICAgICAgIGlmICgoaERpZmYg PT0gMCkgJiYgKHdEaWZmID09IDApKXsNCiAgICAgICAgICAgIHRpbWVvdXQgPSAx MDA7DQogICAgICAgICAgICBpZiAoUHJvdG90eXBlLkJyb3dzZXIuSUUpIHRpbWVv dXQgPSAyNTA7ICAgDQogICAgICAgIH0NCg0KICAgICAgICAoZnVuY3Rpb24oKXsN CiAgICAgICAgICAgIHRoaXMucHJldkxpbmsuc2V0U3R5bGUoeyBoZWlnaHQ6IGlt Z0hlaWdodCArICdweCcgfSk7DQogICAgICAgICAgICB0aGlzLm5leHRMaW5rLnNl dFN0eWxlKHsgaGVpZ2h0OiBpbWdIZWlnaHQgKyAncHgnIH0pOw0KICAgICAgICAg ICAgdGhpcy5pbWFnZURhdGFDb250YWluZXIuc2V0U3R5bGUoeyB3aWR0aDogd2lk dGhOZXcgKyAncHgnIH0pOw0KDQogICAgICAgICAgICB0aGlzLnNob3dJbWFnZSgp Ow0KICAgICAgICB9KS5iaW5kKHRoaXMpLmRlbGF5KHRpbWVvdXQgLyAxMDAwKTsN CiAgICB9LA0KICAgIA0KICAgIC8vDQogICAgLy8gIHNob3dJbWFnZSgpDQogICAg Ly8gIERpc3BsYXkgaW1hZ2UgYW5kIGJlZ2luIHByZWxvYWRpbmcgbmVpZ2hib3Jz Lg0KICAgIC8vDQogICAgc2hvd0ltYWdlOiBmdW5jdGlvbigpew0KICAgICAgICB0 aGlzLmxvYWRpbmcuaGlkZSgpOw0KICAgICAgICBuZXcgRWZmZWN0LkFwcGVhcih0 aGlzLmxpZ2h0Ym94SW1hZ2UsIHsgDQogICAgICAgICAgICBkdXJhdGlvbjogdGhp cy5yZXNpemVEdXJhdGlvbiwgDQogICAgICAgICAgICBxdWV1ZTogJ2VuZCcsIA0K ICAgICAgICAgICAgYWZ0ZXJGaW5pc2g6IChmdW5jdGlvbigpeyB0aGlzLnVwZGF0 ZURldGFpbHMoKTsgfSkuYmluZCh0aGlzKSANCiAgICAgICAgfSk7DQogICAgICAg IHRoaXMucHJlbG9hZE5laWdoYm9ySW1hZ2VzKCk7DQogICAgfSwNCg0KICAgIC8v DQogICAgLy8gIHVwZGF0ZURldGFpbHMoKQ0KICAgIC8vICBEaXNwbGF5IGNhcHRp b24sIGltYWdlIG51bWJlciwgYW5kIGJvdHRvbSBuYXYuDQogICAgLy8NCiAgICB1 cGRhdGVEZXRhaWxzOiBmdW5jdGlvbigpIHsNCiAgICANCiAgICAgICAgLy8gaWYg Y2FwdGlvbiBpcyBub3QgbnVsbA0KICAgICAgICBpZiAodGhpcy5pbWFnZUFycmF5 W3RoaXMuYWN0aXZlSW1hZ2VdWzFdICE9ICIiKXsNCiAgICAgICAgICAgIHRoaXMu Y2FwdGlvbi51cGRhdGUodGhpcy5pbWFnZUFycmF5W3RoaXMuYWN0aXZlSW1hZ2Vd WzFdKS5zaG93KCk7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC8vIGlm IGltYWdlIGlzIHBhcnQgb2Ygc2V0IGRpc3BsYXkgJ0ltYWdlIHggb2YgeCcgDQog ICAgICAgIGlmICh0aGlzLmltYWdlQXJyYXkubGVuZ3RoID4gMSl7DQogICAgICAg ICAgICB0aGlzLm51bWJlckRpc3BsYXkudXBkYXRlKCBMaWdodGJveE9wdGlvbnMu bGFiZWxJbWFnZSArICcgJyArICh0aGlzLmFjdGl2ZUltYWdlICsgMSkgKyAnICcg KyBMaWdodGJveE9wdGlvbnMubGFiZWxPZiArICcgICcgKyB0aGlzLmltYWdlQXJy YXkubGVuZ3RoKS5zaG93KCk7DQogICAgICAgIH0NCg0KICAgICAgICBuZXcgRWZm ZWN0LlBhcmFsbGVsKA0KICAgICAgICAgICAgWyANCiAgICAgICAgICAgICAgICBu ZXcgRWZmZWN0LlNsaWRlRG93bih0aGlzLmltYWdlRGF0YUNvbnRhaW5lciwgeyBz eW5jOiB0cnVlLCBkdXJhdGlvbjogdGhpcy5yZXNpemVEdXJhdGlvbiwgZnJvbTog MC4wLCB0bzogMS4wIH0pLCANCiAgICAgICAgICAgICAgICBuZXcgRWZmZWN0LkFw cGVhcih0aGlzLmltYWdlRGF0YUNvbnRhaW5lciwgeyBzeW5jOiB0cnVlLCBkdXJh dGlvbjogdGhpcy5yZXNpemVEdXJhdGlvbiB9KSANCiAgICAgICAgICAgIF0sIA0K ICAgICAgICAgICAgeyANCiAgICAgICAgICAgICAgICBkdXJhdGlvbjogdGhpcy5y ZXNpemVEdXJhdGlvbiwgDQogICAgICAgICAgICAgICAgYWZ0ZXJGaW5pc2g6IChm dW5jdGlvbigpIHsNCgkgICAgICAgICAgICAgICAgLy8gdXBkYXRlIG92ZXJsYXkg c2l6ZSBhbmQgdXBkYXRlIG5hdg0KCSAgICAgICAgICAgICAgICB2YXIgYXJyYXlQ YWdlU2l6ZSA9IHRoaXMuZ2V0UGFnZVNpemUoKTsNCgkgICAgICAgICAgICAgICAg dGhpcy5vdmVybGF5LnNldFN0eWxlKHsgaGVpZ2h0OiBhcnJheVBhZ2VTaXplWzFd ICsgJ3B4JyB9KTsNCgkgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVOYXYoKTsN CiAgICAgICAgICAgICAgICB9KS5iaW5kKHRoaXMpDQogICAgICAgICAgICB9IA0K ICAgICAgICApOw0KICAgIH0sDQoNCiAgICAvLw0KICAgIC8vICB1cGRhdGVOYXYo KQ0KICAgIC8vICBEaXNwbGF5IGFwcHJvcHJpYXRlIHByZXZpb3VzIGFuZCBuZXh0 IGhvdmVyIG5hdmlnYXRpb24uDQogICAgLy8NCiAgICB1cGRhdGVOYXY6IGZ1bmN0 aW9uKCkgew0KDQogICAgICAgIHRoaXMuaG92ZXJOYXYuc2hvdygpOyAgICAgICAg ICAgICAgIA0KDQogICAgICAgIC8vIGlmIG5vdCBmaXJzdCBpbWFnZSBpbiBzZXQs IGRpc3BsYXkgcHJldiBpbWFnZSBidXR0b24NCiAgICAgICAgaWYgKHRoaXMuYWN0 aXZlSW1hZ2UgPiAwKSB0aGlzLnByZXZMaW5rLnNob3coKTsNCg0KICAgICAgICAv LyBpZiBub3QgbGFzdCBpbWFnZSBpbiBzZXQsIGRpc3BsYXkgbmV4dCBpbWFnZSBi dXR0b24NCiAgICAgICAgaWYgKHRoaXMuYWN0aXZlSW1hZ2UgPCAodGhpcy5pbWFn ZUFycmF5Lmxlbmd0aCAtIDEpKSB0aGlzLm5leHRMaW5rLnNob3coKTsNCiAgICAg ICAgDQogICAgICAgIHRoaXMuZW5hYmxlS2V5Ym9hcmROYXYoKTsNCiAgICB9LA0K DQogICAgLy8NCiAgICAvLyAgZW5hYmxlS2V5Ym9hcmROYXYoKQ0KICAgIC8vDQog ICAgZW5hYmxlS2V5Ym9hcmROYXY6IGZ1bmN0aW9uKCkgew0KICAgICAgICBkb2N1 bWVudC5vYnNlcnZlKCdrZXlkb3duJywgdGhpcy5rZXlib2FyZEFjdGlvbik7IA0K ICAgIH0sDQoNCiAgICAvLw0KICAgIC8vICBkaXNhYmxlS2V5Ym9hcmROYXYoKQ0K ICAgIC8vDQogICAgZGlzYWJsZUtleWJvYXJkTmF2OiBmdW5jdGlvbigpIHsNCiAg ICAgICAgZG9jdW1lbnQuc3RvcE9ic2VydmluZygna2V5ZG93bicsIHRoaXMua2V5 Ym9hcmRBY3Rpb24pOyANCiAgICB9LA0KDQogICAgLy8NCiAgICAvLyAga2V5Ym9h cmRBY3Rpb24oKQ0KICAgIC8vDQogICAga2V5Ym9hcmRBY3Rpb246IGZ1bmN0aW9u KGV2ZW50KSB7DQogICAgICAgIHZhciBrZXljb2RlID0gZXZlbnQua2V5Q29kZTsN Cg0KICAgICAgICB2YXIgZXNjYXBlS2V5Ow0KICAgICAgICBpZiAoZXZlbnQuRE9N X1ZLX0VTQ0FQRSkgeyAgLy8gbW96aWxsYQ0KICAgICAgICAgICAgZXNjYXBlS2V5 ID0gZXZlbnQuRE9NX1ZLX0VTQ0FQRTsNCiAgICAgICAgfSBlbHNlIHsgLy8gaWUN CiAgICAgICAgICAgIGVzY2FwZUtleSA9IDI3Ow0KICAgICAgICB9DQoNCiAgICAg ICAgdmFyIGtleSA9IFN0cmluZy5mcm9tQ2hhckNvZGUoa2V5Y29kZSkudG9Mb3dl ckNhc2UoKTsNCiAgICAgICAgDQogICAgICAgIGlmIChrZXkubWF0Y2goL3h8b3xj LykgfHwgKGtleWNvZGUgPT0gZXNjYXBlS2V5KSl7IC8vIGNsb3NlIGxpZ2h0Ym94 DQogICAgICAgICAgICB0aGlzLmVuZCgpOw0KICAgICAgICB9IGVsc2UgaWYgKChr ZXkgPT0gJ3AnKSB8fCAoa2V5Y29kZSA9PSAzNykpeyAvLyBkaXNwbGF5IHByZXZp b3VzIGltYWdlDQogICAgICAgICAgICBpZiAodGhpcy5hY3RpdmVJbWFnZSAhPSAw KXsNCiAgICAgICAgICAgICAgICB0aGlzLmRpc2FibGVLZXlib2FyZE5hdigpOw0K ICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlSW1hZ2UodGhpcy5hY3RpdmVJbWFn ZSAtIDEpOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9IGVsc2UgaWYgKChrZXkg PT0gJ24nKSB8fCAoa2V5Y29kZSA9PSAzOSkpeyAvLyBkaXNwbGF5IG5leHQgaW1h Z2UNCiAgICAgICAgICAgIGlmICh0aGlzLmFjdGl2ZUltYWdlICE9ICh0aGlzLmlt YWdlQXJyYXkubGVuZ3RoIC0gMSkpew0KICAgICAgICAgICAgICAgIHRoaXMuZGlz YWJsZUtleWJvYXJkTmF2KCk7DQogICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VJ bWFnZSh0aGlzLmFjdGl2ZUltYWdlICsgMSk7DQogICAgICAgICAgICB9DQogICAg ICAgIH0NCiAgICB9LA0KDQogICAgLy8NCiAgICAvLyAgcHJlbG9hZE5laWdoYm9y SW1hZ2VzKCkNCiAgICAvLyAgUHJlbG9hZCBwcmV2aW91cyBhbmQgbmV4dCBpbWFn ZXMuDQogICAgLy8NCiAgICBwcmVsb2FkTmVpZ2hib3JJbWFnZXM6IGZ1bmN0aW9u KCl7DQogICAgICAgIHZhciBwcmVsb2FkTmV4dEltYWdlLCBwcmVsb2FkUHJldklt YWdlOw0KICAgICAgICBpZiAodGhpcy5pbWFnZUFycmF5Lmxlbmd0aCA+IHRoaXMu YWN0aXZlSW1hZ2UgKyAxKXsNCiAgICAgICAgICAgIHByZWxvYWROZXh0SW1hZ2Ug PSBuZXcgSW1hZ2UoKTsNCiAgICAgICAgICAgIHByZWxvYWROZXh0SW1hZ2Uuc3Jj ID0gdGhpcy5pbWFnZUFycmF5W3RoaXMuYWN0aXZlSW1hZ2UgKyAxXVswXTsNCiAg ICAgICAgfQ0KICAgICAgICBpZiAodGhpcy5hY3RpdmVJbWFnZSA+IDApew0KICAg ICAgICAgICAgcHJlbG9hZFByZXZJbWFnZSA9IG5ldyBJbWFnZSgpOw0KICAgICAg ICAgICAgcHJlbG9hZFByZXZJbWFnZS5zcmMgPSB0aGlzLmltYWdlQXJyYXlbdGhp cy5hY3RpdmVJbWFnZSAtIDFdWzBdOw0KICAgICAgICB9DQogICAgDQogICAgfSwN Cg0KICAgIC8vDQogICAgLy8gIGVuZCgpDQogICAgLy8NCiAgICBlbmQ6IGZ1bmN0 aW9uKCkgew0KICAgICAgICB0aGlzLmRpc2FibGVLZXlib2FyZE5hdigpOw0KICAg ICAgICB0aGlzLmxpZ2h0Ym94LmhpZGUoKTsNCiAgICAgICAgbmV3IEVmZmVjdC5G YWRlKHRoaXMub3ZlcmxheSwgeyBkdXJhdGlvbjogdGhpcy5vdmVybGF5RHVyYXRp b24gfSk7DQogICAgICAgICQkKCdzZWxlY3QnLCAnb2JqZWN0JywgJ2VtYmVkJyku ZWFjaChmdW5jdGlvbihub2RlKXsgbm9kZS5zdHlsZS52aXNpYmlsaXR5ID0gJ3Zp c2libGUnIH0pOw0KICAgIH0sDQoNCiAgICAvLw0KICAgIC8vICBnZXRQYWdlU2l6 ZSgpDQogICAgLy8NCiAgICBnZXRQYWdlU2l6ZTogZnVuY3Rpb24oKSB7DQoJICAg ICAgICANCgkgICAgIHZhciB4U2Nyb2xsLCB5U2Nyb2xsOw0KCQkNCgkJaWYgKHdp bmRvdy5pbm5lckhlaWdodCAmJiB3aW5kb3cuc2Nyb2xsTWF4WSkgewkNCgkJCXhT Y3JvbGwgPSB3aW5kb3cuaW5uZXJXaWR0aCArIHdpbmRvdy5zY3JvbGxNYXhYOw0K CQkJeVNjcm9sbCA9IHdpbmRvdy5pbm5lckhlaWdodCArIHdpbmRvdy5zY3JvbGxN YXhZOw0KCQl9IGVsc2UgaWYgKGRvY3VtZW50LmJvZHkuc2Nyb2xsSGVpZ2h0ID4g ZG9jdW1lbnQuYm9keS5vZmZzZXRIZWlnaHQpeyAvLyBhbGwgYnV0IEV4cGxvcmVy IE1hYw0KCQkJeFNjcm9sbCA9IGRvY3VtZW50LmJvZHkuc2Nyb2xsV2lkdGg7DQoJ CQl5U2Nyb2xsID0gZG9jdW1lbnQuYm9keS5zY3JvbGxIZWlnaHQ7DQoJCX0gZWxz ZSB7IC8vIEV4cGxvcmVyIE1hYy4uLndvdWxkIGFsc28gd29yayBpbiBFeHBsb3Jl ciA2IFN0cmljdCwgTW96aWxsYSBhbmQgU2FmYXJpDQoJCQl4U2Nyb2xsID0gZG9j dW1lbnQuYm9keS5vZmZzZXRXaWR0aDsNCgkJCXlTY3JvbGwgPSBkb2N1bWVudC5i b2R5Lm9mZnNldEhlaWdodDsNCgkJfQ0KCQkNCgkJdmFyIHdpbmRvd1dpZHRoLCB3 aW5kb3dIZWlnaHQ7DQoJCQ0KCQlpZiAoc2VsZi5pbm5lckhlaWdodCkgewkvLyBh bGwgZXhjZXB0IEV4cGxvcmVyDQoJCQlpZihkb2N1bWVudC5kb2N1bWVudEVsZW1l bnQuY2xpZW50V2lkdGgpew0KCQkJCXdpbmRvd1dpZHRoID0gZG9jdW1lbnQuZG9j dW1lbnRFbGVtZW50LmNsaWVudFdpZHRoOyANCgkJCX0gZWxzZSB7DQoJCQkJd2lu ZG93V2lkdGggPSBzZWxmLmlubmVyV2lkdGg7DQoJCQl9DQoJCQl3aW5kb3dIZWln aHQgPSBzZWxmLmlubmVySGVpZ2h0Ow0KCQl9IGVsc2UgaWYgKGRvY3VtZW50LmRv Y3VtZW50RWxlbWVudCAmJiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50 SGVpZ2h0KSB7IC8vIEV4cGxvcmVyIDYgU3RyaWN0IE1vZGUNCgkJCXdpbmRvd1dp ZHRoID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoOw0KCQkJ d2luZG93SGVpZ2h0ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhl aWdodDsNCgkJfSBlbHNlIGlmIChkb2N1bWVudC5ib2R5KSB7IC8vIG90aGVyIEV4 cGxvcmVycw0KCQkJd2luZG93V2lkdGggPSBkb2N1bWVudC5ib2R5LmNsaWVudFdp ZHRoOw0KCQkJd2luZG93SGVpZ2h0ID0gZG9jdW1lbnQuYm9keS5jbGllbnRIZWln aHQ7DQoJCX0JDQoJCQ0KCQkvLyBmb3Igc21hbGwgcGFnZXMgd2l0aCB0b3RhbCBo ZWlnaHQgbGVzcyB0aGVuIGhlaWdodCBvZiB0aGUgdmlld3BvcnQNCgkJaWYoeVNj cm9sbCA8IHdpbmRvd0hlaWdodCl7DQoJCQlwYWdlSGVpZ2h0ID0gd2luZG93SGVp Z2h0Ow0KCQl9IGVsc2UgeyANCgkJCXBhZ2VIZWlnaHQgPSB5U2Nyb2xsOw0KCQl9 DQoJDQoJCS8vIGZvciBzbWFsbCBwYWdlcyB3aXRoIHRvdGFsIHdpZHRoIGxlc3Mg dGhlbiB3aWR0aCBvZiB0aGUgdmlld3BvcnQNCgkJaWYoeFNjcm9sbCA8IHdpbmRv d1dpZHRoKXsJDQoJCQlwYWdlV2lkdGggPSB4U2Nyb2xsOwkJDQoJCX0gZWxzZSB7 DQoJCQlwYWdlV2lkdGggPSB3aW5kb3dXaWR0aDsNCgkJfQ0KDQoJCXJldHVybiBb cGFnZVdpZHRoLHBhZ2VIZWlnaHRdOw0KCX0NCn0NCg0KZG9jdW1lbnQub2JzZXJ2 ZSgnZG9tOmxvYWRlZCcsIGZ1bmN0aW9uICgpIHsgbmV3IExpZ2h0Ym94KCk7IH0p Ow== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=scriptaculous.js Content-Type: application/x-javascript; charset=UTF-8; name=scriptaculous.js Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/js/uniformidad/scriptaculous.js?load=effects,builder Content-Transfer-Encoding: Base64 Ly8gc2NyaXB0LmFjdWxvLnVzIHNjcmlwdGFjdWxvdXMuanMgdjEuOC4xLCBUaHUg SmFuIDAzIDIyOjA3OjEyIC0wNTAwIDIwMDgKCi8vIENvcHlyaWdodCAoYykgMjAw NS0yMDA3IFRob21hcyBGdWNocyAoaHR0cDovL3NjcmlwdC5hY3Vsby51cywgaHR0 cDovL21pci5hY3Vsby51cykKLy8gCi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdy YW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZwov LyBhIGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVu dGF0aW9uIGZpbGVzICh0aGUKLy8gIlNvZnR3YXJlIiksIHRvIGRlYWwgaW4gdGhl IFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZwovLyB3aXRo b3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cyB0byB1c2UsIGNvcHksIG1vZGlmeSwg bWVyZ2UsIHB1Ymxpc2gsCi8vIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9v ciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0bwovLyBwZXJtaXQg cGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcyBmdXJuaXNoZWQgdG8gZG8g c28sIHN1YmplY3QgdG8KLy8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgovLyAK Ly8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lv biBub3RpY2Ugc2hhbGwgYmUKLy8gaW5jbHVkZWQgaW4gYWxsIGNvcGllcyBvciBz dWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCi8vCi8vIFRIRSBT T0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9G IEFOWSBLSU5ELAovLyBFWFBSRVNTIE9SIElNUExJRUQsIElOQ0xVRElORyBCVVQg Tk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YKLy8gTUVSQ0hBTlRBQklM SVRZLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQKLy8gTk9O SU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SUyBPUiBD T1BZUklHSFQgSE9MREVSUyBCRQovLyBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFN QUdFUyBPUiBPVEhFUiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OCi8v IE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLCBP VVQgT0YgT1IgSU4gQ09OTkVDVElPTgovLyBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBU SEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4KLy8KLy8g Rm9yIGRldGFpbHMsIHNlZSB0aGUgc2NyaXB0LmFjdWxvLnVzIHdlYiBzaXRlOiBo dHRwOi8vc2NyaXB0LmFjdWxvLnVzLwoKdmFyIFNjcmlwdGFjdWxvdXMgPSB7CiAg VmVyc2lvbjogJzEuOC4xJywKICByZXF1aXJlOiBmdW5jdGlvbihsaWJyYXJ5TmFt ZSkgewogICAgLy8gaW5zZXJ0aW5nIHZpYSBET00gZmFpbHMgaW4gU2FmYXJpIDIu MCwgc28gYnJ1dGUgZm9yY2UgYXBwcm9hY2gKICAgIGRvY3VtZW50LndyaXRlKCc8 c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSInK2xpYnJhcnlOYW1l KyciPjxcL3NjcmlwdD4nKTsKICB9LAogIFJFUVVJUkVEX1BST1RPVFlQRTogJzEu Ni4wJywKICBsb2FkOiBmdW5jdGlvbigpIHsKICAgIGZ1bmN0aW9uIGNvbnZlcnRW ZXJzaW9uU3RyaW5nKHZlcnNpb25TdHJpbmcpewogICAgICB2YXIgciA9IHZlcnNp b25TdHJpbmcuc3BsaXQoJy4nKTsKICAgICAgcmV0dXJuIHBhcnNlSW50KHJbMF0p KjEwMDAwMCArIHBhcnNlSW50KHJbMV0pKjEwMDAgKyBwYXJzZUludChyWzJdKTsK ICAgIH0KIAogICAgaWYoKHR5cGVvZiBQcm90b3R5cGU9PSd1bmRlZmluZWQnKSB8 fCAKICAgICAgICh0eXBlb2YgRWxlbWVudCA9PSAndW5kZWZpbmVkJykgfHwgCiAg ICAgICAodHlwZW9mIEVsZW1lbnQuTWV0aG9kcz09J3VuZGVmaW5lZCcpIHx8CiAg ICAgICAoY29udmVydFZlcnNpb25TdHJpbmcoUHJvdG90eXBlLlZlcnNpb24pIDwg CiAgICAgICAgY29udmVydFZlcnNpb25TdHJpbmcoU2NyaXB0YWN1bG91cy5SRVFV SVJFRF9QUk9UT1RZUEUpKSkKICAgICAgIHRocm93KCJzY3JpcHQuYWN1bG8udXMg cmVxdWlyZXMgdGhlIFByb3RvdHlwZSBKYXZhU2NyaXB0IGZyYW1ld29yayA+PSAi ICsKICAgICAgICBTY3JpcHRhY3Vsb3VzLlJFUVVJUkVEX1BST1RPVFlQRSk7CiAg ICAKICAgICRBKGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQi KSkuZmluZEFsbCggZnVuY3Rpb24ocykgewogICAgICByZXR1cm4gKHMuc3JjICYm IHMuc3JjLm1hdGNoKC9zY3JpcHRhY3Vsb3VzXC5qcyhcPy4qKT8kLykpCiAgICB9 KS5lYWNoKCBmdW5jdGlvbihzKSB7CiAgICAgIHZhciBwYXRoID0gcy5zcmMucmVw bGFjZSgvc2NyaXB0YWN1bG91c1wuanMoXD8uKik/JC8sJycpOwogICAgICB2YXIg aW5jbHVkZXMgPSBzLnNyYy5tYXRjaCgvXD8uKmxvYWQ9KFthLXosXSopLyk7CiAg ICAgIChpbmNsdWRlcyA/IGluY2x1ZGVzWzFdIDogJ2J1aWxkZXIsZWZmZWN0cyxk cmFnZHJvcCxjb250cm9scyxzbGlkZXIsc291bmQnKS5zcGxpdCgnLCcpLmVhY2go CiAgICAgICBmdW5jdGlvbihpbmNsdWRlKSB7IFNjcmlwdGFjdWxvdXMucmVxdWly ZShwYXRoK2luY2x1ZGUrJy5qcycpIH0pOwogICAgfSk7CiAgfQp9CgpTY3JpcHRh Y3Vsb3VzLmxvYWQoKTs= ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=body.css Content-Type: text/css; charset=UTF-8; name=body.css Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/css/body.css Content-Transfer-Encoding: 8bit /* // -------------------------------------------------------------------------------------------------------------------- // Desktop-Level Definitions // -------------------------------------------------------------------------------------------------------------------- */ /*html, body {overflow: auto; border: none;}*/ .bea-portal-body { margin: 0; padding: 0; background-color: #dbdbdb; font-family: Verdana, Arial, Helvetica, sans-serif; font-size:90%; } .bea-portal-body a { display: inline; text-decoration: none; } .bea-portal-body a:hover { text-decoration: underline; } .bea-portal-body-content { } .bea-portal-body-header, .bea-portal-body-footer { margin: 0; padding: 0; color: #272790; } .bea-portal-body-header { font-size: large; font-weight: bold; } .bea-portal-body-footer { font-size: x-small; font-style: italic; } .bea-portal-body-header a, .bea-portal-body-footer a { color: #272790; } ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline Content-Type: image/gif; charset=UTF-8 Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/shells/armada/images/box_azul2.gif Content-Transfer-Encoding: Base64 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 yJ0QBAA7 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline Content-Type: image/gif; charset=UTF-8 Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/shells/armada/images/bg_menupie.gif Content-Transfer-Encoding: Base64 R0lGODlhAQBAANUAAO/v79jY2N3d3dzb2+Xl5ebm5vLy8rq6uuDf4Pb19PX09O3t 7fr7+5WVld7e3fr6+cfHx+vr7H19feDg4P39/uPj493c3Pn4+OTk5Onp6fT089HR 0ejo6Pz7/P/+/6mpqfz8/PDw8Pb39u/v7t/f3vf3+OLi4urr6+Hi4f3+/dvb2/// /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAACwAAAAAAQBAAAAGMUDVakgsGlceSgrUYTwuJVFCoTGEAKNF 5JThFAiYigk1QZAcAstAxVZJGp8DZBNQBQEAOw== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=armadaShell.css Content-Type: text/css; charset=UTF-8; name=armadaShell.css Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/css/armadaShell.css Content-Transfer-Encoding: 8bit /************************************************************ * HEADER FOR HOME & SUBHOME PAGE ************************************************************/ #cabecera_home_img{ float:left; display:inline; width:990px; height:78px; background-image:url(/ArmadaPortal/framework/shells/armada/images/cabecera_home.jpg); background-repeat:no-repeat; margin:0px 0px 5px 0px } #cabecera_home_img h1{margin:8px 0px 0px 8px;} #cabecera_home_img img{ border:none;} .reemplaza_img, #tele_info{ float:left; display:inline;} .reemplaza_img span, #tele_info span{display: none; } #fecha_home_idioma{font-family:Verdana, Arial, Helvetica, sans-serif;float:right;font-size:0.5em;font-weight:normal;color:#025B93;padding:8px 10px 0 0;letter-spacing:0.1em;text-align:right;} #fecha_home_idioma a{color:#023251;text-decoration:none;} #fecha_home_idioma img{margin:0px 5px 0px 5px;} #cabecera_subhome{margin:0;padding:0;} #cabecera_subhome_col1{float:left;display:block;padding:7px;text-align:center;} #cabecera_subhome_col2{float:left;display:block;} #cabecera_subhome_col3{float:left;display:block;width:220px;} #idioma-subhome{height:19px;width:80%;text-align:center;margin:0 auto;} #idioma-subhome a{text-decoration:none;} #idioma-subhome img{padding: 7px 5px;} .cabecera-swf{position:relative; left:0px; top:-1px;} /************************************************************ * CONTACTO, MAPA, ENLACES, ACTUALIDAD MINISTRO y BUSCADOR ************************************************************/ #cabecera_buscador_home{background-image:url(/ArmadaPortal/framework/shells/armada/images/box_azul_home.gif); background-repeat:no-repeat; float:right; width:225px; height:158px;color:#023251; font-weight:bold;margin:0px 0px 3px 0px;font-size:0.5em;} #cabecera_buscador_homex{background-image:url(/ArmadaPortal/framework/shells/armada/images/box_azul_home2.gif); background-repeat:no-repeat; float:right; width:225px; height:158px;color:#023251; font-weight:bold;margin:0px 0px 3px 0px;font-size:0.5em;} #cabecera_buscador_subhome{background-image:url(/ArmadaPortal/framework/shells/armada/images/box_azul.gif); background-repeat:no-repeat;width:225px; height:135px;color:#023251; font-weight:bold;margin:0px 0px 3px 0px;font-size:0.5em;margin: 0 auto;} #cabecera_buscador_subhomex{background-image:url(/ArmadaPortal/framework/shells/armada/images/box_azul2.gif); background-repeat:no-repeat;width:225px; height:135px;color:#023251; font-weight:bold;margin:0px 0px 3px 0px;font-size:0.5em;margin: 0 auto;} #opciones ul{height:65px;width:70%;margin:0;clear:both;margin:0 auto;display:block;text-align:center;} #opciones li{float:left;display:block;margin:5px;text-align:center;} #opciones li a{color:#006699;text-decoration:underline;font-size:1em;} #opciones img{text-decoration:none;} #opcionesx{height:58px;width:90%;display:block;margin:0 auto;} #opcionesx ul{margin:0;padding:0;} #opcionesx li{float:left;margin:5px;text-align:center;} #opcionesx li a{color:#006699;text-decoration:underline;font-size:1em;} #opcionesx img{text-decoration:none;} #margen-banderas{clear: both;margin:25px 0 0 0;} .margen-img-mdef{margin:8px 0px 0px 8px;} #buscador{clear:both;margin:11px 0 0 0;padding:0;} .nombuscador{margin: 8px 10px 4px 32px;font-family:Arial, Helvetica, sans-serif;font-size:1em;} .input-submit-buscador{color:#000;text-decoration:none;background:#d4d0c8;font-size: 1.1em;width:40px;height:19px;margin:0;padding:0;} .input-text-buscador{width:130px;height:15px;font-size:1.1em;margin: 0 0 0 30px;background:#ffffcc;} #actualidad{height:40px;width:95%;margin:0;clear:both;margin:0 auto;display:block;text-align:center;} #actualidad a{color:#990000;text-decoration:underline;} #actualidadx{height:38px;width:95%;margin:0;clear:both;margin:0 auto;display:block;} #actualidadx .mdefimg{height:32px;padding:0 0 3px 20px;display:inline;float:left;} #actualidadx .mdefenlace{height:32px;padding:13px 0 3px 9px;display:inline;float:left;} #actualidadx a{color:#990000;text-decoration:underline;} /************************************************************ * FOOTER ************************************************************/ #armada-footer-menu { font-family: Verdana, Arial, Helvetica, sans-serif; font-weight: normal; font-style: normal; color: #023251; text-decoration: none; background-image:url(/ArmadaPortal/framework/shells/armada/images/bg_menupie.gif); background-repeat:repeat-x; width:990px; height:64px; } #armada-footer-menu ul{ list-style:none; width:770px; text-align:center; margin:0px; left:100px; top:10px; position:relative } #armada-footer-menu ul li{ list-style:none; display:inline; float:inherit } #armada-footer-menu a{font-weight:normal; color:#333333; text-decoration:underline; } #armada-footer-menu p{ width:770px; text-align:center; margin-left:100px;margin-right:100px; margin-top:0px!important;margin-top:10px;} #armada-footer { font-family: Verdana, Arial, Helvetica, sans-serif; font-weight: normal; font-style: normal; color: #023251; text-decoration:none; background-color:#dbdbdb; height:50px; width:990px; margin:auto; } #armada-footer .left { float: left; top: 10px; width: 250px; } #armada-footer .center { float: left; top: 10px; left: 250px; width: 400px; text-align: center; } #armada-footer .right { float: right; top: 0px; width: 300px; text-align: right; } #armada-footer img { border: 0px; margin: 1px 6px; text-decoration:none; } #armada-footer a { color: #023251; text-decoration:underline; } #armada-footer .marron a{ color: maroon; } ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=book.css Content-Type: text/css; charset=UTF-8; name=book.css Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/css/book.css Content-Transfer-Encoding: 8bit /* // -------------------------------------------------------------------------------------------------------------------- // Primary Book // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-book-primary { padding: 0px; margin: 0px; font-size: small; width: 100%; background-color: #f0f0ff; } .bea-portal-book-primary-content { padding: 0px; vertical-align: top; } /* // -------------------------------------------------------------------------------------------------------------------- // Primary Book Page // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-book-primary-page { padding: 8px; } /* // -------------------------------------------------------------------------------------------------------------------- // Standard Book // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-book { margin: 4px; border-style: solid; border-width: 1px; border-color: #333366; } .bea-portal-book-content { /* scrollbar-base-color:#999999;*/ } /* // -------------------------------------------------------------------------------------------------------------------- // Standard Book Page // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-book-page { background-color: #ffffff; padding: 4px; font-size: small; } /* // -------------------------------------------------------------------------------------------------------------------- // Primary Book Root Menu, Multi-Level // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-book-primary-menu { display: none; } .bea-portal-book-primary-menu-root, .bea-portal-book-primary-menu-root-item a, .bea-portal-book-primary-menu-root-item-active a { margin: 0px; padding: 4px; border-style: solid; border-width: 0px 0px 3px 0px; border-color: #9999cc; font-weight: bold; background-color: #ffffff; } .bea-portal-book-primary-menu-root { font-size: small; padding: 4px 0px; } .bea-portal-book-primary-menu-root a { color: #333366; } .bea-portal-book-primary-menu-root a:hover { color: #000033; background-color: #e5e5ff; border-color: #cc6666; text-decoration: none; } .bea-portal-book-primary-menu-root ul { display: inline; list-style: none; padding: 0px; margin: 0px; } .bea-portal-book-primary-menu-root li { display: inline; list-style: none; padding: 0px; margin: 0px; } .bea-portal-book-primary-menu-root-item { } .bea-portal-book-primary-menu-root-item-active a { color: #000033; border-color: #990000; } /* // -------------------------------------------------------------------------------------------------------------------- // Primary Book Nested Menu, Multi-Level // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-book-primary-menu-nested { font-size: x-small; } .bea-portal-book-primary-menu-nested-item a, .bea-portal-book-primary-menu-nested-item-active a { padding: 1px 4px; display: block; text-decoration: none; border-style: solid; border-width: 1px 0px; border-color: #cccce5; width: 150px; } .bea-portal-book-primary-menu-nested-item a:hover, .bea-portal-book-primary-menu-nested-item-active a:hover { color: #000033; background-color: #b2b2e5; border-color: #cccce5; } .bea-portal-book-primary-menu-nested-item a { color: #f0f0ff; background-color: #9999cc; } .bea-portal-book-primary-menu-nested-item-active a { color: #f0f0ff; background-color: #9999cc; } /* // -------------------------------------------------------------------------------------------------------------------- // Standard Book Root Menu, Multi-Level // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-book-menu { display: none; } .bea-portal-book-menu-root, .bea-portal-book-menu-root-item a, .bea-portal-book-menu-root-item-active a { margin: 0px; padding: 4px; font-weight: bold; background-color: #d8d8e5; } .bea-portal-book-menu-root { font-size: x-small; padding: 4px 0px; } .bea-portal-book-menu-root a { color: #333366; } .bea-portal-book-menu-root a:hover { color: #000033; background-color: #ffffff; border-color: #cc6666; text-decoration: none; } .bea-portal-book-menu-root ul { display: inline; list-style: none; padding: 0px; margin: 0px; } .bea-portal-book-menu-root li { display: inline; list-style: none; padding: 0px; margin: 0px; } .bea-portal-book-menu-root-item { } .bea-portal-book-menu-root-item-active a { color: #000033; border-color: #990000; background-color: #ffffff; } /* // -------------------------------------------------------------------------------------------------------------------- // Standard Book Nested Menu, Multi-Level // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-book-menu-nested { font-size: x-small; } .bea-portal-book-menu-nested-item a, .bea-portal-book-menu-nested-item-active a { padding: 1px 4px; display: block; text-decoration: none; border-style: solid; border-width: 1px 0px; border-color: #cccce5; width: 150px; } .bea-portal-book-menu-nested-item a:hover, .bea-portal-book-menu-nested-item-active a:hover { color: #000033; background-color: #b2b2e5; border-color: #cccce5; } .bea-portal-book-menu-nested-item a { color: #f0f0ff; background-color: #9999cc; } .bea-portal-book-menu-nested-item-active a { color: #f0f0ff; background-color: #9999cc; } /* // -------------------------------------------------------------------------------------------------------------------- // Primary Book Menu, Single-Level // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-book-primary-menu-single-container { } .bea-portal-book-primary-menu-single, .bea-portal-book-primary-menu-single a, .bea-portal-book-primary-menu-single span { margin: 0; padding: 0.25em; border-style: solid; border-width: 0 0 0.18em 0; border-color: #9999cc; color: #333366; font-weight: bold; background-color: #ffffff; } .bea-portal-book-primary-menu-single { font-size: small; padding: 0.25em 0; } .bea-portal-book-primary-menu-single a { } .bea-portal-book-primary-menu-single a:hover { color: #000033; background-color: #e5e5ff; border-color: #cc6666; text-decoration: none; } .bea-portal-book-primary-menu-single span { color: #000033; border-color: #990000; } .bea-portal-book-primary-menu-single ul { display: inline; list-style: none; padding: 0; margin: 0; } .bea-portal-book-primary-menu-single li { display: inline; list-style: none; padding: 0; margin: 0; } .bea-portal-book-primary-menu-single-item { } .bea-portal-book-primary-menu-single-item-active { } /* // -------------------------------------------------------------------------------------------------------------------- // Standard Book Menu, Single-Level // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-book-menu-single-container { background-color: #d8d8e5; vertical-align: bottom; } .bea-portal-book-menu-single { margin: 0; padding: 0.25em 0; font-size: x-small; font-weight: bold; } .bea-portal-book-menu-single a, .bea-portal-book-menu-single span { color: #333366; padding: 0.25em; } .bea-portal-book-menu-single a { } .bea-portal-book-menu-single a:hover { color: #660000; text-decoration: none; } .bea-portal-book-menu-single span { color: #000033; background-color: #ffffff; } .bea-portal-book-menu-single ul { display: inline; list-style: none; padding: 0px; margin: 0px; } .bea-portal-book-menu-single li { display: inline; list-style: none; padding: 0px; margin: 0px; } .bea-portal-book-menu-single-item { } .bea-portal-book-menu-single-item-active { } .bea-portal-book-menu-single-item-buttons { background-color: #d8d8e5; } ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=button.css Content-Type: text/css; charset=UTF-8; name=button.css Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/css/button.css Content-Transfer-Encoding: 8bit /* // -------------------------------------------------------------------------------------------------------------------- // Button // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-button, .bea-portal-button-delete, .bea-portal-button-float { } .bea-portal-button img, .bea-portal-button-delete img, .bea-portal-button-float img { vertical-align: top; margin: 1px; border-style: solid; border-width: 1px; border-color: #666699; } .bea-portal-button:hover img, .bea-portal-button-delete:hover img, .bea-portal-button-float:hover img { border-color: #660000; } ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=form.css Content-Type: text/css; charset=UTF-8; name=form.css Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/css/form.css Content-Transfer-Encoding: 8bit form { margin: 0; padding: 0; } input, select, textarea { margin: 0.12em; font-size: small; } fieldset { padding: 0 0 0.5em 0; border:none; } fieldset fieldset legend { font-weight: bold; color: #0A4E7A; padding: 0.16em 0 0 0; } legend { font-size: 1em; font-weight: bold; color: #034671; padding: 0 0 0.5em 0; } ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=layout.css Content-Type: text/css; charset=UTF-8; name=layout.css Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/css/layout.css Content-Transfer-Encoding: 8bit /* // -------------------------------------------------------------------------------------------------------------------- // Layouts // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-layout, .bea-portal-layout-border, .bea-portal-layout-flow { width: 100%; padding: 0; margin: 0; } .bea-portal-layout-grid { width: 100%; padding: 0; margin: 0; display: table; margin-left: auto; margin-right: auto;width: 100%; } .bea-portal-layout-placeholder-container { padding: 0; margin: 0; vertical-align: top; } .bea-portal-layout-placeholder { padding: 0; margin: 0; } .bea-portal-layout-placeholder-container-east, .bea-portal-layout-placeholder-container-west, .bea-portal-layout-placeholder-container-north, .bea-portal-layout-placeholder-container-south, .bea-portal-layout-placeholder-container-center { padding: 0; margin: 0; vertical-align: top; } ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=portlet.css Content-Type: text/css; charset=UTF-8; name=portlet.css Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/css/portlet.css Content-Transfer-Encoding: 8bit /* // -------------------------------------------------------------------------------------------------------------------- // W S R P ( v 0 . 9 2 ) S T A N D A R D P O R T L E T C S S // -------------------------------------------------------------------------------------------------------------------- */ /* F O N T S */ .portlet-font, .portlet-font-dim { font-family: arial, tahoma, sans-serif; font-size: small; } .portlet-font { color: #000000; } .portlet-font-dim { color: #999999; } /* M E S S A G E S */ .portlet-msg-status { font-style: italic; } .portlet-msg-info { font-weight: bold; } .portlet-msg-error { font-weight: bold; color: #ff0000; } .portlet-msg-alert { font-style: italic; font-weight: bold; } .portlet-msg-success { font-weight: bold; color: #009900; } /* S E C T I O N S */ .portlet-section-header { font-size: 120%; font-weight: bold; border-style: dotted; border-width: 1px 0px; color: #333399; padding: 2px 0px; } .portlet-section-body { background-color: #f0f0ff; } .portlet-section-alternate { background-color: #d8d8ff; } .portlet-section-selected { background-color: #9999ff; color: #ffffff; } .portlet-section-subheader { font-weight: bold; color: #6666cc; padding: 2px 0px; } .portlet-section-footer { font-size: 80%; font-weight: bold; } .portlet-section-text { } /* F O R M S */ .portlet-form-label { } .portlet-form-input-field { } .portlet-form-button { } .portlet-icon-label { } .portlet-dlg-icon-label { } .portlet-form-field-label { } .portlet-form-field { } /* M E N U S */ .portlet-menu { } .portlet-menu-item { } .portlet-menu-item-selected { } .portlet-menu-item-hover { } .portlet-menu-item-hover-selected { } .portlet-menu-cascade-item { } .portlet-menu-cascade-item-selected { } .portlet-menu-description { } .portlet-menu-caption { } ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline Content-Type: image/gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/bg_contenido.gif Content-Transfer-Encoding: Base64 R0lGODlh2wACAPcAAOrq6u/v7/T09Pz8/Ovr6+7u7vHx8fn5+e3t7fj4+PDw8Pf3 9+jn6PLy8vPz8+jn5/7///f49/X19vDw8e3u7f38/Onq6f/+/vz7/Ofo6Ono6ejo 6fTz9MLCwurr6+zr6/b19fX29fPy8+/v8PTz8/79/v7+/fHw8f3+/u7v7vHy8vHw 8P3+/ff4+Pj5+fj4+fr5+ufn6PX09err6u3t7unq6vz9/enp6v///ujp6e/w7/z8 +//+/+no6Ofo5+zt7fb39vP08/n6+e3t7Pr6+/v6+vj49/7//v39/PLx8evr6vn4 +Pn4+fX19Ozt7Pf29+zs6/T08/v6+/38/e/v7vPy8vLy8/Pz9PHx8Ozr7Pv7+vX2 9vPz8uvq6/T19O3u7vv8+/Hx8vj5+Pb29/X09Ovs7Orq6+jp6P39/v79/e7t7fLz 8u/u7+np6Orp6vT09fX19ff3+P7+//Dv7/Lx8u3s7O/u7vz7++7t7vn5+Ovq6vT1 9e/w8Pn6+vv7/Pv7++np6fb29vr6+uzs7P39/f7+/ujo6Ofn5////wAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAADbAAIAAAj/AA8JHCgwho8HDwwxiMGA gaGHGza0ydHjTA5AGG9gdGPBAoCPADwQmKGEgEkCWT4MWjnox6AhQxDIpEADj5ov BQqwKZAigM8Ac3SM0KFAwQQsEwwoNaCCjooGDao0cCDCAYkrQaII4CCgq4w9MkBI gLMFRKCzQAIBebIgzoIIERLITfDixQEmB4QcOCCoj6C/RQQRKfKn8B0wGHb8GYBh wIApAyrYQEKIUBpCKAixKFGikOfPRwrhkIMIEQ8IF0qrXs26gwLWsFUTJJjhwcEM GRQ6fGiox0MNGgxpwAioBqAbFmp81APATBcPMwCY/ABlUBmWdZy0lDmTZk6eBajY dvk5IoACPgpWnDgxYYXSJAbCQF1jhUtVBw6CkODalYyAN140IUEIA55l4AJjLKBg BC20kIARCSwhhgt5HOCCXgfA8JeGgv2hxR9SFPYHBn44tsMAhERWASE2VOYiGiyY YAIKnxUCAQSFnHbBBTjE5iMirv3IWkAAOw== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline Content-Type: image/gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/bg_titulo.gif Content-Transfer-Encoding: Base64 R0lGODlhAgAYANUAALrX6tbn8rrX6d3s9M3h79Pm8d3s9dDk8Nzr9L3Z68vh78rh 797s9czi78Ha69jo88fe7cbe7dHk8dbn8djp8sDa69Dj773Y67jW6dPl8bLS59vq 87vX6sng7sPc7ODt9d7s9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAAACABgAAAYpQI0Gg8lIPh+GQbHgcASA xKXi8HgikE6H0LAcMoVJ4EHZbAYIkHqtDgIAOw== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline Content-Type: image/gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/bg_subtitulo.gif Content-Transfer-Encoding: Base64 R0lGODlhAgAUAIAAANLS0unp6SH5BAAAAAAALAAAAAACABQAAAIJjA+pyxB+ojwF ADs= ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline Content-Type: image/gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/linea_gris.gif Content-Transfer-Encoding: Base64 R0lGODlhEQMBAIAAANXV1dvb2yH5BAAAAAAALAAAAAARAwEAAAIbRI6py+0Po5y0 2ouz3rz7D4biSJbmiabqyiYFADs= ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=simpleShell.css Content-Type: text/css; charset=UTF-8; name=simpleShell.css Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/css/simpleShell.css Content-Transfer-Encoding: 8bit .bea-portal-body { margin: 0px; background-color: #dbdbdb; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: small; color: #023251; } img{border:none} h1, h2 ,h3, h4, h5, h6{margin:0; padding:0;} #container { width:990px; margin:auto; height:auto; background-color:#FFFFFF; } #bea-book-container { margin:10px 0 0 0; width: 100%; background-image:url(/ArmadaPortal/framework/skins/armada/images/bg_contenido.gif); background-repeat:repeat-y; } #bea-book-container2 { margin:10px 0 0 0; width: 100%; } #bea-book-index-container { float: left; width: 204px; display:block; } #bea-book-content-container { float: right; width: 78%; margin: 10px 0px 0px 0px; padding: 0px; /*text-align: -moz-left;*/ } #bea-book-content-container-no-left { float: left; width: 985px; margin: 10px 0px 0px 0px; padding: 0px; /*text-align: -moz-left;*/ } /* * LEFT INDEX MENU */ /* #bea-index-menu {display: block;width: 200px;min-height: 450px;height: auto;border-right: 2px #CCCCCC solid;} #bea-index-menu ul li {display:block;width:90%;background-image: url(/ArmadaPortal/framework/skins/armada/images/gr_bullet.gif); background-repeat: no-repeat;list-style: none; display: block;color: #0273B7;font-size: 0.85em; font-weight: normal;padding: 2% 0 4px 6px;margin:2% 3%;} #bea-index-menu ul ul li {background-image: url(/ArmadaPortal/framework/skins/armada/images/gr_bullet2.gif);font-size: 0.88em;} #bea-index-menu ul ul ul li {background-image: url(/ArmadaPortal/framework/skins/armada/images/gr_bullet2.gif);font-size: 0.88em;} #bea-index-menu ul ul ul ul li {background-image: url(/ArmadaPortal/framework/skins/armada/images/gr_bullet2.gif);font-size: 1em;} #bea-index-menu ul ul ul ul ul li {background-image: url(/ArmadaPortal/framework/skins/armada/images/gr_bullet2.gif);font-size: 1em;} #bea-index-menu li a{color:#023251;text-decoration: underline;} #bea-index-menu li a:hover{color:#023251;text-decoration:underline;} #bea-index-menu .title {display: block;background-image: url(/ArmadaPortal/framework/skins/armada/images/bg_titulo.gif);background-repeat: repeat-x;background-color: #DEEDF4;padding: 0px 0px 0px 0px;width: 200px;height: auto; font-size: 0.7em; font-weight: bold; color: #023251;text-transform: uppercase;} #bea-index-menu .title h3 {padding: 5px;font-size:11px;} #bea-index-menu .divider2 {background-image:url(/ArmadaPortal/framework/skins/armada/images/linea_lista.gif);background-repeat:no-repeat;background-position:bottom; height:2px;width:170px;display:block;} */ /*### LEFT INDEX MENU ###*/ #bea-index-menu {width: 204px;} #bea-index-menu .title h3 {padding:1.7ex;font-size:1em;border-bottom:solid 1px #cccccc;} #bea-index-menu a{color: #023251;font-size:0.9em;text-decoration:underline;} #bea-index-menu .subtitle h3 {padding:1.8ex;font-size:0.9em;border-bottom:solid 1px #cccccc;} #bea-index-menu .title {display: block;background-image: url(/ArmadaPortal/framework/skins/armada/images/bg_titulo.gif);background-repeat: repeat-x;background-color: #DEEDF4;padding: 0px 0px 0px 0px;width: 204px;height: auto;font-size:0.79em; font-weight: bold; color: #023251;text-transform: uppercase;} #bea-index-menu .subtitle {display: block;background-image: url(/ArmadaPortal/framework/skins/armada/images/bg_subtitulo.gif);background-repeat: repeat-x;background-color: #D7D7D7;padding: 0px 0px 0px 0px;width: 204px;height: auto;font-size:0.74em; font-weight: bold; color: #023251;text-transform: uppercase;} #bea-index-menu ul{padding:0;margin:10px 5px 25px 20px;} #bea-index-menu ul li{border-bottom:solid 1px #ccc;padding:10px 0;clear:both;} #bea-index-menu ul li li{border-bottom:none;padding:0;} #bea-index-menu li{padding:0;margin:0;color:#a10000;list-style:square;} #bea-index-menu li a{color: #023251;font-size:0.89em;text-decoration:underline;} #bea-index-menu li a:hover{color: #a10000;font-size:0.89em;text-decoration:underline;} #bea-index-menu li li a{color: #023251;font-size:0.88em;text-decoration:underline;} #bea-index-menu li li a:hover{color: #a10000;font-size:0.88em;text-decoration:underline;} #bea-index-menu li li li a{color: #023251;font-size:0.87em;text-decoration:underline;} #bea-index-menu li li li a:hover{color: #a10000;font-size:0.87em;text-decoration:underline;} /*### WEBMAP MENU ###*/ #bea-webmap-menu {border-left:solid 1px #ccc;margin:0 auto;width:60%;font-size:1.2em;background-color:#FFFFFF;} #bea-webmap-menu ul{padding:0px;margin:10px 10px 25px 40px;} #bea-webmap-menu ul li{border-bottom:solid 3px #ccc;padding:10px 0;text-transform:uppercase;font-weight:bold;} #bea-webmap-menu ul li li{border-bottom:none;padding:0;font-weight:normal;text-transform:none;} #bea-webmap-menu li{padding:0px;margin:0px;color:#a10000;list-style:square;font-weight:normal;text-transform:none;} #bea-webmap-menu li a{font-size:1.6em;color: #023251;font-size:0.88em;text-decoration:none;} #bea-webmap-menu li a:hover{font-size:1.6em;color: #a10000;font-size:0.88em;text-decoration:underline;} #bea-webmap-menu li li a{color: #023251;font-size:0.87em;text-decoration:underline;font-weight:bold;} #bea-webmap-menu li li a:hover{color: #a10000;font-size:0.87em;text-decoration:underline;font-weight:bold;} #bea-webmap-menu li li li a{color: #023251;font-size:0.86em;text-decoration:underline;font-weight:normal;} #bea-webmap-menu li li li a:hover{color: #a10000;font-size:0.86em;text-decoration:underline;font-weight:normal;} #bea-webmap-menu li li li li a{color: #023251;font-size:0.85em;text-decoration:underline;font-weight:normal;} #bea-webmap-menu li li li li a:hover{color: #a10000;font-size:0.85em;text-decoration:underline;font-weight:normal;} /* * BREADCRUMBS */ #bea-breadcrumbs { font-size: 0.85em; font-weight: normal; color: #025B93; text-decoration: none; width: 760px; height: auto; padding: 0px 2px 10px 10px; background-image: url(/ArmadaPortal/framework/skins/armada/images/linea_gris.gif); background-repeat: repeat-x; background-position: bottom;} #bea-breadcrumbs a, #bea-breadcrumbs-alt a { font-weight: bold; color: #025B93; text-decoration: underline; } #bea-breadcrumbs .bullet { font-family: Arial, Helvetica, sans-serif; font-size: 1em; font-weight:bold; color: #17026C; text-decoration: none; } ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline Content-Type: image/gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/btn_menu.gif Content-Transfer-Encoding: Base64 R0lGODlhgAAfAMQAAPX5+8Td7Orx9srg7rXU6f3+/vH2+uTv9tLl8eHt9e30+bHS 59bn8fr8/b7Z687i8Nvp8ufw9uny+K7R5/f6/N3r897r9LnX6avP5tnp8+zz+Ofx +Nzq9Pj7/evy9v///ywAAAAAgAAfAAAF/2DTUQBgGIqiSWzrtlssy1FdH3iu73zv /8CgMNf4GI2FQqNhUkgOCUuGgXg8BlhsYMvdOr5gx2VMJhPO6PNizW673/C4fE53 ExCfZIPUfEanVVdZA11eAQ6HYV9lFwRjaWp1kpOUlQsTGBMWSnwmKBIbUAkcHBmm DKZTDKusCAhUrrGyrla0Vre4ubq7vL2+v7sDggEXD0sUSyMlnicKKM7QJ9LT0ybL 19jZ2tvc3d7f4CRQSkrJFOedAOjoHe0dS/BLSfMFR/b3+Pn6+/z9/v8fmJRr14ma wWrb1lFwx7Chw4cQI0pkKGKixYcFADDx5OQJFAsWSIkslaqkSVWsTv+xajWrpcuX MGPKnDmzA4NPHwEJ0lKIiyIxjBqdEaomUpsJSJNOuKQ0KdOmUKNCfepUqlWqDAjg HJWBFs9CPxcFhfQGKoazaNOqXcu2rdu3cN9e2CqFyk5CPRMpCko0zQICZa0KHky4 sGGoDj5t+NM10KCvPcPy7esXsKXLmDMnVuGnFCxcjyGDDQuUryNIqFOrXs26tWvV AU6syAnI1q3QAfDmJQ1msu/fwIMLH14mtmIoFTy31BVadF4vvKNLn069+vQBnmYj 97zqZbDmWZ6LH0++vPnz4x9wBPWxQqqVLF0yB48bvf37+McjKIFiRQRRyZFyEkrx LRfIfFjcRd//ggw26OCDWTDAX38b/JdAFCBVECAEHEJwEnxUwBITMCSWaOKJvWRA QjNOVIjDhTCCJKOGInmYQYclgdiKiCLS5OOPQP7IAR/NrADKfzvAqKSMTAZICo43 fkigjlRWaeWVWGbJSgLKcGSkDWD2oOSYUWCYoYZoPtnhmmy26eabcMYp55wdJrDH hP1p4IEEAvRZIZg2AEHmoEyeieahiCZ6qAUaMqroo5BGCimjEYhAJIsaZKopn3z6 CeinSPow6KiklmrqqaieKoCly0yTwquaxurBrH3WaiuouP53wxC89uprrx5UVJCr r8Ia67GzJmvrsrVGIECu0EYr7bTUQquBdjnpHERNsdwe660HmirbJ63Mlmvuueim qy66CmBLJDPauvoMtyp4a6+syear77789uvvvwD/266l2cabAosq0JsCsvfiG/DD EEcs8azXEnxNvPLSq8HC4HbcMLIThyyyyPTQE09FBKHDjQHwGqQxyCPHLLO/IQAA Ow== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline Content-Type: image/gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/bg_submenu.gif Content-Transfer-Encoding: Base64 R0lGODlhyAAcAMQAAK3S573Z78ff77XX77XT56zQ58/j8rrX8N7r977c763P59fn 98Te787i7rXV7L3X77DT58bf78ng7tHl+M3j98DP29/r963T59bn9wAAAAAAAAAA AAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAADIABwAAAX/4CWOZGmeaKqubOu+cCzP KmDfeK7vfO//wKBwSCwajz6FcslsOp/QqHRKrVqv2Kx2Ky14v+CweEwum8/otHrN brvfZpp8Tq/b73gWZM/v+/+AgYKDhIWGh4iJiouMgwSPkJGSk5SVlpeYmZqbnJ2e n6CXDqOkpaanqKmqq6ytrq+wsbKztKsDt7i5uru8vb6/wMHCw8TFxsfIvwfLzM3O z9DR0tPU1dbX2Nna29zTD9/g4eLj5OXm5+jp6uvs7e7v8OcB8/T19vf4+fr7/P3+ /wADChxIcF+CgwgTKlzIsKHDhxAjSpxIsaLFixgfMtjIsaPHjyBDihxJsqTJkyhT /6pcyXKkgJcwY8qcSbOmzZs4c+rcybOnz59Ab0YYSrSo0aNIkypdyrSp06dQo0qd SnWphKtYs2rdyrWr169gw4odS7as2bNovzZYy7at27dw48qdS7eu3bt48+rdy3eu gb+AAwseTLiw4cOIEytezLix48eQD1OYTLmy5cuYM2vezLmz58+gQ4seTXrzhNOo U6tezbq169ewY8ueTbu27du4X2PYzbu379/AgwsfTry48ePIkytfzry58+fQo0uf Tv35guvYs2vfzr279+/gw4sfT768+fPov1dYz769+/fw48ufT7++/fv48+vfz3++ hf8ABijggAQWaOCBCCao4DKCDDbo4IMQGlhBhBRWaOGFGGaoIYIVIODhhyCGKOKI JJZo4okopqjiiiy26OKLJVYQAgA7 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=simpleMenu.css Content-Type: text/css; charset=UTF-8; name=simpleMenu.css Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/css/simpleMenu.css Content-Transfer-Encoding: 8bit /* ######################################## */ /* MENÚ SUPERIOR */ .ulprincipal{list-style-type: none;margin: 0;padding: 0;} #mainMenu, ul ul#mainMenu ul ul{list-style-type: none;margin: 0;padding: 0;} #mainMenu li{margin: 0;padding: 0;background: #D8D8D8;} /* top level */ #mainMenu{width:100%;font-family: Verdana, Arial, Helvetica, sans-serif;color:#023251;font-size:0.85em;font-weight: bold;border-bottom: 3px #DCC609 solid;height:27px;} #mainMenu li {width:128px;float:left;position: relative;background-color:#e6e6e6;color:red;background-image:url(/ArmadaPortal/framework/skins/armada/images/btn_menu.gif);} #mainMenu li a{color:#023251;} #mainMenu li.cm_noMargin{ margin-right: 0;} /* second level */ #mainMenu ul ul {position: absolute;display: none;padding-top:0px;background: #D8D8D8;} #mainMenu ul ul li{padding:0 0 0 10px;color:#004374;font-weight:bold;clear: left;margin-bottom:1px;background-image:url(/ArmadaPortal/framework/skins/armada/images/bg_submenu.gif);background-repeat:repeat-x;height:25px;width:210px;} #mainMenu ul ul li a{color: #023251; font-weight:bold;} #mainMenu ul ul ul { padding: 0;background-color:#FFFFFF;} #mainMenu a {display: block;font-size: 0.95em;text-decoration: none;height:15px;padding:5px;} #mainMenu a:hover {text-decoration:underline;color:#333;} #mainMenu ul ul a {color:#333333; height: auto;padding: 2px 5px;font-size:0.85em;line-height:1.8em;} #mainMenu ul ul a:hover {text-decoration: underline;} .top_menu_link span { background-color : #fff; border : 1px solid #b50; color : #000; font-weight : normal; padding : 3px; position : absolute; right : 10000px; text-align : center; width : 9em; } a:hover.top_menu_link span, a:focus.top_menu_link span, a:active.top_menu_link span { left : -4.5em; margin : 0 0 0 50%; position : absolute; top : -3em; } a:hover.top_menu_link em, a:focus.top_menu_link em, a:active.top_menu_link em { background-color : #BB5500; display : block; height : 1.7em; left : 12%; overflow : hidden; position : absolute; top : -1.5em; width : 1px; } ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline Content-Type: image/gif; charset=UTF-8 Content-Location: http://www.armada.mde.es/ArmadaPortal/templates/images/gr_linea_azul.gif Content-Transfer-Encoding: Base64 R0lGODlhAgAFAJEAAMbe7U2bzKvP5gNyuCH5BAAAAAAALAAAAAACAAUAAAIFnBch AlAAOw== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline Content-Type: image/jpeg; charset=UTF-8 Content-Location: http://www.armada.mde.es/ArmadaPortal/templates/images/bg_submenu4b.jpg Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAARgAA/+4ADkFkb2Jl AGTAAAAAAf/bAIQABAMDAwMDBAMDBAYEAwQGBwUEBAUHCAYGBwYGCAoICQkJCQgK CgwMDAwMCgwMDQ0MDBERERERFBQUFBQUFBQUFAEEBQUIBwgPCgoPFA4ODhQUFBQU FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU/8AA EQgAQAK8AwERAAIRAQMRAf/EAGgAAQEBAQEAAAAAAAAAAAAAAAACAQMIAQEAAAAA AAAAAAAAAAAAAAAAEAEAAQIEBgEDAgcAAAAAAAAAAhITAVQFFREhkqIDBIExQVJh U7FCsjNDFEQRAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhEDEQA/APfwAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABuANAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAABIFQFQAIrArArArBFQFQFQFQFQFQFQFQFQFQF QFQFQFQFQFQFQFQFQFQFQFQFQFQFQFQFQFQFQFQFQFQFQFQKjPkDawKwVGXIG1AV AVA3DHiDQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASBUCJzBFQFQIrBFQF4E XQLoIvAXgLwF4C8BeAvAXgLwF4C8BeAvAXgLwF4C8BeAvAXgLwF4C8BeAvAXgLwF 4C8BeAvAXgVHy8gLvMHS6BXx5gqM+QLjLkDagbGfMHXCQHHiDcAaAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAACZAAiYOQOcgROYIqBxn5QRdBFQIuzBF2YF4C7MC7MC7 MC7MC7MC7MC7MC7MC7MC7MC7MC7MC7MC7MC7MC7MC7MC7MC7MC7MC7MC7j9wLwF2 X2AuzAuzAuzAu4/cC8DY+WXHkCsfLjxw4/XgC6+INw8nDEHaPk4g64SBUZ8gdfHj xj8g6YfUHTAFYArAGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjGMsfpLgCbU/z BE/F5fzBx/1/Y/MET9T2/wB4ES9L3f3gRL0NQx+nmBxlpuoY/wCb+gEbVqeZ7IAz aNVzMeiAJlo+q5mHRAHPZdXzXZAG7LrGYh0QA2XWMxDogBsusZiHRADZdYzEOiAG y6xmIdEANl1jMQ6IAzZdXzXZADZdXzXZADZdXzXZADZdXzXZADZdXzXZADZdXzXZ ADZdXzXZADZdXzXZADZdXzXZADZdXzXZADZdXzXZADZdXzXZADZdXzXZADZdXzXZ ADZdXzXZADZdXzXZADZdYzMfmEAbsusZiHRADZdYzEOiAGy6xmIdEANl1jMQ6IAb LrGYh0QA2XWMxDogDNl1jM4fEIA3DRtYw/6eyAKw0jVuHP2Y/MIAqOk6phjz9nD4 hAHTadS+uPs8f0ogC46dqPD+7w+MMP4AqOn+9x5+bmDtH0fbww5+YHSPqezhhz8n EFR9bzYY85g7R8Pkww5zBVuWH84Kjhjhhzx4/qCsAaAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAD/2Q== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline Content-Type: image/gif; charset=UTF-8 Content-Location: http://www.armada.mde.es/ArmadaPortal/templates/images/gr_bullet_flecha.gif Content-Transfer-Encoding: Base64 R0lGODlhDAAMALMKAKwgIL8kJOFfX+Vzc9gpKasgIJ0dHeiDg8EkJNgrK////wAA AAAAAAAAAAAAAAAAACH5BAEAAAoALAAAAAAMAAwAAAQmUMlJq0y2JmTPJEhRHYME AgZFCspWGKlEXsGrThuQXdyuEL6gMAIAOw== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline Content-Type: image/jpeg; charset=UTF-8 Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/shells/armada/images/book_conocenos.jpg Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAARgAA/+4ADkFkb2Jl AGTAAAAAAf/bAIQABAMDAwMDBAMDBAYEAwQGBwUEBAUHCAYGBwYGCAoICQkJCQgK CgwMDAwMCgwMDQ0MDBERERERFBQUFBQUFBQUFAEEBQUIBwgPCgoPFA4ODhQUFBQU FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU/8AA EQgAgwIUAwERAAIRAQMRAf/EANIAAAICAwEBAQAAAAAAAAAAAAQFAgMAAQYHCAkB AAIDAQEBAQAAAAAAAAAAAAMEAAECBQYHCBAAAQMCAwQEBQwMBwsNAAAAAQACAxEE ITEFQVESBmFxEweBkdEiFKGxwTJCkiOT0xUWGOFSciREVJTUVdUXCPBigtJDJRkz U2M0dMU2ZoZnCfFzg2Q1ZaUmpsY3KEgRAAIBAgMEBggFAwMEAwAAAAABAhEDIQQF MUFREmGRUtITBnGBodEiMkIUwSMkFRbwYoJyksKx4TNE8aJD/9oADAMBAAIRAxEA PwD79x2KENlQhU6RzcqKiyl91I3ID1fKqqXQofqEzcmt8R8qzzF8oO/V7luTWeI+ VZc2a5EDv1+7bkyLxO/nLLuM0raB38zXzco4feu/nLPiyNq0gZ/N2otyig96/wDn rDvyNKzEGfztqjcobf3r/wCesPMy6Day8ekGfz9q7coLb3knyiG83PggiysOLB39 4utNygtfeSfKIbzs1uX9esIsnB72Dv7zNdblb2nvJflEJ6hc4L+vWEWRhxf9eoHf 3p8wN/BrP3kvyqE9Surcvb7wi0+3xf8AXqKX97PMTfway+Ll+VQpardW6Pt94RaZ ae9+z3FD+9/mRuVrY/FzfLJaWtXk9kfb7wq0q098vZ7ip3fJzMMrSw+Lm+WQZa7f WxR9vvCLR7PGXs9xU7vo5oGVpYfFzfLIM/MGYWxQ6n3gi0Wzxl7PcVnvr5qH4Hp/ xU3y6FLzFmV9MOqXeCLQ7HGXWvcQd33c1jKz0/4qf5dBl5mzS+mHVLvBVoNh/VLr XdI/tw5r/E9O+Kn+XQX5qzSfyw6pd42vL1jtS613TR78ebPxPTvip/l0tLzdm19M OqXeCry5l+1PrXdM/bhzZ+J6d8VP8usfy/OdmHVLvG15by3an1rumx34c1n8D074 qf5dYfnLN0+W31S7xpeWcs/qn1x7pY3vs5qP4Hp/xU/y6WfnfO9m31S75v8Ai+W7 U+uPdLWd8/NLvwSw+Km+WWP5xnXsjb/2y75f8Xy3an1x7paO+Lmc/glh8XN8ssvz 1nV9Fv8A2y75peVsr2p9ce6WDvf5m/FbH4ub5ZZfnrPdi31S75X8Xyvan1x7pL9r 3Mv4rY/FzfLKpefM6vot/wC2XfK/i+V7U+uPdMHe7zLttbH4ub5ZZXnzPdi3/tn3 yn5Yyvan1x7ps97nMv4rY/FzfLLT8956tOS3/tl3yv4xle1Prj3TY73OYznbWI/6 OX5ZT+d56mMLa/xl3yfxjLdqfXHum397fMobVtrYk9Mc3yyv+dZ7s2uqXfKXlnK9 qfXHui+fvp5riJ4bTTzTfFP8snLfnTOSeMbfVLvFvyxlu1Prj3QH9unONSPQtNw/ wU/y6Y/l+cp8tvql3gf8ay3an1rumz36c4AV9B074qf5dU/OGb3Rh1S7xf8AGst2 p9a7pRN3+82wMdI+y00MaKuPY3BwGf8ATosfNubk6KMK+iXeMfxzLr6p9a7opvf3 muYrNjXi102QOxHDBcer98J+z5hz1x05IL1S7wGWgZZL5p9a7oth/ew5hkIbLY6d C81wdBcEYdIuE5PWc8lVRh1S7wFaLle1PrXdD7X96HWbh4Y4aVGXVpW2uiMN/wB8 BK3Nfz8dlqL6+8FjoWUf1y9ndH1p31d4l8wvtbHRpW0D2Oa2ejmnaPvnDwrlXPOt 23hOMU/9Mu8H/jWX7Uutd0Bn7++8O3q6bSdNYwO4S4wXJbxDZUXFEzb833Z/KoN+ iXeMPy3ZW+XWu6RH7wvOlKvsNLHVFcfnC0/NWZ3Rh1PvE/juX4z613SJ/eJ5xGHo GmfFXH5wrXmjNv6YdUu8U/L2W7U+td0gf3iudcfvDS/irj84VrzRmsaxh1S7xP49 l+1LrXdNH94vnXMWGlUGfwNx+cKLzRmn9MKeiXeJ/Hsv2pda7p4vzx+/X3q8uay7 TtM0bl2WJgJLp7a+c7OnuL1g9Re107N3Mxa550r0f/J5nP5O3YucsW/XT3HL/wBo Z3z/AKC5X/JNQ/WC6ilU5rgRd/xDe+gCvzFyv+Sah+sFbZPDIH/iH99VMNB5Wr/k mofrBUmVyGf2h/fT+guVvyTUP1gpUnKqmH/iH99QNPmLlb8k1D9YK0Vymv7RDvrA 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 f//Z ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline Content-Type: image/jpeg Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/icons/ico_archivo.jpg Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAARgAA/+4ADkFkb2Jl AGTAAAAAAf/bAIQABAMDAwMDBAMDBAYEAwQGBwUEBAUHCAYGBwYGCAoICQkJCQgK CgwMDAwMCgwMDQ0MDBERERERFBQUFBQUFBQUFAEEBQUIBwgPCgoPFA4ODhQUFBQU FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU/8AA EQgAKwAhAwERAAIRAQMRAf/EAIQAAAEFAQEAAAAAAAAAAAAAAAACBAUHCAMGAQEA AgMBAAAAAAAAAAAAAAAAAQMCBQYEEAACAQQABAQFBQEAAAAAAAABAgMAEQQFITES BkEiEwdRYTIjFHGBwULCQxEAAgEBBgYCAwAAAAAAAAAAAAEDAhExUWFxBSFBkRIi UjIE0eFi/9oADAMBAAIRAxEAPwDf1AVn3X7lxdv9wZeoZ+k4/pX5f9Ikk/1W5+v9 ByRqrE0f2txUUjow/Ay1HuvDsdtga5ZLnLyYcccuPquF/mrJNudNDqwTKotzVdap xaRbNaI6EKATIiyxvGxIVwVJVijWItwZSCD8waAyf7x+1/dUWzabWvl7PPkjUa7N eT1pdnBiw+eCUBQfz4o0uluGTClx99GEnU7PuVMdkUvx5PDXLPlpdyO+bVXKnND8 udOKyzy58uN8B7Qe3Xdu12uq280ckGVL6Ww17yeVMPDDHp2E6sDdnKn8GG33XUyP 9lCJPbvO5UUpwx8XdU8Mlnjhrdr9i2qutqeXgr6Vj/Tywxvuv2Lqdcmp1uLrUyMj LXGjEf5WbM2Rkykc3kkfizE8T4fAAcK4k74eUB4eTvbZ4E2Rh7TUZgzIMnJjBxdb ssqF8YTv+NIsuNBkRt1wGNns9w/UCq2tV8dMbXk2iiSqRPxSa1I7b914m8wJNfsN LsmifzRyLp9yssMq/RNE4wbpIh8yOvmU8RVvZD7PoVd8/quo27d7hj0GGUOu2ebt cm0m02sul3AyMucC3XIRg8h9MafSiWVeAqOyH2fQd8/quv6JHM9wNq+Hkpp9HsJ9 w8bR62GXVbSGF8qQdMXqyT48EaRhyDIzypZATesK6YkvFtvQzjqlb8qUlqWDXnPS NjgwOS0iK7sSSzKCeJ4C5vyHCpIEPhYiLf0UYk2ChFuSf2paLBMWHjOvmhjDi17I pBv4g25GgsFtr8fpPQio/wDV1UAqfAgix4GlosHdQSFAcXjZzx8RY/p8KlEPiEcT JYA8uXyvUt2kJWHasTIKAKAKAKAKAKA//9k= ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=templates.css Content-Type: text/css; charset=UTF-8; name=templates.css Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/css/templates.css Content-Transfer-Encoding: 8bit #template {font-size:0.85em; font-weight:normal; text-align:justify; color:#023251; margin:0.93em 0.62em 0 0;background:#FFFFFF;} .marco-menu-sup{list-style-type: none;margin: 0;padding: 0;} /* ###### TABLAS GENERALES ###### */ .template table{background-color:#FFFFFF;font-family:Arial, Helvetica, sans-serif;font-size:1em;margin:2em auto;} .template th, td{padding:0.2em 0.4em;} .template table caption{font-size:1.1em;text-transform:uppercase;font-weight:bold;font-style:oblique;text-align:center;} .template table thead tr th{background-color:#006699;font-weight:bold;color:#eee;text-transform:uppercase;} .template table thead tr th abbr{color:#ffffff;} .template table tbody tr th{background-color:#0099CC;font-weight:bold;color:#eee;} .template table tbody tr td{background-color:#eee;text-align:left;} .template table tfoot tr td{padding-top:1em;font-size:1em;font-style:oblique;line-height:1em;} /* ###### TABLAS ATAJOS */ #atajo {width:26%;float:left;} #atajo table{background-color:#ffffff;font-family:Arial, Helvetica, sans-serif;font-size:0.9em;font-weight:bold;margin:0 auto;} #atajo th, td{padding:0.2em 0.4em;} #atajo table caption{font-size:0.9em;text-transform:uppercase;font-weight:bold;font-style:oblique;text-align:center;} #atajo table thead tr th{background-color:#006699;font-weight:bold;color:#fff;text-transform:uppercase;} #atajo table tbody tr th{background-color:#0099CC;font-weight:bold;color:#fff;} #atajo table tbody tr td{background-color:#eee;text-align:left;} #atajo table tfoot tr td{padding-top:1em;font-size:0.9em;font-style:oblique;line-height:1em;} #atajo a {color:#016293;text-decoration:underline;font-size:0.9em;} /*############# FIN ATAJOS */ /* ### GUIA ACCESIBILIDAD */ kbd{background:#e7eff7;border-top: solid 1px #023251;border-bottom: solid 2px #023251;border-right: solid 2px #023251;border-left: solid 2px #023251;padding:0 0.31em;} /*############# GUIA ACCESIBILIDAD */ /* ### ENLACES ### */ #enlaces{width:100%;font-size:0.96em;font-weight: bold;} #enlaces ul{margin:0;padding-top: 10px;list-style-type: none;} #enlaces li {display:block;float:left;width:25%;} #enlaces ul ul{display: block;float:left;padding-top:0px;padding:0;margin:0;} /*#### FIN ENLACES ### */ /* ######### SEÑALIZAR CUANDO SECCION ACTUAL */ .linkActual{text-decoration: none;font-weight: bold;color:#023251;} /*############ FIN SEÑALIZAR */ .template h4 {text-transform:uppercase;font-size:1.1em; font-weight:bold; color: #023251;margin: 5px 0px 5px 0px;padding: 0px 0px 9px 0px;width: 99%;height: auto; background-image: url(/ArmadaPortal/templates/images/gr_linea_azul.gif); background-repeat:repeat-x; background-position:bottom} .template ul {margin: 5px 10px 5px 25px;} .template .armadaTitle {background-image:url(/ArmadaPortal/templates/images/gr_escudopeq.gif); background-repeat:no-repeat; margin: 10px 5px 0px 0px; height:28px; left:10px; padding:32px 0px 0px 30px;width:90%; height:24px; text-indent:9px;font-size:0.8em;font-weight:bold;color:#023251;text-transform:uppercase;} .template .leftcol {float:left;display:inline;margin:10px;background-image:url(/ArmadaPortal/templates/images/bg_boxfoto5.gif);background-repeat:no-repeat;width:152px; height:152px;top:10px; left:10px;} .template .leftcolwhite {float:left; display:inline; margin:10px;background-image:url(/ArmadaPortal/templates/images/bg_boxfoto5b.gif);background-repeat:no-repeat;width:152px; height:152px;top:10px; left:10px;} .template .leftcol img {margin:9px;} .template .rightcol {float:left;width:560px;} .template .rightcol a{color:#025B93;text-decoration:none; font-size:1em;} .template .rightcol a:hover{color:#025B93; font-weight:normal; text-decoration:underline;font-size:1em;} .template .caption {font-size: 0.85em;color: #464c50;text-align: left;} .template .index {margin:10px 0px 0px 4px; } .template .index .indexTitle {font-size:1.1em; font-weight:bold;background-image:none;text-transform:none;} .template .index ul {width:85%; padding:15px 0px 30px 0px; background-image:url(/ArmadaPortal/templates/images/bg_submenu4b.jpg);background-repeat:no-repeat;background-position:bottom;height:auto;} .template .index ul li {background-image:url(/ArmadaPortal/templates/images/gr_bullet_flecha.gif);background-repeat:no-repeat;display:block;margin:2px 0px 2px 0px;padding:0;width:80%;} .template .index ul li a {display:block;color:#023251; text-decoration:underline; font-size:1.03em; font-weight:normal; margin-left:20px;} .template .index ul li a:hover{display:block;text-decoration:underline;font-size:1.03em;} .template .index ul li .linkActual{font-weight: bold;margin-left:20px;text-decoration:none;font-size:1.06em;color: #023251;} #iframe a{color:#016293;text-decoration:underline;font-size:1.01em;} #iframe object{z-index:2000;} .menumapweb{background-color: #eeeeee;} .iframebusc{padding:15px 0 0 0;} /*-------------------------------------------------------------------*/ .justificado{text-align:justify;padding-bottom:30px;padding-top:10px;} /* #general #central ul{width:692px; list-style:none; left:0px; position:relative;} #general #central li{ float:left; display:inline; background-image:url(../images/gr_lineavertical.gif); background-repeat:no-repeat; background-position:right; padding-right:3px; margin-bottom:10px; margin-top:10px;text-align:center; width:170px;height:105px;} */ #central{width:777px; height:auto;top:0px;position:relative;display:inline; float:left; left:5px;} #central li .enlaces{font-size:0.85em; font-weight:bold; color:#023251; text-decoration:none; text-align:center} #central li .enlaces a{color:#023251; text-decoration:none;} #central li .enlaces a:hover{color:#023251; text-decoration:underline;} #central li img{ border:none} #central h4{font-size:1.1em; font-weight:bold; color:#023251; left:15px; top:5px; position:relative; float:left} /*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/ /*@@@@@@@@ PLANTILLAS */ /*##########################*/ /*##### MAQUETACIÓN DE CAPAS */ #r100{width:100%;} #r95{width:95%;} #r90{width:90%;} #r85{width:85%;} #r80{width:80%;} #r75{width:75%;} #r70{width:70%;} #r65{width:65%;} #r60{width:60%;} #r55{width:55%;} #r50{width:50%;} #r45{width:45%;} #r40{width:40%;} #r35{width:35%;} #r30{width:30%;} #r29{width:29%;} #r25{width:25%;} #r20{width:20%;} #r15{width:15%;} #r10{width:10%;} #r5{width:5%;} .r100{width:100%;} .r95{width:95%;} .r90{width:90%;} .r85{width:85%;} .r80{width:80%;} .r75{width:75%;} .r70{width:70%;} .r65{width:65%;} .r60{width:60%;} .r55{width:55%;} .r50{width:50%;} .r45{width:45%;} .r40{width:40%;} .r35{width:35%;} .r30{width:30%;} .r29{width:29%;} .r25{width:25%;} .r20{width:20%;} .r15{width:15%;} .r10{width:10%;} .r5{width:5%;} .rcenter{margin:0 auto;} .rleft{float:left;} .rright{float:right;} .rclear{clear:both;} .mtop{margin:8px 0px 0px 2px;} .skip {position:absolute;left:0px;top:-500px;width:1px;height:1px;overflow:hidden;} .marginbotton{margin-bottom:2px;} .margintop{padding-top:10px;} .margintop30{margin-top:30px;} .contentHidden{display:none;} .letteraccess{text-decoration:underline;} .normalfont{font-weight: normal;} .margencero{margin:0;} .paddingcero{padding:0;} .margen-padding-cero{margin: 0;padding: 0;} .marginright{margin-right: 5%;} .bloque{display: block;} .overflowhidden{overflow: hidden;} .bordercero{border:0;} .sinborder{border:none;} .textoizq{text-align:left;} .textocenter{text-align:center;} .cursorhand{cursor:url(/ArmadaPortal/framework/skins/armada/images/HAND.CUR), pointer; } .colorred{color:#FF0000;} .colorblue{color:#258aef;} .colorgreen{color:#009900;} .boldweight{font-weight:bold;} .with200{width: 200px;} .textoerror-content{font-size:1.12em;font-weight:bold;color:#012a45;} .textoerror-contenthome{font-size:1em;color:#012a45;} .listdisc{list-style: disc;} .listcircle{list-style: circle;} .listsquare{list-style: square;} /*################################*/ /*####### FORMULARIOS BÚSQUEDAS */ .margenContenidos{ padding: 0 0.5em 0 0.5em; } /*################################*/ /*####### NUEVOCUADRO PARA METER INDFORMACIONES */ #cuadroInfo{ background-color: #efefef; border: 1px solid #575656; margin: 1em 0em 0em 1em; } .info { color: #ffffff; background-color: #575656; font-weight: bold; margin: 0 auto; padding: 0.2em 0em 0.2em 0.5em; } /*##########################*/ /*####### PÁGINAS SIN MENU ######*/ .fondotitamarillo{background-color:#F7E86B;padding-left:0.5em;} .fondotitazul{background-color:#CCE1EB;padding-left:0.5em;} /*####### FIN PÁGINAS SIN MENU ######*/ /*####### PÁGINAS COMUNES ######*/ .margentxt{margin:30px 0px 0px 8px;} .fondo-titleaz{background-color:#CCE1EB;padding-left:0.5em;} .fondo-titleam{background-color:#F7E86B;padding-left:0.5em;} .margeniz-bloque{width:45%;float:left;margin:0 0 0 1em;} .book_conocenos{background-image: url('/ArmadaPortal/framework/shells/armada/images/book_conocenos.jpg');background-repeat:no-repeat} .book_buques{background-image: url('/ArmadaPortal/framework/shells/armada/images/book_buques.jpg');background-repeat:no-repeat} .book_personal{background-image: url('/ArmadaPortal/framework/shells/armada/images/book_personal.jpg');background-repeat:no-repeat} .book_ciencia{background-image: url('/ArmadaPortal/framework/shells/armada/images/book_ciencia.jpg');background-repeat:no-repeat} .book_documentacion{background-image: url('/ArmadaPortal/framework/shells/armada/images/book_documentacion.jpg');background-repeat:no-repeat} .book_servicios{background-image: url('/ArmadaPortal/framework/shells/armada/images/book_servicios.jpg');background-repeat:no-repeat} .book_multimedia{background-image: url('/ArmadaPortal/framework/shells/armada/images/book_multimedia.jpg');background-repeat:no-repeat} /*####### fin PÁGINAS COMUNES ######*/ /*####### SUBHOME APARTADOS ######*/ .subhome{border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;margin:1.3em 1.1em 0em 0.5em;padding:0.3em 1.2em 0.3em 1.2em;font-size:0.9em;text-align:left;} .subhome .title-cuadro{font-size:1.1em;font-weight:bold;padding-bottom:0.6em;} .subhome .title-cuadro a{line-height:1.3em;;color:#016293;text-decoration:underline;font-size:0.85em;} .subhome .title-section{font-size:0.8em;font-weight:bold;} .subhome .title-sectionPral{font-size:1em;font-weight:bold;} .subhome .enlaces-noticias{margin:1.2em 0em 1em 6em;} .subhome .enlaces-noticias a{color:#003f5f;font-size:0.8em;font-weight:bold;} .subhome .subtitle-cuadro{font-size:0.81em;font-weight:bold;} .subhome .fecha{color:#023251;font-weight:bold;} .subhome .fechaPral{color:#023251;font-weight:bold;font-size:1.05em;} .subhome .entradillaPral{font-weight:normal;font-size:1.05em;} .subhome a{color:#016293;text-decoration:underline;font-size:0.9em;} .subhome .listado{margin:0.3em 0.3em 0.8em 0em;} .subhome ul,li{margin:0;padding:0;} .subhome-foto{border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;padding:0em 0.6em 0em 0.6em;} .subhome .banner{font-size:0.9em;text-align:left;} .subhome .banner a{font-size:0.9em;font-weight:bold;} /*###### FIN SUBHOME APARTADOS #####*/ /*###### MUSEO HOME #####*/ #home-museo-naval{padding-bottom:50px;} .fondo-museo-home{background-image: url(/ArmadaPortal/framework/skins/armada/images/museo/fondo_museo.jpg); background-repeat:no-repeat;background-position:right;} .title-museo-aviso{font-family:Arial, Helvetica,sans-serif;font-size:1.6em;font-weight:bold;color:#ff9c00;padding-left:1em;margin:0px;} .title-museo-publi{font-family:Arial, Helvetica,sans-serif;font-size:1.6em;font-weight:bold;color:#ff9c00;margin-top:2em;} .fondo-cuadro-aviso{color:#003b79;;background-color: #e8edf3;font-sizr:font-family:Arial, Helvetica,sans-serif;;font-size:0.92em;font-weight:bold;padding:1.2em 1.4em;line-height:15px;} .fecha-museo-home{font-family:Arial, Helvetica, sans-serif;font-size:1em;color:#676767;font-weight:bold;} .title-museo-section{font-size:1.15em;font-weight:bold;color:#ff9c00;padding-left:2.4em;} .entradilla-museo-home{font-family:Arial, Helvetica, sans-serif;font-size:1.05em;font-weight:bold;} .entradilla-museo-home a, .entradilla-museo-home a:link, .entradilla-museo-home a:visited{color:#003052;text-decoration:underline;} .entradilla-museo-home a:hover{text-decoration:underline;} #destacadosmuseo{background:#003b79;font-family:font-family:Arial, Helvetica,sans-serif;width:95%;} #destacadosmuseo .title-museo-destacado-entrada{font-size:1.2em;font-weight:bold;color:#00d8dd;padding:2em 2em 0 1em;} #destacadosmuseo .title-museo-destacado{font-size:1.2em;font-weight:bold;color:#00d8dd;padding:0.5em 2em 0 1em;} #destacadosmuseo .texto-museo-destacado{font-size:1em;color:#ffffff;padding:0 2em 1em 1em;} #destacadosmuseo .linkdescarga {font-size:1em;padding:1.2em 2em 1em 1em;font-weight:bold;} #destacadosmuseo .linkdescarga a, .linkdescarga a:link, .linkdescarga a:visited{font-size:1em;color:#ee9608;text-decoration:underline;} #destacadosmuseo img{padding:0.3em 0.3em 1em 0.35em;} #destacadosmuseo .title-museo-destacado-apartados{font-size:1.2em;font-weight:bold;color:#ffffff;padding:1em 2em 0 1em;} #destacadosmuseo .hr-title-apartados{border-bottom:2px solid #92f1ff;} #destacadosmuseo .linkapartados {font-size:1em;padding:0.3em 2em 0.3em 1em;font-weight:bold;} #destacadosmuseo .linkapartados a, .linkapartados a:link, .linkapartados a:visited{font-size:1em;color:#92f1ff;text-decoration:underline;} #colecciones{font-family:font-family:Arial, Helvetica,sans-serif;} #colecciones .title-museo-colecciones{font-size:1.2em;font-weight:bold;color:#003b79;padding:1em 2em 0 0;text-align:left;line-height: 12px;} /*###### FIN MUSEO HOME #####*/ /*###### UNIFORMIDAD , CONDECORACIONES #####*/ .med-baj-titulo{margin-left:-45px; font-weight:bold; font-size:small;} .med-h3{color:#990000; text-align:center} .med-baja-titulo{font-size:xx-small; font-weight:lighter;} .med-table{margin-left:0;} .centro-text{text-align:center} .uniform-div-izq{width:60%; padding:25px 5px 0px 0px;text-align:justify;float:left;height:auto;} .uniform-div-der{float:left; text-align:center; width:30%;} .medio-arriba-top{padding-top:15px;} /*###### FIN UNIFORMIDAD , CONDECORACIONES #####*/ /*##### TYPE GENERAL 1,2,3,4,5,6,7,8 */ #template-left{width:65%;padding:25px 25px 0px 0px;text-align:justify;float:left;height:auto;} #template-right{width:30%;padding:25px 0px 0px 0px;margin:auto;float:left;height:auto;} #template-right-general2{width:30%;padding:25px 20px 0px 0px;margin:auto;float:left;height:auto;} #template-right-general5{width:40%;float:left;padding-left:35px;} #template-right-general6{width:40%;float:left;padding-right:35px;} #template-center{width:95%;padding:25px 0px 0px 0px;text-align:justify;height:auto;} .template-clear{float:none;clear:both} #template-include-cuerpo{line-height: 20px;font-size: 1em;margin-top:0px;} #template-include-cuerpo a{color:#016293;text-decoration:underline;font-size:0.98em;} #template-include-cuerpo a:hover{text-decoration:underline;color:#016293;font-size:0.98em;} #template-include-cuerpo .fecha{color:#0671B7;font-weight:bold;font-size:0.99em;text-align:right;} #template-include-titulo{line-height: 20px;font-size: 1em;margin-top:0px;} #template-include-titulo a{color:#016293;text-decoration:underline;font-size:0.98em;} #template-include-titulo a:hover{text-decoration:underline;color:#016293;font-size:0.98em;} #template-include-cuerpo a.enlace-des{color:#016293;text-decoration:underline;font-size:0.98em;} #template-include-cuerpo a.enlace-des:hover{text-decoration:underline;font-size:0.98em;} #template-include-cuerpo .palabra-des {color:#996600;cursor:auto;font-size:0.99em;} .template-hr{clear:both;border-bottom: 1px dotted #ccc;margin:15px 0 30px 0;} .template-hr a{float:right;text-decoration:underline;vertical-align:top;color:#016293;} .template-hr a:hover{text-decoration:underline;} #template-hr-foot{clear:both;border-bottom: 1px dotted #ccc;margin:15px 0 30px 0;} #template-hr-foot a{float:right;text-decoration:underline;vertical-align:top;color:#016293;} #template-hr-foot a:hover{text-decoration:underline;} #template-foot{width:95%;margin:auto;text-align:center;height:20px;} #template-foot a{text-align:center;text-decoration:underline;vertical-align:top;color:#016293;} #template-foot a:hover{text-decoration:underline;} /*##### NUEVO not-list */ .not-list{border-bottom:1px dotted #998c13;padding:1em 0;} .bloqueCatalogo{width:310px;float:left;margin: 0 15px;} .catalogoTexto{margin:0 10px;font-size: 1em;text-align: left;} .marcoFotoCat{border:solid 1px #ccc;padding:0.31em;} .museoMarco{border-top:solid 1px #ccc;border-bottom:solid 2px #ccc;margin:0.8em 0 0.5em 0.5em;text-align:left;} .museoMarco2{border-bottom:solid 2px #ccc;margin:0.3em 0 0.5em 0.5em;text-align:left;} .marco-buscador-artic{border-top:solid 1px #ccc;border-bottom:solid 1px #ccc;margin:0.8em 0 0.5em 0.5em;text-align:left;border-top: solid 1px #343434;border-bottom: solid 1px #343434;border-right: solid 1px #343434;border-left: solid 1px #343434;} .titulo-buscador-artic{color:#343434;font-weight:bold;padding:0.5em 0 0 0;} .museoListaBusca{border-bottom:solid 1px #ccc;width:95%;margin:0 auto;padding:0.2em;} .marcaResulBuscaCat{border-bottom:dotted 1px #ccc; width:95%;margin:0 auto;padding:0.4em;background:#eeeeee;} .museolistadoPag{float:left; width:30%;text-align:left;} .museocatList{display:block;margin: 0 auto;margin: 0.9em 0.5em 0 0.9em;} .input-text-class{margin:1px;padding:2px 4px;color:#023251;text-decoration:none;border:1px solid #e5d26a;background:#ffffcc;font-size: 1em;line-height: 15px;} .input-submit-class{color:#000;text-decoration:none;border:1px solid #000;background:#D4D0C8;font-size: 1em;line-height: 15px;height: 20px;} .input-select-class{margin:1px;padding:2px 4px;color:#023251;text-decoration:none;border:1px solid #e5d26a;background:#ffffcc;font-size: 1em;line-height: 15px;} #datosBusqueda{width:65%;float:left;} .museoNoResult{width: 40%;border:solid 1px #cccccc;background:#eeeeee;margin: 0 auto;padding: 1.56em;text-align: center;} .museoResult{padding: 5px 0 0 0;} .campo_form{margin: 6px 5px 6px 0;clear:both;} .colorresultado{color:#FF0000;font-weight:bold;} .colorinfo{color:#330000;} .colortxtbusc{color:#003300;} .sinresultado{color:#330000;font-weight:bold;} .sinfotoarchivo{border:solid 1px #ccc;padding:5px;} /*##### FIN NUEVO not-list */ /*##### NUEVO marco noticia detalle */ .contentNoticia{height: 2.1em;text-align: left;margin-bottom: 1.4em;padding: 0;} .margenirlistado{margin:0 2em;} /* ################ /* /* ###### GOOGLE MAPS */ input{font-size: 1em;border:solid 1px #666;} .mapactividades{border:solid 1px #ccc;background-color: #eee;padding:0.9em;margin:0 auto;} .containgooglemap{width:710px;height: 390px;border:solid 7px #ccc;float:left;} .listmapactividades{width:25%;text-align: left;list-style: square;font-size: 1em;color:#666;font-weight:normal;margin:0 0.5em;float:left;background-color: #fff;} .actdestacadas{border:solid 1px #ccc;text-align: center;margin:0;padding-top:0.31em;} .menuNavegacion{text-align: left;height:390px;overflow:auto;margin:0; padding:0;} #map a{color:#016293;text-decoration:underline;font-size:1em;} #menuNav li{margin:0;padding:0.43em 0;} #menuNav a{color:#023251; font-size:0.98em;font-weight:normal;position:relative;text-decoration:underline;} #maplistact {margin:0;padding:0;width:100%} #maplistact a{color:#016293;text-decoration:underline;font-size:1em;} a:link.boton-input-gris, a:visited.boton-input-gris, .a:active.boton-input-gris{padding:3px 3px;color:#023251;background:#CCCCCC;text-decoration:underline;border:1px solid #CCCCCC;margin:0.3em 0;font-size: 0.98em;float: left;position:relative;top:5px;line-height:1em;text-transform:none;font-weight:normal;} a:hover.boton-input-gris{background:#FFFFFF;border-color:#CCCCCC;text-decoration:underline;font-size: 0.98em;} .google-padding-grados{padding: 0.55em 0;} .google-botones-grados{margin: 0 auto;text-align: center;} /**** TABLA DE INFO MAPA ******/ #cuadroInfoGM{width:390px;height:200px;background-color:#EFEFEF;font-family:Verdana, Arial, Helvetica, sans-serif;font-size:0.75em;border:1px solid #999999;} .marcotitInfoGM{background:#575656;width:100%;height:20px;color:#FFFFFF;font-weight:bold;} .titInfoGM{float:left;padding:3px;} .imgInfo{float:left;border:0;padding:3px;} .hrTInfoGM{height:1px;color:#999999;margin:0;padding:0;width:370px;} .marcotextInfoGM{padding:10px;} .filaInfoGM{padding:0;margin:0;} .closeW{float:right;border:0;padding:3px;} .finmarcoInfoGM{height:10px;background:#999999;} /* ########3 FIN GOOGLE MAPS */ /* ######### MENSAJES NAVIDEÑOS */ #marcoMensaje{width:50%;} #marcoMensaje fieldset{border: 1px solid #F10D0E;padding:0.5em 1em;} .t3{font-size: 1.1em; font-weight: bold; color: #F10D0E;} #mensaje{clear: both;padding-top: 0.5em;padding-left: 0.9em;} .obligatorio{color: #333333;font-size: 0.9em;;font-weight:bold;} .campo_form{float:left} .campo_formn{float:left;padding-top:0.2em;} .campo_form label{vertical-align: top;padding-bottom:0.3em;display:block;} .campo_formn label{vertical-align: top;padding-bottom:0.3em;display:block;} .campo_form input{width:18em;} .campo_formn input{width:20.6em;} .campo_text{margin:0;padding:1.2em 0 0.8em 0;color: #FFFFFF;font-size: 1.1em;font-weight:bold;} .claveCaptcha{color: #145798;font-size: 0.9em;font-weight:bold;width: 246px;} #submit{padding:0px 0px 0px 135px;} .subrayado{text-decoration:underline;} .imagenCaptcha{padding:0.2em 0.2em 0.2em 0.6em;} .imagenCaptcha a{color:#016293;text-decoration:underline;font-size:0.98em;} #backForm{width:330px;padding:12px;margin:0 auto;border-left:2px solid #016293;border-top:2px solid #016293;border-right:2px solid #016293;border-bottom:2px solid #016293;} a:link.boton-input-mens, a:visited.boton-input-mens, .a:active.boton-input-mens{text-decoration:none;color:#ffffff;background:#0277bf;border:1px solid #0277bf;font-size: 1em;padding:2px 10px;float: left;position:relative;top:5px;line-height:1em;text-transform:none;font-weight:normal;} a:link.boton-input-mens2, a:visited.boton-input-mens2, .a:active.boton-input-mens2{margin-left:22px;text-decoration:none;color:#ffffff;background:#0277bf;border:1px solid #0277bf;font-size: 1em;padding:2px 10px;float: left;position:relative;top:5px;line-height:1em;text-transform:none;font-weight:normal;} .input-text-azul{margin:1px;padding:2px 4px;color:#012943;text-decoration:none;border:1px solid #145798;background:#ffffff;font-size: 1em;line-height: 15px;} .input-submit-azul{padding:2px 4px;color:#ffffff;text-decoration:none;border:1px solid #0277bf;background:#0277bf;font-size: 1em;line-height: 15px;font-weight:normal;width:120px;cursor:url(/ArmadaPortal/framework/skins/armada/images/HAND.CUR), pointer;} .txtnumcar{width: 240px;font-size: 0.9em;padding:0.3em;} .captchaimg{width: 240px;height: 62px;border:dotted #333333 2px;overflow: hidden;margin: 0.7em 0 0.7em 0;} .txtokmsj{float:left;color:#ffffff;width:230px;padding-left:2em;} .bot-pagnav{margin:1px;padding:2px 4px;color:#113142;float:left;text-decoration:none;border:1px solid #6cadd0;background:#ffffff;font-size: 1em;line-height: 15px;} a:link.bot-pagnav, a:visited.bot-pagnav, .a:active.bot-pagnav{margin:1px;padding:2px 4px;color:#113142;float:left;text-decoration:underline;border:1px solid #6cadd0;background:#a6daf7;font-size: 0.98em;line-height: 15px;} a:hover.bot-pagnav{text-decoration:underline;background:#ffffff;font-size: 0.98em;line-height: 15px;} .fondonumpag{background:#ccc;} .irdetalle{color:#055fc5;text-decoration:underline;cursor:url(/ArmadaPortal/framework/skins/armada/images/HAND.CUR), pointer;} /* ###### FIN MENSAJES NAVIDEÑOS */ /* ######### ENCUESTA USUARIO */ .marco_EncuestaOk{background-color:#cccccc;border-top: solid 1px #023251;border-bottom: solid 1px #023251;border-right: solid 1px #023251;border-left: solid 1px #023251;padding:0 3px 10px 3px;} .marco-fieldset1{border: 1px solid #9d9da0;margin:1em;padding:1em 1em;} .marco-legend1{margin:0;padding:0.2em;;font-size: 1em;} .marco-fieldset2{border: 1px solid #b9b9ba;padding:1em 1em;} .marco-legend2{margin:0;padding:0.2em;} .marco-fieldsetedad{border: 1px solid #b9b9ba;padding:1em 1em;} .marco-legendedad{margin:0;padding:0.2em;} .encuestaValoraciones{background-color:#e6eaf8;margin-top:1.5em;padding:0.35em;font-size: 1em;font-weight:bold;} .valoracionesTexto{font-size:0.95em;padding:0.9em;color:#424241;} .legendPregunta{font-size: 0.8em;margin-top:1em;} #encuestaComentario{width:60%;margin-top:1.5em;padding:0.35em;font-size: 1em;} #encuestaComentario .comentariolabel{background-color:#e6eaf8;padding:0.35em;font-weight:bold;} #encuestaComentario .comentariotxt{width: 400px;font-size: 0.95em;padding:0.9em;color:#424241;} #encuestaComentario .comentariotxtarea{font-family:sans-serif;} #encuestaClave{width:60%;margin:0.7em;background-color:#eeeeee;margin-top:1.5em;padding:0.35em;font-size: 1em;} #encuestaClave .clavelabel{padding:0.35em;font-weight:bold;border-bottom: solid 1px #6f6e6c;} #encuestaClave .clavetxt{font-size:0.95em;padding:0.9em;color:#424241;} #encuestaClave .claveinput{padding-left:0.7em} #encuestaClave .claveimg{width: 240px;height: 62px;border:dotted #333333 2px;overflow: hidden;margin: 0.7em 0 0.7em 0.7em;} #textoCheck{padding:30px;text-align: center;font-weight: bold;border:solid #cccccc 1px;background-color:#eeeeee;width:40%;margin:0 auto;} #botonCheck{text-align: center;width:40%;margin:0 auto;} a:link.boton-input-encu, a:visited.boton-input-encu, .a:active.boton-input-encu{text-decoration:none;color:#ffffff;background:#0277bf;border:1px solid #0277bf;font-size: 1em;padding:2px 10px;position:relative;top:10px;line-height:1em;text-transform:none;font-weight:normal;} /* ###### FIN ENCUESTA USUARIO */ /* ###### FORMULARIO CONTACTO PERSONAL */ #datos_personales{float:left;width: 30em;margin:15px 0px 10px 0px; color:#343434;} #datos_contacto{float: left;margin:15px 0px 10px 0px;color:#343434;} .campo_formp{margin-top: 0.5em;} .campo_formp_r{margin: 0.5em 0em 0em 8em;padding-right: 1em;} .campo_formp label{padding-left: 0.5em;padding-right: 1em;display: block;width: 10em;float: left;text-align:right;} .obligatorio{color:#FF0000;} #preguntas{margin-top:10px;color:#343434;} #consulta{margin-top:10px;color:#343434;font-weight:bold;} .subrayado{text-decoration:underline;} /* ###### FIN FORMULARIO CONTACTO PERSONAL */ /* ######### ENLACES */ .grupoEnlaces ul, li{list-style:none;} .ulBloque{padding:0 0 30px 0;float:left;} .ulBloque img{padding:0 0 0 3px;} .liImagen{display:inline; margin:0.3em 0.5em 0.3em 0.4em;padding:0.4em 7em 0.2em 0.4em;} .liTexto{background-image: url(/ArmadaPortal/framework/skins/armada/images/flecha.gif);background-repeat: no-repeat;background-position: 0.1em; margin:0.2em 0 0 1.6em;padding-left: 0.8em;} .liEnlace{background-image: url(/ArmadaPortal/framework/skins/armada/images/flecha.gif);background-repeat: no-repeat;background-position: 0.1em; margin:0.2em 0 0 1.6em;padding-left: 0.8em;} /* ###### FIN ENLACES */ /* ######### VOTOS */ #votos_estrellas{float:left;display:inline;width:550px;height:30px;margin: 10px 15px 0px 20px;} #votos_votar{float:left;display:inline;margin-right:5px;} .votos_txt{float:left; display:inline;margin: 0px 5px 0px 10px;} #rateStatus{float:left;height:30px;} #votos_estrella {width:245px;height:30px;float:left;display:inline;margin:0px 4px 0px 3px;} #votos_estrella li{float:left;list-style:none;} #votos_estrella li a:hover, #votos_estrella .on{background:url(/ArmadaPortal/framework/skins/armada/images/rating/star2A.gif) no-repeat;} #votos_estrella a{display:block;float:left;background:url(/ArmadaPortal/framework/skins/armada/images/rating/star1.gif) no-repeat;width:15px; height:15px;cursor:url(/ArmadaPortal/framework/skins/armada/images/HAND.CUR), pointer;} #ratingSaved{display:none;} #votos_separador{float:left;display:inline;margin: 0px 4px 0px 5px;} #votos_resultado{float:left;display:inline;margin: 0px 4px 0px 10px;} #rateStatus{margin: 0px 5px 0px 10px;} #votos_puntos{margin: 0px 3px 0px 5px;} .saved{color:red; } #rateo{margin:10px 5px 10px 5px;height:70px;} /* ###### VOTOS */ /*###########################################*/ /*################## PERSONALIZADA CUERPO */ /* #template-include-personalizada {line-height: 20px;font-size: 1em;margin-top:0px;} #template-include-personalizada #img-izq{text-align:center;display:block;float:left;margin-right:3em;margin-bottom:3em;} #template-include-personalizada #img-izq p{width:180px;display:block;color:#333;font-size:1em;font-style:oblique;line-height:1.5em;} #template-include-personalizada #img-izq img{border:0;padding:9px;border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;text-decoration:underline;} #template-include-personalizada #img-der{text-align:center;display: block;float:right;margin-left:3em;margin-bottom:3em;} #template-include-personalizada #img-der p{width:180px;display:block;color:#333;font-size:1em;font-style:oblique;line-height:1.5em;} #template-include-personalizada #img-der img{border:0;padding:9px;border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;text-decoration:underline;} #template-include-personalizada #img-cen{text-align:center;display: block;float:none;} #template-include-personalizada #img-cen p{margin:0 auto;width:180px;display:block;color:#666;font-size:1em;font-style:oblique;line-height:1.5em;} #template-include-personalizada #img-cen img{border:0;padding:9px;border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;text-decoration:underline;} #template-include-personalizada #img-izq-sin{text-align:center;display:block;float:left;margin-right:3em;margin-bottom:3em;} #template-include-personalizada #img-izq-sin p{width:180px;display:block;color:#333;font-size:1em;font-style:oblique;line-height:1.5em;} #template-include-personalizada #img-cen-sin img{border:0;} #template-include-personalizada #img-der-sin{text-align:center;display: block;float:right;margin-left:3em;margin-bottom:3em;} #template-include-personalizada #img-der-sin p{width:180px;display:block;color:#333;font-size:1em;font-style:oblique;line-height:1.5em;} #template-include-personalizada #img-cen-sin img{border:0;} #template-include-personalizada #img-cen-sin{text-align:center;display: block;float:none;} #template-include-personalizada #img-cen-sin p{margin:0 auto;width:180px;display:block;color:#666;font-size:1em;font-style:oblique;line-height:1.5em;} #template-include-personalizada #img-cen-sin img{border:0;} */ #template-include-personalizada {line-height: 20px;font-size: 1em;margin-top:0px;} #template-include-personalizada .img-izq{text-align:center;display:block;float:left;margin-right:3em;margin-bottom:3em;} #template-include-personalizada .img-izq p{width:180px;display:block;color:#333;font-size:1em;font-style:oblique;line-height:1.5em;} #template-include-personalizada .img-izq img{border:0;padding:9px;border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;text-decoration:underline;} #template-include-personalizada .img-der{text-align:center;display: block;float:right;margin-left:3em;margin-bottom:3em;} #template-include-personalizada .img-der p{width:180px;display:block;color:#333;font-size:1em;font-style:oblique;line-height:1.5em;} #template-include-personalizada .img-der p a{display:block;color:#333;font-size:0.98em;font-style:oblique;text-decoration:underline;} #template-include-personalizada .img-der img{border:0;padding:9px;border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;text-decoration:underline;} #template-include-personalizada .img-cen{text-align:center;display: block;float:none;} #template-include-personalizada .img-cen p{margin:0 auto;width:180px;display:block;color:#333;font-size:1em;font-style:oblique;line-height:1.5em;} #template-include-personalizada .img-cen img{border:0;padding:9px;border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;text-decoration:underline;} #template-include-personalizada .img-izq-sin{text-align:center;display:block;float:left;margin-right:3em;margin-bottom:3em;} #template-include-personalizada .img-izq-sin p{width:180px;display:block;color:#333;font-size:1em;font-style:oblique;line-height:1.5em;} #template-include-personalizada .img-cen-sin img{border:0;} #template-include-personalizada .img-der-sin{text-align:center;display: block;float:right;margin-left:3em;margin-bottom:3em;} #template-include-personalizada .img-der-sin p{width:180px;display:block;color:#333;font-size:1em;font-style:oblique;line-height:1.5em;} #template-include-personalizada .img-cen-sin img{border:0;} #template-include-personalizada .img-cen-sin{text-align:center;display: block;float:none;} #template-include-personalizada .img-cen-sin p{margin:0 auto;width:180px;display:block;color:#333;font-size:1em;font-style:oblique;line-height:1.5em;} #template-include-personalizada .img-cen-sin img{border:0;} #template-include-personalizada a{color:#016293;text-decoration:underline;font-size:0.98em;} #template-include-personalizada a:hover{text-decoration:underline;color:#016293;font-size:0.98em;} .margen-banner-bott{text-align:center;display:block;float:left;margin:15px 19px 20px 0;} .margen-banner-bott img{border:0;padding:9px;border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;text-decoration:underline;} .margen-banner-ajema{text-align:center;display:block;float:left;margin:0;padding:0;} .margen-banner-ajema img{border:0;padding:9px;padding:5px;} /*###########################################*/ /*################## nuevo PERSONALIZADA CUERPO BANNER AJEMA HOME */ .template-include-personalizada {line-height: 20px;font-size:1em;margin-top:0px;} /*##########################*/ /*########## LISTAS NUMERICAS */ /*#################### PASADO A LA CSS WINDOW ::: AL FINAL DE TODA LA CARGA DE CSS´s #template-include-cuerpo ol{counter-reset:item;} #template-include-cuerpo ol li{display:block;} #template-include-cuerpo ol li:before{content: counters(item, ".");counter-increment:item;font-weight:bold;} */ /*##########################*/ /*########## NATIVOS */ blockquote {display:block;border:dotted 0.2em #009ace;background:#d2f2fd;padding:1.5em;margin:0.9em;} acronym{color:maroon;border-bottom:maroon 1px dotted;} abbr{color:navy;border-bottom:navy 1px dotted;} /*##########################*/ /*########## CLASS GENERALES */ .pdf{ background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_pdf.gif);background-position: left;} .doc{ background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_pdf.gif);background-position: left;} .xls{ background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_pdf.gif);background-position: left;} .wmv{ background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_wmv.gif);background-position: left;} .mp3{ background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_pdf.gif);background-position: left;} .ipx{ background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_pdf.gif);background-position: left;} .swf{ background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_pdf.gif);background-position: left;} /*##########################*/ /*##### TYPE GENERAL ACTIVIDAD */ #template-include-actividad ul{margin:0 0 40px 0;padding: 0;list-style: none;} #template-include-actividad li {height:35px;list-style:none;display:block;padding:5px 0px 5px 45px;margin:10px 0px 0px 0px;text-align:left;background-repeat:no-repeat;background-position:left} #template-include-actividad li a{color:#025B93; text-decoration:underline;font-size:0.95em;color:#016293;font-style:oblique;} #template-include-actividad li a:hover{color:#025B93; text-decoration:underline;font-size:0.95em;color:#016293;font-style:oblique;} #template-include-actividad .ico-enlace{ background-image:url(/ArmadaPortal/framework/skins/armada/images/ico_act_rel.gif);} /*##########################*/ /*##### TYPE GENERAL ENLACES */ #template-include-enlaces ul{margin:0 0 40px 0;padding: 0;list-style: none;font-size:1em;} #template-include-enlaces li {height:35px;list-style:none;display:block;padding:5px 0px 5px 45px;margin:10px 0px 0px 0px;text-align:left;background-repeat:no-repeat;background-position:left} #template-include-enlaces li a{color:#025B93; text-decoration:underline;font-size:1em;color:#016293;font-style:oblique;} #template-include-enlaces li a:hover{color:#025B93; text-decoration:underline;font-size:1em;color:#016293;font-style:oblique;} #template-include-enlaces .ico-enlace{ background-image:url(/ArmadaPortal/framework/skins/armada/images/icons/ico_enlace.jpg);} /*##############################*/ /*##### TYPE GENERAL ARCHIVOS */ #template-include-archivos ul{margin:0 0 40px 0;padding: 0;list-style: none;} #template-include-archivos li {height:35px;list-style:none;display:block;padding:5px 0px 5px 45px;margin:10px 0px 0px 0px;text-align:left;background-repeat:no-repeat;background-position:left} #template-include-archivos li a{color:#025B93; text-decoration:underline;font-size:1.1em;color:#016293;font-style:oblique;} #template-include-archivos li a:hover{color:#025B93; text-decoration:underline;font-size:1.1em;color:#016293;font-style:oblique;} #template-include-archivos .ico-archivo{ background-image:url(/ArmadaPortal/framework/skins/armada/images/icons/ico_archivo.jpg);} /*##########################*/ /*##### TYPE GENERAL IMAGENES */ #template-include-images #mark-img {text-align:center;background:#fff;padding:5px 5px 12px 5px;display:block;margin-bottom:35px;} #template-include-images #mark-img img{border:0;padding:3%;margin-bottom:5%;text-decoration:none; border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;} #template-include-images #mark-img a{display:block;color:#333;font-size:0.98em;font-style:oblique;text-decoration:underline;} /*##### NUEVO GENERAL IMAGENES USADO EN GENERAL DOCUMENTOS*/ .template-include-images .mark-img {text-align:center;background:#fff;padding:5px 5px 12px 5px;;display:block;margin-bottom:35px;} .template-include-images .mark-img img{border:0;padding:3%;margin-bottom:5%;text-decoration:none; border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;} .template-include-images .mark-img a{display:block;color:#333;font-size:0.98em;font-style:oblique;text-decoration:underline;} .docu_gen_img{float:left;width:150px;margin-right:35px;display:block;} .docu-img-padding{padding-left:20px;} .list-img-peq{float: left;width: 25%;margin-right:25px;} .list-img-peqsin{float: left;width: 25%;margin-right:35px;} .list-img-peqsin img{padding-left:20px;} /*##### FIN NUEVO GENERAL IMAGENES USADO */ /*##### NUEVO GENERAL IMAGENES USADO */ #template-include-images .mark-img {text-align:center;background:#fff;padding:0.3em 0.3em 0.3em 0.3em;display:block;margin-bottom:1.56em;} #template-include-images .mark-img img{border:0;padding:1.2em;margin-bottom:1.1em;text-decoration:none; border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;} #template-include-images .mark-img a{display:block;color:#333;font-size:0.98em;font-style:oblique;text-decoration:underline;} /*##### FIN NUEVO GENERAL IMAGENES USADO*/ /*##########################*/ /*##### TYPE GENERAL - PAG. CURRICULO */ #template-curriculo-cuerpo{line-height: 20px;font-size: 1em;margin-top:20px;} #template-curriculo-cuerpo a{color:#016293;text-decoration:underline;} #template-curriculo-cuerpo a.enlace-des{color:#016293;text-decoration:underline;} #template-curriculo-cuerpo .palabra-des {color:#996600;cursor:auto;} #template-curriculo-titulo h5{font-size:1.05em;margin-top:5%;margin-left: 7%;} #template-curriculo-titulo img{float: left;padding-left: 3%;} #template-curriculo-images #mark-img {text-align:center;background:#fff;padding:5px 5px 12px 5px;;display:block;margin-bottom:35px;} #template-curriculo-images #mark-img img{border:0;padding:3%;margin-bottom:5%;text-decoration:none; border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;} #template-curriculo-images #mark-img a{display:block;color:#333;font-size:0.98em;font-style:oblique;text-decoration:underline;} #template-curriculo-archivos ul{background-color: #fff;margin:0 0 65px 0;padding: 0;list-style: none;} #template-curriculo-archivos li {height:35px;list-style:none;display:block;padding:5px 10px 5px 20px;margin:10px 0px 0px 0px;text-align:left;background-repeat:no-repeat;background-position:left} #template-curriculo-archivos li a{color:#025B93; text-decoration:underline;font-size:0.98em;color:#016293;font-style:oblique;} #template-curriculo-archivos .ico-archivo{ background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_pdf.gif);background-position: left;} /*##########################*/ /*##### DOCUMENTOS - PAG. DOCUMENTO */ #template-include-documentos {margin-bottom:5em;float:left;width:540px;} #template-include-documentos .titulo{text-transform:uppercase;font-weight:bold;} #template-include-documentos .descripcion{font-style:oblique;} #template-include-documentos .cuerpo{color:#666;} #template-include-documentos ul{background-color:#fff;list-style: none;} #template-include-documentos li{line-height:2em;list-style:none;display:block;text-align:left;background-repeat:no-repeat;background-position:left;padding-left:35px;} #template-include-documentos li a{line-height:1.5em;color:#025B93; text-decoration:underline;color:#016293;font-style:oblique;} #template-include-documentos .ico-archivo{background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_pdf.gif);background-position: left;} #template-include-documentos .ico-tamanno{ background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_tamano.gif);background-position: left;} #template-include-documentos .ico-tiempo{ background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_tiempo.gif);background-position: left;} /*##### DOCUMENTOS - PAG. DOCUMENTO NUEVO*/ .template-include-documentos {margin-bottom:5em;float:left;width:540px;} .template-include-documentos .titulo{text-transform:uppercase;font-weight:bold;} .template-include-documentos .descripcion{font-style:oblique;} .template-include-documentos .cuerpo{color:#666;} .template-include-documentos ul{background-color:#fff;list-style: none;} .template-include-documentos li{line-height:2em;list-style:none;display:block;text-align:left;background-repeat:no-repeat;background-position:left;padding-left:35px;} .template-include-documentos li a{line-height:1.5em;color:#025B93; text-decoration:underline;color:#016293;font-style:oblique;} .template-include-documentos li a:hover{line-height:1.5em;color:#025B93; text-decoration:underline;} .template-include-documentos .ico-archivo{background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_pdf.gif);background-position: left;} .template-include-documentos .ico-tamanno{ background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_tamano.gif);background-position: left;} .template-include-documentos .ico-tiempo{ background-image:url(/ArmadaPortal/framework/skins/armada/images/imgenesTemplate/ico_tiempo.gif);background-position: left;} /*##### FIN DOCUMENTOS - PAG. DOCUMENTO NUEVO */ /*##### DOCUMENTOS DESCARGABLES DETALLES CATALOGO */ .template-cuaderno{background-image:url(/ArmadaPortal/framework/skins/armada/images/cuadernosHistoria/fondo_cuaderno.png); background-repeat:no-repeat;margin: 15px auto 40px auto; padding:12px 0 0 12px;} .titulo-cuaderno{margin: 44px 20px 0 33px;font-family:Arial, Helvetica, sans-serif;font-size:1.5em;color:#343434;font-weight:bold;} .titulo-revista-listado{margin: 44px 20px 0 70px;font-family:Arial, Helvetica, sans-serif;font-size:1.5em;color:#343434;font-weight:bold;} .ciclo-conferencia{margin: 0 20px 0 33px;font-family:Arial, Helvetica, sans-serif;font-size:1.03em;color:#343434;} .descarga-cuaderno{font-size:1em;list-style:none; margin: 14px 0 0 7px;background-image:url(/ArmadaPortal/framework/skins/armada/images/cuadernosHistoria/ico_cuaderno.png);background-repeat:no-repeat;background-position: left top;padding:0 10px 0 25px;} .descarga-cuaderno a{text-align:center;text-decoration:underline;vertical-align:top;color:#016293;} .descarga-cuaderno a:hover{text-decoration:underline;} .descarga-articulo-titulo{margin:25px 50px 0 60px;font-family:Arial, Helvetica, sans-serif;font-size:1em;color:#343434;font-weight:bold;} .descarga-articulo{font-size:0.95em;} .descarga-titulo{color:#343434;font-size: 0.85em;font-weight:bold} .descarga-ref{color:#343434;font-size: 0.85em;} .descarga-articulo ul li{list-style:none;} .descarga-articulo li{margin:0 0 0 30px;padding:0 0 10px 20px;list-style:none;background-image:url(/ArmadaPortal/framework/skins/armada/images/cuadernosHistoria/ico_articulo.png);background-repeat:no-repeat;background-position: left top;} .descarga-articulo a{text-align:center;text-decoration:underline;vertical-align:top;color:#016293;} .descarga-articulo a:hover{text-decoration:underline;} .resultado-articulo{margin:8px 0 0 15px;padding:0px 0px 0px 15px;background-image: url(/ArmadaPortal/framework/skins/armada/images/rating/star_result.gif);background-repeat:no-repeat; background-position: left;color:#343434;font-size: 0.9em;font-weight:bold;} .resultado-articulop{padding:20px 0px 0px 0px;color:#343434;font-size: 0.9em;font-weight:bold;} .resultado-votosp{padding-left:6px;} .pos-titulo-articulo{margin: 30px 0 20px 20px;} .pos-descarga-articulo{margin:15px 0 25px 20px;} .pos-descarga-articulo a{color:#016293;font-weight:bold;text-decoration:underline;} .texto-articulo{margin:15px 0 25px 20px;color:#343434;font-size: 0.95em;} .texto-noarticulos{margin:30px 20px 20px 40px;color:#343434;font-size:0.9em;font-weight:bold;} .titulo-articulo{font-size:1em; color:#343434;font-weight:bold;} .marco-rate{background-image: url(/ArmadaPortal/framework/skins/armada/images/rating/cuadro_rate.gif);background-repeat:no-repeat;padding: 10px 0 0 0;} /*##### FIN DOCUMENTOS - PAG. DOCUMENTO NUEVO */ /*##########################*/ /*##### GALERIA - PAG. DOCUMENTO */ .bot-pag{margin:1px;padding:2px 4px;color:#023251;float:left;text-decoration:none;border:1px solid #e5d26a;background:#fff;font-size: 1em;line-height: 15px;} a:link.bot-pag, a:visited.bot-pag, .a:active.bot-pag{margin:1px;padding:2px 4px;color:#023251;float:left;text-decoration:underline;border:1px solid #e5d26a;background:#f6e272;font-size: 0.98em;line-height: 15px;} a:hover.bot-pag{text-decoration:underline;background:#fff;font-size: 0.98em;line-height: 15px;} .fondonumpag{background:#ccc;} #template-include-galeria{display:block;border:0;padding:0.4em 0.1em 3em 0.1em;margin-bottom:5%;text-decoration:none; border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;text-decoration:none;} #template-include-galeria .title-page{text-transform:uppercase;font-weight:bold;color:#FFCC00;background:url(/ArmadaPortal/framework/skins/armada/images/multimediagaleria/fondo_negro_titular.gif);font-size:1em;text-align:right;background-repeat:repeat-x;line-height:3em;margin:0 auto;} #template-include-galeria .title-page-select{width:97%;text-transform:uppercase;font-weight:bold;color:#333333;font-size:1em;color:#023251;border-bottom:solid 0.1em #d0b000;background:none;margin:0 auto;text-decoration:none;} #template-include-galeria .ico-camera{float: left;margin:0 1.5em;} #list-pages {padding:5px 0;width:100%;} #list-pages span{margin:0 9px 0 0;color:#023251;padding:3px 5px;background:#fff;text-decoration:none;margin-right:1px;border:1px solid #d0b000;} #list-pages a{padding:3px 7px;color:#023251;background:#e5d26a;text-decoration:underline;margin-right:1px;border:1px solid #d0b000;} #list-pages a:hover{background:#e7eff7;border-color:#CCCCCC;text-decoration:underline;} #template-include-galeria .img-tumb {margin:25px 25px 25px 10px;float:left;} #template-include-galeria .img-tumb p{font-weight:bold;margin:0;padding:0;} #template-include-galeria .img-tumb a img{border:0;padding:9px;text-decoration:none;border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;text-decoration:none;} #template-include-galeria .img-tumb a:hover img{border-color:#fff;background-color:#e7eff7;} #template-include-galeria .img-tumb .select{border-color:#e5d26a;background:#e5d26a;} #template-include-galeria .img-detalle { background:url(/ArmadaPortal/framework/skins/armada/images/multimediagaleria/fondo_cuadro_detalle_titulo.gif);background-repeat:repeat-x;line-height:20px;padding:8px;background-color:#e7d36b;} #template-include-galeria .img-detalle p{margin:0;padding:0;text-align:left;} #template-include-galeria .img-detalle .numero{font-size:1.8em;font-weight:bold;} #template-include-galeria .img-detalle .titulo{margin:0;font-size:1em; font-weight:normal;line-height:1.2em;} /*##########################*/ /*##### NOTICIAS - PAG. DOCUMENTO */ #template-include-noticia{display:block;border:0;padding:0.4em 0.1em 3em 0.1em;margin-bottom:5%;text-decoration:none; border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;text-decoration:none;} #template-include-noticia .title-page{text-transform:uppercase;font-weight:bold;color:#FFCC00;background:url(/ArmadaPortal/framework/skins/armada/images/multimediagaleria/fondo_negro_titular.gif);font-size:1em;text-align:right;background-repeat:repeat-x;line-height:3em;margin:0 auto;} #template-include-noticia .title-page-select{width:97%;text-transform:uppercase;font-weight:bold;color:#333333;font-size:1em;color:#023251;border-bottom:solid 0.1em #d0b000;background:none;margin:0 auto;text-decoration:none;} #template-include-noticia .pagnum-line{font-weight:bold;line-height:30px;} #template-include-noticia .img-noticia{border:solid 1px #ccc;padding: 4px;} #template-include-noticia .img-revista{border:1px solid #ccc;padding:5px;margin:5px;} #template-include-noticia .archivo-revista{font-size: 1em;color:#996600;} #template-include-noticia .masinfo-revista{color:#333;text-align:left;font-size:0.85em;} #template-include-noticia a acronym{text-decoration: none;color:#ffffff;} #template-include-noticia a .rss{margin:0 0 0 25px;padding: 0;} #template-include-noticia a .rss-img{margin: 0;padding: 0;} #template-include-noticia #not-list{border-bottom:1px dotted #998c13;padding:1em 0;} #template-include-noticia #not-list .fecha{color:#023251;font-weight:bold;font-size:1.05em;} #template-include-noticia #not-list .catalogo-tit{color:#023251;} #template-include-noticia #not-list a:link, a:visited, .a:active{line-height:1.3em;;color:#615702;text-decoration:underline;font-size:0.98em;} .img-revista-general{padding: 3ex;float: right;} a:link.boton-input, a:visited.boton-input, .a:active.boton-input{padding:3px 3px;color:#023251;background:#e7eff7;text-decoration:underline;margin-right:1px;border:1px solid #CCCCCC;margin:0 2em;font-size: 0.98em;float: left;position:relative;top:5px;line-height:1em;text-transform:none;font-weight:normal;} a:hover.boton-input{background:#FFFFFF;border-color:#CCCCCC;text-decoration:underline;font-size: 0.98em;} /*##### NUEVO template-include-noticia .not-list */ #template-include-noticia .not-list{border-bottom:1px dotted #998c13;padding:1em 0 0 0;} #template-include-noticia .not-list .fecha{color:#023251;font-weight:bold;font-size:1.05em;} #template-include-noticia .not-list a:link, a:visited, .a:active{line-height:1.3em;;color:#615702;text-decoration:underline;font-size:0.98em;} #template-include-noticia .not-listAzul .fecha{color:#023251;font-weight:bold;font-size:1.05em;} #template-include-noticia .not-listAzul a:link, a:visited, .a:active{line-height:1.3em;;color:#016293;text-decoration:underline;font-size:0.98em;} #template-include-noticia .not-listAzul ul{list-style:none;} /*##### FIN NUEVOtemplate-include-noticia .not-list */ /*##### FIN NOTICIAS ######*/ /* ### ACTIVIDADES */ #leyenda_mapa span{font-size:0.75em;font-family:Verdana, Arial, Helvetica, sans-serif;color:#333333;float:right;} #menuEnlaces {width:190px;font-family:Verdana, Arial, Helvetica, sans-serif;font-size:0.7em;color:#016293;} #menuEnlaces li a{font-family:Verdana, Arial, Helvetica, sans-serif;position:relative;padding-bottom:5px;padding-right:24px;display:block;color:#016293;font-weight:normal;font-size:0.7em;} #menuEnlaces li a:hover{color:#0066FF;background-color:#FFFFFF;} #menuEnlaces ul li span:hover{display:block;text-align:right;background-color:#FFFFFF;} #menuEnlaces ul li span{font-size:0.7em;margin-left:14px;padding-bottom:5px;margin-right:9px;display:block;text-align:right;cursor:auto;} #menuMapa{left:545px;top:15px;position:absolute;z-index:2000;} #menuMapa a{font-size:0.7em;text-decoration:underline;color:#016293;} .fondogris{background-color:#eeeeee;} #menuMapa .titulomenu{font-size:0.75em;font-weight:bold;font-family:Verdana, Arial, Helvetica, sans-serif;color:#003366;text-align: right;padding:10px;position:relative;} #salto_linea{clear:both;} #mapa{left:10px;top:10px;position:relative;background-color:#cccccc;} .capa_pos_01{position:absolute;min-width:20px;height:22px;z-index:0;font-family: Arial, Helvetica, sans-serif;font-size:0.7em;font-weight:bold;color: #333333;padding:4px;} .capa_pos_02{display:none;font-size:0.7em;width:185px;height:150px;position:absolute;top:0px;left:0px;padding:10px;} .capa_pos_02 span{font-size:0.75em;font-weight:bold;} .capa_pos_02 a, .capa_pos_02 a:hover{font-size:0.75em;color:#0066FF;font-weight:normal;} .capa_pos_03{position:absolute;left:10px;top:8px;width:701px;height:350px;z-index:1000;background-color:#ffffff;font-family: Arial, Helvetica, sans-serif;font-size:0.75em;color: #333333;display:none;padding:20px;border-bottom:solid #666666 2px;border-top:solid #cccccc 1px;border-left:solid #cccccc 1px;border-right:solid #666666 2px;overflow:auto;} .capa_pos_04{font-family: Arial, Helvetica, sans-serif;width:150px;height:auto;font-size:0.6em;color: #333333;padding:2px;width: 200px;text-align: right;background-image:url(/ArmadaPortal/framework/skins/armada/images/actividad/fondoMenu2.gif);} .operacion{background-image:url(/ArmadaPortal/framework/skins/armada/images/actividad/fondoverde.gif);background-repeat:no-repeat;} .operacionCapa{background-image:url(/ArmadaPortal/framework/skins/armada/images/actividad/fondoverdecapa.gif);background-repeat:no-repeat;} .ejercicio{background-image:url(/ArmadaPortal/framework/skins/armada/images/actividad/fondoamarillo.gif);background-repeat:no-repeat;} .ejercicioCapa{background-image:url(/ArmadaPortal/framework/skins/armada/images/actividad/fondoamarillocapa.gif);background-repeat:no-repeat;} .colaboracion{background-image:url(/ArmadaPortal/framework/skins/armada/images/actividad/fondonaranja.gif);background-repeat:no-repeat;} .colaboracionCapa{background-image:url(/ArmadaPortal/framework/skins/armada/images/actividad/fondonaranjacapa.gif);background-repeat:no-repeat;} .no_usado_lila{background-color:#b48afc;} .foto_izq{width:50px;height:50px;float:right;padding-left:0.31em;padding-bottom:0.31em;padding-right:0.31em;} .foto_der{width:50px;height:50px;float:left;padding-left:0.31em;padding-bottom:0.31em;padding-right:0.31em;}/* ### FIN ACTIVIDADES */ /*########### HOME ############*/ .home-marco{display:block;border:0;padding:0;text-decoration:none;border-left:1px solid #ccc;border-top:1px solid #ccc;border-right:2px solid #ccc;border-bottom:2px solid #ccc;width:253px;height:250px;float:left;margin:0 16px 20px 0;background-repeat:no-repeat;background-position:bottom;} .home-marco .home-marco-titulo-azul{font-weight:bold;color:#fff;background:url(/ArmadaPortal/framework/skins/armada/images/home/fondo_azul_titular.gif);font-size:1em;text-align:left;background-repeat:repeat-x;line-height:2em;margin:0 auto;padding:0px 0px 0px 10px;} .home-marco .home-marco-titulo-dorado{font-weight:bold;color:#333333;background:url(/ArmadaPortal/framework/skins/armada/images/home/fondo_dorado_titular.gif);font-size:1em;text-align:left;background-repeat:repeat-x;line-height:2em;margin:0 auto;padding:0px 0px 0px 10px;} .bannerNoticia{width:215px;height:140px;margin: 0 0 5px 0;background-color: #eee;} .bannerNoticia .fecha{color:#01080C;font-size:0.7em;} .home-marco #ul-empleo{list-style:none;text-align:right;padding:0px 15px 0px 0px;margin:15px 0 0 0;font-family:Verdana, Arial, Helvetica, sans-serif;font-weight:bold;line-height:15px;font-size:0.9em;} .home-marco #ul-empleo li a{color:#003366;text-decoration:underline;} .home-marco #ul-empleo li a:hover{color:#333333;text-decoration:underline;} .home-marco #ul-empleo .tsize9 a{font-size:0.9em;} .home-marco #ul-empleo .tsize8 a{font-size:0.8em;} .home-marco #ul-empleo .trojo a{color:#990000;} .home-marco #ul-empleo .tazulc a{color:#0151A1;} .home-marco #ul-empleo .tazulo a{color:#004080;} .home-marco #ul-empleo .telefono{font-size:1.8em;color:#B84601;margin:0 0 0 0;text-align:center;font-weight:bold;line-height:1.7;} .home-marco #ul-actividades{list-style-image:url(/ArmadaPortal/framework/skins/armada/images/home/ico_roja.gif);text-align:left;padding:0 25px;font-family:Verdana, Arial, Helvetica, sans-serif;font-size:0.8em;font-weight:bold;} .home-marco #ul-actividades li a{color:#004080;text-decoration:underline;display:block;margin:0;padding:0;font-size:1em;line-height:1em;} .home-marco #ul-actividades li a:hover{color:#333333;text-decoration:underline;margin:0;padding:0;font-size:1em;line-height:0.9em;} .home-marco .ul-noticias-novedades{ height: 92px; padding: 8px 0px 8px 0px; margin-bottom: 6px; overflow: auto; } .home-marco .ul-noticias-novedades ul{margin:0;padding:0;} .home-marco .ul-noticias-novedades li{list-style:circle;margin:0;padding:0px 12px 15px 12px;} .home-marco .ul-noticias-novedades .indicador{font-size: 0.5em;font-weight:bold;} .home-marco .ul-noticias-novedades a{color:#615702;font-weight:normal;text-decoration:underline;font-size:0.8em;} .home-marco .ul-noticias-novedades a:hover{color:#615702;font-weight:normal;text-decoration:underline;} .home-marco #ul-actividades{list-style-image:url(/ArmadaPortal/framework/skins/armada/images/home/ico_roja.gif);text-align:left;padding:0 25px;font-family:Verdana, Arial, Helvetica, sans-serif;font-size:0.8em;font-weight:bold;margin:120px 0 0 0;} .home-marco #ul-actividades li{margin:0;padding:0;font-size:0.95em;line-height:1em;} .home-marco #ul-actividades li a{color:#004080;text-decoration:underline;display:block;} .home-marco #ul-actividades li a:hover{color:#333333;text-decoration:underline;} .home-marco .ul-noticias-novedades{ height: 92px; padding: 8px 0px 8px 0px; margin-bottom: 6px; overflow: auto; } .home-marco .ul-noticias-novedades ul{margin:0;padding:0;} .home-marco .ul-noticias-novedades li{list-style:circle;margin:0;padding:0px 12px 15px 12px;} .home-marco .ul-noticias-novedades a{color:#615702;font-weight:normal;text-decoration:underline;font-size:0.8em;} .home-marco .ul-noticias-novedades a:hover{color:#615702;font-weight:normal;text-decoration:underline;} .home-marco-bgempleo{background-image:url(/ArmadaPortal/framework/skins/armada/images/home/fondo_empleo.jpg);} .home-marco-bgactividad{background-image:url(/ArmadaPortal/framework/skins/armada/images/home/fondo_actividad.jpg);cursor:url(/ArmadaPortal/framework/skins/armada/images/HAND.CUR), pointer;} .home-marco-buques{width:160px;padding:0;margin:0;text-align: center;} .home-marco-bg_novedades{width:215px;height: 140px;background-color: #eee;} .imglogdef{margin:8px 0px 0px 8px;} .icoidioma{clear: both;margin:25px 0 0 0;} .bannerhome{position:relative; left:0px; top:-1px;} #home-banners-cen{width:100%;font-family:Verdana, Arial, Helvetica, sans-serif;font-size:0.9em;font-weight:bold;padding-top:1em;} #home-banners-cen .imgizq{color:#001853;padding-left:1em;} #home-banners-cen .imgcen{color:#236079;padding-left:3.9em;} #home-banners-cen .imgder{color:#693036;padding-left:3em;} #home-banners-cen .imgizq-en{color:#001853;padding-left:1em;} #home-banners-cen .imgcen-en{color:#236079;padding-left:2.9em;} #home-banners-cen .imgder-en{color:#693036;padding-left:3.5em;} #home-banners-cen .imgizq-fr{color:#001853;padding-left:1em;} #home-banners-cen .imgcen-fr{color:#236079;padding-left:2.8em;} #home-banners-cen .imgder-fr{color:#693036;padding-left:3.8em;} #home-banners-inf{width:100%;color:#003f6a;font-family:Verdana, Arial, Helvetica, sans-serif;font-size:0.9em;font-weight:bold;padding-top:1em;} #home-banners-inf .imgizq{padding-left:1em;} #home-banners-inf .imgcen{padding-left:7em;} #home-banners-inf .imgder{padding-left:2.2em;} #home-banners-inf .imgizq-en{padding-left:1em;} #home-banners-inf .imgcen-en{padding-left:6em;} #home-banners-inf .imgder-en{padding-left:6.3em;} #home-banners-inf .imgizq-fr{padding-left:1em;} #home-banners-inf .imgcen-fr{padding-left:6.4em;} #home-banners-inf .imgder-fr{padding-left:6.1em;} /*### FIN HOME ###*/ /*### ACTIVIDAD BANNER ###*/ #destacado_b{ width:273px; height:248px; float:left; display:inline; background-image:url(/ArmadaPortal/framework/skins/armada/images/bg_box2.jpg); background-repeat:no-repeat; left:10px; top:0px; z-index:0;} #destacado_b ul{ text-align:left; width:260px; float:right; top:110px; } #destacado_b ul li {background-image:url(/ArmadaPortal/framework/skins/armada/images/gr_bullet_flecha.gif); background-repeat:no-repeat; background-position:left;top:110px;} .enlaces_actividades{color:#023251; text-decoration:none; font-size:0.8em; font-weight:bold; left:15px; position:relative; } /*### BUQUES / UNIDADES BANNER ###*/ #destacado_c{ width:164px; height:238px; float:left; display:inline; background-image:url(/ArmadaPortal/framework/skins/armada/images/bg_boxblanco2.gif); background-repeat:no-repeat; padding:10px 0px 0px 4px; left:10px; top:0px; } #destacado_c img{border:none;} .banners{ background-image: url(/ArmadaPortal/framework/skins/armada/images/box_banners.gif); background-repeat:no-repeat; display:inline; float:left; width:226px; height:119px; top:10px; left:10px; margin:0px 12px 0px 12px} .banners img{left:13px; top:15px; border:none;} /*--------- fin bloque izq-----------*/ #multimedia-tituloh4{text-transform:uppercase;font-weight:bold;color:#FFCC00;background:url(/ArmadaPortal/framework/skins/armada/images/multimediagaleria/fondo_negro_titular.gif);font-size:1em;text-align:right;background-repeat:repeat-x;line-height:3em;margin:0 auto;} .multimedia-separabloques{margin-bottom: 1.3em;} .multimedia-pag{font-weight:bold;line-height:30px;} /*##### MULTIMEDIA GALERIA */ #mult_gal_bloq_izq{width: 399px;float: left;} #mult_gal_bloq_der{width:331px;float:left;} .mult_gal_hayZoomTrue{width:695px;position:relative;left:-25px;float: right;} .mult_gal_hayZoomFalse{position:relative;top:10px;width:320px;} .mult_gal_nozoom{position:relative;top:10px;width:320px;} .mult_gal_pag{line-height:30px;font-weight:bold;} #mult_gal_cuerpo{padding:5px 5px;} #mult_gal_cuerpo_actividad{width: 399px;float: left;} #mult_gal_cabecera_pag{width:90%;float:left;padding:0 5px;height: 75px;} #mult_gal_miniatura{margin:0 auto;padding: 0 5px;font-weight:bold;} #mult_gal_bloque_tit{float:left;display: block;} #mult_gal_desc{width: 50px;float: right;} #mult_gal_info{margin:3em 0 2em 0;} #mult_gal_num{float:left;display:block;margin:0 0 0 5px;width: 80px;} #mult_gal_num_act{float:left;display: block;margin-right: 0.5em;width: 35px;} a:link.boton-input-gal, a:visited.boton-input-gal, .a:active.boton-input-galt{padding:3px 3px;color:#023251;background:#e5d26a;text-decoration:underline;margin-right:1px;border:1px solid #d0b000;margin: 5px 7px;;font-size: 0.98em;float: left;position:relative;top:5px;line-height:1em;text-transform:none;font-weight:normal;} a:hover.boton-input-gal{background:#e7eff7;border-color:#CCCCCC;text-decoration:underline;font-size: 0.98em;} .mult-gal-boton-input{margin: 0 7px;} .mult-gal-boton-input-right{float: right;margin: 0 7px;} .sinmargengal{border:0;margin:0;padding:0;} /*##### FIN MULTIMEDIA GALERIA */ /*##### MULTIMEDIA VIDEO */ #template-include-galeria .img-tumb a{color:#7D681E;text-decoration:underline;} #template-include-galeria .img-tumb a:hover{text-decoration:underline;} #mult_video_bloq_izq{width: 340px;float: left;} .mult_video_pag{line-height:30px;} #mult_video_bloq_der{width:380px;float: left;padding-top:0.5em;} .mult_video_img{width: 390px;} #mult_video_num_video{float:left;display:block;margin:0 0 0 5px;width: 80px;} #mult-video-titulo-margen{float:left;display: block;margin:0 0 15px 0;} .video-margen{clear: both;padding: 0 20px 0 0;} /*##### FIN MULTIMEDIA VIDEO */ /*##### MULTIMEDIA ANIMACION */ #mult_ani_bloq_gen{width:750px;float:left;} #mult_ani_bloque_num{float:left;display:block;margin:0 0 0 5px;width: 80px;} #mult_ani_bloque_tit{float:left;display: block;} #mult-ani-marco{width:100%;margin:0 0 0 10px;} .mult_ani_pag{line-height:30px;font-weight:bold;} .mult_ani_img{margin:5px 5px 5px 10px;width:300px;float:left;} .mult_ani_img p{font-weight:bold;margin:0;padding:0;} .mult_ani_img a{color:#7D681E;text-decoration:underline;} .mult_ani_img a:hover{text-decoration:underline;} .mult-ani-margen-carga{width:92%;margin:8px auto;} .mult-ani-margen-info{margin:3em 0 2em 0.7em;} /*##### FIN MULTIMEDIA ANIMACION */ /*##### MULTIMEDIA VISITA VIRTUAL */ .mult_visita_img{width:300px;padding: 0px 30px 0px 0px;margin: 10px 10px;height:30px; float: left;} .mult_visita_img p{font-weight:bold;margin:0;padding:0;} .mult_visita_img a{color:#7D681E;text-decoration:underline;} .mult_visita_img a:hover{text-decoration:underline;} .mult_visita_pag{line-height:30px;font-weight:bold;} #mult_visita_cuerpo{width:95%;margin:0 auto;padding:0.5em;} #mult_visita_bloq_virtual{width:610px;margin: 0 auto;} #mult_visita_num_virtual{float:left;display:block;margin:0 10px 0 10px;height: 40px;} .mult-visita-margenes{margin: 0 20px;} .mult-visita-info{margin:1.5em 0 2em 0;} /*##### FIN MULTIMEDIA VISITA VIRTUAL */ /*##### MULTIMEDIA FONDOS DE ESCRITORIO */ .marcosfondos{width: 80%;margin:20px auto;} .numfondo{font-size: 1.8em;font-weight: bold;margin: 0;} .titulofondo{font-weight: bold;font-size: 1.4em;} .imgfondo{color:#006699;text-decoration: underline;font-style: oblique;margin:0 0 5px 0;} .fondoesc{float: left;margin: 0 15px 0 0;} /*##### FIN MULTIMEDIA FONDOS DE ESCRITORIO */ /* MEDIA PRINT #container {width:*;margin:0; height:0;background-color:;} #cabecera_subhome{display:none;} #bea-book-menu{display:none;} #bea-index-menu{display:none;} #bea-book-container{margin:0;background-image:none;} #bea-book-index-container{display:none;} #armada-footer-menu{display:none;} #armada-footer-menu .left{display:none;} #container-footer{display:none;} .bea-portal-body-footer{display:none;} */ /*##### ESTILOS HOME PAGE */ /*##### Actividades Portlet */ .home-portlet-actividad {font-size:0.925em;width:100%;background-color:#f0f0f0;min-height:775px;} .home-portlet-actividad h4{ border-top:1px solid #6c93b1;border-bottom:2px solid #002b4b; padding:10px 0 0 0;width:100%;font-weight:bold;color:#e2e2e2;background-color:#004477;font-size:1.1em;text-align:left; } .home-portlet-actividad .span-titulo{font-size:1.1em;color:#444444;font-weight:bold;margin: 0 auto;} .home-portlet-actividad ul, .home-portlet-actividad li{margin:0;padding:0;list-style: none;} .home-portlet-actividad ul{width:96%;margin:15px auto;} .home-portlet-actividad li{clear: both;background:url(/ArmadaPortal/framework/skins/armada/images/actividad-portlet/home-portlet-actividad-bg.png);background-repeat:repeat-y;border-bottom:solid 2px #f0f0f0; } .home-portlet-actividad li a{color:#444444;text-decoration:underline;font-size:0.85em;display:block;} .home-portlet-actividad li a:hover{text-decoration:none;} .home-portlet-actividad li img{float:left;width:35px;height:35px;border: solid #666 2px;margin:5px 15px 15px 0;} /*##### Noticias Portlet */ .home-portlet-noticias {font-size:0.925em;width:100%;background-color:#f0f0f0;} .home-portlet-noticias .contenido-noticias{overflow:auto;width:100%;height:300px;border-bottom:2px solid #b22b2d;} .home-portlet-noticias h4{ border-top:1px solid #d38586;border-bottom:2px solid #4b1213; padding:10px 0 0 0;width:100%;font-weight:bold;color:#e2e2e2;background-color:#b22b2d;font-size:1.1em;text-align:left; } .home-portlet-noticias .span-titulo{font-size:1.1em;color:#444444;font-weight:bold;margin: 0 auto;} .home-portlet-noticias ul, .home-portlet-actividad li{margin:0;padding:0;list-style: none;} .home-portlet-noticias ul{padding:10px 0 20px 0;margin: 0 auto;width: 90%;} .home-portlet-noticias li{clear: both;padding:0 0 10px 0;margin:0 auto;border-bottom:solid 2px #f0f0f0;width: 90%;} .home-portlet-noticias li a{color:#444444;text-decoration:underline;display:block;margin:0;padding:0;font-size:0.85em;} .home-portlet-noticias li a:hover{color:#444444;text-decoration:underline;display:block;margin:0;padding:0;font-size:0.85em;} .home-portlet-noticias li img{float:left;width:35px;height:35px;border: solid #666 2px;margin:0 10px 10px 0;} .home-portlet-noticias .fecha{font-size:0.8em;} .home-portlet-noticias .indicador{font-size:0.8em;} /*##### Novedades Portlet */ .home-portlet-novedades {font-size:0.925em;width:100%;background-color:#f0f0f0;} .home-portlet-novedades .contenido-novedades{overflow:auto;width:100%;height:300px;border-bottom:2px solid #2b8ab2;} .home-portlet-novedades h4{ border-top:1px solid #85bcd3;border-bottom:2px solid #123a4b; padding:10px 0 0 0;width:100%;font-weight:bold;color:#e2e2e2;background-color:#2b8ab2;font-size:1.1em;text-align:left; } .home-portlet-novedades .span-titulo{font-size:1.1em;color:#444444;font-weight:bold;margin: 0 auto;} .home-portlet-novedades ul, .home-portlet-actividad li{margin:0;padding:0;list-style: none;} .home-portlet-novedades ul{padding:10px 0 20px 0;margin: 0 auto;width: 90%;} .home-portlet-novedades li{clear: both;padding:0 0 10px 0;margin:0 auto;border-bottom:solid 2px #f0f0f0;width: 90%;} .home-portlet-novedades li a{color:#444444;text-decoration:underline;display:block;margin:0;padding:0;font-size:0.85em;} .home-portlet-novedades li a:hover{color:#444444;text-decoration:underline;display:block;margin:0;padding:0;font-size:0.85em;} .home-portlet-novedades li img{float:left;width:35px;height:35px;border: solid #666 2px;margin:0 10px 10px 0;} .home-portlet-novedades .fecha{font-size:0.8em;} .home-portlet-novedades .indicador{font-size:0.8em;} .home-portlet-novedades .museo{font-size:0.7em;font-weight:bold;} /*##### GripLayout treecolum HOME Portlet */ .izq-col-home{width: 230px;float:left;padding:0px;display: block;} .central-col-home{width: 525px;float:left;padding:0px;display: block;} .der-col-home{width: 230px;float:left;padding:0px;display: block;} /*##### FIN ESTILOS HOME PAGE */ ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=estilo_imprimir.css Content-Type: text/css; charset=UTF-8; name=estilo_imprimir.css Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/css/estilo_imprimir.css Content-Transfer-Encoding: 8bit /* CSS Document */ body {font-family:Verdana, Arial, Helvetica, sans-serif;font-size:0.8em;line-height:25px;} a{font-family:Verdana, Arial, Helvetica, sans-serif;font-size:0.8em;color:#016293;} a:hover{font-family:Verdana, Arial, Helvetica, sans-serif;font-size:0.8em;color:#016293;} h4{font-size:1.1em;font-weight:bold;} h5{font-size:1em;font-weight:bold;} #container {margin:0; height:0;} #cabecera_subhome{display:none;} #bea-book-menu{display:none;} #bea-index-menu{display:none;} #bea-book-container{margin:0;background-image:none;} #bea-book-index-container{display:none;} #armada-footer-menu{display:none;} #armada-footer-menu .left{display:none;} #container-footer{display:none;} .bea-portal-body-footer{display:none;} .skip{display:none;} ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=window.css Content-Type: text/css; charset=UTF-8; name=window.css Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/css/window.css Content-Transfer-Encoding: 8bit /* // -------------------------------------------------------------------------------------------------------------------- // Window // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-window { margin: 0.31em; padding: 0; border-style: solid; border-width: 0; border-color: #333366; background-color: #ffffff; /* Fix for IE height problem; uses Mozilla's recognition of and IE's ignorance of C-style line comment... */ height: 100%; } .bea-portal-window-content { margin: 0.25em; padding: 0; } /* // -------------------------------------------------------------------------------------------------------------------- // Window Titlebar // -------------------------------------------------------------------------------------------------------------------- */ .bea-portal-window-titlebar { background-color: #d8d8e5; padding: 0.12em; margin: 0; font-size: small; font-weight: bold; } .bea-portal-window-titlebar-container { padding: 0; width: 100%; } .bea-portal-window-icon { text-align: center; padding: 0 0.25em 0 0; margin: 0; width: 1%; } .bea-portal-window-icon img { padding: 0; margin: 0; } .bea-portal-window-titlebar-title { color: #333366; text-align: left; padding: 0; white-space: nowrap; overflow: hidden; } .bea-portal-window-titlebar-buttons { text-align: right; padding: 0; white-space: nowrap; overflow: hidden; } /*##########################*/ /*########## LISTAS NUMERICAS */ #template-include-cuerpo ol{counter-reset:item;} #template-include-cuerpo ol li{display:block;} #template-include-cuerpo ol li:before{content: counters(item, ".");counter-increment:item;font-weight:bold;} ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=lightbox.css Content-Type: text/css; charset=UTF-8; name=lightbox.css Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/Armada92/css/lightbox.css Content-Transfer-Encoding: 8bit #lightbox{ position: absolute; left: 0; width: 100%; z-index: 100; text-align: center; line-height: 0;} #lightbox img{ width: auto; height: auto;} #lightbox a img{ border: none; } #outerImageContainer{ position: relative; background-color: #fff; width: 250px; height: 250px; margin: 0 auto; } #imageContainer{ padding: 10px; } #loading{ position: absolute; top: 40%; left: 0%; height: 25%; width: 100%; text-align: center; line-height: 0; } #hoverNav{ position: absolute; top: 0; left: 0; height: 100%; width: 100%; z-index: 10; } #imageContainer>#hoverNav{ left: 0;} #hoverNav a{ outline: none;} #prevLink, #nextLink{ width: 49%; height: 100%; background-image: url(data:image/gif;base64,AAAA); /* Trick IE into showing hover */ display: block; } #prevLink { left: 0; float: left;} #nextLink { right: 0; float: right;} #prevLink:hover, #prevLink:visited:hover { background: url(/ArmadaPortal/framework/skins/armada/images/uniformidad/prevlabel.gif) left 15% no-repeat; } #nextLink:hover, #nextLink:visited:hover { background: url(/ArmadaPortal/framework/skins/armada/images/uniformidad/nextlabel.gif) right 15% no-repeat; } #imageDataContainer{ font: 10px Verdana, Helvetica, sans-serif; background-color: #fff; margin: 0 auto; line-height: 1.4em; overflow: auto; width: 100% ; } #imageData{ padding:0 10px; color: #666; } #imageData #imageDetails{ width: 70%; float: left; text-align: left; } #imageData #caption{ font-weight: bold; } #imageData #numberDisplay{ display: block; clear: left; padding-bottom: 1.0em; } #imageData #bottomNavClose{ width: 66px; float: right; padding-bottom: 0.7em; outline: none;} #overlay{ position: absolute; top: 0; left: 0; z-index: 90; width: 100%; height: 500px; background-color: #000; } ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=armada.ico Content-Type: image/x-icon; name=armada.ico Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/armada.ico Content-Transfer-Encoding: Base64 AAABAAEAEBAAAAEACABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAvsfKAKqsrAAAAIAApqamAIaMmABne6cAa4CwAIKK ogBDX50ATGGAAEpijgBjcnwAAKXMAE5WawBaZnQAk5ynAGSDpwCKnK4AV3J6ABke IwBHYGcAPVlkABUXFwAsP0cAfZyoAFZ1gQBGWmMAEBAQADNETABDVl4ANklTAG2R nwBbfosANU9ZABccIQAyQksAQVtnAD1SXQCKpq8AAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAScBAAAAAAAAAAAA AAAAASUUJgEAAAAAAAAAAAAAASIjFBQkAQAAAAAAAAAAACAUDQ0NFCEAAAAAAAAA AAEeFBQNFBQfAQAAAAAAAAABFBQUDRQUFAEAAAAAAAAAARscDQ0UFB0BAAAAAAAA AAAZFBQNDRQaAAAAAAAAAAAAARYXFBQYAQAAAAAAAAAAAAAAExQVAAAAAAAAAAAA AAAAABAREgAAAAAAAAAAAAAAAQwNDg0PAQAAAAAAAAAAAQMJAwoDCwMBAAAAAAAA AAEFAwYDBwMIAAAAAAAAAAAAAAECAwQBAAAAAAAAAAAAAAAAAAEAAAAAAAAAAPx/ AAD4PwAA8B8AAPAfAADgDwAA4A8AAOAPAADwHwAA8B8AAPx/AAD8fwAA8B8AAOAP AADgHwAA+D8AAP7/AAA= ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=logo_ministerio.gif Content-Type: image/gif; name=logo_ministerio.gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/logo_ministerio.gif Content-Transfer-Encoding: Base64 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 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=logo_armada.gif Content-Type: image/gif; name=logo_armada.gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/logo_armada.gif Content-Transfer-Encoding: Base64 R0lGODlhIAA6APcAAEY3AufaBIh0A9LBA3xnAusMA+iICM5aBGhXAv/+AYt0I2ha JHJnI9OyAo1ICcqOCOmkDGo8BuvHAXEMFJ9rBY4lD7odH2saKKVZCk4UC6o2E412 RlxcXPbRAbMAJpMDHvvaAXltTFVJBU1JPrmrAzg2K7WbA5qECCQfDAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAAAgADoAAAj/AP8JHEiwoMGDCBMqXMiw ocOHEA8uCBGx4YINFRGKIKCAAQkSCkIuqFhCAAMFD0KaeHBCwQKUDE6KsNgg5IMF KHKewFAi54iaDB4wQKFQQYMRAk9w+HfhQoMGF4iieFDiHwoKDBKiMGEi54QHFAoU sCBBglgLFExE/RdhKEIUJyBYEHvAgNgCECDcPXDgLIUFVREucHDXgAS7BgJ00Gvg wQEPBT5MKIH0bQQHBywcgGCgroHPng9oqAAAQGWtESZo4PuZ8+fOoitkQHFaIYoS DjqnbfDggYkTOx0AoE3U4QgHyDHw5YvcQQTKxR2iADB7QoUIFSpMQDG79sMRCwSY /2gwYAAJEwRKcIj+EMUGCQkCkABOIkACEgwCtzcRIMAJAAQBcEIAEgigH0MlNJDA CcWhIAKAAqFQ3wkHamXCggNNpyFBA6a3EAoMBGACQTk5iEBBJAyQlUIjDBBAQQ6a cB4BJwoEgIgVFnRCAgQYhIJ8KQYwk0ACBDDSWwEMwJ5V/MU3AAHRoTAAhYIFIECA RcYHAgk1EkQACUfCuEEAEP6DgH3yLQjAkAGquKRVDZBA0JkkTBcAAiKwmeEABhpU wpQwCiTCfQi8+c98ObbYpZckYIjQCSZ490+LegpKwKAnJCQACZL+VOk/UALg6EGb SroACWxOB+pwoxokXqck9M4YYaYACLDjlQOJEN1vkpbw254zSZmAkgOZwCYJAkgK V50RxipokgQAKGWNUoqQ4z8MDFCmCAz+c2OmJwpYnAiRGlrCfATZ6iCgwzk4kADJ GoqCAMTO+tt8edLYIKqSDjQCsjqeBym8ZULaU0IlfMnedAIggGd0IjRg7UIlMetj lOhdC+MIXL2ZU4S/3daQg+J9KhACyNLWXsLn6RohAjIW2q9tJWzEla1cRatyRiP0 VFppt/WcUYY9j1C0xhXldPDQTDft9NNQRy311EwHBAA7 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=armada.gif Content-Type: image/gif; charset=UTF-8; name=armada.gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/shells/armada/images/armada.gif Content-Transfer-Encoding: Base64 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 aE2rWtfK1ra69a1wvUEEAAA7 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=ico_contacto.gif Content-Type: image/gif; name=ico_contacto.gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/ico_contacto.gif Content-Transfer-Encoding: Base64 R0lGODlhIAAgAMQfAPLz89LS0mhpaI2OjampqC9rp46uz1iIuezs7LLG23p7euXl 5f39/cXW5xRXnMXGxff391haWOvx9+Pr9IGBf/f6/HJzcfv7+15fXvDv752dmt7n 8WJjYv7+/v///////yH5BAEAAB8ALAAAAAAgACAAAAX/4CeKXmmeaFqO7Ke+sNe6 cY2ydn6ScMd0pU0DUPLpUoySxFAoHBrFo6kD9DQOjqyjYJAUqTZG0rPUmh3Pr416 SWC3zaaWOzl2ElmDsMFnFrQHdTYAAW4HFyhXDQZbBg8INggaFA9QHlUeCQUNbQkE FguDBBEWD0mYFQebkqShNQAEAhgcBEQnEw0JChgYCq4xGbECHBEDvyUPFhjDoDbB HALRAhQBJbDSw77OBNAWkxgWBA8Dy5OyFtU1wRgUGgrQsrPSAxrD6TGwCgMCEbMc /wAxRNBH4dgLBggIKLCgoKHDhwupQdCx4EGAixgzZsyQg0GGBRkQLBhJsuQCBCIr aoT5iFKkSZIIPi6YWIMBBJQZAACICQDCTgQAQsZEVKNDBZ1IARDt4DMpgDExOlyA QJXqmCpTq0KAGuPChQoQLmD6wmDq17EyVIgRk8LHDw9r0fI44QMMCiOXLnGVMUJK jRl+X8zoG9gEixAAOw== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=ico_mapa.gif Content-Type: image/gif; name=ico_mapa.gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/ico_mapa.gif Content-Transfer-Encoding: Base64 R0lGODlhIAAgAMQfAPv7+5OTk1SFtqenptjZ2OPj48jIx2NkYzRuqevr63V2dPPz 82uWwBdZnLKzsufu9FtcW7jM4fX4+/L2+kd8sqChoG5vboGDgd7f3vj4+IqrzdDQ 0Nfj7v7+/v///////yH5BAEAAB8ALAAAAAAgACAAAAX/4Cd+XmmeaFqOLKm+sNfG tDrCXSntvAR4nWDKhYswjkiGhgOsqR6ChnQqZeScqQelgRB4tw2GpIk1QbmCowAR ngjLJS36W/3BzWBqdXJvAjQIgRQUgQgRfWQdE4sJDxM7cFcvAwYqkjglBAMVnJwW F5udDglkmAUXF52cCqCqCgE/ly8GFgUAtwAZAQ64tw4KpE4bARkoFZUnwwulKUEJ GAQFyx4LBQTRsc/RC7IoBBcWChYBywPhCgqVGBfo49OzEBAHEBYYHRfy8xUeG/Hz tTEMHBh4oN49ghD29SsIQUGBGN/CueswoF06DwXQiSMXIwMBAxsMYCiRACTIZQA+ URoQaefFAgwFYhYolkAmBlLVZNqKkVPmj5oySWXQuRNGhgRIE3DrcDTpsqZJW1rC 9aZDrxxWc92icUVqCQCymA4hgsjGjbJmz6Jd0UItohYhAAA7 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=ico_enlaces.gif Content-Type: image/gif; name=ico_enlaces.gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/ico_enlaces.gif Content-Transfer-Encoding: Base64 R0lGODlhIAAgAMQfAPLz82eOtbnN4ausrY+PkMTU5P7+/o2ry+vs7OLk5Pr6+mRl ZiRdl3p6e7O6uyxknXKYv+bn6Njc40x8rDpvo62zs+fr6/z8+4CBgvb29vj4+ODg 4JGcpfDw8P///////yH5BAEAAB8ALAAAAAAgACAAAAX/4CeKXmmeaFqO7Ke+sNe6 cY2ydn6Sep9vg6BwOIj4TBEikYDJ+CQcZSXo0FwaFoPOsKk4vuBvhUDQYIy2S0HA Fqzf7osFgzinBYy8fp8/zDt2Ngd5EAIHFHwMEAkYgGgxF4MBWh4CDwwTmYoRjYE1 gwKUFxQPEBABm40NjzAGgwdIDw+ZE6kdBAg5gw8CFxGofItNAJSQBxAFEBwcBwWI l4oWBAo9EhoGEQsDWgXQDAEeTkceCg0OJhB6EOMnAxsmEgHy7z7FHhEAJh0bCQn5 RxdKXEjQoYSCCP0S5DqSIYOBDAg6KLjQAYFFBMSI9dDQAYDDCwAAdOxA0uE/HQoy N2gw8bChSwUPDcDMcWGmCQUTL9S8ILNnDgM8WeocyhOoAXsmaLCLwWOpChxOb7SI mnRGU3YsQgAAOw== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=ico_extranet.gif Content-Type: image/gif; name=ico_extranet.gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/ico_extranet.gif Content-Transfer-Encoding: Base64 R0lGODlhIAAgAPcAAPXPNt/g4srGr//pNfPQAf/eAJee4/v6+/X29vPz9a6sqP/W APvlWRwtzfLWMaes5vLPA/LPBVxmxNPY/P/pXdHR0c7Pz8zNzoKM5B4v0cqvDvz8 +//aANW9P8zNzP3jV//++fPz8/Dw8K+tp7Cuqf//+f/ZAK6sp62sp/3dMqGn5tLY +v/lV8zMzOTNS/7+/vXTB5mg4//lWf/oW+TMTf/kM/f4/tvb29/f38qvD//YAOXN TLCuqPrjWOLk59nHUsPK+rCVFLOxsaGBOdzGUfbaL8uvDsbGxP//+L+hD/n6//Hs 1dna3752HBQipubNTNnHg/LWNszIt/XOAP/qWbyiG+Li4uLj5efn4bWbHEBMs7m8 0f38+c/U9+/SM5+ky8CjDOrp49zd3/Py7vDw84eQ6Kqu3P/fMf/lAHmC1PLz9ta7 atmyBvHPAPn583qE5c3Nzv/qN////O/YUuPAE/zmWM+yFd7axvrjWc+wCxQkvcXF xfj4/snJytDR0v/iM9fY2f7//+3n0MCiGuro3dLDk/fTAkBN1vbUAPXUBvDLAN7B ItHT7t7e46+16Pf3+PjaM/veMvzbAMjIwZui3dXU0efQS7e96dbW1tXMp+/TL97U r+Xl5dTQvOfJIrmdE7idHaKp6aiqvMrN87y/35ui6cKWCuDISN7HderCC9fa+sPB wejo6u/v7Ni/Po6W6ezt8u3v+79+D/n36iEy0+jUk/TWMIuU5fzcMfbaN97g+P/f Mr+pELqsipuj5p2k5PDx9fDs2KuMQ6CERNG1Y4CJ5djY2p93RdC2A19r3fndOt3d 3fDNAMaqDMK4mfPPADA+2dra2XiC5H6H5G144cLH7P/qNfLNC+bOTNfBhThH0z9N 3fXv0/Py8OXHE//mWfP098zKu46HX7ikDPj39d/by8/Gphkq0s3IsMuxDvn5+sXN +ejn3xops//ZAZ+lz8XAoP/bAG10vMbGxrrB9bp5G8vLy///+vLcWOXPS/Dw8f/f AP/VAP/XAeXu9P///yH5BAAAAAAALAAAAAAgACAAAAj/AP0JFPivoMGDCBMWHMjQ n8KHEP81dBixIkKGFjMeJKix48E7RFzks7RjB7Ynp1x1WMmy5SkaNFz8KIfQU4EC bExJMgQBQoQIJjgIHUpUqIkCi7odhBEvUb1jdOxkGVQF1DV3/bJq3ZqVQ5tOBwno QCSrSapmeT4lARNkig5+cOMuiMuvHzMBB6OcieQFgLJckBwUseUAV4rDNQYoThzH 2p9dmqQcHAMCBJJggrjNKsG5ROXK1WL8MvAgBqUYjEC0anEwQcED2VARM/fwzTla r1SlcaKn1D8yrA2GKMil1hphzh5iyJDsn5tKWtqF+ifCw8Hh/+5BGTYkk/IG0uQc /wkjoYEK6taFG9zUq9AS5Rm0bcHyBVqG89Wv/8OxTEwABBBNs40E8rxTDDWH+IKe fjdUUIEFnCBwgELFmEGIPY0UNMoDC6pnBSY4zAPHHjcodIso7JBjUCyXdFiQa8YA YkEfcPihjkJlkBKNEjbYwIcujvyjT3oFgfMPLGowEYAPVwSiED1ArCDlBBOs08U/ wFxwED4syCADBRTMMMMHZJZJJhV1MNBDD3jgwcA3LMwRzkHP9EPXnXjmWZci6Cxl AleABsqVCQTgZZA3aBSwz6KMNuroo/uggcwkB8HDixEaZKqpBjls6mmmnaYzjjiu GfTIKiiQMAIKJ4xwQqsKrC86gqsj8MADCbiqKgQrEG3g66/A/vrCCxFR5FFGHB1b 7EDKQjRRswlNxCy0Eg0UEAA7 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=ico_es.gif Content-Type: image/gif; name=ico_es.gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/ico_es.gif Content-Transfer-Encoding: Base64 R0lGODlhEgANAJEAAPPz8/PUAMVHRwAAACH5BAAAAAAALAAAAAASAA0AAAIjhI+J wu0vDJxN0mmC3ryH7IUaKHpkyZ3oCFxY6z5WXCl2UgAAOw== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=ico_uk.gif Content-Type: image/gif; name=ico_uk.gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/ico_uk.gif Content-Transfer-Encoding: Base64 R0lGODlhEgANAJEAAEhoo/Pz8////8VHRyH5BAAAAAAALAAAAAASAA0AAAI3jI+J IDPCHGwPGBAfFRtfvEkSZgXcyUkoZzjuCzttTMvmuuFfFlZeAFIJfZeOcWTo8IIP hVNRAAA7 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=ico_fr.gif Content-Type: image/gif; name=ico_fr.gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/ico_fr.gif Content-Transfer-Encoding: Base64 R0lGODlhEgANAJEAAMVHR/////Pz80hooyH5BAAAAAAALAAAAAASAA0AAAItlI+J wx3/gJSmORgmFZbhrFXdpwGiRYbciJXnBbkr2qrdkE6vV+szHFEphogCADs= ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=dia-fuerzas-armadas.jpg Content-Type: image/jpeg; charset=utf-8; name=dia-fuerzas-armadas.jpg Content-Location: http://www.armada.mde.es/ArmadaPortal/ShowBinaryServlet?nodePath=/BEA%20Repository/Desktops/Portal/ArmadaEspannola/Pages/conocenos_actividades/dia-fuerzas-armadas-2010/dia-fuerzas-armadas-2010_es/img-01&maxWidth=200&maxHeight=1000 Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkS Ew8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJ CQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjL/wAARCACWAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6 Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx 8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD3 +sDUfFVrZ3Btoo2nuVbBiB28euTVf/hMYv8Anzf/AL7H+FeYeMtahv8AxBtCS24k KqWRvm5PatFSk2kzN1I20ParO/F1NNC0MkTxYzvGA2fQ96uV4/YRT6XoFpqun6vq 0weLd9nlufMjbnBwHBwfxxXWaR4r8jTIUuLa5eYjMhldc7u/TgCh07OydypTS1as dpRXMf8ACYxf8+b/APfY/wAKP+Exi/583/77H+FL2cuxPtYdzp6K5j/hMYv+fN/+ +x/hR/wmMX/Pm/8A32P8KPZy7B7WHc6eiuY/4TGL/nzf/vsf4Uf8JjF/z5v/AN9j /Cj2cuwe1h3OnormP+Exi/583/77H+FH/CYxf8+b/wDfY/wo9nLsHtYdzp6K5j/h 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 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=img2.jpg Content-Type: image/jpeg; charset=utf-8; name=img2.jpg Content-Location: http://www.armada.mde.es/ArmadaPortal/ShowBinaryServlet?nodePath=/BEA%20Repository/Desktops/Portal/ArmadaEspannola/Pages/conocenos_actividades/dia-fuerzas-armadas-2010/dia-fuerzas-armadas-2010_es/img-02&maxWidth=200&maxHeight=1000 Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkS Ew8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJ CQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjL/wAARCACGAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6 Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx 8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDr tJl1ORm/tFUA5AAXB7c5B9z+VTm4vo5WHkQvCG6iXDYz6Ypbe5eWUx+UVbGctwD/ ADp7XW24EJjJc+gOPzxivJl7RvWB6C5baMzvFV3qFnpwexijkXIMhcdBkY6H1rl0 1PXXjVhZWzAjIOT/AI10Oo6zZ3ljeWoJWZDs2vgc5qPT5rcWEIeRNwXBG4VpRknd WsU2uS61MQanrmeNPt/wc08ajrTDnSoDx/z1NWdJslsdXvZHaMW843IRIDznPQHI 61uie12sFlj9PvCuh2RmpvexzP27WD10iE/9tjU+leKZbIyvd2Qt4+fnUlxkdv1p /h22ksbi+Fy6hZJCyFpQ2Rub344xVm2MCWckNyCD54cYQtkdO1TJWdjSErxbaKNz 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 ULx9duaKKKjDRSpJIKjfMz//2Q== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename="El 'Principe de Asturias'.jpg" Content-Type: image/jpeg; charset=utf-8; name="El 'Principe de Asturias'.jpg" Content-Location: http://www.armada.mde.es/ArmadaPortal/ShowBinaryServlet?nodePath=/BEA%20Repository/Desktops/Portal/ArmadaEspannola/Pages/conocenos_actividades/dia-fuerzas-armadas-2010/dia-fuerzas-armadas-2010_es/img-03&maxWidth=200&maxHeight=1000 Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkS Ew8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJ CQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjL/wAARCACEAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6 Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx 8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwCP wzpUei6b9kMokdmLuw7/AE/DFbqlFyAQa49NXWdfMWHb5JD8y5z7Uv8Awl0v8Non /AmJq+W4rnbwOM49at/aBGw28j0rzlPFeoLJkCLbn7pWrkfjG43AvbRH6Eih02HM egwywmTeScnqKvF0deOBXn8HjCAxjzrd0fvtwRUi+NYVIBt5CPUEVLpsfOjtmyo+ XmgS+tciPGtvkYglx3JIqS38Y2kshEyNEuOD1/lRySDnR1hlHY03zSK5C68XRCLN qm584w/pVD/hL9QByUhI9Np/xpqm2HOj0FZWFK78849q85bxXqrDKuiA+iD+tXbb xlcC0lFxEjzDGwgYHvkUOmwU0dytxsIBqyL4qBkCvPz4tuHbIiixjgHOacfGeYxu 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 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename="Inauguracion expo estatica2.jpg" Content-Type: image/jpeg; charset=utf-8; name="Inauguracion expo estatica2.jpg" Content-Location: http://www.armada.mde.es/ArmadaPortal/ShowBinaryServlet?nodePath=/BEA%20Repository/Desktops/Portal/ArmadaEspannola/Pages/conocenos_actividades/dia-fuerzas-armadas-2010/dia-fuerzas-armadas-2010_es/img-04&maxWidth=200&maxHeight=1000 Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkS Ew8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJ CQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjL/wAARCACWAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6 Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx 8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD1 FYWgxJG4bHY1L9peQBTH81VQzYxmpMMsfmyEhF/iJwBXqNdzzU+xqxzM8OPLYHGD kURsVI6DFZQ1QxXQt3YKWTcpJA3Y6478VVHiDdbzTI1s+JCkQMwAfHpx19qwlGxq ppnULdAHLYpst1GAdvU1y0F9dGFFgjadAA8krv1zyQoxk46Z9sVqpA88YZTjI+63 UVEYReppzPYma4zkAilabNq4zztP8qrNZv8A3hn60028yxs2fl2nv7Vq1GxGolw5 lOT2qHbUOrtJp+my3XmRlkAOOvesKz8WwyqJJkKo7AIQOo7mr9tCD5WzKUG3c6QL TgtQz30IgnlhBkMKb2C1gw+LI726MVs0YVU3OTkkHOMY/GnKtFOzZHIzpDHTfLqe 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 QLnH4npRRRWiZB//2Q== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename="Bautismos de Mar en Ferrol.jpg" Content-Type: image/jpeg; charset=utf-8; name="Bautismos de Mar en Ferrol.jpg" Content-Location: http://www.armada.mde.es/ArmadaPortal/ShowBinaryServlet?nodePath=/BEA%20Repository/Desktops/Portal/ArmadaEspannola/Pages/conocenos_actividades/dia-fuerzas-armadas-2010/dia-fuerzas-armadas-2010_es/img-05&maxWidth=200&maxHeight=1000 Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkS Ew8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJ CQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjL/wAARCACEAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6 Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx 8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD1 GMGrSCoUWrCgjt+taGZKtOyaYM+tLn6UhjqM+lJzS9aADNLmkxRQAtGabmloAWjN JRQAuaM8UmaTNADqQ0wn3pAW/iNArjyaTdTT/kUZ9TzTAXd60ZFIT9aTPtz7c0CF yO1MJH900EnvxTcnPpTAaxDHp+dVpOc5NWGJwSRUMgyvKjmmBQlXrRU8kYIxjFFA F5B+FTKarKx/yakDc9MfjUjJ80u6qv2ld2M5pwmYkAKOaQFjNG73qHzDnG004M2O lAXJc+5ozUHngEjmgTp/eoC5PnPal6etReZzg/zrkfHuv/2TYRRC7mtfODnzYVyw IAwPYZPX2oGtTs80m8f/AK68o+Fvi7Uta1e/0+8umuLeGHfG8hy2d2Prgg/pXqeR +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 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename*=utf-8''Los%20m%EF%BF%BDs%20atrevidos.jpg Content-Type: image/jpeg; charset=utf-8; name*=utf-8''Los%20m%EF%BF%BDs%20atrevidos.jpg Content-Location: http://www.armada.mde.es/ArmadaPortal/ShowBinaryServlet?nodePath=/BEA%20Repository/Desktops/Portal/ArmadaEspannola/Pages/conocenos_actividades/dia-fuerzas-armadas-2010/dia-fuerzas-armadas-2010_es/img-06&maxWidth=200&maxHeight=1000 Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkS Ew8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJ CQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjL/wAARCACGAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6 Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx 8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDp LeEqB61qwZwM81ThU5IBq/CQqZfjA61hc2Rl+IdIfULVAE3YP3c4zXFzeEruBSYk bBz8rdvxr06NlnAkVmxjGM8GkkUbTxQpNKw+VPU8C12xkt0kWaNkkUdDVTwx4M1n xVdeTptqWRT+8mfiOP6n+nWvd7jwHF4qeFrwmK1Q5YqMPIP7oPYe9d7pek2Oj6fH ZafbR29vGOEQcfU+p9zRKpfRGdknqcD4T+GWm+DmivZjLfakP+WgJVE+gz+pr0aO NtuXOSe3pUV9dWdpbt9qcBWU/ID8zD2FYL6vf6pL9nsU8hTyCCN2PcnpWHs7u8nc u7asjoLm9tbFN1xOkYxwGPJ+g6msafxhZxEiGCaUf3uFB/PmoYvCkk0gkuZyW7nJ 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 na+njAEM0sYIXIVyBwoHb6UUUVNKKUEkE27n/9k= ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename="50 escolares.jpg" Content-Type: image/jpeg; charset=utf-8; name="50 escolares.jpg" Content-Location: http://www.armada.mde.es/ArmadaPortal/ShowBinaryServlet?nodePath=/BEA%20Repository/Desktops/Portal/ArmadaEspannola/Pages/conocenos_actividades/dia-fuerzas-armadas-2010/dia-fuerzas-armadas-2010_es/img-07&maxWidth=200&maxHeight=1000 Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkS Ew8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJ CQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjL/wAARCACEAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6 Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx 8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD2 lFCnA705oudw61J5YzmnhaYiFE2HI6GllhD4PcdKnAoxSAz5bXdudfvkYOazZ7KQ wqs0YmZWO07tvB7V0W0VQ1CFH2BkiP8AvnH9KBWH2TviQONqKOM9qteZEf8Alov/ AH1UUYCW0mOwNSgvgfIv/fX/ANagZUuoIbgg7lyP9qpoNkSbd6/nU3zf3F/76/8A rU0g94VP40AODoTgMpPsakX7jVWCAMT9lXJ7jFSqq+U+YMdOMDmgBRGGdSexqrqF nHcpIGHuOe9WURA64gxz6CmyKu5iIsHn5sCgDl9EW4jlmSZAsZbCvuzu+vAxXQGL dC+0gnBH41Rjt5Hs3ETbZCDtPoexrjvDGu6vdvrSXNxuEFs8kahFXD9c8D69aolH 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 GVrjggY/yOP5Ciiioofw0E/iZ//Z ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename="Ejercicio de ataque.jpg" Content-Type: image/jpeg; charset=utf-8; name="Ejercicio de ataque.jpg" Content-Location: http://www.armada.mde.es/ArmadaPortal/ShowBinaryServlet?nodePath=/BEA%20Repository/Desktops/Portal/ArmadaEspannola/Pages/conocenos_actividades/dia-fuerzas-armadas-2010/dia-fuerzas-armadas-2010_es/img-08&maxWidth=200&maxHeight=1000 Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkS Ew8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJ CQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjL/wAARCACWAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6 Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx 8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwCt L4y1xhg3Y/79J/hRJ4n1Y6UZDdDf5wXPlr0K59Pauv8A+FaaefvXtz+G3/CpD8Ot NFuYDdXJUuH5IzkAj0961uzOx50fEeqP1uev/TNf8K6j4eapc3fiCeOeXePs7EDa BzuX0rch+GWjnrcXPA/vD/Cruj+ENP0DUTd2ryl2Uxnec8Hn+lFwsV/E19dz38ek WhRN0fmySMMkDOAAK58W0HhuDz9nnyzSEFnYjGAPT6mtvVefGkYJ4+xg/wDjxql4 gm+y2MTiGGTMp/1qBscVm9WX0Mx/GMsTALZQ4xnO5ulNTxnejGbO2APQ7m5P51ZN 3BF4XbUn02zllWfysGIAYxntVO18SxMv/IHsFx0/d5osibsfJ42vEGFhtBkn+8eP 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 ilSilBJBJu5//9k= ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename="Los visitantes.jpg" Content-Type: image/jpeg; charset=utf-8; name="Los visitantes.jpg" Content-Location: http://www.armada.mde.es/ArmadaPortal/ShowBinaryServlet?nodePath=/BEA%20Repository/Desktops/Portal/ArmadaEspannola/Pages/conocenos_actividades/dia-fuerzas-armadas-2010/dia-fuerzas-armadas-2010_es/img-09&maxWidth=200&maxHeight=1000 Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkS Ew8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJ CQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjL/wAARCACFAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6 Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx 8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDa u/jIxAWw0OQ/7c8oAH4Cufv/AIj+J9QV4xLaWsbfwxxbv/Qq4uK/tpThZlz6E4qC 91eC2G2IiaU9FU8D6mudyky9C5fzebvn1C7LA8scKo/QVhSTy6kptLGLy7U8Mzcl vz6VRe6a6nElyHmx0VeFH0q7HqFyqhLe2jjHbqxp2sK9zY03T4rBPlyz4wTV8thS SQB6msBF1i56GQD/AGVC1ZTw5f3HMrfi7E1L8xryI7e7gt9avZJJQEZBgjnJ49Ks trkC/wCqilc+4wKTT/DrSapLa3EoAWPeNn4f41vw+G7CLG5S59zSbRSi2c02t3cn EUMafXLH+lQvFqOocSB3HoEAFdzFp1pD9yBB+FWRGq8KoH0FLmXQfJ3OEt/DF4+P 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 ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename="Los visitantes.jpg" Content-Type: image/jpeg; charset=utf-8; name="Los visitantes.jpg" Content-Location: http://www.armada.mde.es/ArmadaPortal/ShowBinaryServlet?nodePath=/BEA%20Repository/Desktops/Portal/ArmadaEspannola/Pages/conocenos_actividades/dia-fuerzas-armadas-2010/dia-fuerzas-armadas-2010_es/img-10&maxWidth=200&maxHeight=1000 Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkS Ew8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJ CQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjL/wAARCACEAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6 Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx 8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDo cfMPrVlazdNu2v8AT4rl0CM+cqO2CR/StNazmCJVFZusj5oT7GtNRWfrI+SE/X+l TDcZn2n3W+tWJxm1lH+wf5VBafxfWrMgzBJ/un+VKXxDWxi2A/1g9xUsg/0v/tn/ AFqHTnDmXacgECrDjN2v+4f51S+MOhRaNmnkwO9Agf0qbcEnlDcHNOE6AdzWqIZW eOTfGu3gn+lWhZEd6Z9pi+0wg5GW/oa0XiQO8qHavqVwapbEPczxCjHAkBPpThbo MhnUH61YS3w+9ETnoTUMy/vz9amUrbDSuQGIZIpkiLGhYnpTp1uPPYxzKq+hTNRO lxJGySXAZT1AQVZOg1f3kYfYynuCOlRsOcYpfJmUgG4YqO2KkO3Bz19adgbIQhIJ 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 YrXAAKjA/wD1cfyFFFFVQ/hoyqfEf//Z ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=Desfile.jpg Content-Type: image/jpeg; charset=utf-8; name=Desfile.jpg Content-Location: http://www.armada.mde.es/ArmadaPortal/ShowBinaryServlet?nodePath=/BEA%20Repository/Desktops/Portal/ArmadaEspannola/Pages/conocenos_actividades/dia-fuerzas-armadas-2010/dia-fuerzas-armadas-2010_es/img-11&maxWidth=200&maxHeight=1000 Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkS Ew8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJ CQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjL/wAARCACOAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6 Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx 8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDi GRCrFUZSRjBpmwoQFIyRzTjIdgUN37Guq+HVpDf+NLGC6RZIyHJDDuEJFRFamreh 0nw30i90Tx79leSMmTTFnlBUghX2kKPcHH617RXBWo2fGq6XJ50pev8AvLXczTpA qs2TudUGPUnA/nWsuljJklFLRUiOP8ZaeYdH1XUUJeZ7VoVHoGI3f+Ogfka8F1ax lt/sTSrsEoZ1yedudufzBr6I8T6mbSwkEmm/abchlcPMIwwIIPuevavGdetI9T8T 2USWS6aJ2jXy5BkAHHOOhHyn86U4XVxRkr2OWspp8S2aHIneOMAAcgHdRdWki6NZ Xh37Li6mCArwQAg4PetmTSorPXZFviqeTNK7rGuQxA4Cj0JYfgDWVq97J/Y+k2bM 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 K56dKUo8zNZVYp2P/9k= ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=Taller.jpg Content-Type: image/jpeg; charset=utf-8; name=Taller.jpg Content-Location: http://www.armada.mde.es/ArmadaPortal/ShowBinaryServlet?nodePath=/BEA%20Repository/Desktops/Portal/ArmadaEspannola/Pages/conocenos_actividades/dia-fuerzas-armadas-2010/dia-fuerzas-armadas-2010_es/img-12&maxWidth=200&maxHeight=1000 Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkS Ew8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJ CQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjL/wAARCAEKAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6 Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx 8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDg tqSSFhktjGB1odSFxjApiuDjaUU+gkp2yQncMt7A/wCFZEmdqaM9sTjlSP51g2pM VwwPU11F4C1rLgYYKeCPasNLOaV1khiyxGQMVS2CwxZGe2dQABk1c8I6z/Yevw3L j90wMcnHRT3/AJUyKzkClhgo5HPTHqOa3rXRITjbZhvdzRew0ibWJBO0rOSqmZmO FyfvE1maqge6tmAJzn/GtWe2VZI7aUcFsEZ9TWdqDA6kkQ+5CCSfwrWb9137E0Ve pFeZzdy4MshHdjWlpMyrA6lXOGDfKM1nC2muElkjjZljG9yB0Gev61a0q+ewuA6A FWGGUnrUNaDbvK5PqLxyvEfmQbAoG386mElsNMu4tz73kjZAORxuByfxFaWq6dqN 9EsmIhGq5ChiTz6cVShsrqG0uHuEaNWwRu7n6VCsirNuxji2Z4mwQoB6tW1p9u8d lGpKnDHkHirehwNNLOccggDPeuk/syWQbgiA9MY6/WqhOz1FOHQ5TULWVpbltpI3 Mc/jR9neeOJsHIQDiujvdMuXjlWKzZmkB+YOo5NS6do85hWO4tRFtUDe2GyfzrVz jfchRZyr2MoGdjkfSty4t9SbQ9KWxwMLIX3Ln+LA7H0rebRFZdquw9lGKgu/DVxc RQpFMF8sHkknOTmpdRW0D2bMO1h11DL57KR5bBMRn72OO1RAeI1PSI/8A/8ArVqn whqIJxdJ+ZqSLw3qMbD98mB/tkf0qOcfszl/FOm3V1r8khRifJgDELxnykz+tZS6 BdNgEOP+AGvVxphBLPtyQM/gAOtK1rHHGzFOFGSVXJ/+vScnctRVjzuy05re6ggI YkIzHjHerOpaH58kflo4aRgrMPmAHrXQefbnX0nxIIRblM+WfvbunStyOBJFDhTg 8jjmhtgrHCx+D5Iirecrgdc5Heiu++yoOqc+/NFCnJdQaRx8GgyyvteKRF92X/69 S/8ACLO8mMqi+pfJ/LitxPNBzuDfTFToZB948GpsBjR+FYFx5s8r/wCwDgGtCLSY YQFSAKBxgDFWwfnwSv65qZA390H6kCiwyidPtpRtltwwByAVBqyLeNeFUmp8t/Ep H+6M0plUcYf8j/SlYLmXe6VbykTfZ/OkyMKzYArh9XLLqF8zReVsTZt/rXpYdHPC kY45GP51wHjJGXULoqAQ2zJXnsKfSxpS+K/ZMq6No2r3WlP9kWNbe4yGZnwWA4I+ nFYV3ZTadeyW064kjbDAHqK9T8OSRQaBYpyP3QJHI5PJrnvHOmiby9Rh2kqNkoB5 x2P9Pyq1JvRmLilqjoNEWDU9KhuYlG0jaQf4SOMVek0Ozuf9aisfZq4Lwnro0+b7 HOf3EzZz/dbpn8eK9AR1eQRg/MRnGcn8qiUSlIdbaPbW+fJhRSep28mp/s6qcY/L ip4oVVM7cH/abFTeWSflYA+wpIZWEKsBtBx60vkcZ/pVkrx1UN+ZppZlGeQP9o4o ERLE2ck1IUdVxk49OlJ55zgbj7DpTcu3YL9eaYC8+pxUIlVpGRSWK9flJ/WpSm4e v+8aTYAcZyfYUAMYE+gPqetM2AnDEn61OQFGc4H0oyCCQvPq1AEaqqjHGKAu5ugA 9qfkHkkGmEjptH1oELwPQCim5LZwDx+FFMDP2Y56e/Wl+QnJUt7kUi+gU04bh1zi gBQQOQgz7GplBI+YcfXFRqoBGR+lSbgByoIHc0AB+Ve5/CmtMqpuZdoHfpWRqHiK 0s96gmRx0C+tcxf6/e6iSgzHGRjatIaTO6F9buABIhz0+euH8WnfqM6ICd0asDn0 /wD1VQS3dVV/O/75OSKbiXd8z7gOm45o3KT5Wdfo+p/arCKNwn2lV2uu0c471bls xcxOs0fyOCCN3UVjaDLpj7IbmQrNuBXnAz25rtBB7DH+1Rck8tj8OztemEBkCOQZ NpJI7ECu70WztdPjxh3lI+aSRfmPt14FazW4bpIPotNFsB/CPrQ3cLDxfKG4XafW pPtZcfMxPtTrbTmublIYVLO5AX612dl8PI8K17eMT3SIYH5n/ChagcSJVbOWVB6h eanUQ9dwZvVia9Ji8GaHEObQufVpG/oasr4Y0ZelhF+OT/M0+Vhc8tOTn5+PQUKu OAP0r1YaBpIGBp9vj/cFRSeGdHk+9Yxj/dJX+Rp8rFc8tbPYAn60nzH8u1ejXXgv TJkIhMsB7FW3D9ayJ/AtwnMF3HKPSRdn8s0rMZyGw9VUk+1RSLMedwx6Vu3vh7Ur RcvaMVH8cfzD9KzAhj+8TuzjnmgCn++248rI9elQ5k3AMrMa1GJPBI+uKQDbnJX8 6QFRI5epH5daKtOm85xgeuKKYjmxcM3Tgewp4ndeVLfjUI3d2/MVIu7sBQBIbuSN SzEYxXMarrcs6mJXwvI4revfLW1dmBGATXFPGAZHI78UmUkUWkO89Wb+VXrZBEPM JySMYI5pFtfLHmnp9KbLKVUsTRFXCTsJPOqLuY8egqGCCW8ILEqp6L0z+NPs7KS9 bz2PyqflU1vWlofLZtnKjOO+KU520Q4QvqynDp9sjbZIe3XJyK7nSru3ktY4ppHM kYC/Oc7gK5p5F8vJB3L6dCKbHMY3VkbGeVx2qFJmjijuHus8RoAPUiq5fJJbOc9q rWt0s0CszDd3qfcp47VaZk9C1ZahLY3kdxESSh6N3r0nTPGGnXcSiScRSY5V+P8A 61eVkf5FOVwMdKpOxLR7dFe28yho5o3B/usDUwdSM54rwzTNZimmltluAlxE5Vo9 2D14I9eK6GHULuP7txJ/31Wtibnqe4etG4eteew6/qKjBmLf7xP+NS/8JBqP/PXH 5/40+VhzHeb19RSGRfUVwD67qR6XLD6CqkuvagMlrt/rxRysXMejNPEOrD6CuI8Z S6dmOQIguQ2G28MR7/8A165N/FMuoXk9nFqEkkkQBkAc4Ge36VXIBYs5JP51E7LQ palg3CnAQlQe7U8bMZ8xCT13c1nyAn7rbfwoIZzjd+FZlFtmZiRGAMdXHFFVD8g6 j86KYjLCgHgc/lTsygcEfiKcI2PoPpQAV6n/AL6oAzdamb+yJwF5GMsM+orFkt0l gVgOCM/X0ro72L7TZzREfeU81yFpelFMT9FqWrlxdiS6lKS7ExharWVub6/RCMxK cn3rWutNQaZ9rDMZ26ofTtU2lQx26LlcHbgkevrVX93Qlayuy9bWMaKRtAGO1Syf LHHx0PX1FSIwMQx97GCKWQL5QHoc5rGzN7oqNEoDKR+I71mOo3snPHK46VryxsY9 ynpxWaQ3mk4wDnFNAy3pd95cqK+cE4aukz8+FJwOw71yFuhEyHHUkn2rrYsFFYgA kDof6VUTOY/nvjFLwB0zS7seq/rQuwtkEE9+aog858QxFfE8gb5Q7IQenBA5rRs9 S1e3jC21/cK4Qt5cpDgc4x82ak8T2IvdZyGKBYF69jk1jpYarBj7OWlRDkeW2cfh Tbf2XYFHujp4vF2uxYG6yn+8OUZSdvXpgVoxePLyHP2zS1+UkEpKB0x6/UVwnm38 B/eWzjAI+ZCOpyabNqk8ilZIs5GM8g9afNUT6MTjA7yT4kwZ8tNLmMhGQDIPTNcv rXj3UNRjeCCJLWNsglTl8fXtWEbmYyeZHb4fAGcE9P8A9VMsLUz6rDHMnylwXX2z Wim+pHJ2Ow8C2M8FtcXcq4jn2+XnqcZya6os2MKDn61FHsKiOLCqgwAOMCpQoHX+ VZN3LQgG3qQT3oYleRx7YoOzPqfamDPUduKQxBkj5z830wKKTerEgYOOvtRTEU+S MZ/AUDgjIIB705S38Q/AVKpHdeKBke045H61xp06FNRlLhpF3nCo2OM+tdsxURtt HGM88VycTojjzTtyOtCQmzeRrW4sTb2jbLgoUxITnBznqeTWHLbXOnqTkuv8Q/wr ShspJIFnhYSL2K9R+VSTTefGA33iMH6+v41SSJu0Y51M+WFU54BU0+PUZVkAb5gx 6VRlsZpNRWO3jLbz0HY12el+FATHJccyenYVjN2OmnHmRkT3LwyKETcHXn6+lQG5 XzhE0f7zO012Go22l6ZHunliUjkL1P5Vz0lvBcObhYJAMkqTxUps05Fcr26Pc3gj ROO5HYV0gVlXnBwPpVHTV8mAkY3E7jkfpV9Hkc5Ixn2zitImFTewm8BgzKQCOe9S rslHysp9gc0AbVJHPfA5NPgtmuZQiQl5GOFULkmmQYOo2S3N9LG64DRLjjrya5+G yuLa5f8AeLbsudrISCfwPFd94h0e40K40+S6UJ56t8mc7cEfrzUM2owLEEREaXqP as23GR1U4xnHUyNIFzeW8xucEpySVFZE+r35mMEMKBASN4iz+tdhaQ/8S+4diN7g ZqlZW1jcO0F1GAyn5Wzgn8amMtTWVO6tc5JZLu9k2NKZAPvBosYqxpVkJNa3bR8p Xn6En+ldJqtva2EBFuoXd75JrR8K+Ho7zRmvQ7RXLyNtYjIKjj+eea0heT0MKlob h5fdcf40xixOMADuRU91bXlrIYrhNmOmR94eoPeqpkwQCp49DV2OcQorAgMcUhbb 7ClOxvvHB9TxQ2XIAHA9qAIy/mEjoKKXygxwetFAFZlVhyPzOakXkAg5+lMJx1/S ky2OOPSkA6Vd0TBuOPTpXn+syNHqzKcBYQoCOpG4ADmvQFZy3JH5Vma9oyana7wV SaPlZO30NNMTRzOn6rLZFpYh9ndV3tGz/u5hnoox6HpntW2+oQaikNxCAhY4ZB9K 4QzSJvjDcH5SMcVs6W7W0ewDlcOJA2VOe2MdR/jVk2N9Lk2t/HMMgowJ/rXoCB7u 1BjcqrDsOa8wluJr+6UyNlieSBjj6CvQdO1EW9tGr9h1rnrP3tDtwsbwdzFu/Dxj uzNK8rDOf3jZ/IdK3ba0ilhUsuVYYyvpWZqmrm/uPJQMYx94qM8Vgarqs08v2eyn lt4kG1ghwWNSlKRvKcKXQ6loI7eZ0i5H54qRQGYLnJziuBjmmtSZmnkL/wB5nOfz rsNN8V6PBp0LX0LtIgIdyB8x9RWrTiu5yaVJtvQ7G00PSrbTm1LW9Tit4FJHlq4D cdue/sB3rovA+r6Jq2n3Vxo1mYIoZ/JzJzI/AOT1wOeme1efavFo3inRw9kW3A5R gTgH3qr8L/E1h4d1zUtOvGMMEwUJnLZlVsY/HcfyqqU1LS2oqtLl95PQ9D+Imiya to32mMZltMyqPVcfMPrwD+FeQCJ42aaHD8DKnqfoa+hIrlL+1EkaMqEEAN1rxLxF ax6T4ingCbIX+dVHRck9PxFOrB25gozs7Mx11Ke3tyiySRo3RZF5H+NRwSTXAIjD nBy0jfL+VaQhtnGfP464qpcXMcWVQjaP1rHfZHRJpdQMVxfXkFnvDyuwTd2Ge9ey +H9LjtdMhtIv+WK4HH3vX8zXnvgPTGuryXUpEOxPkiz3Y9T+XH4mvYdLtxFbhiOW rqprljc4qkuaRFc6VaahaiG4gVlK/ip9j2rgvEPhqXRlNxGGmtP7wXJT2OP513ev a9ZeG9GuNSv22RR8KgI3SN2Vfc1neD/GGn+NdKaWFBFcRnbPbMwJX391PrQ1zak3 seXczP8AMNoHOKkMSdlx+Ndf4u8LR2Ya+sYwsB/1kaj7nuPb/P04vyG6pI64rNqw xXiPZjxRURE3m8MpYD0xRSAiR8dgfoMU/cuADxTCCtR8k9c80hljcqjgZ+tV5wZI JEzyykUgZg2Og9alVSVLCPIXqaAORHh+zmFpPA5ErIDsPIYgDJ/zxT5tPaJd5s5X +bB8oEH645H5Gq+piXR9eubWC5bEEjIGUkAc8gfjmrUHiO/RQZo0nj6ZxtP5j/Cr dOXQcHFkhdLa1MkemTgqCSznaRj3p0eq6j9kVntEMbjKgPyAenFSS6/ZXNrJE8cs TOpHQEc1SGq2qpEQWLKACmOuKh05dUaqok9JF611aKPK3EckDt3IrnkucuWY5JOc 1BPPPqNy0zRsRy5I/hT29KdcRxjzWt5d/l8qcY3r7+hxz+fpVxhZGU6jkzsvD3/C PXFm66sgM/mAKZHKrtx2xgZron8PeBtQtVWBITJ28u5bOfpurB0vxbd+F9MtbG+0 YqhXfFlgDIDz/nmu6hFtrFmJP7AgIPJby42H19T+Vc1Ru9zthGLikvyINB8O6dpN qYLfzGWVtx8yTJH6VoWHhTTRfXV81tE135iqjEbsAgYPseD09KfaC0hk2x2zREDG 0xlfyFSaJfbta1JYlaZVRCq5xgjI/qaKDfOKulyHb2cYSAL6V5x8VdGb7Pb6rAvM T7JOP4W/+uB+ddvFcag0qZMUUW4BsDPH41Y1zTU1bSbi0YDEi4Hseo/Wu6SurHDF 6nzeZCCBzz71f0PSbnXdUisrdcM3LvjO1R3p0unP9qMaLls4x3+le2+DPCsXh3S1 3qrXsoDTP7/3R7CsIq7N5vlRZ0rQ4NKs4LSFRhABWlqk8un6LdXUEDzywRNIkUfV yBnFW40G4setFwoa3dSMgjFbN9DnPl7xN4vu/FuoSz6uCkcK4gto2KiM5AIGe57k 88VF4M1S60nVJbyxkMU0YBXuCM8g+oIrufiZ8P8Aar63pcfz5LXEKj7w/vD39fX6 9fN/D5xdXA9YT/MVFW6i2jswfLOtCElpqfTHh/X7XxXpMhCKkwzHPATnYfX3B7H6 +lee+JNObSNQeBciN13Rt7en4Vi+HJtYtvElm+jYMxn2yox+VosDdu9un44r0TxM q60iwJbfvcGWJj1x6fjj+VKDdSFycZQWHrOmnoecxtsTGSM/3hiipAQyZAI+ooqb nOUw29clWA96WOPe21M56YBpNzZxux9KemEyUOG9u9IC1DZgN+8APsKqeI7wWelm KMhXl+QY4wO/+H41PHdupIYBvfvXLaxcyajqpTPyqdij09a0pq8rvZD5XLRbsz49 Pkvw0rsQSSdx5LGoGsLq2YlQwx3Q11EEASNUQcAV6l4R8ERWsUOqX6iSUqHjQjhP qO9Z+1lUnpse1icDh8JQTk3z+Xf/ACPAN8jfK4U57kYNC273ckUEECCQDkrn5sDJ JycflX0T4y8Eabr+lXFxBHb2l399rjyx8uOuT6ev5/XwPXLKwi1MppkktxCnBeT/ AJaN7AYOK6FGTWh4UpXfvGVHqlzF5trFJJEkkYRxG2N2FAIP61reHtOfUtWs7ZV+ WZ9rk+mDn9M1l3FldafdgXsHlSnp7ivSPB+hta6fa6wX3SSH92p6KCP6isKs+VGt Km5SsyzrOnLqXxB0vTXiWWC2tzNKrLlcc4/UCsWfxPqmheJrqx0sKbZ5Skdufuqe hx6DPNdrp86W/iLVb2UZkkSKJTjoAucf+PD8q4nwtps2p+LbzWLon7PBNI+OuC2Q Bn6H+VYxas79DplzXSXVm9aeMprnzYpowk8L7ZFD7ufUe1aPhK/Y6/LIxA89CMD1 yDXlM9/HF4svLuNg0TTkFcDlc9a9B0+ZYL+1nQjarKePT/8AVVqPJJMzc+dNHr0B EpIPIPP6VfhJB8tjnjIPqKxtOn+aMn12mtp1JUFThlOQa62cpxuieFdnjLUb+dP3 EExMKnoWb5s/QBh+P0rtJrmO3A3ZLHhVHU1G87OzRwbWkBwzHop/qaryxm2QuWLz udoZv88CpUUOUnLcjZMyb4HeErkuUP3mP6cVPFPdMjRy7JACMuPlOOO1RDAVUXov 60ouFjeQNwCm7P0qrCLMkaSKQygrjGDXmviL4Yu2t/2roqRqLjKTwMdqjP8AEP6i vSGmSK2V5G4xmq7XT3ICjzYYj/EF5P8AhScbqxcJyhJSjujF0Tw7baLEbWIiS6kA NzPjBI7KPQVYhkW5192X7qJsB+n/AOurN3NFa27Q23ylvvN3qDRLYhmlx1Jq0klo ROTk+aTu2cF4r07+zdakWMAQyASIMdPX9c0V0/xBsN+nQXwX5oX2k+zf/XAornkr MdzzXBHBGaTaqqDjjPpzUccr/wAQzU4dW+8cD0qRkMrlASifKELEn+Vc5YZmuy7d QCfzrpL3cLKXywC4XgevtXIRzMjM0ZK7uuDWtOLlGSR0UKtOlKFSWtnt+R33hax/ tDX7K3PKmQFvoOa92f8AdRjYvyqOg9K+WtP1vUtLu1ubK6kjmUYDDB/nXQD4heL7 hdn9ovnGM+Sg/XbRCh7NatG2NxUsbUTpxdkibxx45udZv7jT7OSW301HKmLOPMYH qfb2rjI43lfag59fSmyxXMmoFrhy8krEvITkk9cn3rbgjRIdqrirqYiMI2iPBZXU rTftNEvvLmoadJ4isLSSK6SW5hj2yQSNtJP97mum0u/ii0S10+UnfbhQ7f3sdxXF 6vbX1joCaoqvCjOI4pBwS3t7YBrK8P65f3N8ltKfMY5w544964JRk4XZrWVKlXcI O56zcSQTbTBKqllwSP4venahLaaVobQWixRu6/wKBljxuPvWDbiZMFxge1ZviS+k t9PeRQcqOC3c1lDV2Inojil0VxeP9mV51L7VYjvnv7V2unW0lnYRxTurSA5O3oPp Wd4dKvahgc7ufxrUmc7gvfNdEpN6HNCCXvHrWmRB7KGfcQxRW6+2fStq5ZpI0jVm XceSvXFcxpusWVrYwxvI2VjUYCE9vatu2uvtMUMkbEArknbnFdvQ5S5ZRRwKUj4A OCD/ADqvdSSTz7ohuRPlUjpnuf8APvSPMYmlIVmHB+gI7irkDR+QgAVuM5HfPekB TiDI2GOc85ptwP3mccFDWg6R5BHDH1Of51HcxqsBkfACDORxRcCvZ2002yeUgnqi joo/xrQljlKYRRn1qtZsqhHJ2/L0zVxp1ZcbsUO4GTLpriPkgux5yw4FW45rPT7c B5UBHYHJqSS3Eg4fNZ8mn25O6R6e4jl/Hmt/a9IWGI7YjMuffgmisvxzdW7yQWNq qhY8yOw7noP60VlLfQZxoPXaB9DRsbvnPoKeiYYev0pW8xZF+6EHXPX8KzGEa7FP YN1zzXPRWEUUsiOCWVjgHpiuhZ92MGptO0I6zqsdvHMsTuOWcdRQ3JK0TswMqMKt 6yujFWGPb8iKCPQYpFhedtiROX7bQT/KvWbD4XWEe2S5u5ZT3VRgV1ljoOk6egSC xiQjuVyT+NQqUnuz16ub0Yq1KN/wR4vZ/D7XNTRJjCIUyCJH4OPpXUeFvh/+/aTW 4ztDfJEG4b3Negapfafo9s1ze3cNtEOhc8n2A7n2FchB8TPDqWE1zJdOvlSsEiZf 3jjqMAduccmtlRW55dTMq87q9r9ibxnZeHYdClstaP2fTsjyjEPmRu23g89f1rgf DXhzS4g91YxXBil/1b3JBcr2OAMDPpz9aoar4m1H4g60lq/7rT0feIUHCAdyepbB x+NegWNqkECqqhVUYAHYVji52SgtzPCwu3NjIrKONDvUYHrXI67YN4j1pNOsnRIY FzM56ZPb9K3fEGsC1gZIsmQjChepNVNB0250SwuNT1JwhmHmsD1RVznP51nh6d3c 3q1OSLknr0OKs4n0TUrzTZGyYJPlJ4yp5BrTE4kdT78kdqw9S1yHXfE0l1FB5Mbp sUE8tjufetvTbqKS2awmCI5IMb4xuPbPvW8oL2lmckZP2d0ddaJLIg3NtTH4mup0 a8MEKqjYDKOeTivPUkubdFWR3wOMA8Yrs9EkjMEIMnBQfX8a6DnOja7/AHUr7iJF TBPqO39azLW6ntZdqTEJjleo/I9PwqW6YxQzBsfc4b1Gaz7mRYpMlhyopgb8WsFm XzIY3GR8wJXH86viRb9zC8bLHjnoQa5BblPKI3qMDIO6r9h4w0i0tsTXObgdUWNj +oGKl2Wo0m9jqP7PU872P6UhsVHQtn61y3/Cx7TzcC0cx55bP9MV0uka3Z6zD5ls 5yOqnqKhVL7MqUJR3Q8W8sfKyfL/ALVYt4u2ZlV8/Q5Fb1+xESoCMse/pXMandR2 olkJ4RCfTJ9BWqelzM4LW1e41SZ1xsU4Hpx/9fNFMkkJJY8nPXPU0Vg2UZCyjGNo z39P1pA/mMcknBzn/wCvSKCRgrxQPlP+NSA9Qc8DnPpz/wDXrR0a7Fhq9pcudsay DcT0APBP/wBeqEZL/wAOAT35Bp7IXBV+ckdf8e9Az0+8+JHhjTQ3/Ex+0OP+Wduh fP48D9a43WvjJdTo0WkWCW4PAmnO9vqF6D9a8vaJlmeMAllYrgVYisZ5MDbtB9et dlqcNZMVOlWq/BG4alqt/q1211f3LzzN1Z/5AdAKoHTrq7njjhjJaXgf4n2rq9P8 NtKQ7AgD+Jv8K6bRdKhike4C9yik+g/+vXLXxiWkDtpYKMVeo7vy/wAxnhrQYtJt FQcyNy7Hua3L68W1gIyBxSSTJbg89K5u7vIry8IuJlhs4/mnlY4Cr6fU9BXnxUpy 82bzkoR02NrRbJLlhqFxHulY5hB/hX1/GqvxRu4rTw1DZpdxi6mceZCCCxTryOwy BXJa38Qrm4ka00VfslmPlEmP3jj1/wBkfrXKDdcTAyMWJOSSc5r14U/Zxv2PMV61 RRW7IoIjbTQTn/noOPaupjsHu2GZY4ufXJqKHQX1DRb+72nEERdPcrgk/lV6y1jT re2gMUBXgE7iM571x1W5e8z0JU6dOo6cdlb7zVmScQRI12XZf4jH1/Gltr29sGys kcsfdeQapza4+qyC2tbYgZyZDkgfkKlniS1teZC8mOeMVPtZrcj2MHsdCPFha3ET 20jcYwSP51lXmo3U8u6CPyFPbduzWLDcgoyswDA9KuJcARgd6Uq8wjh4DmE8hzPK zH0NOQBBye2KrSXQHygiq016Om6sXJy3NoxjHY02uUjGc0y38U3WhXQu7GVRIBhl cZVx6Ef4c1z899wctVHyLnUGxGmE7u3A/wDr1UIyvdEVJx5bM9a0X4qwa7cGC8tG tZ1TiSM74+vJ9R9Oaf4h1G3ntI47SRZfMPJBrz/TLFdNjKrlnfmRjxx6VsB8qSMc 9fYV28ztY852voPMgVQF44wuaKgMm9MuhTPY9hRUgVA465p4HmAjvUSKxwSuG/2a n+6RnB+lIBy/Kcsdp7+v5Uhkwx5O0j9P6VG7FlwfvdOvT6GlRWBBJ3Njk9/xoAQW cDPvIPzHPsfy5H40RQRW96rMCEflQen4HvUrAgDAO71H071T1IuLTeHCvGQ6se59 P1xUuKasdEa9STSbujrVmUW/y44HGKSG8W1sljzyBz9a5+w1Fbm3BVsN0Kk9KnnG yEySvgfWuLl1O53Q3U9YCQyOzAACvNr68l1G9Z+SM4Ue1bOsXYu3MSk7M84NM0/T JJWAjiJY9FUZJrrpNU1e2oLBzr2cnaJWstMLANKcewrUg0/zrqG2t0+d2wK7DSfA GqXiK0wjtUP/AD1PP5V0o8NaZ4Xha9kn3vGm55XGAo74rT95UfvbG86uDwsLUdZd /wDg/wCRxHizUhoGkro1k4EsqFJWHUR4wf8Avo5/KsjTofD9pZxSSP8AaJ2UFgck g4z0H5dKybuY65rV1eyZEbyFgD6dh+Vb+mXxsbeJLWwNxI2Mlf4ck9aqrb4V0PPp U5KPtp/a2NyDWjPZiKz0+4cbcfJCVH5msS8WeBC906iYjCxA5x9a3Y73V/II8iKI AnJeT+grk72U3N47NIHfPzEdPoK5Ui27DYLhIWLSHgnNaEMFzqTt9imt2A5K+Z8w /DFZy2LT8CnR2s+nzpdW0hEqc+xHcGqXLf3iJc9vdNX/AIR7UX+/LED/AL3/ANap YvCju2Z7o49EFdFoNyNdhYxxsHjxvU9ifQ9+hrp7XQGOCxAFdcacN0jklUns2cJD 4csLQhzE0rDu/P6VTvriJbwxiMoEH3SOtemzaNGqY/WuA8Twg6msYQKqx4Q/3hk5 P+fSqkkloZ6t6mas6Dvn19zV1XXaSze5z/KssQDIPTnCgdDVtXaFVDLkA+vesiid 5VAYlunLEUVQnuQyhQcknnPWigRYWQyJnYE5+8CDj61IAMA56/keP0qsspAGSCPV T0qYEOMjA9Qf61Ix+FJx+n+FPI2xnaN5/hHTBqOP5SVYDnoD3qTO7j8h3+goAVSy oN+zcOu09/f1rL1vJ0uYg88Hj6jrV52C43HJJwB3B/rVe4hLwShhvbaflHbimnZ3 HFXaRe8MeD08QaQmoWOomKZTsljZc7WH07d617r4bavOm3+2ISP90iuP8K+I28J6 k9ztkls5UKyxIeQeoI/z3rtE+L+jEEyWeoA9gAhH/oVVGEZapHVXq16UuWo9fkVd O+GAinBvbzzQD9yEYz+Jr0Cw0ODSrUmG3hgRRlpHwMD3NcDffGaBEI0rSf3pHEly QMf8BX/GuA1rxbq/iCYvqF9JIhORCDiMfRelaxpfI56uJqVNJO567qvxH0HR2aK3 dtQnHUwgbM/7x4/LNea+K/HmoeKIhaeQltbFslFYsX9Mn0/CuYCSyLuVcD1PSt/w t4XudbvlWMHywcvIRwoonKMNI6s0oYaVT36mke5N4f8AD9xqQEUQKxD5ppccKP8A GpbqZ7Z5WtZNiozRAem04r0nWHsPCHhW42bVCL5aA8GR8dPxNeP3c0lrokbu2ZZD 5jZ77mz/AFrJQsncvE4t1ZLl0itiSC/uLq13SyuWyQ654BFV4V2XTjPDfMM1Bavh JvTzW6VKTnnOCOhqXHSyMIzfNdnRWgEcYzzT7h4l5JFZ9rPI6KVTK49ealEe9CXk 3AHH5/8A6q5uVncpJI7L4f6lBDcPp0yhGmYtC/8Ae9vrXqEUQArxPT7O+uW0+9s4 mdluFBwOjqQc/Qj9Qa9ziQiIFhg46V20721OGra+hRuo/lNeZ+L4VXU0Zl+Uptzj oAc/1r1K5HymvOvGifvICSACxBNVLYzOUjVGBftjCgnOKQ/JkgnjoD1NObDnHQng EVXmfcTGpyB3I/nWQyrI+5yCMY7UU8ISo3EH36iigRIjcg7se4HFS4AOUwpx07fU 1DwRxx7/AOFSpjAGMgD7p/nSGSeftYB1JBzwe/v7CnSzbRtjO5m/8dHt7VUlmDrs U7lPVj1NJEpKnacevHWgCygZjkks/ds8ge1LwMDJI6gjg1HHJtwjjnsPSi4MvkFo drt/ezigAn0BdTgeSzKm6UHfF03j1Hv7VyMumNFIyMzI6nBVl5FddaG5tESVXP2h TuBPTPofaulsv+Ee8VxFplVLpRiRGOJEP4dR701daxdjqp4iDSjXjzJfeeVLp5JG 6QD6CrcVrBFjCbm9+a9MXwFpDS5S4mZfTNbdh4W0bT8MsUBcfxSHefypSVSW8jsh isFR1pwuzzXSvDWp6zKvlWT+VkDzH+VQK9ZsE07wxogMjxwwxLuklbjcfWq+q+Ld B0SykaS+ieVFwsUZDOT6BR0/HFeK+IfEt94guy87ssAP7q3B+VB6n1PvWlOklqcW KxtTEaPRdi74s8Ry+LNdXy962MJxEh9O7Eep/liud8R3/mTRQA85DFR29BViCaOw 0p7ybjcxx6tjjH55rmyZJrn7TLzJI27HoKqbOQ6K1fdEWz95yf1qYuD2NZsEu1VT 2q2HwffHFZjO78KeHp5LeO+mICSnKKeoXpn8a7Ww8JWdveSOY1aKUYKNyBU2hJFP o1hNbgeV5CAAduK6C2XdHt7rWqSC7LOladb2MIjgiVFHYCtXtUFuvyCrB4FMCndd DXnXjmVY0g3Hq5/lXod03Bry7x+7G5tRj5fn2n1PH+fxpS2Eco0wxkJjPpTVfa+P UYHbFQtjIGDgfiKXeTyenv0rEZYYc5Hbpng0VFuTqCVA6emaKAJSAg3b1Yeo7VHI +8AA4Uc/WmoPM+aRgoXpjvUsUO4gv1/h9KQCLFuUFjx7VZ249MjjNNAAPZfejcMj gg9h60AMkUFeRnmo0aSNjkEcdewp8hc5CkBgOQfWnqq4GR9FbvQBMkiNhgQM/wDj 34VheILRNq3EQKS8Byp4Pv8AyrY2Lk4PzfXpWfdqrwyx8hQpHPSqi7MGYlvrOuWa 4t9QvVTsFlYj+dX9G1qeTVVOrSyXUTDGLli6A/Q1z7P5cmUyOc0x5t7feJx61tdi 5oW6mjrHlDV7gxSwmNmLL5RBAB7YHT6VWXJXGCoP5n3NU9zCX5RVlGweTk+gNN3e 5PPZWSsVNVmkme1tcHZHl+ehyf8AP51E6YwcdD82ferNzGWdJVx8oI596YFyMfwj jB71lLcIvQkhVVJ9+gNW4SAeeB6kZqjEzbvLyAewb+VaaBRtH3QOoPQ1JR6Z8NfE G0SaVMcIAZImzkKMgEfma9LRSsysOh9K+ddPv59Lv4ru1YJOvQHlSPSvcdB12DUL GCdHXZIudueUbuPpWkH0BnYw8LTmaqCXkaoPnH51FJqUYUnzF/OqAkuiXbavWvMf iFcx/bLO2jblEZyexLHH/stdlfatGkTs8ipDgscnlgO59B7V45q+oz6nrM12ZAY3 bCg/wr2qZvSwIYSFHQCkD54HQikznkkEdyDT3mtxB5ARBdB+V2jjv+eO3WuWpV5L abmsIc19bCs2ABj8BRUecnPp0orUyMBZHHSSTP8Avmn+dLniWTHf5zUI4Bpw+8K6 LIxux5lkIx5jkem40ebJ/wA9ZP8Avs8U0/eNIeCKLILsf5spHMkhHpvNL5sv/PWT 67zxTB980p4Ix60WQXYGaUjHmyEeu81HPI/2dwZHIIx940L96orn/VN9adkF2UCo I7/mab5a+/5mnfxUetVZEXY3aPf8zTwABxkfiab3pw60WC7FKhl5zj6mmbFx0J9O TU3ao6TSGmxPKBGOfxJqVRuTaSeOxJpB9yl/jT6UrIq7Hfi2fQsau2F7e2fFvJOI 85wjN16Zql/Ca39GkkTT4grsB554B/2TSdkNNsvz6vd/aGjt7y7dB0JkY56Z/DNP uLy8hhhIu7tpGBLqXYAc8fz/AM5qCGR2aNi7FhajBJ55xRZMXtAGJYYC4PPG4DH5 UXHYp3t7eXUMkLS3RkDDKEsdy85/IgVTt7diHMzTx5jLRYz87dhW5ckrPAwOCRjI 9MtUqk74OT94n8Soz/M/maTA5u2leG5heQyBVdWOSeRn0qwrOLK2tjcNviujM+B9 7kYYnuOvP4e1LrH/AB+J/wBclqgWYDbuO30zxWNaip2ZUZuNxxdiSQ74J6bjRTTR W9kZ3Z//2Q== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=Homenaje.jpg Content-Type: image/jpeg; charset=utf-8; name=Homenaje.jpg Content-Location: http://www.armada.mde.es/ArmadaPortal/ShowBinaryServlet?nodePath=/BEA%20Repository/Desktops/Portal/ArmadaEspannola/Pages/conocenos_actividades/dia-fuerzas-armadas-2010/dia-fuerzas-armadas-2010_es/img-13&maxWidth=200&maxHeight=1000 Content-Transfer-Encoding: Base64 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkS Ew8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJ CQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjL/wAARCACFAMgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEA AAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6 Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZ mqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx 8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hp anN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwCW xVbH9oVI3OA4Cj8bcV7wOBXhuvx7P2hdM2jBLQZx3+Wva4LmK7t/NgcMoJU47EHB H1BFU9kSTN7VBITjGKeH9ap6hqMVlGeDJOVLJCn33x1wKQx7MRwabuyK8q1D4l31 tfsjBQ8YaNkZSobP3SQejKeuODXWaB4uttTs42uJY4pGwOXGOen4n8aFUi3YVnud OTTS1MZzUZkq7CuTFqAm4c1CJBThLQBMsQXpXlPxl8SRrb2/h+1YPLIwluCOdqjo PrXp1xcvDayyxxNM6IWWNerkDoPrXhGm6Xe6rf614i1Wzw8cjZgk+UCRnwEPsCcn 6D1qJMuKOm0VGh02C0CFYYmB3MeXkaGRnOOw+YAfSpbe+tk0XSpnkHlW4Pmn0/0Q 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 uQ3fzFQ3PAHJz0AX+lFFFKilyIicnzbn/9k= ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=ico_rss.gif Content-Type: image/gif; name=ico_rss.gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/skins/armada/images/ico_rss.gif Content-Transfer-Encoding: Base64 R0lGODlhDgAOAPcAAP/HWf6TM+iLM+qaOeeZO//DVeiUNfK6aeqDM+iTM+iQM/+6 TOiPM+iNM/++UP+TM+yUM9qxe/Po3/69UOawbf+vRfvs3/yuRPHl3ferQ+7Fo/24 TO+WTv2SM/GUM+iIM+/IpP768/WfUPaTM/Dn3/SwS/W8b/no1evKn9qlcvedM+eH M/qjO/+1SPmvR/POl+62h/rz7eyVTvPg0+7DmvmPM+yaT/u7T9t+M++PM+7Wrvr3 9PygNfbn3Py3TP6rP/mnP/Pq3++pRfnbp/KnQvmUM+qHM/2WM/61SOufP/OwS+mH M/6lO+6WM/GLM/r38O+uSt/CnfCcN++0Yffq3/3BU/KdVOyXTvn28/C3W/3t3/zG WOfDi+3HlOPErvykO/Gxc9Sjc/bIefG9hNyHM/7HWfCuSO+pbvvp3fmZM/HZr+qf P/Pj1PWvXtuze/3CVfqjOfCgPeibU/ehOfePM/XJm/OLM+udPOTb1PfJb/+rP/K4 Z/r28++uSPrs1/LPqeiKM/mzcfDKhPKLM+vFnPnu3/XHif7CU+eKM/m2S+iZO+iD M////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAAAOAA4AAAjOAEMcWEOAgKKDCJMceLJH iSAdaobk2VIGgMUSUwZU4cKoIyM/Yt4UKHBogIEJWdxEiBKk44sbDhwYSLDARx8o icyg2MGoy4YFCRS0ENKxkCEXFPgwMoFEAYMKRNiQ6PgnAyFGJy4waKDnB5A7YbAw GhNHAqM2DQQwYSHlC5wUjKjMocGojgBAKiww0sKjCQZGEMAwAoHogxyPHtLMYEQm ECMNK4zk6MEITZEjNs6MEOEFxhIrdpzgoBPgQYDSHWoMuhKDA4JFsGPDRiADT0AA Ow== ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=logo_ae.gif Content-Type: image/gif; charset=UTF-8; name=logo_ae.gif Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/shells/armada/images/logo_ae.gif Content-Transfer-Encoding: Base64 R0lGODlhTAAZAOYAAMvLzP79/dLS0uBCU73BxfbWJfr6+tzc3aNBTPbGy8YAAPO1 uvS9xKOqslNUVP/09fX19cPDw729vHN5Rba9wdXY2UdFR7C1uvDx+cbJzJ4oNJGS kmRkZCstL6Ojo4GBgZ2dncjO0oyMjKeoqVxcXIaGhrGxseTn6mNnac/T19AABfHx 8Xd3d+rq6nJwcNgjNGpqapeXmK2trdMCFu3t7eHh4dwzRdUSJHp7fOVZaOXl5fPz 9P/t7uaKludod+6epuVhbvOlq/3g5O+VnOJRX//6/P3m6eyBi//5+kxMUOR4APvV 2uzw8e+aAPK6Bel3gzs+QP/7x+ZZAP/+5edyfPzc3/nLz/OstvnS1v/mUYWFiP// +NkTAvff4eqjq+uqtLWnqGFjcK51e/TbTfXz9d9ba1Rod4KIkf/zY7/Eyd/i5vv9 //e+ktkoAP/l9ZWZnKWnqZOnrPH186ewuPXw8+uFMvLg5Nzf8FdaW/X294WIiba7 v7a2tvj4+Nvb2////yH5BAAAAAAALAAAAABMABkAAAf/gH6Cg4SFhoeIiYqLjIYA HhtaepNaH5Yfk5mam5ydnp8ib3BpjX4yKBwlIDJgYggasLFiYHy1tre4ubq7ujIe IBeKAhwcHgA6LT8vN2U/CXZdDD0vL15919jZ2tvc3dp5Ky0HACYAhxF4IgA0Bg9A CkA8f/P080czP/X6+/z9/vUB+rRIQaCQgCQxDvQJ8CCHiiD//vSYYSWixYv/TmQg hELEAQN/AjxRALFelSUBkPB4MI/IAH559PVZUQ8Cxj99QtLkF6KCID4cAID8k0AF kXpIhiwb4mOAD5YLXlSRs2NeHwkgaOTJs8MAAD4rViyMsHWFDg8tAhiAsBNcCwF/ /yLEyCm2ngEKgooxmVfE4RJ6RagoyAFEhQIFN1gKGeCFQgk+LUAk4SBjg4gSIySY AFFiQw0TJkSY4NNBBAgBEUqY0BFDBB8AB1xwOCBDhIga9UL4EUACQIB5S2a8nBfg iIIXW6oYVvBknpEcPeJAgVKCRQliHByQYOGChYUSJEDA8L7BBB4tSSKYsOBAhIvQ ImB8cFHCwQcHMerRyAAHhw56QahwBD1XHAYRA8sxMA8PPohhhgMdpAKCA8WosoED GNYgAg5JeEBCEiKwsAELEnAAhQX0AfABCyRU5wIJB3yAQz15hKBHDDv98YQKCv7x gA2ICfHHEIfdIOQfRhDRA/8OMLgQAQ5QsAACHx6YIEMJInxQgwcelCBDk3wwCQIA LDjAApkkiDBCBByQEMEGB4DgAUAVfOBBTiEBMYMR8xSogA9F/DHAYTn8RtQAbjBR AQZ/tACAWH3k0YcBBswUQB4B9QEAbjTUYNNbLfyhQwVq/XHAAX/sEAAEMdWjA2Z4 FqGnPH/4YOAfCB6WzzxP+DBFFmhMcUeo+9BQTw3G0qPDfzfxEycIOVIxw188AKnC X0AqMMORCQzARgFOODEGDvntdE0FQV3zRwkS/GEADQEAEEGjMWnVbB8hSCDCCfT8 oEI+QryggAo9ACGwAsNhMcAQWTShhBRKTHCGBAgJwIL/dR28CIAMFEpAAgxejsAH CR7UUB8fNzFRUAmkzmPFDDn4OOhhL1xh2AsJDDHAEVE40YYUEE8QBgmpwBDUl/NJ YAGaJJhAggsw4BCBDhF80MEHN1Vgjgd8qPoHEkTs+ccCNyhgQwJ/UKGCCjbkEAQS UUjBRRNNOCE0MRLEQMIGMWDokQMbEM1CDSQ44MIHIsQAAwkZY2TAHIII4MFH8zAA 8zxYMMCnj1YskMCRCygwdxMF8JGGx3z0sYELALjHR7wciCCADC14sCYAe0vwAQwo X1RBQYLsIQE7ARSnwhAWJUBEHUoo4UQUIAXQgk15GAvOUC3kBBKlxbcQU1iGRsRE kgOF7FGBqint6IM/xQ2wwK9jRNHs/P7sQL4hBBD7RxE/3HBDD1jgQRECwIME9MAG RKhISLZAvwbq4wT3O0QGUhA+IxzwBTYYgAZtAIQFsMSBIKQHEygQjEWkgQApaMEO 8kAHLCzgC19ggB3IsJUa2vCGOMyhDneohjTMoYSlEAQA9kDEIhrxiEhMohKXmERS KCIQADs= ------------Bpqcrlh2CQN3A35MxW9xIs Content-Disposition: inline; filename=bannerSubhome.htm Content-Type: text/html; name=bannerSubhome.htm Content-Location: http://www.armada.mde.es/ArmadaPortal/framework/shells/armada/swf/head/bannerSubhome.swf Content-Transfer-Encoding: Base64 Q1dTCDRdAAB4nO28CTzVa/c3vH5722IbMk+hjUybUEmSapsyVmx7GyoyFhIi25A6 myhpUihNjrHYqCgNNCAapI4GKqkoGqSOFKe59/pdndN9n/s+7/3u837+z/P8P5/n 386yrOu71rWuYa1rXT8+v0SgTQWgaQJMFQF7WUD/7Cjfvn1jwVzqdgIgUwDjITZ+ dSCY2sSuDAwJdI+OXR0YabosNnBlaEJ07ArTuBXhUXGmgbjRNC5hmWlYaGCIKcSF BgeHR0chAXiGhcfEMX7/psfgRoWvjoOlsdHRqwGZiQudAuEh4dErA0lsaBz6vzQo MCoqNDYuPshkdeJqCI1C//9FtiwW/f8XGewSATEQI6x3UUCMok5SqrPcAfQNt1DE RDRIGU2d/EkUIRaSP47DQDEMnAAkD1gi7vgdvJeAxj0UWA//ANP/DSzxZ7DXP4El /w0s9Wew4T+BpZ3lSLTS/4sfwAJyYSholcbBN7njNgAEZBCSNrHhgZEM28jA4BXI UTGCTpgTy4g7RAulh/pI5IOIFW0N7RtNT9RLNEw0WTRbdNq44HHD41rEPojtFl9K z6fvkPCVXCPZINkj+VVyolSFlNh46/H3x0fL9MtIyprKXpV9JztOLkQuT65arldO VD5X/pX8QQVLxa+K6kqblaqVnipNULZVDlPOUN6nfEr5nvKg8jflAZUYVUm1HWra E1IneKqXqV9WV9Vw1lii8VqDpXlW03bitYnSjHsMM600rVKtHi0Z7cXaqdouOn46 epMyJ/0yia5rpntO11+vV++u/n2DnwwnM9nMNOYsozajEOPLxjMme01unHxzcv9k BRN7k9UmN02mmG43PWE6YjrFLNjs3pTfpihO3Tf12VQZkJHqMynRT5FzehWZ8LPR 3pShYsefzcqKX+0snMxMN7aW1XuVvDHjvt/RowjZG4+QSOJ+aF2NWVxtusbHmrnb uocoI6d35Jz5dznSaBlaUPRa/eowb1HliTV+m/e+Ng7X5U2ZdX7BvpUdD/xat046 fNE4YVBnZb2iXV36A5l7jy5mMoZcx60QbzA4/ajiWvLQAcdVvi4Tiu1mjcoe8cs5 89rI0G41907kWL2mgbLxfKuNdskJ0qHvrSZNO79VhoU6HFoqiF/TVO7GGRLvvG6Z /s4gY9H07n30rkgzbaq0VVniAgYkRPAJFUuz5xXN17N+0mtbPsLLsQ+q2iu7+SNl 227751ul82sFZ8+5Ktdn5Z8tF7TmHqzyna/hxnyx1eydkfXIRu/mTlFbLbHGC+4b p9JHptyfLSh+y6/N2W2Yuye20WHwBFWZT6lhgliHu4R1VeGEqY7PHs8MXG6XH3t2 sMN4XJqfdHdpi1VTbJykjPJup+K1DuWLQi91qja9A6PbIGFTutE9XOuKbPj9FMaS txerFOZ211Y4ugvc+SJrWcTsxZ2hs0oW+87P667Eg32rLVgjV/36o8496auL1tiE ijcqr2+raHKHpWZPg7j6U3VnrXjjcT9Gbg3QFtwFsfxMrnaQFlDTOSAty8vM4HZr K7gAzQtApaKR01JF26rNXRKeCUTKXYYpw9fzZiE49vaoChTKimLBIJBP1W4r51qW g8nUQjh1Pb+XaX61LRkMikCq8nplwZZykNMRob2UOV3MAeVTM/PznJuztnV/5iRO GC5oJDxPAEVPO9QpP5MFfYpA/cmvWI+LnJDjE1w+iOpGt04xIoKf53mrBSH/LcQk ethxC5BJxjzRiHRZ/6VAV26EQkmBSmQ7SKQhJ6YVnIzYul6tCOgGLKrJfMHLwHYQ WddEzsuOmh1rTlj6dSY8Vk68Ie15Mftpsv0DL/5LQ/VmX2llk7GPXJr5hcU+Vdfm 515XdY3mbnKYnWybytWTauEAbXU6iGafmM3V8xkGx1YW4bfh9Ko8tYGLlvNqPG31 x26X3h4SBIB+GYuYvulASmfOrHXimUALbwHCZOMNts9EFhi1MogNYQNbF2xbpCLW wz1PXRWZsdX1YeT1wAq26dFAkQM+DFPbyaHM3JoiSYs5RSnb+XQrPmXbySNM3tjn M3zKvmGwILSLG11B1LYQtHS2sSJllC0O2A1MvycSEzQwj3EaJDsZxCzt4BcuenO2 WQLnJz7kdr/iliwL8Z3XJUaG6i9/GaqopT8TbRrFPv+z+fN7Qiq9H5f8BsTEXQBZ TTrO9TyO2hl9zoSC3WFHCnb7A62wEmgbN4THtl0Mj71wwsdIBBl48hMywNTytc13 0xGp9NKkfgZCE+2hLF7PlfM8o+ZjDzkqgbv9qwJJAyVGQMuauSe27cOeWGOX7wb6 vZABBcM7tybQf85Mswps358UMCOqfEVN6f3MwfpFr3qWiq9+aUk5u4Ai4WVAcx+V amPf6JSWv3/22+bTd0wMBQWd9VahZof2T5X+PMNqILYp4bzoJquS0Qz3lw6uz+4t GAHF++fjs00evp6ywiY+SJtfGk4rXb3W8MWut8+WHz63So9PJj0LE/U1GoH3FaIu fuXVv6y541c9MpQ1Y0XVrEni9xWlL5fzLlsiWHOQ35thZ526Y2jDVi1n63lfL9Zb 2hGuEd1MYbpWl6tEMYqyMymbdIop1lHvEb6xx7FzOHBa3XF/+W7elcTvFoqQhVb5 8RJR1lEd5PxlF6Oobfp1a8np6yhq1VfJZiNp016HvqMg8ZL2cSC29kvoqvRGqFjN h5GMtt3lS+XlfMosdNPOlBkatRmEW0RsCN/NJ+orgdpb58ZjjlrGb0oGSnktSCR2 Z1U3RFhQRph3JWNfuWRWnqx4D7r7RGhtOg6jPqCooq51gx2lfoEBCoV8CDHX1Ztg K2Wo5R4SYgb2tAAon7H91MCCOdvYveBpCKIxcYof8lezwPMiuacG6dqCtX5eiX6z X0aw9x49rv2mq1J546JA0YYT1p1FcRUtbk8GnPZsz5g9328bOXlDBQBr9a95SRl9 k2mwVMzOsZTgnNWdv8f/wp4azv6rAKa6DMqTUONrC9jtnXfB04cvyjbPi2XdSQ7K TWrIGWxb3zyB7ikmMKjSdln5vmqXxmtWABjZ9oL4/okuOTJr6W9EBcYhakCjl4Oi naV80Ll4+aAvDscFXVtu7clgbmriZEosFFWZtSSf3HRjxvSUR3kvMgIHzxP+llN8 F58y298LXscL0VRsyjO0NQKqExs0R/tDFB7Os5GhjzKHJ2sEObhSrC7uSOWYb0AF kZY7GIwd0s1YdHQ3d8hdcQg8vN8Bzd0NlB60KC5OUAybZ8otUrnRfmvlgMz21UwZ B80JqaWlPapl7mDo0wjD/oMLae9Bti2bUJtyUOmQWmD4bWAOMOBs4/BrqSvF7PTU bAEoVDZCfK2D/rSJIOHhBKe6jy32rK4LLQeFeyyiSCJvyTsT/6qcfAYa0y+0iC/D 2+xO2Glej/Y7N8TTF+i/3ij2auVy+xSeQKJW9UHdOtovtIVlT9Yd2n8w23hohRlS ehxeor9W3pZ3akJz5OuzuT0Ke6RyDzXQmGuOGrKIRWYA3mnVXj7a5UAQeUDpCE/b wz1ID13isJUbqdgvAjROFShfe6C4dMbqcItXno4mXeaHuKsOHuBxs5Ic5B8L0lKl x5XHVFiPE3cBujcDZnurFQ32BMAJFz7ltuW0JMPmOzuXAT26EZrS5Q6omx6Jtf9V TfpzkgKT1kjumbUC05SHKjIOs6eaRkpVOORFz+PTpp6C4P4DS/ePS33XQrADBXFK NzpVTroxzIDzmQ9Vm218F282BhFHDkisLd90wKtYTzdXvs7LfcGNLaD4IBHU6p87 cAN/vtdklvd2vRkfKrkBsP7NwZpQ34opIfW9wOluhDTqdLaYlJavKs0hJITSUZPP MOFSrg7yCXkxp5wKW+fAFKBzs8FaeWdR18NeqKfzKU8sp62qaO4ayQd6WC80OjUf ltQOALstZFHV+xDNsnIO7/DOioc+7dJBzLEtCVEHdOnnnqhfGGhLHG6oP/rSgcXv 2lL1065ddhllZybZv8oil+eii83AQadIyfDFzHtuG1BEl4M2cXaybW3tqiIVgOpY gMnERMGi0kwQ7SoHmQkm45ML8rcdDCytkBc9lb+dXexjXQjOTFTjzOgdNTw/np2u 1XbcaaNJuTWzgfWxphcO9zTC3d9WM2tedXRdPV652KQDmIOFUPU4snVw0zHlnTqV Zix/TvdRRQaxUJWq5bzXrO0ysHcBseEXzu72d2BMY1BOLIu8tiCmvcsAPANANHmq wjOqJCh4iUnkLjrVnA09MrbqZSJarQpg6A7wzU+wcLQb5CKyCb0jrd0HP/sJ7oJh NZ8qocWMCRID6c3kqVDyfPudNs2C39iTNWRZurkG4vLpwL4JRHul4ga7HNa586Mz X/gvKL7hFS/h8B5FnSUo6s7nDsbNZ0FDHotwpG1dxlUc2KPHa+Psua/wDO1lAz5w AlM5AlGR0PlSPpclkZaNF4w7E5r/UnEg5sVtJ6CxWaAi3t659M60CF4Mt+Je9Y3b X9Io7+S7Qpggce7hq/KDI4uyJoFhRSNVUavtVHk6n1ATgMhqzWKr0mGdskIwXArw 0Y++8RaPTxkxI4uyvinMJ6icfmN/ofn+9gnHiZj83WGJk3Y83rQx46TmjLC/RqQg RPe9LD7RNa1C3uiZh7zpc/NtJ/sIRd2u25IzZNwv2xP2O24QmjNSyBhxP9u99ubd +373LY+scLHo4TUcaz+afispfHif9J3l+HAz9FureAyF+M3SO5HrUmP2ybUnGy17 Fb27zPnwvXEIkenM+xmp3uFd93wweWvdg8NDI7f6zB+Gpuvtq7sPZGq5uaR1+Pya XU/YoCXztIaz9apBlJmi3apG177g29USITDVAUTWrgu4/et1rVV8mkUiLKdO97aU 3Finv3zfyzlKVapK54x4NUZGesd2qQP9hhlQpKQGj7spJILYnFKYIWl8jfmYal7a svqgrslrRpThY9FTMHOLjNIZipKmWD7vrF3zK+m7PsiTlwmGc1PGQj6EfNnQC3Vm VC3WuwutUo0KZo3UL26ckAmFtt5lHiL+2eA+PQBqnu493uSPvsIDgKvFJ5w3lHH1 1J7GTC3zvX21EX7L4xOpoqdmjC47NaMYZTh2AVAiV406H7h0JXDzg8yRSr1cT0ex vZXnpgq8Jg5W8H8qew5GJ/kwZetZZonaiGmzdOWjDbJARAgaieBm9aUfa9WXvn90 /1zVo/vH3bLBKFgGxheuc/mlcB0LptQWAs/4XVDbsRuZ5WHPBSdsL54LgIMnQPJ0 bUXbYur1pVmxO4NOplvtS5xnJAOCYqCKmtDPyUaJgXJ7FSiF6CuJCxYY6PEaoSwB RDK9K5xbC9NMFhTR4v0yR2htk33q3EE7oE8unk5lvASFokaIm0Kzq25uHpitKJGL DqZcNkyyyL+a6ymXywFPHl/UaXpn5BuL+NpabhcKaXHdNPJQn9CwNGXyhl9vlRYl +l4bErwL+ZVGOZvHiQvtC05Yl7/ovXLp3puyzwQrvM+MuuUpB1WT+ytWR3+tTKnX RgA5p0zupMfqQNXlAD0p71Le/A4Pj0RXzonU9gDHVI8Nmihd0Viwc/Hx+NyHjr4y stMXhzB39ch1ejBC0BmQaJvxUtVSOf/xqT0ddxTOFALXokx3TShIJDnB2e7NEZ6V FqUc0JDjdu+AJZeUXB9kSlZI8GFZfVbO9HI+rbwU/N36qgVPo6oaemHo/G8RcXw0 pNvHzqQUmesrLml/5mu+LS8kzcq7RoPr37JJjE/4CfhEYVQxl9W9KZ492X+wlgX0 g14g9khzjVheQYn4tYdAi+gBYmfmC9+dmbenhIwlnXWyYiZOF/uk/ni/Ku+osugh 0eir1sCsYMCNSRGVq7Y6gYbVUZgU5nnBvPzQlhtTgFK6HyhBXcxNwYtpzOyjOCus Q/W4WnbFGz5hmbm39LF2MHNu25YKIuOKh0ApYx7QblaB+KRftRwFDx0ULgQnV6Jh DKTXCixVJaxhvPiS2cH6lLcaeXpn/GT6oxSZ6KTYvZq9cYaNxUFF8RP5IHLKCySO x88qyIvgJbs1QqwjeZj2rUTrpCLBOzGr2SRqt89wpE5dob9cCq/sU9OjqDt6yQul R7fsJ3Gr0WGlNJd3YnNz2LbbExONMrqvL6RvP+P1evjYy66pMQjy/Kfpt9aEZvQ+ mbFZV/ERv2bPyHhu0sj4smE0o6uAyH89h2uW/2Gr3OSl6rUqILEFueM6voTBnWif au1l6uV3PV8fJeyyDhC5Lq3onGk5Lyw+T9XjvuQt86ST5VPpvHfZJ/c070sqKGGB oAqo06S7z62QRldWdhWI3VYtfC6YZle1hA9lYUBTvFrhrt6XEvx639OhErPf3U+R G3mzYF+TkukEpTPyoqNo9y6/s9XwofLCxOrQvrCEqpBeErifBH4mW8P0v4uezcOi N2uZR0Hv5aXWqZVbFdoqtmWd9ZTOGm2Ewy9YcM9xuaB2a0Hn5pBKr8k5j7U92xz8 f+FQMhtl1zvbqNzU3ThdtI91GRQOBcD8GpqtbzPKDQ9P6v+TY5z7bRM7QxPNMp6e HEibnRfryO1zuXRA3eDdr/z01bxTOc0dv/pcwQsWjRVGOQd67+5ecW+2wdfkiwtI ebCOfoqK2xgjVVa/hnInwVrFFg3iHuXXRQc1P1kzO4a2zzjXwXWbzQ3jsRq+L1hf AlKRjRz5ObjvoVlSos6bwadXm5+aWmjaOj8ee5bR7F+Tg0Kl6dI83yqQHZ6rN84I falLAr0HTf+riWrHnk9UAamHVUCH/htFgiuiKflP8o+YrS8+FgNGtXyYNuU6/WCw pZkc26hXjw2Ev7GM8mRCDd0hbFkNG/o8UibczACayxag1eVwN6/IYcGJARYh6ftl p+LyMSdvlJ6DG4ki0dGltqLvQGRSAL6URaDha+yvtuSDfo1JpX6gMcCmrEbYOt9T gXnWU4FSyoeh+kNZe/2V1qKJoT01NmXEzqDnyMA4iYKKmXueg+8gi1Z7XTX2cPLT FYmosOh55U1euV4vaIgLX7LRLFGM6dp7cynt6rnDeae5V1eJmkeWTSlujdp6w780 g4htBG8TgMDNkxR75D6jC21nAGzbMXZU1/eDmWUfgFd/I0wMe9/5c9hvfIgNDYDQ XQnbdNMoo4sXewtUJXtBrAPVxs3PHfUEN4z3VvWCoJ1Pnbt1sOrrjEJIGmyE7VoJ Us3Fr2eUaQJdrRd6gPn48OfD1/oHA3coukqOpyVy2d4Z1Eau/JHsef0nyCvX5ncw 0efKQ+m7XmkAsu9NuDqFp5WmfOB4b+wHicnuoK80oh4/4/Ql+9L4+bWT5bIN2AJi R4qOQnZfdvLOVv1UYwk7rf6NIvZnjNTensi7z+k1uFE/s9WyMsCfRZx2e7N4QvMv hf4hlOfednPYTnyq0ovc6Q9Sr4W6J/qyRPqcoE5NPoDbcSB1FZ+4oXeg4i55T/X3 vjeSrfxAkUaxl+gd5Sy4yNrJIlxj0BLMdu9byBJRZRGKLhzdJWvbbyS1d95ac1St /qai1+z9QGjlAe2kwugXDle599C+JF+3hpDtDPBC+VE5P6Nzd35Gk/ZC5X2bUkUq b5nGZc5s3m9TUMaAg4dAKnKeQXV2L5FSCDZyFwYLn0pN8pKOuCNpQMmis8vohrZB c7I2BXwEYpoAaIXXReorrXLk9m7qPmslXksGMRPg5rLsyptKOXMylrnh8jwOZcYJ RryzDc39v3KdCpQ2JneeGT4964QcmawHc8gwfD5qvwpd+H6bNilvSftOX0aUwhXR PgkJB+7R2R6JoOjPAp/f6rhBBZ05S9a67b2Y2xzo6aZ78XN2Z+yAM9C6kx9cHnYt 6VThsmBT+n5XRblVxloxwMloBOf7oR7GK1ng5139SwDpjCTqTj5zzMzZTr8mufOZ tbzob5VXru3OSPUfdZxHxv+3L+TTnNcjRnGDBY6v0441qRyZRMyp6Pd6bmQt2/3b tXsIfFLzU8iSg7/dd1a7g/gPNVixNxFlAYVFI64jBgXOlvVvm+xMZzjMeDMw5VDU GSPbt5W0cwXxXk7Tmk+MNzxq9+rpU0MlUolGKqWNeD3203R5ejy4ad6vyVnZNxKP aqG0ueWb/6iMP4eMVnk0h6pLeTWz2scv7EtmlL9aqVy64/W94qSUbvHtYm9nhfST KBdkTNUAXUpDq2d7vefpTqurK5CPTLm/hLyLzisWrJnMHYqVP329pXLNk7X4UcjT s0hF7y5SCfIkVRbdQiqSud9VBiZrC9Yo+w39lCZhcnl7Ur/gVrT1Zt28e7K/Bn84 cggBfpbJeuRg6cd888Ln08FicjgU1ImGbs8tt/dDZ2YkHXIjr85tOk6v3q4bdzVv 3PQsKd4v7BXVdsxLt0uq+b/V1zmeHbx8GxRnDINOYThnW2rp8ounnXsn2d+rYM/f mw1LNQ0+s0GpY5HZ7YwSSXf1hBDRivt3ntxdJZglaTdWb3hewnaFosvh9zEVPsDc 0AiNbmGCrzWFwGwuhBrb1+1tm1dM0/QsMpo3bnuG4rs2jrfb/P22fAqlqYaeuFGm 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 RUIlgoqUVPfTz/zHWynA/wPdiB4K ------------Bpqcrlh2CQN3A35MxW9xIs--