Advertisement

肺结节目标检测_【肺结节识别】3D Deep Leaky Noisy-or Network论文

阅读量:
54eca029558efe00170ded7c604dba96.png

Pulmonary nodules' malignancy can be assessed using a 3D deep leaky noisy-or network.

github地址:3D Deep Leaky Noisy-or Network

1. 概述

肺癌自动诊断流程主要包括两阶段:首先通过影像学手段识别出肺部病变区域(即肺结节),随后结合临床数据综合判定其恶性程度。

2. 数据集

  • 比赛包含DSB(Data Science Bowl 2017): 共计提供了1397例训练病例、198例验证病例及506例测试病例的数据信息。每个患者都附有二分类标记(患病与否),其中标记为"1"表示一年内出现过疾病。
    • LUNA项目提供了大量公开的数据集(the Lung Nodule Analysis 2016),包含了888例患者案例以及详细记录了其中1186例肺结节的位置信息。

DSB和LUNA数据集之间的主要差异体现在以下几点:首先,在LUNA数据集中所包含的肺结节数量相对较少;其次,在DSB数据集中观察到较多的病理性肺结节位于主支气管中(而LUNA数据集中这类情况较为少见);最后需要指出的是,在DSB数据集中并未对肺结节进行标注

为了统一两个数据集, 去除LUNA中标记有临床经验支持的安全范围内的肺结节约束于直径小于6毫米的部分(此处提示, 直径小于6毫米的小型肺结节约常被认定具有较低的风险);此外, 人工注释DSB训练样本包含754例病灶, 验证样本则包含78例病灶

3. 数据预处理

数据预处理目的在于提取肺部区域 ,并去除肺部周边噪声。

  1. 掩膜推导(mask derivation):对2D图像进行二进制化处理以辨别肺部与非肺部区域
  2. 基于此,在检测到结节位于肺外围时,在左右两侧分别生成相应的凸壳并将其向外膨胀10个像素

3)灰度标准化:通过线性变换将HU值范围(-128到127)转换为适合图像显示的灰色层次,并令除mask之外的所有像素设置为统一的灰色背景;同时,在需增强区域中所有骨组织相关的像素也被设定为此灰色背景以防止对肺结节特征识别的影响。

注释:HU值也被称为CT指标,在医学成像领域有着重要的应用价值。其取值范围在-1 以上至+1 之间,并且反映了人体组织对X射线的能量吸收能力。具体而言,在相同条件下进行比照时,组织密度越高,则其对应的HU值也越高;而空气中各成分所占比例较低,则其相应的HUS数值也会相对较低。

ceefc69e6d67fa1f0a40dec60e159b25.png

4. 3D 肺结节检测网络(N-Net)

4.1 训练输入数据

受限于内存容量,网络输入采用的是每个样本由多个小立方体区域组成的4维张量数据结构。其中每个立方体区域尺寸设定为每个方向上的像素数均为128个单位,并且通过随机采样技术选取这些立方体区域进行处理。其中70%的比例包含至少一个病变结节样本,而剩余30%则不含任何病变结节样本。此外,在处理边界外延区域时,则会采用灰度值恒定在170的空间来填充这些超出范围的部分。

为防止过拟合,patch数据进行随机水平翻转,resize。

4.2 网络结构

N-Net网络的设计灵感源自于U-Net结构,并以三维卷积神经网络为基础架构。该系统通过对其所处理的数据进行细致分析与处理,在整个肺部区域展开扫描,并对每个立方体单元进行评估以识别并返回每个立方体单元中可能存在的结节标记。见下图

  • 图中每个cube都是4维的 ,cube正面数字可表示长宽高,顶上数字为channel
  • 数据输入维度:128x128x128x1
  • 数据输出维度:32x32x32x(5*3),5代表sigmoid输出概率和4个坐标转换系数,3代表长分别是10,30,60mm的3个anchor
  • kernel size:所有feed forward的卷积核维度为3x3x3xchannel,padding=1;所有反卷积kernel size=2,stride=2
  • 深橙色cube:根据肺区域标准化后的patch坐标信息,维度是32x32x32x3,值域[-1,1]
  • k卷积层:第一排的k的两个卷积层的卷积核都是3x3x3x24;第二排的k的两个卷积层的卷积核分别是1x1x1x64和1x1x1x15
b6627296ca224786ea147ba2abeca4e8.png

4.3 损失函数

和faster rcnn rpn网络损失函数类似。

08675ad99937d8dd010689a66241af17.png

注:上图中的p为指示变量,anchor是正样本时p=1,是负样本时p=0

4.4 正负样本均衡

  • 大肺结节会产生大量正anchor,并采用随机选取的方式从中选择一个 anchor 以减少训练样本间的相关性。
  • 大肺结节数量较少,在进行数据增强时会遇到较大的问题。尤其是对于直径超过30毫米和40毫米的病变区域(lesions),为了提高检测效率与准确性,在这些较大病变区域中的采样密度将显著高于正常范围内的病变区域。

4.5 困难负样本挖掘

对容易误诊为结节的负anchor,进行困难负样本挖掘。具体地,

1、随机选择N个负anchor(减小负样本相关性)

2、根据网络输出的classification score排序这N个负anchor

3、选择排序top n的负anchor计算loss,反传更新参数

4.6 测试过程

  • 受限于GPU资源的限制,在此研究中我们采用了输入Patch的方法。
  • 该网络预测肺结节的中心位置及尺寸参数包括:中心X、Y、Z坐标值;半径;以及该区域为结节的概率值。
  • 为了去除预测出的overlapping区域以提高检测结果的准确性,在最后一步我们采用了非最大抑制法。

5. 肺结节癌症分类网络(C-Net)

5.1 输入数据

基于N-Net生成的五个candidate cube中,每个candidate cube均具有96×96×96×1的空间维度(其中中心点位于中心肺结节区域附近)。在训练阶段,系统会根据各candidate cube的概率值随机选取前五位作为候选集(防止过拟合问题)。测试过程中,则依据各candidate cube的概率值选出排名前五的候选体素作为最终结果。

5.2 网络结构

选取N-Net输出中概率较高的5个candidate cube proposals,并通过卷积层结合使用Leaky Noisy-or 方法计算病患存在癌症的概率。

  • 输入样本具有形状为[H\times W\times C\times D]的形式,在本例中H=W=C=D=3.
    • 对于每一个proposals, 我们会将其嵌入到N-Net网络中, 并通过一系列的空间聚合操作最终获得对应的特征向量.
5abe60d43c0b6ea4182344702237966c.png

5.3 feature整合方法

本文探讨了四种特征组合方法。最后采用带有噪声OR门(Leaky Noisy-OR)的方法整合基于5个建议的特征,并计算了整个肺部患癌的概率。

72d7296ba6fe399214801c3348963da1.png
  • Pi:第i个结节癌变的概率
  • Feature comb:存在不足之处
  • MaxP:若所有P1=P2=…=P5=50%,则MaxP方法计算出的整体患癌概率为50%;但临床医生认为整体患癌率应超过50%
  • Noisy-or:当N-Net未能检测出恶性病变时,整体患癌概率由良性病变导致;经过反向知识蒸馏后发现良性病变对患癌概率贡献显著增大;这与实际情况不符;MaxP方法同样存在这一问题
  • Leaky noisy-or:为了避免Noisy-or方法存在的缺陷,在模型中引入了一个虚拟节点(dummy nodule)的癌变概率Pd;该参数由模型自动学习确定

Noisy-or门:在一个由五个结点组成的系统中(即五个独立的病变概率),只要有其中一个结点出现较高概率(例如P₁=80%,其余四个均为P₂=P₃=P₄=P₅=1%),则整个肺部病变的发生概率将显著提升(计算得P=80.49%)。Leaky noisy-or门:当检测结果y=1(表明病变存在)时,在N-Net系统中输出的五个病变候选区域(proposals)可能全部不为病变原因这一现象并不合理。因此我们引入了一个虚拟假结点,并假设其病变概率为Pd值(例如将该假节点设定为发生概率Pd=10%)。在这种情况下,则整体计算得出新的病变总概率仅为约14.41%,这表明该病变现象很有可能是由所引入的虚拟假节点引起的

5.4 训练过程

C-Net损失函数为交叉熵

