Werden Sie VIP-Suchkunde und finden Sie Ihre Traumimmobilie

Die hohe Nachfrage nach Immobilien in der beliebten Rheinmetropole Köln sorgt dafür, dass Angebote schnell verkauft werden – kaum sehen Sie eine passende Immobilie, ist sie schon wieder weg. Dadurch gestaltet sich die Suche nach einem Eigenheim, das Ihren Vorstellungen voll und ganz entspricht, schwieriger und zeitaufwendiger als erwartet. Wir von INTERHOUSE sind uns dessen bewusst und bieten Ihnen als Interessent daher die Möglichkeit, sich bei uns kostenlos und unverbindlich als VIP-Suchkunde eintragen zu lassen. Legen Sie unkompliziert Kriterien für Ihre Immobiliensuche fest und erhalten Sie ohne großen Aufwand noch vor der Veröffentlichung auf Onlineplattformen eine Nachricht über geeignete Häuser und Wohnungen.

Google reCaptcha

Google reCaptcha wird derzeit blockiert!

Da Sie der Verwendung von Cookies nicht zugestimmt haben, wird der Service Google reCaptcha derzeit nicht ausgeführt. Wir verwenden diesen Service um uns vor Spam-Nachrichten zu schützen. Durch den untenstehenden Button können Sie der Verwendung von Google reCaptcha rückwirkend zustimmen. Alle wichtigen Informationen finden Sie in der Datenschutzerklärung von Google.

Inhalt laden

