PGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMSI+PHRpdGxlPmhhc2g8L3RpdGxlPjxtZXRhIG5hbWU9ImdlbmVyYXRvciIgY29udGVudD0iRG9jQm9vayBYU0wgU3R5bGVzaGVldHMgVjEuNTguMSI+PHN0eWxlIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvdHJhbnNpdGlvbmFsIiB0eXBlPSJ0ZXh0L2NzcyI+CiAgICAgICAgLnN5bm9wc2lzLCAuY2xhc3NzeW5vcHNpcyB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlZWVlZWU7CiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNhYWFhYWE7CiAgICAgICAgICAgIHBhZGRpbmc6IDAuNWVtOwogICAgICAgIH0KICAgICAgICAucHJvZ3JhbWxpc3RpbmcgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWVlZWZmOwogICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjYWFhYWZmOwogICAgICAgICAgICBwYWRkaW5nOiAwLjVlbTsKICAgICAgICB9CiAgICAgICAgLnZhcmlhYmxlbGlzdCB7CiAgICAgICAgICAgIHBhZGRpbmc6IDRweDsKICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDNlbTsKICAgICAgICB9CiAgICAgICAgLm5hdmlnYXRpb24gewogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZlZWVlOwogICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjZmZhYWFhOwogICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjVlbTsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07CiAgICAgICAgfQogICAgICAgIC5uYXZpZ2F0aW9uIGEgewogICAgICAgICAgICBjb2xvcjogIzc3MDAwMDsKICAgICAgICB9CiAgICAgICAgLm5hdmlnYXRpb24gYTp2aXNpdGVkIHsKICAgICAgICAgICAgY29sb3I6ICM1NTAwMDA7CiAgICAgICAgfQogICAgICAgIC5uYXZpZ2F0aW9uIC50aXRsZSB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjAwJTsKICAgICAgICB9CiAgICAgIDwvc3R5bGU+PGxpbmsgcmVsPSJob21lIiBocmVmPSJpbmRleC5odG1sIiB0aXRsZT0iR25vbWUgWE1MIExpYnJhcnkgUmVmZXJlbmNlIE1hbnVhbCI+PGxpbmsgcmVsPSJ1cCIgaHJlZj0ibGlieG1sLWxpYi5odG1sIiB0aXRsZT0iTGlieG1sIExpYnJhcnkgUmVmZXJlbmNlIj48bGluayByZWw9InByZXZpb3VzIiBocmVmPSJsaWJ4bWwtZW5jb2RpbmcuaHRtbCIgdGl0bGU9ImVuY29kaW5nIj48bGluayByZWw9Im5leHQiIGhyZWY9ImxpYnhtbC1kZWJ1Z1hNTC5odG1sIiB0aXRsZT0iZGVidWdYTUwiPjwvaGVhZD48Ym9keSBiZ2NvbG9yPSJ3aGl0ZSIgdGV4dD0iYmxhY2siIGxpbms9IiMwMDAwRkYiIHZsaW5rPSIjODQwMDg0IiBhbGluaz0iIzAwMDBGRiI+PHRhYmxlIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvdHJhbnNpdGlvbmFsIiBjbGFzcz0ibmF2aWdhdGlvbiIgd2lkdGg9IjEwMCUiIHN1bW1hcnk9Ik5hdmlnYXRpb24gaGVhZGVyIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjIiPjx0ciB2YWxpZ249Im1pZGRsZSI+PHRkPjxhIGFjY2Vzc2tleT0icCIgaHJlZj0ibGlieG1sLWVuY29kaW5nLmh0bWwiPjxpbWcgc3JjPSJsZWZ0LnBuZyIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBib3JkZXI9IjAiIGFsdD0iUHJldiI+PC9pbWc+PC9hPjwvdGQ+PHRkPjxhIGFjY2Vzc2tleT0idSIgaHJlZj0ibGlieG1sLWxpYi5odG1sIj48aW1nIHNyYz0idXAucG5nIiB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGJvcmRlcj0iMCIgYWx0PSJVcCI+PC9pbWc+PC9hPjwvdGQ+PHRkPjxhIGFjY2Vzc2tleT0iaCIgaHJlZj0iaW5kZXguaHRtbCI+PGltZyBzcmM9ImhvbWUucG5nIiB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGJvcmRlcj0iMCIgYWx0PSJIb21lIj48L2ltZz48L2E+PC90ZD48dGggd2lkdGg9IjEwMCUiIGFsaWduPSJjZW50ZXIiPkdub21lIFhNTCBMaWJyYXJ5IFJlZmVyZW5jZSBNYW51YWw8L3RoPjx0ZD48YSBhY2Nlc3NrZXk9Im4iIGhyZWY9ImxpYnhtbC1kZWJ1Z1hNTC5odG1sIj48aW1nIHNyYz0icmlnaHQucG5nIiB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGJvcmRlcj0iMCIgYWx0PSJOZXh0Ij48L2ltZz48L2E+PC90ZD48L3RyPjwvdGFibGU+PGRpdiBjbGFzcz0icmVmZW50cnkiIGxhbmc9ImVuIj48YSBuYW1lPSJsaWJ4bWwtaGFzaCI+PC9hPjxkaXYgY2xhc3M9InRpdGxlcGFnZSI+PC9kaXY+PGRpdiBjbGFzcz0icmVmbmFtZWRpdiI+PGgyPmhhc2g8L2gyPjxwPmhhc2ggJiM4MjEyOyA8L3A+PC9kaXY+PGRpdiBjbGFzcz0icmVmc3lub3BzaXNkaXYiPjxoMj5TeW5vcHNpczwvaDI+PHByZSBjbGFzcz0ic3lub3BzaXMiPgoKCgpzdHJ1Y3QgICAgICA8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZSI+eG1sSGFzaFRhYmxlPC9hPjsKdHlwZWRlZiAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT47CnZvaWQgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hEZWFsbG9jYXRvciI+KnhtbEhhc2hEZWFsbG9jYXRvcjwvYT4pICAgICAgICAgICAodm9pZCAqcGF5bG9hZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZSk7CnZvaWQqICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hDb3BpZXIiPip4bWxIYXNoQ29waWVyPC9hPikgICAgICAgICAgICAgICAgKHZvaWQgKnBheWxvYWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUpOwp2b2lkICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoU2Nhbm5lciI+KnhtbEhhc2hTY2FubmVyPC9hPikgICAgICAgICAgICAgICAodm9pZCAqcGF5bG9hZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZGF0YSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZSk7CnZvaWQgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hTY2FubmVyRnVsbCI+KnhtbEhhc2hTY2FubmVyRnVsbDwvYT4pICAgICAgICAgICAodm9pZCAqcGF5bG9hZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZGF0YSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZTIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUzKTsKPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoQ3JlYXRlIj54bWxIYXNoQ3JlYXRlPC9hPiAgICAgICAgICAgICAgIChpbnQgc2l6ZSk7CnZvaWQgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaEZyZWUiPnhtbEhhc2hGcmVlPC9hPiAgICAgICAgICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoRGVhbGxvY2F0b3IiPnhtbEhhc2hEZWFsbG9jYXRvcjwvYT4gZik7CmludCAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaEFkZEVudHJ5Ij54bWxIYXNoQWRkRW50cnk8L2E+ICAgICAgICAgICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gdGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKnVzZXJkYXRhKTsKaW50ICAgICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVXBkYXRlRW50cnkiPnhtbEhhc2hVcGRhdGVFbnRyeTwvYT4gICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqdXNlcmRhdGEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaERlYWxsb2NhdG9yIj54bWxIYXNoRGVhbGxvY2F0b3I8L2E+IGYpOwppbnQgICAgICAgICA8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hBZGRFbnRyeTIiPnhtbEhhc2hBZGRFbnRyeTI8L2E+ICAgICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZTIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKnVzZXJkYXRhKTsKaW50ICAgICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVXBkYXRlRW50cnkyIj54bWxIYXNoVXBkYXRlRW50cnkyPC9hPiAgICAgICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gdGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICp1c2VyZGF0YSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoRGVhbGxvY2F0b3IiPnhtbEhhc2hEZWFsbG9jYXRvcjwvYT4gZik7CmludCAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaEFkZEVudHJ5MyI+eG1sSGFzaEFkZEVudHJ5MzwvYT4gICAgICAgICAgICAgICAgKDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFRhYmxlUHRyIj54bWxIYXNoVGFibGVQdHI8L2E+IHRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZTMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKnVzZXJkYXRhKTsKaW50ICAgICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVXBkYXRlRW50cnkzIj54bWxIYXNoVXBkYXRlRW50cnkzPC9hPiAgICAgICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gdGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lMywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqdXNlcmRhdGEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaERlYWxsb2NhdG9yIj54bWxIYXNoRGVhbGxvY2F0b3I8L2E+IGYpOwppbnQgICAgICAgICA8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hSZW1vdmVFbnRyeSI+eG1sSGFzaFJlbW92ZUVudHJ5PC9hPiAgICAgICAgICAgICAgKDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFRhYmxlUHRyIj54bWxIYXNoVGFibGVQdHI8L2E+IHRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hEZWFsbG9jYXRvciI+eG1sSGFzaERlYWxsb2NhdG9yPC9hPiBmKTsKaW50ICAgICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoUmVtb3ZlRW50cnkyIj54bWxIYXNoUmVtb3ZlRW50cnkyPC9hPiAgICAgICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gdGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hEZWFsbG9jYXRvciI+eG1sSGFzaERlYWxsb2NhdG9yPC9hPiBmKTsKaW50ICAgICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoUmVtb3ZlRW50cnkzIj54bWxIYXNoUmVtb3ZlRW50cnkzPC9hPiAgICAgICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gdGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lMywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoRGVhbGxvY2F0b3IiPnhtbEhhc2hEZWFsbG9jYXRvcjwvYT4gZik7CnZvaWQqICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaExvb2t1cCI+eG1sSGFzaExvb2t1cDwvYT4gICAgICAgICAgICAgICAgICAgKDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFRhYmxlUHRyIj54bWxIYXNoVGFibGVQdHI8L2E+IHRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lKTsKdm9pZCogICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoTG9va3VwMiI+eG1sSGFzaExvb2t1cDI8L2E+ICAgICAgICAgICAgICAgICAgKDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFRhYmxlUHRyIj54bWxIYXNoVGFibGVQdHI8L2E+IHRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lMik7CnZvaWQqICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaExvb2t1cDMiPnhtbEhhc2hMb29rdXAzPC9hPiAgICAgICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZTIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUzKTsKPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoQ29weSI+eG1sSGFzaENvcHk8L2E+ICAgICAgICAgICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gdGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaENvcGllciI+eG1sSGFzaENvcGllcjwvYT4gZik7CmludCAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFNpemUiPnhtbEhhc2hTaXplPC9hPiAgICAgICAgICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSk7CnZvaWQgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFNjYW4iPnhtbEhhc2hTY2FuPC9hPiAgICAgICAgICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoU2Nhbm5lciI+eG1sSGFzaFNjYW5uZXI8L2E+IGYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpOwp2b2lkICAgICAgICA8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hTY2FuMyI+eG1sSGFzaFNjYW4zPC9hPiAgICAgICAgICAgICAgICAgICAgKDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFRhYmxlUHRyIj54bWxIYXNoVGFibGVQdHI8L2E+IHRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZTMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFNjYW5uZXIiPnhtbEhhc2hTY2FubmVyPC9hPiBmLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpkYXRhKTsKdm9pZCAgICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoU2NhbkZ1bGwiPnhtbEhhc2hTY2FuRnVsbDwvYT4gICAgICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoU2Nhbm5lckZ1bGwiPnhtbEhhc2hTY2FubmVyRnVsbDwvYT4gZiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZGF0YSk7CnZvaWQgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFNjYW5GdWxsMyI+eG1sSGFzaFNjYW5GdWxsMzwvYT4gICAgICAgICAgICAgICAgKDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFRhYmxlUHRyIj54bWxIYXNoVGFibGVQdHI8L2E+IHRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZTMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFNjYW5uZXJGdWxsIj54bWxIYXNoU2Nhbm5lckZ1bGw8L2E+IGYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpOwo8L3ByZT48L2Rpdj48ZGl2IGNsYXNzPSJyZWZzZWN0MSIgbGFuZz0iZW4iPjxoMj5EZXNjcmlwdGlvbjwvaDI+PHA+Cgo8L3A+PC9kaXY+PGRpdiBjbGFzcz0icmVmc2VjdDEiIGxhbmc9ImVuIj48aDI+RGV0YWlsczwvaDI+PGRpdiBjbGFzcz0icmVmc2VjdDIiIGxhbmc9ImVuIj48aDM+PGEgbmFtZT0ieG1sSGFzaFRhYmxlIj48L2E+c3RydWN0IHhtbEhhc2hUYWJsZTwvaDM+PHByZSBjbGFzcz0icHJvZ3JhbWxpc3RpbmciPnN0cnVjdCB4bWxIYXNoVGFibGU7PC9wcmU+PHA+Cgo8L3A+PC9kaXY+PGhyIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvdHJhbnNpdGlvbmFsIj48L2hyPjxkaXYgY2xhc3M9InJlZnNlY3QyIiBsYW5nPSJlbiI+PGgzPjxhIG5hbWU9InhtbEhhc2hUYWJsZVB0ciI+PC9hPnhtbEhhc2hUYWJsZVB0cjwvaDM+PHByZSBjbGFzcz0icHJvZ3JhbWxpc3RpbmciPnR5cGVkZWYgeG1sSGFzaFRhYmxlICp4bWxIYXNoVGFibGVQdHI7CjwvcHJlPjxwPgoKPC9wPjwvZGl2PjxociB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL3RyYW5zaXRpb25hbCI+PC9ocj48ZGl2IGNsYXNzPSJyZWZzZWN0MiIgbGFuZz0iZW4iPjxoMz48YSBuYW1lPSJ4bWxIYXNoRGVhbGxvY2F0b3IiPjwvYT54bWxIYXNoRGVhbGxvY2F0b3IgKCk8L2gzPjxwcmUgY2xhc3M9InByb2dyYW1saXN0aW5nIj52b2lkICAgICAgICAoKnhtbEhhc2hEZWFsbG9jYXRvcikgICAgICAgICAgICh2b2lkICpwYXlsb2FkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lKTs8L3ByZT48cD4KQ2FsbGJhY2sgdG8gZnJlZSBkYXRhIGZyb20gYSBoYXNoLjwvcD48cD4KCjwvcD48ZGl2IGNsYXNzPSJ2YXJpYWJsZWxpc3QiPjx0YWJsZSBib3JkZXI9IjAiPjxjb2wgYWxpZ249ImxlZnQiIHZhbGlnbj0idG9wIj48dGJvZHk+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PnBheWxvYWQ8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gIHRoZSBkYXRhIGluIHRoZSBoYXNoCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+bmFtZTwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiAgdGhlIG5hbWUgYXNzb2NpYXRlZAo8L3RkPjwvdHI+PC90Ym9keT48L3RhYmxlPjwvZGl2PjwvZGl2PjxociB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL3RyYW5zaXRpb25hbCI+PC9ocj48ZGl2IGNsYXNzPSJyZWZzZWN0MiIgbGFuZz0iZW4iPjxoMz48YSBuYW1lPSJ4bWxIYXNoQ29waWVyIj48L2E+eG1sSGFzaENvcGllciAoKTwvaDM+PHByZSBjbGFzcz0icHJvZ3JhbWxpc3RpbmciPnZvaWQqICAgICAgICgqeG1sSGFzaENvcGllcikgICAgICAgICAgICAgICAgKHZvaWQgKnBheWxvYWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUpOzwvcHJlPjxwPgpDYWxsYmFjayB0byBjb3B5IGRhdGEgZnJvbSBhIGhhc2guPC9wPjxwPgoKPC9wPjxkaXYgY2xhc3M9InZhcmlhYmxlbGlzdCI+PHRhYmxlIGJvcmRlcj0iMCI+PGNvbCBhbGlnbj0ibGVmdCIgdmFsaWduPSJ0b3AiPjx0Ym9keT48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+cGF5bG9hZDwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiAgdGhlIGRhdGEgaW4gdGhlIGhhc2gKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+ICB0aGUgbmFtZSBhc3NvY2lhdGVkCjwvdGQ+PC90cj48L3Rib2R5PjwvdGFibGU+PC9kaXY+PC9kaXY+PGhyIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvdHJhbnNpdGlvbmFsIj48L2hyPjxkaXYgY2xhc3M9InJlZnNlY3QyIiBsYW5nPSJlbiI+PGgzPjxhIG5hbWU9InhtbEhhc2hTY2FubmVyIj48L2E+eG1sSGFzaFNjYW5uZXIgKCk8L2gzPjxwcmUgY2xhc3M9InByb2dyYW1saXN0aW5nIj52b2lkICAgICAgICAoKnhtbEhhc2hTY2FubmVyKSAgICAgICAgICAgICAgICh2b2lkICpwYXlsb2FkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpkYXRhLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lKTs8L3ByZT48cD4KQ2FsbGJhY2sgd2hlbiBzY2FubmluZyBkYXRhIGluIGEgaGFzaCB3aXRoIHRoZSBzaW1wbGUgc2Nhbm5lci48L3A+PHA+Cgo8L3A+PGRpdiBjbGFzcz0idmFyaWFibGVsaXN0Ij48dGFibGUgYm9yZGVyPSIwIj48Y29sIGFsaWduPSJsZWZ0IiB2YWxpZ249InRvcCI+PHRib2R5Pjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5wYXlsb2FkPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+ICB0aGUgZGF0YSBpbiB0aGUgaGFzaAo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PmRhdGE8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gIGV4dHJhIHNjYW5ubmVyIGRhdGEKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+ICB0aGUgbmFtZSBhc3NvY2lhdGVkCjwvdGQ+PC90cj48L3Rib2R5PjwvdGFibGU+PC9kaXY+PC9kaXY+PGhyIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvdHJhbnNpdGlvbmFsIj48L2hyPjxkaXYgY2xhc3M9InJlZnNlY3QyIiBsYW5nPSJlbiI+PGgzPjxhIG5hbWU9InhtbEhhc2hTY2FubmVyRnVsbCI+PC9hPnhtbEhhc2hTY2FubmVyRnVsbCAoKTwvaDM+PHByZSBjbGFzcz0icHJvZ3JhbWxpc3RpbmciPnZvaWQgICAgICAgICgqeG1sSGFzaFNjYW5uZXJGdWxsKSAgICAgICAgICAgKHZvaWQgKnBheWxvYWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lMyk7PC9wcmU+PHA+CkNhbGxiYWNrIHdoZW4gc2Nhbm5pbmcgZGF0YSBpbiBhIGhhc2ggd2l0aCB0aGUgZnVsbCBzY2FubmVyLjwvcD48cD4KCjwvcD48ZGl2IGNsYXNzPSJ2YXJpYWJsZWxpc3QiPjx0YWJsZSBib3JkZXI9IjAiPjxjb2wgYWxpZ249ImxlZnQiIHZhbGlnbj0idG9wIj48dGJvZHk+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PnBheWxvYWQ8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gIHRoZSBkYXRhIGluIHRoZSBoYXNoCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+ZGF0YTwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiAgZXh0cmEgc2Nhbm5uZXIgZGF0YQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0Pm5hbWU8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gIHRoZSBuYW1lIGFzc29jaWF0ZWQKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lMjwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiAgdGhlIHNlY29uZCBuYW1lIGFzc29jaWF0ZWQKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lMzwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiAgdGhlIHRoaXJkIG5hbWUgYXNzb2NpYXRlZAo8L3RkPjwvdHI+PC90Ym9keT48L3RhYmxlPjwvZGl2PjwvZGl2PjxociB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL3RyYW5zaXRpb25hbCI+PC9ocj48ZGl2IGNsYXNzPSJyZWZzZWN0MiIgbGFuZz0iZW4iPjxoMz48YSBuYW1lPSJ4bWxIYXNoQ3JlYXRlIj48L2E+eG1sSGFzaENyZWF0ZSAoKTwvaDM+PHByZSBjbGFzcz0icHJvZ3JhbWxpc3RpbmciPjxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFRhYmxlUHRyIj54bWxIYXNoVGFibGVQdHI8L2E+IHhtbEhhc2hDcmVhdGUgICAgICAgICAgICAgICAoaW50IHNpemUpOzwvcHJlPjxwPgpDcmVhdGUgYSBuZXcgeG1sSGFzaFRhYmxlUHRyLjwvcD48cD4KCjwvcD48ZGl2IGNsYXNzPSJ2YXJpYWJsZWxpc3QiPjx0YWJsZSBib3JkZXI9IjAiPjxjb2wgYWxpZ249ImxlZnQiIHZhbGlnbj0idG9wIj48dGJvZHk+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PnNpemU8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gdGhlIHNpemUgb2YgdGhlIGhhc2ggdGFibGUKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxzcGFuIGNsYXNzPSJlbXBoYXNpcyI+PGVtPlJldHVybnM8L2VtPjwvc3Bhbj4gOjwvc3Bhbj48L3RkPjx0ZD50aGUgbmV3bHkgY3JlYXRlZCBvYmplY3QsIG9yIE5VTEwgaWYgYW4gZXJyb3Igb2NjdXJlZC4KPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2Rpdj48L2Rpdj48aHIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS90cmFuc2l0aW9uYWwiPjwvaHI+PGRpdiBjbGFzcz0icmVmc2VjdDIiIGxhbmc9ImVuIj48aDM+PGEgbmFtZT0ieG1sSGFzaEZyZWUiPjwvYT54bWxIYXNoRnJlZSAoKTwvaDM+PHByZSBjbGFzcz0icHJvZ3JhbWxpc3RpbmciPnZvaWQgICAgICAgIHhtbEhhc2hGcmVlICAgICAgICAgICAgICAgICAgICAgKDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFRhYmxlUHRyIj54bWxIYXNoVGFibGVQdHI8L2E+IHRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hEZWFsbG9jYXRvciI+eG1sSGFzaERlYWxsb2NhdG9yPC9hPiBmKTs8L3ByZT48cD4KRnJlZSB0aGUgaGFzaCA8aT48dHQ+dGFibGU8L3R0PjwvaT4gYW5kIGl0cyBjb250ZW50cy4gVGhlIHVzZXJkYXRhIGlzCmRlYWxsb2NhdGVkIHdpdGggPGk+PHR0PmY8L3R0PjwvaT4gaWYgcHJvdmlkZWQuPC9wPjxwPgoKPC9wPjxkaXYgY2xhc3M9InZhcmlhYmxlbGlzdCI+PHRhYmxlIGJvcmRlcj0iMCI+PGNvbCBhbGlnbj0ibGVmdCIgdmFsaWduPSJ0b3AiPjx0Ym9keT48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+dGFibGU8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gdGhlIGhhc2ggdGFibGUKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5mPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+ICB0aGUgZGVhbGxvY2F0b3IgZnVuY3Rpb24gZm9yIGl0ZW1zIGluIHRoZSBoYXNoCjwvdGQ+PC90cj48L3Rib2R5PjwvdGFibGU+PC9kaXY+PC9kaXY+PGhyIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvdHJhbnNpdGlvbmFsIj48L2hyPjxkaXYgY2xhc3M9InJlZnNlY3QyIiBsYW5nPSJlbiI+PGgzPjxhIG5hbWU9InhtbEhhc2hBZGRFbnRyeSI+PC9hPnhtbEhhc2hBZGRFbnRyeSAoKTwvaDM+PHByZSBjbGFzcz0icHJvZ3JhbWxpc3RpbmciPmludCAgICAgICAgIHhtbEhhc2hBZGRFbnRyeSAgICAgICAgICAgICAgICAgKDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFRhYmxlUHRyIj54bWxIYXNoVGFibGVQdHI8L2E+IHRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICp1c2VyZGF0YSk7PC9wcmU+PHA+CkFkZCB0aGUgPGk+PHR0PnVzZXJkYXRhPC90dD48L2k+IHRvIHRoZSBoYXNoIDxpPjx0dD50YWJsZTwvdHQ+PC9pPi4gVGhpcyBjYW4gbGF0ZXIgYmUgcmV0cmlldmVkCmJ5IHVzaW5nIHRoZSA8aT48dHQ+bmFtZTwvdHQ+PC9pPi4gRHVwbGljYXRlIG5hbWVzIGdlbmVyYXRlIGVycm9ycy48L3A+PHA+Cgo8L3A+PGRpdiBjbGFzcz0idmFyaWFibGVsaXN0Ij48dGFibGUgYm9yZGVyPSIwIj48Y29sIGFsaWduPSJsZWZ0IiB2YWxpZ249InRvcCI+PHRib2R5Pjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD50YWJsZTwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiB0aGUgaGFzaCB0YWJsZQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0Pm5hbWU8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gdGhlIG5hbWUgb2YgdGhlIHVzZXJkYXRhCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+dXNlcmRhdGE8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gYSBwb2ludGVyIHRvIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PHNwYW4gY2xhc3M9ImVtcGhhc2lzIj48ZW0+UmV0dXJuczwvZW0+PC9zcGFuPiA6PC9zcGFuPjwvdGQ+PHRkPjAgdGhlIGFkZGl0aW9uIHN1Y2NlZWRlZCBhbmQgLTEgaW4gY2FzZSBvZiBlcnJvci4KPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2Rpdj48L2Rpdj48aHIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS90cmFuc2l0aW9uYWwiPjwvaHI+PGRpdiBjbGFzcz0icmVmc2VjdDIiIGxhbmc9ImVuIj48aDM+PGEgbmFtZT0ieG1sSGFzaFVwZGF0ZUVudHJ5Ij48L2E+eG1sSGFzaFVwZGF0ZUVudHJ5ICgpPC9oMz48cHJlIGNsYXNzPSJwcm9ncmFtbGlzdGluZyI+aW50ICAgICAgICAgeG1sSGFzaFVwZGF0ZUVudHJ5ICAgICAgICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gdGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKnVzZXJkYXRhLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hEZWFsbG9jYXRvciI+eG1sSGFzaERlYWxsb2NhdG9yPC9hPiBmKTs8L3ByZT48cD4KQWRkIHRoZSA8aT48dHQ+dXNlcmRhdGE8L3R0PjwvaT4gdG8gdGhlIGhhc2ggPGk+PHR0PnRhYmxlPC90dD48L2k+LiBUaGlzIGNhbiBsYXRlciBiZSByZXRyaWV2ZWQKYnkgdXNpbmcgdGhlIDxpPjx0dD5uYW1lPC90dD48L2k+LiBFeGlzdGluZyBlbnRyeSBmb3IgdGhpcyA8aT48dHQ+bmFtZTwvdHQ+PC9pPiB3aWxsIGJlIHJlbW92ZWQKYW5kIGZyZWVkIHdpdGggPGk+PHR0PmY8L3R0PjwvaT4gaWYgZm91bmQuPC9wPjxwPgoKPC9wPjxkaXYgY2xhc3M9InZhcmlhYmxlbGlzdCI+PHRhYmxlIGJvcmRlcj0iMCI+PGNvbCBhbGlnbj0ibGVmdCIgdmFsaWduPSJ0b3AiPjx0Ym9keT48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+dGFibGU8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gdGhlIGhhc2ggdGFibGUKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBuYW1lIG9mIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PnVzZXJkYXRhPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IGEgcG9pbnRlciB0byB0aGUgdXNlcmRhdGEKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5mPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBkZWFsbG9jYXRvciBmdW5jdGlvbiBmb3IgcmVwbGFjZWQgaXRlbSAoaWYgYW55KQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PHNwYW4gY2xhc3M9ImVtcGhhc2lzIj48ZW0+UmV0dXJuczwvZW0+PC9zcGFuPiA6PC9zcGFuPjwvdGQ+PHRkPjAgdGhlIGFkZGl0aW9uIHN1Y2NlZWRlZCBhbmQgLTEgaW4gY2FzZSBvZiBlcnJvci4KPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2Rpdj48L2Rpdj48aHIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS90cmFuc2l0aW9uYWwiPjwvaHI+PGRpdiBjbGFzcz0icmVmc2VjdDIiIGxhbmc9ImVuIj48aDM+PGEgbmFtZT0ieG1sSGFzaEFkZEVudHJ5MiI+PC9hPnhtbEhhc2hBZGRFbnRyeTIgKCk8L2gzPjxwcmUgY2xhc3M9InByb2dyYW1saXN0aW5nIj5pbnQgICAgICAgICB4bWxIYXNoQWRkRW50cnkyICAgICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZTIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKnVzZXJkYXRhKTs8L3ByZT48cD4KQWRkIHRoZSA8aT48dHQ+dXNlcmRhdGE8L3R0PjwvaT4gdG8gdGhlIGhhc2ggPGk+PHR0PnRhYmxlPC90dD48L2k+LiBUaGlzIGNhbiBsYXRlciBiZSByZXRyaWV2ZWQKYnkgdXNpbmcgdGhlICg8aT48dHQ+bmFtZTwvdHQ+PC9pPiwgPGk+PHR0Pm5hbWUyPC90dD48L2k+KSB0dXBsZS4gRHVwbGljYXRlIHR1cGxlcyBnZW5lcmF0ZSBlcnJvcnMuPC9wPjxwPgoKPC9wPjxkaXYgY2xhc3M9InZhcmlhYmxlbGlzdCI+PHRhYmxlIGJvcmRlcj0iMCI+PGNvbCBhbGlnbj0ibGVmdCIgdmFsaWduPSJ0b3AiPjx0Ym9keT48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+dGFibGU8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gdGhlIGhhc2ggdGFibGUKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBuYW1lIG9mIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0Pm5hbWUyPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IGEgc2Vjb25kIG5hbWUgb2YgdGhlIHVzZXJkYXRhCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+dXNlcmRhdGE8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gYSBwb2ludGVyIHRvIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PHNwYW4gY2xhc3M9ImVtcGhhc2lzIj48ZW0+UmV0dXJuczwvZW0+PC9zcGFuPiA6PC9zcGFuPjwvdGQ+PHRkPjAgdGhlIGFkZGl0aW9uIHN1Y2NlZWRlZCBhbmQgLTEgaW4gY2FzZSBvZiBlcnJvci4KPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2Rpdj48L2Rpdj48aHIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS90cmFuc2l0aW9uYWwiPjwvaHI+PGRpdiBjbGFzcz0icmVmc2VjdDIiIGxhbmc9ImVuIj48aDM+PGEgbmFtZT0ieG1sSGFzaFVwZGF0ZUVudHJ5MiI+PC9hPnhtbEhhc2hVcGRhdGVFbnRyeTIgKCk8L2gzPjxwcmUgY2xhc3M9InByb2dyYW1saXN0aW5nIj5pbnQgICAgICAgICB4bWxIYXNoVXBkYXRlRW50cnkyICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZTIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKnVzZXJkYXRhLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hEZWFsbG9jYXRvciI+eG1sSGFzaERlYWxsb2NhdG9yPC9hPiBmKTs8L3ByZT48cD4KQWRkIHRoZSA8aT48dHQ+dXNlcmRhdGE8L3R0PjwvaT4gdG8gdGhlIGhhc2ggPGk+PHR0PnRhYmxlPC90dD48L2k+LiBUaGlzIGNhbiBsYXRlciBiZSByZXRyaWV2ZWQKYnkgdXNpbmcgdGhlICg8aT48dHQ+bmFtZTwvdHQ+PC9pPiwgPGk+PHR0Pm5hbWUyPC90dD48L2k+KSB0dXBsZS4gRXhpc3RpbmcgZW50cnkgZm9yIHRoaXMgdHVwbGUgd2lsbApiZSByZW1vdmVkIGFuZCBmcmVlZCB3aXRoIDxpPjx0dD5mPC90dD48L2k+IGlmIGZvdW5kLjwvcD48cD4KCjwvcD48ZGl2IGNsYXNzPSJ2YXJpYWJsZWxpc3QiPjx0YWJsZSBib3JkZXI9IjAiPjxjb2wgYWxpZ249ImxlZnQiIHZhbGlnbj0idG9wIj48dGJvZHk+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PnRhYmxlPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBoYXNoIHRhYmxlCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+bmFtZTwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiB0aGUgbmFtZSBvZiB0aGUgdXNlcmRhdGEKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lMjwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiBhIHNlY29uZCBuYW1lIG9mIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PnVzZXJkYXRhPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IGEgcG9pbnRlciB0byB0aGUgdXNlcmRhdGEKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5mPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBkZWFsbG9jYXRvciBmdW5jdGlvbiBmb3IgcmVwbGFjZWQgaXRlbSAoaWYgYW55KQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PHNwYW4gY2xhc3M9ImVtcGhhc2lzIj48ZW0+UmV0dXJuczwvZW0+PC9zcGFuPiA6PC9zcGFuPjwvdGQ+PHRkPjAgdGhlIGFkZGl0aW9uIHN1Y2NlZWRlZCBhbmQgLTEgaW4gY2FzZSBvZiBlcnJvci4KPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2Rpdj48L2Rpdj48aHIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS90cmFuc2l0aW9uYWwiPjwvaHI+PGRpdiBjbGFzcz0icmVmc2VjdDIiIGxhbmc9ImVuIj48aDM+PGEgbmFtZT0ieG1sSGFzaEFkZEVudHJ5MyI+PC9hPnhtbEhhc2hBZGRFbnRyeTMgKCk8L2gzPjxwcmUgY2xhc3M9InByb2dyYW1saXN0aW5nIj5pbnQgICAgICAgICB4bWxIYXNoQWRkRW50cnkzICAgICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZTIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICp1c2VyZGF0YSk7PC9wcmU+PHA+CkFkZCB0aGUgPGk+PHR0PnVzZXJkYXRhPC90dD48L2k+IHRvIHRoZSBoYXNoIDxpPjx0dD50YWJsZTwvdHQ+PC9pPi4gVGhpcyBjYW4gbGF0ZXIgYmUgcmV0cmlldmVkCmJ5IHVzaW5nIHRoZSB0dXBsZSAoPGk+PHR0Pm5hbWU8L3R0PjwvaT4sIDxpPjx0dD5uYW1lMjwvdHQ+PC9pPiwgPGk+PHR0Pm5hbWUzPC90dD48L2k+KS4gRHVwbGljYXRlIGVudHJpZXMgZ2VuZXJhdGUKZXJyb3JzLjwvcD48cD4KCjwvcD48ZGl2IGNsYXNzPSJ2YXJpYWJsZWxpc3QiPjx0YWJsZSBib3JkZXI9IjAiPjxjb2wgYWxpZ249ImxlZnQiIHZhbGlnbj0idG9wIj48dGJvZHk+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PnRhYmxlPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBoYXNoIHRhYmxlCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+bmFtZTwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiB0aGUgbmFtZSBvZiB0aGUgdXNlcmRhdGEKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lMjwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiBhIHNlY29uZCBuYW1lIG9mIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0Pm5hbWUzPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IGEgdGhpcmQgbmFtZSBvZiB0aGUgdXNlcmRhdGEKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD51c2VyZGF0YTwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiBhIHBvaW50ZXIgdG8gdGhlIHVzZXJkYXRhCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48c3BhbiBjbGFzcz0iZW1waGFzaXMiPjxlbT5SZXR1cm5zPC9lbT48L3NwYW4+IDo8L3NwYW4+PC90ZD48dGQ+MCB0aGUgYWRkaXRpb24gc3VjY2VlZGVkIGFuZCAtMSBpbiBjYXNlIG9mIGVycm9yLgo8L3RkPjwvdHI+PC90Ym9keT48L3RhYmxlPjwvZGl2PjwvZGl2PjxociB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL3RyYW5zaXRpb25hbCI+PC9ocj48ZGl2IGNsYXNzPSJyZWZzZWN0MiIgbGFuZz0iZW4iPjxoMz48YSBuYW1lPSJ4bWxIYXNoVXBkYXRlRW50cnkzIj48L2E+eG1sSGFzaFVwZGF0ZUVudHJ5MyAoKTwvaDM+PHByZSBjbGFzcz0icHJvZ3JhbWxpc3RpbmciPmludCAgICAgICAgIHhtbEhhc2hVcGRhdGVFbnRyeTMgICAgICAgICAgICAgKDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFRhYmxlUHRyIj54bWxIYXNoVGFibGVQdHI8L2E+IHRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZTMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKnVzZXJkYXRhLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hEZWFsbG9jYXRvciI+eG1sSGFzaERlYWxsb2NhdG9yPC9hPiBmKTs8L3ByZT48cD4KQWRkIHRoZSA8aT48dHQ+dXNlcmRhdGE8L3R0PjwvaT4gdG8gdGhlIGhhc2ggPGk+PHR0PnRhYmxlPC90dD48L2k+LiBUaGlzIGNhbiBsYXRlciBiZSByZXRyaWV2ZWQKYnkgdXNpbmcgdGhlIHR1cGxlICg8aT48dHQ+bmFtZTwvdHQ+PC9pPiwgPGk+PHR0Pm5hbWUyPC90dD48L2k+LCA8aT48dHQ+bmFtZTM8L3R0PjwvaT4pLiBFeGlzdGluZyBlbnRyeSBmb3IgdGhpcyB0dXBsZQp3aWxsIGJlIHJlbW92ZWQgYW5kIGZyZWVkIHdpdGggPGk+PHR0PmY8L3R0PjwvaT4gaWYgZm91bmQuPC9wPjxwPgoKPC9wPjxkaXYgY2xhc3M9InZhcmlhYmxlbGlzdCI+PHRhYmxlIGJvcmRlcj0iMCI+PGNvbCBhbGlnbj0ibGVmdCIgdmFsaWduPSJ0b3AiPjx0Ym9keT48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+dGFibGU8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gdGhlIGhhc2ggdGFibGUKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBuYW1lIG9mIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0Pm5hbWUyPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IGEgc2Vjb25kIG5hbWUgb2YgdGhlIHVzZXJkYXRhCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+bmFtZTM8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gYSB0aGlyZCBuYW1lIG9mIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PnVzZXJkYXRhPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IGEgcG9pbnRlciB0byB0aGUgdXNlcmRhdGEKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5mPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBkZWFsbG9jYXRvciBmdW5jdGlvbiBmb3IgcmVwbGFjZWQgaXRlbSAoaWYgYW55KQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PHNwYW4gY2xhc3M9ImVtcGhhc2lzIj48ZW0+UmV0dXJuczwvZW0+PC9zcGFuPiA6PC9zcGFuPjwvdGQ+PHRkPjAgdGhlIGFkZGl0aW9uIHN1Y2NlZWRlZCBhbmQgLTEgaW4gY2FzZSBvZiBlcnJvci4KPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2Rpdj48L2Rpdj48aHIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS90cmFuc2l0aW9uYWwiPjwvaHI+PGRpdiBjbGFzcz0icmVmc2VjdDIiIGxhbmc9ImVuIj48aDM+PGEgbmFtZT0ieG1sSGFzaFJlbW92ZUVudHJ5Ij48L2E+eG1sSGFzaFJlbW92ZUVudHJ5ICgpPC9oMz48cHJlIGNsYXNzPSJwcm9ncmFtbGlzdGluZyI+aW50ICAgICAgICAgeG1sSGFzaFJlbW92ZUVudHJ5ICAgICAgICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gdGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaERlYWxsb2NhdG9yIj54bWxIYXNoRGVhbGxvY2F0b3I8L2E+IGYpOzwvcHJlPjxwPgpGaW5kIHRoZSB1c2VyZGF0YSBzcGVjaWZpZWQgYnkgdGhlIDxpPjx0dD5uYW1lPC90dD48L2k+IGFuZCByZW1vdmUKaXQgZnJvbSB0aGUgaGFzaCA8aT48dHQ+dGFibGU8L3R0PjwvaT4uIEV4aXN0aW5nIHVzZXJkYXRhIGZvciB0aGlzIHR1cGxlIHdpbGwgYmUgcmVtb3ZlZAphbmQgZnJlZWQgd2l0aCA8aT48dHQ+ZjwvdHQ+PC9pPi48L3A+PHA+Cgo8L3A+PGRpdiBjbGFzcz0idmFyaWFibGVsaXN0Ij48dGFibGUgYm9yZGVyPSIwIj48Y29sIGFsaWduPSJsZWZ0IiB2YWxpZ249InRvcCI+PHRib2R5Pjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD50YWJsZTwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiB0aGUgaGFzaCB0YWJsZQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0Pm5hbWU8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gdGhlIG5hbWUgb2YgdGhlIHVzZXJkYXRhCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+ZjwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiB0aGUgZGVhbGxvY2F0b3IgZnVuY3Rpb24gZm9yIHJlbW92ZWQgaXRlbSAoaWYgYW55KQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PHNwYW4gY2xhc3M9ImVtcGhhc2lzIj48ZW0+UmV0dXJuczwvZW0+PC9zcGFuPiA6PC9zcGFuPjwvdGQ+PHRkPjAgaWYgdGhlIHJlbW92YWwgc3VjY2VlZGVkIGFuZCAtMSBpbiBjYXNlIG9mIGVycm9yIG9yIG5vdCBmb3VuZC4KPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2Rpdj48L2Rpdj48aHIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS90cmFuc2l0aW9uYWwiPjwvaHI+PGRpdiBjbGFzcz0icmVmc2VjdDIiIGxhbmc9ImVuIj48aDM+PGEgbmFtZT0ieG1sSGFzaFJlbW92ZUVudHJ5MiI+PC9hPnhtbEhhc2hSZW1vdmVFbnRyeTIgKCk8L2gzPjxwcmUgY2xhc3M9InByb2dyYW1saXN0aW5nIj5pbnQgICAgICAgICB4bWxIYXNoUmVtb3ZlRW50cnkyICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZTIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaERlYWxsb2NhdG9yIj54bWxIYXNoRGVhbGxvY2F0b3I8L2E+IGYpOzwvcHJlPjxwPgpGaW5kIHRoZSB1c2VyZGF0YSBzcGVjaWZpZWQgYnkgdGhlICg8aT48dHQ+bmFtZTwvdHQ+PC9pPiwgPGk+PHR0Pm5hbWUyPC90dD48L2k+KSB0dXBsZSBhbmQgcmVtb3ZlCml0IGZyb20gdGhlIGhhc2ggPGk+PHR0PnRhYmxlPC90dD48L2k+LiBFeGlzdGluZyB1c2VyZGF0YSBmb3IgdGhpcyB0dXBsZSB3aWxsIGJlIHJlbW92ZWQKYW5kIGZyZWVkIHdpdGggPGk+PHR0PmY8L3R0PjwvaT4uPC9wPjxwPgoKPC9wPjxkaXYgY2xhc3M9InZhcmlhYmxlbGlzdCI+PHRhYmxlIGJvcmRlcj0iMCI+PGNvbCBhbGlnbj0ibGVmdCIgdmFsaWduPSJ0b3AiPjx0Ym9keT48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+dGFibGU8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gdGhlIGhhc2ggdGFibGUKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBuYW1lIG9mIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0Pm5hbWUyPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IGEgc2Vjb25kIG5hbWUgb2YgdGhlIHVzZXJkYXRhCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+ZjwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiB0aGUgZGVhbGxvY2F0b3IgZnVuY3Rpb24gZm9yIHJlbW92ZWQgaXRlbSAoaWYgYW55KQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PHNwYW4gY2xhc3M9ImVtcGhhc2lzIj48ZW0+UmV0dXJuczwvZW0+PC9zcGFuPiA6PC9zcGFuPjwvdGQ+PHRkPjAgaWYgdGhlIHJlbW92YWwgc3VjY2VlZGVkIGFuZCAtMSBpbiBjYXNlIG9mIGVycm9yIG9yIG5vdCBmb3VuZC4KPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2Rpdj48L2Rpdj48aHIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS90cmFuc2l0aW9uYWwiPjwvaHI+PGRpdiBjbGFzcz0icmVmc2VjdDIiIGxhbmc9ImVuIj48aDM+PGEgbmFtZT0ieG1sSGFzaFJlbW92ZUVudHJ5MyI+PC9hPnhtbEhhc2hSZW1vdmVFbnRyeTMgKCk8L2gzPjxwcmUgY2xhc3M9InByb2dyYW1saXN0aW5nIj5pbnQgICAgICAgICB4bWxIYXNoUmVtb3ZlRW50cnkzICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZTIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hEZWFsbG9jYXRvciI+eG1sSGFzaERlYWxsb2NhdG9yPC9hPiBmKTs8L3ByZT48cD4KRmluZCB0aGUgdXNlcmRhdGEgc3BlY2lmaWVkIGJ5IHRoZSAoPGk+PHR0Pm5hbWU8L3R0PjwvaT4sIDxpPjx0dD5uYW1lMjwvdHQ+PC9pPiwgPGk+PHR0Pm5hbWUzPC90dD48L2k+KSB0dXBsZSBhbmQgcmVtb3ZlCml0IGZyb20gdGhlIGhhc2ggPGk+PHR0PnRhYmxlPC90dD48L2k+LiBFeGlzdGluZyB1c2VyZGF0YSBmb3IgdGhpcyB0dXBsZSB3aWxsIGJlIHJlbW92ZWQKYW5kIGZyZWVkIHdpdGggPGk+PHR0PmY8L3R0PjwvaT4uPC9wPjxwPgoKPC9wPjxkaXYgY2xhc3M9InZhcmlhYmxlbGlzdCI+PHRhYmxlIGJvcmRlcj0iMCI+PGNvbCBhbGlnbj0ibGVmdCIgdmFsaWduPSJ0b3AiPjx0Ym9keT48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+dGFibGU8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gdGhlIGhhc2ggdGFibGUKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBuYW1lIG9mIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0Pm5hbWUyPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IGEgc2Vjb25kIG5hbWUgb2YgdGhlIHVzZXJkYXRhCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+bmFtZTM8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gYSB0aGlyZCBuYW1lIG9mIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PmY8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gdGhlIGRlYWxsb2NhdG9yIGZ1bmN0aW9uIGZvciByZW1vdmVkIGl0ZW0gKGlmIGFueSkKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxzcGFuIGNsYXNzPSJlbXBoYXNpcyI+PGVtPlJldHVybnM8L2VtPjwvc3Bhbj4gOjwvc3Bhbj48L3RkPjx0ZD4wIGlmIHRoZSByZW1vdmFsIHN1Y2NlZWRlZCBhbmQgLTEgaW4gY2FzZSBvZiBlcnJvciBvciBub3QgZm91bmQuCjwvdGQ+PC90cj48L3Rib2R5PjwvdGFibGU+PC9kaXY+PC9kaXY+PGhyIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvdHJhbnNpdGlvbmFsIj48L2hyPjxkaXYgY2xhc3M9InJlZnNlY3QyIiBsYW5nPSJlbiI+PGgzPjxhIG5hbWU9InhtbEhhc2hMb29rdXAiPjwvYT54bWxIYXNoTG9va3VwICgpPC9oMz48cHJlIGNsYXNzPSJwcm9ncmFtbGlzdGluZyI+dm9pZCogICAgICAgeG1sSGFzaExvb2t1cCAgICAgICAgICAgICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gdGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUpOzwvcHJlPjxwPgpGaW5kIHRoZSB1c2VyZGF0YSBzcGVjaWZpZWQgYnkgdGhlIDxpPjx0dD5uYW1lPC90dD48L2k+LjwvcD48cD4KCjwvcD48ZGl2IGNsYXNzPSJ2YXJpYWJsZWxpc3QiPjx0YWJsZSBib3JkZXI9IjAiPjxjb2wgYWxpZ249ImxlZnQiIHZhbGlnbj0idG9wIj48dGJvZHk+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PnRhYmxlPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBoYXNoIHRhYmxlCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+bmFtZTwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiB0aGUgbmFtZSBvZiB0aGUgdXNlcmRhdGEKPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2Rpdj48L2Rpdj48aHIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS90cmFuc2l0aW9uYWwiPjwvaHI+PGRpdiBjbGFzcz0icmVmc2VjdDIiIGxhbmc9ImVuIj48aDM+PGEgbmFtZT0ieG1sSGFzaExvb2t1cDIiPjwvYT54bWxIYXNoTG9va3VwMiAoKTwvaDM+PHByZSBjbGFzcz0icHJvZ3JhbWxpc3RpbmciPnZvaWQqICAgICAgIHhtbEhhc2hMb29rdXAyICAgICAgICAgICAgICAgICAgKDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFRhYmxlUHRyIj54bWxIYXNoVGFibGVQdHI8L2E+IHRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lMik7PC9wcmU+PHA+CkZpbmQgdGhlIHVzZXJkYXRhIHNwZWNpZmllZCBieSB0aGUgKDxpPjx0dD5uYW1lPC90dD48L2k+LCA8aT48dHQ+bmFtZTI8L3R0PjwvaT4pIHR1cGxlLjwvcD48cD4KCjwvcD48ZGl2IGNsYXNzPSJ2YXJpYWJsZWxpc3QiPjx0YWJsZSBib3JkZXI9IjAiPjxjb2wgYWxpZ249ImxlZnQiIHZhbGlnbj0idG9wIj48dGJvZHk+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PnRhYmxlPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBoYXNoIHRhYmxlCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+bmFtZTwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiB0aGUgbmFtZSBvZiB0aGUgdXNlcmRhdGEKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lMjwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiBhIHNlY29uZCBuYW1lIG9mIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PC90Ym9keT48L3RhYmxlPjwvZGl2PjwvZGl2PjxociB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL3RyYW5zaXRpb25hbCI+PC9ocj48ZGl2IGNsYXNzPSJyZWZzZWN0MiIgbGFuZz0iZW4iPjxoMz48YSBuYW1lPSJ4bWxIYXNoTG9va3VwMyI+PC9hPnhtbEhhc2hMb29rdXAzICgpPC9oMz48cHJlIGNsYXNzPSJwcm9ncmFtbGlzdGluZyI+dm9pZCogICAgICAgeG1sSGFzaExvb2t1cDMgICAgICAgICAgICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gdGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lMyk7PC9wcmU+PHA+CkZpbmQgdGhlIHVzZXJkYXRhIHNwZWNpZmllZCBieSB0aGUgKDxpPjx0dD5uYW1lPC90dD48L2k+LCA8aT48dHQ+bmFtZTI8L3R0PjwvaT4sIDxpPjx0dD5uYW1lMzwvdHQ+PC9pPikgdHVwbGUuPC9wPjxwPgoKPC9wPjxkaXYgY2xhc3M9InZhcmlhYmxlbGlzdCI+PHRhYmxlIGJvcmRlcj0iMCI+PGNvbCBhbGlnbj0ibGVmdCIgdmFsaWduPSJ0b3AiPjx0Ym9keT48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+dGFibGU8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gdGhlIGhhc2ggdGFibGUKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBuYW1lIG9mIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0Pm5hbWUyPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IGEgc2Vjb25kIG5hbWUgb2YgdGhlIHVzZXJkYXRhCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+bmFtZTM8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gYSB0aGlyZCBuYW1lIG9mIHRoZSB1c2VyZGF0YQo8L3RkPjwvdHI+PC90Ym9keT48L3RhYmxlPjwvZGl2PjwvZGl2PjxociB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL3RyYW5zaXRpb25hbCI+PC9ocj48ZGl2IGNsYXNzPSJyZWZzZWN0MiIgbGFuZz0iZW4iPjxoMz48YSBuYW1lPSJ4bWxIYXNoQ29weSI+PC9hPnhtbEhhc2hDb3B5ICgpPC9oMz48cHJlIGNsYXNzPSJwcm9ncmFtbGlzdGluZyI+PGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4geG1sSGFzaENvcHkgICAgICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoQ29waWVyIj54bWxIYXNoQ29waWVyPC9hPiBmKTs8L3ByZT48cD4KU2NhbiB0aGUgaGFzaCA8aT48dHQ+dGFibGU8L3R0PjwvaT4gYW5kIGFwcGxpZWQgPGk+PHR0PmY8L3R0PjwvaT4gdG8gZWFjaCB2YWx1ZS48L3A+PHA+Cgo8L3A+PGRpdiBjbGFzcz0idmFyaWFibGVsaXN0Ij48dGFibGUgYm9yZGVyPSIwIj48Y29sIGFsaWduPSJsZWZ0IiB2YWxpZ249InRvcCI+PHRib2R5Pjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD50YWJsZTwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiB0aGUgaGFzaCB0YWJsZQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PmY8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gIHRoZSBjb3BpZXIgZnVuY3Rpb24gZm9yIGl0ZW1zIGluIHRoZSBoYXNoCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48c3BhbiBjbGFzcz0iZW1waGFzaXMiPjxlbT5SZXR1cm5zPC9lbT48L3NwYW4+IDo8L3NwYW4+PC90ZD48dGQ+dGhlIG5ldyB0YWJsZSBvciBOVUxMIGluIGNhc2Ugb2YgZXJyb3IuCjwvdGQ+PC90cj48L3Rib2R5PjwvdGFibGU+PC9kaXY+PC9kaXY+PGhyIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvdHJhbnNpdGlvbmFsIj48L2hyPjxkaXYgY2xhc3M9InJlZnNlY3QyIiBsYW5nPSJlbiI+PGgzPjxhIG5hbWU9InhtbEhhc2hTaXplIj48L2E+eG1sSGFzaFNpemUgKCk8L2gzPjxwcmUgY2xhc3M9InByb2dyYW1saXN0aW5nIj5pbnQgICAgICAgICB4bWxIYXNoU2l6ZSAgICAgICAgICAgICAgICAgICAgICg8YSBocmVmPSJsaWJ4bWwtaGFzaC5odG1sI3htbEhhc2hUYWJsZVB0ciI+eG1sSGFzaFRhYmxlUHRyPC9hPiB0YWJsZSk7PC9wcmU+PHA+ClF1ZXJ5IHRoZSBudW1iZXIgb2YgZWxlbWVudHMgaW5zdGFsbGVkIGluIHRoZSBoYXNoIDxpPjx0dD50YWJsZTwvdHQ+PC9pPi48L3A+PHA+Cgo8L3A+PGRpdiBjbGFzcz0idmFyaWFibGVsaXN0Ij48dGFibGUgYm9yZGVyPSIwIj48Y29sIGFsaWduPSJsZWZ0IiB2YWxpZ249InRvcCI+PHRib2R5Pjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD50YWJsZTwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiB0aGUgaGFzaCB0YWJsZQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PHNwYW4gY2xhc3M9ImVtcGhhc2lzIj48ZW0+UmV0dXJuczwvZW0+PC9zcGFuPiA6PC9zcGFuPjwvdGQ+PHRkPnRoZSBudW1iZXIgb2YgZWxlbWVudHMgaW4gdGhlIGhhc2ggdGFibGUgb3IKLTEgaW4gY2FzZSBvZiBlcnJvcgo8L3RkPjwvdHI+PC90Ym9keT48L3RhYmxlPjwvZGl2PjwvZGl2PjxociB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL3RyYW5zaXRpb25hbCI+PC9ocj48ZGl2IGNsYXNzPSJyZWZzZWN0MiIgbGFuZz0iZW4iPjxoMz48YSBuYW1lPSJ4bWxIYXNoU2NhbiI+PC9hPnhtbEhhc2hTY2FuICgpPC9oMz48cHJlIGNsYXNzPSJwcm9ncmFtbGlzdGluZyI+dm9pZCAgICAgICAgeG1sSGFzaFNjYW4gICAgICAgICAgICAgICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gdGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFNjYW5uZXIiPnhtbEhhc2hTY2FubmVyPC9hPiBmLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpkYXRhKTs8L3ByZT48cD4KU2NhbiB0aGUgaGFzaCA8aT48dHQ+dGFibGU8L3R0PjwvaT4gYW5kIGFwcGxpZWQgPGk+PHR0PmY8L3R0PjwvaT4gdG8gZWFjaCB2YWx1ZS48L3A+PHA+Cgo8L3A+PGRpdiBjbGFzcz0idmFyaWFibGVsaXN0Ij48dGFibGUgYm9yZGVyPSIwIj48Y29sIGFsaWduPSJsZWZ0IiB2YWxpZ249InRvcCI+PHRib2R5Pjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD50YWJsZTwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiB0aGUgaGFzaCB0YWJsZQo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PmY8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gIHRoZSBzY2FubmVyIGZ1bmN0aW9uIGZvciBpdGVtcyBpbiB0aGUgaGFzaAo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PmRhdGE8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gIGV4dHJhIGRhdGEgcGFzc2VkIHRvIGYKPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2Rpdj48L2Rpdj48aHIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS90cmFuc2l0aW9uYWwiPjwvaHI+PGRpdiBjbGFzcz0icmVmc2VjdDIiIGxhbmc9ImVuIj48aDM+PGEgbmFtZT0ieG1sSGFzaFNjYW4zIj48L2E+eG1sSGFzaFNjYW4zICgpPC9oMz48cHJlIGNsYXNzPSJwcm9ncmFtbGlzdGluZyI+dm9pZCAgICAgICAgeG1sSGFzaFNjYW4zICAgICAgICAgICAgICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gdGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IDxhIGhyZWY9ImxpYnhtbC10cmVlLmh0bWwjeG1sQ2hhciI+eG1sQ2hhcjwvYT4gKm5hbWUyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lMywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoU2Nhbm5lciI+eG1sSGFzaFNjYW5uZXI8L2E+IGYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpOzwvcHJlPjxwPgpTY2FuIHRoZSBoYXNoIDxpPjx0dD50YWJsZTwvdHQ+PC9pPiBhbmQgYXBwbGllZCA8aT48dHQ+ZjwvdHQ+PC9pPiB0byBlYWNoIHZhbHVlIG1hdGNoaW5nCig8aT48dHQ+bmFtZTwvdHQ+PC9pPiwgPGk+PHR0Pm5hbWUyPC90dD48L2k+LCA8aT48dHQ+bmFtZTM8L3R0PjwvaT4pIHR1cGxlLiBJZiBvbmUgb2YgdGhlIG5hbWVzIGlzIG51bGwsCnRoZSBjb21wYXJpc29uIGlzIGNvbnNpZGVyZWQgdG8gbWF0Y2guPC9wPjxwPgoKPC9wPjxkaXYgY2xhc3M9InZhcmlhYmxlbGlzdCI+PHRhYmxlIGJvcmRlcj0iMCI+PGNvbCBhbGlnbj0ibGVmdCIgdmFsaWduPSJ0b3AiPjx0Ym9keT48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+dGFibGU8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gdGhlIGhhc2ggdGFibGUKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBuYW1lIG9mIHRoZSB1c2VyZGF0YSBvciBOVUxMCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+bmFtZTI8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gYSBzZWNvbmQgbmFtZSBvZiB0aGUgdXNlcmRhdGEgb3IgTlVMTAo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0Pm5hbWUzPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IGEgdGhpcmQgbmFtZSBvZiB0aGUgdXNlcmRhdGEgb3IgTlVMTAo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PmY8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gIHRoZSBzY2FubmVyIGZ1bmN0aW9uIGZvciBpdGVtcyBpbiB0aGUgaGFzaAo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PmRhdGE8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gIGV4dHJhIGRhdGEgcGFzc2VkIHRvIGYKPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2Rpdj48L2Rpdj48aHIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS90cmFuc2l0aW9uYWwiPjwvaHI+PGRpdiBjbGFzcz0icmVmc2VjdDIiIGxhbmc9ImVuIj48aDM+PGEgbmFtZT0ieG1sSGFzaFNjYW5GdWxsIj48L2E+eG1sSGFzaFNjYW5GdWxsICgpPC9oMz48cHJlIGNsYXNzPSJwcm9ncmFtbGlzdGluZyI+dm9pZCAgICAgICAgeG1sSGFzaFNjYW5GdWxsICAgICAgICAgICAgICAgICAoPGEgaHJlZj0ibGlieG1sLWhhc2guaHRtbCN4bWxIYXNoVGFibGVQdHIiPnhtbEhhc2hUYWJsZVB0cjwvYT4gdGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFNjYW5uZXJGdWxsIj54bWxIYXNoU2Nhbm5lckZ1bGw8L2E+IGYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpOzwvcHJlPjxwPgpTY2FuIHRoZSBoYXNoIDxpPjx0dD50YWJsZTwvdHQ+PC9pPiBhbmQgYXBwbGllZCA8aT48dHQ+ZjwvdHQ+PC9pPiB0byBlYWNoIHZhbHVlLjwvcD48cD4KCjwvcD48ZGl2IGNsYXNzPSJ2YXJpYWJsZWxpc3QiPjx0YWJsZSBib3JkZXI9IjAiPjxjb2wgYWxpZ249ImxlZnQiIHZhbGlnbj0idG9wIj48dGJvZHk+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PnRhYmxlPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBoYXNoIHRhYmxlCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+ZjwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiAgdGhlIHNjYW5uZXIgZnVuY3Rpb24gZm9yIGl0ZW1zIGluIHRoZSBoYXNoCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+ZGF0YTwvdHQ+PC9pPqA6PC9zcGFuPjwvdGQ+PHRkPiAgZXh0cmEgZGF0YSBwYXNzZWQgdG8gZgo8L3RkPjwvdHI+PC90Ym9keT48L3RhYmxlPjwvZGl2PjwvZGl2PjxociB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL3RyYW5zaXRpb25hbCI+PC9ocj48ZGl2IGNsYXNzPSJyZWZzZWN0MiIgbGFuZz0iZW4iPjxoMz48YSBuYW1lPSJ4bWxIYXNoU2NhbkZ1bGwzIj48L2E+eG1sSGFzaFNjYW5GdWxsMyAoKTwvaDM+PHByZSBjbGFzcz0icHJvZ3JhbWxpc3RpbmciPnZvaWQgICAgICAgIHhtbEhhc2hTY2FuRnVsbDMgICAgICAgICAgICAgICAgKDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFRhYmxlUHRyIj54bWxIYXNoVGFibGVQdHI8L2E+IHRhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCA8YSBocmVmPSJsaWJ4bWwtdHJlZS5odG1sI3htbENoYXIiPnhtbENoYXI8L2E+ICpuYW1lMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgPGEgaHJlZj0ibGlieG1sLXRyZWUuaHRtbCN4bWxDaGFyIj54bWxDaGFyPC9hPiAqbmFtZTMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9ImxpYnhtbC1oYXNoLmh0bWwjeG1sSGFzaFNjYW5uZXJGdWxsIj54bWxIYXNoU2Nhbm5lckZ1bGw8L2E+IGYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpOzwvcHJlPjxwPgpTY2FuIHRoZSBoYXNoIDxpPjx0dD50YWJsZTwvdHQ+PC9pPiBhbmQgYXBwbGllZCA8aT48dHQ+ZjwvdHQ+PC9pPiB0byBlYWNoIHZhbHVlIG1hdGNoaW5nCig8aT48dHQ+bmFtZTwvdHQ+PC9pPiwgPGk+PHR0Pm5hbWUyPC90dD48L2k+LCA8aT48dHQ+bmFtZTM8L3R0PjwvaT4pIHR1cGxlLiBJZiBvbmUgb2YgdGhlIG5hbWVzIGlzIG51bGwsCnRoZSBjb21wYXJpc29uIGlzIGNvbnNpZGVyZWQgdG8gbWF0Y2guPC9wPjxwPgoKPC9wPjxkaXYgY2xhc3M9InZhcmlhYmxlbGlzdCI+PHRhYmxlIGJvcmRlcj0iMCI+PGNvbCBhbGlnbj0ibGVmdCIgdmFsaWduPSJ0b3AiPjx0Ym9keT48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+dGFibGU8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gdGhlIGhhc2ggdGFibGUKPC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gY2xhc3M9InRlcm0iPjxpPjx0dD5uYW1lPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IHRoZSBuYW1lIG9mIHRoZSB1c2VyZGF0YSBvciBOVUxMCjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIGNsYXNzPSJ0ZXJtIj48aT48dHQ+bmFtZTI8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gYSBzZWNvbmQgbmFtZSBvZiB0aGUgdXNlcmRhdGEgb3IgTlVMTAo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0Pm5hbWUzPC90dD48L2k+oDo8L3NwYW4+PC90ZD48dGQ+IGEgdGhpcmQgbmFtZSBvZiB0aGUgdXNlcmRhdGEgb3IgTlVMTAo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PmY8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gIHRoZSBzY2FubmVyIGZ1bmN0aW9uIGZvciBpdGVtcyBpbiB0aGUgaGFzaAo8L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBjbGFzcz0idGVybSI+PGk+PHR0PmRhdGE8L3R0PjwvaT6gOjwvc3Bhbj48L3RkPjx0ZD4gIGV4dHJhIGRhdGEgcGFzc2VkIHRvIGYKPC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48dGFibGUgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS90cmFuc2l0aW9uYWwiIGNsYXNzPSJuYXZpZ2F0aW9uIiB3aWR0aD0iMTAwJSIgc3VtbWFyeT0iTmF2aWdhdGlvbiBmb290ZXIiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+PHRyIHZhbGlnbj0ibWlkZGxlIj48dGQgYWxpZ249ImxlZnQiPjxhIGFjY2Vzc2tleT0icCIgaHJlZj0ibGlieG1sLWVuY29kaW5nLmh0bWwiPjxiPiZsdDsmbHQ7oGVuY29kaW5nPC9iPjwvYT48L3RkPjx0ZCBhbGlnbj0icmlnaHQiPjxhIGFjY2Vzc2tleT0ibiIgaHJlZj0ibGlieG1sLWRlYnVnWE1MLmh0bWwiPjxiPmRlYnVnWE1MoCZndDsmZ3Q7PC9iPjwvYT48L3RkPjwvdHI+PC90YWJsZT48L2JvZHk+PC9odG1sPgo=