![](data:text/html;base64,ICAgIDwhRE9DVFlQRSBodG1sPgo8aHRtbCBsYW5nPSJ6aC1DTiI+Cgo8aGVhZD4KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KICAgIDxsaW5rIHJlbD0iY2Fub25pY2FsIiBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xMTIyNzExOTUiLz4KICAgIDxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4KICAgIDxtZXRhIG5hbWU9InJlbmRlcmVyIiBjb250ZW50PSJ3ZWJraXQiLz4KICAgIDxtZXRhIG5hbWU9ImZvcmNlLXJlbmRlcmluZyIgY29udGVudD0id2Via2l0Ii8+CiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UsY2hyb21lPTEiLz4KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wLCBtaW5pbXVtLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9bm8iPgogICAgPG1ldGEgbmFtZT0icmVwb3J0IiBjb250ZW50PSd7InBpZCI6ICJibG9nIiwgInNwbSI6IjEwMDEuMjEwMSJ9Jz4KICAgIDxtZXRhIG5hbWU9InJlZmVycmVyIiBjb250ZW50PSJhbHdheXMiPgogICAgPG1ldGEgaHR0cC1lcXVpdj0iQ2FjaGUtQ29udHJvbCIgY29udGVudD0ibm8tc2l0ZWFwcCIgLz48bGluayByZWw9ImFsdGVybmF0ZSIgbWVkaWE9ImhhbmRoZWxkIiBocmVmPSIjIiAvPgogICAgPG1ldGEgbmFtZT0ic2hlbm1hLXNpdGUtdmVyaWZpY2F0aW9uIiBjb250ZW50PSI1YTU5NzczYWI4MDc3ZDRhNjJiZjQ2OWFiOTY2YTYzYl8xNDk3NTk4ODQ4Ij4KICAgIDxtZXRhIG5hbWU9ImFwcGxpY2FibGUtZGV2aWNlIiBjb250ZW50PSJwYyI+CiAgICA8bGluayAgaHJlZj0iaHR0cHM6Ly9nLmNzZG5pbWcuY24vc3RhdGljL2xvZ28vZmF2aWNvbjMyLmljbyIgIHJlbD0ic2hvcnRjdXQgaWNvbiIgdHlwZT0iaW1hZ2UveC1pY29uIiAvPgogICAgPHRpdGxlPuiCuue7k+iKguebruagh+ajgOa1i1/jgJDogrrnu5PoioLor4bliKvjgJEzRCBEZWVwIExlYWt5IE5vaXN5LW9yIE5ldHdvcmvorrrmloctQ1NETuWNmuWuojwvdGl0bGU+CiAgICA8c2NyaXB0PgogICAgICAoZnVuY3Rpb24oKXsgCiAgICAgICAgdmFyIGVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7IAogICAgICAgIGVsLnNyYyA9ICJodHRwczovL3MzYS5wc3RhdHAuY29tL3RvdXRpYW8vcHVzaC5qcz8xYWJmYTEzZGZlNzRkNzJkNDFkODNjODZkMjQwZGU0MjdlN2NhYzUwYzUxZWFkNTNiMmU3OWQ0MGM3OTUyYTIzZWQ3NzE2ZDA1YjRhMGY2ODNhNjUzZWFiM2UyMTQ2NzI1MTFkZTI0NTdlNzRlOTkyODZlYjJjMzNmNDQyODgzMCI7IAogICAgICAgIGVsLmlkID0gInR0enoiOyAKICAgICAgICB2YXIgcyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXTsgCiAgICAgICAgcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlbCwgcyk7CiAgICAgIH0pKHdpbmRvdykKICAgIDwvc2NyaXB0PgogICAgICAgIDxtZXRhIG5hbWU9ImtleXdvcmRzIiBjb250ZW50PSLogrrnu5PoioLnm67moIfmo4DmtYvorrrmlociPgogICAgICAgIDxtZXRhIG5hbWU9ImNzZG4tYmFpZHUtc2VhcmNoIiAgY29udGVudD0neyJhdXRvcnVuIjp0cnVlLCJpbnN0YWxsIjp0cnVlLCJrZXl3b3JkIjoi6IK657uT6IqC55uu5qCH5qOA5rWL6K665paHIn0nPgogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IuaWh+eroOa1j+iniOmYheivuzEuM2vmrKHvvIzngrnotZ4y5qyh77yM5pS26JePMTDmrKHjgILmnKzmlofku4vnu43kuobkvb/nlKgzRCBEZWVwIExlYWt5IE5vaXN5LW9yIE5ldHdvcmvov5vooYzogrrnu5PoioLmo4DmtYvlkozogrrnmYzliIbnsbvnmoTnoJTnqbbvvIzor6Xmlrnms5XlnKgyMDE35bm0a2FnZ2xl5pWw5o2u56eR5a2m56KX5q+U6LWb5Lit6I635b6X56ys5LiA5ZCN44CC6K665paH6K+m57uG6ZiQ6L+w5LqG5pWw5o2u6aKE5aSE55CG44CBTi1OZXTlkoxDLU5ldOe9kee7nOe7k+aehOOAgeato+i0n+agt+acrOW5s+ihoeetlueVpeS7peWPiuWbsOmavui0n+agt+acrOaMluaOmOetieWFs+mUruatpemqpO+8jOWxleekuuS6huWcqOiCuumDqOeWvueXheiHquWKqOiviuaWreS4reeahOa9nOWcqOS7t+WAvOOAgg0iPgogICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2Nzcy9kZXRhaWxfZW50ZXItZjAxYmFjMTE0YS5taW4uY3NzIj4KICAgIDxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vbGQranNvbiI+eyJAY29udGV4dCI6Imh0dHBzOi8veml5dWFuLmJhaWR1LmNvbS9jb250ZXh0cy9jYW1icmlhbi5qc29ubGQiLCJAaWQiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xMTIyNzExOTUiLCJhcHBpZCI6IjE2Mzg4MzE3NzAxMzY4MjciLCJwdWJEYXRlIjoiMjAyMC0xMi0yNVQxNDoxNjo1MyIsInRpdGxlIjoi6IK657uT6IqC55uu5qCH5qOA5rWLX+OAkOiCuue7k+iKguivhuWIq+OAkTNEIERlZXAgTGVha3kgTm9pc3ktb3IgTmV0d29ya+iuuuaWhy1DU0RO5Y2a5a6iIiwidXBEYXRlIjoiMjAyMC0xMi0yNVQxNDoxNjo1MyJ9PC9zY3JpcHQ+CiAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvdGhlbWVzU2tpbi9za2luLXNlYS9za2luLXNlYS1kM2EwOGMyMDQ4Lm1pbi5jc3MiPgogICAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vZy5jc2RuaW1nLmNuL2xpYi9qcXVlcnkvMS4xMi40L2pxdWVyeS5taW4uanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9nLmNzZG5pbWcuY24vbGliL2pxdWVyeS1taWdyYXRlLzEuNC4xL2pxdWVyeS1taWdyYXRlLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0PgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgICAgIHZhciBpc0NvcnBvcmF0ZSA9IGZhbHNlOwogICAgICAgIHZhciB1c2VybmFtZSA9ICAid2VpeGluXzMwNzgzOTQ3IjsKICAgICAgICB2YXIgc2tpbkltZyA9ICJ3aGl0ZSI7CgogICAgICAgIHZhciBibG9nX2FkZHJlc3MgPSAiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0NyI7CiAgICAgICAgdmFyIGN1cnJlbnRVc2VyTmFtZSA9ICJIdWFtaWFuZ2lhbyI7CiAgICAgICAgdmFyIGlzT3duZXIgPSBmYWxzZTsKICAgICAgICB2YXIgbG9naW5VcmwgPSAiaHR0cDovL3Bhc3Nwb3J0LmNzZG4ubmV0L2FjY291bnQvbG9naW4/ZnJvbT1odHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xMTIyNzExOTUiOwogICAgICAgIHZhciBibG9nVXJsID0gImh0dHBzOi8vYmxvZy5jc2RuLm5ldC8iOwogICAgICAgIHZhciBhdmF0YXIgPSAiaHR0cHM6Ly9wcm9maWxlLWF2YXRhci5jc2RuaW1nLmNuL2Q1YmYyZWU4OWZkNzRkNWFhMDg2OTM2NzhhOTAzZTU5X3dlaXhpbl8zMDc4Mzk0Ny5qcGchMSI7CiAgICAgICAgdmFyIGFydGljbGVUaXRsZSA9ICLogrrnu5PoioLnm67moIfmo4DmtYtf44CQ6IK657uT6IqC6K+G5Yir44CRM0QgRGVlcCBMZWFreSBOb2lzeS1vciBOZXR3b3Jr6K665paHIjsKICAgICAgICB2YXIgYXJ0aWNsZURlc2MgPSAi5paH56ug5rWP6KeI6ZiF6K+7MS4za+asoe+8jOeCuei1njLmrKHvvIzmlLbol48xMOasoeOAguacrOaWh+S7i+e7jeS6huS9v+eUqDNEIERlZXAgTGVha3kgTm9pc3ktb3IgTmV0d29ya+i/m+ihjOiCuue7k+iKguajgOa1i+WSjOiCuueZjOWIhuexu+eahOeglOeptu+8jOivpeaWueazleWcqDIwMTflubRrYWdnbGXmlbDmja7np5Hlrabnopfmr5TotZvkuK3ojrflvpfnrKzkuIDlkI3jgILorrrmlofor6bnu4bpmJDov7DkuobmlbDmja7pooTlpITnkIbjgIFOLU5ldOWSjEMtTmV0572R57uc57uT5p6E44CB5q2j6LSf5qC35pys5bmz6KGh562W55Wl5Lul5Y+K5Zuw6Zq+6LSf5qC35pys5oyW5o6Y562J5YWz6ZSu5q2l6aqk77yM5bGV56S65LqG5Zyo6IK66YOo55a+55eF6Ieq5Yqo6K+K5pat5Lit55qE5r2c5Zyo5Lu35YC844CCXHIiOwogICAgICAgIHZhciBhcnRpY2xlVGl0bGVzID0gIuiCuue7k+iKguebruagh+ajgOa1i1/jgJDogrrnu5PoioLor4bliKvjgJEzRCBEZWVwIExlYWt5IE5vaXN5LW9yIE5ldHdvcmvorrrmloctQ1NETuWNmuWuoiI7CiAgICAgICAgdmFyIG5pY2tOYW1lID0gIumVlueLrue9kSI7CiAgICAgICAgdmFyIGFydGljbGVEZXRhaWxVcmwgPSAiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Ny9hcnRpY2xlL2RldGFpbHMvMTEyMjcxMTk1IjsKICAgICAgICB2YXIgdmlwVXJsViA9ICJodHRwczovL21hbGwuY3Nkbi5uZXQvdmlwP3ZpcFNvdXJjZT1sZWFybmluZ1ZpcCI7CiAgICAgICAgaWYod2luZG93LmxvY2F0aW9uLmhvc3Quc3BsaXQoJy4nKS5sZW5ndGggPT0gMykgewogICAgICAgICAgICBibG9nX2FkZHJlc3MgPSBibG9nVXJsICsgdXNlcm5hbWU7CiAgICAgICAgfQogICAgICAgIHZhciBza2luU3RhdHVzID0gIldoaXRlIjsKICAgICAgICB2YXIgYmxvZ1N0YXRpY0hvc3QgPSAiaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyLyIKICAgICAgICAgIHZhciBwYXlDb2x1bW4gPSBmYWxzZQogICAgPC9zY3JpcHQ+CiAgICAgICAgPG1ldGEgbmFtZT0idG9vbGJhciIgY29udGVudD0neyJ0eXBlIjoiMCIsImZpeE1vZGVsIjoiMSJ9Jz4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2cuY3NkbmltZy5jbi8/P2ZpeGVkLXNpZGViYXIvMS4xLjcvZml4ZWQtc2lkZWJhci5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KICAgICAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vY2RuLXN0YXRpYy1kZXZiaXQuY3Nkbi5uZXQvYWkxMDAvY2hhdC9jaGF0LXNlYXJjaC5qcz92PTIiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0nLy9nLmNzZG5pbWcuY24vY29tbW9uL2NzZG4tcmVwb3J0L3JlcG9ydC5qcycgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz48L3NjcmlwdD4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Imh0dHBzOi8vY3NkbmltZy5jbi9wdWJsaWMvc2FuZGFsc3RyYXAvMS40L2Nzcy9zYW5kYWxzdHJhcC5taW4uY3NzIj4KICAgIDxzdHlsZT4KICAgICAgICAuTWF0aEpheCwgLk1hdGhKYXhfTWVzc2FnZSwgLk1hdGhKYXhfUHJldmlld3sKICAgICAgICAgICAgZGlzcGxheTogbm9uZQogICAgICAgIH0KICAgIDwvc3R5bGU+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9kdXAuYmFpZHVzdGF0aWMuY29tL2pzL2RzLmpzIj48L3NjcmlwdD4KICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgICAgIChmdW5jdGlvbihjLGwsYSxyLGksdCx5KXsKICAgICAgICAgICAgY1thXT1jW2FdfHxmdW5jdGlvbigpeyhjW2FdLnE9Y1thXS5xfHxbXSkucHVzaChhcmd1bWVudHMpfTsKICAgICAgICAgICAgdD1sLmNyZWF0ZUVsZW1lbnQocik7dC5hc3luYz0xO3Quc3JjPSJodHRwczovL3d3dy5jbGFyaXR5Lm1zL3RhZy8iK2k7CiAgICAgICAgICAgIHk9bC5nZXRFbGVtZW50c0J5VGFnTmFtZShyKVswXTt5LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHQseSk7CiAgICAgICAgfSkod2luZG93LCBkb2N1bWVudCwgImNsYXJpdHkiLCAic2NyaXB0IiwgImxndHBpeDZyODUiKTsKICAgICAgPC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iL2Nkbl9jZ2lfYnNfY2FwdGNoYS9zdGF0aWMvanMvd2FmX2NhcHRjaGFfZW1iZWRkZWRfYnMuanMiPjwvc2NyaXB0Pgo8L2hlYWQ+CiAgPGJvZHkgY2xhc3M9Im5vZGF0YSAgIiBzdHlsZT0iIj4KICAgIDxkaXYgaWQ9InRvb2xiYXJCb3giIHN0eWxlPSJtaW4taGVpZ2h0OiA0OHB4OyI+PC9kaXY+CiAgICAgICAgPHNjcmlwdD4KICAgICAgICAgICAgdmFyIHRvb2xiYXJTZWFyY2hFeHQgPSAneyJsYW5kaW5nV29yZCI6WyLogrrnu5PoioLnm67moIfmo4DmtYvorrrmlociXSwicXVlcnlXb3JkIjoiIiwidGFnIjpbIuiCuue7k+iKguebruagh+ajgOa1iyJdLCJ0aXRsZSI6IuiCuue7k+iKguebruagh+ajgOa1i1/jgJDogrrnu5PoioLor4bliKvjgJEzRCBEZWVwIExlYWt5IE5vaXN5LW9yIE5ldHdvcmvorrrmlocifSc7CiAgICAgICAgPC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9nLmNzZG5pbWcuY24vY29tbW9uL2NzZG4tdG9vbGJhci9jc2RuLXRvb2xiYXIuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0PgogICAgKGZ1bmN0aW9uKCl7CiAgICAgICAgdmFyIGJwID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7CiAgICAgICAgdmFyIGN1clByb3RvY29sID0gd2luZG93LmxvY2F0aW9uLnByb3RvY29sLnNwbGl0KCc6JylbMF07CiAgICAgICAgaWYgKGN1clByb3RvY29sID09PSAnaHR0cHMnKSB7CiAgICAgICAgICAgIGJwLnNyYyA9ICdodHRwczovL3p6LmJkc3RhdGljLmNvbS9saW5rc3VibWl0L3B1c2guanMnOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgYnAuc3JjID0gJ2h0dHA6Ly9wdXNoLnpoYW56aGFuZy5iYWlkdS5jb20vcHVzaC5qcyc7CiAgICAgICAgfQogICAgICAgIHZhciBzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpWzBdOwogICAgICAgIHMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYnAsIHMpOwogICAgfSkoKTsKICAgIDwvc2NyaXB0PgoKICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvY3NzL2Jsb2dfY29kZS0wMTI1NjUzM2I1Lm1pbi5jc3MiPgogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9tZGVkaXRvci9jc3MvZWRpdGVyVmlldy9jaGFydC0zNDU2ODIwY2FjLmNzcyIgLz4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9nLmNzZG5pbWcuY24vbGliL3N3aXBlci82LjAuNC9jc3Mvc3dpcGVyLmNzcyIgLz4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2cuY3NkbmltZy5jbi9saWIvc3dpcGVyLzYuMC40L2pzL3N3aXBlci5qcyIgYXN5bmM+PC9zY3JpcHQ+CiAgICA8c2NyaXB0PgogICAgICB2YXIgYXJ0aWNsZUlkID0gMTEyMjcxMTk1OwogICAgICAgIHZhciBwcml2YXRlRWR1RGF0YSA9IFsiZ2l0Iiwi5Ye95pWwIiwi6YCJ5oup5o6S5bqPIiwi5Ye95pWw57G7Iiwi5pWw5o2u6aKE5aSE55CGIl07Ly/pq5jkuq7mlbDnu4QKICAgICAgICB2YXIgcHJpdmF0ZURhdGEgPSBbImVzc2VudGlhbCIsImV2YWx1YXRlIiwibWwiLCLoh6rliqjpqb7pqbYiLCLmlbDmja7pm4YiXTsvL+mrmOS6ruaVsOe7hAogICAgICB2YXIgY29tbWVudHNjb3VudCA9IDA7CiAgICAgIHZhciBjb21tZW50QXV0aCA9IDE7CiAgICAgIHZhciBjdXJlbnRVcmwgPSAiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Ny9hcnRpY2xlL2RldGFpbHMvMTEyMjcxMTk1IjsKICAgICAgdmFyIG15VXJsID0gImh0dHBzOi8vbXkuY3Nkbi5uZXQvIjsKICAgICAgdmFyIGlzR2l0Q29kZUJsb2cgPSBmYWxzZTsKICAgICAgdmFyIGlzT3BlblNvdXJjZUJsb2cgPSBmYWxzZTsKICAgICAgICB2YXIgaGlnaGxpZ2h0ID0gWyJuZXR3b3JrIiwibGVha3kiLCJub2lzeSIsImRlZXAiLCLnm67moIfmo4DmtYsiLCLogrrnu5PoioIiLCIzZCIsIuivhuWIqyIsIuiuuuaWhyJdOy8v6auY5Lqu5pWw57uECiAgICAgICAgdmFyIGlzUmVjb21tZW5kTW9kdWxlID0gdHJ1ZTsKICAgICAgICAgIHZhciBpc0JhaWR1UHJlID0gZmFsc2U7CiAgICAgICAgICB2YXIgYmFpZHVDb3VudCA9IDI7CiAgICAgICAgICB2YXIgc2V0QmFpZHVKc0NvdW50ID0gMjsKICAgICAgICB2YXIgdmlld0NvdW50Rm9ybWF0ID0gMTM2MzsKICAgICAgdmFyIHNoYXJlX2NhcmRfdXJsID0gImh0dHBzOi8vYXBwLWJsb2cuY3Nkbi5uZXQvc2hhcmU/YXJ0aWNsZV9pZD0xMTIyNzExOTUmdXNlcm5hbWU9d2VpeGluXzMwNzgzOTQ3IgogICAgICB2YXIgbWFsbFZpcFVybCA9ICJodHRwczovL21hbGwuY3Nkbi5uZXQvdmlwP3ZpcFNvdXJjZT1hcnRpY2xlIgogICAgICB2YXIgdmlwQXJ0aWNsZUFiU3R5bGUgPSAidF8zIgoKICAgICAgdmFyIHZpcEFydGljbGVDcFN0eWxlID0gInRfNCIKICAgICAgdmFyIGFydGljbGVUeXBlID0gMTsKICAgICAgdmFyIGJhaWR1S2V5ID0gIuiCuue7k+iKguebruagh+ajgOa1i+iuuuaWhyI7CiAgICAgIHZhciBjb3B5UG9wU3dpdGNoID0gdHJ1ZTsKICAgICAgdmFyIG5lZWRJbnNlcnRCYWlkdSA9IHRydWU7CiAgICAgIHZhciByZWNvbW1lbmRSZWd1bGFyRG9tYWluQXJyID0gWyJibG9nLmNzZG4ubmV0Ly4rL2FydGljbGUvZGV0YWlscy8iLCJkb3dubG9hZC5jc2RuLm5ldC9kb3dubG9hZC8iLCJlZHUuY3Nkbi5uZXQvY291cnNlL2RldGFpbC8iLCJhc2suY3Nkbi5uZXQvcXVlc3Rpb25zLyIsImJicy5jc2RuLm5ldC90b3BpY3MvIiwid3d3LmNzZG4ubmV0L2dhdGhlcl8uKy8iXQogICAgICB2YXIgY29kZVN0eWxlID0gIiI7CiAgICAgIHZhciBiYWlkdVNlYXJjaFR5cGUgPSAiYmFpZHVsYW5kaW5nd29yZCI7CiAgICAgIHZhciBzaGFyRGF0YSA9ICJ7XCJob3RcIjpbe1wiaWRcIjoxLFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvYTVmNDI2MDcxMDkwNGU1MzgwMDJhNmFiMzM3OTM5YjMucG5nXCJ9LHtcImlkXCI6MixcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcLzE4OGIzNzE5OWEyYzRiNzRiMWQ5ZmZjMzllMGQ1MmRlLnBuZ1wifSx7XCJpZFwiOjMsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC8xNGRlZDM1OGI2MzE0NDQ1ODFlZGQ5OGEyNTZiYzVhZi5wbmdcIn0se1wiaWRcIjo0LFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvMTQ3MGYyM2E3NzA0NDRkOTg2YWQ1NTFiOWMzM2M1YmUucG5nXCJ9LHtcImlkXCI6NSxcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcL2MzMjlmNTE4MWRjNzRmNmM5YmQyOGM5ODJiYjlmOTFkLnBuZ1wifSx7XCJpZFwiOjYsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC9jY2Q4YTMzMDVlODE0NjBmOWM1MDVjOTViNDMyYTY1Zi5wbmdcIn0se1wiaWRcIjo3LFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvYmM4OWQ4MjgzMzg5NDQwZDk3ZmM0ZDMwZTMwZjQ1ZTEucG5nXCJ9LHtcImlkXCI6OCxcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcLzQ1MmQ0ODViNGE2NTRmNTU5MjM5MDU1MGQyNDQ1ZWRmLnBuZ1wifSx7XCJpZFwiOjksXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC9mOGI5OTM5ZGIyZWQ0NzRhOGY0M2E2NDMwMTVmYzhiNy5wbmdcIn0se1wiaWRcIjoxMCxcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcLzZkZTg4NjQxODdhYjRlZDNiMWRiMDg1NjM2OWMzNmZmLnBuZ1wifSx7XCJpZFwiOjExLFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvNjczY2MzNDcwZmY3NDA3MmFjYmE5NThkYzBjNDZlMmQucG5nXCJ9LHtcImlkXCI6MTIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC85MzBjMTE5NzYwYWM0NDkxODA0ZGI4MGY5YzZkNGUzZi5wbmdcIn0se1wiaWRcIjoxMyxcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcLzE1ZTZiZWZiMDVhMjQyMzNiYzJiNjVlOTZhYThkOTcyLnBuZ1wifSx7XCJpZFwiOjE0LFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvMjA3NWZkNjgyMjE4NGI5NWE0MWUyMTRkZTRkYWVjMTMucG5nXCJ9LHtcImlkXCI6MTUsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC84NTliMTU1MmRiMjQ0ZWI2ODkxYTgwOTI2M2E1YzY1Ny5wbmdcIn0se1wiaWRcIjoxNixcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcLzBiZTJmOTIwZjFmNzQyOTBhOTg5MjE5NzRhOTYxM2ZkLnBuZ1wifSx7XCJpZFwiOjE3LFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvMmU5N2UwMGI0M2YxNGFmYWI0OTRlYTU1ZWYzZjRhNmUucG5nXCJ9LHtcImlkXCI6MTgsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC9mZjRhYjI1MmY0NmU0NDQ2ODZmNTEzNWQ2ZWJiZmVjMC5wbmdcIn0se1wiaWRcIjoxOSxcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcL2FlMDI5YmJlOTk1NjRlNzk5MTE2NTc5MTJkMzY1MjRmLnBuZ1wifSx7XCJpZFwiOjIwLFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvYjNlY2UzOTk2M2RlNDQwMzg4NzI4ZTllN2I5YmY0MjcucG5nXCJ9LHtcImlkXCI6MjEsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC82ZjE0NjUxYTk5YmE0ODZlOTI2ZDYzYjZmYTY5Mjk5Ny5wbmdcIn0se1wiaWRcIjoyMixcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcLzgzY2VkZGYwNTAwODQ4NzVhMzQxZTMyZGNjZWNhNzIxLnBuZ1wifSx7XCJpZFwiOjIzLFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvYjkwMzY4YjhmZDVkNGM2YzhjNzlhNzA3ZDg3N2NmN2MucG5nXCJ9LHtcImlkXCI6MjQsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC9hZWZmYWUxNGVjZjE0ZTA3OWIyNjE2NTI4YzlhMzkzYi5wbmdcIn0se1wiaWRcIjoyNSxcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcL2M1YTA2YjVhMTNkNDRkMTZiZWQ4NjhmYzMzODQ4OTdhLnBuZ1wifSx7XCJpZFwiOjI2LFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvMDhiNjk3NjU4Yjg0NGIzMThjZWEzYjExOWU5NTQxZWYucG5nXCJ9LHtcImlkXCI6MjcsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC82OGNjYjBiOGQwOTM0NmFjOTYxZDJiNWMxYThjNzdiZi5wbmdcIn0se1wiaWRcIjoyOCxcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcL2EyMjI3YTI0N2UzNzQxOGNiZTBlYTk3MmJhNmE4NTliLnBuZ1wifSx7XCJpZFwiOjI5LFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvM2E0MjgyNWZlZGU3NDhmOTk5M2U1YmI4NDRhZDM1MGQucG5nXCJ9LHtcImlkXCI6MzAsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC84ODgyYWJjMWRkNDg0MjI0YjYzNjk2NmVhMzg1NTVjMy5wbmdcIn0se1wiaWRcIjozMSxcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcLzRmNmE1ZjYzNmEzZTQ0NGQ4M2NmOGNjMDZkODdhMTU5LnBuZ1wifSx7XCJpZFwiOjMyLFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvMTk1M2VmNzljNTZiNDQwN2I3OGQ3MTgxYmRmZjExYzMucG5nXCJ9LHtcImlkXCI6MzMsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC9jMDRhMmE0Zjc3Mjk0OGVkODViNWIwMzgwZWQzNjI4Ny5wbmdcIn0se1wiaWRcIjozNCxcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcLzViNGZlY2QwNTA5MTQwNWVhMDRkOGMwZjUzZTlmMmM3LnBuZ1wifSx7XCJpZFwiOjM1LFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvYjg5ZjU3NmQ3MDAzNDRlMjgwZDZjZWIyYTY2YzI0MjAucG5nXCJ9LHtcImlkXCI6MzYsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC8xYzY1NzgwZTExODA0YmJkOTk3MWViYWRiM2Q3OGJjZi5wbmdcIn0se1wiaWRcIjozNyxcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcL2Q1OTBkYjIwNTVmMzQ1ZGI5NzA2ZWI2OGE3ZWMxNTFhLnBuZ1wifSx7XCJpZFwiOjM4LFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvZmU2MDJmODA3MDBiNGY2ZmIzYzRhOWU0YzEzNTUxMGUucG5nXCJ9LHtcImlkXCI6MzksXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC8zOWZmMmZjZDMxZTA0ZmViYTMwMWEwNzE5NzZhMGJhNy5wbmdcIn0se1wiaWRcIjo0MCxcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcL2Y5YjYxYjNkMTEzZjQzNmI4Mjg2MzE4MzdmODlmYjM5LnBuZ1wifSx7XCJpZFwiOjQxLFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvZGYxYWNhNWY2MTBjNGFkNDhjZDE2ZGE4OGM5Yzg0OTkucG5nXCJ9LHtcImlkXCI6NDIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC9kN2FjZjczYTFlNmI0MTM5OWE3N2E4NTA0MGUxMDk2MS5wbmdcIn0se1wiaWRcIjo0MyxcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcL2I3ZjFiNjM1NDI1MjRiOTc5NjJmZjY0OWFiNGU3ZTIzLnBuZ1wifV0sXCJ2aXBcIjpbe1wiaWRcIjoxLFwidmlwVXJsXCI6XCJodHRwczpcXC9cXC9pbWctaG9tZS5jc2RuaW1nLmNuXFwvaW1hZ2VzXFwvMjAyMjA5MjAxMDExNTAucG5nXCIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ob21lLmNzZG5pbWcuY25cXC9pbWFnZXNcXC8yMDIyMDkyMDEwMTE1NC5wbmdcIn0se1wiaWRcIjoyLFwidmlwVXJsXCI6XCJodHRwczpcXC9cXC9pbWctaG9tZS5jc2RuaW1nLmNuXFwvaW1hZ2VzXFwvMjAyMjA5MjAxMDEyMDQucG5nXCIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ob21lLmNzZG5pbWcuY25cXC9pbWFnZXNcXC8yMDIyMDkyMDEwMTIwOC5wbmdcIn0se1wiaWRcIjozLFwidmlwVXJsXCI6XCJodHRwczpcXC9cXC9pbWctaG9tZS5jc2RuaW1nLmNuXFwvaW1hZ2VzXFwvMjAyMjA5MjAxMDEyMTEucG5nXCIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ob21lLmNzZG5pbWcuY25cXC9pbWFnZXNcXC8yMDIyMDkyMDEwMTIxNS5wbmdcIn0se1wiaWRcIjo0LFwidmlwVXJsXCI6XCJodHRwczpcXC9cXC9pbWctaG9tZS5jc2RuaW1nLmNuXFwvaW1hZ2VzXFwvMjAyMjA5MjAxMDEyMTgucG5nXCIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ob21lLmNzZG5pbWcuY25cXC9pbWFnZXNcXC8yMDIyMDkyMDEwMTIyMC5wbmdcIn0se1wiaWRcIjo1LFwidmlwVXJsXCI6XCJodHRwczpcXC9cXC9pbWctaG9tZS5jc2RuaW1nLmNuXFwvaW1hZ2VzXFwvMjAyMjA5MjAxMDEyMjMucG5nXCIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ob21lLmNzZG5pbWcuY25cXC9pbWFnZXNcXC8yMDIyMDkyMDEwMTIyNi5wbmdcIn0se1wiaWRcIjo2LFwidmlwVXJsXCI6XCJodHRwczpcXC9cXC9pbWctaG9tZS5jc2RuaW1nLmNuXFwvaW1hZ2VzXFwvMjAyMjA5MjIxMDA2MzUucG5nXCIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ob21lLmNzZG5pbWcuY25cXC9pbWFnZXNcXC8yMDIyMDkyMjEwMDYzOS5wbmdcIn0se1wiaWRcIjo3LFwidmlwVXJsXCI6XCJodHRwczpcXC9cXC9pbWctaG9tZS5jc2RuaW1nLmNuXFwvaW1hZ2VzXFwvMjAyMjA5MjIxMDA2NDIucG5nXCIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ob21lLmNzZG5pbWcuY25cXC9pbWFnZXNcXC8yMDIyMDkyMjEwMDY0NC5wbmdcIn0se1wiaWRcIjo4LFwidmlwVXJsXCI6XCJodHRwczpcXC9cXC9pbWctaG9tZS5jc2RuaW1nLmNuXFwvaW1hZ2VzXFwvMjAyMjA5MjIxMDA2NDcucG5nXCIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ob21lLmNzZG5pbWcuY25cXC9pbWFnZXNcXC8yMDIyMDkyMjEwMDY0OS5wbmdcIn0se1wiaWRcIjo5LFwidmlwVXJsXCI6XCJodHRwczpcXC9cXC9pbWctaG9tZS5jc2RuaW1nLmNuXFwvaW1hZ2VzXFwvMjAyMjA5MjIxMDA2NTIucG5nXCIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ob21lLmNzZG5pbWcuY25cXC9pbWFnZXNcXC8yMDIyMDkyMjEwMDY1NS5wbmdcIn0se1wiaWRcIjoxMCxcInZpcFVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcLzU1ZGU2NzQ4MWZkZTRiMDRiOTdhZDc4ZjExZmUzNjlhLnBuZ1wiLFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvYmIyNDE4ZmI1MzdlNGQ3OGIxMGQ4NzY1Y2NkODEwYzUucG5nXCJ9LHtcImlkXCI6MTEsXCJ2aXBVcmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC81NzljNzEzMzk0NTg0ZDEyODEwNGVmMTA0NDAyMzk1NC5wbmdcIixcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcL2Y0MjBkOWZiY2Y1NTQ4MDc5ZDMxYjVlODA5YjZkNmNkLnBuZ1wifSx7XCJpZFwiOjEyLFwidmlwVXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvNzViN2YzMTU1YmE2NDJmNWE0Y2MxNmI3YmFmNDQxMjIucG5nXCIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC9hOTAzMGY1ODc3YmU0MDFmOGIzNDBiODBiMGQ5MWU2NC5wbmdcIn0se1wiaWRcIjoxMyxcInZpcFVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcLzA5MDNkMzNjYWZhNTQ5MzRiZTM3ODBhYTU0YWU5NThkLnBuZ1wiLFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvMmNkOGM4OTI5ZjVhNDJmY2E1ZGEyYTBhZWI0NTYyMDMucG5nXCJ9LHtcImlkXCI6MTQsXCJ2aXBVcmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC85NDlmZDdjMjI4ODQ0MzlmYmZjM2MwZTljM2I4ZGVlNy5wbmdcIixcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcL2RhZmJlYTliZDllYjRmM2I5NjJiNDhkYzQxNjU3Zjg5LnBuZ1wifSx7XCJpZFwiOjE1LFwidmlwVXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvNDExOWNmZGRkNzFkNGU2YThhMjdhMThkYmI3NGQ5MGUucG5nXCIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC9jNTYzMTBjOGI2Mzg0ZDllODUzODhlNGUzNDJjZTUwOC5wbmdcIn0se1wiaWRcIjoxNixcInZpcFVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcLzEyMTU3NTI3NGRhMTQyYmNiYmJiYzJlODI0M2RkNDExLnBuZ1wiLFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvNTAxMzk5M2RlMDY1NDJmODgxMDE4YmI5YWJlMmVkZjcucG5nXCJ9LHtcImlkXCI6MTcsXCJ2aXBVcmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC80ZDk3YWE2ZGQ0ZmU0ZjA5YTZiZWY1YmRmOGE2YWJjZC5wbmdcIixcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcLzc2ZjIzODc3YjZhZDQwNjZhZDQ1Y2U4ZTMxYjRiOTc3LnBuZ1wifSx7XCJpZFwiOjE4LFwidmlwVXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvZmRiNjE5ZGFmMjFiNGM4MjlkZTYzYjllYmM3ODg1OWQucG5nXCIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC9hMWFiZTVkMjdhNTQ0MWY1OTlhZGZlNjYyZjUxMDI0My5wbmdcIn0se1wiaWRcIjoxOSxcInZpcFVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcLzY3NmI3NzA3YmIxMTQxMGY4ZjU2YmMwZWQyYjIzNDVjLnBuZ1wiLFwidXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvN2FjNWI0NjdmYmYyNGUxZDhjMmRlM2YzMzMyYzRmNTQucG5nXCJ9LHtcImlkXCI6MjAsXCJ2aXBVcmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC8wYmVjYjhjYzIyN2U0NzIzYjc2NWJkZDY5YTIwZmQ0YS5wbmdcIixcInVybFwiOlwiaHR0cHM6XFwvXFwvaW1nLWJsb2cuY3NkbmltZy5jblxcL2ZkZWM4NWIyNjA5MTQ4NmI5YTg5ZDBiOGQ0NWMzNzQ5LnBuZ1wifSx7XCJpZFwiOjIxLFwidmlwVXJsXCI6XCJodHRwczpcXC9cXC9pbWctYmxvZy5jc2RuaW1nLmNuXFwvMWE2YzA2MjM1YWQ0NDk0MWIzOGM1NGNiYzI1YTM3MGMucG5nXCIsXCJ1cmxcIjpcImh0dHBzOlxcL1xcL2ltZy1ibG9nLmNzZG5pbWcuY25cXC80MTBhMDZjZGEyZDQ0YjBjODQ1NzhmODgyNzVjYWY3MC5wbmdcIn1dLFwibWFwXCI6e1wiaG90XCI6XCLng63pl6hcIixcInZpcFwiOlwiVklQXCJ9fSI7CiAgICAgIAogICAgICB2YXIgY2FuUmVhZCA9IHRydWU7CiAgICAgIHZhciBibG9nTW92ZUhvbWVBcnRpY2xlID0gdHJ1ZTsKICAgICAgdmFyIHNob3dTZWFyY2hUZXh0ID0gIiI7CiAgICAgIHZhciBzaWRlVG9vbGJhclJlc3VsdCA9ICJleHAiOwogICAgICB2YXIgYXJ0aWNsZVNvdXJjZSA9IDQ7CiAgICAgIHZhciBhcnRpY2xlUmVwb3J0ID0gJ3sicGlkIjogImJsb2ciLCAic3BtIjoiMTAwMS4yMTAxIn0nOwogICAgICAgIHZhciBiYWlkdVNlYXJjaENoYW5uZWwgPSAncGNfcmVsZXZhbnQnCiAgICAgICAgdmFyIGJhaWR1U2VhcmNoSWRlbnRpZmljYXRpb24gPSAnLjIzNV52NDNecGNfYmxvZ19ib3R0b21fcmVsZXZhbmNlX2Jhc2U5JwogICAgICAgIHZhciBkaXN0UmVxdWVzdElkID0gJzE3MzU0MTY0Mzg2ODlfMDI5OTcnCiAgICAgICAgdmFyIGluaXRSZXdhcmRPYmplY3QgPSB7CiAgICAgICAgICBnaXZlcjogY3VycmVudFVzZXJOYW1lLAogICAgICAgICAgYW5jaG9yOiB1c2VybmFtZSwKICAgICAgICAgIGFydGljbGVJZDogYXJ0aWNsZUlkLAogICAgICAgICAgc2lnbjogJycKICAgICAgICB9CiAgICAgICAgdmFyIGlzTGlrZVN0YXR1cyA9IGZhbHNlOwogICAgICAgIHZhciBpc1VuTGlrZVN0YXR1cyA9IGZhbHNlOwogICAgICAgIHZhciBzdHVkeUxlYXJuV29yZCA9ICIiOwogICAgICAgIHZhciB1blVzZUNvdW50ID0gMDsKICAgICAgICB2YXIgY29kZU1heFNpemUgPSAwOwogICAgICAgIHZhciBvdmVyQ29zdCA9IHRydWU7CiAgICAgICAgdmFyIGlzQ3VycmVudFVzZXJWaXAgPSB0cnVlCiAgICAgICAgdmFyIGNvbnRlbnRWaWV3c0hlaWdodCA9IDA7CiAgICAgICAgdmFyIGNvbnRlbnRWaWV3c0NvdW50ID0gMDsKICAgICAgICB2YXIgY29udGVudFZpZXdzQ291bnRMaW1pdCA9IDU7CiAgICAgICAgdmFyIGlzU2hvd0NvbmNpc2lvbiA9IHRydWUKICAgICAgICB2YXIgbGFzdFRpbWUgPSAwCiAgICAgICAgdmFyIHBvc3RUaW1lID0gIjIwMjAtMTItMjUgMTQ6MTY6NTMiCiAgICAgIHZhciBpc0Nvb2tpZUNvbmNpc2lvbiA9IGZhbHNlCiAgICAgIHZhciBpc0hhc0RpcmVjdG9yeU1vZGVsID0gZmFsc2UKICAgICAgdmFyIGlzU2hvd1NpZGVNb2RlbCA9IGZhbHNlCiAgICAgIHZhciBpc1Nob3dEaXJlY3RvcnlNb2RlbCA9IHRydWUKICAgICAgZnVuY3Rpb24gZ2V0Q29va2llQ29uY2lzaW9uKHNOYW1lKXsKICAgICAgICB2YXIgYWxsQ29va2llID0gZG9jdW1lbnQuY29va2llLnNwbGl0KCI7ICIpOwogICAgICAgIGZvciAodmFyIGk9MDsgaSA8IGFsbENvb2tpZS5sZW5ndGg7IGkrKyl7CiAgICAgICAgICB2YXIgYUNydW1iID0gYWxsQ29va2llW2ldLnNwbGl0KCI9Iik7CiAgICAgICAgICBpZiAoc05hbWUgPT0gYUNydW1iWzBdKQogICAgICAgICAgICByZXR1cm4gYUNydW1iWzFdOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICBpZiAoZ2V0Q29va2llQ29uY2lzaW9uKCdibG9nX2RldGFpbHNfY29uY2lzaW9uJykgJiYgZ2V0Q29va2llQ29uY2lzaW9uKCdibG9nX2RldGFpbHNfY29uY2lzaW9uJykgPT0gMCl7CiAgICAgICAgaXNDb29raWVDb25jaXNpb24gPSB0cnVlCiAgICAgICAgaXNTaG93U2lkZU1vZGVsID0gdHJ1ZQogICAgICAgIGlzU2hvd0RpcmVjdG9yeU1vZGVsID0gZmFsc2UKICAgICAgfQogICAgPC9zY3JpcHQ+CiAgICAgICAgPGRpdiBjbGFzcz0ibWFpbl9mYXRoZXIgY2xlYXJmaXggZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgbWFpbmZhdGhlci1jb25jaXNpb24iIHN0eWxlPSJoZWlnaHQ6MTAwJTsiPgogICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIGNsZWFyZml4IGNvbnRhaW5lci1jb25jaXNpb24iIGlkPSJtYWluQm94Ij4KICAgICAgICAgIDxzY3JpcHQ+CiAgICAgICAgICBpZiAoIWlzQ29va2llQ29uY2lzaW9uKSB7CiAgICAgICAgICAgICQoJy5tYWluX2ZhdGhlcicpLnJlbW92ZUNsYXNzKCdtYWluZmF0aGVyLWNvbmNpc2lvbicpCiAgICAgICAgICAgICQoJy5tYWluX2ZhdGhlciAuY29udGFpbmVyJykucmVtb3ZlQ2xhc3MoJ2NvbnRhaW5lci1jb25jaXNpb24nKQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgJCgnI21haW5Cb3gnKS5jc3MoJ21hcmdpbi1yaWdodCcsICcwJykKICAgICAgICAgIH0KICAgICAgICAgIDwvc2NyaXB0PgogICAgICAgICAgPG1haW4+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgIHZhciByZXNvdXJjZUlkID0gICIiOwogICAgZnVuY3Rpb24gZ2V0UXVlcnlTdHJpbmcobmFtZSkgeyAgIAogICAgICB2YXIgcmVnID0gbmV3IFJlZ0V4cCgiKF58JikiICsgbmFtZSArICI9KFteJl0qKSgmfCQpIik7IC8v5p6E6YCg5LiA5Liq5ZCr5pyJ55uu5qCH5Y+C5pWw55qE5q2j5YiZ6KGo6L6+5byP5a+56LGhICAKICAgICAgdmFyIHIgPSB3aW5kb3cubG9jYXRpb24uc2VhcmNoLnN1YnN0cigxKS5tYXRjaChyZWcpOyAgLy/ljLnphY3nm67moIflj4LmlbAKICAgICAgaWYoIHIgIT0gbnVsbCApIHJldHVybiBkZWNvZGVVUklDb21wb25lbnQoIHJbMl0gKTsgcmV0dXJuICcnOyAgIAogICAgfQogICAgZnVuY3Rpb24gc3RyaXBzY3JpcHQocyl7IAogICAgICB2YXIgcGF0dGVybiA9IG5ldyBSZWdFeHAoIltgfiFAIyReJiooKT18e30nOjsnLFxcW1xcXS48Pi8/fu+8gUAj77+l4oCm4oCmJirvvIjvvInigJTigJR8e33jgJDjgJHigJjvvJvvvJrigJ3igJwn44CC77yM44CB77yfJV0iKSAKICAgICAgdmFyIHJzID0gIiI7IAogICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHMubGVuZ3RoOyBpKyspIHsgCiAgICAgICAgcnMgPSBycytzLnN1YnN0cihpLCAxKS5yZXBsYWNlKHBhdHRlcm4sICcnKTsgCiAgICAgIH0gCiAgICAgIHJldHVybiByczsKICAgIH0KICAgIHZhciBibG9nSG90V29yZHMgPSBzdHJpcHNjcmlwdChnZXRRdWVyeVN0cmluZygndXRtX3Rlcm0nKSkubGVuZ3RoID4gMSA/IHN0cmlwc2NyaXB0KGdldFF1ZXJ5U3RyaW5nKCd1dG1fdGVybScpKSA6ICcnCjwvc2NyaXB0Pgo8ZGl2IGNsYXNzPSJibG9nLWNvbnRlbnQtYm94Ij4KICAgIDxkaXYgY2xhc3M9ImFydGljbGUtaGVhZGVyLWJveCI+CiAgICAgICAgPGRpdiBjbGFzcz0iYXJ0aWNsZS1oZWFkZXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJhcnRpY2xlLXRpdGxlLWJveCI+CiAgICAgICAgICAgICAgICA8aDEgY2xhc3M9InRpdGxlLWFydGljbGUiIGlkPSJhcnRpY2xlQ29udGVudElkIj7ogrrnu5PoioLnm67moIfmo4DmtYtf44CQ6IK657uT6IqC6K+G5Yir44CRM0QgRGVlcCBMZWFreSBOb2lzeS1vciBOZXR3b3Jr6K665paHPC9oMT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFydGljbGUtaW5mby1ib3giPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXJ0aWNsZS1iYXItdG9wIj4KICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJhcnRpY2xlLXR5cGUtaW1nIiBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy9vcmlnaW5hbC5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJiYXItY29udGVudCI+CiAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL21hbGwuY3Nkbi5uZXQvdmlwIiBkYXRhLXJlcG9ydC1xdWVyeT0ic3BtPTMwMDEuMTA0MDQiICBkYXRhLXJlcG9ydC1jbGljaz0neyJzcG0iOiIzMDAxLjEwNDA0In0nIGRhdGEtcmVwb3J0LXZpZXc9J3sic3BtIjoiMzAwMS4xMDQwNCJ9JyAgY2xhc3M9ImFydGljbGUtdmlwLWJveCIgdGFyZ2V0PSJfYmxhbmsiPjxpbWcgY2xhc3M9ImFydGljbGUtdmlwLWltZy1uZXciIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL2lkZW50aXR5VmlwTmV3LnBuZyIgYWx0PSIiPjwvYT4KICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJmb2xsb3ctbmlja05hbWUgIiBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3IiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgdGl0bGU9IumVlueLrue9kSI+6ZWW54uu572RPC9hPgogICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9ImFydGljbGUtdGltZS1pbWcgYXJ0aWNsZS1oZWFyZC1pbWciIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL25ld0N1cnJlbnRUaW1lMi5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRpbWUiPuS6jiZuYnNwOzIwMjAtMTItMjUgMTQ6MTY6NTMmbmJzcDvlj5HluIM8L3NwYW4+CiAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWFkLWNvdW50LWJveCI+CiAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJhcnRpY2xlLXJlYWQtaW1nIGFydGljbGUtaGVhcmQtaW1nIiBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy9hcnRpY2xlUmVhZEV5ZXMyLnBuZyIgYWx0PSIiPgogICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InJlYWQtY291bnQiPumYheivu+mHjzEuM2s8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICA8YSBpZD0iYmxvZ19kZXRhaWxfemtfY29sbGVjdGlvbiIgY2xhc3M9InVuLWNvbGxlY3Rpb24iIGRhdGEtcmVwb3J0LWNsaWNrPSd7Im1vZCI6InBvcHVfODIzIiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNDIzMiIsImFiIjoibmV3In0nPgogICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9ImFydGljbGUtY29sbGVjdC1pbWcgYXJ0aWNsZS1oZWFyZC1pbWcgdW4tY29sbGVjdC1zdGF0dXMgaXNkZWZhdWx0IiBzdHlsZT0iZGlzcGxheTppbmxpbmUtYmxvY2siIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3RvYmFyQ29sbGVjdDIucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz0iYXJ0aWNsZS1jb2xsZWN0LWltZyBhcnRpY2xlLWhlYXJkLWltZyBjb2xsZWN0LXN0YXR1cyBpc2FjdGl2ZSIgc3R5bGU9ImRpc3BsYXk6bm9uZSIgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvdG9iYXJDb2xsZWN0aW9uQWN0aXZlMi5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmFtZSI+5pS26JePPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJnZXQtY29sbGVjdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwCiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVhZC1jb3VudC1ib3ggaXMtbGlrZSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9ImFydGljbGUtcmVhZC1pbWcgYXJ0aWNsZS1oZWFyZC1pbWciIHN0eWxlPSJkaXNwbGF5Om5vbmUiIGlkPSJpcy1saWtlLWltZ2FjdGl2ZS1uZXciIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL25ld0hlYXJ0MjAyM0FjdGl2ZS5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz0iYXJ0aWNsZS1yZWFkLWltZyBhcnRpY2xlLWhlYXJkLWltZyIgc3R5bGU9ImRpc3BsYXk6YmxvY2siIGlkPSJpcy1saWtlLWltZy1uZXciIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL25ld0hlYXJ0MjAyM0JsYWNrLnBuZyIgYWx0PSIiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icmVhZC1jb3VudCIgaWQ9ImJsb2ctZGlnZy1udW0iPueCuei1nuaVsAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMgogICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJsb2ctdGFncy1ib3giPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhZ3MtYm94IGFydGljLXRhZy1ib3giPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImxhYmVsIj7mlofnq6DmoIfnrb7vvJo8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgcmVsPSJub2ZvbGxvdyIgZGF0YS1yZXBvcnQtcXVlcnk9InNwbT0xMDAxLjIxMDEuMzAwMS40MjIzIiBkYXRhLXJlcG9ydC1jbGljaz0neyJtb2QiOiJwb3B1XzYyNiIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjQyMjMiLCJzdHJhdGVneSI6IuiCuue7k+iKguebruagh+ajgOa1iyIsImFiIjoibmV3IiwiZXh0cmEiOiJ7XCJzZWFyY2h3b3JkXCI6XCLogrrnu5PoioLnm67moIfmo4DmtYtcIn0ifScgZGF0YS1yZXBvcnQtdmlldz0neyJtb2QiOiJwb3B1XzYyNiIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjQyMjMiLCJzdHJhdGVneSI6IuiCuue7k+iKguebruagh+ajgOa1iyIsImFiIjoibmV3IiwiZXh0cmEiOiJ7XCJzZWFyY2h3b3JkXCI6XCLogrrnu5PoioLnm67moIfmo4DmtYtcIn0ifScgY2xhc3M9InRhZy1saW5rIiBocmVmPSJodHRwczovL3NvLmNzZG4ubmV0L3NvL3NlYXJjaC9zLmRvP3E9JUU4JTgyJUJBJUU3JUJCJTkzJUU4JThBJTgyJUU3JTlCJUFFJUU2JUEwJTg3JUU2JUEzJTgwJUU2JUI1JThCJmFtcDt0PWFsbCZhbXA7bz12aXAmYW1wO3M9JmFtcDtsPSZhbXA7Zj0mYW1wO3ZpcGFydGljbGU9JmFtcDtmcm9tX3RyYWNraW5nX2NvZGU9dGFnX3dvcmQmYW1wO2Zyb21fY29kZT1hcHBfYmxvZ19hcnQiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIj7ogrrnu5PoioLnm67moIfmo4DmtYs8L2E+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNsaWRlLWNvbnRlbnQtYm94Ij4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhcnRpY2xlLWNvcHlyaWdodCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNyZWF0aXZlY29tbW9ucyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICDniYjmnYPlo7DmmI7vvJrmnKzmlofkuLrljZrkuLvljp/liJvmlofnq6DvvIzpgbXlvqo8YSBocmVmPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS1zYS80LjAvIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciI+IENDIDQuMCBCWS1TQSA8L2E+54mI5p2D5Y2P6K6u77yM6L2s6L296K+36ZmE5LiK5Y6f5paH5Ye65aSE6ZO+5o6l5ZKM5pys5aOw5piO44CCCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhcnRpY2xlLXNvdXJjZS1saW5rIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIOacrOaWh+mTvuaOpe+8mjxhIGhyZWY9Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDcvYXJ0aWNsZS9kZXRhaWxzLzExMjI3MTE5NSIgdGFyZ2V0PSJfYmxhbmsiPmh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDcvYXJ0aWNsZS9kZXRhaWxzLzExMjI3MTE5NTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ib3BlcmF0aW5nIj4KICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iaHJlZi1hcnRpY2xlLWVkaXQgc2xpZGUtdG9nZ2xlIj7niYjmnYM8L2E+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CgogICAgPC9kaXY+CiAgICA8ZGl2IGlkPSJibG9nSHVhd2VpeXVuQWR2ZXJ0Ij48L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iYWktYWJzdHJhY3QtYm94Ij4KICAgICAgICAgPGRpdiBjbGFzcz0iYWktYWJzdHJhY3QiPgogICAgICAgICAgPGRpdiBjbGFzcz0iYWJzdHJhY3QtY29udGVudCI+CiAgICAgICAgICAgIDxpbWcgY2xhc3M9ImxvY2staW1nIiBzcmM9Imh0dHBzOi8vaW1nLWhvbWUuY3NkbmltZy5jbi9pbWFnZXMvMjAyNDA3MTEwNDI1NDkucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgIOacrOaWh+S7i+e7jeS6huS9v+eUqDNEIERlZXAgTGVha3kgTm9pc3ktb3IgTmV0d29ya+i/m+ihjOiCuue7k+iKguajgOa1i+WSjOiCuueZjOWIhuexu+eahOeglOeptu+8jOivpeaWueazleWcqDIwMTflubRrYWdnbGXmlbDmja7np5Hlrabnopfmr5TotZvkuK3ojrflvpfnrKzkuIDlkI3jgILorrrmlofor6bnu4bpmJDov7DkuobmlbDmja7pooTlpITnkIbjgIFOLU5ldOWSjEMtTmV0572R57uc57uT5p6E44CB5q2j6LSf5qC35pys5bmz6KGh562W55Wl5Lul5Y+K5Zuw6Zq+6LSf5qC35pys5oyW5o6Y562J5YWz6ZSu5q2l6aqk77yM5bGV56S65LqG5Zyo6IK66YOo55a+55eF6Ieq5Yqo6K+K5pat5Lit55qE5r2c5Zyo5Lu35YC844CCDQogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8c3Bhbj7mkZjopoHnlLFDU0RO6YCa6L+H5pm66IO95oqA5pyv55Sf5oiQPC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDxhcnRpY2xlIGNsYXNzPSJiYWlkdV9wbCI+CiAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZV9jb250ZW50IiBjbGFzcz0iYXJ0aWNsZV9jb250ZW50IGNsZWFyZml4Ij4KICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L21kZWRpdG9yL2Nzcy9lZGl0ZXJWaWV3L2tkb2NfaHRtbF92aWV3cy0xYTk4OTg3ZGZkLmNzcyI+CiAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9tZGVkaXRvci9jc3MvZWRpdGVyVmlldy9ja19odG1sZWRpdF92aWV3cy03MDRkNWI5NzY3LmNzcyI+CiAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImNvbnRlbnRfdmlld3MiIGNsYXNzPSJodG1sZWRpdF92aWV3cyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdj4gCiA8cD48L3A+IAogPGRpdiBzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXI7Ij4gCiAgPGltZyBzcmM9Imh0dHBzOi8vaS1ibG9nLmNzZG5pbWcuY24vYmxvZ19taWdyYXRlL2Q4MTExNDA1M2E4YThmYjgwNTVmOTliZmZiMWE0ZjdiLmpwZWciIGFsdD0iNTRlY2EwMjk1NThlZmUwMDE3MGRlZDdjNjA0ZGJhOTYucG5nIiAvPiAKIDwvZGl2PiAKIDxwPuiuuuaWh+WcsOWdgCYjeGZmMWE7RXZhbHVhdGUgdGhlIE1hbGlnbmFuY3kgb2YgUHVsbW9uYXJ5IE5vZHVsZXMgVXNpbmcgdGhlIDNEIERlZXAgTGVha3kgTm9pc3ktb3IgTmV0d29yazwvcD4gCiA8cD5naXRodWLlnLDlnYAmI3hmZjFhOzNEIERlZXAgTGVha3kgTm9pc3ktb3IgTmV0d29yazwvcD4gCiA8aDM+MS4g5qaC6L+wPC9oMz4gCiA8dWw+PGxpPuiCuueZjOiHquWKqOiviuaWrea1geeoiyYjeGZmMWE75YWI5qOA5rWL5Ye66IK657uT6IqCJiN4ZmYwYzvlho3or4TkvLDmlbTkuKrogrrpg6jnmoTmgbbmgKfnqIvluqY8L2xpPjxsaT7ogrrnmYzoh6rliqjor4rmlq3pmr7ngrkmI3hmZjFhOyAKICAgPHVsPjxsaT7ogrrnu5PoioLlkozogrrnmYznmoTlhbPns7vlpI3mnYI8L2xpPjxsaT7ogrrnu5PoioLnmoTlpKflsI/jgIHlvaLmgIHlpJrlj5g8L2xpPjxsaT7ogrrpg6jor4rmlq3pnIDogIPomZHmiYDmnInogrrnu5PoioI8L2xpPjxsaT4zRCBjbm7nmoRtZW1vcnnpnIDmsYLlpKcmI3hmZjBjO+agh+azqOavlDJEIGNubuabtOWbsOmavjwvbGk+PC91bD48L2xpPjxsaT7mnKzmlofmj5Dlh7omI3hmZjFhOyAKICAgPHVsPjxsaT7kuInnu7Tmt7HluqbnpZ7nu4/nvZHnu5wmI3hmZjA4OzNEIGRlZXAgbmV1cmFsIG5ldHdvcmsmI3hmZjA5O+WMheWQqyAmI3hmZjFhO+ajgOa1i+iCuue7k+iKgueahE5vZHVsZSBEZXRlY3RvciBOZXQoTi1OZXQp5ZKMQ2FzZSBDbGFzc2lmaWNhdGlvbiBOZXQmI3hmZjA4O0MtTmV0KTwvbGk+PGxpPmxlYWt5IG5vaXN5LW9y5pa55rOV5pW05ZCIbXVsdGktaW5zdGFuY2UgbGVhcm5pbmcgdGFza+eahOe7k+aenDwvbGk+PC91bD48L2xpPjxsaT7mnKzmlofmiJDlsLEmI3hmZjFhOzIwMTflubQga2FnZ2xlIGRhdGEgc2NpZW5jZSBib3ds56ys5LiA5ZCNPC9saT48L3VsPiAKIDxoMz4yLiDmlbDmja7pm4Y8L2gzPiAKIDx1bD48bGk+5q+U6LWb5o+Q5L6bPGI+RFNCPC9iPiYjeGZmMDg7RGF0YSBTY2llbmNlIEJvd2wgMjAxNyYjeGZmMDk7OiAxMzk35Liq55eF5L6L6K6t57uDJiN4ZmYwYzsxOTjkuKrnl4Xkvovpqozor4EmI3hmZjBjOzUwNuS4queXheS+i+a1i+ivlSYjeGZmMGM75qCH5rOo5LqG5q+P5Liq55eF5Lq655qE5LqM5YC85pWw5o2uJiN4ZmYwYzsxLzAmI3hmZjA4O+S4gOW5tOWGheeXheS6uuaYr+WQpuW+l+eXhSYjeGZmMDk7JiN4ZmYxYjs8L2xpPjxsaT7pop3lpJblhazlvIDmlbDmja7pm4Y8Yj5MVU5BPC9iPiYjeGZmMDg7dGhlIEx1bmcgTm9kdWxlIEFuYWx5c2lzIDIwMTYmI3hmZjA5OzogODg45Liq55eF5L6LJiN4ZmYwYzvmoIfms6jkuoYxMTg25Liq6IK657uT6IqC5L2N572uPC9saT48L3VsPiAKIDxwPkRTQuWSjExVTkHmlbDmja7pm4bnmoTlt67lvIImI3hmZjFhOzHjgIFMVU5B5qC35pys55qE6IK657uT6IqC5q+URFNC55qE5bCPJiN4ZmYxYjsy44CBRFNC5pyJ6K645aSa55eF55CG55qE6IK657uT6IqC6ZW/5Zyo5Li75pSv5rCU566hJiN4ZmYwODtMVU5B6L6D5bCRJiN4ZmYwOTsmI3hmZjFiOzPjgIFEU0LmlbDmja7pm4bml6Dogrrnu5PoioLmoIfms6g8L3A+IAogPHA+5Li657uf5LiA5Lik5Liq5pWw5o2u6ZuGJiN4ZmYwYzvliKDpmaRMVU5B5Lit55u05b6E5bCP5LqONm1t55qE6IK657uT6IqCJiN4ZmYwODvkuLTluornu4/pqozorqTkuLrnm7TlvoQ2bW3ku6XkuIvnmoTogrrnu5PoioLpgJrluLjml6DljbHpmakmI3hmZjA5O+OAguWPpiYjeGZmMGM7PGI+5Lq65bel5qCH5rOoRFNC6K6t57uD6ZuG5LitNzU05Liq57uT6IqC5ZKM6aqM6K+B6ZuG5LitNzjkuKrnu5PoioI8L2I+44CCPC9wPiAKIDxoMz4zLiDmlbDmja7pooTlpITnkIY8L2gzPiAKIDxwPuaVsOaNrumihOWkhOeQhjxiPuebrueahOWcqOS6juaPkOWPluiCuumDqOWMuuWfnzwvYj4mI3hmZjBjO+W5tuWOu+mZpOiCuumDqOWRqOi+ueWZquWjsOOAgjwvcD4gCiA8cD4xJiN4ZmYwOTvmjqnohpzmj5Dlj5YmI3hmZjA4O21hc2sgZXh0cmFjdGlvbiYjeGZmMDk7JiN4ZmYxYTvkuozlgLzljJYgMkTlm77niYcmI3hmZjBjO+WMuuWIhuiCuuWMuuWfn+WSjOmdnuiCuuWMuuWfnzxiciAvPjImI3hmZjA5O+WHuOWMheWSjOaJqeW8oCYjeGZmMDg7Y29udmV4IGh1bGwmYW1wOyBkaWxhdGlvbiYjeGZmMDk7JiN4ZmYxYTvoi6Xnu5PoioLplb/lnKjogrrnmoTlpJbovrnnlYzkuIomI3hmZjBjO+aOqeiGnOaPkOWPluS4jeWIsCYjeGZmMGM75Zug5q2k5a+55bem5Y+z6IK66L+b6KGM5Ye45YyF5aSE55CGJiN4ZmYwYzvlubblkJHlpJbmianlvKAxMOWDj+e0oDwvcD4gCiA8cD4zJiN4ZmYwOTvngbDluqbmoIflh4bljJYmI3hmZjFhO+WwhkhV5YC8JiN4ZmYwODtbLTEyMDAsIDYwMF0mI3hmZjA5O+e6v+aAp+WPmOaNouiHszB+MjU15YaF55qE54Gw5bqm5YC8JiN4ZmYwYzvkuJRtYXNr5Lul5aSW55qE5YOP57Sg54Gw5bqm5YC85Z2H6K6+5Li6MTcwJiN4ZmYwYzvkuLrpgb/lhY3ogrrnu5PoioLliIbnsbvlubLmibAmI3hmZjBjO+aJqeW8oOWMuuWfn+WGheeahOWDj+e0oOeBsOW6puWAvOmrmOS6jjIxMCYjeGZmMDg76aqo57uE57uHJiN4ZmYwOTvkuZ/orr7kuLoxNzDjgII8L3A+IAogPHA+5rOoJiN4ZmYxYTtIVeWAvOWPiOensOKAmENU5YC84oCZJiN4ZmYwYzvojIPlm7TkuLpbLTEwMDAsMTAwMF0sIOaYr+S6uuS9k+WvuXjlsITnur/nmoTlkLjmlLbns7vmlbAmI3hmZjBjO+WvhuW6pui2iuWkp+eahOS6uuS9k+e7hOe7h+eahEhV5YC86LaK5aSnLOepuuawlOeahEhV5YC85bCP44CCPC9wPiAKIDxwPjwvcD4gCiA8ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRlcjsiPiAKICA8aW1nIHNyYz0iaHR0cHM6Ly9pLWJsb2cuY3NkbmltZy5jbi9ibG9nX21pZ3JhdGUvYmQxYWIyYzIwZGVjM2QyZDU4OWIyMDJlNzY1NGExNGQuanBlZyIgYWx0PSJjZWVmYzY5ZTZkNjdmYTFmMGE0MGRlYzYwZTE1OWIyNS5wbmciIC8+IAogPC9kaXY+IAogPGgzPjQuIDNEIOiCuue7k+iKguajgOa1i+e9kee7nChOLU5ldCk8L2gzPiAKIDxoMz40LjEg6K6t57uD6L6T5YWl5pWw5o2uPC9oMz4gCiA8cD7nlLHkuo5tZW1vcnnpmZDliLYmI3hmZjBjO+e9kee7nOi+k+WFpeS4ujNE55qEcGF0Y2gmI3hmZjA4O+Wwj+Wdl+eahGN1YmUmI3hmZjA5OyYjeGZmMGM757u05bqm5Li6MTI4eDEyOHgxMjh4MSYjeGZmMGM7MeaYr+eBsOW6pmNoYW5uZWzjgIJwYXRjaOmaj+acuumAieWPliYjeGZmMGM7NzAl55qEcGF0Y2joh7PlsJHljIXlkKvkuIDkuKrnu5PoioImI3hmZjBjOzMwJeeahHBhdGNo5LiN5ZCr57uT6IqCJiN4ZmYwYztwYXRjaOi2heWHuuWbvuWDj+mDqOWIhueUqOeBsOW6puWAvOS4ujE3MOWhq+WFheOAgjwvcD4gCiA8cD7kuLrpmLLmraLov4fmi5/lkIgmI3hmZjBjO3BhdGNo5pWw5o2u6L+b6KGM6ZqP5py65rC05bmz57+76L2sJiN4ZmYwYztyZXNpemXjgII8L3A+IAogPGgzPjQuMiDnvZHnu5znu5PmnoQ8L2gzPiAKIDxwPk4tTmV0572R57uc6K6+6K6h5Y+XVS1OZXTlkK/lj5EmI3hmZjBjO+WfuuS6jjNEIGNubiYjeGZmMGM755SoMTI4eDEyOHgxMjjnmoRjdWJl5omr5o+P5omr5pW05Liq6IK65Yy65Z+fJiN4ZmYwYzvov5Tlm57mr4/kuKpjdWJl5Lit5Y+v6IO95YyF5ZCr57uT6IqC55qEYW5jaG9yJiN4ZmYwYzvop4HkuIvlm748L3A+IAogPHVsPjxsaT7lm77kuK3mr4/kuKo8Yj5jdWJl6YO95pivNOe7tOeahDwvYj4mI3hmZjBjO2N1YmXmraPpnaLmlbDlrZflj6/ooajnpLrplb/lrr3pq5gmI3hmZjBjO+mhtuS4iuaVsOWtl+S4umNoYW5uZWw8L2xpPjxsaT7mlbDmja7ovpPlhaXnu7TluqYmI3hmZjFhOzEyOHgxMjh4MTI4eDE8L2xpPjxsaT7mlbDmja7ovpPlh7rnu7TluqYmI3hmZjFhOzMyeDMyeDMyeCYjeGZmMDg7NSozJiN4ZmYwOTsmI3hmZjBjOzXku6PooahzaWdtb2lk6L6T5Ye65qaC546H5ZKMNOS4quWdkOagh+i9rOaNouezu+aVsCYjeGZmMGM7M+S7o+ihqOmVv+WIhuWIq+aYrzEwJiN4ZmYwYzszMCYjeGZmMGM7NjBtbeeahDPkuKphbmNob3I8L2xpPjxsaT5rZXJuZWwgc2l6ZSYjeGZmMWE75omA5pyJZmVlZCBmb3J3YXJk55qE5Y2356ev5qC457u05bqm5Li6M3gzeDN4Y2hhbm5lbCYjeGZmMGM7cGFkZGluZyYjNjE7MSYjeGZmMWI75omA5pyJ5Y+N5Y2356eva2VybmVsIHNpemUmIzYxOzImI3hmZjBjO3N0cmlkZSYjNjE7MjwvbGk+PGxpPua3seapmeiJsmN1YmUmI3hmZjFhO+agueaNruiCuuWMuuWfn+agh+WHhuWMluWQjueahHBhdGNo5Z2Q5qCH5L+h5oGvJiN4ZmYwYzvnu7TluqbmmK8zMngzMngzMngzJiN4ZmYwYzvlgLzln59bLTEsMV08L2xpPjxsaT5r5Y2356ev5bGCJiN4ZmYxYTvnrKzkuIDmjpLnmoRr55qE5Lik5Liq5Y2356ev5bGC55qE5Y2356ev5qC46YO95pivM3gzeDN4MjQmI3hmZjFiO+esrOS6jOaOkueahGvnmoTkuKTkuKrljbfnp6/lsYLnmoTljbfnp6/moLjliIbliKvmmK8xeDF4MXg2NOWSjDF4MXgxeDE1PC9saT48L3VsPiAKIDxwPjwvcD4gCiA8ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRlcjsiPiAKICA8aW1nIHNyYz0iaHR0cHM6Ly9pLWJsb2cuY3NkbmltZy5jbi9ibG9nX21pZ3JhdGUvOGJmZGJjYTI1OTI4YzY3ZGRiNmYzYjBmNmNkY2VkYjcuanBlZyIgYWx0PSJiNjYyNzI5NmNhMjI0Nzg2ZWExNDdiYTJhYmVjYTRlOC5wbmciIC8+IAogPC9kaXY+IAogPGgzPjQuMyDmjZ/lpLHlh73mlbA8L2gzPiAKIDxwPuWSjGZhc3RlciByY25uIHJwbue9kee7nOaNn+WkseWHveaVsOexu+S8vOOAgjwvcD4gCiA8cD48L3A+IAogPGRpdiBzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXI7Ij4gCiAgPGltZyBzcmM9Imh0dHBzOi8vaS1ibG9nLmNzZG5pbWcuY24vYmxvZ19taWdyYXRlL2QwY2JkZTdlYWQ4MjQ1NmQxMTI0NTY0NGI2ODBlOTU3LmpwZWciIGFsdD0iMDg2NzVhZDk5OTM3ZDhkZDAxMDY4OWE2NjI0MWFmMTcucG5nIiAvPiAKIDwvZGl2PiAKIDxwPuazqCYjeGZmMWE75LiK5Zu+5Lit55qEcOS4uuaMh+ekuuWPmOmHjyYjeGZmMGM7YW5jaG9y5piv5q2j5qC35pys5pe2cCYjNjE7MSYjeGZmMGM75piv6LSf5qC35pys5pe2cCYjNjE7MDwvcD4gCiA8aDM+NC40IOato+i0n+agt+acrOWdh+ihoTwvaDM+IAogPHVsPjxsaT7lpKfogrrnu5PoioLkvJrkuqfnlJ/lvojlpJrmraNhbmNob3ImI3hmZjBjO+maj+acuumAieaLqeS4gOS4qmFuY2hvciYjeGZmMGM75Lul5YeP5bCP6K6t57uD5qC35pys55qE55u45YWz5oCnPC9saT48bGk+5aSn6IK657uT6IqC55qE5pWw5o2u6YeP5q+U5bCP6IK657uT6IqC5bCR5b6I5aSaJiN4ZmYwYzvlm6DmraQmI3hmZjBjO+WvueWkp+S6jjMwbW3lkow0MG1t55qE57uT6IqCJiN4ZmYwYzvph4fmoLfpopHnjofliIbliKvmmK/lhbbku5bnu5PoioLnmoQy5YCN5ZKMNuWAjeOAgjwvbGk+PC91bD4gCiA8aDM+NC41IOWbsOmavui0n+agt+acrOaMluaOmDwvaDM+IAogPHA+5a+55a655piT6K+v6K+K5Li657uT6IqC55qE6LSfYW5jaG9yJiN4ZmYwYzvov5vooYzlm7Dpmr7otJ/moLfmnKzmjJbmjpjjgILlhbfkvZPlnLAmI3hmZjBjOzwvcD4gCiA8cD4x44CB6ZqP5py66YCJ5oupTuS4qui0n2FuY2hvciYjeGZmMDg75YeP5bCP6LSf5qC35pys55u45YWz5oCnJiN4ZmYwOTs8L3A+IAogPHA+MuOAgeagueaNrue9kee7nOi+k+WHuueahGNsYXNzaWZpY2F0aW9uIHNjb3Jl5o6S5bqP6L+ZTuS4qui0n2FuY2hvcjwvcD4gCiA8cD4z44CB6YCJ5oup5o6S5bqPdG9wIG7nmoTotJ9hbmNob3LorqHnrpdsb3NzJiN4ZmYwYzvlj43kvKDmm7TmlrDlj4LmlbA8L3A+IAogPGgzPjQuNiDmtYvor5Xov4fnqIs8L2gzPiAKIDx1bD48bGk+55Sx5LqOR1BV6ZmQ5Yi2JiN4ZmYwYzvov5jmmK/pgInmi6novpPlhaVwYXRjaCYjeGZmMGM757u05bqm5Li6MjA4eDIwOHgyMDh4MTwvbGk+PGxpPue9kee7nOi+k+WHuuiCuue7k+iKgnByb3Bvc2Fs55qEe+S4reW/g3jlnZDmoIcmI3hmZjBjO+S4reW/g3nlnZDmoIcmI3hmZjBjO+S4reW/g3rlnZDmoIcmI3hmZjBjO+WNiuW+hCYjeGZmMGM75piv57uT6IqC55qE5qaC546H5YC8fTwvbGk+PGxpPuS9v+eUqE5NU+WOu+mZpG92ZXJsYXBwaW5nIHByb3Bvc2FsPC9saT48L3VsPiAKIDxoMz41LiDogrrnu5PoioLnmYznl4fliIbnsbvnvZHnu5wmI3hmZjA4O0MtTmV0KTwvaDM+IAogPGgzPjUuMSDovpPlhaXmlbDmja48L2gzPiAKIDxwPk4tTmV06L6T5Ye655qENeS4qmN1YmUgcHJvcG9zYWwmI3hmZjBjO+e7tOW6puS4ujk2eDk2eDk2eDEmI3hmZjA4O+S7peiCuue7k+iKgiYjeGZmMWY7cHJvcG9zYWwmI3hmZjFmO+S4uuS4reW/g+ijgeWJqueahCYjeGZmMDk7JiN4ZmYwYzvorq3nu4Pml7bmoLnmja5jdWJl55qE5qaC546H6ZqP5py66YCJ5oupNeS4qmN1YmUmI3hmZjA4O+mYsui/h+aLn+WQiCYjeGZmMDk7JiN4ZmYwYzvmtYvor5Xml7bmoLnmja5jdWJl55qE5qaC546H6YCJ5oupdG9wNeeahGN1YmXjgII8L3A+IAogPGgzPjUuMiDnvZHnu5znu5PmnoQ8L2gzPiAKIDxwPuWPlk4tTmV06L6T5Ye655qE5qaC546H6L6D6auY55qENeS4qmN1YmUgcHJvcG9zYWwmI3hmZjBjO+e7j+WNt+enr+WxguW5tuS9v+eUqExlYWt5IE5vaXN5LW9yIOaWueazleiuoeeul+WHuueXheS6uuacieeZjOeXh+eahOamgueOhyYjeGZmMGM76KeB5LiL5Zu+44CCPC9wPiAKIDx1bD48bGk+6L6T5YWl5pWw5o2uJiN4ZmYxYTvnu7TluqbkuLo5Nng5Nng5NngxPC9saT48bGk+5a+55q+P5LiqcHJvcG9zYWwmI3hmZjBjO+WGjeasoWZlZWTov5tOLU5ldOeUn+aIkDI0eDI0eDI0eDEyOCBmZWF0dXJlIG1hcCYjeGZmMGM75bCGcHJvcG9zYWzkuK3lv4PnmoQyeDJ4MngxMjjnmoTkvZPntKBtYXggcG9vbGluZ+WIsOS4gOS4qjEyOOe7tOeahGZlYXR1cmU8L2xpPjwvdWw+IAogPHA+PC9wPiAKIDxkaXYgc3R5bGU9InRleHQtYWxpZ246Y2VudGVyOyI+IAogIDxpbWcgc3JjPSJodHRwczovL2ktYmxvZy5jc2RuaW1nLmNuL2Jsb2dfbWlncmF0ZS9iOTIyOWJlYzQ0MzU2MjFkZjY5NjIyYjM1NTk4YTk4My5qcGVnIiBhbHQ9IjVhYmU2MGQ0M2MwYjZlYTQxODIzNDQ3MDIyMzc5NjZjLnBuZyIgLz4gCiA8L2Rpdj4gCiA8aDM+NS4zIGZlYXR1cmXmlbTlkIjmlrnms5U8L2gzPiAKIDxwPuaWh+S4reiuqOiuuuS6huS7peS4izTnp41mZWF0dXJl57uE5ZCI5pa55rOVJiN4ZmYwYzvmnIDnu4jkvb/nlKjnmoRsZWFreSBub2lzeS1vcuaWueazleaVtOWQiDXkuKpwcm9wb3NhbOeUn+aIkOeahGZlYXR1cmXlkozlubborqHnrpflh7rmlbTkuKrogrrpg6jmgqPnmYznmoTmpoLnjofjgII8L3A+IAogPHA+PC9wPiAKIDxkaXYgc3R5bGU9InRleHQtYWxpZ246Y2VudGVyOyI+IAogIDxpbWcgc3JjPSJodHRwczovL2ktYmxvZy5jc2RuaW1nLmNuL2Jsb2dfbWlncmF0ZS9jZTAwMDU5YjRhYTEwNWMxMGYxZjNlZjU1MTRjNzQ2ZS5qcGVnIiBhbHQ9IjcyZDcyOTZiYTZmZTM5OTIxNDgwMWMzMzQ4OTYzZGExLnBuZyIgLz4gCiA8L2Rpdj4gCiA8dWw+PGxpPlBpJiN4ZmYxYTvnrKxp5Liq57uT6IqC55mM5Y+Y55qE5qaC546HPC9saT48bGk+RmVhdHVyZSBjb21iJiN4ZmYxYTvlj6/op6Pph4rmgKflt648L2xpPjxsaT5NYXhQJiN4ZmYxYTvoi6VQMSYjNjE7UDLigKYmIzYxO1A1JiM2MTs1MCUsIE1heHDmlrnms5Xlvpflh7rnmoTmlbTkvZPmgqPnmYzmpoLnjodQJiM2MTs1MCUmI3hmZjBjO+S9huWMu+eUn+iviuaWreW6lOivpSZndDs1MCU8L2xpPjxsaT5Ob2lzeS1vciYjeGZmMWE76IulTi1OZXTmsqHog73mo4DmtYvlh7rmgbbmgKfnu5PoioImI3hmZjBjO+aVtOS9k+aCo+eZjOamgueOh1DnlLHoia/mgKfnu5PoioLlr7zoh7QmI3hmZjBjO+e9kee7nOWPjeS8oOWtpuS5oOWQjiYjeGZmMGM75L2/5b6X6Imv5oCn57uT6IqCY29udHJpYnV0ZeeahOamgueOh+WinuWkpyYjeGZmMGM76L+Z5LiN5ZCI5bi455CGJiN4ZmYwYztNYXhQ5pa55rOV5Lmf5pyJ5ZCM5qC355qE6Zeu6aKYPC9saT48bGk+TGVha3kgbm9pc3ktb3ImI3hmZjFhO+S4uumBv+WFjW5vaXN5LW9y5pa55rOV57y66Zm3JiN4ZmYwYzvlvJXlhaVkdW1teSBub2R1bGXnmYzlj5jnmoTmpoLnjodQZCYjeGZmMGM76K+l5Y+C5pWw55Sx5qih5Z6L6Ieq5Yqo5a2m5LmgPC9saT48L3VsPiAKIDxibG9ja3F1b3RlPgogICBOb2lzeS1vcumXqCYjeGZmMWE7NeS4que7k+iKgueZjOWPmOeahOamgueOh+S4rSYjeGZmMGM75Y+q6KaB5pyJ5LiA5Liq5q+U6L6D6auYJiN4ZmYwYzvpgqPkuYjmlbTkuKrogrrpg6jnmYzlj5jnmoTmpoLnjoflsLHkvJrpq5gmI3hmZjBjO+S+i+WmglAxJiM2MTs4MCUmI3hmZjBjO1AyJiM2MTtQMyYjNjE7UDQmIzYxO1A1JiM2MTsxJSYjeGZmMGM7UCYjNjE7MS0oMS0xJSleNCooMS04MCUpJiM2MTs4MC40OSUgCiAgPGJyIC8+TGVha3kgbm9pc3ktb3Lpl6gmI3hmZjFhO+iLpXkmIzYxOzEmI3hmZjA4O+eZjOWPmCYjeGZmMDk7JiN4ZmYwYztOLU5ldOi+k+WHuueahDXkuKrnu5PoioLnmoRwcm9wb3NhbOWPr+iDvSAKICA8Yj7pg73kuI3mmK88L2I+6YCg5oiQ6IK66YOo55mM5Y+Y55qE5Y6f5ZugJiN4ZmYwYzvmraTml7bkuI3lkIjnkIbjgILlm6DmraTlvJXlhaXkuIDkuKrlgYfnmoTnu5PoioImI3hmZjBjO+WFtueZjOWPmOeahOamgueOh1BkJiN4ZmYwYzvlpoLmnpxQMSYjNjE7UDImIzYxO1AzJiM2MTtQNCYjNjE7UDUmIzYxOzElJiN4ZmYwYztQZCYjNjE7MTAlJiN4ZmYwYzvliJlQJiM2MTsxLSgxLTEwJSkqKDEtMSUpXjUmIzYxOzE0LjQxJSYjeGZmMGM75q2k5pe26IK66YOo55mM5Y+Y5pu05pyJ5Y+v6IO95piv5YGH57uT6IqC6YCg5oiQ55qE44CCIAogPC9ibG9ja3F1b3RlPiAKIDxoMz41LjQg6K6t57uD6L+H56iLPC9oMz4gCiA8cD5DLU5ldOaNn+WkseWHveaVsOS4uuS6pOWPieeGtTwvcD4gCiA8ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRlcjsiPiAKICA8aW1nIHNyYz0iIiBhbHQ9IiIgLz4sIG7mmK/nsbvliKvnmoTkuKrmlbAmI3hmZjBjO3AoaSnmmK/nnJ/lrp7moIfnrb7mpoLnjofliIbluIMmI3hmZjBjO3EoaSnmmK/pooTmtYvmoIfnrb7mpoLnjofliIbluIPjgIIgCiA8L2Rpdj4gCiA8cD7kuLrpgb/lhY3ov4fmi5/lkIgmI3hmZjBjO+aTjeS9nOWmguS4iyYjeGZmMWE7PC9wPiAKIDx1bD48bGk+5pWw5o2u5aKe5by6IAogICA8dWw+PGxpPuS4ieS4quaWueWQkeeahOmaj+acumZsaXA8L2xpPjxsaT7moLnmja7lnKhbMC43NSwxLjI1XeS5i+mXtOeahOmaj+acuuaVsHJlc2l6ZTwvbGk+PGxpPuS7u+aEj+aWueWQkemaj+acunJvdGF0ZTwvbGk+PGxpPnNoaWZ0aW5nIGluIDMgZGlyZWN0aW9ucyB3aXRoIGEgcmFuZG9tIGRpc3RhbmNlIHNtYWxsZXIgdGhhbiAxNSUgb2YgdGhlIHJhZGl1czwvbGk+PC91bD48L2xpPjxsaT7mraPliJnljJYgCiAgIDx1bD48bGk+Z3JhZGllbnQgY2xpcHBpbmc8L2xpPjxsaT5iYXRjaCBub3JtYWxpemF0aW9uPC9saT48L3VsPjwvbGk+PC91bD4gCiA8cD7orq3nu4PmtYHnqIsmI3hmZjFhOzwvcD4gCiA8b2w+PGxpPuWFiOiuree7g+ajgOa1i+WZqCYjeGZmMGM7dHJhbnNmZXLmo4DmtYvlmajorq3nu4Plj4LmlbDlkI4mI3hmZjBjO+WGjeiuree7g+WIhuexu+WZqCYjeGZmMWI7PC9saT48bGk+6YeH55SoZ3JhZGllbnQgY2xpcHBpbmfmlrnms5Xorq3nu4PliIbnsbvlmagmI3hmZjBjO+maj+WQjuWtmOWCqEJOJiN4ZmYwODtCYXRjaCBOb3JtYWxpemF0aW9uJiN4ZmYwOTvlj4LmlbAmI3hmZjFiOzwvbGk+PGxpPueUqOWtmOWCqOeahEJO5Y+C5pWw5ZKMZ3JhZGllbnQgY2xpcHBpbmfmlrnms5U8Yj7kuqTmm7/orq3nu4M8L2I+5qOA5rWL5Zmo5ZKM5YiG57G75Zmo44CCPC9saT48L29sPiAKIDxoMz42LiDnlpHpl648L2gzPiAKIDx1bD48bGk+5qOA5rWL572R57uc5Li65LuA5LmI6K6+6K6hZGVjb252b2x1dGlvbuWxgiYjeGZmMWY7PC9saT48L3VsPiAKIDxwPlUtTmV0IGJhY2tib25lIGVuYWJsZWQgdGhlIG5ldHdvcmsgdG8gY2FwdHVyZSA8Yj5tdWx0aS1zY2FsZSBpbmZvcm1hdGlvbjwvYj4sIHdoaWNoIGlzIGVzc2VudGlhbCBiZWNhdXNlIHRoZSBzaXplIG9mIG5vZHVsZXMgaGFzIGxhcmdlIHZhcmlhdGlvbnMuPC9wPiAKIDxwPmRlY29udm9sdXRpb27lsYLlj6/op6PnoIHmlL7lpKdmZWF0dXJlIG1hcCYjeGZmMGM75o+Q5L6b5rWF5bGC5pu057K+57uG55qE54m55b6BJiN4ZmYwYzvliKnkuo7or63kuYnliIblibI8L3A+IAogPHVsPjxsaT5MZWFreSBub2lzeS1vciDnmoRQZOeUqOWkhOeQhuino+S4jeS6hjwvbGk+PC91bD4gCiA8cD7njrDlrp7nlJ/mtLvkuK0mI3hmZjBjO+mAoOaIkOiCuueZjOeahOWOn+WboOWPr+iDveaYr+aBtuaAp+e7k+iKgiYjeGZmMGM75L2GTi1OZXTlj6/og73mvI/mo4DmgbbmgKfnu5PoioImI3hmZjBjO+WboOatpOW9k1AxJiM2MTtQMiYjNjE7UDMmIzYxO1A0JiM2MTtQNSYjNjE7MOaXtiwg6IK655mM6L+Y5piv5Y+v6IO95Y+R55SfJiN4ZmYwYzvlm6DmraTlvJXlhaXkuIDkuKrlgYfnu5PoioLkvZzkuLrpgKDmiJDogrrnmYznmoTlhbbku5blm6DntKAmI3hmZjBjO+WFtuWPkeeUn+eahOamgueOh+aYr1Bk44CCPC9wPiAKIDxoMz43LiDmgJ3ogIM8L2gzPiAKIDxibG9ja3F1b3RlPgogICDljLvlrabpoobln5/mlbDmja7ph4/mnInpmZAmI3hmZjBjO+WPr+S7peWBmuaVsOaNruWinuW8uuWSjOato+WImeWMluadpemYsuatoui/h+aLn+WQiCYjeGZmMGM75Y+mJiN4ZmYwYzvms6jmhI/nu4boioLkuI3opoHorr7orqHlvpflpKrmrbsmI3hmZjBjO+avlOWmgiYjeGZmMWE7MeOAgeWbsOmavui0n+agt+acrOaMluaOmOmAieWPlui0n+agt+acrOOAgXJwbueahHByb3Bvc2Fs6YCJ5Y+W5b6X5YiG6auY5qC35pys6KaB5pyJ6ZqP5py65oCnJiN4ZmYwYzvkuI3mmK/nroDljZXmi790b3AgbiYjeGZmMGM76L+Z5qC35Lmf5Y+v5Lul6Ziy5q2i6L+H5ouf5ZCIJiN4ZmYxYjsgCiA8L2Jsb2NrcXVvdGU+IAogPGgzPjguIFJlZmVyZW5jZTwvaDM+IAogPHA+aHR0cDovL2Jpb2luZm8uYXUudHNpbmdodWEuZWR1LmNuL21lbWJlci9zamNoZW4vcmVwb3J0cy8yMDE3MDUxMS8yMDE3MDUxMU9uTm9kdWxlSWRlbnRpZmljYXRpb24uaHRtbDwvcD4gCiA8cD5odHRwczovL3d3dy5qaWFuc2h1LmNvbS9wLzUwMTU4ZjhkYWYwZDwvcD4gCiA8cD5odHRwczovL3d3dy56eWJ1bHVvLmNvbS9zaXhpamlubGluZy9ub3RlLzczMzkzMTwvcD4gCiA8cD5odHRwczovL3d3dy5uY2JpLm5sbS5uaWguZ292L3BtYy9hcnRpY2xlcy9QTUMyNjU2MDExLzwvcD4gCiA8cD5odHRwOi8vMTU5LjIyNi42NC4yMy9Kd2tfZGdkbi9DTi9hcnRpY2xlL2Rvd25sb2FkQXJ0aWNsZUZpbGUuZG8/YXR0YWNoVHlwZSYjNjE7UERGJmFtcDtpZCYjNjE7MTYyNDwvcD4gCiA8cD48Yj7ku6XkuIo8L2I+PC9wPiAKIDxwPi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLTwvcD4gCiA8cD7nn6XkuY7kuJPmoI8mI3hmZjFhO1BhcGVyIFJlYWRpbmcmI3hmZjBjO+mbhuiBmuiHquWKqOmpvumptuefpeWQjeWkp+WSlueahOWJjeayv+efpeivhuWIhuS6q+W5s+WPsCYjeGZmMGM75qyi6L+O55Sz6K+35Yqg5YWl5oiW55u05o6l5oqV56i/44CCPC9wPiAKPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KPGRpdiBpZD0icmVjb21tZW5kRG93biI+CjwvZGl2PiAgICA8L2FydGljbGU+CiAgPHNjcmlwdD4KICAgICQoZnVuY3Rpb24oKSB7CiAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewogICAgICAgIHZhciBtYXRoY29kZUxpc3QgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuaHRtbGVkaXRfdmlld3MgaW1nLm1hdGhjb2RlJyk7CiAgICAgICAgaWYgKG1hdGhjb2RlTGlzdC5sZW5ndGggPiAwKSB7CiAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG1hdGhjb2RlTGlzdC5sZW5ndGg7IGkrKykgewogICAgICAgICAgICBpZiAobWF0aGNvZGVMaXN0W2ldLmNvbXBsZXRlKSB7CiAgICAgICAgICAgICAgaWYgKG1hdGhjb2RlTGlzdFtpXS5uYXR1cmFsV2lkdGggPT09IDAgfHwgbWF0aGNvZGVMaXN0W2ldLm5hdHVyYWxIZWlnaHQgPT09IDApIHsKICAgICAgICAgICAgICAgIHZhciBhbHQgPSBtYXRoY29kZUxpc3RbaV0uYWx0OwogICAgICAgICAgICAgICAgYWx0ID0gJ1xcKCcgKyBhbHQgKyAnXFwpJzsKICAgICAgICAgICAgICAgIHZhciBjdXJTcGFuID0gJCgnPHNwYW4gY2xhc3M9ImltZy1jb2RlY29ncyI+PC9zcGFuPicpOwogICAgICAgICAgICAgICAgY3VyU3Bhbi50ZXh0KGFsdCk7CiAgICAgICAgICAgICAgICAkKG1hdGhjb2RlTGlzdFtpXSkuYmVmb3JlKGN1clNwYW4pOwogICAgICAgICAgICAgICAgJChtYXRoY29kZUxpc3RbaV0pLnJlbW92ZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICBtYXRoY29kZUxpc3RbaV0ub25lcnJvciA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgdmFyIGFsdCA9IG1hdGhjb2RlTGlzdFtpXS5hbHQ7CiAgICAgICAgICAgICAgICBhbHQgPSAnXFwoJyArIGFsdCArICdcXCknOwogICAgICAgICAgICAgICAgdmFyIGN1clNwYW4gPSAkKCc8c3BhbiBjbGFzcz0iaW1nLWNvZGVjb2dzIj48L3NwYW4+Jyk7CiAgICAgICAgICAgICAgICBjdXJTcGFuLnRleHQoYWx0KTsKICAgICAgICAgICAgICAgICQobWF0aGNvZGVMaXN0W2ldKS5iZWZvcmUoY3VyU3Bhbik7CiAgICAgICAgICAgICAgICAkKG1hdGhjb2RlTGlzdFtpXSkucmVtb3ZlKCk7CiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgTWF0aEpheC5IdWIuUXVldWUoWyJUeXBlc2V0IixNYXRoSmF4Lkh1Yl0pOwogICAgICAgIH0KICAgICAgfSwgNTAwKQogICAgfSk7CiAgPC9zY3JpcHQ+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJkaXJlY3RvcnktYm94c2hhZG93LWRpYWxvZyIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgogIDxkaXYgY2xhc3M9ImRpcmVjdG9yeS1ib3hzaGFkb3ctZGlhbG9nLWJveCI+CiAgPC9kaXY+CiAgIDxkaXYgY2xhc3M9InZpcC1saW1pdGVkLXRpbWUtb2ZmZXItYm94LW5ldyIgaWQ9InZpcC1saW1pdGVkLXRpbWUtb2ZmZXItYm94LW5ldyI+CiAgICAgIDxpbWcgY2xhc3M9ImxpbWl0ZWQtaW1nIGxpbWl0ZWQtaW1nLW5ldyIgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvdmlwLWxpbWl0ZWQtY2xvc2UtbmV3V2hpdGUucG5nIj4KICAgICAgPGRpdiBjbGFzcz0idmlwLWxpbWl0ZWQtdGltZS10b3AiPgogICAgICAgIOehruWumuimgeaUvuW8g+acrOasoeacuuS8mu+8nwogICAgICA8L2Rpdj4KICAgICAgPHNwYW4gY2xhc3M9InZpcC1saW1pdGVkLXRpbWUtdGV4dCI+56aP5Yip5YCS6K6h5pe2PC9zcGFuPgogICAgICA8ZGl2IGNsYXNzPSJsaW1pdGVkLXRpbWUtYm94LW5ldyI+CiAgICAgICAgPHNwYW4gY2xhc3M9InRpbWUtaG91ciI+PC9zcGFuPgogICAgICAgIDxpPjo8L2k+CiAgICAgICAgPHNwYW4gY2xhc3M9InRpbWUtbWluaXRlIj48L3NwYW4+CiAgICAgICAgPGk+OjwvaT4KICAgICAgICA8c3BhbiBjbGFzcz0idGltZS1zZWNvbmQiPjwvc3Bhbj4KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImxpbWl0ZWQtdGltZS12aXAtYm94Ij4KICAgICAgICA8cD4KICAgICAgICAgIDxpbWcgY2xhc3M9ImNvdXBvbi1pbWciIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3ZpcC1saW1pdGVkLWNsb3NlLXJvdXAucG5nIj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJkZWYiPueri+WHjyDCpTwvc3Bhbj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJhY3RpdmUgbGltaXRlZC1udW0iPjwvc3Bhbj4KICAgICAgICA8L3A+CiAgICAgICAgPHNwYW4gY2xhc3M9IiI+5pmu6YCaVklQ5bm05Y2h5Y+v55SoPC9zcGFuPgogICAgICA8L2Rpdj4KICAgICAgPGEgY2xhc3M9ImxpbWl0ZWQtdGltZS1idG4tbmV3IiBocmVmPSJodHRwczovL21hbGwuY3Nkbi5uZXQvdmlwIiBkYXRhLXJlcG9ydC1jbGljaz0neyJzcG0iOiIxMDAxLjIxMDEuMzAwMS45NjIxIn0nIGRhdGEtcmVwb3J0LXF1ZXJ5PSdzcG09MTAwMS4yMTAxLjMwMDEuOTYyMSc+56uL5Y2z5L2/55SoPC9hPgogIDwvZGl2Pgo8L2Rpdj4gICAgPGRpdiBjbGFzcz0ibW9yZS10b29sYm94LW5ldyBtb3JlLXRvb2xiYXIiIGlkPSJ0b29sQmFyQm94Ij4KICAgICAgPGRpdiBjbGFzcz0ibGVmdC10b29sYm94Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJ0b29sYm94LWxlZnQiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9maWxlLWJveCI+CiAgICAgICAgICAgICAgPGEgY2xhc3M9InByb2ZpbGUtaHJlZiIgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDciPjxpbWcgY2xhc3M9InByb2ZpbGUtaW1nIiBzcmM9Imh0dHBzOi8vcHJvZmlsZS1hdmF0YXIuY3NkbmltZy5jbi9kNWJmMmVlODlmZDc0ZDVhYTA4NjkzNjc4YTkwM2U1OV93ZWl4aW5fMzA3ODM5NDcuanBnITEiPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InByb2ZpbGUtbmFtZSI+CiAgICAgICAgICAgICAgICAgIOmVlueLrue9kQogICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2ZpbGUtYXR0ZW5kIj4KICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJ0b29sLWF0dGVuZCB0b29sLWJ0LWJ1dHRvbiB0b29sLWJ0LWF0dGVuZCIgaHJlZj0iamF2YXNjcmlwdDo7IiBkYXRhLXJlcG9ydC12aWV3PSd7Im1vZCI6IjE1OTIyMTUwMzZfMDAyIiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNDIzMiIsImV4dGVuZDEiOiLlhbPms6gifSc+5YWz5rOoPC9hPgogICAgICAgICAgICAgIDxhIGNsYXNzPSJ0b29sLWl0ZW0tZm9sbG93IGFjdGl2ZS1hbmltYXRpb24iIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij7lhbPms6g8L2E+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InRvb2xib3gtbWlkZGxlIj4KICAgICAgICAgIDx1bCBjbGFzcz0idG9vbGJveC1saXN0Ij4KICAgICAgICAgICAgPGxpIGNsYXNzPSJ0b29sLWl0ZW0gdG9vbC1pdGVtLXNpemUgdG9vbC1hY3RpdmUgaXMtbGlrZSIgaWQ9ImlzLWxpa2UiPgogICAgICAgICAgICAgIDxhIGNsYXNzPSJ0b29sLWl0ZW0taHJlZiI+CiAgICAgICAgICAgICAgICA8aW1nIHN0eWxlPSJkaXNwbGF5Om5vbmU7IiBpZD0iaXMtbGlrZS1pbWdhY3RpdmUtYW5pbWF0aW9uLWxpa2UiIGNsYXNzPSJhbmltYXRpb24tZG9tIGFjdGl2ZS1hbmltYXRpb24iIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3RvYmFyVGh1bWJVcGFjdGl2ZS5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9ImlzYWN0aXZlIiBzdHlsZT0iZGlzcGxheTpub25lIiBpZD0iaXMtbGlrZS1pbWdhY3RpdmUiIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3Rvb2xiYXIvbGlrZS1hY3RpdmUucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJpc2RlZmF1bHQiIHN0eWxlPSJkaXNwbGF5OmJsb2NrIiBpZD0iaXMtbGlrZS1pbWciIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3Rvb2xiYXIvbGlrZS5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgIDxzcGFuIGlkPSJzcGFuQ291bnQiIGNsYXNzPSJjb3VudCAiPgogICAgICAgICAgICAgICAgICAgIDIKICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9vbC1ob3Zlci10aXAiPjxzcGFuIGNsYXNzPSJ0ZXh0IHNwYWNlIj7ngrnotZ48L3NwYW4+PC9kaXY+CiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgIDxsaSBjbGFzcz0idG9vbC1pdGVtIHRvb2wtaXRlbS1zaXplIHRvb2wtYWN0aXZlIGlzLXVubGlrZSIgaWQ9ImlzLXVubGlrZSI+CiAgICAgICAgICAgICAgPGEgY2xhc3M9InRvb2wtaXRlbS1ocmVmIj4KICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9ImlzYWN0aXZlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OjBweDtkaXNwbGF5Om5vbmUiIGlkPSJpcy11bmxpa2UtaW1nYWN0aXZlIiBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy90b29sYmFyL3VubGlrZS1hY3RpdmUucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJpc2RlZmF1bHQiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6MHB4O2Rpc3BsYXk6YmxvY2siIGlkPSJpcy11bmxpa2UtaW1nIiBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy90b29sYmFyL3VubGlrZS5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgIDxzcGFuIGlkPSJ1bmxpa2VDb3VudCIgY2xhc3M9ImNvdW50ICI+PC9zcGFuPgogICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b29sLWhvdmVyLXRpcCI+PHNwYW4gY2xhc3M9InRleHQgc3BhY2UiPui4qTwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgPGxpIGNsYXNzPSJ0b29sLWl0ZW0gdG9vbC1pdGVtLXNpemUgdG9vbC1hY3RpdmUgaXMtY29sbGVjdGlvbiAiPgogICAgICAgICAgICAgIDxhIGNsYXNzPSJ0b29sLWl0ZW0taHJlZiIgaHJlZj0iamF2YXNjcmlwdDo7IiBkYXRhLXJlcG9ydC1jbGljaz0neyJtb2QiOiJwb3B1XzgyNCIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjQxMzAiLCJhYiI6Im5ldyJ9Jz4KICAgICAgICAgICAgICAgIDxpbWcgc3R5bGU9ImRpc3BsYXk6bm9uZSIgaWQ9ImlzLWNvbGxlY3Rpb24taW1nLWNvbGxlY3Rpb24iIGNsYXNzPSJhbmltYXRpb24tZG9tIGFjdGl2ZS1hbmltYXRpb24iIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3Rvb2xiYXIvY29sbGVjdC1hY3RpdmUucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJpc2RlZmF1bHQiIGlkPSJpcy1jb2xsZWN0aW9uLWltZyIgc3R5bGU9ImRpc3BsYXk6YmxvY2siIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3Rvb2xiYXIvY29sbGVjdC5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9ImlzYWN0aXZlIiBpZD0iaXMtY29sbGVjdGlvbi1pbWdhY3RpdmUiIHN0eWxlPSJkaXNwbGF5Om5vbmUiIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL25ld0NvbGxlY3RBY3RpdmUucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY291bnQgZ2V0LWNvbGxlY3Rpb24gIiBkYXRhLW51bT0iMTAiIGlkPSJnZXQtY29sbGVjdGlvbiI+CiAgICAgICAgICAgICAgICAgICAgMTAKICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9vbC1ob3Zlci10aXAgY29sbGVjdCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2xsZWN0LW9wZXJhdGUtYm94Ij4KICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbGxlY3QtdGV4dCIgaWQ9ImlzLWNvbGxlY3Rpb24iPgogICAgICAgICAgICAgICAgICAgIOaUtuiXjwogICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b29sLWFjdGl2ZS1saXN0Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRleHQiPgogICAgICAgICAgICAgICAgICDop4nlvpfov5jkuI3plJk/CiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb2xsZWN0LXRleHQiIGlkPSJ0b29sLWFjdGl2ZS1saXN0LWNvbGxlY3Rpb24iPgogICAgICAgICAgICAgICAgICAgIOS4gOmUruaUtuiXjwogICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgPGltZyBpZD0idG9vbC1hY3RpdmUtbGlzdC1jbG9zZSIgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvY29sbGVjdGlvbkNsb3NlV2hpdGUucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgPGxpIGNsYXNzPSJ0b29sLWl0ZW0gdG9vbC1pdGVtLXNpemUgdG9vbC1hY3RpdmUgdG9vbC1pdGVtLWNvbW1lbnQiPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Imd1aWRlLXJyLWZpcnN0Ij4KICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvZ3VpZGVSZWRSZXdhcmQwMS5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0bi1ndWlkZS1rbm93biI+55+l6YGT5LqGPC9idXR0b24+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8YSBjbGFzcz0idG9vbC1pdGVtLWhyZWYgZ28tc2lkZS1jb21tZW50IiBkYXRhLXJlcG9ydC1jbGljaz0neyJzcG0iOiIxMDAxLjIxMDEuMzAwMS43MDA5In0nPgogICAgICAgICAgICAgICAgPGltZyBjbGFzcz0iaXNkZWZhdWx0IiBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy90b29sYmFyL2NvbW1lbnQucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY291bnQiPgogICAgICAgICAgICAgICAgICAgICAgMAogICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b29sLWhvdmVyLXRpcCI+PHNwYW4gY2xhc3M9InRleHQgc3BhY2UiPuivhOiuujwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgPGxpIGNsYXNzPSJ0b29sLWl0ZW0gdG9vbC1pdGVtLXNpemUgdG9vbC1hY3RpdmUgdG9vbC1RUmNvZGUiIGRhdGEtdHlwZT0iYXJ0aWNsZSIgaWQ9InRvb2wtc2hhcmUiPgogICAgICAgICAgICAgIDxhIGNsYXNzPSJ0b29sLWl0ZW0taHJlZiIgaHJlZj0iamF2YXNjcmlwdDo7IiBkYXRhLXJlcG9ydC12aWV3PSd7InNwbSI6IjMwMDEuNDEyOSIsImV4dHJhIjp7InR5cGUiOiJibG9nZGV0YWlsIn19Jz4KICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9ImlzZGVmYXVsdCIgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvdG9vbGJhci9zaGFyZS5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb3VudCI+5YiG5LqrPC9zcGFuPgogICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9IlFSY29kZSBhY3RpdmUiIGlkPSJ0b29sLVFSY29kZSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzaGFyZS1iZy1ib3giPgogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzaGFyZS1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8YSBpZD0iY29weVBvc3RlclVybCIgZGF0YS10eXBlPSJsaW5rIiBjbGFzcz0iYnRuLXNoYXJlIj7lpI3liLbpk77mjqU8L2E+CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzaGFyZS1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iYnRuLXNoYXJlIiBkYXRhLXR5cGU9InFxIj7liIbkuqvliLAgUVE8L2E+CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzaGFyZS1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iYnRuLXNoYXJlIiBkYXRhLXR5cGU9IndlaWJvIj7liIbkuqvliLDmlrDmtarlvq7ljZo8L2E+CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzaGFyZS1jb2RlIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzaGFyZS1jb2RlLWJveCIgaWQ9J3NoYXJlQ29kZSc+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2hhcmUtY29kZS10ZXh0Ij4KICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvc2hhcmUvaWNvbi13ZWNoYXQucG5nIiBhbHQ9IiI+5omr5LiA5omrCiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICA8bGkgY2xhc3M9InRvb2wtaXRlbSB0b29sLWl0ZW0tc2l6ZSB0b29sLWFjdGl2ZSBpcy1tb3JlIiBpZD0iaXMtbW9yZSI+CiAgICAgICAgICAgIDxhIGNsYXNzPSJ0b29sLWl0ZW0taHJlZiI+CiAgICAgICAgICAgICAgPGltZyBjbGFzcz0iaXNkZWZhdWx0IiBzdHlsZT0ibWFyZ2luLXJpZ2h0OjBweDtkaXNwbGF5OmJsb2NrIiBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy90b29sYmFyL21vcmUucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvdW50Ij48L3NwYW4+CiAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibW9yZS1vcHQtYm94Ij4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtaW5pLWJveCI+CiAgICAgICAgICAgICAgICA8YSBjbGFzcz0idG9vbC1pdGVtLWhyZWYiIGlkPSJ0b29sUmVwb3J0QnRuSGlkZSI+CiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9ImlzZGVmYXVsdCIgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvdG9vbGJhci9yZXBvcnQucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb3VudCI+5Li+5oqlPC9zcGFuPgogICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5vcm1hbC1ib3giPgogICAgICAgICAgICAgICAgPGEgY2xhc3M9InRvb2wtaXRlbS1ocmVmIiBpZD0idG9vbFJlcG9ydEJ0bkhpZGVOb3JtYWwiPgogICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJpc2RlZmF1bHQiIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3Rvb2xiYXIvcmVwb3J0LnBuZyIgYWx0PSIiPgogICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY291bnQiPuS4vuaKpTwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2xpPgogICAgICAgIDwvdWw+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJ0b29sYm94LXJpZ2h0Ij4KPC9kaXY+CjwvZGl2Pgo8L2Rpdj4KPHNjcmlwdCB0eXBlPXRleHQvamF2YXNjcmlwdCBjcm9zc29yaWdpbiBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL3Bob2VuaXgvcHJvZHVjdGlvbi9xcmNvZGUtN2M5MGE5MjE4OS5taW4uanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY3Jvc3NvcmlnaW4gc3JjPSJodHRwczovL2cuY3NkbmltZy5jbi9jb21tb24vY3Nkbi1sb2dpbi1ib3gvY3Nkbi1sb2dpbi1ib3guanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY3Jvc3NvcmlnaW4gc3JjPSJodHRwczovL2cuY3NkbmltZy5jbi9jb2xsZWN0aW9uLWJveC8yLjEuMi9jb2xsZWN0aW9uLWJveC5qcyI+PC9zY3JpcHQ+PGEgaWQ9ImNvbW1lbnRCb3giIG5hbWU9ImNvbW1lbnRCb3giPjwvYT4KICA8ZGl2IGlkPSJwY0NvbW1lbnRCb3giIGNsYXNzPSJjb21tZW50LWJveCBjb21tZW50LWJveC1uZXcyIGxvZ2luLWNvbW1lbnQtYm94LW5ldyIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+CiAgICAgIDxkaXYgY2xhc3M9Imhhcy1jb21tZW50IiBzdHlsZT0iZGlzcGxheTpibG9jayI+CiAgICAgICAgPGRpdiBjbGFzcz0ib25lLWxpbmUtYm94Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9Imhhcy1jb21tZW50LXRpdCBnby1zaWRlLWNvbW1lbnQiPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iY291bnQiPjA8L3NwYW4+Jm5ic3A75p2h6K+E6K66CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9Imhhcy1jb21tZW50LWNvbiBjb21tZW50LW9wZXJhdGUtaXRlbSI+PC9kaXY+CiAgICAgICAgICA8YSBjbGFzcz0iaGFzLWNvbW1lbnQtYnQtcmlnaHQgZ28tc2lkZS1jb21tZW50IGZvY3VzIj7lhpnor4Torro8L2E+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZmlyc3QtcmVjb21tZW5kLWJveCByZWNvbW1lbmQtYm94IHJlY29tbWVuZC1oaWdobGlnaHQtZGVmYXVsdCI+CjxkaXYgY2xhc3M9InJlY29tbWVuZC1pdGVtLWJveCB0eXBlX2Rvd25sb2FkIGNsZWFyZml4IiBkYXRhLXVybD0iaHR0cHM6Ly9kb3dubG9hZC5jc2RuLm5ldC9kb3dubG9hZC93ZWl4aW5fMzg3MjM2OTkvMTk2MDczMzgiICBkYXRhLXJlcG9ydC12aWV3PSd7ImFiIjoibmV3Iiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNjY2MS4xIiwibW9kIjoicG9wdV84NzEiLCJleHRyYSI6IntcImhpZ2hsaWdodFNjb3JlXCI6MC4wLFwidXRtX21lZGl1bVwiOlwiZGlzdHJpYnV0ZS5wY19yZWxldmFudF90MC5ub25lLXRhc2stZG93bmxvYWQtMn5kZWZhdWx0fkJsb2dDb21tZW5kRnJvbUJhaWR1flJhdGUtMS0xOTYwNzMzOC1ibG9nLTExMjI3MTE5NS4yMzVedjQzXnBjX2Jsb2dfYm90dG9tX3JlbGV2YW5jZV9iYXNlOVwiLFwiZGlzdF9yZXF1ZXN0X2lkXCI6XCIxNzM1NDE2NDM4Njg5XzAyOTk3XCJ9IiwiZGlzdF9yZXF1ZXN0X2lkIjoiMTczNTQxNjQzODY4OV8wMjk5NyIsImFiX3N0cmF0ZWd5IjoidmlwZGVmYXVsdCIsImluZGV4IjoiMSIsInN0cmF0ZWd5IjoiMn5kZWZhdWx0fkJsb2dDb21tZW5kRnJvbUJhaWR1flJhdGUiLCJkZXN0IjoiaHR0cHM6Ly9kb3dubG9hZC5jc2RuLm5ldC9kb3dubG9hZC93ZWl4aW5fMzg3MjM2OTkvMTk2MDczMzgifSc+Cgk8ZGl2IGNsYXNzPSJjb250ZW50LWJveCI+CgkJPGRpdiBjbGFzcz0iY29udGVudC1ibG9nIGRpc3BsYXktZmxleCI+CgkJCTxkaXYgY2xhc3M9InRpdGxlLWJveCI+CgkJCQk8c3BhbiBjbGFzcz0idHlwZSI+CgkJCQkJCTxpbWcgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9jb21wb25lbnRzL2ltZy9kb3dubG9hZFR5cGUucG5nIiBhbHQ9IiI+CgkJCQkJCTxzcGFuIGNsYXNzPSJ0aXAiPuS4i+i9vTwvc3Bhbj4JCgkJCQk8L3NwYW4+CgkJCQk8YSBocmVmPSJodHRwczovL2Rvd25sb2FkLmNzZG4ubmV0L2Rvd25sb2FkL3dlaXhpbl8zODcyMzY5OS8xOTYwNzMzOCIgY2xhc3M9InRpdCIgdGFyZ2V0PSJfYmxhbmsiICBkYXRhLXJlcG9ydC1jbGljaz0neyJhYiI6Im5ldyIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjY2NjEuMSIsIm1vZCI6InBvcHVfODcxIiwiZXh0cmEiOiJ7XCJoaWdobGlnaHRTY29yZVwiOjAuMCxcInV0bV9tZWRpdW1cIjpcImRpc3RyaWJ1dGUucGNfcmVsZXZhbnRfdDAubm9uZS10YXNrLWRvd25sb2FkLTJ+ZGVmYXVsdH5CbG9nQ29tbWVuZEZyb21CYWlkdX5SYXRlLTEtMTk2MDczMzgtYmxvZy0xMTIyNzExOTUuMjM1XnY0M15wY19ibG9nX2JvdHRvbV9yZWxldmFuY2VfYmFzZTlcIixcImRpc3RfcmVxdWVzdF9pZFwiOlwiMTczNTQxNjQzODY4OV8wMjk5N1wifSIsImRpc3RfcmVxdWVzdF9pZCI6IjE3MzU0MTY0Mzg2ODlfMDI5OTciLCJhYl9zdHJhdGVneSI6InZpcGRlZmF1bHQiLCJpbmRleCI6IjEiLCJzdHJhdGVneSI6IjJ+ZGVmYXVsdH5CbG9nQ29tbWVuZEZyb21CYWlkdX5SYXRlIiwiZGVzdCI6Imh0dHBzOi8vZG93bmxvYWQuY3Nkbi5uZXQvZG93bmxvYWQvd2VpeGluXzM4NzIzNjk5LzE5NjA3MzM4In0nICBkYXRhLXJlcG9ydC1xdWVyeT0nc3BtPTEwMDEuMjEwMS4zMDAxLjY2NjEuMSZ1dG1fbWVkaXVtPWRpc3RyaWJ1dGUucGNfcmVsZXZhbnRfdDAubm9uZS10YXNrLWRvd25sb2FkLTIlN0VkZWZhdWx0JTdFQmxvZ0NvbW1lbmRGcm9tQmFpZHUlN0VSYXRlLTEtMTk2MDczMzgtYmxvZy0xMTIyNzExOTUuMjM1JTVFdjQzJTVFcGNfYmxvZ19ib3R0b21fcmVsZXZhbmNlX2Jhc2U5JmRlcHRoXzEtdXRtX3NvdXJjZT1kaXN0cmlidXRlLnBjX3JlbGV2YW50X3QwLm5vbmUtdGFzay1kb3dubG9hZC0yJTdFZGVmYXVsdCU3RUJsb2dDb21tZW5kRnJvbUJhaWR1JTdFUmF0ZS0xLTE5NjA3MzM4LWJsb2ctMTEyMjcxMTk1LjIzNSU1RXY0MyU1RXBjX2Jsb2dfYm90dG9tX3JlbGV2YW5jZV9iYXNlOSc+CgkJCQkJPGRpdiBjbGFzcz0ibGVmdCBlbGxpcHNpcy1vbmxpbmUgZWxsaXBzaXMtb25saW5lLTEiPjxlbT7ogrrnu5PoioI8L2VtPuajgOa1i+S7o+eggW1hdGxhYi1sdW5nLWNhbmNlci1kZXRlY3Rpb24taW4tY3Qtc2NhbnM66IK655mM5qOA5rWL5ZyoY3Tmiavmj488L2Rpdj4KCQkJCTwvYT4KCQkJPC9kaXY+CgkJCTxkaXYgY2xhc3M9ImluZm8tYm94IGRpc3BsYXktZmxleCI+CgkJCQk8ZGl2IGNsYXNzPSJpbmZvIGRpc3BsYXktZmxleCI+CgkJCQkJPHNwYW4gY2xhc3M9ImluZm8tYmxvY2siPjA2LTEzPC9zcGFuPgoJCQkJPC9kaXY+CgkJCTwvZGl2PgoJCTwvZGl2PgoJCTxkaXYgY2xhc3M9ImRlc2MtYm94Ij4KCQkJPGEgaHJlZj0iaHR0cHM6Ly9kb3dubG9hZC5jc2RuLm5ldC9kb3dubG9hZC93ZWl4aW5fMzg3MjM2OTkvMTk2MDczMzgiIHRhcmdldD0iX2JsYW5rIiAgZGF0YS1yZXBvcnQtY2xpY2s9J3siYWIiOiJuZXciLCJzcG0iOiIxMDAxLjIxMDEuMzAwMS42NjYxLjEiLCJtb2QiOiJwb3B1Xzg3MSIsImV4dHJhIjoie1wiaGlnaGxpZ2h0U2NvcmVcIjowLjAsXCJ1dG1fbWVkaXVtXCI6XCJkaXN0cmlidXRlLnBjX3JlbGV2YW50X3QwLm5vbmUtdGFzay1kb3dubG9hZC0yfmRlZmF1bHR+QmxvZ0NvbW1lbmRGcm9tQmFpZHV+UmF0ZS0xLTE5NjA3MzM4LWJsb2ctMTEyMjcxMTk1LjIzNV52NDNecGNfYmxvZ19ib3R0b21fcmVsZXZhbmNlX2Jhc2U5XCIsXCJkaXN0X3JlcXVlc3RfaWRcIjpcIjE3MzU0MTY0Mzg2ODlfMDI5OTdcIn0iLCJkaXN0X3JlcXVlc3RfaWQiOiIxNzM1NDE2NDM4Njg5XzAyOTk3IiwiYWJfc3RyYXRlZ3kiOiJ2aXBkZWZhdWx0IiwiaW5kZXgiOiIxIiwic3RyYXRlZ3kiOiIyfmRlZmF1bHR+QmxvZ0NvbW1lbmRGcm9tQmFpZHV+UmF0ZSIsImRlc3QiOiJodHRwczovL2Rvd25sb2FkLmNzZG4ubmV0L2Rvd25sb2FkL3dlaXhpbl8zODcyMzY5OS8xOTYwNzMzOCJ9JyAgZGF0YS1yZXBvcnQtcXVlcnk9J3NwbT0xMDAxLjIxMDEuMzAwMS42NjYxLjEmdXRtX21lZGl1bT1kaXN0cmlidXRlLnBjX3JlbGV2YW50X3QwLm5vbmUtdGFzay1kb3dubG9hZC0yJTdFZGVmYXVsdCU3RUJsb2dDb21tZW5kRnJvbUJhaWR1JTdFUmF0ZS0xLTE5NjA3MzM4LWJsb2ctMTEyMjcxMTk1LjIzNSU1RXY0MyU1RXBjX2Jsb2dfYm90dG9tX3JlbGV2YW5jZV9iYXNlOSZkZXB0aF8xLXV0bV9zb3VyY2U9ZGlzdHJpYnV0ZS5wY19yZWxldmFudF90MC5ub25lLXRhc2stZG93bmxvYWQtMiU3RWRlZmF1bHQlN0VCbG9nQ29tbWVuZEZyb21CYWlkdSU3RVJhdGUtMS0xOTYwNzMzOC1ibG9nLTExMjI3MTE5NS4yMzUlNUV2NDMlNUVwY19ibG9nX2JvdHRvbV9yZWxldmFuY2VfYmFzZTknPgoJCQkJPGRpdiBjbGFzcz0iZGVzYyBlbGxpcHNpcy1vbmxpbmUgZWxsaXBzaXMtb25saW5lLTEiPjxlbT7ogrrnu5PoioI8L2VtPuajgOa1i+S7o+eggQptYXRsYWIK5q2k5aSE5o6I5LqI5LuF5Ye65LqO5pWZ6IKy5ZKM56CU56m255uu55qE5LiU5YWN6LS55L2/55So44CB5aSN5Yi25oiW5L+u5pS55pys6L2v5Lu25Y+K5YW25paH5qGj55qE6K645Y+v77yM5YmN5o+Q5piv5omA5pyJ5Ymv5pys5ZKM5pSv5oyB5paH5qGj5Lit5Z2H5YyF5ZCr5q2k54mI5p2D5aOw5piO5ZKM5Y6f5L2c6ICF5aeT5ZCN44CCCuacque7j+S9nOiAheiuuOWPr++8jOS4jeW+l+S9v+eUqOOAgeaUueWGmeaIluaUuee8luacrOeoi+W6j+S9nOS4uuWVhuS4mui9r+S7tuaIluehrOS7tuS6p+WTgeeahOWfuuehgOOAggrkvZzogIXlr7nmnKzova/ku7blr7nku7vkvZXnm67nmoTnmoTpgILnlKjmgKfkuI3kvZzku7vkvZXpmYjov7DjgIIK5a6DJmxkcXVvO+aMieWOn+agtyZyZHF1bzvmj5DkvpvvvIzmsqHmnInmmI7npLrmiJbmmpfnpLrnmoTkv53or4HjgIIKMS4wCueJiO+8jDIwMTgK5bm0CjUK5pyICjI4CuaXpeOAggrlr7nkuo7ku7vkvZXplJnor68v5bu66K6u77yM6K+35Y+R6YCB55S15a2Q6YKu5Lu26Iez5oiW5pyJ5YWz5pu05aSa6K+m57uG5L+h5oGv77yM6K+36K6/6ZeuCuivpei9r+S7tuaYr+S7peS4izxlbT7orrrmloc8L2VtPueahOWunueOsO+8mgpOLgpLaGVocmFo44CBTVMKRmFyaWTjgIFTLgpCaWxhbO+8jCZsZHF1bztDVArmiavmj4/kuK3nmoToh6rliqg8ZW0+6IK657uT6IqCPC9lbT7mo4DmtYsmcmRxdW8777yM5o+Q5Lqk57uZ5Zu96ZmF5Yy75a2m5L+h5oGv5a2m5p2C5b+X44CCCuWmguaenOaCqOWcqOeglOeptuS4reS9v+eUqOatpOS7o+egge+8jOivt+WPguiAg+S4iui/sDxlbT7orrrmloc8L2VtPuOAggrmraTmlofku7blpLkmbGRxdW875ryU56S6JnJkcXVvO+WMheWQq+S7peS4i+aWh+S7tgoxKW1haW4ubQoyKXNlZ21lbnRhdGlvbi5tCjMpdGVtcG9yYWxfZmVhdHVyZS5tCjQpc3RhdGlzdGljYWxfZmVhdHVyZQo1KXN2bVN0cnVjdAo2KXJlZ2lvbmdlbmVyYXRpb24ubQo3KXJlZ2lvbmdlbmVyYXRpb24xLm0K6Zmk5LqG6L+Z5Lqb5paH5Lu277yM6K+l5paH5Lu25aS56L+Y5YyF5ZCr5LiA5Lqb5L2c5Li65ryU56S65aSE55CG55qE6IK6CkN0CuaJq+aPj+ekuuS+i+WbvuWDj+OAggpTZWdtZW50YXRpb24ubQo8L2Rpdj4KCQkJPC9hPgoJCTwvZGl2PgoJPC9kaXY+CjwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9jb21wb25lbnRzL2pzL3BjX3dhcF9jb21tb250b29scy02ZWRlZTcxYjcxLm1pbi5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBhc3luYz48L3NjcmlwdD4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWNvbmQtcmVjb21tZW5kLWJveCByZWNvbW1lbmQtYm94IHJlY29tbWVuZC1oaWdobGlnaHQtZGVmYXVsdCI+CjxkaXYgY2xhc3M9InJlY29tbWVuZC1pdGVtLWJveCB0eXBlX2Jsb2cgY2xlYXJmaXgiIGRhdGEtdXJsPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvcXFfMjU2MjQyMzEvYXJ0aWNsZS9kZXRhaWxzLzc5NjMyMDcyIiAgZGF0YS1yZXBvcnQtdmlldz0neyJhYiI6Im5ldyIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjY2NTAuMSIsIm1vZCI6InBvcHVfMzg3IiwiZXh0cmEiOiJ7XCJoaWdobGlnaHRTY29yZVwiOjAuMCxcInV0bV9tZWRpdW1cIjpcImRpc3RyaWJ1dGUucGNfcmVsZXZhbnQubm9uZS10YXNrLWJsb2ctMn5kZWZhdWx0fkJsb2dDb21tZW5kRnJvbUJhaWR1flJhdGUtMS03OTYzMjA3Mi1ibG9nLTExMjI3MTE5NS4yMzVedjQzXnBjX2Jsb2dfYm90dG9tX3JlbGV2YW5jZV9iYXNlOVwiLFwiZGlzdF9yZXF1ZXN0X2lkXCI6XCIxNzM1NDE2NDM4Njg5XzAyOTk3XCJ9IiwiZGlzdF9yZXF1ZXN0X2lkIjoiMTczNTQxNjQzODY4OV8wMjk5NyIsImFiX3N0cmF0ZWd5IjoidmlwZGVmYXVsdCIsImluZGV4IjoiMSIsInN0cmF0ZWd5IjoiMn5kZWZhdWx0fkJsb2dDb21tZW5kRnJvbUJhaWR1flJhdGUiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI1NjI0MjMxL2FydGljbGUvZGV0YWlscy83OTYzMjA3MiJ9Jz4KCTxkaXYgY2xhc3M9ImNvbnRlbnQtYm94Ij4KCQk8ZGl2IGNsYXNzPSJjb250ZW50LWJsb2cgZGlzcGxheS1mbGV4Ij4KCQkJPGRpdiBjbGFzcz0idGl0bGUtYm94Ij4KCQkJCTxzcGFuIGNsYXNzPSJ0eXBlIj4KCQkJCQk8aW1nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvY29tcG9uZW50cy9pbWcvYmxvZ1R5cGUucG5nIiBhbHQ9IiI+CgkJCQkJPHNwYW4gY2xhc3M9InRpcCI+5Y2a5a6iPC9zcGFuPgoJCQkJPC9zcGFuPgoJCQkJPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI1NjI0MjMxL2FydGljbGUvZGV0YWlscy83OTYzMjA3MiIgY2xhc3M9InRpdCIgdGFyZ2V0PSJfYmxhbmsiICBkYXRhLXJlcG9ydC1jbGljaz0neyJhYiI6Im5ldyIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjY2NTAuMSIsIm1vZCI6InBvcHVfMzg3IiwiZXh0cmEiOiJ7XCJoaWdobGlnaHRTY29yZVwiOjAuMCxcInV0bV9tZWRpdW1cIjpcImRpc3RyaWJ1dGUucGNfcmVsZXZhbnQubm9uZS10YXNrLWJsb2ctMn5kZWZhdWx0fkJsb2dDb21tZW5kRnJvbUJhaWR1flJhdGUtMS03OTYzMjA3Mi1ibG9nLTExMjI3MTE5NS4yMzVedjQzXnBjX2Jsb2dfYm90dG9tX3JlbGV2YW5jZV9iYXNlOVwiLFwiZGlzdF9yZXF1ZXN0X2lkXCI6XCIxNzM1NDE2NDM4Njg5XzAyOTk3XCJ9IiwiZGlzdF9yZXF1ZXN0X2lkIjoiMTczNTQxNjQzODY4OV8wMjk5NyIsImFiX3N0cmF0ZWd5IjoidmlwZGVmYXVsdCIsImluZGV4IjoiMSIsInN0cmF0ZWd5IjoiMn5kZWZhdWx0fkJsb2dDb21tZW5kRnJvbUJhaWR1flJhdGUiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI1NjI0MjMxL2FydGljbGUvZGV0YWlscy83OTYzMjA3MiJ9JyAgZGF0YS1yZXBvcnQtcXVlcnk9J3NwbT0xMDAxLjIxMDEuMzAwMS42NjUwLjEmdXRtX21lZGl1bT1kaXN0cmlidXRlLnBjX3JlbGV2YW50Lm5vbmUtdGFzay1ibG9nLTIlN0VkZWZhdWx0JTdFQmxvZ0NvbW1lbmRGcm9tQmFpZHUlN0VSYXRlLTEtNzk2MzIwNzItYmxvZy0xMTIyNzExOTUuMjM1JTVFdjQzJTVFcGNfYmxvZ19ib3R0b21fcmVsZXZhbmNlX2Jhc2U5JmRlcHRoXzEtdXRtX3NvdXJjZT1kaXN0cmlidXRlLnBjX3JlbGV2YW50Lm5vbmUtdGFzay1ibG9nLTIlN0VkZWZhdWx0JTdFQmxvZ0NvbW1lbmRGcm9tQmFpZHUlN0VSYXRlLTEtNzk2MzIwNzItYmxvZy0xMTIyNzExOTUuMjM1JTVFdjQzJTVFcGNfYmxvZ19ib3R0b21fcmVsZXZhbmNlX2Jhc2U5Jz4KCQkJCQk8ZGl2IGNsYXNzPSJsZWZ0IGVsbGlwc2lzLW9ubGluZSBlbGxpcHNpcy1vbmxpbmUtMSI+RXZhbHVhdGUgdGhlIE1hbGlnbmFuY3kgb2YgUHVsbW9uYXJ5IE5vZHVsZXMgVXNpbmcgdGhlIDxlbT4zRDwvZW0+IDxlbT5EZWVwPC9lbT4gPGVtPkxlYWt5PC9lbT4gPGVtPk5vaXN5PC9lbT4tb3IgPGVtPk5ldHdvcms8L2VtPiA8ZW0+6K665paHPC9lbT7pmIXor7s8L2Rpdj4KCQkJCTwvYT4KCQkJPC9kaXY+CgkJCTxkaXYgY2xhc3M9ImluZm8tYm94IGRpc3BsYXktZmxleCI+CgkJCQk8ZGl2IGNsYXNzPSJpbmZvIj4KCQkJCQk8YSBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvcXFfMjU2MjQyMzEiIHRhcmdldD0iX2JsYW5rIj48c3BhbiBjbGFzcz0iYmxvZy10aXRsZSI+RG91YmxsZSBUcmVl55qE5Y2a5a6iPC9zcGFuPjwvYT4KCQkJCTwvZGl2PgoJCQkJPGRpdiBjbGFzcz0iaW5mbyBkaXNwbGF5LWZsZXgiPgoJCQkJCTxzcGFuIGNsYXNzPSJpbmZvLWJsb2NrIHRpbWUiPjAzLTIwPC9zcGFuPgoJCQkJCTxzcGFuIGNsYXNzPSJpbmZvLWJsb2NrIHJlYWQiPjxpbWcgY2xhc3M9InJlYWQtaW1nIiBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy9yZWFkQ291bnRXaGl0ZS5wbmciIGFsdD0iIj4KCQkJCQkzNzE3CgkJCQkJPC9zcGFuPgoJCQkJPC9kaXY+CgkJCTwvZGl2PgoJCTwvZGl2PgoJCTxkaXYgY2xhc3M9ImRlc2MtYm94Ij4KCQkJPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI1NjI0MjMxL2FydGljbGUvZGV0YWlscy83OTYzMjA3MiIgdGFyZ2V0PSJfYmxhbmsiICBkYXRhLXJlcG9ydC1jbGljaz0neyJhYiI6Im5ldyIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjY2NTAuMSIsIm1vZCI6InBvcHVfMzg3IiwiZXh0cmEiOiJ7XCJoaWdobGlnaHRTY29yZVwiOjAuMCxcInV0bV9tZWRpdW1cIjpcImRpc3RyaWJ1dGUucGNfcmVsZXZhbnQubm9uZS10YXNrLWJsb2ctMn5kZWZhdWx0fkJsb2dDb21tZW5kRnJvbUJhaWR1flJhdGUtMS03OTYzMjA3Mi1ibG9nLTExMjI3MTE5NS4yMzVedjQzXnBjX2Jsb2dfYm90dG9tX3JlbGV2YW5jZV9iYXNlOVwiLFwiZGlzdF9yZXF1ZXN0X2lkXCI6XCIxNzM1NDE2NDM4Njg5XzAyOTk3XCJ9IiwiZGlzdF9yZXF1ZXN0X2lkIjoiMTczNTQxNjQzODY4OV8wMjk5NyIsImFiX3N0cmF0ZWd5IjoidmlwZGVmYXVsdCIsImluZGV4IjoiMSIsInN0cmF0ZWd5IjoiMn5kZWZhdWx0fkJsb2dDb21tZW5kRnJvbUJhaWR1flJhdGUiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI1NjI0MjMxL2FydGljbGUvZGV0YWlscy83OTYzMjA3MiJ9JyAgZGF0YS1yZXBvcnQtcXVlcnk9J3NwbT0xMDAxLjIxMDEuMzAwMS42NjUwLjEmdXRtX21lZGl1bT1kaXN0cmlidXRlLnBjX3JlbGV2YW50Lm5vbmUtdGFzay1ibG9nLTIlN0VkZWZhdWx0JTdFQmxvZ0NvbW1lbmRGcm9tQmFpZHUlN0VSYXRlLTEtNzk2MzIwNzItYmxvZy0xMTIyNzExOTUuMjM1JTVFdjQzJTVFcGNfYmxvZ19ib3R0b21fcmVsZXZhbmNlX2Jhc2U5JmRlcHRoXzEtdXRtX3NvdXJjZT1kaXN0cmlidXRlLnBjX3JlbGV2YW50Lm5vbmUtdGFzay1ibG9nLTIlN0VkZWZhdWx0JTdFQmxvZ0NvbW1lbmRGcm9tQmFpZHUlN0VSYXRlLTEtNzk2MzIwNzItYmxvZy0xMTIyNzExOTUuMjM1JTVFdjQzJTVFcGNfYmxvZ19ib3R0b21fcmVsZXZhbmNlX2Jhc2U5Jz4KCQkJCTxkaXYgY2xhc3M9ImRlc2MgZWxsaXBzaXMtb25saW5lIGVsbGlwc2lzLW9ubGluZS0xIj5LYWdnbGXkuIoyMDE35bm0PGVtPuiCuue7k+iKgjwvZW0+5qOA5rWL5q+U6LWb56ys5LiA5ZCN55qE566X5rOV77yM5YW25Luj56CB55qEZ2l0aHVi6YCa6YGTCgoKCgoK6IOM5pmvCgo8ZW0+6IK657uT6IqCPC9lbT7mr5TotZvph4fnlKjnmoTlm77lg4/mmK9DVO+8jOWFtuS4rTxlbT7ogrrnu5PoioI8L2VtPueahOW9seWDj+WtpuihqOeOsOWmguS4i++8mgoKMS4g5ZKM5q2j5bi457uE57uH5YW35pyJ55u45ZCM55qESFXlgLzvvIzkvYbmmK/lhbfmnInkuI3lkIznmoTlvaLnirbjgIIKMi4g5pSv5rCU566h5ZKM6KGA566h5piv6L+e57ut566h6IWU77yM5Zyo5qC55rqQ6L6D5Y6a77yM5Zyo5YiG5pSv5aSE6L6D57uG77yb6ICMPGVtPuiCuue7k+iKgjwvZW0+5LiA6Iis5ZGI55CD5b2i44CCCjMuIDxlbT7ogrrnu5PoioI8L2VtPuacieW+iOWkmuexu+WIq++8jOWFt+acieS4jeWQjOWkp+Wwj+WSjOW9oueKtu+8jOS4jueZjOeXh+eahOebuOWFs+aAp+S5n+S4jeWQjOOAggoKCuWMu+eUn+WvueS4gOS9jeeXheS6uueahOato+W4uOmYheeJh+aXtumXtOaYrzEw5YiG6ZKfLi4uPC9kaXY+CgkJCTwvYT4KCQk8L2Rpdj4KCTwvZGl2Pgo8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWNvbW1lbmQtYm94IGluc2VydC1iYWlkdS1ib3ggIHJlY29tbWVuZC1oaWdobGlnaHQtZGVmYXVsdCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyZWNvbW1lbmQtaXRlbS1ib3ggbm8taW5kZXgiIHN0eWxlPSJkaXNwbGF5Om5vbmUiPjwvZGl2Pgo8ZGl2IGNsYXNzPSJyZWNvbW1lbmQtaXRlbS1ib3ggdHlwZV9ibG9nIGNsZWFyZml4IiBkYXRhLXVybD0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2RjeGh1bjMvYXJ0aWNsZS9kZXRhaWxzLzUyOTIwMzAzIiAgZGF0YS1yZXBvcnQtdmlldz0neyJhYiI6Im5ldyIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjY2NTAuMiIsIm1vZCI6InBvcHVfMzg3IiwiZXh0cmEiOiJ7XCJoaWdobGlnaHRTY29yZVwiOjAuMCxcInV0bV9tZWRpdW1cIjpcImRpc3RyaWJ1dGUucGNfcmVsZXZhbnQubm9uZS10YXNrLWJsb2ctMn5kZWZhdWx0fkJsb2dDb21tZW5kRnJvbUJhaWR1flJhdGUtMi01MjkyMDMwMy1ibG9nLTExMjI3MTE5NS4yMzVedjQzXnBjX2Jsb2dfYm90dG9tX3JlbGV2YW5jZV9iYXNlOVwiLFwiZGlzdF9yZXF1ZXN0X2lkXCI6XCIxNzM1NDE2NDM4Njg5XzAyOTk3XCJ9IiwiZGlzdF9yZXF1ZXN0X2lkIjoiMTczNTQxNjQzODY4OV8wMjk5NyIsImFiX3N0cmF0ZWd5IjoidmlwZGVmYXVsdCIsImluZGV4IjoiMiIsInN0cmF0ZWd5IjoiMn5kZWZhdWx0fkJsb2dDb21tZW5kRnJvbUJhaWR1flJhdGUiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2RjeGh1bjMvYXJ0aWNsZS9kZXRhaWxzLzUyOTIwMzAzIn0nPgoJPGRpdiBjbGFzcz0iY29udGVudC1ib3giPgoJCTxkaXYgY2xhc3M9ImNvbnRlbnQtYmxvZyBkaXNwbGF5LWZsZXgiPgoJCQk8ZGl2IGNsYXNzPSJ0aXRsZS1ib3giPgoJCQkJPHNwYW4gY2xhc3M9InR5cGUiPgoJCQkJCTxpbWcgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9jb21wb25lbnRzL2ltZy9ibG9nVHlwZS5wbmciIGFsdD0iIj4KCQkJCQk8c3BhbiBjbGFzcz0idGlwIj7ljZrlrqI8L3NwYW4+CgkJCQk8L3NwYW4+CgkJCQk8YSBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvZGN4aHVuMy9hcnRpY2xlL2RldGFpbHMvNTI5MjAzMDMiIGNsYXNzPSJ0aXQiIHRhcmdldD0iX2JsYW5rIiAgZGF0YS1yZXBvcnQtY2xpY2s9J3siYWIiOiJuZXciLCJzcG0iOiIxMDAxLjIxMDEuMzAwMS42NjUwLjIiLCJtb2QiOiJwb3B1XzM4NyIsImV4dHJhIjoie1wiaGlnaGxpZ2h0U2NvcmVcIjowLjAsXCJ1dG1fbWVkaXVtXCI6XCJkaXN0cmlidXRlLnBjX3JlbGV2YW50Lm5vbmUtdGFzay1ibG9nLTJ+ZGVmYXVsdH5CbG9nQ29tbWVuZEZyb21CYWlkdX5SYXRlLTItNTI5MjAzMDMtYmxvZy0xMTIyNzExOTUuMjM1XnY0M15wY19ibG9nX2JvdHRvbV9yZWxldmFuY2VfYmFzZTlcIixcImRpc3RfcmVxdWVzdF9pZFwiOlwiMTczNTQxNjQzODY4OV8wMjk5N1wifSIsImRpc3RfcmVxdWVzdF9pZCI6IjE3MzU0MTY0Mzg2ODlfMDI5OTciLCJhYl9zdHJhdGVneSI6InZpcGRlZmF1bHQiLCJpbmRleCI6IjIiLCJzdHJhdGVneSI6IjJ+ZGVmYXVsdH5CbG9nQ29tbWVuZEZyb21CYWlkdX5SYXRlIiwiZGVzdCI6Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC9kY3hodW4zL2FydGljbGUvZGV0YWlscy81MjkyMDMwMyJ9JyAgZGF0YS1yZXBvcnQtcXVlcnk9J3NwbT0xMDAxLjIxMDEuMzAwMS42NjUwLjImdXRtX21lZGl1bT1kaXN0cmlidXRlLnBjX3JlbGV2YW50Lm5vbmUtdGFzay1ibG9nLTIlN0VkZWZhdWx0JTdFQmxvZ0NvbW1lbmRGcm9tQmFpZHUlN0VSYXRlLTItNTI5MjAzMDMtYmxvZy0xMTIyNzExOTUuMjM1JTVFdjQzJTVFcGNfYmxvZ19ib3R0b21fcmVsZXZhbmNlX2Jhc2U5JmRlcHRoXzEtdXRtX3NvdXJjZT1kaXN0cmlidXRlLnBjX3JlbGV2YW50Lm5vbmUtdGFzay1ibG9nLTIlN0VkZWZhdWx0JTdFQmxvZ0NvbW1lbmRGcm9tQmFpZHUlN0VSYXRlLTItNTI5MjAzMDMtYmxvZy0xMTIyNzExOTUuMjM1JTVFdjQzJTVFcGNfYmxvZ19ib3R0b21fcmVsZXZhbmNlX2Jhc2U5Jz4KCQkJCQk8ZGl2IGNsYXNzPSJsZWZ0IGVsbGlwc2lzLW9ubGluZSBlbGxpcHNpcy1vbmxpbmUtMSI+5Z+65LqORmFzdGVyIFJDTk7nmoTljLvlrablm77lg4/mo4DmtYvvvIg8ZW0+6IK657uT6IqCPC9lbT7mo4DmtYvvvIk8L2Rpdj4KCQkJCQk8ZGl2IGNsYXNzPSJ0YWciPueDremXqOaOqOiNkDwvZGl2PgoJCQkJPC9hPgoJCQk8L2Rpdj4KCQkJPGRpdiBjbGFzcz0iaW5mby1ib3ggZGlzcGxheS1mbGV4Ij4KCQkJCTxkaXYgY2xhc3M9ImluZm8iPgoJCQkJCTxhIGhyZWY9Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC9kY3hodW4zIiB0YXJnZXQ9Il9ibGFuayI+PHNwYW4gY2xhc3M9ImJsb2ctdGl0bGUiPmRjeGh1bjPnmoTljZrlrqI8L3NwYW4+PC9hPgoJCQkJPC9kaXY+CgkJCQk8ZGl2IGNsYXNzPSJpbmZvIGRpc3BsYXktZmxleCI+CgkJCQkJPHNwYW4gY2xhc3M9ImluZm8tYmxvY2sgdGltZSI+MTAtMjU8L3NwYW4+CgkJCQkJPHNwYW4gY2xhc3M9ImluZm8tYmxvY2sgcmVhZCI+PGltZyBjbGFzcz0icmVhZC1pbWciIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3JlYWRDb3VudFdoaXRlLnBuZyIgYWx0PSIiPgoJCQkJCTLkuIcrCgkJCQkJPC9zcGFuPgoJCQkJPC9kaXY+CgkJCTwvZGl2PgoJCTwvZGl2PgoJCTxkaXYgY2xhc3M9ImRlc2MtYm94Ij4KCQkJPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2RjeGh1bjMvYXJ0aWNsZS9kZXRhaWxzLzUyOTIwMzAzIiB0YXJnZXQ9Il9ibGFuayIgIGRhdGEtcmVwb3J0LWNsaWNrPSd7ImFiIjoibmV3Iiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNjY1MC4yIiwibW9kIjoicG9wdV8zODciLCJleHRyYSI6IntcImhpZ2hsaWdodFNjb3JlXCI6MC4wLFwidXRtX21lZGl1bVwiOlwiZGlzdHJpYnV0ZS5wY19yZWxldmFudC5ub25lLXRhc2stYmxvZy0yfmRlZmF1bHR+QmxvZ0NvbW1lbmRGcm9tQmFpZHV+UmF0ZS0yLTUyOTIwMzAzLWJsb2ctMTEyMjcxMTk1LjIzNV52NDNecGNfYmxvZ19ib3R0b21fcmVsZXZhbmNlX2Jhc2U5XCIsXCJkaXN0X3JlcXVlc3RfaWRcIjpcIjE3MzU0MTY0Mzg2ODlfMDI5OTdcIn0iLCJkaXN0X3JlcXVlc3RfaWQiOiIxNzM1NDE2NDM4Njg5XzAyOTk3IiwiYWJfc3RyYXRlZ3kiOiJ2aXBkZWZhdWx0IiwiaW5kZXgiOiIyIiwic3RyYXRlZ3kiOiIyfmRlZmF1bHR+QmxvZ0NvbW1lbmRGcm9tQmFpZHV+UmF0ZSIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvZGN4aHVuMy9hcnRpY2xlL2RldGFpbHMvNTI5MjAzMDMifScgIGRhdGEtcmVwb3J0LXF1ZXJ5PSdzcG09MTAwMS4yMTAxLjMwMDEuNjY1MC4yJnV0bV9tZWRpdW09ZGlzdHJpYnV0ZS5wY19yZWxldmFudC5ub25lLXRhc2stYmxvZy0yJTdFZGVmYXVsdCU3RUJsb2dDb21tZW5kRnJvbUJhaWR1JTdFUmF0ZS0yLTUyOTIwMzAzLWJsb2ctMTEyMjcxMTk1LjIzNSU1RXY0MyU1RXBjX2Jsb2dfYm90dG9tX3JlbGV2YW5jZV9iYXNlOSZkZXB0aF8xLXV0bV9zb3VyY2U9ZGlzdHJpYnV0ZS5wY19yZWxldmFudC5ub25lLXRhc2stYmxvZy0yJTdFZGVmYXVsdCU3RUJsb2dDb21tZW5kRnJvbUJhaWR1JTdFUmF0ZS0yLTUyOTIwMzAzLWJsb2ctMTEyMjcxMTk1LjIzNSU1RXY0MyU1RXBjX2Jsb2dfYm90dG9tX3JlbGV2YW5jZV9iYXNlOSc+CgkJCQk8ZGl2IGNsYXNzPSJkZXNjIGVsbGlwc2lzLW9ubGluZSBlbGxpcHNpcy1vbmxpbmUtMSI+RmFzdGVyLVItQ05O566X5rOV55Sx5Lik5aSn5qih5Z2X57uE5oiQ77yaMS5QUk7lgJnpgInmoYbmj5Dlj5bmqKHlnZcgMi5GYXN0IFItQ05O5qOA5rWL5qih5Z2X44CC5YW25Lit77yMUlBO5piv5YWo5Y2356ev56We57uP572R57uc77yM55So5LqO5o+Q5Y+W5YCZ6YCJ5qGG77ybRmFzdCBSLUNOTuWfuuS6jlJQTuaPkOWPlueahHByb3Bvc2Fs5qOA5rWL5bm2PGVtPuivhuWIqzwvZW0+cHJvcG9zYWzkuK3nmoTnm67moIfjgIIg5ZyoIOWtpuS5oEZhc3Rlci1SQ05OIChweS1mYXN0ZXItcmNubiBkZW1vKeeahOWfuuehgOS4iiDnlKjoh6rlt7HnmoTmlbDmja7orq3nu4Mg6L+Z6YeM6YCJ5oup55qE5pivQ1TogrrmlbDmja7vvIzlhbPkuo7mlbDmja7lpITnkIbmlrnpnaLnmoTpl67popjlj4LnhafmiJHljZrlrqIg77yaPC9kaXY+CgkJCTwvYT4KCQk8L2Rpdj4KCTwvZGl2Pgo8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KPGRpdiBjbGFzcz0iYmxvZy1mb290ZXItYm90dG9tIiBzdHlsZT0ibWFyZ2luLXRvcDoxMHB4OyI+PC9kaXY+CjxzY3JpcHQgc3JjPSJodHRwczovL2cuY3NkbmltZy5jbi9jb21tb24vY3Nkbi1mb290ZXIvY3Nkbi1mb290ZXIuanMiIGRhdGEtaXNmb290ZXJ0cmFjaz0iZmFsc2UiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgIHdpbmRvdy5jc2RuLmNzZG5Gb290ZXIub3B0aW9ucyA9IHsKICAgICAgICBlbDogJy5ibG9nLWZvb3Rlci1ib3R0b20nLAogICAgICAgIHR5cGU6IDIKICAgIH0KPC9zY3JpcHQ+ICAgICAgICAgIDwvbWFpbj4KPGFzaWRlIGNsYXNzPSJibG9nX2NvbnRhaW5lcl9hc2lkZSI+CjxkaXYgaWQ9ImFzaWRlUHJvZmlsZSIgY2xhc3M9ImFzaWRlLWJveCI+CiAgICA8ZGl2IGNsYXNzPSJwcm9maWxlLWludHJvIGQtZmxleCI+CiAgICAgICAgPGRpdiBjbGFzcz0iYXZhdGFyLWJveCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBmbGV4LWNvbHVtbiI+CiAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDciIHRhcmdldD0iX2JsYW5rIiBkYXRhLXJlcG9ydC1jbGljaz0neyJtb2QiOiJwb3B1XzM3OSIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjQxMjEiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0NyIsImFiIjoibmV3In0nPgogICAgICAgICAgICAgICAgPGltZyBzcmM9Imh0dHBzOi8vcHJvZmlsZS1hdmF0YXIuY3NkbmltZy5jbi9kNWJmMmVlODlmZDc0ZDVhYTA4NjkzNjc4YTkwM2U1OV93ZWl4aW5fMzA3ODM5NDcuanBnITEiIGNsYXNzPSJhdmF0YXJfcGljIj4KICAgICAgICAgICAgPC9hPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InVzZXItaW5mbyBkLWZsZXggZmxleC1jb2x1bW4gcHJvZmlsZS1pbnRyby1uYW1lLWJveCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2ZpbGUtaW50cm8tbmFtZS1ib3hUb3AiPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0NyIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSIiIGlkPSJ1aWQiIHRpdGxlPSLplZbni67nvZEiIGRhdGEtcmVwb3J0LWNsaWNrPSd7Im1vZCI6InBvcHVfMzc5Iiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNDEyMiIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3IiwiYWIiOiJuZXcifSc+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hbWUgIiB1c2VybmFtZT0id2VpeGluXzMwNzgzOTQ3Ij7plZbni67nvZE8L3NwYW4+CiAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICA8c3Bhbj4KICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJmbGFnIGV4cGVydC1ibG9nIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJidWJibGUiPkNTRE7orqTor4HljZrlrqLkuJPlrrY8L3NwYW4+CiAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZmxhZyBjb21wYW55LWJsb2ciPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImJ1YmJsZSI+Q1NETuiupOivgeS8geS4muWNmuWuojwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2ZpbGUtaW50cm8tbmFtZS1ib3hGb290ZXIiPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InBlcnNvbmFsLWhvbWUtcGFnZSBwZXJzb25hbC1ob21lLXllYXJzIiB0aXRsZT0i5bey5Yqg5YWlIENTRE4gN+W5tCI+56CB6b6EN+W5tDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icGVyc29uYWwtaG9tZS1wYWdlIj4KICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0icGVyc29uYWwtaG9tZS1jZXJ0aWZpY2F0aW9uIiBocmVmPSJodHRwczovL2kuY3Nkbi5uZXQvIy91Yy9wcm9maWxlP3V0bV9zb3VyY2U9MTQ5OTg5NjgiIHRhcmdldD0iX2JsYW5rIiB0aXRsZT0i5pqC5peg6K6k6K+BIj4KICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL2lkZW50aXR5L25vY0VydGlmaWNhdGlvbi5wbmciIGFsdD0iIj4KICAgICAgICAgICAgICAgICAgICDmmoLml6DorqTor4EKICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0iZGF0YS1pbmZvIGQtZmxleCBpdGVtLXRpbGluZyI+CiAgICAgICAgPGRsIGNsYXNzPSJ0ZXh0LWNlbnRlciIgdGl0bGU9IjcxIj4KICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0NyIgZGF0YS1yZXBvcnQtY2xpY2s9J3sibW9kIjoiMTU5ODMyMTAwMF8wMDEiLCJzcG0iOiIxMDAxLjIxMDEuMzAwMS40MzEwIn0nIGRhdGEtcmVwb3J0LXF1ZXJ5PSJ0PTEiPiAgCiAgICAgICAgICAgICAgICA8ZHQ+PHNwYW4gY2xhc3M9ImNvdW50Ij43MTwvc3Bhbj48L2R0PgogICAgICAgICAgICAgICAgPGRkIGNsYXNzPSJmb250Ij7ljp/liJs8L2RkPgogICAgICAgICAgICA8L2E+CiAgICAgICAgPC9kbD4KICAgICAgICA8ZGwgY2xhc3M9InRleHQtY2VudGVyIiBkYXRhLXJlcG9ydC1jbGljaz0neyJtb2QiOiIxNTk4MzIxMDAwXzAwMiIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjQzMTEifScgdGl0bGU9IuaaguaXoOaOkuWQjSI+CiAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC9yYW5rL2xpc3Qvd2Vla2x5IiB0YXJnZXQ9Il9ibGFuayI+CiAgICAgICAgICAgICAgICA8ZHQ+PHNwYW4gY2xhc3M9ImNvdW50Ij4tPC9zcGFuPjwvZHQ+CiAgICAgICAgICAgICAgICA8ZGQgY2xhc3M9ImZvbnQiPuWRqOaOkuWQjTwvZGQ+CiAgICAgICAgICAgIDwvYT4KICAgICAgICA8L2RsPgogICAgICAgIDxkbCBjbGFzcz0idGV4dC1jZW50ZXIiIHRpdGxlPSIyMjQyNTc4Ij4KICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3JhbmsvbGlzdC90b3RhbCIgZGF0YS1yZXBvcnQtY2xpY2s9J3sibW9kIjoiMTU5ODMyMTAwMF8wMDMiLCJzcG0iOiIxMDAxLjIxMDEuMzAwMS40MzEyIn0nIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICAgICAgICAgIDxkdD48c3BhbiBjbGFzcz0iY291bnQiPjIyNOS4hys8L3NwYW4+PC9kdD4KICAgICAgICAgICAgICAgIDxkZCBjbGFzcz0iZm9udCI+5oC75o6S5ZCNPC9kZD4KICAgICAgICAgICAgPC9hPgogICAgICAgIDwvZGw+CiAgICAgICAgPGRsIGNsYXNzPSJ0ZXh0LWNlbnRlciIgc3R5bGU9Im1pbi13aWR0aDo1OHB4IiB0aXRsZT0iMTM4NDE2Ij4gIAogICAgICAgICAgICA8ZHQ+PHNwYW4gY2xhc3M9ImNvdW50Ij4xM+S4hys8L3NwYW4+PC9kdD4KICAgICAgICAgICAgPGRkPuiuv+mXrjwvZGQ+CiAgICAgICAgPC9kbD4KICAgICAgICA8ZGwgY2xhc3M9InRleHQtY2VudGVyIiB0aXRsZT0iMue6pyzngrnlh7vmn6XnnIvnrYnnuqfor7TmmI4iPgogICAgICAgICAgICA8ZHQ+PGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2Jsb2dkZXZ0ZWFtL2FydGljbGUvZGV0YWlscy8xMDM0Nzg0NjEiIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9ImxldmVsIiBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9pZGVudGl0eS9ibG9nMi5wbmciPgogICAgICAgICAgICA8L2E+CiAgICAgICAgICAgIDwvZHQ+CiAgICAgICAgICAgIDxkZD7nrYnnuqc8L2RkPgogICAgICAgIDwvZGw+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9Iml0ZW0tcmFuayI+PC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJkYXRhLWluZm8gZC1mbGV4IGl0ZW0tdGlsaW5nIj4KICAgICAgICA8ZGwgY2xhc3M9InRleHQtY2VudGVyIiB0aXRsZT0iMTg2Ij4KICAgICAgICAgICAgPGR0PjxzcGFuIGNsYXNzPSJjb3VudCI+MTg2PC9zcGFuPjwvZHQ+CiAgICAgICAgICAgIDxkZD7np6/liIY8L2RkPgogICAgICAgIDwvZGw+CiAgICAgICAgIDxkbCBjbGFzcz0idGV4dC1jZW50ZXIiIGlkPSJmYW5Cb3giIHRpdGxlPSIyNiI+CiAgICAgICAgICAgIDxkdD48c3BhbiBjbGFzcz0iY291bnQiIGlkPSJmYW4iPjI2PC9zcGFuPjwvZHQ+CiAgICAgICAgICAgIDxkZD7nsonkuJ08L2RkPgogICAgICAgIDwvZGw+CiAgICAgICAgPGRsIGNsYXNzPSJ0ZXh0LWNlbnRlciIgdGl0bGU9IjEzIj4KICAgICAgICAgICAgPGR0PjxzcGFuIGNsYXNzPSJjb3VudCI+MTM8L3NwYW4+PC9kdD4KICAgICAgICAgICAgPGRkPuiOt+i1njwvZGQ+CiAgICAgICAgPC9kbD4KICAgICAgICA8ZGwgY2xhc3M9InRleHQtY2VudGVyIiB0aXRsZT0iMCI+CiAgICAgICAgICAgIDxkdD48c3BhbiBjbGFzcz0iY291bnQiPjA8L3NwYW4+PC9kdD4KICAgICAgICAgICAgPGRkPuivhOiuujwvZGQ+CiAgICAgICAgPC9kbD4KICAgICAgICA8ZGwgY2xhc3M9InRleHQtY2VudGVyIiB0aXRsZT0iNzkiPgogICAgICAgICAgICA8ZHQ+PHNwYW4gY2xhc3M9ImNvdW50Ij43OTwvc3Bhbj48L2R0PgogICAgICAgICAgICA8ZGQ+5pS26JePPC9kZD4KICAgICAgICA8L2RsPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJhc2lkZS1ib3gtZm9vdGVyIiBkYXRhLXJlcG9ydC12aWV3PSd7InNwbSI6IjMwMDEuNDI5NiJ9Jz4KICAgICAgICA8ZGl2IGNsYXNzPSJiYWRnZS1ib3ggZC1mbGV4Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFkZ2UgZC1mbGV4Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Imljb24tYmFkZ2UiIHRpdGxlPSLliJvkvZzog73miYsiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1vdXNlLWJveCI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9Im1lZGFsLWltZyIgZGF0YS1yZXBvcnQtY2xpY2s9J3sic3BtIjoiMzAwMS40Mjk2In0nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL21lZGFsL3FpeGllYmlhb2Jpbmc0QDI0MC5wbmciIGFsdD0i5Yib5L2c6IO95omLIj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0icHJvZmlsZS1pbnRyby1uYW1lLWJveE9wcmF0aW9uIj4KICAgICAgICA8ZGl2IGNsYXNzPSJvcHQtbGV0dGVyLXdhdGNoLWJveCI+CiAgICAgICAgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImJ0LWJ1dHRvbiBwZXJzb25hbC1sZXR0ZXIiIGhyZWY9Imh0dHBzOi8vaW0uY3Nkbi5uZXQvY2hhdC93ZWl4aW5fMzA3ODM5NDciIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIj7np4Hkv6E8L2E+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ib3B0LWxldHRlci13YXRjaC1ib3giPiAKICAgICAgICAgICAgPGEgY2xhc3M9InBlcnNvbmFsLXdhdGNoIGJ0LWJ1dHRvbiIgaWQ9ImJ0bkF0dGVudCIgPuWFs+azqDwvYT4gIAogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CjwvZGl2Pgo8YSBpZD0icmVtdW5lcmF0aW9uIiBkYXRhLXJlcG9ydC1jbGljaz0neyJzcG0iOiIxMDAxLjIxMDEuMzAwMS45ODA5In0nIHJlbD0ibm9mb2xsb3ciIGhyZWY9IiIgY2xhc3M9InJlbXVuZXJhdGlvbi1ib3giPgogIDxpbWcgc3JjPSIiIGFsdD0iIj4KPC9hPgogIDxkaXYgaWQ9ImFzaWRlV3JpdGVHdWlkZSIgY2xhc3M9ImFzaWRlLWJveCBzaWRlLXdyaXRlLWd1aWRlLWJveCB0eXBlLTEiIGRhdGEtcmVwb3J0LXZpZXc9J3sic3BtIjoiMzAwMS45NzI3In0nPgogICAgPGRpdiBjbGFzcz0iY29udGVudC1ib3giPgogICAgICA8YSByZWw9Im5vZm9sbG93IiBocmVmPSJodHRwczovL21wLmNzZG4ubmV0IiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9ImJ0bi1nby13cml0ZSIgZGF0YS1yZXBvcnQtcXVlcnk9InNwbT0zMDAxLjk3MjciIGRhdGEtcmVwb3J0LWNsaWNrPSd7InNwbSI6IjMwMDEuOTcyNyJ9Jz4KICAgICAgICA8aW1nIHNyYz0iaHR0cHM6Ly9pbWctaG9tZS5jc2RuaW1nLmNuL2ltYWdlcy8yMDI0MDIxODAyMTgzNy5wbmciIGFsdD0i5YaZ5paH56ugIj4KICAgICAgPC9hPgogICAgPC9kaXY+CiAgPC9kaXY+CjxkaXYgaWQ9ImFzaWRlU2VhcmNoQXJ0aWNsZSIgY2xhc3M9ImFzaWRlLWJveCI+Cgk8ZGl2IGNsYXNzPSJhc2lkZS1jb250ZW50IHNlYXJjaC1jb210ZXIiPgogICAgPGRpdiBjbGFzcz0iYXNpZGUtc2VhcmNoIGFzaWRlLXNlYXJjaC1ibG9nIj4gICAgICAgICAKICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgY2xhc3M9ImlucHV0LXNlcmNoLWJsb2ciIG5hbWU9IiIgYXV0b2NvbXBsZXRlPSJvZmYiIHZhbHVlPSIiIGlkPSJzZWFyY2gtYmxvZy13b3JkcyIgcGxhY2Vob2xkZXI9IuaQnOWNmuS4u+aWh+eroCI+CiAgICAgICAgPGEgY2xhc3M9ImJ0bi1zZWFyY2gtYmxvZyIgZGF0YS1yZXBvcnQtY2xpY2s9J3sic3BtIjoiMTAwMS4yMTAxLjMwMDEuOTE4MiJ9Jz4KICAgICAgICAgICAgPGltZyBzcmM9Ii8vY3NkbmltZy5jbi9jZG4vY29udGVudC10b29sYmFyL2NzZG4tc291LnBuZz92PTE1ODcwMjEwNDIiPgogICAgICAgIDwvYT4KICAgIDwvZGl2PgogICAgPC9kaXY+CjwvZGl2PgoKCgo8ZGl2IGlkPSJhc2lkZUhvdEFydGljbGUiIGNsYXNzPSJhc2lkZS1ib3giPgoJPGgzIGNsYXNzPSJhc2lkZS10aXRsZSI+54Ot6Zeo5paH56ugPC9oMz4KCTxkaXYgY2xhc3M9ImFzaWRlLWNvbnRlbnQiPgoJCTx1bCBjbGFzcz0iaG90QXJ0aWNsZS1saXN0Ij4KCQkJPGxpPgoJCQkJPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Ny9hcnRpY2xlL2RldGFpbHMvMTEzMDM3MjIzIiB0YXJnZXQ9Il9ibGFuayIgIGRhdGEtcmVwb3J0LWNsaWNrPSd7Im1vZCI6InBvcHVfNTQxIiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNDEzOSIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xMTMwMzcyMjMiLCJhYiI6Im5ldyJ9Jz4KCQkJCeWNjuS4uuS6kWlvdOihqOW+geS6p+WTgeaVsOaNruaooeWei1/lpKfmsrPnvZHnu5zkvKDlqpLpm4blm6LmioDmnK/noJTlj5Hlho3moJHph4znqIvnopEgIOS6p+WTgemAmui/h+WNjuS4uumysum5j+S6keiupOivgS4uLgoJCQkJCTxpbWcgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvcmVhZENvdW50V2hpdGUucG5nIiBhbHQ9IiI+CgkJCQkJPHNwYW4gY2xhc3M9InJlYWQiPjI1MDcwPC9zcGFuPgogICAgICAgICAgICAgICAgPC9hPgoJCQk8L2xpPgoJCQk8bGk+CgkJCQk8YSBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xMTE5MDY1NjUiIHRhcmdldD0iX2JsYW5rIiAgZGF0YS1yZXBvcnQtY2xpY2s9J3sibW9kIjoicG9wdV81NDEiLCJzcG0iOiIxMDAxLjIxMDEuMzAwMS40MTM5IiwiZGVzdCI6Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDcvYXJ0aWNsZS9kZXRhaWxzLzExMTkwNjU2NSIsImFiIjoibmV3In0nPgoJCQkJaGJ1aWxkZXJ45Li65LuA5LmI5omT5LiN5byAX3dpbmRvd3Pns7vnu5/vvIxIQnVpbGRlcljml6Dms5XlkK/liqjjgIHngrnlh7vml6Dlj43lupTjgIHmiJblkK/liqjmiqXplJnnmoTop6PlhrPmlrnmoYguLi4KCQkJCQk8aW1nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3JlYWRDb3VudFdoaXRlLnBuZyIgYWx0PSIiPgoJCQkJCTxzcGFuIGNsYXNzPSJyZWFkIj4xMzQ1Mjwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvYT4KCQkJPC9saT4KCQkJPGxpPgoJCQkJPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Ny9hcnRpY2xlL2RldGFpbHMvMTEzMzIxMTc2IiB0YXJnZXQ9Il9ibGFuayIgIGRhdGEtcmVwb3J0LWNsaWNrPSd7Im1vZCI6InBvcHVfNTQxIiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNDEzOSIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xMTMzMjExNzYiLCJhYiI6Im5ldyJ9Jz4KCQkJCXN0ZWFt5oiQ5bCx6Kej6ZSB5ZmoX3N0ZWFt5ri45oiP6Kej6ZSB5bel5YW3CgkJCQkJPGltZyBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy9yZWFkQ291bnRXaGl0ZS5wbmciIGFsdD0iIj4KCQkJCQk8c3BhbiBjbGFzcz0icmVhZCI+NjYzNzwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvYT4KCQkJPC9saT4KCQkJPGxpPgoJCQkJPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Ny9hcnRpY2xlL2RldGFpbHMvMTE5MDE5Mzc3IiB0YXJnZXQ9Il9ibGFuayIgIGRhdGEtcmVwb3J0LWNsaWNrPSd7Im1vZCI6InBvcHVfNTQxIiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNDEzOSIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xMTkwMTkzNzciLCJhYiI6Im5ldyJ9Jz4KCQkJCea1i+ivlei9r+S7tua1i+aYvuWNoeacieWVuOWPqyzlroznvo7op6PlhrMg5pi+5Y2h55S15rWB5aOw77yB5pi+5Y2h5ZW45Y+r77yB5ZCx5ZCx55qE55S15rWB5aOw77yB6ZmE6Kej5Yaz5pa55qGI77yBLi4uCgkJCQkJPGltZyBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy9yZWFkQ291bnRXaGl0ZS5wbmciIGFsdD0iIj4KCQkJCQk8c3BhbiBjbGFzcz0icmVhZCI+NTk4Njwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvYT4KCQkJPC9saT4KCQkJPGxpPgoJCQkJPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Ny9hcnRpY2xlL2RldGFpbHMvMTEzMTEyMjU3IiB0YXJnZXQ9Il9ibGFuayIgIGRhdGEtcmVwb3J0LWNsaWNrPSd7Im1vZCI6InBvcHVfNTQxIiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNDEzOSIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xMTMxMTIyNTciLCJhYiI6Im5ldyJ9Jz4KCQkJCW15c3FsIGRlbGV0ZSDooajlhbPogZTliKDpmaTmlbDmja5fTVlTUUzkuK1kZWxldGXliKDpmaTlpJrooajmlbDmja7kuI7liKDpmaTlhbPogZTmlbDmja4KCQkJCQk8aW1nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3JlYWRDb3VudFdoaXRlLnBuZyIgYWx0PSIiPgoJCQkJCTxzcGFuIGNsYXNzPSJyZWFkIj41OTQxPC9zcGFuPgogICAgICAgICAgICAgICAgPC9hPgoJCQk8L2xpPgoJCTwvdWw+Cgk8L2Rpdj4KPC9kaXY+CjxkaXYgaWQ9ImFzaWRlTmV3Q29tbWVudHMiIGNsYXNzPSJhc2lkZS1ib3giPgogICAgPGgzIGNsYXNzPSJhc2lkZS10aXRsZSI+5pyA5paw6K+E6K66PC9oMz4KICAgIDxkaXYgY2xhc3M9ImFzaWRlLWNvbnRlbnQiPgogICAgICAgIDx1bCBjbGFzcz0ibmV3Y29tbWVudC1saXN0Ij4KICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgPGEgY2xhc3M9InRpdGxlIHRleHQtdHJ1bmNhdGUiIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xNDEwMDQ5MDcjY29tbWVudHNfMzQzOTI4MDEiIGRhdGEtcmVwb3J0LWNsaWNrPSd7Im1vZCI6InBvcHVfNTQyIiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNDIzMSIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xNDEwMDQ5MDcjY29tbWVudHNfMzQzOTI4MDEiLCJhYiI6Im5ldyJ9JyBkYXRhLXJlcG9ydC12aWV3PSd7Im1vZCI6InBvcHVfNTQyIiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNDIzMSIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xNDEwMDQ5MDcjY29tbWVudHNfMzQzOTI4MDEiLCJhYiI6Im5ldyJ9Jz5Qb2ludEdQVDwvYT4KICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJjb21tZW50IGVsbGlwc2lzIj4KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL3FpbnlpbmdqaWUuYmxvZy5jc2RuLm5ldCIgY2xhc3M9InVzZXItbmFtZSIgdGFyZ2V0PSJfYmxhbmsiPkt3YW7nmoTop6Plv6fmnYLotKfpk7pA5paw56m66Ze05Luj56CB5bel5L2c5a6kOiA8L2E+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvZGUtY29tbWVudHMiPuWNmuS4u+eahOaWh+eroOaAu+aYr+WmguS4gOebj+aYjueBr++8jOaMh+W8leaIkeWJjei/m++8jOS9oOeahOWNmuaWh+aAu+aYr+WFhea7oeS6hua3seWIu+ingeino++8jOWvueaIkeeahOWtpuS5oOW4ruWKqeW+iOWkp++8jOecn+eahOW+iOaEn+a/gOS9oOeahOi+m+WLpOWKquWKm+OAgumdnuW4uOaEn+a/gOS9oOeahOS4k+S4muefpeivhuS8oOaOiOOAgjwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvcD4KICAgICAgICAgICAgPC9saT4KICAgICAgICA8L3VsPgogICAgPC9kaXY+CjwvZGl2Pgo8ZGl2IGlkPSJhc2lkZUhvdEFydGljbGUiIGNsYXNzPSJhc2lkZS1ib3giPgoJPGgzIGNsYXNzPSJhc2lkZS10aXRsZSI+5aSn5a625Zyo55yLPC9oMz4KCTxkaXYgY2xhc3M9ImFzaWRlLWNvbnRlbnQiPgoJCTx1bCBjbGFzcz0iaG90QXJ0aWNsZS1saXN0Ij4KCQkJPGxpPgoJCQkJPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3VuaXZlcnNza3kyMDE1L2FydGljbGUvZGV0YWlscy8xNDQ2NTUzNzAiIHRhcmdldD0iX2JsYW5rIiAgZGF0YS1yZXBvcnQtY2xpY2s9J3sic3BtIjoiMTAwMS4yMTAxLjMwMDEuMTAwOTMiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3VuaXZlcnNza3kyMDE1L2FydGljbGUvZGV0YWlscy8xNDQ2NTUzNzAiLCJzdHJhdGVneSI6IjIwMl8xMDUyNzIzLTIyMTY4MjFfUkNNRCIsImFiIjoibmV3In0nIGRhdGEtcmVwb3J0LXZpZXc9J3sic3BtIjoiMTAwMS4yMTAxLjMwMDEuMTAwOTMiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3VuaXZlcnNza3kyMDE1L2FydGljbGUvZGV0YWlscy8xNDQ2NTUzNzAiLCJzdHJhdGVneSI6IjIwMl8xMDUyNzIzLTIyMTY4MjFfUkNNRCIsImFiIjoibmV3In0nPgoJCQkJ5aSn5qih5Z6L5Y+v6Kej6YeK5o6o55CG5LiO5o+Q56S66K+N6ZO+6Lev5YiG5p6QCgkJCQkJPGltZyBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy9yZWFkQ291bnRXaGl0ZS5wbmciIGFsdD0iIj4KCQkJCQk8c3BhbiBjbGFzcz0icmVhZCI+ODI0PC9zcGFuPgogICAgICAgIDwvYT4KCQkJPC9saT4KCQkJPGxpPgoJCQkJPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0NoZW43Q2hhbi9hcnRpY2xlL2RldGFpbHMvMTQ0Nzg3OTAxIiB0YXJnZXQ9Il9ibGFuayIgIGRhdGEtcmVwb3J0LWNsaWNrPSd7InNwbSI6IjEwMDEuMjEwMS4zMDAxLjEwMDkzIiwiZGVzdCI6Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC9DaGVuN0NoYW4vYXJ0aWNsZS9kZXRhaWxzLzE0NDc4NzkwMSIsInN0cmF0ZWd5IjoiMjAyXzEwNTI3MjMtMjIxNjM2M19SQ01EIiwiYWIiOiJuZXcifScgZGF0YS1yZXBvcnQtdmlldz0neyJzcG0iOiIxMDAxLjIxMDEuMzAwMS4xMDA5MyIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvQ2hlbjdDaGFuL2FydGljbGUvZGV0YWlscy8xNDQ3ODc5MDEiLCJzdHJhdGVneSI6IjIwMl8xMDUyNzIzLTIyMTYzNjNfUkNNRCIsImFiIjoibmV3In0nPgoJCQkJQ1NT57O75YiX77yINDLvvIktLSBCYWNrZHJvcCBGaWx0ZXLor6bop6MKCQkJCQk8aW1nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3JlYWRDb3VudFdoaXRlLnBuZyIgYWx0PSIiPgoJCQkJCTxzcGFuIGNsYXNzPSJyZWFkIj4xMjc8L3NwYW4+CiAgICAgICAgPC9hPgoJCQk8L2xpPgoJCQk8bGk+CgkJCQk8YSBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvVGlhbkxldW5nL2FydGljbGUvZGV0YWlscy8xNDQ3MTk4NTQiIHRhcmdldD0iX2JsYW5rIiAgZGF0YS1yZXBvcnQtY2xpY2s9J3sic3BtIjoiMTAwMS4yMTAxLjMwMDEuMTAwOTMiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1RpYW5MZXVuZy9hcnRpY2xlL2RldGFpbHMvMTQ0NzE5ODU0Iiwic3RyYXRlZ3kiOiIyMDJfMTA1MjcyMy0yMjE2ODEyX1JDTUQiLCJhYiI6Im5ldyJ9JyBkYXRhLXJlcG9ydC12aWV3PSd7InNwbSI6IjEwMDEuMjEwMS4zMDAxLjEwMDkzIiwiZGVzdCI6Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC9UaWFuTGV1bmcvYXJ0aWNsZS9kZXRhaWxzLzE0NDcxOTg1NCIsInN0cmF0ZWd5IjoiMjAyXzEwNTI3MjMtMjIxNjgxMl9SQ01EIiwiYWIiOiJuZXcifSc+CgkJCQlPcGVuQUnnmoQxMuWkqeaMpOeJmeiGj+W8j+WPkeW4g+S8mue7iOS6jue7k+adn+S6hu+8jOWMheiiseaenOeEtuWcqOacgOWQjk9wZW5BSSBvMyDmqKHlnovmraPlvI/lj5HluIPvvIHlpoLkvZXmj5DliY3ojrflj5bmtYvor5XotYTmoLzvvJ/kuIDnnIvkvr/nn6UKCQkJCQk8aW1nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3JlYWRDb3VudFdoaXRlLnBuZyIgYWx0PSIiPgoJCQkJCTxzcGFuIGNsYXNzPSJyZWFkIj40Mjg8L3NwYW4+CiAgICAgICAgPC9hPgoJCQk8L2xpPgoJCQk8bGk+CgkJCQk8YSBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQveHFkZC9hcnRpY2xlL2RldGFpbHMvMTQ0Njk3NzYxIiB0YXJnZXQ9Il9ibGFuayIgIGRhdGEtcmVwb3J0LWNsaWNrPSd7InNwbSI6IjEwMDEuMjEwMS4zMDAxLjEwMDkzIiwiZGVzdCI6Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC94cWRkL2FydGljbGUvZGV0YWlscy8xNDQ2OTc3NjEiLCJzdHJhdGVneSI6IjIwMl8xMDUyNzIzLTIyMTYyNjJfUkNNRCIsImFiIjoibmV3In0nIGRhdGEtcmVwb3J0LXZpZXc9J3sic3BtIjoiMTAwMS4yMTAxLjMwMDEuMTAwOTMiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hxZGQvYXJ0aWNsZS9kZXRhaWxzLzE0NDY5Nzc2MSIsInN0cmF0ZWd5IjoiMjAyXzEwNTI3MjMtMjIxNjI2Ml9SQ01EIiwiYWIiOiJuZXcifSc+CgkJCQlUT0dBRuahhuaetuWmguS9leW4ruWKqeS8geS4mui/m+ihjOaVsOWtl+WMlui9rOWeiwoJCQkJCTxpbWcgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvcmVhZENvdW50V2hpdGUucG5nIiBhbHQ9IiI+CgkJCQkJPHNwYW4gY2xhc3M9InJlYWQiPjE1ODg8L3NwYW4+CiAgICAgICAgPC9hPgoJCQk8L2xpPgoJCQk8bGk+CgkJCQk8YSBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzQ0NTA2NTM3L2FydGljbGUvZGV0YWlscy8xNDQ2NTc4NzIiIHRhcmdldD0iX2JsYW5rIiAgZGF0YS1yZXBvcnQtY2xpY2s9J3sic3BtIjoiMTAwMS4yMTAxLjMwMDEuMTAwOTMiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDUwNjUzNy9hcnRpY2xlL2RldGFpbHMvMTQ0NjU3ODcyIiwic3RyYXRlZ3kiOiIyMDJfMTA1MjcyMy0yMjE2Njg5X1JDTUQiLCJhYiI6Im5ldyJ9JyBkYXRhLXJlcG9ydC12aWV3PSd7InNwbSI6IjEwMDEuMjEwMS4zMDAxLjEwMDkzIiwiZGVzdCI6Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fNDQ1MDY1MzcvYXJ0aWNsZS9kZXRhaWxzLzE0NDY1Nzg3MiIsInN0cmF0ZWd5IjoiMjAyXzEwNTI3MjMtMjIxNjY4OV9SQ01EIiwiYWIiOiJuZXcifSc+CgkJCQlTQVDova/ku7bor7fmsYLlj7fnmoTlia/mnKzkvKDovpPnmoTnlKjpgJTlj4rmk43kvZzor7TmmI4KCQkJCQk8aW1nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3JlYWRDb3VudFdoaXRlLnBuZyIgYWx0PSIiPgoJCQkJCTxzcGFuIGNsYXNzPSJyZWFkIj44MDQ8L3NwYW4+CiAgICAgICAgPC9hPgoJCQk8L2xpPgoJCTwvdWw+Cgk8L2Rpdj4KPC9kaXY+CjxkaXYgaWQ9ImFzaWRlQXJjaGl2ZSIgY2xhc3M9ImFzaWRlLWJveCIgc3R5bGU9IiB3aWR0aDozMDBweDsiPgogICAgPGgzIGNsYXNzPSJhc2lkZS10aXRsZSI+5pyA5paw5paH56ugPC9oMz4KICAgIDxkaXYgY2xhc3M9ImFzaWRlLWNvbnRlbnQiPgogICAgICAgIDx1bCBjbGFzcz0iaW5mX2xpc3QgY2xlYXJmaXgiPgogICAgICAgICAgICA8bGkgY2xhc3M9ImNsZWFyZml4Ij4KICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Ny9hcnRpY2xlL2RldGFpbHMvMTQxMDA0OTA3IiB0YXJnZXQ9Il9ibGFuayIgZGF0YS1yZXBvcnQtY2xpY2s9J3sibW9kIjoicG9wdV8zODIiLCJzcG0iOiIxMDAxLjIxMDEuMzAwMS40MTM2IiwiZGVzdCI6Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDcvYXJ0aWNsZS9kZXRhaWxzLzE0MTAwNDkwNyIsImFiIjoibmV3In0nIGRhdGEtcmVwb3J0LXZpZXc9J3sibW9kIjoicG9wdV8zODIiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Ny9hcnRpY2xlL2RldGFpbHMvMTQxMDA0OTA3IiwiYWIiOiJuZXcifSc+UG9pbnRHUFQ8L2E+CiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xlYXJmaXgiPgogICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xNDA5MDAyMzMiIHRhcmdldD0iX2JsYW5rIiBkYXRhLXJlcG9ydC1jbGljaz0neyJtb2QiOiJwb3B1XzM4MiIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjQxMzYiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Ny9hcnRpY2xlL2RldGFpbHMvMTQwOTAwMjMzIiwiYWIiOiJuZXcifScgZGF0YS1yZXBvcnQtdmlldz0neyJtb2QiOiJwb3B1XzM4MiIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xNDA5MDAyMzMiLCJhYiI6Im5ldyJ9Jz5kb2NrZXItY29tcG9zZeS4reS4uuacjeWKoeWIhumFjeWbuuWumueahElQ5Zyw5Z2APC9hPgogICAgICAgICAgICA8L2xpPgogICAgICAgICAgICA8bGkgY2xhc3M9ImNsZWFyZml4Ij4KICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Ny9hcnRpY2xlL2RldGFpbHMvMTQwNTM3ODg0IiB0YXJnZXQ9Il9ibGFuayIgZGF0YS1yZXBvcnQtY2xpY2s9J3sibW9kIjoicG9wdV8zODIiLCJzcG0iOiIxMDAxLjIxMDEuMzAwMS40MTM2IiwiZGVzdCI6Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDcvYXJ0aWNsZS9kZXRhaWxzLzE0MDUzNzg4NCIsImFiIjoibmV3In0nIGRhdGEtcmVwb3J0LXZpZXc9J3sibW9kIjoicG9wdV8zODIiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Ny9hcnRpY2xlL2RldGFpbHMvMTQwNTM3ODg0IiwiYWIiOiJuZXcifSc+cHl0aG9uIHByaW505pe26K6+572u57yW56CB5qC85byPPC9hPgogICAgICAgICAgICA8L2xpPgogICAgICAgIDwvdWw+CiAgICAgICAgPGRpdiBjbGFzcz0iYXJjaGl2ZS1iYXIiPjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImFyY2hpdmUtYm94Ij4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFyY2hpdmUtbGlzdC1pdGVtIj48YSBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3P3R5cGU9YmxvZyZhbXA7eWVhcj0yMDI0JmFtcDttb250aD0wOCIgdGFyZ2V0PSJfYmxhbmsiIGRhdGEtcmVwb3J0LWNsaWNrPSd7Im1vZCI6InBvcHVfNTM4Iiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNDEzOCIsImFiIjoibmV3IiwiZGVzdCI6Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDc/dHlwZT1ibG9nJmFtcDt5ZWFyPTIwMjQmYW1wO21vbnRoPTA4In0nPjxzcGFuIGNsYXNzPSJ5ZWFyIj4yMDI05bm0PC9zcGFuPjxzcGFuIGNsYXNzPSJudW0iPjPnr4c8L3NwYW4+PC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXJjaGl2ZS1saXN0LWl0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDc/dHlwZT1ibG9nJmFtcDt5ZWFyPTIwMjEmYW1wO21vbnRoPTA4IiB0YXJnZXQ9Il9ibGFuayIgZGF0YS1yZXBvcnQtY2xpY2s9J3sibW9kIjoicG9wdV81MzgiLCJzcG0iOiIxMDAxLjIxMDEuMzAwMS40MTM4IiwiYWIiOiJuZXciLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Nz90eXBlPWJsb2cmYW1wO3llYXI9MjAyMSZhbXA7bW9udGg9MDgifSc+PHNwYW4gY2xhc3M9InllYXIiPjIwMjHlubQ8L3NwYW4+PHNwYW4gY2xhc3M9Im51bSI+MTIw56+HPC9zcGFuPjwvYT48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFyY2hpdmUtbGlzdC1pdGVtIj48YSBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3P3R5cGU9YmxvZyZhbXA7eWVhcj0yMDIwJmFtcDttb250aD0xMiIgdGFyZ2V0PSJfYmxhbmsiIGRhdGEtcmVwb3J0LWNsaWNrPSd7Im1vZCI6InBvcHVfNTM4Iiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNDEzOCIsImFiIjoibmV3IiwiZGVzdCI6Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDc/dHlwZT1ibG9nJmFtcDt5ZWFyPTIwMjAmYW1wO21vbnRoPTEyIn0nPjxzcGFuIGNsYXNzPSJ5ZWFyIj4yMDIw5bm0PC9zcGFuPjxzcGFuIGNsYXNzPSJudW0iPjI056+HPC9zcGFuPjwvYT48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2Pgo8L2Rpdj4KICAgIDwhLS0g6K+m5oOF6aG15pi+56S655uu5b2VIC0tPgo8IS0t5paH56ug55uu5b2VLS0+CjxkaXYgaWQ9ImFzaWRlZGlyZWN0b3J5IiBjbGFzcz0iYXNpZGUtYm94Ij4KICAgIDxkaXYgY2xhc3M9J2dyb3VwZmlsZScgaWQ9ImRpcmVjdG9yeSI+CiAgICAgICAgPGgzIGNsYXNzPSJhc2lkZS10aXRsZSI+55uu5b2VPC9oMz4KICAgICAgICA8ZGl2IGNsYXNzPSJhbGlnbi1pdGVtcy1zdHJldGNoIGdyb3VwX2l0ZW0iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwb3MtYm94Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2Nyb2xsLWJveCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2MtYm94Ij48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CjwvZGl2Pgo8L2FzaWRlPgo8c2NyaXB0PgoJJCgiYS5mbGV4aWJsZS1idG4iKS5jbGljayhmdW5jdGlvbigpewoJCSQodGhpcykucGFyZW50cygnZGl2LmFzaWRlLWJveCcpLnJlbW92ZUNsYXNzKCdmbGV4aWJsZS1ib3gnKTsKCQkkKHRoaXMpLnBhcmVudHMoInAudGV4dC1jZW50ZXIiKS5yZW1vdmUoKTsKCX0pCjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgIHNyYz0iaHR0cHM6Ly9nLmNzZG5pbWcuY24vdXNlci10b29sdGlwLzIuNy91c2VyLXRvb2x0aXAuanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgIHNyYz0iaHR0cHM6Ly9nLmNzZG5pbWcuY24vdXNlci1tZWRhbC8yLjAuMC91c2VyLW1lZGFsLmpzIj48L3NjcmlwdD4gICAgICAgIDwvZGl2Pgo8ZGl2IGNsYXNzPSJyZWNvbW1lbmQtcmlnaHQgYWxpZ24taXRlbXMtc3RyZXRjaCBjbGVhcmZpeCIgaWQ9InJpZ2h0QXNpZGUiIGRhdGEtdHlwZT0icmVjb21tZW5kIj4KICAgIDxhc2lkZSBjbGFzcz0icmVjb21tZW5kLXJpZ2h0X2FzaWRlIj4KICAgICAgICA8ZGl2IGlkPSJyZWNvbW1lbmQtcmlnaHQiID4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdmbGV4LWNvbHVtbiBhc2lkZS1ib3ggZ3JvdXBmaWxlJyBpZD0iZ3JvdXBmaWxlIj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJncm91cGZpbGUtZGl2Ij4KICAgICAgICAgICAgICA8aDMgY2xhc3M9ImFzaWRlLXRpdGxlIj7nm67lvZU8L2gzPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFsaWduLWl0ZW1zLXN0cmV0Y2ggZ3JvdXBfaXRlbSI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvcy1ib3giPgogICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2Nyb2xsLWJveCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9jLWJveCI+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KPGRpdiBpZD0iYXNpZGVBcmNoaXZlIiBjbGFzcz0iYXNpZGUtYm94IiBzdHlsZT0iIHdpZHRoOjMwMHB4OyI+CiAgICA8aDMgY2xhc3M9ImFzaWRlLXRpdGxlIj7mnIDmlrDmlofnq6A8L2gzPgogICAgPGRpdiBjbGFzcz0iYXNpZGUtY29udGVudCI+CiAgICAgICAgPHVsIGNsYXNzPSJpbmZfbGlzdCBjbGVhcmZpeCI+CiAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xlYXJmaXgiPgogICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xNDEwMDQ5MDciIHRhcmdldD0iX2JsYW5rIiBkYXRhLXJlcG9ydC1jbGljaz0neyJtb2QiOiJwb3B1XzM4MiIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjQxMzYiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Ny9hcnRpY2xlL2RldGFpbHMvMTQxMDA0OTA3IiwiYWIiOiJuZXcifScgZGF0YS1yZXBvcnQtdmlldz0neyJtb2QiOiJwb3B1XzM4MiIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xNDEwMDQ5MDciLCJhYiI6Im5ldyJ9Jz5Qb2ludEdQVDwvYT4KICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGVhcmZpeCI+CiAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDcvYXJ0aWNsZS9kZXRhaWxzLzE0MDkwMDIzMyIgdGFyZ2V0PSJfYmxhbmsiIGRhdGEtcmVwb3J0LWNsaWNrPSd7Im1vZCI6InBvcHVfMzgyIiwic3BtIjoiMTAwMS4yMTAxLjMwMDEuNDEzNiIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xNDA5MDAyMzMiLCJhYiI6Im5ldyJ9JyBkYXRhLXJlcG9ydC12aWV3PSd7Im1vZCI6InBvcHVfMzgyIiwiZGVzdCI6Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDcvYXJ0aWNsZS9kZXRhaWxzLzE0MDkwMDIzMyIsImFiIjoibmV3In0nPmRvY2tlci1jb21wb3Nl5Lit5Li65pyN5Yqh5YiG6YWN5Zu65a6a55qESVDlnLDlnYA8L2E+CiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xlYXJmaXgiPgogICAgICAgICAgICA8YSBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xNDA1Mzc4ODQiIHRhcmdldD0iX2JsYW5rIiBkYXRhLXJlcG9ydC1jbGljaz0neyJtb2QiOiJwb3B1XzM4MiIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjQxMzYiLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Ny9hcnRpY2xlL2RldGFpbHMvMTQwNTM3ODg0IiwiYWIiOiJuZXcifScgZGF0YS1yZXBvcnQtdmlldz0neyJtb2QiOiJwb3B1XzM4MiIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3L2FydGljbGUvZGV0YWlscy8xNDA1Mzc4ODQiLCJhYiI6Im5ldyJ9Jz5weXRob24gcHJpbnTml7borr7nva7nvJbnoIHmoLzlvI88L2E+CiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgPC91bD4KICAgICAgICA8ZGl2IGNsYXNzPSJhcmNoaXZlLWJhciI+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iYXJjaGl2ZS1ib3giPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXJjaGl2ZS1saXN0LWl0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDc/dHlwZT1ibG9nJmFtcDt5ZWFyPTIwMjQmYW1wO21vbnRoPTA4IiB0YXJnZXQ9Il9ibGFuayIgZGF0YS1yZXBvcnQtY2xpY2s9J3sibW9kIjoicG9wdV81MzgiLCJzcG0iOiIxMDAxLjIxMDEuMzAwMS40MTM4IiwiYWIiOiJuZXciLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Nz90eXBlPWJsb2cmYW1wO3llYXI9MjAyNCZhbXA7bW9udGg9MDgifSc+PHNwYW4gY2xhc3M9InllYXIiPjIwMjTlubQ8L3NwYW4+PHNwYW4gY2xhc3M9Im51bSI+M+evhzwvc3Bhbj48L2E+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhcmNoaXZlLWxpc3QtaXRlbSI+PGEgaHJlZj0iaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Nz90eXBlPWJsb2cmYW1wO3llYXI9MjAyMSZhbXA7bW9udGg9MDgiIHRhcmdldD0iX2JsYW5rIiBkYXRhLXJlcG9ydC1jbGljaz0neyJtb2QiOiJwb3B1XzUzOCIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjQxMzgiLCJhYiI6Im5ldyIsImRlc3QiOiJodHRwczovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzMwNzgzOTQ3P3R5cGU9YmxvZyZhbXA7eWVhcj0yMDIxJmFtcDttb250aD0wOCJ9Jz48c3BhbiBjbGFzcz0ieWVhciI+MjAyMeW5tDwvc3Bhbj48c3BhbiBjbGFzcz0ibnVtIj4xMjDnr4c8L3NwYW4+PC9hPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXJjaGl2ZS1saXN0LWl0ZW0iPjxhIGhyZWY9Imh0dHBzOi8vYmxvZy5jc2RuLm5ldC93ZWl4aW5fMzA3ODM5NDc/dHlwZT1ibG9nJmFtcDt5ZWFyPTIwMjAmYW1wO21vbnRoPTEyIiB0YXJnZXQ9Il9ibGFuayIgZGF0YS1yZXBvcnQtY2xpY2s9J3sibW9kIjoicG9wdV81MzgiLCJzcG0iOiIxMDAxLjIxMDEuMzAwMS40MTM4IiwiYWIiOiJuZXciLCJkZXN0IjoiaHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zMDc4Mzk0Nz90eXBlPWJsb2cmYW1wO3llYXI9MjAyMCZhbXA7bW9udGg9MTIifSc+PHNwYW4gY2xhc3M9InllYXIiPjIwMjDlubQ8L3NwYW4+PHNwYW4gY2xhc3M9Im51bSI+MjTnr4c8L3NwYW4+PC9hPjwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CjwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9hc2lkZT4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJyZWNvbW1lbmQtcmlnaHQxICBhbGlnbi1pdGVtcy1zdHJldGNoIGNsZWFyZml4IiBpZD0icmlnaHRBc2lkZUNvbmNpc2lvbiIgZGF0YS10eXBlPSJyZWNvbW1lbmQiPgogICAgPGFzaWRlIGNsYXNzPSJyZWNvbW1lbmQtcmlnaHRfYXNpZGUiPgogICAgICAgIDxkaXYgaWQ9InJlY29tbWVuZC1yaWdodC1jb25jaXNpb24iID4KICAgICAgICAgICAgPGRpdiBjbGFzcz0nZmxleC1jb2x1bW4gYXNpZGUtYm94IGdyb3VwZmlsZScgaWQ9Imdyb3VwZmlsZUNvbmNpc2lvbiI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJncm91cGZpbGUtZGl2MSI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9ImFzaWRlLXRpdGxlIj7nm67lvZU8L2gzPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWxpZ24taXRlbXMtc3RyZXRjaCBncm91cF9pdGVtIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwb3MtYm94Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2Nyb2xsLWJveCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2MtYm94Ij48L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvYXNpZGU+CjwvZGl2PgoKICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9Im1hc2stZGFyayI+PC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InNraW4tYm94c2hhZG93Ij48L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iZGlyZWN0b3J5LWJveHNoYWRvdyI+PC9kaXY+CjxkaXYgY2xhc3M9ImNvbW1lbnQtc2lkZS1ib3gtc2hhZG93IGNvbW1lbnQtc2lkZS10aXQtY2xvc2UiIGlkPSJjb21tZW50U2lkZUJveHNoYWRvdyI+CjxkaXYgY2xhc3M9ImNvbW1lbnQtc2lkZS1jb250ZW50Ij4KCTxkaXYgY2xhc3M9ImNvbW1lbnQtc2lkZS10aXQiPgoJCTxzcGFuIGNsYXNzPSJjb21tZW50LXNpZGUtdGl0LWNvdW50Ij7or4Torro8L3NwYW4+CQoJPGltZyBjbGFzcz0iY29tbWVudC1zaWRlLXRpdC1jbG9zZSIgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvY2xvc2VCdC5wbmciPjwvZGl2PgoJPGRpdiBpZD0icGNDb21tZW50U2lkZUJveCIgY2xhc3M9ImNvbW1lbnQtYm94IGNvbW1lbnQtYm94LW5ldzIgIiBzdHlsZT0iZGlzcGxheTpibG9jayI+CiAgICA8ZGl2IGNsYXNzPSJjb21tZW50LWVkaXQtYm94IGQtZmxleCI+CiAgICAgIDxkaXYgY2xhc3M9InVzZXItaW1nIj4KICAgICAgICA8YSBocmVmPSJodHRwczovL2Jsb2cuY3Nkbi5uZXQvSHVhbWlhbmdpYW8iIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL3Byb2ZpbGUtYXZhdGFyLmNzZG5pbWcuY24vZGVmYXVsdC5qcGchMSI+CiAgICAgICAgPC9hPgogICAgICA8L2Rpdj4KICAgICAgPGZvcm0gaWQ9ImNvbW1lbnRmb3JtIj4KICAgICAgICA8dGV4dGFyZWEgY2xhc3M9ImNvbW1lbnQtY29udGVudCIgbmFtZT0iY29tbWVudF9jb250ZW50IiBpZD0iY29tbWVudF9jb250ZW50IiBwbGFjZWhvbGRlcj0i5qyi6L+O6auY6LSo6YeP55qE6K+E6K6677yM5L2O6LSo55qE6K+E6K665Lya6KKr5oqY5Y+gIiBtYXhsZW5ndGg9IjEwMDAiPjwvdGV4dGFyZWE+CiAgICAgICAgPGRpdiBjbGFzcz0iY29tbWVudC1yZXdhcmQtYm94IiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL2ltZy1ob21lLmNzZG5pbWcuY24vaW1hZ2VzLzIwMjMwMTMxMDI1MzAxLnBuZycpOyI+CiAgICAgICAgICA8YSBjbGFzcz0iYnRuLXJlbW92ZS1yZXdhcmQiPjwvYT4KICAgICAgICAgIDxkaXYgY2xhc3M9ImZvcm0tcmV3YXJkLWJveCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImluZm8iPgogICAgICAgICAgICAgIOaIkOWwseS4gOS6v+aKgOacr+S6uiEKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InByaWNlLWluZm8iPgogICAgICAgICAgICAgIOaLvOaJi+awlOe6ouWMhTxzcGFuIGNsYXNzPSJwcmljZSI+Ni4w5YWDPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImNvbW1lbnQtb3BlcmF0ZS1ib3giPgogICAgICAgICAgPGRpdiBjbGFzcz0iY29tbWVudC1vcGVyYXRlLWwiPgogICAgICAgICAgICA8c3BhbiBpZD0idGlwX2NvbW1lbnQiIGNsYXNzPSJ0aXAiPui/mOiDvei+k+WFpTxlbT4xMDAwPC9lbT7kuKrlrZfnrKY8L3NwYW4+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0aXAiIGlkPSJpc1Nob3dDb21tZW50QXV0aCIgZGF0YS10eXBlPSIxIj4mbmJzcDt8Jm5ic3A75Y2a5Li7562b6YCJ5ZCO5Y+v6KeBPC9zcGFuPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb21tZW50LW9wZXJhdGUtYyI+CiAgICAgICAgICAgICZuYnNwOwogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb21tZW50LW9wZXJhdGUtciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbW1lbnQtb3BlcmF0ZS1pdGVtIGNvbW1lbnQtcmV3YXJkIj4KICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJjb21tZW50LW9wZXJhdGUtaW1nIiBkYXRhLXVybD0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nLyIgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvY29tbWVudFJld2FyZC5wbmciIGFsdD0i57qi5YyFIj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudC1vcGVyYXRlLXRpcCI+5re75Yqg57qi5YyFPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29tbWVudC1vcGVyYXRlLWl0ZW0gY29tbWVudC1lbW90aWNvbiI+CiAgICAgICAgICAgICAgPGltZyBjbGFzcz0iY29tbWVudC1vcGVyYXRlLWltZyIgZGF0YS11cmw9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy8iIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL2NvbW1lbnRFbW90aW9uSWNvbi5wbmciIGFsdD0i6KGo5oOF5YyFIj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudC1vcGVyYXRlLXRpcCI+5o+S5YWl6KGo5oOFPC9zcGFuPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbW1lbnQtZW1vdGljb24tYm94IGNvbW1lbnQtb3BlcmF0ZS1pc3Nob3ciPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29tbWVudC1lbW90aWNvbi1pbWctYm94Ij48L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbW1lbnQtb3BlcmF0ZS1pdGVtIGNvbW1lbnQtY29kZSI+CiAgICAgICAgICAgICAgPGltZyBjbGFzcz0iY29tbWVudC1vcGVyYXRlLWltZyIgZGF0YS11cmw9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy8iIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL2NvbW1lbnRDb2RlSWNvbi5wbmciIGFsdD0i6KGo5oOF5YyFIj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudC1vcGVyYXRlLXRpcCI+5Luj56CB54mHPC9zcGFuPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbW1lbnQtY29kZS1ib3ggY29tbWVudC1vcGVyYXRlLWlzc2hvdyI+CiAgICAgICAgICAgICAgICA8dWwgaWQ9ImNvbW1lbnRDb2RlIj4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGRhdGEtY29kZT0iaHRtbCI+SFRNTC9YTUw8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGRhdGEtY29kZT0ib2JqYyI+b2JqZWN0aXZlLWM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGRhdGEtY29kZT0icnVieSI+UnVieTwvYT48L2xpPgogICAgICAgICAgICAgICAgICA8bGk+PGEgZGF0YS1jb2RlPSJwaHAiPlBIUDwvYT48L2xpPgogICAgICAgICAgICAgICAgICA8bGk+PGEgZGF0YS1jb2RlPSJjc2hhcnAiPkM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGRhdGEtY29kZT0iY3BwIj5DKys8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgPGxpPjxhIGRhdGEtY29kZT0iamF2YXNjcmlwdCI+SmF2YVNjcmlwdDwvYT48L2xpPgogICAgICAgICAgICAgICAgICA8bGk+PGEgZGF0YS1jb2RlPSJweXRob24iPlB5dGhvbjwvYT48L2xpPgogICAgICAgICAgICAgICAgICA8bGk+PGEgZGF0YS1jb2RlPSJqYXZhIj5KYXZhPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaT48YSBkYXRhLWNvZGU9ImNzcyI+Q1NTPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaT48YSBkYXRhLWNvZGU9InNxbCI+U1FMPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgIDxsaT48YSBkYXRhLWNvZGU9InBsYWluIj7lhbblroM8L2E+PC9saT4KICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb21tZW50LW9wZXJhdGUtaXRlbSI+CiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9ImNvbW1lbnRfcmVwbHlJZCIgbmFtZT0iY29tbWVudF9yZXBseUlkIj4KICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iYXJ0aWNsZV9pZCIgbmFtZT0iYXJ0aWNsZV9pZCIgdmFsdWU9IjExMjI3MTE5NSI+CiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9ImNvbW1lbnRfdXNlcklkIiBuYW1lPSJjb21tZW50X3VzZXJJZCIgdmFsdWU9IiI+CiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9ImNvbW1lbnRJZCIgbmFtZT0iY29tbWVudElkIiB2YWx1ZT0iIj4KICAgICAgICAgICAgICA8YSBkYXRhLXJlcG9ydC1jbGljaz0neyJtb2QiOiIxNTgyNTk0NjYyXzAwMyIsInNwbSI6IjEwMDEuMjEwMS4zMDAxLjQyMjciLCJhYiI6Im5ldyJ9Jz4KICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuLWNvbW1lbnQgYnRuLWNvbW1lbnQtaW5wdXQiIHZhbHVlPSLor4TorroiPgogICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9mb3JtPgogICAgPC9kaXY+CgkJPGRpdiBjbGFzcz0iY29tbWVudC1saXN0LWNvbnRhaW5lciI+CgkJCTxkaXYgY2xhc3M9ImNvbW1lbnQtbGlzdC1ib3ggY29tbWVudC1vcGVyYXRlLWl0ZW0iPgoJCQk8L2Rpdj4KCQkJPGRpdiBpZD0ibG9va0Zsb2RDb21tZW50IiBjbGFzcz0ibG9vay1mbG9kLWNvbW1lbnQiPgoJCQkJCTxzcGFuIGNsYXNzPSJjb3VudCI+PC9zcGFuPiZuYnNwO+adoeivhOiuuuiiq+aKmOWPoCZuYnNwOzxhIGNsYXNzPSJsb29rLW1vcmUtZmxvZGNvbW1lbnQiPuafpeecizwvYT4KCQkJPC9kaXY+CgkJCTxkaXYgY2xhc3M9Im9wdC1ib3ggdGV4dC1jZW50ZXIiPgoJCQkJPGRpdiBjbGFzcz0iYnRuIGJ0bi1zbSBidG4tbGluay1ibHVlIiBpZD0iYnRuTW9yZUNvbW1lbnQiPjwvZGl2PgoJCQk8L2Rpdj4KCQk8L2Rpdj4KCTwvZGl2PgoJPGRpdiBpZD0icGNGbG9kQ29tbWVudFNpZGVCb3giIGNsYXNzPSJwYy1mbG9kY29tbWVudC1zaWRlYm94Ij4KCQk8ZGl2IGNsYXNzPSJjb21tZW50LWZvbGQtdGl0Ij48c3BhbiBpZD0ibG9va1VuRmxvZENvbW1lbnQiIGNsYXNzPSJiYWNrIj48aW1nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL2NvbW1lbnRBcnJvd0xlZnRXaGl0ZS5wbmciIGFsdD0iIj48L3NwYW4+6KKr5oqY5Y+g55qEJm5ic3A7PHNwYW4gY2xhc3M9ImNvdW50Ij48L3NwYW4+Jm5ic3A75p2h6K+E6K66CgkJIDxhIGhyZWY9Imh0dHBzOi8vYmxvZ2Rldi5ibG9nLmNzZG4ubmV0L2FydGljbGUvZGV0YWlscy8xMjIyNDU2NjIiIGNsYXNzPSJ0aXAiIHRhcmdldD0iX2JsYW5rIj7kuLrku4DkuYjooqvmipjlj6A/PC9hPgoJCSA8YSBocmVmPSJodHRwczovL2Jicy5jc2RuLm5ldC9mb3J1bXMvRnJlZVpvbmUiIGNsYXNzPSJwYXJrIiB0YXJnZXQ9Il9ibGFuayI+CgkJIDxpbWcgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvaWNvblBhcmsucG5nIj7liLDjgJDngYzmsLTkuZDlm63jgJHlj5HoqIA8L2E+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKCQk8L2Rpdj4KCQk8ZGl2IGNsYXNzPSJjb21tZW50LWZvbGQtY29udGVudCI+PC9kaXY+CgkJPGRpdiBpZD0ibG9va0JhZENvbW1lbnQiIGNsYXNzPSJsb29rLWJhZC1jb21tZW50IHNpZGUtbG9vay1jb21tZW50Ij4KCQkJPGEgY2xhc3M9Imxvb2stbW9yZS1jb21tZW50Ij7mn6XnnIvmm7TlpJror4Torro8aW1nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL2NvbW1lbnRBcnJvd0Rvd25XaGl0ZS5wbmciIGFsdD0iIj48L2E+CgkJPC9kaXY+Cgk8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9ImNvbW1lbnQtcmV3YXJkZGlhbG9nLWJveCI+CiAgPGRpdiBjbGFzcz0iZm9ybS1ib3giPgogICAgPGRpdiBjbGFzcz0idGl0bGUtYm94Ij4KICAgICAg5re75Yqg57qi5YyFCiAgICAgIDxhIGNsYXNzPSJidG4tZm9ybS1jbG9zZSI+PC9hPgogICAgPC9kaXY+CiAgICA8Zm9ybSBpZD0iY29tbWVudFJld2FyZEZvcm0iPgogICAgICA8ZGl2IGNsYXNzPSJpcHQtYm94Ij4KICAgICAgICA8bGFiZWwgZm9yPSJ0eHROYW1lIj7npZ3npo/or608L2xhYmVsPgogICAgICAgIDxkaXYgY2xhc3M9ImlwdC1idG4tYm94Ij4KICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJuYW1lIiBpZD0idHh0TmFtZSIgYXV0b2NvbXBsZXRlPSJvZmYiIG1heGxlbmd0aD0iNTAiPgogICAgICAgICAgPGEgY2xhc3M9ImJ0bi1pcHQgYnRuLXJhbmRvbSI+PC9hPgogICAgICAgIDwvZGl2PgogICAgICAgIDxwIGNsYXNzPSJub3RpY2UiPuivt+Whq+WGmee6ouWMheelneemj+ivreaIluagh+mimDwvcD4KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImlwdC1ib3giPgogICAgICAgIDxsYWJlbCBmb3I9InR4dFNlbmRBbW91bnQiPue6ouWMheaVsOmHjzwvbGFiZWw+CiAgICAgICAgPGRpdiBjbGFzcz0iaXB0LXR4dC1ib3giPgogICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InNlbmRBbW91bnQiIG1heGxlbmd0aD0iNCIgaWQ9InR4dFNlbmRBbW91bnQiIHBsYWNlaG9sZGVyPSLor7floavlhpnnuqLljIXmlbDph48o5pyA5bCPMTDkuKopIiBhdXRvY29tcGxldGU9Im9mZiI+CiAgICAgICAgICA8c3BhbiBjbGFzcz0iYWZ0ZXItdHh0Ij7kuKo8L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPHAgY2xhc3M9Im5vdGljZSI+57qi5YyF5Liq5pWw5pyA5bCP5Li6MTDkuKo8L3A+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJpcHQtYm94Ij4KICAgICAgICA8bGFiZWwgZm9yPSJ0eHRNb25leSI+57qi5YyF5oC76YeR6aKdPC9sYWJlbD4KICAgICAgICA8ZGl2IGNsYXNzPSJpcHQtdHh0LWJveCBlcnJvciI+CiAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibW9uZXkiIG1heGxlbmd0aD0iNSIgaWQ9InR4dE1vbmV5IiBwbGFjZWhvbGRlcj0i6K+35aGr5YaZ5oC76YeR6aKdKOacgOS9jjXlhYMpIiBhdXRvY29tcGxldGU9Im9mZiI+CiAgICAgICAgICA8c3BhbiBjbGFzcz0iYWZ0ZXItdHh0Ij7lhYM8L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPHAgY2xhc3M9Im5vdGljZSI+57qi5YyF6YeR6aKd5pyA5L2ONeWFgzwvcD4KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImJhbGFuY2UtaW5mby1ib3giPgogICAgICAgIDxsYWJlbD7kvZnpop3mlK/ku5g8L2xhYmVsPgogICAgICAgIDxkaXYgY2xhc3M9ImJhbGFuY2UtaW5mbyI+CiAgICAgICAgICDlvZPliY3kvZnpop08c3BhbiBjbGFzcz0iYmFsYW5jZSI+My40Mzwvc3Bhbj7lhYMKICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vaS5jc2RuLm5ldC8jL3dhbGxldC9iYWxhbmNlL3JlY2hhcmdlIiBjbGFzcz0ibGluay1jaGFyZ2UiIHRhcmdldD0iX2JsYW5rIj7liY3lvoDlhYXlgLwgPjwvYT4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9Im9wdC1ib3giPgogICAgICAgIDxkaXYgY2xhc3M9InBheS1pbmZvIj4KICAgICAgICAgIOmcgOaUr+S7mO+8mjxzcGFuIGNsYXNzPSJwcmljZSI+MTAuMDA8L3NwYW4+5YWDCiAgICAgICAgPC9kaXY+CiAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJtbC1hdXRvIGJ0bi1jYW5jZWwiPuWPlua2iDwvYnV0dG9uPgogICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ibWw4IGJ0bi1zdWJtaXQiIGRpc2FibGVkPSJ0cnVlIj7noa7lrpo8L2J1dHRvbj4KICAgICAgPC9kaXY+CiAgICA8L2Zvcm0+CiAgPC9kaXY+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJyci1ndWlkZS1ib3giPgogIDxkaXYgY2xhc3M9InJyLWZpcnN0LWJveCI+CiAgICA8aW1nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL2d1aWRlUmVkUmV3YXJkMDIucG5nIiBhbHQ9IiI+CiAgICA8YnV0dG9uIGNsYXNzPSJidG4tZ3VpZGUta25vd24gbmV4dCI+5LiL5LiA5q2lPC9idXR0b24+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icnItc2Vjb25kLWJveCI+CiAgICA8aW1nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL2d1aWRlUmVkUmV3YXJkMDMucG5nIiBhbHQ9IiI+CiAgICA8YnV0dG9uIGNsYXNzPSJidG4tZ3VpZGUta25vd24ga25vd24iPuefpemBk+S6hjwvYnV0dG9uPgogIDwvZGl2Pgo8L2Rpdj4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJyZWRFbnZvbG9wZSIgaWQ9InJlZEVudm9sb3BlIj4KICA8ZGl2IGNsYXNzPSJlbnYtYm94Ij4KICAgIDxkaXYgY2xhc3M9ImVudi1jb250YWluZXIiPgogICAgICA8ZGl2IGNsYXNzPSJwcmUtb3BlbiIgaWQ9InByZU9wZW4iPgogICAgICAgIDxkaXYgY2xhc3M9InRvcCI+CiAgICAgICAgICA8aGVhZGVyPgogICAgICAgICAgICA8aW1nIGNsYXNzPSJjbGVhclRwYUVyciIgOnNyYz0icmVkcGFja2V0QXV0aG9yLmF2YXRhciIgYWx0PSIiIC8+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImF1dGhvciI+5oiQ5bCx5LiA5Lq/5oqA5pyv5Lq6ITwvZGl2PgogICAgICAgICAgPC9oZWFkZXI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJib3QtaWNvbiI+PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGZvb3Rlcj4KICAgICAgICAgIDxkaXYgY2xhc3M9InJlZC1vcGVuYnRuIG9wZW4tc3RhcnQiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0idGlwIj4KICAgICAgICAgICAg6aKG5Y+W5ZCO5L2g5Lya6Ieq5Yqo5oiQ5Li65Y2a5Li75ZKM57qi5YyF5Li755qE57KJ5LidCiAgICAgICAgICAgIDxhIGNsYXNzPSJydWxlIiB0YXJnZXQ9Il9ibGFuayI+6KeE5YiZPC9hPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9mb290ZXI+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJvcGVuZWQiIGlkPSJvcGVuZWQiPgogICAgICAgIDxkaXYgY2xhc3M9ImJvdC1pY29uIj4KICAgICAgICAgIDxoZWFkZXI+CiAgICAgICAgICAgIDxhIGNsYXNzPSJjcmVhdG9yVXJsIiBocmVmPSIiIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJjbGVhclRwYUVyciIgc3JjPSJodHRwczovL3Byb2ZpbGUtYXZhdGFyLmNzZG5pbWcuY24vZGVmYXVsdC5qcGchMiIgYWx0PSIiIC8+CiAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXV0aG9yIj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0dCI+aG9wZV93aXNkb208L2Rpdj4g5Y+R5Ye655qE57qi5YyFCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9oZWFkZXI+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icmVjZWl2ZS1ib3giPgogICAgICAgICAgPGhlYWRlcj48L2hlYWRlcj4KICAgICAgICAgIDxkaXYgY2xhc3M9InJlY2VpdmUtbGlzdCI+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9ImNsb3NlLWJ0biI+PC9kaXY+CiAgPC9kaXY+CjwvZGl2PgogICAgICAKICAgICAgPGRpdiBjbGFzcz0icGF5LWNvZGUiPgogICAgICA8ZGl2IGNsYXNzPSJwYXktbW9uZXkiPuWunuS7mDxzcGFuIGNsYXNzPSJwYXktbW9uZXktc3BhbiIgZGF0YS1ub3dwcmljZT0nJyBkYXRhLW9sZHByaWNlPScnPuWFgzwvc3Bhbj48L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iY29udGVudC1ibGFuY2UiPjxhIGNsYXNzPSJibGFuY2UtYnQiIGhyZWY9ImphdmFzY3JpcHQ6OyI+5L2/55So5L2Z6aKd5pSv5LuYPC9hPjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJjb250ZW50LWNvZGUiPgogICAgICAgIDxkaXYgaWQ9InBheUNvZGUiIGRhdGEtaWQ9IiI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJyZW5vdmF0ZSI+CiAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvcGF5LXRpbWUtb3V0LnBuZyI+CiAgICAgICAgICAgIDxzcGFuPueCueWHu+mHjeaWsOiOt+WPljwvc3Bhbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InBheS1zdHlsZSI+PHNwYW4+PGltZyBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy93ZWl4aW4ucG5nIj48L3NwYW4+PHNwYW4+PGltZyBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2ltZy96aGlmdWJhby5wbmciPjwvc3Bhbj48c3Bhbj48aW1nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL2ppbmdkb25nLnBuZyI+PC9zcGFuPjxzcGFuIGNsYXNzPSJ0ZXh0Ij7miavnoIHmlK/ku5g8L3NwYW4+PC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJidC1jbG9zZSI+CiAgICAgICAgPHN2ZyB0PSIxNTY3MTUyNTQzODIxIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjEwOTI0IiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIj4KICAgICAgICAgIDxkZWZzPgogICAgICAgICAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPjwvc3R5bGU+CiAgICAgICAgICA8L2RlZnM+CiAgICAgICAgICA8cGF0aCBkPSJNNTEyIDQzOC4zNzg2NjdMODA2LjUwNjY2NyAxNDMuODkzMzMzYTUyLjAzMiA1Mi4wMzIgMCAxIDEgNzMuNiA3My42MjEzMzRMNTg1LjYyMTMzMyA1MTJsMjk0LjQ4NTMzNCAyOTQuNDg1MzMzYTUyLjA3NDY2NyA1Mi4wNzQ2NjcgMCAwIDEtNzMuNiA3My42NDI2NjdMNTEyIDU4NS42MjEzMzMgMjE3LjUxNDY2NyA4ODAuMTI4YTUyLjA1MzMzMyA1Mi4wNTMzMzMgMCAxIDEtNzMuNjIxMzM0LTczLjY0MjY2N0w0MzguMzc4NjY3IDUxMiAxNDMuODkzMzMzIDIxNy41MTQ2NjdhNTIuMDUzMzMzIDUyLjA1MzMzMyAwIDEgMSA3My42MjEzMzQtNzMuNjIxMzM0TDUxMiA0MzguMzc4NjY3eiIgZmlsbD0iIiBwLWlkPSIxMDkyNSI+PC9wYXRoPgogICAgICAgIDwvc3ZnPgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0icGF5LWJhbGFuY2UiPgogICAgICAgIDxpbnB1dCB0eXBlPSJyYWRpbyIgY2xhc3M9InBheS1jb2RlLXJhZGlvIiBkYXRhLXR5cGU9ImRldGFpbHMiPgogICAgICAgIDxzcGFuIGNsYXNzPSJzcGFuIj7pkrHljIXkvZnpop08L3NwYW4+CiAgICAgICAgICA8c3BhbiBjbGFzcz0iYmFsYW5jZSIgc3R5bGU9ImNvbG9yOiNGQzU1MzE7Zm9udC1zaXplOjE0cHg7Ij4wPC9zcGFuPgogICAgICAgICAgPGRpdiBjbGFzcz0icGF5LWNvZGUtdGlsZSI+CiAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9pbWcvcGF5LWhlbHAucG5nIiBhbHQ9IiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InBheS1jb2RlLWNvbnRlbnQiPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYW4iPgogICAgICAgICAgICAgICAgPHAgY2xhc3M9InRpdGxlIj7mirXmiaPor7TmmI7vvJo8L3A+CiAgICAgICAgICAgICAgICA8cD4gMS7kvZnpop3mmK/pkrHljIXlhYXlgLznmoTomZrmi5/otKfluIHvvIzmjInnhacxOjHnmoTmr5Tkvovov5vooYzmlK/ku5jph5Hpop3nmoTmirXmiaPjgII8YnI+IDIu5L2Z6aKd5peg5rOV55u05o6l6LSt5Lmw5LiL6L2977yM5Y+v5Lul6LSt5LmwVklQ44CB5LuY6LS55LiT5qCP5Y+K6K++56iL44CCPC9wPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgPGEgY2xhc3M9InBheS1iYWxhbmNlLWNvbiIgaHJlZj0iaHR0cHM6Ly9pLmNzZG4ubmV0LyMvd2FsbGV0L2JhbGFuY2UvcmVjaGFyZ2UiIHRhcmdldD0iX2JsYW5rIj48aW1nIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvaW1nL3JlY2hhcmdlLnBuZyIgYWx0PSIiPjxzcGFuPuS9memineWFheWAvDwvc3Bhbj48L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgogICAgICA8aW1nIHNyYz0iIiBvbmVycm9yPSdzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aWYoIS8oY3Nkbi5uZXR8aXRleWUuY29tfGJhaWR1Y29udGVudC5jb218Z29vZ2xldXNlcmNvbnRlbnQuY29tfDM2MHdlYmNhY2hlLmNvbXxzb2dvdWNkbi5jb218YmluZ2ouY29tfGJhaWR1LmNvbSkkLy50ZXN0KHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSkpe3dpbmRvdy5sb2NhdGlvbi5ocmVmPSJceDY4XHg3NFx4NzRceDcwXHg3M1x4M2FceDJmXHgyZlx4NzdceDc3XHg3N1x4MmVceDYzXHg3M1x4NjRceDZlXHgyZVx4NmVceDY1XHg3NCJ9fSwzMDAwKTsnPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJrZXl3b3JkLWRlYy1ib3giIGlkPSJrZXl3b3JkRGVjQm94Ij48L2Rpdj4KICA8L2JvZHk+CiAgICA8IS0tIOWvjOaWh+acrOafseeKtuWbviAgLS0+CiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2dfZWRpdG9yX2h0bWwvcmVsZWFzZTEuNi4xMi9ja2VkaXRvci9wbHVnaW5zL2NoYXJ0L2NoYXJ0LmNzcyIgLz4KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2dfZWRpdG9yX2h0bWwvcmVsZWFzZTEuNi4xMi9ja2VkaXRvci9wbHVnaW5zL2NoYXJ0L2xpYi9jaGFydC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ19lZGl0b3JfaHRtbC9yZWxlYXNlMS42LjEyL2NrZWRpdG9yL3BsdWdpbnMvY2hhcnQvd2lkZ2V0MmNoYXJ0LmpzIj48L3NjcmlwdD4KICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvY29tcG9uZW50cy9qcy9heGlvcy04M2ZhMjhjZWRmLm1pbi5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvY29tcG9uZW50cy9qcy9wY193YXBfaGlnaGxpZ2h0LThkZWZkNTVkNmUubWluLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0PgogIDxzY3JpcHQgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9jb21wb25lbnRzL2pzL3BjX3dhcF9jb21tb24tM2I1ZjAzOTNkYy5taW4uanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L2NvbXBvbmVudHMvanMvZWRpdF9jb3B5X2NvZGUtM2QxYWYxM2YyMC5taW4uanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vZy5jc2RuaW1nLmNuL2xpYi9jYm94RWRpdG9yLzEuMS42L2VtYmVkLWVkaXRvci5taW4uanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2cuY3NkbmltZy5jbi9saWIvY2JveEVkaXRvci8xLjEuNi9lbWJlZC1lZGl0b3IubWluLmNzcyI+CiAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9nX2VkaXRvcl9odG1sL3JlbGVhc2UxLjYuMTIvY2tlZGl0b3IvcGx1Z2lucy9jb2Rlc25pcHBldC9saWIvaGlnaGxpZ2h0L3N0eWxlcy9hdG9tLW9uZS1saWdodC5jc3MiPgogIDxzY3JpcHQgc3JjPSJodHRwczovL2cuY3NkbmltZy5jbi91c2VyLWFjY3VzYXRpb24vMS4wLjYvdXNlci1hY2N1c2F0aW9uLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0PgogIDxzY3JpcHQ+CiAgICAvLyDlhajlsYDlo7DmmI4KICAgIGlmICh3aW5kb3cuY3NkbiA9PT0gdW5kZWZpbmVkKSB7CiAgICAgIHdpbmRvdy5jc2RuID0ge307CiAgICB9CiAgICB2YXIgc2lkZVRvb2xiYXJPcHQgPSB7fQoKICAgICQoZnVuY3Rpb24oKSB7CiAgICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICIjdG9vbFJlcG9ydEJ0bkhpZGVOb3JtYWwsI3Rvb2xSZXBvcnRCdG5IaWRlIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgd2luZG93LmNzZG4ubG9naW5Cb3gua2V5KHsKICAgICAgICAgIGJpejogJ2Jsb2cnLAogICAgICAgICAgc3ViQml6OiAnb3RoZXJfc2VydmljZScsCiAgICAgICAgICBjYjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHdpbmRvdy5jc2RuLmZlZWRiYWNrKHsKICAgICAgICAgICAgICAidHlwZSI6ICdibG9nJywKICAgICAgICAgICAgICAicnR5cGUiOiAnYXJ0aWNsZScsCiAgICAgICAgICAgICAgInJpZCI6IGFydGljbGVJZCwKICAgICAgICAgICAgICAicmVwb3J0ZWROYW1lIjogdXNlcm5hbWUsCiAgICAgICAgICAgICAgInN1Ym1pdE9wdGlvbnMiOiB7CiAgICAgICAgICAgICAgICAidGl0bGUiOiBhcnRpY2xlVGl0bGUsCiAgICAgICAgICAgICAgICAiY29udGVudFVybCI6IGFydGljbGVEZXRhaWxVcmwKICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICJjYWxsYmFjayI6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgc2hvd1RvYXN0KHsKICAgICAgICAgICAgICAgICAgdGV4dDogIuaEn+iwouaCqOeahOS4vuaKpe+8jOaIkeS7rOS8muWwveW/q+WuoeaguO+8gSIsCiAgICAgICAgICAgICAgICAgIGJvdHRvbTogJzEwJScsCiAgICAgICAgICAgICAgICAgIHppbmRleDogOTAwMCwKICAgICAgICAgICAgICAgICAgc3BlZWQ6IDUwMCwKICAgICAgICAgICAgICAgICAgdGltZTogMTUwMAogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pCiAgICAgICAgICB9CiAgICAgICAgfSkKICAgICAgfSk7CiAgICB9KQogICAgICB3aW5kb3cuY3Nkbi5zaWRlVG9vbGJhciA9IHsKICAgICAgICBvcHRpb25zOiB7CiAgICAgICAgICAuLi5zaWRlVG9vbGJhck9wdCwKICAgICAgICAgIHRoZW1lOiAnd2hpdGUnLAogICAgICAgIH0KICAgICAgfQogIDwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vZy5jc2RuaW1nLmNuL2JhaWR1LXNlYXJjaC8xLjAuMTIvYmFpZHUtc2VhcmNoLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0PgogIDxzY3JpcHQgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9kb3dubG9hZC9vbGRfc3RhdGljL2pzL3FyY29kZS5qcyI+PC9zY3JpcHQ+CiAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vZy5jc2RuaW1nLmNuL2xpYi9xcmNvZGUvMS4wLjAvcXJjb2RlLm1pbi5qcyI+PC9zY3JpcHQ+CiAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vZy5jc2RuaW1nLmNuL3VzZXItb3JkZXJjYXJ0LzMuMC4xL3VzZXItb3JkZXJjYXJ0LmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0PgogIDxzY3JpcHQgc3JjPSJodHRwczovL2cuY3NkbmltZy5jbi91c2VyLW9yZGVydGlwLzUuMC4zL3VzZXItb3JkZXJ0aXAuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vZy5jc2RuaW1nLmNuL29yZGVyLXBheW1lbnQvNC4wLjUvb3JkZXItcGF5bWVudC5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ3YyL2Rpc3QvcGMvanMvY29tbW9uLTk4MDRjNjg0YTIubWluLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2NyaXB0PgogIDxzY3JpcHQgc3JjPSJodHRwczovL2NzZG5pbWcuY24vcmVsZWFzZS9ibG9ndjIvZGlzdC9wYy9qcy9kZXRhaWwtOGNmMzQ5NTZhNC5taW4uanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vY3NkbmltZy5jbi9yZWxlYXNlL2Jsb2d2Mi9kaXN0L3BjL2pzL2NvbHVtbi0xZGFlMTdmMWY4Lm1pbi5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KICA+CiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9nLmNzZG5pbWcuY24vc2lkZS10b29sYmFyLzMuNi9zaWRlLXRvb2xiYXIuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vZy5jc2RuaW1nLmNuL2NvcHlyaWdodC8xLjAuNC9jb3B5cmlnaHQuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgPHNjcmlwdD4KICAgICQoIi5NYXRoSmF4IikucmVtb3ZlKCk7CiAgICBpZiAoJCgnZGl2Lm1hcmtkb3duX3ZpZXdzIHByZS5wcmV0dHlwcmludCBjb2RlLmhsanMnKS5sZW5ndGggPiAwKSB7CiAgICAgICQoJ2Rpdi5tYXJrZG93bl92aWV3cycpWzBdLmNsYXNzTmFtZSA9ICdtYXJrZG93bl92aWV3cyc7CiAgICB9CiAgPC9zY3JpcHQ+CiAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9jc2RuaW1nLmNuL3JlbGVhc2UvYmxvZ19tYXRoamF4L01hdGhKYXguanM/Y29uZmlnPVRlWC1BTVMtTU1MX0hUTUxvck1NTCI+PC9zY3JpcHQ+CiAgPHNjcmlwdCB0eXBlPSJ0ZXh0L3gtbWF0aGpheC1jb25maWciPgogICAgTWF0aEpheC5IdWIuQ29uZmlnKHsKICAgICAgIkhUTUwtQ1NTIjogewogICAgICAgIGxpbmVicmVha3M6IHsgYXV0b21hdGljOiB0cnVlLCB3aWR0aDogIjk0JWNvbnRhaW5lciIgfSwKICAgICAgICBpbWFnZUZvbnQ6IG51bGwKICAgICAgfSwKICAgICAgdGV4MmpheDogewogICAgICBwcmV2aWV3OiAibm9uZSIsCiAgICAgIGlnbm9yZUNsYXNzOiJ0aXRsZS1hcnRpY2xlIgogICAgICB9LAogICAgICBtbWwyamF4OiB7CiAgICAgIHByZXZpZXc6ICdub25lJwogICAgICB9CiAgICB9KTsKICA8L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGNyb3Nzb3JpZ2luIHNyYz0iaHR0cHM6Ly9nLmNzZG5pbWcuY24vY29tbW9uL2NzZG4tbG9naW4tYm94L2NzZG4tbG9naW4tYm94LmpzIj48L3NjcmlwdD48L2h0bWw+)

