• 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:
  • Marroquíes detenidos Ceuta
  • Cócteles molotov Ceuta
  • Protestas Ceuta
  • ‘Piso franco’ Ceuta
  • PSOE concentraciones
  • Recortes Renfe
  • Explosivos caseros inmigrantes
  • IRPF anual medio
  • Cifra inmigrantes PSOE
  • Ataques playa de Palma
  • Playa del Trampolín
  • Narcos alquiler inmigrantes
  • Caída Pogacar
  • Precio gasolina hoy
  • Alineación Real Madrid
  • Horario Real Madrid – Málaga
  • Horario Rafa Jódar – Kokkinakis
  • Horario y dónde ver Alcaraz
  • Horario MotoGP Aragón
  • La Vuelta España hoy
  • Horario Sevilla – Atlético de Madrid
  • Últimas noticias
Más

    El sitio de los inconformistas

    30 Ago 2026
    Actualizado 10:43 CET
    INICIAR SESIÓN
    Es Noticia
    • La RUTINA de MADONNA para mantenerse en forma
    • Qué significa no hacer VIDA SOCIAL según la PSICOLOGÍA
    • Barco NAUFRAGADO en Filipinas con PRISIONEROS a bordo
    • La reflexión de STEPHEN KING sobre el talento
    • El mejor COLCHÓN TÉRMICO para una vivienda
    • La LECCIÓN de SANCHO PANZA sobre la humildad
    • La REFLEXIÓN de LUTHER KING sobre el aprendizaje
    • MEZCLA de bicarbonato, vinagre y limón
    • Las CABAÑUELAS de JORGE REY dictan el tiempo de septiembre
    • La PSICOLOGÍA aclara la ventaja de la generación del baby boom
    • La PLANTA exterior que mejor AGUANTA el sol
    • Llevar el COCHE sucio qué significa según la PSICOLOGÍA
    • La mezcla de CEMENTO y JABÓN para los ALBAÑILES
    • ALARMANTE la escasez de PULPO en Galicia
    • La FRASE de EINSTEIN sobre las relaciones sentimentales
    • Qué dicen los DERMATÓLOGOS de la crema azul de NIVEA
    • EXPERTOS en QUESOS explican dónde hay que GUARDARLO
    • La REFLEXIÓN de SAN AGUSTÍN
    • PEZ icóno gastronómico de Galicia
    • La REFLEXIÓN de un experto FINANCIERO sobre el éxito
    • Los VETERINARIOS alertan a quienes tienen dos gatos

    Okdiario

    • España
    • Economía
    • Deportes
    • Investigación
    • Cool
    • Mundial
    • Opinión
    • Sociedad
    • Diario Madridista
    • CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQiIGNyb3Nzb3JpZ2luPgo8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vcC50eXBla2l0Lm5ldCIgY3Jvc3NvcmlnaW4+CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbSI+CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbSIgY3Jvc3NvcmlnaW4+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvaXFhMXFlYi5jc3MiPgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Um9ib3RvOndnaHRANDAwOzcwMCZkaXNwbGF5PXN3YXAiPgo8c3R5bGU+Ci8qIGFtcGxpdHVkZS1tZWRpdW0tY29uZGVuc2VkOiB2ZXIgcmVsYXRlZFVwcGVyY2FzZVRpdGxlRm9udCBt4XMgYWJham8uICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAiYW1wbGl0dWRlLW1lZGl1bS1jb25kZW5zZWQiOwogIHNyYzogdXJsKCJodHRwczovL29rZGlhcmlvLmNvbS93ZWIvdGhlbWVzL3YxMC9jc3MvX2ZvbnRzX2FtcGxpdHVkZS9BbXBsaXR1ZGUlMjBBdWJpJTIwTWVkaXVtJTIwQ25kLm90ZiIpOwp9Ci8qIGFtcGxpdHVkZS1ib29rOiB2ZXIgcmVsYXRlZEF1dGhvckZvbnQgbeFzIGFiYWpvLiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogImFtcGxpdHVkZS1ib29rIjsKICBzcmM6IHVybCgiaHR0cHM6Ly9va2RpYXJpby5jb20vd2ViL3RoZW1lcy92MTAvY3NzL19mb250c19hbXBsaXR1ZGUvQW1wbGl0dWRlJTIwQXViaSUyMEJvb2sub3RmIik7Cn0KLyogY29udGFpbmVyLXR5cGU6aW5saW5lLXNpemUgYXF17SBlcyBpbXByZXNjaW5kaWJsZTogY29udmllcnRlIGVzdGUgYmxvcXVlCiAgIGVuIGVsIGNvbnRlbmVkb3IgZGUgcmVmZXJlbmNpYSBwYXJhIGxvcyAiQGNvbnRhaW5lciAoLi4uLWlubGluZS1zaXplLi4uKSIKICAgZGUgbeFzIGFiYWpvLiBVc2Ftb3MgQGNvbnRhaW5lciBlbiB2ZXogZGUgQG1lZGlhIHBvcnF1ZSAiQG1lZGlhCiAgIChtYXgtaW5saW5lLXNpemU6Li4uKSIgTk8gZXMgdW5hIGNvbmRpY2nzbiBDU1MgduFsaWRhICYjODIxMjsgaW5saW5lLXNpemUgc29sbwogICBleGlzdGUgY29tbyBjYXJhY3Rlcu1zdGljYSBkZSBAY29udGFpbmVyLCBudW5jYSBkZSBAbWVkaWEgJiM4MjEyOyBhc+0gcXVlIGVzYXMKICAgcmVnbGFzIGphbeFzIHNlIGFjdGl2YWJhbiAodmVyaWZpY2FkbyBjb24gbWF0Y2hNZWRpYTogc2llbXByZSBmYWxzZSwgc2luCiAgIGltcG9ydGFyIGVsIGFuY2hvKSwgeSBwb3IgZXNvIGxhIG5vdGljaWEgcHJpbmNpcGFsIHBvZO1hIGRlc2FwYXJlY2VyIG8gZWwKICAgZGlzZfFvIG3zdmlsIG5vIHNlIGFjdGl2YWJhIG51bmNhLiBAY29udGFpbmVyIHPtIHNvcG9ydGEgaW5saW5lLXNpemUgZGUKICAgZm9ybWEgduFsaWRhLCB5IGV2aXRhIGlndWFsbWVudGUgbGEgcGFsYWJyYSAid2lkdGg6IiBxdWUgZWwgQ01TIGRlbAogICB1c3VhcmlvIGVsaW1pbmEgYWwgcGVnYXIgSFRNTC9DU1MgZGlyZWN0YW1lbnRlLiAqLwovKiBGSVggT0tESUFSSU8gKi8KICAgIC5pdGVtIGFydGljbGUgLmFydGljbGUtc2NyaXB0IHsKICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50OwogICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50OwogICAgfQovKiBDb250ZW5lZG9yIGRlIHRvZGEgbGEgYXBlcnR1cmEgKGNhYmVjZXJhICsgbm90aWNpYSBwcmluY2lwYWwgKyBjb2x1bW5hKToKICAgZm9uZG8gYmxhbmNvIHkgYWlyZSBhbHJlZGVkb3IsIHNvbG8gZW4gRGVzayAmIzgyMTI7IHZlciBvdmVycmlkZSBkZW50cm8gZGVsCiAgIEBjb250YWluZXIobWF4LWlubGluZS1zaXplOjg2MHB4KSBkZSBt4XMgYWJham8sIHF1ZSBsbyBhbnVsYSBwb3IgZGViYWpvCiAgIGRlIGVzZSBhbmNobyAoZXF1aXZhbGVudGUgYSBsYSB2aXN0YSBN83ZpbCkuICovCi5ibGstdjJmMzl7bWF4LWlubGluZS1zaXplOjk2MHB4O21hcmdpbjowIGF1dG87Y29udGFpbmVyLXR5cGU6aW5saW5lLXNpemU7YmFja2dyb3VuZC1jb2xvcjojZmZmO3BhZGRpbmc6MTBweDt9Ci5ibGstdjJmMzkgYXt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjppbmhlcml0fQouYmxrLXYyZjM5IC5wYWdle2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyO2dhcDoxNXB4fQouYmxrLXYyZjM5IC5wYWdlIC5jb2x1bW57b3JkZXI6M30KLmJsay12MmYzOSAucGFnZSAubGVhZHtvcmRlcjoyfQovKiA4NjBweCB5IG5vIDQ3NXB4OiBjb24gbGEgY29sdW1uYSBmaWphICgyMjBweCArIDIwcHggZGUgZ2FwID0gMjQwcHgpLAogICBjdWFscXVpZXIgYW5jaG8gZGUgaWZyYW1lIHBvciBkZWJham8gZGUgfjg2MHB4IGRlamEgbGEgbm90aWNpYSBwcmluY2lwYWwKICAgKDFmcikgY2FkYSB2ZXogY29uIG1lbm9zIGVzcGFjaW8gaGFzdGEgY29sYXBzYXIgYSAwcHggZGUgYW5jaG8gYW50ZXMgZGUKICAgbGxlZ2FyIGEgdW4gYnJlYWtwb2ludCB0YW4gYmFqbyBjb21vIDQ3NXB4ICYjODIxMjsgbGEgbm90aWNpYSBwcmluY2lwYWwKICAgZGlyZWN0YW1lbnRlIGRlc2FwYXJlY2UgZW4gZXNhIGZyYW5qYSBpbnRlcm1lZGlhIChuaSAiZGVzayIgY29tcGxldG8gbmkKICAgIm3zdmlsIiBlc3RyZWNobykuIENvbiA4NjBweCBzZSBwYXNhIGEgdW5hIHNvbGEgY29sdW1uYSBhcGlsYWRhIGFudGVzIGRlCiAgIHF1ZSBlc28gcHVlZGEgb2N1cnJpci4KICAgRXN0ZSBicmVha3BvaW50IHNlIG9taXRlIHBvciBjb21wbGV0byBtaWVudHJhcyBsYSBzaW11bGFjafNuIGRlIGFuY2hvIGVzdOkKICAgYWN0aXZhICh2ZXIgbGVhZFdpZHRoUHJldmlldyk6IHBlbnNhZG8gcGFyYSBjdWFuZG8gZWwgbfNkdWxvIGxsZXZhIHN1CiAgIGNvbHVtbmEgYSA5NjBweCwgZGVqYSBkZSB0ZW5lciBzZW50aWRvIGVuIHVuYSBleHBvcnRhY2nzbiBkZSBzb2xvIGxhCiAgIG5vdGljaWEgcHJpbmNpcGFsIGEgdW4gYW5jaG8gZmlqbyBlbGVnaWRvIGEgbWFubyAmIzgyMTI7IGxvcyBhbmNob3Mgc2ltdWxhZG9zCiAgICg2MTMvNDYwLzMwN3B4KSBlc3ThbiBUT0RPUyBwb3IgZGViYWpvIGRlIDg2MHB4LCBhc+0gcXVlIHNpbiBlc3RlIGdhdGluZwogICBlbCBIVE1MIGV4cG9ydGFkbyBjYWVy7WEgc2llbXByZSBhIGxhIHRpcG9ncmFm7WEgIk3zdmlsIiAoY29uICFpbXBvcnRhbnQpCiAgIHNlYSBjdWFsIHNlYSBsYSBxdWUgZWwgdXN1YXJpbyBjb25maWd1cvMgZW4gIkRlc2siIHBhcmEgZXNhIHNpbXVsYWNp824sCiAgIGRhbmRvIGxhIGZhbHNhIHNlbnNhY2nzbiBkZSBxdWUgdW5hIGNvbmZpZ3VyYWNp824gInBpc2EiIGEgb3RyYS4gKi8KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjg2MHB4KXsKICAuYmxrLXYyZjM5e2JhY2tncm91bmQ6bm9uZTtwYWRkaW5nOjA7fQogIC5ibGstdjJmMzkgLnBhZ2V7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcn0KICAuYmxrLXYyZjM5IC5wYWdlIC5zdGFjay10aXRsZSB7Zm9udC1zaXplOjE4cHg7IGxpbmUtaGVpZ2h0OiAxLjJlbTt9CiAgLmJsay12MmYzOSAucGFnZSAuc3RhY2stYXV0aG9yIHttYXJnaW4tdG9wOiAxMHB4O30KICAuYmxrLXYyZjM5IC5sZWFkLW1lZGlhLmlzLWlmcmFtZXtibG9jay1zaXplOjQwMHB4ICFpbXBvcnRhbnQ7fQogIC5ibGstdjJmMzkgLmxlYWQtbWVkaWF7YXNwZWN0LXJhdGlvOjE2LzkgIWltcG9ydGFudDt9CiAgLmJsay12MmYzOSAucGFnZSAubGVhZHtvcmRlcjoxfQogIC5ibGstdjJmMzkgLnBhZ2UgLmNvbHVtbntvcmRlcjoyfQogIC8qIFBvciBkZWJham8gZGVsIGJyZWFrcG9pbnQsIGVsIGxlYWQtYm9keSBzaWVtcHJlIHZ1ZWx2ZSBhIGlyIGRlYmFqbyBkZWwKICAgICBsZWFkLW1lZGlhIChubyBoYXkgc2l0aW8gcGFyYSBlbCBsYXlvdXQgbGFkbyBhIGxhZG8pLiAqLwogIC5ibGstdjJmMzkgLnBhZ2UgLmxlYWQubGVhZC1ib2R5LWxlZnQsCiAgLmJsay12MmYzOSAucGFnZSAubGVhZC5sZWFkLWJvZHktcmlnaHR7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FzcGVjdC1yYXRpbzphdXRvO30KICAuYmxrLXYyZjM5IC5wYWdlIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLW1lZGlhLAogIC5ibGstdjJmMzkgLnBhZ2UgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLW1lZGlhe2ZsZXg6MSAxIGF1dG87fQogIC5ibGstdjJmMzkgLnBhZ2UgLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYm9keSwKICAuYmxrLXYyZjM5IC5wYWdlIC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1ib2R5e2ZsZXg6MSAxIGF1dG87aW5saW5lLXNpemU6OTAlO21hcmdpbjotMzBweCBhdXRvIDA7YmxvY2stc2l6ZTphdXRvO2FsaWduLXNlbGY6YXV0bztqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtwYWRkaW5nOjEwcHg7fQogIC5ibGstdjJmMzkgLnBhZ2UgLmxlYWQubGVhZC1ib2R5LWxlZnQgLnBsYXktYnV0dG9ue2xlZnQ6MTBweDtyaWdodDphdXRvO30KICAuYmxrLXYyZjM5IC5wYWdlIC5jb2x1bW4taXRlbXtib3JkZXI6MXB4IHNvbGlkICNlN2ViZWU7cGFkZGluZzoxMHB4O2JhY2tncm91bmQ6I2ZmZjtibG9jay1zaXplOnN0cmV0Y2g7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlO30KICAuYmxrLXYyZjM5IC5wYWdlIC5sZWZ0LXRpdGxle2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOjIwcHg7bGluZS1oZWlnaHQ6MS4xNTtjb2xvcjojMmMzZTUzO21hcmdpbjowO3RleHQtYWxpZ246bGVmdDt9CiAgLmJsay12MmYzOSAucGFnZSAuY29sdW1uLWl0ZW0udGl0bGUtb25seS1tb2JpbGUtMjEgLmxlZnQtdGl0bGV7Zm9udC1zaXplOjIxcHggIWltcG9ydGFudDt9CiAgLmJsay12MmYzOSAucGFnZSAuY29sdW1uLWl0ZW0udGl0bGUtb25seS1tb2JpbGUtMTggLmxlZnQtdGl0bGV7Zm9udC1zaXplOjE4cHggIWltcG9ydGFudDt9CiAgLmJsay12MmYzOSAucGFnZSAubGVmdC1wbGF5ewogICAgZmxleDowIDAgYXV0bztpbmxpbmUtc2l6ZToxNXB4O2Jsb2NrLXNpemU6MTVweDtib3JkZXItcmFkaXVzOjJweDsKICAgIGJhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICMwMGE3ZmY7CiAgICBkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MDsKICAgIHZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1ib3R0b206NHB4OwogIH0KICAuYmxrLXYyZjM5IC5wYWdlIC5sZWZ0LXBsYXk6OmJlZm9yZXsKICAgIGNvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztpbmxpbmUtc2l6ZTowO2Jsb2NrLXNpemU6MDsKICAgIGJvcmRlci1sZWZ0OjRweCBzb2xpZCAjMDBhN2ZmO2JvcmRlci10b3A6M3B4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206M3B4IHNvbGlkIHRyYW5zcGFyZW50O21hcmdpbi1sZWZ0OjFweDsKICB9Cn0KLyogVGlwb2dyYWbtYSAiTfN2aWwiIChhbnRldO10dWxvL3RpdHVsYXIvc3VidO10dWxvL3RpdHVsYXJlcyBhbmltYWRvcykgY29uIFNVCiAgIFBST1BJTyBicmVha3BvaW50ICg0ODBweCksIHNlcGFyYWRvIGRlbCBkZSBhcnJpYmEgKDg2MHB4LCBzb2xvIHBhcmEgYXBpbGFyCiAgIGxhIHJlamlsbGEgY29sdW1uYStub3RpY2lhKTogdW4gY29udGVuZWRvciByZWFsIGRlIG1lbm9zIGRlIDg2MHB4IGVzIG11eQogICBoYWJpdHVhbCAocC5lai4gdW5hIGNvbHVtbmEgZGUgYXJ07WN1bG8gZGUgfjcwMHB4KSB5IE5PIGVzIHVuIG3zdmlsICYjODIxMjsgY29uCiAgIHVuIPpuaWNvIGJyZWFrcG9pbnQgY29tcGFydGlkbywgbGEgdGlwb2dyYWbtYSAiRGVzayIgcXVlIGNvbmZpZ3VyYSBlbAogICB1c3VhcmlvIG5vIGxsZWdhYmEgYSB2ZXJzZSBudW5jYSBlbiBlc2UgY2FzbywgY2F5ZW5kbyBzaWVtcHJlIGEgbG9zIHZhbG9yZXMKICAgcG9yIGRlZmVjdG8gZGUgIk3zdmlsIiBzaW4gcXVlIG5hZGllIGxvIGh1YmllcmEgcGVkaWRvLiA0ODBweCBz7SBzZQogICBjb3JyZXNwb25kZSBjb24gdW4gYW5jaG8gZGUgbfN2aWwgcmVhbCAobGEgdmlzdGEgIk3zdmlsIiBkZWwgcHJvcGlvIGdlc3RvcgogICBzaW11bGEgMzc1cHgpLiBJZ3VhbCBxdWUgZWwgYnJlYWtwb2ludCBkZSBhcnJpYmEsIHNlIG9taXRlIGR1cmFudGUgbGEKICAgc2ltdWxhY2nzbiBkZSBhbmNobyBkZSBsYSBub3RpY2lhIHByaW5jaXBhbCAodmVyIGxlYWRXaWR0aFByZXZpZXcpLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6NDgwcHgpewogIC5ibGstdjJmMzkgLmxlYWQta2lja2Vye2ZvbnQtc2l6ZToxLjMxMjVyZW0gIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjEgIWltcG9ydGFudDtjb2xvcjojMDBBN0ZGICFpbXBvcnRhbnQ7fQogIC5ibGstdjJmMzkgLmxlYWQtc3VidGl0bGV7Zm9udC1zaXplOjEuMzEyNXJlbSAhaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjEuMSAhaW1wb3J0YW50O2NvbG9yOiMwMEE3RkYgIWltcG9ydGFudDt9CiAgLmJsay12MmYzOSAubGVhZC10aXRsZXtmb250LXNpemU6MS44cmVtICFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS4xICFpbXBvcnRhbnQ7fQogIC5ibGstdjJmMzkgLmxlYWQtdGl0bGUtZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay12MmYzOSAubGVhZC10aXRsZS1tb2JpbGV7ZGlzcGxheTppbmxpbmUgIWltcG9ydGFudDt9CiAgLmJsay12MmYzOSAubGVhZC1raWNrZXItZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay12MmYzOSAubGVhZC1raWNrZXItbW9iaWxle2Rpc3BsYXk6aW5saW5lICFpbXBvcnRhbnQ7fQogIC5ibGstdjJmMzkgLmxlYWQtc3VidGl0bGUtZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay12MmYzOSAubGVhZC1zdWJ0aXRsZS1tb2JpbGV7ZGlzcGxheTppbmxpbmUgIWltcG9ydGFudDt9CiAgLmJsay12MmYzOSAubGVhZC1hbmltLWhlYWRsaW5lc3tmb250LXNpemU6MS44NzVyZW0gIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjAyICFpbXBvcnRhbnQ7fQogIAogIC5ibGstdjJmMzkgLnJlbGF0ZWQtdGl0bGUtZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay12MmYzOSAucmVsYXRlZC10aXRsZS1tb2JpbGV7ZGlzcGxheTppbmxpbmUgIWltcG9ydGFudDt9Cn0KLmJsay12MmYzOSAubGVhZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiNmZmY7b3ZlcmZsb3c6aGlkZGVuO2lzb2xhdGlvbjppc29sYXRlO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO30KLmJsay12MmYzOSAubGVhZC1tZWRpYXtwb3NpdGlvbjpyZWxhdGl2ZTthc3BlY3QtcmF0aW86MTYvOTtiYWNrZ3JvdW5kOiMwMDA7b3ZlcmZsb3c6aGlkZGVufQovKiBNZWRpYSBtZWRpYW50ZSBpZnJhbWU6IGFsdG8gZmlqbyBlbiBw7XhlbGVzIGVuIHZleiBkZSBsYSBwcm9wb3JjafNuIGRlCiAgIGFycmliYSAodmVyIGNvbWVudGFyaW8gZGV0YWxsYWRvIGp1bnRvIGEgc3RhdGUubGVhZC5pZnJhbWVIZWlnaHQpICYjODIxMjsgZWwKICAgdmFsb3IgZGUgTfN2aWwgc2Ugc29icmVzY3JpYmUgZW4gZWwgQGNvbnRhaW5lciBkZSBt4XMgYWJham8sIGlndWFsIHF1ZSBlbAogICByZXN0byBkZSBvdmVycmlkZXMgcmVzcG9uc2l2ZSBkZSBlc3RlIEhUTUwgZXhwb3J0YWRvLiAqLwouYmxrLXYyZjM5IC5sZWFkLW1lZGlhLmlzLWlmcmFtZXthc3BlY3QtcmF0aW86bm9uZTtibG9jay1zaXplOjY0MHB4O30KLmJsay12MmYzOSAubGVhZC1tZWRpYSBpbWcsCi5ibGstdjJmMzkgLmxlYWQtbWVkaWEgdmlkZW97cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtvYmplY3QtZml0OmNvdmVyfQovKiBDYXJydXNlbCBkZSBmb3RvcyBkZSBmb25kbyBjb24gZWZlY3RvIEtlbiBCdXJucyAmIzgyMTI7IHZlciBlbCBtaXNtbyBibG9xdWUsCiAgIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLgogICBMYSBkdXJhY2nzbiBkZSBsYXMgYW5pbWFjaW9uZXMgKDZzKSBjb2luY2lkZSBjb24KICAgTEVBRF9DQVJPVVNFTF9JTlRFUlZBTCwgcXVlIHRhbWJp6W4gZ29iaWVybmEgZWwgc2NyaXB0IGRlIHJvdGFjafNuCiAgIChidWlsZExlYWRDYXJvdXNlbFNjcmlwdCkgYfFhZGlkbyBhbCBmaW5hbCBkZWwgSFRNTCBleHBvcnRhZG8uICovCi5ibGstdjJmMzkgLmxlYWQtY2Fyb3VzZWx7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtvdmVyZmxvdzpoaWRkZW47fQouYmxrLXYyZjM5IC5sZWFkLWNhcm91c2VsLXNsaWRle3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAxLjVzIGVhc2U7fQouYmxrLXYyZjM5IC5sZWFkLWNhcm91c2VsLXNsaWRlLmlzLWFjdGl2ZXtvcGFjaXR5OjE7ei1pbmRleDoxO30KLmJsay12MmYzOSAubGVhZC1jYXJvdXNlbC1zbGlkZSBpbWd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtvYmplY3QtZml0OmNvdmVyO30KLmJsay12MmYzOSAubGVhZC1jYXJvdXNlbC1zbGlkZTpudGgtY2hpbGQob2RkKSBpbWd7YW5pbWF0aW9uOmJsay12MmYzOS1rZW5idXJucy1hIDZzIGVhc2UtaW4tb3V0IGZvcndhcmRzO30KLmJsay12MmYzOSAubGVhZC1jYXJvdXNlbC1zbGlkZTpudGgtY2hpbGQoZXZlbikgaW1ne2FuaW1hdGlvbjpibGstdjJmMzkta2VuYnVybnMtYiA2cyBlYXNlLWluLW91dCBmb3J3YXJkczt9CkBrZXlmcmFtZXMgYmxrLXYyZjM5LWtlbmJ1cm5zLWF7IGZyb217dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZSgwLDApO30gdG97dHJhbnNmb3JtOnNjYWxlKDEuMTUpIHRyYW5zbGF0ZSgtNCUsLTMlKTt9IH0KQGtleWZyYW1lcyBibGstdjJmMzkta2VuYnVybnMtYnsgZnJvbXt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlKDAsMCk7fSB0b3t0cmFuc2Zvcm06c2NhbGUoMS4xNSkgdHJhbnNsYXRlKDQlLDMlKTt9IH0KLyogQ29uIHVuYSD6bmljYSBmb3RvIChzaW4gcm90YWNp824gcG9zaWJsZSkgc2UgYXBsaWNhIHVuIHpvb20gaW4vb3V0IGVuCiAgIGJ1Y2xlIGluZmluaXRvIGVuIHZleiBkZWwgcmVjb3JyaWRvIPpuaWNvIChmb3J3YXJkcykgZGUgYXJyaWJhLiAqLwouYmxrLXYyZjM5IC5sZWFkLWNhcm91c2VsLmlzLXNpbmdsZSAubGVhZC1jYXJvdXNlbC1zbGlkZSBpbWd7YW5pbWF0aW9uOmJsay12MmYzOS1rZW5idXJucy1sb29wIDE0cyBlYXNlLWluLW91dCBpbmZpbml0ZTt9CkBrZXlmcmFtZXMgYmxrLXYyZjM5LWtlbmJ1cm5zLWxvb3B7IDAle3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGUoMCwwKTt9IDUwJXt0cmFuc2Zvcm06c2NhbGUoMS4xNSkgdHJhbnNsYXRlKC00JSwtMyUpO30gMTAwJXt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlKDAsMCk7fSB9Ci8qIENvbXBhcmFkb3IgYW50ZXMvZGVzcHXpcyAoZGVzbGl6YWRvcikgJiM4MjEyOyB2ZXIgZWwgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4KICAgZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay12MmYzOSAubGVhZC1jb21wYXJle3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7b3ZlcmZsb3c6aGlkZGVuO2lzb2xhdGlvbjppc29sYXRlO3RvdWNoLWFjdGlvbjpub25lO3otaW5kZXg6Mjt9Ci5ibGstdjJmMzkgLmxlYWQtY29tcGFyZSBpbWd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtvYmplY3QtZml0OmNvdmVyO29iamVjdC1wb3NpdGlvbjpjZW50ZXI7ZGlzcGxheTpibG9jazt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1kcmFnOm5vbmU7cG9pbnRlci1ldmVudHM6bm9uZTt9Ci5ibGstdjJmMzkgLmxlYWQtY29tcGFyZS1iZWZvcmV7Y2xpcC1wYXRoOmluc2V0KDAgNTAlIDAgMCk7d2lsbC1jaGFuZ2U6Y2xpcC1wYXRoO30KLmJsay12MmYzOSAubGVhZC1jb21wYXJlLXJhbmdle3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7bWFyZ2luOjA7b3BhY2l0eTowO2N1cnNvcjpldy1yZXNpemU7fQouYmxrLXYyZjM5IC5sZWFkLWNvbXBhcmUtaGFuZGxle3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6NTAlO2lubGluZS1zaXplOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7cG9pbnRlci1ldmVudHM6bm9uZTt6LWluZGV4OjI7fQouYmxrLXYyZjM5IC5sZWFkLWNvbXBhcmUtaGFuZGxlOjpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7aW5saW5lLXNpemU6MnB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuOSk7Ym94LXNoYWRvdzowIDAgMCAxcHggcmdiYSgwLDAsMCwuMjUpO30KLmJsay12MmYzOSAubGVhZC1jb21wYXJlLWhhbmRsZTo6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6LTE1cHg7aW5saW5lLXNpemU6MzBweDtibG9jay1zaXplOjMwcHg7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojZmZmIHVybCgiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScyMCcgaGVpZ2h0PScyMCcgdmlld0JveD0nMCAwIDIwIDIwJz48ZyBmaWxsPSdub25lJyBzdHJva2U9JyUyMzAwMCcgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnPjxwYXRoIGQ9J004IDYgTDQgMTAgTDggMTQnLz48cGF0aCBkPSdNMTIgNiBMMTYgMTAgTDEyIDE0Jy8+PC9nPjwvc3ZnPiIpIGNlbnRlci8xNnB4IDE2cHggbm8tcmVwZWF0O2JveC1zaGFkb3c6MCAycHggNnB4IHJnYmEoMCwwLDAsLjI1KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjI1KTt9Ci8qIE1lZGlhIG1lZGlhbnRlIGlmcmFtZSAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiBNaXNtbyB6LWluZGV4OjIgcXVlCiAgIC5sZWFkLWNvbXBhcmUsIHBvciBlbCBtaXNtbyBtb3Rpdm8gKGdhbmFybGUgYSAubGVhZC1saW5rKS4gKi8KLmJsay12MmYzOSAubGVhZC1pZnJhbWV7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtvdmVyZmxvdzpoaWRkZW47aXNvbGF0aW9uOmlzb2xhdGU7ei1pbmRleDoyO30KLmJsay12MmYzOSAubGVhZC1pZnJhbWUgaWZyYW1le3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7Ym9yZGVyOjA7ZGlzcGxheTpibG9jazt9Ci5ibGstdjJmMzkgLmxlYWQtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3otaW5kZXg6MTtwb2ludGVyLWV2ZW50czpub25lO30KLmJsay12MmYzOSAubGVhZC1ib2R5e3BhZGRpbmc6MHB4IDIwcHggMjBweCAyMHB4OztkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4OyB0ZXh0LWFsaWduOmNlbnRlcjsgYWxpZ24taXRlbXM6Y2VudGVyOyBwb3NpdGlvbjpyZWxhdGl2ZTsgei1pbmRleDo2OyBwb2ludGVyLWV2ZW50czpub25lOyBpbmxpbmUtc2l6ZTo5NSU7IG1hcmdpbi1sZWZ0OmF1dG87IG1hcmdpbi1yaWdodDphdXRvOyBtYXJnaW4tdG9wOi0zMHB4OyBiYWNrZ3JvdW5kOiMwRTExMUE7IGZsZXg6MSAxIGF1dG87fQovKiBBcGFyaWVuY2lhIG5lZ2F0aXZhIChwb3IgZGVmZWN0bykgdnMuIHBvc2l0aXZhIGRlIGxhIGNhamEgZGUgdGl0dWxhciAmIzgyMTI7IHZlcgogICBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsLiAqLwouYmxrLXYyZjM5IC5sZWFkLmlzLWFwcGVhcmFuY2UtcG9zaXRpdmUgLmxlYWQtYm9keXtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZTdlYmVlO30KLmJsay12MmYzOSAubGVhZC5pcy1hcHBlYXJhbmNlLXBvc2l0aXZlIC5sZWFkLXRpdGxlLAouYmxrLXYyZjM5IC5sZWFkLmlzLWFwcGVhcmFuY2UtcG9zaXRpdmUgLmF1dGhvci1sYWJlbHtjb2xvcjojMEUxMTFBO30KLyogUG9zaWNp824gZGVsIGxlYWQtYm9keSByZXNwZWN0byBhbCBsZWFkLW1lZGlhICgnbGVmdCcvJ3JpZ2h0JykgJiM4MjEyOyB2ZXIgbWlzbW8KICAgYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbC4gKi8KLmJsay12MmYzOSAubGVhZC5sZWFkLWJvZHktbGVmdCwKLmJsay12MmYzOSAubGVhZC5sZWFkLWJvZHktcmlnaHR7ZmxleC1kaXJlY3Rpb246cm93O2FzcGVjdC1yYXRpbzoyLjk2Mjk2Mjk2Mjk2Mjk2Mzt9Ci5ibGstdjJmMzkgLmxlYWQubGVhZC1ib2R5LWxlZnR7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2U7fQouYmxrLXYyZjM5IC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLW1lZGlhLAouYmxrLXYyZjM5IC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1tZWRpYXtmbGV4OjAgMCA2MCU7fQouYmxrLXYyZjM5IC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWJvZHksCi5ibGstdjJmMzkgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLWJvZHl7ZmxleDowIDAgY2FsYyg0MCUgKyAzMHB4KTtpbmxpbmUtc2l6ZTphdXRvO21hcmdpbi10b3A6MDtibG9jay1zaXplOmNhbGMoMTAwJSAtIDYwcHgpO2FsaWduLXNlbGY6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7fQouYmxrLXYyZjM5IC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWJvZHl7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6LTMwcHg7fQouYmxrLXYyZjM5IC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1ib2R5e21hcmdpbi1sZWZ0Oi0zMHB4O21hcmdpbi1yaWdodDowO30KLyogUG9zaWNp824gJ2JvdHRvbS1mdWxsJyBkZWwgbGVhZC1ib2R5ICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuCiAgIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuIGlubGluZS1zaXplCiAgIGVuIHZleiBkZSB3aWR0aCBwb3IgZWwgbWlzbW8gbW90aXZvIHF1ZSBlbCByZXN0byBkZSBlc3RlIGJsb3F1ZSAoZXZpdGFyCiAgIGxhIHBhbGFicmEgIndpZHRoOiIgcXVlIGVsIENNUyBkZWwgdXN1YXJpbyBlbGltaW5hIGFsIHBlZ2FyIEhUTUwvQ1NTCiAgIGRpcmVjdGFtZW50ZSkuICovCi5ibGstdjJmMzkgLmxlYWQubGVhZC1ib2R5LWJvdHRvbS1mdWxsIC5sZWFkLWJvZHl7CiAgaW5saW5lLXNpemU6MTAwJTsKICBtYXJnaW46MDsKICBwYWRkaW5nLXRvcDozMHB4OwogIHBhZGRpbmctYm90dG9tOjMwcHg7CiAgYm9yZGVyOm5vbmU7Cn0KLyogRXRpcXVldGEgZGUgZXhjbHVzaXZhIChvIHRleHRvIHBlcnNvbmFsaXphZG8pICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvCiAgIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstdjJmMzkgLmxlYWQtZXhjbHVzaXZlLXRhZ3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtsZWZ0OjEwcHg7ei1pbmRleDozO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7bGV0dGVyLXNwYWNpbmc6MC41cHg7cGFkZGluZzoycHggOHB4O2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXNpemU6LjhlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6I2ZmZjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7cG9pbnRlci1ldmVudHM6bm9uZTt9Ci8qIFNlbGVjdG9yIGNvbiAzIGNsYXNlcyAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhICgiLmxlYWQtbWVkaWEgaW1nIiB0YW1iaeluCiAgIG1hdGNoZWEgZXN0ZSA8aW1nPiB5IGxlIGdhbmFiYSBlbiBlc3BlY2lmaWNpZGFkKS4gKi8KLmJsay12MmYzOSAubGVhZC1leGNsdXNpdmUtdGFnIC5sZWFkLWV4Y2x1c2l2ZS10YWctaWNvbntwb3NpdGlvbjpzdGF0aWM7aW5zZXQ6YXV0bztpbmxpbmUtc2l6ZToxNHB4O2Jsb2NrLXNpemU6MTRweDtvYmplY3QtZml0OmNvbnRhaW47ZmxleDowIDAgYXV0bztkaXNwbGF5OmJsb2NrO30KLmJsay12MmYzOSAubGVhZC1jYXR7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDtwYWRkaW5nOjJweCA4cHg7dHJhbnNmb3JtOnNrZXdZKC02ZGVnKTttYXJnaW4tdG9wOi0xNXB4O21hcmdpbi1ib3R0b206MTBweDt9Ci5ibGstdjJmMzkgLmxlYWQta2lja2VyLCAuYmxrLXYyZjM5IC5sZWFkLXN1YnRpdGxlewogIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjt0ZXh0LXRyYW5zZm9ybTpub25lO21hcmdpbjowOwp9Ci5ibGstdjJmMzkgLmxlYWQta2lja2Vye2ZvbnQtd2VpZ2h0OjcwMDt9Ci5ibGstdjJmMzkgLmxlYWQtc3VidGl0bGV7Zm9udC13ZWlnaHQ6NjAwO30KLyogVGFtYfFvL2ludGVybGluZWFkby9jb2xvciBkZSBhbnRldO10dWxvIHkgc3VidO10dWxvIGVuIERlc2sgKHZhbG9yZXMgcG9yCiAgIGRlZmVjdG8gZGVsIGJsb3F1ZTsgZWwgb3ZlcnJpZGUgZGUgTfN2aWwgdmEgZW4gZWwgQGNvbnRhaW5lciBkZSBt4XMgYWJham8sCiAgIHlhIHF1ZSBlbCBIVE1MIGV4cG9ydGFkbyBlcyByZXNwb25zaXZlIHkgbm8gZGVwZW5kZSBkZSBxdekgdmlzdGEgdHV2aWVyYXMKICAgc2VsZWNjaW9uYWRhIGVuIGVsIGdlc3RvciBhbCBleHBvcnRhci9jb3BpYXIpLiAqLwouYmxrLXYyZjM5IC5sZWFkLWtpY2tlcntmb250LXNpemU6MS4zMTI1cmVtO2xpbmUtaGVpZ2h0OjEuMTtjb2xvcjojMDBBN0ZGO30KLmJsay12MmYzOSAubGVhZC1zdWJ0aXRsZXtmb250LXNpemU6MS4zMTI1cmVtO2xpbmUtaGVpZ2h0OjEuMTtjb2xvcjojMDBBN0ZGO30KLyogdGV4dC13cmFwOmJhbGFuY2UgJiM4MjEyOyBtaXNtbyBjcml0ZXJpbyBxdWUgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbAogICBkZWwgZ2VzdG9yICh2ZXIgY29tZW50YXJpbyBkZXRhbGxhZG8ganVudG8gYSBlc2EgcmVnbGEpOiByZXBhcnRlIGxhcwogICBs7W5lYXMgZGVsIHRpdHVsYXIgZGUgZm9ybWEgbeFzIHVuaWZvcm1lIGRlbnRybyBkZSBjYWRhIGRpc3Bvc2l0aXZvLCBzaW4KICAgcHJldGVuZGVyIGlndWFsYXIgZWwgbvptZXJvIGRlIGztbmVhcyBlbnRyZSBwbGF0YWZvcm1hcyBkaXN0aW50YXMuICovCi5ibGstdjJmMzkgLmxlYWQtdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDtmb250LXNpemU6Mi40cmVtO2xpbmUtaGVpZ2h0OjEuMDI7bWFyZ2luOjA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTt0ZXh0LXdyYXA6YmFsYW5jZTt9Ci8qIFRpdHVsYXIgY29uIHNhbHRvcyBkZSBs7W5lYSBpbmRlcGVuZGllbnRlcyBwb3IgdmlzdGEgKHZlciBidWlsZFNjb3BlZEhUTUwpOgogICBzZSBnZW5lcmFuIGxvcyBkb3MgdGV4dG9zIChEZXNrL03zdmlsKSB5IGFxde0gc2UgbXVlc3RyYSBzb2xvIHVubyBzZWf6biBlbAogICBhbmNobyByZWFsIGRlbCBjb250ZW5lZG9yICYjODIxMjsgZWwgbWlzbW8gbWVjYW5pc21vIGRlIEBjb250YWluZXIgcXVlIHlhIHVzYSBlbAogICByZXN0byBkZWwgSFRNTCBleHBvcnRhZG8gcGFyYSBhZGFwdGFyc2Ugc2luIGRlcGVuZGVyIGRlIEpTLiAqLwouYmxrLXYyZjM5IC5sZWFkLXRpdGxlLW1vYmlsZXtkaXNwbGF5Om5vbmU7fQovKiBBbnRldO10dWxvL3N1YnTtdHVsbyBjb24gc2FsdG9zIGRlIGztbmVhIGluZGVwZW5kaWVudGVzIHBvciB2aXN0YTogbWlzbW8KICAgbWVjYW5pc21vIGRlIEBjb250YWluZXIgcXVlIGVsIHRpdHVsYXIgKHZlciBhcnJpYmEpLiAqLwouYmxrLXYyZjM5IC5sZWFkLWtpY2tlci1tb2JpbGUsIC5ibGstdjJmMzkgLmxlYWQtc3VidGl0bGUtbW9iaWxle2Rpc3BsYXk6bm9uZTt9Ci8qIFRpdHVsYXIgZGUgbm90aWNpYSByZWxhY2lvbmFkYSAoY29sdW1uYSkgY29uIHRleHRvIHByb3BpbyBlbiBN83ZpbCAodmVyCiAgIGl0ZW0udGl0bGVNb2JpbGUgZW4gYnVpbGRDb2x1bW5JdGVtVGl0bGVIVE1MKTogbWlzbW8gbWVjYW5pc21vIGRlCiAgIEBjb250YWluZXIgcXVlIGVsIHRpdHVsYXIgcHJpbmNpcGFsIGRlIGFycmliYS4gKi8KLmJsay12MmYzOSAucmVsYXRlZC10aXRsZS1tb2JpbGV7ZGlzcGxheTpub25lO30KLmJsay12MmYzOSAuYXV0aG9yLWxhYmVse2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjIwMDtmb250LXNpemU6LjhlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dGV4dC1hbGlnbjpyaWdodDtkaXNwbGF5OmJsb2NrfQouYmxrLXYyZjM5IC5jb2x1bW57ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweDtqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47fQouYmxrLXYyZjM5IC5jb2x1bW4taXRlbXtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlcjoxcHggc29saWQgI2U3ZWJlZTtwYWRkaW5nOjEwcHg7YmFja2dyb3VuZDojZmZmO2Jsb2NrLXNpemU6c3RyZXRjaDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2U7fQouYmxrLXYyZjM5IC50aHVtYntwb3NpdGlvbjpyZWxhdGl2ZTtpbmxpbmUtc2l6ZToxMDAlO2FzcGVjdC1yYXRpbzo0LzM7YmFja2dyb3VuZDojZWVlO292ZXJmbG93OmhpZGRlbn0KLmJsay12MmYzOSAudGh1bWIgaW1nLAouYmxrLXYyZjM5IC50aHVtYiB2aWRlb3twb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2lubGluZS1zaXplOjEwMCU7YmxvY2stc2l6ZToxMDAlO29iamVjdC1maXQ6Y292ZXJ9Ci5ibGstdjJmMzkgLnRodW1iIC5wbGF5LXNxdWFyZSwKLmJsay12MmYzOSAubWVkaWEtYmxvY2std3JhcCAucGxheS1zcXVhcmV7CiAgcG9zaXRpb246YWJzb2x1dGU7IGJvdHRvbTo1cHg7IGxlZnQ6NXB4OwogIGlubGluZS1zaXplOjI1cHg7YmxvY2stc2l6ZToyNXB4O2JvcmRlci1yYWRpdXM6MnB4O2Rpc3BsYXk6aW5saW5lLWdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyOwogIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjYpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjE4KTsKICBjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cywgdHJhbnNmb3JtIC4xMnM7CiAgei1pbmRleDoyOyBhbmltYXRpb246YmxrLXYyZjM5LWJsaW5rIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlOwp9Ci5ibGstdjJmMzkgLnRodW1iIC5wbGF5LXNxdWFyZTo6YmVmb3JlLAouYmxrLXYyZjM5IC5tZWRpYS1ibG9jay13cmFwIC5wbGF5LXNxdWFyZTo6YmVmb3JlewogIGNvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztpbmxpbmUtc2l6ZTowO2Jsb2NrLXNpemU6MDsKICBib3JkZXItbGVmdDo2cHggc29saWQgI2ZmZjtib3JkZXItdG9wOjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjVweCBzb2xpZCB0cmFuc3BhcmVudDsKICBtYXJnaW4tbGVmdDoycHg7Cn0KLmJsay12MmYzOSAudGh1bWIgLnBsYXktc3F1YXJlOmhvdmVyLAouYmxrLXYyZjM5IC5tZWRpYS1ibG9jay13cmFwIC5wbGF5LXNxdWFyZTpob3ZlcnsgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuODUpOyB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTsgfQouYmxrLXYyZjM5IC5zdGFjay10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToxN3B4O2xpbmUtaGVpZ2h0OjEuMTVlbTttYXJnaW46MDtjb2xvcjojMmMzZTUzO30KLmJsay12MmYzOSAuc3RhY2stYXV0aG9ye2ZvbnQtZmFtaWx5OiJhbXBsaXR1ZGUtYm9vayIsc2Fucy1zZXJpZjtjb2xvcjojODI4NTk1O2ZvbnQtd2VpZ2h0OjIwMDtmb250LXNpemU6LjhyZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDoxMXB4O2xldHRlci1zcGFjaW5nOjA7dGV4dC1hbGlnbjpyaWdodDt9Ci8qIFNpbiBlc3RhIHJlZ2xhIGVsIGF1dG9yIHF1ZWRhIHBlZ2FkbyBqdXN0byBkZWJham8gZGVsIHRpdHVsYXIgZW4gdmV6IGRlCiAgIGFiYWpvIGRlIGxhIHRhcmpldGE6IC5tb2Qtc3RhY2sgbmVjZXNpdGEgc2VyIGZsZXgtY29sdW1uIGNvbgogICBqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbiBwYXJhIHF1ZSBlbCBodWVjbyBzb2JyYW50ZSAoY3VhbmRvIGxhCiAgIHRhcmpldGEgY3JlY2UgbeFzIHF1ZSBzdSBjb250ZW5pZG8sIHZlciAuY29sdW1uLWl0ZW06bm90KC5sYXlvdXQtbWVkaWEtYmxvY2spCiAgIG3hcyBhYmFqbykgZW1wdWplIGVsIGF1dG9yIGhhY2lhIGVsIGJvcmRlIGluZmVyaW9yLiAqLwouYmxrLXYyZjM5IC5tb2Qtc3RhY2t7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtmbGV4OjEgMSBhdXRvO30KLyogRXN0aWxvICJmb3RvIHBlcXVl8WEgKyB0aXR1bGFyIjogZm90byA0OjMgYSBsYSBpenF1aWVyZGEsIHRleHRvIGEgbGEgZGVyZWNoYS4gKi8KLmJsay12MmYzOSAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLWxlZnR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxMTBweCAxZnI7Z2FwOjEwcHg7fQovKiBFc3RpbG8gInNvbG8gdGV4dG8iIChwb3IgZGVmZWN0byk6IGVsIGF1dG9yIHNlIHBvc2ljaW9uYSBlbiBhYnNvbHV0bywKICAgYW5jbGFkbyBhIGxhIGVzcXVpbmEgaW5mZXJpb3IgZGVyZWNoYSBkZSBsYSB0YXJqZXRhIChpZ3VhbCBxdWUgZWwgcGxheSBkZQogICBsYXMgbWluaWF0dXJhcyksIGVuIHZleiBkZSBkZXBlbmRlciBkZSBxdWUgZWwgYmxvcXVlIGRlIHRleHRvIHRlbmdhIGh1ZWNvCiAgIGRlIHNvYnJhIHBhcmEgZW1wdWphcmxvIGFiYWpvIGNvbiBmbGV4Ym94ICYjODIxMjsgY29uIHTtdHVsb3MgZGUgMi0zIGztbmVhcyBlc2UKICAgaHVlY28gbm8gZXhpc3RlIHkgZWwgYXV0b3IgbnVuY2EgbGxlZ2FiYSBhIGJhamFyLiBwYWRkaW5nLWJvdHRvbSBlbgogICBsZWZ0LWJvZHkgcmVzZXJ2YSBlbCBlc3BhY2lvIHBhcmEgcXVlIGVsIHTtdHVsbyBubyBzZSBzb2xhcGUgY29uIOlsLiAqLwouYmxrLXYyZjM5IC5jb2x1bW4taXRlbS5sYXlvdXQtdGl0bGUtb25seSAubGVmdC1ib2R5e3BhZGRpbmctYm90dG9tOjMzcHg7fQouYmxrLXYyZjM5IC5jb2x1bW4taXRlbS5sYXlvdXQtdGl0bGUtb25seSAuc3RhY2stYXV0aG9ye3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjEwcHg7Ym90dG9tOjEwcHg7bWFyZ2luLXRvcDowO30KLmJsay12MmYzOSAubGVmdC10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToyMXB4O2xpbmUtaGVpZ2h0OjEuMTU7Y29sb3I6IzJjM2U1MzttYXJnaW46MDt0ZXh0LWFsaWduOmxlZnQ7fQouYmxrLXYyZjM5IC5sZWZ0LXBsYXl7CiAgZmxleDowIDAgYXV0bztpbmxpbmUtc2l6ZToxNXB4O2Jsb2NrLXNpemU6MTVweDtib3JkZXItcmFkaXVzOjJweDsKICBiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjMDBhN2ZmOwogIGRpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzowOwogIHZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1ib3R0b206IDRweDsKfQouYmxrLXYyZjM5IC5sZWZ0LXBsYXk6OmJlZm9yZXsKICBjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aW5saW5lLXNpemU6MDtibG9jay1zaXplOjA7CiAgYm9yZGVyLWxlZnQ6NHB4IHNvbGlkICMwMGE3ZmY7Ym9yZGVyLXRvcDozcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbTozcHggc29saWQgdHJhbnNwYXJlbnQ7bWFyZ2luLWxlZnQ6MXB4Owp9Ci5ibGstdjJmMzkgLnJlbGF0ZWQtbGl2ZS10YWd7CiAgZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7ZmxleDowIDAgYXV0bzsKICBmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwOwogIGZvbnQtc2l6ZTouN3JlbTtsaW5lLWhlaWdodDowLjg7bGV0dGVyLXNwYWNpbmc6LjNweDtjb2xvcjojRkY1MDUwOwogIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjRkY1MDUwOwogIHBhZGRpbmc6M3B4IDRweCAycHggNHB4O21hcmdpbi1yaWdodDo2cHg7bWFyZ2luLWJvdHRvbTo0cHg7dmVydGljYWwtYWxpZ246bWlkZGxlOwogIHdoaXRlLXNwYWNlOm5vd3JhcDsKfQouYmxrLXYyZjM5IC5yZWxhdGVkLWVkaXRvcmlhbC10YWd7CiAgZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7ZmxleDowIDAgYXV0bzsKICBmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6NjAwOwogIGZvbnQtc2l6ZTouN3JlbTtsaW5lLWhlaWdodDowLjg7bGV0dGVyLXNwYWNpbmc6LjNweDtjb2xvcjojRkFCMTIxOwogIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjRkFCMTIxOwogIHBhZGRpbmc6M3B4IDRweCAycHggNHB4O21hcmdpbi1yaWdodDo2cHg7bWFyZ2luLWJvdHRvbTo0cHg7dmVydGljYWwtYWxpZ246bWlkZGxlOwogIHdoaXRlLXNwYWNlOm5vd3JhcDsKfQouYmxrLXYyZjM5IC5wbGF5LWJ1dHRvbnsKICAvKiBBbmNoby9hbHRvIGZpam9zIGVuIHZleiBkZSBhc3BlY3QtcmF0aW86MS8xICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvCiAgICAgZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YSAoZWwKICAgICBj4WxjdWxvIGRlICJzaHJpbmstdG8tZml0IiBwYXJhIHVuIDxidXR0b24+IGVuIGFic29sdXRvIHNpbiB0YW1h8W8KICAgICBleHBs7WNpdG8gbm8gZXMgZmlhYmxlIGVudHJlIG1vdG9yZXM7IGVuIFdlYktpdC9pT1MgZGFiYSB1biByZWN04W5ndWxvCiAgICAgdmVydGljYWwgZXN0cmVjaO1zaW1vIGVuIHZleiBkZSB1biBjdWFkcmFkbykuICovCiAgYXBwZWFyYW5jZTpub25lOy13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lOwogIHBvc2l0aW9uOmFic29sdXRlO3RvcDoxMHB4O2xlZnQ6MTBweDsKICBpbmxpbmUtc2l6ZTozNHB4O2Jsb2NrLXNpemU6MzRweDsKICBkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzoxMHB4IDEwcHggMTBweCAxMnB4OwogIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNyk7CiAgYm9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC40Mik7Y29sb3I6I2ZmZjtib3JkZXItcmFkaXVzOjNweDsKICBjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjI7YW5pbWF0aW9uOmJsay12MmYzOS1ibGluayAycyBlYXNlLWluLW91dCBpbmZpbml0ZTsKfQouYmxrLXYyZjM5IC5wbGF5LWJ1dHRvbiAucGxheS1pY29uewogIGlubGluZS1zaXplOjA7YmxvY2stc2l6ZTowOwogIGJvcmRlci1sZWZ0OjEwcHggc29saWQgI2ZmZjtib3JkZXItdG9wOjZweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjZweCBzb2xpZCB0cmFuc3BhcmVudDsKfQouYmxrLXYyZjM5IC5wbGF5LWJ1dHRvbiAucGxheS10ZXh0e2Rpc3BsYXk6bm9uZTt9Ci8qIEVuIGVsIG1vZG8gJ2xlZnQnIGVsIFBsYXkgcGFzYSBhIGxhIGVzcXVpbmEgc3VwZXJpb3IgZGVyZWNoYSAmIzgyMTI7IHZlciBtaXNtbwogICBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsLiAqLwouYmxrLXYyZjM5IC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5wbGF5LWJ1dHRvbntsZWZ0OmF1dG87cmlnaHQ6MTBweDt9CgovKiBUaXR1bGFyZXMgYW5pbWFkb3MgKGNhcGEgYWx0ZXJuYXRpdmEgc29icmUgbGVhZC1tZWRpYSkgJiM4MjEyOyB2ZXIgbWlzbW8KICAgYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYQogICBoZXJyYW1pZW50YS4gQ2FkYSB0aXR1bGFyIHRpZW5lIHN1IHByb3BpYSBwb3NpY2nzbiAoY2xhc2UgcG9zLSosIHZlcgogICBidWlsZFNjb3BlZEhUTUwpIHkgc2UgcmV2ZWxhIGztbmVhIHBvciBs7W5lYSAodW5hIHZleiBtZWRpZGFzIHN1cyBs7W5lYXMKICAgcmVhbGVzIHBvciBlbCBzY3JpcHQgc3RhbmRhbG9uZSwgdmVyIGJ1aWxkQW5pbUhlYWRsaW5lc1NjcmlwdCkgY29uIHVuYQogICBjYWphIGRlIGZvbmRvIGRldHLhcyBkZSBjYWRhIGztbmVhIHkgdW4gZmFkZSBkZSBvcGFjaWRhZCBlbnRyZSB0aXR1bGFyZXMuICovCi5ibGstdjJmMzkgLmxlYWQtYW5pbS1oZWFkbGluZXN7CiAgcG9zaXRpb246YWJzb2x1dGU7CiAgaW5zZXQ6MDsKICB6LWluZGV4OjQ7CiAgcG9pbnRlci1ldmVudHM6bm9uZTsKfQouYmxrLXYyZjM5IC5sZWFkLWFuaW0taGVhZGxpbmV7CiAgcG9zaXRpb246YWJzb2x1dGU7CiAgbGVmdDoxNXB4OwogIG9wYWNpdHk6MDsKfQouYmxrLXYyZjM5IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1sZWZ0eyBib3R0b206NjBweDsgfQouYmxrLXYyZjM5IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLXRvcC1sZWZ0eyB0b3A6NjBweDsgfQouYmxrLXYyZjM5IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1sZWZ0eyB0b3A6NTAlOyB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsgfQouYmxrLXYyZjM5IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLXRvcC1yaWdodCwKLmJsay12MmYzOSAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1taWRkbGUtcmlnaHQsCi5ibGstdjJmMzkgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtYm90dG9tLXJpZ2h0eyBsZWZ0OmF1dG87IHJpZ2h0OjE1cHg7IH0KLmJsay12MmYzOSAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtcmlnaHR7IHRvcDo2MHB4OyB9Ci5ibGstdjJmMzkgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtbWlkZGxlLXJpZ2h0eyB0b3A6NTAlOyB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsgfQouYmxrLXYyZjM5IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1yaWdodHsgYm90dG9tOjYwcHg7IH0KLyogQ29uIGVsIHRleHRvIChsZWFkLWJvZHkpIGEgbGEgaXpxdWllcmRhIG8gbGEgZGVyZWNoYSwgZXNlIGJsb3F1ZSBzb2xhcGEKICAgMzBweCBkZWwgbGFkbyBkZSBsYSBmb3RvL3btZGVvIHBlZ2FkbyBhIOlsICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvCiAgIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstdjJmMzkgLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtdG9wLWxlZnQsCi5ibGstdjJmMzkgLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtbWlkZGxlLWxlZnQsCi5ibGstdjJmMzkgLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtYm90dG9tLWxlZnR7IGxlZnQ6NDBweDsgfQouYmxrLXYyZjM5IC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtcmlnaHQsCi5ibGstdjJmMzkgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1yaWdodCwKLmJsay12MmYzOSAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtYm90dG9tLXJpZ2h0eyByaWdodDo0MHB4OyB9Ci5ibGstdjJmMzkgLmxlYWQtYW5pbS1oZWFkbGluZS5pcy1hY3RpdmV7IG9wYWNpdHk6MTsgfQouYmxrLXYyZjM5IC5sZWFkLWFuaW0tbGluZXsKICBwb3NpdGlvbjpyZWxhdGl2ZTsKICBkaXNwbGF5OnRhYmxlOwogIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjsKICBmb250LXdlaWdodDo5MDA7CiAgY29sb3I6I2ZmZjsKICBwYWRkaW5nOjJweCA4cHg7CiAgY2xpcC1wYXRoOmluc2V0KDAgMTAwJSAwIDApOwogIG9wYWNpdHk6MTsKICB0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBlYXNlOwp9Ci5ibGstdjJmMzkgLmxlYWQtYW5pbS1saW5lLmlzLWhpZGluZ3sgb3BhY2l0eTowOyB9Ci8qIFNvbGFwZSBkZSAxcHggZW50ZXJhIGVudHJlIGztbmVhcyBwYXJhIGNlcnJhciBlbCBoaWxvIGRlIHN1Yi1w7XhlbCBxdWUKICAgcHVlZGUgcXVlZGFyIGVudHJlIHN1cyBjYWphcyBkZSBmb25kbyAocmVkb25kZW8gZGUgYWx0dXJhcyBmcmFjY2lvbmFyaWFzKSAmIzgyMTI7CiAgIHZlciBtaXNtbyBjb21lbnRhcmlvLCBkZXRhbGxhZG8sIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwuICovCi5ibGstdjJmMzkgLmxlYWQtYW5pbS1saW5lICsgLmxlYWQtYW5pbS1saW5lewogIG1hcmdpbi10b3A6LTFweDsKfQouYmxrLXYyZjM5IC5sZWFkLWFuaW0tbGluZTpmaXJzdC1jaGlsZHsgcGFkZGluZy10b3A6NnB4OyB9Ci5ibGstdjJmMzkgLmxlYWQtYW5pbS1saW5lOmxhc3QtY2hpbGR7IHBhZGRpbmctYm90dG9tOjZweDsgfQouYmxrLXYyZjM5IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLXRvcC1yaWdodCAubGVhZC1hbmltLWxpbmUsCi5ibGstdjJmMzkgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtbWlkZGxlLXJpZ2h0IC5sZWFkLWFuaW0tbGluZSwKLmJsay12MmYzOSAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1ib3R0b20tcmlnaHQgLmxlYWQtYW5pbS1saW5leyBtYXJnaW4tbGVmdDphdXRvOyBtYXJnaW4tcmlnaHQ6MDsgfQouYmxrLXYyZjM5IC5sZWFkLWFuaW0taGVhZGxpbmVzLmlzLXBvc2l0aXZlIC5sZWFkLWFuaW0tbGluZXsgY29sb3I6IzBFMTExQTsgfQouYmxrLXYyZjM5IC5sZWFkLWFuaW0tbGluZS1iZ3sgcG9zaXRpb246YWJzb2x1dGU7IGluc2V0OjA7IHotaW5kZXg6LTE7IH0KLmJsay12MmYzOSAubGVhZC1hbmltLWxpbmUtdGV4dHsgcG9zaXRpb246cmVsYXRpdmU7IH0KQGtleWZyYW1lcyBibGstdjJmMzktYW5pbS1saW5lLXJldmVhbHsgdG97IGNsaXAtcGF0aDppbnNldCgwIDAgMCAwKTsgfSB9CgovKiBBbmNob3Igb3ZlcmxheSBmb3IgZnVsbCBjbGlja2FibGUgbGVhZCAqLwouYmxrLXYyZjM5IC5sZWFkLWxpbmt7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt6LWluZGV4OjF9CgovKiBIb3ZlciBvcGFjaXR5IGFuaW1hdGlvbiAqLwouYmxrLXYyZjM5IC5sZWFkOmhvdmVyIC5sZWFkLXRpdGxlLAouYmxrLXYyZjM5IC5jb2x1bW4taXRlbTpob3ZlcntvcGFjaXR5Oi44fQovKiBGb3RvIHByaW5jaXBhbCAoZmFsbGJhY2svc2luZ2xlKSBvIGNhcnJ1c2VsIGRlIGZvdG9zOiBvcGFjaWRhZCAwLjkgYWwKICAgcGFzYXIgZWwgcmF0824gcG9yIGxhIHRhcmpldGEgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4KICAgbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gTm8gYXBsaWNhIGEgdu1kZW8gbmkgYWwKICAgY29tcGFyYWRvciBhbnRlcy9kZXNwdelzLiAqLwouYmxrLXYyZjM5IC5sZWFkLW1lZGlhID4gaW1nLAouYmxrLXYyZjM5IC5sZWFkLW1lZGlhID4gLmxlYWQtY2Fyb3VzZWx7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlO30KLmJsay12MmYzOSAubGVhZDpob3ZlciAubGVhZC1tZWRpYSA+IGltZywKLmJsay12MmYzOSAubGVhZDpob3ZlciAubGVhZC1tZWRpYSA+IC5sZWFkLWNhcm91c2Vse29wYWNpdHk6Ljk7fQovKiBFbiBlbCBhbmNobyBt83ZpbCAobWlzbW8gQGNvbnRhaW5lciBxdWUgZWwgcmVzdG8gZGVsIEhUTUwgZXhwb3J0YWRvKSBubwogICBhcGxpY2EgZXN0YSBhbmltYWNp824gZGUgb3BhY2lkYWQgc29icmUgbGEgbm90aWNpYSBwcmluY2lwYWw6IHZhIERFU1BVyVMKICAgZGUgbGEgcmVnbGEgZ2VuZXJhbCBkZSBhcnJpYmEgKG1pc21hIGVzcGVjaWZpY2lkYWQpIHBhcmEgcG9kZXIgZ2FuYXJsZS4KICAgT21pdGlkbywgaWd1YWwgcXVlIGVsIGJsb3F1ZSBkZSB0aXBvZ3JhZu1hIGRlIGFycmliYSwgbWllbnRyYXMgbGEKICAgc2ltdWxhY2nzbiBkZSBhbmNobyBlc3TpIGFjdGl2YSAodmVyIGxlYWRXaWR0aFByZXZpZXcpLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6ODYwcHgpewogIC5ibGstdjJmMzkgLmxlYWQ6aG92ZXIgLmxlYWQtdGl0bGUsCiAgLmJsay12MmYzOSAubGVhZDpob3ZlciAubGVhZC1tZWRpYSA+IGltZywKICAuYmxrLXYyZjM5IC5sZWFkOmhvdmVyIC5sZWFkLW1lZGlhID4gLmxlYWQtY2Fyb3VzZWx7b3BhY2l0eToxO30KfQoKLyogQW5pbWFjafNuIGNvbXBhcnRpZGEgcGxheSBwcmluY2lwYWwgKyBjdWFkcmFkb3MgcGxheSBhcGlsYWRhcyAqLwpAa2V5ZnJhbWVzIGJsay12MmYzOS1ibGlua3sKICAwJSwxMDAle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjcpfQogIDUwJXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwxNjUsMjU1LDAuOSl9Cn0KLyogQ2FiZWNlcmEgKi8KLmJsay12MmYzOSAuYmctc2VjdGlvbi10aXRsZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbjoxMHB4IDAgMzJweH0KLmJsay12MmYzOSAuZm5kLWxpbmVhe2lubGluZS1zaXplOjEwMCU7YmxvY2stc2l6ZTo1cHg7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTttYXJnaW4tdG9wOi0xOHB4O2JvcmRlci10b3A6MXB4IHNvbGlkICMzMzM7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzMzM30KLmJsay12MmYzOSAuc2VjdGlvbi10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6OTAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW46MDtsaW5lLWhlaWdodDoxLjI7bGV0dGVyLXNwYWNpbmc6LTFweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7YmFja2dyb3VuZDojZmZmO3BhZGRpbmc6NHB4IDEzcHg7Ym9yZGVyOjFweCBzb2xpZCAjMEUxMTFBO3RyYW5zZm9ybTpyb3RhdGVYKDVkZWcpIHJvdGF0ZVkoLTI1ZGVnKSBza2V3WCgwZGVnKTtmb250LXNpemU6NDJweDtjb2xvcjojMEUxMTFBO30KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjg2MHB4KXsuYmxrLXYyZjM5IC5zZWN0aW9uLXRpdGxle2ZvbnQtc2l6ZToyN3B4O3BhZGRpbmc6MCAxMHB4fX0KLyogQ2FiZWNlcmEgJiM4MjEyOyBEaXNl8W8gMiAodGl0dWxhciArIGNhcnJ1c2VsIGRlIGxvZ290aXBvcykgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLAogICBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay12MmYzOSAuaGVhZGVyMntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoyMHB4O3BhZGRpbmctYm90dG9tOjVweDttYXJnaW4tYm90dG9tOjEwcHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzBFMTExQTt9Ci8qIGFsaWduLXNlbGY6ZmxleC1lbmQgZmlqYSBlbCB0aXR1bGFyIFNJRU1QUkUgYSAxNXB4IGRlIGxhIGztbmVhIHNlcGFyYWRvcmEKICAgZW4gRGVzayAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MKICAgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLXYyZjM5IC5oZWFkZXIyLWxlZnR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtmbGV4OjEgMSA1MCU7bWluLWlubGluZS1zaXplOjA7YWxpZ24tc2VsZjpmbGV4LWVuZDt9Ci5ibGstdjJmMzkgLmhlYWRlcjItdGFnc3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7ZmxleDowIDAgYXV0bzt9Ci8qIE1pc21vIHRhbWHxby90aXBvZ3JhZu1hIHF1ZSAubGVhZC1leGNsdXNpdmUtdGFnIChsYSBkZSBsYSBub3RpY2lhCiAgIHByaW5jaXBhbCkgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZQogICBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay12MmYzOSAuaGVhZGVyMi1jYXQtdGFnLAouYmxrLXYyZjM5IC5oZWFkZXIyLWV4Y2x1c2l2ZS10YWd7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjcwMDtmb250LXNpemU6LjhlbTtsZXR0ZXItc3BhY2luZzouNXB4O3BhZGRpbmc6MnB4IDhweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7d2hpdGUtc3BhY2U6bm93cmFwO2NvbG9yOiNmZmY7fQouYmxrLXYyZjM5IC5oZWFkZXIyLWV4Y2x1c2l2ZS10YWctaWNvbntwb3NpdGlvbjpzdGF0aWM7aW5zZXQ6YXV0bztpbmxpbmUtc2l6ZToxNHB4O2Jsb2NrLXNpemU6MTRweDtvYmplY3QtZml0OmNvbnRhaW47ZmxleDowIDAgYXV0bztkaXNwbGF5OmJsb2NrO30KLmJsay12MmYzOSAuaGVhZGVyMi10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6OTAwO2ZvbnQtc2l6ZTozNnB4O2xpbmUtaGVpZ2h0OjEuMDU7Y29sb3I6IzBFMTExQTttYXJnaW46MDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bWluLWlubGluZS1zaXplOjA7b3ZlcmZsb3ctd3JhcDpicmVhay13b3JkO30KLyogU2VwYXJhY2nzbiBkZSAxMHB4IGVudHJlIGVsIHRleHRvIGRlIHBhdHJvY2luaW8geSBlbCBsb2dvIGVuIERlc2sgJiM4MjEyOyBlbgogICBN83ZpbCBzaWd1ZSBzaW4gc2VwYXJhY2nzbiAoZ2FwOjAsIHZlciBAY29udGFpbmVyIG3hcyBhYmFqbykuICovCi5ibGstdjJmMzkgLmhlYWRlcjItbG9nb3Mtd3JhcHtmbGV4OjAgMCBhdXRvO21heC1pbmxpbmUtc2l6ZTo1MCU7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7fQovKiBFdGlxdWV0YSBvcGNpb25hbCBqdW50byBhbCBjYXJydXNlbCBkZSBsb2dvcyAocC5lai4gIlBhdHJvY2luYWRvIHBvcjoiKSAmIzgyMTI7CiAgIHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsCiAgIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLXYyZjM5IC5oZWFkZXIyLWxvZ29zLWxhYmVse2ZvbnQtZmFtaWx5OkFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMHB4O2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojNjY3O3doaXRlLXNwYWNlOm5vd3JhcDt9Ci5ibGstdjJmMzkgLmhlYWRlcjItbG9nb3N7cG9zaXRpb246cmVsYXRpdmU7aW5saW5lLXNpemU6MTYwcHg7YmxvY2stc2l6ZTo1MHB4O2ZsZXgtc2hyaW5rOjA7fQouYmxrLXYyZjM5IC5oZWFkZXIyLWxvZ29zIGltZ3twb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO21hcmdpbjphdXRvO21heC1pbmxpbmUtc2l6ZToxMDAlO21heC1ibG9jay1zaXplOjEwMCU7b2JqZWN0LWZpdDpjb250YWluO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjdzIGVhc2UtaW4tb3V0O30KLmJsay12MmYzOSAuaGVhZGVyMi1sb2dvcyBpbWcuaXMtYWN0aXZle29wYWNpdHk6MTt9Ci8qIElndWFsIHF1ZSBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsOiBwb3IgZGViYWpvIGRlIGVzdGUgYW5jaG8gc2UKICAgaW50ZW50YSBwcmltZXJvIDEgU09MQSBGSUxBIChldGlxdWV0YXMrdGl0dWxhciBqdW50byBhbCBsb2dvLCBpZ3VhbCBxdWUKICAgZW4gRGVzaywgYSB0YW1h8W8gcmVkdWNpZG8pLiBFbCBibG9xdWUgZGUgbG9nb3MgbWFudGllbmUgU0lFTVBSRSBzdQogICBkaXNwb3NpY2nzbiBlbiBjb2x1bW5hIChldGlxdWV0YSBkZSBwYXRyb2NpbmlvIGVuY2ltYSBkZWwgbG9nbywKICAgYWxpbmVhZG9zIGEgbGEgZGVyZWNoYSwgc2luIHNlcGFyYWNp824pIHRhbnRvIGVuIGVzdGEgZmlsYSD6bmljYSBjb21vIGVuCiAgIGVsIHJlc2d1YXJkbyBkZSBhYmFqby4gU2kgZWwgdGl0dWxhciwgc3VtYWRvIGFsIGFuY2hvIGRlIGxhcyBldGlxdWV0YXMKICAgYWN0aXZhcyAoY2F0ZWdvcu1hIHkvbyBleGNsdXNpdmEsIHNpIGxhcyBoYXkpLCBzdXBlcmEgZWwgNTUlIGRlbCBhbmNobwogICB0b3RhbCBkZSBsYSBjYWJlY2VyYSAoY2FkYSB1bm8gbWVkaWRvIGEgdW5hIHNvbGEgbO1uZWEpLCBlbCBzY3JpcHQKICAgc3RhbmRhbG9uZSBh8WFkaWRvIGFsIGZpbmFsIGRlIGVzdGUgSFRNTCAodmVyCiAgIGJ1aWxkSGVhZGVyMlN0YWNraW5nU2NyaXB0KCkpIGxvIGRldGVjdGEgbWlkaWVuZG8gc3UgYW5jaG8gbmF0dXJhbAogICB5IGHxYWRlIGxhIGNsYXNlICJoZWFkZXIyLXN0YWNrZWQiOiBlbCBibG9xdWUgZGUKICAgbG9nb3Mgc3ViZSBlbnRvbmNlcyBhIHN1IHByb3BpYSBmaWxhIChhbGluZWFkbyBhIGxhIGRlcmVjaGEpIHkKICAgdGl0dWxhcitldGlxdWV0YXMgYmFqYW4gYSBsYSBmaWxhIGRlIGFiYWpvLCBhIGFuY2hvIGNvbXBsZXRvICYjODIxMjsgbWlzbW8KICAgbGF5b3V0IGRlIDIgZmlsYXMgcXVlIGhhYu1hIGFudGVzIHNpZW1wcmUgcG9yIGRlYmFqbyBkZSBlc3RlIGJyZWFrcG9pbnQsCiAgIGFob3JhIHNvbG8gY29tbyByZXNndWFyZG8uIERlbnRybyBkZSBlc2UgcmVzZ3VhcmRvLCBjb24gZXRpcXVldGEocykgZWwKICAgdGl0dWxhciBwYXNhIGFkZW3hcyBhIHN1IFBST1BJQSBmaWxhIGEgYW5jaG8gY29tcGxldG8sIGRlYmFqbyBkZSBsYSBmaWxhIGRlIGV0aXF1ZXRhcyAodmVyCiAgICIuaGVhZGVyMi1zdGFja2VkIC5oZWFkZXIyLWxlZnQiIG3hcyBhYmFqbykuIEVsIGxvZ28gc2UgcmVkdWNlIHVuIDIwJQogICAoMTYweDUwICYjODU5NDsgMTI4eDQwKS4KICAgYWxpZ24tc2VsZjpmbGV4LWVuZCBlbiBoZWFkZXIyLWxlZnQgZmlqYSBlbCB0aXR1bGFyIFNJRU1QUkUgYSBsb3MgMTBweAogICBkZWwgcGFkZGluZy1ib3R0b20gcmVzcGVjdG8gYSBsYSBs7W5lYSBzZXBhcmFkb3JhICYjODIxMjsgbWlzbW8gY3JpdGVyaW8gcXVlCiAgIGVuIERlc2sgKHZlciBoZWFkZXIyLWxlZnQgbeFzIGFycmliYSk6IHNpbiBlc3RvLCBhbCBzZXIgZWwgYmxvcXVlIGRlCiAgIGxvZ29zIG3hcyBhbHRvIHF1ZSBlbCB0aXR1bGFyLCBlbCBjZW50cmFkbyB2ZXJ0aWNhbCBkZWwgcm93IGRlamFiYSB1bgogICBodWVjbyBtYXlvciBlbnRyZSBlbCB0aXR1bGFyIHkgbGEgbO1uZWEuIEVsIGJsb3F1ZSBkZSBsb2dvcyBzaWd1ZQogICBjZW50cmFkbyAoc2luIGVzZSBvdmVycmlkZSkuICovCkBjb250YWluZXIgKG1heC1pbmxpbmUtc2l6ZTo0ODBweCl7CiAgLmJsay12MmYzOSAuaGVhZGVyMntmbGV4LWRpcmVjdGlvbjpyb3c7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O3BhZGRpbmctbGVmdDoxMHB4O3BhZGRpbmctcmlnaHQ6MTBweDtwYWRkaW5nLWJvdHRvbToxMHB4O30KICAuYmxrLXYyZjM5IC5oZWFkZXIyLWxlZnR7b3JkZXI6MTthbGlnbi1zZWxmOmZsZXgtZW5kO30KICAuYmxrLXYyZjM5IC5oZWFkZXIyLWxvZ29zLXdyYXB7b3JkZXI6MjthbGlnbi1zZWxmOmNlbnRlcjttYXgtaW5saW5lLXNpemU6bm9uZTtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1lbmQ7Z2FwOjA7fQogIC5ibGstdjJmMzkgLmhlYWRlcjItbG9nb3N7aW5saW5lLXNpemU6MTI4cHg7YmxvY2stc2l6ZTo0MHB4O30KICAuYmxrLXYyZjM5IC5oZWFkZXIyLXRpdGxle2ZvbnQtc2l6ZToyN3B4O30KICAuYmxrLXYyZjM5IC5oZWFkZXIyLmhlYWRlcjItc3RhY2tlZHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1zdGFydDt9CiAgLmJsay12MmYzOSAuaGVhZGVyMi5oZWFkZXIyLXN0YWNrZWQgLmhlYWRlcjItbGVmdHtvcmRlcjoyO2FsaWduLXNlbGY6ZmxleC1zdGFydDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6c3RyZXRjaDtnYXA6NXB4O30KICAuYmxrLXYyZjM5IC5oZWFkZXIyLmhlYWRlcjItc3RhY2tlZCAuaGVhZGVyMi1sb2dvcy13cmFwe29yZGVyOjE7bWF4LWlubGluZS1zaXplOjEwMCU7YWxpZ24tc2VsZjpmbGV4LWVuZDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1lbmQ7Z2FwOjA7fQogIC8qIFJlc2d1YXJkbyBpbnRlcm1lZGlvICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhCiAgICAgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YTogc29sbyBlbCB0aXR1bGFyIGJhamEgYSBzdQogICAgIHByb3BpYSBmaWxhIGEgYW5jaG8gY29tcGxldG8gY3VhbmRvIGxhcyBldGlxdWV0YXMgU80gY2FiZW4ganVudG8gYWwKICAgICBsb2dvIHBlcm8gZWwgdGl0dWxhciBuby4gaGVhZGVyMi1sZWZ0IHBhc2EgZGUgZmlsYSBhIGNvbHVtbmEKICAgICAoZXRpcXVldGFzIGFycmliYSwgdGl0dWxhciBkZWJham8pIHkgcmVjdXBlcmEgYWxpZ24tc2VsZjphdXRvIHBhcmEKICAgICBjZW50cmFyc2UgdmVydGljYWxtZW50ZSBjb250cmEgZWwgbG9nbyAoYWxpZ24tc2VsZjpjZW50ZXIgZGUgbGEgcmVnbGEKICAgICBiYXNlIGRlIC5oZWFkZXIyLWxvZ29zLXdyYXAsIGFycmliYSksIGlndWFsIHF1ZSBlbiBlbCByZXN0byBkZSBlc3RhZG9zLiAqLwogIC5ibGstdjJmMzkgLmhlYWRlcjIuaGVhZGVyMi10aXRsZS1iZWxvdyAuaGVhZGVyMi1sZWZ0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpzdHJldGNoO2FsaWduLXNlbGY6YXV0bztnYXA6NXB4O30KfQpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6ODYwcHgpewogIC5ibGstdjJmMzkgLmNvbHVtbntkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnI7Z2FwOjEwcHg7fQogIC5ibGstdjJmMzkgLmNvbHVtbi1pdGVtLmxheW91dC1waG90by1sZWZ0LAogIC5ibGstdjJmMzkgLmNvbHVtbi1pdGVtLm1vYi1ncmlkLXN0YW5kYWxvbmV7Z3JpZC1jb2x1bW46MSAvIC0xO30KICAvKiAhaW1wb3J0YW50OiBsYSBwcm9wb3JjafNuIHByb3BpYSBkZSBjYWRhIG5vdGljaWEgKHZlciBtZWRpYUFzcGVjdFJhdGlvKQogICAgIHNlIGFwbGljYSBjb21vIGVzdGlsbyBpbmxpbmUgc29icmUgZWwgcHJvcGlvIC50aHVtYiAmIzgyMTI7IHNpbiAhaW1wb3J0YW50CiAgICAgZXN0ZSByZXNndWFyZG8gZGVsIGdyaWQgZGUgMiBjb2x1bW5hcyBkZWphcu1hIGRlIHRlbmVyIGVmZWN0byBlbiBjdWFudG8KICAgICB1bmEgbm90aWNpYSB0cmFqZXJhIHVuYSBwcm9wb3JjafNuIGRpc3RpbnRhIGRlIDQ6MyAodmVyIG1pc21vIGNvbWVudGFyaW8sCiAgICAgZGV0YWxsYWRvLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhKS4gKi8KICAuYmxrLXYyZjM5IC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tdG9wOm5vdCgubW9iLWdyaWQtc3RhbmRhbG9uZSkgLnRodW1ie2FzcGVjdC1yYXRpbzo0LzMgIWltcG9ydGFudDt9CiAgLmJsay12MmYzOSAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcDpub3QoLm1vYi1ncmlkLXN0YW5kYWxvbmUpIC5sZWZ0LXRpdGxle2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXNpemU6MThweDtsaW5lLWhlaWdodDoxLjJlbTt0ZXh0LXRyYW5zZm9ybTpub25lO2ZvbnQtd2VpZ2h0OjYwMDt9Cn0KLyogRXN0aWxvICJmb3RvIGdyYW5kZSArIHRpdHVsYXIiOiBmb3RvIDE2OjkgYXJyaWJhLCB0aXR1bGFyIGRlYmFqbyAmIzgyMTI7IGVsZWdpYmxlCiAgIHBvciBub3RpY2lhIGRlc2RlIGVsIGdlc3Rvci4gTm8gc2UgcmVzdHJpbmdlIGNvbiBAY29udGFpbmVyIHBvcnF1ZQogICAuY29sdW1uLWl0ZW0geWEgZXMgYmxvY2sgcG9yIGRlZmVjdG8gKGVsIHRodW1iIHkgZWwgdGV4dG8gc2UgYXBpbGFuIHNvbG9zCiAgIHNpbiBt4XMgYWp1c3RlKSwgYXPtIHF1ZSBlbCBkaXNl8W8gZnVuY2lvbmEgaWd1YWwgZGUgYmllbiBlbiBjdWFscXVpZXIKICAgYW5jaG8sIERlc2sgbyBN83ZpbC4gKi8KLmJsay12MmYzOSAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO30KLmJsay12MmYzOSAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcCAudGh1bWJ7aW5saW5lLXNpemU6MTAwJTthc3BlY3QtcmF0aW86MTYvOTttYXJnaW4tYm90dG9tOjEwcHg7fQouYmxrLXYyZjM5IC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tdG9wIC5sZWZ0LXRpdGxle2ZvbnQtZmFtaWx5OiJhbXBsaXR1ZGUtbWVkaXVtLWNvbmRlbnNlZCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuMmVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtmb250LXdlaWdodDo5MDA7fQovKiBFbiBN83ZpbCBlbCB0aXR1bGFyIGRlIGVzdGUgZGlzZfFvIHNlIG11ZXN0cmEgbeFzIGdyYW5kZSAoMS41cmVtIGVuIHZleiBkZQogICBsb3MgMS4ycmVtIGRlIERlc2spICYjODIxMjsgbWlzbWEgZXNwZWNpZmljaWRhZCAoMyBjbGFzZXMpIHF1ZSBsYSByZWdsYSBkZQogICBhcnJpYmE7IGFsIGlyIERFU1BVyVMgZW4gZWwgQ1NTIGdhbmEgcG9yIG9yZGVuIGRlIGNhc2NhZGEuIFNlIHVzYSBlbAogICBicmVha3BvaW50IGRlIDQ4MHB4IChlbCBkZSB0aXBvZ3JhZu1hIGVuIGVzdGEgYXBwLCBubyBlbCBkZSA4NjBweCBxdWUgYXF17QogICBzb2xvIGdvYmllcm5hIGVsIGFwaWxhZG8gZGUgY29sdW1uYXMpIHBhcmEgcXVlIGNvaW5jaWRhIGNvbiBlbCByZXN0byBkZQogICBjYW1iaW9zIGRlIHRleHRvL3RhbWHxbyBwb3IgdmlzdGEuIE5vIGFmZWN0YSBhbCByZXNndWFyZG8gZGUgMiBjb2x1bW5hcyBlbgogICBt83ZpbCAobW9iLWdyaWQpLCBt4XMgZXNwZWPtZmljbyAoMThweCwgdmVyIG3hcyBhcnJpYmEpLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6NDgwcHgpewogIC5ibGstdjJmMzkgLmNvbHVtbi1pdGVtLmxheW91dC1waG90by10b3AgLmxlZnQtdGl0bGV7Zm9udC1zaXplOjEuNXJlbTt9Cn0KLyogRXN0aWxvICJCbG9xdWUgbWVkaWEiICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhCiAgIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstdjJmMzkgLm1lZGlhLWJsb2NrLW1lZGlhe2Rpc3BsYXk6YmxvY2s7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOmF1dG87fQouYmxrLXYyZjM5IC5tZWRpYS1ibG9jay13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7fQouYmxrLXYyZjM5IC5tZWRpYS1ibG9jay1pZnJhbWUtd3JhcHtwb3NpdGlvbjpyZWxhdGl2ZTtpbmxpbmUtc2l6ZToxMDAlO2FzcGVjdC1yYXRpbzoxNi85O2JhY2tncm91bmQ6IzAwMDtvdmVyZmxvdzpoaWRkZW47fQouYmxrLXYyZjM5IC5tZWRpYS1ibG9jay1pZnJhbWUtd3JhcCBpZnJhbWV7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtib3JkZXI6MDtkaXNwbGF5OmJsb2NrO30KLmJsay12MmYzOSAuY29sdW1uLWl0ZW0ubGF5b3V0LW1lZGlhLWJsb2Nre2JvcmRlcjpub25lO3BhZGRpbmc6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2Jsb2NrLXNpemU6YXV0bztmbGV4OjAgMCBhdXRvO30KLmJsay12MmYzOSAuY29sdW1uLWl0ZW06bm90KC5sYXlvdXQtbWVkaWEtYmxvY2spe2ZsZXg6MSAxIGF1dG87fQo8L3N0eWxlPgoKPGRpdiBjbGFzcz0iYmxrLXYyZjM5Ij4KICAKICA8bWFpbiBjbGFzcz0icGFnZSI+CiAgICAKICAgIDxhcnRpY2xlIGNsYXNzPSJsZWFkIGlzLWFwcGVhcmFuY2UtcG9zaXRpdmUiPgogICAgICA8ZGl2IGNsYXNzPSJsZWFkLW1lZGlhIj4KICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9va2RpYXJpby5jb20vZXNwZWNpYWxlcy9hcHBzL21lZGlhL29rZGlhcmlvLWRlc2N1YnJlLWVsLXBpc28tZnJhbmNvLWVuLWVsLXF1ZS1sYS1vbmctbm8tbmFtZS1raXRjaGVuLWVzY29uZGUtYS1sb3MtaWxlZ2FsZXMteS1sZXMtc3VtaW5pc3RyYS1tYXRlcmlhbC1wYXJhLWNvY3RlbGVzLW1vbG90b3YtMjAyNjA4MjktMjIyNTExLTBjNzFkYi5qcGciIGFsdD0iT0tESUFSSU8gZGVzY3VicmUgZWwgJiMzOTtwaXNvIGZyYW5jbyYjMzk7IGVuIGVsIHF1ZSBsYSBPTkcgTm8gTmFtZSBLaXRjaGVuIGVzY29uZGUgYSBsb3MgaWxlZ2FsZXMgeSBsZXMgc3VtaW5pc3RyYSBtYXRlcmlhbCBwYXJhIGPzY3RlbGVzIG1vbG90b3YiIGxvYWRpbmc9ImVhZ2VyIiBmZXRjaHByaW9yaXR5PSJoaWdoIiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgIDxkaXYgY2xhc3M9ImxlYWQtb3ZlcmxheSIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6cmdiYSgxNCwxNywyNiwwLjAwKTsiPjwvZGl2PgogICAgICAgIAogICAgICAgIDxidXR0b24gY2xhc3M9InBsYXktYnV0dG9uIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGRpdiBjbGFzcz0icGxheS1pY29uIj48L2Rpdj48c3BhbiBjbGFzcz0icGxheS10ZXh0Ij5QbGF5PC9zcGFuPjwvYnV0dG9uPgogICAgICAgIAogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ibGVhZC1ib2R5Ij4KICAgICAgICA8c3BhbiBjbGFzcz0ibGVhZC1jYXQiIHN0eWxlPSJiYWNrZ3JvdW5kOiMwMEE3RkY7Y29sb3I6I2ZmZiI+RVNQQdFBPC9zcGFuPgogICAgICAgIAogICAgICAgIDxoMiBjbGFzcz0ibGVhZC10aXRsZSI+PHNwYW4gY2xhc3M9ImxlYWQtdGl0bGUtZGVzayI+T0tESUFSSU8gZGVzY3VicmUgZWwgJiMzOTtwaXNvIGZyYW5jbyYjMzk7IGVuIGVsIHF1ZSBsYSBPTkcgTm8gTmFtZSBLaXRjaGVuIGVzY29uZGUgYSBsb3MgaWxlZ2FsZXMgeSBsZXMgc3VtaW5pc3RyYSBtYXRlcmlhbCBwYXJhIGPzY3RlbGVzIG1vbG90b3Y8L3NwYW4+PHNwYW4gY2xhc3M9ImxlYWQtdGl0bGUtbW9iaWxlIj5PS0RJQVJJTyBkZXNjdWJyZSBlbCAmIzM5O3Bpc28gZnJhbmNvJiMzOTsgZW4gZWwgcXVlIGxhIE9ORyBObyBOYW1lIEtpdGNoZW4gZXNjb25kZSBhIGxvcyBpbGVnYWxlcyB5IGxlcyBzdW1pbmlzdHJhIG1hdGVyaWFsIHBhcmEgY/NjdGVsZXMgbW9sb3Rvdjwvc3Bhbj48L2gyPgogICAgICAgIAogICAgICAgIDxzcGFuIGNsYXNzPSJhdXRob3ItbGFiZWwiPkNhcm1lbiBWaWxsYXJydWJpYSB5IEFsZWphbmRybyBGZXJu4W5kZXo8L3NwYW4+CiAgICAgIDwvZGl2PgogICAgICA8YSBjbGFzcz0ibGVhZC1saW5rIiBocmVmPSJodHRwczovL29rZGlhcmlvLmNvbS9lc3BhbmEvb2tkaWFyaW8tZGVzY3VicmUtcGlzby1mcmFuY28tcXVlLW9uZy1uby1uYW1lLWtpdGNoZW4tZXNjb25kZS1pbGVnYWxlcy1sZXMtc3VtaW5pc3RyYS1tYXRlcmlhbC1jb2N0ZWxlcy1tb2xvdG92LTIwMTk0MTYzIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgdGl0bGU9Ik9LRElBUklPIGRlc2N1YnJlIGVsICYjMzk7cGlzbyBmcmFuY28mIzM5OyBlbiBlbCBxdWUgbGEgT05HIE5vIE5hbWUgS2l0Y2hlbiBlc2NvbmRlIGEgbG9zIGlsZWdhbGVzIHkgbGVzIHN1bWluaXN0cmEgbWF0ZXJpYWwgcGFyYSBj82N0ZWxlcyBtb2xvdG92IiBhcmlhLWxhYmVsPSJPS0RJQVJJTyBkZXNjdWJyZSBlbCAmIzM5O3Bpc28gZnJhbmNvJiMzOTsgZW4gZWwgcXVlIGxhIE9ORyBObyBOYW1lIEtpdGNoZW4gZXNjb25kZSBhIGxvcyBpbGVnYWxlcyB5IGxlcyBzdW1pbmlzdHJhIG1hdGVyaWFsIHBhcmEgY/NjdGVsZXMgbW9sb3RvdiI+PC9hPgogICAgPC9hcnRpY2xlPgogIDwvbWFpbj4KPC9kaXY+Cg==
      CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQiIGNyb3Nzb3JpZ2luPgo8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vcC50eXBla2l0Lm5ldCIgY3Jvc3NvcmlnaW4+CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbSI+CjxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbSIgY3Jvc3NvcmlnaW4+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvaXFhMXFlYi5jc3MiPgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Um9ib3RvOndnaHRANDAwOzcwMCZkaXNwbGF5PXN3YXAiPgo8c3R5bGU+Ci8qIGFtcGxpdHVkZS1tZWRpdW0tY29uZGVuc2VkOiB2ZXIgcmVsYXRlZFVwcGVyY2FzZVRpdGxlRm9udCBt4XMgYWJham8uICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAiYW1wbGl0dWRlLW1lZGl1bS1jb25kZW5zZWQiOwogIHNyYzogdXJsKCJodHRwczovL29rZGlhcmlvLmNvbS93ZWIvdGhlbWVzL3YxMC9jc3MvX2ZvbnRzX2FtcGxpdHVkZS9BbXBsaXR1ZGUlMjBBdWJpJTIwTWVkaXVtJTIwQ25kLm90ZiIpOwp9Ci8qIGFtcGxpdHVkZS1ib29rOiB2ZXIgcmVsYXRlZEF1dGhvckZvbnQgbeFzIGFiYWpvLiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogImFtcGxpdHVkZS1ib29rIjsKICBzcmM6IHVybCgiaHR0cHM6Ly9va2RpYXJpby5jb20vd2ViL3RoZW1lcy92MTAvY3NzL19mb250c19hbXBsaXR1ZGUvQW1wbGl0dWRlJTIwQXViaSUyMEJvb2sub3RmIik7Cn0KLyogY29udGFpbmVyLXR5cGU6aW5saW5lLXNpemUgYXF17SBlcyBpbXByZXNjaW5kaWJsZTogY29udmllcnRlIGVzdGUgYmxvcXVlCiAgIGVuIGVsIGNvbnRlbmVkb3IgZGUgcmVmZXJlbmNpYSBwYXJhIGxvcyAiQGNvbnRhaW5lciAoLi4uLWlubGluZS1zaXplLi4uKSIKICAgZGUgbeFzIGFiYWpvLiBVc2Ftb3MgQGNvbnRhaW5lciBlbiB2ZXogZGUgQG1lZGlhIHBvcnF1ZSAiQG1lZGlhCiAgIChtYXgtaW5saW5lLXNpemU6Li4uKSIgTk8gZXMgdW5hIGNvbmRpY2nzbiBDU1MgduFsaWRhICYjODIxMjsgaW5saW5lLXNpemUgc29sbwogICBleGlzdGUgY29tbyBjYXJhY3Rlcu1zdGljYSBkZSBAY29udGFpbmVyLCBudW5jYSBkZSBAbWVkaWEgJiM4MjEyOyBhc+0gcXVlIGVzYXMKICAgcmVnbGFzIGphbeFzIHNlIGFjdGl2YWJhbiAodmVyaWZpY2FkbyBjb24gbWF0Y2hNZWRpYTogc2llbXByZSBmYWxzZSwgc2luCiAgIGltcG9ydGFyIGVsIGFuY2hvKSwgeSBwb3IgZXNvIGxhIG5vdGljaWEgcHJpbmNpcGFsIHBvZO1hIGRlc2FwYXJlY2VyIG8gZWwKICAgZGlzZfFvIG3zdmlsIG5vIHNlIGFjdGl2YWJhIG51bmNhLiBAY29udGFpbmVyIHPtIHNvcG9ydGEgaW5saW5lLXNpemUgZGUKICAgZm9ybWEgduFsaWRhLCB5IGV2aXRhIGlndWFsbWVudGUgbGEgcGFsYWJyYSAid2lkdGg6IiBxdWUgZWwgQ01TIGRlbAogICB1c3VhcmlvIGVsaW1pbmEgYWwgcGVnYXIgSFRNTC9DU1MgZGlyZWN0YW1lbnRlLiAqLwovKiBGSVggT0tESUFSSU8gKi8KICAgIC5pdGVtIGFydGljbGUgLmFydGljbGUtc2NyaXB0IHsKICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50OwogICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50OwogICAgfQovKiBDb250ZW5lZG9yIGRlIHRvZGEgbGEgYXBlcnR1cmEgKGNhYmVjZXJhICsgbm90aWNpYSBwcmluY2lwYWwgKyBjb2x1bW5hKToKICAgZm9uZG8gYmxhbmNvIHkgYWlyZSBhbHJlZGVkb3IsIHNvbG8gZW4gRGVzayAmIzgyMTI7IHZlciBvdmVycmlkZSBkZW50cm8gZGVsCiAgIEBjb250YWluZXIobWF4LWlubGluZS1zaXplOjg2MHB4KSBkZSBt4XMgYWJham8sIHF1ZSBsbyBhbnVsYSBwb3IgZGViYWpvCiAgIGRlIGVzZSBhbmNobyAoZXF1aXZhbGVudGUgYSBsYSB2aXN0YSBN83ZpbCkuICovCi5ibGstMmd6Z3d7bWF4LWlubGluZS1zaXplOjk2MHB4O21hcmdpbjowIGF1dG87Y29udGFpbmVyLXR5cGU6aW5saW5lLXNpemU7YmFja2dyb3VuZC1jb2xvcjojZmZmO3BhZGRpbmc6MTBweDt9Ci5ibGstMmd6Z3cgYXt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjppbmhlcml0fQouYmxrLTJnemd3IC5wYWdle2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyO2dhcDoxNXB4fQouYmxrLTJnemd3IC5wYWdlIC5jb2x1bW57b3JkZXI6M30KLmJsay0yZ3pndyAucGFnZSAubGVhZHtvcmRlcjoyfQovKiA4NjBweCB5IG5vIDQ3NXB4OiBjb24gbGEgY29sdW1uYSBmaWphICgyMjBweCArIDIwcHggZGUgZ2FwID0gMjQwcHgpLAogICBjdWFscXVpZXIgYW5jaG8gZGUgaWZyYW1lIHBvciBkZWJham8gZGUgfjg2MHB4IGRlamEgbGEgbm90aWNpYSBwcmluY2lwYWwKICAgKDFmcikgY2FkYSB2ZXogY29uIG1lbm9zIGVzcGFjaW8gaGFzdGEgY29sYXBzYXIgYSAwcHggZGUgYW5jaG8gYW50ZXMgZGUKICAgbGxlZ2FyIGEgdW4gYnJlYWtwb2ludCB0YW4gYmFqbyBjb21vIDQ3NXB4ICYjODIxMjsgbGEgbm90aWNpYSBwcmluY2lwYWwKICAgZGlyZWN0YW1lbnRlIGRlc2FwYXJlY2UgZW4gZXNhIGZyYW5qYSBpbnRlcm1lZGlhIChuaSAiZGVzayIgY29tcGxldG8gbmkKICAgIm3zdmlsIiBlc3RyZWNobykuIENvbiA4NjBweCBzZSBwYXNhIGEgdW5hIHNvbGEgY29sdW1uYSBhcGlsYWRhIGFudGVzIGRlCiAgIHF1ZSBlc28gcHVlZGEgb2N1cnJpci4KICAgRXN0ZSBicmVha3BvaW50IHNlIG9taXRlIHBvciBjb21wbGV0byBtaWVudHJhcyBsYSBzaW11bGFjafNuIGRlIGFuY2hvIGVzdOkKICAgYWN0aXZhICh2ZXIgbGVhZFdpZHRoUHJldmlldyk6IHBlbnNhZG8gcGFyYSBjdWFuZG8gZWwgbfNkdWxvIGxsZXZhIHN1CiAgIGNvbHVtbmEgYSA5NjBweCwgZGVqYSBkZSB0ZW5lciBzZW50aWRvIGVuIHVuYSBleHBvcnRhY2nzbiBkZSBzb2xvIGxhCiAgIG5vdGljaWEgcHJpbmNpcGFsIGEgdW4gYW5jaG8gZmlqbyBlbGVnaWRvIGEgbWFubyAmIzgyMTI7IGxvcyBhbmNob3Mgc2ltdWxhZG9zCiAgICg2MTMvNDYwLzMwN3B4KSBlc3ThbiBUT0RPUyBwb3IgZGViYWpvIGRlIDg2MHB4LCBhc+0gcXVlIHNpbiBlc3RlIGdhdGluZwogICBlbCBIVE1MIGV4cG9ydGFkbyBjYWVy7WEgc2llbXByZSBhIGxhIHRpcG9ncmFm7WEgIk3zdmlsIiAoY29uICFpbXBvcnRhbnQpCiAgIHNlYSBjdWFsIHNlYSBsYSBxdWUgZWwgdXN1YXJpbyBjb25maWd1cvMgZW4gIkRlc2siIHBhcmEgZXNhIHNpbXVsYWNp824sCiAgIGRhbmRvIGxhIGZhbHNhIHNlbnNhY2nzbiBkZSBxdWUgdW5hIGNvbmZpZ3VyYWNp824gInBpc2EiIGEgb3RyYS4gKi8KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjg2MHB4KXsKICAuYmxrLTJnemd3e2JhY2tncm91bmQ6bm9uZTtwYWRkaW5nOjA7fQogIC5ibGstMmd6Z3cgLnBhZ2V7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcn0KICAuYmxrLTJnemd3IC5wYWdlIC5zdGFjay10aXRsZSB7Zm9udC1zaXplOjE4cHg7IGxpbmUtaGVpZ2h0OiAxLjJlbTt9CiAgLmJsay0yZ3pndyAucGFnZSAuc3RhY2stYXV0aG9yIHttYXJnaW4tdG9wOiAxMHB4O30KICAuYmxrLTJnemd3IC5sZWFkLW1lZGlhLmlzLWlmcmFtZXtibG9jay1zaXplOjQwMHB4ICFpbXBvcnRhbnQ7fQogIC5ibGstMmd6Z3cgLmxlYWQtbWVkaWF7YXNwZWN0LXJhdGlvOjE2LzkgIWltcG9ydGFudDt9CiAgLmJsay0yZ3pndyAucGFnZSAubGVhZHtvcmRlcjoxfQogIC5ibGstMmd6Z3cgLnBhZ2UgLmNvbHVtbntvcmRlcjoyfQogIC8qIFBvciBkZWJham8gZGVsIGJyZWFrcG9pbnQsIGVsIGxlYWQtYm9keSBzaWVtcHJlIHZ1ZWx2ZSBhIGlyIGRlYmFqbyBkZWwKICAgICBsZWFkLW1lZGlhIChubyBoYXkgc2l0aW8gcGFyYSBlbCBsYXlvdXQgbGFkbyBhIGxhZG8pLiAqLwogIC5ibGstMmd6Z3cgLnBhZ2UgLmxlYWQubGVhZC1ib2R5LWxlZnQsCiAgLmJsay0yZ3pndyAucGFnZSAubGVhZC5sZWFkLWJvZHktcmlnaHR7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FzcGVjdC1yYXRpbzphdXRvO30KICAuYmxrLTJnemd3IC5wYWdlIC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLW1lZGlhLAogIC5ibGstMmd6Z3cgLnBhZ2UgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLW1lZGlhe2ZsZXg6MSAxIGF1dG87fQogIC5ibGstMmd6Z3cgLnBhZ2UgLmxlYWQubGVhZC1ib2R5LWxlZnQgLmxlYWQtYm9keSwKICAuYmxrLTJnemd3IC5wYWdlIC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1ib2R5e2ZsZXg6MSAxIGF1dG87aW5saW5lLXNpemU6OTAlO21hcmdpbjotMzBweCBhdXRvIDA7YmxvY2stc2l6ZTphdXRvO2FsaWduLXNlbGY6YXV0bztqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtwYWRkaW5nOjEwcHg7fQogIC5ibGstMmd6Z3cgLnBhZ2UgLmxlYWQubGVhZC1ib2R5LWxlZnQgLnBsYXktYnV0dG9ue2xlZnQ6MTBweDtyaWdodDphdXRvO30KICAuYmxrLTJnemd3IC5wYWdlIC5jb2x1bW4taXRlbXtib3JkZXI6MXB4IHNvbGlkICNlN2ViZWU7cGFkZGluZzoxMHB4O2JhY2tncm91bmQ6I2ZmZjtibG9jay1zaXplOnN0cmV0Y2g7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlO30KICAuYmxrLTJnemd3IC5wYWdlIC5sZWZ0LXRpdGxle2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOjIwcHg7bGluZS1oZWlnaHQ6MS4xNTtjb2xvcjojMmMzZTUzO21hcmdpbjowO3RleHQtYWxpZ246bGVmdDt9CiAgLmJsay0yZ3pndyAucGFnZSAuY29sdW1uLWl0ZW0udGl0bGUtb25seS1tb2JpbGUtMjEgLmxlZnQtdGl0bGV7Zm9udC1zaXplOjIxcHggIWltcG9ydGFudDt9CiAgLmJsay0yZ3pndyAucGFnZSAuY29sdW1uLWl0ZW0udGl0bGUtb25seS1tb2JpbGUtMTggLmxlZnQtdGl0bGV7Zm9udC1zaXplOjE4cHggIWltcG9ydGFudDt9CiAgLmJsay0yZ3pndyAucGFnZSAubGVmdC1wbGF5ewogICAgZmxleDowIDAgYXV0bztpbmxpbmUtc2l6ZToxNXB4O2Jsb2NrLXNpemU6MTVweDtib3JkZXItcmFkaXVzOjJweDsKICAgIGJhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICMwMGE3ZmY7CiAgICBkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MDsKICAgIHZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1ib3R0b206NHB4OwogIH0KICAuYmxrLTJnemd3IC5wYWdlIC5sZWZ0LXBsYXk6OmJlZm9yZXsKICAgIGNvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztpbmxpbmUtc2l6ZTowO2Jsb2NrLXNpemU6MDsKICAgIGJvcmRlci1sZWZ0OjRweCBzb2xpZCAjMDBhN2ZmO2JvcmRlci10b3A6M3B4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206M3B4IHNvbGlkIHRyYW5zcGFyZW50O21hcmdpbi1sZWZ0OjFweDsKICB9Cn0KLyogVGlwb2dyYWbtYSAiTfN2aWwiIChhbnRldO10dWxvL3RpdHVsYXIvc3VidO10dWxvL3RpdHVsYXJlcyBhbmltYWRvcykgY29uIFNVCiAgIFBST1BJTyBicmVha3BvaW50ICg0ODBweCksIHNlcGFyYWRvIGRlbCBkZSBhcnJpYmEgKDg2MHB4LCBzb2xvIHBhcmEgYXBpbGFyCiAgIGxhIHJlamlsbGEgY29sdW1uYStub3RpY2lhKTogdW4gY29udGVuZWRvciByZWFsIGRlIG1lbm9zIGRlIDg2MHB4IGVzIG11eQogICBoYWJpdHVhbCAocC5lai4gdW5hIGNvbHVtbmEgZGUgYXJ07WN1bG8gZGUgfjcwMHB4KSB5IE5PIGVzIHVuIG3zdmlsICYjODIxMjsgY29uCiAgIHVuIPpuaWNvIGJyZWFrcG9pbnQgY29tcGFydGlkbywgbGEgdGlwb2dyYWbtYSAiRGVzayIgcXVlIGNvbmZpZ3VyYSBlbAogICB1c3VhcmlvIG5vIGxsZWdhYmEgYSB2ZXJzZSBudW5jYSBlbiBlc2UgY2FzbywgY2F5ZW5kbyBzaWVtcHJlIGEgbG9zIHZhbG9yZXMKICAgcG9yIGRlZmVjdG8gZGUgIk3zdmlsIiBzaW4gcXVlIG5hZGllIGxvIGh1YmllcmEgcGVkaWRvLiA0ODBweCBz7SBzZQogICBjb3JyZXNwb25kZSBjb24gdW4gYW5jaG8gZGUgbfN2aWwgcmVhbCAobGEgdmlzdGEgIk3zdmlsIiBkZWwgcHJvcGlvIGdlc3RvcgogICBzaW11bGEgMzc1cHgpLiBJZ3VhbCBxdWUgZWwgYnJlYWtwb2ludCBkZSBhcnJpYmEsIHNlIG9taXRlIGR1cmFudGUgbGEKICAgc2ltdWxhY2nzbiBkZSBhbmNobyBkZSBsYSBub3RpY2lhIHByaW5jaXBhbCAodmVyIGxlYWRXaWR0aFByZXZpZXcpLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6NDgwcHgpewogIC5ibGstMmd6Z3cgLmxlYWQta2lja2Vye2ZvbnQtc2l6ZToxLjMxMjVyZW0gIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjEgIWltcG9ydGFudDtjb2xvcjojMDBBN0ZGICFpbXBvcnRhbnQ7fQogIC5ibGstMmd6Z3cgLmxlYWQtc3VidGl0bGV7Zm9udC1zaXplOjEuMzEyNXJlbSAhaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjEuMSAhaW1wb3J0YW50O2NvbG9yOiMwMEE3RkYgIWltcG9ydGFudDt9CiAgLmJsay0yZ3pndyAubGVhZC10aXRsZXtmb250LXNpemU6MS44cmVtICFpbXBvcnRhbnQ7bGluZS1oZWlnaHQ6MS4xICFpbXBvcnRhbnQ7fQogIC5ibGstMmd6Z3cgLmxlYWQtdGl0bGUtZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay0yZ3pndyAubGVhZC10aXRsZS1tb2JpbGV7ZGlzcGxheTppbmxpbmUgIWltcG9ydGFudDt9CiAgLmJsay0yZ3pndyAubGVhZC1raWNrZXItZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay0yZ3pndyAubGVhZC1raWNrZXItbW9iaWxle2Rpc3BsYXk6aW5saW5lICFpbXBvcnRhbnQ7fQogIC5ibGstMmd6Z3cgLmxlYWQtc3VidGl0bGUtZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay0yZ3pndyAubGVhZC1zdWJ0aXRsZS1tb2JpbGV7ZGlzcGxheTppbmxpbmUgIWltcG9ydGFudDt9CiAgLmJsay0yZ3pndyAubGVhZC1hbmltLWhlYWRsaW5lc3tmb250LXNpemU6MS44NzVyZW0gIWltcG9ydGFudDtsaW5lLWhlaWdodDoxLjAyICFpbXBvcnRhbnQ7fQogIAogIC5ibGstMmd6Z3cgLnJlbGF0ZWQtdGl0bGUtZGVza3tkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9CiAgLmJsay0yZ3pndyAucmVsYXRlZC10aXRsZS1tb2JpbGV7ZGlzcGxheTppbmxpbmUgIWltcG9ydGFudDt9Cn0KLmJsay0yZ3pndyAubGVhZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiNmZmY7b3ZlcmZsb3c6aGlkZGVuO2lzb2xhdGlvbjppc29sYXRlO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO30KLmJsay0yZ3pndyAubGVhZC1tZWRpYXtwb3NpdGlvbjpyZWxhdGl2ZTthc3BlY3QtcmF0aW86MTYvOTtiYWNrZ3JvdW5kOiMwMDA7b3ZlcmZsb3c6aGlkZGVufQovKiBNZWRpYSBtZWRpYW50ZSBpZnJhbWU6IGFsdG8gZmlqbyBlbiBw7XhlbGVzIGVuIHZleiBkZSBsYSBwcm9wb3JjafNuIGRlCiAgIGFycmliYSAodmVyIGNvbWVudGFyaW8gZGV0YWxsYWRvIGp1bnRvIGEgc3RhdGUubGVhZC5pZnJhbWVIZWlnaHQpICYjODIxMjsgZWwKICAgdmFsb3IgZGUgTfN2aWwgc2Ugc29icmVzY3JpYmUgZW4gZWwgQGNvbnRhaW5lciBkZSBt4XMgYWJham8sIGlndWFsIHF1ZSBlbAogICByZXN0byBkZSBvdmVycmlkZXMgcmVzcG9uc2l2ZSBkZSBlc3RlIEhUTUwgZXhwb3J0YWRvLiAqLwouYmxrLTJnemd3IC5sZWFkLW1lZGlhLmlzLWlmcmFtZXthc3BlY3QtcmF0aW86bm9uZTtibG9jay1zaXplOjY0MHB4O30KLmJsay0yZ3pndyAubGVhZC1tZWRpYSBpbWcsCi5ibGstMmd6Z3cgLmxlYWQtbWVkaWEgdmlkZW97cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtvYmplY3QtZml0OmNvdmVyfQovKiBDYXJydXNlbCBkZSBmb3RvcyBkZSBmb25kbyBjb24gZWZlY3RvIEtlbiBCdXJucyAmIzgyMTI7IHZlciBlbCBtaXNtbyBibG9xdWUsCiAgIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLgogICBMYSBkdXJhY2nzbiBkZSBsYXMgYW5pbWFjaW9uZXMgKDZzKSBjb2luY2lkZSBjb24KICAgTEVBRF9DQVJPVVNFTF9JTlRFUlZBTCwgcXVlIHRhbWJp6W4gZ29iaWVybmEgZWwgc2NyaXB0IGRlIHJvdGFjafNuCiAgIChidWlsZExlYWRDYXJvdXNlbFNjcmlwdCkgYfFhZGlkbyBhbCBmaW5hbCBkZWwgSFRNTCBleHBvcnRhZG8uICovCi5ibGstMmd6Z3cgLmxlYWQtY2Fyb3VzZWx7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtvdmVyZmxvdzpoaWRkZW47fQouYmxrLTJnemd3IC5sZWFkLWNhcm91c2VsLXNsaWRle3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAxLjVzIGVhc2U7fQouYmxrLTJnemd3IC5sZWFkLWNhcm91c2VsLXNsaWRlLmlzLWFjdGl2ZXtvcGFjaXR5OjE7ei1pbmRleDoxO30KLmJsay0yZ3pndyAubGVhZC1jYXJvdXNlbC1zbGlkZSBpbWd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtvYmplY3QtZml0OmNvdmVyO30KLmJsay0yZ3pndyAubGVhZC1jYXJvdXNlbC1zbGlkZTpudGgtY2hpbGQob2RkKSBpbWd7YW5pbWF0aW9uOmJsay0yZ3pndy1rZW5idXJucy1hIDZzIGVhc2UtaW4tb3V0IGZvcndhcmRzO30KLmJsay0yZ3pndyAubGVhZC1jYXJvdXNlbC1zbGlkZTpudGgtY2hpbGQoZXZlbikgaW1ne2FuaW1hdGlvbjpibGstMmd6Z3cta2VuYnVybnMtYiA2cyBlYXNlLWluLW91dCBmb3J3YXJkczt9CkBrZXlmcmFtZXMgYmxrLTJnemd3LWtlbmJ1cm5zLWF7IGZyb217dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZSgwLDApO30gdG97dHJhbnNmb3JtOnNjYWxlKDEuMTUpIHRyYW5zbGF0ZSgtNCUsLTMlKTt9IH0KQGtleWZyYW1lcyBibGstMmd6Z3cta2VuYnVybnMtYnsgZnJvbXt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlKDAsMCk7fSB0b3t0cmFuc2Zvcm06c2NhbGUoMS4xNSkgdHJhbnNsYXRlKDQlLDMlKTt9IH0KLyogQ29uIHVuYSD6bmljYSBmb3RvIChzaW4gcm90YWNp824gcG9zaWJsZSkgc2UgYXBsaWNhIHVuIHpvb20gaW4vb3V0IGVuCiAgIGJ1Y2xlIGluZmluaXRvIGVuIHZleiBkZWwgcmVjb3JyaWRvIPpuaWNvIChmb3J3YXJkcykgZGUgYXJyaWJhLiAqLwouYmxrLTJnemd3IC5sZWFkLWNhcm91c2VsLmlzLXNpbmdsZSAubGVhZC1jYXJvdXNlbC1zbGlkZSBpbWd7YW5pbWF0aW9uOmJsay0yZ3pndy1rZW5idXJucy1sb29wIDE0cyBlYXNlLWluLW91dCBpbmZpbml0ZTt9CkBrZXlmcmFtZXMgYmxrLTJnemd3LWtlbmJ1cm5zLWxvb3B7IDAle3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGUoMCwwKTt9IDUwJXt0cmFuc2Zvcm06c2NhbGUoMS4xNSkgdHJhbnNsYXRlKC00JSwtMyUpO30gMTAwJXt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlKDAsMCk7fSB9Ci8qIENvbXBhcmFkb3IgYW50ZXMvZGVzcHXpcyAoZGVzbGl6YWRvcikgJiM4MjEyOyB2ZXIgZWwgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4KICAgZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay0yZ3pndyAubGVhZC1jb21wYXJle3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7b3ZlcmZsb3c6aGlkZGVuO2lzb2xhdGlvbjppc29sYXRlO3RvdWNoLWFjdGlvbjpub25lO3otaW5kZXg6Mjt9Ci5ibGstMmd6Z3cgLmxlYWQtY29tcGFyZSBpbWd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtvYmplY3QtZml0OmNvdmVyO29iamVjdC1wb3NpdGlvbjpjZW50ZXI7ZGlzcGxheTpibG9jazt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1kcmFnOm5vbmU7cG9pbnRlci1ldmVudHM6bm9uZTt9Ci5ibGstMmd6Z3cgLmxlYWQtY29tcGFyZS1iZWZvcmV7Y2xpcC1wYXRoOmluc2V0KDAgNTAlIDAgMCk7d2lsbC1jaGFuZ2U6Y2xpcC1wYXRoO30KLmJsay0yZ3pndyAubGVhZC1jb21wYXJlLXJhbmdle3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7bWFyZ2luOjA7b3BhY2l0eTowO2N1cnNvcjpldy1yZXNpemU7fQouYmxrLTJnemd3IC5sZWFkLWNvbXBhcmUtaGFuZGxle3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6NTAlO2lubGluZS1zaXplOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7cG9pbnRlci1ldmVudHM6bm9uZTt6LWluZGV4OjI7fQouYmxrLTJnemd3IC5sZWFkLWNvbXBhcmUtaGFuZGxlOjpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7aW5saW5lLXNpemU6MnB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuOSk7Ym94LXNoYWRvdzowIDAgMCAxcHggcmdiYSgwLDAsMCwuMjUpO30KLmJsay0yZ3pndyAubGVhZC1jb21wYXJlLWhhbmRsZTo6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6LTE1cHg7aW5saW5lLXNpemU6MzBweDtibG9jay1zaXplOjMwcHg7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojZmZmIHVybCgiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScyMCcgaGVpZ2h0PScyMCcgdmlld0JveD0nMCAwIDIwIDIwJz48ZyBmaWxsPSdub25lJyBzdHJva2U9JyUyMzAwMCcgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnPjxwYXRoIGQ9J004IDYgTDQgMTAgTDggMTQnLz48cGF0aCBkPSdNMTIgNiBMMTYgMTAgTDEyIDE0Jy8+PC9nPjwvc3ZnPiIpIGNlbnRlci8xNnB4IDE2cHggbm8tcmVwZWF0O2JveC1zaGFkb3c6MCAycHggNnB4IHJnYmEoMCwwLDAsLjI1KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjI1KTt9Ci8qIE1lZGlhIG1lZGlhbnRlIGlmcmFtZSAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiBNaXNtbyB6LWluZGV4OjIgcXVlCiAgIC5sZWFkLWNvbXBhcmUsIHBvciBlbCBtaXNtbyBtb3Rpdm8gKGdhbmFybGUgYSAubGVhZC1saW5rKS4gKi8KLmJsay0yZ3pndyAubGVhZC1pZnJhbWV7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtvdmVyZmxvdzpoaWRkZW47aXNvbGF0aW9uOmlzb2xhdGU7ei1pbmRleDoyO30KLmJsay0yZ3pndyAubGVhZC1pZnJhbWUgaWZyYW1le3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7Ym9yZGVyOjA7ZGlzcGxheTpibG9jazt9Ci5ibGstMmd6Z3cgLmxlYWQtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3otaW5kZXg6MTtwb2ludGVyLWV2ZW50czpub25lO30KLmJsay0yZ3pndyAubGVhZC1ib2R5e3BhZGRpbmc6MHB4IDIwcHggMjBweCAyMHB4OztkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4OyB0ZXh0LWFsaWduOmNlbnRlcjsgYWxpZ24taXRlbXM6Y2VudGVyOyBwb3NpdGlvbjpyZWxhdGl2ZTsgei1pbmRleDo2OyBwb2ludGVyLWV2ZW50czpub25lOyBpbmxpbmUtc2l6ZTo5NSU7IG1hcmdpbi1sZWZ0OmF1dG87IG1hcmdpbi1yaWdodDphdXRvOyBtYXJnaW4tdG9wOi0zMHB4OyBiYWNrZ3JvdW5kOiMwRTExMUE7IGZsZXg6MSAxIGF1dG87fQovKiBBcGFyaWVuY2lhIG5lZ2F0aXZhIChwb3IgZGVmZWN0bykgdnMuIHBvc2l0aXZhIGRlIGxhIGNhamEgZGUgdGl0dWxhciAmIzgyMTI7IHZlcgogICBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsLiAqLwouYmxrLTJnemd3IC5sZWFkLmlzLWFwcGVhcmFuY2UtcG9zaXRpdmUgLmxlYWQtYm9keXtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZTdlYmVlO30KLmJsay0yZ3pndyAubGVhZC5pcy1hcHBlYXJhbmNlLXBvc2l0aXZlIC5sZWFkLXRpdGxlLAouYmxrLTJnemd3IC5sZWFkLmlzLWFwcGVhcmFuY2UtcG9zaXRpdmUgLmF1dGhvci1sYWJlbHtjb2xvcjojMEUxMTFBO30KLyogUG9zaWNp824gZGVsIGxlYWQtYm9keSByZXNwZWN0byBhbCBsZWFkLW1lZGlhICgnbGVmdCcvJ3JpZ2h0JykgJiM4MjEyOyB2ZXIgbWlzbW8KICAgYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbC4gKi8KLmJsay0yZ3pndyAubGVhZC5sZWFkLWJvZHktbGVmdCwKLmJsay0yZ3pndyAubGVhZC5sZWFkLWJvZHktcmlnaHR7ZmxleC1kaXJlY3Rpb246cm93O2FzcGVjdC1yYXRpbzoyLjk2Mjk2Mjk2Mjk2Mjk2Mzt9Ci5ibGstMmd6Z3cgLmxlYWQubGVhZC1ib2R5LWxlZnR7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2U7fQouYmxrLTJnemd3IC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLW1lZGlhLAouYmxrLTJnemd3IC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1tZWRpYXtmbGV4OjAgMCA2MCU7fQouYmxrLTJnemd3IC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWJvZHksCi5ibGstMmd6Z3cgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLWJvZHl7ZmxleDowIDAgY2FsYyg0MCUgKyAzMHB4KTtpbmxpbmUtc2l6ZTphdXRvO21hcmdpbi10b3A6MDtibG9jay1zaXplOmNhbGMoMTAwJSAtIDYwcHgpO2FsaWduLXNlbGY6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7fQouYmxrLTJnemd3IC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWJvZHl7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6LTMwcHg7fQouYmxrLTJnemd3IC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1ib2R5e21hcmdpbi1sZWZ0Oi0zMHB4O21hcmdpbi1yaWdodDowO30KLyogUG9zaWNp824gJ2JvdHRvbS1mdWxsJyBkZWwgbGVhZC1ib2R5ICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuCiAgIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuIGlubGluZS1zaXplCiAgIGVuIHZleiBkZSB3aWR0aCBwb3IgZWwgbWlzbW8gbW90aXZvIHF1ZSBlbCByZXN0byBkZSBlc3RlIGJsb3F1ZSAoZXZpdGFyCiAgIGxhIHBhbGFicmEgIndpZHRoOiIgcXVlIGVsIENNUyBkZWwgdXN1YXJpbyBlbGltaW5hIGFsIHBlZ2FyIEhUTUwvQ1NTCiAgIGRpcmVjdGFtZW50ZSkuICovCi5ibGstMmd6Z3cgLmxlYWQubGVhZC1ib2R5LWJvdHRvbS1mdWxsIC5sZWFkLWJvZHl7CiAgaW5saW5lLXNpemU6MTAwJTsKICBtYXJnaW46MDsKICBwYWRkaW5nLXRvcDozMHB4OwogIHBhZGRpbmctYm90dG9tOjMwcHg7CiAgYm9yZGVyOm5vbmU7Cn0KLyogRXRpcXVldGEgZGUgZXhjbHVzaXZhIChvIHRleHRvIHBlcnNvbmFsaXphZG8pICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvCiAgIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstMmd6Z3cgLmxlYWQtZXhjbHVzaXZlLXRhZ3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtsZWZ0OjEwcHg7ei1pbmRleDozO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7bGV0dGVyLXNwYWNpbmc6MC41cHg7cGFkZGluZzoycHggOHB4O2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXNpemU6LjhlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6I2ZmZjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7cG9pbnRlci1ldmVudHM6bm9uZTt9Ci8qIFNlbGVjdG9yIGNvbiAzIGNsYXNlcyAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhICgiLmxlYWQtbWVkaWEgaW1nIiB0YW1iaeluCiAgIG1hdGNoZWEgZXN0ZSA8aW1nPiB5IGxlIGdhbmFiYSBlbiBlc3BlY2lmaWNpZGFkKS4gKi8KLmJsay0yZ3pndyAubGVhZC1leGNsdXNpdmUtdGFnIC5sZWFkLWV4Y2x1c2l2ZS10YWctaWNvbntwb3NpdGlvbjpzdGF0aWM7aW5zZXQ6YXV0bztpbmxpbmUtc2l6ZToxNHB4O2Jsb2NrLXNpemU6MTRweDtvYmplY3QtZml0OmNvbnRhaW47ZmxleDowIDAgYXV0bztkaXNwbGF5OmJsb2NrO30KLmJsay0yZ3pndyAubGVhZC1jYXR7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDtwYWRkaW5nOjJweCA4cHg7dHJhbnNmb3JtOnNrZXdZKC02ZGVnKTttYXJnaW4tdG9wOi0xNXB4O21hcmdpbi1ib3R0b206MTBweDt9Ci5ibGstMmd6Z3cgLmxlYWQta2lja2VyLCAuYmxrLTJnemd3IC5sZWFkLXN1YnRpdGxlewogIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjt0ZXh0LXRyYW5zZm9ybTpub25lO21hcmdpbjowOwp9Ci5ibGstMmd6Z3cgLmxlYWQta2lja2Vye2ZvbnQtd2VpZ2h0OjcwMDt9Ci5ibGstMmd6Z3cgLmxlYWQtc3VidGl0bGV7Zm9udC13ZWlnaHQ6NjAwO30KLyogVGFtYfFvL2ludGVybGluZWFkby9jb2xvciBkZSBhbnRldO10dWxvIHkgc3VidO10dWxvIGVuIERlc2sgKHZhbG9yZXMgcG9yCiAgIGRlZmVjdG8gZGVsIGJsb3F1ZTsgZWwgb3ZlcnJpZGUgZGUgTfN2aWwgdmEgZW4gZWwgQGNvbnRhaW5lciBkZSBt4XMgYWJham8sCiAgIHlhIHF1ZSBlbCBIVE1MIGV4cG9ydGFkbyBlcyByZXNwb25zaXZlIHkgbm8gZGVwZW5kZSBkZSBxdekgdmlzdGEgdHV2aWVyYXMKICAgc2VsZWNjaW9uYWRhIGVuIGVsIGdlc3RvciBhbCBleHBvcnRhci9jb3BpYXIpLiAqLwouYmxrLTJnemd3IC5sZWFkLWtpY2tlcntmb250LXNpemU6MS4zMTI1cmVtO2xpbmUtaGVpZ2h0OjEuMTtjb2xvcjojMDBBN0ZGO30KLmJsay0yZ3pndyAubGVhZC1zdWJ0aXRsZXtmb250LXNpemU6MS4zMTI1cmVtO2xpbmUtaGVpZ2h0OjEuMTtjb2xvcjojMDBBN0ZGO30KLyogdGV4dC13cmFwOmJhbGFuY2UgJiM4MjEyOyBtaXNtbyBjcml0ZXJpbyBxdWUgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbAogICBkZWwgZ2VzdG9yICh2ZXIgY29tZW50YXJpbyBkZXRhbGxhZG8ganVudG8gYSBlc2EgcmVnbGEpOiByZXBhcnRlIGxhcwogICBs7W5lYXMgZGVsIHRpdHVsYXIgZGUgZm9ybWEgbeFzIHVuaWZvcm1lIGRlbnRybyBkZSBjYWRhIGRpc3Bvc2l0aXZvLCBzaW4KICAgcHJldGVuZGVyIGlndWFsYXIgZWwgbvptZXJvIGRlIGztbmVhcyBlbnRyZSBwbGF0YWZvcm1hcyBkaXN0aW50YXMuICovCi5ibGstMmd6Z3cgLmxlYWQtdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDtmb250LXNpemU6Mi4yNXJlbTtsaW5lLWhlaWdodDoxLjAyO21hcmdpbjowO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2U7dGV4dC13cmFwOmJhbGFuY2U7fQovKiBUaXR1bGFyIGNvbiBzYWx0b3MgZGUgbO1uZWEgaW5kZXBlbmRpZW50ZXMgcG9yIHZpc3RhICh2ZXIgYnVpbGRTY29wZWRIVE1MKToKICAgc2UgZ2VuZXJhbiBsb3MgZG9zIHRleHRvcyAoRGVzay9N83ZpbCkgeSBhcXXtIHNlIG11ZXN0cmEgc29sbyB1bm8gc2Vn+m4gZWwKICAgYW5jaG8gcmVhbCBkZWwgY29udGVuZWRvciAmIzgyMTI7IGVsIG1pc21vIG1lY2FuaXNtbyBkZSBAY29udGFpbmVyIHF1ZSB5YSB1c2EgZWwKICAgcmVzdG8gZGVsIEhUTUwgZXhwb3J0YWRvIHBhcmEgYWRhcHRhcnNlIHNpbiBkZXBlbmRlciBkZSBKUy4gKi8KLmJsay0yZ3pndyAubGVhZC10aXRsZS1tb2JpbGV7ZGlzcGxheTpub25lO30KLyogQW50ZXTtdHVsby9zdWJ07XR1bG8gY29uIHNhbHRvcyBkZSBs7W5lYSBpbmRlcGVuZGllbnRlcyBwb3IgdmlzdGE6IG1pc21vCiAgIG1lY2FuaXNtbyBkZSBAY29udGFpbmVyIHF1ZSBlbCB0aXR1bGFyICh2ZXIgYXJyaWJhKS4gKi8KLmJsay0yZ3pndyAubGVhZC1raWNrZXItbW9iaWxlLCAuYmxrLTJnemd3IC5sZWFkLXN1YnRpdGxlLW1vYmlsZXtkaXNwbGF5Om5vbmU7fQovKiBUaXR1bGFyIGRlIG5vdGljaWEgcmVsYWNpb25hZGEgKGNvbHVtbmEpIGNvbiB0ZXh0byBwcm9waW8gZW4gTfN2aWwgKHZlcgogICBpdGVtLnRpdGxlTW9iaWxlIGVuIGJ1aWxkQ29sdW1uSXRlbVRpdGxlSFRNTCk6IG1pc21vIG1lY2FuaXNtbyBkZQogICBAY29udGFpbmVyIHF1ZSBlbCB0aXR1bGFyIHByaW5jaXBhbCBkZSBhcnJpYmEuICovCi5ibGstMmd6Z3cgLnJlbGF0ZWQtdGl0bGUtbW9iaWxle2Rpc3BsYXk6bm9uZTt9Ci5ibGstMmd6Z3cgLmF1dGhvci1sYWJlbHtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Y29sb3I6I2ZmZjtmb250LXdlaWdodDoyMDA7Zm9udC1zaXplOi44ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3RleHQtYWxpZ246cmlnaHQ7ZGlzcGxheTpibG9ja30KLmJsay0yZ3pndyAuY29sdW1ue2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjEwcHg7anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO30KLmJsay0yZ3pndyAuY29sdW1uLWl0ZW17ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTtib3JkZXI6MXB4IHNvbGlkICNlN2ViZWU7cGFkZGluZzoxMHB4O2JhY2tncm91bmQ6I2ZmZjtibG9jay1zaXplOnN0cmV0Y2g7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlO30KLmJsay0yZ3pndyAudGh1bWJ7cG9zaXRpb246cmVsYXRpdmU7aW5saW5lLXNpemU6MTAwJTthc3BlY3QtcmF0aW86NC8zO2JhY2tncm91bmQ6I2VlZTtvdmVyZmxvdzpoaWRkZW59Ci5ibGstMmd6Z3cgLnRodW1iIGltZywKLmJsay0yZ3pndyAudGh1bWIgdmlkZW97cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6MTAwJTtvYmplY3QtZml0OmNvdmVyfQouYmxrLTJnemd3IC50aHVtYiAucGxheS1zcXVhcmUsCi5ibGstMmd6Z3cgLm1lZGlhLWJsb2NrLXdyYXAgLnBsYXktc3F1YXJlewogIHBvc2l0aW9uOmFic29sdXRlOyBib3R0b206NXB4OyBsZWZ0OjVweDsKICBpbmxpbmUtc2l6ZToyNXB4O2Jsb2NrLXNpemU6MjVweDtib3JkZXItcmFkaXVzOjJweDtkaXNwbGF5OmlubGluZS1ncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjsKICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC42KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4xOCk7CiAgY3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMsIHRyYW5zZm9ybSAuMTJzOwogIHotaW5kZXg6MjsgYW5pbWF0aW9uOmJsay0yZ3pndy1ibGluayAycyBlYXNlLWluLW91dCBpbmZpbml0ZTsKfQouYmxrLTJnemd3IC50aHVtYiAucGxheS1zcXVhcmU6OmJlZm9yZSwKLmJsay0yZ3pndyAubWVkaWEtYmxvY2std3JhcCAucGxheS1zcXVhcmU6OmJlZm9yZXsKICBjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aW5saW5lLXNpemU6MDtibG9jay1zaXplOjA7CiAgYm9yZGVyLWxlZnQ6NnB4IHNvbGlkICNmZmY7Ym9yZGVyLXRvcDo1cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbTo1cHggc29saWQgdHJhbnNwYXJlbnQ7CiAgbWFyZ2luLWxlZnQ6MnB4Owp9Ci5ibGstMmd6Z3cgLnRodW1iIC5wbGF5LXNxdWFyZTpob3ZlciwKLmJsay0yZ3pndyAubWVkaWEtYmxvY2std3JhcCAucGxheS1zcXVhcmU6aG92ZXJ7IGJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjg1KTsgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7IH0KLmJsay0yZ3pndyAuc3RhY2stdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjYwMDtmb250LXNpemU6MTdweDtsaW5lLWhlaWdodDoxLjE1ZW07bWFyZ2luOjA7Y29sb3I6IzJjM2U1Mzt9Ci5ibGstMmd6Z3cgLnN0YWNrLWF1dGhvcntmb250LWZhbWlseToiYW1wbGl0dWRlLWJvb2siLHNhbnMtc2VyaWY7Y29sb3I6IzgyODU5NTtmb250LXdlaWdodDoyMDA7Zm9udC1zaXplOi44cmVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtkaXNwbGF5OmJsb2NrO21hcmdpbi10b3A6MTFweDtsZXR0ZXItc3BhY2luZzowO3RleHQtYWxpZ246cmlnaHQ7fQovKiBTaW4gZXN0YSByZWdsYSBlbCBhdXRvciBxdWVkYSBwZWdhZG8ganVzdG8gZGViYWpvIGRlbCB0aXR1bGFyIGVuIHZleiBkZQogICBhYmFqbyBkZSBsYSB0YXJqZXRhOiAubW9kLXN0YWNrIG5lY2VzaXRhIHNlciBmbGV4LWNvbHVtbiBjb24KICAganVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW4gcGFyYSBxdWUgZWwgaHVlY28gc29icmFudGUgKGN1YW5kbyBsYQogICB0YXJqZXRhIGNyZWNlIG3hcyBxdWUgc3UgY29udGVuaWRvLCB2ZXIgLmNvbHVtbi1pdGVtOm5vdCgubGF5b3V0LW1lZGlhLWJsb2NrKQogICBt4XMgYWJham8pIGVtcHVqZSBlbCBhdXRvciBoYWNpYSBlbCBib3JkZSBpbmZlcmlvci4gKi8KLmJsay0yZ3pndyAubW9kLXN0YWNre2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47ZmxleDoxIDEgYXV0bzt9Ci8qIEVzdGlsbyAiZm90byBwZXF1ZfFhICsgdGl0dWxhciI6IGZvdG8gNDozIGEgbGEgaXpxdWllcmRhLCB0ZXh0byBhIGxhIGRlcmVjaGEuICovCi5ibGstMmd6Z3cgLmNvbHVtbi1pdGVtLmxheW91dC1waG90by1sZWZ0e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MTEwcHggMWZyO2dhcDoxMHB4O30KLyogRXN0aWxvICJzb2xvIHRleHRvIiAocG9yIGRlZmVjdG8pOiBlbCBhdXRvciBzZSBwb3NpY2lvbmEgZW4gYWJzb2x1dG8sCiAgIGFuY2xhZG8gYSBsYSBlc3F1aW5hIGluZmVyaW9yIGRlcmVjaGEgZGUgbGEgdGFyamV0YSAoaWd1YWwgcXVlIGVsIHBsYXkgZGUKICAgbGFzIG1pbmlhdHVyYXMpLCBlbiB2ZXogZGUgZGVwZW5kZXIgZGUgcXVlIGVsIGJsb3F1ZSBkZSB0ZXh0byB0ZW5nYSBodWVjbwogICBkZSBzb2JyYSBwYXJhIGVtcHVqYXJsbyBhYmFqbyBjb24gZmxleGJveCAmIzgyMTI7IGNvbiB07XR1bG9zIGRlIDItMyBs7W5lYXMgZXNlCiAgIGh1ZWNvIG5vIGV4aXN0ZSB5IGVsIGF1dG9yIG51bmNhIGxsZWdhYmEgYSBiYWphci4gcGFkZGluZy1ib3R0b20gZW4KICAgbGVmdC1ib2R5IHJlc2VydmEgZWwgZXNwYWNpbyBwYXJhIHF1ZSBlbCB07XR1bG8gbm8gc2Ugc29sYXBlIGNvbiDpbC4gKi8KLmJsay0yZ3pndyAuY29sdW1uLWl0ZW0ubGF5b3V0LXRpdGxlLW9ubHkgLmxlZnQtYm9keXtwYWRkaW5nLWJvdHRvbTozM3B4O30KLmJsay0yZ3pndyAuY29sdW1uLWl0ZW0ubGF5b3V0LXRpdGxlLW9ubHkgLnN0YWNrLWF1dGhvcntwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxMHB4O2JvdHRvbToxMHB4O21hcmdpbi10b3A6MDt9Ci5ibGstMmd6Z3cgLmxlZnQtdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjYwMDtmb250LXNpemU6MjFweDtsaW5lLWhlaWdodDoxLjE1O2NvbG9yOiMyYzNlNTM7bWFyZ2luOjA7dGV4dC1hbGlnbjpsZWZ0O30KLmJsay0yZ3pndyAubGVmdC1wbGF5ewogIGZsZXg6MCAwIGF1dG87aW5saW5lLXNpemU6MTVweDtibG9jay1zaXplOjE1cHg7Ym9yZGVyLXJhZGl1czoycHg7CiAgYmFja2dyb3VuZDojZmZmO2JvcmRlcjoxcHggc29saWQgIzAwYTdmZjsKICBkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MDsKICB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7bWFyZ2luLXJpZ2h0OjZweDttYXJnaW4tYm90dG9tOiA0cHg7Cn0KLmJsay0yZ3pndyAubGVmdC1wbGF5OjpiZWZvcmV7CiAgY29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2lubGluZS1zaXplOjA7YmxvY2stc2l6ZTowOwogIGJvcmRlci1sZWZ0OjRweCBzb2xpZCAjMDBhN2ZmO2JvcmRlci10b3A6M3B4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206M3B4IHNvbGlkIHRyYW5zcGFyZW50O21hcmdpbi1sZWZ0OjFweDsKfQouYmxrLTJnemd3IC5yZWxhdGVkLWxpdmUtdGFnewogIGRpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2ZsZXg6MCAwIGF1dG87CiAgZm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjYwMDsKICBmb250LXNpemU6LjdyZW07bGluZS1oZWlnaHQ6MC44O2xldHRlci1zcGFjaW5nOi4zcHg7Y29sb3I6I0ZGNTA1MDsKICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7YmFja2dyb3VuZDojZmZmO2JvcmRlcjoxcHggc29saWQgI0ZGNTA1MDsKICBwYWRkaW5nOjNweCA0cHggMnB4IDRweDttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1ib3R0b206NHB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTsKICB3aGl0ZS1zcGFjZTpub3dyYXA7Cn0KLmJsay0yZ3pndyAucmVsYXRlZC1lZGl0b3JpYWwtdGFnewogIGRpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2ZsZXg6MCAwIGF1dG87CiAgZm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjYwMDsKICBmb250LXNpemU6LjdyZW07bGluZS1oZWlnaHQ6MC44O2xldHRlci1zcGFjaW5nOi4zcHg7Y29sb3I6I0ZBQjEyMTsKICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7YmFja2dyb3VuZDojZmZmO2JvcmRlcjoxcHggc29saWQgI0ZBQjEyMTsKICBwYWRkaW5nOjNweCA0cHggMnB4IDRweDttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1ib3R0b206NHB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTsKICB3aGl0ZS1zcGFjZTpub3dyYXA7Cn0KLmJsay0yZ3pndyAucGxheS1idXR0b257CiAgLyogQW5jaG8vYWx0byBmaWpvcyBlbiB2ZXogZGUgYXNwZWN0LXJhdGlvOjEvMSAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbwogICAgIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEgKGVsCiAgICAgY+FsY3VsbyBkZSAic2hyaW5rLXRvLWZpdCIgcGFyYSB1biA8YnV0dG9uPiBlbiBhYnNvbHV0byBzaW4gdGFtYfFvCiAgICAgZXhwbO1jaXRvIG5vIGVzIGZpYWJsZSBlbnRyZSBtb3RvcmVzOyBlbiBXZWJLaXQvaU9TIGRhYmEgdW4gcmVjdOFuZ3VsbwogICAgIHZlcnRpY2FsIGVzdHJlY2jtc2ltbyBlbiB2ZXogZGUgdW4gY3VhZHJhZG8pLiAqLwogIGFwcGVhcmFuY2U6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTstbW96LWFwcGVhcmFuY2U6bm9uZTsKICBwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtsZWZ0OjEwcHg7CiAgaW5saW5lLXNpemU6MzRweDtibG9jay1zaXplOjM0cHg7CiAgZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MTBweCAxMHB4IDEwcHggMTJweDsKICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpOwogIGJvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuNDIpO2NvbG9yOiNmZmY7Ym9yZGVyLXJhZGl1czozcHg7CiAgY3Vyc29yOnBvaW50ZXI7ei1pbmRleDoyO2FuaW1hdGlvbjpibGstMmd6Z3ctYmxpbmsgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7Cn0KLmJsay0yZ3pndyAucGxheS1idXR0b24gLnBsYXktaWNvbnsKICBpbmxpbmUtc2l6ZTowO2Jsb2NrLXNpemU6MDsKICBib3JkZXItbGVmdDoxMHB4IHNvbGlkICNmZmY7Ym9yZGVyLXRvcDo2cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQgdHJhbnNwYXJlbnQ7Cn0KLmJsay0yZ3pndyAucGxheS1idXR0b24gLnBsYXktdGV4dHtkaXNwbGF5Om5vbmU7fQovKiBFbiBlbCBtb2RvICdsZWZ0JyBlbCBQbGF5IHBhc2EgYSBsYSBlc3F1aW5hIHN1cGVyaW9yIGRlcmVjaGEgJiM4MjEyOyB2ZXIgbWlzbW8KICAgYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbC4gKi8KLmJsay0yZ3pndyAubGVhZC5sZWFkLWJvZHktbGVmdCAucGxheS1idXR0b257bGVmdDphdXRvO3JpZ2h0OjEwcHg7fQoKLyogVGl0dWxhcmVzIGFuaW1hZG9zIChjYXBhIGFsdGVybmF0aXZhIHNvYnJlIGxlYWQtbWVkaWEpICYjODIxMjsgdmVyIG1pc21vCiAgIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEKICAgaGVycmFtaWVudGEuIENhZGEgdGl0dWxhciB0aWVuZSBzdSBwcm9waWEgcG9zaWNp824gKGNsYXNlIHBvcy0qLCB2ZXIKICAgYnVpbGRTY29wZWRIVE1MKSB5IHNlIHJldmVsYSBs7W5lYSBwb3IgbO1uZWEgKHVuYSB2ZXogbWVkaWRhcyBzdXMgbO1uZWFzCiAgIHJlYWxlcyBwb3IgZWwgc2NyaXB0IHN0YW5kYWxvbmUsIHZlciBidWlsZEFuaW1IZWFkbGluZXNTY3JpcHQpIGNvbiB1bmEKICAgY2FqYSBkZSBmb25kbyBkZXRy4XMgZGUgY2FkYSBs7W5lYSB5IHVuIGZhZGUgZGUgb3BhY2lkYWQgZW50cmUgdGl0dWxhcmVzLiAqLwouYmxrLTJnemd3IC5sZWFkLWFuaW0taGVhZGxpbmVzewogIHBvc2l0aW9uOmFic29sdXRlOwogIGluc2V0OjA7CiAgei1pbmRleDo0OwogIHBvaW50ZXItZXZlbnRzOm5vbmU7Cn0KLmJsay0yZ3pndyAubGVhZC1hbmltLWhlYWRsaW5lewogIHBvc2l0aW9uOmFic29sdXRlOwogIGxlZnQ6MTVweDsKICBvcGFjaXR5OjA7Cn0KLmJsay0yZ3pndyAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1ib3R0b20tbGVmdHsgYm90dG9tOjYwcHg7IH0KLmJsay0yZ3pndyAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtbGVmdHsgdG9wOjYwcHg7IH0KLmJsay0yZ3pndyAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1taWRkbGUtbGVmdHsgdG9wOjUwJTsgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7IH0KLmJsay0yZ3pndyAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtcmlnaHQsCi5ibGstMmd6Z3cgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtbWlkZGxlLXJpZ2h0LAouYmxrLTJnemd3IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1yaWdodHsgbGVmdDphdXRvOyByaWdodDoxNXB4OyB9Ci5ibGstMmd6Z3cgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtdG9wLXJpZ2h0eyB0b3A6NjBweDsgfQouYmxrLTJnemd3IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1yaWdodHsgdG9wOjUwJTsgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7IH0KLmJsay0yZ3pndyAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1ib3R0b20tcmlnaHR7IGJvdHRvbTo2MHB4OyB9Ci8qIENvbiBlbCB0ZXh0byAobGVhZC1ib2R5KSBhIGxhIGl6cXVpZXJkYSBvIGxhIGRlcmVjaGEsIGVzZSBibG9xdWUgc29sYXBhCiAgIDMwcHggZGVsIGxhZG8gZGUgbGEgZm90by927WRlbyBwZWdhZG8gYSDpbCAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbwogICBlbiBkZXRhbGxlLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLTJnemd3IC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLXRvcC1sZWZ0LAouYmxrLTJnemd3IC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1sZWZ0LAouYmxrLTJnemd3IC5sZWFkLmxlYWQtYm9keS1sZWZ0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1sZWZ0eyBsZWZ0OjQwcHg7IH0KLmJsay0yZ3pndyAubGVhZC5sZWFkLWJvZHktcmlnaHQgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtdG9wLXJpZ2h0LAouYmxrLTJnemd3IC5sZWFkLmxlYWQtYm9keS1yaWdodCAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy1taWRkbGUtcmlnaHQsCi5ibGstMmd6Z3cgLmxlYWQubGVhZC1ib2R5LXJpZ2h0IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLWJvdHRvbS1yaWdodHsgcmlnaHQ6NDBweDsgfQouYmxrLTJnemd3IC5sZWFkLWFuaW0taGVhZGxpbmUuaXMtYWN0aXZleyBvcGFjaXR5OjE7IH0KLmJsay0yZ3pndyAubGVhZC1hbmltLWxpbmV7CiAgcG9zaXRpb246cmVsYXRpdmU7CiAgZGlzcGxheTp0YWJsZTsKICBmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7CiAgZm9udC13ZWlnaHQ6OTAwOwogIGNvbG9yOiNmZmY7CiAgcGFkZGluZzoycHggOHB4OwogIGNsaXAtcGF0aDppbnNldCgwIDEwMCUgMCAwKTsKICBvcGFjaXR5OjE7CiAgdHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMgZWFzZTsKfQouYmxrLTJnemd3IC5sZWFkLWFuaW0tbGluZS5pcy1oaWRpbmd7IG9wYWNpdHk6MDsgfQovKiBTb2xhcGUgZGUgMXB4IGVudGVyYSBlbnRyZSBs7W5lYXMgcGFyYSBjZXJyYXIgZWwgaGlsbyBkZSBzdWItcO14ZWwgcXVlCiAgIHB1ZWRlIHF1ZWRhciBlbnRyZSBzdXMgY2FqYXMgZGUgZm9uZG8gKHJlZG9uZGVvIGRlIGFsdHVyYXMgZnJhY2Npb25hcmlhcykgJiM4MjEyOwogICB2ZXIgbWlzbW8gY29tZW50YXJpbywgZGV0YWxsYWRvLCBlbiBsYSBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsLiAqLwouYmxrLTJnemd3IC5sZWFkLWFuaW0tbGluZSArIC5sZWFkLWFuaW0tbGluZXsKICBtYXJnaW4tdG9wOi0xcHg7Cn0KLmJsay0yZ3pndyAubGVhZC1hbmltLWxpbmU6Zmlyc3QtY2hpbGR7IHBhZGRpbmctdG9wOjZweDsgfQouYmxrLTJnemd3IC5sZWFkLWFuaW0tbGluZTpsYXN0LWNoaWxkeyBwYWRkaW5nLWJvdHRvbTo2cHg7IH0KLmJsay0yZ3pndyAubGVhZC1hbmltLWhlYWRsaW5lLnBvcy10b3AtcmlnaHQgLmxlYWQtYW5pbS1saW5lLAouYmxrLTJnemd3IC5sZWFkLWFuaW0taGVhZGxpbmUucG9zLW1pZGRsZS1yaWdodCAubGVhZC1hbmltLWxpbmUsCi5ibGstMmd6Z3cgLmxlYWQtYW5pbS1oZWFkbGluZS5wb3MtYm90dG9tLXJpZ2h0IC5sZWFkLWFuaW0tbGluZXsgbWFyZ2luLWxlZnQ6YXV0bzsgbWFyZ2luLXJpZ2h0OjA7IH0KLmJsay0yZ3pndyAubGVhZC1hbmltLWhlYWRsaW5lcy5pcy1wb3NpdGl2ZSAubGVhZC1hbmltLWxpbmV7IGNvbG9yOiMwRTExMUE7IH0KLmJsay0yZ3pndyAubGVhZC1hbmltLWxpbmUtYmd7IHBvc2l0aW9uOmFic29sdXRlOyBpbnNldDowOyB6LWluZGV4Oi0xOyB9Ci5ibGstMmd6Z3cgLmxlYWQtYW5pbS1saW5lLXRleHR7IHBvc2l0aW9uOnJlbGF0aXZlOyB9CkBrZXlmcmFtZXMgYmxrLTJnemd3LWFuaW0tbGluZS1yZXZlYWx7IHRveyBjbGlwLXBhdGg6aW5zZXQoMCAwIDAgMCk7IH0gfQoKLyogQW5jaG9yIG92ZXJsYXkgZm9yIGZ1bGwgY2xpY2thYmxlIGxlYWQgKi8KLmJsay0yZ3pndyAubGVhZC1saW5re3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7ei1pbmRleDoxfQoKLyogSG92ZXIgb3BhY2l0eSBhbmltYXRpb24gKi8KLmJsay0yZ3pndyAubGVhZDpob3ZlciAubGVhZC10aXRsZSwKLmJsay0yZ3pndyAuY29sdW1uLWl0ZW06aG92ZXJ7b3BhY2l0eTouOH0KLyogRm90byBwcmluY2lwYWwgKGZhbGxiYWNrL3NpbmdsZSkgbyBjYXJydXNlbCBkZSBmb3Rvczogb3BhY2lkYWQgMC45IGFsCiAgIHBhc2FyIGVsIHJhdPNuIHBvciBsYSB0YXJqZXRhICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuCiAgIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuIE5vIGFwbGljYSBhIHbtZGVvIG5pIGFsCiAgIGNvbXBhcmFkb3IgYW50ZXMvZGVzcHXpcy4gKi8KLmJsay0yZ3pndyAubGVhZC1tZWRpYSA+IGltZywKLmJsay0yZ3pndyAubGVhZC1tZWRpYSA+IC5sZWFkLWNhcm91c2Vse3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTt9Ci5ibGstMmd6Z3cgLmxlYWQ6aG92ZXIgLmxlYWQtbWVkaWEgPiBpbWcsCi5ibGstMmd6Z3cgLmxlYWQ6aG92ZXIgLmxlYWQtbWVkaWEgPiAubGVhZC1jYXJvdXNlbHtvcGFjaXR5Oi45O30KLyogRW4gZWwgYW5jaG8gbfN2aWwgKG1pc21vIEBjb250YWluZXIgcXVlIGVsIHJlc3RvIGRlbCBIVE1MIGV4cG9ydGFkbykgbm8KICAgYXBsaWNhIGVzdGEgYW5pbWFjafNuIGRlIG9wYWNpZGFkIHNvYnJlIGxhIG5vdGljaWEgcHJpbmNpcGFsOiB2YSBERVNQVclTCiAgIGRlIGxhIHJlZ2xhIGdlbmVyYWwgZGUgYXJyaWJhIChtaXNtYSBlc3BlY2lmaWNpZGFkKSBwYXJhIHBvZGVyIGdhbmFybGUuCiAgIE9taXRpZG8sIGlndWFsIHF1ZSBlbCBibG9xdWUgZGUgdGlwb2dyYWbtYSBkZSBhcnJpYmEsIG1pZW50cmFzIGxhCiAgIHNpbXVsYWNp824gZGUgYW5jaG8gZXN06SBhY3RpdmEgKHZlciBsZWFkV2lkdGhQcmV2aWV3KS4gKi8KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjg2MHB4KXsKICAuYmxrLTJnemd3IC5sZWFkOmhvdmVyIC5sZWFkLXRpdGxlLAogIC5ibGstMmd6Z3cgLmxlYWQ6aG92ZXIgLmxlYWQtbWVkaWEgPiBpbWcsCiAgLmJsay0yZ3pndyAubGVhZDpob3ZlciAubGVhZC1tZWRpYSA+IC5sZWFkLWNhcm91c2Vse29wYWNpdHk6MTt9Cn0KCi8qIEFuaW1hY2nzbiBjb21wYXJ0aWRhIHBsYXkgcHJpbmNpcGFsICsgY3VhZHJhZG9zIHBsYXkgYXBpbGFkYXMgKi8KQGtleWZyYW1lcyBibGstMmd6Z3ctYmxpbmt7CiAgMCUsMTAwJXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC43KX0KICA1MCV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMTY1LDI1NSwwLjkpfQp9Ci8qIENhYmVjZXJhICovCi5ibGstMmd6Z3cgLmJnLXNlY3Rpb24tdGl0bGV7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW46MTBweCAwIDMycHh9Ci5ibGstMmd6Z3cgLmZuZC1saW5lYXtpbmxpbmUtc2l6ZToxMDAlO2Jsb2NrLXNpemU6NXB4O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7bWFyZ2luLXRvcDotMThweDtib3JkZXItdG9wOjFweCBzb2xpZCAjMzMzO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICMzMzN9Ci5ibGstMmd6Z3cgLnNlY3Rpb24tdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dGV4dC1hbGlnbjpjZW50ZXI7bWFyZ2luOjA7bGluZS1oZWlnaHQ6MS4yO2xldHRlci1zcGFjaW5nOi0xcHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2JhY2tncm91bmQ6I2ZmZjtwYWRkaW5nOjRweCAxM3B4O2JvcmRlcjoxcHggc29saWQgIzBFMTExQTt0cmFuc2Zvcm06cm90YXRlWCg1ZGVnKSByb3RhdGVZKC0yNWRlZykgc2tld1goMGRlZyk7Zm9udC1zaXplOjQycHg7Y29sb3I6IzBFMTExQTt9CkBjb250YWluZXIgKG1heC1pbmxpbmUtc2l6ZTo4NjBweCl7LmJsay0yZ3pndyAuc2VjdGlvbi10aXRsZXtmb250LXNpemU6MjdweDtwYWRkaW5nOjAgMTBweH19Ci8qIENhYmVjZXJhICYjODIxMjsgRGlzZfFvIDIgKHRpdHVsYXIgKyBjYXJydXNlbCBkZSBsb2dvdGlwb3MpICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwKICAgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstMmd6Z3cgLmhlYWRlcjJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MjBweDtwYWRkaW5nLWJvdHRvbTo1cHg7bWFyZ2luLWJvdHRvbToxMHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkICMwRTExMUE7fQovKiBhbGlnbi1zZWxmOmZsZXgtZW5kIGZpamEgZWwgdGl0dWxhciBTSUVNUFJFIGEgMTVweCBkZSBsYSBs7W5lYSBzZXBhcmFkb3JhCiAgIGVuIERlc2sgJiM4MjEyOyB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zCiAgIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay0yZ3pndyAuaGVhZGVyMi1sZWZ0e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7ZmxleDoxIDEgNTAlO21pbi1pbmxpbmUtc2l6ZTowO2FsaWduLXNlbGY6ZmxleC1lbmQ7fQouYmxrLTJnemd3IC5oZWFkZXIyLXRhZ3N7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2ZsZXg6MCAwIGF1dG87fQovKiBNaXNtbyB0YW1h8W8vdGlwb2dyYWbtYSBxdWUgLmxlYWQtZXhjbHVzaXZlLXRhZyAobGEgZGUgbGEgbm90aWNpYQogICBwcmluY2lwYWwpICYjODIxMjsgdmVyIG1pc21vIGJsb3F1ZSwgY29tZW50YWRvIGVuIGRldGFsbGUsIGVuIGxhIGhvamEgZGUKICAgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGEuICovCi5ibGstMmd6Z3cgLmhlYWRlcjItY2F0LXRhZywKLmJsay0yZ3pndyAuaGVhZGVyMi1leGNsdXNpdmUtdGFne2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MnB4O2ZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjtmb250LXdlaWdodDo3MDA7Zm9udC1zaXplOi44ZW07bGV0dGVyLXNwYWNpbmc6LjVweDtwYWRkaW5nOjJweCA4cHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3doaXRlLXNwYWNlOm5vd3JhcDtjb2xvcjojZmZmO30KLmJsay0yZ3pndyAuaGVhZGVyMi1leGNsdXNpdmUtdGFnLWljb257cG9zaXRpb246c3RhdGljO2luc2V0OmF1dG87aW5saW5lLXNpemU6MTRweDtibG9jay1zaXplOjE0cHg7b2JqZWN0LWZpdDpjb250YWluO2ZsZXg6MCAwIGF1dG87ZGlzcGxheTpibG9jazt9Ci5ibGstMmd6Z3cgLmhlYWRlcjItdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDtmb250LXNpemU6MzZweDtsaW5lLWhlaWdodDoxLjA1O2NvbG9yOiMwRTExMUE7bWFyZ2luOjA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO21pbi1pbmxpbmUtc2l6ZTowO292ZXJmbG93LXdyYXA6YnJlYWstd29yZDt9Ci8qIFNlcGFyYWNp824gZGUgMTBweCBlbnRyZSBlbCB0ZXh0byBkZSBwYXRyb2NpbmlvIHkgZWwgbG9nbyBlbiBEZXNrICYjODIxMjsgZW4KICAgTfN2aWwgc2lndWUgc2luIHNlcGFyYWNp824gKGdhcDowLCB2ZXIgQGNvbnRhaW5lciBt4XMgYWJham8pLiAqLwouYmxrLTJnemd3IC5oZWFkZXIyLWxvZ29zLXdyYXB7ZmxleDowIDAgYXV0bzttYXgtaW5saW5lLXNpemU6NTAlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO30KLyogRXRpcXVldGEgb3BjaW9uYWwganVudG8gYWwgY2FycnVzZWwgZGUgbG9nb3MgKHAuZWouICJQYXRyb2NpbmFkbyBwb3I6IikgJiM4MjEyOwogICB2ZXIgbWlzbW8gYmxvcXVlLCBjb21lbnRhZG8gZW4gZGV0YWxsZSwgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbAogICBkZSBsYSBoZXJyYW1pZW50YS4gKi8KLmJsay0yZ3pndyAuaGVhZGVyMi1sb2dvcy1sYWJlbHtmb250LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtmb250LXNpemU6MTBweDtmb250LXdlaWdodDo0MDA7Y29sb3I6IzY2Nzt3aGl0ZS1zcGFjZTpub3dyYXA7fQouYmxrLTJnemd3IC5oZWFkZXIyLWxvZ29ze3Bvc2l0aW9uOnJlbGF0aXZlO2lubGluZS1zaXplOjE2MHB4O2Jsb2NrLXNpemU6NTBweDtmbGV4LXNocmluazowO30KLmJsay0yZ3pndyAuaGVhZGVyMi1sb2dvcyBpbWd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDttYXJnaW46YXV0bzttYXgtaW5saW5lLXNpemU6MTAwJTttYXgtYmxvY2stc2l6ZToxMDAlO29iamVjdC1maXQ6Y29udGFpbjtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC43cyBlYXNlLWluLW91dDt9Ci5ibGstMmd6Z3cgLmhlYWRlcjItbG9nb3MgaW1nLmlzLWFjdGl2ZXtvcGFjaXR5OjE7fQovKiBJZ3VhbCBxdWUgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbDogcG9yIGRlYmFqbyBkZSBlc3RlIGFuY2hvIHNlCiAgIGludGVudGEgcHJpbWVybyAxIFNPTEEgRklMQSAoZXRpcXVldGFzK3RpdHVsYXIganVudG8gYWwgbG9nbywgaWd1YWwgcXVlCiAgIGVuIERlc2ssIGEgdGFtYfFvIHJlZHVjaWRvKS4gRWwgYmxvcXVlIGRlIGxvZ29zIG1hbnRpZW5lIFNJRU1QUkUgc3UKICAgZGlzcG9zaWNp824gZW4gY29sdW1uYSAoZXRpcXVldGEgZGUgcGF0cm9jaW5pbyBlbmNpbWEgZGVsIGxvZ28sCiAgIGFsaW5lYWRvcyBhIGxhIGRlcmVjaGEsIHNpbiBzZXBhcmFjafNuKSB0YW50byBlbiBlc3RhIGZpbGEg+m5pY2EgY29tbyBlbgogICBlbCByZXNndWFyZG8gZGUgYWJham8uIFNpIGVsIHRpdHVsYXIsIHN1bWFkbyBhbCBhbmNobyBkZSBsYXMgZXRpcXVldGFzCiAgIGFjdGl2YXMgKGNhdGVnb3LtYSB5L28gZXhjbHVzaXZhLCBzaSBsYXMgaGF5KSwgc3VwZXJhIGVsIDU1JSBkZWwgYW5jaG8KICAgdG90YWwgZGUgbGEgY2FiZWNlcmEgKGNhZGEgdW5vIG1lZGlkbyBhIHVuYSBzb2xhIGztbmVhKSwgZWwgc2NyaXB0CiAgIHN0YW5kYWxvbmUgYfFhZGlkbyBhbCBmaW5hbCBkZSBlc3RlIEhUTUwgKHZlcgogICBidWlsZEhlYWRlcjJTdGFja2luZ1NjcmlwdCgpKSBsbyBkZXRlY3RhIG1pZGllbmRvIHN1IGFuY2hvIG5hdHVyYWwKICAgeSBh8WFkZSBsYSBjbGFzZSAiaGVhZGVyMi1zdGFja2VkIjogZWwgYmxvcXVlIGRlCiAgIGxvZ29zIHN1YmUgZW50b25jZXMgYSBzdSBwcm9waWEgZmlsYSAoYWxpbmVhZG8gYSBsYSBkZXJlY2hhKSB5CiAgIHRpdHVsYXIrZXRpcXVldGFzIGJhamFuIGEgbGEgZmlsYSBkZSBhYmFqbywgYSBhbmNobyBjb21wbGV0byAmIzgyMTI7IG1pc21vCiAgIGxheW91dCBkZSAyIGZpbGFzIHF1ZSBoYWLtYSBhbnRlcyBzaWVtcHJlIHBvciBkZWJham8gZGUgZXN0ZSBicmVha3BvaW50LAogICBhaG9yYSBzb2xvIGNvbW8gcmVzZ3VhcmRvLiBEZW50cm8gZGUgZXNlIHJlc2d1YXJkbywgY29uIGV0aXF1ZXRhKHMpIGVsCiAgIHRpdHVsYXIgcGFzYSBhZGVt4XMgYSBzdSBQUk9QSUEgZmlsYSBhIGFuY2hvIGNvbXBsZXRvLCBkZWJham8gZGUgbGEgZmlsYSBkZSBldGlxdWV0YXMgKHZlcgogICAiLmhlYWRlcjItc3RhY2tlZCAuaGVhZGVyMi1sZWZ0IiBt4XMgYWJham8pLiBFbCBsb2dvIHNlIHJlZHVjZSB1biAyMCUKICAgKDE2MHg1MCAmIzg1OTQ7IDEyOHg0MCkuCiAgIGFsaWduLXNlbGY6ZmxleC1lbmQgZW4gaGVhZGVyMi1sZWZ0IGZpamEgZWwgdGl0dWxhciBTSUVNUFJFIGEgbG9zIDEwcHgKICAgZGVsIHBhZGRpbmctYm90dG9tIHJlc3BlY3RvIGEgbGEgbO1uZWEgc2VwYXJhZG9yYSAmIzgyMTI7IG1pc21vIGNyaXRlcmlvIHF1ZQogICBlbiBEZXNrICh2ZXIgaGVhZGVyMi1sZWZ0IG3hcyBhcnJpYmEpOiBzaW4gZXN0bywgYWwgc2VyIGVsIGJsb3F1ZSBkZQogICBsb2dvcyBt4XMgYWx0byBxdWUgZWwgdGl0dWxhciwgZWwgY2VudHJhZG8gdmVydGljYWwgZGVsIHJvdyBkZWphYmEgdW4KICAgaHVlY28gbWF5b3IgZW50cmUgZWwgdGl0dWxhciB5IGxhIGztbmVhLiBFbCBibG9xdWUgZGUgbG9nb3Mgc2lndWUKICAgY2VudHJhZG8gKHNpbiBlc2Ugb3ZlcnJpZGUpLiAqLwpAY29udGFpbmVyIChtYXgtaW5saW5lLXNpemU6NDgwcHgpewogIC5ibGstMmd6Z3cgLmhlYWRlcjJ7ZmxleC1kaXJlY3Rpb246cm93O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nLWxlZnQ6MTBweDtwYWRkaW5nLXJpZ2h0OjEwcHg7cGFkZGluZy1ib3R0b206MTBweDt9CiAgLmJsay0yZ3pndyAuaGVhZGVyMi1sZWZ0e29yZGVyOjE7YWxpZ24tc2VsZjpmbGV4LWVuZDt9CiAgLmJsay0yZ3pndyAuaGVhZGVyMi1sb2dvcy13cmFwe29yZGVyOjI7YWxpZ24tc2VsZjpjZW50ZXI7bWF4LWlubGluZS1zaXplOm5vbmU7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dhcDowO30KICAuYmxrLTJnemd3IC5oZWFkZXIyLWxvZ29ze2lubGluZS1zaXplOjEyOHB4O2Jsb2NrLXNpemU6NDBweDt9CiAgLmJsay0yZ3pndyAuaGVhZGVyMi10aXRsZXtmb250LXNpemU6MjdweDt9CiAgLmJsay0yZ3pndyAuaGVhZGVyMi5oZWFkZXIyLXN0YWNrZWR7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7fQogIC5ibGstMmd6Z3cgLmhlYWRlcjIuaGVhZGVyMi1zdGFja2VkIC5oZWFkZXIyLWxlZnR7b3JkZXI6MjthbGlnbi1zZWxmOmZsZXgtc3RhcnQ7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOnN0cmV0Y2g7Z2FwOjVweDt9CiAgLmJsay0yZ3pndyAuaGVhZGVyMi5oZWFkZXIyLXN0YWNrZWQgLmhlYWRlcjItbG9nb3Mtd3JhcHtvcmRlcjoxO21heC1pbmxpbmUtc2l6ZToxMDAlO2FsaWduLXNlbGY6ZmxleC1lbmQ7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dhcDowO30KICAvKiBSZXNndWFyZG8gaW50ZXJtZWRpbyAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICAgIGhvamEgZGUgZXN0aWxvcyBwcmluY2lwYWwgZGUgbGEgaGVycmFtaWVudGE6IHNvbG8gZWwgdGl0dWxhciBiYWphIGEgc3UKICAgICBwcm9waWEgZmlsYSBhIGFuY2hvIGNvbXBsZXRvIGN1YW5kbyBsYXMgZXRpcXVldGFzIFPNIGNhYmVuIGp1bnRvIGFsCiAgICAgbG9nbyBwZXJvIGVsIHRpdHVsYXIgbm8uIGhlYWRlcjItbGVmdCBwYXNhIGRlIGZpbGEgYSBjb2x1bW5hCiAgICAgKGV0aXF1ZXRhcyBhcnJpYmEsIHRpdHVsYXIgZGViYWpvKSB5IHJlY3VwZXJhIGFsaWduLXNlbGY6YXV0byBwYXJhCiAgICAgY2VudHJhcnNlIHZlcnRpY2FsbWVudGUgY29udHJhIGVsIGxvZ28gKGFsaWduLXNlbGY6Y2VudGVyIGRlIGxhIHJlZ2xhCiAgICAgYmFzZSBkZSAuaGVhZGVyMi1sb2dvcy13cmFwLCBhcnJpYmEpLCBpZ3VhbCBxdWUgZW4gZWwgcmVzdG8gZGUgZXN0YWRvcy4gKi8KICAuYmxrLTJnemd3IC5oZWFkZXIyLmhlYWRlcjItdGl0bGUtYmVsb3cgLmhlYWRlcjItbGVmdHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6c3RyZXRjaDthbGlnbi1zZWxmOmF1dG87Z2FwOjVweDt9Cn0KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjg2MHB4KXsKICAuYmxrLTJnemd3IC5jb2x1bW57ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dhcDoxMHB4O30KICAuYmxrLTJnemd3IC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tbGVmdCwKICAuYmxrLTJnemd3IC5jb2x1bW4taXRlbS5tb2ItZ3JpZC1zdGFuZGFsb25le2dyaWQtY29sdW1uOjEgLyAtMTt9CiAgLyogIWltcG9ydGFudDogbGEgcHJvcG9yY2nzbiBwcm9waWEgZGUgY2FkYSBub3RpY2lhICh2ZXIgbWVkaWFBc3BlY3RSYXRpbykKICAgICBzZSBhcGxpY2EgY29tbyBlc3RpbG8gaW5saW5lIHNvYnJlIGVsIHByb3BpbyAudGh1bWIgJiM4MjEyOyBzaW4gIWltcG9ydGFudAogICAgIGVzdGUgcmVzZ3VhcmRvIGRlbCBncmlkIGRlIDIgY29sdW1uYXMgZGVqYXLtYSBkZSB0ZW5lciBlZmVjdG8gZW4gY3VhbnRvCiAgICAgdW5hIG5vdGljaWEgdHJhamVyYSB1bmEgcHJvcG9yY2nzbiBkaXN0aW50YSBkZSA0OjMgKHZlciBtaXNtbyBjb21lbnRhcmlvLAogICAgIGRldGFsbGFkbywgZW4gbGEgaG9qYSBkZSBlc3RpbG9zIHByaW5jaXBhbCBkZSBsYSBoZXJyYW1pZW50YSkuICovCiAgLmJsay0yZ3pndyAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcDpub3QoLm1vYi1ncmlkLXN0YW5kYWxvbmUpIC50aHVtYnthc3BlY3QtcmF0aW86NC8zICFpbXBvcnRhbnQ7fQogIC5ibGstMmd6Z3cgLmNvbHVtbi1pdGVtLmxheW91dC1waG90by10b3A6bm90KC5tb2ItZ3JpZC1zdGFuZGFsb25lKSAubGVmdC10aXRsZXtmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6MS4yZW07dGV4dC10cmFuc2Zvcm06bm9uZTtmb250LXdlaWdodDo2MDA7fQp9Ci8qIEVzdGlsbyAiZm90byBncmFuZGUgKyB0aXR1bGFyIjogZm90byAxNjo5IGFycmliYSwgdGl0dWxhciBkZWJham8gJiM4MjEyOyBlbGVnaWJsZQogICBwb3Igbm90aWNpYSBkZXNkZSBlbCBnZXN0b3IuIE5vIHNlIHJlc3RyaW5nZSBjb24gQGNvbnRhaW5lciBwb3JxdWUKICAgLmNvbHVtbi1pdGVtIHlhIGVzIGJsb2NrIHBvciBkZWZlY3RvIChlbCB0aHVtYiB5IGVsIHRleHRvIHNlIGFwaWxhbiBzb2xvcwogICBzaW4gbeFzIGFqdXN0ZSksIGFz7SBxdWUgZWwgZGlzZfFvIGZ1bmNpb25hIGlndWFsIGRlIGJpZW4gZW4gY3VhbHF1aWVyCiAgIGFuY2hvLCBEZXNrIG8gTfN2aWwuICovCi5ibGstMmd6Z3cgLmNvbHVtbi1pdGVtLmxheW91dC1waG90by10b3B7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjt9Ci5ibGstMmd6Z3cgLmNvbHVtbi1pdGVtLmxheW91dC1waG90by10b3AgLnRodW1ie2lubGluZS1zaXplOjEwMCU7YXNwZWN0LXJhdGlvOjE2Lzk7bWFyZ2luLWJvdHRvbToxMHB4O30KLmJsay0yZ3pndyAuY29sdW1uLWl0ZW0ubGF5b3V0LXBob3RvLXRvcCAubGVmdC10aXRsZXtmb250LWZhbWlseToiYW1wbGl0dWRlLW1lZGl1bS1jb25kZW5zZWQiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjJlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Zm9udC13ZWlnaHQ6OTAwO30KLyogRW4gTfN2aWwgZWwgdGl0dWxhciBkZSBlc3RlIGRpc2XxbyBzZSBtdWVzdHJhIG3hcyBncmFuZGUgKDEuNXJlbSBlbiB2ZXogZGUKICAgbG9zIDEuMnJlbSBkZSBEZXNrKSAmIzgyMTI7IG1pc21hIGVzcGVjaWZpY2lkYWQgKDMgY2xhc2VzKSBxdWUgbGEgcmVnbGEgZGUKICAgYXJyaWJhOyBhbCBpciBERVNQVclTIGVuIGVsIENTUyBnYW5hIHBvciBvcmRlbiBkZSBjYXNjYWRhLiBTZSB1c2EgZWwKICAgYnJlYWtwb2ludCBkZSA0ODBweCAoZWwgZGUgdGlwb2dyYWbtYSBlbiBlc3RhIGFwcCwgbm8gZWwgZGUgODYwcHggcXVlIGFxde0KICAgc29sbyBnb2JpZXJuYSBlbCBhcGlsYWRvIGRlIGNvbHVtbmFzKSBwYXJhIHF1ZSBjb2luY2lkYSBjb24gZWwgcmVzdG8gZGUKICAgY2FtYmlvcyBkZSB0ZXh0by90YW1h8W8gcG9yIHZpc3RhLiBObyBhZmVjdGEgYWwgcmVzZ3VhcmRvIGRlIDIgY29sdW1uYXMgZW4KICAgbfN2aWwgKG1vYi1ncmlkKSwgbeFzIGVzcGVj7WZpY28gKDE4cHgsIHZlciBt4XMgYXJyaWJhKS4gKi8KQGNvbnRhaW5lciAobWF4LWlubGluZS1zaXplOjQ4MHB4KXsKICAuYmxrLTJnemd3IC5jb2x1bW4taXRlbS5sYXlvdXQtcGhvdG8tdG9wIC5sZWZ0LXRpdGxle2ZvbnQtc2l6ZToxLjVyZW07fQp9Ci8qIEVzdGlsbyAiQmxvcXVlIG1lZGlhIiAmIzgyMTI7IHZlciBtaXNtbyBibG9xdWUsIGNvbWVudGFkbyBlbiBkZXRhbGxlLCBlbiBsYQogICBob2phIGRlIGVzdGlsb3MgcHJpbmNpcGFsIGRlIGxhIGhlcnJhbWllbnRhLiAqLwouYmxrLTJnemd3IC5tZWRpYS1ibG9jay1tZWRpYXtkaXNwbGF5OmJsb2NrO2lubGluZS1zaXplOjEwMCU7YmxvY2stc2l6ZTphdXRvO30KLmJsay0yZ3pndyAubWVkaWEtYmxvY2std3JhcHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrO30KLmJsay0yZ3pndyAubWVkaWEtYmxvY2staWZyYW1lLXdyYXB7cG9zaXRpb246cmVsYXRpdmU7aW5saW5lLXNpemU6MTAwJTthc3BlY3QtcmF0aW86MTYvOTtiYWNrZ3JvdW5kOiMwMDA7b3ZlcmZsb3c6aGlkZGVuO30KLmJsay0yZ3pndyAubWVkaWEtYmxvY2staWZyYW1lLXdyYXAgaWZyYW1le3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7aW5saW5lLXNpemU6MTAwJTtibG9jay1zaXplOjEwMCU7Ym9yZGVyOjA7ZGlzcGxheTpibG9jazt9Ci5ibGstMmd6Z3cgLmNvbHVtbi1pdGVtLmxheW91dC1tZWRpYS1ibG9ja3tib3JkZXI6bm9uZTtwYWRkaW5nOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtibG9jay1zaXplOmF1dG87ZmxleDowIDAgYXV0bzt9Ci5ibGstMmd6Z3cgLmNvbHVtbi1pdGVtOm5vdCgubGF5b3V0LW1lZGlhLWJsb2NrKXtmbGV4OjEgMSBhdXRvO30KPC9zdHlsZT4KCjxkaXYgY2xhc3M9ImJsay0yZ3pndyI+CiAgCiAgPG1haW4gY2xhc3M9InBhZ2UiPgogICAgCiAgICA8YXJ0aWNsZSBjbGFzcz0ibGVhZCBpcy1hcHBlYXJhbmNlLXBvc2l0aXZlIGxlYWQtYm9keS1ib3R0b20tZnVsbCI+CiAgICAgIDxkaXYgY2xhc3M9ImxlYWQtbWVkaWEiPgogICAgICAgIDxpbWcgc3JjPSJodHRwczovL29rZGlhcmlvLmNvbS9lc3BlY2lhbGVzL2FwcHMvbWVkaWEvb2tkaWFyaW8tZGVzY3VicmUtZWwtcGlzby1mcmFuY28tZW4tZWwtcXVlLWxhLW9uZy1uby1uYW1lLWtpdGNoZW4tZXNjb25kZS1hLWxvcy1pbGVnYWxlcy15LWxlcy1zdW1pbmlzdHJhLW1hdGVyaWFsLXBhcmEtY29jdGVsZXMtbW9sb3Rvdi0yMDI2MDgyOS0yMjI1MTEtMGM3MWRiLmpwZyIgYWx0PSJPS0RJQVJJTyBkZXNjdWJyZSBlbCAmIzM5O3Bpc28gZnJhbmNvJiMzOTsgZW4gZWwgcXVlIGxhIE9ORyBObyBOYW1lIEtpdGNoZW4gZXNjb25kZSBhIGxvcyBpbGVnYWxlcyB5IGxlcyBzdW1pbmlzdHJhIG1hdGVyaWFsIHBhcmEgY/NjdGVsZXMgbW9sb3RvdiIgbG9hZGluZz0iZWFnZXIiIGZldGNocHJpb3JpdHk9ImhpZ2giIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgPGRpdiBjbGFzcz0ibGVhZC1vdmVybGF5IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDE0LDE3LDI2LDAuMDApOyI+PC9kaXY+CiAgICAgICAgCiAgICAgICAgPGJ1dHRvbiBjbGFzcz0icGxheS1idXR0b24iIGFyaWEtaGlkZGVuPSJ0cnVlIj48ZGl2IGNsYXNzPSJwbGF5LWljb24iPjwvZGl2PjxzcGFuIGNsYXNzPSJwbGF5LXRleHQiPlBsYXk8L3NwYW4+PC9idXR0b24+CiAgICAgICAgCiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJsZWFkLWJvZHkiPgogICAgICAgIDxzcGFuIGNsYXNzPSJsZWFkLWNhdCIgc3R5bGU9ImJhY2tncm91bmQ6IzAwQTdGRjtjb2xvcjojZmZmIj5FU1BB0UE8L3NwYW4+CiAgICAgICAgCiAgICAgICAgPGgyIGNsYXNzPSJsZWFkLXRpdGxlIj48c3BhbiBjbGFzcz0ibGVhZC10aXRsZS1kZXNrIj5PS0RJQVJJTyBkZXNjdWJyZSBlbCAmIzM5O3Bpc28gZnJhbmNvJiMzOTsgZW4gZWwgcXVlIGxhIE9ORyBObyBOYW1lIEtpdGNoZW4gZXNjb25kZSBhIGxvcyBpbGVnYWxlcyB5IGxlcyBzdW1pbmlzdHJhIG1hdGVyaWFsIHBhcmEgY/NjdGVsZXMgbW9sb3Rvdjwvc3Bhbj48c3BhbiBjbGFzcz0ibGVhZC10aXRsZS1tb2JpbGUiPk9LRElBUklPIGRlc2N1YnJlIGVsICYjMzk7cGlzbyBmcmFuY28mIzM5OyBlbiBlbCBxdWUgbGEgT05HIE5vIE5hbWUgS2l0Y2hlbiBlc2NvbmRlIGEgbG9zIGlsZWdhbGVzIHkgbGVzIHN1bWluaXN0cmEgbWF0ZXJpYWwgcGFyYSBj82N0ZWxlcyBtb2xvdG92PC9zcGFuPjwvaDI+CiAgICAgICAgCiAgICAgICAgPHNwYW4gY2xhc3M9ImF1dGhvci1sYWJlbCI+Q2FybWVuIFZpbGxhcnJ1YmlhIHkgQWxlamFuZHJvIEZlcm7hbmRlejwvc3Bhbj4KICAgICAgPC9kaXY+CiAgICAgIDxhIGNsYXNzPSJsZWFkLWxpbmsiIGhyZWY9Imh0dHBzOi8vb2tkaWFyaW8uY29tL2VzcGFuYS9va2RpYXJpby1kZXNjdWJyZS1waXNvLWZyYW5jby1xdWUtb25nLW5vLW5hbWUta2l0Y2hlbi1lc2NvbmRlLWlsZWdhbGVzLWxlcy1zdW1pbmlzdHJhLW1hdGVyaWFsLWNvY3RlbGVzLW1vbG90b3YtMjAxOTQxNjMiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIiB0aXRsZT0iT0tESUFSSU8gZGVzY3VicmUgZWwgJiMzOTtwaXNvIGZyYW5jbyYjMzk7IGVuIGVsIHF1ZSBsYSBPTkcgTm8gTmFtZSBLaXRjaGVuIGVzY29uZGUgYSBsb3MgaWxlZ2FsZXMgeSBsZXMgc3VtaW5pc3RyYSBtYXRlcmlhbCBwYXJhIGPzY3RlbGVzIG1vbG90b3YiIGFyaWEtbGFiZWw9Ik9LRElBUklPIGRlc2N1YnJlIGVsICYjMzk7cGlzbyBmcmFuY28mIzM5OyBlbiBlbCBxdWUgbGEgT05HIE5vIE5hbWUgS2l0Y2hlbiBlc2NvbmRlIGEgbG9zIGlsZWdhbGVzIHkgbGVzIHN1bWluaXN0cmEgbWF0ZXJpYWwgcGFyYSBj82N0ZWxlcyBtb2xvdG92Ij48L2E+CiAgICA8L2FydGljbGU+CiAgPC9tYWluPgo8L2Rpdj4K
    • Una ONG alemana instala un puesto en la playa del Trampolín en Ceuta para regalar móviles y cargadores a los invasores
        • España
        • España

      Una ONG alemana instala un puesto en la playa del Trampolín para regalar móviles a los invasores

      El trabajo de las ONG en Ceuta no se está limitando a la asistencia médica a los miles de inmigrantes ilegales que aún siguen en la ciudad autónoma un mes después de la entrada masiva, o el reparto de comida. Algunos miembros de estas entidades han sido identificados repartiendo explosivos caseros entre los invasores marroquíes, y OKDIARIO se ha encontrado con otra peculiar estampa. 
      • Carmen Villarrubia y Alejandro Fernández
      • Enviados especiales
      • Ceuta
      • 2026-08-29 19:06
    • Centenares de ceutíes vuelven a las calles en una protesta improvisada al grito de ¡Ceuta unida jamás será vencida!
        • España
        • España

      Centenares de ceutíes vuelven a las calles en una protesta improvisada al grito de "¡Ceuta unida jamás será vencida!"

      • Neila Gallego
      • 2026-08-29 22:09
    • Los narcos hacen negocio con la invasión: alquilan garajes a los ilegales para que se escondan de la Policía
        • España
        • España

      Los narcos hacen negocio con la invasión: alquilan garajes a los ilegales para que se escondan...

      • Rosalina Moreno
      • 2026-08-30 05:47
    • El Gobierno reconoce que no sabe cuántos inmigrantes hay en Ceuta: Hay personas escondidas
        • España
        • España

      ...y El Gobierno reconoce que "no sabe" cuántos inmigrantes hay en Ceuta: "Hay personas escondidas"

      • Rafael Molina
      • 2026-08-30 05:45
    • El PSOE prohíbe a sus alcaldes sumarse a las concentraciones por Ceuta porque dice que el PP las usa para ir contra el Gobierno
        • España
        • España

      El PSOE prohíbe a sus alcaldes sumarse a las concentraciones por Ceuta porque dice que "el PP las usa para ir contra el Gobierno"

      El PSOE se desmarca de las protestas del 2 de septiembre en los ayuntamientos y prohíbe a sus alcaldes sumarse. La dirección socialista ha trasladado la decisión en un comunicado interno en el que acusa al PP de intentar utilizar la situación. 
      • Neila Gallego
      • 2026-08-29 22:46
    • CiAgICA8c3R5bGU+CiAgICBAaW1wb3J0IHVybCgnaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvaXFhMXFlYi5jc3MnKTsKCiAgICAvKiBUaXR1bGFyIGZpbmFsIGNhcnJ1c2VsIChIVE1MIGV4cG9ydGFkbykgKi8KICAgIC5jdi1jZjlsdSAuYmctc2VjdGlvbi10aXRsZSB7CiAgICAgIGRpc3BsYXk6ZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uOwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOwogICAgICBhbGlnbi1pdGVtczpjZW50ZXI7CiAgICAgIG1hcmdpbi1ib3R0b206NTBweDsKICAgICAgbWFyZ2luLXRvcDogOHB4OwogICAgfQogICAgLmN2LWNmOWx1IC5mbmQtbGluZWEgewogICAgICB3aWR0aDoxMDAlOwogICAgICBoZWlnaHQ6NXB4OwogICAgICBkaXNwbGF5OmZsZXg7CiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlOwogICAgICB6LWluZGV4OjE7CiAgICAgIG1hcmdpbi10b3A6LTI1cHg7CiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMzMzOwogICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzMzsKICAgIH0KICAgIC5jdi1jZjlsdSAuc2VjdGlvbi10aXRsZSB7CiAgICAgIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjsKICAgICAgZm9udC13ZWlnaHQ6OTAwOwogICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7CiAgICAgIHRleHQtYWxpZ246Y2VudGVyOwogICAgICBtYXJnaW46MDsKICAgICAgbGluZS1oZWlnaHQ6MS4yOwogICAgICBsZXR0ZXItc3BhY2luZzotMXB4OwogICAgICBwb3NpdGlvbjpyZWxhdGl2ZTsKICAgICAgei1pbmRleDoyOwogICAgICBiYWNrZ3JvdW5kOiNmZmY7CiAgICAgIHBhZGRpbmc6NHB4IDEzcHggNHB4IDEzcHg7CiAgICAgIGJvcmRlcjoxcHggc29saWQgIzMzMzsKICAgICAgZm9udC1zaXplOjQycHg7CiAgICAgIHRyYW5zZm9ybTpyb3RhdGVYKDVkZWcpIHJvdGF0ZVkoLTI1ZGVnKSBza2V3WCgwZGVnKTsKICAgIH0KCiAgICAuY3YtY2Y5bHUgLmNhcm91c2VsewogICAgICAtLWdhcDoxNnB4OwogICAgICBkaXNwbGF5OmZsZXg7CiAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjsKICAgICAgZ2FwOnZhcigtLWdhcCk7CiAgICAgIG92ZXJmbG93OmhpZGRlbjsKICAgICAgcGFkZGluZy1ib3R0b206NnB4OwogICAgfQogICAgLnJvdyBzZWN0aW9ueyB3aWR0aDotd2Via2l0LWZpbGwtYXZhaWxhYmxlOyB9CiAgICAuY3YtY2Y5bHUgLnNlY3Rpb257IHdpZHRoOi13ZWJraXQtZmlsbC1hdmFpbGFibGU7IH0KICAgIC5jdi1jZjlsdSAudHJhY2t7CiAgICAgIGRpc3BsYXk6ZmxleDsKICAgICAgZ2FwOnZhcigtLWdhcCk7CiAgICAgIG92ZXJmbG93LXg6aGlkZGVuOwogICAgICBzY3JvbGwtc25hcC10eXBlOnggbWFuZGF0b3J5OwogICAgICBzY3JvbGwtYmVoYXZpb3I6c21vb3RoOwogICAgfQogICAgLmN2LWNmOWx1IC5jYXJkewogICAgICBwb3NpdGlvbjpyZWxhdGl2ZTsKICAgICAgZmxleDowIDAgYXV0bzsKICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246c3RhcnQ7CiAgICAgIHdpZHRoOmNhbGMoKDEwMCUgLSAzKnZhcigtLWdhcCkpLzQpOwogICAgICBhc3BlY3QtcmF0aW86OS8xNjsKICAgICAgYm9yZGVyLXJhZGl1czoxMHB4OwogICAgICBvdmVyZmxvdzpoaWRkZW47CiAgICAgIGJhY2tncm91bmQ6IzExMTsKICAgICAgaXNvbGF0aW9uOmlzb2xhdGU7CiAgICB9CiAgICAuY3YtY2Y5bHUgLmNhcmQgaW1newogICAgICBwb3NpdGlvbjphYnNvbHV0ZTsKICAgICAgaW5zZXQ6MDsKICAgICAgd2lkdGg6MTAwJTsKICAgICAgaGVpZ2h0OjEwMCU7CiAgICAgIG9iamVjdC1maXQ6Y292ZXI7CiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMzVzIGVhc2UsIG9wYWNpdHkgLjI1cyBlYXNlOwogICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDEpOwogICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5OwogICAgICBzY2FsZTogMS4wMjsKICAgIH0KICAgIC5jdi1jZjlsdSAuY2FyZDpob3ZlciBpbWcsCiAgICAuY3YtY2Y5bHUgLmNhcmQ6Zm9jdXMtdmlzaWJsZSBpbWd7CiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNik7CiAgICB9CgogICAgLmN2LWNmOWx1IC5jYXJkIHZpZGVvLnRlYXNlcnsKICAgICAgcG9zaXRpb246YWJzb2x1dGU7CiAgICAgIGluc2V0OjA7CiAgICAgIHdpZHRoOjEwMCU7CiAgICAgIGhlaWdodDoxMDAlOwogICAgICBvYmplY3QtZml0OmNvdmVyOwogICAgICBvcGFjaXR5OjA7CiAgICAgIHRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGVhc2U7CiAgICAgIHBvaW50ZXItZXZlbnRzOm5vbmU7CiAgICAgIHNjYWxlOiAxLjAyOwogICAgfQogICAgLmN2LWNmOWx1IC5jYXJkLmhhcy10ZWFzZXI6aG92ZXIgaW1nLAogICAgLmN2LWNmOWx1IC5jYXJkLmhhcy10ZWFzZXI6Zm9jdXMtdmlzaWJsZSBpbWd7CiAgICAgIG9wYWNpdHk6MDsKICAgIH0KICAgIC5jdi1jZjlsdSAuY2FyZC5oYXMtdGVhc2VyOmhvdmVyIHZpZGVvLnRlYXNlciwKICAgIC5jdi1jZjlsdSAuY2FyZC5oYXMtdGVhc2VyOmZvY3VzLXZpc2libGUgdmlkZW8udGVhc2VyewogICAgICBvcGFjaXR5OjE7CiAgICB9CgogICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpewogICAgICAuY3YtY2Y5bHUgLmNhcmQgaW1neyB0cmFuc2l0aW9uOiBub25lOyB9CiAgICAgIC5jdi1jZjlsdSAuY2FyZCB2aWRlby50ZWFzZXJ7IHRyYW5zaXRpb246bm9uZTsgfQogICAgfQoKICAgIC5jdi1jZjlsdSAuc2hhZGV7CiAgICAgIHBvc2l0aW9uOmFic29sdXRlOwogICAgICBpbnNldDphdXRvIDAgMCAwOwogICAgICBoZWlnaHQ6NzAlOwogICAgICBiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgwLDAsMCwwKSAwJSwgcmdiYSgwLDAsMCwuODUpIDEwMCUpOwogICAgfQogICAgLmN2LWNmOWx1IC50aXRsZXsKICAgICAgcG9zaXRpb246YWJzb2x1dGU7CiAgICAgIGxlZnQ6MTJweDsKICAgICAgcmlnaHQ6MTJweDsKICAgICAgYm90dG9tOjEwcHg7CiAgICAgIG1hcmdpbjowOwogICAgICBjb2xvcjojZmZmOwogICAgICBmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7CiAgICAgIGZvbnQtd2VpZ2h0OjkwMDsKICAgICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOwogICAgICBkaXNwbGF5Oi13ZWJraXQtYm94OwogICAgICAtd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7CiAgICAgIG92ZXJmbG93OmhpZGRlbjsKICAgICAgdGV4dC1vdmVyZmxvdzplbGxpcHNpczsKICAgIH0KICAgIC5jdi1jZjlsdSAudGl0bGUudGl0bGUtbGFyZ2V7Zm9udC1zaXplOjI3cHg7bGluZS1oZWlnaHQ6MWVtOy13ZWJraXQtbGluZS1jbGFtcDo1O2xpbmUtY2xhbXA6NTt9CiAgICAuY3YtY2Y5bHUgLnRpdGxlLnRpdGxlLXNtYWxse2ZvbnQtc2l6ZToyMXB4O2xpbmUtaGVpZ2h0OjFlbTstd2Via2l0LWxpbmUtY2xhbXA6NztsaW5lLWNsYW1wOjc7fQogICAgLmN2LWNmOWx1IC50aXRsZSAuYWNjZW50e2NvbG9yOnZhcigtLWFjY2VudCwgIzAwZDRmZil9CgogICAgLmN2LWNmOWx1IC5wbGF5LWJ0bntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtsZWZ0OjEwcHg7d2lkdGg6MzBweDtoZWlnaHQ6MzBweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4zKTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMSk7Ym9yZGVyLXJhZGl1czozNXB4O3otaW5kZXg6Mjt9CiAgICAuY3YtY2Y5bHUgLnBsYXktYnRuOjpiZWZvcmV7Y29udGVudDoiIjt3aWR0aDowO2hlaWdodDowO2JvcmRlci1sZWZ0OjhweCBzb2xpZCAjZmZmO2JvcmRlci10b3A6NnB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206NnB4IHNvbGlkIHRyYW5zcGFyZW50O21hcmdpbi1sZWZ0OjNweDt9CiAgICBAa2V5ZnJhbWVzIGN2LWNmOWx1UGxheUJsaW5rezAlLDEwMCV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC43KTt9NTAle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDE2NSwyNTUsLjkpO319CgogICAgLmN2LWNmOWx1IC5hcntwb3NpdGlvbjpyZWxhdGl2ZX0KICAgIC5jdi1jZjlsdSAuYXJyb3d7CiAgICAgIHBvc2l0aW9uOmFic29sdXRlOwogICAgICB0b3A6NTAlOwogICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsKICAgICAgd2lkdGg6NDRweDsKICAgICAgaGVpZ2h0OjQ0cHg7CiAgICAgIGJvcmRlci1yYWRpdXM6NTAlOwogICAgICBiYWNrZ3JvdW5kOnJnYigyNTUgMjU1IDI1NSAvIDIwJSk7CiAgICAgIGJveC1zaGFkb3c6MCA2cHggMTZweCByZ2IoMCAwIDAgLyAyMCUpOwogICAgICBib3JkZXI6MXB4IHNvbGlkICNmZmY7CiAgICAgIGRpc3BsYXk6ZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uOwogICAgICBhbGlnbi1pdGVtczpjZW50ZXI7CiAgICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7CiAgICAgIGN1cnNvcjpwb2ludGVyOwogICAgICB6LWluZGV4OjI7CiAgICAgIHRyYW5zaXRpb246LjNzOwogICAgfQogICAgLmN2LWNmOWx1IC5hcnJvdzpob3ZlcnsKICAgICAgYmFja2dyb3VuZDpyZ2IoMCAwIDAgLyAyMCUpOwogICAgICBib3JkZXI6MXB4IHNvbGlkICNmZmY7CiAgICB9CiAgICAuY3YtY2Y5bHUgLmFycm93OmZvY3VzewogICAgICBiYWNrZ3JvdW5kOnJnYigyNTUgMjU1IDI1NSAvIDIwJSk7CiAgICB9CiAgICAuY3YtY2Y5bHUgLmFycm93IHN2Z3t3aWR0aDoyMHB4O2hlaWdodDoyMHB4fQogICAgLmN2LWNmOWx1IC5hcnJvdy5sZWZ0e2xlZnQ6MTBweH0KICAgIC5jdi1jZjlsdSAuYXJyb3cucmlnaHR7cmlnaHQ6MTBweH0KCiAgICBAbWVkaWEgKG1heC13aWR0aDo3NjhweCl7CiAgICAgIC5jdi1jZjlsdSAuYmctc2VjdGlvbi10aXRsZXsKICAgICAgICBtYXJnaW4tYm90dG9tOjMycHg7CiAgICAgICAgbWFyZ2luLXRvcDogOHB4OwogICAgICB9CiAgICAgIC5jdi1jZjlsdSAuZm5kLWxpbmVhewogICAgICAgIG1hcmdpbi10b3A6LTE4cHg7CiAgICAgICAgaGVpZ2h0OiAzcHg7CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMzMzM7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzMzM7CiAgICAgIH0KICAgICAgLmN2LWNmOWx1IC5zZWN0aW9uLXRpdGxlewogICAgICAgIGZvbnQtc2l6ZToyN3B4OwogICAgICAgIHBhZGRpbmc6MnB4IDhweCAycHggOHB4OwogICAgICAgIHRyYW5zZm9ybTpyb3RhdGVYKDVkZWcpIHJvdGF0ZVkoLTI1ZGVnKSBza2V3WCgwZGVnKTsKICAgICAgfQogICAgICAuY3YtY2Y5bHUgLmNhcmR7CiAgICAgICAgd2lkdGg6Y2FsYygoMTAwJSAtIDEqdmFyKC0tZ2FwKSkvMik7CiAgICAgIH0KICAgICAgLmN2LWNmOWx1IC50aXRsZS50aXRsZS1sYXJnZXsKICAgICAgICBmb250LXNpemU6MjRweDsKICAgICAgfQogICAgICAuY3YtY2Y5bHUgLnRpdGxlLnRpdGxlLXNtYWxsewogICAgICAgIGZvbnQtc2l6ZToxOHB4OwogICAgICB9CiAgICAgIC5jdi1jZjlsdSAuYXJyb3d7CiAgICAgICAgZGlzcGxheTpub25lICFpbXBvcnRhbnQ7IAogICAgICB9CiAgICAgIC5jdi1jZjlsdSAudHJhY2t7CiAgICAgICAgb3ZlcmZsb3cteDphdXRvOwogICAgICB9CiAgICB9CiAgICA8L3N0eWxlPgoKICAgIDxkaXYgY2xhc3M9ImN2LWNmOWx1Ij4KICAgICAgPHNlY3Rpb24gY2xhc3M9InNlY3Rpb24iIGFyaWEtbGFiZWw9IkNhcnJ1c2VsIGRlIHbtZGVvcyI+CiAgICAgICAgPGRpdiBjbGFzcz0iYmctc2VjdGlvbi10aXRsZSI+CiAgICAgICAgICA8aDIgY2xhc3M9InNlY3Rpb24tdGl0bGUiPgogICAgICAgICAgICBDZXV0YQogICAgICAgICAgPC9oMj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJmbmQtbGluZWEiPjwvc3Bhbj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJhciIgcm9sZT0icmVnaW9uIiBhcmlhLWxhYmVsPSJMaXN0YWRvIGRlIHbtZGVvcyBkZXN0YWNhZG9zIj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFycm93IGxlZnQiIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iQW50ZXJpb3IiPgogICAgICAgICAgICA8c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgYXJpYS1oaWRkZW49InRydWUiPgogICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xNSA2bC02IDYgNiA2IiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CiAgICAgICAgICAgIDwvc3ZnPgogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJhcnJvdyByaWdodCIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJTaWd1aWVudGUiPgogICAgICAgICAgICA8c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgYXJpYS1oaWRkZW49InRydWUiPgogICAgICAgICAgICAgIDxwYXRoIGQ9Ik05IDE4bDYtNi02LTYiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KICAgICAgICAgICAgPC9zdmc+CiAgICAgICAgICA8L2J1dHRvbj4KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJvdXNlbCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRyYWNrIiByb2xlPSJsaXN0Ij4KICAKICAgICAgICA8YSBjbGFzcz0iY2FyZCIKICAgICAgICAgICBocmVmPSJodHRwczovL3lvdXR1YmUuY29tL3Nob3J0cy9aSUNyU1JZVGJ6RSIKICAgICAgICAgICB0YXJnZXQ9Il90b3AiCiAgICAgICAgICAgdGl0bGU9IlZlciB27WRlbzogT2NobyBmdXJnb25lcyBkZSBsYSBwb2xpY+1hIGN1c3RvZGlhbiBsb3MgY2FtaW9uZXMgZGUgbGEgQ3J1eiBSb2phIgogICAgICAgICAgIGFyaWEtbGFiZWw9IlZlciB27WRlbzogT2NobyBmdXJnb25lcyBkZSBsYSBwb2xpY+1hIGN1c3RvZGlhbiBsb3MgY2FtaW9uZXMgZGUgbGEgQ3J1eiBSb2phIgogICAgICAgICAgIHN0eWxlPSItLWFjY2VudDojMDBBN0ZGIj4KICAgICAgICAgIDxpbWcgc3JjPSJodHRwOi8vb2tkaWFyaW8uY29tL2VzcGVjaWFsZXMvYXBwcy9tZWRpYS9vY2hvLWZ1cmdvbmVzLWRlLWxhLXBvbGljaWEtY3VzdG9kaWFuLWxvcy1jYW1pb25lcy1kZS1sYS1jcnV6LXJvamEtbWluaWF0dXJhLTIwMjYwODI5LTE4MjQxNS1kNWJjOGMuanBnIiBhbHQ9IlbtZGVvOiBPY2hvIGZ1cmdvbmVzIGRlIGxhIHBvbGlj7WEgY3VzdG9kaWFuIGxvcyBjYW1pb25lcyBkZSBsYSBDcnV6IFJvamEiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgICAKICAgICAgICAgIDxkaXYgY2xhc3M9InBsYXktYnRuIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzaGFkZSIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PgogICAgICAgICAgPGgyIGNsYXNzPSJ0aXRsZSB0aXRsZS1sYXJnZSI+T2NobyBmdXJnb25lcyBkZSBsYSBwb2xpY+1hPHNwYW4gY2xhc3M9ImFjY2VudCI+IGN1c3RvZGlhbiBsb3MgY2FtaW9uZXMgZGUgbGEgQ3J1eiBSb2phPC9zcGFuPjwvaDI+CiAgICAgICAgPC9hPgoKICAgICAgICA8YSBjbGFzcz0iY2FyZCIKICAgICAgICAgICBocmVmPSJodHRwczovL3lvdXR1YmUuY29tL3Nob3J0cy9wMGpmVGtuejFnTSIKICAgICAgICAgICB0YXJnZXQ9Il90b3AiCiAgICAgICAgICAgdGl0bGU9IlZlciB27WRlbzogSW52YXNvcmVzIG9yZ2FuaXphbiB1biB6b2NvIGNvbiBsYSBjb21pZGEgcXVlIGxlcyBkYW6gbGFzIE9OR3MiCiAgICAgICAgICAgYXJpYS1sYWJlbD0iVmVyIHbtZGVvOiBJbnZhc29yZXMgb3JnYW5pemFuIHVuIHpvY28gY29uIGxhIGNvbWlkYSBxdWUgbGVzIGRhbqBsYXMgT05HcyIKICAgICAgICAgICBzdHlsZT0iLS1hY2NlbnQ6IzAwQTdGRiI+CiAgICAgICAgICA8aW1nIHNyYz0iaHR0cDovL29rZGlhcmlvLmNvbS9lc3BlY2lhbGVzL2FwcHMvbWVkaWEvaW52YXNvcmVzLWRlLWNldXRhLW9yZ2FuaXphbi11bi16b2NvLWNvbi1sYS1jb21pZGEtZG9uYWRhLXBvci1sYXMtb25ncy1taW5pYXR1cmEtMjAyNjA4MjktMTgyNTUwLTQ4MzI5NS5qcGciIGFsdD0iVu1kZW86IEludmFzb3JlcyBvcmdhbml6YW4gdW4gem9jbyBjb24gbGEgY29taWRhIHF1ZSBsZXMgZGFuoGxhcyBPTkdzIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGF5LWJ0biIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj4KICAgICAgICAgIDxoMiBjbGFzcz0idGl0bGUgdGl0bGUtbGFyZ2UiPkludmFzb3JlcyA8c3BhbiBjbGFzcz0iYWNjZW50Ij5vcmdhbml6YW4gdW4gem9jbzwvc3Bhbj4gY29uIGxhIGNvbWlkYSBxdWUgbGVzIGRhbiZuYnNwO2xhcyBPTkdzPC9oMj4KICAgICAgICA8L2E+CgogICAgICAgIDxhIGNsYXNzPSJjYXJkIgogICAgICAgICAgIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3Nob3J0cy9mQkNXLUdCbHEyOCIKICAgICAgICAgICB0YXJnZXQ9Il90b3AiCiAgICAgICAgICAgdGl0bGU9IlZlciB27WRlbzogbWFycm9xde1lcyBhdGFjYW4gYSBsb3MgY2V1dO1lcyBjb24gYm90ZWxsYXMgZGUgYWd1YXJy4XMiCiAgICAgICAgICAgYXJpYS1sYWJlbD0iVmVyIHbtZGVvOiBtYXJyb3F17WVzIGF0YWNhbiBhIGxvcyBjZXV07WVzIGNvbiBib3RlbGxhcyBkZSBhZ3VhcnLhcyIKICAgICAgICAgICBzdHlsZT0iLS1hY2NlbnQ6IzAwQTdGRiI+CiAgICAgICAgICA8aW1nIHNyYz0iaHR0cDovL29rZGlhcmlvLmNvbS9lc3BlY2lhbGVzL2FwcHMvbWVkaWEveW91dHViZS1taW5pYXR1cmEtMjAyNjA4MjktMTEyMDMxLTllNmU1Yy5qcGciIGFsdD0iVu1kZW86IG1hcnJvcXXtZXMgYXRhY2FuIGEgbG9zIGNldXTtZXMgY29uIGJvdGVsbGFzIGRlIGFndWFycuFzIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGF5LWJ0biIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj4KICAgICAgICAgIDxoMiBjbGFzcz0idGl0bGUgdGl0bGUtbGFyZ2UiPm1hcnJvcXXtZXMgYXRhY2FuIGEgbG9zIGNldXTtZXMgY29uIDxzcGFuIGNsYXNzPSJhY2NlbnQiPmJvdGVsbGFzIGRlIGFndWFycuFzJm5ic3A7PC9zcGFuPjwvaDI+CiAgICAgICAgPC9hPgoKICAgICAgICA8YSBjbGFzcz0iY2FyZCIKICAgICAgICAgICBocmVmPSJodHRwczovL3lvdXR1YmUuY29tL3Nob3J0cy9HSlBnc3RKR2tmNCIKICAgICAgICAgICB0YXJnZXQ9Il90b3AiCiAgICAgICAgICAgdGl0bGU9IlZlciB27WRlbzogVW5hIGFuY2lhbmEgbGxvcmEgYWwgdmVyIG1hbmlmZXN0YW50ZXOgIGZyZW50ZSBhIHN1IGNhc2EgZW4gQ2V1dGEiCiAgICAgICAgICAgYXJpYS1sYWJlbD0iVmVyIHbtZGVvOiBVbmEgYW5jaWFuYSBsbG9yYSBhbCB2ZXIgbWFuaWZlc3RhbnRlc6AgZnJlbnRlIGEgc3UgY2FzYSBlbiBDZXV0YSIKICAgICAgICAgICBzdHlsZT0iLS1hY2NlbnQ6IzAwQTdGRiI+CiAgICAgICAgICA8aW1nIHNyYz0iaHR0cDovL29rZGlhcmlvLmNvbS9lc3BlY2lhbGVzL2FwcHMvbWVkaWEvdW5hLWFuY2lhbmEtbGxvcmEteS1zZS1zYW50aWd1YS1hbnRlLWxhLW11bHRpdHVkLWRlLW1hbmlmZXN0YW50ZXMtcXVlLWFjdWRlbi1hLXZlcmxhLWEtc3UtdmVudGFuYS1taW5pYXR1cmEtMjAyNjA4MjgtMjEyNzQxLTlhNjcxNy5qcGciIGFsdD0iVu1kZW86IFVuYSBhbmNpYW5hIGxsb3JhIGFsIHZlciBtYW5pZmVzdGFudGVzoCBmcmVudGUgYSBzdSBjYXNhIGVuIENldXRhIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGF5LWJ0biIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj4KICAgICAgICAgIDxoMiBjbGFzcz0idGl0bGUgdGl0bGUtbGFyZ2UiPjxkaXY+VW5hIDxzcGFuIGNsYXNzPSJhY2NlbnQiPmFuY2lhbmEgbGxvcmEgPC9zcGFuPmFsIHZlciBtYW5pZmVzdGFudGVzJm5ic3A7IGZyZW50ZSBhIHN1IGNhc2EgZW4gQ2V1dGE8L2Rpdj48L2gyPgogICAgICAgIDwvYT4KCiAgICAgICAgPGEgY2xhc3M9ImNhcmQiCiAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly95b3V0dWJlLmNvbS9zaG9ydHMvRW8tUmZ1dFpVU3ciCiAgICAgICAgICAgdGFyZ2V0PSJfdG9wIgogICAgICAgICAgIHRpdGxlPSJWZXIgdu1kZW86IExvcyBpbnZhc29yZXMgdnVlbHZlbiBhIGxhIHBsYXlhIHRyYXMgY29tcHJhciBlbiBlbCBzdXBlcm1lcmNhZG8iCiAgICAgICAgICAgYXJpYS1sYWJlbD0iVmVyIHbtZGVvOiBMb3MgaW52YXNvcmVzIHZ1ZWx2ZW4gYSBsYSBwbGF5YSB0cmFzIGNvbXByYXIgZW4gZWwgc3VwZXJtZXJjYWRvIgogICAgICAgICAgIHN0eWxlPSItLWFjY2VudDojMDBBN0ZGIj4KICAgICAgICAgIDxpbWcgc3JjPSJodHRwOi8vb2tkaWFyaW8uY29tL2VzcGVjaWFsZXMvYXBwcy9tZWRpYS9sb3MtaW52YXNvcmVzLW1hcnJvcXVpZXMtZGUtY2V1dGEtdnVlbHZlbi1hLWxhLXBsYXlhLWJlbml0ZXotdHJhcy1oYWNlci1sYS1jb21wcmEtZW4tZWwtc3VwZXJtZXJjYWRvLW1pbmlhdHVyYS0yMDI2MDgyOC0yMTI4MzktNzIxMTA2LmpwZyIgYWx0PSJW7WRlbzogTG9zIGludmFzb3JlcyB2dWVsdmVuIGEgbGEgcGxheWEgdHJhcyBjb21wcmFyIGVuIGVsIHN1cGVybWVyY2FkbyIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIj4KICAgICAgICAgIAogICAgICAgICAgPGRpdiBjbGFzcz0icGxheS1idG4iIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InNoYWRlIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9kaXY+CiAgICAgICAgICA8aDIgY2xhc3M9InRpdGxlIHRpdGxlLWxhcmdlIj48ZGl2PkxvcyBpbnZhc29yZXMgdnVlbHZlbiBhIGxhIHBsYXlhIHRyYXMgPHNwYW4gY2xhc3M9ImFjY2VudCI+Y29tcHJhciBlbiBlbCBzdXBlcm1lcmNhZG88L3NwYW4+PC9kaXY+PC9oMj4KICAgICAgICA8L2E+CgogICAgICAgIDxhIGNsYXNzPSJjYXJkIgogICAgICAgICAgIGhyZWY9Imh0dHBzOi8veW91dHViZS5jb20vc2hvcnRzL21sS0FaSnVSV2t3IgogICAgICAgICAgIHRhcmdldD0iX3RvcCIKICAgICAgICAgICB0aXRsZT0iVmVyIHbtZGVvOiBMb3MgaWxlZ2FsZXMgc2UgYnVybGFuIGRlIGxvcyBjZXV07WVzIGVuIFBsYXlhIEJlbml0ZXoiCiAgICAgICAgICAgYXJpYS1sYWJlbD0iVmVyIHbtZGVvOiBMb3MgaWxlZ2FsZXMgc2UgYnVybGFuIGRlIGxvcyBjZXV07WVzIGVuIFBsYXlhIEJlbml0ZXoiCiAgICAgICAgICAgc3R5bGU9Ii0tYWNjZW50OiMwMEE3RkYiPgogICAgICAgICAgPGltZyBzcmM9Imh0dHA6Ly9va2RpYXJpby5jb20vZXNwZWNpYWxlcy9hcHBzL21lZGlhL2VsLWJ1cmxlc2NvLXJlY2liaW1pZW50by1kZS1sb3MtaW52YXNvcmVzLW1hcnJvcXVpZXMtYS1sb3MtY2V1dGllcy1lbi1wbGF5YS1iZW5pdGV6LW1pbmlhdHVyYS0yMDI2MDgyOC0yMTI5MTItMmE1OGQ1LmpwZyIgYWx0PSJW7WRlbzogTG9zIGlsZWdhbGVzIHNlIGJ1cmxhbiBkZSBsb3MgY2V1dO1lcyBlbiBQbGF5YSBCZW5pdGV6IiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGF5LWJ0biIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj4KICAgICAgICAgIDxoMiBjbGFzcz0idGl0bGUgdGl0bGUtbGFyZ2UiPkxvcyBpbGVnYWxlcyA8c3BhbiBjbGFzcz0iYWNjZW50Ij5zZSBidXJsYW4gZGUgbG9zIGNldXTtZXMgPC9zcGFuPmVuIFBsYXlhIEJlbml0ZXo8L2gyPgogICAgICAgIDwvYT4KCiAgICAgICAgPGEgY2xhc3M9ImNhcmQiCiAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly95b3V0dWJlLmNvbS9zaG9ydHMvUF9NYWNxUkR0UUkiCiAgICAgICAgICAgdGFyZ2V0PSJfdG9wIgogICAgICAgICAgIHRpdGxlPSJWZXIgdu1kZW86IGNldXTtZXOgY2xhbWFuIGNvbnRyYSBlbCBHb2JpZXJubzogJnF1b3Q7Tm8gaGFuIGhlY2hvIG5hZGEmcXVvdDsiCiAgICAgICAgICAgYXJpYS1sYWJlbD0iVmVyIHbtZGVvOiBjZXV07WVzoGNsYW1hbiBjb250cmEgZWwgR29iaWVybm86ICZxdW90O05vIGhhbiBoZWNobyBuYWRhJnF1b3Q7IgogICAgICAgICAgIHN0eWxlPSItLWFjY2VudDojMDBBN0ZGIj4KICAgICAgICAgIDxpbWcgc3JjPSJodHRwOi8vb2tkaWFyaW8uY29tL2VzcGVjaWFsZXMvYXBwcy9tZWRpYS9jZXV0aWVzLWNsYW1hbi1jb250cmEtZWwtZ29iaWVybm8tbm8taGFuLWhlY2hvLWFic29sdXRhbWVudGUtbmFkYS1taW5pYXR1cmEtMjAyNjA4MjgtMjEzMDEyLWMzYWZlOC5qcGciIGFsdD0iVu1kZW86IGNldXTtZXOgY2xhbWFuIGNvbnRyYSBlbCBHb2JpZXJubzogJnF1b3Q7Tm8gaGFuIGhlY2hvIG5hZGEmcXVvdDsiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgICAKICAgICAgICAgIDxkaXYgY2xhc3M9InBsYXktYnRuIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzaGFkZSIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PgogICAgICAgICAgPGgyIGNsYXNzPSJ0aXRsZSB0aXRsZS1sYXJnZSI+PGRpdj5jZXV07WVzJm5ic3A7PHNwYW4gY2xhc3M9ImFjY2VudCI+Y2xhbWFuIGNvbnRyYSBlbCBHb2JpZXJubzwvc3Bhbj46ICJObyBoYW4gaGVjaG8gbmFkYSI8L2Rpdj48L2gyPgogICAgICAgIDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9zZWN0aW9uPgogICAgPC9kaXY+CiAgICA8c2NyaXB0PgogICAgKGZ1bmN0aW9uKCl7CiAgICAgIHZhciByb290ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmN2LWNmOWx1Jyk7CiAgICAgIGlmICghcm9vdCkgcmV0dXJuOwogICAgICB2YXIgdHJhY2sgPSByb290LnF1ZXJ5U2VsZWN0b3IoJy50cmFjaycpOwogICAgICBpZiAoIXRyYWNrKSByZXR1cm47CgogICAgICB2YXIgYXJyb3dzID0gcm9vdC5xdWVyeVNlbGVjdG9yQWxsKCcuYXJyb3cnKTsKICAgICAgdmFyIEdBUCA9IDE2OwoKICAgICAgZnVuY3Rpb24gZ2V0Q2FyZFdpZHRoKCl7CiAgICAgICAgdmFyIGZpcnN0ID0gcm9vdC5xdWVyeVNlbGVjdG9yKCcuY2FyZCcpOwogICAgICAgIGlmICghZmlyc3QpIHJldHVybiAwOwogICAgICAgIHJldHVybiBmaXJzdC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDsKICAgICAgfQoKICAgICAgZnVuY3Rpb24gZ2V0Q2FyZHNQZXJQYWdlKCl7CiAgICAgICAgcmV0dXJuICh3aW5kb3cuaW5uZXJXaWR0aCA8PSA3NjgpID8gMiA6IDQ7CiAgICAgIH0KCiAgICAgIC8vIEh1ZWNvIGEgbGEgZGVyZWNoYSBkZWwgdHJhY2sgPSAxMCUgZGVsIGFuY2hvIGRlIFVOQSB0YXJqZXRhIChubyBkZWwKICAgICAgLy8gY29udGVuZWRvciksIHBhcmEgcXVlIHNlIGludHV5YSB2aXN1YWxtZW50ZSBxdWUgaGF5IG3hcyB27WRlb3MuCiAgICAgIGZ1bmN0aW9uIHVwZGF0ZVBhZEhpbnQoKXsKICAgICAgICB2YXIgY2FyZFcgPSBnZXRDYXJkV2lkdGgoKTsKICAgICAgICBpZiAoIWNhcmRXKSByZXR1cm47CiAgICAgICAgdHJhY2suc3R5bGUucGFkZGluZ1JpZ2h0ID0gTWF0aC5yb3VuZChjYXJkVyAqIDAuMTApICsgJ3B4JzsKICAgICAgfQogICAgICB1cGRhdGVQYWRIaW50KCk7CiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdyZXNpemUnLCB1cGRhdGVQYWRIaW50KTsKCiAgICAgIGFycm93cy5mb3JFYWNoKGZ1bmN0aW9uKGJ0bil7CiAgICAgICAgYnRuLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24oZSl7CiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgICB2YXIgZGlyID0gdGhpcy5jbGFzc0xpc3QuY29udGFpbnMoJ2xlZnQnKSA/IC0xIDogMTsKICAgICAgICAgIHZhciBjYXJkVyA9IGdldENhcmRXaWR0aCgpOwogICAgICAgICAgaWYgKCFjYXJkVykgcmV0dXJuOwogICAgICAgICAgdmFyIHN0ZXAgPSAoY2FyZFcgKyBHQVApICogZ2V0Q2FyZHNQZXJQYWdlKCkgKiBkaXI7CiAgICAgICAgICB0cmFjay5zY3JvbGxCeSh7IGxlZnQ6IHN0ZXAsIGJlaGF2aW9yOiAnc21vb3RoJyB9KTsKICAgICAgICB9KTsKICAgICAgfSk7CgogICAgICB2YXIgdGVhc2VyQ2FyZHMgPSByb290LnF1ZXJ5U2VsZWN0b3JBbGwoJy5jYXJkLmhhcy10ZWFzZXInKTsKICAgICAgdGVhc2VyQ2FyZHMuZm9yRWFjaChmdW5jdGlvbihjYXJkKXsKICAgICAgICB2YXIgdiA9IGNhcmQucXVlcnlTZWxlY3RvcigndmlkZW8udGVhc2VyJyk7CiAgICAgICAgaWYgKCF2KSByZXR1cm47CgogICAgICAgIGNhcmQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VlbnRlcicsIGZ1bmN0aW9uKCl7CiAgICAgICAgICB0cnl7CiAgICAgICAgICAgIHYuY3VycmVudFRpbWUgPSAwOwogICAgICAgICAgICB2YXIgcCA9IHYucGxheSgpOwogICAgICAgICAgICBpZiAocCAmJiB0eXBlb2YgcC50aGVuID09PSAnZnVuY3Rpb24nKSB7CiAgICAgICAgICAgICAgcC5jYXRjaChmdW5jdGlvbigpe30pOwogICAgICAgICAgICB9CiAgICAgICAgICB9Y2F0Y2goZSl7fQogICAgICAgIH0pOwoKICAgICAgICBjYXJkLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCBmdW5jdGlvbigpewogICAgICAgICAgdHJ5ewogICAgICAgICAgICB2LnBhdXNlKCk7CiAgICAgICAgICAgIHYuY3VycmVudFRpbWUgPSAwOwogICAgICAgICAgfWNhdGNoKGUpe30KICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9KSgpOwogICAgPC9zY3JpcHQ+
      CiAgICA8c3R5bGU+CiAgICBAaW1wb3J0IHVybCgnaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvaXFhMXFlYi5jc3MnKTsKCiAgICAvKiBUaXR1bGFyIGZpbmFsIGNhcnJ1c2VsIChIVE1MIGV4cG9ydGFkbykgKi8KICAgIC5jdi1kMGgxMCAuYmctc2VjdGlvbi10aXRsZSB7CiAgICAgIGRpc3BsYXk6ZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uOwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOwogICAgICBhbGlnbi1pdGVtczpjZW50ZXI7CiAgICAgIG1hcmdpbi1ib3R0b206NTBweDsKICAgICAgbWFyZ2luLXRvcDogOHB4OwogICAgfQogICAgLmN2LWQwaDEwIC5mbmQtbGluZWEgewogICAgICB3aWR0aDoxMDAlOwogICAgICBoZWlnaHQ6NXB4OwogICAgICBkaXNwbGF5OmZsZXg7CiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlOwogICAgICB6LWluZGV4OjE7CiAgICAgIG1hcmdpbi10b3A6LTI1cHg7CiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMzMzOwogICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzMzsKICAgIH0KICAgIC5jdi1kMGgxMCAuc2VjdGlvbi10aXRsZSB7CiAgICAgIGZvbnQtZmFtaWx5OiJiZWJhcy1uZXVlLXByby1leHBhbmRlZCIsc2Fucy1zZXJpZjsKICAgICAgZm9udC13ZWlnaHQ6OTAwOwogICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7CiAgICAgIHRleHQtYWxpZ246Y2VudGVyOwogICAgICBtYXJnaW46MDsKICAgICAgbGluZS1oZWlnaHQ6MS4yOwogICAgICBsZXR0ZXItc3BhY2luZzotMXB4OwogICAgICBwb3NpdGlvbjpyZWxhdGl2ZTsKICAgICAgei1pbmRleDoyOwogICAgICBiYWNrZ3JvdW5kOiNmZmY7CiAgICAgIHBhZGRpbmc6NHB4IDEzcHggNHB4IDEzcHg7CiAgICAgIGJvcmRlcjoxcHggc29saWQgIzMzMzsKICAgICAgZm9udC1zaXplOjQycHg7CiAgICAgIHRyYW5zZm9ybTpyb3RhdGVYKDVkZWcpIHJvdGF0ZVkoLTI1ZGVnKSBza2V3WCgwZGVnKTsKICAgIH0KCiAgICAuY3YtZDBoMTAgLmNhcm91c2VsewogICAgICAtLWdhcDoxNnB4OwogICAgICBkaXNwbGF5OmZsZXg7CiAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjsKICAgICAgZ2FwOnZhcigtLWdhcCk7CiAgICAgIG92ZXJmbG93OmhpZGRlbjsKICAgICAgcGFkZGluZy1ib3R0b206NnB4OwogICAgfQogICAgLnJvdyBzZWN0aW9ueyB3aWR0aDotd2Via2l0LWZpbGwtYXZhaWxhYmxlOyB9CiAgICAuY3YtZDBoMTAgLnNlY3Rpb257IHdpZHRoOi13ZWJraXQtZmlsbC1hdmFpbGFibGU7IH0KICAgIC5jdi1kMGgxMCAudHJhY2t7CiAgICAgIGRpc3BsYXk6ZmxleDsKICAgICAgZ2FwOnZhcigtLWdhcCk7CiAgICAgIG92ZXJmbG93LXg6aGlkZGVuOwogICAgICBzY3JvbGwtc25hcC10eXBlOnggbWFuZGF0b3J5OwogICAgICBzY3JvbGwtYmVoYXZpb3I6c21vb3RoOwogICAgfQogICAgLmN2LWQwaDEwIC5jYXJkewogICAgICBwb3NpdGlvbjpyZWxhdGl2ZTsKICAgICAgZmxleDowIDAgYXV0bzsKICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246c3RhcnQ7CiAgICAgIHdpZHRoOmNhbGMoKDEwMCUgLSAzKnZhcigtLWdhcCkpLzQpOwogICAgICBhc3BlY3QtcmF0aW86OS8xNjsKICAgICAgYm9yZGVyLXJhZGl1czoxMHB4OwogICAgICBvdmVyZmxvdzpoaWRkZW47CiAgICAgIGJhY2tncm91bmQ6IzExMTsKICAgICAgaXNvbGF0aW9uOmlzb2xhdGU7CiAgICB9CiAgICAuY3YtZDBoMTAgLmNhcmQgaW1newogICAgICBwb3NpdGlvbjphYnNvbHV0ZTsKICAgICAgaW5zZXQ6MDsKICAgICAgd2lkdGg6MTAwJTsKICAgICAgaGVpZ2h0OjEwMCU7CiAgICAgIG9iamVjdC1maXQ6Y292ZXI7CiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMzVzIGVhc2UsIG9wYWNpdHkgLjI1cyBlYXNlOwogICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDEpOwogICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtLCBvcGFjaXR5OwogICAgICBzY2FsZTogMS4wMjsKICAgIH0KICAgIC5jdi1kMGgxMCAuY2FyZDpob3ZlciBpbWcsCiAgICAuY3YtZDBoMTAgLmNhcmQ6Zm9jdXMtdmlzaWJsZSBpbWd7CiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNik7CiAgICB9CgogICAgLmN2LWQwaDEwIC5jYXJkIHZpZGVvLnRlYXNlcnsKICAgICAgcG9zaXRpb246YWJzb2x1dGU7CiAgICAgIGluc2V0OjA7CiAgICAgIHdpZHRoOjEwMCU7CiAgICAgIGhlaWdodDoxMDAlOwogICAgICBvYmplY3QtZml0OmNvdmVyOwogICAgICBvcGFjaXR5OjA7CiAgICAgIHRyYW5zaXRpb246b3BhY2l0eSAuMjVzIGVhc2U7CiAgICAgIHBvaW50ZXItZXZlbnRzOm5vbmU7CiAgICAgIHNjYWxlOiAxLjAyOwogICAgfQogICAgLmN2LWQwaDEwIC5jYXJkLmhhcy10ZWFzZXI6aG92ZXIgaW1nLAogICAgLmN2LWQwaDEwIC5jYXJkLmhhcy10ZWFzZXI6Zm9jdXMtdmlzaWJsZSBpbWd7CiAgICAgIG9wYWNpdHk6MDsKICAgIH0KICAgIC5jdi1kMGgxMCAuY2FyZC5oYXMtdGVhc2VyOmhvdmVyIHZpZGVvLnRlYXNlciwKICAgIC5jdi1kMGgxMCAuY2FyZC5oYXMtdGVhc2VyOmZvY3VzLXZpc2libGUgdmlkZW8udGVhc2VyewogICAgICBvcGFjaXR5OjE7CiAgICB9CgogICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpewogICAgICAuY3YtZDBoMTAgLmNhcmQgaW1neyB0cmFuc2l0aW9uOiBub25lOyB9CiAgICAgIC5jdi1kMGgxMCAuY2FyZCB2aWRlby50ZWFzZXJ7IHRyYW5zaXRpb246bm9uZTsgfQogICAgfQoKICAgIC5jdi1kMGgxMCAuc2hhZGV7CiAgICAgIHBvc2l0aW9uOmFic29sdXRlOwogICAgICBpbnNldDphdXRvIDAgMCAwOwogICAgICBoZWlnaHQ6NzAlOwogICAgICBiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgwLDAsMCwwKSAwJSwgcmdiYSgwLDAsMCwuODUpIDEwMCUpOwogICAgfQogICAgLmN2LWQwaDEwIC50aXRsZXsKICAgICAgcG9zaXRpb246YWJzb2x1dGU7CiAgICAgIGxlZnQ6MTJweDsKICAgICAgcmlnaHQ6MTJweDsKICAgICAgYm90dG9tOjEwcHg7CiAgICAgIG1hcmdpbjowOwogICAgICBjb2xvcjojZmZmOwogICAgICBmb250LWZhbWlseToiYmViYXMtbmV1ZS1wcm8tZXhwYW5kZWQiLHNhbnMtc2VyaWY7CiAgICAgIGZvbnQtd2VpZ2h0OjkwMDsKICAgICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOwogICAgICBkaXNwbGF5Oi13ZWJraXQtYm94OwogICAgICAtd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7CiAgICAgIG92ZXJmbG93OmhpZGRlbjsKICAgICAgdGV4dC1vdmVyZmxvdzplbGxpcHNpczsKICAgIH0KICAgIC5jdi1kMGgxMCAudGl0bGUudGl0bGUtbGFyZ2V7Zm9udC1zaXplOjI3cHg7bGluZS1oZWlnaHQ6MWVtOy13ZWJraXQtbGluZS1jbGFtcDo1O2xpbmUtY2xhbXA6NTt9CiAgICAuY3YtZDBoMTAgLnRpdGxlLnRpdGxlLXNtYWxse2ZvbnQtc2l6ZToyMXB4O2xpbmUtaGVpZ2h0OjFlbTstd2Via2l0LWxpbmUtY2xhbXA6NztsaW5lLWNsYW1wOjc7fQogICAgLmN2LWQwaDEwIC50aXRsZSAuYWNjZW50e2NvbG9yOnZhcigtLWFjY2VudCwgIzAwZDRmZil9CgogICAgLmN2LWQwaDEwIC5wbGF5LWJ0bntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtsZWZ0OjEwcHg7d2lkdGg6MzBweDtoZWlnaHQ6MzBweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4zKTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMSk7Ym9yZGVyLXJhZGl1czozNXB4O3otaW5kZXg6Mjt9CiAgICAuY3YtZDBoMTAgLnBsYXktYnRuOjpiZWZvcmV7Y29udGVudDoiIjt3aWR0aDowO2hlaWdodDowO2JvcmRlci1sZWZ0OjhweCBzb2xpZCAjZmZmO2JvcmRlci10b3A6NnB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206NnB4IHNvbGlkIHRyYW5zcGFyZW50O21hcmdpbi1sZWZ0OjNweDt9CiAgICBAa2V5ZnJhbWVzIGN2LWQwaDEwUGxheUJsaW5rezAlLDEwMCV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC43KTt9NTAle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDE2NSwyNTUsLjkpO319CgogICAgLmN2LWQwaDEwIC5hcntwb3NpdGlvbjpyZWxhdGl2ZX0KICAgIC5jdi1kMGgxMCAuYXJyb3d7CiAgICAgIHBvc2l0aW9uOmFic29sdXRlOwogICAgICB0b3A6NTAlOwogICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsKICAgICAgd2lkdGg6NDRweDsKICAgICAgaGVpZ2h0OjQ0cHg7CiAgICAgIGJvcmRlci1yYWRpdXM6NTAlOwogICAgICBiYWNrZ3JvdW5kOnJnYigyNTUgMjU1IDI1NSAvIDIwJSk7CiAgICAgIGJveC1zaGFkb3c6MCA2cHggMTZweCByZ2IoMCAwIDAgLyAyMCUpOwogICAgICBib3JkZXI6MXB4IHNvbGlkICNmZmY7CiAgICAgIGRpc3BsYXk6ZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uOwogICAgICBhbGlnbi1pdGVtczpjZW50ZXI7CiAgICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7CiAgICAgIGN1cnNvcjpwb2ludGVyOwogICAgICB6LWluZGV4OjI7CiAgICAgIHRyYW5zaXRpb246LjNzOwogICAgfQogICAgLmN2LWQwaDEwIC5hcnJvdzpob3ZlcnsKICAgICAgYmFja2dyb3VuZDpyZ2IoMCAwIDAgLyAyMCUpOwogICAgICBib3JkZXI6MXB4IHNvbGlkICNmZmY7CiAgICB9CiAgICAuY3YtZDBoMTAgLmFycm93OmZvY3VzewogICAgICBiYWNrZ3JvdW5kOnJnYigyNTUgMjU1IDI1NSAvIDIwJSk7CiAgICB9CiAgICAuY3YtZDBoMTAgLmFycm93IHN2Z3t3aWR0aDoyMHB4O2hlaWdodDoyMHB4fQogICAgLmN2LWQwaDEwIC5hcnJvdy5sZWZ0e2xlZnQ6MTBweH0KICAgIC5jdi1kMGgxMCAuYXJyb3cucmlnaHR7cmlnaHQ6MTBweH0KCiAgICBAbWVkaWEgKG1heC13aWR0aDo3NjhweCl7CiAgICAgIC5jdi1kMGgxMCAuYmctc2VjdGlvbi10aXRsZXsKICAgICAgICBtYXJnaW4tYm90dG9tOjMycHg7CiAgICAgICAgbWFyZ2luLXRvcDogOHB4OwogICAgICB9CiAgICAgIC5jdi1kMGgxMCAuZm5kLWxpbmVhewogICAgICAgIG1hcmdpbi10b3A6LTE4cHg7CiAgICAgICAgaGVpZ2h0OiAzcHg7CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMzMzM7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzMzM7CiAgICAgIH0KICAgICAgLmN2LWQwaDEwIC5zZWN0aW9uLXRpdGxlewogICAgICAgIGZvbnQtc2l6ZToyN3B4OwogICAgICAgIHBhZGRpbmc6MnB4IDhweCAycHggOHB4OwogICAgICAgIHRyYW5zZm9ybTpyb3RhdGVYKDVkZWcpIHJvdGF0ZVkoLTI1ZGVnKSBza2V3WCgwZGVnKTsKICAgICAgfQogICAgICAuY3YtZDBoMTAgLmNhcmR7CiAgICAgICAgd2lkdGg6Y2FsYygoMTAwJSAtIDEqdmFyKC0tZ2FwKSkvMik7CiAgICAgIH0KICAgICAgLmN2LWQwaDEwIC50aXRsZS50aXRsZS1sYXJnZXsKICAgICAgICBmb250LXNpemU6MjRweDsKICAgICAgfQogICAgICAuY3YtZDBoMTAgLnRpdGxlLnRpdGxlLXNtYWxsewogICAgICAgIGZvbnQtc2l6ZToxOHB4OwogICAgICB9CiAgICAgIC5jdi1kMGgxMCAuYXJyb3d7CiAgICAgICAgZGlzcGxheTpub25lICFpbXBvcnRhbnQ7IAogICAgICB9CiAgICAgIC5jdi1kMGgxMCAudHJhY2t7CiAgICAgICAgb3ZlcmZsb3cteDphdXRvOwogICAgICB9CiAgICB9CiAgICA8L3N0eWxlPgoKICAgIDxkaXYgY2xhc3M9ImN2LWQwaDEwIj4KICAgICAgPHNlY3Rpb24gY2xhc3M9InNlY3Rpb24iIGFyaWEtbGFiZWw9IkNhcnJ1c2VsIGRlIHbtZGVvcyI+CiAgICAgICAgPGRpdiBjbGFzcz0iYmctc2VjdGlvbi10aXRsZSI+CiAgICAgICAgICA8aDIgY2xhc3M9InNlY3Rpb24tdGl0bGUiPgogICAgICAgICAgICBDZXV0YQogICAgICAgICAgPC9oMj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJmbmQtbGluZWEiPjwvc3Bhbj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJhciIgcm9sZT0icmVnaW9uIiBhcmlhLWxhYmVsPSJMaXN0YWRvIGRlIHbtZGVvcyBkZXN0YWNhZG9zIj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFycm93IGxlZnQiIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iQW50ZXJpb3IiPgogICAgICAgICAgICA8c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgYXJpYS1oaWRkZW49InRydWUiPgogICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xNSA2bC02IDYgNiA2IiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CiAgICAgICAgICAgIDwvc3ZnPgogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJhcnJvdyByaWdodCIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJTaWd1aWVudGUiPgogICAgICAgICAgICA8c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgYXJpYS1oaWRkZW49InRydWUiPgogICAgICAgICAgICAgIDxwYXRoIGQ9Ik05IDE4bDYtNi02LTYiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KICAgICAgICAgICAgPC9zdmc+CiAgICAgICAgICA8L2J1dHRvbj4KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJvdXNlbCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRyYWNrIiByb2xlPSJsaXN0Ij4KICAKICAgICAgICA8YSBjbGFzcz0iY2FyZCIKICAgICAgICAgICBocmVmPSJodHRwczovL3lvdXR1YmUuY29tL3Nob3J0cy9aSUNyU1JZVGJ6RSIKICAgICAgICAgICB0YXJnZXQ9Il90b3AiCiAgICAgICAgICAgdGl0bGU9IlZlciB27WRlbzogT2NobyBmdXJnb25lcyBkZSBsYSBwb2xpY+1hIGN1c3RvZGlhbiBsb3MgY2FtaW9uZXMgZGUgbGEgQ3J1eiBSb2phIgogICAgICAgICAgIGFyaWEtbGFiZWw9IlZlciB27WRlbzogT2NobyBmdXJnb25lcyBkZSBsYSBwb2xpY+1hIGN1c3RvZGlhbiBsb3MgY2FtaW9uZXMgZGUgbGEgQ3J1eiBSb2phIgogICAgICAgICAgIHN0eWxlPSItLWFjY2VudDojMDBBN0ZGIj4KICAgICAgICAgIDxpbWcgc3JjPSJodHRwOi8vb2tkaWFyaW8uY29tL2VzcGVjaWFsZXMvYXBwcy9tZWRpYS9vY2hvLWZ1cmdvbmVzLWRlLWxhLXBvbGljaWEtY3VzdG9kaWFuLWxvcy1jYW1pb25lcy1kZS1sYS1jcnV6LXJvamEtbWluaWF0dXJhLTIwMjYwODI5LTE4MjQxNS1kNWJjOGMuanBnIiBhbHQ9IlbtZGVvOiBPY2hvIGZ1cmdvbmVzIGRlIGxhIHBvbGlj7WEgY3VzdG9kaWFuIGxvcyBjYW1pb25lcyBkZSBsYSBDcnV6IFJvamEiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgICAKICAgICAgICAgIDxkaXYgY2xhc3M9InBsYXktYnRuIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzaGFkZSIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PgogICAgICAgICAgPGgyIGNsYXNzPSJ0aXRsZSB0aXRsZS1sYXJnZSI+T2NobyBmdXJnb25lcyBkZSBsYSBwb2xpY+1hPHNwYW4gY2xhc3M9ImFjY2VudCI+IGN1c3RvZGlhbiBsb3MgY2FtaW9uZXMgZGUgbGEgQ3J1eiBSb2phPC9zcGFuPjwvaDI+CiAgICAgICAgPC9hPgoKICAgICAgICA8YSBjbGFzcz0iY2FyZCIKICAgICAgICAgICBocmVmPSJodHRwczovL3lvdXR1YmUuY29tL3Nob3J0cy9wMGpmVGtuejFnTSIKICAgICAgICAgICB0YXJnZXQ9Il90b3AiCiAgICAgICAgICAgdGl0bGU9IlZlciB27WRlbzogSW52YXNvcmVzIG9yZ2FuaXphbiB1biB6b2NvIGNvbiBsYSBjb21pZGEgcXVlIGxlcyBkYW6gbGFzIE9OR3MiCiAgICAgICAgICAgYXJpYS1sYWJlbD0iVmVyIHbtZGVvOiBJbnZhc29yZXMgb3JnYW5pemFuIHVuIHpvY28gY29uIGxhIGNvbWlkYSBxdWUgbGVzIGRhbqBsYXMgT05HcyIKICAgICAgICAgICBzdHlsZT0iLS1hY2NlbnQ6IzAwQTdGRiI+CiAgICAgICAgICA8aW1nIHNyYz0iaHR0cDovL29rZGlhcmlvLmNvbS9lc3BlY2lhbGVzL2FwcHMvbWVkaWEvaW52YXNvcmVzLWRlLWNldXRhLW9yZ2FuaXphbi11bi16b2NvLWNvbi1sYS1jb21pZGEtZG9uYWRhLXBvci1sYXMtb25ncy1taW5pYXR1cmEtMjAyNjA4MjktMTgyNTUwLTQ4MzI5NS5qcGciIGFsdD0iVu1kZW86IEludmFzb3JlcyBvcmdhbml6YW4gdW4gem9jbyBjb24gbGEgY29taWRhIHF1ZSBsZXMgZGFuoGxhcyBPTkdzIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGF5LWJ0biIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj4KICAgICAgICAgIDxoMiBjbGFzcz0idGl0bGUgdGl0bGUtbGFyZ2UiPkludmFzb3JlcyA8c3BhbiBjbGFzcz0iYWNjZW50Ij5vcmdhbml6YW4gdW4gem9jbzwvc3Bhbj4gY29uIGxhIGNvbWlkYSBxdWUgbGVzIGRhbiZuYnNwO2xhcyBPTkdzPC9oMj4KICAgICAgICA8L2E+CgogICAgICAgIDxhIGNsYXNzPSJjYXJkIgogICAgICAgICAgIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3Nob3J0cy9mQkNXLUdCbHEyOCIKICAgICAgICAgICB0YXJnZXQ9Il90b3AiCiAgICAgICAgICAgdGl0bGU9IlZlciB27WRlbzogbWFycm9xde1lcyBhdGFjYW4gYSBsb3MgY2V1dO1lcyBjb24gYm90ZWxsYXMgZGUgYWd1YXJy4XMiCiAgICAgICAgICAgYXJpYS1sYWJlbD0iVmVyIHbtZGVvOiBtYXJyb3F17WVzIGF0YWNhbiBhIGxvcyBjZXV07WVzIGNvbiBib3RlbGxhcyBkZSBhZ3VhcnLhcyIKICAgICAgICAgICBzdHlsZT0iLS1hY2NlbnQ6IzAwQTdGRiI+CiAgICAgICAgICA8aW1nIHNyYz0iaHR0cDovL29rZGlhcmlvLmNvbS9lc3BlY2lhbGVzL2FwcHMvbWVkaWEveW91dHViZS1taW5pYXR1cmEtMjAyNjA4MjktMTEyMDMxLTllNmU1Yy5qcGciIGFsdD0iVu1kZW86IG1hcnJvcXXtZXMgYXRhY2FuIGEgbG9zIGNldXTtZXMgY29uIGJvdGVsbGFzIGRlIGFndWFycuFzIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGF5LWJ0biIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj4KICAgICAgICAgIDxoMiBjbGFzcz0idGl0bGUgdGl0bGUtbGFyZ2UiPm1hcnJvcXXtZXMgYXRhY2FuIGEgbG9zIGNldXTtZXMgY29uIDxzcGFuIGNsYXNzPSJhY2NlbnQiPmJvdGVsbGFzIGRlIGFndWFycuFzJm5ic3A7PC9zcGFuPjwvaDI+CiAgICAgICAgPC9hPgoKICAgICAgICA8YSBjbGFzcz0iY2FyZCIKICAgICAgICAgICBocmVmPSJodHRwczovL3lvdXR1YmUuY29tL3Nob3J0cy9HSlBnc3RKR2tmNCIKICAgICAgICAgICB0YXJnZXQ9Il90b3AiCiAgICAgICAgICAgdGl0bGU9IlZlciB27WRlbzogVW5hIGFuY2lhbmEgbGxvcmEgYWwgdmVyIG1hbmlmZXN0YW50ZXOgIGZyZW50ZSBhIHN1IGNhc2EgZW4gQ2V1dGEiCiAgICAgICAgICAgYXJpYS1sYWJlbD0iVmVyIHbtZGVvOiBVbmEgYW5jaWFuYSBsbG9yYSBhbCB2ZXIgbWFuaWZlc3RhbnRlc6AgZnJlbnRlIGEgc3UgY2FzYSBlbiBDZXV0YSIKICAgICAgICAgICBzdHlsZT0iLS1hY2NlbnQ6IzAwQTdGRiI+CiAgICAgICAgICA8aW1nIHNyYz0iaHR0cDovL29rZGlhcmlvLmNvbS9lc3BlY2lhbGVzL2FwcHMvbWVkaWEvdW5hLWFuY2lhbmEtbGxvcmEteS1zZS1zYW50aWd1YS1hbnRlLWxhLW11bHRpdHVkLWRlLW1hbmlmZXN0YW50ZXMtcXVlLWFjdWRlbi1hLXZlcmxhLWEtc3UtdmVudGFuYS1taW5pYXR1cmEtMjAyNjA4MjgtMjEyNzQxLTlhNjcxNy5qcGciIGFsdD0iVu1kZW86IFVuYSBhbmNpYW5hIGxsb3JhIGFsIHZlciBtYW5pZmVzdGFudGVzoCBmcmVudGUgYSBzdSBjYXNhIGVuIENldXRhIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGF5LWJ0biIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj4KICAgICAgICAgIDxoMiBjbGFzcz0idGl0bGUgdGl0bGUtbGFyZ2UiPjxkaXY+VW5hIDxzcGFuIGNsYXNzPSJhY2NlbnQiPmFuY2lhbmEgbGxvcmEgPC9zcGFuPmFsIHZlciBtYW5pZmVzdGFudGVzJm5ic3A7IGZyZW50ZSBhIHN1IGNhc2EgZW4gQ2V1dGE8L2Rpdj48L2gyPgogICAgICAgIDwvYT4KCiAgICAgICAgPGEgY2xhc3M9ImNhcmQiCiAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly95b3V0dWJlLmNvbS9zaG9ydHMvRW8tUmZ1dFpVU3ciCiAgICAgICAgICAgdGFyZ2V0PSJfdG9wIgogICAgICAgICAgIHRpdGxlPSJWZXIgdu1kZW86IExvcyBpbnZhc29yZXMgdnVlbHZlbiBhIGxhIHBsYXlhIHRyYXMgY29tcHJhciBlbiBlbCBzdXBlcm1lcmNhZG8iCiAgICAgICAgICAgYXJpYS1sYWJlbD0iVmVyIHbtZGVvOiBMb3MgaW52YXNvcmVzIHZ1ZWx2ZW4gYSBsYSBwbGF5YSB0cmFzIGNvbXByYXIgZW4gZWwgc3VwZXJtZXJjYWRvIgogICAgICAgICAgIHN0eWxlPSItLWFjY2VudDojMDBBN0ZGIj4KICAgICAgICAgIDxpbWcgc3JjPSJodHRwOi8vb2tkaWFyaW8uY29tL2VzcGVjaWFsZXMvYXBwcy9tZWRpYS9sb3MtaW52YXNvcmVzLW1hcnJvcXVpZXMtZGUtY2V1dGEtdnVlbHZlbi1hLWxhLXBsYXlhLWJlbml0ZXotdHJhcy1oYWNlci1sYS1jb21wcmEtZW4tZWwtc3VwZXJtZXJjYWRvLW1pbmlhdHVyYS0yMDI2MDgyOC0yMTI4MzktNzIxMTA2LmpwZyIgYWx0PSJW7WRlbzogTG9zIGludmFzb3JlcyB2dWVsdmVuIGEgbGEgcGxheWEgdHJhcyBjb21wcmFyIGVuIGVsIHN1cGVybWVyY2FkbyIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIj4KICAgICAgICAgIAogICAgICAgICAgPGRpdiBjbGFzcz0icGxheS1idG4iIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InNoYWRlIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9kaXY+CiAgICAgICAgICA8aDIgY2xhc3M9InRpdGxlIHRpdGxlLWxhcmdlIj48ZGl2PkxvcyBpbnZhc29yZXMgdnVlbHZlbiBhIGxhIHBsYXlhIHRyYXMgPHNwYW4gY2xhc3M9ImFjY2VudCI+Y29tcHJhciBlbiBlbCBzdXBlcm1lcmNhZG88L3NwYW4+PC9kaXY+PC9oMj4KICAgICAgICA8L2E+CgogICAgICAgIDxhIGNsYXNzPSJjYXJkIgogICAgICAgICAgIGhyZWY9Imh0dHBzOi8veW91dHViZS5jb20vc2hvcnRzL21sS0FaSnVSV2t3IgogICAgICAgICAgIHRhcmdldD0iX3RvcCIKICAgICAgICAgICB0aXRsZT0iVmVyIHbtZGVvOiBMb3MgaWxlZ2FsZXMgc2UgYnVybGFuIGRlIGxvcyBjZXV07WVzIGVuIFBsYXlhIEJlbml0ZXoiCiAgICAgICAgICAgYXJpYS1sYWJlbD0iVmVyIHbtZGVvOiBMb3MgaWxlZ2FsZXMgc2UgYnVybGFuIGRlIGxvcyBjZXV07WVzIGVuIFBsYXlhIEJlbml0ZXoiCiAgICAgICAgICAgc3R5bGU9Ii0tYWNjZW50OiMwMEE3RkYiPgogICAgICAgICAgPGltZyBzcmM9Imh0dHA6Ly9va2RpYXJpby5jb20vZXNwZWNpYWxlcy9hcHBzL21lZGlhL2VsLWJ1cmxlc2NvLXJlY2liaW1pZW50by1kZS1sb3MtaW52YXNvcmVzLW1hcnJvcXVpZXMtYS1sb3MtY2V1dGllcy1lbi1wbGF5YS1iZW5pdGV6LW1pbmlhdHVyYS0yMDI2MDgyOC0yMTI5MTItMmE1OGQ1LmpwZyIgYWx0PSJW7WRlbzogTG9zIGlsZWdhbGVzIHNlIGJ1cmxhbiBkZSBsb3MgY2V1dO1lcyBlbiBQbGF5YSBCZW5pdGV6IiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGF5LWJ0biIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ic2hhZGUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj4KICAgICAgICAgIDxoMiBjbGFzcz0idGl0bGUgdGl0bGUtbGFyZ2UiPkxvcyBpbGVnYWxlcyA8c3BhbiBjbGFzcz0iYWNjZW50Ij5zZSBidXJsYW4gZGUgbG9zIGNldXTtZXMgPC9zcGFuPmVuIFBsYXlhIEJlbml0ZXo8L2gyPgogICAgICAgIDwvYT4KCiAgICAgICAgPGEgY2xhc3M9ImNhcmQiCiAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly95b3V0dWJlLmNvbS9zaG9ydHMvUF9NYWNxUkR0UUkiCiAgICAgICAgICAgdGFyZ2V0PSJfdG9wIgogICAgICAgICAgIHRpdGxlPSJWZXIgdu1kZW86IGNldXTtZXOgY2xhbWFuIGNvbnRyYSBlbCBHb2JpZXJubzogJnF1b3Q7Tm8gaGFuIGhlY2hvIG5hZGEmcXVvdDsiCiAgICAgICAgICAgYXJpYS1sYWJlbD0iVmVyIHbtZGVvOiBjZXV07WVzoGNsYW1hbiBjb250cmEgZWwgR29iaWVybm86ICZxdW90O05vIGhhbiBoZWNobyBuYWRhJnF1b3Q7IgogICAgICAgICAgIHN0eWxlPSItLWFjY2VudDojMDBBN0ZGIj4KICAgICAgICAgIDxpbWcgc3JjPSJodHRwOi8vb2tkaWFyaW8uY29tL2VzcGVjaWFsZXMvYXBwcy9tZWRpYS9jZXV0aWVzLWNsYW1hbi1jb250cmEtZWwtZ29iaWVybm8tbm8taGFuLWhlY2hvLWFic29sdXRhbWVudGUtbmFkYS1taW5pYXR1cmEtMjAyNjA4MjgtMjEzMDEyLWMzYWZlOC5qcGciIGFsdD0iVu1kZW86IGNldXTtZXOgY2xhbWFuIGNvbnRyYSBlbCBHb2JpZXJubzogJnF1b3Q7Tm8gaGFuIGhlY2hvIG5hZGEmcXVvdDsiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgICAKICAgICAgICAgIDxkaXYgY2xhc3M9InBsYXktYnRuIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzaGFkZSIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PgogICAgICAgICAgPGgyIGNsYXNzPSJ0aXRsZSB0aXRsZS1sYXJnZSI+PGRpdj5jZXV07WVzJm5ic3A7PHNwYW4gY2xhc3M9ImFjY2VudCI+Y2xhbWFuIGNvbnRyYSBlbCBHb2JpZXJubzwvc3Bhbj46ICJObyBoYW4gaGVjaG8gbmFkYSI8L2Rpdj48L2gyPgogICAgICAgIDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9zZWN0aW9uPgogICAgPC9kaXY+CiAgICA8c2NyaXB0PgogICAgKGZ1bmN0aW9uKCl7CiAgICAgIHZhciByb290ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmN2LWQwaDEwJyk7CiAgICAgIGlmICghcm9vdCkgcmV0dXJuOwogICAgICB2YXIgdHJhY2sgPSByb290LnF1ZXJ5U2VsZWN0b3IoJy50cmFjaycpOwogICAgICBpZiAoIXRyYWNrKSByZXR1cm47CgogICAgICB2YXIgYXJyb3dzID0gcm9vdC5xdWVyeVNlbGVjdG9yQWxsKCcuYXJyb3cnKTsKICAgICAgdmFyIEdBUCA9IDE2OwoKICAgICAgZnVuY3Rpb24gZ2V0Q2FyZFdpZHRoKCl7CiAgICAgICAgdmFyIGZpcnN0ID0gcm9vdC5xdWVyeVNlbGVjdG9yKCcuY2FyZCcpOwogICAgICAgIGlmICghZmlyc3QpIHJldHVybiAwOwogICAgICAgIHJldHVybiBmaXJzdC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDsKICAgICAgfQoKICAgICAgZnVuY3Rpb24gZ2V0Q2FyZHNQZXJQYWdlKCl7CiAgICAgICAgcmV0dXJuICh3aW5kb3cuaW5uZXJXaWR0aCA8PSA3NjgpID8gMiA6IDQ7CiAgICAgIH0KCiAgICAgIC8vIEh1ZWNvIGEgbGEgZGVyZWNoYSBkZWwgdHJhY2sgPSAxMCUgZGVsIGFuY2hvIGRlIFVOQSB0YXJqZXRhIChubyBkZWwKICAgICAgLy8gY29udGVuZWRvciksIHBhcmEgcXVlIHNlIGludHV5YSB2aXN1YWxtZW50ZSBxdWUgaGF5IG3hcyB27WRlb3MuCiAgICAgIGZ1bmN0aW9uIHVwZGF0ZVBhZEhpbnQoKXsKICAgICAgICB2YXIgY2FyZFcgPSBnZXRDYXJkV2lkdGgoKTsKICAgICAgICBpZiAoIWNhcmRXKSByZXR1cm47CiAgICAgICAgdHJhY2suc3R5bGUucGFkZGluZ1JpZ2h0ID0gTWF0aC5yb3VuZChjYXJkVyAqIDAuMTApICsgJ3B4JzsKICAgICAgfQogICAgICB1cGRhdGVQYWRIaW50KCk7CiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdyZXNpemUnLCB1cGRhdGVQYWRIaW50KTsKCiAgICAgIGFycm93cy5mb3JFYWNoKGZ1bmN0aW9uKGJ0bil7CiAgICAgICAgYnRuLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24oZSl7CiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgICB2YXIgZGlyID0gdGhpcy5jbGFzc0xpc3QuY29udGFpbnMoJ2xlZnQnKSA/IC0xIDogMTsKICAgICAgICAgIHZhciBjYXJkVyA9IGdldENhcmRXaWR0aCgpOwogICAgICAgICAgaWYgKCFjYXJkVykgcmV0dXJuOwogICAgICAgICAgdmFyIHN0ZXAgPSAoY2FyZFcgKyBHQVApICogZ2V0Q2FyZHNQZXJQYWdlKCkgKiBkaXI7CiAgICAgICAgICB0cmFjay5zY3JvbGxCeSh7IGxlZnQ6IHN0ZXAsIGJlaGF2aW9yOiAnc21vb3RoJyB9KTsKICAgICAgICB9KTsKICAgICAgfSk7CgogICAgICB2YXIgdGVhc2VyQ2FyZHMgPSByb290LnF1ZXJ5U2VsZWN0b3JBbGwoJy5jYXJkLmhhcy10ZWFzZXInKTsKICAgICAgdGVhc2VyQ2FyZHMuZm9yRWFjaChmdW5jdGlvbihjYXJkKXsKICAgICAgICB2YXIgdiA9IGNhcmQucXVlcnlTZWxlY3RvcigndmlkZW8udGVhc2VyJyk7CiAgICAgICAgaWYgKCF2KSByZXR1cm47CgogICAgICAgIGNhcmQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VlbnRlcicsIGZ1bmN0aW9uKCl7CiAgICAgICAgICB0cnl7CiAgICAgICAgICAgIHYuY3VycmVudFRpbWUgPSAwOwogICAgICAgICAgICB2YXIgcCA9IHYucGxheSgpOwogICAgICAgICAgICBpZiAocCAmJiB0eXBlb2YgcC50aGVuID09PSAnZnVuY3Rpb24nKSB7CiAgICAgICAgICAgICAgcC5jYXRjaChmdW5jdGlvbigpe30pOwogICAgICAgICAgICB9CiAgICAgICAgICB9Y2F0Y2goZSl7fQogICAgICAgIH0pOwoKICAgICAgICBjYXJkLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCBmdW5jdGlvbigpewogICAgICAgICAgdHJ5ewogICAgICAgICAgICB2LnBhdXNlKCk7CiAgICAgICAgICAgIHYuY3VycmVudFRpbWUgPSAwOwogICAgICAgICAgfWNhdGNoKGUpe30KICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9KSgpOwogICAgPC9zY3JpcHQ+
    • Renfe recorta 12.500 plazas de AVE y Larga Distancia en la operación retorno frente al verano de 2025
    • Los 19.300 millones que costarían las ayudas por hijo de Rego equivalen al 31% del IRPF anual medio que paga un español
        • Economía
        • Economía

      el coste de las ayudas por hijo de Rego equivalen al 31% del IRPF anual medio que paga un español

      • Jose de la Morena
      • 2026-08-30 05:45
    • Las empresas que usan IA como ChatGPT en su trabajo se arriesgan a demandas por derechos de autor
        • Economía
        • Economía

      Las empresas que usan IA como ChatGPT en su trabajo "se arriesgan a demandas por derechos de autor"

      • Benjamín Santamaría
      • 2026-08-30 05:45
    • Real Madrid - Málaga: Mbappé amenaza al Málaga con Cristiano en el horizonte
    • Alineación del Real Madrid contra el Málaga: Diomande apunta a titular
        • Real Madrid
        • Real Madrid

      Diomande apunta a titular

      • Iván Martín
      • 2026-08-29 18:00
    • No hay caso Brahim: confianza total pese a jugar poco
        • Real Madrid
        • Real Madrid

      No hay caso Brahim: confianza total pese a jugar poco

      • Iván Martín
      • 2026-08-30 08:00
    • Bellingham desvela lo que más le agradece a Mourinho: Me da libertad para...
        • Real Madrid
        • Real Madrid

      Bellingham desvela lo que más le agradece a Mourinho: "Me da libertad para..."

      • Pablo Villanueva
      • 2026-08-29 19:47
    • Vuelta a la rutina, pero con un vino
    • Las dos caras del imperio empresarial de Sandra García-Sanjuán: Starlite factura más de 50 millones mientras Avory sigue en la lista de morosos
        • Cool
        • Cool

      Las dos caras del imperio de Sandra García-Sanjuán: Starlite factura 50 millones pero Avory sigue en la lista de morosos

      Cada verano, el nombre de Sandra García-Sanjuán se convierte en sinónimo de glamour. La presidenta ejecutiva de Starlite Occident, junto a su marido Ignacio Maluquer, recibe en Marbella a artistas internacionales, empresarios, deportistas y rostros conocidos en uno de los festivales más exclusivos del calendario. Sin embargo, detrás de la imagen de éxito convive otra realidad menos brillante.
      • Lourdes Crespo
      • 2026-08-30 05:45
    • El emotivo discurso de Haakon VIII como nuevo rey de Noruega en recuerdo a Harald V: Gracias por haber sido un padre tan bueno
        • Cool
        • Cool

      El emotivo discurso de Haakon VIII como nuevo rey de Noruega en recuerdo a Harald V: "Gracias por haber sido un padre tan bueno"

      • Javi Fernández
      • 2026-08-29 22:46
    • Sofía sería hoy viuda...
    • Sube & Baja, por Jaime Peñafiel: semana del 22 al 28 de agosto
    • OK AL DÍA

    • Stephen King, escritor: El talento es más barato que la sal de mesa; lo que separa al individuo con talento del exitoso es el trabajo duro
        • Curiosidades
        • Curiosidades

      Stephen King: "El talento es más barato que la sal de mesa"

      • Janire Manzanas
      • 2026-08-30 08:00
    • Estupor entre los arqueólogos: hallan en Filipinas un barco naufragado en la II Guerra Mundial con más de 1.000 prisioneros a bordo
        • Historia
        • Historia

      hallan en Filipinas un barco de la II Guerra Mundial con más de 1.000 prisioneros a bordo

      • Naiara Philpotts
      • 2026-08-30 08:00
    • Un abogado experto avisa por el dinero en efectivo que guardas en casa: Al meterlo en el banco te van a obligar a justificar el origen de los fondos
        • Economía
        • Economía

      Un abogado experto avisa del dinero en efectivo en casa: "te van a obligar a justificar el origen de los fondos"

      Guardar dinero en efectivo en casa es legal, pero hacerlo durante años puede acabar dando algún que otro problema si llega el momento de ingresarlo en el banco. Así lo advierte Andrés Millán, abogado, que pone como ejemplo el caso de un jubilado que había acumulado 200.000 € fuera del banco durante décadas. 
      • Blanca Espada
      • 2026-08-30 08:00
    • Pocos lo saben pero Alfonso Muñoz, funcionario del INSS, avisa: Compensa no solicitar la jubilación anticipada
        • Economía
        • Economía

      Alfonso Muñoz, funcionario del INSS, avisa: "Compensa no solicitar la jubilación anticipada"

      • Blanca Espada
      • 2026-08-30 08:30
    • Todos tiramos los huesos de aguacate a la basura, cuando basta con darles una vuelta en el horno para transformarlos en accesorios de jardín
        • Curiosidades
        • Curiosidades

      Todos tiramos los huesos de aguacate a la basura, pero en el horno tienen su uso

      • Pedro Antolinos
      • 2026-08-30 07:30
    • Mario Alonso Puig, médico español experto en emociones: Aguantarse enferma; reír y llorar es lo que más cura
        • Curiosidades
        • Curiosidades

      Mario Alonso Puig, médico español: "Aguantarse enferma; reír y llorar es lo que más cura"

      • Sofía Narváez
      • 2026-08-30 07:45
    • Un experto en aire acondicionado lo confirma: No limpiar bien los filtros del aire acondicionado cada 15 o 30 días en verano reduce la eficiencia a la mitad
        • Curiosidades
        • Curiosidades

      "No limpiar bien los filtros del aire acondicionado cada 15 días reduce la eficiencia a la mitad"

      • Blanca Espada
      • 2026-08-30 08:42
    • Primark lo vuelve a hacer con el maquillaje: los polvos bronceadores compactos con espejo de PS Pro que arrasan entre las amantes del beauty
        • Economía
        • Economía

      Primark lo vuelve a hacer: los polvos bronceadores compactos con espejo de PS Pro que arrasan

      • Blanca Espada
      • 2026-08-30 07:30
    • Juan Ramón Jiménez, premio Nobel de Literatura autor de Platero y yo: Al hombre que es bueno debieran decirle asno; al asno que es malo debieran decirle hombre
        • Curiosidades
        • Curiosidades

      Juan Ramón Jiménez: "Al hombre que es bueno debieran decirle asno; al asno que es malo hombre"

      • Ana López Vera
      • 2026-08-30 07:30
    • CiAgICA8c3R5bGU+CiAgICBAaW1wb3J0IHVybCgnaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvaXFhMXFlYi5jc3MnKTsKCiAgICAvKiBDb250ZW5lZG9yIHByaW5jaXBhbCBsaW1pdGFkbyBhIDk2MHB4IGVuIGVzY3JpdG9yaW8gKi8KICAgIC5jdi15ZWFvZiAuc2VjdGlvbnttYXgtd2lkdGg6OTYwcHg7bWFyZ2luOjAgYXV0bzt3aWR0aDoxMDAlfQoKICAgIC5jdi15ZWFvZiAuYmctc2VjdGlvbi10aXRsZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbjo4cHggMCA1MHB4fQogICAgLmN2LXllYW9mIC5mbmQtbGluZWF7d2lkdGg6MTAwJTtoZWlnaHQ6NXB4O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7bWFyZ2luLXRvcDotMjVweDtib3JkZXItdG9wOjFweCBzb2xpZCAjMzMzO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICMzMzN9CiAgICAuY3YteWVhb2YgLnNlY3Rpb24tdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dGV4dC1hbGlnbjpjZW50ZXI7bWFyZ2luOjA7bGluZS1oZWlnaHQ6MS4yO2xldHRlci1zcGFjaW5nOi0xcHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2JhY2tncm91bmQ6I2ZmZjtwYWRkaW5nOjRweCAxM3B4O2JvcmRlcjoxcHggc29saWQgIzMzMztmb250LXNpemU6NDJweDt0cmFuc2Zvcm06cm90YXRlWCg1ZGVnKSByb3RhdGVZKC0yNWRlZykgc2tld1goMGRlZyl9CgogICAgLmN2LXllYW9mIC5jYXJvdXNlbHstLWdhcDoxNnB4Oy0tcGVlazoxMCU7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tZ2FwKTtvdmVyZmxvdzpoaWRkZW47cGFkZGluZy1ib3R0b206NnB4fQogICAgLmN2LXllYW9mIC50cmFja3tkaXNwbGF5OmZsZXg7Z2FwOnZhcigtLWdhcCk7b3ZlcmZsb3cteDphdXRvO292ZXJmbG93LXk6aGlkZGVuO3Njcm9sbC1zbmFwLXR5cGU6eCBtYW5kYXRvcnk7c2Nyb2xsLWJlaGF2aW9yOnNtb290aDtzY3JvbGxiYXItd2lkdGg6bm9uZTstbXMtb3ZlcmZsb3ctc3R5bGU6bm9uZTtwYWRkaW5nLXJpZ2h0OnZhcigtLXBlZWspfQogICAgLmN2LXllYW9mIC50cmFjazo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfQogICAgLmN2LXllYW9mIC5jYXJke3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXg6MCAwIGF1dG87c2Nyb2xsLXNuYXAtYWxpZ246c3RhcnQ7d2lkdGg6Y2FsYygoMTAwJSAtIDIqdmFyKC0tZ2FwKSAtIHZhcigtLXBlZWspKS8zKTthc3BlY3QtcmF0aW86OS8xNjtib3JkZXItcmFkaXVzOjEwcHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6IzAwMDtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNnB4KTt0cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGVhc2UsIHRyYW5zZm9ybSAuNHMgZWFzZX0KICAgIC5jdi15ZWFvZiAuY2FyZC5pcy1pbntvcGFjaXR5OjE7dHJhbnNmb3JtOm5vbmV9CgogICAgLmN2LXllYW9mIC50aHVtYntwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb3Zlcjt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIGVhc2UsIG9wYWNpdHkgLjI1cyBlYXNlO3RyYW5zZm9ybTpzY2FsZSgxLjAxKX0KICAgIC5jdi15ZWFvZiAuY2FyZDpob3ZlciAudGh1bWIsLmN2LXllYW9mIC5jYXJkOmZvY3VzLXZpc2libGUgLnRodW1ie3RyYW5zZm9ybTpzY2FsZSgxLjA2KX0KICAgIC8qIFNpbiBvdmVybGF5cyBwZXJzb25hbGl6YWRvczogc2UgdXNhbiBjb250cm9sZXMgbmF0aXZvcyBkZWwgcGxheWVyICovCgogICAgLmN2LXllYW9mIC5hcntwb3NpdGlvbjpyZWxhdGl2ZX0KICAgIC5jdi15ZWFvZiAuYXJyb3d7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt3aWR0aDo0NHB4O2hlaWdodDo0NHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6cmdiKDI1NSAyNTUgMjU1IC8gMjAlKTtib3gtc2hhZG93OjAgNnB4IDE2cHggcmdiKDAgMCAwIC8gMjAlKTtib3JkZXI6MXB4IHNvbGlkICNmZmY7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2N1cnNvcjpwb2ludGVyO3otaW5kZXg6Mjt0cmFuc2l0aW9uOi4zc30KICAgIC5jdi15ZWFvZiAuYXJyb3c6aG92ZXJ7YmFja2dyb3VuZDpyZ2IoMCAwIDAgLyAyMCUpO2JvcmRlcjoxcHggc29saWQgI2ZmZn0KICAgIC5jdi15ZWFvZiAuYXJyb3c6Zm9jdXN7YmFja2dyb3VuZDpyZ2IoMjU1IDI1NSAyNTUgLyAyMCUpfQogICAgLmN2LXllYW9mIC5hcnJvdyBzdmd7d2lkdGg6MjBweDtoZWlnaHQ6MjBweH0KICAgIC5jdi15ZWFvZiAuYXJyb3cubGVmdHtsZWZ0OjEwcHh9CiAgICAuY3YteWVhb2YgLmFycm93LnJpZ2h0e3JpZ2h0OjEwcHh9CgogICAgQG1lZGlhIChtYXgtd2lkdGg6NzY4cHgpewogICAgICAvKiBFbiBt83ZpbCwgZWwgY29udGVuZWRvciBvY3VwYSB0b2RvIGVsIGFuY2hvICovCiAgICAgIC5jdi15ZWFvZiAuc2VjdGlvbnttYXgtd2lkdGg6MTAwJX0KICAgICAgLmN2LXllYW9mIC5zZWN0aW9uLXRpdGxle2ZvbnQtc2l6ZToyN3B4O3BhZGRpbmc6MnB4IDhweDt0cmFuc2Zvcm06cm90YXRlWCg1ZGVnKSByb3RhdGVZKC0yNWRlZykgc2tld1goMGRlZyl9CiAgICAgIC5jdi15ZWFvZiAuY2Fyb3VzZWx7LS1wZWVrOjEyJX0KICAgICAgLyogMiB0YXJqZXRhcyBjb21wbGV0YXMgKyB1biBwZWVrIGRlIGxhIDOqICovCiAgICAgIC5jdi15ZWFvZiAuY2FyZHt3aWR0aDpjYWxjKCgxMDAlIC0gNCp2YXIoLS1nYXApIC0gdmFyKC0tcGVlaykpLzEpfQogICAgICAuY3YteWVhb2YgLmFycm93e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fQogICAgICAuY3YteWVhb2YgLnRyYWNre292ZXJmbG93LXg6YXV0bztvdmVyZmxvdy15OmhpZGRlbjtwYWRkaW5nLXJpZ2h0OnZhcigtLXBlZWspfQogICAgfQogICAgPC9zdHlsZT4KCiAgICA8ZGl2IGNsYXNzPSJjdi15ZWFvZiI+CiAgICAgIDxzZWN0aW9uIGNsYXNzPSJzZWN0aW9uIiBhcmlhLWxhYmVsPSJDYXJydXNlbCBkZSB27WRlb3MgKFNob3J0cykiPgogICAgICAgIDxkaXYgY2xhc3M9ImJnLXNlY3Rpb24tdGl0bGUiPgogICAgICAgICAgPGgyIGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5Mb3MgJ3Nob3J0cycgZGUgT0tESUFSSU88L2gyPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImZuZC1saW5lYSI+PC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImFyIiByb2xlPSJyZWdpb24iIGFyaWEtbGFiZWw9Ikxpc3RhZG8gZGUgdu1kZW9zIj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFycm93IGxlZnQiIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iQW50ZXJpb3IiPgogICAgICAgICAgICA8c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik0xNSA2bC02IDYgNiA2IiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+CiAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFycm93IHJpZ2h0IiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9IlNpZ3VpZW50ZSI+CiAgICAgICAgICAgIDxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTkgMThsNi02LTYtNiIgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPgogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJvdXNlbCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRyYWNrIiByb2xlPSJsaXN0Ij4KCiAgICAgICAgPGEgY2xhc3M9ImNhcmQiIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3Nob3J0cy95eE92LWMxYi10NCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGRhdGEteXQtaWQ9Inl4T3YtYzFiLXQ0IiB0aXRsZT0iVmVyIHNob3J0Ij4KICAgICAgICAgIDxpbWcgY2xhc3M9InRodW1iIiBzcmM9Imh0dHBzOi8vaS55dGltZy5jb20vdmkveXhPdi1jMWItdDQvaHFkZWZhdWx0LmpwZyIgYWx0PSJZb3VUdWJlIFNob3J0IDEiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgPC9hPgogICAgICAgIDxhIGNsYXNzPSJjYXJkIiBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9zaG9ydHMvTHdLT3FXMnJ2UDgiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIiBkYXRhLXl0LWlkPSJMd0tPcVcycnZQOCIgdGl0bGU9IlZlciBzaG9ydCI+CiAgICAgICAgICA8aW1nIGNsYXNzPSJ0aHVtYiIgc3JjPSJodHRwczovL2kueXRpbWcuY29tL3ZpL0x3S09xVzJydlA4L2hxZGVmYXVsdC5qcGciIGFsdD0iWW91VHViZSBTaG9ydCAyIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgIDwvYT4KICAgICAgICA8YSBjbGFzcz0iY2FyZCIgaHJlZj0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vc2hvcnRzL0cwZTRWNXpFVWlrIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgZGF0YS15dC1pZD0iRzBlNFY1ekVVaWsiIHRpdGxlPSJWZXIgc2hvcnQiPgogICAgICAgICAgPGltZyBjbGFzcz0idGh1bWIiIHNyYz0iaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS9HMGU0VjV6RVVpay9ocWRlZmF1bHQuanBnIiBhbHQ9IllvdVR1YmUgU2hvcnQgMyIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIj4KICAgICAgICA8L2E+CiAgICAgICAgPGEgY2xhc3M9ImNhcmQiIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3Nob3J0cy9Ma2NmRV9iOVFROCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGRhdGEteXQtaWQ9IkxrY2ZFX2I5UVE4IiB0aXRsZT0iVmVyIHNob3J0Ij4KICAgICAgICAgIDxpbWcgY2xhc3M9InRodW1iIiBzcmM9Imh0dHBzOi8vaS55dGltZy5jb20vdmkvTGtjZkVfYjlRUTgvaHFkZWZhdWx0LmpwZyIgYWx0PSJZb3VUdWJlIFNob3J0IDQiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgPC9hPgogICAgICAgIDxhIGNsYXNzPSJjYXJkIiBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9zaG9ydHMvYWVFMDg2Z1ZoejQiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIiBkYXRhLXl0LWlkPSJhZUUwODZnVmh6NCIgdGl0bGU9IlZlciBzaG9ydCI+CiAgICAgICAgICA8aW1nIGNsYXNzPSJ0aHVtYiIgc3JjPSJodHRwczovL2kueXRpbWcuY29tL3ZpL2FlRTA4NmdWaHo0L2hxZGVmYXVsdC5qcGciIGFsdD0iWW91VHViZSBTaG9ydCA1IiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgIDwvYT4KICAgICAgICA8YSBjbGFzcz0iY2FyZCIgaHJlZj0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vc2hvcnRzL1VsZm42MVBKcVdrIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgZGF0YS15dC1pZD0iVWxmbjYxUEpxV2siIHRpdGxlPSJWZXIgc2hvcnQiPgogICAgICAgICAgPGltZyBjbGFzcz0idGh1bWIiIHNyYz0iaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS9VbGZuNjFQSnFXay9ocWRlZmF1bHQuanBnIiBhbHQ9IllvdVR1YmUgU2hvcnQgNiIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIj4KICAgICAgICA8L2E+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvc2VjdGlvbj4KICAgIDwvZGl2PgogICAgPHNjcmlwdD4KICAgIChmdW5jdGlvbigpewogICAgICB2YXIgcm9vdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5jdi15ZWFvZicpOwogICAgICBpZiAoIXJvb3QpIHJldHVybjsKICAgICAgdmFyIHRyYWNrID0gcm9vdC5xdWVyeVNlbGVjdG9yKCcudHJhY2snKTsKICAgICAgaWYgKCF0cmFjaykgcmV0dXJuOwoKICAgICAgdmFyIGFycm93cyA9IHJvb3QucXVlcnlTZWxlY3RvckFsbCgnLmFycm93Jyk7CiAgICAgIHZhciBHQVAgPSAxNjsKCiAgICAgIGZ1bmN0aW9uIGdldENhcmRXaWR0aCgpewogICAgICAgIHZhciBmaXJzdCA9IHJvb3QucXVlcnlTZWxlY3RvcignLmNhcmQnKTsKICAgICAgICBpZiAoIWZpcnN0KSByZXR1cm4gMDsKICAgICAgICByZXR1cm4gZmlyc3QuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGg7CiAgICAgIH0KCiAgICAgIGZ1bmN0aW9uIGdldENhcmRzUGVyUGFnZSgpewogICAgICAgIHJldHVybiAod2luZG93LmlubmVyV2lkdGggPD0gNzY4KSA/IDIgOiA0OwogICAgICB9CgogICAgICBhcnJvd3MuZm9yRWFjaChmdW5jdGlvbihidG4pewogICAgICAgIGJ0bi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKGUpewogICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgICAgdmFyIGRpciA9IHRoaXMuY2xhc3NMaXN0LmNvbnRhaW5zKCdsZWZ0JykgPyAtMSA6IDE7CiAgICAgICAgICB2YXIgY2FyZFcgPSBnZXRDYXJkV2lkdGgoKTsKICAgICAgICAgIGlmICghY2FyZFcpIHJldHVybjsKICAgICAgICAgIHZhciBzdGVwID0gKGNhcmRXICsgR0FQKSAqIGdldENhcmRzUGVyUGFnZSgpICogZGlyOwogICAgICAgICAgdHJhY2suc2Nyb2xsQnkoeyBsZWZ0OiBzdGVwLCBiZWhhdmlvcjogJ3Ntb290aCcgfSk7CiAgICAgICAgfSk7CiAgICAgIH0pOwoKICAgICAgLy8gRmFkZS1pbiBhbCBlbnRyYXIgZW4gdmlld3BvcnQKICAgICAgdmFyIGlvID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGZ1bmN0aW9uKGVudHJpZXMpewogICAgICAgIGVudHJpZXMuZm9yRWFjaChmdW5jdGlvbihlbil7IGlmKGVuLmlzSW50ZXJzZWN0aW5nKXsgZW4udGFyZ2V0LmNsYXNzTGlzdC5hZGQoJ2lzLWluJyk7IH0gfSk7CiAgICAgIH0sIHsgcm9vdDogdHJhY2ssIHRocmVzaG9sZDogMC4xIH0pOwogICAgICByb290LnF1ZXJ5U2VsZWN0b3JBbGwoJy5jYXJkJykuZm9yRWFjaChmdW5jdGlvbihjKXsgaW8ub2JzZXJ2ZShjKTsgfSk7CgogICAgICAvLyBDbGljayBwZXJzaXN0ZW50ZSAoc2luIHRlYXNlciBwb3IgaG92ZXIpCiAgICAgIGZ1bmN0aW9uIG1ha2VFbWJlZFVybChpZCwgb3B0cyl7CiAgICAgICAgdmFyIHFzID0gWwogICAgICAgICAgJ2F1dG9wbGF5PScgKyAob3B0cyAmJiBvcHRzLmF1dG9wbGF5PyAnMSc6JzAnKSwKICAgICAgICAgICdwbGF5c2lubGluZT0xJywnZnM9MScsJ2l2X2xvYWRfcG9saWN5PTMnLCdzaG93aW5mbz0xJywncmVsPTAnLCdjY19sb2FkX3BvbGljeT0wJywnc3RhcnQ9MCcsCiAgICAgICAgICAnbXV0ZT0nICsgKG9wdHMgJiYgb3B0cy5tdXRlPyAnMSc6JzAnKSwKICAgICAgICAgIChvcHRzICYmIG9wdHMuY29udHJvbHM9PT0wPyAnY29udHJvbHM9MCc6J2NvbnRyb2xzPTEnKSwKICAgICAgICAgICdtb2Rlc3RicmFuZGluZz0xJywnZW5hYmxlanNhcGk9MScKICAgICAgICBdLmpvaW4oJyYnKTsKICAgICAgICByZXR1cm4gJ2h0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkLycgKyBpZCArICc/JyArIHFzOwogICAgICB9CgogICAgICAvLyBDYXJnYXIgQVBJIGRlIFlvdVR1YmUgYmFqbyBkZW1hbmRhCiAgICAgIHZhciB5dEFwaVByb21pc2UgPSBudWxsOwogICAgICBmdW5jdGlvbiBlbnN1cmVZVEFwaSgpewogICAgICAgIGlmICh3aW5kb3cuWVQgJiYgd2luZG93LllULlBsYXllcikgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpOwogICAgICAgIGlmICh5dEFwaVByb21pc2UpIHJldHVybiB5dEFwaVByb21pc2U7CiAgICAgICAgeXRBcGlQcm9taXNlID0gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSl7CiAgICAgICAgICB2YXIgcHJldkNiID0gd2luZG93Lm9uWW91VHViZUlmcmFtZUFQSVJlYWR5OwogICAgICAgICAgd2luZG93Lm9uWW91VHViZUlmcmFtZUFQSVJlYWR5ID0gZnVuY3Rpb24oKXsgaWYgKHR5cGVvZiBwcmV2Q2I9PT0nZnVuY3Rpb24nKSB7IHRyeXsgcHJldkNiKCk7IH1jYXRjaChfKXt9IH0gcmVzb2x2ZSgpOyB9OwogICAgICAgICAgdmFyIHMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsKICAgICAgICAgIHMuc3JjID0gJ2h0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2lmcmFtZV9hcGknOwogICAgICAgICAgZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4geXRBcGlQcm9taXNlOwogICAgICB9CgogICAgICAvLyBJbnN0YW5jaWFyIHBsYXllciBuYXRpdm8gZW4gdGFyamV0YXMgdmlzaWJsZXMgcGFyYSBxdWUgZWwgaWNvbm8gZGUgcGxheSBhcGFyZXpjYSBkZXNkZSBlbCBpbmljaW8KICAgICAgZnVuY3Rpb24gaW5pdFBsYXllckZvckNhcmQoY2FyZCl7CiAgICAgICAgaWYoIWNhcmQgfHwgY2FyZC5feXRQbGF5ZXIgfHwgY2FyZC5feXRJbml0KSByZXR1cm47CiAgICAgICAgdmFyIGlkID0gY2FyZC5nZXRBdHRyaWJ1dGUoJ2RhdGEteXQtaWQnKTsKICAgICAgICBpZighaWQpIHJldHVybjsKICAgICAgICBjYXJkLl95dEluaXQgPSB0cnVlOwogICAgICAgIHZhciBwb3N0ZXIgPSBjYXJkLnF1ZXJ5U2VsZWN0b3IoJ2ltZy50aHVtYicpOwogICAgICAgIHZhciBob2xkZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKICAgICAgICBob2xkZXIuc3R5bGUucG9zaXRpb249J2Fic29sdXRlJzsgaG9sZGVyLnN0eWxlLmluc2V0PScwJzsgaG9sZGVyLnN0eWxlLndpZHRoPScxMDAlJzsgaG9sZGVyLnN0eWxlLmhlaWdodD0nMTAwJSc7IGhvbGRlci5zdHlsZS5iYWNrZ3JvdW5kPScjMDAwJzsKICAgICAgICBpZihwb3N0ZXIpeyBjYXJkLmluc2VydEJlZm9yZShob2xkZXIsIHBvc3Rlcik7IH0gZWxzZSB7IGNhcmQuYXBwZW5kQ2hpbGQoaG9sZGVyKTsgfQogICAgICAgIC8vIE9jdWx0YW1vcyBlbCBw83N0ZXIgY3VhbnRvIGFudGVzIHBhcmEgZGVqYXIgdmVyIGVsIG92ZXJsYXkgbmF0aXZvCiAgICAgICAgaWYocG9zdGVyKXsgcG9zdGVyLnN0eWxlLnRyYW5zaXRpb24gPSBwb3N0ZXIuc3R5bGUudHJhbnNpdGlvbiB8fCAnb3BhY2l0eSAuMTVzIGVhc2UnOyBwb3N0ZXIuc3R5bGUub3BhY2l0eT0nMCc7IHBvc3Rlci5zdHlsZS5wb2ludGVyRXZlbnRzPSdub25lJzsgfQogICAgICAgIGVuc3VyZVlUQXBpKCkudGhlbihmdW5jdGlvbigpewogICAgICAgICAgdmFyIHBsYXllciA9IG5ldyBZVC5QbGF5ZXIoaG9sZGVyLCB7CiAgICAgICAgICAgIHZpZGVvSWQ6IGlkLAogICAgICAgICAgICBwbGF5ZXJWYXJzOiB7IGF1dG9wbGF5OjAsIGNvbnRyb2xzOjEsIHJlbDowLCBwbGF5c2lubGluZToxLCBpdl9sb2FkX3BvbGljeTozLCBtb2Rlc3RicmFuZGluZzoxLCBmczoxLCBvcmlnaW46IChsb2NhdGlvbiAmJiBsb2NhdGlvbi5vcmlnaW4pID8gbG9jYXRpb24ub3JpZ2luIDogdW5kZWZpbmVkIH0sCiAgICAgICAgICAgIGV2ZW50czogewogICAgICAgICAgICAgIG9uUmVhZHk6IGZ1bmN0aW9uKCl7CiAgICAgICAgICAgICAgICBpZihwb3N0ZXIpeyBwb3N0ZXIuc3R5bGUub3BhY2l0eT0nMCc7IHBvc3Rlci5zdHlsZS5wb2ludGVyRXZlbnRzPSdub25lJzsgfQogICAgICAgICAgICAgICAgLy8gRm9yemFyIHBlcm1pc29zIGRlIHBhbnRhbGxhIGNvbXBsZXRhIGVuIGVsIGlmcmFtZSBnZW5lcmFkbwogICAgICAgICAgICAgICAgdHJ5ewogICAgICAgICAgICAgICAgICB2YXIgaWZyID0gcGxheWVyLmdldElmcmFtZSAmJiBwbGF5ZXIuZ2V0SWZyYW1lKCk7CiAgICAgICAgICAgICAgICAgIGlmIChpZnIpewogICAgICAgICAgICAgICAgICAgIGlmci5zZXRBdHRyaWJ1dGUoJ2FsbG93ZnVsbHNjcmVlbicsJycpOwogICAgICAgICAgICAgICAgICAgIHZhciBjdXIgPSBpZnIuZ2V0QXR0cmlidXRlKCdhbGxvdycpIHx8ICcnOwogICAgICAgICAgICAgICAgICAgIGlmci5zZXRBdHRyaWJ1dGUoJ2FsbG93JywgKGN1ciA/IGN1ciArICc7ICcgOiAnJykgKyAnZnVsbHNjcmVlbicpOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9Y2F0Y2goXyl7IH0KICAgICAgICAgICAgICAgIGNhcmQuX3l0UGxheWVyID0gcGxheWVyOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfSkuY2F0Y2goZnVuY3Rpb24oKXsKICAgICAgICAgIHRyeXsgY2FyZC5yZW1vdmVDaGlsZChob2xkZXIpOyB9Y2F0Y2goXyl7IH0KICAgICAgICAgIC8vIFNpIGZhbGxhIGxhIEFQSSwgZGVqYW1vcyBlbCBw83N0ZXIgaGFzdGEgaW50ZXJhY2Np824KICAgICAgICAgIGlmKHBvc3Rlcil7IHBvc3Rlci5zdHlsZS5vcGFjaXR5PScnOyBwb3N0ZXIuc3R5bGUucG9pbnRlckV2ZW50cz0nJzsgfQogICAgICAgICAgY2FyZC5feXRJbml0ID0gZmFsc2U7CiAgICAgICAgfSk7CiAgICAgIH0KCiAgICAgIC8vIEluaWNpYWxpemFyIGF1dG9t4XRpY2FtZW50ZSBsb3MgcGxheWVycyBkZSBsYXMgdGFyamV0YXMgdmlzaWJsZXMgYWwgY2FyZ2FyCiAgICAgIHZhciBpbml0SU8gPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZnVuY3Rpb24oZW50cmllcyl7CiAgICAgICAgZW50cmllcy5mb3JFYWNoKGZ1bmN0aW9uKGVuKXsgaWYoZW4uaXNJbnRlcnNlY3RpbmcpeyBpbml0UGxheWVyRm9yQ2FyZChlbi50YXJnZXQpOyB9IH0pOwogICAgICB9LCB7IHJvb3Q6IG51bGwsIHRocmVzaG9sZDogMC4yNSB9KTsKICAgICAgcm9vdC5xdWVyeVNlbGVjdG9yQWxsKCcuY2FyZCcpLmZvckVhY2goZnVuY3Rpb24oYyl7IGluaXRJTy5vYnNlcnZlKGMpOyB9KTsKCiAgICAgIHJvb3QuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbihlKXsKICAgICAgICB2YXIgYSA9IGUudGFyZ2V0LmNsb3Nlc3QoJ2EuY2FyZFtkYXRhLXl0LWlkXScpOwogICAgICAgIGlmKCFhIHx8ICFyb290LmNvbnRhaW5zKGEpKSByZXR1cm47CiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgIHZhciBwb3N0ZXIgPSBhLnF1ZXJ5U2VsZWN0b3IoJ2ltZy50aHVtYicpOwogICAgICAgIC8vIHNpbiBvdmVybGF5cyBwZXJzb25hbGl6YWRvcwoKICAgICAgICAvLyBUb2dnbGUgc2kgeWEgaGF5IHBsYXllcgogICAgICAgIGlmIChhLl95dFBsYXllcil7CiAgICAgICAgICB2YXIgcCA9IGEuX3l0UGxheWVyOwogICAgICAgICAgaWYgKGEuY2xhc3NMaXN0LmNvbnRhaW5zKCdpcy1wYXVzZWQnKSl7CiAgICAgICAgICAgIHRyeXsgcC51bk11dGUoKTsgcC5zZXRWb2x1bWUoMTAwKTsgcC5wbGF5VmlkZW8oKTsgfWNhdGNoKF8peyB9CiAgICAgICAgICAgIGEuY2xhc3NMaXN0LnJlbW92ZSgnaXMtcGF1c2VkJyk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0cnl7IHAucGF1c2VWaWRlbygpOyB9Y2F0Y2goXyl7IH0KICAgICAgICAgICAgYS5jbGFzc0xpc3QuYWRkKCdpcy1wYXVzZWQnKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgc3RvcFRlYXNlcihhKTsKICAgICAgICB2YXIgaWQgPSBhLmdldEF0dHJpYnV0ZSgnZGF0YS15dC1pZCcpOwogICAgICAgIHZhciBob2xkZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKICAgICAgICBob2xkZXIuc3R5bGUucG9zaXRpb249J2Fic29sdXRlJzsgaG9sZGVyLnN0eWxlLmluc2V0PScwJzsgaG9sZGVyLnN0eWxlLndpZHRoPScxMDAlJzsgaG9sZGVyLnN0eWxlLmhlaWdodD0nMTAwJSc7IGhvbGRlci5zdHlsZS5iYWNrZ3JvdW5kPScjMDAwJzsKICAgICAgICBpZihwb3N0ZXIpeyBhLmluc2VydEJlZm9yZShob2xkZXIsIHBvc3Rlcik7IH0gZWxzZSB7IGEuYXBwZW5kQ2hpbGQoaG9sZGVyKTsgfQoKICAgICAgICBlbnN1cmVZVEFwaSgpLnRoZW4oZnVuY3Rpb24oKXsKICAgICAgICAgIHZhciBwbGF5ZXIgPSBuZXcgWVQuUGxheWVyKGhvbGRlciwgewogICAgICAgICAgICB2aWRlb0lkOiBpZCwKICAgICAgICAgICAgcGxheWVyVmFyczogeyBhdXRvcGxheToxLCBjb250cm9sczoxLCByZWw6MCwgcGxheXNpbmxpbmU6MSwgaXZfbG9hZF9wb2xpY3k6MywgbW9kZXN0YnJhbmRpbmc6MSwgZnM6MSwgb3JpZ2luOiAobG9jYXRpb24gJiYgbG9jYXRpb24ub3JpZ2luKSA/IGxvY2F0aW9uLm9yaWdpbiA6IHVuZGVmaW5lZCB9LAogICAgICAgICAgICBldmVudHM6IHsKICAgICAgICAgICAgICBvblJlYWR5OiBmdW5jdGlvbihldil7CiAgICAgICAgICAgICAgICB0cnl7IGV2LnRhcmdldC51bk11dGUoKTsgZXYudGFyZ2V0LnNldFZvbHVtZSgxMDApOyBldi50YXJnZXQucGxheVZpZGVvKCk7IH1jYXRjaChfKXt9CiAgICAgICAgICAgICAgICAvLyBGb3J6YXIgZnVsbHNjcmVlbiBkaXNwb25pYmxlIGVuIGlmcmFtZSBJRnJhbWUgQVBJCiAgICAgICAgICAgICAgICB0cnl7CiAgICAgICAgICAgICAgICAgIHZhciBpZnIgPSBwbGF5ZXIuZ2V0SWZyYW1lICYmIHBsYXllci5nZXRJZnJhbWUoKTsKICAgICAgICAgICAgICAgICAgaWYgKGlmcil7CiAgICAgICAgICAgICAgICAgICAgaWZyLnNldEF0dHJpYnV0ZSgnYWxsb3dmdWxsc2NyZWVuJywnJyk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGN1ciA9IGlmci5nZXRBdHRyaWJ1dGUoJ2FsbG93JykgfHwgJyc7CiAgICAgICAgICAgICAgICAgICAgaWZyLnNldEF0dHJpYnV0ZSgnYWxsb3cnLCAoY3VyID8gY3VyICsgJzsgJyA6ICcnKSArICdmdWxsc2NyZWVuJyk7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH1jYXRjaChfKXsgfQogICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICBpZihwb3N0ZXIpeyBwb3N0ZXIuc3R5bGUudHJhbnNpdGlvbiA9IHBvc3Rlci5zdHlsZS50cmFuc2l0aW9uIHx8ICdvcGFjaXR5IC4xNXMgZWFzZSc7IHBvc3Rlci5zdHlsZS5vcGFjaXR5PScwJzsgfQogICAgICAgICAgICAgICAgICBhLmNsYXNzTGlzdC5hZGQoJ2lzLXBsYXlpbmcnKTsKICAgICAgICAgICAgICAgICAgYS5feXRQbGF5ZXIgPSBwbGF5ZXI7CiAgICAgICAgICAgICAgICB9LCAxMDApOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfSkuY2F0Y2goZnVuY3Rpb24oKXsKICAgICAgICAgIC8vIEZhbGxiYWNrOiBpZnJhbWUgc2ltcGxlCiAgICAgICAgICB2YXIgaWZyYW1lID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaWZyYW1lJyk7CiAgICAgICAgICBpZnJhbWUuc3JjID0gbWFrZUVtYmVkVXJsKGlkLCB7YXV0b3BsYXk6dHJ1ZSwgbXV0ZTpmYWxzZX0pOwogICAgICAgICAgaWZyYW1lLnNldEF0dHJpYnV0ZSgnYWxsb3cnLCAnYXV0b3BsYXk7IGVuY3J5cHRlZC1tZWRpYTsgcGljdHVyZS1pbi1waWN0dXJlJyk7CiAgICAgICAgICBpZnJhbWUuc2V0QXR0cmlidXRlKCdhbGxvd2Z1bGxzY3JlZW4nLCAnJyk7CiAgICAgICAgICBpZnJhbWUuc3R5bGUucG9zaXRpb249J2Fic29sdXRlJzsgaWZyYW1lLnN0eWxlLmluc2V0PScwJzsgaWZyYW1lLnN0eWxlLndpZHRoPScxMDAlJzsgaWZyYW1lLnN0eWxlLmhlaWdodD0nMTAwJSc7IGlmcmFtZS5zdHlsZS5ib3JkZXI9JzAnOyBpZnJhbWUuc3R5bGUuZGlzcGxheT0nYmxvY2snOyBpZnJhbWUuc3R5bGUuYmFja2dyb3VuZD0nIzAwMCc7CiAgICAgICAgICBob2xkZXIucmVwbGFjZVdpdGgoaWZyYW1lKTsKICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKXsgYS5jbGFzc0xpc3QuYWRkKCdpcy1wbGF5aW5nJyk7IH0sIDE1MCk7CiAgICAgICAgfSk7CiAgICAgIH0pOwoKICAgICAgCiAgICB9KSgpOwogICAgPC9zY3JpcHQ+
      CiAgICA8c3R5bGU+CiAgICBAaW1wb3J0IHVybCgnaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvaXFhMXFlYi5jc3MnKTsKCiAgICAvKiBDb250ZW5lZG9yIHByaW5jaXBhbCBsaW1pdGFkbyBhIDk2MHB4IGVuIGVzY3JpdG9yaW8gKi8KICAgIC5jdi1xOWxhZSAuc2VjdGlvbnttYXgtd2lkdGg6OTYwcHg7bWFyZ2luOjAgYXV0bzt3aWR0aDoxMDAlfQoKICAgIC5jdi1xOWxhZSAuYmctc2VjdGlvbi10aXRsZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbjo4cHggMCA1MHB4fQogICAgLmN2LXE5bGFlIC5mbmQtbGluZWF7d2lkdGg6MTAwJTtoZWlnaHQ6NXB4O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7bWFyZ2luLXRvcDotMjVweDtib3JkZXItdG9wOjFweCBzb2xpZCAjMzMzO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICMzMzN9CiAgICAuY3YtcTlsYWUgLnNlY3Rpb24tdGl0bGV7Zm9udC1mYW1pbHk6ImJlYmFzLW5ldWUtcHJvLWV4cGFuZGVkIixzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjkwMDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7dGV4dC1hbGlnbjpjZW50ZXI7bWFyZ2luOjA7bGluZS1oZWlnaHQ6MS4yO2xldHRlci1zcGFjaW5nOi0xcHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2JhY2tncm91bmQ6I2ZmZjtwYWRkaW5nOjRweCAxM3B4O2JvcmRlcjoxcHggc29saWQgIzMzMztmb250LXNpemU6NDJweDt0cmFuc2Zvcm06cm90YXRlWCg1ZGVnKSByb3RhdGVZKC0yNWRlZykgc2tld1goMGRlZyl9CgogICAgLmN2LXE5bGFlIC5jYXJvdXNlbHstLWdhcDoxNnB4Oy0tcGVlazoxMCU7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tZ2FwKTtvdmVyZmxvdzpoaWRkZW47cGFkZGluZy1ib3R0b206NnB4fQogICAgLmN2LXE5bGFlIC50cmFja3tkaXNwbGF5OmZsZXg7Z2FwOnZhcigtLWdhcCk7b3ZlcmZsb3cteDphdXRvO292ZXJmbG93LXk6aGlkZGVuO3Njcm9sbC1zbmFwLXR5cGU6eCBtYW5kYXRvcnk7c2Nyb2xsLWJlaGF2aW9yOnNtb290aDtzY3JvbGxiYXItd2lkdGg6bm9uZTstbXMtb3ZlcmZsb3ctc3R5bGU6bm9uZTtwYWRkaW5nLXJpZ2h0OnZhcigtLXBlZWspfQogICAgLmN2LXE5bGFlIC50cmFjazo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfQogICAgLmN2LXE5bGFlIC5jYXJke3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXg6MCAwIGF1dG87c2Nyb2xsLXNuYXAtYWxpZ246c3RhcnQ7d2lkdGg6Y2FsYygoMTAwJSAtIDIqdmFyKC0tZ2FwKSAtIHZhcigtLXBlZWspKS8zKTthc3BlY3QtcmF0aW86OS8xNjtib3JkZXItcmFkaXVzOjEwcHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6IzAwMDtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNnB4KTt0cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGVhc2UsIHRyYW5zZm9ybSAuNHMgZWFzZX0KICAgIC5jdi1xOWxhZSAuY2FyZC5pcy1pbntvcGFjaXR5OjE7dHJhbnNmb3JtOm5vbmV9CgogICAgLmN2LXE5bGFlIC50aHVtYntwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb3Zlcjt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIGVhc2UsIG9wYWNpdHkgLjI1cyBlYXNlO3RyYW5zZm9ybTpzY2FsZSgxLjAxKX0KICAgIC5jdi1xOWxhZSAuY2FyZDpob3ZlciAudGh1bWIsLmN2LXE5bGFlIC5jYXJkOmZvY3VzLXZpc2libGUgLnRodW1ie3RyYW5zZm9ybTpzY2FsZSgxLjA2KX0KICAgIC8qIFNpbiBvdmVybGF5cyBwZXJzb25hbGl6YWRvczogc2UgdXNhbiBjb250cm9sZXMgbmF0aXZvcyBkZWwgcGxheWVyICovCgogICAgLmN2LXE5bGFlIC5hcntwb3NpdGlvbjpyZWxhdGl2ZX0KICAgIC5jdi1xOWxhZSAuYXJyb3d7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt3aWR0aDo0NHB4O2hlaWdodDo0NHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6cmdiKDI1NSAyNTUgMjU1IC8gMjAlKTtib3gtc2hhZG93OjAgNnB4IDE2cHggcmdiKDAgMCAwIC8gMjAlKTtib3JkZXI6MXB4IHNvbGlkICNmZmY7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2N1cnNvcjpwb2ludGVyO3otaW5kZXg6Mjt0cmFuc2l0aW9uOi4zc30KICAgIC5jdi1xOWxhZSAuYXJyb3c6aG92ZXJ7YmFja2dyb3VuZDpyZ2IoMCAwIDAgLyAyMCUpO2JvcmRlcjoxcHggc29saWQgI2ZmZn0KICAgIC5jdi1xOWxhZSAuYXJyb3c6Zm9jdXN7YmFja2dyb3VuZDpyZ2IoMjU1IDI1NSAyNTUgLyAyMCUpfQogICAgLmN2LXE5bGFlIC5hcnJvdyBzdmd7d2lkdGg6MjBweDtoZWlnaHQ6MjBweH0KICAgIC5jdi1xOWxhZSAuYXJyb3cubGVmdHtsZWZ0OjEwcHh9CiAgICAuY3YtcTlsYWUgLmFycm93LnJpZ2h0e3JpZ2h0OjEwcHh9CgogICAgQG1lZGlhIChtYXgtd2lkdGg6NzY4cHgpewogICAgICAvKiBFbiBt83ZpbCwgZWwgY29udGVuZWRvciBvY3VwYSB0b2RvIGVsIGFuY2hvICovCiAgICAgIC5jdi1xOWxhZSAuc2VjdGlvbnttYXgtd2lkdGg6MTAwJX0KICAgICAgLmN2LXE5bGFlIC5zZWN0aW9uLXRpdGxle2ZvbnQtc2l6ZToyN3B4O3BhZGRpbmc6MnB4IDhweDt0cmFuc2Zvcm06cm90YXRlWCg1ZGVnKSByb3RhdGVZKC0yNWRlZykgc2tld1goMGRlZyl9CiAgICAgIC5jdi1xOWxhZSAuY2Fyb3VzZWx7LS1wZWVrOjEyJX0KICAgICAgLyogMiB0YXJqZXRhcyBjb21wbGV0YXMgKyB1biBwZWVrIGRlIGxhIDOqICovCiAgICAgIC5jdi1xOWxhZSAuY2FyZHt3aWR0aDpjYWxjKCgxMDAlIC0gNCp2YXIoLS1nYXApIC0gdmFyKC0tcGVlaykpLzEpfQogICAgICAuY3YtcTlsYWUgLmFycm93e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50fQogICAgICAuY3YtcTlsYWUgLnRyYWNre292ZXJmbG93LXg6YXV0bztvdmVyZmxvdy15OmhpZGRlbjtwYWRkaW5nLXJpZ2h0OnZhcigtLXBlZWspfQogICAgfQogICAgPC9zdHlsZT4KCiAgICA8ZGl2IGNsYXNzPSJjdi1xOWxhZSI+CiAgICAgIDxzZWN0aW9uIGNsYXNzPSJzZWN0aW9uIiBhcmlhLWxhYmVsPSJDYXJydXNlbCBkZSB27WRlb3MgKFNob3J0cykiPgogICAgICAgIDxkaXYgY2xhc3M9ImJnLXNlY3Rpb24tdGl0bGUiPgogICAgICAgICAgPGgyIGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5Mb3MgJ3Nob3J0cycgZGUgT0tESUFSSU88L2gyPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImZuZC1saW5lYSI+PC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImFyIiByb2xlPSJyZWdpb24iIGFyaWEtbGFiZWw9Ikxpc3RhZG8gZGUgdu1kZW9zIj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFycm93IGxlZnQiIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iQW50ZXJpb3IiPgogICAgICAgICAgICA8c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik0xNSA2bC02IDYgNiA2IiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+CiAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFycm93IHJpZ2h0IiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9IlNpZ3VpZW50ZSI+CiAgICAgICAgICAgIDxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTkgMThsNi02LTYtNiIgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPgogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJvdXNlbCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRyYWNrIiByb2xlPSJsaXN0Ij4KCiAgICAgICAgPGEgY2xhc3M9ImNhcmQiIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3Nob3J0cy95eE92LWMxYi10NCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGRhdGEteXQtaWQ9Inl4T3YtYzFiLXQ0IiB0aXRsZT0iVmVyIHNob3J0Ij4KICAgICAgICAgIDxpbWcgY2xhc3M9InRodW1iIiBzcmM9Imh0dHBzOi8vaS55dGltZy5jb20vdmkveXhPdi1jMWItdDQvaHFkZWZhdWx0LmpwZyIgYWx0PSJZb3VUdWJlIFNob3J0IDEiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgPC9hPgogICAgICAgIDxhIGNsYXNzPSJjYXJkIiBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9zaG9ydHMvTHdLT3FXMnJ2UDgiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIiBkYXRhLXl0LWlkPSJMd0tPcVcycnZQOCIgdGl0bGU9IlZlciBzaG9ydCI+CiAgICAgICAgICA8aW1nIGNsYXNzPSJ0aHVtYiIgc3JjPSJodHRwczovL2kueXRpbWcuY29tL3ZpL0x3S09xVzJydlA4L2hxZGVmYXVsdC5qcGciIGFsdD0iWW91VHViZSBTaG9ydCAyIiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgIDwvYT4KICAgICAgICA8YSBjbGFzcz0iY2FyZCIgaHJlZj0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vc2hvcnRzL0cwZTRWNXpFVWlrIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgZGF0YS15dC1pZD0iRzBlNFY1ekVVaWsiIHRpdGxlPSJWZXIgc2hvcnQiPgogICAgICAgICAgPGltZyBjbGFzcz0idGh1bWIiIHNyYz0iaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS9HMGU0VjV6RVVpay9ocWRlZmF1bHQuanBnIiBhbHQ9IllvdVR1YmUgU2hvcnQgMyIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIj4KICAgICAgICA8L2E+CiAgICAgICAgPGEgY2xhc3M9ImNhcmQiIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3Nob3J0cy9Ma2NmRV9iOVFROCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGRhdGEteXQtaWQ9IkxrY2ZFX2I5UVE4IiB0aXRsZT0iVmVyIHNob3J0Ij4KICAgICAgICAgIDxpbWcgY2xhc3M9InRodW1iIiBzcmM9Imh0dHBzOi8vaS55dGltZy5jb20vdmkvTGtjZkVfYjlRUTgvaHFkZWZhdWx0LmpwZyIgYWx0PSJZb3VUdWJlIFNob3J0IDQiIGxvYWRpbmc9ImxhenkiIGRlY29kaW5nPSJhc3luYyI+CiAgICAgICAgPC9hPgogICAgICAgIDxhIGNsYXNzPSJjYXJkIiBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9zaG9ydHMvYWVFMDg2Z1ZoejQiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIiBkYXRhLXl0LWlkPSJhZUUwODZnVmh6NCIgdGl0bGU9IlZlciBzaG9ydCI+CiAgICAgICAgICA8aW1nIGNsYXNzPSJ0aHVtYiIgc3JjPSJodHRwczovL2kueXRpbWcuY29tL3ZpL2FlRTA4NmdWaHo0L2hxZGVmYXVsdC5qcGciIGFsdD0iWW91VHViZSBTaG9ydCA1IiBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiPgogICAgICAgIDwvYT4KICAgICAgICA8YSBjbGFzcz0iY2FyZCIgaHJlZj0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vc2hvcnRzL1VsZm42MVBKcVdrIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgZGF0YS15dC1pZD0iVWxmbjYxUEpxV2siIHRpdGxlPSJWZXIgc2hvcnQiPgogICAgICAgICAgPGltZyBjbGFzcz0idGh1bWIiIHNyYz0iaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS9VbGZuNjFQSnFXay9ocWRlZmF1bHQuanBnIiBhbHQ9IllvdVR1YmUgU2hvcnQgNiIgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIj4KICAgICAgICA8L2E+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvc2VjdGlvbj4KICAgIDwvZGl2PgogICAgPHNjcmlwdD4KICAgIChmdW5jdGlvbigpewogICAgICB2YXIgcm9vdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5jdi1xOWxhZScpOwogICAgICBpZiAoIXJvb3QpIHJldHVybjsKICAgICAgdmFyIHRyYWNrID0gcm9vdC5xdWVyeVNlbGVjdG9yKCcudHJhY2snKTsKICAgICAgaWYgKCF0cmFjaykgcmV0dXJuOwoKICAgICAgdmFyIGFycm93cyA9IHJvb3QucXVlcnlTZWxlY3RvckFsbCgnLmFycm93Jyk7CiAgICAgIHZhciBHQVAgPSAxNjsKCiAgICAgIGZ1bmN0aW9uIGdldENhcmRXaWR0aCgpewogICAgICAgIHZhciBmaXJzdCA9IHJvb3QucXVlcnlTZWxlY3RvcignLmNhcmQnKTsKICAgICAgICBpZiAoIWZpcnN0KSByZXR1cm4gMDsKICAgICAgICByZXR1cm4gZmlyc3QuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGg7CiAgICAgIH0KCiAgICAgIGZ1bmN0aW9uIGdldENhcmRzUGVyUGFnZSgpewogICAgICAgIHJldHVybiAod2luZG93LmlubmVyV2lkdGggPD0gNzY4KSA/IDIgOiA0OwogICAgICB9CgogICAgICBhcnJvd3MuZm9yRWFjaChmdW5jdGlvbihidG4pewogICAgICAgIGJ0bi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKGUpewogICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgICAgdmFyIGRpciA9IHRoaXMuY2xhc3NMaXN0LmNvbnRhaW5zKCdsZWZ0JykgPyAtMSA6IDE7CiAgICAgICAgICB2YXIgY2FyZFcgPSBnZXRDYXJkV2lkdGgoKTsKICAgICAgICAgIGlmICghY2FyZFcpIHJldHVybjsKICAgICAgICAgIHZhciBzdGVwID0gKGNhcmRXICsgR0FQKSAqIGdldENhcmRzUGVyUGFnZSgpICogZGlyOwogICAgICAgICAgdHJhY2suc2Nyb2xsQnkoeyBsZWZ0OiBzdGVwLCBiZWhhdmlvcjogJ3Ntb290aCcgfSk7CiAgICAgICAgfSk7CiAgICAgIH0pOwoKICAgICAgLy8gRmFkZS1pbiBhbCBlbnRyYXIgZW4gdmlld3BvcnQKICAgICAgdmFyIGlvID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGZ1bmN0aW9uKGVudHJpZXMpewogICAgICAgIGVudHJpZXMuZm9yRWFjaChmdW5jdGlvbihlbil7IGlmKGVuLmlzSW50ZXJzZWN0aW5nKXsgZW4udGFyZ2V0LmNsYXNzTGlzdC5hZGQoJ2lzLWluJyk7IH0gfSk7CiAgICAgIH0sIHsgcm9vdDogdHJhY2ssIHRocmVzaG9sZDogMC4xIH0pOwogICAgICByb290LnF1ZXJ5U2VsZWN0b3JBbGwoJy5jYXJkJykuZm9yRWFjaChmdW5jdGlvbihjKXsgaW8ub2JzZXJ2ZShjKTsgfSk7CgogICAgICAvLyBDbGljayBwZXJzaXN0ZW50ZSAoc2luIHRlYXNlciBwb3IgaG92ZXIpCiAgICAgIGZ1bmN0aW9uIG1ha2VFbWJlZFVybChpZCwgb3B0cyl7CiAgICAgICAgdmFyIHFzID0gWwogICAgICAgICAgJ2F1dG9wbGF5PScgKyAob3B0cyAmJiBvcHRzLmF1dG9wbGF5PyAnMSc6JzAnKSwKICAgICAgICAgICdwbGF5c2lubGluZT0xJywnZnM9MScsJ2l2X2xvYWRfcG9saWN5PTMnLCdzaG93aW5mbz0xJywncmVsPTAnLCdjY19sb2FkX3BvbGljeT0wJywnc3RhcnQ9MCcsCiAgICAgICAgICAnbXV0ZT0nICsgKG9wdHMgJiYgb3B0cy5tdXRlPyAnMSc6JzAnKSwKICAgICAgICAgIChvcHRzICYmIG9wdHMuY29udHJvbHM9PT0wPyAnY29udHJvbHM9MCc6J2NvbnRyb2xzPTEnKSwKICAgICAgICAgICdtb2Rlc3RicmFuZGluZz0xJywnZW5hYmxlanNhcGk9MScKICAgICAgICBdLmpvaW4oJyYnKTsKICAgICAgICByZXR1cm4gJ2h0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkLycgKyBpZCArICc/JyArIHFzOwogICAgICB9CgogICAgICAvLyBDYXJnYXIgQVBJIGRlIFlvdVR1YmUgYmFqbyBkZW1hbmRhCiAgICAgIHZhciB5dEFwaVByb21pc2UgPSBudWxsOwogICAgICBmdW5jdGlvbiBlbnN1cmVZVEFwaSgpewogICAgICAgIGlmICh3aW5kb3cuWVQgJiYgd2luZG93LllULlBsYXllcikgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpOwogICAgICAgIGlmICh5dEFwaVByb21pc2UpIHJldHVybiB5dEFwaVByb21pc2U7CiAgICAgICAgeXRBcGlQcm9taXNlID0gbmV3IFByb21pc2UoZnVuY3Rpb24ocmVzb2x2ZSl7CiAgICAgICAgICB2YXIgcHJldkNiID0gd2luZG93Lm9uWW91VHViZUlmcmFtZUFQSVJlYWR5OwogICAgICAgICAgd2luZG93Lm9uWW91VHViZUlmcmFtZUFQSVJlYWR5ID0gZnVuY3Rpb24oKXsgaWYgKHR5cGVvZiBwcmV2Q2I9PT0nZnVuY3Rpb24nKSB7IHRyeXsgcHJldkNiKCk7IH1jYXRjaChfKXt9IH0gcmVzb2x2ZSgpOyB9OwogICAgICAgICAgdmFyIHMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsKICAgICAgICAgIHMuc3JjID0gJ2h0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2lmcmFtZV9hcGknOwogICAgICAgICAgZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzKTsKICAgICAgICB9KTsKICAgICAgICByZXR1cm4geXRBcGlQcm9taXNlOwogICAgICB9CgogICAgICAvLyBJbnN0YW5jaWFyIHBsYXllciBuYXRpdm8gZW4gdGFyamV0YXMgdmlzaWJsZXMgcGFyYSBxdWUgZWwgaWNvbm8gZGUgcGxheSBhcGFyZXpjYSBkZXNkZSBlbCBpbmljaW8KICAgICAgZnVuY3Rpb24gaW5pdFBsYXllckZvckNhcmQoY2FyZCl7CiAgICAgICAgaWYoIWNhcmQgfHwgY2FyZC5feXRQbGF5ZXIgfHwgY2FyZC5feXRJbml0KSByZXR1cm47CiAgICAgICAgdmFyIGlkID0gY2FyZC5nZXRBdHRyaWJ1dGUoJ2RhdGEteXQtaWQnKTsKICAgICAgICBpZighaWQpIHJldHVybjsKICAgICAgICBjYXJkLl95dEluaXQgPSB0cnVlOwogICAgICAgIHZhciBwb3N0ZXIgPSBjYXJkLnF1ZXJ5U2VsZWN0b3IoJ2ltZy50aHVtYicpOwogICAgICAgIHZhciBob2xkZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKICAgICAgICBob2xkZXIuc3R5bGUucG9zaXRpb249J2Fic29sdXRlJzsgaG9sZGVyLnN0eWxlLmluc2V0PScwJzsgaG9sZGVyLnN0eWxlLndpZHRoPScxMDAlJzsgaG9sZGVyLnN0eWxlLmhlaWdodD0nMTAwJSc7IGhvbGRlci5zdHlsZS5iYWNrZ3JvdW5kPScjMDAwJzsKICAgICAgICBpZihwb3N0ZXIpeyBjYXJkLmluc2VydEJlZm9yZShob2xkZXIsIHBvc3Rlcik7IH0gZWxzZSB7IGNhcmQuYXBwZW5kQ2hpbGQoaG9sZGVyKTsgfQogICAgICAgIC8vIE9jdWx0YW1vcyBlbCBw83N0ZXIgY3VhbnRvIGFudGVzIHBhcmEgZGVqYXIgdmVyIGVsIG92ZXJsYXkgbmF0aXZvCiAgICAgICAgaWYocG9zdGVyKXsgcG9zdGVyLnN0eWxlLnRyYW5zaXRpb24gPSBwb3N0ZXIuc3R5bGUudHJhbnNpdGlvbiB8fCAnb3BhY2l0eSAuMTVzIGVhc2UnOyBwb3N0ZXIuc3R5bGUub3BhY2l0eT0nMCc7IHBvc3Rlci5zdHlsZS5wb2ludGVyRXZlbnRzPSdub25lJzsgfQogICAgICAgIGVuc3VyZVlUQXBpKCkudGhlbihmdW5jdGlvbigpewogICAgICAgICAgdmFyIHBsYXllciA9IG5ldyBZVC5QbGF5ZXIoaG9sZGVyLCB7CiAgICAgICAgICAgIHZpZGVvSWQ6IGlkLAogICAgICAgICAgICBwbGF5ZXJWYXJzOiB7IGF1dG9wbGF5OjAsIGNvbnRyb2xzOjEsIHJlbDowLCBwbGF5c2lubGluZToxLCBpdl9sb2FkX3BvbGljeTozLCBtb2Rlc3RicmFuZGluZzoxLCBmczoxLCBvcmlnaW46IChsb2NhdGlvbiAmJiBsb2NhdGlvbi5vcmlnaW4pID8gbG9jYXRpb24ub3JpZ2luIDogdW5kZWZpbmVkIH0sCiAgICAgICAgICAgIGV2ZW50czogewogICAgICAgICAgICAgIG9uUmVhZHk6IGZ1bmN0aW9uKCl7CiAgICAgICAgICAgICAgICBpZihwb3N0ZXIpeyBwb3N0ZXIuc3R5bGUub3BhY2l0eT0nMCc7IHBvc3Rlci5zdHlsZS5wb2ludGVyRXZlbnRzPSdub25lJzsgfQogICAgICAgICAgICAgICAgLy8gRm9yemFyIHBlcm1pc29zIGRlIHBhbnRhbGxhIGNvbXBsZXRhIGVuIGVsIGlmcmFtZSBnZW5lcmFkbwogICAgICAgICAgICAgICAgdHJ5ewogICAgICAgICAgICAgICAgICB2YXIgaWZyID0gcGxheWVyLmdldElmcmFtZSAmJiBwbGF5ZXIuZ2V0SWZyYW1lKCk7CiAgICAgICAgICAgICAgICAgIGlmIChpZnIpewogICAgICAgICAgICAgICAgICAgIGlmci5zZXRBdHRyaWJ1dGUoJ2FsbG93ZnVsbHNjcmVlbicsJycpOwogICAgICAgICAgICAgICAgICAgIHZhciBjdXIgPSBpZnIuZ2V0QXR0cmlidXRlKCdhbGxvdycpIHx8ICcnOwogICAgICAgICAgICAgICAgICAgIGlmci5zZXRBdHRyaWJ1dGUoJ2FsbG93JywgKGN1ciA/IGN1ciArICc7ICcgOiAnJykgKyAnZnVsbHNjcmVlbicpOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9Y2F0Y2goXyl7IH0KICAgICAgICAgICAgICAgIGNhcmQuX3l0UGxheWVyID0gcGxheWVyOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfSkuY2F0Y2goZnVuY3Rpb24oKXsKICAgICAgICAgIHRyeXsgY2FyZC5yZW1vdmVDaGlsZChob2xkZXIpOyB9Y2F0Y2goXyl7IH0KICAgICAgICAgIC8vIFNpIGZhbGxhIGxhIEFQSSwgZGVqYW1vcyBlbCBw83N0ZXIgaGFzdGEgaW50ZXJhY2Np824KICAgICAgICAgIGlmKHBvc3Rlcil7IHBvc3Rlci5zdHlsZS5vcGFjaXR5PScnOyBwb3N0ZXIuc3R5bGUucG9pbnRlckV2ZW50cz0nJzsgfQogICAgICAgICAgY2FyZC5feXRJbml0ID0gZmFsc2U7CiAgICAgICAgfSk7CiAgICAgIH0KCiAgICAgIC8vIEluaWNpYWxpemFyIGF1dG9t4XRpY2FtZW50ZSBsb3MgcGxheWVycyBkZSBsYXMgdGFyamV0YXMgdmlzaWJsZXMgYWwgY2FyZ2FyCiAgICAgIHZhciBpbml0SU8gPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZnVuY3Rpb24oZW50cmllcyl7CiAgICAgICAgZW50cmllcy5mb3JFYWNoKGZ1bmN0aW9uKGVuKXsgaWYoZW4uaXNJbnRlcnNlY3RpbmcpeyBpbml0UGxheWVyRm9yQ2FyZChlbi50YXJnZXQpOyB9IH0pOwogICAgICB9LCB7IHJvb3Q6IG51bGwsIHRocmVzaG9sZDogMC4yNSB9KTsKICAgICAgcm9vdC5xdWVyeVNlbGVjdG9yQWxsKCcuY2FyZCcpLmZvckVhY2goZnVuY3Rpb24oYyl7IGluaXRJTy5vYnNlcnZlKGMpOyB9KTsKCiAgICAgIHJvb3QuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbihlKXsKICAgICAgICB2YXIgYSA9IGUudGFyZ2V0LmNsb3Nlc3QoJ2EuY2FyZFtkYXRhLXl0LWlkXScpOwogICAgICAgIGlmKCFhIHx8ICFyb290LmNvbnRhaW5zKGEpKSByZXR1cm47CiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgIHZhciBwb3N0ZXIgPSBhLnF1ZXJ5U2VsZWN0b3IoJ2ltZy50aHVtYicpOwogICAgICAgIC8vIHNpbiBvdmVybGF5cyBwZXJzb25hbGl6YWRvcwoKICAgICAgICAvLyBUb2dnbGUgc2kgeWEgaGF5IHBsYXllcgogICAgICAgIGlmIChhLl95dFBsYXllcil7CiAgICAgICAgICB2YXIgcCA9IGEuX3l0UGxheWVyOwogICAgICAgICAgaWYgKGEuY2xhc3NMaXN0LmNvbnRhaW5zKCdpcy1wYXVzZWQnKSl7CiAgICAgICAgICAgIHRyeXsgcC51bk11dGUoKTsgcC5zZXRWb2x1bWUoMTAwKTsgcC5wbGF5VmlkZW8oKTsgfWNhdGNoKF8peyB9CiAgICAgICAgICAgIGEuY2xhc3NMaXN0LnJlbW92ZSgnaXMtcGF1c2VkJyk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0cnl7IHAucGF1c2VWaWRlbygpOyB9Y2F0Y2goXyl7IH0KICAgICAgICAgICAgYS5jbGFzc0xpc3QuYWRkKCdpcy1wYXVzZWQnKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgc3RvcFRlYXNlcihhKTsKICAgICAgICB2YXIgaWQgPSBhLmdldEF0dHJpYnV0ZSgnZGF0YS15dC1pZCcpOwogICAgICAgIHZhciBob2xkZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKICAgICAgICBob2xkZXIuc3R5bGUucG9zaXRpb249J2Fic29sdXRlJzsgaG9sZGVyLnN0eWxlLmluc2V0PScwJzsgaG9sZGVyLnN0eWxlLndpZHRoPScxMDAlJzsgaG9sZGVyLnN0eWxlLmhlaWdodD0nMTAwJSc7IGhvbGRlci5zdHlsZS5iYWNrZ3JvdW5kPScjMDAwJzsKICAgICAgICBpZihwb3N0ZXIpeyBhLmluc2VydEJlZm9yZShob2xkZXIsIHBvc3Rlcik7IH0gZWxzZSB7IGEuYXBwZW5kQ2hpbGQoaG9sZGVyKTsgfQoKICAgICAgICBlbnN1cmVZVEFwaSgpLnRoZW4oZnVuY3Rpb24oKXsKICAgICAgICAgIHZhciBwbGF5ZXIgPSBuZXcgWVQuUGxheWVyKGhvbGRlciwgewogICAgICAgICAgICB2aWRlb0lkOiBpZCwKICAgICAgICAgICAgcGxheWVyVmFyczogeyBhdXRvcGxheToxLCBjb250cm9sczoxLCByZWw6MCwgcGxheXNpbmxpbmU6MSwgaXZfbG9hZF9wb2xpY3k6MywgbW9kZXN0YnJhbmRpbmc6MSwgZnM6MSwgb3JpZ2luOiAobG9jYXRpb24gJiYgbG9jYXRpb24ub3JpZ2luKSA/IGxvY2F0aW9uLm9yaWdpbiA6IHVuZGVmaW5lZCB9LAogICAgICAgICAgICBldmVudHM6IHsKICAgICAgICAgICAgICBvblJlYWR5OiBmdW5jdGlvbihldil7CiAgICAgICAgICAgICAgICB0cnl7IGV2LnRhcmdldC51bk11dGUoKTsgZXYudGFyZ2V0LnNldFZvbHVtZSgxMDApOyBldi50YXJnZXQucGxheVZpZGVvKCk7IH1jYXRjaChfKXt9CiAgICAgICAgICAgICAgICAvLyBGb3J6YXIgZnVsbHNjcmVlbiBkaXNwb25pYmxlIGVuIGlmcmFtZSBJRnJhbWUgQVBJCiAgICAgICAgICAgICAgICB0cnl7CiAgICAgICAgICAgICAgICAgIHZhciBpZnIgPSBwbGF5ZXIuZ2V0SWZyYW1lICYmIHBsYXllci5nZXRJZnJhbWUoKTsKICAgICAgICAgICAgICAgICAgaWYgKGlmcil7CiAgICAgICAgICAgICAgICAgICAgaWZyLnNldEF0dHJpYnV0ZSgnYWxsb3dmdWxsc2NyZWVuJywnJyk7CiAgICAgICAgICAgICAgICAgICAgdmFyIGN1ciA9IGlmci5nZXRBdHRyaWJ1dGUoJ2FsbG93JykgfHwgJyc7CiAgICAgICAgICAgICAgICAgICAgaWZyLnNldEF0dHJpYnV0ZSgnYWxsb3cnLCAoY3VyID8gY3VyICsgJzsgJyA6ICcnKSArICdmdWxsc2NyZWVuJyk7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH1jYXRjaChfKXsgfQogICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICBpZihwb3N0ZXIpeyBwb3N0ZXIuc3R5bGUudHJhbnNpdGlvbiA9IHBvc3Rlci5zdHlsZS50cmFuc2l0aW9uIHx8ICdvcGFjaXR5IC4xNXMgZWFzZSc7IHBvc3Rlci5zdHlsZS5vcGFjaXR5PScwJzsgfQogICAgICAgICAgICAgICAgICBhLmNsYXNzTGlzdC5hZGQoJ2lzLXBsYXlpbmcnKTsKICAgICAgICAgICAgICAgICAgYS5feXRQbGF5ZXIgPSBwbGF5ZXI7CiAgICAgICAgICAgICAgICB9LCAxMDApOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgfSkuY2F0Y2goZnVuY3Rpb24oKXsKICAgICAgICAgIC8vIEZhbGxiYWNrOiBpZnJhbWUgc2ltcGxlCiAgICAgICAgICB2YXIgaWZyYW1lID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaWZyYW1lJyk7CiAgICAgICAgICBpZnJhbWUuc3JjID0gbWFrZUVtYmVkVXJsKGlkLCB7YXV0b3BsYXk6dHJ1ZSwgbXV0ZTpmYWxzZX0pOwogICAgICAgICAgaWZyYW1lLnNldEF0dHJpYnV0ZSgnYWxsb3cnLCAnYXV0b3BsYXk7IGVuY3J5cHRlZC1tZWRpYTsgcGljdHVyZS1pbi1waWN0dXJlJyk7CiAgICAgICAgICBpZnJhbWUuc2V0QXR0cmlidXRlKCdhbGxvd2Z1bGxzY3JlZW4nLCAnJyk7CiAgICAgICAgICBpZnJhbWUuc3R5bGUucG9zaXRpb249J2Fic29sdXRlJzsgaWZyYW1lLnN0eWxlLmluc2V0PScwJzsgaWZyYW1lLnN0eWxlLndpZHRoPScxMDAlJzsgaWZyYW1lLnN0eWxlLmhlaWdodD0nMTAwJSc7IGlmcmFtZS5zdHlsZS5ib3JkZXI9JzAnOyBpZnJhbWUuc3R5bGUuZGlzcGxheT0nYmxvY2snOyBpZnJhbWUuc3R5bGUuYmFja2dyb3VuZD0nIzAwMCc7CiAgICAgICAgICBob2xkZXIucmVwbGFjZVdpdGgoaWZyYW1lKTsKICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKXsgYS5jbGFzc0xpc3QuYWRkKCdpcy1wbGF5aW5nJyk7IH0sIDE1MCk7CiAgICAgICAgfSk7CiAgICAgIH0pOwoKICAgICAgCiAgICB9KSgpOwogICAgPC9zY3JpcHQ+
    • Mohamed Alami Susi: Marruecos podría estar utilizando la migración para presionar a España
        • España
        • España

      "Marruecos podría estar utilizando la migración para presionar a España"

      He entrevistado a Mohamed Alami Susi, presidente de la Asociación Amigos del Pueblo Marroquí (ITRAN), para analizar la crisis de Ceuta. Alami considera que Marruecos podría estar utilizando la presión migratoria como instrumento frente a España. Defiende que la prioridad debe ser el retorno ordenado de los menores.
      • María Zabay
      • 2026-08-29 05:45
    • Dr. Javier Bermejo: La mayor parte de los cateterismos los resolvemos en menos de 30 días
    • Un incendio devora un plató de televisión y calcina sus oficinas en Madrid
        • España
        • España

      Un incendio devora un plató de televisión y calcina sus oficinas en Madrid

      • Charo Miñano
      • 2026-08-29 22:12
    • Al menos un muerto y cinco heridos en un tiroteo durante una rave en Suiza
        • Internacional
        • Internacional

      Al menos un muerto y cinco heridos en un tiroteo durante una rave en Suiza

      • OKDIARIO
      • 2026-08-30 09:27
    • Sánchez, esa inigualable vida de superlujo
    • A propósito de ZP: ¿Qué hacer con los ex?
    • Marlaska & Robles
    • Jaime Martínez se muestra seguro de repetir victoria en Palma y avisa a Vox: La alcaldía no será moneda de cambio
        • OkBaleares
        • OkBaleares

      Jaime Martínez se muestra seguro de repetir victoria en Palma y avisa a Vox: "La alcaldía no será moneda de cambio"

      El alcalde de Palma y candidato del Partido Popular a la reelección, Jaime Martínez, se ha mostrado convencido en OKDIARIO de que su formación volverá a ganar las elecciones municipales del próximo año y ha dejado claro que no contempla negociar la alcaldía de Palma con Vox en ningún escenario.
      • Julio Bastida
      • 2026-08-30 04:00
    • Siete amigos se van de fiesta a Ibiza en un taxi de Palma y acaban denunciados por dejarlo en una parada
        • OkBaleares
        • OkBaleares

      Siete amigos se van de fiesta a Ibiza en un taxi de Palma y acaban denunciados por dejarlo en una parada

      • Julio Bastida
      • 2026-08-30 04:00
    • PHN0eWxlPgogICNjaW50aWxsby1lY2kgewogICAgZGlzcGxheTogZmxleDsKICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICBmb250LWZhbWlseTogJ1JvYm90byBDb25kZW5zZWQnOwogICAgY29sb3I6ICMwMDA7CiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIHBhZGRpbmc6IDhweDsKfQouZWNpLXRpdHVsbyB7CiAgICBmb250LXNpemU6IDI0cHg7Cn0KLmVjaS1sb2dvIHsKfQouZWNpLWxvZ28gcCB7CiAgZm9udC1zaXplOiAxMHB4Owp9Ci5lY2ktbG9nbyBpbWcgewoKICAgIHdpZHRoOiAxMjBweDsKICAgIGhlaWdodDogMzBweDsKICAgIG9iamVjdC1maXQ6IGNvdmVyOwp9Cgo8L3N0eWxlPgo8YSBocmVmPSJodHRwczovL3d3dy5lbGNvcnRlaW5nbGVzLmVzLyIgdGFyZ2V0PSJfYmxhbmsiIGlkPSJjaW50aWxsby1lY2kiPgogIDxkaXYgY2xhc3M9ImVjaS10aXR1bG8iPgogICAgSW5zcGlyYWNp824geSB0ZW5kZW5jaWFzCiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0iZWNpLWxvZ28iPgogICAgPHA+RW4gY29sYWJvcmFjafNuIGNvbjwvcD4KICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9va2RpYXJpby5jb20vaW1nLzIwMjYvMDgvMjcvbG9nby1lbC1jb3J0ZS1pbmdsZXMtbmVncm8uanBnIiBhbHQ9IkVsIENvcnRlIEluZ2zpcyI+CiAgPC9kaXY+CjwvYT4K
      PHN0eWxlPgogICNjaW50aWxsby1lY2kgewogICAgZGlzcGxheTogZmxleDsKICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICBmb250LWZhbWlseTogJ1JvYm90byBDb25kZW5zZWQnOwogICAgY29sb3I6ICMwMDA7CiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIHBhZGRpbmc6IDhweDsKfQouZWNpLXRpdHVsbyB7CiAgICBmb250LXNpemU6IDI0cHg7Cn0KLmVjaS1sb2dvIHsKfQouZWNpLWxvZ28gcCB7CiAgZm9udC1zaXplOiAxMHB4Owp9Ci5lY2ktbG9nbyBpbWcgewoKICAgIHdpZHRoOiAxMjBweDsKICAgIGhlaWdodDogMzBweDsKICAgIG9iamVjdC1maXQ6IGNvdmVyOwp9Cgo8L3N0eWxlPgo8YSBocmVmPSJodHRwczovL3d3dy5lbGNvcnRlaW5nbGVzLmVzLyIgdGFyZ2V0PSJfYmxhbmsiIGlkPSJjaW50aWxsby1lY2kiPgogIDxkaXYgY2xhc3M9ImVjaS10aXR1bG8iPgogICAgSW5zcGlyYWNp824geSB0ZW5kZW5jaWFzCiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0iZWNpLWxvZ28iPgogICAgPHA+RW4gY29sYWJvcmFjafNuIGNvbjwvcD4KICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9va2RpYXJpby5jb20vaW1nLzIwMjYvMDgvMjcvbG9nby1lbC1jb3J0ZS1pbmdsZXMtbmVncm8uanBnIiBhbHQ9IkVsIENvcnRlIEluZ2zpcyI+CiAgPC9kaXY+CjwvYT4K
    • El accidente que destapó el secreto de la moto: tussi, marihuana y un ‘laboratorio’ sobre dos ruedas
        • OkBaleares
        • OkBaleares

      El accidente que destapó el secreto de la moto: tussi, marihuana y un ‘laboratorio’ sobre dos ruedas

      • Julio Bastida
      • 2026-08-30 04:00
    • Detenido un peligroso acosador de Palma por intentar secuestrar a una menor e introducirla en una furgoneta
        • OkBaleares
        • OkBaleares

      Detenido un peligroso acosador de Palma por intentar secuestrar a una menor e introducirla en una furgoneta

      • Julio Bastida
      • 2026-08-29 11:10
    • si te lo perdiste...

    • La lección de Séneca, filósofo estoico,  2000 años antes de que se inventara el
        • Curiosidades
        • Curiosidades

      La lección de Séneca: "Abraza todas las horas, porque así dependerás menos del mañana"

      • Naiara Philpotts
      • 2026-08-30 07:15
    • Los expertos veterinarios coinciden: ni rascador ni pelotas, el mejor juguete para los gatos es una caja de cartón porque reduce el estrés y le da seguridad
        • Mascotas
        • Mascotas

      Los expertos veterinarios coinciden: el mejor juguete para los gatos es "una caja de cartón"

      • Janire Manzanas
      • 2026-08-30 07:00
    • Los psicólogos expertos dicen que las personas que necesitan escuchar música y podcast todo el rato no lo hacen por distracción, sino porque necesitan gestionar el silencio de la soledad
        • Curiosidades
        • Curiosidades

      esto dicen Los psicólogos de las personas que necesitan escuchar música y podcast todo el rato

      Los psicólogos han realizado estudios recientes en los que han estudiado la conducta humana de las personas que escuchan música o podcasts a todas horas. Confirman que este ejercicio diario no lo realizan para distraerse, sino porque necesitan combatir de alguna manera la soledad. Consulta en este artículo todo lo que dicen sobre las personas que escuchan música durante gran parte del día. 
      • Pedro Antolinos
      • 2026-08-30 07:15
    • Los psicólogos expertos coinciden: las personas que no hacen la cama por la mañana no son procrastinadores, en realidad tienen una característica envidiable
        • Curiosidades
        • Curiosidades

      las personas que no hacen la cama por la mañana no son procrastinadores

      • Blanca Espada
      • 2026-08-30 08:45
    • Los expertos arquitectos lo dejan muy claro: Poner papel de aluminio en las ventanas es una solución de emergencia contra el calor, pero protegerlas por fuera siempre es más eficaz
        • Curiosidades
        • Curiosidades

      "Poner papel de aluminio en las ventanas es una solución de emergencia contra el calor"

      • Alejo Lucarás
      • 2026-08-30 08:46
    • La psicología sugiere que las personas que se adaptan a todas las situaciones no son conformistas, sólo desarrollaron resiliencia y saben mejor que nadie responder a desafíos y cambios
        • Curiosidades
        • Curiosidades

      La psicología dice que las personas que se adaptan a las situaciones no son conformistas

      • Aitana Pascual
      • 2026-08-30 08:48
    • Pablo Neruda, poeta y premio Nobel de Literatura en 1971: El niño que no juega no es niño, pero el hombre que no juega perdió para siempre al niño que vivía en él
        • Curiosidades
        • Curiosidades

      Neruda: "El niño que no juega no es niño, pero el hombre que no juega perdió al niño en él"

      • Alejo Lucarás
      • 2026-08-30 08:54
    • Pompeyo Trogo sobre la fuerza de Hispania: Los hispanos son muy valientes, pero con un gran defecto: si no tienen un enemigo común, ocupan su tiempo en pelearse entre ellos
        • Curiosidades
        • Curiosidades

      Pompeyo Trogo sobre la fuerza de Hispania: "Los hispanos son muy valientes, pero con un defecto"

      • Aitana Pascual
      • 2026-08-30 08:57
    • Si una de tus series favoritas es
        • Cool
        • Cool

      Si una de tus series favoritas es 'Vikingos' o 'Juego de Tronos' tienes que ver esta de Movistar

      • Carmen Fernández Etreros
      • 2026-08-30 09:00
    • Menos dolor y mayor precisión con la cirugía torácica uniportal de la Dra. Arango en Juaneda Hospitales
    • Los OK y KO del domingo, 30 de agosto de 2026
    • Diario Madridista

    • Mourinho abre la campaña para hacer Balón de Oro a Mbappé
        • Real Madrid
        • Real Madrid

      Mourinho abre la campaña para hacer Balón de Oro a Mbappé

      José Mourinho ha comenzado la campaña: aprovechó la rueda de prensa previa al encuentro contra el Málaga para entrar de lleno en la carrera por el Balón de Oro 2026 y defender la candidatura de Kylian Mbappé. El portugués no pronunció el nombre del francés, pero tampoco hizo demasiado por esconder a quién se refería.
      • Iván Martín
      • 2026-08-29 20:00
    • Mourinho recupera el compromiso en el Real Madrid
    • Real Madrid Femenino - Atlético: cuándo es, horario y cómo ver por TV en directo el derbi de la Liga F
        • Femenino
        • Femenino

      Real Madrid Femenino - Atlético: cuándo es, horario y cómo ver por TV en directo el derbi de la Liga F

      • Alberto Sarmiento
      • 2026-08-29 21:00
    • Cuándo es el Real Madrid - Málaga: horario y por qué canal de TV ver en directo y en vivo online el partido de la Liga
        • Real Madrid
        • Real Madrid

      Cuándo es el Real Madrid - Málaga: horario y por qué canal de TV ver en directo el partido de la Liga

      • Alberto Sarmiento
      • 2026-08-29 17:00
    • Deportes

    • El Atlético no tiene
    • Jornada 3 de la Liga: resumen de todos los partidos
        • Deportes
        • Deportes

      Boyé prolonga el glorioso inicio del Alavés que duerme como líder

      • Alejandro Peinado
      • 2026-08-29 19:13
    • Marc Márquez reina en la sprint con Álex segundo y recorta puntos al líder
        • Deportes
        • Deportes

      Marc Márquez reina en la sprint con Álex segundo y recorta puntos al líder

      • Miguel Zorío
      • 2026-08-29 15:32
    • Simeone exige más a Baena: Debe mantener el nivel; no tener delanteros no significa que no ataquemos
        • Deportes
        • Deportes

      Simeone exige más a Baena: "Debe mantener el nivel; no tener delanteros no significa que no ataquemos"

      "Baena está siendo desequilibrante, el año pasado arrancó en un muy buen nivel donde podríamos ponerlo en cualquier lado que respondía siempre. La confianza, seguridad, alegría y lo emocional del Mundial le vino muy bien y hoy le decía que eso sirviese para potenciar todo lo que es porque es diferencial y le consideramos en este nivel. Y lo demostró y le vamos a exigir mantener este nivel", explicó. 
      • Alejandro Peinado
      • 2026-08-30 00:17
    • Pipi Estrada ensalza el cariño del Bernabéu a Mourinho y castiga una mala decisión de Laporta
    • Escalofriante parte médico de Pogacar: Conmoción cerebral, abrasiones y sufre una fractura cervical
        • Deportes
        • Deportes

      Escalofriante parte médico de Pogacar: "Conmoción cerebral, abrasiones y fractura cervical"

      • Pablo Villanueva
      • 2026-08-29 21:26
    • Coquard gana la etapa caótica de La Vuelta
        • Deportes
        • Deportes

      Coquard gana la etapa caótica de La Vuelta

      • Pablo Villanueva
      • 2026-08-29 18:21
    • economía

    • Trump se queda con 65.000 millones de barriles de Venezuela y duplica las reservas de petróleo de EEUU
        • Economía
        • Economía

      Trump se queda con 65.000 millones de barriles de Venezuela y duplica las reservas de petróleo de EEUU

      Estados Unidos ha dado un paso de gigante para blindar su seguridad energética. El presidente estadounidense, Donald Trump, ha anunciado un acuerdo con el Gobierno de Delcy Rodríguez por el que Washington obtendrá el control mayoritario sobre campos venezolanos que concentran más de 65.000 millones de barriles de reservas probadas de petróleo, una cantidad suficiente para prácticamente duplicar las reservas petroleras estadounidenses.
      • Jose de la Morena
      • 2026-08-29 11:03
    • El Gobierno tiene 825 millones para emergencias pero sigue sin dar ayudas a las empresas golpeadas por la crisis de Ceuta
        • Economía
        • Economía

      El Gobierno tiene 825 millones para emergencias pero sigue sin dar ayudas a las empresas golpeadas por la crisis de Ceuta

      • Jose de la Morena
      • 2026-08-29 05:49
    • COOL

    • La rutina de Madonna (67 años) para estar en forma: Sigo una dieta macrobiótica construida completamente en torno a alimentos integrales, orgánicos y de temporada
        • Cool
        • Cool

      La rutina de Madonna (67 años) para estar en forma: "Sigo una dieta macrobiótica"

      • Daniel Marín
      • 2026-08-30 08:15
    • El último adiós Harald V ya tiene fecha y habrá ausencias: Mette-Marit no estará en el funeral
        • Cool
        • Cool

      El último adiós Harald V ya tiene fecha y habrá ausencias: Mette-Marit no estará en el funeral

      • Javi Fernández
      • 2026-08-29 19:38
    • Las películas y series más esperadas que llegan en septiembre al streaming (Netflix, Prime Video, HBO y Disney): asesinos, terror y la última aventura de Star Wars
        • Cool
        • Cool

      Las películas y series más esperadas que llegan en septiembre al streaming 

      Después del mes de agosto, la vuelta a la rutina puede ser un tanto amarga para la mayoría. Un especie impasse en el que la normalidad todavía no ha vuelto del todo, pero en el que las vacaciones y despreocupaciones comienzan a resonar como el ruido de un mar cada vez más alejado. Por suerte, desde hace algunos años, el auge del streaming llegó para paliar en cierta medida dicho desdén, cargando de novedades el abanico de contenidos de las principales plataformas.
      • Francisco-Eme
      • 2026-08-30 08:00
    • El padre de Iñaki Urdangarin, sobre su relación con la infanta Cristina: Esto es muy complicado
        • Cool
        • Cool

      El padre de Iñaki Urdangarin, sobre su relación con la infanta Cristina: "Esto es muy complicado"

      • Daniel Marín
      • 2026-08-29 19:00
    • ¿Quién es Rafael Martínez-Almeida, sobrino del alcalde de Madrid y nuevo tertuliano de
        • Cool
        • Cool

      ¿Quién es Rafael Martínez-Almeida, sobrino del alcalde de Madrid y tertuliano de 'Espejo Público'?

      • Javi Fernández
      • 2026-08-29 14:41
    • Alice Campello no falla a Morata en su regreso a Madrid y le acompaña en su presentación con el Leganés
        • Cool
        • Cool

      Alice no falla a Morata en su regreso a Madrid y le acompaña en su presentación con el Leganés

      • Javi Fernández
      • 2026-08-29 13:34
    • Happy FM

    • La razón por la que Luis Tosar rechazó
        • HappyFM
        • HappyFM

      La razón por la que Luis Tosar rechazó 'Juego de tronos': "Me parece un culebrón"

      • Idania Monzón
      • 2026-08-30 09:31
    • Una conocida presentadora de Antena 3 saca a la luz la oferta que recibió para presentar
        • HappyFM
        • HappyFM

      Una presentadora de Antena 3 saca a la luz la oferta que recibió para presentar 'Pasapalabra'

      • Idania Monzón
      • 2026-08-29 14:07
    • Aitana Sánchez-Gijón (57 años) comparte su plan de alimentación: Hago ayuno intermitente y lo rompo con...
        • HappyFM
        • HappyFM

      Aitana Sánchez-Gijón comparte su plan de alimentación: "Hago ayuno intermitente y lo rompo con..."

      • Idania Monzón
      • 2026-08-29 13:04
    • Qué fue de Eugenio Siller, el actor protagonista de
        • HappyFM
        • HappyFM

      Qué fue de Eugenio Siller, el actor protagonista de 'Al diablo con los guapos'

      • Idania Monzón
      • 2026-08-29 11:59
    • Un comensal de
        • HappyFM
        • HappyFM

      Un comensal de 'First Dates': "No me quiero imaginar cómo se tiene que mover en la cama"

      • Idania Monzón
      • 2026-08-28 19:00
    • Bertín Osborne (71 años) se sincera: Como igual que los perros, una vez al día
        • HappyFM
        • HappyFM

      Bertín Osborne (71 años) se sincera: "Como igual que los perros, una vez al día"

      • Nacho Molina
      • 2026-08-28 18:36
    • Okmotor

    • Juan José Ebenezer, mecánico, desvela el error que todos cometen con el aire acondicionado del coche: Lo hace la mayoría y está mal
        • Motor
        • Motor

      Juan José Ebenezer, mecánico, desvela el error que todos cometen con el aire acondicionado

      • Janire Manzanas
      • 2026-08-29 10:00
    • La DGT lo confirma: estas señales de tráfico son muy distintas pero pocos saben diferenciarlas
        • Motor
        • Motor

      La DGT lo confirma: estas señales de tráfico son muy distintas pero pocos saben diferenciarlas

      • Janire Manzanas
      • 2026-08-28 11:07
    • Pocos lo saben y muchos pican: el truco de los mecánicos para que pagues más en el taller
        • Motor
        • Motor

      Pocos lo saben y muchos pican: el truco de los mecánicos para que pagues más en el taller

      • Janire Manzanas
      • 2026-08-28 11:05
    • OKGreen

    • Así resiste la lana española: los proyectos y alianzas que salvan nuestra fibra textil más emblemática
        • OKGREEN
        • OKGREEN

      Así resiste la lana española: los proyectos y alianzas que salvan nuestra fibra textil más emblemática

      Durante siglos, la lana de oveja merina fue uno de los pilares económicos de España, con una importancia que trascendía la de una simple materia prima textil. Por algo era conocida como el oro blanco que sostenía parte de la prosperidad de nuestro país, articulando a su alrededor una compleja infraestructura comercial, territorial y política. En torno a esta fibra natural se organizó una extensa red de cañadas reales, ferias comerciales y rutas de exportación que conectaban los rebaños castellanos con los grandes centros textiles europeos. 
      • Daniel Jiménez
      • 2026-08-30 05:15
    • Almuerzo verde en la vuelta al cole: ¿tartera reutilizable o plástico de un solo uso?
        • OKGREEN
        • OKGREEN

      Almuerzo verde en la vuelta al cole: ¿tartera reutilizable o plástico de un solo uso?

      • OKGREEN
      • 2026-08-30 05:00
    • ¿Y si la naturaleza tuviera derechos? Nuevos avances en la protección legal de animales y ecosistemas
        • OKGREEN
        • OKGREEN

      ¿Y si la naturaleza tuviera derechos? Nuevos avances en la protección legal de animales y ecosistemas

      • Daniel Jiménez
      • 2026-08-29 05:30
    • OKSalud

    • Estos son los nutrientes esenciales para reparar tu melena después del verano
    • Tricotilomanía: el trastorno de arrancarse el pelo que afecta a más personas de lo que parece
        • OkSalud
        • OkSalud

      Tricotilomanía: el trastorno de arrancarse el pelo que afecta a más personas de lo que parece

      • Diego Buenosvinos
      • 2026-08-30 05:40
    • Dra. Miriam Piqueras: Una dieta de fruta, verduras y caldos puede quedarse corta en proteínas para los mayores
        • OkSalud
        • OkSalud

      Dra. Miriam Piqueras: "Una dieta de fruta, verduras y caldos puede quedarse corta en proteínas para los mayores"

      • Diego Buenosvinos
      • 2026-08-30 05:40
    • Insomnio posvacacional: el truco de una experta para recuperar el sueño y volver al trabajo sin agotamiento
        • OkSalud
        • OkSalud

      Insomnio posvacacional: el truco de una experta para recuperar el sueño y volver al trabajo sin agotamiento

      La vuelta de las vacaciones supone para muchas personas un desafío de adaptación física y mental. Los horarios más flexibles del verano, las actividades nocturnas, los cambios en las rutinas de alimentación y descanso o los viajes pueden alterar el reloj biológico y dificultar el regreso a la actividad laboral.
      • B. Muñoz
      • 2026-08-30 05:40
    • OKCLUB

    • Celebra con nosotros el X Aniversario de OKDIARIO
        • OKCLUB
        • OKCLUB

      Celebra con nosotros el X Aniversario de OKDIARIO

      • OKDIARIO
      • 2025-03-10 17:54
    • Alejandro Peinado: Nueva jornada de Liga con el liderato en juego y Alcaraz debuta en el US Open
        • OKCLUB
        • OKCLUB

      Alejandro Peinado: "Nueva jornada de Liga con el liderato en juego y Alcaraz debuta en el US Open"

      • OKDIARIO
      • 2026-08-29 05:45
    • navarra

    • Grave caída de un ciclista navarro en La Vuelta a España: se rompe una costilla y tiene que abandonar
        • Más deporte

      Grave caída de un ciclista navarro en La Vuelta a España: se rompe una costilla y tiene que abandonar

    • El equipo navarro de regional que está a un paso de jugar la Copa del Rey contra un primera división
        • Fútbol

      El equipo navarro de regional que está a un paso de jugar la Copa del Rey contra un primera división

    • Una doctoranda de la UPNA descubre qué puede reducir la penalización laboral de las mujeres tras ser madres
        • Sociedad

      Una doctoranda de la UPNA descubre qué puede reducir la penalización laboral de las mujeres tras ser madres

    • Un fin de semana diferente en Tudela: el Mercado Medieval llenará el centro de fuego, acrobacias, música y personajes
        • Sociedad

      Un fin de semana diferente en Tudela: el Mercado Medieval llenará el centro de fuego, acrobacias, música y personajes

    • De las aulas de Navarra a Nueva Delhi: 22 universitarias apoyan a mujeres y niños con pocos recursos en la India
        • Sociedad

      De las aulas de Navarra a Nueva Delhi: 22 universitarias apoyan a mujeres y niños con pocos recursos en la India

    • Muere José Garraza, fundador de la frutería de Pamplona que sus hijos mantienen viva después de 53 años
        • Comercio local

      Muere José Garraza, fundador de la frutería de Pamplona que sus hijos mantienen viva después de 53 años

    • metabolic

    • Ni caminar ni nadar, los expertos sentencian: una sesión de sauna de 30 minutos puede activar las células clave del sistema inmunitario, según un estudio
        • Salud

      Ni caminar ni nadar, los expertos sentencian: una sesión de sauna de 30 minutos puede activar las células clave del sistema inmunitario, según un estudio

    • Sergio López, fisioterapeuta español: «El mejor paseo por la playa no es el más largo ni el más duro, sino el que puedes repetir sin dolor y con ganas de volver al día siguiente»
        • Deporte

      Sergio López, fisioterapeuta español: «El mejor paseo por la playa no es el más largo ni el más duro, sino el que puedes repetir sin dolor y con ganas de volver al día siguiente»

    • Expertos en ciencias físicas coinciden: a partir de los 40 entrenar fuerza no es sólo por una cuestión estética, se debe hacer para «fortalecer los músculos»
        • Deporte

      Expertos en ciencias físicas coinciden: a partir de los 40 entrenar fuerza no es sólo por una cuestión estética, se debe hacer para «fortalecer los músculos»

    • La psicología dice que las personas que desean el mal a los demás no son malas, más bien su cerebro actúa así como mecanismo de defensa
        • Emociones y Salud Mental

      La psicología dice que las personas que desean el mal a los demás no son malas, más bien su cerebro actúa así como mecanismo de defensa

    • La natación ayuda, pero los profesionales coinciden en un ejercicio de gimnasia más eficaz para quemar grasa del abdomen a partir de los 50 años
        • Deporte

      La natación ayuda, pero los profesionales coinciden en un ejercicio de gimnasia más eficaz para quemar grasa del abdomen a partir de los 50 años

    • La psicología dice que las personas que cambian de opinión en público no es porque sean oportunistas: es una forma de demostrar una mayor flexibilidad cognitiva
        • Desarrollo Personal y Autoayuda

      La psicología dice que las personas que cambian de opinión en público no es porque sean oportunistas: es una forma de demostrar una mayor flexibilidad cognitiva

    • talent24h

    • Asturias prueba un sistema pionero con la DGT para saber en tiempo real si hay tráfico en 16 playas
        • Actualidad

      Asturias prueba un sistema pionero con la DGT para saber en tiempo real si hay tráfico en 16 playas

    • Irse de vacaciones estando de baja puede acabar en despido sin indemnización en estos casos.
        • Actualidad

      Irse de vacaciones estando de baja puede acabar en despido sin indemnización en estos casos.

    • El nuevo Reglamento europeo limita las ataduras de perros y gatos y España ya cuenta con restricciones propias
        • Actualidad

      El nuevo Reglamento europeo limita las ataduras de perros y gatos y España ya cuenta con restricciones propias

    • El uso del ordenador cambia para millones de personas mientras el smartphone se convierte en su dispositivo principal
        • Actualidad

      El uso del ordenador cambia para millones de personas mientras el smartphone se convierte en su dispositivo principal

    • Ni bares ni supermercados tienen que cobrar ahora 10 céntimos por cada lata o botella vendida en España: este es el calendario real
        • Actualidad

      Ni bares ni supermercados tienen que cobrar ahora 10 céntimos por cada lata o botella vendida en España: este es el calendario real

    • Tiene 99 años, está a punto de cumplir 100 y consigue renovar su carnet de conducir durante un año más
        • Actualidad

      Tiene 99 años, está a punto de cumplir 100 y consigue renovar su carnet de conducir durante un año más

    • Muy Interesante

    • Plutón no ha completado todavía una vuelta al Sol desde que lo descubrimos, y esta es la fecha en que lo hará
        • Ciencia

      Plutón no ha completado todavía una vuelta al Sol desde que lo descubrimos, y esta es la fecha en que lo hará

    • Hallan en Lima un esqueleto de 1.400 años en un canal ceremonial: ¿ritual de clausura o sacrificio humano?
        • Historia

      Hallan en Lima un esqueleto de 1.400 años en un canal ceremonial: ¿ritual de clausura o sacrificio humano?

    • Hallan una gran acumulación de magma bajo Tenerife y obtienen la primera imagen 3D del interior de la isla
        • Ciencia

      Hallan una gran acumulación de magma bajo Tenerife y obtienen la primera imagen 3D del interior de la isla

    • Descubren el secreto de las pinturas rupestres de Huashan: sangre humana y cal las conservaron durante 2.000 años
        • Historia

      Descubren el secreto de las pinturas rupestres de Huashan: sangre humana y cal las conservaron durante 2.000 años

    • Un libro de dibujos del siglo XVII reaparece casi intacto y devuelve a la historia a un pintor olvidado
        • Historia

      Un libro de dibujos del siglo XVII reaparece casi intacto y devuelve a la historia a un pintor olvidado

    • Científicos descubren en monos africanos una pista que cambia lo que creíamos sobre la evolución de nuestros antepasados hace 7 millones de años
        • Ciencia

      Científicos descubren en monos africanos una pista que cambia lo que creíamos sobre la evolución de nuestros antepasados hace 7 millones de años

    • okzinet

    • ¿Tu bebé saca mucho la lengua? Lo que podría significar según su edad
        • Ser Padres

      ¿Tu bebé saca mucho la lengua? Lo que podría significar según su edad

    • Por qué este año no deberías preguntar a tu hijo “¿qué tal el cole?”: 5 alternativas avaladas por una psicóloga
        • Ser Padres

      Por qué este año no deberías preguntar a tu hijo “¿qué tal el cole?”: 5 alternativas avaladas por una psicóloga

    • El ritual de 30 minutos para cerrar el verano en familia y quedarse con lo importante
        • Ser Padres

      El ritual de 30 minutos para cerrar el verano en familia y quedarse con lo importante

    • ¿Por la mañana o por la noche? Este es el mejor momento para lavarse el pelo, según los expertos
        • Mia Revista

      ¿Por la mañana o por la noche? Este es el mejor momento para lavarse el pelo, según los expertos

    • 6 compras de Lefties por menos de 10 € para elevar la decoración de tu salón
        • Mia Revista

      6 compras de Lefties por menos de 10 € para elevar la decoración de tu salón

    • 3 cremas y geles corporales de aceite de oliva: clásicos de supermercado desde 1,50 euros que siguen siendo superventas
        • Mia Revista

      3 cremas y geles corporales de aceite de oliva: clásicos de supermercado desde 1,50 euros que siguen siendo superventas

    • Techy

    • Submarino INS Drakon de la Armada israelí atracado en el astillero de Kiel, Alemania
        • Techy

      Con más de 70 metros de eslora, 2000 toneladas y un sistema que le permite cargar sus baterías bajo el agua, Alemania entrega a Israel el submarino más grande y potente construido desde la II Guerra Mundial

      • Adrián Villellas
    • Gran cañón durante una prueba de disparo en Yuma Proving Ground, Arizona
        • Techy

      Estados Unidos ha disparado una ojiva hipersónica de tamaño real desde un enorme cañón en Arizona para recrear los últimos segundos antes del impacto, reutilizando una tecnología vinculada a un supercañón de 1.600 kilómetros que terminó siendo cancelado

      • Adrián Villellas
    • Nivel de burbuja colocado sobre el carril de una puerta corredera de garaje
        • Techy

      Los fabricantes de puertas automáticas coinciden y lo dejan claro: este fallo en el carril puede hacer trabajar de más al motor

      • Adrián Villellas
    • B-1B Lancer dentro de una instalación de pintura en Tinker Air Force Base tras completar su repintado
        • Techy

      Estados Unidos sacó del “cementerio” de Arizona un bombardero B-1B retirado en 2021 y, tras casi dos años de trabajo, más de 200 especialistas y 500 componentes sustituidos, el avión supersónico ha vuelto completamente operativo con un nuevo nombre: Apmiocalypse II

      • Adrián Villellas
    • Vista aérea del emplazamiento de Wesleyville junto al lago Ontario, donde OPG estudia una nueva central nuclear
        • Techy

      Ontario está perforando 40 pozos de hasta 120 metros junto al lago Ontario para estudiar una central nuclear de hasta 10.000 MW, capaz de abastecer a unos 10 millones de hogares, aunque su primera unidad todavía podría tardar 15 años en conectarse

      • Adrián Villellas
    • Tuneladora Lily de United Utilities utilizada para excavar el túnel de almacenamiento de agua de lluvia en Knutsford
        • Techy

      Una tuneladora de 40 toneladas métricas llamada Lily está excavando un túnel de 1,8 kilómetros bajo una localidad inglesa, con capacidad para almacenar 5,5 millones de litros de agua de lluvia, el equivalente a dos piscinas olímpicas

      • Adrián Villellas
    • OkPlanes

    • brava festival
        • OkPlanes

      El festival Brava Madrid 2026 toma la Caja Mágica en septiembre

      • Sandra Quintana C
    • restaurantes por menos de 20 euros
        • OkPlanes

      Comer muy bien en Madrid por menos de 20 euros es posible

      • Sandra Quintana C
    • Water Lanter Festival
        • OkPlanes

      Water Lantern Festival aterriza en Madrid este septiembre

      • Sandra Quintana C
    • Richard Avedon. Ronald Fischer, beekeeper, Davis, California, May 9, 1987 © The Richard Avedon Foundation
        • OkPlanes

      Richard Avedon retrata la cara oculta del sueño americano en MAPFRE

      • Sandra Quintana C
    • estrenos de cine
        • OkPlanes

      Cartelera de cine: estrenos del 28 de agosto de 2026

      • Sandra Quintana C
    • exposicion relojes del siglo xix
        • OkPlanes

      Relojes del siglo XIX: la precisión del tiempo en la Galería de las Colecciones Reales

      • Sandra Quintana C
    • Curiosidades

    • Alejandro Magno. Imagen generada con IA.
        • Curiosidades

      Alejandro Magno, conquistador, sobre la lucha: «No temo a un ejército de leones dirigido por una oveja; temo a un ejército de ovejas dirigido por un león»

      • Aitana Pascual
    • José Antonio Marina
        • Curiosidades

      «Si la humildad no acompaña y no sigue todo lo que hacemos, la soberbia nos arrebata de las manos el bien realizado»

      • Carmen Ruiz
    • Imagen generada con IA.
        • Curiosidades

      La psicología confirma que las personas que lloran en discusiones no lo hacen para dar pena, en realidad su cerebro activa un mecanismo de defensa

      • Aitana Pascual
    • Niños con el móvil
        • Curiosidades

      La psicología dice que los niños que pasan mucho tiempo con el móvil u ordenador acaban teniendo un mejor rendimiento cognitivo a la larga

      • Janire Manzanas
    • Proverbio chino. Imagen generada con IA.
        • Curiosidades

      El importante proverbio chino que deberíamos aplicar en la vida: «El que pregunta es tonto cinco minutos; el que no pregunta es tonto toda la vida»

      • Ángel Pérez
    • Bicarbonato, garbanzos, truco de cocina, José Andrés
        • Curiosidades

      Añadir una pizca de bicarbonato al agua de remojo de los garbanzos: para qué sirve y por qué lo recomiendan chefs como José Andrés

      • Ana López Vera
    • Recetas de cocina

    • Receta de lombarda
        • Recetas de cocina

      Lombarda estofada: receta tradicional fácil y muy sabrosa

      • Francisco María
    • Receta de fabada
        • Recetas de cocina

      Fabada en olla express: receta rápida y muy fácil

      • Francisco María
    • Patatas estofadas con pimentón, receta tradicional fácil de preparar
        • Recetas de cocina

      Los chefs expertos coinciden: para que las patatas queden buenas no hay que freírlas, lo mejor es hacerlas «con 8 ajos, caldo de pollo y pimentón»

      • Gemma Meca
    • tarta de la abuela
        • Recetas de cocina

      Los expertos gastronómicos coinciden: la mejor ‘tarta de la abuela’ se hace con galletas hojaldradas y una ramita de canela

      • Alejo Lucarás
    • vinagre cuecen huevos
        • Recetas de cocina

      Añadir 2 gotas de vinagre al agua donde se cuecen los huevos: para qué sirve y por qué lo recomiendan los chefs expertos

      • Blanca Espada
        • Recetas de cocina

      En otros lugares, sumergen la pasta en crema o salsa de tomate; en la cocina francesa, simplemente mezclan nueces con ricotta

      • Gemma Meca
    • OkShopping

    • Dyson Cool PC2 De-NOx
        • OkShopping

      El purificador Dyson que captura un 50% más de NO₂ ahora cuesta 200 euros menos

      • New Mall Media
    • Grill LG Smart Inverter
        • OkShopping

      Este microondas LG de 32 litros tiene grill y Smart Inverter y ahora cuesta un 28% menos

      • New Mall Media
    • silla Lidario
        • OkShopping

      Una silla de exterior con aspecto de madera, cojines desenfundables y un 30% de descuento

      • New Mall Media
        • OkShopping

      Combate la caspa y el cuero cabelludo graso con este champú sólido

      • New Mall Media
        • OkShopping

      Pequeña, práctica y fácil de llevar: esta mini recortadora Braun está pensada para el vello corporal

      • New Mall Media
        • OkShopping

      Renueva cualquier espacio por mucho menos: la alfombra Despas está al 50% en Kave Home

      • New Mall Media
    • Mascotas

    • Perros y gatos
        • Mascotas

      Entra en vigor el 30 de agosto y la UE confirma la nueva norma para los dueños de perros y gatos: el BOE ya lo avala

      • Janire Manzanas
    • Perros, animales, mascotas
        • Mascotas

      Los expertos en adiestramiento canino coinciden: «Uno de los problemas más frecuentes en los perros es la ansiedad por separación»

      • Ana López Vera
    • Gatos y caja de cartón
        • Mascotas

      Los expertos veterinarios coinciden: ni rascador ni pelotas, el mejor juguete para los gatos es «una caja de cartón porque reduce el estrés y le da seguridad»

      • Janire Manzanas
    • "Mitu", una gata negra de pelo largo, recostada en piso de madera. Foto: Naiara Philpotts
        • Mascotas

      Un experto veterinario extremeño desmiente el mito de los gatos negros: «Son de los que más complicado lo tienen para salir de los refugios»

      • Naiara Philpotts
    • Limpiar el bebedero del perro
        • Mascotas

      Los veterinarios instan a limpiar el bebedero de tu perro por el peligro del biofilm: una capa transparente llena de bacterias

      • Janire Manzanas
    • Dos gatos
        • Mascotas

      Comunicado importante de los veterinarios a las personas que tienen dos gatos

      • Janire Manzanas
    • Ciencia

    • Volcán del Caribe
        • Ciencia

      Reino Unido estudia el volcán más activo del Caribe y lo que ha encontrado a 2 km de profundidad deja a los expertos sin palabras

      • Janire Manzanas
    • Planeta Mercurio
        • Ciencia

      Mercurio en máxima elongación octubre 2026: el mejor momento para observar el planeta más esquivo

      • Francisco María
    • Instalación experimental al aire libre en la azotea de Tres Cantos, Madrid, con la estación meteorológica visible al fondo. Foto: onlinelibrary.wiley.com
        • Ciencia

      Gran impacto en la industria de los materiales: investigadores españoles descubren una nanoestructura que enfría la temperatura hasta casi 13 º C sin usar electricidad

      • Naiara Philpotts
    • Una excavadora carga tierra en un camión volcador junto al cauce de agua durante las obras de excavación del complejo de la presa Daudhan. Foto: Autoridad del Proyecto de Enlace Ken-Betwa
        • Ciencia

      India desafía a la Naturaleza y construye un río artificial de 221 km para unir dos ríos naturales y combatir la sequía en una de las regiones más áridas de la Tierra

      • Naiara Philpotts
    • Los virus
        • Ciencia

      El papel de los virus en la evolución humana

      • Francisco María
        • Ciencia

      La comunidad científica insta a los españoles a prepararse para lo que llega a España en 2027: no hay nada igual

      • Xabier Vergara
    • 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

    • Tim Cook
        • Tecnología

      El legado de Tim Cook en Apple, los hitos que marcaron sus 15 años como CEO

      • Nacho Grosso
    • ordenador trabajo uso personal
        • Tecnología

      El ordenador del trabajo no es tuyo, y esto es lo que no deberías hacer nunca en él

      • Nacho Grosso
        • Tecnología

      El precio del iPhone plegable ya apunta a un récord, el modelo más caro que ha vendido nunca Apple

      • Nacho Grosso
        • Tecnología

      El iPhone 18, la jugada con la que Apple parte en dos su calendario de lanzamientos

      • Nacho Grosso
    • ChatGPT
        • Tecnología

      Estos son los errores que cometes al utilizar ChatGPT en el trabajo

      • Nacho Grosso
    • Twitter.now
        • Tecnología

      Twitter.now, la red social que reclama el nombre de Twitter, se enfrenta a X en los tribunales

      • Nacho Grosso
    Ir Arriba

    Noticias de última hora

    • Pogacar enseña sus graves lesiones en el hospital tras su accidente en La Vuelta
    • Alejandro Magno, conquistador, sobre la lucha: «No temo a un ejército de leones dirigido por una oveja; temo a un ejército de ovejas dirigido por un león»
    • Olvida los geranios: la mejor planta de interior con flores que puedes poner en un piso pequeño con luz solar indirecta
    • Predicción del horóscopo para Aries hoy, domingo 30 de agosto de 2026
    • Un jubilado brasileño de 75 años ha plantado más de 41.000 árboles desde 2003 y logra crear de la nada un bosque de 3 km y 192.000 m2 en pleno São Paulo
    • «Si la humildad no acompaña y no sigue todo lo que hacemos, la soberbia nos arrebata de las manos el bien realizado»
    • Cuándo es la vuelta al cole en Aragón: fecha exacta del inicio del curso 2026-2027, festivos y todos los puentes
    • Entra en vigor el 30 de agosto y la UE confirma la nueva norma para los dueños de perros y gatos: el BOE ya lo avala
    • Predicción del horóscopo para Piscis hoy, domingo 30 de agosto de 2026
    • José Manuel Aguilar, podólogo: «No todo el mundo puede utilizar calzado ‘barefoot’»

    Noticias más vistas

    • Etapa 8 de La Vuelta a España 2026 hoy, sábado 29 de agosto de Puçol a Xeraco: horario, recorrido, perfil y dónde ver por TV
    • Rafa Jódar – Kokkinakis: horario y canal de TV para ver en directo gratis y en vivo online el partido del US Open 2026
    • El alcalde socialista de La Rinconada colocó a su orientadora municipal en Prodetur, organismo público que él mismo presidía
    • Así queda la clasificación general de la Vuelta Ciclista a España 2026 tras la etapa 8 de hoy sábado, 29 de agosto
    • Escalofriante parte médico de Pogacar: «Conmoción cerebral, abrasiones y sufre una fractura cervical
    • Julián Álvarez descarta fichar por el Arsenal: «Ha hablado con Arteta y dijo que no quiere venir»
    • Pogacar abandona La Vuelta tras sufrir un accidente y se marcha de urgencia en ambulancia
    • La reflexión de Usain Bolt (40 años) sobre el esfuerzo y la constancia: «Entrené 4 años para correr 9 segundos y la gente se rinde cuando no ve resultados en 2 meses»
    • Colas kilométricas en Decathlon por la bicicleta eléctrica de 29» con motor de 250W y autonomía de 120 km
    • Los 12 asesores que el PSOE de Sevilla ha colocado en la Diputación siendo cargos socialistas

    Noticias virales

    • La psicología aclara que las personas que no se tiñen las canas no se están rindiendo, sino que pueden estar prefiriendo la autenticidad por encima de la aprobación
    • La psicología lo confirma: los nacidos entre 1945 y 1965 desarrollaron una ventaja única a la hora de gestionar las emociones, debido a que vivieron largos períodos de incertidumbre
    • La psicología sugiere que las personas que miran fijamente a los ojos mientras hablan no lo hacen para intimidar, más bien buscan reforzar la confianza
    • Los bomberos coinciden al 100% aunque mucha gente no hace caso: «Es recomendable siempre no dejar puesta la lavadora, la secadora o el lavavajillas por la noche»
    • La reflexión de Oscar Wilde, poeta irlandés, sobre la inteligencia emocional: “Un tonto nunca se repone de un éxito”
    • La reflexión de Joan Manuel Serrat, cantante (82 años), sobre la crianza: «Los hijos aprenden poco de las palabras; sólo sirven tus actos y la coherencia de estos con las palabras»
    • La reflexión de San Agustín, filósofo y teólogo: «Si quieres conocer a una persona, no le preguntes lo que piensa sino lo que ama»
    • Ronald Rondón, técnico en electrodomésticos: «Los cajones del frigorífico no están ahí por casualidad, ayudan a conservar los alimentos»
    • Montserrat Beltrán, experta en Feng Shui, sobre las lámparas de sal: «Desprende iones y tiene una doble energía»
    • Se buscan voluntarios para vivir gratis en Hawai a cambio de dedicar 20 horas a la semana al cuidado de cerdos rescatados en un santuario
    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