PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9uYWwvL0VOIiJodHRwOi8vd3d3LnczLm9yZy9UUi9SRUMtaHRtbDQwL2xvb3NlLmR0ZCI+CjwhLS1OZXdQYWdlLS0+CjxIVE1MPgo8SEVBRD4KPCEtLSBHZW5lcmF0ZWQgYnkgamF2YWRvYyBvbiBGcmkgQXVnIDIyIDAzOjQzOjUyIEVEVCAyMDAzIC0tPgo8VElUTEU+Ck92ZXJ2aWV3IChBcGFjaGUgU3RydXRzIEFQSSBEb2N1bWVudGF0aW9uKQo8L1RJVExFPgo8TUVUQSBOQU1FPSJrZXl3b3JkcyIgQ09OVEVOVD0iT3ZlcnZpZXcsPGgxPkFwYWNoZSBTdHJ1dHMgRnJhbWV3b3JrIChWZXJzaW9uIDEuMSk8L2gxPiI+CjxMSU5LIFJFTCA9InN0eWxlc2hlZXQiIFRZUEU9InRleHQvY3NzIiBIUkVGPSJzdHlsZXNoZWV0LmNzcyIgVElUTEU9IlN0eWxlIj4KPC9IRUFEPgo8U0NSSVBUPgpmdW5jdGlvbiBhc2QoKQp7CnBhcmVudC5kb2N1bWVudC50aXRsZT0iT3ZlcnZpZXcgKEFwYWNoZSBTdHJ1dHMgQVBJIERvY3VtZW50YXRpb24pIjsKfQo8L1NDUklQVD4KPEJPRFkgQkdDT0xPUj0id2hpdGUiIG9ubG9hZD0iYXNkKCk7Ij4KCjwhLS0gPT09PT09PT09PSBTVEFSVCBPRiBOQVZCQVIgPT09PT09PT09PSAtLT4KPEEgTkFNRT0ibmF2YmFyX3RvcCI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjAiIFdJRFRIPSIxMDAlIiBDRUxMUEFERElORz0iMSIgQ0VMTFNQQUNJTkc9IjAiPgo8VFI+CjxURCBDT0xTUEFOPTMgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4KPEEgTkFNRT0ibmF2YmFyX3RvcF9maXJzdHJvdyI+PCEtLSAtLT48L0E+CjxUQUJMRSBCT1JERVI9IjAiIENFTExQQURESU5HPSIwIiBDRUxMU1BBQ0lORz0iMyI+CiAgPFRSIEFMSUdOPSJjZW50ZXIiIFZBTElHTj0idG9wIj4KICA8VEQgQkdDT0xPUj0iI0ZGRkZGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxUmV2Ij4gJm5ic3A7PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxUmV2Ij48Qj5PdmVydmlldzwvQj48L0ZPTlQ+Jm5ic3A7PC9URD4KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5QYWNrYWdlPC9GT05UPiZuYnNwOzwvVEQ+CiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+Q2xhc3M8L0ZPTlQ+Jm5ic3A7PC9URD4KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj5Vc2U8L0ZPTlQ+Jm5ic3A7PC9URD4KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0ib3ZlcnZpZXctdHJlZS5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPlRyZWU8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJkZXByZWNhdGVkLWxpc3QuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5EZXByZWNhdGVkPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iaW5kZXgtYWxsLmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+SW5kZXg8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8QSBIUkVGPSJoZWxwLWRvYy5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkhlbHA8L0I+PC9GT05UPjwvQT4mbmJzcDs8L1REPgogIDwvVFI+CjwvVEFCTEU+CjwvVEQ+CjxURCBBTElHTj0icmlnaHQiIFZBTElHTj0idG9wIiBST1dTUEFOPTM+PEVNPgo8L0VNPgo8L1REPgo8L1RSPgoKPFRSPgo8VEQgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJOYXZCYXJDZWxsMiI+PEZPTlQgU0laRT0iLTIiPgombmJzcDtQUkVWJm5ic3A7CiZuYnNwO05FWFQ8L0ZPTlQ+PC9URD4KPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KICA8QSBIUkVGPSJpbmRleC5odG1sIiBUQVJHRVQ9Il90b3AiPjxCPkZSQU1FUzwvQj48L0E+ICAmbmJzcDsKJm5ic3A7PEEgSFJFRj0ib3ZlcnZpZXctc3VtbWFyeS5odG1sIiBUQVJHRVQ9Il90b3AiPjxCPk5PIEZSQU1FUzwvQj48L0E+ICAmbmJzcDsKJm5ic3A7CjxTQ1JJUFQ+CiAgPCEtLQogIGlmKHdpbmRvdz09dG9wKSB7CiAgICBkb2N1bWVudC53cml0ZWxuKCc8QSBIUkVGPSJhbGxjbGFzc2VzLW5vZnJhbWUuaHRtbCIgVEFSR0VUPSIiPjxCPkFsbCBDbGFzc2VzPC9CPjwvQT4nKTsKICB9CiAgLy8tLT4KPC9TQ1JJUFQ+CjxOT1NDUklQVD4KPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiIFRBUkdFVD0iIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+CjwvTk9TQ1JJUFQ+CjwvRk9OVD48L1REPgo8L1RSPgo8L1RBQkxFPgo8IS0tID09PT09PT09PT09IEVORCBPRiBOQVZCQVIgPT09PT09PT09PT0gLS0+Cgo8SFI+CjxDRU5URVI+CjxIMj4KPGgxPkFwYWNoZSBTdHJ1dHMgRnJhbWV3b3JrIChWZXJzaW9uIDEuMSk8L2gxPjwvSDI+CjwvQ0VOVEVSPgoKPFRBQkxFIEJPUkRFUj0iMSIgQ0VMTFBBRERJTkc9IjMiIENFTExTUEFDSU5HPSIwIiBXSURUSD0iMTAwJSI+CjxUUiBCR0NPTE9SPSIjQ0NDQ0ZGIiBDTEFTUz0iVGFibGVIZWFkaW5nQ29sb3IiPgo8VEQgQ09MU1BBTj0yPjxGT05UIFNJWkU9IisyIj4KPEI+UGFja2FnZXM8L0I+PC9GT05UPjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2FwYWNoZS9zdHJ1dHMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5hcGFjaGUuc3RydXRzPC9BPjwvQj48L1REPgo8VEQ+Jm5ic3A7PC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvYXBhY2hlL3N0cnV0cy9hY3Rpb24vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5hcGFjaGUuc3RydXRzLmFjdGlvbjwvQT48L0I+PC9URD4KPFREPiBUaGUgYWN0aW9uIHBhY2thZ2UgaXMgdGhlIGNvcmUgb2YgdGhlIHN0cnV0cyBmcmFtZXdvcmssCiAgICBwcm92aWRpbmcgdGhlICJDb250cm9sbGVyIiBhc3BlY3Qgb2YgYSBNVkMgbW9kZWwuPC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvYXBhY2hlL3N0cnV0cy9hY3Rpb25zL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuYXBhY2hlLnN0cnV0cy5hY3Rpb25zPC9BPjwvQj48L1REPgo8VEQ+IFRoZSBhY3Rpb25zIHBhY2thZ2UgcHJvdmlkZXMgc3BlY2lhbCBhZGFwdGVycyBiZXR3ZWVuIHRoZSBpbmNvbWluZyAgSFRUUAogcmVxdWVzdCBhbmQgdGhlIGNvcnJlc3BvbmRpbmcgYnVzaW5lc3MgbG9naWMuPC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvYXBhY2hlL3N0cnV0cy9jb25maWcvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5hcGFjaGUuc3RydXRzLmNvbmZpZzwvQT48L0I+PC9URD4KPFREPlRoZSAiY29uZmlnIiBwYWNrYWdlIGNvbnRhaW5zIGNvbmZpZ3VyYXRpb24gb2JqZWN0cyB0aGF0IGNvcnJlc3BvbmQgdG8KZWxlbWVudHMgdGhhdCBtYXkgYmUgc3BlY2lmaWVkIGluIHRoZSA8Y29kZT5zdHJ1dHMtY29uZmlnLnhtbDwvY29kZT4KbW9kdWxlIGNvbmZpZ3VyYXRpb24gZmlsZS48L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREIFdJRFRIPSIyMCUiPjxCPjxBIEhSRUY9Im9yZy9hcGFjaGUvc3RydXRzL2NvbmZpZy9pbXBsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuYXBhY2hlLnN0cnV0cy5jb25maWcuaW1wbDwvQT48L0I+PC9URD4KPFREPiZuYnNwOzwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2FwYWNoZS9zdHJ1dHMvcGx1Z2lucy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmFwYWNoZS5zdHJ1dHMucGx1Z2luczwvQT48L0I+PC9URD4KPFREPiZuYnNwOzwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2FwYWNoZS9zdHJ1dHMvdGFnbGliL2JlYW4vcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5hcGFjaGUuc3RydXRzLnRhZ2xpYi5iZWFuPC9BPjwvQj48L1REPgo8VEQ+VGhlICJzdHJ1dHMtYmVhbiIgdGFnIGxpYnJhcnkgY29udGFpbnMgSlNQIGN1c3RvbSB0YWdzIHVzZWZ1bCBpbiBkZWZpbmluZwpuZXcgYmVhbnMgKGluIGFueSBkZXNpcmVkIHNjb3BlKSBmcm9tIGEgdmFyaWV0eSBvZiBwb3NzaWJsZSBzb3VyY2VzLCBhcyB3ZWxsCmFzIGEgdGFnIHRvIHJlbmRlciBhIHBhcnRpY3VsYXIgYmVhbiAob3IgYmVhbiBwcm9wZXJ0eSkgdG8gdGhlIG91dHB1dCByZXNwb25zZS48L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREIFdJRFRIPSIyMCUiPjxCPjxBIEhSRUY9Im9yZy9hcGFjaGUvc3RydXRzL3RhZ2xpYi9odG1sL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuYXBhY2hlLnN0cnV0cy50YWdsaWIuaHRtbDwvQT48L0I+PC9URD4KPFREPjxhIG5hbWU9ImRvYy5EZXNjcmlwdGlvbiI+VGhlICJzdHJ1dHMtaHRtbCIgdGFnIGxpYnJhcnk8L2E+CiAgY29udGFpbnMgSlNQIGN1c3RvbSB0YWdzIHVzZWZ1bCBpbiBjcmVhdGluZyBkeW5hbWljIEhUTUwgdXNlciBpbnRlcmZhY2VzLAppbmNsdWRpbmcgaW5wdXQgZm9ybXMuPC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvYXBhY2hlL3N0cnV0cy90YWdsaWIvbG9naWMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5hcGFjaGUuc3RydXRzLnRhZ2xpYi5sb2dpYzwvQT48L0I+PC9URD4KPFREPlRoZSAic3RydXRzLWxvZ2ljIiB0YWcgbGlicmFyeSBjb250YWlucyB0YWdzIHRoYXQgYXJlIHVzZWZ1bCBpbiBtYW5hZ2luZwpjb25kaXRpb25hbCBnZW5lcmF0aW9uIG9mIG91dHB1dCB0ZXh0LCBsb29waW5nIG92ZXIgb2JqZWN0IGNvbGxlY3Rpb25zCmZvciByZXBldGl0aXZlIGdlbmVyYXRpb24gb2Ygb3V0cHV0IHRleHQsIGFuZCBhcHBsaWNhdGlvbiBmbG93IG1hbmFnZW1lbnQuPC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvYXBhY2hlL3N0cnV0cy90YWdsaWIvbmVzdGVkL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuYXBhY2hlLnN0cnV0cy50YWdsaWIubmVzdGVkPC9BPjwvQj48L1REPgo8VEQ+TmVzdGVkIHRhZ3MgJmFtcDsgc3VwcG9ydGluZyBjbGFzc2VzIGV4dGVuZCB0aGUgYmFzZSBzdHJ1dHMgdGFncyB0bwphbGxvdyAgIHRoZW0gdG8gcmVsYXRlIHRvIGVhY2ggb3RoZXIgaW4gYSBuZXN0ZWQgbmF0dXJlLjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2FwYWNoZS9zdHJ1dHMvdGFnbGliL25lc3RlZC9iZWFuL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuYXBhY2hlLnN0cnV0cy50YWdsaWIubmVzdGVkLmJlYW48L0E+PC9CPjwvVEQ+CjxURD5UaGUgbmVzdGVkIGJlYW4gdGFncyBleHRlbmQgdGhlIDxjb2RlPm9yZy5hcGFjaGUuc3RydXRzLnRhZ2xpYi5iZWFuPC9jb2RlPgogICAgIHRhZ3MgdG8gYWxsb3cgdGhlbSB0byByZWxhdGUgdG8gZWFjaCBvdGhlciBpbiBhIG5lc3RlZCBuYXR1cmUuPC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvYXBhY2hlL3N0cnV0cy90YWdsaWIvbmVzdGVkL2h0bWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5hcGFjaGUuc3RydXRzLnRhZ2xpYi5uZXN0ZWQuaHRtbDwvQT48L0I+PC9URD4KPFREPlRoZSBuZXN0ZWQgaHRtbCB0YWdzIGV4dGVuZCB0aGUgPGNvZGU+b3JnLmFwYWNoZS5zdHJ1dHMudGFnbGliLmh0bWw8L2NvZGU+CiB0YWdzIHRvIGFsbG93ICAgdGhlbSB0byByZWxhdGUgdG8gZWFjaCBvdGhlciBpbiBhIG5lc3RlZCBuYXR1cmUuPC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvYXBhY2hlL3N0cnV0cy90YWdsaWIvbmVzdGVkL2xvZ2ljL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuYXBhY2hlLnN0cnV0cy50YWdsaWIubmVzdGVkLmxvZ2ljPC9BPjwvQj48L1REPgo8VEQ+VGhlIG5lc3RlZCBodG1sIHRhZ3MgZXh0ZW5kIHRoZSA8Y29kZT5vcmcuYXBhY2hlLnN0cnV0cy50YWdsaWIubG9naWM8L2NvZGU+CiAgIHRhZ3MgdG8gYWxsb3cgICB0aGVtIHRvIHJlbGF0ZSB0byBlYWNoIG90aGVyIGluIGEgbmVzdGVkIG5hdHVyZS48L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREIFdJRFRIPSIyMCUiPjxCPjxBIEhSRUY9Im9yZy9hcGFjaGUvc3RydXRzL3RhZ2xpYi90ZW1wbGF0ZS9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmFwYWNoZS5zdHJ1dHMudGFnbGliLnRlbXBsYXRlPC9BPjwvQj48L1REPgo8VEQ+CiAgIAk8Yj5Ob3RlOjwvYj4gQXMgb2YgU3RydXRzIDEuMSB0aGUgdGVtcGxhdGUgdGFnIGxpYnJhcnkgaXMgCiAgIAlkZXByZWNhdGVkIGluIGZhdm9yIG9mIFRpbGVzLjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2FwYWNoZS9zdHJ1dHMvdGFnbGliL3RlbXBsYXRlL3V0aWwvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5hcGFjaGUuc3RydXRzLnRhZ2xpYi50ZW1wbGF0ZS51dGlsPC9BPjwvQj48L1REPgo8VEQ+Jm5ic3A7PC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvYXBhY2hlL3N0cnV0cy90YWdsaWIvdGlsZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5hcGFjaGUuc3RydXRzLnRhZ2xpYi50aWxlczwvQT48L0I+PC9URD4KPFREPiAgICAgVGhlICJzdHJ1dHMtdGlsZXMiIHRhZyBsaWJyYXJ5IGNvbnRhaW5zIHRhZ3MgdGhhdCBhcmUgdXNlZnVsIGluCmNyZWF0aW5nIGR5bmFtaWMgcmV1c2FibGUgY29tcG9uZW50cy48L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREIFdJRFRIPSIyMCUiPjxCPjxBIEhSRUY9Im9yZy9hcGFjaGUvc3RydXRzL3RhZ2xpYi90aWxlcy9leHQvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5hcGFjaGUuc3RydXRzLnRhZ2xpYi50aWxlcy5leHQ8L0E+PC9CPjwvVEQ+CjxURD4mbmJzcDs8L1REPgo8L1RSPgo8VFIgQkdDT0xPUj0id2hpdGUiIENMQVNTPSJUYWJsZVJvd0NvbG9yIj4KPFREIFdJRFRIPSIyMCUiPjxCPjxBIEhSRUY9Im9yZy9hcGFjaGUvc3RydXRzL3RhZ2xpYi90aWxlcy91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuYXBhY2hlLnN0cnV0cy50YWdsaWIudGlsZXMudXRpbDwvQT48L0I+PC9URD4KPFREPiZuYnNwOzwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5hcGFjaGUuc3RydXRzLnRpbGVzPC9BPjwvQj48L1REPgo8VEQ+PGRpdiBjbGFzcz0ibWFpbkNvbnRlbnQiPgogICAgVGhlIFRpbGVzIHRhZ2xpYiBhbmQgZnJhbWV3b3JrIGFsbG93cyBidWlsZGluZyB3ZWIgcGFnZXMgYnkgYXNzZW1ibGluZyByZXVzYWJsZSAKICAgIHBpZWNlcyBvZiBwYWdlcywgY2FsbGVkIFRpbGVzLjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvYWN0aW9ucy9wYWNrYWdlLXN1bW1hcnkuaHRtbCI+b3JnLmFwYWNoZS5zdHJ1dHMudGlsZXMuYWN0aW9uczwvQT48L0I+PC9URD4KPFREPiZuYnNwOzwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2FwYWNoZS9zdHJ1dHMvdGlsZXMvYmVhbnMvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5hcGFjaGUuc3RydXRzLnRpbGVzLmJlYW5zPC9BPjwvQj48L1REPgo8VEQ+Jm5ic3A7PC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvYXBhY2hlL3N0cnV0cy90aWxlcy9kZWZpbml0aW9uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuYXBhY2hlLnN0cnV0cy50aWxlcy5kZWZpbml0aW9uPC9BPjwvQj48L1REPgo8VEQ+Jm5ic3A7PC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvYXBhY2hlL3N0cnV0cy90aWxlcy94bWxEZWZpbml0aW9uL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuYXBhY2hlLnN0cnV0cy50aWxlcy54bWxEZWZpbml0aW9uPC9BPjwvQj48L1REPgo8VEQ+Jm5ic3A7PC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvYXBhY2hlL3N0cnV0cy91cGxvYWQvcGFja2FnZS1zdW1tYXJ5Lmh0bWwiPm9yZy5hcGFjaGUuc3RydXRzLnVwbG9hZDwvQT48L0I+PC9URD4KPFREPiBUaGUgdXBsb2FkIHBhY2thZ2UgZmFjaWxpdGllcyB0byB1cGxvYWQgZmlsZXMgdXNpbmcKIG11bHRpLXBhcnQgcmVxdWVzdHMuPC9URD4KPC9UUj4KPFRSIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iVGFibGVSb3dDb2xvciI+CjxURCBXSURUSD0iMjAlIj48Qj48QSBIUkVGPSJvcmcvYXBhY2hlL3N0cnV0cy91dGlsL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuYXBhY2hlLnN0cnV0cy51dGlsPC9BPjwvQj48L1REPgo8VEQ+VGhlIFV0aWxpdGllcyBwYWNrYWdlIHByb3ZpZGVzIGEgdmFyaWV0eSBvZiBmYW1pbGllcyBvZiBjbGFzc2VzLAp0byBzb2x2ZSBwcm9ibGVtcyB0aGF0IGFyZSBjb21tb25seSBlbmNvdW50ZXJlZCBpbiBidWlsZGluZyB3ZWIgYXBwbGljYXRpb25zLjwvVEQ+CjwvVFI+CjxUUiBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9IlRhYmxlUm93Q29sb3IiPgo8VEQgV0lEVEg9IjIwJSI+PEI+PEEgSFJFRj0ib3JnL2FwYWNoZS9zdHJ1dHMvdmFsaWRhdG9yL3BhY2thZ2Utc3VtbWFyeS5odG1sIj5vcmcuYXBhY2hlLnN0cnV0cy52YWxpZGF0b3I8L0E+PC9CPjwvVEQ+CjxURD4gVGhlIHZhbGlkYXRvciBwYWNrYWdlIHByb3ZpZGVzIGEgc2VyaWVzIG9mIGNsYXNzZXMgdG8gdmFsaWRhdGUgCiAgIDxjb2RlPkFjdGlvbkZvcm08L2NvZGU+IHR5cGUgb2YgaW5wdXQuPC9URD4KPC9UUj4KPC9UQUJMRT4KCjxQPgombmJzcDs8SFI+Cgo8IS0tID09PT09PT09PT0gU1RBUlQgT0YgTkFWQkFSID09PT09PT09PT0gLS0+CjxBIE5BTUU9Im5hdmJhcl9ib3R0b20iPjwhLS0gLS0+PC9BPgo8VEFCTEUgQk9SREVSPSIwIiBXSURUSD0iMTAwJSIgQ0VMTFBBRERJTkc9IjEiIENFTExTUEFDSU5HPSIwIj4KPFRSPgo8VEQgQ09MU1BBTj0zIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+CjxBIE5BTUU9Im5hdmJhcl9ib3R0b21fZmlyc3Ryb3ciPjwhLS0gLS0+PC9BPgo8VEFCTEUgQk9SREVSPSIwIiBDRUxMUEFERElORz0iMCIgQ0VMTFNQQUNJTkc9IjMiPgogIDxUUiBBTElHTj0iY2VudGVyIiBWQUxJR049InRvcCI+CiAgPFREIEJHQ09MT1I9IiNGRkZGRkYiIENMQVNTPSJOYXZCYXJDZWxsMVJldiI+ICZuYnNwOzxGT05UIENMQVNTPSJOYXZCYXJGb250MVJldiI+PEI+T3ZlcnZpZXc8L0I+PC9GT05UPiZuYnNwOzwvVEQ+CiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+UGFja2FnZTwvRk9OVD4mbmJzcDs8L1REPgogIDxURCBCR0NPTE9SPSIjRUVFRUZGIiBDTEFTUz0iTmF2QmFyQ2VsbDEiPiAgICA8Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPkNsYXNzPC9GT05UPiZuYnNwOzwvVEQ+CiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+VXNlPC9GT05UPiZuYnNwOzwvVEQ+CiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9Im92ZXJ2aWV3LXRyZWUuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5UcmVlPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iZGVwcmVjYXRlZC1saXN0Lmh0bWwiPjxGT05UIENMQVNTPSJOYXZCYXJGb250MSI+PEI+RGVwcmVjYXRlZDwvQj48L0ZPTlQ+PC9BPiZuYnNwOzwvVEQ+CiAgPFREIEJHQ09MT1I9IiNFRUVFRkYiIENMQVNTPSJOYXZCYXJDZWxsMSI+ICAgIDxBIEhSRUY9ImluZGV4LWFsbC5odG1sIj48Rk9OVCBDTEFTUz0iTmF2QmFyRm9udDEiPjxCPkluZGV4PC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KICA8VEQgQkdDT0xPUj0iI0VFRUVGRiIgQ0xBU1M9Ik5hdkJhckNlbGwxIj4gICAgPEEgSFJFRj0iaGVscC1kb2MuaHRtbCI+PEZPTlQgQ0xBU1M9Ik5hdkJhckZvbnQxIj48Qj5IZWxwPC9CPjwvRk9OVD48L0E+Jm5ic3A7PC9URD4KICA8L1RSPgo8L1RBQkxFPgo8L1REPgo8VEQgQUxJR049InJpZ2h0IiBWQUxJR049InRvcCIgUk9XU1BBTj0zPjxFTT4KPC9FTT4KPC9URD4KPC9UUj4KCjxUUj4KPFREIEJHQ09MT1I9IndoaXRlIiBDTEFTUz0iTmF2QmFyQ2VsbDIiPjxGT05UIFNJWkU9Ii0yIj4KJm5ic3A7UFJFViZuYnNwOwombmJzcDtORVhUPC9GT05UPjwvVEQ+CjxURCBCR0NPTE9SPSJ3aGl0ZSIgQ0xBU1M9Ik5hdkJhckNlbGwyIj48Rk9OVCBTSVpFPSItMiI+CiAgPEEgSFJFRj0iaW5kZXguaHRtbCIgVEFSR0VUPSJfdG9wIj48Qj5GUkFNRVM8L0I+PC9BPiAgJm5ic3A7CiZuYnNwOzxBIEhSRUY9Im92ZXJ2aWV3LXN1bW1hcnkuaHRtbCIgVEFSR0VUPSJfdG9wIj48Qj5OTyBGUkFNRVM8L0I+PC9BPiAgJm5ic3A7CiZuYnNwOwo8U0NSSVBUPgogIDwhLS0KICBpZih3aW5kb3c9PXRvcCkgewogICAgZG9jdW1lbnQud3JpdGVsbignPEEgSFJFRj0iYWxsY2xhc3Nlcy1ub2ZyYW1lLmh0bWwiIFRBUkdFVD0iIj48Qj5BbGwgQ2xhc3NlczwvQj48L0E+Jyk7CiAgfQogIC8vLS0+CjwvU0NSSVBUPgo8Tk9TQ1JJUFQ+CjxBIEhSRUY9ImFsbGNsYXNzZXMtbm9mcmFtZS5odG1sIiBUQVJHRVQ9IiI+PEI+QWxsIENsYXNzZXM8L0I+PC9BPgo8L05PU0NSSVBUPgo8L0ZPTlQ+PC9URD4KPC9UUj4KPC9UQUJMRT4KPCEtLSA9PT09PT09PT09PSBFTkQgT0YgTkFWQkFSID09PT09PT09PT09IC0tPgoKPEhSPgpDb3B5cmlnaHQgqSAyMDAwLTIwMDMgLSBBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbgo8L0JPRFk+CjwvSFRNTD4K