PGh0bWw+CjxoZWFkPgo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS0xIj4KPHRpdGxlPlJ1bm5pbmcgc3BlY2lmaWMgdGVzdCB1bml0cyBzZWxlY3RlZCBieSB0aGVpciBuYW1lPC90aXRsZT4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi8uLi9zdHlsZS9zdHlsZS5jc3MiIHR5cGU9InRleHQvY3NzIj4KPG1ldGEgbmFtZT0iZ2VuZXJhdG9yIiBjb250ZW50PSJEb2NCb29rIFhTTCBTdHlsZXNoZWV0cyBWMS43NC4wIj4KPGxpbmsgcmVsPSJob21lIiBocmVmPSIuLi8uLi8uLi9pbmRleC5odG1sIiB0aXRsZT0iQm9vc3QgVGVzdCBMaWJyYXJ5Ij4KPGxpbmsgcmVsPSJ1cCIgaHJlZj0iLi4vcnVudGltZS1jb25maWcuaHRtbCIgdGl0bGU9IlJ1bnRpbWUgY29uZmlndXJhdGlvbiBvciB3aGF0IGFyZSB0aGUgc3RyaW5ncyBJIGNhbiBwdWxsPyI+CjxsaW5rIHJlbD0icHJldiIgaHJlZj0iLi4vcnVudGltZS1jb25maWcuaHRtbCIgdGl0bGU9IlJ1bnRpbWUgY29uZmlndXJhdGlvbiBvciB3aGF0IGFyZSB0aGUgc3RyaW5ncyBJIGNhbiBwdWxsPyI+CjxsaW5rIHJlbD0ibmV4dCIgaHJlZj0icmVmZXJlbmNlLmh0bWwiIHRpdGxlPSJSdW50aW1lIHBhcmFtZXRlcnMgcmVmZXJlbmNlIj4KPHNjcmlwdCBsYW5ndWFnZT0iSmF2YVNjcmlwdDEuMiIgc3JjPSIuLi8uLi8uLi8uLi9qcy9ib29zdC10ZXN0LmpzIj48L3NjcmlwdD4KPC9oZWFkPgo8Ym9keSBiZ2NvbG9yPSJ3aGl0ZSIgdGV4dD0iYmxhY2siIGxpbms9IiMwMDAwRkYiIHZsaW5rPSIjODQwMDg0IiBhbGluaz0iIzAwMDBGRiI+Cjx0YWJsZSB3aWR0aD0iMTAwJSI+PHRyPgo8dGQgd2lkdGg9IjEwJSI+PGEgaHJlZj0iLi4vLi4vLi4vaW5kZXguaHRtbCI+PGltZyBhbHQ9IkhvbWUiIHdpZHRoPSIyMjkiIGhlaWdodD0iNjEiIGJvcmRlcj0iMCIgc3JjPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Rlc3QvZG9jYm9vay9pbWcvYm9vc3QudGVzdC5sb2dvLnBuZyI+PC9hPjwvdGQ+Cjx0ZCB2YWxpZ249Im1pZGRsZSIgYWxpZ249ImxlZnQiPiAmZ3Q7IDxhIGhyZWY9Ii4uLy4uLy4uL3V0Zi5odG1sIj5UaGUgVW5pdCBUZXN0IEZyYW1ld29yazwvYT4gJmd0OyA8YSBocmVmPSIuLi8uLi91c2VyLWd1aWRlLmh0bWwiPlVzZXIncyBndWlkZTwvYT48YSBocmVmPSIuLi8uLi90ZXN0aW5nLXRvb2xzLmh0bWwiPgogICAgICAmZ3Q7CiAgICAgIDwvYT48YSBocmVmPSIuLi9ydW50aW1lLWNvbmZpZy5odG1sIj5SdW50aW1lIGNvbmZpZ3VyYXRpb24gPC9hPiAmZ3Q7IDxiPlJ1biBieSBuYW1lPC9iPgo8L3RkPgo8dGQ+PGRpdiBjbGFzcz0ic3Bpcml0LW5hdiI+CjxhIGhyZWY9Ii4uL3J1bnRpbWUtY29uZmlnLmh0bWwiPjxpbWcgc3JjPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kb2MvaHRtbC9pbWFnZXMvcHJldi5wbmciIGFsdD0iUHJldiI+PC9hPjxhIGhyZWY9InJlZmVyZW5jZS5odG1sIj48aW1nIHNyYz0iLi4vLi4vLi4vLi4vLi4vLi4vLi4vZG9jL2h0bWwvaW1hZ2VzL25leHQucG5nIiBhbHQ9Ik5leHQiPjwvYT4KPC9kaXY+PC90ZD4KPC90cj48L3RhYmxlPgo8aHI+CjxkaXYgY2xhc3M9InNlY3Rpb24iIGxhbmc9ImVuIj4KPGRpdiBjbGFzcz0idGl0bGVwYWdlIj48ZGl2PjxkaXY+PGg1IGNsYXNzPSJ0aXRsZSI+CjxhIG5hbWU9InV0Zi51c2VyLWd1aWRlLnJ1bnRpbWUtY29uZmlnLnJ1bi1ieS1uYW1lIj48L2E+UnVubmluZyBzcGVjaWZpYyB0ZXN0IHVuaXRzIHNlbGVjdGVkIGJ5IHRoZWlyIG5hbWU8L2g1PjwvZGl2PjwvZGl2PjwvZGl2Pgo8cCBjbGFzcz0iZmlyc3QtbGluZS1pbmRlbnRlZCI+CiAgIEluIHJlZ3VsYXIgY2lyY3Vtc3RhbmNlcyB0ZXN0IG1vZHVsZSBleGVjdXRpb24gaW5pdGlhdGVzIHRlc3Rpbmcgb2YgYWxsIHRlc3QgdW5pdHMgbWFudWFsbHkgb3IgYXV0b21hdGljYWxseSAKICAgcmVnaXN0ZXJlZCBpbiBtYXN0ZXIgdGVzdCBzdWl0ZS4gVGhlIDxhY3JvbnltIGNsYXNzPSJhY3JvbnltIj5VVEY8L2Fjcm9ueW0+IHByb3ZpZGVzIGFuIGFiaWxpdHkgdG8gcnVuIHNwZWNpZmljIHNldCBvZiB0ZXN0IHVuaXQgYXMgd2VsbC4gSXQgY2FuIGJlIAogICBzaW5nbGUgdGVzdCBjYXNlLCBzaW5nbGUgdGVzdCBzdWl0ZSBvciBzb21lIGNvbWJpbmF0aW9uIG9mIHRlc3QgY2FzZXMgYW5kIHN1aXRlcy4gVGhlIHRlc3RzIHVuaXRzIHRvIHJ1biBhcmUgCiAgIHNlbGVjdGVkIGJ5IHRoZSBydW50aW1lIHBhcmFtZXRlciA8YSBjbGFzcz0ibGluayIgaHJlZj0icmVmZXJlbmNlLmh0bWwiIHRpdGxlPSJSdW50aW1lIHBhcmFtZXRlcnMgcmVmZXJlbmNlIj5ydW5fdGVzdDwvYT4uIEluIHRoZSAKICAgZm9sbG93aW5nIGV4YW1wbGVzIEkgc2VsZWN0IHRlc3RzIHRvIHJ1biB1c2luZyBjb21tYW5kIGxpbmUgYXJndW1lbnRzLCBidXQgdGhlIHNhbWUgZmlsdGVyIGV4cHJlc3Npb24gY2FuIGJlIHVzZWQgYXMgCiAgIGFuIGFwcHJvcHJpYXRlIGVudmlyb25tZW50IHZhcmlhYmxlIHZhbHVlLgogIDwvcD4KPHAgY2xhc3M9ImZpcnN0LWxpbmUtaW5kZW50ZWQiPgogICBGaWx0ZXIgZXhwcmVzc2lvbnMgYXJlIHNwZWNpZmllZCBpbiBhIGZvcm0gYS9iL2MsIHdoZXJlIGEsIGIgYW5kIGMgYXJlIGZpbHRlcnMgZm9yIGNvcnJlc3BvbmRpbmcgbGV2ZWxzIG9mIHRlc3QgdHJlZS4gCiAgIFN5bWJvbCAnKicgY2FuIGJlIHVzZWQgYXQgdGhlIGJlZ2lubmluZywgYXQgdGhlIGVuZCBhbmQgYXMgdGhlIGxldmVsIGZpbHRlciBpdHNlbGYgYXMgYW4gYXN0ZXJpc2suIFN5bWJvbCAnLCcgaXMgdXNlZAogICB0byBjcmVhdGUgbGlzdCBvZiB0ZXN0IHVuaXRzIHJlc2lkaW5nIG9uIHRoZSBzYW1lIGxldmVsIGluIHRlc3QgdHJlZS4gCiAgPC9wPgo8cCBjbGFzcz0iZmlyc3QtbGluZS1pbmRlbnRlZCI+CiAgIExldCdzIGNvbnNpZGVyIGZvbGxvd2luZyB0ZXN0IG1vZHVsZSBjb25zaXN0aW5nIGZyb20gc2V2ZXJhbCB0ZXN0IHN1aXRlcyBhbmQgdGVzdCBjYXNlcy4KICA8L3A+CjxwcmUgY2xhc3M9InByb2dyYW1saXN0aW5nIj4jZGVmaW5lIEJPT1NUX1RFU1RfTU9EVUxFIGV4YW1wbGUKI2luY2x1ZGUgJmx0O2Jvb3N0L3Rlc3QvaW5jbHVkZWQvdW5pdF90ZXN0LmhwcCZndDsKCkJPT1NUX0FVVE9fVEVTVF9DQVNFKCB0ZXN0QSApCnsKfQoKQk9PU1RfQVVUT19URVNUX0NBU0UoIHRlc3RCICkKewp9CgpCT09TVF9BVVRPX1RFU1RfU1VJVEUoIHMxICkKCkJPT1NUX0FVVE9fVEVTVF9DQVNFKCB0ZXN0MSApCnsKfQoKQk9PU1RfQVVUT19URVNUX0NBU0UoIGxlc3QyICkKewp9CgpCT09TVF9BVVRPX1RFU1RfU1VJVEVfRU5EKCkKCkJPT1NUX0FVVE9fVEVTVF9TVUlURSggczIgKQoKQk9PU1RfQVVUT19URVNUX0NBU0UoIHRlc3QxICkKewp9CgpCT09TVF9BVVRPX1RFU1RfQ0FTRSggdGVzdDExICkKewp9CgpCT09TVF9BVVRPX1RFU1RfU1VJVEUoIGluICkKCkJPT1NUX0FVVE9fVEVTVF9DQVNFKCB0ZXN0ICkKewp9CgpCT09TVF9BVVRPX1RFU1RfU1VJVEVfRU5EKCkKCkJPT1NUX0FVVE9fVEVTVF9TVUlURV9FTkQoKQo8L3ByZT4KPGRpdiB4bWxuczpyZXY9Imh0dHA6Ly93d3cuY3MucnBpLmVkdS9+Z3JlZ29kL2Jvb3N0L3Rvb2xzL2RvYy9yZXZpc2lvbiIgY2xhc3M9Iml0ZW1pemVkbGlzdCI+PHVsIHR5cGU9ImRpc2MiPgo8bGk+CjxwPlJ1biBzaW5nbGUgdGVzdCBjYXNlIGJ5IHNwZWNpZnlpbmcgaXQncyBuYW1lLjwvcD4KPHByZSBjbGFzcz0idGVzdC1leGVjdXRpb24tb3V0cHV0Ij4mZ3Q7ZXhhbXBsZSAtLWxvZ19sZXZlbD10ZXN0X3N1aXRlIC0tcnVuX3Rlc3Q9dGVzdEEKUnVubmluZyAxIHRlc3QgY2FzZS4uLgpFbnRlcmluZyB0ZXN0IHN1aXRlICJleGFtcGxlIgpFbnRlcmluZyB0ZXN0IGNhc2UgInRlc3RBIgpUZXN0IGNhc2UgdGVzdEEgZG9lc24ndCBpbmNsdWRlIGFueSBhc3NlcnRpb25zCkxlYXZpbmcgdGVzdCBjYXNlICJ0ZXN0QSIKTGVhdmluZyB0ZXN0IHN1aXRlICJleGFtcGxlIgoKKioqIE5vIGVycm9ycyBkZXRlY3RlZDwvcHJlPgo8L2xpPgo8bGk+CjxwPgogICAgIFJ1bm5pbmcgbXVsdGlwbGUgdGVzdCBjYXNlcyByZXNpZGluZyB3aXRoaW4gdGhlIHNhbWUgdGVzdCBzdWl0ZSBieSBsaXN0aW5nIHRoZWlyIG5hbWVzIGluIGNvbWEgc2VwYXJhdGVkIGxpc3QuCiAgICA8L3A+CjxwcmUgY2xhc3M9InRlc3QtZXhlY3V0aW9uLW91dHB1dCI+Jmd0O2V4YW1wbGUgLS1sb2dfbGV2ZWw9dGVzdF9zdWl0ZSAtLXJ1bl90ZXN0PXRlc3RBLHRlc3RCClJ1bm5pbmcgMiB0ZXN0IGNhc2UuLi4KRW50ZXJpbmcgdGVzdCBzdWl0ZSAiZXhhbXBsZSIKRW50ZXJpbmcgdGVzdCBjYXNlICJ0ZXN0QSIKVGVzdCBjYXNlIHRlc3RBIGRvZXNuJ3QgaW5jbHVkZSBhbnkgYXNzZXJ0aW9ucwpMZWF2aW5nIHRlc3QgY2FzZSAidGVzdEEiCkVudGVyaW5nIHRlc3QgY2FzZSAidGVzdEIiClRlc3QgY2FzZSB0ZXN0QSBkb2Vzbid0IGluY2x1ZGUgYW55IGFzc2VydGlvbnMKTGVhdmluZyB0ZXN0IGNhc2UgInRlc3RCIgpMZWF2aW5nIHRlc3Qgc3VpdGUgImV4YW1wbGUiCgoqKiogTm8gZXJyb3JzIGRldGVjdGVkPC9wcmU+CjwvbGk+CjxsaT4KPHA+SW5jb3JyZWN0IHRlc3QgY2FzZSBuYW1lIG1heSBsZWFkIHRvIG5vIHRlc3QgdG8gYmUgcnVuLjwvcD4KPHByZSBjbGFzcz0idGVzdC1leGVjdXRpb24tb3V0cHV0Ij4mZ3Q7ZXhhbXBsZSAtLWxvZ19sZXZlbD10ZXN0X3N1aXRlIC0tcnVuX3Rlc3Q9dGVzdEMKVGVzdCBzZXR1cCBlcnJvcjogbm8gdGVzdCBjYXNlcyBtYXRjaGluZyBmaWx0ZXI8L3ByZT4KPC9saT4KPGxpPgo8cD4KICAgICBUZXN0IHVuaXQgbmFtZSBjYW4gcmVmZXIgdG8gYSB0ZXN0IHN1aXRlIGFzIHdlbGwuIEFsbCB0ZXN0IHVuaXRzIHdpdGhpbiB0aGUgcmVmZXJyZWQgdGVzdCBzdWl0ZXMgYXJlIGdvaW5nIHRvIGJlIAogICAgIHJ1bi4KICAgIDwvcD4KPHByZSBjbGFzcz0idGVzdC1leGVjdXRpb24tb3V0cHV0Ij4mZ3Q7ZXhhbXBsZSAtLWxvZ19sZXZlbD10ZXN0X3N1aXRlIC0tcnVuX3Rlc3Q9czEKUnVubmluZyAyIHRlc3QgY2FzZXMuLi4KRW50ZXJpbmcgdGVzdCBzdWl0ZSAiZXhhbXBsZSIKRW50ZXJpbmcgdGVzdCBzdWl0ZSAiczEiCkVudGVyaW5nIHRlc3QgY2FzZSAidGVzdDEiClRlc3QgY2FzZSB0ZXN0MSBkb2Vzbid0IGluY2x1ZGUgYW55IGFzc2VydGlvbnMKTGVhdmluZyB0ZXN0IGNhc2UgInRlc3QxIgpFbnRlcmluZyB0ZXN0IGNhc2UgImxlc3QyIgpUZXN0IGNhc2UgbGVzdDIgZG9lc24ndCBpbmNsdWRlIGFueSBhc3NlcnRpb25zCkxlYXZpbmcgdGVzdCBjYXNlICJsZXN0MiIKTGVhdmluZyB0ZXN0IHN1aXRlICJzMSIKTGVhdmluZyB0ZXN0IHN1aXRlICJleGFtcGxlIgoKKioqIE5vIGVycm9ycyBkZXRlY3RlZDwvcHJlPgo8L2xpPgo8bGk+CjxwPgogICAgIFVzaW5nICcvJyBhcyBsZXZlbHMgc2VwYXJhdG9yIHlvdSBjYW4gcmVmZXIgdG8gYW55IHRlc3QgdW5pdCBpbnNpZGUgYSB0ZXN0IHRyZWUuCiAgICA8L3A+CjxwcmUgY2xhc3M9InRlc3QtZXhlY3V0aW9uLW91dHB1dCI+Jmd0O2V4YW1wbGUgLS1sb2dfbGV2ZWw9dGVzdF9zdWl0ZSAtLXJ1bl90ZXN0PXMyL2luL3Rlc3QKUnVubmluZyAxIHRlc3QgY2FzZS4uLgpFbnRlcmluZyB0ZXN0IHN1aXRlICJleGFtcGxlIgpFbnRlcmluZyB0ZXN0IHN1aXRlICJzMiIKRW50ZXJpbmcgdGVzdCBzdWl0ZSAiaW4iCkVudGVyaW5nIHRlc3QgY2FzZSAidGVzdCIKVGVzdCBjYXNlIHRlc3QgZG9lc24ndCBpbmNsdWRlIGFueSBhc3NlcnRpb25zCkxlYXZpbmcgdGVzdCBjYXNlICJ0ZXN0IgpMZWF2aW5nIHRlc3Qgc3VpdGUgImluIgpMZWF2aW5nIHRlc3Qgc3VpdGUgInMyIgpMZWF2aW5nIHRlc3Qgc3VpdGUgImV4YW1wbGUiCgoqKiogTm8gZXJyb3JzIGRldGVjdGVkPC9wcmU+CjwvbGk+CjxsaT4KPHA+CiAgICAgVGhlIDxhY3JvbnltIGNsYXNzPSJhY3JvbnltIj5VVEY8L2Fjcm9ueW0+IHN1cHBvcnRzIHNpbXBsZSByZWd1bGFyIGV4cHJlc3Npb24tbGlrZSAnKicgd2lsZGNhcmQuIFNpbmdsZSAnKicgbWF0Y2ggYW55IG5hbWUgb2YgdGVzdCB1bml0LiBBY2NvcmRpbmdseQogICAgIGV4cHJlc3Npb24gJ3MxLyonIGlzIGVxdWl2YWxlbnQgdG8gdGhlIGV4cHJlc3Npb24gJ3MxJyBhbmQgbWF0Y2hlcyBhbGwgdGVzdCB1bml0cyBpbnNpZGUgdGVzdCBzdWl0ZSBzMS4gU2ltaWxhcmx5IAogICAgIGV4cHJlc3Npb24gJyovdGVzdDEnIHJlZmVycyB0byBhbGwgdGVzdCB1bml0cyBuYW1lZCB0ZXN0MSB0aGF0IHJlc2lkZSBpbiBtYXN0ZXIgdGVzdCBzdWl0ZSdzIGRpcmVjdCBjaGlsZCBzdWl0ZXMuCiAgICA8L3A+CjxwcmUgY2xhc3M9InRlc3QtZXhlY3V0aW9uLW91dHB1dCI+Jmd0O2V4YW1wbGUgLS1sb2dfbGV2ZWw9dGVzdF9zdWl0ZSAtLXJ1bl90ZXN0PSovdGVzdDEKUnVubmluZyAyIHRlc3QgY2FzZXMuLi4KRW50ZXJpbmcgdGVzdCBzdWl0ZSAiZXhhbXBsZSIKRW50ZXJpbmcgdGVzdCBzdWl0ZSAiczEiCkVudGVyaW5nIHRlc3QgY2FzZSAidGVzdDEiClRlc3QgY2FzZSB0ZXN0MSBkb2Vzbid0IGluY2x1ZGUgYW55IGFzc2VydGlvbnMKTGVhdmluZyB0ZXN0IGNhc2UgInRlc3QxIgpMZWF2aW5nIHRlc3Qgc3VpdGUgInMxIgpFbnRlcmluZyB0ZXN0IHN1aXRlICJzMiIKRW50ZXJpbmcgdGVzdCBjYXNlICJ0ZXN0MSIKVGVzdCBjYXNlIHRlc3QxIGRvZXNuJ3QgaW5jbHVkZSBhbnkgYXNzZXJ0aW9ucwpMZWF2aW5nIHRlc3QgY2FzZSAidGVzdDEiCkxlYXZpbmcgdGVzdCBzdWl0ZSAiczIiCkxlYXZpbmcgdGVzdCBzdWl0ZSAiZXhhbXBsZSIKCioqKiBObyBlcnJvcnMgZGV0ZWN0ZWQ8L3ByZT4KPC9saT4KPGxpPgo8cD4KICAgICBUaGUgPGFjcm9ueW0gY2xhc3M9ImFjcm9ueW0iPlVURjwvYWNyb255bT4gYWxsb3dzIHRvIG1hdGNoIHNwZWNpZmljIHByZWZpeCBpbiB0ZXN0IHVuaXQgbmFtZXMuIEZvciBleGFtcGxlLCBleHByZXNzaW9uICdzMi90ZXN0KicgZmlsdGVycyBvdXQgb25seSAKICAgICB0ZXN0IHVuaXRzIGluIHRlc3Qgc3VpdGUgczIgd2l0aCBuYW1lIHRoYXQgc3RhcnRzIHdpdGggJ3Rlc3QnLiBUaGlzIGF2b2lkcyBydW5uaW5nIHRlc3Qgc3VpdGUgczIvaW4uCiAgICA8L3A+CjxwcmUgY2xhc3M9InRlc3QtZXhlY3V0aW9uLW91dHB1dCI+Jmd0O2V4YW1wbGUgLS1sb2dfbGV2ZWw9dGVzdF9zdWl0ZSAtLXJ1bl90ZXN0PXMyL3Rlc3QqClJ1bm5pbmcgMiB0ZXN0IGNhc2VzLi4uCkVudGVyaW5nIHRlc3Qgc3VpdGUgImV4YW1wbGUiCkVudGVyaW5nIHRlc3Qgc3VpdGUgInMyIgpFbnRlcmluZyB0ZXN0IGNhc2UgInRlc3QxIgpUZXN0IGNhc2UgdGVzdDEgZG9lc24ndCBpbmNsdWRlIGFueSBhc3NlcnRpb25zCkxlYXZpbmcgdGVzdCBjYXNlICJ0ZXN0MSIKRW50ZXJpbmcgdGVzdCBjYXNlICJ0ZXN0MTEiClRlc3QgY2FzZSB0ZXN0MTEgZG9lc24ndCBpbmNsdWRlIGFueSBhc3NlcnRpb25zCkxlYXZpbmcgdGVzdCBjYXNlICJ0ZXN0MTEiCkxlYXZpbmcgdGVzdCBzdWl0ZSAiczIiCkxlYXZpbmcgdGVzdCBzdWl0ZSAiZXhhbXBsZSIKCioqKiBObyBlcnJvcnMgZGV0ZWN0ZWQ8L3ByZT4KPC9saT4KPGxpPgo8cD4KICAgICBUaGUgPGFjcm9ueW0gY2xhc3M9ImFjcm9ueW0iPlVURjwvYWNyb255bT4gYWxsb3dzIHRvIG1hdGNoIHNwZWNpZmljIHN1ZmZpeCBpbiB0ZXN0IHVuaXQgbmFtZXMuIEZvciBleGFtcGxlLCBleHByZXNzaW9uICcqLyoxJyBmaWx0ZXJzIG91dCB0ZXN0IHVuaXRzCiAgICAgd2l0aCBuYW1lIHRoYXQgZW5kcyB3aXRoICcxJyBhbmQgcmVzaWRlIGluIG1hc3RlciB0ZXN0IHN1aXRlJ3MgZGlyZWN0IGNoaWxkIHN1aXRlcy4KICAgIDwvcD4KPHByZSBjbGFzcz0idGVzdC1leGVjdXRpb24tb3V0cHV0Ij4mZ3Q7ZXhhbXBsZSAtLWxvZ19sZXZlbD10ZXN0X3N1aXRlIC0tcnVuX3Rlc3Q9Ki8qMQpSdW5uaW5nIDIgdGVzdCBjYXNlcy4uLgpFbnRlcmluZyB0ZXN0IHN1aXRlICJleGFtcGxlIgpFbnRlcmluZyB0ZXN0IHN1aXRlICJzMiIKRW50ZXJpbmcgdGVzdCBjYXNlICJ0ZXN0MSIKVGVzdCBjYXNlIHRlc3QxIGRvZXNuJ3QgaW5jbHVkZSBhbnkgYXNzZXJ0aW9ucwpMZWF2aW5nIHRlc3QgY2FzZSAidGVzdDEiCkVudGVyaW5nIHRlc3QgY2FzZSAidGVzdDExIgpUZXN0IGNhc2UgdGVzdDExIGRvZXNuJ3QgaW5jbHVkZSBhbnkgYXNzZXJ0aW9ucwpMZWF2aW5nIHRlc3QgY2FzZSAidGVzdDExIgpMZWF2aW5nIHRlc3Qgc3VpdGUgInMyIgpMZWF2aW5nIHRlc3Qgc3VpdGUgImV4YW1wbGUiCgoqKiogTm8gZXJyb3JzIGRldGVjdGVkPC9wcmU+CjwvbGk+CjxsaT4KPHA+CiAgICAgRmluYWxseSwgdGhlIDxhY3JvbnltIGNsYXNzPSJhY3JvbnltIj5VVEY8L2Fjcm9ueW0+IGFsbG93cyB0byBtYXRjaCBzcGVjaWZpYyBzdWJzdHJpbmcgaW4gdGVzdCB1bml0IG5hbWVzLgogICAgPC9wPgo8cHJlIGNsYXNzPSJ0ZXN0LWV4ZWN1dGlvbi1vdXRwdXQiPiZndDtleGFtcGxlIC0tbG9nX2xldmVsPXRlc3Rfc3VpdGUgLS1ydW5fdGVzdD1zMS8qZXN0KgpSdW5uaW5nIDIgdGVzdCBjYXNlcy4uLgpFbnRlcmluZyB0ZXN0IHN1aXRlICJleGFtcGxlIgpFbnRlcmluZyB0ZXN0IHN1aXRlICJzMSIKRW50ZXJpbmcgdGVzdCBjYXNlICJ0ZXN0MSIKVGVzdCBjYXNlIHRlc3QxIGRvZXNuJ3QgaW5jbHVkZSBhbnkgYXNzZXJ0aW9ucwpMZWF2aW5nIHRlc3QgY2FzZSAidGVzdDEiCkVudGVyaW5nIHRlc3QgY2FzZSAibGVzdDIiClRlc3QgY2FzZSBsZXN0MiBkb2Vzbid0IGluY2x1ZGUgYW55IGFzc2VydGlvbnMKTGVhdmluZyB0ZXN0IGNhc2UgImxlc3QyIgpMZWF2aW5nIHRlc3Qgc3VpdGUgInMxIgpMZWF2aW5nIHRlc3Qgc3VpdGUgImV4YW1wbGUiCgoqKiogTm8gZXJyb3JzIGRldGVjdGVkPC9wcmU+CjwvbGk+CjwvdWw+PC9kaXY+CjwvZGl2Pgo8dGFibGUgeG1sbnM6cmV2PSJodHRwOi8vd3d3LmNzLnJwaS5lZHUvfmdyZWdvZC9ib29zdC90b29scy9kb2MvcmV2aXNpb24iIHdpZHRoPSIxMDAlIj48dHI+Cjx0ZCBhbGlnbj0ibGVmdCI+PC90ZD4KPHRkIGFsaWduPSJyaWdodCI+PGRpdiBjbGFzcz0iY29weXJpZ2h0LWZvb3RlciI+Q29weXJpZ2h0IKkgMjAwMS0yMDA3IEdlbm5hZGl5IFJvemVudGFsPC9kaXY+PC90ZD4KPC90cj48L3RhYmxlPgo8aHI+CjxkaXYgY2xhc3M9InNwaXJpdC1uYXYiPgo8YSBhY2Nlc3NrZXk9InAiIGhyZWY9Ii4uL3J1bnRpbWUtY29uZmlnLmh0bWwiPjxpbWcgc3JjPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kb2MvaHRtbC9pbWFnZXMvcHJldi5wbmciIGFsdD0iUHJldiI+PC9hPjxhIGFjY2Vzc2tleT0idSIgaHJlZj0iLi4vcnVudGltZS1jb25maWcuaHRtbCI+PGltZyBzcmM9Ii4uLy4uLy4uLy4uLy4uLy4uLy4uL2RvYy9odG1sL2ltYWdlcy91cC5wbmciIGFsdD0iVXAiPjwvYT48YSBhY2Nlc3NrZXk9ImgiIGhyZWY9Ii4uLy4uLy4uL2luZGV4Lmh0bWwiPjxpbWcgc3JjPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kb2MvaHRtbC9pbWFnZXMvaG9tZS5wbmciIGFsdD0iSG9tZSI+PC9hPjxhIGFjY2Vzc2tleT0ibiIgaHJlZj0icmVmZXJlbmNlLmh0bWwiPjxpbWcgc3JjPSIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kb2MvaHRtbC9pbWFnZXMvbmV4dC5wbmciIGFsdD0iTmV4dCI+PC9hPgo8L2Rpdj4KPC9ib2R5Pgo8L2h0bWw+Cg==