From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 2FB13A0C41; Wed, 23 Jun 2021 10:54:43 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id EC58C4003F; Wed, 23 Jun 2021 10:54:42 +0200 (CEST) Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20081.outbound.protection.outlook.com [40.107.2.81]) by mails.dpdk.org (Postfix) with ESMTP id 8674C4003E for ; Wed, 23 Jun 2021 10:54:41 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=12nUk3E+vHfTFiQSMqkDZ/V1Nqq1Pqk83SlhtHoTV7k=; b=WXQ0lkMnstnE3PWqzKdyV3K9GyRVA39FoaIHn6/NnuUFDOeYIeF5F8WqZDzj7ucr485IiGu1UPlEWpKztStXyw2GTADxbq2wBRhXpHFliOmr6vRnzAdYsauvTdtSDweljWchPzRVQRFB4CdJQ7niq4KHxVneCY4oeC2qB7qQzhQ= Received: from AM6P193CA0040.EURP193.PROD.OUTLOOK.COM (2603:10a6:209:8e::17) by PR3PR08MB5625.eurprd08.prod.outlook.com (2603:10a6:102:89::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.19; Wed, 23 Jun 2021 08:54:40 +0000 Received: from VE1EUR03FT047.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:8e:cafe::6e) by AM6P193CA0040.outlook.office365.com (2603:10a6:209:8e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.18 via Frontend Transport; Wed, 23 Jun 2021 08:54:40 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dpdk.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dpdk.org; dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by VE1EUR03FT047.mail.protection.outlook.com (10.152.19.218) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.18 via Frontend Transport; Wed, 23 Jun 2021 08:54:39 +0000 Received: ("Tessian outbound d6f95fd272ef:v96"); Wed, 23 Jun 2021 08:54:39 +0000 X-CR-MTA-TID: 64aa7808 Received: from f8a78fa46eb2.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 3BAB6791-C0D0-45A6-99FD-83CC1CBB2E70.1; Wed, 23 Jun 2021 08:54:34 +0000 Received: from EUR03-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f8a78fa46eb2.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 23 Jun 2021 08:54:34 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JwP6CqSThkQDZHBArYgwWJiZxARC2lZWSFxrgFAcdLL5d9DIIMOkMYpOY+5yiELiG40Y6Z38pyqSMDpVUnOfd8N1WY1FN/H6iDNFx8wh78sYp12zGrDGDpjj/gBIXSHD3kbfi88yBrF6/B5G+eS6U4JFli/1IsUzoXfZ5W1NX9b9cuUCKowe4VpCIT1nrWPKs1oJ3TUfoQmcckPRQvnlJe30MaALyWRajkOxEEwIr4dFV99mhsSmXcaCbsAACBdBPJm/K2J6v87Zh41kvB0ob9JLLJsTvQmqHJeYJOQNPM2a7GzNssd0pHS8i4iG05cJr7yqbckO090bXoTiUFWLtw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=12nUk3E+vHfTFiQSMqkDZ/V1Nqq1Pqk83SlhtHoTV7k=; b=D0VSPWipAjF7JkrbpeIuNhMf84AOr5/93sGn4R0lduiEjF9MKS3byiceTnDOKv049rFzI4XTsR3a/zNr+eqOWlrEZG11cqFG1xxJmqqYbva2TVLaep0pkkLEnOXL/aC6sGGcV9NG9Bm3h5574B8XaSwZZPtVOM0x6QdD90tdso3Zw7mpnmxqRp8svGDjTHQGfkWdfwjhoGt9Kz/IKzBk2BqbQF+qqhWtZsSH/CodhX0lFNyPtmNNH3e3WOVbuHACGAdXAlMqrDySMdx8ecEz70/1DECi1nwIG1MDrRkMl18DTfLnR7bWa3s33RkR1Afim0goabARXnPVScVvyPxKlA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=12nUk3E+vHfTFiQSMqkDZ/V1Nqq1Pqk83SlhtHoTV7k=; b=WXQ0lkMnstnE3PWqzKdyV3K9GyRVA39FoaIHn6/NnuUFDOeYIeF5F8WqZDzj7ucr485IiGu1UPlEWpKztStXyw2GTADxbq2wBRhXpHFliOmr6vRnzAdYsauvTdtSDweljWchPzRVQRFB4CdJQ7niq4KHxVneCY4oeC2qB7qQzhQ= Received: from AM8PR08MB5796.eurprd08.prod.outlook.com (2603:10a6:20b:1d1::22) by AM9PR08MB6147.eurprd08.prod.outlook.com (2603:10a6:20b:2da::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.19; Wed, 23 Jun 2021 08:54:32 +0000 Received: from AM8PR08MB5796.eurprd08.prod.outlook.com ([fe80::548f:e4a8:de7e:5090]) by AM8PR08MB5796.eurprd08.prod.outlook.com ([fe80::548f:e4a8:de7e:5090%3]) with mapi id 15.20.4264.019; Wed, 23 Jun 2021 08:54:32 +0000 From: Richael Zhuang To: David Hunt , "dev@dpdk.org" CC: "anatoly.burakov@intel.com" , "stephen@networkplumber.org" , Reshma Pattan , nd , nd Thread-Topic: [PATCH v5 2/2] power: refactor pstate and acpi code Thread-Index: AQHXZ2qej0PSIYrnZ0WLpsTpi7jCvashStdg Date: Wed, 23 Jun 2021 08:54:32 +0000 Message-ID: References: <20210622125853.2798-1-david.hunt@intel.com> <20210622125853.2798-2-david.hunt@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 2DE5E5BFE935384E94E7034129661568.0 x-checkrecipientchecked: true Authentication-Results-Original: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=arm.com; x-originating-ip: [203.126.0.113] x-ms-publictraffictype: Email X-MS-Office365-Filtering-Correlation-Id: 39d5c3ab-251f-4487-b80e-08d93624894d x-ms-traffictypediagnostic: AM9PR08MB6147:|PR3PR08MB5625: X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:529;OLM:529; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: P9L4aDQ/eoQrPKGvqVzAcKQnYis0qgfgEwyaBz+vMqxINa+lkeiqqSJePSGtxdgkpcjgDDcAN8zQuaPsZaxivZ+sFyp6FEQQbigiD902CkKj+criI69HJ3k0BPKMJCFfK8JMzVinOTQxXObfcA2myfoqogvCJJfxzG2T6zH++n4RmFhn5mH2+jGQknbXZ3sOS878Dvhsz+M5aXi5onQfLcItQfqSoWgjBGsUW0OW4QX/q4Rpog7j0Ehp/qI1In+YXkVAegVA+sRG7ttU8k/J7apJg0w1yWK7Ybm1zJJVYQXTFJLwewpE1KxZX048DIo+N5dOFqivC0nULXlIx8LBscRmH9NijpXiamKq4spl1QhHPh8A/9QrXcO5Mj4rVYNfTffwTkgI6qCVQ02BuqixCQe9x/rv/DpHwWRShFusJJGZnofb5N46tpCMdIMOazObdZCf5SgnWpdlYZGNgRkGf76EO5q2Wq0dasvGYFdci2brBh6jNOLhFMU0pgNcKp5pvHi72vLRtspsUHEXLyccSWPfHaUoRaJr0UKAH/e1n+xvgMBt6jHwurByTyynlo/ahXGuGgYle6H04gi2P7HZMzvrF5Kl8AjZC9f+crIQ7Os= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM8PR08MB5796.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(396003)(376002)(366004)(39850400004)(346002)(136003)(52536014)(76116006)(316002)(64756008)(66946007)(4326008)(110136005)(66476007)(66556008)(33656002)(66446008)(54906003)(55016002)(83380400001)(6506007)(122000001)(38100700002)(86362001)(7696005)(53546011)(5660300002)(186003)(478600001)(26005)(9686003)(8936002)(2906002)(71200400001)(8676002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?eWhIYjgySCtPY0FqOTRDanU4NXEyZHBzRkh2WUd3NWJLeXhhbEJnYis2T3hE?= =?utf-8?B?bTUxQjRPMmZYREdEaTZmS1lPbzhGc2NReTJKaFg0WXd3Qk1oMUdDaXo1dktJ?= =?utf-8?B?dDBPbWttU20yR0ZZL2p6czlJSnY1OUk3ZmNET0dPWVVOZm4ySGZWeW11VG5o?= =?utf-8?B?SWQyVHNKY1pmSmdqM3R1S2loUFVnSm9OZStmQjZOVWw1cXBCT0Z4cWtRWmNJ?= =?utf-8?B?MFdlSEFOaVBLd0RxY1FlU2hBNm4wQ28yeHprQ21LWGRQaUxjREd1bCtjazN2?= =?utf-8?B?Q0c5S2wwUVUwa2J1b1FwY2I5NVN6TUlWcmJ5NXNkZFZhOHo1cys2bmhlcisw?= =?utf-8?B?UkJxeU1zZ3VReWh6czEvd084SkN2dUhocDFPOHVLSnN3TnBQeVFHSmVINWN2?= =?utf-8?B?ZFI4N1Z6Z1A3eE1PV0xvbGJKMTFNL2VNdUl1RWlXYU9US0dyMUx0ZE1MN200?= =?utf-8?B?dEZwMlVLc21GM0Vxb2MzVEZvY0VScFBjLytJbG14SmFaOTZ6Q2dhMTV5T1JG?= =?utf-8?B?MmZLL2RjVmZaMWNrQmdNSkJjS0w5U3RsUGk5NHpONkkvVVM0RTI0aUR4SVBv?= =?utf-8?B?a2h1YzZKL253VGx3NHkwUVh0VmFWRER1Vis2bjhZamo1STU2V1lRNEc1RlQz?= =?utf-8?B?UHhHSUNveURrU0tKNGZlVkZwMG1xZVROZXhIaytjVGp2MTN0VkUybGRCZEhZ?= =?utf-8?B?YVNhVC9NOEJkZ004bCtXT2VBRFRJQWduVk1lbUljYWQzMzhBNmlEVmx3UVZC?= =?utf-8?B?emlhTjB3eWJGMjg4MkRPZ3JvZ2xXbTBXd2lVUmRrdy9aUFlqUUlEU3FXUmRJ?= =?utf-8?B?QzM4Q0Z0R2NiMHZTUWtCYTNRRmtPMVJKTmJVdnZWSml0MHVZYXNkdlMxUDBo?= =?utf-8?B?a0RQY0N0Ujk4b1VKcURva05TM203TGVXdXUrZy9VbndhazF6RllDdEdGakR3?= =?utf-8?B?WEwxa2dkYzB0YWZTWjNjblVZWHNRQW4wMHFWQnpma0tJL29ZVjRjVUZTdGZX?= =?utf-8?B?cS9zVytlcUw4dnhzV0lYamphUlV6dmNLWkF3MWIrVWxKYmdtRXVsYWkxK2F4?= =?utf-8?B?UXlNMlJ6S1hLeU9CcXpMSVlxb3RBVENvczZ1VTdxSDNkc24xeDRnT2RubWpv?= =?utf-8?B?ZXV0UGZuWW16KzBEbFl4VUZCcTZ2aE55Unk4VDFmTCtuTGxVSFo1SnkrTytQ?= =?utf-8?B?SnM1dFExRTk0eWh5Q1kxT3JVM3d3UVFkbEdBdURmVXQzcTF3ZGhUR2pzeWRx?= =?utf-8?B?YmtBSkhETkFqWWsrRkFLYWVqWFpsNXNua0tPRkJYelBxU29FcCt0ZDVmL1BW?= =?utf-8?B?eEFkZzNQbUdUUXlMV0xjWlBSM0llWFFMdFk5LzFIR21ZY0dBWTFPbzhjRmJN?= =?utf-8?B?clBnNWIyS0VPRkNlYnR5bnRFSTkzeEU0QTkrUmVkU2syV3ZUYlArSG9TNlhx?= =?utf-8?B?SzRxb3ZudGdKc1FwOUx4aXE2aWFxOUpUSTU3dVBYc3FZMjNvZm43VGxtYzNK?= =?utf-8?B?a2tFRldTcFU5aXR2dks4bjcwWlNuY2lNR3BGR3dZbTRONVZFOUtMRG4vUG9V?= =?utf-8?B?ZXJkS0puUFArckFsTUdaK1YxYTg3K3BpaUtGbWVPaGFIS2tCcGtINExGeVl4?= =?utf-8?B?ck56M0dJQkRiMTM2Y0R4R1kyalg4KzVKWFhIcFlIRmhRV29YbS9TOGEwN0F1?= =?utf-8?B?ZHhmNVFkaFdGZTJTaVUvRGhlekJiZnl4RU1iSVZZZWpUbmpYdzFmR2VqMnI3?= =?utf-8?Q?gzb6pQCu6KIsN5t6TwliHfB5hlfR6URx2zIlq7J?= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6147 Original-Authentication-Results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: VE1EUR03FT047.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: a068dc1a-c728-4ef6-f1d1-08d9362484c9 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: pnpMgZ0B9vqGvXjMf4r4GSQ334kZ6j2sGNzCMp3dqUQ4BKJP8uOpoEbGLfRqDdH/8JKKTI7fZ/mBznGvwOKbdJ8y1R4a7+JgGsjg1ks8BqwZaUoRLoCisSvW9dHKqyQ3o9XunsjDllQLAEDIiaFTYKUTZBamuVIENHXa1w4HxsAQFAaW1C/s0q05nM3ysGmeV02oKnpp0sPnagunCVyOUPOHa9nVX+Ttjlf3RUPS50CgbuXBpJAgSy2GNHLAaxkQ4EIo5+F97OE8msl46WxvrsQ27VQVOfsCP3VlnOlJiCySwHIWCku2BXqFKiB0FIOQC/9Po9/m0/7jspNtrV34nma1gCs+RXt41/gW30cD9zK/5mkDnPKsM6UV0gq7avup7JYFzWyrWIcRtwn+X1jlCTXBUETxn8s9Gnlq3eOgH/+mvvspfNNsVY7qvm4Afp7AzdK913NpWe8sG+LuYCD1KtKKcg1v6LhXMbiMSc+ilGgKolboHV9IzTMIYwZRP9GqmWX1WDbUCMOnldPACa0dZowXqEqBzioCqIyEuDfOzLPd0UcAKyRnOAAB/oDGWN8OF4RflUDNsL4JToCm+2q/jUAZgz0tVazp4awjN/F6QdWF/hQ7ZjolaEd/uRmZOAtqsNJAaCHTxqCa3c2xvG+hE2HC70We5KOdx6OVPpgCe+c= X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(4636009)(36840700001)(46966006)(36860700001)(26005)(83380400001)(4326008)(186003)(47076005)(5660300002)(8676002)(70206006)(356005)(9686003)(52536014)(7696005)(55016002)(498600001)(70586007)(53546011)(54906003)(86362001)(2906002)(8936002)(6506007)(33656002)(81166007)(82310400003)(336012)(110136005); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jun 2021 08:54:39.8770 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 39d5c3ab-251f-4487-b80e-08d93624894d X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: VE1EUR03FT047.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5625 Subject: Re: [dpdk-dev] [PATCH v5 2/2] power: refactor pstate and acpi code X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" SGksDQogVGhlcmUgaXMgYSBidWcgaW4gbGliL3Bvd2VyL3Bvd2VyX2NvbW1vbi5jOg0KK3dyaXRl X2NvcmVfc3lzZnNfcyhGSUxFICpmLCBjb25zdCBjaGFyICpzdHIpDQorew0KKwlpbnQgcmV0Ow0K Kw0KKwlyZXQgPSBmc2VlayhmLCAwLCBTRUVLX1NFVCk7DQorCWlmIChyZXQgIT0gMCkNCisJCXJl dHVybiAtMTsNCisNCisJcmV0ID0gZnB1dHMoc3RyLCBmKTsNCisJaWYgKHJldCAhPSAwKQ0KKwkJ cmV0dXJuIC0xOw0KSGVyZSwgSSBtZW50aW9uZWQgaW4gdGhlIFY0IHBhdGNoOiAgcmV0ID49MCBp ZiBzdWNjZXNzLCBFT0YgbWVhbnMgZmFpbHVyZS4gIEl0IHNlZW1zIHlvdSBmb3Jnb3QgdG8gZml4 IHRoaXMuDQorDQorCS8qIGZsdXNoIHRoZSBvdXRwdXQgKi8NCisJcmV0ID0gZmZsdXNoKGYpOw0K KwlpZiAocmV0ICE9IDApDQorCQlyZXR1cm4gLTE7DQorDQorCXJldHVybiAwOw0KK30NCg0KQmVz dCByZWdhcmRzLA0KUmljaGFlbA0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9t OiBEYXZpZCBIdW50IDxkYXZpZC5odW50QGludGVsLmNvbT4NCj4gU2VudDogVHVlc2RheSwgSnVu ZSAyMiwgMjAyMSA5OjI4IFBNDQo+IFRvOiBkZXZAZHBkay5vcmcNCj4gQ2M6IGFuYXRvbHkuYnVy YWtvdkBpbnRlbC5jb207IHN0ZXBoZW5AbmV0d29ya3BsdW1iZXIub3JnOyBSaWNoYWVsDQo+IFpo dWFuZyA8UmljaGFlbC5aaHVhbmdAYXJtLmNvbT47IFJlc2htYSBQYXR0YW4NCj4gPHJlc2htYS5w YXR0YW5AaW50ZWwuY29tPjsgbmQgPG5kQGFybS5jb20+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0gg djUgMi8yXSBwb3dlcjogcmVmYWN0b3IgcHN0YXRlIGFuZCBhY3BpIGNvZGUNCj4gDQo+IEFkZGlu ZyBwZW9wbGUgdG8gdGhlIENDIGxpc3QgdGhhdCB3ZXJlIG9uIHY0IG9mIHRoaXMgcGF0Y2ggc2V0 LCBhbmQgUmljaGFlbA0KPiB3aG8gcmFpc2VkIHNvbWUgaXNzdWVzIGluIHY0Lg0KPiANCj4gT24g MjIvNi8yMDIxIDE6NTggUE0sIERhdmlkIEh1bnQgd3JvdGU6DQo+ID4gRnJvbTogQW5hdG9seSBC dXJha292IDxhbmF0b2x5LmJ1cmFrb3ZAaW50ZWwuY29tPg0KPiA+DQo+ID4gQ3VycmVudGx5LCBB Q1BJIGFuZCBQU1RBVEUgbW9kZXMgaGF2ZSBsb3RzIG9mIGNvZGUgZHVwbGljYXRpb24sDQo+ID4g Y29uZnVzaW5nIGxvZ2ljLCBhbmQgYSBidW5jaCBvZiBvdGhlciBpc3N1ZXMgdGhhdCBjYW4sIGFu ZCBoYXZlLCBsZWQNCj4gPiB0byB2YXJpb3VzIGJ1Z3MgYW5kIHJlc291cmNlIGxlYWtzLg0KPiA+ DQo+ID4gVGhpcyBjb21taXQgZmFjdG9ycyBvdXQgdGhlIGNvbW1vbiBwYXJ0cyBvZiBzeXNmcyBy ZWFkaW5nL3dyaXRpbmcgZm9yDQo+ID4gQUNQSSBhbmQgUFNUQVRFIGRyaXZlcnMuDQo+ID4NCj4g PiBTaWduZWQtb2ZmLWJ5OiBBbmF0b2x5IEJ1cmFrb3YgPGFuYXRvbHkuYnVyYWtvdkBpbnRlbC5j b20+DQo+ID4gU2lnbmVkLW9mZi1ieTogRGF2aWQgSHVudCA8ZGF2aWQuaHVudEBpbnRlbC5jb20+ DQo+ID4NCj4gPiAtLS0NCj4gPiBjaGFuZ2VzIGluIHYyIChzaG91bGQgcmVhZCB2NSkNCj4gPiAq IGZpeGVkIGJ1Z3MgcmFpc2VkIGJ5IFJpY2hhZWwgWmh1YW5nIGluIHJldmlldyAtIG9wZW4gZmls ZSBydyssIGV0Yy4NCj4gPiAqIHJlbW92ZWQgRk9QUyogYW5kIEZPUEVOKiBtYWNyb3MsIHdoaWNo IGNvbnRhaW5lZCBjb250cm9sIHN0YXRlbWVudHMuDQo+ID4gKiBmaXhlZCBzb21lIGNoZWNrcGF0 Y2ggd2FybmluZ3MuDQo+IA0KPiANCj4gU28gaW4gdGhlIHByb2Nlc3Mgb2YgcG9zdGluZyB2NSwg SSBwaWNrZWQgdGhlIGVtYWlsIGlkIGZyb20gdjQgaW4gcGF0Y2h3b3JrLA0KPiB1c2VkIHRoYXQg aW4gbXkgLS1pbi1yZXBseS10bywgYW5kIHNvbWVob3cgaXQgc2NyZXdlZCB1cCB0aGUgdGhyZWFk aW5nIGFzIGl0DQo+IGxvb2tzIGxpa2UgSSdtIHJlc3BvbmRpbmcgdG8gdjMuIFNvIEknbSBzZW5k aW5nIHRoaXMgZW1haWwgdG8gbWFrZSBzdXJlIGFsbCB0aGUNCj4gcGVvcGxlIENDJ2QgaW4gdjQg YXJlIGluY2x1ZGVkIGluIHRoaXMgKHY1KS4NCj4gDQo+IEFuYXRvbHkgaXMgYnVzeSBhdCB0aGUg bW9tZW50LCBzbyBJJ20gYWRkcmVzc2luZyB0aGUgaXNzdWVzIHJhaXNlZCBpbiB2NCwgYW5kDQo+ IGFkZGl0aW9uYWxseSBhZHJlc3NpbmcgdGhlIGNoZWNrcGF0Y2ggaXNzdWVzIHdoZXJlIGl0IGRv ZXMgbm90IGxpa2UgdGhlDQo+IG1hY3JvcyB3aXRoIGNvbnRyb2wgc3RhdGVtZW50cywgc28gcmVt b3ZpbmcgdGhvc2UsIGFzIEkgZG9uJ3QgbGlrZSB0aGVtDQo+IGVpdGhlci4NCj4gDQo+IFJlZ2Fy ZHMsDQo+IERhdmUuDQo+IA0KPiANCj4gDQoNCg==