Browse Source

update package and project files

Ugochukwu Mmaduekwe 6 years ago
parent
commit
c30078fd64

+ 28 - 35
CryptoLib.Samples/Delphi.Samples/UsageSamples.dpr

@@ -32,7 +32,6 @@ uses
   ClpAsymmetricCipherKeyPair in '..\..\CryptoLib\src\Crypto\ClpAsymmetricCipherKeyPair.pas',
   ClpAsymmetricCipherKeyPair in '..\..\CryptoLib\src\Crypto\ClpAsymmetricCipherKeyPair.pas',
   ClpAsymmetricKeyParameter in '..\..\CryptoLib\src\Crypto\ClpAsymmetricKeyParameter.pas',
   ClpAsymmetricKeyParameter in '..\..\CryptoLib\src\Crypto\ClpAsymmetricKeyParameter.pas',
   ClpKeyGenerationParameters in '..\..\CryptoLib\src\Crypto\ClpKeyGenerationParameters.pas',
   ClpKeyGenerationParameters in '..\..\CryptoLib\src\Crypto\ClpKeyGenerationParameters.pas',
-  ClpIAbstractECMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIAbstractECMultiplier.pas',
   ClpIAsymmetricCipherKeyPair in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricCipherKeyPair.pas',
   ClpIAsymmetricCipherKeyPair in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricCipherKeyPair.pas',
   ClpIAsymmetricCipherKeyPairGenerator in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricCipherKeyPairGenerator.pas',
   ClpIAsymmetricCipherKeyPairGenerator in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricCipherKeyPairGenerator.pas',
   ClpIAsymmetricKeyParameter in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricKeyParameter.pas',
   ClpIAsymmetricKeyParameter in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricKeyParameter.pas',
@@ -48,7 +47,6 @@ uses
   ClpIECPublicKeyParameters in '..\..\CryptoLib\src\Interfaces\ClpIECPublicKeyParameters.pas',
   ClpIECPublicKeyParameters in '..\..\CryptoLib\src\Interfaces\ClpIECPublicKeyParameters.pas',
   ClpIExtensionField in '..\..\CryptoLib\src\Interfaces\ClpIExtensionField.pas',
   ClpIExtensionField in '..\..\CryptoLib\src\Interfaces\ClpIExtensionField.pas',
   ClpIFiniteField in '..\..\CryptoLib\src\Interfaces\ClpIFiniteField.pas',
   ClpIFiniteField in '..\..\CryptoLib\src\Interfaces\ClpIFiniteField.pas',
-  ClpIFixedPointCombMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIFixedPointCombMultiplier.pas',
   ClpIFixedPointPreCompInfo in '..\..\CryptoLib\src\Interfaces\ClpIFixedPointPreCompInfo.pas',
   ClpIFixedPointPreCompInfo in '..\..\CryptoLib\src\Interfaces\ClpIFixedPointPreCompInfo.pas',
   ClpIGlvEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvEndomorphism.pas',
   ClpIGlvEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvEndomorphism.pas',
   ClpIGlvTypeBEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeBEndomorphism.pas',
   ClpIGlvTypeBEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeBEndomorphism.pas',
@@ -69,8 +67,6 @@ uses
   ClpIX9ECParametersHolder in '..\..\CryptoLib\src\Interfaces\ClpIX9ECParametersHolder.pas',
   ClpIX9ECParametersHolder in '..\..\CryptoLib\src\Interfaces\ClpIX9ECParametersHolder.pas',
   ClpGlvTypeBEndomorphism in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeBEndomorphism.pas',
   ClpGlvTypeBEndomorphism in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeBEndomorphism.pas',
   ClpGlvTypeBParameters in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeBParameters.pas',
   ClpGlvTypeBParameters in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeBParameters.pas',
-  ClpAbstractECMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpAbstractECMultiplier.pas',
-  ClpFixedPointCombMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpFixedPointCombMultiplier.pas',
   ClpFixedPointPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpFixedPointPreCompInfo.pas',
   ClpFixedPointPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpFixedPointPreCompInfo.pas',
   ClpWNafPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWNafPreCompInfo.pas',
   ClpWNafPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWNafPreCompInfo.pas',
   ClpECAlgorithms in '..\..\CryptoLib\src\Math\EC\ClpECAlgorithms.pas',
   ClpECAlgorithms in '..\..\CryptoLib\src\Math\EC\ClpECAlgorithms.pas',
@@ -106,14 +102,8 @@ uses
   ClpIZTauElement in '..\..\CryptoLib\src\Interfaces\ClpIZTauElement.pas',
   ClpIZTauElement in '..\..\CryptoLib\src\Interfaces\ClpIZTauElement.pas',
   ClpSimpleBigDecimal in '..\..\CryptoLib\src\Math\EC\Abc\ClpSimpleBigDecimal.pas',
   ClpSimpleBigDecimal in '..\..\CryptoLib\src\Math\EC\Abc\ClpSimpleBigDecimal.pas',
   ClpTnaf in '..\..\CryptoLib\src\Math\EC\Abc\ClpTnaf.pas',
   ClpTnaf in '..\..\CryptoLib\src\Math\EC\Abc\ClpTnaf.pas',
-  ClpGlvMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpGlvMultiplier.pas',
-  ClpIGlvMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIGlvMultiplier.pas',
-  ClpWTauNafMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWTauNafMultiplier.pas',
-  ClpIWTauNafMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIWTauNafMultiplier.pas',
   ClpWTauNafPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWTauNafPreCompInfo.pas',
   ClpWTauNafPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWTauNafPreCompInfo.pas',
   ClpIWTauNafPreCompInfo in '..\..\CryptoLib\src\Interfaces\ClpIWTauNafPreCompInfo.pas',
   ClpIWTauNafPreCompInfo in '..\..\CryptoLib\src\Interfaces\ClpIWTauNafPreCompInfo.pas',
-  ClpWNafL2RMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWNafL2RMultiplier.pas',
-  ClpIWNafL2RMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIWNafL2RMultiplier.pas',
   ClpGF2Polynomial in '..\..\CryptoLib\src\Math\Field\ClpGF2Polynomial.pas',
   ClpGF2Polynomial in '..\..\CryptoLib\src\Math\Field\ClpGF2Polynomial.pas',
   ClpIGF2Polynomial in '..\..\CryptoLib\src\Interfaces\ClpIGF2Polynomial.pas',
   ClpIGF2Polynomial in '..\..\CryptoLib\src\Interfaces\ClpIGF2Polynomial.pas',
   ClpGenericPolynomialExtensionField in '..\..\CryptoLib\src\Math\Field\ClpGenericPolynomialExtensionField.pas',
   ClpGenericPolynomialExtensionField in '..\..\CryptoLib\src\Math\Field\ClpGenericPolynomialExtensionField.pas',
@@ -343,35 +333,35 @@ uses
   ClpArgon2ParametersGenerator in '..\..\CryptoLib\src\Crypto\Generators\ClpArgon2ParametersGenerator.pas',
   ClpArgon2ParametersGenerator in '..\..\CryptoLib\src\Crypto\Generators\ClpArgon2ParametersGenerator.pas',
   ClpScryptParametersGenerator in '..\..\CryptoLib\src\Crypto\Generators\ClpScryptParametersGenerator.pas',
   ClpScryptParametersGenerator in '..\..\CryptoLib\src\Crypto\Generators\ClpScryptParametersGenerator.pas',
   ClpIScryptParametersGenerator in '..\..\CryptoLib\src\Interfaces\ClpIScryptParametersGenerator.pas',
   ClpIScryptParametersGenerator in '..\..\CryptoLib\src\Interfaces\ClpIScryptParametersGenerator.pas',
-  ClpDHDomainParameters in '..\..\CryptoLib\src\Asn1\X9\ClpDHDomainParameters.pas',
-  ClpDHValidationParams in '..\..\CryptoLib\src\Asn1\X9\ClpDHValidationParams.pas',
-  ClpDHAgreement in '..\..\CryptoLib\src\Crypto\Agreement\ClpDHAgreement.pas',
-  ClpDHBasicAgreement in '..\..\CryptoLib\src\Crypto\Agreement\ClpDHBasicAgreement.pas',
-  ClpDHBasicKeyPairGenerator in '..\..\CryptoLib\src\Crypto\Generators\ClpDHBasicKeyPairGenerator.pas',
-  ClpDHKeyPairGenerator in '..\..\CryptoLib\src\Crypto\Generators\ClpDHKeyPairGenerator.pas',
-  ClpDHParametersGenerator in '..\..\CryptoLib\src\Crypto\Generators\ClpDHParametersGenerator.pas',
-  ClpDHKeyGeneratorHelper in '..\..\CryptoLib\src\Crypto\Generators\ClpDHKeyGeneratorHelper.pas',
   ClpDHParametersHelper in '..\..\CryptoLib\src\Crypto\Generators\ClpDHParametersHelper.pas',
   ClpDHParametersHelper in '..\..\CryptoLib\src\Crypto\Generators\ClpDHParametersHelper.pas',
-  ClpDHPrivateKeyParameters in '..\..\CryptoLib\src\Crypto\Parameters\ClpDHPrivateKeyParameters.pas',
-  ClpDHPublicKeyParameters in '..\..\CryptoLib\src\Crypto\Parameters\ClpDHPublicKeyParameters.pas',
-  ClpDHKeyGenerationParameters in '..\..\CryptoLib\src\Crypto\Parameters\ClpDHKeyGenerationParameters.pas',
-  ClpDHKeyParameters in '..\..\CryptoLib\src\Crypto\Parameters\ClpDHKeyParameters.pas',
-  ClpDHValidationParameters in '..\..\CryptoLib\src\Crypto\Parameters\ClpDHValidationParameters.pas',
+  ClpDHValidationParams in '..\..\CryptoLib\src\Asn1\X9\ClpDHValidationParams.pas',
+  ClpIDHValidationParams in '..\..\CryptoLib\src\Interfaces\ClpIDHValidationParams.pas',
+  ClpDHDomainParameters in '..\..\CryptoLib\src\Asn1\X9\ClpDHDomainParameters.pas',
+  ClpIDHDomainParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHDomainParameters.pas',
   ClpDHParameters in '..\..\CryptoLib\src\Crypto\Parameters\ClpDHParameters.pas',
   ClpDHParameters in '..\..\CryptoLib\src\Crypto\Parameters\ClpDHParameters.pas',
-  ClpIDHAgreement in '..\..\CryptoLib\src\Interfaces\ClpIDHAgreement.pas',
-  ClpIDHBasicAgreement in '..\..\CryptoLib\src\Interfaces\ClpIDHBasicAgreement.pas',
-  ClpIDHBasicKeyPairGenerator in '..\..\CryptoLib\src\Interfaces\ClpIDHBasicKeyPairGenerator.pas',
-  ClpIDHKeyPairGenerator in '..\..\CryptoLib\src\Interfaces\ClpIDHKeyPairGenerator.pas',
-  ClpIDHPrivateKeyParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHPrivateKeyParameters.pas',
-  ClpIDHPublicKeyParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHPublicKeyParameters.pas',
-  ClpIDHParametersGenerator in '..\..\CryptoLib\src\Interfaces\ClpIDHParametersGenerator.pas',
-  ClpIDHKeyGenerationParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHKeyGenerationParameters.pas',
   ClpIDHParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHParameters.pas',
   ClpIDHParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHParameters.pas',
-  ClpIDHKeyGeneratorHelper in '..\..\CryptoLib\src\Interfaces\ClpIDHKeyGeneratorHelper.pas',
-  ClpIDHKeyParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHKeyParameters.pas',
+  ClpDHValidationParameters in '..\..\CryptoLib\src\Crypto\Parameters\ClpDHValidationParameters.pas',
   ClpIDHValidationParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHValidationParameters.pas',
   ClpIDHValidationParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHValidationParameters.pas',
-  ClpIDHDomainParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHDomainParameters.pas',
-  ClpIDHValidationParams in '..\..\CryptoLib\src\Interfaces\ClpIDHValidationParams.pas',
+  ClpDHKeyParameters in '..\..\CryptoLib\src\Crypto\Parameters\ClpDHKeyParameters.pas',
+  ClpIDHKeyParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHKeyParameters.pas',
+  ClpDHKeyGeneratorHelper in '..\..\CryptoLib\src\Crypto\Generators\ClpDHKeyGeneratorHelper.pas',
+  ClpIDHKeyGeneratorHelper in '..\..\CryptoLib\src\Interfaces\ClpIDHKeyGeneratorHelper.pas',
+  ClpDHKeyGenerationParameters in '..\..\CryptoLib\src\Crypto\Parameters\ClpDHKeyGenerationParameters.pas',
+  ClpIDHKeyGenerationParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHKeyGenerationParameters.pas',
+  ClpDHParametersGenerator in '..\..\CryptoLib\src\Crypto\Generators\ClpDHParametersGenerator.pas',
+  ClpIDHParametersGenerator in '..\..\CryptoLib\src\Interfaces\ClpIDHParametersGenerator.pas',
+  ClpDHPublicKeyParameters in '..\..\CryptoLib\src\Crypto\Parameters\ClpDHPublicKeyParameters.pas',
+  ClpIDHPublicKeyParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHPublicKeyParameters.pas',
+  ClpDHPrivateKeyParameters in '..\..\CryptoLib\src\Crypto\Parameters\ClpDHPrivateKeyParameters.pas',
+  ClpIDHPrivateKeyParameters in '..\..\CryptoLib\src\Interfaces\ClpIDHPrivateKeyParameters.pas',
+  ClpDHKeyPairGenerator in '..\..\CryptoLib\src\Crypto\Generators\ClpDHKeyPairGenerator.pas',
+  ClpIDHKeyPairGenerator in '..\..\CryptoLib\src\Interfaces\ClpIDHKeyPairGenerator.pas',
+  ClpIDHBasicKeyPairGenerator in '..\..\CryptoLib\src\Interfaces\ClpIDHBasicKeyPairGenerator.pas',
+  ClpDHBasicKeyPairGenerator in '..\..\CryptoLib\src\Crypto\Generators\ClpDHBasicKeyPairGenerator.pas',
+  ClpIDHBasicAgreement in '..\..\CryptoLib\src\Interfaces\ClpIDHBasicAgreement.pas',
+  ClpDHBasicAgreement in '..\..\CryptoLib\src\Crypto\Agreement\ClpDHBasicAgreement.pas',
+  ClpIDHAgreement in '..\..\CryptoLib\src\Interfaces\ClpIDHAgreement.pas',
+  ClpDHAgreement in '..\..\CryptoLib\src\Crypto\Agreement\ClpDHAgreement.pas',
   ClpAESPRNGRandom in '..\..\CryptoLib\src\Utils\Randoms\ClpAESPRNGRandom.pas',
   ClpAESPRNGRandom in '..\..\CryptoLib\src\Utils\Randoms\ClpAESPRNGRandom.pas',
   ClpCryptLibObjectIdentifiers in '..\..\CryptoLib\src\Asn1\CryptLib\ClpCryptLibObjectIdentifiers.pas',
   ClpCryptLibObjectIdentifiers in '..\..\CryptoLib\src\Asn1\CryptLib\ClpCryptLibObjectIdentifiers.pas',
   ClpEndoPreCompInfo in '..\..\CryptoLib\src\Math\EC\Endo\ClpEndoPreCompInfo.pas',
   ClpEndoPreCompInfo in '..\..\CryptoLib\src\Math\EC\Endo\ClpEndoPreCompInfo.pas',
@@ -386,6 +376,9 @@ uses
   ClpIGlvTypeAEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeAEndomorphism.pas',
   ClpIGlvTypeAEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeAEndomorphism.pas',
   ClpIGlvTypeAParameters in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeAParameters.pas',
   ClpIGlvTypeAParameters in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeAParameters.pas',
   ClpGlvTypeAParameters in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeAParameters.pas',
   ClpGlvTypeAParameters in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeAParameters.pas',
+  ClpMultipliers in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpMultipliers.pas',
+  ClpIMultipliers in '..\..\CryptoLib\src\Interfaces\ClpIMultipliers.pas',
+  ClpECCompUtilities in '..\..\CryptoLib\src\Math\EC\ClpECCompUtilities.pas',
   UsageExamples in '..\src\UsageExamples.pas';
   UsageExamples in '..\src\UsageExamples.pas';
 
 
 begin
 begin

+ 3 - 10
CryptoLib.Tests/Delphi.Tests/CryptoLib.Tests.TestInsight.dpr

@@ -42,7 +42,6 @@ uses
   ClpAsymmetricCipherKeyPair in '..\..\CryptoLib\src\Crypto\ClpAsymmetricCipherKeyPair.pas',
   ClpAsymmetricCipherKeyPair in '..\..\CryptoLib\src\Crypto\ClpAsymmetricCipherKeyPair.pas',
   ClpAsymmetricKeyParameter in '..\..\CryptoLib\src\Crypto\ClpAsymmetricKeyParameter.pas',
   ClpAsymmetricKeyParameter in '..\..\CryptoLib\src\Crypto\ClpAsymmetricKeyParameter.pas',
   ClpKeyGenerationParameters in '..\..\CryptoLib\src\Crypto\ClpKeyGenerationParameters.pas',
   ClpKeyGenerationParameters in '..\..\CryptoLib\src\Crypto\ClpKeyGenerationParameters.pas',
-  ClpIAbstractECMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIAbstractECMultiplier.pas',
   ClpIAsymmetricCipherKeyPair in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricCipherKeyPair.pas',
   ClpIAsymmetricCipherKeyPair in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricCipherKeyPair.pas',
   ClpIAsymmetricCipherKeyPairGenerator in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricCipherKeyPairGenerator.pas',
   ClpIAsymmetricCipherKeyPairGenerator in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricCipherKeyPairGenerator.pas',
   ClpIAsymmetricKeyParameter in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricKeyParameter.pas',
   ClpIAsymmetricKeyParameter in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricKeyParameter.pas',
@@ -58,7 +57,6 @@ uses
   ClpIECPublicKeyParameters in '..\..\CryptoLib\src\Interfaces\ClpIECPublicKeyParameters.pas',
   ClpIECPublicKeyParameters in '..\..\CryptoLib\src\Interfaces\ClpIECPublicKeyParameters.pas',
   ClpIExtensionField in '..\..\CryptoLib\src\Interfaces\ClpIExtensionField.pas',
   ClpIExtensionField in '..\..\CryptoLib\src\Interfaces\ClpIExtensionField.pas',
   ClpIFiniteField in '..\..\CryptoLib\src\Interfaces\ClpIFiniteField.pas',
   ClpIFiniteField in '..\..\CryptoLib\src\Interfaces\ClpIFiniteField.pas',
-  ClpIFixedPointCombMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIFixedPointCombMultiplier.pas',
   ClpIFixedPointPreCompInfo in '..\..\CryptoLib\src\Interfaces\ClpIFixedPointPreCompInfo.pas',
   ClpIFixedPointPreCompInfo in '..\..\CryptoLib\src\Interfaces\ClpIFixedPointPreCompInfo.pas',
   ClpIGlvEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvEndomorphism.pas',
   ClpIGlvEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvEndomorphism.pas',
   ClpIGlvTypeBEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeBEndomorphism.pas',
   ClpIGlvTypeBEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeBEndomorphism.pas',
@@ -79,8 +77,6 @@ uses
   ClpIX9ECParametersHolder in '..\..\CryptoLib\src\Interfaces\ClpIX9ECParametersHolder.pas',
   ClpIX9ECParametersHolder in '..\..\CryptoLib\src\Interfaces\ClpIX9ECParametersHolder.pas',
   ClpGlvTypeBEndomorphism in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeBEndomorphism.pas',
   ClpGlvTypeBEndomorphism in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeBEndomorphism.pas',
   ClpGlvTypeBParameters in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeBParameters.pas',
   ClpGlvTypeBParameters in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeBParameters.pas',
-  ClpAbstractECMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpAbstractECMultiplier.pas',
-  ClpFixedPointCombMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpFixedPointCombMultiplier.pas',
   ClpFixedPointPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpFixedPointPreCompInfo.pas',
   ClpFixedPointPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpFixedPointPreCompInfo.pas',
   ClpWNafPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWNafPreCompInfo.pas',
   ClpWNafPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWNafPreCompInfo.pas',
   ClpECAlgorithms in '..\..\CryptoLib\src\Math\EC\ClpECAlgorithms.pas',
   ClpECAlgorithms in '..\..\CryptoLib\src\Math\EC\ClpECAlgorithms.pas',
@@ -116,14 +112,8 @@ uses
   ClpIZTauElement in '..\..\CryptoLib\src\Interfaces\ClpIZTauElement.pas',
   ClpIZTauElement in '..\..\CryptoLib\src\Interfaces\ClpIZTauElement.pas',
   ClpSimpleBigDecimal in '..\..\CryptoLib\src\Math\EC\Abc\ClpSimpleBigDecimal.pas',
   ClpSimpleBigDecimal in '..\..\CryptoLib\src\Math\EC\Abc\ClpSimpleBigDecimal.pas',
   ClpTnaf in '..\..\CryptoLib\src\Math\EC\Abc\ClpTnaf.pas',
   ClpTnaf in '..\..\CryptoLib\src\Math\EC\Abc\ClpTnaf.pas',
-  ClpGlvMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpGlvMultiplier.pas',
-  ClpIGlvMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIGlvMultiplier.pas',
-  ClpWTauNafMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWTauNafMultiplier.pas',
-  ClpIWTauNafMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIWTauNafMultiplier.pas',
   ClpWTauNafPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWTauNafPreCompInfo.pas',
   ClpWTauNafPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWTauNafPreCompInfo.pas',
   ClpIWTauNafPreCompInfo in '..\..\CryptoLib\src\Interfaces\ClpIWTauNafPreCompInfo.pas',
   ClpIWTauNafPreCompInfo in '..\..\CryptoLib\src\Interfaces\ClpIWTauNafPreCompInfo.pas',
