tx · 9qFyH1iCB7gRXMTsPDxshbdCeCQUacT1za4xfV7amU2e

3PJFu8MmVa2rSVGM48wdLm4jhLznEgu6XSe:  -0.00200000 Waves

2022.11.25 15:18 [3398058] smart account 3PJFu8MmVa2rSVGM48wdLm4jhLznEgu6XSe > SELF 0.00000000 Waves

{ "type": 13, "id": "9qFyH1iCB7gRXMTsPDxshbdCeCQUacT1za4xfV7amU2e", "fee": 200000, "feeAssetId": null, "timestamp": 1669378692665, "version": 1, "sender": "3PJFu8MmVa2rSVGM48wdLm4jhLznEgu6XSe", "senderPublicKey": "5k59JsDv4Nh9KgnBQFfggScT4ce5vtoDmzQwivD8hgpc", "proofs": [ "2VU2UhpNPCBhfeCCrrSsF7TKbgTqBQzc9exBv7tuXLhZPXkNcCNQaPs7t8B6FSod3wjJUeDJBaXJ5qjyDTWPHeSo" ], "script": "base64:BgIRCAISBAoCCAgSAwoBCBIAEgAIARB3cml0ZUNvbnN0U3RyaW5nAgNrZXkFdmFsdWUDCQEBIQEJAQlpc0RlZmluZWQBCQCdCAIFBHRoaXMFA2tleQkBC1N0cmluZ0VudHJ5AgUDa2V5BQV2YWx1ZQkAAgEJAKwCAgIVYWxyZWFkeSBpbml0aWFsaXplZDogBQNrZXkAEHVzZG5Bc3NldElkU3RvcmUCC3VzZG5Bc3NldElkABJ1c2RuTFBBc3NldElkU3RvcmUCDXVzZG5MUEFzc2V0SWQAC2NvbmZpZ1N0b3JlAgZjb25maWcAC3VzZG5Bc3NldElkCQDZBAEJARFAZXh0ck5hdGl2ZSgxMDU4KQEFEHVzZG5Bc3NldElkU3RvcmUADXVzZG5MUEFzc2V0SWQJANkEAQkBEUBleHRyTmF0aXZlKDEwNTgpAQUSdXNkbkxQQXNzZXRJZFN0b3JlAA1jb25maWdBZGRyZXNzCQERQGV4dHJOYXRpdmUoMTA2MikBCQERQGV4dHJOYXRpdmUoMTA1MykCBQR0aGlzBQtjb25maWdTdG9yZQEHdGhyb3dJZgIJY29uZGl0aW9uBWVycm9yAwUJY29uZGl0aW9uCQACAQUFZXJyb3IGBAFpAQRpbml0AgR1c2RuA2NmZwMJAQIhPQIIBQFpBmNhbGxlcgUEdGhpcwkAAgECEm9ubHkgc2VsZiBjYW4gaW5pdAQJbHBUb2tlbklkCQDCCAUCCFZWVVNETkxQAhRWaXJlcyBWZXN0ZWQgVVNETiBMUAAAAAYGCQDMCAIFCWxwVG9rZW5JZAkAzAgCCQEQd3JpdGVDb25zdFN0cmluZwIFEHVzZG5Bc3NldElkU3RvcmUFBHVzZG4JAMwIAgkBEHdyaXRlQ29uc3RTdHJpbmcCBRJ1c2RuTFBBc3NldElkU3RvcmUJANgEAQkAuAgBBQlscFRva2VuSWQJAMwIAgkBEHdyaXRlQ29uc3RTdHJpbmcCBQtjb25maWdTdG9yZQUDY2ZnBQNuaWwBaQEGbWludFRvAQdhZGRyZXNzBAZjaGVja3MJAQd0aHJvd0lmAgkBAiE9AgkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQCCXVzZG4gb25seQULdXNkbkFzc2V0SWQCEnVzZG4gb25seSBhY2NlcHRlZAMJAAACBQZjaGVja3MFBmNoZWNrcwQGYW1vdW50CAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAkAzAgCCQEHUmVpc3N1ZQMFDXVzZG5MUEFzc2V0SWQFBmFtb3VudAYJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBEUBleHRyTmF0aXZlKDEwNjIpAQUHYWRkcmVzcwUGYW1vdW50BQ11c2RuTFBBc3NldElkBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEGcmVkZWVtAAkAAgECD25vdCBpbXBsZW1lbnRlZAFpAQZpbXBvcnQABAZjaGVja3MDCQEHdGhyb3dJZgIJAQIhPQIJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkAgx1c2RuIGxwIG9ubHkFDXVzZG5MUEFzc2V0SWQCFnZ2dXNkbmxwIG9ubHkgYWNjZXB0ZWQJAQd0aHJvd0lmAgkAZgIJAQt2YWx1ZU9yRWxzZQIJAJoIAgUNY29uZmlnQWRkcmVzcwITbWluX2ltcG9ydF92dnVzZG5scAkAaAIJAGgCCQBoAgBkAOgHAOgHAOgHCAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAIUbGVzcyB0aGFuIG1pbiBhbW91bnQHAwkAAAIFBmNoZWNrcwUGY2hlY2tzCQACAQIPbm90IGltcGxlbWVudGVkCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAMMOBM4=", "chainId": 87, "height": 3398058, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: 94askssZKP4paZXxNBuBnZLRNJEkJuLjp4QZoPRZvTJ7 Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 6 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+func writeConstString (key,value) = if (!(isDefined(getString(this, key))))
5+ then StringEntry(key, value)
6+ else throw(("already initialized: " + key))
7+
8+
9+let usdnAssetIdStore = "usdnAssetId"
10+
11+let usdnLPAssetIdStore = "usdnLPAssetId"
12+
13+let configStore = "config"
14+
15+let usdnAssetId = fromBase58String(getStringValue(usdnAssetIdStore))
16+
17+let usdnLPAssetId = fromBase58String(getStringValue(usdnLPAssetIdStore))
18+
19+let configAddress = addressFromStringValue(getStringValue(this, configStore))
20+
21+func throwIf (condition,error) = if (condition)
22+ then throw(error)
23+ else true
24+
25+
26+@Callable(i)
27+func init (usdn,cfg) = if ((i.caller != this))
28+ then throw("only self can init")
29+ else {
30+ let lpTokenId = Issue("VVUSDNLP", "Vires Vested USDN LP", 0, 6, true)
31+[lpTokenId, writeConstString(usdnAssetIdStore, usdn), writeConstString(usdnLPAssetIdStore, toBase58String(calculateAssetId(lpTokenId))), writeConstString(configStore, cfg)]
32+ }
33+
34+
35+
36+@Callable(i)
37+func mintTo (address) = {
38+ let checks = throwIf((valueOrErrorMessage(i.payments[0].assetId, "usdn only") != usdnAssetId), "usdn only accepted")
39+ if ((checks == checks))
40+ then {
41+ let amount = i.payments[0].amount
42+[Reissue(usdnLPAssetId, amount, true), ScriptTransfer(addressFromStringValue(address), amount, usdnLPAssetId)]
43+ }
44+ else throw("Strict value is not equal to itself.")
45+ }
46+
47+
48+
49+@Callable(i)
50+func redeem () = throw("not implemented")
51+
52+
53+
54+@Callable(i)
55+func import () = {
56+ let checks = if (throwIf((valueOrErrorMessage(i.payments[0].assetId, "usdn lp only") != usdnLPAssetId), "vvusdnlp only accepted"))
57+ then throwIf((valueOrElse(getInteger(configAddress, "min_import_vvusdnlp"), (((100 * 1000) * 1000) * 1000)) > i.payments[0].amount), "less than min amount")
58+ else false
59+ if ((checks == checks))
60+ then throw("not implemented")
61+ else throw("Strict value is not equal to itself.")
62+ }
63+
64+

github/deemru/w8io/3ef1775 
21.68 ms