Rename com.r3corda -> net.corda

This commit is contained in:
Mike Hearn
2016-11-10 14:14:38 +01:00
parent 91c5f2ff57
commit ce99f354cb
4022 changed files with 2476 additions and 158936 deletions

View File

@ -1,10 +1,10 @@
package com.r3corda.contracts
package net.corda.contracts
import com.r3corda.core.contracts.*
import com.r3corda.core.crypto.Party
import com.r3corda.core.crypto.SecureHash
import com.r3corda.core.crypto.toStringShort
import com.r3corda.core.transactions.TransactionBuilder
import net.corda.core.contracts.*
import net.corda.core.crypto.Party
import net.corda.core.crypto.SecureHash
import net.corda.core.crypto.toStringShort
import net.corda.core.transactions.TransactionBuilder
import java.security.PublicKey
import java.time.LocalDate
import java.time.ZoneOffset
@ -163,4 +163,4 @@ class AccountReceivable : Contract {
// legal Prose
override val legalContractReference: SecureHash = SecureHash.sha256("AccountReceivable")
}
}

View File

@ -1,10 +1,10 @@
package com.r3corda.contracts
package net.corda.contracts
import com.r3corda.core.contracts.*
import com.r3corda.core.crypto.Party
import com.r3corda.core.crypto.SecureHash
import com.r3corda.core.days
import com.r3corda.core.transactions.TransactionBuilder
import net.corda.core.contracts.*
import net.corda.core.crypto.Party
import net.corda.core.crypto.SecureHash
import net.corda.core.days
import net.corda.core.transactions.TransactionBuilder
import java.security.PublicKey
import java.time.Instant
import java.time.LocalDate

View File

@ -1,10 +1,10 @@
package com.r3corda.contracts
package net.corda.contracts
import com.fasterxml.jackson.annotation.JsonIgnoreProperties
import com.r3corda.core.contracts.*
import com.r3corda.core.crypto.Party
import com.r3corda.core.crypto.SecureHash
import com.r3corda.core.transactions.TransactionBuilder
import net.corda.core.contracts.*
import net.corda.core.crypto.Party
import net.corda.core.crypto.SecureHash
import net.corda.core.transactions.TransactionBuilder
import java.security.PublicKey
import java.time.LocalDate
import java.time.ZoneOffset
@ -163,4 +163,4 @@ class Invoice : Contract {
}
override val legalContractReference: SecureHash = SecureHash.sha256("Invoice")
}
}

View File

@ -1,10 +1,10 @@
package com.r3corda.contracts
package net.corda.contracts
import com.r3corda.core.contracts.*
import com.r3corda.core.crypto.NullPublicKey
import com.r3corda.core.crypto.Party
import com.r3corda.core.crypto.SecureHash
import com.r3corda.core.transactions.TransactionBuilder
import net.corda.core.contracts.*
import net.corda.core.crypto.NullPublicKey
import net.corda.core.crypto.Party
import net.corda.core.crypto.SecureHash
import net.corda.core.transactions.TransactionBuilder
import java.security.PublicKey
import java.time.LocalDate
import java.time.Period

View File

@ -1,11 +1,11 @@
package com.r3corda.contracts
package net.corda.contracts
import com.r3corda.contracts.asset.sumCashBy
import com.r3corda.core.contracts.*
import com.r3corda.core.crypto.Party
import com.r3corda.core.crypto.SecureHash
import com.r3corda.core.days
import com.r3corda.core.transactions.TransactionBuilder
import net.corda.contracts.asset.sumCashBy
import net.corda.core.contracts.*
import net.corda.core.crypto.Party
import net.corda.core.crypto.SecureHash
import net.corda.core.days
import net.corda.core.transactions.TransactionBuilder
import java.security.PublicKey
import java.time.Instant
import java.time.LocalDate
@ -151,4 +151,4 @@ class LOC : Contract {
}
}
}

View File

