tx · CfcEy6isfBMzDQQwLy66tfUvPcBT4RRQmGhAFXSTY8Er

3P8eGnubS5xVZ2aCsSqeV5WQcvTcwkASuTb:  -0.01000000 Waves

2023.09.24 13:51 [3835174] smart account 3P8eGnubS5xVZ2aCsSqeV5WQcvTcwkASuTb > SELF 0.00000000 Waves

{ "type": 13, "id": "CfcEy6isfBMzDQQwLy66tfUvPcBT4RRQmGhAFXSTY8Er", "fee": 1000000, "feeAssetId": null, "timestamp": 1695552808320, "version": 2, "chainId": 87, "sender": "3P8eGnubS5xVZ2aCsSqeV5WQcvTcwkASuTb", "senderPublicKey": "2vNDhWEMz6ZAdmN9um3AQLcKLxANS83ZbH2mWpNGxpC1", "proofs": [ "yS4NkrBTCLECnPfAQpzbTp2jwgKpjTaaYvSe3U4BS4nZSHaMc4wuzEY4mR9CGWmHXuWdkRF2G1f2NrTyviFxohg" ], "script": "base64:BgIKCAISBAoCAQESAAsABlRva2VuWAEgktH0SuIRASv0fureIY49xfvJ8n3Oh7LtUhnwOk4kWPUAGnRvdGFsUmVnaXN0ZXJlZEFjY291bnRzS2V5Ahl0b3RhbF9yZWdpc3RlcmVkX2FjY291bnRzABl0b3RhbEFjdGl2YXRlZEFjY291bnRzS2V5Ahh0b3RhbF9hY3RpdmF0ZXNfYWNjb3VudHMBDWdldEFkZHJlc3NLZXkBAmlkCQCsAgICC2FkZHJlc3Nfb2ZfCQCkAwEFAmlkAQ5nZXRSZWZlcnJlcktleQECaWQJAKwCAgIMcmVmZXJyZXJfb2ZfCQCkAwEFAmlkARNnZXRSZWZlcnJhbENvdW50S2V5AQJpZAkArAICAhJyZWZlcnJhbF9jb3VudF9vZl8JAKQDAQUCaWQBDGdldFJhdGluZ0tleQECaWQJAKwCAgIKcmF0aW5nX29mXwkApAMBBQJpZAEQZ2V0QWN0aXZhdGlvbktleQECaWQJAKwCAgIKaXNfYWN0aXZlXwkApAMBBQJpZAEIZ2V0SWRLZXkBB2FkZHJlc3MJAKwCAgIGaWRfb2ZfBQdhZGRyZXNzARZnZXRBY3RpdmF0ZWRBY2NvdW50S2V5AgdhZGRyZXNzAmlkCQCsAgIJAKwCAgkArAICAhJhY3RpdmF0ZWRfYWNjb3VudF8FB2FkZHJlc3MCAV8JAKQDAQUCaWQBDWdldFdhbGxldEluZm8BCmFkZHJlc3NTdHIEB2FkZHJlc3MJAQV2YWx1ZQEJAKYIAQUKYWRkcmVzc1N0cgQLd2F2ZXNBbW91bnQICQDvBwEFB2FkZHJlc3MHcmVndWxhcgQMdG9rZW54QW1vdW50CQDwBwIFB2FkZHJlc3MFBlRva2VuWAQEanNvbgkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICAgF7AgEiAgV3YXZlcwIBIgIBOgkApAMBBQt3YXZlc0Ftb3VudAIBLAIBIgIGdG9rZW54AgEiAgE6CQCkAwEFDHRva2VueEFtb3VudAIAAgF9BQRqc29uAgFpAQhyZWdpc3RlcgICaWQIcmVmZXJyZXIEB2FkZHJlc3MJAKUIAQgFAWkGY2FsbGVyAwkBCWlzRGVmaW5lZAEJAJ0IAgUEdGhpcwkBDWdldEFkZHJlc3NLZXkBBQJpZAkAAgECEUlkIGFscmVhZHkgZXhpc3RzAwkBCWlzRGVmaW5lZAEJAJoIAgUEdGhpcwkBCGdldElkS2V5AQUHYWRkcmVzcwkAAgECFkFkZHJlc3MgYWxyZWFkeSBleGlzdHMEFHRvdGFsUmVnaXN0ZXJlZENvdW50CQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFGnRvdGFsUmVnaXN0ZXJlZEFjY291bnRzS2V5AAAJAMwIAgkBDEludGVnZXJFbnRyeQIJAQhnZXRJZEtleQEFB2FkZHJlc3MFAmlkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQ1nZXRBZGRyZXNzS2V5AQUCaWQFB2FkZHJlc3MJAMwIAgkBDEludGVnZXJFbnRyeQIJAQ5nZXRSZWZlcnJlcktleQEFAmlkBQhyZWZlcnJlcgkAzAgCCQEMSW50ZWdlckVudHJ5AgkBDGdldFJhdGluZ0tleQEFAmlkAAAJAMwIAgkBDEJvb2xlYW5FbnRyeQIJARBnZXRBY3RpdmF0aW9uS2V5AQUCaWQHCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQETZ2V0UmVmZXJyYWxDb3VudEtleQEFAmlkAAAJAMwIAgkBDEludGVnZXJFbnRyeQIFGnRvdGFsUmVnaXN0ZXJlZEFjY291bnRzS2V5CQBkAgUUdG90YWxSZWdpc3RlcmVkQ291bnQAAQUDbmlsAWkBCGFjdGl2YXRlAAQHYWRkcmVzcwkApQgBCAUBaQZjYWxsZXIEAmlkCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJoIAgUEdGhpcwkBCGdldElkS2V5AQUHYWRkcmVzcwIMSWQgbm90IGZvdW5kBAhyZWZlcnJlcgkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCaCAIFBHRoaXMJAQ5nZXRSZWZlcnJlcktleQEFAmlkAhJSZWZlcnJlciBub3QgZm91bmQDAwMJAAACCQCQAwEIBQFpCHBheW1lbnRzAAEJAAACCAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQFBlRva2VuWAcJAAACCAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudACAlOvcAwcEE3RvdGFsQWN0aXZhdGVkQ291bnQJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwUZdG90YWxBY3RpdmF0ZWRBY2NvdW50c0tleQAABA1yZWZlcnJhbENvdW50CQBkAgkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQETZ2V0UmVmZXJyYWxDb3VudEtleQEFCHJlZmVycmVyAAAAAQkAzAgCCQEMSW50ZWdlckVudHJ5AgUZdG90YWxBY3RpdmF0ZWRBY2NvdW50c0tleQkAZAIFE3RvdGFsQWN0aXZhdGVkQ291bnQAAQkAzAgCCQEMSW50ZWdlckVudHJ5AgkBFmdldEFjdGl2YXRlZEFjY291bnRLZXkCBQdhZGRyZXNzBQJpZAkAZAIFE3RvdGFsQWN0aXZhdGVkQ291bnQAAQkAzAgCCQEMSW50ZWdlckVudHJ5AgkBE2dldFJlZmVycmFsQ291bnRLZXkBBQhyZWZlcnJlcgUNcmVmZXJyYWxDb3VudAUDbmlsCQACAQILQmFkIHBheW1lbnQAdd4iJg==", "height": 3835174, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6gSujgt9EUHHPtn9NNzEv9U6icVGFJpxSeFU4DaSKhF6 Next: 3LPfqrLqo2YwPoiUV545i3rSQPQWCemweFEBENr5vgNy Diff:
OldNewDifferences
3333 let wavesAmount = wavesBalance(address).regular
3434 let tokenxAmount = assetBalance(address, TokenX)
3535 let json = ((((((((((((("{" + "\"") + "waves") + "\"") + ":") + toString(wavesAmount)) + ",") + "\"") + "tokenx") + "\"") + ":") + toString(tokenxAmount)) + "") + "}")
36- nil
36+ json
3737 }
3838
3939
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let TokenX = base58'At8D6NFFpheCbvKVnjVoeLL84Eo8NZn6ovManxfLaFWL'
55
66 let totalRegisteredAccountsKey = "total_registered_accounts"
77
88 let totalActivatedAccountsKey = "total_activates_accounts"
99
1010 func getAddressKey (id) = ("address_of_" + toString(id))
1111
1212
1313 func getReferrerKey (id) = ("referrer_of_" + toString(id))
1414
1515
1616 func getReferralCountKey (id) = ("referral_count_of_" + toString(id))
1717
1818
1919 func getRatingKey (id) = ("rating_of_" + toString(id))
2020
2121
2222 func getActivationKey (id) = ("is_active_" + toString(id))
2323
2424
2525 func getIdKey (address) = ("id_of_" + address)
2626
2727
2828 func getActivatedAccountKey (address,id) = ((("activated_account_" + address) + "_") + toString(id))
2929
3030
3131 func getWalletInfo (addressStr) = {
3232 let address = value(addressFromString(addressStr))
3333 let wavesAmount = wavesBalance(address).regular
3434 let tokenxAmount = assetBalance(address, TokenX)
3535 let json = ((((((((((((("{" + "\"") + "waves") + "\"") + ":") + toString(wavesAmount)) + ",") + "\"") + "tokenx") + "\"") + ":") + toString(tokenxAmount)) + "") + "}")
36- nil
36+ json
3737 }
3838
3939
4040 @Callable(i)
4141 func register (id,referrer) = {
4242 let address = toString(i.caller)
4343 if (isDefined(getString(this, getAddressKey(id))))
4444 then throw("Id already exists")
4545 else if (isDefined(getInteger(this, getIdKey(address))))
4646 then throw("Address already exists")
4747 else {
4848 let totalRegisteredCount = valueOrElse(getInteger(this, totalRegisteredAccountsKey), 0)
4949 [IntegerEntry(getIdKey(address), id), StringEntry(getAddressKey(id), address), IntegerEntry(getReferrerKey(id), referrer), IntegerEntry(getRatingKey(id), 0), BooleanEntry(getActivationKey(id), false), IntegerEntry(getReferralCountKey(id), 0), IntegerEntry(totalRegisteredAccountsKey, (totalRegisteredCount + 1))]
5050 }
5151 }
5252
5353
5454
5555 @Callable(i)
5656 func activate () = {
5757 let address = toString(i.caller)
5858 let id = valueOrErrorMessage(getInteger(this, getIdKey(address)), "Id not found")
5959 let referrer = valueOrErrorMessage(getInteger(this, getReferrerKey(id)), "Referrer not found")
6060 if (if (if ((size(i.payments) == 1))
6161 then (i.payments[0].assetId == TokenX)
6262 else false)
6363 then (i.payments[0].amount == 1000000000)
6464 else false)
6565 then {
6666 let totalActivatedCount = valueOrElse(getInteger(this, totalActivatedAccountsKey), 0)
6767 let referralCount = (valueOrElse(getInteger(this, getReferralCountKey(referrer)), 0) + 1)
6868 [IntegerEntry(totalActivatedAccountsKey, (totalActivatedCount + 1)), IntegerEntry(getActivatedAccountKey(address, id), (totalActivatedCount + 1)), IntegerEntry(getReferralCountKey(referrer), referralCount)]
6969 }
7070 else throw("Bad payment")
7171 }
7272
7373

github/deemru/w8io/6500d08 
33.10 ms