ICAgPGZvcm0gbWV0aG9kPSJwb3N0IiBpZD0ib25vZmZpY2UtZm9ybSIgY2xhc3M9InN1Y2hwcm9maWwtYW5sZWdlbiI+CgogICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJvb19mb3JtaWQiIHZhbHVlPSJTdWNocHJvZmlsIGFubGVnZW4iPgogICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJvb19mb3Jtbm8iIHZhbHVlPSIxIj4KPGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9Im9ub2ZmaWNlX25vbmNlIiBuYW1lPSJvbm9mZmljZV9ub25jZSIgdmFsdWU9Ijk0ZjlmYmVjMDIiIC8+CgoKCTxkaXYgY2xhc3M9IndwLXN0ZXAgMSI+CgkJPGRpdiBjbGFzcz0id3Atc3RlcC0taW4tdjIiPgoJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1wcm9ncmVzcyI+CgkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1wcm9ncmVzcy1iYXIiPjwvZGl2PgoKCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLXByb2dyZXNzLW51bSI+CgoJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLXByb2dyZXNzLXN0ZXAgYWN0aXZlIj4KCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tcHJvZ3Jlc3Mtc3RlcC0taWNvbiAiPjwvZGl2PgoJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1wcm9ncmVzcy1zdGVwLS1sYWJlbCI+VmVybWFya3R1bmdzYXJ0PC9kaXY+CgkJCQkJPC9kaXY+CgoJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLXByb2dyZXNzLXN0ZXAgIj4KCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tcHJvZ3Jlc3Mtc3RlcC0taWNvbiI+PC9kaXY+CgkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLXByb2dyZXNzLXN0ZXAtLWxhYmVsIj5JbW1vYmlsaWVuYXJ0PC9kaXY+CgkJCQkJPC9kaXY+CgoJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLXByb2dyZXNzLXN0ZXAgIj4KCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tcHJvZ3Jlc3Mtc3RlcC0taWNvbiI+PC9kaXY+CgkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLXByb2dyZXNzLXN0ZXAtLWxhYmVsIj5TdWNoZGV0YWlsczwvZGl2PgoJCQkJCTwvZGl2PgoKCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1wcm9ncmVzcy1zdGVwICI+CgkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLXByb2dyZXNzLXN0ZXAtLWljb24iPjwvZGl2PgoJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1wcm9ncmVzcy1zdGVwLS1sYWJlbCI+S29udGFrdGRhdGVuPC9kaXY+CgkJCQkJPC9kaXY+CgoJCQkJPC9kaXY+CgkKCQkJPC9kaXY+CgkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNudCI+CgkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1zdGVwcyI+CgkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tc3RlcCBhY3RpdmUgZm9ybVBhZ2UgaGlkZVJhZGlvIj4KCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tcm93Ij4KCQkJCgkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1jb2x1bW4yIj4KCQkJCQkJCQk8aW5wdXQgdHlwZT0icmFkaW8iIG5hbWU9InZlcm1hcmt0dW5nc2FydCIgdmFsdWU9ImthdWYiIGlkPSJrYXVmIiBoaWRkZW49InRydWUiPgoJCQkJCQkJCTxsYWJlbCBmb3I9ImthdWYiIGNsYXNzPSJ3cC1zdGVwLS1ib3giIG9uQ2xpY2s9ImRvTm90RGlzcGxheU1pZXRlKCkiPgoJCQkJCQkJCTxkaXYgY2xhc3M9ImxhYmVsUm93IHJhZGlvTGFiZWxOZXh0U3RlcCI+CgkJCQkJCQkJCTxkaXYgY2xhc3M9ImltYWdlTGFiZWwiPgoJCQkJCQkJCQk8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KCQkJCQkJCQkJPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KCQkJCQkJCQkJPHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiB2aWV3Qm94PSIwIDAgMzAwIDMwMCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3BhY2U9InByZXNlcnZlIiB4bWxuczpzZXJpZj0iaHR0cDovL3d3dy5zZXJpZi5jb20vIiBzdHlsZT0iZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEuNTsiPgoJCQkJCQkJCQkJPGcgaWQ9IkhhdXMiPgoJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0yOTQuMjc2LDI5NS4yNzZMNC43MjQsMjk1LjI3NiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni43NXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0yNjkuOTkyLDI5NS4yNzZMMjY5Ljk5MiwyMTkuNDYyIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJPGcgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwtMjQzLjE5NSwyLjg0MjE3ZS0xNCkiPgoJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMjY5Ljk5MiwyOTUuMjc2TDI2OS45OTIsMjE5LjQ2MiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni43NXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJCQk8ZyB0cmFuc2Zvcm09Im1hdHJpeCgxLC0wLjAwMDU3MTkxNiwtMC4wMDA1NzE5MTYsMS4xNjc2MywwLjE2ODQ0OCwtNDkuMzcyNSkiPgoJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMjE3LjQ3MywyOTQuMDg0TDIxNy44MzksMjAxLjM1NyIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6NS43NXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJCQk8ZyB0cmFuc2Zvcm09Im1hdHJpeCgxLC0wLjAwMDU3MTkxNiwtMC4wMDA1NzE5MTYsMS4xNjc2MywtMTM2LjQwNSwtNDkuMzcyNSkiPgoJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMjE3LjU4NSwyOTQuMDg0TDIxNy44MzksMjAxLjM1NyIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6NS43NXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJCQk8cGF0aCBkPSJNMTUwLDEzNy43NDFMMjQzLjEzNSwxOTkuNzI3IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJPGcgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsLTkzLjEzNTUsMzM3LjQ2OCkiPgoJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMTUwLDEzNy43NDFMMjQzLjEzNSwxOTkuNzI3IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJPC9nPgoJCQkJCQkJCQkJCTxnIHRyYW5zZm9ybT0ibWF0cml4KDAuODIxNDIyLDAsMCwwLjg2NDU4MiwyNi44MDg2LDM5Ljk4NTYpIj4KCQkJCQkJCQkJCQkJPHBhdGggZD0iTTE3My45NjYsMjk1LjI3NkwxNzMuODcyLDIyNS4yNjlMMTI1LjUwNiwyMjQuOTc5TDEyNC42NTEsMjk1LjI3NiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ny40MXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJCQk8cGF0aCBkPSJNMjE4Ljg0OCwyMTkuNDYyTDI4NC45NTcsMjE5LjQ2MkMyODQuOTU3LDIxOS40NjIgMjU1LjE5NSwxNTkuMjkgMjU1LjEyLDE1OS4yNjNDMjU1LjA0NSwxNTkuMjM2IDE4MS43MDQsMTU4LjU1NSAxODEuNzA0LDE1OC41NTUiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuNzVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQk8cGF0aCBkPSJNMjYuNTE0LDIxOS40NjJMMTUuMDI2LDIxOS40NjJMNDUuMDI5LDE2MC4zMTRMMTE1LjMyNCwxNjEuMDI1IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJPHBhdGggZD0iTTI2Ljc5NywyMTkuNDYyTDc4LjczLDIxOS40NjIiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuNzVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQk8ZyB0cmFuc2Zvcm09Im1hdHJpeCgxLjQ0MDMxLDAsMCwxLjgzOTIyLC02My4zOTA2LC0yMDMuOTExKSI+CgkJCQkJCQkJCQkJCTxyZWN0IHg9IjE0MS42MDUiIHk9IjIwOC45MjYiIHdpZHRoPSIxMy40OTMiIGhlaWdodD0iMTAuNTM2IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDozLjc4cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJPC9nPgoJCQkJCQkJCQkJCTxnIHRyYW5zZm9ybT0ibWF0cml4KDEuOTcyODYsMCwwLDIuNTI4MjIsLTIzOC44MjUsLTI4Ny43NjcpIj4KCQkJCQkJCQkJCQkJPHJlY3QgeD0iMTQxLjYwNSIgeT0iMjA4LjkyNiIgd2lkdGg9IjEzLjQ5MyIgaGVpZ2h0PSIxMC41MzYiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjIuNzZweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQk8L2c+CgkJCQkJCQkJCQkJPGcgdHJhbnNmb3JtPSJtYXRyaXgoMS45NzI4NiwwLDAsMi41MjgyMiwtNDguODI0OCwtMjg3Ljc2NykiPgoJCQkJCQkJCQkJCQk8cmVjdCB4PSIxNDEuNjA1IiB5PSIyMDguOTI2IiB3aWR0aD0iMTMuNDkzIiBoZWlnaHQ9IjEwLjUzNiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Mi43NnB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJPC9zdmc+CQkKCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWxhYmVsLWNudCI+CgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1jb2x1bW4tdGV4dCI+CgkJCQkJCQkJCQk8aDM+RWlnZW50dW08L2gzPgoJCQkJCQkJCQkJPHA+PHNwYW4+S29zdGVubG9zIHJlZ2lzdHJpZXJlbiB1bmQgZXhrbHVzaXZlIEFuZ2Vib3RlIGVyaGFsdGVuPC9zcGFuPjwvcD4KCQkJCQkJCQkJCTwvZGl2PgoJCQkJCQkJCQkKCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJPC9kaXY+PC9sYWJlbD4KCQkJCQkJCTwvZGl2PgoJCQkKCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbjIiPgoJCQkJCQkJCTxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0idmVybWFya3R1bmdzYXJ0IiB2YWx1ZT0ibWlldGUiIGlkPSJtaWV0ZSIgaGlkZGVuPSJ0cnVlIj4KCQkJCQkJCQk8bGFiZWwgZm9yPSJtaWV0ZSIgY2xhc3M9IndwLXN0ZXAtLWJveCIgb25DbGljaz0iZG9Ob3REaXNwbGF5S2F1ZlByZWlzKCkiPgoJCQkJCQkJCQk8ZGl2IGNsYXNzPSJsYWJlbFJvdyByYWRpb0xhYmVsTmV4dFN0ZXAiPgoJCQkJCQkJCQkJPGRpdiBjbGFzcz0iaW1hZ2VMYWJlbCI+CgkJCQkJCQkJCQk8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KCQkJCQkJCQkJCTwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CgkJCQkJCQkJCQk8c3ZnIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCAzMDAgMzAwIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHhtbG5zOnNlcmlmPSJodHRwOi8vd3d3LnNlcmlmLmNvbS8iIHN0eWxlPSJmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtzdHJva2UtbGluZWNhcDpyb3VuZDtzdHJva2UtbGluZWpvaW46cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MS41OyI+CgkJCQkJCQkJCQkJPGcgdHJhbnNmb3JtPSJtYXRyaXgoMC44Njc5NjgsMCwwLDAuODY3OTY4LDE2Ljk4MzcsMzQuODg1MykiPgoJCQkJCQkJCQkJCQk8ZyBpZD0iR3J1bmRyaXNzIj4KCQkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0xNS4wMjYsMTkyLjIxOUwxNS4wMjYsMzAwTDI4NC45NTcsMzAwTDI4NC45NTcsMTkxLjA1NyIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni43NXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCQkJPHBhdGggZD0iTTI4NC45NTcsMTUwTDI4NC45NTcsMTE0LjE4MkwxNS4wMjYsMTE0Ljc1OEwxNS4wMjYsMTUwIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMTYxLjI5NywxMTUuM0wxNjEuMjk3LDE3NC40NzJMMTYxLjI5NywxNTAuMDA3TDE4OS45NTEsMTUwLjAwNyIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni43NXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCQkJPHBhdGggZD0iTTIyMS45MiwxMTUuM0wyMjEuOTk2LDE1MC4wMDciIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuNzVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0yODQuOTU3LDIyMi40NzVMMjA0LjkyLDIyMi4wODNMMjIxLjg5NywyMjIuMTY2TDIyMS44OTcsMjU2LjI1MyIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni43NXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCQkJPHBhdGggZD0iTTE2MS4zNDksMjA1LjgwMkwxNjEuNzExLDMwMEwxNjEuNDEyLDIyMi4wODNMMTcyLjgyOSwyMjIuMDgzIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCQk8cGF0aCBkPSJNOTUuOTc4LDIyMi4wODNMMTA5Ljk2NCwyMjIuMDgzTDEwOS45NjQsMzAwIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCQk8cGF0aCBkPSJNNjQuMzEsMjIyLjA4M0wxNS4wMjYsMjIyLjA4MyIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni43NXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCQk8L2c+CgkJCQkJCQkJCQkJPC9nPgoJCQkJCQkJCQkJPC9zdmc+CQkJCQkJCQkJCQoJCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1sYWJlbC1jbnQiPgoJCQkJCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbi10ZXh0Ij4KCQkJCQkJCQkJCQk8aDM+TWlldG9iamVrdDwvaDM+CgkJCQkJCQkJCQkJPHA+PHNwYW4+UGVyc8O2bmxpY2hlbiBTdWNocHLDpGZlcmVuemVuIGhpbnRlcmxlZ2VuIHVuZCBBbmdlYm90ZSBlcmhhbHRlbi48L3NwYW4+PC9wPgoJCQkJCQkJCQkJCTwvZGl2PgoJCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJCTwvZGl2PgoJCQkJCQkJCTwvbGFiZWw+CgkJCQkJCQk8L2Rpdj4KCQkJCQkJPC9kaXY+CgkJCQkJPC9kaXY+CgkJCQoJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLXN0ZXAgZm9ybVBhZ2UgaGlkZVJhZGlvIj4KCQkJCQoJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1yb3ciPgoJCQkKCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbjQgY2hhbmdlQ2xhc3MiPgoJCQkJCQkJCTxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0ib2JqZWt0YXJ0IiB2YWx1ZT0id29obnVuZyIgZGF0YS12YWx1ZT0id29obnVuZyIgaWQ9IndvaG51bmciIGhpZGRlbj0idHJ1ZSI+CgkJCQkJCQkJPGxhYmVsIGZvcj0id29obnVuZyIgY2xhc3M9IndwLXN0ZXAtLWJveCI+CgkJCQkJCQkJCTxkaXYgY2xhc3M9ImxhYmVsUm93IHJhZGlvTGFiZWxOZXh0U3RlcCI+CgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpbWFnZUxhYmVsIj4KCQkJCQkJCQkJCTw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJubyI/PgoJCQkJCQkJCQkJPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KCQkJCQkJCQkJCTxzdmcgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDMwMCAzMDAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgeG1sbnM6c2VyaWY9Imh0dHA6Ly93d3cuc2VyaWYuY29tLyIgc3R5bGU9ImZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxLjU7Ij4KCQkJCQkJCQkJCQk8ZyB0cmFuc2Zvcm09Im1hdHJpeCgwLjg2Nzk2OCwwLDAsMC44Njc5NjgsMTYuOTgzNywzNC44ODUzKSI+CgkJCQkJCQkJCQkJCTxnIGlkPSJHcnVuZHJpc3MiPgoJCQkJCQkJCQkJCQkJPHBhdGggZD0iTTE1LjAyNiwxOTIuMjE5TDE1LjAyNiwzMDBMMjg0Ljk1NywzMDBMMjg0Ljk1NywxOTEuMDU3IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMjg0Ljk1NywxNTBMMjg0Ljk1NywxMTQuMTgyTDE1LjAyNiwxMTQuNzU4TDE1LjAyNiwxNTAiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuNzVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0xNjEuMjk3LDExNS4zTDE2MS4yOTcsMTc0LjQ3MkwxNjEuMjk3LDE1MC4wMDdMMTg5Ljk1MSwxNTAuMDA3IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMjIxLjkyLDExNS4zTDIyMS45OTYsMTUwLjAwNyIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni43NXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCQkJPHBhdGggZD0iTTI4NC45NTcsMjIyLjQ3NUwyMDQuOTIsMjIyLjA4M0wyMjEuODk3LDIyMi4xNjZMMjIxLjg5NywyNTYuMjUzIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMTYxLjM0OSwyMDUuODAyTDE2MS43MTEsMzAwTDE2MS40MTIsMjIyLjA4M0wxNzIuODI5LDIyMi4wODMiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuNzVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik05NS45NzgsMjIyLjA4M0wxMDkuOTY0LDIyMi4wODNMMTA5Ljk2NCwzMDAiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuNzVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik02NC4zMSwyMjIuMDgzTDE1LjAyNiwyMjIuMDgzIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJCQk8L2c+CgkJCQkJCQkJCQk8L3N2Zz4JCgkJCQkJCQkJCQk8L2Rpdj4KCQkJCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWxhYmVsLWNudCI+CgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tY29sdW1uLXRleHQiPgoJCQkJCQkJCQkJCTxoMz5Xb2hudW5nPC9oMz4KCQkJCQkJCQkJCQk8L2Rpdj4KCQkJCQkJCQkJCTwvZGl2PgoJCQkJCQkJCQk8L2Rpdj4KCQkJCQkJCQk8L2xhYmVsPgoJCQkJCQkJPC9kaXY+CgkJCQoJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tY29sdW1uNCBjaGFuZ2VDbGFzcyI+CgkJCQkJCQkJPGlucHV0IHR5cGU9InJhZGlvIiBuYW1lPSJvYmpla3RhcnQiIHZhbHVlPSJoYXVzIiBkYXRhLXZhbHVlPSJoYXVzIiBpZD0iaGF1cyIgaGlkZGVuPSJ0cnVlIj4KCQkJCQkJCQk8bGFiZWwgZm9yPSJoYXVzIiBjbGFzcz0id3Atc3RlcC0tYm94Ij4KCQkJCQkJCQkJPGRpdiBjbGFzcz0ibGFiZWxSb3cgcmFkaW9MYWJlbE5leHRTdGVwIj4KCQkJCQkJCQkJCTxkaXYgY2xhc3M9ImltYWdlTGFiZWwiPgoJCQkJCQkJCQkJPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CgkJCQkJCQkJCQk8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgoJCQkJCQkJCQkJPHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiB2aWV3Qm94PSIwIDAgMzAwIDMwMCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3BhY2U9InByZXNlcnZlIiB4bWxuczpzZXJpZj0iaHR0cDovL3d3dy5zZXJpZi5jb20vIiBzdHlsZT0iZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEuNTsiPgoJCQkJCQkJCQkJCTxnIGlkPSJIYXVzIj4KCQkJCQkJCQkJCQkJPHBhdGggZD0iTTI5NC4yNzYsMjk1LjI3Nkw0LjcyNCwyOTUuMjc2IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0yNjkuOTkyLDI5NS4yNzZMMjY5Ljk5MiwyMTkuNDYyIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTxnIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsLTI0My4xOTUsMi44NDIxN2UtMTQpIj4KCQkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0yNjkuOTkyLDI5NS4yNzZMMjY5Ljk5MiwyMTkuNDYyIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJCQkJPGcgdHJhbnNmb3JtPSJtYXRyaXgoMSwtMC4wMDA1NzE5MTYsLTAuMDAwNTcxOTE2LDEuMTY3NjMsMC4xNjg0NDgsLTQ5LjM3MjUpIj4KCQkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0yMTcuNDczLDI5NC4wODRMMjE3LjgzOSwyMDEuMzU3IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo1Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJCQkJPGcgdHJhbnNmb3JtPSJtYXRyaXgoMSwtMC4wMDA1NzE5MTYsLTAuMDAwNTcxOTE2LDEuMTY3NjMsLTEzNi40MDUsLTQ5LjM3MjUpIj4KCQkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0yMTcuNTg1LDI5NC4wODRMMjE3LjgzOSwyMDEuMzU3IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo1Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJCQkJPHBhdGggZD0iTTE1MCwxMzcuNzQxTDI0My4xMzUsMTk5LjcyNyIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni43NXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCQk8ZyB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwtOTMuMTM1NSwzMzcuNDY4KSI+CgkJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMTUwLDEzNy43NDFMMjQzLjEzNSwxOTkuNzI3IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJCQkJPGcgdHJhbnNmb3JtPSJtYXRyaXgoMC44MjE0MjIsMCwwLDAuODY0NTgyLDI2LjgwODYsMzkuOTg1NikiPgoJCQkJCQkJCQkJCQkJPHBhdGggZD0iTTE3My45NjYsMjk1LjI3NkwxNzMuODcyLDIyNS4yNjlMMTI1LjUwNiwyMjQuOTc5TDEyNC42NTEsMjk1LjI3NiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ny40MXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCQk8L2c+CgkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0yMTguODQ4LDIxOS40NjJMMjg0Ljk1NywyMTkuNDYyQzI4NC45NTcsMjE5LjQ2MiAyNTUuMTk1LDE1OS4yOSAyNTUuMTIsMTU5LjI2M0MyNTUuMDQ1LDE1OS4yMzYgMTgxLjcwNCwxNTguNTU1IDE4MS43MDQsMTU4LjU1NSIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni43NXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMjYuNTE0LDIxOS40NjJMMTUuMDI2LDIxOS40NjJMNDUuMDI5LDE2MC4zMTRMMTE1LjMyNCwxNjEuMDI1IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0yNi43OTcsMjE5LjQ2Mkw3OC43MywyMTkuNDYyIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTxnIHRyYW5zZm9ybT0ibWF0cml4KDEuNDQwMzEsMCwwLDEuODM5MjIsLTYzLjM5MDYsLTIwMy45MTEpIj4KCQkJCQkJCQkJCQkJCTxyZWN0IHg9IjE0MS42MDUiIHk9IjIwOC45MjYiIHdpZHRoPSIxMy40OTMiIGhlaWdodD0iMTAuNTM2IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDozLjc4cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJCQkJPGcgdHJhbnNmb3JtPSJtYXRyaXgoMS45NzI4NiwwLDAsMi41MjgyMiwtMjM4LjgyNSwtMjg3Ljc2NykiPgoJCQkJCQkJCQkJCQkJPHJlY3QgeD0iMTQxLjYwNSIgeT0iMjA4LjkyNiIgd2lkdGg9IjEzLjQ5MyIgaGVpZ2h0PSIxMC41MzYiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjIuNzZweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQkJPC9nPgoJCQkJCQkJCQkJCQk8ZyB0cmFuc2Zvcm09Im1hdHJpeCgxLjk3Mjg2LDAsMCwyLjUyODIyLC00OC44MjQ4LC0yODcuNzY3KSI+CgkJCQkJCQkJCQkJCQk8cmVjdCB4PSIxNDEuNjA1IiB5PSIyMDguOTI2IiB3aWR0aD0iMTMuNDkzIiBoZWlnaHQ9IjEwLjUzNiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Mi43NnB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCQk8L2c+CgkJCQkJCQkJCQkJPC9nPgoJCQkJCQkJCQkJPC9zdmc+CQkJCQkJCQoJCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1sYWJlbC1jbnQiPgoJCQkJCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbi10ZXh0Ij4KCQkJCQkJCQkJCQk8aDM+SGF1czwvaDM+CgkJCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJCQk8L2Rpdj4KCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJPC9sYWJlbD4KCQkJCQkJCTwvZGl2PgoKCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbjQgbWlldGVEb05vdERpc3BsYXkiPgoJCQkJCQkJCTxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0ib2JqZWt0YXJ0IiB2YWx1ZT0ic29uc3RpZ2UiIGRhdGEtdmFsdWU9InNvbnN0aWdlIiBpZD0ic29uc3RpZ2UiIGhpZGRlbj0idHJ1ZSI+CgkJCQkJCQkJPGxhYmVsIGZvcj0ic29uc3RpZ2UiIGNsYXNzPSJ3cC1zdGVwLS1ib3giPgoJCQkJCQkJCQk8ZGl2IGNsYXNzPSJsYWJlbFJvdyByYWRpb0xhYmVsTmV4dFN0ZXAiPgoJCQkJCQkJCQkJPGRpdiBjbGFzcz0iaW1hZ2VMYWJlbCI+CgkJCQkJCQkJCQk8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ibm8iPz4KCQkJCQkJCQkJCTwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CgkJCQkJCQkJCQk8c3ZnIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCAzMDAgMzAwIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHhtbG5zOnNlcmlmPSJodHRwOi8vd3d3LnNlcmlmLmNvbS8iIHN0eWxlPSJmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtzdHJva2UtbGluZWNhcDpyb3VuZDtzdHJva2UtbGluZWpvaW46cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MS41OyI+CgkJCQkJCQkJCQkJPGcgaWQ9Im1laHJmYW1pbGllbmhhdXMiPgoJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMjk1LjI3NiwyOTUuMjc2TDQuNzI0LDI5NS4yNzYiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuMjVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQkJPHBhdGggZD0iTTMwLjAyNiwxODUuNjEzTDMwLjAyNiwyOTUuMjc2IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2LjI1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTxnIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsNzMuMTk4MSwwKSI+PHBhdGggZD0iTTMwLjAyNiwxODUuNjEzTDMwLjAyNiwyOTUuMjc2IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2LjI1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+PC9nPgoJCQkJCQkJCQkJCQk8ZyB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLDE2My45NDQsMCkiPjxwYXRoIGQ9Ik0zMC4wMjYsMTg1LjYxM0wzMC4wMjYsMjk1LjI3NiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni4yNXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPjwvZz4KCQkJCQkJCQkJCQkJPGcgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwyMzQuNjU3LDApIj48cGF0aCBkPSJNMzAuMDI2LDE4NS42MTNMMzAuMDI2LDI5NS4yNzYiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuMjVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz48L2c+PHBhdGggZD0iTTEyOS40MDIsMjk1LjI3NkwxMjkuNDAyLDI0MC40NDRMMTY4LjQ1OSwyNDAuNDQ0TDE2OC40NTksMjk1LjI3NiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni4yNXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPjxyZWN0IHg9IjE0MS42MDUiIHk9IjIwOC45MjYiIHdpZHRoPSIxMy40OTMiIGhlaWdodD0iMTAuNTM2IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2LjI1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTxnIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsODIuNjM1MywwKSI+PHJlY3QgeD0iMTQxLjYwNSIgeT0iMjA4LjkyNiIgd2lkdGg9IjEzLjQ5MyIgaGVpZ2h0PSIxMC41MzYiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuMjVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz48L2c+CgkJCQkJCQkJCQkJCTxnIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsODIuNjM1MywzMS41MTg0KSI+PHJlY3QgeD0iMTQxLjYwNSIgeT0iMjA4LjkyNiIgd2lkdGg9IjEzLjQ5MyIgaGVpZ2h0PSIxMC41MzYiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuMjVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz48L2c+CgkJCQkJCQkJCQkJCTxnIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLDEsLTg0LjE5NTIsMzEuNTE4NCkiPjxyZWN0IHg9IjE0MS42MDUiIHk9IjIwOC45MjYiIHdpZHRoPSIxMy40OTMiIGhlaWdodD0iMTAuNTM2IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2LjI1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+PC9nPgoJCQkJCQkJCQkJCQk8ZyB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwxLC04NC4xOTUyLDApIj48cmVjdCB4PSIxNDEuNjA1IiB5PSIyMDguOTI2IiB3aWR0aD0iMTMuNDkzIiBoZWlnaHQ9IjEwLjUzNiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni4yNXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPjwvZz4KCQkJCQkJCQkJCQkJPHBhdGggZD0iTTE5NC4wNjYsMTg1LjYxM0MxNjQuMzA0LDE1My42MzkgMTM0LjAzLDE1My4zODcgMTAzLjI3OSwxODUuNjEzIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2LjI1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0xOTMuOTcsMTg1LjYxM0wyNjQuNzc4LDE4NS42MTMiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuMjVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQkJPGcgdHJhbnNmb3JtPSJtYXRyaXgoMC45OTcwMywwLDAsMSwtMTYzLjIxNywwKSI+CgkJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMTkzLjk3LDE4NS42MTNMMjY0Ljc3OCwxODUuNjEzIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2LjI2cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJCQkJPHBhdGggZD0iTTMwLjE3OCwxODUuNjEzTDQuNzI0LDE4NS42MTMiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuMjVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQkJPHBhdGggZD0iTTI2NC43NzgsMTg1LjYxM0wyOTUuMjc2LDE4NS42MTMiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuMjVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQkJPHBhdGggZD0iTTQuNzI0LDE4NS42MTNMNTcuNDEsMTAwLjQ0NiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni4yNXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCQk8ZyB0cmFuc2Zvcm09Im1hdHJpeCgtMSwwLDAsMSwzMDAsMCkiPgoJCQkJCQkJCQkJCQkJPHBhdGggZD0iTTQuNzI0LDE4NS42MTNMNTcuNDEsMTAwLjQ0NiIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni4yNXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCQk8L2c+CgkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0yNDIuNTksMTAwLjQ0Nkw1Ny40MSwxMDAuNDQ2IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2LjI1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJPC9nPgoJCQkJCQkJCQkJPC9zdmc+CQkJCQkJCQkJCQoJCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1sYWJlbC1jbnQiPgoJCQkJCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbi10ZXh0Ij4KCQkJCQkJCQkJCQk8aDM+TWVocmZhbWlsaWVuLTxicj5oYXVzPC9oMz4KCQkJCQkJCQkJCQk8L2Rpdj4KCQkJCQkJCQkJCTwvZGl2PgoJCQkJCQkJCQk8L2Rpdj4KCQkJCQkJCQk8L2xhYmVsPgoJCQkJCQkJPC9kaXY+CgoJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tY29sdW1uNCBtaWV0ZURvTm90RGlzcGxheSI+CgkJCQkJCQkJPGlucHV0IHR5cGU9InJhZGlvIiBuYW1lPSJvYmpla3RhcnQiIHZhbHVlPSJncnVuZHN0dWVjayIgZGF0YS12YWx1ZT0iZ3J1bmRzdHVlY2siIGlkPSJncnVuZHN0dWVjayIgaGlkZGVuPSJ0cnVlIj4KCQkJCQkJCQk8bGFiZWwgZm9yPSJncnVuZHN0dWVjayIgY2xhc3M9IndwLXN0ZXAtLWJveCIgb25DbGljaz0ia2F1ZkRvTm90RGlzcGxheTIoKSI+CgkJCQkJCQkJCTxkaXYgY2xhc3M9ImxhYmVsUm93IHJhZGlvTGFiZWxOZXh0U3RlcCI+CgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpbWFnZUxhYmVsIj4KCQkJCQkJCQkJCTw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJubyI/PgoJCQkJCQkJCQkJPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KCQkJCQkJCQkJCTxzdmcgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDMwMCAzMDAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgeG1sbnM6c2VyaWY9Imh0dHA6Ly93d3cuc2VyaWYuY29tLyIgc3R5bGU9ImZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxLjU7Ij4KCQkJCQkJCQkJCQk8ZyB0cmFuc2Zvcm09Im1hdHJpeCgwLjg2Nzk2OCwwLDAsMC44Njc5NjgsMTYuOTgzNywzNC44ODUzKSI+CgkJCQkJCQkJCQkJCTxnIGlkPSJHcnVuZHJpc3MiPgoJCQkJCQkJCQkJCQkJPHBhdGggZD0iTTE1LjAyNiwxOTIuMjE5TDE1LjAyNiwzMDBMMjg0Ljk1NywzMDBMMjg0Ljk1NywxOTEuMDU3IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMjg0Ljk1NywxNTBMMjg0Ljk1NywxMTQuMTgyTDE1LjAyNiwxMTQuNzU4TDE1LjAyNiwxNTAiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuNzVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik0xNjEuMjk3LDExNS4zTDE2MS4yOTcsMTc0LjQ3MkwxNjEuMjk3LDE1MC4wMDdMMTg5Ljk1MSwxNTAuMDA3IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMjIxLjkyLDExNS4zTDIyMS45OTYsMTUwLjAwNyIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6I2RkZDtzdHJva2Utd2lkdGg6Ni43NXB4OyIgY2xhc3M9ImltYWdlTGFiZWxDb2xvciIvPgoJCQkJCQkJCQkJCQkJPHBhdGggZD0iTTI4NC45NTcsMjIyLjQ3NUwyMDQuOTIsMjIyLjA4M0wyMjEuODk3LDIyMi4xNjZMMjIxLjg5NywyNTYuMjUzIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCQk8cGF0aCBkPSJNMTYxLjM0OSwyMDUuODAyTDE2MS43MTEsMzAwTDE2MS40MTIsMjIyLjA4M0wxNzIuODI5LDIyMi4wODMiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuNzVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik05NS45NzgsMjIyLjA4M0wxMDkuOTY0LDIyMi4wODNMMTA5Ljk2NCwzMDAiIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlOiNkZGQ7c3Ryb2tlLXdpZHRoOjYuNzVweDsiIGNsYXNzPSJpbWFnZUxhYmVsQ29sb3IiLz4KCQkJCQkJCQkJCQkJCTxwYXRoIGQ9Ik02NC4zMSwyMjIuMDgzTDE1LjAyNiwyMjIuMDgzIiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojZGRkO3N0cm9rZS13aWR0aDo2Ljc1cHg7IiBjbGFzcz0iaW1hZ2VMYWJlbENvbG9yIi8+CgkJCQkJCQkJCQkJCTwvZz4KCQkJCQkJCQkJCQk8L2c+CgkJCQkJCQkJCQk8L3N2Zz4KCQkJCQkJCQkJCQoJCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1sYWJlbC1jbnQiPgoJCQkJCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbi10ZXh0Ij4KCQkJCQkJCQkJCQk8aDM+R3J1bmRzdMO8Y2s8L2gzPgoJCQkJCQkJCQkJCTwvZGl2PgoJCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJCTwvZGl2PgoJCQkJCQkJCTwvbGFiZWw+CgkJCQkJCQk8L2Rpdj4KCQkJCQkJPC9kaXY+CgkJCQkJPC9kaXY+CgoJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLXN0ZXAgZm9ybVBhZ2UgaGlkZVJhZGlvIj4KCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tcm93Ij4KCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbjEtdjIgbWlldGVEb05vdERpc3BsYXkiPgoJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tZG91YmxlLXJhbmdlIiBkYXRhLWFycm93PSIg4oKsIj4KCQkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1kb3VibGUtcmFuZ2Utcm93Ij4JCgkJCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWRvdWJsZS1yYW5nZS1sYWJlbCI+S2F1ZnByZWlzPC9kaXY+CgkJCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLXJhbmdlcyI+CgkJCQkJCQkJCQk8c3BhbiBjbGFzcz0id3Atc3RlcC0tcmFuZ2UtbWluIj41MDAwMDwvc3Bhbj4KCQkJCQkJCQkJCTxzcGFuPiAmZGFzaDsgPC9zcGFuPgoJCQkJCQkJCQkJPHNwYW4gY2xhc3M9IndwLXN0ZXAtLXJhbmdlLW1heCI+NTAwMDAwMDwvc3Bhbj4KCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tZG91YmxlLXJhbmdlLXRyYWNrIj48L2Rpdj4KCQkJCQkJCQk8aW5wdXQgY2xhc3M9IndwLXN0ZXAtLWlucHV0LW1pbiIgdHlwZT0icmFuZ2UiIGRhdGEtdmFsdWU9IjgwMDAwMCIgdmFsdWU9IjgwMDAwMCIgbWluPSI1MDAwMCIgbWF4PSI1MDAwMDAwIiBzdGVwPSIxMDAwIiBuYW1lPSJrYXVmcHJlaXNfX3ZvbiIgaWQ9ImthdWZwcmVpc19fdm9uIiBvbmlucHV0PSJzbGlkZSh0aGlzLCBgbWluYCkiPgoJCQkJCQkJCTxpbnB1dCBjbGFzcz0id3Atc3RlcC0taW5wdXQtbWF4IiB0eXBlPSJyYW5nZSIgZGF0YS12YWx1ZT0iMTIwMDAwMCIgdmFsdWU9IjEyMDAwMDAiIG1pbj0iNTAwMDAiIG1heD0iNTAwMDAwMCIgc3RlcD0iMTAwMCIgbmFtZT0ia2F1ZnByZWlzX19iaXMiIGlkPSJrYXVmcHJlaXNfX2JpcyIgb25pbnB1dD0ic2xpZGUodGhpcywgYG1heGApIj4KCQkJCQkJCTwvZGl2PgoJCQkJCQk8L2Rpdj4KCQkJCQkJCgkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbjEtdjIga2F1ZkRvTm90RGlzcGxheSBrYXVmRG9Ob3REaXNwbGF5MiI+CgkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1kb3VibGUtcmFuZ2UiIGRhdGEtYXJyb3c9IiDigqwiPgoJCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWRvdWJsZS1yYW5nZS1yb3ciPgkKCQkJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tZG91YmxlLXJhbmdlLWxhYmVsIj5LYWx0bWlldGU8L2Rpdj4KCQkJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tcmFuZ2VzIj4KCQkJCQkJCQkJCTxzcGFuIGNsYXNzPSJ3cC1zdGVwLS1yYW5nZS1taW4iPjA8L3NwYW4+CgkJCQkJCQkJCQk8c3Bhbj4gJmRhc2g7IDwvc3Bhbj4KCQkJCQkJCQkJCTxzcGFuIGNsYXNzPSJ3cC1zdGVwLS1yYW5nZS1tYXgiPjUwMDA8L3NwYW4+CgkJCQkJCQkJCTwvZGl2PgoJCQkJCQkJCTwvZGl2PgoJCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWRvdWJsZS1yYW5nZS10cmFjayI+PC9kaXY+CgkJCQkJCQkJPGlucHV0IGNsYXNzPSJ3cC1zdGVwLS1pbnB1dC1taW4iIHR5cGU9InJhbmdlIiBkYXRhLXZhbHVlPSI1MDAiIHZhbHVlPSI1MDAiIG1pbj0iMCIgbWF4PSI1MDAwIiBzdGVwPSIxMDAiIG5hbWU9ImthbHRtaWV0ZV9fdm9uIiBpZD0ia2FsdG1pZXRlX192b24iIG9uaW5wdXQ9InNsaWRlKHRoaXMsIGBtaW5gKSI+CgkJCQkJCQkJPGlucHV0IGNsYXNzPSJ3cC1zdGVwLS1pbnB1dC1tYXgiIHR5cGU9InJhbmdlIiBkYXRhLXZhbHVlPSIxMjAwIiB2YWx1ZT0iMTIwMCIgbWluPSIwIiBtYXg9IjUwMDAiIHN0ZXA9IjEwMCIgbmFtZT0ia2FsdG1pZXRlX19iaXMiIGlkPSJrYWx0bWlldGVfX2JpcyIgb25pbnB1dD0ic2xpZGUodGhpcywgYG1heGApIj4KCQkJCQkJCTwvZGl2PgoJCQkJCQk8L2Rpdj4KCQkJCQkJCgkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbjEtdjIga2F1ZkRvTm90RGlzcGxheTIiPgoJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tZG91YmxlLXJhbmdlIiBkYXRhLWFycm93PSIgbTxzdXA+Mjwvc3VwPiI+CgkJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tZG91YmxlLXJhbmdlLXJvdyI+CQoJCQkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1kb3VibGUtcmFuZ2UtbGFiZWwiPldvaG5mbMOkY2hlPC9kaXY+CgkJCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLXJhbmdlcyI+CQoJCQkJCQkJCQkJPHNwYW4gY2xhc3M9IndwLXN0ZXAtLXJhbmdlLW1pbiI+MTA8L3NwYW4+CgkJCQkJCQkJCQk8c3Bhbj4gJmRhc2g7IDwvc3Bhbj4KCQkJCQkJCQkJCTxzcGFuIGNsYXNzPSJ3cC1zdGVwLS1yYW5nZS1tYXgiPjEwMDA8L3NwYW4+CgkJCQkJCQkJCTwvZGl2PgoJCQkJCQkJCTwvZGl2PgoJCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWRvdWJsZS1yYW5nZS10cmFjayI+PC9kaXY+CgkJCQkJCQkJPGlucHV0IGNsYXNzPSJ3cC1zdGVwLS1pbnB1dC1taW4iIHR5cGU9InJhbmdlIiBkYXRhLXZhbHVlPSIxMzAiIHZhbHVlPSIxMzAiIG1pbj0iMTAiIG1heD0iMTAwMCIgc3RlcD0iMTAiIG5hbWU9IndvaG5mbGFlY2hlX192b24iIGlkPSJ3b2huZmxhZWNoZV9fdm9uIiBvbmlucHV0PSJzbGlkZSh0aGlzLCBgbWluYCkiPgoJCQkJCQkJCTxpbnB1dCBjbGFzcz0id3Atc3RlcC0taW5wdXQtbWF4IiB0eXBlPSJyYW5nZSIgZGF0YS12YWx1ZT0iMjIwIiB2YWx1ZT0iMjIwIiBtaW49IjEwIiBtYXg9IjEwMDAiIHN0ZXA9IjEwIiBuYW1lPSJ3b2huZmxhZWNoZV9fYmlzIiBpZD0id29obmZsYWVjaGVfX2JpcyIgb25pbnB1dD0ic2xpZGUodGhpcywgYG1heGApIj4KCQkJCQkJCTwvZGl2PgoJCQkJCQk8L2Rpdj4KCQkJCQkJCgkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbjEtdjIga2F1ZkRvTm90RGlzcGxheTIiPgoJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tZG91YmxlLXJhbmdlIiBkYXRhLWFycm93PSIiPgoJCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWRvdWJsZS1yYW5nZS1yb3ciPgkKCQkJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tZG91YmxlLXJhbmdlLWxhYmVsIj5aaW1tZXI8L2Rpdj4KCQkJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tcmFuZ2VzIj4KCQkJCQkJCQkJCTxzcGFuIGNsYXNzPSJ3cC1zdGVwLS1yYW5nZS1taW4iPjE8L3NwYW4+CgkJCQkJCQkJCQk8c3Bhbj4gJmRhc2g7IDwvc3Bhbj4KCQkJCQkJCQkJCTxzcGFuIGNsYXNzPSJ3cC1zdGVwLS1yYW5nZS1tYXgiPjIwPC9zcGFuPgoJCQkJCQkJCQk8L2Rpdj4KCQkJCQkJCQk8L2Rpdj4KCQkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1kb3VibGUtcmFuZ2UtdHJhY2siPjwvZGl2PgoJCQkJCQkJCTxpbnB1dCBjbGFzcz0id3Atc3RlcC0taW5wdXQtbWluIiB0eXBlPSJyYW5nZSIgZGF0YS12YWx1ZT0iMiIgdmFsdWU9IjIiIG1pbj0iMCIgbWF4PSIyMCIgc3RlcD0iMSIgbmFtZT0iYW56YWhsX3ppbW1lcl9fdm9uIiBpZD0iYW56YWhsX3ppbW1lcl9fdm9uIiBvbmlucHV0PSJzbGlkZSh0aGlzLCBgbWluYCkiPgoJCQkJCQkJCTxpbnB1dCBjbGFzcz0id3Atc3RlcC0taW5wdXQtbWF4IiB0eXBlPSJyYW5nZSIgZGF0YS12YWx1ZT0iNSIgdmFsdWU9IjUiIG1pbj0iMCIgbWF4PSIyMCIgc3RlcD0iMSIgbmFtZT0iYW56YWhsX3ppbW1lcl9fYmlzIiBpZD0iYW56YWhsX3ppbW1lcl9fYmlzIiBvbmlucHV0PSJzbGlkZSh0aGlzLCBgbWF4YCkiPgoJCQkJCQkJPC9kaXY+CgkJCQkJCTwvZGl2PgoKCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tY29sdW1uTWF4Ij4KCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tY29sdW1uMjAiPgoJCQkJCQkJPGxhYmVsIGZvcj0icmFuZ2VfcGx6IiBjbGFzcz0id3Atc3RlcC0tY29sdW1uTWF4LWxhYmVsIj5QTFo6PC9sYWJlbD4KCQkJCQkJCTxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJyYW5nZV9wbHoiIGlkPSJyYW5nZV9wbHoiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJQTFo6ICoiPgkJCgkJCQkJCTwvZGl2PgoKCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tY29sdW1uODAiPgoJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tZG91YmxlLXJhbmdlIHdwLXN0ZXAtLWRvdWJsZS1yYW5nZS12MyB3cC1zdGVwLS1zaW5nbGUtcmFuZ2UiIGRhdGEtYXJyb3c9ImttIj4KCQkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1kb3VibGUtcmFuZ2Utcm93Ij4KCQkJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tZG91YmxlLXJhbmdlLWxhYmVsIj5VbWtyZWlzIChrbSk6PC9kaXY+CQoJCQkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1yYW5nZXMiPgoJCQkJCQkJCQkJPHNwYW4gY2xhc3M9IndwLXN0ZXAtLXJhbmdlIj4xMDwvc3Bhbj4KCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tZG91YmxlLXJhbmdlLXRyYWNrIj48L2Rpdj4KCQkJCQkJCQk8aW5wdXQgY2xhc3M9IndwLXN0ZXAtLWlucHV0IiBuYW1lPSJyYW5nZSIgdHlwZT0icmFuZ2UiIHN0ZXA9IjUiIG1pbj0iNSIgbWF4PSIyNSIgdmFsdWU9IjEwIiBvbmlucHV0PSJzbGlkZVNpbmdsZSh0aGlzKSI+CgkJCQkJCQk8L2Rpdj4KCQkJCQkJPC9kaXY+CgkJCQkJCTwvZGl2PgoKCQkJCQkJPC9kaXY+CgkJCQkJPC9kaXY+CgoJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLXN0ZXAgZm9ybVBhZ2UgaGlkZVJhZGlvIj4KCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tcm93IGNvbnRhY3Rmb3JtIj4KCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbjEtdjIiPgoJCQkJCQkJCTxsYWJlbCBjbGFzcz0id3Atc3RlcC0tY29sdW1uMS1sYWJlbCIgc3R5bGU9InBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7Ij5JaHJlIEtvbnRha3RkYXRlbjwvbGFiZWw+CgkJCQkJCQk8L2Rpdj4KCgkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1jb2x1bW4yLXYyIj4JCQkKCQkJCQkJCQk8c2VsZWN0IGNsYXNzPSJzZWxlY3QyIiBuYW1lPSJBbnJlZGUiPgoJCQkJCQkJCQk8b3B0aW9uIHZhbHVlPSIiIGRhdGEtc2VsZWN0Mi1pZD0iMyI+QW5yZWRlIGF1c3fDpGhsZW48L29wdGlvbj4KCQkJCQkJCQkJPG9wdGlvbiB2YWx1ZT0iSGVyciI+SGVycjwvb3B0aW9uPgoJCQkJCQkJCQk8b3B0aW9uIHZhbHVlPSJGcmF1Ij5GcmF1PC9vcHRpb24+CgkJCQkJCQkJCTxvcHRpb24gdmFsdWU9ImluZF9TY2hsXzMwOTMiPkRpdmVyczwvb3B0aW9uPgoJCQkJCQkJCTwvc2VsZWN0PgkJCQoJCQkJCQkJPC9kaXY+CgoJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tY29sdW1uMi12MiI+CgkJCQkJCQkJPGlucHV0IHR5cGU9InRleHQiIG5hbWU9IlZvcm5hbWUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJWb3JuYW1lICoiIHJlcXVpcmVkPSIiPgkJCQkKCQkJCQkJCTwvZGl2PgoKCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbjItdjIiPgoJCQkJCQkJCTxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJOYW1lIiB2YWx1ZT0iIiBwbGFjZWhvbGRlcj0iTmFjaG5hbWUgKiIgcmVxdWlyZWQ9IiI+CQkJCQoJCQkJCQkJPC9kaXY+CgoJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tY29sdW1uMi12MiI+CgkJCQkJCQkJPGlucHV0IHR5cGU9InRleHQiIG5hbWU9IlRlbGVmb24xIiB2YWx1ZT0iIiBwbGFjZWhvbGRlcj0iVGVsZWZvbm51bW1lciAqIiByZXF1aXJlZD0iIj4JCQkJCgkJCQkJCQk8L2Rpdj4KCgkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1jb2x1bW4yLXYyIj4KCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iRW1haWwiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFLU1haWwgQWRyZXNzZSAqIiByZXF1aXJlZD0iIj4JCQkJCgkJCQkJCQk8L2Rpdj4KCgkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1jb2x1bW4yLXYyIj4KCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iU3RyYXNzZSIgdmFsdWU9IiIgcGxhY2Vob2xkZXI9IlN0cmHDn2UsIEhhdXNudW1tZXIiIHJlcXVpcmVkPSIiPgkJCQkKCQkJCQkJCTwvZGl2PgoKCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbjItdjIiPgoJCQkJCQkJCTxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJQbHoiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJQTFoiIHJlcXVpcmVkPSIiPgkJCQoJCQkJCQkJPC9kaXY+CgoJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tY29sdW1uMi12MiI+CgkJCQkJCQkJPGlucHV0IHR5cGU9InRleHQiIG5hbWU9Ik9ydCIgdmFsdWU9IiIgcGxhY2Vob2xkZXI9Ik9ydCIgcmVxdWlyZWQ9IiI+CgkJCQkJCQk8L2Rpdj4KCgkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1jb2x1bW4xLXYyIEhlcmt1bmZ0S29udGFrdCI+CQkJCQkKCQkJCQkJCQk8aW5wdXQgbmFtZT0iSGVya3VuZnRLb250YWt0IiB2YWx1ZT0id2Vic2VpdGVfc3lzdGVtIiBoaWRkZW4+CQkJCgkJCQkJCQk8L2Rpdj4KCgkJCQkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1jb2x1bW4xLXYyIEtvbnRha3RhcnQiPgkJCQkJCgkJCQkJCQkJPGlucHV0IGlkPSJLb250YWt0YXJ0IiBuYW1lPSJBcnREYXRlbiIgdmFsdWU9IiIgaGlkZGVuPgkJCQoJCQkJCQkJPC9kaXY+CgoJCQkJCQkJPGRpdiBjbGFzcz0id3Atc3RlcC0tY29sdW1uMS12MiBkc2d2byI+CgkJCQkJCQkJPGRpdiBjbGFzcz0iZGF0YS1jaGVja2JveCI+CQoJCQkJCQkJCQk8aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJkYXRlbnNjaHV0eiIgbmFtZT0iRFNHVk9TdGF0dXMiIHZhbHVlPSJzcGVpY2hlcnVuZ3p1Z2VzdGltbXQiIHJlcXVpcmVkPSIiPgkKCQkJCQkJCQkJPGxhYmVsIGZvcj0iZGF0ZW5zY2h1dHoiPkljaCBoYWJlIGRpZSA8YSBocmVmPSIvcHJpdmFjeS1wb2xpY3kvIj5EYXRlbnNjaHV0emVya2zDpHJ1bmc8L2E+IHp1ciBLZW5udG5pcyBnZW5vbW1lbi4gSWNoIHN0aW1tZSB6dSwgZGFzcyBtZWluZSBBbmdhYmVuIHVuZCBEYXRlbiB6dXIgQmVhbnR3b3J0dW5nIG1laW5lciBBbmZyYWdlIGVsZWt0cm9uaXNjaCBlcmhvYmVuIHVuZCBnZXNwZWljaGVydCB3ZXJkZW4uIEhpbndlaXM6IFNpZSBrw7ZubmVuIElocmUgRWlud2lsbGlndW5nIGplZGVyemVpdCB3aWRlcnJ1ZmVuLiAqPC9sYWJlbD4KCQkJCQkJCQk8L2Rpdj4KCQkJCQkJCTwvZGl2PgoKCQkJCQkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWNvbHVtbjEtdjIga29udGFrdENoZWNrYm94Ij4KCQkJCQkJCQk8ZGl2IGNsYXNzPSJ0ZWwtY2hlY2tib3giPgoJCQkJCQkJCQk8aW5wdXQgaWQ9ImtvbnRha2F1Zm5haG1lIiB0eXBlPSJjaGVja2JveCIgbmFtZT0iUnVlY2tydWZfYWt6ZXB0aWVydCIgdmFsdWU9InkiIHJlcXVpcmVkPSIiPgkKCQkJCQkJCQkJPGxhYmVsIGZvcj0ia29udGFrYXVmbmFobWUiPkljaCBiaW4gbWl0IGVpbmVyIEtvbnRha3RhdWZuYWhtZSBwZXIgTWFpbCB1bmQvb2RlciBwZXIgVGVsZWZvbiBiZXrDvGdsaWNoIG1laW5lciBBbmZyYWdlIGVpbnZlcnN0YW5kZW4uKjwvbGFiZWw+CQoJCQkJCQkJCTwvZGl2PgoJCQkJCQkJPC9kaXY+CgkJCQkJCTwvZGl2PgoJCQkJCTwvZGl2PgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1zdGVwLWVycm9yIj48L2Rpdj4KCQkJPC9kaXY+CgkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWJ1dHRvbnMgaW5hY3RpdmUiPgoJCgkJCTxkaXYgY2xhc3M9IndwLXN0ZXAtLWJ1dHRvbnMtLXByZXYiIHRpdGxlPSJWb3JoZXJpZ2VyIFNjaHJpdHQiIGFsdD0icHJldmlvdWVzIHN0ZXAgYnRuIj5Wb3JoZXJpZ2VyIFNjaHJpdHQ8L2Rpdj48ZGl2IGNsYXNzPSJ3cC1zdGVwLS1idXR0b25zLS1zZW5kIiB0aXRsZT0iRGF0ZW4gc2VuZGVuIiBhbHQ9InNlbmQgZGF0YSBidG4iPgo8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iQWJzZW5kZW4iPgoKPC9kaXY+CiAgIAoJCQk8ZGl2IGNsYXNzPSJ3cC1zdGVwLS1idXR0b25zLS1uZXh0IiB0aXRsZT0iTsOkY2hzdGVyIFNjaHJpdHQiIGFsdD0ibmV4dCBzdGVwIGJ0biI+TsOkY2hzdGVyIFNjaHJpdHQ8L2Rpdj4KCQkJCgkJPC9kaXY+Cgk8L2Rpdj4KCTxzY3JpcHQ+CgoKCWZ1bmN0aW9uIGRvTm90RGlzcGxheUthdWZQcmVpcygpIHsKCQlsZXQgbWlldFByZWlzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLm1pZXRlRG9Ob3REaXNwbGF5Iik7CgkJbGV0IGthdWZQcmVpcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5jaGFuZ2VDbGFzcyIpOwoJCWxldCBrb250YWt0YXJ0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIktvbnRha3RhcnQiKTsKCQlsZXQgbWlldFByZWlzVjIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIua2F1ZkRvTm90RGlzcGxheSIpOwoKCQkKCQlpZihrb250YWt0YXJ0KSB7CgkJCWtvbnRha3RhcnQuc2V0QXR0cmlidXRlKCJ2YWx1ZSIsICJJbnRlcmVzc2VudCBNaWV0ZSIpOwoJCX0KCQkJCgkJaWYobWlldFByZWlzVjIgJiYgbWlldFByZWlzVjIubGVuZ3RoPiAwKSB7CgkJCW1pZXRQcmVpc1YyLmZvckVhY2goaXRlbSA9PiB7CgkJCQlpdGVtLnJlbW92ZUF0dHJpYnV0ZSgiaGlkZGVuIik7CgkJCQllbmFibGVJbnB1dHMoaXRlbSk7CgkJCX0pOwoJCX0KCQkKCgkJaWYobWlldFByZWlzICYmIG1pZXRQcmVpcy5sZW5ndGg+IDApIHsKCQkJbWlldFByZWlzLmZvckVhY2goaXRlbSA9PiB7CgkJCQlpdGVtLmhpZGRlbiA9ICJ0cnVlIjsKCQkJCWRpc2FibGVJbnB1dHMoaXRlbSk7CgkJCX0pOwoJCX0KCgkJaWYoa2F1ZlByZWlzICYmIGthdWZQcmVpcy5sZW5ndGg+IDApIHsKCQkJa2F1ZlByZWlzLmZvckVhY2goaXRlbSA9PiB7CgkJCQlpdGVtLmNsYXNzTmFtZSA9ICJ3cC1zdGVwLS1jb2x1bW4yIGNoYW5nZUNsYXNzIjsKCQkJfSk7CgkJfQoJfQoKCWZ1bmN0aW9uIGRvTm90RGlzcGxheU1pZXRlKCkgewoJCWxldCBtaWV0UHJlaXNWMiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5rYXVmRG9Ob3REaXNwbGF5Iik7CgkJbGV0IGtvbnRha3RhcnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiS29udGFrdGFydCIpOwoJCWxldCBtaWV0UHJlaXMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIubWlldGVEb05vdERpc3BsYXkiKTsKCQlsZXQga2F1ZlByZWlzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLmNoYW5nZUNsYXNzIik7CgkJCgkJaWYoa29udGFrdGFydCkgewoJCQlrb250YWt0YXJ0LnNldEF0dHJpYnV0ZSgidmFsdWUiLCAiSW50ZXJlc3NlbnQgS2F1ZiIpOwoJCX0KCQlpZihtaWV0UHJlaXNWMiAmJiBtaWV0UHJlaXNWMi5sZW5ndGg+IDApIHsKCQkJbWlldFByZWlzVjIuZm9yRWFjaChpdGVtID0+IHsKCQkJCWl0ZW0uaGlkZGVuID0gInRydWUiOwoJCQkJZGlzYWJsZUlucHV0cyhpdGVtKTsKCQkJfSk7CgkJfQoKCQlpZihtaWV0UHJlaXMgJiYgbWlldFByZWlzLmxlbmd0aD4gMCkgewoJCQltaWV0UHJlaXMuZm9yRWFjaChpdGVtID0+IHsKCQkJCWl0ZW0ucmVtb3ZlQXR0cmlidXRlKCJoaWRkZW4iKTsKCQkJCWVuYWJsZUlucHV0cyhpdGVtKTsKCQkJfSk7CgkJfQoKCQlpZihrYXVmUHJlaXMgJiYga2F1ZlByZWlzLmxlbmd0aD4gMCkgewoJCQlrYXVmUHJlaXMuZm9yRWFjaChpdGVtID0+IHsKCQkJCWl0ZW0uY2xhc3NOYW1lID0gIndwLXN0ZXAtLWNvbHVtbjQgY2hhbmdlQ2xhc3MiOwoJCQl9KTsKCQl9Cgl9CgoJZnVuY3Rpb24ga2F1ZkRvTm90RGlzcGxheTIoKSB7CgkJbGV0IG1pZXRQcmVpc1YyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLmthdWZEb05vdERpc3BsYXkyIik7CgkJbGV0IG1pZXRQcmVpcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5taWV0ZURvTm90RGlzcGxheSIpOwoJCQoJCgkJaWYobWlldFByZWlzVjIgJiYgbWlldFByZWlzVjIubGVuZ3RoPiAwKSB7CgkJCW1pZXRQcmVpc1YyLmZvckVhY2goaXRlbSA9PiB7CgkJCQlpdGVtLmhpZGRlbiA9ICJ0cnVlIjsKCQkJCWRpc2FibGVJbnB1dHMoaXRlbSk7CgkJCX0pOwoJCX0KCgkJaWYobWlldFByZWlzICYmIG1pZXRQcmVpcy5sZW5ndGg+IDApIHsKCQkJbWlldFByZWlzLmZvckVhY2goaXRlbSA9PiB7CgkJCQlpdGVtLnJlbW92ZUF0dHJpYnV0ZSgiaGlkZGVuIik7CgkJCQllbmFibGVJbnB1dHMoaXRlbSk7CgkJCX0pOwoJCX0KCX0KCQoJZnVuY3Rpb24gZGlzYWJsZUlucHV0cyh2YWx1ZSkgewoJCWxldCBpbnB1dHMgPSB2YWx1ZS5xdWVyeVNlbGVjdG9yQWxsKGBpbnB1dGApOwoJCQoJCWlmKGlucHV0cyAmJiBpbnB1dHMubGVuZ3RoID4gMCl7CgkJCWlucHV0cy5mb3JFYWNoKGl0ZW0gPT4gewoJCQkJaXRlbS5zZXRBdHRyaWJ1dGUoInZhbHVlIiwgIiIpOwoJCQkJaXRlbS5zZXRBdHRyaWJ1dGUoImRpc2FibGVkIiwgdHJ1ZSk7CgkJCX0pCgkJfQoJfQoKCWZ1bmN0aW9uIGVuYWJsZUlucHV0cyh2YWx1ZSkgewoJCWxldCBpbnB1dHMgPSB2YWx1ZS5xdWVyeVNlbGVjdG9yQWxsKGBpbnB1dGApOwoKCQlpZihpbnB1dHMgJiYgaW5wdXRzLmxlbmd0aCA+IDApewoJCQlpbnB1dHMuZm9yRWFjaChpdGVtID0+IHsKCQkJCWl0ZW0ucmVtb3ZlQXR0cmlidXRlKCJkaXNhYmxlZCIpOwoJCQkJaXRlbS5zZXRBdHRyaWJ1dGUoInZhbHVlIiwgaXRlbS5nZXRBdHRyaWJ1dGUoImRhdGEtdmFsdWUiKSk7CgkJCX0pCgkJfQoJfQoKCWxldCBkb3VibGVSYW5nZUlucHV0cyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoYC53cC1zdGVwLS1kb3VibGUtcmFuZ2VgKTsKCglpZiAoZG91YmxlUmFuZ2VJbnB1dHMgJiYgZG91YmxlUmFuZ2VJbnB1dHMubGVuZ3RoID4gMCkgewoJCWRvdWJsZVJhbmdlSW5wdXRzLmZvckVhY2goaXRlbSA9PiB7CgkJbGV0IHRhcmdldCA9IGl0ZW0ucXVlcnlTZWxlY3RvcihgLndwLXN0ZXAtLWlucHV0LW1pbmApOwoKCQlzbGlkZSh0YXJnZXQsIGBub25lYCk7CgkJfSk7Cgl9CgoJZnVuY3Rpb24gc2xpZGUodGFyZ2V0LCB0eXBlKSB7CgkJaWYgKHRhcmdldCAmJiB0YXJnZXQucGFyZW50RWxlbWVudCkgewoJCWxldCBzbGlkZXJUcmFjayA9IHRhcmdldC5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoYC53cC1zdGVwLS1kb3VibGUtcmFuZ2UtdHJhY2tgKTsKCgkJbGV0IHNsaWRlck9uZSA9IHRhcmdldC5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoYC53cC1zdGVwLS1pbnB1dC1taW5gKTsKCQlsZXQgc2xpZGVyVHdvID0gdGFyZ2V0LnBhcmVudEVsZW1lbnQucXVlcnlTZWxlY3RvcihgLndwLXN0ZXAtLWlucHV0LW1heGApOwoKCQlsZXQgZGlzcGxheVZhbE9uZSA9IHRhcmdldC5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoYC53cC1zdGVwLS1yYW5nZS1taW5gKTsKCQlsZXQgZGlzcGxheVZhbFR3byA9IHRhcmdldC5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoYC53cC1zdGVwLS1yYW5nZS1tYXhgKTsKCgkJbGV0IG1pbkdhcCA9IDE7CgkJCgkJaWYgKHNsaWRlck9uZS5nZXRBdHRyaWJ1dGUoInN0ZXAiKSkgewoJCQltaW5HYXAgPSBwYXJzZUludChzbGlkZXJPbmUuZ2V0QXR0cmlidXRlKCJzdGVwIikpOwoJCX0KCgkJaWYgKHNsaWRlck9uZSAmJiBzbGlkZXJUd28gJiYgc2xpZGVyVHJhY2spIHsKCQkJbGV0IHNsaWRlck1heFZhbHVlID0gc2xpZGVyT25lLm1heDsKCQkJbGV0IHNsaWRlckFycm93ID0gIiI7CgoJCQlpZiAodGFyZ2V0LnBhcmVudEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLWFycm93IikpIHsKCQkJCXNsaWRlckFycm93ID0gIiAiICsgdGFyZ2V0LnBhcmVudEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLWFycm93Iik7CgkJCX0KCgkJCWlmICh0eXBlID09PSAibWluIikgewoJCQlpZiAocGFyc2VJbnQoc2xpZGVyVHdvLnZhbHVlKSAtIHBhcnNlSW50KHNsaWRlck9uZS52YWx1ZSkgPD0gbWluR2FwKSB7CgkJCQlzbGlkZXJPbmUudmFsdWUgPSBwYXJzZUludChzbGlkZXJUd28udmFsdWUpIC0gbWluR2FwOwoJCQl9CgkJCWRpc3BsYXlWYWxPbmUuaW5uZXJIVE1MID0gc2xpZGVyT25lLnZhbHVlICsgc2xpZGVyQXJyb3c7CgkJCX0KCQkJaWYgKHR5cGUgPT09ICJtYXgiKSB7CgkJCWlmIChwYXJzZUludChzbGlkZXJUd28udmFsdWUpIC0gcGFyc2VJbnQoc2xpZGVyT25lLnZhbHVlKSA8PSBtaW5HYXApIHsKCQkJCXNsaWRlclR3by52YWx1ZSA9IHBhcnNlSW50KHNsaWRlck9uZS52YWx1ZSkgKyBtaW5HYXA7CgkJCX0KCQkJZGlzcGxheVZhbFR3by5pbm5lckhUTUwgPSBzbGlkZXJUd28udmFsdWUgKyBzbGlkZXJBcnJvdzsKCQkJfQoJCQlpZiAodHlwZSA9PT0gIm5vbmUiKSB7CgkJCQlkaXNwbGF5VmFsT25lLmlubmVySFRNTCA9IHNsaWRlck9uZS52YWx1ZSArIHNsaWRlckFycm93OwoJCQkJZGlzcGxheVZhbFR3by5pbm5lckhUTUwgPSBzbGlkZXJUd28udmFsdWUgKyBzbGlkZXJBcnJvdzsKCQkJfQoKCQkJZmlsbENvbG9yKHNsaWRlck9uZSwgc2xpZGVyVHdvLCBzbGlkZXJNYXhWYWx1ZSwgc2xpZGVyVHJhY2spOwoJCX0KCQl9Cgl9CgoJZnVuY3Rpb24gZmlsbENvbG9yKGlucHV0TWluLCBpbnB1dE1heCwgc2xpZGVyTWF4VmFsdWUsIHNsaWRlclRyYWNrKSB7CgkJbGV0IGNvbG9yID0gZ2V0Q29tcHV0ZWRTdHlsZShzbGlkZXJUcmFjaykuZ2V0UHJvcGVydHlWYWx1ZShgLS1kb3VibGUtcmFuZ2UtaW5wdXRzLWNvbG9yYCk7CgkJbGV0IGNvbG9yU2Vjb25kID0gZ2V0Q29tcHV0ZWRTdHlsZShzbGlkZXJUcmFjaykuZ2V0UHJvcGVydHlWYWx1ZShgLS1kb3VibGUtcmFuZ2UtaW5wdXRzLXNlY29uZC1jb2xvcmApOwoJCXBlcmNlbnQxID0gKGlucHV0TWluLnZhbHVlIC8gc2xpZGVyTWF4VmFsdWUpICogMTAwOwoJCXBlcmNlbnQyID0gKGlucHV0TWF4LnZhbHVlIC8gc2xpZGVyTWF4VmFsdWUpICogMTAwOwoKCQlzbGlkZXJUcmFjay5zdHlsZS5iYWNrZ3JvdW5kID0gYGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHtjb2xvclNlY29uZH0gJHtwZXJjZW50MX0lICwgJHtjb2xvcn0gJHtwZXJjZW50MX0lICwgJHtjb2xvcn0gJHtwZXJjZW50Mn0lLCAke2NvbG9yU2Vjb25kfSAke3BlcmNlbnQyfSUpYDsKCX0KCglsZXQgc2luZ2xlUmFuZ2VJbnB1dHMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGAud3Atc3RlcC0tc2luZ2xlLXJhbmdlYCk7CgoJaWYgKHNpbmdsZVJhbmdlSW5wdXRzICYmIHNpbmdsZVJhbmdlSW5wdXRzLmxlbmd0aCA+IDApIHsKCQlzaW5nbGVSYW5nZUlucHV0cy5mb3JFYWNoKGl0ZW0gPT4gewoJCWxldCB0YXJnZXQgPSBpdGVtLnF1ZXJ5U2VsZWN0b3IoYC53cC1zdGVwLS1pbnB1dGApOwoKCQlzbGlkZVNpbmdsZSh0YXJnZXQpOwoJCX0pOwoJfQoKCWZ1bmN0aW9uIHNsaWRlU2luZ2xlKHRhcmdldCkgewoJCWlmICh0YXJnZXQgJiYgdGFyZ2V0LnBhcmVudEVsZW1lbnQpIHsKCQkJbGV0IGRpc3BsYXlWYWxPbmUgPSB0YXJnZXQucGFyZW50RWxlbWVudC5xdWVyeVNlbGVjdG9yKGAud3Atc3RlcC0tcmFuZ2VgKTsKCQkJbGV0IHNsaWRlck9uZSA9IHRhcmdldC5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoYC53cC1zdGVwLS1pbnB1dGApOwoJCQlsZXQgc2xpZGVyVHJhY2sgPSB0YXJnZXQucGFyZW50RWxlbWVudC5xdWVyeVNlbGVjdG9yKGAud3Atc3RlcC0tZG91YmxlLXJhbmdlLXRyYWNrYCk7CgoJCQlkaXNwbGF5VmFsT25lLmlubmVySFRNTCA9IHNsaWRlck9uZS52YWx1ZSArICIga20iOwoJCQlmaWxsU2luZ2xlQ29sb3Ioc2xpZGVyT25lLCBzbGlkZXJUcmFjayk7CgkJfQoJfQoKCWZ1bmN0aW9uIGZpbGxTaW5nbGVDb2xvcihpbnB1dE1pbiwgc2xpZGVyVHJhY2spIHsKCQlsZXQgY29sb3JTZWNvbmQgPSBnZXRDb21wdXRlZFN0eWxlKHNsaWRlclRyYWNrKS5nZXRQcm9wZXJ0eVZhbHVlKGAtLWRvdWJsZS1yYW5nZS1pbnB1dHMtc2Vjb25kLWNvbG9yYCk7CgoJCXNsaWRlclRyYWNrLnN0eWxlLmJhY2tncm91bmQgPSBgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAke2NvbG9yU2Vjb25kfSAwLCAke2NvbG9yU2Vjb25kfSAxMDAlKWA7Cgl9CgoJbGV0IHRleHRBcmVhTGVuZ3RoID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgLnRleHRBcmVhTGVuZ3RoYCk7CglsZXQgdGV4dEFyZWFMZW5ndGhDdXJyZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgLnRleHRBcmVhTGVuZ3RoQ3VycmVudGApOwoKCWlmKHRleHRBcmVhTGVuZ3RoICYmIHRleHRBcmVhTGVuZ3RoQ3VycmVudCkgewoJCXRleHRBcmVhTGVuZ3RoQ3VycmVudC5pbm5lclRleHQgPSAwICsgYC9gICsgdGV4dEFyZWFMZW5ndGgubWF4TGVuZ3RoOwoJfQoKCWZ1bmN0aW9uIHNldFRleHRBcmVhTGVuZ3RoKGV2ZW50KSB7CgkJbGV0IHRleHRBcmVhTGVuZ3RoQ3VycmVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYC50ZXh0QXJlYUxlbmd0aEN1cnJlbnRgKTsKCgkJaWYodGV4dEFyZWFMZW5ndGhDdXJyZW50KSB7CgkJCXRleHRBcmVhTGVuZ3RoQ3VycmVudC5pbm5lclRleHQgPSBldmVudC52YWx1ZS5sZW5ndGggKyBgL2AgKyB0ZXh0QXJlYUxlbmd0aC5tYXhMZW5ndGg7CgkJfQoJfQo8L3NjcmlwdD4KPC9kaXY+CjwvZm9ybT4=