tx · 9j6kN7a2zgC4jyu7nSy4TpZUsuDaLKmXdTyjcT3wy1Nd 3N5jpZhAyxGaJKixmEqFctZvxSgLrsMr7Ai: -0.01000000 Waves 2022.02.25 12:35 [1938986] smart account 3N5jpZhAyxGaJKixmEqFctZvxSgLrsMr7Ai > SELF 0.00000000 Waves
{ "type": 13, "id": "9j6kN7a2zgC4jyu7nSy4TpZUsuDaLKmXdTyjcT3wy1Nd", "fee": 1000000, "feeAssetId": null, "timestamp": 1645781735344, "version": 2, "chainId": 84, "sender": "3N5jpZhAyxGaJKixmEqFctZvxSgLrsMr7Ai", "senderPublicKey": "GkgLzjDHbf9CxTLy63LTUyuooiFf824N7iPxagxTWxr", "proofs": [ "XQvkeYjTfeANmECuKDPjLXRo6QbayegBXjcrTvgRDXS8gAj2PkFb2MsW1NRZpyYx6pTSrzU3UA9ZhqRRxvHzD5c" ], "script": "base64:AAIFAAAAAAAAAAQIAhIAAAAAAQAAAAAMYWRtaW5QdWJLZXkxAQAAACBE6rjAjUL4RUtuhT4vuFsEGO7C8vdZ3HKiPF/OD9JKQgAAAAEAAAABaQEAAAAEY2FsbAAAAAAEAAAABWFzc2V0CQAEQwAAAAcCAAAABUFzc2V0AgAAAAAAAAAAAAAAAAEAAAAAAAAAAAAGBQAAAAR1bml0AAAAAAAAAAAABAAAAAdhc3NldElkCQAEOAAAAAEFAAAABWFzc2V0CQAETAAAAAIJAQAAAAtCaW5hcnlFbnRyeQAAAAICAAAAA2JpbgEAAAAACQAETAAAAAIJAQAAAAxCb29sZWFuRW50cnkAAAACAgAAAARib29sBgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAADaW50AAAAAAAAAAABCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAICAAAAA3N0cgIAAAAACQAETAAAAAIJAQAAAAtEZWxldGVFbnRyeQAAAAECAAAAA3N0cgkABEwAAAACBQAAAAVhc3NldAkABEwAAAACCQEAAAAHUmVpc3N1ZQAAAAMFAAAAB2Fzc2V0SWQAAAAAAAAAAAEHCQAETAAAAAIJAQAAAARCdXJuAAAAAgUAAAAHYXNzZXRJZAAAAAAAAAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIAAAAAAAAAAAEFAAAAB2Fzc2V0SWQFAAAAA25pbAAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAEAAAAEmFkbWluUHViS2V5MVNpZ25lZAMJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAABQAAAAxhZG1pblB1YktleTEAAAAAAAAAAAEAAAAAAAAAAAAJAABnAAAAAgUAAAASYWRtaW5QdWJLZXkxU2lnbmVkAAAAAAAAAAAB1Zg2BQ==", "height": 1938986, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: HDUB9zrmf62EYzMbedoRTmTvbaQgwTyiWAtgs3aRsBen Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | - | {-# STDLIB_VERSION | |
1 | + | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | - | let | |
4 | + | let adminPubKey1 = base58'5e2K8FEPWCbLCKbpRy2JPMfLmsHJziBrLXzVHPhSiL5w' | |
5 | 5 | ||
6 | - | 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."] | |
7 | - | ||
8 | - | func getAnswer (question,previousAnswer) = { | |
9 | - | let hash = sha256(toBytes((question + previousAnswer))) | |
10 | - | let index = toInt(hash) | |
11 | - | answers[(index % answersCount)] | |
6 | + | @Callable(i) | |
7 | + | func call () = { | |
8 | + | let asset = Issue("Asset", "", 1, 0, true, unit, 0) | |
9 | + | let assetId = calculateAssetId(asset) | |
10 | + | [BinaryEntry("bin", base58''), BooleanEntry("bool", true), IntegerEntry("int", 1), StringEntry("str", ""), DeleteEntry("str"), asset, Reissue(assetId, 1, false), Burn(assetId, 1), ScriptTransfer(i.caller, 1, assetId)] | |
12 | 11 | } | |
13 | 12 | ||
14 | 13 | ||
15 | - | func getPreviousAnswer (address) = match getString(this, (address + "_a")) { | |
16 | - | case a: String => | |
17 | - | a | |
18 | - | case _ => | |
19 | - | address | |
20 | - | } | |
21 | - | ||
22 | - | ||
23 | - | @Callable(i) | |
24 | - | func tellme (question) = { | |
25 | - | let callerAddress = toBase58String(i.caller.bytes) | |
26 | - | let answer = getAnswer(question, getPreviousAnswer(callerAddress)) | |
27 | - | WriteSet([DataEntry((callerAddress + "_q"), question), DataEntry((callerAddress + "_a"), answer)]) | |
14 | + | @Verifier(tx) | |
15 | + | func verify () = { | |
16 | + | let adminPubKey1Signed = if (sigVerify(tx.bodyBytes, tx.proofs[0], adminPubKey1)) | |
17 | + | then 1 | |
18 | + | else 0 | |
19 | + | (adminPubKey1Signed >= 1) | |
28 | 20 | } | |
29 | - | ||
30 | 21 |
github/deemru/w8io/169f3d6 26.78 ms ◑