, n是类别的个数,p(i)是真实标签概率分布,q(i)是预测标签概率分布。

为避免过拟合,操作如下:

  • 数据增强
  • 在垂直、水平以及斜向三个维度上实施随机翻转操作
  • 按0.75至1.25倍的比例进行随机缩放
  • 实施任意角度的旋转处理
  • 在三个维度上施加偏移(shifting),偏移距离小于15%的半径长度
  • 正则化
  • 进行梯度截断处理(gradient clipping)
  • 应用批量归一化处理(batch normalization)

训练流程:

  1. 依次进行检测器的训练及参数的转移后,则继续进行分类器的训练;
  2. 通过应用梯度剪切法对分类器进行训练之后,则会保存BN(批归一化)参数;
  3. 在交替使用上述两种技术的过程中,则分别对检测器与分类器进行梯度剪切法与保存BN参数的操作。

6. 疑问

  • 检测网络为什么设计deconvolution层?

U-Net backbone equipped the network with the ability to extract multiscale data , whose importance lies in the fact that nodules exhibit significant size variations.

deconvolution层能够通过解码器级数放大feature map,并生成层次分明且更加详细的基础特征图,在语义分割任务中表现出显著的优势

  • Leaky noisy-or 的Pd用处理解不了

在现实生活中,肺癌的一个潜在原因是恶性结节的可能性之一。然而,在某些情况下(如N-Net系统),可能存在漏检的现象。由此可见,在所有检测指标均为零的情况下(即P1=P2=P3=P4=P5=0),肺癌仍有可能发生。为此,在分析此类情况时,默认会引入一个假象结节作为导致肺癌的因素之一,并假设其发生概率为Pd。

7. 思考

医学领域的数据资源较为有限,在提升模型性能时可以通过实施数据增强技术和正则化措施来有效防止模型过拟合现象的发生。此外需要注意避免过于僵化的设计策略。例如,在困难负样本挖掘过程中应选择多样化的候选负样本,并在RPN中合理分配proposal得分较高的样本时加入随机采样机制。而不仅仅是选取得分最高的前n个样本。

8. Reference

http://bioinfo.au.tsinghua.edu.cn/personals/sjchen/reports/20170511/Identifying-Nodules.tsix

https://www.jianshu.com/p/50158f8daf0d

https://www.zybuluo.com/sixijinling/note/733931

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2656011/

http://159.226.64.23/Jwk_dgdn/CN/article/downloadArticleFile.do?attachType=PDF&id=1624

以上

------------------------------------------------

知乎专栏·Paper Reading | 汇聚自动驾驶领域顶尖专家的知识分享平台,诚邀各界同仁加入!

全部评论 (0)

还没有任何评论哟~