PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMC8vRU4iPg0KPCEtLU5ld1BhZ2UtLT4NCjxIVE1MPg0KPEhFQUQ+DQo8IS0tIEdlbmVyYXRlZCBieSBqYXZhZG9jIG9uIFRodSBOb3YgMjIgMTc6MTI6NTYgRVNUIDIwMDcgLS0+DQo8VElUTEU+DQpYYWxhbi1KYXZhIDIuNy4xOiBDbGFzcyAgRFRNTWFuYWdlcg0KPC9USVRMRT4NCjxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSIuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4NCjwvSEVBRD4NCjxCT0RZIEJHQ09MT1I9IndoaXRlIj4NCg0KPCEtLSA9PT09PT09PT09IFNUQVJUIE9GIE5BVkJBUiA9PT09PT09PT09IC0tPg0KPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiPg0KPFRSPg0KPFREIENPTFNQQU49MiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPg0KPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyI+DQogIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+DQogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vdmVydmlldy1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS1zdW1tYXJ5Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+UGFja2FnZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDxURCBCR0NPTE9SPSIjRkZGRkZGIiBDTEFTUz0iTmF2QmFyQ2VsbDFSZXYiPiAmbmJzcDs8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDFSZXYiPjxCPkNsYXNzPC9CPjwvRk9OVD4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iY2xhc3MtdXNlL0RUTU1hbmFnZXIuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5Vc2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0icGFja2FnZS10cmVlLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VHJlZTwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9kZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4NCiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2luZGV4LWFsbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4NCiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2hlbHAtZG9jLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SGVscDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDwvVFI+DQo8L1RBQkxFPg0KPC9URD4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPg0KPC9FTT4NCjwvVEQ+DQo8L1RSPg0KDQo8VFI+DQo8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPg0KJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTUF4aXNUcmF2ZXJzZXIuaHRtbCI+PEI+UFJFViBDTEFTUzwvQj48L0E+Jm5ic3A7DQombmJzcDtORVhUIENMQVNTPC9GT05UPjwvVEQ+DQo8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPg0KICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC5odG1sIiBUQVJHRVQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsNCiZuYnNwOzxBIEhSRUY9IkRUTU1hbmFnZXIuaHRtbCIgVEFSR0VUPSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPjwvRk9OVD48L1REPg0KPC9UUj4NCjxUUj4NCjxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+DQogIFNVTU1BUlk6ICZuYnNwO0lOTkVSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNmaWVsZF9zdW1tYXJ5Ij5GSUVMRDwvQT4mbmJzcDt8Jm5ic3A7Q09OU1RSJm5ic3A7fCZuYnNwOzxBIEhSRUY9IiNtZXRob2Rfc3VtbWFyeSI+TUVUSE9EPC9BPjwvRk9OVD48L1REPg0KPFREIFZBTElHTj0idG9wIiBDTEFTUz0iTmF2QmFyQ2VsbDMiPjxGT05UIFNJWkU9Ii0yIj4NCkRFVEFJTDogJm5ic3A7PEEgSFJFRj0iI2ZpZWxkX2RldGFpbCI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX2RldGFpbCI+TUVUSE9EPC9BPjwvRk9OVD48L1REPg0KPC9UUj4NCjwvVEFCTEU+DQo8IS0tID09PT09PT09PT09IEVORCBPRiBOQVZCQVIgPT09PT09PT09PT0gLS0+DQoNCjxIUj4NCjwhLS0gPT09PT09PT0gU1RBUlQgT0YgQ0xBU1MgREFUQSA9PT09PT09PSAtLT4NCjxIMj4NCjxGT05UIFNJWkU9Ii0xIj4NCm9yZy5hcGFjaGUueG1sLmR0bTwvRk9OVD4NCjxCUj4NCkNsYXNzICBEVE1NYW5hZ2VyPC9IMj4NCjxQUkU+DQpqYXZhLmxhbmcuT2JqZWN0DQogIHwNCiAgKy0tPEI+b3JnLmFwYWNoZS54bWwuZHRtLkRUTU1hbmFnZXI8L0I+DQo8L1BSRT4NCjxETD4NCjxEVD48Qj5EaXJlY3QgS25vd24gU3ViY2xhc3Nlczo8L0I+IDxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vcmVmL0RUTU1hbmFnZXJEZWZhdWx0Lmh0bWwiPkRUTU1hbmFnZXJEZWZhdWx0PC9BPiwgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94cGF0aC9YUGF0aENvbnRleHQuaHRtbCI+WFBhdGhDb250ZXh0PC9BPjwvREQ+DQo8L0RMPg0KPEhSPg0KPERMPg0KPERUPnB1YmxpYyBhYnN0cmFjdCBjbGFzcyA8Qj5EVE1NYW5hZ2VyPC9CPjxEVD5leHRlbmRzIGphdmEubGFuZy5PYmplY3Q8L0RMPg0KDQo8UD4NCkEgRFRNTWFuYWdlciBpbnN0YW5jZSBjYW4gYmUgdXNlZCB0byBjcmVhdGUgRFRNIGFuZAogRFRNSXRlcmF0b3Igb2JqZWN0cywgYW5kIG1hbmFnZSB0aGUgRFRNIG9iamVjdHMgaW4gdGhlIHN5c3RlbS4KCiA8cD5UaGUgc3lzdGVtIHByb3BlcnR5IHRoYXQgZGV0ZXJtaW5lcyB3aGljaCBGYWN0b3J5IGltcGxlbWVudGF0aW9uCiB0byBjcmVhdGUgaXMgbmFtZWQgIm9yZy5hcGFjaGUueG1sLnV0aWxzLkRUTUZhY3RvcnkiLiBUaGlzCiBwcm9wZXJ0eSBuYW1lcyBhIGNvbmNyZXRlIHN1YmNsYXNzIG9mIHRoZSBEVE1GYWN0b3J5IGFic3RyYWN0CiAgY2xhc3MuIElmIHRoZSBwcm9wZXJ0eSBpcyBub3QgZGVmaW5lZCwgYSBwbGF0Zm9ybSBkZWZhdWx0IGlzIGJlIHVzZWQuPC9wPgoKIDxwPkFuIGluc3RhbmNlIG9mIHRoaXMgY2xhc3MgPGVtcGg+bXVzdDwvZW1waD4gYmUgc2FmZSB0byB1c2UgYWNyb3NzCiB0aHJlYWQgaW5zdGFuY2VzLiAgSXQgaXMgZXhwZWN0ZWQgdGhhdCBhIGNsaWVudCB3aWxsIGNyZWF0ZSBhIHNpbmdsZSBpbnN0YW5jZQogb2YgYSBEVE1NYW5hZ2VyIHRvIHVzZSBhY3Jvc3MgbXVsdGlwbGUgdGhyZWFkcy4gIFRoaXMgd2lsbCBhbGxvdyBzaGFyaW5nCiBvZiBEVE1zIGFjcm9zcyBtdWx0aXBsZSBwcm9jZXNzZXMuPC9wPgoKIDxwPk5vdGU6IHRoaXMgY2xhc3MgaXMgaW5jb21wbGV0ZSByaWdodCBub3cuICBJdCB3aWxsIGJlIHByZXR0eSBtdWNoCiBtb2RlbGVkIGFmdGVyIGphdmF4LnhtbC50cmFuc2Zvcm0uVHJhbnNmb3JtZXJGYWN0b3J5IGluIHRlcm1zIG9mIGl0cwogZmFjdG9yeSBzdXBwb3J0LjwvcD4KCiA8cD5TdGF0ZTogSW4gcHJvZ3Jlc3MhITwvcD4NCjxQPg0KPEhSPg0KDQo8UD4NCjwhLS0gPT09PT09PT0gSU5ORVIgQ0xBU1MgU1VNTUFSWSA9PT09PT09PSAtLT4NCg0KDQo8IS0tID09PT09PT09PT09IEZJRUxEIFNVTU1BUlkgPT09PT09PT09PT0gLS0+DQoNCjxBIE5BTUU9ImZpZWxkX3N1bW1hcnkiPjwhLS0gLS0+PC9BPgo8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFdJRFRIPSIxMDAlIj4NCjxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPg0KPFREIENPTFNQQU49Mj48Rk9OVCBTSVpFPSIrMiI+DQo8Qj5GaWVsZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPg0KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1NYW5hZ2VyLmh0bWwjSURFTlRfRFRNX0RFRkFVTFQiPklERU5UX0RUTV9ERUZBVUxUPC9BPjwvQj48L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1doZW4gdGhpcyBiaXRtYXNrIGlzIEFORGVkIHdpdGggYSBEVE0gbm9kZSBoYW5kbGUgbnVtYmVyLCB0aGUgcmVzdWx0CiBpcyB0aGUgRFRNJ3MgZG9jdW1lbnQgaWRlbnRpdHkgbnVtYmVyLjwvVEQ+DQo8L1RSPg0KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+DQo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+DQo8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTU1hbmFnZXIuaHRtbCNJREVOVF9EVE1fTk9ERV9CSVRTIj5JREVOVF9EVE1fTk9ERV9CSVRTPC9BPjwvQj48L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoaXMgdmFsdWUsIHNldCBhdCBjb21waWxlIHRpbWUsIGNvbnRyb2xzIGhvdyBtYW55IGJpdHMgb2YgdGhlCiBEVE0gbm9kZSBpZGVudGlmaWVyIG51bWJlcnMgYXJlIHVzZWQgdG8gaWRlbnRpZnkgYSBub2RlIHdpdGhpbiBhCiBkb2N1bWVudCwgYW5kIHRodXMgc2V0cyB0aGUgbWF4aW11bSBudW1iZXIgb2Ygbm9kZXMgcGVyCiBkb2N1bWVudC48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+c3RhdGljJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPg0KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1NYW5hZ2VyLmh0bWwjSURFTlRfTUFYX0RUTVMiPklERU5UX01BWF9EVE1TPC9BPjwvQj48L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1RoaXMgaXMgdGhlIG1heGltdW0gbnVtYmVyIG9mIERUTXMgYXZhaWxhYmxlLjwvVEQ+DQo8L1RSPg0KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+DQo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+DQo8Q09ERT5zdGF0aWMmbmJzcDtpbnQ8L0NPREU+PC9GT05UPjwvVEQ+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTU1hbmFnZXIuaHRtbCNJREVOVF9OT0RFX0RFRkFVTFQiPklERU5UX05PREVfREVGQVVMVDwvQT48L0I+PC9DT0RFPg0KDQo8QlI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtXaGVuIHRoaXMgYml0bWFzayBpcyBBTkRlZCB3aXRoIGEgRFRNIG5vZGUgaGFuZGxlIG51bWJlciwgdGhlIHJlc3VsdAogaXMgdGhlIGxvdyBiaXRzIG9mIHRoZSBub2RlJ3MgaW5kZXggbnVtYmVyIHdpdGhpbiB0aGF0IERUTS48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNTWFuYWdlci5odG1sI21faW5jcmVtZW50YWwiPm1faW5jcmVtZW50YWw8L0E+PC9CPjwvQ09ERT4NCg0KPEJSPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4NCjxDT0RFPiZuYnNwO2Jvb2xlYW48L0NPREU+PC9GT05UPjwvVEQ+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTU1hbmFnZXIuaHRtbCNtX3NvdXJjZV9sb2NhdGlvbiI+bV9zb3VyY2VfbG9jYXRpb248L0E+PC9CPjwvQ09ERT4NCg0KPEJSPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PC9URD4NCjwvVFI+DQo8L1RBQkxFPg0KJm5ic3A7DQo8IS0tID09PT09PT09IENPTlNUUlVDVE9SIFNVTU1BUlkgPT09PT09PT0gLS0+DQoNCg0KPCEtLSA9PT09PT09PT09IE1FVEhPRCBTVU1NQVJZID09PT09PT09PT09IC0tPg0KDQo8QSBOQU1FPSJtZXRob2Rfc3VtbWFyeSI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgV0lEVEg9IjEwMCUiPg0KPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+DQo8VEQgQ09MU1BBTj0yPjxGT05UIFNJWkU9IisyIj4NCjxCPk1ldGhvZCBTdW1tYXJ5PC9CPjwvRk9OVD48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+YWJzdHJhY3QgJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTS5odG1sIj5EVE08L0E+PC9DT0RFPjwvRk9OVD48L1REPg0KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1NYW5hZ2VyLmh0bWwjY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpIj5jcmVhdGVEb2N1bWVudEZyYWdtZW50PC9BPjwvQj4oKTwvQ09ERT4NCg0KPEJSPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlcyBhIERUTSByZXByZXNlbnRpbmcgYW4gZW1wdHkgPGNvZGU+RG9jdW1lbnRGcmFnbWVudDwvY29kZT4gb2JqZWN0LjwvVEQ+DQo8L1RSPg0KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+DQo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+DQo8Q09ERT5hYnN0cmFjdCAmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNSXRlcmF0b3IuaHRtbCI+RFRNSXRlcmF0b3I8L0E+PC9DT0RFPjwvRk9OVD48L1REPg0KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1NYW5hZ2VyLmh0bWwjY3JlYXRlRFRNSXRlcmF0b3IoaW50KSI+Y3JlYXRlRFRNSXRlcmF0b3I8L0E+PC9CPihpbnQmbmJzcDtub2RlKTwvQ09ERT4NCg0KPEJSPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q3JlYXRlIGEgbmV3IDxjb2RlPkRUTUl0ZXJhdG9yPC9jb2RlPiB0aGF0IGhvbGRzIGV4YWN0bHkgb25lIG5vZGUuPC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4NCjxDT0RFPmFic3RyYWN0ICZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1JdGVyYXRvci5odG1sIj5EVE1JdGVyYXRvcjwvQT48L0NPREU+PC9GT05UPjwvVEQ+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTU1hbmFnZXIuaHRtbCNjcmVhdGVEVE1JdGVyYXRvcihpbnQsIG9yZy5hcGFjaGUueG1sLmR0bS5EVE1GaWx0ZXIsIGJvb2xlYW4pIj5jcmVhdGVEVE1JdGVyYXRvcjwvQT48L0I+KGludCZuYnNwO3doYXRUb1Nob3csCiAgICAgICAgICAgICAgICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1GaWx0ZXIuaHRtbCI+RFRNRmlsdGVyPC9BPiZuYnNwO2ZpbHRlciwKICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO2VudGl0eVJlZmVyZW5jZUV4cGFuc2lvbik8L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZSBhIG5ldyA8Y29kZT5EVE1JdGVyYXRvcjwvY29kZT4gYmFzZWQgb25seSBvbiBhIHdoYXRUb1Nob3cKIGFuZCBhIERUTUZpbHRlci48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+YWJzdHJhY3QgJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTUl0ZXJhdG9yLmh0bWwiPkRUTUl0ZXJhdG9yPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNTWFuYWdlci5odG1sI2NyZWF0ZURUTUl0ZXJhdG9yKGphdmEubGFuZy5PYmplY3QsIGludCkiPmNyZWF0ZURUTUl0ZXJhdG9yPC9BPjwvQj4oamF2YS5sYW5nLk9iamVjdCZuYnNwO3hwYXRoQ29tcGlsZXIsCiAgICAgICAgICAgICAgICAgIGludCZuYnNwO3Bvcyk8L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZSBhIG5ldyA8Y29kZT5EVE1JdGVyYXRvcjwvY29kZT4gYmFzZWQgb24gYW4gWFBhdGgKIDxhIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hwYXRoI05ULUxvY2F0aW9uUGF0aD5Mb2NhdGlvblBhdGg8L2E+IG9yCiBhIDxhIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hwYXRoI05ULVVuaW9uRXhwciI+VW5pb25FeHByPC9hPi48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+YWJzdHJhY3QgJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTUl0ZXJhdG9yLmh0bWwiPkRUTUl0ZXJhdG9yPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNTWFuYWdlci5odG1sI2NyZWF0ZURUTUl0ZXJhdG9yKGphdmEubGFuZy5TdHJpbmcsIG9yZy5hcGFjaGUueG1sLnV0aWxzLlByZWZpeFJlc29sdmVyKSI+Y3JlYXRlRFRNSXRlcmF0b3I8L0E+PC9CPihqYXZhLmxhbmcuU3RyaW5nJm5ic3A7eHBhdGhTdHJpbmcsCiAgICAgICAgICAgICAgICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL3V0aWxzL1ByZWZpeFJlc29sdmVyLmh0bWwiPlByZWZpeFJlc29sdmVyPC9BPiZuYnNwO3ByZXNvbHZlcik8L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0NyZWF0ZSBhIG5ldyA8Y29kZT5EVE1JdGVyYXRvcjwvY29kZT4gYmFzZWQgb24gYW4gWFBhdGgKIDxhIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hwYXRoI05ULUxvY2F0aW9uUGF0aD5Mb2NhdGlvblBhdGg8L2E+IG9yCiBhIDxhIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hwYXRoI05ULVVuaW9uRXhwciI+VW5pb25FeHByPC9hPi48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+YWJzdHJhY3QgJm5ic3A7PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTS5odG1sIj5EVE08L0E+PC9DT0RFPjwvRk9OVD48L1REPg0KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1NYW5hZ2VyLmh0bWwjZ2V0RFRNKGludCkiPmdldERUTTwvQT48L0I+KGludCZuYnNwO25vZGVIYW5kbGUpPC9DT0RFPg0KDQo8QlI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtHZXQgdGhlIGluc3RhbmNlIG9mIERUTSB0aGF0ICJvd25zIiBhIG5vZGUgaGFuZGxlLjwvVEQ+DQo8L1RSPg0KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+DQo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+DQo8Q09ERT5hYnN0cmFjdCAmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNLmh0bWwiPkRUTTwvQT48L0NPREU+PC9GT05UPjwvVEQ+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTU1hbmFnZXIuaHRtbCNnZXREVE0oamF2YXgueG1sLnRyYW5zZm9ybS5Tb3VyY2UsIGJvb2xlYW4sIG9yZy5hcGFjaGUueG1sLmR0bS5EVE1XU0ZpbHRlciwgYm9vbGVhbiwgYm9vbGVhbikiPmdldERUTTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2phdmF4L3htbC90cmFuc2Zvcm0vU291cmNlLmh0bWwiPlNvdXJjZTwvQT4mbmJzcDtzb3VyY2UsCiAgICAgICBib29sZWFuJm5ic3A7dW5pcXVlLAogICAgICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTVdTRmlsdGVyLmh0bWwiPkRUTVdTRmlsdGVyPC9BPiZuYnNwO3doaXRlU3BhY2VGaWx0ZXIsCiAgICAgICBib29sZWFuJm5ic3A7aW5jcmVtZW50YWwsCiAgICAgICBib29sZWFuJm5ic3A7ZG9JbmRleGluZyk8L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0dldCBhbiBpbnN0YW5jZSBvZiBhIERUTSwgbG9hZGVkIHdpdGggdGhlIGNvbnRlbnQgZnJvbSB0aGUKIHNwZWNpZmllZCBzb3VyY2UuPC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4NCjxDT0RFPmFic3RyYWN0ICZuYnNwO2ludDwvQ09ERT48L0ZPTlQ+PC9URD4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNTWFuYWdlci5odG1sI2dldERUTUhhbmRsZUZyb21Ob2RlKG9yZy53M2MuZG9tLk5vZGUpIj5nZXREVE1IYW5kbGVGcm9tTm9kZTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy93M2MvZG9tL05vZGUuaHRtbCI+Tm9kZTwvQT4mbmJzcDtub2RlKTwvQ09ERT4NCg0KPEJSPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7R2l2ZW4gYSBXM0MgRE9NIG5vZGUsIHRyeSBhbmQgcmV0dXJuIGEgRFRNIGhhbmRsZS48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+YWJzdHJhY3QgJm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPg0KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1NYW5hZ2VyLmh0bWwjZ2V0RFRNSWRlbnRpdHkob3JnLmFwYWNoZS54bWwuZHRtLkRUTSkiPmdldERUTUlkZW50aXR5PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTS5odG1sIj5EVE08L0E+Jm5ic3A7ZHRtKTwvQ09ERT4NCg0KPEJSPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7JVRCRCUgRG9jCgogTkVFRFNET0MgQHBhcmFtIGR0bQoKIE5FRURTRE9DICgkb2JqZWN0TmFtZSQpIEByZXR1cm48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+Jm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPg0KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1NYW5hZ2VyLmh0bWwjZ2V0RFRNSWRlbnRpdHlNYXNrKCkiPmdldERUTUlkZW50aXR5TWFzazwvQT48L0I+KCk8L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyVUQkQlIERvYwoKIE5FRURTRE9DICgkb2JqZWN0TmFtZSQpIEByZXR1cm48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+Jm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNTWFuYWdlci5odG1sI2dldEluY3JlbWVudGFsKCkiPmdldEluY3JlbWVudGFsPC9BPjwvQj4oKTwvQ09ERT4NCg0KPEJSPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7R2V0IGEgZmxhZyBpbmRpY2F0aW5nIHdoZXRoZXIgYW4gaW5jcmVtZW50YWwgdHJhbnNmb3JtIGlzIGRlc2lyZWQ8L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+Jm5ic3A7aW50PC9DT0RFPjwvRk9OVD48L1REPg0KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1NYW5hZ2VyLmh0bWwjZ2V0Tm9kZUlkZW50aXR5TWFzaygpIj5nZXROb2RlSWRlbnRpdHlNYXNrPC9BPjwvQj4oKTwvQ09ERT4NCg0KPEJSPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7JVRCRCUgRG9jCgogTkVFRFNET0MgKCRvYmplY3ROYW1lJCkgQHJldHVybjwvVEQ+DQo8L1RSPg0KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+DQo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+DQo8Q09ERT4mbmJzcDtib29sZWFuPC9DT0RFPjwvRk9OVD48L1REPg0KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1NYW5hZ2VyLmh0bWwjZ2V0U291cmNlX2xvY2F0aW9uKCkiPmdldFNvdXJjZV9sb2NhdGlvbjwvQT48L0I+KCk8L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0dldCBhIGZsYWcgaW5kaWNhdGluZyB3aGV0aGVyIHRoZSB0cmFuc2Zvcm1hdGlvbiBwaGFzZSBzaG91bGQKIGtlZXAgdHJhY2sgb2YgbGluZSBhbmQgY29sdW1uIG51bWJlcnMgZm9yIHRoZSBpbnB1dCBzb3VyY2UKIGRvY3VtZW50LjwvVEQ+DQo8L1RSPg0KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+DQo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+DQo8Q09ERT4mbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC91dGlscy9YTUxTdHJpbmdGYWN0b3J5Lmh0bWwiPlhNTFN0cmluZ0ZhY3Rvcnk8L0E+PC9DT0RFPjwvRk9OVD48L1REPg0KPFREPjxDT0RFPjxCPjxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1NYW5hZ2VyLmh0bWwjZ2V0WE1MU3RyaW5nRmFjdG9yeSgpIj5nZXRYTUxTdHJpbmdGYWN0b3J5PC9BPjwvQj4oKTwvQ09ERT4NCg0KPEJSPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7R2V0IHRoZSBYTUxTdHJpbmdGYWN0b3J5IHVzZWQgZm9yIHRoZSBEVE1zLjwvVEQ+DQo8L1RSPg0KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+DQo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgV0lEVEg9IjElIj48Rk9OVCBTSVpFPSItMSI+DQo8Q09ERT5zdGF0aWMmbmJzcDs8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNTWFuYWdlci5odG1sIj5EVE1NYW5hZ2VyPC9BPjwvQ09ERT48L0ZPTlQ+PC9URD4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNTWFuYWdlci5odG1sI25ld0luc3RhbmNlKG9yZy5hcGFjaGUueG1sLnV0aWxzLlhNTFN0cmluZ0ZhY3RvcnkpIj5uZXdJbnN0YW5jZTwvQT48L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL3V0aWxzL1hNTFN0cmluZ0ZhY3RvcnkuaHRtbCI+WE1MU3RyaW5nRmFjdG9yeTwvQT4mbmJzcDt4c2YpPC9DT0RFPg0KDQo8QlI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtPYnRhaW4gYSBuZXcgaW5zdGFuY2Ugb2YgYSA8Y29kZT5EVE1NYW5hZ2VyPC9jb2RlPi48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+YWJzdHJhY3QgJm5ic3A7Ym9vbGVhbjwvQ09ERT48L0ZPTlQ+PC9URD4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNTWFuYWdlci5odG1sI3JlbGVhc2Uob3JnLmFwYWNoZS54bWwuZHRtLkRUTSwgYm9vbGVhbikiPnJlbGVhc2U8L0E+PC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNLmh0bWwiPkRUTTwvQT4mbmJzcDtkdG0sCiAgICAgICAgYm9vbGVhbiZuYnNwO3Nob3VsZEhhcmREZWxldGUpPC9DT0RFPg0KDQo8QlI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtSZWxlYXNlIGEgRFRNIGVpdGhlciB0byBhIGxydSBwb29sLCBvciBjb21wbGV0ZWx5IHJlbW92ZSByZWZlcmVuY2UuPC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4NCjxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTU1hbmFnZXIuaHRtbCNzZXRJbmNyZW1lbnRhbChib29sZWFuKSI+c2V0SW5jcmVtZW50YWw8L0E+PC9CPihib29sZWFuJm5ic3A7aW5jcmVtZW50YWwpPC9DT0RFPg0KDQo8QlI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtTZXQgYSBmbGFnIGluZGljYXRpbmcgd2hldGhlciBhbiBpbmNyZW1lbnRhbCB0cmFuc2Zvcm0gaXMgZGVzaXJlZAogVGhpcyBmbGFnIHNob3VsZCBoYXZlIHRoZSBzYW1lIHZhbHVlIGFzIHRoZSBGRUFUVVJFX0lOQ1JFTUVOVEFMIGZlYXR1cmUKIHdoaWNoIGlzIHNldCBieSB0aGUgVHJhbnNmb3JtZXJGYWN0b3J5LnNldEF0dHJpYnV0KCkgbWV0aG9kIGJlZm9yZSBhCiBEVE1NYW5hZ2VyIGlzIGNyZWF0ZWQ8L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREIEFMSUdOPSJyaWdodCIgVkFMSUdOPSJ0b3AiIFdJRFRIPSIxJSI+PEZPTlQgU0laRT0iLTEiPg0KPENPREU+Jm5ic3A7dm9pZDwvQ09ERT48L0ZPTlQ+PC9URD4NCjxURD48Q09ERT48Qj48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNTWFuYWdlci5odG1sI3NldFNvdXJjZV9sb2NhdGlvbihib29sZWFuKSI+c2V0U291cmNlX2xvY2F0aW9uPC9BPjwvQj4oYm9vbGVhbiZuYnNwO3NvdXJjZUxvY2F0aW9uKTwvQ09ERT4NCg0KPEJSPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7U2V0IGEgZmxhZyBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIHRyYW5zZm9ybWF0aW9uIHBoYXNlIHNob3VsZAoga2VlcCB0cmFjayBvZiBsaW5lIGFuZCBjb2x1bW4gbnVtYmVycyBmb3IgdGhlIGlucHV0IHNvdXJjZQogZG9jdW1lbnQuPC9URD4NCjwvVFI+DQo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4NCjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBXSURUSD0iMSUiPjxGT05UIFNJWkU9Ii0xIj4NCjxDT0RFPiZuYnNwO3ZvaWQ8L0NPREU+PC9GT05UPjwvVEQ+DQo8VEQ+PENPREU+PEI+PEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTU1hbmFnZXIuaHRtbCNzZXRYTUxTdHJpbmdGYWN0b3J5KG9yZy5hcGFjaGUueG1sLnV0aWxzLlhNTFN0cmluZ0ZhY3RvcnkpIj5zZXRYTUxTdHJpbmdGYWN0b3J5PC9BPjwvQj4oPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvdXRpbHMvWE1MU3RyaW5nRmFjdG9yeS5odG1sIj5YTUxTdHJpbmdGYWN0b3J5PC9BPiZuYnNwO3hzZik8L0NPREU+DQoNCjxCUj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO1NldCB0aGUgWE1MU3RyaW5nRmFjdG9yeSB1c2VkIGZvciB0aGUgRFRNcy48L1REPg0KPC9UUj4NCjwvVEFCTEU+DQombmJzcDs8QSBOQU1FPSJtZXRob2RzX2luaGVyaXRlZF9mcm9tX2NsYXNzX2phdmEubGFuZy5PYmplY3QiPjwhLS0gLS0+PC9BPgo8VEFCTEUgQk9SREVSPSIxIiBDRUxMUEFERElORz0iMyIgQ0VMTFNQQUNJTkc9IjAiIFdJRFRIPSIxMDAlIj4NCjxUUiBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iVGFibGVTdWJIZWFkaW5nQ29sb3IiPg0KPFREPjxCPk1ldGhvZHMgaW5oZXJpdGVkIGZyb20gY2xhc3MgamF2YS5sYW5nLk9iamVjdDwvQj48L1REPg0KPC9UUj4NCjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPg0KPFREPjxDT0RFPmVxdWFscywgDQpnZXRDbGFzcywgDQpoYXNoQ29kZSwgDQpub3RpZnksIA0Kbm90aWZ5QWxsLCANCnRvU3RyaW5nLCANCndhaXQsIA0Kd2FpdCwgDQp3YWl0PC9DT0RFPjwvVEQ+DQo8L1RSPg0KPC9UQUJMRT4NCiZuYnNwOw0KPFA+DQoNCjwhLS0gPT09PT09PT09PT09IEZJRUxEIERFVEFJTCA9PT09PT09PT09PSAtLT4NCg0KPEEgTkFNRT0iZmllbGRfZGV0YWlsIj48IS0tIC0tPjwvQT4KPFRBQkxFIEJPUkRFUj0iMSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBXSURUSD0iMTAwJSI+DQo8VFIgQkdDT0xPUj0iI0NDQ0NGRiIgQ0xBU1M9IlRhYmxlSGVhZGluZ0NvbG9yIj4NCjxURCBDT0xTUEFOPTE+PEZPTlQgU0laRT0iKzIiPg0KPEI+RmllbGQgRGV0YWlsPC9CPjwvRk9OVD48L1REPg0KPC9UUj4NCjwvVEFCTEU+DQoNCjxBIE5BTUU9Im1faW5jcmVtZW50YWwiPjwhLS0gLS0+PC9BPjxIMz4NCm1faW5jcmVtZW50YWw8L0gzPg0KPFBSRT4NCnB1YmxpYyBib29sZWFuIDxCPm1faW5jcmVtZW50YWw8L0I+PC9QUkU+DQo8REw+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJtX3NvdXJjZV9sb2NhdGlvbiI+PCEtLSAtLT48L0E+PEgzPg0KbV9zb3VyY2VfbG9jYXRpb248L0gzPg0KPFBSRT4NCnB1YmxpYyBib29sZWFuIDxCPm1fc291cmNlX2xvY2F0aW9uPC9CPjwvUFJFPg0KPERMPg0KPC9ETD4NCjxIUj4NCg0KPEEgTkFNRT0iSURFTlRfRFRNX05PREVfQklUUyI+PCEtLSAtLT48L0E+PEgzPg0KSURFTlRfRFRNX05PREVfQklUUzwvSDM+DQo8UFJFPg0KcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgPEI+SURFTlRfRFRNX05PREVfQklUUzwvQj48L1BSRT4NCjxETD4NCjxERD5UaGlzIHZhbHVlLCBzZXQgYXQgY29tcGlsZSB0aW1lLCBjb250cm9scyBob3cgbWFueSBiaXRzIG9mIHRoZQogRFRNIG5vZGUgaWRlbnRpZmllciBudW1iZXJzIGFyZSB1c2VkIHRvIGlkZW50aWZ5IGEgbm9kZSB3aXRoaW4gYQogZG9jdW1lbnQsIGFuZCB0aHVzIHNldHMgdGhlIG1heGltdW0gbnVtYmVyIG9mIG5vZGVzIHBlcgogZG9jdW1lbnQuIFRoZSByZW1haW5pbmcgYml0cyBhcmUgdXNlZCB0byBpZGVudGlmeSB0aGUgRFRNCiBkb2N1bWVudCB3aGljaCBjb250YWlucyB0aGlzIG5vZGUuCgogSWYgeW91IGNoYW5nZSBJREVOVF9EVE1fTk9ERV9CSVRTLCBiZSBzdXJlIHRvIHJlYnVpbGQgX0FMTF8gdGhlCiBmaWxlcyB3aGljaCB1c2UgaXQuLi4gaW5jbHVkaW5nIHRoZSBJREtleSB0ZXN0Y2FzZXMuCgogKEZ1bmNHZW5lcmF0ZUtleSBjdXJyZW50bHkgdXNlcyB0aGUgbm9kZSBpZGVudGlmaWVyIGRpcmVjdGx5IGFuZAogdGh1cyBpcyBhZmZlY3RlZCB3aGVuIHRoaXMgY2hhbmdlcy4gVGhlIElES0VZIHJlc3VsdHMgd2lsbCBzdGlsbCBiZQogX2NvcnJlY3RfIChwcmVzdW1pbmcgbm8gb3RoZXIgYnJlYWthZ2UpLCBidXQgc2ltcGxlIGVxdWFsaXR5CiBjb21wYXJpc29uIGFnYWluc3QgdGhlIHByZXZpb3VzICJnb2xkZW4iIGZpbGVzIHdpbGwgcHJvYmFibHkKIGNvbXBsYWluLik8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJJREVOVF9OT0RFX0RFRkFVTFQiPjwhLS0gLS0+PC9BPjxIMz4NCklERU5UX05PREVfREVGQVVMVDwvSDM+DQo8UFJFPg0KcHVibGljIHN0YXRpYyBmaW5hbCBpbnQgPEI+SURFTlRfTk9ERV9ERUZBVUxUPC9CPjwvUFJFPg0KPERMPg0KPEREPldoZW4gdGhpcyBiaXRtYXNrIGlzIEFORGVkIHdpdGggYSBEVE0gbm9kZSBoYW5kbGUgbnVtYmVyLCB0aGUgcmVzdWx0CiBpcyB0aGUgbG93IGJpdHMgb2YgdGhlIG5vZGUncyBpbmRleCBudW1iZXIgd2l0aGluIHRoYXQgRFRNLiBUbyBvYnRhaW4KIHRoZSBoaWdoIGJpdHMsIGFkZCB0aGUgRFRNIElEIHBvcnRpb24ncyBvZmZzZXQgYXMgYXNzaWduZWQgaW4gdGhlIERUTSAKIE1hbmFnZXIuPC9ETD4NCjxIUj4NCg0KPEEgTkFNRT0iSURFTlRfRFRNX0RFRkFVTFQiPjwhLS0gLS0+PC9BPjxIMz4NCklERU5UX0RUTV9ERUZBVUxUPC9IMz4NCjxQUkU+DQpwdWJsaWMgc3RhdGljIGZpbmFsIGludCA8Qj5JREVOVF9EVE1fREVGQVVMVDwvQj48L1BSRT4NCjxETD4NCjxERD5XaGVuIHRoaXMgYml0bWFzayBpcyBBTkRlZCB3aXRoIGEgRFRNIG5vZGUgaGFuZGxlIG51bWJlciwgdGhlIHJlc3VsdAogaXMgdGhlIERUTSdzIGRvY3VtZW50IGlkZW50aXR5IG51bWJlci48L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJJREVOVF9NQVhfRFRNUyI+PCEtLSAtLT48L0E+PEgzPg0KSURFTlRfTUFYX0RUTVM8L0gzPg0KPFBSRT4NCnB1YmxpYyBzdGF0aWMgZmluYWwgaW50IDxCPklERU5UX01BWF9EVE1TPC9CPjwvUFJFPg0KPERMPg0KPEREPlRoaXMgaXMgdGhlIG1heGltdW0gbnVtYmVyIG9mIERUTXMgYXZhaWxhYmxlLiAgVGhlIGhpZ2hlc3QgRFRNIGlzCiBvbmUgbGVzcyB0aGFuIHRoaXMuPC9ETD4NCg0KPCEtLSA9PT09PT09PT0gQ09OU1RSVUNUT1IgREVUQUlMID09PT09PT09IC0tPg0KDQoNCjwhLS0gPT09PT09PT09PT09IE1FVEhPRCBERVRBSUwgPT09PT09PT09PSAtLT4NCg0KPEEgTkFNRT0ibWV0aG9kX2RldGFpbCI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjEiIENFTExQQURESU5HPSIzIiBDRUxMU1BBQ0lORz0iMCIgV0lEVEg9IjEwMCUiPg0KPFRSIEJHQ09MT1I9IiNDQ0NDRkYiIENMQVNTPSJUYWJsZUhlYWRpbmdDb2xvciI+DQo8VEQgQ09MU1BBTj0xPjxGT05UIFNJWkU9IisyIj4NCjxCPk1ldGhvZCBEZXRhaWw8L0I+PC9GT05UPjwvVEQ+DQo8L1RSPg0KPC9UQUJMRT4NCg0KPEEgTkFNRT0iZ2V0WE1MU3RyaW5nRmFjdG9yeSgpIj48IS0tIC0tPjwvQT48SDM+DQpnZXRYTUxTdHJpbmdGYWN0b3J5PC9IMz4NCjxQUkU+DQpwdWJsaWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvdXRpbHMvWE1MU3RyaW5nRmFjdG9yeS5odG1sIj5YTUxTdHJpbmdGYWN0b3J5PC9BPiA8Qj5nZXRYTUxTdHJpbmdGYWN0b3J5PC9CPigpPC9QUkU+DQo8REw+DQo8REQ+R2V0IHRoZSBYTUxTdHJpbmdGYWN0b3J5IHVzZWQgZm9yIHRoZSBEVE1zLjxERD48REw+DQo8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmEgdmFsaWQgWE1MU3RyaW5nRmFjdG9yeSBvYmplY3QsIG9yIG51bGwgaWYgaXQgaGFzbid0IGJlZW4gc2V0IHlldC48L0RMPg0KPC9ERD4NCjwvREw+DQo8SFI+DQoNCjxBIE5BTUU9InNldFhNTFN0cmluZ0ZhY3Rvcnkob3JnLmFwYWNoZS54bWwudXRpbHMuWE1MU3RyaW5nRmFjdG9yeSkiPjwhLS0gLS0+PC9BPjxIMz4NCnNldFhNTFN0cmluZ0ZhY3Rvcnk8L0gzPg0KPFBSRT4NCnB1YmxpYyB2b2lkIDxCPnNldFhNTFN0cmluZ0ZhY3Rvcnk8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL3V0aWxzL1hNTFN0cmluZ0ZhY3RvcnkuaHRtbCI+WE1MU3RyaW5nRmFjdG9yeTwvQT4mbmJzcDt4c2YpPC9QUkU+DQo8REw+DQo8REQ+U2V0IHRoZSBYTUxTdHJpbmdGYWN0b3J5IHVzZWQgZm9yIHRoZSBEVE1zLjxERD48REw+DQo8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnhzZjwvQ09ERT4gLSBhIHZhbGlkIFhNTFN0cmluZ0ZhY3Rvcnkgb2JqZWN0LCBzaG91bGQgbm90IGJlIG51bGwuPC9ETD4NCjwvREQ+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJuZXdJbnN0YW5jZShvcmcuYXBhY2hlLnhtbC51dGlscy5YTUxTdHJpbmdGYWN0b3J5KSI+PCEtLSAtLT48L0E+PEgzPg0KbmV3SW5zdGFuY2U8L0gzPg0KPFBSRT4NCnB1YmxpYyBzdGF0aWMgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTU1hbmFnZXIuaHRtbCI+RFRNTWFuYWdlcjwvQT4gPEI+bmV3SW5zdGFuY2U8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL3V0aWxzL1hNTFN0cmluZ0ZhY3RvcnkuaHRtbCI+WE1MU3RyaW5nRmFjdG9yeTwvQT4mbmJzcDt4c2YpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93cyA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNQ29uZmlndXJhdGlvbkV4Y2VwdGlvbi5odG1sIj5EVE1Db25maWd1cmF0aW9uRXhjZXB0aW9uPC9BPjwvUFJFPg0KPERMPg0KPEREPk9idGFpbiBhIG5ldyBpbnN0YW5jZSBvZiBhIDxjb2RlPkRUTU1hbmFnZXI8L2NvZGU+LgogVGhpcyBzdGF0aWMgbWV0aG9kIGNyZWF0ZXMgYSBuZXcgZmFjdG9yeSBpbnN0YW5jZQogVGhpcyBtZXRob2QgdXNlcyB0aGUgZm9sbG93aW5nIG9yZGVyZWQgbG9va3VwIHByb2NlZHVyZSB0byBkZXRlcm1pbmUKIHRoZSA8Y29kZT5EVE1NYW5hZ2VyPC9jb2RlPiBpbXBsZW1lbnRhdGlvbiBjbGFzcyB0bwogbG9hZDoKIDx1bD4KIDxsaT4KIFVzZSB0aGUgPGNvZGU+b3JnLmFwYWNoZS54bWwuZHRtLkRUTU1hbmFnZXI8L2NvZGU+IHN5c3RlbQogcHJvcGVydHkuCiA8L2xpPgogPGxpPgogVXNlIHRoZSBKQVZBX0hPTUUodGhlIHBhcmVudCBkaXJlY3Rvcnkgd2hlcmUgamRrIGlzCiBpbnN0YWxsZWQpL2xpYi94YWxhbi5wcm9wZXJ0aWVzIGZvciBhIHByb3BlcnR5IGZpbGUgdGhhdCBjb250YWlucyB0aGUKIG5hbWUgb2YgdGhlIGltcGxlbWVudGF0aW9uIGNsYXNzIGtleWVkIG9uIHRoZSBzYW1lIHZhbHVlIGFzIHRoZQogc3lzdGVtIHByb3BlcnR5IGRlZmluZWQgYWJvdmUuCiA8L2xpPgogPGxpPgogVXNlIHRoZSBTZXJ2aWNlcyBBUEkgKGFzIGRldGFpbGVkIGluIHRoZSBKQVIgc3BlY2lmaWNhdGlvbiksIGlmCiBhdmFpbGFibGUsIHRvIGRldGVybWluZSB0aGUgY2xhc3NuYW1lLiBUaGUgU2VydmljZXMgQVBJIHdpbGwgbG9vawogZm9yIGEgY2xhc3NuYW1lIGluIHRoZSBmaWxlCiA8Y29kZT5NRVRBLUlORi9zZXJ2aWNlcy9vcmcuYXBhY2hlLnhtbC5kdG0uRFRNTWFuYWdlcjwvY29kZT4KIGluIGphcnMgYXZhaWxhYmxlIHRvIHRoZSBydW50aW1lLgogPC9saT4KIDxsaT4KIFVzZSB0aGUgZGVmYXVsdCA8Y29kZT5EVE1NYW5hZ2VyPC9jb2RlPiBjbGFzc25hbWUsIHdoaWNoIGlzCiA8Y29kZT5vcmcuYXBhY2hlLnhtbC5kdG0ucmVmLkRUTU1hbmFnZXJEZWZhdWx0PC9jb2RlPi4KIDwvbGk+CiA8L3VsPgoKIE9uY2UgYW4gYXBwbGljYXRpb24gaGFzIG9idGFpbmVkIGEgcmVmZXJlbmNlIHRvIGEgPGNvZGU+CiBEVE1NYW5hZ2VyPC9jb2RlPiBpdCBjYW4gdXNlIHRoZSBmYWN0b3J5IHRvIGNvbmZpZ3VyZQogYW5kIG9idGFpbiBwYXJzZXIgaW5zdGFuY2VzLjxERD48REw+DQo8RFQ+PEI+UmV0dXJuczo8L0I+PEREPm5ldyBEVE1NYW5hZ2VyIGluc3RhbmNlLCBuZXZlciBudWxsLjxEVD48Qj5UaHJvd3M6PC9CPjxERD48QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNQ29uZmlndXJhdGlvbkV4Y2VwdGlvbi5odG1sIj5EVE1Db25maWd1cmF0aW9uRXhjZXB0aW9uPC9BPiAtIGlmIHRoZSBpbXBsZW1lbnRhdGlvbiBpcyBub3QgYXZhaWxhYmxlIG9yIGNhbm5vdCBiZSBpbnN0YW50aWF0ZWQuPC9ETD4NCjwvREQ+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJnZXREVE0oamF2YXgueG1sLnRyYW5zZm9ybS5Tb3VyY2UsIGJvb2xlYW4sIG9yZy5hcGFjaGUueG1sLmR0bS5EVE1XU0ZpbHRlciwgYm9vbGVhbiwgYm9vbGVhbikiPjwhLS0gLS0+PC9BPjxIMz4NCmdldERUTTwvSDM+DQo8UFJFPg0KcHVibGljIGFic3RyYWN0IDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE0uaHRtbCI+RFRNPC9BPiA8Qj5nZXREVE08L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL2phdmF4L3htbC90cmFuc2Zvcm0vU291cmNlLmh0bWwiPlNvdXJjZTwvQT4mbmJzcDtzb3VyY2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDt1bmlxdWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1XU0ZpbHRlci5odG1sIj5EVE1XU0ZpbHRlcjwvQT4mbmJzcDt3aGl0ZVNwYWNlRmlsdGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuJm5ic3A7aW5jcmVtZW50YWwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2xlYW4mbmJzcDtkb0luZGV4aW5nKTwvUFJFPg0KPERMPg0KPEREPkdldCBhbiBpbnN0YW5jZSBvZiBhIERUTSwgbG9hZGVkIHdpdGggdGhlIGNvbnRlbnQgZnJvbSB0aGUKIHNwZWNpZmllZCBzb3VyY2UuICBJZiB0aGUgdW5pcXVlIGZsYWcgaXMgdHJ1ZSwgYSBuZXcgaW5zdGFuY2Ugd2lsbAogYWx3YXlzIGJlIHJldHVybmVkLiAgT3RoZXJ3aXNlIGl0IGlzIHVwIHRvIHRoZSBEVE1NYW5hZ2VyIHRvIHJldHVybiBhCiBuZXcgaW5zdGFuY2Ugb3IgYW4gaW5zdGFuY2UgdGhhdCBpdCBhbHJlYWR5IGNyZWF0ZWQgYW5kIG1heSBiZSBiZWluZyB1c2VkCiBieSBzb21lb25lIGVsc2UuCiAKIChNb3JlIHBhcmFtZXRlcnMgbWF5IGV2ZW50dWFsbHkgbmVlZCB0byBiZSBhZGRlZCBmb3IgZXJyb3IgaGFuZGxpbmcKIGFuZCBlbnRpdHkgcmVzb2x1dGlvbiwgYW5kIHRvIGJldHRlciBjb250cm9sIHNlbGVjdGlvbiBvZiBpbXBsZW1lbnRhdGlvbnMuKTxERD48REw+DQo8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPnNvdXJjZTwvQ09ERT4gLSB0aGUgc3BlY2lmaWNhdGlvbiBvZiB0aGUgc291cmNlIG9iamVjdCwgd2hpY2ggbWF5IGJlIG51bGwsCiAgICAgICAgICAgICAgIGluIHdoaWNoIGNhc2UgaXQgaXMgYXNzdW1lZCB0aGF0IG5vZGUgY29uc3RydWN0aW9uIHdpbGwgdGFrZQogICAgICAgICAgICAgICBieSBzb21lIG90aGVyIG1lYW5zLjxERD48Q09ERT51bmlxdWU8L0NPREU+IC0gdHJ1ZSBpZiB0aGUgcmV0dXJuZWQgRFRNIG11c3QgYmUgdW5pcXVlLCBwcm9iYWJseSBiZWNhdXNlIGl0CiBpcyBnb2luZyB0byBiZSBtdXRhdGVkLjxERD48Q09ERT53aGl0ZVNwYWNlRmlsdGVyPC9DT0RFPiAtIEVuYWJsZXMgZmlsdGVyaW5nIG9mIHdoaXRlc3BhY2Ugbm9kZXMsIGFuZCBtYXkKICAgICAgICAgICAgICAgICAgICAgICAgIGJlIG51bGwuPEREPjxDT0RFPmluY3JlbWVudGFsPC9DT0RFPiAtIHRydWUgaWYgdGhlIERUTSBzaG91bGQgYmUgYnVpbHQgaW5jcmVtZW50YWxseSwgaWYKICAgICAgICAgICAgICAgICAgICBwb3NzaWJsZS48REQ+PENPREU+ZG9JbmRleGluZzwvQ09ERT4gLSB0cnVlIGlmIHRoZSBjYWxsZXIgY29uc2lkZXJzIGl0IHdvcnRoIGl0IHRvIHVzZSAKICAgICAgICAgICAgICAgICAgIGluZGV4aW5nIHNjaGVtZXMuPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5vbi1udWxsIERUTSByZWZlcmVuY2UuPC9ETD4NCjwvREQ+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJnZXREVE0oaW50KSI+PCEtLSAtLT48L0E+PEgzPg0KZ2V0RFRNPC9IMz4NCjxQUkU+DQpwdWJsaWMgYWJzdHJhY3QgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTS5odG1sIj5EVE08L0E+IDxCPmdldERUTTwvQj4oaW50Jm5ic3A7bm9kZUhhbmRsZSk8L1BSRT4NCjxETD4NCjxERD5HZXQgdGhlIGluc3RhbmNlIG9mIERUTSB0aGF0ICJvd25zIiBhIG5vZGUgaGFuZGxlLjxERD48REw+DQo8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5vZGVIYW5kbGU8L0NPREU+IC0gdGhlIG5vZGVIYW5kbGUuPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5vbi1udWxsIERUTSByZWZlcmVuY2UuPC9ETD4NCjwvREQ+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJnZXREVE1IYW5kbGVGcm9tTm9kZShvcmcudzNjLmRvbS5Ob2RlKSI+PCEtLSAtLT48L0E+PEgzPg0KZ2V0RFRNSGFuZGxlRnJvbU5vZGU8L0gzPg0KPFBSRT4NCnB1YmxpYyBhYnN0cmFjdCBpbnQgPEI+Z2V0RFRNSGFuZGxlRnJvbU5vZGU8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy93M2MvZG9tL05vZGUuaHRtbCI+Tm9kZTwvQT4mbmJzcDtub2RlKTwvUFJFPg0KPERMPg0KPEREPkdpdmVuIGEgVzNDIERPTSBub2RlLCB0cnkgYW5kIHJldHVybiBhIERUTSBoYW5kbGUuCiBOb3RlOiBjYWxsaW5nIHRoaXMgbWF5IGJlIG5vbi1vcHRpbWFsLjxERD48REw+DQo8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPm5vZGU8L0NPREU+IC0gTm9uLW51bGwgcmVmZXJlbmNlIHRvIGEgRE9NIG5vZGUuPERUPjxCPlJldHVybnM6PC9CPjxERD5hIHZhbGlkIERUTSBoYW5kbGUuPC9ETD4NCjwvREQ+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJjcmVhdGVEb2N1bWVudEZyYWdtZW50KCkiPjwhLS0gLS0+PC9BPjxIMz4NCmNyZWF0ZURvY3VtZW50RnJhZ21lbnQ8L0gzPg0KPFBSRT4NCnB1YmxpYyBhYnN0cmFjdCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNLmh0bWwiPkRUTTwvQT4gPEI+Y3JlYXRlRG9jdW1lbnRGcmFnbWVudDwvQj4oKTwvUFJFPg0KPERMPg0KPEREPkNyZWF0ZXMgYSBEVE0gcmVwcmVzZW50aW5nIGFuIGVtcHR5IDxjb2RlPkRvY3VtZW50RnJhZ21lbnQ8L2NvZGU+IG9iamVjdC48REQ+PERMPg0KPERUPjxCPlJldHVybnM6PC9CPjxERD5hIG5vbi1udWxsIERUTSByZWZlcmVuY2UuPC9ETD4NCjwvREQ+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJyZWxlYXNlKG9yZy5hcGFjaGUueG1sLmR0bS5EVE0sIGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+DQpyZWxlYXNlPC9IMz4NCjxQUkU+DQpwdWJsaWMgYWJzdHJhY3QgYm9vbGVhbiA8Qj5yZWxlYXNlPC9CPig8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNLmh0bWwiPkRUTTwvQT4mbmJzcDtkdG0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO3Nob3VsZEhhcmREZWxldGUpPC9QUkU+DQo8REw+DQo8REQ+UmVsZWFzZSBhIERUTSBlaXRoZXIgdG8gYSBscnUgcG9vbCwgb3IgY29tcGxldGVseSByZW1vdmUgcmVmZXJlbmNlLgogRFRNcyB3aXRob3V0IHN5c3RlbSBJRHMgYXJlIGFsd2F5cyBoYXJkIGRlbGV0ZWQuCiBTdGF0ZTogZXhwZXJpbWVudGFsLjxERD48REw+DQo8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPmR0bTwvQ09ERT4gLSBUaGUgRFRNIHRvIGJlIHJlbGVhc2VkLjxERD48Q09ERT5zaG91bGRIYXJkRGVsZXRlPC9DT0RFPiAtIFRydWUgaWYgdGhlIERUTSBzaG91bGQgYmUgcmVtb3ZlZCBubyBtYXR0ZXIgd2hhdC48RFQ+PEI+UmV0dXJuczo8L0I+PEREPnRydWUgaWYgdGhlIERUTSB3YXMgcmVtb3ZlZCwgZmFsc2UgaWYgaXQgd2FzIHB1dCBiYWNrIGluIGEgbHJ1IHBvb2wuPC9ETD4NCjwvREQ+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJjcmVhdGVEVE1JdGVyYXRvcihqYXZhLmxhbmcuT2JqZWN0LCBpbnQpIj48IS0tIC0tPjwvQT48SDM+DQpjcmVhdGVEVE1JdGVyYXRvcjwvSDM+DQo8UFJFPg0KcHVibGljIGFic3RyYWN0IDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1JdGVyYXRvci5odG1sIj5EVE1JdGVyYXRvcjwvQT4gPEI+Y3JlYXRlRFRNSXRlcmF0b3I8L0I+KGphdmEubGFuZy5PYmplY3QmbmJzcDt4cGF0aENvbXBpbGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50Jm5ic3A7cG9zKTwvUFJFPg0KPERMPg0KPEREPkNyZWF0ZSBhIG5ldyA8Y29kZT5EVE1JdGVyYXRvcjwvY29kZT4gYmFzZWQgb24gYW4gWFBhdGgKIDxhIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hwYXRoI05ULUxvY2F0aW9uUGF0aD5Mb2NhdGlvblBhdGg8L2E+IG9yCiBhIDxhIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hwYXRoI05ULVVuaW9uRXhwciI+VW5pb25FeHByPC9hPi48REQ+PERMPg0KPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT54cGF0aENvbXBpbGVyPC9DT0RFPiAtID8/PyBTb21laG93IHdlIG5lZWQgdG8gcGFzcyBpbiBhIHN1YnBhcnQgb2YgdGhlCiBleHByZXNzaW9uLiAgSSBoYXRlIHRvIGRvIHRoaXMgd2l0aCBzdHJpbmdzLCBzaW5jZSB0aGUgbGFyZ2VyIGV4cHJlc3Npb24KIGhhcyBhbHJlYWR5IGJlZW4gcGFyc2VkLjxERD48Q09ERT5wb3M8L0NPREU+IC0gVGhlIHBvc2l0aW9uIGluIHRoZSBleHByZXNzaW9uLjxEVD48Qj5SZXR1cm5zOjwvQj48REQ+VGhlIG5ld2x5IGNyZWF0ZWQgPGNvZGU+RFRNSXRlcmF0b3I8L2NvZGU+LjwvREw+DQo8L0REPg0KPC9ETD4NCjxIUj4NCg0KPEEgTkFNRT0iY3JlYXRlRFRNSXRlcmF0b3IoamF2YS5sYW5nLlN0cmluZywgb3JnLmFwYWNoZS54bWwudXRpbHMuUHJlZml4UmVzb2x2ZXIpIj48IS0tIC0tPjwvQT48SDM+DQpjcmVhdGVEVE1JdGVyYXRvcjwvSDM+DQo8UFJFPg0KcHVibGljIGFic3RyYWN0IDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1JdGVyYXRvci5odG1sIj5EVE1JdGVyYXRvcjwvQT4gPEI+Y3JlYXRlRFRNSXRlcmF0b3I8L0I+KGphdmEubGFuZy5TdHJpbmcmbmJzcDt4cGF0aFN0cmluZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL3V0aWxzL1ByZWZpeFJlc29sdmVyLmh0bWwiPlByZWZpeFJlc29sdmVyPC9BPiZuYnNwO3ByZXNvbHZlcik8L1BSRT4NCjxETD4NCjxERD5DcmVhdGUgYSBuZXcgPGNvZGU+RFRNSXRlcmF0b3I8L2NvZGU+IGJhc2VkIG9uIGFuIFhQYXRoCiA8YSBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi94cGF0aCNOVC1Mb2NhdGlvblBhdGg+TG9jYXRpb25QYXRoPC9hPiBvcgogYSA8YSBocmVmPSJodHRwOi8vd3d3LnczLm9yZy9UUi94cGF0aCNOVC1VbmlvbkV4cHIiPlVuaW9uRXhwcjwvYT4uPEREPjxETD4NCjxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+eHBhdGhTdHJpbmc8L0NPREU+IC0gTXVzdCBiZSBhIHZhbGlkIHN0cmluZyBleHByZXNzaW5nIGEKIDxhIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hwYXRoI05ULUxvY2F0aW9uUGF0aD5Mb2NhdGlvblBhdGg8L2E+IG9yCiBhIDxhIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL3hwYXRoI05ULVVuaW9uRXhwciI+VW5pb25FeHByPC9hPi48REQ+PENPREU+cHJlc29sdmVyPC9DT0RFPiAtIEFuIG9iamVjdCB0aGF0IGNhbiByZXNvbHZlIHByZWZpeGVzIHRvIG5hbWVzcGFjZSBVUkxzLjxEVD48Qj5SZXR1cm5zOjwvQj48REQ+VGhlIG5ld2x5IGNyZWF0ZWQgPGNvZGU+RFRNSXRlcmF0b3I8L2NvZGU+LjwvREw+DQo8L0REPg0KPC9ETD4NCjxIUj4NCg0KPEEgTkFNRT0iY3JlYXRlRFRNSXRlcmF0b3IoaW50LCBvcmcuYXBhY2hlLnhtbC5kdG0uRFRNRmlsdGVyLCBib29sZWFuKSI+PCEtLSAtLT48L0E+PEgzPg0KY3JlYXRlRFRNSXRlcmF0b3I8L0gzPg0KPFBSRT4NCnB1YmxpYyBhYnN0cmFjdCA8QSBIUkVGPSIuLi8uLi8uLi8uLi9vcmcvYXBhY2hlL3htbC9kdG0vRFRNSXRlcmF0b3IuaHRtbCI+RFRNSXRlcmF0b3I8L0E+IDxCPmNyZWF0ZURUTUl0ZXJhdG9yPC9CPihpbnQmbmJzcDt3aGF0VG9TaG93LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTUZpbHRlci5odG1sIj5EVE1GaWx0ZXI8L0E+Jm5ic3A7ZmlsdGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiZuYnNwO2VudGl0eVJlZmVyZW5jZUV4cGFuc2lvbik8L1BSRT4NCjxETD4NCjxERD5DcmVhdGUgYSBuZXcgPGNvZGU+RFRNSXRlcmF0b3I8L2NvZGU+IGJhc2VkIG9ubHkgb24gYSB3aGF0VG9TaG93CiBhbmQgYSBEVE1GaWx0ZXIuICBUaGUgdHJhdmVyc2FsIHNlbWFudGljcyBhcmUgZGVmaW5lZCBhcyB0aGUKIGRlc2NlbmRhbnQgYWNjZXNzLgogPHA+CiBOb3RlIHRoYXQgRFRNSXRlcmF0b3JzIG1heSBub3QgYmUgYW4gZXhhY3QgbWF0Y2ggdG8gRE9NCiBOb2RlSXRlcmF0b3JzLiBUaGV5IGFyZSBpbml0aWFsaXplZCBhbmQgdXNlZCBpbiBtdWNoIHRoZSBzYW1lIHdheQogYXMgYSBOb2RlSXRlcmF0b3IsIGJ1dCB0aGVpciByZXNwb25zZSB0byBkb2N1bWVudCBtdXRhdGlvbiBpcyBub3QKIGN1cnJlbnRseSBkZWZpbmVkLjxERD48REw+DQo8RFQ+PEI+UGFyYW1ldGVyczo8L0I+PEREPjxDT0RFPndoYXRUb1Nob3c8L0NPREU+IC0gVGhpcyBmbGFnIHNwZWNpZmllcyB3aGljaCBub2RlIHR5cGVzIG1heSBhcHBlYXIgaW4KICAgdGhlIGxvZ2ljYWwgdmlldyBvZiB0aGUgdHJlZSBwcmVzZW50ZWQgYnkgdGhlIGl0ZXJhdG9yLiBTZWUgdGhlCiAgIGRlc2NyaXB0aW9uIG9mIDxjb2RlPk5vZGVGaWx0ZXI8L2NvZGU+IGZvciB0aGUgc2V0IG9mIHBvc3NpYmxlCiAgIDxjb2RlPlNIT1dfPC9jb2RlPiB2YWx1ZXMuVGhlc2UgZmxhZ3MgY2FuIGJlIGNvbWJpbmVkIHVzaW5nCiAgIDxjb2RlPk9SPC9jb2RlPi48REQ+PENPREU+ZmlsdGVyPC9DT0RFPiAtIFRoZSA8Y29kZT5Ob2RlRmlsdGVyPC9jb2RlPiB0byBiZSB1c2VkIHdpdGggdGhpcwogICA8Y29kZT5EVE1GaWx0ZXI8L2NvZGU+LCBvciA8Y29kZT5udWxsPC9jb2RlPiB0byBpbmRpY2F0ZSBubyBmaWx0ZXIuPEREPjxDT0RFPmVudGl0eVJlZmVyZW5jZUV4cGFuc2lvbjwvQ09ERT4gLSBUaGUgdmFsdWUgb2YgdGhpcyBmbGFnIGRldGVybWluZXMKICAgd2hldGhlciBlbnRpdHkgcmVmZXJlbmNlIG5vZGVzIGFyZSBleHBhbmRlZC48RFQ+PEI+UmV0dXJuczo8L0I+PEREPlRoZSBuZXdseSBjcmVhdGVkIDxjb2RlPkRUTUl0ZXJhdG9yPC9jb2RlPi48L0RMPg0KPC9ERD4NCjwvREw+DQo8SFI+DQoNCjxBIE5BTUU9ImNyZWF0ZURUTUl0ZXJhdG9yKGludCkiPjwhLS0gLS0+PC9BPjxIMz4NCmNyZWF0ZURUTUl0ZXJhdG9yPC9IMz4NCjxQUkU+DQpwdWJsaWMgYWJzdHJhY3QgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3JnL2FwYWNoZS94bWwvZHRtL0RUTUl0ZXJhdG9yLmh0bWwiPkRUTUl0ZXJhdG9yPC9BPiA8Qj5jcmVhdGVEVE1JdGVyYXRvcjwvQj4oaW50Jm5ic3A7bm9kZSk8L1BSRT4NCjxETD4NCjxERD5DcmVhdGUgYSBuZXcgPGNvZGU+RFRNSXRlcmF0b3I8L2NvZGU+IHRoYXQgaG9sZHMgZXhhY3RseSBvbmUgbm9kZS48REQ+PERMPg0KPERUPjxCPlBhcmFtZXRlcnM6PC9CPjxERD48Q09ERT5ub2RlPC9DT0RFPiAtIFRoZSBub2RlIGhhbmRsZSB0aGF0IHRoZSBEVE1JdGVyYXRvciB3aWxsIGl0ZXJhdGUgdG8uPERUPjxCPlJldHVybnM6PC9CPjxERD5UaGUgbmV3bHkgY3JlYXRlZCA8Y29kZT5EVE1JdGVyYXRvcjwvY29kZT4uPC9ETD4NCjwvREQ+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJnZXRJbmNyZW1lbnRhbCgpIj48IS0tIC0tPjwvQT48SDM+DQpnZXRJbmNyZW1lbnRhbDwvSDM+DQo8UFJFPg0KcHVibGljIGJvb2xlYW4gPEI+Z2V0SW5jcmVtZW50YWw8L0I+KCk8L1BSRT4NCjxETD4NCjxERD5HZXQgYSBmbGFnIGluZGljYXRpbmcgd2hldGhlciBhbiBpbmNyZW1lbnRhbCB0cmFuc2Zvcm0gaXMgZGVzaXJlZDxERD48REw+DQo8RFQ+PEI+UmV0dXJuczo8L0I+PEREPmluY3JlbWVudGFsIGJvb2xlYW4uPC9ETD4NCjwvREQ+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJzZXRJbmNyZW1lbnRhbChib29sZWFuKSI+PCEtLSAtLT48L0E+PEgzPg0Kc2V0SW5jcmVtZW50YWw8L0gzPg0KPFBSRT4NCnB1YmxpYyB2b2lkIDxCPnNldEluY3JlbWVudGFsPC9CPihib29sZWFuJm5ic3A7aW5jcmVtZW50YWwpPC9QUkU+DQo8REw+DQo8REQ+U2V0IGEgZmxhZyBpbmRpY2F0aW5nIHdoZXRoZXIgYW4gaW5jcmVtZW50YWwgdHJhbnNmb3JtIGlzIGRlc2lyZWQKIFRoaXMgZmxhZyBzaG91bGQgaGF2ZSB0aGUgc2FtZSB2YWx1ZSBhcyB0aGUgRkVBVFVSRV9JTkNSRU1FTlRBTCBmZWF0dXJlCiB3aGljaCBpcyBzZXQgYnkgdGhlIFRyYW5zZm9ybWVyRmFjdG9yeS5zZXRBdHRyaWJ1dCgpIG1ldGhvZCBiZWZvcmUgYQogRFRNTWFuYWdlciBpcyBjcmVhdGVkPEREPjxETD4NCjxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+aW5jcmVtZW50YWw8L0NPREU+IC0gYm9vbGVhbiB0byB1c2UgdG8gc2V0IG1faW5jcmVtZW50YWwuPC9ETD4NCjwvREQ+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJnZXRTb3VyY2VfbG9jYXRpb24oKSI+PCEtLSAtLT48L0E+PEgzPg0KZ2V0U291cmNlX2xvY2F0aW9uPC9IMz4NCjxQUkU+DQpwdWJsaWMgYm9vbGVhbiA8Qj5nZXRTb3VyY2VfbG9jYXRpb248L0I+KCk8L1BSRT4NCjxETD4NCjxERD5HZXQgYSBmbGFnIGluZGljYXRpbmcgd2hldGhlciB0aGUgdHJhbnNmb3JtYXRpb24gcGhhc2Ugc2hvdWxkCiBrZWVwIHRyYWNrIG9mIGxpbmUgYW5kIGNvbHVtbiBudW1iZXJzIGZvciB0aGUgaW5wdXQgc291cmNlCiBkb2N1bWVudC48REQ+PERMPg0KPERUPjxCPlJldHVybnM6PC9CPjxERD5zb3VyY2UgbG9jYXRpb24gYm9vbGVhbjwvREw+DQo8L0REPg0KPC9ETD4NCjxIUj4NCg0KPEEgTkFNRT0ic2V0U291cmNlX2xvY2F0aW9uKGJvb2xlYW4pIj48IS0tIC0tPjwvQT48SDM+DQpzZXRTb3VyY2VfbG9jYXRpb248L0gzPg0KPFBSRT4NCnB1YmxpYyB2b2lkIDxCPnNldFNvdXJjZV9sb2NhdGlvbjwvQj4oYm9vbGVhbiZuYnNwO3NvdXJjZUxvY2F0aW9uKTwvUFJFPg0KPERMPg0KPEREPlNldCBhIGZsYWcgaW5kaWNhdGluZyB3aGV0aGVyIHRoZSB0cmFuc2Zvcm1hdGlvbiBwaGFzZSBzaG91bGQKIGtlZXAgdHJhY2sgb2YgbGluZSBhbmQgY29sdW1uIG51bWJlcnMgZm9yIHRoZSBpbnB1dCBzb3VyY2UKIGRvY3VtZW50LgogVGhpcyBmbGFnIHNob3VsZCBoYXZlIHRoZSBzYW1lIHZhbHVlIGFzIHRoZSBGRUFUVVJFX1NPVVJDRV9MT0NBVElPTiBmZWF0dXJlCiB3aGljaCBpcyBzZXQgYnkgdGhlIFRyYW5zZm9ybWVyRmFjdG9yeS5zZXRBdHRyaWJ1dCgpIG1ldGhvZCBiZWZvcmUgYQogRFRNTWFuYWdlciBpcyBjcmVhdGVkPEREPjxETD4NCjxEVD48Qj5QYXJhbWV0ZXJzOjwvQj48REQ+PENPREU+c291cmNlTG9jYXRpb248L0NPREU+IC0gYm9vbGVhbiB0byB1c2UgdG8gc2V0IG1fc291cmNlX2xvY2F0aW9uPC9ETD4NCjwvREQ+DQo8L0RMPg0KPEhSPg0KDQo8QSBOQU1FPSJnZXREVE1JZGVudGl0eShvcmcuYXBhY2hlLnhtbC5kdG0uRFRNKSI+PCEtLSAtLT48L0E+PEgzPg0KZ2V0RFRNSWRlbnRpdHk8L0gzPg0KPFBSRT4NCnB1YmxpYyBhYnN0cmFjdCBpbnQgPEI+Z2V0RFRNSWRlbnRpdHk8L0I+KDxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE0uaHRtbCI+RFRNPC9BPiZuYnNwO2R0bSk8L1BSRT4NCjxETD4NCjxERD4lVEJEJSBEb2MKCiBORUVEU0RPQyBAcGFyYW0gZHRtCgogTkVFRFNET0MgKCRvYmplY3ROYW1lJCkgQHJldHVybjwvREw+DQo8SFI+DQoNCjxBIE5BTUU9ImdldERUTUlkZW50aXR5TWFzaygpIj48IS0tIC0tPjwvQT48SDM+DQpnZXREVE1JZGVudGl0eU1hc2s8L0gzPg0KPFBSRT4NCnB1YmxpYyBpbnQgPEI+Z2V0RFRNSWRlbnRpdHlNYXNrPC9CPigpPC9QUkU+DQo8REw+DQo8REQ+JVRCRCUgRG9jCgogTkVFRFNET0MgKCRvYmplY3ROYW1lJCkgQHJldHVybjwvREw+DQo8SFI+DQoNCjxBIE5BTUU9ImdldE5vZGVJZGVudGl0eU1hc2soKSI+PCEtLSAtLT48L0E+PEgzPg0KZ2V0Tm9kZUlkZW50aXR5TWFzazwvSDM+DQo8UFJFPg0KcHVibGljIGludCA8Qj5nZXROb2RlSWRlbnRpdHlNYXNrPC9CPigpPC9QUkU+DQo8REw+DQo8REQ+JVRCRCUgRG9jCgogTkVFRFNET0MgKCRvYmplY3ROYW1lJCkgQHJldHVybjwvREw+DQo8IS0tID09PT09PT09PSBFTkQgT0YgQ0xBU1MgREFUQSA9PT09PT09PT0gLS0+DQo8SFI+DQoNCjwhLS0gPT09PT09PT09PSBTVEFSVCBPRiBOQVZCQVIgPT09PT09PT09PSAtLT4NCjxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgo8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIj4NCjxUUj4NCjxURCBDT0xTUEFOPTIgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4NCjxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgo8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiPg0KICA8VFIgQUxJR049ImNlbnRlciIgVkFMSUdOPSJ0b3AiPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vb3ZlcnZpZXctc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPk92ZXJ2aWV3PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4NCiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2Utc3VtbWFyeS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlBhY2thZ2U8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5DbGFzczwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4NCiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImNsYXNzLXVzZS9EVE1NYW5hZ2VyLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+VXNlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4NCiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9InBhY2thZ2UtdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPg0KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9pbmRleC1hbGwuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5JbmRleDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+DQogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSIuLi8uLi8uLi8uLi9oZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPg0KICA8L1RSPg0KPC9UQUJMRT4NCjwvVEQ+DQo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4NCjwvRU0+DQo8L1REPg0KPC9UUj4NCg0KPFRSPg0KPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4NCiZuYnNwOzxBIEhSRUY9Ii4uLy4uLy4uLy4uL29yZy9hcGFjaGUveG1sL2R0bS9EVE1BeGlzVHJhdmVyc2VyLmh0bWwiPjxCPlBSRVYgQ0xBU1M8L0I+PC9BPiZuYnNwOw0KJm5ic3A7TkVYVCBDTEFTUzwvRk9OVD48L1REPg0KPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4NCiAgPEEgSFJFRj0iLi4vLi4vLi4vLi4vaW5kZXguaHRtbCIgVEFSR0VUPSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7DQombmJzcDs8QSBIUkVGPSJEVE1NYW5hZ2VyLmh0bWwiIFRBUkdFVD0iX3RvcCI+PEI+Tk8gRlJBTUVTPC9CPjwvQT48L0ZPTlQ+PC9URD4NCjwvVFI+DQo8VFI+DQo8VEQgVkFMSUdOPSJ0b3AiIENMQVNTPSJOYXZCYXJDZWxsMyI+PEZPTlQgU0laRT0iLTIiPg0KICBTVU1NQVJZOiAmbmJzcDtJTk5FUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjZmllbGRfc3VtbWFyeSI+RklFTEQ8L0E+Jm5ic3A7fCZuYnNwO0NPTlNUUiZuYnNwO3wmbmJzcDs8QSBIUkVGPSIjbWV0aG9kX3N1bW1hcnkiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4NCjxURCBWQUxJR049InRvcCIgQ0xBU1M9Ik5hdkJhckNlbGwzIj48Rk9OVCBTSVpFPSItMiI+DQpERVRBSUw6ICZuYnNwOzxBIEhSRUY9IiNmaWVsZF9kZXRhaWwiPkZJRUxEPC9BPiZuYnNwO3wmbmJzcDtDT05TVFImbmJzcDt8Jm5ic3A7PEEgSFJFRj0iI21ldGhvZF9kZXRhaWwiPk1FVEhPRDwvQT48L0ZPTlQ+PC9URD4NCjwvVFI+DQo8L1RBQkxFPg0KPCEtLSA9PT09PT09PT09PSBFTkQgT0YgTkFWQkFSID09PT09PT09PT09IC0tPg0KDQo8SFI+DQpDb3B5cmlnaHQgqSAyMDA2IEFwYWNoZSBYTUwgUHJvamVjdC4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4NCjwvQk9EWT4NCjwvSFRNTD4NCg==