tx · 76P5D61KJgJ9LSWZqdFg8x4UbhFXURC8JnnaN8SeGzQa

3Mq6mSfCYaGQkEHMAhobtjJGvb7xj1aiSBp:  -0.01000000 Waves

2024.02.22 16:45 [2987522] smart account 3Mq6mSfCYaGQkEHMAhobtjJGvb7xj1aiSBp > SELF 0.00000000 Waves

{ "type": 13, "id": "76P5D61KJgJ9LSWZqdFg8x4UbhFXURC8JnnaN8SeGzQa", "fee": 1000000, "feeAssetId": null, "timestamp": 1708609554305, "version": 2, "chainId": 84, "sender": "3Mq6mSfCYaGQkEHMAhobtjJGvb7xj1aiSBp", "senderPublicKey": "C5DMu2JvfbtJnPu4pyFYhyyeaYRS1RsnRnsgNFnkL55E", "proofs": [ "4TxFWHCfJs2HPCyTqhZtak4kAWHPZVUy4KBqA9chQY2ad3aAgcWCd7eAmqMhefkMZtoYg5xBC5VK2WHyfTU28nMk" ], "script": "base64:BgIGCAISABIAAwAHRUFUSF9JRAkA2QQBCQERQGV4dHJOYXRpdmUoMTA1MykCBQR0aGlzAgdFQVRIX0lEAApGZWVBZGRyZXNzAQAACmRldkFkZHJlc3MBAAIBaQEOSXNzdWVFQVRIVG9rZW4ABAVhc3NldAkAwwgHAgRFQVRIAvMBRUFUSCBpcyBhIGRpZ2l0YWwgdG9rZW4gYmFja2VkIGJ5IGEgMToxIHJlc2VydmUgb2YgV2F2ZXMgdG9rZW5zLCBtZWFuaW5nIGZvciBldmVyeSBFQVRIIHRva2VuIGluIGNpcmN1bGF0aW9uLCB0aGVyZSBpcyBvbmUgV2F2ZXMgdG9rZW4gaGVsZCBpbiBzZWN1cmUgcmVzZXJ2ZS4gVGhpcyByZXNlcnZlIG1vZGVsIGFpbXMgdG8gZ3VhcmFudGVlIHRoZSBzdGFiaWxpdHkgYW5kIHRyYW5zcGFyZW5jeSBvZiBFQVRIJ3MgdmFsdWUuAAEACAYFBHVuaXQAAAQHYXNzZXRJZAkAuAgBBQVhc3NldAQMY2hlY2tIYXJkQ2FwCQELdmFsdWVPckVsc2UCCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAgtFQVRISGFyZENhcAAAAwkAAAIFDGNoZWNrSGFyZENhcAAACQDMCAIFBWFzc2V0CQDMCAIJAQRCdXJuAgUHYXNzZXRJZAABCQDMCAIJAQtTdHJpbmdFbnRyeQICB0VBVEhfSUQJANgEAQUHYXNzZXRJZAkAzAgCCQEMSW50ZWdlckVudHJ5AgIKRUFUSC9XQVZFUwCgjQYJAMwIAgkBDEludGVnZXJFbnRyeQICC0VBVEhIYXJkQ2FwAICA6YOx3hYFA25pbAkAAgECGFRva2VuIGlzIEFscmVhZHkgSXNzdWVkLgFpAQlJc3N1ZUVBVEgABANwbXQJAQV2YWx1ZQEJAJEDAggFAWkIcGF5bWVudHMAAAQKY3VycmVudEtleQkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzBAxQcmljZVBlckVBVEgJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMCCkVBVEgvV0FWRVMEC0VBVEhIYXJkQ2FwCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAgtFQVRISGFyZENhcAQNTmV3RUFUSFRvVXNlcgkAawMAoI0GCAUDcG10BmFtb3VudAUMUHJpY2VQZXJFQVRIBBJQcmV2aW91c0lzc3VlZEVBVEgEByRtYXRjaDAJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMCElRvdGFsX0lzc3VlZF9FQVRIOgMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQPVG90YWxJc3N1ZWRFQVRICQBkAgUSUHJldmlvdXNJc3N1ZWRFQVRIBQ1OZXdFQVRIVG9Vc2VyBBhQcmV2aW91c0VBVEhSZXNlcnZlVmFsdWUEByRtYXRjaDAJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMCHFRvdGFsX0VBVEhfUmVzZXJ2ZV9Jbl9XQVZFUzoDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEEEVBVEhSZXNlcnZlVmFsdWUJAGQCBRhQcmV2aW91c0VBVEhSZXNlcnZlVmFsdWUIBQNwbXQGYW1vdW50BA5QZW5kaW5nTWludGluZwkAZQIFC0VBVEhIYXJkQ2FwBQ9Ub3RhbElzc3VlZEVBVEgEF1ByZXZpb3VzRUFUSEJhY2t1cFByaWNlCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAhtFQVRIX0JhY2t1cF9WYWx1ZV9Jbl9XQVZFUzoED0VBVEhCYWNrdXBQcmljZQkAawMAoI0GBRBFQVRIUmVzZXJ2ZVZhbHVlBQ9Ub3RhbElzc3VlZEVBVEgDCQEJaXNEZWZpbmVkAQgFA3BtdAdhc3NldElkCQACAQIuSW5jb3JyZWN0IGFzc2V0IGF0dGFjaGVkLCBwbGVhc2UgYXR0YWNoIFdBVkVTLgMJAGYCAMCWsQIIBQNwbXQGYW1vdW50CQACAQI1UGxlYXNlIEF0dGFjaCBtaW5pbXVtIDAuMDUgV0FWRVMgVG8gSXNzdWUgRUFUSCBBc3NldC4DCQBmAgUPVG90YWxJc3N1ZWRFQVRIBQtFQVRISGFyZENhcAkAAgEJAKwCAgkArAICCQCsAgIJAKwCAgkArAICCQCsAgICL0VBVEggTWludGluZyBpcyBhYm91dCB0byByZWFjaCB0aGUgSGFyZCBDYXAgb2YgCQCkAwEFC0VBVEhIYXJkQ2FwAjAvMTBeOCBFQVRILiBQbGVhc2UgUmVkdWNlIHlvdXIgTWludGluZyBPcmRlciBieSAJAKQDAQUOUGVuZGluZ01pbnRpbmcCCCBvciBwdXQgCQCkAwEJAGUCBQtFQVRISGFyZENhcAUSUHJldmlvdXNJc3N1ZWRFQVRIAgUvMTBeOAkAzAgCCQEMSW50ZWdlckVudHJ5AgISVG90YWxfSXNzdWVkX0VBVEg6BQ9Ub3RhbElzc3VlZEVBVEgJAMwIAgkBDEludGVnZXJFbnRyeQICFUJhbGFuY2VfTWludGluZ19FQVRIOgUOUGVuZGluZ01pbnRpbmcJAMwIAgkBDEludGVnZXJFbnRyeQICHFRvdGFsX0VBVEhfUmVzZXJ2ZV9Jbl9XQVZFUzoFEEVBVEhSZXNlcnZlVmFsdWUJAMwIAgkBDEludGVnZXJFbnRyeQICG0VBVEhfQmFja3VwX1ZhbHVlX0luX1dBVkVTOgUPRUFUSEJhY2t1cFByaWNlCQDMCAIJAQtTdHJpbmdFbnRyeQICB21lc3NhZ2UCJjxoMT5FQVRIIElzc3VlZCBTdWNjZXNzZnVsbHkhPC9oMT48YnI+CQDMCAIJAQdSZWlzc3VlAwUHRUFUSF9JRAUNTmV3RUFUSFRvVXNlcgYJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyCQBpAgkAaAIFDU5ld0VBVEhUb1VzZXIA3gcA6AcFB0VBVEhfSUQJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkApwgBBQpGZWVBZGRyZXNzCQBpAgkAaAIFDU5ld0VBVEhUb1VzZXIACQDoBwUHRUFUSF9JRAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQCnCAEFCmRldkFkZHJlc3MJAGkCCQBoAgUNTmV3RUFUSFRvVXNlcgABAOgHBQdFQVRIX0lEBQNuaWwBAnR4AQZ2ZXJpZnkACQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwAACAUCdHgPc2VuZGVyUHVibGljS2V5EfZk/w==", "height": 2987522, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: bB5ChiEUfmPxumG5H1dnuQBt4cYnPSd4mVJtELzxZ6n Next: dkHa9RiEXN9eCWT57HHP6VD6HQkkQWCMSyyCx3n3jdz Diff:
OldNewDifferences
3333 0
3434 }
3535 let TotalIssuedEATH = (PreviousIssuedEATH + NewEATHToUser)
36+ let PreviousEATHReserveValue = match getIntegerValue(this, "Total_EATH_Reserve_In_WAVES:") {
37+ case a: Int =>
38+ a
39+ case _ =>
40+ 0
41+ }
42+ let EATHReserveValue = (PreviousEATHReserveValue + pmt.amount)
3643 let PendingMinting = (EATHHardCap - TotalIssuedEATH)
37- let PreviousEATHReserveValue = getIntegerValue(this, "Total_EATH_Reserve_In_WAVES:")
38- let EATHReserveValue = (PreviousEATHReserveValue + pmt.amount)
3944 let PreviousEATHBackupPrice = getIntegerValue(this, "EATH_Backup_Value_In_WAVES:")
4045 let EATHBackupPrice = fraction(100000, EATHReserveValue, TotalIssuedEATH)
4146 if (isDefined(pmt.assetId))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let EATH_ID = fromBase58String(getStringValue(this, "EATH_ID"))
55
66 let FeeAddress = base58''
77
88 let devAddress = base58''
99
1010 @Callable(i)
1111 func IssueEATHToken () = {
1212 let asset = 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 assetId = calculateAssetId(asset)
1414 let checkHardCap = valueOrElse(getIntegerValue(this, "EATHHardCap"), 0)
1515 if ((checkHardCap == 0))
1616 then [asset, Burn(assetId, 1), StringEntry("EATH_ID", toBase58String(assetId)), IntegerEntry("EATH/WAVES", 100000), IntegerEntry("EATHHardCap", 100000000000000)]
1717 else throw("Token is Already Issued.")
1818 }
1919
2020
2121
2222 @Callable(i)
2323 func IssueEATH () = {
2424 let pmt = value(i.payments[0])
2525 let currentKey = toBase58String(i.caller.bytes)
2626 let PricePerEATH = getIntegerValue(this, "EATH/WAVES")
2727 let EATHHardCap = getIntegerValue(this, "EATHHardCap")
2828 let NewEATHToUser = fraction(100000, pmt.amount, PricePerEATH)
2929 let PreviousIssuedEATH = match getIntegerValue(this, "Total_Issued_EATH:") {
3030 case a: Int =>
3131 a
3232 case _ =>
3333 0
3434 }
3535 let TotalIssuedEATH = (PreviousIssuedEATH + NewEATHToUser)
36+ let PreviousEATHReserveValue = match getIntegerValue(this, "Total_EATH_Reserve_In_WAVES:") {
37+ case a: Int =>
38+ a
39+ case _ =>
40+ 0
41+ }
42+ let EATHReserveValue = (PreviousEATHReserveValue + pmt.amount)
3643 let PendingMinting = (EATHHardCap - TotalIssuedEATH)
37- let PreviousEATHReserveValue = getIntegerValue(this, "Total_EATH_Reserve_In_WAVES:")
38- let EATHReserveValue = (PreviousEATHReserveValue + pmt.amount)
3944 let PreviousEATHBackupPrice = getIntegerValue(this, "EATH_Backup_Value_In_WAVES:")
4045 let EATHBackupPrice = fraction(100000, EATHReserveValue, TotalIssuedEATH)
4146 if (isDefined(pmt.assetId))
4247 then throw("Incorrect asset attached, please attach WAVES.")
4348 else if ((5000000 > pmt.amount))
4449 then throw("Please Attach minimum 0.05 WAVES To Issue EATH Asset.")
4550 else if ((TotalIssuedEATH > EATHHardCap))
4651 then throw((((((("EATH Minting is about to reach the Hard Cap of " + toString(EATHHardCap)) + "/10^8 EATH. Please Reduce your Minting Order by ") + toString(PendingMinting)) + " or put ") + toString((EATHHardCap - PreviousIssuedEATH))) + "/10^8"))
4752 else [IntegerEntry("Total_Issued_EATH:", TotalIssuedEATH), IntegerEntry("Balance_Minting_EATH:", PendingMinting), IntegerEntry("Total_EATH_Reserve_In_WAVES:", EATHReserveValue), IntegerEntry("EATH_Backup_Value_In_WAVES:", EATHBackupPrice), StringEntry("message", "<h1>EATH Issued Successfully!</h1><br>"), Reissue(EATH_ID, NewEATHToUser, true), ScriptTransfer(i.caller, ((NewEATHToUser * 990) / 1000), EATH_ID), ScriptTransfer(addressFromPublicKey(FeeAddress), ((NewEATHToUser * 9) / 1000), EATH_ID), ScriptTransfer(addressFromPublicKey(devAddress), ((NewEATHToUser * 1) / 1000), EATH_ID)]
4853 }
4954
5055
5156 @Verifier(tx)
5257 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
5358

github/deemru/w8io/3ef1775 
32.41 ms