Life Science

Life Science

MENADIONA es un fabricante europeo consolidado con amplia experiencia en asuntos regulatorios, cumplimiento de GMP, certificado ISO 9001 y que ha sido auditado por la mayoría de las agencias de salud mundiales.
FARMACIA, VETERINARIA, PLANT HEALTH, CMO, ASUNTOS REGULATORIOS

Contract Manufacturing

Una de las unidades de negocio que más ha crecido durante los últimos 10 años en MENADIONA es el servicio de Investigación y Desarrollo así como Fabricación para terceros de APIs, intermedios avanzados, 'starting materials' y productos industriales.

El objetivo de MENADIONA es formar parte de acuerdos a largo plazo y ser un proveedor de confianza para todas aquellas empresas que están dispuestas a desarrollar nuevos nichos de mercado o productos de alto valor añadido.

Ver más

Vitaminas

La VITAMINA K forma parte de la herencia de MENADIONA. A pesar de que esta química existe desde hace mucho tiempo, vemos segmentos de mercado innovadores en los que las características y propiedades de la Vitamina K pueden aportar un alto valor. Observamos interés por nuestras Vitaminas K1 y K2 para el sector Nutracéutico y la Vitamina K1 Oxide para el sector de Dermo-cosmética.

MENADIONA con su amplia experiencia en la producción de APIS e Intermedios para aplicaciones de Life Science, ofrece a nuestros clientes la garantía de que la fabricación de nuestras Vitaminas cumplen con los más estrictos estándares de calidad. Además, el ser una empresa con sus plantas de fabricación en Europa, proporciona un argumento sólido a nuestros clientes en términos de proximidad y solidez de la cadena de subministro.

Ver más

Farmacia

Durante más de 50 años, MENADIONA ha estado fabricando APIs e Intermedios para la industria farmacéutica, lo que le ha permitido alcanzar la reputación de productor líder, a nivel mundial, de su selectiva oferta.

Los servicios personalizados que ofrecemos, además de ser de elevada calidad, se amplían con la posibilidad de ofrecer un suministro especial y a medida de tamaños de partícula, especificaciones y/o tipos de envasado personalizados para satisfacer los requisitos de cada cliente.

CONTRACT MANUFACTURING es una actividad primordial para MENADIONA. Estamos especialmente enfocados a aquellas empresas de la industria farmacéutica que busquen colaborar con una organización de confianza situada en Europa y subcontratar la producción de APIs y/o Intermedios.

MENADIONA trabaja y cumple con los estrictos estándares de Calidad y Asuntos Regulatorios que nuestros clientes esperan de sus proveedores en el siglo XXI.

Ver productos

Veterinaria

La palabra MENADIONA está altamente asociada a la industria veterinaria, ya que constituye el origen de la empresa. Tener una posición líder en la producción de APIs e Intermedios veterinarios específicos durante casi 50 años nos proporciona la experiencia de fabricación, de manera regular, de alta calidad y sólidas alianzas con miembros líderes dentro del mercado veterinario global.

Una de nuestras actividades principales es CONTRACT MANUFACTURING. MENADIONA es una pieza importante dentro de la industria veterinaria y una organización de confianza para subcontratar la producción de Intermedios y APIs.

Ver productos

Plant Health

Formando parte de la herencia de MENADIONA (nombre común de la vitamina K), hemos desarrollado una tecnología única para formulaciones dirigidas al mercado agrícola. Gracias a ella, una gran variedad de cultivos hoy disfruta de los beneficios de nuestro ACT-2. El producto se ofrece como aditivo individual o como un suplemento para formulaciones más complejas que buscan aportar características adicionales.

La personalización del tipo de envase es un servicio adicional que MENADIONA está ofreciendo para satisfacer las necesidades individuales de los agricultores. Estamos ampliando regularmente la red de nuestros distribuidores para llegar a nuevos países y nuevos cultivos. Le invitamos a ser uno de ellos!

Ver productos

PRESENCIA ACT-2