@ -1,7 +1,7 @@
package com.r3corda.contracts
package net.corda.contracts
import com.r3corda.core.contracts.Amount
import com.r3corda.core.contracts.Issued
import net.corda.core.contracts.Amount
import net.corda.core.contracts.Issued
import java.util.*
/**
@ -84,4 +84,4 @@ object LocDataStructures {
GREEN_CLAUSE
}
}
}

View File

@ -1,9 +1,9 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.core.contracts.Amount
import com.r3corda.core.contracts.Frequency
import com.r3corda.core.crypto.Party
import com.r3corda.core.crypto.SecureHash
import net.corda.core.contracts.Amount
import net.corda.core.contracts.Frequency
import net.corda.core.crypto.Party
import net.corda.core.crypto.SecureHash
import java.math.BigDecimal
import java.time.LocalDate
import java.util.*

View File

@ -1,7 +1,7 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.core.contracts.BusinessCalendar
import com.r3corda.core.contracts.Tenor
import net.corda.core.contracts.BusinessCalendar
import net.corda.core.contracts.Tenor
import java.math.BigDecimal
import java.time.Instant
import java.time.LocalDate
@ -160,4 +160,4 @@ fun interest(@Suppress("UNUSED_PARAMETER") amount: BigDecimal, @Suppress("UNUSED
data class Fixing(val source: String, val date: Perceivable<Instant>, val tenor: Tenor) : Perceivable<BigDecimal>
fun fix(source: String, date: Perceivable<Instant>, tenor: Tenor): Perceivable<BigDecimal> = Fixing(source, date, tenor)
fun fix(source: String, date: LocalDate, tenor: Tenor): Perceivable<BigDecimal> = Fixing(source, const(date.toInstant()), tenor)
fun fix(source: String, date: LocalDate, tenor: Tenor): Perceivable<BigDecimal> = Fixing(source, const(date.toInstant()), tenor)

View File

@ -1,9 +1,9 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.core.contracts.*
import com.r3corda.core.crypto.Party
import com.r3corda.core.crypto.SecureHash
import com.r3corda.core.transactions.TransactionBuilder
import net.corda.core.contracts.*
import net.corda.core.crypto.Party
import net.corda.core.crypto.SecureHash
import net.corda.core.transactions.TransactionBuilder
import java.math.BigDecimal
import java.security.PublicKey
import java.time.Instant
@ -25,7 +25,7 @@ class UniversalContract : Contract {
interface Commands : CommandData {
data class Fix(val fixes: List<com.r3corda.core.contracts.Fix>) : Commands
data class Fix(val fixes: List<net.corda.core.contracts.Fix>) : Commands
// transition according to business rules defined in contract
data class Action(val name: String) : Commands

View File

@ -1,10 +1,10 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.google.common.collect.ImmutableSet
import com.google.common.collect.Sets
import com.r3corda.core.contracts.Amount
import com.r3corda.core.contracts.Frequency
import com.r3corda.core.crypto.Party
import net.corda.core.contracts.Amount
import net.corda.core.contracts.Frequency
import net.corda.core.crypto.Party
import com.sun.org.apache.xpath.internal.operations.Bool
import java.math.BigDecimal
import java.security.PublicKey

View File

@ -1,6 +1,6 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.core.crypto.Party
import net.corda.core.crypto.Party
import java.math.BigDecimal
import java.util.*

View File

@ -1,8 +1,8 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.core.contracts.BusinessCalendar
import com.r3corda.core.contracts.Frequency
import com.r3corda.core.crypto.Party
import net.corda.core.contracts.BusinessCalendar
import net.corda.core.contracts.Frequency
import net.corda.core.crypto.Party
import java.math.BigDecimal
import java.time.LocalDate
import java.util.*

View File

@ -1,15 +1,15 @@
package com.r3corda.contracts
package net.corda.contracts
import com.r3corda.core.contracts.DOLLARS
import com.r3corda.core.transactions.LedgerTransaction
import com.r3corda.core.contracts.`issued by`
import com.r3corda.core.seconds
import com.r3corda.core.serialization.OpaqueBytes
import com.r3corda.core.utilities.DUMMY_NOTARY
import com.r3corda.core.utilities.DUMMY_NOTARY_KEY
import com.r3corda.core.utilities.TEST_TX_TIME
import com.r3corda.testing.node.MockServices
import com.r3corda.testing.*
import net.corda.core.contracts.DOLLARS
import net.corda.core.transactions.LedgerTransaction
import net.corda.core.contracts.`issued by`
import net.corda.core.seconds
import net.corda.core.serialization.OpaqueBytes
import net.corda.core.utilities.DUMMY_NOTARY
import net.corda.core.utilities.DUMMY_NOTARY_KEY
import net.corda.core.utilities.TEST_TX_TIME
import net.corda.testing.node.MockServices
import net.corda.testing.*
import org.junit.Before
import java.time.Instant
import java.time.ZoneOffset
@ -122,7 +122,7 @@ class AccountReceivableTests {
output { initialAR.data }
command(MEGA_CORP_PUBKEY) { AccountReceivable.Commands.Apply() }
timestamp(TEST_TX_TIME)
this `fails with` "Required com.r3corda.contracts.Invoice.Commands command"
this `fails with` "Required net.corda.contracts.Invoice.Commands command"
}
transaction {
@ -337,4 +337,4 @@ class AccountReceivableTests {
}
*/
}
}

