Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 1F73B200B0F for ; Fri, 3 Jun 2016 02:07:31 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 1DEB2160A52; Fri, 3 Jun 2016 00:07:31 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 3E5CD160A51 for ; Fri, 3 Jun 2016 02:07:30 +0200 (CEST) Received: (qmail 1565 invoked by uid 500); 3 Jun 2016 00:07:29 -0000 Mailing-List: contact dev-help@mynewt.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@mynewt.incubator.apache.org Delivered-To: mailing list dev@mynewt.incubator.apache.org Received: (qmail 1554 invoked by uid 99); 3 Jun 2016 00:07:29 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 03 Jun 2016 00:07:29 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id CC434C06CD for ; Fri, 3 Jun 2016 00:07:28 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -0.701 X-Spam-Level: X-Spam-Status: No, score=-0.701 tagged_above=-999 required=6.31 tests=[HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id 0YB4YEwDt-9j for ; Fri, 3 Jun 2016 00:07:27 +0000 (UTC) Received: from mail-pf0-f171.google.com (mail-pf0-f171.google.com [209.85.192.171]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTPS id 2ED7F5F4E9 for ; Fri, 3 Jun 2016 00:07:27 +0000 (UTC) Received: by mail-pf0-f171.google.com with SMTP id g64so37208704pfb.2 for ; Thu, 02 Jun 2016 17:07:27 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=VW1INVDQav9JaHmqD42PYjubTqkVzPcR+KTkKQWxaW4=; b=GMTrIuKEJ/e8g+vk2Lu4w19rDTXURVnsrKdq9b+bD0ZSUH/mG5gMoPkpmD2wT9DUG6 +E25b+1YcoAqJ0CI8QY4TffLcCjz1ZUpdSyqoaTnC6M7p941I8XqejhbVA6C/m5OqYh6 RxNETynVCR+n+ghHrom9BDboFiIOB9Hfr3Y9sk9jtiB5JZIbVCAUy0xU00Z53V9jO22o CqFHnPsvAtRCRCBehoKl+TOE6W56B+YCqCkbWNXEAKSrq8MV8/o9nMkARvt6I5TMd7hr 4A1qDkxC3ow9ureigHC8/DFmcdOVnE3iwMxkqw9Hlbq79VAiKhcVPpCoEpTOQ3ATEu/D dRaQ== X-Gm-Message-State: ALyK8tJEjouzL3WUiDO5nkTKoHAGFouBzzd9fHAZyTU6isMDIfkAN+bTVugfhUaWKY7Fmg== X-Received: by 10.98.0.21 with SMTP id 21mr1720982pfa.81.1464912445747; Thu, 02 Jun 2016 17:07:25 -0700 (PDT) Received: from [192.168.0.117] (c-76-103-99-38.hsd1.ca.comcast.net. [76.103.99.38]) by smtp.gmail.com with ESMTPSA id f193sm3416811pfc.16.2016.06.02.17.07.24 for (version=TLS1 cipher=AES128-SHA bits=128/128); Thu, 02 Jun 2016 17:07:25 -0700 (PDT) From: "Sterling Hughes" To: dev@mynewt.incubator.apache.org Subject: Changes to HAL/BSP/Drivers Date: Thu, 02 Jun 2016 17:07:24 -0700 Message-ID: <06CB0682-8F67-4C3F-93E4-6A20444487A1@apache.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: base64 X-Mailer: MailMate (1.9.4r5234) archived-at: Fri, 03 Jun 2016 00:07:31 -0000 SGksCgpJ4oCZdmUgYmVlbiBnb2luZyB0aHJvdWdoIGFuZCBleHBhbmRpbmcgdGhlIE5SRjUxLzUy IEhBTCwgYW5kIHRoZXJlIGFyZSAKYSBjb3VwbGUgb2YgdGhpbmdzIEnigJl2ZSBub3RpY2VkIHRo YXQgSSB0aGluayB3ZSBzaG91bGQgdGFsayBhYm91dC4gIApJ4oCZbGwgcHJvdmlkZSBhIHBhdGNo IGZvciB0aGlzIG9uIHRoZSBBREMgSEFMIGFuZCB0aGVuIHNsb3dseSB3b3JrIAp0aHJvdWdoIHRo ZSByZXN0LCBidXQgSSB3YW50ZWQgdG8gdGFsayBhYm91dCB0aGUgY2hhbmdlcyBwcmlvciB0byAK cmV2aXNpbmcgdGhpcy4KCkJ1dCwgZmlyc3QsIEkgdGhpbmsgaXTigJlzIHdvcnRoIHRhbGtpbmcg dGhyb3VnaCBpZGVhbGx5IHdoYXQgdGhlIApsYXllcmluZyBfc2hvdWxkXyBsb29rIGxpa2UgaGVy ZS4gIEnigJl2ZSBmb3VuZCBpdOKAmXMgb2Z0ZW4gaGFyZCB0byAKY29tZSB0byBhIGNvbW1vbiBk ZWZpbml0aW9uIHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSBCU1AsIEhBTCBhbmQgCkRyaXZl cnMsIGFuZCB3aGVyZSB0aGUgc2VwYXJhdGlvbiBvZiBjb25jZXJucyBzaG91bGQgYmUuICBJbiBt eSB2aWV3LCAKdGhlIGxheW91dCBzaG91bGQgYmU6Cgor4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU 4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU Kwp8ICAgICAgICAgICAgYXBwICAgICAgICAgICAgfAor4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU 4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU Kwp8ICAgICAgICAgIChuKWRyaXZlcnMgICAgICAgfAor4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU 4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU Kwp8ICAgICBIQUwgICAgIHwgICAgIEJTUCAgICAgfAor4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU 4oCU4oCU4oCU4oCU4oCUK+KAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlCsK CldoZXJlIHRoZSByb2xlIG9mIHRoZSBIQUwgaXMgX3NvbGVseV8gdG8gYWJzdHJhY3QgTUNVIHBl cmlwaGVyYWwgQVBJcywgCmluIGEgbG93IGxheWVyLCBzaW1wbGUgYWJzdHJhY3Rpb24uCgpUaGUg cm9sZSBvZiB0aGUgQlNQIGlzIHRvIGFic3RyYWN0IGJvYXJkIHNwZWNpZmljIGNvbmZpZ3VyYXRp b25zLgoKVGhlIGRyaXZlcnMgaXMgd2hlcmUgeW91IGNhbiBoYXZlIGRpdmVyc2l0eSwgYW5kIGlu dGVyYWN0aW9uIHdpdGggdGhlIApyZXN0IG9mIHRoZSBzeXN0ZW0uICBBREMgbWF5IG5vdCBiZSB0 aGUgYmVzdCBleGFtcGxlIG9mIHRoaXMsIGJ1dCBJ4oCZdmUgCmJlZW4gbG9va2luZyBhdCBpdCBt b3N0IGNsb3NlbHkgYXQgdGhlIG1vbWVudC4KCkluIHRoZSBjYXNlIG9mIGFuIEFEQywgdGhlIEhB TCBzaG91bGQgYmUgZGVzaWduZWQgdG8gYmUgYXMgcG9ydGFibGUgX2FuZCAKbG93IGxheWVyXyBh cyBwb3NzaWJsZSBhY3Jvc3MgdGhlIHZhcmlvdXMgTUNVcyB0aGF0IHdlIHN1cHBvcnQuICBFdmVy eSAKY2hpcCBoYXMgYSBkaWZmZXJlbnQgc2V0IG9mIHBlcmlwaGVyYWxzIGZvciBtYW5hZ2luZyBh biBBREMsIGJ1dCB0aGVyZSAKYXJlIGEgZmV3IG1vZGVzIHRoYXQgYXJlIHF1aXRlIGNvbW1vbiBh Y3Jvc3MgY2hpcHNldHM6CgotIE9uZSBzaG90Ci0gQ29udGludW91cwotIFNjYW4KCkJleW9uZCB0 aGF0LCB5b3UgY2FuIGltcGxlbWVudCBjb250aW51b3VzIGFuZCBzY2FuIHByZXR0eSBlYXNpbHks IG9uIHRoZSAKZmV3IGNoaXBzZXRzIHRoYXQgZG9u4oCZdCBoYXZlIHRoZW0uCgpJbXBsZW1lbnRh dGlvbiBvZiB0aGVzZSBjYW4gYmUgZmFpcmx5IGRpZmZlcmVudCBhY3Jvc3MgY2hpcHNldHMuICAK U29tZXRpbWVzIHlvdSBuZWVkIHRvIHVzZSB0aGUgQURDICsgY29tcGFyYXRvciwgYXQgb3RoZXIg dGltZXMgdGhlIEFEQyAKcGVyaXBoZXJhbCB3aWxsIGRvIGl0IGZvciB5b3UuICBIb3dldmVyLCBp biBtb3N0IGNhc2VzIHRoZXNlIG1vZGVzIGNhbiAKYmUgYWJzdHJhY3RlZCB3aXRoIG1pbmltYWwg Y29kZS4gIFRoZXJlIGlzIHZhbHVlIGluIGRvaW5nIHRoaXMgYWNyb3NzIApwcm9jZXNzb3JzLCBi ZWNhdXNlIGl0IGFsbG93cyBmb3IgcG9ydGFiaWxpdHkgYXQgaGlnaGVyIGxheWVycy4KCkhvd2V2 ZXIsIHdoaWxlIHRoZSBIQUwgaXMgbmVjZXNzYXJ5LCBpdCBpcyBub3Qgc3VmZmljaWVudCwgd2l0 aG91dCAKaW5mb3JtYXRpb24gdGhhdCBpbiBtb3N0IGNhc2VzIGNvbWVzIGZyb20gdGhlIGJvYXJk LiAgVGFraW5nIHRoZSBBREMgCmV4YW1wbGUgaGVyZSwgaG93IGRvIHlvdSBjb252ZXJ0IGEgcmVh ZGluZyBmcm9tIHRoZSBBREMgd2l0aG91dCBrbm93aW5nIAp0aGUgcmVmZXJlbmNlIHZvbHRhZ2U/ ICBJ4oCZbGwgY29tZSBiYWNrIHRvIHRoaXMgbGF0ZXIuCgpUaGUgcm9sZSBvZiB0aGUgQlNQIGlz IHRvIHByb3ZpZGUgY29uZmlndXJhdGlvbiBhbmQgYWJzdHJhY3Rpb24gb2YgYm9hcmQgCmxldmVs IGZlYXR1cmVzLiAgVGhpcyBpbmNsdWRlcyB0aGluZ3MgbGlrZSBtZW1vcnkgYW5kIGZsYXNoIGxh eW91dCwgYXMgCndlbGwgYXMgc29tZSBmb3JtIG9mIGEgcGlubXV4LCBhbmQgYWJzdHJhY3Rpb24g b2YgdGhpbmdzIGxpa2UgQ1BVIApmcmVxdWVuY3ksIGlucHV0IHZvbHRhZ2UsIGV0Yy4KCkFib3Zl IGJvdGggb2YgdGhlc2UgaXMgdGhlIGRyaXZlcnMgQVBJLiAgV2hpbGUgaW4gdGhlIEFEQyBIQUwg dGhlcmUgaXMgCm9ubHkgX29uZV8gaW1wbGVtZW50YXRpb24sIGZvciBkcml2ZXJzIHRoZXJlIHNo b3VsZCBiZSBtdWx0aXBsZSAKaW1wbGVtZW50YXRpb25zLCBhbmQgcG90ZW50aWFsbHkgY29tcGxl eCBoZWxwZXIgZnVuY3Rpb25zIHRvIG1ha2UgaXQgCmVhc3kgdG8gZGV2ZWxvcCBhZ2FpbnN0LiAg U28sIHlvdSBtaWdodCBoYXZlIGEgdmVyeSBzaW1wbGUvYmFzaWMgZHJpdmVyIAp0aGF0IGRvZXMg YmxvY2tpbmcgQURDIHJlYWRzIGFuZCB1c2VzIHRoZSBIQUwgb25seS4gIFlvdSBtaWdodCBoYXZl IGEgCm1vcmUgY29tcGxleCBkcml2ZXIgdGhhdCBjYW4gZGVhbCB3aXRoIGJvdGggaW50ZXJuYWwg YW5kIGV4dGVybmFsIEFEQ3MsIAphbmQgaGFzIGNoaXAgc3BlY2lmaWMgc3VwcG9ydCBmb3IgZG9p bmcgdGhpbmdzIGxpa2UgRE1B4oCZaW5nIEFEQyByZWFkcyAKaW50byBhIGJ1ZmZlciBhbmQgcG9z dGluZyBhbiBldmVudCB0byBhIHRhc2sgZXZlcnkg4oCZbuKAmSBzYW1wbGVzLiAgVGhlIApkcml2 ZXJzIGFyZSB0aGUgb25lcyB3b3VsZCBzaG91bGQgcmVnaXN0ZXIgd2l0aCB0aGUga2VybmVs4oCZ cyBwb3dlciAKbWFuYWdlbWVudCBBUElzLCBhbmQgbWFuYWdlIHR1cm5pbmcgb24gYW5kIG9mZiBw ZXJpcGhlcmFscyBhbmQgZXh0ZXJuYWwgCmNoaXBzZXRzLCBldGMuCgpBbmQgdGhlIGRyaXZlcnMg bmVlZCBub3QgYmUgb25lLXNpemUgZml0IGFsbDogaXTigJlzIGJlbmVmaWNpYWwgdG8gaGF2ZSAK Y29tcGxleGl0eSBoZXJlIGluIHNvbWUgY2FzZXMsIGFuZCBzaW1wbGljaXR5IGluIG90aGVycywg YW5kIHNvbWUgdGltZXMgCnlvdSBjYW7igJl0IG1haW50YWluIHRoZSBiYWxhbmNlIGJldHdlZW4g dGhlIHR3by4gIEl04oCZcyB0aGUgSEFM4oCZcyAKam9iIHRvIGJlIG9uZS1zaXplIGZpdCBhbGwg KG9yIGFzIGNsb3NlIGFzIHBvc3NpYmxlKSwgc28gdGhhdCB3ZSBjYW4gCmdhaW4gYWJzdHJhY3Rp b24gYWNyb3NzIHRoZSBkaXZlcnNlIG9mIGNoaXAgcGVyaXBoZXJhbHMuCgpPSywgb24gdG8gY2hh bmdlcyB0aGF0IEkgdGhpbmsgd2Ugc2hvdWxkIG1ha2UgdG8gaG93IHRoaW5ncyBhcmUgZG9uZSAK bm934oCmCgpSaWdodCBub3csIHdlIGRvbuKAmXQgaGF2ZSBhIGRyaXZlcnMgaW50ZXJmYWNlLCBh bmQgdGhlIEhBTCBpcyAKZHVhbC1wdXJwb3NpbmcgYm90aC4gIFRoZSBBREMgaXMgYSBnb29kIGV4 YW1wbGUgb2YgdGhpcywgc28gSeKAmWxsIGZvY3VzIAppbiBvbiB0aGF0IEFQSS4KCiogaGFsX2Fk Y19pbml0KCkgdGFrZXMgYSBzeXN0ZW0gZGV2aWNlIGlkLCB3aGljaCBpcyBkZWZpbmVkIGJ5IHRo ZSBCU1AuCgoqIGhhbF9hZGNfaW5pdCgpIGNhbGxzIGJzcF9nZXRfaGFsX2FkYygpLCB3aGljaCBt YXBzIHRoZSBzeXN0ZW0gZGV2aWNlIAppZCB0byB0aGUgY29ycmVjdCBIQUwgcGVyaXBoZXJhbAoK KiBic3BfZ2V0X2hhbF9hZGMoKSBjYWxscyB0aGUgc3BlY2lmaWMgTUNVIEhBTCBBREMgY3JlYXRl IGZ1bmN0aW9uIChlLmcuIApzYW1kMjFfYWRjX2NyZWF0ZSgpKSwgd2hpY2ggY3JlYXRlcyBhbmQg cmV0dXJucyBhIGhhbF9hZGMgc3RydWN0dXJlLgoKKiB0aGUgdmFyaW91cyBoYWwgZnVuY3Rpb25z IGFyZSB0aGVuIGltcGxlbWVudGVkLCByaWdodCBub3cgdGhlc2UgYXJlOgogICDigJQgaGFsX2Fk Y19yZWFkKCk6IGJsb2NraW5nIHJlYWQgb2YgcmF3IEFEQyB2YWx1ZQogICAtIGhhbF9hZGNfZ2V0 cmVmbXYoKTogR2V0IHRoZSByZWZlcmVuY2Ugdm9sdGFnZSBvZiB0aGUgQURDIHJlYWQgCih1c2lu ZyBCU1AgZnVuY3Rpb25zKQoKClRoZXJlIGFyZSBzb21lIGRlc2lnbiBkZWNpc2lvbnMgbWFkZSBo ZXJlIHRoYXQgSeKAmWQgbGlrZSB0byBjYWxsIG91dDoKCiogVGhlIG1hcHBpbmcgZnJvbSB0aGUg 4oCcc3lzdGVtIGRldmljZSBJRHPigJ0gdG8gcGVyaXBoZXJhbCBJRHMgaW4gdGhlIApCU1AuICBU aGlzIGlzIHRvIGFic3RyYWN0IHRoZSBkZWZpbml0aW9uIGFjcm9zcyBib2FyZHMgb2Ygd2hpY2gg QURDcyB0byAKbWFwIGVpdGhlciB0byBhbiBpbnRlcm5hbCBwZXJpcGhlcmFsIG9yIGFuIGV4dGVy bmFsIEFEQwoKKiBUaGUgaGFsX2FkY19yZWFkKCkgZnVuY3Rpb24gYmxvY2tzIG9uIHJlYWQuICBU aGlzIGlzIGZvciB1c2VyIApjb252ZW5pZW5jZSwgYnV0IGRvZXMgbm90IHJlcHJlc2VudCBob3cg dGhlIHVuZGVybHlpbmcgaGFyZHdhcmUgCmltcGxlbWVudHMgYW4gQURDIHJlYWQuCgoqIGhhbF9h ZGNfZ2V0cmVmbXYoKSBjb21lcyBmcm9tIHRoZSBCU1AsIHdoaWNoIGRlZmluZXMgdGhlc2UgaW4g CmhhbF9ic3AuYy4gIFRoZSBzYW1kMjEgc3BlY2lmaWMgaW1wbGVtZW50YXRpb24gb2YgZ2V0cmVm bXYoKSB0aGVuIG1hcHMgCnRoZXNlIHRvIHBlcmlwaGVyYWwgc3BlY2lmaWMgQVBJcy4KCk15IHN1 Z2dlc3Rpb25zIG9uIGhvdyB0byBjaGFuZ2UgdGhpcyBBUEksIGFuZCB0aGUgZ2VuZXJhbCBkZXNp Z24gCnBoaWxvc29waHkgYXJlIGFzIGZvbGxvd3M6CgoqIEEgI2RlZmluZSBzaG91bGQgYmUgYWRk ZWQgSEFMX0FEQ19NQVggd2hpY2ggaW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgCnBlcmlwaGVyYWxz IGVuYWJsZWQgb24gYSBnaXZlbiBib2FyZAoKKiBoYWxfYWRjX2luaXQoKSBzaG91bGQgYmUgcmVu YW1lZCB0byBoYWxfYWRjX2NvbmZpZygpIGFuZCBzaG91bGQgCmNvbmZpZ3VyZSB0aGUgcGVyaXBo ZXJhbCBwcm92aWRlZCwgd2hpY2ggYWJzdHJhY3RlZCAoY3Jvc3MtcGxhdGZvcm0pIAp2YWx1ZXMg Zm9yIHJlZmVyZW5jZSB2b2x0YWdlLCByZXNvbHV0aW9uIGFuZCBnYWluLgoKKiBoYWxfYWRjX3Jl YWQoKSBzaG91bGQgYmUgYnJva2VuIGludG8gYSBzZXQgb2YgZnVuY3Rpb25zIHRoYXQgbW9yZSAK YXBwcm9wcmlhdGVseSBtYXAgdG8gdW5kZXJseWluZyBwZXJpcGhlcmFsIG9wZXJhdGlvbiAoZS5n LiAKaGFsX2FkY19yZWFkX29uY2UocGVyaXBoX251bSwgY2FsbGJhY2spKS4KCiogVGhlcmUgc2hv dWxkIGJlIEJTUCBBUElzIHRoYXQgcHJvdmlkZSBuZWNlc3NhcnkgaW5mb3JtYXRpb24uICBGb3Ig CmV4YW1wbGUsIHJlZmVyZW5jZSB2b2x0YWdlIHdpbGwgbW9zdCBsaWtlbHkgY29tZSBmcm9tIHRo ZSBib2FyZCAKY29uZmlndXJhdGlvbiwgc28gYnNwX2dldF9ib2FyZF92b2x0YWdlKCkgc2hvdWxk IGJlIHByb3ZpZGVkLCBhcyBhIApnZW5lcmFsbHkgaW1wbGVtZW50ZWQgZnVuY3Rpb24uICBUaGlz IGZ1bmN0aW9uIGNvdWxkIHRoZW4gYmUgcGFzc2VkIGludG8gCmhhbF9hZGNfY29uZmlnKCkgYXMg dGhlIHJlZmVyZW5jZSB2b2x0YWdlIChhcyBhbiBleGFtcGxlLikKCiogUG93ZXIgQVBJcyB3aWxs IGJlIGFkZGVkIHRvIHRoZSBIQUwgKGhhbF9hZGNfb24oKSwgaGFsX2FkY19zdXNwZW5kKCksIApo YWxfYWRjX29mZigpLikKCiogVGhlcmUgc2hvdWxkIGJlIGEgZHJpdmVycyBpbnRlcmZhY2UgdGhh dCBydW5zIGFib3ZlIHRoaXMsIGFkZGVkIHRvIHRoZSAKYmFzZSBkaXJlY3Rvcnkgb2YgbXluZXd0 LWNvcmUuICBNeW5ld3QtY29yZSBzaG91bGQgY29tZSB3aXRoIGEgYmFzZSBzZXQgCm9mIGRyaXZl cnMgdGhhdCBjYW4gdXNlIHRoaXMuICBUaGUgZHJpdmVycyBBUElzIHdpbGwgYmUgd2hhdCBtYXBz IAppbnRlcm5hbCBhbmQgZXh0ZXJuYWwgQURDcywgcHJvdmlkZXMgYmxvY2tpbmcgaW50ZXJmYWNl cywgZXRjLgoKKiBBIGRlZmF1bHQgQURDIGRyaXZlciB3aWxsIGJlIGRldmVsb3BlZCwgd2hpY2gg dXNlcyB0aGUgSEFMIHRvIHJlYWQgCnBlcmlwaGVyYWxzLCBhbmQgcHJvdmlkZXMgYmxvY2tpbmcg ZnVuY3Rpb25zLiAgT3ZlciB0aW1lIHRoaXMgd2lsbCBiZSAKZXZvbHZlZCAob3IgYnJva2VuIGFw YXJ0IGlmIHRvbyBjb21wbGV4KSB0byBzdXBwb3J0IGV4dGVybmFsIEFEQ3Mgb3IgCmRpcmVjdGx5 IHN1cHBvcnQgbW9yZSBjb21wbGV4IGNoaXAgZmVhdHVyZXMuCgoqIFRoZSBkcml2ZXIgd2lsbCBi ZSByZXNwb25zaWJsZSBmb3IgbWFuYWdpbmcgcG93ZXIgc3RhdGVzLgoKKiBUaGUgbWFwcGluZyBv ZiBTWVNURU0gSUQgLT4gc3BlY2lmaWMgQURDIGNvbmZpZ3VyYXRpb24gaXMgYW4gZXhlcmNpc2Ug CnRoYXQgaXMgbGVmdCB0byB0aGUgdXNlci4gIFRoaXMgY2FuIGJlIGRvbmUgd2hlcmV2ZXIgdGhl IGRyaXZlcnMgYXJlIApjcmVhdGVkIC8gaW5pdGlhbGl6ZWQuICBJbiBzb21lIGNhc2VzIHRoaXMg d2lsbCBiZSBCU1AsIGluIG90aGVyIGNhc2VzIAppdCBjYW4gYmUgZG9uZSBkaXJlY3RseSBieSB0 aGUgYXBwbGljYXRpb24uICBUaGlzIGNhbiBiZSBldmVyeXRoaW5nIGZyb20gCnByb3ZpZGVkIGEg Z2VuZXJpYyBzZW5zb3IgQVBJIHRoYXQgdGhlIGRyaXZlcnMgcGx1ZyBpbnRvLCB0byBwcm92aWRp bmcgYSAKZmFjdG9yeSBmdW5jdGlvbiB0aGF0IHJldHVybnMgdGhlIGFwcHJvcHJpYXRlIGRyaXZl ciBzdHJ1Y3R1cmUgcGVyIApib2FyZC4KCk9LLCB0aGF0IHdhcyBhIGxvbmcgZW1haWwuICBJ4oCZ ZCBsaWtlIHBlb3BsZeKAmXMgdGhvdWdodHMgb24gdGhpcyDigJQgCnNvIGlmIHlvdeKAmXZlIG1h ZGUgaXQgdGhpcyBmYXIsIHBsZWFzZSBjaGltZSBpbi4gOi0pCgpTdGVybGluZw==