PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMC8vRU4iPg0KPCEtLU5ld1BhZ2UtLT4NCjxIVE1MPg0KPEhFQUQ+DQo8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIG9uIFRodSBOb3YgMjIgMTc6MTI6NTMgRVNUIDIwMDcgLS0+DQo8VElUTEU+DQpYYWxhbi1KYXZhIDIuNy4xOiBDbGFzcyAgVHlwZUluZm9Qcm92aWRlcg0KPC9USVRMRT4NCjxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4NCjwvSEVBRD4NCjxCT0RZIEJHQ09MT1I9IndoaXRlIj4NCg0KPCEtLSA9PT09PT09PT09IFNUQVJUIE9GIE5BVkJBUiA9PT09PT09PT09IC0tPg0KPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiPg0KPFRSPg0KPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPg0KPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyI+DQogIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+DQogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1R5cGVJbmZvUHJvdmlkZXIuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4NCiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uL2luZGV4LWFsbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4NCiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDwvVFI+DQo8L1RBQkxFPg0KPC9URD4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPg0KPC9FTT4NCjwvVEQ+DQo8L1RSPg0KDQo8VFI+DQo8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPg0KJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vamF2YXgveG1sL3ZhbGlkYXRpb24vU2NoZW1hRmFjdG9yeS5odG1sIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsNCiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uL2phdmF4L3htbC92YWxpZGF0aW9uL1ZhbGlkYXRvci5odG1sIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4NCjxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+DQogIDxBIEhSRUY9Ii4uLy4uLy4uL2luZGV4Lmh0bWwiIFRBUkdFVD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOw0KJm5ic3A7PEEgSFJFRj0iVHlwZUluZm9Qcm92aWRlci5odG1sIiBUQVJHRVQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+PC9GT05UPjwvVEQ+DQo8L1RSPg0KPFRSPg0KPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4NCiAgU1VNTUFSWTogJm5ic3A7SU5ORVImbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPg0KPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4NCkRFVEFJTDogJm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+DQo8L1RSPg0KPC9UQUJMRT4NCjwhLS0gPT09PT09PT09PT0gRU5EIE9GIE5BVkJBUiA9PT09PT09PT09PSAtLT4NCg0KPEhSPg0KPCEtLSA9PT09PT09PSBTVEFSVCBPRiBDTEFTUyBEQVRBID09PT09PT09IC0tPg0KPEgyPg0KPEZPTlQgU0laRT0iLTEiPg0KamF2YXgueG1sLnZhbGlkYXRpb248L0ZPTlQ+DQo8QlI+DQpDbGFzcyAgVHlwZUluZm9Qcm92aWRlcjwvSDI+DQo8UFJFPg0KamF2YS5sYW5nLk9iamVjdA0KICB8DQogICstLTxCPmphdmF4LnhtbC52YWxpZGF0aW9uLlR5cGVJbmZvUHJvdmlkZXI8L0I+DQo8L1BSRT4NCjxIUj4NCjxETD4NCjxEVD5wdWJsaWMgYWJzdHJhY3QgY2xhc3MgPEI+VHlwZUluZm9Qcm92aWRlcjwvQj48RFQ+ZXh0ZW5kcyBqYXZhLmxhbmcuT2JqZWN0PC9ETD4NCg0KPFA+DQpUaGlzIGNsYXNzIHByb3ZpZGVzIGFjY2VzcyB0byB0aGUgdHlwZSBpbmZvcm1hdGlvbiBkZXRlcm1pbmVkCiBieSA8QSBIUkVGPSIuLi8uLi8uLi9qYXZheC94bWwvdmFsaWRhdGlvbi9WYWxpZGF0b3JIYW5kbGVyLmh0bWwiPjxDT0RFPlZhbGlkYXRvckhhbmRsZXI8L0NPREU+PC9BPi4gCiAKIDxwPgogU29tZSBzY2hlbWEgbGFuZ3VhZ2VzLCBzdWNoIGFzIFczQyBYTUwgU2NoZW1hLCBlbmNvdXJhZ2VzIGEgdmFsaWRhdG9yCiB0byByZXBvcnQgdGhlICJ0eXBlIiBpdCBhc3NpZ25zIHRvIGVhY2ggYXR0cmlidXRlL2VsZW1lbnQuCiBUaG9zZSBhcHBsaWNhdGlvbnMgd2hvIHdpc2ggdG8gYWNjZXNzIHRoaXMgdHlwZSBpbmZvcm1hdGlvbiBjYW4gaW52b2tlCiBtZXRob2RzIGRlZmluZWQgb24gdGhpcyAiaW50ZXJmYWNlIiB0byBhY2Nlc3Mgc3VjaCB0eXBlIGluZm9ybWF0aW9uLgogIAogPHA+CiBJbXBsZW1lbnRhdGlvbiBvZiB0aGlzICJpbnRlcmZhY2UiIGNhbiBiZSBvYnRhaW5lZCB0aHJvdWdoIHRoZQogPEEgSFJFRj0iLi4vLi4vLi4vamF2YXgveG1sL3ZhbGlkYXRpb24vVmFsaWRhdG9ySGFuZGxlci5odG1sI2dldFR5cGVJbmZvUHJvdmlkZXIoKSI+PENPREU+VmFsaWRhdG9ySGFuZGxlci5nZXRUeXBlSW5mb1Byb3ZpZGVyKCk8L0NPREU+PC9BPiBtZXRob2QuDQo8UD4NCjxETD4NCjxEVD48Qj5TaW5jZTogPC9CPjxERD4xLjU8L0REPg0KPERUPjxCPlNlZSBBbHNvOiA8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uL29yZy93M2MvZG9tL1R5cGVJbmZvLmh0bWwiPjxDT0RFPlR5cGVJbmZvPC9DT0RFPjwvQT48L0RMPg0KPEhSPg0KDQo8UD4NCjwhLS0gPT09PT09PT0gSU5ORVIgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4NCg0KDQo8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+DQoNCg0KPCEtLSA9PT09PT09PSBDT05TVFJVQ1RPUiBTVU1NQVJZID09PT09PT09IC0tPg0KDQoNCjwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4NCg0KPEEgTkFNRT0ibWV0aG9kX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgo8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFdJRFRIPSIxMDAlIj4NCjxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPg0KPFREIENPTFNQQU49Mj48Rk9OVCBTSVpFPSIrMiI+DQo8Qj5NZXRob2QgU3VtbWFyeTwvQj48L0ZPTlQ+PC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4NCjxDT0RFPmFic3RyYWN0ICZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uL29yZy93M2MvZG9tL1R5cGVJbmZvLmh0bWwiPlR5cGVJbmZvPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi9qYXZheC94bWwvdmFsaWRhdGlvbi9UeXBlSW5mb1Byb3ZpZGVyLmh0bWwjZ2V0QXR0cmlidXRlVHlwZUluZm8oaW50KSI+Z2V0QXR0cmlidXRlVHlwZUluZm88L0E+PC9CPihpbnQmbmJzcDtpbmRleCk8L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIGltbXV0YWJsZSA8QSBIUkVGPSIuLi8uLi8uLi9vcmcvdzNjL2RvbS9UeXBlSW5mby5odG1sIj48Q09ERT5UeXBlSW5mbzwvQ09ERT48L0E+IG9iamVjdCBmb3IgdGhlIHNwZWNpZmllZAogYXR0cmlidXRlIG9mIHRoZSBjdXJyZW50IGVsZW1lbnQuPC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4NCjxDT0RFPmFic3RyYWN0ICZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uL29yZy93M2MvZG9tL1R5cGVJbmZvLmh0bWwiPlR5cGVJbmZvPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi9qYXZheC94bWwvdmFsaWRhdGlvbi9UeXBlSW5mb1Byb3ZpZGVyLmh0bWwjZ2V0RWxlbWVudFR5cGVJbmZvKCkiPmdldEVsZW1lbnRUeXBlSW5mbzwvQT48L0I+KCk8L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1JldHVybnMgdGhlIGltbXV0YWJsZSA8QSBIUkVGPSIuLi8uLi8uLi9vcmcvdzNjL2RvbS9UeXBlSW5mby5odG1sIj48Q09ERT5UeXBlSW5mbzwvQ09ERT48L0E+IG9iamVjdCBmb3IgdGhlIGN1cnJlbnQgZWxlbWVudC48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+YWJzdHJhY3QgJm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi9qYXZheC94bWwvdmFsaWRhdGlvbi9UeXBlSW5mb1Byb3ZpZGVyLmh0bWwjaXNJZEF0dHJpYnV0ZShpbnQpIj5pc0lkQXR0cmlidXRlPC9BPjwvQj4oaW50Jm5ic3A7aW5kZXgpPC9DT0RFPg0KDQo8QlI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIDx0dD50cnVlPC90dD4gaWYgdGhlIHNwZWNpZmllZCBhdHRyaWJ1dGUgaXMgZGV0ZXJtaW5lZAogdG8gYmUgSUQuPC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4NCjxDT0RFPmFic3RyYWN0ICZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vamF2YXgveG1sL3ZhbGlkYXRpb24vVHlwZUluZm9Qcm92aWRlci5odG1sI2lzU3BlY2lmaWVkKGludCkiPmlzU3BlY2lmaWVkPC9BPjwvQj4oaW50Jm5ic3A7aW5kZXgpPC9DT0RFPg0KDQo8QlI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZXR1cm5zIDx0dD5mYWxzZTwvdHQ+IGlmIHRoZSBhdHRyaWJ1dGUgd2FzIGFkZGVkIGJ5IHRoZSB2YWxpZGF0b3IuPC9URD4NCjwvVFI+DQo8L1RBQkxFPg0KJm5ic3A7PEEgTkFNRT0ibWV0aG9kc19pbmhlcml0ZWRfZnJvbV9jbGFzc19qYXZhLmxhbmcuT2JqZWN0Ij48IS0tIC0tPjwvQT4KPFRBQkxFIEJPUkRFUj0iMSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBXSURUSD0iMTAwJSI+DQo8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4NCjxURD48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURD48Q09ERT5lcXVhbHMsIA0KZ2V0Q2xhc3MsIA0KaGFzaENvZGUsIA0Kbm90aWZ5LCANCm5vdGlmeUFsbCwgDQp0b1N0cmluZywgDQp3YWl0LCANCndhaXQsIA0Kd2FpdDwvQ09ERT48L1REPg0KPC9UUj4NCjwvVEFCTEU+DQombmJzcDsNCjxQPg0KDQo8IS0tID09PT09PT09PT09PSBGSUVMRCBERVRBSUwgPT09PT09PT09PT0gLS0+DQoNCg0KPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPg0KDQoNCjwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4NCg0KPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgV0lEVEg9IjEwMCUiPg0KPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+DQo8VEQgQ09MU1BBTj0xPjxGT05UIFNJWkU9IisyIj4NCjxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEQ+DQo8L1RSPg0KPC9UQUJMRT4NCg0KPEEgTkFNRT0iZ2V0RWxlbWVudFR5cGVJbmZvKCkiPjwhLS0gLS0+PC9BPjxIMz4NCmdldEVsZW1lbnRUeXBlSW5mbzwvSDM+DQo8UFJFPg0KcHVibGljIGFic3RyYWN0IDxBIEhSRUY9Ii4uLy4uLy4uL29yZy93M2MvZG9tL1R5cGVJbmZvLmh0bWwiPlR5cGVJbmZvPC9BPiA8Qj5nZXRFbGVtZW50VHlwZUluZm88L0I+KCk8L1BSRT4NCjxETD4NCjxERD48cD5SZXR1cm5zIHRoZSBpbW11dGFibGUgPEEgSFJFRj0iLi4vLi4vLi4vb3JnL3czYy9kb20vVHlwZUluZm8uaHRtbCI+PENPREU+VHlwZUluZm88L0NPREU+PC9BPiBvYmplY3QgZm9yIHRoZSBjdXJyZW50IGVsZW1lbnQuPC9wPgogCiA8cD4KIFRoZSBtZXRob2QgbWF5IG9ubHkgYmUgY2FsbGVkIGJ5IHRoZSBzdGFydEVsZW1lbnQgZXZlbnQgb2YKIHRoZSA8QSBIUkVGPSIuLi8uLi8uLi9vcmcveG1sL3NheC9Db250ZW50SGFuZGxlci5odG1sIj48Q09ERT5Db250ZW50SGFuZGxlcjwvQ09ERT48L0E+IHRoYXQgdGhlIGFwcGxpY2F0aW9uIHNldHMgdG8gdGhlCiA8QSBIUkVGPSIuLi8uLi8uLi9qYXZheC94bWwvdmFsaWRhdGlvbi9WYWxpZGF0b3JIYW5kbGVyLmh0bWwiPjxDT0RFPlZhbGlkYXRvckhhbmRsZXI8L0NPREU+PC9BPi48L3A+PEREPjxETD4NCjxEVD48Qj5SZXR1cm5zOjwvQj48REQ+QW4gaW1tdXRhYmxlIDxBIEhSRUY9Ii4uLy4uLy4uL29yZy93M2MvZG9tL1R5cGVJbmZvLmh0bWwiPjxDT0RFPlR5cGVJbmZvPC9DT0RFPjwvQT4gb2JqZWN0IHRoYXQgcmVwcmVzZW50cyB0aGUKICAgICAgdHlwZSBvZiB0aGUgY3VycmVudCBlbGVtZW50LiAKICAgICAgTm90ZSB0aGF0IHRoZSBjYWxsZXIgY2FuIGtlZXAgcmVmZXJlbmNlcyB0byB0aGUgb2J0YWluZWQKICAgICAgPEEgSFJFRj0iLi4vLi4vLi4vb3JnL3czYy9kb20vVHlwZUluZm8uaHRtbCI+PENPREU+VHlwZUluZm88L0NPREU+PC9BPiBsb25nZXIgdGhhbiB0aGUgY2FsbGJhY2sgc2NvcGUuCiAKICAgICAgT3RoZXJ3aXNlLCB0aGlzIG1ldGhvZCByZXR1cm5zCiAgICAgIG51bGwgaWYgdGhlIHZhbGlkYXRvciBpcyB1bmFibGUgdG8KICAgICAgZGV0ZXJtaW5lIHRoZSB0eXBlIG9mIHRoZSBjdXJyZW50IGVsZW1lbnQgZm9yIHNvbWUgcmVhc29uCiAgICAgIChmb3IgZXhhbXBsZSwgaWYgdGhlIHZhbGlkYXRvciBpcyByZWNvdmVyaW5nIGZyb20KICAgICAgYW4gZWFybGllciBlcnJvci4pPERUPjxCPlRocm93czo8L0I+PEREPmphdmEubGFuZy5JbGxlZ2FsU3RhdGVFeGNlcHRpb24gLSBJZiB0aGlzIG1ldGhvZCBpcyBjYWxsZWQgZnJvbSBvdGhlciA8QSBIUkVGPSIuLi8uLi8uLi9vcmcveG1sL3NheC9Db250ZW50SGFuZGxlci5odG1sIj48Q09ERT5Db250ZW50SGFuZGxlcjwvQ09ERT48L0E+CiAgICAgIG1ldGhvZHMuPC9ETD4NCjwvREQ+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJnZXRBdHRyaWJ1dGVUeXBlSW5mbyhpbnQpIj48IS0tIC0tPjwvQT48SDM+DQpnZXRBdHRyaWJ1dGVUeXBlSW5mbzwvSDM+DQo8UFJFPg0KcHVibGljIGFic3RyYWN0IDxBIEhSRUY9Ii4uLy4uLy4uL29yZy93M2MvZG9tL1R5cGVJbmZvLmh0bWwiPlR5cGVJbmZvPC9BPiA8Qj5nZXRBdHRyaWJ1dGVUeXBlSW5mbzwvQj4oaW50Jm5ic3A7aW5kZXgpPC9QUkU+DQo8REw+DQo8REQ+UmV0dXJucyB0aGUgaW1tdXRhYmxlIDxBIEhSRUY9Ii4uLy4uLy4uL29yZy93M2MvZG9tL1R5cGVJbmZvLmh0bWwiPjxDT0RFPlR5cGVJbmZvPC9DT0RFPjwvQT4gb2JqZWN0IGZvciB0aGUgc3BlY2lmaWVkCiBhdHRyaWJ1dGUgb2YgdGhlIGN1cnJlbnQgZWxlbWVudC4KIAogPHA+CiBUaGUgbWV0aG9kIG1heSBvbmx5IGJlIGNhbGxlZCBieSB0aGUgc3RhcnRFbGVtZW50IGV2ZW50IG9mCiB0aGUgPEEgSFJFRj0iLi4vLi4vLi4vb3JnL3htbC9zYXgvQ29udGVudEhhbmRsZXIuaHRtbCI+PENPREU+Q29udGVudEhhbmRsZXI8L0NPREU+PC9BPiB0aGF0IHRoZSBhcHBsaWNhdGlvbiBzZXRzIHRvIHRoZQogPEEgSFJFRj0iLi4vLi4vLi4vamF2YXgveG1sL3ZhbGlkYXRpb24vVmFsaWRhdG9ySGFuZGxlci5odG1sIj48Q09ERT5WYWxpZGF0b3JIYW5kbGVyPC9DT0RFPjwvQT4uPEREPjxETD4NCjxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+aW5kZXg8L0NPREU+IC0gVGhlIGluZGV4IG9mIHRoZSBhdHRyaWJ1dGUuIFRoZSBzYW1lIGluZGV4IGZvcgogICAgICB0aGUgPEEgSFJFRj0iLi4vLi4vLi4vb3JnL3htbC9zYXgvQXR0cmlidXRlcy5odG1sIj48Q09ERT5BdHRyaWJ1dGVzPC9DT0RFPjwvQT4gb2JqZWN0IHBhc3NlZCB0byB0aGUKICAgICAgPHR0PnN0YXJ0RWxlbWVudDwvdHQ+IGNhbGxiYWNrLjxEVD48Qj5SZXR1cm5zOjwvQj48REQ+QW4gaW1tdXRhYmxlIDxBIEhSRUY9Ii4uLy4uLy4uL29yZy93M2MvZG9tL1R5cGVJbmZvLmh0bWwiPjxDT0RFPlR5cGVJbmZvPC9DT0RFPjwvQT4gb2JqZWN0IHRoYXQgcmVwcmVzZW50cyB0aGUKICAgICAgdHlwZSBvZiB0aGUgc3BlY2lmaWVkIGF0dHJpYnV0ZS4gCiAgICAgIE5vdGUgdGhhdCB0aGUgY2FsbGVyIGNhbiBrZWVwIHJlZmVyZW5jZXMgdG8gdGhlIG9idGFpbmVkCiAgICAgIDxBIEhSRUY9Ii4uLy4uLy4uL29yZy93M2MvZG9tL1R5cGVJbmZvLmh0bWwiPjxDT0RFPlR5cGVJbmZvPC9DT0RFPjwvQT4gbG9uZ2VyIHRoYW4gdGhlIGNhbGxiYWNrIHNjb3BlLgogCiAgICAgIE90aGVyd2lzZSwgdGhpcyBtZXRob2QgcmV0dXJucwogICAgICBudWxsIGlmIHRoZSB2YWxpZGF0b3IgaXMgdW5hYmxlIHRvCiAgICAgIGRldGVybWluZSB0aGUgdHlwZS48RFQ+PEI+VGhyb3dzOjwvQj48REQ+amF2YS5sYW5nLkluZGV4T3V0T2ZCb3VuZHNFeGNlcHRpb24gLSBJZiB0aGUgaW5kZXggaXMgaW52YWxpZC48REQ+amF2YS5sYW5nLklsbGVnYWxTdGF0ZUV4Y2VwdGlvbiAtIElmIHRoaXMgbWV0aG9kIGlzIGNhbGxlZCBmcm9tIG90aGVyIDxBIEhSRUY9Ii4uLy4uLy4uL29yZy94bWwvc2F4L0NvbnRlbnRIYW5kbGVyLmh0bWwiPjxDT0RFPkNvbnRlbnRIYW5kbGVyPC9DT0RFPjwvQT4KICAgICAgbWV0aG9kcy48L0RMPg0KPC9ERD4NCjwvREw+DQo8SFI+DQoNCjxBIE5BTUU9ImlzSWRBdHRyaWJ1dGUoaW50KSI+PCEtLSAtLT48L0E+PEgzPg0KaXNJZEF0dHJpYnV0ZTwvSDM+DQo8UFJFPg0KcHVibGljIGFic3RyYWN0IGJvb2xlYW4gPEI+aXNJZEF0dHJpYnV0ZTwvQj4oaW50Jm5ic3A7aW5kZXgpPC9QUkU+DQo8REw+DQo8REQ+UmV0dXJucyA8dHQ+dHJ1ZTwvdHQ+IGlmIHRoZSBzcGVjaWZpZWQgYXR0cmlidXRlIGlzIGRldGVybWluZWQKIHRvIGJlIElELgogCiA8cD4KIEV4YWNseSBob3cgYW4gYXR0cmlidXRlIGlzICJkZXRlcm1pbmVkIHRvIGJlIElEIiBpcyB1cCB0byB0aGUKIHNjaGVtYSBsYW5ndWFnZS4gSW4gY2FzZSBvZiBXM0MgWE1MIFNjaGVtYSwgdGhpcyBtZWFucwogdGhhdCB0aGUgYWN0dWFsIHR5cGUgb2YgdGhlIGF0dHJpYnV0ZSBpcyB0aGUgYnVpbHQtaW4gSUQgdHlwZQogb3IgaXRzIGRlcml2ZWQgdHlwZS4KIAogPHA+CiBBIDxBIEhSRUY9Ii4uLy4uLy4uL2phdmF4L3htbC9wYXJzZXJzL0RvY3VtZW50QnVpbGRlci5odG1sIj48Q09ERT5Eb2N1bWVudEJ1aWxkZXI8L0NPREU+PC9BPiB1c2VzIHRoaXMgaW5mb3JtYXRpb24KIHRvIHByb3Blcmx5IGltcGxlbWVudCA8QSBIUkVGPSIuLi8uLi8uLi9vcmcvdzNjL2RvbS9BdHRyLmh0bWwjaXNJZCgpIj48Q09ERT5BdHRyLmlzSWQoKTwvQ09ERT48L0E+LgogCiA8cD4KIFRoZSBtZXRob2QgbWF5IG9ubHkgYmUgY2FsbGVkIGJ5IHRoZSBzdGFydEVsZW1lbnQgZXZlbnQgb2YKIHRoZSA8QSBIUkVGPSIuLi8uLi8uLi9vcmcveG1sL3NheC9Db250ZW50SGFuZGxlci5odG1sIj48Q09ERT5Db250ZW50SGFuZGxlcjwvQ09ERT48L0E+IHRoYXQgdGhlIGFwcGxpY2F0aW9uIHNldHMgdG8gdGhlCiA8QSBIUkVGPSIuLi8uLi8uLi9qYXZheC94bWwvdmFsaWRhdGlvbi9WYWxpZGF0b3JIYW5kbGVyLmh0bWwiPjxDT0RFPlZhbGlkYXRvckhhbmRsZXI8L0NPREU+PC9BPi48REQ+PERMPg0KPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5pbmRleDwvQ09ERT4gLSBUaGUgaW5kZXggb2YgdGhlIGF0dHJpYnV0ZS4gVGhlIHNhbWUgaW5kZXggZm9yCiAgICAgIHRoZSA8QSBIUkVGPSIuLi8uLi8uLi9vcmcveG1sL3NheC9BdHRyaWJ1dGVzLmh0bWwiPjxDT0RFPkF0dHJpYnV0ZXM8L0NPREU+PC9BPiBvYmplY3QgcGFzc2VkIHRvIHRoZQogICAgICA8dHQ+c3RhcnRFbGVtZW50PC90dD4gY2FsbGJhY2suPERUPjxCPlJldHVybnM6PC9CPjxERD50cnVlCiAgICAgIGlmIHRoZSB0eXBlIG9mIHRoZSBzcGVjaWZpZWQgYXR0cmlidXRlIGlzIElELjxEVD48Qj5UaHJvd3M6PC9CPjxERD5qYXZhLmxhbmcuSW5kZXhPdXRPZkJvdW5kc0V4Y2VwdGlvbiAtIElmIHRoZSBpbmRleCBpcyBpbnZhbGlkLjxERD5qYXZhLmxhbmcuSWxsZWdhbFN0YXRlRXhjZXB0aW9uIC0gSWYgdGhpcyBtZXRob2QgaXMgY2FsbGVkIGZyb20gb3RoZXIgPEEgSFJFRj0iLi4vLi4vLi4vb3JnL3htbC9zYXgvQ29udGVudEhhbmRsZXIuaHRtbCI+PENPREU+Q29udGVudEhhbmRsZXI8L0NPREU+PC9BPgogICAgICBtZXRob2RzLjwvREw+DQo8L0REPg0KPC9ETD4NCjxIUj4NCg0KPEEgTkFNRT0iaXNTcGVjaWZpZWQoaW50KSI+PCEtLSAtLT48L0E+PEgzPg0KaXNTcGVjaWZpZWQ8L0gzPg0KPFBSRT4NCnB1YmxpYyBhYnN0cmFjdCBib29sZWFuIDxCPmlzU3BlY2lmaWVkPC9CPihpbnQmbmJzcDtpbmRleCk8L1BSRT4NCjxETD4NCjxERD5SZXR1cm5zIDx0dD5mYWxzZTwvdHQ+IGlmIHRoZSBhdHRyaWJ1dGUgd2FzIGFkZGVkIGJ5IHRoZSB2YWxpZGF0b3IuCiAKIDxwPgogVGhpcyBtZXRob2QgcHJvdmlkZXMgaW5mb3JtYXRpb24gbmVjZXNzYXJ5IGZvcgogYSA8QSBIUkVGPSIuLi8uLi8uLi9qYXZheC94bWwvcGFyc2Vycy9Eb2N1bWVudEJ1aWxkZXIuaHRtbCI+PENPREU+RG9jdW1lbnRCdWlsZGVyPC9DT0RFPjwvQT4gdG8gZGV0ZXJtaW5lIHdoYXQKIHRoZSBET00gdHJlZSBzaG91bGQgcmV0dXJuIGZyb20gdGhlIDxBIEhSRUY9Ii4uLy4uLy4uL29yZy93M2MvZG9tL0F0dHIuaHRtbCNnZXRTcGVjaWZpZWQoKSI+PENPREU+QXR0ci5nZXRTcGVjaWZpZWQoKTwvQ09ERT48L0E+IG1ldGhvZC4KIAogPHA+CiBUaGUgbWV0aG9kIG1heSBvbmx5IGJlIGNhbGxlZCBieSB0aGUgc3RhcnRFbGVtZW50IGV2ZW50IG9mCiB0aGUgPEEgSFJFRj0iLi4vLi4vLi4vb3JnL3htbC9zYXgvQ29udGVudEhhbmRsZXIuaHRtbCI+PENPREU+Q29udGVudEhhbmRsZXI8L0NPREU+PC9BPiB0aGF0IHRoZSBhcHBsaWNhdGlvbiBzZXRzIHRvIHRoZQogPEEgSFJFRj0iLi4vLi4vLi4vamF2YXgveG1sL3ZhbGlkYXRpb24vVmFsaWRhdG9ySGFuZGxlci5odG1sIj48Q09ERT5WYWxpZGF0b3JIYW5kbGVyPC9DT0RFPjwvQT4uCiAKIDxwPgogQSBnZW5lcmFsIGd1aWRlbGluZSBmb3IgdmFsaWRhdG9ycyBpcyB0byByZXR1cm4gdHJ1ZSBpZgogdGhlIGF0dHJpYnV0ZSB3YXMgb3JpZ2luYWxseSBwcmVzZW50IGluIHRoZSBwaXBlbGluZSwgYW5kCiBmYWxzZSBpZiBpdCB3YXMgYWRkZWQgYnkgdGhlIHZhbGlkYXRvci48REQ+PERMPg0KPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5pbmRleDwvQ09ERT4gLSBUaGUgaW5kZXggb2YgdGhlIGF0dHJpYnV0ZS4gVGhlIHNhbWUgaW5kZXggZm9yCiAgICAgIHRoZSA8QSBIUkVGPSIuLi8uLi8uLi9vcmcveG1sL3NheC9BdHRyaWJ1dGVzLmh0bWwiPjxDT0RFPkF0dHJpYnV0ZXM8L0NPREU+PC9BPiBvYmplY3QgcGFzc2VkIHRvIHRoZQogICAgICA8dHQ+c3RhcnRFbGVtZW50PC90dD4gY2FsbGJhY2suPERUPjxCPlJldHVybnM6PC9CPjxERD48dHQ+dHJ1ZTwvdHQ+IGlmIHRoZSBhdHRyaWJ1dGUgd2FzIHByZXNlbnQgYmVmb3JlIHRoZSB2YWxpZGF0b3IKICAgICAgcHJvY2Vzc2VzIGlucHV0LiA8dHQ+ZmFsc2U8L3R0PiBpZiB0aGUgYXR0cmlidXRlIHdhcyBhZGRlZAogICAgICBieSB0aGUgdmFsaWRhdG9yLjxEVD48Qj5UaHJvd3M6PC9CPjxERD5qYXZhLmxhbmcuSW5kZXhPdXRPZkJvdW5kc0V4Y2VwdGlvbiAtIElmIHRoZSBpbmRleCBpcyBpbnZhbGlkLjxERD5qYXZhLmxhbmcuSWxsZWdhbFN0YXRlRXhjZXB0aW9uIC0gSWYgdGhpcyBtZXRob2QgaXMgY2FsbGVkIGZyb20gb3RoZXIgPEEgSFJFRj0iLi4vLi4vLi4vb3JnL3htbC9zYXgvQ29udGVudEhhbmRsZXIuaHRtbCI+PENPREU+Q29udGVudEhhbmRsZXI8L0NPREU+PC9BPgogICAgICBtZXRob2RzLjwvREw+DQo8L0REPg0KPC9ETD4NCjwhLS0gPT09PT09PT09IEVORCBPRiBDTEFTUyBEQVRBID09PT09PT09PSAtLT4NCjxIUj4NCg0KPCEtLSA9PT09PT09PT09IFNUQVJUIE9GIE5BVkJBUiA9PT09PT09PT09IC0tPg0KPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiPg0KPFRSPg0KPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPg0KPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyI+DQogIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+DQogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL1R5cGVJbmZvUHJvdmlkZXIuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4NCiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uL2luZGV4LWFsbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4NCiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDwvVFI+DQo8L1RBQkxFPg0KPC9URD4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPg0KPC9FTT4NCjwvVEQ+DQo8L1RSPg0KDQo8VFI+DQo8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPg0KJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vamF2YXgveG1sL3ZhbGlkYXRpb24vU2NoZW1hRmFjdG9yeS5odG1sIj48Qj5QUkVWIENMQVNTPC9CPjwvQT4mbmJzcDsNCiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uL2phdmF4L3htbC92YWxpZGF0aW9uL1ZhbGlkYXRvci5odG1sIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4NCjxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+DQogIDxBIEhSRUY9Ii4uLy4uLy4uL2luZGV4Lmh0bWwiIFRBUkdFVD0iX3RvcCI+PEI+RlJBTUVTPC9CPjwvQT4gICZuYnNwOw0KJm5ic3A7PEEgSFJFRj0iVHlwZUluZm9Qcm92aWRlci5odG1sIiBUQVJHRVQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+PC9GT05UPjwvVEQ+DQo8L1RSPg0KPFRSPg0KPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4NCiAgU1VNTUFSWTogJm5ic3A7SU5ORVImbmJzcDt8Jm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPg0KPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4NCkRFVEFJTDogJm5ic3A7RklFTEQmbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+DQo8L1RSPg0KPC9UQUJMRT4NCjwhLS0gPT09PT09PT09PT0gRU5EIE9GIE5BVkJBUiA9PT09PT09PT09PSAtLT4NCg0KPEhSPg0KQ29weXJpZ2h0IKkgMjAwNiBBcGFjaGUgWE1MIFByb2plY3QuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuDQo8L0JPRFk+DQo8L0hUTUw+DQo=