View File

@ -1,12 +1,12 @@
package com.r3corda.contracts
package net.corda.contracts
import com.r3corda.core.contracts.*
import com.r3corda.core.crypto.SecureHash
import com.r3corda.core.transactions.TransactionBuilder
import com.r3corda.core.utilities.DUMMY_NOTARY
import com.r3corda.core.utilities.DUMMY_NOTARY_KEY
import com.r3corda.testing.node.MockServices
import com.r3corda.testing.*
import net.corda.core.contracts.*
import net.corda.core.crypto.SecureHash
import net.corda.core.transactions.TransactionBuilder
import net.corda.core.utilities.DUMMY_NOTARY
import net.corda.core.utilities.DUMMY_NOTARY_KEY
import net.corda.testing.node.MockServices
import net.corda.testing.*
import org.junit.Before
import org.junit.Test
import java.time.Instant

View File

@ -1,11 +1,11 @@
package com.r3corda.contracts
package net.corda.contracts
import com.r3corda.core.contracts.DOLLARS
import com.r3corda.core.contracts.`issued by`
import com.r3corda.core.serialization.OpaqueBytes
import com.r3corda.core.utilities.DUMMY_PUBKEY_1
import com.r3corda.core.utilities.TEST_TX_TIME
import com.r3corda.testing.*
import net.corda.core.contracts.DOLLARS
import net.corda.core.contracts.`issued by`
import net.corda.core.serialization.OpaqueBytes
import net.corda.core.utilities.DUMMY_PUBKEY_1
import net.corda.core.utilities.TEST_TX_TIME
import net.corda.testing.*
import org.junit.Test
import java.time.LocalDate
import java.util.*
@ -250,4 +250,4 @@ class InvoiceTests {
// this `fails requirement` "the payment date must be today or in the past"
// }
}
}
}

View File

@ -1,13 +1,13 @@
package com.r3corda.contracts
package net.corda.contracts
import com.r3corda.contracts.asset.Cash
import com.r3corda.core.contracts.*
import com.r3corda.core.crypto.SecureHash
import com.r3corda.core.serialization.OpaqueBytes
import com.r3corda.core.utilities.DUMMY_NOTARY
import com.r3corda.core.utilities.DUMMY_NOTARY_KEY
import com.r3corda.testing.node.MockServices
import com.r3corda.testing.*
import net.corda.contracts.asset.Cash
import net.corda.core.contracts.*
import net.corda.core.crypto.SecureHash
import net.corda.core.serialization.OpaqueBytes
import net.corda.core.utilities.DUMMY_NOTARY
import net.corda.core.utilities.DUMMY_NOTARY_KEY
import net.corda.testing.node.MockServices
import net.corda.testing.*
import org.junit.Before
import org.junit.Test
import java.time.Instant

View File

