summary refs log tree commit diff
path: root/crypto (follow)
Commit message (Expand)AuthorAgeFilesLines
* Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-214-11/+31
|\
| * Add Threefish entries to factories to get tests passingPeter Dettman2015-11-214-11/+31
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-2111-604/+1213
|\|
| * BMA-52 Fix SerpentEngine byte-orderingPeter Dettman2015-11-2111-604/+1213
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-202-2/+3
|\|
| * Call NextBytes instead of GenerateSeedPeter Dettman2015-11-201-1/+2
| * Don't reveal the output size in exception messagePeter Dettman2015-11-201-1/+1
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-191-0/+1
|\|
| * Handle COORD_SKEWED tooPeter Dettman2015-11-191-0/+1
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-192-2/+67
|\|
| * Save an inversion in ECDSA verification for common casesPeter Dettman2015-11-192-2/+67
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-185-14/+19
|\|
| * Move classes up into Org.BC.CryptoPeter Dettman2015-11-183-12/+12
| * Access entropy source via propertyPeter Dettman2015-11-182-2/+7
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-1718-64/+254
|\|
| * Improve usage/behaviour of SecureRandom.GenerateSeedPeter Dettman2015-11-1713-31/+178
| * Port some DES/DESEDE changes from JavaPeter Dettman2015-11-175-33/+76
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-172-2/+2
|\|
| * Add missing lock for PORTABLEPeter Dettman2015-11-171-1/+1
| * Fix file namePeter Dettman2015-11-171-1/+1
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-1628-25/+3844
|\|
| * Finish port of latest PRNG/DRBG stuff from JavaPeter Dettman2015-11-1624-1399/+2297
| * Remove redundant semicolonsPeter Dettman2015-11-164-4/+4
| * More rename/deletePeter Dettman2015-11-162-33/+0
| * Delete filesPeter Dettman2015-11-162-48/+0
| * More delete/move/renamePeter Dettman2015-11-166-986/+48
| * Rename/delete some filesPeter Dettman2015-11-163-103/+0
| * FIPS DRBG digest/hmac/CTRDavid Hook2015-11-1617-0/+3990
| * added 4[] ConcatenateDavid Hook2015-11-161-0/+31
| * added 3[] ConcatenateDavid Hook2015-11-161-0/+22
* | Switch to using the BouncyCastle.snk file from solution directory (from bc-cs...Peter Dettman2015-11-154-8/+14
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-141-16/+16
|\|
| * Only initialise static data oncePeter Dettman2015-11-141-16/+16
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-144-13/+23
|\|
| * Check there is no trailing data in Asn1Object.FromByteArrayPeter Dettman2015-11-144-13/+23
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-138-52/+110
|\|
| * Update ECPrivateKeyStructure following Java APIPeter Dettman2015-11-136-38/+96
| * Obsolete sequence constructor and refactorPeter Dettman2015-11-131-11/+12
| * Use portable methods for ASCII conversionPeter Dettman2015-11-131-3/+2
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-136-10/+64
|\|
| * Include basic encode/parse testPeter Dettman2015-11-131-0/+4
| * Further refinement to random prime constructorPeter Dettman2015-11-131-3/+2
| * According to RFC 6066, host_name should use ASCII encodingPeter Dettman2015-11-131-6/+7
| * Fix length checkPeter Dettman2015-11-131-1/+1
| * added GetInstance methodsDavid Hook2015-11-132-0/+50
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-1233-165/+182
|\|
| * Review of culture-independent String comparison methodsPeter Dettman2015-11-1232-146/+165
| * Refactoring of "unused bits" changesPeter Dettman2015-11-121-19/+17
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-124-3/+50
|\|
| * Use culture-independent prefix-check in MacUtilities.GetMacPeter Dettman2015-11-124-3/+50
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-101-0/+4
|\|
| * Add sanity check on input lengthPeter Dettman2015-11-101-0/+4
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-1070-349/+580
|\|
| * Address various compiler warningsPeter Dettman2015-11-1048-106/+96
| * Fix IV check for 64-bit blockSizePeter Dettman2015-11-101-3/+5
| * Add BerBitString and improve "unused bit" handlingPeter Dettman2015-11-1026-178/+373
| * Add more PkiFailureInfo constantsPeter Dettman2015-11-102-65/+102
| * Improve random prime constructorPeter Dettman2015-11-091-11/+7
| * Add contributor entriesPeter Dettman2015-11-091-1/+12
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-092-12/+12
|\|
| * Add DOTNET and LIB preprocessor flags as per BouncyCastle-PCLPeter Dettman2015-11-0915-5/+35
* | A few changes in the use of LIB preprocessor flagPeter Dettman2015-11-093-5/+11
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-091-1/+1
|\|
| * fixed argument null messageDavid Hook2015-11-091-1/+1
| * Fix weird characterPeter Dettman2015-11-081-1/+1
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-087-14/+28
|\|
| * Remove old TODOPeter Dettman2015-11-081-1/+0
| * Needs to be in Org.BouncyCastle namespace for nowPeter Dettman2015-11-081-1/+1
| * A few more changes to sync up with BouncyCastle-PCLPeter Dettman2015-11-088-8/+51
* | Whitespace, comments, unused import, missing test codePeter Dettman2015-11-085-10/+30
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-083-4/+27
|\|
| * Some more PORTABLE updatesPeter Dettman2015-11-083-3/+27
* | Merge branch 'master' of git.bouncycastle.org:bc-csharp into pclPeter Dettman2015-11-0889-700/+1617
|\|
| * Tighten up the correspondence b/w Close/DisposePeter Dettman2015-11-0820-44/+34
| * DateTime portability changes for tests under PORTABLEPeter Dettman2015-11-083-11/+29
| * Missed a Close/Dispose changePeter Dettman2015-11-081-5/+4
| * Use utility method from Enums to avoid platform-specific code herePeter Dettman2015-11-081-1/+1
| * Update to "Null parameters" behaviour from Java 1.53Peter Dettman2015-11-081-44/+20
| * AddOptional can take varargsPeter Dettman2015-11-083-6/+3
| * WhitespacePeter Dettman2015-11-082-2/+2
| * Oops, fix method namesPeter Dettman2015-11-0429-30/+30
| * Replace Close with Dispose for PORTABLEPeter Dettman2015-11-0430-71/+515
| * Port updated revocation test from JavaPeter Dettman2015-11-041-43/+97
| * Remove redundant FlushPeter Dettman2015-11-041-2/+0
| * Change Close calls to Dispose calls for PORTABLEPeter Dettman2015-11-0452-83/+135
| * Perform counter increment without branchesPeter Dettman2015-11-031-4/+5
| * Improve performance of AES key schedulePeter Dettman2015-10-303-93/+310
| * Rewrite (block) update for improved performancePeter Dettman2015-10-301-15/+21
| * Port PrimesTest from JavaPeter Dettman2015-10-293-0/+185
| * Use optimized MR rounds only in random-search contextsPeter Dettman2015-10-294-30/+41
| * Avoid duplicate testsPeter Dettman2015-10-291-3/+3
| * Increase number of small factors tested forPeter Dettman2015-10-291-29/+74
| * Optimize the number of Rabin-Miller rounds used for probable primality testingPeter Dettman2015-10-291-4/+19
| * Mark expensive tests with ExplicitAttribute and add faster alternativesPeter Dettman2015-10-281-36/+62
* | Fix Compare() declarationPeter Dettman2015-10-281-1/+1
* | Fix duplicated 'using' directivesPeter Dettman2015-10-283-4/+0
* | Merge branch 'master-vs12' into pclOren Novotny2015-10-275-118/+139
|\ \
| * | Merge branch 'master' into master-vs12Oren Novotny2015-10-276-91/+153
| |\|
| | * Pull a few PORTABLE changes from BouncyCastle-PCL (with fixes)Peter Dettman2015-10-274-89/+151
| | * Exclude some tests for PORTABLEPeter Dettman2015-10-272-2/+2
* | | Merge branch 'master-vs12' into pclOren Novotny2015-10-2620-100/+105
|\| |
| * | Merge branch 'master' into master-vs12Oren Novotny2015-10-2620-100/+105
| |\|
| | * Update version to 1.8.0-RC.3 release-1.8.0-RC.3Peter Dettman2015-10-261-1/+1
| | * Add entry for Michael KruegerPeter Dettman2015-10-261-0/+3
| | * removed fileDavid Hook2015-10-261-23/+0
| | * Add suffix check for test filesPeter Dettman2015-10-251-1/+4
| | * Fixed method name on verifier factory classDavid Hook2015-10-246-6/+6
| | * Fixed naming of Asn1 implementationDavid Hook2015-10-243-4/+4
| | * fixed file nameDavid Hook2015-10-241-0/+23
| | * :xMerge remote-tracking branch 'origin/master'David Hook2015-10-2416-62/+62
| | |\
| | | * Final naming refactorDavid Hook2015-10-2416-62/+62
| | * | added changed filesDavid Hook2015-10-241-3/+3
| | |/
| | * comment updateDavid Hook2015-10-243-15/+14
| | * comment updateDavid Hook2015-10-244-19/+19
| | * comment updateDavid Hook2015-10-241-1/+1
| | * updated to reflect name changeDavid Hook2015-10-241-1/+1
| | * renamed ISignatureCalculator to ISignatureCalculatorFactoryDavid Hook2015-10-2411-43/+43
* | | Merge branch 'master-vs12' into pclOren Novotny2015-10-2412-37/+24
|\| |
| * | Merge branch 'master' into master-vs12Oren Novotny2015-10-2412-37/+24
| |\|
| | * Merge branch 'master' of bcgit@git.bouncycastle.org:bc-csharp.gitDavid Hook2015-10-221-13/+12
| | |\
| | | * Fix faulty constructor and refactorPeter Dettman2015-10-221-13/+12
| | * | Changed name of Value() to Collect()David Hook2015-10-229-12/+12
| | |/
| | * Merge branch 'master' of bcgit@git.bouncycastle.org:bc-csharp.gitDavid Hook2015-10-212-12/+0
| | |\
| | | * Remove inapplicable comments in key generatorsPeter Dettman2015-10-212-12/+0
| | * | Added missed files on IBlockResult changeDavid Hook2015-10-212-3/+3
| | |/
| | * Renamed DoFinal to Value on IBlockResult.David Hook2015-10-217-9/+9
* | | remove files not in masterOren Novotny2015-10-1812-20299/+0
* | | generate other tfm's as needed and ensure dotnet isn't applied to older frame...Oren Novotny2015-10-181-0/+4
* | | Add support for .NET Core. Brings back filesystem-based operationsOren Novotny2015-10-187-17/+114
* | | Change dotnet -> sys_runtimeOren Novotny2015-10-182-3/+3
* | | handle version info cleanlyOren Novotny2015-10-181-13/+1
* | | Merge in latest from masterOren Novotny2015-10-18103-505/+651
|\| |
| * | Merge branch 'master' into master-vs12Oren Novotny2015-10-18101-436/+587
| |\|
| | * SigOutputStream removed from the other-platform path too.Peter Dettman2015-10-181-1/+1
| | * Update version to 1.8.0-RC.2 release-1.8.0-RC.2Peter Dettman2015-10-181-1/+1
| | * PCL: No support for FileInfo/FileStreamPeter Dettman2015-10-183-0/+6
| | * http://www.bouncycastle.org/jira/browse/BMA-98Peter Dettman2015-10-184-39/+261
| | * Remove the 'debug' logging from NaccacheSternPeter Dettman2015-10-183-176/+34
| | * PCL: Various non-IO changesPeter Dettman2015-10-1830-46/+91
| | * No SerializableAttribute in PCLPeter Dettman2015-10-1841-41/+41
| | * Merge branch 'master' of git.bouncycastle.org:bc-csharpPeter Dettman2015-10-181-39/+34
| | |\
| | | * BMA-132 added support for ISignatureCalculator interfaceDavid Hook2015-10-181-39/+34
| | * | More SIC changes for consistency with Java APIPeter Dettman2015-10-181-4/+6
| | * | Port extra test case from Java APIPeter Dettman2015-10-181-3/+19
| | * | http://www.bouncycastle.org/jira/browse/BMA-82Peter Dettman2015-10-184-7/+13
| | |/
| | * http://www.bouncycastle.org/jira/browse/BMA-113Peter Dettman2015-10-184-25/+17
| | * http://www.bouncycastle.org/jira/browse/BMA-128Peter Dettman2015-10-183-3/+3
| | * Followups for the SicBlockCipher changesPeter Dettman2015-10-182-3/+5
| | * Add CalculateMac utility methodPeter Dettman2015-10-181-0/+8
| | * Switch to Strings.ToByteArray as is used in the Java APIPeter Dettman2015-10-181-2/+2
| | * SIC renamed to CTR, minimum IV length check addedPeter Dettman2015-10-181-24/+24
| | * http://www.bouncycastle.org/jira/browse/BMA-90Peter Dettman2015-10-184-29/+24
| | * Added missing key generation codePeter Dettman2015-10-181-0/+4
* | | add version infoOren Novotny2015-10-181-1/+3
* | | merge latest from masterOren Novotny2015-10-1828-121/+2977
|\| |
| * | Merge branch 'master' into master-vs12Oren Novotny2015-10-1827-122/+2977
| |\|
| | * https://github.com/bcgit/bc-csharp/issues/37Peter Dettman2015-10-1711-89/+588
| | * Fix various warnings from recent commitsPeter Dettman2015-10-177-35/+35
| | * Fix case of JPAKE filenamesPeter Dettman2015-10-177-0/+0
| | * Merge branch 'master' into avanpo-masterPeter Dettman2015-10-171-1/+1
| | |\
| | | * Can't use var keyword in .NET 1.1Peter Dettman2015-10-171-1/+1
| | * | Various JPAKE changes to fit existing code conventionsPeter Dettman2015-10-1712-354/+394
| | * | Merge branch 'master' of https://github.com/avanpo/bc-csharp into avanpo-masterPeter Dettman2015-10-1710-0/+2316
| | |\ \ | | | |/ | | |/|
| | | * more commenting fixesAlex van Poppelen2015-10-171-8/+10
| | | * cleaned up commenting a bitAlex van Poppelen2015-10-172-316/+263
| | | * ported jpake library and tests from javaAlex van Poppelen2015-10-1710-0/+2367
* | | | merge to pclOren Novotny2015-10-1711-258/+822
|\| | |
| * | | Merge branch 'master' into master-vs12Oren Novotny2015-10-1711-288/+852
| |\| |
| | * | RefactoringPeter Dettman2015-10-171-12/+12
| | * | Fix whitespace and remove Dispose methodPeter Dettman2015-10-172-93/+53
| | * | Merge branch 'keyhasing' of https://github.com/darkoperator/bc-csharp into da...Peter Dettman2015-10-174-6/+195
| | |\ \
| | | * | Add support to specifying Hash Algo when adding a subkey and generating a key...Carlos Perez2014-06-084-6/+195
| | * | | added DSA tests for SHA-2David Hook2015-10-171-1/+27
| | * | | Added test of SignerInfoGeneratorDavid Hook2015-10-171-2/+97
| | * | | Merge branch 'master' of bcgit@git.bouncycastle.org:bc-csharp.gitDavid Hook2015-10-1714-707/+1002
| | |\ \ \ | | | | |/ | | | |/|
| | * | | Initial cut of SignerInfoGenerator for CMSDavid Hook2015-10-171-1/+1
| | * | | Initial cut of SignerInfoGeneratorDavid Hook2015-10-175-212/+506
* | | | | Switch to PCL 259 for CoreCLR compatOren Novotny2015-10-161-1/+1
* | | | | update to latest refgenOren Novotny2015-10-162-3/+3
* | | | | Merge branch 'master-vs12' into pclOren Novotny2015-10-16170-4503/+24422
|\| | | |
| * | | | Merge branch 'master' into master-vs12Oren Novotny2015-10-16170-4503/+24433
| |\ \ \ \ | | | |/ / | | |/| |
| | * | | Port of non-blocking TLS API from JavaPeter Dettman2015-10-168-29/+665
| | * | | RefactoringPeter Dettman2015-10-164-464/+237
| | * | | Avoid Interlocked.Increment(Int64) on .NET CFPeter Dettman2015-10-162-3/+23
| | * | | RefactoringPeter Dettman2015-10-161-265/+116
| | * | | Add new files to projectPeter Dettman2015-10-161-0/+15
| | |/ /
| | * | Further work of signature/verification calculators.David Hook2015-10-1614-232/+430
| | * | Close files after readingPeter Dettman2015-10-141-2/+10
| | * | Port latest X9 EC stuff from Java APIPeter Dettman2015-10-148-214/+224
| | * | Fixed single line file handlingPeter Dettman2015-10-142-44/+77
| | * | Support "CMS" headerPeter Dettman2015-10-141-0/+1
| | * | Consolidate all F2m decompression methods into AbstractF2mPeter Dettman2015-10-1419-1735/+96
| | * | Add ECCDH as valid aliasPeter Dettman2015-10-141-5/+5
| | * | Added "Lenstra" checkPeter Dettman2015-10-141-97/+101
| | * | Added extra OIDs.David Hook2015-10-141-2/+28
| | * | Port of latest PGP tests and supporting code changesPeter Dettman2015-10-1252-358/+17347
| | * | Add new file entriesPeter Dettman2015-10-121-0/+25
| | * | Merge remote-tracking branch 'origin/master'David Hook2015-10-121-0/+13
| | |\ \
| | | * | added EC MQV disclaimerDavid Hook2015-10-121-0/+13
| | * | | removed bogus imports (old FilterStream)David Hook2015-10-123-84/+87
| | |/ /
| | * | Introduced Utilities.IO.FilterStreamDavid Hook2015-10-125-3/+71
| | * | Fixed genericsDavid Hook2015-10-128-30/+24
| | * | Initial cut of signature generation operators.David Hook2015-10-1210-120/+746
| | * | Port of recent ISO trailer updates from JavaPeter Dettman2015-10-025-102/+134
| | * | Add NIST OIDs and DigestUtilities entries for SHA3Peter Dettman2015-10-012-2/+28
| | * | updateDavid Hook2015-09-101-1/+1
| | * | updateDavid Hook2015-09-101-1/+9
| | * | Correct 1605-bit test vector for SHA3-512Peter Dettman2015-09-072-14/+8
| | * | Avoid duplicate test executionPeter Dettman2015-09-062-2/+0
| | * | Fix class declarationPeter Dettman2015-09-061-1/+1
| | * | Merge branch 'master' of git.bouncycastle.org:bc-csharpPeter Dettman2015-09-0613-835/+3567
| | |\ \
| | | * | Port of Keccak, SHA-3, SHAKE from JavaPeter Dettman2015-09-0611-784/+3203
| | | * | Add Miller-Rabin methodsPeter Dettman2015-08-141-45/+319
| | | * | Add consistency checks with custom curves and regularPeter Dettman2015-08-141-6/+45
| | * | | Merge branch 'master' of git.bouncycastle.org:bc-csharpPeter Dettman2015-08-1436-117/+2073
| | |\| |
| | | * | Refactor NextPacketTag()Peter Dettman2015-08-141-11/+7
| | | * | Optimize (Inv_)Mcol methods in AES enginesPeter Dettman2015-08-143-20/+55
| | | * | Fix 64-bit multiply (not used)Peter Dettman2015-08-142-5/+73
| | | * | Use Itoh-Tsujii inversion (with extended bases for some cases)Peter Dettman2015-08-1318-18/+376
| | | * | Switch from lookup table to bit twiddlingPeter Dettman2015-08-131-42/+67
| | * | | Add locking to lazy factory propertyPeter Dettman2015-06-121-6/+9
* | | | | Sign assembly to match bcgit and resolve #3. Needs to use real bc snk file wh...Oren Novotny2015-07-303-3/+13
* | | | | Add support for dotnet and running on CoreCLROren Novotny2015-07-302-20/+20
* | | | | Merge branch 'master-vs12' into pclOren Novotny2015-07-3044-136/+2333
|\| | | |
| * | | | Merge branch 'master' into master-vs12Oren Novotny2015-07-3044-136/+2333
| |\ \ \ \ | | | |/ / | | |/| |
| | * | | Move lazy initialization under lockPeter Dettman2015-06-261-16/+19
| | * | | Latest custom EC updates from Java APIPeter Dettman2015-06-1915-12/+1484
| | * | | Merge branch 'master' of https://github.com/FancyFon/bc-csharp into FancyFon-...Peter Dettman2015-06-172-4/+2
| | |\ \ \ | | | |/ / | | |/| |
| | | * | Changed PkixCertPathChecker Check method signature, so chosen unsupported cer...Marcin Paszylk2015-06-162-4/+2
| | * | | Performance optimizationPeter Dettman2015-06-121-14/+42
| | * | | Improve limit-testing to avoid overflow problemsPeter Dettman2015-06-111-3/+3
| | * | | Add new class PrimesPeter Dettman2015-06-112-0/+287
| | |/ /
| | * | Add range checks to F2m field elementsPeter Dettman2015-06-099-8/+11
| | * | Code cleanupPeter Dettman2015-05-271-59/+69
| | * | Merge branch 'pkcs5v2sha2' of https://github.com/bartland/bc-csharp into bart...Peter Dettman2015-05-271-13/+59
| | |\ \
| | | * | Support (low-level) for non-default PRFs for PKCS5v2bartland2015-04-101-13/+59
| | * | | Change default DH group chosen by TLS server to 2048 bitsPeter Dettman2015-05-255-16/+36
| | * | | Port recent Java updatesPeter Dettman2015-04-189-5/+331
| | * | | Remove overly strict check on ECC extensionsPeter Dettman2015-04-111-2/+6
| | |/ /
* | | | Add Sys.Runtime PCLOren Novotny2015-04-256-6/+140
* | | | Merge branch 'master-vs12' into pclOren Novotny2015-04-25298-3350/+24669
|\| | |
| * | | Merge branch 'master' into master-vs12Oren Novotny2015-04-25298-3351/+24671
| |\| |
| | * | Update version to 1.8.0-RC.1 prior to release release-1.8.0-RC.1Peter Dettman2015-03-301-1/+1
| | * | ValidDays only returns 0 if there is no expiry, and is ObsoletePeter Dettman2015-03-271-21/+26
| | * | Improved docs and code cleanupPeter Dettman2015-03-261-46/+11
| | * | Provide a KeyContainerName when creating an RSACryptoServiceProviderPeter Dettman2015-03-261-1/+3
| | * | Retain the OID actually used when initialized by keysizePeter Dettman2015-03-261-0/+1
| | * | Added AES, IDEA, and CAST5 CBC S/MIME Capability identifiersJeffrey Stedfast2015-03-261-0/+6
| | * | F2mCurve cleanupPeter Dettman2015-03-263-6/+30
| | * | Merge branch 'mpsinfo-duplicatedigest'Peter Dettman2015-03-251-8/+14
| | |\ \