PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0nSVNPLTg4NTktMSc/Pgo8dGVsZWNvbXM+Cjx0ZWxlY29tPgo8bHI+T3R0YXdhLDwvbHI+CjxkYXRlPiAxMCBPY3RvYmVyIDE5OTY8L2RhdGU+Cjx0eXBkb2M+VGF4YXRpb24gT3JkZXIgPC90eXBkb2M+CjxkZWNpc2lvbj48cGFyYT5DUlRDIDk2LTEwPC9wYXJhPgo8L2RlY2lzaW9uPgo8cGFydGllcz48cGFyYT48dW5kZXJsaW5lPkluIHJlOiAgQUdUIExpbWl0ZWQgLSBJbnRlcmltIFJhdGUgSW5jcmVhc2UgMTk5NiwgVGVsZWNvbSBEZWNpc2lvbiBDUlRDIDk2LTQsIDE5IEZlYnJ1YXJ5IDE5OTY8L3VuZGVybGluZT48L3BhcmE+CjwvcGFydGllcz4KPHRleHQ+PHBhcmE+TXIuIEphbWVzIEEuIFdhY2hvd2ljaCBmb3IgdGhlIEFsYmVydGEgQ29uc3VtZXJzJyBDb2FsaXRpb24gKEFsdGFDQykuPC9wYXJhPgo8cGFyYT5Nci4gQm9oZGFuIFJvbWFuaXVrIGZvciBBR1QgTGltaXRlZCAoQUdUKS48L3BhcmE+CjxwYXJhPjx1bmRlcmxpbmU+VEFYQVRJT04gT0YgQ09TVFMgT0YgQUxUQUNDPC91bmRlcmxpbmU+PC9wYXJhPgo8cGFyYT5UYXhpbmcgT2ZmaWNlcjogIEplYW4tUGllcnJlIEJsYWlzPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRoaXMgb3JkZXIgY29uc3RpdHV0ZXMgdGhlIHRheGF0aW9uIG9mIGNvc3RzIGF3YXJkZWQgdG8gQWx0YUNDIGluIHRoZSBwcm9jZWVkaW5nIGxlYWRpbmcgdG8gPHVuZGVybGluZT5BR1QgTGltaXRlZCAtIEludGVyaW0gUmF0ZSBJbmNyZWFzZSAxOTk2PC91bmRlcmxpbmU+LCBUZWxlY29tIERlY2lzaW9uIENSVEMgOTYtNCwgMTkgRmVicnVhcnkgMTk5NiAoRGVjaXNpb24gOTYtNCkuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkNvc3RzIHdlcmUgYXdhcmRlZCB0byBBbHRhQ0MgcHVyc3VhbnQgdG8gVGVsZWNvbSBDb3N0cyBPcmRlciBDUlRDIDk2LTYsIDEgTWF5IDE5OTYsIGluIGFjY29yZGFuY2Ugd2l0aCBzZWN0aW9uIDQ0IG9mIHRoZSA8dW5kZXJsaW5lPkNSVEMgVGVsZWNvbW11bmljYXRpb25zIFJ1bGVzIG9mIFByb2NlZHVyZTwvdW5kZXJsaW5lPi48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+T24gMjEgTWF5IDE5OTYsIEFsdGFDQyBzdWJtaXR0ZWQgYSBCaWxsIG9mIENvc3RzIGZvciBpdHMgcGFydGljaXBhdGlvbiBpbiB0aGUgcHJvY2VlZGluZyBsZWFkaW5nIHRvIERlY2lzaW9uIDk2LTQsIGNsYWltaW5nIGEgdG90YWwgb2YgJDQsMzA2Ljc1IGluIGZlZXMgZm9yIGl0cyBsZWdhbCBjb3Vuc2VsLCBhIHRvdGFsIG9mICQxMyw0MTcuODAgaW4gZmVlcyBmb3IgaXRzIHR3byBjb25zdWx0YW50cyBhbmQgYSB0b3RhbCBvZiAkNDQ4LjQzIGluIGRpc2J1cnNlbWVudHMuICBBbHRhQ0MncyBjbGFpbSBpbmNsdWRlZCBHU1Qgb24gdGhlIGZlZXMgYW5kIHRoZSBkaXNidXJzZW1lbnRzLiAgSSB1bmRlcnN0YW5kIHRoYXQgQWx0YUNDLCBhcyBvcHBvc2VkIHRvIGl0cyB2YXJpb3VzIG1lbWJlciBvcmdhbml6YXRpb25zLCBpcyBub3QgZW50aXRsZWQgdG8gYSBHU1QgcmViYXRlLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JbiBhIGxldHRlciBkYXRlZCAxMSBKdW5lIDE5OTYsIEFHVCBzdGF0ZWQgdGhhdCBpdCBhY2tub3dsZWRnZWQgdGhlIGNvc3RzIGNsYWltZWQgYXMgcmVhc29uYWJsZS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5Db3Vuc2VsIGFuZCBDb25zdWx0YW50IEZlZXM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QWx0YUNDIGNsYWltZWQgYSB0b3RhbCBvZiAkNCwzMDYuNzUgcmVwcmVzZW50aW5nIDIzIGhvdXJzIG9mIHdvcmsgYXQgYSByYXRlIG9mICQxNzUgcGVyIGhvdXIgZm9yIGl0cyBsZWdhbCBjb3Vuc2VsLCBNci4gSmFtZXMgQS4gV2FjaG93aWNoLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5BbHRhQ0MgYWxzbyBjbGFpbWVkICQ1LDk3MC42MCBmb3IgaXRzIGNvbnN1bHRhbnQsIE1yLiBKZWZmcmV5IEEuIEpvZG9pbiwgYW5kICQ3LDQ0Ny4yMCwgZm9yIE1yLiBBemFkIFAuIE1lcmFuaS4gIFRoZXNlIGFtb3VudHMgcmVwcmVzZW50IGEgdG90YWwgb2YgNDYuNSBob3VycyBvZiB3b3JrIGF0IGEgcmF0ZSBvZiAkMTIwIHBlciBob3VyIGZvciBNci4gSm9kb2luLCBhbmQgYSB0b3RhbCBvZiA0My41IGhvdXJzIG9mIHdvcmsgYXQgYSByYXRlIG9mICQxNjAgcGVyIGhvdXIgZm9yIE1yLiBNZXJhbmkuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk1yLiBXYWNob3dpY2ggaGFzIGJlZW4gcHJhY3Rpc2luZyBsYXcgZm9yIHRlbiB5ZWFycy4gIE1yLiBKb2RvaW4gYW5kIE1yLiBNZXJhbmkgaGF2ZSByZXNwZWN0aXZlbHkgNiBhbmQgMTQgeWVhcnMgb2YgZXhwZXJpZW5jZSBhcyBjb25zdWx0YW50cy48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSBub3RlIHRoYXQgdGhlIHJhdGVzIGNsYWltZWQgYXJlIGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgcmF0ZXMgc3BlY2lmaWVkIGluIHRoZSBDb21taXNzaW9uJ3MgTGVnYWwgRGlyZWN0b3JhdGUncyA8dW5kZXJsaW5lPkd1aWRlbGluZXMgZm9yIHRoZSBUYXhhdGlvbiBvZiBDb3N0czwvdW5kZXJsaW5lPi4gIE1vcmVvdmVyLCBJIGFjY2VwdCB0aGVzZSByYXRlcyBhcyBhcHByb3ByaWF0ZS4gIEkgYWxzbyBmaW5kIHRoYXQgdGhlIGhvdXJzIGNsYWltZWQgYXJlIHJlYXNvbmFibGUuICBBY2NvcmRpbmdseSwgSSB3aWxsIGFsbG93IHRoZSBhbW91bnRzIGFzIGNsYWltZWQuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+RGlzYnVyc2VtZW50czwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5BbHRhQ0MgYWxzbyBjbGFpbWVkICQzMi41NSBmb3IgcGhvdG9jb3BpZXMsICQzNC41NCBmb3IgbG9uZyBkaXN0YW5jZSBjaGFyZ2VzLCAkMzUyIGZvciBmYXggY2hhcmdlcywgYW5kICQyOS4zNCBmb3IgR1NUIGluIHJlbGF0aW9uIHRoZXJldG8sIGZvciB0b3RhbCBkaXNidXJzZW1lbnRzIG9mICQ0NDguNDMuICBJIGZpbmQgdGhhdCB0aGVzZSBkaXNidXJzZW1lbnRzIGFyZSByZWFzb25hYmxlLCBhbmQgd2lsbCBhbGxvdyB0aGUgYW1vdW50cyBhcyBjbGFpbWVkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkNvc3RzIGFzIFRheGVkPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgaGVyZWJ5IHRheCB0aGUgZmVlcyBhbmQgZGlzYnVyc2VtZW50cywgaW5jbHVkaW5nIEdTVCwgYXMgZm9sbG93czo8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5Db3Vuc2VsIEZlZXM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TXIuIEphbWVzIEEuIFdhY2hvd2ljaCAgICAgICAgJCA0LDMwNi43NTwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkNvbnN1bHRhbnRzIEZlZXM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TXIuIEplZmZyZXkgQS4gSm9kb2luICAgICAgICAgICAgICAgJCA1LDk3MC42MDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Nci4gQXphZCBQLiBNZXJhbmkgICAgICAgICAgICAgICAgICAkIDcsNDQ3LjIwPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+VE9UQUwgRkVFUzwvdW5kZXJsaW5lPiAgICAgICAgICAgICAgICAgICAgICAgICAgJDx1bmRlcmxpbmU+MTcsNzI0LjU1PC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+VE9UQUwgRElTQlVSU0VNRU5UUzwvdW5kZXJsaW5lPiAgICAgICAgJCAgICA8dW5kZXJsaW5lPjQ0OC40MzwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPlRPVEFMPC91bmRlcmxpbmU+PC9wYXJhPgo8cGFyYT48dW5kZXJsaW5lPkZFRVMvRElTQlVSU0VNRU5UUzwvdW5kZXJsaW5lPiAgICAgICAgICAgICQ8dW5kZXJsaW5lPjE4LDE3Mi45ODwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5QdXJzdWFudCB0byBUZWxlY29tIENvc3RzIE9yZGVyIENSVEMgOTYtNiwgdGhlIGNvc3RzIGFzIHRheGVkIHNoYWxsIGJlIHBhaWQgYnkgQUdUIExpbWl0ZWQuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkplYW4tUGllcnJlIEJsYWlzPC9wYXJhPgo8cGFyYT5MZWdhbCBDb3Vuc2VsPC9wYXJhPgo8cGFyYT5DYW5hZGlhbiBSYWRpby10ZWxldmlzaW9uIGFuZCBUZWxlY29tbXVuaWNhdGlvbnMgQ29tbWlzc2lvbjwvcGFyYT4KPC90ZXh0Pgo8d2FybmluZz5UaGUgb2ZmaWNpYWwgdmVyc2lvbiBvZiB0aGlzIGRvY3VtZW50IGlzIGF2YWlsYWJsZSBhdCB0aGUgZm9sbG93aW5nIEludGVybmV0IHNpdGU6IGh0dHA6Ly93d3cuY3J0Yy5nYy5jYTwvd2FybmluZz4KPGNvcHlyaWdodD5Db3B5cmlnaHQgQ2FuYWRpYW4gUmFkaW8tdGVsZXZpc2lvbiBhbmQgVGVsZWNvbW11bmljYXRpb25zIENvbW1pc3Npb24sICAxOTk5LjwvY29weXJpZ2h0Pgo8L3RlbGVjb20+Cjx0ZWxlY29tPgo8bHI+T3R0YXdhLCA8L2xyPgo8ZGF0ZT4xIEF1Z3VzdCAxOTk2PC9kYXRlPgo8dHlwZG9jPlRheGF0aW9uIE9yZGVyIDwvdHlwZG9jPgo8ZGVjaXNpb24+PHBhcmE+Q1JUQyA5Ni05PC9wYXJhPgo8L2RlY2lzaW9uPgo8cGFydGllcz48cGFyYT48dW5kZXJsaW5lPkluIHJlOiAgTWFyaXRpbWUgVGVsICZhbXA7IFRlbCBMaW1pdGVkIC0gQXBwbGljYXRpb24gZm9yIEludGVyaW0gYW5kIEZpbmFsIFJhdGUgSW5jcmVhc2VzIGZvciAxOTk1LCBUZWxlY29tIERlY2lzaW9uIENSVEMgOTUtNyBhbmQgTGV0dGVyIERlY2lzaW9uIG9mIDIxIERlY2VtYmVyIDE5OTU8L3VuZGVybGluZT48L3BhcmE+CjwvcGFydGllcz4KPHRleHQ+PHBhcmE+TWljaGFlbCBKYW5pZ2FuIGZvciB0aGUgTm92YSBTY290aWEgQ29uc3VtZXJzJyBDb2FsaXRpb24gKE5TQ0MpLjwvcGFyYT4KPHBhcmE+RG9uIE1hY0RvbmFsZCBhbmQgRGF2aWQgVGF5bG9yIGZvciBNYXJpdGltZSBUZWwgJmFtcDsgVGVsIExpbWl0ZWQgKE1UJmFtcDtUKS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5UQVhBVElPTiBPRiBDT1NUUyBPRiBOU0NDPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRheGluZyBPZmZpY2VyOiAgTG9yaSBBc3NoZXRvbi1TbWl0aDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UaGlzIG9yZGVyIGNvbnN0aXR1dGVzIHRoZSB0YXhhdGlvbiBvZiBjb3N0cyBhd2FyZGVkIHRvIE5TQ0MgaW4gdGhlIHByb2NlZWRpbmdzIGxlYWRpbmcgdG8gPHVuZGVybGluZT5NYXJpdGltZSBUZWwgJmFtcDsgVGVsIExpbWl0ZWQgLSBBcHBsaWNhdGlvbiBmb3IgSW50ZXJpbSBSYXRlIEluY3JlYXNlcyBhbmQgVGFyaWZmIE5vdGljZSA1MDE8L3VuZGVybGluZT4sIFRlbGVjb20gRGVjaXNpb24gQ1JUQyA5NS03LCAxIE1heSAxOTk1IGFuZCB0aGUgQ29tbWlzc2lvbidzIExldHRlciBEZWNpc2lvbiBvZiAyMSBEZWNlbWJlciAxOTk1LiAgQ29zdHMgd2VyZSBhd2FyZGVkIHRvIE5TQ0MgYnkgVGVsZWNvbSBDb3N0cyBPcmRlciBDUlRDIDk2LTcsIDIzIE1heSAxOTk2LCBpbiBhY2NvcmRhbmNlIHdpdGggc3Vic2VjdGlvbiA0NCgxKSBvZiB0aGUgPHVuZGVybGluZT5DUlRDIFRlbGVjb21tdW5pY2F0aW9ucyBSdWxlcyBvZiBQcm9jZWR1cmU8L3VuZGVybGluZT4uPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk9uIDIxIEp1bmUgMTk5NiwgTlNDQyBzdWJtaXR0ZWQgYSBCaWxsIG9mIENvc3RzIGluIHRoZSBhbW91bnQgb2YgJDMsNjk2LjI1LCBjb25zaXN0aW5nIG9mICQzLDY3My4yMiBpbiBmZWVzIGFuZCAkMjMuMDMgaW4gZGlzYnVyc2VtZW50cy4gIFRoZXNlIGFtb3VudHMgYXJlIGluY2x1c2l2ZSBvZiBHU1QsIHdoZXJlIGFwcGxpY2FibGUuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk9uIDMgSnVseSAxOTk2LCBNVCZhbXA7VCBmaWxlZCBpdHMgY29tbWVudHMgb24gTlNDQydzIEJpbGwgb2YgQ29zdHMsIGluZGljYXRpbmcgdGhhdCBpdCBkaWQgbm90IG9iamVjdCB0byB0aGUgY29zdHMgY2xhaW1lZCwgd2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBob3VybHkgcmF0ZSBjaGFyZ2VkIGJ5IE5TQ0MncyBjb3Vuc2VsLCBNci4gSmFuaWdhbi4gIFN1YnNlcXVlbnRseSwgaW4gYSBsZXR0ZXIgZGF0ZWQgMTcgSnVseSAxOTk2LCBNVCZhbXA7VCBzdGF0ZWQgdGhhdCBpdCB3YXMgd2l0aGRyYXdpbmcgaXRzIG9iamVjdGlvbiB0byB0aGUgcmF0ZSBjbGFpbWVkIG9uIGJlaGFsZiBvZiBNci4gSmFuaWdhbiBpbiBsaWdodCBvZiB0aGUgZmFjdCB0aGF0IHRoZSByYXRlIGlzIGluIGFjY29yZGFuY2Ugd2l0aCB0aGF0IHNldCBvdXQgZm9yIGNvdW5zZWwgb2Ygc2ltaWxhciBleHBlcmllbmNlIGluIHRoZSBDb21taXNzaW9uJ3MgTGVnYWwgRGlyZWN0b3JhdGUncyA8dW5kZXJsaW5lPkd1aWRlbGluZXMgZm9yIHRoZSBUYXhhdGlvbiBvZiBDb3N0czwvdW5kZXJsaW5lPiAodGhlIEd1aWRlbGluZXMpLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkNvdW5zZWwgYW5kIENvbnN1bHRhbnQgRmVlczwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5OU0NDIGNsYWltZWQgYSB0b3RhbCBvZiAxMy4yIGhvdXJzIGF0IGFuIGhvdXJseSByYXRlIG9mICQyMzAgZm9yIGl0cyBjb3Vuc2VsLCBNci4gSmFuaWdhbiwgYW5kIGl0IGNsYWltZWQgMy4xIGhvdXJzIGF0IGFuIGhvdXJseSByYXRlIG9mICQxNjAgZm9yIGl0cyBjb25zdWx0YW50LCBNci4gVG9kZC4gIFRoZSByYXRlcyBjbGFpbWVkIGZvciBib3RoIE1yLiBKYW5pZ2FuIGFuZCBNci4gVG9kZCByZWZsZWN0IHRob3NlIHNwZWNpZmllZCBpbiB0aGUgR3VpZGVsaW5lcywgYW5kIEkgd2lsbCBhbGxvdyB0aGUgcmF0ZXMgYXMgY2xhaW1lZC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSBhbHNvIGZpbmQgdGhlIG51bWJlciBvZiBob3VycyBjbGFpbWVkIGJ5IE5TQ0MgZm9yIE1yLiBKYW5pZ2FuIGFuZCBNci4gVG9kZCB0byBiZSByZWFzb25hYmxlIGluIGxpZ2h0IG9mIHRoZSBuYXR1cmUgYW5kIGV4dGVudCBvZiBOU0NDJ3MgcGFydGljaXBhdGlvbiBpbiB0aGVzZSBwcm9jZWVkaW5ncywgYW5kIEkgd2lsbCBhbGxvdyB0aGUgYW1vdW50cyBhcyBjbGFpbWVkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JIG5vdGUsIGhvd2V2ZXIsIHRoYXQgTlNDQyBoYXMgY2xhaW1lZCAzLjUlIEdTVCBvbiBNci4gSmFuaWdhbidzIGZlZXMgYW5kIDclIEdTVCBvbiBNci4gVG9kZCdzIGZlZXMuICBJbiBsaWdodCBvZiB0aGUgNTAlIEdTVCByZWJhdGUgdGhhdCBJIHVuZGVyc3RhbmQgaXMgYXZhaWxhYmxlIGluIHRoZSBjaXJjdW1zdGFuY2VzIG9mIHRoaXMgY2FzZSwgSSBoYXZlIGRpc2FsbG93ZWQgaGFsZiBvZiB0aGUgR1NUIGNsYWltZWQgb24gTXIuIFRvZGQncyBmZWVzLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkRpc2J1cnNlbWVudHM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TlNDQyBjbGFpbWVkIGEgdG90YWwgb2YgJDIzLjAzIGluIGRpc2J1cnNlbWVudHMuICBJIGFtIHNhdGlzZmllZCB0aGF0IHRoZXNlIGV4cGVuc2VzIHdlcmUgcmVhc29uYWJseSBhbmQgbmVjZXNzYXJpbHkgaW5jdXJyZWQsIGFuZCBJIHdpbGwgYWxsb3cgdGhlbSBhcyBjbGFpbWVkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkNvc3RzIGFzIFRheGVkPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgaGVyZWJ5IHRheCB0aGUgZmVlcyBhbmQgZGlzYnVyc2VtZW50cywgaW5jbHVzaXZlIG9mIDUwJSBvZiBHU1QsIHdoZXJlIGFwcGxpY2FibGUsIGFzIGZvbGxvd3M6PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+RmVlczwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Nci4gSmFuaWdhbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQzLDE0Mi4yNzwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Nci4gVG9kZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQ1MTMuMzY8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5EaXNidXJzZW1lbnRzPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkluLWhvdXNlIHBob3RvY29waWVzICAgICAgICAgICAgICAgICAgICAgICAkNC41MDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Mb25nIGRpc3RhbmNlICh0ZWxlcGhvbmUvZmF4KSAgICAgICAgICAgJDYuMTE8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Q291cmllciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDEyLjQyPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+VG90YWwgRmVlcyBhbmQ8L3VuZGVybGluZT48L3BhcmE+CjxwYXJhPjx1bmRlcmxpbmU+RGlzYnVyc2VtZW50cyBPd2luZzwvdW5kZXJsaW5lPiAgICAgICAgICAgICAgICA8dW5kZXJsaW5lPiQzLDY3OC42NjwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Mb3JpIEFzc2hldG9uLVNtaXRoPC9wYXJhPgo8cGFyYT5MZWdhbCBDb3Vuc2VsPC9wYXJhPgo8cGFyYT5DYW5hZGlhbiBSYWRpby10ZWxldmlzaW9uIGFuZDwvcGFyYT4KPHBhcmE+ICBUZWxlY29tbXVuaWNhdGlvbnMgQ29tbWlzc2lvbjwvcGFyYT4KPC90ZXh0Pgo8d2FybmluZz5UaGUgb2ZmaWNpYWwgdmVyc2lvbiBvZiB0aGlzIGRvY3VtZW50IGlzIGF2YWlsYWJsZSBhdCB0aGUgZm9sbG93aW5nIEludGVybmV0IHNpdGU6IGh0dHA6Ly93d3cuY3J0Yy5nYy5jYTwvd2FybmluZz4KPGNvcHlyaWdodD5Db3B5cmlnaHQgQ2FuYWRpYW4gUmFkaW8tdGVsZXZpc2lvbiBhbmQgVGVsZWNvbW11bmljYXRpb25zIENvbW1pc3Npb24sICAxOTk5LjwvY29weXJpZ2h0Pgo8L3RlbGVjb20+Cjx0ZWxlY29tPgo8bHI+T3R0YXdhLCA8L2xyPgo8ZGF0ZT4xNyBBcHJpbCAxOTk2PC9kYXRlPgo8dHlwZG9jPlRheGF0aW9uIE9yZGVyIDwvdHlwZG9jPgo8ZGVjaXNpb24+PHBhcmE+Q1JUQyA5Ni04PC9wYXJhPgo8L2RlY2lzaW9uPgo8cGFydGllcz48cGFyYT48dW5kZXJsaW5lPkluIHJlOiAgSW1wbGVtZW50YXRpb24gb2YgUmVndWxhdG9yeSBGcmFtZXdvcmsgLSBTcGxpdHRpbmcgb2YgdGhlIFJhdGUgQmFzZSBhbmQgUmVsYXRlZCBJc3N1ZXMsIFRlbGVjb20gRGVjaXNpb24gQ1JUQyA5NS0yMSBhbmQgVGVsZWNvbSBDb3N0cyBPcmRlciBDUlRDIDk1LTExPC91bmRlcmxpbmU+PC9wYXJhPgo8L3BhcnRpZXM+Cjx0ZXh0PjxwYXJhPkJ5cm9uIFdpbGxpYW1zLCBvZiB0aGUgUHVibGljIEludGVyZXN0IExhdyBDZW50cmUsIExlZ2FsIEFpZCBNYW5pdG9iYSwgZm9yIHRoZSBDb25zdW1lcnMnIEFzc29jaWF0aW9uIG9mIENhbmFkYSAoTWFuaXRvYmEpIGFuZCB0aGUgTWFuaXRvYmEgU29jaWV0eSBvZiBTZW5pb3JzIChDQUMvTVNPUykuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkRlbmlzIEhlbnJ5IGZvciBTdGVudG9yIFJlc291cmNlIENlbnRyZSBJbmMuIChTdGVudG9yKS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5UQVhBVElPTiBPRiBDT1NUUyBPRiBDQUMvTVNPUzwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UYXhpbmcgT2ZmaWNlcjogIExvcmkgQXNzaGV0b24tU21pdGg8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+VGhpcyBvcmRlciBjb25zdGl0dXRlcyB0aGUgdGF4YXRpb24gb2YgY29zdHMgYXdhcmRlZCB0byBDQUMvTVNPUyBpbiB0aGUgcHJvY2VlZGluZyBsZWFkaW5nIHRvIDx1bmRlcmxpbmU+SW1wbGVtZW50YXRpb24gb2YgUmVndWxhdG9yeSBGcmFtZXdvcmsgLSBTcGxpdHRpbmcgb2YgdGhlIFJhdGUgQmFzZSBhbmQgUmVsYXRlZCBJc3N1ZXM8L3VuZGVybGluZT4sIFRlbGVjb20gRGVjaXNpb24gQ1JUQyA5NS0yMSwgMzEgT2N0b2JlciAxOTk1IChEZWNpc2lvbiA5NS0yMSkuICBDb3N0cyB3ZXJlIGF3YXJkZWQgdG8gQ0FDL01TT1MgYnkgVGVsZWNvbSBDb3N0cyBPcmRlciBDUlRDIDk1LTExLCAxIE5vdmVtYmVyIDE5OTUgKENvc3RzIE9yZGVyIDk1LTExKSwgaW4gYWNjb3JkYW5jZSB3aXRoIHN1YnNlY3Rpb24gNDQoMSkgb2YgdGhlIDx1bmRlcmxpbmU+Q1JUQyBUZWxlY29tbXVuaWNhdGlvbnMgUnVsZXMgb2YgUHJvY2VkdXJlPC91bmRlcmxpbmU+LiAgQ29zdHMgT3JkZXIgOTUtMTEgcHJvdmlkZWQgdGhhdCBjb3N0cyBhcmUgdG8gYmUgcGFpZCBieSB0aGUgcmVzcG9uZGVudHMgaWRlbnRpZmllZCB0aGVyZWluIGluIHByb3BvcnRpb24gdG8gdGhlaXIgcmV2ZW51ZXMgZnJvbSB0ZWxlY29tbXVuaWNhdGlvbnMgYWN0aXZpdGllcywgYXMgcmVwb3J0ZWQgaW4gZWFjaCBjb21wYW55J3MgbW9zdCByZWNlbnQgYXVkaXRlZCBmaW5hbmNpYWwgc3RhdGVtZW50cy48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+T24gMjggTm92ZW1iZXIgMTk5NSwgQ0FDL01TT1Mgc3VibWl0dGVkIGEgQmlsbCBvZiBDb3N0cyBpbiB0aGUgYW1vdW50IG9mICQ3OCwwMjIuODAsIGNvbnNpc3Rpbmcgb2YgJDY5LDM5Ni44NSBpbiBmZWVzIGFuZCAkOCw2MjUuOTUgaW4gZGlzYnVyc2VtZW50cy48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+T24gMTMgRGVjZW1iZXIgMTk5NSwgU3RlbnRvciBmaWxlZCBpdHMgY29tbWVudHMgb24gQ0FDL01TT1MncyBCaWxsIG9mIENvc3RzLiAgVGhlIHJlbWFpbmluZyByZXNwb25kZW50cyBkaWQgbm90IGZpbGUgY29tbWVudHMuICBDQUMvTVNPUyBmaWxlZCBpdHMgcmVwbHkgdG8gU3RlbnRvcidzIGNvbW1lbnRzIG9uIDE5IERlY2VtYmVyIDE5OTUuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+Q291bnNlbCBhbmQgRXhwZXJ0IEZlZXM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Q0FDL01TT1MgY2xhaW1lZCBmZWVzIG9mICQ0MiwxMTEuODUgZm9yIGl0cyBjb3Vuc2VsLCBjb25zaXN0aW5nIG9mICQzOCw0NzcuODUgZm9yIE1yLiBXaWxsaWFtcyBhbmQgJDMsNjM0LjAwIGZvciBNci4gUGVsdHouICBXaXRoIHJlc3BlY3QgdG8gTXIuIFdpbGxpYW1zLCBDQUMvTVNPUyBjbGFpbWVkIDMzNC41OSBob3VycywgY29uc2lzdGluZyBvZiA5LjMgaG91cnMgZm9yIGF0dGVuZGFuY2UgYXQgdGhlIG9yYWwgaGVhcmluZyBhbmQgMzI1LjI5IGhvdXJzIGZvciBwcmVwYXJhdGlvbiB0aW1lLCBhdCBhbiBob3VybHkgcmF0ZSBvZiAkMTE1L2hvdXIuICBDQUMvTVNPUyBjbGFpbWVkIDE1LjggaG91cnMgb2YgcHJlcGFyYXRpb24gdGltZSBmb3IgTXIuIFBlbHR6IGF0IGFuIGhvdXJseSByYXRlIG9mICQyMzAvaG91ci4gIFRoZXNlIHJhdGVzIHJlZmxlY3QgdGhvc2Ugc2V0IG91dCBieSB0aGUgQ29tbWlzc2lvbidzIExlZ2FsIERpcmVjdG9yYXRlIGluIGl0cyA8dW5kZXJsaW5lPkd1aWRlbGluZXMgZm9yIHRoZSBUYXhhdGlvbiBvZiBDb3N0czwvdW5kZXJsaW5lPiAodGhlIEd1aWRlbGluZXMpLCBhbmQgSSB3aWxsIGFsbG93IHRoZSByYXRlcyBhcyBjbGFpbWVkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Gb3IgaXRzIGV4cGVydCwgTXIuIFRvZGQsIENBQy9NU09TIGNsYWltZWQgZmVlcyBvZiAkMjcsMjg1LjAwLCByZXByZXNlbnRpbmcgMyBob3VycyBvZiBhdHRlbmRhbmNlIGFuZCAxNTcuNSBob3VycyBvZiBwcmVwYXJhdGlvbiBhdCBhbiBob3VybHkgcmF0ZSBvZiAkMTcwL2hvdXIuICBUaGlzIHJhdGUgaXMgYWxzbyBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIHJhdGVzIHNwZWNpZmllZCBpbiB0aGUgR3VpZGVsaW5lcyBmb3IgZXhwZXJ0IHdpdG5lc3NlcywgYW5kIEkgYWNjZXB0IGl0IGFzIGFuIGFwcHJvcHJpYXRlIHJhdGUgZm9yIE1yLiBUb2RkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPlByZXBhcmF0aW9uIGFuZCBBdHRlbmRhbmNlIFRpbWU8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSB3aWxsIGFsbG93IHRoZSBhdHRlbmRhbmNlIHRpbWUgY2xhaW1lZCBieSBDQUMvTVNPUyB3aXRoIHJlc3BlY3QgdG8gYm90aCBNci4gV2lsbGlhbXMgYW5kIE1yLiBUb2RkLiAgV2l0aCByZXNwZWN0IHRvIHRoZSBhbW91bnQgb2YgcHJlcGFyYXRpb24gdGltZSBjbGFpbWVkIGJ5IENBQy9NU09TLCBTdGVudG9yIHN1Ym1pdHRlZCB0aGF0IGdpdmVuIHRoZSBuYXR1cmUgYW5kIGV4dGVudCBvZiBDQUMvTVNPUydzIHN1Ym1pc3Npb25zIGluIGFyZ3VtZW50LCB0aGUgY29tYmluZWQgY2xhaW0gb2YgMTQzLjc1IGhvdXJzIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgYXJndW1lbnQgYnkgY291bnNlbCBhbmQgTXIuIFRvZGQgYXBwZWFycyBzb21ld2hhdCBoaWdoIGFuZCBzaG91bGQgYmUgcmVkdWNlZC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SW4gaXRzIHJlcGx5LCBDQUMvTVNPUyBzdWJtaXR0ZWQgdGhhdCB0aGUgaG91cnMgY2xhaW1lZCBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGFyZ3VtZW50IHdlcmUgcmVhc29uYWJsZSBhbmQgYXBwcm9wcmlhdGUgZ2l2ZW4gdGhlIG5hdHVyZSBvZiB0aGUgcHJvY2VlZGluZyBhbmQgdGhlIGlzc3VlcyBhZGRyZXNzZWQgYnkgQ0FDL01TT1MuICBDQUMvTVNPUyBub3RlZCB0aGF0IHRoZXJlIHdlcmUgdGhyZWUgcm91bmRzIG9mIGFyZ3VtZW50IGluIHRoaXMgcHJvY2VlZGluZywgYW5kIHN1Ym1pdHRlZCB0aGF0IGl0IHdhcyBvYmxpZ2VkIHRvIGV4cGVuZCBzdWJzdGFudGlhbCBlZmZvcnRzIGluIGVhY2ggb2YgdGhlIG9yYWwsIHdyaXR0ZW4gYW5kIHJlcGx5IHJvdW5kcyBvZiBhcmd1bWVudC4gIENBQy9NU09TIGFkZGVkIHRoYXQgYSBtb3JlIGV4dGVuc2l2ZSBjbG9zaW5nIGFyZ3VtZW50IHdhcyByZXF1aXJlZCwgaW4gcGFydCwgZHVlIHRvIHRoZSBhYnNlbmNlIG9mIGEgY3Jvc3MtZXhhbWluYXRpb24gb2YgQ0FDL01TT1MncyBleHBlcnQgd2l0bmVzcyBieSBNVFMgTmV0Q29tIEluYy4gKE1UUykgKGZvcm1lcmx5IE1hbml0b2JhIFRlbGVwaG9uZSBTeXN0ZW0pLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JbiBteSB2aWV3LCByYXRoZXIgdGhhbiBmb2N1c2luZyBvbiB0aGUgYW1vdW50IG9mIHRpbWUgY2xhaW1lZCBieSBDQUMvTVNPUyBmb3IgdGhlIHByZXBhcmF0aW9uIG9mIGFyZ3VtZW50LCBpdCBpcyBtb3JlIHVzZWZ1bCBhbmQgYXBwcm9wcmlhdGUgdG8gY29uc2lkZXIgd2hldGhlciBDQUMvTVNPUydzIHRvdGFsIGNsYWltIGZvciBwcmVwYXJhdGlvbiB0aW1lIGJ5IGl0cyBjb3Vuc2VsIGFuZCBleHBlcnQgaXMgcmVhc29uYWJsZS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Q0FDL01TT1MgY2xhaW1lZCBhIHRvdGFsIG9mIDQ5OC41OSBob3VycyBvZiBwcmVwYXJhdGlvbiB0aW1lIGZvciBpdHMgY291bnNlbCBhbmQgZXhwZXJ0LiAgSW4gZGV0ZXJtaW5pbmcgd2hldGhlciB0aGlzIGFtb3VudCBpcyByZWFzb25hYmxlLCBJIGhhdmUgY29uc2lkZXJlZCB0aGUgbmF0dXJlIGFuZCBleHRlbnQgb2YgQ0FDL01TT1MncyBwYXJ0aWNpcGF0aW9uIGluIHRoZSBwcm9jZWVkaW5nIGxlYWRpbmcgdG8gRGVjaXNpb24gOTUtMjEsIHRoZSBsZXZlbCBvZiBleHBlcmllbmNlIG9mIENBQy9NU09TJ3MgY291bnNlbCBhbmQgZXhwZXJ0IGFuZCB0aGUgcHJlcGFyYXRpb24gdGltZSBhbGxvd2VkIGZvciBvdGhlciBpbnRlcnZlbmVycyBpbiB0aGlzIHByb2NlZWRpbmcuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgbm90ZSB0aGF0IENBQy9NU09TIGRpZCBub3QgYWRkcmVzcyBpbiBhcmd1bWVudCB0aGUgZnVsbCByYW5nZSBvZiBpc3N1ZXMgdGhhdCB3ZXJlIGNvbnNpZGVyZWQgaW4gdGhpcyBwcm9jZWVkaW5nLiAgSW5zdGVhZCwgQ0FDL01TT1MncyBwYXJ0aWNpcGF0aW9uIGluIHRoaXMgcHJvY2VlZGluZyBmb2N1c2VkIGFsbW9zdCBleGNsdXNpdmVseSBvbiB0aGUgZm9ybSBvZiByZWd1bGF0aW9uIGZvciBNVFMsIHdoaWNoIHdhcyBvbmUgb2YgYSBudW1iZXIgb2YgaXNzdWVzIGNvbnNpZGVyZWQgaW4gdGhlIHByb2NlZWRpbmcgbGVhZGluZyB0byBEZWNpc2lvbiA5NS0yMS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SW4gY29udHJhc3QsIHRoZSBvdGhlciBpbnRlcnZlbmVycyB0aGF0IHBhcnRpY2lwYXRlZCBpbiB0aGUgb3JhbCBoZWFyaW5nIGdlbmVyYWxseSBhZGRyZXNzZWQgYSBtdWNoIGJyb2FkZXIgcmFuZ2Ugb2YgaXNzdWVzIHRoYW4gZGlkIENBQy9NU09TLiAgVGhlIEbpZOlyYXRpb24gTmF0aW9uYWxlIGRlcyBBc3NvY2lhdGlvbnMgZGUgQ29uc29tbWF0ZXVycyBkdSBRdeliZWMvTmF0aW9uYWwgQW50aS1Qb3ZlcnR5IE9yZ2FuaXphdGlvbiAoRk5BQ1EvTkFQTyksIHdobyBmaWxlZCBldmlkZW5jZSBvbiBhIG51bWJlciBvZiBpc3N1ZXMgYW5kIHdobyBhZGRyZXNzZWQgaW4gc29tZSBkZXRhaWwgbW9zdCBvZiB0aGUgaXNzdWVzIGNvbnNpZGVyZWQgaW4gdGhlIHByb2NlZWRpbmcgbGVhZGluZyB0byBEZWNpc2lvbiA5NS0yMSwgd2FzIGFsbG93ZWQgYSB0b3RhbCBvZiAxLDQ1MCBob3VycyBvZiBwcmVwYXJhdGlvbiB0aW1lIGluIFRheGF0aW9uIE9yZGVyIENSVEMgOTYtNi4gIFRoZSBCLkMuIE9sZCBBZ2UgUGVuc2lvbmVycycgT3JnYW5pemF0aW9uIGV0IGFsLiAoQkNPQVBPIGV0IGFsLikgZGlkIG5vdCBmaWxlIGV2aWRlbmNlLCBidXQgaXQgcGFydGljaXBhdGVkIGluIGEgYnJvYWQgcmFuZ2Ugb2YgaXNzdWVzIHRocm91Z2ggY3Jvc3MtZXhhbWluYXRpb24gYW5kIHRoZSBzdWJtaXNzaW9uIG9mIGludGVycm9nYXRvcmllcy4gIEluIFRheGF0aW9uIE9yZGVyIENSVEMgOTYtNywgQkNPQVBPIGV0IGFsLiB3YXMgYWxsb3dlZCA1MDAgaG91cnMgb2YgcHJlcGFyYXRpb24gdGltZSBmb3IgaXRzIGNvdW5zZWwgYW5kIGNvbnN1bHRhbnQsIHBsdXMgYW4gYWRkaXRpb25hbCA0MDYuNSBob3VycyBvZiBwcmVwYXJhdGlvbiB0aW1lIGZvciB0aGUgc2VydmljZXMgb2YgYSBsYXcgc3R1ZGVudCB3aG9zZSB0aW1lIHdhcyBjbGFpbWVkIGF0IGFuIGhvdXJseSByYXRlIG9mICQxNS4gIFRoZSBDb25zdW1lcnMnIEFzc29jaWF0aW9uIG9mIENhbmFkYSAoQ0FDKSBhbHNvIGFkZHJlc3NlZCBhIGJyb2FkZXIgcmFuZ2Ugb2YgaXNzdWVzIHRoYW4gZGlkIENBQy9NU09TLCBhbHRob3VnaCBhdCB0aGUgc2FtZSB0aW1lIEkgbm90ZSB0aGF0IENBQyBuZWl0aGVyIGZpbGVkIGV2aWRlbmNlIG5vciBwcmVzZW50ZWQgb3JhbCBhcmd1bWVudC4gIEluIFRheGF0aW9uIE9yZGVyIENSVEMgOTYtNSwgQ0FDIHdhcyBhbGxvd2VkIDM0LjUgZGF5cyBvZiBwcmVwYXJhdGlvbiB0aW1lIGZvciBpdHMgY291bnNlbCBhbmQgMTIzIGhvdXJzIG9mIHByZXBhcmF0aW9uIHRpbWUgZm9yIGl0cyBjb25zdWx0YW50LiAgQmFzaW5nIHRpbWUgY2xhaW1lZCBpbiBkYWlseSBpbmNyZW1lbnRzIG9uIGEgc2V2ZW4gaG91ciBkYXksIENBQyB3YXMgYWxsb3dlZCBhIHRvdGFsIG9mIDM2NC41IGhvdXJzIG9mIHByZXBhcmF0aW9uIHRpbWUuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkdpdmVuIHRoZSBsaW1pdGVkIGZvY3VzIG9mIENBQy9NU09TIGluIHRoaXMgcHJvY2VlZGluZywgYW5kIG5vdGluZyB0aGUgYW1vdW50IG9mIHByZXBhcmF0aW9uIHRpbWUgYWxsb3dlZCBmb3Igb3RoZXIgaW50ZXJ2ZW5lcnMgaW4gdGhlIHNhbWUgcHJvY2VlZGluZyB0aGF0IHBhcnRpY2lwYXRlZCBpbiBhIGJyb2FkZXIgcmFuZ2Ugb2YgaXNzdWVzLCBpdCBhcHBlYXJzIGF0IGZpcnN0IGJsdXNoIHRoYXQgQ0FDL01TT1MncyBjbGFpbSBvZiA0OTguNTkgaG91cnMgZm9yIHByZXBhcmF0aW9uIHRpbWUsIGEgbGFyZ2UgcG9ydGlvbiBvZiB3aGljaCByZWxhdGVzIHRvIHByZXBhcmF0aW9uIHRpbWUgZm9yIE1yLiBXaWxsaWFtcywgaXMgc29tZXdoYXQgaW4gZXhjZXNzIG9mIHdoYXQgY2FuIGJlIGNvbnNpZGVyZWQgcmVhc29uYWJsZSBhbmQgbmVjZXNzYXJ5IGluIHRoZSBjaXJjdW1zdGFuY2VzLiAgSG93ZXZlciwgSSBub3RlIHRoYXQgdGhpcyB3YXMgQ0FDL01TT1MncyBmaXJzdCBhcHBlYXJhbmNlIGJlZm9yZSB0aGUgQ29tbWlzc2lvbiBhbmQgdGhhdCBjb3Vuc2VsIGZvciBDQUMvTVNPUyBpcyByZWxhdGl2ZWx5IGp1bmlvci4gIEF0IHRoZSB0aW1lIG9mIHRoZSBoZWFyaW5nLCBNci4gV2lsbGlhbXMgaGFkIGJlZW4gcHJhY3Rpc2luZyBsYXcgZm9yIG9ubHkgdHdvIHllYXJzLCBhbmQgaXQgaXMgcmVhc29uYWJsZSB0byBhc3N1bWUgdGhhdCBoZSB3b3VsZCBleHBlbmQgYSBncmVhdGVyIGFtb3VudCBvZiB0aW1lIGluIHByZXBhcmF0aW9uIHRoYW4gd291bGQgbW9yZSBleHBlcmllbmNlZCBjb3Vuc2VsLCBhIGZhY3RvciB3aGljaCBpcyByZWZsZWN0ZWQgaW4gTXIuIFdpbGxpYW1zJyBsb3dlciBob3VybHkgcmF0ZS4gIEkgbm90ZSB0aGF0IGNvdW5zZWwgZm9yIENBQywgQkNPQVBPIGV0IGFsLiBhbmQgRk5BQ1EvTkFQTyBhcmUgYWxsIGNvbnNpZGVyYWJseSBtb3JlIGV4cGVyaWVuY2VkIHRoYW4gTXIuIFdpbGxpYW1zLCBtb3N0IG9mIHRoZW0gaGF2aW5nIHBhcnRpY2lwYXRlZCBpbiBhIG51bWJlciBvZiBwcmV2aW91cyBDb21taXNzaW9uIHByb2NlZWRpbmdzLiAgQXMgc3VjaCwgSSB3b3VsZCBleHBlY3QgdGhlc2UgaW50ZXJ2ZW5lcnMgdG8gY2xhaW0gbGVzcyBwcmVwYXJhdGlvbiB0aW1lIGZvciBlcXVpdmFsZW50IHdvcmsuICBJbiB0aGlzIHJlZ2FyZCwgSSBub3RlIHRoYXQgd2hpbGUgQ0FDL01TT1MgZm9jdXNlZCBpdHMgcGFydGljaXBhdGlvbiBpbiB0aGlzIHByb2NlZWRpbmcgb24gb25seSBvbmUgaXNzdWUsIGl0IGFkZHJlc3NlZCB0aGF0IGlzc3VlIGluIHNvbWUgZGVwdGgsIGluY2x1ZGluZyB0aHJvdWdoIHRoZSBmaWxpbmcgb2YgZXZpZGVuY2UsIHRoZSBzdWJtaXNzaW9uIG9mIGludGVycm9nYXRvcmllcywgdGhlIGNyb3NzLWV4YW1pbmF0aW9uIG9mIE1UUyB3aXRuZXNzZXMgYW5kIHRoZSBwcmVzZW50YXRpb24gb2Ygb3JhbCBhbmQgd3JpdHRlbiBhcmd1bWVudC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+VGFraW5nIGFsbCBvZiB0aGUgYWJvdmUgZmFjdG9ycyBpbnRvIGFjY291bnQsIEkgY29uc2lkZXIgdGhhdCB0aGUgcHJlcGFyYXRpb24gdGltZSBjbGFpbWVkIGJ5IENBQy9NU09TIGZvciBpdHMgY291bnNlbCBhbmQgZXhwZXJ0IGlzIHJlYXNvbmFibGUsIGFuZCBJIHdpbGwgYWxsb3cgdGhlIHRpbWUgYXMgY2xhaW1lZC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5EaXNidXJzZW1lbnRzPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgd2lzaCB0byBzdGF0ZSBhdCB0aGUgb3V0c2V0IHRoYXQgQ0FDL01TT1MncyB0YXhhdGlvbiBzdWJtaXNzaW9uLCBhbmQgcGFydGljdWxhcmx5IHRoYXQgcG9ydGlvbiByZWxhdGluZyB0byBkaXNidXJzZW1lbnRzLCB3YXMgZXhjZXB0aW9uYWxseSB3ZWxsIGRvY3VtZW50ZWQuICBBbGwgZGlzYnVyc2VtZW50IGNsYWltcyB3ZXJlIGNsZWFybHkgc3VwcG9ydGVkIGJ5IGxlZ2libGUgcmVjZWlwdHMsIHdoaWNoIGhpZ2hsaWdodGVkIHByZWNpc2VseSB0aGUgbmF0dXJlIGFuZCBleHRlbnQgb2YgZWFjaCBleHBlbnNlLiAgU3VjaCB0aG9yb3VnaCBwcmVwYXJhdGlvbiBvbiB0aGUgcGFydCBvZiB0aGUgY29zdHMgYXBwbGljYW50IGdyZWF0bHkgZXhwZWRpdGVzIHRoZSB0YXNrIG9mIHRoZSB0YXhpbmcgb2ZmaWNlciwgYW5kIEkgZW5jb3VyYWdlIG90aGVyIGludGVydmVuZXJzIHRvIGVtdWxhdGUgQ0FDL01TT1MgaW4gdGhpcyByZWdhcmQuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkluIGl0cyBCaWxsIG9mIENvc3RzLCBDQUMvTVNPUyBjbGFpbWVkIGRpc2J1cnNlbWVudHMgb2YgJDgsNjI1Ljk1LiAgVGhpcyBhbW91bnQgaXMgaW5jbHVzaXZlIG9mIFBTVCwgYnV0IG5vdCBHU1QsIGFzIEkgdW5kZXJzdGFuZCB0aGF0IHRoZSBQdWJsaWMgSW50ZXJlc3QgTGF3IENlbnRyZSwgd2hpY2ggcmVwcmVzZW50ZWQgQ0FDL01TT1MgaW4gdGhpcyBwcm9jZWVkaW5nLCBpcyBleGVtcHQgZnJvbSB0aGUgcGF5bWVudCBvZiBHU1QuICBJIGFtIHNhdGlzZmllZCB0aGF0IGFsbCBkaXNidXJzZW1lbnRzIHdlcmUgcmVhc29uYWJsZSBhbmQgbmVjZXNzYXJ5IGFuZCBJIHdpbGwgYWxsb3cgdGhlbSBhcyBjbGFpbWVkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkNvc3RzIGFzIFRheGVkPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgaGVyZWJ5IHRheCB0aGUgZmVlcyBhbmQgZGlzYnVyc2VtZW50cywgaW5jbHVzaXZlIG9mIDclIFBTVCwgd2hlcmUgYXBwbGljYWJsZSwgYXMgZm9sbG93czo8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5GZWVzPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+Q291bnNlbCBGZWVzPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk1yLiBXaWxsaWFtcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMzgsNDc3Ljg1PC9wYXJhPgo8cGFyYT5Nci4gUGVsdHogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQzLDYzNC4wMDwvcGFyYT4KPHBhcmE+PHVuZGVybGluZT5FeHBlcnQgRmVlczwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Nci4gVG9kZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDI3LDI4NS4wMDwvcGFyYT4KPHBhcmE+PHVuZGVybGluZT5Ub3RhbCBGZWVzPC91bmRlcmxpbmU+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bmRlcmxpbmU+JDY5LDM5Ni44NTwvdW5kZXJsaW5lPjwvcGFyYT4KPHBhcmE+PHVuZGVybGluZT5EaXNidXJzZW1lbnRzPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkluLWhvdXNlIHBob3RvY29waWVzICAgICAgICAgICAgICAgICAkMSw3NTkuNjU8L3BhcmE+CjxwYXJhPk90aGVyIHBob3RvY29waWVzICAgICAgICAgICAgICAgICAgICAgICAgICAkNjAuNDY8L3BhcmE+CjxwYXJhPkxvbmcgZGlzdGFuY2U8L3BhcmE+CjxwYXJhPih0ZWxlcGhvbmUvZmF4KSAgICAgICAgICAgICAgICAgICAgICAgICAgJDEsMTY2LjI1PC9wYXJhPgo8cGFyYT5Db3VyaWVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQxLDU1NS40MTwvcGFyYT4KPHBhcmE+UG9zdGFnZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDk3LjE2PC9wYXJhPgo8cGFyYT5BaXIgdHJhdmVsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQyLDMyOC43NTwvcGFyYT4KPHBhcmE+QmFnZ2FnZSBGZWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDM3LjQ1PC9wYXJhPgo8cGFyYT5QYXJraW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQzLjUwPC9wYXJhPgo8cGFyYT5UYXhpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMTAzLjQwPC9wYXJhPgo8cGFyYT5BY2NvbW1vZGF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgJDk0Ny4xMDwvcGFyYT4KPHBhcmE+Q29tcHVzZXJ2IEZlZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQ0MC44NjwvcGFyYT4KPHBhcmE+Q29tcHV0ZXIgRGlza3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMjkuOTY8L3BhcmE+CjxwYXJhPk1lYWxzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDQ5Ni4wMDwvcGFyYT4KPHBhcmE+PHVuZGVybGluZT5Ub3RhbCBEaXNidXJzZW1lbnRzPC91bmRlcmxpbmU+ICAgICAgICAgICAgICAgICAgPHVuZGVybGluZT4kOCw2MjUuOTU8L3VuZGVybGluZT48L3BhcmE+CjxwYXJhPjx1bmRlcmxpbmU+VG90YWwgRmVlcyBhbmQ8L3VuZGVybGluZT48L3BhcmE+CjxwYXJhPjx1bmRlcmxpbmU+RGlzYnVyc2VtZW50czwvdW5kZXJsaW5lPiA8dW5kZXJsaW5lPk93aW5nPC91bmRlcmxpbmU+ICAgICAgICAgICAgICA8dW5kZXJsaW5lPiQ3OCwwMjIuODA8L3VuZGVybGluZT48L3BhcmE+CjxwYXJhPkFzIG5vdGVkIGFib3ZlLCB0aGlzIGFtb3VudCBpcyB0byBiZSBwYWlkIGJ5IHRoZSByZXNwb25kZW50cyBpZGVudGlmaWVkIGluIENvc3RzIE9yZGVyIDk1LTExIGluIHRoZSBwcm9wb3J0aW9ucyBzZXQgb3V0IGluIHRoYXQgb3JkZXIuPC9wYXJhPgo8cGFyYT5Mb3JpIEFzc2hldG9uLVNtaXRoPC9wYXJhPgo8cGFyYT5MZWdhbCBDb3Vuc2VsPC9wYXJhPgo8cGFyYT5DYW5hZGlhbiBSYWRpby10ZWxldmlzaW9uIGFuZDwvcGFyYT4KPHBhcmE+VGVsZWNvbW11bmljYXRpb25zIENvbW1pc3Npb248L3BhcmE+CjwvdGV4dD4KPHdhcm5pbmc+VGhlIG9mZmljaWFsIHZlcnNpb24gb2YgdGhpcyBkb2N1bWVudCBpcyBhdmFpbGFibGUgYXQgdGhlIGZvbGxvd2luZyBJbnRlcm5ldCBzaXRlOiBodHRwOi8vd3d3LmNydGMuZ2MuY2E8L3dhcm5pbmc+Cjxjb3B5cmlnaHQ+Q29weXJpZ2h0IENhbmFkaWFuIFJhZGlvLXRlbGV2aXNpb24gYW5kIFRlbGVjb21tdW5pY2F0aW9ucyBDb21taXNzaW9uLCAgMTk5OS48L2NvcHlyaWdodD4KPC90ZWxlY29tPgo8dGVsZWNvbT4KPGxyPk90dGF3YSw8L2xyPgo8ZGF0ZT4gMTcgQXByaWwgMTk5NjwvZGF0ZT4KPHR5cGRvYz5UYXhhdGlvbiBPcmRlciA8L3R5cGRvYz4KPGRlY2lzaW9uPjxwYXJhPkNSVEMgOTYtNzwvcGFyYT4KPC9kZWNpc2lvbj4KPHBhcnRpZXM+PHBhcmE+PHVuZGVybGluZT5JbiByZTogIEltcGxlbWVudGF0aW9uIG9mIFJlZ3VsYXRvcnkgRnJhbWV3b3JrIC0gU3BsaXR0aW5nIG9mIHRoZSBSYXRlIEJhc2UgYW5kIFJlbGF0ZWQgSXNzdWVzLCBUZWxlY29tIERlY2lzaW9uIENSVEMgOTUtMjEgYW5kIFRlbGVjb20gQ29zdHMgT3JkZXIgQ1JUQyA5NS0xMDwvdW5kZXJsaW5lPjwvcGFyYT4KPC9wYXJ0aWVzPgo8dGV4dD48cGFyYT5DYXJvbHluIE1jQ29vbCBmb3IgdGhlIEIuQy4gT2xkIEFnZSBQZW5zaW9uZXJzJyBPcmdhbml6YXRpb24sIHRoZSBDb3VuY2lsIG9mIFNlbmlvciBDaXRpemVucycgT3JnYW5pemF0aW9ucywgV2VzdCBFbmQgU2VuaW9ycycgTmV0d29yaywgU2VuaW9yIENpdGl6ZW5zJyBBc3NvY2lhdGlvbiwgRmVkZXJhdGVkIEFudGktUG92ZXJ0eSBHcm91cHMgb2YgQi5DLiBhbmQgTG9jYWwgMS0yMTcgSVdBIFNlbmlvcnMgKEJDT0FQTyBldCBhbC4pLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5EZW5pcyBIZW5yeSBmb3IgU3RlbnRvciBSZXNvdXJjZSBDZW50cmUgSW5jLiAoU3RlbnRvcikuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+VEFYQVRJT04gT0YgQ09TVFMgT0YgQkNPQVBPIGV0IGFsPC91bmRlcmxpbmU+LjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UYXhpbmcgT2ZmaWNlcjogIExvcmkgQXNzaGV0b24tU21pdGg8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+VGhpcyBvcmRlciBjb25zdGl0dXRlcyB0aGUgdGF4YXRpb24gb2YgY29zdHMgYXdhcmRlZCB0byBCQ09BUE8gZXQgYWwuIGluIHRoZSBwcm9jZWVkaW5nIGxlYWRpbmcgdG8gPHVuZGVybGluZT5JbXBsZW1lbnRhdGlvbiBvZiBSZWd1bGF0b3J5IEZyYW1ld29yayAtIFNwbGl0dGluZyBvZiB0aGUgUmF0ZSBCYXNlIGFuZCBSZWxhdGVkIElzc3VlczwvdW5kZXJsaW5lPiwgVGVsZWNvbSBEZWNpc2lvbiBDUlRDIDk1LTIxLCAzMSBPY3RvYmVyIDE5OTUgKERlY2lzaW9uIDk1LTIxKS4gIENvc3RzIHdlcmUgYXdhcmRlZCB0byBCQ09BUE8gZXQgYWwuIG9uIGEgcGFydGlhbCBiYXNpcyBwdXJzdWFudCB0byBUZWxlY29tIENvc3RzIE9yZGVyIENSVEMgOTUtMTAsIDEgTm92ZW1iZXIgMTk5NSAoQ29zdHMgT3JkZXIgOTUtMTApLCBpbiBhY2NvcmRhbmNlIHdpdGggc3Vic2VjdGlvbiA0NCgxKSBvZiB0aGUgPHVuZGVybGluZT5DUlRDIFRlbGVjb21tdW5pY2F0aW9ucyBSdWxlcyBvZiBQcm9jZWR1cmU8L3VuZGVybGluZT4uICBJbiBDb3N0cyBPcmRlciA5NS0xMCwgdGhlIENvbW1pc3Npb24gZGV0ZXJtaW5lZCB0aGF0IEJDT0FQTyBldCBhbC4gaXMgZW50aXRsZWQgdG8gNzUlIG9mIGl0cyBjb3N0cyBvZiBwYXJ0aWNpcGF0aW9uIGluIHRoZSBwcm9jZWVkaW5nIGxlYWRpbmcgdG8gRGVjaXNpb24gOTUtMjEuICBUaGUgb3JkZXIgcHJvdmlkZWQgdGhhdCBjb3N0cyBhcmUgdG8gYmUgcGFpZCBieSB0aGUgcmVzcG9uZGVudHMgaWRlbnRpZmllZCBpbiB0aGF0IG9yZGVyIGluIHByb3BvcnRpb24gdG8gdGhlaXIgcmV2ZW51ZXMgZnJvbSB0ZWxlY29tbXVuaWNhdGlvbnMgYWN0aXZpdGllcywgYXMgcmVwb3J0ZWQgaW4gZWFjaCBjb21wYW55J3MgbW9zdCByZWNlbnQgYXVkaXRlZCBmaW5hbmNpYWwgc3RhdGVtZW50cy48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+T24gMzAgTm92ZW1iZXIgMTk5NSwgQkNPQVBPIGV0IGFsLiBzdWJtaXR0ZWQgYSBCaWxsIG9mIENvc3RzIGluIHdoaWNoIGl0IGNsYWltZWQgYSB0b3RhbCBvZiBDRE4gJDE3Nyw0MDguNTMgYW5kIFVTICQyLDc4OC4zMyBpbiBjb3N0cy4gIFVzaW5nIGEgcmF0ZSBvZiBleGNoYW5nZSBvZiBDRE4gJDEuMzUgPSBVUyAkMS4wMCwgd2hpY2ggaXMgdGhlIHJhdGUgZW1wbG95ZWQgYnkgQkNPQVBPIGV0IGFsLidzIFUuUy4gY291bnNlbCBpbiB0aGlzIGNhc2UsIHRoZSB0b3RhbCBjbGFpbSBhbW91bnRzIHRvICQxODEsMTcyLjc4LCBjb25zaXN0aW5nIG9mICQxMzYsNDMwLjE4IGluIGZlZXMgYW5kICQ0NCw3NDIuNjAgaW4gZGlzYnVyc2VtZW50cy4gIFRoZXNlIGFtb3VudHMgYXJlIGluY2x1c2l2ZSBvZiBQU1QgYW5kIEdTVCwgd2hlcmUgYXBwbGljYWJsZS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+U3RlbnRvciBzdWJtaXR0ZWQgaXRzIGNvbW1lbnRzIG9uIEJDT0FQTyBldCBhbC4ncyBCaWxsIG9mIENvc3RzIG9uIDE4IERlY2VtYmVyIDE5OTUuICBCQ09BUE8gZXQgYWwuIGZpbGVkIGl0cyByZXBseSBvbiAzMCBEZWNlbWJlciAxOTk1LjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkZlZXM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5Db3Vuc2VsIEZlZXM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QkNPQVBPIGV0IGFsLiBjbGFpbWVkIDE4MC41IGhvdXJzIGZvciBpdHMgc2VuaW9yIGxlZ2FsIGNvdW5zZWwsIE1zLiBNY0Nvb2wsIGNvbnNpc3Rpbmcgb2YgNDIgaG91cnMgb2YgdGltZSBzcGVudCBpbiBhdHRlbmRhbmNlIGF0IHRoZSBvcmFsIGhlYXJpbmcgYW5kIDEzOC41IGhvdXJzIG9mIHByZXBhcmF0aW9uIHRpbWUsIGF0IGFuIGhvdXJseSByYXRlIG9mICQyMzAuICBCQ09BUE8gZXQgYWwuIGNsYWltZWQgMTcgaG91cnMgZm9yIGF0dGVuZGFuY2UgYW5kIDEzNi4yIGhvdXJzIGZvciBwcmVwYXJhdGlvbiBhdCB0aGUgc2FtZSBob3VybHkgcmF0ZSBmb3IgTXIuIEJsdW1lbmZlbGQuICBGb3IgaXRzIGp1bmlvciBjb3Vuc2VsLCBNcy4gS3VuaW4sIEJDT0FQTyBldCBhbC4gY2xhaW1lZCAyMCBob3VycyBvZiBhdHRlbmRhbmNlIHRpbWUgYW5kIDExNy4zIGhvdXJzIG9mIHByZXBhcmF0aW9uIHRpbWUgYXQgYW4gaG91cmx5IHJhdGUgb2YgJDExNS4gIFRoZSByYXRlcyBjbGFpbWVkIGJ5IEJDT0FQTyBldCBhbC4gZm9yIGNvdW5zZWwgcmVmbGVjdCB0aG9zZSBzZXQgb3V0IGJ5IHRoZSBDb21taXNzaW9uJ3MgTGVnYWwgRGlyZWN0b3JhdGUgaW4gaXRzIDx1bmRlcmxpbmU+R3VpZGVsaW5lcyBmb3IgdGhlIFRheGF0aW9uIG9mIENvc3RzPC91bmRlcmxpbmU+ICh0aGUgR3VpZGVsaW5lcyksIGFuZCBJIGFjY2VwdCB0aGVzZSByYXRlcyBhcyBhcHByb3ByaWF0ZS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5Db25zdWx0YW50IEZlZXM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QkNPQVBPIGV0IGFsLiBjbGFpbWVkICQyOCw4MzAuMDggaW4gZmVlcyBmb3IgaXRzIGNvbnN1bHRhbnQsIE1yLiBUb2RkLCByZXByZXNlbnRpbmcgMTY4LjQgaG91cnMgb2YgcHJlcGFyYXRpb24gdGltZSBhdCBhbiBob3VybHkgcmF0ZSBvZiAkMTYwLiAgVGhpcyByYXRlIHJlZmxlY3RzIHRoYXQgc3BlY2lmaWVkIGluIHRoZSBHdWlkZWxpbmVzIGZvciBjb25zdWx0YW50cyBvZiBNci4gVG9kZCdzIGV4cGVyaWVuY2UsIGFuZCBJIHdpbGwgYWxsb3cgdGhlIHJhdGUgYXMgY2xhaW1lZC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5Ncy4gTWFjRWFjaGVybidzIEZlZXM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QkNPQVBPIGV0IGFsLiBjbGFpbWVkICQ5LDI0Ny41MCBpbiBmZWVzIGZvciB3b3JrIHBlcmZvcm1lZCBieSBNcy4gTWFjRWFjaGVybiwgYSBsYXcgc3R1ZGVudCBhdCB0aGUgVW5pdmVyc2l0eSBvZiBCcml0aXNoIENvbHVtYmlhLCByZXByZXNlbnRpbmcgMTIyIGhvdXJzIG9mIGF0dGVuZGFuY2UgdGltZSBhbmQgNDk0LjUgaG91cnMgb2YgcHJlcGFyYXRpb24gdGltZSBhdCBhbiBob3VybHkgcmF0ZSBvZiAkMTUuICBCQ09BUE8gZXQgYWwuIHN0YXRlZCB0aGF0IE1zLiBNYWNFYWNoZXJuIHdvcmtlZCBhcyBhIHJlc2VhcmNoZXIgYW5kIGFzc2lzdGFudCB0byB0aGUgbGVnYWwgdGVhbSBpbiB0aGlzIHByb2NlZWRpbmcsIGFuZCBzdWJtaXR0ZWQgdGhhdCB0aGUgQ29tbWlzc2lvbiBzaG91bGQgYWxsb3cgaGVyIGNvc3RzLiAgQkNPQVBPIGV0IGFsLiBub3RlZCB0aGF0IHRoZXJlIGlzIG5vIHNwZWNpZmljIGNhdGVnb3J5IGluIHRoZSBHdWlkZWxpbmVzIHRvIGNvdmVyIE1zLiBNYWNFYWNoZXJuJ3MgcG9zaXRpb24sIGFuZCBhc2tlZCB0aGF0IGhlciBmZWVzIGFuZCBkaXNidXJzZW1lbnRzIGJlIGFsbG93ZWQgYXMgYW4gZXhjZXB0aW9uIHRvIHRoZSBHdWlkZWxpbmVzLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5TdGVudG9yIHJlY29nbml6ZWQgdGhhdCB0aGUgdXNlIGJ5IEJDT0FQTyBldCBhbC4gb2YgYSBsYXcgc3R1ZGVudCB3YXMgYSBtZWFzdXJlIHRha2VuIHRvIHNhdmUgY29zdHMuICBUaGVyZWZvcmUsIFN0ZW50b3Igc3RhdGVkIHRoYXQgaXQgaGFkIG5vIG9iamVjdGlvbiB0byB0aGUgYXdhcmRpbmcgb2YgY29zdHMgPGl0YWxpYz5wZXIgc2U8L2l0YWxpYz4gd2l0aCByZXNwZWN0IHRvIE1zLiBNYWNFYWNoZXJuJ3Mgd29yay4gIFN0ZW50b3IgZGlkIG5vdCBjb21tZW50IG9uIHRoZSByYXRlIGNsYWltZWQgZm9yIE1zLiBNYWNFYWNoZXJuLCBidXQgaXQgZGlkIG5vdGUgdGhhdCB0aGUgYW1vdW50IGNsYWltZWQgYnkgQkNPQVBPIGV0IGFsLiBmb3IgTXMuIE1hY0VhY2hlcm4gZGlkIG5vdCByZWNvbmNpbGUgd2l0aCB0aGUgYW1vdW50IGNoYXJnZWQgYnkgTXMuIE1hY0VhY2hlcm4gdG8gQkNPQVBPIGV0IGFsLiBhcyBkZW1vbnN0cmF0ZWQgYnkgdGhlIHJlY2VpcHRzIGF0dGFjaGVkIHRvIHRoZSBCaWxsIG9mIENvc3RzLiAgU3RlbnRvciBhbHNvIG9iamVjdGVkIHRvIHRoZSBuYXR1cmUgYW5kIGFtb3VudCBvZiB0aW1lIGNsYWltZWQgYnkgQkNPQVBPIGV0IGFsLiBmb3IgTXMuIE1hY0VhY2hlcm4uPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkluIHJlcGx5LCBCQ09BUE8gZXQgYWwuIHN0YXRlZCB0aGF0IGlmIHRoZSBhbW91bnQgY2xhaW1lZCBmb3IgTXMuIE1hY0VhY2hlcm4gZG9lcyBub3QgcmVjb25jaWxlIHdpdGggdGhlIHJlY2VpcHRzIHN1Ym1pdHRlZCBpbiBzdXBwb3J0IG9mIHRoZSBjbGFpbSwgcmVmZXJlbmNlIHNob3VsZCBiZSBtYWRlIHRvIHRoZSBhbW91bnQgZGlzcGxheWVkIGluIHRoZSByZWNlaXB0cy48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSBhbSBvZiB0aGUgdmlldyB0aGF0IGluIHJldGFpbmluZyB0aGUgc2VydmljZXMgb2YgYSBsYXcgc3R1ZGVudCBhdCBhIGxvdyBob3VybHkgcmF0ZSwgQkNPQVBPIGV0IGFsLiB3YXMgYWJsZSB0byByZWR1Y2UgdGhlIGNvc3RzIG9mIGl0cyBwYXJ0aWNpcGF0aW9uIGluIHRoZSBwcm9jZWVkaW5nLCBhbmQgSSBhbSBwcmVwYXJlZCB0byBhbGxvdyBhbiBhbW91bnQgZm9yIGNvc3RzIGluY3VycmVkIGluIHJlbGF0aW9uIHRvIHdvcmsgcGVyZm9ybWVkIGJ5IE1zLiBNYWNFYWNoZXJuLiAgV2l0aCByZXNwZWN0IHRvIHRoZSBhcHByb3ByaWF0ZSByYXRlIGZvciBNcy4gTWFjRWFjaGVybidzIHdvcmssIEkgbm90ZSB0aGF0IEJDT0FQTyBldCBhbC4gaGFzIGNsYWltZWQgYW4gaG91cmx5IHJhdGUgb2YgJDE1IGZvciBhbGwgb2YgdGhlIDYxNi41IGhvdXJzIGNsYWltZWQgZm9yIE1zLiBNYWNFYWNoZXJuLiAgSG93ZXZlciwgTXMuIE1hY0VhY2hlcm4ncyBpbnZvaWNlcyB0byBCQ09BUE8gZXQgYWwuIGluZGljYXRlIHRoYXQsIGZvciB3b3JrIHBlcmZvcm1lZCBwcmlvciB0byAxIEFwcmlsIDE5OTUsIHdoaWNoIGFtb3VudHMgdG8gOTkgaG91cnMsIG9yIDE2JSBvZiB0aGUgdG90YWwgaG91cnMgY2xhaW1lZCwgc2hlIGNoYXJnZWQgYW4gaG91cmx5IHJhdGUgb2YgJDEyLjUwLiAgRm9yIHdvcmsgcGVyZm9ybWVkIGFmdGVyIDEgQXByaWwgMTk5NSwgd2hpY2ggYW1vdW50cyB0byA1MjkuNSBob3Vycywgb3IgODQlIG9mIHRoZSB0b3RhbCBob3VycyBjbGFpbWVkLCBNcy4gTWFjRWFjaGVybiBjaGFyZ2VkIGFuIGhvdXJseSByYXRlIG9mICQxNS4gIFRoZSB0b3RhbCBjbGFpbSBmb3IgTXMuIE1hY0VhY2hlcm4ncyBmZWVzLCBiYXNlZCBvbiB0aGUgcmVjZWlwdHMgcHJvdmlkZWQsIGlzICQ5LDE4MC4wMCwgcmVwcmVzZW50aW5nIGEgdG90YWwgb2YgNjI4LjUgaG91cnMuICBJbiB0aGUgY2lyY3Vtc3RhbmNlcywgSSB3aWxsIGFsbG93IGEgcmF0ZSBvZiAkMTIuNTAgcGVyIGhvdXIgZm9yIDE2JSBvZiB0aGUgdGltZSBhbGxvd2VkIGZvciBNcy4gTWFjRWFjaGVybiBhbmQgYSByYXRlIG9mICQxNSBmb3IgODQlIG9mIHRoZSB0aW1lIGFsbG93ZWQgZm9yIE1zLiBNYWNFYWNoZXJuLiAgSSB3aWxsIGFkZHJlc3MgYmVsb3cgdGhlIHJlYXNvbmFibGVuZXNzIG9mIHRoZSB0aW1lIGNsYWltZWQgYnkgQkNPQVBPIGV0IGFsLiBmb3IgTXMuIE1hY0VhY2hlcm4uPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+UHJlcGFyYXRpb24gYW5kIEF0dGVuZGFuY2UgVGltZTwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5TdGVudG9yIHN1Ym1pdHRlZCB0aGF0IHRoZSBudW1iZXIgb2YgaG91cnMgY2xhaW1lZCBieSBCQ09BUE8gZXQgYWwuIGFwcGVhcnMgc29tZXdoYXQgaGlnaCwgZ2l2ZW4gdGhlIG5hdHVyZSBvZiBCQ09BUE8gZXQgYWwuJ3MgcGFydGljaXBhdGlvbiBpbiB0aGUgcHJvY2VlZGluZyBsZWFkaW5nIHRvIERlY2lzaW9uIDk1LTIxLiAgSW4gcGFydGljdWxhciwgU3RlbnRvciBub3RlZCB0aGF0IEJDT0FQTyBldCBhbC4gZGlkIG5vdCBmaWxlIGV2aWRlbmNlIG9yIGNhbGwgd2l0bmVzc2VzLiAgQ29uc2VxdWVudGx5LCBTdGVudG9yIHN0YXRlZCB0aGF0IHRoZSBudW1iZXIgb2YgaG91cnMgY2xhaW1lZCBieSBCQ09BUE8gZXQgYWwuIHNob3VsZCBiZSByZWR1Y2VkLjwvcGFyYT4KPHBhcmE+SW4gaXRzIHJlcGx5LCBCQ09BUE8gZXQgYWwuIHN0YXRlZCB0aGF0IFN0ZW50b3IgbWF5IGJlIHJpZ2h0IG9yIHdyb25nIGluIGl0cyBhc3Nlc3NtZW50IG9mIHRoZSByZWFzb25hYmxlbmVzcyBvZiB0aGUgdG90YWwgaG91cnMgY2xhaW1lZCBieSBCQ09BUE8gZXQgYWwuICBUbyBwcm92aWRlIGEgeWFyZHN0aWNrIGZvciBjb21wYXJpc29uLCBCQ09BUE8gZXQgYWwuIHJlcXVlc3RlZCB0aGF0IFN0ZW50b3IgYmUgcmVxdWlyZWQgdG8gcHJvdmlkZSBhbGwgb2YgaXRzIGhlYXJpbmcgY29zdHMgdGhhdCBtaWdodCBoYXZlIGJlZW4gcGFzc2VkIG9uIHRvIHJhdGVwYXllcnMuPC9wYXJhPgo8cGFyYT5JIGNvbnNpZGVyIHRoYXQgc3VmZmljaWVudCByZWxldmFudCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUgdG8gbWUgb24gdGhlIHB1YmxpYyByZWNvcmQgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHRpbWUgY2xhaW1lZCBieSBCQ09BUE8gZXQgYWwuIGlzIHJlYXNvbmFibGUgYW5kIG5lY2Vzc2FyeSwgd2l0aG91dCBoYXZpbmcgdG8gb2J0YWluIHNpbWlsYXIgaW5mb3JtYXRpb24gZnJvbSBTdGVudG9yLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48L3RleHQ+Cjx0ZXh0PjxwYXJhPkJDT0FQTyBldCBhbC4gaGFzIGNsYWltZWQgYSB0b3RhbCBvZiAyMDEgaG91cnMgZm9yIGF0dGVuZGFuY2UgYnkgaXRzIGNvdW5zZWwgYW5kIE1zLiBNYWNFYWNoZXJuIGF0IHRoZSBvcmFsIGhlYXJpbmcuICBJIGFtIHNhdGlzZmllZCB0aGF0IHRoaXMgYW1vdW50IGlzIHJlYXNvbmFibGUgYW5kIEkgd2lsbCBhbGxvdyB0aGUgYXR0ZW5kYW5jZSB0aW1lIGNsYWltZWQgZm9yIGVhY2ggaW5kaXZpZHVhbC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+V2l0aCByZXNwZWN0IHRvIHRoZSBjbGFpbSBmb3IgcHJlcGFyYXRpb24gdGltZSwgY29uc2lzdGVudCB3aXRoIHBhc3QgVGF4YXRpb24gT3JkZXJzLCBJIGNvbnNpZGVyIGl0IGFwcHJvcHJpYXRlIHRvIGFzc2VzcyB0aGUgdGltZSBjbGFpbWVkIGJ5IEJDT0FQTyBldCBhbC4gb24gYSBnbG9iYWwgYmFzaXMuICBNYWtpbmcgYW4gYWRqdXN0bWVudCB0byB0aGUgY2xhaW0gZm9yIE1zLiBNYWNFYWNoZXJuJ3MgdGltZSB0byByZWZsZWN0IHRoZSBpbnZvaWNlcyBwcm92aWRlZCBpbiBzdXBwb3J0IG9mIGhlciBjbGFpbSwgQkNPQVBPIGV0IGFsLiBoYXMgY2xhaW1lZCBhIHRvdGFsIG9mIDEsMDY2LjkgaG91cnMgb2YgcHJlcGFyYXRpb24gdGltZSBmb3IgaXRzIGNvdW5zZWwsIGNvbnN1bHRhbnQgYW5kIE1zLiBNYWNFYWNoZXJuLiAgT2YgdGhpcyBhbW91bnQsIG5lYXJseSBoYWxmLCBvciA1MDYuNSBob3VycywgcmVwcmVzZW50cyBwcmVwYXJhdGlvbiB0aW1lIGNsYWltZWQgZm9yIE1zLiBNYWNFYWNoZXJuLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JbiB0aGlzIHJlZ2FyZCwgU3RlbnRvciBzdWJtaXR0ZWQgdGhhdCBzb21lIG9mIHRoZSB3b3JrIHBlcmZvcm1lZCBieSBNcy4gTWFjRWFjaGVybiBpbmNsdWRlZCBmaWxpbmcgYW5kIG9yZ2FuaXphdGlvbi4gIFN0ZW50b3IgcmVmZXJyZWQgdG8gQXJ0aWNsZSA4IG9mIHRoZSBHdWlkZWxpbmVzLCB3aGljaCBzdGF0ZXMgdGhhdCBjb3N0cyBnZW5lcmFsbHkgd2lsbCBub3QgYmUgYXdhcmRlZCBmb3IgdGltZSBzcGVudCBieSB0aGUgYXBwbGljYW50J3Mgc3VwcG9ydCBzdGFmZiwgYWRtaW5pc3RyYXRpdmUgc3RhZmYsIG9mZmljZXJzIGFuZCBkaXJlY3RvcnMsIGFjdGluZyBhcyBzdWNoLCBpbiBjb25uZWN0aW9uIHdpdGggdGhlIGFwcGxpY2FudCdzIHBhcnRpY2lwYXRpb24gaW4gdGhlIHByb2NlZWRpbmcuICBTdGVudG9yIG5vdGVkIGl0cyB1bmRlcnN0YW5kaW5nIHRoYXQgY29zdHMgYXNzb2NpYXRlZCB3aXRoIHRoZXNlIGZ1bmN0aW9ucyBhcmUgbm9ybWFsbHkgcmVjb3ZlcmVkIGluIHRoZSByYXRlcyBhbGxvd2VkIGZvciBjb3Vuc2VsLCBjb25zdWx0YW50cyBhbmQgd2l0bmVzc2VzLCBhbmQgU3RlbnRvciBxdWVzdGlvbmVkIHdoZXRoZXIgQkNPQVBPIGV0IGFsLiBzaG91bGQgYmUgYWxsb3dlZCB0byByZWNvdmVyIHRoZXNlIGNvc3RzIHNlcGFyYXRlbHkgdGhyb3VnaCBNcy4gTWFjRWFjaGVybidzIGZlZXMuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkluIHJlcGx5LCBCQ09BUE8gZXQgYWwuIHN1Ym1pdHRlZCB0aGF0IHdpdGggcmVzcGVjdCB0byBoZXIgZmlsaW5nIGFuZCBnZW5lcmFsIGZpbGUgbWFpbnRlbmFuY2Ugd29yaywgTXMuIE1hY0VhY2hlcm4gd2FzIG5vdCBpbi1ob3VzZSBzdXBwb3J0IHN0YWZmLiAgQkNPQVBPIGV0IGFsLiBjb250ZW5kZWQgdGhhdCB0aGUgZ2VuZXJhbCBmaWxlIG1haW50ZW5hbmNlIHdvcmsgcGVyZm9ybWVkIGJ5IE1zLiBNYWNFYWNoZXJuIHdhcyB3b3JrIHRoYXQgY291bnNlbCB3b3VsZCBvdGhlcndpc2UgaGF2ZSBoYWQgdG8gZG8uPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgbm90ZSB0aGF0IHByZXZpb3VzIFRheGF0aW9uIE9yZGVycyBoYXZlIGdlbmVyYWxseSBkaXNhbGxvd2VkIHNlY3JldGFyaWFsIGV4cGVuc2VzIG9uIHRoZSBncm91bmRzIHRoYXQgc3VjaCBleHBlbnNlcyBhcmUgaW4gdGhlIG5hdHVyZSBvZiBvdmVyaGVhZC4gIEkgY29uc2lkZXIgdGhhdCwgdG8gYSBsYXJnZSBleHRlbnQsIGZpbGluZyBhbmQgb3JnYW5pemF0aW9uYWwgdGFza3MgY29uc3RpdHV0ZSB0YXNrcyB0aGF0IGNhbiBiZSBjb25zaWRlcmVkIHRvIGJlIGluIHRoZSBuYXR1cmUgb2Ygb3ZlcmhlYWQuICBJbiB0aGlzIHJlZ2FyZCwgSSBub3RlIHRoYXQgTXMuIE1hY0VhY2hlcm4ncyB0aW1lIGRvY2tldHMgaW5kaWNhdGUgdGhhdCBhcHByb3hpbWF0ZWx5IDEwMCBob3VycyB3YXMgc3BlbnQgcGVyZm9ybWluZyBmaWxpbmcgYW5kIG9yZ2FuaXphdGlvbmFsIHRhc2tzLiAgSSBhbSBub3QgcGVyc3VhZGVkIHRoYXQgdGhlIGNsYWltIGZvciB0aGlzIHRpbWUgc2hvdWxkIGJlIGFsbG93ZWQgbWVyZWx5IGJlY2F1c2UgdGhlc2UgdGFza3Mgd2VyZSBwZXJmb3JtZWQgYnkgTXMuIE1hY0VhY2hlcm4gcmF0aGVyIHRoYW4gYnkgTXMuIE1jQ29vbCdzIHNlY3JldGFyaWFsIHN0YWZmLiAgQ29zdHMgYXNzb2NpYXRlZCB3aXRoIGFkbWluaXN0cmF0aXZlIGZ1bmN0aW9ucyBhcmUgYWxyZWFkeSByZWZsZWN0ZWQgaW4gdGhlIHJhdGVzIGFsbG93ZWQgZm9yIGNvdW5zZWwsIGNvbnN1bHRhbnRzIGFuZCBleHBlcnQgd2l0bmVzc2VzLCB3aGV0aGVyIHN1Y2ggZnVuY3Rpb25zIGFyZSBwZXJmb3JtZWQgaW4taG91c2UgYnkgc2VjcmV0YXJpYWwgc3RhZmYgb3Igb24gY29udHJhY3QgYnkgYSBsYXcgc3R1ZGVudC4gIEluIHRoZSBjaXJjdW1zdGFuY2VzLCBJIGFtIG5vdCBwcmVwYXJlZCB0byBkZXBhcnQgZnJvbSB0aGUgdXN1YWwgcHJhY3RpY2Ugb2YgY29uc2lkZXJpbmcgdGhlc2UgdHlwZXMgb2YgZXhwZW5zZXMgdG8gYmUgaW4gdGhlIG5hdHVyZSBvZiBvdmVyaGVhZC4gIEFjY29yZGluZ2x5LCBJIHdpbGwgZGlzYWxsb3cgMTAwIGhvdXJzIGZvciB0aW1lIGNsYWltZWQgZm9yIE1zLiBNYWNFYWNoZXJuIHJlbGF0aW5nIHRvIHRoZSBwZXJmb3JtYW5jZSBvZiBmaWxpbmcgYW5kIG9yZ2FuaXphdGlvbmFsIHRhc2tzLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JbiBkZXRlcm1pbmluZyB3aGV0aGVyIHRoZSByZW1haW5pbmcgcHJlcGFyYXRpb24gdGltZSwgd2hpY2ggYW1vdW50cyB0byA5NjYuOSBob3VycywgaXMgcmVhc29uYWJsZSwgSSBoYXZlIGNvbnNpZGVyZWQgdGhlIG5hdHVyZSBhbmQgZXh0ZW50IG9mIEJDT0FQTyBldCBhbC4ncyBwYXJ0aWNpcGF0aW9uIGluIHRoaXMgcHJvY2VlZGluZywgdGhlIGV4cGVyaWVuY2Ugb2YgdGhlIGNsYWltYW50cyBmb3Igd2hvbSBjb3N0cyBoYXZlIGJlZW4gY2xhaW1lZCBhbmQgdGhlIGFtb3VudCBvZiB0aW1lIGNsYWltZWQgYW5kIGFsbG93ZWQgYnkgb3RoZXIgaW50ZXJ2ZW5lcnMgaW4gdGhlIHByb2NlZWRpbmcuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgbm90ZSB0aGF0IEJDT0FQTyBldCBhbC4gZGlkIG5vdCBmaWxlIGV2aWRlbmNlIG9yIGNhbGwgd2l0bmVzc2VzIGluIHRoaXMgcHJvY2VlZGluZy4gIEl0cyBwYXJ0aWNpcGF0aW9uIGNvbnNpc3RlZCBvZiB0aGUgc3VibWlzc2lvbiBvZiBpbnRlcnJvZ2F0b3JpZXMsIGNyb3NzLWV4YW1pbmF0aW9uIG9mIHdpdG5lc3NlcywgYW5kIHRoZSBzdWJtaXNzaW9uIG9mIHdyaXR0ZW4gYW5kIG9yYWwgYXJndW1lbnQuICBJbiBUYXhhdGlvbiBPcmRlciBDUlRDIDk2LTUsIGFub3RoZXIgaW50ZXJ2ZW5lciB0aGF0IHBhcnRpY2lwYXRlZCBpbiB0aGUgb3JhbCBwaGFzZSBvZiB0aGlzIHByb2NlZWRpbmcsIHRoZSBDb25zdW1lcnMnIEFzc29jaWF0aW9uIG9mIENhbmFkYSAoQ0FDKSwgd2FzIGFsbG93ZWQgcHJlcGFyYXRpb24gdGltZSBvZiAzNC41IGRheXMgZm9yIGNvdW5zZWwgYW5kIDEyMyBob3VycyBmb3IgaXRzIGNvbnN1bHRhbnQuICBCYXNlZCBvbiBhIHNldmVuIGhvdXIgZGF5LCB0aGUgdG90YWwgcHJlcGFyYXRpb24gdGltZSBhbGxvd2VkIGZvciBDQUMgYW1vdW50cyB0byAzNjQuNSBob3Vycy4gIEkgbm90ZSB0aGF0LCBsaWtlIEJDT0FQTyBldCBhbC4sIENBQyBkaWQgbm90IGZpbGUgZXZpZGVuY2Ugb3IgY2FsbCB3aXRuZXNzZXMuICBJIGZ1cnRoZXIgbm90ZSwgaG93ZXZlciwgdGhhdCBCQ09BUE8gZXQgYWwuIGNvbmR1Y3RlZCBhIGdyZWF0ZXIgYW1vdW50IG9mIGNyb3NzLWV4YW1pbmF0aW9uIG9uIGEgYnJvYWRlciByYW5nZSBvZiBpc3N1ZXMgdGhhbiBkaWQgQ0FDLiAgSSBhbHNvIG5vdGUgdGhhdCBDQUMgZGlkIG5vdCBwcmVzZW50IG9yYWwgYXJndW1lbnQuICBJbiBUYXhhdGlvbiBPcmRlciBDUlRDIDk2LTYsIHRoZSBG6WTpcmF0aW9uIE5hdGlvbmFsZSBkZXMgQXNzb2NpYXRpb25zIGRlIENvbnNvbW1hdGV1cnMgZHUgUXXpYmVjL05hdGlvbmFsIEFudGktUG92ZXJ0eSBPcmdhbml6YXRpb24gKEZOQUNRL05BUE8pIHdhcyBhbGxvd2VkIGEgdG90YWwgb2YgMSw0NTAgaG91cnMgb2YgcHJlcGFyYXRpb24gdGltZSBmb3IgaXRzIGNvdW5zZWwsIGFuYWx5c3QsIGNvbnN1bHRhbnQgYW5kIGV4cGVydHMuICBUaGlzIGFtb3VudCwgd2hpY2ggZXhjbHVkZXMgcHJlcGFyYXRpb24gdGltZSBmb3IgY29uc3VsdGFudHMgYW5kIGV4cGVydCB3aXRuZXNzZXMgcmVsYXRpbmcgdG8gdGhlIExvY2FsIEV4Y2hhbmdlIENvc3QgT3B0aW1pemF0aW9uIE1vZGVsIChMRUNPTSkgZXZpZGVuY2UsIHJlZmxlY3RzIEZOQUNRL05BUE8ncyBleHRlbnNpdmUgcGFydGljaXBhdGlvbiBpbiBtb3N0IG9mIHRoZSBpc3N1ZXMgYmVpbmcgY29uc2lkZXJlZCBieSB0aGUgQ29tbWlzc2lvbiBpbiB0aGUgcHJvY2VlZGluZyBsZWFkaW5nIHRvIERlY2lzaW9uIDk1LTIxLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JIGNvbnNpZGVyIHRoYXQgQkNPQVBPIGV0IGFsLiBwYXJ0aWNpcGF0ZWQgaW4gdGhpcyBwcm9jZWVkaW5nIHRvIGEgZ3JlYXRlciBleHRlbnQgdGhhbiBkaWQgQ0FDLCBidXQgdG8gYSBtdWNoIGxlc3NlciBleHRlbnQgdGhhbiBkaWQgRk5BQ1EvTkFQTy4gIEluIHRoZSBjaXJjdW1zdGFuY2VzLCBhIGNsYWltIGZvciBwcmVwYXJhdGlvbiB0aW1lIG9mIDEsMDY2LjkgaG91cnMgYXBwZWFycyB0byBiZSBpbiBleGNlc3Mgb2Ygd2hhdCBjYW4gYmUgY29uc2lkZXJlZCByZWFzb25hYmxlIGFuZCBuZWNlc3NhcnkuICBJIG5vdGUsIGhvd2V2ZXIsIHRoYXQgYSBsYXJnZSBwb3J0aW9uIG9mIEJDT0FQTyBldCBhbC4ncyBjbGFpbSBmb3IgcHJlcGFyYXRpb24gdGltZSByZXByZXNlbnRzIHRpbWUgY2xhaW1lZCBmb3IgTXMuIE1hY0VhY2hlcm4uICBJIGFtIG1pbmRmdWwgb2YgTXMuIE1hY0VhY2hlcm4ncyBpbmV4cGVyaWVuY2UgYW5kIGxvdyBob3VybHkgcmF0ZSwgYW5kIEkgaGF2ZSB0YWtlbiB0aGVzZSBmYWN0b3JzIGludG8gY29uc2lkZXJhdGlvbiBpbiBhc3Nlc3NpbmcgdGhlIHJlYXNvbmFibGVuZXNzIG9mIEJDT0FQTyBldCBhbC4ncyB0b3RhbCBjbGFpbSBmb3IgcHJlcGFyYXRpb24gdGltZS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SW4gbXkgdmlldywgYXNpZGUgZnJvbSB0aGUgaG91cnMgY2xhaW1lZCBmb3IgdGFza3MgcGVyZm9ybWVkIHRoYXQgd2VyZSBpbiB0aGUgbmF0dXJlIG9mIG92ZXJoZWFkLCB3aGljaCBJIGhhdmUgYWxyZWFkeSBkaXNhbGxvd2VkLCB0aGUgcmVtYWluaW5nIHByZXBhcmF0aW9uIHRpbWUgY2xhaW1lZCBmb3IgTXMuIE1hY0VhY2hlcm4gaXMgcmVhc29uYWJsZS4gIEFjY29yZGluZ2x5LCBJIHdpbGwgYWxsb3cgNDA2LjUgaG91cnMgZm9yIHByZXBhcmF0aW9uIHRpbWUgZm9yIE1zLiBNYWNFYWNoZXJuLCBpbiBhZGRpdGlvbiB0byAxMjIgaG91cnMgb2YgYXR0ZW5kYW5jZSB0aW1lLiAgQ29uc2lzdGVudCB3aXRoIG15IGVhcmxpZXIgZGV0ZXJtaW5hdGlvbnMgcmVnYXJkaW5nIHRoZSBhcHByb3ByaWF0ZSByYXRlcyBmb3IgTXMuIE1hY0VhY2hlcm4sIEkgd2lsbCBhbGxvdyA0NDMuOSBob3VycyBhdCBhIHJhdGUgb2YgJDE1IHBlciBob3VyIGFuZCA4NC42IGhvdXJzIGF0IGEgcmF0ZSBvZiAkMTIuNTAgcGVyIGhvdXIsIGZvciBhIHRvdGFsIG9mICQ3LDcxNi4wMC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QkNPQVBPIGV0IGFsLidzIGNsYWltIGZvciBwcmVwYXJhdGlvbiB0aW1lIGZvciBjb3Vuc2VsIGFuZCBNci4gVG9kZCBhbW91bnRzIHRvIDU2MC40IGhvdXJzLiAgQWJzZW50IHRoZSBjbGFpbSBmb3IgTXMuIE1hY0VhY2hlcm4ncyB0aW1lLCBJIHdvdWxkIGNvbnNpZGVyIHRoaXMgdG8gYmUgYSByZWFzb25hYmxlIGFtb3VudCBvZiB0aW1lIGZvciBwcmVwYXJhdGlvbiwgZ2l2ZW4gdGhlIG5hdHVyZSBhbmQgZXh0ZW50IG9mIEJDT0FQTyBldCBhbC4ncyBwYXJ0aWNpcGF0aW9uIGluIHRoaXMgcHJvY2VlZGluZy4gIEhvd2V2ZXIsIGluIGxpZ2h0IG9mIE1zLiBNYWNFYWNoZXJuJ3MgYXNzaXN0YW5jZSwgSSBjb25zaWRlciB0aGF0IHRoZSBvdGhlciBpbmRpdmlkdWFscyBmb3Igd2hvbSBCQ09BUE8gZXQgYWwuIGhhcyBjbGFpbWVkIGNvc3RzIHNob3VsZCBoYXZlIHJlcXVpcmVkIGxlc3MgcHJlcGFyYXRpb24gdGltZS4gIE9uIGJhbGFuY2UsIEkgY29uc2lkZXIgdGhhdCA1MDAgaG91cnMgaXMgYSByZWFzb25hYmxlIGFsbG93YW5jZSBmb3IgcHJlcGFyYXRpb24gdGltZSBmb3IgY291bnNlbCBhbmQgTXIuIFRvZGQuICBJIGNvbnNpZGVyIHRoYXQgdGhlIGZhaXJlc3QgYW5kIG1vc3QgYXBwcm9wcmlhdGUgbWV0aG9kIG9mIGFwcG9ydGlvbmluZyB0aGlzIGFtb3VudCBhbW9uZ3N0IHRoZSBpbmRpdmlkdWFsIGNsYWltYW50cyBpcyB0byBhbGxvY2F0ZSB0aGUgdG90YWwgdGltZSBvbiBhIHBybyByYXRhIGJhc2lzLiAgQWNjb3JkaW5nbHksIGZvciBwcmVwYXJhdGlvbiB0aW1lLCBJIHdpbGwgYWxsb3cgMTIzLjUgaG91cnMgZm9yIE1zLiBNY0Nvb2wsIDEyMS41IGhvdXJzIGZvciBNci4gQmx1bWVuZmVsZCwgMTA1IGhvdXJzIGZvciBNcy4gS3VuaW4gYW5kIDE1MCBob3VycyBmb3IgTXIuIFRvZGQuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+RGlzYnVyc2VtZW50czwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5CQ09BUE8gZXQgYWwuIGNsYWltZWQgZGlzYnVyc2VtZW50cyBvZiBDRE4gJDQwLDk3OC4zNSBhbmQgVVMgJDIsNzg4LjMzLiAgQXMgbm90ZWQgZWFybGllciwgaW4gY29udmVydGluZyB0aGUgYW1vdW50IGNsYWltZWQgaW50byBDYW5hZGlhbiBkb2xsYXJzLCBJIGhhdmUgdXNlZCBhIHJhdGUgb2YgZXhjaGFuZ2Ugb2YgQ0ROICQxLjM1PVVTICQxLjAwLiAgQWNjb3JkaW5nIHRvIHRoZSBzdXBwb3J0aW5nIGRvY3VtZW50YXRpb24sIHRoaXMgaXMgdGhlIHJhdGUgZW1wbG95ZWQgYnkgQkNPQVBPIGV0IGFsLidzIFUuUy4gY291bnNlbCBpbiB0aGlzIGNhc2UsIGFuZCBJIGNvbnNpZGVyIGl0IHRvIGJlIGFuIGFwcHJvcHJpYXRlIHJhdGUgb2YgZXhjaGFuZ2UgZm9yIHRoZSBwdXJwb3NlcyBvZiB0aGlzIHRheGF0aW9uLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5TdGVudG9yIG5vdGVkIHRoYXQgQkNPQVBPIGV0IGFsLiBjbGFpbWVkIGNvc3RzIGJvdGggZm9yICJ3b3JraW5nIG1lYWxzIiBhbmQgZm9yIG1lYWxzIGF0IHRoZSA8aXRhbGljPnBlciBkaWVtPC9pdGFsaWM+IHJhdGUgc2V0IG91dCBpbiB0aGUgR3VpZGVsaW5lcy4gIFN0ZW50b3Igc3VibWl0dGVkIHRoYXQgd2hlcmUgYW4gYXBwbGljYW50IGlzIGNsYWltaW5nIGJvdGggdGhlIDxpdGFsaWM+cGVyIGRpZW08L2l0YWxpYz4gcmF0ZSBmb3IgbWVhbHMgYW5kIG1lYWxzIGJhc2VkIG9uIHJlY2VpcHRzLCB0aGUgYXBwbGljYW50IHNob3VsZCBiZSByZXF1aXJlZCB0byBkZW1vbnN0cmF0ZSB0aGF0IHRoZSBjbGFpbXMgYXJlIG5vdCBkdXBsaWNhdGVkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JbiBpdHMgcmVwbHksIEJDT0FQTyBldCBhbC4gYWdyZWVkIHdpdGggU3RlbnRvciB0aGF0IGFueSBzZXBhcmF0ZSBjbGFpbSBmb3Igd29ya2luZyBtZWFscyBpbiBhZGRpdGlvbiB0byBhIDxpdGFsaWM+cGVyIGRpZW08L2l0YWxpYz4gc2hvdWxkIGJlIHNlcGFyYXRlbHkganVzdGlmaWVkLiAgQkNPQVBPIGV0IGFsLiBpbmRpY2F0ZWQgdGhhdCBpdCB3b3VsZCByZXZpZXcgaXRzIGZpbGUgYW5kIG1ha2UgYW55IGFkanVzdG1lbnRzIHRoYXQgYXJlIGFwcHJvcHJpYXRlLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JIGFncmVlIHdpdGggU3RlbnRvciB0aGF0IGFuIGFwcGxpY2FudCBjbGFpbWluZyBtZWFscyBvbiBib3RoIGEgPGl0YWxpYz5wZXIgZGllbTwvaXRhbGljPiBiYXNpcyBhbmQgb24gdGhlIGJhc2lzIG9mIHJlY2VpcHRzIHNob3VsZCBkZW1vbnN0cmF0ZSB0aGF0IHRoZSBjbGFpbXMgYXJlIG5vdCBkdXBsaWNhdGVkLiAgSSBub3RlIHRoYXQgQkNPQVBPIGV0IGFsLiBoYXMgbm90IGZpbGVkIGFueSBmdXJ0aGVyIGFkanVzdG1lbnRzIG9yIHN1Ym1pc3Npb25zIHdpdGggcmVzcGVjdCB0byBpdHMgY2xhaW0gZm9yIG1lYWwgZXhwZW5zZXMuICBJbiB0aGUgY2lyY3Vtc3RhbmNlcywgSSB3aWxsIGRpc2FsbG93IHRoZSBjbGFpbSBmb3IgIndvcmtpbmcgbWVhbHMiIGluIGl0cyBlbnRpcmV0eS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+V2l0aCByZXNwZWN0IHRvIEJDT0FQTyBldCBhbC4ncyBjbGFpbSBmb3IgYWNjb21tb2RhdGlvbiBleHBlbnNlcywgSSBub3RlIHRoYXQgdGhlIHJlY2VpcHRzIHN1Ym1pdHRlZCBpbiBzdXBwb3J0IG9mIHRoaXMgY2xhaW0gaW5kaWNhdGUgdGhhdCBpbiBzZXZlcmFsIGluc3RhbmNlcywgdGhlIGNvc3RzIG9mIGluLXN1aXRlIG1vdmllcyBhbmQgcm9vbSBzZXJ2aWNlIHdlcmUgaW5jbHVkZWQgaW4gdGhlIGFtb3VudCBjbGFpbWVkLiAgSSBkbyBub3QgY29uc2lkZXIgdGhhdCBob3RlbCBtb3ZpZXMgY29uc3RpdHV0ZSByZWFzb25hYmxlIGFuZCBuZWNlc3NhcnkgZXhwZW5kaXR1cmVzLCBhbmQgSSBoYXZlIGRlZHVjdGVkIHRoZXNlIGV4cGVuc2VzIGZyb20gdGhlIHRvdGFsIGFtb3VudCBjbGFpbWVkLiAgSSBoYXZlIGFsc28gZGVkdWN0ZWQgcm9vbSBzZXJ2aWNlIGNoYXJnZXMgZnJvbSB0aGUgdG90YWwgY2xhaW0sIHNpbmNlLCBhcyBub3RlZCBhYm92ZSwgQkNPQVBPIGV0IGFsLiBoYXMgY2xhaW1lZCBhIDxpdGFsaWM+cGVyIGRpZW08L2l0YWxpYz4gcmF0ZSBmb3IgbWVhbHMgZm9yIGFsbCBjbGFpbWFudHMuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgd2lsbCBhbGxvdyB0aGUgYmFsYW5jZSBvZiB0aGUgZGlzYnVyc2VtZW50cyBhcyBjbGFpbWVkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkFwcGxpY2F0aW9uIG9mIENvc3RzIE9yZGVyIDk1LTEwPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkluIGl0cyBsZXR0ZXIgb2YgMzAgTm92ZW1iZXIgMTk5NSwgQkNPQVBPIGV0IGFsLiBzdWJtaXR0ZWQgdGhhdCwgdG8gdGhlIGV4dGVudCB0aGF0IENvc3RzIE9yZGVyIDk1LTEwIHJlZHVjZWQgdGhlIGFtb3VudCBvZiBjb3N0cyByZWNvdmVyYWJsZSBvbiB0aGUgZ3JvdW5kcyB0aGF0IEJDT0FQTyBldCBhbC4ncyBzdWJtaXNzaW9ucyBvbiB0aGUgaXNzdWUgb2YgYWZmb3JkYWJpbGl0eSB3ZXJlIG5vdCBvZiBhc3Npc3RhbmNlLCBjb3N0cyBjbGFpbWVkIGZvciBNci4gQmx1bWVuZmVsZCwgTXMuIEt1bmluIGFuZCBNci4gVG9kZCBzaG91bGQgbm90IGJlIHJlZHVjZWQsIGFzIHRoZXNlIGNsYWltYW50cyBkaWQgbGl0dGxlIG9yIG5vIHdvcmsgb24gdGhlIGlzc3VlIG9mIGFmZm9yZGFiaWxpdHkuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlN0ZW50b3Igc3VibWl0dGVkIHRoYXQgQkNPQVBPIGV0IGFsLidzIHByb3Bvc2FsIGlzIHVud2FycmFudGVkLiAgU3RlbnRvciBzdGF0ZWQgdGhhdCB0aGUgQ29tbWlzc2lvbiwgaW4gQ29zdHMgT3JkZXIgOTUtMTAsIGZvdW5kIHRoYXQgQkNPQVBPIGV0IGFsLidzIHBhcnRpY2lwYXRpb24gZGlkIG5vdCBmdWxseSBjb250cmlidXRlIHRvIGEgYmV0dGVyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGlzc3VlcyBieSB0aGUgQ29tbWlzc2lvbiBhbmQsIGFzIGEgcmVzdWx0LCBjaG9zZSB0byBhd2FyZCBCQ09BUE8gZXQgYWwuIDc1JSBvZiBpdHMgY29zdHMgb2YgcGFydGljaXBhdGlvbi4gIFN0ZW50b3Igc3VibWl0dGVkIHRoYXQgdGhlIFRheGluZyBPZmZpY2VyIG11c3QgZ2l2ZSBlZmZlY3QgdG8gdGhlIHVuYW1iaWd1b3VzIGZpbmRpbmcgb2YgdGhlIENvbW1pc3Npb24gaW4gQ29zdHMgT3JkZXIgOTUtMTAuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkluIHJlcGx5LCBCQ09BUE8gZXQgYWwuIGFyZ3VlZCB0aGF0IHRoZSBDb21taXNzaW9uJ3Mgb25seSBzdGF0ZWQgcmVhc29uIGZvciByZWR1Y2luZyBCQ09BUE8gZXQgYWwuJ3MgY29zdHMgaW4gQ29zdHMgT3JkZXIgOTUtMTAgd2FzIGl0cyBjb25jZXJucyB3aXRoIEJDT0FQTyBldCBhbC4ncyBjb250cmlidXRpb25zIG9uIHRoZSBhZmZvcmRhYmlsaXR5IGlzc3VlLiAgQkNPQVBPIGV0IGFsLiByZXN0YXRlZCBpdHMgcmVsaWFuY2Ugb24gaXRzIG9yaWdpbmFsIHN1Ym1pc3Npb25zIGluIHRoaXMgcmVnYXJkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JbiBDb3N0cyBPcmRlciA5NS0xMCwgdGhlIENvbW1pc3Npb24gZGV0ZXJtaW5lZCB0aGF0IGl0IHdhcyB1bmFibGUgdG8gY29uY2x1ZGUgdGhhdCBhbGwgYXNwZWN0cyBvZiBCQ09BUE8gZXQgYWwuJ3MgcGFydGljaXBhdGlvbiBpbiB0aGUgcHJvY2VlZGluZyBsZWFkaW5nIHRvIERlY2lzaW9uIDk1LTIxIGNvbnRyaWJ1dGVkIHRvIGEgYmV0dGVyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGlzc3VlcyBieSB0aGUgQ29tbWlzc2lvbi4gIEZvciBleGFtcGxlLCB0aGUgQ29tbWlzc2lvbiBub3RlZCB0aGF0IG11Y2ggb2YgQkNPQVBPIGV0IGFsLidzIGNyb3NzLWV4YW1pbmF0aW9uIG9uIHRoZSBpc3N1ZSBvZiBhZmZvcmRhYmlsaXR5IHdhcyBvZiBsaW1pdGVkIGFzc2lzdGFuY2UuICBUaGUgQ29tbWlzc2lvbiBhbHNvIG5vdGVkIHRoYXQgaXQgY29uc2lkZXJlZCB0aGF0IHBvcnRpb25zIG9mIEJDT0FQTyBldCBhbC4ncyBmaW5hbCBhcmd1bWVudCBmYWlsZWQgdG8gY29udHJpYnV0ZSB0byBhIGJldHRlciB1bmRlcnN0YW5kaW5nIG9mIHRoZSBpc3N1ZXMuICBJbiB0aGUgY2lyY3Vtc3RhbmNlcywgdGhlIENvbW1pc3Npb24gY29uY2x1ZGVkIHRoYXQgQkNPQVBPIGV0IGFsLiBzaG91bGQgYmUgZW50aXRsZWQgdG8gNzUlIG9mIGl0cyBjb3N0cyBvZiBwYXJ0aWNpcGF0aW9uIGluIHRoZSBwcm9jZWVkaW5nLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JIGFtIHVucGVyc3VhZGVkIGJ5IEJDT0FQTyBldCBhbC4ncyBzdWJtaXNzaW9ucyBvbiB0aGlzIGlzc3VlLiAgQ29zdHMgT3JkZXIgOTUtMTAgZGlkIG5vdCBkaXNhbGxvdyBvbmx5IGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgaXNzdWUgb2YgYWZmb3JkYWJpbGl0eS4gIEFzIFN0ZW50b3Igbm90ZXMsIGhhZCB0aGUgQ29tbWlzc2lvbiB3aXNoZWQgdG8gbGltaXQgaXRzIGNvc3RzIGRpc2FsbG93YW5jZSB0byBjb3N0cyBhc3NvY2lhdGVkIHdpdGggYSBwYXJ0aWN1bGFyIGlzc3VlLCBpdCBjb3VsZCBoYXZlIGRvbmUgc28sIGFzIGl0IGRpZCBpbiBUZWxlY29tIENvc3RzIE9yZGVyIENSVEMgOTUtMTMsIDEgTm92ZW1iZXIgMTk5NSwgaW4gd2hpY2ggRk5BQ1EvTkFQTyB3YXMgZGVuaWVkIGNvc3RzIGZvciBleHBlcnRzIGFuZCBjb25zdWx0YW50cyBhc3NvY2lhdGVkIHdpdGggdGhlIExFQ09NIGV2aWRlbmNlLiAgSW4gbXkgdmlldywgSSBoYXZlIG5vIGRpc2NyZXRpb24gdG8gYWx0ZXIgdGhlIHRlcm1zIG9mIENvc3RzIE9yZGVyIDk1LTEwLCB3aGljaCBjbGVhcmx5IHN0YXRlcyB0aGF0IEJDT0FQTyBldCBhbC4gaXMgZW50aXRsZWQgdG8gNzUlIG9mIGl0cyB0b3RhbCBjb3N0cyBvZiBwYXJ0aWNpcGF0aW9uLiAgQWNjb3JkaW5nbHksIEkgYW0gdW5hYmxlIHRvIGFjY2VkZSB0byBCQ09BUE8gZXQgYWwuJ3MgcmVxdWVzdCB0aGF0IHRoZSBob3VycyBhbGxvd2VkIGZvciBNci4gQmx1bWVuZmVsZCwgTXMuIEt1bmluIGFuZCBNci4gVG9kZCBub3QgYmUgcmVkdWNlZCBieSAyNSUuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+Q29zdHMgYXMgVGF4ZWQ8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSBoZXJlYnkgdGF4IHRoZSBmZWVzIGFuZCBkaXNidXJzZW1lbnRzLCBpbmNsdXNpdmUgb2YgUFNUIGFuZCBHU1QsIHdoZXJlIGFwcGxpY2FibGUsIGFzIGZvbGxvd3M6PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+RmVlczwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Ncy4gTWNDb29sICAgICAgICAgICAgICAgICAgICAgICAgICAgICQ0MywzOTQuMTA8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TXIuIEJsdW1lbmZlbGQgICAgICAgICAgICAgICAgICAgICAgICAkMzEsODU1LjAwPC9wYXJhPgo8cGFyYT5Ncy4gS3VuaW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDE0LDM3NS4wMDwvcGFyYT4KPHBhcmE+TXIuIFRvZGQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQyNSw2ODAuMDA8L3BhcmE+CjxwYXJhPk1zLiBNYWNFYWNoZXJuICAgICAgICAgICAgICAgICAgICAgICAkNyw3MTYuMDA8L3BhcmE+CjxwYXJhPjx1bmRlcmxpbmU+VG90YWwgRmVlczwvdW5kZXJsaW5lPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVuZGVybGluZT4kMTIzLDAyMC4xMDwvdW5kZXJsaW5lPjwvcGFyYT4KPHBhcmE+PHVuZGVybGluZT5EaXNidXJzZW1lbnRzPC91bmRlcmxpbmU+PC9wYXJhPgo8cGFyYT5Jbi1ob3VzZSBwaG90b2NvcGllcyAgICAgICAgICAgICAgICAgICAgJDc3Ny45MDwvcGFyYT4KPHBhcmE+T3RoZXIgcGhvdG9jb3BpZXMgICAgICAgICAgICAgICAgICAgICAkMSw1NTguNjY8L3BhcmE+CjxwYXJhPkxvbmcgZGlzdGFuY2UgKHRlbGVwaG9uZS9mYXgpICAgICAgICAkNTM4Ljk0PC9wYXJhPgo8cGFyYT5Db3VyaWVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQyLDgzNS41MDwvcGFyYT4KPHBhcmE+UG9zdGFnZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQyMTUuNDk8L3BhcmE+CjxwYXJhPlRyYW5zY3JpcHRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkNyw0MzEuMTU8L3BhcmE+CjxwYXJhPkFpciB0cmF2ZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQxMiw1ODUuMjM8L3BhcmE+CjxwYXJhPkFpcnBvcnQgdGF4ZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkNjAuMDA8L3BhcmE+CjxwYXJhPlBhcmtpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDE1OC44MjwvcGFyYT4KPHBhcmE+VGF4aSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDEsMTc1Ljk1PC9wYXJhPgo8cGFyYT5BY2NvbW1vZGF0aW9uICAgICAgICAgICAgICAgICAgICAgICQxMSw3MzkuNjc8L3BhcmE+CjxwYXJhPk1lYWxzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDQsNDE2LjAwPC9wYXJhPgo8cGFyYT5TdXBwbGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDQ0Ni43MzwvcGFyYT4KPHBhcmE+RmF4IHNlcnZpY2VzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMzcxLjI5PC9wYXJhPgo8cGFyYT48dW5kZXJsaW5lPlRvdGFsIERpc2J1cnNlbWVudHM8L3VuZGVybGluZT4gICAgICAgICAgICAgICAgPHVuZGVybGluZT4kNDQsMzExLjMzPC91bmRlcmxpbmU+PC9wYXJhPgo8cGFyYT48dW5kZXJsaW5lPlN1Yi10b3RhPC91bmRlcmxpbmU+bCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dW5kZXJsaW5lPiQxNjcsMzMxLjQzPC91bmRlcmxpbmU+PC9wYXJhPgo8cGFyYT5MZXNzIDI1JSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkNDEsODMyLjg2PC9wYXJhPgo8cGFyYT48dW5kZXJsaW5lPlRvdGFsIEZlZXMgYW5kPC91bmRlcmxpbmU+PC9wYXJhPgo8cGFyYT48dW5kZXJsaW5lPkRpc2J1cnNlbWVudHMgT3dpbmc8L3VuZGVybGluZT4gICAgICAgICAgICA8dW5kZXJsaW5lPiQxMjUsNDk4LjU3PC91bmRlcmxpbmU+PC9wYXJhPgo8cGFyYT5BcyBub3RlZCBhYm92ZSwgdGhpcyBhbW91bnQgaXMgdG8gYmUgcGFpZCBieSB0aGUgcmVzcG9uZGVudHMgaWRlbnRpZmllZCBpbiBDb3N0cyBPcmRlciA5NS0xMCBpbiB0aGUgcHJvcG9ydGlvbnMgc2V0IG91dCBpbiB0aGF0IG9yZGVyLjwvcGFyYT4KPHBhcmE+TG9yaSBBc3NoZXRvbi1TbWl0aDwvcGFyYT4KPHBhcmE+TGVnYWwgQ291bnNlbDwvcGFyYT4KPHBhcmE+Q2FuYWRpYW4gUmFkaW8tdGVsZXZpc2lvbiBhbmQ8L3BhcmE+CjxwYXJhPlRlbGVjb21tdW5pY2F0aW9ucyBDb21taXNzaW9uPC9wYXJhPgo8L3RleHQ+Cjx3YXJuaW5nPlRoZSBvZmZpY2lhbCB2ZXJzaW9uIG9mIHRoaXMgZG9jdW1lbnQgaXMgYXZhaWxhYmxlIGF0IHRoZSBmb2xsb3dpbmcgSW50ZXJuZXQgc2l0ZTogaHR0cDovL3d3dy5jcnRjLmdjLmNhPC93YXJuaW5nPgo8Y29weXJpZ2h0PkNvcHlyaWdodCBDYW5hZGlhbiBSYWRpby10ZWxldmlzaW9uIGFuZCBUZWxlY29tbXVuaWNhdGlvbnMgQ29tbWlzc2lvbiwgIDE5OTkuPC9jb3B5cmlnaHQ+CjwvdGVsZWNvbT4KPHRlbGVjb20+Cjxscj5PdHRhd2EsPC9scj4KPGRhdGU+IDE3IEFwcmlsIDE5OTY8L2RhdGU+Cjx0eXBkb2M+VGF4YXRpb24gT3JkZXIgPC90eXBkb2M+CjxkZWNpc2lvbj48cGFyYT5DUlRDIDk2LTY8L3BhcmE+CjwvZGVjaXNpb24+CjxwYXJ0aWVzPjxwYXJhPjx1bmRlcmxpbmU+SW4gcmU6ICBJbXBsZW1lbnRhdGlvbiBvZiBSZWd1bGF0b3J5IEZyYW1ld29yayAtIFNwbGl0dGluZyBvZiB0aGUgUmF0ZSBCYXNlIGFuZCBSZWxhdGVkIElzc3VlcywgVGVsZWNvbSBEZWNpc2lvbiBDUlRDIDk1LTIxIGFuZCBUZWxlY29tIENvc3RzIE9yZGVyIENSVEMgOTUtMTM8L3VuZGVybGluZT48L3BhcmE+CjwvcGFydGllcz4KPHRleHQ+PHBhcmE+UGhpbGlwcGEgTGF3c29uIGZvciB0aGUgRulk6XJhdGlvbiBOYXRpb25hbGUgZGVzIEFzc29jaWF0aW9ucyBkZSBDb25zb21tYXRldXJzIGR1IFF16WJlYyBhbmQgdGhlIE5hdGlvbmFsIEFudGktUG92ZXJ0eSBPcmdhbml6YXRpb24gKEZOQUNRL05BUE8pLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5EZW5pcyBIZW5yeSBmb3IgU3RlbnRvciBSZXNvdXJjZSBDZW50cmUgSW5jLiAoU3RlbnRvcikuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+VEFYQVRJT04gT0YgQ09TVFMgT0YgRk5BQ1EvTkFQTzwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UYXhpbmcgT2ZmaWNlcjogIExvcmkgQXNzaGV0b24tU21pdGg8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+VGhpcyBvcmRlciBjb25zdGl0dXRlcyB0aGUgdGF4YXRpb24gb2YgY29zdHMgYXdhcmRlZCB0byBGTkFDUS9OQVBPIGluIHRoZSBwcm9jZWVkaW5nIGxlYWRpbmcgdG8gPHVuZGVybGluZT5JbXBsZW1lbnRhdGlvbiBvZiBSZWd1bGF0b3J5IEZyYW1ld29yayAtIFNwbGl0dGluZyBvZiB0aGUgUmF0ZSBCYXNlIGFuZCBSZWxhdGVkIElzc3VlczwvdW5kZXJsaW5lPiwgVGVsZWNvbSBEZWNpc2lvbiBDUlRDIDk1LTIxLCAzMSBPY3RvYmVyIDE5OTUgKERlY2lzaW9uIDk1LTIxKS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SW4gVGVsZWNvbSBDb3N0cyBPcmRlciBDUlRDIDk1LTUsIDE5IEFwcmlsIDE5OTUgKENvc3RzIE9yZGVyIDk1LTUpLCB0aGUgQ29tbWlzc2lvbiBncmFudGVkIEZOQUNRL05BUE8gYW4gaW50ZXJpbSBhd2FyZCBvZiBjb3N0cyBsaW1pdGVkIHRvIHRoZSBjb3N0IG9mIG9uZSBoYXJkIGNvcHkgYW5kIG9uZSBlbGVjdHJvbmljIGNvcHkgb2YgdGhlIGhlYXJpbmcgdHJhbnNjcmlwdCwgYXMgd2VsbCBhcyBhIG1heGltdW0gb2YgJDE1LDAwMCBmb3IgZGlzYnVyc2VtZW50cyBvdGhlciB0aGFuIGZlZXMgb3IgdHJhbnNjcmlwdHMuICBUaGUgb3JkZXIgZGlyZWN0ZWQgdGhlIHJlc3BvbmRlbnRzIHRvIGNvbnRyaWJ1dGUgdG8gdGhlIGludGVyaW0gY29zdHMgYXdhcmQgaW4gcHJvcG9ydGlvbiB0byB0aGVpciBvcGVyYXRpbmcgcmV2ZW51ZXMgZnJvbSB0ZWxlY29tbXVuaWNhdGlvbnMgYWN0aXZpdGllcywgYXMgcmVwb3J0ZWQgaW4gZWFjaCBjb21wYW55J3MgbW9zdCByZWNlbnQgYXVkaXRlZCBmaW5hbmNpYWwgc3RhdGVtZW50cy48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+RmluYWwgY29zdHMgd2VyZSBhd2FyZGVkIHRvIEZOQUNRL05BUE8gb24gYSBwYXJ0aWFsIGJhc2lzIGJ5IFRlbGVjb20gQ29zdHMgT3JkZXIgQ1JUQyA5NS0xMywgMSBOb3ZlbWJlciAxOTk1IChDb3N0cyBPcmRlciA5NS0xMyksIGluIGFjY29yZGFuY2Ugd2l0aCBzdWJzZWN0aW9uIDQ0KDEpIG9mIHRoZSA8dW5kZXJsaW5lPkNSVEMgVGVsZWNvbW11bmljYXRpb25zIFJ1bGVzIG9mIFByb2NlZHVyZTwvdW5kZXJsaW5lPi4gIEluIENvc3RzIE9yZGVyIDk1LTEzLCBGTkFDUS9OQVBPIHdhcyBhd2FyZGVkIGFsbCBjb3N0cyBvZiBpdHMgcGFydGljaXBhdGlvbiBpbiB0aGUgcHJvY2VlZGluZyBsZWFkaW5nIHRvIERlY2lzaW9uIDk1LTIxLCBvdGhlciB0aGFuIGNvc3RzIGZvciBmZWVzIGFuZCBkaXNidXJzZW1lbnRzIG9mIGV4cGVydHMvY29uc3VsdGFudHMgcmV0YWluZWQgYnkgRk5BQ1EvTkFQTyBmb3IgYW55IHdvcmsgY29uZHVjdGVkIGluIHJlbGF0aW9uIHRvIHRoZSBMb2NhbCBFeGNoYW5nZSBDb3N0IE9wdGltaXphdGlvbiBNb2RlbCAoTEVDT00pLiAgQ29zdHMgT3JkZXIgOTUtMTMgZGlyZWN0ZWQgZWFjaCByZXNwb25kZW50IG5hbWVkIGluIENvc3RzIE9yZGVyIDk1LTUgdG8gY29udHJpYnV0ZSB0byB0aGUgZmluYWwgYXdhcmQgb2YgY29zdHMgaW4gdGhlIHByb3BvcnRpb25zIHNldCBvdXQgaW4gQ29zdHMgT3JkZXIgOTUtMTMuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk9uIDYgRGVjZW1iZXIgMTk5NSwgRk5BQ1EvTkFQTyBzdWJtaXR0ZWQgYSBGaW5hbCBCaWxsIG9mIENvc3RzIGluIHRoZSBhbW91bnQgb2YgJDI4Nyw3NDguODUsIGNvbnNpc3Rpbmcgb2YgJDI1MCwwNzYuNTAgaW4gZmVlcyBhbmQgJDM3LDY3Mi4zNSBpbiBkaXNidXJzZW1lbnRzLCBvZiB3aGljaCAkMjAsMDAwIHdhcyBiaWxsZWQgYW5kIHJlY292ZXJlZCBwdXJzdWFudCB0byBDb3N0cyBPcmRlciA5NS01LiAgVGhlc2UgYW1vdW50cyBhcmUgaW5jbHVzaXZlIG9mIFBTVCBhbmQgMy41JSBHU1QsIGluIHJlY29nbml0aW9uIG9mIHRoZSA1MCUgR1NUIHJlYmF0ZSB0byB3aGljaCBGTkFDUS9OQVBPIGlzIGVudGl0bGVkIGluIHRoZSBjaXJjdW1zdGFuY2VzIG9mIHRoaXMgY2FzZS4gPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkluIGEgbGV0dGVyIGFjY29tcGFueWluZyB0aGUgQmlsbCBvZiBDb3N0cywgRk5BQ1EvTkFQTyBjb25maXJtZWQgdGhhdCB0aGUgQmlsbCBvZiBDb3N0cyBkb2VzIG5vdCBpbmNsdWRlIGFueSB0aW1lIG9yIGV4cGVuc2VzIGluY3VycmVkIGJ5IGl0cyBleHBlcnRzIG9yIGNvbnN1bHRhbnRzIG9uIExFQ09NIHJlbGF0ZWQgbWF0dGVycy48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SW4gYSBsZXR0ZXIgZGF0ZWQgMjAgRGVjZW1iZXIgMTk5NSwgU3RlbnRvciBzdGF0ZWQgdGhhdCBpdCBoYWQgbm8gY29tbWVudHMgb24gdGhlIEFmZmlkYXZpdCBvZiBEaXNidXJzZW1lbnRzIGFuZCBCaWxsIG9mIENvc3RzIGZpbGVkIGJ5IEZOQUNRL05BUE8gcmVnYXJkaW5nIGl0cyBub24tTEVDT00gcmVsYXRlZCBjb3N0cy48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5GZWVzPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+Q291bnNlbCBGZWVzPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkZOQUNRL05BUE8gY2xhaW1lZCBhIHRvdGFsIG9mICQxMDIsOTQ4LjAzIGluIGZlZXMgZm9yIGl0cyBsZWdhbCBjb3Vuc2VsLCBjb25zaXN0aW5nIG9mICQxMDAsMTk4LjM3IGZvciBNcy4gTGF3c29uIGFuZCAkMiw3NDkuNjYgZm9yIE1yLiBKYW5pZ2FuLiAgV2l0aCByZXNwZWN0IHRvIE1zLiBMYXdzb24sIEZOQUNRL05BUE8gY2xhaW1lZCBhIHRvdGFsIG9mIDY5MS41IGhvdXJzLCBjb25zaXN0aW5nIG9mIDEwMCBob3VycyBmb3IgYXR0ZW5kYW5jZSBhdCB0aGUgb3JhbCBoZWFyaW5nIGFuZCA1OTEuNSBob3VycyBmb3IgcHJlcGFyYXRpb24sIGF0IGFuIGhvdXJseSByYXRlIG9mICQxNDAuICBGb3IgTXIuIEphbmlnYW4sIEZOQUNRL05BUE8gY2xhaW1lZCAxLjUgaG91cnMgb2YgYXR0ZW5kYW5jZSB0aW1lIGFuZCAxMS41IGhvdXJzIG9mIHByZXBhcmF0aW9uIHRpbWUgYXQgYW4gaG91cmx5IHJhdGUgb2YgJDIzMCwgd2hpY2gsIEkgbm90ZSwgYW1vdW50cyB0byAkMywwOTQuNjYgd2l0aCB0YXgsIHJhdGhlciB0aGFuICQyLDc0OS42NiBhcyBjbGFpbWVkIGJ5IEZOQUNRL05BUE8uICBUaGUgcmF0ZXMgY2xhaW1lZCBmb3IgY291bnNlbCByZWZsZWN0IHRob3NlIHNldCBvdXQgYnkgdGhlIENvbW1pc3Npb24ncyBMZWdhbCBEaXJlY3RvcmF0ZSBpbiBpdHMgPHVuZGVybGluZT5HdWlkZWxpbmVzIGZvciB0aGUgVGF4YXRpb24gb2YgQ29zdHM8L3VuZGVybGluZT4gKHRoZSBHdWlkZWxpbmVzKSwgYW5kIEkgd2lsbCBhbGxvdyB0aGUgcmF0ZXMgYXMgY2xhaW1lZC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5Db25zdWx0YW50IEZlZXM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Rk5BQ1EvTkFQTyBjbGFpbWVkIGEgdG90YWwgb2YgJDE1LDIxOC42NCBmb3IgaXRzIGNvbnN1bHRhbnRzLCBEci4gQmVya293aXR6IGFuZCBNci4gVG9kZC4gIFRoaXMgYW1vdW50IHJlcHJlc2VudHMgYSBjbGFpbSBmb3IgRHIuIEJlcmtvd2l0eiBvZiA1NiBob3VycyBvZiBwcmVwYXJhdGlvbiB0aW1lIGF0IGFuIGhvdXJseSByYXRlIG9mICQxNjAgYW5kIGEgY2xhaW0gZm9yIE1yLiBUb2RkIG9mIGhhbGYgYW4gaG91ciBvZiBhdHRlbmRhbmNlIHRpbWUgYW5kIDM1LjQgaG91cnMgb2YgcHJlcGFyYXRpb24gdGltZSBhdCB0aGUgc2FtZSBob3VybHkgcmF0ZS4gIFRoZSByYXRlcyBjbGFpbWVkIGZvciBEci4gQmVya293aXR6IGFuZCBNci4gVG9kZCBhcmUgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSByYXRlcyBzcGVjaWZpZWQgaW4gdGhlIEd1aWRlbGluZXMgZm9yIGNvbnN1bHRhbnRzIG9mIHNpbWlsYXIgZXhwZXJpZW5jZSwgYW5kIEkgd2lsbCBhbGxvdyB0aGUgcmF0ZXMgYXMgY2xhaW1lZC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5BbmFseXN0IEZlZTwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5GTkFDUS9OQVBPIGNsYWltZWQgJDEyLDQwMCBmb3IgaXRzIGluLWhvdXNlIGFuYWx5c3QsIE1zLiBWYWxs6WUsIGNvbnNpc3Rpbmcgb2YgOSBkYXlzIGZvciBhdHRlbmRhbmNlIGFuZCAyMiBkYXlzIG9mIHByZXBhcmF0aW9uLCBhdCBhIGRhaWx5IHJhdGUgb2YgJDQwMC4gIEFnYWluLCB0aGUgcmF0ZSBjbGFpbWVkIGlzIGNvbnNpc3RlbnQgd2l0aCB0aGF0IHNldCBvdXQgaW4gdGhlIEd1aWRlbGluZXMsIGFuZCBJIHdpbGwgYWNjZXB0IGl0IGFzIGFuIGFwcHJvcHJpYXRlIHJhdGUgZm9yIHdvcmsgY29uZHVjdGVkIGJ5IE1zLiBWYWxs6WUgaW4gaGVyIGNhcGFjaXR5IGFzIGEgdGVsZWNvbW11bmljYXRpb25zIGFuYWx5c3QuICBJIHdpbGwgY29uc2lkZXIgYmVsb3cgdGhlIHJhdGUgY2xhaW1lZCBmb3Igd29yayBwZXJmb3JtZWQgYnkgTXMuIFZhbGzpZSBpbiBoZXIgY2FwYWNpdHkgYXMgYW4gZXhwZXJ0IHdpdG5lc3MuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+RXhwZXJ0IFdpdG5lc3MgRmVlczwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5GTkFDUS9OQVBPIGNsYWltZWQgYSB0b3RhbCBvZiAkMTE5LDUxMCBpbiBmZWVzIGZvciBpdHMgZXhwZXJ0IHdpdG5lc3NlcywgRHIuIENvb3BlciwgTXIuIE1vbnRnb21lcnksIE1yLiBQb2xsYXJkIGFuZCBNcy4gVmFsbOllLCBhbGwgb2Ygd2hpY2ggcmVsYXRlZCB0byB3b3JrIHBlcmZvcm1lZCBpbiBwcmVwYXJhdGlvbiBmb3IgdGhlIG9yYWwgaGVhcmluZy4gIEZOQUNRL05BUE8gY2xhaW1lZCAyNDIgaG91cnMgZm9yIERyLiBDb29wZXIsIDEyMi43IGhvdXJzIGZvciBNci4gTW9udGdvbWVyeSwgMTc1LjIgaG91cnMgZm9yIE1yLiBQb2xsYXJkIGFuZCAxNjMgaG91cnMgZm9yIE1zLiBWYWxs6WUuICBXaXRoIHJlc3BlY3QgdG8gYWxsIG9mIHRoZXNlIGV4cGVydHMsIEZOQUNRL05BUE8gY2xhaW1lZCBhbiBob3VybHkgcmF0ZSBvZiAkMTcwLiAgVGhpcyByYXRlIHJlZmxlY3RzIHRoZSByYXRlIHNldCBvdXQgaW4gdGhlIEd1aWRlbGluZXMgZm9yIHRoZSBwYXJ0aWNpcGF0aW9uIGJ5IGFuIGV4cGVydCB3aXRuZXNzIGZvciBhIHB1cnBvc2Ugb3RoZXIgdGhhbiB0ZXN0aWZ5aW5nLiAgSW4gdGhpcyByZWdhcmQsIEkgbm90ZSB0aGF0IG5laXRoZXIgTXMuIFZhbGzpZSBub3IgTXIuIFBvbGxhcmQgdGVzdGlmaWVkIGluIHRoaXMgcHJvY2VlZGluZyBpbiByZWxhdGlvbiB0byBtYXR0ZXJzIGZvciB3aGljaCBjb3N0cyBhcmUgcHJlc2VudGx5IGJlaW5nIGNsYWltZWQgYnkgRk5BQ1EvTkFQTy4gIEFjY29yZGluZ2x5LCBJIGFjY2VwdCAkMTcwL2hvdXIgYXMgYW4gYXBwcm9wcmlhdGUgcmF0ZSBmb3IgdGhlc2UgdHdvIGV4cGVydCB3aXRuZXNzZXMuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPldpdGggcmVzcGVjdCB0byBEci4gQ29vcGVyIGFuZCBNci4gTW9udGdvbWVyeSwgSSBub3RlIHRoYXQgd2hpbGUgdGhlc2UgdHdvIGV4cGVydHMgYXR0ZW5kZWQgdGhlIGhlYXJpbmcgZm9yIHRoZSBwdXJwb3NlIG9mIHRlc3RpZnlpbmcsIHVsdGltYXRlbHksIGFuZCBvbiB2ZXJ5IHNob3J0IG5vdGljZSwgdGhleSB3ZXJlIGluZm9ybWVkIHRoYXQgdGhleSB3ZXJlIG5vdCByZXF1aXJlZCB0byB0ZXN0aWZ5LiAgSW4gbXkgdmlldywgRHIuIENvb3BlciBhbmQgTXIuIE1vbnRnb21lcnkgaGFkIGEgcmVhc29uYWJsZSBleHBlY3RhdGlvbiB0aGF0IHRoZXkgd291bGQgYmUgcmVxdWlyZWQgdG8gc2V0IGFzaWRlIGF0IGxlYXN0IG9uZSBkYXkgZm9yIHRoZSBwdXJwb3NlIG9mIHRlc3RpZnlpbmcgYXQgdGhlIGhlYXJpbmcuICBJbiB0aGUgY2lyY3Vtc3RhbmNlcywgYW5kIGJhc2VkIG9uIGEgc2V2ZW4gaG91ciBoZWFyaW5nIGRheSwgSSBjb25zaWRlciBpdCBhcHByb3ByaWF0ZSB0aGF0IHNldmVuIG9mIHRoZSBob3VycyBjbGFpbWVkIGJ5IGVhY2ggb2YgdGhlc2UgZXhwZXJ0cyBiZSBhd2FyZGVkIGF0IHRoZSBkYWlseSByYXRlIG9mICQxLDMwMCwgd2hpY2ggaXMgdGhlIHJhdGUgc2V0IG91dCBpbiB0aGUgR3VpZGVsaW5lcyBmb3IgYXR0ZW5kYW5jZSBieSBhbiBleHBlcnQgYXQgYW4gb3JhbCBoZWFyaW5nIGluIG9yZGVyIHRvIHRlc3RpZnkuICBXaXRoIHJlc3BlY3QgdG8gdGhlIHJlbWFpbmluZyBwcmVwYXJhdGlvbiB0aW1lIGNsYWltZWQgYnkgRk5BQ1EvTkFQTyBmb3IgRHIuIENvb3BlciBhbmQgTXIuIE1vbnRnb21lcnksIHdoaWNoIGFtb3VudHMgdG8gMjM1IGhvdXJzIGFuZCAxMTUuNyBob3VycywgcmVzcGVjdGl2ZWx5LCBJIGZpbmQgdGhhdCB0aGUgcmF0ZSBvZiAkMTcwL2hvdXIgaXMgcmVhc29uYWJsZS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5QcmVwYXJhdGlvbiBhbmQgQXR0ZW5kYW5jZSBUaW1lPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlR1cm5pbmcgZmlyc3QgdG8gdGhlIHF1ZXN0aW9uIG9mIGF0dGVuZGFuY2UgdGltZSwgSSBub3RlIHRoYXQgRk5BQ1EvTkFQTyBoYXMgY2xhaW1lZCAxMDAgaG91cnMgb2YgYXR0ZW5kYW5jZSB0aW1lIGZvciBNcy4gTGF3c29uLCAxLjUgaG91cnMgZm9yIE1yLiBKYW5pZ2FuLCBhbmQgOSBkYXlzIGZvciBNcy4gVmFsbOllLiAgSSB3aWxsIGFsbG93IHRoZXNlIGNsYWltcy4gIEFzIG5vdGVkIGVhcmxpZXIsIEkgd2lsbCBhbHNvIGFsbG93IDEgZGF5IG9mIGF0dGVuZGFuY2UgdGltZSBmb3IgZWFjaCBvZiBEci4gQ29vcGVyIGFuZCBNci4gTW9udGdvbWVyeS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SW4gYWRkcmVzc2luZyB0aGUgcmVhc29uYWJsZW5lc3Mgb2YgdGhlIHByZXBhcmF0aW9uIHRpbWUgY2xhaW1lZCBieSBGTkFDUS9OQVBPLCBjb25zaXN0ZW50IHdpdGggcGFzdCBUYXhhdGlvbiBPcmRlcnMsIEkgY29uc2lkZXIgaXQgYXBwcm9wcmlhdGUgdG8gYXNzZXNzIHRoZSB0aW1lIGNsYWltZWQgYnkgRk5BQ1EvTkFQTyBvbiBhIGdsb2JhbCBiYXNpcy4gIEluIHRoaXMgcmVnYXJkLCBJIG5vdGUgdGhhdCBGTkFDUS9OQVBPIGhhcyBjbGFpbWVkIGEgdG90YWwgb2YgMSwzOTcuOCBob3VycyBvZiBwcmVwYXJhdGlvbiB0aW1lIGZvciBpdHMgY291bnNlbCwgZXhwZXJ0cyBhbmQgY29uc3VsdGFudHMsIGFuZCAyMiBkYXlzIG9mIHByZXBhcmF0aW9uIHRpbWUgZm9yIGl0cyBhbmFseXN0LCBNcy4gVmFsbOllLiAgQmFzaW5nIHRoZSB0aW1lIGNsYWltZWQgaW4gZGFpbHkgaW5jcmVtZW50cyBvbiBhIDcgaG91ciBkYXksIEZOQUNRL05BUE8ncyB0b3RhbCBjbGFpbSBmb3IgcHJlcGFyYXRpb24gdGltZSBhbW91bnRzIHRvIDEsNTUxLjggaG91cnMuICBBcyBJIGhhdmUgYWxyZWFkeSBhbGxvd2VkIDE0IGhvdXJzIGZvciBEci4gQ29vcGVyIGFuZCBNci4gTW9udGdvbWVyeSBhcyBhdHRlbmRhbmNlIHRpbWUsIHRoZSB0b3RhbCBwcmVwYXJhdGlvbiB0aW1lIHJlbWFpbmluZyBhbW91bnRzIHRvIDEsNTM3LjggaG91cnMuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkluIGRldGVybWluaW5nIHdoZXRoZXIgdGhlIHByZXBhcmF0aW9uIHRpbWUgY2xhaW1lZCBieSBGTkFDUS9OQVBPIGlzIHJlYXNvbmFibGUgYW5kIG5lY2Vzc2FyeSwgSSBjb25zaWRlciB0aGF0IGFuIGFwcHJvcHJpYXRlIGJlbmNobWFyayBmb3IgY29tcGFyaXNvbiBpcyB0aGUgcHJvY2VlZGluZyB0aGF0IGxlZCB0byA8dW5kZXJsaW5lPlJldmlldyBvZiBSZWd1bGF0b3J5IEZyYW1ld29yazwvdW5kZXJsaW5lPiwgVGVsZWNvbSBEZWNpc2lvbiBDUlRDIDk0LTE5LCAxNiBTZXB0ZW1iZXIgMTk5NCAoRGVjaXNpb24gOTQtMTkpLiAgSW4gbXkgdmlldywgdGhlIHByb2NlZWRpbmcgdGhhdCBsZWQgdG8gRGVjaXNpb24gOTQtMTkgd2FzIGdlbmVyYWxseSBjb21wYXJhYmxlIHRvIHRoYXQgd2hpY2ggbGVkIHRvIERlY2lzaW9uIDk1LTIxLiAgSSBub3RlIHRoYXQgdGhlIGhlYXJpbmcgaW4gdGhlIGxhdHRlciBwcm9jZWVkaW5nIHdhcyBzaG9ydGVyLCBidXQgSSBhbHNvIG5vdGUgdGhhdCBpdCByYWlzZWQgaXNzdWVzIHRoYXQgd2VyZSBzb21ld2hhdCBtb3JlIGNvbXBsZXggYW5kIG1vcmUgdGVjaG5pY2FsbHkgZGlmZmljdWx0IHRoYW4gdGhvc2UgcmFpc2VkIGluIHRoZSBwcm9jZWVkaW5nIGxlYWRpbmcgdG8gRGVjaXNpb24gOTQtMTkuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgbm90ZSB0aGF0IEZOQUNRIGFuZCBOQVBPIHBhcnRpY2lwYXRlZCBzZXBhcmF0ZWx5IGluIHRoZSBwcm9jZWVkaW5nIHRoYXQgbGVkIHRvIERlY2lzaW9uIDk0LTE5LiAgSW4gVGF4YXRpb24gT3JkZXIgQ1JUQyAxOTk0LTEzLCBOQVBPIHdhcyBhbGxvd2VkIGEgdG90YWwgb2YgODAwIGhvdXJzIG9mIHByZXBhcmF0aW9uIHRpbWUgZm9yIGl0cyBwYXJ0aWNpcGF0aW9uIGluIHRoYXQgcHJvY2VlZGluZywgd2hpbGUgdGhlIHRheGluZyBvZmZpY2VyIGluIFRheGF0aW9uIE9yZGVyIENSVEMgMTk5NC0xMiBhbGxvd2VkIDI5MiBob3VycyBvZiBwcmVwYXJhdGlvbiB0aW1lIGZvciBGTkFDUSBpbiByZWxhdGlvbiB0byB0aGUgc2FtZSBwcm9jZWVkaW5nLiAgSW4gYWdncmVnYXRlLCBGTkFDUSBhbmQgTkFQTyB3ZXJlIGFsbG93ZWQgYSB0b3RhbCBvZiAxLDA5MiBob3VycyBvZiBwcmVwYXJhdGlvbiB0aW1lIGZvciB0aGVpciBwYXJ0aWNpcGF0aW9uIGluIHRoZSBwcm9jZWVkaW5nIHRoYXQgbGVkIHRvIERlY2lzaW9uIDk0LTE5LjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JbiBteSB2aWV3LCBGTkFDUS9OQVBPJ3MgcGFydGljaXBhdGlvbiBpbiB0aGlzIHByb2NlZWRpbmcgd2FzIGNvbnNpZGVyYWJseSBtb3JlIGV4dGVuc2l2ZSB0aGFuIHRoZSBjb21iaW5lZCBwYXJ0aWNpcGF0aW9uIG9mIEZOQUNRIGFuZCBOQVBPIGluIHRoZSBwcm9jZWVkaW5nIGxlYWRpbmcgdG8gRGVjaXNpb24gOTQtMTkuICBJbiBwYXJ0aWN1bGFyLCBGTkFDUS9OQVBPIGZpbGVkIG1vcmUgZXZpZGVuY2UgaW4gdGhpcyBwcm9jZWVkaW5nLCByZWxhdGluZyB0byBhIGJyb2FkZXIgcmFuZ2Ugb2YgaXNzdWVzIHRoYXQgd2VyZSBnZW5lcmFsbHkgbW9yZSB0ZWNobmljYWxseSBjb21wbGV4IHRoYW4gdGhvc2UgdGhhdCB3ZXJlIGNvbnNpZGVyZWQgaW4gdGhlIHByb2NlZWRpbmcgdGhhdCBsZWQgdG8gRGVjaXNpb24gOTQtMTkuICBBdCB0aGUgc2FtZSB0aW1lLCBJIGFtIGF3YXJlIHRoYXQgdGhlIGFtb3VudCBvZiBwcmVwYXJhdGlvbiB0aW1lIGNsYWltZWQgZG9lcyBub3QgaW5jbHVkZSBhZGRpdGlvbmFsIHRpbWUgZm9yIHdvcmsgcGVyZm9ybWVkIGJ5IGV4cGVydHMgYW5kIGNvbnN1bHRhbnRzIHJlbGF0aW5nIHRvIHRoZSBMRUNPTSBldmlkZW5jZSwgYWx0aG91Z2ggSSBub3RlIHRoYXQgaXQgZG9lcyBpbmNsdWRlIHRpbWUgc3BlbnQgYnkgY291bnNlbCBmb3IgRk5BQ1EvTkFQTyBpbiByZWxhdGlvbiB0byB0aGF0IGV2aWRlbmNlLiAgSSBmdXJ0aGVyIG5vdGUgdGhhdCBGTkFDUS9OQVBPJ3MgY28tb3JkaW5hdGlvbiBvZiBlZmZvcnRzIGluIHRoaXMgY2FzZSBzaG91bGQgaGF2ZSByZWR1Y2VkIHJlZHVuZGFuY3kgYW5kIHJlc3VsdGVkIGluIGEgbW9yZSBlZmZpY2llbnQgdXNlIG9mIHJlc291cmNlcy4gIEluIHRoZSBjaXJjdW1zdGFuY2VzLCBJIGNvbnNpZGVyIHRoYXQgMSw0NTAgaG91cnMgb2YgcHJlcGFyYXRpb24gdGltZSBpcyBhcHByb3ByaWF0ZS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SW4gYXBwb3J0aW9uaW5nIHRoZSBwcmVwYXJhdGlvbiB0aW1lIGFtb25nc3QgdGhlIGNsYWltYW50cywgSSBhbSBvZiB0aGUgdmlldyB0aGF0IE1yLiBKYW5pZ2FuJ3MgcHJlcGFyYXRpb24gdGltZSBvZiAxMS41IGhvdXJzIGlzIHJlYXNvbmFibGUuICBXaXRoIHJlc3BlY3QgdG8gTXMuIExhd3NvbidzIHByZXBhcmF0aW9uIHRpbWUsIEkgbm90ZSB0aGF0LCBhY2NvcmRpbmcgdG8gdGhlIHRpbWUgZG9ja2V0cyBzdWJtaXR0ZWQgZm9yIE1zLiBMYXdzb24sIGl0IGFwcGVhcnMgdGhhdCBGTkFDUS9OQVBPIGhhcyBjbGFpbWVkIE1zLiBMYXdzb24ncyB0cmF2ZWwgdGltZSBvbiAyNCBhbmQgMjYgQXByaWwgMTk5NS4gIEkgbm90ZSB0aGF0IHRoZSBHdWlkZWxpbmVzIHN1Z2dlc3QgdGhhdCB0aW1lIHNwZW50IHRyYXZlbGxpbmcgPGl0YWxpYz5wZXIgc2U8L2l0YWxpYz4gd2lsbCBub3QgYmUgYWxsb3dlZCwgYWx0aG91Z2ggYSBjbGFpbWFudCBtYXkgYmUgYWxsb3dlZCBjb3N0cyBmb3Igd29yayBwZXJmb3JtZWQgaW4gcmVsYXRpb24gdG8gdGhlIHByb2NlZWRpbmcgd2hpbGUgaW4gdHJhbnNpdC4gIFRoZSB0aW1lIGRvY2tldHMgc3VibWl0dGVkIHN1Z2dlc3QgdGhhdCBpdCBpcyBNcy4gTGF3c29uJ3MgdHJhdmVsIHRpbWUgPGl0YWxpYz5wZXIgc2U8L2l0YWxpYz4gIHRoYXQgaXMgYmVpbmcgY2xhaW1lZCBpbiB0aGlzIGNhc2UsIGFuZCBub3QgdGltZSBmb3Igd29yayB0aGF0IHdhcyBkb25lIGluIHRyYW5zaXQuICBJIGRvIG5vdCBjb25zaWRlciB0aGUgY2xhaW0gZm9yIHRoaXMgdGltZSB0byBiZSByZWFzb25hYmxlIG9yIG5lY2Vzc2FyeSwgYW5kIEkgd2lsbCBkaXNhbGxvdyB0aGUgMTAgaG91cnMgY2xhaW1lZCBpbiB0aGlzIHJlZ2FyZC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+V2l0aCByZXNwZWN0IHRvIE1yLiBUb2RkJ3MgdGltZSwgaW4gdGhlIGxldHRlciB3aGljaCBhY2NvbXBhbmllZCBpdHMgRmluYWwgQmlsbCBvZiBDb3N0cywgRk5BQ1EvTkFQTyBub3RlZCB0aGF0IE1yLiBUb2RkIHdvcmtlZCBmb3IgdGhyZWUgc2VwYXJhdGUgaW50ZXJ2ZW5lcnMgaW4gdGhpcyBwcm9jZWVkaW5nLCBhbmQgcHJvdmlkZWQgYSBicmVha2Rvd24gb2YgdGhlIHRpbWUgdGhhdCBNci4gVG9kZCBzcGVudCB3b3JraW5nIGZvciBlYWNoIGNsaWVudC4gIEZOQUNRL05BUE8gc3VibWl0dGVkIHRoYXQgdGhpcyBicmVha2Rvd24gb2YgTXIuIFRvZGQncyB0aW1lIGluZGljYXRlcyB0aGF0IGhlIGhhcyBub3QgZG91YmxlLWJpbGxlZCBmb3IgYW55IG9mIGhpcyB0aW1lLiAgSGF2aW5nIHJldmlld2VkIHRoZSBjbGFpbXMgZm9yIE1yLiBUb2RkJ3MgdGltZSBieSB0aGUgdGhyZWUgaW50ZXJ2ZW5lcnMgaW4gcXVlc3Rpb24sIEkgYW0gc2F0aXNmaWVkIHRoYXQgTXIuIFRvZGQgaGFzIG5vdCBkb3VibGUtYmlsbGVkLiAgU3ViamVjdCB0byBhIHNsaWdodCByZWR1Y3Rpb24gaW4gdGhlIGNsYWltIGZvciBoaXMgaG91cnMgcmVzdWx0aW5nIGZyb20gYSByZWR1Y3Rpb24gaW4gdGhlIGdsb2JhbCBjbGFpbSBmb3IgRk5BQ1EvTkFQTywgSSB3aWxsIGFsbG93IHRoZSBob3VycyByZXF1ZXN0ZWQgZm9yIE1yLiBUb2RkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JbiBhcHBvcnRpb25pbmcgdGhlIHJlbWFpbmluZyBwcmVwYXJhdGlvbiB0aW1lLCBJIGNvbnNpZGVyIHRoYXQgdGhlIGZhaXJlc3QgYW5kIG1vc3QgYXBwcm9wcmlhdGUgbWV0aG9kIGlzIHRvIHByb3JhdGUgdGhlIHRpbWUgY2xhaW1lZCBmb3IgZWFjaCBpbmRpdmlkdWFsLiAgQWNjb3JkaW5nbHksIEkgd2lsbCBhbGxvdyA1NTEgaG91cnMgZm9yIE1zLiBMYXdzb24sIDUzIGhvdXJzIGZvciBEci4gQmVya293aXR6LCAzNC41IGhvdXJzIGZvciBNci4gVG9kZCwgMjIzIGhvdXJzIGZvciBEci4gQ29vcGVyLCAxMDkgaG91cnMgZm9yIE1yLiBNb250Z29tZXJ5LCAxNjcgaG91cnMgZm9yIE1yLiBQb2xsYXJkIGFuZCAyMSBkYXlzIGZvciBNcy4gVmFsbOllIGluIGhlciBjYXBhY2l0eSBhcyBhIHRlbGVjb21tdW5pY2F0aW9ucyBhbmFseXN0IGFuZCAxNTQgaG91cnMgZm9yIGhlciB3b3JrIGFzIGFuIGV4cGVydCB3aXRuZXNzLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkRpc2J1cnNlbWVudHM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Rk5BQ1EvTkFQTyBjbGFpbWVkIGEgdG90YWwgb2YgJDM3LDY3Mi4zNSBpbiBkaXNidXJzZW1lbnRzLiAgT2YgdGhpcyBhbW91bnQsICQyMCwwMDAgaGFzIGJlZW4gYmlsbGVkIGFuZCByZWNvdmVyZWQgcHVyc3VhbnQgdG8gQ29zdHMgT3JkZXIgOTUtNSwgbGVhdmluZyBhbiBvdXRzdGFuZGluZyBjbGFpbSBmb3IgJDE3LDY3Mi4zNS4gIEkgbm90ZSB0aGF0LCBhY2NvcmRpbmcgdG8gbXkgYWRkaXRpb24gb2YgdGhlIGZpZ3VyZXMgY29udGFpbmVkIGluIHRoZSBzdXBwb3J0aW5nIGRvY3VtZW50YXRpb24sIHRoZSBhY3R1YWwgYW1vdW50IG9mIGRpc2J1cnNlbWVudHMgY2xhaW1lZCBieSBGTkFDUS9OQVBPIGlzICQzOSwxOTAuNTcuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+TWVhbCBFeHBlbnNlczwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5GTkFDUS9OQVBPIGhhcyBjbGFpbWVkICQ0ODguMzQgZm9yIG1lYWxzIHRoYXQgd2VyZSBwYWlkIGZvciBieSB0aGUgbGF3IGZpcm0gdGhhdCByZXByZXNlbnRlZCBGTkFDUS9OQVBPIGluIHRoaXMgcHJvY2VlZGluZywgdGhlIFB1YmxpYyBJbnRlcmVzdCBBZHZvY2FjeSBDZW50cmUgKFBJQUMpLiAgVHdvIG9mIHRoZSByZWNlaXB0cyBzdWJtaXR0ZWQgaW4gc3VwcG9ydCBvZiB0aGlzIGNsYWltLCBmb3IgbWVhbHMgb24gdGhlIDExdGggYW5kIDEydGggb2YgSnVuZSAxOTk1LCBkbyBub3QgaW5kaWNhdGUgb24gd2hvc2UgYmVoYWxmIHRoZSBleHBlbnNlIGlzIGJlaW5nIGNsYWltZWQuICBJbiB0aGUgYWJzZW5jZSBvZiBzdWNoIGluZm9ybWF0aW9uLCBhbmQgaW4gbGlnaHQgb2YgdGhlIGZhY3QgdGhhdCBGTkFDUS9OQVBPIGhhcyBjbGFpbWVkIG1lYWxzIG9uIGEgcGVyIGRpZW0gYmFzaXMgZm9yIHNldmVyYWwgaW5kaXZpZHVhbHMsIGl0IGlzIGltcG9zc2libGUgZm9yIG1lIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSBjb3N0cyBvZiB0aGVzZSBtZWFscyB3ZXJlIHJlYXNvbmFibHkgYW5kIG5lY2Vzc2FyaWx5IGluY3VycmVkLiAgQWNjb3JkaW5nbHksIEkgd2lsbCBkaXNhbGxvdyB0aGVzZSB0d28gY2xhaW1zIGluIHRoZWlyIGVudGlyZXR5LiAgSSBhbHNvIG5vdGUgdGhhdCByZWNlaXB0cyBmb3IgdHdvIG1lYWxzIG9uIDMxIE1heSAxOTk1IGluZGljYXRlIHRoYXQgdGhlIGNsYWltcyB3ZXJlIGluIHBhcnQgcmVsYXRlZCB0byBNcy4gVmFsbOllLCBmb3Igd2hvbSBpdCBhcHBlYXJzIEZOQUNRL05BUE8gaGFzIGNsYWltZWQgYSBwZXIgZGllbSByYXRlIGZvciBtZWFscyBvbiB0aGUgc2FtZSBkYXkuICBTaW1pbGFybHksIEkgbm90ZSB0aGF0IGEgbWVhbCBjbGFpbSBmb3IgMSBKdW5lIDE5OTUgaGFzIGJlZW4gbWFkZSBmb3IgTXIuIE1vbnRnb21lcnksIGZvciB3aG9tIEZOQUNRL05BUE8gaGFzIGFsc28gY2xhaW1lZCBhIHBlciBkaWVtIG1lYWwgcmF0ZS4gIFRvIGF2b2lkIGRvdWJsZSBjb21wZW5zYXRpb24sIEkgaGF2ZSBkaXNhbGxvd2VkIHRoZSBhbW91bnRzIGNsYWltZWQgYnkgRk5BQ1EvTkFQTyBmb3IgTXMuIFZhbGzpZSBhbmQgTXIuIE1vbnRnb21lcnkgb24gdGhlIGRhdGVzIGluIHF1ZXN0aW9uLiAgSW4gTXMuIFZhbGzpZSdzIGNhc2UsIEkgaGF2ZSBhcnJpdmVkIGF0IHRoZSBhbW91bnQgdG8gYmUgZGlzYWxsb3dlZCBieSBkaXZpZGluZyB0aGUgdG90YWwgb2YgZWFjaCByZWNlaXB0IGJ5IHRoZSBudW1iZXIgb2YgcGVyc29ucyB3aG8gY29uc3VtZWQgdGhlIG1lYWxzIGluIHF1ZXN0aW9uLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5BIHJldmlldyBvZiB0aGUgcmVjZWlwdHMgYWxzbyBpbmRpY2F0ZXMgdGhhdCBpbiBhIG51bWJlciBvZiBjYXNlcywgbWVhbCBleHBlbnNlcyBoYXZlIGJlZW4gY2xhaW1lZCBmb3IgTXMuIExhd3NvbiBmb3IgbWVhbHMgdGhhdCB3ZXJlIGNvbnN1bWVkIGluIHRoZSBOYXRpb25hbCBDYXBpdGFsIFJlZ2lvbiwgaW4gd2hpY2ggTXMuIExhd3NvbidzIG9mZmljZSBpcyBsb2NhdGVkLiAgSW4gVGF4YXRpb24gT3JkZXIgQ1JUQyAxOTk1LTYsIHRoZSB0YXhpbmcgb2ZmaWNlciBkaXNhbGxvd2VkIHNpbWlsYXIgbWVhbCBjbGFpbXMgZm9yIE1zLiBMYXdzb24gb24gdGhlIGdyb3VuZHMgdGhhdCBtZWFsIGV4cGVuc2VzIGFyZSBnZW5lcmFsbHkgb25seSBuZWNlc3NhcmlseSBpbmN1cnJlZCBieSBpbmRpdmlkdWFscyB3aGVuIHRoZXkgYXJlIGF3YXkgZnJvbSBob21lIG9uIGJ1c2luZXNzIG1hdHRlcnMuICBJIGFsc28gbm90ZSB0aGF0IHRoZSBHdWlkZWxpbmVzIGluZGljYXRlIHRoYXQgbWVhbCBleHBlbnNlcyB3aWxsIGdlbmVyYWxseSBvbmx5IGJlIGFsbG93ZWQgaW4gY29ubmVjdGlvbiB3aXRoIGhlYXJpbmdzIG9yIG1lZXRpbmdzIHdoaWNoIHRha2UgcGxhY2UgYXQgYSBkaXN0YW5jZSBncmVhdGVyIHRoYW4gNTAga2lsb21ldHJlcyBmcm9tIHRoZSByZWd1bGFyIHBsYWNlIG9mIHdvcmsgb2YgdGhlIHBlcnNvbiB3aG8gbWFrZXMgdGhlIGRpc2J1cnNlbWVudHMuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgcmVjb2duaXplIHRoYXQgY291bnNlbCBtYXkgZmluZCBpdCB1c2VmdWwgYW5kIG5lY2Vzc2FyeSwgcGFydGljdWxhcmx5IGR1cmluZyBhIGxlbmd0aHkgb3JhbCBoZWFyaW5nLCB0byBjb25zdWx0IG92ZXIgdGhlIGNvdXJzZSBvZiBhIG1lYWwgd2l0aCBvdXQtb2YtdG93biBleHBlcnQgd2l0bmVzc2VzIG9yIGNvbnN1bHRhbnRzIGFib3V0IG1hdHRlcnMgcmVsYXRpbmcgdG8gdGhlIHByb2NlZWRpbmcgaW4gcXVlc3Rpb24uICBJbiBzdWNoIGNpcmN1bXN0YW5jZXMsIHByb3ZpZGVkIHRoYXQgdGhlIG51bWJlciBvZiBtZWFscyBhbmQgdGhlIGFtb3VudHMgaW52b2x2ZWQgZm9yIGVhY2ggbWVhbCBhcmUgcmVhc29uYWJsZSwgSSBhbSBwcmVwYXJlZCB0byBjb25zaWRlciB0aGlzIHR5cGUgb2YgZXhwZW5zZSBhcyBhIHJlYXNvbmFibGUgYW5kIG5lY2Vzc2FyeSBleHBlbmRpdHVyZS4gIEluIHRoaXMgcmVnYXJkLCBJIG5vdGUgdGhhdCBvbmx5IHRocmVlIG1lYWxzIGhhdmUgYmVlbiBjbGFpbWVkIGZvciBNcy4gTGF3c29uIGluIGNvbm5lY3Rpb24gd2l0aCBsdW5jaCBvciBkaW5uZXIgbWVldGluZ3MgaW52b2x2aW5nIGNvbnN1bHRhbnRzIG9yIGV4cGVydCB3aXRuZXNzZXMgd2hvIHdlcmUgbm90IHJlc2lkZW50IGluIHRoZSBOYXRpb25hbCBDYXBpdGFsIFJlZ2lvbiwgYW5kIHRoZSBhbW91bnRzIGludm9sdmVkIGluIGVhY2ggY2FzZSBhcHBlYXIgdG8gYmUgcmVhc29uYWJsZS4gIEFjY29yZGluZ2x5LCBJIHdpbGwgYWxsb3cgdGhlc2UgY2xhaW1zLiAgSG93ZXZlciwgSSBkbyBub3QgY29uc2lkZXIgdGhhdCBjbGFpbXMgZm9yIHR3byBtZWFscyB0aGF0IHJlbGF0ZSBzb2xlbHkgdG8gTXMuIExhd3NvbiBhbmQgdGhhdCB3ZXJlIGNvbnN1bWVkIGluIHRoZSBOYXRpb25hbCBDYXBpdGFsIFJlZ2lvbiBjb25zdGl0dXRlIHJlYXNvbmFibGUgYW5kIG5lY2Vzc2FyeSBleHBlbmRpdHVyZXMuICBUaGVyZWZvcmUsIEkgaGF2ZSBkaXNhbGxvd2VkIHRoZXNlIGNsYWltcy4gIEkgZmluZCB0aGUgYmFsYW5jZSBvZiB0aGUgbWVhbCBleHBlbnNlcyBpbmN1cnJlZCBieSBQSUFDIHRvIGJlIHJlYXNvbmFibGUuICBJbiB0aGUgY2lyY3Vtc3RhbmNlcywgSSB3aWxsIGFsbG93IGEgdG90YWwgb2YgJDI2OC45NywgaW5jbHVzaXZlIG9mIDMuNSUgR1NULCBmb3IgbWVhbCBleHBlbnNlcyBpbmN1cnJlZCBieSBQSUFDLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkFjY29tbW9kYXRpb25zPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlJlY2VpcHRzIHN1Ym1pdHRlZCBpbiBzdXBwb3J0IG9mIGV4cGVuc2VzIGluY3VycmVkIGJ5IFBJQUMgZm9yIE1zLiBWYWxs6WUncyBhY2NvbW1vZGF0aW9uIGluZGljYXRlIHRoYXQgRk5BQ1EvTkFQTyBoYXMgZG91YmxlLWNvdW50ZWQgb25lIG5pZ2h0IG9mIE1zLiBWYWxs6WUncyBhY2NvbW1vZGF0aW9uLiAgSSBoYXZlIHJlZHVjZWQgdGhlIGNsYWltIGFjY29yZGluZ2x5LjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPk90aGVyIE1hdHRlcnM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSBub3RlIHRoYXQgRk5BQ1EvTkFQTyBoYXMgc3VidHJhY3RlZCAkNDQ3Ljc0IGZyb20gaXRzIGRpc2J1cnNlbWVudHMgY2xhaW0sIHJlcHJlc2VudGluZyBjb3N0cyB0aGF0IHdlcmUgZGVuaWVkIGluIENvc3RzIE9yZGVyIDk1LTEzLiAgRk5BQ1EvTkFQTyBkaWQgbm90IHNwZWNpZnkgaW4gYW55IGRldGFpbCB0byB3aGljaCBkaXNidXJzZW1lbnRzIHRoaXMgYW1vdW50IHJlbGF0ZXMsIG1ha2luZyBpdCBkaWZmaWN1bHQgZm9yIG1lIHRvIHZlcmlmeSB3aGV0aGVyIHRoZSBjb3JyZWN0IGFtb3VudCB3YXMgZGVkdWN0ZWQuICBIb3dldmVyLCBhcyBGTkFDUS9OQVBPIGhhcyBzdGF0ZWQgdGhhdCBpdHMgRmluYWwgQmlsbCBvZiBDb3N0cyBkb2VzIG5vdCBpbmNsdWRlIGFueSBleHBlbnNlcyBpbmN1cnJlZCBieSBEcnMuIEdhYmVsLCBLZW5uZXQgb3IgTXIuIFBvbGxhcmQgb24gTEVDT00gbWF0dGVycywgYW5kIGhhcyBwcm92aWRlZCBhbiBhZmZpZGF2aXQgb2YgZGlzYnVyc2VtZW50cyBzd2VhcmluZyB0byB0aGUgZXhwZW5kaXR1cmVzIGNsYWltZWQsIEkgYW0gcHJlcGFyZWQgdG8gYWNjZXB0IHRoYXQgdGhlIGFtb3VudCBkZWR1Y3RlZCBpcyBhcHByb3ByaWF0ZS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSB3aWxsIGFsbG93IHRoZSByZW1haW5pbmcgZGlzYnVyc2VtZW50cyBhcyBjbGFpbWVkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkNvc3RzIGFzIFRheGVkPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgaGVyZWJ5IHRheCB0aGUgZmVlcyBhbmQgZGlzYnVyc2VtZW50cywgaW5jbHVzaXZlIG9mIFBTVCBhbmQgNTAlIG9mIEdTVCwgd2hlcmUgYXBwbGljYWJsZSwgYXMgZm9sbG93czo8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5GZWVzPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+Q291bnNlbDwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Ncy4gTGF3c29uICAgICAgICAgICAgICAgICAgICAgICAgICAgICQ5NCwzMjkuOTA8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TXIuIEphbmlnYW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMywwOTQuNjY8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5Db25zdWx0YW50cy9BbmFseXN0PC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkRyLiBCZXJrb3dpdHogICAgICAgICAgICAgICAgICAgICAgICAgICAkOCw3NzYuODA8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TXIuIFRvZGQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDUsNzEzLjIwPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk1zLiBWYWxs6WUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMTIsMDAwLjAwPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+RXhwZXJ0czwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Eci4gQ29vcGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDM5LDIxMC4wMDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Nci4gTW9udGdvbWVyeSAgICAgICAgICAgICAgICAgICAgICQxOSw4MzAuMDA8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TXIuIFBvbGxhcmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMjgsMzkwLjAwPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk1zLiBWYWxs6WUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMjYsMTgwLjAwPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+VG90YWwgRmVlczwvdW5kZXJsaW5lPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVuZGVybGluZT4kMjM3LDUyNC41NjwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkRpc2J1cnNlbWVudHM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SW4taG91c2UgcGhvdG9jb3BpZXMgICAgICAgICAgICAgICAgICQxLDUwOS43NTwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5PdGhlciBwaG90b2NvcGllcyAgICAgICAgICAgICAgICAgICAgICQ0LDA0MS44MjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Mb25nIGRpc3RhbmNlKHRlbGVwaG9uZS9mYXgpICAgICAgJDIsMDA4LjQ1PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkNvdXJpZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDMsNDM2LjQ1PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlBvc3RhZ2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkNjkwLjQ0PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRyYW5zY3JpcHRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkOSwyOTIuMjM8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QWlyIHRyYXZlbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkNjM4LjU1PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRyYWluIHRyYXZlbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMjcwLjM4PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRheGkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQ1MjcuMTc8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QWNjb21tb2RhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICQzLDc1OC42MDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5BY2Nlc3MgUmVxdWVzdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMTE5LjAzPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlN1cnZleSBBc3Npc3RhbmNlICAgICAgICAgICAgICAgICAgICAgICAgJDEwMy41MDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5TdXBwbGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDYyMS40NDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UcmFuc2xhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDEsOTY0LjExPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk1lYWxzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDI2OC45NzwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Eci4gQ29vcGVyJ3MgZXhwZW5zZXMgICAgICAgICAgICAgICAkMSw5NTMuMTY8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TXIuIE1vbnRnb21lcnkncyBleHBlbnNlcyAgICAgICAgICAkODU4Ljg4PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk1yLiBQb2xsYXJkJ3MgZXhwZW5zZXMgICAgICAgICAgICAgICAkNCw5MjAuMzM8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TXIuIFRvZGQncyBleHBlbnNlcyAgICAgICAgICAgICAgICAgICAgICAkODQuODc8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TXMuIFZhbGzpZSdzIGV4cGVuc2VzICAgICAgICAgICAgICAgICQyLDg1OS4zODwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPlRvdGFsIERpc2J1cnNlbWVudHM8L3VuZGVybGluZT4gICAgICAgICAgICAgICAgPHVuZGVybGluZT4kMzksOTI3LjUxPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+U3ViLXRvdGFsPC91bmRlcmxpbmU+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bmRlcmxpbmU+JDI3Nyw0NTIuMDc8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TGVzcyBDb3N0cyBOb3QgUmVjb3ZlcmFibGU8L3BhcmE+CjxwYXJhPlB1cnN1YW50IHRvIENvc3RzIE9yZGVyIDk1LTEzICAgICAgJDQ0Ny43NDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5MZXNzIENvc3RzIEFscmVhZHk8L3BhcmE+CjxwYXJhPlJlY292ZXJlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMjAsMDAwLjAwPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+VG90YWwgRmVlcyBhbmQ8L3VuZGVybGluZT48L3BhcmE+CjxwYXJhPjx1bmRlcmxpbmU+RGlzYnVyc2VtZW50cyBPd2luZzwvdW5kZXJsaW5lPiAgICAgICAgICAgIDx1bmRlcmxpbmU+JDI1NywwMDQuMzM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QXMgbm90ZWQgYWJvdmUsIHRoaXMgYW1vdW50IGlzIHRvIGJlIHBhaWQgYnkgdGhlIHJlc3BvbmRlbnRzIGlkZW50aWZpZWQgaW4gQ29zdHMgT3JkZXIgOTUtMTMgaW4gdGhlIHByb3BvcnRpb25zIHNldCBvdXQgaW4gdGhhdCBvcmRlci48L3BhcmE+CjxwYXJhPkxvcmkgQXNzaGV0b24tU21pdGg8L3BhcmE+CjxwYXJhPkxlZ2FsIENvdW5zZWw8L3BhcmE+CjxwYXJhPkNhbmFkaWFuIFJhZGlvLXRlbGV2aXNpb24gYW5kPC9wYXJhPgo8cGFyYT4gIFRlbGVjb21tdW5pY2F0aW9ucyBDb21taXNzaW9uPC9wYXJhPgo8L3RleHQ+Cjx3YXJuaW5nPlRoZSBvZmZpY2lhbCB2ZXJzaW9uIG9mIHRoaXMgZG9jdW1lbnQgaXMgYXZhaWxhYmxlIGF0IHRoZSBmb2xsb3dpbmcgSW50ZXJuZXQgc2l0ZTogaHR0cDovL3d3dy5jcnRjLmdjLmNhPC93YXJuaW5nPgo8Y29weXJpZ2h0PkNvcHlyaWdodCBDYW5hZGlhbiBSYWRpby10ZWxldmlzaW9uIGFuZCBUZWxlY29tbXVuaWNhdGlvbnMgQ29tbWlzc2lvbiwgIDE5OTkuPC9jb3B5cmlnaHQ+CjwvdGVsZWNvbT4KPHRlbGVjb20+Cjxscj5PdHRhd2EsPC9scj4KPGRhdGU+IDEyIEFwcmlsIDE5OTY8L2RhdGU+Cjx0eXBkb2M+VGF4YXRpb24gT3JkZXIgPC90eXBkb2M+CjxkZWNpc2lvbj48cGFyYT5DUlRDIDk2LTU8L3BhcmE+CjxwYXJhPjx1bmRlcmxpbmU+PC91bmRlcmxpbmU+PC9wYXJhPgo8L2RlY2lzaW9uPgo8cGFydGllcz48cGFyYT5JbiByZTogIEltcGxlbWVudGF0aW9uIG9mIFJlZ3VsYXRvcnkgRnJhbWV3b3JrIC0gU3BsaXR0aW5nIG9mIHRoZSBSYXRlIEJhc2UgYW5kIFJlbGF0ZWQgSXNzdWVzLCBUZWxlY29tIERlY2lzaW9uIENSVEMgOTUtMjEgYW5kIFRlbGVjb20gQ29zdHMgT3JkZXIgQ1JUQyA5NS0xMjwvcGFyYT4KPC9wYXJ0aWVzPgo8dGV4dD48cGFyYT5Sb3NhbGllIERhbHkgVG9kZCBmb3IgdGhlIENvbnN1bWVycycgQXNzb2NpYXRpb24gb2YgQ2FuYWRhIChDQUMpLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5EZW5pcyBIZW5yeSBmb3IgU3RlbnRvciBSZXNvdXJjZSBDZW50cmUgSW5jLiAoU3RlbnRvcikuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+PC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRBWEFUSU9OIE9GIENPU1RTIE9GIENBQzwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48L3RleHQ+Cjx0ZXh0PjxwYXJhPlRheGluZyBPZmZpY2VyOiAgTG9yaSBBc3NoZXRvbi1TbWl0aDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UaGlzIG9yZGVyIGNvbnN0aXR1dGVzIHRoZSB0YXhhdGlvbiBvZiBjb3N0cyBhd2FyZGVkIHRvIENBQyBpbiB0aGUgcHJvY2VlZGluZyBsZWFkaW5nIHRvIDx1bmRlcmxpbmU+SW1wbGVtZW50YXRpb24gb2YgUmVndWxhdG9yeSBGcmFtZXdvcmsgLSBTcGxpdHRpbmcgb2YgdGhlIFJhdGUgQmFzZSBhbmQgUmVsYXRlZCBJc3N1ZXM8L3VuZGVybGluZT4sIFRlbGVjb20gRGVjaXNpb24gQ1JUQyA5NS0yMSwgMzEgT2N0b2JlciAxOTk1IChEZWNpc2lvbiA5NS0yMSkuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkluIFRlbGVjb20gQ29zdHMgT3JkZXIgQ1JUQyA5NS02LCAxOCBNYXkgMTk5NSAoQ29zdHMgT3JkZXIgOTUtNiksIHRoZSBDb21taXNzaW9uIGdyYW50ZWQgQ0FDIGFuIGludGVyaW0gYXdhcmQgb2YgY29zdHMgbGltaXRlZCB0byB0aGUgY29zdCBvZiBhIHNpbmdsZSBjb3B5IG9mIHRoZSBoZWFyaW5nIHRyYW5zY3JpcHQsIGFzIHdlbGwgYXMgYSBtYXhpbXVtIG9mICQ3LDUwMCBmb3IgZGlzYnVyc2VtZW50cyBvdGhlciB0aGFuIGZlZXMgb3IgdHJhbnNjcmlwdHMuICBUaGUgb3JkZXIgZGlyZWN0ZWQgdGhlIHJlc3BvbmRlbnRzIHRvIGNvbnRyaWJ1dGUgdG8gdGhlIGludGVyaW0gY29zdHMgYXdhcmQgaW4gcHJvcG9ydGlvbiB0byB0aGVpciBvcGVyYXRpbmcgcmV2ZW51ZXMgZnJvbSB0ZWxlY29tbXVuaWNhdGlvbnMgYWN0aXZpdGllcywgYXMgcmVwb3J0ZWQgaW4gZWFjaCBjb21wYW55J3MgbW9zdCByZWNlbnQgYXVkaXRlZCBmaW5hbmNpYWwgc3RhdGVtZW50cy48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+RmluYWwgY29zdHMgd2VyZSBhd2FyZGVkIHRvIENBQyBieSBUZWxlY29tIENvc3RzIE9yZGVyIENSVEMgOTUtMTIsIDEgTm92ZW1iZXIgMTk5NSAoQ29zdHMgT3JkZXIgOTUtMTIpLCBpbiBhY2NvcmRhbmNlIHdpdGggc3Vic2VjdGlvbiA0NCgxKSBvZiB0aGUgPHVuZGVybGluZT5DUlRDIFRlbGVjb21tdW5pY2F0aW9ucyBSdWxlcyBvZiBQcm9jZWR1cmU8L3VuZGVybGluZT4uICBDb3N0cyBPcmRlciA5NS0xMiBkaXJlY3RlZCBlYWNoIHJlc3BvbmRlbnQgbmFtZWQgaW4gQ29zdHMgT3JkZXIgOTUtNiB0byBjb250cmlidXRlIHRvIHRoZSBmaW5hbCBhd2FyZCBvZiBjb3N0cyBpbiB0aGUgcHJvcG9ydGlvbnMgc2V0IG91dCBpbiBDb3N0cyBPcmRlciA5NS0xMi48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+T24gMTMgRGVjZW1iZXIgMTk5NSwgQ0FDIHN1Ym1pdHRlZCBhIEZpbmFsIEJpbGwgb2YgQ29zdHMgaW4gdGhlIGFtb3VudCBvZiAkNTksODQ4LjM2LCBjb25zaXN0aW5nIG9mICQ0OCw0NjUuNjAgaW4gZmVlcyBhbmQgJDExLDM4Mi43NiBpbiBkaXNidXJzZW1lbnRzLCBvZiB3aGljaCAkMTAsMjA1LjYwIHdhcyBiaWxsZWQgYW5kIHJlY292ZXJlZCB1bmRlciB0aGUgdGVybXMgb2YgQ29zdHMgT3JkZXIgOTUtNi4gIFRoZXNlIGFtb3VudHMgYXJlIGluY2x1c2l2ZSBvZiBQU1QgYW5kIDMuNSUgR1NULCBpbiByZWNvZ25pdGlvbiBvZiB0aGUgNTAlIEdTVCByZWJhdGUgdG8gd2hpY2ggQ0FDIGlzIGVudGl0bGVkIGluIHRoZSBjaXJjdW1zdGFuY2VzIG9mIHRoaXMgY2FzZS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSBub3RlIHRoYXQsIGFjY29yZGluZyB0byBteSBjYWxjdWxhdGlvbnMsIHRoZSB0b3RhbCBhbW91bnQgb2YgZGlzYnVyc2VtZW50cyBpbmNsdWRlZCBpbiB0aGUgU3VtbWFyeSBTdGF0ZW1lbnQgb2YgRGlzYnVyc2VtZW50cyBzdWJtaXR0ZWQgYnkgQ0FDIGlzICQxMSw3NTguMDEsIHJhdGhlciB0aGFuICQxMSwzODIuNzYsIGJyaW5naW5nIHRoZSB0b3RhbCBhbW91bnQgY2xhaW1lZCBpbiB0aGUgRmluYWwgQmlsbCBvZiBDb3N0cyB0byAkNjAsMjIzLjYxLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JbiBhIGxldHRlciBkYXRlZCAyMCBEZWNlbWJlciAxOTk1LCBTdGVudG9yIGluZGljYXRlZCB0aGF0IGl0IGhhZCBubyBjb21tZW50cyBvbiB0aGUgQWZmaWRhdml0IG9mIERpc2J1cnNlbWVudHMgYW5kIEZpbmFsIEJpbGwgb2YgQ29zdHMgc3VibWl0dGVkIGJ5IENBQy4gIFRoZSByZW1haW5pbmcgcmVzcG9uZGVudHMgZGlkIG5vdCBmaWxlIGNvbW1lbnRzLjwvcGFyYT4KPHBhcmE+PHVuZGVybGluZT48L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Q291bnNlbCBhbmQgRXhwZXJ0IEZlZXM8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Q0FDIGNsYWltZWQgZmVlcyBvZiAkMjcsNjAwLjAwIGZvciBpdHMgaW4taG91c2UgY291bnNlbCwgTXMuIFJvc2FsaWUgRGFseSBUb2RkLCBhbmQgJDIwLDg2NS42MCBmb3IgaXRzIGNvbnN1bHRhbnQsIE1yLiBSb2JlcnQgQ2hvdWluYXJkLiAgV2l0aCByZXNwZWN0IHRvIE1zLiBEYWx5IFRvZGQsIENBQyBjbGFpbWVkIGEgdG90YWwgb2YgNDYgZGF5cywgY29uc2lzdGluZyBvZiAxMS41IGRheXMgZm9yIGF0dGVuZGFuY2UgYXQgdGhlIG9yYWwgaGVhcmluZyBhbmQgMzQuNSBkYXlzIGZvciBwcmVwYXJhdGlvbiwgYXQgYSBkYWlseSByYXRlIG9mICQ2MDAuICBGb3IgTXIuIENob3VpbmFyZCwgQ0FDIGNsYWltZWQgMyBob3VycyBmb3IgYXR0ZW5kYW5jZSBhbmQgMTIzIGhvdXJzIGZvciBwcmVwYXJhdGlvbiBhdCBhbiBob3VybHkgcmF0ZSBvZiAkMTYwLiAgVGhlIHJhdGVzIGNsYWltZWQgcmVmbGVjdCB0aG9zZSBzZXQgb3V0IGJ5IHRoZSBDb21taXNzaW9uJ3MgTGVnYWwgRGlyZWN0b3JhdGUgaW4gaXRzIDx1bmRlcmxpbmU+R3VpZGVsaW5lcyBmb3IgdGhlIFRheGF0aW9uIG9mIENvc3RzPC91bmRlcmxpbmU+LCBhbmQgSSB3aWxsIGFjY2VwdCB0aGVzZSByYXRlcyBhcyBhcHByb3ByaWF0ZS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSBhbHNvIGZpbmQgdGhlIHRpbWUgY2xhaW1lZCBieSBDQUMgZm9yIE1zLiBEYWx5IFRvZGQgYW5kIE1yLiBDaG91aW5hcmQgdG8gYmUgcmVhc29uYWJsZSBnaXZlbiB0aGUgbmF0dXJlIGFuZCBleHRlbnQgb2YgQ0FDJ3MgcGFydGljaXBhdGlvbiBpbiB0aGlzIHByb2NlZWRpbmcuICBBY2NvcmRpbmdseSwgSSB3aWxsIGFsbG93IHRoZSBhbW91bnRzIGFzIGNsYWltZWQuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+RGlzYnVyc2VtZW50czwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5BcyBub3RlZCBlYXJsaWVyLCBteSBjYWxjdWxhdGlvbnMgaW5kaWNhdGUgdGhhdCB0aGUgdG90YWwgYW1vdW50IG9mIGRpc2J1cnNlbWVudHMgY2xhaW1lZCBpbiBDQUMncyBTdW1tYXJ5IFN0YXRlbWVudCBvZiBEaXNidXJzZW1lbnRzIGlzICQxMSw3NTguMDEsIG9mIHdoaWNoICQxMCwyMDUuNjAgaGFzIGFscmVhZHkgYmVlbiByZWNvdmVyZWQgcHVyc3VhbnQgdG8gQ29zdHMgT3JkZXIgOTUtNi48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSBhbSBzYXRpc2ZpZWQgdGhhdCB0aGUgZGlzYnVyc2VtZW50cyBjbGFpbWVkIGJ5IENBQyB3ZXJlIHJlYXNvbmFibHkgYW5kIG5lY2Vzc2FyaWx5IGluY3VycmVkLCBhbmQgSSB3aWxsIGFsbG93IHRoZSBhbW91bnQgY2xhaW1lZCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgYWRqdXN0bWVudHMgZm9yIFBTVCBhbmQgR1NULjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5DQUMgaGFzIGNsYWltZWQgMy41JSBHU1Qgb24gaXRzIGRpc2J1cnNlbWVudHMgZm9yIGluLWhvdXNlIHBob3RvY29waWVzIGFuZCBmb3IgTXIuIENob3VpbmFyZCdzIGF1dG9tb2JpbGUgdHJhdmVsLiAgSSBub3RlIHRoYXQgdGhlcmUgaXMgbm90aGluZyBpbiB0aGUgc3VwcG9ydGluZyBkb2N1bWVudGF0aW9uIHRvIGluZGljYXRlIHRoYXQgR1NUIHdhcyBlaXRoZXIgcGFpZCBvciBwYXlhYmxlIG9uIHRoZXNlIGV4cGVuc2VzLiAgVGhlcmVmb3JlLCBJIGhhdmUgZGVkdWN0ZWQgdGhlIGFtb3VudCBjbGFpbWVkIGluIHRoaXMgcmVnYXJkIGZyb20gQ0FDJ3MgdG90YWwgY2xhaW0uPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkNBQyBoYXMgYWxzbyBjbGFpbWVkIDglIFBTVCBvbiBpdHMgY291cmllciBleHBlbnNlcy4gIEFnYWluLCB0aGUgcmVjZWlwdHMgc3VibWl0dGVkIGluIHN1cHBvcnQgb2YgdGhpcyBjbGFpbSBzdWdnZXN0IHRoYXQgUFNUIHdhcyBuZWl0aGVyIHBhaWQgbm9yIHBheWFibGUgb24gdGhlc2UgZGlzYnVyc2VtZW50cywgYW5kIEkgaGF2ZSByZWR1Y2VkIENBQydzIGNsYWltIGFjY29yZGluZ2x5LjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkNvc3RzIGFzIFRheGVkPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgaGVyZWJ5IHRheCB0aGUgZmVlcyBhbmQgZGlzYnVyc2VtZW50cywgaW5jbHVzaXZlIG9mIFBTVCBhbmQgNTAlIG9mIEdTVCwgd2hlcmUgYXBwbGljYWJsZSwgYXMgZm9sbG93czo8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5Db3Vuc2VsIEZlZXM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TXMuIERhbHkgVG9kZCAgICAgICAgICAgICAgICAgICAgICAgICAkMjcsNjAwLjAwPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+Q29uc3VsdGFudCBGZWVzPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk1yLiBSb2JlcnQgQ2hvdWluYXJkICAgICAgICAgICAgICAgJDIwLDg2NS42MDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPlRvdGFsIEZlZXM8L3VuZGVybGluZT4gICAgICAgICAgICAkPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+NDgsNDY1LjYwPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+RGlzYnVyc2VtZW50czwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Jbi1ob3VzZSBwaG90b2NvcGllcyAgICAgICAgICAgICAgICAgICAgJDQyNS44NTwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Mb25nIGRpc3RhbmNlICh0ZWxlcGhvbmUvZmF4KSAgICAgICAgJDI3NC40NzwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Db3VyaWVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQyNTIuMjU8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+U3VwcGxpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDY5Ljc2PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRyYW5zY3JpcHRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkNiw5MTQuMzI8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+VHJhdmVsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDEsNjgwLjAwPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlBhcmtpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkNzIuOTY8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+VGF4aSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMTguOTY8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QWNjb21tb2RhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICQxLDAzNS42MjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5NZWFsIEFsbG93YW5jZSAgICAgICAgICAgICAgICAgICAgICAgICAgICQ5MTIuMDA8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5Ub3RhbCBEaXNidXJzZW1lbnRzPC91bmRlcmxpbmU+ICAgICAgICAgICA8dW5kZXJsaW5lPiQxMSw2NTYuMTk8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5TdWItdG90YWw8L3VuZGVybGluZT4gICAgICAgICAgICAgICAgICAkPHVuZGVybGluZT42MCwxMjEuNzk8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TGVzcyBjb3N0cyBhbHJlYWR5IHJlY292ZXJlZCAgICAkMTAsMjA1LjYwPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+PC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRvdGFsIEZlZXMgYW5kPC9wYXJhPgo8cGFyYT48dW5kZXJsaW5lPkRpc2J1cnNlbWVudHMgT3dpbmc8L3VuZGVybGluZT4gICAgICAgICAgICAgICQ8dW5kZXJsaW5lPjQ5LDkxNi4xOTwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5BcyBub3RlZCBhYm92ZSwgdGhpcyBhbW91bnQgaXMgdG8gYmUgcGFpZCBieSB0aGUgcmVzcG9uZGVudHMgaWRlbnRpZmllZCBpbiBDb3N0cyBPcmRlciA5NS0xMiBpbiB0aGUgcHJvcG9ydGlvbnMgc2V0IG91dCBpbiB0aGF0IG9yZGVyLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Mb3JpIEFzc2hldG9uLVNtaXRoPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkxlZ2FsIENvdW5zZWw8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Q2FuYWRpYW4gUmFkaW8tdGVsZXZpc2lvbiBhbmQ8L3BhcmE+CjxwYXJhPiAgVGVsZWNvbW11bmljYXRpb25zIENvbW1pc3Npb248L3BhcmE+CjwvdGV4dD4KPHdhcm5pbmc+VGhlIG9mZmljaWFsIHZlcnNpb24gb2YgdGhpcyBkb2N1bWVudCBpcyBhdmFpbGFibGUgYXQgdGhlIGZvbGxvd2luZyBJbnRlcm5ldCBzaXRlOiBodHRwOi8vd3d3LmNydGMuZ2MuY2E8L3dhcm5pbmc+Cjxjb3B5cmlnaHQ+Q29weXJpZ2h0IENhbmFkaWFuIFJhZGlvLXRlbGV2aXNpb24gYW5kIFRlbGVjb21tdW5pY2F0aW9ucyBDb21taXNzaW9uLCAgMTk5OS48L2NvcHlyaWdodD4KPC90ZWxlY29tPgo8dGVsZWNvbT4KPGxyPk90dGF3YSwgPC9scj4KPGRhdGU+MjcgTWFyY2ggMTk5NjwvZGF0ZT4KPHR5cGRvYz5UYXhhdGlvbiBPcmRlciA8L3R5cGRvYz4KPGRlY2lzaW9uPjxwYXJhPkNSVEMgOTYtNDwvcGFyYT4KPC9kZWNpc2lvbj4KPHBhcnRpZXM+PHBhcmE+PHVuZGVybGluZT5JbiByZTogIEltcGxlbWVudGF0aW9uIG9mIFJlZ3VsYXRvcnkgRnJhbWV3b3JrIC0gU3BsaXR0aW5nIG9mIHRoZSBSYXRlIEJhc2UgYW5kIFJlbGF0ZWQgSXNzdWVzLCBUZWxlY29tIERlY2lzaW9uIENSVEMgOTUtMjEgYW5kIFRlbGVjb20gQ29zdHMgT3JkZXIgQ1JUQyA5NS05PC91bmRlcmxpbmU+PC9wYXJhPgo8L3BhcnRpZXM+Cjx0ZXh0PjxwYXJhPkphbWVzIFdhY2hvd2ljaCBmb3IgdGhlIEFsYmVydGEgQ29uc3VtZXJzJyBDb2FsaXRpb24gKEFsdGFDQykuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkRlbmlzIEhlbnJ5IGZvciBTdGVudG9yIFJlc291cmNlIENlbnRyZSBJbmMuIChTdGVudG9yKS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5UQVhBVElPTiBPRiBDT1NUUyBPRiBBTFRBQ0M8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+VGF4aW5nIE9mZmljZXI6ICBMb3JpIEFzc2hldG9uLVNtaXRoPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRoaXMgb3JkZXIgY29uc2l0dXRlcyB0aGUgdGF4YXRpb24gb2YgY29zdHMgYXdhcmRlZCB0byBBbHRhQ0MgaW4gdGhlIHByb2NlZWRpbmcgbGVhZGluZyB0byA8dW5kZXJsaW5lPkltcGxlbWVudGF0aW9uIG9mIFJlZ3VsYXRvcnkgRnJhbWV3b3JrIC0gU3BsaXR0aW5nIG9mIHRoZSBSYXRlIEJhc2UgYW5kIFJlbGF0ZWQgSXNzdWVzPC91bmRlcmxpbmU+LCBUZWxlY29tIERlY2lzaW9uIENSVEMgOTUtMjEsIDMxIE9jdG9iZXIgMTk5NSAoRGVjaXNpb24gOTUtMjEpLiAgQ29zdHMgd2VyZSBhd2FyZGVkIHRvIEFsdGFDQyBieSBUZWxlY29tIENvc3RzIE9yZGVyIENSVEMgOTUtOSwgMSBOb3ZlbWJlciAxOTk1IChDb3N0cyBPcmRlciA5NS05KSwgaW4gYWNjb3JkYW5jZSB3aXRoIHN1YnNlY3Rpb24gNDQoMSkgb2YgdGhlIDx1bmRlcmxpbmU+Q1JUQyBUZWxlY29tbXVuaWNhdGlvbnMgUnVsZXMgb2YgUHJvY2VkdXJlPC91bmRlcmxpbmU+LiAgQ29zdHMgT3JkZXIgOTUtOSBwcm92aWRlZCB0aGF0IEFsdGFDQyBpcyBlbnRpdGxlZCB0byA1MCUgb2YgaXRzIGNvc3RzIGluIHRoZSBwcm9jZWVkaW5nIGxlYWRpbmcgdG8gRGVjaXNpb24gOTUtMjEsIGFuZCBmdXJ0aGVyIHByb3ZpZGVkIHRoYXQgdGhlc2UgY29zdHMgYXJlIHRvIGJlIHBhaWQgYnkgZWFjaCByZXNwb25kZW50IGluIHByb3BvcnRpb24gdG8gaXRzIHJldmVudWVzIGZyb20gdGVsZWNvbW11bmljYXRpb25zIGFjdGl2aXRpZXMsIGFzIHJlcG9ydGVkIGluIGVhY2ggY29tcGFueSdzIG1vc3QgcmVjZW50IGF1ZGl0ZWQgZmluYW5jaWFsIHN0YXRlbWVudHMuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk9uIDMwIE5vdmVtYmVyIDE5OTUsIEFsdGFDQyBzdWJtaXR0ZWQgYSBCaWxsIG9mIENvc3RzIGluIHRoZSBhbW91bnQgb2YgJDgzLDE0OS41MiwgY29uc2lzdGluZyBvZiAkNzksNjAyLjY1IGluIGZlZXMgYW5kICQzLDU0Ni44NyBpbiBkaXNidXJzZW1lbnRzLiAgT24gNiBEZWNlbWJlciAxOTk1LCBBbHRhQ0MgZmlsZWQgYSByZXZpc2VkIEJpbGwgb2YgQ29zdHMgdG8gY29ycmVjdCBlcnJvcnMgaW4gdGhlIG9yaWdpbmFsIEJpbGwgb2YgQ29zdHMgcmVsYXRpbmcgdG8gdGhlIHJhdGVzIGFuZCBob3VycyBvZiB0aGUgY29uc3VsdGFudHMuICBJbiBpdHMgcmV2aXNlZCBCaWxsIG9mIENvc3RzLCBBbHRhQ0MgY2xhaW1lZCAkNjksOTQyLjY1IGluIGZlZXMgYW5kICQzLDU0Ni44NyBpbiBkaXNidXJzZW1lbnRzLiAgVGhlc2UgYW1vdW50cyBhcmUgaW5jbHVzaXZlIG9mIDclIEdTVC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+T24gMTMgRGVjZW1iZXIgMTk5NSwgU3RlbnRvciBmaWxlZCB3cml0dGVuIGNvbW1lbnRzIG9uIEFsdGFDQydzIEJpbGwgb2YgQ29zdHMsIGluZGljYXRpbmcgdGhhdCBpdCBoYWQgbm8gb2JqZWN0aW9uIHRvIHRoZSBjbGFpbS4gIFRoZSByZW1haW5pbmcgcmVzcG9uZGVudHMgZGlkIG5vdCBmaWxlIGNvbW1lbnRzLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkZlZXMgYW5kIFRpbWUgQWxsb2NhdGlvbnM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QWx0YUNDIGNsYWltZWQgMTA5IGhvdXJzIGF0IGFuIGhvdXJseSByYXRlIG9mICQxNzUgZm9yIGl0cyBjb3Vuc2VsLCBNci4gSmFtZXMgV2FjaG93aWNoLiAgRm9yIGl0cyBjb25zdWx0YW50LCBNci4gSmVmZnJleSBKb2RvaW4sIEFsdGFDQyBjbGFpbWVkIDI5NCBob3VycyBhdCBhbiBob3VybHkgcmF0ZSBvZiAkMTIwLCBhbmQgZm9yIGl0cyBjb25zdWx0YW50LCBNci4gQS4gTWVyYW5pLCBpdCBjbGFpbWVkIDY5IGhvdXJzIGF0IGFuIGhvdXJseSByYXRlIG9mICQxNjAuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgbm90ZSB0aGF0IHRoZSByYXRlcyBjbGFpbWVkIGJ5IEFsdGFDQyBmb3IgaXRzIGNvdW5zZWwgYW5kIGNvbnN1bHRhbnRzIHJlZmxlY3QgdGhvc2Ugc2V0IG91dCBieSB0aGUgQ29tbWlzc2lvbidzIExlZ2FsIERpcmVjdG9yYXRlIGluIGl0cyA8dW5kZXJsaW5lPkd1aWRlbGluZXMgZm9yIHRoZSBUYXhhdGlvbiBvZiBDb3N0czwvdW5kZXJsaW5lPiwgYW5kIEkgd2lsbCBhbGxvdyB0aGUgcmF0ZXMgYXMgY2xhaW1lZC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SW4gZGV0ZXJtaW5pbmcgd2hldGhlciB0aGUgdGltZSBjbGFpbWVkIGJ5IEFsdGFDQyBjYW4gYmUgc2FpZCB0byBiZSByZWFzb25hYmxlIGFuZCBuZWNlc3NhcnksIGNvbnNpc3RlbnQgd2l0aCBwcmV2aW91cyB0YXhhdGlvbiBvcmRlcnMsIEkgYW0gb2YgdGhlIHZpZXcgdGhhdCBpdCBpcyBhcHByb3ByaWF0ZSB0byBjb25zaWRlciB0aGUgdGltZSBjbGFpbWVkIGJ5IEFsdGFDQyBvbiBhIGdsb2JhbCBiYXNpcy4gIEluIHRoaXMgcmVnYXJkLCBJIG5vdGUgdGhhdCBBbHRhQ0MgaGFzIGNsYWltZWQgYSB0b3RhbCBvZiA0NzIgaG91cnMgZm9yIGl0cyBjb3Vuc2VsIGFuZCBjb25zdWx0YW50cy4gIEluIG15IHZpZXcsIHRoaXMgaXMgZXhjZXNzaXZlIGdpdmVuIHRoZSBleHRlbnQgb2YgQWx0YUNDJ3MgcGFydGljaXBhdGlvbiBpbiB0aGUgcHJvY2VlZGluZyB0aGF0IGxlZCB0byBEZWNpc2lvbiA5NS0yMS4gIEFsdGFDQyBwcmVwYXJlZCBpbnRlcnJvZ2F0b3JpZXMgYW5kIGZpbGVkIHdyaXR0ZW4gYXJndW1lbnQgaW4gdGhlIHByb2NlZWRpbmcsIGJ1dCBpdCBkaWQgbm90IGZpbGUgYW55IGV2aWRlbmNlLCBub3IgZGlkIGl0IGF0dGVuZCB0aGUgb3JhbCBoZWFyaW5nLiAgQW5vdGhlciBpbnRlcnZlbmVyIGluIHRoZSBzYW1lIHByb2NlZWRpbmcsIHRoZSBDb25zdW1lciBQb2xpY3kgSW5zdGl0dXRlIChDUEkpLCBuZWl0aGVyIGZpbGVkIGV2aWRlbmNlIG5vciBhdHRlbmRlZCB0aGUgb3JhbCBoZWFyaW5nLCBhbmQgY2xhaW1lZCBhIHRvdGFsIG9mIDU0LjYgaG91cnMgZm9yIGl0cyBwYXJ0aWNpcGF0aW9uIGluIHRoZSBwcm9jZWVkaW5nLiAgSSBub3RlIHRoYXQgQWx0YUNDLCB1bmxpa2UgQ1BJLCBkcmFmdGVkIGFuZCBzdWJtaXR0ZWQgaW50ZXJyb2dhdG9yaWVzIGluIHRoaXMgcHJvY2VlZGluZy4gIEkgZnVydGhlciBub3RlIHRoYXQgQWx0YUNDIHN1Ym1pdHRlZCB3cml0dGVuIGFyZ3VtZW50IHRoYXQgd2FzIGNvbnNpZGVyYWJseSBtb3JlIGRldGFpbGVkIGFuZCB3aGljaCB0b3VjaGVkIG9uIGEgbXVjaCBicm9hZGVyIHJhbmdlIG9mIGlzc3VlcyB0aGFuIHRoYXQgb2YgQ1BJLiAgTmV2ZXJ0aGVsZXNzLCBpbiBsaWdodCBvZiB0aGUgbmF0dXJlIGFuZCBleHRlbnQgb2YgQWx0YUNDJ3MgcGFydGljaXBhdGlvbiBpbiB0aGlzIHByb2NlZWRpbmcsIGFuZCBwYXJ0aWN1bGFybHkgaW4gbGlnaHQgb2YgdGhlIGZhY3QgdGhhdCBBbHRhQ0MgbmVpdGhlciBzdWJtaXR0ZWQgZXZpZGVuY2Ugbm9yIHBhcnRpY2lwYXRlZCBpbiB0aGUgb3JhbCBoZWFyaW5nLCBJIGNvbnNpZGVyIEFsdGFDQydzIGNsYWltIG9mIDQ3MiBob3VycyB0byBiZSBmYXIgaW4gZXhjZXNzIG9mIHdoYXQgd2FzIHJlYXNvbmFibGUgb3IgbmVjZXNzYXJ5IGluIHRoZSBjaXJjdW1zdGFuY2VzLiAgSW4gbXkgdmlldywgYSB0b3RhbCB0aW1lIGFsbG93YW5jZSBvZiAzNTAgaG91cnMgaXMgbW9yZSBhcHByb3ByaWF0ZS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SW4gYXBwb3J0aW9uaW5nIHRoZSB0aW1lIGFsbG93ZWQgYW1vbmdzdCBBbHRhQ0MncyBjb3Vuc2VsIGFuZCBjb25zdWx0YW50cywgSSBub3RlIHRoYXQgdGhlIGJ1bGsgb2YgQWx0YUNDJ3MgaG91cnMgd2VyZSBjbGFpbWVkIGJ5IGl0cyBjb25zdWx0YW50LCBNci4gSm9kb2luLiAgSW4gbXkgdmlldywgTXIuIEpvZG9pbidzIGNsYWltIG9mIDI5NCBob3VycyBjYW5ub3QgYmUgdmlld2VkIGFzIHJlYXNvbmFibGUgYW5kIG5lY2Vzc2FyeSBnaXZlbiBBbHRhQ0MncyBsZXZlbCBvZiBwYXJ0aWNpcGF0aW9uIGluIHRoaXMgcHJvY2VlZGluZy4gIEluIHBhcnRpY3VsYXIsIEkgZmluZCBNci4gSm9kb2luJ3MgY2xhaW0gb2YgMTU1IGhvdXJzIGZvciByZXZpZXdpbmcgdGhlIGZpbGUgdG8gYmUgZXhjZXNzaXZlIGluIHRoZSBjaXJjdW1zdGFuY2VzLiAgQWdhaW4sIGJ5IHdheSBvZiBjb21wYXJpc29uLCBhbm90aGVyIGludGVydmVuZXIgaW4gdGhpcyBwcm9jZWVkaW5nLCB0aGUgQ29uc3VtZXJzJyBBc3NvY2lhdGlvbiBvZiBDYW5hZGEsIGNsYWltZWQgYSB0b3RhbCBvZiAxMjYgaG91cnMgZm9yIGl0cyBjb25zdWx0YW50LCB3aGVyZWFzIHRoZSBCLkMuIE9sZCBBZ2UgUGVuc2lvbmVycycgT3JnYW5pemF0aW9uIGV0IGFsLiBjbGFpbWVkIGEgdG90YWwgb2YgMTY4LjQgaG91cnMgZm9yIGl0cyBjb25zdWx0YW50LiAgVGhlIGV4dGVudCBvZiBwYXJ0aWNpcGF0aW9uIG9mIGJvdGggb2YgdGhlc2UgaW50ZXJ2ZW5lcnMgaW4gdGhpcyBwcm9jZWVkaW5nIHdhcyBjb25zaWRlcmFibHkgZ3JlYXRlciB0aGFuIHRoYXQgb2YgQWx0YUNDLiAgQXQgdGhlIHNhbWUgdGltZSwgSSBub3RlIHRoYXQgTXIuIEpvZG9pbiBpcyBhIGZhaXJseSBqdW5pb3IgY29uc3VsdGFudCwgd2hvIGNhbiBiZSBleHBlY3RlZCB0byByZXF1aXJlIG1vcmUgdGltZSB0byBmYW1pbGlhcml6ZSBoaW1zZWxmIHdpdGggdGhlIGlzc3VlcywgYW5kIHdobyBpbiB0dXJuIGNsYWltcyBhIGxvd2VyIGhvdXJseSByYXRlLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JbiBsaWdodCBvZiBhbGwgb2YgdGhlc2UgY29uc2lkZXJhdGlvbnMsIEkgd2lsbCBhbGxvdyAxOTAgaG91cnMgZm9yIE1yLiBKb2RvaW4uICBXaXRoIHJlc3BlY3QgdG8gTXIuIFdhY2hvd2ljaCBhbmQgTXIuIE1lcmFuaSwgSSBjb25zaWRlciB0aGF0IHRoZSBmYWlyZXN0IGFuZCBtb3N0IGFwcHJvcHJpYXRlIG1hbm5lciBpbiB3aGljaCB0byBhcHByb3ByaWF0ZSB0aGUgcmVtYWluaW5nIHRpbWUgaXMgdG8gcHJvcmF0ZSB0aGUgdGltZSBjbGFpbWVkIGZvciBlYWNoIG9mIHRoZXNlIGluZGl2aWR1YWxzLiAgQWNjb3JkaW5nbHksIEkgd2lsbCBhbGxvdyA5Ny42IGhvdXJzIGZvciBNci4gV2FjaG93aWNoIGFuZCA2Mi40IGhvdXJzIGZvciBNci4gTWVyYW5pLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkRpc2J1cnNlbWVudHM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QWx0YUNDIGNsYWltZWQgZGlzYnVyc2VtZW50cyBvZiAkMyw1NDYuODcuICBJIGNvbnNpZGVyIHRoaXMgYW1vdW50IHRvIGJlIHJlYXNvbmFibGUgYW5kIEkgd2lsbCBhbGxvdyB0aGUgZGlzYnVyc2VtZW50cyBhcyBjbGFpbWVkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkNvc3RzIGFzIFRheGVkPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgaGVyZWJ5IHRheCB0aGUgZmVlcyBhbmQgZGlzYnVyc2VtZW50cywgaW5jbHVzaXZlIG9mIEdTVCwgYXMgZm9sbG93czo8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5Db3Vuc2VsIEZlZXM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TXIuIEphbWVzIFdhY2hvd2ljaCAgICAgICAgICAgICAkMTgsMjc1LjYwPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+Q29uc3VsdGFudCBGZWVzPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk1yLiBKLiBKb2RvaW4gICAgICAgICAgICAgICAgICAgICAgICAgICQyNCwzOTYuMDA8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TXIuIEEuIE1lcmFuaSAgICAgICAgICAgICAgICAgICAgICAgICAgJDEwLDY4Mi44ODwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPlRvdGFsIEZlZXM8L3VuZGVybGluZT4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVuZGVybGluZT4kNTMsMzU1LjA4PC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+Q29uc3VsdGFudHMnIERpc2J1cnNlbWVudHM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+UGhvdG9jb3BpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQ1Mi4zMjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5GYXggY2hhcmdlcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQ5NzQuNzc8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5PdGhlciBEaXNidXJzZW1lbnRzPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlBob3RvY29waWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDIwNC40ODwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5GYXggY2hhcmdlcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQyLDAwMC45MDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Mb25nIGRpc3RhbmNlIHRlbGVwaG9uZTwvcGFyYT4KPHBhcmE+YW5kIGZheCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQzMDEuMjk8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+UG9zdGFnZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDEzLjExPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+VG90YWwgRGlzYnVyc2VtZW50czwvdW5kZXJsaW5lPiAgICAgICAgICAgICAgICAgIDx1bmRlcmxpbmU+JDMsNTQ2Ljg3PC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+U3ViLXRvdGFsPC91bmRlcmxpbmU+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVuZGVybGluZT4kNTYsOTAxLjM1PC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkxlc3MgNTAlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQyOCw0NTAuNjg8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5Ub3RhbCBGZWVzIGFuZDwvdW5kZXJsaW5lPjwvcGFyYT4KPHBhcmE+PHVuZGVybGluZT5EaXNidXJzZW1lbnRzIE93aW5nPC91bmRlcmxpbmU+ICAgICAgICAgICAgICA8dW5kZXJsaW5lPiQyOCw0NTAuNjg8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QXMgbm90ZWQgYWJvdmUsIHRoaXMgYW1vdW50IGlzIHRvIGJlIHBhaWQgYnkgdGhlIHJlc3BvbmRlbnRzIHRvIENvc3RzIE9yZGVyIDk1LTkgaW4gdGhlIHByb3BvcnRpb25zIHNldCBvdXQgaW4gdGhhdCBvcmRlci48L3BhcmE+CjxwYXJhPkxvcmkgQXNzaGV0b24tU21pdGg8L3BhcmE+CjxwYXJhPkxlZ2FsIENvdW5zZWw8L3BhcmE+CjxwYXJhPkNhbmFkaWFuIFJhZGlvLXRlbGV2aXNpb24gYW5kPC9wYXJhPgo8cGFyYT4gIFRlbGVjb21tdW5pY2F0aW9ucyBDb21taXNzaW9uPC9wYXJhPgo8L3RleHQ+Cjx3YXJuaW5nPlRoZSBvZmZpY2lhbCB2ZXJzaW9uIG9mIHRoaXMgZG9jdW1lbnQgaXMgYXZhaWxhYmxlIGF0IHRoZSBmb2xsb3dpbmcgSW50ZXJuZXQgc2l0ZTogaHR0cDovL3d3dy5jcnRjLmdjLmNhPC93YXJuaW5nPgo8Y29weXJpZ2h0PkNvcHlyaWdodCBDYW5hZGlhbiBSYWRpby10ZWxldmlzaW9uIGFuZCBUZWxlY29tbXVuaWNhdGlvbnMgQ29tbWlzc2lvbiwgIDE5OTkuPC9jb3B5cmlnaHQ+CjwvdGVsZWNvbT4KPHRlbGVjb20+Cjxscj5PdHRhd2EsIDwvbHI+CjxkYXRlPjI3IE1hcmNoIDE5OTY8L2RhdGU+Cjx0eXBkb2M+VGF4YXRpb24gT3JkZXIgPC90eXBkb2M+CjxkZWNpc2lvbj48cGFyYT5DUlRDIDk2LTM8L3BhcmE+CjwvZGVjaXNpb24+CjxwYXJ0aWVzPjxwYXJhPjx1bmRlcmxpbmU+SW4gcmU6ICBJbXBsZW1lbnRhdGlvbiBvZiBSZWd1bGF0b3J5IEZyYW1ld29yayAtIFNwbGl0dGluZyBvZiB0aGUgUmF0ZSBCYXNlIGFuZCBSZWxhdGVkIElzc3VlcywgVGVsZWNvbSBEZWNpc2lvbiBDUlRDIDk1LTIxIGFuZCBUZWxlY29tIENvc3RzIE9yZGVyIENSVEMgOTUtODwvdW5kZXJsaW5lPjwvcGFyYT4KPC9wYXJ0aWVzPgo8dGV4dD48cGFyYT5NaWNoYWVsIEtvY2ggZm9yIHRoZSBDb25zdW1lciBQb2xpY3kgSW5zdGl0dXRlIChDUEkpLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5EZW5pcyBIZW5yeSBmb3IgU3RlbnRvciBSZXNvdXJjZSBDZW50cmUgSW5jLiAoU3RlbnRvcikuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+VEFYQVRJT04gT0YgQ09TVFMgT0YgQ1BJPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRheGluZyBPZmZpY2VyOiAgTG9yaSBBc3NoZXRvbi1TbWl0aDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UaGlzIG9yZGVyIGNvbnN0aXR1dGVzIHRoZSB0YXhhdGlvbiBvZiBjb3N0cyBhd2FyZGVkIHRvIENQSSBpbiB0aGUgcHJvY2VlZGluZyBsZWFkaW5nIHRvIDx1bmRlcmxpbmU+SW1wbGVtZW50YXRpb24gb2YgUmVndWxhdG9yeSBGcmFtZXdvcmsgLSBTcGxpdHRpbmcgb2YgdGhlIFJhdGUgQmFzZSBhbmQgUmVsYXRlZCBJc3N1ZXM8L3VuZGVybGluZT4sIFRlbGVjb20gRGVjaXNpb24gQ1JUQyA5NS0yMSwgMzEgT2N0b2JlciAxOTk1LiAgQ29zdHMgd2VyZSBhd2FyZGVkIHRvIENQSSBieSBUZWxlY29tIENvc3RzIE9yZGVyIENSVEMgOTUtOCwgMSBOb3ZlbWJlciAxOTk1IChDb3N0cyBPcmRlciA5NS04KSwgaW4gYWNjb3JkYW5jZSB3aXRoIHN1YnNlY3Rpb24gNDQoMSkgb2YgdGhlIDx1bmRlcmxpbmU+Q1JUQyBUZWxlY29tbXVuaWNhdGlvbnMgUnVsZXMgb2YgUHJvY2VkdXJlPC91bmRlcmxpbmU+LiAgVGhhdCBvcmRlciBwcm92aWRlZCB0aGF0IGNvc3RzIHdlcmUgdG8gYmUgcGFpZCBieSBlYWNoIHJlc3BvbmRlbnQgaWRlbnRpZmllZCB0aGVyZWluIGluIHByb3BvcnRpb24gdG8gaXRzIHJldmVudWVzIGZyb20gdGVsZWNvbW11bmljYXRpb25zIGFjdGl2aXRpZXMsIGFzIHJlcG9ydGVkIGluIGVhY2ggY29tcGFueSdzIG1vc3QgcmVjZW50IGF1ZGl0ZWQgZmluYW5jaWFsIHN0YXRlbWVudHMuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk9uIDI5IE5vdmVtYmVyIDE5OTUsIENQSSBzdWJtaXR0ZWQgYSBCaWxsIG9mIENvc3RzIGluIHRoZSBhbW91bnQgb2YgJDExLDM1MS45NywgY29uc2lzdGluZyBvZiAkOSw4ODkuNDEgaW4gZmVlcyBhbmQgJDEsNDYyLjU2IGluIGRpc2J1cnNlbWVudHMuICBUaGVzZSBhbW91bnRzIGFyZSBpbmNsdXNpdmUgb2YgOCUgUFNULCB3aGVyZSBhcHBsaWNhYmxlLCBhbmQgMy41JSBHU1QsIGluIHJlY29nbml0aW9uIG9mIHRoZSA1MCUgR1NUIHJlYmF0ZSBhdmFpbGFibGUgaW4gdGhlIGNpcmN1bXN0YW5jZXMgb2YgdGhpcyBjYXNlLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5PbiAxMyBEZWNlbWJlciAxOTk1LCBTdGVudG9yIGZpbGVkIHdyaXR0ZW4gY29tbWVudHMgb24gQ1BJJ3MgQmlsbCBvZiBDb3N0cywgaW5kaWNhdGluZyB0aGF0IGl0IGhhZCBubyBvYmplY3Rpb24gdG8gdGhlIGNsYWltLiAgVGhlIHJlbWFpbmluZyByZXNwb25kZW50cyBkaWQgbm90IGZpbGUgY29tbWVudHMuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+Q291bnNlbCBGZWVzPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkNQSSBjbGFpbWVkIDU0LjYgaG91cnMgZm9yIGl0cyBjb3Vuc2VsIGF0IGFuIGhvdXJseSByYXRlIG9mICQxNzUuICBJIG5vdGUgdGhhdCB0aGlzIHJhdGUgcmVmbGVjdHMgdGhlIHJhdGUgc3BlY2lmaWVkIGluIHRoZSBDb21taXNzaW9uJ3MgTGVnYWwgRGlyZWN0b3JhdGUncyA8dW5kZXJsaW5lPkd1aWRlbGluZXMgZm9yIHRoZSBUYXhhdGlvbiBvZiBDb3N0czwvdW5kZXJsaW5lPiBmb3IgY291bnNlbCBvZiBNci4gS29jaCdzIGV4cGVyaWVuY2UsIGFuZCBJIHdpbGwgYWxsb3cgdGhlIHJhdGUgYXMgY2xhaW1lZC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSBhbHNvIGZpbmQgdGhlIG51bWJlciBvZiBob3VycyBjbGFpbWVkIGJ5IENQSSBmb3IgaXRzIGNvdW5zZWwgdG8gYmUgcmVhc29uYWJsZSBpbiBsaWdodCBvZiB0aGUgbmF0dXJlIGFuZCBleHRlbnQgb2YgQ1BJJ3MgcGFydGljaXBhdGlvbiBpbiB0aGlzIHByb2NlZWRpbmcsIGFuZCBJIHdpbGwgYWxsb3cgdGhlIGFtb3VudCBhcyBjbGFpbWVkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkRpc2J1cnNlbWVudHM8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSBub3RlIHRoYXQgQ1BJIGhhcyBjbGFpbWVkIGJvdGggR1NUIGFuZCBQU1Qgb24gYWxsIG9mIGl0cyBkaXNidXJzZW1lbnRzIG90aGVyIHRoYW4gaW4taG91c2UgcGhvdG9jb3BpZXMuICBIb3dldmVyLCB3aXRoIHRoZSBleGNlcHRpb24gb2Ygb25lIHJlY2VpcHQgZm9yIGV4dGVybmFsIHBob3RvY29weSBleHBlbnNlcywgdGhlcmUgaXMgbm90aGluZyBvbiB0aGUgZmFjZSBvZiB0aGUgcmVjZWlwdHMgc3VibWl0dGVkIGluIHN1cHBvcnQgb2YgdGhlIGNsYWltIHRvIGluZGljYXRlIHRoYXQgUFNUIHdhcyBlaXRoZXIgcGFpZCBvciBwYXlhYmxlIG9uIHRoZXNlIGRpc2J1cnNlbWVudHMuICBJbiB0aGUgYWJzZW5jZSBvZiBzdWNoIGRvY3VtZW50YXRpb24sIEkgd2lsbCBkaXNhbGxvdyB0aGUgOCUgUFNUIGNsYWltZWQgb24gZGlzYnVyc2VtZW50cyB3aGVyZSBpdCBpcyBub3QgY2xlYXIgdGhhdCBQU1QgaGFzIGJlZW4gcGFpZCBvciBpcyBwYXlhYmxlLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JIGFsc28gbm90ZSB0aGF0IENQSSBhcHBlYXJzIHRvIGhhdmUgZG91YmxlIGNvdW50ZWQgdGhlIEdTVCBhbmQgUFNUIG9uIG9uZSBvZiBpdHMgZXh0ZXJuYWwgcGhvdG9jb3B5IGNsYWltcy4gIFRoZSBjcmVkaXQgY2FyZCByZWNlaXB0IHN1Ym1pdHRlZCBpbiBzdXBwb3J0IG9mIHRoaXMgY2xhaW0gc2hvd3MgdGhhdCBhIHRvdGFsIG9mICQxNzkuNDYgd2FzIGJpbGxlZCB0byB0aGUgY3JlZGl0IGNhcmQsIHN1Z2dlc3RpbmcgdGhhdCB0YXhlcyB3ZXJlIGluY2x1ZGVkIGluIHRoaXMgdG90YWwuICBUaGVyZWZvcmUsIEkgd2lsbCBkaXNhbGxvdyB0aGUgR1NUIGFuZCBQU1QgdGhhdCBDUEkgaGFzIGFkZGVkIHRvIHRoaXMgYW1vdW50LjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UaGUgcmVtYWluaW5nIGRpc2J1cnNlbWVudHMgYXBwZWFyIHRvIGJlIHJlYXNvbmFibGUgYW5kIEkgd2lsbCBhbGxvdyB0aGVtIGFzIGNsYWltZWQuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+Q29zdHMgYXMgVGF4ZWQ8L3VuZGVybGluZT48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSBoZXJlYnkgdGF4IHRoZSBmZWVzIGFuZCBkaXNidXJzZW1lbnRzLCBpbmNsdXNpdmUgb2YgUFNUIGFuZCA1MCUgb2YgR1NULCB3aGVyZSBhcHBsaWNhYmxlLCBhcyBmb2xsb3dzOjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT48dW5kZXJsaW5lPkNvdW5zZWwgRmVlczwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5NaWNoYWVsIEtvY2ggICAgICAgICAgICAgICAgICAgICAgICAgICAgJDksODg5LjQzPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPjx1bmRlcmxpbmU+RGlzYnVyc2VtZW50czwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Jbi1ob3VzZSBwaG90b2NvcGllcyAgICAgICAgICAgICAgICAgICAgJDYzNy4yMDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5PdGhlciBwaG90b2NvcGllcyAgICAgICAgICAgICAgICAgICAgICAgICQzNjUuNjU8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TG9uZyBkaXN0YW5jZSB0ZWxlcGhvbmUvZmF4ICAgICAgICAgICQyNjAuODg8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Q291cmllciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQ4NS42NTwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Qb3N0YWdlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMjMuMzI8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5Ub3RhbCBGZWVzIGFuZDwvdW5kZXJsaW5lPjwvcGFyYT4KPHBhcmE+PHVuZGVybGluZT5EaXNidXJzZW1lbnRzPC91bmRlcmxpbmU+ICAgICAgICAgICAgICAgICAgICAgICAgJDx1bmRlcmxpbmU+MTEsMjYyLjExPC91bmRlcmxpbmU+PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRoaXMgYW1vdW50IGlzIHRvIGJlIHBhaWQgYnkgdGhlIHJlc3BvbmRlbnRzIHRvIENvc3RzIE9yZGVyIDk1LTggaW4gdGhlIHByb3BvcnRpb25zIHNldCBvdXQgaW4gdGhhdCBvcmRlci48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+TG9yaSBBc3NoZXRvbi1TbWl0aDwvcGFyYT4KPHBhcmE+TGVnYWwgQ291bnNlbDwvcGFyYT4KPHBhcmE+Q2FuYWRpYW4gUmFkaW8tdGVsZXZpc2lvbiBhbmQ8L3BhcmE+CjxwYXJhPiAgIFRlbGVjb21tdW5pY2F0aW9ucyBDb21taXNzaW9uPC9wYXJhPgo8L3RleHQ+Cjx3YXJuaW5nPlRoZSBvZmZpY2lhbCB2ZXJzaW9uIG9mIHRoaXMgZG9jdW1lbnQgaXMgYXZhaWxhYmxlIGF0IHRoZSBmb2xsb3dpbmcgSW50ZXJuZXQgc2l0ZTogaHR0cDovL3d3dy5jcnRjLmdjLmNhPC93YXJuaW5nPgo8Y29weXJpZ2h0PkNvcHlyaWdodCBDYW5hZGlhbiBSYWRpby10ZWxldmlzaW9uIGFuZCBUZWxlY29tbXVuaWNhdGlvbnMgQ29tbWlzc2lvbiwgIDE5OTkuPC9jb3B5cmlnaHQ+CjwvdGVsZWNvbT4KPHRlbGVjb20+Cjxscj5PdHRhd2EsIDwvbHI+CjxkYXRlPjIzIEZlYnJ1YXJ5IDE5OTY8L2RhdGU+Cjx0eXBkb2M+VGF4YXRpb24gT3JkZXIgPC90eXBkb2M+CjxkZWNpc2lvbj48cGFyYT5DUlRDIDk2LTE8L3BhcmE+CjwvZGVjaXNpb24+CjxwYXJ0aWVzPjxwYXJhPkluIHJlOiBQcm92aXNpb24gb2YgRGlyZWN0b3J5IERhdGFiYXNlIEluZm9ybWF0aW9uIGFuZCBSZWFsLVRpbWUgQWNjZXNzIHRvIERpcmVjdG9yeSBBc3Npc3RhbmNlIERhdGFiYXNlcywgVGVsZWNvbSBEZWNpc2lvbiBDUlRDIDk1LTMsIDggTWFyY2ggMTk5NSwgYW5kIFdoaXRlIERpcmVjdG9yeSAtIEFwcGxpY2F0aW9uIHRvIFJldmlldyBhbmQgVmFyeSBEZWNpc2lvbiA5NS0zLCBUZWxlY29tIERlY2lzaW9uIENSVEMgOTUtMTQsIDI3IEp1bmUgMTk5NTwvcGFyYT4KPC9wYXJ0aWVzPgo8cGFydGllcz48cGFyYT5NYXJpZSBWYWxs6WUgZm9yIHRoZSBG6WTpcmF0aW9uIG5hdGlvbmFsZSBkZXMgYXNzb2NpYXRpb25zIGRlIGNvbnNvbW1hdGV1cnMgZHUgUXXpYmVjIChGTkFDUSkuPC9wYXJhPgo8L3BhcnRpZXM+CjxwYXJ0aWVzPjxwYXJhPkRlbmlzIEUuIEhlbnJ5IGZvciBTdGVudG9yIFJlc291cmNlIENlbnRyZSBJbmMuIChTdGVudG9yKS48L3BhcmE+CjwvcGFydGllcz4KPHRleHQ+PHBhcmE+PHVuZGVybGluZT5UQVhBVElPTiBPRiBDT1NUUyBPRiBGTkFDUTwvdW5kZXJsaW5lPjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UYXhpbmcgT2ZmaWNlcjogR2VvZmYgQmF0c3RvbmU8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+VGhpcyBvcmRlciBjb25zdGl0dXRlcyB0aGUgdGF4YXRpb24gb2YgY29zdHMgYXdhcmRlZCB0byBGTkFDUSBpbiB0aGUgcHJvY2VlZGluZ3MgbGVhZGluZyB0byA8dW5kZXJsaW5lPlByb3Zpc2lvbiBvZiBEaXJlY3RvcnkgRGF0YWJhc2UgSW5mb3JtYXRpb24gYW5kIFJlYWwtVGltZSBBY2Nlc3MgdG8gRGlyZWN0b3J5IEFzc2lzdGFuY2UgRGF0YWJhc2VzPC91bmRlcmxpbmU+LCBUZWxlY29tIERlY2lzaW9uIENSVEMgOTUtMywgOCBNYXJjaCAxOTk1IChEZWNpc2lvbiA5NS0zKSBhbmQgPHVuZGVybGluZT5XaGl0ZSBEaXJlY3RvcnkgLSBBcHBsaWNhdGlvbiB0byBSZXZpZXcgYW5kIFZhcnkgRGVjaXNpb24gOTUtMzwvdW5kZXJsaW5lPiwgVGVsZWNvbSBEZWNpc2lvbiBDUlRDIDk1LTE0LCAyNyBKdW5lIDE5OTUgKERlY2lzaW9uIDk1LTE0KS48L3BhcmE+CjxwYXJhPkNvc3RzIHdlcmUgYXdhcmRlZCB0byBGTkFDUSBwdXJzdWFudCB0byBUZWxlY29tIENvc3RzIE9yZGVyIENSVEMgOTUtMTQsIDIwIE5vdmVtYmVyIDE5OTUsIGluIGFjY29yZGFuY2Ugd2l0aCBzdWJzZWN0aW9uIDQ0KDEpIG9mIHRoZSA8dW5kZXJsaW5lPkNSVEMgVGVsZWNvbW11bmljYXRpb25zIFJ1bGVzIG9mIFByb2NlZHVyZTwvdW5kZXJsaW5lPi48L3BhcmE+CjxwYXJhPk9uIDE0IERlY2VtYmVyIDE5OTUsIEZOQUNRIHN1Ym1pdHRlZCBhIEJpbGwgb2YgQ29zdHMgZm9yIGl0cyBwYXJ0aWNpcGF0aW9uIGluIGJvdGggdGhlIERlY2lzaW9uIDk1LTMgYW5kIERlY2lzaW9uIDk1LTE0IHByb2NlZWRpbmdzLCBjbGFpbWluZyBhIHRvdGFsIG9mICQ4LDk3NS4xMCBpbiBmZWVzIGZvciBpdHMgbGVnYWwgY291bnNlbCBhbmQgaW4taG91c2UgYW5hbHlzdC4gRk5BQ1EncyBjbGFpbSBmb3IgbGVnYWwgZmVlcyBpbmNsdWRlZCBhIHJlZHVjZWQgYW1vdW50IGZvciBHU1QgYW5kIFFTVCBpbiByZWNvZ25pdGlvbiBvZiB0aGUgNTAlIHJlYmF0ZSBvbiB0aGVzZSB0YXhlcyB0byB3aGljaCBGTkFDUSBpcyBlbnRpdGxlZC48L3BhcmE+CjxwYXJhPkluIGEgbGV0dGVyIGRhdGVkIDIwIERlY2VtYmVyIDE5OTUsIFN0ZW50b3Igc3RhdGVkIHRoYXQgaXQgaGFkIG5vIGNvbW1lbnRzIG9uIHRoZSBCaWxsIG9mIENvc3RzLjwvcGFyYT4KPHBhcmE+PHVuZGVybGluZT5Db3Vuc2VsIGFuZCBBbmFseXN0IEZlZXM8L3VuZGVybGluZT48L3BhcmE+CjxwYXJhPkZOQUNRIGNsYWltZWQgYSB0b3RhbCBvZiAkNyw3NzUuMTAgcmVwcmVzZW50aW5nIDMyIGhvdXJzIHdvcmsgYXQgYSByYXRlIG9mICQyMzAuMDAgcGVyIGhvdXIgZm9yIGl0cyBsZWdhbCBjb3Vuc2VsLCBNci4gSmFjcXVlcyBTdC1BbWFudC4gSSBub3RlIHRoYXQgdGhpcyByYXRlIGlzIGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgcmF0ZSBmb3IgY291bnNlbCBvZiBNci4gU3QtQW1hbnQncyBleHBlcmllbmNlIHNwZWNpZmllZCBpbiB0aGUgQ29tbWlzc2lvbidzIGxlZ2FsIGRpcmVjdG9yYXRlJ3MgcmVjZW50IEd1aWRlbGluZXMgZm9yIHRoZSBUYXhhdGlvbiBvZiBDb3N0cyAodGhlIGd1aWRlbGluZXMpLiBBY2NvcmRpbmdseSwgSSB3aWxsIGFjY2VwdCB0aGlzIHJhdGUgYXMgYXBwcm9wcmlhdGUuPC9wYXJhPgo8cGFyYT5XaXRoIHJlc3BlY3QgdG8gdGhlIGFtb3VudCBvZiB0aW1lIGNsYWltZWQgZm9yIGNvdW5zZWwncyBwYXJ0aWNpcGF0aW9uLCBJIG5vdGUgYSBkaXNjcmVwYW5jeSBiZXR3ZWVuIHRoZSBhbW91bnQgY2xhaW1lZCBieSBGTkFDUSBhbmQgdGhlIGFtb3VudCB3aGljaCBhcHBlYXJzIGluIHRoZSBkb2NrZXRzIHByb3ZpZGVkIGJ5IE1yLiBTdC1BbWFudC4gVGhlIGRvY2tldHMgaW5kaWNhdGUgdGhhdCAzMC44IGhvdXJzIHdlcmUgZXhwZW5kZWQgd2hpbGUgRk5BQ1EgYXBwZWFycyB0byBoYXZlIGNsYWltZWQgZm9yIDMyIGhvdXJzLiBJbiB0aGUgY2lyY3Vtc3RhbmNlcywgSSBmaW5kIGl0IG1vcmUgYXBwcm9wcmlhdGUgdG8gdXNlIHRoZSB0b3RhbHMgc3VwcGxpZWQgYnkgTXIuIFN0LUFtYW50IGluIGhpcyBkb2NrZXRzLCBhbmQgYWNjb3JkaW5nbHkgaGF2ZSByZWR1Y2VkIHRoZSB0b3RhbCBjbGFpbWVkIHRvIDMwLjggaG91cnMsIGFuIGFtb3VudCB3aGljaCBJIGNvbnNpZGVyIHRvIGJlIHJlYXNvbmFibGUuPC9wYXJhPgo8cGFyYT5GTkFDUSBhbHNvIGNsYWltZWQgJDEsMjAwLjAwIGZvciBpdHMgaW4taG91c2UgYW5hbHlzdCwgTWFyaWUgVmFsbOllLiBUaGlzIGFtb3VudCByZXByZXNlbnRzIGEgdG90YWwgb2YgMyBkYXlzIHdvcmsgYXQgYSByYXRlIG9mICQ0MDAuMDAgcGVyIGRheS4gQXMgdGhpcyByYXRlIGlzIGFsc28gaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBndWlkZWxpbmVzLCBhbmQgSSBjb25zaWRlciB0aGUgYW1vdW50IG9mIHRpbWUgdG8gYmUgcmVhc29uYWJsZSBpbiB0aGUgY2lyY3Vtc3RhbmNlcywgSSB3aWxsIGFsbG93IHRoZSBhbW91bnQgYXMgY2xhaW1lZC48L3BhcmE+CjxwYXJhPjx1bmRlcmxpbmU+Q29zdHMgYXMgVGF4ZWQ8L3VuZGVybGluZT48L3BhcmE+CjxwYXJhPkkgaGVyZWJ5IHRheCB0aGUgZmVlcywgaW5jbHVkaW5nIDUwJSBvZiBHU1QgYW5kIFFTVCwgYXMgZm9sbG93czo8L3BhcmE+CjxwYXJhPjx1bmRlcmxpbmU+Q291bnNlbCBGZWVzPC91bmRlcmxpbmU+PC9wYXJhPgo8cGFyYT5Nci4gSmFjcXVlcyBTdC1BbWFudCA8dW5kZXJsaW5lPiQ3LDQ4My41NDwvdW5kZXJsaW5lPjwvcGFyYT4KPHBhcmE+QW5hbHlzdCBGZWVzPC9wYXJhPgo8cGFyYT5NYXJpZSBWYWxs6WUgPHVuZGVybGluZT4kMSwyMDAuMDA8L3VuZGVybGluZT48L3BhcmE+CjxwYXJhPlRvdGFsIEZlZXMgJDgsNjgzLjU0PC9wYXJhPgo8cGFyYT5QdXJzdWFudCB0byBUZWxlY29tIENvc3RzIE9yZGVyIENSVEMgOTUtMTQsIHRoZSBjb3N0cyBhcyB0YXhlZCBzaGFsbCBiZSBwYWlkIGJ5IEFHVCBMaW1pdGVkLCBCQyBURUwsIEJlbGwgQ2FuYWRhLCBUaGUgSXNsYW5kIFRlbGVwaG9uZSBDb21wYW55IExpbWl0ZWQsIE1hcml0aW1lIFRlbCBhbmQgVGVsIExpbWl0ZWQsIFRoZSBOZXcgQnJ1bnN3aWNrIFRlbGVwaG9uZSBDb21wYW55LCBMaW1pdGVkIGFuZCB0aGUgTmV3Zm91bmRsYW5kIFRlbGVwaG9uZSBDb21wYW55IExpbWl0ZWQgaW4gcHJvcG9ydGlvbiB0byB0aGVpciBvcGVyYXRpbmcgcmV2ZW51ZXMgZnJvbSB0ZWxlY29tbXVuaWNhdGlvbnMgYWN0aXZpdGllcywgYXMgcmVwb3J0ZWQgaW4gZWFjaCBjb21wYW55J3MgbW9zdCByZWNlbnQgYXVkaXRlZCBmaW5hbmNpYWwgc3RhdGVtZW50cy48L3BhcmE+CjxwYXJhPkdlb2ZmIEJhdHN0b25lPC9wYXJhPgo8cGFyYT5MZWdhbCBDb3Vuc2VsPC9wYXJhPgo8cGFyYT5DYW5hZGlhbiBSYWRpby10ZWxldmlzaW9uIGFuZDwvcGFyYT4KPHBhcmE+VGVsZWNvbW11bmljYXRpb25zIENvbW1pc3Npb24gPC9wYXJhPgo8L3RleHQ+Cjx3YXJuaW5nPlRoZSBvZmZpY2lhbCB2ZXJzaW9uIG9mIHRoaXMgZG9jdW1lbnQgaXMgYXZhaWxhYmxlIGF0IHRoZSBmb2xsb3dpbmcgSW50ZXJuZXQgc2l0ZTogaHR0cDovL3d3dy5jcnRjLmdjLmNhPC93YXJuaW5nPgo8Y29weXJpZ2h0PkNvcHlyaWdodCBDYW5hZGlhbiBSYWRpby10ZWxldmlzaW9uIGFuZCBUZWxlY29tbXVuaWNhdGlvbnMgQ29tbWlzc2lvbiwgIDE5OTkuPC9jb3B5cmlnaHQ+CjwvdGVsZWNvbT4KPHRlbGVjb20+Cjxscj5PdHRhd2EsIDwvbHI+CjxkYXRlPjkgRGVjZW1iZXIgMTk5NjwvZGF0ZT4KPHR5cGRvYz5UYXhhdGlvbiBPcmRlciA8L3R5cGRvYz4KPGRlY2lzaW9uPjxwYXJhPkNSVEMgOTYtMTQ8L3BhcmE+CjwvZGVjaXNpb24+CjxwYXJ0aWVzPjxwYXJhPkluIHJlOiAgTG9jYWwgU2VydmljZSBQcmljaW5nIE9wdGlvbnMgLSBUZWxlY29tIFB1YmxpYyBOb3RpY2VzIENSVEMgOTUtNDkgYW5kIDk1LTU2LjwvcGFyYT4KPC9wYXJ0aWVzPgo8cGFydGllcz48cGFyYT5SZWZlcmVuY2U6ICAxNjQwLTAzNjwvcGFyYT4KPC9wYXJ0aWVzPgo8dGV4dD48cGFyYT5Kb2huIEtlcnIgZm9yIHRoZSBUYXRsYXlva28gVGhpbmsgVGFuayAoVGF0bGF5b2tvKS48L3BhcmE+CjxwYXJhPk1pY2hhZWwgUC4gUmVkbW9uZCBmb3IgQkMgVEVMLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UQVhBVElPTiBPRiBDT1NUUyBPRiBUQVRMQVlPS088L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+VGF4aW5nIE9mZmljZXI6ICBHZW9mZiBCYXRzdG9uZTwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UaGlzIE9yZGVyIGNvbnN0aXR1dGVzIHRoZSB0YXhhdGlvbiBvZiBjb3N0cyBhd2FyZGVkIHRvIFRhdGxheW9rbyBpbiB0aGUgY29udGV4dCBvZiB0aGUgYWJvdmUtcmVmZXJlbmNlZCBwcm9jZWVkaW5nLiAgQ29zdHMgd2VyZSBhd2FyZGVkIHRvIFRhdGxheW9rbyBpbiBUZWxlY29tIENvc3RzIE9yZGVyIENSVEMgOTYtOSAoQ29zdHMgT3JkZXIgOTYtOSksIDE5IEp1bmUgMTk5NiwgaW4gYWNjb3JkYW5jZSB3aXRoIHN1YnNlY3Rpb24gNDQoMSkgb2YgdGhlIENSVEMgVGVsZWNvbW11bmljYXRpb25zIFJ1bGVzIG9mIFByb2NlZHVyZSAodGhlIFJ1bGVzKS4gQ29zdHMgT3JkZXIgOTYtOSBwcm92aWRlZCB0aGF0IGNvc3RzIGFyZSB0byBiZSBwYWlkIHRvIFRhdGxheW9rbyBieSBCQyBURUwuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk9uIDIxIEp1bmUgMTk5NiwgVGF0bGF5b2tvIGZpbGVkIGEgQmlsbCBvZiBDb3N0cyBpbiB3aGljaCBpdCBjbGFpbWVkIGEgdG90YWwgb2YgJDEsMzcwLjc1IGluIGNvc3RzLCBjb25zaXN0aW5nIG9mICQ1MjUuMDAgaW4gZmVlcywgYW5kICQ4NDUuNzUgaW4gZGlzYnVyc2VtZW50cy48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QkMgVEVMIGZpbGVkIGl0cyBjb21tZW50cyBvbiB0aGUgQmlsbCBvZiBDb3N0cyBvbiA5IEF1Z3VzdCAxOTk2LiAgVGF0bGF5b2tvIGZpbGVkIGl0cyByZXBseSBvbiAyNiBBdWd1c3QgMTk5Ni48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+RmVlczwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JbiBpdHMgQmlsbCBvZiBDb3N0cywgVGF0bGF5b2tvIGNsYWltZWQgdGhyZWUgZGF5cyBhdCAkMTc1LjAwIHBlciBkYXkgdG8gY292ZXIgdGhlIGNvc3RzIG9mIHRoZSBwcmVwYXJhdGlvbiBvZiBpdHMgc3VibWlzc2lvbnMuICBUYXRsYXlva28gc3VibWl0dGVkIHRoYXQgdGhlIHJhdGUgY2xhaW1lZCBpcyBmYWlyIGFuZCByZWFzb25hYmxlIGJhc2VkIG9uIHRoZSBlZHVjYXRpb24gYW5kIHBhc3Qgd29yayBleHBlcmllbmNlIG9mIGl0cyBwYXJ0bmVycy4gIFRhdGxheW9rbyBpbmRpY2F0ZWQgdGhhdCBhcyBhIHJlc3VsdCBvZiBpdHMgcGFydGljaXBhdGlvbiwgZmFybSB3b3JrIGFuZCBzdWJzdGl0dXRlIHRlYWNoaW5nIGRpZCBub3QgZ2V0IGRvbmUuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkluIGl0cyBjb21tZW50cywgQkMgVEVMIG5vdGVkIHRoYXQgVGF0bGF5b2tvJ3MgY2xhaW0gZm9yIGZlZXMgZG9lcyBub3QgcmVwcmVzZW50IGEgY2xhaW0gZm9yIHJlaW1idXJzZW1lbnQgb2YgbGVnYWwgZmVlcywgZXhwZXJ0IGZlZXMsIG9yIGluLWhvdXNlIHNlcnZpY2VzLCBhbmQgc3VibWl0dGVkIHRoYXQgTXIuIEtlcnIgY2Fubm90IGJlIGNvbnNpZGVyZWQgYW4gaW4taG91c2Ugc2FsYXJpZWQgZW1wbG95ZWUgZm9yIHRoZSBwdXJwb3NlcyBvZiBzZWN0aW9uIDExIG9mIHRoZSBDb21taXNzaW9uJ3MgTGVnYWwgRGlyZWN0b3JhdGUncyBHdWlkZWxpbmVzIGZvciB0aGUgVGF4YXRpb24gb2YgQ29zdHMgKHRoZSBHdWlkZWxpbmVzKS4gICBCQyBURUwgYWxzbyBzdWJtaXR0ZWQgdGhhdCBUYXRsYXlva28ncyBjbGFpbSBpcyBmb3IgY29tcGVuc2F0aW9uIGZvciBsb3N0IG9wcG9ydHVuaXRpZXMgdG8gZWFybiBtb25leSwgYW5kIHRoYXQgaXQgd291bGQgYmUgaW5hcHByb3ByaWF0ZSBmb3IgQkMgVEVMIHRvIGJlIHJlcXVpcmVkIHRvIGNvbXBlbnNhdGUgVGF0bGF5b2tvIGluIHRoaXMgcmVnYXJkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JbiBpdHMgcmVwbHksIFRhdGxheW9rbyBub3RlZCB0aGF0IGl0cyBjbGFpbSByZXByZXNlbnRzIHR3byBmdWxsIGRheXMnIHJlc2VhcmNoIGFuZCBwcmVwYXJhdGlvbiwgYW5kIG9uZSBmdWxsIGRheSdzIGF0dGVuZGFuY2UgYXQgdGhlIFJlZ2lvbmFsIEhlYXJpbmcgaW4gVmFuY291dmVyLiAgVGF0bGF5b2tvIGRpZCBub3QgZGVueSBCQyBURUwncyBhc3NlcnRpb24gdGhhdCBpdHMgY2xhaW0gZm9yIGZlZXMgaXMsIGluIGVmZmVjdCwgYSBjbGFpbSBmb3IgY29tcGVuc2F0aW9uIGZvciBsb3N0IG9wcG9ydHVuaXRpZXMuICBSYXRoZXIsIGl0IHN0YXRlZCB0aGF0ICJbb111ciByZWFsaXR5IGlzIHRoYXQgd2UgZGlkIGxvc2UgaW5jb21lIGZyb20gb3RoZXIgc291cmNlcyBhcyBhIHJlc3VsdCBvZiBwcmVwYXJpbmcgZm9yIGFuZCBwYXJ0aWNpcGF0aW5nIGluIHRoZSBDUlRDIGhlYXJpbmcuIiAgVGF0bGF5b2tvIGFyZ3VlZCB0aGF0IGl0IHNob3VsZCBuZXZlcnRoZWxlc3MgYmUgZW50aXRsZWQgdG8gcmVjb3ZlciB0aGVzZSBsb3NzZXMuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRoZSBDb21taXNzaW9uIGF3YXJkcyBjb3N0cyB0byBjb21wZW5zYXRlIGludGVydmVuZXJzIGZvciBleHBlbnNlcyBpbmN1cnJlZCBhcyBhIHJlc3VsdCBvZiB0aGVpciBwYXJ0aWNpcGF0aW9uIGluIGEgcHJvY2VlZGluZy4gIFdoaWxlIFRhdGxheW9rbyBoYXMgY2hhcmFjdGVyaXplZCBpdHMgY2xhaW0gZm9yIGZlZXMgYXMgcmVpbWJ1cnNlbWVudCBmb3IgdGhlIGNvc3RzIG9mIHByZXBhcmluZyBpdHMgc3VibWlzc2lvbiwgaXQgaXMgdW5jbGVhciB3aGF0IGNvc3RzLCBpZiBhbnksIHdlcmUgYWN0dWFsbHkgaW5jdXJyZWQgYnkgVGF0bGF5b2tvIGluIHRoaXMgcmVnYXJkLiAgVGhlcmUgaXMgbm8gaW5kaWNhdGlvbiBpbiB0aGUgcmVjb3JkIHRoYXQgVGF0bGF5b2tvIHdhcyByZXF1aXJlZCB0byBwYXkgb3V0IGFuIGFtb3VudCBpbiByZXNwZWN0IG9mIGZlZXMgYXMgYSByZXN1bHQgb2YgaXRzIHBhcnRpY2lwYXRpb24gaW4gdGhlIGhlYXJpbmcuICBPbiB0aGlzIGJhc2lzLCBJIGFtIG9mIHRoZSB2aWV3IHRoYXQgVGF0bGF5b2tvJ3MgY2xhaW0gZm9yIGZlZXMgc2hvdWxkIGJlIGRlbmllZC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+RGlzYnVyc2VtZW50czwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UYXRsYXlva28gY2xhaW1lZCAkNTYxLjc1IGZvciB2ZWhpY2xlIG1pbGVhZ2UgcmVwcmVzZW50aW5nIGEgdG90YWwgZGlzdGFuY2Ugb2YgMTYwNSBraWxvbWV0cmVzIGF0ICQuMzUgcGVyIGtpbG9tZXRyZS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+VGhlIHJhdGUgY2xhaW1lZCBmb3IgYXV0b21vYmlsZSB0cmF2ZWwgaXMgY29uc2lzdGVudCB3aXRoIHRoYXQgc3BlY2lmaWVkIGluIHRoZSBHdWlkZWxpbmVzLCBhbmQgdGhlIGRpc3RhbmNlIHRyYXZlbGxlZCBhcHBlYXJzIHRvIGJlIHJlYXNvbmFibGUuICBJIGFjY2VwdCB0aGF0IHRoaXMgZXhwZW5zZSB3YXMgcmVhc29uYWJseSBhbmQgbmVjZXNzYXJpbHkgaW5jdXJyZWQgZm9yIHRoZSBwdXJwb3NlcyBvZiBUYXRsYXlva28ncyBwYXJ0aWNpcGF0aW9uLCBhbmQgYWNjb3JkaW5nbHkgd2lsbCBhbGxvdyB0aGUgYW1vdW50IGFzIGNsYWltZWQuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRhdGxheW9rbyBhbHNvIGNsYWltZWQgJDE0NC4wMCBpbiByZXNwZWN0IG9mIG1lYWwgZXhwZW5zZXMuICBUaGlzIGFtb3VudCByZXByZXNlbnRzIG1lYWxzIGZvciBvbmUgcGVyc29uIG92ZXIgdGhyZWUgZGF5cyBhdCBhIHJhdGUgb2YgJDQ4LjAwIHBlciBkYXkuICBUaGUgcmF0ZSBjbGFpbWVkIGlzIGNvbnNpc3RlbnQgd2l0aCB0aGF0IHN0YXRlZCBpbiB0aGUgR3VpZGVsaW5lcy48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QkMgVEVMIG9iamVjdGVkIHRvIHRoZSBudW1iZXIgb2YgZGF5cyBjbGFpbWVkIGZvciBtZWFsIGV4cGVuc2VzLCBub3RpbmcgdGhhdCBUYXRsYXlva28gYXR0ZW5kZWQgdGhlIFZhbmNvdXZlciBoZWFyaW5nIGZvciBvbmx5IGEgcG9ydGlvbiBvZiBvbmUgZGF5LjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JdCBpcyBjbGVhciwgZ2l2ZW4gdGhlIGRpc3RhbmNlIHdoaWNoIGhlIHRyYXZlbGxlZCwgdGhhdCBNci4gS2VyciB3b3VsZCBoYXZlIHJlcXVpcmVkIGEgZnVsbCBkYXkgb2YgdHJhdmVsIGJvdGggdG8gYW5kIGZyb20gdGhlIGhlYXJpbmcgaW4gb3JkZXIgdG8gYmUgYWJsZSB0byBtYWtlIGhpcyBwcmVzZW50YXRpb24gaW4gVmFuY291dmVyLiAgQXMgdGhlc2UgY29zdHMgd2VyZSBuZWNlc3NhcmlseSBpbmN1cnJlZCBpbiBjb25uZWN0aW9uIHdpdGggaGlzIHByZXNlbnRhdGlvbiwgSSBhbSBvZiB0aGUgdmlldyB0aGF0IGl0IGlzIHJlYXNvbmFibGUgaW4gdGhlIGNpcmN1bXN0YW5jZXMgdGhhdCBtZWFsIGV4cGVuc2VzIGZvciBhbGwgdGhyZWUgZGF5cyBiZSBhbGxvd2VkLiAgQWNjb3JkaW5nbHksIEkgd2lsbCBhbGxvdyB0aGlzIGV4cGVuc2UgYXMgY2xhaW1lZC4gPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkZpbmFsbHksIFRhdGxheW9rbyBhbHNvIGNsYWltZWQgJDE0MC4wMCBmb3IgdHdvIG5pZ2h0cyBhY2NvbW1vZGF0aW9uLiAgSW4gaXRzIEJpbGwgb2YgQ29zdHMsIFRhdGxheW9rbyBoYWQgY2xhaW1lZCAkMjEwLjAwIG9uIHRoZSBiYXNpcyBvZiBhbiBhcml0aG1ldGljIG1pc3Rha2UsIGJ1dCBzdWJzZXF1ZW50bHkgY29ycmVjdGVkIHRoZSBhbW91bnQgaW4gaXRzIHJlcGx5LjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5CQyBURUwgbm90ZWQgdGhhdCBubyByZWNlaXB0cyB3ZXJlIHByb3ZpZGVkIHRvIGp1c3RpZnkgdGhlIGFtb3VudCBjbGFpbWVkLCBhbmQgdGhhdCBubyBpbmRpY2F0aW9uIGFzIHRvIHdoeSByZWNlaXB0cyB3ZXJlIG5vdCBwcm92aWRlZCBoYXMgYmVlbiBnaXZlbi4gIFRhdGxheW9rbyBkaWQgbm90IHJlc3BvbmQgdG8gQkMgVEVMJ3MgY29tbWVudHMgb24gdGhpcyBpc3N1ZSBpbiBpdHMgcmVwbHkuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlNlY3Rpb24gMjggb2YgdGhlIEd1aWRlbGluZXMgc3RhdGVzIHRoYXQgdG8gdGhlIGV4dGVudCBwb3NzaWJsZSwgYXBwbGljYW50cyBmb3IgY29zdHMgc2hhbGwgZmlsZSByZWNlaXB0cyBmb3IgYWxsIGRpc2J1cnNlbWVudHMgY2xhaW1lZCwgYW5kIHRoYXQgd2hlcmUgcmVjZWlwdHMgYXJlIG5vdCBhdmFpbGFibGUsIG90aGVyIGV2aWRlbmNlIG9mIHRoZSBkaXNidXJzZW1lbnQgc2hvdWxkIGJlIGZpbGVkLiAgSW4gdGhpcyBjYXNlLCBubyBldmlkZW5jZSBpbiB0aGUgZm9ybSBvZiByZWNlaXB0cyBvciBvdGhlciBleHRlcm5hbCBkb2N1bWVudGF0aW9uIGluIHN1cHBvcnQgb2YgVGF0bGF5b2tvJ3MgY2xhaW0gZm9yIGFjY29tbW9kYXRpb24gaGFzIGJlZW4gcHJvdmlkZWQuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgYXBwcmVjaWF0ZSB0aGF0IGl0IHdhcyBUYXRsYXlva28ncyBmaXJzdCBhcHBlYXJhbmNlIGluIGEgcHJvY2VlZGluZyBiZWZvcmUgdGhlIENvbW1pc3Npb24gYW5kIHRoYXQgaXQgaGFzIG5vIHByZXZpb3VzIGV4cGVyaWVuY2Ugd2l0aCB0aGUgQ29tbWlzc2lvbidzIHRheGF0aW9uIHByb2Nlc3MuICBJbiB0aGVzZSBjaXJjdW1zdGFuY2VzLCBzb21lIGZsZXhpYmlsaXR5IHdpdGggcmVzcGVjdCB0byB0aGUgbWFubmVyIGluIHdoaWNoIHRoZSBHdWlkZWxpbmVzIGFyZSBhcHBsaWVkIG1heSBiZSB3YXJyYW50ZWQuICBIb3dldmVyLCBJIG5vdGUgaW4gdGhpcyBjYXNlIHRoYXQgdGhlIGlzc3VlIG9mIFRhdGxheW9rbydzIGxhY2sgb2YgcmVjZWlwdHMgd2FzIHJhaXNlZCBleHByZXNzbHkgYnkgQkMgVEVMIGluIGl0cyBjb21tZW50cywgYW5kIHRoYXQgVGF0bGF5b2tvIG9mZmVyZWQgbm8gZXhwbGFuYXRpb24gaW4gaXRzIHJlcGx5IGFzIHRvIHdoeSBpdCBoYWQgbm90IHByb3ZpZGVkIGV2aWRlbmNlIHRvIHN1YnN0YW50aWF0ZSB0aGUgYW1vdW50cyBjbGFpbWVkLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JbiB0aGUgYWJzZW5jZSBvZiBhbnkgcmVjZWlwdHMgb3Igb3RoZXIgZXZpZGVuY2UgdG8ganVzdGlmeSB0aGUgZXhwZW5zZXMgYXMgY2xhaW1lZCwgSSBhbSB1bmFibGUgdG8gZGV0ZXJtaW5lLCBhcyByZXF1aXJlZCBieSB0aGUgUnVsZXMsIHRoYXQgdGhpcyBleHBlbnNlIHdhcyBhY3R1YWxseSBpbmN1cnJlZC4gIEFjY29yZGluZ2x5LCBJIGFtIG9mIHRoZSB2aWV3IHRoYXQgVGF0bGF5b2tvJ3MgY2xhaW0gaW4gcmVzcGVjdCBvZiBhY2NvbW1vZGF0aW9ucyBzaG91bGQgYmUgZGVuaWVkLiAgSG93ZXZlciwgaW4gdGhlIGV2ZW50IHRoYXQgVGF0bGF5b2tvIGlzIGFibGUgdG8gcHJvdmlkZSBtZSB3aXRoIGV2aWRlbmNlIHN1cHBvcnRpbmcgaXRzIGNsYWltLCBvciBhIHNhdGlzZmFjdG9yeSBleHBsYW5hdGlvbiBhcyB0byB3aHkgc3VjaCBldmlkZW5jZSBpcyBub3QgYXZhaWxhYmxlLCBJIHdvdWxkIGJlIHByZXBhcmVkIHRvIGZpbmQgdHdvIG5pZ2h0cyBhY2NvbW1vZGF0aW9uIGF0ICQ3MC4wMCBvciBsZXNzIHBlciBuaWdodCB0byBiZSByZWFzb25hYmxlLCBhbmQgdG8gYWxsb3cgc3VjaCBjbGFpbXMuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkNvc3RzIGFzIFRheGVkPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgaGVyZWJ5IHRheCB0aGUgZGlzYnVyc2VtZW50cyBvZiBUYXRsYXlva28gYXMgZm9sbG93czo8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QXV0b21vYmlsZSB0cmF2ZWwgICAgICAkNTYxLjc1PC9wYXJhPgo8cGFyYT5NZWFscyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTQ0LjAwPC9wYXJhPgo8cGFyYT4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9fX19fX19fPC9wYXJhPgo8cGFyYT5Ub3RhbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQ3MDUuNzU8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+R2VvZmYgQmF0c3RvbmU8L3BhcmE+CjxwYXJhPkxlZ2FsIENvdW5zZWw8L3BhcmE+CjwvdGV4dD4KPHdhcm5pbmc+VGhlIG9mZmljaWFsIHZlcnNpb24gb2YgdGhpcyBkb2N1bWVudCBpcyBhdmFpbGFibGUgYXQgdGhlIGZvbGxvd2luZyBJbnRlcm5ldCBzaXRlOiBodHRwOi8vd3d3LmNydGMuZ2MuY2E8L3dhcm5pbmc+Cjxjb3B5cmlnaHQ+Q29weXJpZ2h0IENhbmFkaWFuIFJhZGlvLXRlbGV2aXNpb24gYW5kIFRlbGVjb21tdW5pY2F0aW9ucyBDb21taXNzaW9uLCAgMTk5OS48L2NvcHlyaWdodD4KPC90ZWxlY29tPgo8dGVsZWNvbT4KPGxyPk90dGF3YSw8L2xyPgo8ZGF0ZT4gMjkgTm92ZW1iZXIgMTk5NjwvZGF0ZT4KPHR5cGRvYz5UYXhhdGlvbiBPcmRlciA8L3R5cGRvYz4KPGRlY2lzaW9uPjxwYXJhPkNSVEMgOTYtMTM8L3BhcmE+CjwvZGVjaXNpb24+CjxwYXJ0aWVzPjxwYXJhPkluIHJlOiAgQmVsbCBDYW5hZGEvQmVsbCBTeWdtYSBSZXN0cnVjdHVyaW5nIGFuZCBSZWxhdGVkIFRyYW5zYWN0aW9ucyAtIFRlbGVjb20gUHVibGljIE5vdGljZSBDUlRDIDk0LTUzPC9wYXJhPgo8L3BhcnRpZXM+CjxwYXJ0aWVzPjxwYXJhPlJlZmVyZW5jZTogIDE2NDAtMDM4PC9wYXJhPgo8L3BhcnRpZXM+Cjx0ZXh0PjxwYXJhPk1pY2hhZWwgSmFuaWdhbiBmb3IgdGhlIE5hdGlvbmFsIEFudGktUG92ZXJ0eSBPcmdhbml6YXRpb24gKE5BUE8pLjwvcGFyYT4KPHBhcmE+QmVybmFyZCBDb3VydG9pcyBmb3IgQmVsbCBDYW5hZGEgKEJlbGwpLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UQVhBVElPTiBPRiBDT1NUUyBPRiBOQVBPPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRheGluZyBPZmZpY2VyOiAgR2VvZmYgQmF0c3RvbmU8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+VGhpcyBPcmRlciBjb25zdGl0dXRlcyB0aGUgdGF4YXRpb24gb2YgY29zdHMgYXdhcmRlZCB0byBOQVBPIGluIHRoZSBwcm9jZWVkaW5nIGxlYWRpbmcgdG8gQmVsbCBDYW5hZGEvQmVsbCBTeWdtYSBSZXN0cnVjdHVyaW5nIGFuZCBSZWxhdGVkIFRyYW5zYWN0aW9ucywgVGVsZWNvbSBEZWNpc2lvbiBDUlRDIDk2LTMsIDkgRmVicnVhcnkgMTk5Ni4gIENvc3RzIHdlcmUgYXdhcmRlZCB0byBOQVBPIHB1cnN1YW50IHRvIFRlbGVjb20gQ29zdHMgT3JkZXIgQ1JUQyA5Ni0xMiwgMzAgSnVseSAxOTk2IChDb3N0cyBPcmRlciA5Ni0xMiksIGluIGFjY29yZGFuY2Ugd2l0aCBzdWJzZWN0aW9uIDQ0KDEpIG9mIHRoZSBDUlRDIFRlbGVjb21tdW5pY2F0aW9ucyBSdWxlcyBvZiBQcm9jZWR1cmUuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkluIGl0cyBCaWxsIG9mIENvc3RzIGFuZCBBZmZpZGF2aXQgb2YgRGlzYnVyc2VtZW50cywgZGF0ZWQgMjcgQXVndXN0IDE5OTYsIE5BUE8gY2xhaW1lZCBhIHRvdGFsIG9mICQzLDEzMi4yNCBjb25zaXN0aW5nIG9mICQxLDQ1Mi4xMCBpbiBjb3Vuc2VsIGZlZXMsICQxLDY3My42MCBpbiBjb25zdWx0YW50IGZlZXMsIGFuZCAkNi41NCBpbiBkaXNidXJzZW1lbnRzLiAgVGhlc2UgYW1vdW50cyBhcmUgaW5jbHVzaXZlIG9mIDMuNSUgR1NUIGluIHJlY29nbml0aW9uIG9mIHRoZSA1MCUgR1NUIHJlYmF0ZSB3aGljaCBpcyBhdmFpbGFibGUgaW4gdGhlIGNpcmN1bXN0YW5jZXMgb2YgdGhpcyBjYXNlLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5CeSBsZXR0ZXIgZGF0ZWQgMjkgQXVndXN0IDE5OTYsIEJlbGwgc3RhdGVkIHRoYXQgaXQgZG9lcyBub3Qgb2JqZWN0IHRvIHRoZSBhbW91bnRzIGNsYWltZWQgYnkgTkFQTyBpbiBpdHMgQmlsbCBvZiBDb3N0cyBhbmQgQWZmaWRhdml0IG9mIERpc2J1cnNlbWVudHMgd2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBob3VybHkgcmF0ZSBjbGFpbWVkIGJ5IE5BUE8gaW4gcmVzcGVjdCBvZiBpdHMgY29uc3VsdGFudCwgTXIuIEpvaG4gVG9kZC4gIEJlbGwgbm90ZWQgdGhhdCB0aGUgQ29tbWlzc2lvbidzIExlZ2FsIERpcmVjdG9yYXRlJ3MgR3VpZGVsaW5lcyBmb3IgdGhlIFRheGF0aW9uIG9mIENvc3RzICh0aGUgR3VpZGVsaW5lcykgcHJvdmlkZSBmb3IgYW4gaG91cmx5IHJhdGUgb2YgJDE2MCBmb3IgYSBjb25zdWx0YW50IG9mIE1yLiBUb2RkJ3MgZXhwZXJpZW5jZSwgYW5kIHN1Ym1pdHRlZCwgdGhlcmVmb3JlLCB0aGF0IHRoZSBhbW91bnQgY2xhaW1lZCBmb3Igd29yayBwZXJmb3JtZWQgYnkgTXIuIFRvZGQgc2hvdWxkIGJlICQxLDYyMi44OCwgcmF0aGVyIHRoYW4gJDEsNjczLjYwLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5OQVBPIGRpZCBub3Qgc3VibWl0IGEgcmVwbHkuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRoZSBHdWlkZWxpbmVzIHNldCBvdXQgYW4gaG91cmx5IHJhdGUgb2YgJDE2MCBmb3IgYSBjb25zdWx0YW50IG9mIE1yLiBUb2RkJ3MgZXhwZXJpZW5jZS4gIFNlY3Rpb24gc2l4IG9mIHRoZSBHdWlkZWxpbmVzIHByb3ZpZGVzIHRoYXQgd2hlcmUgdGhlIGFwcGxpY2FudCBiZWxpZXZlcyB0aGF0IGV4Y2VwdGlvbmFsIGNpcmN1bXN0YW5jZXMgZXhpc3Qgd2FycmFudGluZyBhIGRlcGFydHVyZSBmcm9tIHRoZSBHdWlkZWxpbmVzLCBhIGJyaWVmIHdyaXR0ZW4gc3VibWlzc2lvbiBzaG93aW5nIGNhdXNlIHdoeSB0aGlzIGlzIHRoZSBjYXNlIG11c3QgYmUgZmlsZWQuICBObyBzdWJtaXNzaW9uIGluIHN1cHBvcnQgb2YgdGhlICQxNjUgcmF0ZSBjbGFpbWVkIGJ5IE5BUE8gd2FzIHN1Ym1pdHRlZCBpbiB0aGlzIGNhc2UuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkkgZmluZCB0aGUgcmF0ZSBvZiAkMTYwIHNldCBvdXQgaW4gdGhlIEd1aWRlbGluZXMgdG8gYmUgYXBwcm9wcmlhdGUgZm9yIHRoZSB3b3JrIHBlcmZvcm1lZCBieSBNci4gVG9kZCwgYW5kIGhhdmUgcmVkdWNlZCBOQVBPJ3MgY2xhaW0gYWNjb3JkaW5nbHkuICBJIGFtIG9mIHRoZSB2aWV3IHRoYXQgdGhlIHJlbWFpbmluZyBmZWVzIGFuZCBkaXNidXJzZW1lbnRzIHNldCBvdXQgaW4gTkFQTydzIEJpbGwgb2YgQ29zdHMgYXJlIHJlYXNvbmFibGUsIGFuZCB3aWxsIGFsbG93IHRoZW0gYXMgY2xhaW1lZC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Q29zdHMgYXMgVGF4ZWQ8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+SSBoZXJlYnkgdGF4IHRoZSBmZWVzIGFuZCBkaXNidXJzZW1lbnRzIGFzIGZvbGxvd3M6PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkNvdW5zZWwgRmVlczwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Nci4gSmFuaWdhbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQxLDQwMy4wMDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5HU1QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQgICAgNDkuMTE8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Q29uc3VsdGFudCBGZWVzPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk1yLiBUb2RkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQxLDU2OC4wMDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5HU1QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQgICAgIDU0Ljg4PC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkRpc2J1cnNlbWVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICQgICAgICAgNi41NDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Ub3RhbCBGZWVzIGFuZCA8L3BhcmE+CjxwYXJhPkRpc2J1cnNlbWVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICQzLDA4MS41MzwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5BcyBzdGF0ZWQgaW4gQ29zdHMgT3JkZXIgOTYtMTIsIGNvc3RzIGFyZSB0byBiZSBwYWlkIHRvIE5BUE8gYnkgQmVsbC48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+R2VvZmYgQmF0c3RvbmU8L3BhcmE+CjxwYXJhPkxlZ2FsIENvdW5zZWw8L3BhcmE+CjxwYXJhPkNhbmFkaWFuIFJhZGlvLXRlbGV2aXNpb24gYW5kICA8L3BhcmE+CjxwYXJhPlRlbGVjb21tdW5pY2F0aW9ucyBDb21taXNzaW9uPC9wYXJhPgo8L3RleHQ+Cjx3YXJuaW5nPlRoZSBvZmZpY2lhbCB2ZXJzaW9uIG9mIHRoaXMgZG9jdW1lbnQgaXMgYXZhaWxhYmxlIGF0IHRoZSBmb2xsb3dpbmcgSW50ZXJuZXQgc2l0ZTogaHR0cDovL3d3dy5jcnRjLmdjLmNhPC93YXJuaW5nPgo8Y29weXJpZ2h0PkNvcHlyaWdodCBDYW5hZGlhbiBSYWRpby10ZWxldmlzaW9uIGFuZCBUZWxlY29tbXVuaWNhdGlvbnMgQ29tbWlzc2lvbiwgIDE5OTkuPC9jb3B5cmlnaHQ+CjwvdGVsZWNvbT4KPHRlbGVjb20+Cjxscj5PdHRhd2EsPC9scj4KPGRhdGU+IDMxIE9jdG9iZXIgMTk5NjwvZGF0ZT4KPHR5cGRvYz5UYXhhdGlvbiBPcmRlciA8L3R5cGRvYz4KPGRlY2lzaW9uPjxwYXJhPkNSVEMgOTYtMTE8L3BhcmE+CjwvZGVjaXNpb24+CjxwYXJ0aWVzPjxwYXJhPkluIHJlOiAgUmVndWxhdG9yeSBGcmFtZXdvcmsgZm9yIHRoZSBJbmRlcGVuZGVudCBUZWxlcGhvbmUgQ29tcGFuaWVzIGluIFF1ZWJlYyBhbmQgT250YXJpbyAoRXhjZXB0IE9udGFyaW8gTm9ydGhsYW5kIFRyYW5zcG9ydGF0aW9uIENvbW1pc3Npb24sIFF16WJlYy1U6WzpcGhvbmUgYW5kIFTpbOliZWMgbHTpZSkgYW5kIFRlbGVjb20gQ29zdHMgT3JkZXIgQ1JUQyA5Ni0xNDwvcGFyYT4KPC9wYXJ0aWVzPgo8dGV4dD48cGFyYT5NaWNoYWVsIEphbmlnYW4gZm9yIHRoZSBQdWJsaWMgSW50ZXJlc3QgQWR2b2NhY3kgQ2VudHJlIChQSUFDKS48L3BhcmE+CjxwYXJhPkdsZW5uIE8nQnJpZW4gZm9yIHRoZSBPbnRhcmlvIFRlbGVwaG9uZSBBc3NvY2lhdGlvbiAoT1RBKS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Q2hyaXN0aWFuIFMuIFRhY2l0IGZvciB0aGUgUHVibGljIFV0aWxpdHkgQ29tcGFuaWVzIChQVUNzKS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+VEFYQVRJT04gT0YgQ09TVFMgT0YgUElBQzwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5UYXhpbmcgT2ZmaWNlcjogIFBldGVyIE1jQ2FsbHVtPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPlRoaXMgb3JkZXIgY29uc3RpdHV0ZXMgdGhlIHRheGF0aW9uIG9mIGNvc3RzIGF3YXJkZWQgdG8gUElBQyBpbiB0aGUgY2FzZSBvZiBSZWd1bGF0b3J5IEZyYW1ld29yayBmb3IgdGhlIEluZGVwZW5kZW50IFRlbGVwaG9uZSBDb21wYW5pZXMgaW4gUXVlYmVjIGFuZCBPbnRhcmlvIChFeGNlcHQgT250YXJpbyBOb3J0aGxhbmQgVHJhbnNwb3J0YXRpb24gQ29tbWlzc2lvbiwgUXXpYmVjLVTpbOlwaG9uZSBhbmQgVOls6WJlYyBsdOllKSwgVGVsZWNvbSBEZWNpc2lvbiBDUlRDIDk2LTYsIDcgQXVndXN0IDE5OTYgKERlY2lzaW9uIDk2LTYpLjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Db3N0cyB3ZXJlIGF3YXJkZWQgdG8gUElBQyBieSBUZWxlY29tIENvc3RzIE9yZGVyIENSVEMgOTYtMTQgKENvc3RzIE9yZGVyIDk2LTE0KSwgaW4gYWNjb3JkYW5jZSB3aXRoIHNlY3Rpb24gNTYgb2YgdGhlIFRlbGVjb21tdW5pY2F0aW9ucyBBY3QgYW5kIHN1YnNlY3Rpb24gNDQoMSkgb2YgdGhlIENSVEMgVGVsZWNvbW11bmljYXRpb25zIFJ1bGVzIG9mIFByb2NlZHVyZS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QnkgbGV0dGVyIGRhdGVkIDYgU2VwdGVtYmVyIDE5OTYsIFBJQUMgc3VibWl0dGVkIGEgQmlsbCBvZiBDb3N0cyBpbiB0aGUgYW1vdW50IG9mICQzLDUwOS41MyBjb25zaXN0aW5nIG9mICQxLDA3MS4yMiBpbiBjb3Vuc2VsIGZlZXMsICQyLDM4NC42NCBpbiBjb25zdWx0YW50IGZlZXMgYW5kICQ1My42NyBpbiBkaXNidXJzZW1lbnRzLiAgVGhlc2UgYW1vdW50cyBhcmUgaW5jbHVzaXZlIG9mIDMuNSUgR1NULCBpbiByZWNvZ25pdGlvbiBvZiB0aGUgNTAlIEdTVCByZWJhdGUgd2hpY2ggSSB1bmRlcnN0YW5kIHRvIGJlIGF2YWlsYWJsZSBpbiB0aGUgY2lyY3Vtc3RhbmNlcyBvZiB0aGlzIGNhc2UuPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkluIENvc3RzIE9yZGVyIDk2LTE0LCBQSUFDIHdhcyBkaXJlY3RlZCB0byBzZXJ2ZSBjb3BpZXMgb2YgaXRzIEJpbGwgb2YgQ29zdHMgb24gdGhlIE9UQSAod2hpY2ggcmVwcmVzZW50ZWQgMjUgT250YXJpbyB0ZWxlcGhvbmUgY29tcGFuaWVzIHRoYXQgd2VyZSBwYXJ0eSB0byB0aGUgcHJvY2VlZGluZyBsZWFkaW5nIHRvIERlY2lzaW9uIDk2LTYpIGFuZCB0aGUgUFVDcyAodGhlIG11bmljaXBhbGx5LW93bmVkIHN5c3RlbXMgaW4gQnJ1Y2UsIERyeWRlbiwgS2Vld2F0aW4sIEtlbm9yYSBhbmQgVGh1bmRlciBCYXkgLSByZXByZXNlbnRlZCBieSBUYWNpdCBhbmQgVHJheW5vciwgYXR0b3JuZXlzKS48L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+QnkgbGV0dGVycyBkYXRlZCAyNCBTZXB0ZW1iZXIgMTk5NiBhbmQgMSBPY3RvYmVyIDE5OTYsIHRoZSBPVEEgYW5kIHRoZSBQVUNzIGFkdmlzZWQgdGhhdCB0aGV5IGhhZCBubyBjb21tZW50IHdpdGggcmVzcGVjdCB0byB0aGUgY29zdHMgdGhhdCBQSUFDIGhhcyBjbGFpbWVkLiAgSSB3aWxsIGFsbG93IHRoZSBhbW91bnRzIGFzIGNsYWltZWQsIGFuZCBub3RlIHRoYXQgdGhlIHJhdGVzIHJlZmxlY3QgdGhvc2Ugc2V0IG91dCBieSB0aGUgQ29tbWlzc2lvbidzIExlZ2FsIERpcmVjdG9yYXRlIGluIGl0cyBHdWlkZWxpbmVzIGZvciB0aGUgVGF4YXRpb24gb2YgQ29zdHMgZGF0ZWQgOSBKdW5lIDE5OTUuICBFYWNoIGluZGl2aWR1YWwgaW5kZXBlbmRlbnQgdGVsZXBob25lIGNvbXBhbnkgaXMgdG8gcGF5IHRoZSBwcm9wb3J0aW9uYXRlIGFtb3VudCBvZiB0aGUgdG90YWwgYW1vdW50IG9mIHRoZSBmZWVzIGFuZCBkaXNidXJzZW1lbnRzIGFzIHRheGVkIGJlbG93LCBhY2NvcmRpbmcgdG8gdGhlIHBlcmNlbnRhZ2VzIHNwZWNpZmllZCBpbiBBcHBlbmRpeCBBIGF0dGFjaGVkIHRvIENvc3RzIE9yZGVyIDk2LTE0LjwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5Db3N0cyBhcyBUYXhlZDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5JIGhlcmVieSB0YXggdGhlIGZlZXMgYW5kIGRpc2J1cnNlbWVudHMgYXMgZm9sbG93czo8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Q291bnNlbCBGZWVzPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPk1pY2hhZWwgSmFuaWdhbiAgICAgICAgICAgICAgICAgICAgICAgICQxLDAzNS4wMDwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5HU1QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCAgICAgMzYuMjI8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+Q29uc3VsdGFudCBGZWVzPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkpvaG4gVG9kZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJDIsMzA0LjAwPC9wYXJhPgo8L3RleHQ+Cjx0ZXh0PjxwYXJhPkdTVCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCAgICAgODAuNjQ8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+RGlzYnVyc2VtZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgJCAgICAgNTMuNjc8L3BhcmE+CjwvdGV4dD4KPHRleHQ+PHBhcmE+VE9UQUwgRkVFUzwvcGFyYT4KPHBhcmE+QU5EIERJU0JVUlNFTUVOVFMgICAgICAgICAgICAgICQzLDUwOS41MzwvcGFyYT4KPC90ZXh0Pgo8dGV4dD48cGFyYT5QZXRlciBNY0NhbGx1bTwvcGFyYT4KPHBhcmE+TGVnYWwgQ291bnNlbDwvcGFyYT4KPHBhcmE+Q2FuYWRpYW4gUmFkaW8tVGVsZXZpc29uIGFuZDwvcGFyYT4KPHBhcmE+ICBUZWxlY29tbXVuaWNhdGlvbnMgQ29tbWlzc2lvbjwvcGFyYT4KPC90ZXh0Pgo8d2FybmluZz5UaGUgb2ZmaWNpYWwgdmVyc2lvbiBvZiB0aGlzIGRvY3VtZW50IGlzIGF2YWlsYWJsZSBhdCB0aGUgZm9sbG93aW5nIEludGVybmV0IHNpdGU6IGh0dHA6Ly93d3cuY3J0Yy5nYy5jYTwvd2FybmluZz4KPGNvcHlyaWdodD5Db3B5cmlnaHQgQ2FuYWRpYW4gUmFkaW8tdGVsZXZpc2lvbiBhbmQgVGVsZWNvbW11bmljYXRpb25zIENvbW1pc3Npb24sICAxOTk5LjwvY29weXJpZ2h0Pgo8L3RlbGVjb20+CjwvdGVsZWNvbXM+Cg==