@ -1,11 +1,11 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.core.contracts.BusinessCalendar
import com.r3corda.core.contracts.FixOf
import com.r3corda.core.contracts.Frequency
import com.r3corda.core.contracts.Tenor
import com.r3corda.core.utilities.DUMMY_NOTARY
import com.r3corda.testing.transaction
import net.corda.core.contracts.BusinessCalendar
import net.corda.core.contracts.FixOf
import net.corda.core.contracts.Frequency
import net.corda.core.contracts.Tenor
import net.corda.core.utilities.DUMMY_NOTARY
import net.corda.testing.transaction
import org.junit.Test
import java.time.Instant
import java.time.LocalDate
@ -199,32 +199,32 @@ class Cap {
tweak {
// wrong source
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBORx", tradeDate, Tenor("3M")), 1.0.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBORx", tradeDate, Tenor("3M")), 1.0.bd))) }
this `fails with` "relevant fixing must be included"
}
tweak {
// wrong date
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBOR", tradeDate.plusYears(1), Tenor("3M")), 1.0.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBOR", tradeDate.plusYears(1), Tenor("3M")), 1.0.bd))) }
this `fails with` "relevant fixing must be included"
}
tweak {
// wrong tenor
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBOR", tradeDate, Tenor("9M")), 1.0.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBOR", tradeDate, Tenor("9M")), 1.0.bd))) }
this `fails with` "relevant fixing must be included"
}
tweak {
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBOR", tradeDate, Tenor("3M")), 1.5.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBOR", tradeDate, Tenor("3M")), 1.5.bd))) }
this `fails with` "output state does not reflect fix command"
}
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBOR", tradeDate, Tenor("3M")), 1.0.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBOR", tradeDate, Tenor("3M")), 1.0.bd))) }
this.verifies()
}
@ -283,34 +283,34 @@ class Cap {
tweak {
// wrong source
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBORx", BusinessCalendar.parseDateFromString("2017-03-01"), Tenor("3M")), 1.0.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBORx", BusinessCalendar.parseDateFromString("2017-03-01"), Tenor("3M")), 1.0.bd))) }
this `fails with` "relevant fixing must be included"
}
tweak {
// wrong date
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBOR", BusinessCalendar.parseDateFromString("2017-03-01").plusYears(1), Tenor("3M")), 1.0.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBOR", BusinessCalendar.parseDateFromString("2017-03-01").plusYears(1), Tenor("3M")), 1.0.bd))) }
this `fails with` "relevant fixing must be included"
}
tweak {
// wrong tenor
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBOR", BusinessCalendar.parseDateFromString("2017-03-01"), Tenor("9M")), 1.0.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBOR", BusinessCalendar.parseDateFromString("2017-03-01"), Tenor("9M")), 1.0.bd))) }
this `fails with` "relevant fixing must be included"
}
tweak {
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBOR", BusinessCalendar.parseDateFromString("2017-03-01"), Tenor("3M")), 1.5.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBOR", BusinessCalendar.parseDateFromString("2017-03-01"), Tenor("3M")), 1.5.bd))) }
this `fails with` "output state does not reflect fix command"
}
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBOR", BusinessCalendar.parseDateFromString("2017-03-01"), Tenor("3M")), 1.0.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBOR", BusinessCalendar.parseDateFromString("2017-03-01"), Tenor("3M")), 1.0.bd))) }
this.verifies()
}
}
}
}

View File

