diff --git a/SimpleBaseLib.Tests/Delphi.Tests/SimpleBaseLib.Tests.Mobile.dpr b/SimpleBaseLib.Tests/Delphi.Tests/SimpleBaseLib.Tests.Mobile.dpr index 45338e2..313c837 100644 --- a/SimpleBaseLib.Tests/Delphi.Tests/SimpleBaseLib.Tests.Mobile.dpr +++ b/SimpleBaseLib.Tests/Delphi.Tests/SimpleBaseLib.Tests.Mobile.dpr @@ -13,6 +13,7 @@ uses SbpBitOperations in '..\..\SimpleBaseLib\src\Misc\SbpBitOperations.pas', SbpBinaryPrimitives in '..\..\SimpleBaseLib\src\Misc\SbpBinaryPrimitives.pas', SbpSimpleBaseLibTypes in '..\..\SimpleBaseLib\src\Misc\SbpSimpleBaseLibTypes.pas', + SbpSimpleBaseLibExceptions in '..\..\SimpleBaseLib\src\Misc\SbpSimpleBaseLibExceptions.pas', SbpBits in '..\..\SimpleBaseLib\src\Misc\SbpBits.pas', SbpCharUtilities in '..\..\SimpleBaseLib\src\Utilities\SbpCharUtilities.pas', SbpStreamUtilities in '..\..\SimpleBaseLib\src\Utilities\SbpStreamUtilities.pas', diff --git a/SimpleBaseLib.Tests/Delphi.Tests/SimpleBaseLib.Tests.Mobile.dproj b/SimpleBaseLib.Tests/Delphi.Tests/SimpleBaseLib.Tests.Mobile.dproj index 26af7c0..858083e 100644 --- a/SimpleBaseLib.Tests/Delphi.Tests/SimpleBaseLib.Tests.Mobile.dproj +++ b/SimpleBaseLib.Tests/Delphi.Tests/SimpleBaseLib.Tests.Mobile.dproj @@ -353,6 +353,7 @@ + diff --git a/SimpleBaseLib.Tests/Delphi.Tests/SimpleBaseLib.Tests.dpr b/SimpleBaseLib.Tests/Delphi.Tests/SimpleBaseLib.Tests.dpr index 7f50c77..de555e8 100644 --- a/SimpleBaseLib.Tests/Delphi.Tests/SimpleBaseLib.Tests.dpr +++ b/SimpleBaseLib.Tests/Delphi.Tests/SimpleBaseLib.Tests.dpr @@ -30,6 +30,7 @@ uses SbpBitOperations in '..\..\SimpleBaseLib\src\Misc\SbpBitOperations.pas', SbpBinaryPrimitives in '..\..\SimpleBaseLib\src\Misc\SbpBinaryPrimitives.pas', SbpSimpleBaseLibTypes in '..\..\SimpleBaseLib\src\Misc\SbpSimpleBaseLibTypes.pas', + SbpSimpleBaseLibExceptions in '..\..\SimpleBaseLib\src\Misc\SbpSimpleBaseLibExceptions.pas', SbpBits in '..\..\SimpleBaseLib\src\Misc\SbpBits.pas', SbpCharUtilities in '..\..\SimpleBaseLib\src\Utilities\SbpCharUtilities.pas', SbpStreamUtilities in '..\..\SimpleBaseLib\src\Utilities\SbpStreamUtilities.pas', diff --git a/SimpleBaseLib.Tests/src/Base16/Base16Tests.pas b/SimpleBaseLib.Tests/src/Base16/Base16Tests.pas index 90fed9d..10a7b68 100644 --- a/SimpleBaseLib.Tests/src/Base16/Base16Tests.pas +++ b/SimpleBaseLib.Tests/src/Base16/Base16Tests.pas @@ -18,6 +18,7 @@ interface TestFramework, {$ENDIF FPC} SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpIBase16, SbpBase16, SbpBase16Alphabet, diff --git a/SimpleBaseLib.Tests/src/Base2/Base2Tests.pas b/SimpleBaseLib.Tests/src/Base2/Base2Tests.pas index 331e42d..0ee0478 100644 --- a/SimpleBaseLib.Tests/src/Base2/Base2Tests.pas +++ b/SimpleBaseLib.Tests/src/Base2/Base2Tests.pas @@ -18,6 +18,7 @@ interface TestFramework, {$ENDIF FPC} SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpBase2, SimpleBaseLibTestBase; diff --git a/SimpleBaseLib.Tests/src/Base32/Base32Tests.pas b/SimpleBaseLib.Tests/src/Base32/Base32Tests.pas index 50034c5..f9d2e2d 100644 --- a/SimpleBaseLib.Tests/src/Base32/Base32Tests.pas +++ b/SimpleBaseLib.Tests/src/Base32/Base32Tests.pas @@ -18,6 +18,7 @@ interface TestFramework, {$ENDIF FPC} SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpIBase32, SbpBase32, SbpBase32Alphabet, diff --git a/SimpleBaseLib.Tests/src/Base45/Base45Tests.pas b/SimpleBaseLib.Tests/src/Base45/Base45Tests.pas index 9f753fe..20457e6 100644 --- a/SimpleBaseLib.Tests/src/Base45/Base45Tests.pas +++ b/SimpleBaseLib.Tests/src/Base45/Base45Tests.pas @@ -18,6 +18,7 @@ interface TestFramework, {$ENDIF FPC} SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpBase45, SimpleBaseLibTestBase; diff --git a/SimpleBaseLib.Tests/src/Base58/Base58Tests.pas b/SimpleBaseLib.Tests/src/Base58/Base58Tests.pas index 227d85e..24ba5ed 100644 --- a/SimpleBaseLib.Tests/src/Base58/Base58Tests.pas +++ b/SimpleBaseLib.Tests/src/Base58/Base58Tests.pas @@ -17,6 +17,7 @@ interface TestFramework, {$ENDIF FPC} SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpICodingAlphabet, SbpBase58Alphabet, SbpBase58, diff --git a/SimpleBaseLib.Tests/src/Base64/Base64Tests.pas b/SimpleBaseLib.Tests/src/Base64/Base64Tests.pas index 446136c..f708e0f 100644 --- a/SimpleBaseLib.Tests/src/Base64/Base64Tests.pas +++ b/SimpleBaseLib.Tests/src/Base64/Base64Tests.pas @@ -18,6 +18,7 @@ interface TestFramework, {$ENDIF FPC} SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpIBase64, SbpBase64, SimpleBaseLibTestBase; diff --git a/SimpleBaseLib.Tests/src/Base8/Base8Tests.pas b/SimpleBaseLib.Tests/src/Base8/Base8Tests.pas index 7bb2581..476fe88 100644 --- a/SimpleBaseLib.Tests/src/Base8/Base8Tests.pas +++ b/SimpleBaseLib.Tests/src/Base8/Base8Tests.pas @@ -18,6 +18,7 @@ interface TestFramework, {$ENDIF FPC} SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpBase8, SimpleBaseLibTestBase; diff --git a/SimpleBaseLib.Tests/src/Base85/Base85Tests.pas b/SimpleBaseLib.Tests/src/Base85/Base85Tests.pas index 4fae9a2..8eaaf56 100644 --- a/SimpleBaseLib.Tests/src/Base85/Base85Tests.pas +++ b/SimpleBaseLib.Tests/src/Base85/Base85Tests.pas @@ -18,6 +18,7 @@ interface TestFramework, {$ENDIF FPC} SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpBase85, SimpleBaseLibTestBase; diff --git a/SimpleBaseLib.Tests/src/Misc/CodingAlphabetTests.pas b/SimpleBaseLib.Tests/src/Misc/CodingAlphabetTests.pas index 766b033..1c2cbf6 100644 --- a/SimpleBaseLib.Tests/src/Misc/CodingAlphabetTests.pas +++ b/SimpleBaseLib.Tests/src/Misc/CodingAlphabetTests.pas @@ -18,6 +18,7 @@ interface {$ENDIF FPC} SbpCodingAlphabet, SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SimpleBaseLibTestBase; type diff --git a/SimpleBaseLib.Tests/src/Multibase/MultibaseTests.pas b/SimpleBaseLib.Tests/src/Multibase/MultibaseTests.pas index b98d4cd..5e3fd50 100644 --- a/SimpleBaseLib.Tests/src/Multibase/MultibaseTests.pas +++ b/SimpleBaseLib.Tests/src/Multibase/MultibaseTests.pas @@ -17,6 +17,7 @@ interface TestFramework, {$ENDIF FPC} SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpMultibase, SbpMultibaseEncoding, SimpleBaseLibTestBase; diff --git a/SimpleBaseLib/src/Alphabets/SbpAliasedBase32Alphabet.pas b/SimpleBaseLib/src/Alphabets/SbpAliasedBase32Alphabet.pas index 88be508..0c04b50 100644 --- a/SimpleBaseLib/src/Alphabets/SbpAliasedBase32Alphabet.pas +++ b/SimpleBaseLib/src/Alphabets/SbpAliasedBase32Alphabet.pas @@ -5,7 +5,7 @@ interface uses - SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpCharMap, SbpPaddingPosition, SbpCharUtilities, diff --git a/SimpleBaseLib/src/Alphabets/SbpCodingAlphabet.pas b/SimpleBaseLib/src/Alphabets/SbpCodingAlphabet.pas index 4a04390..ea2dc09 100644 --- a/SimpleBaseLib/src/Alphabets/SbpCodingAlphabet.pas +++ b/SimpleBaseLib/src/Alphabets/SbpCodingAlphabet.pas @@ -7,6 +7,7 @@ interface uses SysUtils, SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpICodingAlphabet, SbpCharUtilities; diff --git a/SimpleBaseLib/src/Bases/SbpBase16.pas b/SimpleBaseLib/src/Bases/SbpBase16.pas index cd54f79..459c5c5 100644 --- a/SimpleBaseLib/src/Bases/SbpBase16.pas +++ b/SimpleBaseLib/src/Bases/SbpBase16.pas @@ -8,6 +8,7 @@ interface SysUtils, Classes, SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpICodingAlphabet, SbpIBase16, SbpIBaseStreamCoder, diff --git a/SimpleBaseLib/src/Bases/SbpBase2.pas b/SimpleBaseLib/src/Bases/SbpBase2.pas index 7727b9c..f3e802b 100644 --- a/SimpleBaseLib/src/Bases/SbpBase2.pas +++ b/SimpleBaseLib/src/Bases/SbpBase2.pas @@ -8,6 +8,7 @@ interface Classes, SysUtils, SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpIBase2, SbpINonAllocatingBaseCoder, SbpIBaseStreamCoder, diff --git a/SimpleBaseLib/src/Bases/SbpBase32.pas b/SimpleBaseLib/src/Bases/SbpBase32.pas index a60b28c..036e00d 100644 --- a/SimpleBaseLib/src/Bases/SbpBase32.pas +++ b/SimpleBaseLib/src/Bases/SbpBase32.pas @@ -8,6 +8,7 @@ interface Classes, SysUtils, SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpIBase32, SbpIBaseStreamCoder, SbpINonAllocatingBaseCoder, diff --git a/SimpleBaseLib/src/Bases/SbpBase45.pas b/SimpleBaseLib/src/Bases/SbpBase45.pas index d8ff5f2..459f4e4 100644 --- a/SimpleBaseLib/src/Bases/SbpBase45.pas +++ b/SimpleBaseLib/src/Bases/SbpBase45.pas @@ -8,6 +8,7 @@ interface Classes, SysUtils, SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpSimpleBaseLibConstants, SbpICodingAlphabet, SbpINonAllocatingBaseCoder, diff --git a/SimpleBaseLib/src/Bases/SbpBase64.pas b/SimpleBaseLib/src/Bases/SbpBase64.pas index 451c201..7b9496c 100644 --- a/SimpleBaseLib/src/Bases/SbpBase64.pas +++ b/SimpleBaseLib/src/Bases/SbpBase64.pas @@ -8,6 +8,7 @@ interface Classes, SysUtils, SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpSimpleBaseLibConstants, SbpIBase64, SbpIBase64Alphabet, diff --git a/SimpleBaseLib/src/Bases/SbpBase8.pas b/SimpleBaseLib/src/Bases/SbpBase8.pas index 4420d26..36e797d 100644 --- a/SimpleBaseLib/src/Bases/SbpBase8.pas +++ b/SimpleBaseLib/src/Bases/SbpBase8.pas @@ -8,6 +8,7 @@ interface Classes, SysUtils, SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpIBase8, SbpINonAllocatingBaseCoder, SbpIBaseStreamCoder, diff --git a/SimpleBaseLib/src/Bases/SbpBase85.pas b/SimpleBaseLib/src/Bases/SbpBase85.pas index fd59ff5..3c43163 100644 --- a/SimpleBaseLib/src/Bases/SbpBase85.pas +++ b/SimpleBaseLib/src/Bases/SbpBase85.pas @@ -8,6 +8,7 @@ interface Classes, SysUtils, SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpSimpleBaseLibConstants, SbpIBase85, SbpIBase85Alphabet, diff --git a/SimpleBaseLib/src/Bases/SbpMoneroBase58.pas b/SimpleBaseLib/src/Bases/SbpMoneroBase58.pas index ab1bd88..8cec17b 100644 --- a/SimpleBaseLib/src/Bases/SbpMoneroBase58.pas +++ b/SimpleBaseLib/src/Bases/SbpMoneroBase58.pas @@ -7,6 +7,7 @@ interface uses SysUtils, SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpSimpleBaseLibConstants, SbpICodingAlphabet, SbpCodingAlphabet, diff --git a/SimpleBaseLib/src/Bases/SbpMultibase.pas b/SimpleBaseLib/src/Bases/SbpMultibase.pas index 15b0c38..a3aa3a5 100644 --- a/SimpleBaseLib/src/Bases/SbpMultibase.pas +++ b/SimpleBaseLib/src/Bases/SbpMultibase.pas @@ -7,6 +7,7 @@ interface uses SysUtils, SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpMultibaseEncoding, SbpBase2, SbpBase8, diff --git a/SimpleBaseLib/src/Coders/SbpDividingCoder.pas b/SimpleBaseLib/src/Coders/SbpDividingCoder.pas index a36821e..5b6c2fd 100644 --- a/SimpleBaseLib/src/Coders/SbpDividingCoder.pas +++ b/SimpleBaseLib/src/Coders/SbpDividingCoder.pas @@ -8,6 +8,7 @@ interface SysUtils, Math, SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions, SbpSimpleBaseLibConstants, SbpArrayUtilities, SbpICodingAlphabet, diff --git a/SimpleBaseLib/src/Misc/SbpBits.pas b/SimpleBaseLib/src/Misc/SbpBits.pas index ea56ff5..e12eebf 100644 --- a/SimpleBaseLib/src/Misc/SbpBits.pas +++ b/SimpleBaseLib/src/Misc/SbpBits.pas @@ -5,7 +5,8 @@ interface uses - SbpSimpleBaseLibTypes; + SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions; resourcestring SErrCountTooLarge = 'ACount too large to convert to UInt64'; diff --git a/SimpleBaseLib/src/Misc/SbpSimpleBaseLibExceptions.pas b/SimpleBaseLib/src/Misc/SbpSimpleBaseLibExceptions.pas new file mode 100644 index 0000000..1a0c38e --- /dev/null +++ b/SimpleBaseLib/src/Misc/SbpSimpleBaseLibExceptions.pas @@ -0,0 +1,31 @@ +unit SbpSimpleBaseLibExceptions; + +{$I ..\Include\SimpleBaseLib.inc} + +interface + +uses + SysUtils; + +type + ESimpleBaseLibException = class(Exception); + EInvalidCastSimpleBaseLibException = class(EInvalidCast); + EArithmeticSimpleBaseLibException = class(ESimpleBaseLibException); + EInvalidOperationSimpleBaseLibException = class(ESimpleBaseLibException); + EInvalidParameterSimpleBaseLibException = class(ESimpleBaseLibException); + EIndexOutOfRangeSimpleBaseLibException = class(ESimpleBaseLibException); + EArgumentSimpleBaseLibException = class(ESimpleBaseLibException); + EInvalidArgumentSimpleBaseLibException = class(ESimpleBaseLibException); + EArgumentNilSimpleBaseLibException = class(ESimpleBaseLibException); + EArgumentOutOfRangeSimpleBaseLibException = class(ESimpleBaseLibException); + ENullReferenceSimpleBaseLibException = class(ESimpleBaseLibException); + EUnsupportedTypeSimpleBaseLibException = class(ESimpleBaseLibException); + EIOSimpleBaseLibException = class(ESimpleBaseLibException); + EFormatSimpleBaseLibException = class(ESimpleBaseLibException); + ENotImplementedSimpleBaseLibException = class(ESimpleBaseLibException); + ENotSupportedSimpleBaseLibException = class(ESimpleBaseLibException); + EEndOfStreamSimpleBaseLibException = class(EIOSimpleBaseLibException); + +implementation + +end. diff --git a/SimpleBaseLib/src/Misc/SbpSimpleBaseLibTypes.pas b/SimpleBaseLib/src/Misc/SbpSimpleBaseLibTypes.pas index d74784f..45bc481 100644 --- a/SimpleBaseLib/src/Misc/SbpSimpleBaseLibTypes.pas +++ b/SimpleBaseLib/src/Misc/SbpSimpleBaseLibTypes.pas @@ -40,24 +40,6 @@ interface TSimpleBaseLibMethodPredicate = function(Arg1: T): Boolean of object; - ESimpleBaseLibException = class(Exception); - EInvalidCastSimpleBaseLibException = class(EInvalidCast); - EArithmeticSimpleBaseLibException = class(ESimpleBaseLibException); - EInvalidOperationSimpleBaseLibException = class(ESimpleBaseLibException); - EInvalidParameterSimpleBaseLibException = class(ESimpleBaseLibException); - EIndexOutOfRangeSimpleBaseLibException = class(ESimpleBaseLibException); - EArgumentSimpleBaseLibException = class(ESimpleBaseLibException); - EInvalidArgumentSimpleBaseLibException = class(ESimpleBaseLibException); - EArgumentNilSimpleBaseLibException = class(ESimpleBaseLibException); - EArgumentOutOfRangeSimpleBaseLibException = class(ESimpleBaseLibException); - ENullReferenceSimpleBaseLibException = class(ESimpleBaseLibException); - EUnsupportedTypeSimpleBaseLibException = class(ESimpleBaseLibException); - EIOSimpleBaseLibException = class(ESimpleBaseLibException); - EFormatSimpleBaseLibException = class(ESimpleBaseLibException); - ENotImplementedSimpleBaseLibException = class(ESimpleBaseLibException); - ENotSupportedSimpleBaseLibException = class(ESimpleBaseLibException); - EEndOfStreamSimpleBaseLibException = class(EIOSimpleBaseLibException); - /// /// Represents a dynamic array of Byte. /// diff --git a/SimpleBaseLib/src/Packages/Delphi/SimpleBaseLib4PascalPackage.dpk b/SimpleBaseLib/src/Packages/Delphi/SimpleBaseLib4PascalPackage.dpk index 3779883..44618ae 100644 --- a/SimpleBaseLib/src/Packages/Delphi/SimpleBaseLib4PascalPackage.dpk +++ b/SimpleBaseLib/src/Packages/Delphi/SimpleBaseLib4PascalPackage.dpk @@ -37,6 +37,7 @@ contains SbpBitOperations in '..\..\Misc\SbpBitOperations.pas', SbpBinaryPrimitives in '..\..\Misc\SbpBinaryPrimitives.pas', SbpSimpleBaseLibTypes in '..\..\Misc\SbpSimpleBaseLibTypes.pas', + SbpSimpleBaseLibExceptions in '..\..\Misc\SbpSimpleBaseLibExceptions.pas', SbpBits in '..\..\Misc\SbpBits.pas', SbpCharUtilities in '..\..\Utilities\SbpCharUtilities.pas', SbpStreamUtilities in '..\..\Utilities\SbpStreamUtilities.pas', diff --git a/SimpleBaseLib/src/Packages/FPC/SimpleBaseLib4PascalPackage.lpk b/SimpleBaseLib/src/Packages/FPC/SimpleBaseLib4PascalPackage.lpk index 60aa1a1..7378d04 100644 --- a/SimpleBaseLib/src/Packages/FPC/SimpleBaseLib4PascalPackage.lpk +++ b/SimpleBaseLib/src/Packages/FPC/SimpleBaseLib4PascalPackage.lpk @@ -28,7 +28,7 @@ - + @@ -293,6 +293,10 @@ + + + + diff --git a/SimpleBaseLib/src/Packages/FPC/SimpleBaseLib4PascalPackage.pas b/SimpleBaseLib/src/Packages/FPC/SimpleBaseLib4PascalPackage.pas index 832bd2a..6833d01 100644 --- a/SimpleBaseLib/src/Packages/FPC/SimpleBaseLib4PascalPackage.pas +++ b/SimpleBaseLib/src/Packages/FPC/SimpleBaseLib4PascalPackage.pas @@ -15,15 +15,15 @@ interface SbpSimpleBaseLibConstants, SbpBase85Alphabet, SbpIBase85Alphabet, SbpBase58, SbpINumericBaseCoder, SbpBase32Alphabet, SbpINonAllocatingBaseCoder, SbpIBaseStreamCoder, SbpIBaseCoder, SbpAliasedBase32Alphabet, - SbpIAliasedBase32Alphabet, SbpIBase32Alphabet, - SbpCharMap, SbpPaddingPosition, SbpCodingAlphabet, SbpBase45Alphabet, + SbpIAliasedBase32Alphabet, SbpIBase32Alphabet, SbpCharMap, + SbpPaddingPosition, SbpCodingAlphabet, SbpBase45Alphabet, SbpIBase45Alphabet, SbpIDividingCoder, SbpBase62Alphabet, SbpBase58Alphabet, SbpBase36Alphabet, SbpBase10Alphabet, SbpMoneroBase58, SbpBase62, SbpBase36, SbpBase10, SbpBase16Alphabet, SbpIBase58, SbpIBase58Alphabet, SbpIBase62Alphabet, SbpIBase36Alphabet, SbpIBase10Alphabet, SbpIBase62, SbpIBase36, SbpIBase10, SbpSimpleBaseLibTypes, SbpICodingAlphabet, SbpIBase16Alphabet, SbpArrayUtilities, SbpCharUtilities, SbpBits, - SbpBinaryPrimitives, SbpBitOperations; + SbpBinaryPrimitives, SbpBitOperations, SbpSimpleBaseLibExceptions; implementation diff --git a/SimpleBaseLib/src/Utilities/SbpStreamUtilities.pas b/SimpleBaseLib/src/Utilities/SbpStreamUtilities.pas index f8e574a..8d7848e 100644 --- a/SimpleBaseLib/src/Utilities/SbpStreamUtilities.pas +++ b/SimpleBaseLib/src/Utilities/SbpStreamUtilities.pas @@ -7,7 +7,8 @@ interface uses Classes, SysUtils, - SbpSimpleBaseLibTypes; + SbpSimpleBaseLibTypes, + SbpSimpleBaseLibExceptions; resourcestring SErrBlockSizeMustBePositive = 'Block size must be positive';