PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9uYWwvL0VOIiJodHRwOi8vd3d3LnczLm9yZy9UUi9SRUMtaHRtbDQwL2xvb3NlLmR0ZCI+CjwhLS1OZXdQYWdlLS0+CjxIVE1MPgo8SEVBRD4KPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyBvbiBGcmkgQXVnIDIyIDAzOjQzOjU5IEVEVCAyMDAzIC0tPgo8VElUTEU+CkRlZmluaXRpb25zVXRpbCAoQXBhY2hlIFN0cnV0cyBBUEkgRG9jdW1lbnRhdGlvbikKPC9USVRMRT4KPE1FVEEgTkFNRT0ia2V5d29yZHMiIENPTlRFTlQ9Im9yZy5hcGFjaGUuc3RydXRzLnRpbGVzLkRlZmluaXRpb25zVXRpbCxEZWZpbml0aW9uc1V0aWwgY2xhc3MiPgo8TElOSyBSRUwgPSJzdHlsZXNoZWV0IiBUWVBFPSJ0ZXh0L2NzcyIgSFJFRj0iLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MiIFRJVExFPSJTdHlsZSI+CjwvSEVBRD4KPFNDUklQVD4KZnVuY3Rpb24gYXNkKCkKewpwYXJlbnQuZG9jdW1lbnQudGl0bGU9IkRlZmluaXRpb25zVXRpbCAoQXBhY2hlIFN0cnV0cyBBUEkgRG9jdW1lbnRhdGlvbikiOwp9CjwvU0NSSVBUPgo8Qk9EWSBCR0NPTE9SPSJ3aGl0ZSIgb25sb2FkPSJhc2QoKTsiPgoKPCEtLSA9PT09PT09PT09IFNUQVJUIE9GIE5BVkJBUiA9PT09PT09PT09IC0tPgo8QSBOQU1FPSJuYXZiYXJfdG9wIj48IS0tIC0tPjwvQT4KPFRBQkxFIEJPUkRFUj0iMCIgV0lEVEg9IjEwMCUiIENFTExQQURESU5HPSIxIiBDRUxMU1BBQ0lORz0iMCI+CjxUUj4KPFREIENPTFNQQU49MyBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPgo8QSBOQU1FPSJuYXZiYXJfdG9wX2ZpcnN0cm93Ij48IS0tIC0tPjwvQT4KPFRBQkxFIEJPUkRFUj0iMCIgQ0VMTFBBRERJTkc9IjAiIENFTExTUEFDSU5HPSIzIj4KICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPgogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXN1bW1hcnkuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5QYWNrYWdlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0RlZmluaXRpb25zVXRpbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlVzZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXgtYWxsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgogIDwvVFI+CjwvVEFCTEU+CjwvVEQ+CjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgo8L0VNPgo8L1REPgo8L1RSPgoKPFRSPgo8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgombmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc0ZhY3RvcnlDb25maWcuaHRtbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7CiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zVXRpbC5TZXJ2bGV0UHJvcGVydGllc01hcC5odG1sIj48Qj5ORVhUIENMQVNTPC9CPjwvQT48L0ZPTlQ+PC9URD4KPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sIiBUQVJHRVQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKJm5ic3A7PEEgSFJFRj0iRGVmaW5pdGlvbnNVdGlsLmh0bWwiIFRBUkdFVD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT4gICZuYnNwOwombmJzcDsKPFNDUklQVD4KICA8IS0tCiAgaWYod2luZG93PT10b3ApIHsKICAgIGRvY3VtZW50LndyaXRlbG4oJzxBIEhSRUY9Ii4uLy4uLy4uLy4uL2FsbGNsYXNzZXMtbm9mcmFtZS5odG1sIiBUQVJHRVQ9IiI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPicpOwogIH0KICAvLy0tPgo8L1NDUklQVD4KPE5PU0NSSVBUPgo8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCIgVEFSR0VUPSIiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4KPC9OT1NDUklQVD4KPC9GT05UPjwvVEQ+CjwvVFI+CjxUUj4KPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KICBTVU1NQVJZOiZuYnNwOzxBIEhSRUY9IiNuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+TkVTVEVEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPgo8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPgpERVRBSUw6Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNjb25zdHJ1Y3Rvcl9kZXRhaWwiPkNPTlNUUjwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KPC9UUj4KPC9UQUJMRT4KPCEtLSA9PT09PT09PT09PSBFTkQgT0YgTkFWQkFSID09PT09PT09PT09IC0tPgoKPEhSPgo8IS0tID09PT09PT09IFNUQVJUIE9GIENMQVNTIERBVEEgPT09PT09PT0gLS0+CjxIMj4KPEZPTlQgU0laRT0iLTEiPgpvcmcuYXBhY2hlLnN0cnV0cy50aWxlczwvRk9OVD4KPEJSPgpDbGFzcyBEZWZpbml0aW9uc1V0aWw8L0gyPgo8UFJFPgpqYXZhLmxhbmcuT2JqZWN0CiAgfAogICstLTxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL1RpbGVzVXRpbC5odG1sIj5vcmcuYXBhY2hlLnN0cnV0cy50aWxlcy5UaWxlc1V0aWw8L0E+CiAgICAgICAgfAogICAgICAgICstLTxCPm9yZy5hcGFjaGUuc3RydXRzLnRpbGVzLkRlZmluaXRpb25zVXRpbDwvQj4KPC9QUkU+CjxETD4KPERUPjxCPkFsbCBJbXBsZW1lbnRlZCBJbnRlcmZhY2VzOjwvQj4gPEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RhZ2xpYi90aWxlcy9Db21wb25lbnRDb25zdGFudHMuaHRtbCI+Q29tcG9uZW50Q29uc3RhbnRzPC9BPjwvREQ+CjwvREw+CjxIUj4KPEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+VXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL1RpbGVzVXRpbC5odG1sI2NyZWF0ZURlZmluaXRpb25zRmFjdG9yeShqYXZheC5zZXJ2bGV0LlNlcnZsZXRDb250ZXh0LCBvcmcuYXBhY2hlLnN0cnV0cy50aWxlcy5EZWZpbml0aW9uc0ZhY3RvcnlDb25maWcpIj48Q09ERT5UaWxlc1V0aWwuY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5KFNlcnZsZXRDb250ZXh0LCBEZWZpbml0aW9uc0ZhY3RvcnlDb25maWcpPC9DT0RFPjwvQT48L0k+CjxQPgo8REw+CjxEVD5wdWJsaWMgY2xhc3MgPEI+RGVmaW5pdGlvbnNVdGlsPC9CPjxEVD5leHRlbmRzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL1RpbGVzVXRpbC5odG1sIj5UaWxlc1V0aWw8L0E+PERUPmltcGxlbWVudHMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGFnbGliL3RpbGVzL0NvbXBvbmVudENvbnN0YW50cy5odG1sIj5Db21wb25lbnRDb25zdGFudHM8L0E+PC9ETD4KCjxQPgpVdGlsaXRpZXMgY2xhc3MgZm9yIGRlZmluaXRpb25zIGZhY3RvcnkuCiBBbHNvIGRlZmluZSB1c2VyRGVidWdMZXZlbCBwcm9wZXJ0eSAodG8gYmUgbW92ZWQgZnJvbSB0aGlzIGNsYXNzID8pLgogKHRvIGRvKS4KPFA+Cgo8UD4KPEhSPgoKPFA+CjwhLS0gPT09PT09PT0gTkVTVEVEIENMQVNTIFNVTU1BUlkgPT09PT09PT0gLS0+Cgo8QSBOQU1FPSJuZXN0ZWRfY2xhc3Nfc3VtbWFyeSI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgV0lEVEg9IjEwMCUiPgo8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KPFREIENPTFNQQU49Mj48Rk9OVCBTSVpFPSIrMiI+CjxCPk5lc3RlZCBDbGFzcyBTdW1tYXJ5PC9CPjwvRk9OVD48L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgo8Q09ERT4ocGFja2FnZSBwcml2YXRlKSBzdGF0aWMmbmJzcDtjbGFzczwvQ09ERT48L0ZPTlQ+PC9URD4KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zVXRpbC5TZXJ2bGV0UHJvcGVydGllc01hcC5odG1sIj5EZWZpbml0aW9uc1V0aWwuU2VydmxldFByb3BlcnRpZXNNYXA8L0E+PC9CPjwvQ09ERT4KCjxCUj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7SW5uZXIgY2xhc3MuPC9URD4KPC9UUj4KPC9UQUJMRT4KJm5ic3A7CjwhLS0gPT09PT09PT09PT0gRklFTEQgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KCjxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgo8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFdJRFRIPSIxMDAlIj4KPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+CjxURCBDT0xTUEFOPTI+PEZPTlQgU0laRT0iKzIiPgo8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgo8Q09ERT5zdGF0aWMmbmJzcDtqYXZhLmxhbmcuU3RyaW5nPC9DT0RFPjwvRk9OVD48L1REPgo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNVdGlsLmh0bWwjQUNUSU9OX0RFRklOSVRJT04iPkFDVElPTl9ERUZJTklUSU9OPC9BPjwvQj48L0NPREU+Cgo8QlI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwO0NvbnN0YW50IG5hbWUgdXNlZCB0byBzdG9yZSBkZWZpbml0aW9uIGluIGpzcCBjb250ZXh0LjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+CjxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+CjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc1V0aWwuaHRtbCNERUZJTklUSU9OU19DT05GSUdfVVNFUl9ERUJVR19MRVZFTCI+REVGSU5JVElPTlNfQ09ORklHX1VTRVJfREVCVUdfTEVWRUw8L0E+PC9CPjwvQ09ERT4KCjxCUj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7TmFtZSBvZiBpbml0IHByb3BlcnR5IGNhcnJ5aW5nIGRlYnVnIGxldmVsPC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KPENPREU+c3RhdGljJm5ic3A7amF2YS5sYW5nLlN0cmluZzwvQ09ERT48L0ZPTlQ+PC9URD4KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zVXRpbC5odG1sI0RFRklOSVRJT05TX0ZBQ1RPUlkiPkRFRklOSVRJT05TX0ZBQ1RPUlk8L0E+PC9CPjwvQ09ERT4KCjxCUj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7Q29uc3RhbnQgbmFtZSB1c2VkIHRvIHN0b3JlIGZhY3RvcnkgaW4gY29udGV4dDwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+CjxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+CjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc1V0aWwuaHRtbCNERUZJTklUSU9OU19GQUNUT1JZX0NMQVNTTkFNRSI+REVGSU5JVElPTlNfRkFDVE9SWV9DTEFTU05BTUU8L0E+PC9CPjwvQ09ERT4KCjxCUj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7TmFtZSBvZiBpbml0IHByb3BlcnR5IGNhcnJ5aW5nIGZhY3RvcnkgY2xhc3MgbmFtZTwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+CjxDT0RFPnN0YXRpYyZuYnNwO2phdmEubGFuZy5TdHJpbmc8L0NPREU+PC9GT05UPjwvVEQ+CjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc1V0aWwuaHRtbCNJTlNUQU5DRVNfQ09ORklHX1VTRVJfREVCVUdfTEVWRUwiPklOU1RBTkNFU19DT05GSUdfVVNFUl9ERUJVR19MRVZFTDwvQT48L0I+PC9DT0RFPgoKPEJSPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST51c2UgREVGSU5JVElPTlNfQ09ORklHX1VTRVJfREVCVUdfTEVWRUwgaW5zdGVhZC48L0k+PC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KPENPREU+cHJvdGVjdGVkIHN0YXRpYyZuYnNwO29yZy5hcGFjaGUuY29tbW9ucy5sb2dnaW5nLkxvZzwvQ09ERT48L0ZPTlQ+PC9URD4KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zVXRpbC5odG1sI2xvZyI+bG9nPC9BPjwvQj48L0NPREU+Cgo8QlI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwO0NvbW1vbnMgTG9nZ2luZyBpbnN0YW5jZS48L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgo8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+CjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc1V0aWwuaHRtbCNOT19ERUJVRyI+Tk9fREVCVUc8L0E+PC9CPjwvQ09ERT4KCjxCUj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7VXNlciBEZWJ1ZyBsZXZlbDwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+CjxDT0RFPnN0YXRpYyZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zVXRpbC5odG1sI3VzZXJEZWJ1Z0xldmVsIj51c2VyRGVidWdMZXZlbDwvQT48L0I+PC9DT0RFPgoKPEJSPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDtHbG9iYWwgdXNlciBkZWZpbmVkIGRlYnVnIGxldmVsPC9URD4KPC9UUj4KPC9UQUJMRT4KJm5ic3A7PEEgTkFNRT0iZmllbGRzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5hcGFjaGUuc3RydXRzLnRpbGVzLlRpbGVzVXRpbCI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgV0lEVEg9IjEwMCUiPgo8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KPFREPjxCPkZpZWxkcyBpbmhlcml0ZWQgZnJvbSBjbGFzcyBvcmcuYXBhY2hlLnN0cnV0cy50aWxlcy48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9UaWxlc1V0aWwuaHRtbCI+VGlsZXNVdGlsPC9BPjwvQj48L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL1RpbGVzVXRpbC5odG1sI3RpbGVzVXRpbEltcGwiPnRpbGVzVXRpbEltcGw8L0E+PC9DT0RFPjwvVEQ+CjwvVFI+CjwvVEFCTEU+CiZuYnNwOzxBIE5BTUU9ImZpZWxkc19pbmhlcml0ZWRfZnJvbV9jbGFzc19vcmcuYXBhY2hlLnN0cnV0cy50YWdsaWIudGlsZXMuQ29tcG9uZW50Q29uc3RhbnRzIj48IS0tIC0tPjwvQT4KPFRBQkxFIEJPUkRFUj0iMSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBXSURUSD0iMTAwJSI+CjxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPgo8VEQ+PEI+RmllbGRzIGluaGVyaXRlZCBmcm9tIGludGVyZmFjZSBvcmcuYXBhY2hlLnN0cnV0cy50YWdsaWIudGlsZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGFnbGliL3RpbGVzL0NvbXBvbmVudENvbnN0YW50cy5odG1sIj5Db21wb25lbnRDb25zdGFudHM8L0E+PC9CPjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGFnbGliL3RpbGVzL0NvbXBvbmVudENvbnN0YW50cy5odG1sI0NPTVBPTkVOVF9DT05URVhUIj5DT01QT05FTlRfQ09OVEVYVDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RhZ2xpYi90aWxlcy9Db21wb25lbnRDb25zdGFudHMuaHRtbCNDT01QT05FTlRfU0NPUEUiPkNPTVBPTkVOVF9TQ09QRTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RhZ2xpYi90aWxlcy9Db21wb25lbnRDb25zdGFudHMuaHRtbCNFWENFUFRJT05fS0VZIj5FWENFUFRJT05fS0VZPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGFnbGliL3RpbGVzL0NvbXBvbmVudENvbnN0YW50cy5odG1sI0xPQ0FMRV9LRVkiPkxPQ0FMRV9LRVk8L0E+PC9DT0RFPjwvVEQ+CjwvVFI+CjwvVEFCTEU+CiZuYnNwOwo8IS0tID09PT09PT09IENPTlNUUlVDVE9SIFNVTU1BUlkgPT09PT09PT0gLS0+Cgo8QSBOQU1FPSJjb25zdHJ1Y3Rvcl9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KPFRBQkxFIEJPUkRFUj0iMSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBXSURUSD0iMTAwJSI+CjxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgo8VEQgQ09MU1BBTj0yPjxGT05UIFNJWkU9IisyIj4KPEI+Q29uc3RydWN0b3IgU3VtbWFyeTwvQj48L0ZPTlQ+PC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc1V0aWwuaHRtbCNEZWZpbml0aW9uc1V0aWwoKSI+RGVmaW5pdGlvbnNVdGlsPC9BPjwvQj4oKTwvQ09ERT4KCjxCUj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7Jm5ic3A7PC9URD4KPC9UUj4KPC9UQUJMRT4KJm5ic3A7CjwhLS0gPT09PT09PT09PSBNRVRIT0QgU1VNTUFSWSA9PT09PT09PT09PSAtLT4KCjxBIE5BTUU9Im1ldGhvZF9zdW1tYXJ5Ij48IS0tIC0tPjwvQT4KPFRBQkxFIEJPUkRFUj0iMSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBXSURUSD0iMTAwJSI+CjxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgo8VEQgQ09MU1BBTj0yPjxGT05UIFNJWkU9IisyIj4KPEI+TWV0aG9kIFN1bW1hcnk8L0I+PC9GT05UPjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+CjxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zRmFjdG9yeS5odG1sIj5EZWZpbml0aW9uc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNVdGlsLmh0bWwjY3JlYXRlRGVmaW5pdGlvbkZhY3RvcnlJbnN0YW5jZShqYXZhLmxhbmcuU3RyaW5nKSI+Y3JlYXRlRGVmaW5pdGlvbkZhY3RvcnlJbnN0YW5jZTwvQT48L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtjbGFzc25hbWUpPC9DT0RFPgoKPEJSPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST5ObyBkaXJlY3QgcmVwbGFjZW1lbnQuIFVzZSBjcmVhdGVEZWZpbml0aW9uRmFjdG9yeQogPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvVGlsZXNVdGlsLmh0bWwjY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQsIG9yZy5hcGFjaGUuc3RydXRzLnRpbGVzLkRlZmluaXRpb25zRmFjdG9yeUNvbmZpZykiPjxDT0RFPlRpbGVzVXRpbC5jcmVhdGVEZWZpbml0aW9uc0ZhY3RvcnkoU2VydmxldENvbnRleHQsIERlZmluaXRpb25zRmFjdG9yeUNvbmZpZyk8L0NPREU+PC9BPi48L0k+PC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KPENPREU+c3RhdGljJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNGYWN0b3J5Lmh0bWwiPkRlZmluaXRpb25zRmFjdG9yeTwvQT48L0NPREU+PC9GT05UPjwvVEQ+CjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc1V0aWwuaHRtbCNjcmVhdGVEZWZpbml0aW9uc0ZhY3RvcnkoamF2YXguc2VydmxldC5TZXJ2bGV0Q29udGV4dCwgamF2YS51dGlsLk1hcCkiPmNyZWF0ZURlZmluaXRpb25zRmFjdG9yeTwvQT48L0I+KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQmbmJzcDtzZXJ2bGV0Q29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEudXRpbC5NYXAmbmJzcDtwcm9wZXJ0aWVzKTwvQ09ERT4KCjxCUj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7Q3JlYXRlIGRlZmF1bHQgRGVmaW5pdGlvbiBmYWN0b3J5LjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+CjxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zRmFjdG9yeS5odG1sIj5EZWZpbml0aW9uc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNVdGlsLmh0bWwjY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQsIGphdmEudXRpbC5NYXAsIGphdmEubGFuZy5TdHJpbmcpIj5jcmVhdGVEZWZpbml0aW9uc0ZhY3Rvcnk8L0E+PC9CPihqYXZheC5zZXJ2bGV0LlNlcnZsZXRDb250ZXh0Jm5ic3A7c2VydmxldENvbnRleHQsCiAgICAgICAgICAgICAgICAgICAgICAgICBqYXZhLnV0aWwuTWFwJm5ic3A7cHJvcGVydGllcywKICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5TdHJpbmcmbmJzcDtjbGFzc25hbWUpPC9DT0RFPgoKPEJSPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8ST5Vc2UgY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5KFNlcnZsZXRDb250ZXh0IHNlcnZsZXRDb250ZXh0LCBTZXJ2bGV0Q29uZmlnIHNlcnZsZXRDb25maWcpPC9JPjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+CjxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zRmFjdG9yeS5odG1sIj5EZWZpbml0aW9uc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNVdGlsLmh0bWwjY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQsIGphdmF4LnNlcnZsZXQuU2VydmxldENvbmZpZykiPmNyZWF0ZURlZmluaXRpb25zRmFjdG9yeTwvQT48L0I+KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQmbmJzcDtzZXJ2bGV0Q29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgIGphdmF4LnNlcnZsZXQuU2VydmxldENvbmZpZyZuYnNwO3NlcnZsZXRDb25maWcpPC9DT0RFPgoKPEJSPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDtDcmVhdGUgRGVmaW5pdGlvbiBmYWN0b3J5LjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+CjxDT0RFPnN0YXRpYyZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zRmFjdG9yeS5odG1sIj5EZWZpbml0aW9uc0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPgo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNVdGlsLmh0bWwjY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQsIGphdmF4LnNlcnZsZXQuU2VydmxldENvbmZpZywgYm9vbGVhbikiPmNyZWF0ZURlZmluaXRpb25zRmFjdG9yeTwvQT48L0I+KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQmbmJzcDtzZXJ2bGV0Q29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgIGphdmF4LnNlcnZsZXQuU2VydmxldENvbmZpZyZuYnNwO3NlcnZsZXRDb25maWcsCiAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y2hlY2tJZkV4aXN0KTwvQ09ERT4KCjxCUj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7Q3JlYXRlIERlZmluaXRpb24gZmFjdG9yeS48L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgo8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9Db21wb25lbnREZWZpbml0aW9uLmh0bWwiPkNvbXBvbmVudERlZmluaXRpb248L0E+PC9DT0RFPjwvRk9OVD48L1REPgo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNVdGlsLmh0bWwjZ2V0QWN0aW9uRGVmaW5pdGlvbihqYXZheC5zZXJ2bGV0LlNlcnZsZXRSZXF1ZXN0KSI+Z2V0QWN0aW9uRGVmaW5pdGlvbjwvQT48L0I+KGphdmF4LnNlcnZsZXQuU2VydmxldFJlcXVlc3QmbmJzcDtyZXF1ZXN0KTwvQ09ERT4KCjxCUj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7R2V0IERlZmluaXRpb24gc3RvcmVkIGluIGpzcCBjb250ZXh0IGJ5IGFuIGFjdGlvbi48L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgo8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9Db21wb25lbnREZWZpbml0aW9uLmh0bWwiPkNvbXBvbmVudERlZmluaXRpb248L0E+PC9DT0RFPjwvRk9OVD48L1REPgo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNVdGlsLmh0bWwjZ2V0RGVmaW5pdGlvbihqYXZhLmxhbmcuU3RyaW5nLCBqYXZheC5zZXJ2bGV0LmpzcC5QYWdlQ29udGV4dCkiPmdldERlZmluaXRpb248L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7ZGVmaW5pdGlvbk5hbWUsCiAgICAgICAgICAgICAgamF2YXguc2VydmxldC5qc3AuUGFnZUNvbnRleHQmbmJzcDtwYWdlQ29udGV4dCk8L0NPREU+Cgo8QlI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPlVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9UaWxlc1V0aWwuaHRtbCNnZXREZWZpbml0aW9uKGphdmEubGFuZy5TdHJpbmcsIGphdmF4LnNlcnZsZXQuU2VydmxldFJlcXVlc3QsIGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQpIj48Q09ERT5UaWxlc1V0aWwuZ2V0RGVmaW5pdGlvbihTdHJpbmcsIFNlcnZsZXRSZXF1ZXN0LCBTZXJ2bGV0Q29udGV4dCk8L0NPREU+PC9BPjwvST48L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgo8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc0ZhY3RvcnkuaHRtbCI+RGVmaW5pdGlvbnNGYWN0b3J5PC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zVXRpbC5odG1sI2dldERlZmluaXRpb25zRmFjdG9yeShqYXZheC5zZXJ2bGV0LlNlcnZsZXRDb250ZXh0KSI+Z2V0RGVmaW5pdGlvbnNGYWN0b3J5PC9BPjwvQj4oamF2YXguc2VydmxldC5TZXJ2bGV0Q29udGV4dCZuYnNwO3NlcnZsZXRDb250ZXh0KTwvQ09ERT4KCjxCUj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+VXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL1RpbGVzVXRpbC5odG1sI2dldERlZmluaXRpb25zRmFjdG9yeShqYXZheC5zZXJ2bGV0LlNlcnZsZXRSZXF1ZXN0LCBqYXZheC5zZXJ2bGV0LlNlcnZsZXRDb250ZXh0KSI+PENPREU+VGlsZXNVdGlsLmdldERlZmluaXRpb25zRmFjdG9yeShTZXJ2bGV0UmVxdWVzdCwgU2VydmxldENvbnRleHQpPC9DT0RFPjwvQT48L0k+PC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KPENPREU+c3RhdGljJm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zVXRpbC5odG1sI2luaXRVc2VyRGVidWdMZXZlbChqYXZheC5zZXJ2bGV0LlNlcnZsZXRDb25maWcpIj5pbml0VXNlckRlYnVnTGV2ZWw8L0E+PC9CPihqYXZheC5zZXJ2bGV0LlNlcnZsZXRDb25maWcmbmJzcDtzZXJ2bGV0Q29uZmlnKTwvQ09ERT4KCjxCUj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+VXNlIGNvbW1vbnMtbG9nZ2luZyBwYWNrYWdlIGluc3RlYWQuPC9JPjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+CjxDT0RFPnN0YXRpYyZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+CjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc1V0aWwuaHRtbCNtYWtlRGVmaW5pdGlvbnNGYWN0b3J5QWNjZXNzaWJsZShvcmcuYXBhY2hlLnN0cnV0cy50aWxlcy5EZWZpbml0aW9uc0ZhY3RvcnksIGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQpIj5tYWtlRGVmaW5pdGlvbnNGYWN0b3J5QWNjZXNzaWJsZTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zRmFjdG9yeS5odG1sIj5EZWZpbml0aW9uc0ZhY3Rvcnk8L0E+Jm5ic3A7ZmFjdG9yeSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YXguc2VydmxldC5TZXJ2bGV0Q29udGV4dCZuYnNwO3NlcnZsZXRDb250ZXh0KTwvQ09ERT4KCjxCUj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+VXNlIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL1RpbGVzVXRpbC5odG1sI2NyZWF0ZURlZmluaXRpb25zRmFjdG9yeShqYXZheC5zZXJ2bGV0LlNlcnZsZXRDb250ZXh0LCBvcmcuYXBhY2hlLnN0cnV0cy50aWxlcy5EZWZpbml0aW9uc0ZhY3RvcnlDb25maWcpIj48Q09ERT5UaWxlc1V0aWwuY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5KFNlcnZsZXRDb250ZXh0LCBEZWZpbml0aW9uc0ZhY3RvcnlDb25maWcpPC9DT0RFPjwvQT48L0k+PC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4KPENPREU+c3RhdGljJm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zVXRpbC5odG1sI3BvcHVsYXRlRGVmaW5pdGlvbnNGYWN0b3J5Q29uZmlnKG9yZy5hcGFjaGUuc3RydXRzLnRpbGVzLkRlZmluaXRpb25zRmFjdG9yeUNvbmZpZywgamF2YXguc2VydmxldC5TZXJ2bGV0Q29uZmlnKSI+cG9wdWxhdGVEZWZpbml0aW9uc0ZhY3RvcnlDb25maWc8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc0ZhY3RvcnlDb25maWcuaHRtbCI+RGVmaW5pdGlvbnNGYWN0b3J5Q29uZmlnPC9BPiZuYnNwO2ZhY3RvcnlDb25maWcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmF4LnNlcnZsZXQuU2VydmxldENvbmZpZyZuYnNwO3NlcnZsZXRDb25maWcpPC9DT0RFPgoKPEJSPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDtQb3B1bGF0ZSBEZWZpbml0aW9uIEZhY3RvcnkgQ29uZmlnIGZyb20gd2ViLnhtbCBwcm9wZXJ0aWVzLjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+CjxDT0RFPnByb3RlY3RlZCBzdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc0ZhY3RvcnlDb25maWcuaHRtbCI+RGVmaW5pdGlvbnNGYWN0b3J5Q29uZmlnPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zVXRpbC5odG1sI3JlYWRGYWN0b3J5Q29uZmlnKGphdmF4LnNlcnZsZXQuU2VydmxldENvbmZpZykiPnJlYWRGYWN0b3J5Q29uZmlnPC9BPjwvQj4oamF2YXguc2VydmxldC5TZXJ2bGV0Q29uZmlnJm5ic3A7c2VydmxldENvbmZpZyk8L0NPREU+Cgo8QlI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwO0NyZWF0ZSBGYWN0b3J5Q29uZmlnIGFuZCBpbml0aWFsaXplIGl0IGZyb20gd2ViLnhtbC48L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgo8Q09ERT5zdGF0aWMmbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNVdGlsLmh0bWwjcmVtb3ZlQWN0aW9uRGVmaW5pdGlvbihqYXZheC5zZXJ2bGV0LlNlcnZsZXRSZXF1ZXN0LCBvcmcuYXBhY2hlLnN0cnV0cy50aWxlcy5Db21wb25lbnREZWZpbml0aW9uKSI+cmVtb3ZlQWN0aW9uRGVmaW5pdGlvbjwvQT48L0I+KGphdmF4LnNlcnZsZXQuU2VydmxldFJlcXVlc3QmbmJzcDtyZXF1ZXN0LAogICAgICAgICAgICAgICAgICAgICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0NvbXBvbmVudERlZmluaXRpb24uaHRtbCI+Q29tcG9uZW50RGVmaW5pdGlvbjwvQT4mbmJzcDtkZWZpbml0aW9uKTwvQ09ERT4KCjxCUj4KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7UmVtb3ZlIERlZmluaXRpb24gc3RvcmVkIGluIGpzcCBjb250ZXh0LjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+CjxDT0RFPnN0YXRpYyZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+CjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc1V0aWwuaHRtbCNzZXRBY3Rpb25EZWZpbml0aW9uKGphdmF4LnNlcnZsZXQuU2VydmxldFJlcXVlc3QsIG9yZy5hcGFjaGUuc3RydXRzLnRpbGVzLkNvbXBvbmVudERlZmluaXRpb24pIj5zZXRBY3Rpb25EZWZpbml0aW9uPC9BPjwvQj4oamF2YXguc2VydmxldC5TZXJ2bGV0UmVxdWVzdCZuYnNwO3JlcXVlc3QsCiAgICAgICAgICAgICAgICAgICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvQ29tcG9uZW50RGVmaW5pdGlvbi5odG1sIj5Db21wb25lbnREZWZpbml0aW9uPC9BPiZuYnNwO2RlZmluaXRpb24pPC9DT0RFPgoKPEJSPgombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDs8Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDtTdG9yZSBkZWZpbml0aW9uIGluIGpzcCBjb250ZXh0LjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+CjxDT0RFPnByb3RlY3RlZCBzdGF0aWMmbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNVdGlsLmh0bWwjc2V0RGVmaW5pdGlvbnNGYWN0b3J5KG9yZy5hcGFjaGUuc3RydXRzLnRpbGVzLkNvbXBvbmVudERlZmluaXRpb25zRmFjdG9yeSwgamF2YXguc2VydmxldC5TZXJ2bGV0Q29udGV4dCkiPnNldERlZmluaXRpb25zRmFjdG9yeTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0NvbXBvbmVudERlZmluaXRpb25zRmFjdG9yeS5odG1sIj5Db21wb25lbnREZWZpbml0aW9uc0ZhY3Rvcnk8L0E+Jm5ic3A7ZmFjdG9yeSwKICAgICAgICAgICAgICAgICAgICAgIGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQmbmJzcDtzZXJ2bGV0Q29udGV4dCk8L0NPREU+Cgo8QlI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPnNpbmNlIDIwMDIwNzA4LiBSZXBsYWNlZCBieSBtYWtlRmFjdG9yeUFjY2Vzc2libGUoKTwvST48L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPgo8Q09ERT5zdGF0aWMmbmJzcDt2b2lkPC9DT0RFPjwvRk9OVD48L1REPgo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNVdGlsLmh0bWwjc2V0VXNlckRlYnVnTGV2ZWwoaW50KSI+c2V0VXNlckRlYnVnTGV2ZWw8L0E+PC9CPihpbnQmbmJzcDtsZXZlbCk8L0NPREU+Cgo8QlI+CiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPlVzZSBjb21tb25zLWxvZ2dpbmcgcGFja2FnZSBpbnN0ZWFkLjwvST48L1REPgo8L1RSPgo8L1RBQkxFPgombmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX29yZy5hcGFjaGUuc3RydXRzLnRpbGVzLlRpbGVzVXRpbCI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgV0lEVEg9IjEwMCUiPgo8VFIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9IlRhYmxlU3ViSGVhZGluZ0NvbG9yIj4KPFREPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3Mgb3JnLmFwYWNoZS5zdHJ1dHMudGlsZXMuPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvVGlsZXNVdGlsLmh0bWwiPlRpbGVzVXRpbDwvQT48L0I+PC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9UaWxlc1V0aWwuaHRtbCNhcHBsaWNhdGlvbkNsYXNzKGphdmEubGFuZy5TdHJpbmcpIj5hcHBsaWNhdGlvbkNsYXNzPC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvVGlsZXNVdGlsLmh0bWwjY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQsIG9yZy5hcGFjaGUuc3RydXRzLnRpbGVzLkRlZmluaXRpb25zRmFjdG9yeUNvbmZpZykiPmNyZWF0ZURlZmluaXRpb25zRmFjdG9yeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL1RpbGVzVXRpbC5odG1sI2RvRm9yd2FyZChqYXZhLmxhbmcuU3RyaW5nLCBqYXZheC5zZXJ2bGV0Lmh0dHAuSHR0cFNlcnZsZXRSZXF1ZXN0LCBqYXZheC5zZXJ2bGV0Lmh0dHAuSHR0cFNlcnZsZXRSZXNwb25zZSwgamF2YXguc2VydmxldC5TZXJ2bGV0Q29udGV4dCkiPmRvRm9yd2FyZDwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL1RpbGVzVXRpbC5odG1sI2RvSW5jbHVkZShqYXZhLmxhbmcuU3RyaW5nLCBqYXZheC5zZXJ2bGV0Lmh0dHAuSHR0cFNlcnZsZXRSZXF1ZXN0LCBqYXZheC5zZXJ2bGV0Lmh0dHAuSHR0cFNlcnZsZXRSZXNwb25zZSwgamF2YXguc2VydmxldC5TZXJ2bGV0Q29udGV4dCkiPmRvSW5jbHVkZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL1RpbGVzVXRpbC5odG1sI2RvSW5jbHVkZShqYXZhLmxhbmcuU3RyaW5nLCBqYXZheC5zZXJ2bGV0LmpzcC5QYWdlQ29udGV4dCkiPmRvSW5jbHVkZTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL1RpbGVzVXRpbC5odG1sI2dldERlZmluaXRpb24oamF2YS5sYW5nLlN0cmluZywgamF2YXguc2VydmxldC5TZXJ2bGV0UmVxdWVzdCwgamF2YXguc2VydmxldC5TZXJ2bGV0Q29udGV4dCkiPmdldERlZmluaXRpb248L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9UaWxlc1V0aWwuaHRtbCNnZXREZWZpbml0aW9uc0ZhY3RvcnkoamF2YXguc2VydmxldC5TZXJ2bGV0UmVxdWVzdCwgamF2YXguc2VydmxldC5TZXJ2bGV0Q29udGV4dCkiPmdldERlZmluaXRpb25zRmFjdG9yeTwvQT4sIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL1RpbGVzVXRpbC5odG1sI2dldFRpbGVzVXRpbCgpIj5nZXRUaWxlc1V0aWw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9UaWxlc1V0aWwuaHRtbCNpc1RpbGVzVXRpbEltcGxTZXQoKSI+aXNUaWxlc1V0aWxJbXBsU2V0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvVGlsZXNVdGlsLmh0bWwjc2V0VGlsZXNVdGlsKG9yZy5hcGFjaGUuc3RydXRzLnRpbGVzLlRpbGVzVXRpbEltcGwpIj5zZXRUaWxlc1V0aWw8L0E+LCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9UaWxlc1V0aWwuaHRtbCN0ZXN0UmVzZXQoKSI+dGVzdFJlc2V0PC9BPjwvQ09ERT48L1REPgo8L1RSPgo8L1RBQkxFPgombmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgo8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFdJRFRIPSIxMDAlIj4KPFRSIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJUYWJsZVN1YkhlYWRpbmdDb2xvciI+CjxURD48Qj5NZXRob2RzIGluaGVyaXRlZCBmcm9tIGNsYXNzIGphdmEubGFuZy5PYmplY3Q8L0I+PC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURD48Q09ERT5jbG9uZSwgZXF1YWxzLCBmaW5hbGl6ZSwgZ2V0Q2xhc3MsIGhhc2hDb2RlLCBub3RpZnksIG5vdGlmeUFsbCwgdG9TdHJpbmcsIHdhaXQsIHdhaXQsIHdhaXQ8L0NPREU+PC9URD4KPC9UUj4KPC9UQUJMRT4KJm5ic3A7CjxQPgoKPCEtLSA9PT09PT09PT09PT0gRklFTEQgREVUQUlMID09PT09PT09PT09IC0tPgoKPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KPFRBQkxFIEJPUkRFUj0iMSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBXSURUSD0iMTAwJSI+CjxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgo8VEQgQ09MU1BBTj0xPjxGT05UIFNJWkU9IisyIj4KPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1REPgo8L1RSPgo8L1RBQkxFPgoKPEEgTkFNRT0ibG9nIj48IS0tIC0tPjwvQT48SDM+CmxvZzwvSDM+CjxQUkU+CnByb3RlY3RlZCBzdGF0aWMgb3JnLmFwYWNoZS5jb21tb25zLmxvZ2dpbmcuTG9nIDxCPmxvZzwvQj48L1BSRT4KPERMPgo8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEREPkNvbW1vbnMgTG9nZ2luZyBpbnN0YW5jZS4KPFA+CjxETD4KPC9ETD4KPC9ETD4KPEhSPgoKPEEgTkFNRT0idXNlckRlYnVnTGV2ZWwiPjwhLS0gLS0+PC9BPjxIMz4KdXNlckRlYnVnTGV2ZWw8L0gzPgo8UFJFPgpwdWJsaWMgc3RhdGljIGludCA8Qj51c2VyRGVidWdMZXZlbDwvQj48L1BSRT4KPERMPgo8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEREPkdsb2JhbCB1c2VyIGRlZmluZWQgZGVidWcgbGV2ZWwKPFA+CjxETD4KPC9ETD4KPC9ETD4KPEhSPgoKPEEgTkFNRT0iTk9fREVCVUciPjwhLS0gLS0+PC9BPjxIMz4KTk9fREVCVUc8L0gzPgo8UFJFPgpwdWJsaWMgc3RhdGljIGZpbmFsIGludCA8Qj5OT19ERUJVRzwvQj48L1BSRT4KPERMPgo8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEREPlVzZXIgRGVidWcgbGV2ZWwKPFA+CjxETD4KPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmFwYWNoZS5zdHJ1dHMudGlsZXMuRGVmaW5pdGlvbnNVdGlsLk5PX0RFQlVHIj5Db25zdGFudCBGaWVsZCBWYWx1ZXM8L0E+PC9ETD4KPC9ETD4KPEhSPgoKPEEgTkFNRT0iSU5TVEFOQ0VTX0NPTkZJR19VU0VSX0RFQlVHX0xFVkVMIj48IS0tIC0tPjwvQT48SDM+CklOU1RBTkNFU19DT05GSUdfVVNFUl9ERUJVR19MRVZFTDwvSDM+CjxQUkU+CnB1YmxpYyBzdGF0aWMgZmluYWwgamF2YS5sYW5nLlN0cmluZyA8Qj5JTlNUQU5DRVNfQ09ORklHX1VTRVJfREVCVUdfTEVWRUw8L0I+PC9QUkU+CjxETD4KPEREPjxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPnVzZSBERUZJTklUSU9OU19DT05GSUdfVVNFUl9ERUJVR19MRVZFTCBpbnN0ZWFkLjwvST4KPFA+CjxERD5OYW1lIG9mIGluaXQgcHJvcGVydHkgY2FycnlpbmcgZGVidWcgbGV2ZWwKPFA+CjxETD4KPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmFwYWNoZS5zdHJ1dHMudGlsZXMuRGVmaW5pdGlvbnNVdGlsLklOU1RBTkNFU19DT05GSUdfVVNFUl9ERUJVR19MRVZFTCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+CjwvREw+CjxIUj4KCjxBIE5BTUU9IkRFRklOSVRJT05TX0NPTkZJR19VU0VSX0RFQlVHX0xFVkVMIj48IS0tIC0tPjwvQT48SDM+CkRFRklOSVRJT05TX0NPTkZJR19VU0VSX0RFQlVHX0xFVkVMPC9IMz4KPFBSRT4KcHVibGljIHN0YXRpYyBmaW5hbCBqYXZhLmxhbmcuU3RyaW5nIDxCPkRFRklOSVRJT05TX0NPTkZJR19VU0VSX0RFQlVHX0xFVkVMPC9CPjwvUFJFPgo8REw+CjxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8REQ+TmFtZSBvZiBpbml0IHByb3BlcnR5IGNhcnJ5aW5nIGRlYnVnIGxldmVsCjxQPgo8REw+CjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL2NvbnN0YW50LXZhbHVlcy5odG1sI29yZy5hcGFjaGUuc3RydXRzLnRpbGVzLkRlZmluaXRpb25zVXRpbC5ERUZJTklUSU9OU19DT05GSUdfVVNFUl9ERUJVR19MRVZFTCI+Q29uc3RhbnQgRmllbGQgVmFsdWVzPC9BPjwvREw+CjwvREw+CjxIUj4KCjxBIE5BTUU9IkRFRklOSVRJT05TX0ZBQ1RPUllfQ0xBU1NOQU1FIj48IS0tIC0tPjwvQT48SDM+CkRFRklOSVRJT05TX0ZBQ1RPUllfQ0xBU1NOQU1FPC9IMz4KPFBSRT4KcHVibGljIHN0YXRpYyBmaW5hbCBqYXZhLmxhbmcuU3RyaW5nIDxCPkRFRklOSVRJT05TX0ZBQ1RPUllfQ0xBU1NOQU1FPC9CPjwvUFJFPgo8REw+CjxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8REQ+TmFtZSBvZiBpbml0IHByb3BlcnR5IGNhcnJ5aW5nIGZhY3RvcnkgY2xhc3MgbmFtZQo8UD4KPERMPgo8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuYXBhY2hlLnN0cnV0cy50aWxlcy5EZWZpbml0aW9uc1V0aWwuREVGSU5JVElPTlNfRkFDVE9SWV9DTEFTU05BTUUiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgo8L0RMPgo8SFI+Cgo8QSBOQU1FPSJERUZJTklUSU9OU19GQUNUT1JZIj48IS0tIC0tPjwvQT48SDM+CkRFRklOSVRJT05TX0ZBQ1RPUlk8L0gzPgo8UFJFPgpwdWJsaWMgc3RhdGljIGZpbmFsIGphdmEubGFuZy5TdHJpbmcgPEI+REVGSU5JVElPTlNfRkFDVE9SWTwvQj48L1BSRT4KPERMPgo8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEREPkNvbnN0YW50IG5hbWUgdXNlZCB0byBzdG9yZSBmYWN0b3J5IGluIGNvbnRleHQKPFA+CjxETD4KPERUPjxCPlNlZSBBbHNvOjwvQj48REQ+PEEgSFJFRj0iLi4vLi4vLi4vLi4vY29uc3RhbnQtdmFsdWVzLmh0bWwjb3JnLmFwYWNoZS5zdHJ1dHMudGlsZXMuRGVmaW5pdGlvbnNVdGlsLkRFRklOSVRJT05TX0ZBQ1RPUlkiPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgo8L0RMPgo8SFI+Cgo8QSBOQU1FPSJBQ1RJT05fREVGSU5JVElPTiI+PCEtLSAtLT48L0E+PEgzPgpBQ1RJT05fREVGSU5JVElPTjwvSDM+CjxQUkU+CnB1YmxpYyBzdGF0aWMgZmluYWwgamF2YS5sYW5nLlN0cmluZyA8Qj5BQ1RJT05fREVGSU5JVElPTjwvQj48L1BSRT4KPERMPgo8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEREPkNvbnN0YW50IG5hbWUgdXNlZCB0byBzdG9yZSBkZWZpbml0aW9uIGluIGpzcCBjb250ZXh0LgogIFVzZWQgdG8gcGFzcyBkZWZpbml0aW9uIGZyb20gYSBTdHJ1dHMgYWN0aW9uIHRvIHNlcnZsZXQgZm9yd2FyZAo8UD4KPERMPgo8RFQ+PEI+U2VlIEFsc286PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9jb25zdGFudC12YWx1ZXMuaHRtbCNvcmcuYXBhY2hlLnN0cnV0cy50aWxlcy5EZWZpbml0aW9uc1V0aWwuQUNUSU9OX0RFRklOSVRJT04iPkNvbnN0YW50IEZpZWxkIFZhbHVlczwvQT48L0RMPgo8L0RMPgoKPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPgoKPEEgTkFNRT0iY29uc3RydWN0b3JfZGV0YWlsIj48IS0tIC0tPjwvQT4KPFRBQkxFIEJPUkRFUj0iMSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBXSURUSD0iMTAwJSI+CjxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgo8VEQgQ09MU1BBTj0xPjxGT05UIFNJWkU9IisyIj4KPEI+Q29uc3RydWN0b3IgRGV0YWlsPC9CPjwvRk9OVD48L1REPgo8L1RSPgo8L1RBQkxFPgoKPEEgTkFNRT0iRGVmaW5pdGlvbnNVdGlsKCkiPjwhLS0gLS0+PC9BPjxIMz4KRGVmaW5pdGlvbnNVdGlsPC9IMz4KPFBSRT4KcHVibGljIDxCPkRlZmluaXRpb25zVXRpbDwvQj4oKTwvUFJFPgo8REw+CjxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8L0RMPgoKPCEtLSA9PT09PT09PT09PT0gTUVUSE9EIERFVEFJTCA9PT09PT09PT09IC0tPgoKPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgV0lEVEg9IjEwMCUiPgo8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4KPFREIENPTFNQQU49MT48Rk9OVCBTSVpFPSIrMiI+CjxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEQ+CjwvVFI+CjwvVEFCTEU+Cgo8QSBOQU1FPSJzZXRVc2VyRGVidWdMZXZlbChpbnQpIj48IS0tIC0tPjwvQT48SDM+CnNldFVzZXJEZWJ1Z0xldmVsPC9IMz4KPFBSRT4KcHVibGljIHN0YXRpYyB2b2lkIDxCPnNldFVzZXJEZWJ1Z0xldmVsPC9CPihpbnQmbmJzcDtsZXZlbCk8L1BSRT4KPERMPgo8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+VXNlIGNvbW1vbnMtbG9nZ2luZyBwYWNrYWdlIGluc3RlYWQuPC9JPgo8UD4KPEREPlNldCB1c2VyIGRlYnVnIGxldmVsLiBUaGlzIHByb3BlcnR5IGNvbnRyb2wgbGV2ZWwgb2YgZXJyb3JzIG91dHB1dC4KPFA+CjxERD48REw+CjwvREw+CjwvREQ+CjxERD48REw+CjxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+bGV2ZWw8L0NPREU+IC0gPC9ETD4KPC9ERD4KPC9ETD4KPEhSPgoKPEEgTkFNRT0iaW5pdFVzZXJEZWJ1Z0xldmVsKGphdmF4LnNlcnZsZXQuU2VydmxldENvbmZpZykiPjwhLS0gLS0+PC9BPjxIMz4KaW5pdFVzZXJEZWJ1Z0xldmVsPC9IMz4KPFBSRT4KcHVibGljIHN0YXRpYyB2b2lkIDxCPmluaXRVc2VyRGVidWdMZXZlbDwvQj4oamF2YXguc2VydmxldC5TZXJ2bGV0Q29uZmlnJm5ic3A7c2VydmxldENvbmZpZyk8L1BSRT4KPERMPgo8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+VXNlIGNvbW1vbnMtbG9nZ2luZyBwYWNrYWdlIGluc3RlYWQuPC9JPgo8UD4KPEREPkluaXQgdXNlciBkZWJ1ZyBsZXZlbC4KPFA+CjxERD48REw+CjwvREw+CjwvREQ+CjxERD48REw+CjxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+c2VydmxldENvbmZpZzwvQ09ERT4gLSA8L0RMPgo8L0REPgo8L0RMPgo8SFI+Cgo8QSBOQU1FPSJjcmVhdGVEZWZpbml0aW9uc0ZhY3RvcnkoamF2YXguc2VydmxldC5TZXJ2bGV0Q29udGV4dCwgamF2YS51dGlsLk1hcCwgamF2YS5sYW5nLlN0cmluZykiPjwhLS0gLS0+PC9BPjxIMz4KY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5PC9IMz4KPFBSRT4KcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc0ZhY3RvcnkuaHRtbCI+RGVmaW5pdGlvbnNGYWN0b3J5PC9BPiA8Qj5jcmVhdGVEZWZpbml0aW9uc0ZhY3Rvcnk8L0I+KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQmbmJzcDtzZXJ2bGV0Q29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEudXRpbC5NYXAmbmJzcDtwcm9wZXJ0aWVzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YS5sYW5nLlN0cmluZyZuYnNwO2NsYXNzbmFtZSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3dzIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zRmFjdG9yeUV4Y2VwdGlvbi5odG1sIj5EZWZpbml0aW9uc0ZhY3RvcnlFeGNlcHRpb248L0E+PC9QUkU+CjxETD4KPEREPjxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPlVzZSBjcmVhdGVEZWZpbml0aW9uc0ZhY3RvcnkoU2VydmxldENvbnRleHQgc2VydmxldENvbnRleHQsIFNlcnZsZXRDb25maWcgc2VydmxldENvbmZpZyk8L0k+CjxQPgo8REQ+Q3JlYXRlIERlZmluaXRpb24gZmFjdG9yeS4KIElmIGEgZmFjdG9yeSBjbGFzcyBuYW1lIGlzIHByb3ZpZGVkLCBhIGZhY3Rvcnkgb2YgdGhpcyBjbGFzcyBpcyBjcmVhdGVkLiBPdGhlcndpc2UsCiBkZWZhdWx0IGZhY3RvcnkgaXMgY3JlYXRlZC4KPFA+CjxERD48REw+CjwvREw+CjwvREQ+CjxERD48REw+CjxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+Y2xhc3NuYW1lPC9DT0RFPiAtIENsYXNzIG5hbWUgb2YgdGhlIGZhY3RvcnkgdG8gY3JlYXRlLjxERD48Q09ERT5zZXJ2bGV0Q29udGV4dDwvQ09ERT4gLSBTZXJ2bGV0IENvbnRleHQgcGFzc2VkIHRvIG5ld2x5IGNyZWF0ZWQgZmFjdG9yeS48REQ+PENPREU+cHJvcGVydGllczwvQ09ERT4gLSBNYXAgb2YgbmFtZS9wcm9wZXJ0eSB1c2VkIHRvIGluaXRpYWxpemUgZmFjdG9yeSBjb25maWd1cmF0aW9uIG9iamVjdC4KPERUPjxCPlJldHVybnM6PC9CPjxERD5uZXdseSBjcmVhdGVkIGZhY3RvcnkuCjxEVD48Qj5UaHJvd3M6PC9CPgo8REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNGYWN0b3J5RXhjZXB0aW9uLmh0bWwiPkRlZmluaXRpb25zRmFjdG9yeUV4Y2VwdGlvbjwvQT48L0NPREU+IC0gSWYgYW4gZXJyb3Igb2NjdXIgd2hpbGUgaW5pdGlhbGl6aW5nIGZhY3Rvcnk8L0RMPgo8L0REPgo8L0RMPgo8SFI+Cgo8QSBOQU1FPSJjcmVhdGVEZWZpbml0aW9uc0ZhY3RvcnkoamF2YXguc2VydmxldC5TZXJ2bGV0Q29udGV4dCwgamF2YS51dGlsLk1hcCkiPjwhLS0gLS0+PC9BPjxIMz4KY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5PC9IMz4KPFBSRT4KcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc0ZhY3RvcnkuaHRtbCI+RGVmaW5pdGlvbnNGYWN0b3J5PC9BPiA8Qj5jcmVhdGVEZWZpbml0aW9uc0ZhY3Rvcnk8L0I+KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQmbmJzcDtzZXJ2bGV0Q29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEudXRpbC5NYXAmbmJzcDtwcm9wZXJ0aWVzKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvd3MgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNGYWN0b3J5RXhjZXB0aW9uLmh0bWwiPkRlZmluaXRpb25zRmFjdG9yeUV4Y2VwdGlvbjwvQT48L1BSRT4KPERMPgo8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEREPkNyZWF0ZSBkZWZhdWx0IERlZmluaXRpb24gZmFjdG9yeS4KPFA+CjxERD48REw+CjwvREw+CjwvREQ+CjxERD48REw+CjxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+c2VydmxldENvbnRleHQ8L0NPREU+IC0gU2VydmxldCBDb250ZXh0IHBhc3NlZCB0byBuZXdseSBjcmVhdGVkIGZhY3RvcnkuPEREPjxDT0RFPnByb3BlcnRpZXM8L0NPREU+IC0gTWFwIG9mIG5hbWUvcHJvcGVydHkgdXNlZCB0byBpbml0aWFsaXplIGZhY3RvcnkgY29uZmlndXJhdGlvbiBvYmplY3QuCjxEVD48Qj5SZXR1cm5zOjwvQj48REQ+bmV3bHkgY3JlYXRlZCBmYWN0b3J5IG9mIHR5cGUgQ29uZmlndXJhYmxlRGVmaW5pdGlvbnNGYWN0b3J5Lgo8RFQ+PEI+VGhyb3dzOjwvQj4KPEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zRmFjdG9yeUV4Y2VwdGlvbi5odG1sIj5EZWZpbml0aW9uc0ZhY3RvcnlFeGNlcHRpb248L0E+PC9DT0RFPiAtIElmIGFuIGVycm9yIG9jY3VyIHdoaWxlIGluaXRpYWxpemluZyBmYWN0b3J5PC9ETD4KPC9ERD4KPC9ETD4KPEhSPgoKPEEgTkFNRT0iY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQsIGphdmF4LnNlcnZsZXQuU2VydmxldENvbmZpZykiPjwhLS0gLS0+PC9BPjxIMz4KY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5PC9IMz4KPFBSRT4KcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc0ZhY3RvcnkuaHRtbCI+RGVmaW5pdGlvbnNGYWN0b3J5PC9BPiA8Qj5jcmVhdGVEZWZpbml0aW9uc0ZhY3Rvcnk8L0I+KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQmbmJzcDtzZXJ2bGV0Q29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmF4LnNlcnZsZXQuU2VydmxldENvbmZpZyZuYnNwO3NlcnZsZXRDb25maWcpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc0ZhY3RvcnlFeGNlcHRpb24uaHRtbCI+RGVmaW5pdGlvbnNGYWN0b3J5RXhjZXB0aW9uPC9BPjwvUFJFPgo8REw+CjxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8REQ+Q3JlYXRlIERlZmluaXRpb24gZmFjdG9yeS4KIENyZWF0ZSBjb25maWd1cmF0aW9uIG9iamVjdCBmcm9tIHNlcnZsZXQgd2ViLnhtbCBmaWxlLCB0aGVuIGNyZWF0ZQogQ29uZmlndXJhYmxlRGVmaW5pdGlvbnNGYWN0b3J5IGFuZCBpbml0aWFsaXplZCBpdCB3aXRoIG9iamVjdC4KIDxwPgogQ29udmVuaWVuY2UgbWV0aG9kLiBDYWxscyBjcmVhdGVEZWZpbml0aW9uc0ZhY3RvcnkoU2VydmxldENvbnRleHQgc2VydmxldENvbnRleHQsIERlZmluaXRpb25zRmFjdG9yeUNvbmZpZyBmYWN0b3J5Q29uZmlnKQo8UD4KPEREPjxETD4KPC9ETD4KPC9ERD4KPEREPjxETD4KPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5zZXJ2bGV0Q29udGV4dDwvQ09ERT4gLSBTZXJ2bGV0IENvbnRleHQgcGFzc2VkIHRvIG5ld2x5IGNyZWF0ZWQgZmFjdG9yeS48REQ+PENPREU+c2VydmxldENvbmZpZzwvQ09ERT4gLSBTZXJ2bGV0IGNvbmZpZyBjb250YWluaW5nIHBhcmFtZXRlcnMgdG8gYmUgcGFzc2VkIHRvIGZhY3RvcnkgY29uZmlndXJhdGlvbiBvYmplY3QuCjxEVD48Qj5SZXR1cm5zOjwvQj48REQ+bmV3bHkgY3JlYXRlZCBmYWN0b3J5IG9mIHR5cGUgQ29uZmlndXJhYmxlRGVmaW5pdGlvbnNGYWN0b3J5Lgo8RFQ+PEI+VGhyb3dzOjwvQj4KPEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zRmFjdG9yeUV4Y2VwdGlvbi5odG1sIj5EZWZpbml0aW9uc0ZhY3RvcnlFeGNlcHRpb248L0E+PC9DT0RFPiAtIElmIGFuIGVycm9yIG9jY3VyIHdoaWxlIGluaXRpYWxpemluZyBmYWN0b3J5PC9ETD4KPC9ERD4KPC9ETD4KPEhSPgoKPEEgTkFNRT0iY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQsIGphdmF4LnNlcnZsZXQuU2VydmxldENvbmZpZywgYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4KY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5PC9IMz4KPFBSRT4KcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc0ZhY3RvcnkuaHRtbCI+RGVmaW5pdGlvbnNGYWN0b3J5PC9BPiA8Qj5jcmVhdGVEZWZpbml0aW9uc0ZhY3Rvcnk8L0I+KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQmbmJzcDtzZXJ2bGV0Q29udGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmF4LnNlcnZsZXQuU2VydmxldENvbmZpZyZuYnNwO3NlcnZsZXRDb25maWcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7Y2hlY2tJZkV4aXN0KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvd3MgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNGYWN0b3J5RXhjZXB0aW9uLmh0bWwiPkRlZmluaXRpb25zRmFjdG9yeUV4Y2VwdGlvbjwvQT48L1BSRT4KPERMPgo8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEREPkNyZWF0ZSBEZWZpbml0aW9uIGZhY3RvcnkuCiBDcmVhdGUgY29uZmlndXJhdGlvbiBvYmplY3QgZnJvbSBzZXJ2bGV0IHdlYi54bWwgZmlsZSwgdGhlbiBjcmVhdGUKIENvbmZpZ3VyYWJsZURlZmluaXRpb25zRmFjdG9yeSBhbmQgaW5pdGlhbGl6ZWQgaXQgd2l0aCBvYmplY3QuCiA8cD4KIElmIGNoZWNrSWZFeGlzdCBpcyB0cnVlLCBzdGFydCBieSBjaGVja2luZyBpZiBmYWN0b3J5IGFscmVhZHkgZXhpc3QuIElmIHllcywKIHJldHVybiBpdC4gSWYgbm8sIGNyZWF0ZSBhIG5ldyBvbmUuCiA8cD4KIElmIGNoZWNrSWZFeGlzdCBpcyBmYWxzZSwgZmFjdG9yeSBpcyBhbHdheXMgY3JlYXRlZC4KIDxwPgogQ29udmVuaWVuY2UgbWV0aG9kLiBDYWxscyBjcmVhdGVEZWZpbml0aW9uc0ZhY3RvcnkoU2VydmxldENvbnRleHQgc2VydmxldENvbnRleHQsIERlZmluaXRpb25zRmFjdG9yeUNvbmZpZyBmYWN0b3J5Q29uZmlnKQo8UD4KPEREPjxETD4KPC9ETD4KPC9ERD4KPEREPjxETD4KPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5zZXJ2bGV0Q29udGV4dDwvQ09ERT4gLSBTZXJ2bGV0IENvbnRleHQgcGFzc2VkIHRvIG5ld2x5IGNyZWF0ZWQgZmFjdG9yeS48REQ+PENPREU+c2VydmxldENvbmZpZzwvQ09ERT4gLSBTZXJ2bGV0IGNvbmZpZyBjb250YWluaW5nIHBhcmFtZXRlcnMgdG8gYmUgcGFzc2VkIHRvIGZhY3RvcnkgY29uZmlndXJhdGlvbiBvYmplY3QuPEREPjxDT0RFPmNoZWNrSWZFeGlzdDwvQ09ERT4gLSBDaGVjayBpZiBmYWN0b3J5IGFscmVhZHkgZXhpc3QuIElmIHRydWUgYW5kIGZhY3RvcnkgZXhpc3QsIHJldHVybiBpdC4KIElmIHRydWUgYW5kIGZhY3RvcnkgZG9lc24ndCBleGlzdCwgY3JlYXRlIGl0LiBJZiBmYWxzZSwgY3JlYXRlIGl0IGluIGFsbCBjYXNlcy4KPERUPjxCPlJldHVybnM6PC9CPjxERD5uZXdseSBjcmVhdGVkIGZhY3Rvcnkgb2YgdHlwZSBDb25maWd1cmFibGVEZWZpbml0aW9uc0ZhY3RvcnkuCjxEVD48Qj5UaHJvd3M6PC9CPgo8REQ+PENPREU+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNGYWN0b3J5RXhjZXB0aW9uLmh0bWwiPkRlZmluaXRpb25zRmFjdG9yeUV4Y2VwdGlvbjwvQT48L0NPREU+IC0gSWYgYW4gZXJyb3Igb2NjdXIgd2hpbGUgaW5pdGlhbGl6aW5nIGZhY3Rvcnk8L0RMPgo8L0REPgo8L0RMPgo8SFI+Cgo8QSBOQU1FPSJjcmVhdGVEZWZpbml0aW9uRmFjdG9yeUluc3RhbmNlKGphdmEubGFuZy5TdHJpbmcpIj48IS0tIC0tPjwvQT48SDM+CmNyZWF0ZURlZmluaXRpb25GYWN0b3J5SW5zdGFuY2U8L0gzPgo8UFJFPgpwdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zRmFjdG9yeS5odG1sIj5EZWZpbml0aW9uc0ZhY3Rvcnk8L0E+IDxCPmNyZWF0ZURlZmluaXRpb25GYWN0b3J5SW5zdGFuY2U8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtjbGFzc25hbWUpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvd3MgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNGYWN0b3J5RXhjZXB0aW9uLmh0bWwiPkRlZmluaXRpb25zRmFjdG9yeUV4Y2VwdGlvbjwvQT48L1BSRT4KPERMPgo8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEk+Tm8gZGlyZWN0IHJlcGxhY2VtZW50LiBVc2UgY3JlYXRlRGVmaW5pdGlvbkZhY3RvcnkKIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL1RpbGVzVXRpbC5odG1sI2NyZWF0ZURlZmluaXRpb25zRmFjdG9yeShqYXZheC5zZXJ2bGV0LlNlcnZsZXRDb250ZXh0LCBvcmcuYXBhY2hlLnN0cnV0cy50aWxlcy5EZWZpbml0aW9uc0ZhY3RvcnlDb25maWcpIj48Q09ERT5UaWxlc1V0aWwuY3JlYXRlRGVmaW5pdGlvbnNGYWN0b3J5KFNlcnZsZXRDb250ZXh0LCBEZWZpbml0aW9uc0ZhY3RvcnlDb25maWcpPC9DT0RFPjwvQT4uPC9JPgo8UD4KPEREPkNyZWF0ZSBEZWZpbml0aW9uIGZhY3RvcnkgZnJvbSBwcm92aWRlZCBjbGFzc25hbWUuCiBGYWN0b3J5IGNsYXNzIG11c3QgZXh0ZW5kcyBUaWxlc0RlZmluaXRpb25zRmFjdG9yeS4KPFA+CjxERD48REw+CjwvREw+CjwvREQ+CjxERD48REw+CjxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+Y2xhc3NuYW1lPC9DT0RFPiAtIENsYXNzIG5hbWUgb2YgdGhlIGZhY3RvcnkgdG8gY3JlYXRlLgo8RFQ+PEI+UmV0dXJuczo8L0I+PEREPm5ld2x5IGNyZWF0ZWQgZmFjdG9yeS4KPERUPjxCPlRocm93czo8L0I+CjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc0ZhY3RvcnlFeGNlcHRpb24uaHRtbCI+RGVmaW5pdGlvbnNGYWN0b3J5RXhjZXB0aW9uPC9BPjwvQ09ERT4gLSBJZiBhbiBlcnJvciBvY2N1ciB3aGlsZSBpbml0aWFsaXppbmcgZmFjdG9yeTwvREw+CjwvREQ+CjwvREw+CjxIUj4KCjxBIE5BTUU9InNldERlZmluaXRpb25zRmFjdG9yeShvcmcuYXBhY2hlLnN0cnV0cy50aWxlcy5Db21wb25lbnREZWZpbml0aW9uc0ZhY3RvcnksIGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQpIj48IS0tIC0tPjwvQT48SDM+CnNldERlZmluaXRpb25zRmFjdG9yeTwvSDM+CjxQUkU+CnByb3RlY3RlZCBzdGF0aWMgdm9pZCA8Qj5zZXREZWZpbml0aW9uc0ZhY3Rvcnk8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0NvbXBvbmVudERlZmluaXRpb25zRmFjdG9yeS5odG1sIj5Db21wb25lbnREZWZpbml0aW9uc0ZhY3Rvcnk8L0E+Jm5ic3A7ZmFjdG9yeSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZheC5zZXJ2bGV0LlNlcnZsZXRDb250ZXh0Jm5ic3A7c2VydmxldENvbnRleHQpPC9QUkU+CjxETD4KPEREPjxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPnNpbmNlIDIwMDIwNzA4LiBSZXBsYWNlZCBieSBtYWtlRmFjdG9yeUFjY2Vzc2libGUoKTwvST4KPFA+CjxERD5TZXQgZGVmaW5pdGlvbiBmYWN0b3J5IGluIGFwcHJvcHJpYXRlIHNlcnZsZXQgY29udGV4dC4KPFA+CjxERD48REw+CjwvREw+CjwvREQ+CjxERD48REw+CjxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmFjdG9yeTwvQ09ERT4gLSBGYWN0b3J5IHRvIHN0b3JlLjxERD48Q09ERT5zZXJ2bGV0Q29udGV4dDwvQ09ERT4gLSBTZXJ2bGV0IGNvbnRleHQgdGhhdCB3aWxsIGhvbGQgZmFjdG9yeS48L0RMPgo8L0REPgo8L0RMPgo8SFI+Cgo8QSBOQU1FPSJnZXREZWZpbml0aW9uKGphdmEubGFuZy5TdHJpbmcsIGphdmF4LnNlcnZsZXQuanNwLlBhZ2VDb250ZXh0KSI+PCEtLSAtLT48L0E+PEgzPgpnZXREZWZpbml0aW9uPC9IMz4KPFBSRT4KcHVibGljIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9Db21wb25lbnREZWZpbml0aW9uLmh0bWwiPkNvbXBvbmVudERlZmluaXRpb248L0E+IDxCPmdldERlZmluaXRpb248L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDtkZWZpbml0aW9uTmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgamF2YXguc2VydmxldC5qc3AuUGFnZUNvbnRleHQmbmJzcDtwYWdlQ29udGV4dCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvd3MgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRmFjdG9yeU5vdEZvdW5kRXhjZXB0aW9uLmh0bWwiPkZhY3RvcnlOb3RGb3VuZEV4Y2VwdGlvbjwvQT4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zRmFjdG9yeUV4Y2VwdGlvbi5odG1sIj5EZWZpbml0aW9uc0ZhY3RvcnlFeGNlcHRpb248L0E+PC9QUkU+CjxETD4KPEREPjxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPlVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9UaWxlc1V0aWwuaHRtbCNnZXREZWZpbml0aW9uKGphdmEubGFuZy5TdHJpbmcsIGphdmF4LnNlcnZsZXQuU2VydmxldFJlcXVlc3QsIGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQpIj48Q09ERT5UaWxlc1V0aWwuZ2V0RGVmaW5pdGlvbihTdHJpbmcsIFNlcnZsZXRSZXF1ZXN0LCBTZXJ2bGV0Q29udGV4dCk8L0NPREU+PC9BPjwvST4KPFA+CjxERD5HZXQgYSBjb21wb25lbnQgLyB0ZW1wbGF0ZSBkZWZpbml0aW9uIGJ5IGl0cyBuYW1lLgogRmlyc3QsIHJldHJpZXZlIGluc3RhbmNlIGZhY3RvcnksIGFuZCB0aGVuIGdldCByZXF1ZXN0ZWQgaW5zdGFuY2UuCiBUaHJvdyBhcHByb3ByaWF0ZSBleGNlcHRpb24gaWYgZGVmaW5pdGlvbiBpcyBub3QgZm91bmQuCjxQPgo8REQ+PERMPgo8L0RMPgo8L0REPgo8REQ+PERMPgo8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmRlZmluaXRpb25OYW1lPC9DT0RFPiAtIE5hbWUgb2YgcmVxdWVzdGVkIGRlZmluaXRpb24uPEREPjxDT0RFPnBhZ2VDb250ZXh0PC9DT0RFPiAtIEN1cnJlbnQgcGFnZUNvbnRleHQKPERUPjxCPlRocm93czo8L0I+CjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9GYWN0b3J5Tm90Rm91bmRFeGNlcHRpb24uaHRtbCI+RmFjdG9yeU5vdEZvdW5kRXhjZXB0aW9uPC9BPjwvQ09ERT4gLSBDYW4ndCBmaW5kIGRlZmluaXRpb24gZmFjdG9yeS4KPEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zRmFjdG9yeUV4Y2VwdGlvbi5odG1sIj5EZWZpbml0aW9uc0ZhY3RvcnlFeGNlcHRpb248L0E+PC9DT0RFPiAtIEdlbmVyYWwgZXJyb3IgaW4gZmFjdG9yeSB3aGlsZSBnZXR0aW5nIGRlZmluaXRpb24uCjxERD48Q09ERT48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9Ob1N1Y2hEZWZpbml0aW9uRXhjZXB0aW9uLmh0bWwiPk5vU3VjaERlZmluaXRpb25FeGNlcHRpb248L0E+PC9DT0RFPiAtIE5vIGRlZmluaXRpb24gZm91bmQgZm9yIHNwZWNpZmllZCBuYW1lPC9ETD4KPC9ERD4KPC9ETD4KPEhSPgoKPEEgTkFNRT0iZ2V0RGVmaW5pdGlvbnNGYWN0b3J5KGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQpIj48IS0tIC0tPjwvQT48SDM+CmdldERlZmluaXRpb25zRmFjdG9yeTwvSDM+CjxQUkU+CnB1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNGYWN0b3J5Lmh0bWwiPkRlZmluaXRpb25zRmFjdG9yeTwvQT4gPEI+Z2V0RGVmaW5pdGlvbnNGYWN0b3J5PC9CPihqYXZheC5zZXJ2bGV0LlNlcnZsZXRDb250ZXh0Jm5ic3A7c2VydmxldENvbnRleHQpPC9QUkU+CjxETD4KPEREPjxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPlVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9UaWxlc1V0aWwuaHRtbCNnZXREZWZpbml0aW9uc0ZhY3RvcnkoamF2YXguc2VydmxldC5TZXJ2bGV0UmVxdWVzdCwgamF2YXguc2VydmxldC5TZXJ2bGV0Q29udGV4dCkiPjxDT0RFPlRpbGVzVXRpbC5nZXREZWZpbml0aW9uc0ZhY3RvcnkoU2VydmxldFJlcXVlc3QsIFNlcnZsZXRDb250ZXh0KTwvQ09ERT48L0E+PC9JPgo8UD4KPEREPkdldCBkZWZpbml0aW9uIGZhY3RvcnkgZnJvbSBhcHByb3ByaWF0ZSBzZXJ2bGV0IGNvbnRleHQuCjxQPgo8REQ+PERMPgo8L0RMPgo8L0REPgo8REQ+PERMPgoKPERUPjxCPlJldHVybnM6PC9CPjxERD5EZWZpbml0aW9ucyBmYWN0b3J5IG9yIG51bGwgaWYgbm90IGZvdW5kLjxEVD48Qj5TaW5jZTo8L0I+PC9EVD4KICA8REQ+MjAwMjA3MDg8L0REPgo8L0RMPgo8L0REPgo8L0RMPgo8SFI+Cgo8QSBOQU1FPSJtYWtlRGVmaW5pdGlvbnNGYWN0b3J5QWNjZXNzaWJsZShvcmcuYXBhY2hlLnN0cnV0cy50aWxlcy5EZWZpbml0aW9uc0ZhY3RvcnksIGphdmF4LnNlcnZsZXQuU2VydmxldENvbnRleHQpIj48IS0tIC0tPjwvQT48SDM+Cm1ha2VEZWZpbml0aW9uc0ZhY3RvcnlBY2Nlc3NpYmxlPC9IMz4KPFBSRT4KcHVibGljIHN0YXRpYyB2b2lkIDxCPm1ha2VEZWZpbml0aW9uc0ZhY3RvcnlBY2Nlc3NpYmxlPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc0ZhY3RvcnkuaHRtbCI+RGVmaW5pdGlvbnNGYWN0b3J5PC9BPiZuYnNwO2ZhY3RvcnksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqYXZheC5zZXJ2bGV0LlNlcnZsZXRDb250ZXh0Jm5ic3A7c2VydmxldENvbnRleHQpPC9QUkU+CjxETD4KPEREPjxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxJPlVzZSA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9UaWxlc1V0aWwuaHRtbCNjcmVhdGVEZWZpbml0aW9uc0ZhY3RvcnkoamF2YXguc2VydmxldC5TZXJ2bGV0Q29udGV4dCwgb3JnLmFwYWNoZS5zdHJ1dHMudGlsZXMuRGVmaW5pdGlvbnNGYWN0b3J5Q29uZmlnKSI+PENPREU+VGlsZXNVdGlsLmNyZWF0ZURlZmluaXRpb25zRmFjdG9yeShTZXJ2bGV0Q29udGV4dCwgRGVmaW5pdGlvbnNGYWN0b3J5Q29uZmlnKTwvQ09ERT48L0E+PC9JPgo8UD4KPEREPk1ha2UgZGVmaW5pdGlvbiBmYWN0b3J5IGFjY2Vzc2libGUgdG8gVGFncy4KIEZhY3RvcnkgaXMgc3RvcmVkIGluIHNlcnZsZXQgY29udGV4dC4KPFA+CjxERD48REw+CjwvREw+CjwvREQ+CjxERD48REw+CjxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+ZmFjdG9yeTwvQ09ERT4gLSBGYWN0b3J5IHRvIG1ha2UgYWNjZXNzaWJsZTxERD48Q09ERT5zZXJ2bGV0Q29udGV4dDwvQ09ERT4gLSBDdXJyZW50IHNlcnZsZXQgY29udGV4dDxEVD48Qj5TaW5jZTo8L0I+PC9EVD4KICA8REQ+MjAwMjA3MDg8L0REPgo8L0RMPgo8L0REPgo8L0RMPgo8SFI+Cgo8QSBOQU1FPSJnZXRBY3Rpb25EZWZpbml0aW9uKGphdmF4LnNlcnZsZXQuU2VydmxldFJlcXVlc3QpIj48IS0tIC0tPjwvQT48SDM+CmdldEFjdGlvbkRlZmluaXRpb248L0gzPgo8UFJFPgpwdWJsaWMgc3RhdGljIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0NvbXBvbmVudERlZmluaXRpb24uaHRtbCI+Q29tcG9uZW50RGVmaW5pdGlvbjwvQT4gPEI+Z2V0QWN0aW9uRGVmaW5pdGlvbjwvQj4oamF2YXguc2VydmxldC5TZXJ2bGV0UmVxdWVzdCZuYnNwO3JlcXVlc3QpPC9QUkU+CjxETD4KPEREPjxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxERD5HZXQgRGVmaW5pdGlvbiBzdG9yZWQgaW4ganNwIGNvbnRleHQgYnkgYW4gYWN0aW9uLgo8UD4KPEREPjxETD4KPC9ETD4KPC9ERD4KPEREPjxETD4KCjxEVD48Qj5SZXR1cm5zOjwvQj48REQ+Q29tcG9uZW50RGVmaW5pdGlvbiBvciBudWxsIGlmIG5vdCBmb3VuZC48L0RMPgo8L0REPgo8L0RMPgo8SFI+Cgo8QSBOQU1FPSJzZXRBY3Rpb25EZWZpbml0aW9uKGphdmF4LnNlcnZsZXQuU2VydmxldFJlcXVlc3QsIG9yZy5hcGFjaGUuc3RydXRzLnRpbGVzLkNvbXBvbmVudERlZmluaXRpb24pIj48IS0tIC0tPjwvQT48SDM+CnNldEFjdGlvbkRlZmluaXRpb248L0gzPgo8UFJFPgpwdWJsaWMgc3RhdGljIHZvaWQgPEI+c2V0QWN0aW9uRGVmaW5pdGlvbjwvQj4oamF2YXguc2VydmxldC5TZXJ2bGV0UmVxdWVzdCZuYnNwO3JlcXVlc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0NvbXBvbmVudERlZmluaXRpb24uaHRtbCI+Q29tcG9uZW50RGVmaW5pdGlvbjwvQT4mbmJzcDtkZWZpbml0aW9uKTwvUFJFPgo8REw+CjxERD48Qj5EZXByZWNhdGVkLjwvQj4mbmJzcDs8REQ+U3RvcmUgZGVmaW5pdGlvbiBpbiBqc3AgY29udGV4dC4KIE1haW5seSB1c2VkIGJ5IFN0cnV0cyB0byBwYXNzIGEgZGVmaW5pdGlvbiBkZWZpbmVkIGluIGFuIEFjdGlvbiB0byB0aGUgZm9yd2FyZC4KPFA+CjxERD48REw+CjwvREw+CjwvREQ+CjxERD48REw+CjwvREw+CjwvREQ+CjwvREw+CjxIUj4KCjxBIE5BTUU9InJlbW92ZUFjdGlvbkRlZmluaXRpb24oamF2YXguc2VydmxldC5TZXJ2bGV0UmVxdWVzdCwgb3JnLmFwYWNoZS5zdHJ1dHMudGlsZXMuQ29tcG9uZW50RGVmaW5pdGlvbikiPjwhLS0gLS0+PC9BPjxIMz4KcmVtb3ZlQWN0aW9uRGVmaW5pdGlvbjwvSDM+CjxQUkU+CnB1YmxpYyBzdGF0aWMgdm9pZCA8Qj5yZW1vdmVBY3Rpb25EZWZpbml0aW9uPC9CPihqYXZheC5zZXJ2bGV0LlNlcnZsZXRSZXF1ZXN0Jm5ic3A7cmVxdWVzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvQ29tcG9uZW50RGVmaW5pdGlvbi5odG1sIj5Db21wb25lbnREZWZpbml0aW9uPC9BPiZuYnNwO2RlZmluaXRpb24pPC9QUkU+CjxETD4KPEREPjxCPkRlcHJlY2F0ZWQuPC9CPiZuYnNwOzxERD5SZW1vdmUgRGVmaW5pdGlvbiBzdG9yZWQgaW4ganNwIGNvbnRleHQuCiBNYWlubHkgdXNlZCBieSBTdHJ1dHMgdG8gcGFzcyBhIGRlZmluaXRpb24gZGVmaW5lZCBpbiBhbiBBY3Rpb24gdG8gdGhlIGZvcndhcmQuCjxQPgo8REQ+PERMPgo8L0RMPgo8L0REPgo8REQ+PERMPgo8L0RMPgo8L0REPgo8L0RMPgo8SFI+Cgo8QSBOQU1FPSJwb3B1bGF0ZURlZmluaXRpb25zRmFjdG9yeUNvbmZpZyhvcmcuYXBhY2hlLnN0cnV0cy50aWxlcy5EZWZpbml0aW9uc0ZhY3RvcnlDb25maWcsIGphdmF4LnNlcnZsZXQuU2VydmxldENvbmZpZykiPjwhLS0gLS0+PC9BPjxIMz4KcG9wdWxhdGVEZWZpbml0aW9uc0ZhY3RvcnlDb25maWc8L0gzPgo8UFJFPgpwdWJsaWMgc3RhdGljIHZvaWQgPEI+cG9wdWxhdGVEZWZpbml0aW9uc0ZhY3RvcnlDb25maWc8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zRmFjdG9yeUNvbmZpZy5odG1sIj5EZWZpbml0aW9uc0ZhY3RvcnlDb25maWc8L0E+Jm5ic3A7ZmFjdG9yeUNvbmZpZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmF4LnNlcnZsZXQuU2VydmxldENvbmZpZyZuYnNwO3NlcnZsZXRDb25maWcpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93cyBqYXZhLmxhbmcuSWxsZWdhbEFjY2Vzc0V4Y2VwdGlvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphdmEubGFuZy5yZWZsZWN0Lkludm9jYXRpb25UYXJnZXRFeGNlcHRpb248L1BSRT4KPERMPgo8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEREPlBvcHVsYXRlIERlZmluaXRpb24gRmFjdG9yeSBDb25maWcgZnJvbSB3ZWIueG1sIHByb3BlcnRpZXMuCjxQPgo8REQ+PERMPgo8L0RMPgo8L0REPgo8REQ+PERMPgo8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmZhY3RvcnlDb25maWc8L0NPREU+IC0gRGVmaW5pdGlvbiBGYWN0b3J5IENvbmZpZyB0byBwb3B1bGF0ZS48REQ+PENPREU+c2VydmxldENvbmZpZzwvQ09ERT4gLSBDdXJyZW50IHNlcnZsZXQgY29uZmlnIGNvbnRhaW5pbmcgd2ViLnhtbCBwcm9wZXJ0aWVzLgo8RFQ+PEI+VGhyb3dzOjwvQj4KPEREPjxDT0RFPmphdmEubGFuZy5JbGxlZ2FsQWNjZXNzRXhjZXB0aW9uPC9DT0RFPiAtIGlmIHRoZSBjYWxsZXIgZG9lcyBub3QgaGF2ZQogIGFjY2VzcyB0byB0aGUgcHJvcGVydHkgYWNjZXNzb3IgbWV0aG9kCjxERD48Q09ERT5qYXZhLmxhbmcucmVmbGVjdC5JbnZvY2F0aW9uVGFyZ2V0RXhjZXB0aW9uPC9DT0RFPiAtIGlmIHRoZSBwcm9wZXJ0eSBhY2Nlc3NvciBtZXRob2QKICB0aHJvd3MgYW4gZXhjZXB0aW9uPERUPjxCPlNpbmNlOjwvQj48L0RUPgogIDxERD50aWxlcyAyMDAyMDcwODwvREQ+CjxEVD48Qj5TZWUgQWxzbzo8L0I+PEREPjxDT0RFPkJlYW5VdGlsczwvQ09ERT48L0RMPgo8L0REPgo8L0RMPgo8SFI+Cgo8QSBOQU1FPSJyZWFkRmFjdG9yeUNvbmZpZyhqYXZheC5zZXJ2bGV0LlNlcnZsZXRDb25maWcpIj48IS0tIC0tPjwvQT48SDM+CnJlYWRGYWN0b3J5Q29uZmlnPC9IMz4KPFBSRT4KcHJvdGVjdGVkIHN0YXRpYyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc0ZhY3RvcnlDb25maWcuaHRtbCI+RGVmaW5pdGlvbnNGYWN0b3J5Q29uZmlnPC9BPiA8Qj5yZWFkRmFjdG9yeUNvbmZpZzwvQj4oamF2YXguc2VydmxldC5TZXJ2bGV0Q29uZmlnJm5ic3A7c2VydmxldENvbmZpZykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvd3MgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNGYWN0b3J5RXhjZXB0aW9uLmh0bWwiPkRlZmluaXRpb25zRmFjdG9yeUV4Y2VwdGlvbjwvQT48L1BSRT4KPERMPgo8REQ+PEI+RGVwcmVjYXRlZC48L0I+Jm5ic3A7PEREPkNyZWF0ZSBGYWN0b3J5Q29uZmlnIGFuZCBpbml0aWFsaXplIGl0IGZyb20gd2ViLnhtbC4KPFA+CjxERD48REw+CjwvREw+CjwvREQ+CjxERD48REw+CjxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+c2VydmxldENvbmZpZzwvQ09ERT4gLSBTZXJ2bGV0Q29uZmlnIGZvciB0aGUgbW9kdWxlIHdpdGggd2hpY2gKICB0aGlzIHBsdWcgaW4gaXMgYXNzb2NpYXRlZAo8RFQ+PEI+VGhyb3dzOjwvQj4KPEREPjxDT0RFPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUvc3RydXRzL3RpbGVzL0RlZmluaXRpb25zRmFjdG9yeUV4Y2VwdGlvbi5odG1sIj5EZWZpbml0aW9uc0ZhY3RvcnlFeGNlcHRpb248L0E+PC9DT0RFPiAtIGlmIHRoaXMgPGNvZGU+UGx1Z0luPC9jb2RlPiBjYW5ub3QKICBiZSBzdWNjZXNzZnVsbHkgaW5pdGlhbGl6ZWQ8L0RMPgo8L0REPgo8L0RMPgo8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+CjxIUj4KCjwhLS0gPT09PT09PT09PSBTVEFSVCBPRiBOQVZCQVIgPT09PT09PT09PSAtLT4KPEEgTkFNRT0ibmF2YmFyX2JvdHRvbSI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiPgo8VFI+CjxURCBDT0xTUEFOPTMgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KPEEgTkFNRT0ibmF2YmFyX2JvdHRvbV9maXJzdHJvdyI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyI+CiAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CiAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+Q2xhc3M8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9EZWZpbml0aW9uc1V0aWwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJwYWNrYWdlLXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWFsbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KICA8L1RSPgo8L1RBQkxFPgo8L1REPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KPC9FTT4KPC9URD4KPC9UUj4KCjxUUj4KPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvRGVmaW5pdGlvbnNGYWN0b3J5Q29uZmlnLmh0bWwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOwombmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9EZWZpbml0aW9uc1V0aWwuU2VydmxldFByb3BlcnRpZXNNYXAuaHRtbCI+PEI+TkVYVCBDTEFTUzwvQj48L0E+PC9GT05UPjwvVEQ+CjxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CiAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbCIgVEFSR0VUPSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CiZuYnNwOzxBIEhSRUY9IkRlZmluaXRpb25zVXRpbC5odG1sIiBUQVJHRVQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKJm5ic3A7CjxTQ1JJUFQ+CiAgPCEtLQogIGlmKHdpbmRvdz09dG9wKSB7CiAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSIuLi8uLi8uLi8uLi9hbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCIgVEFSR0VUPSIiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKICB9CiAgLy8tLT4KPC9TQ1JJUFQ+CjxOT1NDUklQVD4KPEEgSFJFRj0iLi4vLi4vLi4vLi4vYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiIFRBUkdFVD0iIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+CjwvTk9TQ1JJUFQ+CjwvRk9OVD48L1REPgo8L1RSPgo8VFI+CjxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+CiAgU1VNTUFSWTombmJzcDs8QSBIUkVGPSIjbmVzdGVkX2NsYXNzX3N1bW1hcnkiPk5FU1RFRDwvQT4mbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI2ZpZWxkX3N1bW1hcnkiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3Jfc3VtbWFyeSI+Q09OU1RSPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4KPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4KREVUQUlMOiZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjY29uc3RydWN0b3JfZGV0YWlsIj5DT05TVFI8L0E+Jm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2RfZGV0YWlsIj5NRVRIT0Q8L0E+PC9GT05UPjwvVEQ+CjwvVFI+CjwvVEFCTEU+CjwhLS0gPT09PT09PT09PT0gRU5EIE9GIE5BVkJBUiA9PT09PT09PT09PSAtLT4KCjxIUj4KQ29weXJpZ2h0IKkgMjAwMC0yMDAzIC0gQXBhY2hlIFNvZnR3YXJlIEZvdW5kYXRpb24KPC9CT0RZPgo8L0hUTUw+Cg==