tx · bB5ChiEUfmPxumG5H1dnuQBt4cYnPSd4mVJtELzxZ6n

3Mq6mSfCYaGQkEHMAhobtjJGvb7xj1aiSBp:  -0.01000000 Waves

2024.02.22 16:41 [2987519] smart account 3Mq6mSfCYaGQkEHMAhobtjJGvb7xj1aiSBp > SELF 0.00000000 Waves

{ "type": 13, "id": "bB5ChiEUfmPxumG5H1dnuQBt4cYnPSd4mVJtELzxZ6n", "fee": 1000000, "feeAssetId": null, "timestamp": 1708609325553, "version": 2, "chainId": 84, "sender": "3Mq6mSfCYaGQkEHMAhobtjJGvb7xj1aiSBp", "senderPublicKey": "C5DMu2JvfbtJnPu4pyFYhyyeaYRS1RsnRnsgNFnkL55E", "proofs": [ "3w5uG3DGRGFmV4FbxJ9skEMQyXC2he4j6DeVLiuR3oVWWN2uLaVdFNAwc2o8gSYmZEHbjrwkXc1kFykPdbDRRAJi" ], "script": "base64:BgIGCAISABIAAwAHRUFUSF9JRAkA2QQBCQERQGV4dHJOYXRpdmUoMTA1MykCBQR0aGlzAgdFQVRIX0lEAApGZWVBZGRyZXNzAQAACmRldkFkZHJlc3MBAAIBaQEOSXNzdWVFQVRIVG9rZW4ABAVhc3NldAkAwwgHAgRFQVRIAvMBRUFUSCBpcyBhIGRpZ2l0YWwgdG9rZW4gYmFja2VkIGJ5IGEgMToxIHJlc2VydmUgb2YgV2F2ZXMgdG9rZW5zLCBtZWFuaW5nIGZvciBldmVyeSBFQVRIIHRva2VuIGluIGNpcmN1bGF0aW9uLCB0aGVyZSBpcyBvbmUgV2F2ZXMgdG9rZW4gaGVsZCBpbiBzZWN1cmUgcmVzZXJ2ZS4gVGhpcyByZXNlcnZlIG1vZGVsIGFpbXMgdG8gZ3VhcmFudGVlIHRoZSBzdGFiaWxpdHkgYW5kIHRyYW5zcGFyZW5jeSBvZiBFQVRIJ3MgdmFsdWUuAAEACAYFBHVuaXQAAAQHYXNzZXRJZAkAuAgBBQVhc3NldAQMY2hlY2tIYXJkQ2FwCQELdmFsdWVPckVsc2UCCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAgtFQVRISGFyZENhcAAAAwkAAAIFDGNoZWNrSGFyZENhcAAACQDMCAIFBWFzc2V0CQDMCAIJAQRCdXJuAgUHYXNzZXRJZAABCQDMCAIJAQtTdHJpbmdFbnRyeQICB0VBVEhfSUQJANgEAQUHYXNzZXRJZAkAzAgCCQEMSW50ZWdlckVudHJ5AgIKRUFUSC9XQVZFUwCgjQYJAMwIAgkBDEludGVnZXJFbnRyeQICC0VBVEhIYXJkQ2FwAICA6YOx3hYFA25pbAkAAgECGFRva2VuIGlzIEFscmVhZHkgSXNzdWVkLgFpAQlJc3N1ZUVBVEgABANwbXQJAQV2YWx1ZQEJAJEDAggFAWkIcGF5bWVudHMAAAQKY3VycmVudEtleQkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzBAxQcmljZVBlckVBVEgJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMCCkVBVEgvV0FWRVMEC0VBVEhIYXJkQ2FwCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAgtFQVRISGFyZENhcAQNTmV3RUFUSFRvVXNlcgkAawMAoI0GCAUDcG10BmFtb3VudAUMUHJpY2VQZXJFQVRIBBJQcmV2aW91c0lzc3VlZEVBVEgEByRtYXRjaDAJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMCElRvdGFsX0lzc3VlZF9FQVRIOgMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQPVG90YWxJc3N1ZWRFQVRICQBkAgUSUHJldmlvdXNJc3N1ZWRFQVRIBQ1OZXdFQVRIVG9Vc2VyBA5QZW5kaW5nTWludGluZwkAZQIFC0VBVEhIYXJkQ2FwBQ9Ub3RhbElzc3VlZEVBVEgEGFByZXZpb3VzRUFUSFJlc2VydmVWYWx1ZQkBEUBleHRyTmF0aXZlKDEwNTApAgUEdGhpcwIcVG90YWxfRUFUSF9SZXNlcnZlX0luX1dBVkVTOgQQRUFUSFJlc2VydmVWYWx1ZQkAZAIFGFByZXZpb3VzRUFUSFJlc2VydmVWYWx1ZQgFA3BtdAZhbW91bnQEF1ByZXZpb3VzRUFUSEJhY2t1cFByaWNlCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAhtFQVRIX0JhY2t1cF9WYWx1ZV9Jbl9XQVZFUzoED0VBVEhCYWNrdXBQcmljZQkAawMAoI0GBRBFQVRIUmVzZXJ2ZVZhbHVlBQ9Ub3RhbElzc3VlZEVBVEgDCQEJaXNEZWZpbmVkAQgFA3BtdAdhc3NldElkCQACAQIuSW5jb3JyZWN0IGFzc2V0IGF0dGFjaGVkLCBwbGVhc2UgYXR0YWNoIFdBVkVTLgMJAGYCAMCWsQIIBQNwbXQGYW1vdW50CQACAQI1UGxlYXNlIEF0dGFjaCBtaW5pbXVtIDAuMDUgV0FWRVMgVG8gSXNzdWUgRUFUSCBBc3NldC4DCQBmAgUPVG90YWxJc3N1ZWRFQVRIBQtFQVRISGFyZENhcAkAAgEJAKwCAgkArAICCQCsAgIJAKwCAgkArAICCQCsAgICL0VBVEggTWludGluZyBpcyBhYm91dCB0byByZWFjaCB0aGUgSGFyZCBDYXAgb2YgCQCkAwEFC0VBVEhIYXJkQ2FwAjAvMTBeOCBFQVRILiBQbGVhc2UgUmVkdWNlIHlvdXIgTWludGluZyBPcmRlciBieSAJAKQDAQUOUGVuZGluZ01pbnRpbmcCCCBvciBwdXQgCQCkAwEJAGUCBQtFQVRISGFyZENhcAUSUHJldmlvdXNJc3N1ZWRFQVRIAgUvMTBeOAkAzAgCCQEMSW50ZWdlckVudHJ5AgISVG90YWxfSXNzdWVkX0VBVEg6BQ9Ub3RhbElzc3VlZEVBVEgJAMwIAgkBDEludGVnZXJFbnRyeQICFUJhbGFuY2VfTWludGluZ19FQVRIOgUOUGVuZGluZ01pbnRpbmcJAMwIAgkBDEludGVnZXJFbnRyeQICHFRvdGFsX0VBVEhfUmVzZXJ2ZV9Jbl9XQVZFUzoFEEVBVEhSZXNlcnZlVmFsdWUJAMwIAgkBDEludGVnZXJFbnRyeQICG0VBVEhfQmFja3VwX1ZhbHVlX0luX1dBVkVTOgUPRUFUSEJhY2t1cFByaWNlCQDMCAIJAQtTdHJpbmdFbnRyeQICB21lc3NhZ2UCJjxoMT5FQVRIIElzc3VlZCBTdWNjZXNzZnVsbHkhPC9oMT48YnI+CQDMCAIJAQdSZWlzc3VlAwUHRUFUSF9JRAUNTmV3RUFUSFRvVXNlcgYJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyCQBpAgkAaAIFDU5ld0VBVEhUb1VzZXIA3gcA6AcFB0VBVEhfSUQJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkApwgBBQpGZWVBZGRyZXNzCQBpAgkAaAIFDU5ld0VBVEhUb1VzZXIACQDoBwUHRUFUSF9JRAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQCnCAEFCmRldkFkZHJlc3MJAGkCCQBoAgUNTmV3RUFUSFRvVXNlcgABAOgHBQdFQVRIX0lEBQNuaWwBAnR4AQZ2ZXJpZnkACQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwAACAUCdHgPc2VuZGVyUHVibGljS2V5nT2S3g==", "height": 2987519, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: DPvgSzfCShv6xop9XBz7Jqxk5QXBvskfdGEWnFWtAgTZ Next: 76P5D61KJgJ9LSWZqdFg8x4UbhFXURC8JnnaN8SeGzQa Diff:
OldNewDifferences
2626 let j = getIntegerValue(this, "EATH/WAVES")
2727 let k = getIntegerValue(this, "EATHHardCap")
2828 let l = fraction(100000, h.amount, j)
29- let m = getIntegerValue(this, "Total_Issued_EATH:")
30- let n = (m + l)
31- let o = (k - n)
32- let p = getIntegerValue(this, "Total_EATH_Reserve_In_WAVES:")
33- let q = (p + h.amount)
34- let r = getIntegerValue(this, "EATH_Backup_Value_In_WAVES:")
35- let s = fraction(100000, q, n)
29+ let m = {
30+ let n = getIntegerValue(this, "Total_Issued_EATH:")
31+ if ($isInstanceOf(n, "Int"))
32+ then {
33+ let o = n
34+ o
35+ }
36+ else 0
37+ }
38+ let p = (m + l)
39+ let q = (k - p)
40+ let r = getIntegerValue(this, "Total_EATH_Reserve_In_WAVES:")
41+ let s = (r + h.amount)
42+ let t = getIntegerValue(this, "EATH_Backup_Value_In_WAVES:")
43+ let u = fraction(100000, s, p)
3644 if (isDefined(h.assetId))
3745 then throw("Incorrect asset attached, please attach WAVES.")
3846 else if ((5000000 > h.amount))
3947 then throw("Please Attach minimum 0.05 WAVES To Issue EATH Asset.")
40- else if ((n > k))
41- then throw((((((("EATH Minting is about to reach the Hard Cap of " + toString(k)) + "/10^8 EATH. Please Reduce your Minting Order by ") + toString(o)) + " or put ") + toString((k - m))) + "/10^8"))
42- else [IntegerEntry("Total_Issued_EATH:", n), IntegerEntry("Balance_Minting_EATH:", o), IntegerEntry("Total_EATH_Reserve_In_WAVES:", q), IntegerEntry("EATH_Backup_Value_In_WAVES:", s), StringEntry("message", "<h1>EATH Issued Successfully!</h1><br>"), Reissue(a, l, true), ScriptTransfer(d.caller, ((l * 990) / 1000), a), ScriptTransfer(addressFromPublicKey(b), ((l * 9) / 1000), a), ScriptTransfer(addressFromPublicKey(c), ((l * 1) / 1000), a)]
48+ else if ((p > k))
49+ then throw((((((("EATH Minting is about to reach the Hard Cap of " + toString(k)) + "/10^8 EATH. Please Reduce your Minting Order by ") + toString(q)) + " or put ") + toString((k - m))) + "/10^8"))
50+ else [IntegerEntry("Total_Issued_EATH:", p), IntegerEntry("Balance_Minting_EATH:", q), IntegerEntry("Total_EATH_Reserve_In_WAVES:", s), IntegerEntry("EATH_Backup_Value_In_WAVES:", u), StringEntry("message", "<h1>EATH Issued Successfully!</h1><br>"), Reissue(a, l, true), ScriptTransfer(d.caller, ((l * 990) / 1000), a), ScriptTransfer(addressFromPublicKey(b), ((l * 9) / 1000), a), ScriptTransfer(addressFromPublicKey(c), ((l * 1) / 1000), a)]
4351 }
4452
4553
46-@Verifier(t)
47-func u () = sigVerify(t.bodyBytes, t.proofs[0], t.senderPublicKey)
54+@Verifier(v)
55+func w () = sigVerify(v.bodyBytes, v.proofs[0], v.senderPublicKey)
4856
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = fromBase58String(getStringValue(this, "EATH_ID"))
55
66 let b = base58''
77
88 let c = base58''
99
1010 @Callable(d)
1111 func IssueEATHToken () = {
1212 let e = Issue("EATH", "EATH is a digital token backed by a 1:1 reserve of Waves tokens, meaning for every EATH token in circulation, there is one Waves token held in secure reserve. This reserve model aims to guarantee the stability and transparency of EATH's value.", 1, 8, true, unit, 0)
1313 let f = calculateAssetId(e)
1414 let g = valueOrElse(getIntegerValue(this, "EATHHardCap"), 0)
1515 if ((g == 0))
1616 then [e, Burn(f, 1), StringEntry("EATH_ID", toBase58String(f)), IntegerEntry("EATH/WAVES", 100000), IntegerEntry("EATHHardCap", 100000000000000)]
1717 else throw("Token is Already Issued.")
1818 }
1919
2020
2121
2222 @Callable(d)
2323 func IssueEATH () = {
2424 let h = value(d.payments[0])
2525 let i = toBase58String(d.caller.bytes)
2626 let j = getIntegerValue(this, "EATH/WAVES")
2727 let k = getIntegerValue(this, "EATHHardCap")
2828 let l = fraction(100000, h.amount, j)
29- let m = getIntegerValue(this, "Total_Issued_EATH:")
30- let n = (m + l)
31- let o = (k - n)
32- let p = getIntegerValue(this, "Total_EATH_Reserve_In_WAVES:")
33- let q = (p + h.amount)
34- let r = getIntegerValue(this, "EATH_Backup_Value_In_WAVES:")
35- let s = fraction(100000, q, n)
29+ let m = {
30+ let n = getIntegerValue(this, "Total_Issued_EATH:")
31+ if ($isInstanceOf(n, "Int"))
32+ then {
33+ let o = n
34+ o
35+ }
36+ else 0
37+ }
38+ let p = (m + l)
39+ let q = (k - p)
40+ let r = getIntegerValue(this, "Total_EATH_Reserve_In_WAVES:")
41+ let s = (r + h.amount)
42+ let t = getIntegerValue(this, "EATH_Backup_Value_In_WAVES:")
43+ let u = fraction(100000, s, p)
3644 if (isDefined(h.assetId))
3745 then throw("Incorrect asset attached, please attach WAVES.")
3846 else if ((5000000 > h.amount))
3947 then throw("Please Attach minimum 0.05 WAVES To Issue EATH Asset.")
40- else if ((n > k))
41- then throw((((((("EATH Minting is about to reach the Hard Cap of " + toString(k)) + "/10^8 EATH. Please Reduce your Minting Order by ") + toString(o)) + " or put ") + toString((k - m))) + "/10^8"))
42- else [IntegerEntry("Total_Issued_EATH:", n), IntegerEntry("Balance_Minting_EATH:", o), IntegerEntry("Total_EATH_Reserve_In_WAVES:", q), IntegerEntry("EATH_Backup_Value_In_WAVES:", s), StringEntry("message", "<h1>EATH Issued Successfully!</h1><br>"), Reissue(a, l, true), ScriptTransfer(d.caller, ((l * 990) / 1000), a), ScriptTransfer(addressFromPublicKey(b), ((l * 9) / 1000), a), ScriptTransfer(addressFromPublicKey(c), ((l * 1) / 1000), a)]
48+ else if ((p > k))
49+ then throw((((((("EATH Minting is about to reach the Hard Cap of " + toString(k)) + "/10^8 EATH. Please Reduce your Minting Order by ") + toString(q)) + " or put ") + toString((k - m))) + "/10^8"))
50+ else [IntegerEntry("Total_Issued_EATH:", p), IntegerEntry("Balance_Minting_EATH:", q), IntegerEntry("Total_EATH_Reserve_In_WAVES:", s), IntegerEntry("EATH_Backup_Value_In_WAVES:", u), StringEntry("message", "<h1>EATH Issued Successfully!</h1><br>"), Reissue(a, l, true), ScriptTransfer(d.caller, ((l * 990) / 1000), a), ScriptTransfer(addressFromPublicKey(b), ((l * 9) / 1000), a), ScriptTransfer(addressFromPublicKey(c), ((l * 1) / 1000), a)]
4351 }
4452
4553
46-@Verifier(t)
47-func u () = sigVerify(t.bodyBytes, t.proofs[0], t.senderPublicKey)
54+@Verifier(v)
55+func w () = sigVerify(v.bodyBytes, v.proofs[0], v.senderPublicKey)
4856

github/deemru/w8io/169f3d6 
41.05 ms