-  ClpWNafL2RMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWNafL2RMultiplier.pas',
-  ClpIWNafL2RMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIWNafL2RMultiplier.pas',
   ClpGF2Polynomial in '..\..\CryptoLib\src\Math\Field\ClpGF2Polynomial.pas',
   ClpGF2Polynomial in '..\..\CryptoLib\src\Math\Field\ClpGF2Polynomial.pas',
   ClpIGF2Polynomial in '..\..\CryptoLib\src\Interfaces\ClpIGF2Polynomial.pas',
   ClpIGF2Polynomial in '..\..\CryptoLib\src\Interfaces\ClpIGF2Polynomial.pas',
   ClpGenericPolynomialExtensionField in '..\..\CryptoLib\src\Math\Field\ClpGenericPolynomialExtensionField.pas',
   ClpGenericPolynomialExtensionField in '..\..\CryptoLib\src\Math\Field\ClpGenericPolynomialExtensionField.pas',
@@ -396,6 +386,9 @@ uses
   ClpIGlvTypeAEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeAEndomorphism.pas',
   ClpIGlvTypeAEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeAEndomorphism.pas',
   ClpIGlvTypeAParameters in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeAParameters.pas',
   ClpIGlvTypeAParameters in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeAParameters.pas',
   ClpGlvTypeAParameters in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeAParameters.pas',
   ClpGlvTypeAParameters in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeAParameters.pas',
+  ClpMultipliers in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpMultipliers.pas',
+  ClpIMultipliers in '..\..\CryptoLib\src\Interfaces\ClpIMultipliers.pas',
+  ClpECCompUtilities in '..\..\CryptoLib\src\Math\EC\ClpECCompUtilities.pas',
   ClpFixedSecureRandom in '..\src\Utils\ClpFixedSecureRandom.pas',
   ClpFixedSecureRandom in '..\src\Utils\ClpFixedSecureRandom.pas',
   ClpIFixedSecureRandom in '..\src\Utils\ClpIFixedSecureRandom.pas',
   ClpIFixedSecureRandom in '..\src\Utils\ClpIFixedSecureRandom.pas',
   ClpIShortenedDigest in '..\src\Utils\ClpIShortenedDigest.pas',
   ClpIShortenedDigest in '..\src\Utils\ClpIShortenedDigest.pas',

+ 3 - 10
CryptoLib.Tests/Delphi.Tests/CryptoLib.Tests.dpr

@@ -45,7 +45,6 @@ uses
   ClpAsymmetricCipherKeyPair in '..\..\CryptoLib\src\Crypto\ClpAsymmetricCipherKeyPair.pas',
   ClpAsymmetricCipherKeyPair in '..\..\CryptoLib\src\Crypto\ClpAsymmetricCipherKeyPair.pas',
   ClpAsymmetricKeyParameter in '..\..\CryptoLib\src\Crypto\ClpAsymmetricKeyParameter.pas',
   ClpAsymmetricKeyParameter in '..\..\CryptoLib\src\Crypto\ClpAsymmetricKeyParameter.pas',
   ClpKeyGenerationParameters in '..\..\CryptoLib\src\Crypto\ClpKeyGenerationParameters.pas',
   ClpKeyGenerationParameters in '..\..\CryptoLib\src\Crypto\ClpKeyGenerationParameters.pas',
-  ClpIAbstractECMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIAbstractECMultiplier.pas',
   ClpIAsymmetricCipherKeyPair in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricCipherKeyPair.pas',
   ClpIAsymmetricCipherKeyPair in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricCipherKeyPair.pas',
   ClpIAsymmetricCipherKeyPairGenerator in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricCipherKeyPairGenerator.pas',
   ClpIAsymmetricCipherKeyPairGenerator in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricCipherKeyPairGenerator.pas',
   ClpIAsymmetricKeyParameter in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricKeyParameter.pas',
   ClpIAsymmetricKeyParameter in '..\..\CryptoLib\src\Interfaces\ClpIAsymmetricKeyParameter.pas',
@@ -61,7 +60,6 @@ uses
   ClpIECPublicKeyParameters in '..\..\CryptoLib\src\Interfaces\ClpIECPublicKeyParameters.pas',
   ClpIECPublicKeyParameters in '..\..\CryptoLib\src\Interfaces\ClpIECPublicKeyParameters.pas',
   ClpIExtensionField in '..\..\CryptoLib\src\Interfaces\ClpIExtensionField.pas',
   ClpIExtensionField in '..\..\CryptoLib\src\Interfaces\ClpIExtensionField.pas',
   ClpIFiniteField in '..\..\CryptoLib\src\Interfaces\ClpIFiniteField.pas',
   ClpIFiniteField in '..\..\CryptoLib\src\Interfaces\ClpIFiniteField.pas',
-  ClpIFixedPointCombMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIFixedPointCombMultiplier.pas',
   ClpIFixedPointPreCompInfo in '..\..\CryptoLib\src\Interfaces\ClpIFixedPointPreCompInfo.pas',
   ClpIFixedPointPreCompInfo in '..\..\CryptoLib\src\Interfaces\ClpIFixedPointPreCompInfo.pas',
   ClpIGlvEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvEndomorphism.pas',
   ClpIGlvEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvEndomorphism.pas',
   ClpIGlvTypeBEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeBEndomorphism.pas',
   ClpIGlvTypeBEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeBEndomorphism.pas',
@@ -82,8 +80,6 @@ uses
   ClpIX9ECParametersHolder in '..\..\CryptoLib\src\Interfaces\ClpIX9ECParametersHolder.pas',
   ClpIX9ECParametersHolder in '..\..\CryptoLib\src\Interfaces\ClpIX9ECParametersHolder.pas',
   ClpGlvTypeBEndomorphism in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeBEndomorphism.pas',
   ClpGlvTypeBEndomorphism in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeBEndomorphism.pas',
   ClpGlvTypeBParameters in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeBParameters.pas',
   ClpGlvTypeBParameters in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeBParameters.pas',
-  ClpAbstractECMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpAbstractECMultiplier.pas',
-  ClpFixedPointCombMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpFixedPointCombMultiplier.pas',
   ClpFixedPointPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpFixedPointPreCompInfo.pas',
   ClpFixedPointPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpFixedPointPreCompInfo.pas',
   ClpWNafPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWNafPreCompInfo.pas',
   ClpWNafPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWNafPreCompInfo.pas',
   ClpECAlgorithms in '..\..\CryptoLib\src\Math\EC\ClpECAlgorithms.pas',
   ClpECAlgorithms in '..\..\CryptoLib\src\Math\EC\ClpECAlgorithms.pas',
@@ -119,14 +115,8 @@ uses
   ClpIZTauElement in '..\..\CryptoLib\src\Interfaces\ClpIZTauElement.pas',
   ClpIZTauElement in '..\..\CryptoLib\src\Interfaces\ClpIZTauElement.pas',
   ClpSimpleBigDecimal in '..\..\CryptoLib\src\Math\EC\Abc\ClpSimpleBigDecimal.pas',
   ClpSimpleBigDecimal in '..\..\CryptoLib\src\Math\EC\Abc\ClpSimpleBigDecimal.pas',
   ClpTnaf in '..\..\CryptoLib\src\Math\EC\Abc\ClpTnaf.pas',
   ClpTnaf in '..\..\CryptoLib\src\Math\EC\Abc\ClpTnaf.pas',
-  ClpGlvMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpGlvMultiplier.pas',
-  ClpIGlvMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIGlvMultiplier.pas',
-  ClpWTauNafMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWTauNafMultiplier.pas',
-  ClpIWTauNafMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIWTauNafMultiplier.pas',
   ClpWTauNafPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWTauNafPreCompInfo.pas',
   ClpWTauNafPreCompInfo in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWTauNafPreCompInfo.pas',
   ClpIWTauNafPreCompInfo in '..\..\CryptoLib\src\Interfaces\ClpIWTauNafPreCompInfo.pas',
   ClpIWTauNafPreCompInfo in '..\..\CryptoLib\src\Interfaces\ClpIWTauNafPreCompInfo.pas',
-  ClpWNafL2RMultiplier in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpWNafL2RMultiplier.pas',
-  ClpIWNafL2RMultiplier in '..\..\CryptoLib\src\Interfaces\ClpIWNafL2RMultiplier.pas',
   ClpGF2Polynomial in '..\..\CryptoLib\src\Math\Field\ClpGF2Polynomial.pas',
   ClpGF2Polynomial in '..\..\CryptoLib\src\Math\Field\ClpGF2Polynomial.pas',
   ClpIGF2Polynomial in '..\..\CryptoLib\src\Interfaces\ClpIGF2Polynomial.pas',
   ClpIGF2Polynomial in '..\..\CryptoLib\src\Interfaces\ClpIGF2Polynomial.pas',
   ClpGenericPolynomialExtensionField in '..\..\CryptoLib\src\Math\Field\ClpGenericPolynomialExtensionField.pas',
   ClpGenericPolynomialExtensionField in '..\..\CryptoLib\src\Math\Field\ClpGenericPolynomialExtensionField.pas',
@@ -399,6 +389,9 @@ uses
   ClpIGlvTypeAEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeAEndomorphism.pas',
   ClpIGlvTypeAEndomorphism in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeAEndomorphism.pas',
   ClpIGlvTypeAParameters in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeAParameters.pas',
   ClpIGlvTypeAParameters in '..\..\CryptoLib\src\Interfaces\ClpIGlvTypeAParameters.pas',
   ClpGlvTypeAParameters in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeAParameters.pas',
   ClpGlvTypeAParameters in '..\..\CryptoLib\src\Math\EC\Endo\ClpGlvTypeAParameters.pas',
+  ClpMultipliers in '..\..\CryptoLib\src\Math\EC\Multiplier\ClpMultipliers.pas',
+  ClpIMultipliers in '..\..\CryptoLib\src\Interfaces\ClpIMultipliers.pas',
+  ClpECCompUtilities in '..\..\CryptoLib\src\Math\EC\ClpECCompUtilities.pas',
   ClpFixedSecureRandom in '..\src\Utils\ClpFixedSecureRandom.pas',
   ClpFixedSecureRandom in '..\src\Utils\ClpFixedSecureRandom.pas',
   ClpIFixedSecureRandom in '..\src\Utils\ClpIFixedSecureRandom.pas',
   ClpIFixedSecureRandom in '..\src\Utils\ClpIFixedSecureRandom.pas',
   ClpIShortenedDigest in '..\src\Utils\ClpIShortenedDigest.pas',
   ClpIShortenedDigest in '..\src\Utils\ClpIShortenedDigest.pas',

+ 4 - 11
CryptoLib/src/Packages/Delphi/CryptoLib4PascalPackage.dpk

@@ -283,7 +283,6 @@ contains
   ClpECDHBasicAgreement in '..\..\Crypto\Agreement\ClpECDHBasicAgreement.pas',
   ClpECDHBasicAgreement in '..\..\Crypto\Agreement\ClpECDHBasicAgreement.pas',
   ClpGenericPolynomialExtensionField in '..\..\Math\Field\ClpGenericPolynomialExtensionField.pas',
   ClpGenericPolynomialExtensionField in '..\..\Math\Field\ClpGenericPolynomialExtensionField.pas',
   ClpGF2Polynomial in '..\..\Math\Field\ClpGF2Polynomial.pas',
   ClpGF2Polynomial in '..\..\Math\Field\ClpGF2Polynomial.pas',
-  ClpGlvMultiplier in '..\..\Math\EC\Multiplier\ClpGlvMultiplier.pas',
   ClpIAesEngine in '..\..\Interfaces\ClpIAesEngine.pas',
   ClpIAesEngine in '..\..\Interfaces\ClpIAesEngine.pas',
   ClpIBlockCipher in '..\..\Interfaces\ClpIBlockCipher.pas',
   ClpIBlockCipher in '..\..\Interfaces\ClpIBlockCipher.pas',
   ClpIBlockCipherPadding in '..\..\Interfaces\ClpIBlockCipherPadding.pas',
   ClpIBlockCipherPadding in '..\..\Interfaces\ClpIBlockCipherPadding.pas',
@@ -293,13 +292,10 @@ contains
   ClpIDsaDigestSigner in '..\..\Interfaces\ClpIDsaDigestSigner.pas',
   ClpIDsaDigestSigner in '..\..\Interfaces\ClpIDsaDigestSigner.pas',
   ClpIGenericPolynomialExtensionField in '..\..\Interfaces\ClpIGenericPolynomialExtensionField.pas',
   ClpIGenericPolynomialExtensionField in '..\..\Interfaces\ClpIGenericPolynomialExtensionField.pas',
   ClpIGF2Polynomial in '..\..\Interfaces\ClpIGF2Polynomial.pas',
   ClpIGF2Polynomial in '..\..\Interfaces\ClpIGF2Polynomial.pas',
-  ClpIGlvMultiplier in '..\..\Interfaces\ClpIGlvMultiplier.pas',
   ClpIKeyParameter in '..\..\Interfaces\ClpIKeyParameter.pas',
   ClpIKeyParameter in '..\..\Interfaces\ClpIKeyParameter.pas',
   ClpIPaddedBufferedBlockCipher in '..\..\Interfaces\ClpIPaddedBufferedBlockCipher.pas',
   ClpIPaddedBufferedBlockCipher in '..\..\Interfaces\ClpIPaddedBufferedBlockCipher.pas',
   ClpIParametersWithIV in '..\..\Interfaces\ClpIParametersWithIV.pas',
   ClpIParametersWithIV in '..\..\Interfaces\ClpIParametersWithIV.pas',
   ClpIPrimeField in '..\..\Interfaces\ClpIPrimeField.pas',
   ClpIPrimeField in '..\..\Interfaces\ClpIPrimeField.pas',
-  ClpIWNafL2RMultiplier in '..\..\Interfaces\ClpIWNafL2RMultiplier.pas',
-  ClpIWTauNafMultiplier in '..\..\Interfaces\ClpIWTauNafMultiplier.pas',
   ClpIWTauNafPreCompInfo in '..\..\Interfaces\ClpIWTauNafPreCompInfo.pas',
   ClpIWTauNafPreCompInfo in '..\..\Interfaces\ClpIWTauNafPreCompInfo.pas',
   ClpIZTauElement in '..\..\Interfaces\ClpIZTauElement.pas',
   ClpIZTauElement in '..\..\Interfaces\ClpIZTauElement.pas',
   ClpKeyParameter in '..\..\Crypto\Parameters\ClpKeyParameter.pas',
   ClpKeyParameter in '..\..\Crypto\Parameters\ClpKeyParameter.pas',
@@ -307,14 +303,10 @@ contains
   ClpParametersWithIV in '..\..\Crypto\Parameters\ClpParametersWithIV.pas',
   ClpParametersWithIV in '..\..\Crypto\Parameters\ClpParametersWithIV.pas',
   ClpPrimeField in '..\..\Math\Field\ClpPrimeField.pas',
   ClpPrimeField in '..\..\Math\Field\ClpPrimeField.pas',
   ClpSetWeakRef in '..\..\Utils\ClpSetWeakRef.pas',
   ClpSetWeakRef in '..\..\Utils\ClpSetWeakRef.pas',
-  ClpWNafL2RMultiplier in '..\..\Math\EC\Multiplier\ClpWNafL2RMultiplier.pas',
-  ClpWTauNafMultiplier in '..\..\Math\EC\Multiplier\ClpWTauNafMultiplier.pas',
   ClpWTauNafPreCompInfo in '..\..\Math\EC\Multiplier\ClpWTauNafPreCompInfo.pas',
   ClpWTauNafPreCompInfo in '..\..\Math\EC\Multiplier\ClpWTauNafPreCompInfo.pas',
   ClpZTauElement in '..\..\Math\EC\Abc\ClpZTauElement.pas',
   ClpZTauElement in '..\..\Math\EC\Abc\ClpZTauElement.pas',
-  ClpAbstractECMultiplier in '..\..\Math\EC\Multiplier\ClpAbstractECMultiplier.pas',
   ClpArrayUtils in '..\..\Utils\ClpArrayUtils.pas',
   ClpArrayUtils in '..\..\Utils\ClpArrayUtils.pas',
   ClpBigIntegers in '..\..\Utils\ClpBigIntegers.pas',
   ClpBigIntegers in '..\..\Utils\ClpBigIntegers.pas',
-  ClpFixedPointCombMultiplier in '..\..\Math\EC\Multiplier\ClpFixedPointCombMultiplier.pas',
   ClpFixedPointPreCompInfo in '..\..\Math\EC\Multiplier\ClpFixedPointPreCompInfo.pas',
   ClpFixedPointPreCompInfo in '..\..\Math\EC\Multiplier\ClpFixedPointPreCompInfo.pas',
   ClpGlvTypeBEndomorphism in '..\..\Math\EC\Endo\ClpGlvTypeBEndomorphism.pas',
   ClpGlvTypeBEndomorphism in '..\..\Math\EC\Endo\ClpGlvTypeBEndomorphism.pas',
   ClpGlvTypeBParameters in '..\..\Math\EC\Endo\ClpGlvTypeBParameters.pas',
   ClpGlvTypeBParameters in '..\..\Math\EC\Endo\ClpGlvTypeBParameters.pas',
@@ -322,7 +314,6 @@ contains
   ClpIDsaKCalculator in '..\..\Interfaces\ClpIDsaKCalculator.pas',
   ClpIDsaKCalculator in '..\..\Interfaces\ClpIDsaKCalculator.pas',
   ClpIECDsaSigner in '..\..\Interfaces\ClpIECDsaSigner.pas',
   ClpIECDsaSigner in '..\..\Interfaces\ClpIECDsaSigner.pas',
   ClpIFiniteField in '..\..\Interfaces\ClpIFiniteField.pas',
   ClpIFiniteField in '..\..\Interfaces\ClpIFiniteField.pas',
-  ClpIFixedPointCombMultiplier in '..\..\Interfaces\ClpIFixedPointCombMultiplier.pas',
   ClpIFixedPointPreCompInfo in '..\..\Interfaces\ClpIFixedPointPreCompInfo.pas',
   ClpIFixedPointPreCompInfo in '..\..\Interfaces\ClpIFixedPointPreCompInfo.pas',
   ClpIGlvEndomorphism in '..\..\Interfaces\ClpIGlvEndomorphism.pas',
   ClpIGlvEndomorphism in '..\..\Interfaces\ClpIGlvEndomorphism.pas',
   ClpIGlvTypeBEndomorphism in '..\..\Interfaces\ClpIGlvTypeBEndomorphism.pas',
   ClpIGlvTypeBEndomorphism in '..\..\Interfaces\ClpIGlvTypeBEndomorphism.pas',
@@ -348,7 +339,6 @@ contains
   ClpTimes in '..\..\Utils\ClpTimes.pas',
   ClpTimes in '..\..\Utils\ClpTimes.pas',
   ClpWNafPreCompInfo in '..\..\Math\EC\Multiplier\ClpWNafPreCompInfo.pas',
   ClpWNafPreCompInfo in '..\..\Math\EC\Multiplier\ClpWNafPreCompInfo.pas',
   ClpAsymmetricCipherKeyPair in '..\..\Crypto\ClpAsymmetricCipherKeyPair.pas',
   ClpAsymmetricCipherKeyPair in '..\..\Crypto\ClpAsymmetricCipherKeyPair.pas',
-  ClpIAbstractECMultiplier in '..\..\Interfaces\ClpIAbstractECMultiplier.pas',
   ClpIAsymmetricCipherKeyPair in '..\..\Interfaces\ClpIAsymmetricCipherKeyPair.pas',
   ClpIAsymmetricCipherKeyPair in '..\..\Interfaces\ClpIAsymmetricCipherKeyPair.pas',
   ClpIAsymmetricCipherKeyPairGenerator in '..\..\Interfaces\ClpIAsymmetricCipherKeyPairGenerator.pas',
   ClpIAsymmetricCipherKeyPairGenerator in '..\..\Interfaces\ClpIAsymmetricCipherKeyPairGenerator.pas',
   ClpIAsymmetricKeyParameter in '..\..\Interfaces\ClpIAsymmetricKeyParameter.pas',
   ClpIAsymmetricKeyParameter in '..\..\Interfaces\ClpIAsymmetricKeyParameter.pas',
@@ -414,6 +404,9 @@ contains
   ClpEndoPreCompInfo in '..\..\Math\EC\Endo\ClpEndoPreCompInfo.pas',
   ClpEndoPreCompInfo in '..\..\Math\EC\Endo\ClpEndoPreCompInfo.pas',
   ClpGlvTypeAEndomorphism in '..\..\Math\EC\Endo\ClpGlvTypeAEndomorphism.pas',
   ClpGlvTypeAEndomorphism in '..\..\Math\EC\Endo\ClpGlvTypeAEndomorphism.pas',
   ClpGlvTypeAParameters in '..\..\Math\EC\Endo\ClpGlvTypeAParameters.pas',
   ClpGlvTypeAParameters in '..\..\Math\EC\Endo\ClpGlvTypeAParameters.pas',
-  ClpScalarSplitParameters in '..\..\Math\EC\Endo\ClpScalarSplitParameters.pas';
+  ClpScalarSplitParameters in '..\..\Math\EC\Endo\ClpScalarSplitParameters.pas',
+  ClpMultipliers in '..\..\Math\EC\Multiplier\ClpMultipliers.pas',
+  ClpIMultipliers in '..\..\Interfaces\ClpIMultipliers.pas',
+  ClpECCompUtilities in '..\..\Math\EC\ClpECCompUtilities.pas';
 
 
 end.
 end.

+ 686 - 722
CryptoLib/src/Packages/FPC/CryptoLib4PascalPackage.lpk

