PCEtLSAkSWQkIC0tPgo8aHRtbCB4bWxuczp2PSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOnZtbCIKeG1sbnM6bz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6b2ZmaWNlIgp4bWxuczp3PSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTp3b3JkIgp4bWxucz0iaHR0cDovL3d3dy53My5vcmcvVFIvUkVDLWh0bWw0MCI+CjxsaW5rIHJlbD0nc3R5bGVzaGVldCcgdHlwZT0ndGV4dC9jc3MnIGhyZWY9J2Nzcy9zaXRlLmNzcyc+CjxsaW5rIHJlbD0nc3R5bGVzaGVldCcgdHlwZT0ndGV4dC9jc3MnIGhyZWY9J2Nzcy9kaWFncmFtLmNzcyc+CjxzdHlsZSB0eXBlPSd0ZXh0L2Nzcyc+CiAgIC5ub3RlIHsgZm9udC1zaXplOiBzbWFsbGVyIH0KPC9zdHlsZT4KCjxoZWFkPgo8bWV0YSBodHRwLWVxdWl2PUNvbnRlbnQtVHlwZSBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9d2luZG93cy0xMjUyIj4KPG1ldGEgbmFtZT1Qcm9nSWQgY29udGVudD1Xb3JkLkRvY3VtZW50Pgo8bWV0YSBuYW1lPUdlbmVyYXRvciBjb250ZW50PSJNaWNyb3NvZnQgV29yZCA5Ij4KPG1ldGEgbmFtZT1PcmlnaW5hdG9yIGNvbnRlbnQ9Ik1pY3Jvc29mdCBXb3JkIDkiPgo8bGluayByZWw9RmlsZS1MaXN0IGhyZWY9Ii4vdmFsaWRhdGlvbl9maWxlcy9maWxlbGlzdC54bWwiPgo8bGluayByZWw9RWRpdC1UaW1lLURhdGEgaHJlZj0iLi92YWxpZGF0aW9uX2ZpbGVzL2VkaXRkYXRhLm1zbyI+CjxsaW5rIHJlbD1PTEUtT2JqZWN0LURhdGEgaHJlZj0iLi92YWxpZGF0aW9uX2ZpbGVzL29sZWRhdGEubXNvIj4KPCEtLVtpZiAhbXNvXT4KPHN0eWxlPgp2XDoqIHtiZWhhdmlvcjp1cmwoI2RlZmF1bHQjVk1MKTt9Cm9cOioge2JlaGF2aW9yOnVybCgjZGVmYXVsdCNWTUwpO30Kd1w6KiB7YmVoYXZpb3I6dXJsKCNkZWZhdWx0I1ZNTCk7fQouc2hhcGUge2JlaGF2aW9yOnVybCgjZGVmYXVsdCNWTUwpO30KPC9zdHlsZT4KPCFbZW5kaWZdLS0+Cjx0aXRsZT5WYWxpZGF0aW9uPC90aXRsZT4KPCEtLVtpZiBndGUgbXNvIDldPjx4bWw+CiA8bzpEb2N1bWVudFByb3BlcnRpZXM+CiAgPG86QXV0aG9yPkplZmZyZXkgUm9kcmlndWV6PC9vOkF1dGhvcj4KICA8bzpUZW1wbGF0ZT5Ob3JtYWw8L286VGVtcGxhdGU+CiAgPG86TGFzdEF1dGhvcj5KZWZmcmV5IFJvZHJpZ3VlejwvbzpMYXN0QXV0aG9yPgogIDxvOlJldmlzaW9uPjU8L286UmV2aXNpb24+CiAgPG86VG90YWxUaW1lPjQyMTwvbzpUb3RhbFRpbWU+CiAgPG86TGFzdFByaW50ZWQ+MjAwMC0xMC0wNlQyMjo1MTowMFo8L286TGFzdFByaW50ZWQ+CiAgPG86Q3JlYXRlZD4yMDAwLTEwLTA3VDAwOjEzOjAwWjwvbzpDcmVhdGVkPgogIDxvOkxhc3RTYXZlZD4yMDAwLTEwLTA3VDAyOjI3OjAwWjwvbzpMYXN0U2F2ZWQ+CiAgPG86UGFnZXM+MjwvbzpQYWdlcz4KICA8bzpXb3Jkcz41NTM8L286V29yZHM+CiAgPG86Q2hhcmFjdGVycz4zMTU1PC9vOkNoYXJhY3RlcnM+CiAgPG86Q29tcGFueT5JQk08L286Q29tcGFueT4KICA8bzpMaW5lcz4yNjwvbzpMaW5lcz4KICA8bzpQYXJhZ3JhcGhzPjY8L286UGFyYWdyYXBocz4KICA8bzpDaGFyYWN0ZXJzV2l0aFNwYWNlcz4zODc0PC9vOkNoYXJhY3RlcnNXaXRoU3BhY2VzPgogIDxvOlZlcnNpb24+OS4zODIxPC9vOlZlcnNpb24+CiA8L286RG9jdW1lbnRQcm9wZXJ0aWVzPgo8L3htbD48IVtlbmRpZl0tLT4KPHN0eWxlPgo8IS0tCiAvKiBTdHlsZSBEZWZpbml0aW9ucyAqLwpwLk1zb05vcm1hbCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsCgl7bXNvLXN0eWxlLXBhcmVudDoiIjsKCW1hcmdpbjowaW47CgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7Cgltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47Cglmb250LXNpemU6MTIuMHB0OwoJZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7Cgltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjt9CmgxCgl7bXNvLXN0eWxlLW5leHQ6Tm9ybWFsOwoJbWFyZ2luOjBpbjsKCW1hcmdpbi1ib3R0b206LjAwMDFwdDsKCWxpbmUtaGVpZ2h0OjIwMCU7Cgltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47CglwYWdlLWJyZWFrLWFmdGVyOmF2b2lkOwoJbXNvLW91dGxpbmUtbGV2ZWw6MTsKCWZvbnQtc2l6ZToxMi4wcHQ7Cglmb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKCW1zby1mb250LWtlcm5pbmc6MHB0OwoJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTsKCXRleHQtdW5kZXJsaW5lOnNpbmdsZTt9CmgyCgl7bXNvLXN0eWxlLW5leHQ6Tm9ybWFsOwoJbWFyZ2luLXRvcDowaW47CgltYXJnaW4tcmlnaHQ6MGluOwoJbWFyZ2luLWJvdHRvbTowaW47CgltYXJnaW4tbGVmdDouMjVpbjsKCW1hcmdpbi1ib3R0b206LjAwMDFwdDsKCW1zby1wYWdpbmF0aW9uOndpZG93LW9ycGhhbjsKCXBhZ2UtYnJlYWstYWZ0ZXI6YXZvaWQ7Cgltc28tb3V0bGluZS1sZXZlbDoyOwoJZm9udC1zaXplOjEyLjBwdDsKCWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iOwoJZm9udC13ZWlnaHQ6bm9ybWFsOwoJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTsKCXRleHQtdW5kZXJsaW5lOnNpbmdsZTt9CnAuTXNvQ2FwdGlvbiwgbGkuTXNvQ2FwdGlvbiwgZGl2Lk1zb0NhcHRpb24KCXttc28tc3R5bGUtbmV4dDpOb3JtYWw7CgltYXJnaW4tdG9wOjYuMHB0OwoJbWFyZ2luLXJpZ2h0OjBpbjsKCW1hcmdpbi1ib3R0b206Ni4wcHQ7CgltYXJnaW4tbGVmdDowaW47Cgltc28tcGFnaW5hdGlvbjp3aWRvdy1vcnBoYW47Cglmb250LXNpemU6MTAuMHB0OwoJZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7Cgltc28tZmFyZWFzdC1mb250LWZhbWlseToiVGltZXMgTmV3IFJvbWFuIjsKCWZvbnQtd2VpZ2h0OmJvbGQ7fQphOmxpbmssIHNwYW4uTXNvSHlwZXJsaW5rCgl7Y29sb3I6Ymx1ZTsKCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7Cgl0ZXh0LXVuZGVybGluZTpzaW5nbGU7fQphOnZpc2l0ZWQsIHNwYW4uTXNvSHlwZXJsaW5rRm9sbG93ZWQKCXtjb2xvcjpwdXJwbGU7Cgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOwoJdGV4dC11bmRlcmxpbmU6c2luZ2xlO30KQHBhZ2UgU2VjdGlvbjEKCXtzaXplOjguNWluIDExLjBpbjsKCW1hcmdpbjoxLjBpbiAxLjI1aW4gMS4waW4gMS4yNWluOwoJbXNvLWhlYWRlci1tYXJnaW46LjVpbjsKCW1zby1mb290ZXItbWFyZ2luOi41aW47Cgltc28tcGFwZXItc291cmNlOjA7fQpkaXYuU2VjdGlvbjEKCXtwYWdlOlNlY3Rpb24xO30KIC8qIExpc3QgRGVmaW5pdGlvbnMgKi8KQGxpc3QgbDAKCXttc28tbGlzdC1pZDo5MTk2NzU3MDE7Cgltc28tbGlzdC10eXBlOmh5YnJpZDsKCW1zby1saXN0LXRlbXBsYXRlLWlkczotMTMzMTU0MDE4IDY3Njk4NzAzIDY3Njk4NjkxIDY3Njk4NjkzIDY3Njk4Njg5IDY3Njk4NjkxIDY3Njk4NjkzIDY3Njk4Njg5IDY3Njk4NjkxIDY3Njk4NjkzO30Kb2wKCXttYXJnaW4tYm90dG9tOjBpbjt9CnVsCgl7bWFyZ2luLWJvdHRvbTowaW47fQotLT4KPC9zdHlsZT4KPCEtLVtpZiBndGUgbXNvIDldPjx4bWw+CiA8bzpzaGFwZWRlZmF1bHRzIHY6ZXh0PSJlZGl0IiBzcGlkbWF4PSIxMDI3Ii8+CjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPgogPG86c2hhcGVsYXlvdXQgdjpleHQ9ImVkaXQiPgogIDxvOmlkbWFwIHY6ZXh0PSJlZGl0IiBkYXRhPSIxIi8+CiA8L286c2hhcGVsYXlvdXQ+PC94bWw+PCFbZW5kaWZdLS0+CjwvaGVhZD4KCjxib2R5IGxhbmc9RU4tVVMgbGluaz1ibHVlIHZsaW5rPXB1cnBsZSBzdHlsZT0ndGFiLWludGVydmFsOi41aW4nPgoKPGRpdiBjbGFzcz1TZWN0aW9uMT4KCjxoMSBzdHlsZT0nbGluZS1oZWlnaHQ6bm9ybWFsJz48c3BhbiBzdHlsZT0nZm9udC1zaXplOjE4LjBwdDttc28tYmlkaS1mb250LXNpemU6CjEyLjBwdCc+VmFsaWRhdGlvbjxvOnA+PC9vOnA+PC9zcGFuPjwvaDE+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+PCFbaWYgIXN1cHBvcnRFbXB0eVBhcmFzXT4mbmJzcDs8IVtlbmRpZl0+PG86cD48L286cD48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+VGhlIDxpPlZhbGlkYXRvciA8L2k+aXMgYSBjb21wb25lbnQgaW4gdGhpcyBhcmNoaXRlY3R1cmUKc2luY2UgaXQgaW1wbGVtZW50cyB0aGUgPGk+Q29tcG9uZW50PC9pPiBpbnRlcmZhY2UgYW5kIGFueSBjbGFzcyB0aGF0CmltcGxlbWVudHMgdGhlIENvbXBvbmVudCBNYW5hZ2VyIGludGVyZmFjZSBjYW4gbWFuYWdlIGl0LiBFLmcuIGEgcGFyc2VyIHdvdWxkCmNvbmZpZ3VyZSB0aGUgPGk+Y29tcG9uZW50czwvaT4gdGhhdCBpdCBuZWVkcyB0aHJvdWdoIHRoaXMgaW50ZXJmYWNlIGJ5CmFkaGVyaW5nIHRvIHRoZSBndWlkZWxpbmUgc3BlbGxlZCBvdXQgaW4gdGhlIDxhCmhyZWY9ImFyY2hpdGVjdHVyZS5odG1sI0NvbmZpZ3VyYXRpb24uU2V0dGluZ3NNYW5hZ2VtZW50Ij5TZXR0aW5nIE1hbmFnZW1lbnQ8L2E+CnNlY3Rpb24gb2YgdGhpcyBhcmNoaXRlY3R1cmUgb3ZlcnZpZXcuPC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPlRoZSA8aT5Db21wb25lbnQgTWFuYWdlcjwvaT4gaXMgaW4gY2hhcmdlIG9mIHNldHRpbmcgdXAgdGhlCmZvbGxvd2luZyBpbnRlcm5hbCA8aT5WYWxpZGF0b3I8L2k+IGZpZWxkczogPGk+U3ltYm9sVGFibGUsIEdyYW1tYXJQb29sIGFuZApFcnJvckZvcm1hdHRlci48L2k+PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPlRoZSBWYWxpZGF0b3IgaXMgdW5pdmVyc2FsIHNpbmNlIGl0IGlzIGJvdGggYSBmaWx0ZXIgYW5kIGEKc291cmNlIG9mIGRvY3VtZW50IGV2ZW50cyByZWdhcmRsZXNzIG9mIHRoZSBvdGhlciBjb21wb25lbnRzIGNvbm5lY3RlZCB0byBpbgp0aGUgcGlwZWxpbmUgYXJjaGl0ZWN0dXJlLiBTZWUgZmlndXJlIDEuIDwvcD4KCjxwIGNsYXNzPU1zb05vcm1hbCBhbGlnbj1jZW50ZXIgc3R5bGU9J3RleHQtYWxpZ246Y2VudGVyJz48IVtpZiAhc3VwcG9ydEVtcHR5UGFyYXNdPiZuYnNwOzwhW2VuZGlmXT48bzpwPjwvbzpwPjwvcD4KCjxwIGNsYXNzPU1zb0NhcHRpb24gYWxpZ249Y2VudGVyIHN0eWxlPSd0ZXh0LWFsaWduOmNlbnRlcic+PGltZyBib3JkZXI9MAp3aWR0aD0zODEgaGVpZ2h0PTE1MCBpZD0iX3gwMDAwX2kxMDI1IiBzcmM9ImltYWdlc1xwaXBlbGluZS5naWYiPjwvcD4KCjxwIGNsYXNzPU1zb0NhcHRpb24gYWxpZ249Y2VudGVyIHN0eWxlPSd0ZXh0LWFsaWduOmNlbnRlcic+RmlndXJlIDxzcGFuCnN0eWxlPSdtc28tZmllbGQtY29kZToiU0VRIEZpZ3VyZSBcXCogQVJBQklDIic+MTwvc3Bhbj4tIFBpcGVsaW5lIEFyY2hpdGVjdHVyZQotIFNvdXJjZXMgJmFtcDsgRmlsdGVyczwvcD4KCjxwIGNsYXNzPU1zb05vcm1hbD48c3BhbiBzdHlsZT0ibXNvLXNwYWNlcnVuOiB5ZXMiPqA8L3NwYW4+PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPlRoZSBmb2xsb3dpbmcgaXMgYW4gb3V0bGluZSBvZiB0aGUgdmFsaWRhdGlvbiBwcm9jZXNzIHVzZWQgYnkKdGhlIFZhbGlkYXRvcjo8L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+PCFbaWYgIXN1cHBvcnRFbXB0eVBhcmFzXT4mbmJzcDs8IVtlbmRpZl0+PG86cD48L286cD48L3A+Cgo8b2wgc3R5bGU9J21hcmdpbi10b3A6MGluJyBzdGFydD0xIHR5cGU9MT4KIDxsaSBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21zby1saXN0OmwwIGxldmVsMSBsZm8zO3RhYi1zdG9wczpsaXN0IC41aW4nPlRoZQogICAgIFZhbGlkYXRvciB1c2VzIHRoZSA8aT5HcmFtbWFyIHBvb2w8L2k+IHNldCBieSB0aGUgQ29tcG9uZW50IE1hbmFnZXIgdG8KICAgICBhY3F1aXJlIEdyYW1tYXJzLiBTZWUgPGEgaHJlZj0iI19HcmFtbWFyX3Bvb2xfYW5kIj5HcmFtbWFyIHBvb2wgYW5kCiAgICAgR3JhbW1hcnM8L2E+IGZvciBtb3JlIGRldGFpbHM8L2xpPgogPGxpIGNsYXNzPU1zb05vcm1hbCBzdHlsZT0nbXNvLWxpc3Q6bDAgbGV2ZWwxIGxmbzM7dGFiLXN0b3BzOmxpc3QgLjVpbic+VGhlCiAgICAgVmFsaWRhdG9yIHVzZXMgR3JhbW1hcpJzIGdldHRlciBtZXRob2RzIHRvIGdhaW4gYWNjZXNzIHRvIEVsZW1lbnQsCiAgICAgQXR0cmlidXRlLCBOb3RhdGlvbiwgYW5kIEVudGl0eSBkZWNsYXJhdGlvbnMuPC9saT4KIDxsaSBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21zby1saXN0OmwwIGxldmVsMSBsZm8zO3RhYi1zdG9wczpsaXN0IC41aW4nPldoZW4gYQogICAgIGRvY3VtZW50IGV2ZW50ICh0aHJvdWdoIHRoZSBEb2N1bWVudCBIYW5kbGVyIG9mIHRoZSBWYWxpZGF0b3IpIGlzIHJlY2VpdmVkCiAgICAgdGhlIHJlc3BlY3RpdmUgZGVjbGFyYXRpb24gaXMgb2J0YWluZWQgZnJvbSB0aGUgR3JhbW1hci4gPC9saT4KIDxsaSBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21zby1saXN0OmwwIGxldmVsMSBsZm8zO3RhYi1zdG9wczpsaXN0IC41aW4nPlRoZXNlCiAgICAgZGVjbGFyYXRpb25zIGFyZSB1c2VkIHRvIHZhbGlkYXRlIGNvbnRlbnQgYW5kIGNvbnRlbnQgbW9kZWwuIFNlZSA8YQogICAgIGhyZWY9IiNfRGF0YV90eXBlX2FuZCI+RGF0YSB0eXBlIGFuZCBDb250ZW50IG1vZGVsIHZhbGlkYXRvcnM8L2E+LjwvbGk+CiA8bGkgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtc28tbGlzdDpsMCBsZXZlbDEgbGZvMzt0YWItc3RvcHM6bGlzdCAuNWluJz5JZiBubwogICAgIHZhbGlkYXRpb24gZXJyb3JzIGFyZSBjYXVnaHQgb3IgcmV0dXJuZWQuIFRoZW4gd2UgZ2VuZXJhdGUgYSBkb2N1bWVudAogICAgIGV2ZW50IHVzaW5nIHRoZSByZWdpc3RlcmVkIERvY3VtZW50IGhhbmRsZXIgb2YgdGhlIG5leHQgY29tcG9uZW50IGluIHRoZQogICAgIHBpcGVsaW5lLjwvbGk+CiA8bGkgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtc28tbGlzdDpsMCBsZXZlbDEgbGZvMzt0YWItc3RvcHM6bGlzdCAuNWluJz5JZiBhCiAgICAgdmFsaWRhdGlvbiBlcnJvciBpcyBjYXVnaHQgb3IgcmV0dXJuZWQgdGhlbiB0aGUgZXJyb3IgaW5mb3JtYXRpb24gaXMKICAgICBmb3JtYXR0ZWQgdXNpbmcgdGhlIEVycm9yIEZvcm1hdHRlciB3aGljaCBpbiB0dXJuIG1heSBjYWxsIHRoZSBFcnJvcgogICAgIEhhbmRsZXIuPC9saT4KIDxsaSBjbGFzcz1Nc29Ob3JtYWwgc3R5bGU9J21zby1saXN0OmwwIGxldmVsMSBsZm8zO3RhYi1zdG9wczpsaXN0IC41aW4nPlRoZQogICAgIFZhbGlkYXRvciBjb21wb25lbnQgcmVzZXQgbWV0aG9kIGFsbG93cyBzZXR0aW5nIGEgbmV3IGNvbXBvbmVudCBtYW5hZ2VyLjwvbGk+Cjwvb2w+Cgo8aDI+PCFbaWYgIXN1cHBvcnRFbXB0eVBhcmFzXT4mbmJzcDs8IVtlbmRpZl0+PG86cD48L286cD48L2gyPgoKPGgxIHN0eWxlPSdsaW5lLWhlaWdodDpub3JtYWwnPjxhIG5hbWU9Il9EYXRhX3R5cGVfYW5kIj48L2E+PHNwYW4Kc3R5bGU9J2ZvbnQtc2l6ZToxOC4wcHQ7bXNvLWJpZGktZm9udC1zaXplOjEyLjBwdCc+RGF0YSB0eXBlIGFuZCBDb250ZW50IG1vZGVsCnZhbGlkYXRvcnM8L3NwYW4+PHNwYW4gc3R5bGU9J2ZvbnQtc2l6ZToxOC4wcHQ7bXNvLWJpZGktZm9udC1zaXplOjEyLjBwdDsKZm9udC13ZWlnaHQ6bm9ybWFsJz48bzpwPjwvbzpwPjwvc3Bhbj48L2gxPgoKPGgyPjwhW2lmICFzdXBwb3J0RW1wdHlQYXJhc10+Jm5ic3A7PCFbZW5kaWZdPjxvOnA+PC9vOnA+PC9oMj4KCjxoMj5EYXRhdHlwZSB2YWxpZGF0b3JzPC9oMj4KCjxwIGNsYXNzPU1zb05vcm1hbD48IVtpZiAhc3VwcG9ydEVtcHR5UGFyYXNdPiZuYnNwOzwhW2VuZGlmXT48bzpwPjwvbzpwPjwvcD4KCjxwIGNsYXNzPU1zb05vcm1hbD5EYXRhdHlwZSBWYWxpZGF0b3JzIGFyZSBiYXNlZCBvbiB0aGUgWE1MIFNjaGVtYSBEYXRhdHlwZQpkcmFmdC4gVGhleSBhcmUgdXNlZCBieSB0aGUgVmFsaWRhdG9yIHRvIHZhbGlkYXRlIGF0dHJpYnV0ZSBjb250ZW50IGluIHRoZSBjYXNlCm9mIGEgRFREIG9yIFhNTCBTY2hlbWEgZ3JhbW1hcnMgYW5kIHRvIHZhbGlkYXRlIGVsZW1lbnQgY29udGVudCBpbiB0aGUgY2FzZSBvZgpYTUwgU2NoZW1hIGdyYW1tYXJzLiBEYXRhdHlwZSB2YWxpZGF0b3JzIGltcGxlbWVudCB0aGUgRGF0YXR5cGVWYWxpZGF0b3IKaW50ZXJmYWNlLjxzcGFuIHN0eWxlPSJtc28tc3BhY2VydW46IHllcyI+oCA8L3NwYW4+PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPlRoZSBWYWxpZGF0b3IgdXNlcyBhIGZhY3RvcnkgbWV0aG9kIHRoYW4gaW1wbGVtZW50cyB0aGUKRGF0YXR5cGVWYWxpZGF0b3JGYWN0b3J5IHRvIGdldCBkYXRhdHlwZXMgaW5zdGFuY2VzLjwvcD4KCjxwIGNsYXNzPU1zb05vcm1hbD5EYXRhdHlwZSB2YWxpZGF0b3KScyByZWZlcmVuY2VzIGFyZSBhdHRhY2hlZCB0byB0aGUgRWxlbWVudAphbmQgQXR0cmlidXRlIGRlY2xhcmF0aW9uIGluIHRoZSBpbnRlcm5hbCBpbXBsZW1lbnRhdGlvbiBvZiBHcmFtbWFycy4gU2VlIDxhCmhyZWY9IiNfR3JhbW1hcl9wb29sX2FuZCI+R3JhbW1hciBwb29scyBhbmQgR3JhbW1hcnM8L2E+IDwvcD4KCjxwIGNsYXNzPU1zb05vcm1hbD48dT48IVtpZiAhc3VwcG9ydEVtcHR5UGFyYXNdPiZuYnNwOzwhW2VuZGlmXT48bzpwPjwvbzpwPjwvdT48L3A+Cgo8aDI+Q29udGVudCBtb2RlbCB2YWxpZGF0b3JzPC9oMj4KCjxwIGNsYXNzPU1zb05vcm1hbD48dT48IVtpZiAhc3VwcG9ydEVtcHR5UGFyYXNdPiZuYnNwOzwhW2VuZGlmXT48bzpwPjwvbzpwPjwvdT48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+Q29udGVudCBtb2RlbCB2YWxpZGF0b3JzIGFyZSB1c2VkIHRvIGNoZWNrIGVsZW1lbnRzIGFnYWluc3QKdGhlIGNvbnRlbnQgbW9kZWwgZGVmaW5lZCBpbiBhbiBFbGVtZW50IERlY2xhcmF0aW9uIGZvciB0aG9zZSBlbGVtZW50cy4gQ29udGVudAptb2RlbCB2YWxpZGF0b3JzIGltcGxlbWVudCB0aGUgQ29udGVudE1vZGVsVmFsaWRhdG9yIGludGVyZmFjZS48L3A+Cgo8aDEgc3R5bGU9J2xpbmUtaGVpZ2h0Om5vcm1hbCc+PGEgbmFtZT0iX0dyYW1tYXJfcG9vbF9hbmQiPjwvYT48IVtpZiAhc3VwcG9ydEVtcHR5UGFyYXNdPiZuYnNwOzwhW2VuZGlmXT48bzpwPjwvbzpwPjwvaDE+Cgo8aDEgc3R5bGU9J2xpbmUtaGVpZ2h0Om5vcm1hbCc+PHNwYW4gc3R5bGU9J2ZvbnQtc2l6ZToxOC4wcHQ7bXNvLWJpZGktZm9udC1zaXplOgoxMi4wcHQnPkdyYW1tYXIgcG9vbCBhbmQgR3JhbW1hcnM8bzpwPjwvbzpwPjwvc3Bhbj48L2gxPgoKPHAgY2xhc3M9TXNvTm9ybWFsPjwhW2lmICFzdXBwb3J0RW1wdHlQYXJhc10+Jm5ic3A7PCFbZW5kaWZdPjxvOnA+PC9vOnA+PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPkEgR3JhbW1hclBvb2wgaXMgYSByZWdpc3RyeSBvZiBHcmFtbWFycy4gR3JhbW1hcnMgYXJlIGtleWVkCnVzaW5nIGEgk2dyYW1tYXIgbmFtZZQgd2hpY2ggY291bGQgYmUgYSBuYW1lIHNwYWNlLiBHcmFtbWFycyBhcmUgY2xhc3NlcwpkZXJpdmVkIGZyb20gdGhlIEdyYW1tYXIgY2xhc3MuIEdyYW1tYXJzIGNvbnRhaW4gaW50ZXJuYWwgYXJyYXkgc3RydWN0dXJlcywgYW5kCnB1YmxpYyBnZXR0ZXIgbWV0aG9kcyB0aGF0IGNhbiBiZSB1c2VkIGJ5IHRoZSBWYWxpZGF0b3IgdG8gYWNjZXNzIGdyYW1tYXIKaW5mb3JtYXRpb24uIFRoZXNlIGdldHRlciBtZXRob2RzIHByb3ZpZGUgYWNjZXNzIHRvIGRpZmZlcmVudCBEZWNsYXJhdGlvbgpjb25zdHJ1Y3RzLiA8L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+VGhlc2UgRGVjbGFyYXRpb24gY29uc3RydWN0cyBhcmU6IFhNTEVsZW1lbnREZWNsLApYTUxBdHRyaWJ1dGVEZWNsLCBhbmQgWE1MRW50aXR5RGVjbCwgYW5kIFhNTE5vdGF0aW9uRGVjbC4gPC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPk90aGVyIGNvbnN0cnVjdHMgYXZhaWxhYmxlIHRocm91Z2ggdGhlIEdyYW1tYXJzIGFyZToKWE1MU2ltcGxlVHlwZSwgQ29udGVudE1vZGVsVmFsaWRhdG9yLCBhbmQgRGF0YXR5cGVWYWxpZGF0b3IuPC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPlhNTFNpbXBsZVR5cGUgKFNpbXBsZSB0eXBlKSBkZWNsYXJhdGlvbnMgYXJlIGEgc3BlY2lhbCB0eXBlCm9mIEVsZW1lbnQgRGVjbGFyYXRpb24sIHdoaWNoIGNvbnRhaW5zIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gYmV5b25kIHRoZSBvbmUKcHJvdmlkZWQgYnkgWE1MRWxlbWVudERlY2wgc3VjaCBhcyBkYXRhIHR5cGUgdmFsaWRhdG9yIHJlZmVyZW5jZXMuPHNwYW4Kc3R5bGU9Im1zby1zcGFjZXJ1bjogeWVzIj6goCA8L3NwYW4+PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsPjwhW2lmICFzdXBwb3J0RW1wdHlQYXJhc10+Jm5ic3A7PCFbZW5kaWZdPjxvOnA+PC9vOnA+PC9wPgoKPGgxIHN0eWxlPSdsaW5lLWhlaWdodDpub3JtYWwnPjwhW2lmICFzdXBwb3J0RW1wdHlQYXJhc10+Jm5ic3A7PCFbZW5kaWZdPjxvOnA+PC9vOnA+PC9oMT4KCjxoMT48c3BhbiBzdHlsZT0nZm9udC1zaXplOjE4LjBwdDttc28tYmlkaS1mb250LXNpemU6MTIuMHB0Jz5JbnRlcm5hbCBHcmFtbWFyClN0cnVjdHVyZXM8bzpwPjwvbzpwPjwvc3Bhbj48L2gxPgoKPHAgY2xhc3M9TXNvTm9ybWFsIGFsaWduPWNlbnRlciBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXInPgo8aW1nIGJvcmRlcj0wIHdpZHRoPTU3OCBoZWlnaHQ9NTg3CnNyYz0iaW1hZ2VzXHRhYmxlLmdpZiIgPgo8L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+PCFbaWYgIXN1cHBvcnRFbXB0eVBhcmFzXT4mbmJzcDs8IVtlbmRpZl0+PG86cD48L286cD48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+PGI+PHNwYW4gc3R5bGU9J2NvbG9yOnNpbHZlcic+PGEgaHJlZj0iYXJjaGl0ZWN0dXJlLmh0bWwiPkJhY2gKdG8gQXJjaGl0ZWN0dXJlIE92ZXJ2aWV3PC9hPjwvc3Bhbj48L2I+PC9wPgoKPHAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSdtYXJnaW4tbGVmdDouMjVpbic+PCFbaWYgIXN1cHBvcnRFbXB0eVBhcmFzXT4mbmJzcDs8IVtlbmRpZl0+PG86cD48L286cD48L3A+Cgo8cCBjbGFzcz1Nc29Ob3JtYWw+PCFbaWYgIXN1cHBvcnRFbXB0eVBhcmFzXT4mbmJzcDs8IVtlbmRpZl0+PG86cD48L286cD48L3A+Cgo8L2Rpdj4KCjwvYm9keT4KCjwvaHRtbD4K