Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vdkt2-004Kml-1N for pgsql-novice@arkaria.postgresql.org; Thu, 08 Jan 2026 07:56:54 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vdkt1-00119y-1P for pgsql-novice@arkaria.postgresql.org; Thu, 08 Jan 2026 07:56:52 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vdfuB-00Gys5-0s for pgsql-novice@lists.postgresql.org; Thu, 08 Jan 2026 02:37:44 +0000 Received: from mx0b-00230701.pphosted.com ([148.163.158.9]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vdfu7-004oVa-1C for pgsql-novice@lists.postgresql.org; Thu, 08 Jan 2026 02:37:42 +0000 Received: from pps.filterd (m0098572.ppops.net [127.0.0.1]) by mx0b-00230701.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 6080LLXp1936747; Wed, 7 Jan 2026 18:37:37 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=synopsys.com; h= content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pfptdkimsnps; bh=ustE8d5jPfdfKxbuylFDm1mWJ57M1tDMmb0DQ6iGW6Q=; b=dNXJ35xRHkPK S8VlzULKQV7WW7/J36U57oxmvTItLN8A2tDwk8e8PbakdMesAiGkbmxWOIPV3F5w PPKYJKYzVDmYgp/rFelY2ssY+DqA4T8Raga7fCv+vJAqlUyv8DQVK7h/GbPZnoql s6t8HCNBg9nF7JR5mwBnI1Q/cvOO5tRKr+nzB7aReYK7PGwIViackYQicpn34hId fafchI6EvChKStq5DhAaxNPFG4KCcjiP4YMnNzbYTMqafKPCYfYG+bxrTochKLHk IntwyTB4M6Dl/98dAKfgctcfsPysx95Og7L5HPv3EPvhsh9BRiy72RZu3nuX8C/3 uINYWgSJqg== Received: from smtprelay-out1.synopsys.com (smtprelay-out1.synopsys.com [149.117.73.133]) by mx0b-00230701.pphosted.com (PPS) with ESMTPS id 4bj1yegdht-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 07 Jan 2026 18:37:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=synopsys.com; s=mail; t=1767839857; bh=ustE8d5jPfdfKxbuylFDm1mWJ57M1tDMmb0DQ6iGW6Q=; h=From:To:Subject:Date:References:In-Reply-To:From; b=AhA8TvIp80OttI8bRMuXRhnYbVS+URmCZ33tym/j57IcnCepILsSx3rIyuUn6zo/U iKoRH3rMEiGjvmB0kAvWyeufpklbZVGrj2E4qetODLux76SxGDB5tWip+RYaYXjYtU RNlAmCjMAveplSfwjrPvGhjA6ytmwRr6H68S8yFWaB7asYdktQtSsQ1qB1ftJYWUfj k3NsrVznsSqWF3lhHUQ8TOPSVzIEt94oTAegcSgZ4SeVIrNeijBogK369jTkfee7QC qd1G6y9FnNeLRmJPJyzDr/g8GHF9LAChDpx1YOuXsrxg8hkSm8Fl3VaTBNyD4jwYUU 2KqiNh2jfS5ig== Received: from mailhost.synopsys.com (us03-mailhost1.synopsys.com [10.4.17.17]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mailhost.synopsys.com", Issuer "SNPSica2" (verified OK)) by smtprelay-out1.synopsys.com (Postfix) with ESMTPS id E5B0B40AEE; Thu, 8 Jan 2026 02:37:36 +0000 (UTC) Received: from o365relay-in.synopsys.com (sv2-o365relay3.synopsys.com [10.202.1.139]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) client-signature RSA-PSS (2048 bits)) (Client CN "o365relay-in.synopsys.com", Issuer "Sectigo Public Server Authentication CA OV R36" (not verified)) by mailhost.synopsys.com (Postfix) with ESMTPS id 0C71AA006D; Thu, 8 Jan 2026 02:37:35 +0000 (UTC) Authentication-Results: o365relay-in.synopsys.com; dmarc=pass (p=reject dis=none) header.from=synopsys.com Authentication-Results: o365relay-in.synopsys.com; spf=pass smtp.mailfrom=synopsys.com Authentication-Results: o365relay-in.synopsys.com; dkim=pass (1024-bit key; unprotected) header.d=synopsys.com header.i=@synopsys.com header.a=rsa-sha256 header.s=selector1 header.b=qtvAZ2F3; dkim-atps=neutral Received: from DM2PR0701CU001.outbound.protection.outlook.com (mail-dm2pr0701cu00103.outbound.protection.outlook.com [40.93.13.67]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (2048 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mail.protection.outlook.com", Issuer "DigiCert Cloud Services CA-1" (verified OK)) by o365relay-in.synopsys.com (Postfix) with ESMTPS id 280F64035E; Thu, 8 Jan 2026 02:37:35 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=uP9ziCcdhPbYHULX0kQmAiLkKB8+Da8wv14wsAYLBe/zraTXfkDqP63MlxMqQqF/HpDHF0w6B7OjVBruFNNz15rWCuSyUYIal0y+QPrtqKPzxZuD5l0XOEi+a5Xlv/50586MGNtKP/k7A0Zp/dX4zx3AMynw51SfGs7S3J0TfFvGOh26MGnnuLBAu0WHKUYMBRpTGaSUcieO1CT4XbbLZ2Gf1NqmInUISmbO5SYOKbI2vY1w4IdbUaVnHO4ebdtE2YizHLY2yBfcXKnGlhQRpVzQV3WX9bLGyjjMu9Vd3RdF3lE40RPCTI3pfswQH0wOUdAMepMuu2hQbXYw6fhuIw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ustE8d5jPfdfKxbuylFDm1mWJ57M1tDMmb0DQ6iGW6Q=; b=hKE0oqIAS18YdG7P9UIisbwAsbQuEkIVscBeZhIamNvVCxngYRhFksaYlU7LfHVmV9U2iBCfgaHgyfCG/W5Y2bqZ0fhEBvc67ZZDrt7BN17JbaWvfqNHDDLDU6Gvh5S8rds+kdsxKhMM7+TOeSzRe79tC6Nqw9Ly6bzbIeUcmvSmI8j8aY59hJtcvg6XW6q9l/X0sbRdna/F2JSDmdar5KSl5E2V7vSr1lKeXGLqaHQSVsww2F8hzg9dxMwUzNYUzIZhZjrROaqCYzpSpshwxVPSpb0vZmaCBLeBtMwzz4qWS/Y/JBmL0HcQX6L6KJvZSOZ9MCY9xYWi/I67+KG7mg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=synopsys.com; dmarc=pass action=none header.from=synopsys.com; dkim=pass header.d=synopsys.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=synopsys.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ustE8d5jPfdfKxbuylFDm1mWJ57M1tDMmb0DQ6iGW6Q=; b=qtvAZ2F34BJcGpFB+cI4PmUBWo+UWiSi0syVrtSX/f8SwvGqlxX3FCFgJRewRl4fWG3QPqtuArC/LSdKhZf1y6XYe8nNMT8fLes1Mkk/hFRiCWSa4zpuvxv+rsjDsah+pA4Fvr5ff+BxAl64uRPVHNjLes3gtNQ4jkgR6yCUn1E= Received: from DM4PR12MB6039.namprd12.prod.outlook.com (2603:10b6:8:aa::12) by IA1PR12MB7735.namprd12.prod.outlook.com (2603:10b6:208:421::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9499.2; Thu, 8 Jan 2026 02:37:32 +0000 Received: from DM4PR12MB6039.namprd12.prod.outlook.com ([fe80::167f:7830:a4cf:edae]) by DM4PR12MB6039.namprd12.prod.outlook.com ([fe80::167f:7830:a4cf:edae%7]) with mapi id 15.20.9499.002; Thu, 8 Jan 2026 02:37:32 +0000 X-SNPS-Relay: synopsys.com From: Chris Papademetrious To: Tim Anderson , "pgsql-novice@lists.postgresql.org" Subject: RE: is there a way to automate deduplication of strings? Thread-Topic: is there a way to automate deduplication of strings? Thread-Index: Adx3Kn73z1jJnk45TmCawCiELOofpwDPUwEAABIZFCABXGcwAAAIGiyQ Date: Thu, 8 Jan 2026 02:37:31 +0000 Message-ID: References: <75e0f4dd-cc89-4305-bb8b-4e19c0060ff4@timando.net> In-Reply-To: <75e0f4dd-cc89-4305-bb8b-4e19c0060ff4@timando.net> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM4PR12MB6039:EE_|IA1PR12MB7735:EE_ x-ms-office365-filtering-correlation-id: 1d40f371-2c8a-4f7b-1c95-08de4e5edfc1 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|1800799024|376014|366016|7142099003|13003099007|38070700021; x-microsoft-antispam-message-info: =?utf-8?B?SURJOFNUQXU2VmV2RXEyRVJwVnVDMVZFNlRQWllCdVV4czlrQU80TG5ub3lR?= =?utf-8?B?ZGFUZlVRV0dGend0czdmWUYwRnFMRG96M3kwOXZWeHB2YytadWl2NEFZRVJt?= =?utf-8?B?ejFLUC9pL1d6QjNFMElpWWo3Z0FhU3RsaHY1SmZBRWI4OUd5V1dXVzFoWUp5?= =?utf-8?B?QVVnY1VxU1VaM2krN1ZFTEgwSWRBeU0wUGlIcUtKZUh4Sm5xSWJ4RGFvRjlR?= =?utf-8?B?MmVCQ3dYVXh6dXYxa0FDYllpMjVJV2FXQXZ5bEtoeE9QTm0yTzNXdEI0U3k3?= =?utf-8?B?QmVYWkhaL1pOb3p4bThoRzVMRWhaU01HZjJiZXRFTUk4clYwUDVzR3FpNGJj?= =?utf-8?B?UDBGWFRsbFpTZDZzcjE3T1Ftb0NiOVA2dFRqREt6d2RycXRtMVF6OGl1RVd5?= =?utf-8?B?ZmVZTFRVMnBzT2JEVVZVZ2NMSmdvOUNpNTFVVGhoejE1VU42dDNsMiswZWc2?= =?utf-8?B?VG85WWRwVHdMRlJ0QjcyRGFWUkVKZHN4M296UmlZS3U1ektRbWl2d0Uyc0pp?= =?utf-8?B?RGZIaXkwRjZrM1UycklDUGhSZlZqeEoxcGd2dWtuOE5zU1BPY1ZoTFpjenI2?= =?utf-8?B?WVJrS0hoT1JjTjAydkllSkZ6VWRrRHJUTC9aYTI3cWdEOUdydEJ6RmFsdCty?= =?utf-8?B?djVKVCtVdzcyQ3J1djUyTk0yNklkRUZseUsxUXRSVS80VEQ4OXFzZldzNlBX?= =?utf-8?B?aEtLYW4yOXE3OGNpcEsrOWt5cXA4Y0NRWGVERU5kN0I0THAyZFVKRmlSUk1z?= =?utf-8?B?S3pwNUd0K3ROS1JlbEppMTdqMzRPd1EwUytqQ0lJNlB5RGxWbW9zbUJUS1l3?= =?utf-8?B?L1AxS0JwN0JNU1RBaXc3dnNJZFlyZ3pzQ095YlhaRVBWcWMyTm1WL3pMN3Ay?= =?utf-8?B?cHdSS0p4cXFlcWRWMEJyOWdweG5nU0ZGRmkzYzdYeXBlYmRXZ1pJa21SbW9i?= =?utf-8?B?bzdOUjNlZ3AxbnR4MEU0SXVJaVNweTE4d3Y4NmxvR1RkSm05b1BzLzhXOVJr?= =?utf-8?B?QjhERFBiOXZZMytOWDY3MUNSblVBQjh6TmVlUTJuNWFhQVlUMllqVHJ4dkZ1?= =?utf-8?B?R1Y0aUNsa1BVRmhIVmhCVTFHdkN4Y25nbCtMR3BNZXN0MjFiMGJYTlhNenNR?= =?utf-8?B?MUdRSVlWbzNqWG1uekVRZGpDblFNM3J6SzlFR294MXV3c0RNdDc2VHMrRXds?= =?utf-8?B?aXhjR2g3NlFwNVk2VWpCa3d1cHZydGJrOFZnT044WFd0K3NMdm4weUdtSWxi?= =?utf-8?B?YkNiR2ZJZEpSQmN0MWJsZnhnMGszV3lKUVJXN3JsZTFza09oTTVRRzNvNXJF?= =?utf-8?B?bFZFQ24zcXJnZFZ4WnAzYnZQa3ZlSzVrREp2eENyMGlmMjBQTm5zRlpwVVph?= =?utf-8?B?OXp2YWs5OHVhT2I2MFQrY0xxMFlma2xMbFF0RW44SFZXRVdVUHI4NU1nM2tQ?= =?utf-8?B?VDV2R0gvcjRMQTJBU2ljYmxsRFRsNFRET3d0S1lEcW84bmFvNzFpTmRFQTF1?= =?utf-8?B?RlRKeXhmTTVkSlJ1azRtWjV5NkE3elpZWmV4Sy9mSTdQc2RQTEtLTlVrSWRE?= =?utf-8?B?ZEZFamZlSHl2elhkRUZ2cGN5WWUwNVdMY3JpVXdrR2E0ME9rbVRERENBU1ls?= =?utf-8?B?N0sreEdCNDY2SVFnZmd1bko4WW13OC9WVW9LUmljQzV5R2IzTGN4c3I1dnND?= =?utf-8?B?TjNwakZWbXN0R1ZHMmhlZnd2dDVYVmlZV1FhTG5Da0c4S0dveXF6MHZLVURG?= =?utf-8?B?RnJYREtiRDhNZTRSQjAvNytBY3dGa2FOWFh3dGgwZGNWWmxqNVQ2ZXFTbUQx?= =?utf-8?B?V0JTUDMrVXRnakNCZmNPd2c4ZjFLV3pCMEdrellBOWxseGxDQ3ZTM1d3WDMx?= =?utf-8?B?OXNsVXhkaHF3UWltbnAvMkZhQytZSVZPaDV4Q29iaWV0R2FUZ2NqQVFGeC93?= =?utf-8?Q?WJZRmBNNXubLAvIZxo3yafQ4CVp/++Kz?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR12MB6039.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016)(7142099003)(13003099007)(38070700021);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ZHBNVXo5WVRYOWg5aEJ1RDNBQlpEN0lMakkzZ0x6WTZsMTNSaCswaVlKSmF5?= =?utf-8?B?cmRsTGlFV0NWYTBzdDFGSmgxOTBrR0dLSHRIUDZaNDBOdlk3aFlucFdUa2pU?= =?utf-8?B?K1MxRVcyY0F4T0IxM0Z0aGVjd2RHTTJ4NWErakY3UlMxM0NIbEN4R2JDQkEv?= =?utf-8?B?YmlPZElVNS9CYjRVRFdFNTVqckxXNDdRaDlOVDBrcjJFc2xNWmcveE4yMzNq?= =?utf-8?B?T1gwL3RpV2xzTktQOERpTUVISHQ5MXlnSU5Db3hKN0c3YUhwME1qT3p1VlBq?= =?utf-8?B?dzdlT3NyVWZrOHNnaWtzL1Zld1ZyWndnVWZhTm5kK1lBUVVIRlRyUytQbkg0?= =?utf-8?B?VWZKL3U2QVVOdlhNcisrTEMzTmlpL1QvYVlOSm1HZ0sxREtzY3M5VmpDeU0y?= =?utf-8?B?VmxVangxeXBzamd2MjJRc0hiS2pQdG1XRThlVFlNeEVEY2hVRlZXTFlZUkJP?= =?utf-8?B?ODQzVStDaGN3T3RqYktvVDB1VzZybzR1TEpSQXA3N1o3c0ZJbk50d1UwS0R3?= =?utf-8?B?b0ZsU2VuR0VFM0pma29tSm9tWWRjclUxaW5qTFRicFZtM1owbjJmckV3eXZE?= =?utf-8?B?d2U5ck5HNlU2eG1EUEEwSlNwN1dBVzlFYktkOW1pQS95cGlWTHhGR3RwTGFI?= =?utf-8?B?NzdSdllSdE5jWjVlbjJxSTBuc0hJN1BsMmhRUUxtMGpackdtam1XRTlNR2ZT?= =?utf-8?B?eG54UXFFdWl3UDZmSEtWUDFIYUtnMnlVbVJjaVF5VzlvQmltbm9XZEp6QVVY?= =?utf-8?B?R2NCS2JZbDFLN3NkMnkrdStCck1FTnd4ekF2YXJwMDNCYUlIOHpwOWdFeHFq?= =?utf-8?B?RkZCQjErZ09VcVMyR2FIN3ppUm1nRUQwS0pqRVJRcFovZVR0TUQ3dXRickZE?= =?utf-8?B?bVhHQlFURUZHdFl5OFowbVk3L1Z4ZWFROUJxc0pVQS9VMVQ5c3VkVTk5R29q?= =?utf-8?B?cDlLNG5tTThrVmNVNEQyTTAwVHdLYmlRTmh5aFFtcUFHR05qVkdMbHNzcGJa?= =?utf-8?B?YkJGaTN0aE1XL21RUjZhd29UOCtHb1JTUXlKeVI0R3Nmckw2eEdaNTlvRlpn?= =?utf-8?B?Y0N6T1BxL0hJSTV5RTQzR2svRnFrejRqb1BOTU16L0ljcWpjSVh4Tkt0T3E4?= =?utf-8?B?WEpnZG9VVGc4b3Qzb0o5blczUDlwc2hXL3pyVHRLY0NKV0M1UWkzQW9vTnNq?= =?utf-8?B?R0k3OVprZjk0OHcya3U3VkRjNW5uL1R5MVdRYXp5ZUdiNGNtYm1jT21yOEJT?= =?utf-8?B?eFg5T3doTmNsRWtVRHN2SVdER093WWZBcVJlRTJzWmMxdFduOGJaS0JTSW8z?= =?utf-8?B?b3BoR2l4V3BaclFrVEwwUGNDaG8vQVlHaVZjR0NxMksvd3hhL2hWbStFRk02?= =?utf-8?B?Y3NCeXZuTVpoWTlPVGlPTEhqVFRqaGlXL2tUNzhXMXBSZ2RlRU9pTk5pU3BW?= =?utf-8?B?ZUdVWm9xQkk3Q29zL04yMW9wZDhoaUdsM0JiYVAvenlxMmpJSUcwbXhRbEs0?= =?utf-8?B?K1J4NC9iQ2I3a2lvKyt3S1ZnVHlXTW1rZ1hydnFFNEEwdWM4TnRPend1SWs1?= =?utf-8?B?QnNzWTV5N1gyUGg4V1RQWVBITVRFc1NqOWk2My9wb25FclNENitteUhDY2Qr?= =?utf-8?B?WEtNcGprQmg1RXphZGYyTE9UZzRTR1dmc01rSldyRy9FSkZ5YkpqcEFWdWpa?= =?utf-8?B?UFljWDBZN2dOUXIrZGdqaDVRSnlZdmRhbkJsVGphRDdyeXFiM2ZJbHJuZ3Bo?= =?utf-8?B?S0YzMzA2Z3pMNmhTREFUOHZ5UkdzRWYzZVUwZnl3aExsN3luaW0xSkEwTlZp?= =?utf-8?B?OVJRc2pGVi9SZHNXYnlKVjkyVDY3a2kwSnl5VXNyZlFIaTkyM2dZanJYZGxw?= =?utf-8?B?RVhlN3g3UTdDQUZIK2VOakRHR0p1K3FlVmlDZzkwZW9ieDJiNk40MkJOVTBI?= =?utf-8?B?cG5odHlsQWVRSHllN1p2SzIwWmhlalB0R3cvTGVFR2FsN0RZVDROL2pmTkxQ?= =?utf-8?B?bi90QjZIejhSTWZodUNNU2xCSE1HREQzZk1Ob0xpTVpJcHliZXpra0JhbUFC?= =?utf-8?B?eDRibE9zU2ZGQjM2d0hHbCtRT1JGek9wcVZIcGdnN21MRVo0c0VoQ09JYlhV?= =?utf-8?B?ZzhyVEs5aGVPaHQrNFFkNmtDeDRUUUN6MWlVcDl3a3RIV0Y5TkhxNUUwUUh6?= =?utf-8?B?V1BGUEdydzUyaGgvdURabW5lOXo5ZUFwZUN3MWJoYUZWU0hsaFdtaEtPZmxl?= =?utf-8?B?VHlaYnQzM3AxNkZnOGIyZTBENmNnVjdvUTVkdTcwVGN3RXFvUlcva3gxTURt?= =?utf-8?Q?gBrKmIBclNbDeFj/Vc?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: V9zhyxX9YmTF4U3UImE8UvLQGDWBo2D4EwEoGuy2Rk8qVOMEuJgha47P7e0Y7e4mMXJW4M0fvVzpdmEW+/FGV+au2anu23UBBS75+AhZwy9vnQk2zgkwEXZb2CNBuTtk6dCeAZ9U6K+bxzUbInz2PQ1mrKkKaCw9eQDj10Q+86z/hmP4sT7OF9iW8tMWp1MG9o1MMhRAWZ39y3XBxJFFSOo0sEtZ0JFZE2g/iJ3LBN6VW08HUKxCM5Q2lWlUOofcoPgptmxJIIiAsvsLmUxEHKC5Az6meBu8Oy/kv09ZrXfA6QM7F7mttPJJRwhuYyKu38XBGmtEeDxgNIG9w8G95hFRborcFaN/x6j/aHHBxnjjqErKvnDYLCKuBs6UvNplIap+AVJNhW8apfPlDo1GjFN7hGSPSVOXh77f3DdJ+Ok3aBnXlC3skLQhhtwCTJ/oQMkAb/dijvWzg1paBlazjNabg8xSY04V63cU3a6GS4VjF7mtxgxkHC2VocUfo+2wv7/47Buq3p1ZREgRowBmm2sX/xiPThOYafIB6NO9ZlFafE1ytp0Hg22lGuKV+CX3IWjkkVLrVfe2/wsVKaZTvZcvoahqh+jF4eiYJWCNVVuGWlLW7opeKrmD0xVPCMzWgrhVtVccbsgGdf3Zr9eiNQ== X-OriginatorOrg: synopsys.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR12MB6039.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1d40f371-2c8a-4f7b-1c95-08de4e5edfc1 X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Jan 2026 02:37:32.0563 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: c33c9f88-1eb7-4099-9700-16013fd9e8aa X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: KBotZFXCAumMIlbieT6l4mFZTkH6jnvldNH2ZYIsJT0K0HH8mCUyC4YD+tFGErLmHlCGOara9XtgsBpH/GBS2w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB7735 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTA4MDAxNyBTYWx0ZWRfX0f6q19erLOaq GRbqO3ymkgNEq9LEBpm0dCs073YuG+QKlX7uKTYT5/jCFDnha4L7JMMMro+ycoM+ly46nGP3p6+ 7uQbp/BkJmVOnx8WapB0EVuksxHQFVyJ3ljdNMgFYdVeVDhJESRwPL/bfWCSRKaN+ZNeH8ncgbH XJvXoRxxljEkH+YJdUYiXEYKBhZB5McVr058/8P64/iX0Dy+uM8gOoP5xXreQbTHu3Qx8Gv4Bzq bQLjnUkqE9hT6O/9XgiOXlG4ZR/36gcgoWAwBzM3HXsT4QVgzssH8H4FstNpgm37tog39+UNUji 9DKmUP1OpDXN6ShcVTGPJ92spZjhWA4NGprNs12I0JLZHD+Ui8LBxbRfEenF/g/+eefLA1oLdLr VjTVNYnW714XTN+7TDDAv7aaco7CAVbxn+qL6uTBSlVFCk9P2cTTw6HZ2+xG/LK7796kWvHWxgG 49hDH0wO/ZR1pZp8eEQ== X-Authority-Analysis: v=2.4 cv=fbugCkQF c=1 sm=1 tr=0 ts=695f1871 cx=c_pps a=8EbXvwLXkpGsT4ql/pYRAw==:117 a=8EbXvwLXkpGsT4ql/pYRAw==:17 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=oQEy6hCXCQoyTD7K:21 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=qPHU084jO2kA:10 a=VkNPw1HP01LnGYTKEx00:22 a=uherdBYGAAAA:8 a=z_41d04NAAAA:8 a=epTmVMiNAAAA:8 a=pGLkceISAAAA:8 a=jIQo8A4GAAAA:8 a=RJ2leOGzEtNRm2J3QyYA:9 a=QEXdDO2ut3YA:10 a=8unKNi5afGVod7WLQPLi:22 X-Proofpoint-GUID: 3LICLKJho5LkE7AtgfTzz5a5zh0Vxm7x X-Proofpoint-ORIG-GUID: 3LICLKJho5LkE7AtgfTzz5a5zh0Vxm7x X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-07_05,2026-01-07_03,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_active_cloned_notspam policy=outbound_active_cloned score=0 impostorscore=0 suspectscore=0 spamscore=0 lowpriorityscore=0 clxscore=1011 priorityscore=1501 adultscore=0 phishscore=0 bulkscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601080017 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk SGkgVGltLA0KDQpUaGF0IHdhcyBteSBvcmlnaW5hbCBwbGFuLiBUaGUgMTYgYnl0ZXMgZm9yIGEg VVVJRCBpcyBmaW5lIC0gdGhlIHN0cmluZ3MgYXJlIG11Y2ggbG9uZ2VyIHNvIGl0J3Mgc3RpbGwg YSB3aW4uIEJ1dCBJJ20gZGVjaWRpbmcgd2hldGhlciB0aGUgdHJhbnNhY3Rpb25hbCBjb21wbGV4 aXR5IGlzIHdvcnRoIHRoZSBzcGFjZSBzYXZpbmdzLg0KDQpJZiB0aGVyZSB3YXMgc29tZSBtb3Jl IGF1dG9tYXRlZCB3YXkgb2YgZG9pbmcgdGhpcyBzdG9yZS12YWx1ZXMtaW5kaXJlY3RlZC1ieS10 aGVpci1oYXNoIHN0dWZmIChhIFBvc3RncmVzIGZlYXR1cmUgSSBkaWRuJ3Qga25vdyBhYm91dCBv ciBhbiBleHRlbnNpb24gdGhhdCBkb2VzIGl0IGF1dG9tYXRpY2FsbHkpLCBpdCB3b3VsZCBtYWtl IHRoZSBkZWNpc2lvbiBlYXNpZXIuDQoNCiAtIENocmlzDQoNCg0KLS0tLS1PcmlnaW5hbCBNZXNz YWdlLS0tLS0NCkZyb206IFRpbSBBbmRlcnNvbiA8cG9zdGdyZXNxbEB0aW1hbmRvLm5ldD4gDQpT ZW50OiBXZWRuZXNkYXksIEphbnVhcnkgNywgMjAyNiA1OjA2IFBNDQpUbzogcGdzcWwtbm92aWNl QGxpc3RzLnBvc3RncmVzcWwub3JnDQpTdWJqZWN0OiBSZTogaXMgdGhlcmUgYSB3YXkgdG8gYXV0 b21hdGUgZGVkdXBsaWNhdGlvbiBvZiBzdHJpbmdzPw0KDQpPbmUgdGhpbmcgeW91IGNvdWxkIGRv IGlmIHlvdSdyZSBPSyB3aXRoIHRoZSBzcGFjZSBvdmVyaGVhZCBvZiB1dWlkIHZzIGludCwgaXMg dXNlIGEgaGFzaCBvZiB0aGUgdXNlciBhZ2VudCBlLmcuIGBtZDUodXNlcl9hZ2VudCk6OnV1aWRg IHdoaWNoIHdvdWxkIHJlZHVjZSB0aGUgbmVlZCB0byBsb29rdXAgdGhlIHZhbHVlIHdoZW4gaW5z ZXJ0aW5nLiBUaGVuIHdoZW4geW91IGdldCBhIGZvcmVpZ24ga2V5IHZpb2xhdGlvbiwgYWRkIHRo ZSB1c2VyIGFnZW50IHRvIHRoZSB1c2VyX2FnZW50IHRhYmxlLg0KDQpPbiAxLzEvMjYgMTA6MjUs IENocmlzIFBhcGFkZW1ldHJpb3VzIHdyb3RlOg0KPg0KPiBIaSBHcmVnLA0KPg0KPiBUaGFua3Mg Zm9yIHRoZSByZXBseSEgSSB0cmllZCB0byBiZSB2YWd1ZSB0byBhdm9pZCBnZXR0aW5nIGRpc3Ry YWN0ZWQgDQo+IGJ5IHRoZSBkZXRhaWxzLCBidXQgSSB0aGluayBJIG92ZXJkaWQgaXQhDQo+DQo+ IExldOKAmXMgc2F5IEkgaGF2ZSBhIHRhYmxlIG9mIHRyYW5zYWN0aW9ucyBsaWtlIHRoaXM6DQo+ DQo+IENSRUFURSBUQUJMRSB0cmFuc2FjdGlvbiAoDQo+DQo+IMKgwqDCoCBpZCBVVUlEIFBSSU1B UlkgS0VZIERFRkFVTFQgZ2VuX3JhbmRvbV91dWlkKCksDQo+DQo+IMKgwqDCoCB1c2VyX2FnZW50 IFRFWFQgTk9UIE5VTEwsDQo+DQo+IMKgwqDCoCAtLQ0KPg0KPiDCoMKgwqAgLS0gLi4ubW9yZSBj b2x1bW5zIGhlcmUuLi4NCj4NCj4gwqDCoMKgIC0tDQo+DQo+ICk7DQo+DQo+IFRoZSB0YWJsZSBj YW4gY29udGFpbiBtaWxsaW9ucyBvZiB0cmFuc2FjdGlvbnMuIFRoZSAqdXNlcl9hZ2VudCpmaWVs ZCANCj4gc3RvcmVzIGluZm9ybWF0aW9uIGFib3V0IHRoZSBhcHBsaWNhdGlvbiB0aGF0IHBlcmZv cm1lZCBlYWNoIA0KPiB0cmFuc2FjdGlvbi4gVGhlc2UgdXNlci1hZ2VudCB2YWx1ZXMgd2lsbCBi ZSBwb3B1bGF0ZWQgZnJvbSBhIA0KPiByZWxhdGl2ZWx5IHNtYWxsIHNldCBvZiB1bmlxdWUgdmFs dWVzLiBGb3IgZXhhbXBsZSwNCj4NCj4gTXlGaWN0aXRpb3VzQXBwLzEuMCAoTGludXg7IHg4Nl82 NDsgVWJ1bnR1IDIyLjA0LjMgTFRTKSBEZXNrdG9wIA0KPiAoQnVpbGRJRCAwMDAwMDAwMC0wMDAw LTAwMDAtMDAwMC0wMDAwMDAwMDAwMDApDQo+DQo+IE15RmljdGl0aW91c0FwcC8xLjAgKExpbnV4 OyB4ODZfNjQ7IFVidW50dSAyMi4wNC4zIExUUykgTW9iaWxlIA0KPiAoQnVpbGRJRCAwMDAwMDAw MC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDApDQo+DQo+IE15RmljdGl0aW91c0FwcC8xLjAg KFdpbmRvd3MgMTEgMjVIMikgRGVza3RvcCAoQnVpbGRJRA0KPiAwMDAwMDAwMC0wMDAwLTAwMDAt MDAwMC0wMDAwMDAwMDAwMDApDQo+DQo+IE15RmljdGl0aW91c0FwcC8xLjAgKFdpbmRvd3MgMTEg MjVIMikgTW9iaWxlIChCdWlsZElEDQo+IDAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAw MDAwMCkNCj4NCj4gTXlGaWN0aXRpb3VzQXBwLzEuMSAoTGludXg7IHg4Nl82NDsgVWJ1bnR1IDIy LjA0LjMgTFRTKSBEZXNrdG9wIA0KPiAoQnVpbGRJRCAxMTExMTExMS0xMTExLTExMTEtMTExMS0x MTExMTExMTExMTEpDQo+DQo+IE15RmljdGl0aW91c0FwcC8xLjEgKExpbnV4OyB4ODZfNjQ7IFVi dW50dSAyMi4wNC4zIExUUykgTW9iaWxlIA0KPiAoQnVpbGRJRCAxMTExMTExMS0xMTExLTExMTEt MTExMS0xMTExMTExMTExMTEpDQo+DQo+IE15RmljdGl0aW91c0FwcC8xLjEgKFdpbmRvd3MgMTEg MjVIMikgRGVza3RvcCAoQnVpbGRJRA0KPiAxMTExMTExMS0xMTExLTExMTEtMTExMS0xMTExMTEx MTExMTEpDQo+DQo+IE15RmljdGl0aW91c0FwcC8xLjEgKFdpbmRvd3MgMTEgMjVIMikgTW9iaWxl IChCdWlsZElEDQo+IDExMTExMTExLTExMTEtMTExMS0xMTExLTExMTExMTExMTExMSkNCj4NCj4g VGhlIHZhbHVlcyB0aGVtc2VsdmVzIHdpbGwgdmFyeSBvdmVyIHRpbWUgKGFzIG5ldyB2ZXJzaW9u cyBhcHBlYXIgYW5kIA0KPiBvbGQgdmVyc2lvbnMgYWdlIG91dCkgc28gdGhlIHNldCBjYW5ub3Qg YmUgaGFyZGNvZGVkLCBidXQgdGhlIGNvbHVtbiANCj4gd2lsbCBhbHdheXMgY29udGFpbiBsYXJn ZSBudW1iZXJzIG9mIGR1cGxpY2F0ZSB2YWx1ZXMuDQo+DQo+IEkgY291bGQgc3RvcmUgdGhlIHVz ZXItYWdlbnQgdmFsdWVzIGluIGEgc2VwYXJhdGUgdGFibGUgYW5kIHJlZmVyZW5jZSANCj4gdGhl bSBieSBhIFVVSUQgY29tcHV0ZWQgZnJvbSB0aGVpciB2YWx1ZToNCj4NCj4gQ1JFQVRFIFRBQkxF IHVzZXJfYWdlbnQgKA0KPg0KPiDCoMKgwqAgaWQgVVVJRCBQUklNQVJZIEtFWSBERUZBVUxUIGdl bl9yYW5kb21fdXVpZCgpLA0KPg0KPiDCoMKgwqAgdXNlcl9hZ2VudCBURVhUIE5PVCBOVUxMIFVO SVFVRSwNCj4NCj4gKTsNCj4NCj4gQ1JFQVRFIFRBQkxFIHRyYW5zYWN0aW9uICgNCj4NCj4gwqDC oMKgIGlkIFVVSUQgUFJJTUFSWSBLRVkgREVGQVVMVCBnZW5fcmFuZG9tX3V1aWQoKSwNCj4NCj4g dXNlcl9hZ2VudF9pZCBVVUlEIE5PVCBOVUxMLA0KPg0KPiDCoMKgwqAgQ09OU1RSQUlOVCBma191 c2VyX2FnZW50IEZPUkVJR04gS0VZICh1c2VyX2FnZW50X2lkKSBSRUZFUkVOQ0VTDQo+IHVzZXJf YWdlbnQoaWQpIE9OIERFTEVURSBDQVNDQURFDQo+DQo+ICk7DQo+DQo+IGJ1dCB0aGlzIGFkZHMg dHJhbnNhY3Rpb25hbCBjb21wbGV4aXR5IGZvciBzdG9yYWdlIGFuZCByZXRyaWV2YWwsIA0KPiBh bG9uZyB3aXRoIGNsZWFudXAgb2Ygbm8tbG9uZ2VyLXJlZmVyZW5jZWQgdmFsdWVzIG92ZXIgdGlt ZS4NCj4NCj4gSeKAmW0gd2lzaGluZyBmb3IgYSBtYWdpYyDigJxzcGFyc2VseSBzdG9yZWQgdGV4 dHPigJ0gY29sdW1uIGluIFBvc3RncmVzIA0KPiB0aGF0IHBlcmZvcm1zIHRoaXMgZGVkdXBsaWNh dGlvbiBhdXRvbWF0aWNhbGx5LCBidXQgSSBkb27igJl0IHRoaW5rIGl0IA0KPiBleGlzdHMuIFNv IEnigJltIHdvbmRlcmluZywgaXMgdGhlcmUgYW4gZXh0ZW5zaW9uIG9yIHNvbWUgb3RoZXIgdHJp Y2sgdG8gDQo+IGdldCB0aGUgc3BhY2Ugc2F2aW5ncyB3aXRob3V0IHRoZSB0cmFuc2FjdGlvbmFs IGNvbXBsZXhpdHk/DQo+DQo+ICAgKiBDaHJpcw0KPg0KPiAqRnJvbToqR3JlZyBTYWJpbm8gTXVs bGFuZSA8aHRhbWZpZHNAZ21haWwuY29tPg0KPiAqU2VudDoqIFdlZG5lc2RheSwgRGVjZW1iZXIg MzEsIDIwMjUgMTA6MTIgQU0NCj4gKlRvOiogQ2hyaXMgUGFwYWRlbWV0cmlvdXMgPGNocmlzcHlA c3lub3BzeXMuY29tPg0KPiAqQ2M6KiBwZ3NxbC1ub3ZpY2VAbGlzdHMucG9zdGdyZXNxbC5vcmcN Cj4gKlN1YmplY3Q6KiBSZTogaXMgdGhlcmUgYSB3YXkgdG8gYXV0b21hdGUgZGVkdXBsaWNhdGlv biBvZiBzdHJpbmdzPw0KPg0KPiBJdCBpcyBub3QgcXVpdGUgY2xlYXIgd2hhdCB5b3UgYXJlIHRy eWluZyB0byBkby4gQ2FuIHlvdSBwcm92aWRlIGEgDQo+IHNtYWxsIHRlc3QgdGFibGUgdG8gc2hv dyB3aGF0IHlvdSB3YW50IHRvIGFjaGlldmU/DQo+DQo+IENoZWVycywNCj4NCj4gR3JlZw0KPg0K PiAtLQ0KPg0KPiBDcnVuY2h5IERhdGEgLSANCj4gaHR0cHM6Ly91cmxkZWZlbnNlLmNvbS92My9f X2h0dHBzOi8vd3d3LmNydW5jaHlkYXRhLmNvbV9fOyEhQTRGMlI5R19wZw0KPiAhZDhzNXROaEZI Q1lxZHZ1eENXUG5fdnBlcjNfR19XMFk1SFFNY3RObTE1aEtab1ZzNVZwUlA3OFdLVFFqZENsOHJU WXJ6DQo+IEpRNThEcl9RSktBQzNvMEJnJCANCj4gPGh0dHBzOi8vdXJsZGVmZW5zZS5jb20vdjMv X19odHRwczovd3d3LmNydW5jaHlkYXRhLmNvbV9fOyEhQTRGMlI5R19wZw0KPiAhZGtXaEVjem5w OGwxdG9FTnVKc0RnWTFHQUJXcVlMV1pCSG5jWHRxaUNhWmd1THprTjBVMC0zSkJITENtN3dFOGdO MEw0DQo+IFpJd3lYcU01cEdOTElzN09SVlRGaDdLbkpJJD4NCj4NCj4gRW50ZXJwcmlzZSBQb3N0 Z3JlcyBTb2Z0d2FyZSBQcm9kdWN0cyAmIFRlY2ggU3VwcG9ydA0KPg0KDQoNCg==