@@ -25,7 +25,7 @@
  Acknowledgements: 
  Acknowledgements: 
 Thanks to Sphere 10 Software (http://www.sphere10.com/) for sponsoring the development of this library "/>
 Thanks to Sphere 10 Software (http://www.sphere10.com/) for sponsoring the development of this library "/>
     <Version Major="3" Minor="1"/>
     <Version Major="3" Minor="1"/>
-    <Files Count="382">
+    <Files Count="373">
       <Item1>
       <Item1>
         <Filename Value="..\..\Asn1\ClpOidTokenizer.pas"/>
         <Filename Value="..\..\Asn1\ClpOidTokenizer.pas"/>
         <UnitName Value="ClpOidTokenizer"/>
         <UnitName Value="ClpOidTokenizer"/>
@@ -151,1411 +151,1375 @@ Thanks to Sphere 10 Software (http://www.sphere10.com/) for sponsoring the devel
         <Type Value="Include"/>
         <Type Value="Include"/>
       </Item31>
       </Item31>
       <Item32>
       <Item32>
-        <Filename Value="..\..\Interfaces\ClpIAbstractECMultiplier.pas"/>
-        <UnitName Value="ClpIAbstractECMultiplier"/>
-      </Item32>
-      <Item33>
         <Filename Value="..\..\Interfaces\ClpIAsymmetricCipherKeyPair.pas"/>
         <Filename Value="..\..\Interfaces\ClpIAsymmetricCipherKeyPair.pas"/>
         <UnitName Value="ClpIAsymmetricCipherKeyPair"/>
         <UnitName Value="ClpIAsymmetricCipherKeyPair"/>
-      </Item33>
-      <Item34>
+      </Item32>
+      <Item33>
         <Filename Value="..\..\Interfaces\ClpIAsymmetricCipherKeyPairGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIAsymmetricCipherKeyPairGenerator.pas"/>
         <UnitName Value="ClpIAsymmetricCipherKeyPairGenerator"/>
         <UnitName Value="ClpIAsymmetricCipherKeyPairGenerator"/>
-      </Item34>
-      <Item35>
+      </Item33>
+      <Item34>
         <Filename Value="..\..\Interfaces\ClpIAsymmetricKeyParameter.pas"/>
         <Filename Value="..\..\Interfaces\ClpIAsymmetricKeyParameter.pas"/>
         <UnitName Value="ClpIAsymmetricKeyParameter"/>
         <UnitName Value="ClpIAsymmetricKeyParameter"/>
-      </Item35>
-      <Item36>
+      </Item34>
+      <Item35>
         <Filename Value="..\..\Interfaces\ClpICipherParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpICipherParameters.pas"/>
         <UnitName Value="ClpICipherParameters"/>
         <UnitName Value="ClpICipherParameters"/>
-      </Item36>
-      <Item37>
+      </Item35>
+      <Item36>
         <Filename Value="..\..\Interfaces\ClpICryptoApiRandomGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpICryptoApiRandomGenerator.pas"/>
         <UnitName Value="ClpICryptoApiRandomGenerator"/>
         <UnitName Value="ClpICryptoApiRandomGenerator"/>
-      </Item37>
-      <Item38>
+      </Item36>
+      <Item37>
         <Filename Value="..\..\Interfaces\ClpIDigestRandomGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDigestRandomGenerator.pas"/>
         <UnitName Value="ClpIDigestRandomGenerator"/>
         <UnitName Value="ClpIDigestRandomGenerator"/>
-      </Item38>
-      <Item39>
+      </Item37>
+      <Item38>
         <Filename Value="..\..\Interfaces\ClpIDsa.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsa.pas"/>
         <UnitName Value="ClpIDsa"/>
         <UnitName Value="ClpIDsa"/>
-      </Item39>
-      <Item40>
+      </Item38>
+      <Item39>
         <Filename Value="..\..\Interfaces\ClpIDsaDigestSigner.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaDigestSigner.pas"/>
         <UnitName Value="ClpIDsaDigestSigner"/>
         <UnitName Value="ClpIDsaDigestSigner"/>
-      </Item40>
-      <Item41>
+      </Item39>
+      <Item40>
         <Filename Value="..\..\Interfaces\ClpIDsaKCalculator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaKCalculator.pas"/>
         <UnitName Value="ClpIDsaKCalculator"/>
         <UnitName Value="ClpIDsaKCalculator"/>
-      </Item41>
-      <Item42>
+      </Item40>
+      <Item41>
         <Filename Value="..\..\Interfaces\ClpIECDomainParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIECDomainParameters.pas"/>
         <UnitName Value="ClpIECDomainParameters"/>
         <UnitName Value="ClpIECDomainParameters"/>
-      </Item42>
-      <Item43>
+      </Item41>
+      <Item42>
         <Filename Value="..\..\Interfaces\ClpIECDsaSigner.pas"/>
         <Filename Value="..\..\Interfaces\ClpIECDsaSigner.pas"/>
         <UnitName Value="ClpIECDsaSigner"/>
         <UnitName Value="ClpIECDsaSigner"/>
-      </Item43>
-      <Item44>
+      </Item42>
+      <Item43>
         <Filename Value="..\..\Interfaces\ClpIECKeyGenerationParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIECKeyGenerationParameters.pas"/>
         <UnitName Value="ClpIECKeyGenerationParameters"/>
         <UnitName Value="ClpIECKeyGenerationParameters"/>
-      </Item44>
-      <Item45>
+      </Item43>
+      <Item44>
         <Filename Value="..\..\Interfaces\ClpIECKeyPairGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIECKeyPairGenerator.pas"/>
         <UnitName Value="ClpIECKeyPairGenerator"/>
         <UnitName Value="ClpIECKeyPairGenerator"/>
-      </Item45>
-      <Item46>
+      </Item44>
+      <Item45>
         <Filename Value="..\..\Interfaces\ClpIECKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIECKeyParameters.pas"/>
         <UnitName Value="ClpIECKeyParameters"/>
         <UnitName Value="ClpIECKeyParameters"/>
-      </Item46>
-      <Item47>
+      </Item45>
+      <Item46>
         <Filename Value="..\..\Interfaces\ClpIECPrivateKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIECPrivateKeyParameters.pas"/>
         <UnitName Value="ClpIECPrivateKeyParameters"/>
         <UnitName Value="ClpIECPrivateKeyParameters"/>
-      </Item47>
-      <Item48>
+      </Item46>
+      <Item47>
         <Filename Value="..\..\Interfaces\ClpIECPublicKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIECPublicKeyParameters.pas"/>
         <UnitName Value="ClpIECPublicKeyParameters"/>
         <UnitName Value="ClpIECPublicKeyParameters"/>
-      </Item48>
-      <Item49>
+      </Item47>
+      <Item48>
         <Filename Value="..\..\Interfaces\ClpIExtensionField.pas"/>
         <Filename Value="..\..\Interfaces\ClpIExtensionField.pas"/>
         <UnitName Value="ClpIExtensionField"/>
         <UnitName Value="ClpIExtensionField"/>
-      </Item49>
-      <Item50>
+      </Item48>
+      <Item49>
         <Filename Value="..\..\Interfaces\ClpIFiniteField.pas"/>
         <Filename Value="..\..\Interfaces\ClpIFiniteField.pas"/>
         <UnitName Value="ClpIFiniteField"/>
         <UnitName Value="ClpIFiniteField"/>
+      </Item49>
+      <Item50>
+        <Filename Value="..\..\Interfaces\ClpIFixedPointPreCompInfo.pas"/>
+        <UnitName Value="ClpIFixedPointPreCompInfo"/>
       </Item50>
       </Item50>
       <Item51>
       <Item51>
-        <Filename Value="..\..\Interfaces\ClpIFixedPointCombMultiplier.pas"/>
-        <UnitName Value="ClpIFixedPointCombMultiplier"/>
+        <Filename Value="..\..\Interfaces\ClpIGenericPolynomialExtensionField.pas"/>
+        <UnitName Value="ClpIGenericPolynomialExtensionField"/>
       </Item51>
       </Item51>
       <Item52>
       <Item52>
-        <Filename Value="..\..\Interfaces\ClpIFixedPointPreCompInfo.pas"/>
-        <UnitName Value="ClpIFixedPointPreCompInfo"/>
+        <Filename Value="..\..\Interfaces\ClpIGF2Polynomial.pas"/>
+        <UnitName Value="ClpIGF2Polynomial"/>
       </Item52>
       </Item52>
       <Item53>
       <Item53>
-        <Filename Value="..\..\Interfaces\ClpIGenericPolynomialExtensionField.pas"/>
-        <UnitName Value="ClpIGenericPolynomialExtensionField"/>
+        <Filename Value="..\..\Interfaces\ClpIGlvEndomorphism.pas"/>
+        <UnitName Value="ClpIGlvEndomorphism"/>
       </Item53>
       </Item53>
       <Item54>
       <Item54>
-        <Filename Value="..\..\Interfaces\ClpIGF2Polynomial.pas"/>
-        <UnitName Value="ClpIGF2Polynomial"/>
+        <Filename Value="..\..\Interfaces\ClpIGlvTypeBEndomorphism.pas"/>
+        <UnitName Value="ClpIGlvTypeBEndomorphism"/>
       </Item54>
       </Item54>
       <Item55>
       <Item55>
-        <Filename Value="..\..\Interfaces\ClpIGlvEndomorphism.pas"/>
-        <UnitName Value="ClpIGlvEndomorphism"/>
+        <Filename Value="..\..\Interfaces\ClpIGlvTypeBParameters.pas"/>
+        <UnitName Value="ClpIGlvTypeBParameters"/>
       </Item55>
       </Item55>
       <Item56>
       <Item56>
-        <Filename Value="..\..\Interfaces\ClpIGlvMultiplier.pas"/>
-        <UnitName Value="ClpIGlvMultiplier"/>
+        <Filename Value="..\..\Interfaces\ClpIKeyGenerationParameters.pas"/>
+        <UnitName Value="ClpIKeyGenerationParameters"/>
       </Item56>
       </Item56>
       <Item57>
       <Item57>
-        <Filename Value="..\..\Interfaces\ClpIGlvTypeBEndomorphism.pas"/>
-        <UnitName Value="ClpIGlvTypeBEndomorphism"/>
+        <Filename Value="..\..\Interfaces\ClpIOidTokenizer.pas"/>
+        <UnitName Value="ClpIOidTokenizer"/>
       </Item57>
       </Item57>
       <Item58>
       <Item58>
-        <Filename Value="..\..\Interfaces\ClpIGlvTypeBParameters.pas"/>
-        <UnitName Value="ClpIGlvTypeBParameters"/>
+        <Filename Value="..\..\Interfaces\ClpIParametersWithRandom.pas"/>
+        <UnitName Value="ClpIParametersWithRandom"/>
       </Item58>
       </Item58>
       <Item59>
       <Item59>
-        <Filename Value="..\..\Interfaces\ClpIKeyGenerationParameters.pas"/>
-        <UnitName Value="ClpIKeyGenerationParameters"/>
+        <Filename Value="..\..\Interfaces\ClpIPolynomial.pas"/>
+        <UnitName Value="ClpIPolynomial"/>
       </Item59>
       </Item59>
       <Item60>
       <Item60>
-        <Filename Value="..\..\Interfaces\ClpIOidTokenizer.pas"/>
-        <UnitName Value="ClpIOidTokenizer"/>
+        <Filename Value="..\..\Interfaces\ClpIPolynomialExtensionField.pas"/>
+        <UnitName Value="ClpIPolynomialExtensionField"/>
       </Item60>
       </Item60>
       <Item61>
       <Item61>
-        <Filename Value="..\..\Interfaces\ClpIParametersWithRandom.pas"/>
-        <UnitName Value="ClpIParametersWithRandom"/>
+        <Filename Value="..\..\Interfaces\ClpIPreCompInfo.pas"/>
+        <UnitName Value="ClpIPreCompInfo"/>
       </Item61>
       </Item61>
       <Item62>
       <Item62>
-        <Filename Value="..\..\Interfaces\ClpIPolynomial.pas"/>
-        <UnitName Value="ClpIPolynomial"/>
+        <Filename Value="..\..\Interfaces\ClpIPrimeField.pas"/>
+        <UnitName Value="ClpIPrimeField"/>
       </Item62>
       </Item62>
       <Item63>
       <Item63>
-        <Filename Value="..\..\Interfaces\ClpIPolynomialExtensionField.pas"/>
-        <UnitName Value="ClpIPolynomialExtensionField"/>
+        <Filename Value="..\..\Interfaces\ClpIRandom.pas"/>
+        <UnitName Value="ClpIRandom"/>
       </Item63>
       </Item63>
       <Item64>
       <Item64>
-        <Filename Value="..\..\Interfaces\ClpIPreCompInfo.pas"/>
-        <UnitName Value="ClpIPreCompInfo"/>
+        <Filename Value="..\..\Interfaces\ClpIRandomDsaKCalculator.pas"/>
+        <UnitName Value="ClpIRandomDsaKCalculator"/>
       </Item64>
       </Item64>
       <Item65>
       <Item65>
-        <Filename Value="..\..\Interfaces\ClpIPrimeField.pas"/>
-        <UnitName Value="ClpIPrimeField"/>
+        <Filename Value="..\..\Interfaces\ClpIRandomGenerator.pas"/>
+        <UnitName Value="ClpIRandomGenerator"/>
       </Item65>
       </Item65>
       <Item66>
       <Item66>
-        <Filename Value="..\..\Interfaces\ClpIRandom.pas"/>
-        <UnitName Value="ClpIRandom"/>
+        <Filename Value="..\..\Interfaces\ClpIRandomNumberGenerator.pas"/>
+        <UnitName Value="ClpIRandomNumberGenerator"/>
       </Item66>
       </Item66>
       <Item67>
       <Item67>
-        <Filename Value="..\..\Interfaces\ClpIRandomDsaKCalculator.pas"/>
-        <UnitName Value="ClpIRandomDsaKCalculator"/>
+        <Filename Value="..\..\Interfaces\ClpIScaleXPointMap.pas"/>
+        <UnitName Value="ClpIScaleXPointMap"/>
       </Item67>
       </Item67>
       <Item68>
       <Item68>
-        <Filename Value="..\..\Interfaces\ClpIRandomGenerator.pas"/>
-        <UnitName Value="ClpIRandomGenerator"/>
+        <Filename Value="..\..\Interfaces\ClpISecureRandom.pas"/>
+        <UnitName Value="ClpISecureRandom"/>
       </Item68>
       </Item68>
       <Item69>
       <Item69>
-        <Filename Value="..\..\Interfaces\ClpIRandomNumberGenerator.pas"/>
-        <UnitName Value="ClpIRandomNumberGenerator"/>
+        <Filename Value="..\..\Interfaces\ClpISigner.pas"/>
+        <UnitName Value="ClpISigner"/>
       </Item69>
       </Item69>
       <Item70>
       <Item70>
-        <Filename Value="..\..\Interfaces\ClpIScaleXPointMap.pas"/>
-        <UnitName Value="ClpIScaleXPointMap"/>
+        <Filename Value="..\..\Interfaces\ClpIWNafPreCompInfo.pas"/>
+        <UnitName Value="ClpIWNafPreCompInfo"/>
       </Item70>
       </Item70>
       <Item71>
       <Item71>
-        <Filename Value="..\..\Interfaces\ClpISecureRandom.pas"/>
-        <UnitName Value="ClpISecureRandom"/>
+        <Filename Value="..\..\Interfaces\ClpIWTauNafPreCompInfo.pas"/>
+        <UnitName Value="ClpIWTauNafPreCompInfo"/>
       </Item71>
       </Item71>
       <Item72>
       <Item72>
-        <Filename Value="..\..\Interfaces\ClpISigner.pas"/>
-        <UnitName Value="ClpISigner"/>
+        <Filename Value="..\..\Interfaces\ClpIX9ECParameters.pas"/>
+        <UnitName Value="ClpIX9ECParameters"/>
       </Item72>
       </Item72>
       <Item73>
       <Item73>
-        <Filename Value="..\..\Interfaces\ClpIWNafL2RMultiplier.pas"/>
-        <UnitName Value="ClpIWNafL2RMultiplier"/>
+        <Filename Value="..\..\Interfaces\ClpIX9ECParametersHolder.pas"/>
+        <UnitName Value="ClpIX9ECParametersHolder"/>
       </Item73>
       </Item73>
       <Item74>
       <Item74>
-        <Filename Value="..\..\Interfaces\ClpIWNafPreCompInfo.pas"/>
-        <UnitName Value="ClpIWNafPreCompInfo"/>
+        <Filename Value="..\..\Interfaces\ClpIZTauElement.pas"/>
+        <UnitName Value="ClpIZTauElement"/>
       </Item74>
       </Item74>
       <Item75>
       <Item75>
-        <Filename Value="..\..\Interfaces\ClpIWTauNafMultiplier.pas"/>
-        <UnitName Value="ClpIWTauNafMultiplier"/>
+        <Filename Value="..\..\Math\ClpBigInteger.pas"/>
+        <UnitName Value="ClpBigInteger"/>
       </Item75>
       </Item75>
       <Item76>
       <Item76>
-        <Filename Value="..\..\Interfaces\ClpIWTauNafPreCompInfo.pas"/>
-        <UnitName Value="ClpIWTauNafPreCompInfo"/>
+        <Filename Value="..\..\Math\EC\ClpECAlgorithms.pas"/>
+        <UnitName Value="ClpECAlgorithms"/>
       </Item76>
       </Item76>
       <Item77>
       <Item77>
-        <Filename Value="..\..\Interfaces\ClpIX9ECParameters.pas"/>
-        <UnitName Value="ClpIX9ECParameters"/>
+        <Filename Value="..\..\Math\EC\ClpLongArray.pas"/>
+        <UnitName Value="ClpLongArray"/>
       </Item77>
       </Item77>
       <Item78>
       <Item78>
-        <Filename Value="..\..\Interfaces\ClpIX9ECParametersHolder.pas"/>
-        <UnitName Value="ClpIX9ECParametersHolder"/>
+        <Filename Value="..\..\Math\EC\ClpScaleXPointMap.pas"/>
+        <UnitName Value="ClpScaleXPointMap"/>
       </Item78>
       </Item78>
       <Item79>
       <Item79>
-        <Filename Value="..\..\Interfaces\ClpIZTauElement.pas"/>
-        <UnitName Value="ClpIZTauElement"/>
+        <Filename Value="..\..\Math\EC\Abc\ClpSimpleBigDecimal.pas"/>
+        <UnitName Value="ClpSimpleBigDecimal"/>
       </Item79>
       </Item79>
       <Item80>
       <Item80>
-        <Filename Value="..\..\Math\ClpBigInteger.pas"/>
-        <UnitName Value="ClpBigInteger"/>
+        <Filename Value="..\..\Math\EC\Abc\ClpTnaf.pas"/>
+        <UnitName Value="ClpTnaf"/>
       </Item80>
       </Item80>
       <Item81>
       <Item81>
-        <Filename Value="..\..\Math\EC\ClpECAlgorithms.pas"/>
-        <UnitName Value="ClpECAlgorithms"/>
+        <Filename Value="..\..\Math\EC\Abc\ClpZTauElement.pas"/>
+        <UnitName Value="ClpZTauElement"/>
       </Item81>
       </Item81>
       <Item82>
       <Item82>
-        <Filename Value="..\..\Math\EC\ClpLongArray.pas"/>
-        <UnitName Value="ClpLongArray"/>
+        <Filename Value="..\..\Math\EC\Endo\ClpGlvTypeBEndomorphism.pas"/>
+        <UnitName Value="ClpGlvTypeBEndomorphism"/>
       </Item82>
       </Item82>
       <Item83>
       <Item83>
-        <Filename Value="..\..\Math\EC\ClpScaleXPointMap.pas"/>
-        <UnitName Value="ClpScaleXPointMap"/>
+        <Filename Value="..\..\Math\EC\Endo\ClpGlvTypeBParameters.pas"/>
+        <UnitName Value="ClpGlvTypeBParameters"/>
       </Item83>
       </Item83>
       <Item84>
       <Item84>
-        <Filename Value="..\..\Math\EC\Abc\ClpSimpleBigDecimal.pas"/>
-        <UnitName Value="ClpSimpleBigDecimal"/>
+        <Filename Value="..\..\Math\EC\Multiplier\ClpFixedPointPreCompInfo.pas"/>
+        <UnitName Value="ClpFixedPointPreCompInfo"/>
       </Item84>
       </Item84>
       <Item85>
       <Item85>
-        <Filename Value="..\..\Math\EC\Abc\ClpTnaf.pas"/>
-        <UnitName Value="ClpTnaf"/>
+        <Filename Value="..\..\Math\EC\Multiplier\ClpWNafPreCompInfo.pas"/>
+        <UnitName Value="ClpWNafPreCompInfo"/>
       </Item85>
       </Item85>
       <Item86>
       <Item86>
-        <Filename Value="..\..\Math\EC\Abc\ClpZTauElement.pas"/>
-        <UnitName Value="ClpZTauElement"/>
+        <Filename Value="..\..\Math\EC\Multiplier\ClpWTauNafPreCompInfo.pas"/>
+        <UnitName Value="ClpWTauNafPreCompInfo"/>
       </Item86>
       </Item86>
       <Item87>
       <Item87>
-        <Filename Value="..\..\Math\EC\Endo\ClpGlvTypeBEndomorphism.pas"/>
-        <UnitName Value="ClpGlvTypeBEndomorphism"/>
+        <Filename Value="..\..\Math\Field\ClpFiniteFields.pas"/>
+        <UnitName Value="ClpFiniteFields"/>
       </Item87>
       </Item87>
       <Item88>
       <Item88>
-        <Filename Value="..\..\Math\EC\Endo\ClpGlvTypeBParameters.pas"/>
-        <UnitName Value="ClpGlvTypeBParameters"/>
+        <Filename Value="..\..\Math\Field\ClpGenericPolynomialExtensionField.pas"/>
+        <UnitName Value="ClpGenericPolynomialExtensionField"/>
       </Item88>
       </Item88>
       <Item89>
       <Item89>
-        <Filename Value="..\..\Math\EC\Multiplier\ClpAbstractECMultiplier.pas"/>
-        <UnitName Value="ClpAbstractECMultiplier"/>
+        <Filename Value="..\..\Math\Field\ClpGF2Polynomial.pas"/>
+        <UnitName Value="ClpGF2Polynomial"/>
       </Item89>
       </Item89>
       <Item90>
       <Item90>
-        <Filename Value="..\..\Math\EC\Multiplier\ClpFixedPointCombMultiplier.pas"/>
-        <UnitName Value="ClpFixedPointCombMultiplier"/>
+        <Filename Value="..\..\Math\Field\ClpPrimeField.pas"/>
+        <UnitName Value="ClpPrimeField"/>
       </Item90>
       </Item90>
       <Item91>
       <Item91>
-        <Filename Value="..\..\Math\EC\Multiplier\ClpFixedPointPreCompInfo.pas"/>
-        <UnitName Value="ClpFixedPointPreCompInfo"/>
+        <Filename Value="..\..\Math\Raw\ClpMod.pas"/>
+        <UnitName Value="ClpMod"/>
       </Item91>
       </Item91>
       <Item92>
       <Item92>
-        <Filename Value="..\..\Math\EC\Multiplier\ClpGlvMultiplier.pas"/>
-        <UnitName Value="ClpGlvMultiplier"/>
+        <Filename Value="..\..\Math\Raw\ClpNat.pas"/>
+        <UnitName Value="ClpNat"/>
       </Item92>
       </Item92>
       <Item93>
       <Item93>
-        <Filename Value="..\..\Math\EC\Multiplier\ClpWNafL2RMultiplier.pas"/>
-        <UnitName Value="ClpWNafL2RMultiplier"/>
+        <Filename Value="..\..\Security\ClpDigestUtilities.pas"/>
+        <UnitName Value="ClpDigestUtilities"/>
       </Item93>
       </Item93>
       <Item94>
       <Item94>
-        <Filename Value="..\..\Math\EC\Multiplier\ClpWNafPreCompInfo.pas"/>
-        <UnitName Value="ClpWNafPreCompInfo"/>
+        <Filename Value="..\..\Security\ClpRandom.pas"/>
+        <UnitName Value="ClpRandom"/>
       </Item94>
       </Item94>
       <Item95>
       <Item95>
-        <Filename Value="..\..\Math\EC\Multiplier\ClpWTauNafMultiplier.pas"/>
-        <UnitName Value="ClpWTauNafMultiplier"/>
+        <Filename Value="..\..\Security\ClpSecureRandom.pas"/>
+        <UnitName Value="ClpSecureRandom"/>
       </Item95>
       </Item95>
       <Item96>
       <Item96>
-        <Filename Value="..\..\Math\EC\Multiplier\ClpWTauNafPreCompInfo.pas"/>
-        <UnitName Value="ClpWTauNafPreCompInfo"/>
+        <Filename Value="..\..\Security\ClpSignerUtilities.pas"/>
+        <UnitName Value="ClpSignerUtilities"/>
       </Item96>
       </Item96>
       <Item97>
       <Item97>
-        <Filename Value="..\..\Math\Field\ClpFiniteFields.pas"/>
-        <UnitName Value="ClpFiniteFields"/>
+        <Filename Value="..\..\Utils\ClpArrayUtils.pas"/>
+        <UnitName Value="ClpArrayUtils"/>
       </Item97>
       </Item97>
       <Item98>
       <Item98>
-        <Filename Value="..\..\Math\Field\ClpGenericPolynomialExtensionField.pas"/>
-        <UnitName Value="ClpGenericPolynomialExtensionField"/>
+        <Filename Value="..\..\Utils\ClpBigIntegers.pas"/>
+        <UnitName Value="ClpBigIntegers"/>
       </Item98>
       </Item98>
       <Item99>
       <Item99>
-        <Filename Value="..\..\Math\Field\ClpGF2Polynomial.pas"/>
-        <UnitName Value="ClpGF2Polynomial"/>
+        <Filename Value="..\..\Utils\ClpBitConverter.pas"/>
+        <UnitName Value="ClpBitConverter"/>
       </Item99>
       </Item99>
       <Item100>
       <Item100>
-        <Filename Value="..\..\Math\Field\ClpPrimeField.pas"/>
-        <UnitName Value="ClpPrimeField"/>
+        <Filename Value="..\..\Utils\ClpBits.pas"/>
+        <UnitName Value="ClpBits"/>
       </Item100>
       </Item100>
       <Item101>
       <Item101>
-        <Filename Value="..\..\Math\Raw\ClpMod.pas"/>
-        <UnitName Value="ClpMod"/>
-      </Item101>
-      <Item102>
-        <Filename Value="..\..\Math\Raw\ClpNat.pas"/>
-        <UnitName Value="ClpNat"/>
-      </Item102>
-      <Item103>
-        <Filename Value="..\..\Security\ClpDigestUtilities.pas"/>
-        <UnitName Value="ClpDigestUtilities"/>
-      </Item103>
-      <Item104>
-        <Filename Value="..\..\Security\ClpRandom.pas"/>
-        <UnitName Value="ClpRandom"/>
-      </Item104>
-      <Item105>
-        <Filename Value="..\..\Security\ClpSecureRandom.pas"/>
-        <UnitName Value="ClpSecureRandom"/>
-      </Item105>
-      <Item106>
-        <Filename Value="..\..\Security\ClpSignerUtilities.pas"/>
-        <UnitName Value="ClpSignerUtilities"/>
-      </Item106>
-      <Item107>
-        <Filename Value="..\..\Utils\ClpArrayUtils.pas"/>
-        <UnitName Value="ClpArrayUtils"/>
-      </Item107>
-      <Item108>
-        <Filename Value="..\..\Utils\ClpBigIntegers.pas"/>
-        <UnitName Value="ClpBigIntegers"/>
-      </Item108>
-      <Item109>
-        <Filename Value="..\..\Utils\ClpBitConverter.pas"/>
-        <UnitName Value="ClpBitConverter"/>
-      </Item109>
-      <Item110>
-        <Filename Value="..\..\Utils\ClpBits.pas"/>
-        <UnitName Value="ClpBits"/>
-      </Item110>
-      <Item111>
         <Filename Value="..\..\Utils\ClpConverters.pas"/>
         <Filename Value="..\..\Utils\ClpConverters.pas"/>
         <UnitName Value="ClpConverters"/>
         <UnitName Value="ClpConverters"/>
-      </Item111>
-      <Item112>
+      </Item101>
+      <Item102>
         <Filename Value="..\..\Utils\ClpCryptoLibTypes.pas"/>
         <Filename Value="..\..\Utils\ClpCryptoLibTypes.pas"/>
         <UnitName Value="ClpCryptoLibTypes"/>
         <UnitName Value="ClpCryptoLibTypes"/>
-      </Item112>
-      <Item113>
+      </Item102>
+      <Item103>
         <Filename Value="..\..\Utils\ClpTimes.pas"/>
         <Filename Value="..\..\Utils\ClpTimes.pas"/>
         <UnitName Value="ClpTimes"/>
         <UnitName Value="ClpTimes"/>
-      </Item113>
-      <Item114>
+      </Item103>
+      <Item104>
         <Filename Value="..\..\Utils\Randoms\ClpOSRandom.pas"/>
         <Filename Value="..\..\Utils\Randoms\ClpOSRandom.pas"/>
         <UnitName Value="ClpOSRandom"/>
         <UnitName Value="ClpOSRandom"/>
-      </Item114>
-      <Item115>
+      </Item104>
+      <Item105>
         <Filename Value="..\..\Utils\Rng\ClpRandomNumberGenerator.pas"/>
         <Filename Value="..\..\Utils\Rng\ClpRandomNumberGenerator.pas"/>
         <UnitName Value="ClpRandomNumberGenerator"/>
         <UnitName Value="ClpRandomNumberGenerator"/>
-      </Item115>
-      <Item116>
+      </Item105>
+      <Item106>
         <Filename Value="..\..\Utils\ClpSetWeakRef.pas"/>
         <Filename Value="..\..\Utils\ClpSetWeakRef.pas"/>
         <UnitName Value="ClpSetWeakRef"/>
         <UnitName Value="ClpSetWeakRef"/>
-      </Item116>
-      <Item117>
+      </Item106>
+      <Item107>
         <Filename Value="..\..\Security\ClpParameterUtilities.pas"/>
         <Filename Value="..\..\Security\ClpParameterUtilities.pas"/>
         <UnitName Value="ClpParameterUtilities"/>
         <UnitName Value="ClpParameterUtilities"/>
-      </Item117>
-      <Item118>
+      </Item107>
+      <Item108>
         <Filename Value="..\..\Security\ClpGeneratorUtilities.pas"/>
         <Filename Value="..\..\Security\ClpGeneratorUtilities.pas"/>
         <UnitName Value="ClpGeneratorUtilities"/>
         <UnitName Value="ClpGeneratorUtilities"/>
-      </Item118>
-      <Item119>
+      </Item108>
+      <Item109>
         <Filename Value="..\..\Security\ClpCipherUtilities.pas"/>
         <Filename Value="..\..\Security\ClpCipherUtilities.pas"/>
         <UnitName Value="ClpCipherUtilities"/>
         <UnitName Value="ClpCipherUtilities"/>
-      </Item119>
-      <Item120>
+      </Item109>
+      <Item110>
         <Filename Value="..\..\Interfaces\ClpIAesEngine.pas"/>
         <Filename Value="..\..\Interfaces\ClpIAesEngine.pas"/>
         <UnitName Value="ClpIAesEngine"/>
         <UnitName Value="ClpIAesEngine"/>
-      </Item120>
-      <Item121>
+      </Item110>
+      <Item111>
         <Filename Value="..\..\Interfaces\ClpIParametersWithIV.pas"/>
         <Filename Value="..\..\Interfaces\ClpIParametersWithIV.pas"/>
         <UnitName Value="ClpIParametersWithIV"/>
         <UnitName Value="ClpIParametersWithIV"/>
-      </Item121>
-      <Item122>
+      </Item111>
+      <Item112>
         <Filename Value="..\..\Interfaces\ClpIPaddedBufferedBlockCipher.pas"/>
         <Filename Value="..\..\Interfaces\ClpIPaddedBufferedBlockCipher.pas"/>
         <UnitName Value="ClpIPaddedBufferedBlockCipher"/>
         <UnitName Value="ClpIPaddedBufferedBlockCipher"/>
-      </Item122>
-      <Item123>
+      </Item112>
+      <Item113>
         <Filename Value="..\..\Interfaces\ClpIKeyParameter.pas"/>
         <Filename Value="..\..\Interfaces\ClpIKeyParameter.pas"/>
         <UnitName Value="ClpIKeyParameter"/>
         <UnitName Value="ClpIKeyParameter"/>
-      </Item123>
-      <Item124>
+      </Item113>
+      <Item114>
         <Filename Value="..\..\Interfaces\ClpIBufferedCipherBase.pas"/>
         <Filename Value="..\..\Interfaces\ClpIBufferedCipherBase.pas"/>
         <UnitName Value="ClpIBufferedCipherBase"/>
         <UnitName Value="ClpIBufferedCipherBase"/>
-      </Item124>
-      <Item125>
+      </Item114>
+      <Item115>
         <Filename Value="..\..\Interfaces\ClpIBufferedCipher.pas"/>
         <Filename Value="..\..\Interfaces\ClpIBufferedCipher.pas"/>
         <UnitName Value="ClpIBufferedCipher"/>
         <UnitName Value="ClpIBufferedCipher"/>
-      </Item125>
-      <Item126>
+      </Item115>
+      <Item116>
         <Filename Value="..\..\Interfaces\ClpIBufferedBlockCipher.pas"/>
         <Filename Value="..\..\Interfaces\ClpIBufferedBlockCipher.pas"/>
         <UnitName Value="ClpIBufferedBlockCipher"/>
         <UnitName Value="ClpIBufferedBlockCipher"/>
-      </Item126>
-      <Item127>
+      </Item116>
+      <Item117>
         <Filename Value="..\..\Interfaces\ClpIBlockCipherPadding.pas"/>
         <Filename Value="..\..\Interfaces\ClpIBlockCipherPadding.pas"/>
         <UnitName Value="ClpIBlockCipherPadding"/>
         <UnitName Value="ClpIBlockCipherPadding"/>
-      </Item127>
-      <Item128>
+      </Item117>
+      <Item118>
         <Filename Value="..\..\Interfaces\ClpIBlockCipher.pas"/>
         <Filename Value="..\..\Interfaces\ClpIBlockCipher.pas"/>
         <UnitName Value="ClpIBlockCipher"/>
         <UnitName Value="ClpIBlockCipher"/>
-      </Item128>
-      <Item129>
+      </Item118>
+      <Item119>
         <Filename Value="..\..\Crypto\Paddings\ClpPaddedBufferedBlockCipher.pas"/>
         <Filename Value="..\..\Crypto\Paddings\ClpPaddedBufferedBlockCipher.pas"/>
         <UnitName Value="ClpPaddedBufferedBlockCipher"/>
         <UnitName Value="ClpPaddedBufferedBlockCipher"/>
-      </Item129>
-      <Item130>
+      </Item119>
+      <Item120>
         <Filename Value="..\..\Crypto\Parameters\ClpParametersWithIV.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpParametersWithIV.pas"/>
         <UnitName Value="ClpParametersWithIV"/>
         <UnitName Value="ClpParametersWithIV"/>
-      </Item130>
-      <Item131>
+      </Item120>
+      <Item121>
         <Filename Value="..\..\Crypto\Parameters\ClpKeyParameter.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpKeyParameter.pas"/>
         <UnitName Value="ClpKeyParameter"/>
         <UnitName Value="ClpKeyParameter"/>
-      </Item131>
-      <Item132>
+      </Item121>
+      <Item122>
         <Filename Value="..\..\Crypto\ClpBufferedBlockCipher.pas"/>
         <Filename Value="..\..\Crypto\ClpBufferedBlockCipher.pas"/>
         <UnitName Value="ClpBufferedBlockCipher"/>
         <UnitName Value="ClpBufferedBlockCipher"/>
-      </Item132>
-      <Item133>
+      </Item122>
+      <Item123>
         <Filename Value="..\..\Crypto\ClpBufferedCipherBase.pas"/>
         <Filename Value="..\..\Crypto\ClpBufferedCipherBase.pas"/>
         <UnitName Value="ClpBufferedCipherBase"/>
         <UnitName Value="ClpBufferedCipherBase"/>
-      </Item133>
-      <Item134>
+      </Item123>
+      <Item124>
         <Filename Value="..\..\Utils\ClpCheck.pas"/>
         <Filename Value="..\..\Utils\ClpCheck.pas"/>
         <UnitName Value="ClpCheck"/>
         <UnitName Value="ClpCheck"/>
-      </Item134>
-      <Item135>
+      </Item124>
+      <Item125>
         <Filename Value="..\..\Crypto\Engines\ClpAesEngine.pas"/>
         <Filename Value="..\..\Crypto\Engines\ClpAesEngine.pas"/>
         <UnitName Value="ClpAesEngine"/>
         <UnitName Value="ClpAesEngine"/>
-      </Item135>
-      <Item136>
+      </Item125>
+      <Item126>
         <Filename Value="..\..\Crypto\Generators\ClpPascalCoinECIESKdfBytesGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpPascalCoinECIESKdfBytesGenerator.pas"/>
         <UnitName Value="ClpPascalCoinECIESKdfBytesGenerator"/>
         <UnitName Value="ClpPascalCoinECIESKdfBytesGenerator"/>
-      </Item136>
-      <Item137>
+      </Item126>
+      <Item127>
         <Filename Value="..\..\Crypto\Engines\ClpPascalCoinIESEngine.pas"/>
         <Filename Value="..\..\Crypto\Engines\ClpPascalCoinIESEngine.pas"/>
         <UnitName Value="ClpPascalCoinIESEngine"/>
         <UnitName Value="ClpPascalCoinIESEngine"/>
-      </Item137>
-      <Item138>
+      </Item127>
+      <Item128>
         <Filename Value="..\..\Crypto\Generators\ClpBaseKdfBytesGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpBaseKdfBytesGenerator.pas"/>
         <UnitName Value="ClpBaseKdfBytesGenerator"/>
         <UnitName Value="ClpBaseKdfBytesGenerator"/>
-      </Item138>
-      <Item139>
+      </Item128>
+      <Item129>
         <Filename Value="..\..\Crypto\Engines\ClpIESEngine.pas"/>
         <Filename Value="..\..\Crypto\Engines\ClpIESEngine.pas"/>
         <UnitName Value="ClpIESEngine"/>
         <UnitName Value="ClpIESEngine"/>
-      </Item139>
-      <Item140>
+      </Item129>
+      <Item130>
         <Filename Value="..\..\Crypto\Parsers\ClpECIESPublicKeyParser.pas"/>
         <Filename Value="..\..\Crypto\Parsers\ClpECIESPublicKeyParser.pas"/>
         <UnitName Value="ClpECIESPublicKeyParser"/>
         <UnitName Value="ClpECIESPublicKeyParser"/>
-      </Item140>
-      <Item141>
+      </Item130>
+      <Item131>
         <Filename Value="..\..\Crypto\ClpIESCipher.pas"/>
         <Filename Value="..\..\Crypto\ClpIESCipher.pas"/>
         <UnitName Value="ClpIESCipher"/>
         <UnitName Value="ClpIESCipher"/>
-      </Item141>
-      <Item142>
+      </Item131>
+      <Item132>
         <Filename Value="..\..\Crypto\Agreement\ClpECDHBasicAgreement.pas"/>
         <Filename Value="..\..\Crypto\Agreement\ClpECDHBasicAgreement.pas"/>
         <UnitName Value="ClpECDHBasicAgreement"/>
         <UnitName Value="ClpECDHBasicAgreement"/>
-      </Item142>
-      <Item143>
+      </Item132>
+      <Item133>
         <Filename Value="..\..\Crypto\ClpEphemeralKeyPair.pas"/>
         <Filename Value="..\..\Crypto\ClpEphemeralKeyPair.pas"/>
         <UnitName Value="ClpEphemeralKeyPair"/>
         <UnitName Value="ClpEphemeralKeyPair"/>
-      </Item143>
-      <Item144>
+      </Item133>
+      <Item134>
         <Filename Value="..\..\Crypto\ClpKeyEncoder.pas"/>
         <Filename Value="..\..\Crypto\ClpKeyEncoder.pas"/>
         <UnitName Value="ClpKeyEncoder"/>
         <UnitName Value="ClpKeyEncoder"/>
-      </Item144>
-      <Item145>
+      </Item134>
+      <Item135>
         <Filename Value="..\..\Crypto\Parameters\ClpIESWithCipherParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpIESWithCipherParameters.pas"/>
         <UnitName Value="ClpIESWithCipherParameters"/>
         <UnitName Value="ClpIESWithCipherParameters"/>
-      </Item145>
-      <Item146>
+      </Item135>
+      <Item136>
         <Filename Value="..\..\Crypto\Parameters\ClpIESParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpIESParameters.pas"/>
         <UnitName Value="ClpIESParameters"/>
         <UnitName Value="ClpIESParameters"/>
-      </Item146>
-      <Item147>
+      </Item136>
+      <Item137>
         <Filename Value="..\..\Crypto\Generators\ClpEphemeralKeyPairGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpEphemeralKeyPairGenerator.pas"/>
         <UnitName Value="ClpEphemeralKeyPairGenerator"/>
         <UnitName Value="ClpEphemeralKeyPairGenerator"/>
-      </Item147>
-      <Item148>
+      </Item137>
+      <Item138>
         <Filename Value="..\..\Crypto\Generators\ClpKdf2BytesGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpKdf2BytesGenerator.pas"/>
         <UnitName Value="ClpKdf2BytesGenerator"/>
         <UnitName Value="ClpKdf2BytesGenerator"/>
-      </Item148>
-      <Item149>
+      </Item138>
+      <Item139>
         <Filename Value="..\..\Crypto\Parameters\ClpIso18033KdfParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpIso18033KdfParameters.pas"/>
         <UnitName Value="ClpIso18033KdfParameters"/>
         <UnitName Value="ClpIso18033KdfParameters"/>
-      </Item149>
-      <Item150>
+      </Item139>
+      <Item140>
         <Filename Value="..\..\Crypto\Parameters\ClpKdfParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpKdfParameters.pas"/>
         <UnitName Value="ClpKdfParameters"/>
         <UnitName Value="ClpKdfParameters"/>
-      </Item150>
-      <Item151>
+      </Item140>
+      <Item141>
         <Filename Value="..\..\Interfaces\ClpIIESWithCipherParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIIESWithCipherParameters.pas"/>
         <UnitName Value="ClpIIESWithCipherParameters"/>
         <UnitName Value="ClpIIESWithCipherParameters"/>
-      </Item151>
-      <Item152>
+      </Item141>
+      <Item142>
         <Filename Value="..\..\Interfaces\ClpIIESParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIIESParameters.pas"/>
         <UnitName Value="ClpIIESParameters"/>
         <UnitName Value="ClpIIESParameters"/>
-      </Item152>
-      <Item153>
+      </Item142>
+      <Item143>
         <Filename Value="..\..\Interfaces\ClpIPascalCoinECIESKdfBytesGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIPascalCoinECIESKdfBytesGenerator.pas"/>
         <UnitName Value="ClpIPascalCoinECIESKdfBytesGenerator"/>
         <UnitName Value="ClpIPascalCoinECIESKdfBytesGenerator"/>
-      </Item153>
-      <Item154>
+      </Item143>
+      <Item144>
         <Filename Value="..\..\Interfaces\ClpIPascalCoinIESEngine.pas"/>
         <Filename Value="..\..\Interfaces\ClpIPascalCoinIESEngine.pas"/>
         <UnitName Value="ClpIPascalCoinIESEngine"/>
         <UnitName Value="ClpIPascalCoinIESEngine"/>
-      </Item154>
-      <Item155>
+      </Item144>
+      <Item145>
         <Filename Value="..\..\Interfaces\ClpIIESEngine.pas"/>
         <Filename Value="..\..\Interfaces\ClpIIESEngine.pas"/>
         <UnitName Value="ClpIIESEngine"/>
         <UnitName Value="ClpIIESEngine"/>
-      </Item155>
-      <Item156>
+      </Item145>
+      <Item146>
         <Filename Value="..\..\Interfaces\ClpIIESCipher.pas"/>
         <Filename Value="..\..\Interfaces\ClpIIESCipher.pas"/>
         <UnitName Value="ClpIIESCipher"/>
         <UnitName Value="ClpIIESCipher"/>
-      </Item156>
-      <Item157>
+      </Item146>
+      <Item147>
         <Filename Value="..\..\Interfaces\ClpIECIESPublicKeyParser.pas"/>
         <Filename Value="..\..\Interfaces\ClpIECIESPublicKeyParser.pas"/>
         <UnitName Value="ClpIECIESPublicKeyParser"/>
         <UnitName Value="ClpIECIESPublicKeyParser"/>
-      </Item157>
-      <Item158>
+      </Item147>
+      <Item148>
         <Filename Value="..\..\Interfaces\ClpIEphemeralKeyPairGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEphemeralKeyPairGenerator.pas"/>
         <UnitName Value="ClpIEphemeralKeyPairGenerator"/>
         <UnitName Value="ClpIEphemeralKeyPairGenerator"/>
-      </Item158>
-      <Item159>
+      </Item148>
+      <Item149>
         <Filename Value="..\..\Interfaces\ClpIEphemeralKeyPair.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEphemeralKeyPair.pas"/>
         <UnitName Value="ClpIEphemeralKeyPair"/>
         <UnitName Value="ClpIEphemeralKeyPair"/>
-      </Item159>
-      <Item160>
+      </Item149>
+      <Item150>
         <Filename Value="..\..\Interfaces\ClpIKeyParser.pas"/>
         <Filename Value="..\..\Interfaces\ClpIKeyParser.pas"/>
         <UnitName Value="ClpIKeyParser"/>
         <UnitName Value="ClpIKeyParser"/>
-      </Item160>
-      <Item161>
+      </Item150>
+      <Item151>
         <Filename Value="..\..\Interfaces\ClpIKdf2BytesGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIKdf2BytesGenerator.pas"/>
         <UnitName Value="ClpIKdf2BytesGenerator"/>
         <UnitName Value="ClpIKdf2BytesGenerator"/>
-      </Item161>
-      <Item162>
+      </Item151>
+      <Item152>
         <Filename Value="..\..\Interfaces\ClpIBaseKdfBytesGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIBaseKdfBytesGenerator.pas"/>
         <UnitName Value="ClpIBaseKdfBytesGenerator"/>
         <UnitName Value="ClpIBaseKdfBytesGenerator"/>
-      </Item162>
-      <Item163>
+      </Item152>
+      <Item153>
         <Filename Value="..\..\Interfaces\ClpIIso18033KdfParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIIso18033KdfParameters.pas"/>
         <UnitName Value="ClpIIso18033KdfParameters"/>
         <UnitName Value="ClpIIso18033KdfParameters"/>
-      </Item163>
-      <Item164>
+      </Item153>
+      <Item154>
         <Filename Value="..\..\Interfaces\ClpIKdfParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIKdfParameters.pas"/>
         <UnitName Value="ClpIKdfParameters"/>
         <UnitName Value="ClpIKdfParameters"/>
-      </Item164>
-      <Item165>
+      </Item154>
+      <Item155>
         <Filename Value="..\..\Interfaces\ClpIDerivationFunction.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDerivationFunction.pas"/>
         <UnitName Value="ClpIDerivationFunction"/>
         <UnitName Value="ClpIDerivationFunction"/>
-      </Item165>
-      <Item166>
+      </Item155>
+      <Item156>
         <Filename Value="..\..\Interfaces\ClpIDerivationParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDerivationParameters.pas"/>
         <UnitName Value="ClpIDerivationParameters"/>
         <UnitName Value="ClpIDerivationParameters"/>
-      </Item166>
-      <Item167>
+      </Item156>
+      <Item157>
         <Filename Value="..\..\Interfaces\ClpIECDHBasicAgreement.pas"/>
         <Filename Value="..\..\Interfaces\ClpIECDHBasicAgreement.pas"/>
         <UnitName Value="ClpIECDHBasicAgreement"/>
         <UnitName Value="ClpIECDHBasicAgreement"/>
-      </Item167>
-      <Item168>
+      </Item157>
+      <Item158>
         <Filename Value="..\..\Interfaces\ClpIBasicAgreement.pas"/>
         <Filename Value="..\..\Interfaces\ClpIBasicAgreement.pas"/>
         <UnitName Value="ClpIBasicAgreement"/>
         <UnitName Value="ClpIBasicAgreement"/>
-      </Item168>
-      <Item169>
+      </Item158>
+      <Item159>
         <Filename Value="..\..\Crypto\Generators\ClpCipherKeyGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpCipherKeyGenerator.pas"/>
         <UnitName Value="ClpCipherKeyGenerator"/>
         <UnitName Value="ClpCipherKeyGenerator"/>
-      </Item169>
-      <Item170>
+      </Item159>
+      <Item160>
         <Filename Value="..\..\Utils\ClpStringUtils.pas"/>
         <Filename Value="..\..\Utils\ClpStringUtils.pas"/>
         <UnitName Value="ClpStringUtils"/>
         <UnitName Value="ClpStringUtils"/>
-      </Item170>
-      <Item171>
+      </Item160>
+      <Item161>
         <Filename Value="..\..\Interfaces\ClpICipherKeyGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpICipherKeyGenerator.pas"/>
         <UnitName Value="ClpICipherKeyGenerator"/>
         <UnitName Value="ClpICipherKeyGenerator"/>
-      </Item171>
-      <Item172>
+      </Item161>
+      <Item162>
         <Filename Value="..\..\Interfaces\ClpIDigest.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDigest.pas"/>
         <UnitName Value="ClpIDigest"/>
         <UnitName Value="ClpIDigest"/>
-      </Item172>
-      <Item173>
+      </Item162>
+      <Item163>
         <Filename Value="..\..\Interfaces\ClpIStreamCipher.pas"/>
         <Filename Value="..\..\Interfaces\ClpIStreamCipher.pas"/>
         <UnitName Value="ClpIStreamCipher"/>
         <UnitName Value="ClpIStreamCipher"/>
-      </Item173>
-      <Item174>
+      </Item163>
+      <Item164>
         <Filename Value="CryptoLib4PascalPackage.pas"/>
         <Filename Value="CryptoLib4PascalPackage.pas"/>
         <AddToUsesPkgSection Value="False"/>
         <AddToUsesPkgSection Value="False"/>
         <UnitName Value="CryptoLib4PascalPackage"/>
         <UnitName Value="CryptoLib4PascalPackage"/>
-      </Item174>
-      <Item175>
+      </Item164>
+      <Item165>
         <Filename Value="..\..\Crypto\Generators\ClpPkcs5S2ParametersGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpPkcs5S2ParametersGenerator.pas"/>
         <UnitName Value="ClpPkcs5S2ParametersGenerator"/>
         <UnitName Value="ClpPkcs5S2ParametersGenerator"/>
-      </Item175>
-      <Item176>
+      </Item165>
+      <Item166>
         <Filename Value="..\..\Interfaces\ClpIPkcs5S2ParametersGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIPkcs5S2ParametersGenerator.pas"/>
         <UnitName Value="ClpIPkcs5S2ParametersGenerator"/>
         <UnitName Value="ClpIPkcs5S2ParametersGenerator"/>
-      </Item176>
-      <Item177>
+      </Item166>
+      <Item167>
         <Filename Value="..\..\Interfaces\ClpIPbeParametersGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIPbeParametersGenerator.pas"/>
         <UnitName Value="ClpIPbeParametersGenerator"/>
         <UnitName Value="ClpIPbeParametersGenerator"/>
-      </Item177>
-      <Item178>
+      </Item167>
+      <Item168>
         <Filename Value="..\..\Crypto\Generators\ClpPbeParametersGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpPbeParametersGenerator.pas"/>
         <UnitName Value="ClpPbeParametersGenerator"/>
         <UnitName Value="ClpPbeParametersGenerator"/>
-      </Item178>
-      <Item179>
+      </Item168>
+      <Item169>
         <Filename Value="..\..\Crypto\Macs\ClpHMac.pas"/>
         <Filename Value="..\..\Crypto\Macs\ClpHMac.pas"/>
         <UnitName Value="ClpHMac"/>
         <UnitName Value="ClpHMac"/>
-      </Item179>
-      <Item180>
+      </Item169>
+      <Item170>
         <Filename Value="..\..\Asn1\Misc\ClpMiscObjectIdentifiers.pas"/>
         <Filename Value="..\..\Asn1\Misc\ClpMiscObjectIdentifiers.pas"/>
         <UnitName Value="ClpMiscObjectIdentifiers"/>
         <UnitName Value="ClpMiscObjectIdentifiers"/>
-      </Item180>
-      <Item181>
+      </Item170>
+      <Item171>
         <Filename Value="..\..\Asn1\Iana\ClpIanaObjectIdentifiers.pas"/>
         <Filename Value="..\..\Asn1\Iana\ClpIanaObjectIdentifiers.pas"/>
         <UnitName Value="ClpIanaObjectIdentifiers"/>
         <UnitName Value="ClpIanaObjectIdentifiers"/>
-      </Item181>
-      <Item182>
+      </Item171>
+      <Item172>
         <Filename Value="..\..\Security\ClpMacUtilities.pas"/>
         <Filename Value="..\..\Security\ClpMacUtilities.pas"/>
         <UnitName Value="ClpMacUtilities"/>
         <UnitName Value="ClpMacUtilities"/>
-      </Item182>
-      <Item183>
+      </Item172>
+      <Item173>
         <Filename Value="..\..\Interfaces\ClpIMac.pas"/>
         <Filename Value="..\..\Interfaces\ClpIMac.pas"/>
         <UnitName Value="ClpIMac"/>
         <UnitName Value="ClpIMac"/>
-      </Item183>
-      <Item184>
+      </Item173>
+      <Item174>
         <Filename Value="..\..\Interfaces\ClpIHMac.pas"/>
         <Filename Value="..\..\Interfaces\ClpIHMac.pas"/>
         <UnitName Value="ClpIHMac"/>
         <UnitName Value="ClpIHMac"/>
-      </Item184>
-      <Item185>
+      </Item174>
+      <Item175>
         <Filename Value="..\..\Crypto\Signers\ClpDsaSigner.pas"/>
         <Filename Value="..\..\Crypto\Signers\ClpDsaSigner.pas"/>
         <UnitName Value="ClpDsaSigner"/>
         <UnitName Value="ClpDsaSigner"/>
-      </Item185>
-      <Item186>
+      </Item175>
+      <Item176>
         <Filename Value="..\..\Crypto\Generators\ClpDsaKeyPairGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpDsaKeyPairGenerator.pas"/>
         <UnitName Value="ClpDsaKeyPairGenerator"/>
         <UnitName Value="ClpDsaKeyPairGenerator"/>
-      </Item186>
-      <Item187>
+      </Item176>
+      <Item177>
         <Filename Value="..\..\Crypto\Signers\ClpECNRSigner.pas"/>
         <Filename Value="..\..\Crypto\Signers\ClpECNRSigner.pas"/>
         <UnitName Value="ClpECNRSigner"/>
         <UnitName Value="ClpECNRSigner"/>
-      </Item187>
-      <Item188>
+      </Item177>
+      <Item178>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaKeyGenerationParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaKeyGenerationParameters.pas"/>
         <UnitName Value="ClpDsaKeyGenerationParameters"/>
         <UnitName Value="ClpDsaKeyGenerationParameters"/>
-      </Item188>
-      <Item189>
+      </Item178>
+      <Item179>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaPrivateKeyParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaPrivateKeyParameters.pas"/>
         <UnitName Value="ClpDsaPrivateKeyParameters"/>
         <UnitName Value="ClpDsaPrivateKeyParameters"/>
-      </Item189>
-      <Item190>
+      </Item179>
+      <Item180>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaPublicKeyParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaPublicKeyParameters.pas"/>
         <UnitName Value="ClpDsaPublicKeyParameters"/>
         <UnitName Value="ClpDsaPublicKeyParameters"/>
-      </Item190>
-      <Item191>
+      </Item180>
+      <Item181>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaValidationParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaValidationParameters.pas"/>
         <UnitName Value="ClpDsaValidationParameters"/>
         <UnitName Value="ClpDsaValidationParameters"/>
-      </Item191>
-      <Item192>
+      </Item181>
+      <Item182>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaParameters.pas"/>
         <UnitName Value="ClpDsaParameters"/>
         <UnitName Value="ClpDsaParameters"/>
-      </Item192>
-      <Item193>
+      </Item182>
+      <Item183>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaKeyParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaKeyParameters.pas"/>
         <UnitName Value="ClpDsaKeyParameters"/>
         <UnitName Value="ClpDsaKeyParameters"/>
-      </Item193>
-      <Item194>
+      </Item183>
+      <Item184>
         <Filename Value="..\..\Interfaces\ClpIECNRSigner.pas"/>
         <Filename Value="..\..\Interfaces\ClpIECNRSigner.pas"/>
         <UnitName Value="ClpIECNRSigner"/>
         <UnitName Value="ClpIECNRSigner"/>
-      </Item194>
-      <Item195>
+      </Item184>
+      <Item185>
         <Filename Value="..\..\Interfaces\ClpIDsaSigner.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaSigner.pas"/>
         <UnitName Value="ClpIDsaSigner"/>
         <UnitName Value="ClpIDsaSigner"/>
-      </Item195>
-      <Item196>
+      </Item185>
+      <Item186>
         <Filename Value="..\..\Interfaces\ClpIDsaKeyPairGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaKeyPairGenerator.pas"/>
         <UnitName Value="ClpIDsaKeyPairGenerator"/>
         <UnitName Value="ClpIDsaKeyPairGenerator"/>
-      </Item196>
-      <Item197>
+      </Item186>
+      <Item187>
         <Filename Value="..\..\Interfaces\ClpIDsaPrivateKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaPrivateKeyParameters.pas"/>
         <UnitName Value="ClpIDsaPrivateKeyParameters"/>
         <UnitName Value="ClpIDsaPrivateKeyParameters"/>
-      </Item197>
-      <Item198>
+      </Item187>
+      <Item188>
         <Filename Value="..\..\Interfaces\ClpIDsaKeyGenerationParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaKeyGenerationParameters.pas"/>
         <UnitName Value="ClpIDsaKeyGenerationParameters"/>
         <UnitName Value="ClpIDsaKeyGenerationParameters"/>
-      </Item198>
-      <Item199>
+      </Item188>
+      <Item189>
         <Filename Value="..\..\Interfaces\ClpIDsaKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaKeyParameters.pas"/>
         <UnitName Value="ClpIDsaKeyParameters"/>
         <UnitName Value="ClpIDsaKeyParameters"/>
-      </Item199>
-      <Item200>
+      </Item189>
+      <Item190>
         <Filename Value="..\..\Interfaces\ClpIDsaPublicKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaPublicKeyParameters.pas"/>
         <UnitName Value="ClpIDsaPublicKeyParameters"/>
         <UnitName Value="ClpIDsaPublicKeyParameters"/>
-      </Item200>
-      <Item201>
+      </Item190>
+      <Item191>
         <Filename Value="..\..\Interfaces\ClpIDsaParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaParameters.pas"/>
         <UnitName Value="ClpIDsaParameters"/>
         <UnitName Value="ClpIDsaParameters"/>
-      </Item201>
-      <Item202>
+      </Item191>
+      <Item192>
         <Filename Value="..\..\Interfaces\ClpIDsaValidationParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaValidationParameters.pas"/>
         <UnitName Value="ClpIDsaValidationParameters"/>
         <UnitName Value="ClpIDsaValidationParameters"/>
-      </Item202>
-      <Item203>
+      </Item192>
+      <Item193>
         <Filename Value="..\..\Crypto\Digests\ClpDigest.pas"/>
         <Filename Value="..\..\Crypto\Digests\ClpDigest.pas"/>
         <UnitName Value="ClpDigest"/>
         <UnitName Value="ClpDigest"/>
-      </Item203>
-      <Item204>
+      </Item193>
+      <Item194>
         <Filename Value="..\..\Crypto\Agreement\ClpECDHCBasicAgreement.pas"/>
         <Filename Value="..\..\Crypto\Agreement\ClpECDHCBasicAgreement.pas"/>
         <UnitName Value="ClpECDHCBasicAgreement"/>
         <UnitName Value="ClpECDHCBasicAgreement"/>
-      </Item204>
-      <Item205>
+      </Item194>
+      <Item195>
         <Filename Value="..\..\Interfaces\ClpIECDHCBasicAgreement.pas"/>
         <Filename Value="..\..\Interfaces\ClpIECDHCBasicAgreement.pas"/>
         <UnitName Value="ClpIECDHCBasicAgreement"/>
         <UnitName Value="ClpIECDHCBasicAgreement"/>
-      </Item205>
-      <Item206>
+      </Item195>
+      <Item196>
         <Filename Value="..\..\Crypto\Signers\ClpHMacDsaKCalculator.pas"/>
         <Filename Value="..\..\Crypto\Signers\ClpHMacDsaKCalculator.pas"/>
         <UnitName Value="ClpHMacDsaKCalculator"/>
         <UnitName Value="ClpHMacDsaKCalculator"/>
-      </Item206>
-      <Item207>
+      </Item196>
+      <Item197>
         <Filename Value="..\..\Interfaces\ClpIHMacDsaKCalculator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIHMacDsaKCalculator.pas"/>
         <UnitName Value="ClpIHMacDsaKCalculator"/>
         <UnitName Value="ClpIHMacDsaKCalculator"/>
-      </Item207>
-      <Item208>
+      </Item197>
+      <Item198>
         <Filename Value="..\..\Crypto\Generators\ClpHkdfBytesGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpHkdfBytesGenerator.pas"/>
         <UnitName Value="ClpHkdfBytesGenerator"/>
         <UnitName Value="ClpHkdfBytesGenerator"/>
-      </Item208>
-      <Item209>
+      </Item198>
+      <Item199>
         <Filename Value="..\..\Interfaces\ClpIHkdfBytesGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIHkdfBytesGenerator.pas"/>
         <UnitName Value="ClpIHkdfBytesGenerator"/>
         <UnitName Value="ClpIHkdfBytesGenerator"/>
-      </Item209>
-      <Item210>
+      </Item199>
+      <Item200>
         <Filename Value="..\..\Crypto\Parameters\ClpHkdfParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpHkdfParameters.pas"/>
         <UnitName Value="ClpHkdfParameters"/>
         <UnitName Value="ClpHkdfParameters"/>
-      </Item210>
-      <Item211>
+      </Item200>
+      <Item201>
         <Filename Value="..\..\Interfaces\ClpIHkdfParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIHkdfParameters.pas"/>
         <UnitName Value="ClpIHkdfParameters"/>
         <UnitName Value="ClpIHkdfParameters"/>
-      </Item211>
-      <Item212>
+      </Item201>
+      <Item202>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaParameterGenerationParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpDsaParameterGenerationParameters.pas"/>
         <UnitName Value="ClpDsaParameterGenerationParameters"/>
         <UnitName Value="ClpDsaParameterGenerationParameters"/>
-      </Item212>
-      <Item213>
+      </Item202>
+      <Item203>
         <Filename Value="..\..\Interfaces\ClpIDsaParameterGenerationParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaParameterGenerationParameters.pas"/>
         <UnitName Value="ClpIDsaParameterGenerationParameters"/>
         <UnitName Value="ClpIDsaParameterGenerationParameters"/>
-      </Item213>
-      <Item214>
+      </Item203>
+      <Item204>
         <Filename Value="..\..\Interfaces\ClpIValidityPrecompInfo.pas"/>
         <Filename Value="..\..\Interfaces\ClpIValidityPrecompInfo.pas"/>
         <UnitName Value="ClpIValidityPrecompInfo"/>
         <UnitName Value="ClpIValidityPrecompInfo"/>
-      </Item214>
-      <Item215>
+      </Item204>
+      <Item205>
         <Filename Value="..\..\Crypto\Generators\ClpDsaParametersGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpDsaParametersGenerator.pas"/>
         <UnitName Value="ClpDsaParametersGenerator"/>
         <UnitName Value="ClpDsaParametersGenerator"/>
-      </Item215>
-      <Item216>
+      </Item205>
+      <Item206>
         <Filename Value="..\..\Asn1\X509\ClpDsaParameter.pas"/>
         <Filename Value="..\..\Asn1\X509\ClpDsaParameter.pas"/>
         <UnitName Value="ClpDsaParameter"/>
         <UnitName Value="ClpDsaParameter"/>
-      </Item216>
-      <Item217>
+      </Item206>
+      <Item207>
         <Filename Value="..\..\Interfaces\ClpIDsaParameter.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaParameter.pas"/>
         <UnitName Value="ClpIDsaParameter"/>
         <UnitName Value="ClpIDsaParameter"/>
-      </Item217>
-      <Item218>
+      </Item207>
+      <Item208>
         <Filename Value="..\..\Interfaces\ClpIKeyEncoder.pas"/>
         <Filename Value="..\..\Interfaces\ClpIKeyEncoder.pas"/>
         <UnitName Value="ClpIKeyEncoder"/>
         <UnitName Value="ClpIKeyEncoder"/>
-      </Item218>
-      <Item219>
+      </Item208>
+      <Item209>
         <Filename Value="..\..\Interfaces\ClpIDsaParametersGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaParametersGenerator.pas"/>
         <UnitName Value="ClpIDsaParametersGenerator"/>
         <UnitName Value="ClpIDsaParametersGenerator"/>
-      </Item219>
-      <Item220>
+      </Item209>
+      <Item210>
         <Filename Value="..\..\Interfaces\ClpIPreCompCallBack.pas"/>
         <Filename Value="..\..\Interfaces\ClpIPreCompCallBack.pas"/>
         <UnitName Value="ClpIPreCompCallBack"/>
         <UnitName Value="ClpIPreCompCallBack"/>
-      </Item220>
-      <Item221>
+      </Item210>
+      <Item211>
         <Filename Value="..\..\Math\EC\Multiplier\ClpValidityPrecompInfo.pas"/>
         <Filename Value="..\..\Math\EC\Multiplier\ClpValidityPrecompInfo.pas"/>
         <AddToUsesPkgSection Value="False"/>
         <AddToUsesPkgSection Value="False"/>
         <UnitName Value="ClpValidityPrecompInfo"/>
         <UnitName Value="ClpValidityPrecompInfo"/>
-      </Item221>
-      <Item222>
+      </Item211>
+      <Item212>
         <Filename Value="..\..\Asn1\Nist\ClpNistNamedCurves.pas"/>
         <Filename Value="..\..\Asn1\Nist\ClpNistNamedCurves.pas"/>
         <UnitName Value="ClpNistNamedCurves"/>
         <UnitName Value="ClpNistNamedCurves"/>
-      </Item222>
-      <Item223>
+      </Item212>
+      <Item213>
         <Filename Value="..\..\Math\Raw\ClpNat256.pas"/>
         <Filename Value="..\..\Math\Raw\ClpNat256.pas"/>
         <UnitName Value="ClpNat256"/>
         <UnitName Value="ClpNat256"/>
-      </Item223>
-      <Item224>
+      </Item213>
+      <Item214>
         <Filename Value="..\..\Math\Raw\ClpNat320.pas"/>
         <Filename Value="..\..\Math\Raw\ClpNat320.pas"/>
         <UnitName Value="ClpNat320"/>
         <UnitName Value="ClpNat320"/>
-      </Item224>
-      <Item225>
+      </Item214>
+      <Item215>
         <Filename Value="..\..\Crypto\Engines\ClpAesLightEngine.pas"/>
         <Filename Value="..\..\Crypto\Engines\ClpAesLightEngine.pas"/>
         <UnitName Value="ClpAesLightEngine"/>
         <UnitName Value="ClpAesLightEngine"/>
-      </Item225>
-      <Item226>
+      </Item215>
+      <Item216>
         <Filename Value="..\..\Interfaces\ClpIAesLightEngine.pas"/>
         <Filename Value="..\..\Interfaces\ClpIAesLightEngine.pas"/>
         <UnitName Value="ClpIAesLightEngine"/>
         <UnitName Value="ClpIAesLightEngine"/>
-      </Item226>
-      <Item227>
+      </Item216>
+      <Item217>
         <Filename Value="..\..\Crypto\EC\ClpCustomNamedCurves.pas"/>
         <Filename Value="..\..\Crypto\EC\ClpCustomNamedCurves.pas"/>
         <UnitName Value="ClpCustomNamedCurves"/>
         <UnitName Value="ClpCustomNamedCurves"/>
-      </Item227>
-      <Item228>
+      </Item217>
+      <Item218>
         <Filename Value="..\..\Math\Raw\ClpNat384.pas"/>
         <Filename Value="..\..\Math\Raw\ClpNat384.pas"/>
         <UnitName Value="ClpNat384"/>
         <UnitName Value="ClpNat384"/>
-      </Item228>
-      <Item229>
+      </Item218>
+      <Item219>
         <Filename Value="..\..\Math\Raw\ClpNat192.pas"/>
         <Filename Value="..\..\Math\Raw\ClpNat192.pas"/>
         <UnitName Value="ClpNat192"/>
         <UnitName Value="ClpNat192"/>
-      </Item229>
-      <Item230>
+      </Item219>
+      <Item220>
         <Filename Value="..\..\Math\Raw\ClpNat512.pas"/>
         <Filename Value="..\..\Math\Raw\ClpNat512.pas"/>
         <UnitName Value="ClpNat512"/>
         <UnitName Value="ClpNat512"/>
-      </Item230>
-      <Item231>
+      </Item220>
+      <Item221>
         <Filename Value="..\..\Math\Raw\ClpInterleave.pas"/>
         <Filename Value="..\..\Math\Raw\ClpInterleave.pas"/>
         <UnitName Value="ClpInterleave"/>
         <UnitName Value="ClpInterleave"/>
-      </Item231>
-      <Item232>
+      </Item221>
+      <Item222>
         <Filename Value="..\..\Asn1\Bsi\ClpBsiObjectIdentifiers.pas"/>
         <Filename Value="..\..\Asn1\Bsi\ClpBsiObjectIdentifiers.pas"/>
         <UnitName Value="ClpBsiObjectIdentifiers"/>
         <UnitName Value="ClpBsiObjectIdentifiers"/>
-      </Item232>
-      <Item233>
+      </Item222>
+      <Item223>
         <Filename Value="..\..\Asn1\Eac\ClpEacObjectIdentifiers.pas"/>
         <Filename Value="..\..\Asn1\Eac\ClpEacObjectIdentifiers.pas"/>
         <UnitName Value="ClpEacObjectIdentifiers"/>
         <UnitName Value="ClpEacObjectIdentifiers"/>
-      </Item233>
-      <Item234>
+      </Item223>
+      <Item224>
         <Filename Value="..\..\Interfaces\ClpIDsaExt.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDsaExt.pas"/>
         <UnitName Value="ClpIDsaExt"/>
         <UnitName Value="ClpIDsaExt"/>
-      </Item234>
-      <Item235>
+      </Item224>
+      <Item225>
         <Filename Value="..\..\Interfaces\ClpISchnorrDigestSigner.pas"/>
         <Filename Value="..\..\Interfaces\ClpISchnorrDigestSigner.pas"/>
         <UnitName Value="ClpISchnorrDigestSigner"/>
         <UnitName Value="ClpISchnorrDigestSigner"/>
-      </Item235>
-      <Item236>
+      </Item225>
+      <Item226>
         <Filename Value="..\..\Interfaces\ClpIECSchnorrSipaSigner.pas"/>
         <Filename Value="..\..\Interfaces\ClpIECSchnorrSipaSigner.pas"/>
         <UnitName Value="ClpIECSchnorrSipaSigner"/>
         <UnitName Value="ClpIECSchnorrSipaSigner"/>
-      </Item236>
-      <Item237>
+      </Item226>
+      <Item227>
         <Filename Value="..\..\Crypto\Signers\ClpECSchnorrSipaSigner.pas"/>
         <Filename Value="..\..\Crypto\Signers\ClpECSchnorrSipaSigner.pas"/>
         <UnitName Value="ClpECSchnorrSipaSigner"/>
         <UnitName Value="ClpECSchnorrSipaSigner"/>
-      </Item237>
-      <Item238>
+      </Item227>
+      <Item228>
         <Filename Value="..\..\Crypto\Signers\ClpSchnorrDigestSigner.pas"/>
         <Filename Value="..\..\Crypto\Signers\ClpSchnorrDigestSigner.pas"/>
         <UnitName Value="ClpSchnorrDigestSigner"/>
         <UnitName Value="ClpSchnorrDigestSigner"/>
-      </Item238>
-      <Item239>
+      </Item228>
+      <Item229>
         <Filename Value="..\..\Interfaces\ClpISchnorr.pas"/>
         <Filename Value="..\..\Interfaces\ClpISchnorr.pas"/>
         <UnitName Value="ClpISchnorr"/>
         <UnitName Value="ClpISchnorr"/>
-      </Item239>
-      <Item240>
+      </Item229>
+      <Item230>
         <Filename Value="..\..\Interfaces\ClpISchnorrExt.pas"/>
         <Filename Value="..\..\Interfaces\ClpISchnorrExt.pas"/>
         <UnitName Value="ClpISchnorrExt"/>
         <UnitName Value="ClpISchnorrExt"/>
-      </Item240>
-      <Item241>
+      </Item230>
+      <Item231>
         <Filename Value="..\..\Crypto\Engines\ClpBlowfishEngine.pas"/>
         <Filename Value="..\..\Crypto\Engines\ClpBlowfishEngine.pas"/>
         <UnitName Value="ClpBlowfishEngine"/>
         <UnitName Value="ClpBlowfishEngine"/>
-      </Item241>
-      <Item242>
+      </Item231>
+      <Item232>
         <Filename Value="..\..\Interfaces\ClpIBlowfishEngine.pas"/>
         <Filename Value="..\..\Interfaces\ClpIBlowfishEngine.pas"/>
         <UnitName Value="ClpIBlowfishEngine"/>
         <UnitName Value="ClpIBlowfishEngine"/>
-      </Item242>
-      <Item243>
+      </Item232>
+      <Item233>
         <Filename Value="..\..\Math\EC\ClpECC.pas"/>
         <Filename Value="..\..\Math\EC\ClpECC.pas"/>
         <UnitName Value="ClpECC"/>
         <UnitName Value="ClpECC"/>
-      </Item243>
-      <Item244>
+      </Item233>
+      <Item234>
         <Filename Value="..\..\Asn1\ClpAsn1Objects.pas"/>
         <Filename Value="..\..\Asn1\ClpAsn1Objects.pas"/>
         <UnitName Value="ClpAsn1Objects"/>
         <UnitName Value="ClpAsn1Objects"/>
-      </Item244>
-      <Item245>
+      </Item234>
+      <Item235>
         <Filename Value="..\..\Crypto\Signers\SignersEncodings\ClpSignersEncodings.pas"/>
         <Filename Value="..\..\Crypto\Signers\SignersEncodings\ClpSignersEncodings.pas"/>
         <UnitName Value="ClpSignersEncodings"/>
         <UnitName Value="ClpSignersEncodings"/>
-      </Item245>
-      <Item246>
+      </Item235>
+      <Item236>
         <Filename Value="..\..\Interfaces\ClpISignersEncodings.pas"/>
         <Filename Value="..\..\Interfaces\ClpISignersEncodings.pas"/>
         <UnitName Value="ClpISignersEncodings"/>
         <UnitName Value="ClpISignersEncodings"/>
-      </Item246>
-      <Item247>
+      </Item236>
+      <Item237>
         <Filename Value="..\..\Utils\Encoders\ClpEncoders.pas"/>
         <Filename Value="..\..\Utils\Encoders\ClpEncoders.pas"/>
         <UnitName Value="ClpEncoders"/>
         <UnitName Value="ClpEncoders"/>
-      </Item247>
-      <Item248>
+      </Item237>
+      <Item238>
         <Filename Value="..\..\Math\EC\Custom\Sec\ClpSecT283Custom.pas"/>
         <Filename Value="..\..\Math\EC\Custom\Sec\ClpSecT283Custom.pas"/>
         <UnitName Value="ClpSecT283Custom"/>
         <UnitName Value="ClpSecT283Custom"/>
-      </Item248>
-      <Item249>
+      </Item238>
+      <Item239>
         <Filename Value="..\..\Math\EC\Custom\Sec\ClpSecP521R1Custom.pas"/>
         <Filename Value="..\..\Math\EC\Custom\Sec\ClpSecP521R1Custom.pas"/>
         <UnitName Value="ClpSecP521R1Custom"/>
         <UnitName Value="ClpSecP521R1Custom"/>
-      </Item249>
-      <Item250>
+      </Item239>
+      <Item240>
         <Filename Value="..\..\Math\EC\Custom\Sec\ClpSecP384R1Custom.pas"/>
         <Filename Value="..\..\Math\EC\Custom\Sec\ClpSecP384R1Custom.pas"/>
         <UnitName Value="ClpSecP384R1Custom"/>
         <UnitName Value="ClpSecP384R1Custom"/>
-      </Item250>
-      <Item251>
+      </Item240>
+      <Item241>
         <Filename Value="..\..\Math\EC\Custom\Sec\ClpSecP256R1Custom.pas"/>
         <Filename Value="..\..\Math\EC\Custom\Sec\ClpSecP256R1Custom.pas"/>
         <UnitName Value="ClpSecP256R1Custom"/>
         <UnitName Value="ClpSecP256R1Custom"/>
-      </Item251>
-      <Item252>
+      </Item241>
+      <Item242>
         <Filename Value="..\..\Math\EC\Custom\Sec\ClpSecP256K1Custom.pas"/>
         <Filename Value="..\..\Math\EC\Custom\Sec\ClpSecP256K1Custom.pas"/>
         <UnitName Value="ClpSecP256K1Custom"/>
         <UnitName Value="ClpSecP256K1Custom"/>
-      </Item252>
-      <Item253>
+      </Item242>
+      <Item243>
         <Filename Value="..\..\Interfaces\ClpIX9ECC.pas"/>
         <Filename Value="..\..\Interfaces\ClpIX9ECC.pas"/>
         <UnitName Value="ClpIX9ECC"/>
         <UnitName Value="ClpIX9ECC"/>
-      </Item253>
-      <Item254>
+      </Item243>
+      <Item244>
         <Filename Value="..\..\Asn1\X9\ClpX9ECC.pas"/>
         <Filename Value="..\..\Asn1\X9\ClpX9ECC.pas"/>
         <UnitName Value="ClpX9ECC"/>
         <UnitName Value="ClpX9ECC"/>
-      </Item254>
-      <Item255>
+      </Item244>
+      <Item245>
         <Filename Value="..\..\Interfaces\ClpIAsn1Objects.pas"/>
         <Filename Value="..\..\Interfaces\ClpIAsn1Objects.pas"/>
         <UnitName Value="ClpIAsn1Objects"/>
         <UnitName Value="ClpIAsn1Objects"/>
-      </Item255>
-      <Item256>
+      </Item245>
+      <Item246>
         <Filename Value="..\..\Crypto\Modes\ClpBlockCipherModes.pas"/>
         <Filename Value="..\..\Crypto\Modes\ClpBlockCipherModes.pas"/>
         <UnitName Value="ClpBlockCipherModes"/>
         <UnitName Value="ClpBlockCipherModes"/>
-      </Item256>
-      <Item257>
+      </Item246>
+      <Item247>
         <Filename Value="..\..\Math\EC\ClpECCurveConstants.pas"/>
         <Filename Value="..\..\Math\EC\ClpECCurveConstants.pas"/>
         <UnitName Value="ClpECCurveConstants"/>
         <UnitName Value="ClpECCurveConstants"/>
-      </Item257>
-      <Item258>
+      </Item247>
+      <Item248>
         <Filename Value="..\..\Interfaces\ClpIBlockCipherModes.pas"/>
         <Filename Value="..\..\Interfaces\ClpIBlockCipherModes.pas"/>
         <UnitName Value="ClpIBlockCipherModes"/>
         <UnitName Value="ClpIBlockCipherModes"/>
-      </Item258>
-      <Item259>
+      </Item248>
+      <Item249>
         <Filename Value="..\..\Interfaces\ClpIPaddingModes.pas"/>
         <Filename Value="..\..\Interfaces\ClpIPaddingModes.pas"/>
         <UnitName Value="ClpIPaddingModes"/>
         <UnitName Value="ClpIPaddingModes"/>
-      </Item259>
-      <Item260>
+      </Item249>
+      <Item250>
         <Filename Value="..\..\Interfaces\ClpISecP256K1Custom.pas"/>
         <Filename Value="..\..\Interfaces\ClpISecP256K1Custom.pas"/>
         <UnitName Value="ClpISecP256K1Custom"/>
         <UnitName Value="ClpISecP256K1Custom"/>
-      </Item260>
-      <Item261>
+      </Item250>
+      <Item251>
         <Filename Value="..\..\Interfaces\ClpISecP256R1Custom.pas"/>
         <Filename Value="..\..\Interfaces\ClpISecP256R1Custom.pas"/>
         <UnitName Value="ClpISecP256R1Custom"/>
         <UnitName Value="ClpISecP256R1Custom"/>
-      </Item261>
-      <Item262>
+      </Item251>
+      <Item252>
         <Filename Value="..\..\Interfaces\ClpISecP384R1Custom.pas"/>
         <Filename Value="..\..\Interfaces\ClpISecP384R1Custom.pas"/>
         <UnitName Value="ClpISecP384R1Custom"/>
         <UnitName Value="ClpISecP384R1Custom"/>
-      </Item262>
-      <Item263>
+      </Item252>
+      <Item253>
         <Filename Value="..\..\Interfaces\ClpISecP521R1Custom.pas"/>
         <Filename Value="..\..\Interfaces\ClpISecP521R1Custom.pas"/>
         <UnitName Value="ClpISecP521R1Custom"/>
         <UnitName Value="ClpISecP521R1Custom"/>
-      </Item263>
-      <Item264>
+      </Item253>
+      <Item254>
         <Filename Value="..\..\Interfaces\ClpISecT283Custom.pas"/>
         <Filename Value="..\..\Interfaces\ClpISecT283Custom.pas"/>
         <UnitName Value="ClpISecT283Custom"/>
         <UnitName Value="ClpISecT283Custom"/>
-      </Item264>
-      <Item265>
+      </Item254>
+      <Item255>
         <Filename Value="..\..\Crypto\Paddings\ClpPaddingModes.pas"/>
         <Filename Value="..\..\Crypto\Paddings\ClpPaddingModes.pas"/>
         <UnitName Value="ClpPaddingModes"/>
         <UnitName Value="ClpPaddingModes"/>
-      </Item265>
-      <Item266>
+      </Item255>
+      <Item256>
         <Filename Value="..\..\Interfaces\ClpIECC.pas"/>
         <Filename Value="..\..\Interfaces\ClpIECC.pas"/>
         <UnitName Value="ClpIECC"/>
         <UnitName Value="ClpIECC"/>
-      </Item266>
-      <Item267>
+      </Item256>
+      <Item257>
         <Filename Value="..\..\Interfaces\ClpISpeckEngine.pas"/>
         <Filename Value="..\..\Interfaces\ClpISpeckEngine.pas"/>
         <UnitName Value="ClpISpeckEngine"/>
         <UnitName Value="ClpISpeckEngine"/>
-      </Item267>
-      <Item268>
+      </Item257>
+      <Item258>
         <Filename Value="..\..\Crypto\Engines\ClpSpeckEngine.pas"/>
         <Filename Value="..\..\Crypto\Engines\ClpSpeckEngine.pas"/>
         <UnitName Value="ClpSpeckEngine"/>
         <UnitName Value="ClpSpeckEngine"/>
-      </Item268>
-      <Item269>
+      </Item258>
+      <Item259>
         <Filename Value="..\..\Interfaces\ClpIBufferedStreamCipher.pas"/>
         <Filename Value="..\..\Interfaces\ClpIBufferedStreamCipher.pas"/>
         <UnitName Value="ClpIBufferedStreamCipher"/>
         <UnitName Value="ClpIBufferedStreamCipher"/>
-      </Item269>
-      <Item270>
+      </Item259>
+      <Item260>
         <Filename Value="..\..\Interfaces\ClpIChaChaEngine.pas"/>
         <Filename Value="..\..\Interfaces\ClpIChaChaEngine.pas"/>
         <UnitName Value="ClpIChaChaEngine"/>
         <UnitName Value="ClpIChaChaEngine"/>
-      </Item270>
-      <Item271>
+      </Item260>
+      <Item261>
         <Filename Value="..\..\Interfaces\ClpIXSalsa20Engine.pas"/>
         <Filename Value="..\..\Interfaces\ClpIXSalsa20Engine.pas"/>
         <UnitName Value="ClpIXSalsa20Engine"/>
         <UnitName Value="ClpIXSalsa20Engine"/>
-      </Item271>
-      <Item272>
+      </Item261>
+      <Item262>
         <Filename Value="..\..\Interfaces\ClpISalsa20Engine.pas"/>
         <Filename Value="..\..\Interfaces\ClpISalsa20Engine.pas"/>
         <UnitName Value="ClpISalsa20Engine"/>
         <UnitName Value="ClpISalsa20Engine"/>
-      </Item272>
-      <Item273>
+      </Item262>
+      <Item263>
         <Filename Value="..\..\Crypto\ClpBufferedStreamCipher.pas"/>
         <Filename Value="..\..\Crypto\ClpBufferedStreamCipher.pas"/>
         <UnitName Value="ClpBufferedStreamCipher"/>
         <UnitName Value="ClpBufferedStreamCipher"/>
-      </Item273>
-      <Item274>
+      </Item263>
+      <Item264>
         <Filename Value="..\..\Crypto\Engines\ClpSalsa20Engine.pas"/>
         <Filename Value="..\..\Crypto\Engines\ClpSalsa20Engine.pas"/>
         <UnitName Value="ClpSalsa20Engine"/>
         <UnitName Value="ClpSalsa20Engine"/>
-      </Item274>
-      <Item275>
+      </Item264>
+      <Item265>
         <Filename Value="..\..\Crypto\Engines\ClpXSalsa20Engine.pas"/>
         <Filename Value="..\..\Crypto\Engines\ClpXSalsa20Engine.pas"/>
         <UnitName Value="ClpXSalsa20Engine"/>
         <UnitName Value="ClpXSalsa20Engine"/>
-      </Item275>
-      <Item276>
+      </Item265>
+      <Item266>
         <Filename Value="..\..\Crypto\Engines\ClpChaChaEngine.pas"/>
         <Filename Value="..\..\Crypto\Engines\ClpChaChaEngine.pas"/>
         <UnitName Value="ClpChaChaEngine"/>
         <UnitName Value="ClpChaChaEngine"/>
-      </Item276>
-      <Item277>
+      </Item266>
+      <Item267>
         <Filename Value="..\..\Interfaces\ClpIRijndaelEngine.pas"/>
         <Filename Value="..\..\Interfaces\ClpIRijndaelEngine.pas"/>
         <UnitName Value="ClpIRijndaelEngine"/>
         <UnitName Value="ClpIRijndaelEngine"/>
-      </Item277>
-      <Item278>
+      </Item267>
+      <Item268>
         <Filename Value="..\..\Crypto\Engines\ClpRijndaelEngine.pas"/>
         <Filename Value="..\..\Crypto\Engines\ClpRijndaelEngine.pas"/>
         <UnitName Value="ClpRijndaelEngine"/>
         <UnitName Value="ClpRijndaelEngine"/>
-      </Item278>
-      <Item279>
+      </Item268>
+      <Item269>
         <Filename Value="..\..\Interfaces\ClpIIESParameterSpec.pas"/>
         <Filename Value="..\..\Interfaces\ClpIIESParameterSpec.pas"/>
         <UnitName Value="ClpIIESParameterSpec"/>
         <UnitName Value="ClpIIESParameterSpec"/>
-      </Item279>
-      <Item280>
+      </Item269>
+      <Item270>
         <Filename Value="..\..\Interfaces\ClpIAlgorithmParameterSpec.pas"/>
         <Filename Value="..\..\Interfaces\ClpIAlgorithmParameterSpec.pas"/>
         <UnitName Value="ClpIAlgorithmParameterSpec"/>
         <UnitName Value="ClpIAlgorithmParameterSpec"/>
-      </Item280>
-      <Item281>
+      </Item270>
+      <Item271>
         <Filename Value="..\..\Crypto\Parameters\ClpIESParameterSpec.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpIESParameterSpec.pas"/>
         <UnitName Value="ClpIESParameterSpec"/>
         <UnitName Value="ClpIESParameterSpec"/>
-      </Item281>
-      <Item282>
+      </Item271>
+      <Item272>
         <Filename Value="..\..\Math\EC\Custom\Djb\ClpCurve25519Custom.pas"/>
         <Filename Value="..\..\Math\EC\Custom\Djb\ClpCurve25519Custom.pas"/>
         <UnitName Value="ClpCurve25519Custom"/>
         <UnitName Value="ClpCurve25519Custom"/>
-      </Item282>
-      <Item283>
+      </Item272>
+      <Item273>
         <Filename Value="..\..\Interfaces\ClpICurve25519Custom.pas"/>
         <Filename Value="..\..\Interfaces\ClpICurve25519Custom.pas"/>
         <UnitName Value="ClpICurve25519Custom"/>
         <UnitName Value="ClpICurve25519Custom"/>
-      </Item283>
-      <Item284>
+      </Item273>
+      <Item274>
         <Filename Value="..\..\Crypto\Engines\ClpSpeckLegacyEngine.pas"/>
         <Filename Value="..\..\Crypto\Engines\ClpSpeckLegacyEngine.pas"/>
         <UnitName Value="ClpSpeckLegacyEngine"/>
         <UnitName Value="ClpSpeckLegacyEngine"/>
-      </Item284>
-      <Item285>
+      </Item274>
+      <Item275>
         <Filename Value="..\..\Interfaces\ClpISpeckLegacyEngine.pas"/>
         <Filename Value="..\..\Interfaces\ClpISpeckLegacyEngine.pas"/>
         <UnitName Value="ClpISpeckLegacyEngine"/>
         <UnitName Value="ClpISpeckLegacyEngine"/>
-      </Item285>
-      <Item286>
+      </Item275>
+      <Item276>
         <Filename Value="..\..\Interfaces\ClpIEd25519.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519.pas"/>
         <UnitName Value="ClpIEd25519"/>
         <UnitName Value="ClpIEd25519"/>
-      </Item286>
-      <Item287>
+      </Item276>
+      <Item277>
         <Filename Value="..\..\Interfaces\ClpIEd25519Blake2B.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519Blake2B.pas"/>
         <UnitName Value="ClpIEd25519Blake2B"/>
         <UnitName Value="ClpIEd25519Blake2B"/>
-      </Item287>
-      <Item288>
+      </Item277>
+      <Item278>
         <Filename Value="..\..\Math\EC\Rfc7748\ClpX25519Field.pas"/>
         <Filename Value="..\..\Math\EC\Rfc7748\ClpX25519Field.pas"/>
         <UnitName Value="ClpX25519Field"/>
         <UnitName Value="ClpX25519Field"/>
-      </Item288>
-      <Item289>
+      </Item278>
+      <Item279>
         <Filename Value="..\..\Math\EC\Rfc8032\ClpEd25519.pas"/>
         <Filename Value="..\..\Math\EC\Rfc8032\ClpEd25519.pas"/>
         <UnitName Value="ClpEd25519"/>
         <UnitName Value="ClpEd25519"/>
-      </Item289>
-      <Item290>
+      </Item279>
+      <Item280>
         <Filename Value="..\..\Math\EC\Rfc8032\ClpEd25519Blake2B.pas"/>
         <Filename Value="..\..\Math\EC\Rfc8032\ClpEd25519Blake2B.pas"/>
         <UnitName Value="ClpEd25519Blake2B"/>
         <UnitName Value="ClpEd25519Blake2B"/>
-      </Item290>
-      <Item291>
+      </Item280>
+      <Item281>
         <Filename Value="..\..\Math\EC\Rfc7748\ClpX25519.pas"/>
         <Filename Value="..\..\Math\EC\Rfc7748\ClpX25519.pas"/>
         <UnitName Value="ClpX25519"/>
         <UnitName Value="ClpX25519"/>
-      </Item291>
-      <Item292>
+      </Item281>
+      <Item282>
         <Filename Value="..\..\Asn1\Edec\ClpEdECObjectIdentifiers.pas"/>
         <Filename Value="..\..\Asn1\Edec\ClpEdECObjectIdentifiers.pas"/>
         <UnitName Value="ClpEdECObjectIdentifiers"/>
         <UnitName Value="ClpEdECObjectIdentifiers"/>
-      </Item292>
-      <Item293>
+      </Item282>
+      <Item283>
         <Filename Value="..\..\Interfaces\ClpIEd25519CtxBlake2BSigner.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519CtxBlake2BSigner.pas"/>
         <UnitName Value="ClpIEd25519CtxBlake2BSigner"/>
         <UnitName Value="ClpIEd25519CtxBlake2BSigner"/>
-      </Item293>
-      <Item294>
+      </Item283>
+      <Item284>
         <Filename Value="..\..\Interfaces\ClpIEd25519PhBlake2BSigner.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519PhBlake2BSigner.pas"/>
         <UnitName Value="ClpIEd25519PhBlake2BSigner"/>
         <UnitName Value="ClpIEd25519PhBlake2BSigner"/>
-      </Item294>
-      <Item295>
+      </Item284>
+      <Item285>
         <Filename Value="..\..\Interfaces\ClpIEd25519PhSigner.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519PhSigner.pas"/>
         <UnitName Value="ClpIEd25519PhSigner"/>
         <UnitName Value="ClpIEd25519PhSigner"/>
-      </Item295>
-      <Item296>
+      </Item285>
+      <Item286>
         <Filename Value="..\..\Interfaces\ClpIEd25519CtxSigner.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519CtxSigner.pas"/>
         <UnitName Value="ClpIEd25519CtxSigner"/>
         <UnitName Value="ClpIEd25519CtxSigner"/>
-      </Item296>
-      <Item297>
+      </Item286>
+      <Item287>
         <Filename Value="..\..\Interfaces\ClpIEd25519Blake2BSigner.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519Blake2BSigner.pas"/>
         <UnitName Value="ClpIEd25519Blake2BSigner"/>
         <UnitName Value="ClpIEd25519Blake2BSigner"/>
-      </Item297>
-      <Item298>
+      </Item287>
+      <Item288>
         <Filename Value="..\..\Interfaces\ClpIEd25519Signer.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519Signer.pas"/>
         <UnitName Value="ClpIEd25519Signer"/>
         <UnitName Value="ClpIEd25519Signer"/>
-      </Item298>
-      <Item299>
+      </Item288>
+      <Item289>
         <Filename Value="..\..\Interfaces\ClpIEd25519Blake2BKeyGenerationParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519Blake2BKeyGenerationParameters.pas"/>
         <UnitName Value="ClpIEd25519Blake2BKeyGenerationParameters"/>
         <UnitName Value="ClpIEd25519Blake2BKeyGenerationParameters"/>
-      </Item299>
-      <Item300>
+      </Item289>
+      <Item290>
         <Filename Value="..\..\Interfaces\ClpIEd25519KeyGenerationParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519KeyGenerationParameters.pas"/>
         <UnitName Value="ClpIEd25519KeyGenerationParameters"/>
         <UnitName Value="ClpIEd25519KeyGenerationParameters"/>
-      </Item300>
-      <Item301>
+      </Item290>
+      <Item291>
         <Filename Value="..\..\Interfaces\ClpIX25519KeyGenerationParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIX25519KeyGenerationParameters.pas"/>
         <UnitName Value="ClpIX25519KeyGenerationParameters"/>
         <UnitName Value="ClpIX25519KeyGenerationParameters"/>
-      </Item301>
-      <Item302>
+      </Item291>
+      <Item292>
         <Filename Value="..\..\Interfaces\ClpIEd25519Blake2BKeyPairGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519Blake2BKeyPairGenerator.pas"/>
         <UnitName Value="ClpIEd25519Blake2BKeyPairGenerator"/>
         <UnitName Value="ClpIEd25519Blake2BKeyPairGenerator"/>
-      </Item302>
-      <Item303>
+      </Item292>
+      <Item293>
         <Filename Value="..\..\Interfaces\ClpIEd25519KeyPairGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519KeyPairGenerator.pas"/>
         <UnitName Value="ClpIEd25519KeyPairGenerator"/>
         <UnitName Value="ClpIEd25519KeyPairGenerator"/>
-      </Item303>
-      <Item304>
+      </Item293>
+      <Item294>
         <Filename Value="..\..\Interfaces\ClpIX25519KeyPairGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIX25519KeyPairGenerator.pas"/>
         <UnitName Value="ClpIX25519KeyPairGenerator"/>
         <UnitName Value="ClpIX25519KeyPairGenerator"/>
-      </Item304>
-      <Item305>
+      </Item294>
+      <Item295>
         <Filename Value="..\..\Interfaces\ClpIEd25519Blake2BPrivateKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519Blake2BPrivateKeyParameters.pas"/>
         <UnitName Value="ClpIEd25519Blake2BPrivateKeyParameters"/>
         <UnitName Value="ClpIEd25519Blake2BPrivateKeyParameters"/>
-      </Item305>
-      <Item306>
+      </Item295>
+      <Item296>
         <Filename Value="..\..\Interfaces\ClpIEd25519Blake2BPublicKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519Blake2BPublicKeyParameters.pas"/>
         <UnitName Value="ClpIEd25519Blake2BPublicKeyParameters"/>
         <UnitName Value="ClpIEd25519Blake2BPublicKeyParameters"/>
-      </Item306>
-      <Item307>
+      </Item296>
+      <Item297>
         <Filename Value="..\..\Interfaces\ClpIEd25519PrivateKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519PrivateKeyParameters.pas"/>
         <UnitName Value="ClpIEd25519PrivateKeyParameters"/>
         <UnitName Value="ClpIEd25519PrivateKeyParameters"/>
-      </Item307>
-      <Item308>
+      </Item297>
+      <Item298>
         <Filename Value="..\..\Interfaces\ClpIEd25519PublicKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEd25519PublicKeyParameters.pas"/>
         <UnitName Value="ClpIEd25519PublicKeyParameters"/>
         <UnitName Value="ClpIEd25519PublicKeyParameters"/>
-      </Item308>
-      <Item309>
+      </Item298>
+      <Item299>
         <Filename Value="..\..\Interfaces\ClpIX25519PublicKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIX25519PublicKeyParameters.pas"/>
         <UnitName Value="ClpIX25519PublicKeyParameters"/>
         <UnitName Value="ClpIX25519PublicKeyParameters"/>
-      </Item309>
-      <Item310>
+      </Item299>
+      <Item300>
         <Filename Value="..\..\Interfaces\ClpIX25519PrivateKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIX25519PrivateKeyParameters.pas"/>
         <UnitName Value="ClpIX25519PrivateKeyParameters"/>
         <UnitName Value="ClpIX25519PrivateKeyParameters"/>
-      </Item310>
-      <Item311>
+      </Item300>
+      <Item301>
         <Filename Value="..\..\Interfaces\ClpIX25519Agreement.pas"/>
         <Filename Value="..\..\Interfaces\ClpIX25519Agreement.pas"/>
         <UnitName Value="ClpIX25519Agreement"/>
         <UnitName Value="ClpIX25519Agreement"/>
-      </Item311>
-      <Item312>
+      </Item301>
+      <Item302>
         <Filename Value="..\..\Interfaces\ClpIRawAgreement.pas"/>
         <Filename Value="..\..\Interfaces\ClpIRawAgreement.pas"/>
         <UnitName Value="ClpIRawAgreement"/>
         <UnitName Value="ClpIRawAgreement"/>
-      </Item312>
-      <Item313>
+      </Item302>
+      <Item303>
         <Filename Value="..\..\Crypto\Agreement\ClpX25519Agreement.pas"/>
         <Filename Value="..\..\Crypto\Agreement\ClpX25519Agreement.pas"/>
         <UnitName Value="ClpX25519Agreement"/>
         <UnitName Value="ClpX25519Agreement"/>
-      </Item313>
-      <Item314>
+      </Item303>
+      <Item304>
         <Filename Value="..\..\Crypto\Parameters\ClpEd25519Blake2BKeyGenerationParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpEd25519Blake2BKeyGenerationParameters.pas"/>
         <UnitName Value="ClpEd25519Blake2BKeyGenerationParameters"/>
         <UnitName Value="ClpEd25519Blake2BKeyGenerationParameters"/>
-      </Item314>
-      <Item315>
+      </Item304>
+      <Item305>
         <Filename Value="..\..\Crypto\Parameters\ClpEd25519KeyGenerationParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpEd25519KeyGenerationParameters.pas"/>
         <UnitName Value="ClpEd25519KeyGenerationParameters"/>
         <UnitName Value="ClpEd25519KeyGenerationParameters"/>
-      </Item315>
-      <Item316>
+      </Item305>
+      <Item306>
         <Filename Value="..\..\Crypto\Parameters\ClpX25519KeyGenerationParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpX25519KeyGenerationParameters.pas"/>
         <UnitName Value="ClpX25519KeyGenerationParameters"/>
         <UnitName Value="ClpX25519KeyGenerationParameters"/>
-      </Item316>
-      <Item317>
+      </Item306>
+      <Item307>
         <Filename Value="..\..\Crypto\Parameters\ClpEd25519Blake2BPrivateKeyParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpEd25519Blake2BPrivateKeyParameters.pas"/>
         <UnitName Value="ClpEd25519Blake2BPrivateKeyParameters"/>
         <UnitName Value="ClpEd25519Blake2BPrivateKeyParameters"/>
-      </Item317>
-      <Item318>
+      </Item307>
+      <Item308>
         <Filename Value="..\..\Crypto\Parameters\ClpEd25519Blake2BPublicKeyParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpEd25519Blake2BPublicKeyParameters.pas"/>
         <UnitName Value="ClpEd25519Blake2BPublicKeyParameters"/>
         <UnitName Value="ClpEd25519Blake2BPublicKeyParameters"/>
-      </Item318>
-      <Item319>
+      </Item308>
+      <Item309>
         <Filename Value="..\..\Crypto\Parameters\ClpEd25519PublicKeyParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpEd25519PublicKeyParameters.pas"/>
         <UnitName Value="ClpEd25519PublicKeyParameters"/>
         <UnitName Value="ClpEd25519PublicKeyParameters"/>
-      </Item319>
-      <Item320>
+      </Item309>
+      <Item310>
         <Filename Value="..\..\Crypto\Parameters\ClpEd25519PrivateKeyParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpEd25519PrivateKeyParameters.pas"/>
         <UnitName Value="ClpEd25519PrivateKeyParameters"/>
         <UnitName Value="ClpEd25519PrivateKeyParameters"/>
-      </Item320>
-      <Item321>
+      </Item310>
+      <Item311>
         <Filename Value="..\..\Crypto\Parameters\ClpX25519PublicKeyParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpX25519PublicKeyParameters.pas"/>
         <UnitName Value="ClpX25519PublicKeyParameters"/>
         <UnitName Value="ClpX25519PublicKeyParameters"/>
-      </Item321>
-      <Item322>
+      </Item311>
+      <Item312>
         <Filename Value="..\..\Crypto\Parameters\ClpX25519PrivateKeyParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpX25519PrivateKeyParameters.pas"/>
         <UnitName Value="ClpX25519PrivateKeyParameters"/>
         <UnitName Value="ClpX25519PrivateKeyParameters"/>
-      </Item322>
-      <Item323>
+      </Item312>
+      <Item313>
         <Filename Value="..\..\Crypto\Generators\ClpEd25519Blake2BKeyPairGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpEd25519Blake2BKeyPairGenerator.pas"/>
         <UnitName Value="ClpEd25519Blake2BKeyPairGenerator"/>
         <UnitName Value="ClpEd25519Blake2BKeyPairGenerator"/>
-      </Item323>
-      <Item324>
+      </Item313>
+      <Item314>
         <Filename Value="..\..\Crypto\Generators\ClpEd25519KeyPairGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpEd25519KeyPairGenerator.pas"/>
         <UnitName Value="ClpEd25519KeyPairGenerator"/>
         <UnitName Value="ClpEd25519KeyPairGenerator"/>
-      </Item324>
-      <Item325>
+      </Item314>
+      <Item315>
         <Filename Value="..\..\Crypto\Generators\ClpX25519KeyPairGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpX25519KeyPairGenerator.pas"/>
         <UnitName Value="ClpX25519KeyPairGenerator"/>
         <UnitName Value="ClpX25519KeyPairGenerator"/>
-      </Item325>
-      <Item326>
+      </Item315>
+      <Item316>
         <Filename Value="..\..\Crypto\Signers\ClpEd25519PhBlake2BSigner.pas"/>
         <Filename Value="..\..\Crypto\Signers\ClpEd25519PhBlake2BSigner.pas"/>
         <UnitName Value="ClpEd25519PhBlake2BSigner"/>
         <UnitName Value="ClpEd25519PhBlake2BSigner"/>
-      </Item326>
-      <Item327>
+      </Item316>
+      <Item317>
         <Filename Value="..\..\Crypto\Signers\ClpEd25519PhSigner.pas"/>
         <Filename Value="..\..\Crypto\Signers\ClpEd25519PhSigner.pas"/>
         <UnitName Value="ClpEd25519PhSigner"/>
         <UnitName Value="ClpEd25519PhSigner"/>
-      </Item327>
-      <Item328>
+      </Item317>
+      <Item318>
         <Filename Value="..\..\Crypto\Signers\ClpEd25519Signer.pas"/>
         <Filename Value="..\..\Crypto\Signers\ClpEd25519Signer.pas"/>
         <UnitName Value="ClpEd25519Signer"/>
         <UnitName Value="ClpEd25519Signer"/>
-      </Item328>
-      <Item329>
+      </Item318>
+      <Item319>
         <Filename Value="..\..\Crypto\Signers\ClpEd25519CtxBlake2BSigner.pas"/>
         <Filename Value="..\..\Crypto\Signers\ClpEd25519CtxBlake2BSigner.pas"/>
         <UnitName Value="ClpEd25519CtxBlake2BSigner"/>
         <UnitName Value="ClpEd25519CtxBlake2BSigner"/>
-      </Item329>
-      <Item330>
+      </Item319>
+      <Item320>
         <Filename Value="..\..\Crypto\Signers\ClpEd25519CtxSigner.pas"/>
         <Filename Value="..\..\Crypto\Signers\ClpEd25519CtxSigner.pas"/>
         <UnitName Value="ClpEd25519CtxSigner"/>
         <UnitName Value="ClpEd25519CtxSigner"/>
-      </Item330>
-      <Item331>
+      </Item320>
+      <Item321>
         <Filename Value="..\..\Crypto\Signers\ClpEd25519Blake2BSigner.pas"/>
         <Filename Value="..\..\Crypto\Signers\ClpEd25519Blake2BSigner.pas"/>
         <UnitName Value="ClpEd25519Blake2BSigner"/>
         <UnitName Value="ClpEd25519Blake2BSigner"/>
-      </Item331>
-      <Item332>
+      </Item321>
+      <Item322>
         <Filename Value="..\..\Asn1\TeleTrust\ClpTeleTrusTNamedCurves.pas"/>
         <Filename Value="..\..\Asn1\TeleTrust\ClpTeleTrusTNamedCurves.pas"/>
         <UnitName Value="ClpTeleTrusTNamedCurves"/>
         <UnitName Value="ClpTeleTrusTNamedCurves"/>
-      </Item332>
-      <Item333>
+      </Item322>
+      <Item323>
         <Filename Value="..\..\Security\ClpAgreementUtilities.pas"/>
         <Filename Value="..\..\Security\ClpAgreementUtilities.pas"/>
         <UnitName Value="ClpAgreementUtilities"/>
         <UnitName Value="ClpAgreementUtilities"/>
-      </Item333>
-      <Item334>
+      </Item323>
+      <Item324>
         <Filename Value="..\..\Interfaces\ClpIKdf1BytesGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIKdf1BytesGenerator.pas"/>
         <UnitName Value="ClpIKdf1BytesGenerator"/>
         <UnitName Value="ClpIKdf1BytesGenerator"/>
-      </Item334>
-      <Item335>
+      </Item324>
+      <Item325>
         <Filename Value="..\..\Crypto\Generators\ClpKdf1BytesGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpKdf1BytesGenerator.pas"/>
         <UnitName Value="ClpKdf1BytesGenerator"/>
         <UnitName Value="ClpKdf1BytesGenerator"/>
-      </Item335>
-      <Item336>
+      </Item325>
+      <Item326>
         <Filename Value="..\..\Interfaces\ClpIArgon2ParametersGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIArgon2ParametersGenerator.pas"/>
         <UnitName Value="ClpIArgon2ParametersGenerator"/>
         <UnitName Value="ClpIArgon2ParametersGenerator"/>
-      </Item336>
-      <Item337>
+      </Item326>
+      <Item327>
         <Filename Value="..\..\Crypto\Generators\ClpArgon2ParametersGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpArgon2ParametersGenerator.pas"/>
         <UnitName Value="ClpArgon2ParametersGenerator"/>
         <UnitName Value="ClpArgon2ParametersGenerator"/>
-      </Item337>
-      <Item338>
+      </Item327>
+      <Item328>
         <Filename Value="..\..\Interfaces\ClpIScryptParametersGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIScryptParametersGenerator.pas"/>
         <UnitName Value="ClpIScryptParametersGenerator"/>
         <UnitName Value="ClpIScryptParametersGenerator"/>
-      </Item338>
-      <Item339>
+      </Item328>
+      <Item329>
         <Filename Value="..\..\Crypto\Generators\ClpScryptParametersGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpScryptParametersGenerator.pas"/>
         <UnitName Value="ClpScryptParametersGenerator"/>
         <UnitName Value="ClpScryptParametersGenerator"/>
-      </Item339>
-      <Item340>
+      </Item329>
+      <Item330>
         <Filename Value="..\..\Interfaces\ClpIDHAgreement.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHAgreement.pas"/>
         <UnitName Value="ClpIDHAgreement"/>
         <UnitName Value="ClpIDHAgreement"/>
-      </Item340>
-      <Item341>
+      </Item330>
+      <Item331>
         <Filename Value="..\..\Interfaces\ClpIDHBasicAgreement.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHBasicAgreement.pas"/>
         <UnitName Value="ClpIDHBasicAgreement"/>
         <UnitName Value="ClpIDHBasicAgreement"/>
-      </Item341>
-      <Item342>
+      </Item331>
+      <Item332>
         <Filename Value="..\..\Interfaces\ClpIDHBasicKeyPairGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHBasicKeyPairGenerator.pas"/>
         <UnitName Value="ClpIDHBasicKeyPairGenerator"/>
         <UnitName Value="ClpIDHBasicKeyPairGenerator"/>
-      </Item342>
-      <Item343>
+      </Item332>
+      <Item333>
         <Filename Value="..\..\Interfaces\ClpIDHKeyPairGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHKeyPairGenerator.pas"/>
         <UnitName Value="ClpIDHKeyPairGenerator"/>
         <UnitName Value="ClpIDHKeyPairGenerator"/>
-      </Item343>
-      <Item344>
+      </Item333>
+      <Item334>
         <Filename Value="..\..\Interfaces\ClpIDHPrivateKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHPrivateKeyParameters.pas"/>
         <UnitName Value="ClpIDHPrivateKeyParameters"/>
         <UnitName Value="ClpIDHPrivateKeyParameters"/>
-      </Item344>
-      <Item345>
+      </Item334>
+      <Item335>
         <Filename Value="..\..\Interfaces\ClpIDHPublicKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHPublicKeyParameters.pas"/>
         <UnitName Value="ClpIDHPublicKeyParameters"/>
         <UnitName Value="ClpIDHPublicKeyParameters"/>
-      </Item345>
-      <Item346>
+      </Item335>
+      <Item336>
         <Filename Value="..\..\Interfaces\ClpIDHParametersGenerator.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHParametersGenerator.pas"/>
         <UnitName Value="ClpIDHParametersGenerator"/>
         <UnitName Value="ClpIDHParametersGenerator"/>
-      </Item346>
-      <Item347>
+      </Item336>
+      <Item337>
         <Filename Value="..\..\Interfaces\ClpIDHKeyGenerationParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHKeyGenerationParameters.pas"/>
         <UnitName Value="ClpIDHKeyGenerationParameters"/>
         <UnitName Value="ClpIDHKeyGenerationParameters"/>
-      </Item347>
-      <Item348>
+      </Item337>
+      <Item338>
         <Filename Value="..\..\Interfaces\ClpIDHParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHParameters.pas"/>
         <UnitName Value="ClpIDHParameters"/>
         <UnitName Value="ClpIDHParameters"/>
-      </Item348>
-      <Item349>
+      </Item338>
+      <Item339>
         <Filename Value="..\..\Interfaces\ClpIDHKeyGeneratorHelper.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHKeyGeneratorHelper.pas"/>
         <UnitName Value="ClpIDHKeyGeneratorHelper"/>
         <UnitName Value="ClpIDHKeyGeneratorHelper"/>
-      </Item349>
-      <Item350>
+      </Item339>
+      <Item340>
         <Filename Value="..\..\Interfaces\ClpIDHKeyParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHKeyParameters.pas"/>
         <UnitName Value="ClpIDHKeyParameters"/>
         <UnitName Value="ClpIDHKeyParameters"/>
-      </Item350>
-      <Item351>
+      </Item340>
+      <Item341>
         <Filename Value="..\..\Interfaces\ClpIDHValidationParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHValidationParameters.pas"/>
         <UnitName Value="ClpIDHValidationParameters"/>
         <UnitName Value="ClpIDHValidationParameters"/>
-      </Item351>
-      <Item352>
+      </Item341>
+      <Item342>
         <Filename Value="..\..\Interfaces\ClpIDHDomainParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHDomainParameters.pas"/>
         <UnitName Value="ClpIDHDomainParameters"/>
         <UnitName Value="ClpIDHDomainParameters"/>
-      </Item352>
-      <Item353>
+      </Item342>
+      <Item343>
         <Filename Value="..\..\Interfaces\ClpIDHValidationParams.pas"/>
         <Filename Value="..\..\Interfaces\ClpIDHValidationParams.pas"/>
         <UnitName Value="ClpIDHValidationParams"/>
         <UnitName Value="ClpIDHValidationParams"/>
-      </Item353>
-      <Item354>
+      </Item343>
+      <Item344>
         <Filename Value="..\..\Crypto\Agreement\ClpDHAgreement.pas"/>
         <Filename Value="..\..\Crypto\Agreement\ClpDHAgreement.pas"/>
         <UnitName Value="ClpDHAgreement"/>
         <UnitName Value="ClpDHAgreement"/>
-      </Item354>
-      <Item355>
+      </Item344>
+      <Item345>
         <Filename Value="..\..\Crypto\Agreement\ClpDHBasicAgreement.pas"/>
         <Filename Value="..\..\Crypto\Agreement\ClpDHBasicAgreement.pas"/>
         <UnitName Value="ClpDHBasicAgreement"/>
         <UnitName Value="ClpDHBasicAgreement"/>
-      </Item355>
-      <Item356>
+      </Item345>
+      <Item346>
         <Filename Value="..\..\Crypto\Generators\ClpDHBasicKeyPairGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpDHBasicKeyPairGenerator.pas"/>
         <UnitName Value="ClpDHBasicKeyPairGenerator"/>
         <UnitName Value="ClpDHBasicKeyPairGenerator"/>
-      </Item356>
-      <Item357>
+      </Item346>
+      <Item347>
         <Filename Value="..\..\Crypto\Generators\ClpDHKeyPairGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpDHKeyPairGenerator.pas"/>
         <UnitName Value="ClpDHKeyPairGenerator"/>
         <UnitName Value="ClpDHKeyPairGenerator"/>
-      </Item357>
-      <Item358>
+      </Item347>
+      <Item348>
         <Filename Value="..\..\Crypto\Generators\ClpDHParametersGenerator.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpDHParametersGenerator.pas"/>
         <UnitName Value="ClpDHParametersGenerator"/>
         <UnitName Value="ClpDHParametersGenerator"/>
-      </Item358>
-      <Item359>
+      </Item348>
+      <Item349>
         <Filename Value="..\..\Crypto\Generators\ClpDHKeyGeneratorHelper.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpDHKeyGeneratorHelper.pas"/>
         <UnitName Value="ClpDHKeyGeneratorHelper"/>
         <UnitName Value="ClpDHKeyGeneratorHelper"/>
-      </Item359>
-      <Item360>
+      </Item349>
+      <Item350>
         <Filename Value="..\..\Crypto\Generators\ClpDHParametersHelper.pas"/>
         <Filename Value="..\..\Crypto\Generators\ClpDHParametersHelper.pas"/>
         <UnitName Value="ClpDHParametersHelper"/>
         <UnitName Value="ClpDHParametersHelper"/>
-      </Item360>
-      <Item361>
+      </Item350>
+      <Item351>
         <Filename Value="..\..\Crypto\Parameters\ClpDHPrivateKeyParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpDHPrivateKeyParameters.pas"/>
         <UnitName Value="ClpDHPrivateKeyParameters"/>
         <UnitName Value="ClpDHPrivateKeyParameters"/>
-      </Item361>
-      <Item362>
+      </Item351>
+      <Item352>
         <Filename Value="..\..\Crypto\Parameters\ClpDHPublicKeyParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpDHPublicKeyParameters.pas"/>
         <UnitName Value="ClpDHPublicKeyParameters"/>
         <UnitName Value="ClpDHPublicKeyParameters"/>
-      </Item362>
-      <Item363>
+      </Item352>
+      <Item353>
         <Filename Value="..\..\Crypto\Parameters\ClpDHKeyGenerationParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpDHKeyGenerationParameters.pas"/>
         <UnitName Value="ClpDHKeyGenerationParameters"/>
         <UnitName Value="ClpDHKeyGenerationParameters"/>
-      </Item363>
-      <Item364>
+      </Item353>
+      <Item354>
         <Filename Value="..\..\Crypto\Parameters\ClpDHKeyParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpDHKeyParameters.pas"/>
         <UnitName Value="ClpDHKeyParameters"/>
         <UnitName Value="ClpDHKeyParameters"/>
-      </Item364>
-      <Item365>
+      </Item354>
+      <Item355>
         <Filename Value="..\..\Crypto\Parameters\ClpDHValidationParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpDHValidationParameters.pas"/>
         <UnitName Value="ClpDHValidationParameters"/>
         <UnitName Value="ClpDHValidationParameters"/>
-      </Item365>
-      <Item366>
+      </Item355>
+      <Item356>
         <Filename Value="..\..\Crypto\Parameters\ClpDHParameters.pas"/>
         <Filename Value="..\..\Crypto\Parameters\ClpDHParameters.pas"/>
         <UnitName Value="ClpDHParameters"/>
         <UnitName Value="ClpDHParameters"/>
-      </Item366>
-      <Item367>
+      </Item356>
+      <Item357>
         <Filename Value="..\..\Asn1\X9\ClpDHDomainParameters.pas"/>
         <Filename Value="..\..\Asn1\X9\ClpDHDomainParameters.pas"/>
         <UnitName Value="ClpDHDomainParameters"/>
         <UnitName Value="ClpDHDomainParameters"/>
-      </Item367>
-      <Item368>
+      </Item357>
+      <Item358>
         <Filename Value="..\..\Asn1\X9\ClpDHValidationParams.pas"/>
         <Filename Value="..\..\Asn1\X9\ClpDHValidationParams.pas"/>
         <UnitName Value="ClpDHValidationParams"/>
         <UnitName Value="ClpDHValidationParams"/>
-      </Item368>
-      <Item369>
+      </Item358>
+      <Item359>
         <Filename Value="..\..\Utils\Randoms\ClpAESPRNGRandom.pas"/>
         <Filename Value="..\..\Utils\Randoms\ClpAESPRNGRandom.pas"/>
         <UnitName Value="ClpAESPRNGRandom"/>
         <UnitName Value="ClpAESPRNGRandom"/>
-      </Item369>
-      <Item370>
+      </Item359>
+      <Item360>
         <Filename Value="..\..\Asn1\CryptLib\ClpCryptLibObjectIdentifiers.pas"/>
         <Filename Value="..\..\Asn1\CryptLib\ClpCryptLibObjectIdentifiers.pas"/>
         <UnitName Value="ClpCryptLibObjectIdentifiers"/>
         <UnitName Value="ClpCryptLibObjectIdentifiers"/>
-      </Item370>
-      <Item371>
+      </Item360>
+      <Item361>
         <Filename Value="..\..\Interfaces\ClpIEndoPreCompInfo.pas"/>
         <Filename Value="..\..\Interfaces\ClpIEndoPreCompInfo.pas"/>
         <UnitName Value="ClpIEndoPreCompInfo"/>
         <UnitName Value="ClpIEndoPreCompInfo"/>
-      </Item371>
-      <Item372>
+      </Item361>
+      <Item362>
         <Filename Value="..\..\Math\EC\Endo\ClpEndoPreCompInfo.pas"/>
         <Filename Value="..\..\Math\EC\Endo\ClpEndoPreCompInfo.pas"/>
         <UnitName Value="ClpEndoPreCompInfo"/>
         <UnitName Value="ClpEndoPreCompInfo"/>
-      </Item372>
-      <Item373>
+      </Item362>
+      <Item363>
         <Filename Value="..\..\Math\EC\ClpScaleXNegateYPointMap.pas"/>
         <Filename Value="..\..\Math\EC\ClpScaleXNegateYPointMap.pas"/>
         <UnitName Value="ClpScaleXNegateYPointMap"/>
         <UnitName Value="ClpScaleXNegateYPointMap"/>
-      </Item373>
-      <Item374>
+      </Item363>
+      <Item364>
         <Filename Value="..\..\Math\EC\ClpScaleYNegateXPointMap.pas"/>
         <Filename Value="..\..\Math\EC\ClpScaleYNegateXPointMap.pas"/>
         <UnitName Value="ClpScaleYNegateXPointMap"/>
         <UnitName Value="ClpScaleYNegateXPointMap"/>
-      </Item374>
-      <Item375>
+      </Item364>
+      <Item365>
         <Filename Value="..\..\Math\EC\Endo\ClpGlvTypeAEndomorphism.pas"/>
         <Filename Value="..\..\Math\EC\Endo\ClpGlvTypeAEndomorphism.pas"/>
         <UnitName Value="ClpGlvTypeAEndomorphism"/>
         <UnitName Value="ClpGlvTypeAEndomorphism"/>
-      </Item375>
-      <Item376>
+      </Item365>
+      <Item366>
         <Filename Value="..\..\Math\EC\Endo\ClpGlvTypeAParameters.pas"/>
         <Filename Value="..\..\Math\EC\Endo\ClpGlvTypeAParameters.pas"/>
         <UnitName Value="ClpGlvTypeAParameters"/>
         <UnitName Value="ClpGlvTypeAParameters"/>
-      </Item376>
-      <Item377>
+      </Item366>
+      <Item367>
         <Filename Value="..\..\Math\EC\Endo\ClpScalarSplitParameters.pas"/>
         <Filename Value="..\..\Math\EC\Endo\ClpScalarSplitParameters.pas"/>
         <UnitName Value="ClpScalarSplitParameters"/>
         <UnitName Value="ClpScalarSplitParameters"/>
-      </Item377>
-      <Item378>
+      </Item367>
+      <Item368>
         <Filename Value="..\..\Interfaces\ClpIGlvTypeAParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIGlvTypeAParameters.pas"/>
         <UnitName Value="ClpIGlvTypeAParameters"/>
         <UnitName Value="ClpIGlvTypeAParameters"/>
-      </Item378>
-      <Item379>
+      </Item368>
+      <Item369>
         <Filename Value="..\..\Interfaces\ClpIGlvTypeAEndomorphism.pas"/>
         <Filename Value="..\..\Interfaces\ClpIGlvTypeAEndomorphism.pas"/>
         <UnitName Value="ClpIGlvTypeAEndomorphism"/>
         <UnitName Value="ClpIGlvTypeAEndomorphism"/>
-      </Item379>
-      <Item380>
+      </Item369>
+      <Item370>
         <Filename Value="..\..\Interfaces\ClpIScaleXNegateYPointMap.pas"/>
         <Filename Value="..\..\Interfaces\ClpIScaleXNegateYPointMap.pas"/>
         <UnitName Value="ClpIScaleXNegateYPointMap"/>
         <UnitName Value="ClpIScaleXNegateYPointMap"/>
-      </Item380>
-      <Item381>
+      </Item370>
+      <Item371>
         <Filename Value="..\..\Interfaces\ClpIScaleYNegateXPointMap.pas"/>
         <Filename Value="..\..\Interfaces\ClpIScaleYNegateXPointMap.pas"/>
         <UnitName Value="ClpIScaleYNegateXPointMap"/>
         <UnitName Value="ClpIScaleYNegateXPointMap"/>
-      </Item381>
-      <Item382>
+      </Item371>
+      <Item372>
         <Filename Value="..\..\Interfaces\ClpIScalarSplitParameters.pas"/>
         <Filename Value="..\..\Interfaces\ClpIScalarSplitParameters.pas"/>
         <UnitName Value="ClpIScalarSplitParameters"/>
         <UnitName Value="ClpIScalarSplitParameters"/>
-      </Item382>
+      </Item372>
+      <Item373>
+        <Filename Value="..\..\Math\EC\ClpECCompUtilities.pas"/>
+        <UnitName Value="ClpECCompUtilities"/>
+      </Item373>
     </Files>
     </Files>
     <RequiredPkgs Count="3">
     <RequiredPkgs Count="3">
       <Item1>
       <Item1>

+ 18 - 22
CryptoLib/src/Packages/FPC/CryptoLib4PascalPackage.pas

@@ -18,28 +18,24 @@ uses
   ClpECKeyParameters, ClpECPrivateKeyParameters, ClpECPublicKeyParameters, 
   ClpECKeyParameters, ClpECPrivateKeyParameters, ClpECPublicKeyParameters, 
   ClpParametersWithRandom, ClpCryptoApiRandomGenerator, 
   ClpParametersWithRandom, ClpCryptoApiRandomGenerator, 
   ClpDigestRandomGenerator, ClpDsaDigestSigner, ClpECDsaSigner, 
   ClpDigestRandomGenerator, ClpDsaDigestSigner, ClpECDsaSigner, 
-  ClpRandomDsaKCalculator, ClpIAbstractECMultiplier, 
-  ClpIAsymmetricCipherKeyPair, ClpIAsymmetricCipherKeyPairGenerator, 
-  ClpIAsymmetricKeyParameter, ClpICipherParameters, 
-  ClpICryptoApiRandomGenerator, ClpIDigestRandomGenerator, ClpIDsa, 
-  ClpIDsaDigestSigner, ClpIDsaKCalculator, ClpIECDomainParameters, 
-  ClpIECDsaSigner, ClpIECKeyGenerationParameters, ClpIECKeyPairGenerator, 
-  ClpIECKeyParameters, ClpIECPrivateKeyParameters, ClpIECPublicKeyParameters, 
-  ClpIExtensionField, ClpIFiniteField, ClpIFixedPointCombMultiplier, 
+  ClpRandomDsaKCalculator, ClpIAsymmetricCipherKeyPair, 
+  ClpIAsymmetricCipherKeyPairGenerator, ClpIAsymmetricKeyParameter, 
+  ClpICipherParameters, ClpICryptoApiRandomGenerator, 
+  ClpIDigestRandomGenerator, ClpIDsa, ClpIDsaDigestSigner, ClpIDsaKCalculator, 
+  ClpIECDomainParameters, ClpIECDsaSigner, ClpIECKeyGenerationParameters, 
+  ClpIECKeyPairGenerator, ClpIECKeyParameters, ClpIECPrivateKeyParameters, 
+  ClpIECPublicKeyParameters, ClpIExtensionField, ClpIFiniteField, 
   ClpIFixedPointPreCompInfo, ClpIGenericPolynomialExtensionField, 
   ClpIFixedPointPreCompInfo, ClpIGenericPolynomialExtensionField, 
-  ClpIGF2Polynomial, ClpIGlvEndomorphism, ClpIGlvMultiplier, 
-  ClpIGlvTypeBEndomorphism, ClpIGlvTypeBParameters, 
-  ClpIKeyGenerationParameters, ClpIOidTokenizer, ClpIParametersWithRandom, 
-  ClpIPolynomial, ClpIPolynomialExtensionField, ClpIPreCompInfo, 
-  ClpIPrimeField, ClpIRandom, ClpIRandomDsaKCalculator, ClpIRandomGenerator, 
-  ClpIRandomNumberGenerator, ClpIScaleXPointMap, ClpISecureRandom, ClpISigner, 
-  ClpIWNafL2RMultiplier, ClpIWNafPreCompInfo, ClpIWTauNafMultiplier, 
-  ClpIWTauNafPreCompInfo, ClpIX9ECParameters, ClpIX9ECParametersHolder, 
-  ClpIZTauElement, ClpBigInteger, ClpECAlgorithms, ClpLongArray, 
-  ClpScaleXPointMap, ClpSimpleBigDecimal, ClpTnaf, ClpZTauElement, 
-  ClpGlvTypeBEndomorphism, ClpGlvTypeBParameters, ClpAbstractECMultiplier, 
-  ClpFixedPointCombMultiplier, ClpFixedPointPreCompInfo, ClpGlvMultiplier, 
-  ClpWNafL2RMultiplier, ClpWNafPreCompInfo, ClpWTauNafMultiplier, 
+  ClpIGF2Polynomial, ClpIGlvEndomorphism, ClpIGlvTypeBEndomorphism, 
+  ClpIGlvTypeBParameters, ClpIKeyGenerationParameters, ClpIOidTokenizer, 
+  ClpIParametersWithRandom, ClpIPolynomial, ClpIPolynomialExtensionField, 
+  ClpIPreCompInfo, ClpIPrimeField, ClpIRandom, ClpIRandomDsaKCalculator, 
+  ClpIRandomGenerator, ClpIRandomNumberGenerator, ClpIScaleXPointMap, 
+  ClpISecureRandom, ClpISigner, ClpIWNafPreCompInfo, ClpIWTauNafPreCompInfo, 
+  ClpIX9ECParameters, ClpIX9ECParametersHolder, ClpIZTauElement, 
+  ClpBigInteger, ClpECAlgorithms, ClpLongArray, ClpScaleXPointMap, 
+  ClpSimpleBigDecimal, ClpTnaf, ClpZTauElement, ClpGlvTypeBEndomorphism, 
+  ClpGlvTypeBParameters, ClpFixedPointPreCompInfo, ClpWNafPreCompInfo, 
   ClpWTauNafPreCompInfo, ClpFiniteFields, ClpGenericPolynomialExtensionField, 
   ClpWTauNafPreCompInfo, ClpFiniteFields, ClpGenericPolynomialExtensionField, 
   ClpGF2Polynomial, ClpPrimeField, ClpMod, ClpNat, ClpDigestUtilities, 
   ClpGF2Polynomial, ClpPrimeField, ClpMod, ClpNat, ClpDigestUtilities, 
   ClpRandom, ClpSecureRandom, ClpSignerUtilities, ClpArrayUtils, 
   ClpRandom, ClpSecureRandom, ClpSignerUtilities, ClpArrayUtils, 
@@ -137,7 +133,7 @@ uses
   ClpScaleYNegateXPointMap, ClpGlvTypeAEndomorphism, ClpGlvTypeAParameters, 
   ClpScaleYNegateXPointMap, ClpGlvTypeAEndomorphism, ClpGlvTypeAParameters, 
   ClpScalarSplitParameters, ClpIGlvTypeAParameters, ClpIGlvTypeAEndomorphism, 
   ClpScalarSplitParameters, ClpIGlvTypeAParameters, ClpIGlvTypeAEndomorphism, 
   ClpIScaleXNegateYPointMap, ClpIScaleYNegateXPointMap, 
   ClpIScaleXNegateYPointMap, ClpIScaleYNegateXPointMap, 
-  ClpIScalarSplitParameters;
+  ClpIScalarSplitParameters, ClpECCompUtilities;
 
 
 implementation
 implementation