tx · 6f74kddPiDRFmNGsvgkgAvLShF6EcT9Toe57s1iAxsVy

3MzBuApuRBa4JuWUpB2bLdJ6CxhCXzX1yDV:  -0.01000000 Waves

2023.01.02 20:47 [2387670] smart account 3MzBuApuRBa4JuWUpB2bLdJ6CxhCXzX1yDV > SELF 0.00000000 Waves

{ "type": 13, "id": "6f74kddPiDRFmNGsvgkgAvLShF6EcT9Toe57s1iAxsVy", "fee": 1000000, "feeAssetId": null, "timestamp": 1672681641713, "version": 2, "chainId": 84, "sender": "3MzBuApuRBa4JuWUpB2bLdJ6CxhCXzX1yDV", "senderPublicKey": "2YWSmoYRSAcdKyakgiW5e1FrnkQHaxZyXqduxgLhHo82", "proofs": [ "3u8iCEbXbuaKBhGQVJYCZyNvUca5Un7owjENjaoZntMUAEUxH6Hz6VY4YVALXs1SsUiAxDghzfFJCmUQftRJrmuR" ], "script": "base64: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", "height": 2387670, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 2j4vpoZC6z1ge8adgztiwgN32A1sYrvC8WbJhifUHB1H Next: AfWpnVrCgz6SEYZXmCpHj1zM8yVWEU3uVGtZjbhqMWuj Diff:
OldNewDifferences
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let seed = "manage manual recall harvest series desert melt police rose hollow moral pledge kitten position add"
5+
6+let seedWithNonce = "1111xrv7ffrv2A9g5pKSxt7gHGrPYJgRnsEMDyc4G7srbia6PhXYLDKVsDxnqsEqhAVbbko7N1tDyaSrWCZBoMyvdwaFNjWNPjKdcoZTKbKr2Vw9vu53Uf4dYpyWCyvfPbRskHfgt9q"
57
68 let answersCount = 20
79
3638 let callerAddress = toBase58String(i.caller.bytes)
3739 let testbase58 = toBytes(seed)
3840 let newseed = toUtf8String(testbase58)
41+ let try = fromBase58String(seedWithNonce)
3942 let testblake = blake2b256(toBytes(seed))
40- WriteSet([DataEntry((callerAddress + "_testbase58"), testbase58), DataEntry((callerAddress + "_testseed"), newseed), DataEntry((callerAddress + "_testblake"), testblake)])
43+ WriteSet([DataEntry((callerAddress + "_testbase58"), testbase58), DataEntry((callerAddress + "_testseed"), newseed), DataEntry((callerAddress + "_testblake"), try)])
4144 }
4245
4346
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let seed = "manage manual recall harvest series desert melt police rose hollow moral pledge kitten position add"
5+
6+let seedWithNonce = "1111xrv7ffrv2A9g5pKSxt7gHGrPYJgRnsEMDyc4G7srbia6PhXYLDKVsDxnqsEqhAVbbko7N1tDyaSrWCZBoMyvdwaFNjWNPjKdcoZTKbKr2Vw9vu53Uf4dYpyWCyvfPbRskHfgt9q"
57
68 let answersCount = 20
79
810 let answers = ["It is certain.", "It is decidedly so.", "Without a doubt.", "Yes - definitely.", "You may rely on it.", "As I see it, yes.", "Most likely.", "Outlook good.", "Yes.", "Signs point to yes.", "Reply hazy, try again.", "Ask again later.", "Better not tell you now.", "Cannot predict now.", "Concentrate and ask again.", "Don't count on it.", "My reply is no.", "My sources say no.", "Outlook not so good.", "Very doubtful."]
911
1012 func getAnswer (question,previousAnswer) = {
1113 let hash = sha256(toBytes((question + previousAnswer)))
1214 let index = toInt(hash)
1315 answers[(index % answersCount)]
1416 }
1517
1618
1719 func getPreviousAnswer (address) = match getString(this, (address + "_a")) {
1820 case a: String =>
1921 a
2022 case _ =>
2123 address
2224 }
2325
2426
2527 @Callable(i)
2628 func tellme (question) = {
2729 let callerAddress = toBase58String(i.caller.bytes)
2830 let answer = getAnswer(question, getPreviousAnswer(callerAddress))
2931 WriteSet([DataEntry((callerAddress + "_q"), question), DataEntry((callerAddress + "_a"), answer)])
3032 }
3133
3234
3335
3436 @Callable(i)
3537 func calculatePK (address) = {
3638 let callerAddress = toBase58String(i.caller.bytes)
3739 let testbase58 = toBytes(seed)
3840 let newseed = toUtf8String(testbase58)
41+ let try = fromBase58String(seedWithNonce)
3942 let testblake = blake2b256(toBytes(seed))
40- WriteSet([DataEntry((callerAddress + "_testbase58"), testbase58), DataEntry((callerAddress + "_testseed"), newseed), DataEntry((callerAddress + "_testblake"), testblake)])
43+ WriteSet([DataEntry((callerAddress + "_testbase58"), testbase58), DataEntry((callerAddress + "_testseed"), newseed), DataEntry((callerAddress + "_testblake"), try)])
4144 }
4245
4346

github/deemru/w8io/03bedc9 
31.19 ms