CjwhRE9DVFlQRSBodG1sPgo8aHRtbCBsYW5nPSJlbiI+CjxoZWFkPgogIAo8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CjxtZXRhIGh0dHAtZXF1aXY9IlgtVUEtQ29tcGF0aWJsZSIgY29udGVudD0iSUU9ZWRnZSI+CjxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+Cgo8dGl0bGU+Q29nbmlDcnlwdCBDb2RlIEdlbmVyYXRpb24gfCBDb2duaUNyeXB0PC90aXRsZT4KPG1ldGEgcHJvcGVydHk9Im9nOnRpdGxlIiBjb250ZW50PSJDb2duaUNyeXB0IENvZGUgR2VuZXJhdGlvbiB8IENvZ25pQ3J5cHQiIC8+CjxtZXRhIG5hbWU9InR3aXR0ZXI6dGl0bGUiIGNvbnRlbnQ9IkNvZ25pQ3J5cHQgQ29kZSBHZW5lcmF0aW9uIHwgQ29nbmlDcnlwdCIgLz4KPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRoaXMgdHV0b3JpYWwgcGFnZSBkZXNjcmliZXMgaG93IG9uZSB3b3VsZCB1c2UgQ29nbmlDcnlwdCZyc3F1bztzIGNvZGUtZ2VuZXJhdGlvbiBmZWF0dXJlLiBGb3IgYSBtb3JlIHRlY2huaWNhbCBkZXNjcmlwdGlvbiBvZiBob3cgdGhlIGNvZGUgZ2VuZXJhdGlvbiB3b3JrcyBpbiB0aGUgYmFja2dyb3VuZCwgcGxlYXNlIHJlZmVyIHRvIFRvb2wgUGFwZXIgb24gQ29nbmlDcnlwdCBwdWJsaXNoZWQgYXQgQVNFIDIwMTcuCkxhdW5jaGluZyB0aGUgQ29kZSBHZW5lcmF0b3IgQ29nbmlDcnlwdCZyc3F1bztzIGNvZGUgZ2VuZXJhdG9yIGNhbiBtb3N0IGVhc2lseSBiZSB0cmlnZ2VyZWQgYnkgY2xpY2tpbmcgdGhlIENvZ25pQ3J5cHQgYnV0dG9uIGluIHRoZSBFY2xpcHNlIHRvb2wgYmFyLiBJbiB0aGlzIGNhc2UsIENvZ25pQ3J5cHQgYXBwbGllcyBhIG51bWJlciBvZiBoZXVyaXN0aWNzIHRvIGRldGVybWluZSB3aGljaCBwcm9qZWN0IHRoZSBjb2RlIHNob3VsZCBiZSBnZW5lcmF0ZWQgaW50by4iPgo8bWV0YSBwcm9wZXJ0eT0ib2c6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlRoaXMgdHV0b3JpYWwgcGFnZSBkZXNjcmliZXMgaG93IG9uZSB3b3VsZCB1c2UgQ29nbmlDcnlwdCZyc3F1bztzIGNvZGUtZ2VuZXJhdGlvbiBmZWF0dXJlLiBGb3IgYSBtb3JlIHRlY2huaWNhbCBkZXNjcmlwdGlvbiBvZiBob3cgdGhlIGNvZGUgZ2VuZXJhdGlvbiB3b3JrcyBpbiB0aGUgYmFja2dyb3VuZCwgcGxlYXNlIHJlZmVyIHRvIFRvb2wgUGFwZXIgb24gQ29nbmlDcnlwdCBwdWJsaXNoZWQgYXQgQVNFIDIwMTcuCkxhdW5jaGluZyB0aGUgQ29kZSBHZW5lcmF0b3IgQ29nbmlDcnlwdCZyc3F1bztzIGNvZGUgZ2VuZXJhdG9yIGNhbiBtb3N0IGVhc2lseSBiZSB0cmlnZ2VyZWQgYnkgY2xpY2tpbmcgdGhlIENvZ25pQ3J5cHQgYnV0dG9uIGluIHRoZSBFY2xpcHNlIHRvb2wgYmFyLiBJbiB0aGlzIGNhc2UsIENvZ25pQ3J5cHQgYXBwbGllcyBhIG51bWJlciBvZiBoZXVyaXN0aWNzIHRvIGRldGVybWluZSB3aGljaCBwcm9qZWN0IHRoZSBjb2RlIHNob3VsZCBiZSBnZW5lcmF0ZWQgaW50by4iPgo8bWV0YSBuYW1lPSJ0d2l0dGVyOmRlc2NyaXB0aW9uIiBjb250ZW50PSJUaGlzIHR1dG9yaWFsIHBhZ2UgZGVzY3JpYmVzIGhvdyBvbmUgd291bGQgdXNlIENvZ25pQ3J5cHQmcnNxdW87cyBjb2RlLWdlbmVyYXRpb24gZmVhdHVyZS4gRm9yIGEgbW9yZSB0ZWNobmljYWwgZGVzY3JpcHRpb24gb2YgaG93IHRoZSBjb2RlIGdlbmVyYXRpb24gd29ya3MgaW4gdGhlIGJhY2tncm91bmQsIHBsZWFzZSByZWZlciB0byBUb29sIOKApiI+CjxtZXRhIG5hbWU9ImF1dGhvciIgY29udGVudD0iRWNsaXBzZSBGb3VuZGF0aW9uIi8+CjxsaW5rIGhyZWY9J2h0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2NvZ25pY3J5cHQvZmF2aWNvbi5pY28nIHJlbD0naWNvbicgdHlwZT0naW1hZ2UveC1pY29uJy8+CjxtZXRhIG5hbWU9InR3aXR0ZXI6Y2FyZCIgY29udGVudD0ic3VtbWFyeSIgLz4KPG1ldGEgcHJvcGVydHk9Im9nOnVybCIgY29udGVudD0iaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvY29nbmljcnlwdC9kb2N1bWVudGF0aW9uL2NvZGUtZ2VuZXJhdGlvbi8iIC8+CjxtZXRhIHByb3BlcnR5PSJvZzp0eXBlIiBjb250ZW50PSJ3ZWJzaXRlIiAvPgo8bWV0YSBwcm9wZXJ0eT0ib2c6c2l0ZV9uYW1lIiBjb250ZW50PSJTZWN1cmVseSB1c2luZyBDcnlwdG9ncmFwaHkgd2l0aCBDb2duaUNyeXB0IiAvPgo8bWV0YSBuYW1lPSJrZXl3b3JkcyIgY29udGVudD0iIj4KCgo8bWV0YSBuYW1lPSJnZW5lcmF0b3IiIGNvbnRlbnQ9Ikh1Z28gMC40Mi4xIiAvPgo8bGluayByZWw9ImNhbm9uaWNhbCIgaHJlZj0iaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvY29nbmljcnlwdC9kb2N1bWVudGF0aW9uL2NvZGUtZ2VuZXJhdGlvbi8iIC8+CjxsaW5rIHJlbD0iYWx0ZXJuYXRlIiBocmVmPSJodHRwczovL3d3dy5lY2xpcHNlLm9yZy9jb2duaWNyeXB0L2luZGV4LnhtbCIgdHlwZT0iYXBwbGljYXRpb24vcnNzK3htbCIgdGl0bGU9IlNlY3VyZWx5IHVzaW5nIENyeXB0b2dyYXBoeSB3aXRoIENvZ25pQ3J5cHQiPgoKPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL3d3dy5lY2xpcHNlLm9yZy9jb2duaWNyeXB0L2Fzc2V0cy9jc3MvYm9vdHN0cmFwLmNzcyI+CgogIAoKPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iNTd4NTciIGhyZWY9Ii9hcHBsZS1pY29uLTU3eDU3LnBuZyI+CjxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjYweDYwIiBocmVmPSIvYXBwbGUtaWNvbi02MHg2MC5wbmciPgo8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSI3Mng3MiIgaHJlZj0iL2FwcGxlLWljb24tNzJ4NzIucG5nIj4KPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iNzZ4NzYiIGhyZWY9Ii9hcHBsZS1pY29uLTc2eDc2LnBuZyI+CjxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjExNHgxMTQiIGhyZWY9Ii9hcHBsZS1pY29uLTExNHgxMTQucG5nIj4KPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iMTIweDEyMCIgaHJlZj0iL2FwcGxlLWljb24tMTIweDEyMC5wbmciPgo8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxNDR4MTQ0IiBocmVmPSIvYXBwbGUtaWNvbi0xNDR4MTQ0LnBuZyI+CjxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjE1MngxNTIiIGhyZWY9Ii9hcHBsZS1pY29uLTE1MngxNTIucG5nIj4KPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iMTgweDE4MCIgaHJlZj0iL2FwcGxlLWljb24tMTgweDE4MC5wbmciPgo8bGluayByZWw9Imljb24iIHR5cGU9ImltYWdlL3BuZyIgc2l6ZXM9IjE5MngxOTIiICBocmVmPSIvYW5kcm9pZC1pY29uLTE5MngxOTIucG5nIj4KPGxpbmsgcmVsPSJpY29uIiB0eXBlPSJpbWFnZS9wbmciIHNpemVzPSIzMngzMiIgaHJlZj0iL2Zhdmljb24tMzJ4MzIucG5nIj4KPGxpbmsgcmVsPSJpY29uIiB0eXBlPSJpbWFnZS9wbmciIHNpemVzPSI5Nng5NiIgaHJlZj0iL2Zhdmljb24tOTZ4OTYucG5nIj4KPGxpbmsgcmVsPSJpY29uIiB0eXBlPSJpbWFnZS9wbmciIHNpemVzPSIxNngxNiIgaHJlZj0iL2Zhdmljb24tMTZ4MTYucG5nIj4KPGxpbmsgcmVsPSJtYW5pZmVzdCIgaHJlZj0iL21hbmlmZXN0Lmpzb24iPgoKPG1ldGEgbmFtZT0ibXNhcHBsaWNhdGlvbi1UaWxlQ29sb3IiIGNvbnRlbnQ9IiNmZmZmZmYiPgo8bWV0YSBuYW1lPSJtc2FwcGxpY2F0aW9uLVRpbGVJbWFnZSIgY29udGVudD0iL21zLWljb24tMTQ0eDE0NC5wbmciPgo8bWV0YSBuYW1lPSJ0aGVtZS1jb2xvciIgY29udGVudD0iI2ZmZmZmZiI+CgoKPGxpbmsgaHJlZj0iLy9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PUxpYnJlK0ZyYW5rbGluOjQwMCw3MDAsMzAwLDYwMCwxMDAiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgogIAo8L2hlYWQ+Cjxib2R5PgogIAo8aGVhZGVyIGNsYXNzPSJob21lcGFnZSI+CiAgCjxuYXYgY2xhc3M9Im5hdmJhciBuYXZiYXItZGVmYXVsdCI+CiAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgIAogICAgPGRpdiBjbGFzcz0ibmF2YmFyLWhlYWRlciI+CiAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ibmF2YmFyLXRvZ2dsZSBjb2xsYXBzZWQiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNicy1leGFtcGxlLW5hdmJhci1jb2xsYXBzZS0xIj4KICAgICAgPHNwYW4gY2xhc3M9InNyLW9ubHkiPlRvZ2dsZSBuYXZpZ2F0aW9uPC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iaWNvbi1iYXIiPjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9Imljb24tYmFyIj48L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWJhciI+PC9zcGFuPgogICAgICA8L2J1dHRvbj4KICAgICAgPGEgY2xhc3M9Im5hdmJhci1icmFuZCIgaHJlZj0iLyI+CiAgICAgIDxpbWcgYWx0PSJFY2xpcHNlIENvZ25pQ3J5cHQiIHNyYz0iYXNzZXRzL2ltYWdlcy9jb2duaWNyeXB0LWxvZ28ucG5nIj4KICAgICAgPC9hPgogICAgPC9kaXY+CiAgICAKICAgIDxkaXYgY2xhc3M9ImNvbGxhcHNlIG5hdmJhci1jb2xsYXBzZSIgaWQ9ImJzLWV4YW1wbGUtbmF2YmFyLWNvbGxhcHNlLTEiPgogICAgICA8dWwgY2xhc3M9Im5hdiBuYXZiYXItbmF2IG5hdmJhci1yaWdodCI+CiAgICAJICAKCgoKPGxpPgogIDxhIGNsYXNzPSIiIGhyZWY9Ii9jb2duaWNyeXB0L2Rvd25sb2Fkcy8iPgogIAogIERvd25sb2FkcwogIDwvYT4KICAKPC9saT4KCgo8bGk+CiAgPGEgY2xhc3M9IiIgaHJlZj0iL2NvZ25pY3J5cHQvZG9jdW1lbnRhdGlvbi8iPgogIAogIERvY3VtZW50YXRpb24KICA8L2E+CiAgCjwvbGk+CgoKPGxpPgogIDxhIGNsYXNzPSIiIGhyZWY9Ii9jb2duaWNyeXB0L2NvbnRyaWJ1dGluZy8iPgogIAogIENvbnRyaWJ1dGluZwogIDwvYT4KICAKPC9saT4KCgo8bGk+CiAgPGEgY2xhc3M9IiIgaHJlZj0iL2NvZ25pY3J5cHQvbmV3cy8iPgogIAogIE5ld3MKICA8L2E+CiAgCjwvbGk+CgoKPGxpIGNsYXNzPSJkcm9wZG93biBlY2xpcHNlLW1vcmUgaGlkZGVuLXhzIj4KICA8YSBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIHJvbGU9ImJ1dHRvbiI+TW9yZTxiIGNsYXNzPSJjYXJldCI+PC9iPjwvYT4KICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPgogICAgPGxpPgogICAgICAKICAgICAgPGRpdiBjbGFzcz0ieWFtbS1jb250ZW50Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgPHVsIGNsYXNzPSJjb2wtc20tOCBsaXN0LXVuc3R5bGVkIj4KICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgIDxwPjxzdHJvbmc+Q29tbXVuaXR5PC9zdHJvbmc+PC9wPgogICAgICAgICAgICA8L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cDovL21hcmtldHBsYWNlLmVjbGlwc2Uub3JnIj5NYXJrZXRwbGFjZTwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cDovL2V2ZW50cy5lY2xpcHNlLm9yZyI+RXZlbnRzPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwOi8vd3d3LnBsYW5ldGVjbGlwc2Uub3JnLyI+UGxhbmV0IEVjbGlwc2U8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2NvbW11bml0eS9lY2xpcHNlX25ld3NsZXR0ZXIvIj5OZXdzbGV0dGVyPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS91c2VyL0VjbGlwc2VGZG4iPlZpZGVvczwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9ibG9ncy5lY2xpcHNlLm9yZyI+QmxvZ3M8L2E+PC9saT4KICAgICAgICAgIDwvdWw+CiAgICAgICAgICA8dWwgY2xhc3M9ImNvbC1zbS04IGxpc3QtdW5zdHlsZWQiPgogICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgPHA+PHN0cm9uZz5QYXJ0aWNpcGF0ZTwvc3Ryb25nPjwvcD4KICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vYnVncy5lY2xpcHNlLm9yZy9idWdzLyI+UmVwb3J0IGEgQnVnPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5lY2xpcHNlLm9yZy9mb3J1bXMvIj5Gb3J1bXM8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL21haWwvIj5NYWlsaW5nIExpc3RzPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3dpa2kuZWNsaXBzZS5vcmcvIj5XaWtpPC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3dpa2kuZWNsaXBzZS5vcmcvSVJDIj5JUkM8L2E+PC9saT4KICAgICAgICAgIDwvdWw+CiAgICAgICAgICA8dWwgY2xhc3M9ImNvbC1zbS04IGxpc3QtdW5zdHlsZWQiPgogICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgPHA+PHN0cm9uZz5FY2xpcHNlIElERTwvc3Ryb25nPjwvcD4KICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2Rvd25sb2FkcyI+RG93bmxvYWQ8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vaGVscC5lY2xpcHNlLm9yZyI+RG9jdW1lbnRhdGlvbjwvYT48L2xpPgogICAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvZ2V0dGluZ19zdGFydGVkIj5HZXR0aW5nIFN0YXJ0ZWQgLyBTdXBwb3J0PC9hPjwvbGk+CiAgICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5lY2xpcHNlLm9yZy9jb250cmlidXRlLyI+SG93IHRvIENvbnRyaWJ1dGU8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2lkZS8iPklERSBhbmQgVG9vbHM8L2E+PC9saT4KICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2ZvcnVtcy9pbmRleC5waHAvZi84OS8iPk5ld2NvbWVyIEZvcnVtPC9hPjwvbGk+CiAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvbGk+CiAgPC91bD4KPC9saT4KCgoKICAgICAgICA8bGkgc3R5bGU9Im1pbi13aWR0aDogMTAwcHg7IHBhZGRpbmctdG9wOiAxMnB4OyBwYWRkaW5nLWxlZnQ6IDUwcHg7IG1hcmdpbi1sZWZ0Oi0zNXB4Ij4KICAgICAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly90d2l0dGVyLmNvbS9jb2duaWNyeXB0P3JlZl9zcmM9dHdzcmMlNUV0ZnciIGNsYXNzPSJ0d2l0dGVyLWZvbGxvdy1idXR0b24iIGRhdGEtc2hvdy1jb3VudD0iZmFsc2UiIGRhdGEtc2hvdy1zY3JlZW4tbmFtZT0iZmFsc2UiPjwvYT48c2NyaXB0IGFzeW5jIHNyYz0iaHR0cHM6Ly9wbGF0Zm9ybS50d2l0dGVyLmNvbS93aWRnZXRzLmpzIiBjaGFyc2V0PSJ1dGYtOCI+PC9zY3JpcHQ+CiAgICAgICAgPC9saT4KICAgICAgPC91bD4KICAgIDwvZGl2PgogICAgCiAgPC9kaXY+CiAgCjwvbmF2PgogIDxzZWN0aW9uIGNsYXNzPSJjb250YWluZXIiPgogICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTggY29sLXNtLTEyIj4KICAgICAgICA8aDE+PHNwYW4gY2xhc3M9ImdyZWVuIj5FY2xpcHNlPC9zcGFuPiA8c3BhbiBjbGFzcz0iZ3JlZW4iPkNvZ25pQ3J5cHQ8L3NwYW4+PC9oMT4KICAgICAgICA8cD5FY2xpcHNlIENvZ25pQ3J5cHQgaXMgYW4gaW50ZWxsaWdlbnQgb3Blbi1zb3VyY2UgcGxhdGZvcm0gZW5zdXJpbmcgdGhlIHNlY3VyZSB1c2FnZSBvZiBjcnlwdG8gY29tcG9uZW50cy48L3A+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgPC9zZWN0aW9uPgogICAgCjwvaGVhZGVyPgoKICAKICAKPG1haW4+CiAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgIAogICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTE4IHBhZGRpbmctYm90dG9tLTMwIj4KICAgICAgICAKICAgICAgICAKICAgICAgICA8aDE+Q29nbmlDcnlwdCBDb2RlIEdlbmVyYXRpb248L2gxPgogICAgICAgIAogICAgICAgIAoKPHA+VGhpcyB0dXRvcmlhbCBwYWdlIGRlc2NyaWJlcyBob3cgb25lIHdvdWxkIHVzZSBDb2duaUNyeXB0JnJzcXVvO3MgY29kZS1nZW5lcmF0aW9uIGZlYXR1cmUuIEZvciBhIG1vcmUgdGVjaG5pY2FsIGRlc2NyaXB0aW9uIG9mIGhvdyB0aGUgY29kZSBnZW5lcmF0aW9uIHdvcmtzIGluIHRoZSBiYWNrZ3JvdW5kLCBwbGVhc2UgcmVmZXIgdG8gPGEgaHJlZj0iaHR0cDovL2JvZGRlbi5kZS9wdWJzL2tucisxN2NvZ25pY3J5cHQucGRmIj5Ub29sIFBhcGVyIG9uIENvZ25pQ3J5cHQ8L2E+IHB1Ymxpc2hlZCBhdCBBU0UgMjAxNy48L3A+Cgo8aDEgaWQ9ImxhdW5jaGluZy10aGUtY29kZS1nZW5lcmF0b3IiPkxhdW5jaGluZyB0aGUgQ29kZSBHZW5lcmF0b3I8L2gxPgoKPHA+Q29nbmlDcnlwdCZyc3F1bztzIGNvZGUgZ2VuZXJhdG9yIGNhbiBtb3N0IGVhc2lseSBiZSB0cmlnZ2VyZWQgYnkgY2xpY2tpbmcgdGhlIENvZ25pQ3J5cHQgYnV0dG9uIGluIHRoZSBFY2xpcHNlIHRvb2wgYmFyLiBJbiB0aGlzIGNhc2UsIENvZ25pQ3J5cHQgYXBwbGllcyBhIG51bWJlciBvZiBoZXVyaXN0aWNzIHRvIGRldGVybWluZSB3aGljaCBwcm9qZWN0IHRoZSBjb2RlIHNob3VsZCBiZSBnZW5lcmF0ZWQgaW50by4gRmlyc3QgYW5kIGZvcmVtb3N0LCBpZiBhIEphdmEgZmlsZSBpcyBvcGVuZWQgaW4gdGhlIGVkaXRvciB3aGVuIHRoZSBidXR0b24gaXMgYmVpbmcgY2xpY2tlZCwgQ29nbmlDcnlwdCBzZWxlY3RzIGl0cyBwcm9qZWN0IGZvciBjb2RlIGdlbmVyYXRpb24uIEFub3RoZXIgd2F5IG9mIHRyaWdnZXJpbmcgdGhlIGNvZGUgZ2VuZXJhdG9yIGlzIHRocm91Z2ggb3BlbmluZyB0aGUgY29udGV4dCBtZW51IG9uIHRoZSByZXNwZWN0aXZlIHByb2plY3QgYW5kIHNlbGVjdCB0aGUgZW50cnkgJmxkcXVvO0xhdW5jaCBDb2duaUNyeXB0JnJkcXVvOyBhcyBkaXNwbGF5ZWQgaW4gdGhlIHNjcmVlbnNob3QgYmVsb3cuCjxpbWcgc3JjPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vQ1JPU1NJTkdUVUQvQ29nbmlDcnlwdC9tYXN0ZXIvZG9jdW1lbnRhdGlvbi9JbWFnZXMlMjBmb3IlMjBUdXRvcmlhbC8wMkNvbnRleHQucG5nIiBhbHQ9IkNvZ25pQ3J5cHQgQ29udGV4dCBNZW51IiAvPjwvcD4KCjxoMSBpZD0ic2VsZWN0aW5nLWEtdGFzayI+U2VsZWN0aW5nIGEgVGFzazwvaDE+Cgo8cD5XaGVuIENvZ25pQ3J5cHQgbGF1bmNoZXMsIHRoZSBmb2xsb3dpbmcgd2luZG93IHBvcHMgdXA6PC9wPgoKPHA+PGltZyBzcmM9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9DUk9TU0lOR1RVRC9Db2duaUNyeXB0L21hc3Rlci9kb2N1bWVudGF0aW9uL0ltYWdlcyUyMGZvciUyMFR1dG9yaWFsLzAzTWFpbk1lbnUucG5nIiBhbHQ9IkNvZ25pQ3J5cHQgTWFpbiBNZW51IiAvPjwvcD4KCjxwPkhlcmUsIHRoZSB1c2VyIGZpcnN0IGhhcyB0byBzZWxlY3QgaW4gdGhlIHVwcGVyIGRyb3Bkb3duIG1lbnUgd2hpY2ggcHJvamVjdCBpdCB3YW50cyBDb2duaUNyeXB0IHRvIGdlbmVyYXRlIHRoZSBjb2RlIGludG8uIFRoZSBkcm9wZG93biBtZW51IGlzIHBvcHVsYXRlZCB3aXRoIGFsbCBKYXZhIHByb2plY3RzIGluIHRoZSB3b3Jrc3BhY2UuIElmIENvZ25pQ3J5cHQgd2FzIGxhdW5jaGVkIGJ5IG1lYW5zIG9mIHRoZSBjb250ZXh0IG1lbnUsIGl0IGF1dG8tc2VsZWN0cyB0aGUgcmVzcGVjdGl2ZSBwcm9qZWN0LiBPdGhlcndpc2UsIENvZ25pQ3J5cHQgcnVucyB0aGUgaGV1cmlzdGljcyBza2V0Y2hlZCBhYm92ZS4gVGhlIHNlY29uZCBkcm9wZG93biBtZW51IGFsbG93cyB0aGUgdXNlciB0byBzZWxlY3QgYSBjcnlwdG9ncmFwaGljIHByb2dyYW1taW5nIHRhc2suIEN1cnJlbnRseSwgc2V2ZW4gdGFza3MgYXJlIHN1cHBvcnRlZC4gVGhlIHRleHQgYm94LCBiZWxvdyB0aGUgc2Vjb25kIGRyb3Bkb3duLCBzaG93cyBhIGJyaWVmIGRlc2NyaXB0aW9uIG9mIHRoZSB0YXNrIHRoYXQgaXMgc2VsZWN0ZWQgZnJvbSB0aGUgZHJvcGRvd24uIE9uY2UgdGhlIHVzZXIgaGFzIHNlbGVjdGVkIGJvdGggYSBwcm9qZWN0IGFuZCBhIHRhc2sgdGhleSBjYW4gY29udGludWUuPC9wPgoKPGgxIGlkPSJjb25maWd1cmluZy1hLXNvbHV0aW9uIj5Db25maWd1cmluZyBhIFNvbHV0aW9uPC9oMT4KCjxwPkZvciBlYWNoIHRhc2ssIENvZ25pQ3J5cHQgYXNrcyB0aGUgdXNlciBhIG51bWJlciBvZiBxdWVzdGlvbnMuIFRoZXNlIHF1ZXN0aW9ucyBoZWxwIENvZ25pQ3J5cHQgY29uZmlndXJlIHRoZSBzb2x1dGlvbiBpdCBwcm92aWRlcyB0aGUgdXNlciB3aXRoIGluIHRoZSBlbmQuIEZvciB0aGUgdGFzayAmbGRxdW87RW5jcnlwdCBEYXRhIFVzaW5nIGEgU2VjcmV0IEtleSZyZHF1bzsoaGVyZWFmdGVyIHJlZmVycmVkIHRvIGFzIEVuY3J5cHRpb24gVGFzayksIENvZ25pQ3J5cHQgbmVlZHMgdGhlIHVzZXIgdG8gYW5zd2VyIHRoZSBxdWVzdGlvbnMgc2hvd24gaW4gdGhlIGZvbGxvd2luZyBzY3JlZW5zaG90czo8L3A+Cgo8cD48aW1nIHNyYz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL0NST1NTSU5HVFVEL0NvZ25pQ3J5cHQvbWFzdGVyL2RvY3VtZW50YXRpb24vSW1hZ2VzJTIwZm9yJTIwVHV0b3JpYWwvMDRRdWVzdGlvbnMucG5nIiBhbHQ9IlF1ZXN0aW9ucyBmb3IgRW5jcnlwdGlvbiBUYXNrIiAvPjwvcD4KCjxwPjxpbWcgc3JjPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vQ1JPU1NJTkdUVUQvQ29nbmlDcnlwdC9tYXN0ZXIvZG9jdW1lbnRhdGlvbi9JbWFnZXMlMjBmb3IlMjBUdXRvcmlhbC8wNFF1ZXN0aW9uczEucG5nIiBhbHQ9IlF1ZXN0aW9ucyBmb3IgRW5jcnlwdGlvbiBUYXNrIiAvPjwvcD4KCjxwPlRoZSBmaXJzdCBxdWVzdGlvbiByZWxhdGVzIHRvIHRoZSByZXF1aXJlZCBzZWN1cml0eSBsZXZlbCBhcyBzdHJvbmdlciBzZWN1cml0eSBvZnRlbiBpbXBlZGVzIHRoZSBwZXJmb3JtYW5jZSBvZiBhIGdpdmVuIHNvbHV0aW9uLiBRdWVzdGlvbiAyIGFsbG93cyBmb3IgYW4gZWFzaWVyIGtleSBnZW5lcmF0aW9uIGJ5IGdpdmluZyB0aGUgdXNlciBvZiB0aGUgZ2VuZXJhdGVkIHNvbHV0aW9uIHRoZSBvcHBvcnR1bml0eSB0byBwcm92aWRlIGEgcGFzc3dvcmQgZnJvbSB3aGljaCB0aGUga2V5IGlzIGRlcml2ZWQuIElmICZsc3F1bztubyZyc3F1bzsgaXMgc2VsZWN0ZWQsIENvZ25pQ3J5cHQgZ2VuZXJhdGVzIGNvZGUgdGhhdCBlbXBsb3lzIHRoZSByZWd1bGFyIGtleSBnZW5lcmF0aW9uIG1lY2hhbmlzbSBvZiB0aGUgSkNBLiBJZiAmbHNxdW87eWVzJnJzcXVvOyBpcyBzZWxlY3RlZCwgdGhlbiBoYW5kbGluZyB0aGUga2V5IHNob3VsZCBiZSB0YWtlbiBjYXJlIG9mIGJ5IHRoZSB1c2VyIGhpbXNlbGYuIFRoZSBjb25zZXF1ZW5jZSBvZiBzZWxlY3RpbmcgYW4gYW5zd2VyIGlzIHNwZWNpZmllZCBpbiB0aGUgZm9ybSBvZiAmbGRxdW87Tm90ZSZyZHF1bzssIGJlbG93IHRoZSBxdWVzdGlvbi4gVGhlIHRoaXJkIHF1ZXN0aW9uLCB3aGljaCBhcHBlYXJzIGluIHRoZSBuZXh0IHBhZ2UsIGFza3MgaWYgdGhlIHVzZXIgaGFzIHRvIGVuY3J5cHQgbGFyZ2UgZGF0YSByZWd1bGFybHkuIFRoZSBmaW5hbCBxdWVzdGlvbiBhbGxvd3MgQ29nbmlDcnlwdCZyc3F1bztzIHVzZXIgdG8gc3BlY2lmeSBhbiBpbnB1dCB0eXBlIGZvciB0aGUgZW5jcnlwdGlvbi4gVGhlIGRlZmF1bHQgZGF0YSB0eXBlIGFyZSBieXRlIGFycmF5cy4gU2hvdWxkIHRoZSB1c2VyIHBpY2sgYW55IG90aGVyIHR5cGUsIHRoZSBnZW5lcmF0ZWQgY29kZSB0YWtlcyBjYXJlIG9mIHRoZSB0eXBlIGNvbnZlcnNpb24gZm9yIHRoZSB1c2VyLjwvcD4KCjxoMSBpZD0ic2VsZWN0aW5nLWEtc29sdXRpb24iPlNlbGVjdGluZyBhIFNvbHV0aW9uPC9oMT4KCjxwPldoZW4gdGhlIHVzZXIgaGFzIGFuc3dlcmVkIGFsbCBxdWVzdGlvbnMsIENvZ25pQ3J5cHQgY29uZmlndXJlcyBhIG51bWJlciBvZiBzb2x1dGlvbnMgZm9yIHRoZW0uIEJ1dCwgdGhlIG1vc3Qgc2VjdXJlIHNvbHV0aW9uIGlzIHByb3ZpZGVkIHRvIHRoZSB1c2VyIGFzIGEgZGVmYXVsdCBzb2x1dGlvbiwgYXMgc2hvd24gaW4gdGhlIHNjcmVlbnNob3QgYmVsb3cuIFRoZSBwcmV2aWV3IG9mIHRoZSBjb2RlIHRoYXQgd2lsbCBiZSBuZXdseSBnZW5lcmF0ZWQgaXMgYWxzbyBzaG93biBpbiB0aGUgc2FtZSBwYWdlLiBJZiB0aGUgdXNlciBoYXMgYSBKYXZhIGZpbGUgb3BlbiwgdGhlbiB0aGUgY29kZSBnZXRzIGdlbmVyYXRlZCBpbnRvIHRoZSBzYW1lIGZpbGUuIFNvLCB0aGUgcHJldmlldyBhbHNvIHNob3dzIHRoZSBuZXdseSBnZW5lcmF0ZWQgbWV0aG9kIGluc2lkZSB0aGUgdXNlciZyc3F1bztzIEphdmEgZmlsZS4gSWYgYSBmaWxlIGlzIG5vdCBvcGVuIHRoZW4gdGhlIHByZXZpZXcgb2YgdGhlIG5ldyBjbGFzcywgdGhhdCBnZXRzIGNyZWF0ZWQsIGlzIHNob3duIGluIHRoZSBwcmV2aWV3LiBJZiB0aGUgdXNlciB3YW50cyB0byB2aWV3IG1vcmUgYWxnb3JpdGhtIGNvbWJpbmF0aW9ucyBtYXRjaGluZyBoaXMgcmVxdWlyZW1lbnRzLCB0aGVuIHRoZSBjaGVjayBib3ggYmVsb3cgdGhlIGNvZGUgcHJldmlldyBzaG91bGQgYmUgY2hlY2tlZCBhbmQgdGhlIHVzZXIgY2FuIGNsaWNrICZsZHF1bztOZXh0JnJkcXVvOy4gSWYgbm90LCB0aGUgdXNlciBjYW4gY2xpY2sgJmxkcXVvO0ZpbmlzaCZyZHF1bzsgdG8gZ2VuZXJhdGUgdGhlIGNvZGUgaW4gaGlzIEphdmEgcHJvamVjdC48L3A+Cgo8cD48aW1nIHNyYz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL0NST1NTSU5HVFVEL0NvZ25pQ3J5cHQvbWFzdGVyL2RvY3VtZW50YXRpb24vSW1hZ2VzJTIwZm9yJTIwVHV0b3JpYWwvMDVDb25maWd1cmF0aW9uU2VsZWN0aW9uLnBuZyIgYWx0PSJGaW5hbCBTY3JlZW4gZm9yIFNvbHV0aW9uIFNlbGVjdGlvbiIgLz48L3A+Cgo8cD5JZiB0aGUgdXNlciBjaG9vc2VzIHRvIHZpZXcgb3RoZXIgc29sdXRpb25zLCB0aGVuIGEgcGFnZSwgYXMgc2hvd24gaW4gdGhlIHNjcmVlbnNob3QgYmVsb3csIGFwcGVhcnMgb24gY2xpY2tpbmcgJmxkcXVvO05leHQmcmRxdW87LiBUaGVzZSBhbGdvcml0aG0gY29tYmluYXRpb25zIGFuZCB0aGVpciB2YXJpYXRpb25zIGFyZSBvcmRlcmVkIGJ5IHNlY3VyaXR5IGluIGRlc2NlbmRpbmcgb3JkZXIsIGJ1dCB0aGV5IGFyZSBhbGwgc2VjdXJlIGFuZCBhbHNvIGZ1bGZpbGwgdGhlIGNvbnN0cmFpbnRzIHRoZSB1c2VyIGhhcyBzcGVjaWZpZWQgdGhyb3VnaCB0aGVpciBhbnN3ZXJzIG9uIHRoZSBwcmV2aW91cyBwYWdlKHMpLiBUaHVzLCB0aGUgdXNlciBtYXkgcGljayBhbnkgb2YgdGhlIHByb3Bvc2VkIHNvbHV0aW9ucyBieSBzZWxlY3RpbmcgaXQgaW4gdGhlIGRyb3Bkb3duIG1lbnUuIENvZ25pQ3J5cHQgYXV0by1zZWxlY3RzIHRoZSBtb3N0IHNlY3VyZSBzb2x1dGlvbiAodGhlIG9uZSB3aGljaCBpcyBzaG93biBpbiB0aGUgcHJldmlvdXMgcGFnZSkgYnkgZGVmYXVsdC4gV2hlbiB0aGUgdXNlciBoYXMgY2hvc2VuIGFuIGFsZ29yaXRobSBjb21iaW5hdGlvbiBmcm9tIHRoZSBkcm9wZG93biwgaGUgY2FuIHZpZXcgaXRzIHZhcmlhdGlvbnMoaWYgYW55KSB3aXRoIHRoZSBoZWxwIG9mICZsZHF1bzsmbHQ7JnJkcXVvOyBhbmQgJmxkcXVvOyZndDsmcmRxdW87IGJ1dHRvbnMuIFRoZSBwcm9wZXJ0aWVzIG9mIHRoZSBjaG9zZW4gdmFyaWF0aW9uIGlzIHNob3duIGluIHRoZSAmbGRxdW87SW5zdGFuY2UgRGV0YWlscyZyZHF1bzsgcGFuZWwuIFRoZXkgY2FuIHNlbGVjdCBhIHZhcmlhdGlvbiBvZiB0aGUgYWxnb3JpdGhtIGNvbWJpbmF0aW9uIGFuZCBoaXQgJmxkcXVvO0ZpbmlzaCZyZHF1bzssIHdoaWNoIHByb21wdHMgQ29nbmlDcnlwdCB0byBnZW5lcmF0ZSB0aGUgc29sdXRpb24gdW5kZXIgdGhlIGNob3NlbiBjb25maWd1cmF0aW9uIGludG8gdGhlIHVzZXImcnNxdW87cyBwcm9qZWN0LjwvcD4KCjxwPjxpbWcgc3JjPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vQ1JPU1NJTkdUVUQvQ29nbmlDcnlwdC9tYXN0ZXIvZG9jdW1lbnRhdGlvbi9JbWFnZXMlMjBmb3IlMjBUdXRvcmlhbC8wNUNvbmZpZ3VyYXRpb25TZWxlY3Rpb24tQWx0ZXJuYXRpdmVzLnBuZyIgYWx0PSJGaW5hbCBTY3JlZW4gZm9yIFNvbHV0aW9uIFNlbGVjdGlvbiIgLz48L3A+Cgo8cD5BZGRpdGlvbmFsbHksIHRoZSB1c2VyIGNhbiBhbHNvIHZpZXcgdGhlIHByZXZpZXcgb2YgdGhlIGNvZGUgZm9yIHRoZSBzZWxlY3RlZCBzb2x1dGlvbiwgYnkgY2xpY2tpbmcgdGhlIGJ1dHRvbiBpbiB0aGUgc2FtZSBwYWdlLiBUaGlzIG9wZW5zIGEgbmV3IGRpYWxvZyxhcyBpbiBiZWxvdyBzY3JlZW5zaG90LCB3aGljaCBwcmVzZW50cyBhIGNvbXBhcmlzb24gYmV0d2VlbiB0aGUgdXNlciZyc3F1bztzIGZpbGUsIGJlZm9yZSBhbmQgYWZ0ZXIgdGhlIGNvZGUgZ2VuZXJhdGlvbi4gSWYgbm8gZmlsZSBpcyBvcGVuIGluIHRoZSB1c2VyknMgZW5kLCB0aGVuIGEgY29tcGFyaXNvbiBiZXR3ZWVuIGFuIGVtcHR5IGZpbGUgYW5kIHRoZSBuZXdseSBjcmVhdGVkIGNsYXNzIGZpbGUgaXMgc2hvd24uIFRoZSBkaWFsb2cgc2hvd3MgdGhlIGNvZGUgY29tcGFyaXNvbiBpbiB0aGUgc2FtZSB3YXkgYXMgdGhhdCBvZiB0aGUgJmxkcXVvO0NvbXBhcmUgRWRpdG9yJnJkcXVvOwpvZiBlY2xpcHNlLjwvcD4KCjxwPjxpbWcgc3JjPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vQ1JPU1NJTkdUVUQvQ29nbmlDcnlwdC9tYXN0ZXIvZG9jdW1lbnRhdGlvbi9JbWFnZXMlMjBmb3IlMjBUdXRvcmlhbC8wNUNvbmZpZ3VyYXRpb25TZWxlY3Rpb24tQ29kZUNvbXBhcmlzb24ucG5nIiBhbHQ9IkZpbmFsIFNjcmVlbiBmb3IgU29sdXRpb24gU2VsZWN0aW9uIiAvPjwvcD4KCjxwPkZ1cnRoZXIsIHRoZXJlIGlzIGFsc28gYSBuZXcgd2l6YXJkIHRoYXQgb3BlbnMgb24gY2xpY2tpbmcgJmxkcXVvO0NvbXBhcmUgQWxnb3JpdGhtcyZyZHF1bzsgYnV0dG9uLiBUaGlzIGFsbG93cyB0aGUgdXNlciB0byBjb21wYXJlIHR3byBhbGdvcml0aG1zIG9mIGhpcyBjaG9pY2UuIFRoaXMgd2l6YXJkIGhhcyB0d28gY29tYm8gYm94ZXMgYW5kIHR3byBjb3JyZXNwb25kaW5nIHBhbmVscyB0byBkaXNwbGF5IHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSBjaG9zZW4gYWxnb3JpdGhtcy4gSW5pdGlhbGx5LCBib3RoIHRoZSBjb21ibyBib3hlcyBoYXZlIHRoZSBmaXJzdCBlbGVtZW50IHNlbGVjdGVkIGJ5IGRlZmF1bHQuIFNpbmNlIHRoZSBlbGVtZW50cyBpbiB0aGUgY29tYm8gYm94ZXMgYXJlIHNhbWUsIHRoZWlyIHByb3BlcnRpZXMgd2lsbCBhbHNvIGJlIGlkZW50aWNhbC4gSWYgdHdvIGRpZmZlcmVudCBhbGdvcml0aG0gY29tYmluYXRpb25zIGFyZSBzZWxlY3RlZCBmb3IgY29tcGFyaXNvbiwgdGhlbiB0aGUgcHJvcGVydGllcyB0aGF0IGRpZmZlciBpbiB0aGVpciB2YWx1ZXMgd2lsbCBiZSBoaWdobGlnaHRlZC48L3A+Cgo8cD48aW1nIHNyYz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL0NST1NTSU5HVFVEL0NvZ25pQ3J5cHQvbWFzdGVyL2RvY3VtZW50YXRpb24vSW1hZ2VzJTIwZm9yJTIwVHV0b3JpYWwvMDVDb25maWd1cmF0aW9uU2VsZWN0aW9uLUFsZ29yaXRobUNvbXBhcmlzb24ucG5nIiBhbHQ9IkZpbmFsIFNjcmVlbiBmb3IgU29sdXRpb24gU2VsZWN0aW9uIiAvPjwvcD4KCjxoMSBpZD0iaW50ZWdyYXRpbmctdGhlLXNvbHV0aW9uLWludG8tdGhlLWFwcGxpY2F0aW9uIj5JbnRlZ3JhdGluZyB0aGUgU29sdXRpb24gaW50byB0aGUgQXBwbGljYXRpb248L2gxPgoKPHA+Rm9yIHRoZSBlYWNoIHRhc2ssIENvZ25pQ3J5cHQgZ2VuZXJhdGVzIHR3byBjb2RlIGFydGVmYWN0cy4gRmlyc3QsIHRoZXJlIGlzIHRoZSBhY3R1YWwgaW1wbGVtZW50YXRpb24uIEl0IGlzIGFsd2F5cyBnZW5lcmF0ZWQgaW50byBhIHBhY2thZ2UgY2FsbGVkICZsZHF1bztDcnlwdG8mcmRxdW87LiBUaGUgZW5jcnlwdGlvbiB0YXNrIGlzIHJhdGhlciBzaW1wbGUgYW5kIG1lcmVseSBjb21wcmlzZXMgb2Ygb25lIGNsYXNzIGFzIHNob3duIGJlbG93LiBPdGhlciB0YXNrcyBtaWdodCBiZSBtb3JlIGNvbXBsZXkgYW5kIHJlcXVpcmUgbW9yZSBjb2RlLCB0aG91Z2guCjxpbWcgc3JjPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vQ1JPU1NJTkdUVUQvQ29nbmlDcnlwdC9tYXN0ZXIvZG9jdW1lbnRhdGlvbi9JbWFnZXMlMjBmb3IlMjBUdXRvcmlhbC8wN0VuY3J5cHRpb24ucG5nIiBhbHQ9IkFjdHVhbCBJbXBsZW1lbnRhdGlvbiBvZiBFbmNyeXB0aW9uIFRhc2siIC8+PC9wPgoKPHA+VGhlIHNlY29uZCBhcnRlZmFjdCBpcyBhIGdsdWUtY29kZSBtZXRob2QgY2FsbGVkICZsZHF1bzt0ZW1wbGF0ZVVzYWdlJnJkcXVvOyBzaG93Y2FzaW5nIHRvIHRoZSBkZXZlbG9wZXIgaG93IHRvIHByb3Blcmx5IHVzZSB0aGUgaW1wbGVtZW50YXRpb24gaW4gdGhlaXIgYXBwbGljYXRpb24uIElmLCBhdCB0aGUgdGltZSBvZiBsYXVuY2hpbmcgQ29nbmlDcnlwdCwgdGhlcmUgaXMgYSBKYXZhIGZpbGUgb3BlbiBpbiB0aGUgRWNsaXBzZSBFZGl0b3IgdGhhdCBhbHNvIGJlbG9uZ3MgdG8gdGhlIHByb2plY3QgdGhlIHVzZXIgc2VsZWN0cyBvbiBDb2duaUNyeXB0JnJzcXVvO3MgZmlyc3Qgc2NyZWVuLCBDb2duaUNyeXB0IGdlbmVyYXRlcyB0aGUgbWV0aG9kIGludG8gIHRoaXMgY2xhc3MgYXNzdW1pbmcgdGhhdCBpdCBpcyB0aGUgcmlnaHQgY29udGV4dCBmb3IgaXQuIElzIGVpdGhlciBvZiB0aG9zZSB0d28gY29uZGl0aW9ucyBub3QgbWV0LCBpLmUuLCBlaXRoZXIgbm8gSmF2YSBpcyBvcGVuZWQgb3IgdGhlIGZpbGUmcnNxdW87cyBwcm9qZWN0IGRvZXMgbm90IG1hdGNoIHRoZSBzZWxlY3RlZCBwcm9qZWN0LCBDb2duaUNyeXB0IGdlbmVyYXRlcyB0aGUgbWV0aG9kIGludG8gYSBjbGFzcyBPdXRwdXQsIGFsc28gdW5kZXIgdGhlICZsZHF1bztDcnlwdG8mcmRxdW87IHBhY2thZ2UuCjxpbWcgc3JjPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vQ1JPU1NJTkdUVUQvQ29nbmlDcnlwdC9tYXN0ZXIvZG9jdW1lbnRhdGlvbi9JbWFnZXMlMjBmb3IlMjBUdXRvcmlhbC8wNlRlbXBsYXRlVXNhZ2UucG5nIiBhbHQ9IlNhbXBsZSBNZXRob2Qgc2hvd2Nhc2luZyB1c2FnZSBvZiBXcmFwcGVyIENvZGUiIC8+PC9wPgoKPHA+RmluYWxseSwgdG8gaW50ZWdyYXRlIHRoZSBnZW5lcmF0ZWQgY29kZSBpbnRvIHRoZWlyIGFwcGxpY2F0aW9uLCB0aGUgdXNlciBtYXkgY2hvb3NlIHRvIHNpbXBseSBjYWxsIHRoZSAmbGRxdW87dGVtcGxhdGVVc2FnZSZyZHF1bzsgbWV0aG9kIG9yIGNvcHktcGFzdGUgdGhlIHN0YXRlbWVudHMgZnJvbSB0aGUgbWV0aG9kIHRoZXkgbmVlZCBpbiB0aGVpciBjb2RlIHRvIHRoZSByaWdodCBwbGFjZS4gQnkgbWVhbnMgb2YgaXRzIDxhIGhyZWY9Ii4uL2NvZGUtYW5hbHlzaXMiPkNvZGUgYW5hbHlzaXM8L2E+LCBDb2duaUNyeXB0IHdpbGwgZW5zdXJlIGl0cyB1c2VyIGRvZXMgbm90IGJyZWFrIHRoZSBzZWN1cml0eSBkdXJpbmcgaW50ZWdyYXRpb24uPC9wPgogIAogICAgICAgIAogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTYgIHBhZGRpbmctYm90dG9tLTMwIj4KICAgICAgICAKCiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgICAKICA8L2Rpdj4KPC9tYWluPgoKICAKICAKPGZvb3RlciBpZD0ic29sc3RpY2UtZm9vdGVyIj4KICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgPHNlY3Rpb24gY2xhc3M9ImNvbC1zbS0zIGhpZGRlbi1wcmludCIgaWQ9ImZvb3Rlci1lY2xpcHNlLWZvdW5kYXRpb24iPgogICAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbi10aXRsZSIgc3R5bGU9ImNvbG9yOiNmZmY7Ij5FY2xpcHNlIEZvdW5kYXRpb248L2gyPgogICAgICAgIDx1bCBjbGFzcz0ibmF2Ij4KICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5lY2xpcHNlLm9yZy9vcmcvIj5BYm91dCBVczwvYT48L2xpPgogICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL29yZy9mb3VuZGF0aW9uL2NvbnRhY3QucGhwIj5Db250YWN0CiAgICAgICAgICAgICAgVXM8L2E+PC9saT4KICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5lY2xpcHNlLm9yZy9kb25hdGUiPkRvbmF0ZTwvYT48L2xpPgogICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL29yZy9kb2N1bWVudHMvIj5Hb3Zlcm5hbmNlPC9hPjwvbGk+CiAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvYXJ0d29yay8iPkxvZ28gYW5kCiAgICAgICAgICAgICAgQXJ0d29yazwvYT48L2xpPgogICAgICAgICAgPGxpPjxhCiAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL29yZy9mb3VuZGF0aW9uL2RpcmVjdG9ycy5waHAiCiAgICAgICAgICA+Qm9hcmQgb2YgRGlyZWN0b3JzPC9hPjwvbGk+CiAgICAgICAgPC91bD4KICAgICAgPC9zZWN0aW9uPgogICAgICA8c2VjdGlvbiBjbGFzcz0iY29sLXNtLTMgaGlkZGVuLXByaW50IiBpZD0iZm9vdGVyLWxlZ2FsIj4KICAgICAgICA8aDIgY2xhc3M9InNlY3Rpb24tdGl0bGUiIHN0eWxlPSJjb2xvcjojZmZmOyI+TGVnYWw8L2gyPgogICAgICAgIDx1bCBjbGFzcz0ibmF2Ij4KICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9wcml2YWN5LnBocCI+UHJpdmFjeQogICAgICAgICAgICAgIFBvbGljeTwvYT48L2xpPgogICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL3Rlcm1zb2Z1c2UucGhwIj5UZXJtcwogICAgICAgICAgICAgIG9mIFVzZTwvYT48L2xpPgogICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2NvcHlyaWdodC5waHAiPkNvcHlyaWdodAogICAgICAgICAgICAgIEFnZW50PC9hPjwvbGk+CiAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLTIuMC8iPkVjbGlwc2UKICAgICAgICAgICAgICBQdWJsaWMgTGljZW5zZTwvYT48L2xpPgogICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsLyI+TGVnYWwgUmVzb3VyY2VzCiAgICAgICAgICA8L2E+PC9saT4KICAgICAgICA8L3VsPgogICAgICA8L3NlY3Rpb24+CiAgICAgIDxzZWN0aW9uIGNsYXNzPSJjb2wtc20tMyBoaWRkZW4tcHJpbnQiIGlkPSJmb290ZXItdXNlZnVsLWxpbmtzIj4KICAgICAgICA8aDIgY2xhc3M9InNlY3Rpb24tdGl0bGUiIHN0eWxlPSJjb2xvcjojZmZmOyI+VXNlZnVsIExpbmtzPC9oMj4KICAgICAgICA8dWwgY2xhc3M9Im5hdiI+CiAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly9idWdzLmVjbGlwc2Uub3JnL2J1Z3MvIj5SZXBvcnQgYSBCdWc8L2E+PC9saT4KICAgICAgICAgIDxsaT48YSBocmVmPSIvL2hlbHAuZWNsaXBzZS5vcmcvIj5Eb2N1bWVudGF0aW9uPC9hPjwvbGk+CiAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvY29udHJpYnV0ZS8iPkhvdyB0bwogICAgICAgICAgICAgIENvbnRyaWJ1dGU8L2E+PC9saT4KICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5lY2xpcHNlLm9yZy9tYWlsLyI+TWFpbGluZyBMaXN0czwvYT48L2xpPgogICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2ZvcnVtcy8iPkZvcnVtczwvYT48L2xpPgogICAgICAgICAgPGxpPjxhIGhyZWY9Ii8vbWFya2V0cGxhY2UuZWNsaXBzZS5vcmciPk1hcmtldHBsYWNlPC9hPjwvbGk+CiAgICAgICAgPC91bD4KICAgICAgPC9zZWN0aW9uPgogICAgICA8c2VjdGlvbiBjbGFzcz0iY29sLXNtLTMgaGlkZGVuLXByaW50IiBpZD0iZm9vdGVyLW90aGVyIj4KICAgICAgICA8aDIgY2xhc3M9InNlY3Rpb24tdGl0bGUiIHN0eWxlPSJjb2xvcjojZmZmOyI+T3RoZXI8L2gyPgogICAgICAgIDx1bCBjbGFzcz0ibmF2Ij4KICAgICAgICAgIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5lY2xpcHNlLm9yZy9pZGUvIj5JREUgYW5kIFRvb2xzPC9hPjwvbGk+CiAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvcHJvamVjdHMiPkNvbW11bml0eSBvZgogICAgICAgICAgICAgIFByb2plY3RzPC9hPjwvbGk+CiAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvb3JnL3dvcmtpbmdncm91cHMvIj5Xb3JraW5nCiAgICAgICAgICAgICAgR3JvdXBzPC9hPjwvbGk+CiAgICAgICAgICA8bGk+PGEgaHJlZj0iaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvb3JnL3Jlc2VhcmNoLyI+UmVzZWFyY2hARWNsaXBzZTwvYT48L2xpPgogICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vc3RhdHVzLmVjbGlwc2Uub3JnIj5TZXJ2aWNlIFN0YXR1czwvYT48L2xpPgogICAgICAgIDwvdWw+CiAgICAgIDwvc2VjdGlvbj4KICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTEyIG1hcmdpbi10b3AtMjAiPgogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICA8ZGl2IGlkPSJjb3B5cmlnaHQiIGNsYXNzPSJjb2wtbWQtOCI+CiAgICAgICAgICAgIDxwIGlkPSJjb3B5cmlnaHQtdGV4dCIgc3R5bGU9ImNvbG9yOiNmZmY7Ij5Db3B5cmlnaHQgwqkgRWNsaXBzZSBGb3VuZGF0aW9uLCBJbmMuIEFsbAogICAgICAgICAgICAgIFJpZ2h0cyBSZXNlcnZlZC48L3A+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC00IHNvY2lhbC1tZWRpYSI+CiAgICAgICAgICAgIDx1bCBjbGFzcz0ibGlzdC1pbmxpbmUgdGV4dC1yaWdodCI+CiAgICAgICAgICAgICAgPGxpPjxhIGNsYXNzPSJzb2NpYWwtbWVkaWEtbGluayBmYS1zdGFjayBmYS1sZyIKICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vY29nbmljcnlwdCIKICAgICAgICAgICAgICA+IDxpIGNsYXNzPSJmYSBmYS1jaXJjbGUtdGhpbiBmYS1zdGFjay0yeCI+PC9pPiA8aQogICAgICAgICAgICAgICAgICBjbGFzcz0iZmEgZmEtdHdpdHRlciBmYS1zdGFjay0xeCIKICAgICAgICAgICAgICAgID48L2k+CiAgICAgICAgICAgICAgPC9hPjwvbGk+CiAgICAgICAgICAgICAgPGxpPjxhIGNsYXNzPSJzb2NpYWwtbWVkaWEtbGluayBmYS1zdGFjayBmYS1sZyIKICAgICAgICAgICAgICAgIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2NoYW5uZWwvVUNOS3plWnpoSU1PaFdtOWVxbFAxNWt3IgogICAgICAgICAgICAgID4gPGkgY2xhc3M9ImZhIGZhLWNpcmNsZS10aGluIGZhLXN0YWNrLTJ4Ij48L2k+IDxpCiAgICAgICAgICAgICAgICAgIGNsYXNzPSJmYSBmYS15b3V0dWJlIGZhLXN0YWNrLTF4IgogICAgICAgICAgICAgICAgPjwvaT4KICAgICAgICAgICAgICA8L2E+PC9saT4KICAgICAgICAgICAgICA8bGk+PGEgY2xhc3M9InNvY2lhbC1tZWRpYS1saW5rIGZhLXN0YWNrIGZhLWxnIgogICAgICAgICAgICAgICAgaHJlZj0iaHR0cHM6Ly93d3cubGlua2VkaW4uY29tL2NvbXBhbnkvZWNsaXBzZS1mb3VuZGF0aW9uIgogICAgICAgICAgICAgID4gPGkgY2xhc3M9ImZhIGZhLWNpcmNsZS10aGluIGZhLXN0YWNrLTJ4Ij48L2k+IDxpCiAgICAgICAgICAgICAgICAgIGNsYXNzPSJmYSBmYS1saW5rZWRpbiBmYS1zdGFjay0xeCIKICAgICAgICAgICAgICAgID48L2k+CiAgICAgICAgICAgICAgPC9hPjwvbGk+CiAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9mb290ZXI+CgoKCjxzY3JpcHQgc3JjPSJodHRwczovL3d3dy5lY2xpcHNlLm9yZy9jb2duaWNyeXB0L2Fzc2V0cy9qcy9tYWluLmpzIj48L3NjcmlwdD4KCgogIAogIDxzY3JpcHQgc3JjPSJqcy9zaHVmZmxlLmpzIj48L3NjcmlwdD4KICA8c2NyaXB0IHNyYz0ianMvaW5kZXguanMiPjwvc2NyaXB0PgoKPC9ib2R5Pgo8L2h0bWw+Cgo=