PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMC8vRU4iPg0KPCEtLU5ld1BhZ2UtLT4NCjxIVE1MPg0KPEhFQUQ+DQo8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIG9uIFRodSBOb3YgMjIgMTc6MTI6NTUgRVNUIDIwMDcgLS0+DQo8VElUTEU+DQpYYWxhbi1KYXZhIDIuNy4xOiBDbGFzcyAgR2VuZXJhdGVFdmVudA0KPC9USVRMRT4NCjxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4NCjwvSEVBRD4NCjxCT0RZIEJHQ09MT1I9IndoaXRlIj4NCg0KPCEtLSA9PT09PT09PT09IFNUQVJUIE9GIE5BVkJBUiA9PT09PT09PT09IC0tPg0KPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiPg0KPFRSPg0KPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPg0KPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyI+DQogIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+DQogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0dlbmVyYXRlRXZlbnQuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4NCiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWFsbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4NCiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDwvVFI+DQo8L1RBQkxFPg0KPC9URD4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPg0KPC9FTT4NCjwvVEQ+DQo8L1RSPg0KDQo8VFI+DQo8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPg0KJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94YWxhbi90cmFjZS9FeHRlbnNpb25FdmVudC5odG1sIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsNCiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveGFsYW4vdHJhY2UvUHJpbnRUcmFjZUxpc3RlbmVyLmh0bWwiPjxCPk5FWFQgQ0xBU1M8L0I+PC9BPjwvRk9OVD48L1REPg0KPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4NCiAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbCIgVEFSR0VUPSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7DQombmJzcDs8QSBIUkVGPSJHZW5lcmF0ZUV2ZW50Lmh0bWwiIFRBUkdFVD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT48L0ZPTlQ+PC9URD4NCjwvVFI+DQo8VFI+DQo8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPg0KICBTVU1NQVJZOiAmbmJzcDtJTk5FUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4NCjxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+DQpERVRBSUw6ICZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwO01FVEhPRDwvRk9OVD48L1REPg0KPC9UUj4NCjwvVEFCTEU+DQo8IS0tID09PT09PT09PT09IEVORCBPRiBOQVZCQVIgPT09PT09PT09PT0gLS0+DQoNCjxIUj4NCjwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4NCjxIMj4NCjxGT05UIFNJWkU9Ii0xIj4NCm9yZy5hcGFjaGUueGFsYW4udHJhY2U8L0ZPTlQ+DQo8QlI+DQpDbGFzcyAgR2VuZXJhdGVFdmVudDwvSDI+DQo8UFJFPg0KamF2YS5sYW5nLk9iamVjdA0KICB8DQogICstLTxCPm9yZy5hcGFjaGUueGFsYW4udHJhY2UuR2VuZXJhdGVFdmVudDwvQj4NCjwvUFJFPg0KPEhSPg0KPERMPg0KPERUPnB1YmxpYyBjbGFzcyA8Qj5HZW5lcmF0ZUV2ZW50PC9CPjxEVD5leHRlbmRzIGphdmEubGFuZy5PYmplY3Q8RFQ+aW1wbGVtZW50cyBqYXZhLnV0aWwuRXZlbnRMaXN0ZW5lcjwvREw+DQoNCjxQPg0KRXZlbnQgZ2VuZXJhdGVkIGJ5IHRoZSBYU0wgcHJvY2Vzc29yIGFmdGVyIGl0IGdlbmVyYXRlcyBhIG5ldyBub2RlIGluIHRoZSByZXN1bHQgdHJlZS4KIFRoaXMgZXZlbnQgcmVzcG9uZHMgdG8gYW5kIGlzIG1vZGVsZWQgb24gdGhlIFNBWCBldmVudHMgdGhhdCBhcmUgc2VudCB0byB0aGUKIGZvcm1hdHRlciBsaXN0ZW5lciBGb3JtYXR0ZXJUb1hYWCljbGFzc2VzLg0KPFA+DQo8REw+DQo8RFQ+PEI+U2VlIEFsc286IDwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvdXRpbHMvRE9NQnVpbGRlci5odG1sIj48Q09ERT5ET01CdWlsZGVyPC9DT0RFPjwvQT4sIA0KPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvc2VyaWFsaXplci9Ub0hUTUxTdHJlYW0uaHRtbCI+PENPREU+VG9IVE1MU3RyZWFtPC9DT0RFPjwvQT4sIA0KPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvc2VyaWFsaXplci9Ub1RleHRTdHJlYW0uaHRtbCI+PENPREU+VG9UZXh0U3RyZWFtPC9DT0RFPjwvQT4sIA0KPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvc2VyaWFsaXplci9Ub1hNTFN0cmVhbS5odG1sIj48Q09ERT5Ub1hNTFN0cmVhbTwvQ09ERT48L0E+PERUPjxCPlVzYWdlOjwvQj48REQ+PGk+PGZvbnQgc2l6ZT0iLTEiIGNvbG9yPSIjMDBGRjAwIj4gKipGb3IgYWR2YW5jZWQgdXNlIG9ubHkqKjwvZm9udD48L2k+PC9ERD4KPC9ERD4NCjwvREw+DQo8SFI+DQoNCjxQPg0KPCEtLSA9PT09PT09PSBJTk5FUiBDTEFTUyBTVU1NQVJZID09PT09PT09IC0tPg0KDQoNCjwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4NCg0KPEEgTkFNRT0iZmllbGRfc3VtbWFyeSI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgV0lEVEg9IjEwMCUiPg0KPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+DQo8VEQgQ09MU1BBTj0yPjxGT05UIFNJWkU9IisyIj4NCjxCPkZpZWxkIFN1bW1hcnk8L0I+PC9GT05UPjwvVEQ+DQo8L1RSPg0KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+DQo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+DQo8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcveG1sL3NheC9BdHRyaWJ1dGVzLmh0bWwiPkF0dHJpYnV0ZXM8L0E+PC9DT0RFPjwvRk9OVD48L1REPg0KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveGFsYW4vdHJhY2UvR2VuZXJhdGVFdmVudC5odG1sI21fYXR0cyI+bV9hdHRzPC9BPjwvQj48L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBjdXJyZW50IGF0dHJpYnV0ZSBsaXN0LjwvVEQ+DQo8L1RSPg0KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+DQo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+DQo8Q09ERT4mbmJzcDtjaGFyW108L0NPREU+PC9GT05UPjwvVEQ+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94YWxhbi90cmFjZS9HZW5lcmF0ZUV2ZW50Lmh0bWwjbV9jaGFyYWN0ZXJzIj5tX2NoYXJhY3RlcnM8L0E+PC9CPjwvQ09ERT4NCg0KPEJSPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q2hhcmFjdGVyIGRhdGEgZnJvbSBhIGNoYXJhY3RlciBvciBjZGF0YSBldmVudC48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+Jm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3hhbGFuL3RyYWNlL0dlbmVyYXRlRXZlbnQuaHRtbCNtX2RhdGEiPm1fZGF0YTwvQT48L0I+PC9DT0RFPg0KDQo8QlI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtUaGUgc3RyaW5nIGRhdGEgaW4gdGhlIGVsZW1lbnQgKGNvbW1lbnRzIGFuZCBQSXMpLjwvVEQ+DQo8L1RSPg0KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+DQo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+DQo8Q09ERT4mbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94YWxhbi90cmFjZS9HZW5lcmF0ZUV2ZW50Lmh0bWwjbV9ldmVudHR5cGUiPm1fZXZlbnR0eXBlPC9BPjwvQj48L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSB0eXBlIG9mIFNBWCBldmVudCB0aGF0IHdhcyBnZW5lcmF0ZWQsIGFzIGVudW1lcmF0ZWQgaW4gdGhlIEVWRU5UVFlQRV9YWFggY29uc3RhbnRzIGJlbG93LjwvVEQ+DQo8L1RSPg0KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+DQo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+DQo8Q09ERT4mbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94YWxhbi90cmFjZS9HZW5lcmF0ZUV2ZW50Lmh0bWwjbV9sZW5ndGgiPm1fbGVuZ3RoPC9BPjwvQj48L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBsZW5ndGggb2YgdGhlIGN1cnJlbnQgZGF0YSBpbiBtX2NoYXJhY3RlcnMuPC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4NCjxDT0RFPiZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94YWxhbi90cmFjZS9HZW5lcmF0ZUV2ZW50Lmh0bWwjbV9uYW1lIj5tX25hbWU8L0E+PC9CPjwvQ09ERT4NCg0KPEJSPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIG5hbWUgb2YgdGhlIGVsZW1lbnQgb3IgUEkuPC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4NCjxDT0RFPiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveGFsYW4vdHJhbnNmb3JtZXIvVHJhbnNmb3JtZXJJbXBsLmh0bWwiPlRyYW5zZm9ybWVySW1wbDwvQT48L0NPREU+PC9GT05UPjwvVEQ+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94YWxhbi90cmFjZS9HZW5lcmF0ZUV2ZW50Lmh0bWwjbV9wcm9jZXNzb3IiPm1fcHJvY2Vzc29yPC9BPjwvQj48L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoZSBYU0xUIFRyYW5zZm9ybWVyLCB3aGljaCBlaXRoZXIgZGlyZWN0bHkgb3IgaW5kaXJlY3RseSBjb250YWlucyBtb3N0IG5lZWRlZCBpbmZvcm1hdGlvbi48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+Jm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPg0KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveGFsYW4vdHJhY2UvR2VuZXJhdGVFdmVudC5odG1sI21fc3RhcnQiPm1fc3RhcnQ8L0E+PC9CPjwvQ09ERT4NCg0KPEJSPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7VGhlIHN0YXJ0IHBvc2l0aW9uIG9mIHRoZSBjdXJyZW50IGRhdGEgaW4gbV9jaGFyYWN0ZXJzLjwvVEQ+DQo8L1RSPg0KPC9UQUJMRT4NCiZuYnNwOw0KPCEtLSA9PT09PT09PSBDT05TVFJVQ1RPUiBTVU1NQVJZID09PT09PT09IC0tPg0KDQo8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KPFRBQkxFIEJPUkRFUj0iMSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBXSURUSD0iMTAwJSI+DQo8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4NCjxURCBDT0xTUEFOPTI+PEZPTlQgU0laRT0iKzIiPg0KPEI+Q29uc3RydWN0b3IgU3VtbWFyeTwvQj48L0ZPTlQ+PC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3hhbGFuL3RyYWNlL0dlbmVyYXRlRXZlbnQuaHRtbCNHZW5lcmF0ZUV2ZW50KG9yZy5hcGFjaGUueGFsYW4udHJhbnNmb3JtZXIuVHJhbnNmb3JtZXJJbXBsLCBpbnQpIj5HZW5lcmF0ZUV2ZW50PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94YWxhbi90cmFuc2Zvcm1lci9UcmFuc2Zvcm1lckltcGwuaHRtbCI+VHJhbnNmb3JtZXJJbXBsPC9BPiZuYnNwO3Byb2Nlc3NvciwKICAgICAgICAgICAgICBpbnQmbmJzcDtldmVudFR5cGUpPC9DT0RFPg0KDQo8QlI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDb25zdHJ1Y3RvciBmb3Igc3RhcnREb2N1bWVudCwgZW5kRG9jdW1lbnQgZXZlbnRzLjwvVEQ+DQo8L1RSPg0KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94YWxhbi90cmFjZS9HZW5lcmF0ZUV2ZW50Lmh0bWwjR2VuZXJhdGVFdmVudChvcmcuYXBhY2hlLnhhbGFuLnRyYW5zZm9ybWVyLlRyYW5zZm9ybWVySW1wbCwgaW50LCBjaGFyW10sIGludCwgaW50KSI+R2VuZXJhdGVFdmVudDwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveGFsYW4vdHJhbnNmb3JtZXIvVHJhbnNmb3JtZXJJbXBsLmh0bWwiPlRyYW5zZm9ybWVySW1wbDwvQT4mbmJzcDtwcm9jZXNzb3IsCiAgICAgICAgICAgICAgaW50Jm5ic3A7ZXZlbnRUeXBlLAogICAgICAgICAgICAgIGNoYXJbXSZuYnNwO2NoLAogICAgICAgICAgICAgIGludCZuYnNwO3N0YXJ0LAogICAgICAgICAgICAgIGludCZuYnNwO2xlbmd0aCk8L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NvbnN0cnVjdG9yIGZvciBjaGFyYWN0ZXJzLCBjZGF0ZSBldmVudHMuPC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3hhbGFuL3RyYWNlL0dlbmVyYXRlRXZlbnQuaHRtbCNHZW5lcmF0ZUV2ZW50KG9yZy5hcGFjaGUueGFsYW4udHJhbnNmb3JtZXIuVHJhbnNmb3JtZXJJbXBsLCBpbnQsIGphdmEubGFuZy5TdHJpbmcpIj5HZW5lcmF0ZUV2ZW50PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94YWxhbi90cmFuc2Zvcm1lci9UcmFuc2Zvcm1lckltcGwuaHRtbCI+VHJhbnNmb3JtZXJJbXBsPC9BPiZuYnNwO3Byb2Nlc3NvciwKICAgICAgICAgICAgICBpbnQmbmJzcDtldmVudFR5cGUsCiAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2RhdGEpPC9DT0RFPg0KDQo8QlI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDb25zdHJ1Y3RvciBmb3IgY29tbWVudCBhbmQgZW50aXR5IHJlZiBldmVudHMuPC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3hhbGFuL3RyYWNlL0dlbmVyYXRlRXZlbnQuaHRtbCNHZW5lcmF0ZUV2ZW50KG9yZy5hcGFjaGUueGFsYW4udHJhbnNmb3JtZXIuVHJhbnNmb3JtZXJJbXBsLCBpbnQsIGphdmEubGFuZy5TdHJpbmcsIG9yZy54bWwuc2F4LkF0dHJpYnV0ZXMpIj5HZW5lcmF0ZUV2ZW50PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94YWxhbi90cmFuc2Zvcm1lci9UcmFuc2Zvcm1lckltcGwuaHRtbCI+VHJhbnNmb3JtZXJJbXBsPC9BPiZuYnNwO3Byb2Nlc3NvciwKICAgICAgICAgICAgICBpbnQmbmJzcDtldmVudFR5cGUsCiAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUsCiAgICAgICAgICAgICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL3htbC9zYXgvQXR0cmlidXRlcy5odG1sIj5BdHRyaWJ1dGVzPC9BPiZuYnNwO2F0dHMpPC9DT0RFPg0KDQo8QlI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtDb25zdHJ1Y3RvciBmb3Igc3RhcnRFbGVtZW50LCBlbmRFbGVtZW50IGV2ZW50cy48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveGFsYW4vdHJhY2UvR2VuZXJhdGVFdmVudC5odG1sI0dlbmVyYXRlRXZlbnQob3JnLmFwYWNoZS54YWxhbi50cmFuc2Zvcm1lci5UcmFuc2Zvcm1lckltcGwsIGludCwgamF2YS5sYW5nLlN0cmluZywgamF2YS5sYW5nLlN0cmluZykiPkdlbmVyYXRlRXZlbnQ8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3hhbGFuL3RyYW5zZm9ybWVyL1RyYW5zZm9ybWVySW1wbC5odG1sIj5UcmFuc2Zvcm1lckltcGw8L0E+Jm5ic3A7cHJvY2Vzc29yLAogICAgICAgICAgICAgIGludCZuYnNwO2V2ZW50VHlwZSwKICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7bmFtZSwKICAgICAgICAgICAgICBqYXZhLmxhbmcuU3RyaW5nJm5ic3A7ZGF0YSk8L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NvbnN0cnVjdG9yIGZvciBwcm9jZXNzaW5nSW5zdHJ1Y3Rpb24gZXZlbnRzLjwvVEQ+DQo8L1RSPg0KPC9UQUJMRT4NCiZuYnNwOw0KPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPg0KDQo8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgo8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFdJRFRIPSIxMDAlIj4NCjxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPg0KPFREPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREPjxDT0RFPmVxdWFscywgDQpnZXRDbGFzcywgDQpoYXNoQ29kZSwgDQpub3RpZnksIA0Kbm90aWZ5QWxsLCANCnRvU3RyaW5nLCANCndhaXQsIA0Kd2FpdCwgDQp3YWl0PC9DT0RFPjwvVEQ+DQo8L1RSPg0KPC9UQUJMRT4NCiZuYnNwOw0KPFA+DQoNCjwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4NCg0KPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KPFRBQkxFIEJPUkRFUj0iMSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBXSURUSD0iMTAwJSI+DQo8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4NCjxURCBDT0xTUEFOPTE+PEZPTlQgU0laRT0iKzIiPg0KPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1REPg0KPC9UUj4NCjwvVEFCTEU+DQoNCjxBIE5BTUU9Im1fcHJvY2Vzc29yIj48IS0tIC0tPjwvQT48SDM+DQptX3Byb2Nlc3NvcjwvSDM+DQo8UFJFPg0KcHVibGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveGFsYW4vdHJhbnNmb3JtZXIvVHJhbnNmb3JtZXJJbXBsLmh0bWwiPlRyYW5zZm9ybWVySW1wbDwvQT4gPEI+bV9wcm9jZXNzb3I8L0I+PC9QUkU+DQo8REw+DQo8REQ+VGhlIFhTTFQgVHJhbnNmb3JtZXIsIHdoaWNoIGVpdGhlciBkaXJlY3RseSBvciBpbmRpcmVjdGx5IGNvbnRhaW5zIG1vc3QgbmVlZGVkIGluZm9ybWF0aW9uLjxERD48REw+DQo8RFQ+PEI+U2VlIEFsc286IDwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94YWxhbi90cmFuc2Zvcm1lci9UcmFuc2Zvcm1lckltcGwuaHRtbCI+PENPREU+VHJhbnNmb3JtZXJJbXBsPC9DT0RFPjwvQT48L0RMPg0KPC9ERD4NCjwvREw+DQo8SFI+DQoNCjxBIE5BTUU9Im1fZXZlbnR0eXBlIj48IS0tIC0tPjwvQT48SDM+DQptX2V2ZW50dHlwZTwvSDM+DQo8UFJFPg0KcHVibGljIGludCA8Qj5tX2V2ZW50dHlwZTwvQj48L1BSRT4NCjxETD4NCjxERD5UaGUgdHlwZSBvZiBTQVggZXZlbnQgdGhhdCB3YXMgZ2VuZXJhdGVkLCBhcyBlbnVtZXJhdGVkIGluIHRoZSBFVkVOVFRZUEVfWFhYIGNvbnN0YW50cyBiZWxvdy48L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJtX2NoYXJhY3RlcnMiPjwhLS0gLS0+PC9BPjxIMz4NCm1fY2hhcmFjdGVyczwvSDM+DQo8UFJFPg0KcHVibGljIGNoYXJbXSA8Qj5tX2NoYXJhY3RlcnM8L0I+PC9QUkU+DQo8REw+DQo8REQ+Q2hhcmFjdGVyIGRhdGEgZnJvbSBhIGNoYXJhY3RlciBvciBjZGF0YSBldmVudC48L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJtX3N0YXJ0Ij48IS0tIC0tPjwvQT48SDM+DQptX3N0YXJ0PC9IMz4NCjxQUkU+DQpwdWJsaWMgaW50IDxCPm1fc3RhcnQ8L0I+PC9QUkU+DQo8REw+DQo8REQ+VGhlIHN0YXJ0IHBvc2l0aW9uIG9mIHRoZSBjdXJyZW50IGRhdGEgaW4gbV9jaGFyYWN0ZXJzLjwvREw+DQo8SFI+DQoNCjxBIE5BTUU9Im1fbGVuZ3RoIj48IS0tIC0tPjwvQT48SDM+DQptX2xlbmd0aDwvSDM+DQo8UFJFPg0KcHVibGljIGludCA8Qj5tX2xlbmd0aDwvQj48L1BSRT4NCjxETD4NCjxERD5UaGUgbGVuZ3RoIG9mIHRoZSBjdXJyZW50IGRhdGEgaW4gbV9jaGFyYWN0ZXJzLjwvREw+DQo8SFI+DQoNCjxBIE5BTUU9Im1fbmFtZSI+PCEtLSAtLT48L0E+PEgzPg0KbV9uYW1lPC9IMz4NCjxQUkU+DQpwdWJsaWMgamF2YS5sYW5nLlN0cmluZyA8Qj5tX25hbWU8L0I+PC9QUkU+DQo8REw+DQo8REQ+VGhlIG5hbWUgb2YgdGhlIGVsZW1lbnQgb3IgUEkuPC9ETD4NCjxIUj4NCg0KPEEgTkFNRT0ibV9kYXRhIj48IS0tIC0tPjwvQT48SDM+DQptX2RhdGE8L0gzPg0KPFBSRT4NCnB1YmxpYyBqYXZhLmxhbmcuU3RyaW5nIDxCPm1fZGF0YTwvQj48L1BSRT4NCjxETD4NCjxERD5UaGUgc3RyaW5nIGRhdGEgaW4gdGhlIGVsZW1lbnQgKGNvbW1lbnRzIGFuZCBQSXMpLjwvREw+DQo8SFI+DQoNCjxBIE5BTUU9Im1fYXR0cyI+PCEtLSAtLT48L0E+PEgzPg0KbV9hdHRzPC9IMz4NCjxQUkU+DQpwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL3htbC9zYXgvQXR0cmlidXRlcy5odG1sIj5BdHRyaWJ1dGVzPC9BPiA8Qj5tX2F0dHM8L0I+PC9QUkU+DQo8REw+DQo8REQ+VGhlIGN1cnJlbnQgYXR0cmlidXRlIGxpc3QuPC9ETD4NCg0KPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPg0KDQo8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9kZXRhaWwiPjwhLS0gLS0+PC9BPgo8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFdJRFRIPSIxMDAlIj4NCjxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPg0KPFREIENPTFNQQU49MT48Rk9OVCBTSVpFPSIrMiI+DQo8Qj5Db25zdHJ1Y3RvciBEZXRhaWw8L0I+PC9GT05UPjwvVEQ+DQo8L1RSPg0KPC9UQUJMRT4NCg0KPEEgTkFNRT0iR2VuZXJhdGVFdmVudChvcmcuYXBhY2hlLnhhbGFuLnRyYW5zZm9ybWVyLlRyYW5zZm9ybWVySW1wbCwgaW50KSI+PCEtLSAtLT48L0E+PEgzPg0KR2VuZXJhdGVFdmVudDwvSDM+DQo8UFJFPg0KcHVibGljIDxCPkdlbmVyYXRlRXZlbnQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveGFsYW4vdHJhbnNmb3JtZXIvVHJhbnNmb3JtZXJJbXBsLmh0bWwiPlRyYW5zZm9ybWVySW1wbDwvQT4mbmJzcDtwcm9jZXNzb3IsCiAgICAgICAgICAgICAgICAgICAgIGludCZuYnNwO2V2ZW50VHlwZSk8L1BSRT4NCjxETD4NCjxERD5Db25zdHJ1Y3RvciBmb3Igc3RhcnREb2N1bWVudCwgZW5kRG9jdW1lbnQgZXZlbnRzLjxERD48REw+DQo8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnByb2Nlc3NvcjwvQ09ERT4gLSBUaGUgWFNMVCBUcmFuc2Zvcm1lckZhY3RvcnkgaW5zdGFuY2UuPEREPjxDT0RFPmV2ZW50VHlwZTwvQ09ERT4gLSBPbmUgb2YgdGhlIEVWRU5UVFlQRV9YWFggY29uc3RhbnRzLjwvREw+DQo8L0REPg0KPC9ETD4NCjxIUj4NCg0KPEEgTkFNRT0iR2VuZXJhdGVFdmVudChvcmcuYXBhY2hlLnhhbGFuLnRyYW5zZm9ybWVyLlRyYW5zZm9ybWVySW1wbCwgaW50LCBqYXZhLmxhbmcuU3RyaW5nLCBvcmcueG1sLnNheC5BdHRyaWJ1dGVzKSI+PCEtLSAtLT48L0E+PEgzPg0KR2VuZXJhdGVFdmVudDwvSDM+DQo8UFJFPg0KcHVibGljIDxCPkdlbmVyYXRlRXZlbnQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveGFsYW4vdHJhbnNmb3JtZXIvVHJhbnNmb3JtZXJJbXBsLmh0bWwiPlRyYW5zZm9ybWVySW1wbDwvQT4mbmJzcDtwcm9jZXNzb3IsCiAgICAgICAgICAgICAgICAgICAgIGludCZuYnNwO2V2ZW50VHlwZSwKICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUsCiAgICAgICAgICAgICAgICAgICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy94bWwvc2F4L0F0dHJpYnV0ZXMuaHRtbCI+QXR0cmlidXRlczwvQT4mbmJzcDthdHRzKTwvUFJFPg0KPERMPg0KPEREPkNvbnN0cnVjdG9yIGZvciBzdGFydEVsZW1lbnQsIGVuZEVsZW1lbnQgZXZlbnRzLjxERD48REw+DQo8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnByb2Nlc3NvcjwvQ09ERT4gLSBUaGUgWFNMVCBUcmFuc2Zvcm1lckZhY3RvcnkgSW5zdGFuY2UuPEREPjxDT0RFPmV2ZW50VHlwZTwvQ09ERT4gLSBPbmUgb2YgdGhlIEVWRU5UVFlQRV9YWFggY29uc3RhbnRzLjxERD48Q09ERT5uYW1lPC9DT0RFPiAtIFRoZSBuYW1lIG9mIHRoZSBlbGVtZW50LjxERD48Q09ERT5hdHRzPC9DT0RFPiAtIFRoZSBTQVggYXR0cmlidXRlIGxpc3QuPC9ETD4NCjwvREQ+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJHZW5lcmF0ZUV2ZW50KG9yZy5hcGFjaGUueGFsYW4udHJhbnNmb3JtZXIuVHJhbnNmb3JtZXJJbXBsLCBpbnQsIGNoYXJbXSwgaW50LCBpbnQpIj48IS0tIC0tPjwvQT48SDM+DQpHZW5lcmF0ZUV2ZW50PC9IMz4NCjxQUkU+DQpwdWJsaWMgPEI+R2VuZXJhdGVFdmVudDwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94YWxhbi90cmFuc2Zvcm1lci9UcmFuc2Zvcm1lckltcGwuaHRtbCI+VHJhbnNmb3JtZXJJbXBsPC9BPiZuYnNwO3Byb2Nlc3NvciwKICAgICAgICAgICAgICAgICAgICAgaW50Jm5ic3A7ZXZlbnRUeXBlLAogICAgICAgICAgICAgICAgICAgICBjaGFyW10mbmJzcDtjaCwKICAgICAgICAgICAgICAgICAgICAgaW50Jm5ic3A7c3RhcnQsCiAgICAgICAgICAgICAgICAgICAgIGludCZuYnNwO2xlbmd0aCk8L1BSRT4NCjxETD4NCjxERD5Db25zdHJ1Y3RvciBmb3IgY2hhcmFjdGVycywgY2RhdGUgZXZlbnRzLjxERD48REw+DQo8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnByb2Nlc3NvcjwvQ09ERT4gLSBUaGUgWFNMVCBUcmFuc2Zvcm1lckZhY3RvcnkgaW5zdGFuY2UuPEREPjxDT0RFPmV2ZW50VHlwZTwvQ09ERT4gLSBPbmUgb2YgdGhlIEVWRU5UVFlQRV9YWFggY29uc3RhbnRzLjxERD48Q09ERT5jaDwvQ09ERT4gLSBUaGUgY2hhciBhcnJheSBmcm9tIHRoZSBTQVggZXZlbnQuPEREPjxDT0RFPnN0YXJ0PC9DT0RFPiAtIFRoZSBzdGFydCBvZmZzZXQgdG8gYmUgdXNlZCBpbiB0aGUgY2hhciBhcnJheS48REQ+PENPREU+bGVuZ3RoPC9DT0RFPiAtIFRoZSBlbmQgb2Zmc2V0IHRvIGJlIHVzZWQgaW4gdGhlIGNoYXJhIGFycmF5LjwvREw+DQo8L0REPg0KPC9ETD4NCjxIUj4NCg0KPEEgTkFNRT0iR2VuZXJhdGVFdmVudChvcmcuYXBhY2hlLnhhbGFuLnRyYW5zZm9ybWVyLlRyYW5zZm9ybWVySW1wbCwgaW50LCBqYXZhLmxhbmcuU3RyaW5nLCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPg0KR2VuZXJhdGVFdmVudDwvSDM+DQo8UFJFPg0KcHVibGljIDxCPkdlbmVyYXRlRXZlbnQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveGFsYW4vdHJhbnNmb3JtZXIvVHJhbnNmb3JtZXJJbXBsLmh0bWwiPlRyYW5zZm9ybWVySW1wbDwvQT4mbmJzcDtwcm9jZXNzb3IsCiAgICAgICAgICAgICAgICAgICAgIGludCZuYnNwO2V2ZW50VHlwZSwKICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO25hbWUsCiAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtkYXRhKTwvUFJFPg0KPERMPg0KPEREPkNvbnN0cnVjdG9yIGZvciBwcm9jZXNzaW5nSW5zdHJ1Y3Rpb24gZXZlbnRzLjxERD48REw+DQo8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnByb2Nlc3NvcjwvQ09ERT4gLSBUaGUgaW5zdGFuY2Ugb2YgdGhlIFhTTFQgcHJvY2Vzc29yLjxERD48Q09ERT5ldmVudFR5cGU8L0NPREU+IC0gT25lIG9mIHRoZSBFVkVOVFRZUEVfWFhYIGNvbnN0YW50cy48REQ+PENPREU+bmFtZTwvQ09ERT4gLSBUaGUgbmFtZSBvZiB0aGUgcHJvY2Vzc2luZyBpbnN0cnVjdGlvbi48REQ+PENPREU+ZGF0YTwvQ09ERT4gLSBUaGUgcHJvY2Vzc2luZyBpbnN0cnVjdGlvbiBkYXRhLjwvREw+DQo8L0REPg0KPC9ETD4NCjxIUj4NCg0KPEEgTkFNRT0iR2VuZXJhdGVFdmVudChvcmcuYXBhY2hlLnhhbGFuLnRyYW5zZm9ybWVyLlRyYW5zZm9ybWVySW1wbCwgaW50LCBqYXZhLmxhbmcuU3RyaW5nKSI+PCEtLSAtLT48L0E+PEgzPg0KR2VuZXJhdGVFdmVudDwvSDM+DQo8UFJFPg0KcHVibGljIDxCPkdlbmVyYXRlRXZlbnQ8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveGFsYW4vdHJhbnNmb3JtZXIvVHJhbnNmb3JtZXJJbXBsLmh0bWwiPlRyYW5zZm9ybWVySW1wbDwvQT4mbmJzcDtwcm9jZXNzb3IsCiAgICAgICAgICAgICAgICAgICAgIGludCZuYnNwO2V2ZW50VHlwZSwKICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2RhdGEpPC9QUkU+DQo8REw+DQo8REQ+Q29uc3RydWN0b3IgZm9yIGNvbW1lbnQgYW5kIGVudGl0eSByZWYgZXZlbnRzLjxERD48REw+DQo8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnByb2Nlc3NvcjwvQ09ERT4gLSBUaGUgWFNMVCBwcm9jZXNzb3IgaW5zdGFuY2UuPEREPjxDT0RFPmV2ZW50VHlwZTwvQ09ERT4gLSBPbmUgb2YgdGhlIEVWRU5UVFlQRV9YWFggY29uc3RhbnRzLjxERD48Q09ERT5kYXRhPC9DT0RFPiAtIFRoZSBjb21tZW50IG9yIGVudGl0eSByZWYgZGF0YS48L0RMPg0KPC9ERD4NCjwvREw+DQoNCjwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4NCg0KPCEtLSA9PT09PT09PT0gRU5EIE9GIENMQVNTIERBVEEgPT09PT09PT09IC0tPg0KPEhSPg0KDQo8IS0tID09PT09PT09PT0gU1RBUlQgT0YgTkFWQkFSID09PT09PT09PT0gLS0+DQo8QSBOQU1FPSJuYXZiYXJfYm90dG9tIj48IS0tIC0tPjwvQT4KPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCI+DQo8VFI+DQo8VEQgQ09MU1BBTj0yIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+DQo8QSBOQU1FPSJuYXZiYXJfYm90dG9tX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIj4NCiAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4NCiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL292ZXJ2aWV3LXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5PdmVydmlldzwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4NCiAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+DQogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJjbGFzcy11c2UvR2VuZXJhdGVFdmVudC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4NCiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2RlcHJlY2F0ZWQtbGlzdC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkRlcHJlY2F0ZWQ8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtYWxsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4NCiAgPC9UUj4NCjwvVEFCTEU+DQo8L1REPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFJPV1NQQU49Mz48RU0+DQo8L0VNPg0KPC9URD4NCjwvVFI+DQoNCjxUUj4NCjxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+DQombmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3hhbGFuL3RyYWNlL0V4dGVuc2lvbkV2ZW50Lmh0bWwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOw0KJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94YWxhbi90cmFjZS9QcmludFRyYWNlTGlzdGVuZXIuaHRtbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+DQo8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPg0KICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sIiBUQVJHRVQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsNCiZuYnNwOzxBIEhSRUY9IkdlbmVyYXRlRXZlbnQuaHRtbCIgVEFSR0VUPSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPjwvRk9OVD48L1REPg0KPC9UUj4NCjxUUj4NCjxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+DQogIFNVTU1BUlk6ICZuYnNwO0lOTkVSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2NvbnN0cnVjdG9yX3N1bW1hcnkiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZHNfaW5oZXJpdGVkX2Zyb21fY2xhc3NfamF2YS5sYW5nLk9iamVjdCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPg0KPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4NCkRFVEFJTDogJm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7TUVUSE9EPC9GT05UPjwvVEQ+DQo8L1RSPg0KPC9UQUJMRT4NCjwhLS0gPT09PT09PT09PT0gRU5EIE9GIE5BVkJBUiA9PT09PT09PT09PSAtLT4NCg0KPEhSPg0KQ29weXJpZ2h0IKkgMjAwNiBBcGFjaGUgWE1MIFByb2plY3QuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuDQo8L0JPRFk+DQo8L0hUTUw+DQo=