LOS 3 PLANETAS GENERACIONALES Y EL CAMBIO DE ÉPOCA Claves para interpretar e integrar a Urano, Neptuno y Plutón en estos tiempos Este mes de septiembre, con las entradas de Mercurio y el Sol en Libra, más la Luna Llena en Aries, se dinamizan de forma extraordinaria los tres planetas lentos o generacionales (Urano, Neptuno y Plutón) y, con ello, el histórico triángulo isósceles que forman y que están cambiando el mundo a gran escala. Por eso es buen momento para hablar de esta configuración, porque se trata de un mes muy apropiado para integrarla a conciencia. Y es que esta década está marcada a fuego y de manera trascendental para el futuro de la humanidad por esa configuración astrológica generada con las entradas y tránsitos de Urano por Géminis, Neptuno por Aries y Plutón por Acuario. Una configuración cósmica que diseña la trama invisible de una gran época de cambio como pocas veces en la historia de la humanidad. Estos tres planetas forman aspectos armónicos entre sí, pero, bien interpretado, eso no significa que los acontecimientos sean necesariamente buenos, sino que las fuerzas que están transformando el mundo encuentran pocos obstáculos para combinarse e interactuar, lo que produce una serie de olas de cambio que actúan al mismo tiempo. Y todo eso nos lleva a surfear de ola en ola y nos obliga a estar actualizándonos constantemente. Tecnología, poder, revolución cultural, nuevos relatos colectivos, inteligencia artificial, nuevas formas de comunicación, redes de suministros, crisis de las antiguas ideologías, militarización, transformación de las instituciones y aparición de modelos sociales que todavía estamos aprendiendo a nombrar forman parte de un mismo paisaje. En definitiva, un nuevo mundo y una nueva humanidad. Estamos ante un gran cambio de clima histórico. Y, como hijos de nuestro tiempo, somos testigos y protagonistas al mismo tiempo. Ahí sí tenemos a los tres generacionales trabajando conjuntamente, combinando sus colosales influjos. Plutón modifica dónde reside el poder y el dinero, cómo y quién lo ejerce. Urano modifica cómo circula la mente y cómo circulan los conocimientos y el progreso. Neptuno modifica los ideales, los imaginarios y la espiritualidad, en qué creemos y por qué estamos dispuestos a movilizarnos. Y cuando los tres procesos empiezan a conectarse mediante el triángulo, ya no cambia solamente el mundo exterior. Empieza a cambiar el tipo de ser humano que ese mundo produce. PLUTÓN EN ACUARIO: CAMBIO DE PODERES Plutón nunca trabaja en la superficie. Allí donde transita obliga a descubrir concentraciones de poder, dependencias, estructuras agotadas y procesos de destrucción y regeneración que permanecían ocultos mientras el sistema parecía funcionar. Su paso de Capricornio a Acuario resulta especialmente significativo. El poder característico del mundo que dejamos atrás era relativamente fácil de reconocer. Estaba en el Gobierno, el banco, la gran empresa, el periódico, el partido, la universidad, la televisión, el ejército. Poseía edificios, cargos, jerarquías y símbolos visibles. Ese poder no desaparece, pero está dejando de poseer el monopolio. La sociedad contemporánea se organiza cada vez más mediante redes. Una persona puede construir una audiencia de millones sin poseer una cadena de televisión. Una comunidad puede organizar una movilización sin disponer de un partido. Un creador puede competir con un periódico centenario. Una criptomoneda puede circular sin banco central. Una herramienta de inteligencia artificial puede proporcionar conocimientos que antes exigían atravesar la puerta de una universidad. El poder se vuelve reticular. Y precisamente aquí aparece una de las grandes paradojas de Plutón en Acuario: se descentraliza y se concentra simultáneamente. Millones de personas pueden expresarse, pero unas pocas plataformas administran los espacios donde esa expresión alcanza visibilidad. Nunca fue tan fácil publicar y nunca unas infraestructuras privadas tan reducidas habían intermediado simultáneamente tantas conversaciones humanas. Por eso la verdadera cuestión plutoniana de nuestro tiempo quizá no sea simplemente quién gobierna, sino esta:  ¿Quién controla aquello de lo que todos empezamos a depender? La inteligencia artificial proporciona un ejemplo excepcional. Según la Agencia Internacional de la Energía, el gasto de capital conjunto de cinco grandes compañías tecnológicas superó los 400.000 millones de dólares en 2025 y continúa creciendo vertiginosamente. Detrás de lo que llamamos despreocupadamente «la nube» aparecen centros de datos, semiconductores, electricidad, minerales, propiedad intelectual, algoritmos y enormes concentraciones de capital. Eso ya no es sólo tecnología. Es infraestructura, y quien controla una infraestructura dispone de una forma de poder mucho más profunda que quien simplemente utiliza sus productos. Plutón en Acuario obliga por ello a mirar debajo de la pantalla. Importa menos quién ocupa formalmente determinado cargo y más quién administra datos, conexiones, flujos de información y atención colectiva. El poder puede hacerse menos visible y, precisamente por eso, más penetrante. La sociedad parece horizontal, pero también puede hacerse extraordinariamente observable. Parece descentralizada, pero produce nuevas élites. Parece permitir una libertad de expresión sin precedentes, pero los algoritmos adquieren una influencia creciente sobre qué alcanza nuestros ojos, mientras tratan de manipularnos. No desaparece el poder, sino que cambia sus estructuras y formas, mientras se va concentrando más y más en menos de menos. Al mismo tiempo, tenemos que estar alerta para no ceder ni perder nuestros poderes personales, para evitar ser “secuestrados” por los poderes de turno. URANO EN GÉMINIS: LA REVOLUCIÓN DE LA INFORMACIÓN, EL CONOCIMIENTO Y LA TECNOLOGÍA Si Plutón transforma las infraestructuras profundas, Urano rompe modelos, acelera procesos e introduce formas de funcionamiento que resultaban impensables dentro del sistema anterior. Y Géminis pertenece precisamente al territorio de la comunicación, el lenguaje, la información, el aprendizaje, los intercambios y las conexiones mentales. Por eso reducir Urano en Géminis a «nuevas tecnologías de comunicación» sería quedarse en la superficie. La revolución que empieza puede ser cognitiva. Durante la mayor parte de la historia humana, el conocimiento fue un bien escaso; había que encontrar al maestro; llegar hasta la biblioteca, comprar el libro, consultar al especialista, pasar años estudiando para adquirir datos y procedimientos que otros desconocían. Estamos entrando rápidamente en la situación contraria. Podemos traducir, comparar, resumir, programar, generar imágenes, consultar enormes cantidades de información o aprender una técnica en cualquier momento. La inteligencia empieza a convertirse parcialmente en una infraestructura disponible. La consecuencia es profunda porque cambia el valor mismo del conocimiento. La pregunta clásica era: ¿Qué sabes o cuál es tu preparación o titulación? La pregunta emergente es: ¿Qué sabes hacer con todo aquello que puedes saber o con todo el conocimiento al que puedes acceder? Y esta otra: ¿Sabes distinguir lo relevante de lo irrelevante, lo verdadero de lo verosímil, lo importante del ruido? Goethe lo formuló mucho antes de que pudiera imaginar nuestro mundo: «No basta saber, también hay que aplicar; no basta querer, también hay que hacer». Urano en Géminis puede convertir esa máxima en una exigencia cultural. Cuando cualquier persona dispone potencialmente de enormes cantidades de información, acumular datos deja de proporcionar por sí solo autoridad. Aumenta, en cambio, el valor de formular buenas preguntas, relacionar campos diferentes, detectar contradicciones, seleccionar fuentes, interpretar contextos y transformar información en decisiones. Cuanta más inteligencia y formación tengamos disponible, mayor importancia adquirirá una cualidad mucho más difícil de automatizar: el criterio (permitidme que os diga que ese es precisamente uno de los rasgos principales de Astromembresía) Pero la revolución de Urano en Géminis contiene otra dimensión todavía más delicada. De la abundancia informativa a atomización y la crisis de la realidad. No sólo aumenta la información. Empieza a cambiar la naturaleza de la información. Una fotografía ya no garantiza que aquello haya ocurrido. Una voz puede pertenecer a alguien que nunca pronunció esas palabras. Un vídeo puede documentar convincentemente un acontecimiento inexistente. Un texto impecable puede carecer de autor humano. Durante buena parte del siglo XX, las sociedades podían mantener interpretaciones radicalmente diferentes sobre una realidad aproximadamente común. Podíamos discutir sobre qué significaba un acontecimiento. Pero primero había un acontecimiento.  Ese primer escalón empieza a debilitarse. Cada individuo recibe además una selección informativa distinta. Los algoritmos personalizan contenidos. Las redes fragmentan conversaciones. Los grandes medios pierden parte de su monopolio mientras crecen podcasters, creadores, influencers y comunidades especializadas. El espacio público corre el riesgo de dejar de parecerse a una plaza y convertirse en millones de ventanas diferentes abiertas sobre millones de versiones del mundo. Y aquí comienza a intervenir Neptuno. Porque cuando se vuelve difícil verificar la realidad aumenta inevitablemente el poder de la imagen, la emoción, el relato y la creencia. Ya no vence necesariamente la explicación mejor fundamentada. Puede vencer aquella que consiga movilizar mejor. Éste es uno de los puntos donde el sextil entre Urano y Neptuno adquiere toda su profundidad. La innovación modifica el territorio de la percepción. NEPTUNO EN ARIES: HACIA UNA NUEVA ESPIRITUALIDAD Neptuno ocupa una posición especialmente significativa en el triángulo porque recibe los dos sextiles. Su simbolismo pertenece a un territorio muy diferente del de Urano o Plutón, porque apunta a imaginarios colectivos, ideales, mitos, inspiración, espiritualidad, fe, sacrificio, sensibilidad hacia aquello que trasciende al individuo. Y también, en su reverso, confusión, engaño, propaganda, intoxicación ideológica y pérdida de capacidad crítica. Durante su tránsito por Piscis, todas estas fuerzas pudieron manifestarse mediante disolución, permeabilidad, escapismo y debilitamiento de fronteras. En Aries cambia la dinámica. El ideal tiende a convertirse en impulso. La inspiración busca actuación. La fe puede transformarse en causa. El imaginario quiere empezar algo. Una visión deja de conformarse con ser contemplada y aspira a entrar en la historia. Por eso una de las frases que mejor podría resumir Neptuno en Aries sería: Creo en algo y quiero hacer algo con ello. Georges Sorel comprendió hace ya más de un siglo el poder político de los grandes mitos colectivos. Le interesaba precisamente que éstos no fueran simples descripciones de la realidad, sino representaciones capaces de desencadenar voluntad y acción. Ésa es una distinción fundamental. Una sociedad no se mueve sólo porque conozca determinados hechos. Se mueve cuando esos hechos se integran dentro de una visión suficientemente poderosa para movilizarla. William James había llegado desde otro camino a una idea relacionada. En The Will to Believe (1896) observó que existen situaciones humanas en las que una creencia previa contribuye a producir el hecho en el que se cree. Neptuno en Aries puede favorecer una nueva etapa de búsquedas espirituales, grandes ideales, movimientos inspirados, esperanzas colectivas y proyectos que reclamen significado. Pero exactamente la misma combinación puede producir fanatismo, mesianismo, propaganda y enemigos imaginarios. Una visión puede inspirar una reforma. Una fantasía puede provocar una guerra. La capacidad de movilización no garantiza la verdad de aquello que moviliza. Ése será uno de los grandes desafíos neptunianos de los próximos años: distinguir inspiración de ilusión movilizadora. Al mismo tiempo vuelve la necesidad de dar sentido a nuestras vidas Hay una razón profunda para pensar que Neptuno en Aries puede adquirir enorme relevancia social. Durante décadas las sociedades desarrolladas confiaron en que la combinación de riqueza, información, consumo, tecnología y multiplicación de posibilidades produciría inevitablemente vidas más satisfactorias. No ha sido así. El mundo contemporáneo presenta simultáneamente grandes niveles de inseguridad, polarización, desconfianza y debilitamiento de vínculos. Hay un grave deterioro de la cohesión social y cada día más gente se siente sola. Hay una paradoja difícil de ignorar. La humanidad ha construido la mayor red de comunicación que jamás haya existido y, al mismo tiempo, la conexión humana se ha convertido en un problema de salud pública. Eso nos obliga a diferenciar conexión de vínculo; información de comprensión; audiencia de comunidad; estimulación de sentido. Por eso quizá una de las reacciones características del nuevo periodo consista en una búsqueda mucho más activa de propósito. Neptuno en Aries no se limitaría entonces a producir «nuevas espiritualidades». Podría expresar algo más profundo: el regreso del deseo de orientar la existencia hacia algo que merezca ser realizado. LECTURA DE CONJUNTO: UNA HUMANIDAD MÁS PODEROSA Y TAMBIÉN MÁS VULNERABLE Si uno mira todo esto junto, la imagen resulta muy elocuente, lo que vemos es una convergencia entre tres procesos: Plutón en Acuario trae una reconfiguración del poder y de las infraestructuras Urano en Géminis, una mutación de la comunicación, del aprendizaje y de la mente colectiva Neptuno en Aries, la activación de nuevos relatos y creencias, causas, impulsos militantes e imaginarios movilizadores. La combinación puede ser extraordinariamente creativa. Nunca una persona corriente tuvo acceso a tanta capacidad de conocimiento, creación, comunicación y organización. Una buena idea puede encontrar herramientas de inteligencia artificial, convertirse en proyecto, alcanzar una audiencia mundial y construir una comunidad internacional sin necesidad de las grandes infraestructuras que habría requerido hace sólo treinta años. Pero el mismo circuito puede servir para lo contrario. Desinformación sintética. Manipulación algorítmica. Propaganda personalizada. Falsas creencias que se extienden con rapidez. Movimientos de masas impulsados por relatos simplificadores. El triángulo isósceles de los planetas generaciones no es bueno ni malo. Es potenciador. Y ahí reside precisamente su importancia. Poder- Conocimiento-Visión Tres de los grandes motores con los que cualquier civilización construye su futuro. Y los tres están cambiando simultáneamente. EJERCICIOS PARA TRABAJAR E INTEGRAR ESTA HISTÓRICA CONFIGURACIÓN A CONCIENCIA La Astromundial revela los climas de los tiempos y la historia, lo que nos permite hacer una lectura más profunda y consciente de los tiempos que vivimos. Pero, además de ilustrarnos sobre los procesos históricos, también nos da claves que podemos aplicar a nuestras vidas para adaptarnos mejor a las corrientes del cambio de época, como la que estamos viviendo en esta tercera década del siglo XXI. Simplificando mucho, podríamos sacar estas lecciones, aunque, lectores conscientes como sois, seguro que tras leer esta Astromembresía seréis capaces de sacar unas cuantas más. Te voy a proponer hacerte unas preguntas a ti mismo para que tomes conciencia de cómo están operando estos planetas en ti y cómo los estás integrando. Pero ten en cuenta que estos procesos de los que te voy a hablar pueden haber sucedido, estar sucediendo o suceder en un futuro cercano, dado que el influjo de estos planetas que estamos tratando empezó hace unos pocos años y aún continuará unos cuantos más. PLUTÓN, el Ave Fénix: morir para renacer ¿Cómo me estoy regenerando, cómo estoy renaciendo? ¿Qué nuevas ilusiones están naciendo en mi? ¿Cómo estoy desarrollando mis plenos poderes? ¿O en qué aspectos siento que estoy muriendo o está muriendo a mi alrededor? ¿Qué queda atrás, qué se pierde o desaparece, de qué me desprendo, qué deja de tener sentido en mi vida? ¿O qué aspecto de mi vida ha dejado de tener sentido pero sigo conservando por miedo? ¿De qué o de quién soy rehén? URANO, el futuro, la tecnología, el aprendizaje y la libertad ¿Qué estoy aprendiendo? ¿Qué necesito aprender ahora para no vivir dentro de cinco años con herramientas de hace veinte? ¿En qué estoy innovando o experimentando? ¿Qué estoy descubriendo en mí mismo? ¿Dónde estoy pensando de una manera más libre y original? ¿O en qué aspectos me estoy quedando atrás por miedo a ponerme a prueba o pereza de aprender? ¿En qué aspectos me niego a evolucionar, aunque me vendría bien? ¿Qué parte de mi vida se ha vuelto demasiado inestable o imprevisible? NEPTUNO, la espiritualidad, la imaginación creadora, la fe y los ideales ¿Cuál es mi visión o mis ideales y cómo estoy trabajando en ellos? ¿Cómo anda mi espiritualidad y conexión con lo sagrado y la naturaleza? ¿Hacia dónde quiero ir realmente y cómo estoy orientando mi brújula personal? ¿En qué me estoy durmiendo o de qué me estoy escaqueando? ¿Qué miedo colectivo, relato o propaganda está influyendo demasiado sobre mí? Afrontar estas preguntas y otras similares sin miedo y con honestidad nos permitirá entender cómo están operando estos tres planetas y su histórica configuración, y también vislumbrar por donde tenemos que empezar a hacer un trabajo personal para lograr el mayor desarrollo o equilibrio. Y también podríamos añadir unas preguntas para el triángulo completo, preguntas compuestas que puedan darnos una amplia información sobre nosotros mismos y la etapa de la vida. O aquellas con un enfoque específico. Por ejemplo, si te planteas hacer algún tipo de cambio en la vida, en el ámbito que sea, te puedes preguntar: ¿Qué necesito para hacer realidad este cambio? Una transformación profunda y radical (en cuyo caso necesitas trabajar más a Plutón en Acuario); nuevas ideas, experimentación, libertad o innovación y atrevimiento (en cuyo caso necesitas trabajar más a Urano en Géminis); o sentido, orientación, imaginación creadora y fe (en cuyo caso necesitas trabajar más a Neptuno en Aries). Y ahora te toca a ti hacerte estas y otras preguntas con papel y bolígrafo, un ejercicio que estoy convencido, puede darle otra dimensión a tu vida. Aquí te dejo también una aplicación interactiva como suplemento que he creado en exclusiva para esta Astromembresía. PCEtLQpBU1RST01FTUJSRVPDjUEgwrcgRUwgVFJJw4FOR1VMTyBERUwgQ0FNQklPIERFIMOJUE9DQSDCtyB2MgpGcmFnbWVudG8gYXV0b2NvbnRlbmlkbyBwYXJhIGluY3J1c3RhciBlbiBjYXNzYW55YS5jb20KU2luIGxpYnJlcsOtYXMgZXh0ZXJuYXMuCi0tPgo8c2VjdGlvbiBpZD0iYXN0cm8tdHJpYW5ndWxvLTIwMjYiIGNsYXNzPSJhdDI2Ij4KICA8c3R5bGU+CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYuYXQyNnsKICAgICAgLS1iZzojZjRlZWU0OyAtLXBhcGVyOiNmZmZhZjI7IC0taW5rOiMxZDI2MzA7IC0tbXV0ZWQ6IzY5NzE3YTsKICAgICAgLS1saW5lOnJnYmEoMjksMzgsNDgsLjE2KTsgLS1uaWdodDojMTcyMjMxOyAtLW5pZ2h0MjojMjUzNTRjOwogICAgICAtLWdvbGQ6I2I1OGE0NTsgLS1nb2xkMjojZThkNWFkOwogICAgICAtLXBsdXRvOiM2MTcxOGU7IC0tbmVwdHVuZTojNmY4YzkzOyAtLXVyYW51czojOWE3YjVmOyAtLXNhdHVybjojNjc2MjVkOwogICAgICBmb250LWZhbWlseTpHZW9yZ2lhLCJUaW1lcyBOZXcgUm9tYW4iLHNlcmlmOyBjb2xvcjp2YXIoLS1pbmspOwogICAgICBiYWNrZ3JvdW5kOgogICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMTAlIDAlLHJnYmEoMTgxLDEzOCw2OSwuMTApLHRyYW5zcGFyZW50IDI2JSksCiAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA5MCUgMTIlLHJnYmEoOTcsMTEzLDE0MiwuMTApLHRyYW5zcGFyZW50IDI1JSksCiAgICAgICAgdmFyKC0tYmcpOwogICAgICBib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTgxLDEzOCw2OSwuMTgpOyBib3JkZXItcmFkaXVzOjI4cHg7IG92ZXJmbG93OmhpZGRlbjsKICAgICAgbWF4LXdpZHRoOjExODBweDsgbWFyZ2luOjAgYXV0bzsgYm94LXNoYWRvdzowIDE4cHggNTVweCByZ2JhKDMxLDM2LDQzLC4wOSk7CiAgICB9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgKntib3gtc2l6aW5nOmJvcmRlci1ib3h9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgYnV0dG9uLCNhc3Ryby10cmlhbmd1bG8tMjAyNiBzZWxlY3QsI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IGlucHV0e2ZvbnQ6aW5oZXJpdH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiBidXR0b257Y3Vyc29yOnBvaW50ZXJ9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLmhlcm97CiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlOyBvdmVyZmxvdzpoaWRkZW47IGNvbG9yOiNmOGYyZTk7CiAgICAgIHBhZGRpbmc6NTZweCBjbGFtcCgyMnB4LDV2dyw2OHB4KSA0NnB4OwogICAgICBiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiYSgyMywzNCw0OSwuOTgpLHJnYmEoMzcsNTMsNzYsLjk2KSk7CiAgICB9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLmhlcm86YWZ0ZXJ7CiAgICAgIGNvbnRlbnQ6IiI7IHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDozMzBweDsgaGVpZ2h0OjMzMHB4OyByaWdodDotMTIwcHg7IHRvcDotMTUwcHg7CiAgICAgIGJvcmRlcjoxcHggc29saWQgcmdiYSgyMzIsMjEzLDE3MywuMTgpOyBib3JkZXItcmFkaXVzOjUwJTsKICAgIH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAua2lja2VyewogICAgICBmb250LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOwogICAgICBsZXR0ZXItc3BhY2luZzouMThlbTsgZm9udC1zaXplOjExcHg7IGZvbnQtd2VpZ2h0OjgwMDsgY29sb3I6I2U3Y2Q5OTsgbWFyZ2luLWJvdHRvbToxNXB4OwogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IGgyewogICAgICBtYXJnaW46MDsgbWF4LXdpZHRoOjkwMHB4OyBmb250LXdlaWdodDo1MDA7IGxpbmUtaGVpZ2h0Oi45ODsKICAgICAgbGV0dGVyLXNwYWNpbmc6LS4wMzVlbTsgZm9udC1zaXplOmNsYW1wKDM2cHgsNS41dncsNjhweCk7CiAgICB9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnN1YnsKICAgICAgbWF4LXdpZHRoOjg1MHB4OyBtYXJnaW46MjJweCAwIDA7IGNvbG9yOiNkOWRmZTc7IGxpbmUtaGVpZ2h0OjEuNTg7CiAgICAgIGZvbnQtc2l6ZTpjbGFtcCgxN3B4LDJ2dywyMXB4KTsKICAgIH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuYm9keXtwYWRkaW5nOmNsYW1wKDIwcHgsNHZ3LDQ4cHgpfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5pbnRyb3sKICAgICAgZGlzcGxheTpncmlkOyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMS4wNWZyKSBtaW5tYXgoMzIwcHgsLjk1ZnIpOwogICAgICBnYXA6MzBweDsgYWxpZ24taXRlbXM6c3RhcnQ7CiAgICB9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnBhbmVsewogICAgICBiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1MCwyNDIsLjgwKTsgYm9yZGVyOjFweCBzb2xpZCB2YXIoLS1saW5lKTsKICAgICAgYm9yZGVyLXJhZGl1czoyMnB4OyBwYWRkaW5nOmNsYW1wKDIwcHgsM3Z3LDMwcHgpOwogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IGgzewogICAgICBtYXJnaW46MCAwIDEycHg7IGZvbnQtd2VpZ2h0OjUwMDsgbGluZS1oZWlnaHQ6MS4wODsgZm9udC1zaXplOmNsYW1wKDI0cHgsM3Z3LDM0cHgpOwogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5wYW5lbCBwe21hcmdpbjowIDAgMTJweDsgbGluZS1oZWlnaHQ6MS43MjsgZm9udC1zaXplOjE3cHh9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnNtYWxsewogICAgICBmb250LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjsgY29sb3I6dmFyKC0tbXV0ZWQpOwogICAgICBmb250LXNpemU6MTNweCFpbXBvcnRhbnQ7IGxpbmUtaGVpZ2h0OjEuNTUhaW1wb3J0YW50OwogICAgfQoKICAgIC8qIEZpZ3VyYSAqLwogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5tYXB7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmYmY3ZWYsI2VmZTVkNyl9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLm1hcCBzdmd7d2lkdGg6MTAwJTtoZWlnaHQ6YXV0bztkaXNwbGF5OmJsb2NrO21heC13aWR0aDo1NDBweDttYXJnaW46YXV0b30KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuZWRnZXtmaWxsOm5vbmU7c3Ryb2tlOiM4Yjg5ODM7c3Ryb2tlLXdpZHRoOjIuMjtzdHJva2UtZGFzaGFycmF5OjUgODtvcGFjaXR5Oi43Mn0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuZWRnZS1tYWlue3N0cm9rZTp2YXIoLS1nb2xkKTtzdHJva2Utd2lkdGg6MztzdHJva2UtZGFzaGFycmF5Om5vbmV9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLm5vZGV7b3V0bGluZTpub25lO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xOHMgZWFzZTt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcn0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAubm9kZSBjaXJjbGV7c3Ryb2tlOiNmZmZhZjI7c3Ryb2tlLXdpZHRoOjQ7ZmlsdGVyOmRyb3Atc2hhZG93KDAgN3B4IDhweCByZ2JhKDIwLDI3LDM0LC4xMykpfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5ub2RlW2FyaWEtcHJlc3NlZD0idHJ1ZSJdIGNpcmNsZXtzdHJva2U6dmFyKC0tZ29sZDIpO3N0cm9rZS13aWR0aDo3fQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5ub2RlOmhvdmVyLCNhc3Ryby10cmlhbmd1bG8tMjAyNiAubm9kZTpmb2N1c3t0cmFuc2Zvcm06c2NhbGUoMS4wMzUpfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5nbHlwaHtmaWxsOiNmZmZhZjI7Zm9udC1zaXplOjM0cHg7dGV4dC1hbmNob3I6bWlkZGxlfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5uYW1lewogICAgICBmaWxsOiMyMDI5MzM7Zm9udC1zaXplOjEzcHg7Zm9udC1mYW1pbHk6QXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7CiAgICAgIGZvbnQtd2VpZ2h0OjgwMDtsZXR0ZXItc3BhY2luZzouMDhlbTt0ZXh0LWFuY2hvcjptaWRkbGUKICAgIH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuc2lnbnsKICAgICAgZmlsbDojNmI3MTc4O2ZvbnQtc2l6ZToxMnB4O2ZvbnQtZmFtaWx5OkFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmO3RleHQtYW5jaG9yOm1pZGRsZQogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5hc3BlY3R7CiAgICAgIGZpbGw6Izc4NmQ1ZDtmb250LXNpemU6MTFweDtmb250LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjsKICAgICAgZm9udC13ZWlnaHQ6ODAwO2xldHRlci1zcGFjaW5nOi4wN2VtO3RleHQtYW5jaG9yOm1pZGRsZQogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5zYXR1cm4tYm94ewogICAgICBtYXJnaW4tdG9wOjE0cHg7IHBhZGRpbmc6MTVweCAxNnB4OyBib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTAzLDk4LDkzLC4yNSk7CiAgICAgIGJvcmRlci1yYWRpdXM6MTZweDsgYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC40Mik7IGRpc3BsYXk6ZmxleDsgZ2FwOjEzcHg7IGFsaWduLWl0ZW1zOmNlbnRlcjsKICAgIH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuc2F0dXJuLWJ1dHRvbnsKICAgICAgd2lkdGg6NTBweDtoZWlnaHQ6NTBweDtmbGV4Om5vbmU7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOjNweCBzb2xpZCAjZmZmYWYyOwogICAgICBiYWNrZ3JvdW5kOnZhcigtLXNhdHVybik7Y29sb3I6I2ZmZjtmb250LXNpemU6MjhweDtib3gtc2hhZG93OjAgNXB4IDEycHggcmdiYSgyMCwyNywzNCwuMTIpCiAgICB9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnNhdHVybi1idXR0b25bYXJpYS1wcmVzc2VkPSJ0cnVlIl17b3V0bGluZTo0cHggc29saWQgdmFyKC0tZ29sZDIpfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5zYXR1cm4tY29weSBzdHJvbmd7CiAgICAgIGRpc3BsYXk6YmxvY2s7Zm9udC1mYW1pbHk6QXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEycHg7bGV0dGVyLXNwYWNpbmc6LjFlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2UKICAgIH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuc2F0dXJuLWNvcHkgc3BhbnsKICAgICAgZGlzcGxheTpibG9jazttYXJnaW4tdG9wOjRweDtjb2xvcjp2YXIoLS1tdXRlZCk7Zm9udC1mYW1pbHk6QXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MS40NQogICAgfQoKICAgIC8qIExlY3R1cmEgKi8KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAudGFic3tkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7Z2FwOjhweDttYXJnaW46MzBweCAwIDIwcHh9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnRhYnsKICAgICAgbWluLWhlaWdodDo0NHB4O2JvcmRlci1yYWRpdXM6OTk5cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1saW5lKTsKICAgICAgYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTAsMjQyLC43Mik7Y29sb3I6dmFyKC0taW5rKTtwYWRkaW5nOjExcHggMTZweDsKICAgICAgZm9udC1mYW1pbHk6QXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6ODAwO2ZvbnQtc2l6ZToxNHB4CiAgICB9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnRhYlthcmlhLXByZXNzZWQ9InRydWUiXXtiYWNrZ3JvdW5kOnZhcigtLW5pZ2h0KTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjp2YXIoLS1uaWdodCl9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnJlYWRpbmd7CiAgICAgIGRpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MTcwcHggbWlubWF4KDAsMWZyKTtnYXA6MjRweDthbGlnbi1pdGVtczpzdGFydDsKICAgICAgYmFja2dyb3VuZDp2YXIoLS1wYXBlcik7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1saW5lKTtib3JkZXItcmFkaXVzOjIycHg7cGFkZGluZzoyN3B4O21pbi1oZWlnaHQ6MjQwcHgKICAgIH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAucmVhZGluZy1zeW1ib2x7CiAgICAgIGFzcGVjdC1yYXRpbzoxO2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6Z3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7Y29sb3I6I2ZmZjsKICAgICAgZm9udC1zaXplOjY0cHg7YmFja2dyb3VuZDp2YXIoLS1wbHV0byk7Ym94LXNoYWRvdzppbnNldCAwIDAgMCA4cHggcmdiYSgyNTUsMjU1LDI1NSwuMTcpCiAgICB9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnJlYWRpbmctbGFiZWx7CiAgICAgIGZvbnQtZmFtaWx5OkFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtsZXR0ZXItc3BhY2luZzouMTVlbTsKICAgICAgY29sb3I6dmFyKC0tZ29sZCk7Zm9udC13ZWlnaHQ6ODAwO2ZvbnQtc2l6ZToxMXB4O21hcmdpbi1ib3R0b206N3B4CiAgICB9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnJlYWRpbmcgaDR7bWFyZ2luOjAgMCAxMHB4O2ZvbnQtc2l6ZToyOHB4O2ZvbnQtd2VpZ2h0OjUwMH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAucmVhZGluZyBwe21hcmdpbjowO2xpbmUtaGVpZ2h0OjEuNzI7Zm9udC1zaXplOjE3cHh9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnF1ZXN0aW9uewogICAgICBtYXJnaW4tdG9wOjE3cHghaW1wb3J0YW50O3BhZGRpbmctdG9wOjE1cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tbGluZSk7CiAgICAgIGNvbG9yOiM0ZTU2NjA7Zm9udC1zdHlsZTppdGFsaWMKICAgIH0KCiAgICAvKiBEaWFnbsOzc3RpY28gKi8KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuZGlhZ3sKICAgICAgbWFyZ2luLXRvcDo0MnB4O3BhZGRpbmctdG9wOjM2cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tbGluZSkKICAgIH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuZGlhZy1oZWFkewogICAgICBkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcikgbWlubWF4KDI4MHB4LC43NWZyKTtnYXA6MjJweDthbGlnbi1pdGVtczplbmQ7bWFyZ2luLWJvdHRvbToyMnB4CiAgICB9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLmRpYWctaGVhZCBwe21hcmdpbjowO2NvbG9yOnZhcigtLW11dGVkKTtsaW5lLWhlaWdodDoxLjY1O2ZvbnQtc2l6ZToxNnB4fQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5hcmVhewogICAgICBiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1MCwyNDIsLjgpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tbGluZSk7Ym9yZGVyLXJhZGl1czoxOHB4O3BhZGRpbmc6MThweAogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5hcmVhIGxhYmVsewogICAgICBkaXNwbGF5OmJsb2NrO2ZvbnQtZmFtaWx5OkFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjgwMDtmb250LXNpemU6MTNweDttYXJnaW4tYm90dG9tOjhweAogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IHNlbGVjdHsKICAgICAgd2lkdGg6MTAwJTttaW4taGVpZ2h0OjQ2cHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI5LDM4LDQ4LC4yMCk7Ym9yZGVyLXJhZGl1czoxMnB4OwogICAgICBiYWNrZ3JvdW5kOiNmZmZkZjg7Y29sb3I6dmFyKC0taW5rKTtwYWRkaW5nOjAgMTJweDtmb250LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtmb250LXNpemU6MTZweAogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5xZ3JpZHsKICAgICAgZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKTtnYXA6MTRweAogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5xewogICAgICBiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1MCwyNDIsLjg2KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWxpbmUpO2JvcmRlci1yYWRpdXM6MThweDtwYWRkaW5nOjIwcHgKICAgIH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAucXRvcHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMXB4O21hcmdpbi1ib3R0b206OXB4fQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5taW5pewogICAgICB3aWR0aDo0NHB4O2hlaWdodDo0NHB4O2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6Z3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7Y29sb3I6d2hpdGU7Zm9udC1zaXplOjI0cHg7ZmxleDpub25lCiAgICB9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnEgaDR7bWFyZ2luOjA7Zm9udC1zaXplOjIwcHg7Zm9udC13ZWlnaHQ6NTAwfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5xIHB7CiAgICAgIG1hcmdpbjo3cHggMCAxNHB4O2ZvbnQtZmFtaWx5OkFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjEuNTtjb2xvcjojNTI1YjY1CiAgICB9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnNjYWxlewogICAgICBkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg1LDFmcik7Z2FwOjdweAogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5zY2FsZSBpbnB1dHtwb3NpdGlvbjphYnNvbHV0ZTtvcGFjaXR5OjA7cG9pbnRlci1ldmVudHM6bm9uZX0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuc2NhbGUgbGFiZWx7CiAgICAgIG1pbi1oZWlnaHQ6NDRweDtkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO2JvcmRlcjoxcHggc29saWQgcmdiYSgyOSwzOCw0OCwuMTgpOwogICAgICBib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDojZmZmZGY4O2ZvbnQtZmFtaWx5OkFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmO2ZvbnQtd2VpZ2h0OjgwMDtmb250LXNpemU6MTRweDtjdXJzb3I6cG9pbnRlcgogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5zY2FsZSBpbnB1dDpmb2N1cytsYWJlbHtvdXRsaW5lOjNweCBzb2xpZCByZ2JhKDE4MSwxMzgsNjksLjI1KTtvdXRsaW5lLW9mZnNldDoycHh9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnNjYWxlIGlucHV0OmNoZWNrZWQrbGFiZWx7YmFja2dyb3VuZDp2YXIoLS1uaWdodCk7Y29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tbmlnaHQpfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5zY2FsZS1jYXB0aW9uewogICAgICBkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjEwcHg7bWFyZ2luLXRvcDo3cHg7Y29sb3I6dmFyKC0tbXV0ZWQpOwogICAgICBmb250LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtmb250LXNpemU6MTFweAogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5hY3Rpb25ze2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtnYXA6MTBweDttYXJnaW4tdG9wOjE4cHh9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLmJ0bnsKICAgICAgbWluLWhlaWdodDo0NHB4O2JvcmRlci1yYWRpdXM6OTk5cHg7cGFkZGluZzoxMXB4IDE4cHg7Zm9udC1mYW1pbHk6QXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6ODAwO2ZvbnQtc2l6ZToxNHB4CiAgICB9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLmJ0bi1wcmltYXJ5e2JhY2tncm91bmQ6dmFyKC0tbmlnaHQpO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgdmFyKC0tbmlnaHQpfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5idG4tc2Vjb25kYXJ5e2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tbmlnaHQpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tbmlnaHQpfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5yZXN1bHR7CiAgICAgIGRpc3BsYXk6bm9uZTttYXJnaW4tdG9wOjIycHg7Ym9yZGVyLXJhZGl1czoyMnB4O292ZXJmbG93OmhpZGRlbjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjMsMzQsNDksLjE1KQogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5yZXN1bHQuc2hvd3tkaXNwbGF5OmJsb2NrfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5yZXN1bHQtaGVhZHsKICAgICAgYmFja2dyb3VuZDp2YXIoLS1uaWdodCk7Y29sb3I6I2Y3ZjJlYTtwYWRkaW5nOjI0cHgKICAgIH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAucmVzdWx0LWhlYWQgLmV5ZWJyb3d7CiAgICAgIGZvbnQtZmFtaWx5OkFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtsZXR0ZXItc3BhY2luZzouMTRlbTtmb250LXdlaWdodDo4MDA7CiAgICAgIGNvbG9yOiNlMWM0OGI7Zm9udC1zaXplOjExcHg7bWFyZ2luLWJvdHRvbTo4cHgKICAgIH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAucmVzdWx0LWhlYWQgaDR7bWFyZ2luOjA7Zm9udC1zaXplOjI4cHg7Zm9udC13ZWlnaHQ6NTAwfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5yZXN1bHQtaGVhZCBwe21hcmdpbjoxMHB4IDAgMDtjb2xvcjojZDVkY2U0O2xpbmUtaGVpZ2h0OjEuNn0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAucmVzdWx0LWJvZHl7YmFja2dyb3VuZDojZmZmYWYyO3BhZGRpbmc6MjJweH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAucmVzdWx0LWdyaWR7CiAgICAgIGRpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDMsbWlubWF4KDAsMWZyKSk7Z2FwOjEycHgKICAgIH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuc3RlcHsKICAgICAgYmFja2dyb3VuZDojZjZlZmU0O2JvcmRlcjoxcHggc29saWQgdmFyKC0tbGluZSk7Ym9yZGVyLXJhZGl1czoxNnB4O3BhZGRpbmc6MTdweAogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5zdGVwIGJ7CiAgICAgIGRpc3BsYXk6YmxvY2s7Zm9udC1mYW1pbHk6QXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7Y29sb3I6dmFyKC0tZ29sZCk7Zm9udC1zaXplOjExcHg7CiAgICAgIGxldHRlci1zcGFjaW5nOi4xMWVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTttYXJnaW4tYm90dG9tOjdweAogICAgfQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5zdGVwIHN0cm9uZ3tkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxOHB4O21hcmdpbi1ib3R0b206NnB4fQogICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5zdGVwIHNwYW57Zm9udC1mYW1pbHk6QXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MS41O2NvbG9yOiM1MDU5NjN9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLndhcm5pbmd7CiAgICAgIG1hcmdpbi10b3A6MTNweDtwYWRkaW5nOjE1cHggMTdweDtib3JkZXItbGVmdDo0cHggc29saWQgdmFyKC0tZ29sZCk7YmFja2dyb3VuZDojZjNlN2QzOwogICAgICBmb250LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoxLjU1O2NvbG9yOiM0ZDUzNWEKICAgIH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuZm9vdGVyewogICAgICBkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjE4cHg7YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbi10b3A6MzRweDtwYWRkaW5nLXRvcDoxOHB4OwogICAgICBib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1saW5lKTtmb250LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtmb250LXNpemU6MTJweDtjb2xvcjp2YXIoLS1tdXRlZCkKICAgIH0KICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuYnJhbmR7Zm9udC13ZWlnaHQ6ODAwO2NvbG9yOiM0ZjU5NjV9CiAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLmZvb3Rub3Rle3RleHQtYWxpZ246cmlnaHQ7bWF4LXdpZHRoOjY1MHB4fQoKICAgIEBtZWRpYShtYXgtd2lkdGg6ODIwcHgpewogICAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLmludHJvLCNhc3Ryby10cmlhbmd1bG8tMjAyNiAuZGlhZy1oZWFke2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnJ9CiAgICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAucmVhZGluZ3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MTIwcHggbWlubWF4KDAsMWZyKX0KICAgICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5yZWFkaW5nLXN5bWJvbHtmb250LXNpemU6NDhweH0KICAgICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5yZXN1bHQtZ3JpZHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyfQogICAgfQogICAgQG1lZGlhKG1heC13aWR0aDo2NDBweCl7CiAgICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNi5hdDI2e2JvcmRlci1yYWRpdXM6MThweH0KICAgICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5oZXJve3BhZGRpbmc6MzhweCAyMHB4IDM0cHh9CiAgICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuYm9keXtwYWRkaW5nOjE4cHh9CiAgICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAucWdyaWR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcn0KICAgICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2IC5yZWFkaW5ne2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7cGFkZGluZzoyMHB4fQogICAgICAjYXN0cm8tdHJpYW5ndWxvLTIwMjYgLnJlYWRpbmctc3ltYm9se3dpZHRoOjk0cHh9CiAgICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAudGFie2ZsZXg6MSAxIGF1dG99CiAgICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuZm9vdGVye2Rpc3BsYXk6YmxvY2t9CiAgICAgICNhc3Ryby10cmlhbmd1bG8tMjAyNiAuZm9vdG5vdGV7dGV4dC1hbGlnbjpsZWZ0O21hcmdpbi10b3A6OHB4fQogICAgfQogICAgQG1lZGlhKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsKICAgICAgI2FzdHJvLXRyaWFuZ3Vsby0yMDI2ICp7dHJhbnNpdGlvbjpub25lIWltcG9ydGFudDtzY3JvbGwtYmVoYXZpb3I6YXV0byFpbXBvcnRhbnR9CiAgICB9CiAgPC9zdHlsZT4KCiAgPGhlYWRlciBjbGFzcz0iaGVybyI+CiAgICA8ZGl2IGNsYXNzPSJraWNrZXIiPkFzdHJvbWVtYnJlc8OtYSDCtyBoZXJyYW1pZW50YSBpbnRlcmFjdGl2YTwvZGl2PgogICAgPGgyPkVsIHRyacOhbmd1bG8gZGVsIGNhbWJpbyBkZSDDqXBvY2E8L2gyPgogICAgPHAgY2xhc3M9InN1YiI+VW5hIGxlY3R1cmEgcGFyYSBjb21wcmVuZGVyIGxhIGdyYW4gY29uZmlndXJhY2nDs24gZW50cmUgUGx1dMOzbiwgTmVwdHVubyB5IFVyYW5vLCB5IGNvbnZlcnRpcmxhIGRlc3B1w6lzIGVuIGRlY2lzaW9uZXMgw7p0aWxlcyBwYXJhIGxhIHZpZGEgcmVhbC48L3A+CiAgPC9oZWFkZXI+CgogIDxkaXYgY2xhc3M9ImJvZHkiPgogICAgPGRpdiBjbGFzcz0iaW50cm8iPgogICAgICA8YXJ0aWNsZSBjbGFzcz0icGFuZWwiPgogICAgICAgIDxoMz5VbmEgZmlndXJhIGFybcOzbmljYSBubyBzaWduaWZpY2EgdW5hIMOpcG9jYSBjw7Ntb2RhPC9oMz4KICAgICAgICA8cD5FbCB0csOtZ29ubyBQbHV0w7NuLVVyYW5vIHkgbG9zIHNleHRpbGVzIGRlIE5lcHR1bm8gY29uIGFtYm9zIGZhY2lsaXRhbiBxdWUgcG9kZXIsIGlubm92YWNpw7NuIGUgaW1hZ2luYXJpbyBjb2xlY3Rpdm8gc2UgY29uZWN0ZW4gY29uIGdyYW4gZmx1aWRlei4gTGEgY3Vlc3Rpw7NuIG5vIGVzIHNpIGhhYnLDoSB0cmFuc2Zvcm1hY2nDs24sIHNpbm8gPHN0cm9uZz5xdcOpIGRpcmVjY2nDs24gdG9tYXLDoSB5IHF1acOpbiBsYSBjb25kdWNpcsOhPC9zdHJvbmc+LjwvcD4KICAgICAgICA8cD5QdWxzYSBzb2JyZSBjYWRhIHBsYW5ldGEgcGFyYSBjYW1iaWFyIGVsIGZvY28uIERlc3B1w6lzIHV0aWxpemEgZWwgZGlhZ27Ds3N0aWNvIGluZmVyaW9yOiBubyByZXBpdGUgdHVzIHJlc3B1ZXN0YXMsIHNpbm8gcXVlIGlkZW50aWZpY2EgY3XDoWwgZGUgbGFzIGN1YXRybyBmdW5jaW9uZXMgbmVjZXNpdGEgbcOhcyB0cmFiYWpvIHkgcHJvcG9uZSB1biBwbGFuIGRlIGludGVydmVuY2nDs24uPC9wPgogICAgICA8L2FydGljbGU+CgogICAgICA8YXNpZGUgY2xhc3M9InBhbmVsIG1hcCI+CiAgICAgICAgPHN2ZyB2aWV3Qm94PSIwIDAgNTQwIDM5NSIgcm9sZT0iaW1nIiBhcmlhLWxhYmVsbGVkYnk9InRyaS10aXRsZSB0cmktZGVzYyI+CiAgICAgICAgICA8dGl0bGUgaWQ9InRyaS10aXRsZSI+VHJpw6FuZ3VsbyBwbGFuZXRhcmlvIGVudHJlIFBsdXTDs24sIE5lcHR1bm8geSBVcmFubzwvdGl0bGU+CiAgICAgICAgICA8ZGVzYyBpZD0idHJpLWRlc2MiPk5lcHR1bm8gZW4gQXJpZXMgZW4gZWwgdsOpcnRpY2Ugc3VwZXJpb3IsIFBsdXTDs24gZW4gQWN1YXJpbyB5IFVyYW5vIGVuIEfDqW1pbmlzIGVuIGxhIGJhc2UuIFNhdHVybm8gbm8gZm9ybWEgcGFydGUgZGVsIHRyacOhbmd1bG8uPC9kZXNjPgoKICAgICAgICAgIDxwYXRoIGNsYXNzPSJlZGdlIiBkPSJNMTI1IDI5OCBMMjcwIDgwIiAvPgogICAgICAgICAgPHBhdGggY2xhc3M9ImVkZ2UiIGQ9Ik00MTUgMjk4IEwyNzAgODAiIC8+CiAgICAgICAgICA8cGF0aCBjbGFzcz0iZWRnZSBlZGdlLW1haW4iIGQ9Ik0xMjUgMjk4IEw0MTUgMjk4IiAvPgoKICAgICAgICAgIDx0ZXh0IHg9IjE4MiIgeT0iMTcwIiBjbGFzcz0iYXNwZWN0IiB0cmFuc2Zvcm09InJvdGF0ZSgtNTYgMTgyIDE3MCkiPlNFWFRJTDwvdGV4dD4KICAgICAgICAgIDx0ZXh0IHg9IjM1OCIgeT0iMTcwIiBjbGFzcz0iYXNwZWN0IiB0cmFuc2Zvcm09InJvdGF0ZSg1NiAzNTggMTcwKSI+U0VYVElMPC90ZXh0PgogICAgICAgICAgPHRleHQgeD0iMjcwIiB5PSIyODYiIGNsYXNzPSJhc3BlY3QiPlRSw41HT05PPC90ZXh0PgoKICAgICAgICAgIDxnIGNsYXNzPSJub2RlIiBkYXRhLXBsYW5ldD0ibmVwdHVuZSIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0iMCIgYXJpYS1wcmVzc2VkPSJmYWxzZSIgYXJpYS1sYWJlbD0iTmVwdHVubyBlbiBBcmllcyI+CiAgICAgICAgICAgIDxjaXJjbGUgY3g9IjI3MCIgY3k9IjgwIiByPSI0OCIgZmlsbD0idmFyKC0tbmVwdHVuZSkiLz4KICAgICAgICAgICAgPHRleHQgeD0iMjcwIiB5PSI5MyIgY2xhc3M9ImdseXBoIj7imYY8L3RleHQ+CiAgICAgICAgICAgIDx0ZXh0IHg9IjI3MCIgeT0iMTQ4IiBjbGFzcz0ibmFtZSI+TkVQVFVOTzwvdGV4dD4KICAgICAgICAgICAgPHRleHQgeD0iMjcwIiB5PSIxNjYiIGNsYXNzPSJzaWduIj5BcmllcyDCtyB2aXNpw7NuPC90ZXh0PgogICAgICAgICAgPC9nPgoKICAgICAgICAgIDxnIGNsYXNzPSJub2RlIiBkYXRhLXBsYW5ldD0icGx1dG8iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGFyaWEtcHJlc3NlZD0idHJ1ZSIgYXJpYS1sYWJlbD0iUGx1dMOzbiBlbiBBY3VhcmlvIj4KICAgICAgICAgICAgPGNpcmNsZSBjeD0iMTI1IiBjeT0iMjk4IiByPSI0OCIgZmlsbD0idmFyKC0tcGx1dG8pIi8+CiAgICAgICAgICAgIDx0ZXh0IHg9IjEyNSIgeT0iMzExIiBjbGFzcz0iZ2x5cGgiPuKZhzwvdGV4dD4KICAgICAgICAgICAgPHRleHQgeD0iMTI1IiB5PSIzNjUiIGNsYXNzPSJuYW1lIj5QTFVUw5NOPC90ZXh0PgogICAgICAgICAgICA8dGV4dCB4PSIxMjUiIHk9IjM4MyIgY2xhc3M9InNpZ24iPkFjdWFyaW8gwrcgcG9kZXI8L3RleHQ+CiAgICAgICAgICA8L2c+CgogICAgICAgICAgPGcgY2xhc3M9Im5vZGUiIGRhdGEtcGxhbmV0PSJ1cmFudXMiIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGFyaWEtcHJlc3NlZD0iZmFsc2UiIGFyaWEtbGFiZWw9IlVyYW5vIGVuIEfDqW1pbmlzIj4KICAgICAgICAgICAgPGNpcmNsZSBjeD0iNDE1IiBjeT0iMjk4IiByPSI0OCIgZmlsbD0idmFyKC0tdXJhbnVzKSIvPgogICAgICAgICAgICA8dGV4dCB4PSI0MTUiIHk9IjMxMSIgY2xhc3M9ImdseXBoIj7imYU8L3RleHQ+CiAgICAgICAgICAgIDx0ZXh0IHg9IjQxNSIgeT0iMzY1IiBjbGFzcz0ibmFtZSI+VVJBTk88L3RleHQ+CiAgICAgICAgICAgIDx0ZXh0IHg9IjQxNSIgeT0iMzgzIiBjbGFzcz0ic2lnbiI+R8OpbWluaXMgwrcgaW5ub3ZhY2nDs248L3RleHQ+CiAgICAgICAgICA8L2c+CiAgICAgICAgPC9zdmc+CgogICAgICAgIDxkaXYgY2xhc3M9InNhdHVybi1ib3giPgogICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJzYXR1cm4tYnV0dG9uIiBkYXRhLXBsYW5ldD0ic2F0dXJuIiBhcmlhLXByZXNzZWQ9ImZhbHNlIiBhcmlhLWxhYmVsPSJTYXR1cm5vLCBmYWN0b3IgZGUgcmVhbGlkYWQiPuKZhDwvYnV0dG9uPgogICAgICAgICAgPGRpdiBjbGFzcz0ic2F0dXJuLWNvcHkiPgogICAgICAgICAgICA8c3Ryb25nPlNhdHVybm8gwrcgZmFjdG9yIGRlIHJlYWxpZGFkPC9zdHJvbmc+CiAgICAgICAgICAgIDxzcGFuPk5vIGZvcm1hIHBhcnRlIGRlIGxhIGdlb21ldHLDrWEgZGVsIHRyacOhbmd1bG8uIFNlIGluY29ycG9yYSBwb3Igc3UgY29uanVuY2nDs24gY29uIE5lcHR1bm8gZW4gMjAyNjogZXN0cnVjdHVyYSwgbMOtbWl0ZSwgY29zdGUgeSBtYXRlcmlhbGl6YWNpw7NuLjwvc3Bhbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgPG5hdiBjbGFzcz0idGFicyIgYXJpYS1sYWJlbD0iUGVyc3BlY3RpdmEgZGUgbGVjdHVyYSI+CiAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0idGFiIiBkYXRhLXZpZXc9Im11bmRpYWwiIGFyaWEtcHJlc3NlZD0idHJ1ZSI+QXN0cm9tdW5kaWFsPC9idXR0b24+CiAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0idGFiIiBkYXRhLXZpZXc9InBlcnNvbmFsIiBhcmlhLXByZXNzZWQ9ImZhbHNlIj5QZXJzb25hbDwvYnV0dG9uPgogICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InRhYiIgZGF0YS12aWV3PSJpbnRlZ3JhY2lvbiIgYXJpYS1wcmVzc2VkPSJmYWxzZSI+SW50ZWdyYWNpw7NuPC9idXR0b24+CiAgICA8L25hdj4KCiAgICA8c2VjdGlvbiBjbGFzcz0icmVhZGluZyIgYXJpYS1saXZlPSJwb2xpdGUiPgogICAgICA8ZGl2IGNsYXNzPSJyZWFkaW5nLXN5bWJvbCIgZGF0YS1zeW1ib2w+4pmHPC9kaXY+CiAgICAgIDxkaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icmVhZGluZy1sYWJlbCIgZGF0YS1sYWJlbD5Bc3Ryb211bmRpYWwgwrcgUGx1dMOzbjwvZGl2PgogICAgICAgIDxoNCBkYXRhLXRpdGxlPkxhIGluZnJhZXN0cnVjdHVyYSBwcm9mdW5kYSBkZWwgcG9kZXI8L2g0PgogICAgICAgIDxwIGRhdGEtdGV4dD5FbiBBY3VhcmlvLCBQbHV0w7NuIGRlc3BsYXphIHBhcnRlIGRlbCBwb2RlciBoYWNpYSByZWRlcywgc2lzdGVtYXMsIGRhdG9zLCBhbGdvcml0bW9zLCBjb211bmlkYWRlcyBlIGluZnJhZXN0cnVjdHVyYXMgdGVjbm9sw7NnaWNhcy4gTGEgY3Vlc3Rpw7NuIHlhIG5vIGVzIHNvbG8gcXVpw6luIGdvYmllcm5hLCBzaW5vIHF1acOpbiBjb250cm9sYSBhcXVlbGxvIGRlIGxvIHF1ZSB1bmEgc29jaWVkYWQgZW1waWV6YSBhIGRlcGVuZGVyLjwvcD4KICAgICAgICA8cCBjbGFzcz0icXVlc3Rpb24iIGRhdGEtcXVlc3Rpb24+UHJlZ3VudGEgY2xhdmU6IMK/ZMOzbmRlIHNlIGVzdMOhIGNvbmNlbnRyYW5kbyByZWFsbWVudGUgZWwgcG9kZXIsIGF1bnF1ZSBubyBsbGV2ZSB1bmlmb3JtZSBuaSBvY3VwZSB1biBwYWxhY2lvPzwvcD4KICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CgogICAgPHNlY3Rpb24gY2xhc3M9ImRpYWciPgogICAgICA8ZGl2IGNsYXNzPSJkaWFnLWhlYWQiPgogICAgICAgIDxkaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJraWNrZXIiIHN0eWxlPSJjb2xvcjp2YXIoLS1nb2xkKTttYXJnaW4tYm90dG9tOjlweCI+RGlhZ27Ds3N0aWNvIHBlcnNvbmFsPC9kaXY+CiAgICAgICAgICA8aDM+wr9RdcOpIHBhcnRlIGRlbCB0cmnDoW5ndWxvIG5lY2VzaXRhIG3DoXMgdHJhYmFqbyBlbiB0dSB2aWRhPzwvaDM+CiAgICAgICAgICA8cD5WYWxvcmEgY3VhdHJvIGN1ZXN0aW9uZXMgZGUgMCBhIDQuIEVsIHNpc3RlbWEgZGV0ZWN0YSB0dSBjdWVsbG8gZGUgYm90ZWxsYSBwcmluY2lwYWwgeSBlbCBzZWN1bmRhcmlvLCB5IGdlbmVyYSB1bmEgZXN0cmF0ZWdpYSBkaXN0aW50YSBzZWfDum4gZWwgw6FyZWEgZGUgdmlkYSBlbGVnaWRhLjwvcD4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJhcmVhIj4KICAgICAgICAgIDxsYWJlbCBmb3I9ImxpZmUtYXJlYSI+wr9Ew7NuZGUgcXVpZXJlcyBhcGxpY2FyIGVzdGEgbGVjdHVyYT88L2xhYmVsPgogICAgICAgICAgPHNlbGVjdCBpZD0ibGlmZS1hcmVhIj4KICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0idHJhYmFqbyI+VHJhYmFqbyBvIHByb3llY3RvPC9vcHRpb24+CiAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImRpbmVybyI+RGluZXJvIHkgcmVjdXJzb3M8L29wdGlvbj4KICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0icmVsYWNpb25lcyI+UmVsYWNpb25lczwvb3B0aW9uPgogICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJydXRpbmEiPlZpZGEgY290aWRpYW5hIHkgaMOhYml0b3M8L29wdGlvbj4KICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iYXByZW5kaXphamUiPkFwcmVuZGl6YWplIHkgZGVzYXJyb2xsbyBwZXJzb25hbDwvb3B0aW9uPgogICAgICAgICAgPC9zZWxlY3Q+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0icWdyaWQiPgogICAgICAgIDxkaXYgY2xhc3M9InEiPgogICAgICAgICAgPGRpdiBjbGFzcz0icXRvcCI+PGRpdiBjbGFzcz0ibWluaSIgc3R5bGU9ImJhY2tncm91bmQ6dmFyKC0tcGx1dG8pIj7imYc8L2Rpdj48aDQ+UGx1dMOzbiDCtyBkZXB1cmFyPC9oND48L2Rpdj4KICAgICAgICAgIDxwPsK/SGFzdGEgcXXDqSBwdW50byBzaWd1ZXMgc29zdGVuaWVuZG8gYWxnbyBxdWUgc2FiZXMgYWdvdGFkbywgaW1wcm9kdWN0aXZvIG8gcGVydGVuZWNpZW50ZSBhIHVuYSBldGFwYSBhbnRlcmlvcj88L3A+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzY2FsZSIgZGF0YS1zY2FsZT0icGx1dG8iPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ic2NhbGUtY2FwdGlvbiI+PHNwYW4+TmFkYTwvc3Bhbj48c3Bhbj5NdWNow61zaW1vPC9zcGFuPjwvZGl2PgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJxIj4KICAgICAgICAgIDxkaXYgY2xhc3M9InF0b3AiPjxkaXYgY2xhc3M9Im1pbmkiIHN0eWxlPSJiYWNrZ3JvdW5kOnZhcigtLXVyYW51cykiPuKZhTwvZGl2PjxoND5VcmFubyDCtyBhY3R1YWxpemFyPC9oND48L2Rpdj4KICAgICAgICAgIDxwPsK/Q3XDoW50byBub3RhcyBxdWUgdHVzIGhlcnJhbWllbnRhcywgbcOpdG9kb3MsIGNvbm9jaW1pZW50b3MgbyBmb3JtYSBkZSBhY3R1YXIgc2UgZXN0w6FuIHF1ZWRhbmRvIGF0csOhcz88L3A+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzY2FsZSIgZGF0YS1zY2FsZT0idXJhbnVzIj48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InNjYWxlLWNhcHRpb24iPjxzcGFuPk5hZGE8L3NwYW4+PHNwYW4+TXVjaMOtc2ltbzwvc3Bhbj48L2Rpdj4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGRpdiBjbGFzcz0icSI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJxdG9wIj48ZGl2IGNsYXNzPSJtaW5pIiBzdHlsZT0iYmFja2dyb3VuZDp2YXIoLS1uZXB0dW5lKSI+4pmGPC9kaXY+PGg0Pk5lcHR1bm8gwrcgb3JpZW50YXI8L2g0PjwvZGl2PgogICAgICAgICAgPHA+wr9DdcOhbnRhIGZhbHRhIGRlIGRpcmVjY2nDs24sIHNlbnRpZG8gbyBjbGFyaWRhZCBzb2JyZSBsbyBxdWUgcmVhbG1lbnRlIHF1aWVyZXMgZXN0w6FzIGV4cGVyaW1lbnRhbmRvPzwvcD4KICAgICAgICAgIDxkaXYgY2xhc3M9InNjYWxlIiBkYXRhLXNjYWxlPSJuZXB0dW5lIj48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InNjYWxlLWNhcHRpb24iPjxzcGFuPk5hZGE8L3NwYW4+PHNwYW4+TXVjaMOtc2ltbzwvc3Bhbj48L2Rpdj4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGRpdiBjbGFzcz0icSI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJxdG9wIj48ZGl2IGNsYXNzPSJtaW5pIiBzdHlsZT0iYmFja2dyb3VuZDp2YXIoLS1zYXR1cm4pIj7imYQ8L2Rpdj48aDQ+U2F0dXJubyDCtyBjb25zdHJ1aXI8L2g0PjwvZGl2PgogICAgICAgICAgPHA+wr9DdcOhbnRvIHRlIGN1ZXN0YSBjb252ZXJ0aXIgdHVzIGRlY2lzaW9uZXMgZW4gYWNjaW9uZXMgcmVndWxhcmVzLCBtZWRpYmxlcyB5IHNvc3RlbmlkYXMgZW4gZWwgdGllbXBvPzwvcD4KICAgICAgICAgIDxkaXYgY2xhc3M9InNjYWxlIiBkYXRhLXNjYWxlPSJzYXR1cm4iPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ic2NhbGUtY2FwdGlvbiI+PHNwYW4+TmFkYTwvc3Bhbj48c3Bhbj5NdWNow61zaW1vPC9zcGFuPjwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9ImFjdGlvbnMiPgogICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IiBkYXRhLWRpYWdub3NlPk9idGVuZXIgZGlhZ27Ds3N0aWNvIHkgcGxhbjwvYnV0dG9uPgogICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkiIGRhdGEtcmVzZXQ+UmVpbmljaWFyPC9idXR0b24+CiAgICAgIDwvZGl2PgoKICAgICAgPHNlY3Rpb24gY2xhc3M9InJlc3VsdCIgZGF0YS1yZXN1bHQgYXJpYS1saXZlPSJwb2xpdGUiPgogICAgICAgIDxkaXYgY2xhc3M9InJlc3VsdC1oZWFkIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImV5ZWJyb3ciPlR1IHB1bnRvIGRlIHBhbGFuY2E8L2Rpdj4KICAgICAgICAgIDxoNCBkYXRhLXJlc3VsdC10aXRsZT48L2g0PgogICAgICAgICAgPHAgZGF0YS1yZXN1bHQtaW50cm8+PC9wPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InJlc3VsdC1ib2R5Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9InJlc3VsdC1ncmlkIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RlcCI+PGI+UGFzbyAxIMK3IEVzdGEgc2VtYW5hPC9iPjxzdHJvbmcgZGF0YS1zdGVwMS10aXRsZT48L3N0cm9uZz48c3BhbiBkYXRhLXN0ZXAxPjwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RlcCI+PGI+UGFzbyAyIMK3IFByw7N4aW1vcyAzMCBkw61hczwvYj48c3Ryb25nIGRhdGEtc3RlcDItdGl0bGU+PC9zdHJvbmc+PHNwYW4gZGF0YS1zdGVwMj48L3NwYW4+PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0ZXAiPjxiPlBhc28gMyDCtyA5MCBkw61hczwvYj48c3Ryb25nIGRhdGEtc3RlcDMtdGl0bGU+PC9zdHJvbmc+PHNwYW4gZGF0YS1zdGVwMz48L3NwYW4+PC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9Indhcm5pbmciIGRhdGEtd2FybmluZz48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9zZWN0aW9uPgogICAgPC9zZWN0aW9uPgoKICAgIDxmb290ZXIgY2xhc3M9ImZvb3RlciI+CiAgICAgIDxkaXYgY2xhc3M9ImJyYW5kIj5Bc3Ryb21lbWJyZXPDrWEgwrcgY2Fzc2FueWEuY29tPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImZvb3Rub3RlIj5MYSBBc3Ryb2xvZ8OtYSBkZXNjcmliZSBjbGltYXMuIExhIGNvbmNpZW5jaWEgZGVjaWRlIHF1w6kgaGFjZW1vcyBjb24gZWxsb3MuPC9kaXY+CiAgICA8L2Zvb3Rlcj4KICA8L2Rpdj4KCiAgPHNjcmlwdD4KICAoZnVuY3Rpb24oKXsKICAgIGNvbnN0IHJvb3Q9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2FzdHJvLXRyaWFuZ3Vsby0yMDI2Jyk7CiAgICBpZighcm9vdHx8cm9vdC5kYXRhc2V0LnJlYWR5PT09JzEnKXJldHVybjsgcm9vdC5kYXRhc2V0LnJlYWR5PScxJzsKCiAgICBjb25zdCByZWFkaW5nRGF0YT17CiAgICAgIHBsdXRvOntnbHlwaDon4pmHJyxjb2xvcjondmFyKC0tcGx1dG8pJyxuYW1lOidQbHV0w7NuJywKICAgICAgICBtdW5kaWFsOlsnTGEgaW5mcmFlc3RydWN0dXJhIHByb2Z1bmRhIGRlbCBwb2RlcicsJ0VuIEFjdWFyaW8sIFBsdXTDs24gZGVzcGxhemEgcGFydGUgZGVsIHBvZGVyIGhhY2lhIHJlZGVzLCBzaXN0ZW1hcywgZGF0b3MsIGFsZ29yaXRtb3MsIGNvbXVuaWRhZGVzIGUgaW5mcmFlc3RydWN0dXJhcyB0ZWNub2zDs2dpY2FzLiBMYSBjdWVzdGnDs24geWEgbm8gZXMgc29sbyBxdWnDqW4gZ29iaWVybmEsIHNpbm8gcXVpw6luIGNvbnRyb2xhIGFxdWVsbG8gZGUgbG8gcXVlIHVuYSBzb2NpZWRhZCBlbXBpZXphIGEgZGVwZW5kZXIuJywnUHJlZ3VudGEgY2xhdmU6IMK/ZMOzbmRlIHNlIGVzdMOhIGNvbmNlbnRyYW5kbyByZWFsbWVudGUgZWwgcG9kZXIsIGF1bnF1ZSBubyBsbGV2ZSB1bmlmb3JtZSBuaSBvY3VwZSB1biBwYWxhY2lvPyddLAogICAgICAgIHBlcnNvbmFsOlsnRGV0ZWN0YXIgcXXDqSB5YSBoYSB0ZXJtaW5hZG8nLCdQbHV0w7NuIHBpZGUgbWlyYXIgc2luIG1hcXVpbGxhamUgbGFzIHpvbmFzIGRlIGxhIHZpZGEgcXVlIGNvbnN1bWVuIGVuZXJnw61hIHBvcnF1ZSBwZXJ0ZW5lY2VuIGEgdW5hIGlkZW50aWRhZCwgdW5hIGVzdHJ1Y3R1cmEgbyB1bmEgZXRhcGEgcXVlIHlhIGN1bXBsacOzIHN1IGZ1bmNpw7NuLiBTdSBtb3ZpbWllbnRvIG5vIGNvbnNpc3RlIGVuIGFjdW11bGFyLCBzaW5vIGVuIGVsaW1pbmFyIGxvIHF1ZSBpbXBpZGUgcmVnZW5lcmFyc2UuJywnUHJlZ3VudGEgY2xhdmU6IMK/cXXDqSBjb250aW7DumFzIG1hbnRlbmllbmRvIMO6bmljYW1lbnRlIHBvcnF1ZSB0ZW1lcyBlbCB2YWPDrW8gcXVlIGRlamFyw61hIGFsIGRlc2FwYXJlY2VyPyddLAogICAgICAgIGludGVncmFjaW9uOlsnRGVwdXJhciBwYXJhIGxpYmVyYXIgcG90ZW5jaWEnLCdFbGlnZSB1bmEgc29sYSBlc3RydWN0dXJhIGNhZHVjYSB5IGRlY2lkZSBxdcOpIHNpZ25pZmljYSB0ZXJtaW5hcmxhLCByZWR1Y2lybGEgbyB0cmFuc2Zvcm1hcmxhLiBMYSBlbmVyZ8OtYSByZWN1cGVyYWRhIHNlcsOhIGVsIGNvbWJ1c3RpYmxlIGRpc3BvbmlibGUgcGFyYSBsb3Mgb3Ryb3MgdHJlcyBtb3ZpbWllbnRvcy4nLCdBY2Npw7NuOiBpZGVudGlmaWNhIHVuYSByZW51bmNpYSBjb25jcmV0YSBxdWUgbGliZXJlIHRpZW1wbywgZGluZXJvLCBhdGVuY2nDs24gbyBlc3BhY2lvLiddfSwKICAgICAgdXJhbnVzOntnbHlwaDon4pmFJyxjb2xvcjondmFyKC0tdXJhbnVzKScsbmFtZTonVXJhbm8nLAogICAgICAgIG11bmRpYWw6WydMYSByZXZvbHVjacOzbiBkZSBsYSBtZW50ZSBjb25lY3RhZGEnLCdFbiBHw6ltaW5pcywgVXJhbm8gYWNlbGVyYSBjYW1iaW9zIGVuIGluZm9ybWFjacOzbiwgYXByZW5kaXphamUsIGNvbXVuaWNhY2nDs24sIG1vdmlsaWRhZCB5IGxlbmd1YWplLiBMYSBpbm5vdmFjacOzbiBtb2RpZmljYSBubyBzb2xvIG51ZXN0cmFzIGhlcnJhbWllbnRhcywgc2lubyB0YW1iacOpbiBsYSBtYW5lcmEgZW4gcXVlIHBlbnNhbW9zLCBjb21wcm9iYW1vcyBoZWNob3MgeSBhZHF1aXJpbW9zIGNvbm9jaW1pZW50by4nLCdQcmVndW50YSBjbGF2ZTogwr9xdcOpIGNhbWJpYSBjdWFuZG8gcHJvZHVjaXIgaW5mb3JtYWNpw7NuIGRlamEgZGUgc2VyIGV4Y2x1c2l2YW1lbnRlIGh1bWFubz8nXSwKICAgICAgICBwZXJzb25hbDpbJ0FjdHVhbGl6YXIgZWwgc2lzdGVtYSBvcGVyYXRpdm8gbWVudGFsJywnVXJhbm8gZXhpZ2UgcGxhc3RpY2lkYWQgaW50ZWxlY3R1YWwuIE5vIG9ibGlnYSBhIHBlcnNlZ3VpciBjYWRhIG5vdmVkYWQsIHBlcm8gc8OtIGEgZGV0ZWN0YXIgZMOzbmRlIG51ZXN0cm9zIG3DqXRvZG9zIGhhbiBxdWVkYWRvIGRlc2Zhc2Fkb3MuIEFwcmVuZGVyLCBleHBlcmltZW50YXIgeSBjb252ZXJzYXIgY29uIG11bmRvcyBkaWZlcmVudGVzIG1hbnRpZW5lIGFiaWVydGEgbGEgY2FwYWNpZGFkIGRlIGFkYXB0YWNpw7NuLicsJ1ByZWd1bnRhIGNsYXZlOiDCv2VuIHF1w6kgw6FyZWEgc2lndWVzIGFjdHVhbmRvIGNvbiB1bmEgbMOzZ2ljYSBxdWUgZnVuY2lvbmFiYSBoYWNlIGRpZXogbyB2ZWludGUgYcOxb3M/J10sCiAgICAgICAgaW50ZWdyYWNpb246WydDb252ZXJ0aXIgY3VyaW9zaWRhZCBlbiBleHBlcmltZW50YWNpw7NuJywnRXNjb2dlIHVuYSBoYWJpbGlkYWQgbyBoZXJyYW1pZW50YSB2ZXJpZmljYWJsZSB5IHBydcOpYmFsYSBjb24gbcOpdG9kby4gRWwgb2JqZXRpdm8gbm8gZXMg4oCcZXN0YXIgYWwgZMOtYeKAnSwgc2lubyBhZHF1aXJpciB1bmEgY2FwYWNpZGFkIG51ZXZhIHF1ZSBhbXBsw61lIGRlIHZlcmRhZCB0dXMgcG9zaWJpbGlkYWRlcyBkZSBhY2Npw7NuLicsJ0FjY2nDs246IGRlZmluZSB1bmEgZXhwZXJpZW5jaWEgY29uY3JldGEgcXVlIHB1ZWRhcyBwcm9iYXIgYW50ZXMgZGUgcXVlIHRlcm1pbmUgZXN0YSBzZW1hbmEuJ119LAogICAgICBuZXB0dW5lOntnbHlwaDon4pmGJyxjb2xvcjondmFyKC0tbmVwdHVuZSknLG5hbWU6J05lcHR1bm8nLAogICAgICAgIG11bmRpYWw6WydMYSBiYXRhbGxhIHBvciBlbCBpbWFnaW5hcmlvJywnTmVwdHVubyBlbiBBcmllcyBtb3ZpbGl6YSBtaXRvcywgaWRlYWxlcywgaWRlbnRpZGFkZXMsIGNyZWVuY2lhcyB5IHZpc2lvbmVzIGNvbGVjdGl2YXMuIExhIGluc3BpcmFjacOzbiBwdWVkZSBjb252ZXJ0aXJzZSByw6FwaWRhbWVudGUgZW4gY2F1c2EsIG1vdmltaWVudG8gbyBjb21iYXRlLicsJ1ByZWd1bnRhIGNsYXZlOiDCv3F1w6kgcmVsYXRvcyBlc3TDoW4gbW92aWxpemFuZG8gYSBtaWxsb25lcyBkZSBwZXJzb25hcyB5IHF1w6kgcmVhbGlkYWQgZXN0w6FuIGRlamFuZG8gZnVlcmEgZGVsIGVuY3VhZHJlPyddLAogICAgICAgIHBlcnNvbmFsOlsnUmVjdXBlcmFyIGRpcmVjY2nDs24geSBzZW50aWRvJywnTmVwdHVubyBwcmVndW50YSBoYWNpYSBkw7NuZGUgcXVpZXJlcyBpciBhbnRlcyBkZSBwcmVndW50YXJ0ZSBjw7NtbyBsbGVnYXIuIEVuIHVuYSDDqXBvY2Egc2F0dXJhZGEgZGUgaGVycmFtaWVudGFzIHkgZXN0w61tdWxvcywgbGEgZGlmaWN1bHRhZCBwdWVkZSBubyBzZXIgbGEgZmFsdGEgZGUgbWVkaW9zLCBzaW5vIHZpdmlyIHNpbiB1bmEgZGlyZWNjacOzbiBxdWUgZMOpIHNpZ25pZmljYWRvIGEgbG8gcXVlIGhhY2Vtb3MuJywnUHJlZ3VudGEgY2xhdmU6IHNpIHR1dmllcmFzIHN1ZmljaWVudGVzIHJlY3Vyc29zLCDCv2EgcXXDqSBleHBlcmllbmNpYSwgb2JyYSBvIGZvcm1hIGRlIHZpZGEgcXVlcnLDrWFzIGRlZGljYXIgbG9zIHByw7N4aW1vcyBhw7Fvcz8nXSwKICAgICAgICBpbnRlZ3JhY2lvbjpbJ0Rpc3Rpbmd1aXIgdmlzacOzbiBkZSBmYW50YXPDrWEnLCdVbmEgdmlzacOzbiBmw6lydGlsIG9yaWVudGEgZGVjaXNpb25lcy4gVW5hIGZhbnRhc8OtYSBzaXJ2ZSBwYXJhIGFwbGF6YXJsYXMuIEZvcm11bGEgdW5hIGRpcmVjY2nDs24gc3VmaWNpZW50ZW1lbnRlIGluc3BpcmFkb3JhIHBhcmEgbW92aWxpemFydGUgeSBzdWZpY2llbnRlbWVudGUgY2xhcmEgcGFyYSBxdWUgU2F0dXJubyBwdWVkYSBjb252ZXJ0aXJsYSBkZXNwdcOpcyBlbiBjYWxlbmRhcmlvLicsJ0FjY2nDs246IGVzY3JpYmUgdW5hIHNvbGEgZnJhc2UgcXVlIGRlc2NyaWJhIHF1w6kgY2xhc2UgZGUgdmlkYSBxdWllcmVzIGVzdGFyIHZpdmllbmRvLiddfSwKICAgICAgc2F0dXJuOntnbHlwaDon4pmEJyxjb2xvcjondmFyKC0tc2F0dXJuKScsbmFtZTonU2F0dXJubycsCiAgICAgICAgbXVuZGlhbDpbJ0xhIGZhY3R1cmEgZGUgaGFjZXIgcmVhbGlkYWQgdW5hIHZpc2nDs24nLCdTYXR1cm5vIGludHJvZHVjZSBsw61taXRlLCBjb3N0ZSwgaW5zdGl0dWNpw7NuLCB0aWVtcG8geSByZXNwb25zYWJpbGlkYWQuIFRyYXMgc3UgY29uanVuY2nDs24gY29uIE5lcHR1bm8gZW4gQXJpZXMsIGN1YWxxdWllciBncmFuIGlkZWFsIGNvbGVjdGl2byBkZWJlIGVuZnJlbnRhcnNlIGEgcHJlZ3VudGFzIGNvbmNyZXRhczogcXVpw6luIGxvIGZpbmFuY2lhLCBxdcOpIGVzdHJ1Y3R1cmEgbmVjZXNpdGEsIHF1w6kgbm9ybWFzIGxvIHNvc3RpZW5lbiB5IHF1w6kgY29uc2VjdWVuY2lhcyBwcm9kdWNlLicsJ1ByZWd1bnRhIGNsYXZlOiDCv3F1w6kgb2N1cnJlIGN1YW5kbyB1bmEgdmlzacOzbiBkZWphIGRlIHNlciBkaXNjdXJzbyB5IGVtcGllemEgYSBjb252ZXJ0aXJzZSBlbiBpbnN0aXR1Y2nDs24sIHByZXN1cHVlc3RvIHkgbm9ybWE/J10sCiAgICAgICAgcGVyc29uYWw6WydDb252ZXJ0aXIgaW50ZW5jacOzbiBlbiBhcnF1aXRlY3R1cmEnLCdTYXR1cm5vIHNlcGFyYSBlbCBkZXNlbyBkZWwgY29tcHJvbWlzby4gVW5hIGlkZWEgZW1waWV6YSBhIGV4aXN0aXIgY3VhbmRvIGVuY3VlbnRyYSB0aWVtcG8sIHJlcGV0aWNpw7NuLCBkaXNjaXBsaW5hIG8gcmVudW5jaWEgcXVlIGxhIHNvc3RlbmdhLiBObyBwaWRlIGdyYW5kaW9zaWRhZCwgc2lubyBjb250aW51aWRhZC4nLCdQcmVndW50YSBjbGF2ZTogwr9xdcOpIGVzdMOhcyBkaXNwdWVzdG8gYSByZXBldGlyIGF1bnF1ZSBlc2UgZMOtYSBubyB0ZW5nYXMgaW5zcGlyYWNpw7NuPyddLAogICAgICAgIGludGVncmFjaW9uOlsnUG9uZXIgZmVjaGEsIG1lZGlkYSB5IHJlcGV0aWNpw7NuJywnTGEgcHJ1ZWJhIGRlIHJlYWxpZGFkIGVzIHNlbmNpbGxhOiBzaSBubyBwdWVkZSBjb2xvY2Fyc2UgZGUgYWxnw7puIG1vZG8gZW4gbGEgYWdlbmRhLCB0b2RhdsOtYSBubyBoYSBsbGVnYWRvIGEgU2F0dXJuby4gRGlzZcOxYSB1bmEgYWNjacOzbiBwZXF1ZcOxYSBwZXJvIHZlcmlmaWNhYmxlIHF1ZSBwdWVkYXMgc29zdGVuZXIgZHVyYW50ZSA5MCBkw61hcy4nLCdBY2Npw7NuOiBkZWZpbmUgZnJlY3VlbmNpYSwgZHVyYWNpw7NuIG8gY2FudGlkYWQuJ119fQogICAgOwoKICAgIGxldCBwbGFuZXQ9J3BsdXRvJyx2aWV3PSdtdW5kaWFsJzsKICAgIGNvbnN0IG5vZGVzPVsuLi5yb290LnF1ZXJ5U2VsZWN0b3JBbGwoJy5ub2RlJyldOwogICAgY29uc3Qgc2F0dXJuQnRuPXJvb3QucXVlcnlTZWxlY3RvcignLnNhdHVybi1idXR0b24nKTsKICAgIGNvbnN0IHRhYnM9Wy4uLnJvb3QucXVlcnlTZWxlY3RvckFsbCgnLnRhYicpXTsKICAgIGNvbnN0IHN5bWJvbD1yb290LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXN5bWJvbF0nKSxsYWJlbD1yb290LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLWxhYmVsXScpLAogICAgICAgICAgdGl0bGU9cm9vdC5xdWVyeVNlbGVjdG9yKCdbZGF0YS10aXRsZV0nKSx0ZXh0PXJvb3QucXVlcnlTZWxlY3RvcignW2RhdGEtdGV4dF0nKSxxdWVzdGlvbj1yb290LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXF1ZXN0aW9uXScpOwoKICAgIGZ1bmN0aW9uIHJlbmRlclJlYWRpbmcoKXsKICAgICAgY29uc3QgZD1yZWFkaW5nRGF0YVtwbGFuZXRdLGM9ZFt2aWV3XTsKICAgICAgc3ltYm9sLnRleHRDb250ZW50PWQuZ2x5cGg7IHN5bWJvbC5zdHlsZS5iYWNrZ3JvdW5kPWQuY29sb3I7CiAgICAgIGxhYmVsLnRleHRDb250ZW50PSh2aWV3PT09J211bmRpYWwnPydBc3Ryb211bmRpYWwnOnZpZXc9PT0ncGVyc29uYWwnPydQZXJzb25hbCc6J0ludGVncmFjacOzbicpKycgwrcgJytkLm5hbWU7CiAgICAgIHRpdGxlLnRleHRDb250ZW50PWNbMF07dGV4dC50ZXh0Q29udGVudD1jWzFdO3F1ZXN0aW9uLnRleHRDb250ZW50PWNbMl07CiAgICAgIG5vZGVzLmZvckVhY2gobj0+bi5zZXRBdHRyaWJ1dGUoJ2FyaWEtcHJlc3NlZCcsbi5kYXRhc2V0LnBsYW5ldD09PXBsYW5ldD8ndHJ1ZSc6J2ZhbHNlJykpOwogICAgICBzYXR1cm5CdG4uc2V0QXR0cmlidXRlKCdhcmlhLXByZXNzZWQnLHBsYW5ldD09PSdzYXR1cm4nPyd0cnVlJzonZmFsc2UnKTsKICAgICAgdGFicy5mb3JFYWNoKHQ9PnQuc2V0QXR0cmlidXRlKCdhcmlhLXByZXNzZWQnLHQuZGF0YXNldC52aWV3PT09dmlldz8ndHJ1ZSc6J2ZhbHNlJykpOwogICAgfQogICAgbm9kZXMuZm9yRWFjaChuPT57CiAgICAgIGNvbnN0IGFjdD0oKT0+e3BsYW5ldD1uLmRhdGFzZXQucGxhbmV0O3JlbmRlclJlYWRpbmcoKX07CiAgICAgIG4uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLGFjdCk7CiAgICAgIG4uYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsZT0+e2lmKGUua2V5PT09J0VudGVyJ3x8ZS5rZXk9PT0nICcpe2UucHJldmVudERlZmF1bHQoKTthY3QoKX19KTsKICAgIH0pOwogICAgc2F0dXJuQnRuLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywoKT0+e3BsYW5ldD0nc2F0dXJuJztyZW5kZXJSZWFkaW5nKCl9KTsKICAgIHRhYnMuZm9yRWFjaCh0PT50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywoKT0+e3ZpZXc9dC5kYXRhc2V0LnZpZXc7cmVuZGVyUmVhZGluZygpfSkpOwoKICAgIC8vIENvbnN0cnVpciBlc2NhbGFzIDAtNAogICAgWydwbHV0bycsJ3VyYW51cycsJ25lcHR1bmUnLCdzYXR1cm4nXS5mb3JFYWNoKGtleT0+ewogICAgICBjb25zdCBib3g9cm9vdC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1zY2FsZT0iJytrZXkrJyJdJyk7CiAgICAgIGZvcihsZXQgaT0wO2k8PTQ7aSsrKXsKICAgICAgICBjb25zdCBpZD0nYXQyNi0nK2tleSsnLScraTsKICAgICAgICBjb25zdCBpbnB1dD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbnB1dCcpOwogICAgICAgIGlucHV0LnR5cGU9J3JhZGlvJztpbnB1dC5uYW1lPSdhdDI2LScra2V5O2lucHV0LmlkPWlkO2lucHV0LnZhbHVlPVN0cmluZyhpKTsKICAgICAgICBjb25zdCBsYWI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbGFiZWwnKTtsYWIuaHRtbEZvcj1pZDtsYWIudGV4dENvbnRlbnQ9U3RyaW5nKGkpOwogICAgICAgIGJveC5hcHBlbmRDaGlsZChpbnB1dCk7Ym94LmFwcGVuZENoaWxkKGxhYik7CiAgICAgIH0KICAgIH0pOwoKICAgIGNvbnN0IG5hbWVzPXtwbHV0bzonUGx1dMOzbicsdXJhbnVzOidVcmFubycsbmVwdHVuZTonTmVwdHVubycsc2F0dXJuOidTYXR1cm5vJ307CiAgICBjb25zdCB2ZXJicz17cGx1dG86J2RlcHVyYXInLHVyYW51czonYWN0dWFsaXphcicsbmVwdHVuZTonb3JpZW50YXInLHNhdHVybjonY29uc3RydWlyJ307CgogICAgY29uc3QgYXJlYVRleHQ9ewogICAgICB0cmFiYWpvOnsKICAgICAgICBwbHV0bzpbJ0NlcnJhciB1bmEgZnVnYSBkZSBlbmVyZ8OtYScsJ0hheiB1bmEgbGlzdGEgZGUgdGFyZWFzLCBjbGllbnRlcywgcHJveWVjdG9zIG8gY29tcHJvbWlzb3MgcXVlIGNvbnN1bWVuIG3DoXMgZGUgbG8gcXVlIGRldnVlbHZlbi4gRWxpZ2UgdW5vIHkgZGVjaWRlIHNpIHNlIGVsaW1pbmEsIGRlbGVnYSBvIHJlZHVjZS4nLCdSZWRpc2XDsWFyIHR1IGZvY28nLCdSZXNlcnZhIGVsIDIwICUgZGUgdHUgc2VtYW5hIGEgYXF1ZWxsbyBxdWUgc8OtIHF1aWVyZXMgcXVlIGNyZXpjYS4gTG8gYW50aWd1byBubyBkZWJlIHNlZ3VpciBvY3VwYW5kbyB0b2RvIGVsIGNhbGVuZGFyaW8uJywnTWVkaXIgbGEgdHJhbnNmb3JtYWNpw7NuJywnQ29tcGFyYSBob3JhcywgaW5ncmVzb3MsIHJlc3VsdGFkb3MgeSBuaXZlbCBkZSBlbmVyZ8OtYSBjb24gZWwgcHVudG8gZGUgcGFydGlkYS4gU2kgbmFkYSBjYW1iacOzLCBsYSB0cmFuc2Zvcm1hY2nDs24gZnVlIHNvbG8gaW50ZWxlY3R1YWwuJ10sCiAgICAgICAgdXJhbnVzOlsnUHJvYmFyIHVuYSBoZXJyYW1pZW50YSBudWV2YScsJ0VsaWdlIHVuYSB0ZWNub2xvZ8OtYSwgbcOpdG9kbyBvIGNhbmFsIHF1ZSBwdWVkYSBhaG9ycmFyIHRpZW1wbyBvIGFicmlyIHBvc2liaWxpZGFkZXMgeSDDunNhbG8gZW4gdW5hIHRhcmVhIHJlYWwsIG5vIGVuIHVuIHR1dG9yaWFsIGFic3RyYWN0by4nLCdDcmVhciB1biBwZXF1ZcOxbyBsYWJvcmF0b3JpbycsJ0R1cmFudGUgMzAgZMOtYXMgcHJ1ZWJhIHVuYSBmb3JtYSBkaXN0aW50YSBkZSB0cmFiYWphciB5IHJlZ2lzdHJhIHF1w6kgbWVqb3JhIHkgcXXDqSBlbXBlb3JhLiBDb25zZXJ2YSDDum5pY2FtZW50ZSBsbyBxdWUgcHJvZHV6Y2EgdW5hIHZlbnRhamEgY2xhcmEuJywnSW50ZWdyYXIgbyBkZXNjYXJ0YXInLCdBbCBjYWJvIGRlIDkwIGTDrWFzIGxhIG5vdmVkYWQgZGViZSBoYWJlciBwYXNhZG8gdW5hIHBydWViYTogaW5jb3Jwb3JhcnNlIGFsIHNpc3RlbWEgbyBzYWxpciBkZSDDqWwuJ10sCiAgICAgICAgbmVwdHVuZTpbJ0RlZmluaXIgZWwgbm9ydGUnLCdFc2NyaWJlIHF1w6kgcXVpZXJlcyBxdWUgcmVwcmVzZW50ZSB0dSB0cmFiYWpvIGRlbnRybyBkZSB0cmVzIGHDsW9zLiBFdml0YSBjaWZyYXMgYWwgcHJpbmNpcGlvOiBkZXNjcmliZSBwcm9ww7NzaXRvLCB0aXBvIGRlIGFjdGl2aWRhZCwgcml0bW8geSBjYWxpZGFkIGRlIHZpZGEuJywnRWxpbWluYXIgcHJveWVjdG9zIGluY29oZXJlbnRlcycsJ1JldmlzYSB0dXMgcHJveWVjdG9zIGFjdHVhbGVzIHkgbWFyY2EgY3XDoWxlcyBhY2VyY2FuIGEgZXNhIGRpcmVjY2nDs24geSBjdcOhbGVzIGxhIGNvbnRyYWRpY2VuLiBSZWR1Y2UgYWwgbWVub3MgdW5vIGRlIGVzdG9zIMO6bHRpbW9zLicsJ0NvbnZlcnRpciB2aXNpw7NuIGVuIGNyaXRlcmlvJywnVXNhIGVzYSBkaXJlY2Npw7NuIHBhcmEgZGVjaWRpciBhIHF1w6kgZGljZXMgc8OtIHkgYSBxdcOpIGRpY2VzIG5vLiBVbmEgdmlzacOzbiDDunRpbCBkZWJlIHNpbXBsaWZpY2FyIGRlY2lzaW9uZXMuJ10sCiAgICAgICAgc2F0dXJuOlsnQmxvcXVlYXIgdGllbXBvIHJlYWwnLCdSZXNlcnZhIGVuIGFnZW5kYSBkb3MgYmxvcXVlcyBzZW1hbmFsZXMgcGFyYSBsYSBwcmlvcmlkYWQgcHJpbmNpcGFsLiBTaSBubyB0aWVuZSBob3JhcmlvLCBhw7puIG5vIGVzIHByaW9yaWRhZC4nLCdDcmVhciB1bmEgY2FkZW5jaWEnLCdEZWZpbmUgdW5hIHJlcGV0aWNpw7NuIG3DrW5pbWE6IHByb2R1Y2Npw7NuLCB2ZW50YSwgZXN0dWRpbyBvIHNlZ3VpbWllbnRvIHNlbWFuYWwuIExhIHJlZ3VsYXJpZGFkIGltcG9ydGEgbcOhcyBxdWUgbGEgaW50ZW5zaWRhZCBpbmljaWFsLicsJ1JldmlzYXIgY29uIGRhdG9zJywnQSBsb3MgOTAgZMOtYXMgZXhhbWluYSByZXN1bHRhZG9zIGNvbmNyZXRvcyB5IGRlY2lkZSBxdcOpIG1hbnRlbmVyLCBhdW1lbnRhciBvIGNvcnJlZ2lyLiddCiAgICAgIH0sCiAgICAgIGRpbmVybzp7CiAgICAgICAgcGx1dG86WydDb3J0YXIgdW5hIHNhbmdyw61hJywnSWRlbnRpZmljYSB1biBnYXN0bywgZGV1ZGEsIHN1c2NyaXBjacOzbiBvIGjDoWJpdG8gZmluYW5jaWVybyBxdWUgZHJlbmEgcmVjdXJzb3Mgc2luIGFwb3J0YXIgdmFsb3IgcHJvcG9yY2lvbmFsIHkgYWN0w7phIHNvYnJlIHVubyBlc3RhIHNlbWFuYS4nLCdSZW9yZGVuYXIgcHJpb3JpZGFkZXMnLCdEaXJpZ2UgZWwgZGluZXJvIGxpYmVyYWRvIGhhY2lhIHVuYSByZXNlcnZhLCBkZXVkYSBwcmlvcml0YXJpYSBvIGludmVyc2nDs24gZW4gY2FwYWNpZGFkIHByb2R1Y3RpdmEuJywnQ2FtYmlhciBlc3RydWN0dXJhJywnQnVzY2EgcXVlIGRlbnRybyBkZSA5MCBkw61hcyB0dSBmbHVqbyBkZSBkaW5lcm8gdGVuZ2EgbWVub3MgZnVnYXMgeSBtw6FzIG1hcmdlbiBkZSBtYW5pb2JyYS4nXSwKICAgICAgICB1cmFudXM6WydNb2Rlcm5pemFyIHVuYSBkZWNpc2nDs24nLCdSZXZpc2EgdW5hIGhlcnJhbWllbnRhIGZpbmFuY2llcmEsIG3DqXRvZG8gZGUgY29icm8sIGF1dG9tYXRpemFjacOzbiBvIGZ1ZW50ZSBkZSBpbmZvcm1hY2nDs24gcXVlIGVzdMOpcyB1c2FuZG8gcG9yIGNvc3R1bWJyZS4nLCdFeHBlcmltZW50YXIgc2luIHBvbmVyIGVuIHJpZXNnbyBsYSBiYXNlJywnUHJ1ZWJhIHVuYSBtZWpvcmEgY29uIHVuYSBjYW50aWRhZCBwZXF1ZcOxYSBvIHVuIHByb2Nlc28gYWNvdGFkby4gSW5ub3ZhciBubyBzaWduaWZpY2EgYXBvc3RhciB0b2RvLicsJ0Fkb3B0YXIgbG8gcXVlIGZ1bmNpb25lJywnVHJhcyA5MCBkw61hcyBjb25zZXJ2YSBzb2xvIGFxdWVsbG8gcXVlIGhheWEgbWVqb3JhZG8gY29udHJvbCwgYWhvcnJvLCBpbmdyZXNvcyBvIGluZm9ybWFjacOzbi4nXSwKICAgICAgICBuZXB0dW5lOlsnRGVmaW5pciBwYXJhIHF1w6kgcXVpZXJlcyBlbCBkaW5lcm8nLCdFc2NyaWJlIHF1w6kgbGliZXJ0YWQgbyBjYXBhY2lkYWQgY29uY3JldGEgZGVzZWFzIGNvbXByYXIgY29uIHR1cyByZWN1cnNvcy4gVW5hIG1ldGEgZmluYW5jaWVyYSBzaW4gcHJvcMOzc2l0byBzdWVsZSBkaXNwZXJzYXJzZS4nLCdUcmFkdWNpciBkZXNlbyBlbiBjaWZyYScsJ0NvbnZpZXJ0ZSBlc2UgcHJvcMOzc2l0byBlbiB1bmEgY2FudGlkYWQgYXByb3hpbWFkYSB5IHVuIGhvcml6b250ZSB0ZW1wb3JhbC4nLCdVc2FyIGVsIGRpbmVybyBjb21vIGJyw7pqdWxhJywnQ29tcHJ1ZWJhIHNpIHR1cyBkZWNpc2lvbmVzIGRlIGdhc3RvIGUgaW5ncmVzbyBhcG95YW4gZXNhIGRpcmVjY2nDs24gbyBsYSBzYWJvdGVhbi4nXSwKICAgICAgICBzYXR1cm46WydDcmVhciB1bmEgcmVnbGEgYXV0b23DoXRpY2EnLCdGaWphIHVuYSBjYW50aWRhZCBvIHBvcmNlbnRhamUgcGVyacOzZGljbyBwYXJhIGFob3JybywgYW1vcnRpemFjacOzbiBvIGludmVyc2nDs24uJywnTm8gbmVnb2NpYXIgY29uIHR1IHByb3BpbyBzaXN0ZW1hJywnTWFudMOpbiBsYSByZWdsYSBkdXJhbnRlIDMwIGTDrWFzIHNpbiByZWludGVycHJldGFybGEgY2FkYSBzZW1hbmEuJywnRXZhbHVhciBzb3N0ZW5pYmlsaWRhZCcsJ0EgbG9zIDkwIGTDrWFzIGFqdXN0YSBsYSBjYW50aWRhZCwgcGVybyBjb25zZXJ2YSBlbCBow6FiaXRvIGVzdHJ1Y3R1cmFsLiddCiAgICAgIH0sCiAgICAgIHJlbGFjaW9uZXM6ewogICAgICAgIHBsdXRvOlsnTm9tYnJhciBsbyBxdWUgeWEgbm8gZnVuY2lvbmEnLCdJZGVudGlmaWNhIHVuYSBkaW7DoW1pY2EgcmVwZXRpdGl2YSBxdWUgZXJvc2lvbmEgbGEgcmVsYWNpw7NuOiBjb250cm9sLCBzaWxlbmNpbywgZGVwZW5kZW5jaWEsIGV2YXNpw7NuIG8gcmVzZW50aW1pZW50by4nLCdDYW1iaWFyIGVsIHBhdHLDs24sIG5vIHNvbG8gaGFibGFyIGRlIMOpbCcsJ0ludHJvZHVjZSB1bmEgY29uZHVjdGEgZGlzdGludGEgeSBvYnNlcnZhYmxlLiBTaSBzaWVtcHJlIHJlYWNjaW9uYXMgaWd1YWwsIGxhIHJlbGFjacOzbiBzZWd1aXLDoSBwcm9kdWNpZW5kbyBlbCBtaXNtbyByZXN1bHRhZG8uJywnQ29tcHJvYmFyIHJlY2lwcm9jaWRhZCcsJ1RyYXMgOTAgZMOtYXMgb2JzZXJ2YSBzaSBhbWJhcyBwYXJ0ZXMgcGFydGljaXBhbiBlbiBlbCBjYW1iaW8uIFVuYSB0cmFuc2Zvcm1hY2nDs24gdW5pbGF0ZXJhbCB0aWVuZSBsw61taXRlcy4nXSwKICAgICAgICB1cmFudXM6WydJbnRyb2R1Y2lyIGFpcmUgbnVldm8nLCdIYXogYWxnbyBkaWZlcmVudGUgcXVlIHJvbXBhIGF1dG9tYXRpc21vczogbnVldmEgY29udmVyc2FjacOzbiwgYWN0aXZpZGFkLCBlc3BhY2lvIHBlcnNvbmFsIG8gZm9ybWEgZGUgb3JnYW5pemFyc2UuJywnQWN0dWFsaXphciBhY3VlcmRvcycsJ1JldmlzYSBleHBlY3RhdGl2YXMgYW50aWd1YXMgcXVlIHF1aXrDoSB5YSBubyBlbmNhamFuIGNvbiBsYXMgcGVyc29uYXMgcXVlIHNvaXMgYWhvcmEuJywnQ29uc2VydmFyIGxpYmVydGFkIHkgdsOtbmN1bG8nLCdCdXNjYSB1bmEgZXN0cnVjdHVyYSBxdWUgcGVybWl0YSBub3ZlZGFkIHNpbiBjb252ZXJ0aXIgbGEgcmVsYWNpw7NuIGVuIGluZXN0YWJpbGlkYWQgcGVybWFuZW50ZS4nXSwKICAgICAgICBuZXB0dW5lOlsnRGlzdGluZ3VpciBhbW9yIGRlIGlkZWFsaXphY2nDs24nLCdFc2NyaWJlIHF1w6kgbmVjZXNpdGFzIHJlYWxtZW50ZSB5IHF1w6kgcGFydGUgcGVydGVuZWNlIGEgdW5hIGltYWdlbiBkZSBjw7NtbyDigJxkZWJlcsOtYeKAnSBzZXIgbGEgcmVsYWNpw7NuLicsJ0hhYmxhciBkZSBzZW50aWRvIGNvbXBhcnRpZG8nLCdFeHBsb3JhIHF1w6kgcXVlcsOpaXMgY29uc3RydWlyIG8gZXhwZXJpbWVudGFyIGp1bnRvcywgbcOhcyBhbGzDoSBkZSByZXNvbHZlciBjb25mbGljdG9zIGlubWVkaWF0b3MuJywnVmVyaWZpY2FyIHJlYWxpZGFkJywnQ29tcGFyYSBsYSB2aXNpw7NuIGNvbiBsb3MgaGVjaG9zLiBVbmEgcmVsYWNpw7NuIG5vIHNlIG1pZGUgc29sbyBwb3IgbG8gcXVlIHByb21ldGUsIHNpbm8gcG9yIGxvIHF1ZSBlZmVjdGl2YW1lbnRlIHByb2R1Y2UuJ10sCiAgICAgICAgc2F0dXJuOlsnRmlqYXIgdW4gYWN1ZXJkbyBjb25jcmV0bycsJ0VsaWdlIHVuIGjDoWJpdG8gZGUgcmVsYWNpw7NuIHF1ZSBwdWVkYSBjdW1wbGlyc2U6IHRpZW1wbyBjb21wYXJ0aWRvLCByZXBhcnRvIGRlIHRhcmVhcywgY29tdW5pY2FjacOzbiBvIGzDrW1pdGVzLicsJ01hbnRlbmVybG8gdW4gbWVzJywnTGEgY29uZmlhbnphIHRhbWJpw6luIHNlIGNvbnN0cnV5ZSBtZWRpYW50ZSByZXBldGljacOzbiBwcmV2aXNpYmxlLicsJ1JldmlzYXIgZWwgY29udHJhdG8gcmVhbCcsJ0EgbG9zIDkwIGTDrWFzIGV2YWzDumEgcXXDqSBhY3VlcmRvcyBmdW5jaW9uYW4geSBjdcOhbGVzIG5lY2VzaXRhbiByZW5lZ29jaWFyc2UuJ10KICAgICAgfSwKICAgICAgcnV0aW5hOnsKICAgICAgICBwbHV0bzpbJ0VsaW1pbmFyIHVuYSBjYXJnYScsJ1N1cHJpbWUgdW5hIG9ibGlnYWNpw7NuLCBow6FiaXRvIG8gZWxlbWVudG8gZGUgZGVzb3JkZW4gcXVlIGNvbnN1bWEgYXRlbmNpw7NuIGEgZGlhcmlvLicsJ0NyZWFyIGVzcGFjaW8gYW50ZXMgZGUgYcOxYWRpcicsJ05vIGludHJvZHV6Y2FzIHRyZXMgaMOhYml0b3MgbnVldm9zLiBQcmltZXJvIHJlY3VwZXJhIHRpZW1wbyB5IGVuZXJnw61hLicsJ0NvbnNvbGlkYXIgdW5hIHZpZGEgbcOhcyBsaWdlcmEnLCdDb21wcnVlYmEgZGVudHJvIGRlIDkwIGTDrWFzIHNpIHR1IGTDrWEgdGllbmUgbWVub3MgZnJpY2Npw7NuIHkgbcOhcyBtYXJnZW4uJ10sCiAgICAgICAgdXJhbnVzOlsnQ2FtYmlhciBlbCBtw6l0b2RvJywnUHJ1ZWJhIHVuYSBmb3JtYSBkaXN0aW50YSBkZSBvcmdhbml6YXIgdGFyZWFzLCBkZXNwbGF6YW1pZW50b3MsIGNvbWlkYXMsIGRlc2NhbnNvIG8gdGVjbm9sb2fDrWEgZG9tw6lzdGljYS4nLCdNZWRpciBmcmljY2nDs24nLCdPYnNlcnZhIHF1w6kgY2FtYmlvIGFob3JyYSB0aWVtcG8geSBjdcOhbCBzb2xvIGHDsWFkZSBjb21wbGVqaWRhZC4nLCdBdXRvbWF0aXphciBsbyDDunRpbCcsJ0NvbnNlcnZhIGxvcyBjYW1iaW9zIHF1ZSByZWR1emNhbiBkZWNpc2lvbmVzIHJlcGV0aXRpdmFzLiddLAogICAgICAgIG5lcHR1bmU6WydEZWZpbmlyIGPDs21vIHF1aWVyZXMgc2VudGlyIHR1cyBkw61hcycsJ0Rlc2NyaWJlIHRyZXMgY3VhbGlkYWRlczogcG9yIGVqZW1wbG8sIGNhbG1hLCBtb3ZpbWllbnRvLCBjb25jZW50cmFjacOzbiwgc29jaWFiaWxpZGFkLicsJ1Jlb3JkZW5hciBzZWfDum4gZXNhcyBjdWFsaWRhZGVzJywnSGF6IHF1ZSBob3JhcmlvcyB5IGFjdGl2aWRhZGVzIHJlZmxlamVuIGVzYXMgcHJpb3JpZGFkZXMuJywnRXZpdGFyIGxhIHZpZGEgYWNjaWRlbnRhbCcsJ1JldmlzYSBzaSB0dSBhZ2VuZGEgcmVhbCBzZSBwYXJlY2UgYSBsYSB2aWRhIHF1ZSBkaWNlcyBxdWVyZXIuJ10sCiAgICAgICAgc2F0dXJuOlsnRWxlZ2lyIHVuIGjDoWJpdG8gbcOtbmltbycsJ0VzY29nZSB1bmEgYWNjacOzbiBkaWFyaWEgbyBzZW1hbmFsIHRhbiBjb25jcmV0YSBxdWUgbm8gYWRtaXRhIGRpc2N1c2nDs24uJywnUHJvdGVnZXIgbGEgcmVwZXRpY2nDs24nLCdIYXpsYSBpbmNsdXNvIGVuIHZlcnNpw7NuIG3DrW5pbWEgZHVyYW50ZSAzMCBkw61hcy4nLCdDb252ZXJ0aXJsYSBlbiBlc3RydWN0dXJhJywnQSBsb3MgOTAgZMOtYXMgZGViZSByZXF1ZXJpciBtZW5vcyB2b2x1bnRhZCBwb3JxdWUgeWEgZm9ybWEgcGFydGUgZGUgdHUgc2lzdGVtYS4nXQogICAgICB9LAogICAgICBhcHJlbmRpemFqZTp7CiAgICAgICAgcGx1dG86WydBYmFuZG9uYXIgdW5hIGFjdW11bGFjacOzbiBpbsO6dGlsJywnRGVqYSBkZSBjb2xlY2Npb25hciBjdXJzb3MsIGxpYnJvcyBvIG3DqXRvZG9zIHF1ZSBubyBhcGxpY2FzLiBFbGlnZSBxdcOpIGNvbm9jaW1pZW50byBtZXJlY2UgcmVhbG1lbnRlIHR1IGF0ZW5jacOzbi4nLCdQcm9mdW5kaXphciBlbiBtZW5vcyBjb3NhcycsJ1JlZHVjZSBmdWVudGVzIHkgYXVtZW50YSBwcsOhY3RpY2EuJywnRWxpbWluYXIgcnVpZG8gaW50ZWxlY3R1YWwnLCdBbCBjYWJvIGRlIDkwIGTDrWFzIGRlYmVyw61hcyBtYW5lamFyIG1lam9yIG1lbm9zIGNvbmNlcHRvcywgbm8gY29ub2NlciBzdXBlcmZpY2lhbG1lbnRlIG3DoXMuJ10sCiAgICAgICAgdXJhbnVzOlsnQXByZW5kZXIgYWxnbyBmdWVyYSBkZSB0dSBjaXJjdWl0bycsJ0J1c2NhIHVuYSBoZXJyYW1pZW50YSwgZGlzY2lwbGluYSBvIGF1dG9yIHF1ZSBjb250cmFkaWdhIHR1cyBow6FiaXRvcyBtZW50YWxlcy4nLCdFeHBlcmltZW50YXIgYWN0aXZhbWVudGUnLCdDb252aWVydGUgZWwgYXByZW5kaXphamUgZW4gcHJ1ZWJhLCBwcm95ZWN0byBvIGNvbnZlcnNhY2nDs24uJywnQ3JlYXIgY29uZXhpb25lcyBudWV2YXMnLCdSZWxhY2lvbmEgbG8gYXByZW5kaWRvIGNvbiB0dSBjYW1wbyBwcmluY2lwYWwgeSBleHRyYWUgYWwgbWVub3MgdW5hIGFwbGljYWNpw7NuIG9yaWdpbmFsLiddLAogICAgICAgIG5lcHR1bmU6WydFbGVnaXIgdW5hIHByZWd1bnRhIGdyYW5kZScsJ0RlZmluZSBxdcOpIGN1ZXN0acOzbiBxdWllcmVzIGNvbXByZW5kZXIgZGUgdmVyZGFkLCBubyBzb2xvIHF1w6kgdGVtYSBxdWllcmVzIGNvbnN1bWlyLicsJ0NvbnN0cnVpciB1biBpdGluZXJhcmlvJywnT3JnYW5pemEgbGVjdHVyYXMgeSBleHBlcmllbmNpYXMgYWxyZWRlZG9yIGRlIGVzYSBwcmVndW50YS4nLCdQcm9kdWNpciB1bmEgc8OtbnRlc2lzIHByb3BpYScsJ0FsIGZpbmFsIGRlIDkwIGTDrWFzIGVzY3JpYmUsIGV4cGxpY2EgbyBlbnNlw7FhIGxvIGFwcmVuZGlkby4gTGEgdmlzacOzbiBzZSB2dWVsdmUgbcOhcyBjbGFyYSBjdWFuZG8gZGViZXMgZm9ybXVsYXJsYS4nXSwKICAgICAgICBzYXR1cm46WydGaWphciB1bmEgcnV0aW5hIGRlIGVzdHVkaW8nLCdEZXRlcm1pbmEgZMOtYXMsIGR1cmFjacOzbiB5IG1hdGVyaWFsLicsJ1ByYWN0aWNhciByZWN1cGVyYWNpw7NuJywnTm8gcmVsZWFzIMO6bmljYW1lbnRlOiByZXN1bWUsIHJlc3BvbmRlIHByZWd1bnRhcyB5IGFwbGljYS4nLCdDb21wcm9iYXIgZG9taW5pbycsJ0hheiB1bmEgcHJ1ZWJhIGZpbmFsOiBleHBsaWNhciBzaW4gbm90YXMsIHByb2R1Y2lyIGFsZ28gbyByZXNvbHZlciB1biBjYXNvIHJlYWwuJ10KICAgICAgfQogICAgfTsKCiAgICBjb25zdCBjb21ib1dhcm5pbmdzPXsKICAgICAgJ3BsdXRvLXVyYW51cyc6J1R1IHJldG8gbm8gZXMgc29sbyBzb2x0YXIgbG8gdmllam8sIHNpbm8gZXZpdGFyIHN1c3RpdHVpcmxvIGlubWVkaWF0YW1lbnRlIHBvciBjdWFscXVpZXIgbm92ZWRhZC4gUHJpbWVybyBlbGltaW5hLCBkZXNwdcOpcyBleHBlcmltZW50YS4nLAogICAgICAncGx1dG8tbmVwdHVuZSc6J1B1ZWRlIGhhYmVyIHVuIGZpbmFsIGV2aWRlbnRlIHBlcm8gdW5hIGRpcmVjY2nDs24gdG9kYXbDrWEgYm9ycm9zYS4gTm8gbGxlbmVzIGVsIHZhY8OtbyBkZW1hc2lhZG8gcHJvbnRvOiDDunNhbG8gcGFyYSBhY2xhcmFyIHF1w6kgcXVpZXJlcy4nLAogICAgICAncGx1dG8tc2F0dXJuJzonU2FiZXMgcXVlIGFsZ28gZGViZSB0ZXJtaW5hciwgcGVybyBxdWl6w6Egc2lndWVzIG1hbnRlbmnDqW5kb2xvIHBvciBvYmxpZ2FjacOzbiBvIG1pZWRvIGEgcGVyZGVyIGVzdHJ1Y3R1cmEuIERpc2XDsWEgcHJpbWVybyB1bmEgc2FsaWRhIHZpYWJsZS4nLAogICAgICAndXJhbnVzLXBsdXRvJzonSGF5IGltcHVsc28gZGUgY2FtYmlvLCBwZXJvIGRlbWFzaWFkYSBlbmVyZ8OtYSBzaWd1ZSBhdHJhcGFkYSBlbiBlc3RydWN0dXJhcyBhbnRpZ3Vhcy4gTGEgaW5ub3ZhY2nDs24gbmVjZXNpdGEgZXNwYWNpby4nLAogICAgICAndXJhbnVzLW5lcHR1bmUnOidQdWVkZXMgc2VudGlyIGZhc2NpbmFjacOzbiBwb3IgcG9zaWJpbGlkYWRlcyBudWV2YXMgc2luIHNhYmVyIGN1w6FsZXMgbWVyZWNlbiByZWFsbWVudGUgbGEgcGVuYS4gRGVmaW5lIHVuIGNyaXRlcmlvIGFudGVzIGRlIG11bHRpcGxpY2FyIGV4cGVyaW1lbnRvcy4nLAogICAgICAndXJhbnVzLXNhdHVybic6J0xhIGlkZWEgbnVldmEgZXhpc3RlLCBwZXJvIG5vIGhhIGVuY29udHJhZG8gc2lzdGVtYS4gUmVkdWNlIGxhIGVzY2FsYSBkZWwgZXhwZXJpbWVudG8gaGFzdGEgcXVlIHB1ZWRhIHJlcGV0aXJzZS4nLAogICAgICAnbmVwdHVuZS1wbHV0byc6J0xhIGZhbHRhIGRlIGRpcmVjY2nDs24gcHVlZGUgZGViZXJzZSBhIHF1ZSB1bmEgZXRhcGEgYW50ZXJpb3IgdG9kYXbDrWEgbm8gaGEgc2lkbyBjZXJyYWRhLiBBbnRlcyBkZSBidXNjYXIgdW5hIGdyYW4gdmlzacOzbiwgdGVybWluYSBhbGdvLicsCiAgICAgICduZXB0dW5lLXVyYW51cyc6J0hheSBkZW1hc2lhZGFzIG9wY2lvbmVzIHkgZXNvIHB1ZWRlIHBhcmVjZXIgZmFsdGEgZGUgdm9jYWNpw7NuLiBMaW1pdGEgZWwgY2FtcG8geSBwcnVlYmEgZG9zIGNhbWlub3MgZW4gdmV6IGRlIGltYWdpbmFyIHZlaW50ZS4nLAogICAgICAnbmVwdHVuZS1zYXR1cm4nOidTYWJlcyBtw6FzIG8gbWVub3MgaGFjaWEgZMOzbmRlIHF1aWVyZXMgaXIsIHBlcm8gbGEgdmlzacOzbiBzaWd1ZSBzaW4gY2FsZW5kYXJpby4gQ29udmllcnRlIHVuYSBwYXJ0ZSBkZWwgaWRlYWwgZW4gdW4gY29tcHJvbWlzbyBwZXF1ZcOxbyB5IHJlcGV0aWJsZS4nLAogICAgICAnc2F0dXJuLXBsdXRvJzonTm8gZXMgc29sbyBmYWx0YSBkZSBkaXNjaXBsaW5hLiBRdWl6w6EgaW50ZW50YXMgc29zdGVuZXIgdW5hIGVzdHJ1Y3R1cmEgcXVlIHlhIG5vIG1lcmVjZSBzZXIgc29zdGVuaWRhLiBSZXZpc2EgYW50ZXMgZGUgZXNmb3J6YXJ0ZSBtw6FzLicsCiAgICAgICdzYXR1cm4tdXJhbnVzJzonUHVlZGUgcXVlIGVsIHByb2JsZW1hIG5vIHNlYSBjb25zdGFuY2lhLCBzaW5vIHVuIHNpc3RlbWEgb2Jzb2xldG8gcXVlIGhhY2UgdG9kbyBpbm5lY2VzYXJpYW1lbnRlIGRpZsOtY2lsLiBNb2Rlcm5pemEgYW50ZXMgZGUgZXhpZ2lyIG3DoXMgdm9sdW50YWQuJywKICAgICAgJ3NhdHVybi1uZXB0dW5lJzonTGEgZWplY3VjacOzbiBmYWxsYSBjdWFuZG8gbGEgbWV0YSBubyBpbnNwaXJhIGxvIHN1ZmljaWVudGUgbyBubyBlc3TDoSBkZWZpbmlkYS4gQWNsYXJhIGxhIGRpcmVjY2nDs24geSBkZXNwdcOpcyByZWR1Y2UgZWwgcGxhbiBhIGFjY2lvbmVzIG1lZGlibGVzLicKICAgIH07CgogICAgZnVuY3Rpb24gc2VsZWN0ZWQoa2V5KXsKICAgICAgY29uc3QgZWw9cm9vdC5xdWVyeVNlbGVjdG9yKCdpbnB1dFtuYW1lPSJhdDI2LScra2V5KyciXTpjaGVja2VkJyk7CiAgICAgIHJldHVybiBlbD9OdW1iZXIoZWwudmFsdWUpOm51bGw7CiAgICB9CgogICAgY29uc3QgcmVzdWx0PXJvb3QucXVlcnlTZWxlY3RvcignW2RhdGEtcmVzdWx0XScpOwogICAgcm9vdC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1kaWFnbm9zZV0nKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsKCk9PnsKICAgICAgY29uc3Qgc2NvcmVzPXsKICAgICAgICBwbHV0bzpzZWxlY3RlZCgncGx1dG8nKSx1cmFudXM6c2VsZWN0ZWQoJ3VyYW51cycpLG5lcHR1bmU6c2VsZWN0ZWQoJ25lcHR1bmUnKSxzYXR1cm46c2VsZWN0ZWQoJ3NhdHVybicpCiAgICAgIH07CiAgICAgIGlmKE9iamVjdC52YWx1ZXMoc2NvcmVzKS5zb21lKHY9PnY9PT1udWxsKSl7CiAgICAgICAgcmVzdWx0LmNsYXNzTGlzdC5hZGQoJ3Nob3cnKTsKICAgICAgICByb290LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXJlc3VsdC10aXRsZV0nKS50ZXh0Q29udGVudD0nRmFsdGEgdW5hIHBpZXphIGRlbCBkaWFnbsOzc3RpY28nOwogICAgICAgIHJvb3QucXVlcnlTZWxlY3RvcignW2RhdGEtcmVzdWx0LWludHJvXScpLnRleHRDb250ZW50PSdWYWxvcmEgbGFzIGN1YXRybyBmdW5jaW9uZXMgZGUgMCBhIDQgcGFyYSBxdWUgZWwgc2lzdGVtYSBwdWVkYSBkZXRlY3RhciBlbCB2ZXJkYWRlcm8gY3VlbGxvIGRlIGJvdGVsbGEuJzsKICAgICAgICBbJ1tkYXRhLXN0ZXAxLXRpdGxlXScsJ1tkYXRhLXN0ZXAyLXRpdGxlXScsJ1tkYXRhLXN0ZXAzLXRpdGxlXSddLmZvckVhY2gocz0+cm9vdC5xdWVyeVNlbGVjdG9yKHMpLnRleHRDb250ZW50PScnKTsKICAgICAgICBbJ1tkYXRhLXN0ZXAxXScsJ1tkYXRhLXN0ZXAyXScsJ1tkYXRhLXN0ZXAzXSddLmZvckVhY2gocz0+cm9vdC5xdWVyeVNlbGVjdG9yKHMpLnRleHRDb250ZW50PScnKTsKICAgICAgICByb290LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXdhcm5pbmddJykudGV4dENvbnRlbnQ9J0NvbXBsZXRhIGxhcyBjdWF0cm8gZXNjYWxhcyB5IHZ1ZWx2ZSBhIGNhbGN1bGFyLic7CiAgICAgICAgcmV0dXJuOwogICAgICB9CgogICAgICBjb25zdCBvcmRlcmVkPU9iamVjdC5lbnRyaWVzKHNjb3Jlcykuc29ydCgoYSxiKT0+YlsxXS1hWzFdKTsKICAgICAgY29uc3QgcHJpbWFyeT1vcmRlcmVkWzBdWzBdLCBzZWNvbmRhcnk9b3JkZXJlZFsxXVswXTsKICAgICAgY29uc3QgYXJlYT1yb290LnF1ZXJ5U2VsZWN0b3IoJyNsaWZlLWFyZWEnKS52YWx1ZTsKICAgICAgY29uc3QgcGxhbj1hcmVhVGV4dFthcmVhXVtwcmltYXJ5XTsKCiAgICAgIGxldCBpbnRybzsKICAgICAgaWYob3JkZXJlZFswXVsxXT09PTApewogICAgICAgIGludHJvPSdObyBhcGFyZWNlIHVuIGJsb3F1ZW8gZnVlcnRlLiBUdSBtZWpvciBlc3RyYXRlZ2lhIGVzIHByZXZlbnRpdmE6IGNvbnNlcnZhciBlcXVpbGlicmlvIGVudHJlIGRlcHVyYWNpw7NuLCBhY3R1YWxpemFjacOzbiwgZGlyZWNjacOzbiB5IGNvbnN0YW5jaWEuJzsKICAgICAgfWVsc2UgaWYob3JkZXJlZFswXVsxXT09PW9yZGVyZWRbMV1bMV0pewogICAgICAgIGludHJvPSdUdXMgZG9zIG5lY2VzaWRhZGVzIHByaW5jaXBhbGVzIGVzdMOhbiBtdXkgcHLDs3hpbWFzOiAnK25hbWVzW3ByaW1hcnldKycgeSAnK25hbWVzW3NlY29uZGFyeV0rJy4gQ29udmllbmUgdHJhYmFqYXIgYW1iYXMsIHBlcm8gZW4gZXNlIG9yZGVuLic7CiAgICAgIH1lbHNlewogICAgICAgIGludHJvPSdFbCBwcmluY2lwYWwgY3VlbGxvIGRlIGJvdGVsbGEgYXBhcmVjZSBlbiBsYSBmdW5jacOzbiBkZSAnK3ZlcmJzW3ByaW1hcnldKycuIExhIHNlZ3VuZGEgdGVuc2nDs24gc2UgZW5jdWVudHJhIGVuICcrdmVyYnNbc2Vjb25kYXJ5XSsnLic7CiAgICAgIH0KCiAgICAgIHJvb3QucXVlcnlTZWxlY3RvcignW2RhdGEtcmVzdWx0LXRpdGxlXScpLnRleHRDb250ZW50PW5hbWVzW3ByaW1hcnldKycgZXMgYWhvcmEgdHUgcHVudG8gZGUgcGFsYW5jYSc7CiAgICAgIHJvb3QucXVlcnlTZWxlY3RvcignW2RhdGEtcmVzdWx0LWludHJvXScpLnRleHRDb250ZW50PWludHJvOwogICAgICByb290LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXN0ZXAxLXRpdGxlXScpLnRleHRDb250ZW50PXBsYW5bMF07CiAgICAgIHJvb3QucXVlcnlTZWxlY3RvcignW2RhdGEtc3RlcDFdJykudGV4dENvbnRlbnQ9cGxhblsxXTsKICAgICAgcm9vdC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1zdGVwMi10aXRsZV0nKS50ZXh0Q29udGVudD1wbGFuWzJdOwogICAgICByb290LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXN0ZXAyXScpLnRleHRDb250ZW50PXBsYW5bM107CiAgICAgIHJvb3QucXVlcnlTZWxlY3RvcignW2RhdGEtc3RlcDMtdGl0bGVdJykudGV4dENvbnRlbnQ9cGxhbls0XTsKICAgICAgcm9vdC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1zdGVwM10nKS50ZXh0Q29udGVudD1wbGFuWzVdOwoKICAgICAgY29uc3Qga2V5PXByaW1hcnkrJy0nK3NlY29uZGFyeTsKICAgICAgcm9vdC5xdWVyeVNlbGVjdG9yKCdbZGF0YS13YXJuaW5nXScpLnRleHRDb250ZW50PWNvbWJvV2FybmluZ3Nba2V5XSB8fCAnTm8gaW50ZW50ZXMgbWVqb3JhciBsYXMgY3VhdHJvIMOhcmVhcyBhbCBtaXNtbyB0aWVtcG8uIEVtcGllemEgcG9yIGVsIGN1ZWxsbyBkZSBib3RlbGxhIHByaW5jaXBhbCB5IHJldmlzYSBlbCBzZWd1bmRvIGN1YW5kbyBlbCBwcmltZXJvIGhheWEgY29tZW56YWRvIGEgbW92ZXJzZS4nOwogICAgICByZXN1bHQuY2xhc3NMaXN0LmFkZCgnc2hvdycpOwogICAgICByZXN1bHQuc2Nyb2xsSW50b1ZpZXcoe2JlaGF2aW9yOndpbmRvdy5tYXRjaE1lZGlhKCcocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2UpJykubWF0Y2hlcz8nYXV0byc6J3Ntb290aCcsYmxvY2s6J25lYXJlc3QnfSk7CiAgICB9KTsKCiAgICByb290LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXJlc2V0XScpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywoKT0+ewogICAgICByb290LnF1ZXJ5U2VsZWN0b3JBbGwoJy5zY2FsZSBpbnB1dCcpLmZvckVhY2goaT0+aS5jaGVja2VkPWZhbHNlKTsKICAgICAgcm9vdC5xdWVyeVNlbGVjdG9yKCcjbGlmZS1hcmVhJykuc2VsZWN0ZWRJbmRleD0wOwogICAgICByZXN1bHQuY2xhc3NMaXN0LnJlbW92ZSgnc2hvdycpOwogICAgfSk7CgogICAgcmVuZGVyUmVhZGluZygpOwogIH0pKCk7CiAgPC9zY3JpcHQ+Cjwvc2VjdGlvbj4= CLAVES ASTROLÓGICAS DE LA SEMANA Del 6 al 13 de septiembre Esta semana destacan los simultáneos cambio de signo de Mercurio y Venus el mismo día, el 10. Interesante punto de inflexión ♀ Venus entra en Escorpio Venus pasa de Libra (diplomacia, equilibrio, estética, negociación) a Escorpio (intensidad, intimidad, deseo, poder emocional y verdad psicológica). En términos simbólicos, pasamos de:  "¿Cómo conseguimos que esto funcione para los dos?" a  "¿Qué siento realmente y qué hay debajo de esto?" Las relaciones pueden volverse más magnéticas, pero también más exigentes.  Y ojo con los celos o la manipulación. ☿ Mercurio entra en Libra Mercurio en Virgo venía analizando, clasificando y corrigiendo. Al entrar en Libra, la mente busca perspectiva, diálogo y equilibrio. Es excelente para: negociar; escuchar al otro; mediar; escribir; revisar acuerdos; intentar comprender dos posiciones simultáneamente. Pero hay una sombra: pensar demasiado antes de decidir. Además, esta entrada de Mercurio en Libra produce una de las grandes activaciones del triángulo isósceles tratado precisamente en esta Astromembresía. Y además: Luna Nueva en Virgo, que señala una semana apropiado para revisar rutinas y hábitos, sobre todo en el ámbito del trabajo y la salud, así como en actividades cotidianas. A tener en cuenta que pequeños cambios pueden tener consecuencias enormes a largo plazo. ¡Feliz semana!

Este contenido es exclusivo para miembros

Suscríbete a Astromembresía y accede a meditaciones, lecturas, formaciones astrológicas y todo el contenido premium del blog.

Quiero ser miembro