Return-Path: Delivered-To: apmail-cassandra-dev-archive@www.apache.org Received: (qmail 73339 invoked from network); 7 Apr 2010 10:39:49 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 7 Apr 2010 10:39:49 -0000 Received: (qmail 75358 invoked by uid 500); 7 Apr 2010 10:39:49 -0000 Delivered-To: apmail-cassandra-dev-archive@cassandra.apache.org Received: (qmail 75125 invoked by uid 500); 7 Apr 2010 10:39:45 -0000 Mailing-List: contact dev-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cassandra.apache.org Delivered-To: mailing list dev@cassandra.apache.org Received: (qmail 75117 invoked by uid 99); 7 Apr 2010 10:39:45 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 07 Apr 2010 10:39:45 +0000 X-ASF-Spam-Status: No, hits=4.4 required=10.0 tests=FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of shirishreddy89@gmail.com designates 209.85.210.194 as permitted sender) Received: from [209.85.210.194] (HELO mail-yx0-f194.google.com) (209.85.210.194) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 07 Apr 2010 10:39:38 +0000 Received: by yxe32 with SMTP id 32so897930yxe.11 for ; Wed, 07 Apr 2010 03:39:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:date:received:message-id :subject:from:to:content-type; bh=DlEMOeQaQ3tYqj0ZQdDSEyrf4q/3aGDdy29PGy/NIkE=; b=JtEojap6DR0W0y6AMTi4bonlWgS3ilmMGvQvDEm3vAGVPYYQcwsFpLGqiT3rZLgbWp OTHNf4bMJpr+JqeYyb+1LFv4uuDAoydSopcMPsExVXf/8BczsUYodK8CiGao8vtFYyp1 +34VwzZ2riGd0OvfgR2AY4aYocZsemgxf/Re0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=Y53frGa1LFI0HQOY5LwLDlnmZx2tJvzrr+RmNUONChSsj/DE3kzpxTcKgBlOWrfDB8 6aSbqzkbfCNI0zldJfIFLrBcqtmrYpJKHhyrBJ6Vn9/X/xC8MJIxQMqSKe1DPD+x5sTD kAl3pQElvXhNSyZ6vDU/UBDifa4Rvs1Bjrrvo= MIME-Version: 1.0 Received: by 10.151.155.21 with HTTP; Wed, 7 Apr 2010 03:39:15 -0700 (PDT) Date: Wed, 7 Apr 2010 16:09:15 +0530 Received: by 10.101.211.36 with SMTP id n36mr11887028anq.120.1270636755814; Wed, 07 Apr 2010 03:39:15 -0700 (PDT) Message-ID: Subject: Keyspace Keyspace1 doesnot exist From: shirish To: dev@cassandra.apache.org Content-Type: multipart/mixed; boundary=001636c92ede784a5e0483a32c40 --001636c92ede784a5e0483a32c40 Content-Type: multipart/alternative; boundary=001636c92ede784a4f0483a32c3e --001636c92ede784a4f0483a32c3e Content-Type: text/plain; charset=ISO-8859-1 Hello , I just pulled the latest code from git and built it. When I ran cassandra with the storage-conf.xml as attached which clearly has Keyspace1, Column family. It runs fine but when I connect using cassandra-cli and do set Keyspace1.Standard1['foo']['bar']='abc'; it displays the message Keyspace Keyspace1 doesnot exist in this schema. I am pretty sure that this was not a problem before. cheers, shirish --001636c92ede784a4f0483a32c3e Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Hello ,

I just pulled the latest code from git and built it. When I = ran cassandra with the storage-conf.xml as attached which clearly has Keysp= ace1, Column family. It runs fine but when I connect using cassandra-cli an= d do set Keyspace1.Standard1['foo']['bar']=3D'abc';= it displays the message Keyspace Keyspace1 doesnot exist in this schema. <= br>
I am pretty sure that this was not a problem before.

