PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiIKImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L2xvb3NlLmR0ZCI+CjxodG1sPgo8aGVhZD4KICA8dGl0bGU+UXVpY2sgR3VpZGUgdG8gTWF2ZW4gZm9yIEF4aXMgMi4wPC90aXRsZT4KICA8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1pc28tODg1OS0xIj4KICA8bGluayBocmVmPSJjc3MvYXhpcy1kb2NzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9ImFsbCI+CjwvaGVhZD4KCjxib2R5IGxhbmc9ImVuIj4KPGgxIGFsaWduPSJjZW50ZXIiPlF1aWNrIEd1aWRlIHRvIE1hdmVuIGZvciBBeGlzIDIuMDwvaDE+Cgo8aDIgYWxpZ249ImxlZnQiPkludHJvZHVjdGlvbjwvaDI+Cgo8cCBhbGlnbj0ibGVmdCI+PGEgaHJlZj0iaHR0cDovL21hdmVuLmFwYWNoZS5vcmciPk1hdmVuPC9hPiBpcyB1c2VkIGFzIHRoZQpidWlsZCB0b29sIG9mIEF4aXMgMi4wLiBUaGlzIGRvY3VtZW50IHdpbGwgcHJvdmlkZSBhIHF1aWNrIGd1aWRlIG9uIGhvdyB0bwp1c2UgTWF2ZW4gd2l0aCB5b3VyIGRldmVsb3BtZW50cy48L3A+Cgo8aDIgYWxpZ249ImxlZnQiPkNvbW1hbmRzPC9oMj4KCjx0YWJsZSBib3JkZXI9IjEiIGFsaWduPSJjZW50ZXIiPgogIDx0Ym9keT4KICAgIDx0cj4KICAgICAgPHRoIHNjb3BlPSJjb2wiPgogICAgICAgIDxkaXYgYWxpZ249ImxlZnQiPgogICAgICAgIENvbW1hbmQ8L2Rpdj4KICAgICAgPC90aD4KICAgICAgPHRoIHNjb3BlPSJjb2wiPgogICAgICAgIDxkaXYgYWxpZ249ImxlZnQiPgogICAgICAgIERlc2NyaXB0aW9uPC9kaXY+CiAgICAgIDwvdGg+CiAgICA8L3RyPgogICAgPHRyPgogICAgICA8dGQ+CiAgICAgICAgPGRpdiBhbGlnbj0ibGVmdCI+CiAgICAgICAgbWF2ZW48L2Rpdj4KICAgICAgPC90ZD4KICAgICAgPHRkPgogICAgICAgIDxkaXYgYWxpZ249ImxlZnQiPgogICAgICAgIERvd25sb2FkcyByZWxldmFudCBqYXJzIGlmIG5vdCBhdmFpbGFibGUsIGFuZCBjb21waWxlcyBhbmQgcnVucyB0aGUKICAgICAgICB0ZXN0cyBpbiB0aGUgc3lzdGVtLjwvZGl2PgogICAgICA8L3RkPgogICAgPC90cj4KICAgIDx0cj4KICAgICAgPHRkPm1hdmVuIGNsZWFuPC90ZD4KICAgICAgPHRkPkNsZWFucyBhbGwgdGhlIGNvbnRlbnQgYnVpbHQgc28gZmFyIGluIHRoZSB0YXJnZXQgZm9sZGVyLiBUaGlzIHdpbGwKICAgICAgICBub3QgY2xlYW4gdGhlIGphciByZXBvc2l0b3J5LjwvdGQ+CiAgICA8L3RyPgogICAgPHRyPgogICAgICA8dGQ+CiAgICAgICAgPGRpdiBhbGlnbj0ibGVmdCI+CiAgICAgICAgbWF2ZW4gdGVzdDwvZGl2PgogICAgICA8L3RkPgogICAgICA8dGQ+CiAgICAgICAgPGRpdiBhbGlnbj0ibGVmdCI+CiAgICAgICAgUnVucyBvbmx5IHRoZSB0ZXN0cy4gUGVyZm9ybXMgYXV0b21hdGljIGNvbXBpbGF0aW9uIG9mIHRoZSBjaGFuZ2VkCiAgICAgICAgc291cmNlcyBhcyB3ZWxsLiBUaGlzIHdpbGwgbm90IHJ1biBTT0FQIGludGVyb3AgdGVzdHM8L2Rpdj4KICAgICAgPC90ZD4KICAgIDwvdHI+CiAgICA8dHI+CiAgICAgIDx0ZD4KICAgICAgICA8ZGl2IGFsaWduPSJsZWZ0Ij4KICAgICAgICBtYXZlbiBjbGVhbiBhbGwtdGVzdHM8L2Rpdj4KICAgICAgPC90ZD4KICAgICAgPHRkPgogICAgICAgIDxkaXYgYWxpZ249ImxlZnQiPgogICAgICAgIENsZWFucyB1cCBhbmQgcnVucyBhbGwgb2ZmbGluZSBhbmQgb25saW5lIHRlc3RzPC9kaXY+CiAgICAgIDwvdGQ+CiAgICA8L3RyPgogICAgPHRyPgogICAgICA8dGQ+CiAgICAgICAgPGRpdiBhbGlnbj0ibGVmdCI+CiAgICAgICAgbWF2ZW4gaXRlc3Q8L2Rpdj4KICAgICAgPC90ZD4KICAgICAgPHRkPgogICAgICAgIDxkaXYgYWxpZ249ImxlZnQiPgogICAgICAgIFRvIHJ1biB0aGUgb25saW5lLW1vZGUgdGVzdHMgZm9yIHNheSB0aGUgbW9kdWxlcy9pbnRlZ3JhdGlvbiwgcnVuCiAgICAgICAgIm1hdmVuIGl0ZXN0IiBmcm9tIG1vZHVsZXMvaW50ZWdyYXRpb248L2Rpdj4KICAgICAgPC90ZD4KICAgIDwvdHI+CiAgICA8dHI+CiAgICAgIDx0ZD4KICAgICAgICA8ZGl2IGFsaWduPSJsZWZ0Ij4KICAgICAgICBtYXZlbiB0ZXN0IGl0ZXN0PC9kaXY+CiAgICAgIDwvdGQ+CiAgICAgIDx0ZD4KICAgICAgICA8ZGl2IGFsaWduPSJsZWZ0Ij4KICAgICAgICBUbyBydW4gYWxsIHRoZSB0ZXN0cyBmb3Igc2F5IHRoZSBtb2R1bGVzL2ludGVncmF0aW9uLCBydW4gIm1hdmVuIHRlc3QKICAgICAgICBpdGVzdCIgZnJvbSBtb2R1bGVzL2ludGVncmF0aW9uPC9kaXY+CiAgICAgIDwvdGQ+CiAgICA8L3RyPgogICAgPHRyPgogICAgICA8dGQ+CiAgICAgICAgPGRpdiBhbGlnbj0ibGVmdCI+CiAgICAgICAgbWF2ZW4gLWc8L2Rpdj4KICAgICAgPC90ZD4KICAgICAgPHRkPgogICAgICAgIDxkaXYgYWxpZ249ImxlZnQiPgogICAgICAgIExpc3RzIGRvd24gYWxsIHRoZSBjb21tYW5kcyBhdmFpbGFibGUgd2l0aCBNYXZlbi48L2Rpdj4KICAgICAgPC90ZD4KICAgIDwvdHI+CiAgICA8dHI+CiAgICAgIDx0ZD4KICAgICAgICA8ZGl2IGFsaWduPSJsZWZ0Ij4KICAgICAgICBtYXZlbiBtdWx0aXByb2plY3Q8L2Rpdj4KICAgICAgPC90ZD4KICAgICAgPHRkPgogICAgICAgIDxkaXYgYWxpZ249ImxlZnQiPgogICAgICAgIEdlbmVyYXRlcyB0aGUgc2l0ZS48L2Rpdj4KICAgICAgPC90ZD4KICAgIDwvdHI+CiAgICA8dHI+CiAgICAgIDx0ZD4KICAgICAgICA8ZGl2IGFsaWduPSJsZWZ0Ij4KICAgICAgICBtYXZlbiBpZGVhOm11bHRpcHJvamVjdDwvZGl2PgogICAgICA8L3RkPgogICAgICA8dGQ+CiAgICAgICAgPGRpdiBhbGlnbj0ibGVmdCI+CiAgICAgICAgR2VuZXJhdGVzIElERUEgLmlwciwgLmltbCBhbmQgLml3cyBwcm9qZWN0IGZpbGVzLjwvZGl2PgogICAgICA8L3RkPgogICAgPC90cj4KICAgIDx0cj4KICAgICAgPHRkPgogICAgICAgIDxkaXYgYWxpZ249ImxlZnQiPgogICAgICAgIG1hdmVuIC1EbWF2ZW4udGVzdC5za2lwPXRydWU8L2Rpdj4KICAgICAgPC90ZD4KICAgICAgPHRkPgogICAgICAgIDxkaXYgYWxpZ249ImxlZnQiPgogICAgICAgIDwvZGl2PgogICAgICAgIEJ1aWxkcyBBeGlzMiBhbmQgc2tpcHMgYWxsIHRoZSB0ZXN0cy48L3RkPgogICAgPC90cj4KICA8L3Rib2R5Pgo8L3RhYmxlPgo8YnI+CgoKPGgyIGFsaWduPSJsZWZ0Ij5NYXZlbiBGQVE8L2gyPgoKPHA+PGk+MS4gSSBoYXZlIHByb2JsZW1zIHdpdGggTWF2ZW4gMS4xPC9pPjwvcD4KCjxwIHN0eWxlPSJ0ZXh0LWluZGVudDogMTBwdCI+SXQgc2VlbXMgdGhhdCBNYXZlbiAxLjEgZG9lc24ndCBjb21lIGJ1bmRsZWQKd2l0aCB0aGUgcmVxdWlyZWQgaXRlc3QgcGx1Zy1pbiBhbmQgYXJ0aWZhY3QgcGx1Zy1pbi4gUnVuIHRoZSBmb2xsb3dpbmcgdG8KZ2V0IGl0IHVwZGF0ZWQuPGJyPgo8L3A+CjxvbD4KICA8bGk+bWF2ZW4gcGx1Z2luOmRvd25sb2FkIC1EZ3JvdXBJZD1tYXZlbi1pdGVzdC1wbHVnaW4KICAgIC1EYXJ0aWZhY3RJZD1tYXZlbi1pdGVzdC1wbHVnaW4gLUR2ZXJzaW9uPTEuMAogICAgLURtYXZlbi5yZXBvLnJlbW90ZT1odHRwOi8vd3d3Lm9wZW5lamIub3JnL21hdmVuLGh0dHA6Ly93d3cuaWJpYmxpby5vcmcvbWF2ZW48L2xpPgogIDxsaT5tYXZlbiBwbHVnaW46RG93bmxvYWQgLURncm91cElkPW1hdmVuCiAgICAtRGFydGlmYWN0SWQ9bWF2ZW4tYXJ0aWZhY3QtcGx1Z2luIC1EdmVyc2lvbj0xLjY8L2xpPgo8L29sPgoKPHAgYWxpZ249ImxlZnQiPqA8L3A+Cgo8cCBhbGlnbj0ibGVmdCI+oDwvcD4KPC9ib2R5Pgo8L2h0bWw+Cg==