@ -1,14 +1,12 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.core.contracts.FixOf
import com.r3corda.core.contracts.Tenor
import com.r3corda.testing.*
import com.r3corda.core.utilities.DUMMY_NOTARY
import net.corda.core.contracts.FixOf
import net.corda.core.contracts.Tenor
import net.corda.core.utilities.DUMMY_NOTARY
import net.corda.testing.transaction
import org.junit.Test
import java.math.BigDecimal
import java.time.Instant
import java.time.LocalDate
import java.util.*
/**
* Created by sofusmortensen on 25/08/16.
@ -106,35 +104,35 @@ class Caplet {
tweak {
// wrong source
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBORx", tradeDate, Tenor("6M")), 1.0.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBORx", tradeDate, Tenor("6M")), 1.0.bd))) }
this `fails with` "relevant fixing must be included"
}
tweak {
// wrong date
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBOR", tradeDate.plusYears(1), Tenor("6M")), 1.0.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBOR", tradeDate.plusYears(1), Tenor("6M")), 1.0.bd))) }
this `fails with` "relevant fixing must be included"
}
tweak {
// wrong tenor
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBOR", tradeDate, Tenor("3M")), 1.0.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBOR", tradeDate, Tenor("3M")), 1.0.bd))) }
this `fails with` "relevant fixing must be included"
}
tweak {
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBOR", tradeDate, Tenor("6M")), 1.5.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBOR", tradeDate, Tenor("6M")), 1.5.bd))) }
this `fails with` "output state does not reflect fix command"
}
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(com.r3corda.core.contracts.Fix(FixOf("LIBOR", tradeDate, Tenor("6M")), 1.0.bd))) }
command(highStreetBank.owningKey) { UniversalContract.Commands.Fix(listOf(net.corda.core.contracts.Fix(FixOf("LIBOR", tradeDate, Tenor("6M")), 1.0.bd))) }
this.verifies()
}
}
}
}

View File

@ -1,7 +1,7 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.core.crypto.Party
import com.r3corda.core.crypto.generateKeyPair
import net.corda.core.crypto.Party
import net.corda.core.crypto.generateKeyPair
import org.junit.Test
import java.util.*
@ -131,4 +131,4 @@ class ContractDefinition {
}
}
}
}

View File

@ -1,7 +1,7 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.testing.*
import com.r3corda.core.utilities.DUMMY_NOTARY
import net.corda.testing.*
import net.corda.core.utilities.DUMMY_NOTARY
import org.junit.Test
import java.time.Instant
@ -179,4 +179,4 @@ class FXSwap {
this `fails with` "output states must match action result state"
}
}
}
}

View File

@ -1,9 +1,9 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.core.contracts.Frequency
import com.r3corda.core.contracts.Tenor
import com.r3corda.core.utilities.DUMMY_NOTARY
import com.r3corda.testing.transaction
import net.corda.core.contracts.Frequency
import net.corda.core.contracts.Tenor
import net.corda.core.utilities.DUMMY_NOTARY
import net.corda.testing.transaction
import org.junit.Test
import java.time.Instant
import java.time.LocalDate
@ -63,4 +63,4 @@ class IRS {
}
}
}
}

View File

@ -1,9 +1,9 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.core.contracts.BusinessCalendar
import com.r3corda.core.contracts.Frequency
import com.r3corda.core.utilities.DUMMY_NOTARY
import com.r3corda.testing.transaction
import net.corda.core.contracts.BusinessCalendar
import net.corda.core.contracts.Frequency
import net.corda.core.utilities.DUMMY_NOTARY
import net.corda.testing.transaction
import org.junit.Test
import java.time.Instant
import kotlin.test.assertEquals
@ -185,4 +185,4 @@ class RollOutTests {
}
}
}
}

View File

@ -1,6 +1,6 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.core.contracts.Frequency
import net.corda.core.contracts.Frequency
import java.math.BigDecimal
/**
@ -131,4 +131,4 @@ class Swaption {
}
}
}
}
}

View File

@ -1,7 +1,7 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.testing.*
import com.r3corda.core.utilities.DUMMY_NOTARY
import net.corda.testing.*
import net.corda.core.utilities.DUMMY_NOTARY
import org.junit.Test
import java.time.Instant
@ -140,4 +140,4 @@ class ZeroCouponBond {
}
}
}
}

View File

@ -1,9 +1,9 @@
package com.r3corda.contracts.universal
package net.corda.contracts.universal
import com.r3corda.core.contracts.Amount
import com.r3corda.core.contracts.USD
import com.r3corda.core.crypto.Party
import com.r3corda.core.crypto.generateKeyPair
import net.corda.core.contracts.Amount
import net.corda.core.contracts.USD
import net.corda.core.crypto.Party
import net.corda.core.crypto.generateKeyPair
import java.math.BigDecimal
import java.util.*