cheers,
= shirish
--001636c92ede784a4f0483a32c3e-- --001636c92ede784a5e0483a32c40 Content-Type: text/xml; charset=US-ASCII; name="storage-conf.xml" Content-Disposition: attachment; filename="storage-conf.xml" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g7q0avr20 PCEtLQogfiBMaWNlbnNlZCB0byB0aGUgQXBhY2hlIFNvZnR3YXJlIEZvdW5kYXRpb24gKEFTRikg dW5kZXIgb25lCiB+IG9yIG1vcmUgY29udHJpYnV0b3IgbGljZW5zZSBhZ3JlZW1lbnRzLiAgU2Vl IHRoZSBOT1RJQ0UgZmlsZQogfiBkaXN0cmlidXRlZCB3aXRoIHRoaXMgd29yayBmb3IgYWRkaXRp b25hbCBpbmZvcm1hdGlvbgogfiByZWdhcmRpbmcgY29weXJpZ2h0IG93bmVyc2hpcC4gIFRoZSBB U0YgbGljZW5zZXMgdGhpcyBmaWxlCiB+IHRvIHlvdSB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2Us IFZlcnNpb24gMi4wICh0aGUKIH4gIkxpY2Vuc2UiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmls ZSBleGNlcHQgaW4gY29tcGxpYW5jZQogfiB3aXRoIHRoZSBMaWNlbnNlLiAgWW91IG1heSBvYnRh aW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CiB+CiB+ICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9y Zy9saWNlbnNlcy9MSUNFTlNFLTIuMAogfgogfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJs ZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsCiB+IHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVu ZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuCiB+ICJBUyBJUyIgQkFTSVMsIFdJ VEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWQogfiBLSU5ELCBlaXRoZXIgZXhw cmVzcyBvciBpbXBsaWVkLiAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUKIH4gc3BlY2lmaWMgbGFu Z3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZCBsaW1pdGF0aW9ucwogfiB1bmRlciB0aGUg TGljZW5zZS4KLS0+CjxTdG9yYWdlPgogIDwhLS09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LS0+CiAgPCEtLSBCYXNp YyBDb25maWd1cmF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAtLT4KICA8IS0tPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0tPgoKICA8IS0tIAogICB+IFRoZSBuYW1l IG9mIHRoaXMgY2x1c3Rlci4gIFRoaXMgaXMgbWFpbmx5IHVzZWQgdG8gcHJldmVudCBtYWNoaW5l cyBpbgogICB+IG9uZSBsb2dpY2FsIGNsdXN0ZXIgZnJvbSBqb2luaW5nIGFub3RoZXIuCiAgLS0+ CiAgPENsdXN0ZXJOYW1lPlRlc3QgQ2x1c3RlcjwvQ2x1c3Rlck5hbWU+CgogIDwhLS0KICAgfiBU dXJuIG9uIHRvIG1ha2UgbmV3IFtub24tc2VlZF0gbm9kZXMgYXV0b21hdGljYWxseSBtaWdyYXRl IHRoZSByaWdodCBkYXRhIAogICB+IHRvIHRoZW1zZWx2ZXMuICAoSWYgbm8gSW5pdGlhbFRva2Vu IGlzIHNwZWNpZmllZCwgdGhleSB3aWxsIHBpY2sgb25lIAogICB+IHN1Y2ggdGhhdCB0aGV5IHdp bGwgZ2V0IGhhbGYgdGhlIHJhbmdlIG9mIHRoZSBtb3N0LWxvYWRlZCBub2RlLikKICAgfiBJZiBh IG5vZGUgc3RhcnRzIHVwIHdpdGhvdXQgYm9vdHN0cmFwcGluZywgaXQgd2lsbCBtYXJrIGl0c2Vs ZiBib290c3RyYXBwZWQKICAgfiBzbyB0aGF0IHlvdSBjYW4ndCBzdWJzZXF1ZW50bHkgYWNjaWRl bnRseSBib290c3RyYXAgYSBub2RlIHdpdGgKICAgfiBkYXRhIG9uIGl0LiAgKFlvdSBjYW4gcmVz ZXQgdGhpcyBieSB3aXBpbmcgeW91ciBkYXRhIGFuZCBjb21taXRsb2cKICAgfiBkaXJlY3Rvcmll cy4pCiAgIH4KICAgfiBPZmYgYnkgZGVmYXVsdCBzbyB0aGF0IG5ldyBjbHVzdGVycyBhbmQgdXBn cmFkZXJzIGZyb20gMC40IGRvbid0CiAgIH4gYm9vdHN0cmFwIGltbWVkaWF0ZWx5LiAgWW91IHNo b3VsZCB0dXJuIHRoaXMgb24gd2hlbiB5b3Ugc3RhcnQgYWRkaW5nCiAgIH4gbmV3IG5vZGVzIHRv IGEgY2x1c3RlciB0aGF0IGFscmVhZHkgaGFzIGRhdGEgb24gaXQuICAoSWYgeW91IGFyZSB1cGdy YWRpbmcKICAgfiBmcm9tIDAuNCwgc3RhcnQgeW91ciBjbHVzdGVyIHdpdGggaXQgb2ZmIG9uY2Ug YmVmb3JlIGNoYW5naW5nIGl0IHRvIHRydWUuCiAgIH4gT3RoZXJ3aXNlLCBubyBkYXRhIHdpbGwg YmUgbG9zdCBidXQgeW91IHdpbGwgaW5jdXIgYSBsb3Qgb2YgdW5uZWNlc3NhcnkKICAgfiBJL08g YmVmb3JlIHlvdXIgY2x1c3RlciBzdGFydHMgdXAuKQogIC0tPgogIDxBdXRvQm9vdHN0cmFwPmZh bHNlPC9BdXRvQm9vdHN0cmFwPgoKICA8IS0tCiAgIH4gS2V5c3BhY2VzIGFuZCBDb2x1bW5GYW1p bGllczoKICAgfiBBIENvbHVtbkZhbWlseSBpcyB0aGUgQ2Fzc2FuZHJhIGNvbmNlcHQgY2xvc2Vz dCB0byBhIHJlbGF0aW9uYWwKICAgfiB0YWJsZS4gIEtleXNwYWNlcyBhcmUgc2VwYXJhdGUgZ3Jv dXBzIG9mIENvbHVtbkZhbWlsaWVzLiAgRXhjZXB0IGluCiAgIH4gdmVyeSB1bnVzdWFsIGNpcmN1 bXN0YW5jZXMgeW91IHdpbGwgaGF2ZSBvbmUgS2V5c3BhY2UgcGVyIGFwcGxpY2F0aW9uLgoKICAg fiBUaGVyZSBpcyBhbiBpbXBsaWNpdCBrZXlzcGFjZSBuYW1lZCAnc3lzdGVtJyBmb3IgQ2Fzc2Fu ZHJhIGludGVybmFscy4KICAtLT4KICA8S2V5c3BhY2VzPgogICAgPEtleXNwYWNlIE5hbWU9Iktl eXNwYWNlMSI+CiAgICAgIDwhLS0KICAgICAgIH4gQ29sdW1uRmFtaWx5IGRlZmluaXRpb25zIGhh dmUgb25lIHJlcXVpcmVkIGF0dHJpYnV0ZSAoTmFtZSkKICAgICAgIH4gYW5kIHNldmVyYWwgb3B0 aW9uYWwgb25lcy4KICAgICAgIH4KICAgICAgIH4gVGhlIENvbXBhcmVXaXRoIGF0dHJpYnV0ZSB0 ZWxscyBDYXNzYW5kcmEgaG93IHRvIHNvcnQgdGhlIGNvbHVtbnMKICAgICAgIH4gZm9yIHNsaWNp bmcgb3BlcmF0aW9ucy4gIFRoZSBkZWZhdWx0IGlzIEJ5dGVzVHlwZSwgd2hpY2ggaXMgYQogICAg ICAgfiBzdHJhaWdodGZvcndhcmQgbGV4aWNhbCBjb21wYXJpc29uIG9mIHRoZSBieXRlcyBpbiBl YWNoIGNvbHVtbi4KICAgICAgIH4gT3RoZXIgb3B0aW9ucyBhcmUgQXNjaWlUeXBlLCBVVEY4VHlw ZSwgTGV4aWNhbFVVSURUeXBlLCBUaW1lVVVJRFR5cGUsCiAgICAgICB+IGFuZCBMb25nVHlwZS4g IFlvdSBjYW4gYWxzbyBzcGVjaWZ5IHRoZSBmdWxseS1xdWFsaWZpZWQgY2xhc3MKICAgICAgIH4g bmFtZSB0byBhIGNsYXNzIG9mIHlvdXIgY2hvaWNlIGV4dGVuZGluZwogICAgICAgfiBvcmcuYXBh Y2hlLmNhc3NhbmRyYS5kYi5tYXJzaGFsLkFic3RyYWN0VHlwZS4KICAgICAgIH4gCiAgICAgICB+ IFN1cGVyQ29sdW1ucyBoYXZlIGEgc2ltaWxhciBDb21wYXJlU3ViY29sdW1uc1dpdGggYXR0cmli dXRlLgogICAgICAgfiAKICAgICAgIH4gQnl0ZXNUeXBlOiBTaW1wbGUgc29ydCBieSBieXRlIHZh bHVlLiAgTm8gdmFsaWRhdGlvbiBpcyBwZXJmb3JtZWQuCiAgICAgICB+IEFzY2lpVHlwZTogTGlr ZSBCeXRlc1R5cGUsIGJ1dCB2YWxpZGF0ZXMgdGhhdCB0aGUgaW5wdXQgY2FuIGJlIAogICAgICAg fiAgICAgICAgICAgIHBhcnNlZCBhcyBVUy1BU0NJSS4KICAgICAgIH4gVVRGOFR5cGU6IEEgc3Ry aW5nIGVuY29kZWQgYXMgVVRGOAogICAgICAgfiBMb25nVHlwZTogQSA2NGJpdCBsb25nCiAgICAg ICB+IExleGljYWxVVUlEVHlwZTogQSAxMjhiaXQgVVVJRCwgY29tcGFyZWQgbGV4aWNhbGx5IChi eSBieXRlIHZhbHVlKQogICAgICAgfiBUaW1lVVVJRFR5cGU6IGEgMTI4Yml0IHZlcnNpb24gMSBV VUlELCBjb21wYXJlZCBieSB0aW1lc3RhbXAKICAgICAgIH4KICAgICAgIH4gKFRvIGdldCB0aGUg Y2xvc2VzdCBhcHByb3hpbWF0aW9uIHRvIDAuMy1zdHlsZSBzdXBlcmNvbHVtbnMsIHlvdQogICAg ICAgfiB3b3VsZCB1c2UgQ29tcGFyZVdpdGg9VVRGOFR5cGUgQ29tcGFyZVN1YmNvbHVtbnNXaXRo PUxvbmdUeXBlLikKICAgICAgIH4KICAgICAgIH4gQW4gb3B0aW9uYWwgYENvbW1lbnRgIGF0dHJp YnV0ZSBtYXkgYmUgdXNlZCB0byBhdHRhY2ggYWRkaXRpb25hbAogICAgICAgfiBodW1hbi1yZWFk YWJsZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgY29sdW1uIGZhbWlseSB0byBpdHMgZGVmaW5pdGlv bi4KICAgICAgIH4KICAgICAgIH4gVGhlIG9wdGlvbmFsIFJlYWRSZXBhaXJDaGFuY2UgYXR0cmli dXRlIChmcm9tIDAgdG8gMSkgc3BlY2lmaWVzCiAgICAgICB+IHRoZSBwcm9iYWJpbGl0eSB3aXRo IHdoaWNoIHJlYWQgcmVwYWlycyBzaG91bGQgYmUgaW52b2tlZCBvbiBub24tcXVvcnVtCiAgICAg ICB+IHJlYWRzLiAgVGhlIGRlZmF1bHQgaXMgMS4wIChhbHdheXMgcmVhZCByZXBhaXIpLgogICAg ICAgfiAKICAgICAgIH4gVGhlIG9wdGlvbmFsIEtleXNDYWNoZWQgYXR0cmlidXRlIHNwZWNpZmll cwogICAgICAgfiB0aGUgbnVtYmVyIG9mIGtleXMgcGVyIHNzdGFibGUgd2hvc2UgbG9jYXRpb25z IHdlIGtlZXAgaW4KICAgICAgIH4gbWVtb3J5IGluICJtb3N0bHkgTFJVIiBvcmRlci4gIChKVVNU IHRoZSBrZXkgbG9jYXRpb25zLCBOT1QgYW55CiAgICAgICB+IGNvbHVtbiB2YWx1ZXMuKSBTcGVj aWZ5IGEgZnJhY3Rpb24gKHZhbHVlIGxlc3MgdGhhbiAxKSwgYSBwZXJjZW50YWdlCiAgICAgICB+ IChlbmRpbmcgaW4gYSAlIHNpZ24pIG9yIGFuIGFic29sdXRlIG51bWJlciBvZiBrZXlzIHRvIGNh Y2hlLgogICAgICAgfiBLZXlzQ2FjaGVkIGRlZmF1bHRzIHRvIDIwMDAwMCBrZXlzLgogICAgICAg fgogICAgICAgfiBUaGUgb3B0aW9uYWwgUm93c0NhY2hlZCBhdHRyaWJ1dGUgc3BlY2lmaWVzIHRo ZSBudW1iZXIgb2Ygcm93cwogICAgICAgfiB3aG9zZSBlbnRpcmUgY29udGVudHMgd2UgY2FjaGUg aW4gbWVtb3J5LiBEbyBub3QgdXNlIHRoaXMgb24KICAgICAgIH4gQ29sdW1uRmFtaWxpZXMgd2l0 aCBsYXJnZSByb3dzLCBvciBDb2x1bW5GYW1pbGllcyB3aXRoIGhpZ2ggd3JpdGU6cmVhZAogICAg ICAgfiByYXRpb3MuIFNwZWNpZnkgYSBmcmFjdGlvbiAodmFsdWUgbGVzcyB0aGFuIDEpLCBhIHBl cmNlbnRhZ2UgKGVuZGluZyBpbgogICAgICAgfiBhICUgc2lnbikgb3IgYW4gYWJzb2x1dGUgbnVt YmVyIG9mIHJvd3MgdG8gY2FjaGUuIAogICAgICAgfiBSb3dzQ2FjaGVkIGRlZmF1bHRzIHRvIDAs IGkuZS4sIHJvdyBjYWNoZSBpcyBvZmYgYnkgZGVmYXVsdC4KICAgICAgIH4KICAgICAgIH4gUmVt ZW1iZXIsIHdoZW4gdXNpbmcgY2FjaGVzIGFzIGEgcGVyY2VudGFnZSwgdGhleSBXSUxMIGdyb3cg d2l0aAogICAgICAgfiB5b3VyIGRhdGEgc2V0IQogICAgICAtLT4KICAgICAgPENvbHVtbkZhbWls eSBOYW1lPSJTdGFuZGFyZDEiIENvbXBhcmVXaXRoPSJCeXRlc1R5cGUiLz4KICAgICAgPENvbHVt bkZhbWlseSBOYW1lPSJTdGFuZGFyZDIiIAogICAgICAgICAgICAgICAgICAgIENvbXBhcmVXaXRo PSJVVEY4VHlwZSIKICAgICAgICAgICAgICAgICAgICBSZWFkUmVwYWlyQ2hhbmNlPSIwLjEiCiAg ICAgICAgICAgICAgICAgICAgS2V5c0NhY2hlZD0iMTAwJSIvPgogICAgICA8Q29sdW1uRmFtaWx5 IE5hbWU9IlN0YW5kYXJkQnlVVUlEMSIgQ29tcGFyZVdpdGg9IlRpbWVVVUlEVHlwZSIgLz4KICAg ICAgPENvbHVtbkZhbWlseSBOYW1lPSJTdXBlcjEiCiAgICAgICAgICAgICAgICAgICAgQ29sdW1u VHlwZT0iU3VwZXIiCiAgICAgICAgICAgICAgICAgICAgQ29tcGFyZVdpdGg9IkJ5dGVzVHlwZSIK ICAgICAgICAgICAgICAgICAgICBDb21wYXJlU3ViY29sdW1uc1dpdGg9IkJ5dGVzVHlwZSIgLz4K ICAgICAgPENvbHVtbkZhbWlseSBOYW1lPSJTdXBlcjIiCiAgICAgICAgICAgICAgICAgICAgQ29s dW1uVHlwZT0iU3VwZXIiCiAgICAgICAgICAgICAgICAgICAgQ29tcGFyZVdpdGg9IlVURjhUeXBl IgogICAgICAgICAgICAgICAgICAgIENvbXBhcmVTdWJjb2x1bW5zV2l0aD0iVVRGOFR5cGUiCiAg ICAgICAgICAgICAgICAgICAgUm93c0NhY2hlZD0iMTAwMDAiCiAgICAgICAgICAgICAgICAgICAg S2V5c0NhY2hlZD0iNTAlIgogICAgICAgICAgICAgICAgICAgIENvbW1lbnQ9IkEgY29sdW1uIGZh bWlseSB3aXRoIHN1cGVyY29sdW1ucywgd2hvc2UgY29sdW1uIGFuZCBzdWJjb2x1bW4gbmFtZXMg YXJlIFVURjggc3RyaW5ncyIvPgoKICAgICAgPCEtLQogICAgICAgfiBTdHJhdGVneTogU2V0dGlu ZyB0aGlzIHRvIHRoZSBjbGFzcyB0aGF0IGltcGxlbWVudHMKICAgICAgIH4gSVJlcGxpY2FQbGFj ZW1lbnRTdHJhdGVneSB3aWxsIGNoYW5nZSB0aGUgd2F5IHRoZSBub2RlIHBpY2tlciB3b3Jrcy4K ICAgICAgIH4gT3V0IG9mIHRoZSBib3gsIENhc3NhbmRyYSBwcm92aWRlcwogICAgICAgfiBvcmcu YXBhY2hlLmNhc3NhbmRyYS5sb2NhdG9yLlJhY2tVbmF3YXJlU3RyYXRlZ3kgYW5kCiAgICAgICB+ IG9yZy5hcGFjaGUuY2Fzc2FuZHJhLmxvY2F0b3IuUmFja0F3YXJlU3RyYXRlZ3kgKHBsYWNlIG9u ZSByZXBsaWNhIGluCiAgICAgICB+IGEgZGlmZmVyZW50IGRhdGFjZW50ZXIsIGFuZCB0aGUgb3Ro ZXJzIG9uIGRpZmZlcmVudCByYWNrcyBpbiB0aGUgc2FtZQogICAgICAgfiBvbmUuKQogICAgICAt LT4KICAgICAgPFJlcGxpY2FQbGFjZW1lbnRTdHJhdGVneT5vcmcuYXBhY2hlLmNhc3NhbmRyYS5s b2NhdG9yLlJhY2tVbmF3YXJlU3RyYXRlZ3k8L1JlcGxpY2FQbGFjZW1lbnRTdHJhdGVneT4KCiAg ICAgIDwhLS0gTnVtYmVyIG9mIHJlcGxpY2FzIG9mIHRoZSBkYXRhIC0tPgogICAgICA8UmVwbGlj YXRpb25GYWN0b3I+MTwvUmVwbGljYXRpb25GYWN0b3I+CgogICAgICA8IS0tCiAgICAgICB+IEVu ZFBvaW50U25pdGNoOiBTZXR0aW5nIHRoaXMgdG8gdGhlIGNsYXNzIHRoYXQgaW1wbGVtZW50cwog ICAgICAgfiBBYnN0cmFjdEVuZHBvaW50U25pdGNoLCB3aGljaCBsZXRzIENhc3NhbmRyYSBrbm93 IGVub3VnaAogICAgICAgfiBhYm91dCB5b3VyIG5ldHdvcmsgdG9wb2xvZ3kgdG8gcm91dGUgcmVx dWVzdHMgZWZmaWNpZW50bHkuCiAgICAgICB+IE91dCBvZiB0aGUgYm94LCBDYXNzYW5kcmEgcHJv dmlkZXMgb3JnLmFwYWNoZS5jYXNzYW5kcmEubG9jYXRvci5FbmRQb2ludFNuaXRjaCwKICAgICAg IH4gYW5kIFByb3BlcnR5RmlsZUVuZFBvaW50U25pdGNoIGlzIGF2YWlsYWJsZSBpbiBjb250cmli Ly4KICAgICAgLS0+CiAgICAgIDxFbmRQb2ludFNuaXRjaD5vcmcuYXBhY2hlLmNhc3NhbmRyYS5s b2NhdG9yLkVuZFBvaW50U25pdGNoPC9FbmRQb2ludFNuaXRjaD4KICAgICAgICAKICAgIDwvS2V5 c3BhY2U+CiAgPC9LZXlzcGFjZXM+CgogIDwhLS0KICAgfiBBdXRoZW50aWNhdG9yOiBhbnkgSUF1 dGhlbnRpY2F0b3IgbWF5IGJlIHVzZWQsIGluY2x1ZGluZyB5b3VyIG93biBhcyBsb25nCiAgIH4g YXMgaXQgaXMgb24gdGhlIGNsYXNzcGF0aC4gIE91dCBvZiB0aGUgYm94LCBDYXNzYW5kcmEgcHJv dmlkZXMKICAgfiBvcmcuYXBhY2hlLmNhc3NhbmRyYS5hdXRoLkFsbG93QWxsQXV0aGVudGljYXRv ciBhbmQsCiAgIH4gb3JnLmFwYWNoZS5jYXNzYW5kcmEuYXV0aC5TaW1wbGVBdXRoZW50aWNhdG9y IAogICB+IChTaW1wbGVBdXRoZW50aWNhdG9yIHVzZXMgYWNjZXNzLnByb3BlcnRpZXMgYW5kIHBh c3N3ZC5wcm9wZXJ0aWVzIGJ5CiAgIH4gZGVmYXVsdCkuCiAgIH4KICAgfiBJZiB5b3UgZG9uJ3Qg c3BlY2lmeSBhbiBhdXRoZW50aWNhdG9yLCBBbGxvd0FsbEF1dGhlbnRpY2F0b3IgaXMgdXNlZC4K ICAtLT4KICA8QXV0aGVudGljYXRvcj5vcmcuYXBhY2hlLmNhc3NhbmRyYS5hdXRoLkFsbG93QWxs QXV0aGVudGljYXRvcjwvQXV0aGVudGljYXRvcj4KCiAgPCEtLQogICB+IFBhcnRpdGlvbmVyOiBh bnkgSVBhcnRpdGlvbmVyIG1heSBiZSB1c2VkLCBpbmNsdWRpbmcgeW91ciBvd24gYXMgbG9uZwog ICB+IGFzIGl0IGlzIG9uIHRoZSBjbGFzc3BhdGguICBPdXQgb2YgdGhlIGJveCwgQ2Fzc2FuZHJh IHByb3ZpZGVzCiAgIH4gb3JnLmFwYWNoZS5jYXNzYW5kcmEuZGh0LlJhbmRvbVBhcnRpdGlvbmVy LAogICB+IG9yZy5hcGFjaGUuY2Fzc2FuZHJhLmRodC5PcmRlclByZXNlcnZpbmdQYXJ0aXRpb25l ciwgYW5kCiAgIH4gb3JnLmFwYWNoZS5jYXNzYW5kcmEuZGh0LkNvbGxhdGluZ09yZGVyUHJlc2Vy dmluZ1BhcnRpdGlvbmVyLgogICB+IChDb2xsYXRpbmdPUFAgY29sYXRlcyBhY2NvcmRpbmcgdG8g RU4sVVMgcnVsZXMsIG5vdCBuYWl2ZSBieXRlCiAgIH4gb3JkZXJpbmcuICBVc2UgdGhpcyBhcyBh biBleGFtcGxlIGlmIHlvdSBuZWVkIGxvY2FsZS1hd2FyZSBjb2xsYXRpb24uKQogICB+IFJhbmdl IHF1ZXJpZXMgcmVxdWlyZSB1c2luZyBhbiBvcmRlci1wcmVzZXJ2aW5nIHBhcnRpdGlvbmVyLgog ICB+CiAgIH4gQWNodHVuZyEgIENoYW5naW5nIHRoaXMgcGFyYW1ldGVyIHJlcXVpcmVzIHdpcGlu ZyB5b3VyIGRhdGEKICAgfiBkaXJlY3Rvcmllcywgc2luY2UgdGhlIHBhcnRpdGlvbmVyIGNhbiBt b2RpZnkgdGhlIHNzdGFibGUgb24tZGlzawogICB+IGZvcm1hdC4KICAtLT4KICA8UGFydGl0aW9u ZXI+b3JnLmFwYWNoZS5jYXNzYW5kcmEuZGh0LlJhbmRvbVBhcnRpdGlvbmVyPC9QYXJ0aXRpb25l cj4KCiAgPCEtLQogICB+IElmIHlvdSBhcmUgdXNpbmcgYW4gb3JkZXItcHJlc2VydmluZyBwYXJ0 aXRpb25lciBhbmQgeW91IGtub3cgeW91ciBrZXkKICAgfiBkaXN0cmlidXRpb24sIHlvdSBjYW4g c3BlY2lmeSB0aGUgdG9rZW4gZm9yIHRoaXMgbm9kZSB0byB1c2UuIChLZXlzCiAgIH4gYXJlIHNl bnQgdG8gdGhlIG5vZGUgd2l0aCB0aGUgImNsb3Nlc3QiIHRva2VuLCBzbyBkaXN0cmlidXRpbmcg eW91cgogICB+IHRva2VucyBlcXVhbGx5IGFsb25nIHRoZSBrZXkgZGlzdHJpYnV0aW9uIHNwYWNl IHdpbGwgc3ByZWFkIGtleXMKICAgfiBldmVubHkgYWNyb3NzIHlvdXIgY2x1c3Rlci4pICBUaGlz IHNldHRpbmcgaXMgb25seSBjaGVja2VkIHRoZSBmaXJzdAogICB+IHRpbWUgYSBub2RlIGlzIHN0 YXJ0ZWQuIAoKICAgfiBUaGlzIGNhbiBhbHNvIGJlIHVzZWZ1bCB3aXRoIFJhbmRvbVBhcnRpdGlv bmVyIHRvIGZvcmNlIGVxdWFsIHNwYWNpbmcKICAgfiBvZiB0b2tlbnMgYXJvdW5kIHRoZSBoYXNo IHNwYWNlLCBlc3BlY2lhbGx5IGZvciBjbHVzdGVycyB3aXRoIGEgc21hbGwKICAgfiBudW1iZXIg b2Ygbm9kZXMuCiAgLS0+CiAgPEluaXRpYWxUb2tlbj48L0luaXRpYWxUb2tlbj4KCiAgPCEtLQog ICB+IERpcmVjdG9yaWVzOiBTcGVjaWZ5IHdoZXJlIENhc3NhbmRyYSBzaG91bGQgc3RvcmUgZGlm ZmVyZW50IGRhdGEgb24KICAgfiBkaXNrLiAgS2VlcCB0aGUgZGF0YSBkaXNrcyBhbmQgdGhlIENv bW1pdExvZyBkaXNrcyBzZXBhcmF0ZSBmb3IgYmVzdAogICB+IHBlcmZvcm1hbmNlCiAgLS0+CiAg PENvbW1pdExvZ0RpcmVjdG9yeT4vdmFyL2xpYi9jYXNzYW5kcmEvY29tbWl0bG9nPC9Db21taXRM b2dEaXJlY3Rvcnk+CiAgPERhdGFGaWxlRGlyZWN0b3JpZXM+CiAgICAgIDxEYXRhRmlsZURpcmVj dG9yeT4vdmFyL2xpYi9jYXNzYW5kcmEvZGF0YTwvRGF0YUZpbGVEaXJlY3Rvcnk+CiAgPC9EYXRh RmlsZURpcmVjdG9yaWVzPgoKCiAgPCEtLQogICB+IEFkZHJlc3NlcyBvZiBob3N0cyB0aGF0IGFy ZSBkZWVtZWQgY29udGFjdCBwb2ludHMuIENhc3NhbmRyYSBub2RlcwogICB+IHVzZSB0aGlzIGxp c3Qgb2YgaG9zdHMgdG8gZmluZCBlYWNoIG90aGVyIGFuZCBsZWFybiB0aGUgdG9wb2xvZ3kgb2YK ICAgfiB0aGUgcmluZy4gWW91IG11c3QgY2hhbmdlIHRoaXMgaWYgeW91IGFyZSBydW5uaW5nIG11 bHRpcGxlIG5vZGVzIQogIC0tPgogIDxTZWVkcz4KICAgICAgPFNlZWQ+MTI3LjAuMC4xPC9TZWVk PgogIDwvU2VlZHM+CgoKICA8IS0tIE1pc2NlbGxhbmVvdXMgLS0+CgogIDwhLS0gVGltZSB0byB3 YWl0IGZvciBhIHJlcGx5IGZyb20gb3RoZXIgbm9kZXMgYmVmb3JlIGZhaWxpbmcgdGhlIGNvbW1h bmQgLS0+CiAgPFJwY1RpbWVvdXRJbk1pbGxpcz4xMDAwMDwvUnBjVGltZW91dEluTWlsbGlzPgog IDwhLS0gU2l6ZSB0byBhbGxvdyBjb21taXRsb2cgdG8gZ3JvdyB0byBiZWZvcmUgY3JlYXRpbmcg YSBuZXcgc2VnbWVudCAtLT4KICA8Q29tbWl0TG9nUm90YXRpb25UaHJlc2hvbGRJbk1CPjEyODwv Q29tbWl0TG9nUm90YXRpb25UaHJlc2hvbGRJbk1CPgoKCiAgPCEtLSBMb2NhbCBob3N0cyBhbmQg cG9ydHMgLS0+CgogIDwhLS0gCiAgIH4gQWRkcmVzcyB0byBiaW5kIHRvIGFuZCB0ZWxsIG90aGVy IG5vZGVzIHRvIGNvbm5lY3QgdG8uICBZb3UgX211c3RfCiAgIH4gY2hhbmdlIHRoaXMgaWYgeW91 IHdhbnQgbXVsdGlwbGUgbm9kZXMgdG8gYmUgYWJsZSB0byBjb21tdW5pY2F0ZSEgIAogICB+CiAg IH4gTGVhdmluZyBpdCBibGFuayBsZWF2ZXMgaXQgdXAgdG8gSW5ldEFkZHJlc3MuZ2V0TG9jYWxI b3N0KCkuIFRoaXMKICAgfiB3aWxsIGFsd2F5cyBkbyB0aGUgUmlnaHQgVGhpbmcgKmlmKiB0aGUg bm9kZSBpcyBwcm9wZXJseSBjb25maWd1cmVkCiAgIH4gKGhvc3RuYW1lLCBuYW1lIHJlc29sdXRp b24sIGV0YyksIGFuZCB0aGUgUmlnaHQgVGhpbmcgaXMgdG8gdXNlIHRoZQogICB+IGFkZHJlc3Mg YXNzb2NpYXRlZCB3aXRoIHRoZSBob3N0bmFtZSAoaXQgbWlnaHQgbm90IGJlKS4KICAtLT4KICA8 TGlzdGVuQWRkcmVzcz5sb2NhbGhvc3Q8L0xpc3RlbkFkZHJlc3M+CiAgPCEtLSBpbnRlcm5hbCBj b21tdW5pY2F0aW9ucyBwb3J0IC0tPgogIDxTdG9yYWdlUG9ydD43MDAwPC9TdG9yYWdlUG9ydD4K CiAgPCEtLQogICB+IFRoZSBhZGRyZXNzIHRvIGJpbmQgdGhlIFJQQyBzZXJ2aWNlIHRvLiBVbmxp a2UgTGlzdGVuQWRkcmVzcyBhYm92ZSwgeW91CiAgIH4gKmNhbiogc3BlY2lmeSAwLjAuMC4wIGhl cmUgaWYgeW91IHdhbnQgdG8gYmluZCB0aGUgUlBDIHNlcnZpY2UgdG8gYWxsCiAgIH4gaW50ZXJm YWNlcy4KICAgfgogICB+IExlYXZpbmcgdGhpcyBibGFuayBoYXMgdGhlIHNhbWUgZWZmZWN0IGl0 IGRvZXMgZm9yIExpc3RlbkFkZHJlc3MsCiAgIH4gKGkuZS4gaXQgd2lsbCBiZSBiYXNlZCBvbiB0 aGUgY29uZmlndXJlZCBob3N0bmFtZSBvZiB0aGUgbm9kZSkuCiAgLS0+CiAgPFJQQ0FkZHJlc3M+ bG9jYWxob3N0PC9SUENBZGRyZXNzPgogIDwhLS0gUlBDIHBvcnQgKHRoZSBwb3J0IGNsaWVudHMg Y29ubmVjdCB0bykuIC0tPgogIDxSUENQb3J0PjkxNjA8L1JQQ1BvcnQ+CiAgPCEtLSAKICAgfiBX aGV0aGVyIG9yIG5vdCB0byB1c2UgYSBmcmFtZWQgdHJhbnNwb3J0IGZvciBUaHJpZnQuIElmIHRo aXMgb3B0aW9uCiAgIH4gaXMgc2V0IHRvIHRydWUgdGhlbiB5b3UgbXVzdCBhbHNvIHVzZSBhIGZy YW1lZCB0cmFuc3BvcnQgb24gdGhlIAogICB+IGNsaWVudC1zaWRlLCAoZnJhbWVkIGFuZCBub24t ZnJhbWVkIHRyYW5zcG9ydHMgYXJlIG5vdCBjb21wYXRpYmxlKS4KICAtLT4KICA8VGhyaWZ0RnJh bWVkVHJhbnNwb3J0PmZhbHNlPC9UaHJpZnRGcmFtZWRUcmFuc3BvcnQ+CgoKICA8IS0tPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PS0tPgogIDwhLS0gTWVtb3J5LCBEaXNrLCBhbmQgUGVyZm9ybWFuY2UgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0+CiAgPCEtLT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tLT4K CiAgPCEtLQogICB+IEFjY2VzcyBtb2RlLiAgbW1hcHBlZCBpL28gaXMgc3Vic3RhbnRpYWxseSBm YXN0ZXIsIGJ1dCBvbmx5IHByYWN0aWNhbCBvbgogICB+IGEgNjRiaXQgbWFjaGluZSAod2hpY2gg bm90YWJseSBkb2VzIG5vdCBpbmNsdWRlIEVDMiAic21hbGwiIGluc3RhbmNlcykKICAgfiBvciBy ZWxhdGl2ZWx5IHNtYWxsIGRhdGFzZXRzLiAgImF1dG8iLCB0aGUgc2FmZSBjaG9pY2UsIHdpbGwg ZW5hYmxlCiAgIH4gbW1hcHBpbmcgb24gYSA2NGJpdCBKVk0uICBPdGhlciB2YWx1ZXMgYXJlICJt bWFwIiwgIm1tYXBfaW5kZXhfb25seSIKICAgfiAod2hpY2ggbWF5IGFsbG93IHlvdSB0byBnZXQg cGFydCBvZiB0aGUgYmVuZWZpdHMgb2YgbW1hcCBvbiBhIDMyYml0CiAgIH4gbWFjaGluZSBieSBt bWFwcGluZyBvbmx5IGluZGV4IGZpbGVzKSBhbmQgInN0YW5kYXJkIi4KICAgfiAoVGhlIGJ1ZmZl ciBzaXplIHNldHRpbmdzIHRoYXQgZm9sbG93IG9ubHkgYXBwbHkgdG8gc3RhbmRhcmQsCiAgIH4g bm9uLW1tYXBwZWQgaS9vLikKICAgLS0+CiAgPERpc2tBY2Nlc3NNb2RlPmF1dG88L0Rpc2tBY2Nl c3NNb2RlPgoKICA8IS0tCiAgIH4gU2l6ZSBvZiBjb21wYWN0ZWQgcm93IGFib3ZlIHdoaWNoIHRv IGxvZyBhIHdhcm5pbmcuICAoSWYgY29tcGFjdGVkCiAgIH4gcm93cyBkbyBub3QgZml0IGluIG1l bW9yeSwgQ2Fzc2FuZHJhIHdpbGwgY3Jhc2guICBUaGlzIGlzIGV4cGxhaW5lZAogICB+IGluIGh0 dHA6Ly93aWtpLmFwYWNoZS5vcmcvY2Fzc2FuZHJhL0Nhc3NhbmRyYUxpbWl0YXRpb25zIGFuZCBp cwogICB+IHNjaGVkdWxlZCB0byBiZSBmaXhlZCBpbiAwLjcuKQogIC0tPgogIDxSb3dXYXJuaW5n VGhyZXNob2xkSW5NQj41MTI8L1Jvd1dhcm5pbmdUaHJlc2hvbGRJbk1CPgoKICA8IS0tCiAgIH4g QnVmZmVyIHNpemUgdG8gdXNlIHdoZW4gcGVyZm9ybWluZyBjb250aWd1b3VzIGNvbHVtbiBzbGlj ZXMuIEluY3JlYXNlCiAgIH4gdGhpcyB0byB0aGUgc2l6ZSBvZiB0aGUgY29sdW1uIHNsaWNlcyB5 b3UgdHlwaWNhbGx5IHBlcmZvcm0uIAogICB+IChOYW1lLWJhc2VkIHF1ZXJpZXMgYXJlIHBlcmZv cm1lZCB3aXRoIGEgYnVmZmVyIHNpemUgb2YgCiAgIH4gQ29sdW1uSW5kZXhTaXplSW5LQi4pCiAg LS0+CiAgPFNsaWNlZEJ1ZmZlclNpemVJbktCPjY0PC9TbGljZWRCdWZmZXJTaXplSW5LQj4KCiAg PCEtLQogICB+IEJ1ZmZlciBzaXplIHRvIHVzZSB3aGVuIGZsdXNoaW5nIG1lbXRhYmxlcyB0byBk aXNrLiAoT25seSBvbmUgCiAgIH4gbWVtdGFibGUgaXMgZXZlciBmbHVzaGVkIGF0IGEgdGltZS4p IEluY3JlYXNlIChkZWNyZWFzZSkgdGhlIGluZGV4CiAgIH4gYnVmZmVyIHNpemUgcmVsYXRpdmUg dG8gdGhlIGRhdGEgYnVmZmVyIGlmIHlvdSBoYXZlIGZldyAobWFueSkgCiAgIH4gY29sdW1ucyBw ZXIga2V5LiAgQmlnZ2VyIGlzIG9ubHkgYmV0dGVyIF9pZl8geW91ciBtZW10YWJsZXMgZ2V0IGxh cmdlCiAgIH4gZW5vdWdoIHRvIHVzZSB0aGUgc3BhY2UuIChDaGVjayBpbiB5b3VyIGRhdGEgZGly ZWN0b3J5IGFmdGVyIHlvdXIKICAgfiBhcHAgaGFzIGJlZW4gcnVubmluZyBsb25nIGVub3VnaC4p IC0tPgogIDxGbHVzaERhdGFCdWZmZXJTaXplSW5NQj4zMjwvRmx1c2hEYXRhQnVmZmVyU2l6ZUlu TUI+CiAgPEZsdXNoSW5kZXhCdWZmZXJTaXplSW5NQj44PC9GbHVzaEluZGV4QnVmZmVyU2l6ZUlu TUI+CgogIDwhLS0KICAgfiBBZGQgY29sdW1uIGluZGV4ZXMgdG8gYSByb3cgYWZ0ZXIgaXRzIGNv bnRlbnRzIHJlYWNoIHRoaXMgc2l6ZS4KICAgfiBJbmNyZWFzZSBpZiB5b3VyIGNvbHVtbiB2YWx1 ZXMgYXJlIGxhcmdlLCBvciBpZiB5b3UgaGF2ZSBhIHZlcnkgbGFyZ2UKICAgfiBudW1iZXIgb2Yg Y29sdW1ucy4gIFRoZSBjb21wZXRpbmcgY2F1c2VzIGFyZSwgQ2Fzc2FuZHJhIGhhcyB0bwogICB+ IGRlc2VyaWFsaXplIHRoaXMgbXVjaCBvZiB0aGUgcm93IHRvIHJlYWQgYSBzaW5nbGUgY29sdW1u LCBzbyB5b3Ugd2FudAogICB+IGl0IHRvIGJlIHNtYWxsIC0gYXQgbGVhc3QgaWYgeW91IGRvIG1h bnkgcGFydGlhbC1yb3cgcmVhZHMgLSBidXQgYWxsCiAgIH4gdGhlIGluZGV4IGRhdGEgaXMgcmVh ZCBmb3IgZWFjaCBhY2Nlc3MsIHNvIHlvdSBkb24ndCB3YW50IHRvIGdlbmVyYXRlCiAgIH4gdGhh dCB3YXN0ZWZ1bGx5IGVpdGhlci4KICAtLT4KICA8Q29sdW1uSW5kZXhTaXplSW5LQj42NDwvQ29s dW1uSW5kZXhTaXplSW5LQj4KCiAgPCEtLQogICB+IEZsdXNoIG1lbXRhYmxlIGFmdGVyIHRoaXMg bXVjaCBkYXRhIGhhcyBiZWVuIGluc2VydGVkLCBpbmNsdWRpbmcKICAgfiBvdmVyd3JpdHRlbiBk YXRhLiAgVGhlcmUgaXMgb25lIG1lbXRhYmxlIHBlciBjb2x1bW4gZmFtaWx5LCBhbmQgCiAgIH4g dGhpcyB0aHJlc2hvbGQgaXMgYmFzZWQgc29sZWx5IG9uIHRoZSBhbW91bnQgb2YgZGF0YSBzdG9y ZWQsIG5vdAogICB+IGFjdHVhbCBoZWFwIG1lbW9yeSB1c2FnZSAodGhlcmUgaXMgc29tZSBvdmVy aGVhZCBpbiBpbmRleGluZyB0aGUKICAgfiBjb2x1bW5zKS4KICAtLT4KICA8TWVtdGFibGVUaHJv dWdocHV0SW5NQj42NDwvTWVtdGFibGVUaHJvdWdocHV0SW5NQj4KICA8IS0tCiAgIH4gVGhyb3Vn aHB1dCBzZXR0aW5nIGZvciBCaW5hcnkgTWVtdGFibGVzLiAgVHlwaWNhbGx5IHRoZXNlIGFyZQog ICB+IHVzZWQgZm9yIGJ1bGsgbG9hZCBzbyB5b3Ugd2FudCB0aGVtIHRvIGJlIGxhcmdlci4KICAt LT4KICA8QmluYXJ5TWVtdGFibGVUaHJvdWdocHV0SW5NQj4yNTY8L0JpbmFyeU1lbXRhYmxlVGhy b3VnaHB1dEluTUI+CiAgPCEtLQogICB+IFRoZSBtYXhpbXVtIG51bWJlciBvZiBjb2x1bW5zIGlu IG1pbGxpb25zIHRvIHN0b3JlIGluIG1lbW9yeSBwZXIKICAgfiBDb2x1bW5GYW1pbHkgYmVmb3Jl IGZsdXNoaW5nIHRvIGRpc2suICBUaGlzIGlzIGFsc28gYSBwZXItbWVtdGFibGUKICAgfiBzZXR0 aW5nLiAgVXNlIHdpdGggTWVtdGFibGVUaHJvdWdocHV0SW5NQiB0byB0dW5lIG1lbW9yeSB1c2Fn ZS4KICAtLT4KICA8TWVtdGFibGVPcGVyYXRpb25zSW5NaWxsaW9ucz4wLjM8L01lbXRhYmxlT3Bl cmF0aW9uc0luTWlsbGlvbnM+CiAgPCEtLQogICB+IFRoZSBtYXhpbXVtIHRpbWUgdG8gbGVhdmUg YSBkaXJ0eSBtZW10YWJsZSB1bmZsdXNoZWQuCiAgIH4gKFdoaWxlIGFueSBhZmZlY3RlZCBjb2x1 bW5mYW1pbGllcyBoYXZlIHVuZmx1c2hlZCBkYXRhIGZyb20gYQogICB+IGNvbW1pdCBsb2cgc2Vn bWVudCwgdGhhdCBzZWdtZW50IGNhbm5vdCBiZSBkZWxldGVkLikKICAgfiBUaGlzIG5lZWRzIHRv IGJlIGxhcmdlIGVub3VnaCB0aGF0IGl0IHdvbid0IGNhdXNlIGEgZmx1c2ggc3Rvcm0KICAgfiBv ZiBhbGwgeW91ciBtZW10YWJsZXMgZmx1c2hpbmcgYXQgb25jZSBiZWNhdXNlIG5vbmUgaGFzIGhp dAogICB+IHRoZSBzaXplIG9yIGNvdW50IHRocmVzaG9sZHMgeWV0LiAgRm9yIHByb2R1Y3Rpb24s IGEgbGFyZ2VyCiAgIH4gdmFsdWUgc3VjaCBhcyAxNDQwIGlzIHJlY29tbWVuZGVkLgogIC0tPgog IDxNZW10YWJsZUZsdXNoQWZ0ZXJNaW51dGVzPjYwPC9NZW10YWJsZUZsdXNoQWZ0ZXJNaW51dGVz PgoKICA8IS0tCiAgIH4gVW5saWtlIG1vc3Qgc3lzdGVtcywgaW4gQ2Fzc2FuZHJhIHdyaXRlcyBh cmUgZmFzdGVyIHRoYW4gcmVhZHMsIHNvCiAgIH4geW91IGNhbiBhZmZvcmQgbW9yZSBvZiB0aG9z ZSBpbiBwYXJhbGxlbC4gIEEgZ29vZCBydWxlIG9mIHRodW1iIGlzIDIKICAgfiBjb25jdXJyZW50 IHJlYWRzIHBlciBwcm9jZXNzb3IgY29yZS4gIEluY3JlYXNlIENvbmN1cnJlbnRXcml0ZXMgdG8K ICAgfiB0aGUgbnVtYmVyIG9mIGNsaWVudHMgd3JpdGluZyBhdCBvbmNlIGlmIHlvdSBlbmFibGUg Q29tbWl0TG9nU3luYyArCiAgIH4gQ29tbWl0TG9nU3luY0RlbGF5LiAtLT4KICA8Q29uY3VycmVu dFJlYWRzPjg8L0NvbmN1cnJlbnRSZWFkcz4KICA8Q29uY3VycmVudFdyaXRlcz4zMjwvQ29uY3Vy cmVudFdyaXRlcz4KCiAgPCEtLQogICB+IENvbW1pdExvZ1N5bmMgbWF5IGJlIGVpdGhlciAicGVy aW9kaWMiIG9yICJiYXRjaC4iICBXaGVuIGluIGJhdGNoCiAgIH4gbW9kZSwgQ2Fzc2FuZHJhIHdv bid0IGFjayB3cml0ZXMgdW50aWwgdGhlIGNvbW1pdCBsb2cgaGFzIGJlZW4KICAgfiBmc3luY2Vk IHRvIGRpc2suICBJdCB3aWxsIHdhaXQgdXAgdG8gQ29tbWl0TG9nU3luY0JhdGNoV2luZG93SW5N UwogICB+IG1pbGxpc2Vjb25kcyBmb3Igb3RoZXIgd3JpdGVzLCBiZWZvcmUgcGVyZm9ybWluZyB0 aGUgc3luYy4KCiAgIH4gVGhpcyBpcyBsZXNzIG5lY2Vzc2FyeSBpbiBDYXNzYW5kcmEgdGhhbiBp biB0cmFkaXRpb25hbCBkYXRhYmFzZXMKICAgfiBzaW5jZSByZXBsaWNhdGlvbiByZWR1Y2VzIHRo ZSBvZGRzIG9mIGxvc2luZyBkYXRhIGZyb20gYSBmYWlsdXJlCiAgIH4gYWZ0ZXIgd3JpdGluZyB0 aGUgbG9nIGVudHJ5IGJ1dCBiZWZvcmUgaXQgYWN0dWFsbHkgcmVhY2hlcyB0aGUgZGlzay4KICAg fiBTbyB0aGUgb3RoZXIgb3B0aW9uIGlzICJwZXJpb2RpYywiIHdoZXJlIHdyaXRlcyBtYXkgYmUg YWNrZWQgaW1tZWRpYXRlbHkKICAgfiBhbmQgdGhlIENvbW1pdExvZyBpcyBzaW1wbHkgc3luY2Vk IGV2ZXJ5IENvbW1pdExvZ1N5bmNQZXJpb2RJbk1TCiAgIH4gbWlsbGlzZWNvbmRzLgogIC0tPgog IDxDb21taXRMb2dTeW5jPnBlcmlvZGljPC9Db21taXRMb2dTeW5jPgogIDwhLS0KICAgfiBJbnRl cnZhbCBhdCB3aGljaCB0byBwZXJmb3JtIHN5bmNzIG9mIHRoZSBDb21taXRMb2cgaW4gcGVyaW9k aWMgbW9kZS4KICAgfiBVc3VhbGx5IHRoZSBkZWZhdWx0IG9mIDEwMDAwbXMgaXMgZmluZTsgaW5j cmVhc2UgaXQgaWYgeW91ciBpL28KICAgfiBsb2FkIGlzIHN1Y2ggdGhhdCBzeW5jcyBhcmUgdGFr aW5nIGV4Y2Vzc2l2ZWx5IGxvbmcgdGltZXMuCiAgLS0+CiAgPENvbW1pdExvZ1N5bmNQZXJpb2RJ bk1TPjEwMDAwPC9Db21taXRMb2dTeW5jUGVyaW9kSW5NUz4KICA8IS0tCiAgIH4gRGVsYXkgKGlu IG1pbGxpc2Vjb25kcykgZHVyaW5nIHdoaWNoIGFkZGl0aW9uYWwgY29tbWl0IGxvZyBlbnRyaWVz CiAgIH4gbWF5IGJlIHdyaXR0ZW4gYmVmb3JlIGZzeW5jIGluIGJhdGNoIG1vZGUuICBUaGlzIHdp bGwgaW5jcmVhc2UKICAgfiBsYXRlbmN5IHNsaWdodGx5LCBidXQgY2FuIHZhc3RseSBpbXByb3Zl IHRocm91Z2hwdXQgd2hlcmUgdGhlcmUgYXJlCiAgIH4gbWFueSB3cml0ZXJzLiAgU2V0IHRvIHpl cm8gdG8gZGlzYWJsZSAoZWFjaCBlbnRyeSB3aWxsIGJlIHN5bmNlZAogICB+IGluZGl2aWR1YWxs eSkuICBSZWFzb25hYmxlIHZhbHVlcyByYW5nZSBmcm9tIGEgbWluaW1hbCAwLjEgdG8gMTAgb3IK ICAgfiBldmVuIG1vcmUgaWYgdGhyb3VnaHB1dCBtYXR0ZXJzIG1vcmUgdGhhbiBsYXRlbmN5Lgog IC0tPgogIDwhLS0gPENvbW1pdExvZ1N5bmNCYXRjaFdpbmRvd0luTVM+MTwvQ29tbWl0TG9nU3lu Y0JhdGNoV2luZG93SW5NUz4gLS0+IAoKICA8IS0tCiAgIH4gVGltZSB0byB3YWl0IGJlZm9yZSBn YXJiYWdlLWNvbGxlY3Rpb24gZGVsZXRpb24gbWFya2Vycy4gIFNldCB0aGlzIHRvCiAgIH4gYSBs YXJnZSBlbm91Z2ggdmFsdWUgdGhhdCB5b3UgYXJlIGNvbmZpZGVudCB0aGF0IHRoZSBkZWxldGlv biBtYXJrZXIKICAgfiB3aWxsIGJlIHByb3BhZ2F0ZWQgdG8gYWxsIHJlcGxpY2FzIGJ5IHRoZSB0 aW1lIHRoaXMgbWFueSBzZWNvbmRzIGhhcwogICB+IGVsYXBzZWQsIGV2ZW4gaW4gdGhlIGZhY2Ug b2YgaGFyZHdhcmUgZmFpbHVyZXMuICBUaGUgZGVmYXVsdCB2YWx1ZSBpcwogICB+IHRlbiBkYXlz LgogIC0tPgogIDxHQ0dyYWNlU2Vjb25kcz44NjQwMDA8L0dDR3JhY2VTZWNvbmRzPgo8L1N0b3Jh Z2U+Cg== --001636c92ede784a5e0483a32c40--