CgkJPGRpdiBjbGFzcz0iY29va2llcyIgZGF0YS1ub3NuaXBwZXQ+CgkJCTxkaXYgY2xhc3M9ImNjb29raWUiPgoJCQkJPGRpdiBjbGFzcz0iY2NvbnRlbnQgcHJlZmVyZW5jZXMgY2hpZGUiPgoJCQkJCTxkaXYgY2xhc3M9IiI+CgkJCQkJCTxoND5HZXN0aW9uYXIgbGFzIHByZWZlcmVuY2lhcyBkZSBjb25zZW50aW1pZW50bzwvaDQ+CgkJCQkJCTxkaXYgY2xhc3M9InByZWZjb24iPgoJCQkJCQkJPGlucHV0IHR5cGU9ImNoZWNrYm94IiBpZD0iY2hrMSIgY2hlY2tlZD0iY2hlY2tlZCIgZGlzYWJsZWQ+PGxhYmVsIGZvcj0iY2hrMSI+Q29va2llcyB0w6ljbmljYXMgbmVjZXNhcmlhczwvbGFiZWw+PHNwYW4gaHJlZj0iI05vbmUiIGNsYXNzPSJjcGx1c2ljb24iIGRhdGEtdGFiPSJjaGsxIj4rPC9zcGFuPgoJCQkJCQkJPGRpdiBjbGFzcz0iIiBkYXRhLXRhYmM9ImNoazEiPgoJCQkJCQkJCUxhcyBjb29raWVzIHTDqWNuaWNhcyBzb24gZXN0cmljdGFtZW50ZSBuZWNlc2FyaWFzIHBhcmEgcXVlIG51ZXN0cmEgcMOhZ2luYSB3ZWIgZnVuY2lvbmUgeSBwdWVkYXMgbmF2ZWdhciBwb3IgbGEgbWlzbWEuIEVzdGUgdGlwbyBkZSBjb29raWVzIHNvbiBsYXMgcXVlLCBwb3IgZWplbXBsbywgbm9zIHBlcm1pdGVuIGlkZW50aWZpY2FydGUsIGRhcnRlIGFjY2VzbyBhIGRldGVybWluYWRhcyBwYXJ0ZXMgcmVzdHJpbmdpZGFzIGRlIGxhIHDDoWdpbmEgc2kgZnVlc2UgbmVjZXNhcmlvLCBvIHJlY29yZGFyIGRpZmVyZW50ZXMgb3BjaW9uZXMgbyBzZXJ2aWNpb3MgeWEgc2VsZWNjaW9uYWRvcyBwb3IgdGksIGNvbW8gdHVzIHByZWZlcmVuY2lhcyBkZSBwcml2YWNpZGFkLiBQb3IgZWxsbywgZXN0w6FuIGFjdGl2YWRhcyBwb3IgZGVmZWN0bywgbm8gc2llbmRvIG5lY2VzYXJpYSB0dSBhdXRvcml6YWNpw7NuIGFsIHJlc3BlY3RvLgoJCQkJCQkJCUEgdHJhdsOpcyBkZSBsYSBjb25maWd1cmFjacOzbiBkZSB0dSBuYXZlZ2Fkb3IsIHB1ZWRlcyBibG9xdWVhciBvIGFsZXJ0YXIgZGUgbGEgcHJlc2VuY2lhIGRlIGVzdGUgdGlwbyBkZSBjb29raWVzLCBzaSBiaWVuIGRpY2hvIGJsb3F1ZW8gYWZlY3RhcsOhIGFsIGNvcnJlY3RvIGZ1bmNpb25hbWllbnRvIGRlIGxhcyBkaXN0aW50YXMgZnVuY2lvbmFsaWRhZGVzIGRlIG51ZXN0cmEgcMOhZ2luYSB3ZWIuCgkJCQkJCQkJPGJyLz48YnIvPgoJCQkJCQkJPC9kaXY+CgkJCQkJCQkKCQkJCQkJCTxkaXYgY2xhc3M9ImNjbGVhciI+PC9kaXY+CgkJCQkJCQk8aW5wdXQgdHlwZT0iY2hlY2tib3giIGNoZWNrZWQ9ImNoZWNrZWQiIGlkPSJjaGsyIj48bGFiZWwgZm9yPSJjaGsyIj5Db29raWVzIGRlIGFuw6FsaXNpczwvbGFiZWw+PHNwYW4gaHJlZj0iI05vbmUiIGNsYXNzPSJjcGx1c2ljb24iIGRhdGEtdGFiPSJjaGsyIj4rPC9zcGFuPgoJCQkJCQkJPGRpdiBjbGFzcz0iIiBkYXRhLXRhYmM9ImNoazIiPgoJCQkJCQkJCUxhcyBjb29raWVzIGRlIGFuw6FsaXNpcyBub3MgcGVybWl0ZW4gZXN0dWRpYXIgbGEgbmF2ZWdhY2nDs24gZGUgbG9zIHVzdWFyaW9zIGRlIG51ZXN0cmEgcMOhZ2luYSB3ZWIgZW4gZ2VuZXJhbCAocG9yIGVqZW1wbG8sIHF1w6kgc2VjY2lvbmVzIGRlIGxhIHDDoWdpbmEgc29uIGxhcyBtw6FzIHZpc2l0YWRhcywgcXXDqSBzZXJ2aWNpb3Mgc2UgdXNhbiBtw6FzIHkgc2kgZnVuY2lvbmFuIGNvcnJlY3RhbWVudGUsIGV0Yy4pLiAKCQkJCQkJCQlBIHBhcnRpciBkZSBsYSBpbmZvcm1hY2nDs24gZXN0YWTDrXN0aWNhIHNvYnJlIGxhIG5hdmVnYWNpw7NuIGVuIG51ZXN0cmEgcMOhZ2luYSB3ZWIsIHBvZGVtb3MgbWVqb3JhciB0YW50byBlbCBwcm9waW8gZnVuY2lvbmFtaWVudG8gZGUgbGEgcMOhZ2luYSBjb21vIGxvcyBkaXN0aW50b3Mgc2VydmljaW9zIHF1ZSBvZnJlY2UuIFBvciB0YW50bywgZXN0YXMgY29va2llcyBubyB0aWVuZW4gdW5hIGZpbmFsaWRhZCBwdWJsaWNpdGFyaWEsIHNpbm8gcXVlIMO6bmljYW1lbnRlIHNpcnZlbiBwYXJhIHF1ZSBudWVzdHJhIHDDoWdpbmEgd2ViIGZ1bmNpb25lIG1lam9yLCBhZGFwdMOhbmRvc2UgYSBudWVzdHJvcyB1c3VhcmlvcyBlbiBnZW5lcmFsLiBBY3RpdsOhbmRvbGFzIGNvbnRyaWJ1aXLDoXMgYSBkaWNoYSBtZWpvcmEgY29udGludWEuCgkJCQkJCQkJUHVlZGVzIGFjdGl2YXIgbyBkZXNhY3RpdmFyIGVzdGFzIGNvb2tpZXMgbWFyY2FuZG8gbGEgY2FzaWxsYSBjb3JyZXNwb25kaWVudGUsIGVzdGFuZG8gZGVzYWN0aXZhZGFzIHBvciBkZWZlY3RvLgoJCQkJCQkJCTxici8+PGJyLz4KCQkJCQkJCTwvZGl2PgoJCQkJCQkJCgkJCQkJCQk8ZGl2IGNsYXNzPSJjY2xlYXIiPjwvZGl2PgoJCQkJCQkJPGlucHV0IHR5cGU9ImNoZWNrYm94IiBjaGVja2VkPSJjaGVja2VkIiBpZD0iY2hrMyI+PGxhYmVsIGZvcj0iY2hrMyI+Q29va2llcyBkZSBmdW5jaW9uYWxpZGFkIHkgcGVyc29uYWxpemFjacOzbjwvbGFiZWw+PHNwYW4gaHJlZj0iI05vbmUiIGNsYXNzPSJjcGx1c2ljb24iIGRhdGEtdGFiPSJjaGszIj4rPC9zcGFuPgoJCQkJCQkJPGRpdiBjbGFzcz0iIiBkYXRhLXRhYmM9ImNoazMiPgoJCQkJCQkJCUxhcyBjb29raWVzIGRlIGZ1bmNpb25hbGlkYWQgbm9zIHBlcm1pdGVuIHJlY29yZGFyIHR1cyBwcmVmZXJlbmNpYXMsIHBhcmEgcGVyc29uYWxpemFyIGEgdHUgbWVkaWRhIGRldGVybWluYWRhcyBjYXJhY3RlcsOtc3RpY2FzIHkgb3BjaW9uZXMgZ2VuZXJhbGVzIGRlIG51ZXN0cmEgcMOhZ2luYSB3ZWIsIGNhZGEgdmV6IHF1ZSBhY2NlZGFzIGEgbGEgbWlzbWEgKHBvciBlamVtcGxvLCBlbCBpZGlvbWEgZW4gcXVlIHNlIHRlIHByZXNlbnRhIGxhIGluZm9ybWFjacOzbiwgbGFzIHNlY2Npb25lcyBtYXJjYWRhcyBjb21vIGZhdm9yaXRhcywgdHUgdGlwbyBkZSBuYXZlZ2Fkb3IsIGV0Yy4pLgoJCQkJCQkJCVBvciB0YW50bywgZXN0ZSB0aXBvIGRlIGNvb2tpZXMgbm8gdGllbmVuIHVuYSBmaW5hbGlkYWQgcHVibGljaXRhcmlhLCBzaW5vIHF1ZSBhY3RpdsOhbmRvbGFzIG1lam9yYXLDoXMgbGEgZnVuY2lvbmFsaWRhZCBkZSBsYSBww6FnaW5hIHdlYiAocG9yIGVqZW1wbG8sIGFkYXB0w6FuZG9zZSBhIHR1IHRpcG8gZGUgbmF2ZWdhZG9yKSB5IGxhIHBlcnNvbmFsaXphY2nDs24gZGUgbGEgbWlzbWEgZW4gYmFzZSBhIHR1cyBwcmVmZXJlbmNpYXMgKHBvciBlamVtcGxvLCBwcmVzZW50YW5kbyBsYSBpbmZvcm1hY2nDs24gZW4gZWwgaWRpb21hIHF1ZSBoYXlhcyBlc2NvZ2lkbyBlbiBhbnRlcmlvcmVzIG9jYXNpb25lcyksIGxvIGN1YWwgY29udHJpYnVpcsOhIGEgbGEgZmFjaWxpZGFkLCB1c2FiaWxpZGFkIHkgY29tb2RpZGFkIGRlIG51ZXN0cmEgcMOhZ2luYSBkdXJhbnRlIHR1IG5hdmVnYWNpw7NuLgoJCQkJCQkJCVB1ZWRlcyBhY3RpdmFyIG8gZGVzYWN0aXZhciBlc3RhcyBjb29raWVzIG1hcmNhbmRvIGxhIGNhc2lsbGEgY29ycmVzcG9uZGllbnRlLCBlc3RhbmRvIGRlc2FjdGl2YWRhcyBwb3IgZGVmZWN0by4KCQkJCQkJCQk8YnIvPjxici8+CgkJCQkJCQk8L2Rpdj4KCQkJCQkJCQoJCQkJCQkJPGRpdiBjbGFzcz0iY2NsZWFyIj48L2Rpdj4KCQkJCQkJCTxpbnB1dCB0eXBlPSJjaGVja2JveCIgY2hlY2tlZD0iY2hlY2tlZCIgaWQ9ImNoazQiPjxsYWJlbCBmb3I9ImNoazQiPkNvb2tpZXMgZGUgcHVibGljaWRhZDwvbGFiZWw+PHNwYW4gaHJlZj0iI05vbmUiIGNsYXNzPSJjcGx1c2ljb24iIGRhdGEtdGFiPSJjaGs0Ij4rPC9zcGFuPgoJCQkJCQkJPGRpdiBjbGFzcz0iIiBkYXRhLXRhYmM9ImNoazQiPgoJCQkJCQkJCUxhcyBjb29raWVzIGRlIHB1YmxpY2lkYWQgbm9zIHBlcm1pdGVuIGxhIGdlc3Rpw7NuIGRlIGxvcyBlc3BhY2lvcyBwdWJsaWNpdGFyaW9zIGluY2x1aWRvcyBlbiBudWVzdHJhIHDDoWdpbmEgd2ViIGVuIGJhc2UgYSBjcml0ZXJpb3MgY29tbyBlbCBjb250ZW5pZG8gbW9zdHJhZG8gbyBsYSBmcmVjdWVuY2lhIGVuIGxhIHF1ZSBzZSBtdWVzdHJhbiBsb3MgYW51bmNpb3MuCgkJCQkJCQkJQXPDrSBwb3IgZWplbXBsbywgc2kgc2UgdGUgaGEgbW9zdHJhZG8gdmFyaWFzIHZlY2VzIHVuIG1pc21vIGFudW5jaW8gZW4gbnVlc3RyYSBww6FnaW5hIHdlYiwgeSBubyBoYXMgbW9zdHJhZG8gdW4gaW50ZXLDqXMgcGVyc29uYWwgaGFjaWVuZG8gY2xpYyBzb2JyZSDDqWwsIGVzdGUgbm8gdm9sdmVyw6EgYSBhcGFyZWNlci4gRW4gcmVzdW1lbiwgYWN0aXZhbmRvIGVzdGUgdGlwbyBkZSBjb29raWVzLCBsYSBwdWJsaWNpZGFkIG1vc3RyYWRhIGVuIG51ZXN0cmEgcMOhZ2luYSB3ZWIgc2Vyw6EgbcOhcyDDunRpbCB5IGRpdmVyc2EsIHkgbWVub3MgcmVwZXRpdGl2YS4gCgkJCQkJCQkJUHVlZGVzIGFjdGl2YXIgbyBkZXNhY3RpdmFyIGVzdGFzIGNvb2tpZXMgbWFyY2FuZG8gbGEgY2FzaWxsYSBjb3JyZXNwb25kaWVudGUsIGVzdGFuZG8gZGVzYWN0aXZhZGFzIHBvciBkZWZlY3RvLgoJCQkJCQkJCTxici8+PGJyLz4KCQkJCQkJCTwvZGl2PgoJCQkJCQkJCgkJCQkJCQk8ZGl2IGNsYXNzPSJjY2xlYXIiPjwvZGl2PgoJCQkJCQkJPGlucHV0IHR5cGU9ImNoZWNrYm94IiBjaGVja2VkPSJjaGVja2VkIiBpZD0iY2hrNSI+PGxhYmVsIGZvcj0iY2hrNSI+Q29va2llcyBkZSBwdWJsaWNpZGFkIGNvbXBvcnRhbWVudGFsPC9sYWJlbD48c3BhbiBocmVmPSIjTm9uZSIgY2xhc3M9ImNwbHVzaWNvbiIgZGF0YS10YWI9ImNoazUiPis8L3NwYW4+CgkJCQkJCQk8ZGl2IGNsYXNzPSIiIGRhdGEtdGFiYz0iY2hrNSI+CgkJCQkJCQkJTGFzIGNvb2tpZXMgZGUgcHVibGljaWRhZCBjb21wb3J0YW1lbnRhbCBub3MgcGVybWl0ZW4gb2J0ZW5lciBpbmZvcm1hY2nDs24gYmFzYWRhIGVuIGxhIG9ic2VydmFjacOzbiBkZSB0dXMgaMOhYml0b3MgeSBjb21wb3J0YW1pZW50b3MgZGUgbmF2ZWdhY2nDs24gZW4gbGEgd2ViLCBhIGZpbiBkZSBwb2RlciBtb3N0cmFydGUgY29udGVuaWRvcyBwdWJsaWNpdGFyaW9zIHF1ZSBzZSBhanVzdGVuIG1lam9yIGEgdHVzIGd1c3RvcyBlIGludGVyZXNlcyBwZXJzb25hbGVzLgoJCQkJCQkJCVBhcmEgcXVlIGxvIGVudGllbmRhcyBkZSBtYW5lcmEgbXV5IHNlbmNpbGxhLCB0ZSBwb25kcmVtb3MgdW4gZWplbXBsbyBmaWN0aWNpbzogc2kgdHVzIMO6bHRpbWFzIGLDunNxdWVkYXMgZW4gbGEgd2ViIGVzdHV2aWVzZW4gcmVsYWNpb25hZGFzIGNvbiBsaXRlcmF0dXJhIGRlIHN1c3BlbnNlLCB0ZSBtb3N0cmFyw61hbW9zIHB1YmxpY2lkYWQgc29icmUgbGlicm9zIGRlIHN1c3BlbnNlLiAKCQkJCQkJCQlQb3IgdGFudG8sIGFjdGl2YW5kbyBlc3RlIHRpcG8gZGUgY29va2llcywgbGEgcHVibGljaWRhZCBxdWUgdGUgbW9zdHJlbW9zIGVuIG51ZXN0cmEgcMOhZ2luYSB3ZWIgbm8gc2Vyw6EgZ2Vuw6lyaWNhLCBzaW5vIHF1ZSBlc3RhcsOhIG9yaWVudGFkYSBhIHR1cyBiw7pzcXVlZGFzLCBndXN0b3MgZSBpbnRlcmVzZXMsIGFqdXN0w6FuZG9zZSBwb3IgdGFudG8gZXhjbHVzaXZhbWVudGUgYSB0aS4KCQkJCQkJCQlQdWVkZXMgYWN0aXZhciBvIGRlc2FjdGl2YXIgZXN0YXMgY29va2llcyBtYXJjYW5kbyBsYSBjYXNpbGxhIGNvcnJlc3BvbmRpZW50ZSwgZXN0YW5kbyBkZXNhY3RpdmFkYXMgcG9yIGRlZmVjdG8uCgkJCQkJCQkJPGJyLz4KCQkJCQkJCQlQYXJhIHF1ZSBsbyBlbnRpZW5kYXMgZGUgbWFuZXJhIG11eSBzZW5jaWxsYSwgdGUgcG9uZHJlbW9zIHVuIGVqZW1wbG8gZmljdGljaW86IHNpIHR1cyDDumx0aW1hcyBiw7pzcXVlZGFzIGVuIGxhIHdlYiBlc3R1dmllc2VuIHJlbGFjaW9uYWRhcyBjb24gbGl0ZXJhdHVyYSBkZSBzdXNwZW5zZSwgdGUgbW9zdHJhcsOtYW1vcyBwdWJsaWNpZGFkIHNvYnJlIGxpYnJvcyBkZSBzdXNwZW5zZS4gCgkJCQkJCQkJUG9yIHRhbnRvLCBhY3RpdmFuZG8gZXN0ZSB0aXBvIGRlIGNvb2tpZXMsIGxhIHB1YmxpY2lkYWQgcXVlIHRlIG1vc3RyZW1vcyBlbiBudWVzdHJhIHDDoWdpbmEgd2ViIG5vIHNlcsOhIGdlbsOpcmljYSwgc2lubyBxdWUgZXN0YXLDoSBvcmllbnRhZGEgYSB0dXMgYsO6c3F1ZWRhcywgZ3VzdG9zIGUgaW50ZXJlc2VzLCBhanVzdMOhbmRvc2UgcG9yIHRhbnRvIGV4Y2x1c2l2YW1lbnRlIGEgdGkuCgkJCQkJCQkJUHVlZGVzIGFjdGl2YXIgbyBkZXNhY3RpdmFyIGVzdGFzIGNvb2tpZXMgbWFyY2FuZG8gbGEgY2FzaWxsYSBjb3JyZXNwb25kaWVudGUsIGVzdGFuZG8gZGVzYWN0aXZhZGFzIHBvciBkZWZlY3RvLgoJCQkJCQkJCTxici8+PGJyLz4KCQkJCQkJCTwvZGl2PgoJCQkJCQk8L2Rpdj4KCQkJCQk8L2Rpdj4KCQkJCQk8ZGl2IGNsYXNzPSJjbXQiPgoJCQkJCQk8YSBocmVmPSIjTm9uZSIgaWQ9IiIgY2xhc3M9ImNidXR0b24gY29va2llcy1hY2NlcHQiPkFDRVBUQVIgVE9EQVM8L2E+CgkJCQkJCTxhIGhyZWY9IiNOb25lIiBpZD0iIiBjbGFzcz0iY2J1dHRvbiBjb29raWVzLXNhdmUiPkdVQVJEQVIgQ09ORklHVVJBQ0nDk048L2E+CgkJCQkJCTxhIGhyZWY9IiNOb25lIiBpZD0iIiBjbGFzcz0iY2J1dHRvbi0yIGNvb2tpZXMtbmVlZGVkIGNvb2tpZXMtcmVqZWN0Ij5SRUNIQVpBUiBUT0RBUzwvYT4KCQkJCQk8L2Rpdj4KCQkJCQk8ZGl2IGNsYXNzPSJjY2xlYXIiPjwvZGl2PgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJjY29udGVudCBmaXJzdHBhZ2UiPgoJCQkJCTxkaXYgY2xhc3M9IiI+CgkJCQkJCTxoND5Db25maWd1cmFjacOzbiBkZSBDb29raWVzPC9oND4KCQkJCQkJVXRpbGl6YW1vcyBjb29raWVzIHByb3BpYXMgeSBkZSB0ZXJjZXJvcyBwYXJhIGFuYWxpemFyIG51ZXN0cm9zIHNlcnZpY2lvcyB5IG1vc3RyYXJ0ZSBwdWJsaWNpZGFkIHJlbGFjaW9uYWRhIGNvbiB0dXMgcHJlZmVyZW5jaWFzIGVuIGJhc2UgYSB1biBwZXJmaWwgZWxhYm9yYWRvIGEgcGFydGlyIGRlIHR1cyBow6FiaXRvcyBkZSBuYXZlZ2FjacOzbiAocG9yIGVqZW1wbG8sIHDDoWdpbmFzIHZpc2l0YWRhcykuIFB1ZWRlcyBhY2VwdGFyIHRvZGFzIGVzdGFzIGNvb2tpZXMgcHVsc2FuZG8gZWwgYm90w7NuIEFDRVBUQVIgbyBjb25maWd1cmFybGFzIG8gcmVjaGF6YXIgc3UgdXNvIGNsaWNhbmRvIGVuIGVsIGFwYXJ0YWRvIDxhIGhyZWY9IiNOb25lIiBjbGFzcz0iY29va2llLXByZWYiPkNPTkZJR1VSQUNJw5NOIERFIENPT0tJRVM8L2E+LgoJCQkJCQk8YnIgLz48YnIgLz4KCQkJCQkJU2kgcXVpZXJlcyBtw6FzIGluZm9ybWFjacOzbiwgY29uc3VsdGEgbGEgPGEgaHJlZj0iL3BvbGl0aWNhLWRlLWNvb2tpZXMvIj5Qb2zDrXRpY2EgZGUgQ29va2llczwvYT4geSA8YSBocmVmPSIjTm9uZSIgY2xhc3M9ImNvb2tpZS1wcmVmIj5MaXN0YSBkZSBDb29raWVzPC9hPiBkZQoJCQkJCQludWVzdHJhIHDDoWdpbmEgd2ViLgoJCQkJCTwvZGl2PgoJCQkJCTxkaXYgY2xhc3M9ImNtdCI+CgkJCQkJCTxhIGhyZWY9IiNOb25lIiBpZD0iIiBjbGFzcz0iY2J1dHRvbiBjb29raWVzLWFjY2VwdCI+QUNFUFRBUiBUT0RBUzwvYT4KCQkJCQkJPGEgaHJlZj0iI05vbmUiIGlkPSIiIGNsYXNzPSJjb29raWUtcHJlZiBjYnV0dG9uIj5DT05GSUdVUkFSIENPT0tJRVM8L2E+CgkJCQkJCTxhIGhyZWY9IiNOb25lIiBpZD0iIiBjbGFzcz0iY2J1dHRvbi0yIGNvb2tpZXMtbmVlZGVkIGNvb2tpZXMtcmVqZWN0Ij5SRUNIQVpBUiBUT0RBUzwvYT4KCQkJCQk8L2Rpdj4KCQkJCQk8ZGl2IGNsYXNzPSJjY2xlYXIiPjwvZGl2PgoJCQkJPC9kaXY+CgkJCTwvZGl2PgoJCTwvZGl2Pgo8c2NyaXB0Pgp2YXIgaGV4Y29va2llQmFzZSA9ICIvaENvb2tpZXMiOyAvKmpRdWVyeSBsb2FkZWQgb24gRE9NIGNoZWNrKi8KaWYgKHR5cGVvZiBqUXVlcnkgPT0gJ3VuZGVmaW5lZCcpIHsKICAgIHZhciBUQUcgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYm9keSIpWzBdOwogICAgdmFyIGpxVGFnID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7CiAgICBqcVRhZy50eXBlID0gJ3RleHQvamF2YXNjcmlwdCc7CiAgICBqcVRhZy5zcmMgPSBoZXhjb29raWVCYXNlICsgJy9saWJzLmpxdWVyeS5jb29raWVzLmpzJzsKICAgIFRBRy5hcHBlbmRDaGlsZChqcVRhZyk7CiAgICBpZiAobmF2aWdhdG9yLmFwcE5hbWUuaW5kZXhPZigiSW50ZXJuZXQgRXhwbG9yZXIiKSAhPSAtMSkgewogICAgICAgIC8qSWYgSUUqLwogICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIEhleEluaXQoKTsKICAgICAgICB9LCAxMDAwKTsKICAgIH0gZWxzZSB7CiAgICAgICAganFUYWcub25sb2FkID0gSGV4SW5pdDsKICAgIH0KfSBlbHNlIHsKICAgIHZhciBUQUcgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYm9keSIpWzBdOwogICAgdmFyIGpxVGFnID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7CiAgICBqcVRhZy50eXBlID0gJ3RleHQvamF2YXNjcmlwdCc7CiAgICBqcVRhZy5zcmMgPSBoZXhjb29raWVCYXNlICsgJy9saWJzLmNvb2tpZS5qcyc7CiAgICBUQUcuYXBwZW5kQ2hpbGQoanFUYWcpOwogICAganFUYWcub25sb2FkID0gSGV4SW5pdDsKICAgIGlmIChuYXZpZ2F0b3IuYXBwTmFtZS5pbmRleE9mKCJJbnRlcm5ldCBFeHBsb3JlciIpICE9IC0xKSB7CiAgICAgICAgLypJZiBJRSovCiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgSGV4SW5pdCgpOwogICAgICAgIH0sIDEwMDApOwogICAgfSBlbHNlIHsKICAgICAgICBqcVRhZy5vbmxvYWQgPSBIZXhJbml0OwogICAgfQp9CgpmdW5jdGlvbiBIZXhJbml0KCkgeyAKCWpRdWVyeS5leHRlbmQoewoJCWVtcHR5OiBmdW5jdGlvbiAobykgewoJCQlpZiAoIWpRdWVyeS5pc0Z1bmN0aW9uKG8pICYmIChvID09IG51bGwgfHwgbyA9PSB1bmRlZmluZWQgfHwgbyA9PSAiIiB8fCBvLmxlbmd0aCA9PSAwKSkgewoJCQkJcmV0dXJuIHRydWU7CgkJCX0KCQkJcmV0dXJuIGZhbHNlCgkJfQoJfSk7CgkKCWlmIChqUXVlcnkuY29va2llKCJIZXhDb29raWVTZWVkIikgIT0gIjEiKSB7CgkJalF1ZXJ5KCJib2R5IC5jb29raWVzIikuY3NzKHsKCQkJImRpc3BsYXkiOiAiZmxleCIKCQl9KTsKCX0KCQoJalF1ZXJ5KCIjY29va2llcy1jb25maWciKS5jbGljayhmdW5jdGlvbigpewoJCWpRdWVyeSgiYm9keSAuY29va2llcyIpLmNzcyh7CgkJCSJkaXNwbGF5IjogImZsZXgiCgkJfSk7Cgl9KTsJCgkKCS8qU2F2ZWQgb3B0aW9ucyovCglpZihqUXVlcnkuY29va2llKCJIZXhDb29raWVTZWVkLTEiKSA9PSAiMSIpIHsKCQlqUXVlcnkoIiNjaGsxIikuYXR0cigiY2hlY2tlZCIsImNoZWNrZWQiKTsKCX0KCWlmKGpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtMiIpID09ICIxIikgewoJCWpRdWVyeSgiI2NoazIiKS5hdHRyKCJjaGVja2VkIiwiY2hlY2tlZCIpOwoJfQoJaWYoalF1ZXJ5LmNvb2tpZSgiSGV4Q29va2llU2VlZC0zIikgPT0gIjEiKSB7CgkJalF1ZXJ5KCIjY2hrMyIpLmF0dHIoImNoZWNrZWQiLCJjaGVja2VkIik7Cgl9CglpZihqUXVlcnkuY29va2llKCJIZXhDb29raWVTZWVkLTQiKSA9PSAiMSIpIHsKCQlqUXVlcnkoIiNjaGs0IikuYXR0cigiY2hlY2tlZCIsImNoZWNrZWQiKTsKCX0KCWlmKGpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtNSIpID09ICIxIikgewoJCWpRdWVyeSgiI2NoazUiKS5hdHRyKCJjaGVja2VkIiwiY2hlY2tlZCIpOwoJfQoJCgkvKkdvb2dsZSBBbmFseXRpY3MqLwoJaWYoalF1ZXJ5LmNvb2tpZSgiSGV4Q29va2llU2VlZC0yIikgIT0gIjEiKSB7CgkJLypSZW1vdmUgdGFnKi8KCQlqUXVlcnkoInNjcmlwdDpjb250YWlucyhnb29nbGV0YWdtYW5hZ2VyKSIpLnJlbW92ZSgpOwoJfQoJCQoJalF1ZXJ5KCIuY29va2llLXByZWYsIGE6Y29udGFpbnMoJ0NvbmZpZ3VyYWRvciBkZSBDb29raWVzJykiKS5jbGljayhmdW5jdGlvbiAoKSB7CgkJalF1ZXJ5KCJib2R5IC5jb29raWVzIikuc2hvdygpOwoJCWpRdWVyeSgiLnByZWZlcmVuY2VzIikucmVtb3ZlQ2xhc3MoImNoaWRlIik7CgkJalF1ZXJ5KCIuY29va2llcyIpLmFkZENsYXNzKCJwcmVmZXJlbmNlIik7CgkJalF1ZXJ5KCIuZmlyc3RwYWdlIikuYWRkQ2xhc3MoImNoaWRlIik7Cgl9KTsKCQoJLypDbG9zZSBidXR0b24qLwoJalF1ZXJ5KCIuY29va2llcy1zYXZlIikuY2xpY2soZnVuY3Rpb24oKXsKCQoJCS8qQ3VzdG9tIGNoZWNrcyovCgkJaWYoalF1ZXJ5KCIjY2hrMSIpLmlzKCI6Y2hlY2tlZCIpICl7CgkJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtMSIsIjEiLHsgZXhwaXJlczogMzY1LCBwYXRoOiAnLycgfSk7CgkJfWVsc2V7CgkJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtMSIsIiIseyBleHBpcmVzOiAzNjUsIHBhdGg6ICcvJyB9KTsKCQl9CgkJaWYoalF1ZXJ5KCIjY2hrMiIpLmlzKCI6Y2hlY2tlZCIpICl7CgkJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtMiIsIjEiLHsgZXhwaXJlczogMzY1LCBwYXRoOiAnLycgfSk7CgkJfWVsc2V7CgkJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtMiIsIiIseyBleHBpcmVzOiAzNjUsIHBhdGg6ICcvJyB9KTsKCQl9CgkJaWYoalF1ZXJ5KCIjY2hrMyIpLmlzKCI6Y2hlY2tlZCIpICl7CgkJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtMyIsIjEiLHsgZXhwaXJlczogMzY1LCBwYXRoOiAnLycgfSk7CgkJfWVsc2V7CgkJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtMyIsIiIseyBleHBpcmVzOiAzNjUsIHBhdGg6ICcvJyB9KTsKCQl9CgkJaWYoalF1ZXJ5KCIjY2hrNCIpLmlzKCI6Y2hlY2tlZCIpICl7CgkJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtNCIsIjEiLHsgZXhwaXJlczogMzY1LCBwYXRoOiAnLycgfSk7CgkJfWVsc2V7CgkJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtNCIsIiIseyBleHBpcmVzOiAzNjUsIHBhdGg6ICcvJyB9KTsKCQl9CgkJaWYoalF1ZXJ5KCIjY2hrNSIpLmlzKCI6Y2hlY2tlZCIpICl7CgkJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtNSIsIjEiLHsgZXhwaXJlczogMzY1LCBwYXRoOiAnLycgfSk7CgkJfWVsc2V7CgkJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtNSIsIiIseyBleHBpcmVzOiAzNjUsIHBhdGg6ICcvJyB9KTsKCQl9CgkJCgkJLypDb29raWVzIGFjY2VwdCBhbmQgc2F2ZWQqLwoJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQiLCIxIix7IGV4cGlyZXM6IDM2NSwgcGF0aDogJy8nIH0pOwoJCQoJCS8qSGlkZSBkaXNjbGFpbWVyKi8KCQlqUXVlcnkoImJvZHkgLmNvb2tpZXMiKS5oaWRlKCk7Cgl9KTsKCQoJalF1ZXJ5KCIuY29va2llcy1uZWVkZWQiKS5jbGljayhmdW5jdGlvbigpewoJCgkJLypORUVERUQgQ09PS0lFUyovCgkJalF1ZXJ5LmNvb2tpZSgiSGV4Q29va2llU2VlZC0xIiwiMSIseyBleHBpcmVzOiAzNjUsIHBhdGg6ICcvJyB9KTsKCQlqUXVlcnkuY29va2llKCJIZXhDb29raWVTZWVkLTIiLCIwIix7IGV4cGlyZXM6IDM2NSwgcGF0aDogJy8nIH0pOwoJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtMyIsIjAiLHsgZXhwaXJlczogMzY1LCBwYXRoOiAnLycgfSk7CgkJalF1ZXJ5LmNvb2tpZSgiSGV4Q29va2llU2VlZC00IiwiMCIseyBleHBpcmVzOiAzNjUsIHBhdGg6ICcvJyB9KTsKCQlqUXVlcnkuY29va2llKCJIZXhDb29raWVTZWVkLTUiLCIwIix7IGV4cGlyZXM6IDM2NSwgcGF0aDogJy8nIH0pOwoJCQoJCWpRdWVyeSgiI2NoazEiKS5wcm9wKCAiY2hlY2tlZCIsIHRydWUgKTsKCQlqUXVlcnkoIiNjaGsyIikucHJvcCggImNoZWNrZWQiLCBmYWxzZSApOwoJCWpRdWVyeSgiI2NoazMiKS5wcm9wKCAiY2hlY2tlZCIsIGZhbHNlICk7CgkJalF1ZXJ5KCIjY2hrNCIpLnByb3AoICJjaGVja2VkIiwgZmFsc2UgKTsKCQlqUXVlcnkoIiNjaGs1IikucHJvcCggImNoZWNrZWQiLCBmYWxzZSApOwoJCQoJCS8qQ29va2llcyBhY2NlcHQgYW5kIHNhdmVkKi8KCQlqUXVlcnkuY29va2llKCJIZXhDb29raWVTZWVkIiwiMSIseyBleHBpcmVzOiAzNjUsIHBhdGg6ICcvJyB9KTsKCQkKCQkvKkhpZGUgZGlzY2xhaW1lciovCgkJalF1ZXJ5KCJib2R5IC5jb29raWVzIikuaGlkZSgpOwoJfSk7CgkKCWpRdWVyeSgiLmNvb2tpZXMtYWNjZXB0IikuY2xpY2soZnVuY3Rpb24oKXsKCQoJCS8qQUxMIENPT0tJRVMqLwoJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtMSIsIjEiLHsgZXhwaXJlczogMzY1LCBwYXRoOiAnLycgfSk7CgkJalF1ZXJ5LmNvb2tpZSgiSGV4Q29va2llU2VlZC0yIiwiMSIseyBleHBpcmVzOiAzNjUsIHBhdGg6ICcvJyB9KTsKCQlqUXVlcnkuY29va2llKCJIZXhDb29raWVTZWVkLTMiLCIxIix7IGV4cGlyZXM6IDM2NSwgcGF0aDogJy8nIH0pOwoJCWpRdWVyeS5jb29raWUoIkhleENvb2tpZVNlZWQtNCIsIjEiLHsgZXhwaXJlczogMzY1LCBwYXRoOiAnLycgfSk7CgkJalF1ZXJ5LmNvb2tpZSgiSGV4Q29va2llU2VlZC01IiwiMSIseyBleHBpcmVzOiAzNjUsIHBhdGg6ICcvJyB9KTsKCQkKCQlqUXVlcnkoIiNjaGsxIikucHJvcCggImNoZWNrZWQiLCB0cnVlICk7CgkJalF1ZXJ5KCIjY2hrMiIpLnByb3AoICJjaGVja2VkIiwgdHJ1ZSApOwoJCWpRdWVyeSgiI2NoazMiKS5wcm9wKCAiY2hlY2tlZCIsIHRydWUgKTsKCQlqUXVlcnkoIiNjaGs0IikucHJvcCggImNoZWNrZWQiLCB0cnVlICk7CgkJalF1ZXJ5KCIjY2hrNSIpLnByb3AoICJjaGVja2VkIiwgdHJ1ZSApOwoJCQoJCS8qQ29va2llcyBhY2NlcHQgYW5kIHNhdmVkKi8KCQlqUXVlcnkuY29va2llKCJIZXhDb29raWVTZWVkIiwiMSIseyBleHBpcmVzOiAzNjUsIHBhdGg6ICcvJyB9KTsKCQkKCQkvKkhpZGUgZGlzY2xhaW1lciovCgkJalF1ZXJ5KCJib2R5IC5jb29raWVzIikuaGlkZSgpOwoJfSk7CgkKCWpRdWVyeSgiLmNvb2tpZXMtcmVqZWN0IikuY2xpY2soZnVuY3Rpb24gKCkgeyAKCQlqUXVlcnkuY29va2llKCJIZXhDb29raWVTZWVkIiwgIjEiLCB7CgkJCWV4cGlyZXM6IDM2NSwKCQkJcGF0aDogJy8nCgkJfSk7IAoJCWpRdWVyeSgiYm9keSAuY29va2llcyIpLmhpZGUoKTsKCX0pOwoJCglqUXVlcnkoIi5jb29raWVwcmVmIikuY2xpY2soZnVuY3Rpb24oKXsKCQlqUXVlcnkoIiNjb29raWUtcHJlZiIpLnRyaWdnZXIoImNsaWNrIik7Cgl9KTsKCQoJLy/ilr0g4pazCglqUXVlcnkoIi5jb29raWVzIFtkYXRhLXRhYmNdIikuYWRkQ2xhc3MoImNoaWRlIik7CglqUXVlcnkoIi5jb29raWVzIC5jcGx1c2ljb24iKS5jbGljayhmdW5jdGlvbigpewoJCXZhciBvcmdTdGF0ZSA9IGpRdWVyeSh0aGlzKS5odG1sKCkrIiI7CgkJCgkJalF1ZXJ5KCIuY29va2llcyBbZGF0YS10YWJjXSIpLmFkZENsYXNzKCJjaGlkZSIpOwoJCWpRdWVyeSgiLmNvb2tpZXMgW2RhdGEtdGFiXSIpLmh0bWwoIisiKTsKCQlqUXVlcnkoIi5jb29raWVzIFtkYXRhLXRhYl0iKS5hdHRyKCJzdHlsZSIsIiIpOwoJCQoJCWlmKCBvcmdTdGF0ZS5pbmRleE9mKCIrIikgPj0gMCl7CgkJCXZhciB0YWJTZWwgPSBqUXVlcnkodGhpcykuYXR0cigiZGF0YS10YWIiKTsKCQkJalF1ZXJ5KHRoaXMpLmh0bWwoIi0iKTsKCQkJalF1ZXJ5KHRoaXMpLmF0dHIoInN0eWxlIiwicGFkZGluZy1sZWZ0OjdweDsiKTsKCQkJalF1ZXJ5KCIuY29va2llcyBbZGF0YS10YWJjPSciK3RhYlNlbCsiJ10iKS5yZW1vdmVDbGFzcygiY2hpZGUiKTsKCQl9Cgl9KTsKfQo8L3NjcmlwdD4KPHN0eWxlPgovKkNvbG9ycyBDU1MqLwouY29va2llcyAucHJlZmNvbnsKCW1heC1oZWlnaHQ6NTB2aDsKICAgIHBhZGRpbmc6IDAgMjBweCAwIDA7CglvdmVyZmxvdy15OnNjcm9sbDsKfQouY29va2llcyAuY2NsZWFyewoJY2xlYXI6Ym90aDsKfQoKCi5jb29raWVzIC5jcGx1c2ljb257CiAgICBmb250LXNpemU6IDE2cHg7CiAgICBsaW5lLWhlaWdodDogMTJweDsKICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICBjb2xvcjogIzAwMDsKICAgIGJvcmRlcjogbm9uZTsKICAgIGJvcmRlci1yYWRpdXM6IDA7CiAgICBwYWRkaW5nOiAwcHggMCAwIDBweDsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIHdpZHRoOiAxOHB4OwogICAgaGVpZ2h0OiAxOHB4OwogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgbWFyZ2luOiAycHggMCAwIDA7CiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOwp9Ci5jb29raWVzIC5jcGx1c2ljb246aG92ZXJ7CiAgICBjb2xvcjogIzY2NjsKfQogLmNvb2tpZXMgYXsKICAgICBjb2xvcjojMDAwOwp9CiAuY29va2llcyAuY210ewoJIG1hcmdpbi10b3A6MjBweDsKfQogLmNvb2tpZXMgLmNjb250ZW50IGEud2hpdGV7CiAgICAgY29sb3I6IzAwMDsKfQogLmNvb2tpZXMgLmNjb250ZW50IC5jYnV0dG9uewogICAgIGJhY2tncm91bmQ6I2ZmZjsKCWJvcmRlci1jb2xvcjogIzAwMDsKCWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7Cglib3JkZXI6IDJweCBzb2xpZDsKfQouY29va2llcyAuY2NvbnRlbnQgLmNidXR0b24tMnsKICAgIGJhY2tncm91bmQ6I2ZmZjsKCWJvcmRlci1jb2xvcjogIzAwMDsKCWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7Cglib3JkZXI6IDJweCBzb2xpZDsKfQovKkdlbmVyYWwgQ1NTKi8KCSNjb29raWVzLWNvbmZpZyB7CgkJY3Vyc29yOnBvaW50ZXI7Cgl9CiAuY29va2llcyAqewogICAgIGZvbnQtc2l6ZToxMnB4OwogICAgIGxpbmUtaGVpZ2h0OjIwcHg7CiAgICAgY29sb3I6IzAwMDsKfQouY29va2llcyBoNCB7Cglmb250LXNpemU6IDI0cHggIWltcG9ydGFudDsKCWxpbmUtaGVpZ2h0OiAyOHB4OwoJZm9udC13ZWlnaHQ6IDcwMDsKfQogLmNvb2tpZXMgYXsKICAgICBmb250LXNpemU6MTBweDsKfQogLmNvb2tpZXMgYTpob3ZlcnsKICAgICBmb250LXNpemU6MTBweCAhaW1wb3J0YW50Owp9CiAuY29va2llcyAud3JpZ2h0IGF7CiAgICAgZm9udC1zaXplOjE2cHggIWltcG9ydGFudDsKfQouY29va2llc3sgICAgIAogICAgIHBvc2l0aW9uOmZpeGVkOwkKCSBkaXNwbGF5Om5vbmU7CiAgICAgYm90dG9tOiA0MHB4OwogICAgIGxlZnQ6IDUwJTsKCSB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgICAgei1pbmRleDo5OTk5OwoJIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgIGJvcmRlcjogMXB4IHNvbGlkICNGRjAwMDA7CgkgdmVydGljYWwtYWxpZ246Ym90dG9tOwoJIGJveC1zaGFkb3c6IDEwcHggMTBweCAzMHB4IHJnYmEoMCwgMCwgMCwgMC41KTsKfQogLmNvb2tpZXMgLmNjb29raWV7CgkgYWxpZ24tc2VsZjogY2VudGVyOwogICAgIHdpZHRoOjY1MHB4OwogICAgIGhlaWdodDphdXRvOwoJIG1hcmdpbjogYXV0bzsKfQogLmNvb2tpZXMgLmNjb250ZW50ewogICAgIGxpbmUtaGVpZ2h0OiAyMHB4OwogICAgIGJhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSk7CiAgICAgY29sb3I6IzMzMzsKICAgICBwYWRkaW5nOjQwcHg7CiAgICAgZm9udC1zaXplOjEwcHg7Cn0KIC5jb29raWVzIC5jY29udGVudC5wcmVmZXJlbmNlcyBpbnB1dHsKICAgICB3aWR0aDphdXRvOwogICAgIG1hcmdpbjogMCAxMHB4IDAgMDsKfQogLmNvb2tpZXMgLmNjb250ZW50LnByZWZlcmVuY2VzIGxhYmVsewogICAgIGZvbnQtd2VpZ2h0OmJvbGQ7CiAgICAgY3Vyc29yOnBvaW50ZXI7Cn0KIC5jb29raWVzIC5jY29udGVudCBhewogICAgIG1hcmdpbjowcHg7CiAgICAgZm9udC13ZWlnaHQ6NDAwOwp9CiAuY29va2llcyAuY2NvbnRlbnQgYTpob3ZlcnsKICAgICBjb2xvcjojMDAwOwogICAgIGZvbnQtc2l6ZToxMnB4Owp9CiAuY29va2llcyAuY2NvbnRlbnQgLmNidXR0b24sIC5jb29raWVzIC5jY29udGVudCAuY2J1dHRvbi0yewogICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrOwogICAgIGNvbG9yOiMzMzM7CiAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7CgkgdGV4dC1hbGlnbjpjZW50ZXI7CiAgICAgZm9udC13ZWlnaHQ6NjAwOwogICAgIGZvbnQtc2l6ZToxMXB4ICFpbXBvcnRhbnQ7CiAgICBwYWRkaW5nOiAxMHB4IDJweDsKICAgIG1hcmdpbjogMHB4IDAgMTBweCAwOwogICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgd2lkdGg6IDMyJTsKfQogLmNvb2tpZXMgLmNjb250ZW50IC5jYnV0dG9uOmhvdmVyLCAgLmNvb2tpZXMgLmNjb250ZW50IC5jYnV0dG9uLTI6aG92ZXJ7CiAgICAgYmFja2dyb3VuZDojMzMzOwogICAgIGNvbG9yOiNmZmYhaW1wb3J0YW50Owp9CiAuY29va2llcyAuY2NsZWFyewogICAgIGNsZWFyOmJvdGg7Cn0KIC5jb29raWVzIGxhYmVsIHsKCXZlcnRpY2FsLWFsaWduOiB0b3A7CiAgICBtYXJnaW4tbGVmdDogNXB4OwogICAgbWFyZ2luLXJpZ2h0OiA1cHg7CiAgICBtYXJnaW4tdG9wOiAtMnB4Owp9CkBtZWRpYSAobWF4LXdpZHRoOiA5NzZweCkgewoJLmNvb2tpZXMgLnByZWZjb24gewoJCW1heC1oZWlnaHQ6IDQwdmg7Cgl9CgkuY29va2llcyBoNCB7CgkJZm9udC1zaXplOiAyMHB4ICFpbXBvcnRhbnQ7CgkJbGluZS1oZWlnaHQ6IDI0cHg7Cgl9CiAuY29va2llc3sgICAgIAogICAgIHBvc2l0aW9uOmZpeGVkOwkKCSBkaXNwbGF5Om5vbmU7CiAgICAgYm90dG9tOiAwOwogICAgIGxlZnQ6IDA7CiAgICAgd2lkdGg6MTAwJTsKICAgICBtYXgtaGVpZ2h0OjEwMCU7CgkgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTsKCSBvdmVyZmxvdy15OnNjcm9sbDsKfQogLmNvb2tpZXMgLmNjb29raWV7CiAgICAgd2lkdGg6MTAwJTsKICAgICBoZWlnaHQ6MTAwJTsKfQoJLmNvb2tpZXMgbGFiZWwgewoJCW1hcmdpbi1sZWZ0OiAzcHg7CgkJbWFyZ2luLXJpZ2h0OiA1cHg7Cgl9CgkuY29va2llcyAuY2NvbnRlbnQgewoJCXBhZGRpbmc6IDE1cHg7Cgl9CgkuY29va2llcyAuY2NvbnRlbnQgLmNidXR0b24sIC5jb29raWVzIC5jY29udGVudCAuY2J1dHRvbi0yewoJCXdpZHRoOiAxMDAlOwoJfQp9CiAuY2hpZGV7CiAgICAgZGlzcGxheTpub25lICFpbXBvcnRhbnQ7Cn0KPC9zdHlsZT4=