• PORTADA
    • Últimas noticias
    • España
      • Andalucía
      • Aragón
      • Canarias
      • Castilla y León
      • Castilla-La Mancha
      • Cataluña
      • Comunidad Valenciana
      • Madrid
      • Galicia
      • País Vasco
    • OKBaleares
    • Navarra.com
    • Opinión
    • Investigación
    • Economía
      • Empresas
      • Consumo
      • Empleo
    • Sociedad
    • Metabolic
    • Talent24H
    • Techy
    • Diario Madridista
      • Últimas noticias
      • Real Madrid
    • Deportes
      • Fútbol
      • Atlético de Madrid
      • Barcelona
      • Champions League
      • Tenis
      • Fórmula 1
    • Mundial 2026
    • Sucesos
    • Internacional
    • Cool
      • Actualidad
      • Belleza
      • Casa Real
      • Famosos
      • Moda
      • Lifestyle
      • Televisión
    • HappyFM
    • Cine y Series
    • OKMotor
    • OKSalud
    • OKGreen
    • Curiosidades
    • ESPECIALES
      • Recetas
      • ¿Cómo se hace?
      • Religión
      • Mascotas
      • Bebés
      • Tecnología
      • Naturaleza
      • Educación
      • Historia
      • Ciencia
      • Listas
      • Gastronomía
      • Historia
      • Horóscopo
    • OKPlanes
    • OKCLUB
    • OkShopping
    • Lotería
    • SER PADRES
    • MIA REVISTA
    • Muy interesante
Destacados:
  • Muerte Maricarmen
  • Maricarmen 29N
  • Anticorrupción PSOE cloacas
  • Maricarmen Sánchez
  • Causas muerte Maricarmen
  • Sumar Sánchez saharauis
  • Sánchez AVE Sevilla
  • Juez Biedma Audiencia Nacional
  • Supremo Ley de Nietos
  • Presidente de Correos 29-N
  • Acampadas Sol Maricarmen
  • Feijóo Tellado 29N
  • Vox Ley de Nietos
  • Precio de la luz Ormuz
  • Más Madrid Ayuso
  • Jefe de la Policía Zapatero
  • Sánchez Bruselas
  • Audiencias 7 de octubre
  • Gobierno inmuebles Casa 47
  • Elecciones generales 29N
  • Viñeta Puebla
  • Horario GP de Indonesia
  • Masters 1000 de Shanghái 2026
  • Precio de la gasolina Madrid
  • Precio de la gasolina Andalucía
  • Últimas noticias
Más

    El sitio de los inconformistas

    8 Oct 2026
    Actualizado 13:16 CET
    INICIAR SESIÓN
    Es Noticia
    • JORGE REY avisa del tiempo para el PUENTE
    • La reflexión de LUIS sobre la factura de la LUZ
    • Los veterinarios explican por qué un PERRO huele a otros PERROS
    • El truco de la SAL para las VENTANAS
    • Buscan VOLUNTARIOS para vivir gratis en TORTOSA
    • La reflexión de ANTONIO GALA sobre la FELICIDAD
    • DECATHLON arrasa con este invento para casa
    • La reflexión de GARCÍA MÁRQUEZ sobre la CREACIÓN
    • La forma de apilar LEÑA marca la diferencia
    • Europa alerta sobre el INVIERNO y el ALUMBRADO
    • Buscan VOLUNTARIOS para vivir gratis en GREDOS
    • La SEGURIDAD SOCIAL confirma devolución de COTIZACIONES
    • Los expertos explican cómo usar la CREMA NIVEA
    • Convirtieron su jardín en un BOSQUE lleno de ESPECIES
    • La rutina de AYUSO para mantenerse en FORMA
    • La SEGURIDAD SOCIAL confirma esta ventaja para la JUBILACIÓN
    • Los expertos explican cómo cuidar la ROPA al LAVAR
    • La reflexión de ALPHASNIPER97 sobre ESPAÑA
    • La SEGURIDAD SOCIAL confirma esta JUBILACIÓN
    • La PLANTA ideal si convives con PERROS o gatos
    • La reflexión de JUAN PABLO II sobre la FAMILIA
    • El ESTATUTO permite este tipo de DESPIDO
    • La NASA detecta una extraña mancha en ALASKA
    • La reflexión de BORJA CAPPONI sobre los PERROS
    • Los albañiles recomiendan una CANICA para el DESAGÜE
    • La confesión de JULIO GONZÁLEZ sobre los ZAPATERO
    • Una CICLOGÉNESIS amenaza con llegar al MEDITERRÁNEO
    • El remedio natural contra los CHINCHES
    • El mensaje de MIGUEL ÁNGEL sobre la PENSIÓN
    • La reflexión de CERVANTES sobre la LIBERTAD
    • DECATHLON rebaja esta bicicleta ELÉCTRICA
    • La confesión de un PANADERO sobre la MADRUGADA
    • La reflexión de BENEDICTO XVI sobre la VERDAD
    • Recomiendan revisar los NEUMÁTICOS con una MONEDA
    • El mercado MEDIEVAL que llega a VALENCIA
    • La historia de DAVID TOMÉ y sus CABRAS

    Okdiario

    • España
    • Economía
    • Deportes
    • Diario Madridista
    • Investigación
    • Cool
    • Opinión
    • Sociedad
    • Lotería de Navidad
    • Directo
    • Última hora de la muerte de Maricarmen Abascal, en directo
    Última hora
    • Anticorrupción ve indicios para imputar al PSOE por las cloacas
    • CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQiIGNyb3Nzb3JpZ2luPgo8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vcC50eXBla2l0Lm5ldCIgY3Jvc3NvcmlnaW4+CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbSI+CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbSIgY3Jvc3NvcmlnaW4+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvaXFhMXFlYi5jc3MiPgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Um9ib3RvOndnaHRANDAwOzcwMCZkaXNwbGF5PXN3YXAiPgo8c3R5bGU+Ci8qIGFtcGxpdHVkZS1tZWRpdW0tY29uZGVuc2VkOiB2ZXIgcmVsYXRlZFVwcGVyY2FzZVRpdGxlRm9udCBt4XMgYWJham8uICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAiYW1wbGl0dWRlLW1lZGl1bS1jb25kZW5zZWQiOwogIHNyYzogdXJsKCJodHRwczovL29rZGlhcmlvLmNvbS93ZWIvdGhlbWVzL3YxMC9jc3MvX2ZvbnRzX2FtcGxpdHVkZS9BbXBsaXR1ZGUlMjBBdWJpJTIwTWVkaXVtJTIwQ25kLm90ZiIpOwp9Ci8qIGFtcGxpdHVkZS1ib29rOiB2ZXIgcmVsYXRlZEF1dGhvckZvbnQgbeFzIGFiYWpvLiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogImFtcGxpdHVkZS1ib29rIjsKICBzcmM6IHVybCgiaHR0cHM6Ly9va2RpYXJpby5jb20vd2ViL3RoZW1lcy92MTAvY3NzL19mb250c19hbXBsaXR1ZGUvQW1wbGl0dWRlJTIwQXViaSUyMEJvb2sub3RmIik7Cn0KLyogY29udGFpbmVyLXR5cGU6aW5saW5lLXNpemUgYXF17SBlcyBpbXByZXNjaW5kaWJsZTogY29udmllcnRlIGVzdGUgYmxvcXVlCiAgIGVuIGVsIGNvbnRlbmVkb3IgZGUgcmVmZXJlbmNpYSBwYXJhIGxvcyAiQGNvbnRhaW5lciAoLi4uLWlubGluZS1zaXplLi4uKSIKICAgZGUgbeFzIGFiYWpvLiBVc2Ftb3MgQGNvbnRhaW5lciBlbiB2ZXogZGUgQG1lZGlhIHBvcnF1ZSAiQG1lZGlhCiAgIChtYXgtaW5saW5lLXNpemU6Li4uKSIgTk8gZXMgdW5hIGNvbmRpY2nzbiBDU1MgduFsaWRhICYjODIxMjsgaW5saW5lLXNpemUgc29sbwogICBleGlzdGUgY29tbyBjYXJhY3Rlcu1zdGljYSBkZSBAY29udGFpbmVyLCBudW5jYSBkZSBAbWVkaWEgJiM4MjEyOyBhc+0gcXVlIGVzYXMKICAgcmVnbGFzIGphbeFzIHNlIGFjdGl2YWJhbiAodmVyaWZpY2FkbyBjb24gbWF0Y2hNZWRpYTogc2llbXByZSBmYWxzZSwgc2luCiAgIGltcG9ydGFyIGVsIGFuY2hvKSwgeSBwb3IgZXNvIGxhIG5vdGljaWEgcHJpbmNpcGFsIHBvZO1hIGRlc2FwYXJlY2VyIG8gZWwKICAgZGlzZfFvIG3zdmlsIG5vIHNlIGFjdGl2YWJhIG51bmNhLiBAY29udGFpbmVyIHPtIHNvcG9ydGEgaW5saW5lLXNpemUgZGUKICAgZm9ybWEgduFsaWRhLCB5IGV2aXRhIGlndWFsbWVudGUgbGEgcGFsYWJyYSAid2lkdGg6IiBxdWUgZWwgQ01TIGRlbAogICB1c3VhcmlvIGVsaW1pbmEgYWwgcGVnYXIgSFRNTC9DU1MgZGlyZWN0YW1lbnRlLiAqLwovKiBGSVggT0tESUFSSU8gKi8KICAgIC5pdGVtIGFydGljbGUgLmFydGljbGUtc2NyaXB0IHsKICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50OwogICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50OwogICAgfQovKiBDb250ZW5lZG9yIGRlIHRvZGEgbGEgYXBlcnR1cmEgKGNhYmVjZXJhICsgbm90aWNpYSBwcmluY2lwYWwgKyBjb2x1bW5hKToKICAgZm9uZG8gYmxhbmNvIHkgYWlyZSBhbHJlZGVkb3IsIHNvbG8gZW4gRGVzayAmIzgyMTI7IHZlciBvdmVycmlkZSBkZW50cm8gZGVsCiAgIEBjb250YWluZXIobWF4LWlubGluZS1zaXplOjg2MHB4KSBkZSBt4XMgYWJham8sIHF1ZSBsbyBhbnVsYSBwb3IgZGViYWpvCiAgIGRlIGVzZSBhbmNobyAoZXF1aXZhbGVudGUgYSBsYSB2aXN0YSBN83ZpbCksIHkgYXF17SBtaXNtbyBjb24gZWwgdGV4dG8gYQogICBsYSBpenF1aWVyZGEgbyBsYSBkZXJlY2hhIChib2R5UG9zaXRpb25CbG9ja3NDb2x1bW4pOiBjb24gZXNlIGxheW91dCBsYQogICBub3RpY2lhIHByaW5jaXBhbCB5YSBvY3VwYSBlbCAxMDAlIGRlbCBhbmNobyB5IHNvbGFwYSBzdSBwcm9waWEgZm90byBkZQogICBib3JkZSBhIGJvcmRlLCBhc+0gcXVlIGVsIGFpcmUvZm9uZG8gYmxhbmNvIHNvYnJhLiAqLwouYmxrLWh1d3Nqe21heC1pbmxpbmUtc2l6ZTo5NjBweDttYXJnaW46MCBhdXRvO2NvbnRhaW5lci10eXBlOmlubGluZS1zaXplO2JhY2tncm91bmQtY29sb3I6I2ZmZjtwYWRkaW5nOjEwcHg7fQouYmxrLWh1d3NqIGF7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y29sb3I6aW5oZXJpdH0KLmJsay1odXdzaiAucGFnZXtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6MTVweH0KLmJsay1odXdzaiAucGFnZSAuY29sdW1ue29yZGVyOjN9Ci5ibGstaHV3c2ogLnBhZ2UgLmxlYWR7b3JkZXI6Mn0KLyogODYwcHggeSBubyA0NzVweDogY29uIGxhIGNvbHVtbmEgZmlqYSAoMjIwcHggKyAyMHB4IGRlIGdhcCA9IDI0MHB4KSwKICAgY3VhbHF1aWVyIGFuY2hvIGRlIGlmcmFtZSBwb3IgZGViYWpvIGRlIH44NjBweCBkZWphIGxhIG5vdGljaWEgcHJpbmNpcGFsCiAgICgxZnIpIGNhZGEgdmV6IGNvbiBtZW5vcyBlc3BhY2lvIGhhc3RhIGNvbGFwc2FyIGEgMHB4IGRlIGFuY2hvIGFudGVzIGRlCiAgIGxsZWdhciBhIHVuIGJyZWFrcG9pbnQgdGFuIGJham8gY29tbyA0NzVweCAmIzgyMTI7IGxhIG5vdGljaWEgcHJpbmNpcGFsCiAgIGRpcmVjdGFtZW50ZSBkZXNhcGFyZWNlIGVuIGVzYSBmcmFuamEgaW50ZXJtZWRpYSAobmkgImRlc2siIGNvbXBsZXRvIG5pCiAgICJt83ZpbCIgZXN0cmVjaG8pLiBDb24gODYwcHggc2UgcGFzYSBhIHVuYSBzb2xhIGNvbHVtbmEgYXBpbGFkYSBhbnRlcyBkZQogICBxdWUgZXNvIHB1ZWRhIG9jdXJyaXIuCiAgIEVzdGUgYnJlYWtwb2ludCBzZSBvbWl0ZSBwb3IgY29tcGxldG8gbWllbnRyYXMgbGEgc2ltdWxhY2nzbiBkZSBhbmNobyBlc3TpCiAgIGFjdGl2YSAodmVyIGxlYWRXaWR0aFByZXZpZXcpOiBwZW5zYWRvIHBhcmEgY3VhbmRvIGVsIG3zZHVsbyBsbGV2YSBzdQogICBjb2x1bW5hIGEgOTYwcHgsIGRlamEgZGUgdGVuZXIgc2VudGlkbyBlbiB1bmEgZXhwb3J0YWNp824gZGUgc29sbyBsYQogICBub3RpY2lhIHByaW5jaXBhbCBhIHVuIGFuY2hvIGZpam8gZWxlZ2lkbyBhIG1hbm8gJiM4MjEyOyBsb3MgYW5jaG9zIHNpbXVsYWRvcwogICAoNjEzLzQ2MC8zMDdweCkgZXN04W4gVE9ET1MgcG9yIGRlYmFqbyBkZSA4NjBweCwgYXPtIHF1ZSBzaW4gZXN0ZSBnYXRpbmcKICAgZWwgSFRNTCBleHBvcnRhZG8gY2Flcu1hIHNpZW1wcmUgYSBsYSB0aXBvZ3JhZu1hICJN83ZpbCIgKGNvbiAhaW1wb3J0YW50KQogICBzZWEgY3VhbCBzZWEgbGEgcXVlIGVsIHVzdWFyaW8gY29uZmlndXLzIGVuICJEZXNrIiBwYXJhIGVzYSBzaW11bGFjafNuLAogICBkYW5kbyBsYSBmYWxzYSBzZW5zYWNp824gZGUgcXVlIHVuYSBjb25maWd1cmFjafNuICJwaXNhIiBhIG90cmEuICovCkBjb250YWluZXIgKG1heC1pbmxpbmUtc2l6ZTo4NjBweCl7CiAgLmJsay1odXdzantiYWNrZ3JvdW5kOm5vbmU7cGFkZGluZzowO30KICAuYmxrLWh1d3NqIC5wYWdle2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnJ9CiAgLmJsay1odXdzaiAucGFnZSAuc3RhY2stdGl0bGUge2ZvbnQtc2l6ZToxOHB4OyBsaW5lLWhlaWdodDogMS4yZW07fQogIC5ibGstaHV3c2ogLnBhZ2UgLnN0YWNrLWF1dGhvciB7bWFyZ2luLXRvcDogMTBweDt9CiAgLmJsay1odXdzaiAubGVhZC1tZWRpYS5pcy1pZnJhbWV7YmxvY2stc2l6ZTo0MDBweCAhaW1wb3J0YW50O30KICAuYmxrLWh1d3NqIC5sZWFkLW1lZGlhe2FzcGVjdC1yYXRpbzoxNi85ICFpbXBvcnRhbnQ7fQogIC5ibGstaHV3c2ogLnBhZ2UgLmxlYWR7b3JkZXI6MX0KICAuYmxrLWh1d3NqIC5wYWdlIC5jb2x1bW57b3JkZXI6Mn0KICAvKiBQb3IgZGViYWpvIGRlbCBicmVha3BvaW50LCBlbCBsZWFkLWJvZHkgc2llbXByZSB2dWVsdmUgYSBpciBkZWJham8gZGVsCiAgICAgbGVhZC1tZWRpYSAobm8gaGF5IHNpdGlvIHBhcmEgZWwgbGF5b3V0IGxhZG8gYSBsYWRvKS4gKi8KICAuYmxrLWh1d3NqIC5wYWdlIC5sZWFkLmxlYWQtYm9keS1sZWZ0LAogIC5ibGstaHV3c2ogLnBhZ2UgLmxlYWQubGVhZC1ib2R5LXJpZ2h0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthc3BlY3QtcmF0aW86YXV0bzt9CiAgLmJsay1odXdzaiAucGFnZSAubGVhZC5sZWFkLWJvZHktbGVmdCAubGVhZC1tZWRpYSwKICAuYmxrLWh1d3NqIC5wYWdlIC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1tZWRpYXtmbGV4OjEgMSBhdXRvO30KICAuYmxrLWh1d3NqIC5wYWdlIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWJvZHksCiAgLmJsay1odXdzaiAucGFnZSAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtYm9keXtmbGV4OjEgMSBhdXRvO2lubGluZS1zaXplOjkwJTttYXJnaW46LTMwcHggYXV0byAwO2Jsb2NrLXNpemU6YXV0bzthbGlnbi1zZWxmOmF1dG87anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7cGFkZGluZzoxMHB4O30KICAuYmxrLWh1d3NqIC5wYWdlIC5jb2x1bW4taXRlbXtib3JkZXI6MXB4IHNvbGlkICNlN2ViZWU7cGFkZGluZzoxMHB4O2JhY2tncm91bmQ6I2ZmZjtibG9jay1zaXplOnN0cmV0Y2g7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlO30KICAuYmxrLWh1d3NqIC5wYWdlIC5sZWZ0LXRpdGxle2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOjIwcHg7bGluZS1oZWlnaHQ6MS4xNTtjb2xvcjojMmMzZTUzO21hcmdpbjowO3RleHQtYWxpZ246bGVmdDt9CiAgLmJsay1odXdzaiAucGFnZSAuY29sdW1uLWl0ZW0udGl0bGUtb25seS1tb2JpbGUtMjEgLmxlZnQtdGl0bGV7Zm9udC1zaXplOjIxcHggIWltcG9ydGFudDt9CiAgLmJsay1odXdzaiAucGFnZSAuY29sdW1uLWl0ZW0udGl0bGUtb25seS1tb2JpbGUtMTggLmxlZnQtdGl0bGV7Zm9udC1zaXplOjE4cHggIWltcG9ydGFudDt9CiAgLmJsay1odXdzaiAucGFnZSAubGVmdC1wbGF5ewogICAgZmxleDowIDAgYXV0bztpbmxpbmUtc2l6ZToxNXB4O2Jsb2NrLXNpemU6MTVweDtib3JkZXItcmFkaXVzOjJweDsKICAgIGJhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICMwMGE3ZmY7CiAgICBkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MDsKICAgIHZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1ib3R0b206NHB4OwogIH0KICAuYmxrLWh1d3NqIC5wYWdlIC5sZWZ0LXBsYXk6OmJlZm9yZXsKICAgIGNvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztpbmxpbmUtc2l6ZTowO2Jsb2NrLXNpemU6MDsKICAgIGJvcmRlci1sZWZ0OjRweCBzb2xpZCAjMDBhN2ZmO2JvcmRlci10b3A6M3B4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206M3B4IHNvbGlkIHRyYW5zcGFyZW50O21hcmdpbi1sZWZ0OjFweDsKICB9Cn0KLyogVGlwb2dyYWbtYSAiTfN2aWwiIChhbnRldO10dWxvL3RpdHVsYXIvc3VidO10dWxvL3RpdHVsYXJlcyBhbmltYWRvcykgY29uIFNVCiAgIFBST1BJTyBicmVha3BvaW50ICg0ODBweCksIHNlcGFyYWRvIGRlbCBkZSBhcnJpYmEgKDg2MHB4LCBzb2xvIHBhcmEgYXBpbGFyCiAgIGxhIHJlamlsbGEgY29sdW1uYStub3RpY2lhKTogdW4gY29udGVuZWRvciByZWFsIGRlIG1lbm9zIGRlIDg2MHB4IGVzIG11eQogICBoYWJpdHVhbCAocC5lai4gdW5hIGNvbHVtbmEgZGUgYXJ07WN1bG8gZGUgfjcwMHB4KSB5IE5PIGVzIHVuIG3zdmlsICYjODIxMjsgY29uCiAgIHVuIPpuaWNvIGJyZWFrcG9pbnQgY29tcGFydGlkbywgbGEgdGlwb2dyYWbtYSAiRGVzayIgcXVlIGNvbmZpZ3VyYSBlbAogICB1c3VhcmlvIG5vIGxsZWdhYmEgYSB2ZXJzZSBudW5jYSBlbiBlc2UgY2FzbywgY2F5ZW5kbyBzaWVtcHJlIGEgbG9zIHZhbG9yZXMKICAgcG9yIGRlZmVjdG8gZGUgIk3zdmlsIiBzaW4gcXVlIG5hZGllIGxvIGh1YmllcmEgcGVkaWRvLiA0ODBweCBz7SBzZQogICBjb3JyZXNwb25kZSBjb24gdW4gYW5jaG8gZGUgbfN2aWwgcmVhbCAobGEgdmlzdGEgIk3zdmlsIiBkZWwgcHJvcGlvIGdlc3RvcgogICBzaW11bGEgMzc1cHgpLiBJZ3VhbCBxdWUgZWwgYnJlYWtwb2ludCBkZSBhcnJpYmEsIHNlIG9taXRlIGR1cmFudGUgbGEKICAgc2ltdWxhY2nzbiBkZSBhbmNobyBkZSBsYSBub3RpY2lhIHByaW5jaXBhbCAodmVyIGxlYWRXaWR0aFByZXZpZXcpLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6NDgwcHgpewogIC5ibGstaHV3c2ogLmxlYWQta2lja2Vye2ZvbnQtc2l6ZToxLjMxMjVyZW0gIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjEgIWltcG9ydGFudDtjb2xvcjojMDBBN0ZGICFpbXBvcnRhbnQ7fQogIC5ibGstaHV3c2ogLmxlYWQtc3VidGl0bGV7Zm9udC1zaXplOjEuMzEyNXJlbSAhaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjEuMSAhaW1wb3J0YW50O2NvbG9yOiMwMEE3RkYgIWltcG9ydGFudDt9CiAgLmJsay1odXdzaiAubGVhZC10aXRsZXtmb250LXNpemU6MS44NzVyZW0gIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjAyICFpbXBvcnRhbnQ7fQogIC5ibGstaHV3c2ogLmxlYWQtdGl0bGUtZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay1odXdzaiAubGVhZC10aXRsZS1tb2JpbGV7ZGlzcGxheTppbmxpbmUgIWltcG9ydGFudDt9CiAgLmJsay1odXdzaiAubGVhZC1raWNrZXItZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay1odXdzaiAubGVhZC1raWNrZXItbW9iaWxle2Rpc3BsYXk6aW5saW5lICFpbXBvcnRhbnQ7fQogIC5ibGstaHV3c2ogLmxlYWQtc3VidGl0bGUtZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay1odXdzaiAubGVhZC1zdWJ0aXRsZS1tb2JpbGV7ZGlzcGxheTppbmxpbmUgIWltcG9ydGFudDt9CiAgLmJsay1odXdzaiAubGVhZC1hbmltLWhlYWRsaW5lc3tmb250LXNpemU6MS44NzVyZW0gIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjAyICFpbXBvcnRhbnQ7fQogIAogIC5ibGstaHV3c2ogLnJlbGF0ZWQtdGl0bGUtZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay1odXdzaiAucmVsYXRlZC10aXRsZS1tb2JpbGV7ZGlzcGxheTppbmxpbmUgIWltcG9ydGFudDt9Cn0KLmJsay1odXdzaiAubGVhZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiNmZmY7b3ZlcmZsb3c6aGlkZGVuO2lzb2xhdGlvbjppc29sYXRlO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO30KLmJsay1odXdzaiAubGVhZC1tZWRpYXtwb3NpdGlvbjpyZWxhdGl2ZTthc3BlY3QtcmF0aW86MTYvOTtiYWNrZ3JvdW5kOiMwMDA7b3ZlcmZsb3c6aGlkZGVufQovKiBNZWRpYSBtZWRpYW50ZSBpZnJhbWU6IGFsdG8gZmlqbyBlbiBw7XhlbGVzIGVuIHZleiBkZSBsYSBwcm9wb3JjafNuIGRlCiAgIGFycmliYSAodmVyIGNvbWVudGFyaW8gZGV0YWxsYWRvIGp1bnRvIGEgc3RhdGUubGVhZC5pZnJhbWVIZWlnaHQpICYjODIxMjsgZWwKICAgdmFsb3IgZGUgTfN2aWwgc2Ugc29icmVzY3JpYmUgZW4gZWwgQGNvbnRhaW5lciBkZSBt4XMgYWJham8sIGlndWFsIHF1ZSBlbAogICByZXN0byBkZSBvdmVycmlkZXMgcmVzcG9uc2l2ZSBkZSBlc3RlIEhUTUwgZXhwb3J0YWRvLiAqLwouYmxrLWh1d3NqIC5sZWFkLW1lZGlhLmlzLWlmcmFtZXthc3BlY3QtcmF0aW86bm9uZTtibG9jay1zaXplOjY0MHB4O30KLmJsay1odXdzaiAubGVhZC1tZWRpYSBpbWcsCi5ibGstaHV3c2ogLmxlYWQtbWVkaWEgdmlkZW97cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtvYmplY3QtZml0OmNvdmVyfQovKiBDYXJydXNlbCBkZSBmb3RvcyBkZSBmb25kbyBjb24gZWZlY3RvIEtlbiBCdXJucyAmIzgyMTI7IHZlciBlbCBtaXNtbyBibG9xdWUsCiAgIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLgogICBMYSBkdXJhY2nzbiBkZSBsYXMgYW5pbWFjaW9uZXMgKDZzKSBjb2luY2lkZSBjb24KICAgTEVBRF9DQVJPVVNFTF9JTlRFUlZBTCwgcXVlIHRhbWJp6W4gZ29iaWVybmEgZWwgc2NyaXB0IGRlIHJvdGFjafNuCiAgIChidWlsZExlYWRDYXJvdXNlbFNjcmlwdCkgYfFhZGlkbyBhbCBmaW5hbCBkZWwgSFRNTCBleHBvcnRhZG8uICovCi5ibGstaHV3c2ogLmxlYWQtY2Fyb3VzZWx7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtvdmVyZmxvdzpoaWRkZW47fQouYmxrLWh1d3NqIC5sZWFkLWNhcm91c2VsLXNsaWRle3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAxLjVzIGVhc2U7fQouYmxrLWh1d3NqIC5sZWFkLWNhcm91c2VsLXNsaWRlLmlzLWFjdGl2ZXtvcGFjaXR5OjE7ei1pbmRleDoxO30KLmJsay1odXdzaiAubGVhZC1jYXJvdXNlbC1zbGlkZSBpbWd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtvYmplY3QtZml0OmNvdmVyO30KLmJsay1odXdzaiAubGVhZC1jYXJvdXNlbC1zbGlkZTpudGgtY2hpbGQob2RkKSBpbWd7YW5pbWF0aW9uOmJsay1odXdzai1rZW5idXJucy1hIDZzIGVhc2UtaW4tb3V0IGZvcndhcmRzO30KLmJsay1odXdzaiAubGVhZC1jYXJvdXNlbC1zbGlkZTpudGgtY2hpbGQoZXZlbikgaW1ne2FuaW1hdGlvbjpibGstaHV3c2ota2VuYnVybnMtYiA2cyBlYXNlLWluLW91dCBmb3J3YXJkczt9CkBrZXlmcmFtZXMgYmxrLWh1d3NqLWtlbmJ1cm5zLWF7IGZyb217dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZSgwLDApO30gdG97dHJhbnNmb3JtOnNjYWxlKDEuMTUpIHRyYW5zbGF0ZSgtNCUsLTMlKTt9IH0KQGtleWZyYW1lcyBibGstaHV3c2ota2VuYnVybnMtYnsgZnJvbXt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlKDAsMCk7fSB0b3t0cmFuc2Zvcm06c2NhbGUoMS4xNSkgdHJhbnNsYXRlKDQlLDMlKTt9IH0KLyogQ29uIHVuYSD6bmljYSBmb3RvIChzaW4gcm90YWNp824gcG9zaWJsZSkgc2UgYXBsaWNhIHVuIHpvb20gaW4vb3V0IGVuCiAgIGJ1Y2xlIGluZmluaXRvIGVuIHZleiBkZWwgcmVjb3JyaWRvIPpuaWNvIChmb3J3YXJkcykgZGUgYXJyaWJhLiAqLwouYmxrLWh1d3NqIC5sZWFkLWNhcm91c2VsLmlzLXNpbmdsZSAubGVhZC1jYXJvdXNlbC1zbGlkZSBpbWd7YW5pbWF0aW9uOmJsay1odXdzai1rZW5idXJucy1sb29wIDE0cyBlYXNlLWluLW91dCBpbmZpbml0ZTt9CkBrZXlmcmFtZXMgYmxrLWh1d3NqLWtlbmJ1cm5zLWxvb3B7IDAle3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGUoMCwwKTt9IDUwJXt0cmFuc2Zvcm06c2NhbGUoMS4xNSkgdHJhbnNsYXRlKC00JSwtMyUpO30gMTAwJXt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlKDAsMCk7fSB9Ci8qIENvbXBhcmFkb3IgYW50ZXMvZGVzcHXpcyAoZGVzbGl6YWRvcikgJiM4MjEyOyB2ZXIgZWwgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4KICAgZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay1odXdzaiAubGVhZC1jb21wYXJle3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7b3ZlcmZsb3c6aGlkZGVuO2lzb2xhdGlvbjppc29sYXRlO3RvdWNoLWFjdGlvbjpub25lO3otaW5kZXg6Mjt9Ci5ibGstaHV3c2ogLmxlYWQtY29tcGFyZSBpbWd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtvYmplY3QtZml0OmNvdmVyO29iamVjdC1wb3NpdGlvbjpjZW50ZXI7ZGlzcGxheTpibG9jazt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1kcmFnOm5vbmU7cG9pbnRlci1ldmVudHM6bm9uZTt9Ci5ibGstaHV3c2ogLmxlYWQtY29tcGFyZS1iZWZvcmV7Y2xpcC1wYXRoOmluc2V0KDAgNTAlIDAgMCk7d2lsbC1jaGFuZ2U6Y2xpcC1wYXRoO30KLmJsay1odXdzaiAubGVhZC1jb21wYXJlLXJhbmdle3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7bWFyZ2luOjA7b3BhY2l0eTowO2N1cnNvcjpldy1yZXNpemU7fQouYmxrLWh1d3NqIC5sZWFkLWNvbXBhcmUtaGFuZGxle3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6NTAlO2lubGluZS1zaXplOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7cG9pbnRlci1ldmVudHM6bm9uZTt6LWluZGV4OjI7fQouYmxrLWh1d3NqIC5sZWFkLWNvbXBhcmUtaGFuZGxlOjpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7aW5saW5lLXNpemU6MnB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuOSk7Ym94LXNoYWRvdzowIDAgMCAxcHggcmdiYSgwLDAsMCwuMjUpO30KLmJsay1odXdzaiAubGVhZC1jb21wYXJlLWhhbmRsZTo6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6LTE1cHg7aW5saW5lLXNpemU6MzBweDtibG9jay1zaXplOjMwcHg7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojZmZmIHVybCgiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScyMCcgaGVpZ2h0PScyMCcgdmlld0JveD0nMCAwIDIwIDIwJz48ZyBmaWxsPSdub25lJyBzdHJva2U9JyUyMzAwMCcgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnPjxwYXRoIGQ9J004IDYgTDQgMTAgTDggMTQnLz48cGF0aCBkPSdNMTIgNiBMMTYgMTAgTDEyIDE0Jy8+PC9nPjwvc3ZnPiIpIGNlbnRlci8xNnB4IDE2cHggbm8tcmVwZWF0O2JveC1zaGFkb3c6MCAycHggNnB4IHJnYmEoMCwwLDAsLjI1KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjI1KTt9Ci8qIE1lZGlhIG1lZGlhbnRlIGlmcmFtZSAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiBNaXNtbyB6LWluZGV4OjIgcXVlCiAgIC5sZWFkLWNvbXBhcmUsIHBvciBlbCBtaXNtbyBtb3Rpdm8gKGdhbmFybGUgYSAubGVhZC1saW5rKS4gKi8KLmJsay1odXdzaiAubGVhZC1pZnJhbWV7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtvdmVyZmxvdzpoaWRkZW47aXNvbGF0aW9uOmlzb2xhdGU7ei1pbmRleDoyO30KLmJsay1odXdzaiAubGVhZC1pZnJhbWUgaWZyYW1le3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7Ym9yZGVyOjA7ZGlzcGxheTpibG9jazt9Ci5ibGstaHV3c2ogLmxlYWQtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3otaW5kZXg6MTtwb2ludGVyLWV2ZW50czpub25lO30KLmJsay1odXdzaiAubGVhZC1ib2R5e3BhZGRpbmc6MHB4IDIwcHggMjBweCAyMHB4OztkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4OyB0ZXh0LWFsaWduOmNlbnRlcjsgYWxpZ24taXRlbXM6Y2VudGVyOyBwb3NpdGlvbjpyZWxhdGl2ZTsgei1pbmRleDo2OyBwb2ludGVyLWV2ZW50czpub25lOyBpbmxpbmUtc2l6ZTo5NSU7IG1hcmdpbi1sZWZ0OmF1dG87IG1hcmdpbi1yaWdodDphdXRvOyBtYXJnaW4tdG9wOi0zMHB4OyBiYWNrZ3JvdW5kOiMwRTExMUE7IGZsZXg6MSAxIGF1dG87fQovKiBBbnRldO10dWxvL3RpdHVsYXIvc3VidO10dWxvL2F1dG9yIGNlbnRyYWRvcyBlbiB2ZXJ0aWNhbCBkZW50cm8gZGVsIGFsdG8KICAgc29icmFudGUgYmFqbyBsYSBjYXRlZ29y7WEgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEKICAgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbC4gKi8KLmJsay1odXdzaiAubGVhZC1ib2R5LW1haW57ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtpbmxpbmUtc2l6ZToxMDAlO2ZsZXg6MSAxIGF1dG87bWluLWhlaWdodDowO30KLyogQXBhcmllbmNpYSBuZWdhdGl2YSAocG9yIGRlZmVjdG8pIHZzLiBwb3NpdGl2YSBkZSBsYSBjYWphIGRlIHRpdHVsYXIgJiM4MjEyOyB2ZXIKICAgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbC4gKi8KLmJsay1odXdzaiAubGVhZC5pcy1hcHBlYXJhbmNlLXBvc2l0aXZlIC5sZWFkLWJvZHl7YmFja2dyb3VuZDojZmZmO2JvcmRlcjoxcHggc29saWQgI2U3ZWJlZTt9Ci5ibGstaHV3c2ogLmxlYWQuaXMtYXBwZWFyYW5jZS1wb3NpdGl2ZSAubGVhZC10aXRsZSwKLmJsay1odXdzaiAubGVhZC5pcy1hcHBlYXJhbmNlLXBvc2l0aXZlIC5hdXRob3ItbGFiZWx7Y29sb3I6IzBFMTExQTt9Ci8qIFBvc2ljafNuIGRlbCBsZWFkLWJvZHkgcmVzcGVjdG8gYWwgbGVhZC1tZWRpYSAoJ2xlZnQnLydyaWdodCcpICYjODIxMjsgdmVyIG1pc21vCiAgIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwuICovCi5ibGstaHV3c2ogLmxlYWQubGVhZC1ib2R5LWxlZnQsCi5ibGstaHV3c2ogLmxlYWQubGVhZC1ib2R5LXJpZ2h0e2ZsZXgtZGlyZWN0aW9uOnJvdzthc3BlY3QtcmF0aW86Mi45NjI5NjI5NjI5NjI5NjM7fQouYmxrLWh1d3NqIC5sZWFkLmxlYWQtYm9keS1sZWZ0e2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO30KLmJsay1odXdzaiAubGVhZC5sZWFkLWJvZHktbGVmdCAubGVhZC1tZWRpYSwKLmJsay1odXdzaiAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtbWVkaWF7ZmxleDowIDAgNjAlO30KLmJsay1odXdzaiAubGVhZC5sZWFkLWJvZHktbGVmdCAubGVhZC1ib2R5LAouYmxrLWh1d3NqIC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1ib2R5e2ZsZXg6MCAwIGNhbGMoNDAlICsgMzBweCk7aW5saW5lLXNpemU6YXV0bzttYXJnaW4tdG9wOjA7YmxvY2stc2l6ZTpjYWxjKDEwMCUgLSA0MnB4KTthbGlnbi1zZWxmOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDt9Ci5ibGstaHV3c2ogLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYm9keXttYXJnaW4tbGVmdDowO21hcmdpbi1yaWdodDotMzBweDt9Ci5ibGstaHV3c2ogLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLWJvZHl7bWFyZ2luLWxlZnQ6LTMwcHg7bWFyZ2luLXJpZ2h0OjA7fQovKiBQb3NpY2nzbiAnYm90dG9tLWZ1bGwnIGRlbCBsZWFkLWJvZHkgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4KICAgZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gaW5saW5lLXNpemUKICAgZW4gdmV6IGRlIHdpZHRoIHBvciBlbCBtaXNtbyBtb3Rpdm8gcXVlIGVsIHJlc3RvIGRlIGVzdGUgYmxvcXVlIChldml0YXIKICAgbGEgcGFsYWJyYSAid2lkdGg6IiBxdWUgZWwgQ01TIGRlbCB1c3VhcmlvIGVsaW1pbmEgYWwgcGVnYXIgSFRNTC9DU1MKICAgZGlyZWN0YW1lbnRlKS4gKi8KLmJsay1odXdzaiAubGVhZC5sZWFkLWJvZHktYm90dG9tLWZ1bGwgLmxlYWQtYm9keXsKICBpbmxpbmUtc2l6ZToxMDAlOwogIG1hcmdpbjowOwogIHBhZGRpbmctdG9wOjMwcHg7CiAgcGFkZGluZy1ib3R0b206MzBweDsKICBib3JkZXI6bm9uZTsKfQovKiBFdGlxdWV0YSBkZSBleGNsdXNpdmEgKG8gdGV4dG8gcGVyc29uYWxpemFkbykgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8KICAgZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay1odXdzaiAubGVhZC1leGNsdXNpdmUtdGFne3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMHB4O2xlZnQ6MTBweDt6LWluZGV4OjM7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjJweDtsZXR0ZXItc3BhY2luZzowLjVweDtwYWRkaW5nOjJweCA4cHg7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZTouOGVtO2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojZmZmO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtwb2ludGVyLWV2ZW50czpub25lO30KLyogU2VsZWN0b3IgY29uIDMgY2xhc2VzICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhCiAgIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEgKCIubGVhZC1tZWRpYSBpbWciIHRhbWJp6W4KICAgbWF0Y2hlYSBlc3RlIDxpbWc+IHkgbGUgZ2FuYWJhIGVuIGVzcGVjaWZpY2lkYWQpLiAqLwouYmxrLWh1d3NqIC5sZWFkLWV4Y2x1c2l2ZS10YWcgLmxlYWQtZXhjbHVzaXZlLXRhZy1pY29ue3Bvc2l0aW9uOnN0YXRpYztpbnNldDphdXRvO2lubGluZS1zaXplOjE0cHg7YmxvY2stc2l6ZToxNHB4O29iamVjdC1maXQ6Y29udGFpbjtmbGV4OjAgMCBhdXRvO2Rpc3BsYXk6YmxvY2s7fQouYmxrLWh1d3NqIC5sZWFkLWNhdHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6OTAwO3BhZGRpbmc6MnB4IDhweDt0cmFuc2Zvcm06c2tld1koLTZkZWcpO21hcmdpbi10b3A6LTE1cHg7bWFyZ2luLWJvdHRvbToxMHB4O30KLmJsay1odXdzaiAubGVhZC1raWNrZXIsIC5ibGstaHV3c2ogLmxlYWQtc3VidGl0bGV7CiAgZm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO3RleHQtdHJhbnNmb3JtOm5vbmU7bWFyZ2luOjA7Cn0KLmJsay1odXdzaiAubGVhZC1raWNrZXJ7Zm9udC13ZWlnaHQ6NzAwO30KLmJsay1odXdzaiAubGVhZC1zdWJ0aXRsZXtmb250LXdlaWdodDo2MDA7fQovKiBUYW1h8W8vaW50ZXJsaW5lYWRvL2NvbG9yIGRlIGFudGV07XR1bG8geSBzdWJ07XR1bG8gZW4gRGVzayAodmFsb3JlcyBwb3IKICAgZGVmZWN0byBkZWwgYmxvcXVlOyBlbCBvdmVycmlkZSBkZSBN83ZpbCB2YSBlbiBlbCBAY29udGFpbmVyIGRlIG3hcyBhYmFqbywKICAgeWEgcXVlIGVsIEhUTUwgZXhwb3J0YWRvIGVzIHJlc3BvbnNpdmUgeSBubyBkZXBlbmRlIGRlIHF16SB2aXN0YSB0dXZpZXJhcwogICBzZWxlY2Npb25hZGEgZW4gZWwgZ2VzdG9yIGFsIGV4cG9ydGFyL2NvcGlhcikuICovCi5ibGstaHV3c2ogLmxlYWQta2lja2Vye2ZvbnQtc2l6ZToxLjMxMjVyZW07bGluZS1oZWlnaHQ6MS4xO2NvbG9yOiMwMEE3RkY7fQouYmxrLWh1d3NqIC5sZWFkLXN1YnRpdGxle2ZvbnQtc2l6ZToxLjMxMjVyZW07bGluZS1oZWlnaHQ6MS4xO2NvbG9yOiMwMEE3RkY7fQovKiB0ZXh0LXdyYXA6YmFsYW5jZSAmIzgyMTI7IG1pc21vIGNyaXRlcmlvIHF1ZSBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsCiAgIGRlbCBnZXN0b3IgKHZlciBjb21lbnRhcmlvIGRldGFsbGFkbyBqdW50byBhIGVzYSByZWdsYSk6IHJlcGFydGUgbGFzCiAgIGztbmVhcyBkZWwgdGl0dWxhciBkZSBmb3JtYSBt4XMgdW5pZm9ybWUgZGVudHJvIGRlIGNhZGEgZGlzcG9zaXRpdm8sIHNpbgogICBwcmV0ZW5kZXIgaWd1YWxhciBlbCBu+m1lcm8gZGUgbO1uZWFzIGVudHJlIHBsYXRhZm9ybWFzIGRpc3RpbnRhcy4gKi8KLmJsay1odXdzaiAubGVhZC10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6OTAwO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6MS4wMjttYXJnaW46MDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlO3RleHQtd3JhcDpiYWxhbmNlO30KLyogVGl0dWxhciBjb24gc2FsdG9zIGRlIGztbmVhIGluZGVwZW5kaWVudGVzIHBvciB2aXN0YSAodmVyIGJ1aWxkU2NvcGVkSFRNTCk6CiAgIHNlIGdlbmVyYW4gbG9zIGRvcyB0ZXh0b3MgKERlc2svTfN2aWwpIHkgYXF17SBzZSBtdWVzdHJhIHNvbG8gdW5vIHNlZ/puIGVsCiAgIGFuY2hvIHJlYWwgZGVsIGNvbnRlbmVkb3IgJiM4MjEyOyBlbCBtaXNtbyBtZWNhbmlzbW8gZGUgQGNvbnRhaW5lciBxdWUgeWEgdXNhIGVsCiAgIHJlc3RvIGRlbCBIVE1MIGV4cG9ydGFkbyBwYXJhIGFkYXB0YXJzZSBzaW4gZGVwZW5kZXIgZGUgSlMuICovCi5ibGstaHV3c2ogLmxlYWQtdGl0bGUtbW9iaWxle2Rpc3BsYXk6bm9uZTt9Ci8qIEFudGV07XR1bG8vc3VidO10dWxvIGNvbiBzYWx0b3MgZGUgbO1uZWEgaW5kZXBlbmRpZW50ZXMgcG9yIHZpc3RhOiBtaXNtbwogICBtZWNhbmlzbW8gZGUgQGNvbnRhaW5lciBxdWUgZWwgdGl0dWxhciAodmVyIGFycmliYSkuICovCi5ibGstaHV3c2ogLmxlYWQta2lja2VyLW1vYmlsZSwgLmJsay1odXdzaiAubGVhZC1zdWJ0aXRsZS1tb2JpbGV7ZGlzcGxheTpub25lO30KLyogVGl0dWxhciBkZSBub3RpY2lhIHJlbGFjaW9uYWRhIChjb2x1bW5hKSBjb24gdGV4dG8gcHJvcGlvIGVuIE3zdmlsICh2ZXIKICAgaXRlbS50aXRsZU1vYmlsZSBlbiBidWlsZENvbHVtbkl0ZW1UaXRsZUhUTUwpOiBtaXNtbyBtZWNhbmlzbW8gZGUKICAgQGNvbnRhaW5lciBxdWUgZWwgdGl0dWxhciBwcmluY2lwYWwgZGUgYXJyaWJhLiAqLwouYmxrLWh1d3NqIC5yZWxhdGVkLXRpdGxlLW1vYmlsZXtkaXNwbGF5Om5vbmU7fQouYmxrLWh1d3NqIC5hdXRob3ItbGFiZWx7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2NvbG9yOiNmZmY7Zm9udC13ZWlnaHQ6MjAwO2ZvbnQtc2l6ZTouOGVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt0ZXh0LWFsaWduOnJpZ2h0O2Rpc3BsYXk6YmxvY2t9Ci5ibGstaHV3c2ogLmNvbHVtbntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4O2p1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjt9Ci5ibGstaHV3c2ogLmNvbHVtbi1pdGVte2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyOjFweCBzb2xpZCAjZTdlYmVlO3BhZGRpbmc6MTBweDtiYWNrZ3JvdW5kOiNmZmY7YmxvY2stc2l6ZTpzdHJldGNoO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTt9Ci5ibGstaHV3c2ogLnRodW1ie3Bvc2l0aW9uOnJlbGF0aXZlO2lubGluZS1zaXplOjEwMCU7YXNwZWN0LXJhdGlvOjQvMztiYWNrZ3JvdW5kOiNlZWU7b3ZlcmZsb3c6aGlkZGVufQouYmxrLWh1d3NqIC50aHVtYiBpbWcsCi5ibGstaHV3c2ogLnRodW1iIHZpZGVve3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn0KLmJsay1odXdzaiAudGh1bWIgLnBsYXktc3F1YXJlLAouYmxrLWh1d3NqIC5tZWRpYS1ibG9jay13cmFwIC5wbGF5LXNxdWFyZXsKICBwb3NpdGlvbjphYnNvbHV0ZTsgYm90dG9tOjVweDsgbGVmdDo1cHg7CiAgaW5saW5lLXNpemU6MjVweDtibG9jay1zaXplOjI1cHg7Ym9yZGVyLXJhZGl1czoycHg7ZGlzcGxheTppbmxpbmUtZ3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7CiAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNik7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMTgpOwogIGN1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzLCB0cmFuc2Zvcm0gLjEyczsKICB6LWluZGV4OjI7IGFuaW1hdGlvbjpibGstaHV3c2otYmxpbmsgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7Cn0KLmJsay1odXdzaiAudGh1bWIgLnBsYXktc3F1YXJlOjpiZWZvcmUsCi5ibGstaHV3c2ogLm1lZGlhLWJsb2NrLXdyYXAgLnBsYXktc3F1YXJlOjpiZWZvcmV7CiAgY29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2lubGluZS1zaXplOjA7YmxvY2stc2l6ZTowOwogIGJvcmRlci1sZWZ0OjZweCBzb2xpZCAjZmZmO2JvcmRlci10b3A6NXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206NXB4IHNvbGlkIHRyYW5zcGFyZW50OwogIG1hcmdpbi1sZWZ0OjJweDsKfQouYmxrLWh1d3NqIC50aHVtYiAucGxheS1zcXVhcmU6aG92ZXIsCi5ibGstaHV3c2ogLm1lZGlhLWJsb2NrLXdyYXAgLnBsYXktc3F1YXJlOmhvdmVyeyBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC44NSk7IHRyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpOyB9Ci5ibGstaHV3c2ogLnN0YWNrLXRpdGxle2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOjE3cHg7bGluZS1oZWlnaHQ6MS4xNWVtO21hcmdpbjowO2NvbG9yOiMyYzNlNTM7fQouYmxrLWh1d3NqIC5zdGFjay1hdXRob3J7Zm9udC1mYW1pbHk6ImFtcGxpdHVkZS1ib29rIixzYW5zLXNlcmlmO2NvbG9yOiM4Mjg1OTU7Zm9udC13ZWlnaHQ6MjAwO2ZvbnQtc2l6ZTouOHJlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOjExcHg7bGV0dGVyLXNwYWNpbmc6MDt0ZXh0LWFsaWduOnJpZ2h0O30KLyogU2luIGVzdGEgcmVnbGEgZWwgYXV0b3IgcXVlZGEgcGVnYWRvIGp1c3RvIGRlYmFqbyBkZWwgdGl0dWxhciBlbiB2ZXogZGUKICAgYWJham8gZGUgbGEgdGFyamV0YTogLm1vZC1zdGFjayBuZWNlc2l0YSBzZXIgZmxleC1jb2x1bW4gY29uCiAgIGp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuIHBhcmEgcXVlIGVsIGh1ZWNvIHNvYnJhbnRlIChjdWFuZG8gbGEKICAgdGFyamV0YSBjcmVjZSBt4XMgcXVlIHN1IGNvbnRlbmlkbywgdmVyIC5jb2x1bW4taXRlbTpub3QoLmxheW91dC1tZWRpYS1ibG9jaykKICAgbeFzIGFiYWpvKSBlbXB1amUgZWwgYXV0b3IgaGFjaWEgZWwgYm9yZGUgaW5mZXJpb3IuICovCi5ibGstaHV3c2ogLm1vZC1zdGFja3tkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2ZsZXg6MSAxIGF1dG87fQovKiBFc3RpbG8gImZvdG8gcGVxdWXxYSArIHRpdHVsYXIiOiBmb3RvIDQ6MyBhIGxhIGl6cXVpZXJkYSwgdGV4dG8gYSBsYSBkZXJlY2hhLiAqLwouYmxrLWh1d3NqIC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tbGVmdHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjExMHB4IDFmcjtnYXA6MTBweDt9Ci8qIEVzdGlsbyAic29sbyB0ZXh0byIgKHBvciBkZWZlY3RvKTogZWwgYXV0b3Igc2UgcG9zaWNpb25hIGVuIGFic29sdXRvLAogICBhbmNsYWRvIGEgbGEgZXNxdWluYSBpbmZlcmlvciBkZXJlY2hhIGRlIGxhIHRhcmpldGEgKGlndWFsIHF1ZSBlbCBwbGF5IGRlCiAgIGxhcyBtaW5pYXR1cmFzKSwgZW4gdmV6IGRlIGRlcGVuZGVyIGRlIHF1ZSBlbCBibG9xdWUgZGUgdGV4dG8gdGVuZ2EgaHVlY28KICAgZGUgc29icmEgcGFyYSBlbXB1amFybG8gYWJham8gY29uIGZsZXhib3ggJiM4MjEyOyBjb24gdO10dWxvcyBkZSAyLTMgbO1uZWFzIGVzZQogICBodWVjbyBubyBleGlzdGUgeSBlbCBhdXRvciBudW5jYSBsbGVnYWJhIGEgYmFqYXIuIHBhZGRpbmctYm90dG9tIGVuCiAgIGxlZnQtYm9keSByZXNlcnZhIGVsIGVzcGFjaW8gcGFyYSBxdWUgZWwgdO10dWxvIG5vIHNlIHNvbGFwZSBjb24g6WwuICovCi5ibGstaHV3c2ogLmNvbHVtbi1pdGVtLmxheW91dC10aXRsZS1vbmx5IC5sZWZ0LWJvZHl7cGFkZGluZy1ib3R0b206MzNweDt9Ci5ibGstaHV3c2ogLmNvbHVtbi1pdGVtLmxheW91dC10aXRsZS1vbmx5IC5zdGFjay1hdXRob3J7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MTBweDtib3R0b206MTBweDttYXJnaW4tdG9wOjA7fQouYmxrLWh1d3NqIC5sZWZ0LXRpdGxle2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOjIxcHg7bGluZS1oZWlnaHQ6MS4xNTtjb2xvcjojMmMzZTUzO21hcmdpbjowO3RleHQtYWxpZ246bGVmdDt9Ci5ibGstaHV3c2ogLmxlZnQtcGxheXsKICBmbGV4OjAgMCBhdXRvO2lubGluZS1zaXplOjE1cHg7YmxvY2stc2l6ZToxNXB4O2JvcmRlci1yYWRpdXM6MnB4OwogIGJhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICMwMGE3ZmY7CiAgZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjA7CiAgdmVydGljYWwtYWxpZ246bWlkZGxlO21hcmdpbi1yaWdodDo2cHg7bWFyZ2luLWJvdHRvbTogNHB4Owp9Ci5ibGstaHV3c2ogLmxlZnQtcGxheTo6YmVmb3JlewogIGNvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztpbmxpbmUtc2l6ZTowO2Jsb2NrLXNpemU6MDsKICBib3JkZXItbGVmdDo0cHggc29saWQgIzAwYTdmZjtib3JkZXItdG9wOjNweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjNweCBzb2xpZCB0cmFuc3BhcmVudDttYXJnaW4tbGVmdDoxcHg7Cn0KLmJsay1odXdzaiAucmVsYXRlZC1saXZlLXRhZ3sKICBkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtmbGV4OjAgMCBhdXRvOwogIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7CiAgZm9udC1zaXplOi43cmVtO2xpbmUtaGVpZ2h0OjAuODtsZXR0ZXItc3BhY2luZzouM3B4O2NvbG9yOiNGRjUwNTA7CiAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNGRjUwNTA7CiAgcGFkZGluZzozcHggNHB4IDJweCA0cHg7bWFyZ2luLXJpZ2h0OjZweDttYXJnaW4tYm90dG9tOjRweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7CiAgd2hpdGUtc3BhY2U6bm93cmFwOwp9Ci5ibGstaHV3c2ogLnJlbGF0ZWQtZWRpdG9yaWFsLXRhZ3sKICBkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtmbGV4OjAgMCBhdXRvOwogIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7CiAgZm9udC1zaXplOi43cmVtO2xpbmUtaGVpZ2h0OjAuODtsZXR0ZXItc3BhY2luZzouM3B4O2NvbG9yOiNGQUIxMjE7CiAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNGQUIxMjE7CiAgcGFkZGluZzozcHggNHB4IDJweCA0cHg7bWFyZ2luLXJpZ2h0OjZweDttYXJnaW4tYm90dG9tOjRweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7CiAgd2hpdGUtc3BhY2U6bm93cmFwOwp9Ci5ibGstaHV3c2ogLnBsYXktYnV0dG9uewogIC8qIEFuY2hvL2FsdG8gZmlqb3MgZW4gdmV6IGRlIGFzcGVjdC1yYXRpbzoxLzEgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8KICAgICBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhIChlbAogICAgIGPhbGN1bG8gZGUgInNocmluay10by1maXQiIHBhcmEgdW4gPGJ1dHRvbj4gZW4gYWJzb2x1dG8gc2luIHRhbWHxbwogICAgIGV4cGztY2l0byBubyBlcyBmaWFibGUgZW50cmUgbW90b3JlczsgZW4gV2ViS2l0L2lPUyBkYWJhIHVuIHJlY3Thbmd1bG8KICAgICB2ZXJ0aWNhbCBlc3RyZWNo7XNpbW8gZW4gdmV6IGRlIHVuIGN1YWRyYWRvKS4gKi8KICBhcHBlYXJhbmNlOm5vbmU7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7LW1vei1hcHBlYXJhbmNlOm5vbmU7CiAgcG9zaXRpb246YWJzb2x1dGU7dG9wOjEwcHg7bGVmdDoxMHB4OwogIGlubGluZS1zaXplOjM0cHg7YmxvY2stc2l6ZTozNHB4OwogIGRpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjEwcHggMTBweCAxMHB4IDEycHg7CiAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC43KTsKICBib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjQyKTtjb2xvcjojZmZmO2JvcmRlci1yYWRpdXM6M3B4OwogIGN1cnNvcjpwb2ludGVyO3otaW5kZXg6MjthbmltYXRpb246YmxrLWh1d3NqLWJsaW5rIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlOwp9Ci5ibGstaHV3c2ogLnBsYXktYnV0dG9uLnBvcy10b3AtcmlnaHR7dG9wOjEwcHg7cmlnaHQ6MTBweDtsZWZ0OmF1dG87Ym90dG9tOmF1dG87fQouYmxrLWh1d3NqIC5wbGF5LWJ1dHRvbi5wb3MtYm90dG9tLWxlZnR7Ym90dG9tOjEwcHg7bGVmdDoxMHB4O3RvcDphdXRvO3JpZ2h0OmF1dG87fQouYmxrLWh1d3NqIC5wbGF5LWJ1dHRvbi5wb3MtYm90dG9tLXJpZ2h0e2JvdHRvbToxMHB4O3JpZ2h0OjEwcHg7dG9wOmF1dG87bGVmdDphdXRvO30KLyogQ29uIGVsIHRleHRvIChsZWFkLWJvZHkpIGEgbGEgaXpxdWllcmRhIG8gbGEgZGVyZWNoYSwgZXNlIGJsb3F1ZSBzb2xhcGEKICAgMzBweCBkZWwgbGFkbyBkZSBsYSBmb3RvL3btZGVvIHBlZ2FkbyBhIOlsICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvCiAgIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstaHV3c2ogLmxlYWQubGVhZC1ib2R5LWxlZnQgLnBsYXktYnV0dG9uLnBvcy10b3AtbGVmdCwKLmJsay1odXdzaiAubGVhZC5sZWFkLWJvZHktbGVmdCAucGxheS1idXR0b24ucG9zLWJvdHRvbS1sZWZ0eyBsZWZ0OjQwcHg7IH0KLmJsay1odXdzaiAubGVhZC5sZWFkLWJvZHktcmlnaHQgLnBsYXktYnV0dG9uLnBvcy10b3AtcmlnaHQsCi5ibGstaHV3c2ogLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5wbGF5LWJ1dHRvbi5wb3MtYm90dG9tLXJpZ2h0eyByaWdodDo0MHB4OyB9Ci8qIFBvc2ljafNuICdib3R0b20nIHBvciBkZWZlY3RvOiBlbCBsZWFkLWJvZHkgc29sYXBhIDMwcHggc29icmUgZWwgYm9yZGUKICAgSU5GRVJJT1IgZGUgbGEgZm90by927WRlbyAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiBObyBhcGxpY2EgY29uICdib3R0b20tZnVsbCcKICAgbmkgY29uICdsZWZ0Jy8ncmlnaHQnIChhanVzdGUgaG9yaXpvbnRhbCBwcm9waW8sIHZlciBhcnJpYmEpLiAqLwouYmxrLWh1d3NqIC5sZWFkOm5vdCgubGVhZC1ib2R5LWxlZnQpOm5vdCgubGVhZC1ib2R5LXJpZ2h0KTpub3QoLmxlYWQtYm9keS1ib3R0b20tZnVsbCkgLnBsYXktYnV0dG9uLnBvcy1ib3R0b20tbGVmdCwKLmJsay1odXdzaiAubGVhZDpub3QoLmxlYWQtYm9keS1sZWZ0KTpub3QoLmxlYWQtYm9keS1yaWdodCk6bm90KC5sZWFkLWJvZHktYm90dG9tLWZ1bGwpIC5wbGF5LWJ1dHRvbi5wb3MtYm90dG9tLXJpZ2h0eyBib3R0b206NDBweDsgfQouYmxrLWh1d3NqIC5wbGF5LWJ1dHRvbiAucGxheS1pY29uewogIGlubGluZS1zaXplOjA7YmxvY2stc2l6ZTowOwogIGJvcmRlci1sZWZ0OjEwcHggc29saWQgI2ZmZjtib3JkZXItdG9wOjZweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjZweCBzb2xpZCB0cmFuc3BhcmVudDsKfQouYmxrLWh1d3NqIC5wbGF5LWJ1dHRvbiAucGxheS10ZXh0e2Rpc3BsYXk6bm9uZTt9CgovKiBUaXR1bGFyZXMgYW5pbWFkb3MgKGNhcGEgYWx0ZXJuYXRpdmEgc29icmUgbGVhZC1tZWRpYSkgJiM4MjEyOyB2ZXIgbWlzbW8KICAgYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYQogICBoZXJyYW1pZW50YS4gQ2FkYSB0aXR1bGFyIHRpZW5lIHN1IHByb3BpYSBwb3NpY2nzbiAoY2xhc2UgcG9zLSosIHZlcgogICBidWlsZFNjb3BlZEhUTUwpIHkgc2UgcmV2ZWxhIGztbmVhIHBvciBs7W5lYSAodW5hIHZleiBtZWRpZGFzIHN1cyBs7W5lYXMKICAgcmVhbGVzIHBvciBlbCBzY3JpcHQgc3RhbmRhbG9uZSwgdmVyIGJ1aWxkQW5pbUhlYWRsaW5lc1NjcmlwdCkgY29uIHVuYQogICBjYWphIGRlIGZvbmRvIGRldHLhcyBkZSBjYWRhIGztbmVhIHkgdW4gZmFkZSBkZSBvcGFjaWRhZCBlbnRyZSB0aXR1bGFyZXMuICovCi5ibGstaHV3c2ogLmxlYWQtYW5pbS1oZWFkbGluZXN7CiAgcG9zaXRpb246YWJzb2x1dGU7CiAgaW5zZXQ6MDsKICB6LWluZGV4OjQ7CiAgcG9pbnRlci1ldmVudHM6bm9uZTsKfQouYmxrLWh1d3NqIC5sZWFkLWFuaW0taGVhZGxpbmV7CiAgcG9zaXRpb246YWJzb2x1dGU7CiAgbGVmdDoxNXB4OwogIG9wYWNpdHk6MDsKfQouYmxrLWh1d3NqIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1sZWZ0eyBib3R0b206NjBweDsgfQouYmxrLWh1d3NqIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLXRvcC1sZWZ0eyB0b3A6NjBweDsgfQouYmxrLWh1d3NqIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1sZWZ0eyB0b3A6NTAlOyB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsgfQouYmxrLWh1d3NqIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLXRvcC1yaWdodCwKLmJsay1odXdzaiAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1taWRkbGUtcmlnaHQsCi5ibGstaHV3c2ogLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtYm90dG9tLXJpZ2h0eyBsZWZ0OmF1dG87IHJpZ2h0OjE1cHg7IH0KLmJsay1odXdzaiAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtcmlnaHR7IHRvcDo2MHB4OyB9Ci5ibGstaHV3c2ogLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtbWlkZGxlLXJpZ2h0eyB0b3A6NTAlOyB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsgfQouYmxrLWh1d3NqIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1yaWdodHsgYm90dG9tOjYwcHg7IH0KLyogQ29uIGVsIHRleHRvIChsZWFkLWJvZHkpIGEgbGEgaXpxdWllcmRhIG8gbGEgZGVyZWNoYSwgZXNlIGJsb3F1ZSBzb2xhcGEKICAgMzBweCBkZWwgbGFkbyBkZSBsYSBmb3RvL3btZGVvIHBlZ2FkbyBhIOlsICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvCiAgIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstaHV3c2ogLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtdG9wLWxlZnQsCi5ibGstaHV3c2ogLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtbWlkZGxlLWxlZnQsCi5ibGstaHV3c2ogLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtYm90dG9tLWxlZnR7IGxlZnQ6NDBweDsgfQouYmxrLWh1d3NqIC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtcmlnaHQsCi5ibGstaHV3c2ogLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1yaWdodCwKLmJsay1odXdzaiAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtYm90dG9tLXJpZ2h0eyByaWdodDo0MHB4OyB9Ci5ibGstaHV3c2ogLmxlYWQtYW5pbS1oZWFkbGluZS5pcy1hY3RpdmV7IG9wYWNpdHk6MTsgfQouYmxrLWh1d3NqIC5sZWFkLWFuaW0tbGluZXsKICBwb3NpdGlvbjpyZWxhdGl2ZTsKICBkaXNwbGF5OnRhYmxlOwogIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjsKICBmb250LXdlaWdodDo5MDA7CiAgY29sb3I6I2ZmZjsKICBwYWRkaW5nOjJweCA4cHg7CiAgY2xpcC1wYXRoOmluc2V0KDAgMTAwJSAwIDApOwogIG9wYWNpdHk6MTsKICB0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBlYXNlOwp9Ci5ibGstaHV3c2ogLmxlYWQtYW5pbS1saW5lLmlzLWhpZGluZ3sgb3BhY2l0eTowOyB9Ci8qIFNvbGFwZSBkZSAxcHggZW50ZXJhIGVudHJlIGztbmVhcyBwYXJhIGNlcnJhciBlbCBoaWxvIGRlIHN1Yi1w7XhlbCBxdWUKICAgcHVlZGUgcXVlZGFyIGVudHJlIHN1cyBjYWphcyBkZSBmb25kbyAocmVkb25kZW8gZGUgYWx0dXJhcyBmcmFjY2lvbmFyaWFzKSAmIzgyMTI7CiAgIHZlciBtaXNtbyBjb21lbnRhcmlvLCBkZXRhbGxhZG8sIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwuICovCi5ibGstaHV3c2ogLmxlYWQtYW5pbS1saW5lICsgLmxlYWQtYW5pbS1saW5lewogIG1hcmdpbi10b3A6LTFweDsKfQouYmxrLWh1d3NqIC5sZWFkLWFuaW0tbGluZTpmaXJzdC1jaGlsZHsgcGFkZGluZy10b3A6NnB4OyB9Ci5ibGstaHV3c2ogLmxlYWQtYW5pbS1saW5lOmxhc3QtY2hpbGR7IHBhZGRpbmctYm90dG9tOjZweDsgfQouYmxrLWh1d3NqIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLXRvcC1yaWdodCAubGVhZC1hbmltLWxpbmUsCi5ibGstaHV3c2ogLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtbWlkZGxlLXJpZ2h0IC5sZWFkLWFuaW0tbGluZSwKLmJsay1odXdzaiAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1ib3R0b20tcmlnaHQgLmxlYWQtYW5pbS1saW5leyBtYXJnaW4tbGVmdDphdXRvOyBtYXJnaW4tcmlnaHQ6MDsgfQouYmxrLWh1d3NqIC5sZWFkLWFuaW0taGVhZGxpbmVzLmlzLXBvc2l0aXZlIC5sZWFkLWFuaW0tbGluZXsgY29sb3I6IzBFMTExQTsgfQouYmxrLWh1d3NqIC5sZWFkLWFuaW0tbGluZS1iZ3sgcG9zaXRpb246YWJzb2x1dGU7IGluc2V0OjA7IHotaW5kZXg6LTE7IH0KLmJsay1odXdzaiAubGVhZC1hbmltLWxpbmUtdGV4dHsgcG9zaXRpb246cmVsYXRpdmU7IH0KQGtleWZyYW1lcyBibGstaHV3c2otYW5pbS1saW5lLXJldmVhbHsgdG97IGNsaXAtcGF0aDppbnNldCgwIDAgMCAwKTsgfSB9CgovKiBBbmNob3Igb3ZlcmxheSBmb3IgZnVsbCBjbGlja2FibGUgbGVhZCAqLwouYmxrLWh1d3NqIC5sZWFkLWxpbmt7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt6LWluZGV4OjF9CgovKiBIb3ZlciBvcGFjaXR5IGFuaW1hdGlvbiAqLwouYmxrLWh1d3NqIC5sZWFkOmhvdmVyIC5sZWFkLXRpdGxlLAouYmxrLWh1d3NqIC5jb2x1bW4taXRlbTpob3ZlcntvcGFjaXR5Oi44fQovKiBGb3RvIHByaW5jaXBhbCAoZmFsbGJhY2svc2luZ2xlKSBvIGNhcnJ1c2VsIGRlIGZvdG9zOiBvcGFjaWRhZCAwLjkgYWwKICAgcGFzYXIgZWwgcmF0824gcG9yIGxhIHRhcmpldGEgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4KICAgbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gTm8gYXBsaWNhIGEgdu1kZW8gbmkgYWwKICAgY29tcGFyYWRvciBhbnRlcy9kZXNwdelzLiAqLwouYmxrLWh1d3NqIC5sZWFkLW1lZGlhID4gaW1nLAouYmxrLWh1d3NqIC5sZWFkLW1lZGlhID4gLmxlYWQtY2Fyb3VzZWx7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlO30KLmJsay1odXdzaiAubGVhZDpob3ZlciAubGVhZC1tZWRpYSA+IGltZywKLmJsay1odXdzaiAubGVhZDpob3ZlciAubGVhZC1tZWRpYSA+IC5sZWFkLWNhcm91c2Vse29wYWNpdHk6Ljk7fQovKiBFbiBlbCBhbmNobyBt83ZpbCAobWlzbW8gQGNvbnRhaW5lciBxdWUgZWwgcmVzdG8gZGVsIEhUTUwgZXhwb3J0YWRvKSBubwogICBhcGxpY2EgZXN0YSBhbmltYWNp824gZGUgb3BhY2lkYWQgc29icmUgbGEgbm90aWNpYSBwcmluY2lwYWw6IHZhIERFU1BVyVMKICAgZGUgbGEgcmVnbGEgZ2VuZXJhbCBkZSBhcnJpYmEgKG1pc21hIGVzcGVjaWZpY2lkYWQpIHBhcmEgcG9kZXIgZ2FuYXJsZS4KICAgT21pdGlkbywgaWd1YWwgcXVlIGVsIGJsb3F1ZSBkZSB0aXBvZ3JhZu1hIGRlIGFycmliYSwgbWllbnRyYXMgbGEKICAgc2ltdWxhY2nzbiBkZSBhbmNobyBlc3TpIGFjdGl2YSAodmVyIGxlYWRXaWR0aFByZXZpZXcpLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6ODYwcHgpewogIC5ibGstaHV3c2ogLmxlYWQ6aG92ZXIgLmxlYWQtdGl0bGUsCiAgLmJsay1odXdzaiAubGVhZDpob3ZlciAubGVhZC1tZWRpYSA+IGltZywKICAuYmxrLWh1d3NqIC5sZWFkOmhvdmVyIC5sZWFkLW1lZGlhID4gLmxlYWQtY2Fyb3VzZWx7b3BhY2l0eToxO30KfQoKLyogQW5pbWFjafNuIGNvbXBhcnRpZGEgcGxheSBwcmluY2lwYWwgKyBjdWFkcmFkb3MgcGxheSBhcGlsYWRhcyAqLwpAa2V5ZnJhbWVzIGJsay1odXdzai1ibGlua3sKICAwJSwxMDAle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjcpfQogIDUwJXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwxNjUsMjU1LDAuOSl9Cn0KLyogQ2FiZWNlcmEgKi8KLmJsay1odXdzaiAuYmctc2VjdGlvbi10aXRsZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbjoxMHB4IDAgMzJweH0KLmJsay1odXdzaiAuZm5kLWxpbmVhe2lubGluZS1zaXplOjEwMCU7YmxvY2stc2l6ZTo1cHg7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTttYXJnaW4tdG9wOi0xOHB4O2JvcmRlci10b3A6MXB4IHNvbGlkICMzMzM7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzMzM30KLmJsay1odXdzaiAuc2VjdGlvbi10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6OTAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW46MDtsaW5lLWhlaWdodDoxLjI7bGV0dGVyLXNwYWNpbmc6LTFweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7YmFja2dyb3VuZDojZmZmO3BhZGRpbmc6NHB4IDEzcHg7Ym9yZGVyOjFweCBzb2xpZCAjMEUxMTFBO3RyYW5zZm9ybTpyb3RhdGVYKDVkZWcpIHJvdGF0ZVkoLTI1ZGVnKSBza2V3WCgwZGVnKTtmb250LXNpemU6NDJweDtjb2xvcjojMEUxMTFBO30KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjg2MHB4KXsuYmxrLWh1d3NqIC5zZWN0aW9uLXRpdGxle2ZvbnQtc2l6ZToyN3B4O3BhZGRpbmc6MCAxMHB4fX0KLyogQ2FiZWNlcmEgJiM4MjEyOyBEaXNl8W8gMiAodGl0dWxhciArIGNhcnJ1c2VsIGRlIGxvZ290aXBvcykgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLAogICBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay1odXdzaiAuaGVhZGVyMntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoyMHB4O3BhZGRpbmctYm90dG9tOjVweDttYXJnaW4tYm90dG9tOjEwcHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzBFMTExQTt9Ci8qIGFsaWduLXNlbGY6ZmxleC1lbmQgZmlqYSBlbCB0aXR1bGFyIFNJRU1QUkUgYSAxNXB4IGRlIGxhIGztbmVhIHNlcGFyYWRvcmEKICAgZW4gRGVzayAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MKICAgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLWh1d3NqIC5oZWFkZXIyLWxlZnR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtmbGV4OjEgMSA1MCU7bWluLWlubGluZS1zaXplOjA7YWxpZ24tc2VsZjpmbGV4LWVuZDt9Ci5ibGstaHV3c2ogLmhlYWRlcjItdGFnc3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7ZmxleDowIDAgYXV0bzt9Ci8qIE1pc21vIHRhbWHxby90aXBvZ3JhZu1hIHF1ZSAubGVhZC1leGNsdXNpdmUtdGFnIChsYSBkZSBsYSBub3RpY2lhCiAgIHByaW5jaXBhbCkgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZQogICBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay1odXdzaiAuaGVhZGVyMi1jYXQtdGFnLAouYmxrLWh1d3NqIC5oZWFkZXIyLWV4Y2x1c2l2ZS10YWd7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjcwMDtmb250LXNpemU6LjhlbTtsZXR0ZXItc3BhY2luZzouNXB4O3BhZGRpbmc6MnB4IDhweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7d2hpdGUtc3BhY2U6bm93cmFwO2NvbG9yOiNmZmY7fQouYmxrLWh1d3NqIC5oZWFkZXIyLWV4Y2x1c2l2ZS10YWctaWNvbntwb3NpdGlvbjpzdGF0aWM7aW5zZXQ6YXV0bztpbmxpbmUtc2l6ZToxNHB4O2Jsb2NrLXNpemU6MTRweDtvYmplY3QtZml0OmNvbnRhaW47ZmxleDowIDAgYXV0bztkaXNwbGF5OmJsb2NrO30KLmJsay1odXdzaiAuaGVhZGVyMi10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6OTAwO2ZvbnQtc2l6ZTozNnB4O2xpbmUtaGVpZ2h0OjEuMDU7Y29sb3I6IzBFMTExQTttYXJnaW46MDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bWluLWlubGluZS1zaXplOjA7b3ZlcmZsb3ctd3JhcDpicmVhay13b3JkO30KLyogU2VwYXJhY2nzbiBkZSAxMHB4IGVudHJlIGVsIHRleHRvIGRlIHBhdHJvY2luaW8geSBlbCBsb2dvIGVuIERlc2sgJiM4MjEyOyBlbgogICBN83ZpbCBzaWd1ZSBzaW4gc2VwYXJhY2nzbiAoZ2FwOjAsIHZlciBAY29udGFpbmVyIG3hcyBhYmFqbykuICovCi5ibGstaHV3c2ogLmhlYWRlcjItbG9nb3Mtd3JhcHtmbGV4OjAgMCBhdXRvO21heC1pbmxpbmUtc2l6ZTo1MCU7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7fQovKiBFdGlxdWV0YSBvcGNpb25hbCBqdW50byBhbCBjYXJydXNlbCBkZSBsb2dvcyAocC5lai4gIlBhdHJvY2luYWRvIHBvcjoiKSAmIzgyMTI7CiAgIHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsCiAgIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLWh1d3NqIC5oZWFkZXIyLWxvZ29zLWxhYmVse2ZvbnQtZmFtaWx5OkFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMHB4O2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojNjY3O3doaXRlLXNwYWNlOm5vd3JhcDt9Ci5ibGstaHV3c2ogLmhlYWRlcjItbG9nb3N7cG9zaXRpb246cmVsYXRpdmU7aW5saW5lLXNpemU6MTYwcHg7YmxvY2stc2l6ZTo1MHB4O2ZsZXgtc2hyaW5rOjA7fQouYmxrLWh1d3NqIC5oZWFkZXIyLWxvZ29zIGltZ3twb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO21hcmdpbjphdXRvO21heC1pbmxpbmUtc2l6ZToxMDAlO21heC1ibG9jay1zaXplOjEwMCU7b2JqZWN0LWZpdDpjb250YWluO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjdzIGVhc2UtaW4tb3V0O30KLmJsay1odXdzaiAuaGVhZGVyMi1sb2dvcyBpbWcuaXMtYWN0aXZle29wYWNpdHk6MTt9Ci8qIElndWFsIHF1ZSBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsOiBwb3IgZGViYWpvIGRlIGVzdGUgYW5jaG8gc2UKICAgaW50ZW50YSBwcmltZXJvIDEgU09MQSBGSUxBIChldGlxdWV0YXMrdGl0dWxhciBqdW50byBhbCBsb2dvLCBpZ3VhbCBxdWUKICAgZW4gRGVzaywgYSB0YW1h8W8gcmVkdWNpZG8pLiBFbCBibG9xdWUgZGUgbG9nb3MgbWFudGllbmUgU0lFTVBSRSBzdQogICBkaXNwb3NpY2nzbiBlbiBjb2x1bW5hIChldGlxdWV0YSBkZSBwYXRyb2NpbmlvIGVuY2ltYSBkZWwgbG9nbywKICAgYWxpbmVhZG9zIGEgbGEgZGVyZWNoYSwgc2luIHNlcGFyYWNp824pIHRhbnRvIGVuIGVzdGEgZmlsYSD6bmljYSBjb21vIGVuCiAgIGVsIHJlc2d1YXJkbyBkZSBhYmFqby4gU2kgZWwgdGl0dWxhciwgc3VtYWRvIGFsIGFuY2hvIGRlIGxhcyBldGlxdWV0YXMKICAgYWN0aXZhcyAoY2F0ZWdvcu1hIHkvbyBleGNsdXNpdmEsIHNpIGxhcyBoYXkpLCBzdXBlcmEgZWwgNTUlIGRlbCBhbmNobwogICB0b3RhbCBkZSBsYSBjYWJlY2VyYSAoY2FkYSB1bm8gbWVkaWRvIGEgdW5hIHNvbGEgbO1uZWEpLCBlbCBzY3JpcHQKICAgc3RhbmRhbG9uZSBh8WFkaWRvIGFsIGZpbmFsIGRlIGVzdGUgSFRNTCAodmVyCiAgIGJ1aWxkSGVhZGVyMlN0YWNraW5nU2NyaXB0KCkpIGxvIGRldGVjdGEgbWlkaWVuZG8gc3UgYW5jaG8gbmF0dXJhbAogICB5IGHxYWRlIGxhIGNsYXNlICJoZWFkZXIyLXN0YWNrZWQiOiBlbCBibG9xdWUgZGUKICAgbG9nb3Mgc3ViZSBlbnRvbmNlcyBhIHN1IHByb3BpYSBmaWxhIChhbGluZWFkbyBhIGxhIGRlcmVjaGEpIHkKICAgdGl0dWxhcitldGlxdWV0YXMgYmFqYW4gYSBsYSBmaWxhIGRlIGFiYWpvLCBhIGFuY2hvIGNvbXBsZXRvICYjODIxMjsgbWlzbW8KICAgbGF5b3V0IGRlIDIgZmlsYXMgcXVlIGhhYu1hIGFudGVzIHNpZW1wcmUgcG9yIGRlYmFqbyBkZSBlc3RlIGJyZWFrcG9pbnQsCiAgIGFob3JhIHNvbG8gY29tbyByZXNndWFyZG8uIERlbnRybyBkZSBlc2UgcmVzZ3VhcmRvLCBjb24gZXRpcXVldGEocykgZWwKICAgdGl0dWxhciBwYXNhIGFkZW3hcyBhIHN1IFBST1BJQSBmaWxhIGEgYW5jaG8gY29tcGxldG8sIGRlYmFqbyBkZSBsYSBmaWxhIGRlIGV0aXF1ZXRhcyAodmVyCiAgICIuaGVhZGVyMi1zdGFja2VkIC5oZWFkZXIyLWxlZnQiIG3hcyBhYmFqbykuIEVsIGxvZ28gc2UgcmVkdWNlIHVuIDIwJQogICAoMTYweDUwICYjODU5NDsgMTI4eDQwKS4KICAgYWxpZ24tc2VsZjpmbGV4LWVuZCBlbiBoZWFkZXIyLWxlZnQgZmlqYSBlbCB0aXR1bGFyIFNJRU1QUkUgYSBsb3MgMTBweAogICBkZWwgcGFkZGluZy1ib3R0b20gcmVzcGVjdG8gYSBsYSBs7W5lYSBzZXBhcmFkb3JhICYjODIxMjsgbWlzbW8gY3JpdGVyaW8gcXVlCiAgIGVuIERlc2sgKHZlciBoZWFkZXIyLWxlZnQgbeFzIGFycmliYSk6IHNpbiBlc3RvLCBhbCBzZXIgZWwgYmxvcXVlIGRlCiAgIGxvZ29zIG3hcyBhbHRvIHF1ZSBlbCB0aXR1bGFyLCBlbCBjZW50cmFkbyB2ZXJ0aWNhbCBkZWwgcm93IGRlamFiYSB1bgogICBodWVjbyBtYXlvciBlbnRyZSBlbCB0aXR1bGFyIHkgbGEgbO1uZWEuIEVsIGJsb3F1ZSBkZSBsb2dvcyBzaWd1ZQogICBjZW50cmFkbyAoc2luIGVzZSBvdmVycmlkZSkuICovCkBjb250YWluZXIgKG1heC1pbmxpbmUtc2l6ZTo0ODBweCl7CiAgLmJsay1odXdzaiAuaGVhZGVyMntmbGV4LWRpcmVjdGlvbjpyb3c7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O3BhZGRpbmctbGVmdDoxMHB4O3BhZGRpbmctcmlnaHQ6MTBweDtwYWRkaW5nLWJvdHRvbToxMHB4O30KICAuYmxrLWh1d3NqIC5oZWFkZXIyLWxlZnR7b3JkZXI6MTthbGlnbi1zZWxmOmZsZXgtZW5kO30KICAuYmxrLWh1d3NqIC5oZWFkZXIyLWxvZ29zLXdyYXB7b3JkZXI6MjthbGlnbi1zZWxmOmNlbnRlcjttYXgtaW5saW5lLXNpemU6bm9uZTtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1lbmQ7Z2FwOjA7fQogIC5ibGstaHV3c2ogLmhlYWRlcjItbG9nb3N7aW5saW5lLXNpemU6MTI4cHg7YmxvY2stc2l6ZTo0MHB4O30KICAuYmxrLWh1d3NqIC5oZWFkZXIyLXRpdGxle2ZvbnQtc2l6ZToyN3B4O30KICAuYmxrLWh1d3NqIC5oZWFkZXIyLmhlYWRlcjItc3RhY2tlZHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1zdGFydDt9CiAgLmJsay1odXdzaiAuaGVhZGVyMi5oZWFkZXIyLXN0YWNrZWQgLmhlYWRlcjItbGVmdHtvcmRlcjoyO2FsaWduLXNlbGY6ZmxleC1zdGFydDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6c3RyZXRjaDtnYXA6NXB4O30KICAuYmxrLWh1d3NqIC5oZWFkZXIyLmhlYWRlcjItc3RhY2tlZCAuaGVhZGVyMi1sb2dvcy13cmFwe29yZGVyOjE7bWF4LWlubGluZS1zaXplOjEwMCU7YWxpZ24tc2VsZjpmbGV4LWVuZDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1lbmQ7Z2FwOjA7fQogIC8qIFJlc2d1YXJkbyBpbnRlcm1lZGlvICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhCiAgICAgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YTogc29sbyBlbCB0aXR1bGFyIGJhamEgYSBzdQogICAgIHByb3BpYSBmaWxhIGEgYW5jaG8gY29tcGxldG8gY3VhbmRvIGxhcyBldGlxdWV0YXMgU80gY2FiZW4ganVudG8gYWwKICAgICBsb2dvIHBlcm8gZWwgdGl0dWxhciBuby4gaGVhZGVyMi1sZWZ0IHBhc2EgZGUgZmlsYSBhIGNvbHVtbmEKICAgICAoZXRpcXVldGFzIGFycmliYSwgdGl0dWxhciBkZWJham8pIHkgcmVjdXBlcmEgYWxpZ24tc2VsZjphdXRvIHBhcmEKICAgICBjZW50cmFyc2UgdmVydGljYWxtZW50ZSBjb250cmEgZWwgbG9nbyAoYWxpZ24tc2VsZjpjZW50ZXIgZGUgbGEgcmVnbGEKICAgICBiYXNlIGRlIC5oZWFkZXIyLWxvZ29zLXdyYXAsIGFycmliYSksIGlndWFsIHF1ZSBlbiBlbCByZXN0byBkZSBlc3RhZG9zLiAqLwogIC5ibGstaHV3c2ogLmhlYWRlcjIuaGVhZGVyMi10aXRsZS1iZWxvdyAuaGVhZGVyMi1sZWZ0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpzdHJldGNoO2FsaWduLXNlbGY6YXV0bztnYXA6NXB4O30KfQpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6ODYwcHgpewogIC5ibGstaHV3c2ogLmNvbHVtbntkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnI7Z2FwOjEwcHg7fQogIC5ibGstaHV3c2ogLmNvbHVtbi1pdGVtLmxheW91dC1waG90by1sZWZ0LAogIC5ibGstaHV3c2ogLmNvbHVtbi1pdGVtLm1vYi1ncmlkLXN0YW5kYWxvbmV7Z3JpZC1jb2x1bW46MSAvIC0xO30KICAvKiAhaW1wb3J0YW50OiBsYSBwcm9wb3JjafNuIHByb3BpYSBkZSBjYWRhIG5vdGljaWEgKHZlciBtZWRpYUFzcGVjdFJhdGlvKQogICAgIHNlIGFwbGljYSBjb21vIGVzdGlsbyBpbmxpbmUgc29icmUgZWwgcHJvcGlvIC50aHVtYiAmIzgyMTI7IHNpbiAhaW1wb3J0YW50CiAgICAgZXN0ZSByZXNndWFyZG8gZGVsIGdyaWQgZGUgMiBjb2x1bW5hcyBkZWphcu1hIGRlIHRlbmVyIGVmZWN0byBlbiBjdWFudG8KICAgICB1bmEgbm90aWNpYSB0cmFqZXJhIHVuYSBwcm9wb3JjafNuIGRpc3RpbnRhIGRlIDQ6MyAodmVyIG1pc21vIGNvbWVudGFyaW8sCiAgICAgZGV0YWxsYWRvLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhKS4gKi8KICAuYmxrLWh1d3NqIC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tdG9wOm5vdCgubW9iLWdyaWQtc3RhbmRhbG9uZSkgLnRodW1ie2FzcGVjdC1yYXRpbzo0LzMgIWltcG9ydGFudDt9CiAgLmJsay1odXdzaiAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcDpub3QoLm1vYi1ncmlkLXN0YW5kYWxvbmUpIC5sZWZ0LXRpdGxle2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXNpemU6MThweDtsaW5lLWhlaWdodDoxLjJlbTt0ZXh0LXRyYW5zZm9ybTpub25lO2ZvbnQtd2VpZ2h0OjYwMDt9Cn0KLyogRXN0aWxvICJmb3RvIGdyYW5kZSArIHRpdHVsYXIiOiBmb3RvIDE2OjkgYXJyaWJhLCB0aXR1bGFyIGRlYmFqbyAmIzgyMTI7IGVsZWdpYmxlCiAgIHBvciBub3RpY2lhIGRlc2RlIGVsIGdlc3Rvci4gTm8gc2UgcmVzdHJpbmdlIGNvbiBAY29udGFpbmVyIHBvcnF1ZQogICAuY29sdW1uLWl0ZW0geWEgZXMgYmxvY2sgcG9yIGRlZmVjdG8gKGVsIHRodW1iIHkgZWwgdGV4dG8gc2UgYXBpbGFuIHNvbG9zCiAgIHNpbiBt4XMgYWp1c3RlKSwgYXPtIHF1ZSBlbCBkaXNl8W8gZnVuY2lvbmEgaWd1YWwgZGUgYmllbiBlbiBjdWFscXVpZXIKICAgYW5jaG8sIERlc2sgbyBN83ZpbC4gKi8KLmJsay1odXdzaiAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO30KLmJsay1odXdzaiAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcCAudGh1bWJ7aW5saW5lLXNpemU6MTAwJTthc3BlY3QtcmF0aW86MTYvOTttYXJnaW4tYm90dG9tOjEwcHg7fQouYmxrLWh1d3NqIC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tdG9wIC5sZWZ0LXRpdGxle2ZvbnQtZmFtaWx5OiJhbXBsaXR1ZGUtbWVkaXVtLWNvbmRlbnNlZCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuMmVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtmb250LXdlaWdodDo5MDA7fQovKiBFbiBN83ZpbCBlbCB0aXR1bGFyIGRlIGVzdGUgZGlzZfFvIHNlIG11ZXN0cmEgbeFzIGdyYW5kZSAoMS41cmVtIGVuIHZleiBkZQogICBsb3MgMS4ycmVtIGRlIERlc2spICYjODIxMjsgbWlzbWEgZXNwZWNpZmljaWRhZCAoMyBjbGFzZXMpIHF1ZSBsYSByZWdsYSBkZQogICBhcnJpYmE7IGFsIGlyIERFU1BVyVMgZW4gZWwgQ1NTIGdhbmEgcG9yIG9yZGVuIGRlIGNhc2NhZGEuIFNlIHVzYSBlbAogICBicmVha3BvaW50IGRlIDQ4MHB4IChlbCBkZSB0aXBvZ3JhZu1hIGVuIGVzdGEgYXBwLCBubyBlbCBkZSA4NjBweCBxdWUgYXF17QogICBzb2xvIGdvYmllcm5hIGVsIGFwaWxhZG8gZGUgY29sdW1uYXMpIHBhcmEgcXVlIGNvaW5jaWRhIGNvbiBlbCByZXN0byBkZQogICBjYW1iaW9zIGRlIHRleHRvL3RhbWHxbyBwb3IgdmlzdGEuIE5vIGFmZWN0YSBhbCByZXNndWFyZG8gZGUgMiBjb2x1bW5hcyBlbgogICBt83ZpbCAobW9iLWdyaWQpLCBt4XMgZXNwZWPtZmljbyAoMThweCwgdmVyIG3hcyBhcnJpYmEpLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6NDgwcHgpewogIC5ibGstaHV3c2ogLmNvbHVtbi1pdGVtLmxheW91dC1waG90by10b3AgLmxlZnQtdGl0bGV7Zm9udC1zaXplOjEuNXJlbTt9Cn0KLyogRXN0aWxvICJCbG9xdWUgbWVkaWEiICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhCiAgIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstaHV3c2ogLm1lZGlhLWJsb2NrLW1lZGlhe2Rpc3BsYXk6YmxvY2s7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOmF1dG87fQouYmxrLWh1d3NqIC5tZWRpYS1ibG9jay13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7fQouYmxrLWh1d3NqIC5tZWRpYS1ibG9jay1pZnJhbWUtd3JhcHtwb3NpdGlvbjpyZWxhdGl2ZTtpbmxpbmUtc2l6ZToxMDAlO2FzcGVjdC1yYXRpbzoxNi85O2JhY2tncm91bmQ6IzAwMDtvdmVyZmxvdzpoaWRkZW47fQouYmxrLWh1d3NqIC5tZWRpYS1ibG9jay1pZnJhbWUtd3JhcCBpZnJhbWV7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtib3JkZXI6MDtkaXNwbGF5OmJsb2NrO30KLmJsay1odXdzaiAuY29sdW1uLWl0ZW0ubGF5b3V0LW1lZGlhLWJsb2Nre2JvcmRlcjpub25lO3BhZGRpbmc6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2Jsb2NrLXNpemU6YXV0bztmbGV4OjAgMCBhdXRvO30KLmJsay1odXdzaiAuY29sdW1uLWl0ZW06bm90KC5sYXlvdXQtbWVkaWEtYmxvY2spe2ZsZXg6MSAxIGF1dG87fQo8L3N0eWxlPgoKPGRpdiBjbGFzcz0iYmxrLWh1d3NqIj4KICAKICA8bWFpbiBjbGFzcz0icGFnZSI+CiAgICAKICAgIDxhcnRpY2xlIGNsYXNzPSJsZWFkIj4KICAgICAgPGRpdiBjbGFzcz0ibGVhZC1tZWRpYSI+CiAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vb2tkaWFyaW8uY29tL2VzcGVjaWFsZXMvYXBwcy9tZWRpYS9tYXJpY2FybWVuLWVudmlvLXVuYS1jYXJ0YS1hLXNhbmNoZXotZWwtYW5vLXBhc2Fkby1waWRpZW5kb2xlLWF1eGlsaW8tYW50ZS1zdS1kZXNhaHVjaW8teS1lbC1wcmVzaWRlbnRlLW5vLWhpem8tbmFkYS0yMDI2MTAwOC0wNTMyMDAtZThlYTM3LmpwZyIgYWx0PSJNYXJpY2FybWVuIGVudmnzIHVuYSBjYXJ0YSBhIFPhbmNoZXogZWwgYfFvIHBhc2FkbyBwaWRp6W5kb2xlIGF1eGlsaW8gYW50ZSBzdSBkZXNhaHVjaW8geSBlbCBwcmVzaWRlbnRlIG5vIGhpem8gbmFkYSIgbG9hZGluZz0iZWFnZXIiIGZldGNocHJpb3JpdHk9ImhpZ2giIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgPGRpdiBjbGFzcz0ibGVhZC1vdmVybGF5IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDE0LDE3LDI2LDAuMDApOyI+PC9kaXY+CiAgICAgICAgCiAgICAgICAgPGJ1dHRvbiBjbGFzcz0icGxheS1idXR0b24gcG9zLXRvcC1sZWZ0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGRpdiBjbGFzcz0icGxheS1pY29uIj48L2Rpdj48c3BhbiBjbGFzcz0icGxheS10ZXh0Ij5QbGF5PC9zcGFuPjwvYnV0dG9uPgogICAgICAgIAogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ibGVhZC1ib2R5IiBzdHlsZT0iYmFja2dyb3VuZDojMDBBN0ZGOyI+CiAgICAgICAgPHNwYW4gY2xhc3M9ImxlYWQtY2F0IiBzdHlsZT0iYmFja2dyb3VuZDojZmZmO2NvbG9yOiMwMEE3RkYiPkVTUEHRQTwvc3Bhbj4KICAgICAgICA8ZGl2IGNsYXNzPSJsZWFkLWJvZHktbWFpbiI+CiAgICAgICAgICAKICAgICAgICAgIDxoMiBjbGFzcz0ibGVhZC10aXRsZSI+PHNwYW4gY2xhc3M9ImxlYWQtdGl0bGUtZGVzayI+TWFyaWNhcm1lbiBlbnZp8yB1bmEgY2FydGEgYSBT4W5jaGV6IGVsIGHxbyBwYXNhZG8gcGlkaeluZG9sZSBhdXhpbGlvIGFudGUgc3UgZGVzYWh1Y2lvIHkgZWwgcHJlc2lkZW50ZSBubyBoaXpvIG5hZGE8L3NwYW4+PHNwYW4gY2xhc3M9ImxlYWQtdGl0bGUtbW9iaWxlIj5NYXJpY2FybWVuIGVudmnzIHVuYSBjYXJ0YSBhIFPhbmNoZXogZWwgYfFvIHBhc2FkbyBwaWRp6W5kb2xlIGF1eGlsaW8gYW50ZSBzdSBkZXNhaHVjaW8geSBlbCBwcmVzaWRlbnRlIG5vIGhpem8gbmFkYTwvc3Bhbj48L2gyPgogICAgICAgICAgCiAgICAgICAgICA8c3BhbiBjbGFzcz0iYXV0aG9yLWxhYmVsIj5MdXogU2VsYTwvc3Bhbj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIDxhIGNsYXNzPSJsZWFkLWxpbmsiIGhyZWY9Imh0dHBzOi8vb2tkaWFyaW8uY29tL2VzcGFuYS9tYXJpY2FybWVuLWVudmlvLWNhcnRhLXNhbmNoZXotYW5vLXBhc2Fkby1waWRpZW5kb2xlLWF1eGlsaW8tZGVzYWh1Y2lvLXByZXNpZGVudGUtbm8taGl6by1uYWRhLTIwNTA2NDI4IiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgdGl0bGU9Ik1hcmljYXJtZW4gZW52afMgdW5hIGNhcnRhIGEgU+FuY2hleiBlbCBh8W8gcGFzYWRvIHBpZGnpbmRvbGUgYXV4aWxpbyBhbnRlIHN1IGRlc2FodWNpbyB5IGVsIHByZXNpZGVudGUgbm8gaGl6byBuYWRhIiBhcmlhLWxhYmVsPSJNYXJpY2FybWVuIGVudmnzIHVuYSBjYXJ0YSBhIFPhbmNoZXogZWwgYfFvIHBhc2FkbyBwaWRp6W5kb2xlIGF1eGlsaW8gYW50ZSBzdSBkZXNhaHVjaW8geSBlbCBwcmVzaWRlbnRlIG5vIGhpem8gbmFkYSI+PC9hPgogICAgPC9hcnRpY2xlPgogIDwvbWFpbj4KPC9kaXY+Cgo8c2NyaXB0PgooZnVuY3Rpb24oKXsKICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5ibGstaHV3c2ogLmxlYWQnKTsKICBpZiAoIWFydGljbGUpIHJldHVybjsKICB2YXIgbWFpbiA9IGFydGljbGUucXVlcnlTZWxlY3RvcignLmxlYWQtYm9keS1tYWluJyk7CiAgdmFyIHRpdGxlRWwgPSBhcnRpY2xlLnF1ZXJ5U2VsZWN0b3IoJy5sZWFkLXRpdGxlJyk7CiAgaWYgKCFtYWluIHx8ICF0aXRsZUVsKSByZXR1cm47CiAgdmFyIGJhc2VGb250U2l6ZVB4ID0gcGFyc2VGbG9hdChnZXRDb21wdXRlZFN0eWxlKHRpdGxlRWwpLmZvbnRTaXplKSB8fCAwOwogIGlmICghYmFzZUZvbnRTaXplUHgpIHJldHVybjsKICB2YXIgTUFYX1NDQUxFID0gMS44OwogIHZhciBNSU5fU0NBTEUgPSAwLjU7CiAgdmFyIE1BWF9GT05UX1BYID0gNjQ7IC8vIH40cmVtIGNvbiBsYSBiYXNlIGhhYml0dWFsIGRlIDE2cHggKG1pc21vIHRvcGUgcXVlIGZpdExlYWRUaXRsZVRvQm94KCkgZW4gZWwgZ2VzdG9yKQogIHZhciBib2R5UG9zaXRpb25CbG9ja3NGaXQgPSBhcnRpY2xlLmNsYXNzTGlzdC5jb250YWlucygnbGVhZC1ib2R5LWxlZnQnKSB8fCBhcnRpY2xlLmNsYXNzTGlzdC5jb250YWlucygnbGVhZC1ib2R5LXJpZ2h0Jyk7CiAgZnVuY3Rpb24gZml0KCl7CiAgICBpZiAoYm9keVBvc2l0aW9uQmxvY2tzRml0KSByZXR1cm47CiAgICB0aXRsZUVsLnN0eWxlLmZvbnRTaXplID0gYmFzZUZvbnRTaXplUHggKyAncHgnOwogICAgdmFyIGF2YWlsYWJsZUhlaWdodCA9IG1haW4uY2xpZW50SGVpZ2h0OwogICAgaWYgKCFhdmFpbGFibGVIZWlnaHQpIHJldHVybjsKICAgIC8vIFZlciBtaXNtbyBjb21lbnRhcmlvLCBkZXRhbGxhZG8sIGVuIGZpdExlYWRUaXRsZVRvQm94KCkgZGVsIGdlc3RvcjoKICAgIC8vIG1haW4uc2Nyb2xsSGVpZ2h0IG51bmNhIGJhamEgZGUgY2xpZW50SGVpZ2h0IGF1bnF1ZSBlbCBjb250ZW5pZG8gcmVhbAogICAgLy8gb2N1cGUgbWVub3MsIGFz7SBxdWUgbm8gc2lydmUgcGFyYSBkZXRlY3RhciBjdeFudG8gc29icmEgbyBmYWx0YSBjb24KICAgIC8vIGVsIHRpdHVsYXIgYWN0dWFsICYjODIxMjsgc2Ugc3VtYSBlbiBzdSBsdWdhciBlbCBhbHRvIHJlYWwgZGUgY2FkYSBoaWpvCiAgICAvLyBWSVNJQkxFIGRlbCBibG9xdWUsIHNhbHZvIGVsIHByb3BpbyB0aXR1bGFyLCBt4XMgZWwgaHVlY28gKCJnYXAiKQogICAgLy8gZW50cmUgZWxsb3M7IG5vIGNhbWJpYSBjb24gZWwgdGFtYfFvIGRlbCB0aXR1bGFyLCBhc+0gcXVlIHNlIG1pZGUgdW5hCiAgICAvLyBzb2xhIHZleiwgYW50ZXMgZGUgbGEgYvpzcXVlZGEgYmluYXJpYS4KICAgIHZhciBnYXBQeCA9IHBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZShtYWluKS5yb3dHYXApIHx8IHBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZShtYWluKS5nYXApIHx8IDA7CiAgICB2YXIgdmlzaWJsZUNoaWxkcmVuID0gW10uc2xpY2UuY2FsbChtYWluLmNoaWxkcmVuKS5maWx0ZXIoZnVuY3Rpb24oYyl7IHJldHVybiBnZXRDb21wdXRlZFN0eWxlKGMpLmRpc3BsYXkgIT09ICdub25lJzsgfSk7CiAgICB2YXIgb3RoZXJzSGVpZ2h0ID0gdmlzaWJsZUNoaWxkcmVuLmZpbHRlcihmdW5jdGlvbihjKXsgcmV0dXJuIGMgIT09IHRpdGxlRWw7IH0pLnJlZHVjZShmdW5jdGlvbihzdW0sIGMpeyByZXR1cm4gc3VtICsgYy5vZmZzZXRIZWlnaHQ7IH0sIDApCiAgICAgICsgZ2FwUHggKiBNYXRoLm1heCgwLCB2aXNpYmxlQ2hpbGRyZW4ubGVuZ3RoIC0gMSk7CiAgICB2YXIgYXZhaWxhYmxlRm9yVGl0bGUgPSBNYXRoLm1heCgwLCBhdmFpbGFibGVIZWlnaHQgLSBvdGhlcnNIZWlnaHQpOwogICAgaWYgKCFhdmFpbGFibGVGb3JUaXRsZSkgcmV0dXJuOwogICAgZnVuY3Rpb24gaGVpZ2h0QXRTY2FsZShzY2FsZSl7CiAgICAgIHRpdGxlRWwuc3R5bGUuZm9udFNpemUgPSBNYXRoLm1pbihiYXNlRm9udFNpemVQeCAqIHNjYWxlLCBNQVhfRk9OVF9QWCkgKyAncHgnOwogICAgICByZXR1cm4gdGl0bGVFbC5vZmZzZXRIZWlnaHQ7CiAgICB9CiAgICB2YXIgbG8gPSBNSU5fU0NBTEUsIGhpID0gTUFYX1NDQUxFOwogICAgZm9yICh2YXIgaSA9IDA7IGkgPCA4OyBpKyspewogICAgICB2YXIgbWlkID0gKGxvICsgaGkpIC8gMjsKICAgICAgaWYgKGhlaWdodEF0U2NhbGUobWlkKSA8PSBhdmFpbGFibGVGb3JUaXRsZSkgbG8gPSBtaWQ7IGVsc2UgaGkgPSBtaWQ7CiAgICB9CiAgICBoZWlnaHRBdFNjYWxlKGxvKTsKICB9CiAgZml0KCk7CiAgaWYgKGRvY3VtZW50LmZvbnRzICYmIGRvY3VtZW50LmZvbnRzLnJlYWR5KXsgZG9jdW1lbnQuZm9udHMucmVhZHkudGhlbihmaXQpOyB9CiAgaWYgKHdpbmRvdy5SZXNpemVPYnNlcnZlcil7IG5ldyBSZXNpemVPYnNlcnZlcihmaXQpLm9ic2VydmUoYXJ0aWNsZSk7IH0KICBlbHNlIHsgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIGZpdCk7IH0KfSkoKTsKPC9zY3JpcHQ+
      CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQiIGNyb3Nzb3JpZ2luPgo8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vcC50eXBla2l0Lm5ldCIgY3Jvc3NvcmlnaW4+CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbSI+CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbSIgY3Jvc3NvcmlnaW4+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvaXFhMXFlYi5jc3MiPgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Um9ib3RvOndnaHRANDAwOzcwMCZkaXNwbGF5PXN3YXAiPgo8c3R5bGU+Ci8qIGFtcGxpdHVkZS1tZWRpdW0tY29uZGVuc2VkOiB2ZXIgcmVsYXRlZFVwcGVyY2FzZVRpdGxlRm9udCBt4XMgYWJham8uICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAiYW1wbGl0dWRlLW1lZGl1bS1jb25kZW5zZWQiOwogIHNyYzogdXJsKCJodHRwczovL29rZGlhcmlvLmNvbS93ZWIvdGhlbWVzL3YxMC9jc3MvX2ZvbnRzX2FtcGxpdHVkZS9BbXBsaXR1ZGUlMjBBdWJpJTIwTWVkaXVtJTIwQ25kLm90ZiIpOwp9Ci8qIGFtcGxpdHVkZS1ib29rOiB2ZXIgcmVsYXRlZEF1dGhvckZvbnQgbeFzIGFiYWpvLiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogImFtcGxpdHVkZS1ib29rIjsKICBzcmM6IHVybCgiaHR0cHM6Ly9va2RpYXJpby5jb20vd2ViL3RoZW1lcy92MTAvY3NzL19mb250c19hbXBsaXR1ZGUvQW1wbGl0dWRlJTIwQXViaSUyMEJvb2sub3RmIik7Cn0KLyogY29udGFpbmVyLXR5cGU6aW5saW5lLXNpemUgYXF17SBlcyBpbXByZXNjaW5kaWJsZTogY29udmllcnRlIGVzdGUgYmxvcXVlCiAgIGVuIGVsIGNvbnRlbmVkb3IgZGUgcmVmZXJlbmNpYSBwYXJhIGxvcyAiQGNvbnRhaW5lciAoLi4uLWlubGluZS1zaXplLi4uKSIKICAgZGUgbeFzIGFiYWpvLiBVc2Ftb3MgQGNvbnRhaW5lciBlbiB2ZXogZGUgQG1lZGlhIHBvcnF1ZSAiQG1lZGlhCiAgIChtYXgtaW5saW5lLXNpemU6Li4uKSIgTk8gZXMgdW5hIGNvbmRpY2nzbiBDU1MgduFsaWRhICYjODIxMjsgaW5saW5lLXNpemUgc29sbwogICBleGlzdGUgY29tbyBjYXJhY3Rlcu1zdGljYSBkZSBAY29udGFpbmVyLCBudW5jYSBkZSBAbWVkaWEgJiM4MjEyOyBhc+0gcXVlIGVzYXMKICAgcmVnbGFzIGphbeFzIHNlIGFjdGl2YWJhbiAodmVyaWZpY2FkbyBjb24gbWF0Y2hNZWRpYTogc2llbXByZSBmYWxzZSwgc2luCiAgIGltcG9ydGFyIGVsIGFuY2hvKSwgeSBwb3IgZXNvIGxhIG5vdGljaWEgcHJpbmNpcGFsIHBvZO1hIGRlc2FwYXJlY2VyIG8gZWwKICAgZGlzZfFvIG3zdmlsIG5vIHNlIGFjdGl2YWJhIG51bmNhLiBAY29udGFpbmVyIHPtIHNvcG9ydGEgaW5saW5lLXNpemUgZGUKICAgZm9ybWEgduFsaWRhLCB5IGV2aXRhIGlndWFsbWVudGUgbGEgcGFsYWJyYSAid2lkdGg6IiBxdWUgZWwgQ01TIGRlbAogICB1c3VhcmlvIGVsaW1pbmEgYWwgcGVnYXIgSFRNTC9DU1MgZGlyZWN0YW1lbnRlLiAqLwovKiBGSVggT0tESUFSSU8gKi8KICAgIC5pdGVtIGFydGljbGUgLmFydGljbGUtc2NyaXB0IHsKICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50OwogICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50OwogICAgfQovKiBDb250ZW5lZG9yIGRlIHRvZGEgbGEgYXBlcnR1cmEgKGNhYmVjZXJhICsgbm90aWNpYSBwcmluY2lwYWwgKyBjb2x1bW5hKToKICAgZm9uZG8gYmxhbmNvIHkgYWlyZSBhbHJlZGVkb3IsIHNvbG8gZW4gRGVzayAmIzgyMTI7IHZlciBvdmVycmlkZSBkZW50cm8gZGVsCiAgIEBjb250YWluZXIobWF4LWlubGluZS1zaXplOjg2MHB4KSBkZSBt4XMgYWJham8sIHF1ZSBsbyBhbnVsYSBwb3IgZGViYWpvCiAgIGRlIGVzZSBhbmNobyAoZXF1aXZhbGVudGUgYSBsYSB2aXN0YSBN83ZpbCksIHkgYXF17SBtaXNtbyBjb24gZWwgdGV4dG8gYQogICBsYSBpenF1aWVyZGEgbyBsYSBkZXJlY2hhIChib2R5UG9zaXRpb25CbG9ja3NDb2x1bW4pOiBjb24gZXNlIGxheW91dCBsYQogICBub3RpY2lhIHByaW5jaXBhbCB5YSBvY3VwYSBlbCAxMDAlIGRlbCBhbmNobyB5IHNvbGFwYSBzdSBwcm9waWEgZm90byBkZQogICBib3JkZSBhIGJvcmRlLCBhc+0gcXVlIGVsIGFpcmUvZm9uZG8gYmxhbmNvIHNvYnJhLiAqLwouYmxrLWdjN2Fqe21heC1pbmxpbmUtc2l6ZTo5NjBweDttYXJnaW46MCBhdXRvO2NvbnRhaW5lci10eXBlOmlubGluZS1zaXplO2JhY2tncm91bmQtY29sb3I6I2ZmZjtwYWRkaW5nOjEwcHg7fQouYmxrLWdjN2FqIGF7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y29sb3I6aW5oZXJpdH0KLmJsay1nYzdhaiAucGFnZXtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6MTVweH0KLmJsay1nYzdhaiAucGFnZSAuY29sdW1ue29yZGVyOjN9Ci5ibGstZ2M3YWogLnBhZ2UgLmxlYWR7b3JkZXI6Mn0KLyogODYwcHggeSBubyA0NzVweDogY29uIGxhIGNvbHVtbmEgZmlqYSAoMjIwcHggKyAyMHB4IGRlIGdhcCA9IDI0MHB4KSwKICAgY3VhbHF1aWVyIGFuY2hvIGRlIGlmcmFtZSBwb3IgZGViYWpvIGRlIH44NjBweCBkZWphIGxhIG5vdGljaWEgcHJpbmNpcGFsCiAgICgxZnIpIGNhZGEgdmV6IGNvbiBtZW5vcyBlc3BhY2lvIGhhc3RhIGNvbGFwc2FyIGEgMHB4IGRlIGFuY2hvIGFudGVzIGRlCiAgIGxsZWdhciBhIHVuIGJyZWFrcG9pbnQgdGFuIGJham8gY29tbyA0NzVweCAmIzgyMTI7IGxhIG5vdGljaWEgcHJpbmNpcGFsCiAgIGRpcmVjdGFtZW50ZSBkZXNhcGFyZWNlIGVuIGVzYSBmcmFuamEgaW50ZXJtZWRpYSAobmkgImRlc2siIGNvbXBsZXRvIG5pCiAgICJt83ZpbCIgZXN0cmVjaG8pLiBDb24gODYwcHggc2UgcGFzYSBhIHVuYSBzb2xhIGNvbHVtbmEgYXBpbGFkYSBhbnRlcyBkZQogICBxdWUgZXNvIHB1ZWRhIG9jdXJyaXIuCiAgIEVzdGUgYnJlYWtwb2ludCBzZSBvbWl0ZSBwb3IgY29tcGxldG8gbWllbnRyYXMgbGEgc2ltdWxhY2nzbiBkZSBhbmNobyBlc3TpCiAgIGFjdGl2YSAodmVyIGxlYWRXaWR0aFByZXZpZXcpOiBwZW5zYWRvIHBhcmEgY3VhbmRvIGVsIG3zZHVsbyBsbGV2YSBzdQogICBjb2x1bW5hIGEgOTYwcHgsIGRlamEgZGUgdGVuZXIgc2VudGlkbyBlbiB1bmEgZXhwb3J0YWNp824gZGUgc29sbyBsYQogICBub3RpY2lhIHByaW5jaXBhbCBhIHVuIGFuY2hvIGZpam8gZWxlZ2lkbyBhIG1hbm8gJiM4MjEyOyBsb3MgYW5jaG9zIHNpbXVsYWRvcwogICAoNjEzLzQ2MC8zMDdweCkgZXN04W4gVE9ET1MgcG9yIGRlYmFqbyBkZSA4NjBweCwgYXPtIHF1ZSBzaW4gZXN0ZSBnYXRpbmcKICAgZWwgSFRNTCBleHBvcnRhZG8gY2Flcu1hIHNpZW1wcmUgYSBsYSB0aXBvZ3JhZu1hICJN83ZpbCIgKGNvbiAhaW1wb3J0YW50KQogICBzZWEgY3VhbCBzZWEgbGEgcXVlIGVsIHVzdWFyaW8gY29uZmlndXLzIGVuICJEZXNrIiBwYXJhIGVzYSBzaW11bGFjafNuLAogICBkYW5kbyBsYSBmYWxzYSBzZW5zYWNp824gZGUgcXVlIHVuYSBjb25maWd1cmFjafNuICJwaXNhIiBhIG90cmEuICovCkBjb250YWluZXIgKG1heC1pbmxpbmUtc2l6ZTo4NjBweCl7CiAgLmJsay1nYzdhantiYWNrZ3JvdW5kOm5vbmU7cGFkZGluZzowO30KICAuYmxrLWdjN2FqIC5wYWdle2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnJ9CiAgLmJsay1nYzdhaiAucGFnZSAuc3RhY2stdGl0bGUge2ZvbnQtc2l6ZToxOHB4OyBsaW5lLWhlaWdodDogMS4yZW07fQogIC5ibGstZ2M3YWogLnBhZ2UgLnN0YWNrLWF1dGhvciB7bWFyZ2luLXRvcDogMTBweDt9CiAgLmJsay1nYzdhaiAubGVhZC1tZWRpYS5pcy1pZnJhbWV7YmxvY2stc2l6ZTo0MDBweCAhaW1wb3J0YW50O30KICAuYmxrLWdjN2FqIC5sZWFkLW1lZGlhe2FzcGVjdC1yYXRpbzoxNi85ICFpbXBvcnRhbnQ7fQogIC5ibGstZ2M3YWogLnBhZ2UgLmxlYWR7b3JkZXI6MX0KICAuYmxrLWdjN2FqIC5wYWdlIC5jb2x1bW57b3JkZXI6Mn0KICAvKiBQb3IgZGViYWpvIGRlbCBicmVha3BvaW50LCBlbCBsZWFkLWJvZHkgc2llbXByZSB2dWVsdmUgYSBpciBkZWJham8gZGVsCiAgICAgbGVhZC1tZWRpYSAobm8gaGF5IHNpdGlvIHBhcmEgZWwgbGF5b3V0IGxhZG8gYSBsYWRvKS4gKi8KICAuYmxrLWdjN2FqIC5wYWdlIC5sZWFkLmxlYWQtYm9keS1sZWZ0LAogIC5ibGstZ2M3YWogLnBhZ2UgLmxlYWQubGVhZC1ib2R5LXJpZ2h0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthc3BlY3QtcmF0aW86YXV0bzt9CiAgLmJsay1nYzdhaiAucGFnZSAubGVhZC5sZWFkLWJvZHktbGVmdCAubGVhZC1tZWRpYSwKICAuYmxrLWdjN2FqIC5wYWdlIC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1tZWRpYXtmbGV4OjEgMSBhdXRvO30KICAuYmxrLWdjN2FqIC5wYWdlIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWJvZHksCiAgLmJsay1nYzdhaiAucGFnZSAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtYm9keXtmbGV4OjEgMSBhdXRvO2lubGluZS1zaXplOjkwJTttYXJnaW46LTMwcHggYXV0byAwO2Jsb2NrLXNpemU6YXV0bzthbGlnbi1zZWxmOmF1dG87anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7cGFkZGluZzoxMHB4O30KICAuYmxrLWdjN2FqIC5wYWdlIC5jb2x1bW4taXRlbXtib3JkZXI6MXB4IHNvbGlkICNlN2ViZWU7cGFkZGluZzoxMHB4O2JhY2tncm91bmQ6I2ZmZjtibG9jay1zaXplOnN0cmV0Y2g7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlO30KICAuYmxrLWdjN2FqIC5wYWdlIC5sZWZ0LXRpdGxle2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOjIwcHg7bGluZS1oZWlnaHQ6MS4xNTtjb2xvcjojMmMzZTUzO21hcmdpbjowO3RleHQtYWxpZ246bGVmdDt9CiAgLmJsay1nYzdhaiAucGFnZSAuY29sdW1uLWl0ZW0udGl0bGUtb25seS1tb2JpbGUtMjEgLmxlZnQtdGl0bGV7Zm9udC1zaXplOjIxcHggIWltcG9ydGFudDt9CiAgLmJsay1nYzdhaiAucGFnZSAuY29sdW1uLWl0ZW0udGl0bGUtb25seS1tb2JpbGUtMTggLmxlZnQtdGl0bGV7Zm9udC1zaXplOjE4cHggIWltcG9ydGFudDt9CiAgLmJsay1nYzdhaiAucGFnZSAubGVmdC1wbGF5ewogICAgZmxleDowIDAgYXV0bztpbmxpbmUtc2l6ZToxNXB4O2Jsb2NrLXNpemU6MTVweDtib3JkZXItcmFkaXVzOjJweDsKICAgIGJhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICMwMGE3ZmY7CiAgICBkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MDsKICAgIHZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1ib3R0b206NHB4OwogIH0KICAuYmxrLWdjN2FqIC5wYWdlIC5sZWZ0LXBsYXk6OmJlZm9yZXsKICAgIGNvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztpbmxpbmUtc2l6ZTowO2Jsb2NrLXNpemU6MDsKICAgIGJvcmRlci1sZWZ0OjRweCBzb2xpZCAjMDBhN2ZmO2JvcmRlci10b3A6M3B4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206M3B4IHNvbGlkIHRyYW5zcGFyZW50O21hcmdpbi1sZWZ0OjFweDsKICB9Cn0KLyogVGlwb2dyYWbtYSAiTfN2aWwiIChhbnRldO10dWxvL3RpdHVsYXIvc3VidO10dWxvL3RpdHVsYXJlcyBhbmltYWRvcykgY29uIFNVCiAgIFBST1BJTyBicmVha3BvaW50ICg0ODBweCksIHNlcGFyYWRvIGRlbCBkZSBhcnJpYmEgKDg2MHB4LCBzb2xvIHBhcmEgYXBpbGFyCiAgIGxhIHJlamlsbGEgY29sdW1uYStub3RpY2lhKTogdW4gY29udGVuZWRvciByZWFsIGRlIG1lbm9zIGRlIDg2MHB4IGVzIG11eQogICBoYWJpdHVhbCAocC5lai4gdW5hIGNvbHVtbmEgZGUgYXJ07WN1bG8gZGUgfjcwMHB4KSB5IE5PIGVzIHVuIG3zdmlsICYjODIxMjsgY29uCiAgIHVuIPpuaWNvIGJyZWFrcG9pbnQgY29tcGFydGlkbywgbGEgdGlwb2dyYWbtYSAiRGVzayIgcXVlIGNvbmZpZ3VyYSBlbAogICB1c3VhcmlvIG5vIGxsZWdhYmEgYSB2ZXJzZSBudW5jYSBlbiBlc2UgY2FzbywgY2F5ZW5kbyBzaWVtcHJlIGEgbG9zIHZhbG9yZXMKICAgcG9yIGRlZmVjdG8gZGUgIk3zdmlsIiBzaW4gcXVlIG5hZGllIGxvIGh1YmllcmEgcGVkaWRvLiA0ODBweCBz7SBzZQogICBjb3JyZXNwb25kZSBjb24gdW4gYW5jaG8gZGUgbfN2aWwgcmVhbCAobGEgdmlzdGEgIk3zdmlsIiBkZWwgcHJvcGlvIGdlc3RvcgogICBzaW11bGEgMzc1cHgpLiBJZ3VhbCBxdWUgZWwgYnJlYWtwb2ludCBkZSBhcnJpYmEsIHNlIG9taXRlIGR1cmFudGUgbGEKICAgc2ltdWxhY2nzbiBkZSBhbmNobyBkZSBsYSBub3RpY2lhIHByaW5jaXBhbCAodmVyIGxlYWRXaWR0aFByZXZpZXcpLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6NDgwcHgpewogIC5ibGstZ2M3YWogLmxlYWQta2lja2Vye2ZvbnQtc2l6ZToxLjMxMjVyZW0gIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjEgIWltcG9ydGFudDtjb2xvcjojMDBBN0ZGICFpbXBvcnRhbnQ7fQogIC5ibGstZ2M3YWogLmxlYWQtc3VidGl0bGV7Zm9udC1zaXplOjEuMzEyNXJlbSAhaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjEuMSAhaW1wb3J0YW50O2NvbG9yOiMwMEE3RkYgIWltcG9ydGFudDt9CiAgLmJsay1nYzdhaiAubGVhZC10aXRsZXtmb250LXNpemU6MS44NzVyZW0gIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjAyICFpbXBvcnRhbnQ7fQogIC5ibGstZ2M3YWogLmxlYWQtdGl0bGUtZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay1nYzdhaiAubGVhZC10aXRsZS1tb2JpbGV7ZGlzcGxheTppbmxpbmUgIWltcG9ydGFudDt9CiAgLmJsay1nYzdhaiAubGVhZC1raWNrZXItZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay1nYzdhaiAubGVhZC1raWNrZXItbW9iaWxle2Rpc3BsYXk6aW5saW5lICFpbXBvcnRhbnQ7fQogIC5ibGstZ2M3YWogLmxlYWQtc3VidGl0bGUtZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay1nYzdhaiAubGVhZC1zdWJ0aXRsZS1tb2JpbGV7ZGlzcGxheTppbmxpbmUgIWltcG9ydGFudDt9CiAgLmJsay1nYzdhaiAubGVhZC1hbmltLWhlYWRsaW5lc3tmb250LXNpemU6MS44NzVyZW0gIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjAyICFpbXBvcnRhbnQ7fQogIAogIC5ibGstZ2M3YWogLnJlbGF0ZWQtdGl0bGUtZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay1nYzdhaiAucmVsYXRlZC10aXRsZS1tb2JpbGV7ZGlzcGxheTppbmxpbmUgIWltcG9ydGFudDt9Cn0KLmJsay1nYzdhaiAubGVhZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiNmZmY7b3ZlcmZsb3c6aGlkZGVuO2lzb2xhdGlvbjppc29sYXRlO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO30KLmJsay1nYzdhaiAubGVhZC1tZWRpYXtwb3NpdGlvbjpyZWxhdGl2ZTthc3BlY3QtcmF0aW86MTYvOTtiYWNrZ3JvdW5kOiMwMDA7b3ZlcmZsb3c6aGlkZGVufQovKiBNZWRpYSBtZWRpYW50ZSBpZnJhbWU6IGFsdG8gZmlqbyBlbiBw7XhlbGVzIGVuIHZleiBkZSBsYSBwcm9wb3JjafNuIGRlCiAgIGFycmliYSAodmVyIGNvbWVudGFyaW8gZGV0YWxsYWRvIGp1bnRvIGEgc3RhdGUubGVhZC5pZnJhbWVIZWlnaHQpICYjODIxMjsgZWwKICAgdmFsb3IgZGUgTfN2aWwgc2Ugc29icmVzY3JpYmUgZW4gZWwgQGNvbnRhaW5lciBkZSBt4XMgYWJham8sIGlndWFsIHF1ZSBlbAogICByZXN0byBkZSBvdmVycmlkZXMgcmVzcG9uc2l2ZSBkZSBlc3RlIEhUTUwgZXhwb3J0YWRvLiAqLwouYmxrLWdjN2FqIC5sZWFkLW1lZGlhLmlzLWlmcmFtZXthc3BlY3QtcmF0aW86bm9uZTtibG9jay1zaXplOjY0MHB4O30KLmJsay1nYzdhaiAubGVhZC1tZWRpYSBpbWcsCi5ibGstZ2M3YWogLmxlYWQtbWVkaWEgdmlkZW97cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtvYmplY3QtZml0OmNvdmVyfQovKiBDYXJydXNlbCBkZSBmb3RvcyBkZSBmb25kbyBjb24gZWZlY3RvIEtlbiBCdXJucyAmIzgyMTI7IHZlciBlbCBtaXNtbyBibG9xdWUsCiAgIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLgogICBMYSBkdXJhY2nzbiBkZSBsYXMgYW5pbWFjaW9uZXMgKDZzKSBjb2luY2lkZSBjb24KICAgTEVBRF9DQVJPVVNFTF9JTlRFUlZBTCwgcXVlIHRhbWJp6W4gZ29iaWVybmEgZWwgc2NyaXB0IGRlIHJvdGFjafNuCiAgIChidWlsZExlYWRDYXJvdXNlbFNjcmlwdCkgYfFhZGlkbyBhbCBmaW5hbCBkZWwgSFRNTCBleHBvcnRhZG8uICovCi5ibGstZ2M3YWogLmxlYWQtY2Fyb3VzZWx7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtvdmVyZmxvdzpoaWRkZW47fQouYmxrLWdjN2FqIC5sZWFkLWNhcm91c2VsLXNsaWRle3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAxLjVzIGVhc2U7fQouYmxrLWdjN2FqIC5sZWFkLWNhcm91c2VsLXNsaWRlLmlzLWFjdGl2ZXtvcGFjaXR5OjE7ei1pbmRleDoxO30KLmJsay1nYzdhaiAubGVhZC1jYXJvdXNlbC1zbGlkZSBpbWd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtvYmplY3QtZml0OmNvdmVyO30KLmJsay1nYzdhaiAubGVhZC1jYXJvdXNlbC1zbGlkZTpudGgtY2hpbGQob2RkKSBpbWd7YW5pbWF0aW9uOmJsay1nYzdhai1rZW5idXJucy1hIDZzIGVhc2UtaW4tb3V0IGZvcndhcmRzO30KLmJsay1nYzdhaiAubGVhZC1jYXJvdXNlbC1zbGlkZTpudGgtY2hpbGQoZXZlbikgaW1ne2FuaW1hdGlvbjpibGstZ2M3YWota2VuYnVybnMtYiA2cyBlYXNlLWluLW91dCBmb3J3YXJkczt9CkBrZXlmcmFtZXMgYmxrLWdjN2FqLWtlbmJ1cm5zLWF7IGZyb217dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZSgwLDApO30gdG97dHJhbnNmb3JtOnNjYWxlKDEuMTUpIHRyYW5zbGF0ZSgtNCUsLTMlKTt9IH0KQGtleWZyYW1lcyBibGstZ2M3YWota2VuYnVybnMtYnsgZnJvbXt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlKDAsMCk7fSB0b3t0cmFuc2Zvcm06c2NhbGUoMS4xNSkgdHJhbnNsYXRlKDQlLDMlKTt9IH0KLyogQ29uIHVuYSD6bmljYSBmb3RvIChzaW4gcm90YWNp824gcG9zaWJsZSkgc2UgYXBsaWNhIHVuIHpvb20gaW4vb3V0IGVuCiAgIGJ1Y2xlIGluZmluaXRvIGVuIHZleiBkZWwgcmVjb3JyaWRvIPpuaWNvIChmb3J3YXJkcykgZGUgYXJyaWJhLiAqLwouYmxrLWdjN2FqIC5sZWFkLWNhcm91c2VsLmlzLXNpbmdsZSAubGVhZC1jYXJvdXNlbC1zbGlkZSBpbWd7YW5pbWF0aW9uOmJsay1nYzdhai1rZW5idXJucy1sb29wIDE0cyBlYXNlLWluLW91dCBpbmZpbml0ZTt9CkBrZXlmcmFtZXMgYmxrLWdjN2FqLWtlbmJ1cm5zLWxvb3B7IDAle3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGUoMCwwKTt9IDUwJXt0cmFuc2Zvcm06c2NhbGUoMS4xNSkgdHJhbnNsYXRlKC00JSwtMyUpO30gMTAwJXt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlKDAsMCk7fSB9Ci8qIENvbXBhcmFkb3IgYW50ZXMvZGVzcHXpcyAoZGVzbGl6YWRvcikgJiM4MjEyOyB2ZXIgZWwgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4KICAgZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay1nYzdhaiAubGVhZC1jb21wYXJle3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7b3ZlcmZsb3c6aGlkZGVuO2lzb2xhdGlvbjppc29sYXRlO3RvdWNoLWFjdGlvbjpub25lO3otaW5kZXg6Mjt9Ci5ibGstZ2M3YWogLmxlYWQtY29tcGFyZSBpbWd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtvYmplY3QtZml0OmNvdmVyO29iamVjdC1wb3NpdGlvbjpjZW50ZXI7ZGlzcGxheTpibG9jazt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1kcmFnOm5vbmU7cG9pbnRlci1ldmVudHM6bm9uZTt9Ci5ibGstZ2M3YWogLmxlYWQtY29tcGFyZS1iZWZvcmV7Y2xpcC1wYXRoOmluc2V0KDAgNTAlIDAgMCk7d2lsbC1jaGFuZ2U6Y2xpcC1wYXRoO30KLmJsay1nYzdhaiAubGVhZC1jb21wYXJlLXJhbmdle3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7bWFyZ2luOjA7b3BhY2l0eTowO2N1cnNvcjpldy1yZXNpemU7fQouYmxrLWdjN2FqIC5sZWFkLWNvbXBhcmUtaGFuZGxle3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6NTAlO2lubGluZS1zaXplOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7cG9pbnRlci1ldmVudHM6bm9uZTt6LWluZGV4OjI7fQouYmxrLWdjN2FqIC5sZWFkLWNvbXBhcmUtaGFuZGxlOjpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7aW5saW5lLXNpemU6MnB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuOSk7Ym94LXNoYWRvdzowIDAgMCAxcHggcmdiYSgwLDAsMCwuMjUpO30KLmJsay1nYzdhaiAubGVhZC1jb21wYXJlLWhhbmRsZTo6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6LTE1cHg7aW5saW5lLXNpemU6MzBweDtibG9jay1zaXplOjMwcHg7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojZmZmIHVybCgiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScyMCcgaGVpZ2h0PScyMCcgdmlld0JveD0nMCAwIDIwIDIwJz48ZyBmaWxsPSdub25lJyBzdHJva2U9JyUyMzAwMCcgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnPjxwYXRoIGQ9J004IDYgTDQgMTAgTDggMTQnLz48cGF0aCBkPSdNMTIgNiBMMTYgMTAgTDEyIDE0Jy8+PC9nPjwvc3ZnPiIpIGNlbnRlci8xNnB4IDE2cHggbm8tcmVwZWF0O2JveC1zaGFkb3c6MCAycHggNnB4IHJnYmEoMCwwLDAsLjI1KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjI1KTt9Ci8qIE1lZGlhIG1lZGlhbnRlIGlmcmFtZSAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiBNaXNtbyB6LWluZGV4OjIgcXVlCiAgIC5sZWFkLWNvbXBhcmUsIHBvciBlbCBtaXNtbyBtb3Rpdm8gKGdhbmFybGUgYSAubGVhZC1saW5rKS4gKi8KLmJsay1nYzdhaiAubGVhZC1pZnJhbWV7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtvdmVyZmxvdzpoaWRkZW47aXNvbGF0aW9uOmlzb2xhdGU7ei1pbmRleDoyO30KLmJsay1nYzdhaiAubGVhZC1pZnJhbWUgaWZyYW1le3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7Ym9yZGVyOjA7ZGlzcGxheTpibG9jazt9Ci5ibGstZ2M3YWogLmxlYWQtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3otaW5kZXg6MTtwb2ludGVyLWV2ZW50czpub25lO30KLmJsay1nYzdhaiAubGVhZC1ib2R5e3BhZGRpbmc6MHB4IDIwcHggMjBweCAyMHB4OztkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4OyB0ZXh0LWFsaWduOmNlbnRlcjsgYWxpZ24taXRlbXM6Y2VudGVyOyBwb3NpdGlvbjpyZWxhdGl2ZTsgei1pbmRleDo2OyBwb2ludGVyLWV2ZW50czpub25lOyBpbmxpbmUtc2l6ZTo5NSU7IG1hcmdpbi1sZWZ0OmF1dG87IG1hcmdpbi1yaWdodDphdXRvOyBtYXJnaW4tdG9wOi0zMHB4OyBiYWNrZ3JvdW5kOiMwRTExMUE7IGZsZXg6MSAxIGF1dG87fQovKiBBbnRldO10dWxvL3RpdHVsYXIvc3VidO10dWxvL2F1dG9yIGNlbnRyYWRvcyBlbiB2ZXJ0aWNhbCBkZW50cm8gZGVsIGFsdG8KICAgc29icmFudGUgYmFqbyBsYSBjYXRlZ29y7WEgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEKICAgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbC4gKi8KLmJsay1nYzdhaiAubGVhZC1ib2R5LW1haW57ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtpbmxpbmUtc2l6ZToxMDAlO2ZsZXg6MSAxIGF1dG87bWluLWhlaWdodDowO30KLyogQXBhcmllbmNpYSBuZWdhdGl2YSAocG9yIGRlZmVjdG8pIHZzLiBwb3NpdGl2YSBkZSBsYSBjYWphIGRlIHRpdHVsYXIgJiM4MjEyOyB2ZXIKICAgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbC4gKi8KLmJsay1nYzdhaiAubGVhZC5pcy1hcHBlYXJhbmNlLXBvc2l0aXZlIC5sZWFkLWJvZHl7YmFja2dyb3VuZDojZmZmO2JvcmRlcjoxcHggc29saWQgI2U3ZWJlZTt9Ci5ibGstZ2M3YWogLmxlYWQuaXMtYXBwZWFyYW5jZS1wb3NpdGl2ZSAubGVhZC10aXRsZSwKLmJsay1nYzdhaiAubGVhZC5pcy1hcHBlYXJhbmNlLXBvc2l0aXZlIC5hdXRob3ItbGFiZWx7Y29sb3I6IzBFMTExQTt9Ci8qIFBvc2ljafNuIGRlbCBsZWFkLWJvZHkgcmVzcGVjdG8gYWwgbGVhZC1tZWRpYSAoJ2xlZnQnLydyaWdodCcpICYjODIxMjsgdmVyIG1pc21vCiAgIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwuICovCi5ibGstZ2M3YWogLmxlYWQubGVhZC1ib2R5LWxlZnQsCi5ibGstZ2M3YWogLmxlYWQubGVhZC1ib2R5LXJpZ2h0e2ZsZXgtZGlyZWN0aW9uOnJvdzthc3BlY3QtcmF0aW86Mi45NjI5NjI5NjI5NjI5NjM7fQouYmxrLWdjN2FqIC5sZWFkLmxlYWQtYm9keS1sZWZ0e2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO30KLmJsay1nYzdhaiAubGVhZC5sZWFkLWJvZHktbGVmdCAubGVhZC1tZWRpYSwKLmJsay1nYzdhaiAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtbWVkaWF7ZmxleDowIDAgNjAlO30KLmJsay1nYzdhaiAubGVhZC5sZWFkLWJvZHktbGVmdCAubGVhZC1ib2R5LAouYmxrLWdjN2FqIC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1ib2R5e2ZsZXg6MCAwIGNhbGMoNDAlICsgMzBweCk7aW5saW5lLXNpemU6YXV0bzttYXJnaW4tdG9wOjA7YmxvY2stc2l6ZTpjYWxjKDEwMCUgLSA0MnB4KTthbGlnbi1zZWxmOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDt9Ci5ibGstZ2M3YWogLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYm9keXttYXJnaW4tbGVmdDowO21hcmdpbi1yaWdodDotMzBweDt9Ci5ibGstZ2M3YWogLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLWJvZHl7bWFyZ2luLWxlZnQ6LTMwcHg7bWFyZ2luLXJpZ2h0OjA7fQovKiBQb3NpY2nzbiAnYm90dG9tLWZ1bGwnIGRlbCBsZWFkLWJvZHkgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4KICAgZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gaW5saW5lLXNpemUKICAgZW4gdmV6IGRlIHdpZHRoIHBvciBlbCBtaXNtbyBtb3Rpdm8gcXVlIGVsIHJlc3RvIGRlIGVzdGUgYmxvcXVlIChldml0YXIKICAgbGEgcGFsYWJyYSAid2lkdGg6IiBxdWUgZWwgQ01TIGRlbCB1c3VhcmlvIGVsaW1pbmEgYWwgcGVnYXIgSFRNTC9DU1MKICAgZGlyZWN0YW1lbnRlKS4gKi8KLmJsay1nYzdhaiAubGVhZC5sZWFkLWJvZHktYm90dG9tLWZ1bGwgLmxlYWQtYm9keXsKICBpbmxpbmUtc2l6ZToxMDAlOwogIG1hcmdpbjowOwogIHBhZGRpbmctdG9wOjMwcHg7CiAgcGFkZGluZy1ib3R0b206MzBweDsKICBib3JkZXI6bm9uZTsKfQovKiBFdGlxdWV0YSBkZSBleGNsdXNpdmEgKG8gdGV4dG8gcGVyc29uYWxpemFkbykgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8KICAgZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay1nYzdhaiAubGVhZC1leGNsdXNpdmUtdGFne3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMHB4O2xlZnQ6MTBweDt6LWluZGV4OjM7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjJweDtsZXR0ZXItc3BhY2luZzowLjVweDtwYWRkaW5nOjJweCA4cHg7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZTouOGVtO2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojZmZmO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtwb2ludGVyLWV2ZW50czpub25lO30KLyogU2VsZWN0b3IgY29uIDMgY2xhc2VzICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhCiAgIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEgKCIubGVhZC1tZWRpYSBpbWciIHRhbWJp6W4KICAgbWF0Y2hlYSBlc3RlIDxpbWc+IHkgbGUgZ2FuYWJhIGVuIGVzcGVjaWZpY2lkYWQpLiAqLwouYmxrLWdjN2FqIC5sZWFkLWV4Y2x1c2l2ZS10YWcgLmxlYWQtZXhjbHVzaXZlLXRhZy1pY29ue3Bvc2l0aW9uOnN0YXRpYztpbnNldDphdXRvO2lubGluZS1zaXplOjE0cHg7YmxvY2stc2l6ZToxNHB4O29iamVjdC1maXQ6Y29udGFpbjtmbGV4OjAgMCBhdXRvO2Rpc3BsYXk6YmxvY2s7fQouYmxrLWdjN2FqIC5sZWFkLWNhdHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6OTAwO3BhZGRpbmc6MnB4IDhweDt0cmFuc2Zvcm06c2tld1koLTZkZWcpO21hcmdpbi10b3A6LTE1cHg7bWFyZ2luLWJvdHRvbToxMHB4O30KLmJsay1nYzdhaiAubGVhZC1raWNrZXIsIC5ibGstZ2M3YWogLmxlYWQtc3VidGl0bGV7CiAgZm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO3RleHQtdHJhbnNmb3JtOm5vbmU7bWFyZ2luOjA7Cn0KLmJsay1nYzdhaiAubGVhZC1raWNrZXJ7Zm9udC13ZWlnaHQ6NzAwO30KLmJsay1nYzdhaiAubGVhZC1zdWJ0aXRsZXtmb250LXdlaWdodDo2MDA7fQovKiBUYW1h8W8vaW50ZXJsaW5lYWRvL2NvbG9yIGRlIGFudGV07XR1bG8geSBzdWJ07XR1bG8gZW4gRGVzayAodmFsb3JlcyBwb3IKICAgZGVmZWN0byBkZWwgYmxvcXVlOyBlbCBvdmVycmlkZSBkZSBN83ZpbCB2YSBlbiBlbCBAY29udGFpbmVyIGRlIG3hcyBhYmFqbywKICAgeWEgcXVlIGVsIEhUTUwgZXhwb3J0YWRvIGVzIHJlc3BvbnNpdmUgeSBubyBkZXBlbmRlIGRlIHF16SB2aXN0YSB0dXZpZXJhcwogICBzZWxlY2Npb25hZGEgZW4gZWwgZ2VzdG9yIGFsIGV4cG9ydGFyL2NvcGlhcikuICovCi5ibGstZ2M3YWogLmxlYWQta2lja2Vye2ZvbnQtc2l6ZToxLjMxMjVyZW07bGluZS1oZWlnaHQ6MS4xO2NvbG9yOiMwMEE3RkY7fQouYmxrLWdjN2FqIC5sZWFkLXN1YnRpdGxle2ZvbnQtc2l6ZToxLjMxMjVyZW07bGluZS1oZWlnaHQ6MS4xO2NvbG9yOiMwMEE3RkY7fQovKiB0ZXh0LXdyYXA6YmFsYW5jZSAmIzgyMTI7IG1pc21vIGNyaXRlcmlvIHF1ZSBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsCiAgIGRlbCBnZXN0b3IgKHZlciBjb21lbnRhcmlvIGRldGFsbGFkbyBqdW50byBhIGVzYSByZWdsYSk6IHJlcGFydGUgbGFzCiAgIGztbmVhcyBkZWwgdGl0dWxhciBkZSBmb3JtYSBt4XMgdW5pZm9ybWUgZGVudHJvIGRlIGNhZGEgZGlzcG9zaXRpdm8sIHNpbgogICBwcmV0ZW5kZXIgaWd1YWxhciBlbCBu+m1lcm8gZGUgbO1uZWFzIGVudHJlIHBsYXRhZm9ybWFzIGRpc3RpbnRhcy4gKi8KLmJsay1nYzdhaiAubGVhZC10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6OTAwO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6MS4wMjttYXJnaW46MDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlO3RleHQtd3JhcDpiYWxhbmNlO30KLyogVGl0dWxhciBjb24gc2FsdG9zIGRlIGztbmVhIGluZGVwZW5kaWVudGVzIHBvciB2aXN0YSAodmVyIGJ1aWxkU2NvcGVkSFRNTCk6CiAgIHNlIGdlbmVyYW4gbG9zIGRvcyB0ZXh0b3MgKERlc2svTfN2aWwpIHkgYXF17SBzZSBtdWVzdHJhIHNvbG8gdW5vIHNlZ/puIGVsCiAgIGFuY2hvIHJlYWwgZGVsIGNvbnRlbmVkb3IgJiM4MjEyOyBlbCBtaXNtbyBtZWNhbmlzbW8gZGUgQGNvbnRhaW5lciBxdWUgeWEgdXNhIGVsCiAgIHJlc3RvIGRlbCBIVE1MIGV4cG9ydGFkbyBwYXJhIGFkYXB0YXJzZSBzaW4gZGVwZW5kZXIgZGUgSlMuICovCi5ibGstZ2M3YWogLmxlYWQtdGl0bGUtbW9iaWxle2Rpc3BsYXk6bm9uZTt9Ci8qIEFudGV07XR1bG8vc3VidO10dWxvIGNvbiBzYWx0b3MgZGUgbO1uZWEgaW5kZXBlbmRpZW50ZXMgcG9yIHZpc3RhOiBtaXNtbwogICBtZWNhbmlzbW8gZGUgQGNvbnRhaW5lciBxdWUgZWwgdGl0dWxhciAodmVyIGFycmliYSkuICovCi5ibGstZ2M3YWogLmxlYWQta2lja2VyLW1vYmlsZSwgLmJsay1nYzdhaiAubGVhZC1zdWJ0aXRsZS1tb2JpbGV7ZGlzcGxheTpub25lO30KLyogVGl0dWxhciBkZSBub3RpY2lhIHJlbGFjaW9uYWRhIChjb2x1bW5hKSBjb24gdGV4dG8gcHJvcGlvIGVuIE3zdmlsICh2ZXIKICAgaXRlbS50aXRsZU1vYmlsZSBlbiBidWlsZENvbHVtbkl0ZW1UaXRsZUhUTUwpOiBtaXNtbyBtZWNhbmlzbW8gZGUKICAgQGNvbnRhaW5lciBxdWUgZWwgdGl0dWxhciBwcmluY2lwYWwgZGUgYXJyaWJhLiAqLwouYmxrLWdjN2FqIC5yZWxhdGVkLXRpdGxlLW1vYmlsZXtkaXNwbGF5Om5vbmU7fQouYmxrLWdjN2FqIC5hdXRob3ItbGFiZWx7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2NvbG9yOiNmZmY7Zm9udC13ZWlnaHQ6MjAwO2ZvbnQtc2l6ZTouOGVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt0ZXh0LWFsaWduOnJpZ2h0O2Rpc3BsYXk6YmxvY2t9Ci5ibGstZ2M3YWogLmNvbHVtbntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4O2p1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjt9Ci5ibGstZ2M3YWogLmNvbHVtbi1pdGVte2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyOjFweCBzb2xpZCAjZTdlYmVlO3BhZGRpbmc6MTBweDtiYWNrZ3JvdW5kOiNmZmY7YmxvY2stc2l6ZTpzdHJldGNoO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTt9Ci5ibGstZ2M3YWogLnRodW1ie3Bvc2l0aW9uOnJlbGF0aXZlO2lubGluZS1zaXplOjEwMCU7YXNwZWN0LXJhdGlvOjQvMztiYWNrZ3JvdW5kOiNlZWU7b3ZlcmZsb3c6aGlkZGVufQouYmxrLWdjN2FqIC50aHVtYiBpbWcsCi5ibGstZ2M3YWogLnRodW1iIHZpZGVve3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn0KLmJsay1nYzdhaiAudGh1bWIgLnBsYXktc3F1YXJlLAouYmxrLWdjN2FqIC5tZWRpYS1ibG9jay13cmFwIC5wbGF5LXNxdWFyZXsKICBwb3NpdGlvbjphYnNvbHV0ZTsgYm90dG9tOjVweDsgbGVmdDo1cHg7CiAgaW5saW5lLXNpemU6MjVweDtibG9jay1zaXplOjI1cHg7Ym9yZGVyLXJhZGl1czoycHg7ZGlzcGxheTppbmxpbmUtZ3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7CiAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNik7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMTgpOwogIGN1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzLCB0cmFuc2Zvcm0gLjEyczsKICB6LWluZGV4OjI7IGFuaW1hdGlvbjpibGstZ2M3YWotYmxpbmsgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7Cn0KLmJsay1nYzdhaiAudGh1bWIgLnBsYXktc3F1YXJlOjpiZWZvcmUsCi5ibGstZ2M3YWogLm1lZGlhLWJsb2NrLXdyYXAgLnBsYXktc3F1YXJlOjpiZWZvcmV7CiAgY29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2lubGluZS1zaXplOjA7YmxvY2stc2l6ZTowOwogIGJvcmRlci1sZWZ0OjZweCBzb2xpZCAjZmZmO2JvcmRlci10b3A6NXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206NXB4IHNvbGlkIHRyYW5zcGFyZW50OwogIG1hcmdpbi1sZWZ0OjJweDsKfQouYmxrLWdjN2FqIC50aHVtYiAucGxheS1zcXVhcmU6aG92ZXIsCi5ibGstZ2M3YWogLm1lZGlhLWJsb2NrLXdyYXAgLnBsYXktc3F1YXJlOmhvdmVyeyBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC44NSk7IHRyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpOyB9Ci5ibGstZ2M3YWogLnN0YWNrLXRpdGxle2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOjE3cHg7bGluZS1oZWlnaHQ6MS4xNWVtO21hcmdpbjowO2NvbG9yOiMyYzNlNTM7fQouYmxrLWdjN2FqIC5zdGFjay1hdXRob3J7Zm9udC1mYW1pbHk6ImFtcGxpdHVkZS1ib29rIixzYW5zLXNlcmlmO2NvbG9yOiM4Mjg1OTU7Zm9udC13ZWlnaHQ6MjAwO2ZvbnQtc2l6ZTouOHJlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOjExcHg7bGV0dGVyLXNwYWNpbmc6MDt0ZXh0LWFsaWduOnJpZ2h0O30KLyogU2luIGVzdGEgcmVnbGEgZWwgYXV0b3IgcXVlZGEgcGVnYWRvIGp1c3RvIGRlYmFqbyBkZWwgdGl0dWxhciBlbiB2ZXogZGUKICAgYWJham8gZGUgbGEgdGFyamV0YTogLm1vZC1zdGFjayBuZWNlc2l0YSBzZXIgZmxleC1jb2x1bW4gY29uCiAgIGp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuIHBhcmEgcXVlIGVsIGh1ZWNvIHNvYnJhbnRlIChjdWFuZG8gbGEKICAgdGFyamV0YSBjcmVjZSBt4XMgcXVlIHN1IGNvbnRlbmlkbywgdmVyIC5jb2x1bW4taXRlbTpub3QoLmxheW91dC1tZWRpYS1ibG9jaykKICAgbeFzIGFiYWpvKSBlbXB1amUgZWwgYXV0b3IgaGFjaWEgZWwgYm9yZGUgaW5mZXJpb3IuICovCi5ibGstZ2M3YWogLm1vZC1zdGFja3tkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2ZsZXg6MSAxIGF1dG87fQovKiBFc3RpbG8gImZvdG8gcGVxdWXxYSArIHRpdHVsYXIiOiBmb3RvIDQ6MyBhIGxhIGl6cXVpZXJkYSwgdGV4dG8gYSBsYSBkZXJlY2hhLiAqLwouYmxrLWdjN2FqIC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tbGVmdHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjExMHB4IDFmcjtnYXA6MTBweDt9Ci8qIEVzdGlsbyAic29sbyB0ZXh0byIgKHBvciBkZWZlY3RvKTogZWwgYXV0b3Igc2UgcG9zaWNpb25hIGVuIGFic29sdXRvLAogICBhbmNsYWRvIGEgbGEgZXNxdWluYSBpbmZlcmlvciBkZXJlY2hhIGRlIGxhIHRhcmpldGEgKGlndWFsIHF1ZSBlbCBwbGF5IGRlCiAgIGxhcyBtaW5pYXR1cmFzKSwgZW4gdmV6IGRlIGRlcGVuZGVyIGRlIHF1ZSBlbCBibG9xdWUgZGUgdGV4dG8gdGVuZ2EgaHVlY28KICAgZGUgc29icmEgcGFyYSBlbXB1amFybG8gYWJham8gY29uIGZsZXhib3ggJiM4MjEyOyBjb24gdO10dWxvcyBkZSAyLTMgbO1uZWFzIGVzZQogICBodWVjbyBubyBleGlzdGUgeSBlbCBhdXRvciBudW5jYSBsbGVnYWJhIGEgYmFqYXIuIHBhZGRpbmctYm90dG9tIGVuCiAgIGxlZnQtYm9keSByZXNlcnZhIGVsIGVzcGFjaW8gcGFyYSBxdWUgZWwgdO10dWxvIG5vIHNlIHNvbGFwZSBjb24g6WwuICovCi5ibGstZ2M3YWogLmNvbHVtbi1pdGVtLmxheW91dC10aXRsZS1vbmx5IC5sZWZ0LWJvZHl7cGFkZGluZy1ib3R0b206MzNweDt9Ci5ibGstZ2M3YWogLmNvbHVtbi1pdGVtLmxheW91dC10aXRsZS1vbmx5IC5zdGFjay1hdXRob3J7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MTBweDtib3R0b206MTBweDttYXJnaW4tdG9wOjA7fQouYmxrLWdjN2FqIC5sZWZ0LXRpdGxle2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOjIxcHg7bGluZS1oZWlnaHQ6MS4xNTtjb2xvcjojMmMzZTUzO21hcmdpbjowO3RleHQtYWxpZ246bGVmdDt9Ci5ibGstZ2M3YWogLmxlZnQtcGxheXsKICBmbGV4OjAgMCBhdXRvO2lubGluZS1zaXplOjE1cHg7YmxvY2stc2l6ZToxNXB4O2JvcmRlci1yYWRpdXM6MnB4OwogIGJhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICMwMGE3ZmY7CiAgZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjA7CiAgdmVydGljYWwtYWxpZ246bWlkZGxlO21hcmdpbi1yaWdodDo2cHg7bWFyZ2luLWJvdHRvbTogNHB4Owp9Ci5ibGstZ2M3YWogLmxlZnQtcGxheTo6YmVmb3JlewogIGNvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztpbmxpbmUtc2l6ZTowO2Jsb2NrLXNpemU6MDsKICBib3JkZXItbGVmdDo0cHggc29saWQgIzAwYTdmZjtib3JkZXItdG9wOjNweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjNweCBzb2xpZCB0cmFuc3BhcmVudDttYXJnaW4tbGVmdDoxcHg7Cn0KLmJsay1nYzdhaiAucmVsYXRlZC1saXZlLXRhZ3sKICBkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtmbGV4OjAgMCBhdXRvOwogIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7CiAgZm9udC1zaXplOi43cmVtO2xpbmUtaGVpZ2h0OjAuODtsZXR0ZXItc3BhY2luZzouM3B4O2NvbG9yOiNGRjUwNTA7CiAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNGRjUwNTA7CiAgcGFkZGluZzozcHggNHB4IDJweCA0cHg7bWFyZ2luLXJpZ2h0OjZweDttYXJnaW4tYm90dG9tOjRweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7CiAgd2hpdGUtc3BhY2U6bm93cmFwOwp9Ci5ibGstZ2M3YWogLnJlbGF0ZWQtZWRpdG9yaWFsLXRhZ3sKICBkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtmbGV4OjAgMCBhdXRvOwogIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7CiAgZm9udC1zaXplOi43cmVtO2xpbmUtaGVpZ2h0OjAuODtsZXR0ZXItc3BhY2luZzouM3B4O2NvbG9yOiNGQUIxMjE7CiAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNGQUIxMjE7CiAgcGFkZGluZzozcHggNHB4IDJweCA0cHg7bWFyZ2luLXJpZ2h0OjZweDttYXJnaW4tYm90dG9tOjRweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7CiAgd2hpdGUtc3BhY2U6bm93cmFwOwp9Ci5ibGstZ2M3YWogLnBsYXktYnV0dG9uewogIC8qIEFuY2hvL2FsdG8gZmlqb3MgZW4gdmV6IGRlIGFzcGVjdC1yYXRpbzoxLzEgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8KICAgICBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhIChlbAogICAgIGPhbGN1bG8gZGUgInNocmluay10by1maXQiIHBhcmEgdW4gPGJ1dHRvbj4gZW4gYWJzb2x1dG8gc2luIHRhbWHxbwogICAgIGV4cGztY2l0byBubyBlcyBmaWFibGUgZW50cmUgbW90b3JlczsgZW4gV2ViS2l0L2lPUyBkYWJhIHVuIHJlY3Thbmd1bG8KICAgICB2ZXJ0aWNhbCBlc3RyZWNo7XNpbW8gZW4gdmV6IGRlIHVuIGN1YWRyYWRvKS4gKi8KICBhcHBlYXJhbmNlOm5vbmU7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7LW1vei1hcHBlYXJhbmNlOm5vbmU7CiAgcG9zaXRpb246YWJzb2x1dGU7dG9wOjEwcHg7bGVmdDoxMHB4OwogIGlubGluZS1zaXplOjM0cHg7YmxvY2stc2l6ZTozNHB4OwogIGRpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjEwcHggMTBweCAxMHB4IDEycHg7CiAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC43KTsKICBib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjQyKTtjb2xvcjojZmZmO2JvcmRlci1yYWRpdXM6M3B4OwogIGN1cnNvcjpwb2ludGVyO3otaW5kZXg6MjthbmltYXRpb246YmxrLWdjN2FqLWJsaW5rIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlOwp9Ci5ibGstZ2M3YWogLnBsYXktYnV0dG9uLnBvcy10b3AtcmlnaHR7dG9wOjEwcHg7cmlnaHQ6MTBweDtsZWZ0OmF1dG87Ym90dG9tOmF1dG87fQouYmxrLWdjN2FqIC5wbGF5LWJ1dHRvbi5wb3MtYm90dG9tLWxlZnR7Ym90dG9tOjEwcHg7bGVmdDoxMHB4O3RvcDphdXRvO3JpZ2h0OmF1dG87fQouYmxrLWdjN2FqIC5wbGF5LWJ1dHRvbi5wb3MtYm90dG9tLXJpZ2h0e2JvdHRvbToxMHB4O3JpZ2h0OjEwcHg7dG9wOmF1dG87bGVmdDphdXRvO30KLyogQ29uIGVsIHRleHRvIChsZWFkLWJvZHkpIGEgbGEgaXpxdWllcmRhIG8gbGEgZGVyZWNoYSwgZXNlIGJsb3F1ZSBzb2xhcGEKICAgMzBweCBkZWwgbGFkbyBkZSBsYSBmb3RvL3btZGVvIHBlZ2FkbyBhIOlsICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvCiAgIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstZ2M3YWogLmxlYWQubGVhZC1ib2R5LWxlZnQgLnBsYXktYnV0dG9uLnBvcy10b3AtbGVmdCwKLmJsay1nYzdhaiAubGVhZC5sZWFkLWJvZHktbGVmdCAucGxheS1idXR0b24ucG9zLWJvdHRvbS1sZWZ0eyBsZWZ0OjQwcHg7IH0KLmJsay1nYzdhaiAubGVhZC5sZWFkLWJvZHktcmlnaHQgLnBsYXktYnV0dG9uLnBvcy10b3AtcmlnaHQsCi5ibGstZ2M3YWogLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5wbGF5LWJ1dHRvbi5wb3MtYm90dG9tLXJpZ2h0eyByaWdodDo0MHB4OyB9Ci8qIFBvc2ljafNuICdib3R0b20nIHBvciBkZWZlY3RvOiBlbCBsZWFkLWJvZHkgc29sYXBhIDMwcHggc29icmUgZWwgYm9yZGUKICAgSU5GRVJJT1IgZGUgbGEgZm90by927WRlbyAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiBObyBhcGxpY2EgY29uICdib3R0b20tZnVsbCcKICAgbmkgY29uICdsZWZ0Jy8ncmlnaHQnIChhanVzdGUgaG9yaXpvbnRhbCBwcm9waW8sIHZlciBhcnJpYmEpLiAqLwouYmxrLWdjN2FqIC5sZWFkOm5vdCgubGVhZC1ib2R5LWxlZnQpOm5vdCgubGVhZC1ib2R5LXJpZ2h0KTpub3QoLmxlYWQtYm9keS1ib3R0b20tZnVsbCkgLnBsYXktYnV0dG9uLnBvcy1ib3R0b20tbGVmdCwKLmJsay1nYzdhaiAubGVhZDpub3QoLmxlYWQtYm9keS1sZWZ0KTpub3QoLmxlYWQtYm9keS1yaWdodCk6bm90KC5sZWFkLWJvZHktYm90dG9tLWZ1bGwpIC5wbGF5LWJ1dHRvbi5wb3MtYm90dG9tLXJpZ2h0eyBib3R0b206NDBweDsgfQouYmxrLWdjN2FqIC5wbGF5LWJ1dHRvbiAucGxheS1pY29uewogIGlubGluZS1zaXplOjA7YmxvY2stc2l6ZTowOwogIGJvcmRlci1sZWZ0OjEwcHggc29saWQgI2ZmZjtib3JkZXItdG9wOjZweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjZweCBzb2xpZCB0cmFuc3BhcmVudDsKfQouYmxrLWdjN2FqIC5wbGF5LWJ1dHRvbiAucGxheS10ZXh0e2Rpc3BsYXk6bm9uZTt9CgovKiBUaXR1bGFyZXMgYW5pbWFkb3MgKGNhcGEgYWx0ZXJuYXRpdmEgc29icmUgbGVhZC1tZWRpYSkgJiM4MjEyOyB2ZXIgbWlzbW8KICAgYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYQogICBoZXJyYW1pZW50YS4gQ2FkYSB0aXR1bGFyIHRpZW5lIHN1IHByb3BpYSBwb3NpY2nzbiAoY2xhc2UgcG9zLSosIHZlcgogICBidWlsZFNjb3BlZEhUTUwpIHkgc2UgcmV2ZWxhIGztbmVhIHBvciBs7W5lYSAodW5hIHZleiBtZWRpZGFzIHN1cyBs7W5lYXMKICAgcmVhbGVzIHBvciBlbCBzY3JpcHQgc3RhbmRhbG9uZSwgdmVyIGJ1aWxkQW5pbUhlYWRsaW5lc1NjcmlwdCkgY29uIHVuYQogICBjYWphIGRlIGZvbmRvIGRldHLhcyBkZSBjYWRhIGztbmVhIHkgdW4gZmFkZSBkZSBvcGFjaWRhZCBlbnRyZSB0aXR1bGFyZXMuICovCi5ibGstZ2M3YWogLmxlYWQtYW5pbS1oZWFkbGluZXN7CiAgcG9zaXRpb246YWJzb2x1dGU7CiAgaW5zZXQ6MDsKICB6LWluZGV4OjQ7CiAgcG9pbnRlci1ldmVudHM6bm9uZTsKfQouYmxrLWdjN2FqIC5sZWFkLWFuaW0taGVhZGxpbmV7CiAgcG9zaXRpb246YWJzb2x1dGU7CiAgbGVmdDoxNXB4OwogIG9wYWNpdHk6MDsKfQouYmxrLWdjN2FqIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1sZWZ0eyBib3R0b206NjBweDsgfQouYmxrLWdjN2FqIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLXRvcC1sZWZ0eyB0b3A6NjBweDsgfQouYmxrLWdjN2FqIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1sZWZ0eyB0b3A6NTAlOyB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsgfQouYmxrLWdjN2FqIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLXRvcC1yaWdodCwKLmJsay1nYzdhaiAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1taWRkbGUtcmlnaHQsCi5ibGstZ2M3YWogLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtYm90dG9tLXJpZ2h0eyBsZWZ0OmF1dG87IHJpZ2h0OjE1cHg7IH0KLmJsay1nYzdhaiAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtcmlnaHR7IHRvcDo2MHB4OyB9Ci5ibGstZ2M3YWogLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtbWlkZGxlLXJpZ2h0eyB0b3A6NTAlOyB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsgfQouYmxrLWdjN2FqIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1yaWdodHsgYm90dG9tOjYwcHg7IH0KLyogQ29uIGVsIHRleHRvIChsZWFkLWJvZHkpIGEgbGEgaXpxdWllcmRhIG8gbGEgZGVyZWNoYSwgZXNlIGJsb3F1ZSBzb2xhcGEKICAgMzBweCBkZWwgbGFkbyBkZSBsYSBmb3RvL3btZGVvIHBlZ2FkbyBhIOlsICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvCiAgIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstZ2M3YWogLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtdG9wLWxlZnQsCi5ibGstZ2M3YWogLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtbWlkZGxlLWxlZnQsCi5ibGstZ2M3YWogLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtYm90dG9tLWxlZnR7IGxlZnQ6NDBweDsgfQouYmxrLWdjN2FqIC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtcmlnaHQsCi5ibGstZ2M3YWogLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1yaWdodCwKLmJsay1nYzdhaiAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtYm90dG9tLXJpZ2h0eyByaWdodDo0MHB4OyB9Ci5ibGstZ2M3YWogLmxlYWQtYW5pbS1oZWFkbGluZS5pcy1hY3RpdmV7IG9wYWNpdHk6MTsgfQouYmxrLWdjN2FqIC5sZWFkLWFuaW0tbGluZXsKICBwb3NpdGlvbjpyZWxhdGl2ZTsKICBkaXNwbGF5OnRhYmxlOwogIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjsKICBmb250LXdlaWdodDo5MDA7CiAgY29sb3I6I2ZmZjsKICBwYWRkaW5nOjJweCA4cHg7CiAgY2xpcC1wYXRoOmluc2V0KDAgMTAwJSAwIDApOwogIG9wYWNpdHk6MTsKICB0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBlYXNlOwp9Ci5ibGstZ2M3YWogLmxlYWQtYW5pbS1saW5lLmlzLWhpZGluZ3sgb3BhY2l0eTowOyB9Ci8qIFNvbGFwZSBkZSAxcHggZW50ZXJhIGVudHJlIGztbmVhcyBwYXJhIGNlcnJhciBlbCBoaWxvIGRlIHN1Yi1w7XhlbCBxdWUKICAgcHVlZGUgcXVlZGFyIGVudHJlIHN1cyBjYWphcyBkZSBmb25kbyAocmVkb25kZW8gZGUgYWx0dXJhcyBmcmFjY2lvbmFyaWFzKSAmIzgyMTI7CiAgIHZlciBtaXNtbyBjb21lbnRhcmlvLCBkZXRhbGxhZG8sIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwuICovCi5ibGstZ2M3YWogLmxlYWQtYW5pbS1saW5lICsgLmxlYWQtYW5pbS1saW5lewogIG1hcmdpbi10b3A6LTFweDsKfQouYmxrLWdjN2FqIC5sZWFkLWFuaW0tbGluZTpmaXJzdC1jaGlsZHsgcGFkZGluZy10b3A6NnB4OyB9Ci5ibGstZ2M3YWogLmxlYWQtYW5pbS1saW5lOmxhc3QtY2hpbGR7IHBhZGRpbmctYm90dG9tOjZweDsgfQouYmxrLWdjN2FqIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLXRvcC1yaWdodCAubGVhZC1hbmltLWxpbmUsCi5ibGstZ2M3YWogLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtbWlkZGxlLXJpZ2h0IC5sZWFkLWFuaW0tbGluZSwKLmJsay1nYzdhaiAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1ib3R0b20tcmlnaHQgLmxlYWQtYW5pbS1saW5leyBtYXJnaW4tbGVmdDphdXRvOyBtYXJnaW4tcmlnaHQ6MDsgfQouYmxrLWdjN2FqIC5sZWFkLWFuaW0taGVhZGxpbmVzLmlzLXBvc2l0aXZlIC5sZWFkLWFuaW0tbGluZXsgY29sb3I6IzBFMTExQTsgfQouYmxrLWdjN2FqIC5sZWFkLWFuaW0tbGluZS1iZ3sgcG9zaXRpb246YWJzb2x1dGU7IGluc2V0OjA7IHotaW5kZXg6LTE7IH0KLmJsay1nYzdhaiAubGVhZC1hbmltLWxpbmUtdGV4dHsgcG9zaXRpb246cmVsYXRpdmU7IH0KQGtleWZyYW1lcyBibGstZ2M3YWotYW5pbS1saW5lLXJldmVhbHsgdG97IGNsaXAtcGF0aDppbnNldCgwIDAgMCAwKTsgfSB9CgovKiBBbmNob3Igb3ZlcmxheSBmb3IgZnVsbCBjbGlja2FibGUgbGVhZCAqLwouYmxrLWdjN2FqIC5sZWFkLWxpbmt7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt6LWluZGV4OjF9CgovKiBIb3ZlciBvcGFjaXR5IGFuaW1hdGlvbiAqLwouYmxrLWdjN2FqIC5sZWFkOmhvdmVyIC5sZWFkLXRpdGxlLAouYmxrLWdjN2FqIC5jb2x1bW4taXRlbTpob3ZlcntvcGFjaXR5Oi44fQovKiBGb3RvIHByaW5jaXBhbCAoZmFsbGJhY2svc2luZ2xlKSBvIGNhcnJ1c2VsIGRlIGZvdG9zOiBvcGFjaWRhZCAwLjkgYWwKICAgcGFzYXIgZWwgcmF0824gcG9yIGxhIHRhcmpldGEgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4KICAgbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gTm8gYXBsaWNhIGEgdu1kZW8gbmkgYWwKICAgY29tcGFyYWRvciBhbnRlcy9kZXNwdelzLiAqLwouYmxrLWdjN2FqIC5sZWFkLW1lZGlhID4gaW1nLAouYmxrLWdjN2FqIC5sZWFkLW1lZGlhID4gLmxlYWQtY2Fyb3VzZWx7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlO30KLmJsay1nYzdhaiAubGVhZDpob3ZlciAubGVhZC1tZWRpYSA+IGltZywKLmJsay1nYzdhaiAubGVhZDpob3ZlciAubGVhZC1tZWRpYSA+IC5sZWFkLWNhcm91c2Vse29wYWNpdHk6Ljk7fQovKiBFbiBlbCBhbmNobyBt83ZpbCAobWlzbW8gQGNvbnRhaW5lciBxdWUgZWwgcmVzdG8gZGVsIEhUTUwgZXhwb3J0YWRvKSBubwogICBhcGxpY2EgZXN0YSBhbmltYWNp824gZGUgb3BhY2lkYWQgc29icmUgbGEgbm90aWNpYSBwcmluY2lwYWw6IHZhIERFU1BVyVMKICAgZGUgbGEgcmVnbGEgZ2VuZXJhbCBkZSBhcnJpYmEgKG1pc21hIGVzcGVjaWZpY2lkYWQpIHBhcmEgcG9kZXIgZ2FuYXJsZS4KICAgT21pdGlkbywgaWd1YWwgcXVlIGVsIGJsb3F1ZSBkZSB0aXBvZ3JhZu1hIGRlIGFycmliYSwgbWllbnRyYXMgbGEKICAgc2ltdWxhY2nzbiBkZSBhbmNobyBlc3TpIGFjdGl2YSAodmVyIGxlYWRXaWR0aFByZXZpZXcpLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6ODYwcHgpewogIC5ibGstZ2M3YWogLmxlYWQ6aG92ZXIgLmxlYWQtdGl0bGUsCiAgLmJsay1nYzdhaiAubGVhZDpob3ZlciAubGVhZC1tZWRpYSA+IGltZywKICAuYmxrLWdjN2FqIC5sZWFkOmhvdmVyIC5sZWFkLW1lZGlhID4gLmxlYWQtY2Fyb3VzZWx7b3BhY2l0eToxO30KfQoKLyogQW5pbWFjafNuIGNvbXBhcnRpZGEgcGxheSBwcmluY2lwYWwgKyBjdWFkcmFkb3MgcGxheSBhcGlsYWRhcyAqLwpAa2V5ZnJhbWVzIGJsay1nYzdhai1ibGlua3sKICAwJSwxMDAle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjcpfQogIDUwJXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwxNjUsMjU1LDAuOSl9Cn0KLyogQ2FiZWNlcmEgKi8KLmJsay1nYzdhaiAuYmctc2VjdGlvbi10aXRsZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbjoxMHB4IDAgMzJweH0KLmJsay1nYzdhaiAuZm5kLWxpbmVhe2lubGluZS1zaXplOjEwMCU7YmxvY2stc2l6ZTo1cHg7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTttYXJnaW4tdG9wOi0xOHB4O2JvcmRlci10b3A6MXB4IHNvbGlkICMzMzM7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzMzM30KLmJsay1nYzdhaiAuc2VjdGlvbi10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6OTAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW46MDtsaW5lLWhlaWdodDoxLjI7bGV0dGVyLXNwYWNpbmc6LTFweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7YmFja2dyb3VuZDojZmZmO3BhZGRpbmc6NHB4IDEzcHg7Ym9yZGVyOjFweCBzb2xpZCAjMEUxMTFBO3RyYW5zZm9ybTpyb3RhdGVYKDVkZWcpIHJvdGF0ZVkoLTI1ZGVnKSBza2V3WCgwZGVnKTtmb250LXNpemU6NDJweDtjb2xvcjojMEUxMTFBO30KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjg2MHB4KXsuYmxrLWdjN2FqIC5zZWN0aW9uLXRpdGxle2ZvbnQtc2l6ZToyN3B4O3BhZGRpbmc6MCAxMHB4fX0KLyogQ2FiZWNlcmEgJiM4MjEyOyBEaXNl8W8gMiAodGl0dWxhciArIGNhcnJ1c2VsIGRlIGxvZ290aXBvcykgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLAogICBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay1nYzdhaiAuaGVhZGVyMntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoyMHB4O3BhZGRpbmctYm90dG9tOjVweDttYXJnaW4tYm90dG9tOjEwcHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzBFMTExQTt9Ci8qIGFsaWduLXNlbGY6ZmxleC1lbmQgZmlqYSBlbCB0aXR1bGFyIFNJRU1QUkUgYSAxNXB4IGRlIGxhIGztbmVhIHNlcGFyYWRvcmEKICAgZW4gRGVzayAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MKICAgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLWdjN2FqIC5oZWFkZXIyLWxlZnR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtmbGV4OjEgMSA1MCU7bWluLWlubGluZS1zaXplOjA7YWxpZ24tc2VsZjpmbGV4LWVuZDt9Ci5ibGstZ2M3YWogLmhlYWRlcjItdGFnc3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7ZmxleDowIDAgYXV0bzt9Ci8qIE1pc21vIHRhbWHxby90aXBvZ3JhZu1hIHF1ZSAubGVhZC1leGNsdXNpdmUtdGFnIChsYSBkZSBsYSBub3RpY2lhCiAgIHByaW5jaXBhbCkgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZQogICBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay1nYzdhaiAuaGVhZGVyMi1jYXQtdGFnLAouYmxrLWdjN2FqIC5oZWFkZXIyLWV4Y2x1c2l2ZS10YWd7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjcwMDtmb250LXNpemU6LjhlbTtsZXR0ZXItc3BhY2luZzouNXB4O3BhZGRpbmc6MnB4IDhweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7d2hpdGUtc3BhY2U6bm93cmFwO2NvbG9yOiNmZmY7fQouYmxrLWdjN2FqIC5oZWFkZXIyLWV4Y2x1c2l2ZS10YWctaWNvbntwb3NpdGlvbjpzdGF0aWM7aW5zZXQ6YXV0bztpbmxpbmUtc2l6ZToxNHB4O2Jsb2NrLXNpemU6MTRweDtvYmplY3QtZml0OmNvbnRhaW47ZmxleDowIDAgYXV0bztkaXNwbGF5OmJsb2NrO30KLmJsay1nYzdhaiAuaGVhZGVyMi10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6OTAwO2ZvbnQtc2l6ZTozNnB4O2xpbmUtaGVpZ2h0OjEuMDU7Y29sb3I6IzBFMTExQTttYXJnaW46MDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bWluLWlubGluZS1zaXplOjA7b3ZlcmZsb3ctd3JhcDpicmVhay13b3JkO30KLyogU2VwYXJhY2nzbiBkZSAxMHB4IGVudHJlIGVsIHRleHRvIGRlIHBhdHJvY2luaW8geSBlbCBsb2dvIGVuIERlc2sgJiM4MjEyOyBlbgogICBN83ZpbCBzaWd1ZSBzaW4gc2VwYXJhY2nzbiAoZ2FwOjAsIHZlciBAY29udGFpbmVyIG3hcyBhYmFqbykuICovCi5ibGstZ2M3YWogLmhlYWRlcjItbG9nb3Mtd3JhcHtmbGV4OjAgMCBhdXRvO21heC1pbmxpbmUtc2l6ZTo1MCU7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7fQovKiBFdGlxdWV0YSBvcGNpb25hbCBqdW50byBhbCBjYXJydXNlbCBkZSBsb2dvcyAocC5lai4gIlBhdHJvY2luYWRvIHBvcjoiKSAmIzgyMTI7CiAgIHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsCiAgIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLWdjN2FqIC5oZWFkZXIyLWxvZ29zLWxhYmVse2ZvbnQtZmFtaWx5OkFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMHB4O2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojNjY3O3doaXRlLXNwYWNlOm5vd3JhcDt9Ci5ibGstZ2M3YWogLmhlYWRlcjItbG9nb3N7cG9zaXRpb246cmVsYXRpdmU7aW5saW5lLXNpemU6MTYwcHg7YmxvY2stc2l6ZTo1MHB4O2ZsZXgtc2hyaW5rOjA7fQouYmxrLWdjN2FqIC5oZWFkZXIyLWxvZ29zIGltZ3twb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO21hcmdpbjphdXRvO21heC1pbmxpbmUtc2l6ZToxMDAlO21heC1ibG9jay1zaXplOjEwMCU7b2JqZWN0LWZpdDpjb250YWluO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjdzIGVhc2UtaW4tb3V0O30KLmJsay1nYzdhaiAuaGVhZGVyMi1sb2dvcyBpbWcuaXMtYWN0aXZle29wYWNpdHk6MTt9Ci8qIElndWFsIHF1ZSBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsOiBwb3IgZGViYWpvIGRlIGVzdGUgYW5jaG8gc2UKICAgaW50ZW50YSBwcmltZXJvIDEgU09MQSBGSUxBIChldGlxdWV0YXMrdGl0dWxhciBqdW50byBhbCBsb2dvLCBpZ3VhbCBxdWUKICAgZW4gRGVzaywgYSB0YW1h8W8gcmVkdWNpZG8pLiBFbCBibG9xdWUgZGUgbG9nb3MgbWFudGllbmUgU0lFTVBSRSBzdQogICBkaXNwb3NpY2nzbiBlbiBjb2x1bW5hIChldGlxdWV0YSBkZSBwYXRyb2NpbmlvIGVuY2ltYSBkZWwgbG9nbywKICAgYWxpbmVhZG9zIGEgbGEgZGVyZWNoYSwgc2luIHNlcGFyYWNp824pIHRhbnRvIGVuIGVzdGEgZmlsYSD6bmljYSBjb21vIGVuCiAgIGVsIHJlc2d1YXJkbyBkZSBhYmFqby4gU2kgZWwgdGl0dWxhciwgc3VtYWRvIGFsIGFuY2hvIGRlIGxhcyBldGlxdWV0YXMKICAgYWN0aXZhcyAoY2F0ZWdvcu1hIHkvbyBleGNsdXNpdmEsIHNpIGxhcyBoYXkpLCBzdXBlcmEgZWwgNTUlIGRlbCBhbmNobwogICB0b3RhbCBkZSBsYSBjYWJlY2VyYSAoY2FkYSB1bm8gbWVkaWRvIGEgdW5hIHNvbGEgbO1uZWEpLCBlbCBzY3JpcHQKICAgc3RhbmRhbG9uZSBh8WFkaWRvIGFsIGZpbmFsIGRlIGVzdGUgSFRNTCAodmVyCiAgIGJ1aWxkSGVhZGVyMlN0YWNraW5nU2NyaXB0KCkpIGxvIGRldGVjdGEgbWlkaWVuZG8gc3UgYW5jaG8gbmF0dXJhbAogICB5IGHxYWRlIGxhIGNsYXNlICJoZWFkZXIyLXN0YWNrZWQiOiBlbCBibG9xdWUgZGUKICAgbG9nb3Mgc3ViZSBlbnRvbmNlcyBhIHN1IHByb3BpYSBmaWxhIChhbGluZWFkbyBhIGxhIGRlcmVjaGEpIHkKICAgdGl0dWxhcitldGlxdWV0YXMgYmFqYW4gYSBsYSBmaWxhIGRlIGFiYWpvLCBhIGFuY2hvIGNvbXBsZXRvICYjODIxMjsgbWlzbW8KICAgbGF5b3V0IGRlIDIgZmlsYXMgcXVlIGhhYu1hIGFudGVzIHNpZW1wcmUgcG9yIGRlYmFqbyBkZSBlc3RlIGJyZWFrcG9pbnQsCiAgIGFob3JhIHNvbG8gY29tbyByZXNndWFyZG8uIERlbnRybyBkZSBlc2UgcmVzZ3VhcmRvLCBjb24gZXRpcXVldGEocykgZWwKICAgdGl0dWxhciBwYXNhIGFkZW3hcyBhIHN1IFBST1BJQSBmaWxhIGEgYW5jaG8gY29tcGxldG8sIGRlYmFqbyBkZSBsYSBmaWxhIGRlIGV0aXF1ZXRhcyAodmVyCiAgICIuaGVhZGVyMi1zdGFja2VkIC5oZWFkZXIyLWxlZnQiIG3hcyBhYmFqbykuIEVsIGxvZ28gc2UgcmVkdWNlIHVuIDIwJQogICAoMTYweDUwICYjODU5NDsgMTI4eDQwKS4KICAgYWxpZ24tc2VsZjpmbGV4LWVuZCBlbiBoZWFkZXIyLWxlZnQgZmlqYSBlbCB0aXR1bGFyIFNJRU1QUkUgYSBsb3MgMTBweAogICBkZWwgcGFkZGluZy1ib3R0b20gcmVzcGVjdG8gYSBsYSBs7W5lYSBzZXBhcmFkb3JhICYjODIxMjsgbWlzbW8gY3JpdGVyaW8gcXVlCiAgIGVuIERlc2sgKHZlciBoZWFkZXIyLWxlZnQgbeFzIGFycmliYSk6IHNpbiBlc3RvLCBhbCBzZXIgZWwgYmxvcXVlIGRlCiAgIGxvZ29zIG3hcyBhbHRvIHF1ZSBlbCB0aXR1bGFyLCBlbCBjZW50cmFkbyB2ZXJ0aWNhbCBkZWwgcm93IGRlamFiYSB1bgogICBodWVjbyBtYXlvciBlbnRyZSBlbCB0aXR1bGFyIHkgbGEgbO1uZWEuIEVsIGJsb3F1ZSBkZSBsb2dvcyBzaWd1ZQogICBjZW50cmFkbyAoc2luIGVzZSBvdmVycmlkZSkuICovCkBjb250YWluZXIgKG1heC1pbmxpbmUtc2l6ZTo0ODBweCl7CiAgLmJsay1nYzdhaiAuaGVhZGVyMntmbGV4LWRpcmVjdGlvbjpyb3c7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O3BhZGRpbmctbGVmdDoxMHB4O3BhZGRpbmctcmlnaHQ6MTBweDtwYWRkaW5nLWJvdHRvbToxMHB4O30KICAuYmxrLWdjN2FqIC5oZWFkZXIyLWxlZnR7b3JkZXI6MTthbGlnbi1zZWxmOmZsZXgtZW5kO30KICAuYmxrLWdjN2FqIC5oZWFkZXIyLWxvZ29zLXdyYXB7b3JkZXI6MjthbGlnbi1zZWxmOmNlbnRlcjttYXgtaW5saW5lLXNpemU6bm9uZTtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1lbmQ7Z2FwOjA7fQogIC5ibGstZ2M3YWogLmhlYWRlcjItbG9nb3N7aW5saW5lLXNpemU6MTI4cHg7YmxvY2stc2l6ZTo0MHB4O30KICAuYmxrLWdjN2FqIC5oZWFkZXIyLXRpdGxle2ZvbnQtc2l6ZToyN3B4O30KICAuYmxrLWdjN2FqIC5oZWFkZXIyLmhlYWRlcjItc3RhY2tlZHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1zdGFydDt9CiAgLmJsay1nYzdhaiAuaGVhZGVyMi5oZWFkZXIyLXN0YWNrZWQgLmhlYWRlcjItbGVmdHtvcmRlcjoyO2FsaWduLXNlbGY6ZmxleC1zdGFydDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6c3RyZXRjaDtnYXA6NXB4O30KICAuYmxrLWdjN2FqIC5oZWFkZXIyLmhlYWRlcjItc3RhY2tlZCAuaGVhZGVyMi1sb2dvcy13cmFwe29yZGVyOjE7bWF4LWlubGluZS1zaXplOjEwMCU7YWxpZ24tc2VsZjpmbGV4LWVuZDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1lbmQ7Z2FwOjA7fQogIC8qIFJlc2d1YXJkbyBpbnRlcm1lZGlvICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhCiAgICAgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YTogc29sbyBlbCB0aXR1bGFyIGJhamEgYSBzdQogICAgIHByb3BpYSBmaWxhIGEgYW5jaG8gY29tcGxldG8gY3VhbmRvIGxhcyBldGlxdWV0YXMgU80gY2FiZW4ganVudG8gYWwKICAgICBsb2dvIHBlcm8gZWwgdGl0dWxhciBuby4gaGVhZGVyMi1sZWZ0IHBhc2EgZGUgZmlsYSBhIGNvbHVtbmEKICAgICAoZXRpcXVldGFzIGFycmliYSwgdGl0dWxhciBkZWJham8pIHkgcmVjdXBlcmEgYWxpZ24tc2VsZjphdXRvIHBhcmEKICAgICBjZW50cmFyc2UgdmVydGljYWxtZW50ZSBjb250cmEgZWwgbG9nbyAoYWxpZ24tc2VsZjpjZW50ZXIgZGUgbGEgcmVnbGEKICAgICBiYXNlIGRlIC5oZWFkZXIyLWxvZ29zLXdyYXAsIGFycmliYSksIGlndWFsIHF1ZSBlbiBlbCByZXN0byBkZSBlc3RhZG9zLiAqLwogIC5ibGstZ2M3YWogLmhlYWRlcjIuaGVhZGVyMi10aXRsZS1iZWxvdyAuaGVhZGVyMi1sZWZ0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpzdHJldGNoO2FsaWduLXNlbGY6YXV0bztnYXA6NXB4O30KfQpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6ODYwcHgpewogIC5ibGstZ2M3YWogLmNvbHVtbntkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnI7Z2FwOjEwcHg7fQogIC5ibGstZ2M3YWogLmNvbHVtbi1pdGVtLmxheW91dC1waG90by1sZWZ0LAogIC5ibGstZ2M3YWogLmNvbHVtbi1pdGVtLm1vYi1ncmlkLXN0YW5kYWxvbmV7Z3JpZC1jb2x1bW46MSAvIC0xO30KICAvKiAhaW1wb3J0YW50OiBsYSBwcm9wb3JjafNuIHByb3BpYSBkZSBjYWRhIG5vdGljaWEgKHZlciBtZWRpYUFzcGVjdFJhdGlvKQogICAgIHNlIGFwbGljYSBjb21vIGVzdGlsbyBpbmxpbmUgc29icmUgZWwgcHJvcGlvIC50aHVtYiAmIzgyMTI7IHNpbiAhaW1wb3J0YW50CiAgICAgZXN0ZSByZXNndWFyZG8gZGVsIGdyaWQgZGUgMiBjb2x1bW5hcyBkZWphcu1hIGRlIHRlbmVyIGVmZWN0byBlbiBjdWFudG8KICAgICB1bmEgbm90aWNpYSB0cmFqZXJhIHVuYSBwcm9wb3JjafNuIGRpc3RpbnRhIGRlIDQ6MyAodmVyIG1pc21vIGNvbWVudGFyaW8sCiAgICAgZGV0YWxsYWRvLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhKS4gKi8KICAuYmxrLWdjN2FqIC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tdG9wOm5vdCgubW9iLWdyaWQtc3RhbmRhbG9uZSkgLnRodW1ie2FzcGVjdC1yYXRpbzo0LzMgIWltcG9ydGFudDt9CiAgLmJsay1nYzdhaiAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcDpub3QoLm1vYi1ncmlkLXN0YW5kYWxvbmUpIC5sZWZ0LXRpdGxle2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXNpemU6MThweDtsaW5lLWhlaWdodDoxLjJlbTt0ZXh0LXRyYW5zZm9ybTpub25lO2ZvbnQtd2VpZ2h0OjYwMDt9Cn0KLyogRXN0aWxvICJmb3RvIGdyYW5kZSArIHRpdHVsYXIiOiBmb3RvIDE2OjkgYXJyaWJhLCB0aXR1bGFyIGRlYmFqbyAmIzgyMTI7IGVsZWdpYmxlCiAgIHBvciBub3RpY2lhIGRlc2RlIGVsIGdlc3Rvci4gTm8gc2UgcmVzdHJpbmdlIGNvbiBAY29udGFpbmVyIHBvcnF1ZQogICAuY29sdW1uLWl0ZW0geWEgZXMgYmxvY2sgcG9yIGRlZmVjdG8gKGVsIHRodW1iIHkgZWwgdGV4dG8gc2UgYXBpbGFuIHNvbG9zCiAgIHNpbiBt4XMgYWp1c3RlKSwgYXPtIHF1ZSBlbCBkaXNl8W8gZnVuY2lvbmEgaWd1YWwgZGUgYmllbiBlbiBjdWFscXVpZXIKICAgYW5jaG8sIERlc2sgbyBN83ZpbC4gKi8KLmJsay1nYzdhaiAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO30KLmJsay1nYzdhaiAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcCAudGh1bWJ7aW5saW5lLXNpemU6MTAwJTthc3BlY3QtcmF0aW86MTYvOTttYXJnaW4tYm90dG9tOjEwcHg7fQouYmxrLWdjN2FqIC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tdG9wIC5sZWZ0LXRpdGxle2ZvbnQtZmFtaWx5OiJhbXBsaXR1ZGUtbWVkaXVtLWNvbmRlbnNlZCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuMmVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtmb250LXdlaWdodDo5MDA7fQovKiBFbiBN83ZpbCBlbCB0aXR1bGFyIGRlIGVzdGUgZGlzZfFvIHNlIG11ZXN0cmEgbeFzIGdyYW5kZSAoMS41cmVtIGVuIHZleiBkZQogICBsb3MgMS4ycmVtIGRlIERlc2spICYjODIxMjsgbWlzbWEgZXNwZWNpZmljaWRhZCAoMyBjbGFzZXMpIHF1ZSBsYSByZWdsYSBkZQogICBhcnJpYmE7IGFsIGlyIERFU1BVyVMgZW4gZWwgQ1NTIGdhbmEgcG9yIG9yZGVuIGRlIGNhc2NhZGEuIFNlIHVzYSBlbAogICBicmVha3BvaW50IGRlIDQ4MHB4IChlbCBkZSB0aXBvZ3JhZu1hIGVuIGVzdGEgYXBwLCBubyBlbCBkZSA4NjBweCBxdWUgYXF17QogICBzb2xvIGdvYmllcm5hIGVsIGFwaWxhZG8gZGUgY29sdW1uYXMpIHBhcmEgcXVlIGNvaW5jaWRhIGNvbiBlbCByZXN0byBkZQogICBjYW1iaW9zIGRlIHRleHRvL3RhbWHxbyBwb3IgdmlzdGEuIE5vIGFmZWN0YSBhbCByZXNndWFyZG8gZGUgMiBjb2x1bW5hcyBlbgogICBt83ZpbCAobW9iLWdyaWQpLCBt4XMgZXNwZWPtZmljbyAoMThweCwgdmVyIG3hcyBhcnJpYmEpLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6NDgwcHgpewogIC5ibGstZ2M3YWogLmNvbHVtbi1pdGVtLmxheW91dC1waG90by10b3AgLmxlZnQtdGl0bGV7Zm9udC1zaXplOjEuNXJlbTt9Cn0KLyogRXN0aWxvICJCbG9xdWUgbWVkaWEiICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhCiAgIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstZ2M3YWogLm1lZGlhLWJsb2NrLW1lZGlhe2Rpc3BsYXk6YmxvY2s7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOmF1dG87fQouYmxrLWdjN2FqIC5tZWRpYS1ibG9jay13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7fQouYmxrLWdjN2FqIC5tZWRpYS1ibG9jay1pZnJhbWUtd3JhcHtwb3NpdGlvbjpyZWxhdGl2ZTtpbmxpbmUtc2l6ZToxMDAlO2FzcGVjdC1yYXRpbzoxNi85O2JhY2tncm91bmQ6IzAwMDtvdmVyZmxvdzpoaWRkZW47fQouYmxrLWdjN2FqIC5tZWRpYS1ibG9jay1pZnJhbWUtd3JhcCBpZnJhbWV7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtib3JkZXI6MDtkaXNwbGF5OmJsb2NrO30KLmJsay1nYzdhaiAuY29sdW1uLWl0ZW0ubGF5b3V0LW1lZGlhLWJsb2Nre2JvcmRlcjpub25lO3BhZGRpbmc6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2Jsb2NrLXNpemU6YXV0bztmbGV4OjAgMCBhdXRvO30KLmJsay1nYzdhaiAuY29sdW1uLWl0ZW06bm90KC5sYXlvdXQtbWVkaWEtYmxvY2spe2ZsZXg6MSAxIGF1dG87fQo8L3N0eWxlPgoKPGRpdiBjbGFzcz0iYmxrLWdjN2FqIj4KICAKICA8bWFpbiBjbGFzcz0icGFnZSI+CiAgICAKICAgIDxhcnRpY2xlIGNsYXNzPSJsZWFkIj4KICAgICAgPGRpdiBjbGFzcz0ibGVhZC1tZWRpYSI+CiAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vb2tkaWFyaW8uY29tL2VzcGVjaWFsZXMvYXBwcy9tZWRpYS9tYXJpY2FybWVuLWVudmlvLXVuYS1jYXJ0YS1hLXNhbmNoZXotZWwtYW5vLXBhc2Fkby1waWRpZW5kb2xlLWF1eGlsaW8tYW50ZS1zdS1kZXNhaHVjaW8teS1lbC1wcmVzaWRlbnRlLW5vLWhpem8tbmFkYS0yMDI2MTAwOC0wNTMyMDAtZThlYTM3LmpwZyIgYWx0PSJNYXJpY2FybWVuIGVudmnzIHVuYSBjYXJ0YSBhIFPhbmNoZXogZWwgYfFvIHBhc2FkbyBwaWRp6W5kb2xlIGF1eGlsaW8gYW50ZSBzdSBkZXNhaHVjaW8geSBlbCBwcmVzaWRlbnRlIG5vIGhpem8gbmFkYSIgbG9hZGluZz0iZWFnZXIiIGZldGNocHJpb3JpdHk9ImhpZ2giIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgPGRpdiBjbGFzcz0ibGVhZC1vdmVybGF5IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDE0LDE3LDI2LDAuMDApOyI+PC9kaXY+CiAgICAgICAgCiAgICAgICAgPGJ1dHRvbiBjbGFzcz0icGxheS1idXR0b24gcG9zLXRvcC1sZWZ0IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGRpdiBjbGFzcz0icGxheS1pY29uIj48L2Rpdj48c3BhbiBjbGFzcz0icGxheS10ZXh0Ij5QbGF5PC9zcGFuPjwvYnV0dG9uPgogICAgICAgIAogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ibGVhZC1ib2R5IiBzdHlsZT0iYmFja2dyb3VuZDojMDBBN0ZGOyI+CiAgICAgICAgPHNwYW4gY2xhc3M9ImxlYWQtY2F0IiBzdHlsZT0iYmFja2dyb3VuZDojZmZmO2NvbG9yOiMwMEE3RkYiPkVTUEHRQTwvc3Bhbj4KICAgICAgICA8ZGl2IGNsYXNzPSJsZWFkLWJvZHktbWFpbiI+CiAgICAgICAgICAKICAgICAgICAgIDxoMiBjbGFzcz0ibGVhZC10aXRsZSI+PHNwYW4gY2xhc3M9ImxlYWQtdGl0bGUtZGVzayI+TWFyaWNhcm1lbiBlbnZp8yB1bmEgY2FydGEgYSBT4W5jaGV6IGVsIGHxbyBwYXNhZG8gcGlkaeluZG9sZSBhdXhpbGlvIGFudGUgc3UgZGVzYWh1Y2lvIHkgZWwgcHJlc2lkZW50ZSBubyBoaXpvIG5hZGE8L3NwYW4+PHNwYW4gY2xhc3M9ImxlYWQtdGl0bGUtbW9iaWxlIj5NYXJpY2FybWVuIGVudmnzIHVuYSBjYXJ0YSBhIFPhbmNoZXogZWwgYfFvIHBhc2FkbyBwaWRp6W5kb2xlIGF1eGlsaW8gYW50ZSBzdSBkZXNhaHVjaW8geSBlbCBwcmVzaWRlbnRlIG5vIGhpem8gbmFkYTwvc3Bhbj48L2gyPgogICAgICAgICAgCiAgICAgICAgICA8c3BhbiBjbGFzcz0iYXV0aG9yLWxhYmVsIj5MdXogU2VsYTwvc3Bhbj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIDxhIGNsYXNzPSJsZWFkLWxpbmsiIGhyZWY9Imh0dHBzOi8vb2tkaWFyaW8uY29tL2VzcGFuYS9tYXJpY2FybWVuLWVudmlvLWNhcnRhLXNhbmNoZXotYW5vLXBhc2Fkby1waWRpZW5kb2xlLWF1eGlsaW8tZGVzYWh1Y2lvLXByZXNpZGVudGUtbm8taGl6by1uYWRhLTIwNTA2NDI4IiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgdGl0bGU9Ik1hcmljYXJtZW4gZW52afMgdW5hIGNhcnRhIGEgU+FuY2hleiBlbCBh8W8gcGFzYWRvIHBpZGnpbmRvbGUgYXV4aWxpbyBhbnRlIHN1IGRlc2FodWNpbyB5IGVsIHByZXNpZGVudGUgbm8gaGl6byBuYWRhIiBhcmlhLWxhYmVsPSJNYXJpY2FybWVuIGVudmnzIHVuYSBjYXJ0YSBhIFPhbmNoZXogZWwgYfFvIHBhc2FkbyBwaWRp6W5kb2xlIGF1eGlsaW8gYW50ZSBzdSBkZXNhaHVjaW8geSBlbCBwcmVzaWRlbnRlIG5vIGhpem8gbmFkYSI+PC9hPgogICAgPC9hcnRpY2xlPgogIDwvbWFpbj4KPC9kaXY+Cgo8c2NyaXB0PgooZnVuY3Rpb24oKXsKICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5ibGstZ2M3YWogLmxlYWQnKTsKICBpZiAoIWFydGljbGUpIHJldHVybjsKICB2YXIgbWFpbiA9IGFydGljbGUucXVlcnlTZWxlY3RvcignLmxlYWQtYm9keS1tYWluJyk7CiAgdmFyIHRpdGxlRWwgPSBhcnRpY2xlLnF1ZXJ5U2VsZWN0b3IoJy5sZWFkLXRpdGxlJyk7CiAgaWYgKCFtYWluIHx8ICF0aXRsZUVsKSByZXR1cm47CiAgdmFyIGJhc2VGb250U2l6ZVB4ID0gcGFyc2VGbG9hdChnZXRDb21wdXRlZFN0eWxlKHRpdGxlRWwpLmZvbnRTaXplKSB8fCAwOwogIGlmICghYmFzZUZvbnRTaXplUHgpIHJldHVybjsKICB2YXIgTUFYX1NDQUxFID0gMS44OwogIHZhciBNSU5fU0NBTEUgPSAwLjU7CiAgdmFyIE1BWF9GT05UX1BYID0gNjQ7IC8vIH40cmVtIGNvbiBsYSBiYXNlIGhhYml0dWFsIGRlIDE2cHggKG1pc21vIHRvcGUgcXVlIGZpdExlYWRUaXRsZVRvQm94KCkgZW4gZWwgZ2VzdG9yKQogIHZhciBib2R5UG9zaXRpb25CbG9ja3NGaXQgPSBhcnRpY2xlLmNsYXNzTGlzdC5jb250YWlucygnbGVhZC1ib2R5LWxlZnQnKSB8fCBhcnRpY2xlLmNsYXNzTGlzdC5jb250YWlucygnbGVhZC1ib2R5LXJpZ2h0Jyk7CiAgZnVuY3Rpb24gZml0KCl7CiAgICBpZiAoYm9keVBvc2l0aW9uQmxvY2tzRml0KSByZXR1cm47CiAgICB0aXRsZUVsLnN0eWxlLmZvbnRTaXplID0gYmFzZUZvbnRTaXplUHggKyAncHgnOwogICAgdmFyIGF2YWlsYWJsZUhlaWdodCA9IG1haW4uY2xpZW50SGVpZ2h0OwogICAgaWYgKCFhdmFpbGFibGVIZWlnaHQpIHJldHVybjsKICAgIC8vIFZlciBtaXNtbyBjb21lbnRhcmlvLCBkZXRhbGxhZG8sIGVuIGZpdExlYWRUaXRsZVRvQm94KCkgZGVsIGdlc3RvcjoKICAgIC8vIG1haW4uc2Nyb2xsSGVpZ2h0IG51bmNhIGJhamEgZGUgY2xpZW50SGVpZ2h0IGF1bnF1ZSBlbCBjb250ZW5pZG8gcmVhbAogICAgLy8gb2N1cGUgbWVub3MsIGFz7SBxdWUgbm8gc2lydmUgcGFyYSBkZXRlY3RhciBjdeFudG8gc29icmEgbyBmYWx0YSBjb24KICAgIC8vIGVsIHRpdHVsYXIgYWN0dWFsICYjODIxMjsgc2Ugc3VtYSBlbiBzdSBsdWdhciBlbCBhbHRvIHJlYWwgZGUgY2FkYSBoaWpvCiAgICAvLyBWSVNJQkxFIGRlbCBibG9xdWUsIHNhbHZvIGVsIHByb3BpbyB0aXR1bGFyLCBt4XMgZWwgaHVlY28gKCJnYXAiKQogICAgLy8gZW50cmUgZWxsb3M7IG5vIGNhbWJpYSBjb24gZWwgdGFtYfFvIGRlbCB0aXR1bGFyLCBhc+0gcXVlIHNlIG1pZGUgdW5hCiAgICAvLyBzb2xhIHZleiwgYW50ZXMgZGUgbGEgYvpzcXVlZGEgYmluYXJpYS4KICAgIHZhciBnYXBQeCA9IHBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZShtYWluKS5yb3dHYXApIHx8IHBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZShtYWluKS5nYXApIHx8IDA7CiAgICB2YXIgdmlzaWJsZUNoaWxkcmVuID0gW10uc2xpY2UuY2FsbChtYWluLmNoaWxkcmVuKS5maWx0ZXIoZnVuY3Rpb24oYyl7IHJldHVybiBnZXRDb21wdXRlZFN0eWxlKGMpLmRpc3BsYXkgIT09ICdub25lJzsgfSk7CiAgICB2YXIgb3RoZXJzSGVpZ2h0ID0gdmlzaWJsZUNoaWxkcmVuLmZpbHRlcihmdW5jdGlvbihjKXsgcmV0dXJuIGMgIT09IHRpdGxlRWw7IH0pLnJlZHVjZShmdW5jdGlvbihzdW0sIGMpeyByZXR1cm4gc3VtICsgYy5vZmZzZXRIZWlnaHQ7IH0sIDApCiAgICAgICsgZ2FwUHggKiBNYXRoLm1heCgwLCB2aXNpYmxlQ2hpbGRyZW4ubGVuZ3RoIC0gMSk7CiAgICB2YXIgYXZhaWxhYmxlRm9yVGl0bGUgPSBNYXRoLm1heCgwLCBhdmFpbGFibGVIZWlnaHQgLSBvdGhlcnNIZWlnaHQpOwogICAgaWYgKCFhdmFpbGFibGVGb3JUaXRsZSkgcmV0dXJuOwogICAgZnVuY3Rpb24gaGVpZ2h0QXRTY2FsZShzY2FsZSl7CiAgICAgIHRpdGxlRWwuc3R5bGUuZm9udFNpemUgPSBNYXRoLm1pbihiYXNlRm9udFNpemVQeCAqIHNjYWxlLCBNQVhfRk9OVF9QWCkgKyAncHgnOwogICAgICByZXR1cm4gdGl0bGVFbC5vZmZzZXRIZWlnaHQ7CiAgICB9CiAgICB2YXIgbG8gPSBNSU5fU0NBTEUsIGhpID0gTUFYX1NDQUxFOwogICAgZm9yICh2YXIgaSA9IDA7IGkgPCA4OyBpKyspewogICAgICB2YXIgbWlkID0gKGxvICsgaGkpIC8gMjsKICAgICAgaWYgKGhlaWdodEF0U2NhbGUobWlkKSA8PSBhdmFpbGFibGVGb3JUaXRsZSkgbG8gPSBtaWQ7IGVsc2UgaGkgPSBtaWQ7CiAgICB9CiAgICBoZWlnaHRBdFNjYWxlKGxvKTsKICB9CiAgZml0KCk7CiAgaWYgKGRvY3VtZW50LmZvbnRzICYmIGRvY3VtZW50LmZvbnRzLnJlYWR5KXsgZG9jdW1lbnQuZm9udHMucmVhZHkudGhlbihmaXQpOyB9CiAgaWYgKHdpbmRvdy5SZXNpemVPYnNlcnZlcil7IG5ldyBSZXNpemVPYnNlcnZlcihmaXQpLm9ic2VydmUoYXJ0aWNsZSk7IH0KICBlbHNlIHsgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIGZpdCk7IH0KfSkoKTsKPC9zY3JpcHQ+
    • Maricarmen a Sánchez el 29 de noviembre de 2025: Cuando termine su mandato, yo querría seguir aquí
        • España
        • España

      Maricarmen a Sánchez el 29 de noviembre de 2025: "Cuando termine su mandato, yo querría seguir aquí"

      • Luz Sela
      • 2026-10-08 05:35
    • Inda: Sánchez va a hacer con Maricarmen lo mismo que Zapatero con el 11-M, bastardear una tragedia
        • Opinión
        • Opinión

      Indag "Sánchez va a hacer con Maricarmen lo mismo que Zapatero con el 11-M, bastardear una tragedia"

      • OKDIARIO
      • 2026-10-08 01:53
    • Manipularon su desahucio y manipularán su muerte
    • Maricarmen murió por agotamiento tras varios días sin comer
        • España
        • España

      Maricarmen murió por "agotamiento" tras varios días sin comer

      • Laura Fernández Cañas
      • 2026-10-07 22:28
    • Más Madrid avisa que no habrá paz en las calles tras la muerte de Maricarmen y Ayuso replica: ¿Nos están amenazando físicamente?
        • España
        • España

      Más Madrid avisa que "no habrá paz en las calles" tras la muerte de Maricarmen y Ayuso replica: "¿Nos están amenazando físicamente?"

      Manuela Bergerot, portavoz de Más Madrid en la Asamblea, ha amenazado a la presidenta de la Comunidad de Madrid, Isabel Díaz Ayuso, a la que ha advertido que "en las calles de Madrid no va a haber paz" tras la muerte de Maricarmen, la anciana desahuciada que falleció ayer en el hospital fruto del "agotamiento". 
      • Nacho Atanes
      • 2026-10-08 12:18
    • Anticorrupción ve indicios para imputar al PSOE por las cloacas aunque lo ve prematuro
        • España
        • España

      Anticorrupción ve indicios para imputar al PSOE por las cloacas aunque lo ve "prematuro"

      La Fiscalía Anticorrupción ha remitido un escrito al magistrado de la Audiencia Nacional Santiago Pedraz en el que se opone, por ahora, a la imputación del PSOE en el caso de las cloacas de Ferraz. El Ministerio Público aprecia indicios de tráfico de influencias y cohecho, pero considera que la petición llega antes de tiempo.
      • Fernán González
      • 2026-10-08 11:20
    • Ayuso: En 2023 medio millón de españoles se quedaron sin poder votar por correo, ¿nos vamos a fiar de un Gobierno mafioso?
        • España
        • España

      Ayuso: "En 2023 medio millón de españoles se quedaron sin poder votar por correo, ¿nos vamos a fiar de un Gobierno mafioso?"

      • Pablo Romero-Salazar
      • 2026-10-08 11:15
    • Última hora de la muerte de Maricarmen Abascal, en directo | Reacciones políticas, mensajes de condolencia y seguimiento desde la Puerta del Sol
        • España
        • España
      • EN DIRECTO

      El hermano de sánchez pide su absolución

      • Rafael Sánchez
      • 2026-10-08 09:01
    • La juez Biedma denuncia en la Audiencia Nacional la persecución de las cloacas del PSOE: Grabaron a mis hijas en el parque
        • España
        • España

      La juez Biedma denuncia en la Audiencia Nacional la persecución de las cloacas del PSOE: "Grabaron a mis hijas en el parque"

      La juez Beatriz Biedma, instructora de la causa contra David Sánchez, hermano del presidente del Gobierno, ha asegurado ante el magistrado de la Audiencia Nacional Santiago Pedraz que se ha sentido perseguida y que la cloaca le hizo seguimientos y grabó a sus hijas. Ha dicho que no tiene constancia de que Leire Díez esté detrás de esas grabaciones pero lo cierto es que la fontanera sí se reunió con el ex magistrado condenado Luis Sáenz de Tejada, cerebro de las operaciones.
      • Irene Tabera
      • 2026-10-08 12:17
    • PGlmcmFtZSBoZWlnaHQ9JzI1MHB4JyB3aWR0aD0nMTAwJScgICAgIHNyYz0iaHR0cHM6Ly9va2RpYXJpby5jb20vZXNwZWNpYWxlcy9hcHBzL2h0bWwvcGE1dmt4LWNhcnJ1c2VsLWRpcmVjdG9zLnBocD9tb2RlPWRlc2siICAgZnJhbWVib3JkZXI9IjAiIHNjcm9sbGluZz0ibm8iIHN0eWxlPSJib3JkZXI6MDtkaXNwbGF5OmJsb2NrO21heC0iPjwvaWZyYW1lPg==
      PGlmcmFtZSBoZWlnaHQ9JzY1MHB4JyB3aWR0aD0nMTAwJScgICBzcmM9Imh0dHBzOi8vb2tkaWFyaW8uY29tL2VzcGVjaWFsZXMvYXBwcy9odG1sL3BhNXZreC1jYXJydXNlbC1kaXJlY3Rvcy5waHA/bW9kZT1tb2JpbGUiICAgZnJhbWVib3JkZXI9IjAiIHNjcm9sbGluZz0ibm8iIHN0eWxlPSJib3JkZXI6MDtkaXNwbGF5OmJsb2NrO21heC0iPjwvaWZyYW1lPg==
    • El Gobierno vende 170 inmuebles repartidos por España en vez de incluirlos en Casa 47 para alquiler asequible
        • España
        • España

      El Gobierno vende 170 inmuebles repartidos por España en vez de incluirlos en Casa 47 para alquiler asequible

      • Alba Martín
      • 2026-10-08 05:45
    • El Gobierno gasta 1,7 millones en un teléfono para asesorar en vivienda: 85 € por consulta
        • España
        • España

      El Ejecutivo gasta 1,7 millones en un teléfono para "asesorar" en vivienda: 85 € por consulta

      • Pablo Romero-Salazar
      • 2026-10-08 05:51
    • Feijóo nombra a Tellado director de campaña para el 29-N con su jefa de Gabinete como adjunta
        • España
        • España

      Feijóo nombra a Tellado director de campaña para el 29-N con su jefa de Gabinete como adjunta

      • Segundo Sanz
      • 2026-10-08 08:37
    • Muere Xosé Manuel Beiras, histórico dirigente del BNG, a los 90 años
        • España
        • España

      Muere Xosé Manuel Beiras, histórico dirigente del BNG, a los 90 años

      • Rafael Sánchez
      • 2026-10-08 09:06
    • Sumar exige a Sánchez otro
        • España
        • España

      Sumar exige a Sánchez otro 'decretazo' para nacionalizar a 80.000 saharauis antes de las elecciones

      Los socios de Sumar han pedido a Pedro Sánchez que se saque de la manga un nuevo "decretazo" para pnacionalizar a los alrededor de 80.000 saharauis cuyo derecho se estaba tramitando en el momento en que el presidente del Gobierno disolvió las Cortes Generales. Los de Yolanda Díaz argumentan que, del mismo modo que la Diputación Permanente va a convalidar el decreto Maricarmen, puede legislar otras cuestiones como la de las nacionalizaciones de saharauis, que no han podido terminar su trámite parlamentario y, por tanto, no van a ver la luz.
      • Esther Jaén
      • 2026-10-08 05:41
    • PHN0eWxlPgogIEBpbXBvcnQgdXJsKCdodHRwczovL3VzZS50eXBla2l0Lm5ldC9pcWExcWViLmNzcycpOwoKICAuYmlsZHMteDhvOWpyZHl7IGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTsgfQogIC5iaWxkcy14OG85anJkeSAucGllY2UtZGVzaywKICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLW1vYntwb3NpdGlvbjpyZWxhdGl2ZTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZTllOWVjfQogIC5iaWxkcy14OG85anJkeSAucGllY2UtZGVza3sKICAgIHdpZHRoOjEwMCU7bWF4LXdpZHRoOjk2MHB4O2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6NDYwcHggMWZyO2dhcDoxMHB4O3BhZGRpbmc6MTBweDttaW4td2lkdGg6OTYwcHg7CiB9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNrIC5tZWRpYS13cmFwe3dpZHRoOjQ2MHB4fQogIC5iaWxkcy14OG85anJkeSAucGllY2UtZGVzayAubWVkaWEsCiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLm1lZGlhewogICAgcG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTthc3BlY3QtcmF0aW86MTYvOTtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDojMDAwO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtpc29sYXRpb246aXNvbGF0ZTsKICB9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNrIC5tZWRpYXt3aWR0aDo0NjBweDtoZWlnaHQ6MjYwcHh9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNrIGltZywgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNrIHZpZGVvLAogIC5iaWxkcy14OG85anJkeSAucGllY2UtbW9iIGltZywgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgdmlkZW97d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvYmplY3QtZml0OmluaGVyaXQ7ZGlzcGxheTpibG9ja30KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLW92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjUpO3otaW5kZXg6MTtwb2ludGVyLWV2ZW50czpub25lfQogIC5iaWxkcy14OG85anJkeSAucGl4ZWxhdGVkLW1lZGlhe2ltYWdlLXJlbmRlcmluZzpwaXhlbGF0ZWQ7aW1hZ2UtcmVuZGVyaW5nOmNyaXNwLWVkZ2VzfQogIC5iaWxkcy14OG85anJkeSAucGl4ZWwtcmlnaHQtd3JhcHtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3otaW5kZXg6MTtwb2ludGVyLWV2ZW50czpub25lO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5Om5vbmV9CiAgLmJpbGRzLXg4bzlqcmR5IC5waXhlbC1yaWdodC1oYWxme3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7d2lkdGg6NTAlO2hlaWdodDoxMDAlO292ZXJmbG93OmhpZGRlbn0KICAuYmlsZHMteDhvOWpyZHkgLnBpeGVsLXJpZ2h0LWhhbGYgaW1ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7d2lkdGg6MjAwJTtoZWlnaHQ6MTAwJTtvYmplY3QtZml0OmNvdmVyO29iamVjdC1wb3NpdGlvbjpyaWdodCBjZW50ZXI7ZGlzcGxheTpibG9jaztpbWFnZS1yZW5kZXJpbmc6cGl4ZWxhdGVkO2ltYWdlLXJlbmRlcmluZzpjcmlzcC1lZGdlc30KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLWRlc2sgLnRleHQsCiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmNvbnRlbnR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcn0KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLWRlc2sgLnRleHR7bWluLWhlaWdodDoyNjBweDtwYWRkaW5nOjAgMTBweH0KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLW1vYnt3aWR0aDoxMDAlO3BhZGRpbmc6MTBweDtkaXNwbGF5Om5vbmV9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmNvbnRlbnR7cGFkZGluZzoxNnB4IDEwcHggMTBweH0KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLWRlc2sgLmNhdGVnb3J5LAogIC5iaWxkcy14OG85anJkeSAucGllY2UtbW9iIC5jYXRlZ29yeXsKICAgIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo3MDA7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MTRweDtjb2xvcjojZmZmO2JhY2tncm91bmQ6dmFyKC0tY2F0KTtkaXNwbGF5OmlubGluZS1ibG9jaztwYWRkaW5nOjZweCAxMnB4IDVweDt3aWR0aDpmaXQtY29udGVudDt0cmFuc2Zvcm06c2tld1koLThkZWcpO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsKICB9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmNhdGVnb3J5IHsgbWFyZ2luLXRvcDotMzBweDsgfQogIC5iaWxkcy14OG85anJkeSAucGllY2UtZGVzayAuaGVhZGxpbmUsCiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmhlYWRsaW5le21hcmdpbjoyMHB4IDAgMDtjb2xvcjojMEUxMTFBO2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo5MDA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RleHQtYWxpZ246Y2VudGVyO3dvcmQtYnJlYWs6YnJlYWstd29yZH0KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLWRlc2sgLmhlYWRsaW5le2ZvbnQtc2l6ZTo0MnB4O2xpbmUtaGVpZ2h0OjQycHh9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmhlYWRsaW5le2ZvbnQtc2l6ZTozNHB4O2xpbmUtaGVpZ2h0OjM0cHh9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNrIC5kZXNjLAogIC5iaWxkcy14OG85anJkeSAucGllY2UtbW9iIC5kZXNje21hcmdpbjoxNXB4IDAgMDtjb2xvcjojMzgzQjQyO2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo0MDA7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MjdweDt0ZXh0LWFsaWduOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6MjtsaW5lLWNsYW1wOjI7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bWF4LXdpZHRoOjEwMCV9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNrIC5hdXRob3IsCiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmF1dGhvcnttYXJnaW4tdG9wOjIwcHg7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2NvbG9yOiMzODNCNDI7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0OjMwcHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RleHQtYWxpZ246Y2VudGVyO2Rpc3BsYXk6YmxvY2t9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmF1dGhvciB7bWFyZ2luLXRvcDogMjBweDt9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmJvdHRvbS1saW5le2Rpc3BsYXk6dXBwZXJjYXNlO30KICAuYmlsZHMteDhvOWpyZHkgLnBsYXktYnRue3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMHB4O2xlZnQ6MTBweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo4cHggMTRweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuNDIpO2NvbG9yOiNmZmY7Ym9yZGVyLXJhZGl1czo0cHg7Y3Vyc29yOnBvaW50ZXI7YW5pbWF0aW9uOmJpbGRzLXg4bzlqcmR5LWJsaW5rIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO3otaW5kZXg6Mn0KICAuYmlsZHMteDhvOWpyZHkgLnBsYXktYnRuIC5pY297d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXItbGVmdDoxMHB4IHNvbGlkICNmZmY7Ym9yZGVyLXRvcDo2cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQgdHJhbnNwYXJlbnR9CiAgLmJpbGRzLXg4bzlqcmR5IC5wbGF5LWJ0biAudHh0e2ZvbnQtd2VpZ2h0OjcwMH0KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLW1vYiAucGxheS1idG57bGVmdDphdXRvO3JpZ2h0OjEwcHg7cGFkZGluZzoxMHB4IDEwcHggMTBweCAxMnB4fQogIC5iaWxkcy14OG85anJkeSAucGllY2UtbW9iIC5wbGF5LWJ0biAudHh0e2Rpc3BsYXk6bm9uZX0KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLWxpbmt7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtkaXNwbGF5OmJsb2NrO29wYWNpdHk6MDt6LWluZGV4OjN9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNre29wYWNpdHk6MTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0fQogIC5iaWxkcy14OG85anJkeSAucGllY2UtZGVzazpob3ZlcntvcGFjaXR5Oi45fQogIEBrZXlmcmFtZXMgYmlsZHMteDhvOWpyZHktYmxpbmt7MCUsMTAwJXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpfTUwJXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwxNjUsMjU1LC45KX19CiAgQGNvbnRhaW5lciAobWF4LXdpZHRoOiA0NzlweCl7CiAgICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLWRlc2t7ZGlzcGxheTpub25lfQogICAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2J7ZGlzcGxheTpibG9ja30KICB9CiAgQHN1cHBvcnRzIG5vdCAoY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplKXsKICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCl7CiAgICAgIC5iaWxkcy14OG85anJkeSAucGllY2UtZGVza3tkaXNwbGF5Om5vbmV9CiAgICAgIC5iaWxkcy14OG85anJkeSAucGllY2UtbW9ie2Rpc3BsYXk6YmxvY2t9CiAgICB9CiAgfQogIDwvc3R5bGU+CjxzZWN0aW9uIGNsYXNzPSJiaWxkcy14OG85anJkeSIgc3R5bGU9Ii0tY2F0OiNGRkVBNEQ7IC0tY2F0LWJnOnJnYmEoMjU1LCAyMzQsIDc3LCAwLjIpIj4KICAgIDxhcnRpY2xlIGNsYXNzPSJwaWVjZS1kZXNrIiBpdGVtc2NvcGU9IiIgaXRlbXR5cGU9Imh0dHBzOi8vc2NoZW1hLm9yZy9OZXdzQXJ0aWNsZSI+CiAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEtd3JhcCI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSI+CiAgICAgICAgICAgIDxpbWcgZGVjb2Rpbmc9ImFzeW5jIiBhbHQ9IkxhIGNhbXBh8WEgcGVybWFuZW50ZSIgc3JjPSJodHRwczovL29rZGlhcmlvLmNvbS9pbWcvMjAyNi8xMC8wNy8wOC0xMC0yMDI2LXNhbmNoZXotZWxlY2Npb25lcy5qcGVnIiBsb2FkaW5nPSJsYXp5IiB3aWR0aD0iNDYwIiBpdGVtcHJvcD0iaW1hZ2UiPgogICAgICAgICAgICAKICAgICAgICAgICAgCiAgICAgICAgICAgIAogICAgICAgICAgICAKICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InRleHQiPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImNhdGVnb3J5IiBpdGVtcHJvcD0iYXJ0aWNsZVNlY3Rpb24iIHN0eWxlPSJjb2xvcjogcmdiKDE0LCAxNywgMjYpOyI+TEEgVknRRVRBIERFIFBVRUJMQTwvc3Bhbj4KICAgICAgICAgIDxoMiBjbGFzcz0iaGVhZGxpbmUiIGlkPSJiaWxkcy14OG85anJkeS1oZWFkbGluZSIgaXRlbXByb3A9ImhlYWRsaW5lIj5MQSBDQU1QQdFBIFBFUk1BTkVOVEU8L2gyPgogICAgICAgICAgCiAgICAgICAgICAKICAgICAgICA8L2Rpdj4KICAgICAgICA8YSBjbGFzcz0icGllY2UtbGluayIgaHJlZj0iaHR0cHM6Ly9va2RpYXJpby5jb20vb3Bpbmlvbi9jYW1wYW5hLXBlcm1hbmVudGUtMjA1MDY0NTMiIGl0ZW1wcm9wPSJ1cmwiIGFyaWEtbGFiZWxsZWRieT0iYmlsZHMteDhvOWpyZHktaGVhZGxpbmUiPjwvYT4KICAgICAgPC9hcnRpY2xlPgogICAgPGFydGljbGUgY2xhc3M9InBpZWNlLW1vYiIgYXJpYS1oaWRkZW49InRydWUiPgogICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIj4KICAgICAgICAgIDxpbWcgZGVjb2Rpbmc9ImFzeW5jIiBhbHQ9IkxhIGNhbXBh8WEgcGVybWFuZW50ZSIgc3JjPSJodHRwczovL29rZGlhcmlvLmNvbS9pbWcvMjAyNi8xMC8wNy8wOC0xMC0yMDI2LXNhbmNoZXotZWxlY2Npb25lcy5qcGVnIiBsb2FkaW5nPSJsYXp5IiB3aWR0aD0iMzc1Ij4KICAgICAgICAgIAogICAgICAgICAgCiAgICAgICAgICAKICAgICAgICAgIAogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImNhdGVnb3J5IiBzdHlsZT0iY29sb3I6IHJnYigxNCwgMTcsIDI2KTsiPkxBIFZJ0UVUQSBERSBQVUVCTEE8L3NwYW4+CiAgICAgICAgICA8aDIgY2xhc3M9ImhlYWRsaW5lIj5MQSBDQU1QQdFBIFBFUk1BTkVOVEU8L2gyPgogICAgICAgICAgCiAgICAgICAgICAKICAgICAgICAgIDxkaXYgY2xhc3M9ImJvdHRvbS1saW5lIj48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YSBjbGFzcz0icGllY2UtbGluayIgaHJlZj0iaHR0cHM6Ly9va2RpYXJpby5jb20vb3Bpbmlvbi9jYW1wYW5hLXBlcm1hbmVudGUtMjA1MDY0NTMiIHRhYmluZGV4PSItMSI+PC9hPgogICAgICA8L2FydGljbGU+CiAgPC9zZWN0aW9uPg==
      PHN0eWxlPgogIEBpbXBvcnQgdXJsKCdodHRwczovL3VzZS50eXBla2l0Lm5ldC9pcWExcWViLmNzcycpOwoKICAuYmlsZHMteDhvOWpyZHl7IGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTsgfQogIC5iaWxkcy14OG85anJkeSAucGllY2UtZGVzaywKICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLW1vYntwb3NpdGlvbjpyZWxhdGl2ZTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZTllOWVjfQogIC5iaWxkcy14OG85anJkeSAucGllY2UtZGVza3sKICAgIHdpZHRoOjEwMCU7bWF4LXdpZHRoOjk2MHB4O2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6NDYwcHggMWZyO2dhcDoxMHB4O3BhZGRpbmc6MTBweDttaW4td2lkdGg6OTYwcHg7CiB9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNrIC5tZWRpYS13cmFwe3dpZHRoOjQ2MHB4fQogIC5iaWxkcy14OG85anJkeSAucGllY2UtZGVzayAubWVkaWEsCiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLm1lZGlhewogICAgcG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTthc3BlY3QtcmF0aW86MTYvOTtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDojMDAwO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtpc29sYXRpb246aXNvbGF0ZTsKICB9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNrIC5tZWRpYXt3aWR0aDo0NjBweDtoZWlnaHQ6MjYwcHh9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNrIGltZywgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNrIHZpZGVvLAogIC5iaWxkcy14OG85anJkeSAucGllY2UtbW9iIGltZywgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgdmlkZW97d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvYmplY3QtZml0OmluaGVyaXQ7ZGlzcGxheTpibG9ja30KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLW92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjUpO3otaW5kZXg6MTtwb2ludGVyLWV2ZW50czpub25lfQogIC5iaWxkcy14OG85anJkeSAucGl4ZWxhdGVkLW1lZGlhe2ltYWdlLXJlbmRlcmluZzpwaXhlbGF0ZWQ7aW1hZ2UtcmVuZGVyaW5nOmNyaXNwLWVkZ2VzfQogIC5iaWxkcy14OG85anJkeSAucGl4ZWwtcmlnaHQtd3JhcHtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3otaW5kZXg6MTtwb2ludGVyLWV2ZW50czpub25lO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5Om5vbmV9CiAgLmJpbGRzLXg4bzlqcmR5IC5waXhlbC1yaWdodC1oYWxme3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7d2lkdGg6NTAlO2hlaWdodDoxMDAlO292ZXJmbG93OmhpZGRlbn0KICAuYmlsZHMteDhvOWpyZHkgLnBpeGVsLXJpZ2h0LWhhbGYgaW1ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7d2lkdGg6MjAwJTtoZWlnaHQ6MTAwJTtvYmplY3QtZml0OmNvdmVyO29iamVjdC1wb3NpdGlvbjpyaWdodCBjZW50ZXI7ZGlzcGxheTpibG9jaztpbWFnZS1yZW5kZXJpbmc6cGl4ZWxhdGVkO2ltYWdlLXJlbmRlcmluZzpjcmlzcC1lZGdlc30KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLWRlc2sgLnRleHQsCiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmNvbnRlbnR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcn0KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLWRlc2sgLnRleHR7bWluLWhlaWdodDoyNjBweDtwYWRkaW5nOjAgMTBweH0KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLW1vYnt3aWR0aDoxMDAlO3BhZGRpbmc6MTBweDtkaXNwbGF5Om5vbmV9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmNvbnRlbnR7cGFkZGluZzoxNnB4IDEwcHggMTBweH0KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLWRlc2sgLmNhdGVnb3J5LAogIC5iaWxkcy14OG85anJkeSAucGllY2UtbW9iIC5jYXRlZ29yeXsKICAgIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo3MDA7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MTRweDtjb2xvcjojZmZmO2JhY2tncm91bmQ6dmFyKC0tY2F0KTtkaXNwbGF5OmlubGluZS1ibG9jaztwYWRkaW5nOjZweCAxMnB4IDVweDt3aWR0aDpmaXQtY29udGVudDt0cmFuc2Zvcm06c2tld1koLThkZWcpO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsKICB9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmNhdGVnb3J5IHsgbWFyZ2luLXRvcDotMzBweDsgfQogIC5iaWxkcy14OG85anJkeSAucGllY2UtZGVzayAuaGVhZGxpbmUsCiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmhlYWRsaW5le21hcmdpbjoyMHB4IDAgMDtjb2xvcjojMEUxMTFBO2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo5MDA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RleHQtYWxpZ246Y2VudGVyO3dvcmQtYnJlYWs6YnJlYWstd29yZH0KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLWRlc2sgLmhlYWRsaW5le2ZvbnQtc2l6ZTo0MnB4O2xpbmUtaGVpZ2h0OjQycHh9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmhlYWRsaW5le2ZvbnQtc2l6ZTozNHB4O2xpbmUtaGVpZ2h0OjM0cHh9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNrIC5kZXNjLAogIC5iaWxkcy14OG85anJkeSAucGllY2UtbW9iIC5kZXNje21hcmdpbjoxNXB4IDAgMDtjb2xvcjojMzgzQjQyO2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo0MDA7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MjdweDt0ZXh0LWFsaWduOmNlbnRlcjtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6MjtsaW5lLWNsYW1wOjI7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bWF4LXdpZHRoOjEwMCV9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNrIC5hdXRob3IsCiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmF1dGhvcnttYXJnaW4tdG9wOjIwcHg7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2NvbG9yOiMzODNCNDI7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0OjMwcHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RleHQtYWxpZ246Y2VudGVyO2Rpc3BsYXk6YmxvY2t9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmF1dGhvciB7bWFyZ2luLXRvcDogMjBweDt9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2IgLmJvdHRvbS1saW5le2Rpc3BsYXk6dXBwZXJjYXNlO30KICAuYmlsZHMteDhvOWpyZHkgLnBsYXktYnRue3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMHB4O2xlZnQ6MTBweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo4cHggMTRweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuNDIpO2NvbG9yOiNmZmY7Ym9yZGVyLXJhZGl1czo0cHg7Y3Vyc29yOnBvaW50ZXI7YW5pbWF0aW9uOmJpbGRzLXg4bzlqcmR5LWJsaW5rIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO3otaW5kZXg6Mn0KICAuYmlsZHMteDhvOWpyZHkgLnBsYXktYnRuIC5pY297d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXItbGVmdDoxMHB4IHNvbGlkICNmZmY7Ym9yZGVyLXRvcDo2cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQgdHJhbnNwYXJlbnR9CiAgLmJpbGRzLXg4bzlqcmR5IC5wbGF5LWJ0biAudHh0e2ZvbnQtd2VpZ2h0OjcwMH0KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLW1vYiAucGxheS1idG57bGVmdDphdXRvO3JpZ2h0OjEwcHg7cGFkZGluZzoxMHB4IDEwcHggMTBweCAxMnB4fQogIC5iaWxkcy14OG85anJkeSAucGllY2UtbW9iIC5wbGF5LWJ0biAudHh0e2Rpc3BsYXk6bm9uZX0KICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLWxpbmt7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtkaXNwbGF5OmJsb2NrO29wYWNpdHk6MDt6LWluZGV4OjN9CiAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1kZXNre29wYWNpdHk6MTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0fQogIC5iaWxkcy14OG85anJkeSAucGllY2UtZGVzazpob3ZlcntvcGFjaXR5Oi45fQogIEBrZXlmcmFtZXMgYmlsZHMteDhvOWpyZHktYmxpbmt7MCUsMTAwJXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpfTUwJXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwxNjUsMjU1LC45KX19CiAgQGNvbnRhaW5lciAobWF4LXdpZHRoOiA0NzlweCl7CiAgICAuYmlsZHMteDhvOWpyZHkgLnBpZWNlLWRlc2t7ZGlzcGxheTpub25lfQogICAgLmJpbGRzLXg4bzlqcmR5IC5waWVjZS1tb2J7ZGlzcGxheTpibG9ja30KICB9CiAgQHN1cHBvcnRzIG5vdCAoY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplKXsKICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0NzkuOThweCl7CiAgICAgIC5iaWxkcy14OG85anJkeSAucGllY2UtZGVza3tkaXNwbGF5Om5vbmV9CiAgICAgIC5iaWxkcy14OG85anJkeSAucGllY2UtbW9ie2Rpc3BsYXk6YmxvY2t9CiAgICB9CiAgfQogIDwvc3R5bGU+CjxzZWN0aW9uIGNsYXNzPSJiaWxkcy14OG85anJkeSIgc3R5bGU9Ii0tY2F0OiNGRkVBNEQ7IC0tY2F0LWJnOnJnYmEoMjU1LCAyMzQsIDc3LCAwLjIpIj4KICAgIDxhcnRpY2xlIGNsYXNzPSJwaWVjZS1kZXNrIiBpdGVtc2NvcGU9IiIgaXRlbXR5cGU9Imh0dHBzOi8vc2NoZW1hLm9yZy9OZXdzQXJ0aWNsZSI+CiAgICAgICAgPGRpdiBjbGFzcz0ibWVkaWEtd3JhcCI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJtZWRpYSI+CiAgICAgICAgICAgIDxpbWcgZGVjb2Rpbmc9ImFzeW5jIiBhbHQ9IkxhIGNhbXBh8WEgcGVybWFuZW50ZSIgc3JjPSJodHRwczovL29rZGlhcmlvLmNvbS9pbWcvMjAyNi8xMC8wNy8wOC0xMC0yMDI2LXNhbmNoZXotZWxlY2Npb25lcy5qcGVnIiBsb2FkaW5nPSJsYXp5IiB3aWR0aD0iNDYwIiBpdGVtcHJvcD0iaW1hZ2UiPgogICAgICAgICAgICAKICAgICAgICAgICAgCiAgICAgICAgICAgIAogICAgICAgICAgICAKICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InRleHQiPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImNhdGVnb3J5IiBpdGVtcHJvcD0iYXJ0aWNsZVNlY3Rpb24iIHN0eWxlPSJjb2xvcjogcmdiKDE0LCAxNywgMjYpOyI+TEEgVknRRVRBIERFIFBVRUJMQTwvc3Bhbj4KICAgICAgICAgIDxoMiBjbGFzcz0iaGVhZGxpbmUiIGlkPSJiaWxkcy14OG85anJkeS1oZWFkbGluZSIgaXRlbXByb3A9ImhlYWRsaW5lIj5MQSBDQU1QQdFBIFBFUk1BTkVOVEU8L2gyPgogICAgICAgICAgCiAgICAgICAgICAKICAgICAgICA8L2Rpdj4KICAgICAgICA8YSBjbGFzcz0icGllY2UtbGluayIgaHJlZj0iaHR0cHM6Ly9va2RpYXJpby5jb20vb3Bpbmlvbi9jYW1wYW5hLXBlcm1hbmVudGUtMjA1MDY0NTMiIGl0ZW1wcm9wPSJ1cmwiIGFyaWEtbGFiZWxsZWRieT0iYmlsZHMteDhvOWpyZHktaGVhZGxpbmUiPjwvYT4KICAgICAgPC9hcnRpY2xlPgogICAgPGFydGljbGUgY2xhc3M9InBpZWNlLW1vYiIgYXJpYS1oaWRkZW49InRydWUiPgogICAgICAgIDxkaXYgY2xhc3M9Im1lZGlhIj4KICAgICAgICAgIDxpbWcgZGVjb2Rpbmc9ImFzeW5jIiBhbHQ9IkxhIGNhbXBh8WEgcGVybWFuZW50ZSIgc3JjPSJodHRwczovL29rZGlhcmlvLmNvbS9pbWcvMjAyNi8xMC8wNy8wOC0xMC0yMDI2LXNhbmNoZXotZWxlY2Npb25lcy5qcGVnIiBsb2FkaW5nPSJsYXp5IiB3aWR0aD0iMzc1Ij4KICAgICAgICAgIAogICAgICAgICAgCiAgICAgICAgICAKICAgICAgICAgIAogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImNhdGVnb3J5IiBzdHlsZT0iY29sb3I6IHJnYigxNCwgMTcsIDI2KTsiPkxBIFZJ0UVUQSBERSBQVUVCTEE8L3NwYW4+CiAgICAgICAgICA8aDIgY2xhc3M9ImhlYWRsaW5lIj5MQSBDQU1QQdFBIFBFUk1BTkVOVEU8L2gyPgogICAgICAgICAgCiAgICAgICAgICAKICAgICAgICAgIDxkaXYgY2xhc3M9ImJvdHRvbS1saW5lIj48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YSBjbGFzcz0icGllY2UtbGluayIgaHJlZj0iaHR0cHM6Ly9va2RpYXJpby5jb20vb3Bpbmlvbi9jYW1wYW5hLXBlcm1hbmVudGUtMjA1MDY0NTMiIHRhYmluZGV4PSItMSI+PC9hPgogICAgICA8L2FydGljbGU+CiAgPC9zZWN0aW9uPg==
    • El Gobierno presiona al Supremo antes de que decida sobre el voto de los
        • España
        • España

      El Gobierno presiona al Supremo antes de que decida sobre el voto de los 'nietos': "Se gestiona con transparencia"

      • Rafael Molina
      • 2026-10-08 05:50
    • Vox alega ante el Supremo que Moncloa sí puede identificar a los falsos
        • España
        • España

      Vox alega ante el Supremo que Moncloa sí puede identificar a los falsos 'nietos del exilio' para impedir que voten

      • Paula Ciordia
      • 2026-10-08 11:55
    • CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQiIGNyb3Nzb3JpZ2luPgo8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vcC50eXBla2l0Lm5ldCIgY3Jvc3NvcmlnaW4+CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbSI+CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbSIgY3Jvc3NvcmlnaW4+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvaXFhMXFlYi5jc3MiPgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Um9ib3RvOndnaHRANDAwOzcwMCZkaXNwbGF5PXN3YXAiPgo8c3R5bGU+Ci8qIGFtcGxpdHVkZS1tZWRpdW0tY29uZGVuc2VkOiB2ZXIgcmVsYXRlZFVwcGVyY2FzZVRpdGxlRm9udCBt4XMgYWJham8uICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAiYW1wbGl0dWRlLW1lZGl1bS1jb25kZW5zZWQiOwogIHNyYzogdXJsKCJodHRwczovL29rZGlhcmlvLmNvbS93ZWIvdGhlbWVzL3YxMC9jc3MvX2ZvbnRzX2FtcGxpdHVkZS9BbXBsaXR1ZGUlMjBBdWJpJTIwTWVkaXVtJTIwQ25kLm90ZiIpOwp9Ci8qIGFtcGxpdHVkZS1ib29rOiB2ZXIgcmVsYXRlZEF1dGhvckZvbnQgbeFzIGFiYWpvLiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogImFtcGxpdHVkZS1ib29rIjsKICBzcmM6IHVybCgiaHR0cHM6Ly9va2RpYXJpby5jb20vd2ViL3RoZW1lcy92MTAvY3NzL19mb250c19hbXBsaXR1ZGUvQW1wbGl0dWRlJTIwQXViaSUyMEJvb2sub3RmIik7Cn0KLyogY29udGFpbmVyLXR5cGU6aW5saW5lLXNpemUgYXF17SBlcyBpbXByZXNjaW5kaWJsZTogY29udmllcnRlIGVzdGUgYmxvcXVlCiAgIGVuIGVsIGNvbnRlbmVkb3IgZGUgcmVmZXJlbmNpYSBwYXJhIGxvcyAiQGNvbnRhaW5lciAoLi4uLWlubGluZS1zaXplLi4uKSIKICAgZGUgbeFzIGFiYWpvLiBVc2Ftb3MgQGNvbnRhaW5lciBlbiB2ZXogZGUgQG1lZGlhIHBvcnF1ZSAiQG1lZGlhCiAgIChtYXgtaW5saW5lLXNpemU6Li4uKSIgTk8gZXMgdW5hIGNvbmRpY2nzbiBDU1MgduFsaWRhICYjODIxMjsgaW5saW5lLXNpemUgc29sbwogICBleGlzdGUgY29tbyBjYXJhY3Rlcu1zdGljYSBkZSBAY29udGFpbmVyLCBudW5jYSBkZSBAbWVkaWEgJiM4MjEyOyBhc+0gcXVlIGVzYXMKICAgcmVnbGFzIGphbeFzIHNlIGFjdGl2YWJhbiAodmVyaWZpY2FkbyBjb24gbWF0Y2hNZWRpYTogc2llbXByZSBmYWxzZSwgc2luCiAgIGltcG9ydGFyIGVsIGFuY2hvKSwgeSBwb3IgZXNvIGxhIG5vdGljaWEgcHJpbmNpcGFsIHBvZO1hIGRlc2FwYXJlY2VyIG8gZWwKICAgZGlzZfFvIG3zdmlsIG5vIHNlIGFjdGl2YWJhIG51bmNhLiBAY29udGFpbmVyIHPtIHNvcG9ydGEgaW5saW5lLXNpemUgZGUKICAgZm9ybWEgduFsaWRhLCB5IGV2aXRhIGlndWFsbWVudGUgbGEgcGFsYWJyYSAid2lkdGg6IiBxdWUgZWwgQ01TIGRlbAogICB1c3VhcmlvIGVsaW1pbmEgYWwgcGVnYXIgSFRNTC9DU1MgZGlyZWN0YW1lbnRlLiAqLwovKiBGSVggT0tESUFSSU8gKi8KICAgIC5pdGVtIGFydGljbGUgLmFydGljbGUtc2NyaXB0IHsKICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50OwogICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50OwogICAgfQovKiBDb250ZW5lZG9yIGRlIHRvZGEgbGEgYXBlcnR1cmEgKGNhYmVjZXJhICsgbm90aWNpYSBwcmluY2lwYWwgKyBjb2x1bW5hKToKICAgZm9uZG8gYmxhbmNvIHkgYWlyZSBhbHJlZGVkb3IsIHNvbG8gZW4gRGVzayAmIzgyMTI7IHZlciBvdmVycmlkZSBkZW50cm8gZGVsCiAgIEBjb250YWluZXIobWF4LWlubGluZS1zaXplOjg2MHB4KSBkZSBt4XMgYWJham8sIHF1ZSBsbyBhbnVsYSBwb3IgZGViYWpvCiAgIGRlIGVzZSBhbmNobyAoZXF1aXZhbGVudGUgYSBsYSB2aXN0YSBN83ZpbCksIHkgYXF17SBtaXNtbyBjb24gZWwgdGV4dG8gYQogICBsYSBpenF1aWVyZGEgbyBsYSBkZXJlY2hhIChib2R5UG9zaXRpb25CbG9ja3NDb2x1bW4pOiBjb24gZXNlIGxheW91dCBsYQogICBub3RpY2lhIHByaW5jaXBhbCB5YSBvY3VwYSBlbCAxMDAlIGRlbCBhbmNobyB5IHNvbGFwYSBzdSBwcm9waWEgZm90byBkZQogICBib3JkZSBhIGJvcmRlLCBhc+0gcXVlIGVsIGFpcmUvZm9uZG8gYmxhbmNvIHNvYnJhLiAqLwouYmxrLW5rZHdne21heC1pbmxpbmUtc2l6ZTo5NjBweDttYXJnaW46MCBhdXRvO2NvbnRhaW5lci10eXBlOmlubGluZS1zaXplO30KLmJsay1ua2R3ZyBhe3RleHQtZGVjb3JhdGlvbjpub25lO2NvbG9yOmluaGVyaXR9Ci5ibGstbmtkd2cgLnBhZ2V7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7Z2FwOjE1cHh9Ci5ibGstbmtkd2cgLnBhZ2UgLmNvbHVtbntvcmRlcjozfQouYmxrLW5rZHdnIC5wYWdlIC5sZWFke29yZGVyOjJ9Ci8qIDg2MHB4IHkgbm8gNDc1cHg6IGNvbiBsYSBjb2x1bW5hIGZpamEgKDIyMHB4ICsgMjBweCBkZSBnYXAgPSAyNDBweCksCiAgIGN1YWxxdWllciBhbmNobyBkZSBpZnJhbWUgcG9yIGRlYmFqbyBkZSB+ODYwcHggZGVqYSBsYSBub3RpY2lhIHByaW5jaXBhbAogICAoMWZyKSBjYWRhIHZleiBjb24gbWVub3MgZXNwYWNpbyBoYXN0YSBjb2xhcHNhciBhIDBweCBkZSBhbmNobyBhbnRlcyBkZQogICBsbGVnYXIgYSB1biBicmVha3BvaW50IHRhbiBiYWpvIGNvbW8gNDc1cHggJiM4MjEyOyBsYSBub3RpY2lhIHByaW5jaXBhbAogICBkaXJlY3RhbWVudGUgZGVzYXBhcmVjZSBlbiBlc2EgZnJhbmphIGludGVybWVkaWEgKG5pICJkZXNrIiBjb21wbGV0byBuaQogICAibfN2aWwiIGVzdHJlY2hvKS4gQ29uIDg2MHB4IHNlIHBhc2EgYSB1bmEgc29sYSBjb2x1bW5hIGFwaWxhZGEgYW50ZXMgZGUKICAgcXVlIGVzbyBwdWVkYSBvY3VycmlyLgogICBFc3RlIGJyZWFrcG9pbnQgc2Ugb21pdGUgcG9yIGNvbXBsZXRvIG1pZW50cmFzIGxhIHNpbXVsYWNp824gZGUgYW5jaG8gZXN06QogICBhY3RpdmEgKHZlciBsZWFkV2lkdGhQcmV2aWV3KTogcGVuc2FkbyBwYXJhIGN1YW5kbyBlbCBt82R1bG8gbGxldmEgc3UKICAgY29sdW1uYSBhIDk2MHB4LCBkZWphIGRlIHRlbmVyIHNlbnRpZG8gZW4gdW5hIGV4cG9ydGFjafNuIGRlIHNvbG8gbGEKICAgbm90aWNpYSBwcmluY2lwYWwgYSB1biBhbmNobyBmaWpvIGVsZWdpZG8gYSBtYW5vICYjODIxMjsgbG9zIGFuY2hvcyBzaW11bGFkb3MKICAgKDYxMy80NjAvMzA3cHgpIGVzdOFuIFRPRE9TIHBvciBkZWJham8gZGUgODYwcHgsIGFz7SBxdWUgc2luIGVzdGUgZ2F0aW5nCiAgIGVsIEhUTUwgZXhwb3J0YWRvIGNhZXLtYSBzaWVtcHJlIGEgbGEgdGlwb2dyYWbtYSAiTfN2aWwiIChjb24gIWltcG9ydGFudCkKICAgc2VhIGN1YWwgc2VhIGxhIHF1ZSBlbCB1c3VhcmlvIGNvbmZpZ3Vy8yBlbiAiRGVzayIgcGFyYSBlc2Egc2ltdWxhY2nzbiwKICAgZGFuZG8gbGEgZmFsc2Egc2Vuc2FjafNuIGRlIHF1ZSB1bmEgY29uZmlndXJhY2nzbiAicGlzYSIgYSBvdHJhLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6ODYwcHgpewogIC5ibGstbmtkd2d7YmFja2dyb3VuZDpub25lO3BhZGRpbmc6MDt9CiAgLmJsay1ua2R3ZyAucGFnZXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyfQogIC5ibGstbmtkd2cgLnBhZ2UgLnN0YWNrLXRpdGxlIHtmb250LXNpemU6MThweDsgbGluZS1oZWlnaHQ6IDEuMmVtO30KICAuYmxrLW5rZHdnIC5wYWdlIC5zdGFjay1hdXRob3Ige21hcmdpbi10b3A6IDEwcHg7fQogIC5ibGstbmtkd2cgLmxlYWQtbWVkaWEuaXMtaWZyYW1le2Jsb2NrLXNpemU6NDAwcHggIWltcG9ydGFudDt9CiAgLmJsay1ua2R3ZyAubGVhZC1tZWRpYXthc3BlY3QtcmF0aW86MTYvOSAhaW1wb3J0YW50O30KICAuYmxrLW5rZHdnIC5wYWdlIC5sZWFke29yZGVyOjF9CiAgLmJsay1ua2R3ZyAucGFnZSAuY29sdW1ue29yZGVyOjJ9CiAgLyogUG9yIGRlYmFqbyBkZWwgYnJlYWtwb2ludCwgZWwgbGVhZC1ib2R5IHNpZW1wcmUgdnVlbHZlIGEgaXIgZGViYWpvIGRlbAogICAgIGxlYWQtbWVkaWEgKG5vIGhheSBzaXRpbyBwYXJhIGVsIGxheW91dCBsYWRvIGEgbGFkbykuICovCiAgLmJsay1ua2R3ZyAucGFnZSAubGVhZC5sZWFkLWJvZHktbGVmdCwKICAuYmxrLW5rZHdnIC5wYWdlIC5sZWFkLmxlYWQtYm9keS1yaWdodHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YXNwZWN0LXJhdGlvOmF1dG87fQogIC5ibGstbmtkd2cgLnBhZ2UgLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtbWVkaWEsCiAgLmJsay1ua2R3ZyAucGFnZSAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtbWVkaWF7ZmxleDoxIDEgYXV0bzt9CiAgLmJsay1ua2R3ZyAucGFnZSAubGVhZC5sZWFkLWJvZHktbGVmdCAubGVhZC1ib2R5LAogIC5ibGstbmtkd2cgLnBhZ2UgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLWJvZHl7ZmxleDoxIDEgYXV0bztpbmxpbmUtc2l6ZTo5MCU7bWFyZ2luOi0zMHB4IGF1dG8gMDtibG9jay1zaXplOmF1dG87YWxpZ24tc2VsZjphdXRvO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O3BhZGRpbmc6MTBweDt9CiAgLmJsay1ua2R3ZyAucGFnZSAuY29sdW1uLWl0ZW17Ym9yZGVyOjFweCBzb2xpZCAjZTdlYmVlO3BhZGRpbmc6MTBweDtiYWNrZ3JvdW5kOiNmZmY7YmxvY2stc2l6ZTpzdHJldGNoO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTt9CiAgLmJsay1ua2R3ZyAucGFnZSAubGVmdC10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToyMHB4O2xpbmUtaGVpZ2h0OjEuMTU7Y29sb3I6IzJjM2U1MzttYXJnaW46MDt0ZXh0LWFsaWduOmxlZnQ7fQogIC5ibGstbmtkd2cgLnBhZ2UgLmNvbHVtbi1pdGVtLnRpdGxlLW9ubHktbW9iaWxlLTIxIC5sZWZ0LXRpdGxle2ZvbnQtc2l6ZToyMXB4ICFpbXBvcnRhbnQ7fQogIC5ibGstbmtkd2cgLnBhZ2UgLmNvbHVtbi1pdGVtLnRpdGxlLW9ubHktbW9iaWxlLTE4IC5sZWZ0LXRpdGxle2ZvbnQtc2l6ZToxOHB4ICFpbXBvcnRhbnQ7fQogIC5ibGstbmtkd2cgLnBhZ2UgLmxlZnQtcGxheXsKICAgIGZsZXg6MCAwIGF1dG87aW5saW5lLXNpemU6MTVweDtibG9jay1zaXplOjE1cHg7Ym9yZGVyLXJhZGl1czoycHg7CiAgICBiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjMDBhN2ZmOwogICAgZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjA7CiAgICB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7bWFyZ2luLXJpZ2h0OjZweDttYXJnaW4tYm90dG9tOjRweDsKICB9CiAgLmJsay1ua2R3ZyAucGFnZSAubGVmdC1wbGF5OjpiZWZvcmV7CiAgICBjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aW5saW5lLXNpemU6MDtibG9jay1zaXplOjA7CiAgICBib3JkZXItbGVmdDo0cHggc29saWQgIzAwYTdmZjtib3JkZXItdG9wOjNweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjNweCBzb2xpZCB0cmFuc3BhcmVudDttYXJnaW4tbGVmdDoxcHg7CiAgfQp9Ci8qIFRpcG9ncmFm7WEgIk3zdmlsIiAoYW50ZXTtdHVsby90aXR1bGFyL3N1YnTtdHVsby90aXR1bGFyZXMgYW5pbWFkb3MpIGNvbiBTVQogICBQUk9QSU8gYnJlYWtwb2ludCAoNDgwcHgpLCBzZXBhcmFkbyBkZWwgZGUgYXJyaWJhICg4NjBweCwgc29sbyBwYXJhIGFwaWxhcgogICBsYSByZWppbGxhIGNvbHVtbmErbm90aWNpYSk6IHVuIGNvbnRlbmVkb3IgcmVhbCBkZSBtZW5vcyBkZSA4NjBweCBlcyBtdXkKICAgaGFiaXR1YWwgKHAuZWouIHVuYSBjb2x1bW5hIGRlIGFydO1jdWxvIGRlIH43MDBweCkgeSBOTyBlcyB1biBt83ZpbCAmIzgyMTI7IGNvbgogICB1biD6bmljbyBicmVha3BvaW50IGNvbXBhcnRpZG8sIGxhIHRpcG9ncmFm7WEgIkRlc2siIHF1ZSBjb25maWd1cmEgZWwKICAgdXN1YXJpbyBubyBsbGVnYWJhIGEgdmVyc2UgbnVuY2EgZW4gZXNlIGNhc28sIGNheWVuZG8gc2llbXByZSBhIGxvcyB2YWxvcmVzCiAgIHBvciBkZWZlY3RvIGRlICJN83ZpbCIgc2luIHF1ZSBuYWRpZSBsbyBodWJpZXJhIHBlZGlkby4gNDgwcHggc+0gc2UKICAgY29ycmVzcG9uZGUgY29uIHVuIGFuY2hvIGRlIG3zdmlsIHJlYWwgKGxhIHZpc3RhICJN83ZpbCIgZGVsIHByb3BpbyBnZXN0b3IKICAgc2ltdWxhIDM3NXB4KS4gSWd1YWwgcXVlIGVsIGJyZWFrcG9pbnQgZGUgYXJyaWJhLCBzZSBvbWl0ZSBkdXJhbnRlIGxhCiAgIHNpbXVsYWNp824gZGUgYW5jaG8gZGUgbGEgbm90aWNpYSBwcmluY2lwYWwgKHZlciBsZWFkV2lkdGhQcmV2aWV3KS4gKi8KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjQ4MHB4KXsKICAuYmxrLW5rZHdnIC5sZWFkLWtpY2tlcntmb250LXNpemU6MS4zMTI1cmVtICFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS4xICFpbXBvcnRhbnQ7Y29sb3I6IzAwQTdGRiAhaW1wb3J0YW50O30KICAuYmxrLW5rZHdnIC5sZWFkLXN1YnRpdGxle2ZvbnQtc2l6ZToxLjMxMjVyZW0gIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjEgIWltcG9ydGFudDtjb2xvcjojMDBBN0ZGICFpbXBvcnRhbnQ7fQogIC5ibGstbmtkd2cgLmxlYWQtdGl0bGV7Zm9udC1zaXplOjEuODc1cmVtICFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS4wMiAhaW1wb3J0YW50O30KICAuYmxrLW5rZHdnIC5sZWFkLXRpdGxlLWRlc2t7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fQogIC5ibGstbmtkd2cgLmxlYWQtdGl0bGUtbW9iaWxle2Rpc3BsYXk6aW5saW5lICFpbXBvcnRhbnQ7fQogIC5ibGstbmtkd2cgLmxlYWQta2lja2VyLWRlc2t7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fQogIC5ibGstbmtkd2cgLmxlYWQta2lja2VyLW1vYmlsZXtkaXNwbGF5OmlubGluZSAhaW1wb3J0YW50O30KICAuYmxrLW5rZHdnIC5sZWFkLXN1YnRpdGxlLWRlc2t7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fQogIC5ibGstbmtkd2cgLmxlYWQtc3VidGl0bGUtbW9iaWxle2Rpc3BsYXk6aW5saW5lICFpbXBvcnRhbnQ7fQogIC5ibGstbmtkd2cgLmxlYWQtYW5pbS1oZWFkbGluZXN7Zm9udC1zaXplOjEuODc1cmVtICFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS4wMiAhaW1wb3J0YW50O30KICAKICAuYmxrLW5rZHdnIC5yZWxhdGVkLXRpdGxlLWRlc2t7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fQogIC5ibGstbmtkd2cgLnJlbGF0ZWQtdGl0bGUtbW9iaWxle2Rpc3BsYXk6aW5saW5lICFpbXBvcnRhbnQ7fQp9Ci5ibGstbmtkd2cgLmxlYWR7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjojZmZmO292ZXJmbG93OmhpZGRlbjtpc29sYXRpb246aXNvbGF0ZTtwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2U7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjt9Ci5ibGstbmtkd2cgLmxlYWQtbWVkaWF7cG9zaXRpb246cmVsYXRpdmU7YXNwZWN0LXJhdGlvOjE2Lzk7YmFja2dyb3VuZDojMDAwO292ZXJmbG93OmhpZGRlbn0KLyogTWVkaWEgbWVkaWFudGUgaWZyYW1lOiBhbHRvIGZpam8gZW4gcO14ZWxlcyBlbiB2ZXogZGUgbGEgcHJvcG9yY2nzbiBkZQogICBhcnJpYmEgKHZlciBjb21lbnRhcmlvIGRldGFsbGFkbyBqdW50byBhIHN0YXRlLmxlYWQuaWZyYW1lSGVpZ2h0KSAmIzgyMTI7IGVsCiAgIHZhbG9yIGRlIE3zdmlsIHNlIHNvYnJlc2NyaWJlIGVuIGVsIEBjb250YWluZXIgZGUgbeFzIGFiYWpvLCBpZ3VhbCBxdWUgZWwKICAgcmVzdG8gZGUgb3ZlcnJpZGVzIHJlc3BvbnNpdmUgZGUgZXN0ZSBIVE1MIGV4cG9ydGFkby4gKi8KLmJsay1ua2R3ZyAubGVhZC1tZWRpYS5pcy1pZnJhbWV7YXNwZWN0LXJhdGlvOm5vbmU7YmxvY2stc2l6ZTo2NDBweDt9Ci5ibGstbmtkd2cgLmxlYWQtbWVkaWEgaW1nLAouYmxrLW5rZHdnIC5sZWFkLW1lZGlhIHZpZGVve3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn0KLyogQ2FycnVzZWwgZGUgZm90b3MgZGUgZm9uZG8gY29uIGVmZWN0byBLZW4gQnVybnMgJiM4MjEyOyB2ZXIgZWwgbWlzbW8gYmxvcXVlLAogICBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4KICAgTGEgZHVyYWNp824gZGUgbGFzIGFuaW1hY2lvbmVzICg2cykgY29pbmNpZGUgY29uCiAgIExFQURfQ0FST1VTRUxfSU5URVJWQUwsIHF1ZSB0YW1iaeluIGdvYmllcm5hIGVsIHNjcmlwdCBkZSByb3RhY2nzbgogICAoYnVpbGRMZWFkQ2Fyb3VzZWxTY3JpcHQpIGHxYWRpZG8gYWwgZmluYWwgZGVsIEhUTUwgZXhwb3J0YWRvLiAqLwouYmxrLW5rZHdnIC5sZWFkLWNhcm91c2Vse3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7b3ZlcmZsb3c6aGlkZGVuO30KLmJsay1ua2R3ZyAubGVhZC1jYXJvdXNlbC1zbGlkZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgMS41cyBlYXNlO30KLmJsay1ua2R3ZyAubGVhZC1jYXJvdXNlbC1zbGlkZS5pcy1hY3RpdmV7b3BhY2l0eToxO3otaW5kZXg6MTt9Ci5ibGstbmtkd2cgLmxlYWQtY2Fyb3VzZWwtc2xpZGUgaW1ne3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7b2JqZWN0LWZpdDpjb3Zlcjt9Ci5ibGstbmtkd2cgLmxlYWQtY2Fyb3VzZWwtc2xpZGU6bnRoLWNoaWxkKG9kZCkgaW1ne2FuaW1hdGlvbjpibGstbmtkd2cta2VuYnVybnMtYSA2cyBlYXNlLWluLW91dCBmb3J3YXJkczt9Ci5ibGstbmtkd2cgLmxlYWQtY2Fyb3VzZWwtc2xpZGU6bnRoLWNoaWxkKGV2ZW4pIGltZ3thbmltYXRpb246YmxrLW5rZHdnLWtlbmJ1cm5zLWIgNnMgZWFzZS1pbi1vdXQgZm9yd2FyZHM7fQpAa2V5ZnJhbWVzIGJsay1ua2R3Zy1rZW5idXJucy1heyBmcm9te3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGUoMCwwKTt9IHRve3RyYW5zZm9ybTpzY2FsZSgxLjE1KSB0cmFuc2xhdGUoLTQlLC0zJSk7fSB9CkBrZXlmcmFtZXMgYmxrLW5rZHdnLWtlbmJ1cm5zLWJ7IGZyb217dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZSgwLDApO30gdG97dHJhbnNmb3JtOnNjYWxlKDEuMTUpIHRyYW5zbGF0ZSg0JSwzJSk7fSB9Ci8qIENvbiB1bmEg+m5pY2EgZm90byAoc2luIHJvdGFjafNuIHBvc2libGUpIHNlIGFwbGljYSB1biB6b29tIGluL291dCBlbgogICBidWNsZSBpbmZpbml0byBlbiB2ZXogZGVsIHJlY29ycmlkbyD6bmljbyAoZm9yd2FyZHMpIGRlIGFycmliYS4gKi8KLmJsay1ua2R3ZyAubGVhZC1jYXJvdXNlbC5pcy1zaW5nbGUgLmxlYWQtY2Fyb3VzZWwtc2xpZGUgaW1ne2FuaW1hdGlvbjpibGstbmtkd2cta2VuYnVybnMtbG9vcCAxNHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7fQpAa2V5ZnJhbWVzIGJsay1ua2R3Zy1rZW5idXJucy1sb29weyAwJXt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlKDAsMCk7fSA1MCV7dHJhbnNmb3JtOnNjYWxlKDEuMTUpIHRyYW5zbGF0ZSgtNCUsLTMlKTt9IDEwMCV7dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZSgwLDApO30gfQovKiBDb21wYXJhZG9yIGFudGVzL2Rlc3B16XMgKGRlc2xpemFkb3IpICYjODIxMjsgdmVyIGVsIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuCiAgIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstbmtkd2cgLmxlYWQtY29tcGFyZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO292ZXJmbG93OmhpZGRlbjtpc29sYXRpb246aXNvbGF0ZTt0b3VjaC1hY3Rpb246bm9uZTt6LWluZGV4OjI7fQouYmxrLW5rZHdnIC5sZWFkLWNvbXBhcmUgaW1ne3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7b2JqZWN0LWZpdDpjb3ZlcjtvYmplY3QtcG9zaXRpb246Y2VudGVyO2Rpc3BsYXk6YmxvY2s7dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItZHJhZzpub25lO3BvaW50ZXItZXZlbnRzOm5vbmU7fQouYmxrLW5rZHdnIC5sZWFkLWNvbXBhcmUtYmVmb3Jle2NsaXAtcGF0aDppbnNldCgwIDUwJSAwIDApO3dpbGwtY2hhbmdlOmNsaXAtcGF0aDt9Ci5ibGstbmtkd2cgLmxlYWQtY29tcGFyZS1yYW5nZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2lubGluZS1zaXplOjEwMCU7YmxvY2stc2l6ZToxMDAlO21hcmdpbjowO29wYWNpdHk6MDtjdXJzb3I6ZXctcmVzaXplO30KLmJsay1ua2R3ZyAubGVhZC1jb21wYXJlLWhhbmRsZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjUwJTtpbmxpbmUtc2l6ZTowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3BvaW50ZXItZXZlbnRzOm5vbmU7ei1pbmRleDoyO30KLmJsay1ua2R3ZyAubGVhZC1jb21wYXJlLWhhbmRsZTo6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO2lubGluZS1zaXplOjJweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjkpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHJnYmEoMCwwLDAsLjI1KTt9Ci5ibGstbmtkd2cgLmxlYWQtY29tcGFyZS1oYW5kbGU6OmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0Oi0xNXB4O2lubGluZS1zaXplOjMwcHg7YmxvY2stc2l6ZTozMHB4O3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6I2ZmZiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMjAnIGhlaWdodD0nMjAnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PGcgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMwMDAnIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cGF0aCBkPSdNOCA2IEw0IDEwIEw4IDE0Jy8+PHBhdGggZD0nTTEyIDYgTDE2IDEwIEwxMiAxNCcvPjwvZz48L3N2Zz4iKSBjZW50ZXIvMTZweCAxNnB4IG5vLXJlcGVhdDtib3gtc2hhZG93OjAgMnB4IDZweCByZ2JhKDAsMCwwLC4yNSk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4yNSk7fQovKiBNZWRpYSBtZWRpYW50ZSBpZnJhbWUgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEKICAgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gTWlzbW8gei1pbmRleDoyIHF1ZQogICAubGVhZC1jb21wYXJlLCBwb3IgZWwgbWlzbW8gbW90aXZvIChnYW5hcmxlIGEgLmxlYWQtbGluaykuICovCi5ibGstbmtkd2cgLmxlYWQtaWZyYW1le3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7b3ZlcmZsb3c6aGlkZGVuO2lzb2xhdGlvbjppc29sYXRlO3otaW5kZXg6Mjt9Ci5ibGstbmtkd2cgLmxlYWQtaWZyYW1lIGlmcmFtZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2lubGluZS1zaXplOjEwMCU7YmxvY2stc2l6ZToxMDAlO2JvcmRlcjowO2Rpc3BsYXk6YmxvY2s7fQouYmxrLW5rZHdnIC5sZWFkLW92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt6LWluZGV4OjE7cG9pbnRlci1ldmVudHM6bm9uZTt9Ci5ibGstbmtkd2cgLmxlYWQtYm9keXtwYWRkaW5nOjBweCAyMHB4IDIwcHggMjBweDs7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweDsgdGV4dC1hbGlnbjpjZW50ZXI7IGFsaWduLWl0ZW1zOmNlbnRlcjsgcG9zaXRpb246cmVsYXRpdmU7IHotaW5kZXg6NjsgcG9pbnRlci1ldmVudHM6bm9uZTsgaW5saW5lLXNpemU6OTUlOyBtYXJnaW4tbGVmdDphdXRvOyBtYXJnaW4tcmlnaHQ6YXV0bzsgbWFyZ2luLXRvcDotMzBweDsgYmFja2dyb3VuZDojMEUxMTFBOyBmbGV4OjEgMSBhdXRvO30KLyogQW50ZXTtdHVsby90aXR1bGFyL3N1YnTtdHVsby9hdXRvciBjZW50cmFkb3MgZW4gdmVydGljYWwgZGVudHJvIGRlbCBhbHRvCiAgIHNvYnJhbnRlIGJham8gbGEgY2F0ZWdvcu1hICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhCiAgIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwuICovCi5ibGstbmtkd2cgLmxlYWQtYm9keS1tYWlue2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjEwcHg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7aW5saW5lLXNpemU6MTAwJTtmbGV4OjEgMSBhdXRvO21pbi1oZWlnaHQ6MDt9Ci8qIEFwYXJpZW5jaWEgbmVnYXRpdmEgKHBvciBkZWZlY3RvKSB2cy4gcG9zaXRpdmEgZGUgbGEgY2FqYSBkZSB0aXR1bGFyICYjODIxMjsgdmVyCiAgIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwuICovCi5ibGstbmtkd2cgLmxlYWQuaXMtYXBwZWFyYW5jZS1wb3NpdGl2ZSAubGVhZC1ib2R5e2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNlN2ViZWU7fQouYmxrLW5rZHdnIC5sZWFkLmlzLWFwcGVhcmFuY2UtcG9zaXRpdmUgLmxlYWQtdGl0bGUsCi5ibGstbmtkd2cgLmxlYWQuaXMtYXBwZWFyYW5jZS1wb3NpdGl2ZSAuYXV0aG9yLWxhYmVse2NvbG9yOiMwRTExMUE7fQovKiBQb3NpY2nzbiBkZWwgbGVhZC1ib2R5IHJlc3BlY3RvIGFsIGxlYWQtbWVkaWEgKCdsZWZ0Jy8ncmlnaHQnKSAmIzgyMTI7IHZlciBtaXNtbwogICBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsLiAqLwouYmxrLW5rZHdnIC5sZWFkLmxlYWQtYm9keS1sZWZ0LAouYmxrLW5rZHdnIC5sZWFkLmxlYWQtYm9keS1yaWdodHtmbGV4LWRpcmVjdGlvbjpyb3c7YXNwZWN0LXJhdGlvOjIuOTYyOTYyOTYyOTYyOTYzO30KLmJsay1ua2R3ZyAubGVhZC5sZWFkLWJvZHktbGVmdHtmbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZTt9Ci5ibGstbmtkd2cgLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtbWVkaWEsCi5ibGstbmtkd2cgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLW1lZGlhe2ZsZXg6MCAwIDYwJTt9Ci5ibGstbmtkd2cgLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYm9keSwKLmJsay1ua2R3ZyAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtYm9keXtmbGV4OjAgMCBjYWxjKDQwJSArIDMwcHgpO2lubGluZS1zaXplOmF1dG87bWFyZ2luLXRvcDowO2Jsb2NrLXNpemU6Y2FsYygxMDAlIC0gNDJweCk7YWxpZ24tc2VsZjpjZW50ZXI7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7fQouYmxrLW5rZHdnIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWJvZHl7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6LTMwcHg7fQouYmxrLW5rZHdnIC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1ib2R5e21hcmdpbi1sZWZ0Oi0zMHB4O21hcmdpbi1yaWdodDowO30KLyogUG9zaWNp824gJ2JvdHRvbS1mdWxsJyBkZWwgbGVhZC1ib2R5ICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuCiAgIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuIGlubGluZS1zaXplCiAgIGVuIHZleiBkZSB3aWR0aCBwb3IgZWwgbWlzbW8gbW90aXZvIHF1ZSBlbCByZXN0byBkZSBlc3RlIGJsb3F1ZSAoZXZpdGFyCiAgIGxhIHBhbGFicmEgIndpZHRoOiIgcXVlIGVsIENNUyBkZWwgdXN1YXJpbyBlbGltaW5hIGFsIHBlZ2FyIEhUTUwvQ1NTCiAgIGRpcmVjdGFtZW50ZSkuICovCi5ibGstbmtkd2cgLmxlYWQubGVhZC1ib2R5LWJvdHRvbS1mdWxsIC5sZWFkLWJvZHl7CiAgaW5saW5lLXNpemU6MTAwJTsKICBtYXJnaW46MDsKICBwYWRkaW5nLXRvcDozMHB4OwogIHBhZGRpbmctYm90dG9tOjMwcHg7CiAgYm9yZGVyOm5vbmU7Cn0KLyogRXRpcXVldGEgZGUgZXhjbHVzaXZhIChvIHRleHRvIHBlcnNvbmFsaXphZG8pICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvCiAgIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstbmtkd2cgLmxlYWQtZXhjbHVzaXZlLXRhZ3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtsZWZ0OjEwcHg7ei1pbmRleDozO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7bGV0dGVyLXNwYWNpbmc6MC41cHg7cGFkZGluZzoycHggOHB4O2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXNpemU6LjhlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6I2ZmZjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7cG9pbnRlci1ldmVudHM6bm9uZTt9Ci8qIFNlbGVjdG9yIGNvbiAzIGNsYXNlcyAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhICgiLmxlYWQtbWVkaWEgaW1nIiB0YW1iaeluCiAgIG1hdGNoZWEgZXN0ZSA8aW1nPiB5IGxlIGdhbmFiYSBlbiBlc3BlY2lmaWNpZGFkKS4gKi8KLmJsay1ua2R3ZyAubGVhZC1leGNsdXNpdmUtdGFnIC5sZWFkLWV4Y2x1c2l2ZS10YWctaWNvbntwb3NpdGlvbjpzdGF0aWM7aW5zZXQ6YXV0bztpbmxpbmUtc2l6ZToxNHB4O2Jsb2NrLXNpemU6MTRweDtvYmplY3QtZml0OmNvbnRhaW47ZmxleDowIDAgYXV0bztkaXNwbGF5OmJsb2NrO30KLmJsay1ua2R3ZyAubGVhZC1jYXR7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDtwYWRkaW5nOjJweCA4cHg7dHJhbnNmb3JtOnNrZXdZKC02ZGVnKTttYXJnaW4tdG9wOi0xNXB4O21hcmdpbi1ib3R0b206MTBweDt9Ci5ibGstbmtkd2cgLmxlYWQta2lja2VyLCAuYmxrLW5rZHdnIC5sZWFkLXN1YnRpdGxlewogIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjt0ZXh0LXRyYW5zZm9ybTpub25lO21hcmdpbjowOwp9Ci5ibGstbmtkd2cgLmxlYWQta2lja2Vye2ZvbnQtd2VpZ2h0OjcwMDt9Ci5ibGstbmtkd2cgLmxlYWQtc3VidGl0bGV7Zm9udC13ZWlnaHQ6NjAwO30KLyogVGFtYfFvL2ludGVybGluZWFkby9jb2xvciBkZSBhbnRldO10dWxvIHkgc3VidO10dWxvIGVuIERlc2sgKHZhbG9yZXMgcG9yCiAgIGRlZmVjdG8gZGVsIGJsb3F1ZTsgZWwgb3ZlcnJpZGUgZGUgTfN2aWwgdmEgZW4gZWwgQGNvbnRhaW5lciBkZSBt4XMgYWJham8sCiAgIHlhIHF1ZSBlbCBIVE1MIGV4cG9ydGFkbyBlcyByZXNwb25zaXZlIHkgbm8gZGVwZW5kZSBkZSBxdekgdmlzdGEgdHV2aWVyYXMKICAgc2VsZWNjaW9uYWRhIGVuIGVsIGdlc3RvciBhbCBleHBvcnRhci9jb3BpYXIpLiAqLwouYmxrLW5rZHdnIC5sZWFkLWtpY2tlcntmb250LXNpemU6MS4zMTI1cmVtO2xpbmUtaGVpZ2h0OjEuMTtjb2xvcjojMDBBN0ZGO30KLmJsay1ua2R3ZyAubGVhZC1zdWJ0aXRsZXtmb250LXNpemU6MS4zMTI1cmVtO2xpbmUtaGVpZ2h0OjEuMTtjb2xvcjojMDBBN0ZGO30KLyogdGV4dC13cmFwOmJhbGFuY2UgJiM4MjEyOyBtaXNtbyBjcml0ZXJpbyBxdWUgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbAogICBkZWwgZ2VzdG9yICh2ZXIgY29tZW50YXJpbyBkZXRhbGxhZG8ganVudG8gYSBlc2EgcmVnbGEpOiByZXBhcnRlIGxhcwogICBs7W5lYXMgZGVsIHRpdHVsYXIgZGUgZm9ybWEgbeFzIHVuaWZvcm1lIGRlbnRybyBkZSBjYWRhIGRpc3Bvc2l0aXZvLCBzaW4KICAgcHJldGVuZGVyIGlndWFsYXIgZWwgbvptZXJvIGRlIGztbmVhcyBlbnRyZSBwbGF0YWZvcm1hcyBkaXN0aW50YXMuICovCi5ibGstbmtkd2cgLmxlYWQtdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDtmb250LXNpemU6MS44cmVtO2xpbmUtaGVpZ2h0OjE7bWFyZ2luOjA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTt0ZXh0LXdyYXA6YmFsYW5jZTt9Ci8qIFRpdHVsYXIgY29uIHNhbHRvcyBkZSBs7W5lYSBpbmRlcGVuZGllbnRlcyBwb3IgdmlzdGEgKHZlciBidWlsZFNjb3BlZEhUTUwpOgogICBzZSBnZW5lcmFuIGxvcyBkb3MgdGV4dG9zIChEZXNrL03zdmlsKSB5IGFxde0gc2UgbXVlc3RyYSBzb2xvIHVubyBzZWf6biBlbAogICBhbmNobyByZWFsIGRlbCBjb250ZW5lZG9yICYjODIxMjsgZWwgbWlzbW8gbWVjYW5pc21vIGRlIEBjb250YWluZXIgcXVlIHlhIHVzYSBlbAogICByZXN0byBkZWwgSFRNTCBleHBvcnRhZG8gcGFyYSBhZGFwdGFyc2Ugc2luIGRlcGVuZGVyIGRlIEpTLiAqLwouYmxrLW5rZHdnIC5sZWFkLXRpdGxlLW1vYmlsZXtkaXNwbGF5Om5vbmU7fQovKiBBbnRldO10dWxvL3N1YnTtdHVsbyBjb24gc2FsdG9zIGRlIGztbmVhIGluZGVwZW5kaWVudGVzIHBvciB2aXN0YTogbWlzbW8KICAgbWVjYW5pc21vIGRlIEBjb250YWluZXIgcXVlIGVsIHRpdHVsYXIgKHZlciBhcnJpYmEpLiAqLwouYmxrLW5rZHdnIC5sZWFkLWtpY2tlci1tb2JpbGUsIC5ibGstbmtkd2cgLmxlYWQtc3VidGl0bGUtbW9iaWxle2Rpc3BsYXk6bm9uZTt9Ci8qIFRpdHVsYXIgZGUgbm90aWNpYSByZWxhY2lvbmFkYSAoY29sdW1uYSkgY29uIHRleHRvIHByb3BpbyBlbiBN83ZpbCAodmVyCiAgIGl0ZW0udGl0bGVNb2JpbGUgZW4gYnVpbGRDb2x1bW5JdGVtVGl0bGVIVE1MKTogbWlzbW8gbWVjYW5pc21vIGRlCiAgIEBjb250YWluZXIgcXVlIGVsIHRpdHVsYXIgcHJpbmNpcGFsIGRlIGFycmliYS4gKi8KLmJsay1ua2R3ZyAucmVsYXRlZC10aXRsZS1tb2JpbGV7ZGlzcGxheTpub25lO30KLmJsay1ua2R3ZyAuYXV0aG9yLWxhYmVse2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjIwMDtmb250LXNpemU6LjhlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dGV4dC1hbGlnbjpyaWdodDtkaXNwbGF5OmJsb2NrfQouYmxrLW5rZHdnIC5jb2x1bW57ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweDtqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47fQouYmxrLW5rZHdnIC5jb2x1bW4taXRlbXtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlcjoxcHggc29saWQgI2U3ZWJlZTtwYWRkaW5nOjEwcHg7YmFja2dyb3VuZDojZmZmO2Jsb2NrLXNpemU6c3RyZXRjaDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2U7fQouYmxrLW5rZHdnIC50aHVtYntwb3NpdGlvbjpyZWxhdGl2ZTtpbmxpbmUtc2l6ZToxMDAlO2FzcGVjdC1yYXRpbzo0LzM7YmFja2dyb3VuZDojZWVlO292ZXJmbG93OmhpZGRlbn0KLmJsay1ua2R3ZyAudGh1bWIgaW1nLAouYmxrLW5rZHdnIC50aHVtYiB2aWRlb3twb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2lubGluZS1zaXplOjEwMCU7YmxvY2stc2l6ZToxMDAlO29iamVjdC1maXQ6Y292ZXJ9Ci5ibGstbmtkd2cgLnRodW1iIC5wbGF5LXNxdWFyZSwKLmJsay1ua2R3ZyAubWVkaWEtYmxvY2std3JhcCAucGxheS1zcXVhcmV7CiAgcG9zaXRpb246YWJzb2x1dGU7IGJvdHRvbTo1cHg7IGxlZnQ6NXB4OwogIGlubGluZS1zaXplOjI1cHg7YmxvY2stc2l6ZToyNXB4O2JvcmRlci1yYWRpdXM6MnB4O2Rpc3BsYXk6aW5saW5lLWdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyOwogIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjYpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjE4KTsKICBjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cywgdHJhbnNmb3JtIC4xMnM7CiAgei1pbmRleDoyOyBhbmltYXRpb246YmxrLW5rZHdnLWJsaW5rIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlOwp9Ci5ibGstbmtkd2cgLnRodW1iIC5wbGF5LXNxdWFyZTo6YmVmb3JlLAouYmxrLW5rZHdnIC5tZWRpYS1ibG9jay13cmFwIC5wbGF5LXNxdWFyZTo6YmVmb3JlewogIGNvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztpbmxpbmUtc2l6ZTowO2Jsb2NrLXNpemU6MDsKICBib3JkZXItbGVmdDo2cHggc29saWQgI2ZmZjtib3JkZXItdG9wOjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjVweCBzb2xpZCB0cmFuc3BhcmVudDsKICBtYXJnaW4tbGVmdDoycHg7Cn0KLmJsay1ua2R3ZyAudGh1bWIgLnBsYXktc3F1YXJlOmhvdmVyLAouYmxrLW5rZHdnIC5tZWRpYS1ibG9jay13cmFwIC5wbGF5LXNxdWFyZTpob3ZlcnsgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuODUpOyB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTsgfQouYmxrLW5rZHdnIC5zdGFjay10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToxN3B4O2xpbmUtaGVpZ2h0OjEuMTVlbTttYXJnaW46MDtjb2xvcjojMmMzZTUzO30KLmJsay1ua2R3ZyAuc3RhY2stYXV0aG9ye2ZvbnQtZmFtaWx5OiJhbXBsaXR1ZGUtYm9vayIsc2Fucy1zZXJpZjtjb2xvcjojODI4NTk1O2ZvbnQtd2VpZ2h0OjIwMDtmb250LXNpemU6LjhyZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDoxMXB4O2xldHRlci1zcGFjaW5nOjA7dGV4dC1hbGlnbjpyaWdodDt9Ci8qIFNpbiBlc3RhIHJlZ2xhIGVsIGF1dG9yIHF1ZWRhIHBlZ2FkbyBqdXN0byBkZWJham8gZGVsIHRpdHVsYXIgZW4gdmV6IGRlCiAgIGFiYWpvIGRlIGxhIHRhcmpldGE6IC5tb2Qtc3RhY2sgbmVjZXNpdGEgc2VyIGZsZXgtY29sdW1uIGNvbgogICBqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbiBwYXJhIHF1ZSBlbCBodWVjbyBzb2JyYW50ZSAoY3VhbmRvIGxhCiAgIHRhcmpldGEgY3JlY2UgbeFzIHF1ZSBzdSBjb250ZW5pZG8sIHZlciAuY29sdW1uLWl0ZW06bm90KC5sYXlvdXQtbWVkaWEtYmxvY2spCiAgIG3hcyBhYmFqbykgZW1wdWplIGVsIGF1dG9yIGhhY2lhIGVsIGJvcmRlIGluZmVyaW9yLiAqLwouYmxrLW5rZHdnIC5tb2Qtc3RhY2t7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtmbGV4OjEgMSBhdXRvO30KLyogRXN0aWxvICJmb3RvIHBlcXVl8WEgKyB0aXR1bGFyIjogZm90byA0OjMgYSBsYSBpenF1aWVyZGEsIHRleHRvIGEgbGEgZGVyZWNoYS4gKi8KLmJsay1ua2R3ZyAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLWxlZnR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxMTBweCAxZnI7Z2FwOjEwcHg7fQovKiBFc3RpbG8gInNvbG8gdGV4dG8iIChwb3IgZGVmZWN0byk6IGVsIGF1dG9yIHNlIHBvc2ljaW9uYSBlbiBhYnNvbHV0bywKICAgYW5jbGFkbyBhIGxhIGVzcXVpbmEgaW5mZXJpb3IgZGVyZWNoYSBkZSBsYSB0YXJqZXRhIChpZ3VhbCBxdWUgZWwgcGxheSBkZQogICBsYXMgbWluaWF0dXJhcyksIGVuIHZleiBkZSBkZXBlbmRlciBkZSBxdWUgZWwgYmxvcXVlIGRlIHRleHRvIHRlbmdhIGh1ZWNvCiAgIGRlIHNvYnJhIHBhcmEgZW1wdWphcmxvIGFiYWpvIGNvbiBmbGV4Ym94ICYjODIxMjsgY29uIHTtdHVsb3MgZGUgMi0zIGztbmVhcyBlc2UKICAgaHVlY28gbm8gZXhpc3RlIHkgZWwgYXV0b3IgbnVuY2EgbGxlZ2FiYSBhIGJhamFyLiBwYWRkaW5nLWJvdHRvbSBlbgogICBsZWZ0LWJvZHkgcmVzZXJ2YSBlbCBlc3BhY2lvIHBhcmEgcXVlIGVsIHTtdHVsbyBubyBzZSBzb2xhcGUgY29uIOlsLiAqLwouYmxrLW5rZHdnIC5jb2x1bW4taXRlbS5sYXlvdXQtdGl0bGUtb25seSAubGVmdC1ib2R5e3BhZGRpbmctYm90dG9tOjMzcHg7fQouYmxrLW5rZHdnIC5jb2x1bW4taXRlbS5sYXlvdXQtdGl0bGUtb25seSAuc3RhY2stYXV0aG9ye3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjEwcHg7Ym90dG9tOjEwcHg7bWFyZ2luLXRvcDowO30KLmJsay1ua2R3ZyAubGVmdC10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToyMXB4O2xpbmUtaGVpZ2h0OjEuMTU7Y29sb3I6IzJjM2U1MzttYXJnaW46MDt0ZXh0LWFsaWduOmxlZnQ7fQouYmxrLW5rZHdnIC5sZWZ0LXBsYXl7CiAgZmxleDowIDAgYXV0bztpbmxpbmUtc2l6ZToxNXB4O2Jsb2NrLXNpemU6MTVweDtib3JkZXItcmFkaXVzOjJweDsKICBiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjMDBhN2ZmOwogIGRpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzowOwogIHZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1ib3R0b206IDRweDsKfQouYmxrLW5rZHdnIC5sZWZ0LXBsYXk6OmJlZm9yZXsKICBjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aW5saW5lLXNpemU6MDtibG9jay1zaXplOjA7CiAgYm9yZGVyLWxlZnQ6NHB4IHNvbGlkICMwMGE3ZmY7Ym9yZGVyLXRvcDozcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbTozcHggc29saWQgdHJhbnNwYXJlbnQ7bWFyZ2luLWxlZnQ6MXB4Owp9Ci5ibGstbmtkd2cgLnJlbGF0ZWQtbGl2ZS10YWd7CiAgZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7ZmxleDowIDAgYXV0bzsKICBmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwOwogIGZvbnQtc2l6ZTouN3JlbTtsaW5lLWhlaWdodDowLjg7bGV0dGVyLXNwYWNpbmc6LjNweDtjb2xvcjojRkY1MDUwOwogIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjRkY1MDUwOwogIHBhZGRpbmc6M3B4IDRweCAycHggNHB4O21hcmdpbi1yaWdodDo2cHg7bWFyZ2luLWJvdHRvbTo0cHg7dmVydGljYWwtYWxpZ246bWlkZGxlOwogIHdoaXRlLXNwYWNlOm5vd3JhcDsKfQouYmxrLW5rZHdnIC5yZWxhdGVkLWVkaXRvcmlhbC10YWd7CiAgZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7ZmxleDowIDAgYXV0bzsKICBmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwOwogIGZvbnQtc2l6ZTouN3JlbTtsaW5lLWhlaWdodDowLjg7bGV0dGVyLXNwYWNpbmc6LjNweDtjb2xvcjojRkFCMTIxOwogIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjRkFCMTIxOwogIHBhZGRpbmc6M3B4IDRweCAycHggNHB4O21hcmdpbi1yaWdodDo2cHg7bWFyZ2luLWJvdHRvbTo0cHg7dmVydGljYWwtYWxpZ246bWlkZGxlOwogIHdoaXRlLXNwYWNlOm5vd3JhcDsKfQouYmxrLW5rZHdnIC5wbGF5LWJ1dHRvbnsKICAvKiBBbmNoby9hbHRvIGZpam9zIGVuIHZleiBkZSBhc3BlY3QtcmF0aW86MS8xICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvCiAgICAgZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YSAoZWwKICAgICBj4WxjdWxvIGRlICJzaHJpbmstdG8tZml0IiBwYXJhIHVuIDxidXR0b24+IGVuIGFic29sdXRvIHNpbiB0YW1h8W8KICAgICBleHBs7WNpdG8gbm8gZXMgZmlhYmxlIGVudHJlIG1vdG9yZXM7IGVuIFdlYktpdC9pT1MgZGFiYSB1biByZWN04W5ndWxvCiAgICAgdmVydGljYWwgZXN0cmVjaO1zaW1vIGVuIHZleiBkZSB1biBjdWFkcmFkbykuICovCiAgYXBwZWFyYW5jZTpub25lOy13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lOwogIHBvc2l0aW9uOmFic29sdXRlO3RvcDoxMHB4O2xlZnQ6MTBweDsKICBpbmxpbmUtc2l6ZTozNHB4O2Jsb2NrLXNpemU6MzRweDsKICBkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzoxMHB4IDEwcHggMTBweCAxMnB4OwogIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNyk7CiAgYm9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC40Mik7Y29sb3I6I2ZmZjtib3JkZXItcmFkaXVzOjNweDsKICBjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjI7YW5pbWF0aW9uOmJsay1ua2R3Zy1ibGluayAycyBlYXNlLWluLW91dCBpbmZpbml0ZTsKfQouYmxrLW5rZHdnIC5wbGF5LWJ1dHRvbi5wb3MtdG9wLXJpZ2h0e3RvcDoxMHB4O3JpZ2h0OjEwcHg7bGVmdDphdXRvO2JvdHRvbTphdXRvO30KLmJsay1ua2R3ZyAucGxheS1idXR0b24ucG9zLWJvdHRvbS1sZWZ0e2JvdHRvbToxMHB4O2xlZnQ6MTBweDt0b3A6YXV0bztyaWdodDphdXRvO30KLmJsay1ua2R3ZyAucGxheS1idXR0b24ucG9zLWJvdHRvbS1yaWdodHtib3R0b206MTBweDtyaWdodDoxMHB4O3RvcDphdXRvO2xlZnQ6YXV0bzt9Ci8qIENvbiBlbCB0ZXh0byAobGVhZC1ib2R5KSBhIGxhIGl6cXVpZXJkYSBvIGxhIGRlcmVjaGEsIGVzZSBibG9xdWUgc29sYXBhCiAgIDMwcHggZGVsIGxhZG8gZGUgbGEgZm90by927WRlbyBwZWdhZG8gYSDpbCAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbwogICBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLW5rZHdnIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5wbGF5LWJ1dHRvbi5wb3MtdG9wLWxlZnQsCi5ibGstbmtkd2cgLmxlYWQubGVhZC1ib2R5LWxlZnQgLnBsYXktYnV0dG9uLnBvcy1ib3R0b20tbGVmdHsgbGVmdDo0MHB4OyB9Ci5ibGstbmtkd2cgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5wbGF5LWJ1dHRvbi5wb3MtdG9wLXJpZ2h0LAouYmxrLW5rZHdnIC5sZWFkLmxlYWQtYm9keS1yaWdodCAucGxheS1idXR0b24ucG9zLWJvdHRvbS1yaWdodHsgcmlnaHQ6NDBweDsgfQovKiBQb3NpY2nzbiAnYm90dG9tJyBwb3IgZGVmZWN0bzogZWwgbGVhZC1ib2R5IHNvbGFwYSAzMHB4IHNvYnJlIGVsIGJvcmRlCiAgIElORkVSSU9SIGRlIGxhIGZvdG8vdu1kZW8gJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEKICAgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gTm8gYXBsaWNhIGNvbiAnYm90dG9tLWZ1bGwnCiAgIG5pIGNvbiAnbGVmdCcvJ3JpZ2h0JyAoYWp1c3RlIGhvcml6b250YWwgcHJvcGlvLCB2ZXIgYXJyaWJhKS4gKi8KLmJsay1ua2R3ZyAubGVhZDpub3QoLmxlYWQtYm9keS1sZWZ0KTpub3QoLmxlYWQtYm9keS1yaWdodCk6bm90KC5sZWFkLWJvZHktYm90dG9tLWZ1bGwpIC5wbGF5LWJ1dHRvbi5wb3MtYm90dG9tLWxlZnQsCi5ibGstbmtkd2cgLmxlYWQ6bm90KC5sZWFkLWJvZHktbGVmdCk6bm90KC5sZWFkLWJvZHktcmlnaHQpOm5vdCgubGVhZC1ib2R5LWJvdHRvbS1mdWxsKSAucGxheS1idXR0b24ucG9zLWJvdHRvbS1yaWdodHsgYm90dG9tOjQwcHg7IH0KLmJsay1ua2R3ZyAucGxheS1idXR0b24gLnBsYXktaWNvbnsKICBpbmxpbmUtc2l6ZTowO2Jsb2NrLXNpemU6MDsKICBib3JkZXItbGVmdDoxMHB4IHNvbGlkICNmZmY7Ym9yZGVyLXRvcDo2cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQgdHJhbnNwYXJlbnQ7Cn0KLmJsay1ua2R3ZyAucGxheS1idXR0b24gLnBsYXktdGV4dHtkaXNwbGF5Om5vbmU7fQoKLyogVGl0dWxhcmVzIGFuaW1hZG9zIChjYXBhIGFsdGVybmF0aXZhIHNvYnJlIGxlYWQtbWVkaWEpICYjODIxMjsgdmVyIG1pc21vCiAgIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEKICAgaGVycmFtaWVudGEuIENhZGEgdGl0dWxhciB0aWVuZSBzdSBwcm9waWEgcG9zaWNp824gKGNsYXNlIHBvcy0qLCB2ZXIKICAgYnVpbGRTY29wZWRIVE1MKSB5IHNlIHJldmVsYSBs7W5lYSBwb3IgbO1uZWEgKHVuYSB2ZXogbWVkaWRhcyBzdXMgbO1uZWFzCiAgIHJlYWxlcyBwb3IgZWwgc2NyaXB0IHN0YW5kYWxvbmUsIHZlciBidWlsZEFuaW1IZWFkbGluZXNTY3JpcHQpIGNvbiB1bmEKICAgY2FqYSBkZSBmb25kbyBkZXRy4XMgZGUgY2FkYSBs7W5lYSB5IHVuIGZhZGUgZGUgb3BhY2lkYWQgZW50cmUgdGl0dWxhcmVzLiAqLwouYmxrLW5rZHdnIC5sZWFkLWFuaW0taGVhZGxpbmVzewogIHBvc2l0aW9uOmFic29sdXRlOwogIGluc2V0OjA7CiAgei1pbmRleDo0OwogIHBvaW50ZXItZXZlbnRzOm5vbmU7Cn0KLmJsay1ua2R3ZyAubGVhZC1hbmltLWhlYWRsaW5lewogIHBvc2l0aW9uOmFic29sdXRlOwogIGxlZnQ6MTVweDsKICBvcGFjaXR5OjA7Cn0KLmJsay1ua2R3ZyAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1ib3R0b20tbGVmdHsgYm90dG9tOjYwcHg7IH0KLmJsay1ua2R3ZyAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtbGVmdHsgdG9wOjYwcHg7IH0KLmJsay1ua2R3ZyAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1taWRkbGUtbGVmdHsgdG9wOjUwJTsgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7IH0KLmJsay1ua2R3ZyAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtcmlnaHQsCi5ibGstbmtkd2cgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtbWlkZGxlLXJpZ2h0LAouYmxrLW5rZHdnIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1yaWdodHsgbGVmdDphdXRvOyByaWdodDoxNXB4OyB9Ci5ibGstbmtkd2cgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtdG9wLXJpZ2h0eyB0b3A6NjBweDsgfQouYmxrLW5rZHdnIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1yaWdodHsgdG9wOjUwJTsgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7IH0KLmJsay1ua2R3ZyAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1ib3R0b20tcmlnaHR7IGJvdHRvbTo2MHB4OyB9Ci8qIENvbiBlbCB0ZXh0byAobGVhZC1ib2R5KSBhIGxhIGl6cXVpZXJkYSBvIGxhIGRlcmVjaGEsIGVzZSBibG9xdWUgc29sYXBhCiAgIDMwcHggZGVsIGxhZG8gZGUgbGEgZm90by927WRlbyBwZWdhZG8gYSDpbCAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbwogICBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLW5rZHdnIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLXRvcC1sZWZ0LAouYmxrLW5rZHdnIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1sZWZ0LAouYmxrLW5rZHdnIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1sZWZ0eyBsZWZ0OjQwcHg7IH0KLmJsay1ua2R3ZyAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtdG9wLXJpZ2h0LAouYmxrLW5rZHdnIC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1taWRkbGUtcmlnaHQsCi5ibGstbmtkd2cgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1yaWdodHsgcmlnaHQ6NDBweDsgfQouYmxrLW5rZHdnIC5sZWFkLWFuaW0taGVhZGxpbmUuaXMtYWN0aXZleyBvcGFjaXR5OjE7IH0KLmJsay1ua2R3ZyAubGVhZC1hbmltLWxpbmV7CiAgcG9zaXRpb246cmVsYXRpdmU7CiAgZGlzcGxheTp0YWJsZTsKICBmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7CiAgZm9udC13ZWlnaHQ6OTAwOwogIGNvbG9yOiNmZmY7CiAgcGFkZGluZzoycHggOHB4OwogIGNsaXAtcGF0aDppbnNldCgwIDEwMCUgMCAwKTsKICBvcGFjaXR5OjE7CiAgdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgZWFzZTsKfQouYmxrLW5rZHdnIC5sZWFkLWFuaW0tbGluZS5pcy1oaWRpbmd7IG9wYWNpdHk6MDsgfQovKiBTb2xhcGUgZGUgMXB4IGVudGVyYSBlbnRyZSBs7W5lYXMgcGFyYSBjZXJyYXIgZWwgaGlsbyBkZSBzdWItcO14ZWwgcXVlCiAgIHB1ZWRlIHF1ZWRhciBlbnRyZSBzdXMgY2FqYXMgZGUgZm9uZG8gKHJlZG9uZGVvIGRlIGFsdHVyYXMgZnJhY2Npb25hcmlhcykgJiM4MjEyOwogICB2ZXIgbWlzbW8gY29tZW50YXJpbywgZGV0YWxsYWRvLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsLiAqLwouYmxrLW5rZHdnIC5sZWFkLWFuaW0tbGluZSArIC5sZWFkLWFuaW0tbGluZXsKICBtYXJnaW4tdG9wOi0xcHg7Cn0KLmJsay1ua2R3ZyAubGVhZC1hbmltLWxpbmU6Zmlyc3QtY2hpbGR7IHBhZGRpbmctdG9wOjZweDsgfQouYmxrLW5rZHdnIC5sZWFkLWFuaW0tbGluZTpsYXN0LWNoaWxkeyBwYWRkaW5nLWJvdHRvbTo2cHg7IH0KLmJsay1ua2R3ZyAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtcmlnaHQgLmxlYWQtYW5pbS1saW5lLAouYmxrLW5rZHdnIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1yaWdodCAubGVhZC1hbmltLWxpbmUsCi5ibGstbmtkd2cgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtYm90dG9tLXJpZ2h0IC5sZWFkLWFuaW0tbGluZXsgbWFyZ2luLWxlZnQ6YXV0bzsgbWFyZ2luLXJpZ2h0OjA7IH0KLmJsay1ua2R3ZyAubGVhZC1hbmltLWhlYWRsaW5lcy5pcy1wb3NpdGl2ZSAubGVhZC1hbmltLWxpbmV7IGNvbG9yOiMwRTExMUE7IH0KLmJsay1ua2R3ZyAubGVhZC1hbmltLWxpbmUtYmd7IHBvc2l0aW9uOmFic29sdXRlOyBpbnNldDowOyB6LWluZGV4Oi0xOyB9Ci5ibGstbmtkd2cgLmxlYWQtYW5pbS1saW5lLXRleHR7IHBvc2l0aW9uOnJlbGF0aXZlOyB9CkBrZXlmcmFtZXMgYmxrLW5rZHdnLWFuaW0tbGluZS1yZXZlYWx7IHRveyBjbGlwLXBhdGg6aW5zZXQoMCAwIDAgMCk7IH0gfQoKLyogQW5jaG9yIG92ZXJsYXkgZm9yIGZ1bGwgY2xpY2thYmxlIGxlYWQgKi8KLmJsay1ua2R3ZyAubGVhZC1saW5re3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7ei1pbmRleDoxfQoKLyogSG92ZXIgb3BhY2l0eSBhbmltYXRpb24gKi8KLmJsay1ua2R3ZyAubGVhZDpob3ZlciAubGVhZC10aXRsZSwKLmJsay1ua2R3ZyAuY29sdW1uLWl0ZW06aG92ZXJ7b3BhY2l0eTouOH0KLyogRm90byBwcmluY2lwYWwgKGZhbGxiYWNrL3NpbmdsZSkgbyBjYXJydXNlbCBkZSBmb3Rvczogb3BhY2lkYWQgMC45IGFsCiAgIHBhc2FyIGVsIHJhdPNuIHBvciBsYSB0YXJqZXRhICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuCiAgIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuIE5vIGFwbGljYSBhIHbtZGVvIG5pIGFsCiAgIGNvbXBhcmFkb3IgYW50ZXMvZGVzcHXpcy4gKi8KLmJsay1ua2R3ZyAubGVhZC1tZWRpYSA+IGltZywKLmJsay1ua2R3ZyAubGVhZC1tZWRpYSA+IC5sZWFkLWNhcm91c2Vse3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTt9Ci5ibGstbmtkd2cgLmxlYWQ6aG92ZXIgLmxlYWQtbWVkaWEgPiBpbWcsCi5ibGstbmtkd2cgLmxlYWQ6aG92ZXIgLmxlYWQtbWVkaWEgPiAubGVhZC1jYXJvdXNlbHtvcGFjaXR5Oi45O30KLyogRW4gZWwgYW5jaG8gbfN2aWwgKG1pc21vIEBjb250YWluZXIgcXVlIGVsIHJlc3RvIGRlbCBIVE1MIGV4cG9ydGFkbykgbm8KICAgYXBsaWNhIGVzdGEgYW5pbWFjafNuIGRlIG9wYWNpZGFkIHNvYnJlIGxhIG5vdGljaWEgcHJpbmNpcGFsOiB2YSBERVNQVclTCiAgIGRlIGxhIHJlZ2xhIGdlbmVyYWwgZGUgYXJyaWJhIChtaXNtYSBlc3BlY2lmaWNpZGFkKSBwYXJhIHBvZGVyIGdhbmFybGUuCiAgIE9taXRpZG8sIGlndWFsIHF1ZSBlbCBibG9xdWUgZGUgdGlwb2dyYWbtYSBkZSBhcnJpYmEsIG1pZW50cmFzIGxhCiAgIHNpbXVsYWNp824gZGUgYW5jaG8gZXN06SBhY3RpdmEgKHZlciBsZWFkV2lkdGhQcmV2aWV3KS4gKi8KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjg2MHB4KXsKICAuYmxrLW5rZHdnIC5sZWFkOmhvdmVyIC5sZWFkLXRpdGxlLAogIC5ibGstbmtkd2cgLmxlYWQ6aG92ZXIgLmxlYWQtbWVkaWEgPiBpbWcsCiAgLmJsay1ua2R3ZyAubGVhZDpob3ZlciAubGVhZC1tZWRpYSA+IC5sZWFkLWNhcm91c2Vse29wYWNpdHk6MTt9Cn0KCi8qIEFuaW1hY2nzbiBjb21wYXJ0aWRhIHBsYXkgcHJpbmNpcGFsICsgY3VhZHJhZG9zIHBsYXkgYXBpbGFkYXMgKi8KQGtleWZyYW1lcyBibGstbmtkd2ctYmxpbmt7CiAgMCUsMTAwJXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC43KX0KICA1MCV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMTY1LDI1NSwwLjkpfQp9Ci8qIENhYmVjZXJhICovCi5ibGstbmtkd2cgLmJnLXNlY3Rpb24tdGl0bGV7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW46MTBweCAwIDMycHh9Ci5ibGstbmtkd2cgLmZuZC1saW5lYXtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6NXB4O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7bWFyZ2luLXRvcDotMThweDtib3JkZXItdG9wOjFweCBzb2xpZCAjMzMzO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICMzMzN9Ci5ibGstbmtkd2cgLnNlY3Rpb24tdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dGV4dC1hbGlnbjpjZW50ZXI7bWFyZ2luOjA7bGluZS1oZWlnaHQ6MS4yO2xldHRlci1zcGFjaW5nOi0xcHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2JhY2tncm91bmQ6I2ZmZjtwYWRkaW5nOjRweCAxM3B4O2JvcmRlcjoxcHggc29saWQgIzBFMTExQTt0cmFuc2Zvcm06cm90YXRlWCg1ZGVnKSByb3RhdGVZKC0yNWRlZykgc2tld1goMGRlZyk7Zm9udC1zaXplOjQycHg7Y29sb3I6IzBFMTExQTt9CkBjb250YWluZXIgKG1heC1pbmxpbmUtc2l6ZTo4NjBweCl7LmJsay1ua2R3ZyAuc2VjdGlvbi10aXRsZXtmb250LXNpemU6MjdweDtwYWRkaW5nOjAgMTBweH19Ci8qIENhYmVjZXJhICYjODIxMjsgRGlzZfFvIDIgKHRpdHVsYXIgKyBjYXJydXNlbCBkZSBsb2dvdGlwb3MpICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwKICAgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstbmtkd2cgLmhlYWRlcjJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MjBweDtwYWRkaW5nLWJvdHRvbTo1cHg7bWFyZ2luLWJvdHRvbToxMHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkICMwRTExMUE7fQovKiBhbGlnbi1zZWxmOmZsZXgtZW5kIGZpamEgZWwgdGl0dWxhciBTSUVNUFJFIGEgMTVweCBkZSBsYSBs7W5lYSBzZXBhcmFkb3JhCiAgIGVuIERlc2sgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zCiAgIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay1ua2R3ZyAuaGVhZGVyMi1sZWZ0e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7ZmxleDoxIDEgNTAlO21pbi1pbmxpbmUtc2l6ZTowO2FsaWduLXNlbGY6ZmxleC1lbmQ7fQouYmxrLW5rZHdnIC5oZWFkZXIyLXRhZ3N7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2ZsZXg6MCAwIGF1dG87fQovKiBNaXNtbyB0YW1h8W8vdGlwb2dyYWbtYSBxdWUgLmxlYWQtZXhjbHVzaXZlLXRhZyAobGEgZGUgbGEgbm90aWNpYQogICBwcmluY2lwYWwpICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUKICAgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstbmtkd2cgLmhlYWRlcjItY2F0LXRhZywKLmJsay1ua2R3ZyAuaGVhZGVyMi1leGNsdXNpdmUtdGFne2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MnB4O2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo3MDA7Zm9udC1zaXplOi44ZW07bGV0dGVyLXNwYWNpbmc6LjVweDtwYWRkaW5nOjJweCA4cHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3doaXRlLXNwYWNlOm5vd3JhcDtjb2xvcjojZmZmO30KLmJsay1ua2R3ZyAuaGVhZGVyMi1leGNsdXNpdmUtdGFnLWljb257cG9zaXRpb246c3RhdGljO2luc2V0OmF1dG87aW5saW5lLXNpemU6MTRweDtibG9jay1zaXplOjE0cHg7b2JqZWN0LWZpdDpjb250YWluO2ZsZXg6MCAwIGF1dG87ZGlzcGxheTpibG9jazt9Ci5ibGstbmtkd2cgLmhlYWRlcjItdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDtmb250LXNpemU6MzZweDtsaW5lLWhlaWdodDoxLjA1O2NvbG9yOiMwRTExMUE7bWFyZ2luOjA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO21pbi1pbmxpbmUtc2l6ZTowO292ZXJmbG93LXdyYXA6YnJlYWstd29yZDt9Ci8qIFNlcGFyYWNp824gZGUgMTBweCBlbnRyZSBlbCB0ZXh0byBkZSBwYXRyb2NpbmlvIHkgZWwgbG9nbyBlbiBEZXNrICYjODIxMjsgZW4KICAgTfN2aWwgc2lndWUgc2luIHNlcGFyYWNp824gKGdhcDowLCB2ZXIgQGNvbnRhaW5lciBt4XMgYWJham8pLiAqLwouYmxrLW5rZHdnIC5oZWFkZXIyLWxvZ29zLXdyYXB7ZmxleDowIDAgYXV0bzttYXgtaW5saW5lLXNpemU6NTAlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO30KLyogRXRpcXVldGEgb3BjaW9uYWwganVudG8gYWwgY2FycnVzZWwgZGUgbG9nb3MgKHAuZWouICJQYXRyb2NpbmFkbyBwb3I6IikgJiM4MjEyOwogICB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbAogICBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay1ua2R3ZyAuaGVhZGVyMi1sb2dvcy1sYWJlbHtmb250LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtmb250LXNpemU6MTBweDtmb250LXdlaWdodDo0MDA7Y29sb3I6IzY2Nzt3aGl0ZS1zcGFjZTpub3dyYXA7fQouYmxrLW5rZHdnIC5oZWFkZXIyLWxvZ29ze3Bvc2l0aW9uOnJlbGF0aXZlO2lubGluZS1zaXplOjE2MHB4O2Jsb2NrLXNpemU6NTBweDtmbGV4LXNocmluazowO30KLmJsay1ua2R3ZyAuaGVhZGVyMi1sb2dvcyBpbWd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDttYXJnaW46YXV0bzttYXgtaW5saW5lLXNpemU6MTAwJTttYXgtYmxvY2stc2l6ZToxMDAlO29iamVjdC1maXQ6Y29udGFpbjtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC43cyBlYXNlLWluLW91dDt9Ci5ibGstbmtkd2cgLmhlYWRlcjItbG9nb3MgaW1nLmlzLWFjdGl2ZXtvcGFjaXR5OjE7fQovKiBJZ3VhbCBxdWUgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbDogcG9yIGRlYmFqbyBkZSBlc3RlIGFuY2hvIHNlCiAgIGludGVudGEgcHJpbWVybyAxIFNPTEEgRklMQSAoZXRpcXVldGFzK3RpdHVsYXIganVudG8gYWwgbG9nbywgaWd1YWwgcXVlCiAgIGVuIERlc2ssIGEgdGFtYfFvIHJlZHVjaWRvKS4gRWwgYmxvcXVlIGRlIGxvZ29zIG1hbnRpZW5lIFNJRU1QUkUgc3UKICAgZGlzcG9zaWNp824gZW4gY29sdW1uYSAoZXRpcXVldGEgZGUgcGF0cm9jaW5pbyBlbmNpbWEgZGVsIGxvZ28sCiAgIGFsaW5lYWRvcyBhIGxhIGRlcmVjaGEsIHNpbiBzZXBhcmFjafNuKSB0YW50byBlbiBlc3RhIGZpbGEg+m5pY2EgY29tbyBlbgogICBlbCByZXNndWFyZG8gZGUgYWJham8uIFNpIGVsIHRpdHVsYXIsIHN1bWFkbyBhbCBhbmNobyBkZSBsYXMgZXRpcXVldGFzCiAgIGFjdGl2YXMgKGNhdGVnb3LtYSB5L28gZXhjbHVzaXZhLCBzaSBsYXMgaGF5KSwgc3VwZXJhIGVsIDU1JSBkZWwgYW5jaG8KICAgdG90YWwgZGUgbGEgY2FiZWNlcmEgKGNhZGEgdW5vIG1lZGlkbyBhIHVuYSBzb2xhIGztbmVhKSwgZWwgc2NyaXB0CiAgIHN0YW5kYWxvbmUgYfFhZGlkbyBhbCBmaW5hbCBkZSBlc3RlIEhUTUwgKHZlcgogICBidWlsZEhlYWRlcjJTdGFja2luZ1NjcmlwdCgpKSBsbyBkZXRlY3RhIG1pZGllbmRvIHN1IGFuY2hvIG5hdHVyYWwKICAgeSBh8WFkZSBsYSBjbGFzZSAiaGVhZGVyMi1zdGFja2VkIjogZWwgYmxvcXVlIGRlCiAgIGxvZ29zIHN1YmUgZW50b25jZXMgYSBzdSBwcm9waWEgZmlsYSAoYWxpbmVhZG8gYSBsYSBkZXJlY2hhKSB5CiAgIHRpdHVsYXIrZXRpcXVldGFzIGJhamFuIGEgbGEgZmlsYSBkZSBhYmFqbywgYSBhbmNobyBjb21wbGV0byAmIzgyMTI7IG1pc21vCiAgIGxheW91dCBkZSAyIGZpbGFzIHF1ZSBoYWLtYSBhbnRlcyBzaWVtcHJlIHBvciBkZWJham8gZGUgZXN0ZSBicmVha3BvaW50LAogICBhaG9yYSBzb2xvIGNvbW8gcmVzZ3VhcmRvLiBEZW50cm8gZGUgZXNlIHJlc2d1YXJkbywgY29uIGV0aXF1ZXRhKHMpIGVsCiAgIHRpdHVsYXIgcGFzYSBhZGVt4XMgYSBzdSBQUk9QSUEgZmlsYSBhIGFuY2hvIGNvbXBsZXRvLCBkZWJham8gZGUgbGEgZmlsYSBkZSBldGlxdWV0YXMgKHZlcgogICAiLmhlYWRlcjItc3RhY2tlZCAuaGVhZGVyMi1sZWZ0IiBt4XMgYWJham8pLiBFbCBsb2dvIHNlIHJlZHVjZSB1biAyMCUKICAgKDE2MHg1MCAmIzg1OTQ7IDEyOHg0MCkuCiAgIGFsaWduLXNlbGY6ZmxleC1lbmQgZW4gaGVhZGVyMi1sZWZ0IGZpamEgZWwgdGl0dWxhciBTSUVNUFJFIGEgbG9zIDEwcHgKICAgZGVsIHBhZGRpbmctYm90dG9tIHJlc3BlY3RvIGEgbGEgbO1uZWEgc2VwYXJhZG9yYSAmIzgyMTI7IG1pc21vIGNyaXRlcmlvIHF1ZQogICBlbiBEZXNrICh2ZXIgaGVhZGVyMi1sZWZ0IG3hcyBhcnJpYmEpOiBzaW4gZXN0bywgYWwgc2VyIGVsIGJsb3F1ZSBkZQogICBsb2dvcyBt4XMgYWx0byBxdWUgZWwgdGl0dWxhciwgZWwgY2VudHJhZG8gdmVydGljYWwgZGVsIHJvdyBkZWphYmEgdW4KICAgaHVlY28gbWF5b3IgZW50cmUgZWwgdGl0dWxhciB5IGxhIGztbmVhLiBFbCBibG9xdWUgZGUgbG9nb3Mgc2lndWUKICAgY2VudHJhZG8gKHNpbiBlc2Ugb3ZlcnJpZGUpLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6NDgwcHgpewogIC5ibGstbmtkd2cgLmhlYWRlcjJ7ZmxleC1kaXJlY3Rpb246cm93O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nLWxlZnQ6MTBweDtwYWRkaW5nLXJpZ2h0OjEwcHg7cGFkZGluZy1ib3R0b206MTBweDt9CiAgLmJsay1ua2R3ZyAuaGVhZGVyMi1sZWZ0e29yZGVyOjE7YWxpZ24tc2VsZjpmbGV4LWVuZDt9CiAgLmJsay1ua2R3ZyAuaGVhZGVyMi1sb2dvcy13cmFwe29yZGVyOjI7YWxpZ24tc2VsZjpjZW50ZXI7bWF4LWlubGluZS1zaXplOm5vbmU7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dhcDowO30KICAuYmxrLW5rZHdnIC5oZWFkZXIyLWxvZ29ze2lubGluZS1zaXplOjEyOHB4O2Jsb2NrLXNpemU6NDBweDt9CiAgLmJsay1ua2R3ZyAuaGVhZGVyMi10aXRsZXtmb250LXNpemU6MjdweDt9CiAgLmJsay1ua2R3ZyAuaGVhZGVyMi5oZWFkZXIyLXN0YWNrZWR7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7fQogIC5ibGstbmtkd2cgLmhlYWRlcjIuaGVhZGVyMi1zdGFja2VkIC5oZWFkZXIyLWxlZnR7b3JkZXI6MjthbGlnbi1zZWxmOmZsZXgtc3RhcnQ7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOnN0cmV0Y2g7Z2FwOjVweDt9CiAgLmJsay1ua2R3ZyAuaGVhZGVyMi5oZWFkZXIyLXN0YWNrZWQgLmhlYWRlcjItbG9nb3Mtd3JhcHtvcmRlcjoxO21heC1pbmxpbmUtc2l6ZToxMDAlO2FsaWduLXNlbGY6ZmxleC1lbmQ7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dhcDowO30KICAvKiBSZXNndWFyZG8gaW50ZXJtZWRpbyAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICAgIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGE6IHNvbG8gZWwgdGl0dWxhciBiYWphIGEgc3UKICAgICBwcm9waWEgZmlsYSBhIGFuY2hvIGNvbXBsZXRvIGN1YW5kbyBsYXMgZXRpcXVldGFzIFPNIGNhYmVuIGp1bnRvIGFsCiAgICAgbG9nbyBwZXJvIGVsIHRpdHVsYXIgbm8uIGhlYWRlcjItbGVmdCBwYXNhIGRlIGZpbGEgYSBjb2x1bW5hCiAgICAgKGV0aXF1ZXRhcyBhcnJpYmEsIHRpdHVsYXIgZGViYWpvKSB5IHJlY3VwZXJhIGFsaWduLXNlbGY6YXV0byBwYXJhCiAgICAgY2VudHJhcnNlIHZlcnRpY2FsbWVudGUgY29udHJhIGVsIGxvZ28gKGFsaWduLXNlbGY6Y2VudGVyIGRlIGxhIHJlZ2xhCiAgICAgYmFzZSBkZSAuaGVhZGVyMi1sb2dvcy13cmFwLCBhcnJpYmEpLCBpZ3VhbCBxdWUgZW4gZWwgcmVzdG8gZGUgZXN0YWRvcy4gKi8KICAuYmxrLW5rZHdnIC5oZWFkZXIyLmhlYWRlcjItdGl0bGUtYmVsb3cgLmhlYWRlcjItbGVmdHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6c3RyZXRjaDthbGlnbi1zZWxmOmF1dG87Z2FwOjVweDt9Cn0KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjg2MHB4KXsKICAuYmxrLW5rZHdnIC5jb2x1bW57ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dhcDoxMHB4O30KICAuYmxrLW5rZHdnIC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tbGVmdCwKICAuYmxrLW5rZHdnIC5jb2x1bW4taXRlbS5tb2ItZ3JpZC1zdGFuZGFsb25le2dyaWQtY29sdW1uOjEgLyAtMTt9CiAgLyogIWltcG9ydGFudDogbGEgcHJvcG9yY2nzbiBwcm9waWEgZGUgY2FkYSBub3RpY2lhICh2ZXIgbWVkaWFBc3BlY3RSYXRpbykKICAgICBzZSBhcGxpY2EgY29tbyBlc3RpbG8gaW5saW5lIHNvYnJlIGVsIHByb3BpbyAudGh1bWIgJiM4MjEyOyBzaW4gIWltcG9ydGFudAogICAgIGVzdGUgcmVzZ3VhcmRvIGRlbCBncmlkIGRlIDIgY29sdW1uYXMgZGVqYXLtYSBkZSB0ZW5lciBlZmVjdG8gZW4gY3VhbnRvCiAgICAgdW5hIG5vdGljaWEgdHJhamVyYSB1bmEgcHJvcG9yY2nzbiBkaXN0aW50YSBkZSA0OjMgKHZlciBtaXNtbyBjb21lbnRhcmlvLAogICAgIGRldGFsbGFkbywgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YSkuICovCiAgLmJsay1ua2R3ZyAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcDpub3QoLm1vYi1ncmlkLXN0YW5kYWxvbmUpIC50aHVtYnthc3BlY3QtcmF0aW86NC8zICFpbXBvcnRhbnQ7fQogIC5ibGstbmtkd2cgLmNvbHVtbi1pdGVtLmxheW91dC1waG90by10b3A6bm90KC5tb2ItZ3JpZC1zdGFuZGFsb25lKSAubGVmdC10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MS4yZW07dGV4dC10cmFuc2Zvcm06bm9uZTtmb250LXdlaWdodDo2MDA7fQp9Ci8qIEVzdGlsbyAiZm90byBncmFuZGUgKyB0aXR1bGFyIjogZm90byAxNjo5IGFycmliYSwgdGl0dWxhciBkZWJham8gJiM4MjEyOyBlbGVnaWJsZQogICBwb3Igbm90aWNpYSBkZXNkZSBlbCBnZXN0b3IuIE5vIHNlIHJlc3RyaW5nZSBjb24gQGNvbnRhaW5lciBwb3JxdWUKICAgLmNvbHVtbi1pdGVtIHlhIGVzIGJsb2NrIHBvciBkZWZlY3RvIChlbCB0aHVtYiB5IGVsIHRleHRvIHNlIGFwaWxhbiBzb2xvcwogICBzaW4gbeFzIGFqdXN0ZSksIGFz7SBxdWUgZWwgZGlzZfFvIGZ1bmNpb25hIGlndWFsIGRlIGJpZW4gZW4gY3VhbHF1aWVyCiAgIGFuY2hvLCBEZXNrIG8gTfN2aWwuICovCi5ibGstbmtkd2cgLmNvbHVtbi1pdGVtLmxheW91dC1waG90by10b3B7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjt9Ci5ibGstbmtkd2cgLmNvbHVtbi1pdGVtLmxheW91dC1waG90by10b3AgLnRodW1ie2lubGluZS1zaXplOjEwMCU7YXNwZWN0LXJhdGlvOjE2Lzk7bWFyZ2luLWJvdHRvbToxMHB4O30KLmJsay1ua2R3ZyAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcCAubGVmdC10aXRsZXtmb250LWZhbWlseToiYW1wbGl0dWRlLW1lZGl1bS1jb25kZW5zZWQiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjJlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Zm9udC13ZWlnaHQ6OTAwO30KLyogRW4gTfN2aWwgZWwgdGl0dWxhciBkZSBlc3RlIGRpc2XxbyBzZSBtdWVzdHJhIG3hcyBncmFuZGUgKDEuNXJlbSBlbiB2ZXogZGUKICAgbG9zIDEuMnJlbSBkZSBEZXNrKSAmIzgyMTI7IG1pc21hIGVzcGVjaWZpY2lkYWQgKDMgY2xhc2VzKSBxdWUgbGEgcmVnbGEgZGUKICAgYXJyaWJhOyBhbCBpciBERVNQVclTIGVuIGVsIENTUyBnYW5hIHBvciBvcmRlbiBkZSBjYXNjYWRhLiBTZSB1c2EgZWwKICAgYnJlYWtwb2ludCBkZSA0ODBweCAoZWwgZGUgdGlwb2dyYWbtYSBlbiBlc3RhIGFwcCwgbm8gZWwgZGUgODYwcHggcXVlIGFxde0KICAgc29sbyBnb2JpZXJuYSBlbCBhcGlsYWRvIGRlIGNvbHVtbmFzKSBwYXJhIHF1ZSBjb2luY2lkYSBjb24gZWwgcmVzdG8gZGUKICAgY2FtYmlvcyBkZSB0ZXh0by90YW1h8W8gcG9yIHZpc3RhLiBObyBhZmVjdGEgYWwgcmVzZ3VhcmRvIGRlIDIgY29sdW1uYXMgZW4KICAgbfN2aWwgKG1vYi1ncmlkKSwgbeFzIGVzcGVj7WZpY28gKDE4cHgsIHZlciBt4XMgYXJyaWJhKS4gKi8KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjQ4MHB4KXsKICAuYmxrLW5rZHdnIC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tdG9wIC5sZWZ0LXRpdGxle2ZvbnQtc2l6ZToxLjVyZW07fQp9Ci8qIEVzdGlsbyAiQmxvcXVlIG1lZGlhIiAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLW5rZHdnIC5tZWRpYS1ibG9jay1tZWRpYXtkaXNwbGF5OmJsb2NrO2lubGluZS1zaXplOjEwMCU7YmxvY2stc2l6ZTphdXRvO30KLmJsay1ua2R3ZyAubWVkaWEtYmxvY2std3JhcHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrO30KLmJsay1ua2R3ZyAubWVkaWEtYmxvY2staWZyYW1lLXdyYXB7cG9zaXRpb246cmVsYXRpdmU7aW5saW5lLXNpemU6MTAwJTthc3BlY3QtcmF0aW86MTYvOTtiYWNrZ3JvdW5kOiMwMDA7b3ZlcmZsb3c6aGlkZGVuO30KLmJsay1ua2R3ZyAubWVkaWEtYmxvY2staWZyYW1lLXdyYXAgaWZyYW1le3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7Ym9yZGVyOjA7ZGlzcGxheTpibG9jazt9Ci5ibGstbmtkd2cgLmNvbHVtbi1pdGVtLmxheW91dC1tZWRpYS1ibG9ja3tib3JkZXI6bm9uZTtwYWRkaW5nOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtibG9jay1zaXplOmF1dG87ZmxleDowIDAgYXV0bzt9Ci5ibGstbmtkd2cgLmNvbHVtbi1pdGVtOm5vdCgubGF5b3V0LW1lZGlhLWJsb2NrKXtmbGV4OjEgMSBhdXRvO30KPC9zdHlsZT4KCjxkaXYgY2xhc3M9ImJsay1ua2R3ZyI+CiAgCiAgPG1haW4gY2xhc3M9InBhZ2UiPgogICAgCiAgICA8YXJ0aWNsZSBjbGFzcz0ibGVhZCBsZWFkLWJvZHktbGVmdCI+CiAgICAgIDxkaXYgY2xhc3M9ImxlYWQtbWVkaWEiPgogICAgICAgIDxpbWcgc3JjPSJodHRwczovL29rZGlhcmlvLmNvbS9lc3BlY2lhbGVzL2FwcHMvbWVkaWEvZWwtcHJlc2lkZW50ZS1kZS1jb3JyZW9zLXF1ZS1nZXN0aW9uYXJhLWxvcy12b3Rvcy1kZWwtMjktbi1kaWpvLXF1ZS1zZS1jb250cmF0by1hLWxlaXJlLXBvci1zdS1jdXJyaWN1bHVtLXktbm8tcG9yLWVuY2h1ZmUtMjAyNjEwMDgtMDU0MDM3LTNmYmFmYS5qcGciIGFsdD0iRWwgcHJlc2lkZW50ZSBkZSBDb3JyZW9zIHF1ZSBnZXN0aW9uYXLhIGxvcyB2b3RvcyBkZWwgMjktTiBkaWpvIHF1ZSBzZSBjb250cmF08yBhIExlaXJlICZxdW90O3BvciBzdSBjdXJy7WN1bHVtJnF1b3Q7IHkgbm8gcG9yIGVuY2h1ZmUiIGxvYWRpbmc9ImVhZ2VyIiBmZXRjaHByaW9yaXR5PSJoaWdoIiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgIDxkaXYgY2xhc3M9ImxlYWQtb3ZlcmxheSIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6cmdiYSgxNCwxNywyNiwwLjAwKTsiPjwvZGl2PgogICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ibGVhZC1ib2R5IiBzdHlsZT0iYmFja2dyb3VuZDojMDBBN0ZGOyI+CiAgICAgICAgPHNwYW4gY2xhc3M9ImxlYWQtY2F0IiBzdHlsZT0iYmFja2dyb3VuZDojZmZmO2NvbG9yOiMwMEE3RkYiPkVTUEHRQTwvc3Bhbj4KICAgICAgICA8ZGl2IGNsYXNzPSJsZWFkLWJvZHktbWFpbiI+CiAgICAgICAgICAKICAgICAgICAgIDxoMiBjbGFzcz0ibGVhZC10aXRsZSI+PHNwYW4gY2xhc3M9ImxlYWQtdGl0bGUtZGVzayI+RWwgcHJlc2lkZW50ZSBkZSBDb3JyZW9zIHF1ZSBnZXN0aW9uYXLhIGxvcyB2b3RvcyBkZWwgMjktTiBkaWpvIHF1ZSBzZSBjb250cmF08yBhIExlaXJlICZxdW90O3BvciBzdSBjdXJy7WN1bHVtJnF1b3Q7IHkgbm8gcG9yIGVuY2h1ZmU8L3NwYW4+PHNwYW4gY2xhc3M9ImxlYWQtdGl0bGUtbW9iaWxlIj5FbCBwcmVzaWRlbnRlIGRlIENvcnJlb3MgcXVlIGdlc3Rpb25hcuEgbG9zIHZvdG9zIGRlbCAyOS1OIGRpam8gcXVlIHNlIGNvbnRyYXTzIGEgTGVpcmUgJnF1b3Q7cG9yIHN1IGN1cnLtY3VsdW0mcXVvdDsgeSBubyBwb3IgZW5jaHVmZTwvc3Bhbj48L2gyPgogICAgICAgICAgCiAgICAgICAgICA8c3BhbiBjbGFzcz0iYXV0aG9yLWxhYmVsIj5TZWd1bmRvIFNhbno8L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8YSBjbGFzcz0ibGVhZC1saW5rIiBocmVmPSJodHRwczovL29rZGlhcmlvLmNvbS9lc3BhbmEvcHJlc2lkZW50ZS1jb3JyZW9zLXF1ZS1nZXN0aW9uYXJhLXZvdG9zLWRlbC0yOW4tZGlqby1xdWUtY29udHJhdG8tbGVpcmUtY3VycmljdWx1bS1uby1lbmNodWZlLTIwNTA3NDc4IiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgdGl0bGU9IkVsIHByZXNpZGVudGUgZGUgQ29ycmVvcyBxdWUgZ2VzdGlvbmFy4SBsb3Mgdm90b3MgZGVsIDI5LU4gZGlqbyBxdWUgc2UgY29udHJhdPMgYSBMZWlyZSAmcXVvdDtwb3Igc3UgY3Vycu1jdWx1bSZxdW90OyB5IG5vIHBvciBlbmNodWZlIiBhcmlhLWxhYmVsPSJFbCBwcmVzaWRlbnRlIGRlIENvcnJlb3MgcXVlIGdlc3Rpb25hcuEgbG9zIHZvdG9zIGRlbCAyOS1OIGRpam8gcXVlIHNlIGNvbnRyYXTzIGEgTGVpcmUgJnF1b3Q7cG9yIHN1IGN1cnLtY3VsdW0mcXVvdDsgeSBubyBwb3IgZW5jaHVmZSI+PC9hPgogICAgPC9hcnRpY2xlPgogIDwvbWFpbj4KPC9kaXY+Cgo8c2NyaXB0PgooZnVuY3Rpb24oKXsKICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5ibGstbmtkd2cgLmxlYWQnKTsKICBpZiAoIWFydGljbGUpIHJldHVybjsKICB2YXIgbWFpbiA9IGFydGljbGUucXVlcnlTZWxlY3RvcignLmxlYWQtYm9keS1tYWluJyk7CiAgdmFyIHRpdGxlRWwgPSBhcnRpY2xlLnF1ZXJ5U2VsZWN0b3IoJy5sZWFkLXRpdGxlJyk7CiAgaWYgKCFtYWluIHx8ICF0aXRsZUVsKSByZXR1cm47CiAgdmFyIGJhc2VGb250U2l6ZVB4ID0gcGFyc2VGbG9hdChnZXRDb21wdXRlZFN0eWxlKHRpdGxlRWwpLmZvbnRTaXplKSB8fCAwOwogIGlmICghYmFzZUZvbnRTaXplUHgpIHJldHVybjsKICB2YXIgTUFYX1NDQUxFID0gMS44OwogIHZhciBNSU5fU0NBTEUgPSAwLjU7CiAgdmFyIE1BWF9GT05UX1BYID0gNjQ7IC8vIH40cmVtIGNvbiBsYSBiYXNlIGhhYml0dWFsIGRlIDE2cHggKG1pc21vIHRvcGUgcXVlIGZpdExlYWRUaXRsZVRvQm94KCkgZW4gZWwgZ2VzdG9yKQogIHZhciBib2R5UG9zaXRpb25CbG9ja3NGaXQgPSBhcnRpY2xlLmNsYXNzTGlzdC5jb250YWlucygnbGVhZC1ib2R5LWxlZnQnKSB8fCBhcnRpY2xlLmNsYXNzTGlzdC5jb250YWlucygnbGVhZC1ib2R5LXJpZ2h0Jyk7CiAgZnVuY3Rpb24gZml0KCl7CiAgICBpZiAoYm9keVBvc2l0aW9uQmxvY2tzRml0KSByZXR1cm47CiAgICB0aXRsZUVsLnN0eWxlLmZvbnRTaXplID0gYmFzZUZvbnRTaXplUHggKyAncHgnOwogICAgdmFyIGF2YWlsYWJsZUhlaWdodCA9IG1haW4uY2xpZW50SGVpZ2h0OwogICAgaWYgKCFhdmFpbGFibGVIZWlnaHQpIHJldHVybjsKICAgIC8vIFZlciBtaXNtbyBjb21lbnRhcmlvLCBkZXRhbGxhZG8sIGVuIGZpdExlYWRUaXRsZVRvQm94KCkgZGVsIGdlc3RvcjoKICAgIC8vIG1haW4uc2Nyb2xsSGVpZ2h0IG51bmNhIGJhamEgZGUgY2xpZW50SGVpZ2h0IGF1bnF1ZSBlbCBjb250ZW5pZG8gcmVhbAogICAgLy8gb2N1cGUgbWVub3MsIGFz7SBxdWUgbm8gc2lydmUgcGFyYSBkZXRlY3RhciBjdeFudG8gc29icmEgbyBmYWx0YSBjb24KICAgIC8vIGVsIHRpdHVsYXIgYWN0dWFsICYjODIxMjsgc2Ugc3VtYSBlbiBzdSBsdWdhciBlbCBhbHRvIHJlYWwgZGUgY2FkYSBoaWpvCiAgICAvLyBWSVNJQkxFIGRlbCBibG9xdWUsIHNhbHZvIGVsIHByb3BpbyB0aXR1bGFyLCBt4XMgZWwgaHVlY28gKCJnYXAiKQogICAgLy8gZW50cmUgZWxsb3M7IG5vIGNhbWJpYSBjb24gZWwgdGFtYfFvIGRlbCB0aXR1bGFyLCBhc+0gcXVlIHNlIG1pZGUgdW5hCiAgICAvLyBzb2xhIHZleiwgYW50ZXMgZGUgbGEgYvpzcXVlZGEgYmluYXJpYS4KICAgIHZhciBnYXBQeCA9IHBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZShtYWluKS5yb3dHYXApIHx8IHBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZShtYWluKS5nYXApIHx8IDA7CiAgICB2YXIgdmlzaWJsZUNoaWxkcmVuID0gW10uc2xpY2UuY2FsbChtYWluLmNoaWxkcmVuKS5maWx0ZXIoZnVuY3Rpb24oYyl7IHJldHVybiBnZXRDb21wdXRlZFN0eWxlKGMpLmRpc3BsYXkgIT09ICdub25lJzsgfSk7CiAgICB2YXIgb3RoZXJzSGVpZ2h0ID0gdmlzaWJsZUNoaWxkcmVuLmZpbHRlcihmdW5jdGlvbihjKXsgcmV0dXJuIGMgIT09IHRpdGxlRWw7IH0pLnJlZHVjZShmdW5jdGlvbihzdW0sIGMpeyByZXR1cm4gc3VtICsgYy5vZmZzZXRIZWlnaHQ7IH0sIDApCiAgICAgICsgZ2FwUHggKiBNYXRoLm1heCgwLCB2aXNpYmxlQ2hpbGRyZW4ubGVuZ3RoIC0gMSk7CiAgICB2YXIgYXZhaWxhYmxlRm9yVGl0bGUgPSBNYXRoLm1heCgwLCBhdmFpbGFibGVIZWlnaHQgLSBvdGhlcnNIZWlnaHQpOwogICAgaWYgKCFhdmFpbGFibGVGb3JUaXRsZSkgcmV0dXJuOwogICAgZnVuY3Rpb24gaGVpZ2h0QXRTY2FsZShzY2FsZSl7CiAgICAgIHRpdGxlRWwuc3R5bGUuZm9udFNpemUgPSBNYXRoLm1pbihiYXNlRm9udFNpemVQeCAqIHNjYWxlLCBNQVhfRk9OVF9QWCkgKyAncHgnOwogICAgICByZXR1cm4gdGl0bGVFbC5vZmZzZXRIZWlnaHQ7CiAgICB9CiAgICB2YXIgbG8gPSBNSU5fU0NBTEUsIGhpID0gTUFYX1NDQUxFOwogICAgZm9yICh2YXIgaSA9IDA7IGkgPCA4OyBpKyspewogICAgICB2YXIgbWlkID0gKGxvICsgaGkpIC8gMjsKICAgICAgaWYgKGhlaWdodEF0U2NhbGUobWlkKSA8PSBhdmFpbGFibGVGb3JUaXRsZSkgbG8gPSBtaWQ7IGVsc2UgaGkgPSBtaWQ7CiAgICB9CiAgICBoZWlnaHRBdFNjYWxlKGxvKTsKICB9CiAgZml0KCk7CiAgaWYgKGRvY3VtZW50LmZvbnRzICYmIGRvY3VtZW50LmZvbnRzLnJlYWR5KXsgZG9jdW1lbnQuZm9udHMucmVhZHkudGhlbihmaXQpOyB9CiAgaWYgKHdpbmRvdy5SZXNpemVPYnNlcnZlcil7IG5ldyBSZXNpemVPYnNlcnZlcihmaXQpLm9ic2VydmUoYXJ0aWNsZSk7IH0KICBlbHNlIHsgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIGZpdCk7IH0KfSkoKTsKPC9zY3JpcHQ+
      CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQiIGNyb3Nzb3JpZ2luPgo8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vcC50eXBla2l0Lm5ldCIgY3Jvc3NvcmlnaW4+CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbSI+CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbSIgY3Jvc3NvcmlnaW4+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvaXFhMXFlYi5jc3MiPgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Um9ib3RvOndnaHRANDAwOzcwMCZkaXNwbGF5PXN3YXAiPgo8c3R5bGU+Ci8qIGFtcGxpdHVkZS1tZWRpdW0tY29uZGVuc2VkOiB2ZXIgcmVsYXRlZFVwcGVyY2FzZVRpdGxlRm9udCBt4XMgYWJham8uICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAiYW1wbGl0dWRlLW1lZGl1bS1jb25kZW5zZWQiOwogIHNyYzogdXJsKCJodHRwczovL29rZGlhcmlvLmNvbS93ZWIvdGhlbWVzL3YxMC9jc3MvX2ZvbnRzX2FtcGxpdHVkZS9BbXBsaXR1ZGUlMjBBdWJpJTIwTWVkaXVtJTIwQ25kLm90ZiIpOwp9Ci8qIGFtcGxpdHVkZS1ib29rOiB2ZXIgcmVsYXRlZEF1dGhvckZvbnQgbeFzIGFiYWpvLiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogImFtcGxpdHVkZS1ib29rIjsKICBzcmM6IHVybCgiaHR0cHM6Ly9va2RpYXJpby5jb20vd2ViL3RoZW1lcy92MTAvY3NzL19mb250c19hbXBsaXR1ZGUvQW1wbGl0dWRlJTIwQXViaSUyMEJvb2sub3RmIik7Cn0KLyogY29udGFpbmVyLXR5cGU6aW5saW5lLXNpemUgYXF17SBlcyBpbXByZXNjaW5kaWJsZTogY29udmllcnRlIGVzdGUgYmxvcXVlCiAgIGVuIGVsIGNvbnRlbmVkb3IgZGUgcmVmZXJlbmNpYSBwYXJhIGxvcyAiQGNvbnRhaW5lciAoLi4uLWlubGluZS1zaXplLi4uKSIKICAgZGUgbeFzIGFiYWpvLiBVc2Ftb3MgQGNvbnRhaW5lciBlbiB2ZXogZGUgQG1lZGlhIHBvcnF1ZSAiQG1lZGlhCiAgIChtYXgtaW5saW5lLXNpemU6Li4uKSIgTk8gZXMgdW5hIGNvbmRpY2nzbiBDU1MgduFsaWRhICYjODIxMjsgaW5saW5lLXNpemUgc29sbwogICBleGlzdGUgY29tbyBjYXJhY3Rlcu1zdGljYSBkZSBAY29udGFpbmVyLCBudW5jYSBkZSBAbWVkaWEgJiM4MjEyOyBhc+0gcXVlIGVzYXMKICAgcmVnbGFzIGphbeFzIHNlIGFjdGl2YWJhbiAodmVyaWZpY2FkbyBjb24gbWF0Y2hNZWRpYTogc2llbXByZSBmYWxzZSwgc2luCiAgIGltcG9ydGFyIGVsIGFuY2hvKSwgeSBwb3IgZXNvIGxhIG5vdGljaWEgcHJpbmNpcGFsIHBvZO1hIGRlc2FwYXJlY2VyIG8gZWwKICAgZGlzZfFvIG3zdmlsIG5vIHNlIGFjdGl2YWJhIG51bmNhLiBAY29udGFpbmVyIHPtIHNvcG9ydGEgaW5saW5lLXNpemUgZGUKICAgZm9ybWEgduFsaWRhLCB5IGV2aXRhIGlndWFsbWVudGUgbGEgcGFsYWJyYSAid2lkdGg6IiBxdWUgZWwgQ01TIGRlbAogICB1c3VhcmlvIGVsaW1pbmEgYWwgcGVnYXIgSFRNTC9DU1MgZGlyZWN0YW1lbnRlLiAqLwovKiBGSVggT0tESUFSSU8gKi8KICAgIC5pdGVtIGFydGljbGUgLmFydGljbGUtc2NyaXB0IHsKICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50OwogICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50OwogICAgfQovKiBDb250ZW5lZG9yIGRlIHRvZGEgbGEgYXBlcnR1cmEgKGNhYmVjZXJhICsgbm90aWNpYSBwcmluY2lwYWwgKyBjb2x1bW5hKToKICAgZm9uZG8gYmxhbmNvIHkgYWlyZSBhbHJlZGVkb3IsIHNvbG8gZW4gRGVzayAmIzgyMTI7IHZlciBvdmVycmlkZSBkZW50cm8gZGVsCiAgIEBjb250YWluZXIobWF4LWlubGluZS1zaXplOjg2MHB4KSBkZSBt4XMgYWJham8sIHF1ZSBsbyBhbnVsYSBwb3IgZGViYWpvCiAgIGRlIGVzZSBhbmNobyAoZXF1aXZhbGVudGUgYSBsYSB2aXN0YSBN83ZpbCksIHkgYXF17SBtaXNtbyBjb24gZWwgdGV4dG8gYQogICBsYSBpenF1aWVyZGEgbyBsYSBkZXJlY2hhIChib2R5UG9zaXRpb25CbG9ja3NDb2x1bW4pOiBjb24gZXNlIGxheW91dCBsYQogICBub3RpY2lhIHByaW5jaXBhbCB5YSBvY3VwYSBlbCAxMDAlIGRlbCBhbmNobyB5IHNvbGFwYSBzdSBwcm9waWEgZm90byBkZQogICBib3JkZSBhIGJvcmRlLCBhc+0gcXVlIGVsIGFpcmUvZm9uZG8gYmxhbmNvIHNvYnJhLiAqLwouYmxrLWhycW9se21heC1pbmxpbmUtc2l6ZTo5NjBweDttYXJnaW46MCBhdXRvO2NvbnRhaW5lci10eXBlOmlubGluZS1zaXplO30KLmJsay1ocnFvbCBhe3RleHQtZGVjb3JhdGlvbjpub25lO2NvbG9yOmluaGVyaXR9Ci5ibGstaHJxb2wgLnBhZ2V7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7Z2FwOjE1cHh9Ci5ibGstaHJxb2wgLnBhZ2UgLmNvbHVtbntvcmRlcjozfQouYmxrLWhycW9sIC5wYWdlIC5sZWFke29yZGVyOjJ9Ci8qIDg2MHB4IHkgbm8gNDc1cHg6IGNvbiBsYSBjb2x1bW5hIGZpamEgKDIyMHB4ICsgMjBweCBkZSBnYXAgPSAyNDBweCksCiAgIGN1YWxxdWllciBhbmNobyBkZSBpZnJhbWUgcG9yIGRlYmFqbyBkZSB+ODYwcHggZGVqYSBsYSBub3RpY2lhIHByaW5jaXBhbAogICAoMWZyKSBjYWRhIHZleiBjb24gbWVub3MgZXNwYWNpbyBoYXN0YSBjb2xhcHNhciBhIDBweCBkZSBhbmNobyBhbnRlcyBkZQogICBsbGVnYXIgYSB1biBicmVha3BvaW50IHRhbiBiYWpvIGNvbW8gNDc1cHggJiM4MjEyOyBsYSBub3RpY2lhIHByaW5jaXBhbAogICBkaXJlY3RhbWVudGUgZGVzYXBhcmVjZSBlbiBlc2EgZnJhbmphIGludGVybWVkaWEgKG5pICJkZXNrIiBjb21wbGV0byBuaQogICAibfN2aWwiIGVzdHJlY2hvKS4gQ29uIDg2MHB4IHNlIHBhc2EgYSB1bmEgc29sYSBjb2x1bW5hIGFwaWxhZGEgYW50ZXMgZGUKICAgcXVlIGVzbyBwdWVkYSBvY3VycmlyLgogICBFc3RlIGJyZWFrcG9pbnQgc2Ugb21pdGUgcG9yIGNvbXBsZXRvIG1pZW50cmFzIGxhIHNpbXVsYWNp824gZGUgYW5jaG8gZXN06QogICBhY3RpdmEgKHZlciBsZWFkV2lkdGhQcmV2aWV3KTogcGVuc2FkbyBwYXJhIGN1YW5kbyBlbCBt82R1bG8gbGxldmEgc3UKICAgY29sdW1uYSBhIDk2MHB4LCBkZWphIGRlIHRlbmVyIHNlbnRpZG8gZW4gdW5hIGV4cG9ydGFjafNuIGRlIHNvbG8gbGEKICAgbm90aWNpYSBwcmluY2lwYWwgYSB1biBhbmNobyBmaWpvIGVsZWdpZG8gYSBtYW5vICYjODIxMjsgbG9zIGFuY2hvcyBzaW11bGFkb3MKICAgKDYxMy80NjAvMzA3cHgpIGVzdOFuIFRPRE9TIHBvciBkZWJham8gZGUgODYwcHgsIGFz7SBxdWUgc2luIGVzdGUgZ2F0aW5nCiAgIGVsIEhUTUwgZXhwb3J0YWRvIGNhZXLtYSBzaWVtcHJlIGEgbGEgdGlwb2dyYWbtYSAiTfN2aWwiIChjb24gIWltcG9ydGFudCkKICAgc2VhIGN1YWwgc2VhIGxhIHF1ZSBlbCB1c3VhcmlvIGNvbmZpZ3Vy8yBlbiAiRGVzayIgcGFyYSBlc2Egc2ltdWxhY2nzbiwKICAgZGFuZG8gbGEgZmFsc2Egc2Vuc2FjafNuIGRlIHF1ZSB1bmEgY29uZmlndXJhY2nzbiAicGlzYSIgYSBvdHJhLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6ODYwcHgpewogIC5ibGstaHJxb2x7YmFja2dyb3VuZDpub25lO3BhZGRpbmc6MDt9CiAgLmJsay1ocnFvbCAucGFnZXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyfQogIC5ibGstaHJxb2wgLnBhZ2UgLnN0YWNrLXRpdGxlIHtmb250LXNpemU6MThweDsgbGluZS1oZWlnaHQ6IDEuMmVtO30KICAuYmxrLWhycW9sIC5wYWdlIC5zdGFjay1hdXRob3Ige21hcmdpbi10b3A6IDEwcHg7fQogIC5ibGstaHJxb2wgLmxlYWQtbWVkaWEuaXMtaWZyYW1le2Jsb2NrLXNpemU6NDAwcHggIWltcG9ydGFudDt9CiAgLmJsay1ocnFvbCAubGVhZC1tZWRpYXthc3BlY3QtcmF0aW86MTYvOSAhaW1wb3J0YW50O30KICAuYmxrLWhycW9sIC5wYWdlIC5sZWFke29yZGVyOjF9CiAgLmJsay1ocnFvbCAucGFnZSAuY29sdW1ue29yZGVyOjJ9CiAgLyogUG9yIGRlYmFqbyBkZWwgYnJlYWtwb2ludCwgZWwgbGVhZC1ib2R5IHNpZW1wcmUgdnVlbHZlIGEgaXIgZGViYWpvIGRlbAogICAgIGxlYWQtbWVkaWEgKG5vIGhheSBzaXRpbyBwYXJhIGVsIGxheW91dCBsYWRvIGEgbGFkbykuICovCiAgLmJsay1ocnFvbCAucGFnZSAubGVhZC5sZWFkLWJvZHktbGVmdCwKICAuYmxrLWhycW9sIC5wYWdlIC5sZWFkLmxlYWQtYm9keS1yaWdodHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YXNwZWN0LXJhdGlvOmF1dG87fQogIC5ibGstaHJxb2wgLnBhZ2UgLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtbWVkaWEsCiAgLmJsay1ocnFvbCAucGFnZSAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtbWVkaWF7ZmxleDoxIDEgYXV0bzt9CiAgLmJsay1ocnFvbCAucGFnZSAubGVhZC5sZWFkLWJvZHktbGVmdCAubGVhZC1ib2R5LAogIC5ibGstaHJxb2wgLnBhZ2UgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLWJvZHl7ZmxleDoxIDEgYXV0bztpbmxpbmUtc2l6ZTo5MCU7bWFyZ2luOi0zMHB4IGF1dG8gMDtibG9jay1zaXplOmF1dG87YWxpZ24tc2VsZjphdXRvO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O3BhZGRpbmc6MTBweDt9CiAgLmJsay1ocnFvbCAucGFnZSAuY29sdW1uLWl0ZW17Ym9yZGVyOjFweCBzb2xpZCAjZTdlYmVlO3BhZGRpbmc6MTBweDtiYWNrZ3JvdW5kOiNmZmY7YmxvY2stc2l6ZTpzdHJldGNoO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTt9CiAgLmJsay1ocnFvbCAucGFnZSAubGVmdC10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToyMHB4O2xpbmUtaGVpZ2h0OjEuMTU7Y29sb3I6IzJjM2U1MzttYXJnaW46MDt0ZXh0LWFsaWduOmxlZnQ7fQogIC5ibGstaHJxb2wgLnBhZ2UgLmNvbHVtbi1pdGVtLnRpdGxlLW9ubHktbW9iaWxlLTIxIC5sZWZ0LXRpdGxle2ZvbnQtc2l6ZToyMXB4ICFpbXBvcnRhbnQ7fQogIC5ibGstaHJxb2wgLnBhZ2UgLmNvbHVtbi1pdGVtLnRpdGxlLW9ubHktbW9iaWxlLTE4IC5sZWZ0LXRpdGxle2ZvbnQtc2l6ZToxOHB4ICFpbXBvcnRhbnQ7fQogIC5ibGstaHJxb2wgLnBhZ2UgLmxlZnQtcGxheXsKICAgIGZsZXg6MCAwIGF1dG87aW5saW5lLXNpemU6MTVweDtibG9jay1zaXplOjE1cHg7Ym9yZGVyLXJhZGl1czoycHg7CiAgICBiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjMDBhN2ZmOwogICAgZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjA7CiAgICB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7bWFyZ2luLXJpZ2h0OjZweDttYXJnaW4tYm90dG9tOjRweDsKICB9CiAgLmJsay1ocnFvbCAucGFnZSAubGVmdC1wbGF5OjpiZWZvcmV7CiAgICBjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aW5saW5lLXNpemU6MDtibG9jay1zaXplOjA7CiAgICBib3JkZXItbGVmdDo0cHggc29saWQgIzAwYTdmZjtib3JkZXItdG9wOjNweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjNweCBzb2xpZCB0cmFuc3BhcmVudDttYXJnaW4tbGVmdDoxcHg7CiAgfQp9Ci8qIFRpcG9ncmFm7WEgIk3zdmlsIiAoYW50ZXTtdHVsby90aXR1bGFyL3N1YnTtdHVsby90aXR1bGFyZXMgYW5pbWFkb3MpIGNvbiBTVQogICBQUk9QSU8gYnJlYWtwb2ludCAoNDgwcHgpLCBzZXBhcmFkbyBkZWwgZGUgYXJyaWJhICg4NjBweCwgc29sbyBwYXJhIGFwaWxhcgogICBsYSByZWppbGxhIGNvbHVtbmErbm90aWNpYSk6IHVuIGNvbnRlbmVkb3IgcmVhbCBkZSBtZW5vcyBkZSA4NjBweCBlcyBtdXkKICAgaGFiaXR1YWwgKHAuZWouIHVuYSBjb2x1bW5hIGRlIGFydO1jdWxvIGRlIH43MDBweCkgeSBOTyBlcyB1biBt83ZpbCAmIzgyMTI7IGNvbgogICB1biD6bmljbyBicmVha3BvaW50IGNvbXBhcnRpZG8sIGxhIHRpcG9ncmFm7WEgIkRlc2siIHF1ZSBjb25maWd1cmEgZWwKICAgdXN1YXJpbyBubyBsbGVnYWJhIGEgdmVyc2UgbnVuY2EgZW4gZXNlIGNhc28sIGNheWVuZG8gc2llbXByZSBhIGxvcyB2YWxvcmVzCiAgIHBvciBkZWZlY3RvIGRlICJN83ZpbCIgc2luIHF1ZSBuYWRpZSBsbyBodWJpZXJhIHBlZGlkby4gNDgwcHggc+0gc2UKICAgY29ycmVzcG9uZGUgY29uIHVuIGFuY2hvIGRlIG3zdmlsIHJlYWwgKGxhIHZpc3RhICJN83ZpbCIgZGVsIHByb3BpbyBnZXN0b3IKICAgc2ltdWxhIDM3NXB4KS4gSWd1YWwgcXVlIGVsIGJyZWFrcG9pbnQgZGUgYXJyaWJhLCBzZSBvbWl0ZSBkdXJhbnRlIGxhCiAgIHNpbXVsYWNp824gZGUgYW5jaG8gZGUgbGEgbm90aWNpYSBwcmluY2lwYWwgKHZlciBsZWFkV2lkdGhQcmV2aWV3KS4gKi8KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjQ4MHB4KXsKICAuYmxrLWhycW9sIC5sZWFkLWtpY2tlcntmb250LXNpemU6MS4zMTI1cmVtICFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS4xICFpbXBvcnRhbnQ7Y29sb3I6IzAwQTdGRiAhaW1wb3J0YW50O30KICAuYmxrLWhycW9sIC5sZWFkLXN1YnRpdGxle2ZvbnQtc2l6ZToxLjMxMjVyZW0gIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjEgIWltcG9ydGFudDtjb2xvcjojMDBBN0ZGICFpbXBvcnRhbnQ7fQogIC5ibGstaHJxb2wgLmxlYWQtdGl0bGV7Zm9udC1zaXplOjEuODc1cmVtICFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS4wMiAhaW1wb3J0YW50O30KICAuYmxrLWhycW9sIC5sZWFkLXRpdGxlLWRlc2t7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fQogIC5ibGstaHJxb2wgLmxlYWQtdGl0bGUtbW9iaWxle2Rpc3BsYXk6aW5saW5lICFpbXBvcnRhbnQ7fQogIC5ibGstaHJxb2wgLmxlYWQta2lja2VyLWRlc2t7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fQogIC5ibGstaHJxb2wgLmxlYWQta2lja2VyLW1vYmlsZXtkaXNwbGF5OmlubGluZSAhaW1wb3J0YW50O30KICAuYmxrLWhycW9sIC5sZWFkLXN1YnRpdGxlLWRlc2t7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fQogIC5ibGstaHJxb2wgLmxlYWQtc3VidGl0bGUtbW9iaWxle2Rpc3BsYXk6aW5saW5lICFpbXBvcnRhbnQ7fQogIC5ibGstaHJxb2wgLmxlYWQtYW5pbS1oZWFkbGluZXN7Zm9udC1zaXplOjEuODc1cmVtICFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS4wMiAhaW1wb3J0YW50O30KICAKICAuYmxrLWhycW9sIC5yZWxhdGVkLXRpdGxlLWRlc2t7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fQogIC5ibGstaHJxb2wgLnJlbGF0ZWQtdGl0bGUtbW9iaWxle2Rpc3BsYXk6aW5saW5lICFpbXBvcnRhbnQ7fQp9Ci5ibGstaHJxb2wgLmxlYWR7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjojZmZmO292ZXJmbG93OmhpZGRlbjtpc29sYXRpb246aXNvbGF0ZTtwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2U7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjt9Ci5ibGstaHJxb2wgLmxlYWQtbWVkaWF7cG9zaXRpb246cmVsYXRpdmU7YXNwZWN0LXJhdGlvOjE2Lzk7YmFja2dyb3VuZDojMDAwO292ZXJmbG93OmhpZGRlbn0KLyogTWVkaWEgbWVkaWFudGUgaWZyYW1lOiBhbHRvIGZpam8gZW4gcO14ZWxlcyBlbiB2ZXogZGUgbGEgcHJvcG9yY2nzbiBkZQogICBhcnJpYmEgKHZlciBjb21lbnRhcmlvIGRldGFsbGFkbyBqdW50byBhIHN0YXRlLmxlYWQuaWZyYW1lSGVpZ2h0KSAmIzgyMTI7IGVsCiAgIHZhbG9yIGRlIE3zdmlsIHNlIHNvYnJlc2NyaWJlIGVuIGVsIEBjb250YWluZXIgZGUgbeFzIGFiYWpvLCBpZ3VhbCBxdWUgZWwKICAgcmVzdG8gZGUgb3ZlcnJpZGVzIHJlc3BvbnNpdmUgZGUgZXN0ZSBIVE1MIGV4cG9ydGFkby4gKi8KLmJsay1ocnFvbCAubGVhZC1tZWRpYS5pcy1pZnJhbWV7YXNwZWN0LXJhdGlvOm5vbmU7YmxvY2stc2l6ZTo2NDBweDt9Ci5ibGstaHJxb2wgLmxlYWQtbWVkaWEgaW1nLAouYmxrLWhycW9sIC5sZWFkLW1lZGlhIHZpZGVve3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn0KLyogQ2FycnVzZWwgZGUgZm90b3MgZGUgZm9uZG8gY29uIGVmZWN0byBLZW4gQnVybnMgJiM4MjEyOyB2ZXIgZWwgbWlzbW8gYmxvcXVlLAogICBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4KICAgTGEgZHVyYWNp824gZGUgbGFzIGFuaW1hY2lvbmVzICg2cykgY29pbmNpZGUgY29uCiAgIExFQURfQ0FST1VTRUxfSU5URVJWQUwsIHF1ZSB0YW1iaeluIGdvYmllcm5hIGVsIHNjcmlwdCBkZSByb3RhY2nzbgogICAoYnVpbGRMZWFkQ2Fyb3VzZWxTY3JpcHQpIGHxYWRpZG8gYWwgZmluYWwgZGVsIEhUTUwgZXhwb3J0YWRvLiAqLwouYmxrLWhycW9sIC5sZWFkLWNhcm91c2Vse3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7b3ZlcmZsb3c6aGlkZGVuO30KLmJsay1ocnFvbCAubGVhZC1jYXJvdXNlbC1zbGlkZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgMS41cyBlYXNlO30KLmJsay1ocnFvbCAubGVhZC1jYXJvdXNlbC1zbGlkZS5pcy1hY3RpdmV7b3BhY2l0eToxO3otaW5kZXg6MTt9Ci5ibGstaHJxb2wgLmxlYWQtY2Fyb3VzZWwtc2xpZGUgaW1ne3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7b2JqZWN0LWZpdDpjb3Zlcjt9Ci5ibGstaHJxb2wgLmxlYWQtY2Fyb3VzZWwtc2xpZGU6bnRoLWNoaWxkKG9kZCkgaW1ne2FuaW1hdGlvbjpibGstaHJxb2wta2VuYnVybnMtYSA2cyBlYXNlLWluLW91dCBmb3J3YXJkczt9Ci5ibGstaHJxb2wgLmxlYWQtY2Fyb3VzZWwtc2xpZGU6bnRoLWNoaWxkKGV2ZW4pIGltZ3thbmltYXRpb246YmxrLWhycW9sLWtlbmJ1cm5zLWIgNnMgZWFzZS1pbi1vdXQgZm9yd2FyZHM7fQpAa2V5ZnJhbWVzIGJsay1ocnFvbC1rZW5idXJucy1heyBmcm9te3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGUoMCwwKTt9IHRve3RyYW5zZm9ybTpzY2FsZSgxLjE1KSB0cmFuc2xhdGUoLTQlLC0zJSk7fSB9CkBrZXlmcmFtZXMgYmxrLWhycW9sLWtlbmJ1cm5zLWJ7IGZyb217dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZSgwLDApO30gdG97dHJhbnNmb3JtOnNjYWxlKDEuMTUpIHRyYW5zbGF0ZSg0JSwzJSk7fSB9Ci8qIENvbiB1bmEg+m5pY2EgZm90byAoc2luIHJvdGFjafNuIHBvc2libGUpIHNlIGFwbGljYSB1biB6b29tIGluL291dCBlbgogICBidWNsZSBpbmZpbml0byBlbiB2ZXogZGVsIHJlY29ycmlkbyD6bmljbyAoZm9yd2FyZHMpIGRlIGFycmliYS4gKi8KLmJsay1ocnFvbCAubGVhZC1jYXJvdXNlbC5pcy1zaW5nbGUgLmxlYWQtY2Fyb3VzZWwtc2xpZGUgaW1ne2FuaW1hdGlvbjpibGstaHJxb2wta2VuYnVybnMtbG9vcCAxNHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7fQpAa2V5ZnJhbWVzIGJsay1ocnFvbC1rZW5idXJucy1sb29weyAwJXt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlKDAsMCk7fSA1MCV7dHJhbnNmb3JtOnNjYWxlKDEuMTUpIHRyYW5zbGF0ZSgtNCUsLTMlKTt9IDEwMCV7dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZSgwLDApO30gfQovKiBDb21wYXJhZG9yIGFudGVzL2Rlc3B16XMgKGRlc2xpemFkb3IpICYjODIxMjsgdmVyIGVsIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuCiAgIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstaHJxb2wgLmxlYWQtY29tcGFyZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO292ZXJmbG93OmhpZGRlbjtpc29sYXRpb246aXNvbGF0ZTt0b3VjaC1hY3Rpb246bm9uZTt6LWluZGV4OjI7fQouYmxrLWhycW9sIC5sZWFkLWNvbXBhcmUgaW1ne3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7b2JqZWN0LWZpdDpjb3ZlcjtvYmplY3QtcG9zaXRpb246Y2VudGVyO2Rpc3BsYXk6YmxvY2s7dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItZHJhZzpub25lO3BvaW50ZXItZXZlbnRzOm5vbmU7fQouYmxrLWhycW9sIC5sZWFkLWNvbXBhcmUtYmVmb3Jle2NsaXAtcGF0aDppbnNldCgwIDUwJSAwIDApO3dpbGwtY2hhbmdlOmNsaXAtcGF0aDt9Ci5ibGstaHJxb2wgLmxlYWQtY29tcGFyZS1yYW5nZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2lubGluZS1zaXplOjEwMCU7YmxvY2stc2l6ZToxMDAlO21hcmdpbjowO29wYWNpdHk6MDtjdXJzb3I6ZXctcmVzaXplO30KLmJsay1ocnFvbCAubGVhZC1jb21wYXJlLWhhbmRsZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjUwJTtpbmxpbmUtc2l6ZTowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3BvaW50ZXItZXZlbnRzOm5vbmU7ei1pbmRleDoyO30KLmJsay1ocnFvbCAubGVhZC1jb21wYXJlLWhhbmRsZTo6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO2lubGluZS1zaXplOjJweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjkpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHJnYmEoMCwwLDAsLjI1KTt9Ci5ibGstaHJxb2wgLmxlYWQtY29tcGFyZS1oYW5kbGU6OmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0Oi0xNXB4O2lubGluZS1zaXplOjMwcHg7YmxvY2stc2l6ZTozMHB4O3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6I2ZmZiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMjAnIGhlaWdodD0nMjAnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PGcgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMwMDAnIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cGF0aCBkPSdNOCA2IEw0IDEwIEw4IDE0Jy8+PHBhdGggZD0nTTEyIDYgTDE2IDEwIEwxMiAxNCcvPjwvZz48L3N2Zz4iKSBjZW50ZXIvMTZweCAxNnB4IG5vLXJlcGVhdDtib3gtc2hhZG93OjAgMnB4IDZweCByZ2JhKDAsMCwwLC4yNSk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4yNSk7fQovKiBNZWRpYSBtZWRpYW50ZSBpZnJhbWUgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEKICAgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gTWlzbW8gei1pbmRleDoyIHF1ZQogICAubGVhZC1jb21wYXJlLCBwb3IgZWwgbWlzbW8gbW90aXZvIChnYW5hcmxlIGEgLmxlYWQtbGluaykuICovCi5ibGstaHJxb2wgLmxlYWQtaWZyYW1le3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7b3ZlcmZsb3c6aGlkZGVuO2lzb2xhdGlvbjppc29sYXRlO3otaW5kZXg6Mjt9Ci5ibGstaHJxb2wgLmxlYWQtaWZyYW1lIGlmcmFtZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2lubGluZS1zaXplOjEwMCU7YmxvY2stc2l6ZToxMDAlO2JvcmRlcjowO2Rpc3BsYXk6YmxvY2s7fQouYmxrLWhycW9sIC5sZWFkLW92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt6LWluZGV4OjE7cG9pbnRlci1ldmVudHM6bm9uZTt9Ci5ibGstaHJxb2wgLmxlYWQtYm9keXtwYWRkaW5nOjBweCAyMHB4IDIwcHggMjBweDs7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweDsgdGV4dC1hbGlnbjpjZW50ZXI7IGFsaWduLWl0ZW1zOmNlbnRlcjsgcG9zaXRpb246cmVsYXRpdmU7IHotaW5kZXg6NjsgcG9pbnRlci1ldmVudHM6bm9uZTsgaW5saW5lLXNpemU6OTUlOyBtYXJnaW4tbGVmdDphdXRvOyBtYXJnaW4tcmlnaHQ6YXV0bzsgbWFyZ2luLXRvcDotMzBweDsgYmFja2dyb3VuZDojMEUxMTFBOyBmbGV4OjEgMSBhdXRvO30KLyogQW50ZXTtdHVsby90aXR1bGFyL3N1YnTtdHVsby9hdXRvciBjZW50cmFkb3MgZW4gdmVydGljYWwgZGVudHJvIGRlbCBhbHRvCiAgIHNvYnJhbnRlIGJham8gbGEgY2F0ZWdvcu1hICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhCiAgIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwuICovCi5ibGstaHJxb2wgLmxlYWQtYm9keS1tYWlue2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjEwcHg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7aW5saW5lLXNpemU6MTAwJTtmbGV4OjEgMSBhdXRvO21pbi1oZWlnaHQ6MDt9Ci8qIEFwYXJpZW5jaWEgbmVnYXRpdmEgKHBvciBkZWZlY3RvKSB2cy4gcG9zaXRpdmEgZGUgbGEgY2FqYSBkZSB0aXR1bGFyICYjODIxMjsgdmVyCiAgIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwuICovCi5ibGstaHJxb2wgLmxlYWQuaXMtYXBwZWFyYW5jZS1wb3NpdGl2ZSAubGVhZC1ib2R5e2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNlN2ViZWU7fQouYmxrLWhycW9sIC5sZWFkLmlzLWFwcGVhcmFuY2UtcG9zaXRpdmUgLmxlYWQtdGl0bGUsCi5ibGstaHJxb2wgLmxlYWQuaXMtYXBwZWFyYW5jZS1wb3NpdGl2ZSAuYXV0aG9yLWxhYmVse2NvbG9yOiMwRTExMUE7fQovKiBQb3NpY2nzbiBkZWwgbGVhZC1ib2R5IHJlc3BlY3RvIGFsIGxlYWQtbWVkaWEgKCdsZWZ0Jy8ncmlnaHQnKSAmIzgyMTI7IHZlciBtaXNtbwogICBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsLiAqLwouYmxrLWhycW9sIC5sZWFkLmxlYWQtYm9keS1sZWZ0LAouYmxrLWhycW9sIC5sZWFkLmxlYWQtYm9keS1yaWdodHtmbGV4LWRpcmVjdGlvbjpyb3c7YXNwZWN0LXJhdGlvOjIuOTYyOTYyOTYyOTYyOTYzO30KLmJsay1ocnFvbCAubGVhZC5sZWFkLWJvZHktbGVmdHtmbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZTt9Ci5ibGstaHJxb2wgLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtbWVkaWEsCi5ibGstaHJxb2wgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLW1lZGlhe2ZsZXg6MCAwIDYwJTt9Ci5ibGstaHJxb2wgLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYm9keSwKLmJsay1ocnFvbCAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtYm9keXtmbGV4OjAgMCBjYWxjKDQwJSArIDMwcHgpO2lubGluZS1zaXplOmF1dG87bWFyZ2luLXRvcDowO2Jsb2NrLXNpemU6Y2FsYygxMDAlIC0gNDJweCk7YWxpZ24tc2VsZjpjZW50ZXI7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7fQouYmxrLWhycW9sIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWJvZHl7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6LTMwcHg7fQouYmxrLWhycW9sIC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1ib2R5e21hcmdpbi1sZWZ0Oi0zMHB4O21hcmdpbi1yaWdodDowO30KLyogUG9zaWNp824gJ2JvdHRvbS1mdWxsJyBkZWwgbGVhZC1ib2R5ICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuCiAgIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuIGlubGluZS1zaXplCiAgIGVuIHZleiBkZSB3aWR0aCBwb3IgZWwgbWlzbW8gbW90aXZvIHF1ZSBlbCByZXN0byBkZSBlc3RlIGJsb3F1ZSAoZXZpdGFyCiAgIGxhIHBhbGFicmEgIndpZHRoOiIgcXVlIGVsIENNUyBkZWwgdXN1YXJpbyBlbGltaW5hIGFsIHBlZ2FyIEhUTUwvQ1NTCiAgIGRpcmVjdGFtZW50ZSkuICovCi5ibGstaHJxb2wgLmxlYWQubGVhZC1ib2R5LWJvdHRvbS1mdWxsIC5sZWFkLWJvZHl7CiAgaW5saW5lLXNpemU6MTAwJTsKICBtYXJnaW46MDsKICBwYWRkaW5nLXRvcDozMHB4OwogIHBhZGRpbmctYm90dG9tOjMwcHg7CiAgYm9yZGVyOm5vbmU7Cn0KLyogRXRpcXVldGEgZGUgZXhjbHVzaXZhIChvIHRleHRvIHBlcnNvbmFsaXphZG8pICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvCiAgIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstaHJxb2wgLmxlYWQtZXhjbHVzaXZlLXRhZ3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtsZWZ0OjEwcHg7ei1pbmRleDozO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7bGV0dGVyLXNwYWNpbmc6MC41cHg7cGFkZGluZzoycHggOHB4O2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXNpemU6LjhlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6I2ZmZjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7cG9pbnRlci1ldmVudHM6bm9uZTt9Ci8qIFNlbGVjdG9yIGNvbiAzIGNsYXNlcyAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhICgiLmxlYWQtbWVkaWEgaW1nIiB0YW1iaeluCiAgIG1hdGNoZWEgZXN0ZSA8aW1nPiB5IGxlIGdhbmFiYSBlbiBlc3BlY2lmaWNpZGFkKS4gKi8KLmJsay1ocnFvbCAubGVhZC1leGNsdXNpdmUtdGFnIC5sZWFkLWV4Y2x1c2l2ZS10YWctaWNvbntwb3NpdGlvbjpzdGF0aWM7aW5zZXQ6YXV0bztpbmxpbmUtc2l6ZToxNHB4O2Jsb2NrLXNpemU6MTRweDtvYmplY3QtZml0OmNvbnRhaW47ZmxleDowIDAgYXV0bztkaXNwbGF5OmJsb2NrO30KLmJsay1ocnFvbCAubGVhZC1jYXR7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDtwYWRkaW5nOjJweCA4cHg7dHJhbnNmb3JtOnNrZXdZKC02ZGVnKTttYXJnaW4tdG9wOi0xNXB4O21hcmdpbi1ib3R0b206MTBweDt9Ci5ibGstaHJxb2wgLmxlYWQta2lja2VyLCAuYmxrLWhycW9sIC5sZWFkLXN1YnRpdGxlewogIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjt0ZXh0LXRyYW5zZm9ybTpub25lO21hcmdpbjowOwp9Ci5ibGstaHJxb2wgLmxlYWQta2lja2Vye2ZvbnQtd2VpZ2h0OjcwMDt9Ci5ibGstaHJxb2wgLmxlYWQtc3VidGl0bGV7Zm9udC13ZWlnaHQ6NjAwO30KLyogVGFtYfFvL2ludGVybGluZWFkby9jb2xvciBkZSBhbnRldO10dWxvIHkgc3VidO10dWxvIGVuIERlc2sgKHZhbG9yZXMgcG9yCiAgIGRlZmVjdG8gZGVsIGJsb3F1ZTsgZWwgb3ZlcnJpZGUgZGUgTfN2aWwgdmEgZW4gZWwgQGNvbnRhaW5lciBkZSBt4XMgYWJham8sCiAgIHlhIHF1ZSBlbCBIVE1MIGV4cG9ydGFkbyBlcyByZXNwb25zaXZlIHkgbm8gZGVwZW5kZSBkZSBxdekgdmlzdGEgdHV2aWVyYXMKICAgc2VsZWNjaW9uYWRhIGVuIGVsIGdlc3RvciBhbCBleHBvcnRhci9jb3BpYXIpLiAqLwouYmxrLWhycW9sIC5sZWFkLWtpY2tlcntmb250LXNpemU6MS4zMTI1cmVtO2xpbmUtaGVpZ2h0OjEuMTtjb2xvcjojMDBBN0ZGO30KLmJsay1ocnFvbCAubGVhZC1zdWJ0aXRsZXtmb250LXNpemU6MS4zMTI1cmVtO2xpbmUtaGVpZ2h0OjEuMTtjb2xvcjojMDBBN0ZGO30KLyogdGV4dC13cmFwOmJhbGFuY2UgJiM4MjEyOyBtaXNtbyBjcml0ZXJpbyBxdWUgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbAogICBkZWwgZ2VzdG9yICh2ZXIgY29tZW50YXJpbyBkZXRhbGxhZG8ganVudG8gYSBlc2EgcmVnbGEpOiByZXBhcnRlIGxhcwogICBs7W5lYXMgZGVsIHRpdHVsYXIgZGUgZm9ybWEgbeFzIHVuaWZvcm1lIGRlbnRybyBkZSBjYWRhIGRpc3Bvc2l0aXZvLCBzaW4KICAgcHJldGVuZGVyIGlndWFsYXIgZWwgbvptZXJvIGRlIGztbmVhcyBlbnRyZSBwbGF0YWZvcm1hcyBkaXN0aW50YXMuICovCi5ibGstaHJxb2wgLmxlYWQtdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDtmb250LXNpemU6MS44cmVtO2xpbmUtaGVpZ2h0OjE7bWFyZ2luOjA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTt0ZXh0LXdyYXA6YmFsYW5jZTt9Ci8qIFRpdHVsYXIgY29uIHNhbHRvcyBkZSBs7W5lYSBpbmRlcGVuZGllbnRlcyBwb3IgdmlzdGEgKHZlciBidWlsZFNjb3BlZEhUTUwpOgogICBzZSBnZW5lcmFuIGxvcyBkb3MgdGV4dG9zIChEZXNrL03zdmlsKSB5IGFxde0gc2UgbXVlc3RyYSBzb2xvIHVubyBzZWf6biBlbAogICBhbmNobyByZWFsIGRlbCBjb250ZW5lZG9yICYjODIxMjsgZWwgbWlzbW8gbWVjYW5pc21vIGRlIEBjb250YWluZXIgcXVlIHlhIHVzYSBlbAogICByZXN0byBkZWwgSFRNTCBleHBvcnRhZG8gcGFyYSBhZGFwdGFyc2Ugc2luIGRlcGVuZGVyIGRlIEpTLiAqLwouYmxrLWhycW9sIC5sZWFkLXRpdGxlLW1vYmlsZXtkaXNwbGF5Om5vbmU7fQovKiBBbnRldO10dWxvL3N1YnTtdHVsbyBjb24gc2FsdG9zIGRlIGztbmVhIGluZGVwZW5kaWVudGVzIHBvciB2aXN0YTogbWlzbW8KICAgbWVjYW5pc21vIGRlIEBjb250YWluZXIgcXVlIGVsIHRpdHVsYXIgKHZlciBhcnJpYmEpLiAqLwouYmxrLWhycW9sIC5sZWFkLWtpY2tlci1tb2JpbGUsIC5ibGstaHJxb2wgLmxlYWQtc3VidGl0bGUtbW9iaWxle2Rpc3BsYXk6bm9uZTt9Ci8qIFRpdHVsYXIgZGUgbm90aWNpYSByZWxhY2lvbmFkYSAoY29sdW1uYSkgY29uIHRleHRvIHByb3BpbyBlbiBN83ZpbCAodmVyCiAgIGl0ZW0udGl0bGVNb2JpbGUgZW4gYnVpbGRDb2x1bW5JdGVtVGl0bGVIVE1MKTogbWlzbW8gbWVjYW5pc21vIGRlCiAgIEBjb250YWluZXIgcXVlIGVsIHRpdHVsYXIgcHJpbmNpcGFsIGRlIGFycmliYS4gKi8KLmJsay1ocnFvbCAucmVsYXRlZC10aXRsZS1tb2JpbGV7ZGlzcGxheTpub25lO30KLmJsay1ocnFvbCAuYXV0aG9yLWxhYmVse2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjIwMDtmb250LXNpemU6LjhlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dGV4dC1hbGlnbjpyaWdodDtkaXNwbGF5OmJsb2NrfQouYmxrLWhycW9sIC5jb2x1bW57ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweDtqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47fQouYmxrLWhycW9sIC5jb2x1bW4taXRlbXtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlcjoxcHggc29saWQgI2U3ZWJlZTtwYWRkaW5nOjEwcHg7YmFja2dyb3VuZDojZmZmO2Jsb2NrLXNpemU6c3RyZXRjaDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2U7fQouYmxrLWhycW9sIC50aHVtYntwb3NpdGlvbjpyZWxhdGl2ZTtpbmxpbmUtc2l6ZToxMDAlO2FzcGVjdC1yYXRpbzo0LzM7YmFja2dyb3VuZDojZWVlO292ZXJmbG93OmhpZGRlbn0KLmJsay1ocnFvbCAudGh1bWIgaW1nLAouYmxrLWhycW9sIC50aHVtYiB2aWRlb3twb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2lubGluZS1zaXplOjEwMCU7YmxvY2stc2l6ZToxMDAlO29iamVjdC1maXQ6Y292ZXJ9Ci5ibGstaHJxb2wgLnRodW1iIC5wbGF5LXNxdWFyZSwKLmJsay1ocnFvbCAubWVkaWEtYmxvY2std3JhcCAucGxheS1zcXVhcmV7CiAgcG9zaXRpb246YWJzb2x1dGU7IGJvdHRvbTo1cHg7IGxlZnQ6NXB4OwogIGlubGluZS1zaXplOjI1cHg7YmxvY2stc2l6ZToyNXB4O2JvcmRlci1yYWRpdXM6MnB4O2Rpc3BsYXk6aW5saW5lLWdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyOwogIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjYpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjE4KTsKICBjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cywgdHJhbnNmb3JtIC4xMnM7CiAgei1pbmRleDoyOyBhbmltYXRpb246YmxrLWhycW9sLWJsaW5rIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlOwp9Ci5ibGstaHJxb2wgLnRodW1iIC5wbGF5LXNxdWFyZTo6YmVmb3JlLAouYmxrLWhycW9sIC5tZWRpYS1ibG9jay13cmFwIC5wbGF5LXNxdWFyZTo6YmVmb3JlewogIGNvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztpbmxpbmUtc2l6ZTowO2Jsb2NrLXNpemU6MDsKICBib3JkZXItbGVmdDo2cHggc29saWQgI2ZmZjtib3JkZXItdG9wOjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjVweCBzb2xpZCB0cmFuc3BhcmVudDsKICBtYXJnaW4tbGVmdDoycHg7Cn0KLmJsay1ocnFvbCAudGh1bWIgLnBsYXktc3F1YXJlOmhvdmVyLAouYmxrLWhycW9sIC5tZWRpYS1ibG9jay13cmFwIC5wbGF5LXNxdWFyZTpob3ZlcnsgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuODUpOyB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTsgfQouYmxrLWhycW9sIC5zdGFjay10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToxN3B4O2xpbmUtaGVpZ2h0OjEuMTVlbTttYXJnaW46MDtjb2xvcjojMmMzZTUzO30KLmJsay1ocnFvbCAuc3RhY2stYXV0aG9ye2ZvbnQtZmFtaWx5OiJhbXBsaXR1ZGUtYm9vayIsc2Fucy1zZXJpZjtjb2xvcjojODI4NTk1O2ZvbnQtd2VpZ2h0OjIwMDtmb250LXNpemU6LjhyZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDoxMXB4O2xldHRlci1zcGFjaW5nOjA7dGV4dC1hbGlnbjpyaWdodDt9Ci8qIFNpbiBlc3RhIHJlZ2xhIGVsIGF1dG9yIHF1ZWRhIHBlZ2FkbyBqdXN0byBkZWJham8gZGVsIHRpdHVsYXIgZW4gdmV6IGRlCiAgIGFiYWpvIGRlIGxhIHRhcmpldGE6IC5tb2Qtc3RhY2sgbmVjZXNpdGEgc2VyIGZsZXgtY29sdW1uIGNvbgogICBqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbiBwYXJhIHF1ZSBlbCBodWVjbyBzb2JyYW50ZSAoY3VhbmRvIGxhCiAgIHRhcmpldGEgY3JlY2UgbeFzIHF1ZSBzdSBjb250ZW5pZG8sIHZlciAuY29sdW1uLWl0ZW06bm90KC5sYXlvdXQtbWVkaWEtYmxvY2spCiAgIG3hcyBhYmFqbykgZW1wdWplIGVsIGF1dG9yIGhhY2lhIGVsIGJvcmRlIGluZmVyaW9yLiAqLwouYmxrLWhycW9sIC5tb2Qtc3RhY2t7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtmbGV4OjEgMSBhdXRvO30KLyogRXN0aWxvICJmb3RvIHBlcXVl8WEgKyB0aXR1bGFyIjogZm90byA0OjMgYSBsYSBpenF1aWVyZGEsIHRleHRvIGEgbGEgZGVyZWNoYS4gKi8KLmJsay1ocnFvbCAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLWxlZnR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxMTBweCAxZnI7Z2FwOjEwcHg7fQovKiBFc3RpbG8gInNvbG8gdGV4dG8iIChwb3IgZGVmZWN0byk6IGVsIGF1dG9yIHNlIHBvc2ljaW9uYSBlbiBhYnNvbHV0bywKICAgYW5jbGFkbyBhIGxhIGVzcXVpbmEgaW5mZXJpb3IgZGVyZWNoYSBkZSBsYSB0YXJqZXRhIChpZ3VhbCBxdWUgZWwgcGxheSBkZQogICBsYXMgbWluaWF0dXJhcyksIGVuIHZleiBkZSBkZXBlbmRlciBkZSBxdWUgZWwgYmxvcXVlIGRlIHRleHRvIHRlbmdhIGh1ZWNvCiAgIGRlIHNvYnJhIHBhcmEgZW1wdWphcmxvIGFiYWpvIGNvbiBmbGV4Ym94ICYjODIxMjsgY29uIHTtdHVsb3MgZGUgMi0zIGztbmVhcyBlc2UKICAgaHVlY28gbm8gZXhpc3RlIHkgZWwgYXV0b3IgbnVuY2EgbGxlZ2FiYSBhIGJhamFyLiBwYWRkaW5nLWJvdHRvbSBlbgogICBsZWZ0LWJvZHkgcmVzZXJ2YSBlbCBlc3BhY2lvIHBhcmEgcXVlIGVsIHTtdHVsbyBubyBzZSBzb2xhcGUgY29uIOlsLiAqLwouYmxrLWhycW9sIC5jb2x1bW4taXRlbS5sYXlvdXQtdGl0bGUtb25seSAubGVmdC1ib2R5e3BhZGRpbmctYm90dG9tOjMzcHg7fQouYmxrLWhycW9sIC5jb2x1bW4taXRlbS5sYXlvdXQtdGl0bGUtb25seSAuc3RhY2stYXV0aG9ye3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjEwcHg7Ym90dG9tOjEwcHg7bWFyZ2luLXRvcDowO30KLmJsay1ocnFvbCAubGVmdC10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToyMXB4O2xpbmUtaGVpZ2h0OjEuMTU7Y29sb3I6IzJjM2U1MzttYXJnaW46MDt0ZXh0LWFsaWduOmxlZnQ7fQouYmxrLWhycW9sIC5sZWZ0LXBsYXl7CiAgZmxleDowIDAgYXV0bztpbmxpbmUtc2l6ZToxNXB4O2Jsb2NrLXNpemU6MTVweDtib3JkZXItcmFkaXVzOjJweDsKICBiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjMDBhN2ZmOwogIGRpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzowOwogIHZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1ib3R0b206IDRweDsKfQouYmxrLWhycW9sIC5sZWZ0LXBsYXk6OmJlZm9yZXsKICBjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aW5saW5lLXNpemU6MDtibG9jay1zaXplOjA7CiAgYm9yZGVyLWxlZnQ6NHB4IHNvbGlkICMwMGE3ZmY7Ym9yZGVyLXRvcDozcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbTozcHggc29saWQgdHJhbnNwYXJlbnQ7bWFyZ2luLWxlZnQ6MXB4Owp9Ci5ibGstaHJxb2wgLnJlbGF0ZWQtbGl2ZS10YWd7CiAgZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7ZmxleDowIDAgYXV0bzsKICBmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwOwogIGZvbnQtc2l6ZTouN3JlbTtsaW5lLWhlaWdodDowLjg7bGV0dGVyLXNwYWNpbmc6LjNweDtjb2xvcjojRkY1MDUwOwogIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjRkY1MDUwOwogIHBhZGRpbmc6M3B4IDRweCAycHggNHB4O21hcmdpbi1yaWdodDo2cHg7bWFyZ2luLWJvdHRvbTo0cHg7dmVydGljYWwtYWxpZ246bWlkZGxlOwogIHdoaXRlLXNwYWNlOm5vd3JhcDsKfQouYmxrLWhycW9sIC5yZWxhdGVkLWVkaXRvcmlhbC10YWd7CiAgZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7ZmxleDowIDAgYXV0bzsKICBmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwOwogIGZvbnQtc2l6ZTouN3JlbTtsaW5lLWhlaWdodDowLjg7bGV0dGVyLXNwYWNpbmc6LjNweDtjb2xvcjojRkFCMTIxOwogIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjRkFCMTIxOwogIHBhZGRpbmc6M3B4IDRweCAycHggNHB4O21hcmdpbi1yaWdodDo2cHg7bWFyZ2luLWJvdHRvbTo0cHg7dmVydGljYWwtYWxpZ246bWlkZGxlOwogIHdoaXRlLXNwYWNlOm5vd3JhcDsKfQouYmxrLWhycW9sIC5wbGF5LWJ1dHRvbnsKICAvKiBBbmNoby9hbHRvIGZpam9zIGVuIHZleiBkZSBhc3BlY3QtcmF0aW86MS8xICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvCiAgICAgZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YSAoZWwKICAgICBj4WxjdWxvIGRlICJzaHJpbmstdG8tZml0IiBwYXJhIHVuIDxidXR0b24+IGVuIGFic29sdXRvIHNpbiB0YW1h8W8KICAgICBleHBs7WNpdG8gbm8gZXMgZmlhYmxlIGVudHJlIG1vdG9yZXM7IGVuIFdlYktpdC9pT1MgZGFiYSB1biByZWN04W5ndWxvCiAgICAgdmVydGljYWwgZXN0cmVjaO1zaW1vIGVuIHZleiBkZSB1biBjdWFkcmFkbykuICovCiAgYXBwZWFyYW5jZTpub25lOy13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lOwogIHBvc2l0aW9uOmFic29sdXRlO3RvcDoxMHB4O2xlZnQ6MTBweDsKICBpbmxpbmUtc2l6ZTozNHB4O2Jsb2NrLXNpemU6MzRweDsKICBkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzoxMHB4IDEwcHggMTBweCAxMnB4OwogIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNyk7CiAgYm9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC40Mik7Y29sb3I6I2ZmZjtib3JkZXItcmFkaXVzOjNweDsKICBjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjI7YW5pbWF0aW9uOmJsay1ocnFvbC1ibGluayAycyBlYXNlLWluLW91dCBpbmZpbml0ZTsKfQouYmxrLWhycW9sIC5wbGF5LWJ1dHRvbi5wb3MtdG9wLXJpZ2h0e3RvcDoxMHB4O3JpZ2h0OjEwcHg7bGVmdDphdXRvO2JvdHRvbTphdXRvO30KLmJsay1ocnFvbCAucGxheS1idXR0b24ucG9zLWJvdHRvbS1sZWZ0e2JvdHRvbToxMHB4O2xlZnQ6MTBweDt0b3A6YXV0bztyaWdodDphdXRvO30KLmJsay1ocnFvbCAucGxheS1idXR0b24ucG9zLWJvdHRvbS1yaWdodHtib3R0b206MTBweDtyaWdodDoxMHB4O3RvcDphdXRvO2xlZnQ6YXV0bzt9Ci8qIENvbiBlbCB0ZXh0byAobGVhZC1ib2R5KSBhIGxhIGl6cXVpZXJkYSBvIGxhIGRlcmVjaGEsIGVzZSBibG9xdWUgc29sYXBhCiAgIDMwcHggZGVsIGxhZG8gZGUgbGEgZm90by927WRlbyBwZWdhZG8gYSDpbCAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbwogICBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLWhycW9sIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5wbGF5LWJ1dHRvbi5wb3MtdG9wLWxlZnQsCi5ibGstaHJxb2wgLmxlYWQubGVhZC1ib2R5LWxlZnQgLnBsYXktYnV0dG9uLnBvcy1ib3R0b20tbGVmdHsgbGVmdDo0MHB4OyB9Ci5ibGstaHJxb2wgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5wbGF5LWJ1dHRvbi5wb3MtdG9wLXJpZ2h0LAouYmxrLWhycW9sIC5sZWFkLmxlYWQtYm9keS1yaWdodCAucGxheS1idXR0b24ucG9zLWJvdHRvbS1yaWdodHsgcmlnaHQ6NDBweDsgfQovKiBQb3NpY2nzbiAnYm90dG9tJyBwb3IgZGVmZWN0bzogZWwgbGVhZC1ib2R5IHNvbGFwYSAzMHB4IHNvYnJlIGVsIGJvcmRlCiAgIElORkVSSU9SIGRlIGxhIGZvdG8vdu1kZW8gJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEKICAgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gTm8gYXBsaWNhIGNvbiAnYm90dG9tLWZ1bGwnCiAgIG5pIGNvbiAnbGVmdCcvJ3JpZ2h0JyAoYWp1c3RlIGhvcml6b250YWwgcHJvcGlvLCB2ZXIgYXJyaWJhKS4gKi8KLmJsay1ocnFvbCAubGVhZDpub3QoLmxlYWQtYm9keS1sZWZ0KTpub3QoLmxlYWQtYm9keS1yaWdodCk6bm90KC5sZWFkLWJvZHktYm90dG9tLWZ1bGwpIC5wbGF5LWJ1dHRvbi5wb3MtYm90dG9tLWxlZnQsCi5ibGstaHJxb2wgLmxlYWQ6bm90KC5sZWFkLWJvZHktbGVmdCk6bm90KC5sZWFkLWJvZHktcmlnaHQpOm5vdCgubGVhZC1ib2R5LWJvdHRvbS1mdWxsKSAucGxheS1idXR0b24ucG9zLWJvdHRvbS1yaWdodHsgYm90dG9tOjQwcHg7IH0KLmJsay1ocnFvbCAucGxheS1idXR0b24gLnBsYXktaWNvbnsKICBpbmxpbmUtc2l6ZTowO2Jsb2NrLXNpemU6MDsKICBib3JkZXItbGVmdDoxMHB4IHNvbGlkICNmZmY7Ym9yZGVyLXRvcDo2cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQgdHJhbnNwYXJlbnQ7Cn0KLmJsay1ocnFvbCAucGxheS1idXR0b24gLnBsYXktdGV4dHtkaXNwbGF5Om5vbmU7fQoKLyogVGl0dWxhcmVzIGFuaW1hZG9zIChjYXBhIGFsdGVybmF0aXZhIHNvYnJlIGxlYWQtbWVkaWEpICYjODIxMjsgdmVyIG1pc21vCiAgIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEKICAgaGVycmFtaWVudGEuIENhZGEgdGl0dWxhciB0aWVuZSBzdSBwcm9waWEgcG9zaWNp824gKGNsYXNlIHBvcy0qLCB2ZXIKICAgYnVpbGRTY29wZWRIVE1MKSB5IHNlIHJldmVsYSBs7W5lYSBwb3IgbO1uZWEgKHVuYSB2ZXogbWVkaWRhcyBzdXMgbO1uZWFzCiAgIHJlYWxlcyBwb3IgZWwgc2NyaXB0IHN0YW5kYWxvbmUsIHZlciBidWlsZEFuaW1IZWFkbGluZXNTY3JpcHQpIGNvbiB1bmEKICAgY2FqYSBkZSBmb25kbyBkZXRy4XMgZGUgY2FkYSBs7W5lYSB5IHVuIGZhZGUgZGUgb3BhY2lkYWQgZW50cmUgdGl0dWxhcmVzLiAqLwouYmxrLWhycW9sIC5sZWFkLWFuaW0taGVhZGxpbmVzewogIHBvc2l0aW9uOmFic29sdXRlOwogIGluc2V0OjA7CiAgei1pbmRleDo0OwogIHBvaW50ZXItZXZlbnRzOm5vbmU7Cn0KLmJsay1ocnFvbCAubGVhZC1hbmltLWhlYWRsaW5lewogIHBvc2l0aW9uOmFic29sdXRlOwogIGxlZnQ6MTVweDsKICBvcGFjaXR5OjA7Cn0KLmJsay1ocnFvbCAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1ib3R0b20tbGVmdHsgYm90dG9tOjYwcHg7IH0KLmJsay1ocnFvbCAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtbGVmdHsgdG9wOjYwcHg7IH0KLmJsay1ocnFvbCAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1taWRkbGUtbGVmdHsgdG9wOjUwJTsgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7IH0KLmJsay1ocnFvbCAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtcmlnaHQsCi5ibGstaHJxb2wgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtbWlkZGxlLXJpZ2h0LAouYmxrLWhycW9sIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1yaWdodHsgbGVmdDphdXRvOyByaWdodDoxNXB4OyB9Ci5ibGstaHJxb2wgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtdG9wLXJpZ2h0eyB0b3A6NjBweDsgfQouYmxrLWhycW9sIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1yaWdodHsgdG9wOjUwJTsgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7IH0KLmJsay1ocnFvbCAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1ib3R0b20tcmlnaHR7IGJvdHRvbTo2MHB4OyB9Ci8qIENvbiBlbCB0ZXh0byAobGVhZC1ib2R5KSBhIGxhIGl6cXVpZXJkYSBvIGxhIGRlcmVjaGEsIGVzZSBibG9xdWUgc29sYXBhCiAgIDMwcHggZGVsIGxhZG8gZGUgbGEgZm90by927WRlbyBwZWdhZG8gYSDpbCAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbwogICBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLWhycW9sIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLXRvcC1sZWZ0LAouYmxrLWhycW9sIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1sZWZ0LAouYmxrLWhycW9sIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1sZWZ0eyBsZWZ0OjQwcHg7IH0KLmJsay1ocnFvbCAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtdG9wLXJpZ2h0LAouYmxrLWhycW9sIC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1taWRkbGUtcmlnaHQsCi5ibGstaHJxb2wgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1yaWdodHsgcmlnaHQ6NDBweDsgfQouYmxrLWhycW9sIC5sZWFkLWFuaW0taGVhZGxpbmUuaXMtYWN0aXZleyBvcGFjaXR5OjE7IH0KLmJsay1ocnFvbCAubGVhZC1hbmltLWxpbmV7CiAgcG9zaXRpb246cmVsYXRpdmU7CiAgZGlzcGxheTp0YWJsZTsKICBmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7CiAgZm9udC13ZWlnaHQ6OTAwOwogIGNvbG9yOiNmZmY7CiAgcGFkZGluZzoycHggOHB4OwogIGNsaXAtcGF0aDppbnNldCgwIDEwMCUgMCAwKTsKICBvcGFjaXR5OjE7CiAgdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgZWFzZTsKfQouYmxrLWhycW9sIC5sZWFkLWFuaW0tbGluZS5pcy1oaWRpbmd7IG9wYWNpdHk6MDsgfQovKiBTb2xhcGUgZGUgMXB4IGVudGVyYSBlbnRyZSBs7W5lYXMgcGFyYSBjZXJyYXIgZWwgaGlsbyBkZSBzdWItcO14ZWwgcXVlCiAgIHB1ZWRlIHF1ZWRhciBlbnRyZSBzdXMgY2FqYXMgZGUgZm9uZG8gKHJlZG9uZGVvIGRlIGFsdHVyYXMgZnJhY2Npb25hcmlhcykgJiM4MjEyOwogICB2ZXIgbWlzbW8gY29tZW50YXJpbywgZGV0YWxsYWRvLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsLiAqLwouYmxrLWhycW9sIC5sZWFkLWFuaW0tbGluZSArIC5sZWFkLWFuaW0tbGluZXsKICBtYXJnaW4tdG9wOi0xcHg7Cn0KLmJsay1ocnFvbCAubGVhZC1hbmltLWxpbmU6Zmlyc3QtY2hpbGR7IHBhZGRpbmctdG9wOjZweDsgfQouYmxrLWhycW9sIC5sZWFkLWFuaW0tbGluZTpsYXN0LWNoaWxkeyBwYWRkaW5nLWJvdHRvbTo2cHg7IH0KLmJsay1ocnFvbCAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtcmlnaHQgLmxlYWQtYW5pbS1saW5lLAouYmxrLWhycW9sIC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1yaWdodCAubGVhZC1hbmltLWxpbmUsCi5ibGstaHJxb2wgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtYm90dG9tLXJpZ2h0IC5sZWFkLWFuaW0tbGluZXsgbWFyZ2luLWxlZnQ6YXV0bzsgbWFyZ2luLXJpZ2h0OjA7IH0KLmJsay1ocnFvbCAubGVhZC1hbmltLWhlYWRsaW5lcy5pcy1wb3NpdGl2ZSAubGVhZC1hbmltLWxpbmV7IGNvbG9yOiMwRTExMUE7IH0KLmJsay1ocnFvbCAubGVhZC1hbmltLWxpbmUtYmd7IHBvc2l0aW9uOmFic29sdXRlOyBpbnNldDowOyB6LWluZGV4Oi0xOyB9Ci5ibGstaHJxb2wgLmxlYWQtYW5pbS1saW5lLXRleHR7IHBvc2l0aW9uOnJlbGF0aXZlOyB9CkBrZXlmcmFtZXMgYmxrLWhycW9sLWFuaW0tbGluZS1yZXZlYWx7IHRveyBjbGlwLXBhdGg6aW5zZXQoMCAwIDAgMCk7IH0gfQoKLyogQW5jaG9yIG92ZXJsYXkgZm9yIGZ1bGwgY2xpY2thYmxlIGxlYWQgKi8KLmJsay1ocnFvbCAubGVhZC1saW5re3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7ei1pbmRleDoxfQoKLyogSG92ZXIgb3BhY2l0eSBhbmltYXRpb24gKi8KLmJsay1ocnFvbCAubGVhZDpob3ZlciAubGVhZC10aXRsZSwKLmJsay1ocnFvbCAuY29sdW1uLWl0ZW06aG92ZXJ7b3BhY2l0eTouOH0KLyogRm90byBwcmluY2lwYWwgKGZhbGxiYWNrL3NpbmdsZSkgbyBjYXJydXNlbCBkZSBmb3Rvczogb3BhY2lkYWQgMC45IGFsCiAgIHBhc2FyIGVsIHJhdPNuIHBvciBsYSB0YXJqZXRhICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuCiAgIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuIE5vIGFwbGljYSBhIHbtZGVvIG5pIGFsCiAgIGNvbXBhcmFkb3IgYW50ZXMvZGVzcHXpcy4gKi8KLmJsay1ocnFvbCAubGVhZC1tZWRpYSA+IGltZywKLmJsay1ocnFvbCAubGVhZC1tZWRpYSA+IC5sZWFkLWNhcm91c2Vse3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTt9Ci5ibGstaHJxb2wgLmxlYWQ6aG92ZXIgLmxlYWQtbWVkaWEgPiBpbWcsCi5ibGstaHJxb2wgLmxlYWQ6aG92ZXIgLmxlYWQtbWVkaWEgPiAubGVhZC1jYXJvdXNlbHtvcGFjaXR5Oi45O30KLyogRW4gZWwgYW5jaG8gbfN2aWwgKG1pc21vIEBjb250YWluZXIgcXVlIGVsIHJlc3RvIGRlbCBIVE1MIGV4cG9ydGFkbykgbm8KICAgYXBsaWNhIGVzdGEgYW5pbWFjafNuIGRlIG9wYWNpZGFkIHNvYnJlIGxhIG5vdGljaWEgcHJpbmNpcGFsOiB2YSBERVNQVclTCiAgIGRlIGxhIHJlZ2xhIGdlbmVyYWwgZGUgYXJyaWJhIChtaXNtYSBlc3BlY2lmaWNpZGFkKSBwYXJhIHBvZGVyIGdhbmFybGUuCiAgIE9taXRpZG8sIGlndWFsIHF1ZSBlbCBibG9xdWUgZGUgdGlwb2dyYWbtYSBkZSBhcnJpYmEsIG1pZW50cmFzIGxhCiAgIHNpbXVsYWNp824gZGUgYW5jaG8gZXN06SBhY3RpdmEgKHZlciBsZWFkV2lkdGhQcmV2aWV3KS4gKi8KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjg2MHB4KXsKICAuYmxrLWhycW9sIC5sZWFkOmhvdmVyIC5sZWFkLXRpdGxlLAogIC5ibGstaHJxb2wgLmxlYWQ6aG92ZXIgLmxlYWQtbWVkaWEgPiBpbWcsCiAgLmJsay1ocnFvbCAubGVhZDpob3ZlciAubGVhZC1tZWRpYSA+IC5sZWFkLWNhcm91c2Vse29wYWNpdHk6MTt9Cn0KCi8qIEFuaW1hY2nzbiBjb21wYXJ0aWRhIHBsYXkgcHJpbmNpcGFsICsgY3VhZHJhZG9zIHBsYXkgYXBpbGFkYXMgKi8KQGtleWZyYW1lcyBibGstaHJxb2wtYmxpbmt7CiAgMCUsMTAwJXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC43KX0KICA1MCV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMTY1LDI1NSwwLjkpfQp9Ci8qIENhYmVjZXJhICovCi5ibGstaHJxb2wgLmJnLXNlY3Rpb24tdGl0bGV7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW46MTBweCAwIDMycHh9Ci5ibGstaHJxb2wgLmZuZC1saW5lYXtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6NXB4O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7bWFyZ2luLXRvcDotMThweDtib3JkZXItdG9wOjFweCBzb2xpZCAjMzMzO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICMzMzN9Ci5ibGstaHJxb2wgLnNlY3Rpb24tdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dGV4dC1hbGlnbjpjZW50ZXI7bWFyZ2luOjA7bGluZS1oZWlnaHQ6MS4yO2xldHRlci1zcGFjaW5nOi0xcHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2JhY2tncm91bmQ6I2ZmZjtwYWRkaW5nOjRweCAxM3B4O2JvcmRlcjoxcHggc29saWQgIzBFMTExQTt0cmFuc2Zvcm06cm90YXRlWCg1ZGVnKSByb3RhdGVZKC0yNWRlZykgc2tld1goMGRlZyk7Zm9udC1zaXplOjQycHg7Y29sb3I6IzBFMTExQTt9CkBjb250YWluZXIgKG1heC1pbmxpbmUtc2l6ZTo4NjBweCl7LmJsay1ocnFvbCAuc2VjdGlvbi10aXRsZXtmb250LXNpemU6MjdweDtwYWRkaW5nOjAgMTBweH19Ci8qIENhYmVjZXJhICYjODIxMjsgRGlzZfFvIDIgKHRpdHVsYXIgKyBjYXJydXNlbCBkZSBsb2dvdGlwb3MpICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwKICAgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstaHJxb2wgLmhlYWRlcjJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MjBweDtwYWRkaW5nLWJvdHRvbTo1cHg7bWFyZ2luLWJvdHRvbToxMHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkICMwRTExMUE7fQovKiBhbGlnbi1zZWxmOmZsZXgtZW5kIGZpamEgZWwgdGl0dWxhciBTSUVNUFJFIGEgMTVweCBkZSBsYSBs7W5lYSBzZXBhcmFkb3JhCiAgIGVuIERlc2sgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zCiAgIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay1ocnFvbCAuaGVhZGVyMi1sZWZ0e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7ZmxleDoxIDEgNTAlO21pbi1pbmxpbmUtc2l6ZTowO2FsaWduLXNlbGY6ZmxleC1lbmQ7fQouYmxrLWhycW9sIC5oZWFkZXIyLXRhZ3N7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2ZsZXg6MCAwIGF1dG87fQovKiBNaXNtbyB0YW1h8W8vdGlwb2dyYWbtYSBxdWUgLmxlYWQtZXhjbHVzaXZlLXRhZyAobGEgZGUgbGEgbm90aWNpYQogICBwcmluY2lwYWwpICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUKICAgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstaHJxb2wgLmhlYWRlcjItY2F0LXRhZywKLmJsay1ocnFvbCAuaGVhZGVyMi1leGNsdXNpdmUtdGFne2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MnB4O2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo3MDA7Zm9udC1zaXplOi44ZW07bGV0dGVyLXNwYWNpbmc6LjVweDtwYWRkaW5nOjJweCA4cHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3doaXRlLXNwYWNlOm5vd3JhcDtjb2xvcjojZmZmO30KLmJsay1ocnFvbCAuaGVhZGVyMi1leGNsdXNpdmUtdGFnLWljb257cG9zaXRpb246c3RhdGljO2luc2V0OmF1dG87aW5saW5lLXNpemU6MTRweDtibG9jay1zaXplOjE0cHg7b2JqZWN0LWZpdDpjb250YWluO2ZsZXg6MCAwIGF1dG87ZGlzcGxheTpibG9jazt9Ci5ibGstaHJxb2wgLmhlYWRlcjItdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDtmb250LXNpemU6MzZweDtsaW5lLWhlaWdodDoxLjA1O2NvbG9yOiMwRTExMUE7bWFyZ2luOjA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO21pbi1pbmxpbmUtc2l6ZTowO292ZXJmbG93LXdyYXA6YnJlYWstd29yZDt9Ci8qIFNlcGFyYWNp824gZGUgMTBweCBlbnRyZSBlbCB0ZXh0byBkZSBwYXRyb2NpbmlvIHkgZWwgbG9nbyBlbiBEZXNrICYjODIxMjsgZW4KICAgTfN2aWwgc2lndWUgc2luIHNlcGFyYWNp824gKGdhcDowLCB2ZXIgQGNvbnRhaW5lciBt4XMgYWJham8pLiAqLwouYmxrLWhycW9sIC5oZWFkZXIyLWxvZ29zLXdyYXB7ZmxleDowIDAgYXV0bzttYXgtaW5saW5lLXNpemU6NTAlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO30KLyogRXRpcXVldGEgb3BjaW9uYWwganVudG8gYWwgY2FycnVzZWwgZGUgbG9nb3MgKHAuZWouICJQYXRyb2NpbmFkbyBwb3I6IikgJiM4MjEyOwogICB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbAogICBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay1ocnFvbCAuaGVhZGVyMi1sb2dvcy1sYWJlbHtmb250LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtmb250LXNpemU6MTBweDtmb250LXdlaWdodDo0MDA7Y29sb3I6IzY2Nzt3aGl0ZS1zcGFjZTpub3dyYXA7fQouYmxrLWhycW9sIC5oZWFkZXIyLWxvZ29ze3Bvc2l0aW9uOnJlbGF0aXZlO2lubGluZS1zaXplOjE2MHB4O2Jsb2NrLXNpemU6NTBweDtmbGV4LXNocmluazowO30KLmJsay1ocnFvbCAuaGVhZGVyMi1sb2dvcyBpbWd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDttYXJnaW46YXV0bzttYXgtaW5saW5lLXNpemU6MTAwJTttYXgtYmxvY2stc2l6ZToxMDAlO29iamVjdC1maXQ6Y29udGFpbjtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC43cyBlYXNlLWluLW91dDt9Ci5ibGstaHJxb2wgLmhlYWRlcjItbG9nb3MgaW1nLmlzLWFjdGl2ZXtvcGFjaXR5OjE7fQovKiBJZ3VhbCBxdWUgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbDogcG9yIGRlYmFqbyBkZSBlc3RlIGFuY2hvIHNlCiAgIGludGVudGEgcHJpbWVybyAxIFNPTEEgRklMQSAoZXRpcXVldGFzK3RpdHVsYXIganVudG8gYWwgbG9nbywgaWd1YWwgcXVlCiAgIGVuIERlc2ssIGEgdGFtYfFvIHJlZHVjaWRvKS4gRWwgYmxvcXVlIGRlIGxvZ29zIG1hbnRpZW5lIFNJRU1QUkUgc3UKICAgZGlzcG9zaWNp824gZW4gY29sdW1uYSAoZXRpcXVldGEgZGUgcGF0cm9jaW5pbyBlbmNpbWEgZGVsIGxvZ28sCiAgIGFsaW5lYWRvcyBhIGxhIGRlcmVjaGEsIHNpbiBzZXBhcmFjafNuKSB0YW50byBlbiBlc3RhIGZpbGEg+m5pY2EgY29tbyBlbgogICBlbCByZXNndWFyZG8gZGUgYWJham8uIFNpIGVsIHRpdHVsYXIsIHN1bWFkbyBhbCBhbmNobyBkZSBsYXMgZXRpcXVldGFzCiAgIGFjdGl2YXMgKGNhdGVnb3LtYSB5L28gZXhjbHVzaXZhLCBzaSBsYXMgaGF5KSwgc3VwZXJhIGVsIDU1JSBkZWwgYW5jaG8KICAgdG90YWwgZGUgbGEgY2FiZWNlcmEgKGNhZGEgdW5vIG1lZGlkbyBhIHVuYSBzb2xhIGztbmVhKSwgZWwgc2NyaXB0CiAgIHN0YW5kYWxvbmUgYfFhZGlkbyBhbCBmaW5hbCBkZSBlc3RlIEhUTUwgKHZlcgogICBidWlsZEhlYWRlcjJTdGFja2luZ1NjcmlwdCgpKSBsbyBkZXRlY3RhIG1pZGllbmRvIHN1IGFuY2hvIG5hdHVyYWwKICAgeSBh8WFkZSBsYSBjbGFzZSAiaGVhZGVyMi1zdGFja2VkIjogZWwgYmxvcXVlIGRlCiAgIGxvZ29zIHN1YmUgZW50b25jZXMgYSBzdSBwcm9waWEgZmlsYSAoYWxpbmVhZG8gYSBsYSBkZXJlY2hhKSB5CiAgIHRpdHVsYXIrZXRpcXVldGFzIGJhamFuIGEgbGEgZmlsYSBkZSBhYmFqbywgYSBhbmNobyBjb21wbGV0byAmIzgyMTI7IG1pc21vCiAgIGxheW91dCBkZSAyIGZpbGFzIHF1ZSBoYWLtYSBhbnRlcyBzaWVtcHJlIHBvciBkZWJham8gZGUgZXN0ZSBicmVha3BvaW50LAogICBhaG9yYSBzb2xvIGNvbW8gcmVzZ3VhcmRvLiBEZW50cm8gZGUgZXNlIHJlc2d1YXJkbywgY29uIGV0aXF1ZXRhKHMpIGVsCiAgIHRpdHVsYXIgcGFzYSBhZGVt4XMgYSBzdSBQUk9QSUEgZmlsYSBhIGFuY2hvIGNvbXBsZXRvLCBkZWJham8gZGUgbGEgZmlsYSBkZSBldGlxdWV0YXMgKHZlcgogICAiLmhlYWRlcjItc3RhY2tlZCAuaGVhZGVyMi1sZWZ0IiBt4XMgYWJham8pLiBFbCBsb2dvIHNlIHJlZHVjZSB1biAyMCUKICAgKDE2MHg1MCAmIzg1OTQ7IDEyOHg0MCkuCiAgIGFsaWduLXNlbGY6ZmxleC1lbmQgZW4gaGVhZGVyMi1sZWZ0IGZpamEgZWwgdGl0dWxhciBTSUVNUFJFIGEgbG9zIDEwcHgKICAgZGVsIHBhZGRpbmctYm90dG9tIHJlc3BlY3RvIGEgbGEgbO1uZWEgc2VwYXJhZG9yYSAmIzgyMTI7IG1pc21vIGNyaXRlcmlvIHF1ZQogICBlbiBEZXNrICh2ZXIgaGVhZGVyMi1sZWZ0IG3hcyBhcnJpYmEpOiBzaW4gZXN0bywgYWwgc2VyIGVsIGJsb3F1ZSBkZQogICBsb2dvcyBt4XMgYWx0byBxdWUgZWwgdGl0dWxhciwgZWwgY2VudHJhZG8gdmVydGljYWwgZGVsIHJvdyBkZWphYmEgdW4KICAgaHVlY28gbWF5b3IgZW50cmUgZWwgdGl0dWxhciB5IGxhIGztbmVhLiBFbCBibG9xdWUgZGUgbG9nb3Mgc2lndWUKICAgY2VudHJhZG8gKHNpbiBlc2Ugb3ZlcnJpZGUpLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6NDgwcHgpewogIC5ibGstaHJxb2wgLmhlYWRlcjJ7ZmxleC1kaXJlY3Rpb246cm93O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nLWxlZnQ6MTBweDtwYWRkaW5nLXJpZ2h0OjEwcHg7cGFkZGluZy1ib3R0b206MTBweDt9CiAgLmJsay1ocnFvbCAuaGVhZGVyMi1sZWZ0e29yZGVyOjE7YWxpZ24tc2VsZjpmbGV4LWVuZDt9CiAgLmJsay1ocnFvbCAuaGVhZGVyMi1sb2dvcy13cmFwe29yZGVyOjI7YWxpZ24tc2VsZjpjZW50ZXI7bWF4LWlubGluZS1zaXplOm5vbmU7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dhcDowO30KICAuYmxrLWhycW9sIC5oZWFkZXIyLWxvZ29ze2lubGluZS1zaXplOjEyOHB4O2Jsb2NrLXNpemU6NDBweDt9CiAgLmJsay1ocnFvbCAuaGVhZGVyMi10aXRsZXtmb250LXNpemU6MjdweDt9CiAgLmJsay1ocnFvbCAuaGVhZGVyMi5oZWFkZXIyLXN0YWNrZWR7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7fQogIC5ibGstaHJxb2wgLmhlYWRlcjIuaGVhZGVyMi1zdGFja2VkIC5oZWFkZXIyLWxlZnR7b3JkZXI6MjthbGlnbi1zZWxmOmZsZXgtc3RhcnQ7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOnN0cmV0Y2g7Z2FwOjVweDt9CiAgLmJsay1ocnFvbCAuaGVhZGVyMi5oZWFkZXIyLXN0YWNrZWQgLmhlYWRlcjItbG9nb3Mtd3JhcHtvcmRlcjoxO21heC1pbmxpbmUtc2l6ZToxMDAlO2FsaWduLXNlbGY6ZmxleC1lbmQ7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dhcDowO30KICAvKiBSZXNndWFyZG8gaW50ZXJtZWRpbyAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICAgIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGE6IHNvbG8gZWwgdGl0dWxhciBiYWphIGEgc3UKICAgICBwcm9waWEgZmlsYSBhIGFuY2hvIGNvbXBsZXRvIGN1YW5kbyBsYXMgZXRpcXVldGFzIFPNIGNhYmVuIGp1bnRvIGFsCiAgICAgbG9nbyBwZXJvIGVsIHRpdHVsYXIgbm8uIGhlYWRlcjItbGVmdCBwYXNhIGRlIGZpbGEgYSBjb2x1bW5hCiAgICAgKGV0aXF1ZXRhcyBhcnJpYmEsIHRpdHVsYXIgZGViYWpvKSB5IHJlY3VwZXJhIGFsaWduLXNlbGY6YXV0byBwYXJhCiAgICAgY2VudHJhcnNlIHZlcnRpY2FsbWVudGUgY29udHJhIGVsIGxvZ28gKGFsaWduLXNlbGY6Y2VudGVyIGRlIGxhIHJlZ2xhCiAgICAgYmFzZSBkZSAuaGVhZGVyMi1sb2dvcy13cmFwLCBhcnJpYmEpLCBpZ3VhbCBxdWUgZW4gZWwgcmVzdG8gZGUgZXN0YWRvcy4gKi8KICAuYmxrLWhycW9sIC5oZWFkZXIyLmhlYWRlcjItdGl0bGUtYmVsb3cgLmhlYWRlcjItbGVmdHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6c3RyZXRjaDthbGlnbi1zZWxmOmF1dG87Z2FwOjVweDt9Cn0KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjg2MHB4KXsKICAuYmxrLWhycW9sIC5jb2x1bW57ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dhcDoxMHB4O30KICAuYmxrLWhycW9sIC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tbGVmdCwKICAuYmxrLWhycW9sIC5jb2x1bW4taXRlbS5tb2ItZ3JpZC1zdGFuZGFsb25le2dyaWQtY29sdW1uOjEgLyAtMTt9CiAgLyogIWltcG9ydGFudDogbGEgcHJvcG9yY2nzbiBwcm9waWEgZGUgY2FkYSBub3RpY2lhICh2ZXIgbWVkaWFBc3BlY3RSYXRpbykKICAgICBzZSBhcGxpY2EgY29tbyBlc3RpbG8gaW5saW5lIHNvYnJlIGVsIHByb3BpbyAudGh1bWIgJiM4MjEyOyBzaW4gIWltcG9ydGFudAogICAgIGVzdGUgcmVzZ3VhcmRvIGRlbCBncmlkIGRlIDIgY29sdW1uYXMgZGVqYXLtYSBkZSB0ZW5lciBlZmVjdG8gZW4gY3VhbnRvCiAgICAgdW5hIG5vdGljaWEgdHJhamVyYSB1bmEgcHJvcG9yY2nzbiBkaXN0aW50YSBkZSA0OjMgKHZlciBtaXNtbyBjb21lbnRhcmlvLAogICAgIGRldGFsbGFkbywgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YSkuICovCiAgLmJsay1ocnFvbCAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcDpub3QoLm1vYi1ncmlkLXN0YW5kYWxvbmUpIC50aHVtYnthc3BlY3QtcmF0aW86NC8zICFpbXBvcnRhbnQ7fQogIC5ibGstaHJxb2wgLmNvbHVtbi1pdGVtLmxheW91dC1waG90by10b3A6bm90KC5tb2ItZ3JpZC1zdGFuZGFsb25lKSAubGVmdC10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MS4yZW07dGV4dC10cmFuc2Zvcm06bm9uZTtmb250LXdlaWdodDo2MDA7fQp9Ci8qIEVzdGlsbyAiZm90byBncmFuZGUgKyB0aXR1bGFyIjogZm90byAxNjo5IGFycmliYSwgdGl0dWxhciBkZWJham8gJiM4MjEyOyBlbGVnaWJsZQogICBwb3Igbm90aWNpYSBkZXNkZSBlbCBnZXN0b3IuIE5vIHNlIHJlc3RyaW5nZSBjb24gQGNvbnRhaW5lciBwb3JxdWUKICAgLmNvbHVtbi1pdGVtIHlhIGVzIGJsb2NrIHBvciBkZWZlY3RvIChlbCB0aHVtYiB5IGVsIHRleHRvIHNlIGFwaWxhbiBzb2xvcwogICBzaW4gbeFzIGFqdXN0ZSksIGFz7SBxdWUgZWwgZGlzZfFvIGZ1bmNpb25hIGlndWFsIGRlIGJpZW4gZW4gY3VhbHF1aWVyCiAgIGFuY2hvLCBEZXNrIG8gTfN2aWwuICovCi5ibGstaHJxb2wgLmNvbHVtbi1pdGVtLmxheW91dC1waG90by10b3B7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjt9Ci5ibGstaHJxb2wgLmNvbHVtbi1pdGVtLmxheW91dC1waG90by10b3AgLnRodW1ie2lubGluZS1zaXplOjEwMCU7YXNwZWN0LXJhdGlvOjE2Lzk7bWFyZ2luLWJvdHRvbToxMHB4O30KLmJsay1ocnFvbCAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcCAubGVmdC10aXRsZXtmb250LWZhbWlseToiYW1wbGl0dWRlLW1lZGl1bS1jb25kZW5zZWQiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjJlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Zm9udC13ZWlnaHQ6OTAwO30KLyogRW4gTfN2aWwgZWwgdGl0dWxhciBkZSBlc3RlIGRpc2XxbyBzZSBtdWVzdHJhIG3hcyBncmFuZGUgKDEuNXJlbSBlbiB2ZXogZGUKICAgbG9zIDEuMnJlbSBkZSBEZXNrKSAmIzgyMTI7IG1pc21hIGVzcGVjaWZpY2lkYWQgKDMgY2xhc2VzKSBxdWUgbGEgcmVnbGEgZGUKICAgYXJyaWJhOyBhbCBpciBERVNQVclTIGVuIGVsIENTUyBnYW5hIHBvciBvcmRlbiBkZSBjYXNjYWRhLiBTZSB1c2EgZWwKICAgYnJlYWtwb2ludCBkZSA0ODBweCAoZWwgZGUgdGlwb2dyYWbtYSBlbiBlc3RhIGFwcCwgbm8gZWwgZGUgODYwcHggcXVlIGFxde0KICAgc29sbyBnb2JpZXJuYSBlbCBhcGlsYWRvIGRlIGNvbHVtbmFzKSBwYXJhIHF1ZSBjb2luY2lkYSBjb24gZWwgcmVzdG8gZGUKICAgY2FtYmlvcyBkZSB0ZXh0by90YW1h8W8gcG9yIHZpc3RhLiBObyBhZmVjdGEgYWwgcmVzZ3VhcmRvIGRlIDIgY29sdW1uYXMgZW4KICAgbfN2aWwgKG1vYi1ncmlkKSwgbeFzIGVzcGVj7WZpY28gKDE4cHgsIHZlciBt4XMgYXJyaWJhKS4gKi8KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjQ4MHB4KXsKICAuYmxrLWhycW9sIC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tdG9wIC5sZWZ0LXRpdGxle2ZvbnQtc2l6ZToxLjVyZW07fQp9Ci8qIEVzdGlsbyAiQmxvcXVlIG1lZGlhIiAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLWhycW9sIC5tZWRpYS1ibG9jay1tZWRpYXtkaXNwbGF5OmJsb2NrO2lubGluZS1zaXplOjEwMCU7YmxvY2stc2l6ZTphdXRvO30KLmJsay1ocnFvbCAubWVkaWEtYmxvY2std3JhcHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrO30KLmJsay1ocnFvbCAubWVkaWEtYmxvY2staWZyYW1lLXdyYXB7cG9zaXRpb246cmVsYXRpdmU7aW5saW5lLXNpemU6MTAwJTthc3BlY3QtcmF0aW86MTYvOTtiYWNrZ3JvdW5kOiMwMDA7b3ZlcmZsb3c6aGlkZGVuO30KLmJsay1ocnFvbCAubWVkaWEtYmxvY2staWZyYW1lLXdyYXAgaWZyYW1le3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7Ym9yZGVyOjA7ZGlzcGxheTpibG9jazt9Ci5ibGstaHJxb2wgLmNvbHVtbi1pdGVtLmxheW91dC1tZWRpYS1ibG9ja3tib3JkZXI6bm9uZTtwYWRkaW5nOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtibG9jay1zaXplOmF1dG87ZmxleDowIDAgYXV0bzt9Ci5ibGstaHJxb2wgLmNvbHVtbi1pdGVtOm5vdCgubGF5b3V0LW1lZGlhLWJsb2NrKXtmbGV4OjEgMSBhdXRvO30KPC9zdHlsZT4KCjxkaXYgY2xhc3M9ImJsay1ocnFvbCI+CiAgCiAgPG1haW4gY2xhc3M9InBhZ2UiPgogICAgCiAgICA8YXJ0aWNsZSBjbGFzcz0ibGVhZCBsZWFkLWJvZHktbGVmdCI+CiAgICAgIDxkaXYgY2xhc3M9ImxlYWQtbWVkaWEiPgogICAgICAgIDxpbWcgc3JjPSJodHRwczovL29rZGlhcmlvLmNvbS9lc3BlY2lhbGVzL2FwcHMvbWVkaWEvZWwtcHJlc2lkZW50ZS1kZS1jb3JyZW9zLXF1ZS1nZXN0aW9uYXJhLWxvcy12b3Rvcy1kZWwtMjktbi1kaWpvLXF1ZS1zZS1jb250cmF0by1hLWxlaXJlLXBvci1zdS1jdXJyaWN1bHVtLXktbm8tcG9yLWVuY2h1ZmUtMjAyNjEwMDgtMDU0MDM3LTNmYmFmYS5qcGciIGFsdD0iRWwgcHJlc2lkZW50ZSBkZSBDb3JyZW9zIHF1ZSBnZXN0aW9uYXLhIGxvcyB2b3RvcyBkZWwgMjktTiBkaWpvIHF1ZSBzZSBjb250cmF08yBhIExlaXJlICZxdW90O3BvciBzdSBjdXJy7WN1bHVtJnF1b3Q7IHkgbm8gcG9yIGVuY2h1ZmUiIGxvYWRpbmc9ImVhZ2VyIiBmZXRjaHByaW9yaXR5PSJoaWdoIiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgIDxkaXYgY2xhc3M9ImxlYWQtb3ZlcmxheSIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6cmdiYSgxNCwxNywyNiwwLjAwKTsiPjwvZGl2PgogICAgICAgIAogICAgICAgIAogICAgICAgIAogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ibGVhZC1ib2R5IiBzdHlsZT0iYmFja2dyb3VuZDojMDBBN0ZGOyI+CiAgICAgICAgPHNwYW4gY2xhc3M9ImxlYWQtY2F0IiBzdHlsZT0iYmFja2dyb3VuZDojZmZmO2NvbG9yOiMwMEE3RkYiPkVTUEHRQTwvc3Bhbj4KICAgICAgICA8ZGl2IGNsYXNzPSJsZWFkLWJvZHktbWFpbiI+CiAgICAgICAgICAKICAgICAgICAgIDxoMiBjbGFzcz0ibGVhZC10aXRsZSI+PHNwYW4gY2xhc3M9ImxlYWQtdGl0bGUtZGVzayI+RWwgcHJlc2lkZW50ZSBkZSBDb3JyZW9zIHF1ZSBnZXN0aW9uYXLhIGxvcyB2b3RvcyBkZWwgMjktTiBkaWpvIHF1ZSBzZSBjb250cmF08yBhIExlaXJlICZxdW90O3BvciBzdSBjdXJy7WN1bHVtJnF1b3Q7IHkgbm8gcG9yIGVuY2h1ZmU8L3NwYW4+PHNwYW4gY2xhc3M9ImxlYWQtdGl0bGUtbW9iaWxlIj5FbCBwcmVzaWRlbnRlIGRlIENvcnJlb3MgcXVlIGdlc3Rpb25hcuEgbG9zIHZvdG9zIGRlbCAyOS1OIGRpam8gcXVlIHNlIGNvbnRyYXTzIGEgTGVpcmUgJnF1b3Q7cG9yIHN1IGN1cnLtY3VsdW0mcXVvdDsgeSBubyBwb3IgZW5jaHVmZTwvc3Bhbj48L2gyPgogICAgICAgICAgCiAgICAgICAgICA8c3BhbiBjbGFzcz0iYXV0aG9yLWxhYmVsIj5TZWd1bmRvIFNhbno8L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8YSBjbGFzcz0ibGVhZC1saW5rIiBocmVmPSJodHRwczovL29rZGlhcmlvLmNvbS9lc3BhbmEvcHJlc2lkZW50ZS1jb3JyZW9zLXF1ZS1nZXN0aW9uYXJhLXZvdG9zLWRlbC0yOW4tZGlqby1xdWUtY29udHJhdG8tbGVpcmUtY3VycmljdWx1bS1uby1lbmNodWZlLTIwNTA3NDc4IiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgdGl0bGU9IkVsIHByZXNpZGVudGUgZGUgQ29ycmVvcyBxdWUgZ2VzdGlvbmFy4SBsb3Mgdm90b3MgZGVsIDI5LU4gZGlqbyBxdWUgc2UgY29udHJhdPMgYSBMZWlyZSAmcXVvdDtwb3Igc3UgY3Vycu1jdWx1bSZxdW90OyB5IG5vIHBvciBlbmNodWZlIiBhcmlhLWxhYmVsPSJFbCBwcmVzaWRlbnRlIGRlIENvcnJlb3MgcXVlIGdlc3Rpb25hcuEgbG9zIHZvdG9zIGRlbCAyOS1OIGRpam8gcXVlIHNlIGNvbnRyYXTzIGEgTGVpcmUgJnF1b3Q7cG9yIHN1IGN1cnLtY3VsdW0mcXVvdDsgeSBubyBwb3IgZW5jaHVmZSI+PC9hPgogICAgPC9hcnRpY2xlPgogIDwvbWFpbj4KPC9kaXY+Cgo8c2NyaXB0PgooZnVuY3Rpb24oKXsKICB2YXIgYXJ0aWNsZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5ibGstaHJxb2wgLmxlYWQnKTsKICBpZiAoIWFydGljbGUpIHJldHVybjsKICB2YXIgbWFpbiA9IGFydGljbGUucXVlcnlTZWxlY3RvcignLmxlYWQtYm9keS1tYWluJyk7CiAgdmFyIHRpdGxlRWwgPSBhcnRpY2xlLnF1ZXJ5U2VsZWN0b3IoJy5sZWFkLXRpdGxlJyk7CiAgaWYgKCFtYWluIHx8ICF0aXRsZUVsKSByZXR1cm47CiAgdmFyIGJhc2VGb250U2l6ZVB4ID0gcGFyc2VGbG9hdChnZXRDb21wdXRlZFN0eWxlKHRpdGxlRWwpLmZvbnRTaXplKSB8fCAwOwogIGlmICghYmFzZUZvbnRTaXplUHgpIHJldHVybjsKICB2YXIgTUFYX1NDQUxFID0gMS44OwogIHZhciBNSU5fU0NBTEUgPSAwLjU7CiAgdmFyIE1BWF9GT05UX1BYID0gNjQ7IC8vIH40cmVtIGNvbiBsYSBiYXNlIGhhYml0dWFsIGRlIDE2cHggKG1pc21vIHRvcGUgcXVlIGZpdExlYWRUaXRsZVRvQm94KCkgZW4gZWwgZ2VzdG9yKQogIHZhciBib2R5UG9zaXRpb25CbG9ja3NGaXQgPSBhcnRpY2xlLmNsYXNzTGlzdC5jb250YWlucygnbGVhZC1ib2R5LWxlZnQnKSB8fCBhcnRpY2xlLmNsYXNzTGlzdC5jb250YWlucygnbGVhZC1ib2R5LXJpZ2h0Jyk7CiAgZnVuY3Rpb24gZml0KCl7CiAgICBpZiAoYm9keVBvc2l0aW9uQmxvY2tzRml0KSByZXR1cm47CiAgICB0aXRsZUVsLnN0eWxlLmZvbnRTaXplID0gYmFzZUZvbnRTaXplUHggKyAncHgnOwogICAgdmFyIGF2YWlsYWJsZUhlaWdodCA9IG1haW4uY2xpZW50SGVpZ2h0OwogICAgaWYgKCFhdmFpbGFibGVIZWlnaHQpIHJldHVybjsKICAgIC8vIFZlciBtaXNtbyBjb21lbnRhcmlvLCBkZXRhbGxhZG8sIGVuIGZpdExlYWRUaXRsZVRvQm94KCkgZGVsIGdlc3RvcjoKICAgIC8vIG1haW4uc2Nyb2xsSGVpZ2h0IG51bmNhIGJhamEgZGUgY2xpZW50SGVpZ2h0IGF1bnF1ZSBlbCBjb250ZW5pZG8gcmVhbAogICAgLy8gb2N1cGUgbWVub3MsIGFz7SBxdWUgbm8gc2lydmUgcGFyYSBkZXRlY3RhciBjdeFudG8gc29icmEgbyBmYWx0YSBjb24KICAgIC8vIGVsIHRpdHVsYXIgYWN0dWFsICYjODIxMjsgc2Ugc3VtYSBlbiBzdSBsdWdhciBlbCBhbHRvIHJlYWwgZGUgY2FkYSBoaWpvCiAgICAvLyBWSVNJQkxFIGRlbCBibG9xdWUsIHNhbHZvIGVsIHByb3BpbyB0aXR1bGFyLCBt4XMgZWwgaHVlY28gKCJnYXAiKQogICAgLy8gZW50cmUgZWxsb3M7IG5vIGNhbWJpYSBjb24gZWwgdGFtYfFvIGRlbCB0aXR1bGFyLCBhc+0gcXVlIHNlIG1pZGUgdW5hCiAgICAvLyBzb2xhIHZleiwgYW50ZXMgZGUgbGEgYvpzcXVlZGEgYmluYXJpYS4KICAgIHZhciBnYXBQeCA9IHBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZShtYWluKS5yb3dHYXApIHx8IHBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZShtYWluKS5nYXApIHx8IDA7CiAgICB2YXIgdmlzaWJsZUNoaWxkcmVuID0gW10uc2xpY2UuY2FsbChtYWluLmNoaWxkcmVuKS5maWx0ZXIoZnVuY3Rpb24oYyl7IHJldHVybiBnZXRDb21wdXRlZFN0eWxlKGMpLmRpc3BsYXkgIT09ICdub25lJzsgfSk7CiAgICB2YXIgb3RoZXJzSGVpZ2h0ID0gdmlzaWJsZUNoaWxkcmVuLmZpbHRlcihmdW5jdGlvbihjKXsgcmV0dXJuIGMgIT09IHRpdGxlRWw7IH0pLnJlZHVjZShmdW5jdGlvbihzdW0sIGMpeyByZXR1cm4gc3VtICsgYy5vZmZzZXRIZWlnaHQ7IH0sIDApCiAgICAgICsgZ2FwUHggKiBNYXRoLm1heCgwLCB2aXNpYmxlQ2hpbGRyZW4ubGVuZ3RoIC0gMSk7CiAgICB2YXIgYXZhaWxhYmxlRm9yVGl0bGUgPSBNYXRoLm1heCgwLCBhdmFpbGFibGVIZWlnaHQgLSBvdGhlcnNIZWlnaHQpOwogICAgaWYgKCFhdmFpbGFibGVGb3JUaXRsZSkgcmV0dXJuOwogICAgZnVuY3Rpb24gaGVpZ2h0QXRTY2FsZShzY2FsZSl7CiAgICAgIHRpdGxlRWwuc3R5bGUuZm9udFNpemUgPSBNYXRoLm1pbihiYXNlRm9udFNpemVQeCAqIHNjYWxlLCBNQVhfRk9OVF9QWCkgKyAncHgnOwogICAgICByZXR1cm4gdGl0bGVFbC5vZmZzZXRIZWlnaHQ7CiAgICB9CiAgICB2YXIgbG8gPSBNSU5fU0NBTEUsIGhpID0gTUFYX1NDQUxFOwogICAgZm9yICh2YXIgaSA9IDA7IGkgPCA4OyBpKyspewogICAgICB2YXIgbWlkID0gKGxvICsgaGkpIC8gMjsKICAgICAgaWYgKGhlaWdodEF0U2NhbGUobWlkKSA8PSBhdmFpbGFibGVGb3JUaXRsZSkgbG8gPSBtaWQ7IGVsc2UgaGkgPSBtaWQ7CiAgICB9CiAgICBoZWlnaHRBdFNjYWxlKGxvKTsKICB9CiAgZml0KCk7CiAgaWYgKGRvY3VtZW50LmZvbnRzICYmIGRvY3VtZW50LmZvbnRzLnJlYWR5KXsgZG9jdW1lbnQuZm9udHMucmVhZHkudGhlbihmaXQpOyB9CiAgaWYgKHdpbmRvdy5SZXNpemVPYnNlcnZlcil7IG5ldyBSZXNpemVPYnNlcnZlcihmaXQpLm9ic2VydmUoYXJ0aWNsZSk7IH0KICBlbHNlIHsgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIGZpdCk7IH0KfSkoKTsKPC9zY3JpcHQ+
    • El precio de la luz amenaza con casi triplicarse este invierno si no se reabre el estrecho de Ormuz
        • Economía
        • Economía

      El precio de la luz amenaza con duplicarse este invierno si no se reabre el estrecho de Ormuz

      Cuando EEUU e Israel iniciaron sus ataques contra Irán el 28 de febrero, Donald Trump aseguró que el conflicto duraría poco. Sin embargo, han pasado siete meses y Teherán no ha dado ninguna indicación de que vaya a ceder a las pretensiones estadounidenses —más allá de la firma de una tregua más bien frágil y que duró apenas tres meses—. El estrecho sigue cerrado y sin visos de abrir pronto.
      • Xavier Vilaltella
      • 2026-10-08 05:45
    • Sánchez cancela el AVE a Sevilla y contrata un avión privado para ir a sus actos electorales de este fin de semana
        • España
        • España

      Sánchez cancela el AVE a Sevilla y contrata un avión privado para ir a sus actos electorales de este fin de semana

      • Irene Tabera
      • 2026-10-08 05:48
    • Sánchez se marcha a Bruselas del 14 al 16 de octubre para evitar acompañar a los Reyes a Ceuta
        • España
        • España

      Sánchez se marcha a Bruselas del 14 al 16 de octubre para evitar acompañar a los Reyes a Ceuta

      • Irene Tabera
      • 2026-10-08 05:47
    • PGlmcmFtZSBoZWlnaHQ9JzM1MHB4JyB3aWR0aD0nMTAwJScgICAgIHNyYz0iaHR0cHM6Ly9va2RpYXJpby5jb20vZXNwZWNpYWxlcy9hcHBzL2h0bWwveTdoc3J2LWNhcnJ1c2VsLWRpcmVjdG9zLnBocD9tb2RlPWRlc2siICAgZnJhbWVib3JkZXI9IjAiIHNjcm9sbGluZz0ibm8iIHN0eWxlPSJib3JkZXI6MDtkaXNwbGF5OmJsb2NrO21heC0iPjwvaWZyYW1lPg==
      PGlmcmFtZSBoZWlnaHQ9JzY1MHB4JyB3aWR0aD0nMTAwJScgICBzcmM9Imh0dHBzOi8vb2tkaWFyaW8uY29tL2VzcGVjaWFsZXMvYXBwcy9odG1sL3k3aHNydi1jYXJydXNlbC1kaXJlY3Rvcy5waHA/bW9kZT1tb2JpbGUiICAgZnJhbWVib3JkZXI9IjAiIHNjcm9sbGluZz0ibm8iIHN0eWxlPSJib3JkZXI6MDtkaXNwbGF5OmJsb2NrO21heC0iPjwvaWZyYW1lPg==
    • El asesino de un joven de Parla graba vídeos en la cárcel riéndose de la familia de la víctima: Preso, pero no muerto
        • Sucesos
        • Sucesos

      El asesino de un joven de Parla graba vídeos en la cárcel riéndose de su familia: "Preso, pero no muerto"

      • Ángel Moya
      • 2026-10-08 05:48
    • Título
        • Categoria
        • Navarra

      El proetarra que apaleó a unos militares en Navarra rompe a llorar ante la juez: "quiero ver a mis padres"

      • José Ignacio de Quesada
    • El vestuario tampoco entiende a Mbappé
    • El Pazo de Meirás al mejor postor, de 100 a 5.000 euros por los recuerdos de Franco: No se puede politizar una taza
        • Cool
        • Cool

      El Pazo de Meirás al mejor postor, de 100 a 5.000 euros por los recuerdos de Franco: "No se puede politizar una taza"

      • Marta Menéndez
      • 2026-10-08 05:45
    • Bustamante sorprende en
        • Cool
        • Cool

      Bustamante sorprende en 'El Hormiguero' sobre su economía más allá de la música: "Podría vivir sólo de eso"

      • Sergio Espí
      • 2026-10-07 23:28
    • El desahucio del perro
    • Transición sostenible, competitividad y agua: la V Jornada OKGREEN reúne en Madrid a empresas e instituciones
    • OK AL DÍA

    • Es oficial y está confirmado por el Gobierno: se prorrogarán de forma automática hasta 36 meses los contratos de alquiler a partir del quinto año si tu casero no avisa
        • Economía
        • Economía

      el alquiler se prorrogará automáticamente a partir del quinto año si tu casero no avisa

      • Álvaro Olivero
      • 2026-10-08 11:06
    • Un panadero valenciano comienza a trabajar solo en el obrador a las 0:00 de la madrugada: No es lo mismo hacerlo ahora que a las 11 de la mañana
        • Economía
        • Economía

      Un panadero comienza a trabajar a las 00:00 horas: "No es lo mismo hacerlo a las 11:00"

      • Manuel Morera
      • 2026-10-08 10:30
    • Los chinches de cama llegan en otoño, pero hay un pesticida natural más eficaz que los insecticidas químicos capaz de eliminar hasta el 97%
        • Curiosidades
        • Curiosidades

      Los chinches de cama llegan en otoño pero hay un pesticida natural capaz de eliminar hasta el 97%

      Las chinches de cama resisten ya a muchos insecticidas, pero un polvo mineral sin olor logró superar a un químico en condiciones reales. Un estudio de 2009 de investigadores de Rutgers y Purdue comparó dos programas en 16 apartamentos durante diez semanas: el que usaba tierra de diatomeas redujo el recuento de chinches un 97,6%, frente al 89,7% del clorfenapir. Ambos incluyeron vapor y fundas para colchones, y el coste resultó casi idéntico en los dos grupos.
      • Sofía Narváez
      • 2026-10-08 10:00
    • Con 88 años a Manuela le han okupado su casa en Arenas de San Juan: Me he encontrado con seis personas dentro. Y sin pagarme y amenazándome además
        • Sociedad
        • Sociedad

      a Manuela le han okupado su casa en Arenas de San Juan: "Me he encontrado con seis personas"

      • Janire Manzanas
      • 2026-10-08 11:00
    • Buscan voluntarios para vivir gratis en plena naturaleza en una finca de Gredos a cambio de cuidar animales solo unas horas al día
        • Curiosidades
        • Curiosidades

      Buscan voluntarios para vivir gratis en una finca de Gredos a cambio de cuidar animales

      • Janire Manzanas
      • 2026-10-08 08:00
    • Los expertos en floristería coinciden: La mejor planta de interior si tienes perros o gatos en casa es la palma de salón
        • Naturaleza
        • Naturaleza

      expertos en floristería: "La mejor planta si tienes perros o gatos en casa es la palma de salón"

      • Ana López Vera
      • 2026-10-08 08:15
    • La psicología deja claro que los que nacieron en 1950-1960 fueron mas felices que los jóvenes de hoy por que no tenían tantos bienes materiales
        • Curiosidades
        • Curiosidades

      los nacidos entre 1950 y 1960 fueron mas felices porque no tenían tantos bienes materiales

      • Janire Manzanas
      • 2026-10-08 11:30
    • Federico García Lorca dejó esta reflexión sobre los más desfavorecidos: En este mundo yo siempre he sido y seré un partidario de los que no tienen nada
        • Curiosidades
        • Curiosidades

      Lorca dejó esta reflexión sobre los más desfavorecidos: "En este mundo yo siempre he sido..."

      • Aitana Pascual
      • 2026-10-08 11:30
    • Antonio Gala, escritor español, sobre la felicidad: «No consiste en tener todo lo que se desea, sino que lo que se desea es la felicidad en sí. No se trata de sumar objetos»
        • Curiosidades
        • Curiosidades

      Antonio Gala, sobre la felicidad: "No consiste en tener todo lo que se desea, sino en..."

      • Pedro Antolinos
      • 2026-10-08 07:30
    • ICAgIDxzdHlsZT4KICAgIEBpbXBvcnQgdXJsKCdodHRwczovL3VzZS50eXBla2l0Lm5ldC9pcWExcWViLmNzcycpOwoKICAgIC8qIENvbnRlbmVkb3IgcHJpbmNpcGFsIGxpbWl0YWRvIGEgOTYwcHggZW4gZXNjcml0b3JpbyAqLwogICAgLmN2LThqdnliIC5zZWN0aW9ue21heC13aWR0aDo5NjBweDttYXJnaW46MCBhdXRvO3dpZHRoOjEwMCV9CgogICAgLmN2LThqdnliIC5iZy1zZWN0aW9uLXRpdGxle2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWFyZ2luOjhweCAwIDUwcHh9CiAgICAuY3YtOGp2eWIgLmZuZC1saW5lYXt3aWR0aDoxMDAlO2hlaWdodDo1cHg7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTttYXJnaW4tdG9wOi0yNXB4O2JvcmRlci10b3A6MXB4IHNvbGlkICMzMzM7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzMzM30KICAgIC5jdi04anZ5YiAuc2VjdGlvbi10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6OTAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW46MDtsaW5lLWhlaWdodDoxLjI7bGV0dGVyLXNwYWNpbmc6LTFweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7YmFja2dyb3VuZDojZmZmO3BhZGRpbmc6NHB4IDEzcHg7Ym9yZGVyOjFweCBzb2xpZCAjMzMzO2ZvbnQtc2l6ZTo0MnB4O3RyYW5zZm9ybTpyb3RhdGVYKDVkZWcpIHJvdGF0ZVkoLTI1ZGVnKSBza2V3WCgwZGVnKX0KCiAgICAuY3YtOGp2eWIgLmNhcm91c2Vsey0tZ2FwOjE2cHg7LS1wZWVrOjEwJTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDp2YXIoLS1nYXApO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLWJvdHRvbTo2cHh9CiAgICAuY3YtOGp2eWIgLnRyYWNre2Rpc3BsYXk6ZmxleDtnYXA6dmFyKC0tZ2FwKTtvdmVyZmxvdy14OmF1dG87b3ZlcmZsb3cteTpoaWRkZW47c2Nyb2xsLXNuYXAtdHlwZTp4IG1hbmRhdG9yeTtzY3JvbGwtYmVoYXZpb3I6c21vb3RoO3Njcm9sbGJhci13aWR0aDpub25lOy1tcy1vdmVyZmxvdy1zdHlsZTpub25lO3BhZGRpbmctcmlnaHQ6MH0KICAgIC5jdi04anZ5YiAudHJhY2s6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0KICAgIC5jdi04anZ5YiAuY2FyZHtwb3NpdGlvbjpyZWxhdGl2ZTtmbGV4OjAgMCBhdXRvO3Njcm9sbC1zbmFwLWFsaWduOnN0YXJ0O3dpZHRoOmNhbGMoKDEwMCUgLSAyKnZhcigtLWdhcCkgLSB2YXIoLS1wZWVrKSkvMyk7YXNwZWN0LXJhdGlvOjkvMTY7Ym9yZGVyLXJhZGl1czoxMHB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOiMwMDA7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDZweCk7dHJhbnNpdGlvbjpvcGFjaXR5IC40cyBlYXNlLCB0cmFuc2Zvcm0gLjRzIGVhc2V9CiAgICAuY3YtOGp2eWIgLmNhcmQuaXMtaW57b3BhY2l0eToxO3RyYW5zZm9ybTpub25lfQoKICAgIC5jdi04anZ5YiAudGh1bWJ7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO29iamVjdC1maXQ6Y292ZXI7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjM1cyBlYXNlLCBvcGFjaXR5IC4yNXMgZWFzZTt0cmFuc2Zvcm06c2NhbGUoMS4wMSl9CiAgICAuY3YtOGp2eWIgLmNhcmQ6aG92ZXIgLnRodW1iLC5jdi04anZ5YiAuY2FyZDpmb2N1cy12aXNpYmxlIC50aHVtYnt0cmFuc2Zvcm06c2NhbGUoMS4wNil9CiAgICAvKiBTaW4gb3ZlcmxheXMgcGVyc29uYWxpemFkb3M6IHNlIHVzYW4gY29udHJvbGVzIG5hdGl2b3MgZGVsIHBsYXllciAqLwoKICAgIC5jdi04anZ5YiAuYXJ7cG9zaXRpb246cmVsYXRpdmV9CiAgICAuY3YtOGp2eWIgLmFycm93e3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7d2lkdGg6NDRweDtoZWlnaHQ6NDRweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnJnYigyNTUgMjU1IDI1NSAvIDIwJSk7Ym94LXNoYWRvdzowIDZweCAxNnB4IHJnYigwIDAgMCAvIDIwJSk7Ym9yZGVyOjFweCBzb2xpZCAjZmZmO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjI7dHJhbnNpdGlvbjouM3N9CiAgICAuY3YtOGp2eWIgLmFycm93OmhvdmVye2JhY2tncm91bmQ6cmdiKDAgMCAwIC8gMjAlKTtib3JkZXI6MXB4IHNvbGlkICNmZmZ9CiAgICAuY3YtOGp2eWIgLmFycm93OmZvY3Vze2JhY2tncm91bmQ6cmdiKDI1NSAyNTUgMjU1IC8gMjAlKX0KICAgIC5jdi04anZ5YiAuYXJyb3cgc3Zne3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHh9CiAgICAuY3YtOGp2eWIgLmFycm93LmxlZnR7bGVmdDoxMHB4fQogICAgLmN2LThqdnliIC5hcnJvdy5yaWdodHtyaWdodDoxMHB4fQoKICAgIEBtZWRpYSAobWF4LXdpZHRoOjc2OHB4KXsKICAgICAgLyogRW4gbfN2aWwsIGVsIGNvbnRlbmVkb3Igb2N1cGEgdG9kbyBlbCBhbmNobyAqLwogICAgICAuY3YtOGp2eWIgLnNlY3Rpb257bWF4LXdpZHRoOjEwMCV9CiAgICAgIC5jdi04anZ5YiAuc2VjdGlvbi10aXRsZXtmb250LXNpemU6MjdweDtwYWRkaW5nOjJweCA4cHg7dHJhbnNmb3JtOnJvdGF0ZVgoNWRlZykgcm90YXRlWSgtMjVkZWcpIHNrZXdYKDBkZWcpfQogICAgICAuY3YtOGp2eWIgLmNhcm91c2Vsey0tcGVlazoxMiV9CiAgICAgIC8qIDIgdGFyamV0YXMgY29tcGxldGFzICsgdW4gcGVlayBkZSBsYSAzqiAqLwogICAgICAuY3YtOGp2eWIgLmNhcmR7d2lkdGg6Y2FsYygoMTAwJSAtIDQqdmFyKC0tZ2FwKSAtIHZhcigtLXBlZWspKS8xKX0KICAgICAgLmN2LThqdnliIC5hcnJvd3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudH0KICAgICAgLmN2LThqdnliIC50cmFja3tvdmVyZmxvdy14OmF1dG87b3ZlcmZsb3cteTpoaWRkZW47cGFkZGluZy1yaWdodDowfQogICAgfQogICAgPC9zdHlsZT4KCiAgICA8ZGl2IGNsYXNzPSJjdi04anZ5YiI+CiAgICAgIDxzZWN0aW9uIGNsYXNzPSJzZWN0aW9uIiBhcmlhLWxhYmVsPSJDYXJydXNlbCBkZSB27WRlb3MgKFNob3J0cykiPgogICAgICAgIDxkaXYgY2xhc3M9ImJnLXNlY3Rpb24tdGl0bGUiPgogICAgICAgICAgPGgyIGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5Mb3MgJ3Nob3J0cycgZGUgT0tESUFSSU88L2gyPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImZuZC1saW5lYSI+PC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImFyIiByb2xlPSJyZWdpb24iIGFyaWEtbGFiZWw9Ikxpc3RhZG8gZGUgdu1kZW9zIj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFycm93IGxlZnQiIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iQW50ZXJpb3IiPgogICAgICAgICAgICA8c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik0xNSA2bC02IDYgNiA2IiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48L3BhdGg+PC9zdmc+CiAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFycm93IHJpZ2h0IiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9IlNpZ3VpZW50ZSI+CiAgICAgICAgICAgIDxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTkgMThsNi02LTYtNiIgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PC9wYXRoPjwvc3ZnPgogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJvdXNlbCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRyYWNrIiByb2xlPSJsaXN0Ij4KCiAgICAgICAgPGEgY2xhc3M9ImNhcmQiIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3Nob3J0cy9MemtfS3Y3TnR5cyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGRhdGEteXQtaWQ9Ikx6a19LdjdOdHlzIiB0aXRsZT0iVmVyIHNob3J0Ij4KICAgICAgICAgIDxpbWcgY2xhc3M9InRodW1iIiBzcmM9Imh0dHBzOi8vaS55dGltZy5jb20vdmkvTHprX0t2N050eXMvaHFkZWZhdWx0LmpwZyIgYWx0PSJZb3VUdWJlIFNob3J0IDEiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgPC9hPgogICAgICAgIDxhIGNsYXNzPSJjYXJkIiBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9zaG9ydHMvQVhQRmJFTTRUNkUiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIiBkYXRhLXl0LWlkPSJBWFBGYkVNNFQ2RSIgdGl0bGU9IlZlciBzaG9ydCI+CiAgICAgICAgICA8aW1nIGNsYXNzPSJ0aHVtYiIgc3JjPSJodHRwczovL2kueXRpbWcuY29tL3ZpL0FYUEZiRU00VDZFL2hxZGVmYXVsdC5qcGciIGFsdD0iWW91VHViZSBTaG9ydCAyIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgIDwvYT4KICAgICAgICA8YSBjbGFzcz0iY2FyZCIgaHJlZj0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vc2hvcnRzL0M2ZTNETHRxVkNFIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgZGF0YS15dC1pZD0iQzZlM0RMdHFWQ0UiIHRpdGxlPSJWZXIgc2hvcnQiPgogICAgICAgICAgPGltZyBjbGFzcz0idGh1bWIiIHNyYz0iaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS9DNmUzREx0cVZDRS9ocWRlZmF1bHQuanBnIiBhbHQ9IllvdVR1YmUgU2hvcnQgMyIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIj4KICAgICAgICA8L2E+CiAgICAgICAgPGEgY2xhc3M9ImNhcmQiIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3Nob3J0cy9XYTRuYU1NYmE4QSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGRhdGEteXQtaWQ9IldhNG5hTU1iYThBIiB0aXRsZT0iVmVyIHNob3J0Ij4KICAgICAgICAgIDxpbWcgY2xhc3M9InRodW1iIiBzcmM9Imh0dHBzOi8vaS55dGltZy5jb20vdmkvV2E0bmFNTWJhOEEvaHFkZWZhdWx0LmpwZyIgYWx0PSJZb3VUdWJlIFNob3J0IDQiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgPC9hPgogICAgICAgIDxhIGNsYXNzPSJjYXJkIiBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9zaG9ydHMvY1Jmd29haUJkRGciIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIiBkYXRhLXl0LWlkPSJjUmZ3b2FpQmREZyIgdGl0bGU9IlZlciBzaG9ydCI+CiAgICAgICAgICA8aW1nIGNsYXNzPSJ0aHVtYiIgc3JjPSJodHRwczovL2kueXRpbWcuY29tL3ZpL2NSZndvYWlCZERnL2hxZGVmYXVsdC5qcGciIGFsdD0iWW91VHViZSBTaG9ydCA1IiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgIDwvYT4KICAgICAgICA8YSBjbGFzcz0iY2FyZCIgaHJlZj0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vc2hvcnRzLzA5SjlGQUhWVkowIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgZGF0YS15dC1pZD0iMDlKOUZBSFZWSjAiIHRpdGxlPSJWZXIgc2hvcnQiPgogICAgICAgICAgPGltZyBjbGFzcz0idGh1bWIiIHNyYz0iaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS8wOUo5RkFIVlZKMC9ocWRlZmF1bHQuanBnIiBhbHQ9IllvdVR1YmUgU2hvcnQgNiIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIj4KICAgICAgICA8L2E+CiAgICAgICAgPGEgY2xhc3M9ImNhcmQiIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3Nob3J0cy9MLU9wTEU0LWRINCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGRhdGEteXQtaWQ9IkwtT3BMRTQtZEg0IiB0aXRsZT0iVmVyIHNob3J0Ij4KICAgICAgICAgIDxpbWcgY2xhc3M9InRodW1iIiBzcmM9Imh0dHBzOi8vaS55dGltZy5jb20vdmkvTC1PcExFNC1kSDQvaHFkZWZhdWx0LmpwZyIgYWx0PSJZb3VUdWJlIFNob3J0IDciIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgPC9hPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L3NlY3Rpb24+CiAgICA8L2Rpdj4KICAgIDxzY3JpcHQ+CiAgICAoZnVuY3Rpb24oKXsKICAgICAgdmFyIHJvb3QgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuY3YtOGp2eWInKTsKICAgICAgaWYgKCFyb290KSByZXR1cm47CiAgICAgIHZhciB0cmFjayA9IHJvb3QucXVlcnlTZWxlY3RvcignLnRyYWNrJyk7CiAgICAgIGlmICghdHJhY2spIHJldHVybjsKCiAgICAgIHZhciBhcnJvd3MgPSByb290LnF1ZXJ5U2VsZWN0b3JBbGwoJy5hcnJvdycpOwogICAgICB2YXIgR0FQID0gMTY7CgogICAgICBmdW5jdGlvbiBnZXRDYXJkV2lkdGgoKXsKICAgICAgICB2YXIgZmlyc3QgPSByb290LnF1ZXJ5U2VsZWN0b3IoJy5jYXJkJyk7CiAgICAgICAgaWYgKCFmaXJzdCkgcmV0dXJuIDA7CiAgICAgICAgcmV0dXJuIGZpcnN0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoOwogICAgICB9CgogICAgICBmdW5jdGlvbiBnZXRDYXJkc1BlclBhZ2UoKXsKICAgICAgICAvLyBEZXNrOiBhdmFuemEgZGUgdW5hIGVuIHVuYSB0YXJqZXRhCiAgICAgICAgcmV0dXJuICh3aW5kb3cuaW5uZXJXaWR0aCA8PSA3NjgpID8gMiA6IDE7CiAgICAgIH0KCiAgICAgIGFycm93cy5mb3JFYWNoKGZ1bmN0aW9uKGJ0bil7CiAgICAgICAgYnRuLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24oZSl7CiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgICB2YXIgZGlyID0gdGhpcy5jbGFzc0xpc3QuY29udGFpbnMoJ2xlZnQnKSA/IC0xIDogMTsKICAgICAgICAgIHZhciBjYXJkVyA9IGdldENhcmRXaWR0aCgpOwogICAgICAgICAgaWYgKCFjYXJkVykgcmV0dXJuOwogICAgICAgICAgdmFyIHN0ZXAgPSAoY2FyZFcgKyBHQVApICogZ2V0Q2FyZHNQZXJQYWdlKCkgKiBkaXI7CiAgICAgICAgICB0cmFjay5zY3JvbGxCeSh7IGxlZnQ6IHN0ZXAsIGJlaGF2aW9yOiAnc21vb3RoJyB9KTsKICAgICAgICB9KTsKICAgICAgfSk7CgogICAgICAvLyBGYWRlLWluIGFsIGVudHJhciBlbiB2aWV3cG9ydAogICAgICB2YXIgaW8gPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZnVuY3Rpb24oZW50cmllcyl7CiAgICAgICAgZW50cmllcy5mb3JFYWNoKGZ1bmN0aW9uKGVuKXsgaWYoZW4uaXNJbnRlcnNlY3RpbmcpeyBlbi50YXJnZXQuY2xhc3NMaXN0LmFkZCgnaXMtaW4nKTsgfSB9KTsKICAgICAgfSwgeyByb290OiB0cmFjaywgdGhyZXNob2xkOiAwLjEgfSk7CiAgICAgIHJvb3QucXVlcnlTZWxlY3RvckFsbCgnLmNhcmQnKS5mb3JFYWNoKGZ1bmN0aW9uKGMpeyBpby5vYnNlcnZlKGMpOyB9KTsKCiAgICAgIC8vIENsaWNrIHBlcnNpc3RlbnRlIChzaW4gdGVhc2VyIHBvciBob3ZlcikKICAgICAgZnVuY3Rpb24gbWFrZUVtYmVkVXJsKGlkLCBvcHRzKXsKICAgICAgICB2YXIgcXMgPSBbCiAgICAgICAgICAnYXV0b3BsYXk9JyArIChvcHRzICYmIG9wdHMuYXV0b3BsYXk/ICcxJzonMCcpLAogICAgICAgICAgJ3BsYXlzaW5saW5lPTEnLCdmcz0xJywnaXZfbG9hZF9wb2xpY3k9MycsJ3Nob3dpbmZvPTEnLCdyZWw9MCcsJ2NjX2xvYWRfcG9saWN5PTAnLCdzdGFydD0wJywKICAgICAgICAgICdtdXRlPScgKyAob3B0cyAmJiBvcHRzLm11dGU/ICcxJzonMCcpLAogICAgICAgICAgKG9wdHMgJiYgb3B0cy5jb250cm9scz09PTA/ICdjb250cm9scz0wJzonY29udHJvbHM9MScpLAogICAgICAgICAgJ21vZGVzdGJyYW5kaW5nPTEnLCdlbmFibGVqc2FwaT0xJwogICAgICAgIF0uam9pbignJicpOwogICAgICAgIHJldHVybiAnaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvJyArIGlkICsgJz8nICsgcXM7CiAgICAgIH0KCiAgICAgIC8vIENhcmdhciBBUEkgZGUgWW91VHViZSBiYWpvIGRlbWFuZGEKICAgICAgdmFyIHl0QXBpUHJvbWlzZSA9IG51bGw7CiAgICAgIGZ1bmN0aW9uIGVuc3VyZVlUQXBpKCl7CiAgICAgICAgaWYgKHdpbmRvdy5ZVCAmJiB3aW5kb3cuWVQuUGxheWVyKSByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7CiAgICAgICAgaWYgKHl0QXBpUHJvbWlzZSkgcmV0dXJuIHl0QXBpUHJvbWlzZTsKICAgICAgICB5dEFwaVByb21pc2UgPSBuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlKXsKICAgICAgICAgIHZhciBwcmV2Q2IgPSB3aW5kb3cub25Zb3VUdWJlSWZyYW1lQVBJUmVhZHk7CiAgICAgICAgICB3aW5kb3cub25Zb3VUdWJlSWZyYW1lQVBJUmVhZHkgPSBmdW5jdGlvbigpeyBpZiAodHlwZW9mIHByZXZDYj09PSdmdW5jdGlvbicpIHsgdHJ5eyBwcmV2Q2IoKTsgfWNhdGNoKF8pe30gfSByZXNvbHZlKCk7IH07CiAgICAgICAgICB2YXIgcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOwogICAgICAgICAgcy5zcmMgPSAnaHR0cHM6Ly93d3cueW91dHViZS5jb20vaWZyYW1lX2FwaSc7CiAgICAgICAgICBkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHMpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiB5dEFwaVByb21pc2U7CiAgICAgIH0KCiAgICAgIC8vIEluc3RhbmNpYXIgcGxheWVyIG5hdGl2byBlbiB0YXJqZXRhcyB2aXNpYmxlcyBwYXJhIHF1ZSBlbCBpY29ubyBkZSBwbGF5IGFwYXJlemNhIGRlc2RlIGVsIGluaWNpbwogICAgICBmdW5jdGlvbiBpbml0UGxheWVyRm9yQ2FyZChjYXJkKXsKICAgICAgICBpZighY2FyZCB8fCBjYXJkLl95dFBsYXllciB8fCBjYXJkLl95dEluaXQpIHJldHVybjsKICAgICAgICB2YXIgaWQgPSBjYXJkLmdldEF0dHJpYnV0ZSgnZGF0YS15dC1pZCcpOwogICAgICAgIGlmKCFpZCkgcmV0dXJuOwogICAgICAgIGNhcmQuX3l0SW5pdCA9IHRydWU7CiAgICAgICAgdmFyIHBvc3RlciA9IGNhcmQucXVlcnlTZWxlY3RvcignaW1nLnRodW1iJyk7CiAgICAgICAgdmFyIGhvbGRlciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwogICAgICAgIGhvbGRlci5zdHlsZS5wb3NpdGlvbj0nYWJzb2x1dGUnOyBob2xkZXIuc3R5bGUuaW5zZXQ9JzAnOyBob2xkZXIuc3R5bGUud2lkdGg9JzEwMCUnOyBob2xkZXIuc3R5bGUuaGVpZ2h0PScxMDAlJzsgaG9sZGVyLnN0eWxlLmJhY2tncm91bmQ9JyMwMDAnOwogICAgICAgIGlmKHBvc3Rlcil7IGNhcmQuaW5zZXJ0QmVmb3JlKGhvbGRlciwgcG9zdGVyKTsgfSBlbHNlIHsgY2FyZC5hcHBlbmRDaGlsZChob2xkZXIpOyB9CiAgICAgICAgLy8gT2N1bHRhbW9zIGVsIHDzc3RlciBjdWFudG8gYW50ZXMgcGFyYSBkZWphciB2ZXIgZWwgb3ZlcmxheSBuYXRpdm8KICAgICAgICBpZihwb3N0ZXIpeyBwb3N0ZXIuc3R5bGUudHJhbnNpdGlvbiA9IHBvc3Rlci5zdHlsZS50cmFuc2l0aW9uIHx8ICdvcGFjaXR5IC4xNXMgZWFzZSc7IHBvc3Rlci5zdHlsZS5vcGFjaXR5PScwJzsgcG9zdGVyLnN0eWxlLnBvaW50ZXJFdmVudHM9J25vbmUnOyB9CiAgICAgICAgZW5zdXJlWVRBcGkoKS50aGVuKGZ1bmN0aW9uKCl7CiAgICAgICAgICB2YXIgcGxheWVyID0gbmV3IFlULlBsYXllcihob2xkZXIsIHsKICAgICAgICAgICAgdmlkZW9JZDogaWQsCiAgICAgICAgICAgIHBsYXllclZhcnM6IHsgYXV0b3BsYXk6MCwgY29udHJvbHM6MSwgcmVsOjAsIHBsYXlzaW5saW5lOjEsIGl2X2xvYWRfcG9saWN5OjMsIG1vZGVzdGJyYW5kaW5nOjEsIGZzOjEsIG9yaWdpbjogKGxvY2F0aW9uICYmIGxvY2F0aW9uLm9yaWdpbikgPyBsb2NhdGlvbi5vcmlnaW4gOiB1bmRlZmluZWQgfSwKICAgICAgICAgICAgZXZlbnRzOiB7CiAgICAgICAgICAgICAgb25SZWFkeTogZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgIGlmKHBvc3Rlcil7IHBvc3Rlci5zdHlsZS5vcGFjaXR5PScwJzsgcG9zdGVyLnN0eWxlLnBvaW50ZXJFdmVudHM9J25vbmUnOyB9CiAgICAgICAgICAgICAgICAvLyBGb3J6YXIgcGVybWlzb3MgZGUgcGFudGFsbGEgY29tcGxldGEgZW4gZWwgaWZyYW1lIGdlbmVyYWRvCiAgICAgICAgICAgICAgICB0cnl7CiAgICAgICAgICAgICAgICAgIHZhciBpZnIgPSBwbGF5ZXIuZ2V0SWZyYW1lICYmIHBsYXllci5nZXRJZnJhbWUoKTsKICAgICAgICAgICAgICAgICAgaWYgKGlmcil7CiAgICAgICAgICAgICAgICAgICAgaWZyLnNldEF0dHJpYnV0ZSgnYWxsb3dmdWxsc2NyZWVuJywnJyk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGN1ciA9IGlmci5nZXRBdHRyaWJ1dGUoJ2FsbG93JykgfHwgJyc7CiAgICAgICAgICAgICAgICAgICAgaWZyLnNldEF0dHJpYnV0ZSgnYWxsb3cnLCAoY3VyID8gY3VyICsgJzsgJyA6ICcnKSArICdmdWxsc2NyZWVuJyk7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH1jYXRjaChfKXsgfQogICAgICAgICAgICAgICAgY2FyZC5feXRQbGF5ZXIgPSBwbGF5ZXI7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9KS5jYXRjaChmdW5jdGlvbigpewogICAgICAgICAgdHJ5eyBjYXJkLnJlbW92ZUNoaWxkKGhvbGRlcik7IH1jYXRjaChfKXsgfQogICAgICAgICAgLy8gU2kgZmFsbGEgbGEgQVBJLCBkZWphbW9zIGVsIHDzc3RlciBoYXN0YSBpbnRlcmFjY2nzbgogICAgICAgICAgaWYocG9zdGVyKXsgcG9zdGVyLnN0eWxlLm9wYWNpdHk9Jyc7IHBvc3Rlci5zdHlsZS5wb2ludGVyRXZlbnRzPScnOyB9CiAgICAgICAgICBjYXJkLl95dEluaXQgPSBmYWxzZTsKICAgICAgICB9KTsKICAgICAgfQoKICAgICAgLy8gSW5pY2lhbGl6YXIgYXV0b23hdGljYW1lbnRlIGxvcyBwbGF5ZXJzIGRlIGxhcyB0YXJqZXRhcyB2aXNpYmxlcyBhbCBjYXJnYXIKICAgICAgdmFyIGluaXRJTyA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihmdW5jdGlvbihlbnRyaWVzKXsKICAgICAgICBlbnRyaWVzLmZvckVhY2goZnVuY3Rpb24oZW4peyBpZihlbi5pc0ludGVyc2VjdGluZyl7IGluaXRQbGF5ZXJGb3JDYXJkKGVuLnRhcmdldCk7IH0gfSk7CiAgICAgIH0sIHsgcm9vdDogbnVsbCwgdGhyZXNob2xkOiAwLjI1IH0pOwogICAgICByb290LnF1ZXJ5U2VsZWN0b3JBbGwoJy5jYXJkJykuZm9yRWFjaChmdW5jdGlvbihjKXsgaW5pdElPLm9ic2VydmUoYyk7IH0pOwoKICAgICAgcm9vdC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKGUpewogICAgICAgIHZhciBhID0gZS50YXJnZXQuY2xvc2VzdCgnYS5jYXJkW2RhdGEteXQtaWRdJyk7CiAgICAgICAgaWYoIWEgfHwgIXJvb3QuY29udGFpbnMoYSkpIHJldHVybjsKICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgdmFyIHBvc3RlciA9IGEucXVlcnlTZWxlY3RvcignaW1nLnRodW1iJyk7CiAgICAgICAgLy8gc2luIG92ZXJsYXlzIHBlcnNvbmFsaXphZG9zCgogICAgICAgIC8vIFRvZ2dsZSBzaSB5YSBoYXkgcGxheWVyCiAgICAgICAgaWYgKGEuX3l0UGxheWVyKXsKICAgICAgICAgIHZhciBwID0gYS5feXRQbGF5ZXI7CiAgICAgICAgICBpZiAoYS5jbGFzc0xpc3QuY29udGFpbnMoJ2lzLXBhdXNlZCcpKXsKICAgICAgICAgICAgdHJ5eyBwLnVuTXV0ZSgpOyBwLnNldFZvbHVtZSgxMDApOyBwLnBsYXlWaWRlbygpOyB9Y2F0Y2goXyl7IH0KICAgICAgICAgICAgYS5jbGFzc0xpc3QucmVtb3ZlKCdpcy1wYXVzZWQnKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHRyeXsgcC5wYXVzZVZpZGVvKCk7IH1jYXRjaChfKXsgfQogICAgICAgICAgICBhLmNsYXNzTGlzdC5hZGQoJ2lzLXBhdXNlZCcpOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBzdG9wVGVhc2VyKGEpOwogICAgICAgIHZhciBpZCA9IGEuZ2V0QXR0cmlidXRlKCdkYXRhLXl0LWlkJyk7CiAgICAgICAgdmFyIGhvbGRlciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwogICAgICAgIGhvbGRlci5zdHlsZS5wb3NpdGlvbj0nYWJzb2x1dGUnOyBob2xkZXIuc3R5bGUuaW5zZXQ9JzAnOyBob2xkZXIuc3R5bGUud2lkdGg9JzEwMCUnOyBob2xkZXIuc3R5bGUuaGVpZ2h0PScxMDAlJzsgaG9sZGVyLnN0eWxlLmJhY2tncm91bmQ9JyMwMDAnOwogICAgICAgIGlmKHBvc3Rlcil7IGEuaW5zZXJ0QmVmb3JlKGhvbGRlciwgcG9zdGVyKTsgfSBlbHNlIHsgYS5hcHBlbmRDaGlsZChob2xkZXIpOyB9CgogICAgICAgIGVuc3VyZVlUQXBpKCkudGhlbihmdW5jdGlvbigpewogICAgICAgICAgdmFyIHBsYXllciA9IG5ldyBZVC5QbGF5ZXIoaG9sZGVyLCB7CiAgICAgICAgICAgIHZpZGVvSWQ6IGlkLAogICAgICAgICAgICBwbGF5ZXJWYXJzOiB7IGF1dG9wbGF5OjEsIGNvbnRyb2xzOjEsIHJlbDowLCBwbGF5c2lubGluZToxLCBpdl9sb2FkX3BvbGljeTozLCBtb2Rlc3RicmFuZGluZzoxLCBmczoxLCBvcmlnaW46IChsb2NhdGlvbiAmJiBsb2NhdGlvbi5vcmlnaW4pID8gbG9jYXRpb24ub3JpZ2luIDogdW5kZWZpbmVkIH0sCiAgICAgICAgICAgIGV2ZW50czogewogICAgICAgICAgICAgIG9uUmVhZHk6IGZ1bmN0aW9uKGV2KXsKICAgICAgICAgICAgICAgIHRyeXsgZXYudGFyZ2V0LnVuTXV0ZSgpOyBldi50YXJnZXQuc2V0Vm9sdW1lKDEwMCk7IGV2LnRhcmdldC5wbGF5VmlkZW8oKTsgfWNhdGNoKF8pe30KICAgICAgICAgICAgICAgIC8vIEZvcnphciBmdWxsc2NyZWVuIGRpc3BvbmlibGUgZW4gaWZyYW1lIElGcmFtZSBBUEkKICAgICAgICAgICAgICAgIHRyeXsKICAgICAgICAgICAgICAgICAgdmFyIGlmciA9IHBsYXllci5nZXRJZnJhbWUgJiYgcGxheWVyLmdldElmcmFtZSgpOwogICAgICAgICAgICAgICAgICBpZiAoaWZyKXsKICAgICAgICAgICAgICAgICAgICBpZnIuc2V0QXR0cmlidXRlKCdhbGxvd2Z1bGxzY3JlZW4nLCcnKTsKICAgICAgICAgICAgICAgICAgICB2YXIgY3VyID0gaWZyLmdldEF0dHJpYnV0ZSgnYWxsb3cnKSB8fCAnJzsKICAgICAgICAgICAgICAgICAgICBpZnIuc2V0QXR0cmlidXRlKCdhbGxvdycsIChjdXIgPyBjdXIgKyAnOyAnIDogJycpICsgJ2Z1bGxzY3JlZW4nKTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfWNhdGNoKF8peyB9CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7CiAgICAgICAgICAgICAgICAgIGlmKHBvc3Rlcil7IHBvc3Rlci5zdHlsZS50cmFuc2l0aW9uID0gcG9zdGVyLnN0eWxlLnRyYW5zaXRpb24gfHwgJ29wYWNpdHkgLjE1cyBlYXNlJzsgcG9zdGVyLnN0eWxlLm9wYWNpdHk9JzAnOyB9CiAgICAgICAgICAgICAgICAgIGEuY2xhc3NMaXN0LmFkZCgnaXMtcGxheWluZycpOwogICAgICAgICAgICAgICAgICBhLl95dFBsYXllciA9IHBsYXllcjsKICAgICAgICAgICAgICAgIH0sIDEwMCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICB9KS5jYXRjaChmdW5jdGlvbigpewogICAgICAgICAgLy8gRmFsbGJhY2s6IGlmcmFtZSBzaW1wbGUKICAgICAgICAgIHZhciBpZnJhbWUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpZnJhbWUnKTsKICAgICAgICAgIGlmcmFtZS5zcmMgPSBtYWtlRW1iZWRVcmwoaWQsIHthdXRvcGxheTp0cnVlLCBtdXRlOmZhbHNlfSk7CiAgICAgICAgICBpZnJhbWUuc2V0QXR0cmlidXRlKCdhbGxvdycsICdhdXRvcGxheTsgZW5jcnlwdGVkLW1lZGlhOyBwaWN0dXJlLWluLXBpY3R1cmUnKTsKICAgICAgICAgIGlmcmFtZS5zZXRBdHRyaWJ1dGUoJ2FsbG93ZnVsbHNjcmVlbicsICcnKTsKICAgICAgICAgIGlmcmFtZS5zdHlsZS5wb3NpdGlvbj0nYWJzb2x1dGUnOyBpZnJhbWUuc3R5bGUuaW5zZXQ9JzAnOyBpZnJhbWUuc3R5bGUud2lkdGg9JzEwMCUnOyBpZnJhbWUuc3R5bGUuaGVpZ2h0PScxMDAlJzsgaWZyYW1lLnN0eWxlLmJvcmRlcj0nMCc7IGlmcmFtZS5zdHlsZS5kaXNwbGF5PSdibG9jayc7IGlmcmFtZS5zdHlsZS5iYWNrZ3JvdW5kPScjMDAwJzsKICAgICAgICAgIGhvbGRlci5yZXBsYWNlV2l0aChpZnJhbWUpOwogICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpeyBhLmNsYXNzTGlzdC5hZGQoJ2lzLXBsYXlpbmcnKTsgfSwgMTUwKTsKICAgICAgICB9KTsKICAgICAgfSk7CgogICAgICAKICAgIH0pKCk7CiAgICA8L3NjcmlwdD4=
      CiAgICA8c3R5bGU+CiAgICBAaW1wb3J0IHVybCgnaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvaXFhMXFlYi5jc3MnKTsKCiAgICAvKiBDb250ZW5lZG9yIHByaW5jaXBhbCBsaW1pdGFkbyBhIDk2MHB4IGVuIGVzY3JpdG9yaW8gKi8KICAgIC5jdi0yOWU0YiAuc2VjdGlvbnttYXgtd2lkdGg6OTYwcHg7bWFyZ2luOjAgYXV0bzt3aWR0aDoxMDAlfQoKICAgIC5jdi0yOWU0YiAuYmctc2VjdGlvbi10aXRsZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbjo4cHggMCA1MHB4fQogICAgLmN2LTI5ZTRiIC5mbmQtbGluZWF7d2lkdGg6MTAwJTtoZWlnaHQ6NXB4O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7bWFyZ2luLXRvcDotMjVweDtib3JkZXItdG9wOjFweCBzb2xpZCAjMzMzO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICMzMzN9CiAgICAuY3YtMjllNGIgLnNlY3Rpb24tdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dGV4dC1hbGlnbjpjZW50ZXI7bWFyZ2luOjA7bGluZS1oZWlnaHQ6MS4yO2xldHRlci1zcGFjaW5nOi0xcHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2JhY2tncm91bmQ6I2ZmZjtwYWRkaW5nOjRweCAxM3B4O2JvcmRlcjoxcHggc29saWQgIzMzMztmb250LXNpemU6NDJweDt0cmFuc2Zvcm06cm90YXRlWCg1ZGVnKSByb3RhdGVZKC0yNWRlZykgc2tld1goMGRlZyl9CgogICAgLmN2LTI5ZTRiIC5jYXJvdXNlbHstLWdhcDoxNnB4Oy0tcGVlazoxMCU7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tZ2FwKTtvdmVyZmxvdzpoaWRkZW47cGFkZGluZy1ib3R0b206NnB4fQogICAgLmN2LTI5ZTRiIC50cmFja3tkaXNwbGF5OmZsZXg7Z2FwOnZhcigtLWdhcCk7b3ZlcmZsb3cteDphdXRvO292ZXJmbG93LXk6aGlkZGVuO3Njcm9sbC1zbmFwLXR5cGU6eCBtYW5kYXRvcnk7c2Nyb2xsLWJlaGF2aW9yOnNtb290aDtzY3JvbGxiYXItd2lkdGg6bm9uZTstbXMtb3ZlcmZsb3ctc3R5bGU6bm9uZTtwYWRkaW5nLXJpZ2h0OjB9CiAgICAuY3YtMjllNGIgLnRyYWNrOjotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5Om5vbmV9CiAgICAuY3YtMjllNGIgLmNhcmR7cG9zaXRpb246cmVsYXRpdmU7ZmxleDowIDAgYXV0bztzY3JvbGwtc25hcC1hbGlnbjpzdGFydDt3aWR0aDpjYWxjKCgxMDAlIC0gMip2YXIoLS1nYXApIC0gdmFyKC0tcGVlaykpLzMpO2FzcGVjdC1yYXRpbzo5LzE2O2JvcmRlci1yYWRpdXM6MTBweDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDojMDAwO29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg2cHgpO3RyYW5zaXRpb246b3BhY2l0eSAuNHMgZWFzZSwgdHJhbnNmb3JtIC40cyBlYXNlfQogICAgLmN2LTI5ZTRiIC5jYXJkLmlzLWlue29wYWNpdHk6MTt0cmFuc2Zvcm06bm9uZX0KCiAgICAuY3YtMjllNGIgLnRodW1ie3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvYmplY3QtZml0OmNvdmVyO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgZWFzZSwgb3BhY2l0eSAuMjVzIGVhc2U7dHJhbnNmb3JtOnNjYWxlKDEuMDEpfQogICAgLmN2LTI5ZTRiIC5jYXJkOmhvdmVyIC50aHVtYiwuY3YtMjllNGIgLmNhcmQ6Zm9jdXMtdmlzaWJsZSAudGh1bWJ7dHJhbnNmb3JtOnNjYWxlKDEuMDYpfQogICAgLyogU2luIG92ZXJsYXlzIHBlcnNvbmFsaXphZG9zOiBzZSB1c2FuIGNvbnRyb2xlcyBuYXRpdm9zIGRlbCBwbGF5ZXIgKi8KCiAgICAuY3YtMjllNGIgLmFye3Bvc2l0aW9uOnJlbGF0aXZlfQogICAgLmN2LTI5ZTRiIC5hcnJvd3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3dpZHRoOjQ0cHg7aGVpZ2h0OjQ0cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDpyZ2IoMjU1IDI1NSAyNTUgLyAyMCUpO2JveC1zaGFkb3c6MCA2cHggMTZweCByZ2IoMCAwIDAgLyAyMCUpO2JvcmRlcjoxcHggc29saWQgI2ZmZjtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y3Vyc29yOnBvaW50ZXI7ei1pbmRleDoyO3RyYW5zaXRpb246LjNzfQogICAgLmN2LTI5ZTRiIC5hcnJvdzpob3ZlcntiYWNrZ3JvdW5kOnJnYigwIDAgMCAvIDIwJSk7Ym9yZGVyOjFweCBzb2xpZCAjZmZmfQogICAgLmN2LTI5ZTRiIC5hcnJvdzpmb2N1c3tiYWNrZ3JvdW5kOnJnYigyNTUgMjU1IDI1NSAvIDIwJSl9CiAgICAuY3YtMjllNGIgLmFycm93IHN2Z3t3aWR0aDoyMHB4O2hlaWdodDoyMHB4fQogICAgLmN2LTI5ZTRiIC5hcnJvdy5sZWZ0e2xlZnQ6MTBweH0KICAgIC5jdi0yOWU0YiAuYXJyb3cucmlnaHR7cmlnaHQ6MTBweH0KCiAgICBAbWVkaWEgKG1heC13aWR0aDo3NjhweCl7CiAgICAgIC8qIEVuIG3zdmlsLCBlbCBjb250ZW5lZG9yIG9jdXBhIHRvZG8gZWwgYW5jaG8gKi8KICAgICAgLmN2LTI5ZTRiIC5zZWN0aW9ue21heC13aWR0aDoxMDAlfQogICAgICAuY3YtMjllNGIgLnNlY3Rpb24tdGl0bGV7Zm9udC1zaXplOjI3cHg7cGFkZGluZzoycHggOHB4O3RyYW5zZm9ybTpyb3RhdGVYKDVkZWcpIHJvdGF0ZVkoLTI1ZGVnKSBza2V3WCgwZGVnKX0KICAgICAgLmN2LTI5ZTRiIC5jYXJvdXNlbHstLXBlZWs6MTIlfQogICAgICAvKiAyIHRhcmpldGFzIGNvbXBsZXRhcyArIHVuIHBlZWsgZGUgbGEgM6ogKi8KICAgICAgLmN2LTI5ZTRiIC5jYXJke3dpZHRoOmNhbGMoKDEwMCUgLSA0KnZhcigtLWdhcCkgLSB2YXIoLS1wZWVrKSkvMSl9CiAgICAgIC5jdi0yOWU0YiAuYXJyb3d7ZGlzcGxheTpub25lICFpbXBvcnRhbnR9CiAgICAgIC5jdi0yOWU0YiAudHJhY2t7b3ZlcmZsb3cteDphdXRvO292ZXJmbG93LXk6aGlkZGVuO3BhZGRpbmctcmlnaHQ6MH0KICAgIH0KICAgIDwvc3R5bGU+CgogICAgPGRpdiBjbGFzcz0iY3YtMjllNGIiPgogICAgICA8c2VjdGlvbiBjbGFzcz0ic2VjdGlvbiIgYXJpYS1sYWJlbD0iQ2FycnVzZWwgZGUgdu1kZW9zIChTaG9ydHMpIj4KICAgICAgICA8ZGl2IGNsYXNzPSJiZy1zZWN0aW9uLXRpdGxlIj4KICAgICAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+TG9zICdzaG9ydHMnIGRlIE9LRElBUklPPC9oMj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJmbmQtbGluZWEiPjwvc3Bhbj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJhciIgcm9sZT0icmVnaW9uIiBhcmlhLWxhYmVsPSJMaXN0YWRvIGRlIHbtZGVvcyI+CiAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJhcnJvdyBsZWZ0IiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9IkFudGVyaW9yIj4KICAgICAgICAgICAgPHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNMTUgNmwtNiA2IDYgNiIgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPgogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJhcnJvdyByaWdodCIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJTaWd1aWVudGUiPgogICAgICAgICAgICA8c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik05IDE4bDYtNi02LTYiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4KICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgPGRpdiBjbGFzcz0iY2Fyb3VzZWwiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cmFjayIgcm9sZT0ibGlzdCI+CgogICAgICAgIDxhIGNsYXNzPSJjYXJkIiBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9zaG9ydHMvTHprX0t2N050eXMiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIiBkYXRhLXl0LWlkPSJMemtfS3Y3TnR5cyIgdGl0bGU9IlZlciBzaG9ydCI+CiAgICAgICAgICA8aW1nIGNsYXNzPSJ0aHVtYiIgc3JjPSJodHRwczovL2kueXRpbWcuY29tL3ZpL0x6a19LdjdOdHlzL2hxZGVmYXVsdC5qcGciIGFsdD0iWW91VHViZSBTaG9ydCAxIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgIDwvYT4KICAgICAgICA8YSBjbGFzcz0iY2FyZCIgaHJlZj0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vc2hvcnRzL0FYUEZiRU00VDZFIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgZGF0YS15dC1pZD0iQVhQRmJFTTRUNkUiIHRpdGxlPSJWZXIgc2hvcnQiPgogICAgICAgICAgPGltZyBjbGFzcz0idGh1bWIiIHNyYz0iaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS9BWFBGYkVNNFQ2RS9ocWRlZmF1bHQuanBnIiBhbHQ9IllvdVR1YmUgU2hvcnQgMiIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIj4KICAgICAgICA8L2E+CiAgICAgICAgPGEgY2xhc3M9ImNhcmQiIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3Nob3J0cy9DNmUzREx0cVZDRSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGRhdGEteXQtaWQ9IkM2ZTNETHRxVkNFIiB0aXRsZT0iVmVyIHNob3J0Ij4KICAgICAgICAgIDxpbWcgY2xhc3M9InRodW1iIiBzcmM9Imh0dHBzOi8vaS55dGltZy5jb20vdmkvQzZlM0RMdHFWQ0UvaHFkZWZhdWx0LmpwZyIgYWx0PSJZb3VUdWJlIFNob3J0IDMiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgPC9hPgogICAgICAgIDxhIGNsYXNzPSJjYXJkIiBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9zaG9ydHMvV2E0bmFNTWJhOEEiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIiBkYXRhLXl0LWlkPSJXYTRuYU1NYmE4QSIgdGl0bGU9IlZlciBzaG9ydCI+CiAgICAgICAgICA8aW1nIGNsYXNzPSJ0aHVtYiIgc3JjPSJodHRwczovL2kueXRpbWcuY29tL3ZpL1dhNG5hTU1iYThBL2hxZGVmYXVsdC5qcGciIGFsdD0iWW91VHViZSBTaG9ydCA0IiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgIDwvYT4KICAgICAgICA8YSBjbGFzcz0iY2FyZCIgaHJlZj0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vc2hvcnRzL2NSZndvYWlCZERnIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgZGF0YS15dC1pZD0iY1Jmd29haUJkRGciIHRpdGxlPSJWZXIgc2hvcnQiPgogICAgICAgICAgPGltZyBjbGFzcz0idGh1bWIiIHNyYz0iaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS9jUmZ3b2FpQmREZy9ocWRlZmF1bHQuanBnIiBhbHQ9IllvdVR1YmUgU2hvcnQgNSIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIj4KICAgICAgICA8L2E+CiAgICAgICAgPGEgY2xhc3M9ImNhcmQiIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3Nob3J0cy8wOUo5RkFIVlZKMCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGRhdGEteXQtaWQ9IjA5SjlGQUhWVkowIiB0aXRsZT0iVmVyIHNob3J0Ij4KICAgICAgICAgIDxpbWcgY2xhc3M9InRodW1iIiBzcmM9Imh0dHBzOi8vaS55dGltZy5jb20vdmkvMDlKOUZBSFZWSjAvaHFkZWZhdWx0LmpwZyIgYWx0PSJZb3VUdWJlIFNob3J0IDYiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgPC9hPgogICAgICAgIDxhIGNsYXNzPSJjYXJkIiBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9zaG9ydHMvTC1PcExFNC1kSDQiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIiBkYXRhLXl0LWlkPSJMLU9wTEU0LWRINCIgdGl0bGU9IlZlciBzaG9ydCI+CiAgICAgICAgICA8aW1nIGNsYXNzPSJ0aHVtYiIgc3JjPSJodHRwczovL2kueXRpbWcuY29tL3ZpL0wtT3BMRTQtZEg0L2hxZGVmYXVsdC5qcGciIGFsdD0iWW91VHViZSBTaG9ydCA3IiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgIDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9zZWN0aW9uPgogICAgPC9kaXY+CiAgICA8c2NyaXB0PgogICAgKGZ1bmN0aW9uKCl7CiAgICAgIHZhciByb290ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmN2LTI5ZTRiJyk7CiAgICAgIGlmICghcm9vdCkgcmV0dXJuOwogICAgICB2YXIgdHJhY2sgPSByb290LnF1ZXJ5U2VsZWN0b3IoJy50cmFjaycpOwogICAgICBpZiAoIXRyYWNrKSByZXR1cm47CgogICAgICB2YXIgYXJyb3dzID0gcm9vdC5xdWVyeVNlbGVjdG9yQWxsKCcuYXJyb3cnKTsKICAgICAgdmFyIEdBUCA9IDE2OwoKICAgICAgZnVuY3Rpb24gZ2V0Q2FyZFdpZHRoKCl7CiAgICAgICAgdmFyIGZpcnN0ID0gcm9vdC5xdWVyeVNlbGVjdG9yKCcuY2FyZCcpOwogICAgICAgIGlmICghZmlyc3QpIHJldHVybiAwOwogICAgICAgIHJldHVybiBmaXJzdC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDsKICAgICAgfQoKICAgICAgZnVuY3Rpb24gZ2V0Q2FyZHNQZXJQYWdlKCl7CiAgICAgICAgLy8gRGVzazogYXZhbnphIGRlIHVuYSBlbiB1bmEgdGFyamV0YQogICAgICAgIHJldHVybiAod2luZG93LmlubmVyV2lkdGggPD0gNzY4KSA/IDIgOiAxOwogICAgICB9CgogICAgICBhcnJvd3MuZm9yRWFjaChmdW5jdGlvbihidG4pewogICAgICAgIGJ0bi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKGUpewogICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgICAgdmFyIGRpciA9IHRoaXMuY2xhc3NMaXN0LmNvbnRhaW5zKCdsZWZ0JykgPyAtMSA6IDE7CiAgICAgICAgICB2YXIgY2FyZFcgPSBnZXRDYXJkV2lkdGgoKTsKICAgICAgICAgIGlmICghY2FyZFcpIHJldHVybjsKICAgICAgICAgIHZhciBzdGVwID0gKGNhcmRXICsgR0FQKSAqIGdldENhcmRzUGVyUGFnZSgpICogZGlyOwogICAgICAgICAgdHJhY2suc2Nyb2xsQnkoeyBsZWZ0OiBzdGVwLCBiZWhhdmlvcjogJ3Ntb290aCcgfSk7CiAgICAgICAgfSk7CiAgICAgIH0pOwoKICAgICAgLy8gRmFkZS1pbiBhbCBlbnRyYXIgZW4gdmlld3BvcnQKICAgICAgdmFyIGlvID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGZ1bmN0aW9uKGVudHJpZXMpewogICAgICAgIGVudHJpZXMuZm9yRWFjaChmdW5jdGlvbihlbil7IGlmKGVuLmlzSW50ZXJzZWN0aW5nKXsgZW4udGFyZ2V0LmNsYXNzTGlzdC5hZGQoJ2lzLWluJyk7IH0gfSk7CiAgICAgIH0sIHsgcm9vdDogdHJhY2ssIHRocmVzaG9sZDogMC4xIH0pOwogICAgICByb290LnF1ZXJ5U2VsZWN0b3JBbGwoJy5jYXJkJykuZm9yRWFjaChmdW5jdGlvbihjKXsgaW8ub2JzZXJ2ZShjKTsgfSk7CgogICAgICAvLyBDbGljayBwZXJzaXN0ZW50ZSAoc2luIHRlYXNlciBwb3IgaG92ZXIpCiAgICAgIGZ1bmN0aW9uIG1ha2VFbWJlZFVybChpZCwgb3B0cyl7CiAgICAgICAgdmFyIHFzID0gWwogICAgICAgICAgJ2F1dG9wbGF5PScgKyAob3B0cyAmJiBvcHRzLmF1dG9wbGF5PyAnMSc6JzAnKSwKICAgICAgICAgICdwbGF5c2lubGluZT0xJywnZnM9MScsJ2l2X2xvYWRfcG9saWN5PTMnLCdzaG93aW5mbz0xJywncmVsPTAnLCdjY19sb2FkX3BvbGljeT0wJywnc3RhcnQ9MCcsCiAgICAgICAgICAnbXV0ZT0nICsgKG9wdHMgJiYgb3B0cy5tdXRlPyAnMSc6JzAnKSwKICAgICAgICAgIChvcHRzICYmIG9wdHMuY29udHJvbHM9PT0wPyAnY29udHJvbHM9MCc6J2NvbnRyb2xzPTEnKSwKICAgICAgICAgICdtb2Rlc3RicmFuZGluZz0xJywnZW5hYmxlanNhcGk9MScKICAgICAgICBdLmpvaW4oJyYnKTsKICAgICAgICByZXR1cm4gJ2h0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkLycgKyBpZCArICc/JyArIHFzOwogICAgICB9CgogICAgICAvLyBDYXJnYXIgQVBJIGRlIFlvdVR1YmUgYmFqbyBkZW1hbmRhCiAgICAgIHZhciB5dEFwaVByb21pc2UgPSBudWxsOwogICAgICBmdW5jdGlvbiBlbnN1cmVZVEFwaSgpewogICAgICAgIGlmICh3aW5kb3cuWVQgJiYgd2luZG93LllULlBsYXllcikgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpOwogICAgICAgIGlmICh5dEFwaVByb21pc2UpIHJldHVybiB5dEFwaVByb21pc2U7CiAgICAgICAgeXRBcGlQcm9taXNlID0gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSl7CiAgICAgICAgICB2YXIgcHJldkNiID0gd2luZG93Lm9uWW91VHViZUlmcmFtZUFQSVJlYWR5OwogICAgICAgICAgd2luZG93Lm9uWW91VHViZUlmcmFtZUFQSVJlYWR5ID0gZnVuY3Rpb24oKXsgaWYgKHR5cGVvZiBwcmV2Q2I9PT0nZnVuY3Rpb24nKSB7IHRyeXsgcHJldkNiKCk7IH1jYXRjaChfKXt9IH0gcmVzb2x2ZSgpOyB9OwogICAgICAgICAgdmFyIHMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsKICAgICAgICAgIHMuc3JjID0gJ2h0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2lmcmFtZV9hcGknOwogICAgICAgICAgZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4geXRBcGlQcm9taXNlOwogICAgICB9CgogICAgICAvLyBJbnN0YW5jaWFyIHBsYXllciBuYXRpdm8gZW4gdGFyamV0YXMgdmlzaWJsZXMgcGFyYSBxdWUgZWwgaWNvbm8gZGUgcGxheSBhcGFyZXpjYSBkZXNkZSBlbCBpbmljaW8KICAgICAgZnVuY3Rpb24gaW5pdFBsYXllckZvckNhcmQoY2FyZCl7CiAgICAgICAgaWYoIWNhcmQgfHwgY2FyZC5feXRQbGF5ZXIgfHwgY2FyZC5feXRJbml0KSByZXR1cm47CiAgICAgICAgdmFyIGlkID0gY2FyZC5nZXRBdHRyaWJ1dGUoJ2RhdGEteXQtaWQnKTsKICAgICAgICBpZighaWQpIHJldHVybjsKICAgICAgICBjYXJkLl95dEluaXQgPSB0cnVlOwogICAgICAgIHZhciBwb3N0ZXIgPSBjYXJkLnF1ZXJ5U2VsZWN0b3IoJ2ltZy50aHVtYicpOwogICAgICAgIHZhciBob2xkZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKICAgICAgICBob2xkZXIuc3R5bGUucG9zaXRpb249J2Fic29sdXRlJzsgaG9sZGVyLnN0eWxlLmluc2V0PScwJzsgaG9sZGVyLnN0eWxlLndpZHRoPScxMDAlJzsgaG9sZGVyLnN0eWxlLmhlaWdodD0nMTAwJSc7IGhvbGRlci5zdHlsZS5iYWNrZ3JvdW5kPScjMDAwJzsKICAgICAgICBpZihwb3N0ZXIpeyBjYXJkLmluc2VydEJlZm9yZShob2xkZXIsIHBvc3Rlcik7IH0gZWxzZSB7IGNhcmQuYXBwZW5kQ2hpbGQoaG9sZGVyKTsgfQogICAgICAgIC8vIE9jdWx0YW1vcyBlbCBw83N0ZXIgY3VhbnRvIGFudGVzIHBhcmEgZGVqYXIgdmVyIGVsIG92ZXJsYXkgbmF0aXZvCiAgICAgICAgaWYocG9zdGVyKXsgcG9zdGVyLnN0eWxlLnRyYW5zaXRpb24gPSBwb3N0ZXIuc3R5bGUudHJhbnNpdGlvbiB8fCAnb3BhY2l0eSAuMTVzIGVhc2UnOyBwb3N0ZXIuc3R5bGUub3BhY2l0eT0nMCc7IHBvc3Rlci5zdHlsZS5wb2ludGVyRXZlbnRzPSdub25lJzsgfQogICAgICAgIGVuc3VyZVlUQXBpKCkudGhlbihmdW5jdGlvbigpewogICAgICAgICAgdmFyIHBsYXllciA9IG5ldyBZVC5QbGF5ZXIoaG9sZGVyLCB7CiAgICAgICAgICAgIHZpZGVvSWQ6IGlkLAogICAgICAgICAgICBwbGF5ZXJWYXJzOiB7IGF1dG9wbGF5OjAsIGNvbnRyb2xzOjEsIHJlbDowLCBwbGF5c2lubGluZToxLCBpdl9sb2FkX3BvbGljeTozLCBtb2Rlc3RicmFuZGluZzoxLCBmczoxLCBvcmlnaW46IChsb2NhdGlvbiAmJiBsb2NhdGlvbi5vcmlnaW4pID8gbG9jYXRpb24ub3JpZ2luIDogdW5kZWZpbmVkIH0sCiAgICAgICAgICAgIGV2ZW50czogewogICAgICAgICAgICAgIG9uUmVhZHk6IGZ1bmN0aW9uKCl7CiAgICAgICAgICAgICAgICBpZihwb3N0ZXIpeyBwb3N0ZXIuc3R5bGUub3BhY2l0eT0nMCc7IHBvc3Rlci5zdHlsZS5wb2ludGVyRXZlbnRzPSdub25lJzsgfQogICAgICAgICAgICAgICAgLy8gRm9yemFyIHBlcm1pc29zIGRlIHBhbnRhbGxhIGNvbXBsZXRhIGVuIGVsIGlmcmFtZSBnZW5lcmFkbwogICAgICAgICAgICAgICAgdHJ5ewogICAgICAgICAgICAgICAgICB2YXIgaWZyID0gcGxheWVyLmdldElmcmFtZSAmJiBwbGF5ZXIuZ2V0SWZyYW1lKCk7CiAgICAgICAgICAgICAgICAgIGlmIChpZnIpewogICAgICAgICAgICAgICAgICAgIGlmci5zZXRBdHRyaWJ1dGUoJ2FsbG93ZnVsbHNjcmVlbicsJycpOwogICAgICAgICAgICAgICAgICAgIHZhciBjdXIgPSBpZnIuZ2V0QXR0cmlidXRlKCdhbGxvdycpIHx8ICcnOwogICAgICAgICAgICAgICAgICAgIGlmci5zZXRBdHRyaWJ1dGUoJ2FsbG93JywgKGN1ciA/IGN1ciArICc7ICcgOiAnJykgKyAnZnVsbHNjcmVlbicpOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9Y2F0Y2goXyl7IH0KICAgICAgICAgICAgICAgIGNhcmQuX3l0UGxheWVyID0gcGxheWVyOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfSkuY2F0Y2goZnVuY3Rpb24oKXsKICAgICAgICAgIHRyeXsgY2FyZC5yZW1vdmVDaGlsZChob2xkZXIpOyB9Y2F0Y2goXyl7IH0KICAgICAgICAgIC8vIFNpIGZhbGxhIGxhIEFQSSwgZGVqYW1vcyBlbCBw83N0ZXIgaGFzdGEgaW50ZXJhY2Np824KICAgICAgICAgIGlmKHBvc3Rlcil7IHBvc3Rlci5zdHlsZS5vcGFjaXR5PScnOyBwb3N0ZXIuc3R5bGUucG9pbnRlckV2ZW50cz0nJzsgfQogICAgICAgICAgY2FyZC5feXRJbml0ID0gZmFsc2U7CiAgICAgICAgfSk7CiAgICAgIH0KCiAgICAgIC8vIEluaWNpYWxpemFyIGF1dG9t4XRpY2FtZW50ZSBsb3MgcGxheWVycyBkZSBsYXMgdGFyamV0YXMgdmlzaWJsZXMgYWwgY2FyZ2FyCiAgICAgIHZhciBpbml0SU8gPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZnVuY3Rpb24oZW50cmllcyl7CiAgICAgICAgZW50cmllcy5mb3JFYWNoKGZ1bmN0aW9uKGVuKXsgaWYoZW4uaXNJbnRlcnNlY3RpbmcpeyBpbml0UGxheWVyRm9yQ2FyZChlbi50YXJnZXQpOyB9IH0pOwogICAgICB9LCB7IHJvb3Q6IG51bGwsIHRocmVzaG9sZDogMC4yNSB9KTsKICAgICAgcm9vdC5xdWVyeVNlbGVjdG9yQWxsKCcuY2FyZCcpLmZvckVhY2goZnVuY3Rpb24oYyl7IGluaXRJTy5vYnNlcnZlKGMpOyB9KTsKCiAgICAgIHJvb3QuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbihlKXsKICAgICAgICB2YXIgYSA9IGUudGFyZ2V0LmNsb3Nlc3QoJ2EuY2FyZFtkYXRhLXl0LWlkXScpOwogICAgICAgIGlmKCFhIHx8ICFyb290LmNvbnRhaW5zKGEpKSByZXR1cm47CiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgIHZhciBwb3N0ZXIgPSBhLnF1ZXJ5U2VsZWN0b3IoJ2ltZy50aHVtYicpOwogICAgICAgIC8vIHNpbiBvdmVybGF5cyBwZXJzb25hbGl6YWRvcwoKICAgICAgICAvLyBUb2dnbGUgc2kgeWEgaGF5IHBsYXllcgogICAgICAgIGlmIChhLl95dFBsYXllcil7CiAgICAgICAgICB2YXIgcCA9IGEuX3l0UGxheWVyOwogICAgICAgICAgaWYgKGEuY2xhc3NMaXN0LmNvbnRhaW5zKCdpcy1wYXVzZWQnKSl7CiAgICAgICAgICAgIHRyeXsgcC51bk11dGUoKTsgcC5zZXRWb2x1bWUoMTAwKTsgcC5wbGF5VmlkZW8oKTsgfWNhdGNoKF8peyB9CiAgICAgICAgICAgIGEuY2xhc3NMaXN0LnJlbW92ZSgnaXMtcGF1c2VkJyk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0cnl7IHAucGF1c2VWaWRlbygpOyB9Y2F0Y2goXyl7IH0KICAgICAgICAgICAgYS5jbGFzc0xpc3QuYWRkKCdpcy1wYXVzZWQnKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgc3RvcFRlYXNlcihhKTsKICAgICAgICB2YXIgaWQgPSBhLmdldEF0dHJpYnV0ZSgnZGF0YS15dC1pZCcpOwogICAgICAgIHZhciBob2xkZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKICAgICAgICBob2xkZXIuc3R5bGUucG9zaXRpb249J2Fic29sdXRlJzsgaG9sZGVyLnN0eWxlLmluc2V0PScwJzsgaG9sZGVyLnN0eWxlLndpZHRoPScxMDAlJzsgaG9sZGVyLnN0eWxlLmhlaWdodD0nMTAwJSc7IGhvbGRlci5zdHlsZS5iYWNrZ3JvdW5kPScjMDAwJzsKICAgICAgICBpZihwb3N0ZXIpeyBhLmluc2VydEJlZm9yZShob2xkZXIsIHBvc3Rlcik7IH0gZWxzZSB7IGEuYXBwZW5kQ2hpbGQoaG9sZGVyKTsgfQoKICAgICAgICBlbnN1cmVZVEFwaSgpLnRoZW4oZnVuY3Rpb24oKXsKICAgICAgICAgIHZhciBwbGF5ZXIgPSBuZXcgWVQuUGxheWVyKGhvbGRlciwgewogICAgICAgICAgICB2aWRlb0lkOiBpZCwKICAgICAgICAgICAgcGxheWVyVmFyczogeyBhdXRvcGxheToxLCBjb250cm9sczoxLCByZWw6MCwgcGxheXNpbmxpbmU6MSwgaXZfbG9hZF9wb2xpY3k6MywgbW9kZXN0YnJhbmRpbmc6MSwgZnM6MSwgb3JpZ2luOiAobG9jYXRpb24gJiYgbG9jYXRpb24ub3JpZ2luKSA/IGxvY2F0aW9uLm9yaWdpbiA6IHVuZGVmaW5lZCB9LAogICAgICAgICAgICBldmVudHM6IHsKICAgICAgICAgICAgICBvblJlYWR5OiBmdW5jdGlvbihldil7CiAgICAgICAgICAgICAgICB0cnl7IGV2LnRhcmdldC51bk11dGUoKTsgZXYudGFyZ2V0LnNldFZvbHVtZSgxMDApOyBldi50YXJnZXQucGxheVZpZGVvKCk7IH1jYXRjaChfKXt9CiAgICAgICAgICAgICAgICAvLyBGb3J6YXIgZnVsbHNjcmVlbiBkaXNwb25pYmxlIGVuIGlmcmFtZSBJRnJhbWUgQVBJCiAgICAgICAgICAgICAgICB0cnl7CiAgICAgICAgICAgICAgICAgIHZhciBpZnIgPSBwbGF5ZXIuZ2V0SWZyYW1lICYmIHBsYXllci5nZXRJZnJhbWUoKTsKICAgICAgICAgICAgICAgICAgaWYgKGlmcil7CiAgICAgICAgICAgICAgICAgICAgaWZyLnNldEF0dHJpYnV0ZSgnYWxsb3dmdWxsc2NyZWVuJywnJyk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGN1ciA9IGlmci5nZXRBdHRyaWJ1dGUoJ2FsbG93JykgfHwgJyc7CiAgICAgICAgICAgICAgICAgICAgaWZyLnNldEF0dHJpYnV0ZSgnYWxsb3cnLCAoY3VyID8gY3VyICsgJzsgJyA6ICcnKSArICdmdWxsc2NyZWVuJyk7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH1jYXRjaChfKXsgfQogICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICBpZihwb3N0ZXIpeyBwb3N0ZXIuc3R5bGUudHJhbnNpdGlvbiA9IHBvc3Rlci5zdHlsZS50cmFuc2l0aW9uIHx8ICdvcGFjaXR5IC4xNXMgZWFzZSc7IHBvc3Rlci5zdHlsZS5vcGFjaXR5PScwJzsgfQogICAgICAgICAgICAgICAgICBhLmNsYXNzTGlzdC5hZGQoJ2lzLXBsYXlpbmcnKTsKICAgICAgICAgICAgICAgICAgYS5feXRQbGF5ZXIgPSBwbGF5ZXI7CiAgICAgICAgICAgICAgICB9LCAxMDApOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfSkuY2F0Y2goZnVuY3Rpb24oKXsKICAgICAgICAgIC8vIEZhbGxiYWNrOiBpZnJhbWUgc2ltcGxlCiAgICAgICAgICB2YXIgaWZyYW1lID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaWZyYW1lJyk7CiAgICAgICAgICBpZnJhbWUuc3JjID0gbWFrZUVtYmVkVXJsKGlkLCB7YXV0b3BsYXk6dHJ1ZSwgbXV0ZTpmYWxzZX0pOwogICAgICAgICAgaWZyYW1lLnNldEF0dHJpYnV0ZSgnYWxsb3cnLCAnYXV0b3BsYXk7IGVuY3J5cHRlZC1tZWRpYTsgcGljdHVyZS1pbi1waWN0dXJlJyk7CiAgICAgICAgICBpZnJhbWUuc2V0QXR0cmlidXRlKCdhbGxvd2Z1bGxzY3JlZW4nLCAnJyk7CiAgICAgICAgICBpZnJhbWUuc3R5bGUucG9zaXRpb249J2Fic29sdXRlJzsgaWZyYW1lLnN0eWxlLmluc2V0PScwJzsgaWZyYW1lLnN0eWxlLndpZHRoPScxMDAlJzsgaWZyYW1lLnN0eWxlLmhlaWdodD0nMTAwJSc7IGlmcmFtZS5zdHlsZS5ib3JkZXI9JzAnOyBpZnJhbWUuc3R5bGUuZGlzcGxheT0nYmxvY2snOyBpZnJhbWUuc3R5bGUuYmFja2dyb3VuZD0nIzAwMCc7CiAgICAgICAgICBob2xkZXIucmVwbGFjZVdpdGgoaWZyYW1lKTsKICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKXsgYS5jbGFzc0xpc3QuYWRkKCdpcy1wbGF5aW5nJyk7IH0sIDE1MCk7CiAgICAgICAgfSk7CiAgICAgIH0pOwoKICAgICAgCiAgICB9KSgpOwogICAgPC9zY3JpcHQ+
    • Volkswagen ofrece a sus trabajadores en Alemania puestos de trabajo en Defensa tras sus despidos
        • Motor
        • Motor

      Volkswagen ofrece a sus trabajadores en Alemania puestos de trabajo en Defensa tras sus despidos

      Volkswagen ha ofrecido a sus trabajadores de las fábricas de Alemania puestos de trabajo en el sector de la defensa tras la reestructuración que está llevando a cabo la compañía. Una propuesta que llega después de que haya llegado a un acuerdo preliminar para vender su planta de Osnabrück al fondo israelí Aurelius Capital.
      • Andrea Aguado
      • 2026-10-08 05:37
    • Cuando despertábamos, Pedro Sánchez todavía estaba allí
    • Gasparilla: la joya escondida junto al golfo de México que American Prime pone al alcance del inversor español
    • Sapa Placencia aumenta a 251 millones el agujero por los derivados para cubrir la compra del 7,9% de Indra
        • Economía
        • Economía

      Sapa Placencia aumenta a 251 millones el agujero por los derivados para cubrir la compra del 7,9% de Indra

      • Carlos Ribagorda
      • 2026-10-08 05:45
    • El
        • OkSalud
        • OkSalud

      El 'incómodo' dato que Bruselas oculta: el 77% de fumadores dice que las alternativas le ayudaron a dejar el cigarrillo

      • Diego Buenosvinos
      • 2026-10-08 05:40
    • Madrid, en el CERA se piensa mucho en ti
    • Entrar por curiosidad y salir con ganas de volver: Faro Santander cumple un mes como nueva propuesta cultural
    • Baleares estudia recurrir el decreto de Sánchez que le obliga a pagar la deuda del inquilino con el propietario
        • OkBaleares
        • OkBaleares

      Baleares estudia recurrir el decreto de Sánchez que le obliga a pagar la deuda del inquilino con el propietario

      Los polémicos decretos sobre vivienda aprobados por segunda vez por el Consejo de Ministros llevan un regalo sorpresa para las comunidades autónomas. Ante una orden de desahucio a un inquilino considerado vulnerable, regiones como la de Marga Prohens tendrán dos meses para ofrecer una solución al inquilino y, si eso no sucede, la Administración autonómica deberá pagar la deuda que el arrendatario haya acumulado, los suministros y las costas del proceso judicial.
      • Tomas Ibarz
      • 2026-10-08 04:00
    • El asesino del cirujano plástico de Marbellla le remató de un tiro en el cuello antes de escapar
        • España
        • España

      El asesino del cirujano plástico de Marbellla le remató de un tiro en el cuello antes de escapar

      • Ángel Moya
      • 2026-10-08 11:48
    • La combustión dejará de dominar en 2030 la producción mundial de vehículos, que pasará a suponer del 60% al 41% de la fabricación total
    • El palacete de
        • OkBaleares
        • OkBaleares

      El palacete de 'El Pablo' en Palma escondía una piscina con cascada, un bar privado y un túnel de casi 75 metros para escapar

      • Julio Bastida
      • 2026-10-08 04:00
    • Palma confirma la conclusión de las obras más interminables que se recuerdan: tres legislaturas para edificar las piscinas de S
        • OkBaleares
        • OkBaleares

      Palma confirma la conclusión de las obras interminables: tres legislaturas para las piscinas de S'Aigo Dolça

      • Indalecio Ribelles
      • 2026-10-08 04:00
    • ¿Por qué no se construye? La pregunta incómoda
    • PHN0eWxlPgogICNjaW50aWxsby1lY2kgewogICAgLyogQSBjb250aW51YWNp824gc2UgZXNwZWNpZmljYSBlbCBjb2xvciBkZWwgZm9uZG8gKi8KICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7CiAgICAvKiBBIGNvbnRpbnVhY2nzbiBzZSBlc3BlY2lmaWNhIGVsIGNvbG9yIGRlbCB0ZXh0byAqLwogICAgY29sb3I6ICMwMDA7CiAgICAvKiBSZWxsZW5vIHBhcmEgZGFyIGVzcGFjaW8gYWwgY29udGVuaWRvICovCiAgICBwYWRkaW5nOiA4cHg7CiAgICBkaXNwbGF5OiBmbGV4OwogICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgZm9udC1mYW1pbHk6ICdSb2JvdG8gQ29uZGVuc2VkJzsKICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogIH0KICAuZWNpLXRpdHVsbyB7CiAgICAvKiBFbCB0YW1h8W8gZGVsIHRleHRvIGRlbCBjb250aWxsbyAqLwogICAgICBmb250LXNpemU6IDI0cHg7CiAgfQogIC5lY2ktbG9nbyB7fQogIC5lY2ktbG9nbyBwIHsKICAgIC8qIEVsIHRhbWHxbyBkZWwgdGV4dG8ganVudG8gYWwgbG9nbyAqLwogICAgZm9udC1zaXplOiAxMHB4OwogIH0KICAuZWNpLWxvZ28gaW1nIHsKICAgIC8qIEVsIHRhbWHxbyBkZWwgbG9nbyAqLwogICAgd2lkdGg6IDEyMHB4OwogICAgaGVpZ2h0OiAzMHB4OwogICAgb2JqZWN0LWZpdDogY292ZXI7CiAgfQoKPC9zdHlsZT4KPGEgaHJlZj0iaHR0cHM6Ly93d3cuZWxjb3J0ZWluZ2xlcy5lcy8iIHRhcmdldD0iX2JsYW5rIiBpZD0iY2ludGlsbG8tZWNpIj4KICA8ZGl2IGNsYXNzPSJlY2ktdGl0dWxvIj4KICAgIDwhLS0gRWRpdGFyIGVzdGUgdGV4dG8gSU5JQ0lPIC0tPgogICAgSW5zcGlyYWNp824geSB0ZW5kZW5jaWFzCiAgICA8IS0tIEVkaXRhciBlc3RlIHRleHRvIEZJTiAtLT4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJlY2ktbG9nbyI+CiAgICA8cD4KICAgICAgPCEtLSBFZGl0YXIgZXN0ZSB0ZXh0byBJTklDSU8gLS0+CiAgICAgIEVuIGNvbGFib3JhY2nzbiBjb24KICAgICAgPCEtLSBFZGl0YXIgZXN0ZSB0ZXh0byBGSU4gLS0+CiAgICA8L3A+CiAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vb2tkaWFyaW8uY29tL2ltZy8yMDI2LzA4LzI3L2xvZ28tZWwtY29ydGUtaW5nbGVzLW5lZ3JvLmpwZyIgYWx0PSJFbCBDb3J0ZSBJbmds6XMiPgogIDwvZGl2Pgo8L2E+
      PHN0eWxlPgogICNjaW50aWxsby1lY2kgewogICAgLyogQSBjb250aW51YWNp824gc2UgZXNwZWNpZmljYSBlbCBjb2xvciBkZWwgZm9uZG8gKi8KICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7CiAgICAvKiBBIGNvbnRpbnVhY2nzbiBzZSBlc3BlY2lmaWNhIGVsIGNvbG9yIGRlbCB0ZXh0byAqLwogICAgY29sb3I6ICMwMDA7CiAgICAvKiBSZWxsZW5vIHBhcmEgZGFyIGVzcGFjaW8gYWwgY29udGVuaWRvICovCiAgICBwYWRkaW5nOiA4cHg7CiAgICBkaXNwbGF5OiBmbGV4OwogICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgZm9udC1mYW1pbHk6ICdSb2JvdG8gQ29uZGVuc2VkJzsKICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogIH0KICAuZWNpLXRpdHVsbyB7CiAgICAvKiBFbCB0YW1h8W8gZGVsIHRleHRvIGRlbCBjb250aWxsbyAqLwogICAgICBmb250LXNpemU6IDI0cHg7CiAgfQogIC5lY2ktbG9nbyB7fQogIC5lY2ktbG9nbyBwIHsKICAgIC8qIEVsIHRhbWHxbyBkZWwgdGV4dG8ganVudG8gYWwgbG9nbyAqLwogICAgZm9udC1zaXplOiAxMHB4OwogIH0KICAuZWNpLWxvZ28gaW1nIHsKICAgIC8qIEVsIHRhbWHxbyBkZWwgbG9nbyAqLwogICAgd2lkdGg6IDEyMHB4OwogICAgaGVpZ2h0OiAzMHB4OwogICAgb2JqZWN0LWZpdDogY292ZXI7CiAgfQoKPC9zdHlsZT4KPGEgaHJlZj0iaHR0cHM6Ly93d3cuZWxjb3J0ZWluZ2xlcy5lcy8iIHRhcmdldD0iX2JsYW5rIiBpZD0iY2ludGlsbG8tZWNpIj4KICA8ZGl2IGNsYXNzPSJlY2ktdGl0dWxvIj4KICAgIDwhLS0gRWRpdGFyIGVzdGUgdGV4dG8gSU5JQ0lPIC0tPgogICAgSW5zcGlyYWNp824geSB0ZW5kZW5jaWFzCiAgICA8IS0tIEVkaXRhciBlc3RlIHRleHRvIEZJTiAtLT4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJlY2ktbG9nbyI+CiAgICA8cD4KICAgICAgPCEtLSBFZGl0YXIgZXN0ZSB0ZXh0byBJTklDSU8gLS0+CiAgICAgIEVuIGNvbGFib3JhY2nzbiBjb24KICAgICAgPCEtLSBFZGl0YXIgZXN0ZSB0ZXh0byBGSU4gLS0+CiAgICA8L3A+CiAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vb2tkaWFyaW8uY29tL2ltZy8yMDI2LzA4LzI3L2xvZ28tZWwtY29ydGUtaW5nbGVzLW5lZ3JvLmpwZyIgYWx0PSJFbCBDb3J0ZSBJbmds6XMiPgogIDwvZGl2Pgo8L2E+
    • Recuperar la motivación y volver al deporte sin morir en el intento tras el verano junto a Decathlon
    • si te lo perdiste...

    • Después de 42 años cotizados, Miguel Ángel, jubilado español, estalla: Empecé a trabajar a los 17 y el premio es una reducción del 24% de mi pensión
        • Economía
        • Economía

      un jubilado: "Empecé a trabajar a los 17 y el premio es una reducción del 24% de mi pensión"

      • Janire Manzanas
      • 2026-10-08 10:00
    • Se buscan voluntarios para vivir gratis en un refugio en Tortosa (Tarragona) a cambio de cuidar animales de granja y una finca ecológica de 400 olivos
        • Economía
        • Economía

      Se buscan voluntarios para vivir gratis en un refugio de Tarragona a cambio de cuidar animales

      • Pedro Antolinos
      • 2026-10-08 07:15
    • Es oficial y la Seguridad Social lo ha confirmado: desde el 25 de diciembre se devolverán los años cotizados a los trabajadores que empezaron a cotizar antes del INSS
        • Economía
        • Economía

      desde el 25 de diciembre se devolverán los años cotizados a los trabajadores que empezaron a cotizar antes del INSS

      La Seguridad Social introducirá el 25 de diciembre un cambio importante para algunos deportistasque trabajaron durante años sin que ese tiempo aparezca en su historial. El Real Decreto 739/2026 permitirá reconocer periodos de actividad anteriores a la incorporación de cada disciplina al Régimen General, algo que puede influir en la futura jubilación. La medida incluye a ciclistas, jugadores de baloncesto y balonmano, además de profesionales de otras modalidades, y también podrá beneficiar a personas que ya estén cobrando una pensión.
      • Blanca Espada
      • 2026-10-08 08:00
    • Los expertos en limpieza del hogar coinciden: Para que la ropa dure más y no pierda color hay que lavarla siempre con el ciclo corto y en frío
        • Curiosidades
        • Curiosidades

      expertos en limpieza: "Para que la ropa dure más hay que lavarla con el ciclo corto y en frío"

      • Pedro Antolinos
      • 2026-10-08 08:15
    • Miguel de Cervantes sobre los valores humanos: Por la libertad, así como por la honra, se puede y debe aventurar la vida
        • Curiosidades
        • Curiosidades

      Miguel de Cervantes: "Por la libertad, así como por la honra, se puede y debe aventurar la vida"

      • Aitana Pascual
      • 2026-10-08 10:00
    • La psicología lo confirma: quienes dejan pasar a alguien en la fila del supermercado aunque tengan prisa suelen tener flexibilidad mental y empatía
        • OkSalud
        • OkSalud

      quienes dejan pasar a alguien en la fila del supermercado tienen más empatía

      • Fernando Larruscain
      • 2026-10-08 12:06
    • A sus 19 años David Tomé, malagueño, es ganadero y ya tiene un rebaño de 200 cabras: Llevo desde los 12 años, que tuve mi primera cabra, antes, desde los 7, me iba con ganaderos
        • Sociedad
        • Sociedad

      David Tomé, un ganadero que ya tiene un rebaño de 200 cabras: "a los 12 años tuve mi primera cabra"

      • Fernando Larruscain
      • 2026-10-08 10:50
    • En Finlandia están buscando españoles para trabajar: se ofrecen trabajos de 3.300 euros para puestos de profesor
        • Internacional
        • Internacional

      Finlandia busca españoles para trabajar: se ofrecen sueldos de 3.300 euros

      • Fernando Larruscain
      • 2026-10-08 11:27
    • Colocar un cuenco de sal en el alféizar de la ventana: para qué sirve y por qué se recomienda hacerlo en otoño y en invierno
        • Curiosidades
        • Curiosidades

      Para qué sirve colocar un cuenco de sal en el alféizar de la ventana en otoño

      • Blanca Espada
      • 2026-10-08 07:15
    • Los OK y KO del jueves, 8 de octubre de 2026
    • ¿Pueden convivir las renovables y el mundo rural? ‘Conexión a Tierra’ busca las respuestas
    • Diario Madridista

    • El parón sobrecarga sin piedad a cinco titulares del Real Madrid
        • Real Madrid
        • Real Madrid

      El parón sobrecarga sin piedad a cinco titulares del Real Madrid

      El Real Madrid puede volver a la dinámica de grupo después de casi tres semanas de parón de selecciones. Los de José Mourinho afrontarán un mes clave con un octubre cargado de partidos complicados con el Clásico en el horizonte.
      • Pablo Villanueva
      • 2026-10-08 12:00
    • El número uno, Jude Bellingham
    • Vinicius se machaca en su gimnasio para recuperar su mejor versión
        • Real Madrid
        • Real Madrid

      Vinicius se machaca en su gimnasio para recuperar su mejor versión

      • Luis Cobos
      • 2026-10-07 19:55
    • El heroico Partizán de Joan Peñarroya mide la sequía del Real Madrid de Pedro Martínez
        • Baloncesto
        • Baloncesto

      El heroico Partizán de Joan Peñarroya mide la sequía del Real Madrid de Pedro Martínez

      • Kike Sáez
      • 2026-10-08 09:00
    • Deportes

    • Iris Tió y España, campeonas espiadas por Rusia: Estaba entrenando y vi que miraban, tomaban apuntes y nos copiaron figuras
    • Marruecos ningunea a Jorge Vilda: nombra a un nuevo seleccionador femenino sin haber anunciado su adiós
        • Deportes
        • Deportes

      Marruecos ningunea a Jorge Vilda: nombra un nuevo seleccionador femenino sin anunciar su adiós

      • Hugo Carrasco
      • 2026-10-08 11:36
    • Márquez, muy crítico con el nuevo formato de MotoGP: Es lo que hay y tenemos que adaptarnos
        • Deportes
        • Deportes

      Márquez, muy crítico con el nuevo formato de MotoGP: "Es lo que hay y tenemos que adaptarnos"

      • Miguel Zorío
      • 2026-10-08 11:45
    • Silva aclara su fichaje por el equipo de Hong Kong: Es sólo para jugar un partido
        • Deportes
        • Deportes

      Silva aclara su fichaje por el equipo de Hong Kong: "Es sólo para jugar un partido"

      El miércoles saltaba la sorpresa al conocerse que David Silva fichaba por el Supreme Sha Tin de Hong Kong. Tres años después de anunciar su retirada deportiva, el canario volvía al fútbol y lo hacía en la liga asiática. La noticia sobresaltó al mundo del fútbol. Tanto que el jugador salido al paso, sorprendido por el revuelo generado, para comunicar que "es sólo para jugar un partido".
      • Miguel Zorío
      • 2026-10-08 10:37
    • El Bayern se lanza a por Dani Olmo con una oferta millonaria
        • Deportes
        • Deportes

      El Bayern se lanza a por Dani Olmo con una oferta millonaria

      • Pedro Antolinos
      • 2026-10-08 09:12
    • Jon Rahm toma una decisión clave en su carrera: no seguirá en LIV Golf
        • Deportes
        • Deportes

      Jon Rahm toma una decisión clave en su carrera: no seguirá en LIV Golf

      • Alejandro Fernández
      • 2026-10-07 23:50
    • economía

    • EasyJet prevé completar en 2027 su venta a Apollo por 6.700 millones de euros
        • Economía
        • Economía

      EasyJet prevé completar en 2027 su venta a Apollo por 6.700 millones de euros

      Kenton Jarvi, consejero delegado de EasyJet, ha avanzado que la compra de Apollo Global Management para adquirir la low cost británica por 5.700 millones de libras (6.725 millones de euros) va encaminada a completarse el próximo año de 2027.
      • Alicia Bonilla
      • 2026-10-08 12:43
    • El Ibex 35 cae un 1,18% a mediodía y se sitúa en los 18.800 puntos por la presión de los bonos
        • Economía
        • Economía

      El Ibex 35 cae un 1,18% a mediodía y se sitúa en los 18.800 puntos por la presión de los bonos

      • Alicia Bonilla
      • 2026-10-08 12:56
    • COOL

    • Carlo Costanzia padre se revuelve por Pietro tras la polémica con Juls Janeiro: No permaneceré impasible ante quienes lo llaman asesino
        • Cool
        • Cool

      Carlo Costanzia tras la polémica con Juls Janeiro y su hijo pietro: "No permaneceré impasible ante quienes lo llaman asesino"

      • Marta Menéndez
      • 2026-10-08 11:45
    • Carmen Lomana recuerda como se enteró de la muerte de su hermano: Fue un horror
        • Cool
        • Cool

      Carmen Lomana recuerda como se enteró de la muerte de su hermano: "Fue un horror"

      • Marta Huertas
      • 2026-10-08 09:44
    • Ana de Armas confirma oficialmente su relación con Beto Montenegro en París
        • Cool
        • Cool

      Ana de Armas confirma oficialmente su relación con Beto Montenegro en París

      El amor ha vuelto a llamar a la puerta de Ana de Armas. Tras protagonizar algunos de los romances más mediáticos de Hollywood y acaparar numerosos titulares por su vida sentimental, la actriz parece haber encontrado de nuevo la ilusión. El hombre que parece que ha conseguido conquistar su corazón es Beto Montenegro, vocalista y líder de la banda venezolana Rawayana. Después de semanas de rumores y especulaciones sobre un posible noviazgo, ambos han decidido dar un paso al frente y dejarse ver juntos en la Semana de la Moda de París.
      • Marta Huertas
      • 2026-10-08 11:30
    • El gimnasio de los CEOs llega a Madrid con una idea: No entrenamos para cansarte más, sino para que decidas mejor
        • Cool
        • Cool

      El gimnasio de los CEOs llega a Madrid con una idea: "No entrenamos para cansarte más, sino para que decidas mejor"

      • Marta Morales
      • 2026-10-08 05:45
    • Ana Rosa bate récord de audiencia mientras avisa de la campaña de Sánchez: Nos quedan 53 días de mentiras hasta las elecciones
        • Cool
        • Cool

      Ana Rosa bate récord de audiencia mientras avisa de la campaña de Sánchez: "Nos quedan 53 días de mentiras hasta las elecciones"

      • Sergio Espí
      • 2026-10-07 18:57
    • Esther y Carmen Santos Alcocer, las discretas nietas de Esther Koplowitz que han dado un paso al frente en nombre de su madre
        • Cool
        • Cool

      Esther y Carmen Santos Alcocer, las discretas nietas de Esther Koplowitz que han dado un paso al frente en nombre de su madre

      • Marta Huertas
      • 2026-10-07 20:00
    • Happy FM

    • Paola, al ver las imágenes de Sergio con Irini: Qué asco. Se le está yendo la pinza
        • HappyFM
        • HappyFM

      Paola, al ver las imágenes de Sergio con Irini: "Qué asco, Se le está yendo la pinza"

      • María Peñafiel
      • 2026-10-08 11:33
    • Náyades destapa la verdad de Nacho de Borbón No ha comido en la Casa Real
        • HappyFM
        • HappyFM

      Náyades destapa la verdad de Nacho de Borbón "No ha comido en la Casa Real"

      • Idania Monzón
      • 2026-10-08 11:02
    • Audiencias ayer, 7 de octubre:
        • HappyFM
        • HappyFM

      Audiencias ayer, 7 de octubre: 'Horizonte' (12,3%) logra su segundo mejor dato histórico

      • Nacho Molina
      • 2026-10-08 10:28
    • 'First Dates
        • HappyFM
        • HappyFM

      'First Dates' salta de la televisión y llega al mundo real en forma de 'tardeo'

      • Idania Monzón
      • 2026-10-07 18:33
    • Una comensal de
        • HappyFM
        • HappyFM

      Una comensal de 'First Dates', sobre su cita: "Me ha parecido un poco esmirriado"

      • María Peñafiel de Blas
      • 2026-10-07 13:16
    • Rosalía suma un nuevo logro por su disco
        • HappyFM
        • HappyFM

      Rosalía suma un nuevo logro por su disco 'Lux': el Premio Nacional de Nuevas Músicas

      • Idania Monzón
      • 2026-10-07 17:41
    • Okmotor

    • Europa obsesionada con el eléctrico barato y llega Zeekr con un SUV chino de ultralujo con más de 800 CV
        • Motor
        • Motor

      Europa, obsesionada con el eléctrico barato y llega Zeekr, con un SUV chino de ultralujo

      • Andrea Aguado
      • 2026-10-08 05:45
    • Espíritu aventurero y la electrificación más avanzada: la nueva era de Jeep aterriza con el renovado Avenger y el potente Compass 4xe
        • Motor
        • Motor

      la nueva era de Jeep aterriza con el renovado Avenger y el potente Compass 4xe

      • OKDIARIO
      • 2026-10-07 12:11
    • La velocidad a la que el consumo de combustible es menor: muchos conductores creen que es a 9 km/h, pero los datos dicen lo contrario
        • Motor
        • Motor

      La velocidad a la que el consumo es menor: muchos creen que es a 9 km/h, pero los datos dicen lo contrario

      • Janire Manzanas
      • 2026-10-07 11:00
    • OKGreen

    • Cinco grandes bosques españoles en los que puedes disfrutar de todos los colores del otoño
        • OKGREEN
        • OKGREEN

      Cinco grandes bosques españoles en los que puedes disfrutar de todos los colores del otoño

      Parece que por fin nos ha dejado un verano que parecía interminable y que estamos entrando en el otoño. La estación de las hojas es uno de los mejores momentos del año para recorrer los bosques de nuestro país y disfrutar de la amplia paleta de amarillos, ocres, rojos y marrones que dan forma y color a sus espectaculares entornos. Contemplarlos es un privilegio que debemos preservar para las generaciones futuras. Por eso, conviene acercarse a estos espacios respetando las normas establecidas, utilizando los caminos y senderos habilitados y evitando tirar residuos o causar cualquier tipo de daño a la flora y la fauna.
      • Daniel Jiménez
      • 2026-10-08 05:00
    • Polvo de otro mundo y plástico reciclado: la solución circular más económica para construir en la Luna
        • OKGREEN
        • OKGREEN

      Polvo de otro mundo y plástico reciclado: la solución más económica para construir en la Luna

      • Antonio Quilis
      • 2026-10-08 05:15
    • Dos de cada tres españoles temen que los mensajes sobre alimentos ecológicos sean engañosos
        • OKGREEN
        • OKGREEN

      Dos de cada tres españoles temen que los mensajes sobre alimentos ecológicos sean engañosos

      • Antonio Quilis
      • 2026-10-07 10:18
    • OKSalud

    • Escleroterapia con microespuma: la técnica sin cirugía ni anestesia para eliminar las varices en consulta
    • Las estatinas podrían proteger frente al glaucoma y reabren el debate médico sobre si son buenas o no
        • OkSalud
        • OkSalud

      Las estatinas podrían proteger frente al glaucoma y reabren el debate sobre si son buenas o no

      • Diego Buenosvinos
      • 2026-10-08 05:40
    • Las complicaciones del embarazo dejan huella: aumentan el riesgo de enfermedad cardíaca y renal
        • OkSalud
        • OkSalud

      Las complicaciones del embarazo dejan huella: aumentan el riesgo de enfermedad cardíaca y renal

      • Diego Buenosvinos
      • 2026-10-08 05:40
    • ¿La calvicie se hereda?: estos son los mitos sobre la alopecia que desmiente la ciencia
        • OkSalud
        • OkSalud

      ¿La calvicie se hereda?: estos son los mitos sobre la alopecia que desmiente la ciencia

      La pérdida de cabello es una situación que trae de cabeza a la mayoría de los españoles. Para desestigmatizar la pérdida de cabello y celebrar la aceptación personal, Svenson, la compañía líder en salud capilar, responde a una de las preguntas más recurrentes en las consultas: si la calvicie se hereda o no.
      • B. Muñoz
      • 2026-10-08 05:40
    • OKCLUB

    • Hazte socio de OKCLUB por sólo 10 euros y disfruta de todas las ventajas de OKDIARIO
        • OKCLUB
        • OKCLUB

      Hazte socio de OKCLUB por sólo 10 euros y disfruta de todas las ventajas de OKDIARIO

      • OKDIARIO
      • 2026-09-03 10:38
    • Sergio Espí: Para sorpresa de nadie ya se ha estrenado una de las peores series españolas del año
        • OKCLUB
        • OKCLUB

      Sergio Espí: "Para sorpresa de nadie ya se ha estrenado una de las peores series españolas del año"

      • OKDIARIO
      • 2026-10-08 05:48
    • navarra

    • Renfe da marcha atrás y devuelve a Tudela una conexión ferroviaria clave para la Ribera tras la queja de Toquero
        • Sociedad

      Renfe da marcha atrás y devuelve a Tudela una conexión ferroviaria clave para la Ribera tras la queja de Toquero

    • El agitador Vito Quiles anuncia su regreso a Pamplona con un acto en la Plaza del Castillo tras los graves disturbios de 2025
        • Política

      El agitador Vito Quiles anuncia su regreso a Pamplona con un acto en la Plaza del Castillo tras los graves disturbios de 2025

    • Un plan para disfrutar del puente en Pamplona: la feria que trae a la Plaza del Castillo un mercadillo y catas
        • Pamplona

      Un plan para disfrutar del puente en Pamplona: la feria que trae a la Plaza del Castillo un mercadillo y catas

    • Una nueva cita gratuita llega al frontón Labrit de Pamplona: diez jornadas de pelota, retos y propuestas gastronómicas
        • Pamplona

      Una nueva cita gratuita llega al frontón Labrit de Pamplona: diez jornadas de pelota, retos y propuestas gastronómicas

    • Toquero planta cara a Ernai en Tudela: pide prohibir su manifestación y avisa del riesgo de
        • Tudela y Ribera

      Toquero planta cara a Ernai en Tudela: pide prohibir su manifestación y avisa del riesgo de "altercados"

    • Sánchez de Muniáin saca los colores al gobierno de Chivite tras el desplome del 44% del alquiler en Navarra
        • Política

      Sánchez de Muniáin saca los colores al gobierno de Chivite tras el desplome del 44% del alquiler en Navarra

    • metabolic

    • Carlos Herrera explica su rutina para mantenerse en forma a los 69 años: «La tentación de comprarse una talla más es el principio del fin»
        • Deporte

      Carlos Herrera explica su rutina para mantenerse en forma a los 69 años: «La tentación de comprarse una talla más es el principio del fin»

    • David Terapeuta lo explica: «Son ejercicios sencillos que puedes hacer en casa y que pueden ayudarte a mejorar notablemente las molestias asociadas a la artrosis»
        • Deporte

      David Terapeuta lo explica: «Son ejercicios sencillos que puedes hacer en casa y que pueden ayudarte a mejorar notablemente las molestias asociadas a la artrosis»

    • Suena raro, pero los expertos lo avalan: los mayores de 60 años también pueden mejorar su equilibrio con este original ejercicio de gimnasia
        • Deporte

      Suena raro, pero los expertos lo avalan: los mayores de 60 años también pueden mejorar su equilibrio con este original ejercicio de gimnasia

    • Los entrenadores expertos coinciden: hacer la plancha a partir de los 50 está bien para fortalecer el abdomen, pero es mucho mejor caminar con una mancuerna en una mano
        • Deporte

      Los entrenadores expertos coinciden: hacer la plancha a partir de los 50 está bien para fortalecer el abdomen, pero es mucho mejor caminar con una mancuerna en una mano

    • La nueva tendencia viral en TikTok para dormir mejor: «Caminar descalzo sobre sal»
        • Salud

      La nueva tendencia viral en TikTok para dormir mejor: «Caminar descalzo sobre sal»

    • José Abellán, cardiólogo: «El ayuno intermitente no es una dieta, sino una estrategia de alimentación que puede aportar beneficios»
        • Dietas

      José Abellán, cardiólogo: «El ayuno intermitente no es una dieta, sino una estrategia de alimentación que puede aportar beneficios»

    • talent24h

    • La FP online dejaría de ser cien por cien virtual: Educación plantea clases presenciales y un tope de alumnos
        • Actualidad

      La FP online dejaría de ser cien por cien virtual: Educación plantea clases presenciales y un tope de alumnos

    • China usa 27 espejos para ganar tres horas de obra al día en la presa de 315 metros que busca el récord mundial
        • Actualidad

      China usa 27 espejos para ganar tres horas de obra al día en la presa de 315 metros que busca el récord mundial

    • Una turista pide dos bebidas y algo de comer en Venecia y le cobran un extraño suplemento de 7 euros por escuchar música en directo
        • Actualidad

      Una turista pide dos bebidas y algo de comer en Venecia y le cobran un extraño suplemento de 7 euros por escuchar música en directo

    • Una excavación en Antequera revela el graderío de un teatro romano de unos 52 metros tras 35 años sin excavaciones
        • Actualidad

      Una excavación en Antequera revela el graderío de un teatro romano de unos 52 metros tras 35 años sin excavaciones

    • Una enfermera alegó 304 horas extra y turnos de 12 horas pero el TSJ no considera probado el incumplimiento grave
        • Empleo

      Una enfermera alegó 304 horas extra y turnos de 12 horas pero el TSJ no considera probado el incumplimiento grave

    • El hallazgo de una nueva especie en Tanzania obliga a revisar la edad de antiguos fósiles de dinosaurios
        • Actualidad

      El hallazgo de una nueva especie en Tanzania obliga a revisar la edad de antiguos fósiles de dinosaurios

    • Muy Interesante

    • ¿Cómo influye la sobreinformación en la evolución de la estupidez?
        • Ciencia

      ¿Cómo influye la sobreinformación en la evolución de la estupidez?

    • Por qué Gran Bretaña temía que la Alemania nazi invadiera Irlanda durante la Segunda Guerra Mundial
        • Historia

      Por qué Gran Bretaña temía que la Alemania nazi invadiera Irlanda durante la Segunda Guerra Mundial

    • Jorge II de Grecia, el rey que volvió al trono en tres ocasiones
        • Historia

      Jorge II de Grecia, el rey que volvió al trono en tres ocasiones

    • La Ninja CRISPi baja de precio en Amazon y se convierte en una de las grandes ofertas del momento
        • Compras

      La Ninja CRISPi baja de precio en Amazon y se convierte en una de las grandes ofertas del momento

    • Lokiceratops, el dinosaurio con cuernos en forma de cuchilla que destacaba entre sus vecinos
        • Naturaleza

      Lokiceratops, el dinosaurio con cuernos en forma de cuchilla que destacaba entre sus vecinos

    • Hachimaki: la bandana japonesa que simboliza esfuerzo, constancia y buena suerte
        • Curiosidades

      Hachimaki: la bandana japonesa que simboliza esfuerzo, constancia y buena suerte

    • okzinet

    • Cómo viajar en avión con un bebé en su silla de coche: homologación y billete
        • Ser Padres

      Cómo viajar en avión con un bebé en su silla de coche: homologación y billete

    • Cómo ayudar a los niños a superar el miedo a los insectos y otros animales
        • Ser Padres

      Cómo ayudar a los niños a superar el miedo a los insectos y otros animales

    • Por qué se pelean los hermanos y cómo ayudarles a resolver sus conflictos
        • Ser Padres

      Por qué se pelean los hermanos y cómo ayudarles a resolver sus conflictos

    • Qué hacer si roban en tu casa: pasos para proteger la vivienda y reclamar al seguro
        • Mia Revista

      Qué hacer si roban en tu casa: pasos para proteger la vivienda y reclamar al seguro

    • Ideas prácticas para aprovechar al máximo la terraza este verano
        • Mia Revista

      Ideas prácticas para aprovechar al máximo la terraza este verano

    • Ácido hialurónico: hidratación y frescura para una piel más luminosa
        • Mia Revista

      Ácido hialurónico: hidratación y frescura para una piel más luminosa

    • Techy

    • Un lector de matrículas de Flock Safety
        • Techy

      Unos hackers arrancan una cámara Flock y encuentran dentro la clave de cifrado: 1,6 millones de imágenes de 21 días

      • Adrián Villellas
    • La instalación HFEF del Idaho National Laboratory
        • Techy

      Así es la sala de 21 metros llena de argón donde EEUU despedaza el combustible nuclear tras muros de 1,2 metros

      • Adrián Villellas
    • La sonda china Tianwen-1, predecesora de la Tianwen-3, en órbita de Marte
        • Techy

      China ya fabrica la nave que traerá 500 gramos de Marte en 2031: perforará 2 metros bajo el suelo para buscar vida

      • Adrián Villellas
    • Una medusa Aequorea victoria, de la que procede la proteína verde fluorescente
        • Techy

      Suecia convirtió la proteína que hace brillar a las medusas en una célula solar con electrodos a 30 nanómetros

      • Adrián Villellas
    • La presa de Old Hickory, en Tennessee
        • Techy

      Una presa de EEUU cambia una turbina de 1957 de cinco palas por otra de siete: mismo tamaño y un 45% más de potencia

      • Adrián Villellas
    • La zona quemada del monte Wingen, en Nueva Gales del Sur
        • Techy

      Bajo esta montaña de Australia arde una veta de carbón desde hace 6.000 años y avanza un metro cada año

      • Adrián Villellas
    • OkPlanes

    • bandera de españa
        • OkPlanes

      Madrid celebra el Día de la Hispanidad con desfiles, conciertos gratuitos y espectáculos de luz

      • Sandra Quintana C
    • crema de calabaza
        • OkPlanes

      Las mejores cremas de calabaza de la capital para este otoño

      • Sandra Quintana C
    • Baile de Huesos teatro luchana
        • OkPlanes

      ‘Baile de Huesos’ reúne humor y reflexión existencial en los Teatros Luchana

      • Sandra Quintana C
    • Cirque du Soleil KURIOS
        • OkPlanes

      El Cirque du Soleil trae a Madrid la fantasía steampunk de KURIOS

      • Sandra Quintana C
    • this is michael
        • OkPlanes

      El homenaje a Michael Jackson llega al Palacio Vistalegre

      • Sandra Quintana C
    • Film Symphony Orchestra
        • OkPlanes

      Film Symphony Orchestra arranca su gira Odisea en el Auditorio Nacional

      • Sandra Quintana C
    • Curiosidades

    • frigorífico
        • Curiosidades

      Los electricistas avisan a la población: «El 8% de la factura de electricidad de tu hogar procede de los dispositivos en stand by»

      • Sofía Crotti
    • Gabriel García Márquez
        • Curiosidades

      Gabriel García Márquez, escritor: «El mundo era tan reciente, que muchas cosas carecían de nombre, y para mencionarlas había que señalarlas con el dedo»

      • Janire Manzanas
    • Psicología
        • Curiosidades

      La psicología deja claro que los que nacieron en 1950-1960 fueron mas felices que los jóvenes de hoy porque no tenían tantos bienes materiales

      • Janire Manzanas
    • Federico García Lorca. Imagen generada con IA.
        • Curiosidades

      Federico García Lorca dejó esta reflexión sobre los más desfavorecidos: «En este mundo yo siempre he sido y seré un partidario de los que no tienen nada»

      • Aitana Pascual
        • Curiosidades

      Julio González, cocinero de la Moncloa durante 32 años: «La familia Zapatero siempre estaba con los regímenes especialmente por las niñas, tenían el problema de engordar»

      • Álvaro Olivero
    • Miguel de Cervantes. Imagen generada con IA.
        • Curiosidades

      Miguel de Cervantes sobre los valores humanos: «Por la libertad, así como por la honra, se puede y debe aventurar la vida»

      • Aitana Pascual
    • Recetas de cocina

    • Tarta casera
        • Recetas de cocina

      Tarta de queso San Sebastián: receta original cremosa y fácil

      • Francisco María
    • Tarta casera
        • Recetas de cocina

      Tarta de queso sin lactosa: receta fácil y deliciosa

      • Francisco María
    • Tarta casera
        • Recetas de cocina

      Tarta de queso Royal: receta fácil y cremosa paso a paso

      • Francisco María
    • Tarta casera
        • Recetas de cocina

      Tarta de queso Philadelphia con leche condensada y huevos: receta cremosa y fácil

      • Francisco María
    • Tarta casera
        • Recetas de cocina

      Tarta de queso Philadelphia con cuajada: receta fácil y sin complicaciones

      • Francisco María
    • Juan Pablo II
        • Recetas de cocina

      La reflexión de San Juan Pablo II sobre la familia que sigue siendo la más citada de su pontificado: «El futuro de la humanidad se fragua en la familia»

      • Francisco María
    • OkShopping

    • Mesa de TV Abilen
        • OkShopping

      Adiós cables y tiradores: Abilen es el mueble de TV que todo salón minimalista necesita

      • New Mall Media
    • cargador inalámbrico 3 en 1 de TIMESS.jpg
        • OkShopping

      AliExpress hunde el precio de este cargador inalámbrico: carga 3 dispositivos Apple a la vez y funciona como lámpara de noche

      • New Mall Media
    • monitor gaming de LG
        • OkShopping

      Este monitor gaming de LG convierte tu escritorio en una pantalla de cine ¡y está rebajado un 26%!

      • New Mall Media
        • OkShopping

      10 mejores móviles de gama alta de 2026: ¿cuál comprar?

      • New Mall Media
    • Iberdrola
        • OkShopping

      ¿Cómo dar de alta la luz paso a paso?

      • New Mall Media
    • Mejores secadores de pelo
        • OkShopping

      Comparativa de secadores de pelo: ¿Cuál es el mejor de 2026?

      • New Mall Media
    • Mascotas

    • Un adiestrador entrena a un perro border collie. Foto: Magnific
        • Mascotas

      Borja Capponi, experto en adiestramiento canino: «La ansiedad a los perros se la creamos nosotros; cuanto más le das a un perro más te va a exigir»

      • Naiara Philpotts
    • Perro olfatea el trasero
        • Mascotas

      Los veterinarios coinciden: «Tu perro no lo hace por casualidad, olfatea el trasero de otros perros porque posee un sistema de escaneo natural muy avanzado»

      • Janire Manzanas
    • Imagen generada por IA.
        • Mascotas

      Confirmado por la Ley de Bienestar Animal: se obliga a los dueños de perros y gatos a comunicar el fallecimiento de su mascota a las autoridades

      • Carmen Ruiz
    • Perro, animales, mascotas
        • Mascotas

      José Luis Puchol, veterinario (72 años): «En mi época los perros vivían 8 años o 10 como mucho; hoy todos los perros pasan de los 12 años»

      • Ana López Vera
    • perro ladra
        • Mascotas

      Los veterinarios expertos coinciden: si tu perro ladra sólo a algunas personas no es por miedo, en realidad es una reacción a los olores

      • Blanca Espada
    • Comportamiento canino
        • Mascotas

      Los expertos en comportamiento canino coinciden: «Cuando un perro ladra ya ha superado su capacidad de calma»

      • Janire Manzanas
    • Ciencia

    • Alaska
        • Ciencia

      Conmoción entre los astrónomos: la NASA mira a Alaska desde el espacio y descubre una extraña mancha naranja que se extiende sobre la superficie

      • Janire Manzanas
    • Ácidos
        • Ciencia

      Ácido fórmico: qué es, para qué sirve, propiedades, usos y aplicaciones

      • Francisco María
        • Ciencia

      Comienza la era de los relojes nucleares: cuenta atrás para la medición del tiempo más precisa de la historia

      • Carmen Canales
    • Las Nubes de Magallanes, la Grande y la Pequeña, fotografiadas desde el Observatorio La Silla (Chile). Foto: Y. Beletsky (LCO), D. Martinez-Delgado/ESO vía Wikimedia Commons - CC BY 4.0
        • Ciencia

      Astrofísicos españoles hallan por primera vez en la historia CH₃ en una estrella evolucionada, y abren un nuevo camino para construir moléculas de carbono

      • Naiara Philpotts
    • El dron hexacóptero en vuelo con el brazo robótico impreso en 3D colgando bajo el chasis. Foto: Pablo Lima Orrego
        • Ciencia

      Un estudiante extremeño construye un dron con un brazo robótico impreso en 3D inspirado en los pulpos para coger objetos en pleno vuelo

      • Naiara Philpotts
    • túnel bajo agua
        • Ciencia

      Un país se prepara para construir un túnel de 1,5 kilómetros con 870 metros bajo el agua: los coches circularán por el fondo del canal mientras los buques navegan justo encima

      • Blanca Espada
    • Bebés

    • antojos aversiones embarazo
        • Bebés

      Antojos y aversiones en el embarazo: ¿Qué los causa y cómo manejarlos?

      • Blanca Espada
    • embarazo ectópico
        • Bebés

      Embarazo Ectópico: Síntomas, Causas y Tratamiento

      • Blanca Espada
    • ansiedad embarazo
        • Bebés

      Cómo gestionar la ansiedad en el embarazo: consejos y recursos para sentirte mejor

      • Blanca Espada
    • alimentación complementaria
        • Bebés

      Cómo introducir la alimentación complementaria sin morir en el intento: trucos y recetas para padres primerizos

      • Blanca Espada
    • urticaria niños
        • Bebés

      Urticaria en niños: causas, síntomas, tratamiento y complicaciones

      • Blanca Espada
    • granuloma umbilical
        • Bebés

      Granuloma umbilical del bebé: ¿Qué es y cómo tratarlo?

      • Blanca Espada
    • Tecnología

    • SynthID Detector
        • Tecnología

      El SynthID Detector de Google ya permite saber si una foto es de IA, siempre que lleve su firma invisible

      • Nacho Grosso
    • limpiaparabrisas Bosch
        • Tecnología

      El limpiaparabrisas de Bosch cumple 100 años y ahora también trabaja para las cámaras del coche

      • Nacho Grosso
    • Microsoft
        • Tecnología

      Microsoft y NVIDIA quieren que la IA viva en tu portátil y no en la nube, y hoy enseñan cómo

      • Nacho Grosso
    • Kodak Charmera
        • Tecnología

      La Kodak Charmera, la cámara de llavero que triunfa por hacer fotos peores que las de tu móvil

      • Nacho Grosso
    • centros datos google
        • Tecnología

      Google se asegura 3,6 gigavatios de electricidad y apuesta por sacar más energía de once reactores nucleares

      • Nacho Grosso
        • Tecnología

      Cómo ocultar una conversación de WhatsApp para que nadie pueda verla

      • Nacho Grosso
    Ir Arriba

    Noticias de última hora

    • Rafa Nadal, sobre irse de España para pagar menos impuestos: «Ganaría mucho más dinero, pero no sería feliz»
    • Tremendo enfado de una comensal de ‘First Dates’: «Yo no abro las piernas cuando bebo un tinto»
    • Elísabet Benavent, a sus 42 años: «Estoy a gusto con mi edad y muy de acuerdo con que la mujer vive su mejor etapa a partir de los 40»
    • El futuro de ‘Fast & Furious’ está en buenas manos: este es el actor mejor posicionado para recoger el testigo de Vin Diesel
    • Última hora de la muerte de Maricarmen Abascal, en directo | De qué ha fallecido, reacciones políticas y seguimiento de la acampada por la vivienda en Sol
    • Ni Skechers ni Samba: estas New Balance retro perfectas para el otoño cuestan ahora 50 € y son súper cómodas
    • Los puntos de recarga de coches eléctricos en España crecen a la mitad de ritmo que la media europea
    • El millonario patrimonio inmobiliario de Mario Vaquerizo: seis casas en Gran Vía, locales y una finca de 2.000 metros
    • Pocos la conocen fuera de Extremadura, pero es una de las setas más caras y apreciadas de España y tiene hasta su propia Fiesta Transfronteriza con Portugal
    • Una notaria experta en herencias lo confirma: para que no se considere donación, debes «incluir a los hijos como titulares en una cuenta bancaria»

    Noticias más vistas

    • Cucurella: «Este partido nos ha servido como toque de atención para no salir relajados»
    • Milei agradece a Messi en su último día con Argentina: «Has mostrado al mundo que con esfuerzo nada es imposible»
    • Así queda la clasificación del grupo de España en la Liga de las Naciones tras la victoria contra Croacia
    • De la Fuente: «Alguno pensaría que estaba loco por decir que hubiese ido a recoger a Merino en brazos, pero ya vieron que no»
    • Merino de mi vida
    • Fernando Alonso y su aplaudido gesto con Oliver Solberg tras perder el Mundial de Rallys en el último tramo
    • Messi pide perdón a Argentina por perder contra España la final del Mundial: «No pasó nada raro»
    • Merino tras su doblete: «Aunque estés rabioso por no ser titular… siempre doy lo mejor de mí»
    • La regularización masiva es un coladero: un nepalí consigue los papeles pese a que llegó a España 5 meses fuera de plazo
    • Ángel Torres descarta el fichaje de Carvajal por el Getafe: «No es posible hacerlo»

    Noticias virales

    • Miguel de la Quadra-Salcedo, famoso aventurero español: «Uno no es español por completo hasta que no conoce y ama a Hispanoamérica»
    • Qué quiere decir el proverbio alemán: «Una valla dura 3 años, un perro dura 3 vallas, un caballo dura 3 perros y un hombre dura 3 caballos»
    • La profunda reflexión de Stephen Hawking sobre la capacidad intelectual: «Las personas tranquilas y silenciosas son las que tienen las mentes más fuertes y ruidosas”
    • La reflexión de Antonio Gala, escritor español, sobre la felicidad: «La felicidad no consiste en tener todo lo que se desea, sino que lo que se desea es la felicidad»
    • Diógenes, filósofo griego, sobre el dinero: «La riqueza no consiste en tener muchas posesiones, sino en tener pocas necesidades»
    • La reflexión de Rafa Nadal (40 años) sobre la situación de España: «La mentalidad de la gente ha cambiado durante los últimos años. Antes la gente siempre intentaba ahorrar dinero para comprar un coche, una casa»
    • José Antonio Marina, filósofo español de 87 años: «El mayor error ha sido decirles a los jóvenes que sólo importa su felicidad y lograrla es muy fácil»
    • Bruce Willis (71 años) era dueño de 3 hectáreas en el Caribe, ayudó a impulsar una zona virgen hasta que lo convirtió en un centro turístico
    • Las personas que permanecen calladas para evitar conflictos tienen una personalidad marcada por el resentimiento y la fatiga emocional
    • La reflexión de Adela Cortina, filósofa española (79 años): «El deber moral no es sólo cumplir obligaciones con los demás, sino en primer lugar cumplirlas consigo mismo»
    Gobierno de España

    Esta empresa se ha acogido a las subvenciones del Gobierno de España cofinanciadas con el Fondo Europeo de Desarrollo Regional para las regiones ultraperiféricas para el transporte de mercancías en Canarias.”Una manera de hacer Europa”

    Unión Europea. Fondo europeo de desarollo regional.
    • DOS MIL PALABRAS S.L. 2026.
    • Contacto
    • Aviso Legal
    • Política de Privacidad
    • Política de Cookies
    • Noticias
    • RSS
    • Quiénes somos
    • Auditado por ComScore